<?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>162067</bug_id>
          
          <creation_ts>2016-09-16 10:45:50 -0700</creation_ts>
          <short_desc>Update WASM towards 0xc</short_desc>
          <delta_ts>2016-09-19 13:42:11 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Keith Miller">keith_miller</reporter>
          <assigned_to name="Keith Miller">keith_miller</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>ggaren</cc>
    
    <cc>jfbastien</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1230459</commentid>
    <comment_count>0</comment_count>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2016-09-16 10:45:50 -0700</bug_when>
    <thetext>Update WASM towards 0xc</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1230481</commentid>
    <comment_count>1</comment_count>
      <attachid>289078</attachid>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2016-09-16 11:02:22 -0700</bug_when>
    <thetext>Created attachment 289078
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1231271</commentid>
    <comment_count>2</comment_count>
      <attachid>289078</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2016-09-19 13:19:59 -0700</bug_when>
    <thetext>Comment on attachment 289078
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1231286</commentid>
    <comment_count>3</comment_count>
      <attachid>289078</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-09-19 13:42:08 -0700</bug_when>
    <thetext>Comment on attachment 289078
Patch

Clearing flags on attachment: 289078

Committed r206110: &lt;http://trac.webkit.org/changeset/206110&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1231287</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-09-19 13:42:11 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>289078</attachid>
            <date>2016-09-16 11:02:22 -0700</date>
            <delta_ts>2016-09-19 13:42:08 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-162067-20160916135942.patch</filename>
            <type>text/plain</type>
            <size>49042</size>
            <attacher name="Keith Miller">keith_miller</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjA1OTc5CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA4
N2ZhYjEwMTZjYmI3NWVhZmY2MWE2NTQ0ZmQ2ZGRkMjkzYzJkMjljLi5lYWMwNDE2YjZmNzI2Yzhl
Mjk5NzkzNjQyOWYxZjE0OWFjYjhjNGI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwzMyBAQAorMjAxNi0wOS0xNiAgS2VpdGggTWlsbGVyICA8a2VpdGhfbWlsbGVyQGFwcGxl
LmNvbT4KKworICAgICAgICBVcGRhdGUgV0FTTSB0b3dhcmRzIDB4YworICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTYyMDY3CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhpcyBwYXRjaCB1cGRhdGVzIHNvbWUg
b2YgdGhlIGNvcmUgcGFydHMgb2YgdGhlIFdBU00gZnJvbnRlbmQgdG8gdGhlIDB4YyBzdGFuZGFy
ZC4KKyAgICAgICAgRmlyc3QsIGl0IGNoYW5nZXMgdGhlIHNlY3Rpb24gbmFtZXMgZnJvbSBzdHJp
bmdzIHRvIGJ5dGVjb2Rlcy4gSXQgYWxzbyBhZGRzIHN1cHBvcnQKKyAgICAgICAgZm9yIGlubGlu
ZSBibG9jayBzaWduYXR1cmVzLiBUaGlzIGlzIGEgY2hhbmdlIGZyb20gdGhlIG9sZCB2ZXJzaW9u
IHRoYXQgdXNlZCB0byBoYXZlCisgICAgICAgIGVhY2ggYnJhbmNoIGluZGljYXRlIHRoZSBhcml0
eS4gRmluYWxseSwgdGhpcyBwYXRjaCB1cGRhdGVzIGFsbCB0aGUgdGVzdHMgYW5kIGRlbGV0ZXMK
KyAgICAgICAgYSBkdXBsaWNhdGUgdGVzdC4KKworICAgICAgICAqIENNYWtlTGlzdHMudHh0Ogor
ICAgICAgICAqIEphdmFTY3JpcHRDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAg
ICAgICogdGVzdFdBU00uY3BwOgorICAgICAgICAocnVuV0FTTVRlc3RzKToKKyAgICAgICAgKiB3
YXNtL1dBU01CM0lSR2VuZXJhdG9yLmNwcDoKKyAgICAgICAgKiB3YXNtL1dBU01Gb3JtYXQuaDoK
KyAgICAgICAgKiB3YXNtL1dBU01GdW5jdGlvblBhcnNlci5oOgorICAgICAgICAoSlNDOjpXQVNN
OjpGdW5jdGlvblBhcnNlcjxDb250ZXh0Pjo6RnVuY3Rpb25QYXJzZXIpOgorICAgICAgICAoSlND
OjpXQVNNOjpGdW5jdGlvblBhcnNlcjxDb250ZXh0Pjo6cGFyc2VCbG9jayk6CisgICAgICAgIChK
U0M6OldBU006OkZ1bmN0aW9uUGFyc2VyPENvbnRleHQ+OjpwYXJzZUV4cHJlc3Npb24pOgorICAg
ICAgICAqIHdhc20vV0FTTU1vZHVsZVBhcnNlci5jcHA6CisgICAgICAgIChKU0M6OldBU006Ok1v
ZHVsZVBhcnNlcjo6cGFyc2UpOgorICAgICAgICAqIHdhc20vV0FTTVNlY3Rpb25zLmNwcDogUmVt
b3ZlZC4KKyAgICAgICAgKEpTQzo6V0FTTTo6U2VjdGlvbnM6Omxvb2t1cCk6IERlbGV0ZWQuCisg
ICAgICAgICogd2FzbS9XQVNNU2VjdGlvbnMuaDoKKyAgICAgICAgKEpTQzo6V0FTTTo6U2VjdGlv
bnM6OnZhbGlkYXRlT3JkZXIpOgorCiAyMDE2LTA5LTE0ICBGaWxpcCBQaXpsbyAgPGZwaXpsb0Bh
cHBsZS5jb20+CiAKICAgICAgICAgVGhlcmUgaXMgbm8gZ29vZCByZWFzb24gZm9yIFdlYWtCbG9j
ayB0byBjYXJlIGFib3V0IG5ld2x5IGFsbG9jYXRlZCBvYmplY3RzCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvQ01ha2VMaXN0cy50eHQgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
Q01ha2VMaXN0cy50eHQKaW5kZXggZjE3ZWQ2M2FlYzg1MDcwYjkxMzNlZGNjYjZhOTAzNzUyYWZi
NmRmNS4uOTc5ZTBmMThlY2NlMzkyZDhkMzM1NzU0MWQ4MTM0MTBlYjFjYjA1ZiAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0NNYWtlTGlzdHMudHh0CisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9DTWFrZUxpc3RzLnR4dApAQCAtODU0LDcgKzg1NCw2IEBAIHNldChKYXZhU2Ny
aXB0Q29yZV9TT1VSQ0VTCiAgICAgd2FzbS9XQVNNQ2FsbGluZ0NvbnZlbnRpb24uY3BwCiAgICAg
d2FzbS9XQVNNTW9kdWxlUGFyc2VyLmNwcAogICAgIHdhc20vV0FTTVBsYW4uY3BwCi0gICAgd2Fz
bS9XQVNNU2VjdGlvbnMuY3BwCiAKICAgICB5YXJyL1JlZ3VsYXJFeHByZXNzaW9uLmNwcAogICAg
IHlhcnIvWWFyckNhbm9uaWNhbGl6ZVVDUzIuY3BwCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvSmF2YVNjcmlwdENvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9KYXZhU2NyaXB0Q29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
CmluZGV4IGYzZGMxNmRiZjU1ODhjOGQ4MzNjMDNlYjcwOWE0OGMyNWRhMDM4OTguLjRlNzcxYTJh
ZTM4NmJiNWFiNTk1ZDNhMGRlOGQ2NzBkNzBlZTYwZWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9KYXZhU2NyaXB0Q29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9KYXZhU2NyaXB0Q29yZS54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qCkBAIC0xMjA1LDcgKzEyMDUsNiBAQAogCQk1MzlFQjA4MTFENTU2MDhBMDBDODJFRjcg
LyogdGVzdFdBU00uY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gNTM5RUIwNzExRDU1M0RGODAwQzgyRUY3IC8qIHRlc3RXQVNNLmNwcCAqLzsgfTsKIAkJ
NTM5RkI4QkExQzk5REE3QzAwOTQwRkExIC8qIEpTQXJyYXlJbmxpbmVzLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MzlGQjhCOTFDOTlEQTdDMDA5NDBG
QTEgLyogSlNBcnJheUlubGluZXMuaCAqLzsgfTsKIAkJNTNGNDBFODUxRDU4Rjk3NzAwOTlBMUI2
IC8qIFdBU01TZWN0aW9ucy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gNTNGNDBFODQxRDU4Rjk3NzAwOTlBMUI2IC8qIFdBU01TZWN0aW9ucy5oICovOyB9
OwotCQk1M0Y0MEU4NzFENThGOUQ2MDA5OUExQjYgLyogV0FTTVNlY3Rpb25zLmNwcCBpbiBTb3Vy
Y2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUzRjQwRTg2MUQ1OEY5RDYw
MDk5QTFCNiAvKiBXQVNNU2VjdGlvbnMuY3BwICovOyB9OwogCQk1M0Y0MEU4QjFENTkwMUJCMDA5
OUExQjYgLyogV0FTTUZ1bmN0aW9uUGFyc2VyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA1M0Y0MEU4QTFENTkwMUJCMDA5OUExQjYgLyogV0FTTUZ1bmN0
aW9uUGFyc2VyLmggKi87IH07CiAJCTUzRjQwRThEMUQ1OTAxRjIwMDk5QTFCNiAvKiBXQVNNUGFy
c2VyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1M0Y0
MEU4QzFENTkwMUYyMDA5OUExQjYgLyogV0FTTVBhcnNlci5oICovOyB9OwogCQk1M0Y0MEU4RjFE
NTkwMjgyMDA5OUExQjYgLyogV0FTTUIzSVJHZW5lcmF0b3IuY3BwIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTNGNDBFOEUxRDU5MDI4MjAwOTlBMUI2IC8q
IFdBU01CM0lSR2VuZXJhdG9yLmNwcCAqLzsgfTsKQEAgLTM0MTQsNyArMzQxMyw2IEBACiAJCTUz
OUZCOEI5MUM5OURBN0MwMDk0MEZBMSAvKiBKU0FycmF5SW5saW5lcy5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBKU0FycmF5SW5saW5lcy5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQk1M0YyNTZFMTFCODdFMjgwMDBCNEI3NjggLyogSlNUeXBlZEFycmF5Vmlld1By
b3RvdHlwZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1R5cGVk
QXJyYXlWaWV3UHJvdG90eXBlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTNG
NDBFODQxRDU4Rjk3NzAwOTlBMUI2IC8qIFdBU01TZWN0aW9ucy5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBXQVNNU2VjdGlvbnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKLQkJNTNGNDBFODYxRDU4RjlENjAwOTlBMUI2IC8qIFdBU01TZWN0aW9ucy5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXQVNNU2VjdGlvbnMuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQk1M0Y0MEU4QTFENTkwMUJCMDA5OUExQjYgLyogV0FTTUZ1
bmN0aW9uUGFyc2VyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdBU01GdW5j
dGlvblBhcnNlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1M0Y0MEU4QzFENTkw
MUYyMDA5OUExQjYgLyogV0FTTVBhcnNlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBXQVNNUGFyc2VyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTUzRjQwRThF
MUQ1OTAyODIwMDk5QTFCNiAvKiBXQVNNQjNJUkdlbmVyYXRvci5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXQVNNQjNJUkdlbmVyYXRvci5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CkBAIC01NjA1LDcgKzU2MDMsNiBAQAogCQkJCTUzMTM3NEJFMUQ1Q0U5
NTAwMEFGN0EwQiAvKiBXQVNNUGxhbi5jcHAgKi8sCiAJCQkJNTMxMzc0QkMxRDVDRTY3NjAwQUY3
QTBCIC8qIFdBU01QbGFuLmggKi8sCiAJCQkJNTNGNDBFOEMxRDU5MDFGMjAwOTlBMUI2IC8qIFdB
U01QYXJzZXIuaCAqLywKLQkJCQk1M0Y0MEU4NjFENThGOUQ2MDA5OUExQjYgLyogV0FTTVNlY3Rp
b25zLmNwcCAqLywKIAkJCQk1M0Y0MEU4NDFENThGOTc3MDA5OUExQjYgLyogV0FTTVNlY3Rpb25z
LmggKi8sCiAJCQkpOwogCQkJcGF0aCA9IHdhc207CkBAIC05MDQ5LDcgKzkwNDYsNiBAQAogCQkJ
CTBGQkUwRjcyMTZDMURCMDMwMDgyQzVFOCAvKiBERkdDUFNSZXRocmVhZGluZ1BoYXNlLmNwcCBp
biBTb3VyY2VzICovLAogCQkJCUE3RDg5Q0Y1MTdBMEI4Q0MwMDc3M0FEOCAvKiBERkdDcml0aWNh
bEVkZ2VCcmVha2luZ1BoYXNlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTBGNjE4MzI5MUM0NUJG
MDcwMDcyNDUwQiAvKiBBaXJDQ2FsbGluZ0NvbnZlbnRpb24uY3BwIGluIFNvdXJjZXMgKi8sCi0J
CQkJNTNGNDBFODcxRDU4RjlENjAwOTlBMUI2IC8qIFdBU01TZWN0aW9ucy5jcHAgaW4gU291cmNl
cyAqLywKIAkJCQkwRkZGQzk1OTE0RUY5MEE2MDBDNzI1MzIgLyogREZHQ1NFUGhhc2UuY3BwIGlu
IFNvdXJjZXMgKi8sCiAJCQkJMEYyRkM3NzIxNkUxMkY3MTAwMzhEOTc2IC8qIERGR0RDRVBoYXNl
LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTBGMzM4RTEyMUJGMDI3NkMwMDEzQzg4RiAvKiBCM09w
YXF1ZUJ5cHJvZHVjdHMuY3BwIGluIFNvdXJjZXMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvdGVzdFdBU00uY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RXQVNN
LmNwcAppbmRleCBjYTQwODk2MGFiZjlkNjE3YTI0MGVmODAwZTVhMzU4ZWZkMjg1MGRhLi5kOWVk
OTFmZTE4NGRlYWIxMTc2OTk1YzhiZDY2OWNmYzlkOGU0YzZkIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvdGVzdFdBU00uY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90
ZXN0V0FTTS5jcHAKQEAgLTI0Myw3ICsyNDMsNyBAQCBzdGF0aWMgdm9pZCBydW5XQVNNVGVzdHMo
KQogICAgIHsKICAgICAgICAgLy8gR2VuZXJhdGVkIGZyb206CiAgICAgICAgIC8vICAgIChtb2R1
bGUKLSAgICAgICAgLy8gICAgIChmdW5jICJkdW1iLWVxIiAocGFyYW0gJHggaTMyKSAocGFyYW0g
JHkgaTMyKSAocmVzdWx0IGkzMikKKyAgICAgICAgLy8gICAgIChmdW5jIChleHBvcnQgImR1bWIt
ZXEiKSAocGFyYW0gJHggaTMyKSAocGFyYW0gJHkgaTMyKSAocmVzdWx0IGkzMikKICAgICAgICAg
Ly8gICAgICAoaWYgKGkzMi5lcSAoZ2V0X2xvY2FsICR4KSAoZ2V0X2xvY2FsICR5KSkKICAgICAg
ICAgLy8gICAgICAgKHRoZW4gKGJyIDApKQogICAgICAgICAvLyAgICAgICAoZWxzZSAocmV0dXJu
IChpMzIuY29uc3QgMSkpKSkKQEAgLTI1MSwxMyArMjUxLDExIEBAIHN0YXRpYyB2b2lkIHJ1bldB
U01UZXN0cygpCiAgICAgICAgIC8vICAgICAgKQogICAgICAgICAvLyAgICAgKQogICAgICAgICBW
ZWN0b3I8dWludDhfdD4gdmVjdG9yID0gewotICAgICAgICAgICAgMHgwMCwgMHg2MSwgMHg3Mywg
MHg2ZCwgMHgwYywgMHgwMCwgMHgwMCwgMHgwMCwgMHgwNCwgMHg3NCwgMHg3OSwgMHg3MCwgMHg2
NSwgMHg4NywgMHg4MCwgMHg4MCwKLSAgICAgICAgICAgIDB4MDAsIDB4MDEsIDB4NDAsIDB4MDIs
IDB4MDEsIDB4MDEsIDB4MDEsIDB4MDEsIDB4MDgsIDB4NjYsIDB4NzUsIDB4NmUsIDB4NjMsIDB4
NzQsIDB4NjksIDB4NmYsCi0gICAgICAgICAgICAweDZlLCAweDgyLCAweDgwLCAweDgwLCAweDAw
LCAweDAxLCAweDAwLCAweDA2LCAweDY1LCAweDc4LCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAw
eDkxLCAweDgwLAotICAgICAgICAgICAgMHg4MCwgMHgwMCwgMHgwMSwgMHgwMCwgMHgwZSwgMHg2
NCwgMHg3NSwgMHg2ZCwgMHg2MiwgMHgyZCwgMHg2YywgMHg2NSwgMHg3MywgMHg3MywgMHgyZCwg
MHg3NCwKLSAgICAgICAgICAgIDB4NjgsIDB4NjEsIDB4NmUsIDB4MDQsIDB4NjMsIDB4NmYsIDB4
NjQsIDB4NjUsIDB4OTcsIDB4ODAsIDB4ODAsIDB4MDAsIDB4MDEsIDB4OTIsIDB4ODAsIDB4ODAs
Ci0gICAgICAgICAgICAweDAwLCAweDAwLCAweDE0LCAweDAwLCAweDE0LCAweDAxLCAweDRkLCAw
eDAzLCAweDEwLCAweDAwLCAweDA5LCAweDAxLCAweDA0LCAweDEwLCAweDAxLCAweDA5LAotICAg
ICAgICAgICAgMHgwMSwgMHgwZiwgMHgwZgorICAgICAgICAgICAgMHgwMCwgMHg2MSwgMHg3Mywg
MHg2ZCwgMHgwYywgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMSwgMHg4NywgMHg4MCwgMHg4MCwgMHg4
MCwgMHgwMCwgMHgwMSwgMHg0MCwKKyAgICAgICAgICAgIDB4MDIsIDB4MDEsIDB4MDEsIDB4MDEs
IDB4MDEsIDB4MDMsIDB4ODIsIDB4ODAsIDB4ODAsIDB4ODAsIDB4MDAsIDB4MDEsIDB4MDAsIDB4
MDcsIDB4OGIsIDB4ODAsCisgICAgICAgICAgICAweDgwLCAweDgwLCAweDAwLCAweDAxLCAweDA3
LCAweDY0LCAweDc1LCAweDZkLCAweDYyLCAweDJkLCAweDY1LCAweDcxLCAweDAwLCAweDAwLCAw
eDBhLCAweDk5LAorICAgICAgICAgICAgMHg4MCwgMHg4MCwgMHg4MCwgMHgwMCwgMHgwMSwgMHg5
MywgMHg4MCwgMHg4MCwgMHg4MCwgMHgwMCwgMHgwMCwgMHgxNCwgMHgwMCwgMHgxNCwgMHgwMSwg
MHg0ZCwKKyAgICAgICAgICAgIDB4MDMsIDB4MDAsIDB4MDYsIDB4MDAsIDB4MDQsIDB4MTAsIDB4
MDEsIDB4MDksIDB4MGYsIDB4MTAsIDB4MDAsIDB4MDksIDB4MGYKICAgICAgICAgfTsKIAogICAg
ICAgICBQbGFuIHBsYW4oKnZtLCB2ZWN0b3IpOwpAQCAtMjgwLDcgKzI3OCw3IEBAIHN0YXRpYyB2
b2lkIHJ1bldBU01UZXN0cygpCiAgICAgewogICAgICAgICAvLyBHZW5lcmF0ZWQgZnJvbToKICAg
ICAgICAgLy8gICAgKG1vZHVsZQotICAgICAgICAvLyAgICAgKGZ1bmMgImR1bWItbGVzcy10aGFu
IiAocGFyYW0gJHggaTMyKSAocGFyYW0gJHkgaTMyKSAocmVzdWx0IGkzMikKKyAgICAgICAgLy8g
ICAgIChmdW5jIChleHBvcnQgImR1bWItbGVzcy10aGFuIikgKHBhcmFtICR4IGkzMikgKHBhcmFt
ICR5IGkzMikgKHJlc3VsdCBpMzIpCiAgICAgICAgIC8vICAgICAgKGxvb3AKICAgICAgICAgLy8g
ICAgICAgKGlmIChpMzIuZXEgKGdldF9sb2NhbCAkeCkgKGdldF9sb2NhbCAkeSkpCiAgICAgICAg
IC8vICAgICAgICAodGhlbiAocmV0dXJuIChpMzIuY29uc3QgMCkpKQpAQCAtMjkyLDE0ICsyOTAs
MTMgQEAgc3RhdGljIHZvaWQgcnVuV0FTTVRlc3RzKCkKICAgICAgICAgLy8gICAgICApCiAgICAg
ICAgIC8vICAgICApCiAgICAgICAgIFZlY3Rvcjx1aW50OF90PiB2ZWN0b3IgPSB7Ci0gICAgICAg
ICAgICAweDAwLCAweDYxLCAweDczLCAweDZkLCAweDBjLCAweDAwLCAweDAwLCAweDAwLCAweDA0
LCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDg3LCAweDgwLCAweDgwLAotICAgICAgICAgICAg
MHgwMCwgMHgwMSwgMHg0MCwgMHgwMiwgMHgwMSwgMHgwMSwgMHgwMSwgMHgwMSwgMHgwOCwgMHg2
NiwgMHg3NSwgMHg2ZSwgMHg2MywgMHg3NCwgMHg2OSwgMHg2ZiwKLSAgICAgICAgICAgIDB4NmUs
IDB4ODIsIDB4ODAsIDB4ODAsIDB4MDAsIDB4MDEsIDB4MDAsIDB4MDYsIDB4NjUsIDB4NzgsIDB4
NzAsIDB4NmYsIDB4NzIsIDB4NzQsIDB4OTEsIDB4ODAsCi0gICAgICAgICAgICAweDgwLCAweDAw
LCAweDAxLCAweDAwLCAweDBlLCAweDY0LCAweDc1LCAweDZkLCAweDYyLCAweDJkLCAweDZjLCAw
eDY1LCAweDczLCAweDczLCAweDJkLCAweDc0LAotICAgICAgICAgICAgMHg2OCwgMHg2MSwgMHg2
ZSwgMHgwNCwgMHg2MywgMHg2ZiwgMHg2NCwgMHg2NSwgMHhhYSwgMHg4MCwgMHg4MCwgMHgwMCwg
MHgwMSwgMHhhNSwgMHg4MCwgMHg4MCwKLSAgICAgICAgICAgIDB4MDAsIDB4MDAsIDB4MDIsIDB4
MTQsIDB4MDAsIDB4MTQsIDB4MDEsIDB4NGQsIDB4MDMsIDB4MTAsIDB4MDAsIDB4MDksIDB4MDEs
IDB4MDQsIDB4MTQsIDB4MDAsCi0gICAgICAgICAgICAweDEwLCAweDAwLCAweDRkLCAweDAzLCAw
eDEwLCAweDAxLCAweDA5LCAweDAxLCAweDBmLCAweDBmLCAweDE0LCAweDAwLCAweDEwLCAweDAx
LCAweDQxLCAweDE1LAotICAgICAgICAgICAgMHgwMCwgMHgwNiwgMHgwMCwgMHgwMCwgMHgwZiwg
MHgwZgorICAgICAgICAgICAgMHgwMCwgMHg2MSwgMHg3MywgMHg2ZCwgMHgwYywgMHgwMCwgMHgw
MCwgMHgwMCwgMHgwMSwgMHg4NywgMHg4MCwgMHg4MCwgMHg4MCwgMHgwMCwgMHgwMSwgMHg0MCwK
KyAgICAgICAgICAgIDB4MDIsIDB4MDEsIDB4MDEsIDB4MDEsIDB4MDEsIDB4MDMsIDB4ODIsIDB4
ODAsIDB4ODAsIDB4ODAsIDB4MDAsIDB4MDEsIDB4MDAsIDB4MDcsIDB4OTIsIDB4ODAsCisgICAg
ICAgICAgICAweDgwLCAweDgwLCAweDAwLCAweDAxLCAweDBlLCAweDY0LCAweDc1LCAweDZkLCAw
eDYyLCAweDJkLCAweDZjLCAweDY1LCAweDczLCAweDczLCAweDJkLCAweDc0LAorICAgICAgICAg
ICAgMHg2OCwgMHg2MSwgMHg2ZSwgMHgwMCwgMHgwMCwgMHgwYSwgMHhhYywgMHg4MCwgMHg4MCwg
MHg4MCwgMHgwMCwgMHgwMSwgMHhhNiwgMHg4MCwgMHg4MCwgMHg4MCwKKyAgICAgICAgICAgIDB4
MDAsIDB4MDAsIDB4MDIsIDB4MDAsIDB4MTQsIDB4MDAsIDB4MTQsIDB4MDEsIDB4NGQsIDB4MDMs
IDB4MDAsIDB4MTAsIDB4MDAsIDB4MDksIDB4MDQsIDB4MTQsCisgICAgICAgICAgICAweDAwLCAw
eDEwLCAweDAwLCAweDRkLCAweDAzLCAweDAwLCAweDEwLCAweDAxLCAweDA5LCAweDBmLCAweDBm
LCAweDE0LCAweDAwLCAweDEwLCAweDAxLCAweDQxLAorICAgICAgICAgICAgMHgxNSwgMHgwMCwg
MHgwNiwgMHgwMCwgMHgwZiwgMHgwMCwgMHgwZgogICAgICAgICB9OwogCiAgICAgICAgIFBsYW4g
cGxhbigqdm0sIHZlY3Rvcik7CkBAIC0zMTksNjggKzMxNiwxNCBAQCBzdGF0aWMgdm9pZCBydW5X
QVNNVGVzdHMoKQogICAgICAgICBDSEVDS19FUShpbnZva2U8aW50PigqcGxhbi5yZXN1bHRbMF0s
IHsgYm94KDEwMCksIGJveCg2KSB9KSwgMCk7CiAgICAgfQogCi0gICAgewotICAgICAgICAvLyBH
ZW5lcmF0ZWQgZnJvbToKLSAgICAgICAgLy8gICAgKG1vZHVsZQotICAgICAgICAvLyAgICAgKGZ1
bmMgImR1bWItbGVzcy10aGFuIiAocGFyYW0gJHggaTMyKSAocGFyYW0gJHkgaTMyKSAocmVzdWx0
IGkzMikKLSAgICAgICAgLy8gICAgICAobG9vcAotICAgICAgICAvLyAgICAgICAoYmxvY2sKLSAg
ICAgICAgLy8gICAgICAgIChibG9jawotICAgICAgICAvLyAgICAgICAgIChicl9pZiAwIChpMzIu
ZXEgKGdldF9sb2NhbCAkeCkgKGkzMi5jb25zdCAwKSkpCi0gICAgICAgIC8vICAgICAgICAgKGJy
IDEpCi0gICAgICAgIC8vICAgICAgICAgKQotICAgICAgICAvLyAgICAgICAgKHJldHVybiAoaTMy
LmNvbnN0IDEpKQotICAgICAgICAvLyAgICAgICAgKQotICAgICAgICAvLyAgICAgICAoYmxvY2sK
LSAgICAgICAgLy8gICAgICAgIChibG9jawotICAgICAgICAvLyAgICAgICAgIChicl9pZiAwIChp
MzIuZXEgKGdldF9sb2NhbCAkeCkgKGdldF9sb2NhbCAkeSkpKQotICAgICAgICAvLyAgICAgICAg
IChiciAxKQotICAgICAgICAvLyAgICAgICAgICkKLSAgICAgICAgLy8gICAgICAgIChyZXR1cm4g
KGkzMi5jb25zdCAwKSkKLSAgICAgICAgLy8gICAgICAgICkKLSAgICAgICAgLy8gICAgICAgKHNl
dF9sb2NhbCAkeCAoaTMyLnN1YiAoZ2V0X2xvY2FsICR4KSAoaTMyLmNvbnN0IDEpKSkKLSAgICAg
ICAgLy8gICAgICAgKGJyIDApCi0gICAgICAgIC8vICAgICAgICkKLSAgICAgICAgLy8gICAgICAp
Ci0gICAgICAgIC8vICAgICApCi0gICAgICAgIFZlY3Rvcjx1aW50OF90PiB2ZWN0b3IgPSB7Ci0g
ICAgICAgICAgICAweDAwLCAweDYxLCAweDczLCAweDZkLCAweDBjLCAweDAwLCAweDAwLCAweDAw
LCAweDA0LCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDg3LCAweDgwLCAweDgwLAotICAgICAg
ICAgICAgMHgwMCwgMHgwMSwgMHg0MCwgMHgwMiwgMHgwMSwgMHgwMSwgMHgwMSwgMHgwMSwgMHgw
OCwgMHg2NiwgMHg3NSwgMHg2ZSwgMHg2MywgMHg3NCwgMHg2OSwgMHg2ZiwKLSAgICAgICAgICAg
IDB4NmUsIDB4ODIsIDB4ODAsIDB4ODAsIDB4MDAsIDB4MDEsIDB4MDAsIDB4MDYsIDB4NjUsIDB4
NzgsIDB4NzAsIDB4NmYsIDB4NzIsIDB4NzQsIDB4OTEsIDB4ODAsCi0gICAgICAgICAgICAweDgw
LCAweDAwLCAweDAxLCAweDAwLCAweDBlLCAweDY0LCAweDc1LCAweDZkLCAweDYyLCAweDJkLCAw
eDZjLCAweDY1LCAweDczLCAweDczLCAweDJkLCAweDc0LAotICAgICAgICAgICAgMHg2OCwgMHg2
MSwgMHg2ZSwgMHgwNCwgMHg2MywgMHg2ZiwgMHg2NCwgMHg2NSwgMHhiOSwgMHg4MCwgMHg4MCwg
MHgwMCwgMHgwMSwgMHhiNCwgMHg4MCwgMHg4MCwKLSAgICAgICAgICAgIDB4MDAsIDB4MDAsIDB4
MDIsIDB4MDEsIDB4MDEsIDB4MTQsIDB4MDAsIDB4MTQsIDB4MDEsIDB4NGQsIDB4MDcsIDB4MDAs
IDB4MDAsIDB4MDYsIDB4MDAsIDB4MDEsCi0gICAgICAgICAgICAweDBmLCAweDEwLCAweDAwLCAw
eDA5LCAweDAxLCAweDBmLCAweDAxLCAweDAxLCAweDE0LCAweDAwLCAweDEwLCAweDAwLCAweDRk
LCAweDA3LCAweDAwLCAweDAwLAotICAgICAgICAgICAgMHgwNiwgMHgwMCwgMHgwMSwgMHgwZiwg
MHgxMCwgMHgwMSwgMHgwOSwgMHgwMSwgMHgwZiwgMHgxNCwgMHgwMCwgMHgxMCwgMHgwMSwgMHg0
MSwgMHgxNSwgMHgwMCwKLSAgICAgICAgICAgIDB4MDYsIDB4MDAsIDB4MDAsIDB4MGYsIDB4MGYK
LSAgICAgICAgfTsKLQotICAgICAgICBQbGFuIHBsYW4oKnZtLCB2ZWN0b3IpOwotICAgICAgICBp
ZiAocGxhbi5yZXN1bHQuc2l6ZSgpICE9IDEgfHwgIXBsYW4ucmVzdWx0WzBdKSB7Ci0gICAgICAg
ICAgICBkYXRhTG9nTG4oIk1vZHVsZSBmYWlsZWQgdG8gY29tcGlsZSBjb3JyZWN0bHkuIik7Ci0g
ICAgICAgICAgICBDUkFTSCgpOwotICAgICAgICB9Ci0KLSAgICAgICAgLy8gVGVzdCB0aGlzIGRv
ZXNuJ3QgY3Jhc2guCi0gICAgICAgIENIRUNLX0VRKGludm9rZTxpbnQ+KCpwbGFuLnJlc3VsdFsw
XSwgeyBib3goMCksIGJveCgxKSB9KSwgMSk7Ci0gICAgICAgIENIRUNLX0VRKGludm9rZTxpbnQ+
KCpwbGFuLnJlc3VsdFswXSwgeyBib3goMSksIGJveCgwKSB9KSwgMCk7Ci0gICAgICAgIENIRUNL
X0VRKGludm9rZTxpbnQ+KCpwbGFuLnJlc3VsdFswXSwgeyBib3goMiksIGJveCgxKSB9KSwgMCk7
Ci0gICAgICAgIENIRUNLX0VRKGludm9rZTxpbnQ+KCpwbGFuLnJlc3VsdFswXSwgeyBib3goMSks
IGJveCgyKSB9KSwgMSk7Ci0gICAgICAgIENIRUNLX0VRKGludm9rZTxpbnQ+KCpwbGFuLnJlc3Vs
dFswXSwgeyBib3goMiksIGJveCgyKSB9KSwgMCk7Ci0gICAgICAgIENIRUNLX0VRKGludm9rZTxp
bnQ+KCpwbGFuLnJlc3VsdFswXSwgeyBib3goMSksIGJveCgxKSB9KSwgMCk7Ci0gICAgICAgIENI
RUNLX0VRKGludm9rZTxpbnQ+KCpwbGFuLnJlc3VsdFswXSwgeyBib3goMiksIGJveCg2KSB9KSwg
MSk7Ci0gICAgICAgIENIRUNLX0VRKGludm9rZTxpbnQ+KCpwbGFuLnJlc3VsdFswXSwgeyBib3go
MTAwKSwgYm94KDYpIH0pLCAwKTsKLSAgICB9CiAKICAgICB7Ci0gICAgICAgIC8vIEdlbmVyYXRl
ZCBmcm9tOiAobW9kdWxlIChmdW5jICJyZXR1cm4taTMyIiAocmVzdWx0IGkzMikgKHJldHVybiAo
aTMyLmNvbnN0IDUpKSkgKQorICAgICAgICAvLyBHZW5lcmF0ZWQgZnJvbTogKG1vZHVsZSAoZnVu
YyAoZXhwb3J0ICJyZXR1cm4taTMyIikgKHJlc3VsdCBpMzIpIChyZXR1cm4gKGkzMi5jb25zdCA1
KSkpICkKICAgICAgICAgVmVjdG9yPHVpbnQ4X3Q+IHZlY3RvciA9IHsKLSAgICAgICAgICAgIDB4
MDAsIDB4NjEsIDB4NzMsIDB4NmQsIDB4MGMsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDQsIDB4NzQs
IDB4NzksIDB4NzAsIDB4NjUsIDB4ODUsIDB4ODAsIDB4ODAsCi0gICAgICAgICAgICAweDAwLCAw
eDAxLCAweDQwLCAweDAwLCAweDAxLCAweDAxLCAweDA4LCAweDY2LCAweDc1LCAweDZlLCAweDYz
LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDgyLAotICAgICAgICAgICAgMHg4MCwgMHg4MCwg
MHgwMCwgMHgwMSwgMHgwMCwgMHgwNiwgMHg2NSwgMHg3OCwgMHg3MCwgMHg2ZiwgMHg3MiwgMHg3
NCwgMHg4ZCwgMHg4MCwgMHg4MCwgMHgwMCwKLSAgICAgICAgICAgIDB4MDEsIDB4MDAsIDB4MGEs
IDB4NzIsIDB4NjUsIDB4NzQsIDB4NzUsIDB4NzIsIDB4NmUsIDB4MmQsIDB4NjksIDB4MzMsIDB4
MzIsIDB4MDQsIDB4NjMsIDB4NmYsCi0gICAgICAgICAgICAweDY0LCAweDY1LCAweDhiLCAweDgw
LCAweDgwLCAweDAwLCAweDAxLCAweDg2LCAweDgwLCAweDgwLCAweDAwLCAweDAwLCAweDEwLCAw
eDA1LCAweDA5LCAweDAxLAotICAgICAgICAgICAgMHgwZgorICAgICAgICAgICAgMHgwMCwgMHg2
MSwgMHg3MywgMHg2ZCwgMHgwYywgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMSwgMHg4NSwgMHg4MCwg
MHg4MCwgMHg4MCwgMHgwMCwgMHgwMSwgMHg0MCwKKyAgICAgICAgICAgIDB4MDAsIDB4MDEsIDB4
MDEsIDB4MDMsIDB4ODIsIDB4ODAsIDB4ODAsIDB4ODAsIDB4MDAsIDB4MDEsIDB4MDAsIDB4MDcs
IDB4OGUsIDB4ODAsIDB4ODAsIDB4ODAsCisgICAgICAgICAgICAweDAwLCAweDAxLCAweDBhLCAw
eDcyLCAweDY1LCAweDc0LCAweDc1LCAweDcyLCAweDZlLCAweDJkLCAweDY5LCAweDMzLCAweDMy
LCAweDAwLCAweDAwLCAweDBhLAorICAgICAgICAgICAgMHg4YiwgMHg4MCwgMHg4MCwgMHg4MCwg
MHgwMCwgMHgwMSwgMHg4NSwgMHg4MCwgMHg4MCwgMHg4MCwgMHgwMCwgMHgwMCwgMHgxMCwgMHgw
NSwgMHgwOSwgMHgwZgogICAgICAgICB9OwogCiAgICAgICAgIFBsYW4gcGxhbigqdm0sIHZlY3Rv
cik7CkBAIC0zOTUsMTQgKzMzOCwxMyBAQCBzdGF0aWMgdm9pZCBydW5XQVNNVGVzdHMoKQogCiAK
ICAgICB7Ci0gICAgICAgIC8vIEdlbmVyYXRlZCBmcm9tOiAobW9kdWxlIChmdW5jICJyZXR1cm4t
aTMyIiAocmVzdWx0IGkzMikgKHJldHVybiAoaTMyLmFkZCAoaTMyLmNvbnN0IDUpIChpMzIuY29u
c3QgNikpKSkgKQorICAgICAgICAvLyBHZW5lcmF0ZWQgZnJvbTogKG1vZHVsZSAoZnVuYyAoZXhw
b3J0ICJyZXR1cm4taTMyIikgKHJlc3VsdCBpMzIpIChyZXR1cm4gKGkzMi5hZGQgKGkzMi5jb25z
dCA1KSAoaTMyLmNvbnN0IDYpKSkpICkKICAgICAgICAgVmVjdG9yPHVpbnQ4X3Q+IHZlY3RvciA9
IHsKLSAgICAgICAgICAgIDB4MDAsIDB4NjEsIDB4NzMsIDB4NmQsIDB4MGMsIDB4MDAsIDB4MDAs
IDB4MDAsIDB4MDQsIDB4NzQsIDB4NzksIDB4NzAsIDB4NjUsIDB4ODUsIDB4ODAsIDB4ODAsCi0g
ICAgICAgICAgICAweDAwLCAweDAxLCAweDQwLCAweDAwLCAweDAxLCAweDAxLCAweDA4LCAweDY2
LCAweDc1LCAweDZlLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDgyLAotICAgICAg
ICAgICAgMHg4MCwgMHg4MCwgMHgwMCwgMHgwMSwgMHgwMCwgMHgwNiwgMHg2NSwgMHg3OCwgMHg3
MCwgMHg2ZiwgMHg3MiwgMHg3NCwgMHg4ZCwgMHg4MCwgMHg4MCwgMHgwMCwKLSAgICAgICAgICAg
IDB4MDEsIDB4MDAsIDB4MGEsIDB4NzIsIDB4NjUsIDB4NzQsIDB4NzUsIDB4NzIsIDB4NmUsIDB4
MmQsIDB4NjksIDB4MzMsIDB4MzIsIDB4MDQsIDB4NjMsIDB4NmYsCi0gICAgICAgICAgICAweDY0
LCAweDY1LCAweDhlLCAweDgwLCAweDgwLCAweDAwLCAweDAxLCAweDg5LCAweDgwLCAweDgwLCAw
eDAwLCAweDAwLCAweDEwLCAweDA1LCAweDEwLCAweDA2LAotICAgICAgICAgICAgMHg0MCwgMHgw
OSwgMHgwMSwgMHgwZgorICAgICAgICAgICAgMHgwMCwgMHg2MSwgMHg3MywgMHg2ZCwgMHgwYywg
MHgwMCwgMHgwMCwgMHgwMCwgMHgwMSwgMHg4NSwgMHg4MCwgMHg4MCwgMHg4MCwgMHgwMCwgMHgw
MSwgMHg0MCwKKyAgICAgICAgICAgIDB4MDAsIDB4MDEsIDB4MDEsIDB4MDMsIDB4ODIsIDB4ODAs
IDB4ODAsIDB4ODAsIDB4MDAsIDB4MDEsIDB4MDAsIDB4MDcsIDB4OGUsIDB4ODAsIDB4ODAsIDB4
ODAsCisgICAgICAgICAgICAweDAwLCAweDAxLCAweDBhLCAweDcyLCAweDY1LCAweDc0LCAweDc1
LCAweDcyLCAweDZlLCAweDJkLCAweDY5LCAweDMzLCAweDMyLCAweDAwLCAweDAwLCAweDBhLAor
ICAgICAgICAgICAgMHg4ZSwgMHg4MCwgMHg4MCwgMHg4MCwgMHgwMCwgMHgwMSwgMHg4OCwgMHg4
MCwgMHg4MCwgMHg4MCwgMHgwMCwgMHgwMCwgMHgxMCwgMHgwNSwgMHgxMCwgMHgwNiwKKyAgICAg
ICAgICAgIDB4NDAsIDB4MDksIDB4MGYKICAgICAgICAgfTsKIAogICAgICAgICBQbGFuIHBsYW4o
KnZtLCB2ZWN0b3IpOwpAQCAtNDE0LDE2ICszNTYsMTUgQEAgc3RhdGljIHZvaWQgcnVuV0FTTVRl
c3RzKCkKICAgICAgICAgLy8gVGVzdCB0aGlzIGRvZXNuJ3QgY3Jhc2guCiAgICAgICAgIENIRUNL
X0VRKGludm9rZTxpbnQ+KCpwbGFuLnJlc3VsdFswXSwgeyB9KSwgMTEpOwogICAgIH0KLSAgICAK
KwogICAgIHsKLSAgICAgICAgLy8gR2VuZXJhdGVkIGZyb206IChtb2R1bGUgKGZ1bmMgInJldHVy
bi1pMzIiIChyZXN1bHQgaTMyKSAocmV0dXJuIChpMzIuYWRkIChpMzIuYWRkIChpMzIuY29uc3Qg
NSkgKGkzMi5jb25zdCAzKSkgKGkzMi5jb25zdCAzKSkpKSApCisgICAgICAgIC8vIEdlbmVyYXRl
ZCBmcm9tOiAobW9kdWxlIChmdW5jIChleHBvcnQgInJldHVybi1pMzIiKSAocmVzdWx0IGkzMikg
KHJldHVybiAoaTMyLmFkZCAoaTMyLmFkZCAoaTMyLmNvbnN0IDUpIChpMzIuY29uc3QgMykpIChp
MzIuY29uc3QgMykpKSkgKQogICAgICAgICBWZWN0b3I8dWludDhfdD4gdmVjdG9yID0gewotICAg
ICAgICAgICAgMHgwMCwgMHg2MSwgMHg3MywgMHg2ZCwgMHgwYywgMHgwMCwgMHgwMCwgMHgwMCwg
MHgwNCwgMHg3NCwgMHg3OSwgMHg3MCwgMHg2NSwgMHg4NSwgMHg4MCwgMHg4MCwKLSAgICAgICAg
ICAgIDB4MDAsIDB4MDEsIDB4NDAsIDB4MDAsIDB4MDEsIDB4MDEsIDB4MDgsIDB4NjYsIDB4NzUs
IDB4NmUsIDB4NjMsIDB4NzQsIDB4NjksIDB4NmYsIDB4NmUsIDB4ODIsCi0gICAgICAgICAgICAw
eDgwLCAweDgwLCAweDAwLCAweDAxLCAweDAwLCAweDA2LCAweDY1LCAweDc4LCAweDcwLCAweDZm
LCAweDcyLCAweDc0LCAweDhkLCAweDgwLCAweDgwLCAweDAwLAotICAgICAgICAgICAgMHgwMSwg
MHgwMCwgMHgwYSwgMHg3MiwgMHg2NSwgMHg3NCwgMHg3NSwgMHg3MiwgMHg2ZSwgMHgyZCwgMHg2
OSwgMHgzMywgMHgzMiwgMHgwNCwgMHg2MywgMHg2ZiwKLSAgICAgICAgICAgIDB4NjQsIDB4NjUs
IDB4OTEsIDB4ODAsIDB4ODAsIDB4MDAsIDB4MDEsIDB4OGMsIDB4ODAsIDB4ODAsIDB4MDAsIDB4
MDAsIDB4MTAsIDB4MDUsIDB4MTAsIDB4MDMsCi0gICAgICAgICAgICAweDQwLCAweDEwLCAweDAz
LCAweDQwLCAweDA5LCAweDAxLCAweDBmCisgICAgICAgICAgICAweDAwLCAweDYxLCAweDczLCAw
eDZkLCAweDBjLCAweDAwLCAweDAwLCAweDAwLCAweDAxLCAweDg1LCAweDgwLCAweDgwLCAweDgw
LCAweDAwLCAweDAxLCAweDQwLAorICAgICAgICAgICAgMHgwMCwgMHgwMSwgMHgwMSwgMHgwMywg
MHg4MiwgMHg4MCwgMHg4MCwgMHg4MCwgMHgwMCwgMHgwMSwgMHgwMCwgMHgwNywgMHg4ZSwgMHg4
MCwgMHg4MCwgMHg4MCwKKyAgICAgICAgICAgIDB4MDAsIDB4MDEsIDB4MGEsIDB4NzIsIDB4NjUs
IDB4NzQsIDB4NzUsIDB4NzIsIDB4NmUsIDB4MmQsIDB4NjksIDB4MzMsIDB4MzIsIDB4MDAsIDB4
MDAsIDB4MGEsCisgICAgICAgICAgICAweDkxLCAweDgwLCAweDgwLCAweDgwLCAweDAwLCAweDAx
LCAweDhiLCAweDgwLCAweDgwLCAweDgwLCAweDAwLCAweDAwLCAweDEwLCAweDA1LCAweDEwLCAw
eDAzLAorICAgICAgICAgICAgMHg0MCwgMHgxMCwgMHgwMywgMHg0MCwgMHgwOSwgMHgwZgogICAg
ICAgICB9OwogCiAgICAgICAgIFBsYW4gcGxhbigqdm0sIHZlY3Rvcik7CkBAIC00MzcsMTQgKzM3
OCwxMyBAQCBzdGF0aWMgdm9pZCBydW5XQVNNVGVzdHMoKQogICAgIH0KIAogICAgIHsKLSAgICAg
ICAgLy8gR2VuZXJhdGVkIGZyb206IChtb2R1bGUgKGZ1bmMgInJldHVybi1pMzIiIChyZXN1bHQg
aTMyKSAoYmxvY2sgKHJldHVybiAoaTMyLmFkZCAoaTMyLmFkZCAoaTMyLmNvbnN0IDUpIChpMzIu
Y29uc3QgMykpIChpMzIuY29uc3QgMykpKSkpICkKKyAgICAgICAgLy8gR2VuZXJhdGVkIGZyb206
IChtb2R1bGUgKGZ1bmMgKGV4cG9ydCAicmV0dXJuLWkzMiIpIChyZXN1bHQgaTMyKSAoYmxvY2sg
KHJldHVybiAoaTMyLmFkZCAoaTMyLmFkZCAoaTMyLmNvbnN0IDUpIChpMzIuY29uc3QgMykpIChp
MzIuY29uc3QgMykpKSkgKHVucmVhY2hhYmxlKSkgKQogICAgICAgICBWZWN0b3I8dWludDhfdD4g
dmVjdG9yID0gewotICAgICAgICAgICAgMHgwMCwgMHg2MSwgMHg3MywgMHg2ZCwgMHgwYywgMHgw
MCwgMHgwMCwgMHgwMCwgMHgwNCwgMHg3NCwgMHg3OSwgMHg3MCwgMHg2NSwgMHg4NSwgMHg4MCwg
MHg4MCwKLSAgICAgICAgICAgIDB4MDAsIDB4MDEsIDB4NDAsIDB4MDAsIDB4MDEsIDB4MDEsIDB4
MDgsIDB4NjYsIDB4NzUsIDB4NmUsIDB4NjMsIDB4NzQsIDB4NjksIDB4NmYsIDB4NmUsIDB4ODIs
Ci0gICAgICAgICAgICAweDgwLCAweDgwLCAweDAwLCAweDAxLCAweDAwLCAweDA2LCAweDY1LCAw
eDc4LCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDhkLCAweDgwLCAweDgwLCAweDAwLAotICAg
ICAgICAgICAgMHgwMSwgMHgwMCwgMHgwYSwgMHg3MiwgMHg2NSwgMHg3NCwgMHg3NSwgMHg3Miwg
MHg2ZSwgMHgyZCwgMHg2OSwgMHgzMywgMHgzMiwgMHgwNCwgMHg2MywgMHg2ZiwKLSAgICAgICAg
ICAgIDB4NjQsIDB4NjUsIDB4OTMsIDB4ODAsIDB4ODAsIDB4MDAsIDB4MDEsIDB4OGUsIDB4ODAs
IDB4ODAsIDB4MDAsIDB4MDAsIDB4MDEsIDB4MTAsIDB4MDUsIDB4MTAsCi0gICAgICAgICAgICAw
eDAzLCAweDQwLCAweDEwLCAweDAzLCAweDQwLCAweDA5LCAweDAxLCAweDBmLCAweDBmCisgICAg
ICAgICAgICAweDAwLCAweDYxLCAweDczLCAweDZkLCAweDBjLCAweDAwLCAweDAwLCAweDAwLCAw
eDAxLCAweDg1LCAweDgwLCAweDgwLCAweDgwLCAweDAwLCAweDAxLCAweDQwLAorICAgICAgICAg
ICAgMHgwMCwgMHgwMSwgMHgwMSwgMHgwMywgMHg4MiwgMHg4MCwgMHg4MCwgMHg4MCwgMHgwMCwg
MHgwMSwgMHgwMCwgMHgwNywgMHg4ZSwgMHg4MCwgMHg4MCwgMHg4MCwKKyAgICAgICAgICAgIDB4
MDAsIDB4MDEsIDB4MGEsIDB4NzIsIDB4NjUsIDB4NzQsIDB4NzUsIDB4NzIsIDB4NmUsIDB4MmQs
IDB4NjksIDB4MzMsIDB4MzIsIDB4MDAsIDB4MDAsIDB4MGEsCisgICAgICAgICAgICAweDk1LCAw
eDgwLCAweDgwLCAweDgwLCAweDAwLCAweDAxLCAweDhmLCAweDgwLCAweDgwLCAweDgwLCAweDAw
LCAweDAwLCAweDAxLCAweDAwLCAweDEwLCAweDA1LAorICAgICAgICAgICAgMHgxMCwgMHgwMywg
MHg0MCwgMHgxMCwgMHgwMywgMHg0MCwgMHgwOSwgMHgwZiwgMHgwMCwgMHgwZgogICAgICAgICB9
OwogCiAgICAgICAgIFBsYW4gcGxhbigqdm0sIHZlY3Rvcik7CkBAIC00NTgsMTIgKzM5OCwxMiBA
QCBzdGF0aWMgdm9pZCBydW5XQVNNVGVzdHMoKQogICAgIH0KIAogICAgIHsKLSAgICAgICAgLy8g
R2VuZXJhdGVkIGZyb206IChtb2R1bGUgKGZ1bmMgJGFkZCAocGFyYW0gJHggaTMyKSAocGFyYW0g
JHkgaTMyKSAocmVzdWx0IGkzMikgKHJldHVybiAoaTMyLmFkZCAoZ2V0X2xvY2FsICR4KSAoZ2V0
X2xvY2FsICR5KSkpKSApCisgICAgICAgIC8vIEdlbmVyYXRlZCBmcm9tOiAobW9kdWxlIChmdW5j
IChleHBvcnQgImFkZCIpIChwYXJhbSAkeCBpMzIpIChwYXJhbSAkeSBpMzIpIChyZXN1bHQgaTMy
KSAocmV0dXJuIChpMzIuYWRkIChnZXRfbG9jYWwgJHgpIChnZXRfbG9jYWwgJHkpKSkpICkKICAg
ICAgICAgVmVjdG9yPHVpbnQ4X3Q+IHZlY3RvciA9IHsKLSAgICAgICAgICAgIDB4MDAsIDB4NjEs
IDB4NzMsIDB4NmQsIDB4MGMsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDQsIDB4NzQsIDB4NzksIDB4
NzAsIDB4NjUsIDB4ODcsIDB4ODAsIDB4ODAsCi0gICAgICAgICAgICAweDAwLCAweDAxLCAweDQw
LCAweDAyLCAweDAxLCAweDAxLCAweDAxLCAweDAxLCAweDA4LCAweDY2LCAweDc1LCAweDZlLCAw
eDYzLCAweDc0LCAweDY5LCAweDZmLAotICAgICAgICAgICAgMHg2ZSwgMHg4MiwgMHg4MCwgMHg4
MCwgMHgwMCwgMHgwMSwgMHgwMCwgMHgwNCwgMHg2MywgMHg2ZiwgMHg2NCwgMHg2NSwgMHg4ZSwg
MHg4MCwgMHg4MCwgMHgwMCwKLSAgICAgICAgICAgIDB4MDEsIDB4ODksIDB4ODAsIDB4ODAsIDB4
MDAsIDB4MDAsIDB4MTQsIDB4MDAsIDB4MTQsIDB4MDEsIDB4NDAsIDB4MDksIDB4MDEsIDB4MGYK
KyAgICAgICAgICAgIDB4MDAsIDB4NjEsIDB4NzMsIDB4NmQsIDB4MGMsIDB4MDAsIDB4MDAsIDB4
MDAsIDB4MDEsIDB4ODcsIDB4ODAsIDB4ODAsIDB4ODAsIDB4MDAsIDB4MDEsIDB4NDAsCisgICAg
ICAgICAgICAweDAyLCAweDAxLCAweDAxLCAweDAxLCAweDAxLCAweDAzLCAweDgyLCAweDgwLCAw
eDgwLCAweDgwLCAweDAwLCAweDAxLCAweDAwLCAweDA3LCAweDg3LCAweDgwLAorICAgICAgICAg
ICAgMHg4MCwgMHg4MCwgMHgwMCwgMHgwMSwgMHgwMywgMHg2MSwgMHg2NCwgMHg2NCwgMHgwMCwg
MHgwMCwgMHgwYSwgMHg4ZSwgMHg4MCwgMHg4MCwgMHg4MCwgMHgwMCwKKyAgICAgICAgICAgIDB4
MDEsIDB4ODgsIDB4ODAsIDB4ODAsIDB4ODAsIDB4MDAsIDB4MDAsIDB4MTQsIDB4MDAsIDB4MTQs
IDB4MDEsIDB4NDAsIDB4MDksIDB4MGYKICAgICAgICAgfTsKIAogICAgICAgICBQbGFuIHBsYW4o
KnZtLCB2ZWN0b3IpOwpAQCAtNDgyLDE4ICs0MjIsMTcgQEAgc3RhdGljIHZvaWQgcnVuV0FTTVRl
c3RzKCkKICAgICB7CiAgICAgICAgIC8vIEdlbmVyYXRlZCBmcm9tOgogICAgICAgICAvLyAgICAo
bW9kdWxlCi0gICAgICAgIC8vICAgICAoZnVuYyAibG9jYWxzIiAocGFyYW0gJHggaTMyKSAocmVz
dWx0IGkzMikgKGxvY2FsICRudW0gaTMyKQorICAgICAgICAvLyAgICAgKGZ1bmMgKGV4cG9ydCAi
bG9jYWxzIikgKHBhcmFtICR4IGkzMikgKHJlc3VsdCBpMzIpIChsb2NhbCAkbnVtIGkzMikKICAg
ICAgICAgLy8gICAgICAoc2V0X2xvY2FsICRudW0gKGdldF9sb2NhbCAkeCkpCiAgICAgICAgIC8v
ICAgICAgKHJldHVybiAoZ2V0X2xvY2FsICRudW0pKQogICAgICAgICAvLyAgICAgICkKICAgICAg
ICAgLy8gICAgICkKICAgICAgICAgVmVjdG9yPHVpbnQ4X3Q+IHZlY3RvciA9IHsKLSAgICAgICAg
ICAgIDB4MDAsIDB4NjEsIDB4NzMsIDB4NmQsIDB4MGMsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDQs
IDB4NzQsIDB4NzksIDB4NzAsIDB4NjUsIDB4ODYsIDB4ODAsIDB4ODAsCi0gICAgICAgICAgICAw
eDAwLCAweDAxLCAweDQwLCAweDAxLCAweDAxLCAweDAxLCAweDAxLCAweDA4LCAweDY2LCAweDc1
LCAweDZlLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLAotICAgICAgICAgICAgMHg4Miwg
MHg4MCwgMHg4MCwgMHgwMCwgMHgwMSwgMHgwMCwgMHgwNiwgMHg2NSwgMHg3OCwgMHg3MCwgMHg2
ZiwgMHg3MiwgMHg3NCwgMHg4OSwgMHg4MCwgMHg4MCwKLSAgICAgICAgICAgIDB4MDAsIDB4MDEs
IDB4MDAsIDB4MDYsIDB4NmMsIDB4NmYsIDB4NjMsIDB4NjEsIDB4NmMsIDB4NzMsIDB4MDQsIDB4
NjMsIDB4NmYsIDB4NjQsIDB4NjUsIDB4OTEsCi0gICAgICAgICAgICAweDgwLCAweDgwLCAweDAw
LCAweDAxLCAweDhjLCAweDgwLCAweDgwLCAweDAwLCAweDAxLCAweDAxLCAweDAxLCAweDE0LCAw
eDAwLCAweDE1LCAweDAxLCAweDE0LAotICAgICAgICAgICAgMHgwMSwgMHgwOSwgMHgwMSwgMHgw
ZgorICAgICAgICAgICAgMHgwMCwgMHg2MSwgMHg3MywgMHg2ZCwgMHgwYywgMHgwMCwgMHgwMCwg
MHgwMCwgMHgwMSwgMHg4NiwgMHg4MCwgMHg4MCwgMHg4MCwgMHgwMCwgMHgwMSwgMHg0MCwKKyAg
ICAgICAgICAgIDB4MDEsIDB4MDEsIDB4MDEsIDB4MDEsIDB4MDMsIDB4ODIsIDB4ODAsIDB4ODAs
IDB4ODAsIDB4MDAsIDB4MDEsIDB4MDAsIDB4MDcsIDB4OGEsIDB4ODAsIDB4ODAsCisgICAgICAg
ICAgICAweDgwLCAweDAwLCAweDAxLCAweDA2LCAweDZjLCAweDZmLCAweDYzLCAweDYxLCAweDZj
LCAweDczLCAweDAwLCAweDAwLCAweDBhLCAweDkxLCAweDgwLCAweDgwLAorICAgICAgICAgICAg
MHg4MCwgMHgwMCwgMHgwMSwgMHg4YiwgMHg4MCwgMHg4MCwgMHg4MCwgMHgwMCwgMHgwMSwgMHgw
MSwgMHgwMSwgMHgxNCwgMHgwMCwgMHgxNSwgMHgwMSwgMHgxNCwKKyAgICAgICAgICAgIDB4MDEs
IDB4MDksIDB4MGYKICAgICAgICAgfTsKIAogICAgICAgICBQbGFuIHBsYW4oKnZtLCB2ZWN0b3Ip
OwpAQCAtNTEwLDMzICs0NDksMjYgQEAgc3RhdGljIHZvaWQgcnVuV0FTTVRlc3RzKCkKICAgICB7
CiAgICAgICAgIC8vIEdlbmVyYXRlZCBmcm9tOgogICAgICAgICAvLyAgICAobW9kdWxlCi0gICAg
ICAgIC8vICAgICAoZnVuYyAiZHVtYi1tdWx0IiAocGFyYW0gJHggaTMyKSAocGFyYW0gJHkgaTMy
KSAocmVzdWx0IGkzMikgKGxvY2FsICR0b3RhbCBpMzIpIChsb2NhbCAkaSBpMzIpIChsb2NhbCAk
aiBpMzIpCi0gICAgICAgIC8vICAgICAgKHNldF9sb2NhbCAkdG90YWwgKGkzMi5jb25zdCAwKSkK
LSAgICAgICAgLy8gICAgICAoc2V0X2xvY2FsICRpIChpMzIuY29uc3QgMCkpCi0gICAgICAgIC8v
ICAgICAgKGJsb2NrCi0gICAgICAgIC8vICAgICAgIChsb29wCi0gICAgICAgIC8vICAgICAgICAo
YnJfaWYgMSAoaTMyLmVxIChnZXRfbG9jYWwgJGkpIChnZXRfbG9jYWwgJHgpKSkKLSAgICAgICAg
Ly8gICAgICAgIChzZXRfbG9jYWwgJGogKGkzMi5jb25zdCAwKSkKLSAgICAgICAgLy8gICAgICAg
IChzZXRfbG9jYWwgJGkgKGkzMi5hZGQgKGdldF9sb2NhbCAkaSkgKGkzMi5jb25zdCAxKSkpCi0g
ICAgICAgIC8vICAgICAgICAobG9vcAotICAgICAgICAvLyAgICAgICAgIChicl9pZiAxIChpMzIu
ZXEgKGdldF9sb2NhbCAkaikgKGdldF9sb2NhbCAkeSkpKQotICAgICAgICAvLyAgICAgICAgIChz
ZXRfbG9jYWwgJHRvdGFsIChpMzIuYWRkIChnZXRfbG9jYWwgJHRvdGFsKSAoaTMyLmNvbnN0IDEp
KSkKLSAgICAgICAgLy8gICAgICAgICAoc2V0X2xvY2FsICRqIChpMzIuYWRkIChnZXRfbG9jYWwg
JGopIChpMzIuY29uc3QgMSkpKQotICAgICAgICAvLyAgICAgICAgIChiciAwKQotICAgICAgICAv
LyAgICAgICAgICkKKyAgICAgICAgLy8gICAgIChmdW5jIChleHBvcnQgInN1bSIpIChwYXJhbSAk
eCBpMzIpIChyZXN1bHQgaTMyKSAobG9jYWwgJHkgaTMyKQorICAgICAgICAvLyAgICAgIChzZXRf
bG9jYWwgJHkgKGkzMi5jb25zdCAwKSkKKyAgICAgICAgLy8gICAgICAobG9vcAorICAgICAgICAv
LyAgICAgICAoYmxvY2sKKyAgICAgICAgLy8gICAgICAgIChicl9pZiAwIChpMzIuZXEgKGdldF9s
b2NhbCAkeCkgKGkzMi5jb25zdCAwKSkpCisgICAgICAgIC8vICAgICAgICAoc2V0X2xvY2FsICR5
IChpMzIuYWRkIChnZXRfbG9jYWwgJHgpIChnZXRfbG9jYWwgJHkpKSkKKyAgICAgICAgLy8gICAg
ICAgIChzZXRfbG9jYWwgJHggKGkzMi5zdWIgKGdldF9sb2NhbCAkeCkgKGkzMi5jb25zdCAxKSkp
CisgICAgICAgIC8vICAgICAgICAoYnIgMSkKICAgICAgICAgLy8gICAgICAgICkKICAgICAgICAg
Ly8gICAgICAgKQotICAgICAgICAvLyAgICAgIChyZXR1cm4gKGdldF9sb2NhbCAkdG90YWwpKQor
ICAgICAgICAvLyAgICAgIChyZXR1cm4gKGdldF9sb2NhbCAkeSkpCiAgICAgICAgIC8vICAgICAg
KQogICAgICAgICAvLyAgICAgKQogICAgICAgICBWZWN0b3I8dWludDhfdD4gdmVjdG9yID0gewot
ICAgICAgICAgICAgMHgwMCwgMHg2MSwgMHg3MywgMHg2ZCwgMHgwYywgMHgwMCwgMHgwMCwgMHgw
MCwgMHgwNCwgMHg3NCwgMHg3OSwgMHg3MCwgMHg2NSwgMHg4NiwgMHg4MCwgMHg4MCwKLSAgICAg
ICAgICAgIDB4MDAsIDB4MDEsIDB4NDAsIDB4MDEsIDB4MDEsIDB4MDEsIDB4MDEsIDB4MDgsIDB4
NjYsIDB4NzUsIDB4NmUsIDB4NjMsIDB4NzQsIDB4NjksIDB4NmYsIDB4NmUsCi0gICAgICAgICAg
ICAweDgyLCAweDgwLCAweDgwLCAweDAwLCAweDAxLCAweDAwLCAweDA2LCAweDY1LCAweDc4LCAw
eDcwLCAweDZmLCAweDcyLCAweDc0LCAweDg2LCAweDgwLCAweDgwLAotICAgICAgICAgICAgMHgw
MCwgMHgwMSwgMHgwMCwgMHgwMywgMHg3MywgMHg3NSwgMHg2ZCwgMHgwNCwgMHg2MywgMHg2Ziwg
MHg2NCwgMHg2NSwgMHhhZSwgMHg4MCwgMHg4MCwgMHgwMCwKLSAgICAgICAgICAgIDB4MDEsIDB4
YTksIDB4ODAsIDB4ODAsIDB4MDAsIDB4MDEsIDB4MDEsIDB4MDEsIDB4MTAsIDB4MDAsIDB4MTUs
IDB4MDEsIDB4MDIsIDB4MDEsIDB4MTQsIDB4MDAsCi0gICAgICAgICAgICAweDEwLCAweDAwLCAw
eDRkLCAweDA3LCAweDAwLCAweDAwLCAweDE0LCAweDAwLCAweDE0LCAweDAxLCAweDQwLCAweDE1
LCAweDAxLCAweDE0LCAweDAwLCAweDEwLAotICAgICAgICAgICAgMHgwMSwgMHg0MSwgMHgxNSwg
MHgwMCwgMHgwNiwgMHgwMCwgMHgwMSwgMHgwZiwgMHgwZiwgMHgxNCwgMHgwMSwgMHgwOSwgMHgw
MSwgMHgwZgorICAgICAgICAgICAgMHgwMCwgMHg2MSwgMHg3MywgMHg2ZCwgMHgwYywgMHgwMCwg
MHgwMCwgMHgwMCwgMHgwMSwgMHg4NiwgMHg4MCwgMHg4MCwgMHg4MCwgMHgwMCwgMHgwMSwgMHg0
MCwKKyAgICAgICAgICAgIDB4MDEsIDB4MDEsIDB4MDEsIDB4MDEsIDB4MDMsIDB4ODIsIDB4ODAs
IDB4ODAsIDB4ODAsIDB4MDAsIDB4MDEsIDB4MDAsIDB4MDcsIDB4ODcsIDB4ODAsIDB4ODAsCisg
ICAgICAgICAgICAweDgwLCAweDAwLCAweDAxLCAweDAzLCAweDczLCAweDc1LCAweDZkLCAweDAw
LCAweDAwLCAweDBhLCAweGFlLCAweDgwLCAweDgwLCAweDgwLCAweDAwLCAweDAxLAorICAgICAg
ICAgICAgMHhhOCwgMHg4MCwgMHg4MCwgMHg4MCwgMHgwMCwgMHgwMSwgMHgwMSwgMHgwMSwgMHgx
MCwgMHgwMCwgMHgxNSwgMHgwMSwgMHgwMiwgMHgwMCwgMHgwMSwgMHgwMCwKKyAgICAgICAgICAg
IDB4MTQsIDB4MDAsIDB4MTAsIDB4MDAsIDB4NGQsIDB4MDcsIDB4MDAsIDB4MTQsIDB4MDAsIDB4
MTQsIDB4MDEsIDB4NDAsIDB4MTUsIDB4MDEsIDB4MTQsIDB4MDAsCisgICAgICAgICAgICAweDEw
LCAweDAxLCAweDQxLCAweDE1LCAweDAwLCAweDA2LCAweDAxLCAweDBmLCAweDBmLCAweDE0LCAw
eDAxLCAweDA5LCAweDBmCiAgICAgICAgIH07CiAKICAgICAgICAgUGxhbiBwbGFuKCp2bSwgdmVj
dG9yKTsKQEAgLTU1NSw3ICs0ODcsNyBAQCBzdGF0aWMgdm9pZCBydW5XQVNNVGVzdHMoKQogICAg
IHsKICAgICAgICAgLy8gR2VuZXJhdGVkIGZyb206CiAgICAgICAgIC8vICAgIChtb2R1bGUKLSAg
ICAgICAgLy8gICAgIChmdW5jICJkdW1iLW11bHQiIChwYXJhbSAkeCBpMzIpIChwYXJhbSAkeSBp
MzIpIChyZXN1bHQgaTMyKSAobG9jYWwgJHRvdGFsIGkzMikgKGxvY2FsICRpIGkzMikgKGxvY2Fs
ICRqIGkzMikKKyAgICAgICAgLy8gICAgIChmdW5jIChleHBvcnQgImR1bWItbXVsdCIpIChwYXJh
bSAkeCBpMzIpIChwYXJhbSAkeSBpMzIpIChyZXN1bHQgaTMyKSAobG9jYWwgJHRvdGFsIGkzMikg
KGxvY2FsICRpIGkzMikgKGxvY2FsICRqIGkzMikKICAgICAgICAgLy8gICAgICAoc2V0X2xvY2Fs
ICR0b3RhbCAoaTMyLmNvbnN0IDApKQogICAgICAgICAvLyAgICAgIChzZXRfbG9jYWwgJGkgKGkz
Mi5jb25zdCAwKSkKICAgICAgICAgLy8gICAgICAoYmxvY2sgKGxvb3AKQEAgLTU3MywxNSArNTA1
LDE0IEBAIHN0YXRpYyB2b2lkIHJ1bldBU01UZXN0cygpCiAgICAgICAgIC8vICAgICAgKQogICAg
ICAgICAvLyAgICAgKQogICAgICAgICBWZWN0b3I8dWludDhfdD4gdmVjdG9yID0gewotICAgICAg
ICAgICAgMHgwMCwgMHg2MSwgMHg3MywgMHg2ZCwgMHgwYywgMHgwMCwgMHgwMCwgMHgwMCwgMHgw
NCwgMHg3NCwgMHg3OSwgMHg3MCwgMHg2NSwgMHg4NywgMHg4MCwgMHg4MCwKLSAgICAgICAgICAg
IDB4MDAsIDB4MDEsIDB4NDAsIDB4MDIsIDB4MDEsIDB4MDEsIDB4MDEsIDB4MDEsIDB4MDgsIDB4
NjYsIDB4NzUsIDB4NmUsIDB4NjMsIDB4NzQsIDB4NjksIDB4NmYsCi0gICAgICAgICAgICAweDZl
LCAweDgyLCAweDgwLCAweDgwLCAweDAwLCAweDAxLCAweDAwLCAweDA2LCAweDY1LCAweDc4LCAw
eDcwLCAweDZmLCAweDcyLCAweDc0LCAweDhjLCAweDgwLAotICAgICAgICAgICAgMHg4MCwgMHgw
MCwgMHgwMSwgMHgwMCwgMHgwOSwgMHg2NCwgMHg3NSwgMHg2ZCwgMHg2MiwgMHgyZCwgMHg2ZCwg
MHg3NSwgMHg2YywgMHg3NCwgMHgwNCwgMHg2MywKLSAgICAgICAgICAgIDB4NmYsIDB4NjQsIDB4
NjUsIDB4YzcsIDB4ODAsIDB4ODAsIDB4MDAsIDB4MDEsIDB4YzIsIDB4ODAsIDB4ODAsIDB4MDAs
IDB4MDEsIDB4MDMsIDB4MDEsIDB4MTAsCi0gICAgICAgICAgICAweDAwLCAweDE1LCAweDAyLCAw
eDEwLCAweDAwLCAweDE1LCAweDAzLCAweDAxLCAweDAyLCAweDE0LCAweDAzLCAweDE0LCAweDAw
LCAweDRkLCAweDA3LCAweDAwLAotICAgICAgICAgICAgMHgwMSwgMHgxMCwgMHgwMCwgMHgxNSwg
MHgwNCwgMHgxNCwgMHgwMywgMHgxMCwgMHgwMSwgMHg0MCwgMHgxNSwgMHgwMywgMHgwMiwgMHgx
NCwgMHgwNCwgMHgxNCwKLSAgICAgICAgICAgIDB4MDEsIDB4NGQsIDB4MDcsIDB4MDAsIDB4MDEs
IDB4MTQsIDB4MDIsIDB4MTAsIDB4MDEsIDB4NDAsIDB4MTUsIDB4MDIsIDB4MTQsIDB4MDQsIDB4
MTAsIDB4MDEsCi0gICAgICAgICAgICAweDQwLCAweDE1LCAweDA0LCAweDA2LCAweDAwLCAweDAw
LCAweDBmLCAweDBmLCAweDBmLCAweDE0LCAweDAyLCAweDA5LCAweDAxLCAweDBmCisgICAgICAg
ICAgICAweDAwLCAweDYxLCAweDczLCAweDZkLCAweDBjLCAweDAwLCAweDAwLCAweDAwLCAweDAx
LCAweDg3LCAweDgwLCAweDgwLCAweDgwLCAweDAwLCAweDAxLCAweDQwLAorICAgICAgICAgICAg
MHgwMiwgMHgwMSwgMHgwMSwgMHgwMSwgMHgwMSwgMHgwMywgMHg4MiwgMHg4MCwgMHg4MCwgMHg4
MCwgMHgwMCwgMHgwMSwgMHgwMCwgMHgwNywgMHg4ZCwgMHg4MCwKKyAgICAgICAgICAgIDB4ODAs
IDB4ODAsIDB4MDAsIDB4MDEsIDB4MDksIDB4NjQsIDB4NzUsIDB4NmQsIDB4NjIsIDB4MmQsIDB4
NmQsIDB4NzUsIDB4NmMsIDB4NzQsIDB4MDAsIDB4MDAsCisgICAgICAgICAgICAweDBhLCAweGM3
LCAweDgwLCAweDgwLCAweDgwLCAweDAwLCAweDAxLCAweGMxLCAweDgwLCAweDgwLCAweDgwLCAw
eDAwLCAweDAxLCAweDAzLCAweDAxLCAweDEwLAorICAgICAgICAgICAgMHgwMCwgMHgxNSwgMHgw
MiwgMHgxMCwgMHgwMCwgMHgxNSwgMHgwMywgMHgwMSwgMHgwMCwgMHgwMiwgMHgwMCwgMHgxNCwg
MHgwMywgMHgxNCwgMHgwMCwgMHg0ZCwKKyAgICAgICAgICAgIDB4MDcsIDB4MDEsIDB4MTAsIDB4
MDAsIDB4MTUsIDB4MDQsIDB4MTQsIDB4MDMsIDB4MTAsIDB4MDEsIDB4NDAsIDB4MTUsIDB4MDMs
IDB4MDIsIDB4MDAsIDB4MTQsCisgICAgICAgICAgICAweDA0LCAweDE0LCAweDAxLCAweDRkLCAw
eDA3LCAweDAxLCAweDE0LCAweDAyLCAweDEwLCAweDAxLCAweDQwLCAweDE1LCAweDAyLCAweDE0
LCAweDA0LCAweDEwLAorICAgICAgICAgICAgMHgwMSwgMHg0MCwgMHgxNSwgMHgwNCwgMHgwNiwg
MHgwMCwgMHgwZiwgMHgwZiwgMHgwZiwgMHgxNCwgMHgwMiwgMHgwOSwgMHgwZgogICAgICAgICB9
OwogCiAgICAgICAgIFBsYW4gcGxhbigqdm0sIHZlY3Rvcik7CkBAIC02MDgsMzMgKzUzOSwzMyBA
QCBzdGF0aWMgdm9pZCBydW5XQVNNVGVzdHMoKQogICAgICAgICAvLyAgICAgIChsb29wCiAgICAg
ICAgIC8vICAgICAgIChibG9jawogICAgICAgICAvLyAgICAgICAgKGJsb2NrCi0gICAgICAgIC8v
ICAgICAgICAgKGJyX2lmIDAgKGkzMi5lcSAoZ2V0X2xvY2FsICR4KSAoaTMyLmNvbnN0IDApKSkK
KyAgICAgICAgLy8gICAgICAgICAoYnJfaWYgMCAoaTMyLmVxIChnZXRfbG9jYWwgJHgpIChnZXRf
bG9jYWwgJHkpKSkKICAgICAgICAgLy8gICAgICAgICAoYnIgMSkKICAgICAgICAgLy8gICAgICAg
ICApCi0gICAgICAgIC8vICAgICAgICAocmV0dXJuIChpMzIuY29uc3QgMSkpCisgICAgICAgIC8v
ICAgICAgICAocmV0dXJuIChpMzIuY29uc3QgMCkpCiAgICAgICAgIC8vICAgICAgICApCiAgICAg
ICAgIC8vICAgICAgIChibG9jawogICAgICAgICAvLyAgICAgICAgKGJsb2NrCi0gICAgICAgIC8v
ICAgICAgICAgKGJyX2lmIDAgKGkzMi5lcSAoZ2V0X2xvY2FsICR4KSAoZ2V0X2xvY2FsICR5KSkp
CisgICAgICAgIC8vICAgICAgICAgKGJyX2lmIDAgKGkzMi5lcSAoZ2V0X2xvY2FsICR4KSAoaTMy
LmNvbnN0IDApKSkKICAgICAgICAgLy8gICAgICAgICAoYnIgMSkKICAgICAgICAgLy8gICAgICAg
ICApCi0gICAgICAgIC8vICAgICAgICAocmV0dXJuIChpMzIuY29uc3QgMCkpCisgICAgICAgIC8v
ICAgICAgICAocmV0dXJuIChpMzIuY29uc3QgMSkpCiAgICAgICAgIC8vICAgICAgICApCiAgICAg
ICAgIC8vICAgICAgIChzZXRfbG9jYWwgJHggKGkzMi5zdWIgKGdldF9sb2NhbCAkeCkgKGkzMi5j
b25zdCAxKSkpCiAgICAgICAgIC8vICAgICAgIChiciAwKQogICAgICAgICAvLyAgICAgICApCisg
ICAgICAgIC8vICAgICAgICh1bnJlYWNoYWJsZSkKICAgICAgICAgLy8gICAgICApCiAgICAgICAg
IC8vICAgICApCiAgICAgICAgIFZlY3Rvcjx1aW50OF90PiB2ZWN0b3IgPSB7Ci0gICAgICAgICAg
ICAweDAwLCAweDYxLCAweDczLCAweDZkLCAweDBjLCAweDAwLCAweDAwLCAweDAwLCAweDA0LCAw
eDc0LCAweDc5LCAweDcwLCAweDY1LCAweDg3LCAweDgwLCAweDgwLAotICAgICAgICAgICAgMHgw
MCwgMHgwMSwgMHg0MCwgMHgwMiwgMHgwMSwgMHgwMSwgMHgwMSwgMHgwMSwgMHgwOCwgMHg2Niwg
MHg3NSwgMHg2ZSwgMHg2MywgMHg3NCwgMHg2OSwgMHg2ZiwKLSAgICAgICAgICAgIDB4NmUsIDB4
ODIsIDB4ODAsIDB4ODAsIDB4MDAsIDB4MDEsIDB4MDAsIDB4MDYsIDB4NjUsIDB4NzgsIDB4NzAs
IDB4NmYsIDB4NzIsIDB4NzQsIDB4OTEsIDB4ODAsCi0gICAgICAgICAgICAweDgwLCAweDAwLCAw
eDAxLCAweDAwLCAweDBlLCAweDY0LCAweDc1LCAweDZkLCAweDYyLCAweDJkLCAweDZjLCAweDY1
LCAweDczLCAweDczLCAweDJkLCAweDc0LAotICAgICAgICAgICAgMHg2OCwgMHg2MSwgMHg2ZSwg
MHgwNCwgMHg2MywgMHg2ZiwgMHg2NCwgMHg2NSwgMHhiOSwgMHg4MCwgMHg4MCwgMHgwMCwgMHgw
MSwgMHhiNCwgMHg4MCwgMHg4MCwKLSAgICAgICAgICAgIDB4MDAsIDB4MDAsIDB4MDIsIDB4MDEs
IDB4MDEsIDB4MTQsIDB4MDAsIDB4MTQsIDB4MDEsIDB4NGQsIDB4MDcsIDB4MDAsIDB4MDAsIDB4
MDYsIDB4MDAsIDB4MDEsCi0gICAgICAgICAgICAweDBmLCAweDEwLCAweDAwLCAweDA5LCAweDAx
LCAweDBmLCAweDAxLCAweDAxLCAweDE0LCAweDAwLCAweDEwLCAweDAwLCAweDRkLCAweDA3LCAw
eDAwLCAweDAwLAotICAgICAgICAgICAgMHgwNiwgMHgwMCwgMHgwMSwgMHgwZiwgMHgxMCwgMHgw
MSwgMHgwOSwgMHgwMSwgMHgwZiwgMHgxNCwgMHgwMCwgMHgxMCwgMHgwMSwgMHg0MSwgMHgxNSwg
MHgwMCwKLSAgICAgICAgICAgIDB4MDYsIDB4MDAsIDB4MDAsIDB4MGYsIDB4MGYKKyAgICAgICAg
ICAgIDB4MDAsIDB4NjEsIDB4NzMsIDB4NmQsIDB4MGMsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDEs
IDB4ODcsIDB4ODAsIDB4ODAsIDB4ODAsIDB4MDAsIDB4MDEsIDB4NDAsCisgICAgICAgICAgICAw
eDAyLCAweDAxLCAweDAxLCAweDAxLCAweDAxLCAweDAzLCAweDgyLCAweDgwLCAweDgwLCAweDgw
LCAweDAwLCAweDAxLCAweDAwLCAweDA3LCAweDkyLCAweDgwLAorICAgICAgICAgICAgMHg4MCwg
MHg4MCwgMHgwMCwgMHgwMSwgMHgwZSwgMHg2NCwgMHg3NSwgMHg2ZCwgMHg2MiwgMHgyZCwgMHg2
YywgMHg2NSwgMHg3MywgMHg3MywgMHgyZCwgMHg3NCwKKyAgICAgICAgICAgIDB4NjgsIDB4NjEs
IDB4NmUsIDB4MDAsIDB4MDAsIDB4MGEsIDB4YjksIDB4ODAsIDB4ODAsIDB4ODAsIDB4MDAsIDB4
MDEsIDB4YjMsIDB4ODAsIDB4ODAsIDB4ODAsCisgICAgICAgICAgICAweDAwLCAweDAwLCAweDAy
LCAweDAwLCAweDAxLCAweDAwLCAweDAxLCAweDAwLCAweDE0LCAweDAwLCAweDE0LCAweDAxLCAw
eDRkLCAweDA3LCAweDAwLCAweDA2LAorICAgICAgICAgICAgMHgwMSwgMHgwZiwgMHgxMCwgMHgw
MCwgMHgwOSwgMHgwZiwgMHgwMSwgMHgwMCwgMHgwMSwgMHgwMCwgMHgxNCwgMHgwMCwgMHgxMCwg
MHgwMCwgMHg0ZCwgMHgwNywKKyAgICAgICAgICAgIDB4MDAsIDB4MDYsIDB4MDEsIDB4MGYsIDB4
MTAsIDB4MDEsIDB4MDksIDB4MGYsIDB4MTQsIDB4MDAsIDB4MTAsIDB4MDEsIDB4NDEsIDB4MTUs
IDB4MDAsIDB4MDYsCisgICAgICAgICAgICAweDAwLCAweDBmLCAweDAwLCAweDBmCiAgICAgICAg
IH07CiAKICAgICAgICAgUGxhbiBwbGFuKCp2bSwgdmVjdG9yKTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dBU01CM0lSR2VuZXJhdG9yLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS93YXNtL1dBU01CM0lSR2VuZXJhdG9yLmNwcAppbmRleCBmYjBhZjFiOTk0ZTQy
NWJmMzNlODcwNzM5NWE0ZjA5MjIyNjVmMmRmLi4wYjcxYzFhZmFhOTQ0NjE2YmExN2ZlYmZjOTVl
ZGJjYWM2MGQzY2I0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9XQVNN
QjNJUkdlbmVyYXRvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV0FTTUIz
SVJHZW5lcmF0b3IuY3BwCkBAIC0xMDUsMTEgKzEwNSwxMiBAQCBwcml2YXRlOgogCiBwdWJsaWM6
CiAgICAgc3RydWN0IENvbnRyb2xEYXRhIHsKLSAgICAgICAgQ29udHJvbERhdGEoT3B0aW9uYWw8
VmVjdG9yPFZhcmlhYmxlKj4+JiYgc3RhY2ssIEJhc2ljQmxvY2sqIHNwZWNpYWwgPSBudWxscHRy
LCBCYXNpY0Jsb2NrKiBjb250aW51YXRpb24gPSBudWxscHRyKQorICAgICAgICBDb250cm9sRGF0
YShQcm9jZWR1cmUmIHByb2MsIFR5cGUgc2lnbmF0dXJlLCBCYXNpY0Jsb2NrKiBzcGVjaWFsID0g
bnVsbHB0ciwgQmFzaWNCbG9jayogY29udGludWF0aW9uID0gbnVsbHB0cikKICAgICAgICAgICAg
IDogY29udGludWF0aW9uKGNvbnRpbnVhdGlvbikKICAgICAgICAgICAgICwgc3BlY2lhbChzcGVj
aWFsKQotICAgICAgICAgICAgLCBzdGFjayhzdGFjaykKICAgICAgICAgeworICAgICAgICAgICAg
aWYgKHNpZ25hdHVyZSAhPSBWb2lkKQorICAgICAgICAgICAgICAgIHJlc3VsdC5hcHBlbmQocHJv
Yy5hZGRWYXJpYWJsZSh0b0IzVHlwZShzaWduYXR1cmUpKSk7CiAgICAgICAgIH0KIAogICAgICAg
ICB2b2lkIGR1bXAoUHJpbnRTdHJlYW0mIG91dCkgY29uc3QKQEAgLTE0Myw3ICsxNDQsNyBAQCBw
dWJsaWM6CiAKICAgICAgICAgQmFzaWNCbG9jayogdGFyZ2V0QmxvY2tGb3JCcmFuY2goUHJvY2Vk
dXJlJiBwcm9jKQogICAgICAgICB7Ci0gICAgICAgICAgICBpZiAoc3BlY2lhbCkKKyAgICAgICAg
ICAgIGlmICh0eXBlKCkgPT0gQmxvY2tUeXBlOjpMb29wKQogICAgICAgICAgICAgICAgIHJldHVy
biBzcGVjaWFsOwogICAgICAgICAgICAgcmV0dXJuIGNvbnRpbnVhdGlvbi5nZXQocHJvYyk7CiAg
ICAgICAgIH0KQEAgLTE1NSwxMSArMTU2LDEzIEBAIHB1YmxpYzoKICAgICAgICAgLy8gdGhhdCBl
eGFtcGxlLCBpZiB3ZSBlYWdlcmx5IGFsbG9jYXRlIGEgQmFzaWNCbG9jayBmb3IgdGhlIGNvbnRp
bnVhdGlvbiBpdCB3aWxsIG5ldmVyIGJlIHJlYWNoYWJsZS4KICAgICAgICAgTGF6eUJsb2NrIGNv
bnRpbnVhdGlvbjsKICAgICAgICAgQmFzaWNCbG9jayogc3BlY2lhbDsKLSAgICAgICAgT3B0aW9u
YWw8VmVjdG9yPFZhcmlhYmxlKj4+IHN0YWNrOworICAgICAgICBWZWN0b3I8VmFyaWFibGUqLCAx
PiByZXN1bHQ7CiAgICAgfTsKIAogICAgIHR5cGVkZWYgVmFsdWUqIEV4cHJlc3Npb25UeXBlOwog
ICAgIHR5cGVkZWYgQ29udHJvbERhdGEgQ29udHJvbFR5cGU7CisgICAgdHlwZWRlZiBWZWN0b3I8
RXhwcmVzc2lvblR5cGUsIDE+IEV4cHJlc3Npb25MaXN0OworICAgIHR5cGVkZWYgVmVjdG9yPFZh
cmlhYmxlKiwgMT4gUmVzdWx0TGlzdDsKICAgICBzdGF0aWMgY29uc3RleHByIEV4cHJlc3Npb25U
eXBlIGVtcHR5RXhwcmVzc2lvbiA9IG51bGxwdHI7CiAKICAgICBCM0lSR2VuZXJhdG9yKFByb2Nl
ZHVyZSYpOwpAQCAtMTc0LDIzICsxNzcsMjIgQEAgcHVibGljOgogICAgIGJvb2wgV0FSTl9VTlVT
RURfUkVUVVJOIGJpbmFyeU9wKEJpbmFyeU9wVHlwZSwgRXhwcmVzc2lvblR5cGUgbGVmdCwgRXhw
cmVzc2lvblR5cGUgcmlnaHQsIEV4cHJlc3Npb25UeXBlJiByZXN1bHQpOwogICAgIGJvb2wgV0FS
Tl9VTlVTRURfUkVUVVJOIHVuYXJ5T3AoVW5hcnlPcFR5cGUsIEV4cHJlc3Npb25UeXBlIGFyZywg
RXhwcmVzc2lvblR5cGUmIHJlc3VsdCk7CiAKLSAgICBDb250cm9sRGF0YSBXQVJOX1VOVVNFRF9S
RVRVUk4gYWRkQmxvY2soKTsKLSAgICBDb250cm9sRGF0YSBXQVJOX1VOVVNFRF9SRVRVUk4gYWRk
TG9vcCgpOwotICAgIENvbnRyb2xEYXRhIFdBUk5fVU5VU0VEX1JFVFVSTiBhZGRJZihFeHByZXNz
aW9uVHlwZSBjb25kaXRpb24pOworICAgIENvbnRyb2xEYXRhIFdBUk5fVU5VU0VEX1JFVFVSTiBh
ZGRCbG9jayhUeXBlIHNpZ25hdHVyZSk7CisgICAgQ29udHJvbERhdGEgV0FSTl9VTlVTRURfUkVU
VVJOIGFkZExvb3AoVHlwZSBzaWduYXR1cmUpOworICAgIENvbnRyb2xEYXRhIFdBUk5fVU5VU0VE
X1JFVFVSTiBhZGRJZihFeHByZXNzaW9uVHlwZSBjb25kaXRpb24sIFR5cGUgc2lnbmF0dXJlKTsK
ICAgICBib29sIFdBUk5fVU5VU0VEX1JFVFVSTiBhZGRFbHNlKENvbnRyb2xEYXRhJik7CiAKLSAg
ICBib29sIFdBUk5fVU5VU0VEX1JFVFVSTiBhZGRSZXR1cm4oY29uc3QgVmVjdG9yPEV4cHJlc3Np
b25UeXBlLCAxPiYgcmV0dXJuVmFsdWVzKTsKLSAgICBib29sIFdBUk5fVU5VU0VEX1JFVFVSTiBh
ZGRCcmFuY2goQ29udHJvbERhdGEmLCBFeHByZXNzaW9uVHlwZSBjb25kaXRpb24sIGNvbnN0IFZl
Y3RvcjxFeHByZXNzaW9uVHlwZSwgMT4mIHJldHVyblZhbHVlcyk7Ci0gICAgYm9vbCBXQVJOX1VO
VVNFRF9SRVRVUk4gZW5kQmxvY2soQ29udHJvbERhdGEmLCBWZWN0b3I8RXhwcmVzc2lvblR5cGUs
IDE+JiBleHByZXNzaW9uU3RhY2spOworICAgIGJvb2wgV0FSTl9VTlVTRURfUkVUVVJOIGFkZFJl
dHVybihjb25zdCBFeHByZXNzaW9uTGlzdCYgcmV0dXJuVmFsdWVzKTsKKyAgICBib29sIFdBUk5f
VU5VU0VEX1JFVFVSTiBhZGRCcmFuY2goQ29udHJvbERhdGEmLCBFeHByZXNzaW9uVHlwZSBjb25k
aXRpb24sIGNvbnN0IEV4cHJlc3Npb25MaXN0JiByZXR1cm5WYWx1ZXMpOworICAgIGJvb2wgV0FS
Tl9VTlVTRURfUkVUVVJOIGVuZEJsb2NrKENvbnRyb2xEYXRhJiwgRXhwcmVzc2lvbkxpc3QmIGV4
cHJlc3Npb25TdGFjayk7CiAKICAgICBib29sIGlzQ29udGludWF0aW9uUmVhY2hhYmxlKENvbnRy
b2xEYXRhJik7CiAKLSAgICB2b2lkIGR1bXAoY29uc3QgVmVjdG9yPENvbnRyb2xUeXBlPiYgY29u
dHJvbFN0YWNrLCBjb25zdCBWZWN0b3I8RXhwcmVzc2lvblR5cGUsIDE+JiBleHByZXNzaW9uU3Rh
Y2spOworICAgIHZvaWQgZHVtcChjb25zdCBWZWN0b3I8Q29udHJvbFR5cGU+JiBjb250cm9sU3Rh
Y2ssIGNvbnN0IEV4cHJlc3Npb25MaXN0JiBleHByZXNzaW9uU3RhY2spOwogCiBwcml2YXRlOgog
ICAgIHZvaWQgdW5pZnkoVmFyaWFibGUqIHRhcmdldCwgY29uc3QgRXhwcmVzc2lvblR5cGUgc291
cmNlKTsKLSAgICBWZWN0b3I8VmFyaWFibGUqPiBpbml0aWFsaXplSW5jb21taW5nVHlwZXMoQmFz
aWNCbG9jayosIGNvbnN0IFZlY3RvcjxFeHByZXNzaW9uVHlwZSwgMT4mKTsKLSAgICB2b2lkIHVu
aWZ5VmFsdWVzV2l0aEJsb2NrKGNvbnN0IFZlY3RvcjxFeHByZXNzaW9uVHlwZSwgMT4mIHJlc3Vs
dFN0YWNrLCBPcHRpb25hbDxWZWN0b3I8VmFyaWFibGUqPj4mIHN0YWNrLCBCYXNpY0Jsb2NrKiB0
YXJnZXQpOworICAgIHZvaWQgdW5pZnlWYWx1ZXNXaXRoQmxvY2soY29uc3QgRXhwcmVzc2lvbkxp
c3QmIHJlc3VsdFN0YWNrLCBSZXN1bHRMaXN0JiBzdGFjayk7CiAKICAgICBQcm9jZWR1cmUmIG1f
cHJvYzsKICAgICBCYXNpY0Jsb2NrKiBtX2N1cnJlbnRCbG9jazsKQEAgLTI2NSwyMSArMjY3LDIx
IEBAIEIzSVJHZW5lcmF0b3I6OkV4cHJlc3Npb25UeXBlIEIzSVJHZW5lcmF0b3I6OmFkZENvbnN0
YW50KFR5cGUgdHlwZSwgdWludDY0X3QgdmFsCiAgICAgfQogfQogCi1CM0lSR2VuZXJhdG9yOjpD
b250cm9sRGF0YSBCM0lSR2VuZXJhdG9yOjphZGRCbG9jaygpCitCM0lSR2VuZXJhdG9yOjpDb250
cm9sRGF0YSBCM0lSR2VuZXJhdG9yOjphZGRCbG9jayhUeXBlIHNpZ25hdHVyZSkKIHsKLSAgICBy
ZXR1cm4gQ29udHJvbERhdGEoTnVsbG9wdCk7CisgICAgcmV0dXJuIENvbnRyb2xEYXRhKG1fcHJv
Yywgc2lnbmF0dXJlKTsKIH0KIAotQjNJUkdlbmVyYXRvcjo6Q29udHJvbERhdGEgQjNJUkdlbmVy
YXRvcjo6YWRkTG9vcCgpCitCM0lSR2VuZXJhdG9yOjpDb250cm9sRGF0YSBCM0lSR2VuZXJhdG9y
OjphZGRMb29wKFR5cGUgc2lnbmF0dXJlKQogewogICAgIEJhc2ljQmxvY2sqIGJvZHkgPSBtX3By
b2MuYWRkQmxvY2soKTsKICAgICBtX2N1cnJlbnRCbG9jay0+YXBwZW5kTmV3Q29udHJvbFZhbHVl
KG1fcHJvYywgSnVtcCwgT3JpZ2luKCksIGJvZHkpOwogICAgIGJvZHktPmFkZFByZWRlY2Vzc29y
KG1fY3VycmVudEJsb2NrKTsKICAgICBtX2N1cnJlbnRCbG9jayA9IGJvZHk7Ci0gICAgcmV0dXJu
IENvbnRyb2xEYXRhKFZlY3RvcjxWYXJpYWJsZSo+KCksIGJvZHkpOworICAgIHJldHVybiBDb250
cm9sRGF0YShtX3Byb2MsIHNpZ25hdHVyZSwgYm9keSk7CiB9CiAKLUIzSVJHZW5lcmF0b3I6OkNv
bnRyb2xEYXRhIEIzSVJHZW5lcmF0b3I6OmFkZElmKEV4cHJlc3Npb25UeXBlIGNvbmRpdGlvbikK
K0IzSVJHZW5lcmF0b3I6OkNvbnRyb2xEYXRhIEIzSVJHZW5lcmF0b3I6OmFkZElmKEV4cHJlc3Np
b25UeXBlIGNvbmRpdGlvbiwgVHlwZSBzaWduYXR1cmUpCiB7CiAgICAgLy8gRklYTUU6IFRoaXMg
bmVlZHMgdG8gZG8gc29tZSBraW5kIG9mIHN0YWNrIHBhc3NpbmcuCiAKQEAgLTI5Myw3ICsyOTUs
NyBAQCBCM0lSR2VuZXJhdG9yOjpDb250cm9sRGF0YSBCM0lSR2VuZXJhdG9yOjphZGRJZihFeHBy
ZXNzaW9uVHlwZSBjb25kaXRpb24pCiAgICAgbm90VGFrZW4tPmFkZFByZWRlY2Vzc29yKG1fY3Vy
cmVudEJsb2NrKTsKIAogICAgIG1fY3VycmVudEJsb2NrID0gdGFrZW47Ci0gICAgcmV0dXJuIENv
bnRyb2xEYXRhKE51bGxvcHQsIG5vdFRha2VuLCBjb250aW51YXRpb24pOworICAgIHJldHVybiBD
b250cm9sRGF0YShtX3Byb2MsIHNpZ25hdHVyZSwgbm90VGFrZW4sIGNvbnRpbnVhdGlvbik7CiB9
CiAKIGJvb2wgQjNJUkdlbmVyYXRvcjo6YWRkRWxzZShDb250cm9sRGF0YSYgZGF0YSkKQEAgLTMw
Niw3ICszMDgsNyBAQCBib29sIEIzSVJHZW5lcmF0b3I6OmFkZEVsc2UoQ29udHJvbERhdGEmIGRh
dGEpCiAgICAgcmV0dXJuIHRydWU7CiB9CiAKLWJvb2wgQjNJUkdlbmVyYXRvcjo6YWRkUmV0dXJu
KGNvbnN0IFZlY3RvcjxFeHByZXNzaW9uVHlwZSwgMT4mIHJldHVyblZhbHVlcykKK2Jvb2wgQjNJ
UkdlbmVyYXRvcjo6YWRkUmV0dXJuKGNvbnN0IEV4cHJlc3Npb25MaXN0JiByZXR1cm5WYWx1ZXMp
CiB7CiAgICAgQVNTRVJUKHJldHVyblZhbHVlcy5zaXplKCkgPD0gMSk7CiAgICAgaWYgKHJldHVy
blZhbHVlcy5zaXplKCkpCkBAIC0zMTYsMTAgKzMxOCwxMCBAQCBib29sIEIzSVJHZW5lcmF0b3I6
OmFkZFJldHVybihjb25zdCBWZWN0b3I8RXhwcmVzc2lvblR5cGUsIDE+JiByZXR1cm5WYWx1ZXMp
CiAgICAgcmV0dXJuIHRydWU7CiB9CiAKLWJvb2wgQjNJUkdlbmVyYXRvcjo6YWRkQnJhbmNoKENv
bnRyb2xEYXRhJiBkYXRhLCBFeHByZXNzaW9uVHlwZSBjb25kaXRpb24sIGNvbnN0IFZlY3RvcjxF
eHByZXNzaW9uVHlwZSwgMT4mIHJldHVyblZhbHVlcykKK2Jvb2wgQjNJUkdlbmVyYXRvcjo6YWRk
QnJhbmNoKENvbnRyb2xEYXRhJiBkYXRhLCBFeHByZXNzaW9uVHlwZSBjb25kaXRpb24sIGNvbnN0
IEV4cHJlc3Npb25MaXN0JiByZXR1cm5WYWx1ZXMpCiB7CiAgICAgQmFzaWNCbG9jayogdGFyZ2V0
ID0gZGF0YS50YXJnZXRCbG9ja0ZvckJyYW5jaChtX3Byb2MpOwotICAgIHVuaWZ5VmFsdWVzV2l0
aEJsb2NrKHJldHVyblZhbHVlcywgZGF0YS5zdGFjaywgdGFyZ2V0KTsKKyAgICB1bmlmeVZhbHVl
c1dpdGhCbG9jayhyZXR1cm5WYWx1ZXMsIGRhdGEucmVzdWx0KTsKICAgICBpZiAoY29uZGl0aW9u
KSB7CiAgICAgICAgIEJhc2ljQmxvY2sqIGNvbnRpbnVhdGlvbiA9IG1fcHJvYy5hZGRCbG9jaygp
OwogICAgICAgICBtX2N1cnJlbnRCbG9jay0+YXBwZW5kTmV3PFZhbHVlPihtX3Byb2MsIEIzOjpC
cmFuY2gsIE9yaWdpbigpLCBjb25kaXRpb24pOwpAQCAtMzM1LDcgKzMzNyw3IEBAIGJvb2wgQjNJ
UkdlbmVyYXRvcjo6YWRkQnJhbmNoKENvbnRyb2xEYXRhJiBkYXRhLCBFeHByZXNzaW9uVHlwZSBj
b25kaXRpb24sIGNvbnN0CiAgICAgcmV0dXJuIHRydWU7CiB9CiAKLWJvb2wgQjNJUkdlbmVyYXRv
cjo6ZW5kQmxvY2soQ29udHJvbERhdGEmIGRhdGEsIFZlY3RvcjxFeHByZXNzaW9uVHlwZSwgMT4m
IGV4cHJlc3Npb25TdGFjaykKK2Jvb2wgQjNJUkdlbmVyYXRvcjo6ZW5kQmxvY2soQ29udHJvbERh
dGEmIGRhdGEsIEV4cHJlc3Npb25MaXN0JiBleHByZXNzaW9uU3RhY2spCiB7CiAgICAgaWYgKCFk
YXRhLmNvbnRpbnVhdGlvbikKICAgICAgICAgcmV0dXJuIHRydWU7CkBAIC0zNDksNyArMzUxLDcg
QEAgYm9vbCBCM0lSR2VuZXJhdG9yOjplbmRCbG9jayhDb250cm9sRGF0YSYgZGF0YSwgVmVjdG9y
PEV4cHJlc3Npb25UeXBlLCAxPiYgZXhwcmUKICAgICAgICAgY29udGludWF0aW9uLT5hZGRQcmVk
ZWNlc3NvcihkYXRhLnNwZWNpYWwpOwogICAgIH0KIAotICAgIHVuaWZ5VmFsdWVzV2l0aEJsb2Nr
KGV4cHJlc3Npb25TdGFjaywgZGF0YS5zdGFjaywgY29udGludWF0aW9uKTsKKyAgICB1bmlmeVZh
bHVlc1dpdGhCbG9jayhleHByZXNzaW9uU3RhY2ssIGRhdGEucmVzdWx0KTsKICAgICBtX2N1cnJl
bnRCbG9jay0+YXBwZW5kTmV3Q29udHJvbFZhbHVlKG1fcHJvYywgSnVtcCwgT3JpZ2luKCksIGNv
bnRpbnVhdGlvbik7CiAgICAgY29udGludWF0aW9uLT5hZGRQcmVkZWNlc3NvcihtX2N1cnJlbnRC
bG9jayk7CiAgICAgbV9jdXJyZW50QmxvY2sgPSBjb250aW51YXRpb247CkBAIC0zNzcsMzQgKzM3
OSwxNSBAQCB2b2lkIEIzSVJHZW5lcmF0b3I6OnVuaWZ5KFZhcmlhYmxlKiB2YXJpYWJsZSwgRXhw
cmVzc2lvblR5cGUgc291cmNlKQogICAgIG1fY3VycmVudEJsb2NrLT5hcHBlbmROZXc8VmFyaWFi
bGVWYWx1ZT4obV9wcm9jLCBTZXQsIE9yaWdpbigpLCB2YXJpYWJsZSwgc291cmNlKTsKIH0KIAot
VmVjdG9yPFZhcmlhYmxlKj4gQjNJUkdlbmVyYXRvcjo6aW5pdGlhbGl6ZUluY29tbWluZ1R5cGVz
KEJhc2ljQmxvY2sqIGJsb2NrLCBjb25zdCBWZWN0b3I8RXhwcmVzc2lvblR5cGUsIDE+JiBzb3Vy
Y2UpCi17Ci0gICAgVmVjdG9yPFZhcmlhYmxlKj4gcmVzdWx0OwotICAgIHJlc3VsdC5yZXNlcnZl
SW5pdGlhbENhcGFjaXR5KHNvdXJjZS5zaXplKCkpOwotICAgIGZvciAoRXhwcmVzc2lvblR5cGUg
ZXhwciA6IHNvdXJjZSkgewotICAgICAgICBBU1NFUlQoZXhwci0+dHlwZSgpICE9IEIzOjpWb2lk
KTsKLSAgICAgICAgVmFyaWFibGUqIHZhciA9IG1fcHJvYy5hZGRWYXJpYWJsZShleHByLT50eXBl
KCkpOwotICAgICAgICByZXN1bHQuYXBwZW5kKHZhcik7Ci0gICAgICAgIGJsb2NrLT5hcHBlbmRO
ZXc8VmFyaWFibGVWYWx1ZT4obV9wcm9jLCBCMzo6R2V0LCBPcmlnaW4oKSwgdmFyKTsKLSAgICB9
Ci0KLSAgICByZXR1cm4gcmVzdWx0OwotfQotCi12b2lkIEIzSVJHZW5lcmF0b3I6OnVuaWZ5VmFs
dWVzV2l0aEJsb2NrKGNvbnN0IFZlY3RvcjxFeHByZXNzaW9uVHlwZSwgMT4mIHJlc3VsdFN0YWNr
LCBPcHRpb25hbDxWZWN0b3I8VmFyaWFibGUqPj4mIHN0YWNrLCBCYXNpY0Jsb2NrKiB0YXJnZXQp
Cit2b2lkIEIzSVJHZW5lcmF0b3I6OnVuaWZ5VmFsdWVzV2l0aEJsb2NrKGNvbnN0IEV4cHJlc3Np
b25MaXN0JiByZXN1bHRTdGFjaywgUmVzdWx0TGlzdCYgcmVzdWx0KQogewotICAgIGlmICghc3Rh
Y2spIHsKLSAgICAgICAgc3RhY2sgPSBpbml0aWFsaXplSW5jb21taW5nVHlwZXModGFyZ2V0LCBy
ZXN1bHRTdGFjayk7Ci0gICAgICAgIHJldHVybjsKLSAgICB9Ci0KLSAgICBBU1NFUlQoc3RhY2su
dmFsdWUoKS5zaXplKCkgPT0gcmVzdWx0U3RhY2suc2l6ZSgpKTsKKyAgICBBU1NFUlQocmVzdWx0
LnNpemUoKSA+PSByZXN1bHRTdGFjay5zaXplKCkpOwogCiAgICAgZm9yIChzaXplX3QgaSA9IDA7
IGkgPCByZXN1bHRTdGFjay5zaXplKCk7ICsraSkKLSAgICAgICAgdW5pZnkoc3RhY2sudmFsdWUo
KVtpXSwgcmVzdWx0U3RhY2tbaV0pOworICAgICAgICB1bmlmeShyZXN1bHRbaV0sIHJlc3VsdFN0
YWNrW2ldKTsKIH0KIAotdm9pZCBCM0lSR2VuZXJhdG9yOjpkdW1wKGNvbnN0IFZlY3RvcjxDb250
cm9sVHlwZT4mIGNvbnRyb2xTdGFjaywgY29uc3QgVmVjdG9yPEV4cHJlc3Npb25UeXBlLCAxPiYg
ZXhwcmVzc2lvblN0YWNrKQordm9pZCBCM0lSR2VuZXJhdG9yOjpkdW1wKGNvbnN0IFZlY3RvcjxD
b250cm9sVHlwZT4mIGNvbnRyb2xTdGFjaywgY29uc3QgRXhwcmVzc2lvbkxpc3QmIGV4cHJlc3Np
b25TdGFjaykKIHsKICAgICBkYXRhTG9nTG4oIlByb2Nlc3NpbmcgR3JhcGg6Iik7CiAgICAgZGF0
YUxvZyhtX3Byb2MpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV0FT
TUZvcm1hdC5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV0FTTUZvcm1hdC5oCmluZGV4
IDljOTZiNWRkY2ZlMTdiMzVjZWQ0NTk1ZDU5NGVmZDQ1Mjg0NjdjMGUuLjdhMDQxMzdlM2M3MGYx
ODI0NzEwYWNkOTg4NDdmNzIxNTYyNGQwMWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS93YXNtL1dBU01Gb3JtYXQuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9X
QVNNRm9ybWF0LmgKQEAgLTU1LDEyICs1NSwxMiBAQCBjbGFzcyBKU0Z1bmN0aW9uOwogbmFtZXNw
YWNlIFdBU00gewogCiBlbnVtIFR5cGUgOiB1aW50OF90IHsKLSAgICBJMzIgPSAxLAorICAgIFZv
aWQsCisgICAgSTMyLAogICAgIEk2NCwKICAgICBGMzIsCiAgICAgRjY0LAogICAgIExhc3RWYWx1
ZVR5cGUgPSBGNjQsCi0gICAgVm9pZAogfTsKIAogc3RhdGljX2Fzc2VydChJMzIgPT0gMSwgIldB
U00gbmVlZHMgSTMyIHRvIGhhdmUgdGhlIHZhbHVlIDEiKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS93YXNtL1dBU01GdW5jdGlvblBhcnNlci5oIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3dhc20vV0FTTUZ1bmN0aW9uUGFyc2VyLmgKaW5kZXggOGY2M2ZjZWRhNDkwMWY0MDRi
ZDJlZjZiODQ5NDI2ZjQ1YWE3NjI5Ny4uYWI4MmJlOTgwMjVhZDJmNTViZTIwZjJlMDMzYTYxZmFl
NGFjZDhlNSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV0FTTUZ1bmN0
aW9uUGFyc2VyLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV0FTTUZ1bmN0aW9u
UGFyc2VyLmgKQEAgLTU5LDYgKzU5LDcgQEAgcHJpdmF0ZToKICAgICBDb250ZXh0JiBtX2NvbnRl
eHQ7CiAgICAgVmVjdG9yPEV4cHJlc3Npb25UeXBlLCAxPiBtX2V4cHJlc3Npb25TdGFjazsKICAg
ICBWZWN0b3I8Q29udHJvbFR5cGU+IG1fY29udHJvbFN0YWNrOworICAgIGNvbnN0IFNpZ25hdHVy
ZSYgbV9zaWduYXR1cmU7CiAgICAgdW5zaWduZWQgbV91bnJlYWNoYWJsZUJsb2NrcyB7IDAgfTsK
IH07CiAKQEAgLTY2LDggKzY3LDExIEBAIHRlbXBsYXRlPHR5cGVuYW1lIENvbnRleHQ+CiBGdW5j
dGlvblBhcnNlcjxDb250ZXh0Pjo6RnVuY3Rpb25QYXJzZXIoQ29udGV4dCYgY29udGV4dCwgY29u
c3QgVmVjdG9yPHVpbnQ4X3Q+JiBzb3VyY2VCdWZmZXIsIGNvbnN0IEZ1bmN0aW9uSW5mb3JtYXRp
b24mIGluZm8pCiAgICAgOiBQYXJzZXIoc291cmNlQnVmZmVyLCBpbmZvLnN0YXJ0LCBpbmZvLmVu
ZCkKICAgICAsIG1fY29udGV4dChjb250ZXh0KQorICAgICwgbV9zaWduYXR1cmUoKmluZm8uc2ln
bmF0dXJlKQogewotICAgIG1fY29udGV4dC5hZGRBcmd1bWVudHMoaW5mby5zaWduYXR1cmUtPmFy
Z3VtZW50cyk7CisgICAgaWYgKHZlcmJvc2UpCisgICAgICAgIGRhdGFMb2dMbigiUGFyc2luZyBm
dW5jdGlvbiBzdGFydGluZyBhdDogIiwgaW5mby5zdGFydCwgIiBlbmRpbmcgYXQ6ICIsIGluZm8u
ZW5kKTsKKyAgICBtX2NvbnRleHQuYWRkQXJndW1lbnRzKG1fc2lnbmF0dXJlLmFyZ3VtZW50cyk7
CiB9CiAKIHRlbXBsYXRlPHR5cGVuYW1lIENvbnRleHQ+CkBAIC0xMDEsNyArMTA1LDcgQEAgYm9v
bCBGdW5jdGlvblBhcnNlcjxDb250ZXh0Pjo6cGFyc2VCbG9jaygpCiAgICAgICAgICAgICByZXR1
cm4gZmFsc2U7CiAKICAgICAgICAgaWYgKHZlcmJvc2UpIHsKLSAgICAgICAgICAgIGRhdGFMb2dM
bigicHJvY2Vzc2luZyBvcCAoIiwgbV91bnJlYWNoYWJsZUJsb2NrcywgIik6ICIsICBSYXdQb2lu
dGVyKHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCo+KG9wKSkpOworICAgICAgICAgICAgZGF0YUxvZ0xu
KCJwcm9jZXNzaW5nIG9wICgiLCBtX3VucmVhY2hhYmxlQmxvY2tzLCAiKTogIiwgIFJhd1BvaW50
ZXIocmVpbnRlcnByZXRfY2FzdDx2b2lkKj4ob3ApKSwgIiBhdCBvZmZzZXQ6ICIsIFJhd1BvaW50
ZXIocmVpbnRlcnByZXRfY2FzdDx2b2lkKj4obV9vZmZzZXQpKSk7CiAgICAgICAgICAgICBtX2Nv
bnRleHQuZHVtcChtX2NvbnRyb2xTdGFjaywgbV9leHByZXNzaW9uU3RhY2spOwogICAgICAgICB9
CiAKQEAgLTE3OSwxOCArMTgzLDMwIEBAIGJvb2wgRnVuY3Rpb25QYXJzZXI8Q29udGV4dD46OnBh
cnNlRXhwcmVzc2lvbihPcFR5cGUgb3ApCiAgICAgfQogCiAgICAgY2FzZSBPcFR5cGU6OkJsb2Nr
OiB7Ci0gICAgICAgIG1fY29udHJvbFN0YWNrLmFwcGVuZChtX2NvbnRleHQuYWRkQmxvY2soKSk7
CisgICAgICAgIFR5cGUgaW5saW5lU2lnbmF0dXJlOworICAgICAgICBpZiAoIXBhcnNlVmFsdWVU
eXBlKGlubGluZVNpZ25hdHVyZSkpCisgICAgICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICAg
ICAgbV9jb250cm9sU3RhY2suYXBwZW5kKG1fY29udGV4dC5hZGRCbG9jayhpbmxpbmVTaWduYXR1
cmUpKTsKICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgfQogCiAgICAgY2FzZSBPcFR5cGU6Okxv
b3A6IHsKLSAgICAgICAgbV9jb250cm9sU3RhY2suYXBwZW5kKG1fY29udGV4dC5hZGRMb29wKCkp
OworICAgICAgICBUeXBlIGlubGluZVNpZ25hdHVyZTsKKyAgICAgICAgaWYgKCFwYXJzZVZhbHVl
VHlwZShpbmxpbmVTaWduYXR1cmUpKQorICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAg
ICAgIG1fY29udHJvbFN0YWNrLmFwcGVuZChtX2NvbnRleHQuYWRkTG9vcChpbmxpbmVTaWduYXR1
cmUpKTsKICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgfQogCiAgICAgY2FzZSBPcFR5cGU6Oklm
OiB7CisgICAgICAgIFR5cGUgaW5saW5lU2lnbmF0dXJlOworICAgICAgICBpZiAoIXBhcnNlVmFs
dWVUeXBlKGlubGluZVNpZ25hdHVyZSkpCisgICAgICAgICAgICByZXR1cm4gZmFsc2U7CisKICAg
ICAgICAgRXhwcmVzc2lvblR5cGUgY29uZGl0aW9uID0gbV9leHByZXNzaW9uU3RhY2sudGFrZUxh
c3QoKTsKLSAgICAgICAgbV9jb250cm9sU3RhY2suYXBwZW5kKG1fY29udGV4dC5hZGRJZihjb25k
aXRpb24pKTsKKyAgICAgICAgbV9jb250cm9sU3RhY2suYXBwZW5kKG1fY29udGV4dC5hZGRJZihj
b25kaXRpb24sIGlubGluZVNpZ25hdHVyZSkpOwogICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9
CiAKQEAgLTIwMCwxMiArMjE2LDggQEAgYm9vbCBGdW5jdGlvblBhcnNlcjxDb250ZXh0Pjo6cGFy
c2VFeHByZXNzaW9uKE9wVHlwZSBvcCkKIAogICAgIGNhc2UgT3BUeXBlOjpCcmFuY2g6CiAgICAg
Y2FzZSBPcFR5cGU6OkJyYW5jaElmOiB7Ci0gICAgICAgIHVpbnQzMl90IGFyaXR5OwotICAgICAg
ICBpZiAoIXBhcnNlVmFyVUludDMyKGFyaXR5KSB8fCBhcml0eSA+IG1fZXhwcmVzc2lvblN0YWNr
LnNpemUoKSkKLSAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLQogICAgICAgICB1aW50MzJfdCB0
YXJnZXQ7Ci0gICAgICAgIGlmICghcGFyc2VWYXJVSW50MzIodGFyZ2V0KSkKKyAgICAgICAgaWYg
KCFwYXJzZVZhclVJbnQzMih0YXJnZXQpIHx8IHRhcmdldCA+PSBtX2NvbnRyb2xTdGFjay5zaXpl
KCkpCiAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAKICAgICAgICAgRXhwcmVzc2lvblR5cGUg
Y29uZGl0aW9uID0gQ29udGV4dDo6ZW1wdHlFeHByZXNzaW9uOwpAQCAtMjE0LDIzICsyMjYsMTQg
QEAgYm9vbCBGdW5jdGlvblBhcnNlcjxDb250ZXh0Pjo6cGFyc2VFeHByZXNzaW9uKE9wVHlwZSBv
cCkKICAgICAgICAgZWxzZQogICAgICAgICAgICAgbV91bnJlYWNoYWJsZUJsb2NrcyA9IDE7CiAK
LSAgICAgICAgVmVjdG9yPEV4cHJlc3Npb25UeXBlLCAxPiB2YWx1ZXMoYXJpdHkpOwotICAgICAg
ICBmb3IgKHVuc2lnbmVkIGkgPSBhcml0eTsgaTsgaS0tKQotICAgICAgICAgICAgdmFsdWVzW2kt
MV0gPSBtX2V4cHJlc3Npb25TdGFjay50YWtlTGFzdCgpOwotCi0gICAgICAgIGlmICh0YXJnZXQg
Pj0gbV9jb250cm9sU3RhY2suc2l6ZSgpKQotICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAg
ICAgICBDb250cm9sVHlwZSYgZGF0YSA9IG1fY29udHJvbFN0YWNrW21fY29udHJvbFN0YWNrLnNp
emUoKSAtIDEgLSB0YXJnZXRdOwogCi0gICAgICAgIHJldHVybiBtX2NvbnRleHQuYWRkQnJhbmNo
KGRhdGEsIGNvbmRpdGlvbiwgdmFsdWVzKTsKKyAgICAgICAgcmV0dXJuIG1fY29udGV4dC5hZGRC
cmFuY2goZGF0YSwgY29uZGl0aW9uLCBtX2V4cHJlc3Npb25TdGFjayk7CiAgICAgfQogCiAgICAg
Y2FzZSBPcFR5cGU6OlJldHVybjogewotICAgICAgICB1aW50OF90IHJldHVybkNvdW50OwotICAg
ICAgICBpZiAoIXBhcnNlVmFyVUludDEocmV0dXJuQ291bnQpKQotICAgICAgICAgICAgcmV0dXJu
IGZhbHNlOwogICAgICAgICBWZWN0b3I8RXhwcmVzc2lvblR5cGUsIDE+IHJldHVyblZhbHVlczsK
LSAgICAgICAgaWYgKHJldHVybkNvdW50KQorICAgICAgICBpZiAobV9zaWduYXR1cmUucmV0dXJu
VHlwZSAhPSBWb2lkKQogICAgICAgICAgICAgcmV0dXJuVmFsdWVzLmFwcGVuZChtX2V4cHJlc3Np
b25TdGFjay50YWtlTGFzdCgpKTsKIAogICAgICAgICBtX3VucmVhY2hhYmxlQmxvY2tzID0gMTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dBU01Nb2R1bGVQYXJzZXIu
Y3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV0FTTU1vZHVsZVBhcnNlci5jcHAKaW5k
ZXggZjBjMDQyNTI2ZmFlY2RmMjQ3NGQ4MzYzZmY3MjRiZGVjOTBjZTJiNS4uNWUwNTNhNWE3OTAz
YTU0ZWI4NjQ1NjQ2ODJlM2U5ZDE3MTBiMjE2NCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3dhc20vV0FTTU1vZHVsZVBhcnNlci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3dhc20vV0FTTU1vZHVsZVBhcnNlci5jcHAKQEAgLTYxLDE4ICs2MSwzMyBAQCBib29sIE1v
ZHVsZVBhcnNlcjo6cGFyc2UoKQogICAgIHdoaWxlIChtX29mZnNldCA8IG1fc291cmNlTGVuZ3Ro
KSB7CiAgICAgICAgIGlmICh2ZXJib3NlKQogICAgICAgICAgICAgZGF0YUxvZ0xuKCJTdGFydGlu
ZyB0byBwYXJzZSBuZXh0IHNlY3Rpb24gYXQgb2Zmc2V0OiAiLCBtX29mZnNldCk7Ci0gICAgICAg
IHVpbnQzMl90IHNlY3Rpb25OYW1lTGVuZ3RoOwotICAgICAgICBpZiAoIXBhcnNlVmFyVUludDMy
KHNlY3Rpb25OYW1lTGVuZ3RoKSkKLSAgICAgICAgICAgIHJldHVybiBmYWxzZTsKIAotICAgICAg
ICAvLyBNYWtlIHN1cmUgd2UgY2FuIHJlYWQgdXAgdG8gdGhlIHNlY3Rpb24ncyBzaXplLgotICAg
ICAgICBpZiAobV9vZmZzZXQgKyBzZWN0aW9uTmFtZUxlbmd0aCArIG1heExFQkJ5dGVMZW5ndGgg
Pj0gbV9zb3VyY2VMZW5ndGgpCisgICAgICAgIFNlY3Rpb25zOjpTZWN0aW9uIHNlY3Rpb24gPSBT
ZWN0aW9uczo6VW5rbm93bjsKKyAgICAgICAgdWludDhfdCBzZWN0aW9uQnl0ZTsKKyAgICAgICAg
aWYgKCFwYXJzZVVJbnQ3KHNlY3Rpb25CeXRlKSkKICAgICAgICAgICAgIHJldHVybiBmYWxzZTsK
IAotICAgICAgICBTZWN0aW9uczo6U2VjdGlvbiBzZWN0aW9uID0gU2VjdGlvbnM6Omxvb2t1cCht
X3NvdXJjZS5kYXRhKCkgKyBtX29mZnNldCwgc2VjdGlvbk5hbWVMZW5ndGgpOworICAgICAgICBp
ZiAoc2VjdGlvbkJ5dGUpIHsKKyAgICAgICAgICAgIGlmIChzZWN0aW9uQnl0ZSA+PSBTZWN0aW9u
czo6VW5rbm93bikKKyAgICAgICAgICAgICAgICBzZWN0aW9uID0gU2VjdGlvbnM6OlVua25vd247
CisgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgc2VjdGlvbiA9IHN0YXRpY19jYXN0
PFNlY3Rpb25zOjpTZWN0aW9uPihzZWN0aW9uQnl0ZSk7CisgICAgICAgIH0gZWxzZSB7CisgICAg
ICAgICAgICB1aW50MzJfdCBzZWN0aW9uTmFtZUxlbmd0aDsKKyAgICAgICAgICAgIGlmICghcGFy
c2VWYXJVSW50MzIoc2VjdGlvbk5hbWVMZW5ndGgpKQorICAgICAgICAgICAgICAgIHJldHVybiBm
YWxzZTsKKworICAgICAgICAgICAgLy8gTWFrZSBzdXJlIHdlIGNhbiByZWFkIHVwIHRvIHRoZSBz
ZWN0aW9uJ3Mgc2l6ZS4KKyAgICAgICAgICAgIGlmIChtX29mZnNldCArIHNlY3Rpb25OYW1lTGVu
Z3RoICsgbWF4TEVCQnl0ZUxlbmd0aCA+PSBtX3NvdXJjZUxlbmd0aCkKKyAgICAgICAgICAgICAg
ICByZXR1cm4gZmFsc2U7CisKKyAgICAgICAgICAgIC8vIFdlIGRvbid0IHN1cHBvcnQgYW55IGN1
c3RvbSBzZWN0aW9ucyB5ZXQuCisKKyAgICAgICAgICAgIG1fb2Zmc2V0ICs9IHNlY3Rpb25OYW1l
TGVuZ3RoOworICAgICAgICB9CisKICAgICAgICAgaWYgKCFTZWN0aW9uczo6dmFsaWRhdGVPcmRl
cihwcmV2aW91c1NlY3Rpb24sIHNlY3Rpb24pKQogICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwot
ICAgICAgICBtX29mZnNldCArPSBzZWN0aW9uTmFtZUxlbmd0aDsKIAogICAgICAgICB1aW50MzJf
dCBzZWN0aW9uTGVuZ3RoOwogICAgICAgICBpZiAoIXBhcnNlVmFyVUludDMyKHNlY3Rpb25MZW5n
dGgpKQpAQCAtODEsOSArOTYsNiBAQCBib29sIE1vZHVsZVBhcnNlcjo6cGFyc2UoKQogICAgICAg
ICB1bnNpZ25lZCBlbmQgPSBtX29mZnNldCArIHNlY3Rpb25MZW5ndGg7CiAKICAgICAgICAgc3dp
dGNoIChzZWN0aW9uKSB7Ci0gICAgICAgIGNhc2UgU2VjdGlvbnM6OkVuZDoKLSAgICAgICAgICAg
IHJldHVybiB0cnVlOwotCiAgICAgICAgIGNhc2UgU2VjdGlvbnM6OkZ1bmN0aW9uVHlwZXM6IHsK
ICAgICAgICAgICAgIGlmICh2ZXJib3NlKQogICAgICAgICAgICAgICAgIGRhdGFMb2dMbigiUGFy
c2luZyB0eXBlcy4iKTsKQEAgLTEwOCw3ICsxMjAsOSBAQCBib29sIE1vZHVsZVBhcnNlcjo6cGFy
c2UoKQogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KIAotICAgICAgICBjYXNlIFNlY3Rp
b25zOjpVbmtub3duOiB7CisgICAgICAgIGNhc2UgU2VjdGlvbnM6OlVua25vd246CisgICAgICAg
IC8vIEZJWE1FOiBEZWxldGUgdGhpcyB3aGVuIHdlIHN1cHBvcnQgYWxsIHRoZSBzZWN0aW9ucy4K
KyAgICAgICAgZGVmYXVsdDogewogICAgICAgICAgICAgaWYgKHZlcmJvc2UpCiAgICAgICAgICAg
ICAgICAgZGF0YUxvZ0xuKCJVbmtub3duIHNlY3Rpb24sIHNraXBwaW5nLiIpOwogICAgICAgICAg
ICAgbV9vZmZzZXQgKz0gc2VjdGlvbkxlbmd0aDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS93YXNtL1dBU01TZWN0aW9ucy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2Fz
bS9XQVNNU2VjdGlvbnMuY3BwCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA4YTIyMDhj
ZmU0ZmM2NGM1ZDRjZmQyOTc4NTI3NDI4ZWNiNTFkOWQ1Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dBU01T
ZWN0aW9ucy5jcHAKKysrIC9kZXYvbnVsbApAQCAtMSw2NSArMCwwIEBACi0vKgotICogQ29weXJp
Z2h0IChDKSAyMDE2IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIu
Ci0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAq
Ci0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFO
RCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklM
SVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlN
RUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCi0gKiBDT05UUklCVVRPUlMgQkUg
TElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKLSAq
IEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJS
VVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQotICogT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9G
IFRIRSBVU0UKLSAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgImNvbmZpZy5oIgotI2lu
Y2x1ZGUgIldBU01TZWN0aW9ucy5oIgotCi0jaWYgRU5BQkxFKFdFQkFTU0VNQkxZKQotCi0jaW5j
bHVkZSA8d3RmL0RhdGFMb2cuaD4KLSNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KLQot
bmFtZXNwYWNlIEpTQyB7IG5hbWVzcGFjZSBXQVNNIHsKLQotc3RydWN0IFNlY3Rpb25EYXRhIHsK
LSAgICB1bnNpZ25lZCBsZW5ndGg7Ci0gICAgY29uc3QgY2hhciogbmFtZTsKLX07Ci0KLXN0YXRp
YyBjb25zdCBib29sIHZlcmJvc2UgPSBmYWxzZTsKLQotc3RhdGljIGNvbnN0IHVuc2lnbmVkIHNl
Y3Rpb25EYXRhTGVuZ3RoID0gc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KFNlY3Rpb25zOjpVbmtub3du
KTsKLXN0YXRpYyBjb25zdCBTZWN0aW9uRGF0YSBzZWN0aW9uRGF0YVtzZWN0aW9uRGF0YUxlbmd0
aF0gewotI2RlZmluZSBDUkVBVEVfU0VDVElPTl9EQVRBKG5hbWUsIHN0cikgeyBzaXplb2Yoc3Ry
KSAtIDEsIHN0ciB9LAotICAgIEZPUl9FQUNIX1dBU01fU0VDVElPTl9UWVBFKENSRUFURV9TRUNU
SU9OX0RBVEEpCi0jdW5kZWYgQ1JFQVRFX1NFQ1RJT05fREFUQQotfTsKLQotU2VjdGlvbnM6OlNl
Y3Rpb24gU2VjdGlvbnM6Omxvb2t1cChjb25zdCB1aW50OF90KiBuYW1lLCB1bnNpZ25lZCBsZW5n
dGgpCi17Ci0gICAgaWYgKHZlcmJvc2UpCi0gICAgICAgIGRhdGFMb2dMbigiRGVjb2Rpbmcgc2Vj
dGlvbiB3aXRoIG5hbWU6ICIsIFN0cmluZyhuYW1lLCBsZW5ndGgpKTsKLSAgICBmb3IgKHVuc2ln
bmVkIGkgPSAwOyBpIDwgc2VjdGlvbkRhdGFMZW5ndGg7ICsraSkgewotICAgICAgICBpZiAoc2Vj
dGlvbkRhdGFbaV0ubGVuZ3RoICE9IGxlbmd0aCkKLSAgICAgICAgICAgIGNvbnRpbnVlOwotICAg
ICAgICBpZiAoIW1lbWNtcChuYW1lLCBzZWN0aW9uRGF0YVtpXS5uYW1lLCBsZW5ndGgpKQotICAg
ICAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PFNlY3Rpb25zOjpTZWN0aW9uPihpKTsKLSAgICB9
Ci0gICAgcmV0dXJuIFNlY3Rpb25zOjpVbmtub3duOwotfQotCi19IH0gLy8gbmFtZXNwYWNlIEpT
Qzo6V0FTTQotCi0jZW5kaWYgLy8gRU5BQkxFKFdFQkFTU0VNQkxZKQpkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV0FTTVNlY3Rpb25zLmggYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvd2FzbS9XQVNNU2VjdGlvbnMuaAppbmRleCBiZDBlZDk1NWRkMjg3NTliZTNhNzA2NDAx
MTgxNDkzYmZlNDU1NGMyLi41M2U5MzU2ZTIzOGZhNDJjNWI1ODcxMDk5MzZiNTcwMDhlN2M2Nzk5
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9XQVNNU2VjdGlvbnMuaAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9XQVNNU2VjdGlvbnMuaApAQCAtMjksMjUg
KzI5LDE1IEBACiAKIG5hbWVzcGFjZSBKU0MgeyBuYW1lc3BhY2UgV0FTTSB7CiAKLS8vIFRoZXNl
IHNob3VsZCBiZSBpbiB0aGUgb3JkZXIgdGhhdCB3ZSBleHBlY3QgdGhlbSB0byBiZSBpbiB0aGUg
YmluYXJ5LgotI2RlZmluZSBGT1JfRUFDSF9XQVNNX1NFQ1RJT05fVFlQRShtYWNybykgXAotICAg
IG1hY3JvKEZ1bmN0aW9uVHlwZXMsICJ0eXBlIikgXAotICAgIG1hY3JvKFNpZ25hdHVyZXMsICJm
dW5jdGlvbiIpIFwKLSAgICBtYWNybyhEZWZpbml0aW9ucywgImNvZGUiKSBcCi0gICAgbWFjcm8o
RW5kLCAiZW5kIikKLQogc3RydWN0IFNlY3Rpb25zIHsKLSAgICBlbnVtIFNlY3Rpb24gewotI2Rl
ZmluZSBDUkVBVEVfU0VDVElPTl9FTlVNKG5hbWUsIHN0cikgbmFtZSwKLSAgICAgICAgRk9SX0VB
Q0hfV0FTTV9TRUNUSU9OX1RZUEUoQ1JFQVRFX1NFQ1RJT05fRU5VTSkKLSN1bmRlZiBDUkVBVEVf
U0VDVElPTl9FTlVNCisgICAgZW51bSBTZWN0aW9uIDogdWludDhfdCB7CisgICAgICAgIEZ1bmN0
aW9uVHlwZXMgPSAxLAorICAgICAgICBTaWduYXR1cmVzID0gMywKKyAgICAgICAgRGVmaW5pdGlv
bnMgPSAxMCwKICAgICAgICAgVW5rbm93bgogICAgIH07Ci0gICAgc3RhdGljIFNlY3Rpb24gbG9v
a3VwKGNvbnN0IHVpbnQ4X3QqLCB1bnNpZ25lZCk7CiAgICAgc3RhdGljIGJvb2wgdmFsaWRhdGVP
cmRlcihTZWN0aW9uIHByZXZpb3VzLCBTZWN0aW9uIG5leHQpCiAgICAgewotICAgICAgICAvLyBU
aGlzIGFsbG93cyB1bmtub3duIHNlY3Rpb25zIGFmdGVyIEVuZCwgd2hpY2ggSSBkb3VidCB3aWxs
IGV2ZXIgYmUgc3VwcG9ydGVkIGJ1dAotICAgICAgICAvLyB0aGVyZSBpcyBubyByZWFzb24gdG8g
cG90ZW50aWFsbHkgYnJlYWsgYmFja3dhcmRzIGNvbXBhdGFiaWxpdHkuCiAgICAgICAgIGlmIChw
cmV2aW91cyA9PSBVbmtub3duKQogICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgIHJl
dHVybiBwcmV2aW91cyA8IG5leHQ7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>