<?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>238171</bug_id>
          
          <creation_ts>2022-03-21 17:11:11 -0700</creation_ts>
          <short_desc>Roll ANGLE to 2022-03-22 (e7f29440f02514126f30350dcd7132b68f7954d7)</short_desc>
          <delta_ts>2022-05-26 15:01:57 -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>ANGLE</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>
          <dependson>235746</dependson>
          <blocked>236713</blocked>
    
    <blocked>238118</blocked>
    
    <blocked>238135</blocked>
    
    <blocked>238196</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Kenneth Russell">kbr</reporter>
          <assigned_to name="Kenneth Russell">kbr</assigned_to>
          <cc>annulen</cc>
    
    <cc>bfulgham</cc>
    
    <cc>dino</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>geofflang</cc>
    
    <cc>gman</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>jonahr</cc>
    
    <cc>kbr</cc>
    
    <cc>kkinnunen</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>kpiddington</cc>
    
    <cc>ryuan.choi</cc>
    
    <cc>sergio</cc>
    
    <cc>simontaylor1</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1853423</commentid>
    <comment_count>0</comment_count>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2022-03-21 17:11:11 -0700</bug_when>
    <thetext>To pick up the latest bug fixes to ANGLE&apos;s Metal backend, let&apos;s roll ANGLE to top-of-tree as of 2022-03-21.

Note that this depends on just-filed anglebug.com/7115 and https://chromium-review.googlesource.com/3537512 . (It was possible to patch the update-angle script to do this, but it&apos;s better to just pick up the proper fix from upstream.)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1853695</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2022-03-22 09:06:30 -0700</bug_when>
    <thetext>&lt;rdar://problem/90639134&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1853796</commentid>
    <comment_count>2</comment_count>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2022-03-22 11:30:25 -0700</bug_when>
    <thetext>Rolling to 2022-03-22 instead:
e7f29440f02514126f30350dcd7132b68f7954d7

https://chromium.googlesource.com/angle/angle/+/e7f29440f02514126f30350dcd7132b68f7954d7</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1853800</commentid>
    <comment_count>3</comment_count>
      <attachid>455404</attachid>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2022-03-22 11:36:47 -0700</bug_when>
    <thetext>Created attachment 455404
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1853801</commentid>
    <comment_count>4</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2022-03-22 11:38:25 -0700</bug_when>
    <thetext>Note that there are important steps to take when updating ANGLE. See https://trac.webkit.org/wiki/UpdatingANGLE</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1853949</commentid>
    <comment_count>5</comment_count>
      <attachid>455441</attachid>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2022-03-22 15:45:29 -0700</bug_when>
    <thetext>Created attachment 455441
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1853950</commentid>
    <comment_count>6</comment_count>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2022-03-22 15:45:49 -0700</bug_when>
    <thetext>Fixed CMake build in the latest patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1853967</commentid>
    <comment_count>7</comment_count>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2022-03-22 16:07:32 -0700</bug_when>
    <thetext>Added Bug 238196 to the list that this blocks. Have confirmed on Bug 238118 that this roll definitely fixes more multisampled rendering bugs compared to WebKit 
ToT.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1854104</commentid>
    <comment_count>8</comment_count>
      <attachid>455441</attachid>
    <who name="Kimmo Kinnunen">kkinnunen</who>
    <bug_when>2022-03-23 03:33:12 -0700</bug_when>
    <thetext>Comment on attachment 455441
Patch

Great work, thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1854273</commentid>
    <comment_count>9</comment_count>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2022-03-23 11:04:34 -0700</bug_when>
    <thetext>The layout test failures are definitely unrelated to this ANGLE roll. CQ&apos;ing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1854311</commentid>
    <comment_count>10</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2022-03-23 11:55:12 -0700</bug_when>
    <thetext>Committed r291757 (248788@main): &lt;https://commits.webkit.org/248788@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 455441.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1854364</commentid>
    <comment_count>11</comment_count>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2022-03-23 13:22:11 -0700</bug_when>
    <thetext>Note: the EWS found the following failure with this patch:

---
EWS has detected layout test failure on iOS-15-Simulator-WK2-Tests-EWS while testing Patch 455441 for Bug 238171.

Full details are available at: https://ews-build.webkit.org/#/builders/68/builds/11320

Layout test failure:

- editing/spelling/spellcheck-async-remove-frame.html (test history)

Test history:
https://results.webkit.org/?suite=layout-tests&amp;test=editing/spelling/spellcheck-async-remove-frame.html
---

I&apos;m positive that this flake is unrelated to this patch - please don&apos;t revert this ANGLE roll in response to it. Thanks.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1857566</commentid>
    <comment_count>12</comment_count>
    <who name="Simon Taylor">simontaylor1</who>
    <bug_when>2022-04-02 05:35:49 -0700</bug_when>
    <thetext>I&apos;ve done a TOT build of WebKit and tested via the run-safari script, and still see the failures on some of the three examples with antialiasing, such as:
https://threejs.org/examples/#webgl_materials_cubemap_dynamic where the background isn&apos;t shown.

Tools/Scripts/build-webkit --release
Tools/Scripts/run-safari 

Not sure how to verify that my built version is indeed being used, but I have checked that the files in my working copy do have the changes from this roll.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1857567</commentid>
    <comment_count>13</comment_count>
    <who name="Simon Taylor">simontaylor1</who>
    <bug_when>2022-04-02 05:37:11 -0700</bug_when>
    <thetext>(In reply to Simon Taylor from comment #12)
&gt; I&apos;ve done a TOT build of WebKit and tested via the run-safari script, and
&gt; still see the failures on some of the three examples with antialiasing, such
&gt; as:
&gt; https://threejs.org/examples/#webgl_materials_cubemap_dynamic where the
&gt; background isn&apos;t shown.

I should have specified this is on my M1 Pro MBP on latest macOS 12.3.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1860762</commentid>
    <comment_count>14</comment_count>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2022-04-12 12:17:59 -0700</bug_when>
    <thetext>Simon: there&apos;s a bug in the build products and run-safari script, and run-safari isn&apos;t picking up your locally built WebKit. Please use run-minibrowser.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1872156</commentid>
    <comment_count>15</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2022-05-26 15:01:57 -0700</bug_when>
    <thetext>This fix shipped with Safari 15.5 (all platforms).</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>455404</attachid>
            <date>2022-03-22 11:36:47 -0700</date>
            <delta_ts>2022-03-22 15:45:25 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-238171-20220322113643.patch</filename>
            <type>text/plain</type>
            <size>2150925</size>
            <attacher name="Kenneth Russell">kbr</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkxNjI5CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9DaGFuZ2VMb2cgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9DaGFuZ2VMb2cKaW5k
ZXggZmRlN2Q0Yzg0YzBjYzgzMzk2NWJmYjc3ZTNlYzZkNTRkNzZhNGI5My4uNjQ2MTMwNzYzZWFj
ZWFkNmMzOTg3ZTM2YmNiZjI3ODQ2YzQ5NGQ3MiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0NoYW5nZUxv
ZwpAQCAtMSwzICsxLDE5IEBACisyMDIyLTAzLTIyICBLZW5uZXRoIFJ1c3NlbGwgIDxrYnJAY2hy
b21pdW0ub3JnPgorCisgICAgICAgIFJvbGwgQU5HTEUgdG8gMjAyMi0wMy0yMiAoZTdmMjk0NDBm
MDI1MTQxMjZmMzAzNTBkY2Q3MTMyYjY4Zjc5NTRkNykKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzODE3MQorCisgICAgICAgIExhcmdlIGF1dG9nZW5l
cmF0ZWQgQ2hhbmdlTG9nIGVsaWRlZC4KKworICAgICAgICBUZXN0ZWQgbG9jYWxseSB3aXRoIE1p
bmlicm93c2VyIG9uIE0xLCB3aXRoIHRlc3QgY2FzZXMgZnJvbSB0aGUKKyAgICAgICAgZm9sbG93
aW5nIHJlY2VudCBidWdzOgorICAgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0yMzcwMDYKKyAgICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MjM3OTA2CisgICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTIzODAyMgorICAgICAgICBhbmQgY29uZmlybWVkIGFsbCByZW5kZXIgY29y
cmVjdGx5LgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCiAyMDIyLTAz
LTIxICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CiAKICAgICAg
ICAgRHVzdCBvZmYgTWFjIENNYWtlIGJ1aWxkCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS8uZ2l0aWdub3JlIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvLmdpdGlnbm9yZQpp
bmRleCBmZGFiYjM5MWZjNmU5ZmEyZjRhZDgwN2ZmOTk1MTgwNGQ3NTc0MDkzLi5hZmVjYTFkNTgy
MWQyMGM1MGJjZWZhMzNjMzdhZTRjMjgzODIzYmYxIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9BTkdMRS8uZ2l0aWdub3JlCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFLy5naXRp
Z25vcmUKQEAgLTcyLDYgKzcyLDcgQEAgdGhpcmRfcGFydHkvcjgvKi5qYXIKIC90aGlyZF9wYXJ0
eS9WSy1HTC1DVFMvc3JjCiAvdGhpcmRfcGFydHkvdnVsa2FuLWRlcHMKIC90aGlyZF9wYXJ0eS92
dWxrYW5fbWVtb3J5X2FsbG9jYXRvcgorL3RoaXJkX3BhcnR5L3dheWxhbmQKIC90aGlyZF9wYXJ0
eS96bGliCiAvdG9vbHMvYW5kcm9pZC9lcnJvcnByb25lX3BsdWdpbgogL3Rvb2xzL2NsYW5nCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9BTkdMRS5wbGlzdCBiL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL0FOR0xFLnBsaXN0CmluZGV4IDVlY2I0YmMxMDc2OWNiYWMwM2I2ZDIz
ZDVmYzQyNjBiZmE4ZmZmZmUuLjkyMzM0YzRjMmE2YjFiOGY4MDg1YjM0YmIwMmQ3ODY3MTNhMWE4
NTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0FOR0xFLnBsaXN0CisrKyBi
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0FOR0xFLnBsaXN0CkBAIC02LDEzICs2LDEzIEBACiAJ
CTxrZXk+T3BlblNvdXJjZVByb2plY3Q8L2tleT4KIAkJPHN0cmluZz5BTkdMRTwvc3RyaW5nPgog
CQk8a2V5Pk9wZW5Tb3VyY2VWZXJzaW9uPC9rZXk+Ci0JCTxzdHJpbmc+NzhjNjRkZDc0ZWU1MjM3
ZTY2NzJhNDI4ZDM4MmE4N2M5ODY1MmZlYjwvc3RyaW5nPgorCQk8c3RyaW5nPmU3ZjI5NDQwZjAy
NTE0MTI2ZjMwMzUwZGNkNzEzMmI2OGY3OTU0ZDc8L3N0cmluZz4KIAkJPGtleT5PcGVuU291cmNl
V2Vic2l0ZVVSTDwva2V5PgogCQk8c3RyaW5nPmh0dHA6Ly9jb2RlLmdvb2dsZS5jb20vcC9hbmds
ZXByb2plY3QvPC9zdHJpbmc+CiAJCTxrZXk+T3BlblNvdXJjZVNDTTwva2V5PgotCQk8c3RyaW5n
PmdpdCBjbG9uZSBodHRwczovL2Nocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vYW5nbGUvYW5nbGUg
JmFtcDsmYW1wOyBjZCBhbmdsZSAmYW1wOyZhbXA7IGdpdCBjaGVja291dCA3OGM2NGRkNzRlZTUy
MzdlNjY3MmE0MjhkMzgyYTg3Yzk4NjUyZmViPC9zdHJpbmc+CisJCTxzdHJpbmc+Z2l0IGNsb25l
IGh0dHBzOi8vY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9hbmdsZS9hbmdsZSAmYW1wOyZhbXA7
IGNkIGFuZ2xlICZhbXA7JmFtcDsgZ2l0IGNoZWNrb3V0IGU3ZjI5NDQwZjAyNTE0MTI2ZjMwMzUw
ZGNkNzEzMmI2OGY3OTU0ZDc8L3N0cmluZz4KIAkJPGtleT5PcGVuU291cmNlSW1wb3J0RGF0ZTwv
a2V5PgotCQk8c3RyaW5nPjIwMjItMDItMTg8L3N0cmluZz4KKwkJPHN0cmluZz4yMDIyLTAzLTIy
PC9zdHJpbmc+CiAJCTxrZXk+T3BlblNvdXJjZUxpY2Vuc2U8L2tleT4KIAkJPHN0cmluZz5CU0Q8
L3N0cmluZz4KIAkJPGtleT5PcGVuU291cmNlTGljZW5zZUZpbGU8L2tleT4KZGlmZiAtLWdpdCBh
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0FOR0xFLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2og
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9BTkdMRS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
CmluZGV4IDIxNDczMTBmNzUxZDJlNDllOTRmZjE2NThhMGRlMjFjYjc2MzZjZDMuLmM5Y2RiNjc0
MDA0MjQyYzgzNGY0NDM1MWQzNzM0MGU5ZWNjNjcxYmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL0FOR0xFLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNl
L1RoaXJkUGFydHkvQU5HTEUvQU5HTEUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMzU1
LDYgKzM1NSw3IEBACiAJCTMxQ0RGRkZEMjQ5MTg0QjAwMDQ4NkYyNyAvKiBpbWFnZWZvcm1hdHMu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDQ0Q1OThC
MjI4NEZDNDAwMDE4RjJEOCAvKiBpbWFnZWZvcm1hdHMuaCAqLzsgfTsKIAkJMzFDREZGRkUyNDkx
ODRCMDAwNDg2RjI3IC8qIGNvcHlpbWFnZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gNUNDRDU5ODYyMjg0RkM0MDAwMThGMkQ4IC8qIGNvcHlpbWFnZS5o
ICovOyB9OwogCQkzMUNERkZGRjI0OTE4NEIwMDA0ODZGMjcgLyogZ2VuZXJhdGVtaXAuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDQ0Q1OThDMjI4NEZD
NDAwMDE4RjJEOCAvKiBnZW5lcmF0ZW1pcC5oICovOyB9OworCQk2RTI3OTI1OTI3RUE0M0Y1MDBC
MUJBODYgLyogQmFzZVR5cGVzLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDZFMjc5MjU4MjdFQTQzRjUwMEIxQkE4NiAvKiBCYXNlVHlwZXMuY3BwICov
OyB9OwogCQk3QjE5NTk5MzI2QzNDMjIwMDBDMDkzMjIgLyogYW5kcm9pZF91dGlsLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMzAzMDc5RjIzMDYyNUM2
MDAyREE5NzIgLyogYW5kcm9pZF91dGlsLmggKi87IH07CiAJCTdCMTk1OTk0MjZDM0MyMjAwMEMw
OTMyMiAvKiBhbmRyb2lkX3V0aWwuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gQTMwMzA3OUUyMzA2MjVDNjAwMkRBOTcyIC8qIGFuZHJvaWRfdXRpbC5j
cHAgKi87IH07CiAJCTdCMTk1OTk1MjZDM0M2NEUwMEMwOTMyMiAvKiB4eGhhc2guYyBpbiBTb3Vy
Y2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDQ0Q1OTRFMjI4NEVDRDEw
MDE4RjJEOCAvKiB4eGhhc2guYyAqLzsgfTsKQEAgLTEzNzIsNiArMTM3Myw3IEBACiAJCTVDQ0Q4
MTlGMURCRkVBNUMwMDYwNjZCOCAvKiBRdWFsaWZpZXJUeXBlcy5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBRdWFsaWZpZXJUeXBlcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQk1RDdDNTlDNjEyMDhDNjhCMDAxQzg3M0UgLyogQmFzZS54Y2NvbmZpZyAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHRleHQueGNjb25maWc7IHBhdGggPSBCYXNlLnhjY29uZmlnOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQk1RDdDNTlDNzEyMDhDNjhCMDAxQzg3M0UgLyogRGVidWdSZWxlYXNlLnhj
Y29uZmlnICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gdGV4dC54Y2NvbmZpZzsgcGF0aCA9IERlYnVnUmVsZWFzZS54Y2Nv
bmZpZzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNkUyNzkyNTgyN0VBNDNGNTAwQjFC
QTg2IC8qIEJhc2VUeXBlcy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBCYXNlVHlwZXMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk2RTMxQTBBMTIz
NEVFRUQ0MDBDODQ3ODQgLyogRGV2aWNlQ0dMLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IERldmljZUNHTC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTZFMzFBMEEyMjM0RUVFRDQwMEM4NDc4NCAvKiBEZXZpY2VDR0wuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gRGV2aWNlQ0dMLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTZFMzNFOEU3MjREMEQxOTYwMDIzMDlBQyAvKiBCdWZmZXJJbXBsLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEJ1ZmZlckltcGwuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwpAQCAtMTc4NSw2ICsxNzg3LDcgQEAKIAkJCQk1QzU1RDZFQTIyODI2Qzk4
MDBCNUJBMkMgLyogdHJlZXV0aWwgKi8sCiAJCQkJNUMxREJCRkIxQjA0Mzc1RjAwMjM1NTUyIC8q
IEFTVE1ldGFkYXRhSExTTC5jcHAgKi8sCiAJCQkJNUMxREJCRkMxQjA0Mzc1RjAwMjM1NTUyIC8q
IEFTVE1ldGFkYXRhSExTTC5oICovLAorCQkJCTZFMjc5MjU4MjdFQTQzRjUwMEIxQkE4NiAvKiBC
YXNlVHlwZXMuY3BwICovLAogCQkJCTMxMDEyREEwMThCOTdCOUIwMDM5MDYyRiAvKiBCYXNlVHlw
ZXMuaCAqLywKIAkJCQk1QzFEQkJGRDFCMDQzNzVGMDAyMzU1NTIgLyogYmxvY2tsYXlvdXQuY3Bw
ICovLAogCQkJCTVDMURCQkZFMUIwNDM3NUYwMDIzNTU1MiAvKiBibG9ja2xheW91dC5oICovLApA
QCAtMzY1MCw2ICszNjUzLDcgQEAKIAkJCQlERjgzRTIyNDI2MzlGQzc0MDAwODI1RUYgLyogYW5n
bGV1dGlscy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlERjgzRTIzNzI2MzlGQ0Q1MDAwODI1RUYg
LyogQXN0SGVscGVycy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlERjgzRTMzMzI2MzlGRTE4MDAw
ODI1RUYgLyogQXR0cmlidXRlTWFwLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTZFMjc5MjU5MjdF
QTQzRjUwMEIxQkE4NiAvKiBCYXNlVHlwZXMuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJREY4M0Uz
NTkyNjM5RkU5MjAwMDgyNUVGIC8qIEJsaXRHTC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlERjgz
RTJFQTI2MzlGRTE3MDAwODI1RUYgLyogQmxvYkNhY2hlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJ
CURGODNFMkJDMjYzOUZEODMwMDA4MjVFRiAvKiBibG9ja2xheW91dC5jcHAgaW4gU291cmNlcyAq
LywKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0FVVEhPUlMgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9BVVRIT1JTCmluZGV4IGZiZjA5YjRiNzdmODg2YmUwYmU3MDU3Y2Vh
MTk0ZWQ0ZGQxN2QzNDguLmYxNDM0Zjc4YzhiZTY0NTUwN2FhYzllY2Q4YjE1NzNjMzM5Mjc3NGQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0FVVEhPUlMKKysrIGIvU291cmNl
L1RoaXJkUGFydHkvQU5HTEUvQVVUSE9SUwpAQCAtNTQsNiArNTQsNyBAQCBCb3lpbmcgTHUKIEFp
dG9yIE1vcmVubwogWXVyaSBPJ0Rvbm5lbGwKIEpvc2ggU29yZWYKK01hIEFpZ3VvCiBNYWtzIE5h
dW1vdgogSmlueW91bmcgSHVyCiBTZWJhc3RpYW4gQmVyZ3N0ZWluCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9CVUlMRC5nbiBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0JV
SUxELmduCmluZGV4IGY1MzY0ODc1YTFmYWZmYjg1YzczYWVjNWViMTNhYjMxNWRkNjY5MDAuLmFh
ZGYxYjFjYWZlMWQyMzFjZmM5ZTVmNmQ0NjJiNGU4MGNlMDVjNTAgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9UaGlyZFBhcnR5L0FOR0xFL0JVSUxELmduCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L0JVSUxELmduCkBAIC03NDUsNiArNzQ1LDEwIEBAIGNvbmZpZygiYW5nbGVfYmFja2VuZF9jb25m
aWciKSB7CiAgICAgZGVmaW5lcyArPSBbICJBTkdMRV9FWFBPU0VfTk9OX0NPTkZPUk1BTlRfRVhU
RU5TSU9OU19BTkRfVkVSU0lPTlMiIF0KICAgfQogCisgIGlmIChhbmdsZV91c2Vfc3BpcnZfZ2Vu
X3Rocm91Z2hfZ2xzbGFuZykgeworICAgIGRlZmluZXMgKz0gWyAiQU5HTEVfVVNFX1NQSVJWX0dF
TkVSQVRJT05fVEhST1VHSF9HTFNMQU5HIiBdCisgIH0KKwogICBjb25maWdzID0gW10KIAogICBp
ZiAoYW5nbGVfZW5hYmxlX2QzZDExKSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9Db21waWxlci5jbWFrZSBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0NvbXBpbGVyLmNt
YWtlCmluZGV4IGNkMjdmYjcwYTgwNzA4MGEyN2MxZGU0YWJlMTlmMTUwNWQ4ZmVlNDcuLjllZDg1
MTczZTQwZDg3NzMwMWY1NzYzZWY0NTIxNGQ2ODY3MjYzZDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL0NvbXBpbGVyLmNtYWtlCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FO
R0xFL0NvbXBpbGVyLmNtYWtlCkBAIC0yNyw2ICsyNyw3IEBAIHNldChhbmdsZV90cmFuc2xhdG9y
X3NvdXJjZXMKICAgICAiaW5jbHVkZS9HTEVTMy9nbDNwbGF0Zm9ybS5oIgogICAgICJpbmNsdWRl
L0tIUi9raHJwbGF0Zm9ybS5oIgogICAgICJpbmNsdWRlL2FuZ2xlX2dsLmgiCisgICAgInNyYy9j
b21waWxlci90cmFuc2xhdG9yL0Jhc2VUeXBlcy5jcHAiCiAgICAgInNyYy9jb21waWxlci90cmFu
c2xhdG9yL0Jhc2VUeXBlcy5oIgogICAgICJzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9CdWlsdElu
RnVuY3Rpb25FbXVsYXRvci5jcHAiCiAgICAgInNyYy9jb21waWxlci90cmFuc2xhdG9yL0J1aWx0
SW5GdW5jdGlvbkVtdWxhdG9yLmgiCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9ERVBTIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvREVQUwppbmRleCAyYzkzOGIzMTZkNzAx
YTAwMDFmNjFkZjAxNjI4NTE0M2RiNTFiMmZjLi42OThhNzkxZTI0MTY4NmMzYjYxY2M0M2Q0N2Ez
MDIwNTgyNzk4YzVmIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9ERVBTCisr
KyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0RFUFMKQEAgLTM0LDEzICszNCwxMyBAQCB2YXJz
ID0gewogICAnY2hlY2tvdXRfYW5kcm9pZF9uYXRpdmVfc3VwcG9ydCc6ICdjaGVja291dF9hbmRy
b2lkIG9yIGNoZWNrb3V0X2Nocm9tZW9zJywKIAogICAjIFZlcnNpb24gb2YgQ2hyb21pdW0gb3Vy
IENocm9taXVtLWJhc2VkIERFUFMgYXJlIG1pcnJvcmVkIGZyb20uCi0gICdjaHJvbWl1bV9yZXZp
c2lvbic6ICc2NTk0YThkMWU2Y2ZkMDcwNjI3MDBjNmE1OTgzZTgxNmYyNmFjNDU1JywKKyAgJ2No
cm9taXVtX3JldmlzaW9uJzogJzNlNDk2MzcwMmUwMjI4Y2NmZmRmMTllMzhkYTdlODQwYTg4ZDU5
ZDUnLAogICAjIFdlIG5ldmVyIHdhbnQgdG8gY2hlY2tvdXQgY2hyb21pdW0sCiAgICMgYnV0IG5l
ZWQgYSBkdW1teSBERVBTIGVudHJ5IGZvciB0aGUgYXV0b3JvbGxlcgogICAnZHVtbXlfY2hlY2tv
dXRfY2hyb21pdW0nOiBGYWxzZSwKIAogICAjIEN1cnJlbnQgcmV2aXNpb24gb2YgVkstR0wtQ1RT
IChhLmsuYSBkRVFQKS4KLSAgJ3ZrX2dsX2N0c19yZXZpc2lvbic6ICdkMzIxYzdlYzg0ZGViZmJh
MGEzODY4MDQ5YzUxYTgyNDE5ZjcyMzc5JywKKyAgJ3ZrX2dsX2N0c19yZXZpc2lvbic6ICc4MjNk
NDljZjVmNWU1NjIyZTFmYWRlNDQyNGU5MmVjMmY2MWI4MWE2JywKIAogICAjIEN1cnJlbnQgcmV2
aXNpb24gb2YgZ29vZ2xldGVzdC4KICAgIyBOb3RlOiB0aGlzIGRlcCBjYW5ub3QgYmUgYXV0by1y
b2xsZWQgYi9jIG9mIG5lc3RpbmcuCkBAIC03OSwxMiArNzksMTIgQEAgdmFycyA9IHsKICAgIyBU
aHJlZSBsaW5lcyBvZiBub24tY2hhbmdpbmcgY29tbWVudHMgc28gdGhhdAogICAjIHRoZSBjb21t
aXQgcXVldWUgY2FuIGhhbmRsZSBDTHMgcm9sbGluZyBjYXRhcHVsdAogICAjIGFuZCB3aGF0ZXZl
ciBlbHNlIHdpdGhvdXQgaW50ZXJmZXJlbmNlIGZyb20gZWFjaCBvdGhlci4KLSAgJ2NhdGFwdWx0
X3JldmlzaW9uJzogJzkxOTg2YjFmZGJmMDRmODYzNDczZTVkMzgwNDZkZjQ2YTAyNjM5ZTYnLAor
ICAnY2F0YXB1bHRfcmV2aXNpb24nOiAnMzg5ZjMzYmI0MGEzMzQ1YjczYTY4NjEzMTc4Yzc4OTQ3
NmNlYWVjZicsCiAKICAgIyBUaHJlZSBsaW5lcyBvZiBub24tY2hhbmdpbmcgY29tbWVudHMgc28g
dGhhdAogICAjIHRoZSBjb21taXQgcXVldWUgY2FuIGhhbmRsZSBDTHMgcm9sbGluZyBsdWNpLWdv
CiAgICMgYW5kIHdoYXRldmVyIGVsc2Ugd2l0aG91dCBpbnRlcmZlcmVuY2UgZnJvbSBlYWNoIG90
aGVyLgotICAnbHVjaV9nbyc6ICdnaXRfcmV2aXNpb246NTgyZTgyOGM1YThhYWY1Y2RkMGFkMWQ1
NDY1ZmI5MDkyYjcxZWFiOCcsCisgICdsdWNpX2dvJzogJ2dpdF9yZXZpc2lvbjpjYjQyNGU3MGU3
NTEzNjczNmE4NjM1OWVmMDcwYWE5NjQyNWZlN2EzJywKIAogICAjIFRocmVlIGxpbmVzIG9mIG5v
bi1jaGFuZ2luZyBjb21tZW50cyBzbyB0aGF0CiAgICMgdGhlIGNvbW1pdCBxdWV1ZSBjYW4gaGFu
ZGxlIENMcyByb2xsaW5nIGFuZHJvaWRfc2RrX2J1aWxkLXRvb2xzX3ZlcnNpb24KQEAgLTExOSwx
MiArMTE5LDEyIEBAIHZhcnMgPSB7CiBkZXBzID0gewogCiAgICdidWlsZCc6IHsKLSAgICAndXJs
JzogJ3tjaHJvbWl1bV9naXR9L2Nocm9taXVtL3NyYy9idWlsZC5naXRAMmZiNDQwMjVhYjE0MTUw
NmIyMTY4YWFiNDk4YjY5Yjc4MzUyNjIxMScsCisgICAgJ3VybCc6ICd7Y2hyb21pdW1fZ2l0fS9j
aHJvbWl1bS9zcmMvYnVpbGQuZ2l0QDhmNzVlN2RlNTU4ODJlMzA5Yzk4MmU4ZDIwM2Y3YWQwZjM1
NGUxMGUnLAogICAgICdjb25kaXRpb24nOiAnbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLAogICB9
LAogCiAgICdidWlsZHRvb2xzJzogewotICAgICd1cmwnOiAne2Nocm9taXVtX2dpdH0vY2hyb21p
dW0vc3JjL2J1aWxkdG9vbHMuZ2l0QDkzYzE1NTI5YzMyM2M2Y2MxMjUxNmVmOWNhYWM3ZmQ4MTVl
ZTdjODInLAorICAgICd1cmwnOiAne2Nocm9taXVtX2dpdH0vY2hyb21pdW0vc3JjL2J1aWxkdG9v
bHMuZ2l0QGQ4YzM3NTQyNmQ4ZjdmNDE0N2Y3ZDQxMDliYjYzYzEyNjU1ZmI4ZDYnLAogICAgICdj
b25kaXRpb24nOiAnbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLAogICB9LAogCkBAIC0xMzcsNyAr
MTM3LDcgQEAgZGVwcyA9IHsKICAgICAncGFja2FnZXMnOiBbCiAgICAgICB7CiAgICAgICAgICdw
YWNrYWdlJzogJ2duL2duL2xpbnV4LWFtZDY0JywKLSAgICAgICAgJ3ZlcnNpb24nOiAnZ2l0X3Jl
dmlzaW9uOjA3MjVkNzgyNzU3NWIyMzk1OTRmYmM4ZmQ1MTkyODczYTFkNjJmNDQnLAorICAgICAg
ICAndmVyc2lvbic6ICdnaXRfcmV2aXNpb246YmQ5OWRiZjk4Y2JkZWZlMThhNDEyODE4OTY2NWM1
NzYxMjYzYmNmYicsCiAgICAgICB9CiAgICAgXSwKICAgICAnZGVwX3R5cGUnOiAnY2lwZCcsCkBA
IC0xNDgsNyArMTQ4LDcgQEAgZGVwcyA9IHsKICAgICAncGFja2FnZXMnOiBbCiAgICAgICB7CiAg
ICAgICAgICdwYWNrYWdlJzogJ2duL2duL21hYy0ke3thcmNofX0nLAotICAgICAgICAndmVyc2lv
bic6ICdnaXRfcmV2aXNpb246MDcyNWQ3ODI3NTc1YjIzOTU5NGZiYzhmZDUxOTI4NzNhMWQ2MmY0
NCcsCisgICAgICAgICd2ZXJzaW9uJzogJ2dpdF9yZXZpc2lvbjpiZDk5ZGJmOThjYmRlZmUxOGE0
MTI4MTg5NjY1YzU3NjEyNjNiY2ZiJywKICAgICAgIH0KICAgICBdLAogICAgICdkZXBfdHlwZSc6
ICdjaXBkJywKQEAgLTE2MSwxMiArMTYxLDEyIEBAIGRlcHMgPSB7CiAgIH0sCiAKICAgJ2J1aWxk
dG9vbHMvdGhpcmRfcGFydHkvbGliYysrYWJpL3RydW5rJzogewotICAgICd1cmwnOiAne2Nocm9t
aXVtX2dpdH0vZXh0ZXJuYWwvZ2l0aHViLmNvbS9sbHZtL2xsdm0tcHJvamVjdC9saWJjeHhhYmku
Z2l0QDczOGRjMTAwYzYxODkwNzQ0ZjllNzhjYWMyN2M3MWQwYTIxOTA3ODEnLAorICAgICd1cmwn
OiAne2Nocm9taXVtX2dpdH0vZXh0ZXJuYWwvZ2l0aHViLmNvbS9sbHZtL2xsdm0tcHJvamVjdC9s
aWJjeHhhYmkuZ2l0QDkzYjhkY2Q1N2JkOGViZTIwMWVjMjRmNzI1NzMzOTk4OGVkMmVmN2MnLAog
ICAgICdjb25kaXRpb24nOiAnbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLAogICB9LAogCiAgICdi
dWlsZHRvb2xzL3RoaXJkX3BhcnR5L2xpYnVud2luZC90cnVuayc6IHsKLSAgICAndXJsJzogJ3tj
aHJvbWl1bV9naXR9L2V4dGVybmFsL2dpdGh1Yi5jb20vbGx2bS9sbHZtLXByb2plY3QvbGlidW53
aW5kLmdpdEA3NTM5NjIyMDQzMzY1MmE2OThiMDVjNWZiNjQ4ZmUxZjVlMWQ3YTI3JywKKyAgICAn
dXJsJzogJ3tjaHJvbWl1bV9naXR9L2V4dGVybmFsL2dpdGh1Yi5jb20vbGx2bS9sbHZtLXByb2pl
Y3QvbGlidW53aW5kLmdpdEBkMWM3ZjkyYjhiMGJmZjhkOWY3MTBjYTQwZTQ0NTYzYTYzZGIzNzZl
JywKICAgICAnY29uZGl0aW9uJzogJ25vdCBidWlsZF93aXRoX2Nocm9taXVtJywKICAgfSwKIApA
QCAtMTc0LDcgKzE3NCw3IEBAIGRlcHMgPSB7CiAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgewog
ICAgICAgICAncGFja2FnZSc6ICdnbi9nbi93aW5kb3dzLWFtZDY0JywKLSAgICAgICAgJ3ZlcnNp
b24nOiAnZ2l0X3JldmlzaW9uOjA3MjVkNzgyNzU3NWIyMzk1OTRmYmM4ZmQ1MTkyODczYTFkNjJm
NDQnLAorICAgICAgICAndmVyc2lvbic6ICdnaXRfcmV2aXNpb246YmQ5OWRiZjk4Y2JkZWZlMThh
NDEyODE4OTY2NWM1NzYxMjYzYmNmYicsCiAgICAgICB9CiAgICAgXSwKICAgICAnZGVwX3R5cGUn
OiAnY2lwZCcsCkBAIC0xODIsMTcgKzE4MiwxNyBAQCBkZXBzID0gewogICB9LAogCiAgICd0ZXN0
aW5nJzogewotICAgICd1cmwnOiAne2Nocm9taXVtX2dpdH0vY2hyb21pdW0vc3JjL3Rlc3RpbmdA
YWE1NTUyZjUxNjlkZGMxYTBhOThmNmQ3Zjk4ZTE2N2ZiNDZjMWMwYycsCisgICAgJ3VybCc6ICd7
Y2hyb21pdW1fZ2l0fS9jaHJvbWl1bS9zcmMvdGVzdGluZ0A1NWYxZGMyZDI3Y2Q2ZDVmOGNkYzQx
ODJlYzMwZjUwOTZkZWRiZjUxJywKICAgICAnY29uZGl0aW9uJzogJ25vdCBidWlsZF93aXRoX2No
cm9taXVtJywKICAgfSwKIAogICAndGhpcmRfcGFydHkvYWJzZWlsLWNwcCc6IHsKLSAgICAndXJs
JzogJ3tjaHJvbWl1bV9naXR9L2Nocm9taXVtL3NyYy90aGlyZF9wYXJ0eS9hYnNlaWwtY3BwQGFk
MDAyZjYwNTE2MWMyOTU2MDg2ZWVlM2UwZGJlNjA5YzE1MzRmMTAnLAorICAgICd1cmwnOiAne2No
cm9taXVtX2dpdH0vY2hyb21pdW0vc3JjL3RoaXJkX3BhcnR5L2Fic2VpbC1jcHBAYTQyOTc0OTNk
ODYwMjJiOTFjOTNmN2MxZGUyOWU5YWQwYTBlMjQ4OScsCiAgICAgJ2NvbmRpdGlvbic6ICdub3Qg
YnVpbGRfd2l0aF9jaHJvbWl1bScsCiAgIH0sCiAKICAgJ3RoaXJkX3BhcnR5L2FuZHJvaWRfYnVp
bGRfdG9vbHMnOiB7Ci0gICAgJ3VybCc6ICd7Y2hyb21pdW1fZ2l0fS9jaHJvbWl1bS9zcmMvdGhp
cmRfcGFydHkvYW5kcm9pZF9idWlsZF90b29sc0A2ZjlkMDM4NmJlMGNiNTQyZDQ1ZjhiYWEzZmRj
ZGI4NGMxOTg5YjVhJywKKyAgICAndXJsJzogJ3tjaHJvbWl1bV9naXR9L2Nocm9taXVtL3NyYy90
aGlyZF9wYXJ0eS9hbmRyb2lkX2J1aWxkX3Rvb2xzQDI5NzY2YjVkNjQxMDhkYmJkNDBiZTAwMTY3
YzdiODcyOGM0MjUyOTknLAogICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQg
bm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLAogICB9LAogCkBAIC0yMDAsNyArMjAwLDcgQEAgZGVw
cyA9IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAgICB7CiAgICAgICAgICAgICAgICdw
YWNrYWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfYnVpbGRfdG9vbHMvYWFwdDIn
LAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd5UUlmNUV2Xy1xOXU2UHJfYTBBUGQxZEhjSW1K
U21vdFZBRHc0UGoxNTFRQycsCisgICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3dpY241Q2UxYXk2
aXZiWjFHTkZGMGdSU1MzTll2XzdoSlRQdFZnYTNPLVFDJywKICAgICAgICAgICB9LAogICAgICAg
XSwKICAgICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dp
dGhfY2hyb21pdW0nLApAQCAtMjIyLDcgKzIyMiw3IEBAIGRlcHMgPSB7CiAgICAgICAncGFja2Fn
ZXMnOiBbCiAgICAgICAgICAgewogICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0v
dGhpcmRfcGFydHkvYW5kcm9pZF9idWlsZF90b29scy9idW5kbGV0b29sJywKLSAgICAgICAgICAg
ICAgICd2ZXJzaW9uJzogJzJaY0xWRHh5UndwOEZ6cGVZTHRMVDBUZlNSd2VaeHZ3aDEtS3gxalpf
Rm9DJywKKyAgICAgICAgICAgICAgICd2ZXJzaW9uJzogJ0xvbGRpUURwWjB1VGRBbTVFUGdaOGhC
SjNMYTJLbFRXTHVhUnhFN2VEaWdDJywKICAgICAgICAgICB9LAogICAgICAgXSwKICAgICAgICdj
b25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0n
LApAQCAtMjMwLDcgKzIzMCw3IEBAIGRlcHMgPSB7CiAgIH0sCiAKICAgJ3RoaXJkX3BhcnR5L2Fu
ZHJvaWRfZGVwcyc6IHsKLSAgICAndXJsJzogJ3tjaHJvbWl1bV9naXR9L2Nocm9taXVtL3NyYy90
aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHNANGM3M2E3YWU3NGMyZGU1YWE5YTgxOTgzODk5MzkxMzY3
ZjU1NTU5MycsCisgICAgJ3VybCc6ICd7Y2hyb21pdW1fZ2l0fS9jaHJvbWl1bS9zcmMvdGhpcmRf
cGFydHkvYW5kcm9pZF9kZXBzQGJlMDczMWYzOWVmNWJiNzEyOGVmZjhkMDlkYTkwY2Q5ZTcwOGMz
YjQnLAogICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dp
dGhfY2hyb21pdW0nLAogICB9LAogCkBAIC0yNDUsNyArMjQ1LDcgQEAgZGVwcyA9IHsKICAgfSwK
IAogICAndGhpcmRfcGFydHkvYW5kcm9pZF9zZGsnOiB7Ci0gICAgJ3VybCc6ICd7Y2hyb21pdW1f
Z2l0fS9jaHJvbWl1bS9zcmMvdGhpcmRfcGFydHkvYW5kcm9pZF9zZGtANGE2ZDUzYjhmNzQxNjYw
MmU2YWViZjVkZDRiZTUyMTRiOTMyODRiYicsCisgICAgJ3VybCc6ICd7Y2hyb21pdW1fZ2l0fS9j
aHJvbWl1bS9zcmMvdGhpcmRfcGFydHkvYW5kcm9pZF9zZGtANWYxMDlmM2M0MTkxZjk5Y2FmYzAz
ZTBkYmNkNTk0Njg1OTQzMDE3NCcsCiAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lk
IGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCiAgIH0sCiAKQEAgLTMzMiw3ICszMzIsNyBA
QCBkZXBzID0gewogICB9LAogCiAgICd0aGlyZF9wYXJ0eS9kZXBvdF90b29scyc6IHsKLSAgICAn
dXJsJzogJ3tjaHJvbWl1bV9naXR9L2Nocm9taXVtL3Rvb2xzL2RlcG90X3Rvb2xzLmdpdEA5ODhj
MGFmNWJlZDA1ZTk3ZDM1MTI5N2VkOWYzMjIxYmZlNDJhMjA1JywKKyAgICAndXJsJzogJ3tjaHJv
bWl1bV9naXR9L2Nocm9taXVtL3Rvb2xzL2RlcG90X3Rvb2xzLmdpdEA3Njk3OWRhZTU2YzA4ZDI0
YjA5MjM0N2ExYmRkMmFiZTQ3NDU1NWEzJywKICAgICAnY29uZGl0aW9uJzogJ25vdCBidWlsZF93
aXRoX2Nocm9taXVtJywKICAgfSwKIApAQCAtMzcxLDcgKzM3MSw3IEBAIGRlcHMgPSB7CiAKICAg
IyBsaWJqcGVnX3R1cmJvIGlzIHVzZWQgYnkgZ2xtYXJrMi4KICAgJ3RoaXJkX3BhcnR5L2xpYmpw
ZWdfdHVyYm8nOiB7Ci0gICAgJ3VybCc6ICd7Y2hyb21pdW1fZ2l0fS9jaHJvbWl1bS9kZXBzL2xp
YmpwZWdfdHVyYm8uZ2l0QDAyOTU5YzNlZTE3YWJhY2ZkMTMzOWVjMjJlYTkzMzAxMjkyZmZkNTYn
LAorICAgICd1cmwnOiAne2Nocm9taXVtX2dpdH0vY2hyb21pdW0vZGVwcy9saWJqcGVnX3R1cmJv
LmdpdEAyMmYxYTIyYzk5ZTlkZGU4Y2QzYzcyZWFkMzMzZjQyNWM1YTdhYTc3JywKICAgICAnY29u
ZGl0aW9uJzogJ25vdCBidWlsZF93aXRoX2Nocm9taXVtJywKICAgfSwKIApAQCAtNDM5LDcgKzQz
OSw3IEBAIGRlcHMgPSB7CiAgIH0sCiAKICAgJ3RoaXJkX3BhcnR5L3Byb3RvYnVmJzogewotICAg
ICd1cmwnOiAne2Nocm9taXVtX2dpdH0vY2hyb21pdW0vc3JjL3RoaXJkX3BhcnR5L3Byb3RvYnVm
QGQyOWQ2ODljMWQ5NDQ2ZTA2MjNhZjk2OTNmZTE5NDVlY2ZhYjljNDUnLAorICAgICd1cmwnOiAn
e2Nocm9taXVtX2dpdH0vY2hyb21pdW0vc3JjL3RoaXJkX3BhcnR5L3Byb3RvYnVmQDcxZDc4ZGI4
ZGVmMDgzM2NmMTcxNzhkNTRmZTYzYjIwYjk3ZTgwY2UnLAogICAgICdjb25kaXRpb24nOiAnbm90
IGJ1aWxkX3dpdGhfY2hyb21pdW0nLAogICB9LAogCkBAIC00NzQsNyArNDc0LDcgQEAgZGVwcyA9
IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAgICB7CiAgICAgICAgICAgICAgICdwYWNr
YWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L3I4JywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24n
OiAnY0V2MXl5ZnhmbVBfTWFackcyMmNSN1lQYzdoZWhnSEFaZDgybFJ4MERGQUMnLAorICAgICAg
ICAgICAgICAndmVyc2lvbic6ICdvdm96ZVJTRERmRVJuRUZwRG9fV1M2T1lPY0VGN29UMUp6R3hD
U2YtZzBrQycsCiAgICAgICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2No
ZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTQ5Niw3ICs0
OTYsNyBAQCBkZXBzID0gewogICB9LAogCiAgICd0aGlyZF9wYXJ0eS9Td2lmdFNoYWRlcic6IHsK
LSAgICAndXJsJzogJ3tzd2lmdHNoYWRlcl9naXR9L1N3aWZ0U2hhZGVyQGI0YTU2YTg5MzQ5NmNi
ZDNmYTUwNTgwYTMwOTg5YTkwMjI2Y2Y5NzgnLAorICAgICd1cmwnOiAne3N3aWZ0c2hhZGVyX2dp
dH0vU3dpZnRTaGFkZXJANTdlY2E5ZGY1ZGM1NmQyOTBmNjYyYWNlNzQ4MWVkNzU4NjE4ZDU1OScs
CiAgICAgJ2NvbmRpdGlvbic6ICdub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCiAgIH0sCiAKQEAg
LTUwNCw3ICs1MDQsNyBAQCBkZXBzID0gewogICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAg
IHsKICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvdHVyYmlu
ZScsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ1ZobWZJUHVTREhIZWlsbkE3V0MwTWhSOVNo
Wk5GMjV0QTBUZTRSWUlaRzhDJywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAnR285SjNNejVh
bmtaQWd4bW41R3hlWEtkRURWNzN6YVpwMm9qTmZHQzFSUUMnLAogICAgICAgICAgIH0sCiAgICAg
ICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRf
d2l0aF9jaHJvbWl1bScsCkBAIC01MTYsNyArNTE2LDcgQEAgZGVwcyA9IHsKICAgfSwKIAogICAn
dGhpcmRfcGFydHkvdnVsa2FuLWRlcHMnOiB7Ci0gICAgJ3VybCc6ICd7Y2hyb21pdW1fZ2l0fS92
dWxrYW4tZGVwc0A0ZDlmZTZiZjFmMGM2ZTM2NTI0NTM3OWFlODhiYWM3OTY2ZTkxMTdhJywKKyAg
ICAndXJsJzogJ3tjaHJvbWl1bV9naXR9L3Z1bGthbi1kZXBzQGM0MTA5NDExZDNmMzY2MzUzODk4
YWVkNjMxNTZhZGEyZmE1NjI4MTcnLAogICAgICdjb25kaXRpb24nOiAnbm90IGJ1aWxkX3dpdGhf
Y2hyb21pdW0nLAogICB9LAogCkBAIC01MjUsOCArNTI1LDEzIEBAIGRlcHMgPSB7CiAgICAgJ2Nv
bmRpdGlvbic6ICdub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCiAgIH0sCiAKKyAgJ3RoaXJkX3Bh
cnR5L3dheWxhbmQnOiB7CisgICAgJ3VybCc6ICd7Y2hyb21pdW1fZ2l0fS9leHRlcm5hbC9hbm9u
Z2l0LmZyZWVkZXNrdG9wLm9yZy9naXQvd2F5bGFuZC93YXlsYW5kQHVwc3RyZWFtLzEuMjAuMCcs
CisgICAgJ2NvbmRpdGlvbic6ICdub3QgYnVpbGRfd2l0aF9jaHJvbWl1bSBhbmQgaG9zdF9vcyA9
PSAibGludXgiJworICB9LAorCiAgICd0aGlyZF9wYXJ0eS96bGliJzogewotICAgICd1cmwnOiAn
e2Nocm9taXVtX2dpdH0vY2hyb21pdW0vc3JjL3RoaXJkX3BhcnR5L3psaWJAMzFlNWFkMWM0MjFk
YjFiZjExNmQ5ZjE5YWEyNjc3ZmVkNTQ0MzQzYScsCisgICAgJ3VybCc6ICd7Y2hyb21pdW1fZ2l0
fS9jaHJvbWl1bS9zcmMvdGhpcmRfcGFydHkvemxpYkA5MjNmNWViNGJmYTQwM2QwZjE0ZDljYmNh
MmNkZjdmYTc0MTZlZTY3JywKICAgICAnY29uZGl0aW9uJzogJ25vdCBidWlsZF93aXRoX2Nocm9t
aXVtJywKICAgfSwKIApAQCAtNTM2LDcgKzU0MSw3IEBAIGRlcHMgPSB7CiAgIH0sCiAKICAgJ3Rv
b2xzL2NsYW5nJzogewotICAgICd1cmwnOiAne2Nocm9taXVtX2dpdH0vY2hyb21pdW0vc3JjL3Rv
b2xzL2NsYW5nLmdpdEAzNzMwMDI2NjIwZjZkZTJkMjZjMmFkM2YzNWUyMWU2OTgyMTAxZTVkJywK
KyAgICAndXJsJzogJ3tjaHJvbWl1bV9naXR9L2Nocm9taXVtL3NyYy90b29scy9jbGFuZy5naXRA
YTE1YzJkZmEzNTE3N2RjMjE1NzdhMTc2MGU4ZjRjMGMxZTg1NGRhNicsCiAgICAgJ2NvbmRpdGlv
bic6ICdub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCiAgIH0sCiAKQEAgLTU2Nyw3ICs1NzIsNyBA
QCBkZXBzID0gewogICB9LAogCiAgICd0b29scy9tYic6IHsKLSAgICAndXJsJzogJ3tjaHJvbWl1
bV9naXR9L2Nocm9taXVtL3NyYy90b29scy9tYkA2OTYzNWIyYTFiZTJjYTAzZDA3MjEwOGI0ZDMx
YzkxY2YxM2M5MmM4JywKKyAgICAndXJsJzogJ3tjaHJvbWl1bV9naXR9L2Nocm9taXVtL3NyYy90
b29scy9tYkBlNmYxNTlkZjYwZDE3ODhmOWE1ZWRmOGNhMzJlNDU2ZjBjNzI5NDliJywKICAgICAn
Y29uZGl0aW9uJzogJ25vdCBidWlsZF93aXRoX2Nocm9taXVtJywKICAgfSwKIApAQCAtNTc3LDEy
ICs1ODIsMTIgQEAgZGVwcyA9IHsKICAgfSwKIAogICAndG9vbHMvbWVtb3J5JzogewotICAgICd1
cmwnOiAne2Nocm9taXVtX2dpdH0vY2hyb21pdW0vc3JjL3Rvb2xzL21lbW9yeUA0ZDEzMWMyMGRh
MzRhMDNmY2RlMjU2ZWQzMWEyMzExNWIxNzFjMTcyJywKKyAgICAndXJsJzogJ3tjaHJvbWl1bV9n
aXR9L2Nocm9taXVtL3NyYy90b29scy9tZW1vcnlAOGEzNDBiNjRkY2U0YjU3ODQ5NDg4MWExMTEy
Y2ZhMTFiNzIzMzBlMicsCiAgICAgJ2NvbmRpdGlvbic6ICdub3QgYnVpbGRfd2l0aF9jaHJvbWl1
bScsCiAgIH0sCiAKICAgJ3Rvb2xzL3BlcmYnOiB7Ci0gICAgJ3VybCc6ICd7Y2hyb21pdW1fZ2l0
fS9jaHJvbWl1bS9zcmMvdG9vbHMvcGVyZkAxNmE0NmNlNmQyNmFlYTNhNzM4OWI1ZjAzOTVlOGUx
OTNkNjQxMTdmJywKKyAgICAndXJsJzogJ3tjaHJvbWl1bV9naXR9L2Nocm9taXVtL3NyYy90b29s
cy9wZXJmQDQ2ZmE5YjQ3NjVjNjFiZGZmM2UxNDdjZDY4YWNjYWJjNGQxZmUwZGInLAogICAgICdj
b25kaXRpb24nOiAnbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLAogICB9LAogCkBAIC02MDAsNyAr
NjA1LDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAgewogICAgICAg
ICAgICdwYWNrYWdlJzogJ3NraWEvdG9vbHMvZ29sZGN0bC9saW51eC1hbWQ2NCcsCi0gICAgICAg
ICAgJ3ZlcnNpb24nOiAnbmpHenpWeVlQU0FfXzN0U2hzR3hzdmg4azVrSmZMOVYwd3ZMdGhYU1VW
NEMnLAorICAgICAgICAgICd2ZXJzaW9uJzogJ2lxdHoycHJuOUNVdjZBOEtDY3hKemFkbVBFRExZ
MUZQUC1iMllxSUZRMWNDJywKICAgICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnZGVwX3R5cGUn
OiAnY2lwZCcsCkBAIC02MTEsNyArNjE2LDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNrYWdlcyc6
IFsKICAgICAgICAgewogICAgICAgICAgICdwYWNrYWdlJzogJ3NraWEvdG9vbHMvZ29sZGN0bC93
aW5kb3dzLWFtZDY0JywKLSAgICAgICAgICAndmVyc2lvbic6ICdrOHRUSERUMkhRSFFGRDdUUGpS
cmRNSEdBQk44WWJ4UDFHWHNKbm1TOUpJQycsCisgICAgICAgICAgJ3ZlcnNpb24nOiAnRWJWUVhh
MXUwaGJaOHB4YjBJbDZSYmMxRXJIcElOXy1rTVZPekJYTVF5b0MnLAogICAgICAgICB9LAogICAg
ICAgXSwKICAgICAgICdkZXBfdHlwZSc6ICdjaXBkJywKQEAgLTYyMiw3ICs2MjcsNyBAQCBkZXBz
ID0gewogICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICB7CiAgICAgICAgICAgJ3BhY2thZ2Un
OiAnc2tpYS90b29scy9nb2xkY3RsL21hYy1hbWQ2NCcsCi0gICAgICAgICAgJ3ZlcnNpb24nOiAn
aE8wT1Q3R3JCYW4wZGVETF9wYjBMRk1MOXVlV3JiZER0ekNVLWF3di04SUMnLAorICAgICAgICAg
ICd2ZXJzaW9uJzogJ1k0bDE0TEJxQ3NUOUVoZmZQSU90c285VlNwd3FRRTlXY2NqWmREQlptTG9D
JywKICAgICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnZGVwX3R5cGUnOiAnY2lwZCcsCkBAIC02
MzMsNyArNjM4LDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAgewog
ICAgICAgICAgICdwYWNrYWdlJzogJ3NraWEvdG9vbHMvZ29sZGN0bC9tYWMtYXJtNjQnLAotICAg
ICAgICAgICd2ZXJzaW9uJzogJ2lHNV84RnIxWjYtN2hXVUlhaUF5X0JkcUVxWnp0aU8xaHNVa0c4
S0RfY3NDJywKKyAgICAgICAgICAndmVyc2lvbic6ICdJTkVxYzhKSV9tdHd3X1gwU2hPbERrRjNT
OE9HNHRqRjROa2VpMEs3Y2k4QycsCiAgICAgICAgIH0sCiAgICAgICBdLAogICAgICAgJ2RlcF90
eXBlJzogJ2NpcGQnLApAQCAtNzU2LDYgKzc2MSwxNiBAQCBkZXBzID0gewogICAgICAgJ2RlcF90
eXBlJzogJ2NpcGQnLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmdsZV9yZXN0cmlj
dGVkX3RyYWNlcycsCiAgIH0sCisgICdzcmMvdGVzdHMvcmVzdHJpY3RlZF90cmFjZXMvYmxhZGVf
YW5kX3NvdWxfcmV2b2x1dGlvbic6IHsKKyAgICAgICdwYWNrYWdlcyc6IFsKKyAgICAgICAgewor
ICAgICAgICAgICAgJ3BhY2thZ2UnOiAnYW5nbGUvdHJhY2VzL2JsYWRlX2FuZF9zb3VsX3Jldm9s
dXRpb24nLAorICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoxJywKKyAgICAgICAgfSwK
KyAgICAgIF0sCisgICAgICAnZGVwX3R5cGUnOiAnY2lwZCcsCisgICAgICAnY29uZGl0aW9uJzog
J2NoZWNrb3V0X2FuZ2xlX3Jlc3RyaWN0ZWRfdHJhY2VzJywKKyAgfSwKICAgJ3NyYy90ZXN0cy9y
ZXN0cmljdGVkX3RyYWNlcy9ibG9ja21hbl9nbyc6IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAg
ICAgICAgewpAQCAtODQ2LDYgKzg2MSwxNiBAQCBkZXBzID0gewogICAgICAgJ2RlcF90eXBlJzog
J2NpcGQnLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmdsZV9yZXN0cmljdGVkX3Ry
YWNlcycsCiAgIH0sCisgICdzcmMvdGVzdHMvcmVzdHJpY3RlZF90cmFjZXMvY2FzdGxldmFuaWFf
c290bic6IHsKKyAgICAgICdwYWNrYWdlcyc6IFsKKyAgICAgICAgeworICAgICAgICAgICAgJ3Bh
Y2thZ2UnOiAnYW5nbGUvdHJhY2VzL2Nhc3RsZXZhbmlhX3NvdG4nLAorICAgICAgICAgICAgJ3Zl
cnNpb24nOiAndmVyc2lvbjoxJywKKyAgICAgICAgfSwKKyAgICAgIF0sCisgICAgICAnZGVwX3R5
cGUnOiAnY2lwZCcsCisgICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZ2xlX3Jlc3RyaWN0
ZWRfdHJhY2VzJywKKyAgfSwKICAgJ3NyYy90ZXN0cy9yZXN0cmljdGVkX3RyYWNlcy9jbGFzaF9v
Zl9jbGFucyc6IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAgewpAQCAtMTA3Niw2ICsx
MTAxLDM2IEBAIGRlcHMgPSB7CiAgICAgICAnZGVwX3R5cGUnOiAnY2lwZCcsCiAgICAgICAnY29u
ZGl0aW9uJzogJ2NoZWNrb3V0X2FuZ2xlX3Jlc3RyaWN0ZWRfdHJhY2VzJywKICAgfSwKKyAgJ3Ny
Yy90ZXN0cy9yZXN0cmljdGVkX3RyYWNlcy9maW5hbF9mYW50YXN5X2JyYXZlX2V4dml1cyc6IHsK
KyAgICAgICdwYWNrYWdlcyc6IFsKKyAgICAgICAgeworICAgICAgICAgICAgJ3BhY2thZ2UnOiAn
YW5nbGUvdHJhY2VzL2ZpbmFsX2ZhbnRhc3lfYnJhdmVfZXh2aXVzJywKKyAgICAgICAgICAgICd2
ZXJzaW9uJzogJ3ZlcnNpb246MScsCisgICAgICAgIH0sCisgICAgICBdLAorICAgICAgJ2RlcF90
eXBlJzogJ2NpcGQnLAorICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmdsZV9yZXN0cmlj
dGVkX3RyYWNlcycsCisgIH0sCisgICdzcmMvdGVzdHMvcmVzdHJpY3RlZF90cmFjZXMvZmlyZV9l
bWJsZW1faGVyb2VzJzogeworICAgICAgJ3BhY2thZ2VzJzogWworICAgICAgICB7CisgICAgICAg
ICAgICAncGFja2FnZSc6ICdhbmdsZS90cmFjZXMvZmlyZV9lbWJsZW1faGVyb2VzJywKKyAgICAg
ICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MScsCisgICAgICAgIH0sCisgICAgICBdLAorICAg
ICAgJ2RlcF90eXBlJzogJ2NpcGQnLAorICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmds
ZV9yZXN0cmljdGVkX3RyYWNlcycsCisgIH0sCisgICdzcmMvdGVzdHMvcmVzdHJpY3RlZF90cmFj
ZXMvZml2ZV9uaWdodHNfYXRfZnJlZGR5cyc6IHsKKyAgICAgICdwYWNrYWdlcyc6IFsKKyAgICAg
ICAgeworICAgICAgICAgICAgJ3BhY2thZ2UnOiAnYW5nbGUvdHJhY2VzL2ZpdmVfbmlnaHRzX2F0
X2ZyZWRkeXMnLAorICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoxJywKKyAgICAgICAg
fSwKKyAgICAgIF0sCisgICAgICAnZGVwX3R5cGUnOiAnY2lwZCcsCisgICAgICAnY29uZGl0aW9u
JzogJ2NoZWNrb3V0X2FuZ2xlX3Jlc3RyaWN0ZWRfdHJhY2VzJywKKyAgfSwKICAgJ3NyYy90ZXN0
cy9yZXN0cmljdGVkX3RyYWNlcy9mcmVlX2ZpcmUnOiB7CiAgICAgICAncGFja2FnZXMnOiBbCiAg
ICAgICAgIHsKQEAgLTE1NjYsNiArMTYyMSwxNiBAQCBkZXBzID0gewogICAgICAgJ2RlcF90eXBl
JzogJ2NpcGQnLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmdsZV9yZXN0cmljdGVk
X3RyYWNlcycsCiAgIH0sCisgICdzcmMvdGVzdHMvcmVzdHJpY3RlZF90cmFjZXMvcmVhbF9yYWNp
bmczJzogeworICAgICAgJ3BhY2thZ2VzJzogWworICAgICAgICB7CisgICAgICAgICAgICAncGFj
a2FnZSc6ICdhbmdsZS90cmFjZXMvcmVhbF9yYWNpbmczJywKKyAgICAgICAgICAgICd2ZXJzaW9u
JzogJ3ZlcnNpb246MScsCisgICAgICAgIH0sCisgICAgICBdLAorICAgICAgJ2RlcF90eXBlJzog
J2NpcGQnLAorICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmdsZV9yZXN0cmljdGVkX3Ry
YWNlcycsCisgIH0sCiAgICdzcmMvdGVzdHMvcmVzdHJpY3RlZF90cmFjZXMvcmVzcGF3bmFibGVz
JzogewogICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICB7CkBAIC0xNjc2LDYgKzE3NDEsMTYg
QEAgZGVwcyA9IHsKICAgICAgICdkZXBfdHlwZSc6ICdjaXBkJywKICAgICAgICdjb25kaXRpb24n
OiAnY2hlY2tvdXRfYW5nbGVfcmVzdHJpY3RlZF90cmFjZXMnLAogICB9LAorICAnc3JjL3Rlc3Rz
L3Jlc3RyaWN0ZWRfdHJhY2VzL3NvbGFyX3NtYXNoJzogeworICAgICAgJ3BhY2thZ2VzJzogWwor
ICAgICAgICB7CisgICAgICAgICAgICAncGFja2FnZSc6ICdhbmdsZS90cmFjZXMvc29sYXJfc21h
c2gnLAorICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyJywKKyAgICAgICAgfSwKKyAg
ICAgIF0sCisgICAgICAnZGVwX3R5cGUnOiAnY2lwZCcsCisgICAgICAnY29uZGl0aW9uJzogJ2No
ZWNrb3V0X2FuZ2xlX3Jlc3RyaWN0ZWRfdHJhY2VzJywKKyAgfSwKICAgJ3NyYy90ZXN0cy9yZXN0
cmljdGVkX3RyYWNlcy9zb25pY190aGVfaGVkZ2Vob2cnOiB7CiAgICAgICAncGFja2FnZXMnOiBb
CiAgICAgICAgIHsKQEAgLTE5MDQsNyArMTk3OSw3IEBAIGRlcHMgPSB7CiAgICAgICAncGFja2Fn
ZXMnOiBbCiAgICAgICAgICAgewogICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90
aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9hbmRyb2lkX2FyY2hfY29yZV9jb21tb24nLAot
ICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMS4xLjEuY3IwJywKKyAgICAgICAg
ICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDEuMS4xLmNyMScsCiAgICAgICAgICAgfSwKICAg
ICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWls
ZF93aXRoX2Nocm9taXVtJywKQEAgLTE5MTUsNyArMTk5MCw3IEBAIGRlcHMgPSB7CiAgICAgICAn
cGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJv
bWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9hbmRyb2lkX2FyY2hfY29yZV9ydW50
aW1lJywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDEuMS4xLmNyMCcsCisg
ICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxLjEuMS5jcjEnLAogICAgICAgICAg
IH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBu
b3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0xOTI2LDcgKzIwMDEsNyBAQCBkZXBzID0gewog
ICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2Un
OiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvYW5kcm9pZF9hcmNoX2xp
ZmVjeWNsZV9jb21tb24nLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMS4x
LjEuY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDEuMS4xLmNyMScs
CiAgICAgICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2Fu
ZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTE5MzcsNyArMjAxMiw3IEBA
IGRlcHMgPSB7CiAgICAgICAncGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAgICAgICAg
ICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9hbmRy
b2lkX2FyY2hfbGlmZWN5Y2xlX2NvbW1vbl9qYXZhOCcsCi0gICAgICAgICAgICAgICd2ZXJzaW9u
JzogJ3ZlcnNpb246MkAxLjEuMS5jcjAnLAorICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJz
aW9uOjJAMS4xLjEuY3IxJywKICAgICAgICAgICB9LAogICAgICAgXSwKICAgICAgICdjb25kaXRp
b24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLApAQCAt
MTk0OCw3ICsyMDIzLDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAg
ICB7CiAgICAgICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJv
aWRfZGVwcy9saWJzL2FuZHJvaWRfYXJjaF9saWZlY3ljbGVfbGl2ZWRhdGEnLAotICAgICAgICAg
ICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMS4xLjEuY3IwJywKKyAgICAgICAgICAgICAgJ3Zl
cnNpb24nOiAndmVyc2lvbjoyQDEuMS4xLmNyMScsCiAgICAgICAgICAgfSwKICAgICAgIF0sCiAg
ICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2No
cm9taXVtJywKQEAgLTE5NTksNyArMjAzNCw3IEBAIGRlcHMgPSB7CiAgICAgICAncGFja2FnZXMn
OiBbCiAgICAgICAgICAgewogICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGly
ZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9hbmRyb2lkX2FyY2hfbGlmZWN5Y2xlX2xpdmVkYXRh
X2NvcmUnLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMS4xLjEuY3IwJywK
KyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDEuMS4xLmNyMScsCiAgICAgICAg
ICAgfSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5k
IG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTE5NzAsNyArMjA0NSw3IEBAIGRlcHMgPSB7
CiAgICAgICAncGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAgICAgICAgICAncGFja2Fn
ZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9hbmRyb2lkX2FyY2hf
bGlmZWN5Y2xlX3J1bnRpbWUnLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJA
MS4xLjEuY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDEuMS4xLmNy
MScsCiAgICAgICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0
X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTE5ODEsMjkgKzIwNTYs
NyBAQCBkZXBzID0gewogICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAg
ICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMv
YW5kcm9pZF9hcmNoX2xpZmVjeWNsZV92aWV3bW9kZWwnLAotICAgICAgICAgICAgICAndmVyc2lv
bic6ICd2ZXJzaW9uOjJAMS4xLjEuY3IwJywKLSAgICAgICAgICB9LAotICAgICAgXSwKLSAgICAg
ICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21p
dW0nLAotICAgICAgJ2RlcF90eXBlJzogJ2NpcGQnLAotICB9LAotCi0gICd0aGlyZF9wYXJ0eS9h
bmRyb2lkX2RlcHMvbGlicy9iYWNrcG9ydF91dGlsX2NvbmN1cnJlbnRfYmFja3BvcnRfdXRpbF9j
b25jdXJyZW50JzogewotICAgICAgJ3BhY2thZ2VzJzogWwotICAgICAgICAgIHsKLSAgICAgICAg
ICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMv
YmFja3BvcnRfdXRpbF9jb25jdXJyZW50X2JhY2twb3J0X3V0aWxfY29uY3VycmVudCcsCi0gICAg
ICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAzLjEuY3IwJywKLSAgICAgICAgICB9LAot
ICAgICAgXSwKLSAgICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1
aWxkX3dpdGhfY2hyb21pdW0nLAotICAgICAgJ2RlcF90eXBlJzogJ2NpcGQnLAotICB9LAotCi0g
ICd0aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9jbGFzc3dvcmxkc19jbGFzc3dvcmxkcyc6
IHsKLSAgICAgICdwYWNrYWdlcyc6IFsKLSAgICAgICAgICB7Ci0gICAgICAgICAgICAgICdwYWNr
YWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL2NsYXNzd29ybGRz
X2NsYXNzd29ybGRzJywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDEuMS1h
bHBoYS0yLmNyMCcsCisgICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxLjEuMS5j
cjEnLAogICAgICAgICAgIH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291
dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0yMDE0LDcgKzIwNjcs
NyBAQCBkZXBzID0gewogICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAg
ICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMv
Y29tX2FuZHJvaWRfc3VwcG9ydF9hbmltYXRlZF92ZWN0b3JfZHJhd2FibGUnLAotICAgICAgICAg
ICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMjguMC4wLmNyMCcsCisgICAgICAgICAgICAgICd2
ZXJzaW9uJzogJ3ZlcnNpb246MkAyOC4wLjAuY3IxJywKICAgICAgICAgICB9LAogICAgICAgXSwK
ICAgICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhf
Y2hyb21pdW0nLApAQCAtMjAyNSw3ICsyMDc4LDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNrYWdl
cyc6IFsKICAgICAgICAgICB7CiAgICAgICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3Ro
aXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL2NvbV9hbmRyb2lkX3N1cHBvcnRfYXBwY29tcGF0
X3Y3JywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDI4LjAuMC5jcjAnLAor
ICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMjguMC4wLmNyMScsCiAgICAgICAg
ICAgfSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5k
IG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTIwMzYsNyArMjA4OSw3IEBAIGRlcHMgPSB7
CiAgICAgICAncGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAgICAgICAgICAncGFja2Fn
ZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9jb21fYW5kcm9pZF9z
dXBwb3J0X2FzeW5jbGF5b3V0aW5mbGF0ZXInLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2
ZXJzaW9uOjJAMjguMC4wLmNyMCcsCisgICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246
MkAyOC4wLjAuY3IxJywKICAgICAgICAgICB9LAogICAgICAgXSwKICAgICAgICdjb25kaXRpb24n
OiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLApAQCAtMjA0
Nyw3ICsyMTAwLDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAgICB7
CiAgICAgICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRf
ZGVwcy9saWJzL2NvbV9hbmRyb2lkX3N1cHBvcnRfY2FyZHZpZXdfdjcnLAotICAgICAgICAgICAg
ICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMjguMC4wLmNyMCcsCisgICAgICAgICAgICAgICd2ZXJz
aW9uJzogJ3ZlcnNpb246MkAyOC4wLjAuY3IxJywKICAgICAgICAgICB9LAogICAgICAgXSwKICAg
ICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hy
b21pdW0nLApAQCAtMjA1OCw3ICsyMTExLDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNrYWdlcyc6
IFsKICAgICAgICAgICB7CiAgICAgICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3RoaXJk
X3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL2NvbV9hbmRyb2lkX3N1cHBvcnRfY29sbGVjdGlvbnMn
LAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMjguMC4wLmNyMCcsCisgICAg
ICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAyOC4wLjAuY3IxJywKICAgICAgICAgICB9
LAogICAgICAgXSwKICAgICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90
IGJ1aWxkX3dpdGhfY2hyb21pdW0nLApAQCAtMjA2OSw3ICsyMTIyLDcgQEAgZGVwcyA9IHsKICAg
ICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAgICB7CiAgICAgICAgICAgICAgICdwYWNrYWdlJzog
J2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL2NvbV9hbmRyb2lkX3N1cHBv
cnRfY29vcmRpbmF0b3JsYXlvdXQnLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9u
OjJAMjguMC4wLmNyMCcsCisgICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAyOC4w
LjAuY3IxJywKICAgICAgICAgICB9LAogICAgICAgXSwKICAgICAgICdjb25kaXRpb24nOiAnY2hl
Y2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLApAQCAtMjA4MCw3ICsy
MTMzLDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAgICB7CiAgICAg
ICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9s
aWJzL2NvbV9hbmRyb2lkX3N1cHBvcnRfY3Vyc29yYWRhcHRlcicsCi0gICAgICAgICAgICAgICd2
ZXJzaW9uJzogJ3ZlcnNpb246MkAyOC4wLjAuY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24n
OiAndmVyc2lvbjoyQDI4LjAuMC5jcjEnLAogICAgICAgICAgIH0sCiAgICAgICBdLAogICAgICAg
J2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1
bScsCkBAIC0yMDkxLDcgKzIxNDQsNyBAQCBkZXBzID0gewogICAgICAgJ3BhY2thZ2VzJzogWwog
ICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFy
dHkvYW5kcm9pZF9kZXBzL2xpYnMvY29tX2FuZHJvaWRfc3VwcG9ydF9jdXN0b212aWV3JywKLSAg
ICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDI4LjAuMC5jcjAnLAorICAgICAgICAg
ICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMjguMC4wLmNyMScsCiAgICAgICAgICAgfSwKICAg
ICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWls
ZF93aXRoX2Nocm9taXVtJywKQEAgLTIxMDIsNyArMjE1NSw3IEBAIGRlcHMgPSB7CiAgICAgICAn
cGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJv
bWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9jb21fYW5kcm9pZF9zdXBwb3J0X2Rl
c2lnbicsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAyOC4wLjAuY3IwJywK
KyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDI4LjAuMC5jcjEnLAogICAgICAg
ICAgIH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFu
ZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0yMTEzLDcgKzIxNjYsNyBAQCBkZXBzID0g
ewogICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3BhY2th
Z2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvY29tX2FuZHJvaWRf
c3VwcG9ydF9kb2N1bWVudGZpbGUnLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9u
OjJAMjguMC4wLmNyMCcsCisgICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAyOC4w
LjAuY3IxJywKICAgICAgICAgICB9LAogICAgICAgXSwKICAgICAgICdjb25kaXRpb24nOiAnY2hl
Y2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLApAQCAtMjEyNCw3ICsy
MTc3LDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAgICB7CiAgICAg
ICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9s
aWJzL2NvbV9hbmRyb2lkX3N1cHBvcnRfZHJhd2VybGF5b3V0JywKLSAgICAgICAgICAgICAgJ3Zl
cnNpb24nOiAndmVyc2lvbjoyQDI4LjAuMC5jcjAnLAorICAgICAgICAgICAgICAndmVyc2lvbic6
ICd2ZXJzaW9uOjJAMjguMC4wLmNyMScsCiAgICAgICAgICAgfSwKICAgICAgIF0sCiAgICAgICAn
Y29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVt
JywKQEAgLTIxMzUsNyArMjE4OCw3IEBAIGRlcHMgPSB7CiAgICAgICAncGFja2FnZXMnOiBbCiAg
ICAgICAgICAgewogICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0
eS9hbmRyb2lkX2RlcHMvbGlicy9jb21fYW5kcm9pZF9zdXBwb3J0X2ludGVycG9sYXRvcicsCi0g
ICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAyOC4wLjAuY3IwJywKKyAgICAgICAg
ICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDI4LjAuMC5jcjEnLAogICAgICAgICAgIH0sCiAg
ICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVp
bGRfd2l0aF9jaHJvbWl1bScsCkBAIC0yMTQ2LDcgKzIxOTksNyBAQCBkZXBzID0gewogICAgICAg
J3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hy
b21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvY29tX2FuZHJvaWRfc3VwcG9ydF9s
b2FkZXInLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMjguMC4wLmNyMCcs
CisgICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAyOC4wLjAuY3IxJywKICAgICAg
ICAgICB9LAogICAgICAgXSwKICAgICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBh
bmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLApAQCAtMjE1Nyw3ICsyMjEwLDcgQEAgZGVwcyA9
IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAgICB7CiAgICAgICAgICAgICAgICdwYWNr
YWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL2NvbV9hbmRyb2lk
X3N1cHBvcnRfbG9jYWxicm9hZGNhc3RtYW5hZ2VyJywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24n
OiAndmVyc2lvbjoyQDI4LjAuMC5jcjAnLAorICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJz
aW9uOjJAMjguMC4wLmNyMScsCiAgICAgICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0
aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAg
LTIxNjgsNyArMjIyMSw3IEBAIGRlcHMgPSB7CiAgICAgICAncGFja2FnZXMnOiBbCiAgICAgICAg
ICAgewogICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRy
b2lkX2RlcHMvbGlicy9jb21fYW5kcm9pZF9zdXBwb3J0X211bHRpZGV4JywKLSAgICAgICAgICAg
ICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDEuMC4wLmNyMCcsCisgICAgICAgICAgICAgICd2ZXJz
aW9uJzogJ3ZlcnNpb246MkAxLjAuMC5jcjEnLAogICAgICAgICAgIH0sCiAgICAgICBdLAogICAg
ICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJv
bWl1bScsCkBAIC0yMTc5LDcgKzIyMzIsNyBAQCBkZXBzID0gewogICAgICAgJ3BhY2thZ2VzJzog
WwogICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRf
cGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvY29tX2FuZHJvaWRfc3VwcG9ydF9wcmludCcsCi0gICAg
ICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAyOC4wLjAuY3IwJywKKyAgICAgICAgICAg
ICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDI4LjAuMC5jcjEnLAogICAgICAgICAgIH0sCiAgICAg
ICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRf
d2l0aF9jaHJvbWl1bScsCkBAIC0yMTkwLDcgKzIyNDMsNyBAQCBkZXBzID0gewogICAgICAgJ3Bh
Y2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21p
dW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvY29tX2FuZHJvaWRfc3VwcG9ydF9yZWN5
Y2xlcnZpZXdfdjcnLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMjguMC4w
LmNyMCcsCisgICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAyOC4wLjAuY3IxJywK
ICAgICAgICAgICB9LAogICAgICAgXSwKICAgICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5k
cm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLApAQCAtMjIwMSw3ICsyMjU0LDcgQEAg
ZGVwcyA9IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAgICB7CiAgICAgICAgICAgICAg
ICdwYWNrYWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL2NvbV9h
bmRyb2lkX3N1cHBvcnRfc2xpZGluZ3BhbmVsYXlvdXQnLAotICAgICAgICAgICAgICAndmVyc2lv
bic6ICd2ZXJzaW9uOjJAMjguMC4wLmNyMCcsCisgICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3Zl
cnNpb246MkAyOC4wLjAuY3IxJywKICAgICAgICAgICB9LAogICAgICAgXSwKICAgICAgICdjb25k
aXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLApA
QCAtMjIxMiw3ICsyMjY1LDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAg
ICAgICB7CiAgICAgICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2Fu
ZHJvaWRfZGVwcy9saWJzL2NvbV9hbmRyb2lkX3N1cHBvcnRfc3VwcG9ydF9hbm5vdGF0aW9ucycs
Ci0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAyOC4wLjAuY3IwJywKKyAgICAg
ICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDI4LjAuMC5jcjEnLAogICAgICAgICAgIH0s
CiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3Qg
YnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0yMjIzLDcgKzIyNzYsNyBAQCBkZXBzID0gewogICAg
ICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAn
Y2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvY29tX2FuZHJvaWRfc3VwcG9y
dF9zdXBwb3J0X2NvbXBhdCcsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAy
OC4wLjAuY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDI4LjAuMC5j
cjEnLAogICAgICAgICAgIH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291
dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0yMjM0LDcgKzIyODcs
NyBAQCBkZXBzID0gewogICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAg
ICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMv
Y29tX2FuZHJvaWRfc3VwcG9ydF9zdXBwb3J0X2NvcmVfdWknLAotICAgICAgICAgICAgICAndmVy
c2lvbic6ICd2ZXJzaW9uOjJAMjguMC4wLmNyMCcsCisgICAgICAgICAgICAgICd2ZXJzaW9uJzog
J3ZlcnNpb246MkAyOC4wLjAuY3IxJywKICAgICAgICAgICB9LAogICAgICAgXSwKICAgICAgICdj
b25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0n
LApAQCAtMjI0NSw3ICsyMjk4LDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAg
ICAgICAgICB7CiAgICAgICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5
L2FuZHJvaWRfZGVwcy9saWJzL2NvbV9hbmRyb2lkX3N1cHBvcnRfc3VwcG9ydF9jb3JlX3V0aWxz
JywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDI4LjAuMC5jcjAnLAorICAg
ICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMjguMC4wLmNyMScsCiAgICAgICAgICAg
fSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5v
dCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTIyNTYsNyArMjMwOSw3IEBAIGRlcHMgPSB7CiAg
ICAgICAncGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAgICAgICAgICAncGFja2FnZSc6
ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9jb21fYW5kcm9pZF9zdXBw
b3J0X3N1cHBvcnRfZnJhZ21lbnQnLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9u
OjJAMjguMC4wLmNyMCcsCisgICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAyOC4w
LjAuY3IxJywKICAgICAgICAgICB9LAogICAgICAgXSwKICAgICAgICdjb25kaXRpb24nOiAnY2hl
Y2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLApAQCAtMjI2Nyw3ICsy
MzIwLDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAgICB7CiAgICAg
ICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9s
aWJzL2NvbV9hbmRyb2lkX3N1cHBvcnRfc3VwcG9ydF9tZWRpYV9jb21wYXQnLAotICAgICAgICAg
ICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMjguMC4wLmNyMCcsCisgICAgICAgICAgICAgICd2
ZXJzaW9uJzogJ3ZlcnNpb246MkAyOC4wLjAuY3IxJywKICAgICAgICAgICB9LAogICAgICAgXSwK
ICAgICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhf
Y2hyb21pdW0nLApAQCAtMjI3OCw3ICsyMzMxLDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNrYWdl
cyc6IFsKICAgICAgICAgICB7CiAgICAgICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3Ro
aXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL2NvbV9hbmRyb2lkX3N1cHBvcnRfc3VwcG9ydF92
NCcsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAyOC4wLjAuY3IwJywKKyAg
ICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDI4LjAuMC5jcjEnLAogICAgICAgICAg
IH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBu
b3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0yMjg5LDcgKzIzNDIsNyBAQCBkZXBzID0gewog
ICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2Un
OiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvY29tX2FuZHJvaWRfc3Vw
cG9ydF9zdXBwb3J0X3ZlY3Rvcl9kcmF3YWJsZScsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzog
J3ZlcnNpb246MkAyOC4wLjAuY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lv
bjoyQDI4LjAuMC5jcjEnLAogICAgICAgICAgIH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlv
bic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0y
MzAwLDcgKzIzNTMsNyBAQCBkZXBzID0gewogICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAg
IHsKICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9p
ZF9kZXBzL2xpYnMvY29tX2FuZHJvaWRfc3VwcG9ydF9zd2lwZXJlZnJlc2hsYXlvdXQnLAotICAg
ICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMjguMC4wLmNyMCcsCisgICAgICAgICAg
ICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAyOC4wLjAuY3IxJywKICAgICAgICAgICB9LAogICAg
ICAgXSwKICAgICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxk
X3dpdGhfY2hyb21pdW0nLApAQCAtMjMxMSw3ICsyMzY0LDcgQEAgZGVwcyA9IHsKICAgICAgICdw
YWNrYWdlcyc6IFsKICAgICAgICAgICB7CiAgICAgICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9t
aXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL2NvbV9hbmRyb2lkX3N1cHBvcnRfdHJh
bnNpdGlvbicsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAyOC4wLjAuY3Iw
JywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDI4LjAuMC5jcjEnLAogICAg
ICAgICAgIH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lk
IGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0yMzIyLDcgKzIzNzUsNyBAQCBkZXBz
ID0gewogICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3Bh
Y2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvY29tX2FuZHJv
aWRfc3VwcG9ydF92ZXJzaW9uZWRwYXJjZWxhYmxlJywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24n
OiAndmVyc2lvbjoyQDI4LjAuMC5jcjAnLAorICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJz
aW9uOjJAMjguMC4wLmNyMScsCiAgICAgICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0
aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAg
LTIzMzMsNyArMjM4Niw3IEBAIGRlcHMgPSB7CiAgICAgICAncGFja2FnZXMnOiBbCiAgICAgICAg
ICAgewogICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRy
b2lkX2RlcHMvbGlicy9jb21fYW5kcm9pZF9zdXBwb3J0X3ZpZXdwYWdlcicsCi0gICAgICAgICAg
ICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAyOC4wLjAuY3IwJywKKyAgICAgICAgICAgICAgJ3Zl
cnNpb24nOiAndmVyc2lvbjoyQDI4LjAuMC5jcjEnLAogICAgICAgICAgIH0sCiAgICAgICBdLAog
ICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9j
aHJvbWl1bScsCkBAIC0yMzQ0LDcgKzIzOTcsNyBAQCBkZXBzID0gewogICAgICAgJ3BhY2thZ2Vz
JzogWwogICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhp
cmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvY29tX2FuZHJvaWRfdG9vbHNfY29tbW9uJywKLSAg
ICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDMwLjIuMC1iZXRhMDEuY3IwJywKKyAg
ICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDMwLjIuMC1iZXRhMDEuY3IxJywKICAg
ICAgICAgICB9LAogICAgICAgXSwKICAgICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9p
ZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLApAQCAtMjM3Nyw3ICsyNDMwLDcgQEAgZGVw
cyA9IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAgICB7CiAgICAgICAgICAgICAgICdw
YWNrYWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL2NvbV9hbmRy
b2lkX3Rvb2xzX2xheW91dGxpYl9sYXlvdXRsaWJfYXBpJywKLSAgICAgICAgICAgICAgJ3ZlcnNp
b24nOiAndmVyc2lvbjoyQDMwLjIuMC1iZXRhMDEuY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNp
b24nOiAndmVyc2lvbjoyQDMwLjIuMC1iZXRhMDEuY3IxJywKICAgICAgICAgICB9LAogICAgICAg
XSwKICAgICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dp
dGhfY2hyb21pdW0nLApAQCAtMjM4OCw3ICsyNDQxLDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNr
YWdlcyc6IFsKICAgICAgICAgICB7CiAgICAgICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVt
L3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL2NvbV9hbmRyb2lkX3Rvb2xzX3Nka19jb21t
b24nLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMzAuMi4wLWJldGEwMS5j
cjAnLAorICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMzAuMi4wLWJldGEwMS5j
cjEnLAogICAgICAgICAgIH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291
dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0yMzk5LDcgKzI0NTIs
NyBAQCBkZXBzID0gewogICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAg
ICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMv
Y29tX2dpdGh1Yl9iZW5fbWFuZXNfY2FmZmVpbmVfY2FmZmVpbmUnLAotICAgICAgICAgICAgICAn
dmVyc2lvbic6ICd2ZXJzaW9uOjJAMi44LjguY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24n
OiAndmVyc2lvbjoyQDIuOC44LmNyMScsCiAgICAgICAgICAgfSwKICAgICAgIF0sCiAgICAgICAn
Y29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVt
JywKQEAgLTI0MTAsNyArMjQ2Myw3IEBAIGRlcHMgPSB7CiAgICAgICAncGFja2FnZXMnOiBbCiAg
ICAgICAgICAgewogICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0
eS9hbmRyb2lkX2RlcHMvbGlicy9jb21fZ2l0aHViX2tldmluc3Rlcm5fc29mdHdhcmVfYW5kX2Fs
Z29yaXRobXMnLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMS4wLmNyMCcs
CisgICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxLjAuY3IxJywKICAgICAgICAg
ICB9LAogICAgICAgXSwKICAgICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQg
bm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLApAQCAtMjQyMSw3ICsyNDc0LDcgQEAgZGVwcyA9IHsK
ICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAgICB7CiAgICAgICAgICAgICAgICdwYWNrYWdl
JzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL2NvbV9nb29nbGVfYW5k
cm9pZF9kYXRhdHJhbnNwb3J0X3RyYW5zcG9ydF9hcGknLAotICAgICAgICAgICAgICAndmVyc2lv
bic6ICd2ZXJzaW9uOjJAMi4yLjEuY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVy
c2lvbjoyQDIuMi4xLmNyMScsCiAgICAgICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0
aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAg
LTI0MzIsNyArMjQ4NSw3IEBAIGRlcHMgPSB7CiAgICAgICAncGFja2FnZXMnOiBbCiAgICAgICAg
ICAgewogICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRy
b2lkX2RlcHMvbGlicy9jb21fZ29vZ2xlX2FuZHJvaWRfZ21zX3BsYXlfc2VydmljZXNfYXV0aCcs
Ci0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxNy4wLjAuY3IwJywKKyAgICAg
ICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDE3LjAuMC5jcjEnLAogICAgICAgICAgIH0s
CiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3Qg
YnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0yNDQzLDcgKzI0OTYsNyBAQCBkZXBzID0gewogICAg
ICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAn
Y2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvY29tX2dvb2dsZV9hbmRyb2lk
X2dtc19wbGF5X3NlcnZpY2VzX2F1dGhfYXBpX3Bob25lJywKLSAgICAgICAgICAgICAgJ3ZlcnNp
b24nOiAndmVyc2lvbjoyQDE3LjUuMC5jcjAnLAorICAgICAgICAgICAgICAndmVyc2lvbic6ICd2
ZXJzaW9uOjJAMTcuNS4wLmNyMScsCiAgICAgICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnY29u
ZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywK
QEAgLTI0NTQsNyArMjUwNyw3IEBAIGRlcHMgPSB7CiAgICAgICAncGFja2FnZXMnOiBbCiAgICAg
ICAgICAgewogICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9h
bmRyb2lkX2RlcHMvbGlicy9jb21fZ29vZ2xlX2FuZHJvaWRfZ21zX3BsYXlfc2VydmljZXNfYXV0
aF9iYXNlJywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDE3LjAuMC5jcjAn
LAorICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMTcuMC4wLmNyMScsCiAgICAg
ICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQg
YW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTI0NjUsNyArMjUxOCw3IEBAIGRlcHMg
PSB7CiAgICAgICAncGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAgICAgICAgICAncGFj
a2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9jb21fZ29vZ2xl
X2FuZHJvaWRfZ21zX3BsYXlfc2VydmljZXNfYmFzZScsCi0gICAgICAgICAgICAgICd2ZXJzaW9u
JzogJ3ZlcnNpb246MkAxNy41LjAuY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVy
c2lvbjoyQDE3LjUuMC5jcjEnLAogICAgICAgICAgIH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRp
dGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBA
IC0yNDc2LDcgKzI1MjksNyBAQCBkZXBzID0gewogICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAg
ICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5k
cm9pZF9kZXBzL2xpYnMvY29tX2dvb2dsZV9hbmRyb2lkX2dtc19wbGF5X3NlcnZpY2VzX2Jhc2Vt
ZW50JywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDE3LjUuMC5jcjAnLAor
ICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMTcuNS4wLmNyMScsCiAgICAgICAg
ICAgfSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5k
IG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTI0ODcsNyArMjU0MCw3IEBAIGRlcHMgPSB7
CiAgICAgICAncGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAgICAgICAgICAncGFja2Fn
ZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9jb21fZ29vZ2xlX2Fu
ZHJvaWRfZ21zX3BsYXlfc2VydmljZXNfY2FzdCcsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzog
J3ZlcnNpb246MkAxNy4wLjAuY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lv
bjoyQDE3LjAuMC5jcjEnLAogICAgICAgICAgIH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlv
bic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0y
NDk4LDcgKzI1NTEsNyBAQCBkZXBzID0gewogICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAg
IHsKICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9p
ZF9kZXBzL2xpYnMvY29tX2dvb2dsZV9hbmRyb2lkX2dtc19wbGF5X3NlcnZpY2VzX2Nhc3RfZnJh
bWV3b3JrJywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDE3LjAuMC5jcjAn
LAorICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMTcuMC4wLmNyMScsCiAgICAg
ICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQg
YW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTI1MDksNyArMjU2Miw3IEBAIGRlcHMg
PSB7CiAgICAgICAncGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAgICAgICAgICAncGFj
a2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9jb21fZ29vZ2xl
X2FuZHJvaWRfZ21zX3BsYXlfc2VydmljZXNfY2xlYXJjdXQnLAotICAgICAgICAgICAgICAndmVy
c2lvbic6ICd2ZXJzaW9uOjJAMTcuMC4wLmNyMCcsCisgICAgICAgICAgICAgICd2ZXJzaW9uJzog
J3ZlcnNpb246MkAxNy4wLjAuY3IxJywKICAgICAgICAgICB9LAogICAgICAgXSwKICAgICAgICdj
b25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0n
LApAQCAtMjUyMCw3ICsyNTczLDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAg
ICAgICAgICB7CiAgICAgICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5
L2FuZHJvaWRfZGVwcy9saWJzL2NvbV9nb29nbGVfYW5kcm9pZF9nbXNfcGxheV9zZXJ2aWNlc19j
bG91ZF9tZXNzYWdpbmcnLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMTYu
MC4wLmNyMCcsCisgICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxNi4wLjAuY3Ix
JywKICAgICAgICAgICB9LAogICAgICAgXSwKICAgICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRf
YW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLApAQCAtMjUzMSw3ICsyNTg0LDcg
QEAgZGVwcyA9IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAgICB7CiAgICAgICAgICAg
ICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL2Nv
bV9nb29nbGVfYW5kcm9pZF9nbXNfcGxheV9zZXJ2aWNlc19maWRvJywKLSAgICAgICAgICAgICAg
J3ZlcnNpb24nOiAndmVyc2lvbjoyQDE5LjAuMC1iZXRhLmNyMCcsCisgICAgICAgICAgICAgICd2
ZXJzaW9uJzogJ3ZlcnNpb246MkAxOS4wLjAtYmV0YS5jcjEnLAogICAgICAgICAgIH0sCiAgICAg
ICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRf
d2l0aF9jaHJvbWl1bScsCkBAIC0yNTQyLDcgKzI1OTUsNyBAQCBkZXBzID0gewogICAgICAgJ3Bh
Y2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21p
dW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvY29tX2dvb2dsZV9hbmRyb2lkX2dtc19w
bGF5X3NlcnZpY2VzX2ZsYWdzJywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoy
QDE3LjAuMC5jcjAnLAorICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMTcuMC4w
LmNyMScsCiAgICAgICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNr
b3V0X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTI1NTMsNyArMjYw
Niw3IEBAIGRlcHMgPSB7CiAgICAgICAncGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAg
ICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGli
cy9jb21fZ29vZ2xlX2FuZHJvaWRfZ21zX3BsYXlfc2VydmljZXNfZ2NtJywKLSAgICAgICAgICAg
ICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDE3LjAuMC5jcjAnLAorICAgICAgICAgICAgICAndmVy
c2lvbic6ICd2ZXJzaW9uOjJAMTcuMC4wLmNyMScsCiAgICAgICAgICAgfSwKICAgICAgIF0sCiAg
ICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2No
cm9taXVtJywKQEAgLTI1NjQsNyArMjYxNyw3IEBAIGRlcHMgPSB7CiAgICAgICAncGFja2FnZXMn
OiBbCiAgICAgICAgICAgewogICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGly
ZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9jb21fZ29vZ2xlX2FuZHJvaWRfZ21zX3BsYXlfc2Vy
dmljZXNfaWlkJywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDE3LjAuMC5j
cjAnLAorICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMTcuMC4wLmNyMScsCiAg
ICAgICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJv
aWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTI1NzUsNyArMjYyOCw3IEBAIGRl
cHMgPSB7CiAgICAgICAncGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAgICAgICAgICAn
cGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9jb21fZ29v
Z2xlX2FuZHJvaWRfZ21zX3BsYXlfc2VydmljZXNfaW5zdGFudGFwcHMnLAotICAgICAgICAgICAg
ICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMTcuMC4wLmNyMCcsCisgICAgICAgICAgICAgICd2ZXJz
aW9uJzogJ3ZlcnNpb246MkAxNy4wLjAuY3IxJywKICAgICAgICAgICB9LAogICAgICAgXSwKICAg
ICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hy
b21pdW0nLApAQCAtMjU4Niw3ICsyNjM5LDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNrYWdlcyc6
IFsKICAgICAgICAgICB7CiAgICAgICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3RoaXJk
X3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL2NvbV9nb29nbGVfYW5kcm9pZF9nbXNfcGxheV9zZXJ2
aWNlc19sb2NhdGlvbicsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxNy4w
LjAuY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDE3LjAuMC5jcjEn
LAogICAgICAgICAgIH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9h
bmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0yNTk3LDcgKzI2NTAsNyBA
QCBkZXBzID0gewogICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAgICAg
ICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvY29t
X2dvb2dsZV9hbmRyb2lkX2dtc19wbGF5X3NlcnZpY2VzX3BoZW5vdHlwZScsCi0gICAgICAgICAg
ICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxNy4wLjAuY3IwJywKKyAgICAgICAgICAgICAgJ3Zl
cnNpb24nOiAndmVyc2lvbjoyQDE3LjAuMC5jcjEnLAogICAgICAgICAgIH0sCiAgICAgICBdLAog
ICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9j
aHJvbWl1bScsCkBAIC0yNjA4LDcgKzI2NjEsNyBAQCBkZXBzID0gewogICAgICAgJ3BhY2thZ2Vz
JzogWwogICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhp
cmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvY29tX2dvb2dsZV9hbmRyb2lkX2dtc19wbGF5X3Nl
cnZpY2VzX3BsYWNlc19wbGFjZXJlcG9ydCcsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3Zl
cnNpb246MkAxNy4wLjAuY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoy
QDE3LjAuMC5jcjEnLAogICAgICAgICAgIH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6
ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0yNjE5
LDcgKzI2NzIsNyBAQCBkZXBzID0gewogICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsK
ICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9k
ZXBzL2xpYnMvY29tX2dvb2dsZV9hbmRyb2lkX2dtc19wbGF5X3NlcnZpY2VzX3N0YXRzJywKLSAg
ICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDE3LjAuMC5jcjAnLAorICAgICAgICAg
ICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMTcuMC4wLmNyMScsCiAgICAgICAgICAgfSwKICAg
ICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWls
ZF93aXRoX2Nocm9taXVtJywKQEAgLTI2MzAsNyArMjY4Myw3IEBAIGRlcHMgPSB7CiAgICAgICAn
cGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJv
bWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9jb21fZ29vZ2xlX2FuZHJvaWRfZ21z
X3BsYXlfc2VydmljZXNfdGFza3MnLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9u
OjJAMTcuMi4wLmNyMCcsCisgICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxNy4y
LjAuY3IxJywKICAgICAgICAgICB9LAogICAgICAgXSwKICAgICAgICdjb25kaXRpb24nOiAnY2hl
Y2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLApAQCAtMjY0MSw3ICsy
Njk0LDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAgICB7CiAgICAg
ICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9s
aWJzL2NvbV9nb29nbGVfYW5kcm9pZF9nbXNfcGxheV9zZXJ2aWNlc192aXNpb24nLAotICAgICAg
ICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMTguMC4wLmNyMCcsCisgICAgICAgICAgICAg
ICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxOC4wLjAuY3IxJywKICAgICAgICAgICB9LAogICAgICAg
XSwKICAgICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dp
dGhfY2hyb21pdW0nLApAQCAtMjY1Miw3ICsyNzA1LDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNr
YWdlcyc6IFsKICAgICAgICAgICB7CiAgICAgICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVt
L3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL2NvbV9nb29nbGVfYW5kcm9pZF9nbXNfcGxh
eV9zZXJ2aWNlc192aXNpb25fY29tbW9uJywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVy
c2lvbjoyQDE4LjAuMC5jcjAnLAorICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJA
MTguMC4wLmNyMScsCiAgICAgICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzog
J2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTI2NjMs
NyArMjcxNiw3IEBAIGRlcHMgPSB7CiAgICAgICAncGFja2FnZXMnOiBbCiAgICAgICAgICAgewog
ICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2Rl
cHMvbGlicy9jb21fZ29vZ2xlX2FuZHJvaWRfbWF0ZXJpYWxfbWF0ZXJpYWwnLAotICAgICAgICAg
ICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMS42LjAtYWxwaGEwMS5jcjAnLAorICAgICAgICAg
ICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMS42LjAtYWxwaGEwMS5jcjEnLAogICAgICAgICAg
IH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBu
b3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0yNjc0LDcgKzI3MjcsNyBAQCBkZXBzID0gewog
ICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2Un
OiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvY29tX2dvb2dsZV9hbmRy
b2lkX3BsYXlfY29yZScsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxLjEw
LjAuY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDEuMTAuMC5jcjEn
LAogICAgICAgICAgIH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9h
bmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0yNjg1LDcgKzI3MzgsNyBA
QCBkZXBzID0gewogICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAgICAg
ICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvY29t
X2dvb2dsZV9hdXRvX2F1dG9fY29tbW9uJywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVy
c2lvbjoyQDEuMS4yLmNyMCcsCisgICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAx
LjIuMS5jcjEnLAogICAgICAgICAgIH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdj
aGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0yNjk2LDcg
KzI3NDksNyBAQCBkZXBzID0gewogICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAg
ICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBz
L2xpYnMvY29tX2dvb2dsZV9hdXRvX3NlcnZpY2VfYXV0b19zZXJ2aWNlJywKLSAgICAgICAgICAg
ICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDEuMC1yYzYuY3IwJywKKyAgICAgICAgICAgICAgJ3Zl
cnNpb24nOiAndmVyc2lvbjoyQDEuMC1yYzYuY3IxJywKICAgICAgICAgICB9LAogICAgICAgXSwK
ICAgICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhf
Y2hyb21pdW0nLApAQCAtMjcwNyw3ICsyNzYwLDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNrYWdl
cyc6IFsKICAgICAgICAgICB7CiAgICAgICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3Ro
aXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL2NvbV9nb29nbGVfYXV0b19zZXJ2aWNlX2F1dG9f
c2VydmljZV9hbm5vdGF0aW9ucycsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246
MkAxLjAtcmM2LmNyMCcsCisgICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxLjAt
cmM2LmNyMScsCiAgICAgICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2No
ZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTI3MTgsMTgg
KzI3NzEsNyBAQCBkZXBzID0gewogICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAg
ICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBz
L2xpYnMvY29tX2dvb2dsZV9hdXRvX3ZhbHVlX2F1dG9fdmFsdWVfYW5ub3RhdGlvbnMnLAotICAg
ICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMS43LmNyMCcsCi0gICAgICAgICAgfSwK
LSAgICAgIF0sCi0gICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBi
dWlsZF93aXRoX2Nocm9taXVtJywKLSAgICAgICdkZXBfdHlwZSc6ICdjaXBkJywKLSAgfSwKLQot
ICAndGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvY29tX2dvb2dsZV9jb2RlX2ZpbmRidWdz
X2pmb3JtYXRzdHJpbmcnOiB7Ci0gICAgICAncGFja2FnZXMnOiBbCi0gICAgICAgICAgewotICAg
ICAgICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMv
bGlicy9jb21fZ29vZ2xlX2NvZGVfZmluZGJ1Z3NfamZvcm1hdHN0cmluZycsCi0gICAgICAgICAg
ICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAzLjAuMC5jcjAnLAorICAgICAgICAgICAgICAndmVy
c2lvbic6ICd2ZXJzaW9uOjJAMS45LmNyMScsCiAgICAgICAgICAgfSwKICAgICAgIF0sCiAgICAg
ICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9t
aXVtJywKQEAgLTI3NDAsNyArMjc4Miw3IEBAIGRlcHMgPSB7CiAgICAgICAncGFja2FnZXMnOiBb
CiAgICAgICAgICAgewogICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9w
YXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9jb21fZ29vZ2xlX2NvZGVfZmluZGJ1Z3NfanNyMzA1JywK
LSAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDMuMC4yLmNyMCcsCisgICAgICAg
ICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAzLjAuMi5jcjEnLAogICAgICAgICAgIH0sCiAg
ICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVp
bGRfd2l0aF9jaHJvbWl1bScsCkBAIC0yNzUxLDcgKzI3OTMsNyBAQCBkZXBzID0gewogICAgICAg
J3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hy
b21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvY29tX2dvb2dsZV9jb2RlX2dzb25f
Z3NvbicsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAyLjguMC5jcjAnLAor
ICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMi44LjAuY3IxJywKICAgICAgICAg
ICB9LAogICAgICAgXSwKICAgICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQg
bm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLApAQCAtMjc2Miw3ICsyODA0LDcgQEAgZGVwcyA9IHsK
ICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAgICB7CiAgICAgICAgICAgICAgICdwYWNrYWdl
JzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL2NvbV9nb29nbGVfZGFn
Z2VyX2RhZ2dlcicsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAyLjMwLmNy
MCcsCisgICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAyLjMwLmNyMScsCiAgICAg
ICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQg
YW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTI3NzMsNyArMjgxNSw3IEBAIGRlcHMg
PSB7CiAgICAgICAncGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAgICAgICAgICAncGFj
a2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9jb21fZ29vZ2xl
X2RhZ2dlcl9kYWdnZXJfY29tcGlsZXInLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJz
aW9uOjJAMi4zMC5jcjAnLAorICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMi4z
MC5jcjEnLAogICAgICAgICAgIH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVj
a291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0yNzg0LDcgKzI4
MjYsNyBAQCBkZXBzID0gewogICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAg
ICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xp
YnMvY29tX2dvb2dsZV9kYWdnZXJfZGFnZ2VyX3Byb2R1Y2VycycsCi0gICAgICAgICAgICAgICd2
ZXJzaW9uJzogJ3ZlcnNpb246MkAyLjMwLmNyMCcsCisgICAgICAgICAgICAgICd2ZXJzaW9uJzog
J3ZlcnNpb246MkAyLjMwLmNyMScsCiAgICAgICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnY29u
ZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywK
QEAgLTI3OTUsNyArMjgzNyw3IEBAIGRlcHMgPSB7CiAgICAgICAncGFja2FnZXMnOiBbCiAgICAg
ICAgICAgewogICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9h
bmRyb2lkX2RlcHMvbGlicy9jb21fZ29vZ2xlX2RhZ2dlcl9kYWdnZXJfc3BpJywKLSAgICAgICAg
ICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDIuMzAuY3IwJywKKyAgICAgICAgICAgICAgJ3Zl
cnNpb24nOiAndmVyc2lvbjoyQDIuMzAuY3IxJywKICAgICAgICAgICB9LAogICAgICAgXSwKICAg
ICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hy
b21pdW0nLApAQCAtMjgwNiw3ICsyODQ4LDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNrYWdlcyc6
IFsKICAgICAgICAgICB7CiAgICAgICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3RoaXJk
X3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL2NvbV9nb29nbGVfZXJyb3Jwcm9uZV9lcnJvcl9wcm9u
ZV9hbm5vdGF0aW9uJywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDIuMTAu
MC5jcjAnLAorICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMi4xMS4wLmNyMScs
CiAgICAgICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2Fu
ZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTI4MTcsNyArMjg1OSw3IEBA
IGRlcHMgPSB7CiAgICAgICAncGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAgICAgICAg
ICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9jb21f
Z29vZ2xlX2Vycm9ycHJvbmVfZXJyb3JfcHJvbmVfYW5ub3RhdGlvbnMnLAotICAgICAgICAgICAg
ICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMi4xMC4wLmNyMCcsCisgICAgICAgICAgICAgICd2ZXJz
aW9uJzogJ3ZlcnNpb246MkAyLjExLjAuY3IxJywKICAgICAgICAgICB9LAogICAgICAgXSwKICAg
ICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hy
b21pdW0nLApAQCAtMjgyOCw3ICsyODcwLDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNrYWdlcyc6
IFsKICAgICAgICAgICB7CiAgICAgICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3RoaXJk
X3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL2NvbV9nb29nbGVfZXJyb3Jwcm9uZV9lcnJvcl9wcm9u
ZV9jaGVja19hcGknLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMi4xMC4w
LmNyMCcsCisgICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAyLjExLjAuY3IxJywK
ICAgICAgICAgICB9LAogICAgICAgXSwKICAgICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5k
cm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLApAQCAtMjgzOSw3ICsyODgxLDcgQEAg
ZGVwcyA9IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAgICB7CiAgICAgICAgICAgICAg
ICdwYWNrYWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL2NvbV9n
b29nbGVfZXJyb3Jwcm9uZV9lcnJvcl9wcm9uZV9jb3JlJywKLSAgICAgICAgICAgICAgJ3ZlcnNp
b24nOiAndmVyc2lvbjoyQDIuMTAuMC5jcjAnLAorICAgICAgICAgICAgICAndmVyc2lvbic6ICd2
ZXJzaW9uOjJAMi4xMS4wLmNyMScsCiAgICAgICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnY29u
ZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywK
QEAgLTI4NTAsNyArMjg5Miw3IEBAIGRlcHMgPSB7CiAgICAgICAncGFja2FnZXMnOiBbCiAgICAg
ICAgICAgewogICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9h
bmRyb2lkX2RlcHMvbGlicy9jb21fZ29vZ2xlX2Vycm9ycHJvbmVfZXJyb3JfcHJvbmVfdHlwZV9h
bm5vdGF0aW9ucycsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAyLjEwLjAu
Y3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDIuMTEuMC5jcjEnLAog
ICAgICAgICAgIH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRy
b2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0yODYxLDcgKzI5MDMsNyBAQCBk
ZXBzID0gewogICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAgICAgICAg
J3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvY29tX2dv
b2dsZV9lcnJvcnByb25lX2phdmFjJywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lv
bjoyQDkrMTgxLXI0MTczLTEuY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lv
bjoyQDkrMTgxLXI0MTczLTEuY3IxJywKICAgICAgICAgICB9LAogICAgICAgXSwKICAgICAgICdj
b25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0n
LApAQCAtMjg3Miw3ICsyOTE0LDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAg
ICAgICAgICB7CiAgICAgICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5
L2FuZHJvaWRfZGVwcy9saWJzL2NvbV9nb29nbGVfZXJyb3Jwcm9uZV9qYXZhY19zaGFkZWQnLAot
ICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAOS1kZXYtcjQwMjMtMy5jcjAnLAor
ICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAOS1kZXYtcjQwMjMtMy5jcjEnLAog
ICAgICAgICAgIH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRy
b2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0yODgzLDcgKzI5MjUsNyBAQCBk
ZXBzID0gewogICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAgICAgICAg
J3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvY29tX2dv
b2dsZV9maXJlYmFzZV9maXJlYmFzZV9hbm5vdGF0aW9ucycsCi0gICAgICAgICAgICAgICd2ZXJz
aW9uJzogJ3ZlcnNpb246MkAxNi4wLjAuY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAn
dmVyc2lvbjoyQDE2LjAuMC5jcjEnLAogICAgICAgICAgIH0sCiAgICAgICBdLAogICAgICAgJ2Nv
bmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScs
CkBAIC0yODk0LDcgKzI5MzYsNyBAQCBkZXBzID0gewogICAgICAgJ3BhY2thZ2VzJzogWwogICAg
ICAgICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkv
YW5kcm9pZF9kZXBzL2xpYnMvY29tX2dvb2dsZV9maXJlYmFzZV9maXJlYmFzZV9jb21tb24nLAot
ICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMTkuNS4wLmNyMCcsCisgICAgICAg
ICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxOS41LjAuY3IxJywKICAgICAgICAgICB9LAog
ICAgICAgXSwKICAgICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1
aWxkX3dpdGhfY2hyb21pdW0nLApAQCAtMjkwNSw3ICsyOTQ3LDcgQEAgZGVwcyA9IHsKICAgICAg
ICdwYWNrYWdlcyc6IFsKICAgICAgICAgICB7CiAgICAgICAgICAgICAgICdwYWNrYWdlJzogJ2No
cm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL2NvbV9nb29nbGVfZmlyZWJhc2Vf
ZmlyZWJhc2VfY29tcG9uZW50cycsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246
MkAxNi4xLjAuY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDE2LjEu
MC5jcjEnLAogICAgICAgICAgIH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVj
a291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0yOTE2LDcgKzI5
NTgsNyBAQCBkZXBzID0gewogICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAg
ICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xp
YnMvY29tX2dvb2dsZV9maXJlYmFzZV9maXJlYmFzZV9lbmNvZGVycycsCi0gICAgICAgICAgICAg
ICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxNi4xLjAuY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNp
b24nOiAndmVyc2lvbjoyQDE2LjEuMC5jcjEnLAogICAgICAgICAgIH0sCiAgICAgICBdLAogICAg
ICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJv
bWl1bScsCkBAIC0yOTI3LDcgKzI5NjksNyBAQCBkZXBzID0gewogICAgICAgJ3BhY2thZ2VzJzog
WwogICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRf
cGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvY29tX2dvb2dsZV9maXJlYmFzZV9maXJlYmFzZV9lbmNv
ZGVyc19qc29uJywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDE3LjEuMC5j
cjAnLAorICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMTcuMS4wLmNyMScsCiAg
ICAgICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJv
aWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTI5MzgsNyArMjk4MCw3IEBAIGRl
cHMgPSB7CiAgICAgICAncGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAgICAgICAgICAn
cGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9jb21fZ29v
Z2xlX2ZpcmViYXNlX2ZpcmViYXNlX2lpZCcsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3Zl
cnNpb246MkAyMS4wLjEuY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoy
QDIxLjAuMS5jcjEnLAogICAgICAgICAgIH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6
ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0yOTQ5
LDcgKzI5OTEsNyBAQCBkZXBzID0gewogICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsK
ICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9k
ZXBzL2xpYnMvY29tX2dvb2dsZV9maXJlYmFzZV9maXJlYmFzZV9paWRfaW50ZXJvcCcsCi0gICAg
ICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxNy4wLjAuY3IwJywKKyAgICAgICAgICAg
ICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDE3LjAuMC5jcjEnLAogICAgICAgICAgIH0sCiAgICAg
ICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRf
d2l0aF9jaHJvbWl1bScsCkBAIC0yOTYwLDcgKzMwMDIsNyBAQCBkZXBzID0gewogICAgICAgJ3Bh
Y2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21p
dW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvY29tX2dvb2dsZV9maXJlYmFzZV9maXJl
YmFzZV9pbnN0YWxsYXRpb25zJywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoy
QDE2LjMuNS5jcjAnLAorICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMTYuMy41
LmNyMScsCiAgICAgICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNr
b3V0X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTI5NzEsNyArMzAx
Myw3IEBAIGRlcHMgPSB7CiAgICAgICAncGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAg
ICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGli
cy9jb21fZ29vZ2xlX2ZpcmViYXNlX2ZpcmViYXNlX2luc3RhbGxhdGlvbnNfaW50ZXJvcCcsCi0g
ICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxNi4wLjEuY3IwJywKKyAgICAgICAg
ICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDE2LjAuMS5jcjEnLAogICAgICAgICAgIH0sCiAg
ICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVp
bGRfd2l0aF9jaHJvbWl1bScsCkBAIC0yOTgyLDcgKzMwMjQsNyBAQCBkZXBzID0gewogICAgICAg
J3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hy
b21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvY29tX2dvb2dsZV9maXJlYmFzZV9m
aXJlYmFzZV9tZWFzdXJlbWVudF9jb25uZWN0b3InLAotICAgICAgICAgICAgICAndmVyc2lvbic6
ICd2ZXJzaW9uOjJAMTguMC4wLmNyMCcsCisgICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNp
b246MkAxOC4wLjAuY3IxJywKICAgICAgICAgICB9LAogICAgICAgXSwKICAgICAgICdjb25kaXRp
b24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLApAQCAt
Mjk5Myw3ICszMDM1LDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAg
ICB7CiAgICAgICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJv
aWRfZGVwcy9saWJzL2NvbV9nb29nbGVfZmlyZWJhc2VfZmlyZWJhc2VfbWVzc2FnaW5nJywKLSAg
ICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDIxLjAuMS5jcjAnLAorICAgICAgICAg
ICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMjEuMC4xLmNyMScsCiAgICAgICAgICAgfSwKICAg
ICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWls
ZF93aXRoX2Nocm9taXVtJywKQEAgLTMwMDQsNyArMzA0Niw3IEBAIGRlcHMgPSB7CiAgICAgICAn
cGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJv
bWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9jb21fZ29vZ2xlX2ZsYXRidWZmZXJz
X2ZsYXRidWZmZXJzX2phdmEnLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJA
Mi4wLjMuY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDIuMC4zLmNy
MScsCiAgICAgICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0
X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTMwMTUsNyArMzA1Nyw3
IEBAIGRlcHMgPSB7CiAgICAgICAncGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAgICAg
ICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9j
b21fZ29vZ2xlX2dvb2dsZWphdmFmb3JtYXRfZ29vZ2xlX2phdmFfZm9ybWF0JywKLSAgICAgICAg
ICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDEuNS5jcjAnLAorICAgICAgICAgICAgICAndmVy
c2lvbic6ICd2ZXJzaW9uOjJAMS41LmNyMScsCiAgICAgICAgICAgfSwKICAgICAgIF0sCiAgICAg
ICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9t
aXVtJywKQEAgLTMwMjYsNyArMzA2OCw3IEBAIGRlcHMgPSB7CiAgICAgICAncGFja2FnZXMnOiBb
CiAgICAgICAgICAgewogICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9w
YXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9jb21fZ29vZ2xlX2d1YXZhX2ZhaWx1cmVhY2Nlc3MnLAot
ICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMS4wLjEuY3IwJywKKyAgICAgICAg
ICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDEuMC4xLmNyMScsCiAgICAgICAgICAgfSwKICAg
ICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWls
ZF93aXRoX2Nocm9taXVtJywKQEAgLTMwMzcsNyArMzA3OSw3IEBAIGRlcHMgPSB7CiAgICAgICAn
cGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJv
bWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9jb21fZ29vZ2xlX2d1YXZhX2d1YXZh
JywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDMxLjAtanJlLmNyMCcsCisg
ICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAzMS4wLjEtanJlLmNyMScsCiAgICAg
ICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQg
YW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTMwNDgsNyArMzA5MCw3IEBAIGRlcHMg
PSB7CiAgICAgICAncGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAgICAgICAgICAncGFj
a2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9jb21fZ29vZ2xl
X2d1YXZhX2d1YXZhX2FuZHJvaWQnLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9u
OjJAMzEuMC1hbmRyb2lkLmNyMCcsCisgICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246
MkAzMS4wLWFuZHJvaWQuY3IxJywKICAgICAgICAgICB9LAogICAgICAgXSwKICAgICAgICdjb25k
aXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLApA
QCAtMzA1OSw3ICszMTAxLDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAg
ICAgICB7CiAgICAgICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2Fu
ZHJvaWRfZGVwcy9saWJzL2NvbV9nb29nbGVfZ3VhdmFfbGlzdGVuYWJsZWZ1dHVyZScsCi0gICAg
ICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxLjAuY3IwJywKKyAgICAgICAgICAgICAg
J3ZlcnNpb24nOiAndmVyc2lvbjoyQDEuMC5jcjEnLAogICAgICAgICAgIH0sCiAgICAgICBdLAog
ICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9j
aHJvbWl1bScsCkBAIC0zMDcwLDcgKzMxMTIsNyBAQCBkZXBzID0gewogICAgICAgJ3BhY2thZ2Vz
JzogWwogICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhp
cmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvY29tX2dvb2dsZV9qMm9iamNfajJvYmpjX2Fubm90
YXRpb25zJywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDEuMy5jcjAnLAor
ICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMS4zLmNyMScsCiAgICAgICAgICAg
fSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5v
dCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTMwODEsNyArMzEyMyw3IEBAIGRlcHMgPSB7CiAg
ICAgICAncGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAgICAgICAgICAncGFja2FnZSc6
ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9jb21fZ29vZ2xlX3Byb3Rv
YnVmX3Byb3RvYnVmX2phdmEnLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJA
My40LjAuY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDMuMTkuMi5j
cjEnLAogICAgICAgICAgIH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291
dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0zMDkyLDcgKzMxMzQs
NyBAQCBkZXBzID0gewogICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAg
ICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMv
Y29tX2dvb2dsZV9wcm90b2J1Zl9wcm90b2J1Zl9qYXZhbGl0ZScsCi0gICAgICAgICAgICAgICd2
ZXJzaW9uJzogJ3ZlcnNpb246MkAzLjE5LjMuY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24n
OiAndmVyc2lvbjoyQDMuMTkuMy5jcjEnLAogICAgICAgICAgIH0sCiAgICAgICBdLAogICAgICAg
J2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1
bScsCkBAIC0zMTAzLDcgKzMxNDUsNyBAQCBkZXBzID0gewogICAgICAgJ3BhY2thZ2VzJzogWwog
ICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFy
dHkvYW5kcm9pZF9kZXBzL2xpYnMvY29tX2dvb2dsZWNvZGVfamF2YV9kaWZmX3V0aWxzX2RpZmZ1
dGlscycsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxLjMuMC5jcjAnLAor
ICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMS4zLjAuY3IxJywKICAgICAgICAg
ICB9LAogICAgICAgXSwKICAgICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQg
bm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLApAQCAtMzExNCw3ICszMTU2LDcgQEAgZGVwcyA9IHsK
ICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAgICB7CiAgICAgICAgICAgICAgICdwYWNrYWdl
JzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL2NvbV9zcXVhcmV1cF9q
YXZhcG9ldCcsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxLjEzLjAuY3Iw
JywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDEuMTMuMC5jcjEnLAogICAg
ICAgICAgIH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lk
IGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0zMTI1LDcgKzMxNjcsNyBAQCBkZXBz
ID0gewogICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3Bh
Y2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvY29tX3NxdWFy
ZXVwX2phdmF3cml0ZXInLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMi4x
LjEuY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDIuMS4xLmNyMScs
CiAgICAgICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2Fu
ZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTMxMzYsNyArMzE3OCw3IEBA
IGRlcHMgPSB7CiAgICAgICAncGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAgICAgICAg
ICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9pb19n
aXRodWJfamF2YV9kaWZmX3V0aWxzX2phdmFfZGlmZl91dGlscycsCi0gICAgICAgICAgICAgICd2
ZXJzaW9uJzogJ3ZlcnNpb246MkA0LjAuY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAn
dmVyc2lvbjoyQDQuMC5jcjEnLAogICAgICAgICAgIH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRp
dGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBA
IC0zMTQ3LDcgKzMxODksNyBAQCBkZXBzID0gewogICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAg
ICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5k
cm9pZF9kZXBzL2xpYnMvamF2YXhfYW5ub3RhdGlvbl9qYXZheF9hbm5vdGF0aW9uX2FwaScsCi0g
ICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxLjMuMi5jcjAnLAorICAgICAgICAg
ICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMS4zLjIuY3IxJywKICAgICAgICAgICB9LAogICAg
ICAgXSwKICAgICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxk
X3dpdGhfY2hyb21pdW0nLApAQCAtMzE1OCw3ICszMjAwLDcgQEAgZGVwcyA9IHsKICAgICAgICdw
YWNrYWdlcyc6IFsKICAgICAgICAgICB7CiAgICAgICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9t
aXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL2phdmF4X2Fubm90YXRpb25fanNyMjUw
X2FwaScsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxLjAuY3IwJywKKyAg
ICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDEuMC5jcjEnLAogICAgICAgICAgIH0s
CiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3Qg
YnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0zMTY5LDI5ICszMjExLDcgQEAgZGVwcyA9IHsKICAg
ICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAgICB7CiAgICAgICAgICAgICAgICdwYWNrYWdlJzog
J2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL2phdmF4X2luamVjdF9qYXZh
eF9pbmplY3QnLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMS5jcjAnLAot
ICAgICAgICAgIH0sCi0gICAgICBdLAotICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRy
b2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCi0gICAgICAnZGVwX3R5cGUnOiAnY2lw
ZCcsCi0gIH0sCi0KLSAgJ3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL25la29odG1sX25l
a29odG1sJzogewotICAgICAgJ3BhY2thZ2VzJzogWwotICAgICAgICAgIHsKLSAgICAgICAgICAg
ICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvbmVr
b2h0bWxfbmVrb2h0bWwnLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMS45
LjYuMi5jcjAnLAotICAgICAgICAgIH0sCi0gICAgICBdLAotICAgICAgJ2NvbmRpdGlvbic6ICdj
aGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCi0gICAgICAnZGVw
X3R5cGUnOiAnY2lwZCcsCi0gIH0sCi0KLSAgJ3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJz
L25la29odG1sX3hlcmNlc21pbmltYWwnOiB7Ci0gICAgICAncGFja2FnZXMnOiBbCi0gICAgICAg
ICAgewotICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRy
b2lkX2RlcHMvbGlicy9uZWtvaHRtbF94ZXJjZXNtaW5pbWFsJywKLSAgICAgICAgICAgICAgJ3Zl
cnNpb24nOiAndmVyc2lvbjoyQDEuOS42LjIuY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24n
OiAndmVyc2lvbjoyQDEuY3IxJywKICAgICAgICAgICB9LAogICAgICAgXSwKICAgICAgICdjb25k
aXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLApA
QCAtMzIwMiw3ICszMjIyLDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAg
ICAgICB7CiAgICAgICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2Fu
ZHJvaWRfZGVwcy9saWJzL25ldF9sdGd0X2dyYWRsZV9pbmNhcF9pbmNhcCcsCi0gICAgICAgICAg
ICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAwLjIuY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNp
b24nOiAndmVyc2lvbjoyQDAuMi5jcjEnLAogICAgICAgICAgIH0sCiAgICAgICBdLAogICAgICAg
J2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1
bScsCkBAIC0zMjEzLDE4MyArMzIzMyw3IEBAIGRlcHMgPSB7CiAgICAgICAncGFja2FnZXMnOiBb
CiAgICAgICAgICAgewogICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9w
YXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9uZXRfc2Zfa3htbF9reG1sMicsCi0gICAgICAgICAgICAg
ICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAyLjMuMC5jcjAnLAotICAgICAgICAgIH0sCi0gICAgICBd
LAotICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0
aF9jaHJvbWl1bScsCi0gICAgICAnZGVwX3R5cGUnOiAnY2lwZCcsCi0gIH0sCi0KLSAgJ3RoaXJk
X3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL29yZ19hcGFjaGVfYW50X2FudCc6IHsKLSAgICAgICdw
YWNrYWdlcyc6IFsKLSAgICAgICAgICB7Ci0gICAgICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9t
aXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL29yZ19hcGFjaGVfYW50X2FudCcsCi0g
ICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxLjguMC5jcjAnLAotICAgICAgICAg
IH0sCi0gICAgICBdLAotICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBu
b3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCi0gICAgICAnZGVwX3R5cGUnOiAnY2lwZCcsCi0gIH0s
Ci0KLSAgJ3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL29yZ19hcGFjaGVfYW50X2FudF9s
YXVuY2hlcic6IHsKLSAgICAgICdwYWNrYWdlcyc6IFsKLSAgICAgICAgICB7Ci0gICAgICAgICAg
ICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL29y
Z19hcGFjaGVfYW50X2FudF9sYXVuY2hlcicsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3Zl
cnNpb246MkAxLjguMC5jcjAnLAotICAgICAgICAgIH0sCi0gICAgICBdLAotICAgICAgJ2NvbmRp
dGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCi0g
ICAgICAnZGVwX3R5cGUnOiAnY2lwZCcsCi0gIH0sCi0KLSAgJ3RoaXJkX3BhcnR5L2FuZHJvaWRf
ZGVwcy9saWJzL29yZ19hcGFjaGVfbWF2ZW5fbWF2ZW5fYW50X3Rhc2tzJzogewotICAgICAgJ3Bh
Y2thZ2VzJzogWwotICAgICAgICAgIHsKLSAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21p
dW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvb3JnX2FwYWNoZV9tYXZlbl9tYXZlbl9h
bnRfdGFza3MnLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMi4xLjMuY3Iw
JywKLSAgICAgICAgICB9LAotICAgICAgXSwKLSAgICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRf
YW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLAotICAgICAgJ2RlcF90eXBlJzog
J2NpcGQnLAotICB9LAotCi0gICd0aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9vcmdfYXBh
Y2hlX21hdmVuX21hdmVuX2FydGlmYWN0JzogewotICAgICAgJ3BhY2thZ2VzJzogWwotICAgICAg
ICAgIHsKLSAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5k
cm9pZF9kZXBzL2xpYnMvb3JnX2FwYWNoZV9tYXZlbl9tYXZlbl9hcnRpZmFjdCcsCi0gICAgICAg
ICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAyLjIuMS5jcjAnLAotICAgICAgICAgIH0sCi0g
ICAgICBdLAotICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVp
bGRfd2l0aF9jaHJvbWl1bScsCi0gICAgICAnZGVwX3R5cGUnOiAnY2lwZCcsCi0gIH0sCi0KLSAg
J3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL29yZ19hcGFjaGVfbWF2ZW5fbWF2ZW5fYXJ0
aWZhY3RfbWFuYWdlcic6IHsKLSAgICAgICdwYWNrYWdlcyc6IFsKLSAgICAgICAgICB7Ci0gICAg
ICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9s
aWJzL29yZ19hcGFjaGVfbWF2ZW5fbWF2ZW5fYXJ0aWZhY3RfbWFuYWdlcicsCi0gICAgICAgICAg
ICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAyLjIuMS5jcjAnLAotICAgICAgICAgIH0sCi0gICAg
ICBdLAotICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRf
d2l0aF9jaHJvbWl1bScsCi0gICAgICAnZGVwX3R5cGUnOiAnY2lwZCcsCi0gIH0sCi0KLSAgJ3Ro
aXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL29yZ19hcGFjaGVfbWF2ZW5fbWF2ZW5fZXJyb3Jf
ZGlhZ25vc3RpY3MnOiB7Ci0gICAgICAncGFja2FnZXMnOiBbCi0gICAgICAgICAgewotICAgICAg
ICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGli
cy9vcmdfYXBhY2hlX21hdmVuX21hdmVuX2Vycm9yX2RpYWdub3N0aWNzJywKLSAgICAgICAgICAg
ICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDIuMi4xLmNyMCcsCi0gICAgICAgICAgfSwKLSAgICAg
IF0sCi0gICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93
aXRoX2Nocm9taXVtJywKLSAgICAgICdkZXBfdHlwZSc6ICdjaXBkJywKLSAgfSwKLQotICAndGhp
cmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvb3JnX2FwYWNoZV9tYXZlbl9tYXZlbl9tb2RlbCc6
IHsKLSAgICAgICdwYWNrYWdlcyc6IFsKLSAgICAgICAgICB7Ci0gICAgICAgICAgICAgICdwYWNr
YWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL29yZ19hcGFjaGVf
bWF2ZW5fbWF2ZW5fbW9kZWwnLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJA
Mi4yLjEuY3IwJywKLSAgICAgICAgICB9LAotICAgICAgXSwKLSAgICAgICdjb25kaXRpb24nOiAn
Y2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLAotICAgICAgJ2Rl
cF90eXBlJzogJ2NpcGQnLAotICB9LAotCi0gICd0aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGli
cy9vcmdfYXBhY2hlX21hdmVuX21hdmVuX3BsdWdpbl9yZWdpc3RyeSc6IHsKLSAgICAgICdwYWNr
YWdlcyc6IFsKLSAgICAgICAgICB7Ci0gICAgICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVt
L3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL29yZ19hcGFjaGVfbWF2ZW5fbWF2ZW5fcGx1
Z2luX3JlZ2lzdHJ5JywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDIuMi4x
LmNyMCcsCi0gICAgICAgICAgfSwKLSAgICAgIF0sCi0gICAgICAnY29uZGl0aW9uJzogJ2NoZWNr
b3V0X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKLSAgICAgICdkZXBfdHlw
ZSc6ICdjaXBkJywKLSAgfSwKLQotICAndGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvb3Jn
X2FwYWNoZV9tYXZlbl9tYXZlbl9wcm9maWxlJzogewotICAgICAgJ3BhY2thZ2VzJzogWwotICAg
ICAgICAgIHsKLSAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkv
YW5kcm9pZF9kZXBzL2xpYnMvb3JnX2FwYWNoZV9tYXZlbl9tYXZlbl9wcm9maWxlJywKLSAgICAg
ICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDIuMi4xLmNyMCcsCi0gICAgICAgICAgfSwK
LSAgICAgIF0sCi0gICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBi
dWlsZF93aXRoX2Nocm9taXVtJywKLSAgICAgICdkZXBfdHlwZSc6ICdjaXBkJywKLSAgfSwKLQot
ICAndGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvb3JnX2FwYWNoZV9tYXZlbl9tYXZlbl9w
cm9qZWN0JzogewotICAgICAgJ3BhY2thZ2VzJzogWwotICAgICAgICAgIHsKLSAgICAgICAgICAg
ICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvb3Jn
X2FwYWNoZV9tYXZlbl9tYXZlbl9wcm9qZWN0JywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAn
dmVyc2lvbjoyQDIuMi4xLmNyMCcsCi0gICAgICAgICAgfSwKLSAgICAgIF0sCi0gICAgICAnY29u
ZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywK
LSAgICAgICdkZXBfdHlwZSc6ICdjaXBkJywKLSAgfSwKLQotICAndGhpcmRfcGFydHkvYW5kcm9p
ZF9kZXBzL2xpYnMvb3JnX2FwYWNoZV9tYXZlbl9tYXZlbl9yZXBvc2l0b3J5X21ldGFkYXRhJzog
ewotICAgICAgJ3BhY2thZ2VzJzogWwotICAgICAgICAgIHsKLSAgICAgICAgICAgICAgJ3BhY2th
Z2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvb3JnX2FwYWNoZV9t
YXZlbl9tYXZlbl9yZXBvc2l0b3J5X21ldGFkYXRhJywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24n
OiAndmVyc2lvbjoyQDIuMi4xLmNyMCcsCi0gICAgICAgICAgfSwKLSAgICAgIF0sCi0gICAgICAn
Y29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVt
JywKLSAgICAgICdkZXBfdHlwZSc6ICdjaXBkJywKLSAgfSwKLQotICAndGhpcmRfcGFydHkvYW5k
cm9pZF9kZXBzL2xpYnMvb3JnX2FwYWNoZV9tYXZlbl9tYXZlbl9zZXR0aW5ncyc6IHsKLSAgICAg
ICdwYWNrYWdlcyc6IFsKLSAgICAgICAgICB7Ci0gICAgICAgICAgICAgICdwYWNrYWdlJzogJ2No
cm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL29yZ19hcGFjaGVfbWF2ZW5fbWF2
ZW5fc2V0dGluZ3MnLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMi4yLjEu
Y3IwJywKLSAgICAgICAgICB9LAotICAgICAgXSwKLSAgICAgICdjb25kaXRpb24nOiAnY2hlY2tv
dXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLAotICAgICAgJ2RlcF90eXBl
JzogJ2NpcGQnLAotICB9LAotCi0gICd0aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9vcmdf
YXBhY2hlX21hdmVuX3dhZ29uX3dhZ29uX2ZpbGUnOiB7Ci0gICAgICAncGFja2FnZXMnOiBbCi0g
ICAgICAgICAgewotICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0
eS9hbmRyb2lkX2RlcHMvbGlicy9vcmdfYXBhY2hlX21hdmVuX3dhZ29uX3dhZ29uX2ZpbGUnLAot
ICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMS4wLWJldGEtNi5jcjAnLAotICAg
ICAgICAgIH0sCi0gICAgICBdLAotICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lk
IGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCi0gICAgICAnZGVwX3R5cGUnOiAnY2lwZCcs
Ci0gIH0sCi0KLSAgJ3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL29yZ19hcGFjaGVfbWF2
ZW5fd2Fnb25fd2Fnb25faHR0cF9saWdodHdlaWdodCc6IHsKLSAgICAgICdwYWNrYWdlcyc6IFsK
LSAgICAgICAgICB7Ci0gICAgICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3RoaXJkX3Bh
cnR5L2FuZHJvaWRfZGVwcy9saWJzL29yZ19hcGFjaGVfbWF2ZW5fd2Fnb25fd2Fnb25faHR0cF9s
aWdodHdlaWdodCcsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxLjAtYmV0
YS02LmNyMCcsCi0gICAgICAgICAgfSwKLSAgICAgIF0sCi0gICAgICAnY29uZGl0aW9uJzogJ2No
ZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKLSAgICAgICdkZXBf
dHlwZSc6ICdjaXBkJywKLSAgfSwKLQotICAndGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMv
b3JnX2FwYWNoZV9tYXZlbl93YWdvbl93YWdvbl9odHRwX3NoYXJlZCc6IHsKLSAgICAgICdwYWNr
YWdlcyc6IFsKLSAgICAgICAgICB7Ci0gICAgICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVt
L3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL29yZ19hcGFjaGVfbWF2ZW5fd2Fnb25fd2Fn
b25faHR0cF9zaGFyZWQnLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMS4w
LWJldGEtNi5jcjAnLAotICAgICAgICAgIH0sCi0gICAgICBdLAotICAgICAgJ2NvbmRpdGlvbic6
ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCi0gICAgICAn
ZGVwX3R5cGUnOiAnY2lwZCcsCi0gIH0sCi0KLSAgJ3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9s
aWJzL29yZ19hcGFjaGVfbWF2ZW5fd2Fnb25fd2Fnb25fcHJvdmlkZXJfYXBpJzogewotICAgICAg
J3BhY2thZ2VzJzogWwotICAgICAgICAgIHsKLSAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hy
b21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvb3JnX2FwYWNoZV9tYXZlbl93YWdv
bl93YWdvbl9wcm92aWRlcl9hcGknLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9u
OjJAMS4wLWJldGEtNi5jcjAnLAorICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJA
Mi4zLjAuY3IxJywKICAgICAgICAgICB9LAogICAgICAgXSwKICAgICAgICdjb25kaXRpb24nOiAn
Y2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLApAQCAtMzQwMCw3
ICszMjQ0LDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAgICB7CiAg
ICAgICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVw
cy9saWJzL29yZ19jY2lsX2Nvd2FuX3RhZ3NvdXBfdGFnc291cCcsCi0gICAgICAgICAgICAgICd2
ZXJzaW9uJzogJ3ZlcnNpb246MkAxLjIuMS5jcjAnLAorICAgICAgICAgICAgICAndmVyc2lvbic6
ICd2ZXJzaW9uOjJAMS4yLjEuY3IxJywKICAgICAgICAgICB9LAogICAgICAgXSwKICAgICAgICdj
b25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0n
LApAQCAtMzQxMSw3ICszMjU1LDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAg
ICAgICAgICB7CiAgICAgICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5
L2FuZHJvaWRfZGVwcy9saWJzL29yZ19jaGVja2VyZnJhbWV3b3JrX2NoZWNrZXJfY29tcGF0X3F1
YWwnLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMi41LjUuY3IwJywKKyAg
ICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDIuNS41LmNyMScsCiAgICAgICAgICAg
fSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5v
dCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTM0MjIsNyArMzI2Niw3IEBAIGRlcHMgPSB7CiAg
ICAgICAncGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAgICAgICAgICAncGFja2FnZSc6
ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9vcmdfY2hlY2tlcmZyYW1l
d29ya19jaGVja2VyX3F1YWwnLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJA
My4xMi4wLmNyMCcsCisgICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAzLjEyLjAu
Y3IxJywKICAgICAgICAgICB9LAogICAgICAgXSwKICAgICAgICdjb25kaXRpb24nOiAnY2hlY2tv
dXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLApAQCAtMzQzMyw3ICszMjc3
LDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAgICB7CiAgICAgICAg
ICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJz
L29yZ19jaGVja2VyZnJhbWV3b3JrX2RhdGFmbG93X2Vycm9ycHJvbmUnLAotICAgICAgICAgICAg
ICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMy4xNS4wLmNyMCcsCisgICAgICAgICAgICAgICd2ZXJz
aW9uJzogJ3ZlcnNpb246MkAzLjE1LjAuY3IxJywKICAgICAgICAgICB9LAogICAgICAgXSwKICAg
ICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hy
b21pdW0nLApAQCAtMzQ0NCw0MCArMzI4OCw3IEBAIGRlcHMgPSB7CiAgICAgICAncGFja2FnZXMn
OiBbCiAgICAgICAgICAgewogICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGly
ZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9vcmdfY29kZWhhdXNfbW9qb19hbmltYWxfc25pZmZl
cl9hbm5vdGF0aW9ucycsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxLjE3
LmNyMCcsCi0gICAgICAgICAgfSwKLSAgICAgIF0sCi0gICAgICAnY29uZGl0aW9uJzogJ2NoZWNr
b3V0X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKLSAgICAgICdkZXBfdHlw
ZSc6ICdjaXBkJywKLSAgfSwKLQotICAndGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvb3Jn
X2NvZGVoYXVzX3BsZXh1c19wbGV4dXNfY29udGFpbmVyX2RlZmF1bHQnOiB7Ci0gICAgICAncGFj
a2FnZXMnOiBbCi0gICAgICAgICAgewotICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1
bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9vcmdfY29kZWhhdXNfcGxleHVzX3BsZXh1
c19jb250YWluZXJfZGVmYXVsdCcsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246
MkAxLjAtYWxwaGEtOS1zdGFibGUtMS5jcjAnLAotICAgICAgICAgIH0sCi0gICAgICBdLAotICAg
ICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJv
bWl1bScsCi0gICAgICAnZGVwX3R5cGUnOiAnY2lwZCcsCi0gIH0sCi0KLSAgJ3RoaXJkX3BhcnR5
L2FuZHJvaWRfZGVwcy9saWJzL29yZ19jb2RlaGF1c19wbGV4dXNfcGxleHVzX2ludGVycG9sYXRp
b24nOiB7Ci0gICAgICAncGFja2FnZXMnOiBbCi0gICAgICAgICAgewotICAgICAgICAgICAgICAn
cGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9vcmdfY29k
ZWhhdXNfcGxleHVzX3BsZXh1c19pbnRlcnBvbGF0aW9uJywKLSAgICAgICAgICAgICAgJ3ZlcnNp
b24nOiAndmVyc2lvbjoyQDEuMTEuY3IwJywKLSAgICAgICAgICB9LAotICAgICAgXSwKLSAgICAg
ICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21p
dW0nLAotICAgICAgJ2RlcF90eXBlJzogJ2NpcGQnLAotICB9LAotCi0gICd0aGlyZF9wYXJ0eS9h
bmRyb2lkX2RlcHMvbGlicy9vcmdfY29kZWhhdXNfcGxleHVzX3BsZXh1c191dGlscyc6IHsKLSAg
ICAgICdwYWNrYWdlcyc6IFsKLSAgICAgICAgICB7Ci0gICAgICAgICAgICAgICdwYWNrYWdlJzog
J2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL29yZ19jb2RlaGF1c19wbGV4
dXNfcGxleHVzX3V0aWxzJywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDEu
NS4xNS5jcjAnLAorICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMS4xNy5jcjEn
LAogICAgICAgICAgIH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9h
bmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0zNDg4LDcgKzMyOTksNyBA
QCBkZXBzID0gewogICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAgICAg
ICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvb3Jn
X2VjbGlwc2VfamdpdF9vcmdfZWNsaXBzZV9qZ2l0JywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24n
OiAndmVyc2lvbjoyQDQuNC4xLjIwMTYwNzE1MDQ1NS1yLmNyMCcsCisgICAgICAgICAgICAgICd2
ZXJzaW9uJzogJ3ZlcnNpb246MkA0LjQuMS4yMDE2MDcxNTA0NTUtci5jcjEnLAogICAgICAgICAg
IH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBu
b3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0zNDk5LDcgKzMzMTAsNyBAQCBkZXBzID0gewog
ICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2Un
OiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvb3JnX2pldGJyYWluc19h
bm5vdGF0aW9ucycsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxMy4wLmNy
MCcsCisgICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxMy4wLmNyMScsCiAgICAg
ICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQg
YW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTM1MTAsNyArMzMyMSw3IEBAIGRlcHMg
PSB7CiAgICAgICAncGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAgICAgICAgICAncGFj
a2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9vcmdfamV0YnJh
aW5zX2tvdGxpbl9rb3RsaW5fc3RkbGliJywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVy
c2lvbjoyQDEuNi4xMC5jcjAnLAorICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJA
MS42LjEwLmNyMScsCiAgICAgICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzog
J2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTM1MjEs
NyArMzMzMiw3IEBAIGRlcHMgPSB7CiAgICAgICAncGFja2FnZXMnOiBbCiAgICAgICAgICAgewog
ICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2Rl
cHMvbGlicy9vcmdfamV0YnJhaW5zX2tvdGxpbl9rb3RsaW5fc3RkbGliX2NvbW1vbicsCi0gICAg
ICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxLjYuMTAuY3IwJywKKyAgICAgICAgICAg
ICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDEuNi4xMC5jcjEnLAogICAgICAgICAgIH0sCiAgICAg
ICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRf
d2l0aF9jaHJvbWl1bScsCkBAIC0zNTMyLDcgKzMzNDMsNyBAQCBkZXBzID0gewogICAgICAgJ3Bh
Y2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21p
dW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvb3JnX2pldGJyYWluc19rb3RsaW5fa290
bGluX3N0ZGxpYl9qZGs3JywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDEu
NS4wLmNyMCcsCisgICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxLjUuMC5jcjEn
LAogICAgICAgICAgIH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9h
bmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0zNTQzLDcgKzMzNTQsNyBA
QCBkZXBzID0gewogICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAgICAg
ICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvb3Jn
X2pldGJyYWluc19rb3RsaW5fa290bGluX3N0ZGxpYl9qZGs4JywKLSAgICAgICAgICAgICAgJ3Zl
cnNpb24nOiAndmVyc2lvbjoyQDEuNS4wLmNyMCcsCisgICAgICAgICAgICAgICd2ZXJzaW9uJzog
J3ZlcnNpb246MkAxLjUuMC5jcjEnLAogICAgICAgICAgIH0sCiAgICAgICBdLAogICAgICAgJ2Nv
bmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScs
CkBAIC0zNTU0LDcgKzMzNjUsNyBAQCBkZXBzID0gewogICAgICAgJ3BhY2thZ2VzJzogWwogICAg
ICAgICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkv
YW5kcm9pZF9kZXBzL2xpYnMvb3JnX2pldGJyYWluc19rb3RsaW54X2tvdGxpbnhfY29yb3V0aW5l
c19hbmRyb2lkJywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDEuNS4wLmNy
MCcsCisgICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxLjUuMC5jcjEnLAogICAg
ICAgICAgIH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lk
IGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0zNTY1LDcgKzMzNzYsNyBAQCBkZXBz
ID0gewogICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3Bh
Y2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvb3JnX2pldGJy
YWluc19rb3RsaW54X2tvdGxpbnhfY29yb3V0aW5lc19jb3JlX2p2bScsCi0gICAgICAgICAgICAg
ICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxLjUuMC5jcjAnLAorICAgICAgICAgICAgICAndmVyc2lv
bic6ICd2ZXJzaW9uOjJAMS41LjAuY3IxJywKICAgICAgICAgICB9LAogICAgICAgXSwKICAgICAg
ICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21p
dW0nLApAQCAtMzU3Niw3ICszMzg3LDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNrYWdlcyc6IFsK
ICAgICAgICAgICB7CiAgICAgICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3RoaXJkX3Bh
cnR5L2FuZHJvaWRfZGVwcy9saWJzL29yZ19qZXRicmFpbnNfa290bGlueF9rb3RsaW54X21ldGFk
YXRhX2p2bScsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAwLjEuMC5jcjAn
LAorICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMC4xLjAuY3IxJywKICAgICAg
ICAgICB9LAogICAgICAgXSwKICAgICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBh
bmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLApAQCAtMzU4Nyw3ICszMzk4LDcgQEAgZGVwcyA9
IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAgICB7CiAgICAgICAgICAgICAgICdwYWNr
YWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL29yZ19vdzJfYXNt
X2FzbScsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkA3LjAuY3IwJywKKyAg
ICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDkuMi5jcjEnLAogICAgICAgICAgIH0s
CiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3Qg
YnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0zNTk4LDcgKzM0MDksNyBAQCBkZXBzID0gewogICAg
ICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAn
Y2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvb3JnX293Ml9hc21fYXNtX2Fu
YWx5c2lzJywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDcuMC5jcjAnLAor
ICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAOS4yLmNyMScsCiAgICAgICAgICAg
fSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5v
dCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTM2MDksNyArMzQyMCw3IEBAIGRlcHMgPSB7CiAg
ICAgICAncGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAgICAgICAgICAncGFja2FnZSc6
ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9vcmdfb3cyX2FzbV9hc21f
Y29tbW9ucycsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkA3LjAuY3IwJywK
KyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDkuMi5jcjEnLAogICAgICAgICAg
IH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBu
b3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0zNjIwLDcgKzM0MzEsNyBAQCBkZXBzID0gewog
ICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2Un
OiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvb3JnX293Ml9hc21fYXNt
X3RyZWUnLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJANy4wLmNyMCcsCisg
ICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkA5LjIuY3IxJywKICAgICAgICAgICB9
LAogICAgICAgXSwKICAgICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90
IGJ1aWxkX3dpdGhfY2hyb21pdW0nLApAQCAtMzYzMSw3ICszNDQyLDcgQEAgZGVwcyA9IHsKICAg
ICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAgICB7CiAgICAgICAgICAgICAgICdwYWNrYWdlJzog
J2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL29yZ19vdzJfYXNtX2FzbV91
dGlsJywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDcuMC5jcjAnLAorICAg
ICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAOS4yLmNyMScsCiAgICAgICAgICAgfSwK
ICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBi
dWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTM2NDIsNyArMzQ1Myw3IEBAIGRlcHMgPSB7CiAgICAg
ICAncGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAgICAgICAgICAncGFja2FnZSc6ICdj
aHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9vcmdfcGNvbGxlY3Rpb25zX3Bj
b2xsZWN0aW9ucycsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAyLjEuMi5j
cjAnLAorICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMy4xLjQuY3IxJywKICAg
ICAgICAgICB9LAogICAgICAgXSwKICAgICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9p
ZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLApAQCAtMzY1Myw3ICszNDY0LDcgQEAgZGVw
cyA9IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAgICB7CiAgICAgICAgICAgICAgICdw
YWNrYWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL29yZ19yb2Jv
bGVjdHJpY19hbm5vdGF0aW9ucycsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246
MkA0LjMuMS5jcjAnLAorICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJANC43LjMu
Y3IxJywKICAgICAgICAgICB9LAogICAgICAgXSwKICAgICAgICdjb25kaXRpb24nOiAnY2hlY2tv
dXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLApAQCAtMzY2NCw3ICszNDc1
LDE4IEBAIGRlcHMgPSB7CiAgICAgICAncGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAg
ICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGli
cy9vcmdfcm9ib2xlY3RyaWNfanVuaXQnLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJz
aW9uOjJANC4zLjEuY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDQu
Ny4zLmNyMScsCisgICAgICAgICAgfSwKKyAgICAgIF0sCisgICAgICAnY29uZGl0aW9uJzogJ2No
ZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKKyAgICAgICdkZXBf
dHlwZSc6ICdjaXBkJywKKyAgfSwKKworICAndGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMv
b3JnX3JvYm9sZWN0cmljX25hdGl2ZXJ1bnRpbWUnOiB7CisgICAgICAncGFja2FnZXMnOiBbCisg
ICAgICAgICAgeworICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0
eS9hbmRyb2lkX2RlcHMvbGlicy9vcmdfcm9ib2xlY3RyaWNfbmF0aXZlcnVudGltZScsCisgICAg
ICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkA0LjcuMy5jcjEnLAogICAgICAgICAgIH0s
CiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3Qg
YnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0zNjc1LDcgKzM0OTcsNyBAQCBkZXBzID0gewogICAg
ICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAn
Y2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvb3JnX3JvYm9sZWN0cmljX3Bs
dWdpbmFwaScsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkA0LjMuMS5jcjAn
LAorICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJANC43LjMuY3IxJywKICAgICAg
ICAgICB9LAogICAgICAgXSwKICAgICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBh
bmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLApAQCAtMzY4Niw3ICszNTA4LDcgQEAgZGVwcyA9
IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAgICB7CiAgICAgICAgICAgICAgICdwYWNr
YWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL29yZ19yb2JvbGVj
dHJpY19wbHVnaW5zX21hdmVuX2RlcGVuZGVuY3lfcmVzb2x2ZXInLAotICAgICAgICAgICAgICAn
dmVyc2lvbic6ICd2ZXJzaW9uOjJANC4zLjEuY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24n
OiAndmVyc2lvbjoyQDQuNy4zLmNyMScsCiAgICAgICAgICAgfSwKICAgICAgIF0sCiAgICAgICAn
Y29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVt
JywKQEAgLTM2OTcsNyArMzUxOSw3IEBAIGRlcHMgPSB7CiAgICAgICAncGFja2FnZXMnOiBbCiAg
ICAgICAgICAgewogICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0
eS9hbmRyb2lkX2RlcHMvbGlicy9vcmdfcm9ib2xlY3RyaWNfcmVzb3VyY2VzJywKLSAgICAgICAg
ICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDQuMy4xLmNyMCcsCisgICAgICAgICAgICAgICd2
ZXJzaW9uJzogJ3ZlcnNpb246MkA0LjcuMy5jcjEnLAogICAgICAgICAgIH0sCiAgICAgICBdLAog
ICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9j
aHJvbWl1bScsCkBAIC0zNzA4LDcgKzM1MzAsNyBAQCBkZXBzID0gewogICAgICAgJ3BhY2thZ2Vz
JzogWwogICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhp
cmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvb3JnX3JvYm9sZWN0cmljX3JvYm9sZWN0cmljJywK
LSAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDQuMy4xLmNyMCcsCisgICAgICAg
ICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkA0LjcuMy5jcjEnLAogICAgICAgICAgIH0sCiAg
ICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVp
bGRfd2l0aF9jaHJvbWl1bScsCkBAIC0zNzE5LDcgKzM1NDEsNyBAQCBkZXBzID0gewogICAgICAg
J3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hy
b21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvb3JnX3JvYm9sZWN0cmljX3NhbmRi
b3gnLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJANC4zLjEuY3IwJywKKyAg
ICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDQuNy4zLmNyMScsCiAgICAgICAgICAg
fSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5v
dCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTM3MzAsNyArMzU1Miw3IEBAIGRlcHMgPSB7CiAg
ICAgICAncGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAgICAgICAgICAncGFja2FnZSc6
ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9vcmdfcm9ib2xlY3RyaWNf
c2hhZG93YXBpJywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDQuMy4xLmNy
MCcsCisgICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkA0LjcuMy5jcjEnLAogICAg
ICAgICAgIH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lk
IGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0zNzQxLDcgKzM1NjMsMTggQEAgZGVw
cyA9IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAgICB7CiAgICAgICAgICAgICAgICdw
YWNrYWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL29yZ19yb2Jv
bGVjdHJpY19zaGFkb3dzX2ZyYW1ld29yaycsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3Zl
cnNpb246MkA0LjMuMS5jcjAnLAorICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJA
NC43LjMuY3IxJywKKyAgICAgICAgICB9LAorICAgICAgXSwKKyAgICAgICdjb25kaXRpb24nOiAn
Y2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLAorICAgICAgJ2Rl
cF90eXBlJzogJ2NpcGQnLAorICB9LAorCisgICd0aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGli
cy9vcmdfcm9ib2xlY3RyaWNfc2hhZG93c19tdWx0aWRleCc6IHsKKyAgICAgICdwYWNrYWdlcyc6
IFsKKyAgICAgICAgICB7CisgICAgICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3RoaXJk
X3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL29yZ19yb2JvbGVjdHJpY19zaGFkb3dzX211bHRpZGV4
JywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDQuNy4zLmNyMScsCiAgICAg
ICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQg
YW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTM3NTIsNyArMzU4NSw3IEBAIGRlcHMg
PSB7CiAgICAgICAncGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAgICAgICAgICAncGFj
a2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9vcmdfcm9ib2xl
Y3RyaWNfc2hhZG93c19wbGF5c2VydmljZXMnLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2
ZXJzaW9uOjJANC4zLjEuY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoy
QDQuNy4zLmNyMScsCiAgICAgICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzog
J2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTM3NjMs
NyArMzU5Niw3IEBAIGRlcHMgPSB7CiAgICAgICAncGFja2FnZXMnOiBbCiAgICAgICAgICAgewog
ICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2Rl
cHMvbGlicy9vcmdfcm9ib2xlY3RyaWNfdXRpbHMnLAotICAgICAgICAgICAgICAndmVyc2lvbic6
ICd2ZXJzaW9uOjJANC4zLjEuY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lv
bjoyQDQuNy4zLmNyMScsCiAgICAgICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9u
JzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTM3
NzQsNyArMzYwNyw3IEBAIGRlcHMgPSB7CiAgICAgICAncGFja2FnZXMnOiBbCiAgICAgICAgICAg
ewogICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lk
X2RlcHMvbGlicy9vcmdfcm9ib2xlY3RyaWNfdXRpbHNfcmVmbGVjdG9yJywKLSAgICAgICAgICAg
ICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDQuMy4xLmNyMCcsCisgICAgICAgICAgICAgICd2ZXJz
aW9uJzogJ3ZlcnNpb246MkA0LjcuMy5jcjEnLAogICAgICAgICAgIH0sCiAgICAgICBdLAogICAg
ICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJv
bWl1bScsCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9HTC5jbWFrZSBiL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL0dMLmNtYWtlCmluZGV4IGUwYzM5YzU4ODJkMjM1ZmM1YTJj
MmQxZTMyNGY0NzkzZGYyMDQwMjQuLjFkOGQxZDc0NjU5NzkwNzlhNzQyZDkzMTY2OGE1YWE2ZmU2
OTM2MzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0dMLmNtYWtlCisrKyBi
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0dMLmNtYWtlCkBAIC0xMCw2ICsxMCwxNSBAQAogCiAK
IAoraWYoYW5nbGVfaGFzX2J1aWxkIEFORCBvem9uZV9wbGF0Zm9ybV9nYm0pCisKKworZW5kaWYo
KQorCisKK2RlY2xhcmVfYXJncygpIHsKKyAgICBzZXQoYW5nbGVfZW5hYmxlX2dsX251bGx0cnVl
CitlbmRpZigpCiAKIAogc2V0KF9nbF9iYWNrZW5kX3NvdXJjZXMKQEAgLTE2Myw2ICsxNzIsMTAg
QEAgaWYob3pvbmVfcGxhdGZvcm1fZ2JtKQogICAgICAgICAic3JjL2xpYkFOR0xFL3JlbmRlcmVy
L2dsL2VnbC9nYm0vU3VyZmFjZUdibS5jcHAiCiAgICAgICAgICJzcmMvbGliQU5HTEUvcmVuZGVy
ZXIvZ2wvZWdsL2dibS9TdXJmYWNlR2JtLmgiCiAgICAgKQorCisgIHBrZ19jb25maWcoInNyYy9s
aWJBTkdMRS9yZW5kZXJlci9nbC9saWJkcm0iKSB7CisgICAgICAgIHNldChwYWNrYWdlcyAic3Jj
L2xpYkFOR0xFL3JlbmRlcmVyL2dsL2xpYmRybSIgKQorICAgIGVuZGlmKCkKIGVuZGlmKCkKIAog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9HTEVTdjIuY21ha2UgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9HTEVTdjIuY21ha2UKaW5kZXggNmYxMmNlZjJhZmQ3NWFlYzQ5
ZGUxYWQ5MjNlOWI4NmU4NDAxYTEwYS4uYzFhYTJmNGRlODY5NTA1ODgzNTIzNTcxNmU3MDFiMjNm
MTZjNjM4NyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvR0xFU3YyLmNtYWtl
CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0dMRVN2Mi5jbWFrZQpAQCAtMTAyLDcgKzEw
Miw3IEBAIGlmKGlzX2xpbnV4IE9SIGlzX2Nocm9tZW9zIE9SIGlzX2FuZHJvaWQgT1IgaXNfZnVj
aHNpYSkKIGVuZGlmKCkKIAogCi1pZiAoQVBQTEUpCitpZihpc19hcHBsZSkKICAgICBsaXN0KEFQ
UEVORCBsaWJhbmdsZV9jb21tb25fc291cmNlcwogICAgICAgICAic3JjL2NvbW1vbi9hcHBsZS9T
b2Z0TGlua2luZy5oIgogICAgICAgICAic3JjL2NvbW1vbi9hcHBsZS9hcHBsZV9wbGF0Zm9ybS5o
IgpAQCAtNDQ5LDcgKzQ0OSw2IEBAIHNldChsaWJhbmdsZV9zb3VyY2VzCiAgICAgInNyYy9saWJB
TkdMRS9yZW5kZXJlci9Qcm9ncmFtUGlwZWxpbmVJbXBsLmNwcCIKICAgICAic3JjL2xpYkFOR0xF
L3JlbmRlcmVyL1F1ZXJ5SW1wbC5jcHAiCiAgICAgInNyYy9saWJBTkdMRS9yZW5kZXJlci9TaGFk
ZXJJbXBsLmNwcCIKLSAgICAic3JjL2xpYkFOR0xFL3JlbmRlcmVyL1NoYWRlckludGVyZmFjZVZh
cmlhYmxlSW5mb01hcC5jcHAiCiAgICAgInNyYy9saWJBTkdMRS9yZW5kZXJlci9TdXJmYWNlSW1w
bC5jcHAiCiAgICAgInNyYy9saWJBTkdMRS9yZW5kZXJlci9UZXh0dXJlSW1wbC5jcHAiCiAgICAg
InNyYy9saWJBTkdMRS9yZW5kZXJlci9kcml2ZXJfdXRpbHMuY3BwIgpkaWZmIC0tZ2l0IGEvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvTWV0YWwuY21ha2UgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9NZXRhbC5jbWFrZQppbmRleCBmMDRmMTYxNzVmYjJkNzJhMGIyYTQ4MmY0MWNlNmI4MGFjNjcw
MjAyLi5jYzU1ZWI3NjAyZjRjYjI2MGVhOTUwMjI3ZDY2ZGE5YTEwMWM0OWFiIDEwMDY0NAotLS0g
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9NZXRhbC5jbWFrZQorKysgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9BTkdMRS9NZXRhbC5jbWFrZQpAQCAtNzAsNiArNzAsOCBAQCBzZXQoX21ldGFsX2JhY2tl
bmRfc291cmNlcwogICAgICJzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX2Zvcm1hdF91
dGlscy5tbSIKICAgICAic3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF9nbHNsYW5nX210
bF91dGlscy5oIgogICAgICJzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX2dsc2xhbmdf
bXRsX3V0aWxzLm1tIgorICAgICJzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX2dsc2xh
bmdfdXRpbHMuaCIKKyAgICAic3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF9nbHNsYW5n
X3V0aWxzLm1tIgogICAgICJzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX29jY2x1c2lv
bl9xdWVyeV9wb29sLmgiCiAgICAgInNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9tdGxfb2Nj
bHVzaW9uX3F1ZXJ5X3Bvb2wubW0iCiAgICAgInNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9t
dGxfcmVuZGVyX3V0aWxzLmgiCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9P
V05FUlMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9PV05FUlMKaW5kZXggZjhlODVjNzYyYzQx
YWU3OTg4ODRjNWNjMGU1YzNmYjBmNjFlZjc1Yi4uOGExNTNmOTM5MGZjMTRkODFlNGViMmM4NjE5
ZTYxYjA3M2RlMzk0ZCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvT1dORVJT
CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL09XTkVSUwpAQCAtMTEsMTUgKzExLDIxIEBA
IHN5b3Vzc2VmaUBjaHJvbWl1bS5vcmcKIHlub3Zpa292QGNocm9taXVtLm9yZwogCiAjIEBnb29n
bGUuY29tIGVtYWlsIGFkZHJlc3NlczoKK2FiZG9scmFzaGlkaUBnb29nbGUuY29tCiBjY2xhb0Bn
b29nbGUuY29tCitjaHJpc2ZvcmJlc0Bnb29nbGUuY29tCiBjbm9ydGhyb3BAZ29vZ2xlLmNvbQog
Z2VvZmZsYW5nQGdvb2dsZS5jb20KIGlhbmVsbGlvdHRAZ29vZ2xlLmNvbQogam1hZGlsbEBnb29n
bGUuY29tCiBqb25haHJAZ29vZ2xlLmNvbQorbGZ5QGdvb2dsZS5jb20KK3JvbWFubEBnb29nbGUu
Y29tCiBzeW91c3NlZmlAZ29vZ2xlLmNvbQogdGltdnBAZ29vZ2xlLmNvbQordmFudGFibGFja0Bn
b29nbGUuY29tCiB5bm92aWtvdkBnb29nbGUuY29tCit5dXhpbmh1QGdvb2dsZS5jb20KIAogIyBU
aGUgYXV0by1yb2xsZXIgY2FuIGFsc28gbW9kaWZ5IGF1dG9nZW5lcmF0ZWQgZmlsZXMsIHNvIHdl
IGdpdmUgaXQgb3duZXJzaGlwCiAjIG92ZXIgYWxsIEFOR0xFIGZpbGVzLgpkaWZmIC0tZ2l0IGEv
U291cmNlL1RoaXJkUGFydHkvQU5HTEUvUkVBRE1FLm1kIGIvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvUkVBRE1FLm1kCmluZGV4IDM3ZjcwN2U1MTk0YmM0ZmJjMThhYjliZDdjNzIzYzkxZjU4NGU1
ZWQuLjQzOTI3OWY5MDZlYWZhOTI1ZmZjZjU5MTc2NDkxMWUyNTYzNjE1MmIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL1JFQURNRS5tZAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9SRUFETUUubWQKQEAgLTM1LDcgKzM1LDcgQEAgQU5HTEUgaGFzIHJlY2VpdmVkIHRo
ZSBmb2xsb3dpbmcgY2VydGlmaWNhdGlvbnMgd2l0aCB0aGUgVnVsa2FuIGJhY2tlbmQ6CiAqIE9w
ZW5HTCBFUyAzLjA6IEFOR0xFIDIuMS4wLmYxOGZmOTQ3MzYwZCAoRmViLCAyMDIwKQogKiBPcGVu
R0wgRVMgMy4xOiBBTkdMRSAyLjEuMC5mNWRhY2UwZjFlNTcgKEp1bCwgMjAyMCkKIAotQU5HTEUg
YWxzbyBwcm92aWRlcyBhbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgRUdMIDEuNCBzcGVjaWZpY2F0
aW9uLgorQU5HTEUgYWxzbyBwcm92aWRlcyBhbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgRUdMIDEu
NSBzcGVjaWZpY2F0aW9uLgogCiBBTkdMRSBpcyB1c2VkIGFzIHRoZSBkZWZhdWx0IFdlYkdMIGJh
Y2tlbmQgZm9yIGJvdGggR29vZ2xlIENocm9tZSBhbmQgTW96aWxsYSBGaXJlZm94IG9uIFdpbmRv
d3MKIHBsYXRmb3Jtcy4gQ2hyb21lIHVzZXMgQU5HTEUgZm9yIGFsbCBncmFwaGljcyByZW5kZXJp
bmcgb24gV2luZG93cywgaW5jbHVkaW5nIHRoZSBhY2NlbGVyYXRlZApkaWZmIC0tZ2l0IGEvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvV0FUQ0hMSVNUUyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L1dBVENITElTVFMKaW5kZXggY2Q4MTQ3NWE3N2ZiYTc4NDYwNzNmMjNjMDhlYjAxYTdmZTY5MjEy
OS4uNDdjOTgwM2FhN2Y3MzhmZDI5ZjgxY2FlMDdiYTRhODc2YmEyNDM1OCAxMDA2NDQKLS0tIGEv
U291cmNlL1RoaXJkUGFydHkvQU5HTEUvV0FUQ0hMSVNUUworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9XQVRDSExJU1RTCkBAIC0yMCw3ICsyMCw2IEBACiAgICMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIwogICAnV0FUQ0hMSVNUUyc6IHsKICAgICAndnVsa2FuJzogWydjY2xhbythbmdsZVdhdGNo
VmtAZ29vZ2xlLmNvbScsCi0gICAgICAgICAgICAgICAnam1hZGlsbCt3YXRjaEBjaHJvbWl1bS5v
cmcnLAotICAgICAgICAgICAgICAgJ3RpbXZwK2FuZ2xlV2F0Y2hWa0Bnb29nbGUuY29tJ10sCisg
ICAgICAgICAgICAgICAnam1hZGlsbCt3YXRjaEBjaHJvbWl1bS5vcmcnXSwKICAgfSwKIH0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL2J1aWxkX292ZXJyaWRlcy92dWxrYW5f
Y29tbW9uLmduaSBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL2J1aWxkX292ZXJyaWRlcy92dWxr
YW5fY29tbW9uLmduaQppbmRleCA2MjlhMDMyMmM4ZDMzOWFjMjlmYzE3ZDBmODFjNWY4NjNlN2Zh
NzE5Li42MWNjZjczYWRkYTM1OGNlZWJmZWZkNWNkZWY3YjBjZTk4YjNmNzVjIDEwMDY0NAotLS0g
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9idWlsZF9vdmVycmlkZXMvdnVsa2FuX2NvbW1vbi5n
bmkKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvYnVpbGRfb3ZlcnJpZGVzL3Z1bGthbl9j
b21tb24uZ25pCkBAIC0xMCwzICsxMCw0IEBAIHZ1bGthbl9kYXRhX3N1YmRpciA9IGFuZ2xlX2Rh
dGFfZGlyCiB2dWxrYW5fZ2VuX3N1YmRpciA9ICJhbmdsZS92dWxrYW4iCiAKIHZ1bGthbl91c2Vf
eDExID0gYW5nbGVfdXNlX3gxMQordnVsa2FuX3VzZV93YXlsYW5kID0gYW5nbGVfdXNlX3dheWxh
bmQKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL2NoYW5nZXMuZGlmZiBiL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL2NoYW5nZXMuZGlmZgppbmRleCAwNTk1MDRmZTFhOGY0N2Rk
YWU2ZmZjNWJkNmJhNGU0ZDk4YjNlMjhhLi43ZGY5OGJlNzNmNGM0MjM0YzcxMzI1YzFmMzVhMDA4
ZjZlOGIxZjM5IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9jaGFuZ2VzLmRp
ZmYKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvY2hhbmdlcy5kaWZmCkBAIC0xLDUgKzEs
NSBAQAogZGlmZiAtLWdpdCBhLy5naXRpZ25vcmUgYi8uZ2l0aWdub3JlCi1pbmRleCA1NTAyY2Nh
Li5mZGFiYjM5IDEwMDY0NAoraW5kZXggYmExOTM4OWRjLi5hZmVjYTFkNTggMTAwNjQ0CiAtLS0g
YS8uZ2l0aWdub3JlCiArKysgYi8uZ2l0aWdub3JlCiBAQCAtNjMsNiArNjMsNyBAQApAQCAtMTAs
OCArMTAsMTkzNjAgQEAgaW5kZXggNTUwMmNjYS4uZmRhYmIzOSAxMDA2NDQKICAvdGhpcmRfcGFy
dHkvcmFwaWRqc29uL3NyYwogIC90aGlyZF9wYXJ0eS9yZXF1ZXN0cy9zcmMKICAvdGhpcmRfcGFy
dHkvc2l4CitkaWZmIC0tZ2l0IGEvQ2hhbmdlTG9nLTIwMjItMDItMjIgYi9DaGFuZ2VMb2ctMjAy
Mi0wMi0yMgorbmV3IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4IDAwMDAwMDAwMC4uY2E2NzAyNmJj
CistLS0gL2Rldi9udWxsCisrKysgYi9DaGFuZ2VMb2ctMjAyMi0wMi0yMgorQEAgLTAsMCArMSwx
OTI3OCBAQAorKzIwMjItMDItMTggIFJvYmVydCBKZW5uZXIgIDxKZW5uZXJAYXBwbGUuY29tPgor
KworKyAgICAgICAgVW5yZXZpZXdlZCwgcmV2ZXJ0aW5nIHIyOTAxNDkuCisrCisrICAgICAgICBC
cm9rZSBEZWJ1ZyBCdWlsZHMuCisrCisrICAgICAgICBSZXZlcnRlZCBjaGFuZ2VzZXQ6CisrCisr
ICAgICAgICAiR2VuZXJhdGUgY29tcGlsZV9jb21tYW5kcy5qc29uIG9uIG1hY09TIEJ1aWxkcyIK
KysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzU2ODYK
KysgICAgICAgIGh0dHBzOi8vY29tbWl0cy53ZWJraXQub3JnL3IyOTAxNDkKKysKKysyMDIyLTAy
LTE4ICBCcmFuZG9uIFN0ZXdhcnQgIDxicmFuZG9uc3Rld2FydEBhcHBsZS5jb20+CisrCisrICAg
ICAgICBHZW5lcmF0ZSBjb21waWxlX2NvbW1hbmRzLmpzb24gb24gbWFjT1MgQnVpbGRzCisrICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM1Njg2CisrCisr
ICAgICAgICBSZXZpZXdlZCBieSBTYWFtIEJhcmF0aS4KKysKKysgICAgICAgIEFkZCBzdXBwb3J0
IGZvciBnZW5lcmF0aW5nIGNvbXBpbGVfY29tbWFuZHMuanNvbiBmaWxlIHRvIFdlYktpdC4KKysg
ICAgICAgIAorKyAgICAgICAgY29tcGlsZV9jb21tYW5kcy5qc29uIGNhbiBiZSB1c2VkIGJ5IHRv
b2xzIGxpa2UgY2xhbmdkIHRvIHByb3ZpZGUgY29kZSBjb21wbGV0ZSwKKysgICAgICAgIHJlZmFj
dG9yaW5nLCBmb3JtYXR0aW5nLCBhbmQgY3Jvc3MgcmVmZXJlbmNlcy4KKysKKysgICAgICAgIFN0
ZXBzIHRvIGdlbmVyYXRlIHRoZSBjb21waWxlIGNvbW1hbmRzIGZpbGU6CisrICAgICAgICBtYWtl
IHIgRVhQT1JUX0NPTVBJTEVfQ09NTUFORFM9WUVTCisrICAgICAgICBnZW5lcmF0ZS1jb21waWxl
LWNvbW1hbmRzIFdlYktpdEJ1aWxkL1JlbGVhc2UKKysKKysgICAgICAgICogQ29uZmlndXJhdGlv
bnMvRGVidWdSZWxlYXNlLnhjY29uZmlnOgorKworKzIwMjItMDItMTggIFNhYW0gQmFyYXRpICA8
c2JhcmF0aUBhcHBsZS5jb20+CisrCisrICAgICAgICBSZW1vdmUgQU5HTEUtc3RhdGljLnhjY29u
ZmlnCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM2
ODI3CisrCisrICAgICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisrCisrICAgICAgICBJ
dCB3YXMgdW51c2VkLgorKworKyAgICAgICAgKiBBTkdMRS54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qOgorKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9BTkdMRS1zdGF0aWMueGNjb25maWc6IFJl
bW92ZWQuCisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWc6CisrCisrMjAy
Mi0wMi0xOCAgQWRyaWFuIFBlcmV6IGRlIENhc3RybyAgPGFwZXJlekBpZ2FsaWEuY29tPgorKwor
KyAgICAgICAgW0NNYWtlXSBDYW5ub3QgZmluZCBPcGVuR0wgd2hlbiBzeXN0ZW0gcHJvdmlkZXMg
b3BlbmdsLnBjIGluc3RlYWQgb2YgZ2wucGMKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0yMzY1OTIKKysKKysgICAgICAgIFJldmlld2VkIGJ5IE1pY2hh
ZWwgQ2F0YW56YXJvLgorKworKyAgICAgICAgKiBQbGF0Zm9ybUdUSy5jbWFrZTogVXNlIHRoZSBP
cGVuR0w6Ok9wZW5HTCBpbXBvcnRlZCB0YXJnZXQgaW5zdGVhZCBvZiB0aGUKKysgICAgICAgIE9Q
RU5HTF9MSUJSQVJJRVMgdmFyaWFibGUuCisrICAgICAgICAqIFBsYXRmb3JtV1BFLmNtYWtlOiBS
ZW1vdmUgbGlua2luZyBhZ2FpbnQgT3BlbkdMIGxpYnJhcmllczsgdGhlIFdQRSBwb3J0IGlzIG5v
dAorKyAgICAgICAgc3VwcG9zZWQgdG8gbGluayB0byBhbnkgb2YgdGhlbSBkaXJlY3RseS4KKysK
KysyMDIyLTAyLTE4ICBaYW4gRG9iZXJzZWsgIDx6ZG9iZXJzZWtAaWdhbGlhLmNvbT4KKysKKysg
ICAgICAgIFtHVEtdW1dQRV0gRG9uJ3QgdXNlIEFOR0xFJ3MgR0JNLWJhc2VkIGRpc3BsYXkKKysg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzY3NzIKKysK
KysgICAgICAgIFJldmlld2VkIGJ5IEFsZWphbmRybyBHLiBDYXN0cm8uCisrCisrICAgICAgICBX
aXRoIERpc3BsYXlHYm0gZnVuY3Rpb25hbGl0eSBub3QgbmVjZXNzYXJ5IGFueW1vcmUsIHdlIGNh
biBzdG9wCisrICAgICAgICBidWlsZGluZyB0aGUgYXNzb2NpYXRlZCBjb2RlIGFuZCBsaW5raW5n
IGFnYWluc3QgbGliZ2JtIGFuZCBsaWJkcm0gYXQKKysgICAgICAgIHRoZSBBTkdMRSBsZXZlbC4g
VGhlc2UgdHdvIGxpYnJhcmllcyBhcmUgc3RpbGwgZGVwZW5kZW5jaWVzIHRoYXQgaGF2ZQorKyAg
ICAgICAgc2luY2UgYmVjb21lIG5lY2Vzc2FyeSBpbiBXZWJDb3JlLgorKworKyAgICAgICAgKiBD
TWFrZUxpc3RzLnR4dDoKKysgICAgICAgICogUGxhdGZvcm1HVEsuY21ha2U6CisrICAgICAgICAq
IFBsYXRmb3JtV1BFLmNtYWtlOgorKworKzIwMjItMDItMTggIFNhYW0gQmFyYXRpICA8c2JhcmF0
aUBhcHBsZS5jb20+CisrCisrICAgICAgICBBZGQgTENfU09VUkNFX1ZFUlNJT04gdG8gY29tcGls
ZSB0YXJnZXRzCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MjM2NzIwCisrICAgICAgICA8cmRhcjovLzg0OTg0MTQwPgorKworKyAgICAgICAgUmV2aWV3
ZWQgYnkgTWljaGFlbCBTYWJvZmYuCisrCisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0Jhc2Uu
eGNjb25maWc6CisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL1ZlcnNpb24ueGNjb25maWc6Cisr
CisrMjAyMi0wMi0xNyAgS3lsZSBQaWRkaW5ndG9uICA8a3BpZGRpbmd0b25AYXBwbGUuY29tPgor
KworKyAgICAgICAgTWV0YWwgQU5HTEU6IHZlcnRleCBhcnJheSBkb2VzIG5vdCBjb3JyZWN0bHkg
b2JzZXJ2ZSBjb250ZW50cyBvZiBkYXRhIGJ1ZmZlcnMKKysgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzY3MzMKKysgICAgICAgIDxyZGFyOi8vcHJvYmxl
bS84ODcxMzMwMj4KKysgICAgICAgIDxyZGFyOi8vcHJvYmxlbS84ODQ5OTA3Mz4KKysKKysgICAg
ICAgIFJldmlld2VkIGJ5IERlYW4gSmFja3Nvbi4KKysKKysgICAgICAgIFNpbWlsYXIgdG8gcHJl
dmlvdXMgYnVnICgyMzY0MjcpLCB3ZSB3ZXJlIG5vdCBjb3JyZWN0bHkgb2JzZXJ2aW5nIGNoYW5n
ZXMgdG8gdGhlCisrICAgICAgICB2ZXJ0ZXggYnVmZmVyIGRhdGEuIFRoaXMgY2F1c2VkIHVzIHRv
IG1pc3MgcmViaW5kaW5nIHZlcnRleCBidWZmZXJzCisrICAgICAgICB3aGVuIGRhdGEgd2FzIHVw
ZGF0ZWQgd2l0aG91dCBjYXVzaW5nIGNvbnZlcnNpb24KKysKKysgICAgICAgICogc3JjL2xpYkFO
R0xFL3JlbmRlcmVyL21ldGFsL1ZlcnRleEFycmF5TXRsLmg6CisrICAgICAgICAqIHNyYy9saWJB
TkdMRS9yZW5kZXJlci9tZXRhbC9WZXJ0ZXhBcnJheU10bC5tbToKKysgICAgICAgIChyeDo6VmVy
dGV4QXJyYXlNdGw6OnN5bmNTdGF0ZSk6CisrICAgICAgICAocng6OlZlcnRleEFycmF5TXRsOjpz
ZXR1cERyYXcpOgorKyAgICAgICAgKHJ4OjpWZXJ0ZXhBcnJheU10bDo6c3luY0RpcnR5QXR0cmli
KToKKysKKysyMDIyLTAyLTE3ICBBZHJpYW4gUGVyZXogZGUgQ2FzdHJvICA8YXBlcmV6QGlnYWxp
YS5jb20+CisrCisrICAgICAgICBbR1RLXSBCdWlsZCBicm9rZW4gd2l0aCBFTkFCTEVfWDExX1RB
UkdFVD1PRkYgYW5kIG5vIFgxMSBoZWFkZXJzIHByZXNlbnQKKysgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzY3NzAKKysKKysgICAgICAgIFJldmlld2Vk
IGJ5IEFsZWphbmRybyBHLiBDYXN0cm8uCisrCisrICAgICAgICAqIFBsYXRmb3JtR1RLLmNtYWtl
OiBUaGUgVVNFX1NZU1RFTV9FR0wgZGVmaW5pdGlvbiBkZXRhY2hlcyB0aGUgdHlwZSBkZWZpbml0
aW9ucworKyAgICAgICAgZnJvbSB0aGUgRUdMIGhlYWRlcnMgZ2VuZXJpYyBhbmQgcHJldmVudHMg
QU5HTEUncyBoZWFkZXJzIGZyb20gaW5jbHVkaW5nIHN5c3RlbSBYMTEKKysgICAgICAgIG9yIFdh
eWxhbmQgaGVhZGVycyBmcm9tIHRoZSBzeXN0ZW0sIHNvIGFwcGx5IGl0IGFsd2F5cyBpbmRlcGVu
ZGVudGx5IG9mIHdoZXRoZXIgdGhlCisrICAgICAgICBVU0VfQU5HTEVfe0VHTCxXRUJHTH0gb3B0
aW9ucyBhcmUgZW5hYmxlZC4gV2hpbGUgYXQgaXQsIGZpeCBhIG1pc3NpbmcgZG9sbGFyIHNpZ24g
aW4KKysgICAgICAgIHRoZSBleHBhbnNpb24gb2YgdGhlICR7R0JNX0lOQ0xVREVfRElSfSB2YXJp
YWJsZS4KKysKKysyMDIyLTAyLTE3ICBLaW1tbyBLaW5udW5lbiAgPGtraW5udW5lbkBhcHBsZS5j
b20+CisrCisrICAgICAgICBSRUdSRVNTSU9OIChpT1MgMTUuNGIzKTogQ2F0YXN0cm9waGljICgy
MHgpIHBlcmZvcm1hbmNlIHJlZ3Jlc3Npb24gaW4gdGV4SW1hZ2UyRCBmcm9tIG1wNCB2aWRlbwor
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzNjY5OQor
KworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIuCisrCisrICAgICAgICBEaXNhYmxl
IHRoZSB2YWxpZGF0aW9uIGZvciBJT1N1cmZhY2UgcGl4ZWwgZm9ybWF0cy4KKysgICAgICAgIFdl
IG1pZ2h0IHBhc3Mgbm9uLXB1YmxpYyBmb3JtYXRzIHRoYXQgZG8gbm90IGhhdmUgc2Vuc2libGUg
SU9TdXJmYWNlR2V0Qnl0ZXNQZXJFbGVtZW50T2ZQbGFuZQorKyAgICAgICAgdG8gdmVyaWZ5IHdp
dGggdGhpcyBsb2dpYy4KKysKKysgICAgICAgIFdpbGwgYWRkIHRlc3QgaW4gYnVnIDIzNjc1OS4K
KysKKysgICAgICAgIFByZXZpb3VzIGJ1Z3Mgb2YgdGhlIHNhbWU6CisrICAgICAgICBFQUdMOgor
KyAgICAgICAgVGV4dHVyZXMgRmFpbCB0byBSZW5kZXIgaW4gV2ViR0wgZnJvbSBITFMgU3RyZWFt
IG9uIGlQaG9uZSAxMiBbaU9TIDE0LjJdCisrICAgICAgICBidWcgMjE4NjM3LCByMjczNTgyLCAy
MzQ2MzJAbWFpbgorKyAgICAgICAgQ0dMOgorKyAgICAgICAgUkVHUkVTU0lPTihTYWZhcmkgMTUs
IEJpZ1N1cik6IFBvb3IgdmlkZW8gdGV4dHVyZSB1cGxvYWQgcGVyZm9ybWFuY2Ugd2l0aCBNYWNC
b29rIE0xLCBBTkdMRSBPcGVuR0wgYmFja2VuZAorKyAgICAgICAgYnVnIDIzMjIzNSwgcjI4Njk2
MCwgMjQ1MTgzQG1haW4KKysKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFs
L0lPU3VyZmFjZVN1cmZhY2VNdGwubW06CisrICAgICAgICAocng6OklPU3VyZmFjZVN1cmZhY2VN
dGw6OlZhbGlkYXRlQXR0cmlidXRlcyk6CisrCisrMjAyMi0wMi0xNyAgQ29tbWl0IFF1ZXVlICA8
Y29tbWl0LXF1ZXVlQHdlYmtpdC5vcmc+CisrCisrICAgICAgICBVbnJldmlld2VkLCByZXZlcnRp
bmcgcjI4OTk0OS4KKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMzY3NTcKKysKKysgICAgICAgIEJyZWFrcyBXUEUgYnVpbGRzIHdpdGggLURVU0VfQU5H
TEVfV0VCR0w9T04KKysKKysgICAgICAgIFJldmVydGVkIGNoYW5nZXNldDoKKysKKysgICAgICAg
ICJbQ01ha2VdIENhbm5vdCBmaW5kIE9wZW5HTCB3aGVuIHN5c3RlbSBwcm92aWRlcyBvcGVuZ2wu
cGMKKysgICAgICAgIGluc3RlYWQgb2YgZ2wucGMiCisrICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM2NTkyCisrICAgICAgICBodHRwczovL2NvbW1pdHMu
d2Via2l0Lm9yZy9yMjg5OTQ5CisrCisrMjAyMi0wMi0xNiAgQWRyaWFuIFBlcmV6IGRlIENhc3Ry
byAgPGFwZXJlekBpZ2FsaWEuY29tPgorKworKyAgICAgICAgW0NNYWtlXSBDYW5ub3QgZmluZCBP
cGVuR0wgd2hlbiBzeXN0ZW0gcHJvdmlkZXMgb3BlbmdsLnBjIGluc3RlYWQgb2YgZ2wucGMKKysg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzY1OTIKKysK
KysgICAgICAgIFJldmlld2VkIGJ5IERvbiBPbG1zdGVhZC4KKysKKysgICAgICAgICogUGxhdGZv
cm1HVEsuY21ha2U6IFVzZSB0aGUgT3BlbkdMOjpPcGVuR0wgaW1wb3J0ZWQgdGFyZ2V0IGluc3Rl
YWQgb2YgdGhlCisrICAgICAgICBPUEVOR0xfTElCUkFSSUVTIHZhcmlhYmxlLgorKyAgICAgICAg
KiBQbGF0Zm9ybVdQRS5jbWFrZTogRGl0dG8sIHBsdXMgcmVwbGFjZSBhIHNwdXJpb3VzIHVzZSBv
ZiBPUEVOR0xFU19MSUJSQVJJRVMKKysgICAgICAgIHdpdGggdGhlIE9wZW5HTDo6R0xFUyB0YXJn
ZXQuCisrCisrMjAyMi0wMi0xMSAgS3lsZSBQaWRkaW5ndG9uICA8a3BpZGRpbmd0b25AYXBwbGUu
Y29tPgorKworKyAgICAgICAgQ29jb2EyZC1IVExNNSBnYW1lIGFwZXBhcnMgdG8gdXNlIHdyb25n
IHZlcnRleCBidWZmZXIgZGF0YQorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTIzNjQyNworKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzg3MTM2MzQ1Pgor
KworKyAgICAgICAgUmV2aWV3ZWQgYnkgS2ltbW8gS2lubnVuZW4uCisrCisrICAgICAgICBSZW5k
ZXIgZW5jb2RlciBhcHBlYXJzIHRvIGNhcnJ5IHN0YWxlIHN0YXRlIHdoZW4gYSB2ZXJ0ZXggYXJy
YXkncyBlbGVtZW50CisrICAgICAgICBidWZmZXIgaXMgdXBkYXRlZCwgYnV0IG5vIG90aGVyIHBh
cnRzIG9mIHRoZSBidWZmZXIgYXJlIHVwZGF0ZWQuIFJlYXNzaWduCisrICAgICAgICB2ZXJ0ZXgg
YnVmZmVyIGJpbmRpbmdzIGluIHRoaXMgY2FzZSwgd2hpY2ggY2xlYXJzIHVwIGNvcnJ1cHRpb24K
KysgICAgICAgIChTcXVpc2hlZCByZW5kZXJpbmcgZWxlbWVudHMsIGluY29ycmVjdCBVVidzKQor
KworKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvVmVydGV4QXJyYXlNdGwu
aDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL1ZlcnRleEFycmF5TXRs
Lm1tOgorKyAgICAgICAgKHJ4OjpWZXJ0ZXhBcnJheU10bDo6c3luY1N0YXRlKToKKysgICAgICAg
IChyeDo6VmVydGV4QXJyYXlNdGw6OnNldHVwRHJhdyk6CisrCisrMjAyMi0wMi0wMyAgTWljaGFl
bCBTYWJvZmYgIDxtc2Fib2ZmQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFdlYktpdCBwcm9qZWN0
cyBoYXZlIGluY29ycmVjdCBpbnN0YWxsIG5hbWUgZm9yIHRoZSBmcmFtZXdvcmtzIGZvciBDYXRh
bHlzdCBidWlsZHMgd2l0aCB0aGUgc3lzdGVtIGNvbnRlbnQgcGF0aAorKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzNjEwNQorKworKyAgICAgICAgUmV2
aWV3ZWQgYnkgU2FhbSBCYXJhdGkuCisrCisrICAgICAgICBVcGRhdGVkIERZTElCX0lOU1RBTExf
TkFNRV9CQVNFIGZvciBDYXRhbHlzdCBidWlsZHMgdG8gbm90IHVzZSB0aGUgc3lzdGVtIGNvbnRl
bnQgcGF0aCBwcmVmaXguCisrCisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0FOR0xFLWR5bmFt
aWMueGNjb25maWc6CisrCisrMjAyMi0wMS0xOCAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3Rl
bnNlbkB3ZWJraXQub3JnPgorKworKyAgICAgICAgVXNlIGMrKzJhIGluc3RlYWQgb2YgZ251Kysy
YSBmb3IgQ29jb2EgYnVpbGRzCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MjM0OTM2CisrCisrICAgICAgICBSZXZpZXdlZCBieSBTYW0gV2VpbmlnLgor
KworKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnOgorKworKzIwMjItMDEt
MTcgIERhdmlkIEtpbHplciAgPGRka2lsemVyQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFJFR1JF
U1NJT04gKHIyNDk4MjMpOiBnbDo6Q29udGV4dDo6b25Qcm9ncmFtTGluaygpIGxlYWtzIGdsOjpG
cmFtZWJ1ZmZlciBvYmplY3QgZHVlIGVhcmx5IHJldHVybiB3aGVuIGFuIGVycm9yIG9jY3VycyBp
biBBTkdMRV9UUlkoKSBtYWNybworKyAgICAgICAgPGh0dHBzOi8vd2Via2l0Lm9yZy9iLzIzNTI4
ND4KKysgICAgICAgIDxyZGFyOi8vcHJvYmxlbS84NzY1Njc0Nz4KKysKKysgICAgICAgIFJldmll
d2VkIGJ5IERhcmluIEFkbGVyLgorKworKyAgICAgICAgKiBzcmMvbGliQU5HTEUvQ29udGV4dC5j
cHA6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnNldERlZmF1bHRGcmFtZWJ1ZmZlcik6CisrICAg
ICAgICAtIFVzZSBzdGQ6OnVuaXF1ZV9wdHI8PiB0byBzdG9yZSBnbDo6RnJhbWVidWZmZXIgc28g
dGhlIG9iamVjdAorKyAgICAgICAgICBpcyByZWxlYXNlZCBvbiBlYXJseSByZXR1cm4uCisrICAg
ICAgICAqIHNyYy9saWJBTkdMRS9TdXJmYWNlLmNwcDoKKysgICAgICAgIChlZ2w6OlN1cmZhY2U6
OmNyZWF0ZURlZmF1bHRGcmFtZWJ1ZmZlcik6CisrICAgICAgICAtIFVwZGF0ZSB0byByZXR1cm4g
c3RkOjp1bmlxdWVfcHRyPGdsOjpGcmFtZWJ1ZmZlcj4uCisrICAgICAgICAqIHNyYy9saWJBTkdM
RS9TdXJmYWNlLmg6CisrICAgICAgICAoZWdsOjpTdXJmYWNlOjpjcmVhdGVEZWZhdWx0RnJhbWVi
dWZmZXIpOgorKyAgICAgICAgLSBVcGRhdGUgZGVjbGFyYXRpb24gdG8gcmV0dXJuIHN0ZDo6dW5p
cXVlX3B0cjxnbDo6RnJhbWVidWZmZXI+LgorKyAgICAgICAgKGVnbDo6U3VyZmFjZTo6Y3JlYXRl
RGVmYXVsdEZyYW1lYnVmZmVyKTogRGVsZXRlLgorKyAgICAgICAgLSBSZW1vdmUgdGhlIHNlY29u
ZCwgcHJvdGVjdGVkIG1ldGhvZCB0aGF0IGlzIGN1cnJlbnRseQorKyAgICAgICAgICB1bmltcGxl
bWVudGVkLgorKworKzIwMjItMDEtMTcgIERhdmlkIEtpbHplciAgPGRka2lsemVyQGFwcGxlLmNv
bT4KKysKKysgICAgICAgIFJFR1JFU1NJT04gKHIyODY2MDMpOiByeDo6UHJvZ3JhbU10bDo6Z2V0
U3BlY2lhbGl6ZWRTaGFkZXIoKSBsZWFrcyBNVExGdW5jdGlvbkNvbnN0YW50VmFsdWVzIG9iamVj
dCBkdWUgZWFybHkgcmV0dXJuIHdoZW4gYW4gZXJyb3Igb2NjdXJzIGluIEFOR0xFX1RSWSgpIG1h
Y3JvCisrICAgICAgICA8aHR0cHM6Ly93ZWJraXQub3JnL2IvMjM1MjgxPgorKyAgICAgICAgPHJk
YXI6Ly9wcm9ibGVtLzg3NjU2Mzg3PgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRs
ZXIuCisrCisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9Qcm9ncmFtTXRs
Lm1tOgorKyAgICAgICAgKHJ4OjpQcm9ncmFtTXRsOjpnZXRTcGVjaWFsaXplZFNoYWRlcik6Cisr
ICAgICAgICAtIFVzZSBtdGw6OkF1dG9PYmpDT2JqPD4gdG8gcmVsZWFzZSBNVExGdW5jdGlvbkNv
bnN0YW50VmFsdWVzCisrICAgICAgICAgIG9iamVjdCBvbiBlYXJseSByZXR1cm4uCisrCisrMjAy
Mi0wMS0xNyAgRGF2aWQgS2lsemVyICA8ZGRraWx6ZXJAYXBwbGUuY29tPgorKworKyAgICAgICAg
Rm9sbG93LXVwOiBSRUdSRVNTSU9OIChyMjg2NjAzKTogTGVhayBvZiB0aHJlZSBOU011dGFibGVE
aWN0aW9uYXJ5IG9iamVjdHMgZWFjaCB0aW1lIHJ4OjpEaXNwbGF5TXRsOjpnZXRNZXRhbERldmlj
ZU1hdGNoaW5nQXR0cmlidXRlKCkgaXMgY2FsbGVkCisrICAgICAgICA8aHR0cHM6Ly93ZWJraXQu
b3JnL2IvMjM1Mjc4PgorKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzg3NjUzODEyPgorKworKyAg
ICAgICAgVW5yZXZpZXdlZCBmb2xsb3ctdXAgZml4IGZyb20gQnVnIDIzNTI4MSwgQ29tbWVudCAj
NS4KKysKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL0Rpc3BsYXlNdGwu
bW06CisrICAgICAgICAocng6OkRpc3BsYXlNdGw6OmdldE1ldGFsRGV2aWNlTWF0Y2hpbmdBdHRy
aWJ1dGUpOgorKyAgICAgICAgLSBSZW1vdmUgdW5uZWVkZWQgY2FsbHMgdG8gLmdldCgpLgorKwor
KzIwMjItMDEtMTYgIERhdmlkIEtpbHplciAgPGRka2lsemVyQGFwcGxlLmNvbT4KKysKKysgICAg
ICAgIFJFR1JFU1NJT04gKHIyODY2MDMpOiBMZWFrIG9mIHRocmVlIE5TTXV0YWJsZURpY3Rpb25h
cnkgb2JqZWN0cyBlYWNoIHRpbWUgcng6OkRpc3BsYXlNdGw6OmdldE1ldGFsRGV2aWNlTWF0Y2hp
bmdBdHRyaWJ1dGUoKSBpcyBjYWxsZWQKKysgICAgICAgIDxodHRwczovL3dlYmtpdC5vcmcvYi8y
MzUyNzg+CisrICAgICAgICA8cmRhcjovL3Byb2JsZW0vODc2NTM4MTI+CisrCisrICAgICAgICBS
ZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KKysKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRl
cmVyL21ldGFsL0Rpc3BsYXlNdGwubW06CisrICAgICAgICAocng6OkRpc3BsYXlNdGw6OmdldE1l
dGFsRGV2aWNlTWF0Y2hpbmdBdHRyaWJ1dGUpOgorKyAgICAgICAgLSBNYWtlIHVzZSBvZiBtdGw6
OmFkb3B0T2JqQ09iajw+IHNvIHRoZXNlIG9iamVjdHMgYXJlIHJlbGFzZWVkCisrICAgICAgICAg
IHdoZW4gdGhlIG1ldGhvZCByZXR1cm5zLgorKworKzIwMjItMDEtMTQgIEt5bGUgUGlkZGluZ3Rv
biAgPGtwaWRkaW5ndG9uQGFwcGxlLmNvbT4KKysKKysgICAgICAgIEFOR0xFOiBTdXBwb3J0czMy
Qml0RmxvYXRGaWx0ZXJpbmcgaXMgbm90IHN1cHBvcnRlZCBvbiBUVk9TCisrICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM1MjM5CisrICAgICAgICAKKysg
ICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgorKworKyAgICAgICAgPHJkYXI6Ly84NjQ1
NzA4MT4KKysgICAgICAgIEJyb2tlIGFuIGludGVybmFsIGJ1aWxkLiBDYXVzZWQgYnkgaHR0cHM6
Ly90cmFjLndlYmtpdC5vcmcvY2hhbmdlc2V0LzI4NjMyMy93ZWJraXQKKysKKysgICAgICAgICog
c3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL0Rpc3BsYXlNdGwubW06CisrICAgICAgICAocng6
OkRpc3BsYXlNdGw6OnN1cHBvcnRzMzJCaXRGbG9hdEZpbHRlcmluZyBjb25zdCk6CisrCisrMjAy
Mi0wMS0xMiAgQ2hyaXMgTG9yZCAgPGNsb3JkQGlnYWxpYS5jb20+CisrCisrICAgICAgICBbV1BF
XSBFbmFibGUgV2ViR0wgQU5HTEUgc3VwcG9ydAorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIzNTA2NAorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgQWxl
amFuZHJvIEcuIENhc3Ryby4KKysKKysgICAgICAgIEVuYWJsZSBidWlsZGluZyBvbiBXUEUgKG1v
c3RseSBjb3B5aW5nIHRoZSBHVEsgYnVpbGQgZmlsZSkuCisrCisrICAgICAgICAqIFBsYXRmb3Jt
V1BFLmNtYWtlOgorKworKzIwMjItMDEtMTEgIEt5bGUgUGlkZGluZ3RvbiAgPGtwaWRkaW5ndG9u
QGFwcGxlLmNvbT4KKysKKysgICAgICAgIEFOR0xFOiBBU1RDLUhEUiBpcyBub3QgYXZhaWxhYmxl
IG9uIFRWT1MKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0yMzUwNzYKKysKKysgICAgICAgIFJldmlld2VkIGJ5IERlYW4gSmFja3Nvbi4KKysKKysgICAg
ICAgIDxyZGFyOi8vODczODQwMzg+CisrICAgICAgICBUaGlzIGlzIGEgZm9sbG93IG9uIHBhdGNo
IHRvIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzQxNjQsCisrICAg
ICAgICBBU1RDLUhEUiBpcyBvbmx5IGF2YWlsYWJsZSBvbiBtYWNPUyBhbmQgaU9TLCBub3QgdHZP
UyBvciB3YXRjaE9TCQorKwlUaGlzIHBhdGNoIGZpeGVzIGFuIGludGVybmFsIGJ1aWxkLgorKwor
KyAgICAgICAgKiBzY3JpcHRzL2NvZGVfZ2VuZXJhdGlvbl9oYXNoZXMvTWV0YWxfZm9ybWF0X3Rh
YmxlLmpzb246CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9nZW5fbXRs
X2Zvcm1hdF90YWJsZS5weToKKysgICAgICAgIChnZW5faW1hZ2VfbWFwX3N3aXRjaF9hc3RjX2Nh
c2VfdHZfd2F0Y2hvcyk6CisrICAgICAgICAoZ2VuX2ltYWdlX21hcF9zd2l0Y2hfc3RyaW5nKToK
KysgICAgICAgIChnZW5faW1hZ2VfbXRsX3RvX2FuZ2xlX3N3aXRjaF9zdHJpbmcpOgorKyAgICAg
ICAgKGdlbl9pbWFnZV9tYXBfc3dpdGNoX2FzdGNfY2FzZV93YXRjaG9zKTogRGVsZXRlZC4KKysg
ICAgICAgIChnZW5faW1hZ2VfbWFwX3N3aXRjaF9hc3RjX2Nhc2Vfd2F0Y2hvcy5nZW5fZm9ybWF0
X2Fzc2lnbl9jb2RlKTogRGVsZXRlZC4KKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVy
L21ldGFsL210bF9mb3JtYXRfdGFibGVfYXV0b2dlbi5tbToKKysgICAgICAgIChyeDo6bXRsOjpG
b3JtYXQ6Ok1ldGFsVG9BbmdsZUZvcm1hdElEKToKKysgICAgICAgIChyeDo6bXRsOjpGb3JtYXQ6
OmluaXQpOgorKworKzIwMjItMDEtMTAgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5A
d2Via2l0Lm9yZz4KKysKKysgICAgICAgIFN0YXJ0IHVzaW5nIEMrKzIwCisrICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMzOTYzCisrCisrICAgICAgICBS
ZXZpZXdlZCBieSBZdXN1a2UgU3V6dWtpLgorKworKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9C
YXNlLnhjY29uZmlnOgorKworKzIwMjItMDEtMDkgIFNhbSBXZWluaWcgIDx3ZWluaWdAYXBwbGUu
Y29tPgorKworKyAgICAgICAgUmVtb3ZlIHN1cHBvcnQgZm9yIERpcmVjdDJECisrICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM0OTk5CisrCisrICAgICAg
ICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KKysKKysgICAgICAgIERpcmVjdDJEIGFuZCBGVFcg
aGF2ZSBub3QgYmVlbiBidWlsZGluZyBmb3Igb3ZlciBhIHllYXIuIEl0IGlzCisrICAgICAgICB0
aW1lIHRvIHJlbW92ZSB0aGVtLgorKworKyAgICAgICAgKiBQbGF0Zm9ybUZUVy5jbWFrZTogUmVt
b3ZlZC4KKysKKysyMDIyLTAxLTA3ICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdl
YmtpdC5vcmc+CisrCisrICAgICAgICBVbnJldmlld2VkLCByZXZlcnRpbmcgcjI4NzY5OC4KKysK
KysgICAgICAgIEJyb2tlIGFuIGludGVybmFsIGJ1aWxkCisrCisrICAgICAgICBSZXZlcnRlZCBj
aGFuZ2VzZXQ6CisrCisrICAgICAgICAiU3RhcnQgdXNpbmcgQysrMjAiCisrICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMzOTYzCisrICAgICAgICBodHRw
czovL2NvbW1pdHMud2Via2l0Lm9yZy9yMjg3Njk4CisrCisrMjAyMi0wMS0wNiAgQWxleCBDaHJp
c3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgorKworKyAgICAgICAgU3RhcnQgdXNp
bmcgQysrMjAKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0yMzM5NjMKKysKKysgICAgICAgIFJldmlld2VkIGJ5IFl1c3VrZSBTdXp1a2kuCisrCisrICAg
ICAgICAqIENvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWc6CisrCisrMjAyMi0wMS0wNSAgS3ls
ZSBQaWRkaW5ndG9uICA8a3BpZGRpbmd0b25AYXBwbGUuY29tPgorKworKyAgICAgICAgUm9sbCBB
TkdMRSB0byBhYWJmZTg3NDdkIDEyLTE3LTIwMjEKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzQ1MjMKKysKKysgICAgICAgIFJldmlld2VkIGJ5IEtl
bm5ldGggUnVzc2VsbC4KKysKKysgICAgICAgIFRoZSBjaGFuZ2Vsb2cgaGFzIGJlZW4gcmVtb3Zl
ZCB0byBpbXByb3ZlIHJlYWRhYmlsaXR5LgorKyAgICAgICAgVGhlIGZvbGxvd2luZyBBTkdMRSBj
b21taXRzIHdlcmUgbWVyZ2VkOiAKKysKKysgICAgICAgIGFhYmZlODc0NyBNZXRhbDogVXNlIHRo
ZSBjb250ZXh0IGRldmljZSB0byBUZXh0dXJlOjpyZXNpemUKKysgICAgICAgIDM0ZWE4MTExMSBS
ZWxhbmQgIlZ1bGthbjogRG9uJ3QgZXhwb3NlIE1TUlRUIG9uIFN3aWZ0U2hhZGVyIgorKyAgICAg
ICAgNjI0ZTNjM2Q1IEZpeCBkYW5nZXJvdXMgdXNlIG9mIEF1dG9PYmpDUHRyIGFmdGVyIG93bmVy
c2hpcCBpZGVudGl0eSBjaGFuZ2UKKysgICAgICAgIDRhMTQ4ZTlkOSBSZXZlcnQgIlZ1bGthbjog
U3VwcHJlc3MgVlVJRC12a0NtZERyYXctYmxlbmRFbmFibGUiCisrICAgICAgICBlZGUwYjhiNzEg
QXZvaWQgQU5HTEVfTVRMX0FVVE9SRUxFQVNFIGluc2lkZSBBU1NFUlQsIGl0IGxlYWtzIG9uIFJl
bGVhc2UKKysgICAgICAgIGNiNGY0NDFjOCBSb2xsIHZ1bGthbi1kZXBzIGZyb20gMzlmM2ExOGJk
ZmJlIHRvIDU1NjgwNDhkMjA1ZSAoOCByZXZpc2lvbnMpCisrICAgICAgICAyZjc4YjQ4ZGIgUm9s
bCBDaHJvbWl1bSBmcm9tIDE0Y2E3NWQyNTRhNSB0byA4MWRlY2I3MjUwZTEgKDE5MSByZXZpc2lv
bnMpCisrICAgICAgICAwMDEyMjFmMGUgTWV0YWw6IHVwc3RyZWFtIGZpeCBmcm9tIFdlYktpdCBm
b3IgdGV4dHVyZSBsZWFrLgorKyAgICAgICAgZGNhNDM0YmRjIFJvbGwgQ2hyb21pdW0gZnJvbSAz
ZjZjODhmNTU4MWEgdG8gMTRjYTc1ZDI1NGE1ICg0MDEgcmV2aXNpb25zKQorKyAgICAgICAgYjlm
MmQ5Y2MxIFVzZSB0ZXh0IGV4cGVjdGF0aW9ucyB0byBza2lwIGEgdGVzdAorKyAgICAgICAgNmM4
OTRlODI5IFZ1bGthbjogUmVwbGFjZSBCdWZmZXJWazo6Z2V0QnVmZmVyQW5kT2Zmc2V0KCkgd2l0
aCBnZXRCdWZmZXIoKQorKyAgICAgICAgZjI3MzZmNmRjIFRlc3RzOiBBZGQgTXkgVGFsa2luZyBU
b20gRnJpZW5kcyB0cmFjZS4KKysgICAgICAgIGE5M2EzOTMwYiBWdWxrYW46IFRyYWNrIGVuYWJs
ZWQgaW4gVmVydGV4QXJyYXkKKysgICAgICAgIDgzYTY3MGFiMCBWdWxrYW46IEltcGxlbWVudCBC
dWZmZXJQb29sIHVzaW5nIFZNQSdzIHZpcnR1YWwgYWxsb2NhdG9yCisrICAgICAgICA4MzY3OTcx
NjYgVnVsa2FuOiBEaXJ0eSB2ZXJ0ZXggYnVmZmVycyBpZiBkZWZhdWx0IGF0dHJpYiB2YWx1ZXMg
Y2hhbmdlZAorKyAgICAgICAgNTQzZjU3NTBmIChvcmlnaW4vY2hyb21pdW0vNDc3MSkgVnVsa2Fu
OiBEaXNhYmxlIHByb3RlY3RlZCBtZW1vcnkgZm9yIEFSTQorKyAgICAgICAgYzc0NDZhYzQyIEFk
ZCBzdXBwb3J0IGZvciBHTF9NRVNBX2ZyYW1lYnVmZmVyX2ZsaXBfeSAxLyoKKysgICAgICAgIDYw
MzgzYjQxZSBUZXN0czogQWRkIERvdGEgVW5kZXJsb3JkcyB0cmFjZS4KKysgICAgICAgIGYyNjY4
N2EwMyBUZXN0czogQWRkIE15IFRhbGtpbmcgVG9tIDIgdHJhY2UuCisrICAgICAgICA0MzhkZTE3
ZWUgUm9sbCB2dWxrYW4tZGVwcyBmcm9tIGE4MjIxZWVkNTk3MCB0byAzOWYzYTE4YmRmYmUgKDUg
cmV2aXNpb25zKQorKyAgICAgICAgZTc0MTNhZGZmIHN5c3RlbV91dGlsc19wb3NpeDogQ2hlY2sg
Zm9yIFNFR1ZfTUFQRVJSIHNpX2NvZGUuCisrICAgICAgICA2ZTVmZDgxNjUgU3VwcG9ydCBtb3Jl
IEltYWdlTGF5b3V0IGluIENvbnZlcnRJbWFnZUxheW91dFRvR0xJbWFnZUxheW91dAorKyAgICAg
ICAgYjI2YmIxM2FiIE1ldGFsOiBSZW1vdmUgcmVmZXJlbmNlcyB0byB4ZmJBY3RpdmVVbnBhdXNl
ZCB1bmlmb3JtCisrICAgICAgICBiYjViYWIwMzEgUm9sbCBDaHJvbWl1bSBmcm9tIDJkYWUwN2Vl
YjE2MyB0byAzZjZjODhmNTU4MWEgKDQxNCByZXZpc2lvbnMpCisrICAgICAgICBjNGQ0MzRiOTEg
TWV0YWw6IEVuYWJsZSBPRVNfZmJvX3JlbmRlcl9taXBtYXAKKysgICAgICAgIDY3MDY3OTkxOCBN
ZXRhbDogRml4IFdlYmtpdCB3YXJuaW5ncyBpbiBBTkdMRSBidWlsZAorKyAgICAgICAgYmRhNDkz
MjU4IEFkZCBndWFyZHMgZm9yIDY0IGJpdCB0eXBlcyBvbiAzMmJpdCBzeXN0ZW1zCisrICAgICAg
ICBlN2M5ZGJiODggU2tpcCBTaW1wbGVTdGF0ZUNoYW5nZVRlc3RFUzMuT3V0T2ZCb3VuZHNCeXRl
QXR0cmlidXRlIG9uIFBpeGVsNCBHTEVTCisrICAgICAgICA4OWUxMTg3OGIgVnVsa2FuOiBGaXgg
dGhlIFVBRiBpc3N1ZSB3aXRoIEJ1ZmZlckRhdGEKKysgICAgICAgIGVlMWQzY2Y3NCBNZXRhbDog
SW50ZWdyYXRlIE1ldGFsIEJpbmFyeSBTaGFkZXIgZ2VuZXJhdGlvbgorKyAgICAgICAgM2U3ZTI3
NThmIE1ldGFsOiBGaXggbWFjT1MgQU5HTEUgYnVpbGQgb24gQ2F0YWxpbmEgKDEwLjE1KSBTREsK
KysgICAgICAgIDA1YTQ0ZGQyNCBWdWxrYW46IFNldCBjb250ZW50IHVuZGVmaW5lZCBvbiBlZ2xT
d2FwQnVmZmVycworKyAgICAgICAgMjZmYTBmZTY4IFRlc3RzOiBBZGQgQXNwaGFsdCA5IHRyYWNl
CisrICAgICAgICA1Mjc1ZjQ4N2UgVnVsa2FuOiBEaXNhYmxlIGFzeW5jIGNvbW1hbmQgcXVldWUg
d2l0aCBWdWxrYW4gU0NCcworKyAgICAgICAgZmViNTk5YWQ4IEludmFsaWRhdGUgRUdMIGhhbmRs
ZXMgZHVyaW5nIGVnbFRlcm1pbmF0ZQorKyAgICAgICAgMzJlMjNiYjlkIEV4cGFuZCBXZWJHTENv
bXByZXNzZWRUZXh0dXJlQXZhaWxhYmlsaXR5VGVzdAorKyAgICAgICAgZDZiOWEyNTk3IGVuZDJl
bmRfdGVzdHM6IEFkZCBTd1MgKyBBc3luY1F1ZXVlIHRlc3RpbmcuCisrICAgICAgICBhMGViNjE0
NmMgVXBkYXRlIHdhcm5pbmcgbWVzc2FnZSBmb3IgaW52YWxpZCBpbmNsdWRlCisrICAgICAgICBj
YWM4MWYwNzcgUmV0dXJuIGZ1bGwgZXJyb3IgaW5mbyB3aGVuIG9wZW5pbmcgYSBsaWJyYXJ5IHdp
dGggZGxvcGVuCisrICAgICAgICA5MGMzMDM4ZTUgVnVsa2FuOiBGaXggZGVzYyBzZXQgdXBkYXRl
cyB3aXRoIFZ1bGthbiBTQ0JzCisrICAgICAgICA4NDE5ZjRmY2QgUm9sbCB2dWxrYW4tZGVwcyBm
cm9tIGMwMzg5MDA3Njk1NCB0byBhODIyMWVlZDU5NzAgKDIgcmV2aXNpb25zKQorKyAgICAgICAg
ZGIzNjdiZDcxIFJvbGwgQ2hyb21pdW0gZnJvbSAwYzBhMzY1NDY5NGYgdG8gMmRhZTA3ZWViMTYz
ICg0NTAgcmV2aXNpb25zKQorKyAgICAgICAgYmZjN2YwOWFlIFJldmVydCAiVXBncmFkZSByZXN0
cmljdGVkIHRyYWNlcyB0byBuZXcgdHJhY2UgZm9ybWF0LiIKKysgICAgICAgIDgwMGM2OTcxYyBN
b2RpZmllZCBidWZmZXIgZmFsbGJhY2sgZm9ybWF0IHRvIHNtYWxsZXIgc3RvcmFnZSBmb3JtYXQK
KysgICAgICAgIDcwOWQ4NzI3OCBSZXZlcnQgIlRyYWNlIFRlc3RzOiBSZW1vdmUgYXV0by1nZW5l
cmF0ZWQgY29kZS4iCisrICAgICAgICAzZGE1NDI1MGIgU2tpcCBNdWx0aXRocmVhZGluZ1Rlc3Qu
TXVsdGlDb250ZXh0RHJhd1dpdGhTd2FwQnVmZmVycworKyAgICAgICAgN2YxYTBmODliIFN3aXRj
aCB0byBub24tZGVwcmVjYXRlZCBiYmFnZW50LCByZW1vdmUgZGVmdW5jdCBleHBlcmltZW50cy4K
KysgICAgICAgIDlkNDlkODQzOCBBZGQgV2ViR0xDb21wcmVzc2VkVGV4dHVyZUF2YWlsYWJpbGl0
eVRlc3QKKysJCisrMjAyMi0wMS0wNSAgTWljaGFlbCBTYWJvZmYgIDxtc2Fib2ZmQGFwcGxlLmNv
bT4KKysKKysgICAgICAgIFJFR1JFU1NJT04gKHIyODczODIpOiBsaWJBTkdMRSBpcyBidWlsdCBp
bnRvIGEgd3JvbmcgbG9jYXRpb24gb24gaU9TCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM0ODU3CisrCisrICAgICAgICBSZXZpZXdlZCBieSBTYWFt
IEJhcmF0aS4KKysKKysgICAgICAgIFJldmVydGVkIHRvIHRoZSBwcmlvciBsb2dpYyB0byBjb21w
dXRlIElOU1RBTExfUEFUSC4gIFRoZW4gYWRkZWQgYW4gb3B0aW9uYWwgcHJlZml4CisrICAgICAg
ICBmb3IgdGhlIGFsdGVybmF0ZSByb290IGZyYW1ld29yayBsb2NhdGlvbi4KKysKKysgICAgICAg
ICogQ29uZmlndXJhdGlvbnMvQU5HTEUtZHluYW1pYy54Y2NvbmZpZzoKKysKKysyMDIxLTEyLTIy
ICBNaWNoYWVsIFNhYm9mZiAgPG1zYWJvZmZAYXBwbGUuY29tPgorKworKyAgICAgICAgRml4IFdl
YktpdCBCdWlsZCBpc3N1ZXMgd2hlbiB1c2luZyBzeXN0ZW0gY29udGVudCBwYXRoCisrICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM0NjI0CisrCisrICAg
ICAgICBSZXZpZXdlZCBieSBGaWxpcCBQaXpsby4KKysKKysgICAgICAgIENoYW5nZWQgSU5TVEFM
TF9QQVRIIG9uIG1hY09TIGJ1aWxkcyB0byB1c2UgYSBmdWxseSBxdWFsaWZpZWQgLi4uL1dlYkNv
cmUuZnJhbWV3b3JrL1ZlcnNpb25zL0EvRnJhbWV3b3Jrcy4KKysgICAgICAgIERlbGV0ZWQgdW51
c2VkIGNyZWF0ZS1zeW1saW5rLXRvLWFsdHJvb3Quc2ggc2NyaXB0LgorKworKyAgICAgICAgKiBD
b25maWd1cmF0aW9ucy9BTkdMRS1keW5hbWljLnhjY29uZmlnOgorKyAgICAgICAgKiBzY3JpcHRz
L2NyZWF0ZS1zeW1saW5rLXRvLWFsdHJvb3Quc2g6IFJlbW92ZWQuCisrCisrMjAyMS0xMi0yMSAg
TWljaGFlbCBTYWJvZmYgIDxtc2Fib2ZmQGFwcGxlLmNvbT4KKysKKysgICAgICAgIEZpeCBzeW1s
aW5rcyBmb3IgYWx0ZXJuYXRlIHJvb3QgZnJhbWV3b3JrIGxvY2F0aW9ucworKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzNDU2NworKworKyAgICAgICAg
UmV2aWV3ZWQgYnkgRmlsaXAgUGl6bG8uCisrCisrICAgICAgICBFbGltaW5hdGVkIHRoZSBjcmVh
dGlvbiBvZiBzeW1saW5rcyBmb3IgQU5HTEUgYXMgaXQgaXMgdW5kZXIgV2ViQ29yZS4KKysKKysg
ICAgICAgICogQU5HTEUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKysgICAgICAgICogQ29u
ZmlndXJhdGlvbnMvQU5HTEUtZHluYW1pYy54Y2NvbmZpZzoKKysKKysyMDIxLTEyLTIxICBBcmNh
ZHkgR29sZG1pbnRzLU9ybG92ICA8YWdvbGRtaW50c0BpZ2FsaWEuY29tPgorKworKyAgICAgICAg
W0dUS10gYnVpbGQgZmFpbHMgd2l0aCB1bmRlZmluZWQgc3ltYm9sIGluIEFOR0xFIGlmIFVTRV9B
TkdMRV9XRUJHTCBpcyBlbmFibGVkLgorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIzNDIzOQorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgS2VubmV0aCBS
dXNzZWxsLgorKworKyAgICAgICAgQWRkIGEgbmV3IGxpbnV4LmNtYWtlIGZpbGUgdGhhdCBkZWZp
bmVzIGFuZ2xlX2RtYV9idWZfc291cmNlcy4KKysgICAgICAgIFRoaXMgbGlzdCBnZXRzIGFwcGVu
ZGVkIGl0IGludG8gQU5HTEVfU09VUkNFUyBpbiBQbGF0Zm9ybUdUSy5jbWFrZS4KKysKKysgICAg
ICAgICogbGludXguY21ha2U6IEFkZGVkLiBNYW51YWwgdHJhbnNsYXRpb24gb2Ygc3JjL2NvbW1v
bi9saW51eC9CVUlMRC5nbi4KKysgICAgICAgICogUGxhdGZvcm1HVEsuY21ha2U6CisrCisrMjAy
MS0xMi0xNyAgRnVqaWkgSGlyb25vcmkgIDxIaXJvbm9yaS5GdWppaUBzb255LmNvbT4KKysKKysg
ICAgICAgIFtBTkdMRV0gIldBUk46IGRyaXZlcl91dGlscy5jcHA6MTY5IChyeDo6R2V0VmVuZG9y
U3RyaW5nKTohIFVuaW1wbGVtZW50ZWQ6IHJ4OjpHZXRWZW5kb3JTdHJpbmciIG9uIFdpbkNhaXJv
IGRlYnVnIHRlc3RpbmcgYm90CisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MjM0MzcxCisrCisrICAgICAgICBSZXZpZXdlZCBieSBLZW5uZXRoIFJ1c3Nl
bGwuCisrCisrICAgICAgICBBZnRlciByMjg2NjAzIHVwZGF0ZWQgQU5HTEUsIFdpbkNhaXJvIGRl
YnVnIHRlc3RpbmcgYm90IHdhcworKyAgICAgICAgb2JzZXJ2aW5nIGFubm95aW5nIHdhcm5pbmcg
bWVzc2FnZSBmb3IgYWxsIFdlYkdMIHRlc3N0cy4KKysgICAgICAgID4gV0FSTjogZHJpdmVyX3V0
aWxzLmNwcDoxNjkgKHJ4OjpHZXRWZW5kb3JTdHJpbmcpOiAJISBVbmltcGxlbWVudGVkOiByeDo6
R2V0VmVuZG9yU3RyaW5nKC4uXC4uXFNvdXJjZVxUaGlyZFBhcnR5XEFOR0xFXHNyY1xsaWJBTkdM
RVxyZW5kZXJlclxkcml2ZXJfdXRpbHMuY3BwOjE2OSkKKysKKysgICAgICAgIFRoZSB2ZW5kb3Ig
SUQgd2FzIDB4MTQxNCAoTWljcm9zb2Z0KS4KKysgICAgICAgIDxodHRwczovL3BjaXNpZy5jb20v
bWVtYmVyc2hpcC9tZW1iZXItY29tcGFuaWVzPgorKworKyAgICAgICAgKiBzcmMvbGliQU5HTEUv
cmVuZGVyZXIvZHJpdmVyX3V0aWxzLmNwcDoKKysgICAgICAgIChyeDo6R2V0VmVuZG9yU3RyaW5n
KTogQWRkZWQgbW9yZSB2ZW5kb3Igc3RyaW5ncyBmb3IgdmVuZG9yIElEcy4KKysgICAgICAgICog
c3JjL2xpYkFOR0xFL3JlbmRlcmVyL2RyaXZlcl91dGlscy5oOiBBZGRlZCBWRU5ET1JfSURfTUlD
Uk9TT0ZULgorKworKzIwMjEtMTItMTcgIEtpbW1vIEtpbm51bmVuICA8a2tpbm51bmVuQGFwcGxl
LmNvbT4KKysKKysgICAgICAgIFJFR1JFU1NJT04gKHIyODcwNjgpOiBbbWFjT1MgYXJtNjRdIFRl
c3RXZWJLaXRBUEkuR3JhcGhpY3NDb250ZXh0R0xDb2NvYVRlc3QuVW5yZWN5Y2xlZERpc3BsYXlC
dWZmZXJzTm9MZWFrcyBpcyBmYWlsaW5nCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MjM0MzU2CisrICAgICAgICA8cmRhcjovL3Byb2JsZW0vODY1MzM4
OTI+CisrCisrICAgICAgICBSZXZpZXdlZCBieSBBbnR0aSBLb2l2aXN0by4KKysKKysgICAgICAg
IEF2b2lkIGxlYWtpbmcgTVRMVGV4dHVyZSBpbnN0YW5jZXMgZm9yIHJlbmRlciB0YXJnZXRzLiBM
ZWFrIHdvdWxkIGhhcHBlbiB0aHJvdWdoCisrICAgICAgICB0ZW1wb3JhcnkgcmVuZGVyIHBhc3Mg
ZGVzY3JpcHRvciB0aGF0IHdvdWxkIHJlZiB0aGUgcmVuZGVyIHRhcmdldCB0ZXh0dXJlLgorKyAg
ICAgICAgVGhlIGRlc2NyaXB0b3Igd2FzIGNyZWF0ZWQgd2l0aG91dCBhdXRvcmVsZWFzZXBvb2wg
aW4gY2FsbCBzdGFjay4KKysgICAgICAgIEFsc28gZml4ZXMgdGhlIGVycm9yIHN0cmluZyBsZWFr
cy4KKysKKysgICAgICAgIFVucmVjeWNsZWREaXNwbGF5QnVmZmVyc05vTGVha3Mgd291bGQgcmVw
b3J0IGxlYWtzIG9mIGlvc3VyZmFjZS1iYWNrZWQKKysgICAgICAgIEdyYXBoaWNzQ29udGV4dEdM
IGRlZmF1bHQgZnJhbWVidWZmZXIgYm91bmQgdGV4dHVyZXMgaWYgZ2xDbGVhciB3YXMgY2FsbGVk
LgorKworKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvQ29udGV4dE10bC5t
bToKKysgICAgICAgIChyeDo6Q29udGV4dE10bDo6Z2V0UmVuZGVyUGFzc0NvbW1hbmRFbmNvZGVy
KToKKysKKysyMDIxLTEyLTE2ICBKb2huIEN1bm5pbmdoYW0gIDxqb2huY3VubmluZ2hhbUBhcHBs
ZS5jb20+CisrCisrICAgICAgICBBZGQgc3VwcG9ydCB0byBhdHRyaWJ1dGUgb3duZXJzaGlwIG9m
IEFOR0xFIE1ldGFsJ3MgcmVzb3VyY2VzCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MjMzOTQxCisrCisrICAgICAgICBSZXZpZXdlZCBieSBLaW1tbyBL
aW5udW5lbi4KKysKKysgICAgICAgIEFkZCBTUEkgdG8gbXRsX3Jlc291cmNlX3NwaS5oIHRvIGF0
dHJpYnV0ZSBtZW1vcnkgdG8gYW5vdGhlciB0YXNrLgorKworKyAgICAgICAgKiBDb25maWd1cmF0
aW9ucy9BTkdMRS1keW5hbWljLnhjY29uZmlnOgorKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9B
TkdMRS1zdGF0aWMueGNjb25maWc6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9t
ZXRhbC9tdGxfcmVzb3VyY2Vfc3BpLmg6CisrICAgICAgICAocng6Om10bDo6c2V0T3duZXJXaXRo
SWRlbnRpdHkpOgorKworKzIwMjEtMTItMTYgIE1pY2hhZWwgU2Fib2ZmICA8bXNhYm9mZkBhcHBs
ZS5jb20+CisrCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MjM0MTczCisrICAgICAgICBVcGRhdGUgSW5zdGFsbCBQYXRocyBmb3IgYnVpbGQgc3lzdGVt
IGNoYW5nZXMKKysKKysgICAgICAgIFJldmlld2VkIGJ5IEZpbGlwIFBpemxvLgorKworKyAgICAg
ICAgQWRkZWQgYnVpbGQgdmFyaWFibGVzIGFuZCBidWlsZCBzdGVwIHRvIGNyZWF0ZSBzeW1saW5r
cyBwb2ludGluZyB0byB0aGUgYWx0ZXJuYXRlCisrICAgICAgICBidWlsZCBsb2NhdGlvbnMgZnJv
bSB0aGUgY3VycmVudCBmcmFtZXdvcmsgaW5zdGFsbCBsb2NhdGlvbi4KKysKKysgICAgICAgICog
QU5HTEUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKysgICAgICAgICogQ29uZmlndXJhdGlv
bnMvQU5HTEUtZHluYW1pYy54Y2NvbmZpZzoKKysgICAgICAgICogc2NyaXB0cy9jcmVhdGUtc3lt
bGluay10by1hbHRyb290LnNoOiBBZGRlZC4KKysKKysyMDIxLTEyLTE1ICBEZWFuIEphY2tzb24g
IDxkaW5vQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFtBTkdMRV0gY2xhbmcgd2l0aCAtV3Vua25v
d24td2FybmluZy1vcHRpb24gd2lsbCBmYWlsIG9uIC1Xd2Vhay10ZW1wbGF0ZS12dGFibGVzCisr
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMzODM3Cisr
ICAgICAgICA8cmRhcjovL3Byb2JsZW0vODYzMzU4MTk+CisrCisrICAgICAgICBSZXZpZXdlZCBi
eSBBbnRvaW5lIFF1aW50LgorKworKyAgICAgICAgVHVybiBvZmYgdW5rbm93bi13YXJuaW5nLW9w
dGlvbiBvbiBBcHBsZSBidWlsZHMuIFRoaXMgc2hvdWxkbid0IG5lZWQgdG8gYmUKKysgICAgICAg
IHVwc3RyZWFtZWQgLSB0aGUgWGNvZGUgY29uZmlndXJhdGlvbnMgZm9yIEFOR0xFIGFyZSBzcGVj
aWZpYyB0byBXZWJLaXQuCisrCisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25m
aWc6CisrCisrMjAyMS0xMi0xNSAgQ2hyaXMgTG9yZCAgPGNsb3JkQGlnYWxpYS5jb20+CisrCisr
ICAgICAgICBbR1RLXSBVc2UgbGliZ2JtIGFuZCB0aGUgQU5HTEUgZ2JtIGJhY2tlbmQgdG8gZml4
IGluaXRpYWxpc2F0aW9uCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MjM0MjkzCisrCisrICAgICAgICBSZXZpZXdlZCBieSBEb24gT2xtc3RlYWQuCisr
CisrICAgICAgICBVc2UgR0JNIGJhY2tlbmQgZm9yIEdUSyBwbGF0Zm9ybS4KKysKKysgICAgICAg
ICogQ01ha2VMaXN0cy50eHQ6CisrICAgICAgICAqIEdMLmNtYWtlOgorKyAgICAgICAgKiBQbGF0
Zm9ybUdUSy5jbWFrZToKKysKKysyMDIxLTEyLTE1ICBLeWxlIFBpZGRpbmd0b24gIDxrcGlkZGlu
Z3RvbkBhcHBsZS5jb20+CisrCisrICAgICAgICBbQU5HTEVdIFJvbGwgQU5HTEUgdG8gMTItMTQt
MjAyMSAoNWVlN2RmYmQ1YTMpCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MjM0MzE3CisrCisrICAgICAgICBSZXZpZXdlZCBieSBLZW5uZXRoIFJ1c3Nl
bGwuCisrCisrICAgICAgICBSb2xsIEFOR0xFIHRvIDEyLTE0LTIwMjEgdG8gaW5jbHVkZSBuZXcg
bWVtb3J5LWF0dHJpYnV0aW9uCisrICAgICAgICBNZXRhbCBkZXZpY2UsIG1lcmdlIHVwIGZpeGVz
LCBFQUMvIEFTVEMgc3VwcG9ydCBvbiBNMQorKworKyAgICAgICAgVGhlIGNoYW5nZWxvZyBoYXMg
YmVlbiByZW1vdmVkIHRvIHByb21vdGUgcmVhZGFiaWxpdHkgICAgICAgCisrCisrMjAyMS0xMi0x
MyAgQWxlamFuZHJvIEcuIENhc3RybyAgPGFsZXhAaWdhbGlhLmNvbT4KKysKKysgICAgICAgIFtH
VEtdIEZpeCBBTkdMRSBjb21waWxhdGlvbgorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTIzMzMyNworKworKyAgICAgICAgUmV2aWV3ZWQgYnkgS2VubmV0
aCBSdXNzZWxsLgorKworKyAgICAgICAgVGhlcmUgaXMgYSBkZWZpbmUgd2l0aCBhIHR5cG8gaW4g
dGhlIG5hbWUgYW5kIGFjdGl2YXRpbmcgRUdMIGFuZAorKyAgICAgICAgWDExIGRvZXMgbm90IHdv
cmsgYXQgdGhlIHNhbWUgdGltZS4KKysKKysgICAgICAgICogUGxhdGZvcm1HVEsuY21ha2U6Cisr
CisrMjAyMS0xMi0xMyAgS3lsZSBQaWRkaW5ndG9uICA8a3BpZGRpbmd0b25AYXBwbGUuY29tPgor
KworKyAgICAgICAgW01hY0NhdGFseXN0XSBmaXggaU9TTWFjIGFmdGVyIHJlZmFjdG9yIGluIHIy
ODY4OTkKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MzQyNTAKKysKKysgICAgICAgIFJldmlld2VkIGJ5IERlYW4gSmFja3Nvbi4KKysKKysgICAgICAg
IEFsc28gaW5jbHVkZXMgYSBsb25nZXIgdGVybSBmaXggZm9yIAorKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMzk3NworKworKyAgICAgICAgVGVzdGVk
IGJ1aWxkcyBvbiBtYWMsIGlPUywgVFYgU0RLcywgcGx1cyBpT1NNYWMKKysKKysgICAgICAgICog
c3JjL2NvbW1vbi9wbGF0Zm9ybS5oOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIv
bWV0YWwvZ2VuX210bF9mb3JtYXRfdGFibGUucHk6CisrICAgICAgICAoZ2VuX2ltYWdlX21hcF9z
d2l0Y2hfc3RyaW5nKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210
bF9mb3JtYXRfdGFibGVfYXV0b2dlbi5tbToKKysgICAgICAgIChyeDo6bXRsOjpGb3JtYXQ6Omlu
aXQpOgorKworKzIwMjEtMTItMTMgIEtpbW1vIEtpbm51bmVuICA8a2tpbm51bmVuQGFwcGxlLmNv
bT4KKysKKysgICAgICAgIFJFR1JFU1NJT04oU2FmYXJpIDE1LCBCaWdTdXIpOiBQb29yIHZpZGVv
IHRleHR1cmUgdXBsb2FkIHBlcmZvcm1hbmNlIHdpdGggTWFjQm9vayBNMSwgQU5HTEUgT3BlbkdM
IGJhY2tlbmQgCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MjMyMjM1CisrICAgICAgICA8cmRhcjovL3Byb2JsZW0vODQ4Nzg4MTU+CisrICAgICAgICBS
ZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisrCisrICAgICAgICBSZW1vdmUgdmFsaWRhdGlvbiBm
b3IgSU9TdXJmYWNlIGVsZW1lbnQgc2l6ZSB3aGVuIGEgSU9TdXJmYWNlIGlzIGJvdW5kCisrICAg
ICAgICB0byBhIHBidWZmZXIuIFRoZSBJT1N1cmZhY2VHZXRCeXRlc1BlckVsZW1lbnRPZlBsYW5l
IGlzIG5vdCB2YWxpZCBmb3Igc29tZSBpbnRlcm5hbCBmb3JtYXRzCisrICAgICAgICB0aGF0IG1p
Z2h0IGJlIGNvbXByZXNzZWQuCisrCisrICAgICAgICBXaWxsIGFkZCBhIFdlYktpdCBsZXZlbCB0
ZXN0IGluIHN1YnNlcXVlbnQgZml4LgorKyAgICAgICAgV2lsbCBhZGQgYW4gQU5HTEUgbGV2ZWwg
dGVzdCBkdXJpbmcgdXBzdHJlYW1pbmcgb2YgdGhlIHBhdGNoLgorKworKyAgICAgICAgU2FtZSBh
cyAiVGV4dHVyZXMgRmFpbCB0byBSZW5kZXIgaW4gV2ViR0wgZnJvbSBITFMgU3RyZWFtIG9uIGlQ
aG9uZSAxMiBbaU9TIDE0LjJdIgorKyAgICAgICAgYnV0IHRoaXMgdGltZSBmb3IgQ0dMLgorKyAg
ICAgICAgaHR0cHM6Ly93ZWJraXQub3JnL2IvMjE4NjM3ICByZGFyOi8vcHJvYmxlbS83MTEwMjEy
NgorKworKyAgICAgICAgUmVtb3ZlIGluY29ycmVjdCB2YWxpZGF0aW9uIHRoYXQgSU9TdXJmYWNl
IHBpeGVsIGZvcm1hdCBtYXRjaGVzCisrICAgICAgICB0aGUgcGl4ZWwgZm9ybWF0IG9mIHRoZSB0
ZXh0dXJlIGltYWdlIGJlaW5nIHNwZWNpZmllZC4KKysKKysgICAgICAgIFRoZSAiRWxlbWVudCIg
aW4gSU9TdXJmYWNlIGlzIGEgYmxvY2sgb2YgcGl4ZWxzLCB3aGlsZSB0aGUgdmFsaWRhdGlvbiBh
c3N1bWVkCisrICAgICAgICBpdCBtZWFucyBvbmUgcGl4ZWwuIFRoZSB2YWxpZGF0aW9uIGZhaWxl
ZCBmb3IgYSBjb21wcmVzc2VkIGZvcm1hdC4KKysKKysgICAgICAgIEN1cnJlbnRseSB3ZSBtYXAg
bm9uLXB1YmxpYyBZVVYgZm9ybWF0cywgdG8gd2hpY2ggdGhlcmUgaXMgbm8gZWxlcXVlbnQgd2F5
CisrICAgICAgICBvZiBpbXBsZW1lbnRpbmcgdGhlIHZhbGlkYXRpb24uCisrCisrCisrICAgICAg
ICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvSU9TdXJmYWNlU3VyZmFjZUNHTC5jcHA6
CisrICAgICAgICAocng6OklPU3VyZmFjZVN1cmZhY2VDR0w6OnZhbGlkYXRlQXR0cmlidXRlcyk6
CisrCisrMjAyMS0xMi0xMCAgS3lsZSBQaWRkaW5ndG9uICA8a3BpZGRpbmd0b25AYXBwbGUuY29t
PgorKworKyAgICAgICAgW0FOR0xFXSBBU1RDLUhEUiBpcyB1bmF2YWlsYWJsZSBvbiBzb21lIHBs
YXRmb3JtcworKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTIzNDE2NAorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgS2VubmV0aCBSdXNzZWxsLgorKworKyAg
ICAgICAgVXBkYXRlIGF1dG9nZW5lcmF0ZWQgZm9ybWF0IHRhYmxlIHRvIGF2b2lkIHVzaW5nIEFT
VENfSERSIG9uCisrICAgICAgICBwbGF0Zm9ybXMgdGhhdCBkb24ndCBoYXZlIHRoZSBlbnVtLiAK
KysKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL2dlbl9tdGxfZm9ybWF0
X3RhYmxlLnB5OgorKyAgICAgICAgKGdlbl9pbWFnZV9tYXBfc3dpdGNoX2FzdGNfY2FzZV9pb3Nt
YWMpOgorKyAgICAgICAgKGdlbl9pbWFnZV9tYXBfc3dpdGNoX2FzdGNfY2FzZV90dm9zKToKKysg
ICAgICAgIChnZW5faW1hZ2VfbWFwX3N3aXRjaF9hc3RjX2Nhc2VfdHZvcy5nZW5fZm9ybWF0X2Fz
c2lnbl9jb2RlKToKKysgICAgICAgIChnZW5faW1hZ2VfbWFwX3N3aXRjaF9zdHJpbmcpOgorKyAg
ICAgICAgKGdlbl9pbWFnZV9tdGxfdG9fYW5nbGVfc3dpdGNoX3N0cmluZyk6CisrICAgICAgICAo
Z2VuX210bF9mb3JtYXRfY2Fwc19pbml0X3N0cmluZyk6CisrICAgICAgICAoZ2VuX2ltYWdlX21h
cF9zd2l0Y2hfYXN0Y19jYXNlKTogRGVsZXRlZC4KKysgICAgICAgIChnZW5faW1hZ2VfbWFwX3N3
aXRjaF9hc3RjX2Nhc2UuZ2VuX2Zvcm1hdF9hc3NpZ25fY29kZSk6IERlbGV0ZWQuCisrICAgICAg
ICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9tdGxfZm9ybWF0X21hcC5qc29uOgorKyAg
ICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX2Zvcm1hdF90YWJsZV9hdXRv
Z2VuLm1tOgorKyAgICAgICAgKHJ4OjptdGw6OkZvcm1hdDo6TWV0YWxUb0FuZ2xlRm9ybWF0SUQp
OgorKyAgICAgICAgKHJ4OjptdGw6OkZvcm1hdDo6aW5pdCk6CisrICAgICAgICAocng6Om10bDo6
Rm9ybWF0VGFibGU6OmluaXROYXRpdmVGb3JtYXRDYXBzQXV0b2dlbik6CisrCisrMjAyMS0xMi0x
MCAgTWljaGFlbCBTYWJvZmYgIDxtc2Fib2ZmQGFwcGxlLmNvbT4KKysKKysgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzQxNzMKKysgICAgICAgIFVwZGF0
ZSBJbnN0YWxsIFBhdGhzIGZvciBidWlsZCBzeXN0ZW0gY2hhbmdlcworKworKyAgICAgICAgUmV2
aWV3ZWQgYnkgWXVzdWtlIFN1enVraS4KKysKKysgICAgICAgIFVwZGF0ZWQgaW5zdGFsbCBwYXRo
cyBmb3IgY2hhbmdlcyBpbiB0aGUgYnVpbGQgc3lzdGVtIHRoYXQgdXNlIGEgc3lzdGVtIHBhdGgg
cHJlZml4LgorKworKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9BTkdMRS1keW5hbWljLnhjY29u
ZmlnOgorKworKzIwMjEtMTItMDkgIERlYW4gSmFja3NvbiAgPGRpbm9AYXBwbGUuY29tPgorKwor
KyAgICAgICAgW0FOR0xFXSBDb2RlIGdlbmVyYXRpb24gaGFwcGVucyBvbiBlYWNoIGJ1aWxkIGFu
ZCBwcm9kdWNlcyBTQ00gZGlmZnMKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0yMzQwMjUKKysKKysgICAgICAgIFJldmlld2VkIGJ5IEtpbW1vIEtpbm51
bmVuLgorKworKyAgICAgICAgVGVtcG9yYXJpbHkgcmVtb3ZlIHRoZSBidWlsZCBwaGFzZSB0aGF0
IGdlbmVyYXRlcyB0aGUKKysgICAgICAgIG10bF9kZWZhdWx0X3NoYWRlcnNfc3JjX2F1dG9nZW4g
ZmlsZXMgYmVjYXVzZSB0aGV5IGFyZSBwcm9kdWNpbmcKKysgICAgICAgIGRpZmZzLgorKworKyAg
ICAgICAgV2UgZWl0aGVyIG5lZWQgdG8gZ2VuZXJhdGUgdGhlc2UgbWFudWFsbHksIG9yIGZpeCB0
aGUgWGNvZGUgcHJvamVjdAorKyAgICAgICAgdG8gZ2VuZXJhdGUgdGhlbSBpbnRvIERlcml2ZWQg
U291cmNlcyBzbyB0aGV5IGRvbid0IGFwcGVhciBpbiBvdXIKKysgICAgICAgIHJlcG9zaXRvcnku
CisrCisrICAgICAgICAqIEFOR0xFLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisrCisrMjAy
MS0xMi0wOCAgS3lsZSBQaWRkaW5ndG9uICA8a3BpZGRpbmd0b25AYXBwbGUuY29tPgorKworKyAg
ICAgICAgVXBkYXRlIEFOR0xFIGNoYW5nZXMuZGlmZiB3aXRoIG5ldyByb2xsLgorKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMzk1MgorKworKyAgICAg
ICAgUmV2aWV3ZWQgYnkgS2VubmV0aCBSdXNzZWxsLgorKworKyAgICAgICAgKiBjaGFuZ2VzLmRp
ZmY6CisrCisrMjAyMS0xMi0wOCAgQWRyaWFuIFBlcmV6IGRlIENhc3RybyAgPGFwZXJlekBpZ2Fs
aWEuY29tPgorKworKyAgICAgICAgQXZvaWQgbm9pc3kgV2NvbW1lbnQgd2FybmluZ3MgYWZ0ZXIg
QU5HTEUgdXBkYXRlIGluIHIyODY2MDMKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMzM5NjQKKysgICAgICAgIDxyZGFyOi8vcHJvYmxlbS84NjE4NjQ1
NT4KKysKKysgICAgICAgIFJldmlld2VkIGJ5IE1pY2hhZWwgQ2F0YW56YXJvLgorKworKyAgICAg
ICAgKiBDTWFrZUxpc3RzLnR4dDogUGFzcyBhbHNvIC1Xbm8tY29tbWVudCB3aGVuIGJ1aWxkaW5n
IHdpdGggR0NDIG9yIENsYW5nOyBhcnJhbmdlIHRvCisrICAgICAgICBzZXQgY29tcGlsZXIgZmxh
Z3MgZm9yIGFueSBvZiB0aGUgQU5HTEUgbGlicmFyeSB0YXJnZXRzIGluc3RlYWQgb2Ygb25seSBm
b3IgbGliQU5HTEUuCisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL3RyZWVfdXRp
bC9JbnRlcm1UcmF2ZXJzZS5oOiBSZXZlcnQgY2hhbmdlIGZyb20gMjMzOTY0IHRvCisrICAgICAg
ICBhdm9pZCBoYXZpbmcgZGlmZmVyZW5jZXMgd2l0aCB0aGUgdXBzdHJlYW0gdmVyc2lvbiBvZiB0
aGUgZmlsZS4KKysKKysyMDIxLTEyLTA3ICBNeWxlcyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBh
cHBsZS5jb20+CisrCisrICAgICAgICBbTWFjQ2F0YWx5c3RdIEZpeCBidWlsZCBhZnRlciByMjg2
NjAzCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMz
OTc3CisrCisrICAgICAgICBVbnJldmlld2VkLgorKworKyAgICAgICAgUHJldmlvdXNseSwgVEFS
R0VUX09TX0lPUyBhbmQgVEFSR0VUX09TX01BQ0NBVEFMWVNUIHdlcmUgbmV2ZXIgb24gYXQgdGhl
IHNhbWUgdGltZS4KKysgICAgICAgIE5vdywgdGhleSdyZSBvbiBhdCB0aGUgc2FtZSB0aW1lLCBh
bmQgQU5HTEUgZG9lc24ndCBleHBlY3QgdGhhdC4gVGhpcyBwYXRjaCB0dXJucworKyAgICAgICAg
b2ZmIFRBUkdFVF9PU19JT1Mgd2hlbiBUQVJHRVRfT1NfTUFDQ0FUQUxZU1QgaXMgb24sIGp1c3Qg
dG8gZ2V0IEFOR0xFIHRvIGJ1aWxkLgorKyAgICAgICAgVGhlIGxvbmctdGVybSBmaXggaXMgdG8g
ZWl0aGVyIHVwZGF0ZSBhbGwgdGhlIHNpdGVzIHRvIHVzZSBjb3JyZWN0IG1hY3Jvcywgb3IgdG8K
KysgICAgICAgIHVzZSB0aGUgQU5HTEVfUExBVEZPUk1fKiBkZWZpbmVzIGluc3RlYWQuCisrCisr
ICAgICAgICAqIHNyYy9jb21tb24vcGxhdGZvcm0uaDoKKysKKysyMDIxLTEyLTA3ICBZdXN1a2Ug
U3V6dWtpICA8eXN1enVraUBhcHBsZS5jb20+CisrCisrICAgICAgICBVbnJldmlld2VkLCB0aGVz
ZSBmaWxlcyBhcmUgbW9kaWZpZWQgYWZ0ZXIgYnVpbGRpbmcgQU5HTEUKKysgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjA4OTYKKysgICAgICAgIDxyZGFy
Oi8vcHJvYmxlbS83MzUzOTY4Mj4KKysKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVy
L21ldGFsL3NoYWRlcnMvbXRsX2RlZmF1bHRfc2hhZGVyc19zcmNfYXV0b2dlbi5pbmM6CisrICAg
ICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9zaGFkZXJzL210bF9kZWZhdWx0X3No
YWRlcnNfc3JjX2F1dG9nZW4ubWV0YWw6CisrCisrMjAyMS0xMi0wNyAgTGF1cm8gTW91cmEgIDxs
bW91cmFAaWdhbGlhLmNvbT4KKysKKysgICAgICAgIEF2b2lkIG5vaXN5IFdjb21tZW50IHdhcm5p
bmdzIGFmdGVyIEFOR0xFIHVwZGF0ZSBpbiByMjg2NjAzCisrICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMzOTY0CisrCisrICAgICAgICBVbnJldmlld2Vk
IHdhcm5pbmcgcmVtb3ZhbC4KKysKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3Iv
dHJlZV91dGlsL0ludGVybVRyYXZlcnNlLmg6CisrCisrMjAyMS0xMi0wNyAgS3lsZSBQaWRkaW5n
dG9uICA8a3BpZGRpbmd0b25AYXBwbGUuY29tPgorKyAgICAgICAgCisrICAgICAgICBSb2xsIEFO
R0xFIHRvIGluY2x1ZGUgdXBzdHJlYW1lZCBNZXRhbCBiYWNrZW5kCisrICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIwODk2CisrICAgICAgICA8cmRhcjov
L3Byb2JsZW0vNzM1Mzk2ODI+CisrCisrICAgICAgICBSZXZpZXdlZCBieSBLZW4gUnVzc2VsbCBh
bmQgRGVhbiBKYWNrc29uLgorKworKyAgICAgICAgVXBkYXRlIEFOR0xFIHRvIGNlODU0NjMyNjkw
ZTUwNTU1MTQxNGY4MGQwMWQ4NjRkZjYxMTg4ODIKKysgICAgICAgIAorKyAgICAgICAgVGhlIGNo
YW5nZWxvZyBoYXMgYmVlbiBpbnRlbnRpb25hbGx5IGRlbGV0ZWQgdG8gcHJlc2VydmUKKysgICAg
ICAgIHJlYWRhYmlsaXR5CisrICAgICAgIAorKyAgICAgICAgVGhlIGZvbGxvd2luZyBhZGRpdGlv
bmFsIGNoYW5nZXMgd2VyZSBtYWRlIGluIHRoZSBtZXJnZXVwLgorKworKyAgICAgICAgVXBkYXRl
IFNoYWRlck10bCBnZXQgZGVidWcgaW5mbyB0byByZXR1cm4gdHJhbnNsYXRlZCBzb3VyY2UuCisr
ICAgICAgICAKKysgICAgICAgIEZpeCBjcmFzaGVzIGluIHdlYmdsLzIuMC55L2NvbmZvcm1hbmNl
L2V4dGVuc2lvbnMvd2ViZ2wtY29tcHJlc3NlZC10ZXh0dXJlLXMzdGMtc3JnYi5odG1sCisrICAg
ICAgICBGaXggYW5nbGUtaW5zdGFuY2VkLWFycmF5cy1vdXQtb2YtYm91bmRzLmh0bWwKKysgICAg
ICAgIFNraXAgYWRkaXRpb25hbCB2YWxpZGF0aW9uIHdoZW4gcHJpbWl0aXZlIGNvdW50IGluIGRy
YXdBcnJheXNJbnN0YW5jZWQgaXMgemVybworKworKworKyAgICAgICAgRml4IENsZWFyLUludmFs
aWRhdGUtUmVuZGVyIGJ1ZyBmb3IgbXVsdGlzYW1wbGUgYXR0YWNobWVudHMuIAorKyAgICAgICAg
Q2xlYXJpbmcgYSBtdWx0aXNhbXBsZSB0ZXh0dXJlLCBhbmQgdGhlbiBpbnZhbGlkYXRpbmcgdGhl
IHJlbmRlciBwYXNzIHdvdWxkIGxlYWQKKysgICAgICAgIHRvIHRoZSBuZXh0IHBhc3Mgbm90IGxv
YWRpbmcgdGhlIGNsZWFyZWQgdGV4dHVyZS4KKysKKysgICAgICAgIEZpeCBleHBvcnRzIGFuZCBp
bmNsdWRlcyBmb3IgZWdsX2F1dG9nZW4uaCBmaWxlcy4KKysKKysgICAgICAgIEZpeCB3ZWJnbC8y
LjAuMC9kZXFwL2Z1bmN0aW9uYWwvZ2xlczMvZmJvaW52YWxpZGF0ZS9kZWZhdWx0Lmh0bWwgCisr
ICAgICAgICBBZGQgc3luY2hyb25pemF0aW9uIHdoZW4gcmVhZGluZyBwaXhlbHMgYmFjayBmcm9t
IHNoYXJlZCBmcmFtZWJ1ZmZlcnMKKysKKysyMDIxLTExLTMwICBLeWxlIFBpZGRpbmd0b24gIDxr
cGlkZGluZ3RvbkBhcHBsZS5jb20+CisrCisrICAgICAgICBIYXJkd2FyZSBQQ0YgZmlsdGVyaW5n
IGRvZXMgbm90IHdvcmsgb24gaU9TIDE1IHdoZW4gdXNpbmcgV2ViR0wyCisrICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMyMDcxCisrCisrCUxvd2VyIHJl
c3RyaWN0aW9ucyBvbiBzYW1wbGluZyBEMzJGIGZvcm1hdHMsIGFuZCBhbGxvdyBmaWx0ZXJpbmcK
KysJb2YgRGVwdGgxNkYgb24gaU9TIGhhcmR3YXJlLCBhcyBpdCB3YXMgcHJldmlvdXNseSByZXN0
cmljdGVkLgorKwkKKysgICAgICAgIFJldmlld2VkIGJ5IEtlbm5ldGggUnVzc2VsbC4KKysKKysg
ICAgICAgICogaW5jbHVkZS9wbGF0Zm9ybS9GZWF0dXJlc010bC5oOgorKyAgICAgICAgKiBzcmMv
bGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvRGlzcGxheU10bC5oOgorKyAgICAgICAgKiBzcmMvbGli
QU5HTEUvcmVuZGVyZXIvbWV0YWwvRGlzcGxheU10bC5tbToKKysgICAgICAgIChyeDo6RGlzcGxh
eU10bDo6aW5pdGlhbGl6ZUZlYXR1cmVzKToKKysgICAgICAgIChyeDo6RGlzcGxheU10bDo6c3Vw
cG9ydHMzMkJpdEZsb2F0RmlsdGVyaW5nIGNvbnN0KToKKysgICAgICAgIChyeDo6RGlzcGxheU10
bDo6c3VwcG9ydHNEZXB0aDI0U3RlbmNpbDhQaXhlbEZvcm1hdCBjb25zdCk6CisrICAgICAgICAq
IHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9UZXh0dXJlTXRsLm1tOgorKyAgICAgICAgKHJ4
OjpUZXh0dXJlTXRsOjplbnN1cmVTYW1wbGVyU3RhdGVDcmVhdGVkKToKKysgICAgICAgICogc3Jj
L2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF9mb3JtYXRfbWFwLmpzb246CisrICAgICAgICAq
IHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9tdGxfZm9ybWF0X3RhYmxlX2F1dG9nZW4ubW06
CisrICAgICAgICAocng6Om10bDo6Rm9ybWF0VGFibGU6OmluaXROYXRpdmVGb3JtYXRDYXBzQXV0
b2dlbik6CisrCisrMjAyMS0xMS0xNyAgRGVhbiBKYWNrc29uICA8ZGlub0BhcHBsZS5jb20+Cisr
CisrICAgICAgICBBTkdMRSBidWlsZCBmYWlsdXJlIC0gc3ByaW50ZiBpcyBkZXByZWNhdGVkCisr
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMzMjc5Cisr
CisrICAgICAgICBSZXZpZXdlZCBieSBXZW5zb24gSHNpZWguCisrCisrICAgICAgICBSZXBsYWNl
IHNwcmludGYgd2l0aCBzbnByaW50Zi4KKysKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5z
bGF0b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0L0lkR2VuLmNwcDoKKysgICAgICAgIChJZEdlbjo6
Y3JlYXRlTmV3TmFtZSk6CisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL1RyYW5z
bGF0b3JNZXRhbERpcmVjdC9Nb2RpZnlTdHJ1Y3QuY3BwOgorKyAgICAgICAgKiBzcmMvY29tcGls
ZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QvU3ltYm9sRW52LmNwcDoKKysgICAg
ICAgIChTeW1ib2xFbnY6OlRlbXBsYXRlTmFtZTo6ZnVsbE5hbWUgY29uc3QpOgorKworKzIwMjEt
MTEtMDYgIERhdmlkIEtpbHplciAgPGRka2lsemVyQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFJl
bW92ZSBlbXB0eSBkaXJlY3RvcmllcyBmcm9tIGZyb20gc3ZuLndlYmtpdC5vcmcgcmVwb3NpdG9y
eSBhcyBvZiByMjg1MzU3CisrICAgICAgICA8aHR0cHM6Ly93ZWJraXQub3JnL2IvMjMyNzczPgor
KworKyAgICAgICAgVW5yZXZpZXdlZCBjbGVhbiB1cC4KKysKKysgICAgICAgICogc3JjL2lkOiBS
ZW1vdmVkLgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvc2hhZGVycy9j
b21waWxlZDogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL3Rlc3RzL3BlcmZfdGVzdHMvcmVzdHJp
Y3RlZF90cmFjZXM6IFJlbW92ZWQuCisrCisrMjAyMS0xMS0wMyAgS3lsZSBQaWRkaW5ndG9uICA8
a3BpZGRpbmd0b25AYXBwbGUuY29tPgorKworKyAgICAgICAgUkVHUkVTU0lPTiAoaU9TIDE1KTog
VGFiIGNyYXNoZXMgd2hlbiB0cnlpbmcgdG8gcmVuZGVyIFByb2plY3RvciBzdG9yaWVzCisrICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMxNjA3CisrCisr
CVJld29yayB2ZXJ0ZXggYnVmZmVyIGNhY2hpbmcgdG8gYWxsb3cgdXMgdG8gcmV1c2UgcGFydHMK
KysJb2YgY29udmVydGVkIGJ1ZmZlcnMuIFRoaXMgZHJhbWF0aWNhbGx5IGRyb3BzIHRoZSBtZW1v
cnkgdXNhZ2UgCisrCW9mIHRoaXMgdGFiIGZyb20gNC41IGdiIHRvIHJvdWdobHkgMS4zZ2IKKysK
KysgICAgICAgIFJldmlld2VkIGJ5IERlYW4gSmFja3Nvbi4KKysKKysgICAgICAgICogc3JjL2xp
YkFOR0xFL3JlbmRlcmVyL21ldGFsL0J1ZmZlck10bC5tbToKKysgICAgICAgIChyeDo6QnVmZmVy
TXRsOjpnZXRWZXJ0ZXhDb252ZXJzaW9uQnVmZmVyKToKKysgICAgICAgICogc3JjL2xpYkFOR0xF
L3JlbmRlcmVyL21ldGFsL1ZlcnRleEFycmF5TXRsLm1tOgorKyAgICAgICAgKHJ4OjpWZXJ0ZXhB
cnJheU10bDo6Y29udmVydFZlcnRleEJ1ZmZlcik6CisrICAgICAgICAocng6OlZlcnRleEFycmF5
TXRsOjpjb252ZXJ0VmVydGV4QnVmZmVyQ1BVKToKKysgICAgICAgIChyeDo6VmVydGV4QXJyYXlN
dGw6OmNvbnZlcnRWZXJ0ZXhCdWZmZXJHUFUpOgorKworKzIwMjEtMTEtMDEgIERhdmlkIEtpbHpl
ciAgPGRka2lsemVyQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFtBTkdMRV0gRW5hYmxlIC1XZm9y
bWF0PTIgd2FybmluZ3MKKysgICAgICAgIDxodHRwczovL3dlYmtpdC5vcmcvYi8yMzIzNTg+Cisr
ICAgICAgICA8cmRhcjovL3Byb2JsZW0vODQ1Njg5MzU+CisrCisrICAgICAgICBSZXZpZXdlZCBi
eSBLaW1tbyBLaW5udW5lbi4KKysKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMvQmFzZS54Y2Nv
bmZpZzoKKysgICAgICAgIChXQVJOSU5HX0NGTEFHUyk6CisrICAgICAgICAtIEFkZCAtV2Zvcm1h
dD0yIHN3aXRjaCwgd2hpY2ggaW5jbHVkZXMgLVdmb3JtYXQtbm9ubGl0ZXJhbC4KKysgICAgICAg
ICogc3JjL2NvbW1vbi9hbmdsZXV0aWxzLmg6CisrICAgICAgICAoRm9ybWF0U3RyaW5nSW50b1Zl
Y3Rvcik6CisrICAgICAgICAtIE1vdmUgYmVsb3cgZGVmaW5pdGlvbiBvZiBBTkdMRV9GT1JNQVRf
UFJJTlRGKCkgYW5kIGFkZCBtYWNybworKyAgICAgICAgICB0byB0aGUgZnVuY3Rpb24gZGVjbGFy
YXRpb24gdG8gZml4IC1XZm9ybWF0LW5vbmxpdGVyYWwKKysgICAgICAgICAgd2FybmluZy4KKysg
ICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvQ29tbW9uLmg6CisrICAgICAgICAoc2g6
OnN0cik6CisrICAgICAgICAtIE1ha2UgYGZvcm1hdFN0cmAgYSBjb25zdGV4cHIgdG8gZml4IC1X
Zm9ybWF0LW5vbmxpdGVyYWwKKysgICAgICAgICAgd2FybmluZy4KKysKKysyMDIxLTEwLTI3ICBL
aW1tbyBLaW5udW5lbiAgPGtraW5udW5lbkBhcHBsZS5jb20+CisrCisrICAgICAgICBSRUdSRVNT
SU9OIChTYWZhcmkgMTUpOiBQb29yIFdlYkdMIHBlcmZvcm1hbmNlIG9uIGh0dHBzOi8vZG93bmxv
YWRzLnNjaXJyYS5jb20vbGFicy9wYXJ0aWNsZXMKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzA3NDkKKysgICAgICAgIDxyZGFyOi8vcHJvYmxlbS84
MzU3NjI3MT4KKysKKysgICAgICAgIFJldmlld2VkIGJ5IEtlbm5ldGggUnVzc2VsbC4KKysKKysg
ICAgICAgIFRoZSBzaXRlIHdvdWxkIGRyYXcgaW5kZXhlZCBwZXIgZnJhbWUgd2l0aCBlYWNoIGZy
YW1lIGluY3JlYXNpbmcgdGhlIHNpemUgb2YgdGhlIGRyYXcuCisrICAgICAgICBUaGlzIHdvdWxk
IGNhdXNlIGluZGV4IGJ1ZmZlciByYW5nZSBjYWNoZSB1cGRhdGUgZm9yIGVhY2ggZHJhdy4KKysg
ICAgICAgIFJhbmdlIGNvbXB1dGF0aW9uIG5lZWRzIHRvIGxvb2sgaW5zaWRlIHRoZSBpbmRleCBi
dWZmZXIuCisrICAgICAgICBNYXBwaW5nIHRoZSBpbmRleCBidWZmZXIgZm9yIHJlYWQgd291bGQg
Y2F1c2UgY29tbWFuZCBidWZmZXIgZmx1c2ggZm9yIGVhY2ggY29tcHV0YXRpb24sCisrICAgICAg
ICBzaW5jZSBwcmV2aW91cyBmcmFtZSB3b3VsZCBoYXZlIHVzZWQgdGhlIGluZGV4IGJ1ZmZlciBm
b3IgcmVhZGluZy4gVGhpcyB3b3VsZCBjYXVzZQorKyAgICAgICAgcGVyZm9ybWFuY2UgZGVncmFk
YXRpb24gZm9yIHRoZSBkdXJhdGlvbiB3aGVyZSB0aGUgcmFuZ2UgY2FjaGUgd291bGQgbmVlZCB1
cGRhdGUuCisrCisrICAgICAgICBTaW5jZSB0aGUgYnVmZmVyIGlzIHJlYWQgYnkgdGhlIGRyYXcg
YnV0IG5vdCB3cml0dGVuLCB0aGUgbWFwIHNob3VsZCBiZSBhIG5vLW9wLgorKyAgICAgICAgQ29u
c3VsdCB0aGUgIkNQVSBtZW1vcnkgbmVlZHMgc3luY2hyb25pemluZyIgZmxhZyBvZiB0aGUgbXRs
OjpSZXNvdXJjZSB3aGVuCisrICAgICAgICBtYXBwaW5nLiBPbmx5IHN5bmNocm9uaXplIHdpdGgg
R1BVIGlmIHRoZSBtZW1vcnkgbmVlZHMgc3luY2hyb25pemluZy4KKysKKysgICAgICAgICogc3Jj
L2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF9yZXNvdXJjZXMubW06CisrICAgICAgICAocng6
Om10bDo6QnVmZmVyOjptYXBXaXRoT3B0KToKKysKKysyMDIxLTEwLTI1ICBLeWxlIFBpZGRpbmd0
b24gIDxrcGlkZGluZ3RvbkBhcHBsZS5jb20+CisrCisrICAgICAgICBSRUdSRVNTSU9OIChpT1Mg
MTUpLCBzYWZhcmk2MDQuMTogQ291bGQgbm90IGxpbmsgdGhlIHNoYWRlciBwcm9ncmFtCisrICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMxNDc1CisrCisr
ICAgICAgICBSZW5hbWluZyByZWdleCBpbmNvcnJlY3RseSBzdWJzdGl0dXRlZCBhbiBhdHRyaWJ1
dGUuIAorKyAgICAgICAgVXBkYXRlIHRvIHJlcXVpcmUgZXhhY3QgYXR0cmlidXRlIG1hdGNoCisr
CisrICAgICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24KKysKKysgICAgICAgICogc3JjL2xp
YkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF9nbHNsYW5nX210bF91dGlscy5tbToKKysgICAgICAg
IChyeDo6bXRsOjp1cGRhdGVTaGFkZXJBdHRyaWJ1dGVzKToKKysKKysyMDIxLTEwLTE1ICBSb3Nz
IEtpcnNsaW5nICA8cm9zcy5raXJzbGluZ0Bzb255LmNvbT4KKysKKysgICAgICAgIFJlYWxpemUg
TWFjIENNYWtlIGJ1aWxkIG9mIFdlYkNvcmUgYW5kIFdlYktpdAorKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMTc0OQorKworKyAgICAgICAgUmV2aWV3
ZWQgYnkgQWxleCBDaHJpc3RlbnNlbi4KKysKKysgICAgICAgICogQ29tcGlsZXIuY21ha2U6Cisr
CisrMjAyMS0xMC0xNSAgS3lsZSBQaWRkaW5ndG9uICA8a3BpZGRpbmd0b25AYXBwbGUuY29tPgor
KworKyAgICAgICAgUkVHUkVTU0lPTiAocjI4MzY2Nyk6IHdlYmdsLzIuMC4wL2RlcXAvZnVuY3Rp
b25hbC9nbGVzMy9saWZldGltZS5odG1sIGZhaWxzCisrICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMxNjgyCisrCisrICAgICAgICBUcmFuc2Zvcm0gZmVl
ZGJhY2sgc2hvdWxkIGF2b2lkIGFwcGVuZGluZyBfdSBmb3IgCisrICAgICAgICBidWlsdGluIG91
dHB1dCB2YXJpYWJsZXMuCisrCisrICAgICAgICBSZXZpZXdlZCBieSBLaW1tbyBLaW5udW5lbi4K
KysKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF9nbHNsYW5nX210
bF91dGlscy5tbToKKysgICAgICAgIChyeDo6bXRsOjpHZW5lcmF0ZVRyYW5zZm9ybUZlZWRiYWNr
VmFyeWluZ091dHB1dCk6CisrCisrMjAyMS0xMC0xNCAgS3lsZSBQaWRkaW5ndG9uICA8a3BpZGRp
bmd0b25AYXBwbGUuY29tPgorKworKyAgICAgICAgaHR0cHM6Ly90YW5raW9ubGluZS5jb20vcGxh
eS8gaHRtbDUgZW5naW5lIG5vdCB3b3JraW5nOiBjcmFzaGVzLiAoTWV0YWwgc2hhZGVyIG5vdCB3
b3JraW5nKQorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTIzMTQ5MAorKworKyAgICAgICAgQWRkIGFyZ3VtZW50IHRvIFJlbW92ZUluYWN0aXZlSW50ZXJm
YWNlVmFyaWFibGVzIHRvIGtlZXAKKysgICAgICAgIG91dHB1dCBmcmFnbWVudCB2YXJpYWJsZXMs
IGV2ZW4gaWYgdGhleSBhcmUKKysgICAgICAgIEFkZCBhIG5ldyB0ZXN0IHRvICB2ZXJpZnkgdGhh
dCB0aGlzIHByb2JsZW0gaXMgZml4ZWQuIAorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgS2VubmV0
aCBSdXNzZWxsLgorKworKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xh
dG9yTWV0YWxEaXJlY3QuY3BwOgorKyAgICAgICAgKHNoOjpUcmFuc2xhdG9yTWV0YWxEaXJlY3Q6
OnRyYW5zbGF0ZUltcGwpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFu
c2xhdG9yVnVsa2FuLmNwcDoKKysgICAgICAgIChzaDo6VHJhbnNsYXRvclZ1bGthbjo6dHJhbnNs
YXRlSW1wbCk6CisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL3RyZWVfb3BzL1Jl
bW92ZUluYWN0aXZlSW50ZXJmYWNlVmFyaWFibGVzLmNwcDoKKysgICAgICAgIChzaDo6UmVtb3Zl
SW5hY3RpdmVJbnRlcmZhY2VWYXJpYWJsZXMpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJh
bnNsYXRvci90cmVlX29wcy9SZW1vdmVJbmFjdGl2ZUludGVyZmFjZVZhcmlhYmxlcy5oOgorKwor
KzIwMjEtMTAtMTQgIE15bGVzIEMuIE1heGZpZWxkICA8bW1heGZpZWxkQGFwcGxlLmNvbT4KKysK
KysgICAgICAgIEFsbCB0aGUgU0RLVmFyaWFudC54Y2NvbmZpZyBmaWxlcyBzaG91bGQgbWF0Y2gK
KysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzE2NjMK
KysKKysgICAgICAgIFJldmlld2VkIGJ5IFlvdWVubiBGYWJsZXQuCisrCisrICAgICAgICAqIENv
bmZpZ3VyYXRpb25zL1NES1ZhcmlhbnQueGNjb25maWc6CisrCisrMjAyMS0xMC0xMyAgS3lsZSBQ
aWRkaW5ndG9uICA8a3BpZGRpbmd0b25AYXBwbGUuY29tPgorKworKyAgICAgICAgVXBzdHJlYW0g
QU5HTEU6IFByaW1pdGl2ZVJlc3RhcnQgdGVzdHMgZmFpbCBkdWUgdG8gaW5jb3JyZWN0IGRyYXcg
Y29tbWFuZHMKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0yMzE2MjYKKysgICAgICAgIDxyZGFyOi9wcm9ibGVtLzg0MTY3MjQxPgorKyAgIAorKyAgICAg
ICAgUHJpbWl0aXZlIHJlc3RhcnQgZHJhdyBjb21tYW5kcyB3ZXJlIGJlaW5nIGVuY29kZWQKKysg
ICAgICAgIGluY29ycmVjdGx5LiBTaW5nbGUgZWxlbWVudCByYW5nZXMgd2VyZSBiZWluZyBkaXNy
ZWdhcmRlZCwKKysgICAgICAgIGFuZCBhIG1heGltdW0gZHJhdyBzaXplIHdhcyBub3QgYmVpbmcg
ZW5mb3JjZWQgd2hlbiB0aGUKKysgICAgICAgIGluZGV4IGJ1ZmZlciB3YXMgYWxpYXNlZCAvIHJl
dXNlZC4KKysKKysgICAgICAgIENoZXJyeS1waWNrIGZyb20gdXBzdHJlYW0gYW5nbGVidWcuY29t
LzY1MzUKKysgICAgCisrICAgICAgICBSZXZpZXdlZCBieSBLZW5uZXRoIFJ1c3NlbGwuCisrCisr
ICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9WZXJ0ZXhBcnJheU10bC5tbToK
KysgICAgICAgIChyeDo6VmVydGV4QXJyYXlNdGw6OmdldERyYXdJbmRpY2VzKToKKysKKysyMDIx
LTEwLTEyICBBbGV4ZXkgUHJvc2t1cnlha292ICA8YXBAYXBwbGUuY29tPgorKworKyAgICAgICAg
SW52b2tlIFRoaXJkUGFydHkgYnVpbGQgc2NyaXB0cyB3aXRoIHB5dGhvbjMgZXhwbGljaXRseQor
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMTYwNQor
KworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGVhbiBKYWNrc29uLgorKworKyAgICAgICAgKiBBTkdM
RS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorKyAgICAgICAgKiBhZGp1c3QtYW5nbGUtaW5j
bHVkZS1wYXRocy5weToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL3No
YWRlcnMvY3JlYXRlX210bF9pbnRlcm5hbF9zaGFkZXJzLnB5OgorKworKzIwMjEtMTAtMDYgIEt5
bGUgUGlkZGluZ3RvbiAgPGtwaWRkaW5ndG9uQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFNoYWRl
cnRveSAidHJ1Y2hldCBkaXN0cmljdCIgZmFpbHMgdG8gY29tcGlsZSB3aXRoIGVycm9yOiBJbnRl
cm5hbCBlcnJvciBjb21waWxpbmcgc2hhZGVyIHdpdGggTWV0YWwgYmFja2VuZCIKKysgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjkzNzgKKysgICAgICAg
IDxyZGFyOi8vcHJvYmxlbS84MjI5OTA1Mz4KKysKKysgICAgICAgIFJldmlld2VkIGJ5IEtlbm5l
dGggUnVzc2VsbC4KKysKKysgICAgICAgIENoYW5nZSBUcmFuc2xhdG9yTWV0YWxEaXJlY3QgdG8g
cHJlZml4ICdfdScgdG8gYWxsIHVzZXIgZGVmaW5lZCB2YXJpYWJsZXMuCisrICAgICAgICBDbGVh
biB1cCBidWlsdGlucyBsaWtlIHNhbXBsZXJzIGFuZCBBTkdMRSBzdHJ1Y3RzIHRoYXQgd2VyZSBi
ZWluZworKyAgICAgICAgYWNjaWRlbnRseSBwcm9tb3RlZCB0byB1c2VyRGVmaW5lZCB2YXJpYWJs
ZXMuCisrCisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRh
bERpcmVjdC5jcHA6CisrICAgICAgICAoc2g6OkdldE1zbEtleXdvcmRzKToKKysgICAgICAgICog
c3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0L05hbWUuY3BwOgor
KyAgICAgICAgKE5hbWU6OmVtaXQgY29uc3QpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJh
bnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QvU3ltYm9sRW52LmNwcDoKKysgICAgICAgIChT
eW1ib2xFbnY6OmdldFRleHR1cmVFbnYpOgorKyAgICAgICAgKFN5bWJvbEVudjo6Z2V0U2FtcGxl
clN0cnVjdCk6CisrICAgICAgICAoc2g6OkdldFRleHR1cmVUeXBlTmFtZSk6CisrICAgICAgICAq
IHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9tdGxfZ2xzbGFuZ19tdGxfdXRpbHMubW06Cisr
ICAgICAgICAocng6Om10bDo6R2VuZXJhdGVUcmFuc2Zvcm1GZWVkYmFja1ZhcnlpbmdPdXRwdXQp
OgorKworKzIwMjEtMDktMjggIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0
Lm9yZz4KKysKKysgICAgICAgIE1vc3RseSBmaXggTWFjIENNYWtlIGJ1aWxkCisrICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMwODY4CisrCisrICAgICAg
ICBSZXZpZXdlZCBieSBEb24gT2xtc3RlYWQuCisrCisrICAgICAgICAqIENvbXBpbGVyLmNtYWtl
OgorKyAgICAgICAgKiBNZXRhbC5jbWFrZToKKysKKysyMDIxLTA5LTIzICBLeWxlIFBpZGRpbmd0
b24gIDxrcGlkZGluZ3RvbkBhcHBsZS5jb20+CisrCisrICAgICAgICBbV2ViR0wyLCBTYWZhcmkg
MTUgLSBpT1MxNV0gUHJvYmxlbXMgd2l0aCBkcmF3RWxlbWVudHMgaW4gc29tZSBjb25kaXRpb25z
CisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMwMTA3
CisrCisrICAgICAgICBJbmRleCBidWZmZXIgcmV3cml0ZSB3YXMgZGlzcGF0Y2hpbmcgdG9vIG1h
bnkgdGhyZWFkcy4gCisrICAgICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisrCisrICAg
ICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9Qcm92b2tpbmdWZXJ0ZXhIZWxwZXIu
bW06CisrICAgICAgICAocng6OlByb3Zva2luZ1ZlcnRleEhlbHBlcjo6cHJlY29uZGl0aW9uSW5k
ZXhCdWZmZXIpOgorKworKzIwMjEtMDktMjAgIEtpbW1vIEtpbm51bmVuICA8a2tpbm51bmVuQGFw
cGxlLmNvbT4KKysKKysgICAgICAgIEFOR0xFIE1ldGFsOiBzaW5nbGUtY29tcG9uZW50IHN3aXp6
bGVzIGRvIG5vdCBjb21waWxlCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MjMwNDcyCisrICAgICAgICA8cmRhcjovL3Byb2JsZW0vODMzMTA3ODA+Cisr
CisrICAgICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisrCisrICAgICAgICBGaXggbWV0
YWwgY29tcGlsZXIgY29tcGlsZSBlcnJvcnMgd2hlbiB1c2luZyAKKysgICAgICAgIHNpbmdsZSB2
YWx1ZSBzd2l6bGVzIChnbHNsdmFyaWFibGUucikgaW4gcG9zaXRpb24gd2hlcmUgbHZhbHVlcyB3
b3VsZAorKyAgICAgICAgYmUgbmVlZGVkLiBVc2UgdGhlIHZhcmlhYmxlIGluc3RlYWQgb2Ygc2lu
Z2xlIGVsZW1lbnQgYXJyYXkgCisrICAgICAgICAoY29weS1wYXN0ZSB0eXBvKS4KKysKKysgICAg
ICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0L1Byb2dy
YW1QcmVsdWRlLmNwcDoKKysKKysyMDIxLTA5LTE2ICBLeWxlIFBpZGRpbmd0b24gIDxrcGlkZGlu
Z3RvbkBhcHBsZS5jb20+CisrCisrICAgICAgICB3ZWJnbC8yLjAueS9jb25mb3JtYW5jZS9leHRl
bnNpb25zL3dlYmdsLWNvbXByZXNzZWQtdGV4dHVyZS1zM3RjLXNyZ2IuaHRtbCBmYWlscyBvbiBJ
bnRlbCtBTUQgTWV0YWwKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0yMjk5NDEKKysKKysgICAgICAgIFplcm8taW5pdGlhbGl6ZSBjb21wcmVzc2VkIHRl
eHR1cmVzIGV4cGxpY2l0bHksIGFzIHRoZXkgYXJlbid0IGltcGxpY2l0bHkgaW5pdGFsaXplZCBp
biBNZXRhbC4KKysgICAgICAgIFJldmlld2VkIGJ5IEtlbm5ldGggUnVzc2VsbCA8a2JyQGNocm9t
aXVtLm9yZz4uCisrCisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9tdGxf
dXRpbHMuaDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF91dGls
cy5tbToKKysgICAgICAgIChyeDo6bXRsOjpHZXRDb21wcmVzc2VkQnVmZmVyRm9yVGV4dHVyZVdp
dGhGb3JtYXQpOgorKyAgICAgICAgKHJ4OjptdGw6OkluaXRpYWxpemVDb21wcmVzc2VkVGV4dHVy
ZUNvbnRlbnRzKToKKysgICAgICAgIChyeDo6bXRsOjpJbml0aWFsaXplVGV4dHVyZUNvbnRlbnRz
KToKKysKKysyMDIxLTA4LTMxICBLaW1tbyBLaW5udW5lbiAgPGtraW5udW5lbkBhcHBsZS5jb20+
CisrCisrICAgICAgICB3ZWJnbC8xLjAueC9jb25mb3JtYW5jZS9nbHNsL21pc2MvZnJhZ2NvbG9y
LWZyYWdkYXRhLWludmFyaWFudC5odG1sIGZhaWxzCisrICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIzMzE3CisrICAgICAgICA8cmRhcjovL3Byb2JsZW0v
NzU3NzI2NTk+CisrCisrICAgICAgICBSZXZpZXdlZCBieSBLZW5uZXRoIFJ1c3NlbGwuCisrCisr
ICAgICAgICBUaGUgcGFyc2VyIG1haW50YWlucyBpbnZhcmlhbmNlIG1ldGFkYXRhIGZvciBlYWNo
IGlucHV0IGFuZCBvdXRwdXQKKysgICAgICAgIHdpdGggdGhlIGhlbHAgb2YgdGhlIHN5bWJvbCB0
YWJsZSwgZHVyaW5nIHBhcnNpbmcuCisrCisrICAgICAgICBVc2UgdGhpcyBtZXRhZGF0YSB0aHJv
dWdoIHRoZSBjb2xsZWN0aW9uIHBoYXNlIGRvbmUgYnkgQ29sbGVjdFZhcmlhYmxlcworKyAgICAg
ICAgc2VjdGlvbiBvZiBzaGFkZXIgY29tcGlsYXRpb24uCisrCisrICAgICAgICBSZW1vdmUgdGhl
IG1hbnVhbCB0cmVlIHJld3JpdGUgc2VjdGlvbiB0aGF0IGNvbGxlY3RlZCB0aGUgaW52YXJpYW5j
ZQorKyAgICAgICAgaW5mb3JtYXRpb24uIFRoZSBpbXBsZW1lbnRhdGlvbiBoYWQgZm9sbG93aW5n
IHByb2JsZW1zOgorKyAgICAgICAgMSkgSXQgd291bGQgZGVjbGFyZSB0aGUgdmFyaWFibGVzIHBy
ZXNlbnQuIFRoaXMgd291bGQgZmFpbCB0aGUgdGVzdCBjYXNlCisrICAgICAgICBmaXhlZCBoZXJl
LCBkdWUgdG8gdGhlIHRlc3QgY2FzZSB1c2luZyBpbnZhcmlhbnQgZGVjbGFyYXRpb25zIHRvIGJv
dGgKKysgICAgICAgIEZyYWdDb2xvciBhbmQgRnJhZ0RhdGEsIHdoaWNoIHdvdWxkIGNhdXNlIGJv
dGggdG8gYmUgcHJlc2VudCBhcyBvdXRwdXRzCisrICAgICAgICB0byB0aGUgTVNMLgorKyAgICAg
ICAgMikgSXQgd291bGQgb3BlcmF0ZSBvbiByZXdyaXR0ZW4gdmFyaWFibGVzLiBGb3IgZXhhbXBs
ZSwgRnJhZ0Nvb3JkIHdvdWxkCisrICAgICAgICBiZSByZXBsYWNlZCB3aXRoIGRpZmZlcmVudCB2
YXJpYWJsZSwgY2F1c2luZyB0aGUgaW52YXJpYW5jZSBiZSBtYXJrZWQKKysgICAgICAgIGJhc2Vk
IG9uIHRoZSByZXdyaXR0ZW4gbmFtZSBidXQgdGhlIGxhdGVyIGxvb2t1cCBpbnRlbmRlZCB0byBi
ZSBkb25lCisrICAgICAgICB3aXRoIHRoZSBvcmlnaW5hbCBuYW1lLgorKworKyAgICAgICAgUmVt
b3ZlIGxvZ2ljIHRvIG1hcmsgRnJhZ0Nvb3JkIGFzIGludmFyaWFudCwgYXMgTVNMIHNwZWNpZmlj
YXRpb24gZXhwbGljaXRseQorKyAgICAgICAgc2F5cyB0aGF0IG9ubHkgdGhlIHZlcnRleCBbW3Bv
c2l0aW9uXV0gb3V0cHV0IGNhbiBiZSBtYXJrZWQgYXMgW1tpbnZhcmlhbnRdXS4KKysgICAgICAg
IEFzIG5vdGVkIGFib3ZlLCB0aGlzIG5ldmVyIHdvcmtlZC4KKysKKysgICAgICAgIEZpeCBjYXNl
cyB3aGVyZSB0aGUgdHJlZSByZXdyaXRlcnMgYXNzdW1lIHRoYXQgYWxsIHZhcmlhYmxlIHJlZmVy
ZW5jZXMgYXJlCisrICAgICAgICBkb25lIHdpdGhpbiBmdW5jdGlvbnMuIFRoZSBnbG9iYWwgcXVh
bGlmaWVyIGRlY2xhcmF0aW9ucyBhcmUgbm93IGxlZnQKKysgICAgICAgIGluIHRoZSB0cmVlIGFu
ZCBhcyBzdWNoIGNhbiByZWZlciB0byB2YXJpYWJsZXMgYnV0IGRvIG5vdCBiZWxvbmcgdG8gYW55
CisrICAgICAgICBmdW5jdGlvbi4KKysKKysgICAgICAgIEZpeGVzOgorKyAgICAgICAgd2ViZ2wv
MS4wLngvY29uZm9ybWFuY2UvZ2xzbC9taXNjL2ZyYWdjb2xvci1mcmFnZGF0YS1pbnZhcmlhbnQu
aHRtbAorKyAgICAgICAgd2ViZ2wvMi4wLnkvY29uZm9ybWFuY2UvZ2xzbC9taXNjL2ZyYWdjb2xv
ci1mcmFnZGF0YS1pbnZhcmlhbnQuaHRtbAorKworKyAgICAgICAgKiBBTkdMRS54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFu
c2xhdG9yTWV0YWxEaXJlY3QuY3BwOgorKyAgICAgICAgKHNoOjpUcmFuc2xhdG9yTWV0YWxEaXJl
Y3Q6OnRyYW5zbGF0ZUltcGwpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9U
cmFuc2xhdG9yTWV0YWxEaXJlY3QvRGlzY292ZXJEZXBlbmRlbnRGdW5jdGlvbnMuY3BwOgorKyAg
ICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QvRW1p
dE1ldGFsLmNwcDoKKysgICAgICAgIChHZW5NZXRhbFRyYXZlcnNlcjo6R2VuTWV0YWxUcmF2ZXJz
ZXIpOgorKyAgICAgICAgKEdlbk1ldGFsVHJhdmVyc2VyOjplbWl0UG9zdFF1YWxpZmllcik6Cisr
ICAgICAgICAoR2VuTWV0YWxUcmF2ZXJzZXI6OnZpc2l0R2xvYmFsUXVhbGlmaWVyRGVjbGFyYXRp
b24pOgorKyAgICAgICAgKHNoOjpFbWl0TWV0YWwpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIv
dHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QvRW1pdE1ldGFsLmg6CisrICAgICAgICAq
IHNyYy9jb21waWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC9SZXdyaXRlR2xv
YmFsUXVhbGlmaWVyRGVjbHMuY3BwOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIv
dHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QvUmV3cml0ZUdsb2JhbFF1YWxpZmllckRl
Y2xzLmg6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL1RyYW5z
bGF0b3JNZXRhbERpcmVjdC9SZXdyaXRlUGlwZWxpbmVzLmNwcDoKKysgICAgICAgIChzaDo6SXNW
YXJpYWJsZUludmFyaWFudCk6CisrICAgICAgICAoc2g6OkdlbmVyYXRlUGlwZWxpbmVTdHJ1Y3Q6
OkV4ZWMpOgorKyAgICAgICAgKHNoOjpHZW5lcmF0ZVBpcGVsaW5lU3RydWN0OjpHZW5lcmF0ZVBp
cGVsaW5lU3RydWN0KToKKysgICAgICAgIChzaDo6R2VuZXJhdGVQaXBlbGluZVN0cnVjdDo6Y3Jl
YXRlSW50ZXJuYWxQaXBlbGluZVN0cnVjdCk6CisrICAgICAgICAoc2g6OlVwZGF0ZVBpcGVsaW5l
U3ltYm9scyk6CisrICAgICAgICAoc2g6OlJld3JpdGVQaXBlbGluZSk6CisrICAgICAgICAoc2g6
OlJld3JpdGVQaXBlbGluZXMpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9U
cmFuc2xhdG9yTWV0YWxEaXJlY3QvUmV3cml0ZVBpcGVsaW5lcy5oOgorKyAgICAgICAgKiBzcmMv
Y29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QvU2VwYXJhdGVDb21wb3Vu
ZEV4cHJlc3Npb25zLmNwcDoKKysKKysyMDIxLTA4LTI1ICBLaW1tbyBLaW5udW5lbiAgPGtraW5u
dW5lbkBhcHBsZS5jb20+CisrCisrICAgICAgICBBTkdMRSBNZXRhbCBpbmRleCBidWZmZXIgcmVz
dGFydCByYW5nZSBjYWNoZSBpcyBjb3VsZCBiZSBtYWludGFpbmVkIG1vcmUgY29uc2lzdGVudGx5
CisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI3NDUx
CisrCisrICAgICAgICBSZXZpZXdlZCBieSBLZW5uZXRoIFJ1c3NlbGwuCisrCisrICAgICAgICAq
IHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9CdWZmZXJNdGwuaDoKKysgICAgICAgIChyeDo6
QnVmZmVyTXRsOjpSZXN0YXJ0UmFuZ2VDYWNoZTo6UmVzdGFydFJhbmdlQ2FjaGUpOgorKyAgICAg
ICAgQWRkIG9wdGlvbmFsPFJlc3RhcnRSYW5nZUNhY2hlPiB3aGljaCBjb250YWlucyB0aGUgcmFu
Z2VzIGFuZAorKyAgICAgICAgdGhlIGluZGV4IHR5cGUgdXNlZCB0byBidWlsZCB0aGUgcmFuZ2Vz
LgorKworKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvQnVmZmVyTXRsLm1t
OgorKyAgICAgICAgKHJ4OjpCdWZmZXJNdGw6Om1hcmtDb252ZXJzaW9uQnVmZmVyc0RpcnR5KToK
KysgICAgICAgIChyeDo6QnVmZmVyTXRsOjpjbGVhckNvbnZlcnNpb25CdWZmZXJzKToKKysgICAg
ICAgIEludmFsaWRhdGUgdGhlIHJhbmdlIGNhY2hlIHdoZW4gY2xlYXJpbmcgY29udmVyc2lvbiBi
dWZmZXJzLgorKyAgICAgICAgT3RoZXJ3aXNlIHRoZSBjYWNoZSB3b3VsZCBiZSBsZWZ0IGluIGlu
Y29uc2lzdGVudCBzdGF0ZSB2cy4KKysgICAgICAgIHRoZSBjb250ZW50cyBvZiB0aGUgaW5kZXgg
YnVmZmVyIGluIGNhc2VzIG9mIGNvZGUgbGlrZToKKysgICAgICAgIEJ1ZmZlck10bDo6c2V0RGF0
YUltcGwoKSAuLi4KKysgICAgICAgICAgIGlmICguLi4pIHsKKysgICAgICAgICAgICAgICBtYXJr
Q29udmVyc2lvbkJ1ZmZlckRpcnR5KCk7CisrICAgICAgICAgICB9IGVsc2UgeworKyAgICAgICAg
ICAgICAgIGNsZWFyQ29udmVyc2lvbkJ1ZmZlcnMoKTsKKysgICAgICAgICAgIH0KKysgICAgICAg
IChyeDo6QnVmZmVyTXRsOjpnZXRSZXN0YXJ0SW5kaWNlcyk6CisrCisrMjAyMS0wOC0yNCAgS2lt
bW8gS2lubnVuZW4gIDxra2lubnVuZW5AYXBwbGUuY29tPgorKworKyAgICAgICAgQU5HTEUgTWV0
YWwgaW5maW5pdGllcyBhbmQgTmFOcyBnZW5lcmF0ZWQgd2l0aCBpbmNvcnJlY3Qgc3ludGF4Cisr
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI5NDM5Cisr
ICAgICAgICA8cmRhcjovLzgxMDMzMzY2PgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGVhbiBK
YWNrc29uLgorKworKyAgICAgICAgR2VuZXJhdGUgTmFOIGFuZCBpbmZpbml0eSBjb25zdGFudCB2
YWx1ZXMgY29ycmVjdGx5LgorKyAgICAgICAgQW4gZWxzZSB3YXMgbWlzc2luZyBmcm9tIGlmLWJs
b2NrLCBjYXVzaW5nIGRvdWJsZSBwcm9jZXNzaW5nLgorKworKyAgICAgICAgKiBzcmMvY29tcGls
ZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QvRW1pdE1ldGFsLmNwcDoKKysgICAg
ICAgIChHZW5NZXRhbFRyYXZlcnNlcjo6ZW1pdFNpbmdsZUNvbnN0YW50KToKKysgICAgICAgICog
c3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF91dGlscy5tbToKKysgICAgICAgIChyeDo6
bXRsOjpDcmVhdGVTaGFkZXJMaWJyYXJ5KToKKysKKysyMDIxLTA4LTE3ICBEYXZpZCBLaWx6ZXIg
IDxkZGtpbHplckBhcHBsZS5jb20+CisrCisrICAgICAgICBbTWV0YWwgQU5HTEVdIEZpeCBvdmVy
LWF1dG9yZWxlYXNlIG9mIHJ4OjpEaXNwbGF5TXRsOjpnZXRNZXRhbERldmljZU1hdGNoaW5nQXR0
cmlidXRlKCkgYW5kIHZhcmlvdXMgT2JqZWN0aXZlLUMgbGVha3MKKysgICAgICAgIDxodHRwczov
L3dlYmtpdC5vcmcvYi8yMjkxMjg+CisrICAgICAgICA8cmRhcjovL3Byb2JsZW0vODE5NjQwMDc+
CisrCisrICAgICAgICBSZXZpZXdlZCBieSBBbGV4IENocmlzdGVuc2VuLgorKworKyAgICAgICAg
KiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvRGlzcGxheU10bC5oOgorKyAgICAgICAgKHJ4
OjpEaXNwbGF5TXRsOjpnZXRNZXRhbERldmljZU1hdGNoaW5nQXR0cmlidXRlKToKKysgICAgICAg
IC0gQ2hhbmdlIHRvIHJldHVybiBtdGw6OkF1dG9PYmpDUHRyPD4gdG8gbWFrZSBvd25lcnNoaXAg
Y2xlYXIuCisrICAgICAgICAocng6OkRpc3BsYXlNdGw6Om1NZXRhbERldmljZSk6CisrICAgICAg
ICAtIE5vIG5lZWQgdG8gaW5pdGlhbGl6ZSB0byBuaWwuCisrCisrICAgICAgICAqIHNyYy9saWJB
TkdMRS9yZW5kZXJlci9tZXRhbC9EaXNwbGF5TXRsLm1tOgorKyAgICAgICAgKHJ4OjpEaXNwbGF5
TXRsOjppbml0aWFsaXplSW1wbCk6CisrICAgICAgICAtIFVwZGF0ZSBmb3IgY2hhbmdlcyB0byBn
ZXRNZXRhbERldmljZU1hdGNoaW5nQXR0cmlidXRlKCkuCisrICAgICAgICAocng6OkRpc3BsYXlN
dGw6OmdldE1ldGFsRGV2aWNlTWF0Y2hpbmdBdHRyaWJ1dGUpOgorKyAgICAgICAgLSBDaGFuZ2Ug
dG8gcmV0dXJuIG10bDo6QXV0b09iakNQdHI8PiB0byBtYWtlIG93bmVyc2hpcCBjbGVhci4KKysg
ICAgICAgIC0gRml4IGxlYWsgb2YgYGRldmljZUxpc3RgLCBgZXh0ZXJuYWxHUFVzYCwgYGludGVn
cmF0ZWRHUFVzYCwgYW5kCisrICAgICAgICAgIGBkaXNjcmV0ZUdQVXNgLgorKyAgICAgICAgLSBV
c2UgbXRsOjphZG9wdE9iakNPYmo8PigpIHRvIHByZXZlbnQgbGVhayBvZgorKyAgICAgICAgICBN
VExDcmVhdGVTeXN0ZW1EZWZhdWx0RGV2aWNlKCkuCisrCisrICAgICAgICAqIHNyYy9saWJBTkdM
RS9yZW5kZXJlci9tZXRhbC9JT1N1cmZhY2VTdXJmYWNlTXRsLm1tOgorKyAgICAgICAgLSBGaXgg
bGVhayBvZiBgY2FwdHVyZURlc2NyaXB0b3JgIGluIHR3byBkaWZmZXJlbnQgaWYgYmxvY2tzLgor
KworKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvUHJvZ3JhbU10bC5tbToK
KysgICAgICAgIC0gRml4IGxlYWsgb2YgYGZ1bmNDb25zdGFudHNgIGluIGVhcmx5IHJldHVybiBv
biBlcnJvciBwYXRoLgorKworKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwv
UHJvdm9raW5nVmVydGV4SGVscGVyLm1tOgorKyAgICAgICAgKHJ4OjpQcm92b2tpbmdWZXJ0ZXhI
ZWxwZXI6OmdldFNwZWNpYWxpemVkU2hhZGVyKToKKysgICAgICAgIC0gRml4IGxlYWsgb2YgYGZj
VmFsdWVzYC4KKysKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL1N1cmZh
Y2VNdGwubW06CisrICAgICAgICAtIEZpeCBsZWFrIG9mIGBjYXB0dXJlRGVzY3JpcHRvcmAgaW4g
dHdvIGRpZmZlcmVudCBpZiBibG9ja3MuCisrCisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5k
ZXJlci9tZXRhbC9tdGxfY29tbW9uLmg6CisrICAgICAgICAocng6Om10bDo6V3JhcHBlZE9iamVj
dDo6cmV0YWluQXNzaWduKToKKysgICAgICAgIC0gTW92ZSBzdGF0ZW1lbnQgaW5zaWRlICNpZi8j
ZW5kaWYgdGhhdCBpc24ndCBuZWVkZWQgZm9yIEFSQy4KKysgICAgICAgIChyeDo6bXRsOjpXcmFw
cGVkT2JqZWN0Ojp1bnJldGFpbkFzc2lnbik6IEFkZC4KKysgICAgICAgIChyeDo6bXRsOjpBdXRv
T2JqQ1B0cjo6QXV0b09iakNQdHIpOiBBZGQuCisrICAgICAgICAocng6Om10bDo6YWRvcHRPYmpD
T2JqKTogQWRkLgorKyAgICAgICAgLSBBZGQgYSBoZWxwZXIgbWV0aG9kIHRvIGFkb3B0IGFuIE9i
amVjdGl2ZS1DIG9iamVjdCB0bworKyAgICAgICAgICBlbGltaW5hdGUgdGhlIG5lZWQgdG8gYXV0
b3JlbGVhc2UgYSArMSByZXRhaW5lZCBvYmplY3QgYmVmb3JlCisrICAgICAgICAgIGFuIG10bDo6
QXV0b09iakNQdHI8PiBvYmplY3Qgd3JhcHMgaXQuICBNb2RlbGVkIGFmdGVyCisrICAgICAgICAg
IFdURjo6UmV0YWluUHRyPD4gaW4gV2ViS2l0LgorKworKyAgICAgICAgKiBzcmMvbGliQU5HTEUv
cmVuZGVyZXIvbWV0YWwvbXRsX3N0YXRlX2NhY2hlLm1tOgorKyAgICAgICAgKHJ4OjptdGw6OlJl
bmRlclBpcGVsaW5lQ2FjaGU6OmNyZWF0ZVJlbmRlclBpcGVsaW5lU3RhdGUpOgorKyAgICAgICAg
KHJ4OjptdGw6OlByb3Zva2luZ1ZlcnRleENvbXB1dGVQaXBlbGluZUNhY2hlOjpjcmVhdGVDb21w
dXRlUGlwZWxpbmVTdGF0ZSk6CisrICAgICAgICAtIFVzZSBhZG9wdE9iakNPYmo8PigpIHRvIGZp
eCBwb3RlbnRpYWwgbGVhayBvbiB0aGUgZWFybHkgcmV0dXJuCisrICAgICAgICAgIHBhdGggc2lu
Y2UgdGhlc2UgbWV0aG9kcyByZXR1cm4gYW4gbXRsOjpBdXRvT2JqQ1B0cjw+LgorKworKzIwMjEt
MDgtMTYgIERhdmlkIEtpbHplciAgPGRka2lsemVyQGFwcGxlLmNvbT4KKysKKysgICAgICAgICJt
YWtlIGFuYWx5emUiIHNob3VsZCBydW4gY2xhbmcgc3RhdGljIGFuYWx5emVyIGluIGRlZXAgbW9k
ZQorKyAgICAgICAgPGh0dHBzOi8vd2Via2l0Lm9yZy9iLzIyOTEyNz4KKysgICAgICAgIDxyZGFy
Oi8vcHJvYmxlbS84MTk2MDU4Nz4KKysKKysgICAgICAgIFJldmlld2VkIGJ5IEFsZXhleSBQcm9z
a3VyeWFrb3YuCisrCisrICAgICAgICAqIEFOR0xFLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6
CisrICAgICAgICAtIFRyZWF0ICJhbmFseXplIiB0aGUgc2FtZSBhcyAiYnVpbGQiIGZvciAiQUNU
SU9OIiBlbnZpcm9ubWVudAorKyAgICAgICAgICB2YXJpYWJsZS4KKysKKysyMDIxLTA4LTEyICBL
aW1tbyBLaW5udW5lbiAgPGtraW5udW5lbkBhcHBsZS5jb20+CisrCisrICAgICAgICBBTkdMRSBD
b2NvYSBjb21waWxlcyBjb250ZW50cyBvZiBDb250ZXh0RUFHTCBvbiBtYWMKKysgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjg5ODcKKysKKysgICAgICAg
IFJldmlld2VkIGJ5IEtlbm5ldGggUnVzc2VsbC4KKysKKysgICAgICAgIEFkZCBpbmNsdWRlIGd1
YXJkcyB0aGF0IGFyZSBjb25zaXN0ZW50IHdpdGggb3RoZXIgRUFHTCBmaWxlcy4KKysKKysgICAg
ICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvQ29udGV4dEVBR0wuY3BwOgorKwor
KzIwMjEtMDgtMTIgIEtpbW1vIEtpbm51bmVuICA8a2tpbm51bmVuQGFwcGxlLmNvbT4KKysKKysg
ICAgICAgIEFOR0xFIENvY29hIGNvbXBpbGVzIHBhcnRzIG9mIEhMU0wgdHJhbnNsYXRvciwgdnVs
a2FuIHRyYW5zbGF0b3IsIGxpYmdsIGFwaSwgY2FwdHVyZSByZWR1bmRhbnRseQorKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyODk4NgorKworKyAgICAg
ICAgUmV2aWV3ZWQgYnkgS2VubmV0aCBSdXNzZWxsLgorKworKyAgICAgICAgUmVtb3ZlIGZvbGxv
d2luZyBmcm9tIEFOR0xFIChkeW5hbWljKSB0YXJnZXQ6CisrICAgICAgICAtIEhMU0wgdHJhbnNs
YXRvciBhbmQgdHJlZSBvcHMgdXNlZCBvbmx5IGJ5IGl0CisrICAgICAgICAtIFZ1bGthbiB0cmFu
c2xhdG9yIG91dHB1dAorKyAgICAgICAgLSBsaWJnbCBBUEkgdmFsaWRhdGlvbiBpbXBsZW1lbnRh
dGlvbgorKyAgICAgICAgLSBBUEkgdHJhY2UgY2FwdHVyZSBpbXBsZW1lbnRhdGlvbiAod2FzIG9u
bHkgcGFydGlhbGx5IGNvbXBpbGVkKQorKworKyAgICAgICAgVGhlIGZlYXR1cmVzIGFyZSBub3Qg
cGFydCBvZiBDb2NvYSB1c2Ugb2YgQU5HTEUsIGFuZCBzaG91bGQKKysgICAgICAgIG5vdCBiZSBj
b21waWxlZCBhcyBzdWNoLgorKyAgICAgICAgRG9lcyBub3QgYWZmZWN0IHRoZSBiaW5hcnkgc2l6
ZSBtb3JlIHRoYW4gZmV3IGtpbG9ieXRlcy4KKysKKysgICAgICAgICogQU5HTEUueGNvZGVwcm9q
L3Byb2plY3QucGJ4cHJvajoKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMvQU5HTEUtZHluYW1p
Yy54Y2NvbmZpZzoKKysKKysyMDIxLTA4LTExICBLeWxlIFBpZGRpbmd0b24gIDxrcGlkZGluZ3Rv
bkBhcHBsZS5jb20+CisrCisrICAgICAgICBBdm9pZCBpbmZpbml0ZSByZWN1cnNpb24gd2hlbiBj
b21tYW5kIGJ1ZmZlciBjcmVhdGlvbiBmYWlscworKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIyODk3OAorKyAgICAgICAgPHJkYXI6Ly83OTIyNDgyND4K
KysgCisrICAgICAgICBSZXZpZXdlZCBieSBLZW5uZXRoIFJ1c3NlbGwuCisrIAorKyAgICAgICAg
SW4gY2FzZXMgd2hlcmUgdGhlIE1UTENvbW1hbmRCdWZmZXIgaXMgbm90IGEgdmFsaWQgbWV0YWwg
b2JqZWN0LAorKyAgICAgICAgd2UgY2FuIGVuZCB1cCBpbiBhbiBpbmZpbml0ZSByZWN1cnNpdmUg
bG9vcCBkdXJpbmcgZHJhdyBjYWxsIHNldHVwLiBSZWZhY3RvciBzZXR1cERyYXcgdG8gdGFrZSBu
byBtb3JlIHRoYW4gdHdvIGF0dGVtcHRzIHRocm91Z2ggdGhlIHNldHVwIGZ1bmN0aW9uLiAKKysK
KysgICAgICAgIFRlc3Rpbmc6IFJhbiBXZWJHTCB0ZXN0cywgdXNlIGNhc2Ugc2FtcGxlcy4gU2V0
IHVwIHN5bnRoZXRpYyAKKysgICAgICAgIHJlcHJvIGZvcmNpbmcgYmFpbCBvdXQgcGF0aCwgc2F3
IFdlYkdMIGNvbnRlbnQgZmFpbCB0byByZW5kZXIgCisrICAgICAgICBpbnN0ZWFkIG9mIGEgd2Vi
IHByb2Nlc3MgY3Jhc2guCisrCisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRh
bC9Db250ZXh0TXRsLmg6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9D
b250ZXh0TXRsLm1tOgorKyAgICAgICAgKHJ4OjpDb250ZXh0TXRsOjpzZXR1cERyYXcpOgorKyAg
ICAgICAgKHJ4OjpDb250ZXh0TXRsOjpzZXR1cERyYXdJbXBsKToKKysKKysyMDIxLTA4LTExICBL
aW1tbyBLaW5udW5lbiAgPGtraW5udW5lbkBhcHBsZS5jb20+CisrCisrICAgICAgICBDaGVycnkt
cGljayBBTkdMRTogUmV2aXNlIFdlYkdMJ3Mgc2hhZGVyU291cmNlIHZhbGlkYXRpb24KKysgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjg5NTEKKysKKysg
ICAgICAgIFJldmlld2VkIGJ5IEtlbm5ldGggUnVzc2VsbC4KKysKKysgICAgICAgIENoZXJyeS1w
aWNrIEFOR0xFIGNvbW1pdDogYjRmZDQ2Mjg4YWE2NWQ2MWRjOWM3MTQwYzdkMWNkYmEzZjRjZGY5
YQorKyAgICAgICAgRnJvbTogS2VubmV0aCBSdXNzZWxsIDxrYnJAY2hyb21pdW0ub3JnPgorKyAg
ICAgICAgRGF0ZTogV2VkLCAyNyBKYW4gMjAyMSAxNTo1Njo1OCAtMDgwMAorKyAgICAgICAgUmV2
aXNlIFdlYkdMJ3Mgc2hhZGVyU291cmNlIHZhbGlkYXRpb24uCisrCisrICAgICAgICBQZXIgZGlz
Y3Vzc2lvbiBpbiB0aGUgV2ViR0wgd29ya2luZyBncm91cCwgc2hhZGVyU291cmNlIG5vIGxvbmdl
cgorKyAgICAgICAgZ2VuZXJhdGVzIElOVkFMSURfVkFMVUUgZm9yIHNvdXJjZXMgY29udGFpbmlu
ZyBjaGFyYWN0ZXJzIG91dHNpZGUgdGhlCisrICAgICAgICBFU1NMIGNoYXJhY3RlciBzZXQuIENv
bXBpbGF0aW9uIGFuZC9vciBsaW5raW5nIGlzIHN0aWxsIHNwZWNpZmllZCB0bworKyAgICAgICAg
ZmFpbCB3aGVuIGlsbGVnYWwgY29uc3RydWN0cyBhcmUgdXNlZC4KKysKKysgICAgICAgIFdpdGgg
dGhpcyBjaGFuZ2UsIGh0dHBzOi8vZ2l0aHViLmNvbS9LaHJvbm9zR3JvdXAvV2ViR0wvcHVsbC8z
MjA2CisrICAgICAgICBwYXNzZXMgd2l0aCB0aGUgcGFzc3Rocm91Z2ggY29tbWFuZCBkZWNvZGVy
LgorKworKyAgICAgICAgUmV2aXNlIFdlYkdMIGNvbXBhdGliaWxpdHkgdGVzdHMgdG8gZm9sbG93
IHRoZSBuZXcgcnVsZXMuCisrCisrICAgICAgICAqIHNyYy9saWJBTkdMRS92YWxpZGF0aW9uRVMy
LmNwcDoKKysgICAgICAgIChnbDo6VmFsaWRhdGVTaGFkZXJTb3VyY2UpOgorKyAgICAgICAgKiBz
cmMvdGVzdHMvZ2xfdGVzdHMvV2ViR0xDb21wYXRpYmlsaXR5VGVzdC5jcHA6CisrCisrMjAyMS0w
Ny0yMyAgRGVhbiBKYWNrc29uICA8ZGlub0BhcHBsZS5jb20+CisrCisrICAgICAgICAzLjUgTUIg
c3lzdGVtLXdpZGUgZm9vdHByaW50IGltcGFjdCBkdWUgdG8gdGhyZWFkLWxvY2FscyBpbiBsaWJB
TkdMRQorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIy
ODI0MAorKyAgICAgICAgcmRhcjovLzc5NTA0NzgzCisrCisrICAgICAgICBSZXZpZXdlZCBieSBL
ZW4gUnVzc2VsbCBhbmQgR2VvZmYgR2FyZW4uCisrCisrICAgICAgICBBcHBsZSdzIGR5bGQgaGFz
IGEgYnVnIHdoZXJlIHRocmVhZF9sb2NhbCB2YXJpYWJsZXMgYXJlIGRpcnRpZWQgb24KKysgICAg
ICAgIHByb2Nlc3MgbGF1bmNoLCBjYXVzaW5nIGEgbWVtb3J5IHJlZ3Jlc3Npb24uIFdvcmsgYXJv
dW5kIHRoaXMKKysgICAgICAgIHRlbXBvcmFyaWx5IGluIEFOR0xFIGJ5IHVzaW5nIHB0aHJlYWQg
dGhyZWFkIGxvY2FsIHN0b3JhZ2UuCisrCisrICAgICAgICBJIGRvbid0IGV4cGVjdCB0aGlzIHRv
IGJlIHVwc3RyZWFtZWQgdG8gQU5HTEUgdW5sZXNzIHRoZXkKKysgICAgICAgIHdhbnQgaXQuIElm
IGl0IGlzbid0LCB0aGlzIHBhdGNoIHdpbGwgaGF2ZSB0byBiZSBhcHBsaWVkIHVudGlsCisrICAg
ICAgICB0aGUgZHlsZCBidWcgaXMgZml4ZWQuCisrCisrICAgICAgICAqIHNyYy9saWJBTkdMRS9D
b250ZXh0LmNwcDogSW1wbGVtZW50IHNvbWUgbWV0aG9kcyB0byBnZXQvc2V0IHdoYXQgd2FzCisr
ICAgICAgICB0aGUgZ2xvYmFsIHZhcmlhYmxlIGdDdXJyZW50VmFsaWRDb250ZXh0LgorKyAgICAg
ICAgKGdsOjpHZXRDdXJyZW50VmFsaWRDb250ZXh0VExTSW5kZXgpOgorKyAgICAgICAgKGdsOjpH
ZXRDdXJyZW50VmFsaWRDb250ZXh0VExTKToKKysgICAgICAgIChnbDo6U2V0Q3VycmVudFZhbGlk
Q29udGV4dFRMUyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnNldENvbnRleHRMb3N0KToKKysg
ICAgICAgICogc3JjL2xpYkFOR0xFL0NvbnRleHQuaDoKKysgICAgICAgICogc3JjL2xpYkdMRVN2
Mi9nbG9iYWxfc3RhdGUuY3BwOiBEaXR0bywgYnV0IGZvciBnQ3VycmVudFRocmVhZC4KKysgICAg
ICAgIChlZ2w6OkdldEN1cnJlbnRUaHJlYWRUTFNJbmRleCk6CisrICAgICAgICAoZWdsOjpHZXRD
dXJyZW50VGhyZWFkVExTKToKKysgICAgICAgIChlZ2w6OlNldEN1cnJlbnRUaHJlYWRUTFMpOgor
KyAgICAgICAgKGVnbDo6R2V0Q3VycmVudFRocmVhZCk6CisrICAgICAgICAoZWdsOjpTZXRDb250
ZXh0Q3VycmVudCk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvZ2xvYmFsX3N0YXRlLmg6Cisr
ICAgICAgICAoZ2w6OkdldEdsb2JhbENvbnRleHQpOgorKyAgICAgICAgKGdsOjpHZXRWYWxpZEds
b2JhbENvbnRleHQpOgorKworKzIwMjEtMDctMTYgIEt5bGUgUGlkZGluZ3RvbiAgPGtwaWRkaW5n
dG9uQGFwcGxlLmNvbT4KKysKKysgICAgICAgIEJ1aWxkIERlZmF1bHQgTWV0YWwgbGlicmFyeSBv
ZmZsaW5lCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MjI3MzMzCisrCisrICAgICAgICA8cmRhcjovLzc5OTIzMzcxPgorKworKyAgICAgICAgVGhpcyBw
YXRjaCBjb21waWxlcyBhbmQgY3JlYXRlcyBhIE1ldGFsIGxpYnJhcnkgYXQgYnVpbGQgdGltZSwg
c3RvcmluZworKyAgICAgICAgdGhlIGxpYnJhcnkgYXMgYSBjb21waWxlZCBiaW5hcnkgZmlsZS4g
VGhpcyBsaWJyYXJ5IGlzIGJha2VkIGludG8gdGhlIGR5bGliLAorKyAgICAgICAgYW5kIGlzIGxv
YWRlZCBhdCBjb250ZXh0IGNyZWF0aW9uIHRpbWUuCisrCisrICAgICAgICBVbmxpa2UgdGhlIHBy
ZXZpb3VzIHZlcnNpb24gb2YgdGhpcyBwYXRjaCwgdGhpcyBwYXRjaCBkb2VzIG5vdCBzYXZlIG9y
IHN0b3JlIHRoZSAubWV0YWxsaWIgb24gZGlzaywgYnV0IHJhdGhlcgorKyAgICAgICAgYmFrZXMg
aXQgaW50byBhIGJpbmFyeS4KKysKKysgICAgICAgIEZpeGVkIGludGVybmFsIGJ1aWxkIGJyZWFr
cyBieSBza2lwcGluZyBNZXRhbGxpYiBiYWtlIHNjcmlwdC4KKysKKysgICAgICAgIFJldmlld2Vk
IGJ5IEtlbm5ldGggUnVzc2VsbC4KKysKKysgICAgICAgICogQU5HTEUueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvajoKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMvQU5HTEUtZHluYW1pYy54Y2Nv
bmZpZzoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL0Rpc3BsYXlNdGwu
bW06CisrICAgICAgICAocng6OkRpc3BsYXlNdGw6OmluaXRpYWxpemVTaGFkZXJMaWJyYXJ5KToK
KysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF91dGlscy5oOgorKwor
KzIwMjEtMDctMTYgIFRydWl0dCBTYXZlbGwgIDx0c2F2ZWxsQGFwcGxlLmNvbT4KKysKKysgICAg
ICAgIFVucmV2aWV3ZWQsIHJldmVydGluZyByMjc5OTgwLgorKworKyAgICAgICAgQnJva2UgSW50
ZXJuYWwgQnVpbGRzCisrCisrICAgICAgICBSZXZlcnRlZCBjaGFuZ2VzZXQ6CisrCisrICAgICAg
ICAiQnVpbGQgRGVmYXVsdCBNZXRhbCBsaWJyYXJ5IG9mZmxpbmUiCisrICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI3MzMzCisrICAgICAgICBodHRwczov
L2NvbW1pdHMud2Via2l0Lm9yZy9yMjc5OTgwCisrCisrMjAyMS0wNy0xNiAgS3lsZSBQaWRkaW5n
dG9uICA8a3BpZGRpbmd0b25AYXBwbGUuY29tPgorKworKyAgICAgICAgQnVpbGQgRGVmYXVsdCBN
ZXRhbCBsaWJyYXJ5IG9mZmxpbmUKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0yMjczMzMKKysKKysgICAgICAgIDxyZGFyOi8vNzk5MjMzNzE+CisrCisr
ICAgICAgICBUaGlzIHBhdGNoIGNvbXBpbGVzIGFuZCBjcmVhdGVzIGEgTWV0YWwgbGlicmFyeSBh
dCBidWlsZCB0aW1lLCBzdG9yaW5nCisrICAgICAgICB0aGUgbGlicmFyeSBhcyBhIGNvbXBpbGVk
IGJpbmFyeSBmaWxlLiBUaGlzIGxpYnJhcnkgaXMgYmFrZWQgaW50byB0aGUgZHlsaWIsIAorKyAg
ICAgICAgYW5kIGlzIGxvYWRlZCBhdCBjb250ZXh0IGNyZWF0aW9uIHRpbWUuCisrCisrICAgICAg
ICBVbmxpa2UgdGhlIHByZXZpb3VzIHZlcnNpb24gb2YgdGhpcyBwYXRjaCwgdGhpcyBwYXRjaCBk
b2VzIG5vdCBzYXZlIG9yIHN0b3JlIHRoZSAubWV0YWxsaWIgb24gZGlzaywgYnV0IHJhdGhlcgor
KyAgICAgICAgYmFrZXMgaXQgaW50byBhIGJpbmFyeS4KKysgICAgICAgIAorKyAgICAgICAgUmV2
aWV3ZWQgYnkgS2VubmV0aCBSdXNzZWxsLgorKworKyAgICAgICAgKiBBTkdMRS54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qOgorKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9BTkdMRS1keW5hbWlj
LnhjY29uZmlnOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvRGlzcGxh
eU10bC5tbToKKysgICAgICAgIChyeDo6RGlzcGxheU10bDo6aW5pdGlhbGl6ZVNoYWRlckxpYnJh
cnkpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX3V0aWxzLmg6
CisrCisrMjAyMS0wNy0xNSAgS3lsZSBQaWRkaW5ndG9uICA8a3BpZGRpbmd0b25AYXBwbGUuY29t
PgorKworKyAgICAgICAgV2ViR0wyIGRlbW8gZG9lc24ndCB3b3JrIGR1ZSB0byBmYWlsaW5nIGNv
bXBpbGF0aW9uIHRvIG1ldGFsIGJhY2tlbmQKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0yMjY4NjUKKysJCisrICAgICAgICBGaXggdHJhbnNsYXRpb24g
b2Ygc3RydWN0LWFycmF5cyB0byBjb250YWluIHRoZSBhcnJheSB0eXBlIGFzIHdlbGwuCisrICAg
ICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisrCisrICAgICAgICAqIHNyYy9jb21waWxl
ci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC9TZXBhcmF0ZUNvbXBvdW5kU3RydWN0
RGVjbGFyYXRpb25zLmNwcDoKKysKKysyMDIxLTA3LTEzICBLeWxlIFBpZGRpbmd0b24gIDxrcGlk
ZGluZ3RvbkBhcHBsZS5jb20+CisrCisrICAgICAgICByQUYgZHJpdmVuIFdlYkdMIHN1Ym1pdHMg
ZXhjZXNzaXZlIGFtb3VudCBvZiBHUFUgd29yayB3aGVuIGZyYW1lcyBhcmUgc2xvdworKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNzA1OQorKworKyAg
ICAgICAgUmV2aWV3ZWQgYnkgRGVhbiBKYWNrc29uLgorKworKyAgICAgICAgQWR2ZXJ0aXNlIEdM
X0FSQl9zeW5jIGZvciB0aGUgTWV0YWwgYmFja2VuZC4KKysgICAgU2luY2UgR0xfQVJCX3N5bmMg
aXMgY29yZSBpbiBPcGVuR0wgRVMgMy4wIGFuZCB0aGUgTWV0YWwgYmFja2VuZCBhZHZlcnRpc2Vz
IE9wZW5HTCBFUyAzLjAsCisrICAgIHRoZSBBUEkgbXVzdCBiZSB3b3JraW5nIGFscmVhZHkuCisr
CisrICAgICAgICBMaW1pdCBpbi1mbGlnaHQgV2ViR0wgZnJhbWVzIHRvIHRocmVlIGZyYW1lcy4g
RG8gbm90IGNvbnRpbnVlIHByZXBhcmF0aW9uIGZvciBkaXNwbGF5CisrICAgIHVudGlsIHRoZSBj
b21tYW5kcyBmb3IgdGhlIG9sZGVzdCBmcmFtZSBoYXZlIGJlZW4gZXhlY3V0ZWQgYnkgdGhlIEdQ
VS4KKysKKysgICAgICAgIFRoaXMgbGltaXRzIHRoZSBpbXBhY3Qgc2xvdyBmcmFtZXMgaGF2ZSwg
ZXNwZWNpYWxseSBpbiB0aGUKKysgICAgY2FzZSB3aGVyZSB0aGUgY29tcG9zaXRvciBza2lwIGZy
YW1lcyBhbmQgV2ViS2l0IHdvdWxkIGlzc3VlIGEgbmV3IHNsb3cgZnJhbWUKKysgICAgb24gdG9w
IG9mIHRoZSBza2lwcGVkIGZyYW1lLgorKworKwlBbiBhZGRpdGlvbmFsIGNoYW5nZSBlbnN1cmVz
IHRoYXQgTnZpZGlhIGNvbmZpZ3MsIHdoaWNoIGRvIG5vdCBzdXBwb3J0IE1UTEV2ZW50cworKwl0
byBhIGxldmVsIG9mIGNvbmZvcm1hbmNlIHJlcXVpcmVkIChTZWUgaHR0cDovL2NyYnVnLmNvbS8x
MTM2NjczKSwgY29udGludWUgdG8gcnVuLiBUaGUgbW9yZSBwb3dlcmZ1bCBlR1BVcyB3aWxsIG5v
dCBleHBlcmllbmNlIHRocm90dGxpbmcgdG8gdGhlIHNhbWUgbGV2ZWwgYXMgaW50ZWdyYXRlZCBH
UFVTLgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvRGlzcGxheU10bC5t
bToKKysgICAgICAgIChyeDo6RGlzcGxheU10bDo6aW5pdGlhbGl6ZUV4dGVuc2lvbnMgY29uc3Qp
OgorKworKzIwMjEtMDctMDcgIEt5bGUgUGlkZGluZ3RvbiAgPGtwaWRkaW5ndG9uQGFwcGxlLmNv
bT4KKysKKysgICAgICAgIFdlYkdMIHNoYWRlciBsaW5rIGVycm9yIGluIGlPUyAxNSBiZXRhOiAi
SW50ZXJuYWwgZXJyb3IgY29tcGlsaW5nIHNoYWRlciB3aXRoIE1ldGFsIGJhY2tlbmQiCisrICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI3NzIzCisrCisr
ICAgICAgICBUaGUgc2VxdWVuY2Ugb3BlcmF0b3IgY2FuIGJlIHVzZWQgdG8gY29tYmluZSBzdGF0
ZW1lbnRzLiBPdXIgaW5pdGlhbAorKyAgICAgICAgbG9naWMgZGlkIG5vdCBhY2NvdW50IGZvciB0
aGlzLiAKKysgICAgICAgIFJldmlld2VkIGJ5IERlYW4gSmFja3Nvbi4KKysKKysgICAgICAgICog
c3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0L1NlcGFyYXRlQ29t
cG91bmRFeHByZXNzaW9ucy5jcHA6CisrICAgICAgICAoc2g6OlNlcGFyYXRvcjo6aXNTdGFuZGFs
b25lRXhwcik6CisrCisrMjAyMS0wNy0wNiAgS3lsZSBQaWRkaW5ndG9uICA8a3BpZGRpbmd0b25A
YXBwbGUuY29tPgorKworKyAgICAgICAgUkVHUkVTU0lPTiAocjI3OTQ2Nik6ICBbQmlnIFN1cl0g
d2ViZ2wvMS4wLjMvY29uZm9ybWFuY2UgJiB3ZWJnbC8yLjAuMC9jb25mb3JtYW5jZSBhcmUgZmFp
bGluZworKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIy
NzU5NgorKyAgICAgICAgUHJvdmlkZSBJbnRlbCB3b3JrYXJvdW5kIGZvciBCaWcgU3VyIHN5c3Rl
bXMuIEF0YW4gYW5kIGludmFyaWFudCBoYXZlIAorKyAgICAgICAgaXNzdWVzIG9uIG9sZGVyIHN5
c3RlbXMsIGFuZCByZXF1aXJlIHVzIHRvIGRpc2FibGUgZmFzdG1hdGggdG8gcHJvZHVjZSBjb3Jy
ZWN0IHJlc3VsdHMuIAorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgS2VubmV0aCBSdXNzZWxsLgor
KworKyAgICAgICAgKiBpbmNsdWRlL3BsYXRmb3JtL0ZlYXR1cmVzTXRsLmg6CisrICAgICAgICAq
IHNyYy9jb21waWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC5oOgorKyAgICAg
ICAgKHNoOjpUcmFuc2xhdG9yTWV0YWxSZWZsZWN0aW9uOjpyZXNldCk6CisrICAgICAgICAqIHNy
Yy9jb21waWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC9FbWl0TWV0YWwuY3Bw
OgorKyAgICAgICAgKEdlbk1ldGFsVHJhdmVyc2VyOjplbWl0UG9zdFF1YWxpZmllcik6CisrICAg
ICAgICAoR2VuTWV0YWxUcmF2ZXJzZXI6OnZpc2l0VW5hcnkpOgorKyAgICAgICAgKEdlbk1ldGFs
VHJhdmVyc2VyOjp2aXNpdEFnZ3JlZ2F0ZSk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5k
ZXJlci9tZXRhbC9EaXNwbGF5TXRsLm1tOgorKyAgICAgICAgKHJ4OjpEaXNwbGF5TXRsOjppbml0
aWFsaXplRmVhdHVyZXMpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwv
UHJvZ3JhbU10bC5oOgorKyAgICAgICAgKHJ4OjpQcm9ncmFtTXRsOjpnZXRUcmFuc2xhdGVkU2hh
ZGVySW5mbyBjb25zdCk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9Q
cm9ncmFtTXRsLm1tOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRs
X2dsc2xhbmdfbXRsX3V0aWxzLmg6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9t
ZXRhbC9tdGxfZ2xzbGFuZ19tdGxfdXRpbHMubW06CisrICAgICAgICAocng6Om10bDo6R2xzbGFu
Z0dldE1TTCk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9tdGxfcmVu
ZGVyX3V0aWxzLmg6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9tdGxf
cmVuZGVyX3V0aWxzLm1tOgorKyAgICAgICAgKHJ4OjptdGw6OlRyYW5zZm9ybUZlZWRiYWNrVXRp
bHM6OmNyZWF0ZU1zbFhmYkxpYnJhcnkpOgorKyAgICAgICAgKHJ4OjptdGw6OlRyYW5zZm9ybUZl
ZWRiYWNrVXRpbHM6OmdldFRyYW5zZm9ybUZlZWRiYWNrUmVuZGVyUGlwZWxpbmUpOgorKyAgICAg
ICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX3V0aWxzLmg6CisrICAgICAgICAq
IHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9tdGxfdXRpbHMubW06CisrICAgICAgICAocng6
Om10bDo6Q3JlYXRlU2hhZGVyTGlicmFyeSk6CisrCisrMjAyMS0wNy0wMSAgQmVuIE5oYW0gIDxu
aGFtQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFVucmV2aWV3ZWQsIHJldmVydGluZyByMjc5MTcy
LgorKworKyAgICAgICAgQnJva2UgV2ViR0wgY29udGV4dCBjb25zdHJ1Y3Rpb24gb24gc29tZSBk
ZXZpY2VzLgorKworKyAgICAgICAgUmV2ZXJ0ZWQgY2hhbmdlc2V0OgorKworKyAgICAgICAgInJB
RiBkcml2ZW4gV2ViR0wgc3VibWl0cyBleGNlc3NpdmUgYW1vdW50IG9mIEdQVSB3b3JrIHdoZW4g
ZnJhbWVzIGFyZSBzbG93IgorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIyNzA1OQorKyAgICAgICAgaHR0cHM6Ly9jb21taXRzLndlYmtpdC5vcmcvcjI3
OTE3MgorKworKzIwMjEtMDctMDEgIEt5bGUgUGlkZGluZ3RvbiAgPGtwaWRkaW5ndG9uQGFwcGxl
LmNvbT4KKysKKysgICAgICAgIEJhYnlsb25KUyBVbmRlciB3YXRlciBkZW1vIGlzIHNsb3dlciB0
aGFuIGl0IHNob3VsZCBiZSBvbiBJbnRlbAorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTIyNzIyNgorKworKyAgICAgICAgUmVtb3ZlIGZhc3RNYXRoIHJl
c3RyaWN0aW9uIG9uIEludGVsCisrICAgICAgICBSZW1vdmluZyBmYXN0bWF0aCBpbiBhbGwgc2Nl
bmFyaW9zIGxlYWRzIHRvIHVuYWNjZXB0YWJsZSBwZXJmb3JtYW5jZSBvbiBpbnRlZ3JhdGVkIGdy
YXBoaWNzCisrICAgICAgICBDdXJyZW50bHksIHdlYmdsIGNvbmZvcm1hbmNlIHRlc3RzIGFuZCB0
aGUgU2FmYXJpIHRlc3RzIGRvbid0IGhhdmUgYW55IGludmFyaWFuY2UgdGVzdHMgdGhhdCBzaG93
IGludmFyaWFuY2UgaXNzdWVzLiBkZVFQIHRlc3RzIGFyZSBzaW1pbGFybHkgcGFzc2luZy4KKysg
ICAgICAgIEluIE1ldGFsLUFOR0xFLCBnbF9wb3NpdGlvbiBhbmQgZ2xfZnJhZ2Nvb3JkIGFyZSB2
YWxpZCBhdHRyaWJ1dGVzIHRvIGJlIG1hcmtlZCBhcyBpbnZhcmlhbnQuIEFsbCBvdGhlcnMgd2ls
bCBiZSBpZ25vcmVkLgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgS2VubmV0aCBSdXNzZWxsLgor
KworKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJl
Y3QvRW1pdE1ldGFsLmNwcDoKKysgICAgICAgIChHZW5NZXRhbFRyYXZlcnNlcjo6ZW1pdFBvc3RR
dWFsaWZpZXIpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX3V0
aWxzLm1tOgorKyAgICAgICAgKHJ4OjptdGw6OkNyZWF0ZVNoYWRlckxpYnJhcnkpOgorKworKzIw
MjEtMDYtMzAgIEtpbW1vIEtpbm51bmVuICA8a2tpbm51bmVuQGFwcGxlLmNvbT4KKysKKysgICAg
ICAgIEFTU0VSVCBpbiAgd2ViZ2wvMS4wLngvY29uZm9ybWFuY2UvZ2xzbC9taXNjL3VuaW5pdGlh
bGl6ZWQtbG9jYWwtZ2xvYmFsLXZhcmlhYmxlcy5odG1sICAgSWRHZW4gQVNTRVJUKCpiYXNlICE9
ICdfJyk7CisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MjI3NDgyCisrCisrICAgICAgICBSZXZpZXdlZCBieSBLZW5uZXRoIFJ1c3NlbGwuCisrCisrICAg
ICAgICBHaXZlIHVubmFtZWQgc3RydWN0cyBub3JtYWwgIl88bnVtYmVyPiIgbmFtZS4KKysgICAg
ICAgIFRoZSBvcmlnaW5hbCBjb2RlIHRob3VnaHQgaXQgZ2F2ZSAiQU5HTEVfX3VubmFtZWQ8bnVt
YmVyPiIsIGJ1dCBpbiByZWFsaXR5IGl0CisrICAgICAgICBnYXZlICJfX3VubmFtZWQ8bnVtYmVy
PiIuCisrICAgICAgICBTaW5jZSBvdGhlciBjb25zdHJ1Y3RzIGFscmVhZHkgY3JlYXRlIG5hbWVz
IG9mIGZvcm0gIl88bnVtYmVyPiIsIGl0IGlzIHVud2FycmFudGVkIHRvCisrICAgICAgICBzcGVj
aWFsIGNhc2UgdGhpcyBwYXJ0aWN1bGFyIGNhc2UgdG8gZ2l2ZSAiX3VubmFtZWQ8bnVtYmVyPiIg
b3IgIkFOR0xFX3VubmFtZWQ8bnVtYmVyIiBvcgorKyAgICAgICAgIkFOR0xFXzxudW1iZXI+Ii4K
KysKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFsRGly
ZWN0L1NlcGFyYXRlQ29tcG91bmRTdHJ1Y3REZWNsYXJhdGlvbnMuY3BwOgorKyAgICAgICAgKiBz
cmMvdGVzdHMvY29tcGlsZXJfdGVzdHMvTVNMT3V0cHV0X3Rlc3QuY3BwOgorKyAgICAgICAgKFRF
U1RfRik6CisrCisrMjAyMS0wNi0yOSAgS2ltbW8gS2lubnVuZW4gIDxra2lubnVuZW5AYXBwbGUu
Y29tPgorKworKyAgICAgICAgQU5HTEUgTWV0YWwgcHJpbWl0aXZlIHJlc3RhcnQgcmFuZ2UgY29t
cHV0YXRpb24gY291bGQgaW5kZXggd2l0aCBzaXplX3QKKysgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjc0NDkKKysKKysgICAgICAgIFJldmlld2VkIGJ5
IEtlbm5ldGggUnVzc2VsbC4KKysKKysgICAgICAgIE1ha2UgdGhlIGBjYWxjdWxhdGVSZXN0YXJ0
UmFuZ2VzKClgIGEgYml0IHNpbXBsZXIgaW4gb3JkZXIKKysgICAgICAgIGZvciBpdCB0byBiZSBl
YXNpZXIgdG8gdW5kZXJzdGFuZC4KKysKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVy
L21ldGFsL0J1ZmZlck10bC5oOgorKyAgICAgICAgKHJ4OjpJbmRleFJhbmdlOjpJbmRleFJhbmdl
KToKKysgICAgICAgIEFkZCBkb2N1bWVudGF0aW9uIHdoYXQgdGhlIG10bDo6SW5kZXhSYW5nZSBp
cy4KKysgICAgICAgIEFkZCBjb25zdHJ1Y3RvciBzbyB0aGF0IGBzdGQ6OnZlY3Rvcjo6ZW1wbGFj
ZV9iYWNrKClgIHdvcmtzLgorKworKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0
YWwvQnVmZmVyTXRsLm1tOgorKyAgICAgICAgKHJ4OjpjYWxjdWxhdGVSZXN0YXJ0UmFuZ2VzKToK
KysgICAgICAgIEluZGV4IHdpdGggc2l6ZV90IHRvIG1ha2UgaXQgc2ltcGxlciB0byB1bmRlcnN0
YW5kIGlmIHRoZSBpbmRleAorKyAgICAgICAgb3ZlcmZsb3dzIG9yIG5vdC4KKysgICAgICAgIFVz
ZSByZWludGVycHJldF9jYXN0IGluIG9yZGVyIHRvIG5vdCBhY2NpZGVudGFsbHkgY2FzdCBhd2F5
CisrICAgICAgICBjb25zdCBmcm9tIGBtdGw6OkJ1ZmZlclJlZjo6bWFwUmVhZE9ubHkoKWAuCisr
ICAgICAgICBTa2lwIHRoZSBub24tbWFya2VyIGVsZW1lbnRzIHdpdGggYGNvbnRpbnVlYCB0byBh
dm9pZCBkZWVwIG5lc3RpbmcuCisrICAgICAgICBHaXZlIGEgbmFtZSB0byB0aGUgcmVzdGFydCBy
YW5nZSBtYXJrZXIgdmFsdWUuCisrICAgICAgICBSZW1vdmUgaW50ZXJtZWRpYXRlIHZhcmlhYmxl
IGB2YWx1ZSA9IGJ1ZmZlckRhdGFbaV1gIGFzIGl0IGlzIG5ldmVyCisrICAgICAgICB1c2VkIG1v
cmUgdGhhbiBvbmNlLiBUaGlzIHNpbXBsaWZpZXMgdGhlIGNvZGUgYXMgdGhlIGRvLXdoaWxlIGxv
b3AKKysgICAgICAgIGRvZXMgbm90IG5lZWQgdG8gY2hlY2sgdGhlIGlmIGNvbmRpdGlvbiBhcyB0
aGUgbG9vcCBlbmRpbmcgY29uZGl0aW9uCisrICAgICAgICBhbHJlYWR5IGNoZWNrcy4KKysgICAg
ICAgIE1ha2UgdGhlIGFycmF5IGEgcmV0dXJuZWQgcmVzdWx0IGluc3RlYWQgb2Ygb3V0IHZhcmlh
YmxlLgorKworKyAgICAgICAgKHJ4OjpCdWZmZXJNdGw6OmdldFJlc3RhcnRJbmRpY2VzKToKKysK
KysyMDIxLTA2LTI5ICBLaW1tbyBLaW5udW5lbiAgPGtraW5udW5lbkBhcHBsZS5jb20+CisrCisr
ICAgICAgICBBTkdMRSBNZXRhbCBwcmltaXRpdmUgcmVzdGFydCByYW5nZSBjb21wdXRhdGlvbiBz
aG91bGQgbm90IGJlIGRvbmUgdW5sZXNzIHByaW1pdGl2ZSByZXN0YXJ0IGlzIGVuYWJsZWQKKysg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjc0NTIKKysK
KysgICAgICAgIFJldmlld2VkIGJ5IEtlbm5ldGggUnVzc2VsbC4KKysKKysgICAgICAgIFByaW1p
dGl2ZSByZXN0YXJ0IG5lZWRzIHRvIHNjYW4gdGhlIHdob2xlIGluZGV4IGJ1ZmZlciBmb3IgdmFs
dWVzLgorKyAgICAgICAgVGhpcyBzaG91bGQgbm90IGJlIGRvbmUgdW5sZXNzIG5lZWRlZC4KKysK
KysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL1ZlcnRleEFycmF5TXRsLm1t
OgorKyAgICAgICAgKHJ4OjpWZXJ0ZXhBcnJheU10bDo6Z2V0RHJhd0luZGljZXMpOgorKyAgICAg
ICAgRmlyc3QgY2hlY2sgZm9yIHByaW1pdGl2ZSByZXN0YXJ0IGVuYWJsZWRuZXNzLgorKyAgICAg
ICAgQ29tcHV0ZSB0aGUgcHJpbWl0aXZlIHJlc3RhcnQgdmFsdWVzIGFmdGVyIHRoaXMuCisrICAg
ICAgICBUaGUgYWxnb3JpdG0gc2hvdWxkIHN1Y2NlZWQgd2hlbiB0aGUgY291bnQgb2YgcHJpbWl0
aXZlCisrICAgICAgICByZXN0YXJ0IHJhbmdlcyBpcyB6ZXJvLCBhbmQgaXQgZG9lcyBub3QgZG8g
bXVjaCBvZiB3b3JrLgorKyAgICAgICAgVXNlIHRoZSByZXN0YXJ0IHJhbmdlIHZlY3RvciBhcyBy
ZWZlcmVuY2UsIHNvIHRoYXQgbm8gY29weQorKyAgICAgICAgd291bGQgYmUgZG9uZS4KKysgICAg
ICAgIEFkZCBzcGFjZXMgdGhlIGlmIHN0YXRlbWVudHMsIGNvbW1lbnRzIGFuZCByZWZlcmVuY2Vz
LgorKyAgICAgICAgTW92ZSB0aGUgZWxzZSBhcm0gb2YgdGhlIGlmIHN0YXRlbWVudCB3aXRoIHJl
dHVybiBzdGF0ZW1lbnQKKysgICAgICAgIHRvIGJvZHkgb2YgdGhlIGZ1bmN0aW9uIHRvIHJlZHVj
ZSBuZXN0aW5nLgorKworKzIwMjEtMDYtMjggIEtpbW1vIEtpbm51bmVuICA8a2tpbm51bmVuQGFw
cGxlLmNvbT4KKysKKysgICAgICAgIGlQaG9uZSA2UyAtIGlPUyAxNS4wIC0gdW5hYmxlIHRvIHJl
dHJpZXZlIFdlYkdMMiBjb250ZXh0CisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MjI2OTc1CisrICAgICAgICByZGFyOi8vNzg5NjY1NjMKKysKKysgICAg
ICAgIFJldmlld2VkIGJ5IEtlbm5ldGggUnVzc2VsbC4KKysKKysgICAgICAgIExpbWl0IHRoZSBP
cGVuR0wgRVMgMy4wIGNvbnRleHRzIHRvIGlPUyBHUFUgRmFtaWx5IDMsIG5vdAorKyAgICAgICAg
NC4KKysKKysgICAgICAgIFRoZSBsaW1pdCB3YXMgbW9zdCBsaWtlbHkgYWRkZWQgdG8gZ3VhcmQg
c2FtcGxlX2NvbXBhcmUKKysgICAgICAgIGxvZF9vcHRpb25zIHByb3BlcnRpZXMgLmxvZCBhbmQg
LmdyYWRpZW50LiBIb3dldmVyLCB0aGVzZQorKyAgICAgICAgYXJlIGFsd2F5cyBzdXBwb3J0ZWQg
b24gaU9TLgorKworKyAgICAgICAgQ3VycmVudGx5IHRoZXJlIGlzIGFscmVhZHkgRVMgMy4wIGZl
YXR1cmVzIGltcGxlbWVudGVkCisrICAgICAgICBpbiBBTkdMRSB0aGF0IGFyZSBndWFyZGVkIGJ5
IGlPUyBHUFUgRmFtaWx5IDMuCisrCisrICAgICAgICBGaXhlcyBXZWJHTCAyLjAgdG8gd29yayBv
biBpUGhvbmU2cyBhbmQgc2ltaWxhcgorKyAgICAgICAgZGV2aWNlcyAgKEE5LCBBOVgpLgorKwor
KyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvRGlzcGxheU10bC5tbToKKysg
ICAgICAgIChyeDo6RGlzcGxheU10bDo6Z2V0TWF4U3VwcG9ydGVkRVNWZXJzaW9uIGNvbnN0KToK
KysKKysyMDIxLTA2LTI4ICBLaW1tbyBLaW5udW5lbiAgPGtraW5udW5lbkBhcHBsZS5jb20+Cisr
CisrICAgICAgICBBTkdMRSBNZXRhbCBpbmRleCBidWZmZXIgbGVmdCBtYXBwZWQgd2hlbiBidWls
ZGluZyBwcmltaXRpdmUgcmVzdGFydCByYW5nZXMKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjczNzEKKysKKysgICAgICAgIFJldmlld2VkIGJ5IEtl
bm5ldGggUnVzc2VsbC4KKysKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFs
L0J1ZmZlck10bC5tbToKKysgICAgICAgIChyeDo6Y2FsY3VsYXRlUmVzdGFydFJhbmdlcyk6Cisr
ICAgICAgICBBZGQgdW5tYXAuCisrCisrMjAyMS0wNi0yNSAgTXlsZXMgQy4gTWF4ZmllbGQgIDxt
bWF4ZmllbGRAYXBwbGUuY29tPgorKworKyAgICAgICAgW21hY09TXSBXZWJHTCBjb250ZW50IGlz
IHVuYWJsZSB0byB1c2UgdGhlIGRpc2NyZXRlIEdQVQorKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNzQwOAorKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVt
Lzc5MjE2NTA2PgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGVhbiBKYWNrc29uLgorKworKyAg
ICAgICAgVGhlcmUgYXBwZWFycyB0byBiZSBhIGtleSBjb2xsaXNpb246CisrCisrICAgICAgICBT
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9pbmNsdWRlL3BsYXRmb3JtL1BsYXRmb3JtTWV0aG9kcy5o
OiNkZWZpbmUgRUdMX1BMQVRGT1JNX0FOR0xFX1BMQVRGT1JNX01FVEhPRFNfQU5HTEVYIDB4MzQ4
MgorKyAgICAgICAgU291cmNlL1RoaXJkUGFydHkvQU5HTEUvaW5jbHVkZS9FR0wvZWdsZXh0X2Fu
Z2xlLmg6I2RlZmluZSBFR0xfUE9XRVJfUFJFRkVSRU5DRV9BTkdMRSAweDM0ODIKKysKKysgICAg
ICAgIEJvdGggdGhlc2Uga2V5cyBzZWVtIHRvIGJlIGFjY2VwdGVkIGJ5IEVHTF9HZXRQbGF0Zm9y
bURpc3BsYXlFWFQoKS4KKysKKysgICAgICAgIFRoaXMgcGF0Y2gganVzdCBjaGFuZ2VzIHRoZSB2
YWx1ZSBvZiBvbmUgb2YgdGhlbSB0byBhIHZhbHVlIEkgcGlja2VkIG91dCBvZiBhIGhhdCwganVz
dCBzbyB0aGV5IGRvbid0IGNvbmZsaWN0LgorKyAgICAgICAgV2Ugc2hvdWxkIHdvcmsgd2l0aCB1
cHN0cmVhbSB0byBlaXRoZXI6CisrICAgICAgICBBKSBGaW5kIGEgYmV0dGVyIHNvbHV0aW9uICht
YXliZSBkaXNhbWJpZ3VhdGUgdGhlc2UgdmFsdWVzIGJhc2VkIG9uIHdoaWNoIGZ1bmN0aW9uIGlz
IGFjY2VwdGluZyB0aGVtKSwgb3IKKysgICAgICAgIEIpIE1ha2UgYSByb2J1c3Qgd2F5IHRvIG1h
a2Ugc3VyZSBrZXlzIGRvbid0IGNvbGxpZGUgaW4gdGhlIGZ1dHVyZS4KKysKKysgICAgICAgICog
aW5jbHVkZS9wbGF0Zm9ybS9QbGF0Zm9ybU1ldGhvZHMuaDoKKysKKysyMDIxLTA2LTI0ICBKb2hu
IEN1bm5pbmdoYW0gIDxqb2huY3VubmluZ2hhbUBhcHBsZS5jb20+CisrCisrICAgICAgICBbQU5H
TEUgTWV0YWxdIC0gU2V0IGJhcnJpZXJzIG9uIHRyYW5zZm9ybSBmZWVkYmFjayBidWZmZXJzIG9u
bHkgdXAgdG8gdGhlIGluIHVzZSBidWZmZXIgY291bnQKKysgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjcyNzIKKysgICAgICAgIDxyZGFyOi8vNzk1ODc4
NjE+CisrCisrICAgICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisrCisrICAgICAgICAq
IHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9Db250ZXh0TXRsLm1tOgorKyAgICAgICAgKHJ4
OjpDb250ZXh0TXRsOjpvbkVuZFRyYW5zZm9ybUZlZWRiYWNrKToKKysKKysyMDIxLTA2LTIzICBL
eWxlIFBpZGRpbmd0b24gIDxrcGlkZGluZ3RvbkBhcHBsZS5jb20+CisrCisrICAgICAgICBGaXgg
aW5jb3JyZWN0IGluZGV4aW5nIC8gb3V0IG9mIGJvdW5kcyBhY2Nlc3MgaW4gZ2V0UmVzdGFydElu
ZGljZXMKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MjcyNzQKKysgICAgICAgIDxyZGFyOi8vNzkyNDQ3ODk+CisrCisrICAgICAgICBJbiB0aGUgY2Fz
ZSB3aGVyZSBhIHJlc3RhcnQgaW5kZXggaXMgcHJlc2VudCBpbiB0aGUgbGFzdCBlbGVtZW50IG9m
IGFuIGluZGV4IGFycmF5LCB3ZSBjYW4gYWNjaWRlbnRseQorKyAgICAgICAgYWNjZXNzIG91dCBv
ZiBib3VuZHMuIEZpeCB0aGlzIGJ5IGNoZWNraW5nIGJvdW5kYXJpZXMsIGFuZCBmaXhpbmcgb3Ro
ZXIgaW5kZXhpbmcgZXJyb3JzCisrCisrICAgICAgICBUZXN0czogUmFuIGRlcXAvZnVuY3Rpb25h
bC9nbGVzMy9wcmltaXRpdmVyZXN0YXJ0IHN1aXRlLiBQYXNzZWQgOCB0ZXN0cy4KKysKKysgICAg
ICAgIFJldmlld2VkIGJ5IERlYW4gSmFja3Nvbi4KKysKKysgICAgICAgICogc3JjL2xpYkFOR0xF
L3JlbmRlcmVyL21ldGFsL0J1ZmZlck10bC5tbToKKysgICAgICAgIChyeDo6Y2FsY3VsYXRlUmVz
dGFydFJhbmdlcyk6CisrCisrMjAyMS0wNi0yMyAgS3lsZSBQaWRkaW5ndG9uICA8a3BpZGRpbmd0
b25AYXBwbGUuY29tPgorKworKyAgICAgICAgR3VhcmQgYWdhaW5zdCBjb21waWxlIGZhaWx1cmVz
IG9mIHRoZSBkZWZhdWx0IGxpYnJhcmllcworKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTIyNzIzOQorKyAgICAgICAgPHJkYXI6Ly83OTAzNzYyMz4KKysK
KysgICAgICAgIFVuZGVyIGNlcnRhaW4gZXZlbnRzIChIaWdoIG1lbW9yeSB1c2FnZSksIHRoZSBN
VExDb21waWxlclNlcnZpY2UgY2FuIGZhaWwgd2hlbiBjcmVhdGluZyB0aGUgZGVmYXVsdCBsaWJy
YXJ5LgorKyAgICAgICAgR3VhcmQgYWdhaW5zdCBuaWwgcGlwZWxpbmVzIGJ5IGZhaWxpbmcgR0wg
Y2FsbHMgaW5zdGVhZCwgaWYgdGhpcyBoYXBwZW5zLiBXaGlsZSB0aGlzIGNhbiBjcmVhdGUgcmVu
ZGVyaW5nIGFydGlmYWN0cworKyAgICAgICAgZHVlIHRvIG1pc3NpbmcgYmxpdHMgLyBjb252ZXJz
aW9ucywgdGhpcyBjYW4gYXQgbGVhc3QgYXZvaWQgY3Jhc2hpbmcgdGhlIHByb2Nlc3MuCisrCisr
ICAgICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisrCisrICAgICAgICAqIHNyYy9saWJB
TkdMRS9yZW5kZXJlci9tZXRhbC9tdGxfcmVuZGVyX3V0aWxzLmg6CisrICAgICAgICAqIHNyYy9s
aWJBTkdMRS9yZW5kZXJlci9tZXRhbC9tdGxfcmVuZGVyX3V0aWxzLm1tOgorKyAgICAgICAgKHJ4
OjptdGw6OkNsZWFyVXRpbHM6OnNldHVwQ2xlYXJXaXRoRHJhdyk6CisrICAgICAgICAocng6Om10
bDo6Q2xlYXJVdGlsczo6Y2xlYXJXaXRoRHJhdyk6CisrICAgICAgICAocng6Om10bDo6Q29sb3JC
bGl0VXRpbHM6OnNldHVwQ29sb3JCbGl0V2l0aERyYXcpOgorKyAgICAgICAgKHJ4OjptdGw6OkNv
bG9yQmxpdFV0aWxzOjpibGl0Q29sb3JXaXRoRHJhdyk6CisrICAgICAgICAocng6Om10bDo6RGVw
dGhTdGVuY2lsQmxpdFV0aWxzOjpzZXR1cERlcHRoU3RlbmNpbEJsaXRXaXRoRHJhdyk6CisrICAg
ICAgICAocng6Om10bDo6RGVwdGhTdGVuY2lsQmxpdFV0aWxzOjpibGl0RGVwdGhTdGVuY2lsV2l0
aERyYXcpOgorKyAgICAgICAgKHJ4OjptdGw6OlZlcnRleEZvcm1hdENvbnZlcnNpb25VdGlsczo6
c2V0dXBDb21tb25Db252ZXJ0VmVydGV4Rm9ybWF0VG9GbG9hdCk6CisrICAgICAgICAocng6Om10
bDo6VmVydGV4Rm9ybWF0Q29udmVyc2lvblV0aWxzOjpleHBhbmRWZXJ0ZXhGb3JtYXRDb21wb25l
bnRzVlMpOgorKyAgICAgICAgKHJ4OjptdGw6OlZlcnRleEZvcm1hdENvbnZlcnNpb25VdGlsczo6
c2V0dXBDb21tb25FeHBhbmRWZXJ0ZXhGb3JtYXRDb21wb25lbnRzKToKKysKKysyMDIxLTA2LTIz
ICBLaW1tbyBLaW5udW5lbiAgPGtraW5udW5lbkBhcHBsZS5jb20+CisrCisrICAgICAgICByQUYg
ZHJpdmVuIFdlYkdMIHN1Ym1pdHMgZXhjZXNzaXZlIGFtb3VudCBvZiBHUFUgd29yayB3aGVuIGZy
YW1lcyBhcmUgc2xvdworKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIyNzA1OQorKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzc5Mzg1ODU4PgorKworKyAg
ICAgICAgUmV2aWV3ZWQgYnkgS2VubmV0aCBSdXNzZWxsLgorKworKyAgICAgICAgQWR2ZXJ0aXNl
IEdMX0FSQl9zeW5jIGZvciB0aGUgTWV0YWwgYmFja2VuZC4KKysgICAgICAgIFNpbmNlIEdMX0FS
Ql9zeW5jIGlzIGNvcmUgaW4gT3BlbkdMIEVTIDMuMCBhbmQgdGhlIE1ldGFsIGJhY2tlbmQgYWR2
ZXJ0aXNlcyBPcGVuR0wgRVMgMy4wLAorKyAgICAgICAgdGhlIEFQSSBtdXN0IGJlIHdvcmtpbmcg
YWxyZWFkeS4KKysKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL0Rpc3Bs
YXlNdGwubW06CisrICAgICAgICAocng6OkRpc3BsYXlNdGw6OmluaXRpYWxpemVFeHRlbnNpb25z
IGNvbnN0KToKKysKKysyMDIxLTA2LTIyICBEZWFuIEphY2tzb24gIDxkaW5vQGFwcGxlLmNvbT4K
KysKKysgICAgICAgIFtBTkdMRV0gU3VwcG9ydCBpbXBvcnRpbmcgZXh0ZXJuYWwgTVRMVGV4dHVy
ZXMKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjY2
OTAKKysKKysgICAgICAgIFJldmlld2VkIGJ5IFRpbSBIb3J0b24uCisrCisrICAgICAgICBTdXBw
b3J0IE1UTFRleHR1cmVzIGFzIEdMIHRleHR1cmVzLgorKyAgICAgICAgTWVyZ2UgaHR0cHM6Ly9j
aHJvbWl1bS1yZXZpZXcuZ29vZ2xlc291cmNlLmNvbS9jL2FuZ2xlL2FuZ2xlLysvMjgyMDE3OAor
KworKyAgICAgICAgKiBBTkdMRS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorKyAgICAgICAg
KiBleHRlbnNpb25zL0VHTF9BTkdMRV9tZXRhbF90ZXh0dXJlX2NsaWVudF9idWZmZXIudHh0OiBB
ZGRlZC4KKysgICAgICAgICogaW5jbHVkZS9FR0wvZWdsZXh0X2FuZ2xlLmg6CisrICAgICAgICAq
IHNyYy9jb21tb24vdXRpbGl0aWVzLmNwcDoKKysgICAgICAgIChlZ2w6OklzRXh0ZXJuYWxJbWFn
ZVRhcmdldCk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9DYXBzLmNwcDoKKysgICAgICAgIChl
Z2w6OkRpc3BsYXlFeHRlbnNpb25zOjpnZXRTdHJpbmdzIGNvbnN0KToKKysgICAgICAgICogc3Jj
L2xpYkFOR0xFL0NhcHMuaDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFs
L0JVSUxELmduOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvRGlzcGxh
eU10bC5oOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvRGlzcGxheU10
bC5tbToKKysgICAgICAgIChyeDo6RGlzcGxheU10bDo6Y3JlYXRlSW1hZ2UpOgorKyAgICAgICAg
KHJ4OjpEaXNwbGF5TXRsOjpjcmVhdGVFeHRlcm5hbEltYWdlU2libGluZyk6CisrICAgICAgICAo
cng6OkRpc3BsYXlNdGw6OmdlbmVyYXRlRXh0ZW5zaW9ucyBjb25zdCk6CisrICAgICAgICAocng6
OkRpc3BsYXlNdGw6OnZhbGlkYXRlSW1hZ2VDbGllbnRCdWZmZXIgY29uc3QpOgorKyAgICAgICAg
KHJ4OjpEaXNwbGF5TXRsOjppbml0aWFsaXplRXh0ZW5zaW9ucyBjb25zdCk6CisrICAgICAgICAq
IHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9JbWFnZU10bC5oOiBBZGRlZC4KKysgICAgICAg
IChyeDo6VGV4dHVyZUltYWdlU2libGluZ010bDo6Z2V0VGV4dHVyZSBjb25zdCk6CisrICAgICAg
ICAocng6OlRleHR1cmVJbWFnZVNpYmxpbmdNdGw6OmdldEZvcm1hdE10bCBjb25zdCk6CisrICAg
ICAgICAocng6OkltYWdlTXRsOjpnZXRUZXh0dXJlIGNvbnN0KToKKysgICAgICAgIChyeDo6SW1h
Z2VNdGw6OmdldEltYWdlVGV4dHVyZVR5cGUgY29uc3QpOgorKyAgICAgICAgKHJ4OjpJbWFnZU10
bDo6Z2V0SW1hZ2VMZXZlbCBjb25zdCk6CisrICAgICAgICAocng6OkltYWdlTXRsOjpnZXRJbWFn
ZUxheWVyIGNvbnN0KToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL0lt
YWdlTXRsLm1tOiBBZGRlZC4KKysgICAgICAgIChyeDo6VGV4dHVyZUltYWdlU2libGluZ010bDo6
VGV4dHVyZUltYWdlU2libGluZ010bCk6CisrICAgICAgICAocng6OlRleHR1cmVJbWFnZVNpYmxp
bmdNdGw6On5UZXh0dXJlSW1hZ2VTaWJsaW5nTXRsKToKKysgICAgICAgIChyeDo6VGV4dHVyZUlt
YWdlU2libGluZ010bDo6VmFsaWRhdGVDbGllbnRCdWZmZXIpOgorKyAgICAgICAgKHJ4OjpUZXh0
dXJlSW1hZ2VTaWJsaW5nTXRsOjppbml0aWFsaXplKToKKysgICAgICAgIChyeDo6VGV4dHVyZUlt
YWdlU2libGluZ010bDo6aW5pdEltcGwpOgorKyAgICAgICAgKHJ4OjpUZXh0dXJlSW1hZ2VTaWJs
aW5nTXRsOjpvbkRlc3Ryb3kpOgorKyAgICAgICAgKHJ4OjpUZXh0dXJlSW1hZ2VTaWJsaW5nTXRs
OjpnZXRGb3JtYXQgY29uc3QpOgorKyAgICAgICAgKHJ4OjpUZXh0dXJlSW1hZ2VTaWJsaW5nTXRs
Ojppc1JlbmRlcmFibGUgY29uc3QpOgorKyAgICAgICAgKHJ4OjpUZXh0dXJlSW1hZ2VTaWJsaW5n
TXRsOjppc1RleHR1cmFibGUgY29uc3QpOgorKyAgICAgICAgKHJ4OjpUZXh0dXJlSW1hZ2VTaWJs
aW5nTXRsOjpnZXRTaXplIGNvbnN0KToKKysgICAgICAgIChyeDo6VGV4dHVyZUltYWdlU2libGlu
Z010bDo6Z2V0U2FtcGxlcyBjb25zdCk6CisrICAgICAgICAocng6OkltYWdlTXRsOjpJbWFnZU10
bCk6CisrICAgICAgICAocng6OkltYWdlTXRsOjp+SW1hZ2VNdGwpOgorKyAgICAgICAgKHJ4OjpJ
bWFnZU10bDo6b25EZXN0cm95KToKKysgICAgICAgIChyeDo6SW1hZ2VNdGw6OmluaXRpYWxpemUp
OgorKyAgICAgICAgKHJ4OjpJbWFnZU10bDo6b3JwaGFuKToKKysgICAgICAgICogc3JjL2xpYkFO
R0xFL3JlbmRlcmVyL21ldGFsL1JlbmRlckJ1ZmZlck10bC5tbToKKysgICAgICAgIChyeDo6UmVu
ZGVyYnVmZmVyTXRsOjpzZXRTdG9yYWdlRUdMSW1hZ2VUYXJnZXQpOgorKyAgICAgICAgKiBzcmMv
bGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvVGV4dHVyZU10bC5tbToKKysgICAgICAgIChyeDo6VGV4
dHVyZU10bDo6c2V0RUdMSW1hZ2VUYXJnZXQpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVu
ZGVyZXIvbWV0YWwvZ2VuX210bF9mb3JtYXRfdGFibGUucHk6CisrICAgICAgICAoZ2VuX2ltYWdl
X21hcF9zd2l0Y2hfbWFjX2Nhc2UuZ2VuX2Zvcm1hdF9hc3NpZ25fY29kZSk6CisrICAgICAgICAo
Z2VuX2ltYWdlX210bF90b19hbmdsZV9zd2l0Y2hfc3RyaW5nKToKKysgICAgICAgIChtYWluKToK
KysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF9jb21tb24uaDoKKysg
ICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF9mb3JtYXRfdGFibGVfYXV0
b2dlbi5tbToKKysgICAgICAgIChyeDo6bXRsOjpGb3JtYXQ6Ok1ldGFsVG9BbmdsZUZvcm1hdElE
KToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF9mb3JtYXRfdXRp
bHMuaDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3ZhbGlkYXRpb25FR0wuY3BwOgorKyAgICAg
ICAgKGVnbDo6VmFsaWRhdGVDcmVhdGVJbWFnZSk6CisrICAgICAgICAqIHNyYy90ZXN0cy9CVUlM
RC5nbjoKKysgICAgICAgICogc3JjL3Rlc3RzL2dsX3Rlc3RzL0ltYWdlVGVzdC5jcHA6CisrICAg
ICAgICAoYW5nbGU6OlRFU1RfUCk6CisrICAgICAgICAqIHNyYy90ZXN0cy9nbF90ZXN0cy9JbWFn
ZVRlc3RNZXRhbC5tbTogQWRkZWQuCisrICAgICAgICAoYW5nbGU6OlNjb3BlTWV0YWxUZXh0dXJl
UmVmOjpTY29wZU1ldGFsVGV4dHVyZVJlZik6CisrICAgICAgICAoYW5nbGU6OlNjb3BlTWV0YWxU
ZXh0dXJlUmVmOjp+U2NvcGVNZXRhbFRleHR1cmVSZWYpOgorKyAgICAgICAgKGFuZ2xlOjpTY29w
ZU1ldGFsVGV4dHVyZVJlZjo6Z2V0IGNvbnN0KToKKysgICAgICAgIChhbmdsZTo6U2NvcGVNZXRh
bFRleHR1cmVSZWY6Om9wZXJhdG9yIGlkPE1UTFRleHR1cmU+IGNvbnN0KToKKysgICAgICAgIChh
bmdsZTo6U2NvcGVNZXRhbFRleHR1cmVSZWY6Om9wZXJhdG9yPSk6CisrICAgICAgICAoYW5nbGU6
OlNjb3BlTWV0YWxUZXh0dXJlUmVmOjpyZWxlYXNlKToKKysgICAgICAgIChhbmdsZTo6Q3JlYXRl
TWV0YWxUZXh0dXJlMkQpOgorKyAgICAgICAgKGFuZ2xlOjpJbWFnZVRlc3RNZXRhbDo6SW1hZ2VU
ZXN0TWV0YWwpOgorKyAgICAgICAgKGFuZ2xlOjpJbWFnZVRlc3RNZXRhbDo6Z2V0TXRsRGV2aWNl
KToKKysgICAgICAgIChhbmdsZTo6SW1hZ2VUZXN0TWV0YWw6OmNyZWF0ZU10bFRleHR1cmUyRCk6
CisrICAgICAgICAoYW5nbGU6OkltYWdlVGVzdE1ldGFsOjp2ZXJpZnlSZXN1bHRzVGV4dHVyZSk6
CisrICAgICAgICAoYW5nbGU6OkltYWdlVGVzdE1ldGFsOjp2ZXJpZnlSZXN1bHRzMkQpOgorKyAg
ICAgICAgKGFuZ2xlOjpJbWFnZVRlc3RNZXRhbDo6cmVpbnRlcnByZXRIZWxwZXIpOgorKyAgICAg
ICAgKGFuZ2xlOjpJbWFnZVRlc3RNZXRhbDo6aGFzSW1hZ2VOYXRpdmVNZXRhbFRleHR1cmVFeHQg
Y29uc3QpOgorKyAgICAgICAgKGFuZ2xlOjpJbWFnZVRlc3RNZXRhbDo6aGFzT0VTRXh0IGNvbnN0
KToKKysgICAgICAgIChhbmdsZTo6SW1hZ2VUZXN0TWV0YWw6Omhhc0Jhc2VFeHQgY29uc3QpOgor
KyAgICAgICAgKGFuZ2xlOjpJbWFnZVRlc3RNZXRhbDo6c291cmNlTWV0YWxUYXJnZXQyRF9oZWxw
ZXIpOgorKyAgICAgICAgKGFuZ2xlOjpURVNUX1ApOgorKworKzIwMjEtMDYtMTcgIEt5bGUgUGlk
ZGluZ3RvbiAgPGtwaWRkaW5ndG9uQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFtNZXRhbCBBTkdM
RV0gU2hhZGVycyB3aXRoIHJlc2VydmVkIG1ldGFsIGtleXdvcmRzIGRvIG5vdCB0cmFuc2xhdGUs
IG5vciBkbyBzaGFkZXJzIHdpdGggc3RydWN0IGFuZCB2YXJpYWJsZSBuYW1lcyB0aGF0IGFyZSB0
aGUgc2FtZSBleGNlcHQgcHJlZml4ZWQgYnkgYW4gdW5kZXJzY29yZQorKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNjY2MAorKworKyAgICAgICAgRml4
IGtleXdvcmQgdHJhbnNsYXRpb24gcHJvYmxlbSBieSBjb3JyZWN0aW5nIHN5bWJvbCBzcGFjZS4g
VGhpcyBhdm9pZHMgcmVuYW1pbmcgc3RydWN0cyB1bm5lY2Vzc2FyaWx5IAorKworKyAgICAgICAg
UmV2aWV3ZWQgYnkgRGVhbiBKYWNrc29uLgorKworKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJh
bnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QvUmV3cml0ZUtleXdvcmRzLmNwcDoKKysgICAg
ICAgIChzaDo6UmV3cml0ZXI6OmNyZWF0ZVJlbmFtZWQpOgorKworKzIwMjEtMDYtMTYgIEtpbW1v
IEtpbm51bmVuICA8a2tpbm51bmVuQGFwcGxlLmNvbT4KKysKKysgICAgICAgIEFOR0xFIE1ldGFs
IGdsIHN5bmMgb2JqZWN0cyBkbyBub3Qgd29yayBpbiBjYXNlIG9mIGxpc3RlbmVyIGJlaW5nIG5l
ZWRlZAorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIy
NzAyNAorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgUGVyIEFybmUgVm9sbGFuLgorKworKyAgICAg
ICAgQWRkIGFuIGFzc2VydCB0byBub3RpY2Ugd2hlbiBNVExTaGFyZWRFdmVudExpc3RlbmVyIGlu
c3RhbnRpYXRpb24KKysgICAgICAgIGZhaWxzLiBXaXRob3V0IHRoaXMsIHRoZSBmZW5jZSBpbXBs
ZW1lbnRhdGlvbiB3b3VsZCBub3Qgc2lnbmFsCisrICAgICAgICB0aGUgY29tcGxldGlvbiB1bnRp
bCB0aGUgdGltZW91dCB3b3VsZCBwYXNzLgorKworKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVu
ZGVyZXIvbWV0YWwvRGlzcGxheU10bC5tbToKKysgICAgICAgIChyeDo6RGlzcGxheU10bDo6Z2V0
T3JDcmVhdGVTaGFyZWRFdmVudExpc3RlbmVyKToKKysKKysyMDIxLTA2LTE2ICBLaW1tbyBLaW5u
dW5lbiAgPGtraW5udW5lbkBhcHBsZS5jb20+CisrCisrICAgICAgICBBTkdMRSBNZXRhbCBBdXRv
T2JqQ1B0ciA9PSBudWxscHRyIGNvbXBhcmlzb24gaXMgaW52ZXJ0ZWQKKysgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjcwMjYKKysKKysgICAgICAgIFJl
dmlld2VkIGJ5IEFuZGVycyBDYXJsc3Nvbi4KKysKKysgICAgICAgIE1ha2UgaXQgbW9yZSBjb3Jy
ZWN0IGFuZCBhZGQgIT0gbnVsbHB0ciB2YXJpYW50IGZvcgorKyAgICAgICAgY29uc2lzdGVuY3ku
CisrCisrICAgICAgICBVc2Ugc3RkOjpudWxscHRyX3QgaW5zdGVhZCBvZiBjb25zdCBzdGQ6Om51
bGxwdHJfdCAmCisrICAgICAgICBpbiBhbGwgZnVuY3Rpb25zIGZvciBjb25zaXN0ZW5jeS4KKysK
KysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF9jb21tb24uaDoKKysg
ICAgICAgIChyeDo6bXRsOjpBdXRvT2JqQ1B0cjo6b3BlcmF0b3I9PSBjb25zdCk6CisrICAgICAg
ICAocng6Om10bDo6QXV0b09iakNQdHI6Om9wZXJhdG9yIT0gY29uc3QpOgorKworKzIwMjEtMDYt
MTUgIEt5bGUgUGlkZGluZ3RvbiAgPGtwaWRkaW5ndG9uQGFwcGxlLmNvbT4KKysKKysgICAgICAg
IFRlbnNvcmZsb3cuanMgQnJva2VuIGluIFNhZmFyaSAxNQorKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNjk1MworKworKyAgICAgICAgVGVuc29yZmxv
dyBzaGFkZXJzIHVzZSBhICdOQU4nIHVuaWZvcm0uIFRoaXMgaXMgYSByZXNlcnZlZCBrZXl3b3Jk
CisrICAgICAgICBpbiBtZXRhbC4gQWRkIE5BTiB0byB0aGUgcmVzZXJ2ZWQgbGlzdC4KKysKKysg
ICAgICAgICdpbmYnIGNvbnN0YW50cyBuZWVkIHRvIGJlIHJlcGxhY2VkIHdpdGggSU5GSU5JVFks
IG11Y2ggbGlrZSBuYW4gY29uc3RhbnRzIG5lZWQgdG8gYmUgcmVwbGFjZWQgd2l0aCBOQU4KKysg
ICAgICAgIFJldmlld2VkIGJ5IEtlbm5ldGggUnVzc2VsbC4KKysKKysgICAgICAgICogc3JjL2Nv
bXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0LmNwcDoKKysgICAgICAgIChz
aDo6R2V0TXNsS2V5d29yZHMpOgorKworKzIwMjEtMDYtMTUgIEFsZXggQ2hyaXN0ZW5zZW4gIDxh
Y2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KKysKKysgICAgICAgIEZpeCB0eXBvIGluIHIyNzYzMTgK
KysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjcwNDEK
KysgICAgICAgIDxyZGFyOi8vNzYyODQ4ODk+CisrCisrICAgICAgICBSZXZpZXdlZCBieSBDaHJp
cyBEdW1lei4KKysKKysgICAgICAgIEAgdXNlcyB0aGUgc3RyaW5nIEAoRFlMSUJfSU5TVEFMTF9O
QU1FX0JBU0UpCisrICAgICAgICAkIHVzZXMgdGhlIHZhbHVlIG9mIHRoZSBlbnZpcm9ubWVudCB2
YXJpYWJsZS4KKysgICAgICAgIFRoaXMgdHVybnMgb3V0IHRvIGJlIGFuIGltcG9ydGFudCBkaWZm
ZXJlbmNlLgorKworKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9BTkdMRS1keW5hbWljLnhjY29u
ZmlnOgorKworKzIwMjEtMDYtMTEgIEVsZW5pIE1hcmlhIFN0ZWEgIDxlc3RlYUBpZ2FsaWEuY29t
PgorKworKyAgICAgICAgQU5HTEUgRUdMIGFuZCBHTEVTIGxpYnJhcmllcyBzaG91bGQgbGluayB3
aXRoIGxpYiBkbC4KKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMjY5MjAKKysKKysgICAgICAgIFJldmlld2VkIGJ5IEtlbm5ldGggUnVzc2VsbC4KKysK
KysgICAgICAgIEdMRVMgYW5kIEVHTCB0aGF0IGFyZSBnZW5lcmF0ZWQgZnJvbSBBTkdMRSBzaG91
bGQgbGluaworKyAgICAgICAgd2l0aCBsaWJkbCBiZWNhdXNlIHRoZXkgdXNlIGRsc3ltIGFuZCBk
bG9wZW4uIEFsc28sCisrICAgICAgICB3aXRoIHRoZSB1cGRhdGVkIENNYWtlTGlzdHMudHh0IHdl
IGNhbiBzYWZlbHkgbGluayB3aXRoIGxpYkVHTAorKyAgICAgICAgd2hlbiBVU0VfQU5HTEVfV0VC
R0wgaXMgc2V0IGJlY2F1c2UgdGhlIHN5bWJvbHMgb2YgRUdMIGFyZSBub3cKKysgICAgICAgIGZv
dW5kLgorKworKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDoKKysKKysyMDIxLTA2LTEwICBEb24g
T2xtc3RlYWQgIDxkb24ub2xtc3RlYWRAc29ueS5jb20+CisrCisrICAgICAgICBbQ01ha2VdIE1h
a2UgQU5HTEUgbGlicmFyeSB0eXBlcyBjb25maWd1cmFibGUKKysgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjY4NDAKKysKKysgICAgICAgIFJldmlld2Vk
IGJ5IEtlbm5ldGggUnVzc2VsbC4KKysKKysgICAgICAgIFRoZSB0eXBlIGZvciBBTkdMRSdzIGxp
YnJhcmllcyB3YXMgYmVpbmcgaGFyZCBjb2RlZC4gTm93IHRoZSBsaWJyYXJpZXMgY2FuIGJlIHNl
dCBieQorKyAgICAgICAgc3BlY2lmeWluZyB0aGUgX0xJQlJBUllfVFlQRSB3aGljaCBkZWZhdWx0
cyB0byBTVEFUSUMuIFdpbmRvd3MgcGxhdGZvcm1zIG92ZXJyaWRlIHRoaXMKKysgICAgICAgIGFu
ZCB1c2UgU0hBUkVEIGxpYnJhcmllcy4KKysKKysgICAgICAgIEFkZGl0aW9uYWxseSBtYWtlIGNv
bXBpbGluZyBBTkdMRSdzIEVHTCBsaWJyYXJ5IGNvbnRpbmdlbnQgb24gVVNFX0FOR0xFX0VHTCBi
ZWluZyBlbmFibGVkCisrICAgICAgICBzaW5jZSBpdHMgbm90IHVzZWQgb3RoZXJ3aXNlLgorKwor
KyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDoKKysgICAgICAgICogUGxhdGZvcm1GVFcuY21ha2U6
CisrICAgICAgICAqIFBsYXRmb3JtV2luLmNtYWtlOgorKworKzIwMjEtMDYtMDIgIEt5bGUgUGlk
ZGluZ3RvbiAgPGtwaWRkaW5ndG9uQGFwcGxlLmNvbT4KKysKKysgICAgICAgIEFkZCAnbWl4JyBv
dmVycmlkZSB3aXRoIGJvb2wtdmVjdG9ycyB0byBNU0wgdHJhbnNsYXRvcgorKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNjM2NgorKworKyAgICAgICAg
UmV2aWV3ZWQgYnkgRGVhbiBKYWNrc29uLgorKworKyAgICAgICAgQWRkIGluICdtaXgnIG92ZXJy
aWRlcywgYW5kIGxvZ2ljIGZvciBzZWxlY3RpbmcgbWl4IHdpdGggYm9vbCB3aGVuIG5lY2Vzc2Fy
eS4KKysKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFs
RGlyZWN0L0VtaXRNZXRhbC5jcHA6CisrICAgICAgICAoR2V0T3BlcmF0b3JTdHJpbmcpOgorKyAg
ICAgICAgKEdlbk1ldGFsVHJhdmVyc2VyOjp2aXNpdEFnZ3JlZ2F0ZSk6CisrICAgICAgICAqIHNy
Yy9jb21waWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC9Qcm9ncmFtUHJlbHVk
ZS5jcHA6CisrCisrMjAyMS0wNi0wMSAgS3lsZSBQaWRkaW5ndG9uICA8a3BpZGRpbmd0b25AYXBw
bGUuY29tPgorKworKyAgICAgICAgW01ldGFsIEFOR0xFXSB0cmFuc2Zvcm1GZWVkYmFjayBzYW1w
bGVzIG9uIHdlYmdsc2FtcGxlcy5vcmcgZG8gbm90IHJlbmRlciBjb3JyZWN0bHkKKysgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjYyODUKKysgICAgICAg
IDxyZGFyOi8vNzg1MjQ3NzM+CisrCisrICAgICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24u
CisrCisrICAgICAgICBNZXRhbCBBTkdMRSBkb2VzIG5vdCByZW5kZXIgdGhlc2Ugc2FtcGxlcyBj
b3JyZWN0bHksIGZvciBhIG51bWJlciBvZiByZWFzb25zLiAKKysgICAgICAgIEZvciB0cmFuc2Zv
cm1fZmVlZGJhY2tfaW50ZXJsZWF2ZWQgYW5kIHNlcGVyYXRlZCwgV2UgbmVlZCB0byBzdGFydCBh
IG5ldyByZW5kZXJFbmNvZGVyIHRvIGdldCB0aGUgcmVzdWx0cyBmcm9tIHRoZSB0cmFuc2Zvcm0g
ZmVlZGJhY2suIAorKyAgICAgICAgZm9yIHRyYW5zZm9ybV9mZWVkYmFjay1zZXBlcmF0ZWRfMiwg
d2UgbmVlZCB0byBpbnZhbGlkYXRlIHRoZSBjdXJyZW50IHJlbmRlciBwYXNzIGRlc2NyaXB0b3Ig
aW4gb3JkZXIgdG8gc3dpdGNoIHRvIHRoZSByYXN0ZXJpemVyLWVuYWJsZWQgdmVyc2lvbiBvZiB0
aGUgc2hhZGVyLgorKyAgICAgICAgVGVzdGluZzogUmFuIGFsbCB0cmFuc2Zvcm0gZmVlZGJhY2sg
dGVzdHMgZnJvbSBkZXFwIHN1aXRlIHRvIGVuc3VyZSBubyByZWdyZXNzaW9ucyBhcmUgcHJlc2Vu
dC4KKysKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL0NvbnRleHRNdGwu
aDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL0NvbnRleHRNdGwubW06
CisrICAgICAgICAocng6OkNvbnRleHRNdGw6OmRyYXdUcmlGYW5BcnJheXNXaXRoQmFzZVZlcnRl
eCk6CisrICAgICAgICAocng6OkNvbnRleHRNdGw6OmRyYXdBcnJheXNJbXBsKToKKysgICAgICAg
IChyeDo6Q29udGV4dE10bDo6ZHJhd1RyaUZhbkVsZW1lbnRzKToKKysgICAgICAgIChyeDo6Q29u
dGV4dE10bDo6cHJlcGFyZUZvclRyYW5zZm9ybUZlZWRiYWNrUGFzc1R3byk6CisrICAgICAgICAo
cng6OkNvbnRleHRNdGw6OmRyYXdMaW5lTG9vcEVsZW1lbnRzKToKKysgICAgICAgIChyeDo6Q29u
dGV4dE10bDo6ZHJhd0VsZW1lbnRzSW1wbCk6CisrICAgICAgICAocng6OkNvbnRleHRNdGw6Om9u
RW5kVHJhbnNmb3JtRmVlZGJhY2spOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIv
bWV0YWwvVHJhbnNmb3JtRmVlZGJhY2tNdGwubW06CisrICAgICAgICAocng6OlRyYW5zZm9ybUZl
ZWRiYWNrTXRsOjplbmQpOgorKworKzIwMjEtMDYtMDEgIEtpbW1vIEtpbm51bmVuICA8a2tpbm51
bmVuQGFwcGxlLmNvbT4KKysKKysgICAgICAgIEFOR0xFIE1ldGFsIHRyYW5zbGF0b3IgcHJlLXJv
dGF0aW9uIGNvZGUgaXMgdW51c2VkIGFuZCBpdCBhc3NlcnRzIHdoZW4gdXNlZAorKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNjI2MgorKworKyAgICAg
ICAgUmV2aWV3ZWQgYnkgRGVhbiBKYWNrc29uLgorKworKyAgICAgICAgUmVtb3ZlIHRoZSBwcmUt
cm90YXRpb24gY29kZS4gSXQgaXMgQW5kcm9pZCBzcGVjaWZpYyBhbmQgbW9zdCBsaWtlbHkgaXQg
aXMgdXNlZnVsCisrICAgICAgICBvbmx5IHdoZW4gQU5HTEUgaXMgdXNlZCBhcyB0aGUgZHJhd2lu
ZyBtZWNoYW5pc20gZm9yIHRoZSBwcmltYXJ5IGFwcCB3aW5kb3cgcGljdHVyZS4KKysgICAgICAg
IFRodXMgbW9zdCBsaWtlbHkgaXQgaXMgbm90IHVzZWZ1bCBpbiBXZWJLaXQgb24gQ29jb2EgcGxh
dGZvcm1zIHdoZXJlIHRoZSB3aW5kb3cKKysgICAgICAgIHNlcnZlciBkb2VzIHRoZSBjb21wb3Np
dGluZy4KKysKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1l
dGFsRGlyZWN0LmNwcDoKKysgICAgICAgIChzaDo6VHJhbnNsYXRvck1ldGFsRGlyZWN0Ojp0cmFu
c2xhdGVJbXBsKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRv
ck1ldGFsRGlyZWN0Lmg6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9D
b250ZXh0TXRsLmg6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9Db250
ZXh0TXRsLm1tOgorKyAgICAgICAgKHJ4OjpDb250ZXh0TXRsOjpoYW5kbGVEaXJ0eURyaXZlclVu
aWZvcm1zKToKKysKKysyMDIxLTA1LTMxICBLaW1tbyBLaW5udW5lbiAgPGtraW5udW5lbkBhcHBs
ZS5jb20+CisrCisrICAgICAgICBDaGVycnktcGljayBBTkdMRTogQWRkIGFycmF5IGJvdW5kcyBj
aGVja3MgZm9yIFdlYkdMIHNoYWRlcnMKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMjYzOTcKKysKKysgICAgICAgIFJldmlld2VkIGJ5IERlYW4gSmFj
a3Nvbi4KKysKKysgICAgICAgIENoZXJyeS1waWNrIEFOR0xFIGNvbW1pdCBiMGQzOWJhMmFiYTIx
ODQwMmZmMmYzMmY2ZTE2ZjE4Y2Y0OTc1ZmY0CisrICAgICAgICBBdCB0aGUgbW9tZW50IGRvZXMg
bm90IGFmZmVjdCBhbnkgV2ViS2l0IGNsaWVudC4KKysgICAgICAgIE1ha2VzIHRoZSBjb2RlIGNv
bnNpc3RlbnQgd2l0aCBPcGVuR0wuCisrICAgICAgICBNYWtlcyBpdCBlYXNpZXIgdG8gdW5kZXJz
dGFuZCBzYW1lIGNoYW5nZSBpbiBNZXRhbCBiYWNrZW5kLgorKworKyAgICAgICAgVXBzdHJlYW0g
ZGVzY3JpcHRpb246CisrICAgICAgICBBZGQgYXJyYXkgYm91bmRzIGNoZWNrcyBmb3IgV2ViR0wg
c2hhZGVycworKyAgICAgICAgV2ViR0wgc2hhZGVycyBtYXkgY29udGFpbiBPT0IgYXJyYXkgYWNj
ZXNzZXMgd2hpY2ggaW4gdHVybgorKyAgICAgICAgY2F1c2UgdW5kZWZpbmVkIGJlaGF2aW9yLCB3
aGljaCBtYXkgcmVzdWx0IGluIHNlY3VyaXR5CisrICAgICAgICBpc3N1ZXMuIFRoaXMgd2FzIGRl
dGVjdGVkIGFzIGFuIFVOS05PV04gUkVBRCBieSBVQlNBTiB3aGlsZQorKyAgICAgICAgdGVzdGlu
ZyB3aXRoIFN3QU5HTEUuCisrCisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci92dWxr
YW4vU2hhZGVyVmsuY3BwOgorKyAgICAgICAgKHJ4OjpTaGFkZXJWazo6Y29tcGlsZSk6CisrCisr
MjAyMS0wNS0yOCAgS2ltbW8gS2lubnVuZW4gIDxra2lubnVuZW5AYXBwbGUuY29tPgorKworKyAg
ICAgICAgQU5HTEUgTWV0YWwgdHJhbnNsYXRvciBzaG91bGQgYWx3YXlzIGNvbGxlY3QgdmFyaWFi
bGVzCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI2
MjYxCisrCisrICAgICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisrCisrICAgICAgICBB
bHdheXMgY29sbGVjdCB0aGUgdmFyaWFibGVzIHdoZW4gdHJhbnNsYXRpbmcgR0xTTCB0byBNZXRh
bC4KKysgICAgICAgIFRoaXMgd2F5IHRlc3RzIHRoYXQgaW52b2tlIHRyYW5zbGF0aW9uIHdpdGhv
dXQgU0hfVkFSSUFCTEVTIHN0aWxsCisrICAgICAgICB3b3JrLgorKworKyAgICAgICAgKiBzcmMv
Y29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QuY3BwOgorKyAgICAgICAg
KHNoOjpUcmFuc2xhdG9yTWV0YWxEaXJlY3Q6OnRyYW5zbGF0ZUltcGwpOgorKyAgICAgICAgKiBz
cmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QuaDoKKysKKysyMDIx
LTA1LTI3ICBLaW1tbyBLaW5udW5lbiAgPGtraW5udW5lbkBhcHBsZS5jb20+CisrCisrICAgICAg
ICBBTkdMRSBjb3VsZCBiZSBjb21waWxlZCB3aXRoICJhZ2dyZXNzaXZlIHVuaW5pdGlhbGlzZWQg
dmFyaWFibGUiIHNldHRpbmcKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0yMjYyNjAKKysKKysgICAgICAgIFJldmlld2VkIGJ5IEFsZXhleSBQcm9za3Vy
eWFrb3YuCisrCisrICAgICAgICBUdXJuIG9uIGNvbXBpbGVyIGZsYWcgdG8gd2FybiBhYm91dCB1
bmluaXRpYWxpemVkIHZhcmlhYmxlcyB0aGF0IG1pZ2h0IGJlCisrICAgICAgICBjb25kaXRpb25h
bGx5IHVuaW5pdGlhbGl6ZWQuIFRoaXMgaXMgdGhlIHNhbWUgZmxhZyBhcyB1cHN0cmVhbSBBTkdM
RSB1c2VzLgorKyAgICAgICAgRml4IGEgc3B1cmlvdXMgd2FybmluZyBwcm9kdWNlZCBieSB0aGlz
IGZsYWcuCisrICAgICAgICBUaGlzIGhlbHBzIGluIHNjZW5hcmlvcyB3aGVyZSBjdXN0b20gdGFy
Z2V0cyBjb21waWxlIEFOR0xFIHNvdXJjZXMgYW5kCisrICAgICAgICB0aGlzIGZsYWcgc2V0LCBz
dWNoIGFzIHRlc3RzLgorKworKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmln
OgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJl
Y3QvRml4VHlwZUNvbnN0cnVjdG9ycy5jcHA6CisrCisrMjAyMS0wNS0yNyAgS2ltbW8gS2lubnVu
ZW4gIDxra2lubnVuZW5AYXBwbGUuY29tPgorKworKyAgICAgICAgQ2hlcnJ5LXBpY2sgQU5HTEU6
IEQzRDExOiBTa2lwIGJsaXRzIGlmIHRoZXJlIGlzIG5vIGludGVyc2VjdGlvbiBvZiBkZXN0IGFy
ZWFzCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI1
MTkwCisrICAgICAgICA8cmRhcjovLzc3MDg0MTU1PgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkg
RGF2aWQgS2lsemVyLgorKworKyAgICAgICAgQ2hlcnJ5LXBpY2sgQU5HTEUgY29tbWl0IGI1NzQ2
NDNlZjI4YzkyZmNlYTUxMjJkZDdhNzJhY2I0MmE1MTRlZWQKKysgICAgICAgIEZpeGVzIGEgc2Vj
dXJpdHkgaXNzdWUgb24gRDNEMTEuCisrICAgICAgICBQb3RlbnRpYWwgYSBjb3JyZWN0bmVzcyBp
c3N1ZSBvbiBzb21lIE9wZW5HTCBkcml2ZXJzLgorKyAgICAgICAgTm8gZWZmZWN0IG9uIE1ldGFs
LCBidXQgdGhlIG5vZGlzY2FyZCBwYXJ0IGlzIHN0aWxsIHVzZWZ1bC4KKysKKysgICAgICAgIFVw
c3RyZWFtIGRlc2NyaXB0aW9uOgorKyAgICAgICAgRDNEMTE6IFNraXAgYmxpdHMgaWYgdGhlcmUg
aXMgbm8gaW50ZXJzZWN0aW9uIG9mIGRlc3QgYXJlYXMKKysKKysgICAgICAgIEJsaXQxMSB3b3Vs
ZCBjbGlwIHRoZSBkZXN0aW5hdGlvbiByZWN0YW5nbGUgd2l0aCB0aGUgZGVzdGluYXRpb24gc2l6
ZQorKyAgICAgICAgYnV0IGlnbm9yZSB0aGUgcmVzdWx0LiBnbDo6Q2xpcFJlY3RhbmdsZSByZXR1
cm5zIGZhbHNlIHdoZW4gdGhlCisrICAgICAgICByZWN0YW5nbGVzIGRvIG5vdCBpbnRlcnNlY3Qg
YXQgYWxsLCBpbmRpY2F0aW5nIHRoZSBibGl0IGNhbiBiZSBza2lwcGVkLgorKworKyAgICAgICAg
VGhpcyBjb3VsZCBsZWFkIHRvIGFuIG91dC1vZi1ib3VuZHMgd3JpdGUgdG8gdGhlIEdQVSBtZW1v
cnkgZm9yIHRoZQorKyAgICAgICAgZGVzdGluYXRpb24gdGV4dHVyZS4KKysKKysgICAgICAgIE1h
cmsgQ2xpcFJlY3RhbmdsZSBhcyBub2Rpc2NhcmQgdG8gcHJldmVudCBmdXR1cmUgaXNzdWVzLgor
KyAgICAgICAgKiBzcmMvbGliQU5HTEUvYW5nbGV0eXBlcy5oOgorKyAgICAgICAgKiBzcmMvbGli
QU5HTEUvcmVuZGVyZXIvZDNkL2QzZDExL0JsaXQxMS5jcHA6CisrICAgICAgICAqIHNyYy9saWJB
TkdMRS9yZW5kZXJlci9nbC9GcmFtZWJ1ZmZlckdMLmNwcDoKKysgICAgICAgIChyeDo6RnJhbWVi
dWZmZXJHTDo6Y2xpcFNyY1JlZ2lvbik6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJl
ci9tZXRhbC9Db250ZXh0TXRsLm1tOgorKyAgICAgICAgKHJ4OjpDb250ZXh0TXRsOjp1cGRhdGVT
Y2lzc29yKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9Db250ZXh0
VmsuY3BwOgorKyAgICAgICAgKHJ4OjpDb250ZXh0Vms6OnVwZGF0ZVNjaXNzb3IpOgorKyAgICAg
ICAgKiBzcmMvdGVzdHMvZ2xfdGVzdHMvQmxpdEZyYW1lYnVmZmVyQU5HTEVUZXN0LmNwcDoKKysg
ICAgICAgIChURVNUX1ApOgorKworKzIwMjEtMDUtMjYgIERvbiBPbG1zdGVhZCAgPGRvbi5vbG1z
dGVhZEBzb255LmNvbT4KKysKKysgICAgICAgIFtDTWFrZV0gU3VwcG9ydCBVU0VfQU5HTEVfRUdM
IG9uIGFkZGl0aW9uYWwgcGxhdGZvcm1zCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MjI0ODg4CisrICAgICAgICA8cmRhcjovL3Byb2JsZW0vNzcyODAy
MTE+CisrCisrICAgICAgICBSZXZpZXdlZCBieSBLZW4gUnVzc2VsbC4KKysKKysgICAgICAgIFN1
cHBvcnQgQU5HTEUgdXNpbmcgdGhlIE9wZW5HTCBiYWNrZW5kIGZvciBHVEsuIFN1cHBvcnQgQU5H
TEUgdXNpbmcgTWV0YWwKKysgICAgICAgIGJhY2tlbmQgZm9yIE1hYy4gQWRkIHRoZSBnZW5lcmF0
ZWQgc291cmNlcyBmb3IgdGhlc2UgdHdvIGJhY2tlbmRzLgorKworKyAgICAgICAgQ2xlYW4gdXAg
dGhlIENNYWtlIGFuZCBpbnRyb2R1Y2UgYWRkaXRpb25hbCB0YXJnZXRzLgorKworKyAgICAgICAg
KiBDTWFrZUxpc3RzLnR4dDoKKysgICAgICAgICogQ29tcGlsZXIuY21ha2U6CisrICAgICAgICAq
IEdMLmNtYWtlOiBBZGRlZC4KKysgICAgICAgICogTWV0YWwuY21ha2U6IEFkZGVkLgorKyAgICAg
ICAgKiBQbGF0Zm9ybUZUVy5jbWFrZToKKysgICAgICAgICogUGxhdGZvcm1HVEsuY21ha2U6Cisr
ICAgICAgICAqIFBsYXRmb3JtTWFjLmNtYWtlOgorKyAgICAgICAgKiBQbGF0Zm9ybVdpbi5jbWFr
ZToKKysKKysyMDIxLTA1LTIwICBLeWxlIFBpZGRpbmd0b24gIDxrcGlkZGluZ3RvbkBhcHBsZS5j
b20+CisrCisrICAgICAgICBbTWV0YWwgQU5HTEVdIEhhbmRsZSBOQU4gY29uc3RhbnQgZm9sZGlu
ZyBjb3JyZWN0bHkKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMjYwNTIKKysKKysgICAgICAgIE5BTiB2YWx1ZXMgKDAuMGYvMC4wZikgd2VyZSBiZWlu
ZyBoYW5kbGVkIGluY29ycmVjdGx5LiBNU0wgd2FzIGJlaW5nIGVtaXR0ZWQgYXMgbG93ZXJjYXNl
ICduYW5mJywgaW5zdGVhZCBvZiBOQU4KKysgICAgICAgIENoZWNrIGZvciBhbiB1bmxpa2VseSBO
QU4gY2FzZSwgYW5kIGVtaXQgY29ycmVjdCBNU0wKKysKKysgICAgICAgIFJldmlld2VkIGJ5IERl
YW4gSmFja3Nvbi4KKysKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNs
YXRvck1ldGFsRGlyZWN0L0VtaXRNZXRhbC5jcHA6CisrICAgICAgICAoR2VuTWV0YWxUcmF2ZXJz
ZXI6OmVtaXRTaW5nbGVDb25zdGFudCk6CisrCisrMjAyMS0wNS0yMCAgS3lsZSBQaWRkaW5ndG9u
ICA8a3BpZGRpbmd0b25AYXBwbGUuY29tPgorKworKyAgICAgICAgUmVkIGZsYXNoZXMgem9vbWlu
ZyBvbiBHb29nbGUgTWFwcyB3aGVuIHVzaW5nIGV4dGVybmFsIG1vbml0b3Igb24gbXVsdGktZ3B1
IHN5c3RlbXMKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0yMjU5NTYKKysgICAgICAgIDxyZGFyOi8vNzcwMjQxNzk+ICAgICAgICAKKysKKysgICAgICAg
IFJldmlld2VkIGJ5IERlYW4gSmFja3Nvbi4KKysgICAgICAgIElPU3VyZmFjZSBwcmVzZW50YXRp
b24gc3dhcHMgcmVxdWlyZSB0aGF0IGEgY29tbWFuZCBidWZmZXIgaXMgcXVldWVkIGZvciBleGVj
dXRpb24gYmVmb3JlCisrICAgICAgICBzd2FwcGluZy4gT3RoZXJ3aXNlLCB3ZSdyZSBsaWFibGUg
dG8gZHJvcCBmcmFtZXMsIG9yIHByZXNlbnQgb2xkIElPU3VyZmFjZSBidWZmZXJzLiAKKysgICAg
ICAgIEVuc3VyZSB3b3JrIGZsdXNoZWQgdmlhIGdsRmx1c2ggY29tcGxldGVzIGJlZm9yZSBwcmVz
ZW5hdGlvbiBieSB3YWl0aW5nIGZvciBpdCB0byBlbnF1ZXVlIGJlZm9yZSAKKysgICAgICAgIHN3
YXBwaW5nIGEgc3VyZmFjZS4KKysKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21l
dGFsL0NvbnRleHRNdGwubW06CisrICAgICAgICAocng6OkNvbnRleHRNdGw6OmZsdXNoKToKKysg
ICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF9jb21tYW5kX2J1ZmZlci5o
OgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX2NvbW1hbmRfYnVm
ZmVyLm1tOgorKyAgICAgICAgKHJ4OjptdGw6OkNvbW1hbmRCdWZmZXI6OndhaXRVbnRpbFNjaGVk
dWxlZCk6CisrICAgICAgICAocng6Om10bDo6Q29tbWFuZEJ1ZmZlcjo6Y29tbWl0SW1wbCk6Cisr
CisrMjAyMS0wNS0xOSAgS3lsZSBQaWRkaW5ndG9uICA8a3BpZGRpbmd0b25AYXBwbGUuY29tPgor
KworKyAgICAgICAgQVNTRVJUKCF0b1R5cGUuaXNBcnJheSgpKSBmYWlsdXJlIGluIHNoOjpDb2Vy
Y2VTaW1wbGUgZHVlIHRvIHZlY3RvciBhcnJheSBkZXJlZmVyZW5jZQorKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNTg2NAorKyAgICAgICAgPHJkYXI6
Ly83Nzk2ODIxND4gCisrCisrICAgICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisrCisr
ICAgICAgICBGaXhlZCBwcm9ncmFtIHRyYW5zbGF0aW9uIGVycm9yLCBhZGRpdGlvbmFsIGlzc3Vl
cyB3aXRoIHRyYW5zZm9ybSBmZWVkYmFjayBzaGFkZXJzCisrCisrICAgICAgICAqIHNyYy9jb21w
aWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC9BZGRFeHBsaWNpdFR5cGVDYXN0
cy5jcHA6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9Qcm9ncmFtTXRs
Lm1tOgorKyAgICAgICAgKHJ4OjpQcm9ncmFtTXRsOjpyZXNldCk6CisrCisrMjAyMS0wNS0xOSAg
S3lsZSBQaWRkaW5ndG9uICA8a3BpZGRpbmd0b25AYXBwbGUuY29tPgorKworKyAgICAgICAgW0FO
R0xFIE1ldGFsXSBTdXBwb3J0IFByb3Zva2luZyBWZXJ0ZXggRW11bGF0aW9uLCBQYXNzIEZyYWdt
ZW50IE91dHB1dCB0ZXN0IHN1aXRlLgorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIyNTg0MgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGVhbiBKYWNr
c29uLgorKworKyAgICAgICAgQWRkIHN1cHBvcnQgZm9yIHByb3Zva2luZyB2ZXJ0ZXggZW11bGF0
aW9uLiBNZXRhbCBvbmx5IHN1cHBvcnRzIHVzaW5nIHRoZSBmaXJzdCB2ZXJ0ZXgKKysgICAgICAg
IG9mIGEgcHJpbWl0aXZlIGFzIGEgcHJvdm9raW5nIHZlcnRleC4gVG8gYWRhcHQsIHJld3JpdGUg
dGhlIGluZGV4IGJ1ZmZlciBvbiB0aGUgZmx5IHdoZW4gcHJvdm9raW5nIHZlcnRleCBzdXBwb3J0
IGlzIHJlcXVpcmVkLiBUaGlzIG1ldGhvZCBkb2VzIG5vdCByZXdyaXRlIGFueSBwcmltaXRpdmVz
IHRoYXQgd291bGQgYmUgCisrICAgICAgICBjdWxsZWQgYnkgcHJpbWl0aXZlIHJlc3RhcnQsIHN1
Y2ggYXMgc2ltcGxlIHRyaWFuZ2xlcyBhbmQgbGluZXMuIFRyaWFuZ2xlIGFuZCBsaW5lIHN0cmlw
cyBhcmUgcmUtd3JpdHRlbiB0byBsaW5lIGFuZCB0cmlhbmdsZSBidWZmZXJzLiBUcmkgZmFucyBh
bmQgbGluZSBsb29wcyBhcmUgbm90IHN1cHBvcnRlZCBmb3IgdGhpcworKyAgICAgICAgcmV3cml0
ZSBhcyBvZiB0aGlzIHBhdGNoLgorKworKyAgICAgICAgKiBBTkdMRS54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvQ29udGV4
dE10bC5oOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvQ29udGV4dE10
bC5tbToKKysgICAgICAgIChyeDo6Q29udGV4dE10bDo6Q29udGV4dE10bCk6CisrICAgICAgICAo
cng6OkNvbnRleHRNdGw6OmluaXRpYWxpemUpOgorKyAgICAgICAgKHJ4OjpDb250ZXh0TXRsOjpv
bkRlc3Ryb3kpOgorKyAgICAgICAgKHJ4OjpDb250ZXh0TXRsOjpkcmF3RWxlbWVudHNJbXBsKToK
KysgICAgICAgIChyeDo6Q29udGV4dE10bDo6Zmx1c2hDb21tYW5kQnVmZXIpOgorKyAgICAgICAg
KHJ4OjpDb250ZXh0TXRsOjpwcmVzZW50KToKKysgICAgICAgIChyeDo6Q29udGV4dE10bDo6ZW5z
dXJlQ29tbWFuZEJ1ZmZlclJlYWR5KToKKysgICAgICAgIChyeDo6Q29udGV4dE10bDo6cmVxdWly
ZXNJbmRleFJld3JpdGUpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwv
UHJvZ3JhbU10bC5oOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvUHJv
Z3JhbU10bC5tbToKKysgICAgICAgIChyeDo6UHJvZ3JhbU10bDo6UHJvZ3JhbU10bCk6CisrICAg
ICAgICAocng6OlByb2dyYW1NdGw6OnByb2dyYW1IYXNGbGF0QXR0cmlidXRlcyBjb25zdCk6Cisr
ICAgICAgICAocng6OlByb2dyYW1NdGw6OmxpbmtJbXBsKToKKysgICAgICAgICogc3JjL2xpYkFO
R0xFL3JlbmRlcmVyL21ldGFsL1Byb3Zva2luZ1ZlcnRleEhlbHBlci5oOiBBZGRlZC4KKysgICAg
ICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL1Byb3Zva2luZ1ZlcnRleEhlbHBlci5t
bTogQWRkZWQuCisrICAgICAgICAocng6OnByaW1Db3VudEZvckluZGV4Q291bnQpOgorKyAgICAg
ICAgKHJ4OjpQcm92b2tpbmdWZXJ0ZXhIZWxwZXI6OlByb3Zva2luZ1ZlcnRleEhlbHBlcik6Cisr
ICAgICAgICAocng6OlByb3Zva2luZ1ZlcnRleEhlbHBlcjo6b25EZXN0cm95KToKKysgICAgICAg
IChyeDo6UHJvdm9raW5nVmVydGV4SGVscGVyOjpjb21taXRQcmVjb25kaXRpb25Db21tYW5kQnVm
ZmVyKToKKysgICAgICAgIChyeDo6UHJvdm9raW5nVmVydGV4SGVscGVyOjpnZXRDb21wdXRlQ29t
bWFuZEVuY29kZXIpOgorKyAgICAgICAgKHJ4OjpQcm92b2tpbmdWZXJ0ZXhIZWxwZXI6OmVuc3Vy
ZUNvbW1hbmRCdWZmZXJSZWFkeSk6CisrICAgICAgICAocng6OmJ1aWxkSW5kZXhCdWZmZXJLZXkp
OgorKyAgICAgICAgKHJ4OjpQcm92b2tpbmdWZXJ0ZXhIZWxwZXI6OmdldFNwZWNpYWxpemVkU2hh
ZGVyKToKKysgICAgICAgIChyeDo6UHJvdm9raW5nVmVydGV4SGVscGVyOjpoYXNTcGVjaWFsaXpl
ZFNoYWRlcik6CisrICAgICAgICAocng6OlByb3Zva2luZ1ZlcnRleEhlbHBlcjo6cHJlcGFyZUNv
bW1hbmRFbmNvZGVyRm9yRGVzY3JpcHRvcik6CisrICAgICAgICAocng6OlByb3Zva2luZ1ZlcnRl
eEhlbHBlcjo6cHJlY29uZGl0aW9uSW5kZXhCdWZmZXIpOgorKyAgICAgICAgKiBzcmMvbGliQU5H
TEUvcmVuZGVyZXIvbWV0YWwvbXRsX3N0YXRlX2NhY2hlLmg6CisrICAgICAgICAoc3RkOjpoYXNo
PHJ4OjptdGw6OlByb3Zva2luZ1ZlcnRleENvbXB1dGVQaXBlbGluZURlc2M+OjpvcGVyYXRvcigp
IGNvbnN0KToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF9zdGF0
ZV9jYWNoZS5tbToKKysgICAgICAgIChyeDo6bXRsOjpQcm92b2tpbmdWZXJ0ZXhDb21wdXRlUGlw
ZWxpbmVEZXNjOjpQcm92b2tpbmdWZXJ0ZXhDb21wdXRlUGlwZWxpbmVEZXNjKToKKysgICAgICAg
IChyeDo6bXRsOjpQcm92b2tpbmdWZXJ0ZXhDb21wdXRlUGlwZWxpbmVEZXNjOjpvcGVyYXRvcj0p
OgorKyAgICAgICAgKHJ4OjptdGw6OlByb3Zva2luZ1ZlcnRleENvbXB1dGVQaXBlbGluZURlc2M6
Om9wZXJhdG9yPT0gY29uc3QpOgorKyAgICAgICAgKHJ4OjptdGw6OlByb3Zva2luZ1ZlcnRleENv
bXB1dGVQaXBlbGluZURlc2M6Om9wZXJhdG9yIT0gY29uc3QpOgorKyAgICAgICAgKHJ4OjptdGw6
OlByb3Zva2luZ1ZlcnRleENvbXB1dGVQaXBlbGluZURlc2M6Omhhc2ggY29uc3QpOgorKyAgICAg
ICAgKHJ4OjptdGw6OlByb3Zva2luZ1ZlcnRleENvbXB1dGVQaXBlbGluZUNhY2hlOjpQcm92b2tp
bmdWZXJ0ZXhDb21wdXRlUGlwZWxpbmVDYWNoZSk6CisrICAgICAgICAocng6Om10bDo6UHJvdm9r
aW5nVmVydGV4Q29tcHV0ZVBpcGVsaW5lQ2FjaGU6OnNldENvbXB1dGVTaGFkZXIpOgorKyAgICAg
ICAgKHJ4OjptdGw6OlByb3Zva2luZ1ZlcnRleENvbXB1dGVQaXBlbGluZUNhY2hlOjpjbGVhclBp
cGVsaW5lU3RhdGVzKToKKysgICAgICAgIChyeDo6bXRsOjpQcm92b2tpbmdWZXJ0ZXhDb21wdXRl
UGlwZWxpbmVDYWNoZTo6Y2xlYXIpOgorKyAgICAgICAgKHJ4OjptdGw6OlByb3Zva2luZ1ZlcnRl
eENvbXB1dGVQaXBlbGluZUNhY2hlOjpnZXRDb21wdXRlUGlwZWxpbmVTdGF0ZSk6CisrICAgICAg
ICAocng6Om10bDo6UHJvdm9raW5nVmVydGV4Q29tcHV0ZVBpcGVsaW5lQ2FjaGU6Omluc2VydENv
bXB1dGVQaXBlbGluZVN0YXRlKToKKysgICAgICAgIChyeDo6bXRsOjpQcm92b2tpbmdWZXJ0ZXhD
b21wdXRlUGlwZWxpbmVDYWNoZTo6cmVjcmVhdGVQaXBlbGluZVN0YXRlcyk6CisrICAgICAgICAo
cng6Om10bDo6UHJvdm9raW5nVmVydGV4Q29tcHV0ZVBpcGVsaW5lQ2FjaGU6OmNyZWF0ZUNvbXB1
dGVQaXBlbGluZVN0YXRlKToKKysgICAgICAgIChyeDo6bXRsOjpQcm92b2tpbmdWZXJ0ZXhDb21w
dXRlUGlwZWxpbmVDYWNoZTo6flByb3Zva2luZ1ZlcnRleENvbXB1dGVQaXBlbGluZUNhY2hlKToK
KysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF91dGlscy5oOgorKyAg
ICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX3V0aWxzLm1tOgorKyAgICAg
ICAgKHJ4OjptdGw6OkNyZWF0ZU1zbFNoYWRlcik6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9y
ZW5kZXJlci9tZXRhbC9zaGFkZXJzL210bF9kZWZhdWx0X3NoYWRlcnNfc3JjX2F1dG9nZW4uaW5j
OgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvc2hhZGVycy9yZXdyaXRl
X2luZGljZXMubWV0YWw6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIv
bWV0YWwvc2hhZGVycy9yZXdyaXRlX2luZGljZXNfc2hhcmVkLmg6IEFkZGVkLgorKworKzIwMjEt
MDUtMTggIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KKysKKysg
ICAgICAgIFN0b3AgY29tcGlsaW5nIEFOR0xFIG1ldGFsIGZpbGVzIHR3aWNlCisrICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI1OTE5CisrICAgICAgICA8
cmRhcjovLzc4MDEzNTExPgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGVhbiBKYWNrc29uLgor
KworKyAgICAgICAgQU5HTEUgY3VycmVudGx5IGdlbmVyYXRlcyBhbiB1bnVzZWQgZGVmYXVsdC5t
ZXRhbGxpYiB0aGF0IGNvbmZsaWN0cyB3aXRoIG90aGVyIGRlZmF1bHQubWV0YWxsaWJzIGJlaW5n
IGJ1aWx0LgorKyAgICAgICAgU2luY2UgaXQgaXMgdW51c2VkLCByZW1vdmUgaXQuCisrICAgICAg
ICBXaGF0IHdlIGN1cnJlbnRseSBkbyBpcyBwdXQgYWxsIHRoZSBzb3VyY2UgYnl0ZXMgaW50byBn
RGVmYXVsdE1ldGFsbGliU3JjIGFuZCBjb21waWxlIGl0IGF0IHJ1bnRpbWUuCisrICAgICAgICBU
aGlzIGNvdWxkIGJlIG9wdGltaXplZCB0byBkbyBpdCBhdCBjb21waWxlIHRpbWUgYW5kIHVzZSBu
ZXdMaWJyYXJ5V2l0aERhdGEgaW5zdGVhZCBvZiBuZXdMaWJyYXJ5V2l0aFNvdXJjZSwKKysgICAg
ICAgIGJ1dCB0aGF0IHNob3VsZCBiZSBkb25lIHNlcGFyYXRlbHkuCisrCisrICAgICAgICAqIEFO
R0xFLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisrCisrMjAyMS0wNS0xMiAgS3lsZSBQaWRk
aW5ndG9uICA8a3BpZGRpbmd0b25AYXBwbGUuY29tPgorKworKyAgICAgICAgW0FuZ2xlIE1FVEFM
XSBSZW1vdmUgdGhyZWFkIHF1YWxpZmllcnMgYW5kIHBhc3MtYnktcmVmZXJlbmNlIHF1YWxpZmll
cnMgZm9yIGNhc3QgZnVuY3Rpb25zCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MjI1NzAyCisrICAgICAgICA8cmRhcjovLzc2Nzk5NDYxPgorKworKyAg
ICAgICAgQ2FzdCBmdW5jdGlvbnMgZmFpbCB0byBjb21waWxlIHdoZW4gY2FzdGluZyBmcm9tIHVz
ZXIgdW5pZm9ybXMuIFVwZGF0ZSBjYXN0IGZ1bmN0aW9ucyB0byByZW1vdmUgcGFzcy1ieS1yZWZl
cmVuY2UKKysgICAgICAgIHF1YWxpZmllcnMuIAorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGVh
biBKYWNrc29uLgorKworKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xh
dG9yTWV0YWxEaXJlY3QvUHJvZ3JhbVByZWx1ZGUuY3BwOgorKworKzIwMjEtMDUtMDggIEJhc3Vr
ZSBTdXp1a2kgIDxiYXN1a2Uuc3V6dWtpQHNvbnkuY29tPgorKworKyAgICAgICAgW1dpbkNhaXJv
XSBSZW1vdmUgbGlua2VyIHdhcm5pbmcgb24gQU5HTEUKKysgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjU1MDEKKysKKysgICAgICAgIFJldmlld2VkIGJ5
IERhcmluIEFkbGVyLgorKworKyAgICAgICAgbGliQU5HTEUgaXMgc3RhdGljYWxseSBsaW5rZWQg
dG8gbGliR0xFU3YyLmRsbCBzbyB0aGF0IF9fZGVjbHNwZWMoZGxsaW1wb3J0KSBpcyBub3QgcmVx
dWlyZWQgaGVyZS4KKysKKysgICAgICAgICogaW5jbHVkZS9wbGF0Zm9ybS9QbGF0Zm9ybU1ldGhv
ZHMuaDoKKysKKysyMDIxLTA1LTA2ICBLeWxlIFBpZGRpbmd0b24gIDxrcGlkZGluZ3RvbkBhcHBs
ZS5jb20+CisrCisrICAgICAgICBbTWV0YWwgQU5HTEVdIE9ubHkgY2xlYXIgZGlydHkgc3RhdGUg
Yml0cyBhZnRlciBhbGwgc3RhdGUgaGFzIGJlZW4gc3VjY2Vzc2Z1bGx5IHNldAorKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNTQ2OAorKyAgICAgICAg
PHJkYXI6Ly83NzA2Njc1Mj4KKysKKysgICAgICAgIFdoZW4gcnVubmluZyBpbiByZWxlYXNlLCBp
ZiBhbnkgQU5HTEUgY2FsbHMgZmFpbCwgd2UgZXZlbnR1YWxseSByZXR1cm4gdG8gdGhpcyBwYXJ0
IG9mIHRoZSBjb2RlLgorKyAgICAgICAgV2UgY2FuIGJlIGxlZnQgd2l0aCBhbiBpbmNvbXBsZXRl
IHN0YXRlLCB3aGVyZSB3ZSBoYXZlIGFuIGluY29tcGxldGUgcHJvZ3JhbSBvciBhdHRhY2htZW50
LCAKKysgICAgICAgIGJ1dCBhICdjbGVhbicgc3RhdGUuIFRoaXMgY2FuIGxlYWQgdG8gZXJyb3Jz
IHN1Y2ggYXMgc2V0dGluZyBuaWwgcmVuZGVyIHBpcGVsaW5lIHN0YXRlcywgbGVhZGluZyB0bwor
KyAgICAgICAgY3Jhc2hlcy4KKysKKysgICAgICAgIFRvIG1pdGlnYXRlIHRoaXMsIGhvbGQgb2Zm
IG9uIHNldHRpbmcgc3RhdGUgYml0cyB1bnRpbCB3ZSd2ZSBjb21wbGV0bHkgc2V0IHVwIGEgcHJv
Z3JhbS4KKysKKysgICAgICAgIFJldmlld2VkIGJ5IERlYW4gSmFja3Nvbi4KKysKKysgICAgICAg
ICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL0NvbnRleHRNdGwubW06CisrICAgICAgICAo
cng6OkNvbnRleHRNdGw6OnNldHVwRHJhdyk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5k
ZXJlci9tZXRhbC9Qcm9ncmFtTXRsLm1tOgorKworKzIwMjEtMDUtMDMgIEt5bGUgUGlkZGluZ3Rv
biAgPGtwaWRkaW5ndG9uQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFtNZXRhbCBBTkdMRV06IEZp
eCBjb252ZXJzaW9ucyB0ZXN0cyBhbmQgcmVtb3ZlIGZhaWxpbmcgdGVzdCBleHBlY3RhdGlvbnMK
KysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjUyNjEK
KysgICAgICAgIDxyZGFyOi8vNzczNDk2MTU+CisrICAgICAgICAgICAgICAgICAgCisrICAgICAg
ICBib29sIGNvbnZlcnNpb24gd29ya2Fyb3VuZCB3YXMgYmVpbmcgYXBwbGllZCB0byBhbGwgc2hh
ZGVycy4gQ29ycmVjdCBzaGFkZXIgdHJhbnNsYXRpb24gdG8gZ2VuZXJhdGUKKysgICAgICAgIGJl
dHRlciBjb252ZXJzaW9uIGNvZGUgb24gcGxhdGZvcm1zIHRoYXQgZG9uJ3QgbmVlZCBhIHdvcmth
cm91bmQuIAorKworKyAgICAgICAgQ29udmVyc2lvbnMgZm9yIGJhc2ljIHR5cGVzIGxpa2UgdmVj
MiwgaXZlYzIsIHV2ZWMyIHdlcmUgb25seSB1c2luZyB0aGUgZmlyc3QgY29tcG9uZW50cyB3aGVu
IHdvcmthcm91bmQKKysgICAgICAgIHdhcyBhY3RpdmUuIENvcnJlY3Qgc3dpenpsZSBsb2dpYyB0
byBnZXQgYWxsIGNvbXBvbmVudHMgd2hlbiBkb2luZyBhIGNvbnZlcnNpb24uCisrCisrICAgICAg
ICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisrCisrICAgICAgICAqIHNyYy9jb21waWxlci90
cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC9BZGRFeHBsaWNpdFR5cGVDYXN0cy5jcHA6
CisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVj
dC9Bc3RIZWxwZXJzLmNwcDoKKysgICAgICAgIChzaDo6Q29lcmNlU2ltcGxlKToKKysgICAgICAg
ICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0L0FzdEhlbHBl
cnMuaDoKKysKKysyMDIxLTA0LTMwICBLeWxlIFBpZGRpbmd0b24gIDxrcGlkZGluZ3RvbkBhcHBs
ZS5jb20+CisrCisrICAgICAgICBbTWV0YWwgQU5HTEVdOiBmaXggd2ViZ2wvMi4wLjAvZGVxcC9m
dW5jdGlvbmFsL2dsZXMzL25lZ2F0aXZlYnVmZmVyYXBpIAorKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNTIyMgorKyAgICAgICAgPHJkYXI6Ly83NzM0
OTkwOD4KKysKKysgICAgICAgIEFyYml0cmFyeSBhbGlnbm1lbnRzIGFyZSBub3QgYWxsb3dlZCBp
biBNZXRhbC4gVXBkYXRlIFVCTyBhbGlnbm1lbnQgdG8gCisrICAgICAgICBhIHBsYXRmb3JtLWRl
cGVuZGFudCBvZmZzZXQgdG8gbWF0Y2ggc3BlY2lmaWNhdGlvbnMuCisrICAgICAgICBSZXZpZXdl
ZCBieSBEZWFuIEphY2tzb24uCisrCisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9t
ZXRhbC9EaXNwbGF5TXRsLm1tOgorKyAgICAgICAgKHJ4OjpEaXNwbGF5TXRsOjplbnN1cmVDYXBz
SW5pdGlhbGl6ZWQgY29uc3QpOgorKworKzIwMjEtMDQtMjkgIEt5bGUgUGlkZGluZ3RvbiAgPGtw
aWRkaW5ndG9uQGFwcGxlLmNvbT4KKysKKysgICAgICAgIE1ldGFsLUFOR0xFOiBTaGFyZWQgbWVt
b3J5IHRleHR1cmUgdGVzdHMgZmFpbGluZyBpbiBpT1MgU2ltdWxhdG9yCisrICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIyNjg1CisrICAgICAgICA8cmRh
cjovLzc1MDAxNzIyPgorKworKyAgICAgICAgVXNpbmcgcmVwbGFjZVJlZ2lvbiB0byBwZXJmb3Jt
IHRleHR1cmUgdXBsb2FkcyBvbiBzaW11bGF0b3IgY2F1c2VzIGlzc3VlcyBvbiBzb21lIHdvcmtm
bG93cy4KKysgICAgICAgIEFzIGEgd29ya2Fyb3VuZCwgdXNlIGEgR1BVLWRyaXZlbiB1cGxvYWQg
aW5zdGVhZCBvZiBhIENQVSBkcml2ZW4gdXBsb2FkLiAKKysgICAgICAgIFJldmlld2VkIGJ5IEtl
bm5ldGggUnVzc2VsbC4KKysKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFs
L1RleHR1cmVNdGwubW06CisrCisrMjAyMS0wNC0yOSAgS3lsZSBQaWRkaW5ndG9uICA8a3BpZGRp
bmd0b25AYXBwbGUuY29tPgorKworKyAgICAgICAgW0FOR0xFLU1ldGFsXSBGaXggMTcgdGV4dHVy
ZXNoYWRvdyB0ZXN0cworKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIyNDk2NQorKyAgICAgICAgPHJkYXI6Ly83NzA1MzA4NT4gCisrCisrICAgICAgICBE
ZXB0aDI0U3RlbmNpbDggY29waWVzIHdlcmUgYmVpbmcgaW5jb3JyZWN0bHkgbWFuYWdlZCB3aGVu
IGRlYWxpbmcgd2l0aCBEMjRTOCBlbXVsYXRpb24uCisrICAgICAgICBGaXggY29udmVyc2lvbiBm
dW5jdGlvbnMgCisrCisrICAgICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisrCisrICAg
ICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9tdGxfZm9ybWF0X3V0aWxzLmg6Cisr
ICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9tdGxfZm9ybWF0X3V0aWxzLm1t
OgorKyAgICAgICAgKHJ4OjptdGw6OnByaXY6Ok9mZnNldERhdGFQb2ludGVyKToKKysgICAgICAg
IChyeDo6bXRsOjpMb2FkUzhEMjRTOFRvRDMyRlgyNFM4KToKKysgICAgICAgIChyeDo6bXRsOjpE
RVBUSDI0X1NURU5DSUw4X3RvX0QzMl9GTE9BVF9YMjRTOF9VSU5UKToKKysgICAgICAgIChyeDo6
bXRsOjpHZXRMb2FkRnVuY3Rpb25zTWFwKToKKysgICAgICAgIChyeDo6bXRsOjpGb3JtYXRUYWJs
ZTo6aW5pdGlhbGl6ZSk6CisrICAgICAgICAoKTogRGVsZXRlZC4KKysKKysyMDIxLTA0LTI4ICBB
bGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisrCisrICAgICAgICBT
dG9wIGJ1aWxkaW5nIGxpYkFOR0xFLmEKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMjUxNjIKKysgICAgICAgIDxyZGFyOi8vcHJvYmxlbS81NzM0OTM4
ND4KKysKKysgICAgICAgIFJldmlld2VkIGJ5IEFsZXhleSBQcm9za3VyeWFrb3YuCisrCisrICAg
ICAgICBOb3cgdGhhdCBldmVyeW9uZSdzIGxpbmtpbmcgYWdhaW5zdCB0aGUgZHlsaWIsIHdlIGRv
bid0IG5lZWQgdG8gYnVpbGQgdGhlIHN0YXRpYyBsaWJyYXJ5IGFueSBtb3JlLgorKworKyAgICAg
ICAgKiBBTkdMRS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorKyAgICAgICAgKiBDb25maWd1
cmF0aW9ucy9BTkdMRS1keW5hbWljLnhjY29uZmlnOgorKyAgICAgICAgKiBzcmMvZW1wdHkuY3Bw
OiBSZW1vdmVkLgorKworKzIwMjEtMDQtMjggIEtpbW1vIEtpbm51bmVuICA8a2tpbm51bmVuQGFw
cGxlLmNvbT4KKysKKysgICAgICAgIEFOR0xFIHNob3VsZCBiZSBjb21waWxlZCB3aXRoIHRocmVh
ZC1zYWZlIHN0YXRpY3MKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0yMjQ4NTQKKysKKysgICAgICAgIFJldmlld2VkIGJ5IEtlbm5ldGggUnVzc2VsbC4K
KysKKysgICAgICAgIENvbXBpbGUgQU5HTEUgd2l0aCBub3JtYWwgdGhyZWFkLXNhZmUgYysrIGxv
Y2FsIHN0YXRpY3MuCisrICAgICAgICBObyBrbm93biB0aHJlYWRpbmcgZmFpbHVyZXMuIEJhc2Vk
IG9uIGFkLWhvYyByaXNrIHZzIGJlbmVmaXQKKysgICAgICAgIGV2YWx1YXRpb24gb2YgdG9kYXkg
YW5kIGFmdGVyIGZ1dHVyZSBtZXJnZXMsIGl0IGFwcGVhcnMKKysgICAgICAgIGJldHRlciB0byBl
cnIgaW4gdGhlIHNpZGUgb2YgY2F1dGlvbi4KKysKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMv
QmFzZS54Y2NvbmZpZzoKKysKKysyMDIxLTA0LTI2ICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlz
dGVuc2VuQHdlYmtpdC5vcmc+CisrCisrICAgICAgICBVcGRhdGUgTWFjLXNwZWNpZmljIENNYWtl
IGZpbGVzCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MjI1MDY0CisrCisrICAgICAgICBSdWJiZXItc3RhbXBlZCBieSBUaW0gSG9ydG9uLgorKworKyAg
ICAgICAgKiBQbGF0Zm9ybU1hYy5jbWFrZToKKysKKysyMDIxLTA0LTI1ICBLeWxlIFBpZGRpbmd0
b24gIDxrcGlkZGluZ3RvbkBhcHBsZS5jb20+CisrCisrICAgICAgICBbTWV0YWwgQU5HTEVdIHN1
cHBvcnQgcHJpbWl0aXZlIHJlc3RhcnQgYmVoYXZpb3Igd2l0aCBzaW1wbGUgZGF0YSB0eXBlcwor
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNTAxMQor
KworKyAgICAgICAgUHJpbWl0aXZlIHJlc3RhcnQgYmVoYXZpb3IgZm9yIHNpbXBsZSBkYXRhIHR5
cGVzIGlzIG5vdCBkZWZpbmVkIGluIE1ldGFsLiBBZGQgYSBwcmUtZHJhdyBwYXNzIHRvIAorKyAg
ICAgICAgY3JlYXRlIGEgc2V0IG9mIHJlc3RhcnQgaW5kaWNlcywgcmF0aGVyIHRoYW4gcmUtd3Jp
dGUgdGhlIGluZGV4IGJ1ZmZlci4gVGhpcyBwYXNzIGF2b2lkcyAKKysgICAgICAgIHN0b3Jpbmcg
bW9yZSBjb3BpZXMgb2YgdGhlIGluZGV4IGJ1ZmZlcjogaW5zdGVhZCwgd2UgY2FjaGUgdGhlIGxv
Y2F0aW9uIG9mIHJlc3RhcnQgaW5kaWNlcywgYW5kCisrICAgICAgICB1c2UgdGhlbSB0byBidWls
ZCBkcmF3IGxpc3RzLgorKyAKKysgICAgICAgIFJldmlld2VkIGJ5IERlYW4gSmFja3Nvbi4KKysK
KysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL0J1ZmZlck10bC5oOgorKyAg
ICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvQnVmZmVyTXRsLm1tOgorKyAgICAg
ICAgKHJ4OjpJbmRleENvbnZlcnNpb25CdWZmZXJNdGw6OkluZGV4Q29udmVyc2lvbkJ1ZmZlck10
bCk6CisrICAgICAgICAocng6OkJ1ZmZlck10bDo6bWFya0NvbnZlcnNpb25CdWZmZXJzRGlydHkp
OgorKyAgICAgICAgKHJ4OjpjYWxjdWxhdGVSZXN0YXJ0UmFuZ2VzKToKKysgICAgICAgIChyeDo6
QnVmZmVyTXRsOjpnZXRSZXN0YXJ0SW5kaWNlcyk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9y
ZW5kZXJlci9tZXRhbC9Db250ZXh0TXRsLmg6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5k
ZXJlci9tZXRhbC9Db250ZXh0TXRsLm1tOgorKyAgICAgICAgKHJ4OjpDb250ZXh0TXRsOjpkcmF3
TGluZUxvb3BFbGVtZW50cyk6CisrICAgICAgICAocng6OkNvbnRleHRNdGw6OmRyYXdFbGVtZW50
c0ltcGwpOgorKyAgICAgICAgKHJ4OjpDb250ZXh0TXRsOjpkcmF3RWxlbWVudHNTaW1wbGVUeXBl
c1ByaW1pdGl2ZVJlc3RhcnQpOiBEZWxldGVkLgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVu
ZGVyZXIvbWV0YWwvVmVydGV4QXJyYXlNdGwuaDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3Jl
bmRlcmVyL21ldGFsL1ZlcnRleEFycmF5TXRsLm1tOgorKyAgICAgICAgKHJ4OjpWZXJ0ZXhBcnJh
eU10bDo6Z2V0SW5kZXhCdWZmZXIpOgorKyAgICAgICAgKHJ4OjpWZXJ0ZXhBcnJheU10bDo6Z2V0
RHJhd0luZGljZXMpOgorKyAgICAgICAgKHJ4OjpWZXJ0ZXhBcnJheU10bDo6Y29udmVydEluZGV4
QnVmZmVyKToKKysgICAgICAgIChyeDo6VmVydGV4QXJyYXlNdGw6OnN0cmVhbUluZGV4QnVmZmVy
RnJvbUNsaWVudCk6CisrCisrMjAyMS0wNC0yNSAgSm9obiBDdW5uaW5naGFtICA8am9obmN1bm5p
bmdoYW1AYXBwbGUuY29tPgorKworKyAgICAgICAgW01ldGFsIEFOR0xFXSBUZW1wb3JhcmlseSBy
ZW1vdmUgQVNUIHZhbGlkYXRpb24gZXZlbiBmb3IgZGVidWcgYnVpbGRzCisrICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI0OTkxCisrICAgICAgICByZGFy
Oi8vNzYyOTkxNzgKKysgCisrICAgICAgICBSZXZpZXdlZCBieSBLZW5uZXRoIFJ1c3NlbGwuCisr
CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9TaGFkZXJNdGwubW06Cisr
ICAgICAgICAocng6OlNoYWRlck10bDo6Y29tcGlsZUltcGxNdGwpOgorKworKzIwMjEtMDQtMjUg
IEt5bGUgUGlkZGluZ3RvbiAgPGtwaWRkaW5ndG9uQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFtN
ZXRhbCBBTkdMRV0gU2VsZWN0IHByb3BlciBJT1N1cmZhY2UgYmFja2luZyBmb3JtYXQgZm9yIFdl
YkdMIGVudmlyb25tZW50CisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MjI0OTQ4CisrICAgICAgICA8cmRhcjovLzc2Mjg0ODg5PgorKworKyAgICAgICAg
RGVwZW5kaW5nIG9uIHRoZSBhcmNoaXRlY3R1cmUsIFdlYkNvcmUgZXhwZWN0cyBkaWZmZXJlbnQg
CisrICAgICAgICBJT1N1cmZhY2UgdGV4dHVyZSB0YXJnZXRzIGZvciB0aGUgbWFpbiBidWZmZXIu
IFdoZW4gcnVubmluZyBjYXRhbHlzdCBvbiAKKysgICAgICAgIEFybTY0IGRldmljZXMsIE1ldGFs
LUFOR0xFIG5lZWRzIHRvIHNlbGVjdCB0aGUgVEVYVFVSRV8yRCB0ZXh0dXJlIHRhcmdldCBmb3Ig
b3VyCisrICAgICAgICBJT1N1cmZhY2UvUGJ1ZmZlciBiaW5kIHBvaW50LCByYXRoZXIgdGhhbiBU
RVhUVVJFX1JFQ1RBTkdMRS4KKysKKysJUmV2aWV3ZWQgYnkgRGVhbiBKYWNrc29uLgorKworKyAg
ICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvRGlzcGxheU10bC5oOgorKyAgICAg
ICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvRGlzcGxheU10bC5tbToKKysgICAgICAg
IChyeDo6bmVlZHNFQUdMT25NYWMpOgorKyAgICAgICAgKHJ4OjpEaXNwbGF5TXRsOjpFR0xEcmF3
aW5nQnVmZmVyVGV4dHVyZVRhcmdldCk6CisrICAgICAgICAocng6OkRpc3BsYXlNdGw6OmdlbmVy
YXRlQ29uZmlncyk6CisrCisrMjAyMS0wNC0yMyAgVHJ1aXR0IFNhdmVsbCAgPHRzYXZlbGxAYXBw
bGUuY29tPgorKworKyAgICAgICAgVW5yZXZpZXdlZCwgcmV2ZXJ0aW5nIHIyNzYxOTAuCisrCisr
ICAgICAgICBicm9rZSBhIHRlc3QgaW50ZXJuYWxseS4KKysKKysgICAgICAgIFJldmVydGVkIGNo
YW5nZXNldDoKKysKKysgICAgICAgICJNZXRhbC1BTkdMRTogU2hhcmVkIG1lbW9yeSB0ZXh0dXJl
IHRlc3RzIGZhaWxpbmcgaW4gaU9TCisrICAgICAgICBTaW11bGF0b3IiCisrICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIyNjg1CisrICAgICAgICBodHRw
czovL2NvbW1pdHMud2Via2l0Lm9yZy9yMjc2MTkwCisrCisrMjAyMS0wNC0yMiAgTGF1cm8gTW91
cmEgIDxsbW91cmFAaWdhbGlhLmNvbT4KKysKKysgICAgICAgIFtDTWFrZV1bQU5HTEVdIFNpbGVu
Y2UgLVdyZXR1cm4tdHlwZSBmb3IgZ2NjIGFuZCBjbGFuZworKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNDk0OQorKworKyAgICAgICAgUmV2aWV3ZWQg
YnkgRG9uIE9sbXN0ZWFkLgorKworKyAgICAgICAgQXZvaWQgImNvbnRyb2wgcmVhY2hlcyBlbmQg
b2Ygbm9uLXZvaWQgZnVuY3Rpb24iIGluCisrICAgICAgICBzaDo6VEludGVybVJlYnVpbGQ6OnRy
YXZlcnNlQ2hpbGRyZW4oLi4uKQorKworKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDoKKysKKysy
MDIxLTA0LTIyICBQaGlsaXBwZSBOb3JtYW5kICA8cG5vcm1hbmRAaWdhbGlhLmNvbT4KKysKKysg
ICAgICAgIFVucmV2aWV3ZWQsIFdQRSBidWlsZCBmaXggYWZ0ZXIgcjI3NjM5MAorKworKyAgICAg
ICAgRml4IG5hbWVzcGFjaW5nIGlzc3VlcyBpbiBudWxscHRyX3QgaW52b2NhdGlvbnMuCisrCisr
ICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL3RyZWVfdXRpbC9JbnRlcm1SZWJ1aWxk
LmNwcDoKKysgICAgICAgIChzaDo6VEludGVybVJlYnVpbGQ6OkJhc2VSZXN1bHQ6OkJhc2VSZXN1
bHQpOgorKyAgICAgICAgKHNoOjpQcmVSZXN1bHQ6OlByZVJlc3VsdCk6CisrICAgICAgICAoc2g6
OlBvc3RSZXN1bHQ6OlBvc3RSZXN1bHQpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNs
YXRvci90cmVlX3V0aWwvSW50ZXJtUmVidWlsZC5oOgorKworKzIwMjEtMDQtMjEgIERvbiBPbG1z
dGVhZCAgPGRvbi5vbG1zdGVhZEBzb255LmNvbT4KKysKKysgICAgICAgIFtQeXRob24gM10gVXBk
YXRlIGduaS10by1jbWFrZS5weQorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTIyNDg4MAorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgS2VubmV0aCBSdXNz
ZWxsLgorKworKyAgICAgICAgVXBkYXRlIGduaS10by1jbWFrZS5weSB0byBydW4gb24gUHl0aG9u
IDMuIEFkZGVkIEFyZ3VtZW50UGFyc2VyIHN1cHBvcnQgdG8gYmUgYWJsZSB0byBydW4KKysgICAg
ICAgIHRoZSBzY3JpcHQgb24gV2luZG93cyBzaW5jZSB0aGUgc2NyaXB0IGFzc3VtZWQgaXQgd291
bGQgYmUgY2FsbGVkIHRocm91Z2ggYSBVTklYIHN0eWxlCisrICAgICAgICBzaGVsbC4KKysKKysg
ICAgICAgIFJhbiB0aGUgLmduaSBmaWxlcyB0aHJvdWdoIHRoZSBjb252ZXJ0ZXIgdG8gdmVyaWZ5
IG91dHB1dC4gSXQgYXBwZWFycyB0aGF0IHRoZQorKyAgICAgICAgQ29tcGlsZXIuY21ha2UgZmls
ZSB3YXNuJ3QgZ2VuZXJhdGVkIGluIHRoZSBsYXN0IHVwZGF0ZSB0byBBTkdMRSBzbyBpdCBoYXMg
bWFueSBjaGFuZ2VzLgorKworKyAgICAgICAgKiBDb21waWxlci5jbWFrZToKKysgICAgICAgICog
RDNELmNtYWtlOgorKyAgICAgICAgKiBnbmktdG8tY21ha2UucHk6CisrCisrMjAyMS0wNC0yMSAg
RG9uIE9sbXN0ZWFkICA8ZG9uLm9sbXN0ZWFkQHNvbnkuY29tPgorKworKyAgICAgICAgW0NNYWtl
XSBBZGQgT3BlbkdMRVMyIHRhcmdldHMKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMjQ3ODYKKysKKysgICAgICAgIFJldmlld2VkIGJ5IEFkcmlhbiBQ
ZXJleiBkZSBDYXN0cm8uCisrCisrICAgICAgICBBZGQgYW4gQUxJQVMgdGFyZ2V0IG1hcHBpbmcg
QU5HTEUncyBHTEVTdjIgdGFyZ2V0IHRvIE9wZW5HTDo6R0xFUyBpZiB0aGUgdGFyZ2V0IGlzIG5v
dAorKyAgICAgICAgYWxyZWFkeSBwcmVzZW50LiBUaGlzIGlzIHRoZSBjYXNlIGZvciBXaW5kb3dz
IHdoaWNoIHVzZXMgQU5HTEUgYXMgaXRzIHNvbGUgT3BlbkdMIEVTCisrICAgICAgICBpbXBsZW1l
bnRhdGlvbi4KKysKKysgICAgICAgICogQ01ha2VMaXN0cy50eHQ6CisrCisrMjAyMS0wNC0yMCAg
QWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgorKworKyAgICAgICAg
TWFjQ2F0YWx5c3QgQU5HTEUgaXMgbGlua2VkIHdpdGggQGxvYWRlcl9wYXRoLy4uLy4uLy4uL2xp
YkFOR0xFLXNoYXJlZC5keWxpYgorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTIyNDYwMgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgQWxleGV5IFByb3Nr
dXJ5YWtvdi4KKysKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMvQU5HTEUtZHluYW1pYy54Y2Nv
bmZpZzoKKysKKysyMDIxLTA0LTE5ICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdl
YmtpdC5vcmc+CisrCisrICAgICAgICBCdWlsZCBBTkdMRSBkeWxpYiBpbnRvIFdLX09WRVJSSURF
X0ZSQU1FV09SS1NfRElSIGluIGJ1aWxkcyB0aGF0IHVzZSBpdAorKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNDc4NQorKyAgICAgICAgPHJkYXI6Ly83
NjY0MTY2Mj4KKysKKysgICAgICAgIFJldmlld2VkIGJ5IEFsZXhleSBQcm9za3VyeWFrb3YuCisr
CisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0FOR0xFLWR5bmFtaWMueGNjb25maWc6CisrCisr
MjAyMS0wNC0xNiAgS3lsZSBQaWRkaW5ndG9uICA8a3BpZGRpbmd0b25AYXBwbGUuY29tPgorKwor
KyAgICAgICAgTWV0YWwtQU5HTEU6IFNoYXJlZCBtZW1vcnkgdGV4dHVyZSB0ZXN0cyBmYWlsaW5n
IGluIGlPUyBTaW11bGF0b3IKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0yMjI2ODUKKysKKysgICAgICAgIFJldmlld2VkIGJ5IERlYW4gSmFja3Nvbi4K
KysKKysgICAgICAgIFNpbXVsYXRvci1vbmx5IHBhdGggZHJpdmVzIGZpbGxpbmcgdGV4dHVyZXMg
dmlhIEJsaXQgZW5jb2RlcnMgaW5zdGVhZCBvZiBtYXBwZWQgbWVtb3J5LgorKyAgICAgICAgVGhp
cyB3b3JrYXJvdW5kIGZpeGVzIGRyb3BwZWQgdGV4dHVyZSB3cml0ZXMgd2hlbiB1c2luZyByZXBs
YWNlUmVnaW9uCisrCisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9UZXh0
dXJlTXRsLm1tOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX3V0
aWxzLm1tOgorKyAgICAgICAgKHJ4OjptdGw6OkluaXRpYWxpemVUZXh0dXJlQ29udGVudHMpOgor
KworKzIwMjEtMDQtMTUgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9y
Zz4KKysKKysgICAgICAgIFVzZSBrSU9NYWluUG9ydERlZmF1bHQgd2hlcmUgYXZhaWxhYmxlCisr
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI0NjMyCisr
CisrICAgICAgICBSZXZpZXdlZCBieSBBbGV4ZXkgUHJvc2t1cnlha292LgorKworKyAgICAgICAg
SW4gQU5HTEUgd2UgZG9uJ3QgaW5jbHVkZSBXVEYgaGVhZGVycywgc28gd2UgY2FuJ3QgdXNlIHRo
ZSBIQVZFIG1hY3JvIGxpa2Ugd2UgZG8gZWxzZXdoZXJlIGluIFdlYktpdCwKKysgICAgICAgIGJ1
dCB0aGlzIGlzIHByZXR0eSBjbG9zZS4KKysKKysgICAgICAgICogc3JjL2dwdV9pbmZvX3V0aWwv
U3lzdGVtSW5mb19tYWNvcy5tbToKKysgICAgICAgIChhbmdsZTo6R2V0VmVuZG9ySURGcm9tTWV0
YWxEZXZpY2VSZWdpc3RyeUlEKToKKysKKysyMDIxLTA0LTE1ICBBbGV4IENocmlzdGVuc2VuICA8
YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisrCisrICAgICAgICBBZGQgZGVwcmVjYXRpb24gbWFj
cm9zCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI0
NjI0CisrCisrICAgICAgICAqIHNyYy9ncHVfaW5mb191dGlsL1N5c3RlbUluZm9fbWFjb3MubW06
CisrICAgICAgICAoYW5nbGU6OkdldFZlbmRvcklERnJvbU1ldGFsRGV2aWNlUmVnaXN0cnlJRCk6
CisrCisrMjAyMS0wNC0xMiAgRGVhbiBKYWNrc29uICA8ZGlub0BhcHBsZS5jb20+CisrCisrICAg
ICAgICBSRUdSRVNTSU9OIChNZXRhbCBBTkdMRSk6IFtDYXRhbGluYV0gNiBjb25zaXN0ZW50IFdl
YkdMIGZhaWx1cmVzIC8gdGltZW91dHMKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMjQwMTYKKysgICAgICAgIDxyZGFyOi8vcHJvYmxlbS83NjA3MDMy
NT4KKysKKysgICAgICAgIFBhdGNoIGJ5IEpvaG4gQ3VubmluZ2hhbSA8am9obmN1bm5pZ2hhbUBh
cHBsZS5jb20+CisrICAgICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisrCisrICAgICAg
ICBJbXBsZW1lbnQgYSB3b3JrYXJvdW5kIGZvciBJbnRlbCBHUFVzIHdoZXJlIHdlIGV4cGxpY2l0
bHkgdHlwZSBjYXN0IGZsb2F0aW5nCisrICAgICAgICBwb2ludCB2YWx1ZXMgdG8gYm9vbGVhbnMu
IFRoaXMgaXMgb25seSBuZWVkZWQgZm9yIENhdGFsaW5hIHN5c3RlbXMuCisrCisrICAgICAgICAq
IGluY2x1ZGUvR0xTTEFORy9TaGFkZXJMYW5nLmg6CisrICAgICAgICAqIGluY2x1ZGUvcGxhdGZv
cm0vRmVhdHVyZXNNdGwuaDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJh
bnNsYXRvck1ldGFsRGlyZWN0LmNwcDoKKysgICAgICAgIChzaDo6VHJhbnNsYXRvck1ldGFsRGly
ZWN0Ojp0cmFuc2xhdGVJbXBsKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3Iv
VHJhbnNsYXRvck1ldGFsRGlyZWN0L0FkZEV4cGxpY2l0VHlwZUNhc3RzLmNwcDoKKysgICAgICAg
IChzaDo6UmV3cml0ZXI6OlJld3JpdGVyKToKKysgICAgICAgIChzaDo6QWRkRXhwbGljaXRUeXBl
Q2FzdHMpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0
YWxEaXJlY3QvQWRkRXhwbGljaXRUeXBlQ2FzdHMuaDoKKysgICAgICAgICogc3JjL2NvbXBpbGVy
L3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0L0FzdEhlbHBlcnMuY3BwOgorKyAgICAg
ICAgKHNoOjpTdWJWZWN0b3IpOgorKyAgICAgICAgKHNoOjpDb2VyY2VTaW1wbGUpOgorKyAgICAg
ICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QvQXN0SGVs
cGVycy5oOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvRGlzcGxheU10
bC5tbToKKysgICAgICAgIChyeDo6RGlzcGxheU10bDo6aW5pdGlhbGl6ZUZlYXR1cmVzKToKKysg
ICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL1NoYWRlck10bC5tbToKKysgICAg
ICAgIChyeDo6U2hhZGVyTXRsOjpjb21waWxlKToKKysKKysyMDIxLTA0LTEyICBLeWxlIFBpZGRp
bmd0b24gIDxrcGlkZGluZ3RvbkBhcHBsZS5jb20+CisrCisrICAgICAgICBDcmFzaCBpbiB3ZWJn
bC8yLjAueS9jb25mb3JtYW5jZS9nbHNsL21pc2MvdW5pbml0aWFsaXplZC1sb2NhbC1nbG9iYWwt
dmFyaWFibGVzLmh0bWwgQU5HTEUrTUVUQUwKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0yMjM5MjMKKysJCisrICAgICAgICBBbm9ueW1vdXMgc3RydWN0
cyByZXF1aXJlIGEgbmFtZSBpbiBNU0wsIGFkZCBhIGRlZmF1bHQgbmFtZSBBTkdMRV9fdW5uYW1l
ZCRpZCB0byBhbnkgc3RydWN0cy4KKysgICAgICAgIEFsc28gYWRkIGEgdW5pdCB0ZXN0IHRvIGVu
c3VyZSB0aGlzIHdvcmtzLgorKyAgICAgICAgUmV2aWV3ZWQgYnkgS2VubmV0aCBSdXNzZWxsLgor
KworKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJl
Y3QuY3BwOgorKyAgICAgICAgKHNoOjpUcmFuc2xhdG9yTWV0YWxEaXJlY3Q6OnRyYW5zbGF0ZUlt
cGwpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxE
aXJlY3QvU2VwYXJhdGVDb21wb3VuZFN0cnVjdERlY2xhcmF0aW9ucy5jcHA6CisrICAgICAgICAo
c2g6OlNlcGFyYXRvcjo6U2VwYXJhdG9yKToKKysgICAgICAgIChzaDo6U2VwYXJhdGVDb21wb3Vu
ZFN0cnVjdERlY2xhcmF0aW9ucyk6CisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9y
L1RyYW5zbGF0b3JNZXRhbERpcmVjdC9TZXBhcmF0ZUNvbXBvdW5kU3RydWN0RGVjbGFyYXRpb25z
Lmg6CisrICAgICAgICAqIHNyYy90ZXN0cy9CVUlMRC5nbjoKKysgICAgICAgICogc3JjL3Rlc3Rz
L2FuZ2xlX3VuaXR0ZXN0cy5nbmk6CisrICAgICAgICAqIHNyYy90ZXN0cy9jb21waWxlcl90ZXN0
cy9NU0xPdXRwdXRfVGVzdC5jcHA6CisrCisrMjAyMS0wNC0wOCAgS3lsZSBQaWRkaW5ndG9uICA8
a3BpZGRpbmd0b25AYXBwbGUuY29tPgorKworKyAgICAgICAgW01ldGFsLUFOR0xFXSBTdXBwb3J0
IEdQVSBwb3dlciBwcmVmZXJlbmNlcywgc2VsZWN0IGxvdy1wb3dlciBHUFUgYnkgZGVmYXVsdC4K
KysgICAgICAgIFJlc3BvbmQgdG8gR1BVIHBvd2VyIHByZWZlcmVuY2UgZmxhZ3MsIGV4cG9zZSBl
eHRlbnNpb24sIGFuZCBhdm9pZCBjcmVhdGluZyBhIGhpZ2gtcG93ZXJlZCBHUFUgYnkgZGVmYXVs
dC4KKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjQz
MzcKKysKKysgICAgICAgIFJldmlld2VkIGJ5IERlYW4gSmFja3Nvbi4KKysKKysgICAgICAgICog
c3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL0Rpc3BsYXlNdGwuaDoKKysgICAgICAgICogc3Jj
L2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL0Rpc3BsYXlNdGwubW06CisrICAgICAgICAocng6OkRp
c3BsYXlNdGw6OmluaXRpYWxpemVJbXBsKToKKysgICAgICAgIChyeDo6RGlzcGxheU10bDo6Z2V0
TWV0YWxEZXZpY2VNYXRjaGluZ0F0dHJpYnV0ZSk6CisrICAgICAgICAocng6OkRpc3BsYXlNdGw6
OmdlbmVyYXRlRXh0ZW5zaW9ucyBjb25zdCk6CisrCisrMjAyMS0wNC0wNyAgS3lsZSBQaWRkaW5n
dG9uICA8a3BpZGRpbmd0b25AYXBwbGUuY29tPgorKworKyAgICAgICAgQ3Jhc2ggaW4gY29uZm9y
bWFuY2UyL3RleHR1cmVzL21pc2MvY29tcHJlc3NlZC10ZXgtaW1hZ2UuaHRtbCB3aXRoIEFOR0xF
K01FVEFMCisrICAgICAgICBIYW5kbGUgdXBsb2FkaW5nIGEgY29tcHJlc3NlZCB0ZXh0dXJlIHdp
dGggYSBub24tYWxpZ25lZCBvZmZzZXQuIFBhdGggcmVxdWlyZXMgdGhhdCB3ZSBzdGlsbCBmaWxs
IHRoZSBlbnRpcmUgbGV2ZWwgb2YgYSAKKysgICAgICAgIGNvbXByZXNzZWQgdGV4dHVyZS4KKysg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjM5MjUKKysK
KysgICAgICAgIFJldmlld2VkIGJ5IERlYW4gSmFja3Nvbi4KKysKKysgICAgICAgICogc3JjL2xp
YkFOR0xFL3JlbmRlcmVyL21ldGFsL1RleHR1cmVNdGwubW06CisrICAgICAgICAocng6OlRleHR1
cmVNdGw6OmNvbnZlcnRBbmRTZXRQZXJTbGljZVN1YkltYWdlKToKKysKKysyMDIxLTA0LTA3ICBK
b2huIEN1bm5pbmdoYW0gIDxqb2huY3VubmlnaGFtQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFtN
RVRBTCBBTkdMRV0gSW50ZXJmYWNlIGJsb2NrIGRlY2xlcmF0aW9ucyBuZWVkIHRvIGhhdmUgY2hp
bGRyZW4gbWFya2VkIGFzIHN0cnVjdCBhY2Nlc3Nlcy4gQWRkIGltcGxpY2l0IGJhY2tpbmcgdGV4
dHVyZXMgZm9yIG11bHRpc2FtcGxlIHJlbmRlciB0YXJnZXRzCisrICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI0MjY1CisrCisrICAgICAgICBSZXZpZXdl
ZCBieSBEZWFuIEphY2tzb24uCisrCisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9y
L1RyYW5zbGF0b3JNZXRhbERpcmVjdC9SZWR1Y2VJbnRlcmZhY2VCbG9ja3MuY3BwOgorKyAgICAg
ICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvRnJhbWVCdWZmZXJNdGwuaDoKKysgICAg
ICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL0ZyYW1lQnVmZmVyTXRsLm1tOgorKyAg
ICAgICAgKHJ4OjpGcmFtZWJ1ZmZlck10bDo6c2V0TG9hZFN0b3JlQWN0aW9uT25SZW5kZXJQYXNz
Rmlyc3RTdGFydCk6CisrICAgICAgICAocng6OkZyYW1lYnVmZmVyTXRsOjpvblN0YXJ0ZWREcmF3
aW5nVG9GcmFtZUJ1ZmZlcik6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRh
bC9SZW5kZXJCdWZmZXJNdGwubW06CisrICAgICAgICAocng6OlJlbmRlcmJ1ZmZlck10bDo6c2V0
U3RvcmFnZUltcGwpOgorKworKzIwMjEtMDQtMDUgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0
ZW5zZW5Ad2Via2l0Lm9yZz4KKysKKysgICAgICAgIFJlc3VycmVjdCBNYWMgQ01ha2UgYnVpbGQK
KysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjQwODQK
KysKKysgICAgICAgIFJldmlld2VkIGJ5IFRpbSBIb3J0b24uCisrCisrICAgICAgICAqIFBsYXRm
b3JtTWFjLmNtYWtlOiBBZGRlZC4KKysKKysyMDIxLTA0LTA1ICBKb2huIEN1bm5pbmdoYW0gIDxq
b2huY3VubmlnaGFtQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFtNRVRBTCBBTkdMRV0gU3RlbmNp
bCBvbmx5IGZvcm1hdHMgYmVpbmcgdXNlZCBhcyB0aGUgZGVwdGggYXR0YWNobWVudC4KKysgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjQxODMKKysKKysg
ICAgICAgIFJldmlld2VkIGJ5IEpvbiBMZWUuCisrCisrICAgICAgICAqIHNyYy9jb21waWxlci90
cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC9Qcm9ncmFtUHJlbHVkZS5jcHA6CisrICAg
ICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC9SZXdy
aXRlT3V0QXJncy5jcHA6CisrICAgICAgICAoc2g6OlJld3JpdGVyOjphcmdBbHJlYWR5UHJvY2Vz
c2VkKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL0NvbnRleHRNdGwu
bW06CisrICAgICAgICAocng6OkNvbnRleHRNdGw6OnNldHVwRHJhdyk6CisrICAgICAgICAqIHNy
Yy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9tdGxfY29tbWFuZF9idWZmZXIuaDoKKysgICAgICAg
ICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF9jb21tYW5kX2J1ZmZlci5tbToKKysg
ICAgICAgIChyeDo6bXRsOjpSZW5kZXJDb21tYW5kRW5jb2Rlcjo6cmVzZXQpOgorKyAgICAgICAg
KHJ4OjptdGw6OlJlbmRlckNvbW1hbmRFbmNvZGVyOjpzZXRSZW5kZXJQaXBlbGluZVN0YXRlKToK
KysgICAgICAgIChyeDo6bXRsOjpSZW5kZXJDb21tYW5kRW5jb2Rlcjo6ZHJhdyk6CisrICAgICAg
ICAocng6Om10bDo6UmVuZGVyQ29tbWFuZEVuY29kZXI6OmRyYXdJbnN0YW5jZWQpOgorKyAgICAg
ICAgKHJ4OjptdGw6OlJlbmRlckNvbW1hbmRFbmNvZGVyOjpkcmF3SW5kZXhlZCk6CisrICAgICAg
ICAocng6Om10bDo6UmVuZGVyQ29tbWFuZEVuY29kZXI6OmRyYXdJbmRleGVkSW5zdGFuY2VkKToK
KysgICAgICAgIChyeDo6bXRsOjpSZW5kZXJDb21tYW5kRW5jb2Rlcjo6ZHJhd0luZGV4ZWRJbnN0
YW5jZWRCYXNlVmVydGV4KToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFs
L210bF91dGlscy5tbToKKysgICAgICAgIChyeDo6bXRsOjpJbml0aWFsaXplRGVwdGhTdGVuY2ls
VGV4dHVyZUNvbnRlbnRzR1BVKToKKysKKysyMDIxLTAzLTMwICBLeWxlIFBpZGRpbmd0b24gIDxr
cGlkZGluZ3RvbkBhcHBsZS5jb20+CisrCisrICAgICAgICBFbmFibGUgc2FtcGxlX2NvbXBhcmUg
b3BlcmF0aW9ucyBpbiBNZXRhbCBBTkdMRQorKyAgICAgICAgU2FtcGxlX2NvbXBhcmUgb3BlcmF0
aW9ucywgYW5kIHNoYWRvdyBzYW1wbGluZyB3YXMgYWNjaWRlbnRseSBzd2l0Y2hlZCBvZmYgd2hl
biBpbml0aWFsbHkKKysgICAgICAgIHNldHRpbmcgdXAgQU5HTEVfTWV0YWwuIEVuYWJsaW5nIHNo
YWRvdyBzYW1wbGluZyBmaXhlcyBtb3N0IG9mIHRoZSAKKysgICAgICAgIHdlYmdsLzIuMC4wL2Rl
cXAvZnVuY3Rpb25hbC9nbGVzMy90ZXh0dXJlc2hhZG93LyB0ZXN0IHN1aXRlLCB3aGljaCBpcyBj
dXJyZW50bHkgZmFpbGluZy4KKysKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0yMjM4MzMKKysKKysgICAgICAgIFJldmlld2VkIGJ5IEpvbiBMZWUuCisr
CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9EaXNwbGF5TXRsLm1tOgor
KyAgICAgICAgKHJ4OjpEaXNwbGF5TXRsOjppbml0aWFsaXplRmVhdHVyZXMpOgorKworKzIwMjEt
MDMtMjYgIEplc3NpZSBCZXJsaW4gIDxqYmVybGluQHdlYmtpdC5vcmc+CisrCisrICAgICAgICBV
cGRhdGUgdGhlIEJFRk9SRS9TSU5DRSwgU1lTVEVNX1ZFUlNJT05fUFJFRklYLCBhbmQgTUFDT1NY
X0RFUExPWU1FTlRfVEFSR0VUIGZsYWdzCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MjIzNzc5CisrCisrICAgICAgICBSZXZpZXdlZCBieSBUaW0gSG9y
dG9uLgorKworKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9EZWJ1Z1JlbGVhc2UueGNjb25maWc6
CisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL1ZlcnNpb24ueGNjb25maWc6CisrICAgICAgICAq
IENvbmZpZ3VyYXRpb25zL1dlYktpdFRhcmdldENvbmRpdGlvbmFscy54Y2NvbmZpZzoKKysKKysy
MDIxLTAzLTI1ICBLeWxlIFBpZGRpbmd0b24gIDxrcGlkZGluZ3RvbkBhcHBsZS5jb20+CisrCisr
ICAgICAgICBBTkdMRSBNZXRhbCBjcmFzaCBBU0FOIHdlYmdsLzEuMC4zL2NvbmZvcm1hbmNlL21p
c2Mvb2JqZWN0LWRlbGV0aW9uLWJlaGF2aW91ci5odG1sCisrICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIzNzM5CisrCisrICAgICAgICBSZXZpZXdlZCBi
eSBEZWFuIEphY2tzb24uCisrCisrICAgICAgICBQcmV2aW91c2x5LCBBTkdMRSB3b3VsZCB0cnkg
dG8gcmVhZCBjb2xvciBhdHRhY2htZW50cyBvZmYgb2YgdGhlCisrICAgICAgICBjYWNoZWQgcmVu
ZGVyIHRhcmdldHMuIEhvd2V2ZXIsIHNpbmNlIHZhbGlkYXRpb24gaGFwcGVucyBiZWZvcmUKKysg
ICAgICAgIHN0YXRlIHN5bmMsIHRoZSBjYWNoZWQgcmVuZGVyIHRhcmdldHMgbWF5IGJlIG91dCBv
ZiBkYXRlLgorKworKyAgICAgICAgRm9yIG5vbi1zdXJmYWNlIGJhY2tlZCByZW5kZXIgdGFyZ2V0
cywgd2UgaW5zdGVhZCBnZXQgYSBmcmVzaCBjb3B5CisrICAgICAgICBvZiB0aGUgcmVuZGVyIHRh
cmdldCB3aGVuIGRldGVybWVuaW5nIHRoZSBuYXRpdmUgcGl4ZWwgZm9ybWF0LgorKworKyAgICAg
ICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvRnJhbWVCdWZmZXJNdGwuaDoKKysgICAg
ICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL0ZyYW1lQnVmZmVyTXRsLm1tOgorKyAg
ICAgICAgKHJ4OjpGcmFtZWJ1ZmZlck10bDo6Z2V0SW1wbGVtZW50YXRpb25Db2xvclJlYWRGb3Jt
YXQgY29uc3QpOgorKyAgICAgICAgKHJ4OjpGcmFtZWJ1ZmZlck10bDo6Z2V0Q29sb3JSZWFkUmVu
ZGVyVGFyZ2V0Tm9DYWNoZSBjb25zdCk6CisrCisrCisrMjAyMS0wMy0yNSAgS3lsZSBQaWRkaW5n
dG9uICA8a3BpZGRpbmd0b25AYXBwbGUuY29tPgorKworKyAgICAgICAgW01ldGFsIEFOR0xFXSBB
ZGQgQ1BVIG1pcG1hcCBnZW5lcmF0aW9uIGZvciB3b3JrYXJvdW5kIG9uIEludGVsIGRldmljZXMu
CisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIzNzc4
CisrCisrICAgICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisrCisrICAgICAgICBNaXBt
YXAgZ2VuZXJhdGlvbiBvbiBJbnRlbCBkb2VzIG5vdCByZWxpYWJseSB3b3JrIGZvciB0ZXh0dXJl
cyB3aXRoCisrICAgICAgICB3aWR0aCBsZXNzIHRoYW4gZm91ci4gVG8gcmVsaWFibHkgcGFzcyB3
ZWJHTCBjb25mb3JtYW5jZSwgd2UgbmVlZAorKyAgICAgICAgdG8gc3dpdGNoIHRvIENQVSBtaXBt
YXAgZ2VuZXJhdGlvbiB3aGVuIGdlbmVyYXRpbmcgbWlwbWFwcyBpbiB0aGlzCisrICAgICAgICBz
cGVjaWZpYyBjaXJjdW1zdGFuY2UuCisrCisrICAgICAgICBUaGlzIHBhdGNoIGZpeGVzIHRoZSBm
b2xsb3dpbmcgZm91ciB0ZXN0cyBvbiBJbnRlbAorKyAgICAgICAgd2ViZ2wvMS4wLjMvY29uZm9y
bWFuY2UvbGltaXRzL2dsLW1heC10ZXh0dXJlLWRpbWVuc2lvbnMuaHRtbAorKyAgICAgICAgd2Vi
Z2wvMS4wLjMvY29uZm9ybWFuY2UvdGV4dHVyZXMvdGV4dHVyZS1zaXplLmh0bWwKKysgICAgICAg
IHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlL2xpbWl0cy9nbC1tYXgtdGV4dHVyZS1kaW1lbnNpb25z
Lmh0bWwKKysgICAgICAgIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlL3RleHR1cmVzL21pc2MvdGV4
dHVyZS1zaXplLmh0bWwKKysKKysgICAgICAgICogaW5jbHVkZS9wbGF0Zm9ybS9GZWF0dXJlLmg6
CisrICAgICAgICAoYW5nbGU6OkZlYXR1cmVDYXRlZ29yeVRvU3RyaW5nKToKKysgICAgICAgICog
aW5jbHVkZS9wbGF0Zm9ybS9GZWF0dXJlc010bC5oOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUv
cmVuZGVyZXIvbWV0YWwvRGlzcGxheU10bC5tbToKKysgICAgICAgIChyeDo6RGlzcGxheU10bDo6
aW5pdGlhbGl6ZUZlYXR1cmVzKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21l
dGFsL1RleHR1cmVNdGwubW06CisrICAgICAgICAocng6OlRleHR1cmVNdGw6OmdlbmVyYXRlTWlw
bWFwKToKKysKKysyMDIxLTAzLTI1ICBKZXNzaWUgQmVybGluICA8amJlcmxpbkB3ZWJraXQub3Jn
PgorKworKyAgICAgICAgUmVtb3ZlIDEwLjEzIERFUExPWU1FTlRfVEFSR0VUcyBhbmQgU1lTVEVN
X1ZFUlNJT05fUFJFRklYcworKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIyMzc2NQorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgVGltIEhvcnRvbi4KKysK
KysgICAgICAgICogQ29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZzoKKysgICAgICAgICogQ29u
ZmlndXJhdGlvbnMvRGVidWdSZWxlYXNlLnhjY29uZmlnOgorKyAgICAgICAgKiBDb25maWd1cmF0
aW9ucy9WZXJzaW9uLnhjY29uZmlnOgorKworKzIwMjEtMDMtMjQgIEt5bGUgUGlkZGluZ3RvbiAg
PGtwaWRkaW5ndG9uQGFwcGxlLmNvbT4KKysKKysgICAgICAgIE1ldGFsIEFOR0xFIG5vbi1ibG9j
a2VyczogRml4IHdlYmdsLzEuMC4zL2NvbmZvcm1hbmNlL3VuaWZvcm1zL3VuaWZvcm0tZGVmYXVs
dC12YWx1ZXMuaHRtbCwgU3RlbmNpbCBkZWJ1ZyBsYXllciBhc3NlcnRpb25zCisrICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIzNjY3CisrCisrICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIzNjY3CisrCisrICAg
ICAgICBPbiBSZWxlYXNlLCB1bmlmb3JtRGVmYXVsdFZhbHVlcyB3YXMgcmVzZXR0aW5nIHByb2dy
YW0gbWVtb3J5CisrICAgICAgICBlaXRoZXIgZWFybHksIG9yIG9kZGx5LiBTaW5jZSBwcm9ncmFt
IHJlZmxlY3Rpb24gc2hvdWxkIGJlIGNvbnN0YW50CisrICAgICAgICBwZXIgU2hhZGVyIGFueXdh
eSwgZHJvcCB0aGUgJ3Jlc2V0JyBhZnRlciBhc3NpZ25pbmcgcmVmbGVjdGlvbiBkYXRhLgorKwor
KyAgICAgICAgSW4gYWRkaXRpb24sIGNsYW1wIHN0ZW5jaWwgcmVjdGFuZ2xlIHRvIGFsd2F5cyBi
ZSB3aXRoaW4gZnJhbWVidWZmZXIgYm91bmRzLiBDb2RlIHRha2VuIGZyb20gdXBzdHJlYW0gQU5H
TEUuCisrCisrCisrICAgICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisrCisrICAgICAg
ICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9Qcm9ncmFtTXRsLm1tOgorKyAgICAgICAg
KHJ4OjpQcm9ncmFtTXRsOjpsaW5rSW1wbERpcmVjdCk6CisrICAgICAgICAqIHNyYy9saWJBTkdM
RS9yZW5kZXJlci9tZXRhbC9tdGxfY29tbWFuZF9idWZmZXIubW06CisrICAgICAgICAocng6Om10
bDo6UmVuZGVyQ29tbWFuZEVuY29kZXI6OmluaXRBdHRhY2htZW50V3JpdGVEZXBlbmRlbmN5QW5k
U2Npc3NvclJlY3QpOgorKyAgICAgICAgKHJ4OjptdGw6OlJlbmRlckNvbW1hbmRFbmNvZGVyOjpy
ZXN0YXJ0KToKKysgICAgICAgIChyeDo6bXRsOjpSZW5kZXJDb21tYW5kRW5jb2Rlcjo6c2V0U2Np
c3NvclJlY3QpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX2ds
c2xhbmdfbXRsX3V0aWxzLm1tOgorKyAgICAgICAgKHJ4OjptdGw6OlRyYW5zbGF0ZWRTaGFkZXJJ
bmZvOjpyZXNldCk6CisrICAgICAgICAocng6Om10bDo6R2xzbGFuZ0dldE1TTCk6CisrCisrMjAy
MS0wMy0yNCAgS3lsZSBQaWRkaW5ndG9uICA8a3BpZGRpbmd0b25AYXBwbGUuY29tPgorKworKyAg
ICAgICAgTWV0YWwgQU5HTEUgY3Jhc2hlcyBMYXlvdXRUZXN0cy9pbnNwZWN0b3IvY2FudmFzL3Vw
ZGF0ZVNoYWRlci13ZWJnbC5odG1sCisrICAgICAgICBSYXRoZXIgdGhhbiByZWx5IG9uIGFuIGlu
c3RhbmNlIHZhcmlhYmxlIGluIGEgQysrIGNsYXNzLCBqdXN0IHF1ZXJ5IHRoZSBkaWN0aW9uYXJ5
IGNvbnN0YW50IHdoZW4gbmVlZGVkLgorKworKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTIyMzY5NQorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGVhbiBK
YWNrc29uLgorKworKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvUHJvZ3Jh
bU10bC5oOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvUHJvZ3JhbU10
bC5tbToKKysgICAgICAgIChyeDo6UHJvZ3JhbU10bDo6UHJvZ3JhbU10bCk6CisrICAgICAgICAo
cng6OlByb2dyYW1NdGw6OmxpbmtJbXBsU3BpcnYpOgorKyAgICAgICAgKHJ4OjpQcm9ncmFtTXRs
OjpsaW5rSW1wbERpcmVjdCk6CisrICAgICAgICAocng6OlByb2dyYW1NdGw6OmxpbmtUcmFuc2xh
dGVkU2hhZGVycyk6CisrCisrMjAyMS0wMy0yMyAgS3lsZSBQaWRkaW5ndG9uICA8a3BpZGRpbmd0
b25AYXBwbGUuY29tPgorKworKyAgICAgICAgQU5HTEUgTWV0YWwgZml4ZXMgZm9yIHByb2dyYW0g
Z2VuZXJhdGlvbiBidWdzCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MjIzNjI3CisrCisrICAgICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisr
CisrICAgICAgICAgICB3ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvZ2xzbDMvdGV4dHVyZS1vZmZz
ZXQtdW5pZm9ybS10ZXh0dXJlLWNvb3JkaW5hdGUuaHRtbCBpcyBmaXhlZCBieSBkcm9wcGluZyAn
dGhyZWFkJyBxdWFsaWZpZXJzIG9uIHByZWdlbmVyYXRlZCBmdW5jdGlvbnMKKysgICAgICAgICAg
IHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlL2dsc2wvYnVncy9jb21wb3VuZC1hc3NpZ25tZW50LXR5
cGUtY29tYmluYXRpb24uaHRtbCBpcyBmaXhlZCBieSBpbnRyb2R1Y2luZyBuZXcgb3BlcmF0b3Jz
IGZvciBtYXRyaXggKy8tIHNjYWxhcnMKKysgICAgICAgICAgIHdlYmdsLzIuMC4wL2NvbmZvcm1h
bmNlL2dsc2wvYnVncy9jb21wbGV4LWdsc2wtZG9lcy1ub3QtY3Jhc2guaHRtbCBpcyBmaXhlZCBi
eSBhZGRpbmcgYSBwcmUtcGFzcyB0byByZW5hbWUgYW55IHJlc2VydmVkIGtleXdvcmRzLCBzdWNo
IGFzICd2ZXJ0ZXgnCisrCisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL1RyYW5z
bGF0b3JNZXRhbERpcmVjdC9FbWl0TWV0YWwuY3BwOgorKyAgICAgICAgKEJ1aWxkRXh0ZXJuYWxB
dHRyaWJ1dGVJbmRleE1hcCk6CisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL1Ry
YW5zbGF0b3JNZXRhbERpcmVjdC9Qcm9ncmFtUHJlbHVkZS5jcHA6CisrICAgICAgICAqIHNyYy9j
b21waWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC9SZXdyaXRlS2V5d29yZHMu
Y3BwOgorKyAgICAgICAgKHNoOjpSZXdyaXRlcjo6bWF5YmVDcmVhdGVOZXdOYW1lKToKKysgICAg
ICAgIChzaDo6UmV3cml0ZXI6OnZpc2l0U3ltYm9sUG9zdCk6CisrICAgICAgICAoc2g6OlJld3Jp
dGVyOjpwcmVkZWZpbmVOYW1lKToKKysgICAgICAgIChzaDo6UmV3cml0ZUtleXdvcmRzKToKKysK
KysyMDIxLTAzLTIzICBLaW1tbyBLaW5udW5lbiAgPGtraW5udW5lbkBhcHBsZS5jb20+CisrCisr
ICAgICAgICBBTkdMRSBpcyBtaXNzaW5nIHRoZSBleHBsaWNpdCBjb250ZXh0IGhlYWRlcnMKKysg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjM0NzAKKysK
KysgICAgICAgIFJldmlld2VkIGJ5IEFsZXhleSBQcm9za3VyeWFrb3YuCisrCisrICAgICAgICBB
ZGQgdGhlIGF1dG9nZW5lcmF0ZWQgLmluYyBmaWxlcyBmb3IgZXhwbGljaXQgY29udGV4dAorKyAg
ICAgICAgQVBJIGludG8gdGhlIEFOR0xFIHB1YmxpYyBoZWFkZXJzLgorKworKyAgICAgICAgKiBB
TkdMRS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorKyAgICAgICAgKiBhZGp1c3QtYW5nbGUt
aW5jbHVkZS1wYXRocy5weToKKysgICAgICAgIChyZXBsYWNlKToKKysKKysyMDIxLTAzLTE5ICBL
eWxlIFBpZGRpbmd0b24gIDxrcGlkZGluZ3RvbkBhcHBsZS5jb20+CisrCisrICAgICAgICBNZXRh
bC1BbmdsZSBvbiBTaW11bGF0b3IgZG9lcyBub3Qgc3VwcG9ydCBEMjRTOCBjb3JyZWN0bHkKKysg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjM0OTQKKysK
KysgICAgICAgIFJldmlld2VkIGJ5IERlYW4gSmFja3Nvbi4KKysKKysgICAgICAgIFJlLXJhbiBh
dXRvZ2VuIHNjcmlwdCBmb3IgZm9ybWF0IHRhYmxlIHRvIGFkZCB0aGUgbWlzc2luZyBmb3JtYXQK
KysgICAgICAgIENvcnJlY3RlZCB0ZXh0dXJlIHN3aXp6bGUgc3VwcG9ydC4gU3dpenpsZSBpcyB1
bnN1cHBvcnRlZCBvbiBzaW11bGF0b3IuCisrCisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5k
ZXJlci9tZXRhbC9tdGxfZm9ybWF0X3RhYmxlX2F1dG9nZW4ubW06CisrICAgICAgICAocng6Om10
bDo6Rm9ybWF0Ojppbml0KToKKysKKysyMDIxLTAzLTE5ICBBbGV4IENocmlzdGVuc2VuICA8YWNo
cmlzdGVuc2VuQHdlYmtpdC5vcmc+CisrCisrICAgICAgICBsaWJBTkdMRS1zaGFyZWQuZHlsaWIg
bmVlZHMgSU5TVEFMTF9QQVRIIHdoZW4gYnVpbGRpbmcgQ2F0YWx5c3Qgcm9vdHMKKysgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjM0OTkKKysKKysgICAg
ICAgIFJldmlld2VkIGJ5IERlYW4gSmFja3Nvbi4KKysKKysgICAgICAgIElOU1RBTExfUEFUSCB3
YXMgZW1wdHksIHNvIG5vIGR5bGliIHdhcyBiZWluZyBpbmNsdWRlZCBpbiB0aGUgcm9vdC4KKysg
ICAgICAgIFRoaXMgaXMgbmVlZGVkIHRvIGZpeCB0aGUgQ2F0YWx5c3QgYnVpbGQgYWZ0ZXIgYnVn
IDIxODUzOQorKworKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9BTkdMRS1keW5hbWljLnhjY29u
ZmlnOgorKworKzIwMjEtMDMtMDYgIERlYW4gSmFja3NvbiAgPGRpbm9AYXBwbGUuY29tPgorKwor
KyAgICAgICAgTWV0YWwtQU5HTEUgY2FuIEFTU0VSVCBiZWNhdXNlIE1UTCBzaWduYWwgZXZlbnQg
Y29kZSBpcyBjb21waWxlZCBvdXQKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0yMjI4NTkKKysgICAgICAgIDxyZGFyOi8vcHJvYmxlbS83NTEzMjE4MD4K
KysKKysgICAgICAgIFJldmlld2VkIGJ5IEtlbiBSdXNzZWxsLgorKworKyAgICAgICAgV2l0aCB0
aGUgTWV0YWwgYmFja2VuZCBlbmFibGVkLCB0aGUgdGVzdAorKyAgICAgICAgd2ViZ2wvMi4wLjAv
Y29uZm9ybWFuY2UyL3N0YXRlL2dsLW9iamVjdC1nZXQtY2FsbHMuaHRtbCB3aWxsCisrICAgICAg
ICBvY2Nhc2lvbmFsbHkgY3Jhc2ggaW4gbXRsX2NvbW1hbmRfYnVmZmVyIHdoZW4gaXQgaGl0cyB1
bnJlYWNoYWJsZQorKyAgICAgICAgY29kZSBiZWNhdXNlIEFOR0xFX01UTF9FVkVOVF9BVkFJTEFC
TEUgaGFzbid0IGJlZW4gZGVmaW5lZC4gVGhpcyBpcworKyAgICAgICAgYXZhaWxhYmxlIG9uIG1h
Y09TIDEwLjE0IGFuZCBhYm92ZSwgc28gc2hvdWxkIGJlIGVuYWJsZWQuCisrCisrICAgICAgICBB
dCB0aGUgc2FtZSB0aW1lLCBpdCBkb2Vzbid0IG1ha2Ugc2Vuc2UgdG8gY2FsbCB0aGUgbWV0aG9k
IHRoYXQgaGFzCisrICAgICAgICB1bnJlYWNoYWJsZSBjb2RlLCBzbyBndWFyZCBhZ2FpbnN0IHRo
YXQgaW4gbXRsX2NvbW1hbmRfYnVmZmVyLgorKworKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVu
ZGVyZXIvbWV0YWwvbXRsX2NvbW1hbmRfYnVmZmVyLm1tOgorKyAgICAgICAgKHJ4OjptdGw6OkNv
bW1hbmRCdWZmZXI6OnNldFBlbmRpbmdFdmVudHMpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUv
cmVuZGVyZXIvbWV0YWwvbXRsX2NvbW1vbi5oOiBEZWZpbmUgQU5HTEVfTVRMX0VWRU5UX0FWQUlM
QUJMRS4KKysKKysyMDIxLTAzLTE4ICBLeWxlIFBpZGRpbmd0b24gIDxrcGlkZGluZ3RvbkBhcHBs
ZS5jb20+CisrCisrICAgICAgICAnTVRMTGFuZ3VhZ2VWZXJzaW9uMV8wJyBpcyB1bmF2YWlsYWJs
ZSBvbiBDYXRhbHlzdAorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIyMzM5MgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgSm9uIExlZS4KKysKKysgICAg
ICAgIERpc2FibGUgc3dpdGNoIGNhc2UgaW4gY2F0YWx5c3QgYnVpbGRzCisrCisrICAgICAgICAq
IHNyYy9jb21waWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC9FbWl0TWV0YWwu
Y3BwOgorKyAgICAgICAgKEdldE9wZXJhdG9yU3RyaW5nKToKKysgICAgICAgICogc3JjL2NvbXBp
bGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0L1Byb2dyYW1QcmVsdWRlLmNwcDoK
KysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL0ZyYW1lQnVmZmVyTXRsLm1t
OgorKyAgICAgICAgKHJ4OjpGcmFtZWJ1ZmZlck10bDo6cmVhZFBpeGVscyk6CisrICAgICAgICAq
IHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9tdGxfdXRpbHMubW06CisrICAgICAgICAocng6
Om10bDo6R2V0VXNlclNldE9ySGlnaGVzdE1TTFZlcnNpb24pOgorKworKzIwMjEtMDMtMTcgIEt5
bGUgUGlkZGluZ3RvbiAgPGtwaWRkaW5ndG9uQGFwcGxlLmNvbT4KKysKKysgICAgICAgIEFOR0xF
IE1ldGFsIGZpeHVwcyBmb3IgcHJvZ3JhbSBnZW5lcmF0aW9uLCByZWFkUGl4ZWxzCisrICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIzMjYwCisrCisrICAg
ICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisrCisrICAgICAgICBUaGlzIGRpZmYgZml4
ZXMgdGhlIGZvbGxvd2luZyB0ZXN0czoKKysgICAgICAgIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNl
Mi9nbHNsMy90ZXh0dXJlLW9mZnNldC11bmlmb3JtLXRleHR1cmUtY29vcmRpbmF0ZS5odG1sIElz
IGZpeGVkIGJ5IGRyb3BwaW5nICd0aHJlYWQnIHF1YWxpZmllcnMgb24gb3VyIGludGVybWVkaWF0
ZSB0ZXh0dXJlIHNhbXBsaW5nIGhlbHBlciBmdW5jdGlvbnMuIFByZXZpb3VzbHksIGFueSB1bmlm
b3JtcyB1c2VkIGluIHNhbXBsaW5nIHRleHR1cmVzIHdvdWxkIGhhdmUgaGFkIGlzc3VlcyB3aXRo
IHRoZWlyIG5hbWVzcGFjZS4KKysgICAgICAgIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi9yZWFk
aW5nL3JlYWQtcGl4ZWxzLXBhY2stcGFyYW1ldGVycy5odG1sIGlzIGZpeGVkIGJ5IGNvcnJlY3Rp
bmcgYW4gaXNzdWUgd2l0aCByZWFkaW5nIGZyb20gb3V0c2lkZSB0aGUgZnJhbWVidWZmZXIuIEFO
R0xFIE1ldGFsIHdhcyBwcmV2aW91c2x5IHJlYWRpbmcgdG8gdGhlIHN0YXJ0IG9mIHRoZSBvdXRw
dXQgYXJyYXksIHJhdGhlciB0aGFuIGEgcHJvcGVyIG9mZnNldC4KKysgICAgICAgIHdlYmdsLzIu
MC4wL2NvbmZvcm1hbmNlMi9nbHNsMy9hcnJheS1lcXVhbGl0eS5odG1sIGlzIGZpeGVkIGJ5IGFk
ZGluZyBhZGRpdGlvbmFsIGVxdWFsaXR5IGZ1bmN0aW9ucyBmb3IgaGFuZGxpbmcgYXJyYXlzIG9m
IHN0cnVjdHMuCisrCisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL1RyYW5zbGF0
b3JNZXRhbERpcmVjdC9FbWl0TWV0YWwuY3BwOgorKyAgICAgICAgKEdldE9wZXJhdG9yU3RyaW5n
KToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFsRGly
ZWN0L1Byb2dyYW1QcmVsdWRlLmNwcDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVy
L21ldGFsL0ZyYW1lQnVmZmVyTXRsLm1tOgorKyAgICAgICAgKHJ4OjpGcmFtZWJ1ZmZlck10bDo6
cmVhZFBpeGVscyk6CisrCisrMjAyMS0wMy0xNiAgS3lsZSBQaWRkaW5ndG9uICA8a3BpZGRpbmd0
b25AYXBwbGUuY29tPgorKworKyAgICAgICAgUmVncmVzc2lvbnMgZnJvbSBBTkdMRSBNZXRhbCBl
bmFibGVtZW50CisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MjIyMjM5CisrICAgICAgICAKKysgICAgICAgIFRoaXMgcGF0Y2ggYWRkcmVzc2VkIHNldmVy
YWwgbGFyZ2UgYml0cyBvZiBmdW5jaXRvbmFsaXR5IHRoYXQgd2FzIG1pc3NpbmcgZnJvbSB0aGUg
b3JpZ2luYWwgcGF0Y2guCisrICAgICAgICAxKSBJbnRyb2R1Y2Ugc3VwcG9ydCBmb3IgVUJPJ3Mu
IFRoaXMgcGF0Y2ggYWRkcyBhIERFUVAtY29uZm9ybWFudCBpbXBsZW1lbnRhdGlvbiBmb3IgVUJP
IHN0cnVjdHMuIFRoaXMgaW5jbHVkZXMgY2hhbmdlcyB0byB0aGUgdHJhbnNsYXRvciwKKythbmQg
dGhlIGZyb250ZW5kLgorKyAgICAgICAgMikgSW50cm9kdWNlIHN1cHBvcnQgZm9yIFRyYW5zZm9y
bSBmZWVkYmFjayB0byB0aGUgdHJhbnNsYXRvci4gV2UgdXNlIGEgc2VyaWVzIG9mIHN1YnN0aXR1
dGlvbiBtYWNyb3MgYXQgcHJvZ3JhbSBsaW5rIHRpbWUgdG8gcHJvZHVjZSBhIHRyYW5zZm9ybS1m
ZWVkYmFjayB2YXJpZW50IHNoYWRlciwgYW5kIHVzZSBhIHZlcnRleCBwcmUtcGFzcyB0byBlbXVs
YXRlIHRyYW5zZm9ybSBmZWVkYmFjay4KKysgICAgICAgIDMpIFZhcmlvdXMgZml4ZXMgdG8gaGFu
ZGxlIGEgZmV3IHdlYmdsMiBhc3NlcnRzLCBzdWNoIGFzIGxhcmdlIHVuaWZvcm0gYnVmZmVycy4g
VGhpcyBjaGFuZ2UgIChpbiBQcm9ncmFtTXRsLm1tKSB3aWxsIHJlc2VydmUgYSB1bmlmb3JtIGJ1
ZmZlciBvZiB0d2ljZSB0aGUgbm9ybWFsIHNpemUgKDRrYikgaWYgdGhlIHByb2dyYW0gdW5pZm9y
bXMgZXhjZWVkIHRoYXQgbGltaXQuIChGaXhlcyB3ZWJnbC8yLjAuMC9jb25mb3JtYW5jZS9nbHNs
L2J1Z3MvY29tcGxleC1nbHNsLWRvZXMtbm90LWNyYXNoLmh0bWwgd2ViZ2wvMi4wLjAvY29uZm9y
bWFuY2UvZ2xzbC9taXNjL3NoYWRlci13aXRoLXRvby1tYW55LXVuaWZvcm1zLmh0bWwgd2ViZ2wv
Mi4wLjAvY29uZm9ybWFuY2UvdW5pZm9ybXMvZ2wtdW5pZm9ybS1hcnJheXMuaHRtbCkKKysKKysg
ICAgICAgIFJldmlld2VkIGJ5IEpvbiBMZWUuCisrCisrICAgICAgICAqIEFOR0xFLnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2o6CisrICAgICAgICAqIGluY2x1ZGUvcGxhdGZvcm0vRmVhdHVyZXNN
dGwuaDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyLmduaToKKysgICAgICAgICogc3JjL2NvbXBp
bGVyL3RyYW5zbGF0b3IvQmFzZVR5cGVzLmg6CisrICAgICAgICAoc2g6OmdldFF1YWxpZmllclN0
cmluZyk6CisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRh
bERpcmVjdC5jcHA6CisrICAgICAgICAoc2g6OlRyYW5zbGF0b3JNZXRhbERpcmVjdDo6aW5zZXJ0
U2FtcGxlTWFza1dyaXRpbmdMb2dpYyk6CisrICAgICAgICAoc2g6Om1ldGFsU2hhZGVyVHlwZUZy
b21HTFNMKToKKysgICAgICAgIChzaDo6VHJhbnNsYXRvck1ldGFsRGlyZWN0Ojp0cmFuc2xhdGVJ
bXBsKToKKysgICAgICAgIChzaDo6VHJhbnNsYXRvck1ldGFsRGlyZWN0Ojp0cmFuc2xhdGUpOgor
KyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3Qu
aDoKKysgICAgICAgIChzaDo6VHJhbnNsYXRvck1ldGFsUmVmbGVjdGlvbjo6VHJhbnNsYXRvck1l
dGFsUmVmbGVjdGlvbik6CisrICAgICAgICAoc2g6OlRyYW5zbGF0b3JNZXRhbFJlZmxlY3Rpb246
OmFkZFVzZXJVbmlmb3JtQnVmZmVyQmluZGluZyk6CisrICAgICAgICAoc2g6OlRyYW5zbGF0b3JN
ZXRhbFJlZmxlY3Rpb246OmFkZFVuaWZvcm1CdWZmZXJCaW5kaW5nKToKKysgICAgICAgIChzaDo6
VHJhbnNsYXRvck1ldGFsUmVmbGVjdGlvbjo6Z2V0VXNlclVuaWZvcm1CdWZmZXJCaW5kaW5ncyBj
b25zdCk6CisrICAgICAgICAoc2g6OlRyYW5zbGF0b3JNZXRhbFJlZmxlY3Rpb246OmdldFVzZXJV
bmlmb3JtQnVmZmVyQmluZGluZyBjb25zdCk6CisrICAgICAgICAoc2g6OlRyYW5zbGF0b3JNZXRh
bFJlZmxlY3Rpb246OmdldFVuaWZvcm1CdWZmZXJCaW5kaW5nIGNvbnN0KToKKysgICAgICAgIChz
aDo6VHJhbnNsYXRvck1ldGFsUmVmbGVjdGlvbjo6cmVzZXQpOgorKyAgICAgICAgKiBzcmMvY29t
cGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QvRW1pdE1ldGFsLmNwcDoKKysg
ICAgICAgIChHZW5NZXRhbFRyYXZlcnNlcjo6fkdlbk1ldGFsVHJhdmVyc2VyKToKKysgICAgICAg
IChHZW5NZXRhbFRyYXZlcnNlcjo6ZW1pdE9wZW5pbmdQb2ludGVyUGFyZW4pOgorKyAgICAgICAg
KEdlbk1ldGFsVHJhdmVyc2VyOjplbWl0Q2xvc2luZ1BvaW50ZXJQYXJlbik6CisrICAgICAgICAo
R2V0T3BlcmF0b3JTdHJpbmcpOgorKyAgICAgICAgKEdlbk1ldGFsVHJhdmVyc2VyOjplbWl0UG9z
dFF1YWxpZmllcik6CisrICAgICAgICAoR2VuTWV0YWxUcmF2ZXJzZXI6OmVtaXRUeXBlKToKKysg
ICAgICAgIChHZW5NZXRhbFRyYXZlcnNlcjo6ZW1pdEZpZWxkRGVjbGFyYXRpb24pOgorKyAgICAg
ICAgKEdlbk1ldGFsVHJhdmVyc2VyOjplbWl0QXR0cmlidXRlRGVjbGFyYXRpb24pOgorKyAgICAg
ICAgKEdlbk1ldGFsVHJhdmVyc2VyOjplbWl0VW5pZm9ybUJ1ZmZlckRlY2xhcmF0aW9uKToKKysg
ICAgICAgIChHZW5NZXRhbFRyYXZlcnNlcjo6ZW1pdFN0cnVjdERlY2xhcmF0aW9uKToKKysgICAg
ICAgIChHZW5NZXRhbFRyYXZlcnNlcjo6ZW1pdE9yZGluYXJ5VmFyaWFibGVEZWNsYXJhdGlvbik6
CisrICAgICAgICAoR2VuTWV0YWxUcmF2ZXJzZXI6OnZpc2l0U3ltYm9sKToKKysgICAgICAgIChH
ZW5NZXRhbFRyYXZlcnNlcjo6dmlzaXRCaW5hcnkpOgorKyAgICAgICAgKEdlbk1ldGFsVHJhdmVy
c2VyOjplbWl0RnVuY3Rpb25TaWduYXR1cmUpOgorKyAgICAgICAgKEdlbk1ldGFsVHJhdmVyc2Vy
OjplbWl0RnVuY3Rpb25SZXR1cm4pOgorKyAgICAgICAgKEdlbk1ldGFsVHJhdmVyc2VyOjplbWl0
RnVuY3Rpb25QYXJhbWV0ZXIpOgorKyAgICAgICAgKEdlbk1ldGFsVHJhdmVyc2VyOjp2aXNpdEZ1
bmN0aW9uRGVmaW5pdGlvbik6CisrICAgICAgICAoR2VuTWV0YWxUcmF2ZXJzZXI6OnZpc2l0QWdn
cmVnYXRlKToKKysgICAgICAgIChSZXF1aXJlc1NlbWljb2xvblRlcm1pbmF0b3IpOgorKyAgICAg
ICAgKEdlbk1ldGFsVHJhdmVyc2VyOjp2aXNpdEJsb2NrKToKKysgICAgICAgIChHZW5NZXRhbFRy
YXZlcnNlcjo6dmlzaXRCcmFuY2gpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRv
ci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QvRml4VHlwZUNvbnN0cnVjdG9ycy5jcHA6CisrICAgICAg
ICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC9JbnRyb2R1
Y2VWZXJ0ZXhJbmRleElELmNwcDogQWRkZWQuCisrICAgICAgICAoc2g6OlJld3JpdGVyOjpSZXdy
aXRlcik6CisrICAgICAgICAoc2g6OkludHJvZHVjZVZlcnRleEFuZEluc3RhbmNlSW5kZXgpOgor
KyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3Qv
SW50cm9kdWNlVmVydGV4SW5kZXhJRC5oOiBBZGRlZC4KKysgICAgICAgICogc3JjL2NvbXBpbGVy
L3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0L0xheW91dC5jcHA6CisrICAgICAgICAq
IHNyYy9jb21waWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC9MYXlvdXQuaDoK
KysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0
L01vZGlmeVN0cnVjdC5jcHA6CisrICAgICAgICAoc2g6OlRyeUNyZWF0ZU1vZGlmaWVkU3RydWN0
KToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFsRGly
ZWN0L01vZGlmeVN0cnVjdC5oOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9U
cmFuc2xhdG9yTWV0YWxEaXJlY3QvUGlwZWxpbmUuY3BwOgorKyAgICAgICAgKFBpcGVsaW5lOjp1
c2VzIGNvbnN0KToKKysgICAgICAgIChQaXBlbGluZTo6Z2V0U3RydWN0VHlwZU5hbWUgY29uc3Qp
OgorKyAgICAgICAgKFBpcGVsaW5lOjpnZXRTdHJ1Y3RJbnN0YW5jZU5hbWUgY29uc3QpOgorKyAg
ICAgICAgKEFsbG93UGFja2luZyk6CisrICAgICAgICAoQWxsb3dQYWRkaW5nKToKKysgICAgICAg
IChTYXR1cmF0ZVZlY3Rvck9mKToKKysgICAgICAgIChQaXBlbGluZTo6ZXh0ZXJuYWxTdHJ1Y3RN
b2RpZnlDb25maWcgY29uc3QpOgorKyAgICAgICAgKFBpcGVsaW5lOjphbHdheXNSZXF1aXJlc0xv
Y2FsVmFyaWFibGVEZWNsYXJhdGlvbkluTWFpbiBjb25zdCk6CisrICAgICAgICAoUGlwZWxpbmU6
OmlzUGlwZWxpbmVPdXQgY29uc3QpOgorKyAgICAgICAgKFBpcGVsaW5lOjpleHRlcm5hbEFkZHJl
c3NTcGFjZSBjb25zdCk6CisrICAgICAgICAoUGlwZWxpbmVTdHJ1Y3RzOjptYXRjaGVzIGNvbnN0
KToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFsRGly
ZWN0L1BpcGVsaW5lLmg6CisrICAgICAgICAoc2g6OlBpcGVsaW5lU2NvcGVkOjptYXRjaGVzIGNv
bnN0KToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFs
RGlyZWN0L1Byb2dyYW1QcmVsdWRlLmNwcDoKKysgICAgICAgIChzaDo6UHJvZ3JhbVByZWx1ZGU6
OlByb2dyYW1QcmVsdWRlKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJh
bnNsYXRvck1ldGFsRGlyZWN0L1Byb2dyYW1QcmVsdWRlLmg6CisrICAgICAgICAoc2g6OlByb2dy
YW1QcmVsdWRlQ29uZmlnOjpQcm9ncmFtUHJlbHVkZUNvbmZpZyk6CisrICAgICAgICAqIHNyYy9j
b21waWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC9SZWR1Y2VJbnRlcmZhY2VC
bG9ja3MuY3BwOgorKyAgICAgICAgKHNoOjpSZWR1Y2VyOjpSZWR1Y2VyKToKKysgICAgICAgICog
c3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0L1Jld3JpdGVQaXBl
bGluZXMuY3BwOgorKyAgICAgICAgKHNoOjpHZW5lcmF0ZVBpcGVsaW5lU3RydWN0OjpleGVjKToK
KysgICAgICAgIChzaDo6R2VuZXJhdGVQaXBlbGluZVN0cnVjdDo6Y3JlYXRlSW50ZXJuYWxQaXBl
bGluZVN0cnVjdCk6CisrICAgICAgICAoc2g6OlBpcGVsaW5lRnVuY3Rpb25FbnY6OmdldFVwZGF0
ZWRGdW5jdGlvbik6CisrICAgICAgICAoc2g6OlJld3JpdGVQaXBlbGluZXMpOgorKyAgICAgICAg
KiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QvU3ltYm9sRW52
LmNwcDoKKysgICAgICAgIChTeW1ib2xFbnY6OnJlbW92ZVNwYWNlKToKKysgICAgICAgIChTeW1i
b2xFbnY6OnJlbW92ZVBvaW50ZXIpOgorKyAgICAgICAgKFN5bWJvbEVudjo6bWFya0FzVUJPKToK
KysgICAgICAgIChTeW1ib2xFbnY6OmlzVUJPIGNvbnN0KToKKysgICAgICAgICogc3JjL2NvbXBp
bGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0L1N5bWJvbEVudi5oOgorKyAgICAg
ICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci90cmVlX29wcy9OYW1lTmFtZWxlc3NVbmlmb3Jt
QnVmZmVycy5jcHA6IEFkZGVkLgorKyAgICAgICAgKHNoOjpOYW1lTmFtZWxlc3NVbmlmb3JtQnVm
ZmVycyk6CisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL3RyZWVfb3BzL05hbWVO
YW1lbGVzc1VuaWZvcm1CdWZmZXJzLmg6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIv
dHJhbnNsYXRvci91dGlsLmNwcDoKKysgICAgICAgIChzaDo6SXNCdWlsdGluT3V0cHV0VmFyaWFi
bGUpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0NvbnRleHRDR0wu
Y3BwOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvQnVmZmVyTXRsLmg6
CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9CdWZmZXJNdGwubW06Cisr
ICAgICAgICAocng6OkluZGV4Q29udmVyc2lvbkJ1ZmZlck10bDo6SW5kZXhDb252ZXJzaW9uQnVm
ZmVyTXRsKToKKysgICAgICAgIChyeDo6SW5kZXhDb252ZXJzaW9uQnVmZmVyTXRsOjpnZXRSYW5n
ZUZvckNvbnZlcnRlZEJ1ZmZlcik6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9t
ZXRhbC9Db250ZXh0TXRsLmg6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRh
bC9Db250ZXh0TXRsLm1tOgorKyAgICAgICAgKHJ4OjpDb250ZXh0TXRsOjpoYW5kbGVEaXJ0eURy
aXZlclVuaWZvcm1zKToKKysgICAgICAgIChyeDo6Q29udGV4dE10bDo6aGFuZGxlRGlydHlHcmFw
aGljc1RyYW5zZm9ybUZlZWRiYWNrQnVmZmVyc0VtdWxhdGlvbik6CisrICAgICAgICAocng6OkNv
bnRleHRNdGw6OmhhbmRsZURpcnR5RGVwdGhCaWFzKToKKysgICAgICAgICogc3JjL2xpYkFOR0xF
L3JlbmRlcmVyL21ldGFsL0Rpc3BsYXlNdGwubW06CisrICAgICAgICAocng6OkRpc3BsYXlNdGw6
OmdldE1heFN1cHBvcnRlZEVTVmVyc2lvbiBjb25zdCk6CisrICAgICAgICAocng6OkRpc3BsYXlN
dGw6OmdlbmVyYXRlQ29uZmlncyk6CisrICAgICAgICAocng6OkRpc3BsYXlNdGw6OmVuc3VyZUNh
cHNJbml0aWFsaXplZCBjb25zdCk6CisrICAgICAgICAocng6OkRpc3BsYXlNdGw6OmluaXRpYWxp
emVGZWF0dXJlcyk6CisrICAgICAgICAocng6OkRpc3BsYXlNdGw6OmluaXRpYWxpemVTaGFkZXJM
aWJyYXJ5KToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL0ZyYW1lQnVm
ZmVyTXRsLmg6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9Qcm9ncmFt
TXRsLmg6CisrICAgICAgICAocng6OlByb2dyYW1NdGw6OmNyZWF0ZU1zbFNoYWRlckxpYik6Cisr
ICAgICAgICAocng6OlByb2dyYW1NdGw6OmdldFhmYkJpbmRpbmdzIGNvbnN0KToKKysgICAgICAg
IChyeDo6UHJvZ3JhbU10bDo6Z2V0VHJhbnNsYXRlZFNoYWRlclNvdXJjZSBjb25zdCk6CisrICAg
ICAgICAocng6OlByb2dyYW1NdGw6OmdldFhmYk1zbFNvdXJjZSBjb25zdCk6IERlbGV0ZWQuCisr
ICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9Qcm9ncmFtTXRsLm1tOgorKyAg
ICAgICAgKHJ4OjpQcm9ncmFtTXRsOjpQcm9ncmFtTXRsKToKKysgICAgICAgIChyeDo6UHJvZ3Jh
bU10bDo6ZGVzdHJveSk6CisrICAgICAgICAocng6OlByb2dyYW1NdGw6OnJlc2V0KToKKysgICAg
ICAgIChyeDo6UHJvZ3JhbU10bDo6c2F2ZVRyYW5zbGF0ZWRTaGFkZXJzKToKKysgICAgICAgIChy
eDo6UHJvZ3JhbU10bDo6bG9hZFRyYW5zbGF0ZWRTaGFkZXJzKToKKysgICAgICAgIChyeDo6UHJv
Z3JhbU10bDo6bGlua0ltcGxTcGlydik6CisrICAgICAgICAocng6OlByb2dyYW1NdGw6OmxpbmtJ
bXBsRGlyZWN0KToKKysgICAgICAgIChyeDo6UHJvZ3JhbU10bDo6bGlua0ltcGwpOgorKyAgICAg
ICAgKHJ4OjpQcm9ncmFtTXRsOjpsaW5rVHJhbnNsYXRlZFNoYWRlcnMpOgorKyAgICAgICAgKHJ4
OjpQcm9ncmFtTXRsOjpnZXRCdWZmZXJQb29sKToKKysgICAgICAgIChyeDo6UHJvZ3JhbU10bDo6
cmVzaXplRGVmYXVsdFVuaWZvcm1CbG9ja3NNZW1vcnkpOgorKyAgICAgICAgKHJ4OjpQcm9ncmFt
TXRsOjpnZXRTcGVjaWFsaXplZFNoYWRlcik6CisrICAgICAgICAocng6OlByb2dyYW1NdGw6OmNy
ZWF0ZU1zbFNoYWRlckxpYik6CisrICAgICAgICAocng6OlByb2dyYW1NdGw6OmNvbW1pdFVuaWZv
cm1zKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL1F1ZXJ5TXRsLmg6
CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9SZW5kZXJCdWZmZXJNdGwu
bW06CisrICAgICAgICAocng6OlJlbmRlcmJ1ZmZlck10bDo6c2V0U3RvcmFnZUltcGwpOgorKyAg
ICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvUmVuZGVyVGFyZ2V0TXRsLm1tOgor
KyAgICAgICAgKHJ4OjpSZW5kZXJUYXJnZXRNdGw6OnNldFdpdGhJbXBsaWNpdE1TVGV4dHVyZSk6
CisrICAgICAgICAocng6OlJlbmRlclRhcmdldE10bDo6cmVzZXQpOgorKyAgICAgICAgKiBzcmMv
bGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvU2hhZGVyTXRsLm1tOgorKyAgICAgICAgKHJ4OjpTaGFk
ZXJNdGw6OmNvbXBpbGUpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwv
U3VyZmFjZU10bC5tbToKKysgICAgICAgIChyeDo6V2luZG93U3VyZmFjZU10bDo6aW5pdGlhbGl6
ZSk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9UZXh0dXJlTXRsLm1t
OgorKyAgICAgICAgKHJ4OjpUZXh0dXJlTXRsOjplbnN1cmVTYW1wbGVyU3RhdGVDcmVhdGVkKToK
KysgICAgICAgIChyeDo6VGV4dHVyZU10bDo6c2V0UGVyU2xpY2VTdWJJbWFnZSk6CisrICAgICAg
ICAocng6OlRleHR1cmVNdGw6OmluaXRpYWxpemVDb250ZW50cyk6CisrICAgICAgICAqIHNyYy9s
aWJBTkdMRS9yZW5kZXJlci9tZXRhbC9UcmFuc2Zvcm1GZWVkYmFja010bC5tbToKKysgICAgICAg
ICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL1ZlcnRleEFycmF5TXRsLm1tOgorKyAgICAg
ICAgKHJ4OjpWZXJ0ZXhBcnJheU10bDo6Z2V0SW5kZXhCdWZmZXIpOgorKyAgICAgICAgKiBzcmMv
bGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX2NvbW1vbi5oOgorKyAgICAgICAgKiBzcmMvbGli
QU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX2NvbnN0YW50cy5oOgorKyAgICAgICAgKiBzcmMvbGli
QU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX2Zvcm1hdF9tYXAuanNvbjoKKysgICAgICAgICogc3Jj
L2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF9mb3JtYXRfdGFibGVfYXV0b2dlbi5tbToKKysg
ICAgICAgIChyeDo6bXRsOjpGb3JtYXQ6OmluaXQpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUv
cmVuZGVyZXIvbWV0YWwvbXRsX2Zvcm1hdF91dGlscy5tbToKKysgICAgICAgIChyeDo6bXRsOjpG
b3JtYXRUYWJsZTo6aW5pdGlhbGl6ZSk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJl
ci9tZXRhbC9tdGxfZ2xzbGFuZ19tdGxfdXRpbHMuaDoKKysgICAgICAgICogc3JjL2xpYkFOR0xF
L3JlbmRlcmVyL21ldGFsL210bF9nbHNsYW5nX210bF91dGlscy5tbToKKysgICAgICAgIChyeDo6
bXRsOjp1cGRhdGVTaGFkZXJBdHRyaWJ1dGVzKToKKysgICAgICAgIChyeDo6bXRsOjpTdWJzdGl0
dXRlVHJhbnNmb3JtRmVlZGJhY2tNYXJrZXJzKToKKysgICAgICAgIChyeDo6bXRsOjpHZW5lcmF0
ZVRyYW5zZm9ybUZlZWRiYWNrVmFyeWluZ091dHB1dCk6CisrICAgICAgICAocng6Om10bDo6R2Vu
ZXJhdGVUcmFuc2Zvcm1GZWVkYmFja0VtdWxhdGlvbk91dHB1dHMpOgorKyAgICAgICAgKHJ4Ojpt
dGw6OmdldFJlZmxlY3Rpb25Gcm9tQ29tcGlsZXIpOgorKyAgICAgICAgKHJ4OjptdGw6Okdsc2xh
bmdHZXRNU0wpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX3Jl
bmRlcl91dGlscy5tbToKKysgICAgICAgIChyeDo6bXRsOjpUcmFuc2Zvcm1GZWVkYmFja1V0aWxz
OjpjcmVhdGVNc2xYZmJMaWJyYXJ5KToKKysgICAgICAgIChyeDo6bXRsOjpUcmFuc2Zvcm1GZWVk
YmFja1V0aWxzOjpnZXRUcmFuc2Zvcm1GZWVkYmFja1JlbmRlclBpcGVsaW5lKToKKysgICAgICAg
ICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF9yZXNvdXJjZXMuaDoKKysgICAgICAg
ICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF9yZXNvdXJjZXMubW06CisrICAgICAg
ICAocng6Om10bDo6VGV4dHVyZTo6VGV4dHVyZSk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9y
ZW5kZXJlci9tZXRhbC9tdGxfc3RhdGVfY2FjaGUubW06CisrICAgICAgICAocng6Om10bDo6U2Ft
cGxlckRlc2M6OlNhbXBsZXJEZXNjKToKKysgICAgICAgIChyeDo6bXRsOjpTYW1wbGVyRGVzYzo6
cmVzZXQpOgorKyAgICAgICAgKHJ4OjptdGw6OlJlbmRlclBpcGVsaW5lQ2FjaGU6OlJlbmRlclBp
cGVsaW5lQ2FjaGUpOgorKyAgICAgICAgKHJ4OjptdGw6OlJlbmRlclBpcGVsaW5lQ2FjaGU6OmNy
ZWF0ZVJlbmRlclBpcGVsaW5lU3RhdGUpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVy
ZXIvbWV0YWwvbXRsX3V0aWxzLmg6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9t
ZXRhbC9tdGxfdXRpbHMubW06CisrICAgICAgICAocng6Om10bDo6R2V0VXNlclNldE9ySGlnaGVz
dE1TTFZlcnNpb24pOgorKyAgICAgICAgKHJ4OjptdGw6OkNyZWF0ZVNoYWRlckxpYnJhcnkpOgor
KyAgICAgICAgKHJ4OjptdGw6OkdldEhpZ2hlc3RTdXBwb3J0ZWRNU0xWZXJzaW9uKTogRGVsZXRl
ZC4KKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL3NoYWRlcnMvYmxpdC5t
ZXRhbDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL3NoYWRlcnMvZm9y
bWF0X2F1dG9nZW4uaDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL3No
YWRlcnMvbXRsX2RlZmF1bHRfc2hhZGVyc19zcmNfYXV0b2dlbi5pbmM6CisrCisrMjAyMS0wMy0w
MyAgS3lsZSBQaWRkaW5ndG9uICA8a3BpZGRpbmd0b25AYXBwbGUuY29tPgorKworKyAgICAgICAg
U3VwcG9ydCBEZXB0aDI0X1N0ZW5jaWw4IHNpbXVsYXRpb24gaW4gdGhlIE1UTFNpbXVsYXRvcgor
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMjYyNAor
KworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGVhbiBKYWNrc29uLgorKworKyAgICAgICAgRml4ZXMg
dGhlIGZvbGxvd2luZyB0ZXN0czoKKysgICAgICAgIGZhc3QvY2FudmFzL3dlYmdsL2NvbnRleHQt
Y3JlYXRpb24tYXR0cmlidXRlcy5odG1sCisrICAgICAgICBmYXN0L2NhbnZhcy93ZWJnbC93ZWJn
bC1kZXB0aC10ZXh0dXJlLmh0bWwKKysgICAgICAgIHdlYmdsLzEuMC4zL2NvbmZvcm1hbmNlL21p
c2Mvd2ViZ2wtc3BlY2lmaWMuaHRtbAorKyAgICAgICAgd2ViZ2wvMS4wLjMvY29uZm9ybWFuY2Uv
cmVuZGVyYnVmZmVycy9mcmFtZWJ1ZmZlci1vYmplY3QtYXR0YWNobWVudC5odG1sCisrCisrICAg
ICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9tdGxfZm9ybWF0X21hcC5qc29uOgor
KyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX2Zvcm1hdF90YWJsZV9h
dXRvZ2VuLm1tOgorKyAgICAgICAgKHJ4OjptdGw6OkZvcm1hdDo6aW5pdCk6CisrCisrMjAyMS0w
Mi0yNiAgS3lsZSBQaWRkaW5ndG9uICA8a3BpZGRpbmd0b25AYXBwbGUuY29tPgorKworKyAgICAg
ICAgU3VwcG9ydCAgZmFzdC9jYW52YXMvd2ViZ2wvY29weUJ1ZmZlclN1YkRhdGEuaHRtbCwgZml4
IGJ1Z3MgaW4gZmFzdC9jYW52YXMvd2ViZ2wvZ2V0QnVmZmVyU3ViRGF0YS13ZWJnbDEuaHRtbCBp
biBNZXRhbCBBTkdMRSBvbiBTaW11bGF0b3IKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0yMjI1MDgKKysKKysgICAgICAgIFJldmlld2VkIGJ5IERlYW4g
SmFja3Nvbi4KKysKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL0J1ZmZl
ck10bC5tbToKKysgICAgICAgIChyeDo6QnVmZmVyTXRsOjp1bm1hcCk6CisrICAgICAgICAqIHNy
Yy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9EaXNwbGF5TXRsLm1tOgorKyAgICAgICAgKHJ4OjpE
aXNwbGF5TXRsOjpnZXRNYXhTdXBwb3J0ZWRFU1ZlcnNpb24gY29uc3QpOgorKworKzIwMjEtMDIt
MjYgIEt5bGUgUGlkZGluZ3RvbiAgPGtwaWRkaW5ndG9uQGFwcGxlLmNvbT4KKysKKysgICAgICAg
IEZpeCBpT1Mgc2ltdWxhdG9yIGNyYXNoZXMgZHVlIHRvIHVuc3VwcG9ydGVkIHNpbXVsYXRvciBw
aXhlbCBmb3JtYXRzOiByOFVub3JtX3NyZ2IsIGExYmdyNVVub3JtLCBiNWc2cjVVbm9ybSwgYWJn
cjRVbm9ybSwgYmdyNUExVW5vcm0sIGFuZCBwcm9ncmFtIGdlbmVyYXRpb24gYXNzZXJ0cy4KKysK
KysgICAgICAgIGlPUyBTaW11bGF0b3IgZG9lc24ndCBzdXBwb3J0IHRoZSBmb2xsb3dpbmcgcGFj
a2VkIDE2IGJpdCBmb3JtYXRzIG5hdGl2ZWx5LiBXaGlsZSBzb21lIG9mIHRoZXNlIGNhbiBiZSBl
bXVsYXRlZCwgd2Ugc2hvdWxkIGZpeCB1cCB0aGUgY3Jhc2hpbmcgY2FzZXMgZmlyc3QuCisrCisr
ICAgICAgICBBbHNvIGZpeCB1cCBwcm9ncmFtIGdlbmVyYXRpb24gaXNzdWVzIGZvciB2b2lkIGZy
YWdtZW50IHNoYWRlcnMKKysKKysgICAgICAgIERpc2FibGUgc3VwcG9ydCBmb3IgUFZSVEMgdGVt
cG9yYXJpbHksIGFzIE5vbi1zcXVhcmUgLyBOUE9UIFBWUlRDIHRleHR1cmVzIGFyZSBub3Qgc3Vw
cG9ydGVkIG5hdGl2bGV5IG9uIG1ldGFsLgorKworKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMjQ1OAorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGVh
biBKYWNrc29uLgorKworKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xh
dG9yTWV0YWxEaXJlY3QvRW1pdE1ldGFsLmNwcDoKKysgICAgICAgIChHZW5NZXRhbFRyYXZlcnNl
cjo6ZW1pdFN0cnVjdERlY2xhcmF0aW9uKToKKysgICAgICAgIChHZW5NZXRhbFRyYXZlcnNlcjo6
ZW1pdEZ1bmN0aW9uUmV0dXJuKToKKysgICAgICAgIChHZW5NZXRhbFRyYXZlcnNlcjo6ZW1pdEZ1
bmN0aW9uUGFyYW1ldGVyKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJh
bnNsYXRvck1ldGFsRGlyZWN0L1BpcGVsaW5lLmNwcDoKKysgICAgICAgIChQaXBlbGluZVN0cnVj
dHM6Om1hdGNoZXMgY29uc3QpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9U
cmFuc2xhdG9yTWV0YWxEaXJlY3QvUGlwZWxpbmUuaDoKKysgICAgICAgIChzaDo6UGlwZWxpbmVT
Y29wZWQ6Om1hdGNoZXMgY29uc3QpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIv
bWV0YWwvVGV4dHVyZU10bC5tbToKKysgICAgICAgIChyeDo6VGV4dHVyZU10bDo6c2V0UGVyU2xp
Y2VTdWJJbWFnZSk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9nZW5f
bXRsX2Zvcm1hdF90YWJsZS5weToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21l
dGFsL210bF9mb3JtYXRfbWFwLmpzb246CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJl
ci9tZXRhbC9tdGxfZm9ybWF0X3RhYmxlX2F1dG9nZW4ubW06CisrICAgICAgICAocng6Om10bDo6
Rm9ybWF0Ojppbml0KToKKysgICAgICAgIChyeDo6bXRsOjpWZXJ0ZXhGb3JtYXQ6OmluaXQpOgor
KyAgICAgICAgKHJ4OjptdGw6OkZvcm1hdFRhYmxlOjppbml0TmF0aXZlRm9ybWF0Q2Fwc0F1dG9n
ZW4pOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX2Zvcm1hdF91
dGlscy5tbToKKysgICAgICAgIChyeDo6bXRsOjpGb3JtYXRUYWJsZTo6aW5pdGlhbGl6ZSk6Cisr
ICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9tdGxfcmVzb3VyY2VzLm1tOgor
KyAgICAgICAgKHJ4OjptdGw6OlRleHR1cmU6Ok1ha2UyRFRleHR1cmUpOgorKyAgICAgICAgKHJ4
OjptdGw6OlRleHR1cmU6Ok1ha2VUZXh0dXJlKToKKysKKysyMDIxLTAyLTI2ICBLaW1tbyBLaW5u
dW5lbiAgPGtraW5udW5lbkBhcHBsZS5jb20+CisrCisrICAgICAgICBUZXh0dXJlcyBGYWlsIHRv
IFJlbmRlciBpbiBXZWJHTCBmcm9tIEhMUyBTdHJlYW0gb24gaVBob25lIDEyIFtpT1MgMTQuMl0K
KysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTg2MzcK
KysgICAgICAgIDxyZGFyOi8vcHJvYmxlbS83MTEwMjEyNj4KKysKKysgICAgICAgIFJldmlld2Vk
IGJ5IEtlbm5ldGggUnVzc2VsbC4KKysKKysgICAgICAgIFJlbW92ZSBpbmNvcnJlY3QgdmFsaWRh
dGlvbiB0aGF0IElPU3VyZmFjZSBwaXhlbCBmb3JtYXQgbWF0Y2hlcworKyAgICAgICAgdGhlIHBp
eGVsIGZvcm1hdCBvZiB0aGUgdGV4dHVyZSBpbWFnZSBiZWluZyBzcGVjaWZpZWQuCisrCisrICAg
ICAgICBUaGUgIkVsZW1lbnQiIGluIElPU3VyZmFjZSBpcyBhIGJsb2NrIG9mIHBpeGVscywgd2hp
bGUgdGhlIHZhbGlkYXRpb24gYXNzdW1lZAorKyAgICAgICAgaXQgbWVhbnMgb25lIHBpeGVsLiBU
aGUgdmFsaWRhdGlvbiBmYWlsZWQgZm9yIGEgY29tcHJlc3NlZCBmb3JtYXQuCisrCisrICAgICAg
ICBDdXJyZW50bHkgd2UgbWFwIG5vbi1wdWJsaWMgWVVWIGZvcm1hdHMsIHRvIHdoaWNoIHRoZXJl
IGlzIG5vIGVsZXF1ZW50IHdheQorKyAgICAgICAgb2YgaW1wbGVtZW50aW5nIHRoZSB2YWxpZGF0
aW9uLgorKyAgICAgICAgTW9zdCBsaWtlbHkgdGhpcyBzdGFydGVkIHRvIHJlcHJvZHVjZSBpZiBJ
T1N1cmZhY2VHZXRCeXRlc1BlckVsZW1lbnRPZlBsYW5lCisrICAgICAgICB3YXMgY2hhbmdlZCB0
byBwcm9kdWNlIGNvcnJlY3QgcmVzdWx0cyBmb3IgdGhlIGFib3ZlIFlVViBmb3JtYXQuCisrCisr
ICAgICAgICBMYXRlciBjb21taXRzIGNvdWxkIGFkZCB0aGUgdmFsaWRhdGlvbiBiYWNrIGZvciBm
b3JtYXRzIHRoYXQgd2Uga25vdyB0aGUKKysgICAgICAgIHBpeGVsIGZvcm1hdCB0eXBlLgorKwor
KyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9JT1N1cmZhY2VTdXJmYWNl
RUFHTC5tbToKKysgICAgICAgIChyeDo6SU9TdXJmYWNlU3VyZmFjZUVBR0w6OnZhbGlkYXRlQXR0
cmlidXRlcyk6CisrCisrMjAyMS0wMi0yNSAgS3lsZSBQaWRkaW5ndG9uICA8a3BpZGRpbmd0b25A
YXBwbGUuY29tPgorKworKyAgICAgICAgRml4IGNyYXNoZXMgaW4gZmFzdC9jYW52YXMvd2ViZ2wv
dGV4SW1hZ2UgdmlkZW8gdGVzdHMKKysgICAgICAgIFJlZmFjdG9yIElPU3VyZmFjZVN1cmZhY2VN
dGwgdG8gbWF0Y2ggb3BlbiBzb3VyY2UgaW1wbGVtZW50YXRpb24uCisrICAgICAgICBBZGRpdGlv
bmFsIGNsZWFudXAKKysKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0yMjIzMzEKKysKKysgICAgICAgIFJldmlld2VkIGJ5IERlYW4gSmFja3Nvbi4KKysK
KysKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL0NvbnRleHRNdGwuaDoK
KysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL0NvbnRleHRNdGwubW06Cisr
ICAgICAgICAocng6OkNvbnRleHRNdGw6Om9uQmFja2J1ZmZlclJlc2l6ZWQpOgorKyAgICAgICAg
KiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvRGlzcGxheU10bC5tbToKKysgICAgICAgIChy
eDo6RGlzcGxheU10bDo6Y3JlYXRlUGJ1ZmZlclN1cmZhY2UpOgorKyAgICAgICAgKHJ4OjpEaXNw
bGF5TXRsOjpjcmVhdGVQYnVmZmVyRnJvbUNsaWVudEJ1ZmZlcik6CisrICAgICAgICAqIHNyYy9s
aWJBTkdMRS9yZW5kZXJlci9tZXRhbC9GcmFtZUJ1ZmZlck10bC5oOgorKyAgICAgICAgKHJ4OjpG
cmFtZWJ1ZmZlck10bDo6Z2V0QXR0YWNoZWRCYWNrYnVmZmVyIGNvbnN0KToKKysgICAgICAgICog
c3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL0ZyYW1lQnVmZmVyTXRsLm1tOgorKyAgICAgICAg
KHJ4OjpGcmFtZWJ1ZmZlck10bDo6RnJhbWVidWZmZXJNdGwpOgorKyAgICAgICAgKiBzcmMvbGli
QU5HTEUvcmVuZGVyZXIvbWV0YWwvSU9TdXJmYWNlU3VyZmFjZU10bC5oOgorKyAgICAgICAgKiBz
cmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvSU9TdXJmYWNlU3VyZmFjZU10bC5tbToKKysgICAg
ICAgIChyeDo6SU9TdXJmYWNlU3VyZmFjZU10bDo6SU9TdXJmYWNlU3VyZmFjZU10bCk6CisrICAg
ICAgICAocng6OklPU3VyZmFjZVN1cmZhY2VNdGw6On5JT1N1cmZhY2VTdXJmYWNlTXRsKToKKysg
ICAgICAgIChyeDo6SU9TdXJmYWNlU3VyZmFjZU10bDo6YmluZFRleEltYWdlKToKKysgICAgICAg
IChyeDo6SU9TdXJmYWNlU3VyZmFjZU10bDo6cmVsZWFzZVRleEltYWdlKToKKysgICAgICAgIChy
eDo6SU9TdXJmYWNlU3VyZmFjZU10bDo6Z2V0QXR0YWNobWVudFJlbmRlclRhcmdldCk6CisrICAg
ICAgICAocng6OklPU3VyZmFjZVN1cmZhY2VNdGw6OmVuc3VyZUNvbG9yVGV4dHVyZUNyZWF0ZWQp
OgorKyAgICAgICAgKHJ4OjpJT1N1cmZhY2VTdXJmYWNlTXRsOjpWYWxpZGF0ZUF0dHJpYnV0ZXMp
OgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvU3VyZmFjZU10bC5oOgor
KyAgICAgICAgKHJ4OjpTdXJmYWNlTXRsOjpnZXRDb2xvclRleHR1cmUpOgorKyAgICAgICAgKHJ4
OjpTdXJmYWNlTXRsOjpnZXRTYW1wbGVzIGNvbnN0KToKKysgICAgICAgIChyeDo6U3VyZmFjZU10
bDo6aGFzUm9idXN0UmVzb3VyY2VJbml0IGNvbnN0KToKKysgICAgICAgIChyeDo6V2luZG93U3Vy
ZmFjZU10bDo6cHJlc2VydmVCdWZmZXIgY29uc3QpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUv
cmVuZGVyZXIvbWV0YWwvU3VyZmFjZU10bC5tbToKKysgICAgICAgIChyeDo6U3VyZmFjZU10bDo6
U3VyZmFjZU10bCk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9UZXh0
dXJlTXRsLmg6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9UZXh0dXJl
TXRsLm1tOgorKyAgICAgICAgKHJ4OjpUZXh0dXJlTXRsOjplbnN1cmVUZXh0dXJlQ3JlYXRlZCk6
CisrICAgICAgICAocng6OlRleHR1cmVNdGw6OmVuc3VyZVNhbXBsZXJTdGF0ZUNyZWF0ZWQpOgor
KyAgICAgICAgKHJ4OjpUZXh0dXJlTXRsOjpiaW5kVGV4SW1hZ2UpOgorKyAgICAgICAgKHJ4OjpU
ZXh0dXJlTXRsOjpyZWxlYXNlVGV4SW1hZ2UpOgorKyAgICAgICAgKHJ4OjpUZXh0dXJlTXRsOjpn
ZXRBdHRhY2htZW50UmVuZGVyVGFyZ2V0KToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRl
cmVyL21ldGFsL210bF9jb21tb24uaDoKKysKKysyMDIxLTAyLTE5ICBLeWxlIFBpZGRpbmd0b24g
IDxrcGlkZGluZ3RvbkBhcHBsZS5jb20+CisrCisrICAgICAgICBGaXggYSBudW1iZXIgb2YgZnVu
Y3Rpb25hbCByZWdyZXNzaW9ucyBjYXVzZWQgYnkgZW5hYmxpbmcgdGhlIE1ldGFsIEFOR0xFIGJh
Y2tlbmQgYnkgZGVmYXVsdC4KKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0yMjA4OTUKKysgICAgICAgIDxyZGFyOi8vcHJvYmxlbS83MzUzOTUzNz4KKysK
KysgICAgICAgIFJldmlld2VkIGJ5IEtlbm5ldGggUnVzc2VsbC4KKysKKysgICAgICAgIFRha2Ug
dHdvIG9mIHRoaXMgY29tbWl0IC0gdGhpcyB0aW1lIHdpdGggdGhlIG5ldyBmaWxlcyBGaXhUeXBl
Q29uc3RydWN0b3JzIGFuZCBOYW1lRW1iZWRkZWRVbmlmb3JtU3RydWN0c01ldGFsLgorKyAgICAg
ICAgCisrICAgICAgICBGaXhlZCB3ZWJnbC8xLjAuMy9jb25mb3JtYW5jZS9jb250ZXh0L2NvbnRl
eHQtaGlkZGVuLWFscGhhLmh0bWwKKysKKysgICAgICAgIE1UTCBUcmFuc2xhdG9yIGRpcmVjdCBm
aXhlcyBmb3Igd2ViZ2wvMS4wLjMvY29uZm9ybWFuY2UvZ2xzbC9jb25zdHJ1Y3RvcnMvZ2xzbC1j
b25zdHJ1Y3QtKnZlYzIgdGVzdHMsIFBsdXMgZml4IGZvciBHTF9WZXJ0ZXhJbmRleAorKworKyAg
ICAgICAgRml4IEVtaXRNZXRhbCBjcmFzaCBmb3IgbWlzc2luZyBmdW5jdGlvbiB0ZXh0dXJlUmVj
dC4KKysKKysgICAgICAgIEFkZGl0aW9uYWwgZml4ZXMgZm9yIDczNjc1OTkwLCBzaGFkZXJzLXdp
dGgtaW52YXJpYW5jZS5odG1sLCBzaGFkZXJzLXdpdGgtdW5pZm9ybS1zdHJ1Y3RzLmh0bWwsIHN0
cnVjdC1zcGVjaWZpZXJzLWluLXVuaWZvcm1zLmh0bWwsIGZyYW1lYnVmZmVyLW9iamVjdC1hdHRh
Y2htZW50Lmh0bWwKKysKKysgICAgICAgIEZpeGVkIGNsYW1waW5nIG9mIGFycmF5IGVsZW1lbnRz
LgorKworKyAgICAgICAgKiBBTkdMRS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorKyAgICAg
ICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QuY3BwOgor
KyAgICAgICAgKHNoOjpUcmFuc2xhdG9yTWV0YWxEaXJlY3Q6OnRyYW5zbGF0ZUltcGwpOgorKyAg
ICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QvRW1p
dE1ldGFsLmNwcDoKKysgICAgICAgIChHZW5NZXRhbFRyYXZlcnNlcjo6ZW1pdFBvc3RRdWFsaWZp
ZXIpOgorKyAgICAgICAgKEdlbk1ldGFsVHJhdmVyc2VyOjp2aXNpdEJpbmFyeSk6CisrICAgICAg
ICAoR2VuTWV0YWxUcmF2ZXJzZXI6OkJ1aWxkRnVuY1RvTmFtZSk6CisrICAgICAgICAqIHNyYy9j
b21waWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC9GaXhUeXBlQ29uc3RydWN0
b3JzLmNwcDogQWRkZWQuCisrICAgICAgICAoc2g6OkZpeFR5cGVUcmF2ZXJzZXI6OkZpeFR5cGVU
cmF2ZXJzZXIpOgorKyAgICAgICAgKHNoOjpGaXhUeXBlQ29uc3RydWN0b3JzKToKKysgICAgICAg
ICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0L0ZpeFR5cGVD
b25zdHJ1Y3RvcnMuaDogQWRkZWQuCisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9y
L1RyYW5zbGF0b3JNZXRhbERpcmVjdC9OYW1lRW1iZWRkZWRVbmlmb3JtU3RydWN0c01ldGFsLmNw
cDogQWRkZWQuCisrICAgICAgICAoc2g6Ok5hbWVFbWJlZGRlZFN0cnVjdFVuaWZvcm1zTWV0YWwp
OgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJl
Y3QvTmFtZUVtYmVkZGVkVW5pZm9ybVN0cnVjdHNNZXRhbC5oOiBBZGRlZC4KKysgICAgICAgICog
c3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0L1BpcGVsaW5lLmNw
cDoKKysgICAgICAgIChTYXR1cmF0ZVZlY3Rvck9mKToKKysgICAgICAgICogc3JjL2NvbXBpbGVy
L3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0L1Byb2dyYW1QcmVsdWRlLmNwcDoKKysg
ICAgICAgIChzaDo6UHJvZ3JhbVByZWx1ZGU6OlByb2dyYW1QcmVsdWRlKToKKysgICAgICAgICog
c3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0L1JlZHVjZUludGVy
ZmFjZUJsb2Nrcy5jcHA6CisrICAgICAgICAoc2g6OlJlZHVjZXI6OlJlZHVjZXIpOgorKyAgICAg
ICAgKHNoOjpSZWR1Y2VJbnRlcmZhY2VCbG9ja3MpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIv
dHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QvUmVkdWNlSW50ZXJmYWNlQmxvY2tzLmg6
CisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVj
dC9TZXBhcmF0ZUNvbXBvdW5kU3RydWN0RGVjbGFyYXRpb25zLmNwcDoKKysgICAgICAgICogc3Jj
L2xpYkFOR0xFL3JlbmRlcmVyL2xvYWRfZnVuY3Rpb25zX3RhYmxlX2F1dG9nZW4uY3BwOgorKyAg
ICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvQ29udGV4dE10bC5tbToKKysgICAg
ICAgIChyeDo6Q29udGV4dE10bDo6ZHJhd0VsZW1lbnRzSW1wbCk6CisrICAgICAgICAqIHNyYy9s
aWJBTkdMRS9yZW5kZXJlci9tZXRhbC9JT1N1cmZhY2VTdXJmYWNlTXRsLmg6CisrICAgICAgICAq
IHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9JT1N1cmZhY2VTdXJmYWNlTXRsLm1tOgorKyAg
ICAgICAgKHJ4OjpJT1N1cmZhY2VTdXJmYWNlTXRsOjpJT1N1cmZhY2VTdXJmYWNlTXRsKToKKysg
ICAgICAgIChyeDo6SU9TdXJmYWNlU3VyZmFjZU10bDo6Y3JlYXRlQmFja2luZ1RleHR1cmUpOgor
KyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvUmVuZGVyQnVmZmVyTXRsLm1t
OgorKyAgICAgICAgKHJ4OjpSZW5kZXJidWZmZXJNdGw6OnNldFN0b3JhZ2VJbXBsKToKKysgICAg
ICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL1ZlcnRleEFycmF5TXRsLmg6CisrICAg
ICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9WZXJ0ZXhBcnJheU10bC5tbToKKysg
ICAgICAgIChyeDo6VmVydGV4QXJyYXlNdGw6OmdldEluZGV4QnVmZmVyKToKKysgICAgICAgIChy
eDo6VmVydGV4QXJyYXlNdGw6OmNvbnZlcnRJbmRleEJ1ZmZlcik6CisrICAgICAgICAocng6OlZl
cnRleEFycmF5TXRsOjpzdHJlYW1JbmRleEJ1ZmZlckZyb21DbGllbnQpOgorKyAgICAgICAgKiBz
cmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX3V0aWxzLm1tOgorKyAgICAgICAgKHJ4Ojpt
dGw6OkluaXRpYWxpemVEZXB0aFN0ZW5jaWxUZXh0dXJlQ29udGVudHNHUFUpOgorKyAgICAgICAg
KiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvc2hhZGVycy9ibGl0Lm1ldGFsOgorKyAgICAg
ICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvc2hhZGVycy9tdGxfZGVmYXVsdF9zaGFk
ZXJzX3NyY19hdXRvZ2VuLmluYzoKKysKKysyMDIxLTAyLTE5ICBDaHJpcyBEdW1leiAgPGNkdW1l
ekBhcHBsZS5jb20+CisrCisrICAgICAgICBVbnJldmlld2VkLCByZXZlcnRpbmcgcjI3MzE4OC4K
KysKKysgICAgICAgIEJyb2tlIHRoZSBidWlsZDogSXMgbWlzc2luZyBhIGNwcCBmaWxlCisrCisr
ICAgICAgICBSZXZlcnRlZCBjaGFuZ2VzZXQ6CisrCisrICAgICAgICAiRml4IGEgbnVtYmVyIG9m
IGZ1bmN0aW9uYWwgcmVncmVzc2lvbnMgY2F1c2VkIGJ5IGVuYWJsaW5nIHRoZQorKyAgICAgICAg
TWV0YWwgQU5HTEUgYmFja2VuZCBieSBkZWZhdWx0LiIKKysgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjA4OTUKKysgICAgICAgIGh0dHBzOi8vY29tbWl0
cy53ZWJraXQub3JnL3IyNzMxODgKKysKKysyMDIxLTAyLTE5ICBLeWxlIFBpZGRpbmd0b24gIDxr
cGlkZGluZ3RvbkBhcHBsZS5jb20+CisrCisrICAgICAgICBGaXggYSBudW1iZXIgb2YgZnVuY3Rp
b25hbCByZWdyZXNzaW9ucyBjYXVzZWQgYnkgZW5hYmxpbmcgdGhlIE1ldGFsIEFOR0xFIGJhY2tl
bmQgYnkgZGVmYXVsdC4KKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0yMjA4OTUKKysgICAgICAgIDxyZGFyOi8vcHJvYmxlbS83MzUzOTUzNz4KKysKKysg
ICAgICAgIFJldmlld2VkIGJ5IEtlbm5ldGggUnVzc2VsbC4KKysKKysgICAgICAgIEZpeGVkIHdl
YmdsLzEuMC4zL2NvbmZvcm1hbmNlL2NvbnRleHQvY29udGV4dC1oaWRkZW4tYWxwaGEuaHRtbAor
KworKyAgICAgICAgTVRMIFRyYW5zbGF0b3IgZGlyZWN0IGZpeGVzIGZvciB3ZWJnbC8xLjAuMy9j
b25mb3JtYW5jZS9nbHNsL2NvbnN0cnVjdG9ycy9nbHNsLWNvbnN0cnVjdC0qdmVjMiB0ZXN0cywg
UGx1cyBmaXggZm9yIEdMX1ZlcnRleEluZGV4CisrCisrICAgICAgICBGaXggRW1pdE1ldGFsIGNy
YXNoIGZvciBtaXNzaW5nIGZ1bmN0aW9uIHRleHR1cmVSZWN0LgorKworKyAgICAgICAgQWRkaXRp
b25hbCBmaXhlcyBmb3IgNzM2NzU5OTAsIHNoYWRlcnMtd2l0aC1pbnZhcmlhbmNlLmh0bWwsIHNo
YWRlcnMtd2l0aC11bmlmb3JtLXN0cnVjdHMuaHRtbCwgc3RydWN0LXNwZWNpZmllcnMtaW4tdW5p
Zm9ybXMuaHRtbCwgZnJhbWVidWZmZXItb2JqZWN0LWF0dGFjaG1lbnQuaHRtbAorKworKyAgICAg
ICAgRml4ZWQgY2xhbXBpbmcgb2YgYXJyYXkgZWxlbWVudHMuCisrCisrICAgICAgICAqIEFOR0xF
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFu
c2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC5jcHA6CisrICAgICAgICAoc2g6OlRyYW5zbGF0
b3JNZXRhbERpcmVjdDo6dHJhbnNsYXRlSW1wbCk6CisrICAgICAgICAqIHNyYy9jb21waWxlci90
cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC9FbWl0TWV0YWwuY3BwOgorKyAgICAgICAg
KEdlbk1ldGFsVHJhdmVyc2VyOjplbWl0UG9zdFF1YWxpZmllcik6CisrICAgICAgICAoR2VuTWV0
YWxUcmF2ZXJzZXI6OnZpc2l0QmluYXJ5KToKKysgICAgICAgIChHZW5NZXRhbFRyYXZlcnNlcjo6
QnVpbGRGdW5jVG9OYW1lKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJh
bnNsYXRvck1ldGFsRGlyZWN0L0ZpeFR5cGVDb25zdHJ1Y3RvcnMuY3BwOiBBZGRlZC4KKysgICAg
ICAgIChzaDo6Rml4VHlwZVRyYXZlcnNlcjo6Rml4VHlwZVRyYXZlcnNlcik6CisrICAgICAgICAo
c2g6OkZpeFR5cGVDb25zdHJ1Y3RvcnMpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNs
YXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QvRml4VHlwZUNvbnN0cnVjdG9ycy5oOiBBZGRlZC4K
KysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0
L05hbWVFbWJlZGRlZFVuaWZvcm1TdHJ1Y3RzTWV0YWwuY3BwOiBBZGRlZC4KKysgICAgICAgIChz
aDo6TmFtZUVtYmVkZGVkU3RydWN0VW5pZm9ybXNNZXRhbCk6CisrICAgICAgICAqIHNyYy9jb21w
aWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC9OYW1lRW1iZWRkZWRVbmlmb3Jt
U3RydWN0c01ldGFsLmg6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRv
ci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QvUGlwZWxpbmUuY3BwOgorKyAgICAgICAgKFNhdHVyYXRl
VmVjdG9yT2YpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9y
TWV0YWxEaXJlY3QvUHJvZ3JhbVByZWx1ZGUuY3BwOgorKyAgICAgICAgKHNoOjpQcm9ncmFtUHJl
bHVkZTo6UHJvZ3JhbVByZWx1ZGUpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRv
ci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QvUmVkdWNlSW50ZXJmYWNlQmxvY2tzLmNwcDoKKysgICAg
ICAgIChzaDo6UmVkdWNlcjo6UmVkdWNlcik6CisrICAgICAgICAoc2g6OlJlZHVjZUludGVyZmFj
ZUJsb2Nrcyk6CisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JN
ZXRhbERpcmVjdC9SZWR1Y2VJbnRlcmZhY2VCbG9ja3MuaDoKKysgICAgICAgICogc3JjL2NvbXBp
bGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0L1NlcGFyYXRlQ29tcG91bmRTdHJ1
Y3REZWNsYXJhdGlvbnMuY3BwOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbG9h
ZF9mdW5jdGlvbnNfdGFibGVfYXV0b2dlbi5jcHA6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9y
ZW5kZXJlci9tZXRhbC9Db250ZXh0TXRsLm1tOgorKyAgICAgICAgKHJ4OjpDb250ZXh0TXRsOjpk
cmF3RWxlbWVudHNJbXBsKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFs
L0lPU3VyZmFjZVN1cmZhY2VNdGwuaDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVy
L21ldGFsL0lPU3VyZmFjZVN1cmZhY2VNdGwubW06CisrICAgICAgICAocng6OklPU3VyZmFjZVN1
cmZhY2VNdGw6OklPU3VyZmFjZVN1cmZhY2VNdGwpOgorKyAgICAgICAgKHJ4OjpJT1N1cmZhY2VT
dXJmYWNlTXRsOjpjcmVhdGVCYWNraW5nVGV4dHVyZSk6CisrICAgICAgICAqIHNyYy9saWJBTkdM
RS9yZW5kZXJlci9tZXRhbC9SZW5kZXJCdWZmZXJNdGwubW06CisrICAgICAgICAocng6OlJlbmRl
cmJ1ZmZlck10bDo6c2V0U3RvcmFnZUltcGwpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVu
ZGVyZXIvbWV0YWwvVmVydGV4QXJyYXlNdGwuaDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3Jl
bmRlcmVyL21ldGFsL1ZlcnRleEFycmF5TXRsLm1tOgorKyAgICAgICAgKHJ4OjpWZXJ0ZXhBcnJh
eU10bDo6Z2V0SW5kZXhCdWZmZXIpOgorKyAgICAgICAgKHJ4OjpWZXJ0ZXhBcnJheU10bDo6Y29u
dmVydEluZGV4QnVmZmVyKToKKysgICAgICAgIChyeDo6VmVydGV4QXJyYXlNdGw6OnN0cmVhbUlu
ZGV4QnVmZmVyRnJvbUNsaWVudCk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9t
ZXRhbC9tdGxfdXRpbHMubW06CisrICAgICAgICAocng6Om10bDo6SW5pdGlhbGl6ZURlcHRoU3Rl
bmNpbFRleHR1cmVDb250ZW50c0dQVSk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJl
ci9tZXRhbC9zaGFkZXJzL2JsaXQubWV0YWw6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5k
ZXJlci9tZXRhbC9zaGFkZXJzL210bF9kZWZhdWx0X3NoYWRlcnNfc3JjX2F1dG9nZW4uaW5jOgor
KworKzIwMjEtMDItMTkgIEt5bGUgUGlkZGluZ3RvbiAgPGtwaWRkaW5ndG9uQGFwcGxlLmNvbT4K
KysKKysgICAgICAgIENyYXNoIGluIHJlYWRQaXhlbHMgd2l0aCBBTkdMRSBNZXRhbCBiYWNrZW5k
CisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIwODc3
CisrCisrICAgICAgICBSZW5kZXJidWZmZXJNdGw6OmluaXRpYWxpemVDb250ZW50cyBpcyBzb21l
dGltZXMgYm91bmQgd2l0aCBhCisrICAgICAgICBkZWZhdWx0IGxldmVsIGluZGV4LCB3aGljaCBk
b2Vzbid0IHNwZWNpZnkgdHlwZSwgbGF5ZXIgY291bnQsIG9yCisrICAgICAgICBvdGhlciBpbmZv
cm1hdGlvbi4gV2hlbiB0aGlzIHBhdGggaXMgY2FsbGVkIHdpdGggYW4gaW52YWxpZCBpbmRleCwK
KysgICAgICAgIGFzc3VtZSBhIDJkIGluZGV4LgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGVh
biBKYWNrc29uLgorKworKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvUmVu
ZGVyQnVmZmVyTXRsLm1tOgorKyAgICAgICAgKHJ4OjpSZW5kZXJidWZmZXJNdGw6OmluaXRpYWxp
emVDb250ZW50cyk6CisrCisrMjAyMS0wMi0xNyAgRGVhbiBKYWNrc29uICA8ZGlub0BhcHBsZS5j
b20+CisrCisrICAgICAgICBNZXRhbC1BbmdsZSBvbiBJT1MgZmFpbHMgaW4gVmFsaWRhdGVDcmVh
dGVQYnVmZmVyRnJvbUNsaWVudEJ1ZmZlcgorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTIyMjA2OQorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgU2ltb24g
RnJhc2VyLgorKworKyAgICAgICAgRHVlIHRvIHRoZSBkaWZmZXJlbmNlcyBiZXR3ZWVuIE9wZW5H
TCBhbmQgT3BlbkdMRVMsIFdlYkNvcmUKKysgICAgICAgIGJpbmRzIGl0cyBJT1N1cmZhY2VzIHRv
IGEgZGlmZmVyZW50IHRleHR1cmUgdGFyZ2V0IG9uIG1hY09TIGFuZCBpT1MuCisrICAgICAgICBU
aGlzIGlzbid0IHJlYWxseSBuZWVkZWQgd2l0aCB0aGUgTWV0YWwtQU5HTEUgYmFja2VuZCwgYnV0
IHdoaWxlIHdlJ3JlCisrICAgICAgICBzdGlsbCBzdXBwb3J0aW5nIHRoZSBPcGVuR0wgYmFja2Vu
ZCBpdCBpcyBlYXNpZXIgdG8gaGF2ZSB0aGUgTWV0YWwgYmFja2VuZAorKyAgICAgICAgdXNlIGJv
dGggdGFyZ2V0cy4KKysKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL0Rp
c3BsYXlNdGwubW06CisrICAgICAgICAocng6OkRpc3BsYXlNdGw6OmdlbmVyYXRlQ29uZmlncyk6
IExvb2sgZm9yIEVHTF9URVhUVVJFXzJEIG9uIGlPUy4gTm90ZQorKyAgICAgICAgd2UgZG9uJ3Qg
aGF2ZSB0byB3b3JyeSBhYm91dCB0aGUgd2VpcmQgImlPUyBBcHAgb24gbWFjT1MiIHNpdHVhdGlv
biBzaW5jZQorKyAgICAgICAgdGhhdCBvbmx5IGFwcGxpZXMgdG8gdXNpbmcgT3BlbkdMRVMgb24g
bWFjT1MuIFlheSBmb3IgTWV0YWwhCisrCisrMjAyMS0wMS0xMyAgS2VubmV0aCBSdXNzZWxsICA8
a2JyQGNocm9taXVtLm9yZz4KKysKKysgICAgICAgIFtXZWJHTDJdIGZib3N0YXRlcXVlcnksIG5l
Z2F0aXZlYnVmZmVyYXBpLCBuZWdhdGl2ZXZlcnRleGFycmF5YXBpLCBzaGFkZXJzdGF0ZXF1ZXJ5
IGNvbmZvcm1hbmNlIGZhaWx1cmVzCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MjIwMzcyCisrCisrICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxl
ci4KKysKKysgICAgICAgIEFkZCBhIG5lZWRlZCBlYXJseS1vdXQgaW4gZHJhd0FycmF5c0luc3Rh
bmNlZCB2YWxpZGF0aW9uIHdoZW4gdGhlCisrICAgICAgICBwcmltaXRpdmUgY291bnQgaXMgemVy
by4gVGhpcyBwYXRjaCB3aWxsIGJlIHVwc3RyZWFtZWQgdG8gQU5HTEUKKysgICAgICAgIGFmdGVy
d2FyZC4KKysKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3ZhbGlkYXRpb25FUy5oOgorKyAgICAg
ICAgKGdsOjpWYWxpZGF0ZURyYXdBcnJheXNBdHRyaWJzKToKKysgICAgICAgIChnbDo6VmFsaWRh
dGVEcmF3QXJyYXlzQ29tbW9uKToKKysKKysyMDIxLTAxLTA4ICBLeWxlIFBpZGRpbmd0b24gIDxr
cGlkZGluZ3RvbkBhcHBsZS5jb20+CisrCisrICAgICAgICBGYWlsdXJlcyBvZiBhdHRyaWJ1dGUg
bG9jYXRpb24gY29uZm9ybWFuY2UgdGVzdHMgd2l0aCBNZXRhbCBiYWNrZW5kCisrICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIwMTM3CisrCisrICAgICAg
ICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisrCisrICAgICAgICAqIHNyYy9jb21waWxlci90
cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC9FbWl0TWV0YWwuY3BwOgorKyAgICAgICAg
KEdlbk1ldGFsVHJhdmVyc2VyOjplbWl0QXR0cmlidXRlRGVjbGFyYXRpb24pOgorKyAgICAgICAg
KiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX2dsc2xhbmdfbXRsX3V0aWxzLm1tOgor
KyAgICAgICAgKHJ4OjptdGw6OnVwZGF0ZVNoYWRlckF0dHJpYnV0ZXMpOgorKyAgICAgICAgKHJ4
OjptdGw6Okdsc2xhbmdHZXRNU0wpOgorKworKzIwMjEtMDEtMDQgIEZ1amlpIEhpcm9ub3JpICA8
SGlyb25vcmkuRnVqaWlAc29ueS5jb20+CisrCisrICAgICAgICBbV2luQ2Fpcm9dW0NNYWtlXVtN
U0J1aWxkXVtBTkdMRV0gZW50cnlfcG9pbnRzXyouaCB3YXMgZ2VuZXJhdGVkIHR3aWNlIGJvdGgg
aW4gTGliR0xFU3YyRW50cnlQb2ludHNIZWFkZXJzIGFuZCBHTEVTdjIgcHJvamVjdHMKKysgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjAyNTEKKysKKysg
ICAgICAgIFJldmlld2VkIGJ5IEtlbm5ldGggUnVzc2VsbC4KKysKKysgICAgICAgIFdpbkNhaXJv
IHBvcnQgaXMgc3VwcG9ydGluZyBib3RoIENNYWtlIFZpc3VhbCBTdHVkaW8gZ2VuZXJhdG9yIGFu
ZAorKyAgICAgICAgTmluamEgZ2VuZXJhdG9yLiBIb3dldmVyLCBDTWFrZSBWaXN1YWwgU3R1ZGlv
IGJ1aWxkcyB3YXMgZmFpbGluZworKyAgICAgICAgYXMgdGhlIGZvbGxvd2luZyBlcnJvci4KKysK
KysgICAgICAgID4gQU5HTEVcSGVhZGVyc1xBTkdMRS9lbnRyeV9wb2ludHNfZWdsLmgoMTMsMTAp
OiBmYXRhbCBlcnJvciBDMTA4MzogQ2Fubm90IG9wZW4gaW5jbHVkZSBmaWxlOiAnZXhwb3J0Lmgn
OiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5IChjb21waWxpbmcgc291cmNlIGZpbGUgLi4uXHRl
eG1hcFxBTkdMRUNvbnRleHQuY3BwKQorKworKyAgICAgICAgZW50cnlfcG9pbnRzX2VnbC5oIHdh
cyBnZW5lcmF0ZWQgdHdpY2UgYm90aCBpbgorKyAgICAgICAgTGliR0xFU3YyRW50cnlQb2ludHNI
ZWFkZXJzIGFuZCBHTEVTdjIgcHJvamVjdHMuIEhvd2V2ZXIsIHRoZQorKyAgICAgICAgcG9zdC1w
cm9jZXNzIHNjcmlwdCBhZGp1c3QtYW5nbGUtaW5jbHVkZS1wYXRocy5weSB3YXMgaW52b2tlZCBv
bmx5CisrICAgICAgICBpbiBMaWJHTEVTdjJFbnRyeVBvaW50c0hlYWRlcnMgcHJvamVjdC4KKysK
KysgICAgICAgIEdMRVN2MiB0YXJnZXQgbmVlZHMgdG8gaGF2ZSBhIGRpcmVjdCBvciBpbmRpcmVj
dCBkZXBlbmRlbmN5IHRvCisrICAgICAgICBMaWJHTEVTdjJFbnRyeVBvaW50c0hlYWRlcnMgdGFy
Z2V0IGZvciBDTWFrZSBWaXN1YWwgU3R1ZGlvCisrICAgICAgICBnZW5lcmF0b3IgdG8gZWxpbWlu
YXRlIGR1cGxpY2F0ZWQgY3VzdG9tIGNvbW1hbmRzLgorKworKyAgICAgICAgKiBDTWFrZUxpc3Rz
LnR4dDogQWRkZWQgYWRkX2RlcGVuZGVuY2llcyhHTEVTdjIgTGliR0xFU3YyRW50cnlQb2ludHNI
ZWFkZXJzKSBvbmx5IGlmIFdJTjMyLgorKworKzIwMjEtMDEtMDIgIEphbWVzIERhcnBpbmlhbiAg
PGpkYXJwaW5pYW5AY2hyb21pdW0ub3JnPgorKworKyAgICAgICAgRW5hYmxlIHNvbWUgQU5HTEUg
d29ya2Fyb3VuZHMgb24gaU9TCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MjIwMjAzCisrCisrICAgICAgICBSZXZpZXdlZCBieSBLZW5uZXRoIFJ1c3Nl
bGwuCisrCisrICAgICAgICBSdW5uaW5nIEFOR0xFJ3MgdW5pdCB0ZXN0cyBvbiBpT1MgdXBzdHJl
YW0gZXhwb3NlZCB0aGUgbmVlZCB0byBlbmFibGUgYSBjb3VwbGUgb2YgZXhpc3RpbmcKKysgICAg
ICAgIHdvcmthcm91bmQgZmxhZ3MuIGh0dHBzOi8vY3JyZXYuY29tL2MvMjYwMTEwNiBhbmQgaHR0
cHM6Ly9jcnJldi5jb20vYy8yNjA2NjU3IGFyZSB0aGUKKysgICAgICAgIHVwc3RyZWFtIGNoYW5n
ZXMgY29ycmVzcG9uZGluZyB0byB0aGVzZSBmaXhlcy4KKysKKysgICAgICAgICogc3JjL2xpYkFO
R0xFL3JlbmRlcmVyL2dsL0ZyYW1lYnVmZmVyR0wuY3BwOgorKyAgICAgICAgKHJ4OjpGcmFtZWJ1
ZmZlckdMOjpibGl0KToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL3JlbmRl
cmVyZ2xfdXRpbHMuY3BwOgorKyAgICAgICAgKHJ4OjpuYXRpdmVnbF9nbDo6SW5pdGlhbGl6ZUZl
YXR1cmVzKToKKysKKysyMDIwLTEyLTIzICBLeWxlIFBpZGRpbmd0b24gIDxrcGlkZGluZ3RvbkBh
cHBsZS5jb20+CisrCisrICAgICAgICBbQU5HTEVdIE1ldGFsIGJhY2tlbmQgcmVuZGVycyB0ZGwu
anMgc2FtcGxlcyBhcyByZWQKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0yMjAxMjkKKysKKysgICAgICAgIFJldmlld2VkIGJ5IEtlbm5ldGggUnVzc2Vs
bC4KKysKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL0ZyYW1lQnVmZmVy
TXRsLm1tOgorKyAgICAgICAgKHJ4OjpGcmFtZWJ1ZmZlck10bDo6YmxpdFdpdGhEcmF3KToKKysK
KysyMDIwLTEyLTIyICBNaWNoYWVsIENhdGFuemFybyAgPG1jYXRhbnphcm9AZ25vbWUub3JnPgor
KworKyAgICAgICAgd2FybmluZzogZW51bWVyYXRlZCBhbmQgbm9uLWVudW1lcmF0ZWQgdHlwZSBp
biBjb25kaXRpb25hbCBleHByZXNzaW9uIGluIENvbXBpbGVyLmNwcAorKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMDA2MgorKworKyAgICAgICAgUmV2
aWV3ZWQgYnkgRGVhbiBKYWNrc29uLgorKworKyAgICAgICAgQnVpbGRpbmcgQU5HTEUgd2l0aCAt
V2V4dHJhIGlzIHRvbyBhZ2dyZXNzaXZlLiAtV2V4dHJhIGlzIGdyZWF0IGZvciBjb2RlIHRoYXQg
d2UgY29udHJvbCwKKysgICAgICAgIHdoZXJlIHRoZSBidXJkZW4gb2Ygc3F1YXNoaW5nIHdhcm5p
bmdzIGlzIHJlbGF0aXZlbHkgbG93LiBCdXQgd2l0aCBBTkdMRSwgd2UgaGF2ZSB0byBlaXRoZXIK
KysgICAgICAgIGxhbmQgZml4ZXMgdXBzdHJlYW0sIG9yIGNhcnJ5IHRoZW0gZG93bnN0cmVhbSBm
b3JldmVyLiBJdCBkb2Vzbid0IG1ha2Ugc2Vuc2UgdG8gYm90aGVyIHdpdGgKKysgICAgICAgIHRo
aXMgZm9yIG1pbm9yIGJ1aWxkIHdhcm5pbmcgZml4ZXMgd2hlbiB1cHN0cmVhbSBpcyBjbGVhcmx5
IG5vdCB1c2luZyB0aGUgc2FtZSB3YXJuaW5nIGZsYWdzCisrICAgICAgICBhbmQvb3Igc2FtZSBj
b21waWxlciB0aGF0IHdlIGRvLgorKworKyAgICAgICAgU2luY2Ugd2UgYWRkIC1XZXh0cmEgaW4g
b3VyIGdsb2JhbCBmbGFncywgd2UgaGF2ZSB0byBtYW51YWxseSBvdmVycmlkZSBpdCBoZXJlLiBX
ZSBjYW4gbm93CisrICAgICAgICBhbHNvIHN0b3AgZXhwbGljaXRseSBkaXNhYmxpbmcgb3RoZXIg
d2FybmluZ3MgdGhhdCBhcmUgaW1wbGllZCBieSAtV2V4dHJhLgorKworKyAgICAgICAgRmluYWxs
eSwgbm90ZSB0aGF0IGNoYW5nZXMuZGlmZiBpcyBub3QgbW9kaWZpZWQgYmVjYXVzZSB0aGlzIGlz
LCBjb25mdXNpbmdseSwgYSBkb3duc3RyZWFtCisrICAgICAgICBXZWJLaXQgYnVpbGQgZmlsZS4K
KysKKysgICAgICAgICogQ01ha2VMaXN0cy50eHQ6CisrCisrMjAyMC0xMi0yMiAgS2VubmV0aCBS
dXNzZWxsICA8a2JyQGNocm9taXVtLm9yZz4KKysKKysgICAgICAgIFtXZWJHTDJdIGRlcXAvZnVu
Y3Rpb25hbC9nbGVzMy90ZXh0dXJlc3BlY2lmaWNhdGlvbiBSR0I0NDQ0IGFuZCBSR0I1NjUgZmFp
bHVyZXMgb24gTWFjIEFNRAorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIyMDA5MworKworKyAgICAgICAgUmV2aWV3ZWQgYnkgQWxleCBDaHJpc3RlbnNl
bi4KKysKKysgICAgICAgIFByb21vdGUgdGhlIFJHQkE0NDQ0IGFuZCBSR0I1NjUgdGV4dHVyZSBm
b3JtYXRzIHRvIFJHQltBXTggaW4KKysgICAgICAgIG9yZGVyIHRvIHdvcmsgYXJvdW5kIE9wZW5H
TCBkcml2ZXIgYnVncyBvbiBtYWNPUyB3aXRoIEFNRCBHUFVzLgorKworKyAgICAgICAgKiBpbmNs
dWRlL3BsYXRmb3JtL0ZlYXR1cmVzR0wuaDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRl
cmVyL2dsL2Zvcm1hdHV0aWxzZ2wuY3BwOgorKyAgICAgICAgKHJ4OjpuYXRpdmVnbDo6R2V0TmF0
aXZlSW50ZXJuYWxGb3JtYXQpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wv
cmVuZGVyZXJnbF91dGlscy5jcHA6CisrICAgICAgICAocng6Om5hdGl2ZWdsX2dsOjpJbml0aWFs
aXplRmVhdHVyZXMpOgorKworKzIwMjAtMTItMTYgIEZ1amlpIEhpcm9ub3JpICA8SGlyb25vcmku
RnVqaWlAc29ueS5jb20+CisrCisrICAgICAgICBbV2luQ2Fpcm9dIEVuYWJsZSBVU0VfQU5HTEUK
KysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTk0MjEK
KysKKysgICAgICAgIFJldmlld2VkIGJ5IERvbiBPbG1zdGVhZC4KKysKKysgICAgICAgICogQ01h
a2VMaXN0cy50eHQ6IEFkZGVkIGVudHJ5X3BvaW50c19lZ2xfZXh0LmggdG8gbGliZ2xlc3YyX2Vu
dHJ5X3BvaW50c19oZWFkZXJzLgorKworKzIwMjAtMTItMTQgIEFsZXggQ2hyaXN0ZW5zZW4gIDxh
Y2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KKysKKysgICAgICAgIEZpeCBidWlsZC4KKysKKysgICAg
ICAgICogc3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mb19hcHBsZS5tbToKKysgICAgICAgIChh
bmdsZTo6R2V0U3lzdGVtSW5mbyk6CisrICAgICAgICAjI2lmIHNob3VsZCBiZSAjaWYKKysKKysy
MDIwLTEyLTE0ICBEZWFuIEphY2tzb24gIDxkaW5vQGFwcGxlLmNvbT4KKysKKysgICAgICAgIEJ1
aWxkIGZpeCBmb3IgTWFjIENhdGFseXN0LiBSZW1vdmUgY29kZSB0aGF0IHdhcyBhY2NpZGVudGFs
bHkKKysgICAgICAgIGluY2x1ZGVkIGluIHRoZSBwcmV2aW91cyBjb21taXQuCisrCisrICAgICAg
ICAqIHNyYy9ncHVfaW5mb191dGlsL1N5c3RlbUluZm9fYXBwbGUubW06CisrICAgICAgICAoYW5n
bGU6OkdldFN5c3RlbUluZm8pOgorKworKzIwMjAtMTItMTIgIEt5bGUgUGlkZGluZ3RvbiAgPGtw
aWRkaW5ndG9uQGFwcGxlLmNvbT4KKysKKysgICAgICAgIEltcHJvdmVkIE1ldGFsIGJhY2tlbmQg
Zm9yIEFOR0xFLCB3aXRoIGRpcmVjdCBHTFNMIHRvIE1ldGFsIGNvbXBpbGVyIHRyYW5zbGF0aW9u
CisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE5NzU5
CisrICAgICAgICA8cmRhcjovL3Byb2JsZW0vNzIyMDAyMjI+CisrCisrICAgICAgICBSZXZpZXdl
ZCBieSBEZWFuIEphY2tzb24uCisrCisrICAgICAgICBSZXZpZXdlcidzIG5vdGU6IFdoaWxlIHRo
aXMgcGF0Y2ggaXMgbGFuZGluZyBpbiBXZWJLaXQgbm93LCBpdCB3aWxsCisrICAgICAgICBiZSBz
dWJtaXR0ZWQgdG8gdGhlIG1haW4gQU5HTEUgcHJvamVjdCBmb3Igb2ZmaWNpYWwgcmV2aWV3LCB0
aGVuIHJlLW1lcmdlZAorKyAgICAgICAgYmFjayBpbnRvIFdlYktpdC4gVGhlIGZlYXR1cmUgcHJv
dmlkZWQgaGVyZSBpcyBub3QgZW5hYmxlZCBieSBkZWZhdWx0LgorKworKyAgICAgICAgUHJvdmlk
ZSBhIFdlYkdMMSBjb21wbGlhbnQgdHJhbnNwaWxlciBmb3IgR0xTTCBjb250ZW50LiBXaXRoIHRo
aXMKKysgICAgICAgIGNoYW5nZSwgd2UgY2FuIGxldmVyYWdlIHRoZSBhbHJlYWR5IHByZXNlbnQg
b3BlbiBzb3VyY2Ugd29yayBpbiB0aGUKKysgICAgICAgIEFOR0xFIHByb2plY3QgdG8gZW5hYmxl
IHdlYmdsIHRvIHJ1biBvbiB0b3Agb2YgTWV0YWwuIEluIGFkZGl0aW9uLAorKyAgICAgICAgdGhp
cyBwYXRjaCBjb250YWlucyBhIG51bWJlciBvZiBmaXhlcyB0byB0aGUgZXhpc3RpbmcgQU5HTEUg
TWV0YWwgYmFja2VuZC4KKysKKysgICAgICAgIFRlc3Q6IFRlc3RzIHdlcmUgdmFsaWRhdGVkIHdp
dGggdGhlIGRFUVAgdGVzdCBzdWl0ZSB3aXRoIEFOR0xFLCBpbgorKyAgICAgICAgYWRkaXRpb24g
dG8gcnVubmluZyBzdGFuZGFyZCBsYXlvdXQgdGVzdHMuCisrCisrMjAyMC0xMi0wNCAgQWRhbSBS
b2JlbiAgPGFyb2JlbkBhcHBsZS5jb20+CisrCisrICAgICAgICBNb3JlIEZBTExCQUNLX1BMQVRG
T1JNIGFkb3B0aW9uCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjE5NTQ1CisrCisrICAgICAgICBSZXZpZXdlZCBieSBUaW0gSG9ydG9uLgorKworKyAg
ICAgICAgKiBDb25maWd1cmF0aW9ucy9TREtWYXJpYW50LnhjY29uZmlnOgorKyAgICAgICAgV0tf
RU1QVFlfJChUSElTX0lTX05PVF9FTVBUWSkgZXZhbHVhdGVzIHRvIHRoZSBlbXB0eSBzdHJpbmcs
IG5vdCB0bworKyAgICAgICAgTk8uCisrCisrMjAyMC0xMi0wNCAgUm9iIEJ1aXMgIDxyYnVpc0Bp
Z2FsaWEuY29tPgorKworKyAgICAgICAgV2ViR0wyOiBOdWxsIHBvaW50ZXIgZGVyZWZlcmVuY2Ug
aW4gc3RkOjpzdHJpbmcgaW1wbGVtZW50YXRpb24gaW4gZ2w6OlNoYWRlcjo6Z2V0VHJhbnNmb3Jt
RmVlZGJhY2tWYXJ5aW5nTWFwcGVkTmFtZQorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTIxODYwMgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGVhbiBK
YWNrc29uLgorKworKyAgICAgICAgU2tpcCB2YXJ5aW5nIGlmIGZpZWxkIGlzIG5vdCBmb3VuZCBz
aW5jZSBpbiB0aGlzCisrICAgICAgICBjYXNlIHdlIGhhdmUgbm8gbWF0Y2ggZm9yIHRoZSB2YXJ5
aW5nIHBhcmFtZXRlciBuYW1lLgorKworKyAgICAgICAgKiBzcmMvbGliQU5HTEUvU2hhZGVyLmNw
cDoKKysgICAgICAgIChnbDo6U2hhZGVyOjpnZXRUcmFuc2Zvcm1GZWVkYmFja1ZhcnlpbmdNYXBw
ZWROYW1lKToKKysKKysyMDIwLTEyLTAzICBBZGFtIFJvYmVuICA8YXJvYmVuQGFwcGxlLmNvbT4K
KysKKysgICAgICAgIEFkb3B0IEZBTExCQUNLX1BMQVRGT1JNCisrICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE5NTA0CisrCisrICAgICAgICBSZXZpZXdl
ZCBieSBUaW0gSG9ydG9uLgorKworKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9TREtWYXJpYW50
LnhjY29uZmlnOiBVc2UgRkFMTEJBQ0tfUExBVEZPUk0gaXQgaWYgaXQncworKyAgICAgICAgZGVm
aW5lZCwgb3RoZXJ3aXNlIHVzZSBQTEFURk9STV9OQU1FIGFzIGJlZm9yZS4KKysKKysyMDIwLTEy
LTAyICBEZWFuIEphY2tzb24gIDxkaW5vQGFwcGxlLmNvbT4KKysKKysgICAgICAgIEJ1aWxkIGZp
eCBmb3IgTWFjIENhdGFseXN0LiBJbmNsdWRlIHRoZSBTeXN0ZW1JbmZvIGhlYWRlci4KKysKKysg
ICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2FwcGxlL0Rpc3BsYXlBcHBsZV9hcGku
Y3BwOgorKworKzIwMjAtMTItMDIgIFJvYiBCdWlzICA8cmJ1aXNAaWdhbGlhLmNvbT4KKysKKysg
ICAgICAgIEZpeCBBTkdMRSBDTWFrZUxpc3RzLnR4dCB3YXJuaW5ncworKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxOTI2MAorKworKyAgICAgICAgUmV2
aWV3ZWQgYnkgUGhpbGlwcGUgTm9ybWFuZC4KKysKKysgICAgICAgIEZpeCB3YXJuaW5nIHdoZW4g
YnVpbGRpbmcgb24gR1RLOgorKyAgICAgICAgTWFrZSBXYXJuaW5nIChkZXYpIGF0IFNvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL0NNYWtlTGlzdHMudHh0OjEwMzoKKysgICAgICAgIFN5bnRheCBXYXJu
aW5nIGluIGNtYWtlIGNvZGUgYXQgY29sdW1uIDM3CisrCisrICAgICAgICBBcmd1bWVudCBub3Qg
c2VwYXJhdGVkIGZyb20gcHJlY2VkaW5nIHRva2VuIGJ5IHdoaXRlc3BhY2UuCisrICAgICAgICBU
aGlzIHdhcm5pbmcgaXMgZm9yIHByb2plY3QgZGV2ZWxvcGVycy4gIFVzZSAtV25vLWRldiB0byBz
dXBwcmVzcyBpdC4KKysKKysgICAgICAgICogQ01ha2VMaXN0cy50eHQ6CisrCisrMjAyMC0xMi0w
MiAgSmFtZXMgRGFycGluaWFuICA8amRhcnBpbmlhbkBjaHJvbWl1bS5vcmc+CisrCisrICAgICAg
ICBVcGRhdGUgQU5HTEUgMjAyMC0xMS0xMgorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTIxODg3NworKworKyAgICAgICAgUmV2aWV3ZWQgYnkgS2VubmV0
aCBSdXNzZWxsLgorKworKyAgICAgICAgKiBFeGNlc3NpdmVseSBsYXJnZSBsaXN0IG9mIHVwc3Ry
ZWFtIGNoYW5nZXMgb21pdHRlZC4KKysKKysyMDIwLTExLTMwICBSeWFuIEhhZGRhZCAgPHJ5YW5o
YWRkYWRAYXBwbGUuY29tPgorKworKyAgICAgICAgVW5yZXZpZXdlZCwgcmV2ZXJ0aW5nIHIyNzAx
MjksIHIyNzAxOTQsIGFuZCByMjcwMjU4LgorKworKyAgICAgICAgcjI3MDEyOSBicm9rZSBtYWND
YXRhbHlzdCBidWlsZAorKworKyAgICAgICAgUmV2ZXJ0ZWQgY2hhbmdlc2V0czoKKysKKysgICAg
ICAgICJVcGRhdGUgQU5HTEUgMjAyMC0xMS0xMiIKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTg4NzcKKysgICAgICAgIGh0dHBzOi8vdHJhYy53ZWJr
aXQub3JnL2NoYW5nZXNldC8yNzAxMjkKKysKKysgICAgICAgICJGaXggQU5HTEUgQ01ha2VMaXN0
cy50eHQgd2FybmluZ3MiCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MjE5MjYwCisrICAgICAgICBodHRwczovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2Vz
ZXQvMjcwMTk0CisrCisrICAgICAgICAiQXR0ZW1wdGVkIGJ1aWxkIGZpeCBmb3IgTWFjIENhdGFs
eXN0LiBJbmNsdWRlIHRoZSBTeXN0ZW1JbmZvCisrICAgICAgICBoZWFkZXIuIgorKyAgICAgICAg
aHR0cHM6Ly90cmFjLndlYmtpdC5vcmcvY2hhbmdlc2V0LzI3MDI1OAorKworKzIwMjAtMTEtMzAg
IERlYW4gSmFja3NvbiAgPGRpbm9AYXBwbGUuY29tPgorKworKyAgICAgICAgQXR0ZW1wdGVkIGJ1
aWxkIGZpeCBmb3IgTWFjIENhdGFseXN0LiBJbmNsdWRlIHRoZSBTeXN0ZW1JbmZvIGhlYWRlci4K
KysKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2FwcGxlL0Rpc3BsYXlBcHBs
ZV9hcGkuY3BwOgorKworKzIwMjAtMTEtMjcgIEZ1amlpIEhpcm9ub3JpICA8SGlyb25vcmkuRnVq
aWlAc29ueS5jb20+CisrCisrICAgICAgICBbQU5HTEVdIENvbnZlcnQgYWRqdXN0LWFuZ2xlLWlu
Y2x1ZGUtcGF0aHMuc2ggdG8gYSBQeXRob24gc2NyaXB0IGZvciBXaW5kb3dzIHdpdGhvdXQgQ3ln
d2luCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE5
Mjk5CisrCisrICAgICAgICBSZXZpZXdlZCBieSBLZW5uZXRoIFJ1c3NlbGwuCisrCisrICAgICAg
ICBXaW5DYWlybyBwb3J0IGNhbid0IHVzZSBzaGVsbCBzY3JpcHRzIGJlY2F1c2UgaXQgaXNuJ3Qg
dXNpbmcKKysgICAgICAgIEN5Z3dpbi4KKysKKysgICAgICAgICogQU5HTEUueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvajoKKysgICAgICAgICogQ01ha2VMaXN0cy50eHQ6CisrICAgICAgICAqIGFk
anVzdC1hbmdsZS1pbmNsdWRlLXBhdGhzLnB5OiBBZGRlZC4KKysgICAgICAgICogYWRqdXN0LWFu
Z2xlLWluY2x1ZGUtcGF0aHMuc2g6IFJlbW92ZWQuCisrCisrMjAyMC0xMS0yNyAgUm9iIEJ1aXMg
IDxyYnVpc0BpZ2FsaWEuY29tPgorKworKyAgICAgICAgRml4IEFOR0xFIENNYWtlTGlzdHMudHh0
IHdhcm5pbmdzCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MjE5MjYwCisrCisrICAgICAgICBSZXZpZXdlZCBieSBQaGlsaXBwZSBOb3JtYW5kLgorKwor
KyAgICAgICAgRml4IHdhcm5pbmcgd2hlbiBidWlsZGluZyBvbiBHVEs6CisrICAgICAgICBNYWtl
IFdhcm5pbmcgKGRldikgYXQgU291cmNlL1RoaXJkUGFydHkvQU5HTEUvQ01ha2VMaXN0cy50eHQ6
MTAzOgorKyAgICAgICAgU3ludGF4IFdhcm5pbmcgaW4gY21ha2UgY29kZSBhdCBjb2x1bW4gMzcK
KysKKysgICAgICAgIEFyZ3VtZW50IG5vdCBzZXBhcmF0ZWQgZnJvbSBwcmVjZWRpbmcgdG9rZW4g
Ynkgd2hpdGVzcGFjZS4KKysgICAgICAgIFRoaXMgd2FybmluZyBpcyBmb3IgcHJvamVjdCBkZXZl
bG9wZXJzLiAgVXNlIC1Xbm8tZGV2IHRvIHN1cHByZXNzIGl0LgorKworKyAgICAgICAgKiBDTWFr
ZUxpc3RzLnR4dDoKKysKKysyMDIwLTExLTIwICBKYW1lcyBEYXJwaW5pYW4gIDxqZGFycGluaWFu
QGNocm9taXVtLm9yZz4KKysKKysgICAgICAgIFVwZGF0ZSBBTkdMRSAyMDIwLTExLTEyCisrICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE4ODc3CisrCisr
ICAgICAgICBSZXZpZXdlZCBieSBLZW5uZXRoIFJ1c3NlbGwuCisrCisrICAgICAgICAqIEV4Y2Vz
c2l2ZWx5IGxhcmdlIGxpc3Qgb2YgdXBzdHJlYW0gY2hhbmdlcyBvbWl0dGVkLgorKworKzIwMjAt
MTEtMTkgIEphbWVzIERhcnBpbmlhbiAgPGpkYXJwaW5pYW5AY2hyb21pdW0ub3JnPgorKworKyAg
ICAgICAgSW1wcm92ZSB1cGRhdGUtYW5nbGUgc2NyaXB0IGFuZCBtb3ZlIHRvIFRvb2xzL1Njcmlw
dHMKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTg4
MzEKKysKKysgICAgICAgIFJldmlld2VkIGJ5IEtlbm5ldGggUnVzc2VsbC4KKysKKysgICAgICAg
IHVwZGF0ZS1hbmdsZSBmZXRjaGVzIGNoYW5nZXMgZnJvbSB1cHN0cmVhbSBBTkdMRSBpbnRvIFNv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFLAorKyAgICAgICAgdXBkYXRlcyBXZWJLaXQncyBidWlsZCBm
aWxlcyBhbmQgaGVscHMgbWVyZ2UgV2ViS2l0J3MgbG9jYWwgY2hhbmdlcy4KKysKKysgICAgICAg
ICAgLSBNb3ZlZCB0byBUb29scy9TY3JpcHRzIHNvIHRoYXQgaXQgZG9lc24ndCBvdmVyd3JpdGUg
aXRzZWxmIGR1cmluZyB0aGUKKysgICAgICAgICAgICB1cGRhdGUgcHJvY2Vzcy4KKysgICAgICAg
ICAgLSBSZXZlcnNlZCBkaXJlY3Rpb24gb2YgcmViYXNlLiBCZWZvcmUgdGhlIHNjcmlwdCByZWJh
c2VkIEFOR0xFIG9uIFdlYktpdDsKKysgICAgICAgICAgICBub3cgaXQgcmViYXNlcyBXZWJLaXQn
cyBBTkdMRSBjaGFuZ2VzIG9uIHVwc3RyZWFtIEFOR0xFIG1hc3Rlci4gVGhpcworKyAgICAgICAg
ICAgIG1ha2VzIGEgbG90IG1vcmUgc2Vuc2UgYW5kIHJlc3VsdHMgaW4gZmV3ZXIgY2hhbmdlcyB0
byByZWJhc2UuIFRoaXMKKysgICAgICAgICAgICByZXF1aXJlcyB0aGUgdXNlIG9mIGdpdC1maWx0
ZXItcmVwbyB0byBtYWtlIHRoZSByZWJhc2Ugbm90IHByb2hpYml0aXZlbHkKKysgICAgICAgICAg
ICBzbG93LgorKyAgICAgICAgICAtIFJlbW92ZWQgYmFzaCBkZXBlbmRlbmN5LgorKyAgICAgICAg
ICAtIEZpeGVkIGFsbCBpc3N1ZXMgaWRlbnRpZmllZCBieSBzaGVsbGNoZWNrLgorKyAgICAgICAg
ICAtIEZpeGVkIGNoYW5nZXMuZGlmZiB0byBzaG93IGFkZGVkIGZpbGVzLCB3aGlsZSBmaWx0ZXJp
bmcgZmlsZXMgYWRkZWQgYnkKKysgICAgICAgICAgICBXZWJLaXQncyBidWlsZCBwcm9jZXNzLgor
KyAgICAgICAgICAtIEZpeGVkIGNoYW5nZXMuZGlmZiB0byBpZ25vcmUgd2hpdGVzcGFjZSBjaGFu
Z2VzLgorKyAgICAgICAgICAtIEFkZGVkIC0tcmVnZW5lcmF0ZS1jaGFuZ2VzLWRpZmYgb3B0aW9u
IHRvIHVwZGF0ZSBjaGFuZ2VzLmRpZmYgaW4gYmV0d2VlbgorKyAgICAgICAgICAgIEFOR0xFIHVw
ZGF0ZXMuCisrICAgICAgICAgIC0gVXBkYXRlZCBbYW5nbGVfXWNvbW1pdC5oIGdlbmVyYXRpb24g
Zm9yIHVwc3RyZWFtIGNoYW5nZXMuCisrICAgICAgICAgIC0gUmVtb3ZlZCBuZWVkIHRvIHJ1biB0
aGUgc2NyaXB0IG11bHRpcGxlIHRpbWVzIGR1cmluZyB0aGUgcmViYXNlIHByb2Nlc3MuCisrCisr
ICAgICAgICAqIHVwZGF0ZS1hbmdsZS5zaDogUmVtb3ZlZC4KKysKKysyMDIwLTExLTE5ICBEZWFu
IEphY2tzb24gIDxkaW5vQGFwcGxlLmNvbT4KKysKKysgICAgICAgIEFkZCBzY2hlbWVzIGZvciBB
TkdMRSB0byBYY29kZSBwcm9qZWN0CisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MjE3NTQ2CisrICAgICAgICByZGFyOi8vNjkwNjIwODIKKysKKysgICAg
ICAgIFJldmlld2VkIGJ5IEFsZXggQ2hyaXN0ZW5zZW4uCisrCisrICAgICAgICAqIENvbmZpZ3Vy
YXRpb25zL0Jhc2UueGNjb25maWc6IFVwZGF0ZSBwYXRocyBmb3IgYnVpbHQgZnJhbWV3b3Jrcy4K
KysgICAgICAgICogQU5HTEUueGNvZGVwcm9qL3hjc2hhcmVkZGF0YS94Y3NjaGVtZXMvQU5HTEUg
KGR5bmFtaWMpLnhjc2NoZW1lOiBBZGRlZC4KKysgICAgICAgICogQU5HTEUueGNvZGVwcm9qL3hj
c2hhcmVkZGF0YS94Y3NjaGVtZXMvQU5HTEUgKHN0YXRpYykueGNzY2hlbWU6IEFkZGVkLgorKyAg
ICAgICAgKiBBTkdMRS54Y29kZXByb2oveGNzaGFyZWRkYXRhL3hjc2NoZW1lcy9BTkdMRS54Y3Nj
aGVtZTogQWRkZWQuCisrCisrMjAyMC0xMS0wNCAgRGF2aWQgS2lsemVyICA8ZGRraWx6ZXJAYXBw
bGUuY29tPgorKworKyAgICAgICAgV2ViS2l0IHNob3VsZCByZW1vdmUgdW51c2VkIGRlYnVnIHZh
cmlhbnQgc3VwcG9ydAorKyAgICAgICAgPGh0dHBzOi8vd2Via2l0Lm9yZy9iLzIxODMxNT4KKysg
ICAgICAgIDxyZGFyOi8vcHJvYmxlbS83MDc4NTM2OT4KKysKKysgICAgICAgIFJldmlld2VkIGJ5
IERhcmluIEFkbGVyLgorKworKyAgICAgICAgUmVtb3ZlIHN1cHBvcnQgZm9yIGJ1aWxkaW5nIHRo
ZSBkZWJ1ZyB2YXJpYW50IHNpbmNlIGl0IGlzCisrICAgICAgICBjdXJyZW50bHkgdW51c2VkLiBX
ZSBub3cgc2V0IGRlZmF1bHQgdmFsdWVzIGZvciB0aGUKKysgICAgICAgIERFQURfQ09ERV9TVFJJ
UFBJTkcsIERFQlVHX0RFRklORVMsIEdDQ19PUFRJTUlaQVRJT05fTEVWRUwgYW5kCisrICAgICAg
ICBTVFJJUF9JTlNUQUxMRURfUFJPRFVDVCB2YXJpYWJsZXMuCisrCisrICAgICAgICBBbHNvIG1v
dmUgdGhlc2UgdmFsdWVzIG91dCBvZiB0aGUgWGNvZGUgcHJvamVjdCBpbnRvCisrICAgICAgICBC
YXNlLnhjY29uZmlnIGZpbGVzIHVzaW5nIHRoZSBbY29uZmlnPURlYnVnXSBzcGVjaWZpZXIgc28g
dGhhdAorKyAgICAgICAgdGhlc2Ugb3ZlcnJpZGVzIGFyZSBuZXh0IHRvIHRoZSBkZWZpbml0aW9u
cy4KKysKKysgICAgICAgIEFkZGl0aW9uYWwgY2hhbmdlcyBpbiBiZWhhdmlvciBhcmUgbm90ZWQg
YmVsb3cuCisrCisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0FOR0xFLWR5bmFtaWMueGNjb25m
aWc6CisrICAgICAgICAtIE1vdmUgREVCVUdfREVGSU5FUyB0byBCYXNlLnhjY29uZmlnLgorKyAg
ICAgICAgLSBTZXQgdXAgREVBRF9DT0RFX1NUUklQUElORyBhbmQgU1RSSVBfSU5TVEFMTEVEX1BS
T0RVQ1QgdGhlCisrICAgICAgICAgIHNhbWUgYXMgZm9yIG90aGVyIFdlYktpdCBwcm9qZWN0cy4g
UHJldmlvdXNseSBkZWFkIGNvZGUgYW5kCisrICAgICAgICAgIHN5bWJvbHMgd2VyZSBuZXZlciBz
dGlwcGVkIGluIFJlbGVhc2Ugb3IgUHJvZHVjdGlvbiBidWlsZHMuCisrCisrICAgICAgICAqIENv
bmZpZ3VyYXRpb25zL0FOR0xFLXN0YXRpYy54Y2NvbmZpZzoKKysgICAgICAgIC0gTW92ZSBERUJV
R19ERUZJTkVTIHRvIEJhc2UueGNjb25maWcuCisrCisrICAgICAgICAqIENvbmZpZ3VyYXRpb25z
L0Jhc2UueGNjb25maWc6CisrICAgICAgICAtIFNldCB1cCBERUJVR19ERUZJTkVTIGFuZCBHQ0Nf
T1BUSU1JWkFUSU9OX0xFVkVMIHRoZSBzYW1lIGFzCisrICAgICAgICAgIG90aGVyIFdlYktpdCBw
cm9qZWN0cy4gUHJldmlvdXNseSBEZWJ1ZyBidWlsZHMgd2VyZSBidWlsdCB3aXRoCisrICAgICAg
ICAgIC1PcyBpbnN0ZWFkIG9mIC1PMC4KKysKKysyMDIwLTExLTAzICBEYXZpZCBLaWx6ZXIgIDxk
ZGtpbHplckBhcHBsZS5jb20+CisrCisrICAgICAgICBTdG9wIGJ1aWxkaW5nIEFOR0xFIHNvdXJj
ZSBmaWxlcyB0d2ljZQorKyAgICAgICAgPGh0dHBzOi8vd2Via2l0Lm9yZy9iLzIxODQ2OT4KKysK
KysgICAgICAgIFJldmlld2VkIGJ5IERlYW4gSmFja3Nvbi4KKysKKysgICAgICAgICogQU5HTEUu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKysgICAgICAgIChBTkdMRSAoZHluYW1pYykpOgor
KyAgICAgICAgLSBSZXBsYWNlIHNvdXJjZXMgd2l0aCBlbXB0eS5jcHAuIFhjb2RlIHJlcXVpcmVz
IGEgc2luZ2xlIHNvdXJjZQorKyAgICAgICAgICBmaWxlIHRvIGJlIGNvbXBpbGVkIHRvIGNyZWF0
ZSBhIGR5bGliLCBldmVuIGlmIHRoZSBzdGF0aWMKKysgICAgICAgICAgbGlicmFyeSBjb250YWlu
cyBhbGwgbmVjZXNzYXJ5IHN5bWJvbHMuCisrICAgICAgICAtIEFkZCBkZXBlbmRlbmN5IG9uICJB
TkdMRSAoc3RhdGljKSIgdGFyZ2V0LgorKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9BTkdMRS1k
eW5hbWljLnhjY29uZmlnOgorKyAgICAgICAgKEFOR0xFX09USEVSX0xERkxBR1MpOgorKyAgICAg
ICAgLSBBZGQgJChBTkdMRV9TVEFUSUNfTElCX09USEVSX0xERkxBR1MpLgorKyAgICAgICAgKEFO
R0xFX1NUQVRJQ19MSUJfT1RIRVJfTERGTEFHUyk6IEFkZC4KKysgICAgICAgIC0gU3BlY2lhbCBs
aW5rZXIgY29tbWFuZC1saW5lIHN3aXRjaCB0byBsb2FkIGFsbCBzeW1ib2xzIGZyb20KKysgICAg
ICAgICAgbGliQU5HTEUuYSB3aGVuIGxpbmtpbmcgbGliQU5HTEUtc2hhcmVkLmR5bGliLgorKyAg
ICAgICAgKiBzcmMvZW1wdHkuY3BwOiBBZGQuCisrICAgICAgICAtIFNlZSBhYm92ZSB3aHkgdGhp
cyBpcyBuZWVkZWQgYnkgWGNvZGUuCisrCisrMjAyMC0xMC0xMiAgRGVhbiBKYWNrc29uICA8ZGlu
b0BhcHBsZS5jb20+CisrCisrICAgICAgICBBZGQgc2NoZW1lcyBmb3IgQU5HTEUgdG8gWGNvZGUg
cHJvamVjdAorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTIxNzU0NgorKyAgICAgICAgcmRhcjovLzY5MDYyMDgyCisrCisrICAgICAgICBSZXZpZXdlZCBi
eSBBbGV4IENocmlzdGVuc2VuLgorKworKyAgICAgICAgKiBBTkdMRS54Y29kZXByb2oveGNzaGFy
ZWRkYXRhL3hjc2NoZW1lcy9BTkdMRSAoZHluYW1pYykueGNzY2hlbWU6IEFkZGVkLgorKyAgICAg
ICAgKiBBTkdMRS54Y29kZXByb2oveGNzaGFyZWRkYXRhL3hjc2NoZW1lcy9BTkdMRSAoc3RhdGlj
KS54Y3NjaGVtZTogQWRkZWQuCisrICAgICAgICAqIEFOR0xFLnhjb2RlcHJvai94Y3NoYXJlZGRh
dGEveGNzY2hlbWVzL0FOR0xFLnhjc2NoZW1lOiBBZGRlZC4KKysKKysyMDIwLTEwLTI4ICBUaW0g
SG9ydG9uICA8dGltb3RoeV9ob3J0b25AYXBwbGUuY29tPgorKworKyAgICAgICAgbWFjQ2F0YWx5
c3QgV2ViR0wgb24gQXBwbGUgU2lsaWNvbiBkZXZpY2VzIGlzIHVzaW5nIGEgc29mdHdhcmUgcmVu
ZGVyZXIKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MTgzMDMKKysgICAgICAgIDxyZGFyOi8vcHJvYmxlbS83MDU4NzU3MT4KKysKKysgICAgICAgIFJl
dmlld2VkIGJ5IEdlb2ZmcmV5IEdhcmVuLgorKworKyAgICAgICAgKiBzcmMvZ3B1X2luZm9fdXRp
bC9TeXN0ZW1JbmZvLmg6CisrICAgICAgICAqIHNyYy9ncHVfaW5mb191dGlsL1N5c3RlbUluZm9f
YXBwbGUubW06CisrICAgICAgICAoYW5nbGU6OkdldFN5c3RlbUluZm8pOgorKyAgICAgICAgV2Ug
Y2FuIGp1c3QgdXNlIHRoZSBtYWNPUyB2ZXJzaW9uIG9mIEdldFN5c3RlbUluZm8gaW4gbWFjQ2F0
YWx5c3QuCisrCisrICAgICAgICAqIHNyYy9ncHVfaW5mb191dGlsL1N5c3RlbUluZm9fbWFjb3Mu
bW06CisrICAgICAgICAoYW5nbGU6OkdldFN5c3RlbUluZm9fbWFjKToKKysgICAgICAgICogc3Jj
L2xpYkFOR0xFL0Rpc3BsYXkuY3BwOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvZm9ybWF0dXRp
bHMuY3BwOgorKyAgICAgICAgKGdsOjpCdWlsZEludGVybmFsRm9ybWF0SW5mb01hcCk6CisrICAg
ICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9yZW5kZXJlcmdsX3V0aWxzLmNwcDoKKysg
ICAgICAgIChyeDo6bmF0aXZlZ2xfZ2w6OkdlbmVyYXRlQ2Fwcyk6CisrICAgICAgICBJdCB0dXJu
cyBvdXQgd2UgbXVzdCB1c2UgRUFHTCBpbiBtYWNDYXRhbHlzdCBvbiBBcHBsZSBTaWxpY29uIGlu
IGFsbCBjYXNlcywKKysgICAgICAgIG5vdCBqdXN0IGluLXByb2Nlc3MgaW4gaU9TIGFwcHMgKHRo
ZSBwcm9ibGVtIGlzIG5vdCBqdXN0IGFib3V0IGNvZXhpc3RlbmNlCisrICAgICAgICBvZiB0aGUg
dHdvIEdMcywgYnV0IGFjdHVhbGx5IGFib3V0IG91ciBhYmlsaXR5IHRvIGxvYWQgdGhlIGFjY2Vs
ZXJhdGVkCisrICAgICAgICByZW5kZXJlciAvYXQgYWxsLyBpbiBtYWNDYXRhbHlzdCBwcm9jZXNz
ZXMpLgorKworKyAgICAgICAgSSBsZWZ0IHRoZSBydW50aW1lIHN3aXRjaGluZyBpbiBwbGFjZSwg
YmVjYXVzZSB0aGVyZSBpcyBhIGZ1dHVyZSBpbiB3aGljaAorKyAgICAgICAgd2UgL2Nhbi8gdXNl
IENHTCBpbiBub24taU9TLWFwcCBwcm9jZXNzZXMsIGJ1dCB0aGF0IGZ1dHVyZSBpcyBub3Qgbm93
LgorKworKzIwMjAtMTAtMTMgIEtlaXRoIFJvbGxpbiAgPGtyb2xsaW5AYXBwbGUuY29tPgorKwor
KyAgICAgICAgUmVtb3ZlIGxlZnRvdmVyIE1BQ09TWF9ERVBMT1lNRU5UX1RBUkdFVF9tYWNvc3gg
c3VwcG9ydAorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTIxNzY0OQorKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzcwMjM2ODc3PgorKworKyAgICAgICAg
UmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIuCisrCisrICAgICAgICBCdWcgNDI3OTYgaW50cm9kdWNl
ZCBNQUNPU1hfREVQTE9ZTUVOVF9UQVJHRVRfPFBMQVRGT1JNPiBhcyAic3VwcG9ydAorKyAgICAg
ICAgZm9yIGNvbXBpbGluZyBXZWJLaXQgYWdhaW5zdCBpT1MgU0RLcyIuIFN1cHBvcnQgZm9yIHRo
ZSBpT1MgcGFydCBvZgorKyAgICAgICAgdGhpcyBmZWF0dXJlIHdhcyBsYXRlciByZW1vdmVkIGlu
IHNldmVyYWwgY2hhbmdlcywgaW5jbHVkaW5nIEJ1ZworKyAgICAgICAgMTM5MjEyLCBCdWcgMTM5
NDYzIGFuZCBCdWcgMTQ0NzYyLiBIb3dldmVyLCB2ZXN0aWdlcyBoYXZlIHJlbWFpbmVkIGZvcgor
KyAgICAgICAgZml2ZSBvciBzaXggeWVhcnMgaW4gdGhlIGZvcm0gb2YgTUFDT1NYX0RFUExPWU1F
TlRfVEFSR0VUX21hY29zeC4gVGhlCisrICAgICAgICBpbmNsdXNpb24gb2YgdGhlIHBsYXRmb3Jt
IGluIE1BQ09TWF9ERVBMT1lNRU5UX1RBUkdFVCBpcyBubyBsb25nZXIKKysgICAgICAgIG5lZWRl
ZCBhbmQgY2FuIGJlIHJlbW92ZWQuCisrCisrICAgICAgICBUaGlzIGNoYW5nZXMgYnJpbmdzIG1v
c3QgcHJvamVjdHMgaW4gY29uZm9ybWFuY2Ugd2l0aCBvdGhlciBwcm9qZWN0cworKyAgICAgICAg
dGhhdCBkb24ndCBzdXBwb3J0IGluY2x1ZGluZyB0aGUgcGxhdGZvcm0gaW4gTUFDT1NYX0RFUExP
WU1FTlRfVEFSR0VULAorKyAgICAgICAgaW5jbHVkaW5nIFdlYkVkaXRpbmdUZXN0ZXIsIGd0ZXN0
LCBXZWJLaXRUZXN0UnVubmVyLCBNaW5pQnJvd3NlciwgYW5kCisrICAgICAgICBUZXN0V2ViS2l0
QVBJLgorKworKyAgICAgICAgQWxvbmcgdGhlIHdheSwgcmVtb3ZlIGEgY291cGxlIG9mIGxlZnQt
b3ZlciByZWZlcmVuY2VzIHRvIG1hY09TIDEwLjE2LAorKyAgICAgICAgYW5kIGEgY291cGxlIG9m
IHBsYWNlcyB3aGVyZSBbc2RrPW1hY29zeCpdIHdhcyBzdGlsbCBiZWluZyB1c2VkLgorKworKyAg
ICAgICAgV2l0aCB0aGlzIGNoYW5nZSwgaW5pdGlhbGl6YXRpb24gb2YgTUFDT1NYX0RFUExPWU1F
TlRfVEFSR0VUIHNob3VsZCBiZQorKyAgICAgICAgY29uc2lzdGVudCBhY3Jvc3MgYWxsIHByb2pl
Y3RzLCB3aXRoIHR3byBleGNlcHRpb25zOiBXZWJLaXRMYXVuY2hlcgorKyAgICAgICAgKHdoaWNo
IGhhcmRjb2RlcyBpdCB0byAxMC4xMikgYW5kIGxpYndlYnJ0YydzIGNvcHkgb2YgZ29vZ2xldGVz
dAorKyAgICAgICAgKHdoaWNoIGhhcmRjb2RlcyBpdCB0byAxMC40KS4gVGhlIHJlYXNvbnMgZm9y
IHRoZXNlIGhhcmQtY29kZWQgdmFsdWVzCisrICAgICAgICBpcyBub3QgYXBwYXJlbnQsIHNvIGxl
YXZlIHRoZW0gYmUuCisrCisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0RlYnVnUmVsZWFzZS54
Y2NvbmZpZzoKKysKKysyMDIwLTEwLTEyICBMdW1pbmcgWWluICA8bHVtaW5nX3lpbkBhcHBsZS5j
b20+CisrCisrICAgICAgICBbbWFjT1NdIFdvcmthcm91bmQgZm9yIE1BQ19PU19YX1ZFUlNJT05f
TUFKT1IgaW5jb3JyZWN0bHkgaW5jbHVkaW5nIG1pbm9yIHZlcnNpb24gd2hlbiBidWlsZGluZyAK
KysgICAgICAgIHdpdGggWGNvZGUgMTIgb24gbWFjT1MgQmlnIFN1ciBTVXMKKysgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTc2MDIKKysgICAgICAgIHJk
YXI6Ly83MDE5NDQ1MworKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIuCisrCisr
ICAgICAgICBUaGUgcHJldmlvdXMgd29ya2Fyb3VuZCB0dXJucyBvdXQgdG8gYmUgaW5lZmZlY3Rp
dmUgYmVjYXVzZSB3ZSBjYW4ndCBzZXQgdGhlIHZhbHVlIG9mIAorKyAgICAgICAgVEFSR0VUX01B
Q19PU19YX1ZFUlNJT05fTUFKT1IgYmFzZWQgb24gYSBwcmV2aW91cyB2YWx1ZSBvZiBpdHNlbGYu
IEludHJvZHVjZSBhIG5ldyAKKysgICAgICAgIHZhcmlhYmxlIFRBUkdFVF9NQUNfT1NfWF9WRVJT
SU9OX01BSk9SIHRvIGRldGVybWluZSB3aGV0aGVyIHdlIG5lZWQgdG8gZXhwbGljaXRseSAKKysg
ICAgICAgIGFkanVzdCBNQUNfT1NfWF9WRVJTSU9OX01BSk9SIHRvIDExMDAwMC4KKysKKysgICAg
ICAgICogQ29uZmlndXJhdGlvbnMvRGVidWdSZWxlYXNlLnhjY29uZmlnOgorKworKzIwMjAtMTAt
MTIgIEx1bWluZyBZaW4gIDxsdW1pbmdfeWluQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFttYWNP
U10gV29ya2Fyb3VuZCBmb3IgTUFDX09TX1hfVkVSU0lPTl9NQUpPUiBpbmNvcnJlY3RseSBpbmNs
dWRpbmcgbWlub3IgdmVyc2lvbiB3aGVuIGJ1aWxkaW5nIAorKyAgICAgICAgd2l0aCBYY29kZSAx
MiBvbiBtYWNPUyBCaWcgU3VyIFNVcworKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIxNzYwMgorKyAgICAgICAgcmRhcjovLzcwMTk0NDUzCisrCisrICAg
ICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KKysKKysgICAgICAgIER1ZSB0byBhIGJ1ZyBp
biBYY29kZSAocmRhcjovLzcwMTg1ODk5KSwgWGNvZGUgMTIuMCBhbmQgWGNvZGUgMTIuMSBCZXRh
IGluY29ycmVjdGx5IGluY2x1ZGVzIHRoZSAKKysgICAgICAgIG1pbm9yIHJlbGVhc2UgbnVtYmVy
IGluIE1BQ19PU19YX1ZFUlNJT05fTUFKT1IsIHdoaWNoIGNhdXNlcyBEZWJ1ZyBhbmQgUmVsZWFz
ZSBidWlsZHMgb2YgV2ViS2l0IAorKyAgICAgICAgdG8gYmUgbWlzY29uZmlndXJlZCB3aGVuIGJ1
aWxkaW5nIG9uIG1hY09TIEJpZyBTdXIgU1VzLCBsZWFkaW5nIHRvIHdlYnBhZ2VzIGZhaWxpbmcg
dG8gbG9hZC4KKysKKysgICAgICAgIFRvIHdvcmsgYXJvdW5kIHRoZSBYY29kZSBidWcsIHdoZW4g
dGhlIE1BQ19PU19YX1ZFUlNJT05fTUFKT1IgaW5jbHVkZXMgdGhlIG1pbm9yIHZlcnNpb24gbnVt
YmVyLCAKKysgICAgICAgIGRyb3AgdGhlIG1pbm9yIHZlcnNpb24gbnVtYmVyIGJ5IGV4cGxpY2l0
bHkgc2V0dGluZyBUQVJHRVRfTUFDX09TX1hfVkVSU0lPTl9NQUpPUiB0byAxMTAwMDAuCisrCisr
ICAgICAgICBOb3RlOiBUaGlzIGNoYW5nZSBzaG91bGQgYmUgcmV2ZXJ0ZWQgYWZ0ZXIgPHJkYXI6
Ly83MDE4NTg5OT4gaXMgcmVzb2x2ZWQuCisrCisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0Rl
YnVnUmVsZWFzZS54Y2NvbmZpZzoKKysKKysyMDIwLTEwLTExICBMdW1pbmcgWWluICA8bHVtaW5n
X3lpbkBhcHBsZS5jb20+CisrCisrICAgICAgICBTdHJpcCBwYXRjaCB2ZXJzaW9uIGZyb20gVEFS
R0VUX01BQ19PU19YX1ZFUlNJT05fTUFKT1Igd2hlbiBidWlsZGluZyBmb3IgbWFjT1MgQmlnIFN1
ciAKKysgICAgICAgIG9yIGxhdGVyCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MjE3NTk0CisrICAgICAgICByZGFyOi8vNzAxODg0OTcKKysKKysgICAg
ICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgorKworKyAgICAgICAgVG8gZW5zdXJlIHN1Y2Nl
c3NmdWwgTWFjIENhdGFseXN0IFdlYktpdCBidWlsZHMsIHN0cmlwIHRoZSBwYXRjaCB2ZXJzaW9u
IGZyb20gCisrICAgICAgICBUQVJHRVRfTUFDX09TX1hfVkVSU0lPTl9NQUpPUiBieSB1c2luZyB0
d28gYGJhc2U6YHMgb24gTUFDT1NYX0RFUExPWU1FTlRfVEFSR0VULgorKworKyAgICAgICAgKiBD
b25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnOgorKworKzIwMjAtMTAtMTEgIEx1bWluZyBZaW4g
IDxsdW1pbmdfeWluQGFwcGxlLmNvbT4KKysKKysgICAgICAgIElnbm9yZSBkZXBsb3ltZW50IHN1
ZmZpeCBhbmQgaWRlbnRpZmllciB3aGVuIGNvbXB1dGluZyBtYWpvciBPUyB2ZXJzaW9uIGZvciBt
YWNPUyAKKysgICAgICAgIEJpZyBTdXIgYW5kIG5ld2VyCisrICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE3NTg0CisrICAgICAgICByZGFyOi8vNzAxNjg0
MjYKKysKKysgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgorKworKyAgICAgICAgU3Rv
cCB1c2luZyBNQUNPU1hfREVQTE9ZTUVOVF9UQVJHRVQ6c3VmZml4OmlkZW50aWZpZXIgdG8gY29t
cHV0ZSBtYWpvciBPUyB2ZXJzaW9ucy4gCisrICAgICAgICBPbmx5IHVzZSB0aGUgZGVwbG95bWVu
dCB0YXJnZXQgYmFzZSBmb3IgbWFjT1MgQmlnIFN1ciBhbmQgbmV3ZXIuIEtlZXAgdGhlIG1hbnVh
bCAKKysgICAgICAgIGRlZmluaXRpb25zIGZvciBsZWdhY3kgdmVyc2lvbnMgb2YgbWFjT1MuCisr
CisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWc6CisrCisrMjAyMC0xMC0w
NyAgS2VpdGggUm9sbGluICA8a3JvbGxpbkBhcHBsZS5jb20+CisrCisrICAgICAgICBVcGRhdGUg
cG9zdC1wcm9jZXNzaW5nIHJ1bGVzIGZvciBoZWFkZXJzIHRvIG5vdCB1bm5lY2Vzc2FyaWx5IGNo
YW5nZSB0aW1lc3RhbXBzCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MjE3MzcxCisrICAgICAgICA8cmRhcjovL3Byb2JsZW0vNjk5OTIyMzA+CisrCisr
ICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KKysKKysgICAgICAgIFVuZGVyIFhDQnVp
bGQsIHRoZSBzY3JpcHRzIGVtcGxveWVkIGluIGN1c3RvbSBidWlsZCBydWxlcyBjYW4gYmUKKysg
ICAgICAgIGludm9rZWQgaW4gaW5ub2N1b3VzIHNpdHVhdGlvbnMuIEEgY29tbW9uIGV4YW1wbGUg
aXMgd2hlbiB0aGUgdXNlciBpcworKyAgICAgICAgYnVpbGRpbmcgZnJvbSB0aGUgY29tbWFuZC1s
aW5lIGFuZCB0aGV5IGNoYW5nZSB0aGUgYG1ha2VgIG91dHB1dCBmcm9tCisrICAgICAgICBzdGRv
dXQgdG8gYSBmaWxlLCBvciB2aWNlLXZlcnNhLiBDaGFuZ2luZyB0aGUgb3V0cHV0IGNoYW5nZXMg
dGhlCisrICAgICAgICBzZXR0aW5nIG9mIHRoZSBDT0xPUl9ESUFHTk9TVElDUyBlbnZpcm9ubWVu
dCB2YXJpYWJsZSwgd2hpY2ggaXMgZW5vdWdoCisrICAgICAgICB0byBjYXVzZSBYQ0J1aWxkIHRv
IHRoaW5rIHNvbWV0aGluZyBpcyBkaWZmZXJlbnQgYW5kIHRoYXQgdGhlIGN1c3RvbQorKyAgICAg
ICAgYnVpbGQgcnVsZSBuZWVkcyB0byBiZSBpbnZva2VkLiBGb3IgdGhlIHNjcmlwdCdzIHBhcnQs
IG5vdGhpbmcKKysgICAgICAgIHNpZ25pZmljYW50IGhhcyBjaGFuZ2VkLCB5ZXQgaXQgcG9zdC1w
cm9jZXNzZXMgdGhlIGhlYWRlciBmaWxlcywKKysgICAgICAgIGNhdXNpbmcgdGhlaXIgbW9kaWZp
Y2F0aW9uIGRhdGVzIHRvIGNoYW5nZSwgY2F1c2luZyBkb3duc3RyZWFtCisrICAgICAgICByZWJ1
aWxkcyB0byBvY2N1ci4KKysKKysgICAgICAgIEZpeCB0aGlzIHByb2JsZW0gYnkgYWRvcHRpbmcg
YW4gYXBwcm9hY2ggdGhhdCBkb2Vzbid0IG1vZGlmeSB0aGUKKysgICAgICAgIHBvc3QtcHJvY2Vz
c2VkIGhlYWRlciBmaWxlcyB1bmxlc3MgdGhlaXIgY29udGVudHMgYWN0dWFsbHkgY2hhbmdlLgor
KworKyAgICAgICAgKiBhZGp1c3QtYW5nbGUtaW5jbHVkZS1wYXRocy1ydWxlOgorKworKzIwMjAt
MTAtMDIgIEtpbW1vIEtpbm51bmVuICA8a2tpbm51bmVuQGFwcGxlLmNvbT4KKysKKysgICAgICAg
IFtpT1MgV0sxXSBDcmFzaGVzIHdoZW4gdXNpbmcgQU5HTEUgV2ViR0wgZnJvbSBhbm90aGVyIHRo
cmVhZAorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIx
NjEwNgorKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzY4NjAyNDUyPgorKworKyAgICAgICAgUmV2
aWV3ZWQgYnkgS2VubmV0aCBSdXNzZWxsLgorKworKyAgICAgICAgQWRkIHR3byBleHRlbnNpb25z
IGZvciBFQUdMIGFuZCBDR0wgYmFja2VuZHMgdG8gZGVjbGFyZSB0aGUKKysgICAgICAgIHVuZGVy
bHlpbmcgcGxhdGZvcm0gY29udGV4dCBiZWluZyAidm9sYXRpbGUiLiBJdCBtZWFucyB0aGF0Cisr
ICAgICAgICB0aGUgdGhyZWFkLWdsb2JhbCBjdXJyZW50IGNvbnRleHQgaXMgYmVpbmcgbW9kaWZp
ZWQgYmVoaW5kCisrICAgICAgICBBTkdMRS4gSWYgQU5HTEUgY29udGV4dCBpcyBtYXJrZWQgdm9s
YXRpbGUgZm9yIGEgcGFydGljdWxhcgorKyAgICAgICAgQVBJLCBpdCB3aWxsIHN5bmMgdGhlIHVu
ZGVybHlpbmcgY29udGV4dCBmb3IgZXZlcnkgRUdMCisrICAgICAgICBmdW5jdGlvbiB0aGF0IG5l
ZWRzIHRoZSBjb250ZXh0LiBNb3N0IGludHVpdGl2ZSB1c2UgaXMKKysgICAgICAgIGZvciB0aGUg
Y2xpZW50IHRvIGNhbGwgZWdsTWFrZUN1cnJlbnQgYmVmb3JlIGNhbGxpbmcgYW55CisrICAgICAg
ICBnbCBmdW5jdGlvbiBpZiB0aGUgY2xpZW50IGtub3ducyB0aGUgcGxhdGZvcm0gc3RhdGUgbWln
aHQKKysgICAgICAgIGJlIGRpcnR5LgorKworKyAgICAgICAgSW1wbGVtZW50IGVnbFJlbGVhc2VU
aHJlYWQgZm9yIEVBR0wgYW5kIENHTCBiYWNrZW5kcy4KKysgICAgICAgIFJlbGVhc2luZyB0aHJl
YWQgd2lsbCB1bnNldCB0aGUgcGxhdGZvcm0gY3VycmVudCBjb250ZXh0LgorKworKyAgICAgICAg
Rml4IGEgYnVnIG9mIG9taXR0aW5nIEVHTF9BTkdMRV9kZXZpY2VfZWFnbCBmcm9tIGJlaW5nCisr
ICAgICAgICBhZHZlcnRpc2VkLgorKworKyAgICAgICAgKiBleHRlbnNpb25zL0VHTF9BTkdMRV9w
bGF0Zm9ybV9hbmdsZV9kZXZpY2VfY29udGV4dF92b2xhdGlsZV9jZ2wudHh0OiBBZGRlZC4KKysg
ICAgICAgICogZXh0ZW5zaW9ucy9FR0xfQU5HTEVfcGxhdGZvcm1fYW5nbGVfZGV2aWNlX2NvbnRl
eHRfdm9sYXRpbGVfZWFnbC50eHQ6IEFkZGVkLgorKyAgICAgICAgKiBpbmNsdWRlL0VHTC9lZ2xl
eHRfYW5nbGUuaDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL0NhcHMuY3BwOgorKyAgICAgICAg
KGVnbDo6RGV2aWNlRXh0ZW5zaW9uczo6Z2V0U3RyaW5ncyBjb25zdCk6CisrICAgICAgICAoZWds
OjpDbGllbnRFeHRlbnNpb25zOjpnZXRTdHJpbmdzIGNvbnN0KToKKysgICAgICAgICogc3JjL2xp
YkFOR0xFL0NhcHMuaDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL0Rpc3BsYXkuY3BwOgorKyAg
ICAgICAgKGVnbDo6RGlzcGxheTo6cHJlcGFyZUZvckNhbGwpOgorKyAgICAgICAgKGVnbDo6RGlz
cGxheTo6cmVsZWFzZVRocmVhZCk6CisrICAgICAgICAoZWdsOjpHZW5lcmF0ZUNsaWVudEV4dGVu
c2lvbnMpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvRGlzcGxheS5oOgorKyAgICAgICAgKiBz
cmMvbGliQU5HTEUvcmVuZGVyZXIvRGlzcGxheUltcGwuY3BwOgorKyAgICAgICAgKHJ4OjpEaXNw
bGF5SW1wbDo6cHJlcGFyZUZvckNhbGwpOgorKyAgICAgICAgKHJ4OjpEaXNwbGF5SW1wbDo6cmVs
ZWFzZVRocmVhZCk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9EaXNwbGF5SW1w
bC5oOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0Rpc3BsYXlDR0wu
aDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9EaXNwbGF5Q0dMLm1t
OgorKyAgICAgICAgKHJ4OjpEaXNwbGF5Q0dMOjppbml0aWFsaXplKToKKysgICAgICAgIChyeDo6
RGlzcGxheUNHTDo6dGVybWluYXRlKToKKysgICAgICAgIChyeDo6RGlzcGxheUNHTDo6cHJlcGFy
ZUZvckNhbGwpOgorKyAgICAgICAgKHJ4OjpEaXNwbGF5Q0dMOjpyZWxlYXNlVGhyZWFkKToKKysg
ICAgICAgIChyeDo6RGlzcGxheUNHTDo6bWFrZUN1cnJlbnQpOgorKyAgICAgICAgKiBzcmMvbGli
QU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EaXNwbGF5RUFHTC5oOgorKyAgICAgICAgKiBzcmMvbGli
QU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EaXNwbGF5RUFHTC5tbToKKysgICAgICAgIChyeDo6RGlz
cGxheUVBR0w6OmluaXRpYWxpemUpOgorKyAgICAgICAgKHJ4OjpEaXNwbGF5RUFHTDo6dGVybWlu
YXRlKToKKysgICAgICAgIChyeDo6RGlzcGxheUVBR0w6OnByZXBhcmVGb3JDYWxsKToKKysgICAg
ICAgIChyeDo6RGlzcGxheUVBR0w6OnJlbGVhc2VUaHJlYWQpOgorKyAgICAgICAgKiBzcmMvbGli
QU5HTEUvdmFsaWRhdGlvbkVHTC5jcHA6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvZW50cnlf
cG9pbnRzX2VnbC5jcHA6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvZW50cnlfcG9pbnRzX2Vn
bF9leHQuY3BwOgorKworKzIwMjAtMDktMjkgIEphbWVzIERhcnBpbmlhbiAgPGpkYXJwaW5pYW5A
Y2hyb21pdW0ub3JnPgorKworKyAgICAgICAgRml4IEVYVF9jb2xvcl9idWZmZXJfaGFsZl9mbG9h
dCBvbiBpT1MKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0yMTcxMDcKKysKKysgICAgICAgIFJldmlld2VkIGJ5IEtlbm5ldGggUnVzc2VsbC4KKysKKysg
ICAgICAgICogc3JjL2xpYkFOR0xFL0NvbnRleHQuY3BwOgorKyAgICAgICAgKGdsOjpDb250ZXh0
OjpnZW5lcmF0ZVN1cHBvcnRlZEV4dGVuc2lvbnMgY29uc3QpOgorKyAgICAgICAgKiBzcmMvbGli
QU5HTEUvcmVuZGVyZXIvZ2wvcmVuZGVyZXJnbF91dGlscy5jcHA6CisrICAgICAgICAocng6Om5h
dGl2ZWdsX2dsOjpHZW5lcmF0ZVRleHR1cmVGb3JtYXRDYXBzKToKKysKKysyMDIwLTA5LTI0ICBE
ZWFuIEphY2tzb24gIDxkaW5vQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFdlYkdMIHNob3VsZCB1
c2UgR0xFUyBpbiBpT1MgYXBwcyBydW5uaW5nIG9uIEFwcGxlIFNpbGljb24KKysgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTY3MjIKKysgICAgICAgIDxy
ZGFyOi8vcHJvYmxlbS82ODk3NjMzNz4KKysKKysgICAgICAgIFJldmlld2VkIGJ5IFRpbSBIb3J0
b24uCisrCisrICAgICAgICBDaGFuZ2UgQU5HTEUgdG8gZHluYW1pY2FsbHkgbG9hZCBlaXRoZXIg
RUFHTCAoT3BlbkdMRVMpIG9yIENHTCAoT3BlbkdMKSBkZXBlbmRpbmcKKysgICAgICAgIG9uIGJv
dGggY29tcGlsZSBhbmQgcnVudGltZSBjb25maWd1cmF0aW9ucy4KKysgICAgICAgICAgICBJbnRl
bCBNYWMgLT4gQ0dMCisrICAgICAgICAgICAgSW50ZWwgTWFjIENhdGFseXN0IC0+IENHTAorKyAg
ICAgICAgICAgIEludGVsIGlPUyBTaW11bGF0b3IgLT4gRUFHTAorKyAgICAgICAgICAgIGlPUyBE
ZXZpY2UgLT4gRUFHTAorKyAgICAgICAgICAgIEFwcGxlIFNpbGljb24gTWFjIC0+IENHTAorKyAg
ICAgICAgICAgIEFwcGxlIFNpbGljb24gTWFjIENhdGFseXN0ICh3aXRoIE1hYyBhcHApIC0+IENH
TAorKyAgICAgICAgICAgIEFwcGxlIFNpbGljb24gTWFjIENhdGFseXN0ICh3aXRoIGlPUyBhcHAp
IC0+IEVBR0wKKysKKysgICAgICAgIFRoZSB0cmlja2llc3QgYml0IGlzIEFwcGxlIFNpbGljb24g
TWFjIENhdGFseXN0LCB3aGljaCBkZXBlbmRzIG9uIHRoZQorKyAgICAgICAgdHlwZSBvZiB0aGUg
YXBwbGljYXRpb24gaXQgaXMgYXR0ZW1wdGluZyB0byBydW4uIEluIHRoYXQgY2FzZSBBTkdMRSBt
dXN0IGNvbXBpbGUKKysgICAgICAgIGJvdGggdGhlIENHTCBhbmQgRUFHTCBpbnRlcmZhY2VzIGFu
ZCB0aGVuIHBpY2sgb25lIHRvIHVzZSBhZnRlciBsYXVuY2guCisrCisrICAgICAgICAqIEFOR0xF
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6IEFkZCBuZXcgZmlsZXMuCisrCisrICAgICAgICAq
IENvbmZpZ3VyYXRpb25zL0FOR0xFLWR5bmFtaWMueGNjb25maWc6IFJlbW92ZSBhbGwgdGhlIE9w
ZW5HTCogbGlua2luZy4KKysgICAgICAgICogQ29uZmlndXJhdGlvbnMvQU5HTEUtc3RhdGljLnhj
Y29uZmlnOgorKworKyAgICAgICAgKiBHTEVTdjIuY21ha2U6IE5ldyBmaWxlcy4KKysKKysgICAg
ICAgICogc3JjL2NvbW1vbi9wbGF0Zm9ybS5oOiBOZXcgZGVmaW5pdGlvbnMgZm9yIENQVSB0eXBl
IG9uIEFwcGxlIFN5c3RlbXMuCisrCisrICAgICAgICAqIHNyYy9ncHVfaW5mb191dGlsL1N5c3Rl
bUluZm8uaDogU3BsaXQgU3lzdGVtSW5mbyBmb3IgQXBwbGUgaW50byB0d28KKysgICAgICAgIGZp
bGVzLCBmb3IgaU9TIGFuZCBNYWMuIEFkZGVkIGEgZmllbGQgZm9yIGlzaU9TQXBwT25NYWMgdGhh
dCB3aWxsIG9ubHkKKysgICAgICAgIGJlIHRydWUgd2hlbiBydW5uaW5nIGFuIGlPUyBiaW5hcnkg
b24gQXBwbGUgU2lsaWNvbi4KKysgICAgICAgICogc3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5m
b19hcHBsZS5tbTogQWRkZWQuIERlY2lkZXMgd2hpY2ggU3lzdGVtSW5mbworKyAgICAgICAgdG8g
Y2FsbC4KKysgICAgICAgIChhbmdsZTo6R2V0U3lzdGVtSW5mbyk6CisrICAgICAgICAqIHNyYy9n
cHVfaW5mb191dGlsL1N5c3RlbUluZm9faW9zLmNwcDoKKysgICAgICAgIChhbmdsZTo6R2V0U3lz
dGVtSW5mb19pb3MpOgorKyAgICAgICAgKGFuZ2xlOjpHZXRTeXN0ZW1JbmZvKTogRGVsZXRlZC4K
KysgICAgICAgICogc3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mb19tYWNvcy5tbToKKysgICAg
ICAgIChhbmdsZTo6R2V0U3lzdGVtSW5mb19tYWMpOgorKyAgICAgICAgKGFuZ2xlOjpHZXRTeXN0
ZW1JbmZvKTogRGVsZXRlZC4KKysKKysgICAgICAgICogc3JjL2xpYkFOR0xFL0NhcHMuY3BwOiBD
YW4gbm8gbG9uZ2VyIGp1c3QgY2hlY2sgZm9yIFBMQVRGT1JNX0lPUy4gVGhpcworKyAgICAgICAg
bWlnaHQgc3RpbGwgbmVlZCBhIHJ1bnRpbWUgY2hlY2suCisrICAgICAgICAoZ2w6OkRldGVybWlu
ZURlcHRoVGV4dHVyZUFOR0xFU3VwcG9ydCk6CisrICAgICAgICAoZ2w6OkRldGVybWluZURlcHRo
VGV4dHVyZU9FU1N1cHBvcnQpOgorKworKyAgICAgICAgKiBzcmMvbGliQU5HTEUvRGlzcGxheS5j
cHA6IFRoaXMgaXMgdGhlIG1haW4gaW5pdGlhbGl6YXRpb24gcG9pbnQgZm9yCisrICAgICAgICBB
TkdMRSwgd2hpY2ggZGVjaWRlcyBhdCBjb21waWxlL3J1bnRpbWUgd2hpY2ggdmFyaWFudCBvZiBE
aXNwbGF5IHRvCisrICAgICAgICBjcmVhdGUuCisrCisrICAgICAgICAqIHNyYy9saWJBTkdMRS9m
b3JtYXR1dGlscy5jcHA6IEFkZCB0aGUgY29ycmVjdCBmb3JtYXRzLgorKyAgICAgICAgKGdsOjpC
dWlsZEludGVybmFsRm9ybWF0SW5mb01hcCk6CisrCisrICAgICAgICAqIHNyYy9saWJBTkdMRS9y
ZW5kZXJlci9nbC9Tb2Z0TGlua2luZ19hcHBsZS5oOiBBZGRlZC4gTWFjcm9zIHRvIGhlbHAgc29m
dC1saW5rCisrICAgICAgICBmdW5jdGlvbnMgYW5kIE9iakMgY2xhc3Nlcy4KKysgICAgICAgICog
c3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9DR0xGdW5jdGlvbnMuY3BwOiBBZGRlZC4gV2hl
cmUgd2Ugc29mdC1saW5rIGFsbAorKyAgICAgICAgdGhlIE9wZW5HTC9DR0wgQVBJLgorKyAgICAg
ICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0NHTEZ1bmN0aW9ucy5oOiBBZGRlZC4K
KysKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9EaXNwbGF5Q0dMLm1t
OiBVc2UgdGhlIHNvZnQtbGlua2VkIG1ldGhvZHMuCisrICAgICAgICAqIHNyYy9saWJBTkdMRS9y
ZW5kZXJlci9nbC9jZ2wvSU9TdXJmYWNlU3VyZmFjZUNHTC5jcHA6CisrICAgICAgICAqIHNyYy9s
aWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvV2luZG93U3VyZmFjZUNHTC5oOgorKyAgICAgICAgKiBz
cmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL1dpbmRvd1N1cmZhY2VDR0wubW06IFJlbmFtZSBX
ZWJTd2FwTGF5ZXIgdG8gV2ViU3dhcExheWVyQ0dMCisrICAgICAgICBvdGhlcndpc2UgaXQgY2xh
c2hlcyB3aXRoIHRoZSBFQUdMIHZlcnNpb24uCisrICAgICAgICAocng6OldpbmRvd1N1cmZhY2VD
R0w6OmluaXRpYWxpemUpOgorKyAgICAgICAgKC1bV2ViU3dhcExheWVyIGluaXRXaXRoU2hhcmVk
U3RhdGU6d2l0aENvbnRleHQ6d2l0aEZ1bmN0aW9uczpdKTogRGVsZXRlZC4KKysgICAgICAgICgt
W1dlYlN3YXBMYXllciBjb3B5Q0dMUGl4ZWxGb3JtYXRGb3JEaXNwbGF5TWFzazpdKTogRGVsZXRl
ZC4KKysgICAgICAgICgtW1dlYlN3YXBMYXllciBjb3B5Q0dMQ29udGV4dEZvclBpeGVsRm9ybWF0
Ol0pOiBEZWxldGVkLgorKyAgICAgICAgKC1bV2ViU3dhcExheWVyIGNhbkRyYXdJbkNHTENvbnRl
eHQ6cGl4ZWxGb3JtYXQ6Zm9yTGF5ZXJUaW1lOmRpc3BsYXlUaW1lOl0pOiBEZWxldGVkLgorKyAg
ICAgICAgKC1bV2ViU3dhcExheWVyIGRyYXdJbkNHTENvbnRleHQ6cGl4ZWxGb3JtYXQ6Zm9yTGF5
ZXJUaW1lOmRpc3BsYXlUaW1lOl0pOiBEZWxldGVkLgorKworKyAgICAgICAgKiBzcmMvbGliQU5H
TEUvcmVuZGVyZXIvZ2wvZWFnbC9EZXZpY2VFQUdMLmNwcDogU2ltaWxhciBjaGFuZ2VzIHRvIHRo
ZSBDR0wgaW1wbGVtZW50YXRpb24uCisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9n
bC9lYWdsL0RldmljZUVBR0wuaDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2ds
L2VhZ2wvRGlzcGxheUVBR0wuaDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2ds
L2VhZ2wvRGlzcGxheUVBR0wubW06CisrICAgICAgICAocng6OkRpc3BsYXlFQUdMOjppbml0aWFs
aXplKToKKysgICAgICAgIChyeDo6RGlzcGxheUVBR0w6OnRlcm1pbmF0ZSk6CisrICAgICAgICAo
cng6OldvcmtlckNvbnRleHRFQUdMOjp+V29ya2VyQ29udGV4dEVBR0wpOgorKyAgICAgICAgKHJ4
OjpXb3JrZXJDb250ZXh0RUFHTDo6bWFrZUN1cnJlbnQpOgorKyAgICAgICAgKHJ4OjpXb3JrZXJD
b250ZXh0RUFHTDo6dW5tYWtlQ3VycmVudCk6CisrICAgICAgICAocng6OkRpc3BsYXlFQUdMOjpj
cmVhdGVXb3JrZXJDb250ZXh0KToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2ds
L2VhZ2wvRUFHTEZ1bmN0aW9ucy5oOiBBZGRlZC4KKysgICAgICAgICogc3JjL2xpYkFOR0xFL3Jl
bmRlcmVyL2dsL2VhZ2wvRUFHTEZ1bmN0aW9ucy5tbTogQWRkZWQuCisrICAgICAgICAqIHNyYy9s
aWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0lPU3VyZmFjZVN1cmZhY2VFQUdMLm1tOgorKyAgICAg
ICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9QYnVmZmVyU3VyZmFjZUVBR0wuY3Bw
OgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9SZW5kZXJlckVBR0wu
Y3BwOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9XaW5kb3dTdXJm
YWNlRUFHTC5oOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9XaW5k
b3dTdXJmYWNlRUFHTC5tbToKKysgICAgICAgICgtW1dlYlN3YXBMYXllckVBR0wgZGlzcGxheV0p
OgorKyAgICAgICAgKHJ4OjpXaW5kb3dTdXJmYWNlRUFHTDo6aW5pdGlhbGl6ZSk6CisrICAgICAg
ICAoLVtXZWJTd2FwTGF5ZXIgaW5pdFdpdGhTaGFyZWRTdGF0ZTp3aXRoQ29udGV4dDp3aXRoRnVu
Y3Rpb25zOl0pOiBEZWxldGVkLgorKyAgICAgICAgKC1bV2ViU3dhcExheWVyIGRpc3BsYXldKTog
RGVsZXRlZC4KKysKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL3JlbmRlcmVy
Z2xfdXRpbHMuY3BwOiBSdW50aW1lIGNoZWNrLgorKyAgICAgICAgKHJ4OjpuYXRpdmVnbF9nbDo6
R2VuZXJhdGVDYXBzKToKKysKKysyMDIwLTA5LTI1ICBKYW1lcyBEYXJwaW5pYW4gIDxqZGFycGlu
aWFuQGNocm9taXVtLm9yZz4KKysKKysgICAgICAgIFN1cHBvcnQgRVhUX2Zsb2F0X2JsZW5kCisr
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE2OTQ5Cisr
CisrICAgICAgICBSZXZpZXdlZCBieSBLZW5uZXRoIFJ1c3NlbGwuCisrCisrICAgICAgICAqIHNy
Yy9saWJBTkdMRS9yZW5kZXJlci9nbC9yZW5kZXJlcmdsX3V0aWxzLmNwcDoKKysgICAgICAgIChy
eDo6bmF0aXZlZ2xfZ2w6OkdlbmVyYXRlQ2Fwcyk6CisrCisrMjAyMC0wOS0yNCAgS2ltbW8gS2lu
bnVuZW4gIDxra2lubnVuZW5AYXBwbGUuY29tPgorKworKyAgICAgICAgUkVHUkVTU0lPTjogVGV4
dHVyZXMgRmFpbCB0byBSZW5kZXIgaW4gV2ViR0wgZnJvbSBITFMgU3RyZWFtIFtpT1MgMTRdCisr
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE1OTA4Cisr
ICAgICAgICA8cmRhcjovL3Byb2JsZW0vNjgwMDA5NjI+CisrCisrICAgICAgICBSZXZpZXdlZCBi
eSBEZWFuIEphY2tzb24uCisrCisrICAgICAgICBEaXNhYmxlIEFOR0xFIHdvcmtlcnMgdW50aWwg
RUFHTCBpbXBsZW1lbnRhdGlvbiBpcyBtb3JlIGNvbXBsZXRlLgorKyAgICAgICAgQ3VycmVudCBp
bXBsZW1lbnRhdGlvbiBmYWlscyB0byBjb21waWxlIGFueSBzaGFkZXIsIHNpbmNlIHRoZQorKyAg
ICAgICAgY29tcGlsYXRpb24gaGFwcGVucyBpbiB0aGUgd29ya2VyIHRocmVhZCBhbmQgd29ya2Vy
IEVBR0wgY29udGV4dAorKyAgICAgICAgd2hpY2ggZG9lcyBub3QgdXNlIHRoZSBzYW1lIHNoYXJl
Z3JvdXAgYXMgdGhlIG1haW4gY29udGV4dC4KKysgICAgICAgIFRoZSBzaGFkZXIgb2JqZWN0cyBh
cmUgY3JlYXRlZCBpbiB0aGUgbWFpbiBjb250ZXh0IGJ1dCB0aGUgc2hhZGVyCisrICAgICAgICBz
b3VyY2Ugc2V0dGluZyBhbmQgY29tcGlsYXRpb24gaGFwcGVucyBpbiB0aGUgd29ya2VyIGNvbnRl
eHQuCisrICAgICAgICBFQUdMIG5lZWRzIGEgZmx1c2ggYmV0d2VlbiBzdGF0ZSBjaGFuZ2VzLCBh
bmQgYWRkaW5nIHRoYXQKKysgICAgICAgIGNvcnJlY3RseSBpcyBhIGJpZ2dlciBjaGFuZ2UgdG8g
YmUgZG9uZSBsYXRlci4KKysKKysgICAgICAgIFVzZSBzaXplZCBmb3JtYXRzIHdoZW4gY2FsbGlu
ZyBbRUFHTENvbnRleHQgLXRleEltYWdlSU9TdXJmYWNlXQorKyAgICAgICAgZnJvbSBFR0xfQU5H
TEVfaW9zdXJmYWNlX2NsaWVudF9idWZmZXIgY29kZS4gVGhlIHRleEltYWdlSU9TdXJmYWNlCisr
ICAgICAgICBhY2NlcHRzIHBhcmFtZXRlcnMgd2l0aCBnbFRleEltYWdlMkQgbG9naWMuIE9uIEVT
Mywgc29tZSBvZiB0aGUKKysgICAgICAgIGludGVybmFsIGZvcm1hdHMgbXVzdCBiZSBzaXplZCBm
b3JtYXRzLiBUaGUgRUFHTENvbnRleHQgaW5zdGFudGlhdGVkCisrICAgICAgICBieSBBTkdMRSBp
cyBFUzMsIGV2ZW4gaWYgdGhlIEFOR0xFIGNvbnRleHQgd291bGQgYmUgRVMyLgorKworKyAgICAg
ICAgTm8gdGVzdHMgYWRkZWQgc2luY2UgdGhpcyBzaG91bGQgYmUgY2F1Z2h0IHdpdGggdGhlIG1h
bnkgdmlkZW8KKysgICAgICAgIHJlbGF0ZWQgdGVzdHMuIEl0J3MgdW5jbGVhciB3aHkgdGhpcyBp
cyBub3QgdGhlIGNhc2UgLS0gYXQKKysgICAgICAgIGxlYXN0IG9uIHJlYWwgaHcuIFRoaXMgaXMg
dG8gYmUgaW52ZXN0aWdhdGVkIGxhdGVyLCB0b28uCisrCisrICAgICAgICAqIHNyYy9saWJBTkdM
RS9yZW5kZXJlci9kcml2ZXJfdXRpbHMuaDoKKysgICAgICAgIChyeDo6SXNJT1MpOgorKyAgICAg
ICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9JT1N1cmZhY2VTdXJmYWNlRUFHTC5t
bToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL3JlbmRlcmVyZ2xfdXRpbHMu
Y3BwOgorKyAgICAgICAgKHJ4OjpuYXRpdmVnbF9nbDo6SW5pdGlhbGl6ZUZlYXR1cmVzKToKKysK
KysyMDIwLTA5LTExICBKYW1lcyBEYXJwaW5pYW4gIDxqZGFycGluaWFuQGNocm9taXVtLm9yZz4K
KysKKysgICAgICAgIFtXZWJHTDJdIFN1cHBvcnQgRVhUX2NvbG9yX2J1ZmZlcl9oYWxmX2Zsb2F0
IG9uIFdlYkdMIDIuMCBjb250ZXh0cworKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIxNjAxMAorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgS2VubmV0aCBS
dXNzZWxsLgorKworKyAgICAgICAgKiBzcmMvbGliQU5HTEUvZm9ybWF0dXRpbHMuY3BwOgorKyAg
ICAgICAgKGdsOjpTaXplZEhhbGZGbG9hdFJHVGV4dHVyZUF0dGFjaG1lbnRTdXBwb3J0KToKKysg
ICAgICAgIChnbDo6U2l6ZWRIYWxmRmxvYXRSR0JUZXh0dXJlQXR0YWNobWVudFN1cHBvcnQpOgor
KyAgICAgICAgKGdsOjpTaXplZEhhbGZGbG9hdFJHQlJlbmRlcmJ1ZmZlclN1cHBvcnQpOgorKyAg
ICAgICAgKGdsOjpTaXplZEhhbGZGbG9hdFJHQkFUZXh0dXJlQXR0YWNobWVudFN1cHBvcnQpOgor
KworKzIwMjAtMDktMDMgIEtpbW1vIEtpbm51bmVuICA8a2tpbm51bmVuQGFwcGxlLmNvbT4KKysK
KysgICAgICAgIE1hcmsgdW5pZm9ybSBzYW1wbGVycyBpbiBhbiBhcnJheSB1bnVzZWQgcGVyIGVs
ZW1lbnQKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MTU2MzAKKysKKysgICAgICAgIFJldmlld2VkIGJ5IERlYW4gSmFja3Nvbi4KKysKKysgICAgICAg
IE1hcmsgdW5pZm9ybSBzYW1wbGVycyBpbiBhbiB1bmlmb3JtIHNhbXBsZXIgYXJyYXkgdW51c2Vk
IHBlcgorKyAgICAgICAgZWxlbWVudCwgaWYgZHJpdmVyIGluZm9ybXMgdGhlIGVsZW1lbnQgYmVp
bmcgdW51c2VkLgorKyAgICAgICAgQmVmb3JlLCBvbmUgZWxlbWVudCB3b3VsZCBtYXJrIHRoZSB3
aG9sZSBhcnJheSBhcyBiZWluZworKyAgICAgICAgdW51c2VkLCBhbmQgc2FtcGxlcnMgdGhhdCB3
ZXJlIGluIHVzZSB3b3VsZCBub3QgYmUgdXBkYXRlZC4KKysKKysgICAgICAgICogc3JjL2xpYkFO
R0xFL0NvbnRleHQuY3BwOgorKyAgICAgICAgKGdsOjpTdGF0ZUNhY2hlOjp1cGRhdGVBY3RpdmVJ
bWFnZVVuaXRJbmRpY2VzKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL1Byb2dyYW0uY3BwOgor
KyAgICAgICAgKGdsOjpTYW1wbGVyQmluZGluZzo6U2FtcGxlckJpbmRpbmcpOgorKyAgICAgICAg
KGdsOjpJbWFnZUJpbmRpbmc6OkltYWdlQmluZGluZyk6CisrICAgICAgICAoZ2w6OlByb2dyYW06
OmdldFNhbXBsZXJVbmlmb3JtQmluZGluZyBjb25zdCk6CisrICAgICAgICAoZ2w6OlByb2dyYW06
OmdldEltYWdlVW5pZm9ybUJpbmRpbmcgY29uc3QpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjps
aW5rU2FtcGxlckFuZEltYWdlQmluZGluZ3MpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjp1cGRh
dGVTYW1wbGVyVW5pZm9ybSk6CisrICAgICAgICAoZ2w6OlByb2dyYW06OnNlcmlhbGl6ZSBjb25z
dCk6CisrICAgICAgICAoZ2w6OlByb2dyYW06OmRlc2VyaWFsaXplKToKKysgICAgICAgICogc3Jj
L2xpYkFOR0xFL1Byb2dyYW1FeGVjdXRhYmxlLmNwcDoKKysgICAgICAgIChnbDo6UHJvZ3JhbUV4
ZWN1dGFibGU6OnVwZGF0ZUFjdGl2ZVNhbXBsZXJzKToKKysgICAgICAgIChnbDo6UHJvZ3JhbUV4
ZWN1dGFibGU6OnVwZGF0ZUFjdGl2ZUltYWdlcyk6CisrICAgICAgICAoZ2w6OlByb2dyYW1FeGVj
dXRhYmxlOjpzZXRTYW1wbGVyVW5pZm9ybVRleHR1cmVUeXBlQW5kRm9ybWF0KToKKysgICAgICAg
ICogc3JjL2xpYkFOR0xFL1Byb2dyYW1FeGVjdXRhYmxlLmg6CisrICAgICAgICAqIHNyYy9saWJB
TkdMRS9yZW5kZXJlci9nbC9Qcm9ncmFtR0wuY3BwOgorKyAgICAgICAgKHJ4OjpQcm9ncmFtR0w6
Om1hcmtVbnVzZWRVbmlmb3JtTG9jYXRpb25zKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3Jl
bmRlcmVyL21ldGFsL1Byb2dyYW1NdGwubW06CisrICAgICAgICAocng6OlByb2dyYW1NdGw6OnVw
ZGF0ZVRleHR1cmVzKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9Q
cm9ncmFtRXhlY3V0YWJsZVZrLmNwcDoKKysgICAgICAgIChyeDo6UHJvZ3JhbUV4ZWN1dGFibGVW
azo6dXBkYXRlSW1hZ2VzRGVzY3JpcHRvclNldCk6CisrICAgICAgICAocng6OlByb2dyYW1FeGVj
dXRhYmxlVms6OnVwZGF0ZVRleHR1cmVzRGVzY3JpcHRvclNldCk6CisrICAgICAgICAqIHNyYy90
ZXN0cy9nbF90ZXN0cy9Db21wdXRlU2hhZGVyVGVzdC5jcHA6CisrICAgICAgICAqIHNyYy90ZXN0
cy9nbF90ZXN0cy9Vbmlmb3JtVGVzdC5jcHA6CisrCisrMjAyMC0wOS0wMSAgRGF2aWQgS2lsemVy
ICA8ZGRraWx6ZXJAYXBwbGUuY29tPgorKworKyAgICAgICAgW0FOR0xFXSBJbnRlcm5hbEZvcm1h
dDo6YmxlbmRTdXBwb3J0IGlzIHVuaW5pdGlhbGl6ZWQgYnkgY29uc3RydWN0b3IKKysgICAgICAg
IDxodHRwczovL3dlYmtpdC5vcmcvYi8yMTYwNTM+CisrICAgICAgICA8cmRhcjovL3Byb2JsZW0v
NjgxNjYwMzI+CisrCisrICAgICAgICBSZXZpZXdlZCBieSBLZW5uZXRoIFJ1c3NlbGwuCisrCisr
ICAgICAgICAqIGNoYW5nZXMuZGlmZjogQWRkIHRoaXMgcGF0Y2guCisrICAgICAgICAqIHNyYy9s
aWJBTkdMRS9mb3JtYXR1dGlscy5jcHA6CisrICAgICAgICAoZ2w6OkludGVybmFsRm9ybWF0OjpJ
bnRlcm5hbEZvcm1hdCk6CisrICAgICAgICAtIEluaXRpYWxpemUgYmxlbmRTdXBwb3J0IHRvIE5l
dmVyU3VwcG9ydGVkLgorKworKzIwMjAtMDgtMzEgIEphbWVzIERhcnBpbmlhbiAgPGpkYXJwaW5p
YW5AY2hyb21pdW0ub3JnPgorKworKyAgICAgICAgSW1wbGVtZW50IFdFQkdMX2NvbXByZXNzZWRf
dGV4dHVyZV9zM3RjX3NyZ2IgZXh0ZW5zaW9uCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE1OTczCisrCisrICAgICAgICBSZXZpZXdlZCBieSBEZWFu
IEphY2tzb24uCisrCisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9mb3JtYXR1
dGlsc2dsLmNwcDoKKysgICAgICAgIChyeDo6bmF0aXZlZ2w6OkV4dEFuZFZlcnNpb25PckV4dCk6
CisrICAgICAgICAocng6Om5hdGl2ZWdsOjpCdWlsZEludGVybmFsRm9ybWF0SW5mb01hcCk6Cisr
CisrMjAyMC0wOC0xMiAgS2VpdGggUm9sbGluICA8a3JvbGxpbkBhcHBsZS5jb20+CisrCisrICAg
ICAgICBSZW1vdmUgdGhlIG5lZWQgZm9yIGRlZmluaW5nIFVTRV9ORVdfQlVJTERfU1lTVEVNCisr
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE1NDM5Cisr
CisrICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KKysKKysgICAgICAgIFdoZW4gYnVp
bGRpbmcgV2ViS2l0IGZvciBYQ0J1aWxkLCB3ZSBjdXJyZW50bHkgcmVxdWlyZSB0aGF0IHRoZQor
KyAgICAgICAgZXh0ZXJuYWwgYnVpbGQgc3lzdGVtIChzdWNoIGFzIHRoZSBNYWtlZmlsZSwgYnVp
bGQtd2Via2l0LCBldGMuKQorKyAgICAgICAgZGVmaW5lcyB0aGUgVVNFX05FV19CVUlMRF9TWVNU
RU09WUVTIGJ1aWxkIHNldHRpbmcuIFRoaXMgYnVpbGQgc2V0dGluZworKyAgICAgICAgY29udHJv
bHMgcGFydHMgb2Ygb3VyIGJ1aWxkIGluc3RydWN0aW9ucyB0aGF0IGFyZSBzZW5zaXRpdmUgdG8g
d2hlbgorKyAgICAgICAgWENCdWlsZCBvciB0aGUgTGVnYWN5IGJ1aWxkIHN5c3RlbSBhcmUgYmVp
bmcgdXNlZC4gTm90YWJseSwgd2UgbmVlZCB0bworKyAgICAgICAga25vdyB3aGVuIHRvIHVzZSBv
dXIgY3VzdG9tIOKAnGNvcHkgYW5kIG1vZGlmeeKAnSBzY3JpcHRzIHdpdGggY29weWluZworKyAg
ICAgICAgY2VydGFpbiBoZWFkZXIgZmlsZXMgKHVzZWQgd2l0aCB0aGUgTGVnYWN5IGJ1aWxkIHN5
c3RlbSkgdnMuIHVzaW5nIHRoZQorKyAgICAgICAgZW5oYW5jZWQgQ29weSBIZWFkZXJzIGJ1aWxk
IHBoYXNlIHRoYXTigJlzIGVuYWJsZWQgd2l0aAorKyAgICAgICAgQVBQTFlfUlVMRVNfSU5fQ09Q
WV9IRUFERVJTPVlFUyAoaW50cm9kdWNlZCB3aXRoIGFuZCB1c2VkIGJ5IFhDQnVpbGQpLgorKyAg
ICAgICAgVGhlIGNob2ljZSBvZiB3aGljaCBtZXRob2QgdG8gY29weSBoZWFkZXJzIGlzIHVzZWQg
aXMgY29udHJvbGxlZCBieQorKyAgICAgICAgVVNFX05FV19CVUlMRF9TWVNURU0uCisrCisrICAg
ICAgICBUaGVyZSBpcyBubyBidWlsdC1pbiBidWlsZCBzZXR0aW5nIHRoYXQgd2UgY2FuIHByb2Jl
IHRvIGhlbHAgdXMKKysgICAgICAgIGRldGVybWluZSB3aGljaCBhcHByb2FjaCB0byB0YWtlIHdo
ZW4gY29weWluZyBhbmQgbW9kaWZ5aW5nIGhlYWRlcnMsCisrICAgICAgICB3aGljaCBpcyB3aHkg
d2UgbmVlZCB0byBkZWZpbmUgVVNFX05FV19CVUlMRF9TWVNURU0gb3Vyc2VsdmVzLiBCdXQgaXQK
KysgICAgICAgIHR1cm5zIG91dCB0aGF0IHdlIGNhbiAqZGV0ZWN0KiB3aGljaCBidWlsZCBzeXN0
ZW0gaXMgYmVpbmcgdXNlZCBieQorKyAgICAgICAgdGFraW5nIGFkdmFudGFnZSBvZiBhIHN1YnRs
ZSBkaWZmZXJlbmNlIGJldHdlZW4gdGhlIHR3byBzeXN0ZW1zLiBBcworKyAgICAgICAgbm90ZWQg
aW46CisrCisrICAgICAgICAgICAgaHR0cHM6Ly9kZXZlbG9wZXIuYXBwbGUuY29tL2RvY3VtZW50
YXRpb24veGNvZGUtcmVsZWFzZS1ub3Rlcy9idWlsZC1zeXN0ZW0tcmVsZWFzZS1ub3Rlcy1mb3It
eGNvZGUtMTAKKysKKysgICAgICAgICAgICDigJxXaGVuIGFuIC54Y2NvbmZpZyBmaWxlIGNvbnRh
aW5zIG11bHRpcGxlIGFzc2lnbm1lbnRzIG9mIHRoZSBzYW1lCisrICAgICAgICAgICAgIGJ1aWxk
IHNldHRpbmcsIGxhdGVyIGFzc2lnbm1lbnRzIHVzaW5nICQoaW5oZXJpdGVkKSBvcgorKyAgICAg
ICAgICAgICAkKDxzZXR0aW5nX25hbWU+KSB3aWxsIGluaGVyaXQgZnJvbSBlYXJsaWVyIGFzc2ln
bm1lbnRzIGluIHRoZQorKyAgICAgICAgICAgICAueGNjb25maWcuIFRoZSBsZWdhY3kgYnVpbGQg
c3lzdGVtIGNhdXNlZCBldmVyeSB1c2Ugb2YKKysgICAgICAgICAgICAgJChpbmhlcml0ZWQpIG9y
ICQoPHNldHRpbmdfbmFtZT4pIHNraXAgYW55IG90aGVyIHZhbHVlcyBkZWZpbmVkCisrICAgICAg
ICAgICAgIHdpdGhpbiB0aGUgLnhjY29uZmlnLuKAnQorKworKyAgICAgICAgVGhpcyBkaWZmZXJl
bmNlIGNhbiBiZSBleHBsb2l0ZWQgYXMgZm9sbG93czoKKysKKysgICAgICAgICAgICBXS19XSElD
SF9CVUlMRF9TWVNURU0gPSBub3RfCisrICAgICAgICAgICAgV0tfV0hJQ0hfQlVJTERfU1lTVEVN
ID0gJChpbmhlcml0ZWQpbGVnYWN5CisrICAgICAgICAgICAgV0tfVVNFX05FV19CVUlMRF9TWVNU
RU0gPSAkKFdLX1VTRV9ORVdfQlVJTERfU1lTVEVNXyQoV0tfV0hJQ0hfQlVJTERfU1lTVEVNKSkK
KysgICAgICAgICAgICBXS19VU0VfTkVXX0JVSUxEX1NZU1RFTV9sZWdhY3kgPSBOTworKyAgICAg
ICAgICAgIFdLX1VTRV9ORVdfQlVJTERfU1lTVEVNX25vdF9sZWdhY3kgPSBZRVMKKysKKysgICAg
ICAgIFdlIGNhbiB0aGVuIHVzZSBXS19VU0VfTkVXX0JVSUxEX1NZU1RFTSB3aGVyZSB3ZSB1c2Vk
IHRvIHVzZSB0aGUKKysgICAgICAgIGV4dGVybmFsbHktZGVmaW5lZCBVU0VfTkVXX0JVSUxEX1NZ
U1RFTS4KKysKKysgICAgICAgICogQU5HTEUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKysg
ICAgICAgICogQ29uZmlndXJhdGlvbnMvQU5HTEUtZHluYW1pYy54Y2NvbmZpZzoKKysgICAgICAg
ICogQ29uZmlndXJhdGlvbnMvQU5HTEUtc3RhdGljLnhjY29uZmlnOgorKyAgICAgICAgKiBDb25m
aWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnOgorKworKzIwMjAtMDgtMDcgIERlYW4gSmFja3NvbiAg
PGRpbm9AYXBwbGUuY29tPgorKworKyAgICAgICAgQU5HTEU6IE5vIG5lZWQgdG8gY2hlY2sgZm9y
IENhdGFseXN0IGluIHRoZSBpT1MgYnVpbGQKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0yMTUyNDkKKysgICAgICAgIDxyZGFyOi8vcHJvYmxlbS82NjY1
NTQ3OD4KKysKKysgICAgICAgIFJldmlld2VkIGJ5IFRpbSBIb3J0b24uCisrCisrICAgICAgICBU
aGUgRGlzcGxheUVBR0wgY2xhc3MgaXMgbmV2ZXIgdXNlZCBmb3IgQ2F0YWx5c3QsIHNvIGRvZXNu
J3QKKysgICAgICAgIG5lZWQgdG8gaGFuZGxlIGl0LgorKworKyAgICAgICAgKiBzcmMvbGliQU5H
TEUvcmVuZGVyZXIvZ2wvZWFnbC9EaXNwbGF5RUFHTC5tbToKKysgICAgICAgIChyeDo6RGlzcGxh
eUVBR0w6OmdlbmVyYXRlQ29uZmlncyk6CisrCisrMjAyMC0wOC0wNSAgVGltIEhvcnRvbiAgPHRp
bW90aHlfaG9ydG9uQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFJlbW92ZSBhbGwgcmVmZXJlbmNl
cyB0byBub24tZXhpc3RlbnQgMTAuMTYKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMTUyMDIKKysKKysgICAgICAgIFJldmlld2VkIGJ5IFdlbnNvbiBI
c2llaC4KKysKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZzoKKysgICAg
ICAgICogQ29uZmlndXJhdGlvbnMvRGVidWdSZWxlYXNlLnhjY29uZmlnOgorKyAgICAgICAgKiBD
b25maWd1cmF0aW9ucy9WZXJzaW9uLnhjY29uZmlnOgorKyAgICAgICAgKiBDb25maWd1cmF0aW9u
cy9XZWJLaXRUYXJnZXRDb25kaXRpb25hbHMueGNjb25maWc6CisrCisrMjAyMC0wNy0yOSAgTWlj
aGFlbCBDYXRhbnphcm8gIDxtY2F0YW56YXJvQGdub21lLm9yZz4KKysKKysgICAgICAgIFtHVEtd
IDIuMjkuNCBmYWlscyB0byBsaW5rIG9uIGFybXY3aGwKKysgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTQ5MzQKKysKKysgICAgICAgIFJldmlld2VkIGJ5
IENhcmxvcyBBbGJlcnRvIExvcGV6IFBlcmV6LgorKworKyAgICAgICAgTGluayBBTkdMRSB0byB3
aXRoIC1sZGwKKysKKysgICAgICAgICogQ01ha2VMaXN0cy50eHQ6CisrCisrMjAyMC0wNy0yOSAg
S2VubmV0aCBSdXNzZWxsICA8a2JyQGNocm9taXVtLm9yZz4KKysKKysgICAgICAgIFJvbGwgQU5H
TEUgdG8gMjAyMC0wNy0yOAorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIxNDg5NworKworKyAgICAgICAgUmV2aWV3ZWQgYnkgQWxleCBDaHJpc3RlbnNl
bi4KKysKKysgICAgICAgIFJvbGwgdG8gY3VycmVudCBBTkdMRSByZXZpc2lvbi4gTGFyZ2UgQ2hh
bmdlTG9nIGJlbG93IGhhcyBiZWVuCisrICAgICAgICB0cnVuY2F0ZWQgZXhjZXB0IGZvciBhIGZl
dyBzaWduaWZpY2FudCBmaWxlcy4KKysKKysgICAgICAgIEFkZCBkZXBlbmRlbmN5IG9uIHpsaWIg
d3JhcHBlciBpbiB0aGlyZF9wYXJ0eS96bGliL2dvb2dsZSBmb3IgYm90aAorKyAgICAgICAgWGNv
ZGUgYW5kIENNYWtlIGJ1aWxkcy4gU21hbGwgY2hhbmdlIHRvIHRoaXMgd3JhcHBlciBmb3IgdGhl
CisrICAgICAgICBXaW5DYWlybyBidWlsZCdzIHN5c3RlbSB6bGliLCB3aGljaCBkb2Vzbid0IGRl
ZmluZSB6X2NvbnN0LgorKworKyAgICAgICAgKiAuZ2l0aWdub3JlOgorKyAgICAgICAgKiBBTkdM
RS5wbGlzdDoKKysgICAgICAgICogQU5HTEUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKysg
ICAgICAgICogQ01ha2VMaXN0cy50eHQ6CisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0FOR0xF
LWR5bmFtaWMueGNjb25maWc6CisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0FOR0xFLXN0YXRp
Yy54Y2NvbmZpZzoKKysgICAgICAgICogR0xFU3YyLmNtYWtlOgorKyAgICAgICAgKiBQbGF0Zm9y
bVdpbi5jbWFrZToKKysgICAgICAgICogdGhpcmRfcGFydHkvemxpYi9nb29nbGUvY29tcHJlc3Np
b25fdXRpbHNfcG9ydGFibGUuY2M6IEFkZGVkLgorKyAgICAgICAgKiB0aGlyZF9wYXJ0eS96bGli
L2dvb2dsZS9jb21wcmVzc2lvbl91dGlsc19wb3J0YWJsZS5oOiBBZGRlZC4KKysKKysyMDIwLTA3
LTI4ICBLZW5uZXRoIFJ1c3NlbGwgIDxrYnJAY2hyb21pdW0ub3JnPgorKworKyAgICAgICAgUGF1
c2UgZHVyaW5nIEFOR0xFIHJvbGwgc2NyaXB0IGFmdGVyIHJlYmFzaW5nIGFuZCBiZWZvcmUgZGVs
ZXRpbmcgdGVtcG9yYXJ5IEdpdCByZXBvCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MjEyNzE3CisrCisrICAgICAgICBSZXZpZXdlZCBieSBEZWFuIEph
Y2tzb24uCisrCisrICAgICAgICBHaXZlIHRoZSB1c2VyIHRoZSBvcHBvcnR1bml0eSB0byBtYW51
YWxseSBleGFtaW5lIHRoZSBjaGFuZ2VzCisrICAgICAgICByZWxhdGl2ZSB0byB1cHN0cmVhbSBB
TkdMRSwgYW5kIHRvIHVuZG8gYW55IGFjY2lkZW50YWwgb3IKKysgICAgICAgIHVuZGVzaXJlZCBv
bmVzLCBiZWZvcmUgZmluaXNoaW5nIHRoZSByb2xsLgorKworKyAgICAgICAgKiB1cGRhdGUtYW5n
bGUuc2g6CisrCisrMjAyMC0wNy0yMiAgQ29ucmFkIFNodWx0eiAgPGNvbnJhZF9zaHVsdHpAYXBw
bGUuY29tPgorKworKyAgICAgICAgVXBkYXRlIG1hY09TIFZlcnNpb24gbWFjcm9zCisrICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE0NjUzCisrCisrICAg
ICAgICBSZXZpZXdlZCBieSBUaW0gSG9ydG9uLgorKworKyAgICAgICAgKiBDb25maWd1cmF0aW9u
cy9CYXNlLnhjY29uZmlnOgorKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9EZWJ1Z1JlbGVhc2Uu
eGNjb25maWc6CisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL1ZlcnNpb24ueGNjb25maWc6Cisr
ICAgICAgICAqIENvbmZpZ3VyYXRpb25zL1dlYktpdFRhcmdldENvbmRpdGlvbmFscy54Y2NvbmZp
ZzoKKysKKysyMDIwLTA3LTE3ICBLZW5uZXRoIFJ1c3NlbGwgIDxrYnJAY2hyb21pdW0ub3JnPgor
KworKyAgICAgICAgW1dlYkdMMl0gRml4IHZhbGlkYXRpb24gb2YgcGl4ZWwgdW5wYWNrIHBhcmFt
ZXRlcnMKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MTQ1MDkKKysKKysgICAgICAgIFJldmlld2VkIGJ5IERlYW4gSmFja3Nvbi4KKysKKysgICAgICAg
IEZpeCBzbWFsbCBlcnJvciBkaXNjb3ZlcmVkIHdoaWxlIHVwc3RyZWFtaW5nIHRoZSBwcmV2aW91
cyBmaXggdG8KKysgICAgICAgIHRoZSBBTkdMRSBwcm9qZWN0LgorKworKyAgICAgICAgKiBzcmMv
bGliQU5HTEUvdmFsaWRhdGlvbkVTMy5jcHA6CisrICAgICAgICAoZ2w6OlZhbGlkYXRlRVMzVGV4
SW1hZ2VQYXJhbWV0ZXJzQmFzZSk6CisrCisrMjAyMC0wNy0xNyAgS2VubmV0aCBSdXNzZWxsICA8
a2JyQGNocm9taXVtLm9yZz4KKysKKysgICAgICAgIFtXZWJHTDJdIFJlYWRQaXhlbHMgdXBkYXRl
cworKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwOTUx
NgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGVhbiBKYWNrc29uLgorKworKyAgICAgICAgQWRk
IHdvcmthcm91bmQgZm9yIE9wZW5HTCBkcml2ZXIgYnVnIG9uIG1hY09TIHdoZXJlCisrICAgICAg
ICBHTF9QQUNLX1NLSVBfUk9XUyBhbmQgR0xfUEFDS19TS0lQX1BJWEVMUyBhcmUgaWdub3JlZC4K
KysKKysgICAgICAgIEFkZCBXZWJHTCAyLjAtc3BlY2lmaWMgdmFsaWRhdGlvbiBjb25zdHJhaW50
cyBmb3IgcGl4ZWwgcGFjayBhbmQKKysgICAgICAgIHVucGFjayBwYXJhbWV0ZXJzLgorKworKyAg
ICAgICAgVGhlc2UgY2hhbmdlcyBhcmUgYmVpbmcgdXBzdHJlYW1lZCB0byBBTkdMRSBpbgorKyAg
ICAgICAgaHR0cDovL2NyYnVnLmNvbS9hbmdsZXByb2plY3QvNDg0OSAuCisrCisrICAgICAgICAq
IGluY2x1ZGUvcGxhdGZvcm0vRmVhdHVyZXNHTC5oOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUv
RXJyb3JTdHJpbmdzLmg6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9GcmFt
ZWJ1ZmZlckdMLmNwcDoKKysgICAgICAgIChyeDo6RnJhbWVidWZmZXJHTDo6cmVhZFBpeGVscyk6
CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9yZW5kZXJlcmdsX3V0aWxzLmNw
cDoKKysgICAgICAgIChyeDo6bmF0aXZlZ2xfZ2w6OkluaXRpYWxpemVGZWF0dXJlcyk6CisrICAg
ICAgICAqIHNyYy9saWJBTkdMRS92YWxpZGF0aW9uRVMuY3BwOgorKyAgICAgICAgKGdsOjpWYWxp
ZGF0ZVBpeGVsUGFjayk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS92YWxpZGF0aW9uRVMzLmNw
cDoKKysgICAgICAgIChnbDo6VmFsaWRhdGVFUzNUZXhJbWFnZVBhcmFtZXRlcnNCYXNlKToKKysK
KysyMDIwLTA3LTEwICBLZW5uZXRoIFJ1c3NlbGwgIDxrYnJAY2hyb21pdW0ub3JnPgorKworKyAg
ICAgICAgUmVtb3ZlIGdsQmluZEZyYW1lYnVmZmVyIGZsdXNoIHdvcmthcm91bmQgZnJvbSBBTkdM
RQorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxNDEw
NAorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGVhbiBKYWNrc29uLgorKworKyAgICAgICAgUmVt
b3ZlIHRoaXMgZHJpdmVyIGJ1ZyB3b3JrYXJvdW5kLCB3aGljaCB2ZXJ5IGxpa2VseSBoYWQgbm8K
KysgICAgICAgIGVmZmVjdCwgYW5kIHdoaWNoIHdhcyBuZXZlciB1cHN0cmVhbWVkIHRvIEFOR0xF
LgorKworKyAgICAgICAgKiBpbmNsdWRlL3BsYXRmb3JtL0ZlYXR1cmVzR0wuaDoKKysgICAgICAg
ICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL1N0YXRlTWFuYWdlckdMLmNwcDoKKysgICAgICAg
IChyeDo6U3RhdGVNYW5hZ2VyR0w6OmJpbmRGcmFtZWJ1ZmZlcik6CisrICAgICAgICAqIHNyYy9s
aWJBTkdMRS9yZW5kZXJlci9nbC9yZW5kZXJlcmdsX3V0aWxzLmNwcDoKKysgICAgICAgIChyeDo6
bmF0aXZlZ2xfZ2w6OkluaXRpYWxpemVGZWF0dXJlcyk6CisrCisrMjAyMC0wNy0wOCAgRGFyaW4g
QWRsZXIgIDxkYXJpbkBhcHBsZS5jb20+CisrCisrICAgICAgICBGaXggYWRqdXN0LWFuZ2xlLWlu
Y2x1ZGUtcGF0aHMuc2ggZXJyb3Igc2VlbiBidWlsZGluZyBBTkdMRSBsaWJyYXJ5CisrICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE0MDU5CisrCisrICAg
ICAgICBSZXZpZXdlZCBieSBBbGV4ZXkgUHJvc2t1cnlha292LgorKworKyAgICAgICAgKiBBTkdM
RS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOiBSZW1vdmUgdGhlIGJ1aWxkIHN0ZXAgdGhhdCBh
ZGp1c3RzIHBhdGhzLgorKyAgICAgICAgRGVhbiBKYWNrc29uIHRvbGQgbWUgd2UgZG9uJ3QgbmVl
ZCBpdCBmb3IgdGhlIHN0YXRpYyBsaWJyYXJ5IHRhcmdldC4KKysKKysyMDIwLTA2LTMwICBBbmR5
IEVzdGVzICA8YWVzdGVzQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFtYY29kZV0gRW5hYmxlIHRo
ZSAiTXkgTWFjIChNYWMgQ2F0YWx5c3QpIiBkZXN0aW5hdGlvbiBpbiBXZWJLaXQgWGNvZGUgcHJv
amVjdHMKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MTM3NDAKKysKKysgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgorKworKyAgICAgICAg
KiBDb25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnOiBTZXQgU1VQUE9SVFNfTUFDQ0FUQUxZU1Qg
dG8gWUVTIHRvIHRlbGwgWGNvZGUgdGhhdCB0aGlzCisrICAgICAgICBwcm9qZWN0IHN1cHBvcnRz
IGJ1aWxkaW5nIGZvciBNYWMgQ2F0YWx5c3QuCisrCisrMjAyMC0wNi0yMiAgVGltIEhvcnRvbiAg
PHRpbW90aHlfaG9ydG9uQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFVwZGF0ZSBtYWNPUyB2ZXJz
aW9uIG1hY3JvcworKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTIxMzQ4NAorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgQWxleGV5IFByb3NrdXJ5YWtvdi4K
KysKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZzoKKysgICAgICAgICog
Q29uZmlndXJhdGlvbnMvRGVidWdSZWxlYXNlLnhjY29uZmlnOgorKyAgICAgICAgKiBDb25maWd1
cmF0aW9ucy9WZXJzaW9uLnhjY29uZmlnOgorKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9XZWJL
aXRUYXJnZXRDb25kaXRpb25hbHMueGNjb25maWc6CisrCisrMjAyMC0wNi0yMiAgVGltIEhvcnRv
biAgPHRpbW90aHlfaG9ydG9uQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFdlYkdMIGNhbm5vdCBj
cmVhdGUgYSBjb250ZXh0IGlmIHRoZXJlIGlzIG5vIEdQVSBvbiB0aGUgUENJZSBidXMKKysgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTM0NzkKKysKKysg
ICAgICAgIFJldmlld2VkIGJ5IE1hY2llaiBTdGFjaG93aWFrIGFuZCBEZWFuIEphY2tzb24uCisr
CisrICAgICAgICAqIHNyYy9ncHVfaW5mb191dGlsL1N5c3RlbUluZm9fbWFjb3MubW06CisrICAg
ICAgICAoYW5nbGU6OkdldFN5c3RlbUluZm8pOgorKyAgICAgICAgRG8gbm90IGJhaWwgZnJvbSBX
ZWJHTCBpbml0aWFsaXphdGlvbiBpZiB0aGVyZSBhcmUgbm8gR1BVcyBvbiB0aGUgUENJZSBidXMu
CisrICAgICAgICBJbnN0ZWFkLCBjb250aW51ZSBvbiB0byBjb250ZXh0IGNyZWF0aW9uLCBhbmQg
YWxsb3cgdGhlIHN5c3RlbSBmcmFtZXdvcmtzCisrICAgICAgICB0byByZXR1cm4gYW4gZXJyb3Ig
aWYgdGhlcmUgdHJ1bHkgaXMgbm8gR1BVLgorKworKzIwMjAtMDYtMTkgIEpvbmF0aGFuIEJlZGFy
ZCAgPGpiZWRhcmRAYXBwbGUuY29tPgorKworKyAgICAgICAgW0FOR0xFXSBDb3JyZWN0IENhdGFs
eXN0IGd1YXJkcworKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTIxMTQxMAorKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzYyODkxMTg1PgorKworKyAgICAg
ICAgUmV2aWV3ZWQgYnkgRGVhbiBKYWNrc29uLgorKworKyAgICAgICAgKiBzcmMvbGliQU5HTEUv
cmVuZGVyZXIvZ2wvZWFnbC9EZXZpY2VFQUdMLmNwcDogRG8gbm90IGNvbXBpbGUgb24gTWFjLgor
KyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EZXZpY2VFQUdMLmg6ICBE
ZWZpbml0aW9ucyBzaG91bGQgbm90IGJlIGF2YWlsYWJsZSBvbiBNYWMuCisrICAgICAgICAqIHNy
Yy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0Rpc3BsYXlFQUdMLmg6IERlZmluaXRpb25zIHNo
b3VsZCBub3QgYmUgYXZhaWxhYmxlIG9uIE1hYy4KKysgICAgICAgICogc3JjL2xpYkFOR0xFL3Jl
bmRlcmVyL2dsL2VhZ2wvRGlzcGxheUVBR0wubW06IERvIG5vdCBjb21waWxlIG9uIE1hYy4KKysK
KysyMDIwLTA2LTEwICBEZWFuIEphY2tzb24gIDxkaW5vQGFwcGxlLmNvbT4KKysKKysgICAgICAg
IEFkZCBhIGR5bmFtaWMgbGlicmFyeSB0YXJnZXQgZm9yIEFOR0xFCisrICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA3NTkxCisrCisrICAgICAgICBSZXZp
ZXdlZCBieSBUaW0gSG9ydG9uLgorKworKyAgICAgICAgSW4gcHJlcGFyYXRpb24gZm9yIG1vdmlu
ZyB0byBhIGR5bmFtaWMgbGlicmFyeSwgc3RhcnQKKysgICAgICAgIGJ5IGNvbXBpbGluZyBhbmQg
bGlua2luZyBpdC4gSXQgaXNuJ3QgdXNlZCBhbnl3aGVyZQorKyAgICAgICAgYnV0IGdldHRpbmcg
aXQgaW50byB0aGUgYnVpbGQgd2lsbCBoZWxwIEFwcGxlJ3MKKysgICAgICAgIGJ1aWxkIHN5c3Rl
bSByZW1haW4gaGFwcHkgYXMgd2UgbWlncmF0ZSwgYXMgd2VsbAorKyAgICAgICAgYXMgaGF2ZSB0
aGUgc3lzdGVtIGtub3cgaXQgZXhpc3RzIGZvciBidWlsZGluZworKyAgICAgICAgdGhlIHNoYXJl
ZCBzeXN0ZW0gY2FjaGUuCisrCisrICAgICAgICAqIEFOR0xFLnhjb2RlcHJvai9wcm9qZWN0LnBi
eHByb2o6CisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0FOR0xFLWR5bmFtaWMueGNjb25maWc6
IEFkZGVkLgorKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9BTkdMRS1zdGF0aWMueGNjb25maWc6
IEFkZGVkLgorKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9BTkdMRS54Y2NvbmZpZzogUmVtb3Zl
ZC4KKysgICAgICAgICogQ29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZzoKKysgICAgICAgICog
Q29uZmlndXJhdGlvbnMvRGVidWdSZWxlYXNlLnhjY29uZmlnOgorKworKzIwMjAtMDYtMDcgIEph
bWVzIERhcnBpbmlhbiAgPGpkYXJwaW5pYW5AY2hyb21pdW0ub3JnPgorKworKyAgICAgICAgW0FO
R0xFIC0gaU9TXSBmYXN0L2NhbnZhcy93ZWJnbC91bmluaXRpYWxpemVkLXRlc3QuaHRtbCBpcyBz
dGlsbCBmYWlsaW5nCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjEyMjQ5CisrCisrICAgICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisrCisr
ICAgICAgICBjb3B5VGV4SW1hZ2UyRCBpcyBicm9rZW4gaW4gc29tZSB3YXkgb24gaU9TLiBXb3Jr
IGFyb3VuZCBpdCBieSByZWltcGxlbWVudGluZworKyAgICAgICAgaXQgd2l0aCBBTkdMRSdzIEJs
aXRHTCBjbGFzcy4KKysKKysgICAgICAgICogaW5jbHVkZS9wbGF0Zm9ybS9GZWF0dXJlc0dMLmg6
CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9CbGl0R0wuY3BwOgorKyAgICAg
ICAgKHJ4OjpCbGl0R0w6OmJsaXRDb2xvckJ1ZmZlcldpdGhTaGFkZXIpOgorKyAgICAgICAgKiBz
cmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvQmxpdEdMLmg6CisrICAgICAgICAqIHNyYy9saWJBTkdM
RS9yZW5kZXJlci9nbC9UZXh0dXJlR0wuY3BwOgorKyAgICAgICAgKHJ4OjpUZXh0dXJlR0w6OmNv
cHlJbWFnZSk6CisrICAgICAgICAocng6OlRleHR1cmVHTDo6Y29weVN1YkltYWdlKToKKysgICAg
ICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL3JlbmRlcmVyZ2xfdXRpbHMuY3BwOgorKyAg
ICAgICAgKHJ4OjpuYXRpdmVnbF9nbDo6SW5pdGlhbGl6ZUZlYXR1cmVzKToKKysgICAgICAgICog
c3JjL3Rlc3RzL2dsX3Rlc3RzL0NvcHlUZXhJbWFnZVRlc3QuY3BwOgorKyAgICAgICAgKiBzcmMv
dGVzdHMvZ2xfdGVzdHMvVGV4dHVyZVRlc3QuY3BwOgorKyAgICAgICAgKiBzcmMvdGVzdHMvdGVz
dF91dGlscy9hbmdsZV90ZXN0X2NvbmZpZ3MuY3BwOgorKyAgICAgICAgKGFuZ2xlOjpvcGVyYXRv
cjw8KToKKysgICAgICAgICogc3JjL3Rlc3RzL3Rlc3RfdXRpbHMvYW5nbGVfdGVzdF9jb25maWdz
Lmg6CisrICAgICAgICAoYW5nbGU6OldpdGhFbXVsYXRlQ29weVRleEltYWdlMkRGcm9tUmVuZGVy
YnVmZmVycyk6CisrICAgICAgICAqIHV0aWwvRUdMUGxhdGZvcm1QYXJhbWV0ZXJzLmg6CisrICAg
ICAgICAoRUdMUGxhdGZvcm1QYXJhbWV0ZXJzOjp0aWUgY29uc3QpOgorKyAgICAgICAgKiB1dGls
L0VHTFdpbmRvdy5jcHA6CisrICAgICAgICAoRUdMV2luZG93Ojppbml0aWFsaXplRGlzcGxheSk6
CisrCisrMjAyMC0wNi0wNCAgVGltIEhvcnRvbiAgPHRpbW90aHlfaG9ydG9uQGFwcGxlLmNvbT4K
KysKKysgICAgICAgIFdvcmsgYXJvdW5kIGJyb2tlbiBzeXN0ZW0gdmVyc2lvbiBtYWNybworKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxMjcyNgorKwor
KyAgICAgICAgUmV2aWV3ZWQgYnkgRGFuIEJlcm5zdGVpbi4KKysKKysgICAgICAgICogQ29uZmln
dXJhdGlvbnMvRGVidWdSZWxlYXNlLnhjY29uZmlnOgorKworKzIwMjAtMDYtMDIgIEtlaXRoIFJv
bGxpbiAgPGtyb2xsaW5AYXBwbGUuY29tPgorKworKyAgICAgICAgQ2hhbmdlIEFOR0xFJ3MgaGVh
ZGVyIHBvc3Rwcm9jZXNzaW5nIHNjcmlwdCB0byBub3QgcmVseSBvbiB0aW1lc3RhbXBzCisrICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjEyNjIzCisrICAg
ICAgICA8cmRhcjovL3Byb2JsZW0vNjM4NTY5OTc+CisrCisrICAgICAgICBSZXZpZXdlZCBieSBE
YXZpZCBLaWx6ZXIuCisrICAgICAgICBSZXZpZXdlZCBieSBLZW5ubmV0aCBSdXNzZWxsLgorKwor
KyAgICAgICAgU29tZSBXZWJLaXQgYnVpbGRzIGludm9sdmUgbXVsdGlwbGUgcGFzc2VzLCB3aGVy
ZSBlYWNoIHBhc3MgaXMgYQorKyAgICAgICAgc3VwZXJzZXQgb2YgdGhlIHByZXZpb3VzIHBhc3Mu
IEluIHRoZSBjYXNlcyB3aGVyZSBlYWNoIHBhc3MgcHJvZHVjZXMKKysgICAgICAgIHRoZSBzYW1l
IGZpbGVzLCBpdCBpcyByZXF1aXJlZCB0aGF0IGZpbGVzIGJlIHByb2R1Y2VkIGluIGV4YWN0bHkg
dGhlCisrICAgICAgICBzYW1lIHdheSBpbiBlYWNoIG9mIHRob3NlIHBhc3Nlcy4gQSBidWlsZCBw
cm9jZXNzIHRoYXQgcmVsaWVzIG9uIGEKKysgICAgICAgIGZpbGUgY29udGFpbmluZyBhIHRpbWVz
dGFtcCB0cmlwcyB1cCB0aGF0IHByZXJlcXVpc2l0ZS4KKysKKysgICAgICAgIGFkanVzdC1hbmds
ZS1pbmNsdWRlLXBhdGhzLnNoIHVzZXMgc3VjaCBhIG1lY2hhbmlzbSwgdXNpbmcgYSB0aW1lc3Rh
bXAKKysgICAgICAgIGZpbGUgdG8gZGV0ZXJtaW5lIGlmIGFueSBleHBvcnRlZCBoZWFkZXJzIG5l
ZWQgdG8gYmUgcG9zdC1wcm9jZXNzZWQuCisrICAgICAgICBTaW5jZSB0aGlzIHZpb2xhdGVzIG91
ciBwcmVyZXF1aXNpdGUsIHdlIG5lZWQgYSBkaWZmZXJlbnQgYXBwcm9hY2guCisrICAgICAgICBJ
bnN0ZWFkIG9mIHVzaW5nIGEgdGltZXN0YW1wLCBhbHdheXMgcGVyZm9ybSB0aGUgcG9zdC1wcm9j
ZXNzaW5nLCBidXQKKysgICAgICAgIHdyaXRlIHRoZSBvdXRwdXQgdG8gYSB0ZW1wb3JhcnkgbG9j
YXRpb24uIFRoZW4gc2VlIGlmIGl0IGRpZmZlcnMgZnJvbQorKyAgICAgICAgd2hhdCdzIGluIHRo
ZSBhY3R1YWwgZmluYWwgZGVzdGluYXRpb24uIElmIHRoZSB0d28gZmlsZXMgZGlmZiwgdGhlbgor
KyAgICAgICAgY29weSB0aGUgb25lIGZyb20gdGhlIHRlbXBvcmFyeSBsb2NhdGlvbiB0byB0aGUg
ZmluYWwgZGVzdGluYXRpb24uCisrCisrICAgICAgICBUaGlzIGFwcHJvYWNoIGRvZXMgY2F1c2Ug
bW9yZSB3b3JrIGluIHRoZSBhcmVhIG9mIHBvc3QtcHJvY2Vzc2luZy4KKysgICAgICAgIEhvd2V2
ZXIsIHRoaXMgcG9zdC1wcm9jZXNzaW5nIGlzIGFjdHVhbGx5IHZlcnkgY2hlYXAuIEFuZCBhdm9p
ZGluZyB0aGUKKysgICAgICAgIHBvc3QtcHJvY2Vzc2luZyBpcyBub3QgYWN0dWFsbHkgdGhlIG9y
aWdpbmFsIGdvYWwgb2YgdGhlIHRpbWVzdGFtcC4KKysgICAgICAgIFRoZSBhY3R1YWwgZ29hbCBp
cyB0byBhdm9pZCB0b3VjaGluZyB0aGUgbW9kaWZpY2F0aW9uIGRhdGVzIG9mIHRoZQorKyAgICAg
ICAgZXhwb3J0ZWQgaGVhZGVycywgd2hpY2ggd291bGQgdGhlbiBjYXVzZSBhIGxvdCBvZiBkb3du
c3RyZWFtCisrICAgICAgICByZWJ1aWxkaW5nLiBUaGUgbmV3IGFwcHJvYWNoIHdpdGggdGhlIHRl
bXBvcmFyeSBmaWxlcyBhbHNvIGFjaGlldmVzCisrICAgICAgICB0aGF0IGdvYWwuCisrCisrICAg
ICAgICAqIENNYWtlTGlzdHMudHh0OgorKyAgICAgICAgKiBhZGp1c3QtYW5nbGUtaW5jbHVkZS1w
YXRocy5zaDoKKysKKysyMDIwLTA2LTAyICBLZW5uZXRoIFJ1c3NlbGwgIDxrYnJAY2hyb21pdW0u
b3JnPgorKworKyAgICAgICAgUmV2aXNlIFBWUlRDIGNvbXByZXNzZWQgdGV4dHVyZSB2YWxpZGF0
aW9uIGluIEFOR0xFIGJhY2tlbmQgZm9yIFdlYkdMCisrICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjEyNjEyCisrCisrICAgICAgICBSZXZpZXdlZCBieSBE
ZWFuIEphY2tzb24uCisrCisrICAgICAgICBDb3JyZWN0IHRoZSBibG9jayBzaXplcyBvZiBQVlJU
QyB0ZXh0dXJlcywgYW5kIGluY29ycG9yYXRlIG1pbmltdW0KKysgICAgICAgIGJsb2NrIHNpemVz
IGZvciB3aWR0aCBhbmQgaGVpZ2h0LCBhcyByZXF1aXJlZCBieSB0aGVzZSBmb3JtYXRzLgorKwor
KyAgICAgICAgKiBzcmMvbGliQU5HTEUvZm9ybWF0dXRpbHMuY3BwOgorKyAgICAgICAgKGdsOjpC
dWlsZEludGVybmFsRm9ybWF0SW5mb01hcCk6CisrICAgICAgICAoZ2w6OkludGVybmFsRm9ybWF0
Ojpjb21wdXRlQ29tcHJlc3NlZEltYWdlU2l6ZSBjb25zdCk6CisrICAgICAgICAoZ2w6OkludGVy
bmFsRm9ybWF0OjpnZXRDb21wcmVzc2VkSW1hZ2VNaW5CbG9ja3MgY29uc3QpOgorKyAgICAgICAg
KiBzcmMvbGliQU5HTEUvZm9ybWF0dXRpbHMuaDoKKysKKysyMDIwLTA1LTI5ICBLZWl0aCBSb2xs
aW4gIDxrcm9sbGluQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFJldmVydCBzd2l0Y2ggdG8gWENC
dWlsZAorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIx
MjUzMAorKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzYzNzY0NjMyPgorKworKyAgICAgICAgVW5y
ZXZpZXdlZCBidWlsZCBmaXguCisrCisrICAgICAgICBCdWcgMjA5ODkwIGVuYWJsZWQgdGhlIHVz
ZSBvZiBYQ0J1aWxkIGJ5IGRlZmF1bHQuIFNpbmNlIHRoZW4sIHNvbWUKKysgICAgICAgIGJ1aWxk
IGlzc3VlcyBoYXZlIHNob3duIHVwLiBXaGlsZSBhZGRyZXNzaW5nIHRoZW0sIHRlbXBvcmFyaWx5
IHR1cm4KKysgICAgICAgIG9mZiB0aGUgdXNlIG9mIFhDQnVpbGQgYnkgZGVmYXVsdC4KKysKKysg
ICAgICAgICogQU5HTEUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKysgICAgICAgICogQ29u
ZmlndXJhdGlvbnMvQU5HTEUueGNjb25maWc6CisrCisrMjAyMC0wNS0yNyAgS2VpdGggUm9sbGlu
ICA8a3JvbGxpbkBhcHBsZS5jb20+CisrCisrICAgICAgICBFbmFibGUgdGhlIHVzZSBvZiBYQ0J1
aWxkIGJ5IGRlZmF1bHQgaW4gQXBwbGUgYnVpbGRzCisrICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA5ODkwCisrICAgICAgICA8cmRhcjovL3Byb2JsZW0v
NDQxODIwNzg+CisrCisrICAgICAgICBVbnJldmlld2VkIGJ1aWxkIGZpeC4gQ2hlY2sgdGhlIHZh
bHVlIG9mIFhDT0RFX1ZFUlNJT05fQUNUVUFMIHJhdGhlcgorKyAgICAgICAgdGhhbiBYQ09ERV9W
RVJTSU9OX01BSk9SIHdoZW4gZGV0ZXJtaW5pbmcgd2hldGhlciB0byB1c2UgdGhlIFhDQnVpbGQK
KysgICAgICAgIG9yIG5vbi1YQ0J1aWxkIG1ldGhvZCBvZiBydW5uaW5nIGhlYWRlciBwb3N0LXBy
b2Nlc3Npbmcgc2NyaXB0cy4KKysKKysgICAgICAgICogQU5HTEUueGNvZGVwcm9qL3Byb2plY3Qu
cGJ4cHJvajoKKysKKysyMDIwLTA1LTI2ICBLZWl0aCBSb2xsaW4gIDxrcm9sbGluQGFwcGxlLmNv
bT4KKysKKysgICAgICAgIEVuYWJsZSB0aGUgdXNlIG9mIFhDQnVpbGQgYnkgZGVmYXVsdCBpbiBB
cHBsZSBidWlsZHMKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMDk4OTAKKysgICAgICAgIDxyZGFyOi8vcHJvYmxlbS80NDE4MjA3OD4KKysKKysgICAg
ICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgorKworKyAgICAgICAgU3dpdGNoIGZyb20gdGhl
ICJsZWdhY3kiIFhjb2RlIGJ1aWxkIHN5c3RlbSB0byB0aGUgIm5ldyIgYnVpbGQgc3lzdGVtCisr
ICAgICAgICAoYWxzbyBrbm93biBhcyAiWENCdWlsZCIpLiBTd2l0Y2hpbmcgdG8gdGhlIG5ldyBz
eXN0ZW0gc3BlZWRzIHVwCisrICAgICAgICBidWlsZHMgYnkgYSBzbWFsbCBwZXJjZW50YWdlLCBi
ZXR0ZXIgdmFsaWRhdGVzIHByb2plY3RzIGZvcgorKyAgICAgICAgYnVpbGQtcmVsYXRlZCBpc3N1
ZXMgKHN1Y2ggYXMgZGVwZW5kZW5jeSBjeWNsZXMpLCBsZXRzIFdlYktpdCBiZW5lZml0CisrICAg
ICAgICBmcm9tIGZ1dHVyZSBpbXByb3ZlbWVudHMgaW4gWENCdWlsZCBzdWNoIGFzIHRob3NlIGNv
bWluZyBmcm9tIHRoZQorKyAgICAgICAgdW5kZXJseWluZyBsbGJ1aWxkIG9wZW4gc291cmNlIHBy
b2plY3QsIGFuZCBwcmVwYXJlcyB1cyBmb3IgYW55IG90aGVyCisrICAgICAgICB0b29scyBidWls
dCBmb3IgdGhpcyBuZXcgZWNvc3lzdGVtLgorKworKyAgICAgICAgU3BlY2lmaWMgY2hhbmdlczoK
KysKKysgICAgICAgIC0gUmVtb3ZlIFhjb2RlIHByb2plY3QgYW5kIHdvcmtzcGFjZSBzZXR0aW5n
cyB0aGF0IHNlbGVjdGVkIHRoZSBCdWlsZAorKyAgICAgICAgICBzeXN0ZW0sIGFsbG93aW5nIHRo
ZSBkZWZhdWx0IHRvIHRha2UgaG9sZCAod2hpY2ggaXMgY3VycmVudGx5IHRoZQorKyAgICAgICAg
ICBOZXcgYnVpbGQgc3lzdGVtKS4KKysgICAgICAgIC0gVXBkYXRlZCB3ZWJraXRkaXJzLnBtIHdp
dGggYSB0ZXJzZXIgY2hlY2sgZm9yIFhjb2RlIHZlcnNpb24uCisrICAgICAgICAtIFVwZGF0ZSBi
dWlsZC13ZWJraXQgYW5kIE1ha2VmaWxlLnNoYXJlZCB0byBiZSBleHBsaWNpdCB3aGVuIHVzaW5n
CisrICAgICAgICAgIHRoZSBvbGQgYnVpbGQgc3lzdGVtIChubyBsb25nZXIgdHJlYXQgaXQgYXMg
YSBkZWZhdWx0IG9yIGZhbGwtYmFjaworKyAgICAgICAgICBjb25maWd1cmF0aW9uKS4KKysgICAg
ICAgIC0gVXBkYXRlIHZhcmlvdXMgeGNjb25maWcgZmlsZXMgc2ltaWxhcmx5IHRvIHRyZWF0IHRo
ZSBkZWZhdWx0IGFzCisrICAgICAgICAgIHVzaW5nIHRoZSBuZXcgYnVpbGQgc3lzdGVtLgorKyAg
ICAgICAgLSBVcGRhdGUgdmFyaW91cyBwb3N0LXByb2Nlc3NpbmcgYnVpbGQgc3RlcHMgdG8gY2hl
Y2sgZm9yIFhjb2RlIDExLjQKKysgICAgICAgICAgYW5kIHRvIG5vIGxvbmdlciB0cmVhdCB0aGUg
ZGVmYXVsdCBhcyB1c2luZyB0aGUgb2xkIGJ1aWxkIHN5c3RlbS4KKysKKysgICAgICAgICogQU5H
TEUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMv
QU5HTEUueGNjb25maWc6CisrCisrMjAyMC0wNS0yMiAgS2VubmV0aCBSdXNzZWxsICA8a2JyQGNo
cm9taXVtLm9yZz4KKysKKysgICAgICAgIFtBTkdMRSAtIGlPU10gd2ViZ2wvMS4wLjMvY29uZm9y
bWFuY2UvZXh0ZW5zaW9ucy9leHQtc1JHQi5odG1sIGlzIGZhaWxpbmcKKysgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTIyNzcKKysKKysgICAgICAgIFJl
dmlld2VkIGJ5IERlYW4gSmFja3Nvbi4KKysKKysgICAgICAgIFByb3Blcmx5IHRyYW5zbGF0ZSBH
TF9FWFRfc1JHQiBlbnVtcyB0byBFUyAzLjAgZW51bXMgd2hlbgorKyAgICAgICAgR0xfRVhUX3NS
R0IgaXMgbm90IHN1cHBvcnRlZC4KKysKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVy
L2dsL2Zvcm1hdHV0aWxzZ2wuY3BwOgorKyAgICAgICAgKHJ4OjpuYXRpdmVnbDo6R2V0TmF0aXZl
SW50ZXJuYWxGb3JtYXQpOgorKyAgICAgICAgKHJ4OjpuYXRpdmVnbDo6R2V0TmF0aXZlRm9ybWF0
KToKKysKKysyMDIwLTA1LTIyICBLZW5uZXRoIFJ1c3NlbGwgIDxrYnJAY2hyb21pdW0ub3JnPgor
KworKyAgICAgICAgW0FOR0xFIC0gaU9TXSBmYXN0L2NhbnZhcy93ZWJnbC93ZWJnbC1kZXB0aC10
ZXh0dXJlLmh0bWwgaXMgZmFpbGluZworKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIxMjI3MQorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGVhbiBKYWNr
c29uLgorKworKyAgICAgICAgVXNlIEVTIDMuMCBzaXplZCBpbnRlcm5hbCBmb3JtYXRzIGZvciB1
bnNpemVkIGRlcHRoL3N0ZW5jaWwKKysgICAgICAgIHRleHR1cmVzIHdoZW4gdGhlIE9FU19kZXB0
aF90ZXh0dXJlIGV4dGVuc2lvbiBpcyB1bmF2YWlsYWJsZSAtIGFzCisrICAgICAgICBpcyB0aGUg
Y2FzZSBpbiBpT1MncyBFUyAzLjAgZHJpdmVyLgorKworKyAgICAgICAgKiBzcmMvbGliQU5HTEUv
cmVuZGVyZXIvZ2wvZm9ybWF0dXRpbHNnbC5jcHA6CisrICAgICAgICAocng6Om5hdGl2ZWdsOjpH
ZXROYXRpdmVJbnRlcm5hbEZvcm1hdCk6CisrCisrMjAyMC0wNS0yMSAgRGVhbiBKYWNrc29uICA8
ZGlub0BhcHBsZS5jb20+CisrCisrICAgICAgICBQVlJUQyBjb21wcmVzc2VkIHRleHR1cmVzIGFy
ZSBmYWlsaW5nIHdpdGggQU5HTEUgYmFja2VuZAorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIxMjI0MAorKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzYz
NTE3Mzg1PgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgS2VuIFJ1c3NlbGwgKHJlcHJlc2VudGlu
ZyBBTkdMRSkuCisrCisrICAgICAgICBUaGUgdmFsdWVzIHVzZWQgZm9yIHRoZSBQVlJUQyBmb3Jt
YXRzIHdlcmUgaW5jb3JyZWN0LgorKworKyAgICAgICAgKiBzcmMvbGliQU5HTEUvZm9ybWF0dXRp
bHMuY3BwOgorKyAgICAgICAgKGdsOjpCdWlsZEludGVybmFsRm9ybWF0SW5mb01hcCk6CisrCisr
MjAyMC0wNS0yMSAgS2VubmV0aCBSdXNzZWxsICA8a2JyQGNocm9taXVtLm9yZz4KKysKKysgICAg
ICAgIFJvbGwgQU5HTEUgdG8gMjAyMC0wNS0yMQorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIxMjIyOAorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGVh
biBKYWNrc29uLgorKworKyAgICAgICAgUm9sbCBBTkdMRSB0byA5NmE4MDI4M2NjMGZlNjA0ZDAz
YzBiYzBiM2Y5ZWIxMDBlZGQyMmY5IGluIHRoZQorKyAgICAgICAgdXBzdHJlYW0gcmVwb3NpdG9y
eSB1c2luZyBqZGFycGluaWFuJ3MgZXhjZWxsZW50IHVwZGF0ZS1hbmdsZS5zaAorKyAgICAgICAg
c2NyaXB0LgorKworKyAgICAgICAgTWFudWFsbHkgdW5kbyB0aGUgZml4IGZyb20gQnVnIDIxMDk5
Miwgd2hpY2ggd2FzIGZpeGVkIGRpZmZlcmVudGx5CisrICAgICAgICB1cHN0cmVhbS4KKysKKysy
MDIwLTA1LTIxICBLZW5uZXRoIFJ1c3NlbGwgIDxrYnJAY2hyb21pdW0ub3JnPgorKworKyAgICAg
ICAgRVhUX2NvbG9yX2J1ZmZlcl9oYWxmX2Zsb2F0IG5vdCBleHBvc2VkIG9uIGlPUworKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxMjE4MQorKworKyAg
ICAgICAgUmV2aWV3ZWQgYnkgRGVhbiBKYWNrc29uLgorKworKyAgICAgICAgUmVtb3ZlIE9FU190
ZXh0dXJlX2hhbGZfZmxvYXQgcmVxdWlyZW1lbnQgZm9yIGFkdmVydGlzaW5nCisrICAgICAgICBF
WFRfY29sb3JfYnVmZmVyX2hhbGZfZmxvYXQgaW4gQU5HTEUuIFRoaXMgaXMgaW1wbGljaXQgaW4g
RVMgMy4wLgorKworKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZm9ybWF0dXRp
bHNnbC5jcHA6CisrICAgICAgICAocng6Om5hdGl2ZWdsOjpCdWlsZEludGVybmFsRm9ybWF0SW5m
b01hcCk6CisrCisrMjAyMC0wNS0yMCAgS2VubmV0aCBSdXNzZWxsICA8a2JyQGNocm9taXVtLm9y
Zz4KKysKKysgICAgICAgIE9FU190ZXh0dXJlX2hhbGZfZmxvYXRfbGluZWFyIHVuYXZhaWxhYmxl
IG9uIFdlYkdMIDEuMCBvbiBpT1Mgd2l0aCBBTkdMRQorKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxMjE3MAorKworKyAgICAgICAgUmV2aWV3ZWQgYnkg
RGVhbiBKYWNrc29uLgorKworKyAgICAgICAgTm93IHRoYXQgRlAxNiBsdW1pbmFuY2UvYWxwaGEg
dGV4dHVyZSBmb3JtYXRzIGFyZSBjb3JyZWN0bHkKKysgICAgICAgIGVtdWxhdGVkIG9uIEVTIDMu
MCwgYWR2ZXJ0aXNlIHRoZW0gYXMgZmlsdGVyYWJsZS4KKysKKysgICAgICAgICogc3JjL2xpYkFO
R0xFL3JlbmRlcmVyL2dsL2Zvcm1hdHV0aWxzZ2wuY3BwOgorKyAgICAgICAgKHJ4OjpuYXRpdmVn
bDo6QnVpbGRJbnRlcm5hbEZvcm1hdEluZm9NYXApOgorKworKzIwMjAtMDUtMjAgIEtlbm5ldGgg
UnVzc2VsbCAgPGtickBjaHJvbWl1bS5vcmc+CisrCisrICAgICAgICBPRVNfdGV4dHVyZV9mbG9h
dCAvIE9FU190ZXh0dXJlX2hhbGZfZmxvYXQgdW5hdmFpbGFibGUgaW4gV2ViR0wgMS4wIG9uIGlP
UyBTaW11bGF0b3Igd2l0aCBBTkdMRQorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIxMDUyNAorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGVhbiBKYWNr
c29uLgorKworKyAgICAgICAgRW11bGF0ZSBMVU1JTkFOQ0UsIEFMUEhBIGFuZCBMVU1JTkFOQ0Vf
QUxQSEEgZmxvYXRpbmctcG9pbnQKKysgICAgICAgIHRleHR1cmVzIG9uIHRvcCBvZiBSRUQgLyBS
RyB0ZXh0dXJlcyB3aGVuIHRoZSB1bmRlcmx5aW5nCisrICAgICAgICBPRVNfdGV4dHVyZV9mbG9h
dC9oYWxmX2Zsb2F0IE9wZW5HTCBFUyBleHRlbnNpb25zIGFyZSB1bmF2YWlsYWJsZS4KKysKKysg
ICAgICAgIFRoaXMgbWFrZXMgdGhlIGNvbmZvcm1hbmNlL2V4dGVuc2lvbnMvb2VzLXRleHR1cmV7
LWhhbGZ9LWZsb2F0KgorKyAgICAgICAgdGVzdHMgcnVuIGFuZCBwYXNzIGluIHRoZSBpT1MgU2lt
dWxhdG9yLgorKworKyAgICAgICAgVGhpcyBjaGFuZ2UgaXMgYmVpbmcgcmV2aWV3ZWQgdXBzdHJl
YW0gaW4gdGhlIEFOR0xFIHJlcG9zaXRvcnkgYW5kCisrICAgICAgICBpcyBvbmx5IGJlaW5nIHVw
bG9hZGVkIGhlcmUgZm9yIHRlc3RpbmcgcHVycG9zZXMuIEl0IHdpbGwgYmUKKysgICAgICAgIHJv
bGxlZCBpbiB3aXRoIHRoZSBuZXh0IEFOR0xFIHVwZGF0ZS4KKysKKysgICAgICAgICogc3JjL2xp
YkFOR0xFL3JlbmRlcmVyL2dsL1RleHR1cmVHTC5jcHA6CisrICAgICAgICAocng6OlRleHR1cmVH
TDo6c2V0U3dpenpsZSk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9mb3Jt
YXR1dGlsc2dsLmNwcDoKKysgICAgICAgIChyeDo6bmF0aXZlZ2w6OkJ1aWxkSW50ZXJuYWxGb3Jt
YXRJbmZvTWFwKToKKysgICAgICAgIChyeDo6bmF0aXZlZ2w6OklzTFVNQUZvcm1hdCk6CisrICAg
ICAgICAocng6Om5hdGl2ZWdsOjpFbXVsYXRlTFVNQUZvcm1hdCk6CisrICAgICAgICAocng6Om5h
dGl2ZWdsOjpFbXVsYXRlTFVNQSk6CisrICAgICAgICAocng6Om5hdGl2ZWdsOjpHZXROYXRpdmVJ
bnRlcm5hbEZvcm1hdCk6CisrICAgICAgICAocng6Om5hdGl2ZWdsOjpHZXROYXRpdmVGb3JtYXQp
OgorKyAgICAgICAgKHJ4OjpuYXRpdmVnbDo6R2V0TmF0aXZlVHlwZSk6CisrICAgICAgICAocng6
Om5hdGl2ZWdsOjpHZXRUZXhJbWFnZUZvcm1hdCk6CisrICAgICAgICAocng6Om5hdGl2ZWdsOjpH
ZXRUZXhTdWJJbWFnZUZvcm1hdCk6CisrCisrMjAyMC0wNS0xOCAgSmFtZXMgRGFycGluaWFuICA8
amRhcnBpbmlhbkBjaHJvbWl1bS5vcmc+CisrCisrICAgICAgICBFbmFibGUgcmVnZW5lcmF0ZVN0
cnVjdE5hbWVzIHdvcmthcm91bmQgb24gaU9TCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjEyMDU2CisrCisrICAgICAgICBSZXZpZXdlZCBieSBEZWFu
IEphY2tzb24uCisrCisrICAgICAgICBUaGUgV2ViR0wgY29uZm9ybWFuY2UgdGVzdCBjb25mb3Jt
YW5jZS9nbHNsL21pc2Mvc2hhZGVyLXN0cnVjdC1zY29wZS5odG1sCisrICAgICAgICB3YXMgZmFp
bGluZyBvbiBpT1MuIFRoZSB3b3JrYXJvdW5kIHRoYXQgZml4ZXMgdGhpcyB0ZXN0IHdhcyBlbmFi
bGVkIG9ubHkgb24KKysgICAgICAgIGRlc2t0b3AgR0wsIGJ1dCBpdCdzIG5lY2Vzc2FyeSBmb3Ig
aU9TIGFzIHdlbGwuCisrCisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9yZW5k
ZXJlcmdsX3V0aWxzLmNwcDoKKysgICAgICAgIChyeDo6bmF0aXZlZ2xfZ2w6OkluaXRpYWxpemVG
ZWF0dXJlcyk6CisrCisrMjAyMC0wNS0xNCAgSmFtZXMgRGFycGluaWFuICA8amRhcnBpbmlhbkBj
aHJvbWl1bS5vcmc+CisrCisrICAgICAgICBSRUdSRVNTSU9OIChyMjU5NTg5KTogR29vZ2xlIE1h
cHMgYmFja2dyb3VuZCBsYXllciBmYWRlcyBvdXQgYW5kIGJhY2sgaW4KKysgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTA5OTIKKysKKysgICAgICAgIFJl
dmlld2VkIGJ5IERlYW4gSmFja3Nvbi4KKysKKysgICAgICAgIEFOR0xFIHJlbmRlcmluZyBmZWVk
YmFjayBsb29wIGRldGVjdGlvbiB3YXMgaW5jb3JyZWN0IGlmIGEgdGV4dHVyZSBhdHRhY2hlZAor
KyAgICAgICAgdG8gYSBmcmFtZWJ1ZmZlciB3YXMgYWxzbyBib3VuZCB0byBhbiBhY3RpdmUgdGV4
dHVyZSB1bml0LCBhbmQgdGhlbiB0aGF0IHRleHR1cmUKKysgICAgICAgIHVuaXQgYmVjYW1lIGlu
YWN0aXZlIGJlY2F1c2UgYSBzYW1wbGVyIHVuaWZvcm0gd2FzIHNldC4KKysKKysgICAgICAgICog
c3JjL2xpYkFOR0xFL0NvbnRleHQuY3BwOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpvblNhbXBs
ZXJVbmlmb3JtQ2hhbmdlKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL1N0YXRlLmNwcDoKKysg
ICAgICAgIChnbDo6U3RhdGU6OnNldFRleHR1cmVJbmRleEluYWN0aXZlKToKKysgICAgICAgICog
c3JjL2xpYkFOR0xFL1N0YXRlLmg6CisrCisrMjAyMC0wNS0xNCAgS2VubmV0aCBSdXNzZWxsICA8
a2JyQGNocm9taXVtLm9yZz4KKysKKysgICAgICAgIFVwZGF0ZSBBTkdMRSB0byAyMDIwLTAzLTI3
CisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA5Njg5
CisrCisrICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KKysKKysgICAgICAgIFJlLWFw
cGx5aW5nIHRoaXMgcGF0Y2ggbm93IHRoYXQgd2UgaGF2ZSBhIGZpeCBmb3IgMjEwOTkyLgorKwor
KyAgICAgICAgVXNlIHVwZGF0ZS1hbmdsZS5zaCBzY3JpcHQgYnkgSmFtZXMgRGFycGluaWFuIHRv
IHJvbGwgQU5HTEUgdG8KKysgICAgICAgIGNvbW1pdCBiMzg3Y2U5Mzg5ZWRlNmE0ZWQzYjgzMWFi
MWI4MTg3OTI3ZmEyOTVmIGluCisrICAgICAgICBodHRwczovL2Nocm9taXVtLmdvb2dsZXNvdXJj
ZS5jb20vYW5nbGUvYW5nbGUgLgorKworKyAgICAgICAgY2hhbmdlcy5kaWZmIGhhcyBiZWVuIGF1
dG8tdXBkYXRlZCB3aXRoIEFwcGxlJ3MgZGlmZnMgcmVsYXRpdmUgdG8KKysgICAgICAgIHVwc3Ry
ZWFtLiBObyBhZGRpdGlvbmFsIG1hbnVhbCBjaGFuZ2VzIGFyZSBtYWRlIGluIHRoaXMgcm9sbC4K
KysgICAgICAgIExvbmcgYXV0b2dlbmVyYXRlZCBmaWxlIGxpc3Qgb21pdHRlZC4KKysKKysyMDIw
LTA1LTA4ICBEYXZpZCBLaWx6ZXIgIDxkZGtpbHplckBhcHBsZS5jb20+CisrCisrICAgICAgICBS
ZW1vdmUgZW1wdHkgZGlyZWN0b3JpZXMgZnJvbSBmcm9tIHN2bi53ZWJraXQub3JnIHJlcG9zaXRv
cnkKKysgICAgICAgIDxodHRwczovL3dlYmtpdC5vcmcvYi8yMTE2NDQ+CisrCisrICAgICAgICBS
ZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KKysKKysgICAgICAgICogaW5jbHVkZS92dWxrYW46IFJl
bW92ZWQuCisrICAgICAgICAqIHNyYy9hbmRyb2lkX3N5c3RlbV9zZXR0aW5nczogUmVtb3ZlZC4K
KysgICAgICAgICogdGhpcmRfcGFydHkvZ2xtYXJrMjogUmVtb3ZlZC4KKysgICAgICAgICogdG9v
bHMvZmxleC1iaXNvbjogUmVtb3ZlZC4KKysKKysyMDIwLTA1LTA3ICBKYW1lcyBEYXJwaW5pYW4g
IDxqZGFycGluaWFuQGNocm9taXVtLm9yZz4KKysKKysgICAgICAgIEZpeCBHb29nbGUgTWFwcyBy
ZW5kZXJpbmcgY29ycnVwdGlvbiBpbiBzaW11bGF0b3Igd2l0aCBBTkdMRQorKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxMTM5OAorKworKyAgICAgICAg
Z2xSZWFkUGl4ZWxzIGNhbGwgbmVlZHMgdG8gcmVzcGVjdCB0aGUgcm93IHN0cmlkZSBvZiB0aGUg
SU9TdXJmYWNlLgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgQWxleCBDaHJpc3RlbnNlbi4KKysK
KysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvSU9TdXJmYWNlU3VyZmFj
ZUVBR0wuaDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvSU9TdXJm
YWNlU3VyZmFjZUVBR0wubW06CisrICAgICAgICAocng6OklPU3VyZmFjZVN1cmZhY2VFQUdMOjpJ
T1N1cmZhY2VTdXJmYWNlRUFHTCk6CisrICAgICAgICAocng6OklPU3VyZmFjZVN1cmZhY2VFQUdM
OjpyZWxlYXNlVGV4SW1hZ2UpOgorKworKzIwMjAtMDUtMDcgIERlYW4gSmFja3NvbiAgPGRpbm9A
YXBwbGUuY29tPgorKworKyAgICAgICAgVXBkYXRlIEFOR0xFIHRvIDIwMjAtMDMtMjcKKysgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDk2ODkKKysKKysg
ICAgICAgIFJldmVydGluZyByMjU5NTg5LiBJdCBjYXVzZWQKKysgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTA5OTIKKysKKysyMDIwLTA1LTA1ICBTYWFt
IEJhcmF0aSAgPHNiYXJhdGlAYXBwbGUuY29tPgorKworKyAgICAgICAgVW5yZXZpZXdlZCwgcmV2
ZXJ0aW5nIHIyNjExNzYuCisrCisrICAgICAgICBJdCBicm9rZSB0aGUgYnVpbGQKKysKKysgICAg
ICAgIFJldmVydGVkIGNoYW5nZXNldDoKKysKKysgICAgICAgICJbQU5HTEVdIERlY2xhcmF0aW9u
cyBzaG91bGQgbWF0Y2ggZGVmaW5pdGlvbnMiCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjExNDEwCisrICAgICAgICBodHRwczovL3RyYWMud2Via2l0
Lm9yZy9jaGFuZ2VzZXQvMjYxMTc2CisrCisrMjAyMC0wNS0wNSAgSm9uYXRoYW4gQmVkYXJkICA8
amJlZGFyZEBhcHBsZS5jb20+CisrCisrICAgICAgICBbQU5HTEVdIERlY2xhcmF0aW9ucyBzaG91
bGQgbWF0Y2ggZGVmaW5pdGlvbnMKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0yMTE0MTAKKysKKysgICAgICAgIFJldmlld2VkIGJ5IEFsZXggQ2hyaXN0
ZW5zZW4uCisrCisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0Rpc3Bs
YXlFQUdMLmg6IFNraXAgZGVmaW5pdGlvbnMgZm9yIHBsYXRmb3JtcworKyAgICAgICAgd2hlcmUg
Y2xhc3MgaXMgdW5kZWZpbmVkLgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wv
ZWFnbC9EaXNwbGF5RUFHTC5tbToKKysgICAgICAgIChyeDo6RGlzcGxheUVBR0w6OmdlbmVyYXRl
Q29uZmlncyk6IEZ1bmN0aW9uIGlzIG5vdCBkZWZpbmVkIGZvciBmb3IgTWFjQ2F0YWx5c3QuCisr
ICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0lPU3VyZmFjZVN1cmZhY2VF
QUdMLmg6IFNraXAgZGVmaW5pdGlvbnMgZm9yIHBsYXRmb3JtcworKyAgICAgICAgd2hlcmUgY2xh
c3MgaXMgdW5kZWZpbmVkLgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFn
bC9JT1N1cmZhY2VTdXJmYWNlRUFHTC5tbToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRl
cmVyL2dsL2VhZ2wvV2luZG93U3VyZmFjZUVBR0wuaDogU2tpcCBkZWZpbml0aW9ucyBmb3IgcGxh
dGZvcm1zCisrICAgICAgICB3aGVyZSBjbGFzcyBpcyB1bmRlZmluZWQuCisrICAgICAgICAqIHNy
Yy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL1dpbmRvd1N1cmZhY2VFQUdMLm1tOgorKworKzIw
MjAtMDQtMjggIENoYW5nU2VvayBPaCAgPGNoYW5nc2Vva0B3ZWJraXQub3JnPgorKworKyAgICAg
ICAgW0dUS10gRml4IGJ1aWxkIGZhaWx1cmVzIGZvciBBTkdMRV9XRUJHTCBhZnRlciByMjU5NTg5
CisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjExMTE2
CisrCisrICAgICAgICBSZXZpZXdlZCBieSBBbGV4IENocmlzdGVuc2VuLgorKworKyAgICAgICAg
VGhlIEFOR0xFX1dFQkdMIGlzIGJyb2tlbiBhZnRlciBBTkdMRSBpcyB1cGRhdGVkIGluIHIyNTk1
ODkuIE1pc3Npbmcgc291cmNlcworKyAgICAgICAgc2hvdWxkIGJlIGFkZGVkIHRvIHRoZSBidWls
ZCB0YXJnZXQuCisrCisrICAgICAgICAqIFBsYXRmb3JtR1RLLmNtYWtlOiBBZGQgbGliYW5nbGVf
Z2xfZWdsX3NvdXJjZXMgYW5kIGxpYmFuZ2xlX2dsX2VnbF9kbF9zb3VyY2VzLgorKworKzIwMjAt
MDQtMjcgIERlYW4gSmFja3NvbiAgPGRpbm9AYXBwbGUuY29tPgorKworKyAgICAgICAgVGVtcG9y
YXJpbHkgc2tpcCBHTF9ERVBUSF9DT01QT05FTlQzMl9PRVMgcmVxdWlyZW1lbnQgZm9yIGRlcHRo
IHRleHR1cmVzIG9uIGlPUworKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIxMTA1NQorKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzYyNDEwNDk5PgorKwor
KyAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIuCisrCisrICAgICAgICBBTkdMRSByZXF1
aXJlcyBHTF9ERVBUSF9DT01QT05FTlQzMl9PRVMgYmUgYXZhaWxhYmxlIGluIG9yZGVyIHRvIGV4
cG9zZSB0aGUKKysgICAgICAgIGRlcHRoIHRleHR1cmUgZXh0ZW5zaW9uLiBIb3dldmVyLCB0aGlz
IGZvcm1hdCBpcyBub3Qgc3VwcG9ydGVkIG9uIGlPUy4KKysgICAgICAgIFRlbXBvcmFyaWx5IHJl
bW92ZSB0aGlzIHJlc3RyaWN0aW9uIHdoaWxlIGludmVzdGlnYXRpbmcgb3RoZXIgYnVncy4KKysK
KysgICAgICAgIFRoaXMgYWxzbyBhbGxvd3MgdXMgdG8gc2VlIHRoZSBmYWlsaW5nIHJlc3VsdHMg
aW4KKysgICAgICAgIGZhc3QvY2FudmFzL3dlYmdsL3dlYmdsLWRlcHRoLXRleHR1cmUuaHRtbAor
KyAgICAgICAgd2ViZ2wvMS4wLjMvY29uZm9ybWFuY2UvZXh0ZW5zaW9ucy93ZWJnbC1kZXB0aC10
ZXh0dXJlLmh0bWwKKysKKysgICAgICAgICogc3JjL2xpYkFOR0xFL0NhcHMuY3BwOgorKyAgICAg
ICAgKGdsOjpEZXRlcm1pbmVEZXB0aFRleHR1cmVBTkdMRVN1cHBvcnQpOgorKyAgICAgICAgKGds
OjpEZXRlcm1pbmVEZXB0aFRleHR1cmVPRVNTdXBwb3J0KToKKysKKysyMDIwLTA0LTI1ICBEYXJp
biBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFtDb2NvYV0gRGVhbCB3aXRo
IGFub3RoZXIgcm91bmQgb2YgWGNvZGUgdXBncmFkZSBjaGVja3MKKysgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTEwMjcKKysKKysgICAgICAgIFJldmll
d2VkIGJ5IEFsZXhleSBQcm9za3VyeWFrb3YuCisrCisrICAgICAgICAqIEFOR0xFLnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2o6IEJ1bXAgdGhlIHVwZ3JhZGUgY2hlY2sgdmVyc2lvbi4KKysgICAg
ICAgIEFkZCBhIGhhcm1sZXNzIGJhc2UgbG9jYWxpemF0aW9uLCByZW5hbWUgRW5nbGlzaCBsb2Nh
bGl6YXRpb24gdG8gZW4sCisrICAgICAgICByZW1vdmUgSmFwYW5lc2UsIEZyZW5jaCwgR2VybWFu
OyB0aGlzIHByb2plY3QgY29udGFpbnMgbm90aGluZyBsb2NhbGl6ZWQuCisrCisrMjAyMC0wNC0w
OCAgVHJ1aXR0IFNhdmVsbCAgPHRzYXZlbGxAYXBwbGUuY29tPgorKworKyAgICAgICAgVW5yZXZp
ZXdlZCwgcmV2ZXJ0aW5nIHIyNTk3MDguCisrCisrICAgICAgICBCcm9rZSB0aGUgaU9TIGRldmlj
ZSBCdWlsZAorKworKyAgICAgICAgUmV2ZXJ0ZWQgY2hhbmdlc2V0OgorKworKyAgICAgICAgIkVu
YWJsZSB0aGUgdXNlIG9mIFhDQnVpbGQgYnkgZGVmYXVsdCBpbiBBcHBsZSBidWlsZHMiCisrICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA5ODkwCisrICAg
ICAgICBodHRwczovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvMjU5NzA4CisrCisrMjAyMC0w
NC0wOCAgS2VpdGggUm9sbGluICA8a3JvbGxpbkBhcHBsZS5jb20+CisrCisrICAgICAgICBFbmFi
bGUgdGhlIHVzZSBvZiBYQ0J1aWxkIGJ5IGRlZmF1bHQgaW4gQXBwbGUgYnVpbGRzCisrICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA5ODkwCisrICAgICAg
ICA8cmRhcjovL3Byb2JsZW0vNDQxODIwNzg+CisrCisrICAgICAgICBSZXZpZXdlZCBieSBEYXJp
biBBZGxlci4KKysKKysgICAgICAgIFN3aXRjaCBmcm9tIHRoZSAibGVnYWN5IiBYY29kZSBidWls
ZCBzeXN0ZW0gdG8gdGhlICJuZXciIGJ1aWxkIHN5c3RlbQorKyAgICAgICAgKGFsc28ga25vd24g
YXMgIlhDQnVpbGQiKS4gU3dpdGNoaW5nIHRvIHRoZSBuZXcgc3lzdGVtIHNwZWVkcyB1cAorKyAg
ICAgICAgYnVpbGRzIGJ5IGEgc21hbGwgcGVyY2VudGFnZSwgYmV0dGVyIHZhbGlkYXRlcyBwcm9q
ZWN0cyBmb3IKKysgICAgICAgIGJ1aWxkLXJlbGF0ZWQgaXNzdWVzIChzdWNoIGFzIGRlcGVuZGVu
Y3kgY3ljbGVzKSwgbGV0cyBXZWJLaXQgYmVuZWZpdAorKyAgICAgICAgZnJvbSBmdXR1cmUgaW1w
cm92ZW1lbnRzIGluIFhDQnVpbGQgc3VjaCBhcyB0aG9zZSBjb21pbmcgZnJvbSB0aGUKKysgICAg
ICAgIHVuZGVybHlpbmcgbGxidWlsZCBvcGVuIHNvdXJjZSBwcm9qZWN0LCBhbmQgcHJlcGFyZXMg
dXMgZm9yIGFueSBvdGhlcgorKyAgICAgICAgdG9vbHMgYnVpbHQgZm9yIHRoaXMgbmV3IGVjb3N5
c3RlbS4KKysKKysgICAgICAgIFNwZWNpZmljIGNoYW5nZXM6CisrCisrICAgICAgICAtIFJlbW92
ZSBYY29kZSBwcm9qZWN0IGFuZCB3b3Jrc3BhY2Ugc2V0dGluZ3MgdGhhdCBzZWxlY3RlZCB0aGUg
QnVpbGQKKysgICAgICAgICAgc3lzdGVtLCBhbGxvd2luZyB0aGUgZGVmYXVsdCB0byB0YWtlIGhv
bGQgKHdoaWNoIGlzIGN1cnJlbnRseSB0aGUKKysgICAgICAgICAgTmV3IGJ1aWxkIHN5c3RlbSku
CisrICAgICAgICAtIFVwZGF0ZWQgd2Via2l0ZGlycy5wbSB3aXRoIGEgdGVyc2VyIGNoZWNrIGZv
ciBYY29kZSB2ZXJzaW9uLgorKyAgICAgICAgLSBVcGRhdGUgYnVpbGQtd2Via2l0IGFuZCBNYWtl
ZmlsZS5zaGFyZWQgdG8gYmUgZXhwbGljaXQgd2hlbiB1c2luZworKyAgICAgICAgICB0aGUgb2xk
IGJ1aWxkIHN5c3RlbSAobm8gbG9uZ2VyIHRyZWF0IGl0IGFzIGEgZGVmYXVsdCBvciBmYWxsLWJh
Y2sKKysgICAgICAgICAgY29uZmlndXJhdGlvbikuCisrICAgICAgICAtIFVwZGF0ZSB2YXJpb3Vz
IHhjY29uZmlnIGZpbGVzIHNpbWlsYXJseSB0byB0cmVhdCB0aGUgZGVmYXVsdCBhcworKyAgICAg
ICAgICB1c2luZyB0aGUgbmV3IGJ1aWxkIHN5c3RlbS4KKysgICAgICAgIC0gVXBkYXRlIHZhcmlv
dXMgcG9zdC1wcm9jZXNzaW5nIGJ1aWxkIHN0ZXBzIHRvIGNoZWNrIGZvciBYY29kZSAxMS40Cisr
ICAgICAgICAgIGFuZCB0byBubyBsb25nZXIgdHJlYXQgdGhlIGRlZmF1bHQgYXMgdXNpbmcgdGhl
IG9sZCBidWlsZCBzeXN0ZW0uCisrCisrICAgICAgICAqIEFOR0xFLnhjb2RlcHJvai9wcm9qZWN0
LnBieHByb2o6CisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0FOR0xFLnhjY29uZmlnOgorKwor
KzIwMjAtMDQtMDYgIEtlbm5ldGggUnVzc2VsbCAgPGtickBjaHJvbWl1bS5vcmc+CisrCisrICAg
ICAgICBVcGRhdGUgQU5HTEUgdG8gMjAyMC0wMy0yNworKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwOTY4OQorKworKyAgICAgICAgUmV2aWV3ZWQgYnkg
RGFyaW4gQWRsZXIuCisrCisrICAgICAgICBVc2UgdXBkYXRlLWFuZ2xlLnNoIHNjcmlwdCBieSBK
YW1lcyBEYXJwaW5pYW4gdG8gcm9sbCBBTkdMRSB0bworKyAgICAgICAgY29tbWl0IGIzODdjZTkz
ODllZGU2YTRlZDNiODMxYWIxYjgxODc5MjdmYTI5NWYgaW4KKysgICAgICAgIGh0dHBzOi8vY2hy
b21pdW0uZ29vZ2xlc291cmNlLmNvbS9hbmdsZS9hbmdsZSAuCisrCisrICAgICAgICBjaGFuZ2Vz
LmRpZmYgaGFzIGJlZW4gYXV0by11cGRhdGVkIHdpdGggQXBwbGUncyBkaWZmcyByZWxhdGl2ZSB0
bworKyAgICAgICAgdXBzdHJlYW0uIE5vIGFkZGl0aW9uYWwgbWFudWFsIGNoYW5nZXMgYXJlIG1h
ZGUgaW4gdGhpcyByb2xsLgorKyAgICAgICAgTG9uZyBhdXRvZ2VuZXJhdGVkIGZpbGUgbGlzdCBv
bWl0dGVkLgorKworKzIwMjAtMDQtMDMgIEtlbm5ldGggUnVzc2VsbCAgPGtickBjaHJvbWl1bS5v
cmc+CisrCisrICAgICAgICBGaXggYnVncyByZWxhdGVkIHRvIFZpZGVvVGV4dHVyZUNvcGllckNW
IGFuZCBBTkdMRSByb2xsIHNjcmlwdAorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIwOTk0MworKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGVhbiBKYWNr
c29uLgorKworKyAgICAgICAgVXBkYXRlIHRoZSB1cGRhdGUtYW5nbGUuc2ggc2NyaXB0IHRvIHRh
a2UgaW50byBhY2NvdW50IHRoZSBuZXcKKysgICAgICAgIHByb2NlZHVyZSBmb3IgZ2VuZXJhdGlu
ZyBBTkdMRSdzIGNvbW1pdCBJRCBoZWFkZXIgZmlsZS4gVGhpcworKyAgICAgICAgZW5hYmxlcyBB
TkdMRSByb2xscyBpbnRvIFdlYktpdCBhZ2Fpbi4KKysKKysgICAgICAgICogdXBkYXRlLWFuZ2xl
LnNoOgorKworKzIwMjAtMDQtMDMgIEtlaXRoIFJvbGxpbiAgPGtyb2xsaW5AYXBwbGUuY29tPgor
KworKyAgICAgICAgRG8gbm90IGxpbmsgd2l0aCBPcGVuR0wgb24gQXBwbGUgcGxhdGZvcm1zCisr
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA5OTQ2Cisr
ICAgICAgICA8cmRhcjovL3Byb2JsZW0vNjEyMzc5NTY+CisrCisrICAgICAgICBSZXZpZXdlZCBi
eSBTYW0gV2VpbmlnLgorKworKyAgICAgICAgT3BlbkdMIGlzIG5vdCB1c2VkIGluIG91ciBidWls
ZCBvZiBBTkdMRS4gQXR0ZW1wdGluZyB0byBsaW5rIHdpdGggaXQKKysgICAgICAgIGNhdXNlcyB3
YXJuaW5ncywgd2hpY2ggY2FuIHR1cm4gaW50byBlcnJvcnMgaW4gc29tZSBjYXNlcyAoaW4KKysg
ICAgICAgIHBhcnRpY3VsYXIsIHdoZW4gYnVpbGRpbmcgd2l0aCBYY29kZSdzICJuZXciIGJ1aWxk
IHN5c3RlbSkuCisrCisrICAgICAgICAqIEFOR0xFLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6
CisrCisrMjAyMC0wNC0wMyAgRGF2aWQgS2lsemVyICA8ZGRraWx6ZXJAYXBwbGUuY29tPgorKwor
KyAgICAgICAgW1hjb2RlXSBSZXBsYWNlIEFTQU5fT1RIRVJfQ0ZMQUdTIGFuZCBBU0FOX09USEVS
X0NQTFVTUExVU0ZMQUdTIHdpdGggJChpbmhlcml0ZWQpCisrICAgICAgICA8aHR0cHM6Ly93ZWJr
aXQub3JnL2IvMjA5OTYzPgorKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzYxMjU3NTA0PgorKwor
KyAgICAgICAgUmV2aWV3ZWQgYnkgQWxleGV5IFByb3NrdXJ5YWtvdi4KKysKKysgICAgICAgICog
QU5HTEUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKysgICAgICAgICogQ29uZmlndXJhdGlv
bnMvQmFzZS54Y2NvbmZpZzoKKysgICAgICAgIC0gUmVtb3ZlIEFTQU5fT1RIRVJfQ0ZMQUdTLCBB
U0FOX09USEVSX0NQTFVTUExVU0ZMQUdTIGFuZAorKyAgICAgICAgICBBU0FOX09USEVSX0xERkxB
R1MuCisrCisrMjAyMC0wMy0yNyAgS2VubmV0aCBSdXNzZWxsICA8a2JyQGNocm9taXVtLm9yZz4K
KysKKysgICAgICAgIFVzZSBBTkdMRV9yb2J1c3RfY2xpZW50X21lbW9yeSB0byByZXBsYWNlIGZy
YW1lYnVmZmVyL3RleHR1cmUgdmFsaWRhdGlvbgorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIwOTA5OAorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGVh
biBKYWNrc29uLgorKworKyAgICAgICAgSW5jb3Jwb3JhdGVkIGZpeCBmcm9tIGFuZ2xlYnVnLmNv
bS80NTA0IHRvIG1ha2UKKysgICAgICAgIGZhc3QvY2FudmFzL3dlYmdsL3VuaW5pdGlhbGl6ZWQt
dGVzdC5odG1sIHBhc3MuCisrCisrICAgICAgICBJbmNvcnBvcmF0ZWQgZml4IGZyb20gYW5nbGVi
dWcuY29tLzQ1MTggdG8gbWFrZToKKysgICAgICAgICB3ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIv
cmVuZGVyYnVmZmVycy9pbnZhbGlkYXRlLWZyYW1lYnVmZmVyLmh0bWwKKysgICAgICAgICB3ZWJn
bC8yLjAuMC9jb25mb3JtYW5jZTIvcmVuZGVyaW5nL2JsaXRmcmFtZWJ1ZmZlci10ZXN0Lmh0bWwK
KysgICAgICAgICB3ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvcmVuZGVyaW5nL3JnYi1mb3JtYXQt
c3VwcG9ydC5odG1sCisrICAgICAgICAgd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3N0YXRlL2ds
LW9iamVjdC1nZXQtY2FsbHMuaHRtbAorKyAgICAgICAgIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNl
Mi90ZXh0dXJlcy9taXNjL3RleC1uZXctZm9ybWF0cy5odG1sCisrICAgICAgICBwYXNzLgorKwor
KyAgICAgICAgKiBzcmMvbGliQU5HTEUvVGV4dHVyZS5jcHA6CisrICAgICAgICAoZ2w6OlRleHR1
cmU6OmNvcHlTdWJJbWFnZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OmVuc3VyZVN1YkltYWdl
SW5pdGlhbGl6ZWQpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvcmVuZGVy
ZXJnbF91dGlscy5jcHA6CisrICAgICAgICAocng6Om5hdGl2ZWdsX2dsOjpJbml0aWFsaXplRmVh
dHVyZXMpOgorKworKzIwMjAtMDMtMjEgIEtlaXRoIFJvbGxpbiAgPGtyb2xsaW5AYXBwbGUuY29t
PgorKworKyAgICAgICAgU2V0IElOU1RBTExIRFJTX1NDUklQVF9QSEFTRSBpbiBBTkdMRSBidWls
ZHMKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDkz
ODQKKysgICAgICAgIDxyZGFyOi8vcHJvYmxlbS81OTUxMzM4MD4KKysKKysgICAgICAgIFJldmll
d2VkIGJ5IERhbiBCZXJuc3RlaW4uCisrCisrICAgICAgICBQcm9kdWN0aW9uIEFOR0xFIGJ1aWxk
cyBhcmUgdGVjaG5pY2FsbHkgbm9uLWNvbXBsaWFudC4gRHVyaW5nIHRoZQorKyAgICAgICAgaW5z
dGFsbGhkcnMgYnVpbGQgYWN0aW9uLCBBTkdMRSBoZWFkZXJzIGFyZSBleHBvcnRlZCBidXQgYXJl
IG5vdAorKyAgICAgICAgcG9zdC1wcm9jZXNzZWQuIFRoaXMgZGlmZmVycyBmcm9tIHRoZSBpbnN0
YWxsIGJ1aWxkIGFjdGlvbiwgd2hlcmUgdGhlCisrICAgICAgICBleHBvcnRlZCBoZWFkZXJzICph
cmUqIHBvc3QtcHJvY2Vzc2VkLiBUaGUgaGVhZGVycyBuZWVkIHRvIGJlIHRyZWF0ZWQKKysgICAg
ICAgIGlkZW50aWNhbGx5IHVuZGVyIGJvdGggYWN0aW9ucy4gVGhlIHBvc3QtcHJvY2Vzc2luZyBp
cyBlbmFibGVkIGJ5CisrICAgICAgICBzZXR0aW5nIHRoZSBJTlNUQUxMSERSU19TQ1JJUFRfUEhB
U0UgYnVpbGQgc2V0dGluZyB0byBZRVMuIE1vc3Qgb3RoZXIKKysgICAgICAgIFdlYktpdCBwcm9q
ZWN0cyBhbHJlYWR5IHNldCB0aGlzIHNldHRpbmcgKHNlZSwgZm9yIGV4YW1wbGUsCisrICAgICAg
ICBodHRwczovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvMTU1Nzg3LAorKyAgICAgICAgaHR0
cHM6Ly90cmFjLndlYmtpdC5vcmcvY2hhbmdlc2V0LzExMDMyNywgYW5kCisrICAgICAgICBodHRw
czovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvNDE0MTcpLgorKworKyAgICAgICAgKiBDb25m
aWd1cmF0aW9ucy9BTkdMRS54Y2NvbmZpZzoKKysKKysyMDIwLTAzLTE1ICBNaWNoYWVsIENhdGFu
emFybyAgPG1jYXRhbnphcm9AZ25vbWUub3JnPgorKworKyAgICAgICAgW0FOR0xFXSBTb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tbW9uL3V0aWxpdGllcy5jcHA6MTA6IHdhcm5pbmc6IGln
bm9yaW5nICNwcmFnbWEgY2xhbmcgZGlhZ25vc3RpYyBbLVd1bmtub3duLXByYWdtYXNdCisrICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA5MDE0CisrCisr
ICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KKysKKysgICAgICAgIFNpbGVuY2UgY29t
cGlsZXIgd2FybmluZy4KKysKKysgICAgICAgICogY2hhbmdlcy5kaWZmOgorKyAgICAgICAgKiBz
cmMvY29tbW9uL3V0aWxpdGllcy5jcHA6CisrCisrMjAyMC0wMy0xNSAgTWljaGFlbCBDYXRhbnph
cm8gIDxtY2F0YW56YXJvQGdub21lLm9yZz4KKysKKysgICAgICAgIFtBTkdMRV0gU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL0Rpc3BsYXkuaDoyMjE6NzM6IHdhcm5pbmc6IGlt
cGxpY2l0bHktZGVjbGFyZWQg4oCYZWdsOjpBdHRyaWJ1dGVNYXAmIGVnbDo6QXR0cmlidXRlTWFw
OjpvcGVyYXRvcj0oY29uc3QgZWdsOjpBdHRyaWJ1dGVNYXAmKeKAmSBpcyBkZXByZWNhdGVkIFst
V2RlcHJlY2F0ZWQtY29weV0KKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0yMDkwMTUKKysKKysgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgor
KworKyAgICAgICAgU3VwcHJlc3MgY29tcGlsZXIgd2FybmluZy4gSWYgdGhpcyB3ZXJlIFdlYktp
dCBjb2RlLCBJIG1pZ2h0IHRha2UgdGhlIHRpbWUgdG8gZml4IGl0LCBidXQKKysgICAgICAgIHdp
dGggdGhpcmQtcGFydHkgY29kZSBpdCdzIHByb2JhYmx5IGJlc3QgdG8ganVzdCB0dXJuIG9mZiB3
YXJuaW5ncyB0aGF0IHVwc3RyZWFtIGlzIG5vdAorKyAgICAgICAgdXNpbmcuCisrCisrICAgICAg
ICAqIENNYWtlTGlzdHMudHh0OgorKworKzIwMjAtMDMtMDIgIEFsYW4gQ29vbiAgPGFsYW5jb29u
QGFwcGxlLmNvbT4KKysKKysgICAgICAgIEFkZCBuZXcgTWFjIHRhcmdldCBudW1iZXJzCisrICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA4Mzk4CisrCisr
ICAgICAgICBSZXZpZXdlZCBieSBBbGV4ZXkgUHJvc2t1cnlha292LgorKworKyAgICAgICAgKiBD
b25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnOgorKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9E
ZWJ1Z1JlbGVhc2UueGNjb25maWc6CisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL1ZlcnNpb24u
eGNjb25maWc6CisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL1dlYktpdFRhcmdldENvbmRpdGlv
bmFscy54Y2NvbmZpZzoKKysKKysyMDIwLTAyLTEyICBNaWNoYWVsIENhdGFuemFybyAgPG1jYXRh
bnphcm9AZ25vbWUub3JnPgorKworKyAgICAgICAgTXVsdGlwbGUgR0NDIDEwIGJ1aWxkIGZhaWx1
cmVzIGluIEFOR0xFCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjA3MzY1CisrCisrICAgICAgICBSZXZpZXdlZCBieSBDYXJsb3MgQWxiZXJ0byBMb3Bl
eiBQZXJlei4KKysKKysgICAgICAgICogY2hhbmdlcy5kaWZmOiBVcGRhdGVkLgorKyAgICAgICAg
KiBpbmNsdWRlL3BsYXRmb3JtL1BsYXRmb3JtLmg6IEFkZCBtaXNzaW5nICNpbmNsdWRlIHRvIGdl
dCBzaXplX3QuCisrICAgICAgICAqIHNyYy9jb21tb24vUGFja2VkRW51bXMuaDogUmVtb3ZlIHBy
b2JsZW1hdGljIGNvbnN0X2Nhc3RzLgorKworKzIwMjAtMDItMTIgIERlYW4gSmFja3NvbiAgPGRp
bm9AYXBwbGUuY29tPgorKworKyAgICAgICAgQU5HTEUgaGFzIHVudXNlZCBiaXNvbiBhbmQgZ2xt
YXJrMiBjb2RlCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MjA3NTk3CisrICAgICAgICByZGFyOi8vNTkzNjE0NjAKKysKKysgICAgICAgIFJldmlld2Vk
IGJ5IE1hY2llaiBTdGFjaG93aWFrLgorKworKyAgICAgICAgUmVtb3ZlIHNvbWUgdW51c2VkIGZp
bGVzLgorKworKyAgICAgICAgKiBjaGFuZ2VzLmRpZmY6CisrICAgICAgICAqIHNyYy90ZXN0cy9w
ZXJmX3Rlc3RzL2dsbWFyazJCZW5jaG1hcmsuY3BwOiBSZW1vdmVkLgorKyAgICAgICAgKiB0aGly
ZF9wYXJ0eS9nbG1hcmsyL0JVSUxELmduOiBSZW1vdmVkLgorKyAgICAgICAgKiB0aGlyZF9wYXJ0
eS9nbG1hcmsyL1JFQURNRS5hbmdsZTogUmVtb3ZlZC4KKysgICAgICAgICogdG9vbHMvZmxleC1i
aXNvbi9SRUFETUUubWQ6IFJlbW92ZWQuCisrICAgICAgICAqIHRvb2xzL2ZsZXgtYmlzb24vbGlu
dXgvYmlzb24uc2hhMTogUmVtb3ZlZC4KKysgICAgICAgICogdG9vbHMvZmxleC1iaXNvbi9saW51
eC9mbGV4LnNoYTE6IFJlbW92ZWQuCisrICAgICAgICAqIHRvb2xzL2ZsZXgtYmlzb24vdGhpcmRf
cGFydHkvLmdpdGF0dHJpYnV0ZXM6IFJlbW92ZWQuCisrICAgICAgICAqIHRvb2xzL2ZsZXgtYmlz
b24vdGhpcmRfcGFydHkvbTRzdWdhci9MSUNFTlNFOiBSZW1vdmVkLgorKyAgICAgICAgKiB0b29s
cy9mbGV4LWJpc29uL3RoaXJkX3BhcnR5L200c3VnYXIvUkVBRE1FLmNocm9taXVtOiBSZW1vdmVk
LgorKyAgICAgICAgKiB0b29scy9mbGV4LWJpc29uL3RoaXJkX3BhcnR5L200c3VnYXIvZm9yZWFj
aC5tNDogUmVtb3ZlZC4KKysgICAgICAgICogdG9vbHMvZmxleC1iaXNvbi90aGlyZF9wYXJ0eS9t
NHN1Z2FyL200c3VnYXIubTQ6IFJlbW92ZWQuCisrICAgICAgICAqIHRvb2xzL2ZsZXgtYmlzb24v
dGhpcmRfcGFydHkvc2tlbGV0b25zL0xJQ0VOU0U6IFJlbW92ZWQuCisrICAgICAgICAqIHRvb2xz
L2ZsZXgtYmlzb24vdGhpcmRfcGFydHkvc2tlbGV0b25zL1JFQURNRS5jaHJvbWl1bTogUmVtb3Zl
ZC4KKysgICAgICAgICogdG9vbHMvZmxleC1iaXNvbi90aGlyZF9wYXJ0eS9za2VsZXRvbnMvYmlz
b24ubTQ6IFJlbW92ZWQuCisrICAgICAgICAqIHRvb2xzL2ZsZXgtYmlzb24vdGhpcmRfcGFydHkv
c2tlbGV0b25zL2MtbGlrZS5tNDogUmVtb3ZlZC4KKysgICAgICAgICogdG9vbHMvZmxleC1iaXNv
bi90aGlyZF9wYXJ0eS9za2VsZXRvbnMvYy5tNDogUmVtb3ZlZC4KKysgICAgICAgICogdG9vbHMv
ZmxleC1iaXNvbi90aGlyZF9wYXJ0eS9za2VsZXRvbnMveWFjYy5jOiBSZW1vdmVkLgorKyAgICAg
ICAgKiB0b29scy9mbGV4LWJpc29uL3VwZGF0ZV9mbGV4X2Jpc29uX2JpbmFyaWVzLnB5OiBSZW1v
dmVkLgorKyAgICAgICAgKiB0b29scy9mbGV4LWJpc29uL3dpbmRvd3MvYmlzb24uZXhlLnNoYTE6
IFJlbW92ZWQuCisrICAgICAgICAqIHRvb2xzL2ZsZXgtYmlzb24vd2luZG93cy9mbGV4LmV4ZS5z
aGExOiBSZW1vdmVkLgorKyAgICAgICAgKiB0b29scy9mbGV4LWJpc29uL3dpbmRvd3MvbTQuZXhl
LnNoYTE6IFJlbW92ZWQuCisrICAgICAgICAqIHRvb2xzL2ZsZXgtYmlzb24vd2luZG93cy9tc3lz
LTIuMC5kbGwuc2hhMTogUmVtb3ZlZC4KKysgICAgICAgICogdG9vbHMvZmxleC1iaXNvbi93aW5k
b3dzL21zeXMtaWNvbnYtMi5kbGwuc2hhMTogUmVtb3ZlZC4KKysgICAgICAgICogdG9vbHMvZmxl
eC1iaXNvbi93aW5kb3dzL21zeXMtaW50bC04LmRsbC5zaGExOiBSZW1vdmVkLgorKworKzIwMjAt
MDItMDkgIEtlaXRoIFJvbGxpbiAgPGtyb2xsaW5AYXBwbGUuY29tPgorKworKyAgICAgICAgUmUt
ZW5hYmxlIExUTyBmb3IgQVJNIGJ1aWxkcworKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTIwNzQwMgorKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzQ5MTkw
NzY3PgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgU2FtIFdlaW5pZy4KKysKKysgICAgICAgIEJ1
ZyAxOTA3NTggcmUtZW5hYmxlZCBMVE8gZm9yIFByb2R1Y3Rpb24gYnVpbGRzIGZvciB4ODYtZmFt
aWx5IENQVXMuCisrICAgICAgICBFbmFibGluZyBpdCBmb3IgQVJNIHdhcyBsZWZ0IG91dCBkdWUg
dG8gYSBjb21waWxlciBpc3N1ZS4gVGhhdCBpc3N1ZQorKyAgICAgICAgaGFzIGJlZW4gZml4ZWQs
IGFuZCBzbyBub3cgd2UgY2FuIHJlLWVuYWJsZSBMVE8gZm9yIEFSTS4KKysKKysgICAgICAgICog
Q29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZzoKKysKKysyMDIwLTAyLTA3ICBLZW5uZXRoIFJ1
c3NlbGwgIDxrYnJAY2hyb21pdW0ub3JnPgorKworKyAgICAgICAgVHJ5IGFkZGluZyBnbEJpbmRG
cmFtZWJ1ZmZlciBmbHVzaCB3b3JrYXJvdW5kIHRvIEFOR0xFIGFzIHJlbWVkeSBmb3IgZmxha3kg
V2ViR0wgdGVzdHMKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMDY2MjUKKysKKysgICAgICAgIFJldmlld2VkIGJ5IERlYW4gSmFja3Nvbi4KKysKKysg
ICAgICAgICogaW5jbHVkZS9wbGF0Zm9ybS9GZWF0dXJlc0dMLmg6CisrICAgICAgICAqIHNyYy9s
aWJBTkdMRS9yZW5kZXJlci9nbC9TdGF0ZU1hbmFnZXJHTC5jcHA6CisrICAgICAgICAocng6OlN0
YXRlTWFuYWdlckdMOjpiaW5kRnJhbWVidWZmZXIpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUv
cmVuZGVyZXIvZ2wvcmVuZGVyZXJnbF91dGlscy5jcHA6CisrICAgICAgICAocng6Om5hdGl2ZWds
X2dsOjpJbml0aWFsaXplRmVhdHVyZXMpOgorKworKzIwMjAtMDItMDUgIERlYW4gSmFja3NvbiAg
PGRpbm9AYXBwbGUuY29tPgorKworKyAgICAgICAgRml4IE1hY0NhdGFseXN0IGJ1aWxkLgorKwor
KyAgICAgICAgKiBzcmMvbGliQU5HTEUvdmFsaWRhdGlvbkVHTC5jcHA6CisrICAgICAgICAoZWds
OjpWYWxpZGF0ZUNyZWF0ZVBidWZmZXJGcm9tQ2xpZW50QnVmZmVyKToKKysKKysyMDIwLTAyLTA0
ICBKYW1lcyBEYXJwaW5pYW4gIDxqZGFycGluaWFuQGNocm9taXVtLm9yZz4KKysKKysgICAgICAg
IFVwZGF0ZSBBTkdMRQorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIwNjMxOAorKworKyAgICAgICAgU2V2ZXJhbCBpbXBvcnRhbnQgY2hhbmdlcyB0byBm
aXggbGF5b3V0IHRlc3QgZmFpbHVyZXMgYW5kIHRpbWVvdXRzIGluIHRoaXMgdXBkYXRlLgorKyAg
ICAgICAgLSBNYWRlIGV4cGVuc2l2ZSB2YWxpZGF0aW9uIG5vbi1kZWZhdWx0IGluIGRlYnVnIG1v
ZGUgdG8gcmVkdWNlIHRpbWVvdXRzLgorKyAgICAgICAgLSBPcHRpbWl6ZSBkaXNhYmxpbmcgQVJC
X3RleHR1cmVfcmVjdGFuZ2xlIHRvIG1ha2Ugc2hhZGVyIGNvbXBpbGF0aW9uIG11Y2ggZmFzdGVy
LgorKyAgICAgICAgLSBGbHVzaCBiZWZvcmUgdGV4dHVyZSBkZWxldGlvbiB0byB3b3JrIGFyb3Vu
ZCBNYWMgSW50ZWwgZHJpdmVyIGJ1Zy4KKysKKysgICAgICAgIFJldmlld2VkIGJ5IERlYW4gSmFj
a3Nvbi4KKysKKysgICAgICAgICogQU5HTEUucGxpc3Q6IHVwZGF0ZSBjb21taXQgaGFzaAorKyAg
ICAgICAgKiBBTkdMRS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOiBBZGQvcmVtb3ZlIGZpbGVz
CisrICAgICAgICAqIENvbXBpbGVyLmNtYWtlOiBUcmFuc2xhdGVkIGZyb20gY29tcGlsZXIuZ25p
CisrICAgICAgICAqIEdMRVN2Mi5jbWFrZTogVHJhbnNsYXRlZCBmcm9tIGxpYkdMRVN2Mi5nbmkK
KysgICAgICAgICogY2hhbmdlcy5kaWZmOiBOb3cgbGlzdHMgYWxsIGNoYW5nZXMgZnJvbSB1cHN0
cmVhbS4KKysgICAgICAgICogdXBkYXRlLWFuZ2xlLnNoOiBEaWZmIGNvbW1hbmQgd2FzIHdyb25n
LgorKyAgICAgICAgKiBQbHVzIGEgd2hvbGUgbG90IG9mIGNoYW5nZXMgZnJvbSB1cHN0cmVhbS4K
KysKKysyMDIwLTAxLTMwICBKYW1lcyBEYXJwaW5pYW4gIDxqZGFycGluaWFuQGNocm9taXVtLm9y
Zz4KKysKKysgICAgICAgIFVwZGF0ZSBBTkdMRQorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIwNjMxOAorKworKyAgICAgICAgVGFrZSB0d28hCisrCisr
ICAgICAgICBTZXZlcmFsIGltcG9ydGFudCBjaGFuZ2VzIHRvIGZpeCBsYXlvdXQgdGVzdCBmYWls
dXJlcyBhbmQgdGltZW91dHMgaW4gdGhpcyB1cGRhdGUuCisrICAgICAgICAtIE1hZGUgZXhwZW5z
aXZlIHZhbGlkYXRpb24gbm9uLWRlZmF1bHQgaW4gZGVidWcgbW9kZSB0byByZWR1Y2UgdGltZW91
dHMuCisrICAgICAgICAtIE9wdGltaXplIGRpc2FibGluZyBBUkJfdGV4dHVyZV9yZWN0YW5nbGUg
dG8gbWFrZSBzaGFkZXIgY29tcGlsYXRpb24gbXVjaCBmYXN0ZXIuCisrICAgICAgICAtIEZsdXNo
IGJlZm9yZSB0ZXh0dXJlIGRlbGV0aW9uIHRvIHdvcmsgYXJvdW5kIE1hYyBJbnRlbCBkcml2ZXIg
YnVnLgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGVhbiBKYWNrc29uLgorKworKyAgICAgICAg
KiBBTkdMRS5wbGlzdDogdXBkYXRlIGNvbW1pdCBoYXNoCisrICAgICAgICAqIEFOR0xFLnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2o6IEFkZC9yZW1vdmUgZmlsZXMKKysgICAgICAgICogQ29tcGls
ZXIuY21ha2U6IFRyYW5zbGF0ZWQgZnJvbSBjb21waWxlci5nbmkKKysgICAgICAgICogR0xFU3Yy
LmNtYWtlOiBUcmFuc2xhdGVkIGZyb20gbGliR0xFU3YyLmduaQorKyAgICAgICAgKiBjaGFuZ2Vz
LmRpZmY6IE5vdyBsaXN0cyBhbGwgY2hhbmdlcyBmcm9tIHVwc3RyZWFtLgorKyAgICAgICAgKiB1
cGRhdGUtYW5nbGUuc2g6IERpZmYgY29tbWFuZCB3YXMgd3JvbmcuCisrICAgICAgICAqIFBsdXMg
YSB3aG9sZSBsb3Qgb2YgY2hhbmdlcyBmcm9tIHVwc3RyZWFtLgorKworKzIwMjAtMDEtMjIgIEph
bWVzIERhcnBpbmlhbiAgPGpkYXJwaW5pYW5AY2hyb21pdW0ub3JnPgorKworKyAgICAgICAgVXBk
YXRlIEFOR0xFCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MjA2MzE4CisrCisrICAgICAgICBTZXZlcmFsIGltcG9ydGFudCBjaGFuZ2VzIHRvIGZpeCBs
YXlvdXQgdGVzdCBmYWlsdXJlcyBhbmQgdGltZW91dHMgaW4gdGhpcyB1cGRhdGUuCisrICAgICAg
ICAtIE1hZGUgZXhwZW5zaXZlIHZhbGlkYXRpb24gbm9uLWRlZmF1bHQgaW4gZGVidWcgbW9kZSB0
byByZWR1Y2UgdGltZW91dHMuCisrICAgICAgICAtIE9wdGltaXplIGRpc2FibGluZyBBUkJfdGV4
dHVyZV9yZWN0YW5nbGUgdG8gbWFrZSBzaGFkZXIgY29tcGlsYXRpb24gbXVjaCBmYXN0ZXIuCisr
ICAgICAgICAtIEZsdXNoIGJlZm9yZSB0ZXh0dXJlIGRlbGV0aW9uIHRvIHdvcmsgYXJvdW5kIE1h
YyBJbnRlbCBkcml2ZXIgYnVnLgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGVhbiBKYWNrc29u
LgorKworKyAgICAgICAgKiBBTkdMRS5wbGlzdDogdXBkYXRlIGNvbW1pdCBoYXNoCisrICAgICAg
ICAqIEFOR0xFLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6IEFkZC9yZW1vdmUgZmlsZXMKKysg
ICAgICAgICogQ29tcGlsZXIuY21ha2U6IFRyYW5zbGF0ZWQgZnJvbSBjb21waWxlci5nbmkKKysg
ICAgICAgICogR0xFU3YyLmNtYWtlOiBUcmFuc2xhdGVkIGZyb20gbGliR0xFU3YyLmduaQorKyAg
ICAgICAgKiBjaGFuZ2VzLmRpZmY6IE5vdyBsaXN0cyBhbGwgY2hhbmdlcyBmcm9tIHVwc3RyZWFt
LgorKyAgICAgICAgKiB1cGRhdGUtYW5nbGUuc2g6IERpZmYgY29tbWFuZCB3YXMgd3JvbmcuCisr
ICAgICAgICAqIFBsdXMgYSB3aG9sZSBsb3Qgb2YgY2hhbmdlcyBmcm9tIHVwc3RyZWFtLgorKwor
KzIwMjAtMDEtMjIgIEphbWVzIERhcnBpbmlhbiAgPGpkYXJwaW5pYW5AY2hyb21pdW0ub3JnPgor
KworKyAgICAgICAgUkVHUkVTU0lPTiAocjI1MzkyNik6IHdlYmdsLzEuMC4zL2NvbmZvcm1hbmNl
L3JlbmRlcmluZy9tYW55LWRyYXctY2FsbHMuaHRtbCBpcyBtdWNoIHNsb3dlciwgdGltZXMgb3V0
IGluIGRlYnVnCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MjA1NjY4CisrCisrICAgICAgICBEaXNhYmxlIGFzc2VydHMgd2hlbiBjb21waWxpbmcgQU5H
TEUgaW4gcmVsZWFzZSBtb2RlIGJ5IGRlZmluaW5nCisrICAgICAgICBOREVCVUcuCisrCisrICAg
ICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisrCisrICAgICAgICAqIENvbmZpZ3VyYXRp
b25zL0FOR0xFLnhjY29uZmlnOgorKworKzIwMjAtMDEtMTQgIERlYW4gSmFja3NvbiAgPGRpbm9A
YXBwbGUuY29tPgorKworKyAgICAgICAgQnVpbGQgQU5HTEUgYXMgYSBkeW5hbWljIGxpYnJhcnkK
KysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDQ3MDgK
KysgICAgICAgIHJkYXI6Ly81NzM0OTM4NAorKworKyAgICAgICAgUm9sbGluZyB0aGlzIG91dCBm
b3IgdGhlIDJuZCB0aW1lLgorKworKyAgICAgICAgLSBpdCBjYXVzZWQgaXNzdWVzIHdpdGggdGhl
IHNoYXJlZCBkeWxkIGNhY2hlLCBiZWNhdXNlIHRoZQorKyAgICAgICAgY2FjaGUgZG9lc24ndCBr
bm93IHRvIGluY2x1ZGUgdGhlIGxpYmFyeSB1bnRpbCBpdCBhbHJlYWR5CisrICAgICAgICBleGlz
dHMgaW4gdGhlIGJ1aWxkCisrICAgICAgICAtIHByb2JhYmx5IHJlbGF0ZWQgdG8gdGhlIGFib3Zl
LCB3ZSBzYXcgc29tZSBwZXJmb3JtYW5jZQorKyAgICAgICAgcmVncmVzc2lvbnMgZGlyZWN0bHkg
cmVsYXRlZCB0byB0aGlzIGNoYW5nZQorKworKyAgICAgICAgKiBBTkdMRS54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qOgorKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9BTkdMRS54Y2NvbmZpZzoK
KysgICAgICAgICogQ29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZzoKKysgICAgICAgICogQ29u
ZmlndXJhdGlvbnMvRGVidWdSZWxlYXNlLnhjY29uZmlnOgorKyAgICAgICAgKiBpbmNsdWRlL0NN
YWtlTGlzdHMudHh0OgorKyAgICAgICAgKiBpbmNsdWRlL0dMU0xBTkcvU2hhZGVyTGFuZy5oOgor
KyAgICAgICAgKiBpbmNsdWRlL0dMU0xBTkcvU2hhZGVyVmFycy5oOgorKyAgICAgICAgKiBzcmMv
bGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0Rpc3BsYXlDR0wubW06CisrICAgICAgICAocng6OkRp
c3BsYXlDR0w6OmlzVmFsaWROYXRpdmVXaW5kb3cgY29uc3QpOgorKyAgICAgICAgKiBzcmMvbGli
QU5HTEUvcmVuZGVyZXIvZ2wvY2dsL1dpbmRvd1N1cmZhY2VDR0wubW06CisrICAgICAgICAocng6
OldpbmRvd1N1cmZhY2VDR0w6OldpbmRvd1N1cmZhY2VDR0wpOgorKyAgICAgICAgKHJ4OjpXaW5k
b3dTdXJmYWNlQ0dMOjp+V2luZG93U3VyZmFjZUNHTCk6CisrICAgICAgICAqIHNyYy9saWJBTkdM
RS9yZW5kZXJlci9nbC9lYWdsL0Rpc3BsYXlFQUdMLm1tOgorKyAgICAgICAgKHJ4OjpEaXNwbGF5
RUFHTDo6dGVybWluYXRlKToKKysgICAgICAgIChyeDo6RGlzcGxheUVBR0w6OmlzVmFsaWROYXRp
dmVXaW5kb3cgY29uc3QpOgorKyAgICAgICAgKHJ4OjpXb3JrZXJDb250ZXh0RUFHTDo6fldvcmtl
ckNvbnRleHRFQUdMKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wv
V2luZG93U3VyZmFjZUVBR0wubW06CisrICAgICAgICAocng6OldpbmRvd1N1cmZhY2VFQUdMOjpX
aW5kb3dTdXJmYWNlRUFHTCk6CisrICAgICAgICAocng6OldpbmRvd1N1cmZhY2VFQUdMOjp+V2lu
ZG93U3VyZmFjZUVBR0wpOgorKworKzIwMjAtMDEtMTQgIEtlbm5ldGggUnVzc2VsbCAgPGtickBj
aHJvbWl1bS5vcmc+CisrCisrICAgICAgICBOZWVkIHdvcmthcm91bmQgZm9yIGNyYXNoIGluIElu
dGVsIE9wZW5HTCBkcml2ZXIgcmVsYXRlZCB0byB0ZXh0dXJlIGNvcHlpbmcgZmVlZGJhY2sgbG9v
cHMKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDU4
NDMKKysKKysgICAgICAgIFJlbW92ZSBBTkdMRSB3b3JrYXJvdW5kIGludHJvZHVjZWQgaW4gYnVn
IDIwNTcwNywgYXMgaXQgd2FzCisrICAgICAgICBkaXNjb3ZlcmVkIHRvIGJlIGluY29tcGxldGUs
IGFuZCB3YXMgbmV2ZXIgdXBzdHJlYW1lZC4gVGhlIGNvcnJlY3QKKysgICAgICAgIHdvcmthcm91
bmQgd2lsbCBiZSBpbnRlZ3JhdGVkIGluIHRoZSBuZXh0IEFOR0xFIHJvbGwuCisrCisrICAgICAg
ICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisrCisrICAgICAgICAqIGluY2x1ZGUvcGxhdGZv
cm0vRmVhdHVyZXNHTC5oOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvU3Rh
dGVNYW5hZ2VyR0wuY3BwOgorKyAgICAgICAgKHJ4OjpTdGF0ZU1hbmFnZXJHTDo6YmluZEZyYW1l
YnVmZmVyKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL3JlbmRlcmVyZ2xf
dXRpbHMuY3BwOgorKyAgICAgICAgKHJ4OjpuYXRpdmVnbF9nbDo6SW5pdGlhbGl6ZUZlYXR1cmVz
KToKKysKKysyMDIwLTAxLTA4ICBLZW5uZXRoIFJ1c3NlbGwgIDxrYnJAY2hyb21pdW0ub3JnPgor
KworKyAgICAgICAgUmVtb3ZlIHNvbWUgI2lmZGVmcyByZWxhdGVkIHRvIGlPUyBwb3J0IG9mIEFO
R0xFCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA1
NzgxCisrCisrICAgICAgICBTaW5jZSB0aGUgcG9ydCB0byB0aGUgaU9TIFNpbXVsYXRvciBpbgor
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwNTYxOCAs
IHRoZXNlICNpZmRlZnMKKysgICAgICAgIHNob3VsZCBubyBsb25nZXIgYmUgbmVlZGVkLgorKwor
KyAgICAgICAgUmV2aWV3ZWQgYnkgRGVhbiBKYWNrc29uLgorKworKyAgICAgICAgKiBzcmMvY29t
bW9uL1BhY2tlZEVudW1zLmNwcDoKKysgICAgICAgIChlZ2xfZ2w6OkVHTFRleHR1cmVUYXJnZXRU
b1RleHR1cmVUeXBlKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3ZhbGlkYXRpb25FUzIuY3Bw
OgorKyAgICAgICAgKGdsOjpWYWxpZGF0ZUZyYW1lYnVmZmVyVGV4dHVyZTJEKToKKysKKysyMDIw
LTAxLTA1ICBLZW5uZXRoIFJ1c3NlbGwgIDxrYnJAY2hyb21pdW0ub3JnPgorKworKyAgICAgICAg
UkVHUkVTU0lPTiAocjI1MzkyNik6IEZsYWt5IGNyYXNoZXMgb24gd2ViZ2wvMS4wLjMvY29uZm9y
bWFuY2UvdGV4dHVyZXMvdGV4dHVyZS1jb3B5aW5nLWZlZWRiYWNrLWxvb3BzLmh0bWwgYW5kIHdl
YmdsLzIuMC4wL2NvbmZvcm1hbmNlL3RleHR1cmVzL21pc2MvdGV4dHVyZS1jb3B5aW5nLWZlZWRi
YWNrLWxvb3BzLmh0bWwKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0yMDU3MDcKKysKKysgICAgICAgIFdvcmsgYXJvdW5kIGJ1Z3MgaW4gSW50ZWwncyBn
cmFwaGljcyBkcml2ZXIgd2hlcmUgb3BlcmF0aW9ucyBjYW4KKysgICAgICAgIGJlIGluY29ycmVj
dGx5IHJlb3JkZXJlZCBhY3Jvc3MgZ2xCaW5kRnJhbWVidWZmZXIgY2FsbHMgYnkKKysgICAgICAg
IGZsdXNoaW5nIGJlZm9yZS9hZnRlciB0aGVzZSBjYWxscy4gQ29uY2x1c2l2ZWx5IGFkZHJlc3Nl
cyB0aGlzCisrICAgICAgICBjcmFzaDsgbWF5IGFsc28gYWRkcmVzcyBvdGhlciBsYXlvdXQgdGVz
dCBmbGFraW5lc3Mgc2VlbiB3aGVuCisrICAgICAgICBzd2l0Y2hpbmcgdG8gQU5HTEUgYmFja2Vu
ZCBmb3IgV2ViR0wuCisrCisrICAgICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisrCisr
ICAgICAgICAqIGluY2x1ZGUvcGxhdGZvcm0vRmVhdHVyZXNHTC5oOgorKyAgICAgICAgKiBzcmMv
bGliQU5HTEUvcmVuZGVyZXIvZ2wvU3RhdGVNYW5hZ2VyR0wuY3BwOgorKyAgICAgICAgKHJ4OjpT
dGF0ZU1hbmFnZXJHTDo6YmluZEZyYW1lYnVmZmVyKToKKysgICAgICAgICogc3JjL2xpYkFOR0xF
L3JlbmRlcmVyL2dsL3JlbmRlcmVyZ2xfdXRpbHMuY3BwOgorKyAgICAgICAgKHJ4OjpuYXRpdmVn
bF9nbDo6SW5pdGlhbGl6ZUZlYXR1cmVzKToKKysKKysyMDIwLTAxLTA0ICBLZW5uZXRoIFJ1c3Nl
bGwgIDxrYnJAY2hyb21pdW0ub3JnPgorKworKyAgICAgICAgQWRkIHN1cHBvcnQgZm9yIGlPUyBT
aW11bGF0b3IgdG8gQU5HTEUgYmFja2VuZCBmb3IgV2ViR0wKKysgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDU2MTgKKysKKysgICAgICAgIEV4dGVuZCBF
R0xfQU5HTEVfaW9zdXJmYWNlX2NsaWVudF9idWZmZXIgZXh0ZW5zaW9uIHRvIHJlcXVpcmUgdXNl
CisrICAgICAgICBvZiBURVhUVVJFXzJEIHRhcmdldCBvbiBpT1MsIGFuZCB0byBwcm92aWRlIHJl
YWQvd3JpdGUgdXNhZ2UgaGludHMKKysgICAgICAgIGZvciB0aGUgcGJ1ZmZlciBjcmVhdGVkIGZy
b20gdGhlIElPU3VyZmFjZS4KKysKKysgICAgICAgIEVtdWxhdGUgbWlzc2luZyBbRUFHTENvbnRl
eHQgdGV4SW1hZ2VJT1N1cmZhY2U6Li4uXSB2aWEgdGV4dHVyZQorKyAgICAgICAgdXBsb2FkIGlu
IGVnbEJpbmRUZXhJbWFnZSBhbmQgcmVhZGJhY2sgaW4gZWdsUmVsZWFzZVRleEltYWdlLgorKwor
KyAgICAgICAgVGhlc2UgY2hhbmdlcyB3aWxsIGJlIHVwc3RyZWFtZWQgaW4KKysgICAgICAgIGh0
dHBzOi8vYnVncy5jaHJvbWl1bS5vcmcvcC9hbmdsZXByb2plY3QvaXNzdWVzL2RldGFpbD9pZD00
MjU2IC4KKysKKysgICAgICAgIFJldmlld2VkIGJ5IERlYW4gSmFja3Nvbi4KKysKKysgICAgICAg
ICogZXh0ZW5zaW9ucy9FR0xfQU5HTEVfaW9zdXJmYWNlX2NsaWVudF9idWZmZXIudHh0OgorKyAg
ICAgICAgKiBpbmNsdWRlL0VHTC9lZ2xleHRfYW5nbGUuaDoKKysgICAgICAgICogc3JjL2xpYkFO
R0xFL3JlbmRlcmVyL2dsL2VhZ2wvRGlzcGxheUVBR0wubW06CisrICAgICAgICAocng6OkRpc3Bs
YXlFQUdMOjppbml0aWFsaXplKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2ds
L2VhZ2wvSU9TdXJmYWNlU3VyZmFjZUVBR0wuaDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3Jl
bmRlcmVyL2dsL2VhZ2wvSU9TdXJmYWNlU3VyZmFjZUVBR0wubW06CisrICAgICAgICAocng6OklP
U3VyZmFjZVN1cmZhY2VFQUdMOjpJT1N1cmZhY2VTdXJmYWNlRUFHTCk6CisrICAgICAgICAocng6
OklPU3VyZmFjZVN1cmZhY2VFQUdMOjpiaW5kVGV4SW1hZ2UpOgorKyAgICAgICAgKHJ4OjpJT1N1
cmZhY2VTdXJmYWNlRUFHTDo6cmVsZWFzZVRleEltYWdlKToKKysgICAgICAgIChyeDo6SU9TdXJm
YWNlU3VyZmFjZUVBR0w6OnZhbGlkYXRlQXR0cmlidXRlcyk6CisrICAgICAgICAocng6OklPU3Vy
ZmFjZVN1cmZhY2VFQUdMOjpjcmVhdGVEZWZhdWx0RnJhbWVidWZmZXIpOgorKyAgICAgICAgKHJ4
OjpJT1N1cmZhY2VTdXJmYWNlRUFHTDo6Z2V0SU9TdXJmYWNlTG9ja09wdGlvbnMgY29uc3QpOgor
KyAgICAgICAgKiBzcmMvbGliQU5HTEUvdmFsaWRhdGlvbkVHTC5jcHA6CisrICAgICAgICAoZWds
OjpWYWxpZGF0ZUNyZWF0ZVBidWZmZXJGcm9tQ2xpZW50QnVmZmVyKToKKysKKysyMDE5LTEyLTI1
ICBEZWFuIEphY2tzb24gIDxkaW5vQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFtXZWJHTF0gRW5h
YmxlIEFOR0xFIGJ5IGRlZmF1bHQgZm9yIENvY29hIHBsYXRmb3JtcyAoZXhjZXB0IHNpbXVsYXRv
cikKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDU0
ODMKKysgICAgICAgIHJkYXI6Ly81NjkyNTgyMQorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgU2lt
b24gRnJhc2VyLgorKworKyAgICAgICAgRXhwb3J0IGVudHJ5X3BvaW50c19nbGVzX2V4dF9hdXRv
Z2VuLmguCisrCisrICAgICAgICAqIEFOR0xFLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6Cisr
CisrMjAxOS0xMi0xOSAgRGVhbiBKYWNrc29uICA8ZGlub0BhcHBsZS5jb20+CisrCisrICAgICAg
ICBCdWlsZCBBTkdMRSBhcyBhIGR5bmFtaWMgbGlicmFyeQorKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwNDcwOAorKyAgICAgICAgcmRhcjovLzU3MzQ5
Mzg0CisrCisrICAgICAgICBSZXZpZXdlZCBieSBUaW0gSG9ydG9uLgorKworKyAgICAgICAgVGFr
ZSAyIGF0IGF0dGVtcHRpbmcgdGhpcy4gVGhlIGZpcnN0IHRpbWUgd2FzIHJvbGxlZCBvdXQKKysg
ICAgICAgIGR1ZSB0byBmYWlsdXJlcyBpbiBBcHBsZSdzIHVwc3RyZWFtIGJ1aWxkIHN5c3RlbS4K
KysKKysgICAgICAgIE1vZGlmeSBBTkdMRSB0byBidWlsZCBhcyBhIGR5bmFtaWMgbGlicmFyeS4g
TXkgKG5vdCB0aG9yb3VnaCkgdGVzdGluZyBzdWdnZXN0cworKyAgICAgICAgdGhpcyB3aWxsIHJl
ZHVjZSB0aGUgaW4tZmxpZ2h0IGJpbmFyeSBzaXplIG9uIEFwcGxlJ3MgYnVpbGQgc3lzdGVtcyBi
eSBhdCBsZWFzdAorKyAgICAgICAgYSBmYWN0b3Igb2YgMTAgKGl0IHdhcyBvdmVyIDFHKS4gQnVp
bGRpbmcgcmVsZWFzZSBmb3IgeDg2XzY0LW9ubHk6CisrICAgICAgICAgICAgLSBQcmV2aW91c2x5
OiBsaWJBTkdMRS5hIC0tIDMwNiBNQgorKyAgICAgICAgICAgIC0gTm93OiBsaWJBTkdMRS1zaGFy
ZWQuZHlsaWIgLS0gNi43IE1CCisrCisrICAgICAgICBJbiBvcmRlciB0byBkbyB0aGlzLCBzb21l
IHN5bWJvbHMgbmVlZGVkIHRvIGJlIGV4cG9ydGVkIGZyb20gdGhlCisrICAgICAgICAic2giIG5h
bWVzcGFjZSAod2hpY2ggYXJlIHVzZWQgaW4gQU5HTEVXZWJLaXRCcmlkZ2UsIGJ1dCBub3Qgd2hl
bgorKyAgICAgICAgQU5HTEUncyByZW5kZXJpbmcgYmFja2VuZCBpcyBhY3RpdmUpLgorKworKyAg
ICAgICAgV2hpbGUgaGVyZSwgSSB0dXJuZWQgb24gc29tZSBtb3JlIGJ1aWxkIG9wdGlvbnMsIGxp
a2UgQVJDLgorKworKyAgICAgICAgTGFzdGx5LCBJIGFkZGVkIGEgYnVpbGQgcGhhc2UgdGhhdCBj
cmVhdGVzIGEgZmFrZSBsaWJBTkdMRS5hCisrICAgICAgICBiZWNhdXNlIEFwcGxlJ3MgYnVpbGQg
c3lzdGVtIHRoaW5rcyB0aGF0IFdlYkNvcmUgc3RpbGwgbmVlZHMgaXQuCisrCisrICAgICAgICAq
IEFOR0xFLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6IExpbmsgd2l0aCBJT0tpdCBhbmQgSU9T
dXJmYWNlIGZyYW1ld29ya3MsIGFuZAorKyAgICAgICAgcHJvZHVjdCBhIGR5bGliIHByb2R1Y3Qu
CisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0FOR0xFLnhjY29uZmlnOiBVcGRhdGUgdGhlIGNv
bmZpZ3VyYXRpb24gZm9yIGEgZHluYW1pYyBsaWJyYXJ5LgorKyAgICAgICAgKiBDb25maWd1cmF0
aW9ucy9CYXNlLnhjY29uZmlnOgorKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9EZWJ1Z1JlbGVh
c2UueGNjb25maWc6CisrICAgICAgICAqIGluY2x1ZGUvR0xTTEFORy9TaGFkZXJMYW5nLmg6IEFk
ZCBBTkdMRV9FWFBPUlQgdG8gc29tZSBmdW5jdGlvbnMgdG8gbWFrZQorKyAgICAgICAgc3VyZSB0
aGV5IHdpbGwgYmUgdmlzaWJsZSBpbiB0aGUgZXhwb3J0ZWQgbGlicmFyeS4KKysgICAgICAgICog
aW5jbHVkZS9HTFNMQU5HL1NoYWRlclZhcnMuaDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3Jl
bmRlcmVyL2dsL2NnbC9EaXNwbGF5Q0dMLm1tOiBDaGFuZ2UgcmVpbnRlcnByZXRfY2FzdCB0byBh
IG5vcm1hbAorKyAgICAgICAgQyBjYXN0IHNvIGl0IGNhbiBiZSBhbm5vdGF0ZWQgd2l0aCBfX2Jy
aWRnZS4KKysgICAgICAgIChyeDo6RGlzcGxheUNHTDo6aXNWYWxpZE5hdGl2ZVdpbmRvdyBjb25z
dCk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvV2luZG93U3VyZmFj
ZUNHTC5tbTogRGl0dG8uCisrICAgICAgICAocng6OldpbmRvd1N1cmZhY2VDR0w6OldpbmRvd1N1
cmZhY2VDR0wpOgorKyAgICAgICAgKHJ4OjpXaW5kb3dTdXJmYWNlQ0dMOjp+V2luZG93U3VyZmFj
ZUNHTCk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0Rpc3BsYXlF
QUdMLm1tOiBEaXR0by4KKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wv
V2luZG93U3VyZmFjZUVBR0wubW06IERpdHRvLgorKworKzIwMTktMTItMTkgIENoYW5nU2VvayBP
aCAgPGNoYW5nc2Vva0B3ZWJraXQub3JnPgorKworKyAgICAgICAgW0dUS10gQnVpbGQgZml4IGZv
ciBBTkdMRV9XRUJHTCBhZnRlciByMjUzNjUwCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA1NDI2CisrCisrICAgICAgICBSZXZpZXdlZCBieSBDYXJs
b3MgQWxiZXJ0byBMb3BleiBQZXJlei4KKysKKysgICAgICAgIGxpYmdsZXN2Ml9lbnRyeV9wb2lu
dHNfaGVhZGVycyB3YXMgcmVtb3ZlZCBpbiByMjUzNjUwIHRoYXQgdXBkYXRlZCBDTWFrZSBmb3Ig
QU5HTEUuCisrICAgICAgICBHTEVTdjIuY21ha2Ugc2VlbXMgdG8gYmUgc3VzY2VwdGlibGUgdG8g
QU5HTEUgY2hhbmdlcywgc28gaXQgbWlnaHQgbm90IGJlCisrICAgICAgICBhIGdvb2QgcGxhY2Ug
d2hlcmUgYW55IHBsYXRmb3JtIHNwZWNpZmljIGNvbmZpZ3VyYXRpb24gaXMgbG9jYXRlZC4KKysg
ICAgICAgIExldCdzIG1vdmUgdGhlIGVudHJ5IHBvaW50cyBoZWFkZXIgc2V0IHRvIENNYWtlTGlz
dHMudHh0LgorKworKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDoKKysKKysyMDE5LTEyLTE4ICBE
ZWFuIEphY2tzb24gIDxkaW5vQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFJldmVydGluZyBsaWJB
TkdMRS5hIC0+IGxpYkFOR0xFLXNoYXJlZC5keWxpYi4KKysKKysgICAgICAgIEZvbGxvdy11cCB0
byByZW1vdmUgdGhlIGJ1aWxkIHBoYXNlIHRoYXQgd2FzIHRyeWluZworKyAgICAgICAgdG8gZm9v
bCBBcHBsZSdzIGJ1aWxkIHN5c3RlbS4KKysKKysgICAgICAgICogQU5HTEUueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvajoKKysKKysyMDE5LTEyLTE4ICBEZWFuIEphY2tzb24gIDxkaW5vQGFwcGxl
LmNvbT4KKysKKysgICAgICAgIFJldmVydGluZyBsaWJBTkdMRS5hIC0+IGxpYkFOR0xFLXNoYXJl
ZC5keWxpYi4KKysKKysgICAgICAgIFRoZSBpbnRlcm5hbCBBcHBsZSBidWlsZCBzeXN0ZW1zIGFy
ZSBzdGlsbCB1bmhhcHB5IHdpdGgKKysgICAgICAgIHRoaXMgY2hhbmdlLCBzbyBJJ20gcmV2ZXJ0
aW5nIGl0IHVudGlsIEkgY2FuIGJlIHN1cmUKKysgICAgICAgIHRoZXknbGwgYWNjZXB0IGl0Lgor
KworKyAgICAgICAgKiBBTkdMRS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorKyAgICAgICAg
KiBDb25maWd1cmF0aW9ucy9BTkdMRS54Y2NvbmZpZzoKKysgICAgICAgICogQ29uZmlndXJhdGlv
bnMvQmFzZS54Y2NvbmZpZzoKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMvRGVidWdSZWxlYXNl
LnhjY29uZmlnOgorKyAgICAgICAgKiBpbmNsdWRlL0NNYWtlTGlzdHMudHh0OgorKyAgICAgICAg
KiBpbmNsdWRlL0dMU0xBTkcvU2hhZGVyTGFuZy5oOgorKyAgICAgICAgKiBpbmNsdWRlL0dMU0xB
TkcvU2hhZGVyVmFycy5oOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2ds
L0Rpc3BsYXlDR0wubW06CisrICAgICAgICAocng6OkRpc3BsYXlDR0w6OmlzVmFsaWROYXRpdmVX
aW5kb3cgY29uc3QpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL1dp
bmRvd1N1cmZhY2VDR0wubW06CisrICAgICAgICAocng6OldpbmRvd1N1cmZhY2VDR0w6OldpbmRv
d1N1cmZhY2VDR0wpOgorKyAgICAgICAgKHJ4OjpXaW5kb3dTdXJmYWNlQ0dMOjp+V2luZG93U3Vy
ZmFjZUNHTCk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0Rpc3Bs
YXlFQUdMLm1tOgorKyAgICAgICAgKHJ4OjpEaXNwbGF5RUFHTDo6dGVybWluYXRlKToKKysgICAg
ICAgIChyeDo6RGlzcGxheUVBR0w6OmlzVmFsaWROYXRpdmVXaW5kb3cgY29uc3QpOgorKyAgICAg
ICAgKHJ4OjpXb3JrZXJDb250ZXh0RUFHTDo6fldvcmtlckNvbnRleHRFQUdMKToKKysgICAgICAg
ICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvV2luZG93U3VyZmFjZUVBR0wubW06Cisr
ICAgICAgICAocng6OldpbmRvd1N1cmZhY2VFQUdMOjpXaW5kb3dTdXJmYWNlRUFHTCk6CisrICAg
ICAgICAocng6OldpbmRvd1N1cmZhY2VFQUdMOjp+V2luZG93U3VyZmFjZUVBR0wpOgorKworKzIw
MTktMTItMTcgIEZ1amlpIEhpcm9ub3JpICA8SGlyb25vcmkuRnVqaWlAc29ueS5jb20+CisrCisr
ICAgICAgICBVbnJldmlld2VkIGJ1aWxkIGZpeCBmb3IgV2luQ2Fpcm8gcG9ydAorKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwNDkxNAorKyAgICAgICAg
PHJkYXI6Ly9wcm9ibGVtLzU4MDIzMTE4PgorKworKyAgICAgICAgKiBpbmNsdWRlL0NNYWtlTGlz
dHMudHh0OiBSZXBsYWNlZCAnJGxpYmFuZ2xlX2luY2x1ZGVzJyB3aXRoICcke2xpYmFuZ2xlX2lu
Y2x1ZGVzfSIuCisrCisrMjAxOS0xMi0xNyAgSmFtZXMgRGFycGluaWFuICA8amRhcnBpbmlhbkBj
aHJvbWl1bS5vcmc+CisrCisrICAgICAgICBJbXByb3ZlIHVwZGF0ZS1hbmdsZS5zaCBhbmQgYWRk
IGduaS10by1jbWFrZS5weQorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIwNDkxNAorKworKyAgICAgICAgdXBkYXRlLWFuZ2xlLnNoIG5vdyBwZXJmb3Jt
cyBhIGdpdCByZWJhc2UuIFRoaXMgYXV0b21hdGljYWxseSBtZXJnZXMKKysgICAgICAgIHVwc3Ry
ZWFtIGNoYW5nZXMgd2l0aCBXZWJLaXQncyBsb2NhbCBjaGFuZ2VzIHdoZXJlIHBvc3NpYmxlIGFu
ZAorKyAgICAgICAgaGlnaGxpZ2h0cyBhbnkgY29uZmxpY3RzIGZvciBtYW51YWwgcmVzb2x1dGlv
bi4KKysKKysgICAgICAgIEFsc28sIGl0IHJ1bnMgYSBuZXcgc2NyaXB0IGduaS10by1jbWFrZS5w
eSB0byBhdXRvbWF0aWNhbGx5IHVwZGF0ZSB0aGUKKysgICAgICAgIENNYWtlIGZpbGVzIHdpdGgg
dXBzdHJlYW0gY2hhbmdlcyB0byB0aGUgZ25pIGZpbGVzLiBBbG9uZyB3aXRoIHRoZQorKyAgICAg
ICAgY2hhbmdlcyB0byBpbmNsdWRlL0NNYWtlTGlzdHMudHh0LCB0aGlzIHNob3VsZCBwcmV2ZW50
IGJ1aWxkIGJyZWFrcworKyAgICAgICAgbGlrZSB0aGUgcmVjZW50bHkgZml4ZWQgV2luQ2Fpcm8g
b25lLiBBZGRpdGlvbmFsbHksIGRpZmZpbmcgdGhlIENNYWtlCisrICAgICAgICBmaWxlcyBwcm92
aWRlcyBhIGNvbmNpc2UgbGlzdCBvZiBidWlsZCBjaGFuZ2VzIHRoYXQgY2FuIGJlIHJlZmVyZW5j
ZWQKKysgICAgICAgIHdoZW4gbWFudWFsbHkgdXBkYXRpbmcgdGhlIFhDb2RlIHByb2plY3QgZmls
ZS4KKysKKysgICAgICAgIFJldmlld2VkIGJ5IERlYW4gSmFja3Nvbi4KKysKKysgICAgICAgICog
Q01ha2VMaXN0cy50eHQ6CisrICAgICAgICAqIENvbXBpbGVyLmNtYWtlOgorKyAgICAgICAgKiBH
TEVTdjIuY21ha2U6CisrICAgICAgICAqIGduaS10by1jbWFrZS5weTogQWRkZWQuCisrICAgICAg
ICAqIGluY2x1ZGUvQ01ha2VMaXN0cy50eHQ6CisrICAgICAgICAqIHVwZGF0ZS1hbmdsZS5zaDoK
KysKKysyMDE5LTEyLTE3ICBDaGFuZ1Nlb2sgT2ggIDxjaGFuZ3Nlb2tAd2Via2l0Lm9yZz4KKysK
KysgICAgICAgIFVucmV2aWV3ZWQgYnVpbGQgZml4IGZvciBVU0VfQU5HTEVfV0VCR0wgYWZ0ZXIg
cjI1Mjk5NAorKworKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDogQWRkIGEgbWlzc2luZyBkaXJl
Y3Rvcnkgc2VwYXJhdG9yLgorKworKzIwMTktMTItMTMgIERlYW4gSmFja3NvbiAgPGRpbm9AYXBw
bGUuY29tPgorKworKyAgICAgICAgTWFjQ2F0YWx5c3QgYnVpbGQgb2YgbGliQU5HTEUgaXMgaW5z
dGFsbGVkIGluIHRoZSBpbmNvcnJlY3QgbG9jYXRpb24KKysgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDUyMTkKKysgICAgICAgIDxyZGFyOi8vcHJvYmxl
bS81NzcxMzM1Mz4KKysKKysgICAgICAgIFJldmlld2VkIGJ5IFNpbW9uIEZyYXNlci4KKysKKysg
ICAgICAgIFJlbmFtZSBsaWJBTkdMRS5keWxpYiBpbnRvIGxpYkFOR0xFLXNoYXJlZC5keWxpYiwg
c28gd2UgY2FuCisrICAgICAgICBhdm9pZCBhY2NpZGVudGFsbHkgdHJ5aW5nIHRvIGxpbmsgdG8g
dGhlIGxpYkFOR0xFLmEgdGhhdCB3YXMKKysgICAgICAgIHJlbW92ZWQgcmVjZW50bHkgKGJ1dCBz
dGlsbCBleGlzdHMgaW4gdGhlIFNESyBmb3Igbm93KS4KKysKKysgICAgICAgIEFsc28sIG1ha2Ug
c3VyZSB0aGF0IHdlIGluc3RhbGwgaW50byB0aGUgY29ycmVjdCBsb2NhdGlvbiBmb3IKKysgICAg
ICAgIGEgQ2F0YWx5c3QgYnVpbGQuCisrCisrICAgICAgICAqIEFOR0xFLnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2o6CisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0FOR0xFLnhjY29uZmlnOgor
KyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnOgorKworKzIwMTktMTItMTEg
IERlYW4gSmFja3NvbiAgPGRpbm9AYXBwbGUuY29tPgorKworKyAgICAgICAgUHJvZHVjZSBhIGR1
bW15IGxpYkFOR0xFLmEgZmlsZSB0byBmb29sIEFwcGxlJ3MgYnVpbGQgdGVzdCBpbmZyYXN0cnVj
dHVyZQorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIw
NTA2OAorKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzU3NzEzMzUzPgorKworKyAgICAgICAgVW5y
ZXZpZXdlZCBmb2xsb3d1cCB0byBhcHBseSB0aGUgc2NyaXB0IHRvIE1hYyBDYXRhbHlzdCBidWls
ZHMuCisrCisrICAgICAgICBOb3RlIHRoYXQgdGhpcyBwaGFzZSBjYW4gYmUgcmVtb3ZlZCBpbiBh
IGZldyBkYXlzIHdoZW4gQXBwbGUncyBUZXN0CisrICAgICAgICBQbGF0Zm9ybSByZWFsaXNlcyBp
dCBkb2Vzbid0IG5lZWQgbGliQU5HTEUuYSBhbnkgbW9yZS4KKysKKysgICAgICAgICogQU5HTEUu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKysKKysyMDE5LTEyLTEwICBEZWFuIEphY2tzb24g
IDxkaW5vQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFByb2R1Y2UgYSBkdW1teSBsaWJBTkdMRS5h
IGZpbGUgdG8gZm9vbCBBcHBsZSdzIGJ1aWxkIHRlc3QgaW5mcmFzdHJ1Y3R1cmUKKysgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDUwNjgKKysgICAgICAg
IDxyZGFyOi8vcHJvYmxlbS81NzcxMzM1Mz4KKysKKysgICAgICAgIFJldmlld2VkIGJ5IEFsZXgg
Q2hyaXN0ZW5zZW4uCisrCisrICAgICAgICBDcmVhdGUgYSBkdW1teSBsaWJBTkdMRS5hIGZpbGUg
dW50aWwgb3VyIGluZnJhc3RydWN0dXJlIHJlYWxpc2VzIGl0CisrICAgICAgICBkb2Vzbid0IG5l
ZWQgdGhhdCBmaWxlIGFueSBtb3JlLiBIb3BlZnVsbHkgdGhlIGZhY3QgdGhhdCBpdCBpc24ndAor
KyAgICAgICAgcmVhbGx5IGEgc3RhdGljIGxpYnJhcnksIGJ1dCBqdXN0IGEgdGV4dCBmaWxlLCBp
cyBvay4KKysKKysgICAgICAgICogQU5HTEUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajogQWRk
IGEgbmV3IHNoZWxsIHNjcmlwdCBwaGFzZSB0aGF0CisrICAgICAgICBjcmVhdGVzIGEgZHVtbXkg
ZmlsZS4KKysKKysyMDE5LTEyLTA2ICBEZWFuIEphY2tzb24gIDxkaW5vQGFwcGxlLmNvbT4KKysK
KysgICAgICAgIFJlc3RyaWN0IGxpYkFOR0xFIHRvIGxpbmsgb25seSB3aXRoIFdlYkNvcmUKKysg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDQ5NTcKKysg
ICAgICAgIDxyZGFyOi8vcHJvYmxlbS81NzcwODY0ND4KKysKKysgICAgICAgIFJldmlld2VkIGJ5
IEJyaWFuIEJ1cmcuCisrCisrICAgICAgICBSZXN0cmljdCB0byBXZWJDb3JlIGFuZCBXZWJDb3Jl
VGVzdFN1cHBvcnQuCisrCisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0FOR0xFLnhjY29uZmln
OgorKworKzIwMTktMTItMDUgIEphbWVzIERhcnBpbmlhbiAgPGpkYXJwaW5pYW5AY2hyb21pdW0u
b3JnPgorKworKyAgICAgICAgRmluaXNoIEFOR0xFIHVwZGF0ZQorKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwNDkxMQorKworKyAgICAgICAgVGhlIGxh
c3QgQU5HTEUgdXBkYXRlIHBhdGNoIGRpZG4ndCBpbmNsdWRlIGFsbCB0aGUgY2hhbmdlZCBmaWxl
cy4KKysgICAgICAgIFRoaXMgcGF0Y2ggdXBkYXRlcyB0aGUgcmVzdCBvZiB0aGUgZmlsZXMuCisr
CisrICAgICAgICBSZXZpZXdlZCBieSBBbGV4IENocmlzdGVuc2VuLgorKworKyAgICAgICAgKiBz
cmMvdGVzdHM6IExvdHMgb2YgY2hhbmdlZCBmaWxlcyBmcm9tIHVwc3RyZWFtIEFOR0xFLgorKyAg
ICAgICAgKiBzcmMvdGhpcmRfcGFydHkvY29tcGlsZXIvUkVBRE1FLmNocm9taXVtOgorKyAgICAg
ICAgKiB0aGlyZF9wYXJ0eS9WSy1HTC1DVFMvUkVBRE1FLmFuZ2xlOiBBZGRlZC4KKysgICAgICAg
ICogdGhpcmRfcGFydHkvZGVxcC9SRUFETUUuYW5nbGU6IFJlbW92ZWQuCisrICAgICAgICAqIHRo
aXJkX3BhcnR5L2dvb2dsZXRlc3QvUkVBRE1FLmFuZ2xlOiBSZW1vdmVkLgorKyAgICAgICAgKiB0
aGlyZF9wYXJ0eS9saWJwbmcvQlVJTEQuZ246CisrICAgICAgICAqIHRoaXJkX3BhcnR5L3NwaXJ2
LWNyb3NzL1JFQURNRS5hbmdsZTogQWRkZWQuCisrICAgICAgICAqIHV0aWwvT1NXaW5kb3cuaDoK
KysgICAgICAgICogdXRpbC9lZ2xfbG9hZGVyX2F1dG9nZW4uY3BwOgorKyAgICAgICAgKGFuZ2xl
OjpMb2FkRUdMKToKKysgICAgICAgICogdXRpbC9lZ2xfbG9hZGVyX2F1dG9nZW4uaDoKKysgICAg
ICAgICogdXRpbC9mdWNoc2lhL1NjZW5pY1dpbmRvdy5jcHA6CisrICAgICAgICAoU2NlbmljV2lu
ZG93OjpyZXNldE5hdGl2ZVdpbmRvdyk6CisrICAgICAgICAqIHV0aWwvZnVjaHNpYS9TY2VuaWNX
aW5kb3cuaDoKKysgICAgICAgICogdXRpbC9nbGVzX2xvYWRlcl9hdXRvZ2VuLmNwcDoKKysgICAg
ICAgIChhbmdsZTo6TG9hZEdMRVMpOgorKyAgICAgICAgKiB1dGlsL2dsZXNfbG9hZGVyX2F1dG9n
ZW4uaDoKKysgICAgICAgICogdXRpbC9vc3gvT1NYV2luZG93Lmg6CisrICAgICAgICAqIHV0aWwv
b3N4L09TWFdpbmRvdy5tbToKKysgICAgICAgIChPU1hXaW5kb3c6OmluaXRpYWxpemUpOgorKyAg
ICAgICAgKiB1dGlsL296b25lL096b25lV2luZG93Lmg6CisrICAgICAgICAqIHV0aWwvcG9zaXgv
Y3Jhc2hfaGFuZGxlcl9wb3NpeC5jcHA6CisrICAgICAgICAoYW5nbGU6OkluaXRDcmFzaEhhbmRs
ZXIpOgorKyAgICAgICAgKiB1dGlsL3Bvc2l4L3Rlc3RfdXRpbHNfcG9zaXguY3BwOgorKyAgICAg
ICAgKGFuZ2xlOjpHZXRUZW1wRGlyKToKKysgICAgICAgIChhbmdsZTo6Q3JlYXRlVGVtcG9yYXJ5
RmlsZUluRGlyKToKKysgICAgICAgIChhbmdsZTo6RGVsZXRlRmlsZSk6CisrICAgICAgICAoYW5n
bGU6OkxhdW5jaFByb2Nlc3MpOgorKyAgICAgICAgKGFuZ2xlOjpOdW1iZXJPZlByb2Nlc3NvcnMp
OgorKyAgICAgICAgKiB1dGlsL3NoYWRlcl91dGlscy5jcHA6CisrICAgICAgICAoQ29tcGlsZVNo
YWRlckZyb21GaWxlKToKKysgICAgICAgIChDb21waWxlUHJvZ3JhbUZyb21GaWxlcyk6CisrICAg
ICAgICAqIHV0aWwvdGVzdF91dGlscy5jcHA6IEFkZGVkLgorKyAgICAgICAgKGFuZ2xlOjpDcmVh
dGVUZW1wb3JhcnlGaWxlKToKKysgICAgICAgIChhbmdsZTo6R2V0RmlsZVNpemUpOgorKyAgICAg
ICAgKGFuZ2xlOjpSZWFkRW50aXJlRmlsZVRvU3RyaW5nKToKKysgICAgICAgIChhbmdsZTo6UHJv
Y2Vzc0hhbmRsZTo6UHJvY2Vzc0hhbmRsZSk6CisrICAgICAgICAoYW5nbGU6OlByb2Nlc3NIYW5k
bGU6On5Qcm9jZXNzSGFuZGxlKToKKysgICAgICAgIChhbmdsZTo6UHJvY2Vzc0hhbmRsZTo6b3Bl
cmF0b3I9KToKKysgICAgICAgIChhbmdsZTo6UHJvY2Vzc0hhbmRsZTo6cmVzZXQpOgorKyAgICAg
ICAgKiB1dGlsL3Rlc3RfdXRpbHMuaDoKKysgICAgICAgICogdXRpbC90ZXN0X3V0aWxzX3VuaXR0
ZXN0LmNwcDogQWRkZWQuCisrICAgICAgICAoYW5nbGU6Ok5vcm1hbGl6ZU5ld0xpbmVzKToKKysg
ICAgICAgIChhbmdsZTo6VEVTVCk6CisrICAgICAgICAqIHV0aWwvdGVzdF91dGlsc191bml0dGVz
dF9oZWxwZXIuY3BwOiBBZGRlZC4KKysgICAgICAgIChtYWluKToKKysgICAgICAgICogdXRpbC90
ZXN0X3V0aWxzX3VuaXR0ZXN0X2hlbHBlci5oOiBBZGRlZC4KKysgICAgICAgICogdXRpbC91dGls
LmduaToKKysgICAgICAgICogdXRpbC93aW5kb3dzL1dHTFdpbmRvdy5jcHA6CisrICAgICAgICAq
IHV0aWwvd2luZG93cy90ZXN0X3V0aWxzX3dpbi5jcHA6CisrICAgICAgICAoYW5nbGU6OkluaXRD
cmFzaEhhbmRsZXIpOgorKyAgICAgICAgKGFuZ2xlOjpUZXJtaW5hdGVDcmFzaEhhbmRsZXIpOgor
KyAgICAgICAgKGFuZ2xlOjpMYXVuY2hQcm9jZXNzKToKKysgICAgICAgIChhbmdsZTo6R2V0VGVt
cERpcik6CisrICAgICAgICAoYW5nbGU6OkNyZWF0ZVRlbXBvcmFyeUZpbGVJbkRpcik6CisrICAg
ICAgICAoYW5nbGU6OkRlbGV0ZUZpbGUpOgorKyAgICAgICAgKGFuZ2xlOjpOdW1iZXJPZlByb2Nl
c3NvcnMpOgorKyAgICAgICAgKiB1dGlsL3dpbmRvd3Mvd2luMzIvV2luMzJXaW5kb3cuY3BwOgor
KyAgICAgICAgKFdpbjMyV2luZG93Ojppbml0aWFsaXplKToKKysgICAgICAgICogdXRpbC93aW5k
b3dzL3dpbjMyL3Rlc3RfdXRpbHNfd2luMzIuY3BwOgorKyAgICAgICAgKGFuZ2xlOjpTdGFiaWxp
emVDUFVGb3JCZW5jaG1hcmtpbmcpOgorKyAgICAgICAgKiB1dGlsL3gxMS9YMTFXaW5kb3cuaDoK
KysKKysyMDE5LTEyLTAyICBSb3NzIEtpcnNsaW5nICA8cm9zcy5raXJzbGluZ0Bzb255LmNvbT4K
KysKKysgICAgICAgIFVucmV2aWV3ZWQgV2luQ2Fpcm8gYnVpbGQgZml4IGZvbGxvd2luZyByMjUy
OTg5LgorKworKyAgICAgICAgKiBpbmNsdWRlL0NNYWtlTGlzdHMudHh0OgorKworKzIwMTktMTIt
MDIgIERlYW4gSmFja3NvbiAgPGRpbm9AYXBwbGUuY29tPgorKworKyAgICAgICAgQ2xlYW4gdXAg
QU5HTEUgaGVhZGVyIHBvc3QtcHJvY2VzcyBzY3JpcHQKKysgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDQ3MTEKKysKKysgICAgICAgIFJldmlld2VkIGJ5
IFRpbSBIb3J0b24uCisrCisrICAgICAgICBTaW5jZSBgc2VkYCBvbiBtYWNPUyByZXF1aXJlcyB0
aGUgaW4tcGxhY2UgYXJndW1lbnQgdG8gaGF2ZSBhIHplcm8tbGVuZ3RoIHN0cmluZworKyAgICAg
ICAgdG8gYXZvaWQgbWFraW5nIGJhY2t1cHMsIHRoaXMgc2NyaXB0IHdhcyBhdHRlbXB0aW5nIHRv
IHBhc3MgJycuIEhvd2V2ZXIsIHRoaXMgd2FzCisrICAgICAgICBiZWluZyBldmFsdWF0ZWQsIGNy
ZWF0aW5nIGEgYnVuY2ggb2YgZmlsZXMgd2l0aCBcJ1wnIHN1ZmZpeGVzLiBGaXggdGhpcyBieSB1
c2luZworKyAgICAgICAgYW4gYXJyYXkgd2hlbiBleHBhbmRpbmcgdGhlIGFyZ3VtZW50cy4KKysK
KysgICAgICAgIEFsc28gZml4IGEgdHlwbyB3aGVyZSB0aGUgY2hhcmFjdGVyICIzIiB3YXMgYmVp
bmcgcHJpbnRlZC4KKysKKysgICAgICAgIExhc3RseSwgb25seSBwcmludCBvdXQgdGhlIGJhc2Vu
YW1lIG9mIHRoZSBoZWFkZXIgZmlsZSBiZWluZyBjb252ZXJ0ZWQuCisrCisrICAgICAgICAqIGFk
anVzdC1hbmdsZS1pbmNsdWRlLXBhdGhzLnNoOgorKworKzIwMTktMTEtMzAgIERlYW4gSmFja3Nv
biAgPGRpbm9AYXBwbGUuY29tPgorKworKyAgICAgICAgQnVpbGQgQU5HTEUgYXMgYSBkeW5hbWlj
IGxpYnJhcnkKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0yMDQ3MDgKKysgICAgICAgIHJkYXI6Ly81NzM0OTM4NAorKworKyAgICAgICAgUmV2aWV3ZWQg
YnkgVGltIEhvcnRvbi4KKysKKysgICAgICAgIE1vZGlmeSBBTkdMRSB0byBidWlsZCBhcyBhIGR5
bmFtaWMgbGlicmFyeS4gTXkgKG5vdCB0aG9yb3VnaCkgdGVzdGluZyBzdWdnZXN0cworKyAgICAg
ICAgdGhpcyB3aWxsIHJlZHVjZSB0aGUgaW4tZmxpZ2h0IGJpbmFyeSBzaXplIG9uIEFwcGxlJ3Mg
YnVpbGQgc3lzdGVtcyBieSBhdCBsZWFzdAorKyAgICAgICAgYSBmYWN0b3Igb2YgMTAgKGl0IHdh
cyBvdmVyIDFHKS4gQnVpbGRpbmcgcmVsZWFzZSBmb3IgeDg2XzY0LW9ubHk6CisrICAgICAgICAg
ICAgLSBQcmV2aW91c2x5OiBsaWJBTkdMRS5hIC0tIDMwNiBNQgorKyAgICAgICAgICAgIC0gTm93
OiBsaWJBTkdMRS5keWxpYiAtLSA2LjcgTUIKKysKKysgICAgICAgIEluIG9yZGVyIHRvIGRvIHRo
aXMsIHNvbWUgc3ltYm9scyBuZWVkZWQgdG8gYmUgZXhwb3J0ZWQgZnJvbSB0aGUKKysgICAgICAg
ICJzaCIgbmFtZXNwYWNlICh3aGljaCBhcmUgdXNlZCBpbiBBTkdMRVdlYktpdEJyaWRnZSwgYnV0
IG5vdCB3aGVuCisrICAgICAgICBBTkdMRSdzIHJlbmRlcmluZyBiYWNrZW5kIGlzIGFjdGl2ZSku
CisrCisrICAgICAgICBXaGlsZSBoZXJlLCBJIHR1cm5lZCBvbiBzb21lIG1vcmUgYnVpbGQgb3B0
aW9ucywgbGlrZSBBUkMuCisrCisrICAgICAgICAqIEFOR0xFLnhjb2RlcHJvai9wcm9qZWN0LnBi
eHByb2o6IExpbmsgd2l0aCBJT0tpdCBhbmQgSU9TdXJmYWNlIGZyYW1ld29ya3MsIGFuZAorKyAg
ICAgICAgcHJvZHVjdCBhIGR5bGliIHByb2R1Y3QuCisrICAgICAgICAqIENvbmZpZ3VyYXRpb25z
L0FOR0xFLnhjY29uZmlnOiBVcGRhdGUgdGhlIGNvbmZpZ3VyYXRpb24gZm9yIGEgZHluYW1pYyBs
aWJyYXJ5LgorKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnOgorKyAgICAg
ICAgKiBDb25maWd1cmF0aW9ucy9EZWJ1Z1JlbGVhc2UueGNjb25maWc6CisrICAgICAgICAqIENv
bmZpZ3VyYXRpb25zL1ZlcnNpb24ueGNjb25maWc6IEFkZGVkLgorKyAgICAgICAgKiBDb25maWd1
cmF0aW9ucy9XZWJLaXRUYXJnZXRDb25kaXRpb25hbHMueGNjb25maWc6IEFkZGVkLgorKworKyAg
ICAgICAgKiBpbmNsdWRlL0dMU0xBTkcvU2hhZGVyTGFuZy5oOiBBZGQgQU5HTEVfRVhQT1JUIHRv
IHNvbWUgZnVuY3Rpb25zIHRvIG1ha2UKKysgICAgICAgIHN1cmUgdGhleSB3aWxsIGJlIHZpc2li
bGUgaW4gdGhlIGV4cG9ydGVkIGxpYnJhcnkuCisrICAgICAgICAqIGluY2x1ZGUvR0xTTEFORy9T
aGFkZXJWYXJzLmg6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvRGlz
cGxheUNHTC5tbTogQ2hhbmdlIHJlaW50ZXJwcmV0X2Nhc3QgdG8gYSBub3JtYWwKKysgICAgICAg
IEMgY2FzdCBzbyBpdCBjYW4gYmUgYW5ub3RhdGVkIHdpdGggX19icmlkZ2UuCisrICAgICAgICAo
cng6OkRpc3BsYXlDR0w6OmlzVmFsaWROYXRpdmVXaW5kb3cgY29uc3QpOgorKyAgICAgICAgKiBz
cmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL1dpbmRvd1N1cmZhY2VDR0wubW06IERpdHRvLgor
KyAgICAgICAgKHJ4OjpXaW5kb3dTdXJmYWNlQ0dMOjpXaW5kb3dTdXJmYWNlQ0dMKToKKysgICAg
ICAgIChyeDo6V2luZG93U3VyZmFjZUNHTDo6fldpbmRvd1N1cmZhY2VDR0wpOgorKyAgICAgICAg
KiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EaXNwbGF5RUFHTC5tbTogRGl0dG8uCisr
ICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL1dpbmRvd1N1cmZhY2VFQUdM
Lm1tOiBEaXR0by4KKysKKysyMDE5LTEyLTAyICBKYW1lcyBEYXJwaW5pYW4gIDxqZGFycGluaWFu
QGNocm9taXVtLm9yZz4KKysKKysgICAgICAgIFVwZGF0ZSBBTkdMRQorKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwNDU5NQorKworKyAgICAgICAgUmV2
aWV3ZWQgYnkgQWxleCBDaHJpc3RlbnNlbi4KKysKKysgICAgICAgICogQU5HTEUucGxpc3Q6IFVw
ZGF0ZWQgY29tbWl0IGhhc2guCisrICAgICAgICAqIEFOR0xFLnhjb2RlcHJvai9wcm9qZWN0LnBi
eHByb2o6IENoYW5nZXMgbWlycm9yaW5nIGduIGNoYW5nZXMgdXBzdHJlYW0uCisrICAgICAgICAq
IENvbXBpbGVyLmNtYWtlOiBDaGFuZ2VzIG1pcnJvcmluZyBnbiBjaGFuZ2VzIHVwc3RyZWFtLgor
KyAgICAgICAgKiBHTEVTdjIuY21ha2U6IENoYW5nZXMgbWlycm9yaW5nIGduIGNoYW5nZXMgdXBz
dHJlYW0uCisrICAgICAgICAqIENNYWtlTGlzdHMudHh0OiBDaGFuZ2VzIG1pcnJvcmluZyBnbiBj
aGFuZ2VzIHVwc3RyZWFtLgorKworKyAgICAgICAgKiBNYW55IG90aGVyIGZpbGVzIGFkZGVkL3Jl
bW92ZWQvY2hhbmdlZCBmcm9tIHVwc3RyZWFtLgorKworKworKzIwMTktMTEtMjAgIENoYW5nU2Vv
ayBPaCAgPGNoYW5nc2Vva0B3ZWJraXQub3JnPgorKworKyAgICAgICAgW0dUS10gQWRkIEFOR0xF
IGJhY2tlbmQgdG8gR1RLIHBvcnQKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xOTkwNjAKKysKKysgICAgICAgIFJldmlld2VkIGJ5IMW9YW4gRG9iZXLF
oWVrLgorKworKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDogV2hlbiBVU0VfQU5HTEVfV0VCR0wg
aXMgZW5hYmxlZCwgbmVjZXNzYXJ5IGdsZXN2MiBlbnRyeSBwb2ludHMgaGVhZGVycworKyAgICAg
ICAgICBhcmUgaW5zdGFsbGVkIGluIHRoZSBkZXJpdmVkIHNvdXJjZSBkaXJlY3RvcnkuIEFuZCB0
aGVuIGFkanVzdC1hbmdsZS1pbmNsdWRlLXBhdGguc2ggaXMgYXBwbGllZAorKyAgICAgICAgICB0
byBjaGFuZ2UgaW5jbHVkZSBwYXRocyBpbiB0aGUgZW50cnkgcG9pbnRzIGhlYWRlciBmaWxlcy4K
KysgICAgICAgICogR0xFU3YyLmNtYWtlOiBsaWJnbGVzdjJfZW50cnlfcG9pbnRzX2hlYWRlcnMg
aXMgbmV3bHkgZGVmaW5lZCwgd2hpY2ggaXMgYSBnYXRoZXJpbmcgb2YKKysgICAgICAgICAgZW50
cnkgcG9pbnQgaGVhZGVycyBvZiBsaWJHTEVTdjIuCisrICAgICAgICAqIFBsYXRmb3JtR1RLLmNt
YWtlOiBJbiB0aGlzIGZpbGUsIHdlIGFwcGVuZCBnbCBhbmQgZ2x4IHJlbGF0ZWQgYW5nbGUgY29k
ZSBhcyBhIGJ1aWxkIHRhcmdldC4KKysgICAgICAgICAgU2luY2Ugd2Ugd2FudCBnbCBjb250ZXh0
IGFuZCBnbGVzIGNvbnRleHQgc2ltdWx0YW5lb3VzbHksIHdlIHJlbW92ZSBnbCBwcm90b3R5cGUg
Y2FsbHMKKysgICAgICAgICAgZnJvbSB0aGUgZ2VuZXJhdGVkIGxpYkdMRVN2MiBsaWJyYXJ5LiBJ
bnN0ZWFkLCB3ZSBpbnZva2UgZWdsIGFuZCBnbCBjYWxscyBvZiBBTkdMRQorKyAgICAgICAgICB2
aWEgdGhlaXIgbm9uLXByb3RvdHlwZSBmdW5jdGlvbiBuYW1lcy4KKysgICAgICAgICogYWRqdXN0
LWFuZ2xlLWluY2x1ZGUtcGF0aHMuc2g6IHNlZCBpcyBzbGlnaHRseSBkaWZmZXJlbnQgaW4gdW5p
eCBhbmQgbGludXggc3lzdGVtcy4KKysgICAgICAgICAgSW4gcGFydGljdWxhciwgaXRzIGlucGxh
Y2Ugb3B0aW9uIG5lZWRzIHRvIGJlIGNoYW5nZWQgZm9yIGJldHRlciBjb21wYXRpYmlsaXR5IG9u
IGxpbnV4LgorKyAgICAgICAgKiBpbmNsdWRlL0NNYWtlTGlzdHMudHh0OiBBTkdMRV9XRUJHTF9I
RUFERVJTIGlzIG5ld2x5IGRlZmluZWQuIEl0IGdhdGhlcnMgaGVhZGVyIGZpbGVzIG9mIEFOR0xF
CisrICAgICAgICAgIGZvciBXZWJHTCBzdXBwb3J0LgorKworKzIwMTktMTEtMDggIERlYW4gSmFj
a3NvbiAgPGRpbm9AYXBwbGUuY29tPgorKworKyAgICAgICAgQWRkIEFOR0xFIGJhY2tlbmQgZm9y
IGlPUyBkZXZpY2UKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMDIxNTkKKysgICAgICAgIDxyZGFyOi8vNTcwMDAxNjY+CisrCisrICAgICAgICBCdWls
ZCBmaXguIERvbid0IGluY2x1ZGUgSU9TdXJmYWNlLmggb24gaU9TIChwdWJsaWMgU0RLIGRvZXNu
J3QgaGF2ZSBpdCkuCisrCisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWds
L0lPU3VyZmFjZVN1cmZhY2VFQUdMLm1tOgorKworKzIwMTktMTEtMDcgIERlYW4gSmFja3NvbiAg
PGRpbm9AYXBwbGUuY29tPgorKworKyAgICAgICAgQWRkIEFOR0xFIGJhY2tlbmQgZm9yIGlPUyBk
ZXZpY2UKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MDIxNTkKKysgICAgICAgIDxyZGFyOi8vNTcwMDAxNjY+CisrCisrICAgICAgICBSZXZpZXdlZCBi
eSBNeWxlcyBNYXhmaWVsZC4KKysKKysgICAgICAgIEFkZCBhbiBPcGVuR0xFUyBiYWNrZW5kIG92
ZXIgRUFHTCBmb3IgaU9TIHRvIEFOR0xFLgorKworKyAgICAgICAgVGhpcyBpcyBiYXNpY2FsbHkg
YSBjb3B5IG9mIGFsbCB0aGUgZmlsZXMgaW4KKysgICAgICAgIGxpYkFOR0xFL3JlbmRlcmVyL2ds
L2NnbCBpbnRvIGxpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wsIHRoZW4gd2l0aAorKyAgICAgICAg
bW9kaWZpY2F0aW9ucyB0byBtYWtlIGl0IHdvcmsgb24gaU9TJ3MgT3BlbkdMIEVTLiBNb3N0IG5v
dGFibHksCisrICAgICAgICBzb21lIGZvcm1hdCBlbnVtcyBhbmQgdGhlIG1hbm5lciBpbiB3aGlj
aCB5b3UgYmluZCBhbiBJT1N1cmZhY2UgdG8KKysgICAgICAgIGEgR0wgdGV4dHVyZSBhcmUgZGlm
ZmVyZW50LgorKworKyAgICAgICAgVGhpcyBpbnRyb2R1Y2VzIGEgZmV3IHBsYWNlcyB3aGVyZSB3
ZSBoYXZlIHRvIGRvIGEgY29tcGlsZSB0aW1lCisrICAgICAgICBzd2l0Y2ggZm9yIGlPUywgc29t
ZSBvZiB3aGljaCBtaWdodCBhY3R1YWxseSBiZSBhcHBsaWNhYmxlIHRvCisrICAgICAgICBvdGhl
ciBPcGVuR0wgRVMgYmFja2VuZHMuCisrCisrICAgICAgICBUaGUgYmlnZ2VzdCBtaXNzaW5nIHBp
ZWNlIGlzIHN1cHBvcnQgZm9yIHRoZSBpT1Mgc2ltdWxhdG9yLiBBdCB0aGUgbW9tZW50CisrICAg
ICAgICB0aGlzIGJhY2tlbmQgcmVsaWVzIG9uIGFuIElPU3VyZmFjZSBiaW5kaW5nIGFzIGEgcmVu
ZGVyaW5nIHRhcmdldC4KKysgICAgICAgIEJ1dCB0aGUgaU9TIFNpbXVsYXRvciBkb2VzIG5vdCBo
YXZlIHRoZSByZXF1aXJlZCBhYmlsaXR5IHRvIGhhdmUgYQorKyAgICAgICAgR0wgRVMgdGV4dHVy
ZSBiYWNrZWQgYnkgYW4gSU9TdXJmYWNlLgorKworKyAgICAgICAgVGhlIFdpbmRvd1N1cmZhY2VF
QUdMIGNvZGUgaXMgaW5jb21wbGV0ZSwgYnV0IHdhcyBub3QgbmVjZXNzYXJ5CisrICAgICAgICBp
biBvcmRlciB0byBnZXQgV2ViR0wgb3BlcmF0aW9uYWwuIEFuZCBldmVuIGlmIHlvdSBhcmUgdXNp
bmcgQU5HTEUKKysgICAgICAgIGRpcmVjdGx5LCB5b3UgY2FuIGhhdmUgdGhlIGNsaWVudCBjb2Rl
IHJlbmRlciBpbnRvIGEgQ0FMYXllciB3aXRob3V0CisrICAgICAgICBnb2luZyB0aHJvdWdoIHRo
ZSBXaW5kb3dTdXJmYWNlLgorKworKyAgICAgICAgKiBBTkdMRS54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qOgorKyAgICAgICAgKiBpbmNsdWRlL0VHTC9lZ2xleHRfYW5nbGUuaDoKKysgICAgICAg
ICogc3JjL2NvbW1vbi9QYWNrZWRFbnVtcy5jcHA6CisrICAgICAgICAoZWdsX2dsOjpFR0xUZXh0
dXJlVGFyZ2V0VG9UZXh0dXJlVHlwZSk6CisrICAgICAgICAqIHNyYy9jb21tb24vcGxhdGZvcm0u
aDoKKysgICAgICAgICogc3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mb19pb3MuY3BwOiBBZGRl
ZC4KKysgICAgICAgIChhbmdsZTo6R2V0U3lzdGVtSW5mbyk6CisrICAgICAgICAqIHNyYy9ncHVf
aW5mb191dGlsL1N5c3RlbUluZm9fbWFjb3MuY3BwOiBSZW5hbWVkIGZyb20gU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvc3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mb19tYWMuY3BwLgorKyAgICAg
ICAgKGFuZ2xlOjpHZXRTeXN0ZW1JbmZvKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL0NhcHMu
aDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL0Rpc3BsYXkuY3BwOgorKyAgICAgICAgKiBzcmMv
bGliQU5HTEUvZm9ybWF0dXRpbHMuY3BwOgorKyAgICAgICAgKGdsOjpCdWlsZEludGVybmFsRm9y
bWF0SW5mb01hcCk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvRGV2
aWNlQ0dMLmNwcDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9EaXNw
bGF5Q0dMLm1tOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0lPU3Vy
ZmFjZVN1cmZhY2VDR0wuY3BwOgorKyAgICAgICAgKHJ4OjpJT1N1cmZhY2VTdXJmYWNlQ0dMOjpi
aW5kVGV4SW1hZ2UpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL1Bi
dWZmZXJTdXJmYWNlQ0dMLmNwcDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2ds
L2NnbC9SZW5kZXJlckNHTC5jcHA6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9n
bC9jZ2wvV2luZG93U3VyZmFjZUNHTC5tbToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRl
cmVyL2dsL2VhZ2wvQ29udGV4dEVBR0wuY3BwOiBBZGRlZC4KKysgICAgICAgIChyeDo6Q29udGV4
dEVBR0w6OkNvbnRleHRFQUdMKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2ds
L2VhZ2wvQ29udGV4dEVBR0wuaDogQWRkZWQuCisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5k
ZXJlci9nbC9lYWdsL0RldmljZUVBR0wuY3BwOiBBZGRlZC4KKysgICAgICAgIChyeDo6RGV2aWNl
RUFHTDo6RGV2aWNlRUFHTCk6CisrICAgICAgICAocng6OkRldmljZUVBR0w6On5EZXZpY2VFQUdM
KToKKysgICAgICAgIChyeDo6RGV2aWNlRUFHTDo6aW5pdGlhbGl6ZSk6CisrICAgICAgICAocng6
OkRldmljZUVBR0w6OmdldEF0dHJpYnV0ZSk6CisrICAgICAgICAocng6OkRldmljZUVBR0w6Omdl
dFR5cGUpOgorKyAgICAgICAgKHJ4OjpEZXZpY2VFQUdMOjpnZW5lcmF0ZUV4dGVuc2lvbnMgY29u
c3QpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EZXZpY2VFQUdM
Lmg6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EaXNw
bGF5RUFHTC5oOiBBZGRlZC4KKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2Vh
Z2wvRGlzcGxheUVBR0wubW06IEFkZGVkLgorKyAgICAgICAgKHJ4OjpGdW5jdGlvbnNHTEVBR0w6
OkZ1bmN0aW9uc0dMRUFHTCk6CisrICAgICAgICAocng6OkRpc3BsYXlFQUdMOjpEaXNwbGF5RUFH
TCk6CisrICAgICAgICAocng6OkRpc3BsYXlFQUdMOjp+RGlzcGxheUVBR0wpOgorKyAgICAgICAg
KHJ4OjpEaXNwbGF5RUFHTDo6aW5pdGlhbGl6ZSk6CisrICAgICAgICAocng6OkRpc3BsYXlFQUdM
Ojp0ZXJtaW5hdGUpOgorKyAgICAgICAgKHJ4OjpEaXNwbGF5RUFHTDo6Y3JlYXRlV2luZG93U3Vy
ZmFjZSk6CisrICAgICAgICAocng6OkRpc3BsYXlFQUdMOjpjcmVhdGVQYnVmZmVyU3VyZmFjZSk6
CisrICAgICAgICAocng6OkRpc3BsYXlFQUdMOjpjcmVhdGVQYnVmZmVyRnJvbUNsaWVudEJ1ZmZl
cik6CisrICAgICAgICAocng6OkRpc3BsYXlFQUdMOjpjcmVhdGVQaXhtYXBTdXJmYWNlKToKKysg
ICAgICAgIChyeDo6RGlzcGxheUVBR0w6OmNyZWF0ZUNvbnRleHQpOgorKyAgICAgICAgKHJ4OjpE
aXNwbGF5RUFHTDo6Y3JlYXRlRGV2aWNlKToKKysgICAgICAgIChyeDo6RGlzcGxheUVBR0w6Omdl
bmVyYXRlQ29uZmlncyk6CisrICAgICAgICAocng6OkRpc3BsYXlFQUdMOjp0ZXN0RGV2aWNlTG9z
dCk6CisrICAgICAgICAocng6OkRpc3BsYXlFQUdMOjpyZXN0b3JlTG9zdERldmljZSk6CisrICAg
ICAgICAocng6OkRpc3BsYXlFQUdMOjppc1ZhbGlkTmF0aXZlV2luZG93IGNvbnN0KToKKysgICAg
ICAgIChyeDo6RGlzcGxheUVBR0w6OnZhbGlkYXRlQ2xpZW50QnVmZmVyIGNvbnN0KToKKysgICAg
ICAgIChyeDo6RGlzcGxheUVBR0w6OmdldFZlbmRvclN0cmluZyBjb25zdCk6CisrICAgICAgICAo
cng6OkRpc3BsYXlFQUdMOjpnZXRFQUdMQ29udGV4dCBjb25zdCk6CisrICAgICAgICAocng6OkRp
c3BsYXlFQUdMOjpnZXRFQUdMUGl4ZWxGb3JtYXQgY29uc3QpOgorKyAgICAgICAgKHJ4OjpEaXNw
bGF5RUFHTDo6Z2VuZXJhdGVFeHRlbnNpb25zIGNvbnN0KToKKysgICAgICAgIChyeDo6RGlzcGxh
eUVBR0w6OmdlbmVyYXRlQ2FwcyBjb25zdCk6CisrICAgICAgICAocng6OkRpc3BsYXlFQUdMOjp3
YWl0Q2xpZW50KToKKysgICAgICAgIChyeDo6RGlzcGxheUVBR0w6OndhaXROYXRpdmUpOgorKyAg
ICAgICAgKHJ4OjpEaXNwbGF5RUFHTDo6Z2V0TWF4U3VwcG9ydGVkRVNWZXJzaW9uIGNvbnN0KToK
KysgICAgICAgIChyeDo6RGlzcGxheUVBR0w6Om1ha2VDdXJyZW50U3VyZmFjZWxlc3MpOgorKyAg
ICAgICAgKHJ4OjpXb3JrZXJDb250ZXh0RUFHTDo6V29ya2VyQ29udGV4dEVBR0wpOgorKyAgICAg
ICAgKHJ4OjpXb3JrZXJDb250ZXh0RUFHTDo6fldvcmtlckNvbnRleHRFQUdMKToKKysgICAgICAg
IChyeDo6V29ya2VyQ29udGV4dEVBR0w6Om1ha2VDdXJyZW50KToKKysgICAgICAgIChyeDo6V29y
a2VyQ29udGV4dEVBR0w6OnVubWFrZUN1cnJlbnQpOgorKyAgICAgICAgKHJ4OjpEaXNwbGF5RUFH
TDo6Y3JlYXRlV29ya2VyQ29udGV4dCk6CisrICAgICAgICAocng6OkRpc3BsYXlFQUdMOjppbml0
aWFsaXplRnJvbnRlbmRGZWF0dXJlcyBjb25zdCk6CisrICAgICAgICAocng6OkRpc3BsYXlFQUdM
Ojpwb3B1bGF0ZUZlYXR1cmVMaXN0KToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVy
L2dsL2VhZ2wvSU9TdXJmYWNlU3VyZmFjZUVBR0wuaDogQWRkZWQuCisrICAgICAgICAqIHNyYy9s
aWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0lPU3VyZmFjZVN1cmZhY2VFQUdMLm1tOiBDb3BpZWQg
ZnJvbSBTb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2ds
L0lPU3VyZmFjZVN1cmZhY2VDR0wuY3BwLgorKyAgICAgICAgKHJ4OjpJT1N1cmZhY2VTdXJmYWNl
RUFHTDo6SU9TdXJmYWNlU3VyZmFjZUVBR0wpOgorKyAgICAgICAgKHJ4OjpJT1N1cmZhY2VTdXJm
YWNlRUFHTDo6fklPU3VyZmFjZVN1cmZhY2VFQUdMKToKKysgICAgICAgIChyeDo6SU9TdXJmYWNl
U3VyZmFjZUVBR0w6OmluaXRpYWxpemUpOgorKyAgICAgICAgKHJ4OjpJT1N1cmZhY2VTdXJmYWNl
RUFHTDo6bWFrZUN1cnJlbnQpOgorKyAgICAgICAgKHJ4OjpJT1N1cmZhY2VTdXJmYWNlRUFHTDo6
dW5NYWtlQ3VycmVudCk6CisrICAgICAgICAocng6OklPU3VyZmFjZVN1cmZhY2VFQUdMOjpzd2Fw
KToKKysgICAgICAgIChyeDo6SU9TdXJmYWNlU3VyZmFjZUVBR0w6OnBvc3RTdWJCdWZmZXIpOgor
KyAgICAgICAgKHJ4OjpJT1N1cmZhY2VTdXJmYWNlRUFHTDo6cXVlcnlTdXJmYWNlUG9pbnRlckFO
R0xFKToKKysgICAgICAgIChyeDo6SU9TdXJmYWNlU3VyZmFjZUVBR0w6OmJpbmRUZXhJbWFnZSk6
CisrICAgICAgICAocng6OklPU3VyZmFjZVN1cmZhY2VFQUdMOjpyZWxlYXNlVGV4SW1hZ2UpOgor
KyAgICAgICAgKHJ4OjpJT1N1cmZhY2VTdXJmYWNlRUFHTDo6c2V0U3dhcEludGVydmFsKToKKysg
ICAgICAgIChyeDo6SU9TdXJmYWNlU3VyZmFjZUVBR0w6OmdldFdpZHRoIGNvbnN0KToKKysgICAg
ICAgIChyeDo6SU9TdXJmYWNlU3VyZmFjZUVBR0w6OmdldEhlaWdodCBjb25zdCk6CisrICAgICAg
ICAocng6OklPU3VyZmFjZVN1cmZhY2VFQUdMOjppc1Bvc3RTdWJCdWZmZXJTdXBwb3J0ZWQgY29u
c3QpOgorKyAgICAgICAgKHJ4OjpJT1N1cmZhY2VTdXJmYWNlRUFHTDo6Z2V0U3dhcEJlaGF2aW9y
IGNvbnN0KToKKysgICAgICAgIChyeDo6SU9TdXJmYWNlU3VyZmFjZUVBR0w6OnZhbGlkYXRlQXR0
cmlidXRlcyk6CisrICAgICAgICAocng6OklPU3VyZmFjZUZyYW1lYnVmZmVyOjpJT1N1cmZhY2VG
cmFtZWJ1ZmZlcik6CisrICAgICAgICAocng6OklPU3VyZmFjZVN1cmZhY2VFQUdMOjpjcmVhdGVE
ZWZhdWx0RnJhbWVidWZmZXIpOgorKyAgICAgICAgKHJ4OjpJT1N1cmZhY2VTdXJmYWNlRUFHTDo6
aW5pdGlhbGl6ZUFscGhhQ2hhbm5lbCk6CisrICAgICAgICAocng6OklPU3VyZmFjZVN1cmZhY2VF
QUdMOjpoYXNFbXVsYXRlZEFscGhhQ2hhbm5lbCBjb25zdCk6CisrICAgICAgICAqIHNyYy9saWJB
TkdMRS9yZW5kZXJlci9nbC9lYWdsL1BidWZmZXJTdXJmYWNlRUFHTC5jcHA6IENvcGllZCBmcm9t
IFNvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvUGJ1
ZmZlclN1cmZhY2VDR0wuY3BwLgorKyAgICAgICAgKHJ4OjpQYnVmZmVyU3VyZmFjZUVBR0w6OlBi
dWZmZXJTdXJmYWNlRUFHTCk6CisrICAgICAgICAocng6OlBidWZmZXJTdXJmYWNlRUFHTDo6flBi
dWZmZXJTdXJmYWNlRUFHTCk6CisrICAgICAgICAocng6OlBidWZmZXJTdXJmYWNlRUFHTDo6aW5p
dGlhbGl6ZSk6CisrICAgICAgICAocng6OlBidWZmZXJTdXJmYWNlRUFHTDo6bWFrZUN1cnJlbnQp
OgorKyAgICAgICAgKHJ4OjpQYnVmZmVyU3VyZmFjZUVBR0w6OnN3YXApOgorKyAgICAgICAgKHJ4
OjpQYnVmZmVyU3VyZmFjZUVBR0w6OnBvc3RTdWJCdWZmZXIpOgorKyAgICAgICAgKHJ4OjpQYnVm
ZmVyU3VyZmFjZUVBR0w6OnF1ZXJ5U3VyZmFjZVBvaW50ZXJBTkdMRSk6CisrICAgICAgICAocng6
OlBidWZmZXJTdXJmYWNlRUFHTDo6YmluZFRleEltYWdlKToKKysgICAgICAgIChyeDo6UGJ1ZmZl
clN1cmZhY2VFQUdMOjpyZWxlYXNlVGV4SW1hZ2UpOgorKyAgICAgICAgKHJ4OjpQYnVmZmVyU3Vy
ZmFjZUVBR0w6OnNldFN3YXBJbnRlcnZhbCk6CisrICAgICAgICAocng6OlBidWZmZXJTdXJmYWNl
RUFHTDo6Z2V0V2lkdGggY29uc3QpOgorKyAgICAgICAgKHJ4OjpQYnVmZmVyU3VyZmFjZUVBR0w6
OmdldEhlaWdodCBjb25zdCk6CisrICAgICAgICAocng6OlBidWZmZXJTdXJmYWNlRUFHTDo6aXNQ
b3N0U3ViQnVmZmVyU3VwcG9ydGVkIGNvbnN0KToKKysgICAgICAgIChyeDo6UGJ1ZmZlclN1cmZh
Y2VFQUdMOjpnZXRTd2FwQmVoYXZpb3IgY29uc3QpOgorKyAgICAgICAgKHJ4OjpQYnVmZmVyU3Vy
ZmFjZUVBR0w6OmNyZWF0ZURlZmF1bHRGcmFtZWJ1ZmZlcik6CisrICAgICAgICAqIHNyYy9saWJB
TkdMRS9yZW5kZXJlci9nbC9lYWdsL1BidWZmZXJTdXJmYWNlRUFHTC5oOiBBZGRlZC4KKysgICAg
ICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvUmVuZGVyZXJFQUdMLmNwcDogQWRk
ZWQuCisrICAgICAgICAocng6OlJlbmRlcmVyRUFHTDo6UmVuZGVyZXJFQUdMKToKKysgICAgICAg
IChyeDo6UmVuZGVyZXJFQUdMOjp+UmVuZGVyZXJFQUdMKToKKysgICAgICAgIChyeDo6UmVuZGVy
ZXJFQUdMOjpjcmVhdGVXb3JrZXJDb250ZXh0KToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3Jl
bmRlcmVyL2dsL2VhZ2wvUmVuZGVyZXJFQUdMLmg6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGli
QU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9XaW5kb3dTdXJmYWNlRUFHTC5oOiBBZGRlZC4KKysgICAg
ICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvV2luZG93U3VyZmFjZUVBR0wubW06
IENvcGllZCBmcm9tIFNvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJl
ci9nbC9jZ2wvV2luZG93U3VyZmFjZUNHTC5tbS4KKysgICAgICAgICgtW1dlYlN3YXBMYXllciBp
bml0V2l0aFNoYXJlZFN0YXRlOndpdGhDb250ZXh0OndpdGhGdW5jdGlvbnM6XSk6CisrICAgICAg
ICAoLVtXZWJTd2FwTGF5ZXIgZGlzcGxheV0pOgorKyAgICAgICAgKHJ4OjpXaW5kb3dTdXJmYWNl
RUFHTDo6V2luZG93U3VyZmFjZUVBR0wpOgorKyAgICAgICAgKHJ4OjpXaW5kb3dTdXJmYWNlRUFH
TDo6fldpbmRvd1N1cmZhY2VFQUdMKToKKysgICAgICAgIChyeDo6V2luZG93U3VyZmFjZUVBR0w6
OmluaXRpYWxpemUpOgorKyAgICAgICAgKHJ4OjpXaW5kb3dTdXJmYWNlRUFHTDo6bWFrZUN1cnJl
bnQpOgorKyAgICAgICAgKHJ4OjpXaW5kb3dTdXJmYWNlRUFHTDo6c3dhcCk6CisrICAgICAgICAo
cng6OldpbmRvd1N1cmZhY2VFQUdMOjpwb3N0U3ViQnVmZmVyKToKKysgICAgICAgIChyeDo6V2lu
ZG93U3VyZmFjZUVBR0w6OnF1ZXJ5U3VyZmFjZVBvaW50ZXJBTkdMRSk6CisrICAgICAgICAocng6
OldpbmRvd1N1cmZhY2VFQUdMOjpiaW5kVGV4SW1hZ2UpOgorKyAgICAgICAgKHJ4OjpXaW5kb3dT
dXJmYWNlRUFHTDo6cmVsZWFzZVRleEltYWdlKToKKysgICAgICAgIChyeDo6V2luZG93U3VyZmFj
ZUVBR0w6OnNldFN3YXBJbnRlcnZhbCk6CisrICAgICAgICAocng6OldpbmRvd1N1cmZhY2VFQUdM
OjpnZXRXaWR0aCBjb25zdCk6CisrICAgICAgICAocng6OldpbmRvd1N1cmZhY2VFQUdMOjpnZXRI
ZWlnaHQgY29uc3QpOgorKyAgICAgICAgKHJ4OjpXaW5kb3dTdXJmYWNlRUFHTDo6aXNQb3N0U3Vi
QnVmZmVyU3VwcG9ydGVkIGNvbnN0KToKKysgICAgICAgIChyeDo6V2luZG93U3VyZmFjZUVBR0w6
OmdldFN3YXBCZWhhdmlvciBjb25zdCk6CisrICAgICAgICAocng6OldpbmRvd1N1cmZhY2VFQUdM
OjpjcmVhdGVEZWZhdWx0RnJhbWVidWZmZXIpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVu
ZGVyZXIvZ2wvcmVuZGVyZXJnbF91dGlscy5jcHA6CisrICAgICAgICAocng6Om5hdGl2ZWdsX2ds
OjpHZW5lcmF0ZUNhcHMpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvdmFsaWRhdGlvbkVTMi5j
cHA6CisrICAgICAgICAoZ2w6OlZhbGlkYXRlRnJhbWVidWZmZXJUZXh0dXJlMkQpOgorKyAgICAg
ICAgKiBzcmMvbGliR0xFU3YyL2VudHJ5X3BvaW50c19lZ2xfZXh0LmNwcDoKKysKKysyMDE5LTEx
LTA2ICBEZWFuIEphY2tzb24gIDxkaW5vQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFtBTkdMRV0g
SU9TdXJmYWNlU3VyZmFjZUNHTCBoYXMgZm9ybWF0IGFuZCBpbnRlcm5hbEZvcm1hdCBmbGlwcGVk
CisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAzOTEx
CisrICAgICAgICA8cmRhcjovL3Byb2JsZW0vNTY5NTQyOTE+CisrCisrICAgICAgICBSZXZpZXdl
ZCBieSBTaW1vbiBGcmFzZXIuCisrCisrICAgICAgICBGaXggYSB0eXBvIHdoZXJlIGludGVybmFs
Rm9ybWF0IGFuZCBmb3JtYXQgYXJlIHVzZWQgaW4gdGhlCisrICAgICAgICB3cm9uZyBvcmRlci4g
VGhlIHRhYmxlIG9mIGZvcm1hdHMgYWxzbyBoYWQgdGhlbSBiYWNrd2FyZHMuCisrCisrICAgICAg
ICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvSU9TdXJmYWNlU3VyZmFjZUNHTC5jcHA6
CisrICAgICAgICAocng6OklPU3VyZmFjZVN1cmZhY2VDR0w6OmJpbmRUZXhJbWFnZSk6CisrCisr
MjAxOS0xMC0yOSAgRGVhbiBKYWNrc29uICA8ZGlub0BhcHBsZS5jb20+CisrCisrICAgICAgICBb
QU5HTEVdIFB1dCBBcHBsZSBwbGF0Zm9ybSBjb21waWxhdGlvbiBndWFyZHMgaW4gYSBiZXR0ZXIg
cGxhY2UKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MDM1OTAKKysgICAgICAgIDxyZGFyOi8vcHJvYmxlbS81NjcyMjM0NT4KKysKKysgICAgICAgIFJl
dmlld2VkIGJ5IFNpbW9uIEZyYXNlci4KKysKKysgICAgICAgIE1vdmUgdGhlICNkZWZpbmUgdG8g
cGxhdGZvcm0uaC4KKysKKysgICAgICAgICogc3JjL2NvbW1vbi9wbGF0Zm9ybS5oOgorKyAgICAg
ICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0RldmljZUNHTC5jcHA6CisrICAgICAg
ICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvRGlzcGxheUNHTC5tbToKKysgICAgICAg
ICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9JT1N1cmZhY2VTdXJmYWNlQ0dMLmNwcDoK
KysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9QYnVmZmVyU3VyZmFjZUNH
TC5jcHA6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvUmVuZGVyZXJD
R0wuY3BwOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL1dpbmRvd1N1
cmZhY2VDR0wubW06CisrCisrMjAxOS0xMC0yOSAgRGVhbiBKYWNrc29uICA8ZGlub0BhcHBsZS5j
b20+CisrCisrICAgICAgICBbQU5HTEVdIFdpbmRvdyBTZXJ2ZXIgYmxvY2tpbmcgc3RvcHMgc2lu
Z2xlIEdQVSBzeXN0ZW1zIGZyb20gY3JlYXRpbmcgYSBDR0xQaXhlbEZvcm1hdAorKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwMzUyMgorKyAgICAgICAg
PHJkYXI6Ly9wcm9ibGVtLzU2Njg1MzAyPgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgQWxleCBD
aHJpc3RlbnNlbi4KKysKKysgICAgICAgIFRoZSBXZWIgQ29udGVudCBQcm9jZXNzIGJsb2NrcyBh
Y2Nlc3MgdG8gdGhlIFdpbmRvdyBTZXJ2ZXIuIEZvciB0aGF0IHJlYXNvbiwgd2UKKysgICAgICAg
IG11c3QgY3JlYXRlIGFsbCBDR0xQaXhlbEZvcm1hdHMgd2l0aCB0aGUgIm9mZmxpbmUgcmVuZGVy
ZXIiIGZsYWcsIGV2ZW4gaWYgd2UncmUKKysgICAgICAgIG5vdCBvbiBhIGR1YWwtR1BVIHN5c3Rl
bS4KKysKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9EaXNwbGF5Q0dM
Lm1tOiBBbHdheXMgZW5hYmxlIGtDR0xQRkFBbGxvd09mZmxpbmVSZW5kZXJlcnMuCisrICAgICAg
ICAocng6OkRpc3BsYXlDR0w6OmluaXRpYWxpemUpOgorKworKzIwMTktMTAtMjMgIERlYW4gSmFj
a3NvbiAgPGRpbm9AYXBwbGUuY29tPgorKworKyAgICAgICAgW0FOR0xFXSBJbXByb3ZlIGNvbXBp
bGUtdGltZSBtYWNPUyBndWFyZHMgYW5kIGF2b2lkIE9iakMgaWYgcG9zc2libGUKKysgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDMzNDMKKysKKysgICAg
ICAgIFJldmlld2VkIGJ5IFNpbW9uIEZyYXNlci4KKysKKysgICAgICAgIFVzZSB0aGUgbW9yZSBv
ZmZpY2lhbCBjb21waWxlLXRpbWUgZGV0ZWN0aW9uIG9mIEFwcGxlIHBsYXRmb3Jtcywgc28gdGhh
dAorKyAgICAgICAgaXQgd2lsbCBiZSBlYXNpZXIgdG8gZGlmZmVyZW50aWF0ZSBiZXR3ZWVuIG1h
Y09TIGFuZCBpT1MuIEFsc28gbW92ZSBzb21lCisrICAgICAgICAubW0gZmlsZXMgdG8gLmNwcCB3
aGVyZSBwb3NzaWJsZS4KKysKKysgICAgICAgICogQU5HTEUueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvajoKKysgICAgICAgICogc3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mb19tYWMuY3BwOiBS
ZW5hbWVkIGZyb20gU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2dwdV9pbmZvX3V0aWwvU3lz
dGVtSW5mb19tYWMubW0uCisrICAgICAgICAoYW5nbGU6OkdldFN5c3RlbUluZm8pOgorKyAgICAg
ICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0RldmljZUNHTC5jcHA6CisrICAgICAg
ICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvRGlzcGxheUNHTC5tbToKKysgICAgICAg
ICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9JT1N1cmZhY2VTdXJmYWNlQ0dMLmNwcDog
UmVuYW1lZCBmcm9tIFNvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJl
ci9nbC9jZ2wvSU9TdXJmYWNlU3VyZmFjZUNHTC5tbS4KKysgICAgICAgICogc3JjL2xpYkFOR0xF
L3JlbmRlcmVyL2dsL2NnbC9QYnVmZmVyU3VyZmFjZUNHTC5jcHA6IFJlbmFtZWQgZnJvbSBTb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL1BidWZmZXJT
dXJmYWNlQ0dMLm1tLgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL1Jl
bmRlcmVyQ0dMLmNwcDogUmVuYW1lZCBmcm9tIFNvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9s
aWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvUmVuZGVyZXJDR0wubW0uCisrICAgICAgICAqIHNyYy9s
aWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvV2luZG93U3VyZmFjZUNHTC5tbToKKysKKysyMDE5LTEw
LTIzICBEZWFuIEphY2tzb24gIDxkaW5vQGFwcGxlLmNvbT4KKysKKysgICAgICAgIERvbid0IHRy
eSB0byBjb21waWxlIC5pbmMgZmlsZXMgaW4gQU5HTEUKKysgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDMzMTUKKysKKysgICAgICAgIFJldmlld2VkIGJ5
IFNpbW9uIEZyYXNlci4KKysKKysgICAgICAgIFRoZXNlIGFyZSBoZWFkZXJzLCBub3QgZmlsZXMg
d2UgbmVlZCB0byBjb21waWxlIGRpcmVjdGx5LgorKworKyAgICAgICAgKiBBTkdMRS54Y29kZXBy
b2ovcHJvamVjdC5wYnhwcm9qOgorKworKzIwMTktMTAtMTUgIEJyZW50IEZ1bGdoYW0gIDxiZnVs
Z2hhbUBhcHBsZS5jb20+CisrCisrICAgICAgICBVbnJldmlld2VkIGJ1aWxkIGZpeCBhZnRlciBy
MjUxMDE4CisrCisrCisrICAgICAgICAqIFBsYXRmb3JtRlRXLmNtYWtlOiBBZGQgbWlzc2luZyBk
eGdpIGxpYnJhcnkuCisrCisrMjAxOS0xMC0xMiAgU3RlcGhhbiBTemFibyAgPHN0ZXBoYW4uc3ph
Ym9Ac29ueS5jb20+CisrCisrICAgICAgICBSZWdyZXNzaW9uICgyNTEwMTgpOiBXaW5jYWlybyBi
dWlsZCBicm9rZW46IHVucmVzb2x2ZWQgZXh0ZXJuYWwgc3ltYm9sCisrICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAyODc5CisrCisrICAgICAgICBSZXZp
ZXdlZCBieSBBbGV4IENocmlzdGVuc2VuLgorKworKyAgICAgICAgKiBQbGF0Zm9ybVdpbi5jbWFr
ZTogQWRkIGR4Z2kgbGlicmFyeSBmb3IgQ3JlYXRlRFhHSUZhY3RvcnkxCisrCisrMjAxOS0xMC0x
MSAgS2VubmV0aCBSdXNzZWxsICA8a2JyQGNocm9taXVtLm9yZz4KKysKKysgICAgICAgIFVTRV9B
TkdMRT0xIGJ1aWxkIGJyb2tlbiB3aXRoIGxhc3QgQU5HTEUgcm9sbAorKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwMjg3MgorKworKyAgICAgICAgQWRk
IEZyYW1lQ2FwdHVyZV9tb2NrLmNwcCB0byBYY29kZSBhbmQgQ01ha2UgYnVpbGRzLgorKworKyAg
ICAgICAgUmV2aWV3ZWQgYnkgQWxleCBDaHJpc3RlbnNlbi4KKysKKysgICAgICAgICogQU5HTEUu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKysgICAgICAgICogQ01ha2VMaXN0cy50eHQ6Cisr
ICAgICAgICAqIEdMRVN2Mi5jbWFrZToKKysKKysyMDE5LTEwLTExICBLZW5uZXRoIFJ1c3NlbGwg
IDxrYnJAY2hyb21pdW0ub3JnPgorKworKyAgICAgICAgUm9sbCBBTkdMRSBmb3IgRVRDIGV4dGVu
c2lvbnMgYW5kIEVHTF9BTkdMRV9kZXZpY2VfY2dsCisrICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAyNzgwCisrCisrICAgICAgICBSb2xsIEFOR0xFIHRv
IGM1ZTBhYzc1N2ExMTJhMjRhMDExOGQ0MzRlNjUyZmQ3YjU1OGU2YTggdmlhIG5ldworKyAgICAg
ICAgdXBkYXRlLWFuZ2xlLnNoIHNjcmlwdC4KKysKKysgICAgICAgIFJldmlld2VkIGJ5IEFsZXgg
Q2hyaXN0ZW5zZW4uCisrCisrICAgICAgICAqIC5naXRpZ25vcmU6CisrICAgICAgICAqIEFOR0xF
LnBsaXN0OgorKyAgICAgICAgKiBBTkdMRS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorKyAg
ICAgICAgKiBCVUlMRC5nbjoKKysgICAgICAgICogQ01ha2VMaXN0cy50eHQ6CisrICAgICAgICAq
IENPTlRSSUJVVE9SUzoKKysgICAgICAgICogREVQUzoKKysgICAgICAgICogR0xFU3YyLmNtYWtl
OgorKyAgICAgICAgKiBPV05FUlM6CisrICAgICAgICAqIFBSRVNVQk1JVC5weToKKysgICAgICAg
IChfQ2hlY2tFeHBvcnRWYWxpZGl0eSk6CisrICAgICAgICAoQ2hlY2tDaGFuZ2VPblVwbG9hZCk6
CisrICAgICAgICAoQ2hlY2tDaGFuZ2VPbkNvbW1pdCk6CisrICAgICAgICAqIFJFQURNRS5tZDoK
KysgICAgICAgICogYW5kcm9pZC9hbmdsZV9hcGsuZ25pOgorKyAgICAgICAgKiBidWlsZF9vdmVy
cmlkZXMvYW5nbGUuZ25pOgorKyAgICAgICAgKiBjaGFuZ2VzLmRpZmY6CisrICAgICAgICAqIGRv
Yy9EZXZTZXR1cC5tZDoKKysgICAgICAgICogZG90ZmlsZV9zZXR0aW5ncy5nbmk6CisrICAgICAg
ICAqIGV4dGVuc2lvbnMvQU5HTEVfY29tcHJlc3NlZF90ZXh0dXJlX2V0Yy50eHQ6IEFkZGVkLgor
KyAgICAgICAgKiBleHRlbnNpb25zL0VHTF9BTkdMRV9kZXZpY2VfY2dsLnR4dDogQWRkZWQuCisr
ICAgICAgICAqIGV4dGVuc2lvbnMvRUdMX0FOR0xFX2ZlYXR1cmVfY29udHJvbC50eHQ6CisrICAg
ICAgICAqIGV4dGVuc2lvbnMvRUdMX0FOR0xFX3BsYXRmb3JtX2FuZ2xlX2QzZDExb24xMi50eHQ6
IEFkZGVkLgorKyAgICAgICAgKiBleHRlbnNpb25zL0VHTF9BTkdMRV9wbGF0Zm9ybV9hbmdsZV9k
ZXZpY2VfdHlwZV9zd2lmdHNoYWRlci50eHQ6IEFkZGVkLgorKyAgICAgICAgKiBleHRlbnNpb25z
L0VHTF9BTkdMRV9wbGF0Zm9ybV9hbmdsZV9tZXRhbC50eHQ6IEFkZGVkLgorKyAgICAgICAgKiBn
bmkvYW5nbGUuZ25pOgorKyAgICAgICAgKiBpbmNsdWRlL0VHTC9lZ2xleHRfYW5nbGUuaDoKKysg
ICAgICAgICogaW5jbHVkZS9wbGF0Zm9ybS9GZWF0dXJlLmg6CisrICAgICAgICAoYW5nbGU6OkZl
YXR1cmU6OkZlYXR1cmUpOgorKyAgICAgICAgKiBpbmNsdWRlL3BsYXRmb3JtL0ZlYXR1cmVzRDNE
Lmg6CisrICAgICAgICAqIGluY2x1ZGUvcGxhdGZvcm0vRmVhdHVyZXNHTC5oOgorKyAgICAgICAg
KiBpbmNsdWRlL3BsYXRmb3JtL0ZlYXR1cmVzVmsuaDoKKysgICAgICAgICogaW5jbHVkZS9wbGF0
Zm9ybS9Gcm9udGVuZEZlYXR1cmVzLmg6CisrICAgICAgICAqIHNhbXBsZXMvV2luZG93VGVzdC9X
aW5kb3dUZXN0LmNwcDoKKysgICAgICAgICogc2FtcGxlcy9nbGVzMS9EcmF3VGV4dHVyZS5jcHA6
CisrICAgICAgICAqIHNhbXBsZXMvbXVsdGlfdGV4dHVyZS9NdWx0aVRleHR1cmUuY3BwOgorKyAg
ICAgICAgKiBzYW1wbGVzL211bHRpcGxlX2RyYXdfYnVmZmVycy9NdWx0aXBsZURyYXdCdWZmZXJz
LmNwcDoKKysgICAgICAgICogc2FtcGxlcy9wYXJ0aWNsZV9zeXN0ZW0vUGFydGljbGVTeXN0ZW0u
Y3BwOgorKyAgICAgICAgKiBzYW1wbGVzL3NhbXBsZV91dGlsL1NhbXBsZUFwcGxpY2F0aW9uLmNw
cDoKKysgICAgICAgIChTYW1wbGVBcHBsaWNhdGlvbjo6U2FtcGxlQXBwbGljYXRpb24pOgorKyAg
ICAgICAgKiBzYW1wbGVzL3NhbXBsZV91dGlsL1NhbXBsZUFwcGxpY2F0aW9uLmg6CisrICAgICAg
ICAqIHNjcmlwdHMvY29kZV9nZW5lcmF0aW9uX2hhc2hlcy9BTkdMRV9mb3JtYXQuanNvbjoKKysg
ICAgICAgICogc2NyaXB0cy9jb2RlX2dlbmVyYXRpb25faGFzaGVzL0FOR0xFX2xvYWRfZnVuY3Rp
b25zX3RhYmxlLmpzb246CisrICAgICAgICAqIHNjcmlwdHMvY29kZV9nZW5lcmF0aW9uX2hhc2hl
cy9EM0QxMV9mb3JtYXQuanNvbjoKKysgICAgICAgICogc2NyaXB0cy9jb2RlX2dlbmVyYXRpb25f
aGFzaGVzL0RYR0lfZm9ybWF0Lmpzb246CisrICAgICAgICAqIHNjcmlwdHMvY29kZV9nZW5lcmF0
aW9uX2hhc2hlcy9HTF9FR0xfV0dMX2xvYWRlci5qc29uOgorKyAgICAgICAgKiBzY3JpcHRzL2Nv
ZGVfZ2VuZXJhdGlvbl9oYXNoZXMvR0xfRUdMX2VudHJ5X3BvaW50cy5qc29uOgorKyAgICAgICAg
KiBzY3JpcHRzL2NvZGVfZ2VuZXJhdGlvbl9oYXNoZXMvT3BlbkdMX2Rpc3BhdGNoX3RhYmxlLmpz
b246CisrICAgICAgICAqIHNjcmlwdHMvY29kZV9nZW5lcmF0aW9uX2hhc2hlcy9TdGF0aWNfYnVp
bHRpbnMuanNvbjoKKysgICAgICAgICogc2NyaXB0cy9jb2RlX2dlbmVyYXRpb25faGFzaGVzL1Z1
bGthbl9mb3JtYXQuanNvbjoKKysgICAgICAgICogc2NyaXB0cy9jb2RlX2dlbmVyYXRpb25faGFz
aGVzL1Z1bGthbl9pbnRlcm5hbF9zaGFkZXJfcHJvZ3JhbXMuanNvbjoKKysgICAgICAgICogc2Ny
aXB0cy9jb2RlX2dlbmVyYXRpb25faGFzaGVzL1Z1bGthbl9tYW5kYXRvcnlfZm9ybWF0X3N1cHBv
cnRfdGFibGUuanNvbjoKKysgICAgICAgICogc2NyaXB0cy9jb2RlX2dlbmVyYXRpb25faGFzaGVz
L3Byb2NfdGFibGUuanNvbjoKKysgICAgICAgICogc2NyaXB0cy9leHBvcnRfdGFyZ2V0cy5weToK
KysgICAgICAgIChoYXNfYWxsX2luY2x1ZGVzKToKKysgICAgICAgICogc2NyaXB0cy9nZW5lcmF0
ZV9lbnRyeV9wb2ludHMucHk6CisrICAgICAgICAoZ2V0X3Jlc291cmNlX2lkX3R5cGVzKToKKysg
ICAgICAgIChmb3JtYXRfcmVzb3VyY2VfaWRfdHlwZXMpOgorKyAgICAgICAgKHdyaXRlX2NhcHR1
cmVfaGVscGVyX2hlYWRlcik6CisrICAgICAgICAoZ2V0X3Jlc291cmNlX2lkX3R5cGVfZnJvbV9w
YXJhbV90eXBlKToKKysgICAgICAgIChmb3JtYXRfcGFyYW1fdHlwZV90b19yZXNvdXJjZV9pZF90
eXBlX2Nhc2UpOgorKyAgICAgICAgKGZvcm1hdF9wYXJhbV90eXBlX3Jlc291cmNlX2lkX2Nhc2Vz
KToKKysgICAgICAgIChmb3JtYXRfcmVzb3VyY2VfaWRfdHlwZV9uYW1lX2Nhc2UpOgorKyAgICAg
ICAgKHdyaXRlX2NhcHR1cmVfaGVscGVyX3NvdXJjZSk6CisrICAgICAgICAqIHNjcmlwdHMvZ2Vu
ZXJhdGVfdnVsa2FuX2xheWVyc19qc29uLnB5OgorKyAgICAgICAgKG1haW4pOgorKyAgICAgICAg
KiBzY3JpcHRzL3JlZ2lzdHJ5X3htbC5weToKKysgICAgICAgICogc3JjL2NvbW1vbi9QYWNrZWRF
bnVtcy5jcHA6CisrICAgICAgICAoZ2w6Om9wZXJhdG9yPDwpOgorKyAgICAgICAgKiBzcmMvY29t
bW9uL1BhY2tlZEVudW1zLmg6CisrICAgICAgICAoYW5nbGU6OkVudW1TaXplPEU+KToKKysgICAg
ICAgIChnbDo6RnJvbUdMZW51bTxWZXJ0ZXhBdHRyaWJUeXBlPik6CisrICAgICAgICAoZ2w6OlRv
R0xlbnVtKToKKysgICAgICAgIChnbDo6VmFsdWVFcXVhbHMpOgorKyAgICAgICAgKGdsOjpvcGVy
YXRvcj09KToKKysgICAgICAgIChnbDo6b3BlcmF0b3IhPSk6CisrICAgICAgICAqIHNyYy9jb21t
b24vYW5kcm9pZF91dGlsLmNwcDoKKysgICAgICAgIChhbmdsZTo6YW5kcm9pZDo6TmF0aXZlUGl4
ZWxGb3JtYXRUb0dMSW50ZXJuYWxGb3JtYXQpOgorKyAgICAgICAgKiBzcmMvY29tbW9uL2FuZ2xl
dXRpbHMuaDoKKysgICAgICAgICogc3JjL2NvbW1vbi9kZWJ1Zy5oOgorKyAgICAgICAgKiBzcmMv
Y29tbW9uL3BsYXRmb3JtLmg6CisrICAgICAgICAqIHNyYy9jb21tb24vc3lzdGVtX3V0aWxzX3dp
bnV3cC5jcHA6IEFkZGVkLgorKyAgICAgICAgKGFuZ2xlOjpTZXRFbnZpcm9ubWVudFZhcik6Cisr
ICAgICAgICAoYW5nbGU6OkdldEVudmlyb25tZW50VmFyKToKKysgICAgICAgIChhbmdsZTo6R2V0
U2hhcmVkTGlicmFyeUV4dGVuc2lvbik6CisrICAgICAgICAoYW5nbGU6OkdldFBhdGhTZXBhcmF0
b3IpOgorKyAgICAgICAgKGFuZ2xlOjpHZXRDdXJyZW50VGltZSk6CisrICAgICAgICAoYW5nbGU6
OlV3cExpYnJhcnk6OlV3cExpYnJhcnkpOgorKyAgICAgICAgKGFuZ2xlOjpPcGVuU2hhcmVkTGli
cmFyeSk6CisrICAgICAgICAoYW5nbGU6OklzRGVidWdnZXJBdHRhY2hlZCk6CisrICAgICAgICAo
YW5nbGU6OkJyZWFrRGVidWdnZXIpOgorKyAgICAgICAgKiBzcmMvY29tbW9uL3Rscy5jcHA6Cisr
ICAgICAgICAoQ3JlYXRlVExTSW5kZXgpOgorKyAgICAgICAgKERlc3Ryb3lUTFNJbmRleCk6Cisr
ICAgICAgICAoU2V0VExTVmFsdWUpOgorKyAgICAgICAgKEdldFRMU1ZhbHVlKToKKysgICAgICAg
ICogc3JjL2NvbW1vbi90bHMuaDoKKysgICAgICAgICogc3JjL2NvbW1vbi91dGlsaXRpZXMuY3Bw
OgorKyAgICAgICAgKGdsOjpTdHJpcExhc3RBcnJheUluZGV4KToKKysgICAgICAgICogc3JjL2Nv
bW1vbi91dGlsaXRpZXMuaDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyLmduaToKKysgICAgICAg
ICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvQ29tcGlsZXIuY3BwOgorKyAgICAgICAgKHNoOjpU
Q29tcGlsZXI6OmNvbXBpbGVUcmVlSW1wbCk6CisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFu
c2xhdG9yL0ltbXV0YWJsZVN0cmluZ19FU1NMX2F1dG9nZW4uY3BwOgorKyAgICAgICAgKiBzcmMv
Y29tcGlsZXIvdHJhbnNsYXRvci9JbW11dGFibGVTdHJpbmdfYXV0b2dlbi5jcHA6CisrICAgICAg
ICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL0ludGVybU5vZGUuaDoKKysgICAgICAgIChzaDo6
VEludGVybVByZXByb2Nlc3NvckRpcmVjdGl2ZTo6Z2V0RGlyZWN0aXZlIGNvbnN0KTogRGVsZXRl
ZC4KKysgICAgICAgIChzaDo6VEludGVybVByZXByb2Nlc3NvckRpcmVjdGl2ZTo6Z2V0Q29tbWFu
ZCBjb25zdCk6IERlbGV0ZWQuCisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL1Bh
cnNlQ29udGV4dC5jcHA6CisrICAgICAgICAoc2g6OlRQYXJzZUNvbnRleHQ6OlRQYXJzZUNvbnRl
eHQpOgorKyAgICAgICAgKHNoOjpUUGFyc2VDb250ZXh0OjpjaGVja0lzVmFsaWRBcnJheVNpemUp
OgorKyAgICAgICAgKHNoOjpUUGFyc2VDb250ZXh0OjpwYXJzZUZ1bmN0aW9uRGVjbGFyYXRvcik6
CisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL1BhcnNlQ29udGV4dC5oOgorKyAg
ICAgICAgKHNoOjpUUGFyc2VDb250ZXh0OjpnZXRPdXRwdXRUeXBlIGNvbnN0KToKKysgICAgICAg
ICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvU2hhZGVyVmFycy5jcHA6CisrICAgICAgICAoc2g6
OlNoYWRlclZhcmlhYmxlOjpvcGVyYXRvcj0pOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJh
bnNsYXRvci9TeW1ib2xUYWJsZS5jcHA6CisrICAgICAgICAoc2g6OlRTeW1ib2xUYWJsZTo6c2V0
R2xJbkFycmF5U2l6ZSk6CisrICAgICAgICAoc2g6OlRTeW1ib2xUYWJsZTo6Z2xfRnJhZ0RhdGEg
Y29uc3QpOgorKyAgICAgICAgKHNoOjpUU3ltYm9sVGFibGU6OmdsX1NlY29uZGFyeUZyYWdEYXRh
RVhUIGNvbnN0KToKKysgICAgICAgIChzaDo6U3ltYm9sUnVsZTo6Z2V0IGNvbnN0KToKKysgICAg
ICAgIChzaDo6RmluZE1hbmdsZWRCdWlsdEluKToKKysgICAgICAgIChzaDo6VW5tYW5nbGVkRW50
cnk6Om1hdGNoZXMgY29uc3QpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9T
eW1ib2xUYWJsZS5oOgorKyAgICAgICAgKHNoOjpTeW1ib2xSdWxlOjpTeW1ib2xSdWxlKToKKysg
ICAgICAgIChzaDo6U3ltYm9sUnVsZTo6R2V0KToKKysgICAgICAgIChzaDo6VW5tYW5nbGVkRW50
cnk6OlVubWFuZ2xlZEVudHJ5KToKKysgICAgICAgIChzaDo6U3ltYm9sRW50cnk6OlN5bWJvbEVu
dHJ5KTogRGVsZXRlZC4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvU3ltYm9s
VGFibGVfRVNTTF9hdXRvZ2VuLmNwcDoKKysgICAgICAgIChzaDo6QnVpbHRJblZhcmlhYmxlOjph
bmdsZV9CYXNlSW5zdGFuY2UpOgorKyAgICAgICAgKHNoOjpCdWlsdEluVmFyaWFibGU6OmFuZ2xl
X0Jhc2VWZXJ0ZXgpOgorKyAgICAgICAgKHNoOjpCdWlsdEluVmFyaWFibGU6OmdsX0Jhc2VJbnN0
YW5jZSk6CisrICAgICAgICAoc2g6OkJ1aWx0SW5WYXJpYWJsZTo6Z2xfQmFzZVZlcnRleCk6Cisr
ICAgICAgICAoc2g6OkJ1aWx0SW5WYXJpYWJsZTo6Z2xfRHJhd0lEKToKKysgICAgICAgIChzaDo6
QnVpbHRJblZhcmlhYmxlOjpnbF9GcmFnQ29sb3IpOgorKyAgICAgICAgKHNoOjpCdWlsdEluVmFy
aWFibGU6OmdsX0ZyYWdDb29yZCk6CisrICAgICAgICAoc2g6OkJ1aWx0SW5WYXJpYWJsZTo6Z2xf
RnJhZ0RlcHRoKToKKysgICAgICAgIChzaDo6QnVpbHRJblZhcmlhYmxlOjpnbF9Gcm9udEZhY2lu
Zyk6CisrICAgICAgICAoc2g6OkJ1aWx0SW5WYXJpYWJsZTo6Z2xfR2xvYmFsSW52b2NhdGlvbklE
KToKKysgICAgICAgIChzaDo6QnVpbHRJblZhcmlhYmxlOjpnbF9JbnN0YW5jZUlEKToKKysgICAg
ICAgIChzaDo6QnVpbHRJblZhcmlhYmxlOjpnbF9JbnN0YW5jZUluZGV4KToKKysgICAgICAgIChz
aDo6QnVpbHRJblZhcmlhYmxlOjpnbF9JbnZvY2F0aW9uSUQpOgorKyAgICAgICAgKHNoOjpCdWls
dEluVmFyaWFibGU6OmdsX0xhc3RGcmFnQ29sb3IpOgorKyAgICAgICAgKHNoOjpCdWlsdEluVmFy
aWFibGU6OmdsX0xhc3RGcmFnQ29sb3JBUk0pOgorKyAgICAgICAgKHNoOjpCdWlsdEluVmFyaWFi
bGU6OmdsX0xheWVyKToKKysgICAgICAgIChzaDo6QnVpbHRJblZhcmlhYmxlOjpnbF9MYXllckdT
KToKKysgICAgICAgIChzaDo6QnVpbHRJblZhcmlhYmxlOjpnbF9MYXllclZTKToKKysgICAgICAg
IChzaDo6QnVpbHRJblZhcmlhYmxlOjpnbF9Mb2NhbEludm9jYXRpb25JRCk6CisrICAgICAgICAo
c2g6OkJ1aWx0SW5WYXJpYWJsZTo6Z2xfTG9jYWxJbnZvY2F0aW9uSW5kZXgpOgorKyAgICAgICAg
KHNoOjpCdWlsdEluVmFyaWFibGU6OmdsX051bVdvcmtHcm91cHMpOgorKyAgICAgICAgKHNoOjpC
dWlsdEluVmFyaWFibGU6OmdsX1BvaW50Q29vcmQpOgorKyAgICAgICAgKHNoOjpCdWlsdEluVmFy
aWFibGU6OmdsX1BvaW50U2l6ZSk6CisrICAgICAgICAoc2g6OkJ1aWx0SW5WYXJpYWJsZTo6Z2xf
UG9zaXRpb24pOgorKyAgICAgICAgKHNoOjpCdWlsdEluVmFyaWFibGU6OmdsX1ByaW1pdGl2ZUlE
KToKKysgICAgICAgIChzaDo6QnVpbHRJblZhcmlhYmxlOjpnbF9QcmltaXRpdmVJREdTKToKKysg
ICAgICAgIChzaDo6QnVpbHRJblZhcmlhYmxlOjpnbF9QcmltaXRpdmVJREluKToKKysgICAgICAg
IChzaDo6QnVpbHRJblZhcmlhYmxlOjpnbF9TZWNvbmRhcnlGcmFnQ29sb3JFWFQpOgorKyAgICAg
ICAgKHNoOjpCdWlsdEluVmFyaWFibGU6OmdsX1ZlcnRleElEKToKKysgICAgICAgIChzaDo6QnVp
bHRJblZhcmlhYmxlOjpnbF9WZXJ0ZXhJbmRleCk6CisrICAgICAgICAoc2g6OkJ1aWx0SW5WYXJp
YWJsZTo6Z2xfVmlld0lEX09WUik6CisrICAgICAgICAoc2g6OkJ1aWx0SW5WYXJpYWJsZTo6Z2xf
Vmlld3BvcnRJbmRleCk6CisrICAgICAgICAoc2g6OkJ1aWx0SW5WYXJpYWJsZTo6Z2xfV29ya0dy
b3VwSUQpOgorKyAgICAgICAgKHNoOjpCdWlsdEluVmFyaWFibGU6OmdsX1dvcmtHcm91cFNpemUp
OgorKyAgICAgICAgKHNoOjpUU3ltYm9sVGFibGU6OmluaXRpYWxpemVCdWlsdEluVmFyaWFibGVz
KToKKysgICAgICAgIChzaDo6VFN5bWJvbFRhYmxlOjpmaW5kQnVpbHRJbiBjb25zdCk6CisrICAg
ICAgICAoc2g6OlRTeW1ib2xUYWJsZTo6aXNVbm1hbmdsZWRCdWlsdEluTmFtZSBjb25zdCk6Cisr
ICAgICAgICAoc2g6OlRTeW1ib2xUYWJsZTo6Z2V0U3ltYm9sIGNvbnN0KTogRGVsZXRlZC4KKysg
ICAgICAgIChzaDo6VFN5bWJvbFRhYmxlOjpnZXRVbm1hbmdsZWQgY29uc3QpOiBEZWxldGVkLgor
KyAgICAgICAgKHNoOjpUU3ltYm9sVGFibGU6OmdldFVubWFuZ2xlZEJ1aWx0SW5Gb3JTaGFkZXJW
ZXJzaW9uKTogRGVsZXRlZC4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvU3lt
Ym9sVGFibGVfYXV0b2dlbi5jcHA6CisrICAgICAgICAoc2g6OkJ1aWx0SW5WYXJpYWJsZTo6YW5n
bGVfQmFzZUluc3RhbmNlKToKKysgICAgICAgIChzaDo6QnVpbHRJblZhcmlhYmxlOjphbmdsZV9C
YXNlVmVydGV4KToKKysgICAgICAgIChzaDo6QnVpbHRJblZhcmlhYmxlOjpnbF9CYXNlSW5zdGFu
Y2UpOgorKyAgICAgICAgKHNoOjpCdWlsdEluVmFyaWFibGU6OmdsX0Jhc2VWZXJ0ZXgpOgorKyAg
ICAgICAgKHNoOjpCdWlsdEluVmFyaWFibGU6OmdsX0RyYXdJRCk6CisrICAgICAgICAoc2g6OkJ1
aWx0SW5WYXJpYWJsZTo6Z2xfRnJhZ0NvbG9yKToKKysgICAgICAgIChzaDo6QnVpbHRJblZhcmlh
YmxlOjpnbF9GcmFnQ29vcmQpOgorKyAgICAgICAgKHNoOjpCdWlsdEluVmFyaWFibGU6OmdsX0Zy
YWdEZXB0aCk6CisrICAgICAgICAoc2g6OkJ1aWx0SW5WYXJpYWJsZTo6Z2xfRnJvbnRGYWNpbmcp
OgorKyAgICAgICAgKHNoOjpCdWlsdEluVmFyaWFibGU6OmdsX0dsb2JhbEludm9jYXRpb25JRCk6
CisrICAgICAgICAoc2g6OkJ1aWx0SW5WYXJpYWJsZTo6Z2xfSW5zdGFuY2VJRCk6CisrICAgICAg
ICAoc2g6OkJ1aWx0SW5WYXJpYWJsZTo6Z2xfSW5zdGFuY2VJbmRleCk6CisrICAgICAgICAoc2g6
OkJ1aWx0SW5WYXJpYWJsZTo6Z2xfSW52b2NhdGlvbklEKToKKysgICAgICAgIChzaDo6QnVpbHRJ
blZhcmlhYmxlOjpnbF9MYXN0RnJhZ0NvbG9yKToKKysgICAgICAgIChzaDo6QnVpbHRJblZhcmlh
YmxlOjpnbF9MYXN0RnJhZ0NvbG9yQVJNKToKKysgICAgICAgIChzaDo6QnVpbHRJblZhcmlhYmxl
OjpnbF9MYXllcik6CisrICAgICAgICAoc2g6OkJ1aWx0SW5WYXJpYWJsZTo6Z2xfTGF5ZXJHUyk6
CisrICAgICAgICAoc2g6OkJ1aWx0SW5WYXJpYWJsZTo6Z2xfTGF5ZXJWUyk6CisrICAgICAgICAo
c2g6OkJ1aWx0SW5WYXJpYWJsZTo6Z2xfTG9jYWxJbnZvY2F0aW9uSUQpOgorKyAgICAgICAgKHNo
OjpCdWlsdEluVmFyaWFibGU6OmdsX0xvY2FsSW52b2NhdGlvbkluZGV4KToKKysgICAgICAgIChz
aDo6QnVpbHRJblZhcmlhYmxlOjpnbF9OdW1Xb3JrR3JvdXBzKToKKysgICAgICAgIChzaDo6QnVp
bHRJblZhcmlhYmxlOjpnbF9Qb2ludENvb3JkKToKKysgICAgICAgIChzaDo6QnVpbHRJblZhcmlh
YmxlOjpnbF9Qb2ludFNpemUpOgorKyAgICAgICAgKHNoOjpCdWlsdEluVmFyaWFibGU6OmdsX1Bv
c2l0aW9uKToKKysgICAgICAgIChzaDo6QnVpbHRJblZhcmlhYmxlOjpnbF9QcmltaXRpdmVJRCk6
CisrICAgICAgICAoc2g6OkJ1aWx0SW5WYXJpYWJsZTo6Z2xfUHJpbWl0aXZlSURHUyk6CisrICAg
ICAgICAoc2g6OkJ1aWx0SW5WYXJpYWJsZTo6Z2xfUHJpbWl0aXZlSURJbik6CisrICAgICAgICAo
c2g6OkJ1aWx0SW5WYXJpYWJsZTo6Z2xfU2Vjb25kYXJ5RnJhZ0NvbG9yRVhUKToKKysgICAgICAg
IChzaDo6QnVpbHRJblZhcmlhYmxlOjpnbF9WZXJ0ZXhJRCk6CisrICAgICAgICAoc2g6OkJ1aWx0
SW5WYXJpYWJsZTo6Z2xfVmVydGV4SW5kZXgpOgorKyAgICAgICAgKHNoOjpCdWlsdEluVmFyaWFi
bGU6OmdsX1ZpZXdJRF9PVlIpOgorKyAgICAgICAgKHNoOjpCdWlsdEluVmFyaWFibGU6OmdsX1Zp
ZXdwb3J0SW5kZXgpOgorKyAgICAgICAgKHNoOjpCdWlsdEluVmFyaWFibGU6OmdsX1dvcmtHcm91
cElEKToKKysgICAgICAgIChzaDo6QnVpbHRJblZhcmlhYmxlOjpnbF9Xb3JrR3JvdXBTaXplKToK
KysgICAgICAgIChzaDo6VFN5bWJvbFRhYmxlOjppbml0aWFsaXplQnVpbHRJblZhcmlhYmxlcyk6
CisrICAgICAgICAoc2g6OlRTeW1ib2xUYWJsZTo6ZmluZEJ1aWx0SW4gY29uc3QpOgorKyAgICAg
ICAgKHNoOjpUU3ltYm9sVGFibGU6OmlzVW5tYW5nbGVkQnVpbHRJbk5hbWUgY29uc3QpOgorKyAg
ICAgICAgKHNoOjpUU3ltYm9sVGFibGU6OmdldFN5bWJvbCBjb25zdCk6IERlbGV0ZWQuCisrICAg
ICAgICAoc2g6OlRTeW1ib2xUYWJsZTo6Z2V0VW5tYW5nbGVkIGNvbnN0KTogRGVsZXRlZC4KKysg
ICAgICAgIChzaDo6VFN5bWJvbFRhYmxlOjpnZXRVbm1hbmdsZWRCdWlsdEluRm9yU2hhZGVyVmVy
c2lvbik6IERlbGV0ZWQuCisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL1N5bWJv
bFRhYmxlX2F1dG9nZW4uaDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJh
bnNsYXRvclZ1bGthbi5jcHA6CisrICAgICAgICAoc2g6OlRyYW5zbGF0b3JWdWxrYW46OnRyYW5z
bGF0ZSk6CisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL2dlbl9idWlsdGluX3N5
bWJvbHMucHk6CisrICAgICAgICAoZ2V0X3NoYWRlcl92ZXJzaW9uX2Zvcl9sZXZlbCk6CisrICAg
ICAgICAoR3JvdXBlZExpc3QuX19pbml0X18pOgorKyAgICAgICAgKEdyb3VwZWRMaXN0LmFkZF9l
bnRyeSk6CisrICAgICAgICAoR3JvdXBlZExpc3QuZm9ybWF0X3J1bGUpOgorKyAgICAgICAgKEdy
b3VwZWRMaXN0KToKKysgICAgICAgIChHcm91cGVkTGlzdC5mb3JtYXRfcnVsZXMpOgorKyAgICAg
ICAgKEdyb3VwZWRMaXN0LmdldF9ydWxlcyk6CisrICAgICAgICAoR3JvdXBlZExpc3QuZ2V0X25h
bWVzKToKKysgICAgICAgIChHcm91cGVkTGlzdC5nZXRfb2Zmc2V0cyk6CisrICAgICAgICAoR3Jv
dXBlZExpc3QudXBkYXRlX2FycmF5cyk6CisrICAgICAgICAoR3JvdXBlZExpc3QudXBkYXRlX2Fy
cmF5cy5hZGRfcnVsZSk6CisrICAgICAgICAoVW5tYW5nbGVkR3JvdXBlZExpc3QuYWRkX2VudHJ5
KToKKysgICAgICAgIChVbm1hbmdsZWRHcm91cGVkTGlzdC5nZXRfYXJyYXkpOgorKyAgICAgICAg
KGRlZmluZV9jb25zdGV4cHJfdmFyaWFibGUpOgorKyAgICAgICAgKHByb2Nlc3Nfc2luZ2xlX2Z1
bmN0aW9uX2dyb3VwKToKKysgICAgICAgIChwcm9jZXNzX2Z1bmN0aW9uX2dyb3VwKToKKysgICAg
ICAgIChwcm9jZXNzX3NpbmdsZV92YXJpYWJsZV9ncm91cCk6CisrICAgICAgICAoR3JvdXBlZExp
c3QuYWRkX29iaik6IERlbGV0ZWQuCisrICAgICAgICAoR3JvdXBlZExpc3QuZ2V0X2FycmF5KTog
RGVsZXRlZC4KKysgICAgICAgIChVbm1hbmdsZWRHcm91cGVkTGlzdC5hZGRfb2JqKTogRGVsZXRl
ZC4KKysgICAgICAgICogc3JjL2ZlYXR1cmVfc3VwcG9ydF91dGlsL2ZlYXR1cmVfc3VwcG9ydF91
dGlsLmNwcDoKKysgICAgICAgICogc3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mb193aW4uY3Bw
OgorKyAgICAgICAgKGFuZ2xlOjpHZXRTeXN0ZW1JbmZvKToKKysgICAgICAgICogc3JjL2ltYWdl
X3V0aWwvbG9hZGltYWdlLmNwcDoKKysgICAgICAgIChhbmdsZTo6TG9hZEQyNFM4VG9EMzJGKToK
KysgICAgICAgIChhbmdsZTo6TG9hZEQzMlRvRDMyRlgzMik6CisrICAgICAgICAoYW5nbGU6Okxv
YWREMzJUb0QzMkYpOgorKyAgICAgICAgKiBzcmMvaW1hZ2VfdXRpbC9sb2FkaW1hZ2UuaDoKKysg
ICAgICAgICogc3JjL2xpYkFOR0xFL0J1ZmZlci5jcHA6CisrICAgICAgICAoZ2w6OkJ1ZmZlcjo6
QnVmZmVyKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL0J1ZmZlci5oOgorKyAgICAgICAgKiBz
cmMvbGliQU5HTEUvQ2Fwcy5jcHA6CisrICAgICAgICAoZ2w6OkRldGVybWluZUhhbGZGbG9hdFRl
eHR1cmVGaWx0ZXJpbmdTdXBwb3J0KToKKysgICAgICAgIChnbDo6RGV0ZXJtaW5lRmxvYXRUZXh0
dXJlRmlsdGVyaW5nU3VwcG9ydCk6CisrICAgICAgICAoZ2w6OkV4dGVuc2lvbnM6OnNldFRleHR1
cmVFeHRlbnNpb25TdXBwb3J0KToKKysgICAgICAgIChnbDo6R2V0RXh0ZW5zaW9uSW5mb01hcCk6
CisrICAgICAgICAoZWdsOjpEaXNwbGF5RXh0ZW5zaW9uczo6Z2V0U3RyaW5ncyBjb25zdCk6Cisr
ICAgICAgICAoZWdsOjpEZXZpY2VFeHRlbnNpb25zOjpnZXRTdHJpbmdzIGNvbnN0KToKKysgICAg
ICAgIChlZ2w6OkNsaWVudEV4dGVuc2lvbnM6OmdldFN0cmluZ3MgY29uc3QpOgorKyAgICAgICAg
KiBzcmMvbGliQU5HTEUvQ2Fwcy5oOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvQ29uc3RhbnRz
Lmg6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9Db250ZXh0LmNwcDoKKysgICAgICAgIChnbDo6
Q29udGV4dDo6Q29udGV4dCk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmluaXRpYWxpemUpOgor
KyAgICAgICAgKGdsOjpDb250ZXh0OjpvbkRlc3Ryb3kpOgorKyAgICAgICAgKGdsOjpDb250ZXh0
OjpiaW5kSW1hZ2VUZXh0dXJlKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0UXVlcnlpdik6
CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmRldGFjaFRleHR1cmUpOgorKyAgICAgICAgKGdsOjpD
b250ZXh0OjpnZW5lcmF0ZVN1cHBvcnRlZEV4dGVuc2lvbnMgY29uc3QpOgorKyAgICAgICAgKGds
OjpDb250ZXh0Ojppbml0Q2Fwcyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6Om9uU3ViamVjdFN0
YXRlQ2hhbmdlKToKKysgICAgICAgIChnbDo6U3RhdGVDYWNoZTo6dXBkYXRlQWN0aXZlQXR0cmli
c01hc2spOgorKyAgICAgICAgKGdsOjpTdGF0ZUNhY2hlOjp1cGRhdGVWZXJ0ZXhBdHRyaWJUeXBl
c1ZhbGlkYXRpb24pOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvQ29udGV4dC5oOgorKyAgICAg
ICAgKiBzcmMvbGliQU5HTEUvRGV2aWNlLmNwcDoKKysgICAgICAgIChlZ2w6OkRldmljZTo6Z2V0
QXR0cmlidXRlKToKKysgICAgICAgIChlZ2w6OkRldmljZTo6Z2V0RGV2aWNlKTogRGVsZXRlZC4K
KysgICAgICAgICogc3JjL2xpYkFOR0xFL0RldmljZS5oOgorKyAgICAgICAgKiBzcmMvbGliQU5H
TEUvRGlzcGxheS5jcHA6CisrICAgICAgICAoZWdsOjpEaXNwbGF5OjpjcmVhdGVDb250ZXh0KToK
KysgICAgICAgIChlZ2w6OkdlbmVyYXRlQ2xpZW50RXh0ZW5zaW9ucyk6CisrICAgICAgICAoZWds
OjpEaXNwbGF5Ojppc1ZhbGlkTmF0aXZlRGlzcGxheSk6CisrICAgICAgICAoZWdsOjpEaXNwbGF5
Ojppbml0aWFsaXplRnJvbnRlbmRGZWF0dXJlcyk6CisrICAgICAgICAoZWdsOjpEaXNwbGF5Ojpx
dWVyeVN0cmluZ2kpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvRXJyb3JTdHJpbmdzLmg6Cisr
ICAgICAgICAqIHNyYy9saWJBTkdMRS9GZW5jZS5oOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUv
RnJhbWVDYXB0dXJlLmNwcDoKKysgICAgICAgIChhbmdsZTo6UGFyYW1DYXB0dXJlOjpQYXJhbUNh
cHR1cmUpOgorKyAgICAgICAgKGFuZ2xlOjpQYXJhbUNhcHR1cmU6Om9wZXJhdG9yPSk6CisrICAg
ICAgICAoYW5nbGU6OlBhcmFtQnVmZmVyOjpQYXJhbUJ1ZmZlcik6CisrICAgICAgICAoYW5nbGU6
OlBhcmFtQnVmZmVyOjpvcGVyYXRvcj0pOgorKyAgICAgICAgKGFuZ2xlOjpQYXJhbUJ1ZmZlcjo6
Z2V0UGFyYW0pOgorKyAgICAgICAgKGFuZ2xlOjpQYXJhbUJ1ZmZlcjo6Z2V0UGFyYW0gY29uc3Qp
OgorKyAgICAgICAgKGFuZ2xlOjpQYXJhbUJ1ZmZlcjo6YWRkUGFyYW0pOgorKyAgICAgICAgKGFu
Z2xlOjpQYXJhbUJ1ZmZlcjo6YWRkUmV0dXJuVmFsdWUpOgorKyAgICAgICAgKGFuZ2xlOjpQYXJh
bUJ1ZmZlcjo6Z2V0Q2xpZW50QXJyYXlQb2ludGVyUGFyYW1ldGVyKToKKysgICAgICAgIChhbmds
ZTo6Q2FsbENhcHR1cmU6OkNhbGxDYXB0dXJlKToKKysgICAgICAgIChhbmdsZTo6Q2FsbENhcHR1
cmU6Om9wZXJhdG9yPSk6CisrICAgICAgICAoYW5nbGU6OkNhbGxDYXB0dXJlOjpuYW1lIGNvbnN0
KToKKysgICAgICAgIChhbmdsZTo6UmVwbGF5Q29udGV4dDo6UmVwbGF5Q29udGV4dCk6CisrICAg
ICAgICAoYW5nbGU6OlJlcGxheUNvbnRleHQ6On5SZXBsYXlDb250ZXh0KToKKysgICAgICAgIChh
bmdsZTo6RnJhbWVDYXB0dXJlOjpGcmFtZUNhcHR1cmUpOgorKyAgICAgICAgKGFuZ2xlOjpGcmFt
ZUNhcHR1cmU6Om1heWJlQ2FwdHVyZUNsaWVudERhdGEpOgorKyAgICAgICAgKGFuZ2xlOjpGcmFt
ZUNhcHR1cmU6OmNhcHR1cmVDYWxsKToKKysgICAgICAgIChhbmdsZTo6RnJhbWVDYXB0dXJlOjpj
YXB0dXJlVXBkYXRlUmVzb3VyY2VJRHMpOgorKyAgICAgICAgKGFuZ2xlOjpGcmFtZUNhcHR1cmU6
Om1heWJlVXBkYXRlUmVzb3VyY2VJRHMpOgorKyAgICAgICAgKGFuZ2xlOjpGcmFtZUNhcHR1cmU6
OmNhcHR1cmVDbGllbnRBcnJheVNuYXBzaG90KToKKysgICAgICAgIChhbmdsZTo6RnJhbWVDYXB0
dXJlOjpvbkVuZEZyYW1lKToKKysgICAgICAgIChhbmdsZTo6RGF0YUNvdW50ZXJzOjpnZXRBbmRJ
bmNyZW1lbnQpOgorKyAgICAgICAgKGFuZ2xlOjpGcmFtZUNhcHR1cmU6OnJlc2V0KToKKysgICAg
ICAgIChhbmdsZTo6Q2FwdHVyZUdlbkhhbmRsZXNJbXBsKToKKysgICAgICAgIChhbmdsZTo6V3Jp
dGVQYXJhbVZhbHVlVG9TdHJlYW08UGFyYW1UeXBlOjpUQnVmZmVySUQ+KToKKysgICAgICAgIChh
bmdsZTo6V3JpdGVQYXJhbVZhbHVlVG9TdHJlYW08UGFyYW1UeXBlOjpURmVuY2VOVklEPik6Cisr
ICAgICAgICAoYW5nbGU6OldyaXRlUGFyYW1WYWx1ZVRvU3RyZWFtPFBhcmFtVHlwZTo6VEZyYW1l
YnVmZmVySUQ+KToKKysgICAgICAgIChhbmdsZTo6V3JpdGVQYXJhbVZhbHVlVG9TdHJlYW08UGFy
YW1UeXBlOjpUTWVtb3J5T2JqZWN0SUQ+KToKKysgICAgICAgIChhbmdsZTo6V3JpdGVQYXJhbVZh
bHVlVG9TdHJlYW08UGFyYW1UeXBlOjpUUGF0aElEPik6CisrICAgICAgICAoYW5nbGU6OldyaXRl
UGFyYW1WYWx1ZVRvU3RyZWFtPFBhcmFtVHlwZTo6VFByb2dyYW1QaXBlbGluZUlEPik6CisrICAg
ICAgICAoYW5nbGU6OldyaXRlUGFyYW1WYWx1ZVRvU3RyZWFtPFBhcmFtVHlwZTo6VFF1ZXJ5SUQ+
KToKKysgICAgICAgIChhbmdsZTo6V3JpdGVQYXJhbVZhbHVlVG9TdHJlYW08UGFyYW1UeXBlOjpU
UmVuZGVyYnVmZmVySUQ+KToKKysgICAgICAgIChhbmdsZTo6V3JpdGVQYXJhbVZhbHVlVG9TdHJl
YW08UGFyYW1UeXBlOjpUU2FtcGxlcklEPik6CisrICAgICAgICAoYW5nbGU6OldyaXRlUGFyYW1W
YWx1ZVRvU3RyZWFtPFBhcmFtVHlwZTo6VFNlbWFwaG9yZUlEPik6CisrICAgICAgICAoYW5nbGU6
OldyaXRlUGFyYW1WYWx1ZVRvU3RyZWFtPFBhcmFtVHlwZTo6VFNoYWRlclByb2dyYW1JRD4pOgor
KyAgICAgICAgKGFuZ2xlOjpXcml0ZVBhcmFtVmFsdWVUb1N0cmVhbTxQYXJhbVR5cGU6OlRUZXh0
dXJlSUQ+KToKKysgICAgICAgIChhbmdsZTo6V3JpdGVQYXJhbVZhbHVlVG9TdHJlYW08UGFyYW1U
eXBlOjpUVHJhbnNmb3JtRmVlZGJhY2tJRD4pOgorKyAgICAgICAgKGFuZ2xlOjpXcml0ZVBhcmFt
VmFsdWVUb1N0cmVhbTxQYXJhbVR5cGU6OlRWZXJ0ZXhBcnJheUlEPik6CisrICAgICAgICAoYW5n
bGU6OkNhbGxDYXB0dXJlOjp+Q2FsbENhcHR1cmUpOiBEZWxldGVkLgorKyAgICAgICAgKGFuZ2xl
OjpQYXJhbUJ1ZmZlcjo6flBhcmFtQnVmZmVyKTogRGVsZXRlZC4KKysgICAgICAgIChhbmdsZTo6
UGFyYW1DYXB0dXJlOjp+UGFyYW1DYXB0dXJlKTogRGVsZXRlZC4KKysgICAgICAgIChhbmdsZTo6
RnJhbWVDYXB0dXJlOjp+RnJhbWVDYXB0dXJlKTogRGVsZXRlZC4KKysgICAgICAgIChhbmdsZTo6
RnJhbWVDYXB0dXJlOjphbnlDbGllbnRBcnJheSBjb25zdCk6IERlbGV0ZWQuCisrICAgICAgICAo
YW5nbGU6OkZyYW1lQ2FwdHVyZTo6c2F2ZUNhcHR1cmVkRnJhbWVBc0NwcCk6IERlbGV0ZWQuCisr
ICAgICAgICAoYW5nbGU6OkZyYW1lQ2FwdHVyZTo6Z2V0QW5kSW5jcmVtZW50Q291bnRlcik6IERl
bGV0ZWQuCisrICAgICAgICAoYW5nbGU6OkZyYW1lQ2FwdHVyZTo6d3JpdGVTdHJpbmdQb2ludGVy
UGFyYW1SZXBsYXkpOiBEZWxldGVkLgorKyAgICAgICAgKGFuZ2xlOjpGcmFtZUNhcHR1cmU6Ondy
aXRlUmVuZGVyYnVmZmVySURQb2ludGVyUGFyYW1SZXBsYXkpOiBEZWxldGVkLgorKyAgICAgICAg
KGFuZ2xlOjpGcmFtZUNhcHR1cmU6OndyaXRlQmluYXJ5UGFyYW1SZXBsYXkpOiBEZWxldGVkLgor
KyAgICAgICAgKGFuZ2xlOjpGcmFtZUNhcHR1cmU6OndyaXRlQ2FsbFJlcGxheSk6IERlbGV0ZWQu
CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9GcmFtZUNhcHR1cmUuaDoKKysgICAgICAgIChhbmds
ZTo6Q2FwdHVyZUdlbkhhbmRsZXMpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvRnJhbWVDYXB0
dXJlX21vY2suY3BwOiBBZGRlZC4KKysgICAgICAgIChhbmdsZTo6Q2FsbENhcHR1cmU6On5DYWxs
Q2FwdHVyZSk6CisrICAgICAgICAoYW5nbGU6OlBhcmFtQnVmZmVyOjp+UGFyYW1CdWZmZXIpOgor
KyAgICAgICAgKGFuZ2xlOjpQYXJhbUNhcHR1cmU6On5QYXJhbUNhcHR1cmUpOgorKyAgICAgICAg
KGFuZ2xlOjpGcmFtZUNhcHR1cmU6OkZyYW1lQ2FwdHVyZSk6CisrICAgICAgICAoYW5nbGU6OkZy
YW1lQ2FwdHVyZTo6fkZyYW1lQ2FwdHVyZSk6CisrICAgICAgICAoYW5nbGU6OkZyYW1lQ2FwdHVy
ZTo6b25FbmRGcmFtZSk6CisrICAgICAgICAoYW5nbGU6OkZyYW1lQ2FwdHVyZTo6cmVwbGF5KToK
KysgICAgICAgICogc3JjL2xpYkFOR0xFL0ZyYW1lYnVmZmVyLmNwcDoKKysgICAgICAgIChnbDo6
RnJhbWVidWZmZXI6OmZvcm1zUmVuZGVyaW5nRmVlZGJhY2tMb29wV2l0aCBjb25zdCk6CisrICAg
ICAgICAoZ2w6OkZyYW1lYnVmZmVyOjpmb3Jtc0NvcHlpbmdGZWVkYmFja0xvb3BXaXRoIGNvbnN0
KToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL0ZyYW1lYnVmZmVyLmg6CisrICAgICAgICAqIHNy
Yy9saWJBTkdMRS9GcmFtZWJ1ZmZlckF0dGFjaG1lbnQuY3BwOgorKyAgICAgICAgKGdsOjpGcmFt
ZWJ1ZmZlckF0dGFjaG1lbnQ6OmdldFJlZFNpemUgY29uc3QpOgorKyAgICAgICAgKGdsOjpGcmFt
ZWJ1ZmZlckF0dGFjaG1lbnQ6OmdldEdyZWVuU2l6ZSBjb25zdCk6CisrICAgICAgICAoZ2w6OkZy
YW1lYnVmZmVyQXR0YWNobWVudDo6Z2V0Qmx1ZVNpemUgY29uc3QpOgorKyAgICAgICAgKGdsOjpG
cmFtZWJ1ZmZlckF0dGFjaG1lbnQ6OmdldEFscGhhU2l6ZSBjb25zdCk6CisrICAgICAgICAoZ2w6
OkZyYW1lYnVmZmVyQXR0YWNobWVudDo6Z2V0RGVwdGhTaXplIGNvbnN0KToKKysgICAgICAgIChn
bDo6RnJhbWVidWZmZXJBdHRhY2htZW50OjpnZXRTdGVuY2lsU2l6ZSBjb25zdCk6CisrICAgICAg
ICAqIHNyYy9saWJBTkdMRS9GcmFtZWJ1ZmZlckF0dGFjaG1lbnQuaDoKKysgICAgICAgICogc3Jj
L2xpYkFOR0xFL0dMRVMxU3RhdGUuY3BwOgorKyAgICAgICAgKGdsOjpHTEVTMVN0YXRlOjpnZXRB
Y3RpdmVBdHRyaWJ1dGVzTWFzayBjb25zdCk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9HTEVT
MVN0YXRlLmg6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9JbWFnZUluZGV4LmNwcDoKKysgICAg
ICAgICogc3JjL2xpYkFOR0xFL0ltYWdlSW5kZXguaDoKKysgICAgICAgICogc3JjL2xpYkFOR0xF
L01lbW9yeU9iamVjdC5jcHA6CisrICAgICAgICAoZ2w6Ok1lbW9yeU9iamVjdDo6TWVtb3J5T2Jq
ZWN0KToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL01lbW9yeU9iamVjdC5oOgorKyAgICAgICAg
KiBzcmMvbGliQU5HTEUvTWVtb3J5UHJvZ3JhbUNhY2hlLmNwcDoKKysgICAgICAgICogc3JjL2xp
YkFOR0xFL1Byb2dyYW0uY3BwOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluZGluZ3M6OmJpbmRM
b2NhdGlvbik6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5kaW5nczo6Z2V0QmluZGluZ0J5TmFt
ZSBjb25zdCk6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5kaW5nczo6Z2V0QmluZGluZyBjb25z
dCk6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5kaW5nczo6YmVnaW4gY29uc3QpOgorKyAgICAg
ICAgKGdsOjpQcm9ncmFtQmluZGluZ3M6OmVuZCBjb25zdCk6CisrICAgICAgICAoZ2w6OlByb2dy
YW1BbGlhc2VkQmluZGluZ3M6OlByb2dyYW1BbGlhc2VkQmluZGluZ3MpOgorKyAgICAgICAgKGds
OjpQcm9ncmFtQWxpYXNlZEJpbmRpbmdzOjp+UHJvZ3JhbUFsaWFzZWRCaW5kaW5ncyk6CisrICAg
ICAgICAoZ2w6OlByb2dyYW1BbGlhc2VkQmluZGluZ3M6OmJpbmRMb2NhdGlvbik6CisrICAgICAg
ICAoZ2w6OlByb2dyYW1BbGlhc2VkQmluZGluZ3M6OmdldEJpbmRpbmdCeU5hbWUgY29uc3QpOgor
KyAgICAgICAgKGdsOjpQcm9ncmFtQWxpYXNlZEJpbmRpbmdzOjpnZXRCaW5kaW5nIGNvbnN0KToK
KysgICAgICAgIChnbDo6UHJvZ3JhbUFsaWFzZWRCaW5kaW5nczo6YmVnaW4gY29uc3QpOgorKyAg
ICAgICAgKGdsOjpQcm9ncmFtQWxpYXNlZEJpbmRpbmdzOjplbmQgY29uc3QpOgorKyAgICAgICAg
KGdsOjpQcm9ncmFtU3RhdGU6OmdldEF0dHJpYnV0ZUxvY2F0aW9uIGNvbnN0KToKKysgICAgICAg
IChnbDo6UHJvZ3JhbVN0YXRlOjpnZXRGaXJzdEF0dGFjaGVkU2hhZGVyU3RhZ2VUeXBlIGNvbnN0
KToKKysgICAgICAgIChnbDo6UHJvZ3JhbVN0YXRlOjpnZXRMYXN0QXR0YWNoZWRTaGFkZXJTdGFn
ZVR5cGUgY29uc3QpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpnZXRGcmFnbWVudElucHV0Qmlu
ZGluZ0luZm8gY29uc3QpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpsaW5rKToKKysgICAgICAg
IChnbDo6UHJvZ3JhbVN0YXRlOjp1cGRhdGVQcm9ncmFtSW50ZXJmYWNlSW5wdXRzKToKKysgICAg
ICAgIChnbDo6UHJvZ3JhbVN0YXRlOjp1cGRhdGVQcm9ncmFtSW50ZXJmYWNlT3V0cHV0cyk6Cisr
ICAgICAgICAoZ2w6OlByb2dyYW06OnVubGluayk6CisrICAgICAgICAoZ2w6OlByb2dyYW06Omdl
dEFjdGl2ZUF0dHJpYnV0ZSBjb25zdCk6CisrICAgICAgICAoZ2w6OlByb2dyYW06OmdldEFjdGl2
ZUF0dHJpYnV0ZUNvdW50IGNvbnN0KToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6Z2V0QWN0aXZl
QXR0cmlidXRlTWF4TGVuZ3RoIGNvbnN0KToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6Z2V0QXR0
cmlidXRlcyBjb25zdCk6CisrICAgICAgICAoZ2w6OlByb2dyYW06OmdldElucHV0UmVzb3VyY2Ug
Y29uc3QpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpnZXRJbnB1dFJlc291cmNlSW5kZXggY29u
c3QpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpnZXRSZXNvdXJjZU1heE5hbWVTaXplIGNvbnN0
KToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6Z2V0SW5wdXRSZXNvdXJjZU1heE5hbWVTaXplIGNv
bnN0KToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6Z2V0T3V0cHV0UmVzb3VyY2VNYXhOYW1lU2l6
ZSBjb25zdCk6CisrICAgICAgICAoZ2w6OlByb2dyYW06OmdldFJlc291cmNlTG9jYXRpb24gY29u
c3QpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpnZXRJbnB1dFJlc291cmNlTG9jYXRpb24gY29u
c3QpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpnZXRPdXRwdXRSZXNvdXJjZUxvY2F0aW9uIGNv
bnN0KToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6Z2V0T3V0cHV0UmVzb3VyY2VJbmRleCBjb25z
dCk6CisrICAgICAgICAoZ2w6OlByb2dyYW06OmdldFJlc291cmNlTmFtZSBjb25zdCk6CisrICAg
ICAgICAoZ2w6OlByb2dyYW06OmdldElucHV0UmVzb3VyY2VOYW1lIGNvbnN0KToKKysgICAgICAg
IChnbDo6UHJvZ3JhbTo6Z2V0T3V0cHV0UmVzb3VyY2VOYW1lIGNvbnN0KToKKysgICAgICAgIChn
bDo6UHJvZ3JhbTo6Z2V0VW5pZm9ybVJlc291cmNlTmFtZSBjb25zdCk6CisrICAgICAgICAoZ2w6
OlByb2dyYW06OmdldEJ1ZmZlclZhcmlhYmxlUmVzb3VyY2VOYW1lIGNvbnN0KToKKysgICAgICAg
IChnbDo6UHJvZ3JhbTo6Z2V0T3V0cHV0UmVzb3VyY2UgY29uc3QpOgorKyAgICAgICAgKGdsOjpQ
cm9ncmFtOjpnZXRVbmlmb3JtTG9jYXRpb25CaW5kaW5ncyBjb25zdCk6CisrICAgICAgICAoZ2w6
OlByb2dyYW06OmxpbmtVbmlmb3Jtcyk6CisrICAgICAgICAoZ2w6OlByb2dyYW06OmxpbmtBdHRy
aWJ1dGVzKToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6bGlua1ZhbGlkYXRlR2xvYmFsTmFtZXMg
Y29uc3QpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpnZXRNZXJnZWRWYXJ5aW5ncyBjb25zdCk6
CisrICAgICAgICAoZ2w6OlByb2dyYW06OmxpbmtPdXRwdXRWYXJpYWJsZXMpOgorKyAgICAgICAg
KGdsOjpQcm9ncmFtOjpzZXJpYWxpemUgY29uc3QpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpk
ZXNlcmlhbGl6ZSk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9Qcm9ncmFtLmg6CisrICAgICAg
ICAoZ2w6OlByb2dyYW1WYXJ5aW5nUmVmOjpnZXQgY29uc3QpOgorKyAgICAgICAgKiBzcmMvbGli
QU5HTEUvUHJvZ3JhbUxpbmtlZFJlc291cmNlcy5jcHA6CisrICAgICAgICAoZ2w6OlVuaWZvcm1M
aW5rZXI6OmxpbmspOgorKyAgICAgICAgKGdsOjpVbmlmb3JtTGlua2VyOjppbmRleFVuaWZvcm1z
KToKKysgICAgICAgIChnbDo6VW5pZm9ybUxpbmtlcjo6Z2F0aGVyVW5pZm9ybUxvY2F0aW9uc0Fu
ZENoZWNrQ29uZmxpY3RzKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL1Byb2dyYW1MaW5rZWRS
ZXNvdXJjZXMuaDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL1Byb2dyYW1QaXBlbGluZS5jcHA6
CisrICAgICAgICAoZ2w6OlByb2dyYW1QaXBlbGluZTo6UHJvZ3JhbVBpcGVsaW5lKToKKysgICAg
ICAgICogc3JjL2xpYkFOR0xFL1Byb2dyYW1QaXBlbGluZS5oOgorKyAgICAgICAgKiBzcmMvbGli
QU5HTEUvUXVlcnkuY3BwOgorKyAgICAgICAgKGdsOjpRdWVyeTo6UXVlcnkpOgorKyAgICAgICAg
KiBzcmMvbGliQU5HTEUvUXVlcnkuaDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL1JlZkNvdW50
T2JqZWN0Lmg6CisrICAgICAgICAoZ2w6OlJlZkNvdW50T2JqZWN0OjpSZWZDb3VudE9iamVjdCk6
CisrICAgICAgICAoZ2w6OlJlZkNvdW50T2JqZWN0OjppZCBjb25zdCk6CisrICAgICAgICAoZ2w6
OkJpbmRpbmdQb2ludGVyOjppZCBjb25zdCk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9SZW5k
ZXJidWZmZXIuY3BwOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXI6OlJlbmRlcmJ1ZmZlcik6
CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlcjo6Z2V0SWQgY29uc3QpOgorKyAgICAgICAgKiBz
cmMvbGliQU5HTEUvUmVuZGVyYnVmZmVyLmg6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9TYW1w
bGVyLmNwcDoKKysgICAgICAgIChnbDo6U2FtcGxlcjo6U2FtcGxlcik6CisrICAgICAgICAqIHNy
Yy9saWJBTkdMRS9TYW1wbGVyLmg6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9TZW1hcGhvcmUu
Y3BwOgorKyAgICAgICAgKGdsOjpTZW1hcGhvcmU6OlNlbWFwaG9yZSk6CisrICAgICAgICAqIHNy
Yy9saWJBTkdMRS9TZW1hcGhvcmUuaDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL1NoYWRlci5j
cHA6CisrICAgICAgICAoZ2w6OlNoYWRlcjo6cmVzb2x2ZUNvbXBpbGUpOgorKyAgICAgICAgKGds
OjpTaGFkZXI6OmdldFRyYW5zZm9ybUZlZWRiYWNrVmFyeWluZ01hcHBlZE5hbWUpOgorKyAgICAg
ICAgKiBzcmMvbGliQU5HTEUvU3RhdGUuY3BwOgorKyAgICAgICAgKGdsOjpTdGF0ZTo6Z2V0U2Ft
cGxlclRleHR1cmVJZCBjb25zdCk6CisrICAgICAgICAoZ2w6OlN0YXRlOjpkZXRhY2hUZXh0dXJl
KToKKysgICAgICAgIChnbDo6U3RhdGU6OmRldGFjaFNhbXBsZXIpOgorKyAgICAgICAgKGdsOjpT
dGF0ZTo6ZGV0YWNoUmVuZGVyYnVmZmVyKToKKysgICAgICAgIChnbDo6U3RhdGU6OnJlbW92ZVRy
YW5zZm9ybUZlZWRiYWNrQmluZGluZyk6CisrICAgICAgICAoZ2w6OlN0YXRlOjpnZXRBY3RpdmVR
dWVyeUlkIGNvbnN0KToKKysgICAgICAgIChnbDo6U3RhdGU6OmRldGFjaEJ1ZmZlcik6CisrICAg
ICAgICAoZ2w6OlN0YXRlOjpnZXRJbnRlZ2Vydik6CisrICAgICAgICAoZ2w6OlN0YXRlOjpnZXRJ
bnRlZ2VyaV92KToKKysgICAgICAgIChnbDo6U3RhdGU6OnN5bmNJbWFnZXMpOgorKyAgICAgICAg
KGdsOjpTdGF0ZTo6b25JbWFnZVN0YXRlQ2hhbmdlKToKKysgICAgICAgICogc3JjL2xpYkFOR0xF
L1N0YXRlLmg6CisrICAgICAgICAoZ2w6OlN0YXRlOjpnZXRTYW1wbGVySWQgY29uc3QpOgorKyAg
ICAgICAgKGdsOjpTdGF0ZTo6Z2V0UmVuZGVyYnVmZmVySWQgY29uc3QpOgorKyAgICAgICAgKiBz
cmMvbGliQU5HTEUvVGV4dHVyZS5jcHA6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OlRleHR1cmUp
OgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpzZXRTdG9yYWdlKToKKysgICAgICAgIChnbDo6VGV4
dHVyZTo6Z2V0SWQgY29uc3QpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvVGV4dHVyZS5oOgor
KyAgICAgICAgKiBzcmMvbGliQU5HTEUvVHJhbnNmb3JtRmVlZGJhY2suY3BwOgorKyAgICAgICAg
KGdsOjpUcmFuc2Zvcm1GZWVkYmFjazo6VHJhbnNmb3JtRmVlZGJhY2spOgorKyAgICAgICAgKGds
OjpUcmFuc2Zvcm1GZWVkYmFjazo6ZGV0YWNoQnVmZmVyKToKKysgICAgICAgICogc3JjL2xpYkFO
R0xFL1RyYW5zZm9ybUZlZWRiYWNrLmg6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9WYXJ5aW5n
UGFja2luZy5jcHA6CisrICAgICAgICAoZ2w6OlZhcnlpbmdQYWNraW5nOjpjb2xsZWN0QW5kUGFj
a1VzZXJWYXJ5aW5ncyk6CisrICAgICAgICAoZ2w6OlZhcnlpbmdQYWNraW5nOjpwYWNrVXNlclZh
cnlpbmdzKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL1ZlcnRleEFycmF5LmNwcDoKKysgICAg
ICAgIChnbDo6VmVydGV4QXJyYXk6OmRldGFjaEJ1ZmZlcik6CisrICAgICAgICAoZ2w6OlZlcnRl
eEFycmF5OjpiaW5kVmVydGV4QnVmZmVySW1wbCk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9W
ZXJ0ZXhBcnJheS5oOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvY2FwdHVyZV9nbGVzXzJfMF9w
YXJhbXMuY3BwOgorKyAgICAgICAgKGdsOjpDYXB0dXJlRGVsZXRlQnVmZmVyc19idWZmZXJzUGFj
a2VkKToKKysgICAgICAgIChnbDo6Q2FwdHVyZURlbGV0ZUZyYW1lYnVmZmVyc19mcmFtZWJ1ZmZl
cnNQYWNrZWQpOgorKyAgICAgICAgKGdsOjpDYXB0dXJlRGVsZXRlVGV4dHVyZXNfdGV4dHVyZXNQ
YWNrZWQpOgorKyAgICAgICAgKGdsOjpDYXB0dXJlR2VuQnVmZmVyc19idWZmZXJzUGFja2VkKToK
KysgICAgICAgIChnbDo6Q2FwdHVyZUdlbkZyYW1lYnVmZmVyc19mcmFtZWJ1ZmZlcnNQYWNrZWQp
OgorKyAgICAgICAgKGdsOjpDYXB0dXJlR2VuUmVuZGVyYnVmZmVyc19yZW5kZXJidWZmZXJzUGFj
a2VkKToKKysgICAgICAgIChnbDo6Q2FwdHVyZUdlblRleHR1cmVzX3RleHR1cmVzUGFja2VkKToK
KysgICAgICAgIChnbDo6Q2FwdHVyZVNoYWRlclNvdXJjZV9zdHJpbmcpOgorKyAgICAgICAgKiBz
cmMvbGliQU5HTEUvY2FwdHVyZV9nbGVzXzNfMF9wYXJhbXMuY3BwOgorKyAgICAgICAgKGdsOjpD
YXB0dXJlRGVsZXRlUXVlcmllc19pZHNQYWNrZWQpOgorKyAgICAgICAgKGdsOjpDYXB0dXJlRGVs
ZXRlU2FtcGxlcnNfc2FtcGxlcnNQYWNrZWQpOgorKyAgICAgICAgKGdsOjpDYXB0dXJlRGVsZXRl
VHJhbnNmb3JtRmVlZGJhY2tzX2lkc1BhY2tlZCk6CisrICAgICAgICAoZ2w6OkNhcHR1cmVEZWxl
dGVWZXJ0ZXhBcnJheXNfYXJyYXlzUGFja2VkKToKKysgICAgICAgIChnbDo6Q2FwdHVyZUdlblF1
ZXJpZXNfaWRzUGFja2VkKToKKysgICAgICAgIChnbDo6Q2FwdHVyZUdlblNhbXBsZXJzX3NhbXBs
ZXJzUGFja2VkKToKKysgICAgICAgIChnbDo6Q2FwdHVyZUdlblRyYW5zZm9ybUZlZWRiYWNrc19p
ZHNQYWNrZWQpOgorKyAgICAgICAgKGdsOjpDYXB0dXJlR2VuVmVydGV4QXJyYXlzX2FycmF5c1Bh
Y2tlZCk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9jYXB0dXJlX2dsZXNfM18xX3BhcmFtcy5j
cHA6CisrICAgICAgICAoZ2w6OkNhcHR1cmVEZWxldGVQcm9ncmFtUGlwZWxpbmVzX3BpcGVsaW5l
c1BhY2tlZCk6CisrICAgICAgICAoZ2w6OkNhcHR1cmVHZW5Qcm9ncmFtUGlwZWxpbmVzX3BpcGVs
aW5lc1BhY2tlZCk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9jYXB0dXJlX2dsZXNfZXh0X3Bh
cmFtcy5jcHA6CisrICAgICAgICAoZ2w6OkNhcHR1cmVEZWxldGVRdWVyaWVzRVhUX2lkc1BhY2tl
ZCk6CisrICAgICAgICAoZ2w6OkNhcHR1cmVHZW5RdWVyaWVzRVhUX2lkc1BhY2tlZCk6CisrICAg
ICAgICAqIHNyYy9saWJBTkdMRS9mZWF0dXJlcy5oOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUv
Zm9ybWF0dXRpbHMuY3BwOgorKyAgICAgICAgKGdsOjpVbnNpemVkSGFsZkZsb2F0T0VTUkdCQVRl
eHR1cmVBdHRhY2htZW50U3VwcG9ydCk6CisrICAgICAgICAoZ2w6OkJ1aWxkSW50ZXJuYWxGb3Jt
YXRJbmZvTWFwKToKKysgICAgICAgIChnbDo6SW50ZXJuYWxGb3JtYXQ6OmNvbXB1dGVEZXB0aFBp
dGNoIGNvbnN0KToKKysgICAgICAgIChnbDo6R2V0VmVydGV4Rm9ybWF0SUQpOgorKyAgICAgICAg
KGdsOjpHZXRWZXJ0ZXhGb3JtYXRGcm9tSUQpOgorKyAgICAgICAgKGdsOjpHZXRWZXJ0ZXhGb3Jt
YXRTaXplKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL2ZyYW1lX2NhcHR1cmVfdXRpbHNfYXV0
b2dlbi5jcHA6CisrICAgICAgICAoYW5nbGU6OkdldFJlc291cmNlSURUeXBlRnJvbVBhcmFtVHlw
ZSk6CisrICAgICAgICAoYW5nbGU6OkdldFJlc291cmNlSURUeXBlTmFtZSk6CisrICAgICAgICAq
IHNyYy9saWJBTkdMRS9mcmFtZV9jYXB0dXJlX3V0aWxzX2F1dG9nZW4uaDoKKysgICAgICAgICog
c3JjL2xpYkFOR0xFL3F1ZXJ5dXRpbHMuY3BwOgorKyAgICAgICAgKGdsOjpHZXRCdWZmZXJWYXJp
YWJsZVJlc291cmNlUHJvcGVydHkpOgorKyAgICAgICAgKGdsOjpRdWVyeVByb2dyYW1SZXNvdXJj
ZUxvY2F0aW9uKToKKysgICAgICAgIChnbDo6UXVlcnlQcm9ncmFtUmVzb3VyY2Vpdik6CisrICAg
ICAgICAoZWdsOjpRdWVyeUNvbnRleHRBdHRyaWIpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUv
cmVuZGVyZXIvRGV2aWNlSW1wbC5oOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIv
Rm9ybWF0Lmg6CisrICAgICAgICAoYW5nbGU6OkZvcm1hdDo6aXNWZXJ0ZXhUeXBlSGFsZkZsb2F0
IGNvbnN0KToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL0Zvcm1hdElEX2F1dG9n
ZW4uaDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL0Zvcm1hdF90YWJsZV9hdXRv
Z2VuLmNwcDoKKysgICAgICAgIChhbmdsZTo6Rm9ybWF0OjpJbnRlcm5hbEZvcm1hdFRvSUQpOgor
KyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvYW5nbGVfZm9ybWF0LnB5OgorKyAgICAg
ICAgKGdsX2Zvcm1hdF9jaGFubmVscyk6CisrICAgICAgICAoZ2V0X3ZlcnRleF9jb3B5X2Z1bmN0
aW9uKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2FuZ2xlX2Zvcm1hdF9tYXAu
anNvbjoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2NvcHl2ZXJ0ZXguaDoKKysg
ICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2NvcHl2ZXJ0ZXguaW5jLmg6CisrICAgICAg
ICAocng6OkNvcHlUbzMyRlZlcnRleERhdGEpOgorKyAgICAgICAgKHJ4OjpDb3B5WFlaMTBUb1hZ
WlczMkZWZXJ0ZXhEYXRhKToKKysgICAgICAgIChyeDo6Q29weVcyWFlaMTBUb1hZWlczMkZWZXJ0
ZXhEYXRhKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2QzZC9EZXZpY2VEM0Qu
Y3BwOgorKyAgICAgICAgKHJ4OjpEZXZpY2VEM0Q6OmdldEF0dHJpYnV0ZSk6CisrICAgICAgICAo
cng6OkRldmljZUQzRDo6Z2V0RGV2aWNlKTogRGVsZXRlZC4KKysgICAgICAgICogc3JjL2xpYkFO
R0xFL3JlbmRlcmVyL2QzZC9EZXZpY2VEM0QuaDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3Jl
bmRlcmVyL2QzZC9ITFNMQ29tcGlsZXIuY3BwOgorKyAgICAgICAgKHJ4OjpITFNMQ29tcGlsZXI6
OmVuc3VyZUluaXRpYWxpemVkKToKKysgICAgICAgIChyeDo6SExTTENvbXBpbGVyOjpjb21waWxl
VG9CaW5hcnkpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZDNkL1Byb2dyYW1E
M0QuY3BwOgorKyAgICAgICAgKHJ4OjpQcm9ncmFtRDNEOjpnZXRWZXJ0ZXhFeGVjdXRhYmxlRm9y
Q2FjaGVkSW5wdXRMYXlvdXQpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZDNk
L1JlbmRlcmVyRDNELmNwcDoKKysgICAgICAgIChyeDo6RGVmYXVsdEdMRXJyb3JDb2RlKToKKysg
ICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2QzZC9TaGFkZXJEM0QuY3BwOgorKyAgICAg
ICAgKHJ4OjpTaGFkZXJEM0Q6OmNvbXBpbGUpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVu
ZGVyZXIvZDNkL2QzZDExL0J1ZmZlcjExLmNwcDoKKysgICAgICAgIChyeDo6QnVmZmVyMTE6Omdl
dENvbnN0YW50QnVmZmVyUmFuZ2UpOgorKyAgICAgICAgKHJ4OjpCdWZmZXIxMTo6TmF0aXZlU3Rv
cmFnZTo6RmlsbEJ1ZmZlckRlc2MpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIv
ZDNkL2QzZDExL0NvbnRleHQxMS5jcHA6CisrICAgICAgICAocng6OkNvbnRleHQxMTo6ZHJhd0Fy
cmF5cyk6CisrICAgICAgICAocng6OkNvbnRleHQxMTo6ZHJhd0FycmF5c0luc3RhbmNlZCk6Cisr
ICAgICAgICAocng6OkNvbnRleHQxMTo6ZHJhd0FycmF5c0luc3RhbmNlZEJhc2VJbnN0YW5jZSk6
CisrICAgICAgICAocng6OkNvbnRleHQxMTo6ZHJhd0FycmF5c0luZGlyZWN0KToKKysgICAgICAg
ICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2QzZC9kM2QxMS9EZWJ1Z0Fubm90YXRvcjExLmNwcDoK
KysgICAgICAgIChyeDo6RGVidWdBbm5vdGF0b3IxMTo6aW5pdGlhbGl6ZSk6CisrICAgICAgICAq
IHNyYy9saWJBTkdMRS9yZW5kZXJlci9kM2QvZDNkMTEvUmVuZGVyZXIxMS5jcHA6CisrICAgICAg
ICAocng6OlJlbmRlcmVyMTE6OlJlbmRlcmVyMTEpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjEx
Ojppbml0aWFsaXplKToKKysgICAgICAgIChyeDo6UmVuZGVyZXIxMTo6Y2FsbEQzRDExT24xMkNy
ZWF0ZURldmljZSk6CisrICAgICAgICAocng6OlJlbmRlcmVyMTE6OmluaXRpYWxpemVEM0REZXZp
Y2UpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjExOjpnZW5lcmF0ZURpc3BsYXlFeHRlbnNpb25z
IGNvbnN0KToKKysgICAgICAgIChyeDo6UmVuZGVyZXIxMTo6aXNWYWxpZE5hdGl2ZVdpbmRvdyBj
b25zdCk6CisrICAgICAgICAocng6OlJlbmRlcmVyMTE6OmNyZWF0ZU5hdGl2ZVdpbmRvdyBjb25z
dCk6CisrICAgICAgICAocng6OlJlbmRlcmVyMTE6OmRyYXdBcnJheXMpOgorKyAgICAgICAgKHJ4
OjpSZW5kZXJlcjExOjpyZWxlYXNlKToKKysgICAgICAgIChyeDo6UmVuZGVyZXIxMTo6Z2V0U2hh
cmVIYW5kbGVTdXBwb3J0IGNvbnN0KToKKysgICAgICAgIChyeDo6UmVuZGVyZXIxMTo6Y29weUlt
YWdlSW50ZXJuYWwpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZDNkL2QzZDEx
L1JlbmRlcmVyMTEuaDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2QzZC9kM2Qx
MS9UZXh0dXJlU3RvcmFnZTExLmNwcDoKKysgICAgICAgIChyeDo6VGV4dHVyZVN0b3JhZ2UxMTo6
Z2V0U1JWRm9ySW1hZ2UpOgorKyAgICAgICAgKHJ4OjpUZXh0dXJlU3RvcmFnZTExOjpnZXRVQVZG
b3JJbWFnZSk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9kM2QvZDNkMTEvVHJp
bTExLmNwcDoKKysgICAgICAgIChyeDo6VHJpbTExOjp0cmltKToKKysgICAgICAgIChyeDo6VHJp
bTExOjpyZWdpc3RlckZvclJlbmRlcmVyVHJpbVJlcXVlc3QpOgorKyAgICAgICAgKHJ4OjpUcmlt
MTE6OnVucmVnaXN0ZXJGb3JSZW5kZXJlclRyaW1SZXF1ZXN0KToKKysgICAgICAgICogc3JjL2xp
YkFOR0xFL3JlbmRlcmVyL2QzZC9kM2QxMS9UcmltMTEuaDoKKysgICAgICAgICogc3JjL2xpYkFO
R0xFL3JlbmRlcmVyL2QzZC9kM2QxMS9jb252ZXJnZWQvQ29tcG9zaXRvck5hdGl2ZVdpbmRvdzEx
LmNwcDoKKysgICAgICAgIChyeDo6Um9IZWxwZXI6OlN1cHBvcnRlZFdpbmRvd3NSZWxlYXNlKToK
KysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2QzZC9kM2QxMS9yZW5kZXJlcjExX3V0
aWxzLmNwcDoKKysgICAgICAgIChyeDo6ZDNkMTFfZ2w6OkdlbmVyYXRlQ2Fwcyk6CisrICAgICAg
ICAocng6OmQzZDExOjpJbml0aWFsaXplRmVhdHVyZXMpOgorKyAgICAgICAgKiBzcmMvbGliQU5H
TEUvcmVuZGVyZXIvZDNkL2QzZDExL3dpbnJ0L0NvcmVXaW5kb3dOYXRpdmVXaW5kb3cuaDoKKysg
ICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2QzZC9kM2QxMS93aW5ydC9OYXRpdmVXaW5k
b3cxMVdpblJULmNwcDoKKysgICAgICAgIChyeDo6TmF0aXZlV2luZG93MTFXaW5SVDo6Y3JlYXRl
U3dhcENoYWluKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2QzZC9kM2QxMS93
aW5ydC9OYXRpdmVXaW5kb3cxMVdpblJULmg6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5k
ZXJlci9kM2QvZDNkMTEvd2lucnQvU3dhcENoYWluUGFuZWxOYXRpdmVXaW5kb3cuaDoKKysgICAg
ICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2QzZC9kM2Q5L3JlbmRlcmVyOV91dGlscy5jcHA6
CisrICAgICAgICAocng6OmQzZDk6OkluaXRpYWxpemVGZWF0dXJlcyk6CisrICAgICAgICAqIHNy
Yy9saWJBTkdMRS9yZW5kZXJlci9nZW5fYW5nbGVfZm9ybWF0X3RhYmxlLnB5OgorKyAgICAgICAg
KGNlaWxfaW50KToKKysgICAgICAgIChnZXRfY2hhbm5lbF9zdHJ1Y3QpOgorKyAgICAgICAgKGdl
dF9taXBfZ2VuZXJhdGlvbl9mdW5jdGlvbik6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5k
ZXJlci9nbC9CbGl0R0wuY3BwOgorKyAgICAgICAgKHJ4OjpCbGl0R0w6OmNvcHlJbWFnZVRvTFVN
QVdvcmthcm91bmRUZXh0dXJlKToKKysgICAgICAgIChyeDo6QmxpdEdMOjpjb3B5U3ViSW1hZ2VU
b0xVTUFXb3JrYXJvdW5kVGV4dHVyZSk6CisrICAgICAgICAocng6OkJsaXRHTDo6YmxpdENvbG9y
QnVmZmVyV2l0aFNoYWRlcik6CisrICAgICAgICAocng6OkJsaXRHTDo6Y29weVN1YlRleHR1cmUp
OgorKyAgICAgICAgKHJ4OjpCbGl0R0w6OmNvcHlTdWJUZXh0dXJlQ1BVUmVhZGJhY2spOgorKyAg
ICAgICAgKHJ4OjpCbGl0R0w6OmNvcHlUZXhTdWJJbWFnZSk6CisrICAgICAgICAocng6OkJsaXRH
TDo6Y2xlYXJSZW5kZXJhYmxlVGV4dHVyZSk6CisrICAgICAgICAocng6OkJsaXRHTDo6Y2xlYXJS
ZW5kZXJidWZmZXIpOgorKyAgICAgICAgKHJ4OjpCbGl0R0w6OmNsZWFyRnJhbWVidWZmZXIpOgor
KyAgICAgICAgKHJ4OjpCbGl0R0w6OmNsZWFyUmVuZGVyYWJsZVRleHR1cmVBbHBoYVRvT25lKToK
KysgICAgICAgIChyeDo6QmxpdEdMOjppbml0aWFsaXplUmVzb3VyY2VzKToKKysgICAgICAgIChy
eDo6QmxpdEdMOjpvcnBoYW5TY3JhdGNoVGV4dHVyZXMpOgorKyAgICAgICAgKHJ4OjpCbGl0R0w6
OnNldFNjcmF0Y2hUZXh0dXJlUGFyYW1ldGVyKToKKysgICAgICAgIChyeDo6QmxpdEdMOjpnZXRC
bGl0UHJvZ3JhbSk6CisrICAgICAgICAocng6OkJsaXRHTDo6Z2V0QmxpdFByb2dyYW1UeXBlKTog
RGVsZXRlZC4KKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL0JsaXRHTC5oOgor
KyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvQ29udGV4dEdMLmNwcDoKKysgICAg
ICAgIChyeDo6Q29udGV4dEdMOjpjcmVhdGVSZW5kZXJidWZmZXIpOgorKyAgICAgICAgKHJ4OjpD
b250ZXh0R0w6OnNldERyYXdBcnJheXNTdGF0ZSk6CisrICAgICAgICAocng6OkNvbnRleHRHTDo6
c2V0RHJhd0VsZW1lbnRzU3RhdGUpOgorKyAgICAgICAgKHJ4OjpDb250ZXh0R0w6OmRyYXdBcnJh
eXMpOgorKyAgICAgICAgKHJ4OjpDb250ZXh0R0w6OnVwZGF0ZUF0dHJpYnV0ZXNGb3JCYXNlSW5z
dGFuY2UpOgorKyAgICAgICAgKHJ4OjpDb250ZXh0R0w6OnJlc2V0VXBkYXRlZEF0dHJpYnV0ZXMp
OgorKyAgICAgICAgKHJ4OjpDb250ZXh0R0w6OmRyYXdBcnJheXNJbnN0YW5jZWRCYXNlSW5zdGFu
Y2UpOgorKyAgICAgICAgKHJ4OjpDb250ZXh0R0w6OmRyYXdFbGVtZW50cyk6CisrICAgICAgICAo
cng6OkNvbnRleHRHTDo6ZHJhd0VsZW1lbnRzSW5zdGFuY2VkQmFzZVZlcnRleEJhc2VJbnN0YW5j
ZSk6CisrICAgICAgICAocng6OkNvbnRleHRHTDo6dmFsaWRhdGVTdGF0ZSBjb25zdCk6CisrICAg
ICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9Db250ZXh0R0wuaDoKKysgICAgICAgICog
c3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL1Byb2dyYW1HTC5jcHA6CisrICAgICAgICAocng6OlBy
b2dyYW1HTDo6bGluayk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9SZW5k
ZXJidWZmZXJHTC5jcHA6CisrICAgICAgICAocng6OlJlbmRlcmJ1ZmZlckdMOjpSZW5kZXJidWZm
ZXJHTCk6CisrICAgICAgICAocng6OlJlbmRlcmJ1ZmZlckdMOjp+UmVuZGVyYnVmZmVyR0wpOgor
KyAgICAgICAgKHJ4OjpSZW5kZXJidWZmZXJHTDo6b25EZXN0cm95KToKKysgICAgICAgIChyeDo6
UmVuZGVyYnVmZmVyR0w6OnNldFN0b3JhZ2UpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJidWZmZXJH
TDo6c2V0U3RvcmFnZU11bHRpc2FtcGxlKToKKysgICAgICAgIChyeDo6UmVuZGVyYnVmZmVyR0w6
OmluaXRpYWxpemVDb250ZW50cyk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9n
bC9SZW5kZXJidWZmZXJHTC5oOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wv
U2hhZGVyR0wuY3BwOgorKyAgICAgICAgKHJ4OjpTaGFkZXJHTDo6Y29tcGlsZSk6CisrICAgICAg
ICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9TdGF0ZU1hbmFnZXJHTC5jcHA6CisrICAgICAg
ICAocng6OlN0YXRlTWFuYWdlckdMOjpiaW5kQnVmZmVyQmFzZSk6CisrICAgICAgICAocng6OlN0
YXRlTWFuYWdlckdMOjpiaW5kQnVmZmVyUmFuZ2UpOgorKyAgICAgICAgKHJ4OjpTdGF0ZU1hbmFn
ZXJHTDo6dmFsaWRhdGVTdGF0ZSBjb25zdCk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5k
ZXJlci9nbC9TdGF0ZU1hbmFnZXJHTC5oOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVy
ZXIvZ2wvU3VyZmFjZUdMLmNwcDoKKysgICAgICAgIChyeDo6U3VyZmFjZUdMOjppbml0aWFsaXpl
Q29udGVudHMpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvVGV4dHVyZUdM
LmNwcDoKKysgICAgICAgIChyeDo6VGV4dHVyZUdMOjpzZXRJbWFnZUhlbHBlcik6CisrICAgICAg
ICAocng6OlRleHR1cmVHTDo6c2V0U3ViSW1hZ2UpOgorKyAgICAgICAgKHJ4OjpUZXh0dXJlR0w6
OnNldENvbXByZXNzZWRJbWFnZSk6CisrICAgICAgICAocng6OlRleHR1cmVHTDo6c2V0Q29tcHJl
c3NlZFN1YkltYWdlKToKKysgICAgICAgIChyeDo6VGV4dHVyZUdMOjpjb3B5SW1hZ2UpOgorKyAg
ICAgICAgKHJ4OjpUZXh0dXJlR0w6OmNvcHlTdWJUZXh0dXJlSGVscGVyKToKKysgICAgICAgIChy
eDo6VGV4dHVyZUdMOjpzZXRTdG9yYWdlKToKKysgICAgICAgIChyeDo6VGV4dHVyZUdMOjpzZXRJ
bWFnZUV4dGVybmFsKToKKysgICAgICAgIChyeDo6VGV4dHVyZUdMOjpzZXRTdG9yYWdlTXVsdGlz
YW1wbGUpOgorKyAgICAgICAgKHJ4OjpUZXh0dXJlR0w6OnNldFN0b3JhZ2VFeHRlcm5hbE1lbW9y
eSk6CisrICAgICAgICAocng6OlRleHR1cmVHTDo6c2V0RUdMSW1hZ2VUYXJnZXQpOgorKyAgICAg
ICAgKHJ4OjpUZXh0dXJlR0w6OnNldExldmVsSW5mbyk6CisrICAgICAgICAocng6OlRleHR1cmVH
TDo6aW5pdGlhbGl6ZUNvbnRlbnRzKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVy
L2dsL1ZlcnRleEFycmF5R0wuY3BwOgorKyAgICAgICAgKHJ4OjpWZXJ0ZXhBcnJheUdMOjpzdHJl
YW1BdHRyaWJ1dGVzIGNvbnN0KToKKysgICAgICAgIChyeDo6VmVydGV4QXJyYXlHTDo6dmFsaWRh
dGVTdGF0ZSBjb25zdCk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9WZXJ0
ZXhBcnJheUdMLmg6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvRGV2
aWNlQ0dMLmNwcDogQWRkZWQuCisrICAgICAgICAocng6OkRldmljZUNHTDo6RGV2aWNlQ0dMKToK
KysgICAgICAgIChyeDo6RGV2aWNlQ0dMOjp+RGV2aWNlQ0dMKToKKysgICAgICAgIChyeDo6RGV2
aWNlQ0dMOjppbml0aWFsaXplKToKKysgICAgICAgIChyeDo6RGV2aWNlQ0dMOjpnZXRBdHRyaWJ1
dGUpOgorKyAgICAgICAgKHJ4OjpEZXZpY2VDR0w6OmdldFR5cGUpOgorKyAgICAgICAgKHJ4OjpE
ZXZpY2VDR0w6OmdlbmVyYXRlRXh0ZW5zaW9ucyBjb25zdCk6CisrICAgICAgICAqIHNyYy9saWJB
TkdMRS9yZW5kZXJlci9nbC9jZ2wvRGV2aWNlQ0dMLmg6IEFkZGVkLgorKyAgICAgICAgKiBzcmMv
bGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0Rpc3BsYXlDR0wuaDoKKysgICAgICAgICogc3JjL2xp
YkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9EaXNwbGF5Q0dMLm1tOgorKyAgICAgICAgKHJ4OjpEaXNw
bGF5Q0dMOjpjcmVhdGVEZXZpY2UpOgorKyAgICAgICAgKHJ4OjpEaXNwbGF5Q0dMOjpnZXRDR0xQ
aXhlbEZvcm1hdCBjb25zdCk6CisrICAgICAgICAocng6OkRpc3BsYXlDR0w6OmdlbmVyYXRlRXh0
ZW5zaW9ucyBjb25zdCk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wv
SU9TdXJmYWNlU3VyZmFjZUNHTC5tbToKKysgICAgICAgIChyeDo6SU9TdXJmYWNlU3VyZmFjZUNH
TDo6aW5pdGlhbGl6ZUFscGhhQ2hhbm5lbCk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5k
ZXJlci9nbC9lZ2wvRGlzcGxheUVHTC5jcHA6CisrICAgICAgICAocng6OkRpc3BsYXlFR0w6Omdl
bmVyYXRlRXh0ZW5zaW9ucyBjb25zdCk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJl
ci9nbC9nbHgvRGlzcGxheUdMWC5jcHA6CisrICAgICAgICAocng6OkRpc3BsYXlHTFg6Om1ha2VD
dXJyZW50KToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2dseC9XaW5kb3dT
dXJmYWNlR0xYLmNwcDoKKysgICAgICAgIChyeDo6V2luZG93U3VyZmFjZUdMWDo6aW5pdGlhbGl6
ZSk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9yZW5kZXJlcmdsX3V0aWxz
LmNwcDoKKysgICAgICAgIChyeDo6bmF0aXZlZ2xfZ2w6OkdlbmVyYXRlQ2Fwcyk6CisrICAgICAg
ICAocng6Om5hdGl2ZWdsX2dsOjpJbml0aWFsaXplRmVhdHVyZXMpOgorKyAgICAgICAgKHJ4Ojpu
YXRpdmVnbF9nbDo6SW5pdGlhbGl6ZUZyb250ZW5kRmVhdHVyZXMpOgorKyAgICAgICAgKHJ4Ojpu
YXRpdmVnbDo6U3VwcG9ydHNDb21wdXRlKToKKysgICAgICAgIChyeDo6bmF0aXZlZ2w6OkdldEJ1
ZmZlckJpbmRpbmdRdWVyeSk6CisrICAgICAgICAocng6Om5hdGl2ZWdsOjpHZXRCdWZmZXJCaW5k
aW5nU3RyaW5nKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL3JlbmRlcmVy
Z2xfdXRpbHMuaDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2xvYWRfZnVuY3Rp
b25zX2RhdGEuanNvbjoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2xvYWRfZnVu
Y3Rpb25zX3RhYmxlX2F1dG9nZW4uY3BwOgorKyAgICAgICAgKGFuZ2xlOjpHZXRMb2FkRnVuY3Rp
b25zTWFwKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL251bGwvRGV2aWNlTlVM
TC5jcHA6CisrICAgICAgICAocng6OkRldmljZU5VTEw6OmdldEF0dHJpYnV0ZSk6CisrICAgICAg
ICAocng6OkRldmljZU5VTEw6OmdldERldmljZSk6IERlbGV0ZWQuCisrICAgICAgICAqIHNyYy9s
aWJBTkdMRS9yZW5kZXJlci9udWxsL0RldmljZU5VTEwuaDoKKysgICAgICAgICogc3JjL2xpYkFO
R0xFL3JlbmRlcmVyL3JlbmRlcmVyX3V0aWxzLmNwcDoKKysgICAgICAgIChyeDo6U2hvdWxkVXNl
RGVidWdMYXllcnMpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL0J1
ZmZlclZrLmNwcDoKKysgICAgICAgIChyeDo6QnVmZmVyVms6OnJlbGVhc2UpOgorKyAgICAgICAg
KHJ4OjpCdWZmZXJWazo6bWFwUmFuZ2VJbXBsKToKKysgICAgICAgIChyeDo6QnVmZmVyVms6OnNl
dERhdGFJbXBsKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9Db21t
YW5kR3JhcGguY3BwOgorKyAgICAgICAgKHJ4Ojp2azo6Q29tbWFuZEdyYXBoUmVzb3VyY2U6OkNv
bW1hbmRHcmFwaFJlc291cmNlKToKKysgICAgICAgIChyeDo6dms6OkNvbW1hbmRHcmFwaFJlc291
cmNlOjp+Q29tbWFuZEdyYXBoUmVzb3VyY2UpOgorKyAgICAgICAgKHJ4Ojp2azo6Q29tbWFuZEdy
YXBoUmVzb3VyY2U6OmlzUmVzb3VyY2VJblVzZSBjb25zdCk6CisrICAgICAgICAocng6OnZrOjpD
b21tYW5kR3JhcGhSZXNvdXJjZTo6cmVjb3JkQ29tbWFuZHMpOgorKyAgICAgICAgKHJ4Ojp2azo6
Q29tbWFuZEdyYXBoUmVzb3VyY2U6OmFkZFdyaXRlRGVwZW5kZW5jeSk6CisrICAgICAgICAocng6
OnZrOjpDb21tYW5kR3JhcGhSZXNvdXJjZTo6YWRkUmVhZERlcGVuZGVuY3kpOgorKyAgICAgICAg
KHJ4Ojp2azo6Q29tbWFuZEdyYXBoUmVzb3VyY2U6OnN0YXJ0TmV3Q29tbWFuZHMpOgorKyAgICAg
ICAgKHJ4Ojp2azo6Q29tbWFuZEdyYXBoUmVzb3VyY2U6Om9uV3JpdGVJbXBsKToKKysgICAgICAg
IChyeDo6dms6OlNoYXJlZEdhcmJhZ2U6OlNoYXJlZEdhcmJhZ2UpOgorKyAgICAgICAgKHJ4Ojp2
azo6U2hhcmVkR2FyYmFnZTo6b3BlcmF0b3I9KToKKysgICAgICAgIChyeDo6dms6OlNoYXJlZEdh
cmJhZ2U6OmRlc3Ryb3lJZkNvbXBsZXRlKToKKysgICAgICAgIChyeDo6dms6OkNvbW1hbmRHcmFw
aDo6fkNvbW1hbmRHcmFwaCk6CisrICAgICAgICAocng6OnZrOjpDb21tYW5kR3JhcGg6OnN1Ym1p
dENvbW1hbmRzKToKKysgICAgICAgIChyeDo6dms6OkNvbW1hbmRHcmFwaDo6cmVsZWFzZVJlc291
cmNlVXNlcyk6CisrICAgICAgICAocng6OnZrOjpDb21tYW5kR3JhcGg6OnJlbGVhc2VSZXNvdXJj
ZVVzZXNBbmRVcGRhdGVTZXJpYWxzKToKKysgICAgICAgIChyeDo6dms6OkNvbW1hbmRHcmFwaFJl
c291cmNlOjpyZXNldFF1ZXVlU2VyaWFsKTogRGVsZXRlZC4KKysgICAgICAgICogc3JjL2xpYkFO
R0xFL3JlbmRlcmVyL3Z1bGthbi9Db21tYW5kR3JhcGguaDoKKysgICAgICAgIChyeDo6dms6OkNv
bW1hbmRHcmFwaFJlc291cmNlOjpnZXRMYXRlc3RTZXJpYWwgY29uc3QpOgorKyAgICAgICAgKHJ4
Ojp2azo6Q29tbWFuZEdyYXBoUmVzb3VyY2U6Omhhc1N0YXJ0ZWRSZW5kZXJQYXNzIGNvbnN0KToK
KysgICAgICAgIChyeDo6dms6OkNvbW1hbmRHcmFwaFJlc291cmNlOjp1cGRhdGVDdXJyZW50QWNj
ZXNzTm9kZXMpOgorKyAgICAgICAgKHJ4Ojp2azo6Q29tbWFuZEdyYXBoUmVzb3VyY2U6Om9uR3Jh
cGhBY2Nlc3MpOgorKyAgICAgICAgKHJ4Ojp2azo6Q29tbWFuZEdyYXBoUmVzb3VyY2U6OmFwcGVu
ZFRvU3RhcnRlZFJlbmRlclBhc3MpOgorKyAgICAgICAgKHJ4Ojp2azo6Q29tbWFuZEdyYXBoUmVz
b3VyY2U6OnJlbmRlclBhc3NTdGFydGVkQnV0RW1wdHkgY29uc3QpOgorKyAgICAgICAgKHJ4Ojp2
azo6Q29tbWFuZEdyYXBoUmVzb3VyY2U6OmNsZWFyUmVuZGVyUGFzc0NvbG9yQXR0YWNobWVudCk6
CisrICAgICAgICAocng6OnZrOjpDb21tYW5kR3JhcGhSZXNvdXJjZTo6Y2xlYXJSZW5kZXJQYXNz
RGVwdGhBdHRhY2htZW50KToKKysgICAgICAgIChyeDo6dms6OkNvbW1hbmRHcmFwaFJlc291cmNl
OjpjbGVhclJlbmRlclBhc3NTdGVuY2lsQXR0YWNobWVudCk6CisrICAgICAgICAocng6OnZrOjpD
b21tYW5kR3JhcGhSZXNvdXJjZTo6aW52YWxpZGF0ZVJlbmRlclBhc3NDb2xvckF0dGFjaG1lbnQp
OgorKyAgICAgICAgKHJ4Ojp2azo6Q29tbWFuZEdyYXBoUmVzb3VyY2U6OmludmFsaWRhdGVSZW5k
ZXJQYXNzRGVwdGhBdHRhY2htZW50KToKKysgICAgICAgIChyeDo6dms6OkNvbW1hbmRHcmFwaFJl
c291cmNlOjppbnZhbGlkYXRlUmVuZGVyUGFzc1N0ZW5jaWxBdHRhY2htZW50KToKKysgICAgICAg
IChyeDo6dms6OkNvbW1hbmRHcmFwaFJlc291cmNlOjpnZXRSZW5kZXJQYXNzUmVuZGVyQXJlYSBj
b25zdCk6CisrICAgICAgICAocng6OnZrOjpDb21tYW5kR3JhcGhSZXNvdXJjZTo6YWRkR2xvYmFs
TWVtb3J5QmFycmllcik6CisrICAgICAgICAocng6OnZrOjpDb21tYW5kR3JhcGhSZXNvdXJjZTo6
aGFzQ2hpbGRsZXNzV3JpdGluZ05vZGUgY29uc3QpOgorKyAgICAgICAgKHJ4Ojp2azo6Q29tbWFu
ZEdyYXBoOjpvblJlc291cmNlVXNlKToKKysgICAgICAgIChyeDo6dms6OkNvbW1hbmRHcmFwaFJl
c291cmNlOjpnZXRTdG9yZWRRdWV1ZVNlcmlhbCBjb25zdCk6IERlbGV0ZWQuCisrICAgICAgICAo
cng6OnZrOjpDb21tYW5kR3JhcGhSZXNvdXJjZTo6dXBkYXRlUXVldWVTZXJpYWwpOiBEZWxldGVk
LgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL0NvbnRleHRWay5jcHA6
CisrICAgICAgICAocng6OkNvbW1hbmRCYXRjaDo6Q29tbWFuZEJhdGNoKToKKysgICAgICAgIChy
eDo6Q29tbWFuZEJhdGNoOjpvcGVyYXRvcj0pOgorKyAgICAgICAgKHJ4OjpDb21tYW5kQmF0Y2g6
OmRlc3Ryb3kpOgorKyAgICAgICAgKHJ4OjpDb21tYW5kUXVldWU6OmRlc3Ryb3kpOgorKyAgICAg
ICAgKHJ4OjpDb21tYW5kUXVldWU6OmluaXQpOgorKyAgICAgICAgKHJ4OjpDb21tYW5kUXVldWU6
OmNoZWNrQ29tcGxldGVkQ29tbWFuZHMpOgorKyAgICAgICAgKHJ4OjpDb21tYW5kUXVldWU6OnJl
bGVhc2VUb0NvbW1hbmRCYXRjaCk6CisrICAgICAgICAocng6OkNvbW1hbmRRdWV1ZTo6Y2xlYXJB
bGxHYXJiYWdlKToKKysgICAgICAgIChyeDo6Q29tbWFuZFF1ZXVlOjphbGxvY2F0ZVByaW1hcnlD
b21tYW5kQnVmZmVyKToKKysgICAgICAgIChyeDo6Q29tbWFuZFF1ZXVlOjpyZWxlYXNlUHJpbWFy
eUNvbW1hbmRCdWZmZXIpOgorKyAgICAgICAgKHJ4OjpDb21tYW5kUXVldWU6OmhhbmRsZURldmlj
ZUxvc3QpOgorKyAgICAgICAgKHJ4OjpDb21tYW5kUXVldWU6Omhhc0luRmxpZ2h0Q29tbWFuZHMg
Y29uc3QpOgorKyAgICAgICAgKHJ4OjpDb21tYW5kUXVldWU6OmZpbmlzaFRvU2VyaWFsT3JUaW1l
b3V0KToKKysgICAgICAgIChyeDo6Q29tbWFuZFF1ZXVlOjpzdWJtaXRGcmFtZSk6CisrICAgICAg
ICAocng6OkNvbW1hbmRRdWV1ZTo6Z2V0TGFzdFN1Ym1pdHRlZEZlbmNlIGNvbnN0KToKKysgICAg
ICAgIChyeDo6Q29udGV4dFZrOjpDb250ZXh0VmspOgorKyAgICAgICAgKHJ4OjpDb250ZXh0Vms6
Om9uRGVzdHJveSk6CisrICAgICAgICAocng6OkNvbnRleHRWazo6aW5pdGlhbGl6ZSk6CisrICAg
ICAgICAocng6OkNvbnRleHRWazo6c2V0dXBEcmF3KToKKysgICAgICAgIChyeDo6Q29udGV4dFZr
OjpzZXR1cEluZGlyZWN0RHJhdyk6CisrICAgICAgICAocng6OkNvbnRleHRWazo6c2V0dXBJbmRl
eGVkSW5kaXJlY3REcmF3KToKKysgICAgICAgIChyeDo6Q29udGV4dFZrOjpzZXR1cExpbmVMb29w
SW5kZXhlZEluZGlyZWN0RHJhdyk6CisrICAgICAgICAocng6OkNvbnRleHRWazo6aGFuZGxlRGly
dHlHcmFwaGljc1ZlcnRleEJ1ZmZlcnMpOgorKyAgICAgICAgKHJ4OjpDb250ZXh0Vms6OmhhbmRs
ZURpcnR5R3JhcGhpY3NJbmRleEJ1ZmZlcik6CisrICAgICAgICAocng6OkNvbnRleHRWazo6c3Vi
bWl0RnJhbWUpOgorKyAgICAgICAgKHJ4OjpDb250ZXh0Vms6OmZsdXNoQ29tbWFuZEdyYXBoKToK
KysgICAgICAgIChyeDo6Q29udGV4dFZrOjpzeW5jaHJvbml6ZUNwdUdwdVRpbWUpOgorKyAgICAg
ICAgKHJ4OjpDb250ZXh0Vms6OnRyYWNlR3B1RXZlbnRJbXBsKToKKysgICAgICAgIChyeDo6Q29u
dGV4dFZrOjpjaGVja0NvbXBsZXRlZEdwdUV2ZW50cyk6CisrICAgICAgICAocng6OkNvbnRleHRW
azo6Zmx1c2hHcHVFdmVudHMpOgorKyAgICAgICAgKHJ4OjpDb250ZXh0Vms6OmNsZWFyQWxsR2Fy
YmFnZSk6CisrICAgICAgICAocng6OkNvbnRleHRWazo6aGFuZGxlRGV2aWNlTG9zdCk6CisrICAg
ICAgICAocng6OkNvbnRleHRWazo6ZHJhd0FycmF5c0luZGlyZWN0KToKKysgICAgICAgIChyeDo6
Q29udGV4dFZrOjpkcmF3RWxlbWVudHNJbmRpcmVjdCk6CisrICAgICAgICAocng6OkNvbnRleHRW
azo6c3luY1N0YXRlKToKKysgICAgICAgIChyeDo6Q29udGV4dFZrOjpvbk1ha2VDdXJyZW50KToK
KysgICAgICAgIChyeDo6Q29udGV4dFZrOjpkaXNwYXRjaENvbXB1dGVJbmRpcmVjdCk6CisrICAg
ICAgICAocng6OkNvbnRleHRWazo6bWVtb3J5QmFycmllcik6CisrICAgICAgICAocng6OkNvbnRl
eHRWazo6d3JpdGVBdG9taWNDb3VudGVyQnVmZmVyRHJpdmVyVW5pZm9ybU9mZnNldHMpOgorKyAg
ICAgICAgKHJ4OjpDb250ZXh0Vms6OnVwZGF0ZUFjdGl2ZVRleHR1cmVzKToKKysgICAgICAgIChy
eDo6Q29udGV4dFZrOjp1cGRhdGVBY3RpdmVJbWFnZXMpOgorKyAgICAgICAgKHJ4OjpDb250ZXh0
Vms6OnNob3VsZEZsdXNoKToKKysgICAgICAgIChyeDo6Q29udGV4dFZrOjpmbHVzaEltcGwpOgor
KyAgICAgICAgKHJ4OjpDb250ZXh0Vms6OmZpbmlzaEltcGwpOgorKyAgICAgICAgKHJ4OjpDb250
ZXh0Vms6OmlzU2VyaWFsSW5Vc2UgY29uc3QpOgorKyAgICAgICAgKHJ4OjpDb250ZXh0Vms6OmNo
ZWNrQ29tcGxldGVkQ29tbWFuZHMpOgorKyAgICAgICAgKHJ4OjpDb250ZXh0Vms6OmZpbmlzaFRv
U2VyaWFsKToKKysgICAgICAgIChyeDo6Q29udGV4dFZrOjpmaW5pc2hUb1NlcmlhbE9yVGltZW91
dCk6CisrICAgICAgICAocng6OkNvbnRleHRWazo6Z2V0Q29tcGF0aWJsZVJlbmRlclBhc3MpOgor
KyAgICAgICAgKHJ4OjpDb250ZXh0Vms6OmdldFJlbmRlclBhc3NXaXRoT3BzKToKKysgICAgICAg
IChyeDo6Q29udGV4dFZrOjplbnN1cmVTdWJtaXRGZW5jZUluaXRpYWxpemVkKToKKysgICAgICAg
IChyeDo6Q29udGV4dFZrOjpnZXROZXh0U3VibWl0RmVuY2UpOgorKyAgICAgICAgKHJ4OjpDb250
ZXh0Vms6OmdldExhc3RTdWJtaXR0ZWRGZW5jZSBjb25zdCk6CisrICAgICAgICAocng6OkNvbnRl
eHRWazo6Z2V0VGltZXN0YW1wKToKKysgICAgICAgIChyeDo6Q29udGV4dFZrOjp1cGRhdGVEZWZh
dWx0QXR0cmlidXRlKToKKysgICAgICAgIChyeDo6Q29udGV4dFZrOjp3YWl0Rm9yU3dhcGNoYWlu
SW1hZ2VJZk5lY2Vzc2FyeSk6CisrICAgICAgICAocng6OkNvbnRleHRWazo6Q29tbWFuZEJhdGNo
OjpDb21tYW5kQmF0Y2gpOiBEZWxldGVkLgorKyAgICAgICAgKHJ4OjpDb250ZXh0Vms6OkNvbW1h
bmRCYXRjaDo6b3BlcmF0b3I9KTogRGVsZXRlZC4KKysgICAgICAgIChyeDo6Q29udGV4dFZrOjpD
b21tYW5kQmF0Y2g6OmRlc3Ryb3kpOiBEZWxldGVkLgorKyAgICAgICAgKHJ4OjpDb250ZXh0Vms6
OnJlbGVhc2VUb0NvbW1hbmRCYXRjaCk6IERlbGV0ZWQuCisrICAgICAgICAocng6OkNvbnRleHRW
azo6cmVjeWNsZUNvbW1hbmRCYXRjaCk6IERlbGV0ZWQuCisrICAgICAgICAocng6OkNvbnRleHRW
azo6Z2V0Q29tbWFuZEdyYXBoKTogRGVsZXRlZC4KKysgICAgICAgICogc3JjL2xpYkFOR0xFL3Jl
bmRlcmVyL3Z1bGthbi9Db250ZXh0VmsuaDoKKysgICAgICAgIChyeDo6Q29udGV4dFZrOjpvblZl
cnRleEF0dHJpYnV0ZUNoYW5nZSk6CisrICAgICAgICAocng6OkNvbnRleHRWazo6Z2V0Q3VycmVu
dFF1ZXVlU2VyaWFsIGNvbnN0KToKKysgICAgICAgIChyeDo6Q29udGV4dFZrOjpnZXRMYXN0U3Vi
bWl0dGVkUXVldWVTZXJpYWwgY29uc3QpOgorKyAgICAgICAgKHJ4OjpDb250ZXh0Vms6OmdldExh
c3RDb21wbGV0ZWRRdWV1ZVNlcmlhbCBjb25zdCk6CisrICAgICAgICAocng6OkNvbnRleHRWazo6
YWRkR2FyYmFnZSk6CisrICAgICAgICAocng6OkNvbnRleHRWazo6Z2V0Q29tbWFuZEdyYXBoKToK
KysgICAgICAgIChyeDo6Q29udGV4dFZrOjpyZWxlYXNlT2JqZWN0KTogRGVsZXRlZC4KKysgICAg
ICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9EZXZpY2VWay5jcHA6CisrICAgICAg
ICAocng6OkRldmljZVZrOjpnZXRBdHRyaWJ1dGUpOgorKyAgICAgICAgKHJ4OjpEZXZpY2VWazo6
Z2V0RGV2aWNlKTogRGVsZXRlZC4KKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1
bGthbi9EZXZpY2VWay5oOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2Fu
L0Rpc3BsYXlWay5jcHA6CisrICAgICAgICAocng6OkRpc3BsYXlWazo6Z2VuZXJhdGVFeHRlbnNp
b25zIGNvbnN0KToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9GcmFt
ZWJ1ZmZlclZrLmNwcDoKKysgICAgICAgIChyeDo6RnJhbWVidWZmZXJWazo6ZGVzdHJveSk6Cisr
ICAgICAgICAocng6OkZyYW1lYnVmZmVyVms6OmludmFsaWRhdGUpOgorKyAgICAgICAgKHJ4OjpG
cmFtZWJ1ZmZlclZrOjppbnZhbGlkYXRlU3ViKToKKysgICAgICAgIChyeDo6RnJhbWVidWZmZXJW
azo6Y2xlYXJJbXBsKToKKysgICAgICAgIChyeDo6RnJhbWVidWZmZXJWazo6Z2V0SW1wbGVtZW50
YXRpb25Db2xvclJlYWRUeXBlIGNvbnN0KToKKysgICAgICAgIChyeDo6RnJhbWVidWZmZXJWazo6
YmxpdFdpdGhDb21tYW5kKToKKysgICAgICAgIChyeDo6RnJhbWVidWZmZXJWazo6YmxpdCk6Cisr
ICAgICAgICAocng6OkZyYW1lYnVmZmVyVms6OnJlc29sdmVDb2xvcldpdGhDb21tYW5kKToKKysg
ICAgICAgIChyeDo6RnJhbWVidWZmZXJWazo6cmVhZFBpeGVsc0ltcGwpOgorKyAgICAgICAgKHJ4
OjpGcmFtZWJ1ZmZlclZrOjpvblNjaXNzb3JDaGFuZ2UpOgorKyAgICAgICAgKiBzcmMvbGliQU5H
TEUvcmVuZGVyZXIvdnVsa2FuL0ZyYW1lYnVmZmVyVmsuaDoKKysgICAgICAgIChyeDo6RnJhbWVi
dWZmZXJWazo6YXBwZW5kVG9TdGFydGVkUmVuZGVyUGFzcyk6CisrICAgICAgICAqIHNyYy9saWJB
TkdMRS9yZW5kZXJlci92dWxrYW4vR2xzbGFuZ1dyYXBwZXIuY3BwOgorKyAgICAgICAgKiBzcmMv
bGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL0ltYWdlVmsuY3BwOgorKyAgICAgICAgKHJ4OjpJbWFn
ZVZrOjpvbkRlc3Ryb3kpOgorKyAgICAgICAgKHJ4OjpJbWFnZVZrOjpvcnBoYW4pOgorKyAgICAg
ICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL0ltYWdlVmsuaDoKKysgICAgICAgICog
c3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9NZW1vcnlPYmplY3RWay5jcHA6CisrICAgICAg
ICAocng6Ok1lbW9yeU9iamVjdFZrOjpjcmVhdGVJbWFnZSk6CisrICAgICAgICAqIHNyYy9saWJB
TkdMRS9yZW5kZXJlci92dWxrYW4vT3ZlcmxheVZrLmNwcDoKKysgICAgICAgIChyeDo6T3Zlcmxh
eVZrOjpjcmVhdGVGb250KToKKysgICAgICAgIChyeDo6T3ZlcmxheVZrOjpjdWxsV2lkZ2V0cyk6
CisrICAgICAgICAocng6Ok92ZXJsYXlWazo6b25QcmVzZW50KToKKysgICAgICAgICogc3JjL2xp
YkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9QZXJzaXN0ZW50Q29tbWFuZFBvb2wuY3BwOgorKyAgICAg
ICAgKHJ4Ojp2azo6UGVyc2lzdGVudENvbW1hbmRQb29sOjpkZXN0cm95KToKKysgICAgICAgIChy
eDo6dms6OlBlcnNpc3RlbnRDb21tYW5kUG9vbDo6YWxsb2NhdGUpOgorKyAgICAgICAgKHJ4Ojp2
azo6UGVyc2lzdGVudENvbW1hbmRQb29sOjphbGxvYyk6IERlbGV0ZWQuCisrICAgICAgICAqIHNy
Yy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vUGVyc2lzdGVudENvbW1hbmRQb29sLmg6CisrICAg
ICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vUHJvZ3JhbVZrLmNwcDoKKysgICAg
ICAgIChyeDo6UHJvZ3JhbVZrOjpyZXNldCk6CisrICAgICAgICAocng6OlByb2dyYW1Wazo6aW5p
dERlZmF1bHRVbmlmb3JtTGF5b3V0TWFwcGluZyk6CisrICAgICAgICAocng6OlByb2dyYW1Wazo6
dXBkYXRlRGVmYXVsdFVuaWZvcm1zRGVzY3JpcHRvclNldCk6CisrICAgICAgICAocng6OlByb2dy
YW1Wazo6dXBkYXRlQnVmZmVyc0Rlc2NyaXB0b3JTZXQpOgorKyAgICAgICAgKHJ4OjpQcm9ncmFt
Vms6OnVwZGF0ZUF0b21pY0NvdW50ZXJCdWZmZXJzRGVzY3JpcHRvclNldCk6CisrICAgICAgICAo
cng6OlByb2dyYW1Wazo6dXBkYXRlSW1hZ2VzRGVzY3JpcHRvclNldCk6CisrICAgICAgICAocng6
OlByb2dyYW1Wazo6dXBkYXRlVHJhbnNmb3JtRmVlZGJhY2tEZXNjcmlwdG9yU2V0SW1wbCk6Cisr
ICAgICAgICAocng6OlByb2dyYW1Wazo6dXBkYXRlRGVzY3JpcHRvclNldHMpOgorKyAgICAgICAg
KiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL1Byb2dyYW1Way5oOgorKyAgICAgICAgKHJ4
OjpQcm9ncmFtVms6OmdldEdyYXBoaWNzUGlwZWxpbmUpOgorKyAgICAgICAgKiBzcmMvbGliQU5H
TEUvcmVuZGVyZXIvdnVsa2FuL1JFQURNRS5tZDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3Jl
bmRlcmVyL3Z1bGthbi9SZW5kZXJUYXJnZXRWay5jcHA6CisrICAgICAgICAocng6OlJlbmRlclRh
cmdldFZrOjpSZW5kZXJUYXJnZXRWayk6CisrICAgICAgICAocng6OlJlbmRlclRhcmdldFZrOjpp
bml0KToKKysgICAgICAgIChyeDo6UmVuZGVyVGFyZ2V0Vms6OnJlc2V0KToKKysgICAgICAgIChy
eDo6UmVuZGVyVGFyZ2V0Vms6Om9uQ29sb3JEcmF3KToKKysgICAgICAgIChyeDo6UmVuZGVyVGFy
Z2V0Vms6Om9uRGVwdGhTdGVuY2lsRHJhdyk6CisrICAgICAgICAocng6OlJlbmRlclRhcmdldFZr
Ojp1cGRhdGVTd2FwY2hhaW5JbWFnZSk6CisrICAgICAgICAocng6OlJlbmRlclRhcmdldFZrOjpn
ZXRJbWFnZUZvclJlYWQpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJUYXJnZXRWazo6Z2V0SW1hZ2VG
b3JXcml0ZSBjb25zdCk6CisrICAgICAgICAocng6OlJlbmRlclRhcmdldFZrOjpnZXRGZXRjaElt
YWdlVmlldyBjb25zdCk6IERlbGV0ZWQuCisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJl
ci92dWxrYW4vUmVuZGVyVGFyZ2V0VmsuaDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRl
cmVyL3Z1bGthbi9SZW5kZXJidWZmZXJWay5jcHA6CisrICAgICAgICAocng6OlJlbmRlcmJ1ZmZl
clZrOjpzZXRTdG9yYWdlSW1wbCk6CisrICAgICAgICAocng6OlJlbmRlcmJ1ZmZlclZrOjpzZXRT
dG9yYWdlRUdMSW1hZ2VUYXJnZXQpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJidWZmZXJWazo6cmVs
ZWFzZUltYWdlKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9SZW5k
ZXJidWZmZXJWay5oOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL1Jl
bmRlcmVyVmsuY3BwOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlclZrOjp+UmVuZGVyZXJWayk6Cisr
ICAgICAgICAocng6OlJlbmRlcmVyVms6Om9uRGVzdHJveSk6CisrICAgICAgICAocng6OlJlbmRl
cmVyVms6Om5vdGlmeURldmljZUxvc3QpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlclZrOjppbml0
aWFsaXplKToKKysgICAgICAgIChyeDo6UmVuZGVyZXJWazo6aW5pdGlhbGl6ZURldmljZSk6Cisr
ICAgICAgICAocng6OlJlbmRlcmVyVms6OmluaXRGZWF0dXJlcyk6CisrICAgICAgICAocng6OlJl
bmRlcmVyVms6OnF1ZXVlU3VibWl0KToKKysgICAgICAgIChyeDo6UmVuZGVyZXJWazo6Y2xlYW51
cEdhcmJhZ2UpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlclZrOjpnZXRNYXhGZW5jZVdhaXRUaW1l
TnMgY29uc3QpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlclZrOjpvbkNvbXBsZXRlZFNlcmlhbCk6
CisrICAgICAgICAocng6OlJlbmRlcmVyVms6Om5leHRTZXJpYWwpOiBEZWxldGVkLgorKyAgICAg
ICAgKHJ4OjpSZW5kZXJlclZrOjphZGRHYXJiYWdlKTogRGVsZXRlZC4KKysgICAgICAgICogc3Jj
L2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9SZW5kZXJlclZrLmg6CisrICAgICAgICAocng6OkNv
bGxlY3RHYXJiYWdlKToKKysgICAgICAgIChyeDo6UmVuZGVyZXJWazo6Z2V0TWF4VmVydGV4QXR0
cmliRGl2aXNvciBjb25zdCk6CisrICAgICAgICAocng6OlJlbmRlcmVyVms6OmNvbGxlY3RHYXJi
YWdlQW5kUmVpbml0KToKKysgICAgICAgIChyeDo6UmVuZGVyZXJWazo6Z2V0Q3VycmVudFF1ZXVl
U2VyaWFsIGNvbnN0KToKKysgICAgICAgIChyeDo6UmVuZGVyZXJWazo6Z2V0TGFzdFN1Ym1pdHRl
ZFF1ZXVlU2VyaWFsIGNvbnN0KToKKysgICAgICAgIChyeDo6UmVuZGVyZXJWazo6Z2V0TGFzdENv
bXBsZXRlZFF1ZXVlU2VyaWFsIGNvbnN0KToKKysgICAgICAgIChyeDo6UmVuZGVyZXJWazo6c2hv
dWxkQ2xlYW51cEdhcmJhZ2UpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVs
a2FuL1NhbXBsZXJWay5jcHA6CisrICAgICAgICAocng6OlNhbXBsZXJWazo6b25EZXN0cm95KToK
KysgICAgICAgIChyeDo6U2FtcGxlclZrOjpzeW5jU3RhdGUpOgorKyAgICAgICAgKiBzcmMvbGli
QU5HTEUvcmVuZGVyZXIvdnVsa2FuL1NlY29uZGFyeUNvbW1hbmRCdWZmZXIuY3BwOgorKyAgICAg
ICAgKHJ4Ojp2azo6cHJpdjo6U2Vjb25kYXJ5Q29tbWFuZEJ1ZmZlcjo6ZXhlY3V0ZUNvbW1hbmRz
KToKKysgICAgICAgIChyeDo6dms6OnByaXY6OlNlY29uZGFyeUNvbW1hbmRCdWZmZXI6OmR1bXBD
b21tYW5kcyBjb25zdCk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4v
U2Vjb25kYXJ5Q29tbWFuZEJ1ZmZlci5oOgorKyAgICAgICAgKHJ4Ojp2azo6cHJpdjo6U2Vjb25k
YXJ5Q29tbWFuZEJ1ZmZlcjo6ZHJhd0luZGlyZWN0KToKKysgICAgICAgIChyeDo6dms6OnByaXY6
OlNlY29uZGFyeUNvbW1hbmRCdWZmZXI6OmRyYXdJbmRleGVkSW5kaXJlY3QpOgorKyAgICAgICAg
KiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL1NlbWFwaG9yZVZrLmNwcDoKKysgICAgICAg
IChyeDo6U2VtYXBob3JlVms6Om9uRGVzdHJveSk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9y
ZW5kZXJlci92dWxrYW4vU3VyZmFjZVZrLmNwcDoKKysgICAgICAgIChyeDo6T2Zmc2NyZWVuU3Vy
ZmFjZVZrOjpBdHRhY2htZW50SW1hZ2U6OmluaXRpYWxpemUpOgorKyAgICAgICAgKHJ4OjpPZmZz
Y3JlZW5TdXJmYWNlVms6OkF0dGFjaG1lbnRJbWFnZTo6ZGVzdHJveSk6CisrICAgICAgICAocng6
Ok9mZnNjcmVlblN1cmZhY2VWazo6T2Zmc2NyZWVuU3VyZmFjZVZrKToKKysgICAgICAgIChyeDo6
V2luZG93U3VyZmFjZVZrOjpXaW5kb3dTdXJmYWNlVmspOgorKyAgICAgICAgKHJ4OjpXaW5kb3dT
dXJmYWNlVms6OmNyZWF0ZVN3YXBDaGFpbik6CisrICAgICAgICAocng6OldpbmRvd1N1cmZhY2VW
azo6cmVsZWFzZVN3YXBjaGFpbkltYWdlcyk6CisrICAgICAgICAocng6OldpbmRvd1N1cmZhY2VW
azo6ZGVzdHJveVN3YXBDaGFpbkltYWdlcyk6CisrICAgICAgICAocng6OldpbmRvd1N1cmZhY2VW
azo6cHJlc2VudCk6CisrICAgICAgICAocng6OldpbmRvd1N1cmZhY2VWazo6bmV4dFN3YXBjaGFp
bkltYWdlKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9TeW5jVmsu
Y3BwOgorKyAgICAgICAgKHJ4Ojp2azo6U3luY0hlbHBlcjo6U3luY0hlbHBlcik6CisrICAgICAg
ICAocng6OnZrOjpTeW5jSGVscGVyOjp+U3luY0hlbHBlcik6CisrICAgICAgICAocng6OnZrOjpT
eW5jSGVscGVyOjpyZWxlYXNlVG9SZW5kZXJlcik6CisrICAgICAgICAocng6OnZrOjpTeW5jSGVs
cGVyOjppbml0aWFsaXplKToKKysgICAgICAgIChyeDo6dms6OlN5bmNIZWxwZXI6OmNsaWVudFdh
aXQpOgorKyAgICAgICAgKHJ4Ojp2azo6U3luY0hlbHBlcjo6c2VydmVyV2FpdCk6CisrICAgICAg
ICAocng6OnZrOjpTeW5jSGVscGVyOjpnZXRTdGF0dXMpOgorKyAgICAgICAgKHJ4OjpTeW5jVms6
Om9uRGVzdHJveSk6CisrICAgICAgICAocng6OlN5bmNWazo6c2VydmVyV2FpdCk6CisrICAgICAg
ICAocng6OkVHTFN5bmNWazo6b25EZXN0cm95KToKKysgICAgICAgIChyeDo6RUdMU3luY1ZrOjpz
ZXJ2ZXJXYWl0KToKKysgICAgICAgIChyeDo6RmVuY2VTeW5jVms6OkZlbmNlU3luY1ZrKTogRGVs
ZXRlZC4KKysgICAgICAgIChyeDo6RmVuY2VTeW5jVms6On5GZW5jZVN5bmNWayk6IERlbGV0ZWQu
CisrICAgICAgICAocng6OkZlbmNlU3luY1ZrOjpvbkRlc3Ryb3kpOiBEZWxldGVkLgorKyAgICAg
ICAgKHJ4OjpGZW5jZVN5bmNWazo6aW5pdGlhbGl6ZSk6IERlbGV0ZWQuCisrICAgICAgICAocng6
OkZlbmNlU3luY1ZrOjpjbGllbnRXYWl0KTogRGVsZXRlZC4KKysgICAgICAgIChyeDo6RmVuY2VT
eW5jVms6OnNlcnZlcldhaXQpOiBEZWxldGVkLgorKyAgICAgICAgKHJ4OjpGZW5jZVN5bmNWazo6
Z2V0U3RhdHVzKTogRGVsZXRlZC4KKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1
bGthbi9TeW5jVmsuaDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9U
ZXh0dXJlVmsuY3BwOgorKyAgICAgICAgKHJ4OjpUZXh0dXJlVms6Om9uRGVzdHJveSk6CisrICAg
ICAgICAocng6OlRleHR1cmVWazo6Y29weVN1YkltYWdlSW1wbCk6CisrICAgICAgICAocng6OlRl
eHR1cmVWazo6Y29weVN1YlRleHR1cmVJbXBsKToKKysgICAgICAgIChyeDo6VGV4dHVyZVZrOjpj
b3B5U3ViSW1hZ2VJbXBsV2l0aFRyYW5zZmVyKToKKysgICAgICAgIChyeDo6VGV4dHVyZVZrOjpj
b3B5U3ViSW1hZ2VJbXBsV2l0aERyYXcpOgorKyAgICAgICAgKHJ4OjpUZXh0dXJlVms6OnNldFN0
b3JhZ2VFeHRlcm5hbE1lbW9yeSk6CisrICAgICAgICAocng6OlRleHR1cmVWazo6c2V0RUdMSW1h
Z2VUYXJnZXQpOgorKyAgICAgICAgKHJ4OjpUZXh0dXJlVms6OmVuc3VyZUltYWdlQWxsb2NhdGVk
KToKKysgICAgICAgIChyeDo6VGV4dHVyZVZrOjpzZXRJbWFnZUhlbHBlcik6CisrICAgICAgICAo
cng6OlRleHR1cmVWazo6Y29weUltYWdlRGF0YVRvQnVmZmVyQW5kR2V0RGF0YSk6CisrICAgICAg
ICAocng6OlRleHR1cmVWazo6Y29weUltYWdlRGF0YVRvQnVmZmVyKToKKysgICAgICAgIChyeDo6
VGV4dHVyZVZrOjpnZW5lcmF0ZU1pcG1hcHNXaXRoQ1BVKToKKysgICAgICAgIChyeDo6VGV4dHVy
ZVZrOjpnZW5lcmF0ZU1pcG1hcCk6CisrICAgICAgICAocng6OlRleHR1cmVWazo6c2V0QmFzZUxl
dmVsKToKKysgICAgICAgIChyeDo6VGV4dHVyZVZrOjpjaGFuZ2VMZXZlbHMpOgorKyAgICAgICAg
KHJ4OjpUZXh0dXJlVms6OmJpbmRUZXhJbWFnZSk6CisrICAgICAgICAocng6OlRleHR1cmVWazo6
Z2V0QXR0YWNobWVudFJlbmRlclRhcmdldCk6CisrICAgICAgICAocng6OlRleHR1cmVWazo6ZW5z
dXJlSW1hZ2VJbml0aWFsaXplZCk6CisrICAgICAgICAocng6OlRleHR1cmVWazo6aW5pdExheWVy
UmVuZGVyVGFyZ2V0cyk6CisrICAgICAgICAocng6OlRleHR1cmVWazo6c3luY1N0YXRlKToKKysg
ICAgICAgIChyeDo6VGV4dHVyZVZrOjpnZXRSZWFkSW1hZ2VWaWV3IGNvbnN0KToKKysgICAgICAg
IChyeDo6VGV4dHVyZVZrOjpnZXRGZXRjaEltYWdlVmlldyBjb25zdCk6CisrICAgICAgICAocng6
OlRleHR1cmVWazo6Z2V0TGF5ZXJMZXZlbERyYXdJbWFnZVZpZXcpOgorKyAgICAgICAgKHJ4OjpU
ZXh0dXJlVms6OmdldExheWVyTGV2ZWxTdG9yYWdlSW1hZ2VWaWV3KToKKysgICAgICAgIChyeDo6
VGV4dHVyZVZrOjppbml0SW1hZ2UpOgorKyAgICAgICAgKHJ4OjpUZXh0dXJlVms6OmluaXRJbWFn
ZVZpZXdzKToKKysgICAgICAgIChyeDo6VGV4dHVyZVZrOjpyZWxlYXNlSW1hZ2UpOgorKyAgICAg
ICAgKHJ4OjpUZXh0dXJlVms6OnJlbGVhc2VJbWFnZVZpZXdzKToKKysgICAgICAgIChyeDo6VGV4
dHVyZVZrOjpyZWxlYXNlU3RhZ2luZ0J1ZmZlcik6CisrICAgICAgICAocng6OlRleHR1cmVWazo6
Z2V0TGV2ZWxDb3VudCBjb25zdCk6CisrICAgICAgICAocng6OlRleHR1cmVWazo6Z2VuZXJhdGVN
aXBtYXBMZXZlbHNXaXRoQ1BVKToKKysgICAgICAgIChyeDo6VGV4dHVyZVZrOjpUZXh0dXJlVmtW
aWV3czo6VGV4dHVyZVZrVmlld3MpOiBEZWxldGVkLgorKyAgICAgICAgKHJ4OjpUZXh0dXJlVms6
OlRleHR1cmVWa1ZpZXdzOjp+VGV4dHVyZVZrVmlld3MpOiBEZWxldGVkLgorKyAgICAgICAgKHJ4
OjpUZXh0dXJlVms6OlRleHR1cmVWa1ZpZXdzOjpyZWxlYXNlKTogRGVsZXRlZC4KKysgICAgICAg
IChyeDo6VGV4dHVyZVZrOjppbml0M0RSZW5kZXJUYXJnZXRzKTogRGVsZXRlZC4KKysgICAgICAg
IChyeDo6VGV4dHVyZVZrOjppbml0Q3ViZU1hcFJlbmRlclRhcmdldHMpOiBEZWxldGVkLgorKyAg
ICAgICAgKHJ4OjpUZXh0dXJlVms6OmdldFRleHR1cmVWaWV3cyBjb25zdCk6IERlbGV0ZWQuCisr
ICAgICAgICAocng6OlRleHR1cmVWazo6aW5pdEltYWdlVmlld0ltcGwpOiBEZWxldGVkLgorKyAg
ICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL1RleHR1cmVWay5oOgorKyAgICAg
ICAgKCk6IERlbGV0ZWQuCisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4v
VHJhbnNmb3JtRmVlZGJhY2tWay5jcHA6CisrICAgICAgICAocng6OlRyYW5zZm9ybUZlZWRiYWNr
Vms6Om9uQmVnaW5PckVuZCk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci92dWxr
YW4vVXRpbHNWay5jcHA6CisrICAgICAgICAocng6OlV0aWxzVms6OmVuc3VyZUNvbnZlcnRJbmRl
eEluZGlyZWN0UmVzb3VyY2VzSW5pdGlhbGl6ZWQpOgorKyAgICAgICAgKHJ4OjpVdGlsc1ZrOjpl
bnN1cmVDb252ZXJ0SW5kZXhJbmRpcmVjdExpbmVMb29wUmVzb3VyY2VzSW5pdGlhbGl6ZWQpOgor
KyAgICAgICAgKHJ4OjpVdGlsc1ZrOjpjb252ZXJ0SW5kZXhJbmRpcmVjdEJ1ZmZlcik6CisrICAg
ICAgICAocng6OlV0aWxzVms6OmNvbnZlcnRMaW5lTG9vcEluZGV4SW5kaXJlY3RCdWZmZXIpOgor
KyAgICAgICAgKHJ4OjpVdGlsc1ZrOjpzdGFydFJlbmRlclBhc3MpOgorKyAgICAgICAgKHJ4OjpV
dGlsc1ZrOjpjbGVhckZyYW1lYnVmZmVyKToKKysgICAgICAgIChyeDo6VXRpbHNWazo6YmxpdFJl
c29sdmVJbXBsKToKKysgICAgICAgIChyeDo6VXRpbHNWazo6c3RlbmNpbEJsaXRSZXNvbHZlTm9T
aGFkZXJFeHBvcnQpOgorKyAgICAgICAgKHJ4OjpVdGlsc1ZrOjpjb3B5SW1hZ2UpOgorKyAgICAg
ICAgKHJ4OjpVdGlsc1ZrOjpjdWxsT3ZlcmxheVdpZGdldHMpOgorKyAgICAgICAgKHJ4OjpVdGls
c1ZrOjpkcmF3T3ZlcmxheSk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci92dWxr
YW4vVXRpbHNWay5oOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL1Zl
cnRleEFycmF5VmsuY3BwOgorKyAgICAgICAgKHJ4OjpWZXJ0ZXhBcnJheVZrOjpkZXN0cm95KToK
KysgICAgICAgIChyeDo6VmVydGV4QXJyYXlWazo6Y29udmVydEluZGV4QnVmZmVySW5kaXJlY3RH
UFUpOgorKyAgICAgICAgKHJ4OjpWZXJ0ZXhBcnJheVZrOjpoYW5kbGVMaW5lTG9vcEluZGlyZWN0
KToKKysgICAgICAgIChyeDo6VmVydGV4QXJyYXlWazo6Y29udmVydFZlcnRleEJ1ZmZlckNQVSk6
CisrICAgICAgICAocng6OlZlcnRleEFycmF5Vms6OnN5bmNEaXJ0eUF0dHJpYik6CisrICAgICAg
ICAocng6OlZlcnRleEFycmF5Vms6OnVwZGF0ZVN0cmVhbWVkQXR0cmlicyk6CisrICAgICAgICAo
cng6OlZlcnRleEFycmF5Vms6OnVwZGF0ZURlZmF1bHRBdHRyaWIpOgorKyAgICAgICAgKHJ4OjpW
ZXJ0ZXhBcnJheVZrOjp1cGRhdGVDbGllbnRBdHRyaWJzKTogRGVsZXRlZC4KKysgICAgICAgICog
c3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9WZXJ0ZXhBcnJheVZrLmg6CisrICAgICAgICAo
cng6OlZlcnRleEFycmF5Vms6OmdldFN0cmVhbWluZ1ZlcnRleEF0dHJpYnNNYXNrIGNvbnN0KToK
KysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9hbmRyb2lkL0hhcmR3YXJl
QnVmZmVySW1hZ2VTaWJsaW5nVmtBbmRyb2lkLmNwcDoKKysgICAgICAgIChyeDo6SGFyZHdhcmVC
dWZmZXJJbWFnZVNpYmxpbmdWa0FuZHJvaWQ6OmluaXRJbXBsKToKKysgICAgICAgIChyeDo6SGFy
ZHdhcmVCdWZmZXJJbWFnZVNpYmxpbmdWa0FuZHJvaWQ6OnJlbGVhc2UpOgorKyAgICAgICAgKiBz
cmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL2FuZHJvaWQvSGFyZHdhcmVCdWZmZXJJbWFnZVNp
YmxpbmdWa0FuZHJvaWQuaDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGth
bi9kb2MvRmFzdE9wZW5HTFN0YXRlVHJhbnNpdGlvbnMubWQ6CisrICAgICAgICAqIHNyYy9saWJB
TkdMRS9yZW5kZXJlci92dWxrYW4vZG9jL0Zvcm1hdFRhYmxlc0FuZEVtdWxhdGlvbi5tZDoKKysg
ICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9kb2MvT3BlbkdMTGluZVNlZ21l
bnRSYXN0ZXJpemF0aW9uLm1kOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVs
a2FuL2RvYy9TaGFkZXJNb2R1bGVDb21waWxhdGlvbi5tZDoKKysgICAgICAgICogc3JjL2xpYkFO
R0xFL3JlbmRlcmVyL3Z1bGthbi9nZW5fdmtfaW50ZXJuYWxfc2hhZGVycy5weToKKysgICAgICAg
IChzaGFkZXJfcGF0aCk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4v
c2hhZGVycy9nZW4vQ29udmVydEluZGV4LmNvbXAuMDAwMDAwMDAuaW5jOgorKyAgICAgICAgKiBz
cmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL3NoYWRlcnMvZ2VuL0NvbnZlcnRJbmRleC5jb21w
LjAwMDAwMDAxLmluYzoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9z
aGFkZXJzL2dlbi9Db252ZXJ0VmVydGV4LmNvbXAuMDAwMDAwMDguaW5jOgorKyAgICAgICAgKiBz
cmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL3NoYWRlcnMvZ2VuL0NvbnZlcnRWZXJ0ZXguY29t
cC4wMDAwMDAwOS5pbmM6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4v
c2hhZGVycy9nZW4vQ29udmVydFZlcnRleC5jb21wLjAwMDAwMDE4LmluYzoKKysgICAgICAgICog
c3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9zaGFkZXJzL2dlbi9Db252ZXJ0VmVydGV4LmNv
bXAuMDAwMDAwMTkuaW5jOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2Fu
L3NoYWRlcnMvc3JjL0NvbnZlcnRJbmRleC5jb21wOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUv
cmVuZGVyZXIvdnVsa2FuL3NoYWRlcnMvc3JjL0NvbnZlcnRJbmRleC5jb21wLmpzb246CisrICAg
ICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vc2hhZGVycy9zcmMvQ29udmVydFZl
cnRleC5jb21wOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL3NoYWRl
cnMvc3JjL0NvbnZlcnRWZXJ0ZXguY29tcC5qc29uOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUv
cmVuZGVyZXIvdnVsa2FuL3ZrX2NhY2hlX3V0aWxzLmNwcDoKKysgICAgICAgIChyeDo6dms6Okdy
YXBoaWNzUGlwZWxpbmVEZXNjOjppbml0aWFsaXplUGlwZWxpbmUgY29uc3QpOgorKyAgICAgICAg
KHJ4Ojp2azo6R3JhcGhpY3NQaXBlbGluZURlc2M6OnVwZGF0ZVZlcnRleElucHV0KToKKysgICAg
ICAgIChyeDo6dms6OlBpcGVsaW5lTGF5b3V0RGVzYzo6dXBkYXRlUHVzaENvbnN0YW50UmFuZ2Up
OgorKyAgICAgICAgKHJ4OjpSZW5kZXJQYXNzQ2FjaGU6OmFkZFJlbmRlclBhc3MpOgorKyAgICAg
ICAgKHJ4OjpHcmFwaGljc1BpcGVsaW5lQ2FjaGU6OnJlbGVhc2UpOgorKyAgICAgICAgKHJ4OjpH
cmFwaGljc1BpcGVsaW5lQ2FjaGU6Omluc2VydFBpcGVsaW5lKToKKysgICAgICAgICogc3JjL2xp
YkFOR0xFL3JlbmRlcmVyL3Z1bGthbi92a19jYWNoZV91dGlscy5oOgorKyAgICAgICAgKiBzcmMv
bGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL3ZrX2NhcHNfdXRpbHMuY3BwOgorKyAgICAgICAgKHJ4
OjpSZW5kZXJlclZrOjplbnN1cmVDYXBzSW5pdGlhbGl6ZWQgY29uc3QpOgorKyAgICAgICAgKiBz
cmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL3ZrX2Zvcm1hdF9tYXAuanNvbjoKKysgICAgICAg
ICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi92a19mb3JtYXRfdGFibGVfYXV0b2dlbi5j
cHA6CisrICAgICAgICAocng6OnZrOjpGb3JtYXQ6OmluaXRpYWxpemUpOgorKyAgICAgICAgKiBz
cmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL3ZrX2Zvcm1hdF91dGlscy5jcHA6CisrICAgICAg
ICAocng6Ok1hcFN3aXp6bGVTdGF0ZSk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJl
ci92dWxrYW4vdmtfaGVscGVycy5jcHA6CisrICAgICAgICAocng6OnZrOjpEeW5hbWljQnVmZmVy
OjphbGxvY2F0ZSk6CisrICAgICAgICAocng6OnZrOjpEeW5hbWljQnVmZmVyOjpyZWxlYXNlQnVm
ZmVyTGlzdFRvUmVuZGVyZXIpOgorKyAgICAgICAgKHJ4Ojp2azo6RHluYW1pY0J1ZmZlcjo6cmVs
ZWFzZSk6CisrICAgICAgICAocng6OnZrOjpEeW5hbWljQnVmZmVyOjpyZWxlYXNlSW5GbGlnaHRC
dWZmZXJzKToKKysgICAgICAgIChyeDo6dms6OkRlc2NyaXB0b3JQb29sSGVscGVyOjpyZWxlYXNl
KToKKysgICAgICAgIChyeDo6dms6OkxpbmVMb29wSGVscGVyOjpMaW5lTG9vcEhlbHBlcik6Cisr
ICAgICAgICAocng6OnZrOjpMaW5lTG9vcEhlbHBlcjo6c3RyZWFtSW5kaWNlc0luZGlyZWN0KToK
KysgICAgICAgIChyeDo6dms6OkxpbmVMb29wSGVscGVyOjpyZWxlYXNlKToKKysgICAgICAgIChy
eDo6dms6OkxpbmVMb29wSGVscGVyOjpkZXN0cm95KToKKysgICAgICAgIChyeDo6dms6OkJ1ZmZl
ckhlbHBlcjo6aW5pdCk6CisrICAgICAgICAocng6OnZrOjpCdWZmZXJIZWxwZXI6OnJlbGVhc2Up
OgorKyAgICAgICAgKHJ4Ojp2azo6SW1hZ2VIZWxwZXI6OkltYWdlSGVscGVyKToKKysgICAgICAg
IChyeDo6dms6OkltYWdlSGVscGVyOjppbml0KToKKysgICAgICAgIChyeDo6dms6OkltYWdlSGVs
cGVyOjppbml0RXh0ZXJuYWwpOgorKyAgICAgICAgKHJ4Ojp2azo6SW1hZ2VIZWxwZXI6OnJlbGVh
c2VJbWFnZSk6CisrICAgICAgICAocng6OnZrOjpJbWFnZUhlbHBlcjo6cmVsZWFzZVN0YWdpbmdC
dWZmZXIpOgorKyAgICAgICAgKHJ4Ojp2azo6SW1hZ2VIZWxwZXI6OmRlc3Ryb3kpOgorKyAgICAg
ICAgKHJ4Ojp2azo6SW1hZ2VIZWxwZXI6OmdldEJhc2VMZXZlbCk6CisrICAgICAgICAocng6OnZr
OjpJbWFnZUhlbHBlcjo6c2V0QmFzZUFuZE1heExldmVscyk6CisrICAgICAgICAocng6OnZrOjpJ
bWFnZUhlbHBlcjo6Z2VuZXJhdGVNaXBtYXBzV2l0aEJsaXQpOgorKyAgICAgICAgKHJ4Ojp2azo6
SW1hZ2VIZWxwZXI6OnJlbW92ZVN0YWdlZFVwZGF0ZXMpOgorKyAgICAgICAgKHJ4Ojp2azo6SW1h
Z2VIZWxwZXI6OnN0YWdlU3VicmVzb3VyY2VVcGRhdGUpOgorKyAgICAgICAgKHJ4Ojp2azo6SW1h
Z2VIZWxwZXI6OnN0YWdlU3VicmVzb3VyY2VVcGRhdGVBbmRHZXREYXRhKToKKysgICAgICAgIChy
eDo6dms6OkltYWdlSGVscGVyOjpzdGFnZVN1YnJlc291cmNlVXBkYXRlRnJvbUJ1ZmZlcik6Cisr
ICAgICAgICAocng6OnZrOjpJbWFnZUhlbHBlcjo6c3RhZ2VTdWJyZXNvdXJjZVVwZGF0ZUZyb21G
cmFtZWJ1ZmZlcik6CisrICAgICAgICAocng6OnZrOjpJbWFnZUhlbHBlcjo6YWxsb2NhdGVTdGFn
aW5nTWVtb3J5KToKKysgICAgICAgIChyeDo6dms6OkltYWdlSGVscGVyOjpmbHVzaFN0YWdlZFVw
ZGF0ZXMpOgorKyAgICAgICAgKHJ4Ojp2azo6SW1hZ2VIZWxwZXI6OmlzVXBkYXRlU3RhZ2VkKToK
KysgICAgICAgIChyeDo6dms6OkltYWdlSGVscGVyOjpTdWJyZXNvdXJjZVVwZGF0ZTo6U3VicmVz
b3VyY2VVcGRhdGUpOgorKyAgICAgICAgKHJ4Ojp2azo6SW1hZ2VIZWxwZXI6OlN1YnJlc291cmNl
VXBkYXRlOjpyZWxlYXNlKToKKysgICAgICAgIChyeDo6dms6OkZyYW1lYnVmZmVySGVscGVyOjpy
ZWxlYXNlKToKKysgICAgICAgIChyeDo6dms6OlNoYWRlclByb2dyYW1IZWxwZXI6OnJlbGVhc2Up
OgorKyAgICAgICAgKHJ4Ojp2azo6RHluYW1pY0J1ZmZlcjo6cmVsZWFzZUJ1ZmZlckxpc3RUb0Nv
bnRleHQpOiBEZWxldGVkLgorKyAgICAgICAgKHJ4Ojp2azo6RHluYW1pY0J1ZmZlcjo6cmVsZWFz
ZUJ1ZmZlckxpc3RUb0Rpc3BsYXkpOiBEZWxldGVkLgorKyAgICAgICAgKHJ4Ojp2azo6SW1hZ2VI
ZWxwZXI6OmR1bXBSZXNvdXJjZXMpOiBEZWxldGVkLgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUv
cmVuZGVyZXIvdnVsa2FuL3ZrX2hlbHBlcnMuaDoKKysgICAgICAgIChyeDo6dms6OlNoYWRlclBy
b2dyYW1IZWxwZXI6OmdldFNoYWRlcik6CisrICAgICAgICAocng6OnZrOjpTaGFkZXJQcm9ncmFt
SGVscGVyOjpnZXRHcmFwaGljc1BpcGVsaW5lKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3Jl
bmRlcmVyL3Z1bGthbi92a19pbnRlcm5hbF9zaGFkZXJzX2F1dG9nZW4uY3BwOgorKyAgICAgICAg
KHJ4Ojp2azo6U2hhZGVyTGlicmFyeTo6ZGVzdHJveSk6CisrICAgICAgICAocng6OnZrOjpTaGFk
ZXJMaWJyYXJ5OjpnZXRDb252ZXJ0SW5kZXhJbmRpcmVjdExpbmVMb29wX2NvbXApOgorKyAgICAg
ICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL3ZrX2ludGVybmFsX3NoYWRlcnNfYXV0
b2dlbi5nbmk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vdmtfaW50
ZXJuYWxfc2hhZGVyc19hdXRvZ2VuLmg6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJl
ci92dWxrYW4vdmtfdXRpbHMuY3BwOgorKyAgICAgICAgKHJ4OjpIYXNLaHJvbm9zVmFsaWRhdGlv
bkxheWVyKToKKysgICAgICAgIChyeDo6SGFzU3RhbmRhcmRWYWxpZGF0aW9uTGF5ZXIpOgorKyAg
ICAgICAgKHJ4OjpHZXRBdmFpbGFibGVWYWxpZGF0aW9uTGF5ZXJzKToKKysgICAgICAgIChyeDo6
dms6OlN0YWdpbmdCdWZmZXI6OmluaXQpOgorKyAgICAgICAgKHJ4Ojp2azo6U3RhZ2luZ0J1ZmZl
cjo6cmVsZWFzZSk6CisrICAgICAgICAocng6OnZrOjpHYXJiYWdlT2JqZWN0OjpHYXJiYWdlT2Jq
ZWN0KToKKysgICAgICAgIChyeDo6dms6OkdhcmJhZ2VPYmplY3Q6Om9wZXJhdG9yPSk6CisrICAg
ICAgICAocng6OnZrOjpHYXJiYWdlT2JqZWN0OjpkZXN0cm95KToKKysgICAgICAgIChyeDo6Z2xf
dms6OkdldFNhbXBsZXJNaXBtYXBNb2RlKToKKysgICAgICAgIChyeDo6dms6OlN0YWdpbmdCdWZm
ZXI6OmR1bXBSZXNvdXJjZXMpOiBEZWxldGVkLgorKyAgICAgICAgKHJ4Ojp2azo6R2FyYmFnZU9i
amVjdEJhc2U6OkdhcmJhZ2VPYmplY3RCYXNlKTogRGVsZXRlZC4KKysgICAgICAgIChyeDo6dms6
OkdhcmJhZ2VPYmplY3RCYXNlOjpkZXN0cm95KTogRGVsZXRlZC4KKysgICAgICAgIChyeDo6dms6
OkdhcmJhZ2VPYmplY3Q6OmRlc3Ryb3lJZkNvbXBsZXRlKTogRGVsZXRlZC4KKysgICAgICAgICog
c3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi92a191dGlscy5oOgorKyAgICAgICAgKHJ4Ojp2
azo6R2FyYmFnZU9iamVjdDo6dmFsaWQgY29uc3QpOgorKyAgICAgICAgKHJ4Ojp2azo6R2FyYmFn
ZU9iamVjdDo6R2V0KToKKysgICAgICAgIChyeDo6dms6OkdldEdhcmJhZ2UpOgorKyAgICAgICAg
KHJ4Ojp2azo6R2FyYmFnZU9iamVjdEJhc2U6OkdhcmJhZ2VPYmplY3RCYXNlKTogRGVsZXRlZC4K
KysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi92a193cmFwcGVyLmg6Cisr
ICAgICAgICAocng6OnZrOjpXcmFwcGVkT2JqZWN0OjpnZXRIYW5kbGUgY29uc3QpOgorKyAgICAg
ICAgKHJ4Ojp2azo6V3JhcHBlZE9iamVjdDo6dmFsaWQgY29uc3QpOgorKyAgICAgICAgKHJ4Ojp2
azo6V3JhcHBlZE9iamVjdDo6cHRyIGNvbnN0KToKKysgICAgICAgIChyeDo6dms6OldyYXBwZWRP
YmplY3Q6OnJlbGVhc2UpOgorKyAgICAgICAgKHJ4Ojp2azo6V3JhcHBlZE9iamVjdDo6V3JhcHBl
ZE9iamVjdCk6CisrICAgICAgICAocng6OnZrOjpXcmFwcGVkT2JqZWN0Ojp+V3JhcHBlZE9iamVj
dCk6CisrICAgICAgICAocng6OnZrOjpXcmFwcGVkT2JqZWN0OjpvcGVyYXRvcj0pOgorKyAgICAg
ICAgKHJ4Ojp2azo6cHJpdjo6Q29tbWFuZEJ1ZmZlcjo6U3VwcG9ydHNRdWVyaWVzKToKKysgICAg
ICAgIChyeDo6dms6OnByaXY6OkNvbW1hbmRCdWZmZXI6OmdldE1lbW9yeVVzYWdlU3RhdHMgY29u
c3QpOgorKyAgICAgICAgKHJ4Ojp2azo6cHJpdjo6Q29tbWFuZEJ1ZmZlcjo6ZHJhd0luZGV4ZWRJ
bmRpcmVjdCk6CisrICAgICAgICAocng6OnZrOjpwcml2OjpDb21tYW5kQnVmZmVyOjpkcmF3SW5k
aXJlY3QpOgorKyAgICAgICAgKHJ4Ojp2azo6V3JhcHBlZE9iamVjdDo6ZHVtcFJlc291cmNlcyk6
IERlbGV0ZWQuCisrICAgICAgICAocng6OnZrOjpwcml2OjpDb21tYW5kQnVmZmVyOjpnZXRNZW1v
cnlVc2FnZVN0YXRzKTogRGVsZXRlZC4KKysgICAgICAgICogc3JjL2xpYkFOR0xFL3ZhbGlkYXRp
b25FR0wuY3BwOgorKyAgICAgICAgKGVnbDo6VmFsaWRhdGVDcmVhdGVDb250ZXh0KToKKysgICAg
ICAgIChlZ2w6OlZhbGlkYXRlTWFrZUN1cnJlbnQpOgorKyAgICAgICAgKGVnbDo6VmFsaWRhdGVD
b21wYXRpYmxlU3VyZmFjZSk6CisrICAgICAgICAoZWdsOjpWYWxpZGF0ZVN0cmVhbUNvbnN1bWVy
R0xUZXh0dXJlRXh0ZXJuYWxLSFIpOgorKyAgICAgICAgKGVnbDo6VmFsaWRhdGVTdHJlYW1Db25z
dW1lckdMVGV4dHVyZUV4dGVybmFsQXR0cmlic05WKToKKysgICAgICAgIChlZ2w6OlZhbGlkYXRl
UXVlcnlTdHJpbmdpQU5HTEUpOgorKyAgICAgICAgKGVnbDo6VmFsaWRhdGVDb21wYXRpYmxlQ29u
Zmlncyk6IERlbGV0ZWQuCisrICAgICAgICAqIHNyYy9saWJBTkdMRS92YWxpZGF0aW9uRUdMLmg6
CisrICAgICAgICAqIHNyYy9saWJBTkdMRS92YWxpZGF0aW9uRVMuY3BwOgorKyAgICAgICAgKGds
OjpWYWxpZGF0ZVJlbmRlcmJ1ZmZlclN0b3JhZ2VQYXJhbWV0ZXJzQmFzZSk6CisrICAgICAgICAo
Z2w6OlZhbGlkYXRlVGV4U3RvcmFnZU11bHRpc2FtcGxlKToKKysgICAgICAgICogc3JjL2xpYkFO
R0xFL3ZhbGlkYXRpb25FUy5oOgorKyAgICAgICAgKGdsOjpWYWxpZGF0ZVZlcnRleEZvcm1hdCk6
CisrICAgICAgICAqIHNyYy9saWJBTkdMRS92YWxpZGF0aW9uRVMyLmNwcDoKKysgICAgICAgIChn
bDo6VmFsaWRhdGVFUzJUZXhTdG9yYWdlUGFyYW1ldGVycyk6CisrICAgICAgICAqIHNyYy9saWJB
TkdMRS92YWxpZGF0aW9uRVMzLmNwcDoKKysgICAgICAgIChnbDo6VmFsaWRhdGVFUzNUZXhTdG9y
YWdlUGFyYW1ldGVyc0Jhc2UpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvdmFsaWRhdGlvbkVT
MzEuY3BwOgorKyAgICAgICAgKGdsOjplcnI6OlZhbGlkYXRlUHJvZ3JhbVJlc291cmNlSW5kZXgp
OgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyLmduaToKKysgICAgICAgICogc3JjL2xpYkdMRVN2
Mi9lbnRyeV9wb2ludHNfZWdsX2V4dC5jcHA6CisrICAgICAgICAqIHNyYy90ZXN0cy9CVUlMRC5n
bjoKKysgICAgICAgICogc3JjL3Rlc3RzL2FuZ2xlX2RlcXBfdGVzdHNfbWFpbi5jcHA6CisrICAg
ICAgICAobWFpbik6CisrICAgICAgICAqIHNyYy90ZXN0cy9hbmdsZV9lbmQyZW5kX3Rlc3RzLmdu
aToKKysgICAgICAgICogc3JjL3Rlc3RzL2NvbXBpbGVyX3Rlc3RzL0RlYnVnU2hhZGVyUHJlY2lz
aW9uX3Rlc3QuY3BwOgorKyAgICAgICAgKFRFU1RfRik6CisrICAgICAgICAqIHNyYy90ZXN0cy9j
b21waWxlcl90ZXN0cy9JbW11dGFibGVTdHJpbmdfdGVzdF9FU1NMX2F1dG9nZW4uY3BwOgorKyAg
ICAgICAgKHNoOjpURVNUKToKKysgICAgICAgICogc3JjL3Rlc3RzL2NvbXBpbGVyX3Rlc3RzL0lt
bXV0YWJsZVN0cmluZ190ZXN0X2F1dG9nZW4uY3BwOgorKyAgICAgICAgKHNoOjpURVNUKToKKysg
ICAgICAgICogc3JjL3Rlc3RzL2NvbXBpbGVyX3Rlc3RzL1F1YWxpZmljYXRpb25PcmRlcl90ZXN0
LmNwcDoKKysgICAgICAgIChURVNUX0YpOgorKyAgICAgICAgKiBzcmMvdGVzdHMvZGVxcF9zdXBw
b3J0L2FuZ2xlX2RlcXBfZ3Rlc3QuY3BwOgorKyAgICAgICAgKGFuZ2xlOjpJbml0VGVzdEhhcm5l
c3MpOgorKyAgICAgICAgKiBzcmMvdGVzdHMvZGVxcF9zdXBwb3J0L2FuZ2xlX2RlcXBfbGlidGVz
dGVyX21haW4uY3BwOgorKyAgICAgICAgKiBzcmMvdGVzdHMvZGVxcF9zdXBwb3J0L2RlcXBfZWds
X1Rlc3RFeHBlY3RhdGlvbnM6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy90ZXN0cy9kZXFwX3N1
cHBvcnQvZGVxcF9nbGVzMl9UZXN0RXhwZWN0YXRpb25zOiBSZW1vdmVkLgorKyAgICAgICAgKiBz
cmMvdGVzdHMvZGVxcF9zdXBwb3J0L2RlcXBfZ2xlczMxX1Rlc3RFeHBlY3RhdGlvbnM6IFJlbW92
ZWQuCisrICAgICAgICAqIHNyYy90ZXN0cy9kZXFwX3N1cHBvcnQvZGVxcF9nbGVzM19UZXN0RXhw
ZWN0YXRpb25zOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvdGVzdHMvZGVxcF9zdXBwb3J0L2Rl
cXBfa2hyX2dsZXMyX1Rlc3RFeHBlY3RhdGlvbnM6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy90
ZXN0cy9kZXFwX3N1cHBvcnQvZGVxcF9raHJfZ2xlczMxX1Rlc3RFeHBlY3RhdGlvbnM6IFJlbW92
ZWQuCisrICAgICAgICAqIHNyYy90ZXN0cy9kZXFwX3N1cHBvcnQvZGVxcF9raHJfZ2xlczNfVGVz
dEV4cGVjdGF0aW9uczogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL3Rlc3RzL2RlcXBfc3VwcG9y
dC90Y3VBTkdMRU5hdGl2ZURpc3BsYXlGYWN0b3J5LmNwcDoKKysgICAgICAgICogc3JjL3Rlc3Rz
L2RlcXBfc3VwcG9ydC90Y3VBTkdMRVBsYXRmb3JtLmNwcDoKKysgICAgICAgICh0Y3U6OkFOR0xF
UGxhdGZvcm06OkFOR0xFUGxhdGZvcm0pOgorKyAgICAgICAgKiBzcmMvdGVzdHMvZGVxcF9zdXBw
b3J0L3RlczMxQ29udGV4dF9vdmVycmlkZS5jcHA6CisrICAgICAgICAoZGVxcDo6Z2xlczMxOjpD
b250ZXh0OjpDb250ZXh0KToKKysgICAgICAgIChkZXFwOjpnbGVzMzE6OkNvbnRleHQ6On5Db250
ZXh0KToKKysgICAgICAgIChkZXFwOjpnbGVzMzE6OkNvbnRleHQ6OmNyZWF0ZVJlbmRlckNvbnRl
eHQpOgorKyAgICAgICAgKGRlcXA6OmdsZXMzMTo6Q29udGV4dDo6ZGVzdHJveVJlbmRlckNvbnRl
eHQpOgorKyAgICAgICAgKGRlcXA6OmdsZXMzMTo6Q29udGV4dDo6Z2V0UmVuZGVyVGFyZ2V0IGNv
bnN0KToKKysgICAgICAgICogc3JjL3Rlc3RzL2VnbF90ZXN0cy9FR0xEZXZpY2VDR0xUZXN0LmNw
cDogQWRkZWQuCisrICAgICAgICAoRUdMRGV2aWNlQ0dMUXVlcnlUZXN0OjpFR0xEZXZpY2VDR0xR
dWVyeVRlc3QpOgorKyAgICAgICAgKFRFU1RfUCk6CisrICAgICAgICAqIHNyYy90ZXN0cy9lZ2xf
dGVzdHMvRUdMRGlyZWN0Q29tcG9zaXRpb25UZXN0LmNwcDoKKysgICAgICAgICogc3JjL3Rlc3Rz
L2VnbF90ZXN0cy9FR0xGZWF0dXJlQ29udHJvbFRlc3QuY3BwOgorKyAgICAgICAgKFRFU1RfUCk6
CisrICAgICAgICAqIHNyYy90ZXN0cy9lZ2xfdGVzdHMvRUdMTm9Db25maWdDb250ZXh0VGVzdC5j
cHA6IEFkZGVkLgorKyAgICAgICAgKEVHTE5vQ29uZmlnQ29udGV4dFRlc3Q6OkVHTE5vQ29uZmln
Q29udGV4dFRlc3QpOgorKyAgICAgICAgKFRFU1RfUCk6CisrICAgICAgICAqIHNyYy90ZXN0cy9n
bF90ZXN0cy9CbGVuZEZ1bmNFeHRlbmRlZFRlc3QuY3BwOgorKyAgICAgICAgKGFuZ2xlOjpFWFRC
bGVuZEZ1bmNFeHRlbmRlZERyYXdUZXN0RVMzOjpMaW5rUHJvZ3JhbSk6CisrICAgICAgICAqIHNy
Yy90ZXN0cy9nbF90ZXN0cy9Db21wdXRlU2hhZGVyVGVzdC5jcHA6CisrICAgICAgICAqIHNyYy90
ZXN0cy9nbF90ZXN0cy9Db3B5VGV4SW1hZ2VUZXN0LmNwcDoKKysgICAgICAgIChhbmdsZTo6VEVT
VF9QKToKKysgICAgICAgICogc3JjL3Rlc3RzL2dsX3Rlc3RzL0NvcHlUZXh0dXJlVGVzdC5jcHA6
CisrICAgICAgICAoYW5nbGU6OkNvcHlUZXh0dXJlVmFyaWF0aW9uc1Rlc3Q6OmluaXRpYWxpemVT
b3VyY2VUZXh0dXJlKToKKysgICAgICAgIChhbmdsZTo6Q29weVRleHR1cmVWYXJpYXRpb25zVGVz
dDo6dGVzdENvcHlUZXh0dXJlKToKKysgICAgICAgIChhbmdsZTo6Q29weVRleHR1cmVWYXJpYXRp
b25zVGVzdDo6dGVzdENvcHlTdWJUZXh0dXJlKToKKysgICAgICAgIChhbmdsZTo6VEVTVF9QKToK
KysgICAgICAgICogc3JjL3Rlc3RzL2dsX3Rlc3RzL0RyYXdCYXNlVmVydGV4QmFzZUluc3RhbmNl
VGVzdC5jcHA6CisrICAgICAgICAoYW5nbGU6OkRyYXdCYXNlVmVydGV4QmFzZUluc3RhbmNlVGVz
dDo6RHJhd0Jhc2VWZXJ0ZXhCYXNlSW5zdGFuY2VUZXN0KToKKysgICAgICAgIChhbmdsZTo6RHJh
d0Jhc2VWZXJ0ZXhCYXNlSW5zdGFuY2VUZXN0Ojp2ZXJ0ZXhTaGFkZXJTb3VyY2UzMDApOgorKyAg
ICAgICAgKiBzcmMvdGVzdHMvZ2xfdGVzdHMvRnJhbWVidWZmZXJUZXN0LmNwcDoKKysgICAgICAg
IChURVNUX1ApOgorKyAgICAgICAgKiBzcmMvdGVzdHMvZ2xfdGVzdHMvR0xTTFRlc3QuY3BwOgor
KyAgICAgICAgKiBzcmMvdGVzdHMvZ2xfdGVzdHMvSW5kZXhCdWZmZXJPZmZzZXRUZXN0LmNwcDoK
KysgICAgICAgICogc3JjL3Rlc3RzL2dsX3Rlc3RzL0luc3RhbmNpbmdUZXN0LmNwcDoKKysgICAg
ICAgICogc3JjL3Rlc3RzL2dsX3Rlc3RzL0xpbmVMb29wVGVzdC5jcHA6CisrICAgICAgICAoTGlu
ZUxvb3BUZXN0OjpjaGVja1BpeGVscyk6CisrICAgICAgICAoTGluZUxvb3BUZXN0OjpydW5UZXN0
KToKKysgICAgICAgIChMaW5lTG9vcEluZGlyZWN0VGVzdDo6cnVuVGVzdCk6CisrICAgICAgICAo
VEVTVF9QKToKKysgICAgICAgICogc3JjL3Rlc3RzL2dsX3Rlc3RzL0xpbmtBbmRSZWxpbmtUZXN0
LmNwcDoKKysgICAgICAgIChhbmdsZTo6VEVTVF9QKToKKysgICAgICAgICogc3JjL3Rlc3RzL2ds
X3Rlc3RzL01pcG1hcFRlc3QuY3BwOgorKyAgICAgICAgKiBzcmMvdGVzdHMvZ2xfdGVzdHMvT2Nj
bHVzaW9uUXVlcmllc1Rlc3QuY3BwOgorKyAgICAgICAgKiBzcmMvdGVzdHMvZ2xfdGVzdHMvUGFy
YWxsZWxTaGFkZXJDb21waWxlVGVzdC5jcHA6CisrICAgICAgICAoYW5nbGU6OlBhcmFsbGVsU2hh
ZGVyQ29tcGlsZVRlc3Q6OlRhc2tSdW5uZXI6OnJ1bik6CisrICAgICAgICAqIHNyYy90ZXN0cy9n
bF90ZXN0cy9Qcm9ncmFtSW50ZXJmYWNlVGVzdC5jcHA6CisrICAgICAgICAqIHNyYy90ZXN0cy9n
bF90ZXN0cy9TaW1wbGVPcGVyYXRpb25UZXN0LmNwcDoKKysgICAgICAgICogc3JjL3Rlc3RzL2ds
X3Rlc3RzL1N0YXRlQ2hhbmdlVGVzdC5jcHA6CisrICAgICAgICAqIHNyYy90ZXN0cy9nbF90ZXN0
cy9UZXh0dXJlVGVzdC5jcHA6CisrICAgICAgICAoYW5nbGU6OlNsaWNlRm9ybWF0Q29sb3IpOgor
KyAgICAgICAgKGFuZ2xlOjpTbGljZUZvcm1hdENvbG9yMzJGKToKKysgICAgICAgICogc3JjL3Rl
c3RzL2dsX3Rlc3RzL1RpbWVyUXVlcmllc1Rlc3QuY3BwOgorKyAgICAgICAgKiBzcmMvdGVzdHMv
Z2xfdGVzdHMvVW5pZm9ybUJ1ZmZlclRlc3QuY3BwOgorKyAgICAgICAgKiBzcmMvdGVzdHMvZ2xf
dGVzdHMvVmVydGV4QXR0cmlidXRlVGVzdC5jcHA6CisrICAgICAgICAoYW5nbGU6OlR5cGVTdHJp
ZGUpOgorKyAgICAgICAgKGFuZ2xlOjpOb3JtYWxpemUxMCk6CisrICAgICAgICAoYW5nbGU6Ok5v
cm1hbGl6ZTIpOgorKyAgICAgICAgKGFuZ2xlOjpQYWNrMTAxMDEwMik6CisrICAgICAgICAoYW5n
bGU6OlZlcnRleEF0dHJpYnV0ZVRlc3Q6OmNoZWNrUGl4ZWxzKToKKysgICAgICAgIChhbmdsZTo6
VmVydGV4QXR0cmlidXRlVGVzdDo6Y2hlY2tSR0JQaXhlbHMpOgorKyAgICAgICAgKGFuZ2xlOjpW
ZXJ0ZXhBdHRyaWJ1dGVUZXN0OjpydW5UZXN0KToKKysgICAgICAgIChhbmdsZTo6VEVTVF9QKToK
KysgICAgICAgICogc3JjL3Rlc3RzL2dsZXMxX2NvbmZvcm1hbmNlX3Rlc3RzL0NvbmZvcm1hbmNl
VGVzdHMuY3BwOgorKyAgICAgICAgKGFuZ2xlOjpURVNUX1ApOgorKyAgICAgICAgKiBzcmMvdGVz
dHMvcGVyZl90ZXN0cy9BTkdMRVBlcmZUZXN0LmNwcDoKKysgICAgICAgICogc3JjL3Rlc3RzL3Bl
cmZfdGVzdHMvRHJhd0NhbGxQZXJmLmNwcDoKKysgICAgICAgIChhbmdsZTo6RHJhd0FycmF5c1Bl
cmZQYXJhbXM6OkRyYXdBcnJheXNQZXJmUGFyYW1zKTogRGVsZXRlZC4KKysgICAgICAgIChhbmds
ZTo6RHJhd0FycmF5c1BlcmZQYXJhbXM6OnN0b3J5IGNvbnN0KTogRGVsZXRlZC4KKysgICAgICAg
IChhbmdsZTo6b3BlcmF0b3I8PCk6IERlbGV0ZWQuCisrICAgICAgICAoYW5nbGU6OkNyZWF0ZVNp
bXBsZVRleHR1cmUyRCk6IERlbGV0ZWQuCisrICAgICAgICAoYW5nbGU6OkRyYXdDYWxsUGVyZkJl
bmNobWFyazo6RHJhd0NhbGxQZXJmQmVuY2htYXJrKTogRGVsZXRlZC4KKysgICAgICAgIChhbmds
ZTo6RHJhd0NhbGxQZXJmQmVuY2htYXJrOjppbml0aWFsaXplQmVuY2htYXJrKTogRGVsZXRlZC4K
KysgICAgICAgICgpOiBEZWxldGVkLgorKyAgICAgICAgKiBzcmMvdGVzdHMvcGVyZl90ZXN0cy9F
R0xNYWtlQ3VycmVudFBlcmYuY3BwOgorKyAgICAgICAgKiBzcmMvdGVzdHMvcGVyZl90ZXN0cy9M
aW5rUHJvZ3JhbVBlcmZUZXN0LmNwcDoKKysgICAgICAgIChhbmdsZTo6VEVTVF9QKToKKysgICAg
ICAgICogc3JjL3Rlc3RzL3BlcmZfdGVzdHMvTXVsdGl2aWV3UGVyZi5jcHA6CisrICAgICAgICAo
YW5nbGU6Ok11bHRpdmlld0NQVUJvdW5kQmVuY2htYXJrOjppbml0aWFsaXplQmVuY2htYXJrKToK
KysgICAgICAgIChhbmdsZTo6TXVsdGl2aWV3R1BVQm91bmRCZW5jaG1hcms6OmluaXRpYWxpemVC
ZW5jaG1hcmspOgorKyAgICAgICAgKGFuZ2xlOjpURVNUX1ApOgorKyAgICAgICAgKiBzcmMvdGVz
dHMvcGVyZl90ZXN0cy9Vbmlmb3Jtc1BlcmYuY3BwOgorKyAgICAgICAgKFRFU1RfUCk6CisrICAg
ICAgICAqIHNyYy90ZXN0cy9wZXJmX3Rlc3RzL1Z1bGthblBpcGVsaW5lQ2FjaGVQZXJmLmNwcDoK
KysgICAgICAgIChyeDo6VnVsa2FuUGlwZWxpbmVDYWNoZVBlcmZUZXN0OjpzdGVwKToKKysgICAg
ICAgICogc3JjL3Rlc3RzL3BlcmZfdGVzdHMvZ2xtYXJrMkJlbmNobWFyay5jcHA6CisrICAgICAg
ICAqIHNyYy90ZXN0cy90ZXN0X2V4cGVjdGF0aW9ucy9HUFVUZXN0Q29uZmlnLmNwcDoKKysgICAg
ICAgIChhbmdsZTo6R1BVVGVzdENvbmZpZzo6R1BVVGVzdENvbmZpZyk6CisrICAgICAgICAqIHNy
Yy90ZXN0cy90ZXN0X2V4cGVjdGF0aW9ucy9HUFVUZXN0Q29uZmlnLmg6CisrICAgICAgICAqIHNy
Yy90ZXN0cy90ZXN0X2V4cGVjdGF0aW9ucy9HUFVUZXN0RXhwZWN0YXRpb25zUGFyc2VyLmNwcDoK
KysgICAgICAgIChhbmdsZTo6R1BVVGVzdEV4cGVjdGF0aW9uc1BhcnNlcjo6cGFyc2VMaW5lKToK
KysgICAgICAgICogc3JjL3Rlc3RzL3Rlc3RfdXRpbHMvQU5HTEVUZXN0LmNwcDoKKysgICAgICAg
ICogc3JjL3Rlc3RzL3Rlc3RfdXRpbHMvQU5HTEVUZXN0Lmg6CisrICAgICAgICAqIHNyYy90ZXN0
cy90ZXN0X3V0aWxzL2FuZ2xlX3Rlc3RfY29uZmlncy5jcHA6CisrICAgICAgICAoYW5nbGU6OlBs
YXRmb3JtUGFyYW1ldGVyczo6aW5pdERlZmF1bHRQYXJhbWV0ZXJzKToKKysgICAgICAgIChhbmds
ZTo6b3BlcmF0b3I8PCk6CisrICAgICAgICAoYW5nbGU6OmVnbF9wbGF0Zm9ybTo6VlVMS0FOX1NX
SUZUU0hBREVSKToKKysgICAgICAgIChhbmdsZTo6RVMyX1ZVTEtBTl9TV0lGVFNIQURFUik6Cisr
ICAgICAgICAqIHNyYy90ZXN0cy90ZXN0X3V0aWxzL2FuZ2xlX3Rlc3RfY29uZmlncy5oOgorKyAg
ICAgICAgKiBzcmMvdGVzdHMvdGVzdF91dGlscy9hbmdsZV90ZXN0X2luc3RhbnRpYXRlLmNwcDoK
KysgICAgICAgIChhbmdsZTo6SXNXaW5kb3dzNyk6CisrICAgICAgICAqIHNyYy90ZXN0cy90ZXN0
X3V0aWxzL2FuZ2xlX3Rlc3RfaW5zdGFudGlhdGUuaDoKKysgICAgICAgICogc3JjL3RoaXJkX3Bh
cnR5L2NvbXBpbGVyL1JFQURNRS5jaHJvbWl1bToKKysgICAgICAgICogdGhpcmRfcGFydHkvdnVs
a2FuLWhlYWRlcnMvQlVJTEQuZ246IFJlbW92ZWQuCisrICAgICAgICAqIHRoaXJkX3BhcnR5L3Z1
bGthbi1oZWFkZXJzL3Z1bGthbl9oZWFkZXJzX3NjcmlwdF9kZXBzLmduaTogUmVtb3ZlZC4KKysg
ICAgICAgICogdGhpcmRfcGFydHkvdnVsa2FuLWxvYWRlci9CVUlMRC5nbjoKKysgICAgICAgICog
dGhpcmRfcGFydHkvdnVsa2FuLXRvb2xzL0JVSUxELmduOiBSZW1vdmVkLgorKyAgICAgICAgKiB0
aGlyZF9wYXJ0eS92dWxrYW4tdmFsaWRhdGlvbi1sYXllcnMvQlVJTEQuZ246IFJlbW92ZWQuCisr
ICAgICAgICAqIHRoaXJkX3BhcnR5L3Z1bGthbi12YWxpZGF0aW9uLWxheWVycy9kdW1teV9zcGly
dl90b29sc19jb21taXRfaWQuaDogUmVtb3ZlZC4KKysgICAgICAgICogdXRpbC9FR0xXaW5kb3cu
Y3BwOgorKyAgICAgICAgKiB1dGlsL2Z1Y2hzaWEvU2NlbmljV2luZG93LmNwcDoKKysgICAgICAg
IChTY2VuaWNXaW5kb3c6OnJlc2V0TmF0aXZlV2luZG93KToKKysgICAgICAgICogdXRpbC9wb3Np
eC9jcmFzaF9oYW5kbGVyX3Bvc2l4LmNwcDogUmVuYW1lZCBmcm9tIFNvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3V0aWwvcG9zaXgvUG9zaXhfY3Jhc2hfaGFuZGxlci5jcHAuCisrICAgICAgICAqIHV0
aWwvcG9zaXgvdGVzdF91dGlsc19wb3NpeC5jcHA6IFJlbmFtZWQgZnJvbSBTb3VyY2UvVGhpcmRQ
YXJ0eS9BTkdMRS91dGlsL3Bvc2l4L1Bvc2l4X3N5c3RlbV91dGlscy5jcHAuCisrICAgICAgICAq
IHV0aWwvdGVzdF91dGlscy5oOiBSZW5hbWVkIGZyb20gU291cmNlL1RoaXJkUGFydHkvQU5HTEUv
dXRpbC9zeXN0ZW1fdXRpbHMuaC4KKysgICAgICAgICogdXRpbC91dGlsLmduaToKKysgICAgICAg
ICogdXRpbC91dGlsX2dsLmg6CisrICAgICAgICAqIHV0aWwvd2luZG93cy9XR0xXaW5kb3cuY3Bw
OgorKyAgICAgICAgKiB1dGlsL3dpbmRvd3MvdGVzdF91dGlsc193aW4uY3BwOiBSZW5hbWVkIGZy
b20gU291cmNlL1RoaXJkUGFydHkvQU5HTEUvdXRpbC93aW5kb3dzL1dpbmRvd3Nfc3lzdGVtX3V0
aWxzLmNwcC4KKysgICAgICAgIChhbmdsZTo6UHJpbnRTdGFja0JhY2t0cmFjZSk6CisrICAgICAg
ICAqIHV0aWwvd2luZG93cy93aW4zMi90ZXN0X3V0aWxzX3dpbjMyLmNwcDogUmVuYW1lZCBmcm9t
IFNvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3V0aWwvd2luZG93cy93aW4zMi9XaW4zMl9zeXN0ZW1f
dXRpbHMuY3BwLgorKyAgICAgICAgKiB1dGlsL3gxMS9YMTFXaW5kb3cuY3BwOgorKworKzIwMTkt
MTAtMDEgIEZ1amlpIEhpcm9ub3JpICA8SGlyb25vcmkuRnVqaWlAc29ueS5jb20+CisrCisrICAg
ICAgICBbV2luQ2Fpcm9dW0NsYW5nXVtBTkdMRV0gZ2xvYmFsX3N0YXRlLmNwcCgzOSwxKTogZXJy
b3I6IHN0YXRpY19hc3NlcnQgZmFpbGVkIGR1ZSB0byByZXF1aXJlbWVudCAnc3RkOjppc190cml2
aWFsbHlfY29uc3RydWN0aWJsZTxzdGQ6OmF0b21pYzxzdGQ6Om11dGV4ICo+Pjo6dmFsdWUnICJn
bG9iYWwgbXV0ZXggaXMgbm90IHRyaXZpYWxseSBjb25zdHJ1Y3RpYmxlIgorKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwMTc1MQorKworKyAgICAgICAg
UmV2aWV3ZWQgYnkgQWxleCBDaHJpc3RlbnNlbi4KKysKKysgICAgICAgIENsYW5nLWNsIGNvdWxk
bid0IGNvbXBpbGUgdGhlIGxhdGVzdCBBTkdMRSB3aXRoIE1TIFNUTCBvd2luZyB0byBhCisrICAg
ICAgICBzdGF0aWNfYXNzZXJ0IGZhaWx1cmUuCisrCisrICAgICAgICBGaXggaXQgYnkgY2hlcnJp
LXBpY2tpbmcgdGhlIHVwc3RyZWFtIGZpeC4KKysgICAgICAgIDxodHRwczovL2Nocm9taXVtLmdv
b2dsZXNvdXJjZS5jb20vYW5nbGUvYW5nbGUvKy83NTU0MTdkZDc5MDcxZDYxNDljODE0MThlMTQw
NGIwYzYxZDE5NjcyPgorKworKyAgICAgICAgKiBBVVRIT1JTOgorKyAgICAgICAgKiBzcmMvY29t
bW9uL2FuZ2xldXRpbHMuaDoKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9nbG9iYWxfc3RhdGUu
Y3BwOgorKworKzIwMTktMDktMjQgIEFkcmlhbiBQZXJleiBkZSBDYXN0cm8gIDxhcGVyZXpAaWdh
bGlhLmNvbT4KKysKKysgICAgICAgIFtHVEtdIEFOR0xFJ3MgZWdscGxhdGZvcm0uaCBpcyBidWls
ZCBicm9rZW4gd2l0aCAtREVOQUJMRV9YMTFfUExBVEZPUk09T0ZGCisrICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk4NjIxCisrCisrICAgICAgICBSZXZp
ZXdlZCBieSBDYXJsb3MgR2FyY2lhIENhbXBvcy4KKysKKysgICAgICAgICogUGxhdGZvcm1HVEsu
Y21ha2U6IERlZmluZSBXTF9FR0xfUExBVEZPUk0gdG8gcHJlZmVyIFdheWxhbmQgdHlwZQorKyAg
ICAgICAgZGVmaW5pdGlvbnMgd2l0aCBFTkFCTEVfV0FZTEFORF9UQVJHRVQ9T04gYW5kIEVOQUJM
RV9YMTFfVEFSR0VUPU9GRgorKyAgICAgICAgdG8gYXZvaWQgQU5HTEUncyBlZ2xwbGF0Zm9ybS5o
IGZyb20gdHJ5aW5nIHRvIGluY2x1ZGUgdGhlIFgxMSBoZWFkZXJzLgorKworKzIwMTktMDktMTYg
IEphbWVzIERhcnBpbmlhbiAgPGpkYXJwaW5pYW5AY2hyb21pdW0ub3JnPgorKworKyAgICAgICAg
UmVtb3ZlIGNvbW1pdC5oIGNvcHlpbmcgYnVpbGQgc3RlcHMKKysgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDE3ODUKKysKKysgICAgICAgIFJldmlld2Vk
IGJ5IEFsZXggQ2hyaXN0ZW5zZW4uCisrCisrICAgICAgICAqIEFOR0xFLnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2o6IFJlbW92ZSBsZWZ0b3ZlciBidWlsZCBzdGVwCisrICAgICAgICAqIENNYWtl
TGlzdHMudHh0OiBSZW1vdmUgY29tbWl0LmggY29weWluZworKyAgICAgICAgKiBzcmMvY29tbW9u
L3ZlcnNpb24uaDogUmVzdG9yZSB0byB1cHN0cmVhbSB2ZXJzaW9uCisrICAgICAgICAqIHNyYy9p
ZC9jb21taXQuaDogQWRkZWQuCisrICAgICAgICAqIHVwZGF0ZS1hbmdsZS5zaDogQ29weSBjb21t
aXQuaCB0byBpZC9jb21taXQuaCBhdCBpbXBvcnQgdGltZQorKworKzIwMTktMDktMTIgIEphbWVz
IERhcnBpbmlhbiAgPGpkYXJwaW5pYW5AY2hyb21pdW0ub3JnPgorKworKyAgICAgICAgVXBkYXRl
IEFOR0xFCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MjAxMTU2CisrCisrICAgICAgICBSZXZpZXdlZCBieSBBbGV4IENocmlzdGVuc2VuLgorKworKyAg
ICAgICAgVXBkYXRlIHRvIDIwMTktOS05LCByZXZpc2lvbiA3OWFkMDQxMTkxMWIyZmM4NDgzNGMz
NzA1ZjU1NzA3YmU5ZTRiNDk4CisrICAgICAgICBJIG1lcmdlZCBhIGJ1bmNoIG9mIGNoYW5nZXMg
dG8gdXBzdHJlYW0gQU5HTEUsIHRvIG1pbmltaXplIHRoZSBjaGFuZ2VzCisrICAgICAgICBuZWNl
c3Nhcnkgd2hlbiB1cGRhdGluZyBBTkdMRSBpbiBXZWJLaXQuCisrCisrICAgICAgICAqIEFOR0xF
LnBsaXN0OiBVcGRhdGUgY29tbWl0IGhhc2hlcworKyAgICAgICAgKiBBTkdMRS50eHQ6IFJlbW92
ZWQgaW4gZmF2b3Igb2YgTElDRU5TRQorKyAgICAgICAgKiBBTkdMRS54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qOiBVcGRhdGVkIHdpdGggdXBzdHJlYW0gY2hhbmdlcworKyAgICAgICAgICBBbHNv
LCBjb3B5IHNyYy9jb21taXQuaCB0byBpZC9jb21taXQuaCBkdXJpbmcgYnVpbGQKKysgICAgICAg
ICogQ01ha2VMaXN0cy50eHQ6IFVwZGF0ZWQgd2l0aCB1cHN0cmVhbSBjaGFuZ2VzCisrICAgICAg
ICAgIEFsc28sIGNvcHkgc3JjL2NvbW1pdC5oIHRvIGlkL2NvbW1pdC5oIGR1cmluZyBidWlsZAor
KyAgICAgICAgKiBDb21waWxlci5jbWFrZTogVXBkYXRlZCB3aXRoIHVwc3RyZWFtIGNoYW5nZXMK
KysgICAgICAgICogR0xFU3YyLmNtYWtlOiBVcGRhdGVkIHdpdGggdXBzdHJlYW0gY2hhbmdlcwor
KyAgICAgICAgKiBhZGp1c3QtYW5nbGUtaW5jbHVkZS1wYXRocy1ydWxlOiBTdXBwb3J0ICIiIGFz
IHdlbGwgYXMgPD4gZm9yIGluY2x1ZGVzCisrICAgICAgICAqIGFkanVzdC1hbmdsZS1pbmNsdWRl
LXBhdGhzLnNoOiBTdXBwb3J0ICIiIGFzIHdlbGwgYXMgPD4gZm9yIGluY2x1ZGVzCisrICAgICAg
ICAqIGNoYW5nZXMuZGlmZjogUGFyZWQgZG93biB0byBqdXN0IGxlZ2FsIGRpc2NsYWltZXIgYW5k
IHdhcm5pbmcgZmxhZyBjaGFuZ2VzCisrICAgICAgICAqIHVwZGF0ZS1hbmdsZS5zaDogVXBkYXRl
IEFOR0xFLnBsaXN0CisrCisrICAgICAgICAqIE1hbnkgb3RoZXIgZmlsZXMgbW9kaWZpZWQvYWRk
ZWQvcmVtb3ZlZCB1cHN0cmVhbQorKworKzIwMTktMDktMTEgIFJ5YW4gSGFkZGFkICA8cnlhbmhh
ZGRhZEBhcHBsZS5jb20+CisrCisrICAgICAgICBVbnJldmlld2VkLCByb2xsaW5nIG91dCByMjQ5
NzkxLgorKworKyAgICAgICAgQnJlYWtzIGludGVybmFsIHByb2R1Y3Rpb24gYnVpbGRzLgorKwor
KyAgICAgICAgUmV2ZXJ0ZWQgY2hhbmdlc2V0OgorKworKyAgICAgICAgIlVwZGF0ZSBBTkdMRSIK
KysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDExNTYK
KysgICAgICAgIGh0dHBzOi8vdHJhYy53ZWJraXQub3JnL2NoYW5nZXNldC8yNDk3OTEKKysKKysy
MDE5LTA5LTExICBKYW1lcyBEYXJwaW5pYW4gIDxqZGFycGluaWFuQGNocm9taXVtLm9yZz4KKysK
KysgICAgICAgIFVwZGF0ZSBBTkdMRQorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIwMTE1NgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgQWxleCBDaHJp
c3RlbnNlbi4KKysKKysgICAgICAgIFVwZGF0ZSB0byAyMDE5LTktOSwgcmV2aXNpb24gNzlhZDA0
MTE5MTFiMmZjODQ4MzRjMzcwNWY1NTcwN2JlOWU0YjQ5OAorKyAgICAgICAgSSBtZXJnZWQgYSBi
dW5jaCBvZiBjaGFuZ2VzIHRvIHVwc3RyZWFtIEFOR0xFLCB0byBtaW5pbWl6ZSB0aGUgY2hhbmdl
cworKyAgICAgICAgbmVjZXNzYXJ5IHdoZW4gdXBkYXRpbmcgQU5HTEUgaW4gV2ViS2l0LgorKwor
KyAgICAgICAgKiBBTkdMRS5wbGlzdDogVXBkYXRlIGNvbW1pdCBoYXNoZXMKKysgICAgICAgICog
QU5HTEUudHh0OiBSZW1vdmVkIGluIGZhdm9yIG9mIExJQ0VOU0UKKysgICAgICAgICogQU5HTEUu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajogVXBkYXRlZCB3aXRoIHVwc3RyZWFtIGNoYW5nZXMK
KysgICAgICAgIEFsc28sIGNvcHkgc3JjL2NvbW1pdC5oIHRvIGlkL2NvbW1pdC5oIGR1cmluZyBi
dWlsZAorKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDogVXBkYXRlZCB3aXRoIHVwc3RyZWFtIGNo
YW5nZXMKKysgICAgICAgIEFsc28sIGNvcHkgc3JjL2NvbW1pdC5oIHRvIGlkL2NvbW1pdC5oIGR1
cmluZyBidWlsZAorKyAgICAgICAgKiBDb21waWxlci5jbWFrZTogVXBkYXRlZCB3aXRoIHVwc3Ry
ZWFtIGNoYW5nZXMKKysgICAgICAgICogR0xFU3YyLmNtYWtlOiBVcGRhdGVkIHdpdGggdXBzdHJl
YW0gY2hhbmdlcworKyAgICAgICAgKiBhZGp1c3QtYW5nbGUtaW5jbHVkZS1wYXRocy1ydWxlOiBT
dXBwb3J0ICIiIGFzIHdlbGwgYXMgPD4gZm9yIGluY2x1ZGVzCisrICAgICAgICAqIGFkanVzdC1h
bmdsZS1pbmNsdWRlLXBhdGhzLnNoOiBTdXBwb3J0ICIiIGFzIHdlbGwgYXMgPD4gZm9yIGluY2x1
ZGVzCisrICAgICAgICAqIGNoYW5nZXMuZGlmZjogUGFyZWQgZG93biB0byBqdXN0IGxlZ2FsIGRp
c2NsYWltZXIgYW5kIHdhcm5pbmcgZmxhZyBjaGFuZ2VzCisrICAgICAgICAqIHVwZGF0ZS1hbmds
ZS5zaDogVXBkYXRlIEFOR0xFLnBsaXN0CisrCisrICAgICAgICAqIE1hbnkgb3RoZXIgZmlsZXMg
bW9kaWZpZWQvYWRkZWQvcmVtb3ZlZCB1cHN0cmVhbQorKworKzIwMTktMDgtMjkgIEtlaXRoIFJv
bGxpbiAgPGtyb2xsaW5AYXBwbGUuY29tPgorKworKyAgICAgICAgVXBkYXRlIC54Y2NvbmZpZyBz
eW1ib2xzIHRvIHJlZmxlY3QgdGhlIGN1cnJlbnQgc2V0IG9mIHBhc3QgYW5kIGZ1dHVyZSBwcm9k
dWN0IHZlcnNpb25zLgorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIwMDcyMAorKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzU0MzA1MDMyPgorKworKyAg
ICAgICAgUmV2aWV3ZWQgYnkgQWxleCBDaHJpc3RlbnNlbi4KKysKKysgICAgICAgIFJlbW92ZSB2
ZXJzaW9uIHN5bWJvbHMgcmVsYXRlZCB0byBvbGQgT1MncyB3ZSBubyBsb25nZXIgc3VwcG9ydCwK
KysgICAgICAgIGVuc3VyZSB0aGF0IHZlcnNpb24gc3ltYm9scyBhcmUgZGVmaW5lZCBmb3IgT1Mn
cyB3ZSBkbyBzdXBwb3J0LgorKworKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9CYXNlLnhjY29u
ZmlnOgorKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9EZWJ1Z1JlbGVhc2UueGNjb25maWc6Cisr
CisrMjAxOS0wOC0yNiAgSmFtZXMgRGFycGluaWFuICA8amRhcnBpbmlhbkBnb29nbGUuY29tPgor
KworKyAgICAgICAgQWRkIGEgc2NyaXB0IHRvIHVwZGF0ZSBBTkdMRQorKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwMTEwOQorKworKyAgICAgICAgUmV2
aWV3ZWQgYnkgQWxleCBDaHJpc3RlbnNlbi4KKysKKysgICAgICAgICogdXBkYXRlLWFuZ2xlLnNo
OiBBZGRlZC4KKysKKysyMDE5LTA4LTE2ICBLZWl0aCBSb2xsaW4gIDxrcm9sbGluQGFwcGxlLmNv
bT4KKysKKysgICAgICAgIEFkZCBYQ0J1aWxkIHN1cHBvcnQgdG8gQU5HTEUKKysgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDA4MzYKKysgICAgICAgIDxy
ZGFyOi8vcHJvYmxlbS81NDQxMDQyMD4KKysKKysgICAgICAgIFJldmlld2VkIGJ5IEFsZXggQ2hy
aXN0ZW5zZW4uCisrCisrICAgICAgICBUaGUgQU5HTEUgWGNvZGUgcHJvamVjdCBjb250YWlucyB0
d28gQnVpbGQgUGhhc2VzOiBvbmUgdGhhdCBjb3BpZXMKKysgICAgICAgIHNvbWUgaGVhZGVycywg
YW5kIGFub3RoZXIgdGhhdCBtb2RpZmllcyB0aG9zZSBoZWFkZXJzLiBUaGlzCisrICAgICAgICBj
b21iaW5hdGlvbiBkb2VzIG5vdCB3b3JrIHdpdGggWENCdWlsZCwgd2hpY2ggZ2V0cyBjb25mdXNl
ZCB3aGVuIGl0CisrICAgICAgICBmaW5kcyB0aGF0IGhlYWRlcnMgdGhhdCBpdCdzIGNvcGllZCBo
YXZlIGJlZW4gY2hhbmdlZC4gV2hlbiBpdCBkZXRlY3RzCisrICAgICAgICB0aGlzLCBYQ0J1aWxk
IHRoaW5rcyB0aGF0IGl0IHNob3VsZCByZWNvcHkgdGhvc2UgaGVhZGVycyBvbiB0aGUgbmV4dAor
KyAgICAgICAgYnVpbGQsIGNhdXNpbmcgdGhlaXIgbW9kaWZpY2F0aW9uIGRhdGVzIHRvIGNoYW5n
ZSBhbmQgZm9yIGFsbAorKyAgICAgICAgZGVwZW5kZW50IGZpbGVzIHRvIGJlIHJlYnVpbHQuIFRo
aXMgZXNzZW50aWFsbHkgdHVybnMgYW4gaW5jcmVtZW50YWwKKysgICAgICAgIHJlYnVpbGQgaW50
byBhIGZ1bGwgcmVidWlsZC4KKysKKysgICAgICAgIEFkZHJlc3MgdGhpcyBwcm9ibGVtIGJ5IHVz
aW5nIGEgbmV3IGZhY2lsaXR5IGluIFhjb2RlIDExLiBUaGlzCisrICAgICAgICBmYWNpbGl0eSBz
dXBwb3J0cyB0aGUgY29weWluZyBhbmQgbW9kaWZ5aW5nIGhlYWRlcnMgZmlsZXMgaW4gYSBzaW5n
bGUKKysgICAgICAgIHN0ZXAuIEl0IGlzIGFjaGlldmVkIGJ5IGZpcnN0IGVuYWJsaW5nIHRoZSBm
YWNpbGl0eSBieSBzZXR0aW5nCisrICAgICAgICBBUFBMWV9SVUxFU19JTl9DT1BZX0hFQURFUlMg
dG8gWUVTLiBOZXh0LCB3ZSBhZGQgYSBuZXcgQnVpbGQgUnVsZSB0aGF0CisrICAgICAgICBpbnZv
a2VzIGEgY3VzdG9tIHNjcmlwdCB3aGVuIHRoZSBoZWFkZXIgZmlsZXMgYXJlIGNvcGllZC4gVGhp
cmQsIHdlCisrICAgICAgICBwcm92aWRlIHRoaXMgc2NyaXB0LCB3aGljaCBjYW4gZXNzZW50aWFs
bHkgYmUgYSBzdHJpcHBlZCBkb3duIHZlcnNpb24KKysgICAgICAgIG9mIHRoZSBvbmUgYWxyZWFk
eSB1c2VkIHRvIG1vZGlmeSB0aGUgZXhwb3J0ZWQgaGVhZGVycyBmaWxlcy4gRmluYWxseSwKKysg
ICAgICAgIHdlIGRpc2FibGUgdGhlIHVzZSBvZiB0aGF0IG9sZCBzY3JpcHQgd2hlbiB3ZSBhcmUg
dXNpbmcgWGNvZGUgMTEuIEluCisrICAgICAgICB0aGlzIHdheSwgdGhlIG9sZCBzY3JpcHQgdGhh
dCBtb2RpZmllcyB0aGUgZXhwb3J0ZWQgaGVhZGVycyBpcyB1c2VkIGluCisrICAgICAgICBYY29k
ZSAxMCwgYW5kIHRoZSBuZXcgZmFjaWxpdHkgaXMgdXNlZCBpbiBYY29kZSAxMS4KKysKKysgICAg
ICAgIFNlZSBhbHNvIEJ1ZyAxOTczNDAgZm9yIHdoZXJlIHRoaXMgcHJvY2VzcyB3YXMgYWxzbyBh
cHBsaWVkIHRvCisrICAgICAgICBKYXZhU2NyaXB0Q29yZSwgV2ViS2l0LCBhbmQgV2ViS2l0TGVn
YWN5LgorKworKyAgICAgICAgKiBBTkdMRS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorKyAg
ICAgICAgKiBDb25maWd1cmF0aW9ucy9BTkdMRS54Y2NvbmZpZzoKKysgICAgICAgICogYWRqdXN0
LWFuZ2xlLWluY2x1ZGUtcGF0aHMtcnVsZTogQWRkZWQuCisrCisrMjAxOS0wOC0wOCAgQnJlbnQg
RnVsZ2hhbSAgPGJmdWxnaGFtQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFtGVFddIEdldCBXZWJL
aXQsIFdlYktpdDIsIGFuZCBNaW5pQnJvd3NlciBidWlsZGluZyBhbmQgZXhlY3V0aW5nCisrICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAwNTM5CisrCisr
ICAgICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisrCisrICAgICAgICAqIFBsYXRmb3Jt
RlRXLmNtYWtlOiBBZGRlZC4KKysKKysyMDE5LTA3LTE3ICBLZW5uZXRoIFJ1c3NlbGwgIDxrYnJA
Y2hyb21pdW0ub3JnPgorKworKyAgICAgICAgTWFrZSBBTkdMRSB3b3JrIGluc2lkZSBXZWJLaXQy
J3Mgc2FuZGJveAorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTE5OTg0NAorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgQWxleCBDaHJpc3RlbnNlbi4KKysK
KysgICAgICAgIENoZXJyeS1waWNrIGZpeCBmb3IgY3JidWcuY29tL2FuZ2xlcHJvamVjdC8zMzgz
IHRvIGVsaW1pbmF0ZSB1c2UKKysgICAgICAgIG9mIGRlcHJlY2F0ZWQgQVBJIGluIFN5c3RlbUlu
Zm9fbWFjLm1tLgorKworKyAgICAgICAgKiBCVUlMRC5nbjoKKysgICAgICAgICogc3JjL2dwdV9p
bmZvX3V0aWwvU3lzdGVtSW5mby5jcHA6CisrICAgICAgICAoYW5nbGU6OkZpbmRBY3RpdmVHUFUp
OgorKyAgICAgICAgKGFuZ2xlOjpQcmludFN5c3RlbUluZm8pOgorKyAgICAgICAgKGFuZ2xlOjpG
aW5kUHJpbWFyeUdQVSk6IERlbGV0ZWQuCisrICAgICAgICAqIHNyYy9ncHVfaW5mb191dGlsL1N5
c3RlbUluZm8uaDoKKysgICAgICAgICogc3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mb19pbnRl
cm5hbC5oOgorKyAgICAgICAgKiBzcmMvZ3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZvX2xpbnV4LmNw
cDoKKysgICAgICAgIChhbmdsZTo6R2V0U3lzdGVtSW5mbyk6CisrICAgICAgICAqIHNyYy9ncHVf
aW5mb191dGlsL1N5c3RlbUluZm9fbWFjLm1tOgorKyAgICAgICAgKGFuZ2xlOjpHZXRTeXN0ZW1J
bmZvKToKKysgICAgICAgICogc3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mb193aW4uY3BwOgor
KyAgICAgICAgKGFuZ2xlOjpHZXRTeXN0ZW1JbmZvKToKKysgICAgICAgICogc3JjL3Rlc3RzL0JV
SUxELmduOgorKyAgICAgICAgKiBzcmMvdGVzdHMvdGVzdF9leHBlY3RhdGlvbnMvR1BVVGVzdENv
bmZpZy5jcHA6CisrICAgICAgICAqIHNyYy90ZXN0cy90ZXN0X3V0aWxzL2FuZ2xlX3Rlc3RfaW5z
dGFudGlhdGUuY3BwOgorKyAgICAgICAgKGFuZ2xlOjpJc0NvbmZpZ1doaXRlbGlzdGVkKToKKysK
KysyMDE5LTA3LTEwICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+
CisrCisrICAgICAgICBBbGxvdyBDTWFrZSB0byBidWlsZCBXZWJDb3JlIG9uIE1hYworKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5ODk3OQorKworKyAg
ICAgICAgUmV2aWV3ZWQgYnkgRG9uIE9sbXN0ZWFkLgorKworKyAgICAgICAgKiBpbmNsdWRlL0dM
U0xBTkcvU2hhZGVyTGFuZy5oOgorKworKzIwMTktMDctMTAgIEtlbm5ldGggUnVzc2VsbCAgPGti
ckBjaHJvbWl1bS5vcmc+CisrCisrICAgICAgICBIb29rIHVwIFdlYkdMJ3MgYmFjayBidWZmZXIg
aW4gQU5HTEUgYmFja2VuZCBvbiBtYWNPUworKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTE5ODk4MgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgQWxleCBD
aHJpc3RlbnNlbi4KKysKKysgICAgICAgIEFkZCBzb3VyY2UgZmlsZXMgbmVlZGVkIHRvIGltcGxl
bWVudCBhbmQgY2FsbCBBTkdMRSBleHRlbnNpb25zLCBhbmQKKysgICAgICAgIGV4cG9ydCBoZWFk
ZXJzIG5lY2Vzc2FyeSBmb3IgdGhvc2UgZXh0ZW5zaW9ucy4gVXBkYXRlIHRoZSBzY3JpcHQgd2hp
Y2gKKysgICAgICAgIGFkanVzdHMgaW5jbHVkZSBwYXRocyB0byBoYW5kbGUgdGhlIG5ldyBoZWFk
ZXJzLgorKworKyAgICAgICAgQ2hlcnJ5LXBpY2sgZml4IGZvciBBTkdMRSBidWcgY3JidWcuY29t
L2FuZ2xlcHJvamVjdC8zNjY5IHRvIHN1cHBvcnQKKysgICAgICAgIGFudGlhbGlhczp0cnVlIGZv
ciBBTkdMRS1iYWNrZWQgV2ViR0wgY29udGV4dHMuCisrCisrICAgICAgICAqIEFOR0xFLnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2o6CisrICAgICAgICAqIGFkanVzdC1hbmdsZS1pbmNsdWRlLXBh
dGhzLnNoOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvRnJhbWVidWZmZXJBdHRhY2htZW50LmNw
cDoKKysgICAgICAgIChnbDo6RnJhbWVidWZmZXJBdHRhY2htZW50OjpnZXRUZXh0dXJlSW1hZ2VJ
bmRleCBjb25zdCk6IERlbGV0ZWQuCisrICAgICAgICAqIHNyYy9saWJBTkdMRS9GcmFtZWJ1ZmZl
ckF0dGFjaG1lbnQuaDoKKysgICAgICAgIChnbDo6RnJhbWVidWZmZXJBdHRhY2htZW50OjpnZXRU
ZXh0dXJlSW1hZ2VJbmRleCBjb25zdCk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS92YWxpZGF0
aW9uRVMyLmNwcDoKKysgICAgICAgIChnbDo6VmFsaWRhdGVCbGl0RnJhbWVidWZmZXJBTkdMRSk6
CisrCisrMjAxOS0wNi0yNyAgQmV0aCBEYWtpbiAgPGJkYWtpbkBhcHBsZS5jb20+CisrCisrICAg
ICAgICBVcHN0cmVhbSB1c2Ugb2YgTUFDQ0FUQUxZU1QKKysgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTkyNDUKKysgICAgICAgIHJkYXI6Ly9wcm9ibGVt
LzUxNjg3NzIzCisrCisrICAgICAgICBSZXZpZXdlZCBieSBUaW0gSG9ydG9uLgorKworKyAgICAg
ICAgKiBDb25maWd1cmF0aW9ucy9TREtWYXJpYW50LnhjY29uZmlnOgorKworKzIwMTktMDYtMjUg
IEtlbm5ldGggUnVzc2VsbCAgPGtickBjaHJvbWl1bS5vcmc+CisrCisrICAgICAgICBTY3JpcHQg
d2hpY2ggYWRqdXN0cyBpbmNsdWRlIHBhdGhzIGluIEFOR0xFJ3MgY29waWVkIGhlYWRlcnMgYnJl
YWtzIGluY3JlbWVudGFsIGJ1aWxkcworKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTE5OTIxMgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRs
ZXIuCisrCisrICAgICAgICBNYWludGFpbiBhbmQgdGVzdCBhIHRpbWVzdGFtcCBpbiBhZGp1c3Qt
YW5nbGUtaW5jbHVkZS1wYXRocy5zaAorKyAgICAgICAgaW4gb3JkZXIgdG8gYXZvaWQgdG91Y2hp
bmcgdGhlIGhlYWRlcnMgZHVyaW5nIGVhY2ggYnVpbGQuCisrCisrICAgICAgICAqIGFkanVzdC1h
bmdsZS1pbmNsdWRlLXBhdGhzLnNoOgorKworKzIwMTktMDYtMjUgIFJ5YW4gSGFkZGFkICA8cnlh
bmhhZGRhZEBhcHBsZS5jb20+CisrCisrICAgICAgICBVbnJldmlld2VkLCByb2xsaW5nIG91dCBy
MjQ2ODI1LgorKworKyAgICAgICAgQnJlYWtzIGludGVybmFsIGJ1aWxkcy4KKysKKysgICAgICAg
IFJldmVydGVkIGNoYW5nZXNldDoKKysKKysgICAgICAgICJTY3JpcHQgd2hpY2ggYWRqdXN0cyBp
bmNsdWRlIHBhdGhzIGluIEFOR0xFJ3MgY29waWVkIGhlYWRlcnMKKysgICAgICAgIGJyZWFrcyBp
bmNyZW1lbnRhbCBidWlsZHMiCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTk5MjEyCisrICAgICAgICBodHRwczovL3RyYWMud2Via2l0Lm9yZy9jaGFu
Z2VzZXQvMjQ2ODI1CisrCisrMjAxOS0wNi0yNSAgS2VubmV0aCBSdXNzZWxsICA8a2JyQGNocm9t
aXVtLm9yZz4KKysKKysgICAgICAgIFNjcmlwdCB3aGljaCBhZGp1c3RzIGluY2x1ZGUgcGF0aHMg
aW4gQU5HTEUncyBjb3BpZWQgaGVhZGVycyBicmVha3MgaW5jcmVtZW50YWwgYnVpbGRzCisrICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk5MjEyCisrCisr
ICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KKysKKysgICAgICAgIE1haW50YWluIGFu
ZCB0ZXN0IGEgdGltZXN0YW1wIGluIGFkanVzdC1hbmdsZS1pbmNsdWRlLXBhdGhzLnNoCisrICAg
ICAgICBpbiBvcmRlciB0byBhdm9pZCB0b3VjaGluZyB0aGUgaGVhZGVycyBkdXJpbmcgZWFjaCBi
dWlsZC4KKysKKysgICAgICAgICogYWRqdXN0LWFuZ2xlLWluY2x1ZGUtcGF0aHMuc2g6CisrCisr
MjAxOS0wNi0xOCAgS2VubmV0aCBSdXNzZWxsICA8a2JyQGNocm9taXVtLm9yZz4KKysKKysgICAg
ICAgIEFkZCBwcmVsaW1pbmFyeSBBTkdMRSBiYWNrZW5kIHRvIFdlYkNvcmUKKysgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTc3NTUKKysKKysgICAgICAg
IFJldmlld2VkIGJ5IERlYW4gSmFja3Nvbi4KKysKKysgICAgICAgIEFkZCBhIGJ1aWxkIHN0ZXAg
d2hpY2ggcHJvY2Vzc2VzIEFOR0xFJ3MgY29waWVkIHB1YmxpYyBoZWFkZXJzIHNvIHRoZXkKKysg
ICAgICAgIGNhbiBhbGwgYmUgcmVmZXJyZWQgdG8gdW5kZXIgdGhlIDxBTkdMRS94eXouaD4gcHJl
Zml4LiBUaGlzIGF2b2lkcworKyAgICAgICAgdG91Y2hpbmcgQU5HTEUncyBoZWFkZXJzIGFuZCBh
bGxvd3MgV2ViQ29yZSB0byBpbmNsdWRlIHRoZW0gd2l0aCBubworKyAgICAgICAgYWRkaXRpb25h
bCBpbmNsdWRlIHBhdGggbW9kaWZpY2F0aW9ucy4KKysKKysgICAgICAgICogQU5HTEUueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvajoKKysgICAgICAgICogYWRqdXN0LWFuZ2xlLWluY2x1ZGUtcGF0
aHMuc2g6IEFkZGVkLgorKworKzIwMTktMDYtMTcgIFJ5YW4gSGFkZGFkICA8cnlhbmhhZGRhZEBh
cHBsZS5jb20+CisrCisrICAgICAgICBVbnJldmlld2VkLCByb2xsaW5nIG91dCByMjQ2NTAxLgor
KworKyAgICAgICAgQnJlYWtzIEFwcGxlIGludGVybmFsIGJ1aWxkcy4KKysKKysgICAgICAgIFJl
dmVydGVkIGNoYW5nZXNldDoKKysKKysgICAgICAgICJTdXBwb3J0IHVzaW5nIEFOR0xFIGFzIHRo
ZSBiYWNrZW5kIGZvciB0aGUgV2ViR0wKKysgICAgICAgIGltcGxlbWVudGF0aW9uIgorKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5Nzc1NQorKyAgICAg
ICAgaHR0cHM6Ly90cmFjLndlYmtpdC5vcmcvY2hhbmdlc2V0LzI0NjUwMQorKworKzIwMTktMDYt
MTcgIEtlbm5ldGggUnVzc2VsbCAgPGtickBjaHJvbWl1bS5vcmc+CisrCisrICAgICAgICBTdXBw
b3J0IHVzaW5nIEFOR0xFIGFzIHRoZSBiYWNrZW5kIGZvciB0aGUgV2ViR0wgaW1wbGVtZW50YXRp
b24KKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTc3
NTUKKysKKysgICAgICAgIFJldmlld2VkIGJ5IERlYW4gSmFja3Nvbi4KKysKKysgICAgICAgIEFk
ZCBhIGJ1aWxkIHN0ZXAgd2hpY2ggcHJvY2Vzc2VzIEFOR0xFJ3MgY29waWVkIHB1YmxpYyBoZWFk
ZXJzIHNvIHRoZXkKKysgICAgICAgIGNhbiBhbGwgYmUgcmVmZXJyZWQgdG8gdW5kZXIgdGhlIDxB
TkdMRS94eXouaD4gcHJlZml4LiBUaGlzIGF2b2lkcworKyAgICAgICAgdG91Y2hpbmcgQU5HTEUn
cyBoZWFkZXJzIGFuZCBhbGxvd3MgV2ViQ29yZSB0byBpbmNsdWRlIHRoZW0gd2l0aCBubworKyAg
ICAgICAgYWRkaXRpb25hbCBpbmNsdWRlIHBhdGggbW9kaWZpY2F0aW9ucy4KKysKKysgICAgICAg
ICogQU5HTEUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKysgICAgICAgICogYWRqdXN0LWFu
Z2xlLWluY2x1ZGUtcGF0aHMuc2g6IEFkZGVkLgorKworKzIwMTktMDYtMTIgIEp1c3RpbiBGYW4g
IDxqdXN0aW5fZmFuQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFtXZWJHTF0gQU5HTEUgRXh0ZW5z
aW9uIGRpcmVjdGl2ZSBsb2NhdGlvbiBpbmNvcnJlY3RseSBlbmZvcmNlZCBmb3Igd2ViZ2wgMS4w
CisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk4ODEx
CisrCisrICAgICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisrCisrICAgICAgICBBcHBs
eSBBTkdMRSBjaGFuZ2UgZnJvbSBodHRwczovL2Nocm9taXVtLXJldmlldy5nb29nbGVzb3VyY2Uu
Y29tL2MvYW5nbGUvYW5nbGUvKy8xNjQ4NjYxIHRvCisrICAgICAgICBwcmV2ZW50IGVuZm9yY2lu
ZyBFU1NMIGxhdGUgZXh0ZW5zaW9uIHJ1bGUgb24gV2ViR0wgMS4wIHNoYWRlcnMuCisrCisrICAg
ICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvRGlhZ25vc3RpY3NCYXNlLmNwcDoKKysg
ICAgICAgIChhbmdsZTo6cHA6OkRpYWdub3N0aWNzOjptZXNzYWdlKToKKysgICAgICAgICogc3Jj
L2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9EaWFnbm9zdGljc0Jhc2UuaDoKKysgICAgICAgICogc3Jj
L2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9EaXJlY3RpdmVQYXJzZXIuY3BwOgorKyAgICAgICAgKGFu
Z2xlOjpwcDo6RGlyZWN0aXZlUGFyc2VyOjpwYXJzZUV4dGVuc2lvbik6CisrCisrMjAxOS0wNS0y
MyAgRG9uIE9sbXN0ZWFkICA8ZG9uLm9sbXN0ZWFkQHNvbnkuY29tPgorKworKyAgICAgICAgW0NN
YWtlXSBVc2UgdGFyZ2V0IG9yaWVudGVkIGRlc2lnbiBmb3IgYm1hbGxvYworKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5ODA0NgorKworKyAgICAgICAg
UmV2aWV3ZWQgYnkgS29uc3RhbnRpbiBUb2thcmV2LgorKworKyAgICAgICAgUmVtb3ZlIFdFQktJ
VF9DT1BZX0ZJTEVTIGZyb20gQ01ha2VsaXN0cy50eHQgbm93IHRoYXQgaXQgaXMgaW4gV2ViS2l0
TWFjcm9zLgorKworKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDoKKysKKysyMDE5LTA1LTE0ICBN
aWd1ZWwgR29tZXogIDxtYWdvbWV6QGlnYWxpYS5jb20+CisrCisrICAgICAgICBSRUdSRVNTSU9O
KHIyNDUwODgpOiBbR1RLXSBTZXZlcmFsIFdlYkdMIHRlc3RzIGZhaWxpbmcKKysgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTc4ODAKKysKKysgICAgICAg
IFJldmlld2VkIGJ5IENhcmxvcyBHYXJjaWEgQ2FtcG9zLgorKworKyAgICAgICAgRW5hYmxlIEdM
U0wgY29tcGlsZXIgb3V0cHV0IGZvciBXZWJLaXRHVEsuCisrCisrICAgICAgICAqIFBsYXRmb3Jt
R1RLLmNtYWtlOiBBZGRlZC4KKysKKysyMDE5LTA1LTEzICBBbGV4IENocmlzdGVuc2VuICA8YWNo
cmlzdGVuc2VuQHdlYmtpdC5vcmc+CisrCisrICAgICAgICBCdWlsZCBtb3JlIEFOR0xFIGZpbGVz
CisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk3Nzg3
CisrCisrICAgICAgICBSZXZpZXdlZCBieSBTaW1vbiBGcmFzZXIuCisrCisrICAgICAgICAqIEFO
R0xFLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisrICAgICAgICAqIHNyYy9ncHVfaW5mb191
dGlsL1N5c3RlbUluZm8uY3BwOgorKyAgICAgICAgKGFuZ2xlOjpQYXJzZU1hY01hY2hpbmVNb2Rl
bCk6CisrICAgICAgICAqIHNyYy9ncHVfaW5mb191dGlsL1N5c3RlbUluZm9fbWFjLm1tOgorKyAg
ICAgICAgKGFuZ2xlOjpHZXRTeXN0ZW1JbmZvKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3Jl
bmRlcmVyL2dsL2NnbC9EaXNwbGF5Q0dMLm1tOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVu
ZGVyZXIvZ2wvY2dsL0lPU3VyZmFjZVN1cmZhY2VDR0wubW06CisrICAgICAgICAocng6OklPU3Vy
ZmFjZVN1cmZhY2VDR0w6OklPU3VyZmFjZVN1cmZhY2VDR0wpOgorKyAgICAgICAgKHJ4OjpJT1N1
cmZhY2VTdXJmYWNlQ0dMOjp2YWxpZGF0ZUF0dHJpYnV0ZXMpOgorKyAgICAgICAgKiBzcmMvbGli
QU5HTEUvcmVuZGVyZXIvZ2wvY2dsL1dpbmRvd1N1cmZhY2VDR0wuaDoKKysgICAgICAgICogc3Jj
L2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9XaW5kb3dTdXJmYWNlQ0dMLm1tOgorKyAgICAgICAg
KHJ4OjpXaW5kb3dTdXJmYWNlQ0dMOjppbml0aWFsaXplKToKKysgICAgICAgICgtW1N3YXBMYXll
ciBpbml0V2l0aFNoYXJlZFN0YXRlOndpdGhDb250ZXh0OndpdGhGdW5jdGlvbnM6XSk6IERlbGV0
ZWQuCisrCisrMjAxOS0wNS0xMCAgTWljaGFlbCBDYXRhbnphcm8gIDxtY2F0YW56YXJvQGlnYWxp
YS5jb20+CisrCisrICAgICAgICBGaXggYSBidW5jaCBvZiBjb21waWxlciB3YXJuaW5ncworKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5Nzc4NQorKwor
KyAgICAgICAgUmV2aWV3ZWQgYnkgRG9uIE9sbXN0ZWFkLgorKworKyAgICAgICAgQWRkIGNvbXBp
bGVyIGZsYWdzIHRvIHN1cHByZXNzIHZhcmlvdXMgd2FybmluZ3MgdHJpZ2dlcmVkIGJ5IHRoZSBu
ZXcgdmVyc2lvbiBvZiBBTkdMRS4KKysKKysgICAgICAgICogQ01ha2VMaXN0cy50eHQ6CisrCisr
MjAxOS0wNS0wOSAgRG9uIE9sbXN0ZWFkICA8ZG9uLm9sbXN0ZWFkQHNvbnkuY29tPgorKworKyAg
ICAgICAgW0FOR0xFXSBVcGRhdGUgQU5HTEUKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xOTc2NzYKKysgICAgICAgIDxyZGFyOi8vcHJvYmxlbS81MDYw
OTUwMT4KKysKKysgICAgICAgIFJldmlld2VkIGJ5IEFsZXggQ2hyaXN0ZW5zZW4uCisrCisrICAg
ICAgICAqIGNoYW5nZXMuZGlmZjoKKysgICAgICAgIFVwZGF0ZWQgd2l0aCBhbGwgdGhlIHByZXZp
b3VzIGZpeGVzLgorKyAgICAgICAgKiBpbmNsdWRlL0VHTC9lZ2xwbGF0Zm9ybS5oOgorKyAgICAg
ICAgVXNlIHRoZSBtb3JlIGdlbmVyaWMgbmFtZSBVU0VfU1lTVEVNX0VHTCBub3QgVVNFX1dQRS4K
KysgICAgICAgICogc3JjL2NvbW1vbi9kZWJ1Zy5oOgorKyAgICAgICAgRml4IGEgc3RyYXkgQ09N
UElMRVJfR0NDIHRvIGJlIF9fR05VQ19fLgorKworKzIwMTktMDUtMDggIEFsZXggQ2hyaXN0ZW5z
ZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KKysKKysgICAgICAgIEZpeCBpbnRlcm5hbCBh
bmQgV2luZG93cyBidWlsZHMuCisrCisrICAgICAgICAqIEFOR0xFLnR4dDogQWRkZWQuCisrICAg
ICAgICBSZXN0b3JlIHRoaXMgZmlsZS4gIEl0IHdhcyBkZWxldGVkLCBidXQgaXQncyBuZWVkZWQu
CisrICAgICAgICAqIEdMRVN2Mi5jbWFrZToKKysgICAgICAgIEl0IHR1cm5zIG91dCBDb21wb3Np
dG9yTmF0aXZlV2luZG93MTEuY3BwIGFuZCBSZW5kZXJlcjExLmNwcCBhcmUgbmVlZGVkLCBidXQg
dGhlIGJvdCBkb2Vzbid0IHNlZW0gdG8gaGF2ZSB0aGUgcmlnaHQgU0RLLgorKworKzIwMTktMDUt
MDggIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KKysKKysgICAg
ICAgIEZpeCBIaWdoIFNpZXJyYSBhbmQgV2luZG93cyBidWlsZHMuCisrCisrICAgICAgICAqIEdM
RVN2Mi5jbWFrZToKKysgICAgICAgIENvbXBvc2l0b3JOYXRpdmVXaW5kb3cxMS5jcHAgd2FzIGFs
c28gaGF2aW5nIGEgaGFyZCB0aW1lIGNvbXBpbGluZyBvbiB0aGUgYm90cy4KKysgICAgICAgICog
c3JjL2xpYkFOR0xFL3ZhbGlkYXRpb25FUzMuY3BwOgorKyAgICAgICAgKGdsOjpWYWxpZGF0ZUJp
bmRGcmFnRGF0YUxvY2F0aW9uSW5kZXhlZEVYVCk6CisrICAgICAgICBSZW1vdmUgYSBjaGVjayBm
b3IgaWYgYW4gdW5zaWduZWQgaW50ZWdlciBpcyBsZXNzIHRoYW4gMC4KKysKKysyMDE5LTA1LTA4
ICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisrCisrICAgICAg
ICBGaXggSGlnaCBTaWVycmEgYW5kIFdpbmRvd3MgYnVpbGRzLgorKworKyAgICAgICAgKiBzcmMv
Y29tbW9uL3V0aWxpdGllcy5jcHA6CisrICAgICAgICAoZ2w6OnByaXY6OmdMaW5lTW9kZXMpOgor
KyAgICAgICAgKiBzcmMvY29tbW9uL3V0aWxpdGllcy5oOgorKyAgICAgICAgKGdsOjpJc0xpbmVN
b2RlKToKKysgICAgICAgIERvbid0IGhhdmUgYSBnbG9iYWwgY29uc3RydWN0b3IuICBVc2UgYSBm
dW5jdGlvbiBzY29wZWQgc3RhdGljIHZhcmlhYmxlIGluc3RlYWQuCisrICAgICAgICAqIEdMRVN2
Mi5jbWFrZToKKysgICAgICAgIFJlbmRlcmVyMTEuY3BwIHdhcyBub3QgYnVpbGRpbmcgc3VjY2Vz
c2Z1bGx5IG9uIHRoZSBib3RzLgorKyAgICAgICAgSSBkb24ndCB0aGluayBpdCdzIG5lZWRlZCwg
c28ganVzdCBkb24ndCBidWlsZCBpdC4KKysKKysyMDE5LTA1LTA4ICBBbGV4IENocmlzdGVuc2Vu
ICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisrCisrICAgICAgICBGaXggSGlnaCBTaWVycmEg
YnVpbGQuCisrCisrICAgICAgICAqIHNyYy9saWJBTkdMRS9TdGF0ZS5jcHA6CisrICAgICAgICAo
Z2w6OlN0YXRlOjprQnVmZmVyU2V0dGVycyk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9TdGF0
ZS5oOgorKyAgICAgICAgKGdsOjpTdGF0ZTo6c2V0QnVmZmVyQmluZGluZyk6CisrICAgICAgICBS
ZW1vdmUgdGhlIG5lZWQgZm9yIGEgZ2xvYmFsIGNvbnN0cnVjdG9yLgorKworKzIwMTktMDUtMDgg
IERvbiBPbG1zdGVhZCAgPGRvbi5vbG1zdGVhZEBzb255LmNvbT4KKysKKysgICAgICAgIFVwZGF0
ZSBBTkdMRQorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTE5NzY3NgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgQWxleCBDaHJpc3RlbnNlbi4KKysKKysg
ICAgICAgIE1hbnkgY2hhbmdlZCBmaWxlcy4gIFVwZGF0ZWQgdG8gdHJ1bmsgQU5HTEUgNTY1NDQx
YjEwNzhiLgorKworKzIwMTktMDQtMjkgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5A
d2Via2l0Lm9yZz4KKysKKysgICAgICAgIDxyZGFyOi8vcHJvYmxlbS81MDI5OTM5Nj4gRml4IGlu
dGVybmFsIEhpZ2ggU2llcnJhIGJ1aWxkCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MTk3Mzg4CisrCisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0Jh
c2UueGNjb25maWc6CisrCisrMjAxOS0wNC0yNSAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3Rl
bnNlbkB3ZWJraXQub3JnPgorKworKyAgICAgICAgU3RhcnQgdXNpbmcgQysrMTcKKysgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTcxMzEKKysKKysgICAg
ICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgorKworKyAgICAgICAgKiBDb25maWd1cmF0aW9u
cy9CYXNlLnhjY29uZmlnOgorKworKzIwMTktMDMtMjIgIEtlaXRoIFJvbGxpbiAgPGtyb2xsaW5A
YXBwbGUuY29tPgorKworKyAgICAgICAgRW5hYmxlIFRoaW5MVE8gc3VwcG9ydCBpbiBQcm9kdWN0
aW9uIGJ1aWxkcworKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTE5MDc1OAorKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzQ1NDEzMjMzPgorKworKyAgICAg
ICAgUmV2aWV3ZWQgYnkgRGFuaWVsIEJhdGVzLgorKworKyAgICAgICAgRW5hYmxlIGJ1aWxkaW5n
IHdpdGggVGhpbiBMVE8gaW4gUHJvZHVjdGlvbiB3aGVuIHVzaW5nIFhjb2RlIDEwLjIgb3IKKysg
ICAgICAgIGxhdGVyLiBUaGlzIGNoYW5nZSByZXN1bHRzIGluIGEgMS40NSUgcHJvZ3Jlc3Npb24g
aW4gUExUNS4gRnVsbAorKyAgICAgICAgUHJvZHVjdGlvbiBidWlsZCB0aW1lcyBpbmNyZWFzZSBh
Ym91dCAyLTMlLiBJbmNyZW1lbnRhbCBidWlsZCB0aW1lcworKyAgICAgICAgYXJlIG1vcmUgc2V2
ZXJlbHkgYWZmZWN0ZWQsIGFuZCBzbyBMVE8gaXMgbm90IGVuYWJsZWQgZm9yIGxvY2FsCisrICAg
ICAgICBlbmdpbmVlcmluZyBidWlsZHMuCisrCisrICAgICAgICBMVE8gaXMgZW5hYmxlZCBvbmx5
IG9uIG1hY09TIGZvciBub3csIHVudGlsIHJkYXI6Ly9wcm9ibGVtLzQ5MDEzMzk5LAorKyAgICAg
ICAgd2hpY2ggYWZmZWN0cyBBUk0gYnVpbGRzLCBpcyBmaXhlZC4KKysKKysgICAgICAgIFRvIGNo
YW5nZSB0aGUgTFRPIHNldHRpbmcgd2hlbiBidWlsZGluZyBsb2NhbGx5OgorKworKyAgICAgICAg
LSBJZiBidWlsZGluZyB3aXRoIGBtYWtlYCwgc3BlY2lmeSBXS19MVE9fTU9ERT17bm9uZSx0aGlu
LGZ1bGx9IG9uIHRoZQorKyAgICAgICAgICBjb21tYW5kIGxpbmUuCisrICAgICAgICAtIElmIGJ1
aWxkaW5nIHdpdGggYGJ1aWxkLXdlYmtpdGAsIHNwZWNpZnkgLS1sdG8tbW9kZT17bm9uZSx0aGlu
LGZ1bGx9CisrICAgICAgICAgIG9uIHRoZSBjb21tYW5kIGxpbmUuCisrICAgICAgICAtIElmIGJ1
aWxkaW5nIHdpdGggYGJ1aWxkLXJvb3RgLCBzcGVjaWZ5IC0tbHRvPXtub25lLHRoaW4sZnVsbH0g
b24gdGhlCisrICAgICAgICAgIGNvbW1hbmQgbGluZS4KKysgICAgICAgIC0gSWYgYnVpbGRpbmcg
d2l0aCBYY29kZSwgY3JlYXRlIGEgTG9jYWxPdmVycmlkZXMueGNjb25maWcgZmlsZSBhdCB0aGUK
KysgICAgICAgICAgdG9wIGxldmVsIG9mIHlvdXIgcmVwb3NpdG9yeSBkaXJlY3RvcnkgKGlmIG5l
ZWRlZCkgYW5kIGRlZmluZQorKyAgICAgICAgICBXS19MVE9fTU9ERSB0byBmdWxsLCB0aGluLCBv
ciBub25lLgorKworKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnOgorKwor
KzIwMTktMDItMjMgIEtlaXRoIE1pbGxlciAgPGtlaXRoX21pbGxlckBhcHBsZS5jb20+CisrCisr
ICAgICAgICBBZGQgbmV3IG1hYyB0YXJnZXQgbnVtYmVycworKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5NDk1NQorKworKyAgICAgICAgUmV2aWV3ZWQg
YnkgVGltIEhvcnRvbi4KKysKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZp
ZzoKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMvRGVidWdSZWxlYXNlLnhjY29uZmlnOgorKwor
KzIwMTktMDItMjAgIEFuZHkgRXN0ZXMgIDxhZXN0ZXNAYXBwbGUuY29tPgorKworKyAgICAgICAg
W1hjb2RlXSBBZGQgU0RLVmFyaWFudC54Y2NvbmZpZyB0byB2YXJpb3VzIFhjb2RlIHByb2plY3Rz
CisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk0ODY5
CisrCisrICAgICAgICBSdWJiZXItc3RhbXBlZCBieSBKZXIgTm9ibGUuCisrCisrICAgICAgICAq
IEFOR0xFLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisrCisrMjAxOS0wMS0xOCAgSmVyIE5v
YmxlICA8amVyLm5vYmxlQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFNES19WQVJJQU5UIGJ1aWxk
IGRlc3RpbmF0aW9ucyBzaG91bGQgYmUgc2VwYXJhdGUgZnJvbSBub24tU0RLX1ZBUklBTlQgYnVp
bGRzCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg5
NTUzCisrCisrICAgICAgICBSZXZpZXdlZCBieSBUaW0gSG9ydG9uLgorKworKyAgICAgICAgKiBD
b25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnOgorKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9T
REtWYXJpYW50LnhjY29uZmlnOiBBZGRlZC4KKysKKysyMDE5LTAxLTE3ICBUcnVpdHQgU2F2ZWxs
ICA8dHNhdmVsbEBhcHBsZS5jb20+CisrCisrICAgICAgICBVbnJldmlld2VkLCByb2xsaW5nIG91
dCByMjQwMTI0LgorKworKyAgICAgICAgVGhpcyBjb21taXQgYnJva2UgYW4gaW50ZXJuYWwgYnVp
bGQuCisrCisrICAgICAgICBSZXZlcnRlZCBjaGFuZ2VzZXQ6CisrCisrICAgICAgICAiU0RLX1ZB
UklBTlQgYnVpbGQgZGVzdGluYXRpb25zIHNob3VsZCBiZSBzZXBhcmF0ZSBmcm9tIG5vbi0KKysg
ICAgICAgIFNES19WQVJJQU5UIGJ1aWxkcyIKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xODk1NTMKKysgICAgICAgIGh0dHBzOi8vdHJhYy53ZWJraXQu
b3JnL2NoYW5nZXNldC8yNDAxMjQKKysKKysyMDE5LTAxLTE3ICBKZXIgTm9ibGUgIDxqZXIubm9i
bGVAYXBwbGUuY29tPgorKworKyAgICAgICAgU0RLX1ZBUklBTlQgYnVpbGQgZGVzdGluYXRpb25z
IHNob3VsZCBiZSBzZXBhcmF0ZSBmcm9tIG5vbi1TREtfVkFSSUFOVCBidWlsZHMKKysgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODk1NTMKKysKKysgICAg
ICAgIFJldmlld2VkIGJ5IFRpbSBIb3J0b24uCisrCisrICAgICAgICAqIENvbmZpZ3VyYXRpb25z
L0Jhc2UueGNjb25maWc6CisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL1NES1ZhcmlhbnQueGNj
b25maWc6IEFkZGVkLgorKworKzIwMTktMDEtMTUgIERhdmlkIEtpbHplciAgPGRka2lsemVyQGFw
cGxlLmNvbT4KKysKKysgICAgICAgIGNsYW5nLXRpZHk6IEZpeCB1bm5lY2Vzc2FyeSBjb3B5IG9m
IGZvciBsb29wIHZhcmlhYmxlcyBpbiBBTkdMRQorKyAgICAgICAgPGh0dHBzOi8vd2Via2l0Lm9y
Zy9iLzE5MzQ0Mz4KKysKKysgICAgICAgIFJldmlld2VkIGJ5IEFsZXggQ2hyaXN0ZW5zZW4uCisr
CisrICAgICAgICBGaXggdW53YW50ZWQgY29weWluZyBvZiBsb29wIHZhcmlhYmxlcyBieSBtYWtp
bmcgdGhlbSBjb25zdAorKyAgICAgICAgcmVmZXJlbmNlcy4KKysKKysgICAgICAgICogc3JjL2Nv
bXBpbGVyL3ByZXByb2Nlc3Nvci9NYWNyb0V4cGFuZGVyLmNwcDoKKysgICAgICAgIChwcDo6TWFj
cm9FeHBhbmRlcjo6U2NvcGVkTWFjcm9SZWVuYWJsZXI6On5TY29wZWRNYWNyb1JlZW5hYmxlcik6
CisrICAgICAgICAtIFByZXZlbnRzIGNvcHkgYW5kIHJlZmVyZW5jZSBjaHVybiBvZiBzdGQ6OnNo
YXJlZF9wdHI8TWFjcm8+CisrICAgICAgICAgIG9iamVjdHMuCisrICAgICAgICAqIHNyYy9jb21w
aWxlci90cmFuc2xhdG9yL0NvbXBpbGVyLmNwcDoKKysgICAgICAgIChzaDo6VENvbXBpbGVyOjp1
c2VBbGxNZW1iZXJzSW5VbnVzZWRTdGFuZGFyZEFuZFNoYXJlZEJsb2Nrcyk6CisrICAgICAgICAt
IFByZXZlbnRzIGNvcHkgb2Ygc2g6OkludGVyZmFjZUJsb2NrIHN0cnVjdHMuCisrICAgICAgICAo
c2g6OlRDb21waWxlcjo6aW5pdGlhbGl6ZU91dHB1dFZhcmlhYmxlcyk6CisrICAgICAgICAtIFBy
ZXZlbnRzIGNvcHkgb2Ygc2g6OlZhcnlpbmcgc3RydWN0cy4KKysgICAgICAgICogc3JjL2xpYkFO
R0xFL1Byb2dyYW0uY3BwOgorKyAgICAgICAgKGdsOjooYW5vbnltb3VzIG5hbWVzcGFjZSk6Oklu
Y2x1ZGVTYW1lQXJyYXlFbGVtZW50KToKKysgICAgICAgIC0gUHJldmVudHMgY29weSBvZiBzdGQ6
OnN0cmluZyBvYmplY3RzLgorKworKzIwMTgtMTAtMDMgIERhbiBCZXJuc3RlaW4gIDxtaXR6QGFw
cGxlLmNvbT4KKysKKysgICAgICAgIEFOR0xFIHBhcnQgb2YgW1hjb2RlXSBVcGRhdGUgc29tZSBi
dWlsZCBzZXR0aW5ncyBhcyByZWNvbW1lbmRlZCBieSBYY29kZSAxMAorKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5MDI1MAorKworKyAgICAgICAgUmV2
aWV3ZWQgYnkgQW5keSBFc3Rlcy4KKysKKysgICAgICAgICogQU5HTEUueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvajogS2VwdCB0aGUgdW5yZWFjaGFibGUgY29kZSB3YXJuaW5nIG9mZiBmb3IgZm91
ciBmaWxlcyB0aGF0CisrICAgICAgICAgIHdlcmUgZ2VuZXJhdGVkIGJ5IHRvb2xzOiBnbHNsYW5n
X2xleC5jcHAsIGdsc2xhbmdfdGFiLmNwcCwgVG9rZW5pemVyLmNwcCwgYW5kCisrICAgICAgICAg
IEV4cHJlc3Npb25QYXJzZXIuY3BwLiBMZXQgWGNvZGUgdXBkYXRlIExhc3RVcGdyYWRlQ2hlY2su
CisrCisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWc6IEVuYWJsZWQgQ0xB
TkdfV0FSTl9DT01NQSwgQ0xBTkdfV0FSTl9JTkZJTklURV9SRUNVUlNJT04sCisrICAgICAgICAg
IENMQU5HX1dBUk5fREVQUkVDQVRFRF9PQkpDX0lNUExFTUVOVEFUSU9OUywgQ0xBTkdfV0FSTl9T
VVNQSUNJT1VTX01PVkUsCisrICAgICAgICAgIENMQU5HX1dBUk5fVU5SRUFDSEFCTEVfQ09ERSwg
Q0xBTkdfV0FSTl9PQkpDX0lNUExJQ0lUX1JFVEFJTl9TRUxGLCBhbmQKKysgICAgICAgICAgQ0xB
TkdfQU5BTFlaRVJfTE9DQUxJWkFCSUxJVFlfTk9OTE9DQUxJWkVELgorKworKzIwMTgtMDktMjEg
IEFkcmlhbiBQZXJleiBkZSBDYXN0cm8gIDxhcGVyZXpAaWdhbGlhLmNvbT4KKysKKysgICAgICAg
IFtHVEtdIEFOR0xFJ3MgZWdscGxhdGZvcm0uaCBkb2VzIG5vdCBzdXBwb3J0IFdheWxhbmQtb25s
eSBidWlsZHMKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xODk4NDQKKysKKysgICAgICAgIFJldmlld2VkIGJ5IE1pY2hhZWwgQ2F0YW56YXJvLgorKwor
KyAgICAgICAgVGhpcyBtYWtlcyBpdCBwb3NzaWJsZSB0byBidWlsZCBXZWJLaXRHVEsrIGFmdGVy
IHIyMjUzNDAgd2hlbiB0aGUKKysgICAgICAgIGJ1aWxkIGlzIGNvbmZpZ3VyZWQgdG8gc3VwcG9y
dCBvbmx5IFdheWxhbmQsIGFuZCB0aGUgWDExIGhlYWRlcnMKKysgICAgICAgIGFyZSBub3QgcHJl
c2VudC4KKysKKysgICAgICAgICogY2hhbmdlcy5kaWZmOiBVcGRhdGVkLgorKyAgICAgICAgKiBp
bmNsdWRlL0VHTC9lZ2xwbGF0Zm9ybS5oOiBJbmNsdWRlIHRoZSBYMTEgaGVhZGVycyBvbmx5IHdo
ZW4KKysgICAgICAgIEFOR0xFX1VTRV9YMTEgaXMgZGVmaW5lZCBhbmQsIGZvciBjb25zaXN0ZW5j
eSB3aXRoIE1lc2EncyB2ZXJzaW9uCisrICAgICAgICBvZiB0aGUgaGVhZGVyLCB3aGVuIE1FU0Ff
RUdMX05PX1gxMV9IRUFERVJTIGlzIG5vdCBkZWZpbmVkLgorKworKzIwMTgtMDgtMjkgIERhdmlk
IEtpbHplciAgPGRka2lsemVyQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFJlbW92ZSBlbXB0eSBk
aXJlY3RvcmllcyBmcm9tIGZyb20gc3ZuLndlYmtpdC5vcmcgcmVwb3NpdG9yeQorKyAgICAgICAg
PGh0dHBzOi8vd2Via2l0Lm9yZy9iLzE4OTA4MT4KKysKKysgICAgICAgICogc3JjL2FuZ2xlLnhj
b2RlcHJvajogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2NvbW1vbi90aGlyZF9wYXJ0eS9udW1l
cmljczogUmVtb3ZlZC4KKysKKysyMDE4LTA4LTI4ICBEYXZpZCBLaWx6ZXIgIDxkZGtpbHplckBh
cHBsZS5jb20+CisrCisrICAgICAgICBNb3ZlIFBNdXJIYXNoLntjcHAsaH0gaW50byAnc3JjJyBm
b2xkZXIgdG8gbWF0Y2ggcGF0aCBvbiBkaXNrCisrCisrICAgICAgICAqIEFOR0xFLnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2o6CisrICAgICAgICAoc3JjL2NvbW1vbi90aGlyZF9wYXJ0eS9zbWhh
c2hlci9zcmMpOiBBZGQgZm9sZGVyIGFuZCBtb3ZlCisrICAgICAgICBQTXVySGFzaC57Y3BwLGh9
IGludG8gaXQuICBUaGlzIG1ha2VzIHRpZHktWGNvZGUtcHJvamVjdC1maWxlCisrICAgICAgICBy
dW4gc21vb3RobHkgd2hlbiB1cGRhdGluZyB0aGUgQU5HTEUgcHJvamVjdC4KKysKKysyMDE4LTA4
LTI3ICBLZWl0aCBSb2xsaW4gIDxrcm9sbGluQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFVucmV2
aWV3ZWQgYnVpbGQgZml4IC0tIGRpc2FibGUgTFRPIGZvciBwcm9kdWN0aW9uIGJ1aWxkcworKwor
KyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnOgorKworKzIwMTgtMDgtMjcg
IEtlaXRoIFJvbGxpbiAgPGtyb2xsaW5AYXBwbGUuY29tPgorKworKyAgICAgICAgQnVpbGQgc3lz
dGVtIHN1cHBvcnQgZm9yIExUTworKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTE4Nzc4NQorKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzQyMzUzMTMyPgor
KworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGFuIEJlcm5zdGVpbi4KKysKKysgICAgICAgIFVwZGF0
ZSBCYXNlLnhjY29uZmlnIGFuZCBEZWJ1Z1JlbGVhc2UueGNjb25maWcgdG8gb3B0aW9uYWxseSBl
bmFibGUKKysgICAgICAgIExUTy4KKysKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMvQmFzZS54
Y2NvbmZpZzoKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMvRGVidWdSZWxlYXNlLnhjY29uZmln
OgorKworKzIwMTgtMDgtMDMgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0
Lm9yZz4KKysKKysgICAgICAgIEZpeCBzcGVsbGluZyBvZiAib3ZlcnJpZGRlbiIKKysgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODgzMTUKKysKKysgICAg
ICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgorKworKyAgICAgICAgKiBzcmMvbGliQU5HTEUv
cmVuZGVyZXIvUHJvZ3JhbUltcGwuaDoKKysKKysyMDE4LTA3LTE0ICBLb2NzZW4gQ2h1bmcgIDxr
b2NzZW5fY2h1bmdAYXBwbGUuY29tPgorKworKyAgICAgICAgRW5zdXJlIFdlYktpdCBzdGFjayBp
cyBhZC1ob2Mgc2lnbmVkCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTg3NjY3CisrCisrICAgICAgICBSZXZpZXdlZCBieSBBbGV4ZXkgUHJvc2t1cnlh
a292LgorKworKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnOgorKworKzIw
MTgtMDctMDQgIFRpbSBIb3J0b24gIDx0aW1vdGh5X2hvcnRvbkBhcHBsZS5jb20+CisrCisrICAg
ICAgICBJbnRyb2R1Y2UgUExBVEZPUk0oSU9TTUFDKQorKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4NzMxNQorKworKyAgICAgICAgUmV2aWV3ZWQgYnkg
RGFuIEJlcm5zdGVpbi4KKysKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZp
ZzoKKysKKysyMDE4LTA2LTA5ICBEYW4gQmVybnN0ZWluICA8bWl0ekBhcHBsZS5jb20+CisrCisr
ICAgICAgICBbWGNvZGVdIENsZWFuIHVwIGFuZCBtb2Rlcm5pemUgc29tZSBidWlsZCBzZXR0aW5n
IGRlZmluaXRpb25zCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTg2NDYzCisrCisrICAgICAgICBSZXZpZXdlZCBieSBTYW0gV2VpbmlnLgorKworKyAg
ICAgICAgKiBDb25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnOiBSZW1vdmVkIGRlZmluaXRpb24g
Zm9yIG1hY09TIDEwLjExLgorKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9EZWJ1Z1JlbGVhc2Uu
eGNjb25maWc6IERpdHRvLgorKworKzIwMTgtMDUtMzAgIERhdmlkIEtpbHplciAgPGRka2lsemVy
QGFwcGxlLmNvbT4KKysKKysgICAgICAgIEFOR0xFOiBGaXggY2xhbmcgc3RhdGljIGFuYWx5emVy
IGlzc3VlcyBpbiBHZXRFeGVjdXRhYmxlUGF0aCgpIGFuZCBHZXRFeGVjdXRhYmxlRGlyZWN0b3J5
KCkKKysgICAgICAgIDxodHRwczovL3dlYmtpdC5vcmcvYi8xODYxMDY+CisrICAgICAgICA8cmRh
cjovL3Byb2JsZW0vNDA2NTkxNzk+CisrCisrICAgICAgICBSZXZpZXdlZCBieSBBbGV4IENocmlz
dGVuc2VuLgorKworKyAgICAgICAgKiBzcmMvY29tbW9uL3N5c3RlbV91dGlsc19saW51eC5jcHA6
CisrICAgICAgICAoYW5nbGU6OkdldEV4ZWN1dGFibGVQYXRoKToKKysgICAgICAgIChhbmdsZTo6
R2V0RXhlY3V0YWJsZURpcmVjdG9yeSk6CisrICAgICAgICAqIHNyYy9jb21tb24vc3lzdGVtX3V0
aWxzX21hYy5jcHA6CisrICAgICAgICAoYW5nbGU6OkdldEV4ZWN1dGFibGVQYXRoKToKKysgICAg
ICAgIChhbmdsZTo6R2V0RXhlY3V0YWJsZURpcmVjdG9yeSk6CisrICAgICAgICAqIHNyYy9jb21t
b24vc3lzdGVtX3V0aWxzX3dpbi5jcHA6CisrICAgICAgICAoYW5nbGU6OkdldEV4ZWN1dGFibGVQ
YXRoKToKKysgICAgICAgIChhbmdsZTo6R2V0RXhlY3V0YWJsZURpcmVjdG9yeSk6CisrCisrMjAx
OC0wNS0yMiAgUnlhbiBIYWRkYWQgIDxyeWFuaGFkZGFkQGFwcGxlLmNvbT4KKysKKysgICAgICAg
IFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0IHIyMzIwNTIuCisrCisrICAgICAgICBCcmVha3MgaW50
ZXJuYWwgYnVpbGRzLgorKworKyAgICAgICAgUmV2ZXJ0ZWQgY2hhbmdlc2V0OgorKworKyAgICAg
ICAgIlVzZSBtb3JlIEMrKzE3IgorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTE4NTE3NgorKyAgICAgICAgaHR0cHM6Ly90cmFjLndlYmtpdC5vcmcvY2hh
bmdlc2V0LzIzMjA1MgorKworKzIwMTgtMDUtMjEgIFl1c3VrZSBTdXp1a2kgIDx1dGF0YW5lLnRl
YUBnbWFpbC5jb20+CisrCisrICAgICAgICBVc2UgbW9yZSBDKysxNworKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4NTE3NgorKworKyAgICAgICAgUmV2
aWV3ZWQgYnkgSkYgQmFzdGllbi4KKysKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMvQmFzZS54
Y2NvbmZpZzoKKysKKysyMDE4LTA0LTE4ICBKZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29t
PgorKworKyAgICAgICAgRG9uJ3QgcHV0IGJ1aWxkIHByb2R1Y3RzIGludG8gV0tfQUxURVJOQVRF
X1dFQktJVF9TREtfUEFUSCBmb3IgZW5naW5lZXJpbmcgYnVpbGRzCisrICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg0NzYyCisrCisrICAgICAgICBSZXZp
ZXdlZCBieSBEYW4gQmVybnN0ZWluLgorKworKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9CYXNl
LnhjY29uZmlnOgorKworKzIwMTgtMDQtMTkgIERhdmlkIEtpbHplciAgPGRka2lsemVyQGFwcGxl
LmNvbT4KKysKKysgICAgICAgIEVuYWJsZSBPYmplY3RpdmUtQyB3ZWFrIHJlZmVyZW5jZXMKKysg
ICAgICAgIDxodHRwczovL3dlYmtpdC5vcmcvYi8xODQ3ODk+CisrICAgICAgICA8cmRhcjovL3By
b2JsZW0vMzk1NzE3MTY+CisrCisrICAgICAgICBSZXZpZXdlZCBieSBEYW4gQmVybnN0ZWluLgor
KworKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnOgorKyAgICAgICAgKENM
QU5HX0VOQUJMRV9PQkpDX1dFQUspOiBFbmFibGUuCisrCisrMjAxOC0wMy0xOSAgQ2FybG9zIEFs
YmVydG8gTG9wZXogUGVyZXogIDxjbG9wZXpAaWdhbGlhLmNvbT4KKysKKysgICAgICAgIFJFR1JF
U1NJT04ocjIyNTM0MCk6IFdQRSBwb3J0IHNob3VsZCBub3QgYmUgZ2V0dGluZyBFR0wgWDExIHR5
cGVzIG9uIEFOR0xFCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTgzNzQ5CisrCisrICAgICAgICBSZXZpZXdlZCBieSBBbGV4IENocmlzdGVuc2VuLgor
KworKyAgICAgICAgQWRkIGJhY2sgdGhlIFVTRV9XUEUgaWZkZWYuCisrCisrICAgICAgICAqIGNo
YW5nZXMuZGlmZjoKKysgICAgICAgICogaW5jbHVkZS9FR0wvZWdscGxhdGZvcm0uaDoKKysKKysy
MDE4LTAzLTE1ICBUaW0gSG9ydG9uICA8dGltb3RoeV9ob3J0b25AYXBwbGUuY29tPgorKworKyAg
ICAgICAgQWRkIGFuZCBhZG9wdCBXS19BTFRFUk5BVEVfRlJBTUVXT1JLU19ESVIgaW4gQU5HTEUK
KysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODM2NzUK
KysgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8zODUxNTI4MT4KKysKKysgICAgICAgIFJldmlld2Vk
IGJ5IERhbiBCZXJuc3RlaW4uCisrCisrICAgICAgICAqIEFOR0xFLnhjb2RlcHJvai9wcm9qZWN0
LnBieHByb2o6CisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0FOR0xFLnhjY29uZmlnOgorKyAg
ICAgICAgKiBDb25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnOgorKworKzIwMTgtMDEtMjcgIERh
biBCZXJuc3RlaW4gIDxtaXR6QGFwcGxlLmNvbT4KKysKKysgICAgICAgIEhhdmVJbnRlcm5hbFNE
SyBpbmNsdWRlcyBzaG91bGQgYmUgIiNpbmNsdWRlPyIKKysgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzk2NzAKKysKKysgICAgICAgICogQ29uZmlndXJh
dGlvbnMvQmFzZS54Y2NvbmZpZzoKKysKKysyMDE4LTAxLTE4ICBEYW4gQmVybnN0ZWluICA8bWl0
ekBhcHBsZS5jb20+CisrCisrICAgICAgICBbWGNvZGVdIFN0cmVhbWxpbmUgYW5kIGZ1dHVyZS1w
cm9vZiB0YXJnZXQtbWFjT1MtdmVyc2lvbi1kZXBlbmRlbnQgYnVpbGQgc2V0dGluZyBkZWZpbml0
aW9ucworKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4
MTgwMworKworKyAgICAgICAgUmV2aWV3ZWQgYnkgVGltIEhvcnRvbi4KKysKKysgICAgICAgICog
Q29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZzogVXBkYXRlZC4KKysgICAgICAgICogQ29uZmln
dXJhdGlvbnMvRGVidWdSZWxlYXNlLnhjY29uZmlnOiBEaXR0by4KKysKKysyMDE4LTAxLTA5ICBE
YW4gQmVybnN0ZWluICA8bWl0ekBhcHBsZS5jb20+CisrCisrICAgICAgICBSZW1vdmVkIHNvbWUg
ZW1wdHkgZGlyZWN0b3JpZXMgdGhhdCB3ZXJlIGxlZnQgYmVoaW5kCisrCisrICAgICAgICAqIHNy
Yy90aGlyZF9wYXJ0eS9tdXJtdXJoYXNoOiBSZW1vdmVkLgorKyAgICAgICAgKiB0aGlyZF9wYXJ0
eTogUmVtb3ZlZC4KKysgICAgICAgICogdGhpcmRfcGFydHkvZGVxcDogUmVtb3ZlZC4KKysKKysy
MDE3LTEyLTE0ICBEYXZpZCBLaWx6ZXIgIDxkZGtpbHplckBhcHBsZS5jb20+CisrCisrICAgICAg
ICBFbmFibGUgLVdzdHJpY3QtcHJvdG90eXBlcyBmb3IgV2ViS2l0CisrICAgICAgICA8aHR0cHM6
Ly93ZWJraXQub3JnL2IvMTgwNzU3PgorKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzM2MDI0MTMy
PgorKworKyAgICAgICAgUnViYmVyLXN0YW1wZWQgYnkgSm9zZXBoIFBlY29yYXJvLgorKworKyAg
ICAgICAgKiBDb25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnOgorKyAgICAgICAgKENMQU5HX1dB
Uk5fU1RSSUNUX1BST1RPVFlQRVMpOiBBZGQuIFNldCB0byBZRVMuCisrCisrMjAxNy0xMi0wNiAg
RGVhbiBKYWNrc29uICA8ZGlub0BhcHBsZS5jb20+CisrCisrICAgICAgICBVcGRhdGUgQU5HTEUn
cyBjaGFuZ2VzLmRpZmYKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xODA0OTEKKysKKysgICAgICAgIFJldmlld2VkIGJ5IEFudG9pbmUgUXVpbnQuCisr
CisrICAgICAgICBIZXJlIGlzIHRoZSBsaXN0IG9mIHRoaW5ncyB3ZSd2ZSBjaGFuZ2VkIGZyb20g
dGhlCisrICAgICAgICBBTkdMRSBjb21taXQgdGhhdCB3ZSBtZXJnZWQgaW4uCisrCisrICAgICAg
ICAqIGNoYW5nZXMuZGlmZjoKKysKKysyMDE3LTEyLTA2ICBEZWFuIEphY2tzb24gIDxkaW5vQGFw
cGxlLmNvbT4KKysKKysgICAgICAgIFNvbWUgaU9TIHRlc3RzIGZhaWxpbmcgYWZ0ZXIgQU5HTEUg
dXBkYXRlCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTgwNDg3CisrICAgICAgICA8cmRhcjovL3Byb2JsZW0vMzU4ODU5Njk+CisrCisrICAgICAgICBS
ZXZpZXdlZCBieSBBbnRvaW5lIFF1aW50LgorKworKyAgICAgICAgVGhlIGlPUyBPcGVuR0wgY29t
cGlsZXIgZG9lc24ndCBsaWtlIGZ1bmN0aW9uIGRlY2xhcmF0aW9ucyB3aXRoCisrICAgICAgICBu
YW1lbGVzcyBhcnJheSBwYXJhbWV0ZXJzLiBTZWU6CisrICAgICAgICA8cmRhcjovL3Byb2JsZW0v
MzU4ODU5ODk+IE5hbWVsZXNzIGFycmF5IHBhcmFtZXRlcnMgaW4gZnVuY3Rpb24gZGVjbGFyYXRp
b24gY2F1c2UgY29tcGlsZXIgZXJyb3IKKysKKysgICAgICAgIFdoaWxlIHRoYXQgaXMgYmVpbmcg
Zml4ZWQsIHRlbGwgQU5HTEUncyB0cmFuc2xhdG9yIHRvIG5vdCBjdWxsCisrICAgICAgICB0aGUg
bmFtZXMgZnJvbSBwYXJhbWV0ZXJzLiBUaGlzIGlzIG5vdCBhIGJ1ZyBpbiBBTkdMRSwgc28gd2Ug
d29uJ3QKKysgICAgICAgIGZpeCBpdCB1cHN0cmVhbSBhdCB0aGUgbW9tZW50LgorKworKyAgICAg
ICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9QYXJzZUNvbnRleHQuY3BwOgorKyAgICAgICAg
KHNoOjpUUGFyc2VDb250ZXh0OjphZGRGdW5jdGlvblByb3RvdHlwZURlY2xhcmF0aW9uKToKKysK
KysyMDE3LTEyLTAxICBNaWNoYWVsIENhdGFuemFybyAgPG1jYXRhbnphcm9AaWdhbGlhLmNvbT4K
KysKKysgICAgICAgIFVucmV2aWV3ZWQsIGZpeCBieXRlIG9yZGVyIG1hY3JvcyBhbmQgYWRkcmVz
cyBuZXcgLVd1bmtub3duLXByYWdtYXMgd2FybmluZ3MKKysgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODAxNzcKKysgICAgICAgIDxyZGFyOi8vcHJvYmxl
bS8zNTc3NDczND4KKysKKysgICAgICAgIEknbSBub3Qgc3VyZSBob3cgdGhpcyBjb2RlIHdhcyBk
ZXZlbG9wZWQsIGFzIGl0IHNlZW1zIHRvIGhhdmUgYmVlbiBkZXNpZ25lZCBmb3IgR0NDLCBidXQg
aXQKKysgICAgICAgIGRvZXMgbm90IHVzZSBhbnkgb2YgR0NDJ3MgZG9jdW1lbnRlZCBieXRlIG9y
ZGVyIG1hY3JvcywgYW5kIGFjY29yZGluZ2x5IGRvZXMgbm90IHdvcmsuIExldCdzCisrICAgICAg
ICBmaXggaXQgdG8gZ3VhcmFudGVlIHRoZXJlIGFyZSBubyBwcm9ibGVtcyB3aGVuIGJ1aWxkaW5n
IHdpdGggR0NDLiBJIHByZXN1bWUgaXQgc2hvdWxkIGhlbHAKKysgICAgICAgIENsYW5nIGFzIHdl
bGwuCisrCisrICAgICAgICBUaGlzIHRpbWUsIGhvcGVmdWxseSB3aXRob3V0IGJyZWFraW5nIDMy
LWJpdCBtYWNPUywgd2hlcmUgX19CWVRFX09SREVSIGFjdHVhbGx5IGlzIGRlZmluZWQuCisrCisr
ICAgICAgICAqIHNyYy9jb21tb24vdGhpcmRfcGFydHkvc21oYXNoZXIvc3JjL1BNdXJIYXNoLmNw
cDoKKysgICAgICAgIChhbmdsZTo6UE11ckhhc2gzMl9Qcm9jZXNzKToKKysKKysyMDE3LTEyLTAx
ICBSeWFuIEhhZGRhZCAgPHJ5YW5oYWRkYWRAYXBwbGUuY29tPgorKworKyAgICAgICAgVW5yZXZp
ZXdlZCwgcm9sbGluZyBvdXQgcjIyNTQxMi4KKysKKysgICAgICAgIEJyZWFrcyAzMi1iaXQgbWFj
T1MgYnVpbGRzLgorKworKyAgICAgICAgUmV2ZXJ0ZWQgY2hhbmdlc2V0OgorKworKyAgICAgICAg
IlVucmV2aWV3ZWQsIGZpeCBieXRlIG9yZGVyIG1hY3JvcyBhbmQgYWRkcmVzcyBuZXcgLVd1bmtu
b3duLQorKyAgICAgICAgcHJhZ21hcyB3YXJuaW5ncyIKKysgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODAxNzcKKysgICAgICAgIGh0dHBzOi8vdHJhYy53
ZWJraXQub3JnL2NoYW5nZXNldC8yMjU0MTIKKysKKysyMDE3LTEyLTAxICBNaWNoYWVsIENhdGFu
emFybyAgPG1jYXRhbnphcm9AaWdhbGlhLmNvbT4KKysKKysgICAgICAgIFVucmV2aWV3ZWQsIGZp
eCBieXRlIG9yZGVyIG1hY3JvcyBhbmQgYWRkcmVzcyBuZXcgLVd1bmtub3duLXByYWdtYXMgd2Fy
bmluZ3MKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
ODAxNzcKKysgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8zNTc3NDczND4KKysKKysgICAgICAgIEkn
bSBub3Qgc3VyZSBob3cgdGhpcyBjb2RlIHdhcyBkZXZlbG9wZWQsIGFzIGl0IHNlZW1zIHRvIGhh
dmUgYmVlbiBkZXNpZ25lZCBmb3IgR0NDLCBidXQgaXQKKysgICAgICAgIGRvZXMgbm90IHVzZSBh
bnkgb2YgR0NDJ3MgZG9jdW1lbnRlZCBieXRlIG9yZGVyIG1hY3JvcywgYW5kIGFjY29yZGluZ2x5
IGRvZXMgbm90IHdvcmsuIExldCdzCisrICAgICAgICBmaXggaXQgdG8gZ3VhcmFudGVlIHRoZXJl
IGFyZSBubyBwcm9ibGVtcyB3aGVuIGJ1aWxkaW5nIHdpdGggR0NDLiBJIHByZXN1bWUgaXQgc2hv
dWxkIGhlbHAKKysgICAgICAgIENsYW5nIGFzIHdlbGwuCisrCisrICAgICAgICAqIHNyYy9jb21t
b24vdGhpcmRfcGFydHkvc21oYXNoZXIvc3JjL1BNdXJIYXNoLmNwcDoKKysgICAgICAgIChhbmds
ZTo6UE11ckhhc2gzMl9Qcm9jZXNzKToKKysKKysyMDE3LTEyLTAxICBUb21va2kgSW1haSAgPFRv
bW9raS5JbWFpQHNvbnkuY29tPgorKworKyAgICAgICAgRml4IFdpbkNhaXJvIGJ1aWxkIGJyZWFr
IGFmdGVyIHIyMjUzNDAKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xODAyMzAKKysKKysgICAgICAgIFVucmV2aWV3ZWQgYnVpbGQgZml4LgorKworKyAg
ICAgICAgKiBDTWFrZUxpc3RzLnR4dDogQWRkIG1pc3Npbmcgc291cmNlcy4KKysgICAgICAgICog
UGxhdGZvcm1XaW4uY21ha2U6IEFkZCBtaXNzaW5nIHNvdXJjZXMuCisrCisrMjAxNy0xMi0wMSAg
TWljaGFlbCBDYXRhbnphcm8gIDxtY2F0YW56YXJvQGlnYWxpYS5jb20+CisrCisrICAgICAgICBV
bnJldmlld2VkLCBmaXggLVd1bmtub3duLXByYWdtYXMgd2FybmluZ3MuCisrICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTgwMTc3CisrCisrICAgICAgICBJ
dCBzZWVtcyBHQ0MgaGFzIHN0YXJ0ZWQgdG8gd2FybiBhYm91dCB1bnJlY29nbml6ZWQgQ2xhbmcg
cHJhZ21hcy4gT2ggd2VsbC4KKysKKysgICAgICAgIFRoaXMgaXMgbm90IHNlbnQgdXBzdHJlYW0s
IGJlY2F1c2UgdGhlIENsYW5nIHByYWdtYXMgYXBwZWFyIHRvIGJlIGRvd25zdHJlYW0gV2ViS2l0
CisrICAgICAgICBhZGRpdGlvbnMuIGNoYW5nZXMuZGlmZiBpcyBub3QgdXBkYXRlZCwgYmVjYXVz
ZSBpdCB3YXMgbm90IHVwZGF0ZWQgaW4geWVzdGVyZGF5J3MgQU5HTEUKKysgICAgICAgIHVwZGF0
ZS4KKysKKysgICAgICAgICogaW5jbHVkZS9HTFNMQU5HL1NoYWRlclZhcnMuaDoKKysgICAgICAg
ICogc3JjL2xpYkFOR0xFL1BsYXRmb3JtLmNwcDoKKysKKysyMDE3LTExLTMwICBBbGV4IENocmlz
dGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisrCisrICAgICAgICBTcGVjdWxhdGl2
ZSBXaW5DYWlybyBmaXguCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTgwMTc3CisrCisrICAgICAgICAqIENNYWtlTGlzdHMudHh0OgorKyAgICAgICAg
KiBQbGF0Zm9ybVdpbi5jbWFrZToKKysKKysyMDE3LTExLTMwICBSeWFuIEhhZGRhZCAgPHJ5YW5o
YWRkYWRAYXBwbGUuY29tPgorKworKyAgICAgICAgVW5yZXZpZXdlZCBidWlsZCBmaXgsIHJlbW92
ZSBleGVjdXRhYmxlIHByb3BlcnR5IGZyb20gYSBoZWFkZXIgZmlsZS4KKysKKysgICAgICAgICog
aW5jbHVkZS9LSFIva2hycGxhdGZvcm0uaDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46ZXhlY3V0YWJs
ZS4KKysKKysyMDE3LTExLTMwICBEZWFuIEphY2tzb24gIDxkaW5vQGFwcGxlLmNvbT4KKysKKysg
ICAgICAgIFVwZGF0ZSBBTkdMRQorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTE4MDE3NworKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzM1Nzc0NzM0Pgor
KworKyAgICAgICAgUmV2aWV3ZWQgYnkgQWxleCBDaHJpc3RlbnNlbi4KKysKKysgICAgICAgIEh1
Z2UgbGlzdCBvZiBjaGFuZ2VkIGZpbGVzIG9taXR0ZWQuCisrCisrMjAxNy0wNy0xOCAgQW5keSBF
c3RlcyAgPGFlc3Rlc0BhcHBsZS5jb20+CisrCisrICAgICAgICBbWGNvZGVdIEVuYWJsZSBDTEFO
R19XQVJOX1JBTkdFX0xPT1BfQU5BTFlTSVMKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xNzQ2MzEKKysKKysgICAgICAgIFJldmlld2VkIGJ5IFRpbSBI
b3J0b24uCisrCisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWc6CisrCisr
MjAxNy0wNy0xOCAgQW5keSBFc3RlcyAgPGFlc3Rlc0BhcHBsZS5jb20+CisrCisrICAgICAgICBb
WGNvZGVdIEVuYWJsZSBDTEFOR19XQVJOX09CSkNfTElURVJBTF9DT05WRVJTSU9OCisrICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc0NjMxCisrCisrICAg
ICAgICBSZXZpZXdlZCBieSBTYW0gV2VpbmlnLgorKworKyAgICAgICAgKiBDb25maWd1cmF0aW9u
cy9CYXNlLnhjY29uZmlnOgorKworKzIwMTctMDctMTggIEFuZHkgRXN0ZXMgIDxhZXN0ZXNAYXBw
bGUuY29tPgorKworKyAgICAgICAgW1hjb2RlXSBFbmFibGUgQ0xBTkdfV0FSTl9OT05fTElURVJB
TF9OVUxMX0NPTlZFUlNJT04KKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xNzQ2MzEKKysKKysgICAgICAgIFJldmlld2VkIGJ5IERhbiBCZXJuc3RlaW4u
CisrCisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWc6CisrCisrMjAxNy0w
Ny0xOCAgQW5keSBFc3RlcyAgPGFlc3Rlc0BhcHBsZS5jb20+CisrCisrICAgICAgICBbWGNvZGVd
IEVuYWJsZSBDTEFOR19XQVJOX0JMT0NLX0NBUFRVUkVfQVVUT1JFTEVBU0lORworKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3NDYzMQorKworKyAgICAg
ICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIuCisrCisrICAgICAgICAqIENvbmZpZ3VyYXRpb25z
L0Jhc2UueGNjb25maWc6CisrCisrMjAxNy0wNy0xMyAgQWRyaWFuIFBlcmV6IGRlIENhc3RybyAg
PGFwZXJlekBpZ2FsaWEuY29tPgorKworKyAgICAgICAgZWdscGxhdGZvcm0uaCBkb2VzIG5vdCBz
dXBwb3J0IFdheWxhbmQKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xNjM0ODIKKysKKysgICAgICAgIFRoaXMgbWFrZXMgaXQgcG9zc2libGUgdG8gYnVp
bGQgV2ViS2l0R1RLKyB3aGVuIHRoZSB0YXJnZXQgc3lzdGVtIGhhcyBvbmx5IFdheWxhbmQgc3Vw
cG9ydCwKKysgICAgICAgIGJ1dCBubyBYMTEgKGFuZCB0aGVyZWZvcmUgdGhlIFgxMSBoZWFkZXJz
IGFyZSBub3QgcHJlc2VudCkuCisrCisrICAgICAgICBSZXZpZXdlZCBieSBBbGV4IENocmlzdGVu
c2VuLgorKworKyAgICAgICAgKiBpbmNsdWRlL0VHTC9lZ2xwbGF0Zm9ybS5oOiBBZGQgV2F5bGFu
ZCB0eXBlZGVmcyB3aGVuIFdMX0VHTF9QTEFURk9STSBpcyBkZWZpbmVkIChmb3IgZXhhbXBsZQor
KyAgICAgICAgYnkgaW5jbHVkaW5nIHdheWxhbmQtZWdsLmggYmVmb3JlIGluY2x1ZGluZyBFR0wv
ZWdsLmgpLiBBbHNvLCBpbmNsdWRlIHRoZSBYMTEgaGVhZGVycyBvbmx5CisrICAgICAgICB3aGVu
IEFOR0xFX1VTRV9YMTEgaXMgZGVmaW5lZCBhbmQsIGZvciBjb25zaXN0ZW5jeSB3aXRoIE1lc2En
cyB2ZXJzaW9uIG9mIHRoZSBoZWFkZXIsIHdoZW4KKysgICAgICAgIE1FU0FfRUdMX05PX1gxMV9I
RUFERVJTIGlzIG5vdCBkZWZpbmVkLgorKworKzIwMTctMDctMDMgIEFuZHkgRXN0ZXMgIDxhZXN0
ZXNAYXBwbGUuY29tPgorKworKyAgICAgICAgW1hjb2RlXSBBZGQgYW4gZXhwZXJpbWVudGFsIHNl
dHRpbmcgdG8gYnVpbGQgd2l0aCBjY2FjaGUKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xNzM4NzUKKysKKysgICAgICAgIFJldmlld2VkIGJ5IFRpbSBI
b3J0b24uCisrCisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0RlYnVnUmVsZWFzZS54Y2NvbmZp
ZzogSW5jbHVkZWQgY2NhY2hlLnhjY29uZmlnLgorKworKzIwMTctMDctMDEgIERhbiBCZXJuc3Rl
aW4gIDxtaXR6QGFwcGxlLmNvbT4KKysKKysgICAgICAgIFttYWNPU10gUmVtb3ZlIGNvZGUgb25s
eSBuZWVkZWQgd2hlbiBidWlsZGluZyBmb3IgT1MgWCBZb3NlbWl0ZQorKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3NDA2NworKworKyAgICAgICAgUmV2
aWV3ZWQgYnkgVGltIEhvcnRvbi4KKysKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMvQmFzZS54
Y2NvbmZpZzoKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMvRGVidWdSZWxlYXNlLnhjY29uZmln
OgorKworKzIwMTctMDYtMTAgIERhbiBCZXJuc3RlaW4gIDxtaXR6QGFwcGxlLmNvbT4KKysKKysg
ICAgICAgIFJldmVydGVkIHIyMTgwNTYgYmVjYXVzZSBpdCBtYWRlIHRoZSBJREUgcmVpbmRleCBj
b25zdGFudGx5LgorKworKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9EZWJ1Z1JlbGVhc2UueGNj
b25maWc6CisrCisrMjAxNy0wNi0xMCAgRGFuIEJlcm5zdGVpbiAgPG1pdHpAYXBwbGUuY29tPgor
KworKyAgICAgICAgW1hjb2RlXSBXaXRoIFhjb2RlIDkgZGV2ZWxvcGVyIGJldGEsIGV2ZXJ5dGhp
bmcgcmVidWlsZHMgd2hlbiBzd2l0Y2hpbmcgYmV0d2VlbiBjb21tYW5kLWxpbmUgYW5kIElERQor
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3MzIyMwor
KworKyAgICAgICAgUmV2aWV3ZWQgYnkgU2FtIFdlaW5pZy4KKysKKysgICAgICAgIFRoZSByZWJ1
aWxkcyB3ZXJlIGhhcHBlbmluZyBkdWUgdG8gYSBkaWZmZXJlbmNlIGluIHRoZSBjb21waWxlciBv
cHRpb25zIHRoYXQgdGhlIElERSBhbmQKKysgICAgICAgIHhjb2RlYnVpbGQgd2VyZSBzcGVjaWZ5
aW5nLiBPbmx5IHRoZSBJREUgd2FzIHBhc3NpbmcgdGhlIC1pbmRleC1zdG9yZS1wYXRoIG9wdGlv
bi4gVG8gbWFrZQorKyAgICAgICAgeGNvZGVidWlsZCBwYXNzIHRoYXQgb3B0aW9uLCB0b28sIHNl
dCBDTEFOR19JTkRFWF9TVE9SRV9FTkFCTEUgdG8gWUVTIGlmIGl0IGlzIHVuc2V0LCBhbmQKKysg
ICAgICAgIHNwZWNpZnkgYW4gYXBwcm9wcmlhdGUgcGF0aCBpbiBDTEFOR19JTkRFWF9TVE9SRV9Q
QVRILgorKworKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9EZWJ1Z1JlbGVhc2UueGNjb25maWc6
CisrCisrMjAxNy0wNS0yOCAgRGFuIEJlcm5zdGVpbiAgPG1pdHpAYXBwbGUuY29tPgorKworKyAg
ICAgICAgW1hjb2RlXSBBTFdBWVNfU0VBUkNIX1VTRVJfUEFUSFMgaXMgc2V0IHRvIFlFUworKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3MjY5MQorKwor
KyAgICAgICAgUmV2aWV3ZWQgYnkgVGltIEhvcnRvbi4KKysKKysgICAgICAgICogQ29uZmlndXJh
dGlvbnMvQmFzZS54Y2NvbmZpZzogU2V0IEFMV0FZU19TRUFSQ0hfVVNFUl9QQVRIUyB0byBOTy4K
KysKKysyMDE3LTA1LTA5ICBaYW4gRG9iZXJzZWsgIDx6ZG9iZXJzZWtAaWdhbGlhLmNvbT4KKysK
KysgICAgICAgIFVwc3RyZWFtIHRoZSBXUEUgcG9ydAorKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3MTExMAorKworKyAgICAgICAgUmV2aWV3ZWQgYnkg
QWxleCBDaHJpc3RlbnNlbi4KKysKKysgICAgICAgICogaW5jbHVkZS9FR0wvZWdscGxhdGZvcm0u
aDoKKysgICAgICAgIEFsbG93IGJ1aWxkaW5nIFdQRSBvbiBwbGF0Zm9ybXMgdGhhdCBkb24ndCBw
cm92aWRlIFgxMSBsaWJyYXJpZXMuCisrCisrMjAxNy0wNS0wNCAgRG9uIE9sbXN0ZWFkICA8ZG9u
Lm9sbXN0ZWFkQGFtLnNvbnkuY29tPgorKworKyAgICAgICAgW1dpbl0gUmVtb3ZlIHJlZHVuZGFu
dCBtYWNyb3MgdGhhdCBhcmUgc2V0IGluIHRoZSBDTWFrZSBjb25maWcKKysgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzE1NzEKKysKKysgICAgICAgIFJl
dmlld2VkIGJ5IEJyZW50IEZ1bGdoYW0uCisrCisrICAgICAgICAqIENNYWtlTGlzdHMudHh0Ogor
KworKzIwMTctMDQtMjAgIEtvbnN0YW50aW4gVG9rYXJldiAgPGFubnVsZW5AeWFuZGV4LnJ1Pgor
KworKyAgICAgICAgW2NtYWtlXSBEZWZpbmUgRk9SV0FSRElOR19IRUFERVJTX0RJUiBpbiBXZWJL
aXRGUyBhbmQgdXNlIGl0IGV2ZXJ5d2hlcmUKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xNzEwNzEKKysKKysgICAgICAgIFJldmlld2VkIGJ5IE1pY2hh
ZWwgQ2F0YW56YXJvLgorKworKyAgICAgICAgIiR7REVSSVZFRF9TT1VSQ0VTX0RJUn0vRm9yd2Fy
ZGluZ0hlYWRlcnMiIHBhdGggb2NjdXJzIHZlcnkgb2Z0ZW4gaW4gdGhlCisrICAgICAgICBidWls
ZCBzeXN0ZW0gZmlsZXMuIEdUSy1zcGVjaWZjIEZPUldBUkRJTkdfSEVBREVSU19ESVIgdmFyaWFi
bGUgc2hvdWxkCisrICAgICAgICBiZSBhdmFpbGFibGUgZm9yIGFsbCBwb3J0cy4KKysKKysgICAg
ICAgICogQ01ha2VMaXN0cy50eHQ6CisrCisrMjAxNy0wNC0yMCAgRnVqaWkgSGlyb25vcmkgIDxI
aXJvbm9yaS5GdWppaUBzb255LmNvbT4KKysKKysgICAgICAgIFtXaW5DYWlyb10gRml4IGJ1aWxk
IGJyZWFrIGFmdGVyIHVwZGF0aW5nIEFOR0xFCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTcwOTgwCisrCisrICAgICAgICBSZXZpZXdlZCBieSBCcmVu
dCBGdWxnaGFtLgorKworKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDogQWRkZWQgc29tZSBuZXcg
c291cmNlIGZpbGVzLgorKyAgICAgICAgKiBQbGF0Zm9ybU1hYy5jbWFrZTogRGl0dG8uCisrICAg
ICAgICAqIFBsYXRmb3JtV2luLmNtYWtlOiBEaXR0by4gUmVtb3ZlIGEgbWFjcm8gJ0FOR0xFX1dF
QktJVF9XSU4nCisrICAgICAgICBiZWNhdXNlIFNvZnRMaW5raW5nIGlzIG5vdCB1c2VkIGFueW1v
cmUuCisrICAgICAgICAqIHNyYy90aGlyZF9wYXJ0eS9zeXN0ZW1pbmZvLzogUmVzdG9yZWQuCisr
CisrMjAxNy0wNC0xOSAgUnlhbiBIYWRkYWQgIDxyeWFuaGFkZGFkQGFwcGxlLmNvbT4KKysKKysg
ICAgICAgIFJlbW92ZSBleGVjdXRhYmxlIHByb3BlcnR5IGZyb20gYSBoZWFkZXIgZmlsZS4KKysK
KysgICAgICAgICogaW5jbHVkZS9LSFIva2hycGxhdGZvcm0uaDogUmVtb3ZlZCBwcm9wZXJ0eSBz
dm46ZXhlY3V0YWJsZS4KKysKKysyMDE3LTA0LTE4ICBEZWFuIEphY2tzb24gIDxkaW5vQGFwcGxl
LmNvbT4KKysKKysgICAgICAgIEFkZCB0aGUgYWN0dWFsIGNvbnRlbnQgdG8gdGhlIGZpbGVzLCBu
b3cgdGhhdAorKyAgICAgICAgU1ZOIGtub3dzIHRoZXkgY2FuIGhhdmUgdGFicy4KKysKKysgICAg
ICAgICogc3JjL3RoaXJkX3BhcnR5L211cm11cmhhc2gvTXVybXVySGFzaDMuY3BwOgorKyAgICAg
ICAgKiBzcmMvdGhpcmRfcGFydHkvbXVybXVyaGFzaC9NdXJtdXJIYXNoMy5oOgorKworKzIwMTct
MDQtMTggIERlYW4gSmFja3NvbiAgPGRpbm9AYXBwbGUuY29tPgorKworKyAgICAgICAgV2luQ2Fp
cm8gbmVlZHMgdGhlc2UgZmlsZXMgSSByZWNlbnRseSByZW1vdmVkCisrICAgICAgICBmcm9tIG91
ciBjb3B5IG9mIEFOR0xFLgorKworKyAgICAgICAgKiBzcmMvdGhpcmRfcGFydHkvbXVybXVyaGFz
aC9MSUNFTlNFOiBBZGRlZC4KKysgICAgICAgICogc3JjL3RoaXJkX3BhcnR5L211cm11cmhhc2gv
TXVybXVySGFzaDMuY3BwOiBBZGRlZC4KKysgICAgICAgICogc3JjL3RoaXJkX3BhcnR5L211cm11
cmhhc2gvTXVybXVySGFzaDMuaDogQWRkZWQuCisrCisrMjAxNy0wNC0xOCAgRGVhbiBKYWNrc29u
ICA8ZGlub0BhcHBsZS5jb20+CisrCisrICAgICAgICBTdGlsbCB0cnlpbmcgdG8gZml4IFdpbmRv
d3MuCisrCisrICAgICAgICAqIFBsYXRmb3JtV2luLmNtYWtlOgorKworKzIwMTctMDQtMTggIERl
YW4gSmFja3NvbiAgPGRpbm9AYXBwbGUuY29tPgorKworKyAgICAgICAgQXR0ZW1wdCB0byBmaXgg
dGhlIFdpbmRvd3MgYnVpbGQuCisrCisrICAgICAgICAqIFBsYXRmb3JtV2luLmNtYWtlOgorKwor
KzIwMTctMDQtMTggIERlYW4gSmFja3NvbiAgPGRpbm9AYXBwbGUuY29tPgorKworKyAgICAgICAg
VXBkYXRlIEFOR0xFCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTcwOTQxCisrICAgICAgICA8cmRhcjovL3Byb2JsZW0vMzE2MzM5OTk+CisrCisrICAg
ICAgICBSZXZpZXdlZCBieSBBbGV4IENocmlzdGVuc2VuLgorKworKyAgICAgICAgSHVnZSBsaXN0
IG9mIGNoYW5nZWQgZmlsZXMgb21pdHRlZC4KKysKKysyMDE3LTA0LTEyICBEYW4gQmVybnN0ZWlu
ICA8bWl0ekBhcHBsZS5jb20+CisrCisrICAgICAgICBbTWFjXSBGdXR1cmUtcHJvb2YgLnhjY29u
ZmlnIGZpbGVzCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTcwODAyCisrCisrICAgICAgICBSZXZpZXdlZCBieSBUaW0gSG9ydG9uLgorKworKyAgICAg
ICAgKiBDb25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnOgorKyAgICAgICAgKiBDb25maWd1cmF0
aW9ucy9EZWJ1Z1JlbGVhc2UueGNjb25maWc6CisrCisrMjAxNi0xMi0yMCAgVGltIEhvcnRvbiAg
PHRpbW90aHlfaG9ydG9uQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFJlbW92ZSBhbiBBTkdMRSBN
YXJrZG93biBmaWxlIGZyb20gdGhlIEFOR0xFIHRhcmdldAorKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2NjI3OQorKworKyAgICAgICAgUmV2aWV3ZWQg
YnkgQWxleCBDaHJpc3RlbnNlbi4KKysKKysgICAgICAgICogQU5HTEUueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvajoKKysgICAgICAgIFdlIGRvbid0IG5lZWQgdG8gYnVpbGQgdGhpcywgaXQncyBu
b3Qgc291cmNlIGNvZGUuCisrCisrMjAxNi0xMi0xNSAgTXlsZXMgQy4gTWF4ZmllbGQgIDxtbWF4
ZmllbGRAYXBwbGUuY29tPgorKworKyAgICAgICAgU29ydCBYY29kZSBwcm9qZWN0IGZpbGVzCisr
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY1OTM3Cisr
CisrICAgICAgICBSZXZpZXdlZCBieSBTaW1vbiBGcmFzZXIuCisrCisrICAgICAgICAqIEFOR0xF
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisrCisrMjAxNi0xMi0xNSAgQWxleCBDaHJpc3Rl
bnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgorKworKyAgICAgICAgRml4IFdpbmRvd3Mg
V2ViR0wgYnVpbGQgYWZ0ZXIgcjIwOTgzMgorKworKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDoK
KysgICAgICAgICogaW5jbHVkZS9FR0wvZWdsLmg6CisrICAgICAgICAqIGluY2x1ZGUvR0xFUzIv
Z2wyLmg6CisrCisrMjAxNi0xMi0xNCAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3
ZWJraXQub3JnPgorKworKyAgICAgICAgUHJvZ3Jlc3MgdG93YXJkcyB1c2luZyBBTkdMRSB0byBk
byBXZWJHTCByZW5kZXJpbmcKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xNjU4NjQKKysKKysgICAgICAgIFJldmlld2VkIGJ5IERlYW4gSmFja3Nvbi4K
KysKKysgICAgICAgICogQU5HTEUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKysgICAgICAg
IENvbXBpbGUgbW9yZSBmaWxlcywgYW5kIGFkZCBzb21lIG1vcmUgInB1YmxpYyIgaGVhZGVycy4K
KysgICAgICAgIEFOR0xFIGlzIG5vdCBhIHB1YmxpYyBmcmFtZXdvcmssIHNvIHRoZXNlIGhlYWRl
cnMganVzdCBnbyBpbiAKKysgICAgICAgIFdlYktpdEJ1aWxkL1JlbGVhc2UvdXNyL2xvY2FsL2lu
Y2x1ZGUvQU5HTEUgdG8gYmUgaW5jbHVkZWQgd2hlbiBjb21waWxpbmcgV2ViQ29yZS4KKysgICAg
ICAgICogQU5HTEUvZWdsLmg6IEFkZGVkLgorKyAgICAgICAgKiBBTkdMRS9lZ2xleHQuaDogQWRk
ZWQuCisrICAgICAgICAqIEFOR0xFL2VnbHBsYXRmb3JtLmg6IEFkZGVkLgorKyAgICAgICAgKiBB
TkdMRS9lbnRyeV9wb2ludHNfZ2xlc18yXzAuaDogQWRkZWQuCisrICAgICAgICAqIEFOR0xFL2Vu
dHJ5X3BvaW50c19nbGVzXzJfMF9leHQuaDogQWRkZWQuCisrICAgICAgICAqIEFOR0xFL2VudHJ5
X3BvaW50c19nbGVzXzNfMC5oOiBBZGRlZC4KKysgICAgICAgICogQU5HTEUvZXhwb3J0Lmg6IEFk
ZGVkLgorKyAgICAgICAgKiBBTkdMRS9nbDIuaDogQWRkZWQuCisrICAgICAgICAqIEFOR0xFL2ds
MmV4dC5oOiBBZGRlZC4KKysgICAgICAgICogQU5HTEUvZ2wycGxhdGZvcm0uaDogQWRkZWQuCisr
ICAgICAgICAqIEFOR0xFL2dsMy5oOiBBZGRlZC4KKysgICAgICAgICogQU5HTEUvZ2wzMS5oOiBB
ZGRlZC4KKysgICAgICAgICogQU5HTEUvZ2wzcGxhdGZvcm0uaDogQWRkZWQuCisrICAgICAgICAq
IEFOR0xFL2tocnBsYXRmb3JtLmg6IEFkZGVkLgorKyAgICAgICAgQWRkIG1vcmUgZm9yd2FyZGlu
ZyBoZWFkZXJzLiAgVGhlcmUgYXJlIGFscmVhZHkgYSBmZXcsIGJ1dCB3ZSBuZWVkIG1vcmUuCisr
ICAgICAgICAqIENNYWtlTGlzdHMudHh0OgorKyAgICAgICAgKiBQbGF0Zm9ybU1hYy5jbWFrZToK
KysgICAgICAgIE1ha2UgdGhlIGZyYW1ld29ya3MgbGlua2VkIHRvIGJ5IEFOR0xFIGJlIHByaXZh
dGUgc28gZnJhbWV3b3JrcyB0aGF0IGxpbmsgd2l0aCAKKysgICAgICAgIEFOR0xFIGRvbid0IGF1
dG9tYXRpY2FsbHkgbGluayB3aXRoIHRoZW0uIFRoaXMgYWxsb3dzIG1lIHRvIHN3aXRjaCBBTkdM
RSBmcm9tIGEgCisrICAgICAgICBzdGF0aWMgbGlicmFyeSB0byBhIGR5bmFtaWMgbGlicmFyeSB0
byBtYWtlIHN1cmUgV2ViQ29yZSBpc24ndCBkaXJlY3RseSB1c2luZyBPcGVuR0wuCisrICAgICAg
ICAqIFBsYXRmb3JtV2luLmNtYWtlOgorKyAgICAgICAgTW92ZSBITFNMLXNwZWNpZmljIGZpbGVz
IHRvIG9ubHkgYmUgYnVpbHQgb24gV2luZG93cy4KKysgICAgICAgICogaW5jbHVkZS9FR0wvZWds
Lmg6CisrICAgICAgICAqIGluY2x1ZGUvRUdML2VnbHBsYXRmb3JtLmg6CisrICAgICAgICAqIGlu
Y2x1ZGUvR0xFUzIvZ2wyLmg6CisrICAgICAgICAqIGluY2x1ZGUvR0xFUzIvZ2wycGxhdGZvcm0u
aDoKKysgICAgICAgICogaW5jbHVkZS9HTEVTMy9nbDMuaDoKKysgICAgICAgICogaW5jbHVkZS9H
TEVTMy9nbDMxLmg6CisrICAgICAgICAqIGluY2x1ZGUvR0xFUzMvZ2wzMi5oOgorKyAgICAgICAg
KiBpbmNsdWRlL0dMRVMzL2dsM3BsYXRmb3JtLmg6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIv
ZW50cnlfcG9pbnRzX2VnbC5oOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL2VudHJ5X3BvaW50
c19lZ2xfZXh0Lmg6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvZW50cnlfcG9pbnRzX2dsZXNf
Ml8wLmg6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvZW50cnlfcG9pbnRzX2dsZXNfMl8wX2V4
dC5oOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL2VudHJ5X3BvaW50c19nbGVzXzNfMC5oOgor
KyAgICAgICAgKiBzcmMvbGliR0xFU3YyL2VudHJ5X3BvaW50c19nbGVzXzNfMS5oOgorKyAgICAg
ICAgSW5jbHVkZSBBTkdMRSBoZWFkZXJzIGFzICNpbmNsdWRlIDxBTkdMRS8qPiBpbnN0ZWFkIG9m
ICNpbmNsdWRlIDxLSFIvKj4gb3IgI2luY2x1ZGUgPEdMRVMvKj4KKysgICAgICAgIFRoaXMgaXMg
bmVlZGVkIHRvIGRpc3Rpbmd1aXNoIHRoZSBBTkdMRSBoZWFkZXJzIGZyb20gYW55IHN5c3RlbSBP
cGVuR0wvT3BlbkdMRVMgaGVhZGVycy4KKysgICAgICAgIFdlIHdpbGwgZXZlbnR1YWxseSBvbmx5
IGluY2x1ZGUgQU5HTEUncyBlbnRyeV9wb2ludHNfKi5oIGRpcmVjdGx5IGZyb20gV2ViQ29yZS4K
KysKKysyMDE2LTEyLTA3ICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5v
cmc+CisrCisrICAgICAgICBCdWlsZCBtb3JlIG9mIEFOR0xFIG9uIE1hYyBhbmQgV2luZG93cwor
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2NTU0Mwor
KworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGVhbiBKYWNrc29uLgorKworKyAgICAgICAgV2Ugd2ls
bCBuZWVkIHRvIGNvbXBpbGUgdGhlc2UgZmlsZXMgdG8gdXNlIEFOR0xFJ3MgR0xFU3YyIGltcGxl
bWVudGF0aW9uIGluc3RlYWQgb2YgCisrICAgICAgICB1c2luZyBPcGVuR0wgZGlyZWN0bHkuIE5v
IGZ1bmN0aW9uYWwgY2hhbmdlLgorKworKyAgICAgICAgKiBBTkdMRS54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qOgorKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDoKKysgICAgICAgIE1vdmUgcGxh
dGZvcm0tc3BlY2lmaWMgZmlsZXMgdG8gUGxhdGZvcm0qLmNtYWtlLgorKyAgICAgICAgKiBQbGF0
Zm9ybU1hYy5jbWFrZTogQWRkZWQuCisrICAgICAgICAqIFBsYXRmb3JtV2luLmNtYWtlOiBBZGRl
ZC4KKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL0Zvcm1hdC5jcHA6CisrICAgICAg
ICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9Gb3JtYXRfYXV0b2dlbi5jcHA6CisrICAgICAgICAo
YW5nbGU6OkZvcm1hdDo6R2V0KToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2ds
L1BhdGhHTC5jcHA6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvV2lu
ZG93U3VyZmFjZUNHTC5oOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2ds
L1dpbmRvd1N1cmZhY2VDR0wubW06CisrICAgICAgICBSZW5hbWUgU3dhcExheWVyIHRvIFdlYlN3
YXBMYXllci4gIE90aGVyd2lzZSwgV2ViQ29yZSBjb21wbGFpbnMgYWJvdXQgaW1wcm9wZXJseSBu
YW1lZCBPYmpDIGNsYXNzZXMuCisrICAgICAgICBTaW5jZSB0aGlzIGlzIHRoZSBvbmx5IG9uZSwg
bGV0J3MganVzdCByZW5hbWUgaXQgaW5zdGVhZCBvZiBhZGRpbmcgYW4gZXhjZXB0aW9uLgorKyAg
ICAgICAgKHJ4OjpXaW5kb3dTdXJmYWNlQ0dMOjppbml0aWFsaXplKToKKysgICAgICAgICgtW1N3
YXBMYXllciBpbml0V2l0aFNoYXJlZFN0YXRlOndpdGhDb250ZXh0OndpdGhGdW5jdGlvbnM6XSk6
IERlbGV0ZWQuCisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9mb3JtYXR1dGls
c2dsLmNwcDoKKysgICAgICAgIChyeDo6bmF0aXZlZ2w6OkdldEludGVybmFsRm9ybWF0TWFwKToK
KysgICAgICAgIChyeDo6bmF0aXZlZ2w6OkdldEludGVybmFsRm9ybWF0SW5mbyk6CisrICAgICAg
ICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9yZW5kZXJlcl91dGlscy5jcHA6CisrICAgICAgICAo
cng6OkdldENvbG9yV3JpdGVGdW5jdGlvbik6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvZW50
cnlfcG9pbnRzX2VnbC5jcHA6CisrICAgICAgICAoZWdsOjpHZXRQcm9jQWRkcmVzcyk6CisrCisr
MjAxNi0xMi0wNiAgQWxleGV5IFByb3NrdXJ5YWtvdiAgPGFwQGFwcGxlLmNvbT4KKysKKysgICAg
ICAgIENvcnJlY3QgU0RLUk9PVCB2YWx1ZXMgaW4geGNjb25maWcgZmlsZXMKKysgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjU0ODcKKysgICAgICAgIHJk
YXI6Ly9wcm9ibGVtLzI5NTM5MjA5CisrCisrICAgICAgICBSZXZpZXdlZCBieSBEYW4gQmVybnN0
ZWluLgorKworKyAgICAgICAgRml4IHN1Z2dlc3RlZCBieSBEYW4gQmVybnN0ZWluLgorKworKyAg
ICAgICAgKiBDb25maWd1cmF0aW9ucy9EZWJ1Z1JlbGVhc2UueGNjb25maWc6CisrCisrMjAxNi0x
MC0zMCAgTWljaGFlbCBDYXRhbnphcm8gIDxtY2F0YW56YXJvQGlnYWxpYS5jb20+CisrCisrICAg
ICAgICAtV3ByYWdtYXMgd2FybmluZyBzcGFtIGZyb20gYW5nbGV1dGlscy5oCisrICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY0MjA3CisrCisrICAgICAg
ICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KKysKKysgICAgICAgIFVzZSAjcHJhZ21hIGNsYW5n
IGluc3RlYWQgb2YgI3ByYWdtYSBHQ0Mgc2luY2UgYWxsIG9mIHRoZSB3YXJuaW5ncyB3ZSBuZWVk
IHRvIHN1cHByZXNzIGFyZQorKyAgICAgICAgQ2xhbmctc3BlY2lmaWMgd2FybmluZ3MuIEdDQyBp
Z25vcmVzIHVua25vd24gcHJhZ21hcyBhbmQgZG9lcyBub3Qgd2FybiwgYnV0IGl0IGRvZXMgd2Fy
biBpZgorKyAgICAgICAgYW55IEdDQyBwcmFnbWEgaXMgaW52YWxpZC4KKysKKysgICAgICAgIE5v
dGUgdGhhdCB0aGlzIG1pZ2h0IHN0aWxsIGJlIGJyb2tlbiBmb3IgTVNWQ0MsIGFzIE1TVkNDIHdh
cm5zIHdoZW4gaXQgc2VlcyB1bmtub3duIHByYWdtYXMuCisrCisrICAgICAgICAqIGNoYW5nZXMu
ZGlmZjoKKysgICAgICAgICogc3JjL2NvbW1vbi9hbmdsZXV0aWxzLmNwcDoKKysgICAgICAgIChG
b3JtYXRTdHJpbmcpOgorKyAgICAgICAgKiBzcmMvY29tbW9uL2FuZ2xldXRpbHMuaDoKKysgICAg
ICAgIChNYWtlU3RhdGljU3RyaW5nKToKKysgICAgICAgICogc3JjL2NvbW1vbi9kZWJ1Zy5jcHA6
CisrICAgICAgICAqIHNyYy9jb21tb24vbWF0aHV0aWwuY3BwOgorKyAgICAgICAgKiBzcmMvbGli
QU5HTEUvQ2Fwcy5jcHA6CisrICAgICAgICAoZ2w6OlRleHR1cmVDYXBzTWFwOjpnZXQpOgorKyAg
ICAgICAgKGdsOjpHZXRFeHRlbnNpb25JbmZvTWFwKToKKysgICAgICAgICogc3JjL2xpYkFOR0xF
L0RldmljZS5jcHA6CisrICAgICAgICAoZWdsOjpHZXREZXZpY2VTZXQpOgorKyAgICAgICAgKiBz
cmMvbGliQU5HTEUvRGlzcGxheS5jcHA6CisrICAgICAgICAoZWdsOjpEaXNwbGF5OjpnZXRDbGll
bnRFeHRlbnNpb25TdHJpbmcpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvZm9ybWF0dXRpbHMu
Y3BwOgorKyAgICAgICAgKGdsOjpHZXRJbnRlcm5hbEZvcm1hdE1hcCk6CisrICAgICAgICAoZ2w6
OkdldEFsbFNpemVkSW50ZXJuYWxGb3JtYXRzKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3Zh
bGlkYXRpb25FUzMuY3BwOgorKyAgICAgICAgKGdsOjpJc1ZhbGlkRVMzQ29weVRleEltYWdlQ29t
YmluYXRpb24pOgorKworKzIwMTYtMTAtMjggIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5z
ZW5Ad2Via2l0Lm9yZz4KKysKKysgICAgICAgIEFub3RoZXIgYnVpbGQgZml4LgorKworKyAgICAg
ICAgKiBDTWFrZUxpc3RzLnR4dDoKKysKKysyMDE2LTEwLTI4ICBBbGV4IENocmlzdGVuc2VuICA8
YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisrCisrICAgICAgICBGaXggV2luZG93cyBXZWJHTCBi
dWlsZCBhZnRlciByMjA4MDM2CisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTY0MTAxCisrCisrICAgICAgICAqIENNYWtlTGlzdHMudHh0OgorKworKzIw
MTYtMTAtMjcgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KKysK
KysgICAgICAgIEZpeCBXaW5kb3dzIFdlYkdMIGJ1aWxkIGFmdGVyIHIyMDgwMzYKKysgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjQxMDEKKysKKysgICAg
ICAgICogQ01ha2VMaXN0cy50eHQ6CisrICAgICAgICBBZGQgbmV3IGZpbGVzLCByZW1vdmUgZGVs
ZXRlZCBmaWxlcy4KKysKKysyMDE2LTEwLTI3ICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVu
c2VuQHdlYmtpdC5vcmc+CisrCisrICAgICAgICBVcGRhdGUgQU5HTEUKKysgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjQxMDEKKysKKysgICAgICAgIFJl
dmlld2VkIGJ5IERhcmluIEFkbGVyLgorKworKyAgICAgICAgVXBkYXRlZCB0byBmMDE3MzE1MzBl
N2Y3NTRlNWViYWYzMmQwMGYzZTIzYjYyMzc2NDI0CisrICAgICAgICBEaWZmZXJlbmNlcyBiZXR3
ZWVuIHVwc3RyZWFtIEFOR0xFIGFuZCBXZWJLaXQncyBjb3B5IG9mIEFOR0xFIGFyZSBpbiBjaGFu
Z2VzLmRpZmYKKysKKysyMDE2LTEwLTI0ICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2Vu
QHdlYmtpdC5vcmc+CisrCisrICAgICAgICBSZW1vdmUgdW51c2VkIEFOR0xFLnZjeHByb2ogYWZ0
ZXIgc3dpdGNoaW5nIHRvIENNYWtlIG9uIFdpbmRvd3MKKysKKysgICAgICAgICogQU5HTEUudmN4
cHJvajogUmVtb3ZlZC4KKysgICAgICAgICogQU5HTEUudmN4cHJvai9BTkdMRVJlbGVhc2UucHJv
cHM6IFJlbW92ZWQuCisrICAgICAgICAqIEFOR0xFLnZjeHByb2ovRGlyZWN0WDMyLnByb3BzOiBS
ZW1vdmVkLgorKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL0RpcmVjdFg2NC5wcm9wczogUmVtb3Zl
ZC4KKysgICAgICAgICogQU5HTEUudmN4cHJvai9saWJFR0wudmN4cHJvajogUmVtb3ZlZC4KKysg
ICAgICAgICogQU5HTEUudmN4cHJvai9saWJFR0wudmN4cHJvai5maWx0ZXJzOiBSZW1vdmVkLgor
KyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL2xpYkVHTENvbW1vbi5wcm9wczogUmVtb3ZlZC4KKysg
ICAgICAgICogQU5HTEUudmN4cHJvai9saWJHTEVTdjIudmN4cHJvajogUmVtb3ZlZC4KKysgICAg
ICAgICogQU5HTEUudmN4cHJvai9saWJHTEVTdjIudmN4cHJvai5maWx0ZXJzOiBSZW1vdmVkLgor
KyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL2xpYkdMRVN2MkNvbW1vbi5wcm9wczogUmVtb3ZlZC4K
KysgICAgICAgICogQU5HTEUudmN4cHJvai9wcmVwcm9jZXNzb3IudmN4cHJvajogUmVtb3ZlZC4K
KysgICAgICAgICogQU5HTEUudmN4cHJvai9wcmVwcm9jZXNzb3IudmN4cHJvai5maWx0ZXJzOiBS
ZW1vdmVkLgorKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL3RyYW5zbGF0b3JDb21tb24ucHJvcHM6
IFJlbW92ZWQuCisrICAgICAgICAqIEFOR0xFLnZjeHByb2ovdHJhbnNsYXRvcl9jb21tb24udmN4
cHJvajogUmVtb3ZlZC4KKysgICAgICAgICogQU5HTEUudmN4cHJvai90cmFuc2xhdG9yX2NvbW1v
bi52Y3hwcm9qLmZpbHRlcnM6IFJlbW92ZWQuCisrICAgICAgICAqIEFOR0xFLnZjeHByb2ovdHJh
bnNsYXRvcl9nbHNsLnZjeHByb2o6IFJlbW92ZWQuCisrICAgICAgICAqIEFOR0xFLnZjeHByb2ov
dHJhbnNsYXRvcl9nbHNsLnZjeHByb2ouZmlsdGVyczogUmVtb3ZlZC4KKysgICAgICAgICogQU5H
TEUudmN4cHJvai90cmFuc2xhdG9yX2hsc2wudmN4cHJvajogUmVtb3ZlZC4KKysgICAgICAgICog
QU5HTEUudmN4cHJvai90cmFuc2xhdG9yX2hsc2wudmN4cHJvai5maWx0ZXJzOiBSZW1vdmVkLgor
KworKzIwMTYtMDktMDkgIERlYW4gSmFja3NvbiAgPGRpbm9AYXBwbGUuY29tPgorKworKyAgICAg
ICAgW0FOR0xFXSBpbnN0YW50aWF0aW9uIG9mIHZhcmlhYmxlICdnbDo6R0xUeXBlVG9HTGVudW08
ZmxvYXQ+Ojp2YWx1ZScgcmVxdWlyZWQgaGVyZSwgYnV0IG5vIGRlZmluaXRpb24gaXMgYXZhaWxh
YmxlCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTYx
ODI5CisrICAgICAgICA8cmRhcjovL3Byb2JsZW0vMjgwNTEyNDQ+CisrCisrICAgICAgICBSZXZp
ZXdlZCBieSBBbGV4IENocmlzdGVuc2VuLgorKworKyAgICAgICAgTmV3ZXIgdmVyc2lvbnMgb2Yg
Y2xhbmcgcmVxdWlyZSBleHBsaWNpdCBkZWZpbml0aW9uIG9mIHNvbWUgdGVtcGxhdGUgdHlwZXMK
KysgICAgICAgIGlmIHRoZXkgYXJlIGluIGFub3RoZXIgdHJhbnNsYXRpb24gdW5pdC4KKysKKysg
ICAgICAgICogc3JjL2xpYkFOR0xFL1Byb2dyYW0uY3BwOiBBZGQgZGVmaW5pdGlvbnMgZm9yIEdM
VHlwZVRvR0xlbnVtLgorKworKzIwMTYtMDctMjkgIERhdmlkIEtpbHplciAgPGRka2lsemVyQGFw
cGxlLmNvbT4KKysKKysgICAgICAgIEFOR0xFOiBGaXggZ2xvYmFsIGNvbnN0cnVjdG9ycyBhbmQg
ZXhpdC10aW1lIGRlc3RydWN0b3JzCisrICAgICAgICA8aHR0cHM6Ly93ZWJraXQub3JnL2IvMTYw
MzMyPgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIuCisrCisrICAgICAgICAq
IENvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWc6CisrICAgICAgICAtIEFkZCB3YXJuaW5nIGZs
YWdzLgorKworKyAgICAgICAgKiBzcmMvY29tbW9uL2FuZ2xldXRpbHMuY3BwOgorKyAgICAgICAg
KEZvcm1hdFN0cmluZyk6CisrICAgICAgICAqIHNyYy9jb21tb24vYW5nbGV1dGlscy5oOgorKyAg
ICAgICAgKE1ha2VTdGF0aWNTdHJpbmcpOgorKyAgICAgICAgKiBzcmMvY29tbW9uL2RlYnVnLmNw
cDoKKysgICAgICAgICogc3JjL2NvbW1vbi9tYXRodXRpbC5jcHA6CisrICAgICAgICAoZ2w6Omdf
c2hhcmVkZXhwX21heCk6CisrICAgICAgICAoZ2w6OmNvbnZlcnRSR0JGbG9hdHNUbzk5OUU1KToK
KysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvU2hhZGVyTGFuZy5jcHA6CisrICAg
ICAgICAoU2hHZXRVbmlmb3JtUmVnaXN0ZXJNYXApOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUv
Q2Fwcy5jcHA6CisrICAgICAgICAoZ2w6OlRleHR1cmVDYXBzTWFwOjpnZXQpOgorKyAgICAgICAg
KiBzcmMvbGliQU5HTEUvRGV2aWNlLmNwcDoKKysgICAgICAgIChlZ2w6OkdldERldmljZVNldCk6
CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9EaXNwbGF5LmNwcDoKKysgICAgICAgIChlZ2w6OkRp
c3BsYXk6OmdldENsaWVudEV4dGVuc2lvblN0cmluZyk6CisrICAgICAgICAqIHNyYy9saWJBTkdM
RS9mb3JtYXR1dGlscy5jcHA6CisrICAgICAgICAoZ2w6OkJ1aWxkRm9ybWF0TWFwKToKKysgICAg
ICAgIChnbDo6QnVpbGRJbnRlcm5hbEZvcm1hdEluZm9NYXApOgorKyAgICAgICAgKGdsOjpHZXRJ
bnRlcm5hbEZvcm1hdE1hcCk6CisrICAgICAgICAoZ2w6OkJ1aWxkQWxsU2l6ZWRJbnRlcm5hbEZv
cm1hdFNldCk6CisrICAgICAgICAoZ2w6OkdldFNpemVkSW50ZXJuYWxGb3JtYXQpOgorKyAgICAg
ICAgKGdsOjpHZXRBbGxTaXplZEludGVybmFsRm9ybWF0cyk6CisrICAgICAgICAqIHNyYy9saWJB
TkdMRS92YWxpZGF0aW9uRVMzLmNwcDoKKysgICAgICAgIChnbDo6QnVpbGRFUzNGb3JtYXRTZXQp
OgorKyAgICAgICAgKGdsOjpWYWxpZGF0ZVRleEltYWdlRm9ybWF0Q29tYmluYXRpb24pOgorKyAg
ICAgICAgKGdsOjpCdWlsZFNpemVkRWZmZWN0aXZlSW50ZXJuYWxGb3JtYXRMaXN0KToKKysgICAg
ICAgIChnbDo6QnVpbGRVbnNpemVkRWZmZWN0aXZlSW50ZXJuYWxGb3JtYXRMaXN0KToKKysgICAg
ICAgIChnbDo6R2V0RWZmZWN0aXZlSW50ZXJuYWxGb3JtYXQpOgorKyAgICAgICAgKGdsOjpCdWls
ZFZhbGlkRVMzQ29weVRleEltYWdlQ29tYmluYXRpb25zKToKKysgICAgICAgIChnbDo6SXNWYWxp
ZEVTM0NvcHlUZXhJbWFnZUNvbWJpbmF0aW9uKToKKysgICAgICAgIC0gRml4IGdsb2JhbCBjb25z
dHJ1Y3RvcnMgYW5kIGV4aXQtdGltZSBkZXN0cnVjdG9ycy4KKysKKysyMDE2LTA3LTEzICBFbnJp
Y2EgQ2FzdWNjaSAgPGVucmljYUBhcHBsZS5jb20+CisrCisrICAgICAgICBVcGRhdGUgc3VwcG9y
dGVkIHBsYXRmb3JtcyBpbiB4Y2NvbmZpZyBmaWxlcyB0byBtYXRjaCB0aGUgc2RrIG5hbWVzLgor
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1OTcyOAor
KworKyAgICAgICAgUmV2aWV3ZWQgYnkgVGltIEhvcnRvbi4KKysKKysgICAgICAgICogQ29uZmln
dXJhdGlvbnMvQmFzZS54Y2NvbmZpZzoKKysKKysyMDE2LTA1LTI0ICBBbGV4IENocmlzdGVuc2Vu
ICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisrCisrICAgICAgICBGaXggaU9TIFdlYkdMIGFm
dGVyIHIxOTk3MzgKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0xNTgwMjQKKysgICAgICAgIHJkYXI6Ly9wcm9ibGVtLzI2NDQ2Njc5CisrCisrICAgICAg
ICBSZXZpZXdlZCBieSBNeWxlcyBNYXhmaWVsZC4KKysKKysgICAgICAgICogQU5HTEUueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvajoKKysgICAgICAgIGlPUyBuZWVkcyB0aGUgRVNTTCB0cmFuc2xh
dG9yLgorKworKzIwMTYtMDUtMjIgIEJyYWR5IEVpZHNvbiAgPGJlaWRzb25AYXBwbGUuY29tPgor
KworKyAgICAgICAgTW92ZSB0byBDKysxNC4KKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xNTc5NDgKKysKKysgICAgICAgIFJldmlld2VkIGJ5IE1pY2hh
ZWwgQ2F0YW56YXJvLgorKworKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmln
OgorKworKzIwMTYtMDQtMjYgIFBlciBBcm5lIFZvbGxhbiAgPHBlYXZvQG91dGxvb2suY29tPgor
KworKyAgICAgICAgW1dpbkNhaXJvXVtBTkdMRV0gRGlzcGxheSBvYmplY3QgaXMgbm90IGNyZWF0
ZWQuCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU3
MDQyCisrCisrICAgICAgICBSZXZpZXdlZCBieSBBbGV4IENocmlzdGVuc2VuLgorKworKyAgICAg
ICAgVGhlIENyZWF0ZURpc3BsYXlGcm9tQXR0cmlicyBmdW5jdGlvbiB3aWxsIG5vdCBjcmVhdGUg
YSBEaXNwbGF5RDNEIG9iamVjdCB3aGVuIHRoZSByZXF1ZXN0ZWQKKysgICAgICAgIHR5cGUgaXMg
RUdMX1BMQVRGT1JNX0FOR0xFX1RZUEVfREVGQVVMVF9BTkdMRSwgYmVjYXVzZSBBTkdMRV9FTkFC
TEVfT1BFTkdMIGlzIG5vdCBkZWZpbmVkLgorKyAgICAgICAgV2Ugc2hvdWxkIGJlIGFibGUgdG8g
Y3JlYXRlIGEgRGlzcGxheUQzRCBvYmplY3Qgd2l0aG91dCBkZWZpbmluZyBBTkdMRV9FTkFCTEVf
T1BFTkdMLgorKworKyAgICAgICAgKiBzcmMvbGliQU5HTEUvRGlzcGxheS5jcHA6CisrCisrMjAx
Ni0wNC0yNiAgUGVyIEFybmUgVm9sbGFuICA8cGVhdm9Ab3V0bG9vay5jb20+CisrCisrICAgICAg
ICBbV2luQ2Fpcm9dW1dlYkdMXSBFbmFibGUgRVNTTCBhbmQgR0xTTCB0cmFuc2xhdG9ycy4KKysg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTcwMDIKKysK
KysgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgorKworKyAgICAgICAgRW5hYmxlIHN1
cHBvcnQgZm9yIEVTU0wgYW5kIEdMU0wgdHJhbnNsYXRvcnMsIGFuZCBhZGQgbWlzc2luZyBmaWxl
cy4KKysKKysgICAgICAgICogQ01ha2VMaXN0cy50eHQ6CisrCisrMjAxNi0wNC0yMiAgSm9vbmdo
dW4gUGFyayAgPGpoNzE4LnBhcmtAc2Ftc3VuZy5jb20+CisrCisrICAgICAgICBbQU5HTEVdIFJl
bW92ZSBkZXByZWNhdGVkIGF1dG9fcHRyIHdhcm5pbmcuIFVucmV2aWV3ZWQuCisrICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU2ODk0CisrCisrICAgICAg
ICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvTWFjcm9FeHBhbmRlci5oOiBVc2Ugc3RkOjp1
bmlxdWVfcHRyIGluc3RlYWQgb2Ygc3RkOjphdXRvX3B0ci4KKysKKysyMDE2LTA0LTE5ICBBbGV4
IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisrCisrICAgICAgICBCdWls
ZCBmaXggYWZ0ZXIgcjE5OTczOAorKworKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDoKKysKKysy
MDE2LTA0LTE5ICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+Cisr
CisrICAgICAgICBCdWlsZCBmaXggYWZ0ZXIgcjE5OTczOAorKworKyAgICAgICAgKiBDTWFrZUxp
c3RzLnR4dDoKKysKKysyMDE2LTA0LTE5ICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2Vu
QHdlYmtpdC5vcmc+CisrCisrICAgICAgICBCdWlsZCBmaXguCisrCisrICAgICAgICAqIHNyYy9j
b21waWxlci90cmFuc2xhdG9yL0ludGVybWVkaWF0ZS5oOiBBZGRlZC4KKysgICAgICAgIChUSW50
ZXJtZWRpYXRlOjpUSW50ZXJtZWRpYXRlKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5z
bGF0b3IvaW50ZXJtZWRpYXRlLmg6IFJlbW92ZWQuCisrICAgICAgICBDaGFuZ2VkIGNhc2Ugb2Yg
SW50ZXJtZWRpYXRlLmggZmlsZSBuYW1lIGZvciBjYXNlIHNlbnNpdGl2ZSBmaWxlIHN5c3RlbXMu
CisrCisrMjAxNi0wNC0xOSAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQu
b3JnPgorKworKyAgICAgICAgVXBkYXRlIEFOR0xFCisrICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU2NzU1CisrCisrICAgICAgICBSZXZpZXdlZCBieSBE
ZWFuIEphY2tzb24uCisrCisrICAgICAgICBIdWdlIGxpc3Qgb2YgY2hhbmdlZCBmaWxlcyBvbWl0
dGVkLgorKworKzIwMTYtMDQtMTIgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Vi
a2l0Lm9yZz4KKysKKysgICAgICAgIFJlbW92ZSBmYWlsaW5nIGFzc2VydGlvbiBpbiBBTkdMRQor
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1NjQ4NQor
KworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGVhbiBKYWNrc29uLgorKworKyAgICAgICAgKiBzcmMv
Y29tcGlsZXIvdHJhbnNsYXRvci9nbHNsYW5nLmw6CisrICAgICAgICAqIHNyYy9jb21waWxlci90
cmFuc2xhdG9yL2dsc2xhbmdfbGV4LmNwcDoKKysKKysyMDE2LTA0LTExICBGdWppaSBIaXJvbm9y
aSAgPEhpcm9ub3JpLkZ1amlpQGpwLnNvbnkuY29tPgorKworKyAgICAgICAgW0NNYWtlXSBNYWtl
IEZPTERFUiBwcm9wZXJ0eSBJTkhFUklURUQKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xNTY0NjAKKysKKysgICAgICAgIFJldmlld2VkIGJ5IEJyZW50
IEZ1bGdoYW0uCisrCisrICAgICAgICAqIENNYWtlTGlzdHMudHh0OgorKyAgICAgICAgU2V0IEZP
TERFUiBwcm9wZXJ0eSBhcyBhIGRpcmVjdG9yeSBwcm9wZXJ0eSBub3QgYSB0YXJnZXQgcHJvcGVy
dHkKKysKKysyMDE2LTAzLTIyICBBbGJlcnRvIEdhcmNpYSAgPGJlcnRvQGlnYWxpYS5jb20+Cisr
CisrICAgICAgICBVbnJldmlld2VkIHR5cG8gZml4LgorKworKyAgICAgICAgKiBzcmMvY29tcGls
ZXIvdHJhbnNsYXRvci9JbmZvU2luay5jcHA6CisrICAgICAgICAoVEluZm9TaW5rQmFzZTo6cHJl
Zml4KTogIlVOS09XTiIgPT4gIlVOS09XTiIuCisrCisrMjAxNi0wMy0yMCAgRGFuIEJlcm5zdGVp
biAgPG1pdHpAYXBwbGUuY29tPgorKworKyAgICAgICAgW01hY10gRGV0ZXJtaW5lIFRBUkdFVF9N
QUNfT1NfWF9WRVJTSU9OX01BSk9SIGZyb20gTUFDT1NYX0RFUExPWU1FTlRfVEFSR0VUIHJhdGhl
ciB0aGFuIGZyb20gTUFDX09TX1hfVkVSU0lPTl9NQUpPUgorKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1NTcwNworKyAgICAgICAgPHJkYXI6Ly9wcm9i
bGVtLzI0OTgwNjkxPgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIuCisrCisr
ICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWc6IFNldCBUQVJHRVRfTUFDX09T
X1hfVkVSU0lPTl9NQUpPUiBiYXNlZCBvbiB0aGUgbGFzdAorKyAgICAgICAgICBjb21wb25lbnQg
b2YgTUFDT1NYX0RFUExPWU1FTlRfVEFSR0VULgorKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9E
ZWJ1Z1JlbGVhc2UueGNjb25maWc6IEZvciBlbmdpbmVlcmluZyBidWlsZHMsIHByZXNlcnZlIHRo
ZSBiZWhhdmlvciBvZgorKyAgICAgICAgICBUQVJHRVRfTUFDX09TX1hfVkVSU0lPTl9NQUpPUiBi
ZWluZyB0aGUgaG9zdOKAmXMgT1MgdmVyc2lvbi4KKysKKysyMDE2LTAzLTIwICBEYW4gQmVybnN0
ZWluICA8bWl0ekBhcHBsZS5jb20+CisrCisrICAgICAgICBVcGRhdGUgYnVpbGQgc2V0dGluZ3MK
KysKKysgICAgICAgIFJ1YmJlci1zdGFtcGVkIGJ5IEFuZHkgRXN0ZXMuCisrCisrICAgICAgICAq
IENvbmZpZ3VyYXRpb25zL0RlYnVnUmVsZWFzZS54Y2NvbmZpZzoKKysKKysyMDE2LTAyLTIzICBE
YW4gQmVybnN0ZWluICA8bWl0ekBhcHBsZS5jb20+CisrCisrICAgICAgICBbWGNvZGVdIExpbmtl
ciBlcnJvcnMgZGlzcGxheSBtYW5nbGVkIG5hbWVzLCBidXQgbm8gbG9uZ2VyIHNob3VsZAorKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1NDYzMgorKwor
KyAgICAgICAgUmV2aWV3ZWQgYnkgU2FtIFdlaW5pZy4KKysKKysgICAgICAgICogQ29uZmlndXJh
dGlvbnMvQmFzZS54Y2NvbmZpZzogU3RvcCBzZXR0aW5nIExJTktFUl9ESVNQTEFZU19NQU5HTEVE
X05BTUVTIHRvIFlFUy4KKysKKysyMDE2LTAxLTA4ICBCcmVudCBGdWxnaGFtICA8YmZ1bGdoYW1A
YXBwbGUuY29tPgorKworKyAgICAgICAgW0FOR0xFXSBDb3JyZWN0IFVOUkVBQ0hBQkxFIHJ1bnRp
bWUgYXNzZXJ0aW9uIGZvciB2b2lkIGNvbnN0cnVjdG9ycworKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1MjkwMAorKyAgICAgICAgPHJkYXI6Ly9wcm9i
bGVtLzI0MTA3NTAxPgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgQWxleCBDaHJpc3RlbnNlbi4K
KysKKysgICAgICAgIFRlc3RlZCBieSBLaHJvbm9zIFdlYkdMIDEuMC40IHN1aXRlLgorKworKyAg
ICAgICAgTWVyZ2UgYSBzbWFsbCBwYXJ0IG9mIEFOR0xFIHVwc3RyZWFtIGNvbW1pdCByMjg0NzM1
OgorKyAgICAgICAgCisrICAgICAgICAgICAgY29tbWl0ICAgIDAxOTcxMTEzNDkyZDlhY2EzODZm
MmJjYTAyMWIxZjRiMTM0ZmMyNzcKKysgICAgICAgICAgICBhdXRob3IgICAgRG1pdHJ5IFNraWJh
IDxkc2tpYmFAZ29vZ2xlLmNvbT4gIEZyaSBKdWwgMTAgMTg6NTQ6MDAgMjAxNQorKyAgICAgICAg
ICAgIGNvbW1pdHRlciBKYW1pZSBNYWRpbGwgPGptYWRpbGxAY2hyb21pdW0ub3JnPiAgRnJpIEp1
bCAxMCAxOTowMzozNCAyMDE1CisrICAgICAgICAgICAgdHJlZSAgICAgIDQ3ZTQyZWFjMDBmN2Q2
NGNkZGIxNGIzY2MyMWE0ZTYwNWMxODlkMjAKKysKKysgICAgICAgIFRoaXMgaXNzdWUgd2FzIGZv
dW5kIGJ5IDxodHRwczovL3d3dy5raHJvbm9zLm9yZy9yZWdpc3RyeS93ZWJnbC9zZGsvdGVzdHMv
Y29uZm9ybWFuY2UvZ2xzbC9idWdzL2FuZ2xlLWNvbnN0cnVjdG9yLWludmFsaWQtcGFyYW1ldGVy
cy5odG1sP3dlYmdsVmVyc2lvbj0xJnF1aWV0PTA+CisrCisrICAgICAgICAqIHNyYy9jb21waWxl
ci90cmFuc2xhdG9yL1R5cGVzLmNwcDoKKysgICAgICAgIChUVHlwZTo6YnVpbGRNYW5nbGVkTmFt
ZSk6IERvbid0IGFzc2VydCB3aXRoIFVOUkVBQ0hBQkxFIGhlcmUuCisrCisrMjAxNS0xMi0yOCAg
Sm9vbmdodW4gUGFyayAgPGpoNzE4LnBhcmtAc2Ftc3VuZy5jb20+CisrCisrICAgICAgICBbQU5H
TEVdW0VGTF1bR1RLXSBSZW1vdmUgJ3RlbXBsYXRlPGNsYXNzPiBjbGFzcyBzdGQ6OmF1dG9fcHRy
IGlzIGRlcHJlY2F0ZWQnIGNvbXBpbGUgd2FybmluZworKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1MjU2NworKworKyAgICAgICAgUmV2aWV3ZWQgYnkg
QWxleCBDaHJpc3RlbnNlbi4KKysKKysgICAgICAgIEJlY2F1c2UgYXV0b19wdHIgaXMgZGVwcmVj
YXRlZCBhcyBvZiBDKysxMSwgd2Ugc2hvdWxkIHVzZSB1bmlxdWVfcHRyIGluc3RlYWQuCisrCisr
ICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvTWFjcm9FeHBhbmRlci5oOgorKwor
KzIwMTUtMTItMTkgIERhbiBCZXJuc3RlaW4gIDxtaXR6QGFwcGxlLmNvbT4KKysKKysgICAgICAg
IFtNYWNdIFdlYktpdCBjb250YWlucyBkZWFkIHNvdXJjZSBjb2RlIGZvciBPUyBYIE1hdmVyaWNr
cyBhbmQgZWFybGllcgorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTE1MjQ2MgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgQWxleGV5IFByb3NrdXJ5YWtv
di4KKysKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMvRGVidWdSZWxlYXNlLnhjY29uZmlnOiBS
ZW1vdmVkIGRlZmluaXRpb25zIG9mIE1BQ09TWF9ERVBMT1lNRU5UX1RBUkdFVCBmb3IKKysgICAg
ICAgICAgT1MgWCAxMC44IGFuZCAxMC45LgorKworKzIwMTUtMTItMDMgIEFuZGVycyBDYXJsc3Nv
biAgPGFuZGVyc2NhQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFJlbW92ZSBPYmplY3RpdmUtQyBH
QyBzdXBwb3J0CisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTUxODE5CisrICAgICAgICByZGFyOi8vcHJvYmxlbS8yMzc0Njk5MQorKworKyAgICAgICAg
UmV2aWV3ZWQgYnkgRGFuIEJlcm5zdGVpbi4KKysKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMv
QmFzZS54Y2NvbmZpZzoKKysKKysyMDE1LTExLTMwICBEYW5hIEJ1cmthcnQgIDxkYnVya2FydEBh
cHBsZS5jb20+CisrCisrICAgICAgICBSZW1vdmUgTW91bnRhaW4gTGlvbiBzdXBwb3J0IGZyb20g
QU5HTEUKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
NTE2NzkKKysKKysgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgorKworKyAgICAgICAg
KiBDb25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnOgorKworKzIwMTUtMTEtMDIgIEFuZHkgRXN0
ZXMgIDxhZXN0ZXNAYXBwbGUuY29tPgorKworKyAgICAgICAgW0NvY29hXSBBZGQgdHZPUyBhbmQg
d2F0Y2hPUyB0byBTVVBQT1JURURfUExBVEZPUk1TCisrICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTUwODE5CisrCisrICAgICAgICBSZXZpZXdlZCBieSBE
YW4gQmVybnN0ZWluLgorKworKyAgICAgICAgVGhpcyB0ZWxscyBYY29kZSB0byBpbmNsdWRlIHRo
ZXNlIHBsYXRmb3JtcyBpbiBpdHMgRGV2aWNlcyBkcm9wZG93biwgbWFraW5nIGl0IHBvc3NpYmxl
IHRvIGJ1aWxkIGluIHRoZSBJREUuCisrCisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0Jhc2Uu
eGNjb25maWc6CisrCisrMjAxNS0xMC0xMCAgRGFuIEJlcm5zdGVpbiAgPG1pdHpAYXBwbGUuY29t
PgorKworKyAgICAgICAgW2lPU10gUmVtb3ZlIHByb2plY3Qgc3VwcG9ydCBmb3IgaU9TIDgKKysg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDk5OTMKKysK
KysgICAgICAgIFJldmlld2VkIGJ5IEFsZXhleSBQcm9za3VyeWFrb3YuCisrCisrICAgICAgICAq
IENvbmZpZ3VyYXRpb25zL0FOR0xFLnhjY29uZmlnOgorKyAgICAgICAgKiBDb25maWd1cmF0aW9u
cy9CYXNlLnhjY29uZmlnOgorKworKzIwMTUtMDgtMjAgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hy
aXN0ZW5zZW5Ad2Via2l0Lm9yZz4KKysKKysgICAgICAgIENsZWFuIHVwIENNYWtlIGJ1aWxkIGFm
dGVyIHIxODg2NzMKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0xNDgyMzQKKysKKysgICAgICAgIFJldmlld2VkIGJ5IFRpbSBIb3J0b24uCisrCisrICAg
ICAgICAqIENNYWtlTGlzdHMudHh0OgorKyAgICAgICAgQ29weSBoZWFkZXJzIHRvIGZvcndhcmRp
bmcgaGVhZGVycy4KKysKKysyMDE1LTA4LTExICBCcmVudCBGdWxnaGFtICA8YmZ1bGdoYW1AYXBw
bGUuY29tPgorKworKyAgICAgICAgW1dpbl0gU3dpdGNoIFdpbmRvd3MgYnVpbGQgdG8gVmlzdWFs
IFN0dWRpbyAyMDE1CisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTQ3ODg3CisrICAgICAgICA8cmRhcjovL3Byb2JsZW0vMjIyMzUwOTg+CisrCisrICAg
ICAgICBSZXZpZXdlZCBieSBBbGV4IENocmlzdGVuc2VuLgorKworKyAgICAgICAgVXBkYXRlIFZp
c3VhbCBTdHVkaW8gcHJvamVjdCBmaWxlIHNldHRpbmdzIHRvIHVzZSB0aGUgY3VycmVudCBWaXN1
YWwKKysgICAgICAgIFN0dWRpbyBhbmQgY29tcGlsZXIuIENvbnRpbnVlIHRhcmdldGluZyBiaW5h
cmllcyB0byBydW4gb24gb3VyIG1pbmltdW0KKysgICAgICAgIHN1cHBvcnRlZCBjb25maWd1cmF0
aW9uIG9mIFdpbmRvd3MgNy4KKysKKysgICAgICAgICogQU5HTEUudmN4cHJvai9saWJFR0wudmN4
cHJvajoKKysgICAgICAgICogQU5HTEUudmN4cHJvai9saWJHTEVTdjIudmN4cHJvajoKKysgICAg
ICAgICogQU5HTEUudmN4cHJvai9wcmVwcm9jZXNzb3IudmN4cHJvajoKKysgICAgICAgICogQU5H
TEUudmN4cHJvai90cmFuc2xhdG9yX2NvbW1vbi52Y3hwcm9qOgorKyAgICAgICAgKiBBTkdMRS52
Y3hwcm9qL3RyYW5zbGF0b3JfZ2xzbC52Y3hwcm9qOgorKyAgICAgICAgKiBBTkdMRS52Y3hwcm9q
L3RyYW5zbGF0b3JfaGxzbC52Y3hwcm9qOgorKworKzIwMTUtMDgtMDQgIEFsZXggQ2hyaXN0ZW5z
ZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KKysKKysgICAgICAgIEJ1aWxkIGZpeCBhZnRl
ciByMTg3OTI4LgorKworKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDoKKysgICAgICAgIFR5cG8u
IFNldCBsaWJHTEVTdjIgY29tcGlsZSBkZWZpbml0aW9ucyBpbnN0ZWFkIG9mIGxpYkVHTCwgd2hp
Y2ggYXJlIHNldCBzZXBhcmF0ZWx5LgorKworKzIwMTUtMDgtMDQgIEFsZXggQ2hyaXN0ZW5zZW4g
IDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KKysKKysgICAgICAgIFNvZnQgbGluayBsaWJHTEVT
djIgYW5kIGxpYkVHTCBvbiBXaW5kb3dzIGFnYWluCisrICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQ3NjcxCisrCisrICAgICAgICBSZXZpZXdlZCBieSBE
ZWFuIEphY2tzb24uCisrCisrICAgICAgICAqIENNYWtlTGlzdHMudHh0OgorKyAgICAgICAgQ2xl
YW4gdXAgc29tZSB3YXJuaW5ncyB3aGVuIGNvbXBpbGluZyB3aXRoIENNYWtlLgorKyAgICAgICAg
KiBpbmNsdWRlL0VHTC9lZ2wuaDoKKysgICAgICAgICogaW5jbHVkZS9FR0wvZWdsc29mdGxpbmtp
bmcuaDoKKysgICAgICAgICogaW5jbHVkZS9HTEVTMi9nbDIuaDoKKysgICAgICAgIFNvZnQgbGlu
ayBlZ2wgb3B0aW9uYWxseS4KKysKKysyMDE1LTA4LTA0ICBBbGV4IENocmlzdGVuc2VuICA8YWNo
cmlzdGVuc2VuQHdlYmtpdC5vcmc+CisrCisrICAgICAgICBFbmFibGUgV2ViR0wgb24gV2luZG93
cyBDTWFrZSBidWlsZC4KKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xNDMzMTEKKysKKysgICAgICAgIFJldmlld2VkIGJ5IENzYWJhIE9zenRyb2dvbsOh
Yy4KKysKKysgICAgICAgICogQ01ha2VMaXN0cy50eHQ6IEFkZGVkLgorKworKzIwMTUtMDctMDMg
IERhbiBCZXJuc3RlaW4gIDxtaXR6QGFwcGxlLmNvbT4KKysKKysgICAgICAgIFtYY29kZV0gVXBk
YXRlIHNvbWUgYnVpbGQgc2V0dGluZ3MgYXMgcmVjb21tZW5kZWQgYnkgWGNvZGUgNworKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0NjU5NworKworKyAg
ICAgICAgUmV2aWV3ZWQgYnkgU2FtIFdlaW5pZy4KKysKKysgICAgICAgICogQU5HTEUueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvajogRW5hYmxlZCBDTEFOR19XQVJOX0JPT0xfQ09OVkVSU0lPTiwK
KysgICAgICAgIENMQU5HX1dBUk5fRU5VTV9DT05WRVJTSU9OLCBDTEFOR19XQVJOX0lOVF9DT05W
RVJTSU9OLCBFTkFCTEVfU1RSSUNUX09CSkNfTVNHU0VORCBhbmQKKysgICAgICAgIEdDQ19OT19D
T01NT05fQkxPQ0tTLgorKworKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmln
OiBVcGRhdGVkIExhc3RVcGdyYWRlQ2hlY2suCisrCisrMjAxNS0wNy0wMyAgUGVyIEFybmUgVm9s
bGFuICA8cGVhdm9Ab3V0bG9vay5jb20+CisrCisrICAgICAgICBbV2luQ2Fpcm9dW1dlYkdMXSBF
bmFibGUgSExTTC4KKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0xNDY1NTkKKysKKysgICAgICAgIFJldmlld2VkIGJ5IEFsZXggQ2hyaXN0ZW5zZW4uCisr
CisrICAgICAgICBIaWdoIExldmVsIFNoYWRlciBMYW5ndWFnZSBuZWVkcyB0byBiZSBlbmFibGVk
IGZvciBXZWJHTCB0byB3b3JrIG9uIFdpbmRvd3MuCisrCisrICAgICAgICAqIEFOR0xFLnZjeHBy
b2ovdHJhbnNsYXRvckNvbW1vbi5wcm9wczoKKysgICAgICAgICogQU5HTEUudmN4cHJvai90cmFu
c2xhdG9yX2hsc2wudmN4cHJvajoKKysgICAgICAgICogQU5HTEUudmN4cHJvai90cmFuc2xhdG9y
X2hsc2wudmN4cHJvai5maWx0ZXJzOgorKworKzIwMTUtMDctMDEgIEFsZXggQ2hyaXN0ZW5zZW4g
IDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KKysKKysgICAgICAgIFJlLWVuYWJsZSBXZWJHTCBv
biBXaW5DYWlybworKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTE0NjUzNworKworKyAgICAgICAgUmV2aWV3ZWQgYnkgQ3NhYmEgT3N6dHJvZ29uw6FjLgor
KworKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL0RpcmVjdFgzMi5wcm9wczoKKysgICAgICAgICog
QU5HTEUudmN4cHJvai9EaXJlY3RYNjQucHJvcHM6CisrICAgICAgICAqIEFOR0xFLnZjeHByb2ov
bGliR0xFU3YyQ29tbW9uLnByb3BzOgorKyAgICAgICAgVXBkYXRlIERpcmVjdFggZGlyZWN0b3Jp
ZXMgdG8gdXNlIHRoZSBXaW5kb3dzIFNESyBpbnN0ZWFkIG9mIHRoZSBKdW5lIDIwMTAgRGlyZWN0
WCBTREsuCisrCisrMjAxNS0wNy0wMSAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3
ZWJraXQub3JnPgorKworKyAgICAgICAgRml4IEFOR0xFIFdpbmRvd3MgYnVpbGQgYWZ0ZXIgcjE4
NjE2OS4KKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
NDY1MzIKKysKKysgICAgICAgIFJldmlld2VkIGJ5IEJyZW50IEZ1bGdoYW0uCisrCisrICAgICAg
ICAqIEFOR0xFLnZjeHByb2ovbGliRUdMLnZjeHByb2o6CisrICAgICAgICAqIEFOR0xFLnZjeHBy
b2ovbGliRUdMLnZjeHByb2ouZmlsdGVyczoKKysgICAgICAgICogQU5HTEUudmN4cHJvai9saWJH
TEVTdjIudmN4cHJvajoKKysgICAgICAgICogQU5HTEUudmN4cHJvai9saWJHTEVTdjIudmN4cHJv
ai5maWx0ZXJzOgorKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL2xpYkdMRVN2MkNvbW1vbi5wcm9w
czoKKysgICAgICAgICogQU5HTEUudmN4cHJvai90cmFuc2xhdG9yX2NvbW1vbi52Y3hwcm9qOgor
KyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL3RyYW5zbGF0b3JfY29tbW9uLnZjeHByb2ouZmlsdGVy
czoKKysgICAgICAgICogQU5HTEUudmN4cHJvai90cmFuc2xhdG9yX2dsc2wudmN4cHJvajoKKysg
ICAgICAgICogQU5HTEUudmN4cHJvai90cmFuc2xhdG9yX2dsc2wudmN4cHJvai5maWx0ZXJzOgor
KyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL3RyYW5zbGF0b3JfaGxzbC52Y3hwcm9qOgorKyAgICAg
ICAgKiBBTkdMRS52Y3hwcm9qL3RyYW5zbGF0b3JfaGxzbC52Y3hwcm9qLmZpbHRlcnM6CisrICAg
ICAgICBVcGRhdGUgV2luZG93cyBidWlsZCB0byBidWlsZCBuZXcgZmlsZXMuCisrCisrMjAxNS0w
Ni0zMCAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgorKworKyAg
ICAgICAgVXBkYXRlIEFOR0xFIHRvIGIxMWUyNDgzNzQyZGI4ODRiZDBhZjQxZjc4ZjUyODI0MDU3
NzM1NmIuCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTQ1MDEwCisrCisrICAgICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisrCisrICAgICAg
ICBIdWdlIGxpc3Qgb2Ygc291cmNlIGNoYW5nZXMgb21pdHRlZC4KKysgICAgICAgIFJPTEwgREVQ
UyEKKysKKysyMDE1LTA1LTI2ICBEYW4gQmVybnN0ZWluICA8bWl0ekBhcHBsZS5jb20+CisrCisr
ICAgICAgICA8cmRhcjovL3Byb2JsZW0vMjExMDQ1NTE+IFVwZGF0ZSBidWlsZCBzZXR0aW5ncwor
KworKyAgICAgICAgUmV2aWV3ZWQgYnkgQW5kZXJzIENhcmxzc29uLgorKworKyAgICAgICAgKiBD
b25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnOgorKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9E
ZWJ1Z1JlbGVhc2UueGNjb25maWc6CisrCisrMjAxNS0wNS0xOSAgQ2FybG9zIEFsYmVydG8gTG9w
ZXogUGVyZXogIDxjbG9wZXpAaWdhbGlhLmNvbT4KKysKKysgICAgICAgIFJFR1JFU1NJT04ocjE4
MTU3MSk6IEJ1aWxkIGJyb2tlbiB3aGVuIFVTRShPUEVOR0xfRVNfMikgaXMgZGVmaW5lZC4KKysg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDUxNTYKKysK
KysgICAgICAgIFJldmlld2VkIGJ5IEFsZXggQ2hyaXN0ZW5zZW4uCisrCisrICAgICAgICAqIGlu
Y2x1ZGUvR0xFUzIvZ2wyc29mdGxpbmtpbmcuaDogUmV2ZXJ0IHIxODE1ODkuIFZlcnRleCBBcnJh
eSBPYmplY3RzIGFyZSBub3QgaW4gR0xFU3YyLgorKworKzIwMTUtMDUtMTEgIEJyZW50IEZ1bGdo
YW0gIDxiZnVsZ2hhbUBhcHBsZS5jb20+CisrCisrICAgICAgICBbV2luXSBNb3ZlIFdpbmRvd3Mg
YnVpbGQgdGFyZ2V0IHRvIFdpbmRvd3MgNyAob3IgbmV3ZXIpCisrICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQ0ODkwCisrICAgICAgICA8cmRhcjovL3By
b2JsZW0vMjA3MDczMDc+CisrCisrICAgICAgICBSZXZpZXdlZCBieSBBbmRlcnMgQ2FybHNzb24u
CisrCisrICAgICAgICBVcGRhdGUgbGlua2VkIFNESyBhbmQgbWluaW1hbCBXaW5kb3dzIGxldmVs
IHRvIGJlIGNvbXBhdGlibGUgd2l0aAorKyAgICAgICAgV2luZG93cyA3IG9yIG5ld2VyLgorKwor
KyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL2xpYkVHTC52Y3hwcm9qOgorKyAgICAgICAgKiBBTkdM
RS52Y3hwcm9qL2xpYkdMRVN2Mi52Y3hwcm9qOgorKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL3By
ZXByb2Nlc3Nvci52Y3hwcm9qOgorKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL3RyYW5zbGF0b3Jf
Y29tbW9uLnZjeHByb2o6CisrICAgICAgICAqIEFOR0xFLnZjeHByb2ovdHJhbnNsYXRvcl9nbHNs
LnZjeHByb2o6CisrICAgICAgICAqIEFOR0xFLnZjeHByb2ovdHJhbnNsYXRvcl9obHNsLnZjeHBy
b2o6CisrCisrMjAxNS0wNS0wNyAgRGFuIEJlcm5zdGVpbiAgPG1pdHpAYXBwbGUuY29tPgorKwor
KyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzE5MzE3MTQwPiBbWGNvZGVdIFJlbW92ZSB1c2FnZSBv
ZiBBc3BlbkZhbWlseS54Y2NvbmZpZyBpbiBTb3VyY2UvCisrICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQ0NzI3CisrCisrICAgICAgICBSZXZpZXdlZCBi
eSBEYXJpbiBBZGxlci4KKysKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZp
ZzogRG9u4oCZdCBpbmNsdWRlIEFzcGVuRmFtaWx5LnhjY29uZmlnLCBhbmQgZGVmaW5lCisrICAg
ICAgICBJTlNUQUxMX1BBVEhfUFJFRklYIGFuZCBMRF9EWUxJQl9JTlNUQUxMX05BTUUgZm9yIHRo
ZSBpT1MgOC54IFNpbXVsYXRvci4KKysKKysyMDE1LTA0LTAxICBBbGV4IENocmlzdGVuc2VuICA8
YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisrCisrICAgICAgICBQcm9ncmVzcyB0b3dhcmRzIENN
YWtlIG9uIFdpbmRvd3MgYW5kIE1hYy4KKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0xNDMyOTMKKysKKysgICAgICAgIFJldmlld2VkIGJ5IEZpbGlwIFBp
emxvLgorKworKyAgICAgICAgKiBpbmNsdWRlL0dMRVMyL2dsMi5oOgorKyAgICAgICAgVGVtcG9y
YXJpbHkgZGlzYWJsZWQgV2ViR0wgb24gV2luZG93cyBDTWFrZSBidWlsZHMuCisrCisrMjAxNS0w
My0xNyAgWmFuIERvYmVyc2VrICA8emRvYmVyc2VrQGlnYWxpYS5jb20+CisrCisrICAgICAgICBb
Q01ha2VdIFVzZSBhIGZvcndhcmRpbmcgaGVhZGVyIGZvciBBTkdMRSdzIFNoYWRlckxhbmcuaCB0
byBhdm9pZCBwaWNraW5nIHVwIEFOR0xFJ3MgRUdMIGhlYWRlcnMKKysgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDI1MzAKKysKKysgICAgICAgIFJldmll
d2VkIGJ5IERhcmluIEFkbGVyLgorKworKyAgICAgICAgKiBBTkdMRS9TaGFkZXJMYW5nLmg6IEFk
ZGVkLiBJbmNsdWRlcyBpbmNsdWRlL0dMU0xBTkcvU2hhZGVyTGFuZy5oLiBVc2VkIGluIFdlYkNv
cmUKKysgICAgICAgIHNvIHdlIGNhbiBhdm9pZCB1c2luZyBBTkdMRSdzIEVHTCBoZWFkZXJzIGFu
ZCB1c2UgdGhlIHN5c3RlbS1kZWZhdWx0IGhlYWRlcnMgaW5zdGVhZC4KKysKKysyMDE1LTAzLTE2
ICBSb2dlciBGb25nICA8cm9nZXJfZm9uZ0BhcHBsZS5jb20+CisrCisrICAgICAgICBbV2luXSBV
bnJldmlld2VkIGJ1aWxkIGZpeCBhZnRlciByMTgxNTcxLgorKworKyAgICAgICAgKiBpbmNsdWRl
L0dMRVMyL2dsMnNvZnRsaW5raW5nLmg6CisrCisrMjAxNS0wMy0xMiAgQnJlbnQgRnVsZ2hhbSAg
PGJmdWxnaGFtQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFtXaW5dIFVucmV2aWV3ZWQgYnVpbGQg
Zml4IChwYXJ0IDIpLgorKworKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL2xpYkdMRVN2MkNvbW1v
bi5wcm9wczogTWlzc2VkIGEgZGlyZWN0b3J5IHNlcGFyYXRvci4KKysKKysyMDE1LTAzLTEyICBC
cmVudCBGdWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgorKworKyAgICAgICAgW1dpbl0gVW5y
ZXZpZXdlZCBidWlsZCBmaXggZm9yIHNvbWUgRGlyZWN0WCBTREsgSW5zdGFsbHMKKysKKysgICAg
ICAgICogQU5HTEUudmN4cHJvai9saWJHTEVTdjJDb21tb24ucHJvcHM6IENvcnJlY3QgcGF0aCBm
b3IgTGliIGFuZAorKyAgICAgICAgSW5jbHVkZSBwYXRocyBiYXNlZCBvbiBwcm9ibGVtcyBvdGhl
cnMgaGF2ZSBoYWQgYnVpbGRpbmcgV2ViS2l0CisrICAgICAgICB1bmRlciBkaWZmZXJlbnQgV2lu
ZG93cyBhbmQgRGlyZWN0WCByZXZpc2lvbnMuCisrCisrMjAxNS0wMi0yMCAgQWxleGV5IFByb3Nr
dXJ5YWtvdiAgPGFwQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFJlbW92ZSBzdm46a2V5d29yZHMg
cHJvcGVydHkuCisrCisrICAgICAgICBBcyBmYXIgYXMgSSBjYW4gdGVsbCwgdGhlIHByb3BlcnR5
IGhhZCBubyBlZmZlY3Qgb24gYW55IG9mIHRoZXNlIGZpbGVzLCBidXQgYWxzbywKKysgICAgICAg
IHdoZW4gaXQgaGFzIGVmZmVjdCBpdCdzIGxpa2VseSBoYXJtZnVsLgorKworKyAgICAgICAgKiBB
TkdMRS50eHQ6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMv
Y29tbW9uL1JlZkNvdW50T2JqZWN0LmNwcDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMu
CisrICAgICAgICAqIHNyYy9jb21tb24vUmVmQ291bnRPYmplY3QuaDogUmVtb3ZlZCBwcm9wZXJ0
eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL0Jhc2VU
eXBlcy5oOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysgICAgICAgICogc3JjL2Nv
bXBpbGVyL3RyYW5zbGF0b3IvQnVpbHRJbkZ1bmN0aW9uRW11bGF0b3IuY3BwOiBSZW1vdmVkIHBy
b3BlcnR5IHN2bjprZXl3b3Jkcy4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3Iv
QnVpbHRJbkZ1bmN0aW9uRW11bGF0b3IuaDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMu
CisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL0NvZGVHZW4uY3BwOiBSZW1vdmVk
IHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0
b3IvQ29tbW9uLmg6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBz
cmMvY29tcGlsZXIvdHJhbnNsYXRvci9Db21waWxlci5jcHA6IFJlbW92ZWQgcHJvcGVydHkgc3Zu
OmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9Db25zdGFudFVu
aW9uLmg6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMvY29t
cGlsZXIvdHJhbnNsYXRvci9EZXRlY3RDYWxsRGVwdGguY3BwOiBSZW1vdmVkIHByb3BlcnR5IHN2
bjprZXl3b3Jkcy4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvRGV0ZWN0Q2Fs
bERlcHRoLmg6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMv
Y29tcGlsZXIvdHJhbnNsYXRvci9EZXRlY3REaXNjb250aW51aXR5LmNwcDogUmVtb3ZlZCBwcm9w
ZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL0Rl
dGVjdERpc2NvbnRpbnVpdHkuaDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAg
ICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL0RpYWdub3N0aWNzLmNwcDogUmVtb3ZlZCBw
cm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9y
L0RpYWdub3N0aWNzLmg6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAg
KiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9EaXJlY3RpdmVIYW5kbGVyLmNwcDogUmVtb3ZlZCBw
cm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9y
L0RpcmVjdGl2ZUhhbmRsZXIuaDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAg
ICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL0V4dGVuc2lvbkJlaGF2aW9yLmg6IFJlbW92
ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNs
YXRvci9Gb3JMb29wVW5yb2xsLmNwcDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisr
ICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL0Zvckxvb3BVbnJvbGwuaDogUmVtb3Zl
ZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xh
dG9yL0hhc2hOYW1lcy5oOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysgICAgICAg
ICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvSW5mb1NpbmsuY3BwOiBSZW1vdmVkIHByb3BlcnR5
IHN2bjprZXl3b3Jkcy4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvSW5mb1Np
bmsuaDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9jb21w
aWxlci90cmFuc2xhdG9yL0luaXRpYWxpemUuY3BwOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3
b3Jkcy4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvSW5pdGlhbGl6ZS5oOiBS
ZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3Ry
YW5zbGF0b3IvSW5pdGlhbGl6ZURsbC5jcHA6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRz
LgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9Jbml0aWFsaXplRGxsLmg6IFJl
bW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJh
bnNsYXRvci9Jbml0aWFsaXplR2xvYmFscy5oOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jk
cy4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvSW5pdGlhbGl6ZVBhcnNlQ29u
dGV4dC5jcHA6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMv
Y29tcGlsZXIvdHJhbnNsYXRvci9Jbml0aWFsaXplUGFyc2VDb250ZXh0Lmg6IFJlbW92ZWQgcHJv
cGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9J
bml0aWFsaXplVmFyaWFibGVzLmNwcDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisr
ICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL0luaXRpYWxpemVWYXJpYWJsZXMuaDog
UmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9jb21waWxlci90
cmFuc2xhdG9yL0ludGVybVRyYXZlcnNlLmNwcDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29y
ZHMuCisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL0ludGVybWVkaWF0ZS5jcHA6
IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIv
dHJhbnNsYXRvci9NTWFwLmg6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAg
ICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9Ob2RlU2VhcmNoLmg6IFJlbW92ZWQgcHJvcGVy
dHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9PdXRw
dXRFU1NMLmNwcDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNy
Yy9jb21waWxlci90cmFuc2xhdG9yL091dHB1dEVTU0wuaDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46
a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL091dHB1dEdMU0wu
Y3BwOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysgICAgICAgICogc3JjL2NvbXBp
bGVyL3RyYW5zbGF0b3IvT3V0cHV0R0xTTC5oOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jk
cy4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvT3V0cHV0R0xTTEJhc2UuY3Bw
OiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysgICAgICAgICogc3JjL2NvbXBpbGVy
L3RyYW5zbGF0b3IvT3V0cHV0R0xTTEJhc2UuaDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29y
ZHMuCisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL091dHB1dEhMU0wuY3BwOiBS
ZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3Ry
YW5zbGF0b3IvT3V0cHV0SExTTC5oOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysg
ICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvUGFyc2VDb250ZXh0LmNwcDogUmVtb3Zl
ZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xh
dG9yL1BhcnNlQ29udGV4dC5oOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysgICAg
ICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvUG9vbEFsbG9jLmNwcDogUmVtb3ZlZCBwcm9w
ZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL1Bv
b2xBbGxvYy5oOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysgICAgICAgICogc3Jj
L2NvbXBpbGVyL3RyYW5zbGF0b3IvUHJhZ21hLmg6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdv
cmRzLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9RdWFsaWZpZXJBbGl2ZS5j
cHA6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMvY29tcGls
ZXIvdHJhbnNsYXRvci9RdWFsaWZpZXJBbGl2ZS5oOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3
b3Jkcy4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvUmVtb3ZlVHJlZS5jcHA6
IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIv
dHJhbnNsYXRvci9SZW1vdmVUcmVlLmg6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgor
KyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9SZW5hbWVGdW5jdGlvbi5oOiBSZW1v
dmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5z
bGF0b3IvUmV3cml0ZUVsc2VCbG9ja3MuY3BwOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jk
cy4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvUmV3cml0ZUVsc2VCbG9ja3Mu
aDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9jb21waWxl
ci90cmFuc2xhdG9yL1NlYXJjaFN5bWJvbC5jcHA6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdv
cmRzLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9TZWFyY2hTeW1ib2wuaDog
UmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9jb21waWxlci90
cmFuc2xhdG9yL1NoSGFuZGxlLmg6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAg
ICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9TaGFkZXJMYW5nLmNwcDogUmVtb3ZlZCBw
cm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9y
L1N5bWJvbFRhYmxlLmNwcDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAg
ICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL1N5bWJvbFRhYmxlLmg6IFJlbW92ZWQgcHJvcGVy
dHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFu
c2xhdG9yRVNTTC5jcHA6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAg
KiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yRVNTTC5oOiBSZW1vdmVkIHByb3Bl
cnR5IHN2bjprZXl3b3Jkcy4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJh
bnNsYXRvckdMU0wuY3BwOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysgICAgICAg
ICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvckdMU0wuaDogUmVtb3ZlZCBwcm9w
ZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL1Ry
YW5zbGF0b3JITFNMLmNwcDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAg
ICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JITFNMLmg6IFJlbW92ZWQgcHJv
cGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9U
eXBlcy5oOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysgICAgICAgICogc3JjL2Nv
bXBpbGVyL3RyYW5zbGF0b3IvVW5mb2xkU2hvcnRDaXJjdWl0LmNwcDogUmVtb3ZlZCBwcm9wZXJ0
eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL1VuZm9s
ZFNob3J0Q2lyY3VpdC5oOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysgICAgICAg
ICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVW5mb2xkU2hvcnRDaXJjdWl0QVNULmNwcDogUmVt
b3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFu
c2xhdG9yL1VuZm9sZFNob3J0Q2lyY3VpdEFTVC5oOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3
b3Jkcy4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVmFsaWRhdGVMaW1pdGF0
aW9ucy5jcHA6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMv
Y29tcGlsZXIvdHJhbnNsYXRvci9WYWxpZGF0ZUxpbWl0YXRpb25zLmg6IFJlbW92ZWQgcHJvcGVy
dHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9WYXJp
YWJsZUluZm8uY3BwOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysgICAgICAgICog
c3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVmFyaWFibGVJbmZvLmg6IFJlbW92ZWQgcHJvcGVydHkg
c3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9WYXJpYWJs
ZVBhY2tlci5jcHA6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBz
cmMvY29tcGlsZXIvdHJhbnNsYXRvci9WYXJpYWJsZVBhY2tlci5oOiBSZW1vdmVkIHByb3BlcnR5
IHN2bjprZXl3b3Jkcy4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVmVyc2lv
bkdMU0wuY3BwOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysgICAgICAgICogc3Jj
L2NvbXBpbGVyL3RyYW5zbGF0b3IvVmVyc2lvbkdMU0wuaDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46
a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL2NvbXBpbGVyZGVi
dWcuY3BwOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysgICAgICAgICogc3JjL2Nv
bXBpbGVyL3RyYW5zbGF0b3IvY29tcGlsZXJkZWJ1Zy5oOiBSZW1vdmVkIHByb3BlcnR5IHN2bjpr
ZXl3b3Jkcy4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvZGVwZ3JhcGgvRGVw
ZW5kZW5jeUdyYXBoLmNwcDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAg
ICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL2RlcGdyYXBoL0RlcGVuZGVuY3lHcmFwaC5oOiBS
ZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3Ry
YW5zbGF0b3IvZGVwZ3JhcGgvRGVwZW5kZW5jeUdyYXBoQnVpbGRlci5jcHA6IFJlbW92ZWQgcHJv
cGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9k
ZXBncmFwaC9EZXBlbmRlbmN5R3JhcGhCdWlsZGVyLmg6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtl
eXdvcmRzLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9kZXBncmFwaC9EZXBl
bmRlbmN5R3JhcGhPdXRwdXQuY3BwOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysg
ICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvZGVwZ3JhcGgvRGVwZW5kZW5jeUdyYXBo
T3V0cHV0Lmg6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMv
Y29tcGlsZXIvdHJhbnNsYXRvci9kZXBncmFwaC9EZXBlbmRlbmN5R3JhcGhUcmF2ZXJzZS5jcHA6
IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIv
dHJhbnNsYXRvci9nZW5lcmF0ZV9wYXJzZXIuc2g6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdv
cmRzLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9nbHNsYW5nLmg6IFJlbW92
ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNs
YXRvci9nbHNsYW5nX2xleC5jcHA6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAg
ICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9nbHNsYW5nX3RhYi5jcHA6IFJlbW92ZWQg
cHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRv
ci9nbHNsYW5nX3RhYi5oOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysgICAgICAg
ICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvaW50ZXJtT3V0LmNwcDogUmVtb3ZlZCBwcm9wZXJ0
eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL2ludGVy
bWVkaWF0ZS5oOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysgICAgICAgICogc3Jj
L2NvbXBpbGVyL3RyYW5zbGF0b3IvbG9jYWxpbnRlcm1lZGlhdGUuaDogUmVtb3ZlZCBwcm9wZXJ0
eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL29zaW5j
bHVkZS5oOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysgICAgICAgICogc3JjL2Nv
bXBpbGVyL3RyYW5zbGF0b3Ivb3Nzb3VyY2VfcG9zaXguY3BwOiBSZW1vdmVkIHByb3BlcnR5IHN2
bjprZXl3b3Jkcy4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3Ivb3Nzb3VyY2Vf
d2luLmNwcDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9j
b21waWxlci90cmFuc2xhdG9yL3BhcnNlQ29uc3QuY3BwOiBSZW1vdmVkIHByb3BlcnR5IHN2bjpr
ZXl3b3Jkcy4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvdGltaW5nL1Jlc3Ry
aWN0RnJhZ21lbnRTaGFkZXJUaW1pbmcuY3BwOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jk
cy4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvdGltaW5nL1Jlc3RyaWN0RnJh
Z21lbnRTaGFkZXJUaW1pbmcuaDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAg
ICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL3RpbWluZy9SZXN0cmljdFZlcnRleFNoYWRl
clRpbWluZy5jcHA6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBz
cmMvY29tcGlsZXIvdHJhbnNsYXRvci90aW1pbmcvUmVzdHJpY3RWZXJ0ZXhTaGFkZXJUaW1pbmcu
aDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9jb21waWxl
ci90cmFuc2xhdG9yL3V0aWwuY3BwOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysg
ICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvdXRpbC5oOiBSZW1vdmVkIHByb3BlcnR5
IHN2bjprZXl3b3Jkcy4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9kM2QxMS9C
dWZmZXJTdG9yYWdlMTEuY3BwOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysgICAg
ICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9kM2QxMS9CdWZmZXJTdG9yYWdlMTEuaDogUmVt
b3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVu
ZGVyZXIvZDNkMTEvRmVuY2UxMS5jcHA6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgor
KyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL2QzZDExL0ZlbmNlMTEuaDogUmVtb3Zl
ZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVy
ZXIvZDNkMTEvSW1hZ2UxMS5jcHA6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAg
ICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL2QzZDExL0ltYWdlMTEuaDogUmVtb3ZlZCBw
cm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIv
ZDNkMTEvSW5kZXhCdWZmZXIxMS5jcHA6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgor
KyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL2QzZDExL0luZGV4QnVmZmVyMTEuaDog
UmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIv
cmVuZGVyZXIvZDNkMTEvSW5wdXRMYXlvdXRDYWNoZS5jcHA6IFJlbW92ZWQgcHJvcGVydHkgc3Zu
OmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL2QzZDExL0lucHV0
TGF5b3V0Q2FjaGUuaDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAq
IHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvZDNkMTEvUXVlcnkxMS5jcHA6IFJlbW92ZWQgcHJvcGVy
dHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL2QzZDEx
L1F1ZXJ5MTEuaDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNy
Yy9saWJHTEVTdjIvcmVuZGVyZXIvZDNkMTEvUmVuZGVyU3RhdGVDYWNoZS5jcHA6IFJlbW92ZWQg
cHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVy
L2QzZDExL1JlbmRlclN0YXRlQ2FjaGUuaDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMu
CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvZDNkMTEvUmVuZGVyVGFyZ2V0MTEu
Y3BwOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysgICAgICAgICogc3JjL2xpYkdM
RVN2Mi9yZW5kZXJlci9kM2QxMS9SZW5kZXJUYXJnZXQxMS5oOiBSZW1vdmVkIHByb3BlcnR5IHN2
bjprZXl3b3Jkcy4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9kM2QxMS9SZW5k
ZXJlcjExLmNwcDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNy
Yy9saWJHTEVTdjIvcmVuZGVyZXIvZDNkMTEvUmVuZGVyZXIxMS5oOiBSZW1vdmVkIHByb3BlcnR5
IHN2bjprZXl3b3Jkcy4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9kM2QxMS9T
aGFkZXJFeGVjdXRhYmxlMTEuY3BwOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysg
ICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9kM2QxMS9TaGFkZXJFeGVjdXRhYmxlMTEu
aDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9saWJHTEVT
djIvcmVuZGVyZXIvZDNkMTEvU3dhcENoYWluMTEuY3BwOiBSZW1vdmVkIHByb3BlcnR5IHN2bjpr
ZXl3b3Jkcy4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9kM2QxMS9Td2FwQ2hh
aW4xMS5oOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysgICAgICAgICogc3JjL2xp
YkdMRVN2Mi9yZW5kZXJlci9kM2QxMS9UZXh0dXJlU3RvcmFnZTExLmNwcDogUmVtb3ZlZCBwcm9w
ZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvZDNk
MTEvVGV4dHVyZVN0b3JhZ2UxMS5oOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysg
ICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9kM2QxMS9WZXJ0ZXhCdWZmZXIxMS5jcHA6
IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3Yy
L3JlbmRlcmVyL2QzZDExL1ZlcnRleEJ1ZmZlcjExLmg6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtl
eXdvcmRzLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL2QzZDExL3JlbmRlcmVy
MTFfdXRpbHMuY3BwOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysgICAgICAgICog
c3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9kM2QxMS9yZW5kZXJlcjExX3V0aWxzLmg6IFJlbW92ZWQg
cHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVy
L2QzZDkvQnVmZmVyU3RvcmFnZTkuY3BwOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4K
KysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9kM2Q5L0J1ZmZlclN0b3JhZ2U5Lmg6
IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3Yy
L3JlbmRlcmVyL2QzZDkvRmVuY2U5LmNwcDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMu
CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvZDNkOS9GZW5jZTkuaDogUmVtb3Zl
ZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVy
ZXIvZDNkOS9JbWFnZTkuY3BwOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysgICAg
ICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9kM2Q5L0ltYWdlOS5oOiBSZW1vdmVkIHByb3Bl
cnR5IHN2bjprZXl3b3Jkcy4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9kM2Q5
L0luZGV4QnVmZmVyOS5jcHA6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAg
ICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL2QzZDkvSW5kZXhCdWZmZXI5Lmg6IFJlbW92ZWQg
cHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVy
L2QzZDkvUXVlcnk5LmNwcDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAg
ICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvZDNkOS9RdWVyeTkuaDogUmVtb3ZlZCBwcm9wZXJ0
eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvZDNkOS9S
ZW5kZXJUYXJnZXQ5LmNwcDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAg
ICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvZDNkOS9SZW5kZXJUYXJnZXQ5Lmg6IFJlbW92ZWQg
cHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVy
L2QzZDkvUmVuZGVyZXI5LmNwcDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAg
ICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvZDNkOS9SZW5kZXJlcjkuaDogUmVtb3ZlZCBw
cm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIv
ZDNkOS9TaGFkZXJFeGVjdXRhYmxlOS5jcHA6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRz
LgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL2QzZDkvU2hhZGVyRXhlY3V0YWJs
ZTkuaDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9saWJH
TEVTdjIvcmVuZGVyZXIvZDNkOS9Td2FwQ2hhaW45LmNwcDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46
a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvZDNkOS9Td2FwQ2hh
aW45Lmg6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMvbGli
R0xFU3YyL3JlbmRlcmVyL2QzZDkvVGV4dHVyZVN0b3JhZ2U5LmNwcDogUmVtb3ZlZCBwcm9wZXJ0
eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvZDNkOS9U
ZXh0dXJlU3RvcmFnZTkuaDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAg
ICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvZDNkOS9WZXJ0ZXhCdWZmZXI5LmNwcDogUmVtb3Zl
ZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVy
ZXIvZDNkOS9WZXJ0ZXhCdWZmZXI5Lmg6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgor
KyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL2QzZDkvVmVydGV4RGVjbGFyYXRpb25D
YWNoZS5jcHA6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMv
bGliR0xFU3YyL3JlbmRlcmVyL2QzZDkvVmVydGV4RGVjbGFyYXRpb25DYWNoZS5oOiBSZW1vdmVk
IHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJl
ci9kM2Q5L3JlbmRlcmVyOV91dGlscy5jcHA6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRz
LgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL2QzZDkvcmVuZGVyZXI5X3V0aWxz
Lmg6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMvbGliR0xF
U3YyL3JlbmRlcmVyL2QzZDkvc2hhZGVycy9jb21waWxlZC9jb21wb25lbnRtYXNrcHMuaDogUmVt
b3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVu
ZGVyZXIvZDNkOS9zaGFkZXJzL2NvbXBpbGVkL2ZsaXB5dnMuaDogUmVtb3ZlZCBwcm9wZXJ0eSBz
dm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvZDNkOS9zaGFk
ZXJzL2NvbXBpbGVkL2x1bWluYW5jZXBzLmg6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRz
LgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL2QzZDkvc2hhZGVycy9jb21waWxl
ZC9wYXNzdGhyb3VnaHBzLmg6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAg
ICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL2QzZDkvc2hhZGVycy9jb21waWxlZC9zdGFuZGFy
ZHZzLmg6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKworKzIwMTUtMDEtMjggIERh
bmEgQnVya2FydCAgPGRidXJrYXJ0QGFwcGxlLmNvbT4KKysKKysgICAgICAgIE1vdmUgQVNhbiBm
bGFnIHNldHRpbmdzIGZyb20gRGVidWdSZWxlYXNlLnhjY29uZmlnIHRvIEJhc2UueGNjb25maWcK
KysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzY3NjUK
KysKKysgICAgICAgIFJldmlld2VkIGJ5IEFsZXhleSBQcm9za3VyeWFrb3YuCisrCisrICAgICAg
ICAqIENvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWc6CisrICAgICAgICAqIENvbmZpZ3VyYXRp
b25zL0RlYnVnUmVsZWFzZS54Y2NvbmZpZzoKKysKKysyMDE0LTEyLTI2ICBEYW4gQmVybnN0ZWlu
ICA8bWl0ekBhcHBsZS5jb20+CisrCisrICAgICAgICA8cmRhcjovL3Byb2JsZW0vMTkzNDgyMDg+
IFJFR1JFU1NJT04gKHIxNzcwMjcpOiBpT1MgYnVpbGRzIHVzZSB0aGUgd3JvbmcgdG9vbGNoYWlu
CisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM5OTUw
CisrCisrICAgICAgICBSZXZpZXdlZCBieSBEYXZpZCBLaWx6ZXIuCisrCisrICAgICAgICAqIENv
bmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWc6IE9ubHkgZGVmaW5lIFRPT0xDSEFJTlMgd2hlbiBi
dWlsZGluZyBmb3IgT1MgWCwgZG9pbmcgc28KKysgICAgICAgIGluIGEgbWFubmVyIHRoYXQgd29y
a3Mgd2l0aCBYY29kZSA1LjEuMS4KKysKKysyMDE0LTEyLTI0ICBEYW4gQmVybnN0ZWluICA8bWl0
ekBhcHBsZS5jb20+CisrCisrICAgICAgICBBTkdMRSBleHRlcm4gc3ltYm9scyBhcmUgbm90IGhp
ZGRlbiBieSBkZWZhdWx0LCBidXQgc2hvdWxkIGJlCisrICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM5OTM2CisrCisrICAgICAgICBSZXZpZXdlZCBieSBN
YXJrIFJvd2UuCisrCisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWc6IENo
YW5nZWQgR0NDX1NZTUJPTFNfUFJJVkFURV9FWFRFUk4gdG8gWUVTLgorKworKzIwMTQtMTItMjQg
IERhbiBCZXJuc3RlaW4gIDxtaXR6QGFwcGxlLmNvbT4KKysKKysgICAgICAgIFJlbW92ZWQgdGhl
IERlcml2ZWQgU291cmNlcyB0YXJnZXQuCisrCisrICAgICAgICBJdCBoYXMgYmVlbiBlbXB0eSBz
aW5jZSByMTU5NTMzLgorKworKyAgICAgICAgKiBBTkdMRS54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qOgorKworKzIwMTQtMTItMDkgIERhdmlkIEtpbHplciAgPGRka2lsemVyQGFwcGxlLmNvbT4K
KysKKysgICAgICAgIFN3aXRjaCBmcm9tIHVzaW5nIFBMQVRGT1JNX05BTUUgdG8gU0RLIHNlbGVj
dG9ycyBpbiBBTkdMRSwgYm1hbGxvYywgZ3Rlc3QsIEphdmFTY3JpcHRDb3JlLCBXVEYKKysgICAg
ICAgIDxodHRwOi8vd2Via2l0Lm9yZy9iLzEzOTIxMj4KKysKKysgICAgICAgIFJldmlld2VkIGJ5
IEpvc2VwaCBQZWNvcmFyby4KKysKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMvQmFzZS54Y2Nv
bmZpZzoKKysgICAgICAgIC0gT25seSBzZXQgR0NDX0VOQUJMRV9PQkpDX0dDLCBHQ0NfTU9ERUxf
VFVOSU5HIGFuZCBUT09MQ0hBSU5TCisrICAgICAgICAgIG9uIE9TIFguCisrICAgICAgICAqIENv
bmZpZ3VyYXRpb25zL0RlYnVnUmVsZWFzZS54Y2NvbmZpZzoKKysgICAgICAgIC0gT25seSBzZXQg
TUFDT1NYX0RFUExPWU1FTlRfVEFSR0VUIGFuZCBTREtST09UIG9uIE9TIFguCisrCisrMjAxNC0x
MC0zMCAgRGFuYSBCdXJrYXJ0ICA8ZGJ1cmthcnRAYXBwbGUuY29tPgorKworKyAgICAgICAgPHJk
YXI6Ly9wcm9ibGVtLzE4ODIxMjYwPiBQcmVwYXJlIGZvciB0aGUgbXlzdGVyaW91cyBmdXR1cmUK
KysKKysgICAgICAgIFJldmlld2VkIGJ5IEx1Y2FzIEZvcnNjaGxlci4KKysKKysgICAgICAgICog
Q29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZzoKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMv
RGVidWdSZWxlYXNlLnhjY29uZmlnOgorKworKzIwMTQtMTAtMDggIEJyZW50IEZ1bGdoYW0gIDxi
ZnVsZ2hhbUBhcHBsZS5jb20+CisrCisrICAgICAgICBbV2luXSBVc2UgcHJvcGVyIHYxMjAgdGFy
Z2V0IGZvciA2NC1iaXQgYnVpbGRzLgorKworKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL2xpYkVH
TC52Y3hwcm9qOgorKworKzIwMTQtMDktMjkgIHBlYXZvQG91dGxvb2suY29tICA8cGVhdm9Ab3V0
bG9vay5jb20+CisrCisrICAgICAgICBbV2luQ2Fpcm9dIEQzRDExIGlzIG5vdCB1c2VkIGJ5IGRl
ZmF1bHQuCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTM3MjE1CisrCisrICAgICAgICBSZXZpZXdlZCBieSBBbGV4IENocmlzdGVuc2VuLgorKworKyAg
ICAgICAgQU5HTEVfREVGQVVMVF9EM0QxMSBuZWVkcyB0byBiZSBkZWZpbmVkIGZvciBEM0QxMSB0
byBiZSB1c2VkIGFzIGRlZmF1bHQuCisrCisrICAgICAgICAqIEFOR0xFLnZjeHByb2ovbGliR0xF
U3YyQ29tbW9uLnByb3BzOgorKworKzIwMTQtMDktMTkgIERhbmllbCBCYXRlcyAgPGRhYmF0ZXNA
YXBwbGUuY29tPgorKworKyAgICAgICAgQWx3YXlzIGFzc3VtZSBpbnRlcm5hbCBTREsgd2hlbiBi
dWlsZGluZyBjb25maWd1cmF0aW9uIFByb2R1Y3Rpb24KKysgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzY5MjUKKysgICAgICAgIDxyZGFyOi8vcHJvYmxl
bS8xODM2MjM5OT4KKysKKysgICAgICAgIFJldmlld2VkIGJ5IERhbiBCZXJuc3RlaW4uCisrCisr
ICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWc6CisrCisrMjAxNC0wOS0xMCAg
Um9nZXIgRm9uZyAgPHJvZ2VyX2ZvbmdAYXBwbGUuY29tPgorKworKyAgICAgICAgQ2hlY2sgZm9y
IHZhcnlpbmcgcGFja2luZyByZXN0cmljdGlvbnMgcGVyIHByb2dyYW0gaW5zdGVhZCBvZiBwZXIg
c2hhZGVyLgorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTEzNjU4NS4KKysgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8xNjMwODQwOT4uCisrCisrICAgICAg
ICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisrCisrICAgICAgICBSZW1vdmUgdmFyeWluZyBw
YWNraW5nIHJlc3RyaWN0aW9ucyBjaGVja3MgZnJvbSBBTkdMRS4KKysgICAgICAgICogc3JjL2Nv
bXBpbGVyL3RyYW5zbGF0b3IvQ29tcGlsZXIuY3BwOgorKyAgICAgICAgKFRDb21waWxlcjo6Y29t
cGlsZSk6CisrICAgICAgICAoVENvbXBpbGVyOjplbmZvcmNlUGFja2luZ1Jlc3RyaWN0aW9ucyk6
CisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL1NoSGFuZGxlLmg6CisrCisrMjAx
NC0wOS0wNiAgRGFyaW4gQWRsZXIgIDxkYXJpbkBhcHBsZS5jb20+CisrCisrICAgICAgICBNYWtl
IHVwZGF0ZXMgc3VnZ2VzdGVkIGJ5IG5ldyB2ZXJzaW9uIG9mIFhjb2RlCisrICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM2NjAzCisrCisrICAgICAgICBS
ZXZpZXdlZCBieSBNYXJrIFJvd2UuCisrCisrICAgICAgICAqIEFOR0xFLnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2o6IFVwZGF0ZWQgTGFzdFVwZ3JhZGVDaGVjay4KKysKKysgICAgICAgICogQ29u
ZmlndXJhdGlvbnMvQU5HTEUueGNjb25maWc6IEFkZGVkIENMQU5HX1dBUk5fQk9PTF9DT05WRVJT
SU9OLAorKyAgICAgICAgQ0xBTkdfV0FSTl9FTlVNX0NPTlZFUlNJT04sIENMQU5HX1dBUk5fSU5U
X0NPTlZFUlNJT04sIENPTUJJTkVfSElEUElfSU1BR0VTLAorKyAgICAgICAgYW5kIEVOQUJMRV9T
VFJJQ1RfT0JKQ19NU0dTRU5EIGFzIHN1Z2dlc3RlZCBieSBYY29kZSB1cGdyYWRlIGNoZWNrLgor
KworKzIwMTQtMDktMDYgIENvbW1pdCBRdWV1ZSAgPGNvbW1pdC1xdWV1ZUB3ZWJraXQub3JnPgor
KworKyAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjE3MzMzNS4KKysgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzY1OTcKKysKKysgICAgICAg
IEJyb2tlIHdlYmdsLzEuMC4yL2NvbmZvcm1hbmNlL2dsc2wvbWlzYy9zaGFkZXItdmFyeWluZy0K
KysgICAgICAgIHBhY2tpbmctcmVzdHJpY3Rpb25zLmh0bWwgKFJlcXVlc3RlZCBieSBhcCBvbiAj
d2Via2l0KS4KKysKKysgICAgICAgIFJldmVydGVkIGNoYW5nZXNldDoKKysKKysgICAgICAgICJS
ZW1vdmUgc3RhdGljYWxseSB1c2VkIHZhcnlpbmdzIGZyb20gcGFja2luZyByZXN0cmljdGlvbnMK
KysgICAgICAgIGNoZWNrLiIKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xMzY1ODUKKysgICAgICAgIGh0dHA6Ly90cmFjLndlYmtpdC5vcmcvY2hhbmdl
c2V0LzE3MzMzNQorKworKzIwMTQtMDktMDUgIFJvZ2VyIEZvbmcgIDxyb2dlcl9mb25nQGFwcGxl
LmNvbT4KKysKKysgICAgICAgIFJlbW92ZSBzdGF0aWNhbGx5IHVzZWQgdmFyeWluZ3MgZnJvbSBw
YWNraW5nIHJlc3RyaWN0aW9ucyBjaGVjay4KKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xMzY1ODUuCisrICAgICAgICA8cmRhcjovL3Byb2JsZW0vMTYz
MDg0MDk+CisrCisrICAgICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisrCisrICAgICAg
ICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL0NvbXBpbGVyLmNwcDoKKysgICAgICAgIChUQ29t
cGlsZXI6OmVuZm9yY2VQYWNraW5nUmVzdHJpY3Rpb25zKToKKysKKysyMDE0LTA4LTI5ICBDc2Fi
YSBPc3p0cm9nb27DoWMgIDxvc3N5QHdlYmtpdC5vcmc+CisrCisrICAgICAgICBVbnJldml3ZWQs
IHJlbW92ZSBlbXB0eSBkaXJlY3Rvcmllcy4KKysKKysgICAgICAgICogc3JjL2NvbXBpbGVyL2Rl
cGdyYXBoOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdGltaW5nOiBSZW1vdmVk
LgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL3NoYWRlcnM6IFJlbW92ZWQuCisr
ICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvc2hhZGVycy9jb21waWxlZDogUmVtb3Zl
ZC4KKysKKysyMDE0LTA4LTExICBBbmR5IEVzdGVzICA8YWVzdGVzQGFwcGxlLmNvbT4KKysKKysg
ICAgICAgIFtpT1NdIEdldCByaWQgb2YgaU9TLnhjY29uZmlnCisrICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM1ODA5CisrCisrICAgICAgICBSZXZpZXdl
ZCBieSBKb3NlcGggUGVjb3Jhcm8uCisrCisrICAgICAgICBBbGwgaU9TLnhjY29uZmlnIGRpZCB3
YXMgaW5jbHVkZSBBc3BlbkZhbWlseS54Y2NvbmZpZywgc28gdGhlcmUncyBubyBuZWVkIGZvciB0
aGUgaW5kaXJlY3Rpb24uCisrCisrICAgICAgICAqIEFOR0xFLnhjb2RlcHJvai9wcm9qZWN0LnBi
eHByb2o6CisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWc6CisrICAgICAg
ICAqIENvbmZpZ3VyYXRpb25zL2lPUy54Y2NvbmZpZzogUmVtb3ZlZC4KKysKKysyMDE0LTA4LTA3
ICBCcmVudCBGdWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgorKworKyAgICAgICAgW1dpbl0g
VW5yZXZpZXdlZCBnYXJkZW5pbmcuCisrCisrICAgICAgICBEZWJ1Z1N1ZmZpeCB0YXJnZXRzIHNo
b3VsZCB1c2Ugb3VyIGRlYnVnc3VmZml4IHByb3BlcnR5IHNoZWV0LCBhbmQKKysgICAgICAgIHdp
bGwgdGhlcmVmb3JlIGJ1aWxkIHRvIHRoZSBwcm9wZXIgb3V0cHV0IGxvY2F0aW9uIHdpdGggdGhl
IHByb3BlcgorKyAgICAgICAgc3VmZml4IHRhZ3MuCisrCisrICAgICAgICBBbHNvLCB3ZSBtdXN0
IHVzZSB0aGUgV2ViS2l0X0xpYnJhcmllcyBlbnZpcm9ubWVudCB2YXJpYWJsZSwgbm90IGEgc2V0
CisrICAgICAgICBvZiByZWxhdGl2ZSBwYXRocyB0byB0aGUgcHJvcGVydHkgc2hlZXRzLgorKwor
KyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL2xpYkVHTC52Y3hwcm9qOiBVc2UgJ2RlYnVnc3VmZml4
LnByb3BzJyBzaGVldC4KKysgICAgICAgICogQU5HTEUudmN4cHJvai9saWJHTEVTdjIudmN4cHJv
ajogRGl0dG8uCisrICAgICAgICAqIEFOR0xFLnZjeHByb2ovcHJlcHJvY2Vzc29yLnZjeHByb2o6
IERpdHRvLgorKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL3RyYW5zbGF0b3JfY29tbW9uLnZjeHBy
b2o6IERpdHRvLgorKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL3RyYW5zbGF0b3JfZ2xzbC52Y3hw
cm9qOiBEaXR0by4KKysgICAgICAgICogQU5HTEUudmN4cHJvai90cmFuc2xhdG9yX2hsc2wudmN4
cHJvajogRGl0dG8uCisrICAgICAgICAqIEFOR0xFLnZjeHByb2ovbGliRUdMQ29tbW9uLnByb3Bz
OiBVc2UgJChEZWJ1Z1N1ZmZpeCkgZW5kaW5ncy4KKysgICAgICAgICogQU5HTEUudmN4cHJvai9s
aWJHTEVTdjJDb21tb24ucHJvcHM6IERpdHRvLgorKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL3Ry
YW5zbGF0b3JDb21tb24ucHJvcHM6IE91dHB1dCB0byAnbGliJyBmb2xkZXIsCisrICAgICAgICBu
b3QgJ2JpbicgZm9sZGVyLiBUaGVzZSBhcmUgbGlicmFyaWVzIQorKworKzIwMTQtMDgtMDIgIEJy
ZW50IEZ1bGdoYW0gIDxiZnVsZ2hhbUBhcHBsZS5jb20+CisrCisrICAgICAgICBbV2luXSBVbnJl
dmlld2VkIGJ1aWxkIGZpeC4KKysKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9k
M2QxMS9CdWZmZXJTdG9yYWdlMTEuY3BwOgorKyAgICAgICAgKHJ4OjpCdWZmZXJTdG9yYWdlMTE6
OmNvcHlEYXRhKTogSGVscCBjb21waWxlciBtYWtlCisrICAgICAgICBkZWNpc2lvbiBhYm91dCB0
eXBlcy4KKysKKysyMDE0LTA3LTI1ICBwZWF2b0BvdXRsb29rLmNvbSAgPHBlYXZvQG91dGxvb2su
Y29tPgorKworKyAgICAgICAgW1dpbl1bQU5HTEVdIEVuYWJsZSBEM0QxMS4KKysgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzUyOTYKKysKKysgICAgICAg
IFJldmlld2VkIGJ5IEFsZXggQ2hyaXN0ZW5zZW4uCisrCisrICAgICAgICBEaXJlY3QzRCAxMSBp
cyBub3QgZW5hYmxlZCBvbiBXaW5kb3dzLgorKworKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL2xp
YkdMRVN2Mi52Y3hwcm9qOiBBZGRlZCBmaWxlcy4KKysgICAgICAgICogQU5HTEUudmN4cHJvai9s
aWJHTEVTdjIudmN4cHJvai5maWx0ZXJzOiBEaXR0by4KKysgICAgICAgICogQU5HTEUudmN4cHJv
ai9saWJHTEVTdjJDb21tb24ucHJvcHM6IEVuYWJsZSBEM0QxMS4KKysgICAgICAgICogc3JjL2xp
YkdMRVN2Mi9wcmVjb21waWxlZC5oOiBIZWFkZXIgZmlsZSBkb2VzIG5vdCBleGlzdCwgYXZvaWQg
aW5jbHVkZS4KKysgICAgICAgICogY2hhbmdlcy5kaWZmOiBVcGRhdGVkIGRpZmYuCisrCisrMjAx
NC0wNi0wNCAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgorKwor
KyAgICAgICAgRW5hYmxlIFdlYkdMIG9uIFdpbmRvd3MuCisrICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTMzNTAzCisrCisrICAgICAgICBSZXZpZXdlZCBi
eSBCcmVudCBGdWxnaGFtLgorKworKyAgICAgICAgKiBjaGFuZ2VzLmRpZmYKKysgICAgICAgIFJl
Y29yZGVkIGFkZGl0aW9uYWwgY2hhbmdlcyBmcm9tIEFOR0xFLgorKyAgICAgICAgKiBBTkdMRS52
Y3hwcm9qL2xpYkVHTC52Y3hwcm9qOgorKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL2xpYkVHTC52
Y3hwcm9qLmZpbHRlcnM6CisrICAgICAgICAqIEFOR0xFLnZjeHByb2ovbGliR0xFU3YyLnZjeHBy
b2o6CisrICAgICAgICAqIEFOR0xFLnZjeHByb2ovbGliR0xFU3YyLnZjeHByb2ouZmlsdGVyczoK
KysgICAgICAgICogaW5jbHVkZS9FR0wvZWdsLmg6CisrICAgICAgICAqIGluY2x1ZGUvRUdML2Vn
bHNvZnRsaW5raW5nLmg6IEFkZGVkLgorKyAgICAgICAgKiBpbmNsdWRlL0dMRVMyL2dsMi5oOgor
KyAgICAgICAgKiBpbmNsdWRlL0dMRVMyL2dsMnNvZnRsaW5raW5nLmg6IEFkZGVkLgorKyAgICAg
ICAgUmVzdXJyZWN0ZWQgc29mdCBsaW5raW5nIGhlYWRlcnMgZnJvbSByMTUzNjY0LgorKyAgICAg
ICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL1ZlcnRleEJ1ZmZlci5jcHA6CisrICAgICAgICAo
cng6OlZlcnRleEJ1ZmZlckludGVyZmFjZTo6ZGlyZWN0U3RvcmFnZVBvc3NpYmxlKToKKysgICAg
ICAgIENvbXBpbGUgZml4IGZvciBXaW42NC4KKysKKysyMDE0LTA1LTAyICBBbGV4IENocmlzdGVu
c2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisrCisrICAgICAgICBVcGRhdGUgQU5HTEUg
V2luZG93cyBidWlsZC4KKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xMzI0NTYKKysKKysgICAgICAgIFJldmlld2VkIGJ5IEJyZW50IEZ1bGdoYW0uCisr
CisrICAgICAgICAqIEFOR0xFLnZjeHByb2ovbGliRUdMQ29tbW9uLnByb3BzOgorKyAgICAgICAg
KiBBTkdMRS52Y3hwcm9qL2xpYkdMRVN2Mi52Y3hwcm9qOgorKyAgICAgICAgKiBBTkdMRS52Y3hw
cm9qL2xpYkdMRVN2Mi52Y3hwcm9qLmZpbHRlcnM6CisrICAgICAgICAqIEFOR0xFLnZjeHByb2ov
bGliR0xFU3YyQ29tbW9uLnByb3BzOgorKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL3RyYW5zbGF0
b3JfY29tbW9uLnZjeHByb2o6CisrICAgICAgICAqIEFOR0xFLnZjeHByb2ovdHJhbnNsYXRvcl9j
b21tb24udmN4cHJvai5maWx0ZXJzOgorKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL3RyYW5zbGF0
b3JfZ2xzbC52Y3hwcm9qOgorKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL3RyYW5zbGF0b3JfZ2xz
bC52Y3hwcm9qLmZpbHRlcnM6CisrICAgICAgICAqIEFOR0xFLnZjeHByb2ovdHJhbnNsYXRvcl9o
bHNsLnZjeHByb2o6CisrICAgICAgICAqIEFOR0xFLnZjeHByb2ovdHJhbnNsYXRvcl9obHNsLnZj
eHByb2ouZmlsdGVyczoKKysgICAgICAgIFVwZGF0ZWQgQU5HTEUgYnVpbGQuCisrICAgICAgICAq
IHNyYy9BTkdMRS5zbG46IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9idWlsZF9hbmdsZS5neXA6
IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9jb21taXQuaDogQWRkZWQuCisrICAgICAgICAqIGNo
YW5nZXMuZGlmZjoKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9Qcm9ncmFtLmNwcDoKKysgICAg
ICAgIChnbDo6SW5mb0xvZzo6YXBwZW5kKToKKysgICAgICAgIEZpeGVkIHR5cG8uCisrCisrMjAx
NC0wNS0wMSAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgorKwor
KyAgICAgICAgRmluaXNoIHVwZGF0aW5nIEFOR0xFLgorKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzMjQzNAorKworKyAgICAgICAgUmV2aWV3ZWQgYnkg
RGVhbiBKYWNrc29uLgorKworKyAgICAgICAgKiBBTkdMRS54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qOgorKyAgICAgICAgUmVtb3ZlZCBVbmlmb3JtLmNwcCB3aGljaCBpcyBubyBsb25nZXIgaW4g
QU5HTEUuCisrICAgICAgICAqIGNoYW5nZXMuZGlmZjoKKysgICAgICAgIEFkZGVkIG1vcmUgY2hh
bmdlcyBmcm9tIEFOR0xFIHdoaWNoIGFyZSBhbHJlYWR5IGluY2x1ZGVkIGluIFdlYktpdC4KKysK
KysgICAgICAgIFVwZGF0ZWQgQU5HTEUgc291cmNlIGZpbGVzIHRvIGU3YTQ1M2E1YmQ3NjcwNWNj
YjE1MTExN2ZhODQ0ODQ2ZDRhYTkwYWYuICBMb25nIGxpc3Qgb2YgY2hhbmdlcyBvbWl0dGVkLgor
KworKzIwMTQtMDQtMzAgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9y
Zz4KKysKKysgICAgICAgIFVwZGF0ZWQgQU5HTEUuCisrICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTMyMzY3CisrICAgICAgICA8cmRhcjovL3Byb2JsZW0v
MTYyMTE0NTE+CisrCisrICAgICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisrCisrICAg
ICAgICAqIEFOR0xFLnBsaXN0OgorKyAgICAgICAgVXBkYXRlZCBhbmQgeG1sIGVuY29kZWQuCisr
ICAgICAgICAqIEFOR0xFLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisrICAgICAgICBBZGRl
ZCBuZWVkZWQgbmV3IHNvdXJjZSBmaWxlcy4KKysgICAgICAgICogY2hhbmdlcy5kaWZmOiAKKysg
ICAgICAgIEFkZGVkIHRvIGtlZXAgdHJhY2sgb2YgZGlmZmVyZW5jZXMgYmV0d2VlbiBXZWJLaXQn
cyBjb3B5IG9mIEFOR0xFIGFuZCB0aGUgbWFzdGVyIHJlcG9zaXRvcnkuCisrICAgICAgICAKKysg
ICAgICAgIFVwZGF0ZWQgQU5HTEUgc291cmNlIGZpbGVzIHRvIGU3YTQ1M2E1YmQ3NjcwNWNjYjE1
MTExN2ZhODQ0ODQ2ZDRhYTkwYWYuICBMb25nIGxpc3Qgb2YgY2hhbmdlcyBvbWl0dGVkLgorKwor
KzIwMTQtMDMtMjUgIE1hcnRpbiBSb2JpbnNvbiAgPG1yb2JpbnNvbkBpZ2FsaWEuY29tPgorKwor
KyAgICAgICAgW0dUS10gUmVtb3ZlIHRoZSBhdXRvdG9vbHMgYnVpbGQKKysgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzA3MTcKKysKKysgICAgICAgIFJl
dmlld2VkIGJ5IEFuZGVycyBDYXJsc3Nvbi4KKysKKysgICAgICAgICogR05VbWFrZWZpbGUuYW06
IFJlbW92ZWQuCisrCisrMjAxNC0wMy0xNCAgTWFyayBSb3dlICA8bXJvd2VAYXBwbGUuY29tPgor
KworKyAgICAgICAgRml4IHRoZSBwcm9kdWN0aW9uIGJ1aWxkLgorKworKyAgICAgICAgRG9uJ3Qg
cmVseSBvbiBVU0VfSU5URVJOQUxfU0RLIGJlaW5nIHNldCBmb3IgdGhlIFByb2R1Y3Rpb24gY29u
ZmlndXJhdGlvbiBzaW5jZSBVc2VJbnRlcm5hbFNESy54Y2NvbmZpZyB3b24ndAorKyAgICAgICAg
YmUgYXQgdGhlIGV4cGVjdGVkIHJlbGF0aXZlIHBhdGggd2hlbiB3b3JraW5nIGZyb20gaW5zdGFs
bGVkIHNvdXJjZS4KKysKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZzoK
KysKKysyMDE0LTAzLTEzICBUaW0gSG9ydG9uICA8dGltb3RoeV9ob3J0b25AYXBwbGUuY29tPgor
KworKyAgICAgICAgRml4IHJlbGF0aXZlIHBhdGhzIHRvIFVzZUludGVybmFsU0RLLnhjY29uZmln
IGZvciBBTkdMRSBhbmQgV2ViS2l0L21hYworKworKyAgICAgICAgUnViYmVyLXN0YW1wZWQgYnkg
TWFyayBSb3dlLgorKworKyAgICAgICAgT25lLXRvby1mZXcgIi4uIi4KKysKKysgICAgICAgICog
Q29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZzoKKysKKysyMDE0LTAzLTEzICBSYWR1IFN0YXZp
bGEgIDxzdGF2aWxhQGFkb2JlLmNvbT4KKysKKysgICAgICAgIFdlYmtpdCBub3QgYnVpbGRpbmcg
b24gWENvZGUgNS4xIGR1ZSB0byBnYXJiYWdlIGNvbGxlY3Rpb24gbm8gbG9uZ2VyIGJlaW5nIHN1
cHBvcnRlZAorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTEzMDA4NworKworKyAgICAgICAgUmV2aWV3ZWQgYnkgTWFyayBSb3dlLgorKworKyAgICAgICAg
RGlzYWJsZSBnYXJiYWdlIGNvbGxlY3Rpb24gb24gbWFjb3N4IHdoZW4gbm90IHVzaW5nIGludGVy
bmFsIFNESy4KKysKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZzoKKysK
KysyMDE0LTAyLTI0ICBEZWFuIEphY2tzb24gIDxkaW5vQGFwcGxlLmNvbT4KKysKKysgICAgICAg
IFVucmV2aWV3ZWQuIFRoaXMgZmlsZSBzaG91bGQgbm90IGJlIG1hcmtlZCBhcyBleGVjdXRhYmxl
IChjb3BpZWQgaW4gZnJvbSBBTkdMRSkuCisrCisrICAgICAgICAqIGluY2x1ZGUvS0hSL2tocnBs
YXRmb3JtLmg6CisrCisrMjAxNC0wMi0yMyAgRGF2aWQgS2lsemVyICA8ZGRraWx6ZXJAYXBwbGUu
Y29tPgorKworKyAgICAgICAgQU5HTEU6IFN0b3AgdXNpbmcgdW5zYWZlIHN0cmNweSBtZXRob2QK
KysgICAgICAgIDxodHRwOi8vd2Via2l0Lm9yZy9iLzEyOTIzNz4KKysgICAgICAgIDxyZGFyOi8v
cHJvYmxlbS8xMTA3NzU4MD4KKysKKysgICAgICAgIFJldmlld2VkIGJ5IERlYW4gSmFja3Nvbi4K
KysKKysgICAgICAgICogaW5jbHVkZS9HTFNMQU5HL1NoYWRlckxhbmcuaDoKKysgICAgICAgIC0g
RHJpdmUtYnkgZml4IGZvciBoZWFkZXIgZG9jdW1lbnRhdGlvbi4KKysKKysgICAgICAgICogc3Jj
L2NvbXBpbGVyL3RyYW5zbGF0b3IvU2hhZGVyTGFuZy5jcHA6CisrICAgICAgICAoU2hHZXRJbmZv
TG9nKToKKysgICAgICAgIChTaEdldE9iamVjdENvZGUpOgorKyAgICAgICAgKiBzcmMvbGliR0xF
U3YyL1Byb2dyYW0uY3BwOgorKyAgICAgICAgKGdsOjpJbmZvTG9nOjphcHBlbmQpOgorKyAgICAg
ICAgLSBTd2l0Y2ggdG8gdXNlIHN0cm5jcHkoKSwgYW5kIGV4cGxpY2l0bHkgc2V0IE5VTEwgdGVy
bWluYXRvciBhdAorKyAgICAgICAgICB0aGUgZW5kIG9mIHRoZSBidWZmZXIuCisrCisrMjAxNC0w
Mi0yMyAgQnJlbnQgRnVsZ2hhbSAgPGJmdWxnaGFtQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFtX
aW5DYWlyb10gVW5yZXZpZXdlZCBidWlsZCBmaXggYWZ0ZXIgcjE2NDU2NS4KKysKKysgICAgICAg
ICogQU5HTEUudmN4cHJvai9saWJFR0wudmN4cHJvajogVXNlIGNvcnJlY3QgcGF0aCB0byBmaWxl
cy4KKysgICAgICAgICogQU5HTEUudmN4cHJvai9saWJHTEVTdjIudmN4cHJvajogRGl0dG8uCisr
ICAgICAgICAqIEFOR0xFLnZjeHByb2ovbGliR0xFU3YyLnZjeHByb2ouZmlsdGVyczogRGl0dG8u
CisrICAgICAgICAqIEFOR0xFLnZjeHByb2ovcHJlcHJvY2Vzc29yLnZjeHByb2o6IERpdHRvLgor
KyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL3RyYW5zbGF0b3JfY29tbW9uLnZjeHByb2o6IERpdHRv
LgorKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL3RyYW5zbGF0b3JfY29tbW9uLnZjeHByb2ouZmls
dGVyczogRGl0dG8uCisrICAgICAgICAqIEFOR0xFLnZjeHByb2ovdHJhbnNsYXRvcl9nbHNsLnZj
eHByb2o6IERpdHRvLgorKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL3RyYW5zbGF0b3JfZ2xzbC52
Y3hwcm9qLmZpbHRlcnM6IERpdHRvLgorKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL3RyYW5zbGF0
b3JfaGxzbC52Y3hwcm9qOiBEaXR0by4KKysgICAgICAgICogQU5HTEUudmN4cHJvai90cmFuc2xh
dG9yX2hsc2wudmN4cHJvai5maWx0ZXJzOiBEaXR0by4KKysKKysyMDE0LTAyLTIzICBEZWFuIEph
Y2tzb24gIDxkaW5vQGFwcGxlLmNvbT4KKysKKysgICAgICAgIE1pc3NpbmcgZmlsZXMgZnJvbSBw
cmV2aW91cyBjb21taXQuCisrCisrMjAxNC0wMi0yMyAgRGVhbiBKYWNrc29uICA8ZGlub0BhcHBs
ZS5jb20+CisrCisrICAgICAgICBVcGRhdGUgQU5HTEUgdG8gODM2YmQyMTc2ZTU2MDdiMTQ4NDZj
ZjFmYmM1OTMyZGJjOTEzMThmNAorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTEyOTIzMgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgQnJlbnQgRnVsZ2hh
bS4KKysKKysgICAgICAgIEkgYWxzbyByZWFwcGxpZWQgc29tZSBvZiBvdXIgY2hhbmdlcyBmcm9t
IHByZXZpb3VzIHVwZGF0ZXMsIGluY2x1ZGluZyBkaXNhYmxpbmcgdGhlIGNsYW5nIGRlcHJlY2F0
aW9uCisrICAgICAgICB3YXJuaW5ncyBpbiBzb21lIGZpbGVzLCBhZGRpbmcgdGhlIEFwcGxlIG5v
dGUgYWJvdXQgbGljZW5zZSBhbmQgZGVmaW5pbmcgWVlfTk9fSU5QVVQuCisrCisrICAgICAgICBI
dWdlIGxpc3Qgb2Ygc291cmNlIGNoYW5nZXMgb21pdHRlZC4KKysKKysyMDEzLTEyLTE4ICBDYXJs
b3MgR2FyY2lhIENhbXBvcyAgPGNnYXJjaWFAaWdhbGlhLmNvbT4KKysKKysgICAgICAgIFVucmV2
aWV3ZWQuIEZpeCBtYWtlIGRpc3RjaGVjay4KKysKKysgICAgICAgICogR05VbWFrZWZpbGUuYW06
CisrCisrMjAxMy0xMi0xNyAgR3VzdGF2byBOb3JvbmhhIFNpbHZhICA8Z3VzdGF2by5ub3Jvbmhh
QGNvbGxhYm9yYS5jb20+CisrCisrICAgICAgICBbR1RLXSBTb21lIEFOR0xFIGhlYWRlcnMgbWlz
c2luZyBmcm9tIGRpc3QKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xMjU3ODIKKysKKysgICAgICAgIFJldmlld2VkIGJ5IENhcmxvcyBHYXJjaWEgQ2Ft
cG9zLgorKworKyAgICAgICAgKiBHTlVtYWtlZmlsZS5hbTogYWRkIGEgZmV3IGhlYWRlcnMgdGhh
dCB3ZXJlIG1pc3NpbmcgZnJvbSB0aGUgYnVpbGQsCisrICAgICAgICBjYXVzaW5nIGJ1aWxkIGZh
aWx1cmVzIHdoZW4gdGhlIHN5c3RlbSBoZWFkZXJzIHdlcmUgaW5jb21wYXRpYmxlLgorKworKzIw
MTMtMTItMTYgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KKysK
KysgICAgICAgIEZpeGVkIFdpbjY0IGJ1aWxkIG9uIFZTMjAxMy4KKysgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjU3NTMKKysKKysgICAgICAgIFJldmll
d2VkIGJ5IEJyZW50IEZ1bGdoYW0uCisrCisrICAgICAgICAqIEFOR0xFLnZjeHByb2ovbGliR0xF
U3YyLnZjeHByb2o6CisrICAgICAgICAqIEFOR0xFLnZjeHByb2ovcHJlcHJvY2Vzc29yLnZjeHBy
b2o6CisrICAgICAgICAqIEFOR0xFLnZjeHByb2ovdHJhbnNsYXRvcl9jb21tb24udmN4cHJvajoK
KysgICAgICAgICogQU5HTEUudmN4cHJvai90cmFuc2xhdG9yX2dsc2wudmN4cHJvajoKKysgICAg
ICAgICogQU5HTEUudmN4cHJvai90cmFuc2xhdG9yX2hsc2wudmN4cHJvajoKKysgICAgICAgIEFk
ZGVkIGNvcnJlY3QgUGxhdGZvcm1Ub29sc2V0IGZvciA2NC1iaXQgYnVpbGRzLgorKworKzIwMTMt
MTItMTMgIEJyZW50IEZ1bGdoYW0gIDxiZnVsZ2hhbUBhcHBsZS5jb20+CisrCisrICAgICAgICBb
V2luXSBVbnJldmlld2VkIGJ1aWxkIGZpeCBhZnRlciByMTYwNTQ4CisrCisrICAgICAgICBJIG1p
c3NlZCB0aGUgQU5HTEUgZmlsZXMsIHNpbmNlIHdlIGFyZW4ndCBidWlsZGluZyB0aGVzZQorKyAg
ICAgICAgb24gdGhlIEFwcGxlIFdpbmRvd3MgcG9ydCBhdCB0aGUgbW9tZW50LgorKworKyAgICAg
ICAgKiBBTkdMRS52Y3hwcm9qL2xpYkVHTC52Y3hwcm9qOiBVcGRhdGUgdG8gVlMyMDEzCisrICAg
ICAgICAqIEFOR0xFLnZjeHByb2ovbGliR0xFU3YyLnZjeHByb2o6IERpdHRvCisrICAgICAgICAq
IEFOR0xFLnZjeHByb2ovcHJlcHJvY2Vzc29yLnZjeHByb2o6IERpdHRvCisrICAgICAgICAqIEFO
R0xFLnZjeHByb2ovdHJhbnNsYXRvcl9jb21tb24udmN4cHJvajogRGl0dG8KKysgICAgICAgICog
QU5HTEUudmN4cHJvai90cmFuc2xhdG9yX2dsc2wudmN4cHJvajogRGl0dG8KKysgICAgICAgICog
QU5HTEUudmN4cHJvai90cmFuc2xhdG9yX2hsc2wudmN4cHJvajogRGl0dG8KKysKKysyMDEzLTEy
LTA2ICBDb21taXQgUXVldWUgIDxjb21taXQtcXVldWVAd2Via2l0Lm9yZz4KKysKKysgICAgICAg
IFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0IHIxNTk1NDMuCisrICAgICAgICBodHRwOi8vdHJhYy53
ZWJraXQub3JnL2NoYW5nZXNldC8xNTk1NDMKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xMjUzNzEKKysKKysgICAgICAgIEJ1aWxkIGZpeCBmb3IgbWFj
IG5vIGxvbmdlciBuZWVkZWQgKFJlcXVlc3RlZCBieSByZm9uZyBvbgorKyAgICAgICAgI3dlYmtp
dCkuCisrCisrICAgICAgICAqIEFOR0xFLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisrICAg
ICAgICAqIHNyYy9jb21waWxlci9nbHNsYW5nX3RhYi5jcHA6CisrICAgICAgICAoeXlzeW50YXhf
ZXJyb3IpOgorKyAgICAgICAgKGdsc2xhbmdfcGFyc2UpOgorKyAgICAgICAgKiBzcmMvY29tcGls
ZXIvZ2xzbGFuZ190YWIuaDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9F
eHByZXNzaW9uUGFyc2VyLmNwcDoKKysgICAgICAgICh5eV9zeW1ib2xfcHJpbnQpOgorKyAgICAg
ICAgKHl5X3N0YWNrX3ByaW50KToKKysgICAgICAgICh5eV9yZWR1Y2VfcHJpbnQpOgorKyAgICAg
ICAgKHl5dG5hbWVycik6CisrICAgICAgICAoeXlzeW50YXhfZXJyb3IpOgorKyAgICAgICAgKHl5
ZGVzdHJ1Y3QpOgorKyAgICAgICAgKHl5cGFyc2UpOgorKworKzIwMTMtMTItMDUgIFJvZ2VyIEZv
bmcgIDxyb2dlcl9mb25nQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFtXZWJHTF0gTWFrZSBzdXJl
IHdlIHNhdGlzZnkgdW5pZm9ybSBhbmQgdmFyeWluZyBwYWNraW5nIHJlc3RyaWN0aW9ucy4KKysg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjUxMjQuCisr
ICAgICAgICA8cmRhcjovL3Byb2JsZW0vMTUyMDMyOTE+CisrCisrICAgICAgICBSZXZpZXdlZCBi
eSBCcmVudCBGdWxnaGFtLgorKworKyAgICAgICAgKiBzcmMvY29tcGlsZXIvQ29tcGlsZXIuY3Bw
OiAKKysgICAgICAgIEFkZCBhIGNoZWNrIHRvIGVuZm9yY2VQYWNraW5nUmVzdHJpY3Rpb25zIHRv
IGVuc3VyZSB3ZSBtYWtlIHN1cmUgcGFja2luZyByZXN0cmljdGlvbnMgZm9yIHZhcnlpbmdzIGFy
ZSBzYXRpc2ZpZWQgYXMgd2VsbC4KKysgICAgICAgIChUQ29tcGlsZXI6OlRDb21waWxlcik6Cisr
ICAgICAgICAoVENvbXBpbGVyOjpJbml0KToKKysgICAgICAgIChUQ29tcGlsZXI6OmNvbXBpbGUp
OgorKyAgICAgICAgKFRDb21waWxlcjo6ZW5mb3JjZVBhY2tpbmdSZXN0cmljdGlvbnMpOgorKyAg
ICAgICAgKiBzcmMvY29tcGlsZXIvU2hIYW5kbGUuaDogS2VlcCB0cmFjayBvZiBtYXhpbXVtIHZh
cnlpbmcgdmVjdG9ycy4KKysKKysyMDEzLTEyLTA1ICBNYXR0aGV3IEhhbnNvbiAgPG1hdHRoZXdf
aGFuc29uQGFwcGxlLmNvbT4KKysKKysgICAgICAgIEZpeCBBTkdMRSBidWlsZCBmYWlsdXJlcyBi
eSByZS1jb21pdHRpbmcgdGhlIGNoYW5nZXMgaW4gaHR0cDovL3RyYWMud2Via2l0Lm9yZy9jaGFu
Z2VzZXQvMTU0MjIzCisrICAgICAgICBvbiB0b3Agb2YgdGhlIGxpYnJhcnkgdXBkYXRlcyBpbnRy
b2R1Y2VkIGJ5IGh0dHA6Ly90cmFjLndlYmtpdC5vcmcvY2hhbmdlc2V0LzE1OTUzMy4KKysKKysg
ICAgICAgIFJ1YmJlci1zdGFtcGVkIGJ5IEJhYmFrIFNoYWZpZWkuCisrCisrICAgICAgICAqIHNy
Yy9jb21waWxlci9nbHNsYW5nLmw6CisrICAgICAgICAqIHNyYy9jb21waWxlci9nbHNsYW5nX2xl
eC5jcHA6CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvVG9rZW5pemVyLmNw
cDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9Ub2tlbml6ZXIubDoKKysK
KysyMDEzLTEyLTAzICBEYW5pZWwgQmF0ZXMgIDxkYWJhdGVzQGFwcGxlLmNvbT4KKysKKysgICAg
ICAgIEFOR0xFIGZhaWxzIHRvIGJ1aWxkIHdpdGggdHJ1bmsgY2xhbmc6IHVudXNlZCBjb25zdGFu
dCBrVHJhY2VCdWZmZXJMZW4KKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xMjUxNjQKKysgICAgICAgIGh0dHBzOi8vY29kZS5nb29nbGUuY29tL3AvYW5n
bGVwcm9qZWN0L2lzc3Vlcy9kZXRhaWw/aWQ9NTM0CisrCisrICAgICAgICBSZXZpZXdlZCBieSBE
YXJpbiBBZGxlci4KKysKKysgICAgICAgIE1vdmUgdGhlIGRlZmluaXRpb24gb2YgdGhlIGNvbnN0
YW50IGtUcmFjZUJ1ZmZlckxlbiB1bmRlciB0aGUgbWFjcm8KKysgICAgICAgIGd1YXJkIFRSQUNF
X0VOQUJMRUQgc2luY2UgaXQncyBvbmx5IHJlZmVyZW5jZWQgaW4gY29kZSBndWFyZGVkIGJ5Cisr
ICAgICAgICBUUkFDRV9FTkFCTEVELgorKworKyAgICAgICAgKiBzcmMvY29tcGlsZXIvZGVidWcu
Y3BwOgorKworKzIwMTMtMTEtMjEgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Vi
a2l0Lm9yZz4KKysKKysgICAgICAgIFJlbW92ZSBBTkdMRUdlbmVyYXRlZCBmcm9tIFdpbmRvd3Mg
YnVpbGQuCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTI0NzU5CisrCisrICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KKysKKysgICAgICAg
ICogQU5HTEUudmN4cHJvai9BTkdMRUdlbmVyYXRlZC52Y3hwcm9qOiBSZW1vdmVkLgorKyAgICAg
ICAgKiBBTkdMRS52Y3hwcm9qL0FOR0xFR2VuZXJhdGVkLnZjeHByb2ouZmlsdGVyczogUmVtb3Zl
ZC4KKysKKysyMDEzLTExLTIxICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtp
dC5vcmc+CisrCisrICAgICAgICBVbnJldmlld2VkIGJ1aWxkIGZpeC4KKysKKysgICAgICAgICog
c3JjL2xpYkdMRVN2Mi9Db25zdGFudHMuaDogQWRkZWQgZnJvbSBjaGVja291dCBhNjBlMDgwNTcy
MWY2MmMyOGE1NWZhZjJkZjc0NDcyY2M1ZmM5MWZjLgorKworKzIwMTMtMTEtMjEgIE1hcmsgUm93
ZSAgPG1yb3dlQGFwcGxlLmNvbT4KKysKKysgICAgICAgIDxodHRwczovL3dlYmtpdC5vcmcvYi8x
MjQ3MDE+IEZpeCBhbiBlcnJvciBpbiBhIGZldyBYY29kZSBjb25maWd1cmF0aW9uIHNldHRpbmcg
ZmlsZXMuCisrCisrICAgICAgICBSZXZpZXdlZCBieSBBbGV4ZXkgUHJvc2t1cnlha292LgorKwor
KyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnOgorKworKzIwMTMtMTEtMjEg
IEJyZW50IEZ1bGdoYW0gIDxiZnVsZ2hhbUBhcHBsZS5jb20+CisrCisrICAgICAgICBVbnJldmll
d2VkIGdhcmRlbmluZyB0byBoaWRlIGFubm95aW5nICoudXNlciBmaWxlcyB3aGVuLgorKworKyAg
ICAgICAgKiBBTkdMRS52Y3hwcm9qOiBBZGRlZCBwcm9wZXJ0eSBzdm46aWdub3JlLgorKworKzIw
MTMtMTEtMjEgIHBlYXZvQG91dGxvb2suY29tICA8cGVhdm9Ab3V0bG9vay5jb20+CisrCisrICAg
ICAgICBbV2luQ2Fpcm9dIEJ1aWxkaW5nIEFOR0xFIGxpYnJhcmllcyBmYWlscy4KKysgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjQ2NzkKKysKKysgICAg
ICAgIFJldmlld2VkIGJ5IEJyZW50IEZ1bGdoYW0uCisrCisrICAgICAgICBBZGRlZC9yZW1vdmVk
IGZpbGVzIHRvL2Zyb20gcHJvamVjdCwgYW5kIHJlLWFkZGVkIGNvbnN0YW50cy5oIGZpbGUuCisr
CisrICAgICAgICAqIEFOR0xFLnZjeHByb2ovbGliRUdMLnZjeHByb2o6CisrICAgICAgICAqIEFO
R0xFLnZjeHByb2ovbGliRUdMLnZjeHByb2ouZmlsdGVyczoKKysgICAgICAgICogQU5HTEUudmN4
cHJvai9saWJHTEVTdjIudmN4cHJvajoKKysgICAgICAgICogQU5HTEUudmN4cHJvai9saWJHTEVT
djIudmN4cHJvai5maWx0ZXJzOgorKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL2xpYkdMRVN2MkNv
bW1vbi5wcm9wczoKKysgICAgICAgICogQU5HTEUudmN4cHJvai90cmFuc2xhdG9yX2NvbW1vbi52
Y3hwcm9qOgorKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL3RyYW5zbGF0b3JfY29tbW9uLnZjeHBy
b2ouZmlsdGVyczoKKysgICAgICAgICogQU5HTEUudmN4cHJvai90cmFuc2xhdG9yX2dsc2wudmN4
cHJvajoKKysgICAgICAgICogQU5HTEUudmN4cHJvai90cmFuc2xhdG9yX2dsc2wudmN4cHJvai5m
aWx0ZXJzOgorKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL3RyYW5zbGF0b3JfaGxzbC52Y3hwcm9q
OgorKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL3RyYW5zbGF0b3JfaGxzbC52Y3hwcm9qLmZpbHRl
cnM6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvbGliR0xFU3YyLmRlZjoKKysKKysyMDEzLTEx
LTIwICBTZXJnaW8gQ29ycmVpYSAgPHNlcmdpby5jb3JyZWlhQG9wZW5ib3NzYS5vcmc+CisrCisr
ICAgICAgICBBTkdMRSBkb2Vzbid0IGJ1aWxkIHdpdGggYmlzb24gMy4wCisrICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTI0NjQyCisrCisrICAgICAgICBS
ZXZpZXdlZCBieSBHeXV5b3VuZyBLaW0uCisrCisrICAgICAgICBUaGlzIGlzIGEgcmVlZGl0aW9u
IG9mIHIxNTQxMDksIG5vdyB0aGF0IEFOR0xFIHNvdXJjZSBoYXMgYmVlbiB1cGRhdGVkCisrICAg
ICAgICBpbiByMTU5NTMzLgorKworKyAgICAgICAgKiBzcmMvY29tcGlsZXIvZ2xzbGFuZy55OiBV
c2UgJWxleC1wYXJhbSB0byBzZXQgWVlMRVhfUEFSQU0gYW5kIHN0b3AKKysgICAgICAgIHVzaW5n
IHRoZSBkZXByZWNhdGVkIFlZSUQgbWFjcm8uCisrCisrMjAxMy0xMS0yMCAgQ2FybG9zIEdhcmNp
YSBDYW1wb3MgIDxjZ2FyY2lhQGlnYWxpYS5jb20+CisrCisrICAgICAgICBVbnJldmlld2VkLiBG
aXggR1RLIGJ1aWxkLgorKworKyAgICAgICAgKiBHTlVtYWtlZmlsZS5hbTogUmVtb3ZlIGR1cGxp
Y2F0ZWQgZW50cmllcy4KKysKKysyMDEzLTExLTE5ICBNYXJ0aW4gUm9iaW5zb24gIDxtcm9iaW5z
b25AaWdhbGlhLmNvbT4KKysKKysgICAgICAgIEZpeCB0aGUgR1RLKyBidWlsZCBhZnRlciB0aGUg
QU5HTEUgdXBkYXRlIGluIHIxNTk1MzMKKysKKysgICAgICAgICogR05VbWFrZWZpbGUuYW06IFVw
ZGF0ZSB0aGUgc291cmNlIGxpc3QuCisrCisrMjAxMy0xMS0xOSAgUm9nZXIgRm9uZyAgPHJvZ2Vy
X2ZvbmdAYXBwbGUuY29tPgorKworKyAgICAgICAgVW5yZXZpZXdlZC4gQnVpbGQgZml4IGZvciBN
YWMuCisrCisrICAgICAgICAqIHNyYy9jb21waWxlci9nbHNsYW5nX3RhYi5jcHA6CisrICAgICAg
ICAoeXlzeW50YXhfZXJyb3IpOgorKyAgICAgICAgKHl5ZXJyb3IpOgorKyAgICAgICAgKiBzcmMv
Y29tcGlsZXIvZ2xzbGFuZ190YWIuaDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nl
c3Nvci9FeHByZXNzaW9uUGFyc2VyLmNwcDoKKysgICAgICAgICh5eXN5bnRheF9lcnJvcik6Cisr
CisrMjAxMy0xMS0xOSAgUm9nZXIgRm9uZyAgPHJvZ2VyX2ZvbmdAYXBwbGUuY29tPgorKworKyAg
ICAgICAgVW5yZXZpZXdlZC4gUHJvc3BlY3RpdmUgYnVpbGQgZml4IGZvciBHVEsgcG9ydCBmb2xs
b3dpbmcgcjE1OTUzMy4KKysKKysgICAgICAgICogR05VbWFrZWZpbGUuYW06CisrCisrMjAxMy0x
MS0xOSAgUm9nZXIgRm9uZyAgPHJvZ2VyX2ZvbmdAYXBwbGUuY29tPgorKworKyAgICAgICAgVXBk
YXRlIEFOR0xFIHNvdXJjZXMuCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTI0NjE1LgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGVhbiBKYWNrc29u
LgorKworKyAgICAgICAgVXBkYXRlIEFOR0xFIHRvIGNoZWNrb3V0IGE2MGUwODA1NzIxZjYyYzI4
YTU1ZmFmMmRmNzQ0NzJjYzVmYzkxZmMuCisrICAgICAgICBNb2RpZnkgeGNvZGVwcm9qIGZpbGVz
IGFzIG5lY2Vzc2FyeSwgdXBkYXRlIHBsaXN0LgorKyAgICAgICAgU3RvcCB1c2luZyBEZXJpdmVk
U291cmNlcy5tYWtlIGFuZCBqdXN0IHVzZSB0aGUgZ2VuZXJhdGVkIHNvdXJjZXMgdGhhdCBhcmUg
Y2hlY2tlZCBpbnRvIEFOR0xFLgorKyAgICAgICAgQWRkIGEgbm90ZSB0byBiaXNvbiBnZW5lcmF0
ZWQgZmlsZXMgaW5kaWNhdGluZyB0aGF0IEFwcGxlIGVsZWN0cyB0byBkaXN0cmlidXRlIHNhaWQg
ZmlsZXMgdW5kZXIgdGhlIEJTRCBsaWNlbnNlOiAKKysgICAgICAgIEV4cHJlc3Npb25QYXJzZXIu
Y3BwLCBnbHNsYW5nX3RhYi5jcHAsIGdsc2xhbmdfdGFiLmguCisrCisrICAgICAgICAqIEFOR0xF
LnBsaXN0OgorKyAgICAgICAgKiBBTkdMRS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorKyAg
ICAgICAgKiBEZXJpdmVkU291cmNlcy5tYWtlOiBSZW1vdmVkLgorKyAgICAgICAgKiBpbmNsdWRl
L0VHTC9lZ2wuaDoKKysgICAgICAgICogaW5jbHVkZS9FR0wvZWdsc29mdGxpbmtpbmcuaDogUmVt
b3ZlZC4KKysgICAgICAgICogaW5jbHVkZS9HTEVTMi9nbDIuaDoKKysgICAgICAgICogaW5jbHVk
ZS9HTEVTMi9nbDJzb2Z0bGlua2luZy5oOiBSZW1vdmVkLgorKyAgICAgICAgKiBpbmNsdWRlL0dM
U0xBTkcvU2hhZGVyTGFuZy5oOgorKyAgICAgICAgKiBpbmNsdWRlL0tIUi9raHJwbGF0Zm9ybS5o
OgorKyAgICAgICAgKiBzcmMvQU5HTEUuc2xuOiBBZGRlZC4KKysgICAgICAgICogc3JjL2J1aWxk
X2FuZ2xlLmd5cGk6CisrICAgICAgICAqIHNyYy9jb21tb24vZGVidWcuaDoKKysgICAgICAgICog
c3JjL2NvbW1vbi9ldmVudF90cmFjZXIuY3BwOiBBZGRlZC4KKysgICAgICAgIChnbDo6VHJhY2VH
ZXRUcmFjZUNhdGVnb3J5RW5hYmxlZEZsYWcpOgorKyAgICAgICAgKGdsOjpUcmFjZUFkZFRyYWNl
RXZlbnQpOgorKyAgICAgICAgKiBzcmMvY29tbW9uL2V2ZW50X3RyYWNlci5oOiBBZGRlZC4KKysg
ICAgICAgICogc3JjL2NvbW1vbi92ZXJzaW9uLmg6CisrICAgICAgICAqIHNyYy9jb21waWxlci9D
b2RlR2VuLmNwcDogQWRkZWQuCisrICAgICAgICAoQ29uc3RydWN0Q29tcGlsZXIpOgorKyAgICAg
ICAgKERlbGV0ZUNvbXBpbGVyKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL0NvZGVHZW5HTFNM
LmNwcDogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL0NvZGVHZW5ITFNMLmNwcDog
UmVtb3ZlZC4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL0NvbW1vbi5oOgorKyAgICAgICAgKE5l
d1Bvb2xUU3RyaW5nKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL0NvbXBpbGVyLmNwcDoKKysg
ICAgICAgIChUQ29tcGlsZXI6OkluaXQpOgorKyAgICAgICAgKFRDb21waWxlcjo6Y29tcGlsZSk6
CisrICAgICAgICAoVENvbXBpbGVyOjpJbml0QnVpbHRJblN5bWJvbFRhYmxlKToKKysgICAgICAg
IChUQ29tcGlsZXI6OmNsZWFyUmVzdWx0cyk6CisrICAgICAgICAoVENvbXBpbGVyOjpjb2xsZWN0
VmFyaWFibGVzKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL0NvbnN0YW50VW5pb24uaDoKKysg
ICAgICAgICogc3JjL2NvbXBpbGVyL0RldGVjdERpc2NvbnRpbnVpdHkuY3BwOgorKyAgICAgICAg
KiBzcmMvY29tcGlsZXIvSW5mb1NpbmsuaDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL0luaXRp
YWxpemVEbGwuY3BwOgorKyAgICAgICAgKEluaXRQcm9jZXNzKToKKysgICAgICAgIChEZXRhY2hQ
cm9jZXNzKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL0luaXRpYWxpemVEbGwuaDoKKysgICAg
ICAgICogc3JjL2NvbXBpbGVyL0luaXRpYWxpemVHTFBvc2l0aW9uLmNwcDogQWRkZWQuCisrICAg
ICAgICAoSW5pdGlhbGl6ZUdMUG9zaXRpb246OnZpc2l0QWdncmVnYXRlKToKKysgICAgICAgIChJ
bml0aWFsaXplR0xQb3NpdGlvbjo6aW5zZXJ0Q29kZSk6CisrICAgICAgICAqIHNyYy9jb21waWxl
ci9Jbml0aWFsaXplR0xQb3NpdGlvbi5oOiBBZGRlZC4KKysgICAgICAgIChJbml0aWFsaXplR0xQ
b3NpdGlvbjo6SW5pdGlhbGl6ZUdMUG9zaXRpb24pOgorKyAgICAgICAgKEluaXRpYWxpemVHTFBv
c2l0aW9uOjp2aXNpdEJpbmFyeSk6CisrICAgICAgICAoSW5pdGlhbGl6ZUdMUG9zaXRpb246OnZp
c2l0VW5hcnkpOgorKyAgICAgICAgKEluaXRpYWxpemVHTFBvc2l0aW9uOjp2aXNpdFNlbGVjdGlv
bik6CisrICAgICAgICAoSW5pdGlhbGl6ZUdMUG9zaXRpb246OnZpc2l0TG9vcCk6CisrICAgICAg
ICAoSW5pdGlhbGl6ZUdMUG9zaXRpb246OnZpc2l0QnJhbmNoKToKKysgICAgICAgICogc3JjL2Nv
bXBpbGVyL0luaXRpYWxpemVHbG9iYWxzLmg6CisrICAgICAgICAqIHNyYy9jb21waWxlci9Jbml0
aWFsaXplUGFyc2VDb250ZXh0LmNwcDoKKysgICAgICAgIChJbml0aWFsaXplUGFyc2VDb250ZXh0
SW5kZXgpOgorKyAgICAgICAgKEZyZWVQYXJzZUNvbnRleHRJbmRleCk6CisrICAgICAgICAoU2V0
R2xvYmFsUGFyc2VDb250ZXh0KToKKysgICAgICAgIChHZXRHbG9iYWxQYXJzZUNvbnRleHQpOgor
KyAgICAgICAgKiBzcmMvY29tcGlsZXIvSW5pdGlhbGl6ZVBhcnNlQ29udGV4dC5oOgorKyAgICAg
ICAgKiBzcmMvY29tcGlsZXIvSW50ZXJtVHJhdmVyc2UuY3BwOgorKyAgICAgICAgKFRJbnRlcm1T
eW1ib2w6OnRyYXZlcnNlKToKKysgICAgICAgIChUSW50ZXJtQ29uc3RhbnRVbmlvbjo6dHJhdmVy
c2UpOgorKyAgICAgICAgKFRJbnRlcm1CaW5hcnk6OnRyYXZlcnNlKToKKysgICAgICAgIChUSW50
ZXJtVW5hcnk6OnRyYXZlcnNlKToKKysgICAgICAgIChUSW50ZXJtQWdncmVnYXRlOjp0cmF2ZXJz
ZSk6CisrICAgICAgICAoVEludGVybVNlbGVjdGlvbjo6dHJhdmVyc2UpOgorKyAgICAgICAgKFRJ
bnRlcm1Mb29wOjp0cmF2ZXJzZSk6CisrICAgICAgICAoVEludGVybUJyYW5jaDo6dHJhdmVyc2Up
OgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvSW50ZXJtZWRpYXRlLmNwcDoKKysgICAgICAgIChH
ZXRIaWdoZXJQcmVjaXNpb24pOgorKyAgICAgICAgKGdldE9wZXJhdG9yU3RyaW5nKToKKysgICAg
ICAgIChUSW50ZXJtTG9vcDo6cmVwbGFjZUNoaWxkTm9kZSk6CisrICAgICAgICAoVEludGVybUJy
YW5jaDo6cmVwbGFjZUNoaWxkTm9kZSk6CisrICAgICAgICAoVEludGVybUJpbmFyeTo6cmVwbGFj
ZUNoaWxkTm9kZSk6CisrICAgICAgICAoVEludGVybVVuYXJ5OjpyZXBsYWNlQ2hpbGROb2RlKToK
KysgICAgICAgIChUSW50ZXJtQWdncmVnYXRlOjpyZXBsYWNlQ2hpbGROb2RlKToKKysgICAgICAg
IChUSW50ZXJtU2VsZWN0aW9uOjpyZXBsYWNlQ2hpbGROb2RlKToKKysgICAgICAgIChUSW50ZXJt
T3BlcmF0b3I6OmlzQXNzaWdubWVudCk6CisrICAgICAgICAoVEludGVybWVkaWF0ZTo6cHJvbW90
ZUNvbnN0YW50VW5pb24pOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvTWFwTG9uZ1ZhcmlhYmxl
TmFtZXMuY3BwOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvTWFwTG9uZ1ZhcmlhYmxlTmFtZXMu
aDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL05vZGVTZWFyY2guaDogQWRkZWQuCisrICAgICAg
ICAoc2g6Ok5vZGVTZWFyY2hUcmF2ZXJzZXI6Ok5vZGVTZWFyY2hUcmF2ZXJzZXIpOgorKyAgICAg
ICAgKHNoOjpOb2RlU2VhcmNoVHJhdmVyc2VyOjpmb3VuZCk6CisrICAgICAgICAoc2g6Ok5vZGVT
ZWFyY2hUcmF2ZXJzZXI6OnNlYXJjaCk6CisrICAgICAgICAoc2g6OkZpbmREaXNjYXJkOjp2aXNp
dEJyYW5jaCk6CisrICAgICAgICAoc2g6OkZpbmRTaWRlRWZmZWN0UmV3cml0aW5nOjp2aXNpdEJp
bmFyeSk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9PdXRwdXRHTFNMQmFzZS5jcHA6CisrICAg
ICAgICAoVE91dHB1dEdMU0xCYXNlOjp2aXNpdFNlbGVjdGlvbik6CisrICAgICAgICAoVE91dHB1
dEdMU0xCYXNlOjp2aXNpdEFnZ3JlZ2F0ZSk6CisrICAgICAgICAoVE91dHB1dEdMU0xCYXNlOjp2
aXNpdExvb3ApOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvT3V0cHV0R0xTTEJhc2UuaDoKKysg
ICAgICAgICogc3JjL2NvbXBpbGVyL091dHB1dEhMU0wuY3BwOgorKyAgICAgICAgKHNoOjpPdXRw
dXRITFNMOjpPdXRwdXRITFNMKToKKysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6aGVhZGVyKToK
KysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6dmlzaXRCaW5hcnkpOgorKyAgICAgICAgKHNoOjpP
dXRwdXRITFNMOjp2aXNpdFNlbGVjdGlvbik6CisrICAgICAgICAoc2g6Ok91dHB1dEhMU0w6OnZp
c2l0QnJhbmNoKToKKysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6aGFuZGxlRXhjZXNzaXZlTG9v
cCk6CisrICAgICAgICAoc2g6Ok91dHB1dEhMU0w6OmFkZENvbnN0cnVjdG9yKToKKysgICAgICAg
ICogc3JjL2NvbXBpbGVyL091dHB1dEhMU0wuaDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL1Bh
cnNlQ29udGV4dC5jcHA6IEFkZGVkLgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OnBhcnNlVmVj
dG9yRmllbGRzKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0OjpwYXJzZU1hdHJpeEZpZWxkcyk6
CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6cmVjb3Zlcik6CisrICAgICAgICAoVFBhcnNlQ29u
dGV4dDo6ZXJyb3IpOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6Ondhcm5pbmcpOgorKyAgICAg
ICAgKFRQYXJzZUNvbnRleHQ6OnRyYWNlKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0Ojphc3Np
Z25FcnJvcik6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6dW5hcnlPcEVycm9yKToKKysgICAg
ICAgIChUUGFyc2VDb250ZXh0OjpiaW5hcnlPcEVycm9yKToKKysgICAgICAgIChUUGFyc2VDb250
ZXh0OjpwcmVjaXNpb25FcnJvckNoZWNrKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0OjpsVmFs
dWVFcnJvckNoZWNrKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0Ojpjb25zdEVycm9yQ2hlY2sp
OgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OmludGVnZXJFcnJvckNoZWNrKToKKysgICAgICAg
IChUUGFyc2VDb250ZXh0OjpnbG9iYWxFcnJvckNoZWNrKToKKysgICAgICAgIChUUGFyc2VDb250
ZXh0OjpyZXNlcnZlZEVycm9yQ2hlY2spOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OmNvbnN0
cnVjdG9yRXJyb3JDaGVjayk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6dm9pZEVycm9yQ2hl
Y2spOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OmJvb2xFcnJvckNoZWNrKToKKysgICAgICAg
IChUUGFyc2VDb250ZXh0OjpzYW1wbGVyRXJyb3JDaGVjayk6CisrICAgICAgICAoVFBhcnNlQ29u
dGV4dDo6c3RydWN0UXVhbGlmaWVyRXJyb3JDaGVjayk6CisrICAgICAgICAoVFBhcnNlQ29udGV4
dDo6cGFyYW1ldGVyU2FtcGxlckVycm9yQ2hlY2spOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6
OmNvbnRhaW5zU2FtcGxlcik6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6YXJyYXlTaXplRXJy
b3JDaGVjayk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6YXJyYXlRdWFsaWZpZXJFcnJvckNo
ZWNrKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0OjphcnJheVR5cGVFcnJvckNoZWNrKToKKysg
ICAgICAgIChUUGFyc2VDb250ZXh0OjphcnJheUVycm9yQ2hlY2spOgorKyAgICAgICAgKFRQYXJz
ZUNvbnRleHQ6Om5vbkluaXRDb25zdEVycm9yQ2hlY2spOgorKyAgICAgICAgKFRQYXJzZUNvbnRl
eHQ6Om5vbkluaXRFcnJvckNoZWNrKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0OjpwYXJhbUVy
cm9yQ2hlY2spOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OmV4dGVuc2lvbkVycm9yQ2hlY2sp
OgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OnN1cHBvcnRzRXh0ZW5zaW9uKToKKysgICAgICAg
IChUUGFyc2VDb250ZXh0Ojppc0V4dGVuc2lvbkVuYWJsZWQpOgorKyAgICAgICAgKFRQYXJzZUNv
bnRleHQ6OmZpbmRGdW5jdGlvbik6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6ZXhlY3V0ZUlu
aXRpYWxpemVyKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0OjphcmVBbGxDaGlsZENvbnN0KToK
KysgICAgICAgIChUUGFyc2VDb250ZXh0OjphZGRDb25zdHJ1Y3Rvcik6CisrICAgICAgICAoVFBh
cnNlQ29udGV4dDo6Zm9sZENvbnN0Q29uc3RydWN0b3IpOgorKyAgICAgICAgKFRQYXJzZUNvbnRl
eHQ6OmNvbnN0cnVjdEJ1aWx0SW4pOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OmNvbnN0cnVj
dFN0cnVjdCk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6YWRkQ29uc3RWZWN0b3JOb2RlKToK
KysgICAgICAgIChUUGFyc2VDb250ZXh0OjphZGRDb25zdE1hdHJpeE5vZGUpOgorKyAgICAgICAg
KFRQYXJzZUNvbnRleHQ6OmFkZENvbnN0QXJyYXlOb2RlKToKKysgICAgICAgIChUUGFyc2VDb250
ZXh0OjphZGRDb25zdFN0cnVjdCk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6ZW50ZXJTdHJ1
Y3REZWNsYXJhdGlvbik6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6ZXhpdFN0cnVjdERlY2xh
cmF0aW9uKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0OjpzdHJ1Y3ROZXN0aW5nRXJyb3JDaGVj
ayk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6YWRkSW5kZXhFeHByZXNzaW9uKToKKysgICAg
ICAgIChQYVBhcnNlU3RyaW5ncyk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9QYXJzZUNvbnRl
eHQuaDogQWRkZWQuCisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6VFBhcnNlQ29udGV4dCk6Cisr
ICAgICAgICAoVFBhcnNlQ29udGV4dDo6bnVtRXJyb3JzKToKKysgICAgICAgIChUUGFyc2VDb250
ZXh0OjppbmZvU2luayk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6cHJhZ21hKToKKysgICAg
ICAgIChUUGFyc2VDb250ZXh0OjpleHRlbnNpb25CZWhhdmlvcik6CisrICAgICAgICAqIHNyYy9j
b21waWxlci9QYXJzZUhlbHBlci5jcHA6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9jb21waWxl
ci9QYXJzZUhlbHBlci5oOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvUG9vbEFs
bG9jLmNwcDoKKysgICAgICAgIChJbml0aWFsaXplUG9vbEluZGV4KToKKysgICAgICAgIChGcmVl
UG9vbEluZGV4KToKKysgICAgICAgIChHZXRHbG9iYWxQb29sQWxsb2NhdG9yKToKKysgICAgICAg
IChTZXRHbG9iYWxQb29sQWxsb2NhdG9yKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL1Bvb2xB
bGxvYy5oOgorKyAgICAgICAgKHBvb2xfYWxsb2NhdG9yOjpwb29sX2FsbG9jYXRvcik6CisrICAg
ICAgICAqIHNyYy9jb21waWxlci9TZWFyY2hTeW1ib2wuaDoKKysgICAgICAgICogc3JjL2NvbXBp
bGVyL1NoSGFuZGxlLmg6CisrICAgICAgICAoVENvbXBpbGVyOjpnZXRWYXJ5aW5ncyk6CisrICAg
ICAgICAqIHNyYy9jb21waWxlci9TaGFkZXJMYW5nLmNwcDoKKysgICAgICAgIChjaGVja1Zhcmlh
YmxlTWF4TGVuZ3Rocyk6CisrICAgICAgICAoU2hJbml0aWFsaXplKToKKysgICAgICAgIChTaEZp
bmFsaXplKToKKysgICAgICAgIChTaENvbnN0cnVjdENvbXBpbGVyKToKKysgICAgICAgIChTaENv
bXBpbGUpOgorKyAgICAgICAgKFNoR2V0SW5mbyk6CisrICAgICAgICAoU2hHZXRWYXJpYWJsZUlu
Zm8pOgorKyAgICAgICAgKFNoQ2hlY2tWYXJpYWJsZXNXaXRoaW5QYWNraW5nTGltaXRzKToKKysg
ICAgICAgICogc3JjL2NvbXBpbGVyL1N5bWJvbFRhYmxlLmNwcDoKKysgICAgICAgIChUU3ltYm9s
VGFibGU6On5UU3ltYm9sVGFibGUpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvU3ltYm9sVGFi
bGUuaDoKKysgICAgICAgIChUU3ltYm9sOjpUU3ltYm9sKToKKysgICAgICAgIChUU3ltYm9sVGFi
bGVMZXZlbDo6aW5zZXJ0KToKKysgICAgICAgIChUU3ltYm9sVGFibGU6OnB1c2gpOgorKyAgICAg
ICAgKFRTeW1ib2xUYWJsZTo6cG9wKToKKysgICAgICAgIChUU3ltYm9sVGFibGU6OmZpbmRCdWls
dEluKToKKysgICAgICAgIChUU3ltYm9sVGFibGU6OnJlbGF0ZVRvRXh0ZW5zaW9uKToKKysgICAg
ICAgIChUU3ltYm9sVGFibGU6OnNldERlZmF1bHRQcmVjaXNpb24pOgorKyAgICAgICAgKFRTeW1i
b2xUYWJsZTo6Z2V0RGVmYXVsdFByZWNpc2lvbik6CisrICAgICAgICAoVFN5bWJvbFRhYmxlOjpz
dXBwb3J0c1ByZWNpc2lvbik6CisrICAgICAgICAqIHNyYy9jb21waWxlci9UeXBlcy5oOgorKyAg
ICAgICAgKE5ld1Bvb2xURmllbGRMaXN0KToKKysgICAgICAgIChUVHlwZTo6VFR5cGUpOgorKyAg
ICAgICAgKFRUeXBlOjpzZXROb21pbmFsU2l6ZSk6CisrICAgICAgICAoVFB1YmxpY1R5cGU6OnNl
dEFnZ3JlZ2F0ZSk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9VbmZvbGRTaG9ydENpcmN1aXQu
Y3BwOgorKyAgICAgICAgKHNoOjpVbmZvbGRTaG9ydENpcmN1aXQ6OnZpc2l0QmluYXJ5KToKKysg
ICAgICAgIChzaDo6VW5mb2xkU2hvcnRDaXJjdWl0Ojp2aXNpdFNlbGVjdGlvbik6CisrICAgICAg
ICAqIHNyYy9jb21waWxlci9VbmZvbGRTaG9ydENpcmN1aXQuaDoKKysgICAgICAgICogc3JjL2Nv
bXBpbGVyL1VuZm9sZFNob3J0Q2lyY3VpdEFTVC5jcHA6IEFkZGVkLgorKyAgICAgICAgKFVuZm9s
ZFNob3J0Q2lyY3VpdEFTVDo6dmlzaXRCaW5hcnkpOgorKyAgICAgICAgKFVuZm9sZFNob3J0Q2ly
Y3VpdEFTVDo6dXBkYXRlVHJlZSk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9VbmZvbGRTaG9y
dENpcmN1aXRBU1QuaDogQWRkZWQuCisrICAgICAgICAoVW5mb2xkU2hvcnRDaXJjdWl0QVNUOjpV
bmZvbGRTaG9ydENpcmN1aXRBU1QpOgorKyAgICAgICAgKFVuZm9sZFNob3J0Q2lyY3VpdEFTVDo6
Tm9kZVVwZGF0ZUVudHJ5OjpOb2RlVXBkYXRlRW50cnkpOgorKyAgICAgICAgKiBzcmMvY29tcGls
ZXIvVW5pZm9ybS5jcHA6CisrICAgICAgICAoc2g6OlVuaWZvcm06OlVuaWZvcm0pOgorKyAgICAg
ICAgKiBzcmMvY29tcGlsZXIvVW5pZm9ybS5oOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvVmFs
aWRhdGVMaW1pdGF0aW9ucy5jcHA6CisrICAgICAgICAoVmFsaWRhdGVMaW1pdGF0aW9uczo6dmFs
aWRhdGVGdW5jdGlvbkNhbGwpOgorKyAgICAgICAgKFZhbGlkYXRlTGltaXRhdGlvbnM6OnZhbGlk
YXRlT3BlcmF0aW9uKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL1ZhcmlhYmxlSW5mby5jcHA6
CisrICAgICAgICAoVFZhcmlhYmxlSW5mbzo6VFZhcmlhYmxlSW5mbyk6CisrICAgICAgICAoQ29s
bGVjdFZhcmlhYmxlczo6Q29sbGVjdFZhcmlhYmxlcyk6CisrICAgICAgICAoQ29sbGVjdFZhcmlh
Ymxlczo6dmlzaXRTeW1ib2wpOgorKyAgICAgICAgKENvbGxlY3RWYXJpYWJsZXM6OnZpc2l0QWdn
cmVnYXRlKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL1ZhcmlhYmxlSW5mby5oOgorKyAgICAg
ICAgKiBzcmMvY29tcGlsZXIvZGVidWcuY3BwOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvZGVw
Z3JhcGgvRGVwZW5kZW5jeUdyYXBoLmNwcDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL2RlcGdy
YXBoL0RlcGVuZGVuY3lHcmFwaEJ1aWxkZXIuY3BwOgorKyAgICAgICAgKFREZXBlbmRlbmN5R3Jh
cGhCdWlsZGVyOjp2aXNpdEJpbmFyeSk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9nZW5lcmF0
ZV9wYXJzZXIuc2g6CisrICAgICAgICAqIHNyYy9jb21waWxlci9nbHNsYW5nLmw6CisrICAgICAg
ICAqIHNyYy9jb21waWxlci9nbHNsYW5nLnk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9nbHNs
YW5nX2xleC5jcHA6CisrICAgICAgICAoaW5wdXQpOgorKyAgICAgICAgKHl5ZXJyb3IpOgorKyAg
ICAgICAgKGludF9jb25zdGFudCk6CisrICAgICAgICAoZmxvYXRfY29uc3RhbnQpOgorKyAgICAg
ICAgKGdsc2xhbmdfc2Nhbik6CisrICAgICAgICAqIHNyYy9jb21waWxlci9nbHNsYW5nX3RhYi5j
cHA6CisrICAgICAgICAoeXlzeW50YXhfZXJyb3IpOgorKyAgICAgICAgKGdsc2xhbmdfcGFyc2Up
OgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvZ2xzbGFuZ190YWIuaDoKKysgICAgICAgICogc3Jj
L2NvbXBpbGVyL2ludGVybWVkaWF0ZS5oOgorKyAgICAgICAgKFRJbnRlcm1TeW1ib2w6Omhhc1Np
ZGVFZmZlY3RzKToKKysgICAgICAgIChUSW50ZXJtU3ltYm9sOjpyZXBsYWNlQ2hpbGROb2RlKToK
KysgICAgICAgIChUSW50ZXJtQ29uc3RhbnRVbmlvbjo6aGFzU2lkZUVmZmVjdHMpOgorKyAgICAg
ICAgKFRJbnRlcm1Db25zdGFudFVuaW9uOjpnZXRJQ29uc3QpOgorKyAgICAgICAgKFRJbnRlcm1D
b25zdGFudFVuaW9uOjpnZXRGQ29uc3QpOgorKyAgICAgICAgKFRJbnRlcm1Db25zdGFudFVuaW9u
OjpnZXRCQ29uc3QpOgorKyAgICAgICAgKFRJbnRlcm1Db25zdGFudFVuaW9uOjpyZXBsYWNlQ2hp
bGROb2RlKToKKysgICAgICAgIChUSW50ZXJtT3BlcmF0b3I6Omhhc1NpZGVFZmZlY3RzKToKKysg
ICAgICAgIChUSW50ZXJtQmluYXJ5OjpoYXNTaWRlRWZmZWN0cyk6CisrICAgICAgICAoVEludGVy
bVVuYXJ5OjpoYXNTaWRlRWZmZWN0cyk6CisrICAgICAgICAoVEludGVybUFnZ3JlZ2F0ZTo6aGFz
U2lkZUVmZmVjdHMpOgorKyAgICAgICAgKFRJbnRlcm1TZWxlY3Rpb246Omhhc1NpZGVFZmZlY3Rz
KToKKysgICAgICAgIChUSW50ZXJtVHJhdmVyc2VyOjp+VEludGVybVRyYXZlcnNlcik6CisrICAg
ICAgICAoVEludGVybVRyYXZlcnNlcjo6aW5jcmVtZW50RGVwdGgpOgorKyAgICAgICAgKFRJbnRl
cm1UcmF2ZXJzZXI6OmRlY3JlbWVudERlcHRoKToKKysgICAgICAgIChUSW50ZXJtVHJhdmVyc2Vy
OjpnZXRQYXJlbnROb2RlKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL2xvY2FsaW50ZXJtZWRp
YXRlLmg6CisrICAgICAgICAqIHNyYy9jb21waWxlci9wYXJzZUNvbnN0LmNwcDoKKysgICAgICAg
ICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9FeHByZXNzaW9uUGFyc2VyLmNwcDoKKysgICAg
ICAgICh5eV9zeW1ib2xfcHJpbnQpOgorKyAgICAgICAgKHl5X3N0YWNrX3ByaW50KToKKysgICAg
ICAgICh5eV9yZWR1Y2VfcHJpbnQpOgorKyAgICAgICAgKHl5c3RybGVuKToKKysgICAgICAgICh5
eXN0cGNweSk6CisrICAgICAgICAoeXl0bmFtZXJyKToKKysgICAgICAgICh5eXN5bnRheF9lcnJv
cik6CisrICAgICAgICAoeXlkZXN0cnVjdCk6CisrICAgICAgICAoeXlwYXJzZSk6CisrICAgICAg
ICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvRXhwcmVzc2lvblBhcnNlci55OgorKyAgICAg
ICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL1ByZXByb2Nlc3Nvci5jcHA6CisrICAgICAg
ICAocHA6OlByZXByb2Nlc3Nvcjo6c2V0TWF4VG9rZW5MZW5ndGgpOgorKyAgICAgICAgKHBwOjpQ
cmVwcm9jZXNzb3I6OmxleCk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3Iv
UHJlcHJvY2Vzc29yLmg6CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvVG9r
ZW5pemVyLmNwcDoKKysgICAgICAgIChwcDo6VG9rZW5pemVyOjpUb2tlbml6ZXIpOgorKyAgICAg
ICAgKHBwOjpUb2tlbml6ZXI6OmxleCk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9j
ZXNzb3IvVG9rZW5pemVyLmg6CisrICAgICAgICAocHA6OlRva2VuaXplcjo6c2V0TWF4VG9rZW5M
ZW5ndGgpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL1Rva2VuaXplci5s
OgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL2dlbmVyYXRlX3BhcnNlci5z
aDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9wcmVwcm9jZXNzb3IudmN4
cHJvajogQWRkZWQuCisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvcHJlcHJv
Y2Vzc29yLnZjeHByb2ouZmlsdGVyczogQWRkZWQuCisrICAgICAgICAqIHNyYy9jb21waWxlci90
aW1pbmcvUmVzdHJpY3RGcmFnbWVudFNoYWRlclRpbWluZy5jcHA6CisrICAgICAgICAqIHNyYy9j
b21waWxlci90cmFuc2xhdG9yLnZjeHByb2o6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvY29tcGls
ZXIvdHJhbnNsYXRvci52Y3hwcm9qLmZpbHRlcnM6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvY29t
cGlsZXIvdXRpbC5jcHA6CisrICAgICAgICAoYXRvZl9jbGFtcCk6CisrICAgICAgICAoYXRvaV9j
bGFtcCk6CisrICAgICAgICAqIHNyYy9jb21waWxlci91dGlsLmg6CisrICAgICAgICAqIHNyYy9s
aWJFR0wvU3VyZmFjZS5jcHA6CisrICAgICAgICAoZWdsOjpTdXJmYWNlOjpjaGVja0Zvck91dE9m
RGF0ZVN3YXBDaGFpbik6CisrICAgICAgICAqIHNyYy9saWJFR0wvbGliRUdMLmNwcDoKKysgICAg
ICAgICogc3JjL2xpYkVHTC9saWJFR0wucmM6CisrICAgICAgICAqIHNyYy9saWJFR0wvbGliRUdM
LnZjeHByb2o6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGliRUdML2xpYkVHTC52Y3hwcm9qLmZp
bHRlcnM6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL0J1ZmZlci5jcHA6CisrICAg
ICAgICAoZ2w6OkJ1ZmZlcjo6YnVmZmVyRGF0YSk6CisrICAgICAgICAoZ2w6OkJ1ZmZlcjo6YnVm
ZmVyU3ViRGF0YSk6CisrICAgICAgICAoZ2w6OkJ1ZmZlcjo6c2l6ZSk6CisrICAgICAgICAoZ2w6
OkJ1ZmZlcjo6Z2V0SW5kZXhSYW5nZUNhY2hlKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9C
dWZmZXIuaDoKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9Db250ZXh0LmNwcDoKKysgICAgICAg
IChnbDo6Q29udGV4dDo6YXBwbHlUZXh0dXJlcyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6Omdl
dEJvdW5kRnJhbWVidWZmZXJUZXh0dXJlU2VyaWFscyk6CisrICAgICAgICAqIHNyYy9saWJHTEVT
djIvQ29udGV4dC5oOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRSZW5kZXJlcik6CisrICAg
ICAgICAqIHNyYy9saWJHTEVTdjIvRnJhbWVidWZmZXIuaDoKKysgICAgICAgICogc3JjL2xpYkdM
RVN2Mi9Qcm9ncmFtQmluYXJ5LmNwcDoKKysgICAgICAgIChnbDo6RGlzY2FyZFdvcmthcm91bmQp
OgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5Ojpsb2FkKToKKysgICAgICAgIChnbDo6UHJv
Z3JhbUJpbmFyeTo6bGluayk6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OmxpbmtBdHRy
aWJ1dGVzKToKKysgICAgICAgIChnbDo6QXR0cmlidXRlU29ydGVyOjpBdHRyaWJ1dGVTb3J0ZXIp
OgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5Ojppbml0QXR0cmlidXRlc0J5TGF5b3V0KToK
KysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6c29ydEF0dHJpYnV0ZXNCeUxheW91dCk6Cisr
ICAgICAgICAqIHNyYy9saWJHTEVTdjIvUHJvZ3JhbUJpbmFyeS5oOgorKyAgICAgICAgKiBzcmMv
bGliR0xFU3YyL1JlbmRlcmJ1ZmZlci5jcHA6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclRl
eHR1cmUyRDo6Z2V0VGV4dHVyZVNlcmlhbCk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclRl
eHR1cmVDdWJlTWFwOjpnZXRUZXh0dXJlU2VyaWFsKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVm
ZmVyOjpnZXRUZXh0dXJlU2VyaWFsKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9SZW5kZXJi
dWZmZXIuaDoKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyU3RvcmFnZTo6Z2V0VGV4dHVyZVNl
cmlhbCk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvU2hhZGVyLmNwcDoKKysgICAgICAgIChn
bDo6U2hhZGVyOjpwYXJzZVZhcnlpbmdzKToKKysgICAgICAgIChnbDo6U2hhZGVyOjp1bmNvbXBp
bGUpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1NoYWRlci5oOgorKyAgICAgICAgKiBzcmMv
bGliR0xFU3YyL1RleHR1cmUuY3BwOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6c3Rv
cmFnZSk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvVW5pZm9ybS5jcHA6CisrICAgICAgICAo
Z2w6OlVuaWZvcm06OlVuaWZvcm0pOgorKyAgICAgICAgKGdsOjpVbmlmb3JtOjp+VW5pZm9ybSk6
CisrICAgICAgICAoZ2w6OlVuaWZvcm06OmlzQXJyYXkpOgorKyAgICAgICAgKGdsOjpVbmlmb3Jt
OjplbGVtZW50Q291bnQpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1VuaWZvcm0uaDoKKysg
ICAgICAgICogc3JjL2xpYkdMRVN2Mi9jb25zdGFudHMuaDogUmVtb3ZlZC4KKysgICAgICAgICog
c3JjL2xpYkdMRVN2Mi9saWJHTEVTdjIuZGVmOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL2xp
YkdMRVN2Mi5yYzoKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9saWJHTEVTdjIudmN4cHJvajog
QWRkZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvbGliR0xFU3YyLnZjeHByb2ouZmlsdGVy
czogQWRkZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcHJlY29tcGlsZWQuaDoKKysgICAg
ICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9JbWFnZTExLmNwcDoKKysgICAgICAgIChyeDo6
SW1hZ2UxMTo6Z2VuZXJhdGVNaXBtYXApOgorKyAgICAgICAgKHJ4OjpJbWFnZTExOjpsb2FkRGF0
YSk6CisrICAgICAgICAocng6OkltYWdlMTE6OmxvYWRDb21wcmVzc2VkRGF0YSk6CisrICAgICAg
ICAocng6OkltYWdlMTE6OmNvcHkpOgorKyAgICAgICAgKHJ4OjpJbWFnZTExOjpjcmVhdGVTdGFn
aW5nVGV4dHVyZSk6CisrICAgICAgICAocng6OkltYWdlMTE6Om1hcCk6CisrICAgICAgICAqIHNy
Yy9saWJHTEVTdjIvcmVuZGVyZXIvSW1hZ2UxMS5oOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3Yy
L3JlbmRlcmVyL0luZGV4QnVmZmVyLmNwcDoKKysgICAgICAgIChyeDo6SW5kZXhCdWZmZXJJbnRl
cmZhY2U6Om1hcEJ1ZmZlcik6CisrICAgICAgICAocng6OlN0YXRpY0luZGV4QnVmZmVySW50ZXJm
YWNlOjpnZXRJbmRleFJhbmdlQ2FjaGUpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRl
cmVyL0luZGV4QnVmZmVyLmg6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvSW5k
ZXhCdWZmZXIxMS5jcHA6CisrICAgICAgICAocng6OkluZGV4QnVmZmVyMTE6Om1hcEJ1ZmZlcik6
CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvSW5kZXhEYXRhTWFuYWdlci5jcHA6
CisrICAgICAgICAocng6OkluZGV4RGF0YU1hbmFnZXI6OnByZXBhcmVJbmRleERhdGEpOgorKyAg
ICAgICAgKHJ4OjpJbmRleERhdGFNYW5hZ2VyOjpnZXRDb3VudGluZ0luZGljZXMpOgorKyAgICAg
ICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL0luZGV4UmFuZ2VDYWNoZS5jcHA6IEFkZGVkLgor
KyAgICAgICAgKHJ4OjpJbmRleFJhbmdlQ2FjaGU6OmFkZFJhbmdlKToKKysgICAgICAgIChyeDo6
SW5kZXhSYW5nZUNhY2hlOjppbnZhbGlkYXRlUmFuZ2UpOgorKyAgICAgICAgKHJ4OjpJbmRleFJh
bmdlQ2FjaGU6OmZpbmRSYW5nZSk6CisrICAgICAgICAocng6OkluZGV4UmFuZ2VDYWNoZTo6Y2xl
YXIpOgorKyAgICAgICAgKHJ4OjpJbmRleFJhbmdlQ2FjaGU6OkluZGV4UmFuZ2U6OkluZGV4UmFu
Z2UpOgorKyAgICAgICAgKHJ4OjpJbmRleFJhbmdlQ2FjaGU6OkluZGV4UmFuZ2U6Om9wZXJhdG9y
PCk6CisrICAgICAgICAocng6OkluZGV4UmFuZ2VDYWNoZTo6SW5kZXhCb3VuZHM6OkluZGV4Qm91
bmRzKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9JbmRleFJhbmdlQ2FjaGUu
aDogQWRkZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvSW5wdXRMYXlvdXRD
YWNoZS5jcHA6CisrICAgICAgICAocng6OklucHV0TGF5b3V0Q2FjaGU6OklucHV0TGF5b3V0Q2Fj
aGUpOgorKyAgICAgICAgKHJ4OjpJbnB1dExheW91dENhY2hlOjpjbGVhcik6CisrICAgICAgICAo
cng6OklucHV0TGF5b3V0Q2FjaGU6Om1hcmtEaXJ0eSk6CisrICAgICAgICAocng6OklucHV0TGF5
b3V0Q2FjaGU6OmFwcGx5VmVydGV4QnVmZmVycyk6CisrICAgICAgICAocng6OklucHV0TGF5b3V0
Q2FjaGU6Omhhc2hJbnB1dExheW91dCk6CisrICAgICAgICAocng6OklucHV0TGF5b3V0Q2FjaGU6
OmNvbXBhcmVJbnB1dExheW91dHMpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVy
L0lucHV0TGF5b3V0Q2FjaGUuaDoKKysgICAgICAgIChyeDo6SW5wdXRMYXlvdXRDYWNoZTo6SW5w
dXRMYXlvdXRLZXk6OmJlZ2luKToKKysgICAgICAgIChyeDo6SW5wdXRMYXlvdXRDYWNoZTo6SW5w
dXRMYXlvdXRLZXk6OmVuZCk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvUmVu
ZGVyVGFyZ2V0MTEuY3BwOgorKyAgICAgICAgKHJ4OjpSZW5kZXJUYXJnZXQxMTo6Z2V0VGV4dHVy
ZSk6CisrICAgICAgICAocng6OlJlbmRlclRhcmdldDExOjpnZXRSZW5kZXJUYXJnZXRWaWV3KToK
KysgICAgICAgIChyeDo6UmVuZGVyVGFyZ2V0MTE6OmdldERlcHRoU3RlbmNpbFZpZXcpOgorKyAg
ICAgICAgKHJ4OjpSZW5kZXJUYXJnZXQxMTo6Z2V0U2hhZGVyUmVzb3VyY2VWaWV3KToKKysgICAg
ICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9SZW5kZXJUYXJnZXQxMS5oOgorKyAgICAgICAg
KiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL1JlbmRlcmVyLmNwcDoKKysgICAgICAgIChyeDo6UmVu
ZGVyZXI6OmluaXRpYWxpemVDb21waWxlcik6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVu
ZGVyZXIvUmVuZGVyZXIuaDoKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9SZW5k
ZXJlcjExLmNwcDoKKysgICAgICAgIChyeDo6UmVuZGVyZXIxMTo6aW5pdGlhbGl6ZSk6CisrICAg
ICAgICAocng6OlJlbmRlcmVyMTE6OmFwcGx5UHJpbWl0aXZlVHlwZSk6CisrICAgICAgICAocng6
OlJlbmRlcmVyMTE6OmFwcGx5UmVuZGVyVGFyZ2V0KToKKysgICAgICAgIChyeDo6UmVuZGVyZXIx
MTo6ZHJhd0xpbmVMb29wKToKKysgICAgICAgIChyeDo6UmVuZGVyZXIxMTo6ZHJhd1RyaWFuZ2xl
RmFuKToKKysgICAgICAgIChyeDo6UmVuZGVyZXIxMTo6YXBwbHlVbmlmb3Jtcyk6CisrICAgICAg
ICAocng6OlJlbmRlcmVyMTE6OmNsZWFyKToKKysgICAgICAgIChyeDo6UmVuZGVyZXIxMTo6bWFy
a0FsbFN0YXRlRGlydHkpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjExOjpjb3B5SW1hZ2UpOgor
KyAgICAgICAgKHJ4OjpSZW5kZXJlcjExOjpjb21waWxlVG9FeGVjdXRhYmxlKToKKysgICAgICAg
IChyeDo6UmVuZGVyZXIxMTo6Z2V0UmVuZGVyVGFyZ2V0UmVzb3VyY2UpOgorKyAgICAgICAgKHJ4
OjpSZW5kZXJlcjExOjpibGl0UmVuZGVyYnVmZmVyUmVjdCk6CisrICAgICAgICAqIHNyYy9saWJH
TEVTdjIvcmVuZGVyZXIvUmVuZGVyZXIxMS5oOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3Jl
bmRlcmVyL1JlbmRlcmVyOS5jcHA6CisrICAgICAgICAocng6OlJlbmRlcmVyOTo6aW5pdGlhbGl6
ZSk6CisrICAgICAgICAocng6OlJlbmRlcmVyOTo6c2V0Vmlld3BvcnQpOgorKyAgICAgICAgKHJ4
OjpSZW5kZXJlcjk6OmRyYXdMaW5lTG9vcCk6CisrICAgICAgICAocng6OlJlbmRlcmVyOTo6Y29t
cGlsZVRvRXhlY3V0YWJsZSk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvUmVu
ZGVyZXI5Lmg6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvU3dhcENoYWluLmg6
CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvU3dhcENoYWluMTEuY3BwOgorKyAg
ICAgICAgKHJ4OjpTd2FwQ2hhaW4xMTo6cmVzZXRPZmZzY3JlZW5UZXh0dXJlKToKKysgICAgICAg
IChyeDo6U3dhcENoYWluMTE6OnJlc2V0KToKKysgICAgICAgIChyeDo6U3dhcENoYWluMTE6OnN3
YXBSZWN0KToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9Td2FwQ2hhaW45LmNw
cDoKKysgICAgICAgIChyeDo6Y29udmVydEludGVydmFsKToKKysgICAgICAgICogc3JjL2xpYkdM
RVN2Mi9yZW5kZXJlci9UZXh0dXJlU3RvcmFnZTExLmNwcDoKKysgICAgICAgIChyeDo6VGV4dHVy
ZVN0b3JhZ2UxMTo6SXNUZXh0dXJlRm9ybWF0UmVuZGVyYWJsZSk6CisrICAgICAgICAocng6OlRl
eHR1cmVTdG9yYWdlMTE6OmdlbmVyYXRlTWlwbWFwTGF5ZXIpOgorKyAgICAgICAgKHJ4OjpUZXh0
dXJlU3RvcmFnZTExX0N1YmU6OmdldFJlbmRlclRhcmdldCk6CisrICAgICAgICAqIHNyYy9saWJH
TEVTdjIvcmVuZGVyZXIvVmVydGV4QnVmZmVyLmNwcDoKKysgICAgICAgIChyeDo6VmVydGV4QnVm
ZmVySW50ZXJmYWNlOjpzdG9yZVZlcnRleEF0dHJpYnV0ZXMpOgorKyAgICAgICAgKHJ4OjpWZXJ0
ZXhCdWZmZXJJbnRlcmZhY2U6OnN0b3JlUmF3RGF0YSk6CisrICAgICAgICAocng6OlZlcnRleEJ1
ZmZlckludGVyZmFjZTo6cmVzZXJ2ZVZlcnRleFNwYWNlKToKKysgICAgICAgIChyeDo6U3RhdGlj
VmVydGV4QnVmZmVySW50ZXJmYWNlOjpsb29rdXBBdHRyaWJ1dGUpOgorKyAgICAgICAgKHJ4OjpT
dGF0aWNWZXJ0ZXhCdWZmZXJJbnRlcmZhY2U6OnN0b3JlVmVydGV4QXR0cmlidXRlcyk6CisrICAg
ICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvVmVydGV4QnVmZmVyLmg6CisrICAgICAgICAq
IHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvVmVydGV4QnVmZmVyMTEuY3BwOgorKyAgICAgICAgKHJ4
OjpWZXJ0ZXhCdWZmZXIxMTo6Z2V0U3BhY2VSZXF1aXJlZCk6CisrICAgICAgICAqIHNyYy9saWJH
TEVTdjIvcmVuZGVyZXIvVmVydGV4QnVmZmVyMTEuaDoKKysgICAgICAgICogc3JjL2xpYkdMRVN2
Mi9yZW5kZXJlci9WZXJ0ZXhCdWZmZXI5LmNwcDoKKysgICAgICAgIChyeDo6VmVydGV4QnVmZmVy
OTo6c3RvcmVWZXJ0ZXhBdHRyaWJ1dGVzKToKKysgICAgICAgIChyeDo6VmVydGV4QnVmZmVyOTo6
Z2V0U3BhY2VSZXF1aXJlZCk6CisrICAgICAgICAocng6OlZlcnRleEJ1ZmZlcjk6OnJlcXVpcmVz
Q29udmVyc2lvbik6CisrICAgICAgICAocng6OlZlcnRleEJ1ZmZlcjk6OmdldFZlcnRleFNpemUp
OgorKyAgICAgICAgKHJ4OjpWZXJ0ZXhCdWZmZXI5OjpzcGFjZVJlcXVpcmVkKToKKysgICAgICAg
ICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9WZXJ0ZXhCdWZmZXI5Lmg6CisrICAgICAgICAqIHNy
Yy9saWJHTEVTdjIvcmVuZGVyZXIvVmVydGV4RGF0YU1hbmFnZXIuY3BwOgorKyAgICAgICAgKHJ4
OjplbGVtZW50c0luQnVmZmVyKToKKysgICAgICAgIChyeDo6U3RyZWFtaW5nQnVmZmVyRWxlbWVu
dENvdW50KToKKysgICAgICAgIChyeDo6VmVydGV4RGF0YU1hbmFnZXI6OnByZXBhcmVWZXJ0ZXhE
YXRhKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9WZXJ0ZXhEYXRhTWFuYWdl
ci5oOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL3JlbmRlcmVyMTFfdXRpbHMu
Y3BwOgorKyAgICAgICAgKGdsX2QzZDExOjpDb252ZXJ0VGV4dHVyZUZvcm1hdCk6CisrICAgICAg
ICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvc2hhZGVycy9jb21waWxlZC9jbGVhcjExdnMuaDoK
KysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9zaGFkZXJzL2NvbXBpbGVkL2NsZWFy
bXVsdGlwbGUxMXBzLmg6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvc2hhZGVy
cy9jb21waWxlZC9jbGVhcnNpbmdsZTExcHMuaDoKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9y
ZW5kZXJlci9zaGFkZXJzL2NvbXBpbGVkL2NvbXBvbmVudG1hc2twcy5oOgorKyAgICAgICAgKiBz
cmMvbGliR0xFU3YyL3JlbmRlcmVyL3NoYWRlcnMvY29tcGlsZWQvZmxpcHl2cy5oOgorKyAgICAg
ICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL3NoYWRlcnMvY29tcGlsZWQvbHVtaW5hbmNlcHMu
aDoKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9zaGFkZXJzL2NvbXBpbGVkL3Bh
c3N0aHJvdWdoMTF2cy5oOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL3NoYWRl
cnMvY29tcGlsZWQvcGFzc3Rocm91Z2hsdW0xMXBzLmg6CisrICAgICAgICAqIHNyYy9saWJHTEVT
djIvcmVuZGVyZXIvc2hhZGVycy9jb21waWxlZC9wYXNzdGhyb3VnaGx1bWFscGhhMTFwcy5oOgor
KyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL3NoYWRlcnMvY29tcGlsZWQvcGFzc3Ro
cm91Z2hwcy5oOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL3NoYWRlcnMvY29t
cGlsZWQvcGFzc3Rocm91Z2hyZ2IxMXBzLmg6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVu
ZGVyZXIvc2hhZGVycy9jb21waWxlZC9wYXNzdGhyb3VnaHJnYmExMXBzLmg6CisrICAgICAgICAq
IHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvc2hhZGVycy9jb21waWxlZC9zdGFuZGFyZHZzLmg6Cisr
ICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvc2hhZGVycy9nZW5lcmF0ZV9zaGFkZXJz
LmJhdDoKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi91dGlsaXRpZXMuY3BwOgorKyAgICAgICAg
KGdsOjpDb21wdXRlVHlwZVNpemUpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3V0aWxpdGll
cy5oOgorKyAgICAgICAgKiBzcmMvdGhpcmRfcGFydHkvbXVybXVyaGFzaC9NdXJtdXJIYXNoMy5j
cHA6CisrICAgICAgICAocm90bDMyKToKKysgICAgICAgIChyb3RsNjQpOgorKyAgICAgICAgKGdl
dGJsb2NrKToKKysgICAgICAgIChmbWl4KToKKysgICAgICAgIChNdXJtdXJIYXNoM194ODZfMzIp
OgorKyAgICAgICAgKE11cm11ckhhc2gzX3g4Nl8xMjgpOgorKyAgICAgICAgKE11cm11ckhhc2gz
X3g2NF8xMjgpOgorKyAgICAgICAgKiBzcmMvdGhpcmRfcGFydHkvbXVybXVyaGFzaC9NdXJtdXJI
YXNoMy5oOgorKyAgICAgICAgKiBzcmMvdGhpcmRfcGFydHkvdHJhY2VfZXZlbnQ6IEFkZGVkLgor
KyAgICAgICAgKiBzcmMvdGhpcmRfcGFydHkvdHJhY2VfZXZlbnQvdHJhY2VfZXZlbnQuaDogQWRk
ZWQuCisrICAgICAgICAoZ2w6OlRyYWNlRXZlbnQ6OlRyYWNlSUQ6OlRyYWNlSUQpOgorKyAgICAg
ICAgKGdsOjpUcmFjZUV2ZW50OjpUcmFjZUlEOjpkYXRhKToKKysgICAgICAgIChnbDo6VHJhY2VF
dmVudDo6VHJhY2VTdHJpbmdXaXRoQ29weTo6VHJhY2VTdHJpbmdXaXRoQ29weSk6CisrICAgICAg
ICAoZ2w6OlRyYWNlRXZlbnQ6OlRyYWNlU3RyaW5nV2l0aENvcHk6Om9wZXJhdG9yIGNvbnN0IGNo
YXIqICk6CisrICAgICAgICAoZ2w6OlRyYWNlRXZlbnQ6OnNldFRyYWNlVmFsdWUpOgorKyAgICAg
ICAgKGdsOjpUcmFjZUV2ZW50OjphZGRUcmFjZUV2ZW50KToKKysgICAgICAgIChnbDo6VHJhY2VF
dmVudDo6VHJhY2VFbmRPblNjb3BlQ2xvc2U6OlRyYWNlRW5kT25TY29wZUNsb3NlKToKKysgICAg
ICAgIChnbDo6VHJhY2VFdmVudDo6VHJhY2VFbmRPblNjb3BlQ2xvc2U6On5UcmFjZUVuZE9uU2Nv
cGVDbG9zZSk6CisrICAgICAgICAoZ2w6OlRyYWNlRXZlbnQ6OlRyYWNlRW5kT25TY29wZUNsb3Nl
Ojppbml0aWFsaXplKToKKysgICAgICAgIChnbDo6VHJhY2VFdmVudDo6VHJhY2VFbmRPblNjb3Bl
Q2xvc2U6OmFkZEV2ZW50SWZFbmFibGVkKToKKysgICAgICAgIChnbDo6VHJhY2VFdmVudDo6U2Ft
cGxpbmdTdGF0ZVNjb3BlOjpTYW1wbGluZ1N0YXRlU2NvcGUpOgorKyAgICAgICAgKGdsOjpUcmFj
ZUV2ZW50OjpTYW1wbGluZ1N0YXRlU2NvcGU6On5TYW1wbGluZ1N0YXRlU2NvcGUpOgorKyAgICAg
ICAgKGdsOjpUcmFjZUV2ZW50OjpTYW1wbGluZ1N0YXRlU2NvcGU6OmN1cnJlbnQpOgorKyAgICAg
ICAgKGdsOjpUcmFjZUV2ZW50OjpTYW1wbGluZ1N0YXRlU2NvcGU6OnNldCk6CisrCisrMjAxMy0x
MS0xOCAgTWFyayBSb3dlICA8bXJvd2VAYXBwbGUuY29tPgorKworKyAgICAgICAgVXNlIGh3LmFj
dGl2ZWNwdSBmb3IgZGV0ZXJtaW5pbmcgaG93IG1hbnkgcHJvY2Vzc2VzIHRvIHNwYXduLgorKwor
KyAgICAgICAgSXQncyBkb2N1bWVudGVkIGFzIHRoZSBwcmVmZXJyZWQgd2F5IHRvIGRldGVybWlu
ZSB0aGUgbnVtYmVyIG9mIHRocmVhZHMKKysgICAgICAgIG9yIHByb2Nlc3NlcyB0byBjcmVhdGUg
aW4gYSBTTVAgYXdhcmUgYXBwbGljYXRpb24uCisrCisrICAgICAgICBSdWJiZXItc3RhbXBlZCBi
eSBUaW0gSG9ydG9uLgorKworKyAgICAgICAgKiBBTkdMRS54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qOgorKworKzIwMTMtMTEtMDYgIERlYW4gSmFja3NvbiAgPGRpbm9AYXBwbGUuY29tPgorKwor
KyAgICAgICAga1RyYWNlQnVmZmVyTGVuIGlzIHVudXNlZCBpbiBkZWZhdWx0IGJ1aWxkcworKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyMzk0MQorKyAg
ICAgICAgPHJkYXI6Ly9wcm9ibGVtLzE1NDA5ODA0PgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkg
VGltIEhvcnRvbi4KKysKKysgICAgICAgIGtUcmFjZUJ1ZmZlckxlbiBpcyBub3QgdXNlZCBpbiBk
ZWJ1Zy5jcHAgaWYgVFJBQ0VfRU5BQkxFRCBpcworKyAgICAgICAgbm90IGRlZmluZWQuIFRoaXMg
Y2F1c2VzIGEgd2FybmluZyBpbiBuZXdlciBidWlsZHMgb2YgY2xhbmcuCisrICAgICAgICBGb3Ig
bm93LCBza2lwIHdhcm5pbmdzIG9uIHVudXNlZCB2YXJpYWJsZXMgdW50aWwgd2UKKysgICAgICAg
IHVwZGF0ZSBmcm9tIEFOR0xFLgorKworKyAgICAgICAgKiBzcmMvY29tcGlsZXIvZGVidWcuY3Bw
OiBBZGQgdW51c2VkLXZhcmlhYmxlIGlnbm9yZSBwcmFnbWEuCisrCisrMjAxMy0xMC0yNCAgTWFy
ayBSb3dlICA8bXJvd2VAYXBwbGUuY29tPgorKworKyAgICAgICAgUmVtb3ZlIHJlZmVyZW5jZXMg
dG8gT1MgWCAxMC43IGZyb20gWGNvZGUgY29uZmlndXJhdGlvbiBzZXR0aW5ncy4KKysKKysgICAg
ICAgIE5vdyB0aGF0IHdlJ3JlIG5vdCBidWlsZGluZyBmb3IgT1MgWCAxMC43IHRoZXkncmUgbm8g
bG9uZ2VyIG5lZWRlZC4KKysKKysgICAgICAgIFJldmlld2VkIGJ5IEFuZGVycyBDYXJsc3Nvbi4K
KysKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZzoKKysgICAgICAgICog
Q29uZmlndXJhdGlvbnMvRGVidWdSZWxlYXNlLnhjY29uZmlnOgorKworKzIwMTMtMTAtMjQgIE1h
cmsgUm93ZSAgPG1yb3dlQGFwcGxlLmNvbT4KKysKKysgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8x
NTMxMjY0Mz4gUHJlcGFyZSBmb3IgdGhlIG15c3RlcmlvdXMgZnV0dXJlLgorKworKyAgICAgICAg
UmV2aWV3ZWQgYnkgRGF2aWQgS2lsemVyLgorKworKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9C
YXNlLnhjY29uZmlnOgorKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9EZWJ1Z1JlbGVhc2UueGNj
b25maWc6CisrCisrMjAxMy0xMC0xMCAgTWFyayBSb3dlICA8bXJvd2VAYXBwbGUuY29tPgorKwor
KyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzEzMzQxNjY2PiBXZWJLaXQgc2hvdWxkIGFsd2F5cyBi
dWlsZCBhZ2FpbnN0IGFuIFNESy4KKysKKysgICAgICAgIEhhdmUgYWxsIHByb2plY3RzIGRlZmF1
bHQgdG8gYnVpbGRpbmcgYWdhaW5zdCB0aGUgT1MgWCBJbnRlcm5hbCBTREsgZm9yIHRoZSBQcm9k
dWN0aW9uCisrICAgICAgICBjb25maWd1cmF0aW9uLiBGb3IgdGhlIERlYnVnIGFuZCBSZWxlYXNl
IGNvbmZpZ3VyYXRpb25zLCBsb29rIGZvciBVc2VJbnRlcm5hbFNESy54Y2NvbmZpZworKyAgICAg
ICAgdG8gZGV0ZXJtaW5lIHdoZXRoZXIgdGhlIE9TIFggSW50ZXJuYWwgU0RLIHNob3VsZCBiZSB1
c2VkLiBJZiBub3QsIHVzZSB0aGUgbm9ybWFsIE9TIFggU0RLLgorKworKyAgICAgICAgUmV2aWV3
ZWQgYnkgRGFuIEJlcm5zdGVpbi4KKysKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMvQmFzZS54
Y2NvbmZpZzoKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMvRGVidWdSZWxlYXNlLnhjY29uZmln
OgorKworKzIwMTMtMTAtMDggIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0
Lm9yZz4KKysKKysgICAgICAgIEdlbmVyYXRlIHBkYiBmaWxlcyBmb3IgZGVidWdnaW5nIEFOR0xF
IERMTHMuCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTIyNTMwCisrCisrICAgICAgICBSZXZpZXdlZCBieSBCcmVudCBGdWxnaGFtLgorKworKyAgICAg
ICAgKiBBTkdMRS52Y3hwcm9qL2xpYkVHTENvbW1vbi5wcm9wczoKKysgICAgICAgICogQU5HTEUu
dmN4cHJvai9saWJHTEVTdjJDb21tb24ucHJvcHM6CisrICAgICAgICBHZW5lcmF0ZSBkZWJ1ZyBp
bmZvcm1hdGlvbi4KKysKKysyMDEzLTEwLTAzICBEYW4gQmVybnN0ZWluICA8bWl0ekBhcHBsZS5j
b20+CisrCisrICAgICAgICA8cmRhcjovL3Byb2JsZW0vMTUxMTY2NzM+IFttYWNdIEJ1aWxkIGZh
aWx1cmUgd2hlbiB0aGUgc291cmNlIGRpcmVjdG9yeSBpcyBub3QgbmFtZWQgQU5HTEUKKysgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjIzMDcKKysKKysg
ICAgICAgIFJldmlld2VkIGJ5IE1hcmsgUm93ZS4KKysKKysgICAgICAgICogQU5HTEUueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvajogRW5zdXJlIHRoYXQgdGhlIHN5bWxpbmsgdG8gU1JDUk9PVCBp
bgorKyAgICAgICAgRGVyaXZlZFNvdXJjZXMvQU5HTEUgaXMgbmFtZWQgQU5HTEUuCisrCisrMjAx
My0wOS0yOSAgRGFyaW4gQWRsZXIgIDxkYXJpbkBhcHBsZS5jb20+CisrCisrICAgICAgICBUYWtl
IHNvbWUgWGNvZGUgYWR2aWNlIGFib3V0IHR1cm5pbmcgb24gYWRkaXRpb25hbCB3YXJuaW5ncyBp
biBBTkdMRSBhbmQgZ3Rlc3QKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xMjIwODcKKysKKysgICAgICAgIFJldmlld2VkIGJ5IE1hcmsgUm93ZS4KKysK
KysgICAgICAgICogQ29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZzogQWRkIHNvbWUgb2YgdGhl
IHdhcm5pbmdzIHRoYXQgWGNvZGUgNSBzdWdnZXN0ZWQuCisrICAgICAgICAqIHNyYy9jb21waWxl
ci9wcmVwcm9jZXNzb3IvVG9rZW5pemVyLmw6IERlZmluZWQgWVlfTk9fSU5QVVQgc28gd2UgZG9u
J3QgY29tcGlsZQorKyAgICAgICAgYW4gdW51c2VkIGZ1bmN0aW9uIGFuZCBnZXQgYSB3YXJuaW5n
LgorKworKzIwMTMtMDktMjkgIERhcmluIEFkbGVyICA8ZGFyaW5AYXBwbGUuY29tPgorKworKyAg
ICAgICAgVXNlIFJlbmRlckVsZW1lbnQgaW5zdGVhZCBvZiBSZW5kZXJPYmplY3QgaW4gbWFueSBw
bGFjZXMKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
MjIwNzgKKysKKysgICAgICAgIFJldmlld2VkIGJ5IEFuZHJlYXMgS2xpbmcuCisrCisrICAgICAg
ICAqIEFOR0xFLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6IExldCBYY29kZSBkbyBpdHMgdGhp
bmcgdG8gdGhpcyBmaWxlLgorKworKzIwMTMtMDktMjQgIE1hcmsgUm93ZSAgPG1yb3dlQGFwcGxl
LmNvbT4KKysKKysgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8xNDk3MTUxOD4gV2ViS2l0IHNob3Vs
ZCBidWlsZCBhZ2FpbnN0IHRoZSBYY29kZSBkZWZhdWx0IHRvb2xjaGFpbiB3aGVuIHRhcmdldGlu
ZyBPUyBYIDEwLjgKKysKKysgICAgICAgIFJldmlld2VkIGJ5IERhbiBCZXJuc3RlaW4uCisrCisr
ICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWc6CisrCisrMjAxMy0wOS0wNiAg
cGVhdm9Ab3V0bG9vay5jb20gIDxwZWF2b0BvdXRsb29rLmNvbT4KKysKKysgICAgICAgIFtXaW5d
W1dlYkdMXSBXZWJHTCByZW5kZXJpbmcgaXMgc2xvdy4KKysgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjA4NDEKKysKKysgICAgICAgIFJldmlld2VkIGJ5
IEJyZW50IEZ1bGdoYW0uCisrCisrICAgICAgICBSZW5kZXJpbmcgV2ViR0wgY29udGVudCBpcyBz
bG93IG9uIFdpbmRvd3MsIGJlY2F1c2UgbG90cyBvZiBkZWJ1ZyBpbmZvcm1hdGlvbiBpcyB3cml0
dGVuIHRvIGRlYnVnLnR4dC4KKysKKysgICAgICAgICogQU5HTEUudmN4cHJvai9BTkdMRVJlbGVh
c2UucHJvcHM6IERpc2FibGUgbG9nZ2luZyBpbiByZWxlYXNlIGJ1aWxkcy4KKysKKysyMDEzLTA5
LTA1ICBEYW4gQmVybnN0ZWluICA8bWl0ekBhcHBsZS5jb20+CisrCisrICAgICAgICBJTlNUQUxM
X1BBVEhfUFJFRklYIGlzIHVzZWQgZXZlbiB3aGVuIG5vdCBpbnN0YWxsaW5nCisrICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTIwODE4CisrCisrICAgICAg
ICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KKysKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMv
QU5HTEUueGNjb25maWc6IENoYW5nZWQgdGhlIGRlZmluaXRpb24gb2YgUFJJVkFURV9IRUFERVJT
X0ZPTERFUl9QQVRICisrICAgICAgICB0byBpbmNsdWRlIElOU1RBTExfUEFUSF9QUkVGSVggb25s
eSB3aGVuIGluc3RhbGxpbmcuCisrCisrMjAxMy0wOC0xNyAgRGF2aWQgS2lsemVyICA8ZGRraWx6
ZXJAYXBwbGUuY29tPgorKworKyAgICAgICAgQU5HTEUgZmFpbHMgdG8gYnVpbGQgd2l0aCB0cnVu
ayBjbGFuZzogZXJyb3I6ICdyZWdpc3Rlcicgc3RvcmFnZSBjbGFzcyBzcGVjaWZpZXIgaXMgZGVw
cmVjYXRlZCBbLVdlcnJvciwtV2RlcHJlY2F0ZWQtcmVnaXN0ZXJdCisrICAgICAgICA8aHR0cDov
L3dlYmtpdC5vcmcvYi8xMTk5MzE+CisrICAgICAgICA8cmRhcjovL3Byb2JsZW0vMTQ3NjM4MjI+
CisrCisrICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KKysKKysgICAgICAgICogc3Jj
L2NvbXBpbGVyL2dsc2xhbmcubDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL2dsc2xhbmdfbGV4
LmNwcDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9Ub2tlbml6ZXIuY3Bw
OgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL1Rva2VuaXplci5sOgorKyAg
ICAgICAgQWRkIHByYWdtYSBzdGF0ZW1lbnRzIHRvIGlnbm9yZSAtV2RlcHJlY2F0ZWQtcmVnaXN0
ZXIgd2FybmluZ3MKKysgICAgICAgIGluIGdlbmVyYXRlZCBjb2RlLiAgQWxzbyBpZ25vcmUgLVd1
bmtub3duLXByYWdtYXMgc28gdGhpcworKyAgICAgICAgZG9lc24ndCBjYXVzZSBhIGJ1aWxkIGZh
aWx1cmUgaW4gb2xkZXIgdmVyc2lvbnMgb2YgY2xhbmcuCisrCisrMjAxMy0wOC0xNiAgQ29tbWl0
IFF1ZXVlICA8Y29tbWl0LXF1ZXVlQHdlYmtpdC5vcmc+CisrCisrICAgICAgICBVbnJldmlld2Vk
LCByb2xsaW5nIG91dCByMTUzNzQ5LgorKyAgICAgICAgaHR0cDovL3RyYWMud2Via2l0Lm9yZy9j
aGFuZ2VzZXQvMTUzNzQ5CisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTE5ODkyCisrCisrICAgICAgICBUaGUgYmlzb24gZ2VuZXJhdGlvbiBvZiB0aGUg
Z2xzbGFuZyogZmlsZXMgaGFzIG5vdyBiZWVuIGZpeGVkLiAoUmVxdWVzdGVkIGJ5IHpkb2JlcnNl
ayBvbiAjd2Via2l0KS4KKysKKysgICAgICAgICogR05VbWFrZWZpbGUuYW06IFByZXNlcnZlIHRo
ZSBsaWJBTkdMRS5sYSBkZXBlbmRlbmN5IG9uIHRoZSBBTkdMRSdzIEdOVW1ha2VmaWxlLmFtLgor
KworKzIwMTMtMDgtMTUgIEFsbGFuIFNhbmRmZWxkIEplbnNlbiAgPGFsbGFuLmplbnNlbkBkaWdp
YS5jb20+CisrCisrICAgICAgICBBTkdMRSBkb2Vzbid0IGJ1aWxkIHdpdGggYmlzb24gMy4wCisr
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTE5Nzk4Cisr
CisrICAgICAgICBSZXZpZXdlZCBieSBBbnR0aSBLb2l2aXN0by4KKysKKysgICAgICAgIE1ha2Ug
Z2xzbGFuZy55IGNvbXBhdGlibGUgd2l0aCBiaXNvbiAzLjAsIGJ5IHVzaW5nICVsZXgtcGFyYW0K
KysgICAgICAgIHRvIHNldCBZWUxFWF9QQVJBTSBhbmQgZ2V0dGluZyByaWQgb2YgdXNlbGVzcyBZ
WUlEIG1hY3JvLgorKworKyAgICAgICAgKiBzcmMvY29tcGlsZXIvZ2xzbGFuZy55OgorKworKzIw
MTMtMDgtMDkgIFpvbHRhbiBBcnZhaSAgPHphcnZhaUBpbmYudS1zemVnZWQuaHU+CisrCisrICAg
ICAgICBbUXRdIEJ1aWRmaXggYWZ0ZXIgcjE1MzY2NC4gQWRkaW5nIEFOR0xFX1dFQktJVF9XSU4g
ZGVmaW5pdGlvbi4KKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0xMTk1NzcKKysKKysgICAgICAgIFJldmlld2VkIGJ5IEFsbGFuIFNhbmRmZWxkIEplbnNl
bi4KKysKKysgICAgICAgICogVGFyZ2V0LnByaToKKysKKysyMDEzLTA4LTA4ICBBbGV4IENocmlz
dGVuc2VuICA8YWNocmlzdGVuc2VuQGFwcGxlLmNvbT4KKysKKysgICAgICAgIExpbmsgdG8gY29y
cmVjdCBEaXJlY3RYIGxpYnJhcmllcyBmb3IgV2luNjQgQU5HTEUgYnVpbGQuCisrICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTE5NjAwCisrCisrICAgICAg
ICBSZXZpZXdlZCBieSBCcmVudCBGdWxnaGFtLgorKworKyAgICAgICAgKiBBTkdMRS52Y3hwcm9q
L0RpcmVjdFgzMi5wcm9wczogQWRkZWQgd2l0aCB4ODYgRGlyZWN0WCBsaWJyYXJ5IGRpcmVjdG9y
eS4KKysgICAgICAgICogQU5HTEUudmN4cHJvai9EaXJlY3RYNjQucHJvcHM6IEFkZGVkIHdpdGgg
eDY0IERpcmVjdFggbGlicmFyeSBkaXJlY3RvcnkuCisrICAgICAgICAqIEFOR0xFLnZjeHByb2ov
bGliRUdMLnZjeHByb2o6CisrICAgICAgICAqIEFOR0xFLnZjeHByb2ovbGliR0xFU3YyLnZjeHBy
b2o6CisrICAgICAgICBVc2UgRGlyZWN0WDMyLnByb3BzIGFuZCBEaXJlY3RYNjQucHJvcHMuCisr
ICAgICAgICAqIEFOR0xFLnZjeHByb2ovbGliRUdMQ29tbW9uLnByb3BzOgorKyAgICAgICAgKiBB
TkdMRS52Y3hwcm9qL2xpYkdMRVN2MkNvbW1vbi5wcm9wczoKKysgICAgICAgIFJlbW92ZWQgRGly
ZWN0WCBsaWJyYXJ5IGRpcmVjdG9yeS4KKysKKysyMDEzLTA3LTIzICBEYXZpZCBGYXJsZXIgIDxk
ZmFybGVyQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFByb3ZpZGUgb3B0aW9uYWwgT1RIRVJfQ0ZM
QUdTLCBPVEhFUl9DUFBGTEFHUywgT1RIRVJfTERGTEFHUyBhZGRpdGlvbnMgZm9yIGJ1aWxkaW5n
IHdpdGggQVNBTgorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTExNzc2MgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgTWFyayBSb3dlLgorKworKyAgICAg
ICAgKiBDb25maWd1cmF0aW9ucy9EZWJ1Z1JlbGVhc2UueGNjb25maWc6CisrICAgICAgICBBZGQg
QVNBTl9PVEhFUl9DRkxBR1MsIENQTFVTUExVU0ZMQUdTLgorKworKzIwMTMtMDgtMDYgIFphbiBE
b2JlcnNlayAgPHpkb2JlcnNla0BpZ2FsaWEuY29tPgorKworKyAgICAgICAgd2Via2l0LWd0ayBm
YWlscyB0byBidWlsZCB3aXRoIGJpc29uLTMuMAorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTExOTM3MworKworKyAgICAgICAgUmV2aWV3ZWQgYnkgR3Vz
dGF2byBOb3JvbmhhIFNpbHZhLgorKworKyAgICAgICAgKiBHTlVtYWtlZmlsZS5hbTogU3RvcCBy
ZWx5aW5nIG9uIGdlbmVyYXRlZCBnbHNsYW5nX3RhYi4oY3BwfGgpIGFuZCBnbHNsYW5nLmNwcCBz
b3VyY2VzIGFzIEJpc29uIDMuMAorKyAgICAgICAgcHJvZHVjZXMgbm9uLWNvbXBpbGFibGUgc291
cmNlIGNvZGUuIEluc3RlYWQsIGNvbXBpbGUgdGhlc2UgcHJlZ2VuZXJhdGVkIGZpbGVzIGFzIHRo
ZXkncmUgaW5jbHVkZWQgaW4KKysgICAgICAgIHRoZSB0cmVlLiBPcmlnaW5hbGx5LCB0aGUgQU5H
TEUgc291cmNlIHRyZWUgcHJvdmlkZXMgdGhlc2UgZmlsZXMgYXMgZ2VuZXJhdGVkIGJ5IEJpc29u
IDIuNywgYnV0IHRoZXkncmUKKysgICAgICAgIGF0IHRoZSBtb21lbnQgcmVnZW5lcmF0ZWQgd2l0
aCBCaXNvbiAyLjMgd2hlbiB0aGUgdGhpcmQtcGFydHkgQU5HTEUgc291cmNlIGlzIGJlaW5nIHVw
ZGF0ZWQuCisrCisrMjAxMy0wOC0wNSAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkBh
cHBsZS5jb20+CisrCisrICAgICAgICBBZGRlZCBvcHRpbWl6YXRpb25zIHRvIFdpbmRvd3MgQU5H
TEUgYnVpbGRzLgorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTExOTUwMAorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgQnJlbnQgRnVsZ2hhbS4KKysKKysg
ICAgICAgICogQU5HTEUudmN4cHJvai9BTkdMRVJlbGVhc2UucHJvcHM6IEFkZGVkLgorKyAgICAg
ICAgKiBBTkdMRS52Y3hwcm9qL2xpYkVHTC52Y3hwcm9qOgorKyAgICAgICAgKiBBTkdMRS52Y3hw
cm9qL2xpYkdMRVN2Mi52Y3hwcm9qOgorKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL3ByZXByb2Nl
c3Nvci52Y3hwcm9qOgorKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL3RyYW5zbGF0b3JfY29tbW9u
LnZjeHByb2o6CisrICAgICAgICAqIEFOR0xFLnZjeHByb2ovdHJhbnNsYXRvcl9nbHNsLnZjeHBy
b2o6CisrICAgICAgICAqIEFOR0xFLnZjeHByb2ovdHJhbnNsYXRvcl9obHNsLnZjeHByb2o6Cisr
ICAgICAgICBVc2UgQU5HTEVSZWxlYXNlLnByb3BzIGZvciBSZWxlYXNlLCBSZWxlYXNlX1dpbkNh
aXJvLCBhbmQgUHJvZHVjdGlvbiBjb25maWd1cmF0aW9ucy4KKysKKysyMDEzLTA4LTAyICBBbGV4
IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFNvZnQg
bGluayBBTkdMRSBvbiBXaW5kb3dzLgorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTExOTQ1MgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGVhbiBKYWNr
c29uLgorKworKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL2xpYkVHTC52Y3hwcm9qOgorKyAgICAg
ICAgKiBBTkdMRS52Y3hwcm9qL2xpYkVHTC52Y3hwcm9qLmZpbHRlcnM6CisrICAgICAgICAqIEFO
R0xFLnZjeHByb2ovbGliR0xFU3YyLnZjeHByb2o6CisrICAgICAgICAqIEFOR0xFLnZjeHByb2ov
bGliR0xFU3YyLnZjeHByb2ouZmlsdGVyczoKKysgICAgICAgIEFkZGVkIHNvZnQgbGlua2luZyBo
ZWFkZXJzLgorKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL2xpYkVHTENvbW1vbi5wcm9wczoKKysg
ICAgICAgICogQU5HTEUudmN4cHJvai9saWJHTEVTdjJDb21tb24ucHJvcHM6CisrICAgICAgICAq
IEFOR0xFLnZjeHByb2ovdHJhbnNsYXRvckNvbW1vbi5wcm9wczoKKysgICAgICAgIEFkZGVkIEFO
R0xFX1dFQktJVF9XSU4gbWFjcm8gZGVmaW5pdGlvbiBmb3IgZWdsLmggYW5kIGdsMi5oLgorKyAg
ICAgICAgKiBpbmNsdWRlL0VHTC9lZ2wuaDoKKysgICAgICAgICogaW5jbHVkZS9HTEVTMi9nbDIu
aDoKKysgICAgICAgIENvbmRpdGlvbmFsbHkgaW5jbHVkZSBzb2Z0IGxpbmtpbmcgaGVhZGVycyBi
YXNlZCBvbiBBTkdMRV9XRUJLSVRfV0lOIG1hY3JvLgorKyAgICAgICAgKiBpbmNsdWRlL0VHTC9l
Z2xzb2Z0bGlua2luZy5oOiBBZGRlZC4KKysgICAgICAgICogaW5jbHVkZS9HTEVTMi9nbDJzb2Z0
bGlua2luZy5oOiBBZGRlZC4KKysKKysyMDEzLTA4LTAxICBBbGV4IENocmlzdGVuc2VuICA8YWNo
cmlzdGVuc2VuQGFwcGxlLmNvbT4KKysKKysgICAgICAgIEZpeGVkIHdyb25nIHN0YXRpY19jYXN0
aW5nIGluIEFOR0xFIGZyb20gcjE1MzA2NC4KKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xMTkyOTYKKysKKysgICAgICAgIFJldmlld2VkIGJ5IERlYW4g
SmFja3Nvbi4KKysKKysgICAgICAgICogc3JjL2NvbXBpbGVyL0ludGVybWVkaWF0ZS5jcHA6Cisr
ICAgICAgICAoVEludGVybWVkaWF0ZTo6cHJvbW90ZUNvbnN0YW50VW5pb24pOgorKyAgICAgICAg
VW5kaWQgZXJyb25lb3VzIHN0YXRpY19jYXN0IGNoYW5nZS4KKysgICAgICAgICogc3JjL2NvbXBp
bGVyL2ludGVybWVkaWF0ZS5oOgorKyAgICAgICAgKFRJbnRlcm1Db25zdGFudFVuaW9uOjpnZXRJ
Q29uc3QpOgorKyAgICAgICAgKFRJbnRlcm1Db25zdGFudFVuaW9uOjpnZXRGQ29uc3QpOgorKyAg
ICAgICAgKFRJbnRlcm1Db25zdGFudFVuaW9uOjpnZXRCQ29uc3QpOgorKyAgICAgICAgTWFkZSBn
ZXR0ZXJzIHVzZSBzaXplX3QgaW5zdGVhZCBvZiBpbnQuCisrCisrMjAxMy0wNy0yOSAgQ2FybG9z
IEdhcmNpYSBDYW1wb3MgIDxjZ2FyY2lhQGlnYWxpYS5jb20+CisrCisrICAgICAgICBVbnJldmll
d2VkLiBGaXggbWFrZSBkaXN0Y2hlY2suCisrCisrICAgICAgICAqIEdOVW1ha2VmaWxlLmFtOiBB
ZGQgbWlzc2luZyBoZWFkZXIgZmlsZXMgdG8gY29tcGlsYXRpb24uCisrCisrMjAxMy0wNy0yOSAg
QWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkBhcHBsZS5jb20+CisrCisrICAgICAgICBT
ZXBhcmF0ZWQgdHJhbnNsYXRvciBpbnRvIHByZXByb2Nlc3NvciwgdHJhbnNsYXRvcl9jb21tb24s
CisrICAgICAgICB0cmFuc2xhdG9yX2hsc2wgKGZvciBsaWJHTEVTdjIpLCBhbmQgdHJhbnNsYXRv
cl9nbHNsCisrICAgICAgICAoZm9yIEFOR0xFV2ViS2l0QnJpZGdlKS4KKysgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTkyMjEKKysKKysgICAgICAgIFJl
dmlld2VkIGJ5IEJyZW50IEZ1bGdoYW0uCisrCisrICAgICAgICAqIEFOR0xFLnZjeHByb2ovQU5H
TEVHZW5lcmF0ZWQudmN4cHJvajoKKysgICAgICAgIFJlbW92ZWQgdW51c2VkIHByZXByb2Nlc3Nv
ciBkZWZpbml0aW9ucy4KKysgICAgICAgICogQU5HTEUudmN4cHJvai9saWJFR0wudmN4cHJvajoK
KysgICAgICAgICogQU5HTEUudmN4cHJvai9saWJHTEVTdjIudmN4cHJvajoKKysgICAgICAgIFJl
bW92ZWQgZGVwZW5kZW5jeSBvbiByZW1vdmVkIHRyYW5zbGF0b3IgcHJvamVjdC4KKysgICAgICAg
ICogQU5HTEUudmN4cHJvai9saWJHTEVTdjJDb21tb24ucHJvcHM6CisrICAgICAgICBMaW5rIHRv
IHRyYW5zbGF0b3JfaGxzbCBsaWJyYXJpZXMuCisrICAgICAgICAqIEFOR0xFLnZjeHByb2ovcHJl
cHJvY2Vzc29yLnZjeHByb2o6IEFkZGVkLgorKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL3ByZXBy
b2Nlc3Nvci52Y3hwcm9qLmZpbHRlcnM6IEFkZGVkLgorKyAgICAgICAgKiBBTkdMRS52Y3hwcm9q
L3RyYW5zbGF0b3IudmN4cHJvajogUmVtb3ZlZC4KKysgICAgICAgICogQU5HTEUudmN4cHJvai90
cmFuc2xhdG9yLnZjeHByb2ouZmlsdGVyczogUmVtb3ZlZC4KKysgICAgICAgICogQU5HTEUudmN4
cHJvai90cmFuc2xhdG9yX2NvbW1vbi52Y3hwcm9qOiBBZGRlZC4KKysgICAgICAgICogQU5HTEUu
dmN4cHJvai90cmFuc2xhdG9yX2NvbW1vbi52Y3hwcm9qLmZpbHRlcnM6IEFkZGVkLgorKyAgICAg
ICAgKiBBTkdMRS52Y3hwcm9qL3RyYW5zbGF0b3JfZ2xzbC52Y3hwcm9qOiBBZGRlZC4KKysgICAg
ICAgICogQU5HTEUudmN4cHJvai90cmFuc2xhdG9yX2dsc2wudmN4cHJvai5maWx0ZXJzOiBBZGRl
ZC4KKysgICAgICAgICogQU5HTEUudmN4cHJvai90cmFuc2xhdG9yX2hsc2wudmN4cHJvajogQWRk
ZWQuCisrICAgICAgICAqIEFOR0xFLnZjeHByb2ovdHJhbnNsYXRvcl9obHNsLnZjeHByb2ouZmls
dGVyczogQWRkZWQuCisrCisrMjAxMy0wNy0yNiAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3Rl
bnNlbkBhcHBsZS5jb20+CisrCisrICAgICAgICBBZGRlZCBtb2R1bGUgZGVmaW5pdGlvbiBmaWxl
IGZvciBidWlsZGluZyBsaWJFR0wuCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTE5MTYyCisrCisrICAgICAgICBSZXZpZXdlZCBieSBCcmVudCBGdWxn
aGFtLgorKworKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL2xpYkVHTENvbW1vbi5wcm9wczogQWRk
ZWQgcmVmZXJlbmNlIHRvIGxpYkVHTC5kZWYuCisrCisrMjAxMy0wNy0yNSAgQWxleCBDaHJpc3Rl
bnNlbiAgPGFjaHJpc3RlbnNlbkBhcHBsZS5jb20+CisrCisrICAgICAgICBNYWRlIFdpbmRvd3Mg
YnVpbGQgc3lzdGVtIGZvciBBTkdMRSBhbmQgcmVtb3ZlZCBleGlzdGluZyBicm9rZW4gYnVpbGQg
c3lzdGVtLgorKyAgICAgICAgUmVtb3ZlZCBlbXB0eSBzcmMvbGliR0xFU3YyL3NoYWRlcnMgZGly
ZWN0b3J5IGFuZCBvbGQgUkVBRE1FIGZpbGVzLgorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTExOTEwMworKworKyAgICAgICAgUmV2aWV3ZWQgYnkgQnJl
bnQgRnVsZ2hhbS4KKysKKysgICAgICAgICogQU5HTEUudmN4cHJvajogQWRkZWQuCisrICAgICAg
ICAqIEFOR0xFLnZjeHByb2ovQU5HTEVHZW5lcmF0ZWQudmN4cHJvajogQWRkZWQuCisrICAgICAg
ICAqIEFOR0xFLnZjeHByb2ovQU5HTEVHZW5lcmF0ZWQudmN4cHJvai5maWx0ZXJzOiBBZGRlZC4K
KysgICAgICAgICogQU5HTEUudmN4cHJvai9saWJFR0wudmN4cHJvajogQWRkZWQuCisrICAgICAg
ICAqIEFOR0xFLnZjeHByb2ovbGliRUdMLnZjeHByb2ouZmlsdGVyczogQWRkZWQuCisrICAgICAg
ICAqIEFOR0xFLnZjeHByb2ovbGliRUdMQ29tbW9uLnByb3BzOiBBZGRlZC4KKysgICAgICAgICog
QU5HTEUudmN4cHJvai9saWJHTEVTdjIudmN4cHJvajogQWRkZWQuCisrICAgICAgICAqIEFOR0xF
LnZjeHByb2ovbGliR0xFU3YyLnZjeHByb2ouZmlsdGVyczogQWRkZWQuCisrICAgICAgICAqIEFO
R0xFLnZjeHByb2ovbGliR0xFU3YyQ29tbW9uLnByb3BzOiBBZGRlZC4KKysgICAgICAgICogQU5H
TEUudmN4cHJvai90cmFuc2xhdG9yLnZjeHByb2o6IEFkZGVkLgorKyAgICAgICAgKiBBTkdMRS52
Y3hwcm9qL3RyYW5zbGF0b3IudmN4cHJvai5maWx0ZXJzOiBBZGRlZC4KKysgICAgICAgICogQU5H
TEUudmN4cHJvai90cmFuc2xhdG9yQ29tbW9uLnByb3BzOiBBZGRlZC4KKysgICAgICAgICogc3Jj
L0FOR0xFLnNsbjogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nv
ci9wcmVwcm9jZXNzb3IudmN4cHJvajogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2NvbXBpbGVy
L3ByZXByb2Nlc3Nvci9wcmVwcm9jZXNzb3IudmN4cHJvai5maWx0ZXJzOiBSZW1vdmVkLgorKyAg
ICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvcl9jb21tb24udmN4cHJvajogUmVtb3ZlZC4K
KysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3JfY29tbW9uLnZjeHByb2ouZmlsdGVy
czogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3JfaGxzbC52Y3hw
cm9qOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvcl9obHNsLnZj
eHByb2ouZmlsdGVyczogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xpYkVHTC9SRUFETUU6IFJl
bW92ZWQuCisrICAgICAgICAqIHNyYy9saWJFR0wvbGliRUdMLnZjeHByb2o6IFJlbW92ZWQuCisr
ICAgICAgICAqIHNyYy9saWJFR0wvbGliRUdMLnZjeHByb2ouZmlsdGVyczogUmVtb3ZlZC4KKysg
ICAgICAgICogc3JjL2xpYkdMRVN2Mi9SRUFETUU6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9s
aWJHTEVTdjIvbGliR0xFU3YyLnZjeHByb2o6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9saWJH
TEVTdjIvbGliR0xFU3YyLnZjeHByb2ouZmlsdGVyczogUmVtb3ZlZC4KKysgICAgICAgICogc3Jj
L2xpYkdMRVN2Mi9zaGFkZXJzOiBSZW1vdmVkLgorKworKzIwMTMtMDctMjQgIEFsZXggQ2hyaXN0
ZW5zZW4gIDxhY2hyaXN0ZW5zZW5AYXBwbGUuY29tPgorKworKyAgICAgICAgR2VuZXJhdGUgZGVy
aXZlZCBmaWxlcyBpbiBBTkdMRSBhdCBidWlsZCB0aW1lIHJhdGhlciB0aGFuIHdoZW4gdXBkYXRp
bmcgZnJvbSB1cHN0cmVhbS4KKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xMTg4NzIKKysKKysgICAgICAgIFJldmlld2VkIGJ5IE1hcmsgUm93ZS4KKysK
KysgICAgICAgICogQU5HTEUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajogTWFkZSBEZXJpdmVk
IFNvdXJjZXMgdGFyZ2V0IHdoaWNoIGNhbGxzIERlcml2ZWRTb3VyY2VzLm1ha2UsCisrICAgICAg
ICBtb3ZlZCBnZW5lcmF0ZWQgZmlsZXMgaW50byBEZXJpdmVkIFNvdXJjZXMgZ3JvdXAuCisrICAg
ICAgICAqIERlcml2ZWRTb3VyY2VzLm1ha2U6IEFkZGVkLgorKworKzIwMTMtMDctMjQgIFphbiBE
b2JlcnNlayAgPHpkb2JlcnNla0BpZ2FsaWEuY29tPgorKworKyAgICAgICAgVW5yZXZpZXdlZC4g
U2V0dGluZyB0aGUgc3ZuOmVvbC1zdHlsZT1uYXRpdmUgcHJvcGVydHkgb24gdGhlIEFOR0xFLnNs
biBmaWxlLgorKworKyAgICAgICAgKiBzcmMvQU5HTEUuc2xuOiBBZGRlZCBwcm9wZXJ0eSBzdm46
ZW9sLXN0eWxlLgorKworKzIwMTMtMDctMjQgIEdhYm9yIEFicmFoYW0gIDxhYnJobUBpbmYudS1z
emVnZWQuaHU+CisrCisrICAgICAgICBbUXRdIEJ1aWxkZml4IGFmdGVyIHIxNTMwNjQuIEFkZCBV
bmlmb3JtIGZpbGVzIHRvIHRoZSBUYXJnZXQucHJpLgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkg
Q3NhYmEgT3N6dHJvZ29uw6FjLgorKworKyAgICAgICAgKiBUYXJnZXQucHJpOgorKworKzIwMTMt
MDctMjMgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5AYXBwbGUuY29tPgorKworKyAg
ICAgICAgVXBkYXRlZCBBTkdMRSB0byBsYXRlc3QgZ2l0IGNvbW1pdCAoMDQ3MzczYWEzZWI0MDhi
ZTYyYmU1MmFkZTg0MGZhNWYxMWU3MjMzNykuCisrICAgICAgICBBZGRlZCBtaXNzaW5nIEFOR0xF
IGZpbGVzIGV4Y2VwdCB1bnVzZWQgdGVzdHMsIGV4dGVuc2lvbnMsIHNhbXBsZXMsIGJ1aWxkLCBh
bmQgLmdpdCBkaXJlY3Rvcmllcy4KKysgICAgICAgIFJhbiBCaXNvbiBhZnRlciBtYWtpbmcgc29t
ZSBjaGFuZ2VzIHRvIGZpeCBjb21waWxlIGVycm9ycyAoc2VlIGJlbG93KS4KKysKKysgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTg1NTAKKysKKysgICAg
ICAgIFJldmlld2VkIGJ5IERlYW4gSmFja3Nvbi4KKysKKysgICAgICAgICogQU5HTEUucGxpc3Q6
IFVwZGF0ZWQgZnJvbSBzdm4gdG8gZ2l0LgorKyAgICAgICAgKiBBTkdMRS54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qOiBSZW5hbWVkIERldGVjdFJlY3Vyc2lvbiB0byBEZXRlY3RDYWxsRGVwdGgu
CisrICAgICAgICAqIEFVVEhPUlM6IEFkZGVkLgorKyAgICAgICAgKiBDT05UUklCVVRPUlM6IEFk
ZGVkLgorKyAgICAgICAgKiBERVBTOiBBZGRlZC4KKysgICAgICAgICogR05VbWFrZWZpbGUuYW06
IFJlbmFtZWQgRGV0ZWN0UmVjdXJzaW9uIHRvIERldGVjdENhbGxEZXB0aCBhbmQgYWRkZWQgVW5p
Zm9ybS5jcHAuCisrICAgICAgICAqIExJQ0VOU0U6IEFkZGVkLgorKyAgICAgICAgKiBSRUFETUUu
Y2hyb21pdW06IEFkZGVkLgorKyAgICAgICAgKiBUYXJnZXQucHJpOiBSZW5hbWVkIERldGVjdFJl
Y3Vyc2lvbiB0byBEZXRlY3RDYWxsRGVwdGguCisrICAgICAgICAqIGNvZGVyZXZpZXcuc2V0dGlu
Z3M6IEFkZGVkLgorKyAgICAgICAgKiBpbmNsdWRlL0VHTC9lZ2xleHQuaDoKKysgICAgICAgICog
aW5jbHVkZS9HTEVTMi9nbDJleHQuaDoKKysgICAgICAgICogaW5jbHVkZS9HTFNMQU5HL1NoYWRl
ckxhbmcuaDoKKysgICAgICAgICogc3JjL0FOR0xFLnNsbjogQWRkZWQuCisrICAgICAgICAqIHNy
Yy9idWlsZF9hbmdsZS5neXA6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvYnVpbGRfYW5nbGUuZ3lw
aTogQWRkZWQuCisrICAgICAgICAqIHNyYy9jb21tb24vUmVmQ291bnRPYmplY3QuY3BwOgorKyAg
ICAgICAgKiBzcmMvY29tbW9uL2FuZ2xldXRpbHMuaDoKKysgICAgICAgIChBcnJheVNpemUpOgor
KyAgICAgICAgKFNhZmVSZWxlYXNlKToKKysgICAgICAgICogc3JjL2NvbW1vbi9kZWJ1Zy5jcHA6
CisrICAgICAgICAqIHNyYy9jb21tb24vZGVidWcuaDoKKysgICAgICAgICogc3JjL2NvbW1vbi9z
eXN0ZW0uaDoKKysgICAgICAgICogc3JjL2NvbW1vbi92ZXJzaW9uLmg6CisrICAgICAgICAqIHNy
Yy9jb21waWxlci82NGJpdC1sZXhlci1zYWZldHkucGF0Y2g6IEFkZGVkLgorKyAgICAgICAgKiBz
cmMvY29tcGlsZXIvQmFzZVR5cGVzLmg6CisrICAgICAgICAoZ2V0UXVhbGlmaWVyU3RyaW5nKToK
KysgICAgICAgICogc3JjL2NvbXBpbGVyL0NvZGVHZW5ITFNMLmNwcDoKKysgICAgICAgIChDb25z
dHJ1Y3RDb21waWxlcik6CisrICAgICAgICAqIHNyYy9jb21waWxlci9Db21tb24uaDoKKysgICAg
ICAgICogc3JjL2NvbXBpbGVyL0NvbXBpbGVyLmNwcDoKKysgICAgICAgIChUQ29tcGlsZXI6OlRD
b21waWxlcik6CisrICAgICAgICAoVENvbXBpbGVyOjpJbml0KToKKysgICAgICAgIChUQ29tcGls
ZXI6OmNvbXBpbGUpOgorKyAgICAgICAgKFRDb21waWxlcjo6SW5pdEJ1aWx0SW5TeW1ib2xUYWJs
ZSk6CisrICAgICAgICAoVENvbXBpbGVyOjpkZXRlY3RDYWxsRGVwdGgpOgorKyAgICAgICAgKFRD
b21waWxlcjo6bGltaXRFeHByZXNzaW9uQ29tcGxleGl0eSk6CisrICAgICAgICAoVENvbXBpbGVy
OjpnZXRSZXNvdXJjZXMpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvQ29uc3RhbnRVbmlvbi5o
OgorKyAgICAgICAgKENvbnN0YW50VW5pb246OkNvbnN0YW50VW5pb24pOgorKyAgICAgICAgKiBz
cmMvY29tcGlsZXIvRGV0ZWN0Q2FsbERlcHRoLmNwcDogQWRkZWQuCisrICAgICAgICAoRGV0ZWN0
Q2FsbERlcHRoOjpGdW5jdGlvbk5vZGU6OkZ1bmN0aW9uTm9kZSk6CisrICAgICAgICAoRGV0ZWN0
Q2FsbERlcHRoOjpGdW5jdGlvbk5vZGU6OmdldE5hbWUpOgorKyAgICAgICAgKERldGVjdENhbGxE
ZXB0aDo6RnVuY3Rpb25Ob2RlOjphZGRDYWxsZWUpOgorKyAgICAgICAgKERldGVjdENhbGxEZXB0
aDo6RnVuY3Rpb25Ob2RlOjpkZXRlY3RDYWxsRGVwdGgpOgorKyAgICAgICAgKERldGVjdENhbGxE
ZXB0aDo6RnVuY3Rpb25Ob2RlOjpyZXNldCk6CisrICAgICAgICAoRGV0ZWN0Q2FsbERlcHRoOjpE
ZXRlY3RDYWxsRGVwdGgpOgorKyAgICAgICAgKERldGVjdENhbGxEZXB0aDo6fkRldGVjdENhbGxE
ZXB0aCk6CisrICAgICAgICAoRGV0ZWN0Q2FsbERlcHRoOjp2aXNpdEFnZ3JlZ2F0ZSk6CisrICAg
ICAgICAoRGV0ZWN0Q2FsbERlcHRoOjpjaGVja0V4Y2VlZHNNYXhEZXB0aCk6CisrICAgICAgICAo
RGV0ZWN0Q2FsbERlcHRoOjpyZXNldEZ1bmN0aW9uTm9kZXMpOgorKyAgICAgICAgKERldGVjdENh
bGxEZXB0aDo6ZGV0ZWN0Q2FsbERlcHRoRm9yRnVuY3Rpb24pOgorKyAgICAgICAgKERldGVjdENh
bGxEZXB0aDo6ZGV0ZWN0Q2FsbERlcHRoKToKKysgICAgICAgIChEZXRlY3RDYWxsRGVwdGg6OmZp
bmRGdW5jdGlvbkJ5TmFtZSk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9EZXRlY3RDYWxsRGVw
dGguaDogQWRkZWQuCisrICAgICAgICAoRGV0ZWN0Q2FsbERlcHRoOjpnZXRJbmZvU2luayk6Cisr
ICAgICAgICAqIHNyYy9jb21waWxlci9EZXRlY3RSZWN1cnNpb24uY3BwOiBSZW1vdmVkLgorKyAg
ICAgICAgKiBzcmMvY29tcGlsZXIvRGV0ZWN0UmVjdXJzaW9uLmg6IFJlbW92ZWQuCisrICAgICAg
ICAqIHNyYy9jb21waWxlci9EaWFnbm9zdGljcy5jcHA6CisrICAgICAgICAoVERpYWdub3N0aWNz
Ojp3cml0ZUluZm8pOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvRm9yTG9vcFVucm9sbC5jcHA6
CisrICAgICAgICAoRm9yTG9vcFVucm9sbDo6ZXZhbHVhdGVJbnRDb25zdGFudCk6CisrICAgICAg
ICAqIHNyYy9jb21waWxlci9JbmZvU2luay5jcHA6CisrICAgICAgICAoVEluZm9TaW5rQmFzZTo6
cHJlZml4KToKKysgICAgICAgIChUSW5mb1NpbmtCYXNlOjpsb2NhdGlvbik6CisrICAgICAgICAo
VEluZm9TaW5rQmFzZTo6bWVzc2FnZSk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9JbmZvU2lu
ay5oOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvSW5pdGlhbGl6ZS5jcHA6CisrICAgICAgICAo
SW5zZXJ0QnVpbHRJbkZ1bmN0aW9ucyk6CisrICAgICAgICAoSWRlbnRpZnlCdWlsdElucyk6Cisr
ICAgICAgICAoSW5pdEV4dGVuc2lvbkJlaGF2aW9yKToKKysgICAgICAgICogc3JjL2NvbXBpbGVy
L0luaXRpYWxpemUuaDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL0ludGVybWVkaWF0ZS5jcHA6
CisrICAgICAgICAoVEludGVybWVkaWF0ZTo6YWRkU3ltYm9sKToKKysgICAgICAgIChUSW50ZXJt
ZWRpYXRlOjphZGRCaW5hcnlNYXRoKToKKysgICAgICAgIChUSW50ZXJtZWRpYXRlOjphZGRBc3Np
Z24pOgorKyAgICAgICAgKFRJbnRlcm1lZGlhdGU6OmFkZEluZGV4KToKKysgICAgICAgIChUSW50
ZXJtZWRpYXRlOjphZGRVbmFyeU1hdGgpOgorKyAgICAgICAgKFRJbnRlcm1lZGlhdGU6OnNldEFn
Z3JlZ2F0ZU9wZXJhdG9yKToKKysgICAgICAgIChUSW50ZXJtZWRpYXRlOjphZGRDb252ZXJzaW9u
KToKKysgICAgICAgIChUSW50ZXJtZWRpYXRlOjpncm93QWdncmVnYXRlKToKKysgICAgICAgIChU
SW50ZXJtZWRpYXRlOjptYWtlQWdncmVnYXRlKToKKysgICAgICAgIChUSW50ZXJtZWRpYXRlOjph
ZGRTZWxlY3Rpb24pOgorKyAgICAgICAgKFRJbnRlcm1lZGlhdGU6OmFkZENvbW1hKToKKysgICAg
ICAgIChUSW50ZXJtZWRpYXRlOjphZGRDb25zdGFudFVuaW9uKToKKysgICAgICAgIChUSW50ZXJt
ZWRpYXRlOjphZGRTd2l6emxlKToKKysgICAgICAgIChUSW50ZXJtZWRpYXRlOjphZGRMb29wKToK
KysgICAgICAgIChUSW50ZXJtZWRpYXRlOjphZGRCcmFuY2gpOgorKyAgICAgICAgKFRJbnRlcm1V
bmFyeTo6cHJvbW90ZSk6CisrICAgICAgICAoVEludGVybUJpbmFyeTo6cHJvbW90ZSk6CisrICAg
ICAgICAoQ29tcGFyZVN0cnVjdCk6CisrICAgICAgICAoQ29tcGFyZVN0cnVjdHVyZSk6CisrICAg
ICAgICAoVEludGVybUNvbnN0YW50VW5pb246OmZvbGQpOiBBZGRlZCBpbXBsaWVkIHN0YXRpY19j
YXN0cyB0byBmaXggY29tcGlsaW5nIGVycm9ycyBvbiBNYWMuCisrICAgICAgICAoVEludGVybWVk
aWF0ZTo6cHJvbW90ZUNvbnN0YW50VW5pb24pOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvT3V0
cHV0R0xTTC5jcHA6CisrICAgICAgICAoVE91dHB1dEdMU0w6OnZpc2l0U3ltYm9sKToKKysgICAg
ICAgICogc3JjL2NvbXBpbGVyL091dHB1dEdMU0wuaDoKKysgICAgICAgICogc3JjL2NvbXBpbGVy
L091dHB1dEdMU0xCYXNlLmNwcDoKKysgICAgICAgIChUT3V0cHV0R0xTTEJhc2U6OndyaXRlVmFy
aWFibGVUeXBlKToKKysgICAgICAgIChUT3V0cHV0R0xTTEJhc2U6OndyaXRlQ29uc3RhbnRVbmlv
bik6CisrICAgICAgICAoVE91dHB1dEdMU0xCYXNlOjp2aXNpdEJpbmFyeSk6CisrICAgICAgICAo
VE91dHB1dEdMU0xCYXNlOjp2aXNpdEFnZ3JlZ2F0ZSk6CisrICAgICAgICAoVE91dHB1dEdMU0xC
YXNlOjpnZXRUeXBlTmFtZSk6CisrICAgICAgICAoVE91dHB1dEdMU0xCYXNlOjpzdHJ1Y3REZWNs
YXJlZCk6CisrICAgICAgICAoVE91dHB1dEdMU0xCYXNlOjpkZWNsYXJlU3RydWN0KToKKysgICAg
ICAgICogc3JjL2NvbXBpbGVyL091dHB1dEdMU0xCYXNlLmg6CisrICAgICAgICAqIHNyYy9jb21w
aWxlci9PdXRwdXRITFNMLmNwcDoKKysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6T3V0cHV0SExT
TCk6CisrICAgICAgICAoc2g6Ok91dHB1dEhMU0w6OmdldFVuaWZvcm1zKToKKysgICAgICAgIChz
aDo6T3V0cHV0SExTTDo6aGVhZGVyKToKKysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6dmlzaXRT
eW1ib2wpOgorKyAgICAgICAgKHNoOjpPdXRwdXRITFNMOjp2aXNpdEJpbmFyeSk6CisrICAgICAg
ICAoc2g6Ok91dHB1dEhMU0w6OnZpc2l0QWdncmVnYXRlKToKKysgICAgICAgIChzaDo6T3V0cHV0
SExTTDo6dmlzaXRTZWxlY3Rpb24pOgorKyAgICAgICAgKHNoOjpPdXRwdXRITFNMOjp2aXNpdExv
b3ApOgorKyAgICAgICAgKHNoOjpPdXRwdXRITFNMOjpoYW5kbGVFeGNlc3NpdmVMb29wKToKKysg
ICAgICAgIChzaDo6T3V0cHV0SExTTDo6YXJndW1lbnRTdHJpbmcpOgorKyAgICAgICAgKHNoOjpP
dXRwdXRITFNMOjp0eXBlU3RyaW5nKToKKysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6dGV4dHVy
ZVN0cmluZyk6CisrICAgICAgICAoc2g6Ok91dHB1dEhMU0w6OmluaXRpYWxpemVyKToKKysgICAg
ICAgIChzaDo6T3V0cHV0SExTTDo6YWRkQ29uc3RydWN0b3IpOgorKyAgICAgICAgKHNoOjpPdXRw
dXRITFNMOjp3cml0ZUNvbnN0YW50VW5pb24pOgorKyAgICAgICAgKHNoOjpPdXRwdXRITFNMOjpk
ZWNvcmF0ZVVuaWZvcm0pOgorKyAgICAgICAgKHNoOjpPdXRwdXRITFNMOjpkZWNvcmF0ZUZpZWxk
KToKKysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6cmVnaXN0ZXJTdHJpbmcpOgorKyAgICAgICAg
KHNoOjpPdXRwdXRITFNMOjpzYW1wbGVyUmVnaXN0ZXIpOgorKyAgICAgICAgKHNoOjpPdXRwdXRI
TFNMOjp1bmlmb3JtUmVnaXN0ZXIpOgorKyAgICAgICAgKHNoOjpPdXRwdXRITFNMOjpkZWNsYXJl
VW5pZm9ybSk6CisrICAgICAgICAoc2g6Ok91dHB1dEhMU0w6OmdsVmFyaWFibGVUeXBlKToKKysg
ICAgICAgIChzaDo6T3V0cHV0SExTTDo6Z2xWYXJpYWJsZVByZWNpc2lvbik6CisrICAgICAgICAq
IHNyYy9jb21waWxlci9PdXRwdXRITFNMLmg6CisrICAgICAgICAqIHNyYy9jb21waWxlci9QYXJz
ZUhlbHBlci5jcHA6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6cGFyc2VWZWN0b3JGaWVsZHMp
OgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OnBhcnNlTWF0cml4RmllbGRzKToKKysgICAgICAg
IChUUGFyc2VDb250ZXh0OjplcnJvcik6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6d2Fybmlu
Zyk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6YXNzaWduRXJyb3IpOgorKyAgICAgICAgKFRQ
YXJzZUNvbnRleHQ6OnVuYXJ5T3BFcnJvcik6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6Ymlu
YXJ5T3BFcnJvcik6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6cHJlY2lzaW9uRXJyb3JDaGVj
ayk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6bFZhbHVlRXJyb3JDaGVjayk6CisrICAgICAg
ICAoVFBhcnNlQ29udGV4dDo6Z2xvYmFsRXJyb3JDaGVjayk6CisrICAgICAgICAoVFBhcnNlQ29u
dGV4dDo6cmVzZXJ2ZWRFcnJvckNoZWNrKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0Ojpjb25z
dHJ1Y3RvckVycm9yQ2hlY2spOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OnZvaWRFcnJvckNo
ZWNrKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0Ojpib29sRXJyb3JDaGVjayk6CisrICAgICAg
ICAoVFBhcnNlQ29udGV4dDo6c2FtcGxlckVycm9yQ2hlY2spOgorKyAgICAgICAgKFRQYXJzZUNv
bnRleHQ6OnN0cnVjdFF1YWxpZmllckVycm9yQ2hlY2spOgorKyAgICAgICAgKFRQYXJzZUNvbnRl
eHQ6OnBhcmFtZXRlclNhbXBsZXJFcnJvckNoZWNrKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0
Ojpjb250YWluc1NhbXBsZXIpOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OmFycmF5U2l6ZUVy
cm9yQ2hlY2spOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OmFycmF5UXVhbGlmaWVyRXJyb3JD
aGVjayk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6YXJyYXlUeXBlRXJyb3JDaGVjayk6Cisr
ICAgICAgICAoVFBhcnNlQ29udGV4dDo6YXJyYXlFcnJvckNoZWNrKToKKysgICAgICAgIChUUGFy
c2VDb250ZXh0Ojpub25Jbml0Q29uc3RFcnJvckNoZWNrKToKKysgICAgICAgIChUUGFyc2VDb250
ZXh0Ojpub25Jbml0RXJyb3JDaGVjayk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6cGFyYW1F
cnJvckNoZWNrKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0OjpleHRlbnNpb25FcnJvckNoZWNr
KToKKysgICAgICAgIChUUGFyc2VDb250ZXh0Ojppc0V4dGVuc2lvbkVuYWJsZWQpOgorKyAgICAg
ICAgUmVwbGFjZWQgYXV0byB3aXRoIHN0ZDo6bWFwPHN0ZDo6c3RyaW5nLCBUQmVoYXZpb3I+Ojpj
b25zdF9pdGVyYXRvciB0byBmaXggUXQgYW5kIEVGTCBjb21waWxpbmcgZXJyb3JzLgorKyAgICAg
ICAgKFRQYXJzZUNvbnRleHQ6OmZpbmRGdW5jdGlvbik6CisrICAgICAgICAoVFBhcnNlQ29udGV4
dDo6ZXhlY3V0ZUluaXRpYWxpemVyKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0OjphZGRDb25z
dHJ1Y3Rvcik6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6Y29uc3RydWN0QnVpbHRJbik6Cisr
ICAgICAgICAoVFBhcnNlQ29udGV4dDo6Y29uc3RydWN0U3RydWN0KToKKysgICAgICAgIChUUGFy
c2VDb250ZXh0OjphZGRDb25zdFZlY3Rvck5vZGUpOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6
OmFkZENvbnN0TWF0cml4Tm9kZSk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6YWRkQ29uc3RB
cnJheU5vZGUpOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OmFkZENvbnN0U3RydWN0KToKKysg
ICAgICAgIChUUGFyc2VDb250ZXh0OjplbnRlclN0cnVjdERlY2xhcmF0aW9uKToKKysgICAgICAg
IChUUGFyc2VDb250ZXh0OjpzdHJ1Y3ROZXN0aW5nRXJyb3JDaGVjayk6CisrICAgICAgICAoVFBh
cnNlQ29udGV4dDo6YWRkSW5kZXhFeHByZXNzaW9uKToKKysgICAgICAgICogc3JjL2NvbXBpbGVy
L1BhcnNlSGVscGVyLmg6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6VFBhcnNlQ29udGV4dCk6
CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6cHJhZ21hKToKKysgICAgICAgICogc3JjL2NvbXBp
bGVyL1Bvb2xBbGxvYy5jcHA6CisrICAgICAgICAoVFBvb2xBbGxvY2F0b3I6OmFsbG9jYXRlKToK
KysgICAgICAgICogc3JjL2NvbXBpbGVyL1NoSGFuZGxlLmg6CisrICAgICAgICAoVFNoSGFuZGxl
QmFzZTo6Z2V0QXNUcmFuc2xhdG9ySExTTCk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9TaGFk
ZXJMYW5nLmNwcDoKKysgICAgICAgIChTaEluaXRCdWlsdEluUmVzb3VyY2VzKToKKysgICAgICAg
IChTaEdldEluZm9Qb2ludGVyKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL1N5bWJvbFRhYmxl
LmNwcDoKKysgICAgICAgIChUVHlwZTo6VFR5cGUpOgorKyAgICAgICAgKFRUeXBlOjpidWlsZE1h
bmdsZWROYW1lKToKKysgICAgICAgIChUVHlwZTo6Z2V0T2JqZWN0U2l6ZSk6CisrICAgICAgICAo
VFN0cnVjdHVyZTo6Y29udGFpbnNBcnJheXMpOgorKyAgICAgICAgKFRTdHJ1Y3R1cmU6OmJ1aWxk
TWFuZ2xlZE5hbWUpOgorKyAgICAgICAgKFRTdHJ1Y3R1cmU6OmNhbGN1bGF0ZU9iamVjdFNpemUp
OgorKyAgICAgICAgKFRTdHJ1Y3R1cmU6OmNhbGN1bGF0ZURlZXBlc3ROZXN0aW5nKToKKysgICAg
ICAgIChUU3ltYm9sVGFibGVMZXZlbDo6cmVsYXRlVG9FeHRlbnNpb24pOgorKyAgICAgICAgKiBz
cmMvY29tcGlsZXIvU3ltYm9sVGFibGUuaDoKKysgICAgICAgIChUU3ltYm9sOjpyZWxhdGVUb0V4
dGVuc2lvbik6CisrICAgICAgICAoVFN5bWJvbDo6Z2V0RXh0ZW5zaW9uKToKKysgICAgICAgIChU
VmFyaWFibGU6OlRWYXJpYWJsZSk6CisrICAgICAgICAoVFZhcmlhYmxlOjpzZXRRdWFsaWZpZXIp
OgorKyAgICAgICAgKFRWYXJpYWJsZTo6c2hhcmVDb25zdFBvaW50ZXIpOgorKyAgICAgICAgKFRT
eW1ib2xUYWJsZUxldmVsOjppbnNlcnQpOgorKyAgICAgICAgKFRTeW1ib2xUYWJsZTo6aW5zZXJ0
Q29uc3RJbnQpOgorKyAgICAgICAgKFRTeW1ib2xUYWJsZTo6aW5zZXJ0QnVpbHRJbik6CisrICAg
ICAgICAqIHNyYy9jb21waWxlci9UcmFuc2xhdG9ySExTTC5jcHA6CisrICAgICAgICAoVHJhbnNs
YXRvckhMU0w6OlRyYW5zbGF0b3JITFNMKToKKysgICAgICAgIChUcmFuc2xhdG9ySExTTDo6dHJh
bnNsYXRlKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL1RyYW5zbGF0b3JITFNMLmg6CisrICAg
ICAgICAoVHJhbnNsYXRvckhMU0w6OmdldEFzVHJhbnNsYXRvckhMU0wpOgorKyAgICAgICAgKFRy
YW5zbGF0b3JITFNMOjpnZXRVbmlmb3Jtcyk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9UeXBl
cy5oOiBSZW1vdmVkIGVudW0gYml0IGZpZWxkcyB0byBmaXggZ2NjIGNvbXBpbGVyIGVycm9ycy4K
KysgICAgICAgIChURmllbGQ6OlRGaWVsZCk6CisrICAgICAgICAoVEZpZWxkOjp0eXBlKToKKysg
ICAgICAgIChURmllbGQ6Om5hbWUpOgorKyAgICAgICAgKE5ld1Bvb2xURmllbGRMaXN0KToKKysg
ICAgICAgIChUU3RydWN0dXJlOjpUU3RydWN0dXJlKToKKysgICAgICAgIChUU3RydWN0dXJlOjpu
YW1lKToKKysgICAgICAgIChUU3RydWN0dXJlOjpmaWVsZHMpOgorKyAgICAgICAgKFRTdHJ1Y3R1
cmU6Om1hbmdsZWROYW1lKToKKysgICAgICAgIChUU3RydWN0dXJlOjpvYmplY3RTaXplKToKKysg
ICAgICAgIChUU3RydWN0dXJlOjpkZWVwZXN0TmVzdGluZyk6CisrICAgICAgICAoVFR5cGU6OlRU
eXBlKToKKysgICAgICAgIChUVHlwZTo6ZWxlbWVudFJlZ2lzdGVyQ291bnQpOgorKyAgICAgICAg
KFRUeXBlOjp0b3RhbFJlZ2lzdGVyQ291bnQpOgorKyAgICAgICAgKFRUeXBlOjpjbGVhckFycmF5
bmVzcyk6CisrICAgICAgICAoVFR5cGU6OmdldFN0cnVjdCk6CisrICAgICAgICAoVFR5cGU6OnNl
dFN0cnVjdCk6CisrICAgICAgICAoVFR5cGU6OmdldE1hbmdsZWROYW1lKToKKysgICAgICAgIChU
VHlwZTo6Z2V0RGVlcGVzdFN0cnVjdE5lc3RpbmcpOgorKyAgICAgICAgKFRUeXBlOjppc1N0cnVj
dHVyZUNvbnRhaW5pbmdBcnJheXMpOgorKyAgICAgICAgKFRQdWJsaWNUeXBlOjpzZXRCYXNpYyk6
CisrICAgICAgICAqIHNyYy9jb21waWxlci9Vbmlmb3JtLmNwcDogQWRkZWQuCisrICAgICAgICAo
c2g6OlVuaWZvcm06OlVuaWZvcm0pOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvVW5pZm9ybS5o
OiBBZGRlZC4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL1ZhcmlhYmxlSW5mby5jcHA6CisrICAg
ICAgICAoZ2V0VXNlckRlZmluZWRWYXJpYWJsZUluZm8pOgorKyAgICAgICAgKiBzcmMvY29tcGls
ZXIvZ2xzbGFuZy5sOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvZ2xzbGFuZy55OiBNb3ZlZCBZ
WUxUWVBFIGRlZmluaXRpb24gaW50byAldW5pb24gdG8gd29yayB3aXRoIEJpc29uIDIuMy4KKysg
ICAgICAgICogc3JjL2NvbXBpbGVyL2dsc2xhbmdfbGV4LmNwcDoKKysgICAgICAgICh5eV9nZXRf
cHJldmlvdXNfc3RhdGUpOgorKyAgICAgICAgKHl5X3RyeV9OVUxfdHJhbnMpOgorKyAgICAgICAg
KHl5Z2V0X2xsb2MpOgorKyAgICAgICAgKHl5c2V0X2xsb2MpOgorKyAgICAgICAgKHN0cmluZ19p
bnB1dCk6CisrICAgICAgICAoY2hlY2tfdHlwZSk6CisrICAgICAgICAocmVzZXJ2ZWRfd29yZCk6
CisrICAgICAgICAoZ2xzbGFuZ19zY2FuKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL2dsc2xh
bmdfdGFiLmNwcDoKKysgICAgICAgICh5eWVycm9yKToKKysgICAgICAgICogc3JjL2NvbXBpbGVy
L2dsc2xhbmdfdGFiLmg6CisrICAgICAgICAqIHNyYy9jb21waWxlci9pbnRlcm1PdXQuY3BwOgor
KyAgICAgICAgKFRPdXRwdXRUcmF2ZXJzZXI6OnZpc2l0VW5hcnkpOgorKyAgICAgICAgKFRPdXRw
dXRUcmF2ZXJzZXI6OnZpc2l0QWdncmVnYXRlKToKKysgICAgICAgIChUT3V0cHV0VHJhdmVyc2Vy
Ojp2aXNpdENvbnN0YW50VW5pb24pOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvaW50ZXJtZWRp
YXRlLmg6CisrICAgICAgICAoVEludGVybU5vZGU6OlRJbnRlcm1Ob2RlKToKKysgICAgICAgIChU
SW50ZXJtTm9kZTo6flRJbnRlcm1Ob2RlKToKKysgICAgICAgIChUSW50ZXJtTm9kZTo6Z2V0TGlu
ZSk6CisrICAgICAgICAoVEludGVybU5vZGU6OnNldExpbmUpOgorKyAgICAgICAgKFRJbnRlcm1O
b2RlOjpnZXRBc0xvb3BOb2RlKToKKysgICAgICAgIChUSW50ZXJtVHlwZWQ6OnRvdGFsUmVnaXN0
ZXJDb3VudCk6CisrICAgICAgICAoVEludGVybVR5cGVkOjplbGVtZW50UmVnaXN0ZXJDb3VudCk6
CisrICAgICAgICAoVEludGVybVR5cGVkOjpnZXRBcnJheVNpemUpOgorKyAgICAgICAgKFRJbnRl
cm1Db25zdGFudFVuaW9uOjpnZXRJQ29uc3QpOgorKyAgICAgICAgKFRJbnRlcm1Db25zdGFudFVu
aW9uOjpnZXRGQ29uc3QpOgorKyAgICAgICAgKFRJbnRlcm1Db25zdGFudFVuaW9uOjpnZXRCQ29u
c3QpOgorKyAgICAgICAgKFRJbnRlcm1BZ2dyZWdhdGU6OlRJbnRlcm1BZ2dyZWdhdGUpOgorKyAg
ICAgICAgKFRJbnRlcm1UcmF2ZXJzZXI6OlRJbnRlcm1UcmF2ZXJzZXIpOgorKyAgICAgICAgKFRJ
bnRlcm1UcmF2ZXJzZXI6OmdldE1heERlcHRoKToKKysgICAgICAgIChUSW50ZXJtVHJhdmVyc2Vy
OjppbmNyZW1lbnREZXB0aCk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9sb2NhbGludGVybWVk
aWF0ZS5oOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvcGFyc2VDb25zdC5jcHA6CisrICAgICAg
ICAoVENvbnN0VHJhdmVyc2VyOjp2aXNpdFN5bWJvbCk6CisrICAgICAgICAoVENvbnN0VHJhdmVy
c2VyOjp2aXNpdEJpbmFyeSk6CisrICAgICAgICAoVENvbnN0VHJhdmVyc2VyOjp2aXNpdFVuYXJ5
KToKKysgICAgICAgIChUQ29uc3RUcmF2ZXJzZXI6OnZpc2l0QWdncmVnYXRlKToKKysgICAgICAg
IChUQ29uc3RUcmF2ZXJzZXI6OnZpc2l0U2VsZWN0aW9uKToKKysgICAgICAgIChUQ29uc3RUcmF2
ZXJzZXI6OnZpc2l0Q29uc3RhbnRVbmlvbik6CisrICAgICAgICAoVENvbnN0VHJhdmVyc2VyOjp2
aXNpdExvb3ApOgorKyAgICAgICAgKFRDb25zdFRyYXZlcnNlcjo6dmlzaXRCcmFuY2gpOgorKyAg
ICAgICAgKFRJbnRlcm1lZGlhdGU6OnBhcnNlQ29uc3RUcmVlKToKKysgICAgICAgICogc3JjL2Nv
bXBpbGVyL3ByZXByb2Nlc3Nvci82NGJpdC10b2tlbml6ZXItc2FmZXR5LnBhdGNoOiBBZGRlZC4K
KysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9Ub2tlbml6ZXIuY3BwOgorKyAg
ICAgICAgKHl5X2dldF9wcmV2aW91c19zdGF0ZSk6CisrICAgICAgICAoeXlfdHJ5X05VTF90cmFu
cyk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvVG9rZW5pemVyLmw6Cisr
ICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvcHJlcHJvY2Vzc29yLnZjeHByb2o6
IEFkZGVkLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL3ByZXByb2Nlc3Nv
ci52Y3hwcm9qLmZpbHRlcnM6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdGltaW5n
L1Jlc3RyaWN0VmVydGV4U2hhZGVyVGltaW5nLmNwcDoKKysgICAgICAgIChSZXN0cmljdFZlcnRl
eFNoYWRlclRpbWluZzo6dmlzaXRTeW1ib2wpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJh
bnNsYXRvcl9jb21tb24udmN4cHJvajogQWRkZWQuCisrICAgICAgICAqIHNyYy9jb21waWxlci90
cmFuc2xhdG9yX2NvbW1vbi52Y3hwcm9qLmZpbHRlcnM6IEFkZGVkLgorKyAgICAgICAgKiBzcmMv
Y29tcGlsZXIvdHJhbnNsYXRvcl9obHNsLnZjeHByb2o6IEFkZGVkLgorKyAgICAgICAgKiBzcmMv
Y29tcGlsZXIvdHJhbnNsYXRvcl9obHNsLnZjeHByb2ouZmlsdGVyczogQWRkZWQuCisrICAgICAg
ICAqIHNyYy9saWJFR0wvQ29uZmlnLmNwcDogQWRkZWQuCisrICAgICAgICAoZWdsOjpDb25maWc6
OkNvbmZpZyk6CisrICAgICAgICAoZWdsOjpDb25maWc6OmdldEhhbmRsZSk6CisrICAgICAgICAo
ZWdsOjpTb3J0Q29uZmlnOjpTb3J0Q29uZmlnKToKKysgICAgICAgIChlZ2w6OlNvcnRDb25maWc6
OnNjYW5Gb3JXYW50ZWRDb21wb25lbnRzKToKKysgICAgICAgIChlZ2w6OlNvcnRDb25maWc6Ondh
bnRlZENvbXBvbmVudHNTaXplKToKKysgICAgICAgIChlZ2w6OlNvcnRDb25maWc6Om9wZXJhdG9y
KCkpOgorKyAgICAgICAgKGVnbDo6Q29uZmlnU2V0OjpDb25maWdTZXQpOgorKyAgICAgICAgKGVn
bDo6Q29uZmlnU2V0OjphZGQpOgorKyAgICAgICAgKGVnbDo6Q29uZmlnU2V0OjpzaXplKToKKysg
ICAgICAgIChlZ2w6OkNvbmZpZ1NldDo6Z2V0Q29uZmlncyk6CisrICAgICAgICAoZWdsOjpDb25m
aWdTZXQ6OmdldCk6CisrICAgICAgICAqIHNyYy9saWJFR0wvQ29uZmlnLmg6IEFkZGVkLgorKyAg
ICAgICAgKiBzcmMvbGliRUdML0Rpc3BsYXkuY3BwOiBBZGRlZC4KKysgICAgICAgIChlZ2w6OkRp
c3BsYXk6OmdldERpc3BsYXkpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6RGlzcGxheSk6Cisr
ICAgICAgICAoZWdsOjpEaXNwbGF5Ojp+RGlzcGxheSk6CisrICAgICAgICAoZWdsOjpEaXNwbGF5
Ojppbml0aWFsaXplKToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OnRlcm1pbmF0ZSk6CisrICAg
ICAgICAoZWdsOjpEaXNwbGF5OjpnZXRDb25maWdzKToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6
OmdldENvbmZpZ0F0dHJpYik6CisrICAgICAgICAoZWdsOjpEaXNwbGF5OjpjcmVhdGVXaW5kb3dT
dXJmYWNlKToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OmNyZWF0ZU9mZnNjcmVlblN1cmZhY2Up
OgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6Y3JlYXRlQ29udGV4dCk6CisrICAgICAgICAoZWds
OjpEaXNwbGF5OjpyZXN0b3JlTG9zdERldmljZSk6CisrICAgICAgICAoZWdsOjpEaXNwbGF5Ojpk
ZXN0cm95U3VyZmFjZSk6CisrICAgICAgICAoZWdsOjpEaXNwbGF5OjpkZXN0cm95Q29udGV4dCk6
CisrICAgICAgICAoZWdsOjpEaXNwbGF5Ojpub3RpZnlEZXZpY2VMb3N0KToKKysgICAgICAgIChl
Z2w6OkRpc3BsYXk6OnJlY3JlYXRlU3dhcENoYWlucyk6CisrICAgICAgICAoZWdsOjpEaXNwbGF5
Ojppc0luaXRpYWxpemVkKToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OmlzVmFsaWRDb25maWcp
OgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6aXNWYWxpZENvbnRleHQpOgorKyAgICAgICAgKGVn
bDo6RGlzcGxheTo6aXNWYWxpZFN1cmZhY2UpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6aGFz
RXhpc3RpbmdXaW5kb3dTdXJmYWNlKToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OmluaXRFeHRl
bnNpb25TdHJpbmcpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6Z2V0RXh0ZW5zaW9uU3RyaW5n
KToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OmluaXRWZW5kb3JTdHJpbmcpOgorKyAgICAgICAg
KGVnbDo6RGlzcGxheTo6Z2V0VmVuZG9yU3RyaW5nKToKKysgICAgICAgICogc3JjL2xpYkVHTC9E
aXNwbGF5Lmg6IEFkZGVkLgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6Z2V0UmVuZGVyZXIpOgor
KyAgICAgICAgKiBzcmMvbGliRUdML1N1cmZhY2UuY3BwOiBBZGRlZC4KKysgICAgICAgIChlZ2w6
OlN1cmZhY2U6OlN1cmZhY2UpOgorKyAgICAgICAgKGVnbDo6U3VyZmFjZTo6flN1cmZhY2UpOgor
KyAgICAgICAgKGVnbDo6U3VyZmFjZTo6aW5pdGlhbGl6ZSk6CisrICAgICAgICAoZWdsOjpTdXJm
YWNlOjpyZWxlYXNlKToKKysgICAgICAgIChlZ2w6OlN1cmZhY2U6OnJlc2V0U3dhcENoYWluKToK
KysgICAgICAgIChlZ2w6OlN1cmZhY2U6OnJlc2l6ZVN3YXBDaGFpbik6CisrICAgICAgICAoZWds
OjpTdXJmYWNlOjpzd2FwUmVjdCk6CisrICAgICAgICAoZWdsOjpTdXJmYWNlOjpnZXRXaW5kb3dI
YW5kbGUpOgorKyAgICAgICAgKGVnbDo6U3VyZmFjZVdpbmRvd1Byb2MpOgorKyAgICAgICAgKGVn
bDo6U3VyZmFjZTo6c3ViY2xhc3NXaW5kb3cpOgorKyAgICAgICAgKGVnbDo6U3VyZmFjZTo6dW5z
dWJjbGFzc1dpbmRvdyk6CisrICAgICAgICAoZWdsOjpTdXJmYWNlOjpjaGVja0Zvck91dE9mRGF0
ZVN3YXBDaGFpbik6CisrICAgICAgICAoZWdsOjpTdXJmYWNlOjpzd2FwKToKKysgICAgICAgIChl
Z2w6OlN1cmZhY2U6OnBvc3RTdWJCdWZmZXIpOgorKyAgICAgICAgKGVnbDo6U3VyZmFjZTo6Z2V0
V2lkdGgpOgorKyAgICAgICAgKGVnbDo6U3VyZmFjZTo6Z2V0SGVpZ2h0KToKKysgICAgICAgIChl
Z2w6OlN1cmZhY2U6OmlzUG9zdFN1YkJ1ZmZlclN1cHBvcnRlZCk6CisrICAgICAgICAoZWdsOjpT
dXJmYWNlOjpnZXRTd2FwQ2hhaW4pOgorKyAgICAgICAgKGVnbDo6U3VyZmFjZTo6c2V0U3dhcElu
dGVydmFsKToKKysgICAgICAgIChlZ2w6OlN1cmZhY2U6OmdldFRleHR1cmVGb3JtYXQpOgorKyAg
ICAgICAgKGVnbDo6U3VyZmFjZTo6Z2V0VGV4dHVyZVRhcmdldCk6CisrICAgICAgICAoZWdsOjpT
dXJmYWNlOjpzZXRCb3VuZFRleHR1cmUpOgorKyAgICAgICAgKGVnbDo6U3VyZmFjZTo6Z2V0Qm91
bmRUZXh0dXJlKToKKysgICAgICAgIChlZ2w6OlN1cmZhY2U6OmdldEZvcm1hdCk6CisrICAgICAg
ICAqIHNyYy9saWJFR0wvU3VyZmFjZS5oOiBBZGRlZC4KKysgICAgICAgICogc3JjL2xpYkVHTC9s
aWJFR0wuY3BwOiBBZGRlZC4KKysgICAgICAgICh2YWxpZGF0ZURpc3BsYXkpOgorKyAgICAgICAg
KHZhbGlkYXRlQ29uZmlnKToKKysgICAgICAgICh2YWxpZGF0ZUNvbnRleHQpOgorKyAgICAgICAg
KHZhbGlkYXRlU3VyZmFjZSk6CisrICAgICAgICAqIHNyYy9saWJFR0wvbGliRUdMLmRlZjogQWRk
ZWQuCisrICAgICAgICAqIHNyYy9saWJFR0wvbGliRUdMLnJjOiBBZGRlZC4KKysgICAgICAgICog
c3JjL2xpYkVHTC9saWJFR0wudmN4cHJvajogQWRkZWQuCisrICAgICAgICAqIHNyYy9saWJFR0wv
bGliRUdMLnZjeHByb2ouZmlsdGVyczogQWRkZWQuCisrICAgICAgICAqIHNyYy9saWJFR0wvbWFp
bi5jcHA6IEFkZGVkLgorKyAgICAgICAgKERsbE1haW4pOgorKyAgICAgICAgKGVnbDo6c2V0Q3Vy
cmVudEVycm9yKToKKysgICAgICAgIChlZ2w6OmdldEN1cnJlbnRFcnJvcik6CisrICAgICAgICAo
ZWdsOjpzZXRDdXJyZW50QVBJKToKKysgICAgICAgIChlZ2w6OmdldEN1cnJlbnRBUEkpOgorKyAg
ICAgICAgKGVnbDo6c2V0Q3VycmVudERpc3BsYXkpOgorKyAgICAgICAgKGVnbDo6Z2V0Q3VycmVu
dERpc3BsYXkpOgorKyAgICAgICAgKGVnbDo6c2V0Q3VycmVudERyYXdTdXJmYWNlKToKKysgICAg
ICAgIChlZ2w6OmdldEN1cnJlbnREcmF3U3VyZmFjZSk6CisrICAgICAgICAoZWdsOjpzZXRDdXJy
ZW50UmVhZFN1cmZhY2UpOgorKyAgICAgICAgKGVnbDo6Z2V0Q3VycmVudFJlYWRTdXJmYWNlKToK
KysgICAgICAgIChlZ2w6OmVycm9yKToKKysgICAgICAgICogc3JjL2xpYkVHTC9tYWluLmg6IEFk
ZGVkLgorKyAgICAgICAgKGVnbDo6ZXJyb3IpOgorKyAgICAgICAgKGVnbDo6c3VjY2Vzcyk6Cisr
ICAgICAgICAqIHNyYy9saWJFR0wvcmVzb3VyY2UuaDogQWRkZWQuCisrICAgICAgICAqIHNyYy9s
aWJHTEVTdjIvQmluYXJ5U3RyZWFtLmg6IEFkZGVkLgorKyAgICAgICAgKGdsOjpCaW5hcnlJbnB1
dFN0cmVhbTo6QmluYXJ5SW5wdXRTdHJlYW0pOgorKyAgICAgICAgKGdsOjpCaW5hcnlJbnB1dFN0
cmVhbTo6cmVhZCk6CisrICAgICAgICAoZ2w6OkJpbmFyeUlucHV0U3RyZWFtOjpza2lwKToKKysg
ICAgICAgIChnbDo6QmluYXJ5SW5wdXRTdHJlYW06Om9mZnNldCk6CisrICAgICAgICAoZ2w6OkJp
bmFyeUlucHV0U3RyZWFtOjplcnJvcik6CisrICAgICAgICAoZ2w6OkJpbmFyeUlucHV0U3RyZWFt
OjplbmRPZlN0cmVhbSk6CisrICAgICAgICAoZ2w6OkJpbmFyeU91dHB1dFN0cmVhbTo6QmluYXJ5
T3V0cHV0U3RyZWFtKToKKysgICAgICAgIChnbDo6QmluYXJ5T3V0cHV0U3RyZWFtOjp3cml0ZSk6
CisrICAgICAgICAoZ2w6OkJpbmFyeU91dHB1dFN0cmVhbTo6bGVuZ3RoKToKKysgICAgICAgIChn
bDo6QmluYXJ5T3V0cHV0U3RyZWFtOjpkYXRhKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9C
dWZmZXIuY3BwOiBBZGRlZC4KKysgICAgICAgIChnbDo6QnVmZmVyOjpCdWZmZXIpOgorKyAgICAg
ICAgKGdsOjpCdWZmZXI6On5CdWZmZXIpOgorKyAgICAgICAgKGdsOjpCdWZmZXI6OmJ1ZmZlckRh
dGEpOgorKyAgICAgICAgKGdsOjpCdWZmZXI6OmJ1ZmZlclN1YkRhdGEpOgorKyAgICAgICAgKGds
OjpCdWZmZXI6OmdldFN0b3JhZ2UpOgorKyAgICAgICAgKGdsOjpCdWZmZXI6OnNpemUpOgorKyAg
ICAgICAgKGdsOjpCdWZmZXI6OnVzYWdlKToKKysgICAgICAgIChnbDo6QnVmZmVyOjpnZXRTdGF0
aWNWZXJ0ZXhCdWZmZXIpOgorKyAgICAgICAgKGdsOjpCdWZmZXI6OmdldFN0YXRpY0luZGV4QnVm
ZmVyKToKKysgICAgICAgIChnbDo6QnVmZmVyOjppbnZhbGlkYXRlU3RhdGljRGF0YSk6CisrICAg
ICAgICAoZ2w6OkJ1ZmZlcjo6cHJvbW90ZVN0YXRpY1VzYWdlKToKKysgICAgICAgICogc3JjL2xp
YkdMRVN2Mi9CdWZmZXIuaDogQWRkZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvQ29udGV4
dC5jcHA6IEFkZGVkLgorKyAgICAgICAgKGdsOjptYWtlU3RhdGljU3RyaW5nKToKKysgICAgICAg
IChnbDo6Q29udGV4dDo6Q29udGV4dCk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6On5Db250ZXh0
KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6bWFrZUN1cnJlbnQpOgorKyAgICAgICAgKGdsOjpD
b250ZXh0OjptYXJrQ29udGV4dExvc3QpOgorKyAgICAgICAgKGdsOjpDb250ZXh0Ojppc0NvbnRl
eHRMb3N0KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c2V0Q2xlYXJDb2xvcik6CisrICAgICAg
ICAoZ2w6OkNvbnRleHQ6OnNldENsZWFyRGVwdGgpOgorKyAgICAgICAgKGdsOjpDb250ZXh0Ojpz
ZXRDbGVhclN0ZW5jaWwpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzZXRDdWxsRmFjZSk6Cisr
ICAgICAgICAoZ2w6OkNvbnRleHQ6OmlzQ3VsbEZhY2VFbmFibGVkKToKKysgICAgICAgIChnbDo6
Q29udGV4dDo6c2V0Q3VsbE1vZGUpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzZXRGcm9udEZh
Y2UpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzZXREZXB0aFRlc3QpOgorKyAgICAgICAgKGds
OjpDb250ZXh0Ojppc0RlcHRoVGVzdEVuYWJsZWQpOgorKyAgICAgICAgKGdsOjpDb250ZXh0Ojpz
ZXREZXB0aEZ1bmMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzZXREZXB0aFJhbmdlKToKKysg
ICAgICAgIChnbDo6Q29udGV4dDo6c2V0QmxlbmQpOgorKyAgICAgICAgKGdsOjpDb250ZXh0Ojpp
c0JsZW5kRW5hYmxlZCk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnNldEJsZW5kRmFjdG9ycyk6
CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnNldEJsZW5kQ29sb3IpOgorKyAgICAgICAgKGdsOjpD
b250ZXh0OjpzZXRCbGVuZEVxdWF0aW9uKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c2V0U3Rl
bmNpbFRlc3QpOgorKyAgICAgICAgKGdsOjpDb250ZXh0Ojppc1N0ZW5jaWxUZXN0RW5hYmxlZCk6
CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnNldFN0ZW5jaWxQYXJhbXMpOgorKyAgICAgICAgKGds
OjpDb250ZXh0OjpzZXRTdGVuY2lsQmFja1BhcmFtcyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6
OnNldFN0ZW5jaWxXcml0ZW1hc2spOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzZXRTdGVuY2ls
QmFja1dyaXRlbWFzayk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnNldFN0ZW5jaWxPcGVyYXRp
b25zKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c2V0U3RlbmNpbEJhY2tPcGVyYXRpb25zKToK
KysgICAgICAgIChnbDo6Q29udGV4dDo6c2V0UG9seWdvbk9mZnNldEZpbGwpOgorKyAgICAgICAg
KGdsOjpDb250ZXh0Ojppc1BvbHlnb25PZmZzZXRGaWxsRW5hYmxlZCk6CisrICAgICAgICAoZ2w6
OkNvbnRleHQ6OnNldFBvbHlnb25PZmZzZXRQYXJhbXMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0
OjpzZXRTYW1wbGVBbHBoYVRvQ292ZXJhZ2UpOgorKyAgICAgICAgKGdsOjpDb250ZXh0Ojppc1Nh
bXBsZUFscGhhVG9Db3ZlcmFnZUVuYWJsZWQpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzZXRT
YW1wbGVDb3ZlcmFnZSk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmlzU2FtcGxlQ292ZXJhZ2VF
bmFibGVkKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c2V0U2FtcGxlQ292ZXJhZ2VQYXJhbXMp
OgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzZXRTY2lzc29yVGVzdCk6CisrICAgICAgICAoZ2w6
OkNvbnRleHQ6OmlzU2Npc3NvclRlc3RFbmFibGVkKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6
c2V0RGl0aGVyKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6aXNEaXRoZXJFbmFibGVkKToKKysg
ICAgICAgIChnbDo6Q29udGV4dDo6c2V0TGluZVdpZHRoKToKKysgICAgICAgIChnbDo6Q29udGV4
dDo6c2V0R2VuZXJhdGVNaXBtYXBIaW50KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c2V0RnJh
Z21lbnRTaGFkZXJEZXJpdmF0aXZlSGludCk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnNldFZp
ZXdwb3J0UGFyYW1zKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c2V0U2Npc3NvclBhcmFtcyk6
CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnNldENvbG9yTWFzayk6CisrICAgICAgICAoZ2w6OkNv
bnRleHQ6OnNldERlcHRoTWFzayk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnNldEFjdGl2ZVNh
bXBsZXIpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRSZWFkRnJhbWVidWZmZXJIYW5kbGUp
OgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXREcmF3RnJhbWVidWZmZXJIYW5kbGUpOgorKyAg
ICAgICAgKGdsOjpDb250ZXh0OjpnZXRSZW5kZXJidWZmZXJIYW5kbGUpOgorKyAgICAgICAgKGds
OjpDb250ZXh0OjpnZXRBcnJheUJ1ZmZlckhhbmRsZSk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6
OmdldEFjdGl2ZVF1ZXJ5KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c2V0RW5hYmxlVmVydGV4
QXR0cmliQXJyYXkpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRWZXJ0ZXhBdHRyaWJTdGF0
ZSk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnNldFZlcnRleEF0dHJpYlN0YXRlKToKKysgICAg
ICAgIChnbDo6Q29udGV4dDo6Z2V0VmVydGV4QXR0cmliUG9pbnRlcik6CisrICAgICAgICAoZ2w6
OkNvbnRleHQ6OnNldFBhY2tBbGlnbm1lbnQpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRQ
YWNrQWxpZ25tZW50KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c2V0VW5wYWNrQWxpZ25tZW50
KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0VW5wYWNrQWxpZ25tZW50KToKKysgICAgICAg
IChnbDo6Q29udGV4dDo6c2V0UGFja1JldmVyc2VSb3dPcmRlcik6CisrICAgICAgICAoZ2w6OkNv
bnRleHQ6OmdldFBhY2tSZXZlcnNlUm93T3JkZXIpOgorKyAgICAgICAgKGdsOjpDb250ZXh0Ojpj
cmVhdGVCdWZmZXIpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpjcmVhdGVQcm9ncmFtKToKKysg
ICAgICAgIChnbDo6Q29udGV4dDo6Y3JlYXRlU2hhZGVyKToKKysgICAgICAgIChnbDo6Q29udGV4
dDo6Y3JlYXRlVGV4dHVyZSk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmNyZWF0ZVJlbmRlcmJ1
ZmZlcik6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmNyZWF0ZUZyYW1lYnVmZmVyKToKKysgICAg
ICAgIChnbDo6Q29udGV4dDo6Y3JlYXRlRmVuY2UpOgorKyAgICAgICAgKGdsOjpDb250ZXh0Ojpj
cmVhdGVRdWVyeSk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmRlbGV0ZUJ1ZmZlcik6CisrICAg
ICAgICAoZ2w6OkNvbnRleHQ6OmRlbGV0ZVNoYWRlcik6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6
OmRlbGV0ZVByb2dyYW0pOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpkZWxldGVUZXh0dXJlKToK
KysgICAgICAgIChnbDo6Q29udGV4dDo6ZGVsZXRlUmVuZGVyYnVmZmVyKToKKysgICAgICAgIChn
bDo6Q29udGV4dDo6ZGVsZXRlRnJhbWVidWZmZXIpOgorKyAgICAgICAgKGdsOjpDb250ZXh0Ojpk
ZWxldGVGZW5jZSk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmRlbGV0ZVF1ZXJ5KToKKysgICAg
ICAgIChnbDo6Q29udGV4dDo6Z2V0QnVmZmVyKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0
U2hhZGVyKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0UHJvZ3JhbSk6CisrICAgICAgICAo
Z2w6OkNvbnRleHQ6OmdldFRleHR1cmUpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRSZW5k
ZXJidWZmZXIpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRSZWFkRnJhbWVidWZmZXIpOgor
KyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXREcmF3RnJhbWVidWZmZXIpOgorKyAgICAgICAgKGds
OjpDb250ZXh0OjpiaW5kQXJyYXlCdWZmZXIpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpiaW5k
RWxlbWVudEFycmF5QnVmZmVyKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6YmluZFRleHR1cmUy
RCk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmJpbmRUZXh0dXJlQ3ViZU1hcCk6CisrICAgICAg
ICAoZ2w6OkNvbnRleHQ6OmJpbmRSZWFkRnJhbWVidWZmZXIpOgorKyAgICAgICAgKGdsOjpDb250
ZXh0OjpiaW5kRHJhd0ZyYW1lYnVmZmVyKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6YmluZFJl
bmRlcmJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnVzZVByb2dyYW0pOgorKyAgICAg
ICAgKGdsOjpDb250ZXh0OjpsaW5rUHJvZ3JhbSk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnNl
dFByb2dyYW1CaW5hcnkpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpiZWdpblF1ZXJ5KToKKysg
ICAgICAgIChnbDo6Q29udGV4dDo6ZW5kUXVlcnkpOgorKyAgICAgICAgKGdsOjpDb250ZXh0Ojpz
ZXRGcmFtZWJ1ZmZlclplcm8pOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzZXRSZW5kZXJidWZm
ZXJTdG9yYWdlKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0RnJhbWVidWZmZXIpOgorKyAg
ICAgICAgKGdsOjpDb250ZXh0OjpnZXRGZW5jZSk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6Omdl
dFF1ZXJ5KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0QXJyYXlCdWZmZXIpOgorKyAgICAg
ICAgKGdsOjpDb250ZXh0OjpnZXRFbGVtZW50QXJyYXlCdWZmZXIpOgorKyAgICAgICAgKGdsOjpD
b250ZXh0OjpnZXRDdXJyZW50UHJvZ3JhbUJpbmFyeSk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6
OmdldFRleHR1cmUyRCk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmdldFRleHR1cmVDdWJlTWFw
KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0U2FtcGxlclRleHR1cmUpOgorKyAgICAgICAg
KGdsOjpDb250ZXh0OjpnZXRCb29sZWFudik6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmdldEZs
b2F0dik6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmdldEludGVnZXJ2KToKKysgICAgICAgIChn
bDo6Q29udGV4dDo6Z2V0UXVlcnlQYXJhbWV0ZXJJbmZvKToKKysgICAgICAgIChnbDo6Q29udGV4
dDo6YXBwbHlSZW5kZXJUYXJnZXQpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjphcHBseVN0YXRl
KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6YXBwbHlTaGFkZXJzKToKKysgICAgICAgIChnbDo6
Q29udGV4dDo6YXBwbHlUZXh0dXJlcyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnJlYWRQaXhl
bHMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpjbGVhcik6CisrICAgICAgICAoZ2w6OkNvbnRl
eHQ6OmRyYXdBcnJheXMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpkcmF3RWxlbWVudHMpOgor
KyAgICAgICAgKGdsOjpDb250ZXh0OjpzeW5jKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6cmVj
b3JkSW52YWxpZEVudW0pOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpyZWNvcmRJbnZhbGlkVmFs
dWUpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpyZWNvcmRJbnZhbGlkT3BlcmF0aW9uKToKKysg
ICAgICAgIChnbDo6Q29udGV4dDo6cmVjb3JkT3V0T2ZNZW1vcnkpOgorKyAgICAgICAgKGdsOjpD
b250ZXh0OjpyZWNvcmRJbnZhbGlkRnJhbWVidWZmZXJPcGVyYXRpb24pOgorKyAgICAgICAgKGds
OjpDb250ZXh0OjpnZXRFcnJvcik6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmdldFJlc2V0U3Rh
dHVzKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6aXNSZXNldE5vdGlmaWNhdGlvbkVuYWJsZWQp
OgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRNYWpvclNoYWRlck1vZGVsKToKKysgICAgICAg
IChnbDo6Q29udGV4dDo6Z2V0TWF4aW11bVBvaW50U2l6ZSk6CisrICAgICAgICAoZ2w6OkNvbnRl
eHQ6OmdldE1heGltdW1Db21iaW5lZFRleHR1cmVJbWFnZVVuaXRzKToKKysgICAgICAgIChnbDo6
Q29udGV4dDo6Z2V0TWF4U3VwcG9ydGVkU2FtcGxlcyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6
OmdldE1heGltdW1SZW5kZXJUYXJnZXRzKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c3VwcG9y
dHNFdmVudFF1ZXJpZXMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzdXBwb3J0c09jY2x1c2lv
blF1ZXJpZXMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzdXBwb3J0c0JHUkFUZXh0dXJlcyk6
CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnN1cHBvcnRzRFhUMVRleHR1cmVzKToKKysgICAgICAg
IChnbDo6Q29udGV4dDo6c3VwcG9ydHNEWFQzVGV4dHVyZXMpOgorKyAgICAgICAgKGdsOjpDb250
ZXh0OjpzdXBwb3J0c0RYVDVUZXh0dXJlcyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnN1cHBv
cnRzRmxvYXQzMlRleHR1cmVzKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c3VwcG9ydHNGbG9h
dDMyTGluZWFyRmlsdGVyKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c3VwcG9ydHNGbG9hdDMy
UmVuZGVyYWJsZVRleHR1cmVzKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c3VwcG9ydHNGbG9h
dDE2VGV4dHVyZXMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzdXBwb3J0c0Zsb2F0MTZMaW5l
YXJGaWx0ZXIpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzdXBwb3J0c0Zsb2F0MTZSZW5kZXJh
YmxlVGV4dHVyZXMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRNYXhpbXVtUmVuZGVyYnVm
ZmVyRGltZW5zaW9uKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0TWF4aW11bVRleHR1cmVE
aW1lbnNpb24pOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRNYXhpbXVtQ3ViZVRleHR1cmVE
aW1lbnNpb24pOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRNYXhpbXVtVGV4dHVyZUxldmVs
KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c3VwcG9ydHNMdW1pbmFuY2VUZXh0dXJlcyk6Cisr
ICAgICAgICAoZ2w6OkNvbnRleHQ6OnN1cHBvcnRzTHVtaW5hbmNlQWxwaGFUZXh0dXJlcyk6Cisr
ICAgICAgICAoZ2w6OkNvbnRleHQ6OnN1cHBvcnRzRGVwdGhUZXh0dXJlcyk6CisrICAgICAgICAo
Z2w6OkNvbnRleHQ6OnN1cHBvcnRzMzJiaXRJbmRpY2VzKToKKysgICAgICAgIChnbDo6Q29udGV4
dDo6c3VwcG9ydHNOb25Qb3dlcjJUZXh0dXJlKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c3Vw
cG9ydHNJbnN0YW5jaW5nKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c3VwcG9ydHNUZXh0dXJl
RmlsdGVyQW5pc290cm9weSk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmdldFRleHR1cmVNYXhB
bmlzb3Ryb3B5KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0Q3VycmVudFJlYWRGb3JtYXRU
eXBlKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6ZGV0YWNoQnVmZmVyKToKKysgICAgICAgIChn
bDo6Q29udGV4dDo6ZGV0YWNoVGV4dHVyZSk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmRldGFj
aEZyYW1lYnVmZmVyKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6ZGV0YWNoUmVuZGVyYnVmZmVy
KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0SW5jb21wbGV0ZVRleHR1cmUpOgorKyAgICAg
ICAgKGdsOjpDb250ZXh0Ojpza2lwRHJhdyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnNldFZl
cnRleEF0dHJpYik6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnNldFZlcnRleEF0dHJpYkRpdmlz
b3IpOgorKyAgICAgICAgKGdsOjpDb250ZXh0Ojppbml0RXh0ZW5zaW9uU3RyaW5nKToKKysgICAg
ICAgIChnbDo6Q29udGV4dDo6Z2V0RXh0ZW5zaW9uU3RyaW5nKToKKysgICAgICAgIChnbDo6Q29u
dGV4dDo6aW5pdFJlbmRlcmVyU3RyaW5nKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0UmVu
ZGVyZXJTdHJpbmcpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpibGl0RnJhbWVidWZmZXIpOgor
KyAgICAgICAgKiBzcmMvbGliR0xFU3YyL0NvbnRleHQuaDogQWRkZWQuCisrICAgICAgICAoZ2w6
OlZlcnRleEF0dHJpYnV0ZTo6VmVydGV4QXR0cmlidXRlKToKKysgICAgICAgIChnbDo6VmVydGV4
QXR0cmlidXRlOjp0eXBlU2l6ZSk6CisrICAgICAgICAoZ2w6OlZlcnRleEF0dHJpYnV0ZTo6c3Ry
aWRlKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9GZW5jZS5jcHA6IEFkZGVkLgorKyAgICAg
ICAgKGdsOjpGZW5jZTo6RmVuY2UpOgorKyAgICAgICAgKGdsOjpGZW5jZTo6fkZlbmNlKToKKysg
ICAgICAgIChnbDo6RmVuY2U6OmlzRmVuY2UpOgorKyAgICAgICAgKGdsOjpGZW5jZTo6c2V0RmVu
Y2UpOgorKyAgICAgICAgKGdsOjpGZW5jZTo6dGVzdEZlbmNlKToKKysgICAgICAgIChnbDo6RmVu
Y2U6OmZpbmlzaEZlbmNlKToKKysgICAgICAgIChnbDo6RmVuY2U6OmdldEZlbmNlaXYpOgorKyAg
ICAgICAgKiBzcmMvbGliR0xFU3YyL0ZlbmNlLmg6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGli
R0xFU3YyL0Zsb2F0MTZUb0Zsb2F0MzIuY3BwOiBBZGRlZC4KKysgICAgICAgIChnbDo6ZmxvYXQx
NlRvRmxvYXQzMik6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvRmxvYXQxNlRvRmxvYXQzMi5w
eTogQWRkZWQuCisrICAgICAgICAoY29udmVydE1hbnRpc3NhKToKKysgICAgICAgIChjb252ZXJ0
RXhwb25lbnQpOgorKyAgICAgICAgKGNvbnZlcnRPZmZzZXQpOgorKyAgICAgICAgKiBzcmMvbGli
R0xFU3YyL0ZyYW1lYnVmZmVyLmNwcDogQWRkZWQuCisrICAgICAgICAoZ2w6OkZyYW1lYnVmZmVy
OjpGcmFtZWJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkZyYW1lYnVmZmVyOjp+RnJhbWVidWZmZXIp
OgorKyAgICAgICAgKGdsOjpGcmFtZWJ1ZmZlcjo6bG9va3VwUmVuZGVyYnVmZmVyKToKKysgICAg
ICAgIChnbDo6RnJhbWVidWZmZXI6OnNldENvbG9yYnVmZmVyKToKKysgICAgICAgIChnbDo6RnJh
bWVidWZmZXI6OnNldERlcHRoYnVmZmVyKToKKysgICAgICAgIChnbDo6RnJhbWVidWZmZXI6OnNl
dFN0ZW5jaWxidWZmZXIpOgorKyAgICAgICAgKGdsOjpGcmFtZWJ1ZmZlcjo6ZGV0YWNoVGV4dHVy
ZSk6CisrICAgICAgICAoZ2w6OkZyYW1lYnVmZmVyOjpkZXRhY2hSZW5kZXJidWZmZXIpOgorKyAg
ICAgICAgKGdsOjpGcmFtZWJ1ZmZlcjo6Z2V0UmVuZGVyVGFyZ2V0U2VyaWFsKToKKysgICAgICAg
IChnbDo6RnJhbWVidWZmZXI6OmdldERlcHRoYnVmZmVyU2VyaWFsKToKKysgICAgICAgIChnbDo6
RnJhbWVidWZmZXI6OmdldFN0ZW5jaWxidWZmZXJTZXJpYWwpOgorKyAgICAgICAgKGdsOjpGcmFt
ZWJ1ZmZlcjo6Z2V0Q29sb3JidWZmZXIpOgorKyAgICAgICAgKGdsOjpGcmFtZWJ1ZmZlcjo6Z2V0
RGVwdGhidWZmZXIpOgorKyAgICAgICAgKGdsOjpGcmFtZWJ1ZmZlcjo6Z2V0U3RlbmNpbGJ1ZmZl
cik6CisrICAgICAgICAoZ2w6OkZyYW1lYnVmZmVyOjpnZXREZXB0aE9yU3RlbmNpbGJ1ZmZlcik6
CisrICAgICAgICAoZ2w6OkZyYW1lYnVmZmVyOjpnZXRSZWFkQ29sb3JidWZmZXIpOgorKyAgICAg
ICAgKGdsOjpGcmFtZWJ1ZmZlcjo6Z2V0UmVhZENvbG9yYnVmZmVyVHlwZSk6CisrICAgICAgICAo
Z2w6OkZyYW1lYnVmZmVyOjpnZXRGaXJzdENvbG9yYnVmZmVyKToKKysgICAgICAgIChnbDo6RnJh
bWVidWZmZXI6OmdldENvbG9yYnVmZmVyVHlwZSk6CisrICAgICAgICAoZ2w6OkZyYW1lYnVmZmVy
OjpnZXREZXB0aGJ1ZmZlclR5cGUpOgorKyAgICAgICAgKGdsOjpGcmFtZWJ1ZmZlcjo6Z2V0U3Rl
bmNpbGJ1ZmZlclR5cGUpOgorKyAgICAgICAgKGdsOjpGcmFtZWJ1ZmZlcjo6Z2V0Q29sb3JidWZm
ZXJIYW5kbGUpOgorKyAgICAgICAgKGdsOjpGcmFtZWJ1ZmZlcjo6Z2V0RGVwdGhidWZmZXJIYW5k
bGUpOgorKyAgICAgICAgKGdsOjpGcmFtZWJ1ZmZlcjo6Z2V0U3RlbmNpbGJ1ZmZlckhhbmRsZSk6
CisrICAgICAgICAoZ2w6OkZyYW1lYnVmZmVyOjpnZXREcmF3QnVmZmVyU3RhdGUpOgorKyAgICAg
ICAgKGdsOjpGcmFtZWJ1ZmZlcjo6c2V0RHJhd0J1ZmZlclN0YXRlKToKKysgICAgICAgIChnbDo6
RnJhbWVidWZmZXI6OmlzRW5hYmxlZENvbG9yQXR0YWNobWVudCk6CisrICAgICAgICAoZ2w6OkZy
YW1lYnVmZmVyOjpoYXNFbmFibGVkQ29sb3JBdHRhY2htZW50KToKKysgICAgICAgIChnbDo6RnJh
bWVidWZmZXI6Omhhc1N0ZW5jaWwpOgorKyAgICAgICAgKGdsOjpGcmFtZWJ1ZmZlcjo6dXNpbmdF
eHRlbmRlZERyYXdCdWZmZXJzKToKKysgICAgICAgIChnbDo6RnJhbWVidWZmZXI6OmNvbXBsZXRl
bmVzcyk6CisrICAgICAgICAoZ2w6OkRlZmF1bHRGcmFtZWJ1ZmZlcjo6RGVmYXVsdEZyYW1lYnVm
ZmVyKToKKysgICAgICAgIChnbDo6RnJhbWVidWZmZXI6OmdldFNhbXBsZXMpOgorKyAgICAgICAg
KGdsOjpEZWZhdWx0RnJhbWVidWZmZXI6OmNvbXBsZXRlbmVzcyk6CisrICAgICAgICAqIHNyYy9s
aWJHTEVTdjIvRnJhbWVidWZmZXIuaDogQWRkZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIv
SGFuZGxlQWxsb2NhdG9yLmNwcDogQWRkZWQuCisrICAgICAgICAoZ2w6OkhhbmRsZUFsbG9jYXRv
cjo6SGFuZGxlQWxsb2NhdG9yKToKKysgICAgICAgIChnbDo6SGFuZGxlQWxsb2NhdG9yOjp+SGFu
ZGxlQWxsb2NhdG9yKToKKysgICAgICAgIChnbDo6SGFuZGxlQWxsb2NhdG9yOjpzZXRCYXNlSGFu
ZGxlKToKKysgICAgICAgIChnbDo6SGFuZGxlQWxsb2NhdG9yOjphbGxvY2F0ZSk6CisrICAgICAg
ICAoZ2w6OkhhbmRsZUFsbG9jYXRvcjo6cmVsZWFzZSk6CisrICAgICAgICAqIHNyYy9saWJHTEVT
djIvSGFuZGxlQWxsb2NhdG9yLmg6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1By
b2dyYW0uY3BwOiBBZGRlZC4KKysgICAgICAgIChnbDo6QXR0cmlidXRlQmluZGluZ3M6OkF0dHJp
YnV0ZUJpbmRpbmdzKToKKysgICAgICAgIChnbDo6QXR0cmlidXRlQmluZGluZ3M6On5BdHRyaWJ1
dGVCaW5kaW5ncyk6CisrICAgICAgICAoZ2w6OkluZm9Mb2c6OkluZm9Mb2cpOgorKyAgICAgICAg
KGdsOjpJbmZvTG9nOjp+SW5mb0xvZyk6CisrICAgICAgICAoZ2w6OkluZm9Mb2c6OmdldExlbmd0
aCk6CisrICAgICAgICAoZ2w6OkluZm9Mb2c6OmdldExvZyk6CisrICAgICAgICAoZ2w6OkluZm9M
b2c6OmFwcGVuZFNhbml0aXplZCk6CisrICAgICAgICAoZ2w6OkluZm9Mb2c6OmFwcGVuZCk6Cisr
ICAgICAgICAoZ2w6OkluZm9Mb2c6OnJlc2V0KToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6UHJv
Z3JhbSk6CisrICAgICAgICAoZ2w6OlByb2dyYW06On5Qcm9ncmFtKToKKysgICAgICAgIChnbDo6
UHJvZ3JhbTo6YXR0YWNoU2hhZGVyKToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6ZGV0YWNoU2hh
ZGVyKToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6Z2V0QXR0YWNoZWRTaGFkZXJzQ291bnQpOgor
KyAgICAgICAgKGdsOjpBdHRyaWJ1dGVCaW5kaW5nczo6YmluZEF0dHJpYnV0ZUxvY2F0aW9uKToK
KysgICAgICAgIChnbDo6UHJvZ3JhbTo6YmluZEF0dHJpYnV0ZUxvY2F0aW9uKToKKysgICAgICAg
IChnbDo6UHJvZ3JhbTo6bGluayk6CisrICAgICAgICAoZ2w6OkF0dHJpYnV0ZUJpbmRpbmdzOjpn
ZXRBdHRyaWJ1dGVCaW5kaW5nKToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6dW5saW5rKToKKysg
ICAgICAgIChnbDo6UHJvZ3JhbTo6aXNMaW5rZWQpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpn
ZXRQcm9ncmFtQmluYXJ5KToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6c2V0UHJvZ3JhbUJpbmFy
eSk6CisrICAgICAgICAoZ2w6OlByb2dyYW06OnJlbGVhc2UpOgorKyAgICAgICAgKGdsOjpQcm9n
cmFtOjphZGRSZWYpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpnZXRSZWZDb3VudCk6CisrICAg
ICAgICAoZ2w6OlByb2dyYW06OmdldFByb2dyYW1CaW5hcnlMZW5ndGgpOgorKyAgICAgICAgKGds
OjpQcm9ncmFtOjpnZXRJbmZvTG9nTGVuZ3RoKToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6Z2V0
SW5mb0xvZyk6CisrICAgICAgICAoZ2w6OlByb2dyYW06OmdldEF0dGFjaGVkU2hhZGVycyk6Cisr
ICAgICAgICAoZ2w6OlByb2dyYW06OmdldEFjdGl2ZUF0dHJpYnV0ZSk6CisrICAgICAgICAoZ2w6
OlByb2dyYW06OmdldEFjdGl2ZUF0dHJpYnV0ZUNvdW50KToKKysgICAgICAgIChnbDo6UHJvZ3Jh
bTo6Z2V0QWN0aXZlQXR0cmlidXRlTWF4TGVuZ3RoKToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6
Z2V0QWN0aXZlVW5pZm9ybSk6CisrICAgICAgICAoZ2w6OlByb2dyYW06OmdldEFjdGl2ZVVuaWZv
cm1Db3VudCk6CisrICAgICAgICAoZ2w6OlByb2dyYW06OmdldEFjdGl2ZVVuaWZvcm1NYXhMZW5n
dGgpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpmbGFnRm9yRGVsZXRpb24pOgorKyAgICAgICAg
KGdsOjpQcm9ncmFtOjppc0ZsYWdnZWRGb3JEZWxldGlvbik6CisrICAgICAgICAoZ2w6OlByb2dy
YW06OnZhbGlkYXRlKToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6aXNWYWxpZGF0ZWQpOgorKyAg
ICAgICAgKiBzcmMvbGliR0xFU3YyL1Byb2dyYW0uaDogQWRkZWQuCisrICAgICAgICAqIHNyYy9s
aWJHTEVTdjIvUHJvZ3JhbUJpbmFyeS5jcHA6IEFkZGVkLgorKyAgICAgICAgKGdsOjpzdHIpOgor
KyAgICAgICAgKGdsOjpVbmlmb3JtTG9jYXRpb246OlVuaWZvcm1Mb2NhdGlvbik6CisrICAgICAg
ICAoZ2w6OlByb2dyYW1CaW5hcnk6OlByb2dyYW1CaW5hcnkpOgorKyAgICAgICAgKGdsOjpQcm9n
cmFtQmluYXJ5Ojp+UHJvZ3JhbUJpbmFyeSk6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6
OmdldFNlcmlhbCk6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6Omlzc3VlU2VyaWFsKToK
KysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6Z2V0UGl4ZWxFeGVjdXRhYmxlKToKKysgICAg
ICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6Z2V0VmVydGV4RXhlY3V0YWJsZSk6CisrICAgICAgICAo
Z2w6OlByb2dyYW1CaW5hcnk6OmdldEdlb21ldHJ5RXhlY3V0YWJsZSk6CisrICAgICAgICAoZ2w6
OlByb2dyYW1CaW5hcnk6OmdldEF0dHJpYnV0ZUxvY2F0aW9uKToKKysgICAgICAgIChnbDo6UHJv
Z3JhbUJpbmFyeTo6Z2V0U2VtYW50aWNJbmRleCk6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5h
cnk6OmdldFVzZWRTYW1wbGVyUmFuZ2UpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5Ojp1
c2VzUG9pbnRTaXplKToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6dXNlc1BvaW50U3By
aXRlRW11bGF0aW9uKToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6dXNlc0dlb21ldHJ5
U2hhZGVyKToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6Z2V0U2FtcGxlck1hcHBpbmcp
OgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjpnZXRTYW1wbGVyVGV4dHVyZVR5cGUpOgor
KyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjpnZXRVbmlmb3JtTG9jYXRpb24pOgorKyAgICAg
ICAgKGdsOjpQcm9ncmFtQmluYXJ5OjpzZXRVbmlmb3JtMWZ2KToKKysgICAgICAgIChnbDo6UHJv
Z3JhbUJpbmFyeTo6c2V0VW5pZm9ybTJmdik6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6
OnNldFVuaWZvcm0zZnYpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjpzZXRVbmlmb3Jt
NGZ2KToKKysgICAgICAgIChnbDo6dHJhbnNwb3NlTWF0cml4KToKKysgICAgICAgIChnbDo6UHJv
Z3JhbUJpbmFyeTo6c2V0VW5pZm9ybU1hdHJpeDJmdik6CisrICAgICAgICAoZ2w6OlByb2dyYW1C
aW5hcnk6OnNldFVuaWZvcm1NYXRyaXgzZnYpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5
OjpzZXRVbmlmb3JtTWF0cml4NGZ2KToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6c2V0
VW5pZm9ybTFpdik6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OnNldFVuaWZvcm0yaXYp
OgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjpzZXRVbmlmb3JtM2l2KToKKysgICAgICAg
IChnbDo6UHJvZ3JhbUJpbmFyeTo6c2V0VW5pZm9ybTRpdik6CisrICAgICAgICAoZ2w6OlByb2dy
YW1CaW5hcnk6OmdldFVuaWZvcm1mdik6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6Omdl
dFVuaWZvcm1pdik6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OmRpcnR5QWxsVW5pZm9y
bXMpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjphcHBseVVuaWZvcm1zKToKKysgICAg
ICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6cGFja1ZhcnlpbmdzKToKKysgICAgICAgIChnbDo6UHJv
Z3JhbUJpbmFyeTo6bGlua1ZhcnlpbmdzKToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6
bG9hZCk6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OnNhdmUpOgorKyAgICAgICAgKGds
OjpQcm9ncmFtQmluYXJ5OjpnZXRMZW5ndGgpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5
OjpsaW5rKToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6bGlua0F0dHJpYnV0ZXMpOgor
KyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjpsaW5rVW5pZm9ybXMpOgorKyAgICAgICAgKGds
OjpQcm9ncmFtQmluYXJ5OjpkZWZpbmVVbmlmb3JtKToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJp
bmFyeTo6Z2VuZXJhdGVHZW9tZXRyeVNoYWRlckhMU0wpOgorKyAgICAgICAgKGdsOjpQcm9ncmFt
QmluYXJ5OjpnZW5lcmF0ZVBvaW50U3ByaXRlSExTTCk6CisrICAgICAgICAoZ2w6OlByb2dyYW1C
aW5hcnk6OmRlY29yYXRlQXR0cmlidXRlKToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6
aXNWYWxpZGF0ZWQpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjpnZXRBY3RpdmVBdHRy
aWJ1dGUpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjpnZXRBY3RpdmVBdHRyaWJ1dGVD
b3VudCk6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OmdldEFjdGl2ZUF0dHJpYnV0ZU1h
eExlbmd0aCk6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OmdldEFjdGl2ZVVuaWZvcm0p
OgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjpnZXRBY3RpdmVVbmlmb3JtQ291bnQpOgor
KyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjpnZXRBY3RpdmVVbmlmb3JtTWF4TGVuZ3RoKToK
KysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6dmFsaWRhdGUpOgorKyAgICAgICAgKGdsOjpQ
cm9ncmFtQmluYXJ5Ojp2YWxpZGF0ZVNhbXBsZXJzKToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJp
bmFyeTo6U2FtcGxlcjo6U2FtcGxlcik6CisrICAgICAgICAoZ2w6OkF0dHJpYnV0ZVNvcnRlcjo6
QXR0cmlidXRlU29ydGVyKToKKysgICAgICAgIChnbDo6QXR0cmlidXRlU29ydGVyOjpvcGVyYXRv
cigpKToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6c29ydEF0dHJpYnV0ZXNCeUxheW91
dCk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvUHJvZ3JhbUJpbmFyeS5oOiBBZGRlZC4KKysg
ICAgICAgIChnbDo6VW5pZm9ybUxvY2F0aW9uOjpVbmlmb3JtTG9jYXRpb24pOgorKyAgICAgICAg
KiBzcmMvbGliR0xFU3YyL1F1ZXJ5LmNwcDogQWRkZWQuCisrICAgICAgICAoZ2w6OlF1ZXJ5OjpR
dWVyeSk6CisrICAgICAgICAoZ2w6OlF1ZXJ5Ojp+UXVlcnkpOgorKyAgICAgICAgKGdsOjpRdWVy
eTo6YmVnaW4pOgorKyAgICAgICAgKGdsOjpRdWVyeTo6ZW5kKToKKysgICAgICAgIChnbDo6UXVl
cnk6OmdldFJlc3VsdCk6CisrICAgICAgICAoZ2w6OlF1ZXJ5Ojppc1Jlc3VsdEF2YWlsYWJsZSk6
CisrICAgICAgICAoZ2w6OlF1ZXJ5OjpnZXRUeXBlKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2
Mi9RdWVyeS5oOiBBZGRlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9SZW5kZXJidWZmZXIu
Y3BwOiBBZGRlZC4KKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVySW50ZXJmYWNlOjpSZW5kZXJi
dWZmZXJJbnRlcmZhY2UpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJJbnRlcmZhY2U6OmFk
ZFByb3h5UmVmKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVySW50ZXJmYWNlOjpyZWxlYXNl
UHJveHkpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJJbnRlcmZhY2U6OmdldFJlZFNpemUp
OgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJJbnRlcmZhY2U6OmdldEdyZWVuU2l6ZSk6Cisr
ICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlckludGVyZmFjZTo6Z2V0Qmx1ZVNpemUpOgorKyAgICAg
ICAgKGdsOjpSZW5kZXJidWZmZXJJbnRlcmZhY2U6OmdldEFscGhhU2l6ZSk6CisrICAgICAgICAo
Z2w6OlJlbmRlcmJ1ZmZlckludGVyZmFjZTo6Z2V0RGVwdGhTaXplKToKKysgICAgICAgIChnbDo6
UmVuZGVyYnVmZmVySW50ZXJmYWNlOjpnZXRTdGVuY2lsU2l6ZSk6CisrICAgICAgICAoZ2w6OlJl
bmRlcmJ1ZmZlclRleHR1cmUyRDo6UmVuZGVyYnVmZmVyVGV4dHVyZTJEKToKKysgICAgICAgIChn
bDo6UmVuZGVyYnVmZmVyVGV4dHVyZTJEOjp+UmVuZGVyYnVmZmVyVGV4dHVyZTJEKToKKysgICAg
ICAgIChnbDo6UmVuZGVyYnVmZmVyVGV4dHVyZTJEOjphZGRQcm94eVJlZik6CisrICAgICAgICAo
Z2w6OlJlbmRlcmJ1ZmZlclRleHR1cmUyRDo6cmVsZWFzZVByb3h5KToKKysgICAgICAgIChnbDo6
UmVuZGVyYnVmZmVyVGV4dHVyZTJEOjpnZXRSZW5kZXJUYXJnZXQpOgorKyAgICAgICAgKGdsOjpS
ZW5kZXJidWZmZXJUZXh0dXJlMkQ6OmdldERlcHRoU3RlbmNpbCk6CisrICAgICAgICAoZ2w6OlJl
bmRlcmJ1ZmZlclRleHR1cmUyRDo6Z2V0V2lkdGgpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZm
ZXJUZXh0dXJlMkQ6OmdldEhlaWdodCk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclRleHR1
cmUyRDo6Z2V0SW50ZXJuYWxGb3JtYXQpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJUZXh0
dXJlMkQ6OmdldEFjdHVhbEZvcm1hdCk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclRleHR1
cmUyRDo6Z2V0U2FtcGxlcyk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclRleHR1cmUyRDo6
Z2V0U2VyaWFsKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyVGV4dHVyZUN1YmVNYXA6OlJl
bmRlcmJ1ZmZlclRleHR1cmVDdWJlTWFwKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyVGV4
dHVyZUN1YmVNYXA6On5SZW5kZXJidWZmZXJUZXh0dXJlQ3ViZU1hcCk6CisrICAgICAgICAoZ2w6
OlJlbmRlcmJ1ZmZlclRleHR1cmVDdWJlTWFwOjphZGRQcm94eVJlZik6CisrICAgICAgICAoZ2w6
OlJlbmRlcmJ1ZmZlclRleHR1cmVDdWJlTWFwOjpyZWxlYXNlUHJveHkpOgorKyAgICAgICAgKGds
OjpSZW5kZXJidWZmZXJUZXh0dXJlQ3ViZU1hcDo6Z2V0UmVuZGVyVGFyZ2V0KToKKysgICAgICAg
IChnbDo6UmVuZGVyYnVmZmVyVGV4dHVyZUN1YmVNYXA6OmdldERlcHRoU3RlbmNpbCk6CisrICAg
ICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclRleHR1cmVDdWJlTWFwOjpnZXRXaWR0aCk6CisrICAgICAg
ICAoZ2w6OlJlbmRlcmJ1ZmZlclRleHR1cmVDdWJlTWFwOjpnZXRIZWlnaHQpOgorKyAgICAgICAg
KGdsOjpSZW5kZXJidWZmZXJUZXh0dXJlQ3ViZU1hcDo6Z2V0SW50ZXJuYWxGb3JtYXQpOgorKyAg
ICAgICAgKGdsOjpSZW5kZXJidWZmZXJUZXh0dXJlQ3ViZU1hcDo6Z2V0QWN0dWFsRm9ybWF0KToK
KysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyVGV4dHVyZUN1YmVNYXA6OmdldFNhbXBsZXMpOgor
KyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJUZXh0dXJlQ3ViZU1hcDo6Z2V0U2VyaWFsKToKKysg
ICAgICAgIChnbDo6UmVuZGVyYnVmZmVyOjpSZW5kZXJidWZmZXIpOgorKyAgICAgICAgKGdsOjpS
ZW5kZXJidWZmZXI6On5SZW5kZXJidWZmZXIpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXI6
OmFkZFJlZik6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlcjo6cmVsZWFzZSk6CisrICAgICAg
ICAoZ2w6OlJlbmRlcmJ1ZmZlcjo6Z2V0UmVuZGVyVGFyZ2V0KToKKysgICAgICAgIChnbDo6UmVu
ZGVyYnVmZmVyOjpnZXREZXB0aFN0ZW5jaWwpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXI6
OmdldFdpZHRoKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyOjpnZXRIZWlnaHQpOgorKyAg
ICAgICAgKGdsOjpSZW5kZXJidWZmZXI6OmdldEludGVybmFsRm9ybWF0KToKKysgICAgICAgIChn
bDo6UmVuZGVyYnVmZmVyOjpnZXRBY3R1YWxGb3JtYXQpOgorKyAgICAgICAgKGdsOjpSZW5kZXJi
dWZmZXI6OmdldFJlZFNpemUpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXI6OmdldEdyZWVu
U2l6ZSk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlcjo6Z2V0Qmx1ZVNpemUpOgorKyAgICAg
ICAgKGdsOjpSZW5kZXJidWZmZXI6OmdldEFscGhhU2l6ZSk6CisrICAgICAgICAoZ2w6OlJlbmRl
cmJ1ZmZlcjo6Z2V0RGVwdGhTaXplKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyOjpnZXRT
dGVuY2lsU2l6ZSk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlcjo6Z2V0U2FtcGxlcyk6Cisr
ICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlcjo6Z2V0U2VyaWFsKToKKysgICAgICAgIChnbDo6UmVu
ZGVyYnVmZmVyOjpzZXRTdG9yYWdlKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyU3RvcmFn
ZTo6UmVuZGVyYnVmZmVyU3RvcmFnZSk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclN0b3Jh
Z2U6On5SZW5kZXJidWZmZXJTdG9yYWdlKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyU3Rv
cmFnZTo6Z2V0UmVuZGVyVGFyZ2V0KToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyU3RvcmFn
ZTo6Z2V0RGVwdGhTdGVuY2lsKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyU3RvcmFnZTo6
Z2V0V2lkdGgpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJTdG9yYWdlOjpnZXRIZWlnaHQp
OgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJTdG9yYWdlOjpnZXRJbnRlcm5hbEZvcm1hdCk6
CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclN0b3JhZ2U6OmdldEFjdHVhbEZvcm1hdCk6Cisr
ICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclN0b3JhZ2U6OmdldFNhbXBsZXMpOgorKyAgICAgICAg
KGdsOjpSZW5kZXJidWZmZXJTdG9yYWdlOjpnZXRTZXJpYWwpOgorKyAgICAgICAgKGdsOjpSZW5k
ZXJidWZmZXJTdG9yYWdlOjppc3N1ZVNlcmlhbCk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZl
clN0b3JhZ2U6Omlzc3VlQ3ViZVNlcmlhbHMpOgorKyAgICAgICAgKGdsOjpDb2xvcmJ1ZmZlcjo6
Q29sb3JidWZmZXIpOgorKyAgICAgICAgKGdsOjpDb2xvcmJ1ZmZlcjo6fkNvbG9yYnVmZmVyKToK
KysgICAgICAgIChnbDo6Q29sb3JidWZmZXI6OmdldFJlbmRlclRhcmdldCk6CisrICAgICAgICAo
Z2w6OkRlcHRoU3RlbmNpbGJ1ZmZlcjo6RGVwdGhTdGVuY2lsYnVmZmVyKToKKysgICAgICAgIChn
bDo6RGVwdGhTdGVuY2lsYnVmZmVyOjp+RGVwdGhTdGVuY2lsYnVmZmVyKToKKysgICAgICAgIChn
bDo6RGVwdGhTdGVuY2lsYnVmZmVyOjpnZXREZXB0aFN0ZW5jaWwpOgorKyAgICAgICAgKGdsOjpE
ZXB0aGJ1ZmZlcjo6RGVwdGhidWZmZXIpOgorKyAgICAgICAgKGdsOjpEZXB0aGJ1ZmZlcjo6fkRl
cHRoYnVmZmVyKToKKysgICAgICAgIChnbDo6U3RlbmNpbGJ1ZmZlcjo6U3RlbmNpbGJ1ZmZlcik6
CisrICAgICAgICAoZ2w6OlN0ZW5jaWxidWZmZXI6On5TdGVuY2lsYnVmZmVyKToKKysgICAgICAg
ICogc3JjL2xpYkdMRVN2Mi9SZW5kZXJidWZmZXIuaDogQWRkZWQuCisrICAgICAgICAoZ2w6OlJl
bmRlcmJ1ZmZlckludGVyZmFjZTo6flJlbmRlcmJ1ZmZlckludGVyZmFjZSk6CisrICAgICAgICAq
IHNyYy9saWJHTEVTdjIvUmVzb3VyY2VNYW5hZ2VyLmNwcDogQWRkZWQuCisrICAgICAgICAoZ2w6
OlJlc291cmNlTWFuYWdlcjo6UmVzb3VyY2VNYW5hZ2VyKToKKysgICAgICAgIChnbDo6UmVzb3Vy
Y2VNYW5hZ2VyOjp+UmVzb3VyY2VNYW5hZ2VyKToKKysgICAgICAgIChnbDo6UmVzb3VyY2VNYW5h
Z2VyOjphZGRSZWYpOgorKyAgICAgICAgKGdsOjpSZXNvdXJjZU1hbmFnZXI6OnJlbGVhc2UpOgor
KyAgICAgICAgKGdsOjpSZXNvdXJjZU1hbmFnZXI6OmNyZWF0ZUJ1ZmZlcik6CisrICAgICAgICAo
Z2w6OlJlc291cmNlTWFuYWdlcjo6Y3JlYXRlU2hhZGVyKToKKysgICAgICAgIChnbDo6UmVzb3Vy
Y2VNYW5hZ2VyOjpjcmVhdGVQcm9ncmFtKToKKysgICAgICAgIChnbDo6UmVzb3VyY2VNYW5hZ2Vy
OjpjcmVhdGVUZXh0dXJlKToKKysgICAgICAgIChnbDo6UmVzb3VyY2VNYW5hZ2VyOjpjcmVhdGVS
ZW5kZXJidWZmZXIpOgorKyAgICAgICAgKGdsOjpSZXNvdXJjZU1hbmFnZXI6OmRlbGV0ZUJ1ZmZl
cik6CisrICAgICAgICAoZ2w6OlJlc291cmNlTWFuYWdlcjo6ZGVsZXRlU2hhZGVyKToKKysgICAg
ICAgIChnbDo6UmVzb3VyY2VNYW5hZ2VyOjpkZWxldGVQcm9ncmFtKToKKysgICAgICAgIChnbDo6
UmVzb3VyY2VNYW5hZ2VyOjpkZWxldGVUZXh0dXJlKToKKysgICAgICAgIChnbDo6UmVzb3VyY2VN
YW5hZ2VyOjpkZWxldGVSZW5kZXJidWZmZXIpOgorKyAgICAgICAgKGdsOjpSZXNvdXJjZU1hbmFn
ZXI6OmdldEJ1ZmZlcik6CisrICAgICAgICAoZ2w6OlJlc291cmNlTWFuYWdlcjo6Z2V0U2hhZGVy
KToKKysgICAgICAgIChnbDo6UmVzb3VyY2VNYW5hZ2VyOjpnZXRUZXh0dXJlKToKKysgICAgICAg
IChnbDo6UmVzb3VyY2VNYW5hZ2VyOjpnZXRQcm9ncmFtKToKKysgICAgICAgIChnbDo6UmVzb3Vy
Y2VNYW5hZ2VyOjpnZXRSZW5kZXJidWZmZXIpOgorKyAgICAgICAgKGdsOjpSZXNvdXJjZU1hbmFn
ZXI6OnNldFJlbmRlcmJ1ZmZlcik6CisrICAgICAgICAoZ2w6OlJlc291cmNlTWFuYWdlcjo6Y2hl
Y2tCdWZmZXJBbGxvY2F0aW9uKToKKysgICAgICAgIChnbDo6UmVzb3VyY2VNYW5hZ2VyOjpjaGVj
a1RleHR1cmVBbGxvY2F0aW9uKToKKysgICAgICAgIChnbDo6UmVzb3VyY2VNYW5hZ2VyOjpjaGVj
a1JlbmRlcmJ1ZmZlckFsbG9jYXRpb24pOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1Jlc291
cmNlTWFuYWdlci5oOiBBZGRlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9TaGFkZXIuY3Bw
OiBBZGRlZC4KKysgICAgICAgIChnbDo6U2hhZGVyOjpTaGFkZXIpOgorKyAgICAgICAgKGdsOjpT
aGFkZXI6On5TaGFkZXIpOgorKyAgICAgICAgKGdsOjpTaGFkZXI6OmdldEhhbmRsZSk6CisrICAg
ICAgICAoZ2w6OlNoYWRlcjo6c2V0U291cmNlKToKKysgICAgICAgIChnbDo6U2hhZGVyOjpnZXRJ
bmZvTG9nTGVuZ3RoKToKKysgICAgICAgIChnbDo6U2hhZGVyOjpnZXRJbmZvTG9nKToKKysgICAg
ICAgIChnbDo6U2hhZGVyOjpnZXRTb3VyY2VMZW5ndGgpOgorKyAgICAgICAgKGdsOjpTaGFkZXI6
OmdldFRyYW5zbGF0ZWRTb3VyY2VMZW5ndGgpOgorKyAgICAgICAgKGdsOjpTaGFkZXI6OmdldFNv
dXJjZUltcGwpOgorKyAgICAgICAgKGdsOjpTaGFkZXI6OmdldFNvdXJjZSk6CisrICAgICAgICAo
Z2w6OlNoYWRlcjo6Z2V0VHJhbnNsYXRlZFNvdXJjZSk6CisrICAgICAgICAoZ2w6OlNoYWRlcjo6
Z2V0VW5pZm9ybXMpOgorKyAgICAgICAgKGdsOjpTaGFkZXI6OmlzQ29tcGlsZWQpOgorKyAgICAg
ICAgKGdsOjpTaGFkZXI6OmdldEhMU0wpOgorKyAgICAgICAgKGdsOjpTaGFkZXI6OmFkZFJlZik6
CisrICAgICAgICAoZ2w6OlNoYWRlcjo6cmVsZWFzZSk6CisrICAgICAgICAoZ2w6OlNoYWRlcjo6
Z2V0UmVmQ291bnQpOgorKyAgICAgICAgKGdsOjpTaGFkZXI6OmlzRmxhZ2dlZEZvckRlbGV0aW9u
KToKKysgICAgICAgIChnbDo6U2hhZGVyOjpmbGFnRm9yRGVsZXRpb24pOgorKyAgICAgICAgKGds
OjpTaGFkZXI6OmluaXRpYWxpemVDb21waWxlcik6CisrICAgICAgICAoZ2w6OlNoYWRlcjo6cmVs
ZWFzZUNvbXBpbGVyKToKKysgICAgICAgIChnbDo6U2hhZGVyOjpwYXJzZVZhcnlpbmdzKToKKysg
ICAgICAgIChnbDo6U2hhZGVyOjpyZXNldFZhcnlpbmdzUmVnaXN0ZXJBc3NpZ25tZW50KToKKysg
ICAgICAgIChnbDo6U2hhZGVyOjp1bmNvbXBpbGUpOgorKyAgICAgICAgKGdsOjpTaGFkZXI6OmNv
bXBpbGVUb0hMU0wpOgorKyAgICAgICAgKGdsOjpTaGFkZXI6OnBhcnNlVHlwZSk6CisrICAgICAg
ICAoZ2w6OlNoYWRlcjo6Y29tcGFyZVZhcnlpbmcpOgorKyAgICAgICAgKGdsOjpWZXJ0ZXhTaGFk
ZXI6OlZlcnRleFNoYWRlcik6CisrICAgICAgICAoZ2w6OlZlcnRleFNoYWRlcjo6flZlcnRleFNo
YWRlcik6CisrICAgICAgICAoZ2w6OlZlcnRleFNoYWRlcjo6Z2V0VHlwZSk6CisrICAgICAgICAo
Z2w6OlZlcnRleFNoYWRlcjo6dW5jb21waWxlKToKKysgICAgICAgIChnbDo6VmVydGV4U2hhZGVy
Ojpjb21waWxlKToKKysgICAgICAgIChnbDo6VmVydGV4U2hhZGVyOjpnZXRTZW1hbnRpY0luZGV4
KToKKysgICAgICAgIChnbDo6VmVydGV4U2hhZGVyOjpwYXJzZUF0dHJpYnV0ZXMpOgorKyAgICAg
ICAgKGdsOjpGcmFnbWVudFNoYWRlcjo6RnJhZ21lbnRTaGFkZXIpOgorKyAgICAgICAgKGdsOjpG
cmFnbWVudFNoYWRlcjo6fkZyYWdtZW50U2hhZGVyKToKKysgICAgICAgIChnbDo6RnJhZ21lbnRT
aGFkZXI6OmdldFR5cGUpOgorKyAgICAgICAgKGdsOjpGcmFnbWVudFNoYWRlcjo6Y29tcGlsZSk6
CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvU2hhZGVyLmg6IEFkZGVkLgorKyAgICAgICAgKGds
OjpWYXJ5aW5nOjpWYXJ5aW5nKToKKysgICAgICAgIChnbDo6QXR0cmlidXRlOjpBdHRyaWJ1dGUp
OgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1RleHR1cmUuY3BwOiBBZGRlZC4KKysgICAgICAg
IChnbDo6VGV4dHVyZTo6VGV4dHVyZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6On5UZXh0dXJl
KToKKysgICAgICAgIChnbDo6VGV4dHVyZTo6c2V0TWluRmlsdGVyKToKKysgICAgICAgIChnbDo6
VGV4dHVyZTo6c2V0TWFnRmlsdGVyKToKKysgICAgICAgIChnbDo6VGV4dHVyZTo6c2V0V3JhcFMp
OgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpzZXRXcmFwVCk6CisrICAgICAgICAoZ2w6OlRleHR1
cmU6OnNldE1heEFuaXNvdHJvcHkpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpzZXRVc2FnZSk6
CisrICAgICAgICAoZ2w6OlRleHR1cmU6OmdldE1pbkZpbHRlcik6CisrICAgICAgICAoZ2w6OlRl
eHR1cmU6OmdldE1hZ0ZpbHRlcik6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OmdldFdyYXBTKToK
KysgICAgICAgIChnbDo6VGV4dHVyZTo6Z2V0V3JhcFQpOgorKyAgICAgICAgKGdsOjpUZXh0dXJl
OjpnZXRNYXhBbmlzb3Ryb3B5KToKKysgICAgICAgIChnbDo6VGV4dHVyZTo6Z2V0TG9kT2Zmc2V0
KToKKysgICAgICAgIChnbDo6VGV4dHVyZTo6Z2V0U2FtcGxlclN0YXRlKToKKysgICAgICAgIChn
bDo6VGV4dHVyZTo6Z2V0VXNhZ2UpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjppc01pcG1hcEZp
bHRlcmVkKToKKysgICAgICAgIChnbDo6VGV4dHVyZTo6c2V0SW1hZ2UpOgorKyAgICAgICAgKGds
OjpUZXh0dXJlOjpzZXRDb21wcmVzc2VkSW1hZ2UpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpz
dWJJbWFnZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OnN1YkltYWdlQ29tcHJlc3NlZCk6Cisr
ICAgICAgICAoZ2w6OlRleHR1cmU6OmdldE5hdGl2ZVRleHR1cmUpOgorKyAgICAgICAgKGdsOjpU
ZXh0dXJlOjpoYXNEaXJ0eUltYWdlcyk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OnJlc2V0RGly
dHkpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpnZXRUZXh0dXJlU2VyaWFsKToKKysgICAgICAg
IChnbDo6VGV4dHVyZTo6Z2V0UmVuZGVyVGFyZ2V0U2VyaWFsKToKKysgICAgICAgIChnbDo6VGV4
dHVyZTo6aXNJbW11dGFibGUpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpjcmVhdGlvbkxldmVs
cyk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6VGV4dHVyZTJEKToKKysgICAgICAgIChnbDo6
VGV4dHVyZTJEOjp+VGV4dHVyZTJEKToKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjphZGRQcm94
eVJlZik6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6cmVsZWFzZVByb3h5KToKKysgICAgICAg
IChnbDo6VGV4dHVyZTJEOjpnZXRUYXJnZXQpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlMkQ6Omdl
dFdpZHRoKToKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjpnZXRIZWlnaHQpOgorKyAgICAgICAg
KGdsOjpUZXh0dXJlMkQ6OmdldEludGVybmFsRm9ybWF0KToKKysgICAgICAgIChnbDo6VGV4dHVy
ZTJEOjpnZXRBY3R1YWxGb3JtYXQpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlMkQ6OnJlZGVmaW5l
SW1hZ2UpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlMkQ6OnNldEltYWdlKToKKysgICAgICAgIChn
bDo6VGV4dHVyZTJEOjpiaW5kVGV4SW1hZ2UpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlMkQ6OnJl
bGVhc2VUZXhJbWFnZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6c2V0Q29tcHJlc3NlZElt
YWdlKToKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjpjb21taXRSZWN0KToKKysgICAgICAgIChn
bDo6VGV4dHVyZTJEOjpzdWJJbWFnZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6c3ViSW1h
Z2VDb21wcmVzc2VkKToKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjpjb3B5SW1hZ2UpOgorKyAg
ICAgICAgKGdsOjpUZXh0dXJlMkQ6OmNvcHlTdWJJbWFnZSk6CisrICAgICAgICAoZ2w6OlRleHR1
cmUyRDo6c3RvcmFnZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6aXNTYW1wbGVyQ29tcGxl
dGUpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlMkQ6OmlzTWlwbWFwQ29tcGxldGUpOgorKyAgICAg
ICAgKGdsOjpUZXh0dXJlMkQ6OmlzQ29tcHJlc3NlZCk6CisrICAgICAgICAoZ2w6OlRleHR1cmUy
RDo6aXNEZXB0aCk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6Y3JlYXRlVGV4dHVyZSk6Cisr
ICAgICAgICAoZ2w6OlRleHR1cmUyRDo6dXBkYXRlVGV4dHVyZSk6CisrICAgICAgICAoZ2w6OlRl
eHR1cmUyRDo6Y29udmVydFRvUmVuZGVyVGFyZ2V0KToKKysgICAgICAgIChnbDo6VGV4dHVyZTJE
OjpnZW5lcmF0ZU1pcG1hcHMpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlMkQ6OmdldFJlbmRlcmJ1
ZmZlcik6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6Z2V0UmVuZGVyVGFyZ2V0KToKKysgICAg
ICAgIChnbDo6VGV4dHVyZTJEOjpnZXREZXB0aFN0ZW5jaWwpOgorKyAgICAgICAgKGdsOjpUZXh0
dXJlMkQ6OmxldmVsQ291bnQpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlMkQ6OmdldFN0b3JhZ2Up
OgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6VGV4dHVyZUN1YmVNYXApOgorKyAgICAg
ICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6flRleHR1cmVDdWJlTWFwKToKKysgICAgICAgIChnbDo6
VGV4dHVyZUN1YmVNYXA6OmFkZFByb3h5UmVmKToKKysgICAgICAgIChnbDo6VGV4dHVyZUN1YmVN
YXA6OnJlbGVhc2VQcm94eSk6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpnZXRUYXJn
ZXQpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6Z2V0V2lkdGgpOgorKyAgICAgICAg
KGdsOjpUZXh0dXJlQ3ViZU1hcDo6Z2V0SGVpZ2h0KToKKysgICAgICAgIChnbDo6VGV4dHVyZUN1
YmVNYXA6OmdldEludGVybmFsRm9ybWF0KToKKysgICAgICAgIChnbDo6VGV4dHVyZUN1YmVNYXA6
OmdldEFjdHVhbEZvcm1hdCk6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpzZXRJbWFn
ZVBvc1gpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6c2V0SW1hZ2VOZWdYKToKKysg
ICAgICAgIChnbDo6VGV4dHVyZUN1YmVNYXA6OnNldEltYWdlUG9zWSk6CisrICAgICAgICAoZ2w6
OlRleHR1cmVDdWJlTWFwOjpzZXRJbWFnZU5lZ1kpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3Vi
ZU1hcDo6c2V0SW1hZ2VQb3NaKToKKysgICAgICAgIChnbDo6VGV4dHVyZUN1YmVNYXA6OnNldElt
YWdlTmVnWik6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpzZXRDb21wcmVzc2VkSW1h
Z2UpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6Y29tbWl0UmVjdCk6CisrICAgICAg
ICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpzdWJJbWFnZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmVD
dWJlTWFwOjpzdWJJbWFnZUNvbXByZXNzZWQpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1h
cDo6aXNTYW1wbGVyQ29tcGxldGUpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6aXND
dWJlQ29tcGxldGUpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6aXNNaXBtYXBDdWJl
Q29tcGxldGUpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6aXNDb21wcmVzc2VkKToK
KysgICAgICAgIChnbDo6VGV4dHVyZUN1YmVNYXA6OmNyZWF0ZVRleHR1cmUpOgorKyAgICAgICAg
KGdsOjpUZXh0dXJlQ3ViZU1hcDo6dXBkYXRlVGV4dHVyZSk6CisrICAgICAgICAoZ2w6OlRleHR1
cmVDdWJlTWFwOjpjb252ZXJ0VG9SZW5kZXJUYXJnZXQpOgorKyAgICAgICAgKGdsOjpUZXh0dXJl
Q3ViZU1hcDo6c2V0SW1hZ2UpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6ZmFjZUlu
ZGV4KToKKysgICAgICAgIChnbDo6VGV4dHVyZUN1YmVNYXA6OnJlZGVmaW5lSW1hZ2UpOgorKyAg
ICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6Y29weUltYWdlKToKKysgICAgICAgIChnbDo6VGV4
dHVyZUN1YmVNYXA6OmNvcHlTdWJJbWFnZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFw
OjpzdG9yYWdlKToKKysgICAgICAgIChnbDo6VGV4dHVyZUN1YmVNYXA6OmdlbmVyYXRlTWlwbWFw
cyk6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpnZXRSZW5kZXJidWZmZXIpOgorKyAg
ICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6Z2V0UmVuZGVyVGFyZ2V0KToKKysgICAgICAgIChn
bDo6VGV4dHVyZUN1YmVNYXA6OmxldmVsQ291bnQpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3Vi
ZU1hcDo6Z2V0U3RvcmFnZSk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvVGV4dHVyZS5oOiBB
ZGRlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9Vbmlmb3JtLmNwcDogQWRkZWQuCisrICAg
ICAgICAoZ2w6OlVuaWZvcm06OlVuaWZvcm0pOgorKyAgICAgICAgKGdsOjpVbmlmb3JtOjp+VW5p
Zm9ybSk6CisrICAgICAgICAoZ2w6OlVuaWZvcm06OmlzQXJyYXkpOgorKyAgICAgICAgKGdsOjpV
bmlmb3JtOjplbGVtZW50Q291bnQpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1VuaWZvcm0u
aDogQWRkZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvYW5nbGV0eXBlcy5oOiBBZGRlZC4K
KysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9jb25zdGFudHMuaDogQWRkZWQuCisrICAgICAgICAq
IHNyYy9saWJHTEVTdjIvbGliR0xFU3YyLmNwcDogQWRkZWQuCisrICAgICAgICAodmFsaWRJbWFn
ZVNpemUpOgorKyAgICAgICAgKGNoZWNrVGV4dHVyZUZvcm1hdFR5cGUpOgorKyAgICAgICAgKHZh
bGlkYXRlU3ViSW1hZ2VQYXJhbXMyRCk6CisrICAgICAgICAodmFsaWRhdGVTdWJJbWFnZVBhcmFt
c0N1YmUpOgorKyAgICAgICAgKHZhbGlkUmVhZEZvcm1hdFR5cGUpOgorKyAgICAgICAgKiBzcmMv
bGliR0xFU3YyL2xpYkdMRVN2Mi5kZWY6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3Yy
L2xpYkdMRVN2Mi5yYzogQWRkZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvbGliR0xFU3Yy
LnZjeHByb2o6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL2xpYkdMRVN2Mi52Y3hw
cm9qLmZpbHRlcnM6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL21haW4uY3BwOiBB
ZGRlZC4KKysgICAgICAgIChEbGxNYWluKToKKysgICAgICAgIChnbDo6bWFrZUN1cnJlbnQpOgor
KyAgICAgICAgKGdsOjpnZXRDb250ZXh0KToKKysgICAgICAgIChnbDo6Z2V0Tm9uTG9zdENvbnRl
eHQpOgorKyAgICAgICAgKGdsOjpnZXREaXNwbGF5KToKKysgICAgICAgIChnbDo6ZXJyb3IpOgor
KyAgICAgICAgKiBzcmMvbGliR0xFU3YyL21haW4uaDogQWRkZWQuCisrICAgICAgICAoZ2w6OmVy
cm9yKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9tYXRodXRpbC5oOiBBZGRlZC4KKysgICAg
ICAgIChnbDo6VmVjdG9yNDo6VmVjdG9yNCk6CisrICAgICAgICAoZ2w6OmlzUG93Mik6CisrICAg
ICAgICAoZ2w6OmxvZzIpOgorKyAgICAgICAgKGdsOjpjZWlsUG93Mik6CisrICAgICAgICAoZ2w6
OmNsYW1wKToKKysgICAgICAgIChnbDo6Y2xhbXAwMSk6CisrICAgICAgICAoZ2w6OnVub3JtKToK
KysgICAgICAgIChnbDo6c3VwcG9ydHNTU0UyKToKKysgICAgICAgIChnbDo6ZmxvYXQzMlRvRmxv
YXQxNik6CisrICAgICAgICAocng6OlJhbmdlOjpSYW5nZSk6CisrICAgICAgICAqIHNyYy9saWJH
TEVTdjIvcHJlY29tcGlsZWQuY3BwOiBBZGRlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9w
cmVjb21waWxlZC5oOiBBZGRlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlcjog
QWRkZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvQmxpdC5jcHA6IEFkZGVk
LgorKyAgICAgICAgKHJ4OjpCbGl0OjpCbGl0KToKKysgICAgICAgIChyeDo6QmxpdDo6fkJsaXQp
OgorKyAgICAgICAgKHJ4OjpCbGl0Ojppbml0R2VvbWV0cnkpOgorKyAgICAgICAgKHJ4OjpCbGl0
OjpzZXRTaGFkZXIpOgorKyAgICAgICAgKHJ4OjpCbGl0OjpzZXRWZXJ0ZXhTaGFkZXIpOgorKyAg
ICAgICAgKHJ4OjpCbGl0OjpzZXRQaXhlbFNoYWRlcik6CisrICAgICAgICAocng6OkJsaXQ6Omdl
dFN1cmZhY2VSZWN0KToKKysgICAgICAgIChyeDo6QmxpdDo6Ym94RmlsdGVyKToKKysgICAgICAg
IChyeDo6QmxpdDo6Y29weSk6CisrICAgICAgICAocng6OkJsaXQ6OmZvcm1hdENvbnZlcnQpOgor
KyAgICAgICAgKHJ4OjpCbGl0OjpzZXRGb3JtYXRDb252ZXJ0U2hhZGVycyk6CisrICAgICAgICAo
cng6OkJsaXQ6OmNvcHlTdXJmYWNlVG9UZXh0dXJlKToKKysgICAgICAgIChyeDo6QmxpdDo6c2V0
Vmlld3BvcnQpOgorKyAgICAgICAgKHJ4OjpCbGl0OjpzZXRDb21tb25CbGl0U3RhdGUpOgorKyAg
ICAgICAgKHJ4OjpCbGl0OjpyZW5kZXIpOgorKyAgICAgICAgKHJ4OjpCbGl0OjpzYXZlU3RhdGUp
OgorKyAgICAgICAgKHJ4OjpCbGl0OjpyZXN0b3JlU3RhdGUpOgorKyAgICAgICAgKiBzcmMvbGli
R0xFU3YyL3JlbmRlcmVyL0JsaXQuaDogQWRkZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIv
cmVuZGVyZXIvQnVmZmVyU3RvcmFnZS5jcHA6IEFkZGVkLgorKyAgICAgICAgKHJ4OjpCdWZmZXJT
dG9yYWdlOjpCdWZmZXJTdG9yYWdlKToKKysgICAgICAgIChyeDo6QnVmZmVyU3RvcmFnZTo6fkJ1
ZmZlclN0b3JhZ2UpOgorKyAgICAgICAgKHJ4OjpCdWZmZXJTdG9yYWdlOjpnZXRTZXJpYWwpOgor
KyAgICAgICAgKHJ4OjpCdWZmZXJTdG9yYWdlOjp1cGRhdGVTZXJpYWwpOgorKyAgICAgICAgKHJ4
OjpCdWZmZXJTdG9yYWdlOjptYXJrQnVmZmVyVXNhZ2UpOgorKyAgICAgICAgKiBzcmMvbGliR0xF
U3YyL3JlbmRlcmVyL0J1ZmZlclN0b3JhZ2UuaDogQWRkZWQuCisrICAgICAgICAqIHNyYy9saWJH
TEVTdjIvcmVuZGVyZXIvQnVmZmVyU3RvcmFnZTExLmNwcDogQWRkZWQuCisrICAgICAgICAocng6
OkJ1ZmZlclN0b3JhZ2UxMTo6QnVmZmVyU3RvcmFnZTExKToKKysgICAgICAgIChyeDo6QnVmZmVy
U3RvcmFnZTExOjp+QnVmZmVyU3RvcmFnZTExKToKKysgICAgICAgIChyeDo6QnVmZmVyU3RvcmFn
ZTExOjptYWtlQnVmZmVyU3RvcmFnZTExKToKKysgICAgICAgIChyeDo6QnVmZmVyU3RvcmFnZTEx
OjpnZXREYXRhKToKKysgICAgICAgIChyeDo6QnVmZmVyU3RvcmFnZTExOjpzZXREYXRhKToKKysg
ICAgICAgIChyeDo6QnVmZmVyU3RvcmFnZTExOjpjbGVhcik6CisrICAgICAgICAocng6OkJ1ZmZl
clN0b3JhZ2UxMTo6Z2V0U2l6ZSk6CisrICAgICAgICAocng6OkJ1ZmZlclN0b3JhZ2UxMTo6c3Vw
cG9ydHNEaXJlY3RCaW5kaW5nKToKKysgICAgICAgIChyeDo6QnVmZmVyU3RvcmFnZTExOjptYXJr
QnVmZmVyVXNhZ2UpOgorKyAgICAgICAgKHJ4OjpCdWZmZXJTdG9yYWdlMTE6OmdldEJ1ZmZlcik6
CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvQnVmZmVyU3RvcmFnZTExLmg6IEFk
ZGVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL0J1ZmZlclN0b3JhZ2U5LmNw
cDogQWRkZWQuCisrICAgICAgICAocng6OkJ1ZmZlclN0b3JhZ2U5OjpCdWZmZXJTdG9yYWdlOSk6
CisrICAgICAgICAocng6OkJ1ZmZlclN0b3JhZ2U5Ojp+QnVmZmVyU3RvcmFnZTkpOgorKyAgICAg
ICAgKHJ4OjpCdWZmZXJTdG9yYWdlOTo6bWFrZUJ1ZmZlclN0b3JhZ2U5KToKKysgICAgICAgIChy
eDo6QnVmZmVyU3RvcmFnZTk6OmdldERhdGEpOgorKyAgICAgICAgKHJ4OjpCdWZmZXJTdG9yYWdl
OTo6c2V0RGF0YSk6CisrICAgICAgICAocng6OkJ1ZmZlclN0b3JhZ2U5OjpjbGVhcik6CisrICAg
ICAgICAocng6OkJ1ZmZlclN0b3JhZ2U5OjpnZXRTaXplKToKKysgICAgICAgIChyeDo6QnVmZmVy
U3RvcmFnZTk6OnN1cHBvcnRzRGlyZWN0QmluZGluZyk6CisrICAgICAgICAqIHNyYy9saWJHTEVT
djIvcmVuZGVyZXIvQnVmZmVyU3RvcmFnZTkuaDogQWRkZWQuCisrICAgICAgICAqIHNyYy9saWJH
TEVTdjIvcmVuZGVyZXIvRmVuY2UxMS5jcHA6IEFkZGVkLgorKyAgICAgICAgKHJ4OjpGZW5jZTEx
OjpGZW5jZTExKToKKysgICAgICAgIChyeDo6RmVuY2UxMTo6fkZlbmNlMTEpOgorKyAgICAgICAg
KHJ4OjpGZW5jZTExOjppc0ZlbmNlKToKKysgICAgICAgIChyeDo6RmVuY2UxMTo6c2V0RmVuY2Up
OgorKyAgICAgICAgKHJ4OjpGZW5jZTExOjp0ZXN0RmVuY2UpOgorKyAgICAgICAgKHJ4OjpGZW5j
ZTExOjpmaW5pc2hGZW5jZSk6CisrICAgICAgICAocng6OkZlbmNlMTE6OmdldEZlbmNlaXYpOgor
KyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL0ZlbmNlMTEuaDogQWRkZWQuCisrICAg
ICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvRmVuY2U5LmNwcDogQWRkZWQuCisrICAgICAg
ICAocng6OkZlbmNlOTo6RmVuY2U5KToKKysgICAgICAgIChyeDo6RmVuY2U5Ojp+RmVuY2U5KToK
KysgICAgICAgIChyeDo6RmVuY2U5Ojppc0ZlbmNlKToKKysgICAgICAgIChyeDo6RmVuY2U5Ojpz
ZXRGZW5jZSk6CisrICAgICAgICAocng6OkZlbmNlOTo6dGVzdEZlbmNlKToKKysgICAgICAgIChy
eDo6RmVuY2U5OjpmaW5pc2hGZW5jZSk6CisrICAgICAgICAocng6OkZlbmNlOTo6Z2V0RmVuY2Vp
dik6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvRmVuY2U5Lmg6IEFkZGVkLgor
KyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL0ZlbmNlSW1wbC5oOiBBZGRlZC4KKysg
ICAgICAgIChyeDo6RmVuY2VJbXBsOjpGZW5jZUltcGwpOgorKyAgICAgICAgKHJ4OjpGZW5jZUlt
cGw6On5GZW5jZUltcGwpOgorKyAgICAgICAgKHJ4OjpGZW5jZUltcGw6OnNldFN0YXR1cyk6Cisr
ICAgICAgICAocng6OkZlbmNlSW1wbDo6Z2V0U3RhdHVzKToKKysgICAgICAgIChyeDo6RmVuY2VJ
bXBsOjpzZXRDb25kaXRpb24pOgorKyAgICAgICAgKHJ4OjpGZW5jZUltcGw6OmdldENvbmRpdGlv
bik6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvSW1hZ2UuY3BwOiBBZGRlZC4K
KysgICAgICAgIChyeDo6SW1hZ2U6OkltYWdlKToKKysgICAgICAgIChyeDo6SW1hZ2U6OmxvYWRB
bHBoYURhdGFUb0JHUkEpOgorKyAgICAgICAgKHJ4OjpJbWFnZTo6bG9hZEFscGhhRGF0YVRvTmF0
aXZlKToKKysgICAgICAgIChyeDo6SW1hZ2U6OmxvYWRBbHBoYUZsb2F0RGF0YVRvUkdCQSk6Cisr
ICAgICAgICAocng6OkltYWdlOjpsb2FkQWxwaGFIYWxmRmxvYXREYXRhVG9SR0JBKToKKysgICAg
ICAgIChyeDo6SW1hZ2U6OmxvYWRMdW1pbmFuY2VEYXRhVG9OYXRpdmVPckJHUkEpOgorKyAgICAg
ICAgKHJ4OjpJbWFnZTo6bG9hZEx1bWluYW5jZUZsb2F0RGF0YVRvUkdCQSk6CisrICAgICAgICAo
cng6OkltYWdlOjpsb2FkTHVtaW5hbmNlRmxvYXREYXRhVG9SR0IpOgorKyAgICAgICAgKHJ4OjpJ
bWFnZTo6bG9hZEx1bWluYW5jZUhhbGZGbG9hdERhdGFUb1JHQkEpOgorKyAgICAgICAgKHJ4OjpJ
bWFnZTo6bG9hZEx1bWluYW5jZUFscGhhRGF0YVRvTmF0aXZlT3JCR1JBKToKKysgICAgICAgIChy
eDo6SW1hZ2U6OmxvYWRMdW1pbmFuY2VBbHBoYUZsb2F0RGF0YVRvUkdCQSk6CisrICAgICAgICAo
cng6OkltYWdlOjpsb2FkTHVtaW5hbmNlQWxwaGFIYWxmRmxvYXREYXRhVG9SR0JBKToKKysgICAg
ICAgIChyeDo6SW1hZ2U6OmxvYWRSR0JVQnl0ZURhdGFUb0JHUlgpOgorKyAgICAgICAgKHJ4OjpJ
bWFnZTo6bG9hZFJHQlVCeXRlRGF0YVRvUkdCQSk6CisrICAgICAgICAocng6OkltYWdlOjpsb2Fk
UkdCNTY1RGF0YVRvQkdSQSk6CisrICAgICAgICAocng6OkltYWdlOjpsb2FkUkdCNTY1RGF0YVRv
UkdCQSk6CisrICAgICAgICAocng6OkltYWdlOjpsb2FkUkdCRmxvYXREYXRhVG9SR0JBKToKKysg
ICAgICAgIChyeDo6SW1hZ2U6OmxvYWRSR0JGbG9hdERhdGFUb05hdGl2ZSk6CisrICAgICAgICAo
cng6OkltYWdlOjpsb2FkUkdCSGFsZkZsb2F0RGF0YVRvUkdCQSk6CisrICAgICAgICAocng6Oklt
YWdlOjpsb2FkUkdCQVVCeXRlRGF0YVRvQkdSQSk6CisrICAgICAgICAocng6OkltYWdlOjpsb2Fk
UkdCQVVCeXRlRGF0YVRvTmF0aXZlKToKKysgICAgICAgIChyeDo6SW1hZ2U6OmxvYWRSR0JBNDQ0
NERhdGFUb0JHUkEpOgorKyAgICAgICAgKHJ4OjpJbWFnZTo6bG9hZFJHQkE0NDQ0RGF0YVRvUkdC
QSk6CisrICAgICAgICAocng6OkltYWdlOjpsb2FkUkdCQTU1NTFEYXRhVG9CR1JBKToKKysgICAg
ICAgIChyeDo6SW1hZ2U6OmxvYWRSR0JBNTU1MURhdGFUb1JHQkEpOgorKyAgICAgICAgKHJ4OjpJ
bWFnZTo6bG9hZFJHQkFGbG9hdERhdGFUb1JHQkEpOgorKyAgICAgICAgKHJ4OjpJbWFnZTo6bG9h
ZFJHQkFIYWxmRmxvYXREYXRhVG9SR0JBKToKKysgICAgICAgIChyeDo6SW1hZ2U6OmxvYWRCR1JB
RGF0YVRvQkdSQSk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvSW1hZ2UuaDog
QWRkZWQuCisrICAgICAgICAocng6OkltYWdlOjp+SW1hZ2UpOgorKyAgICAgICAgKHJ4OjpJbWFn
ZTo6Z2V0V2lkdGgpOgorKyAgICAgICAgKHJ4OjpJbWFnZTo6Z2V0SGVpZ2h0KToKKysgICAgICAg
IChyeDo6SW1hZ2U6OmdldEludGVybmFsRm9ybWF0KToKKysgICAgICAgIChyeDo6SW1hZ2U6Omdl
dEFjdHVhbEZvcm1hdCk6CisrICAgICAgICAocng6OkltYWdlOjptYXJrRGlydHkpOgorKyAgICAg
ICAgKHJ4OjpJbWFnZTo6bWFya0NsZWFuKToKKysgICAgICAgIChyeDo6SW1hZ2U6OnNldE1hbmFn
ZWRTdXJmYWNlKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9JbWFnZTExLmNw
cDogQWRkZWQuCisrICAgICAgICAocng6OkltYWdlMTE6OkltYWdlMTEpOgorKyAgICAgICAgKHJ4
OjpJbWFnZTExOjp+SW1hZ2UxMSk6CisrICAgICAgICAocng6OkltYWdlMTE6Om1ha2VJbWFnZTEx
KToKKysgICAgICAgIChyeDo6SW1hZ2UxMTo6Z2VuZXJhdGVNaXBtYXApOgorKyAgICAgICAgKHJ4
OjpJbWFnZTExOjppc0RpcnR5KToKKysgICAgICAgIChyeDo6SW1hZ2UxMTo6dXBkYXRlU3VyZmFj
ZSk6CisrICAgICAgICAocng6OkltYWdlMTE6OnJlZGVmaW5lKToKKysgICAgICAgIChyeDo6SW1h
Z2UxMTo6aXNSZW5kZXJhYmxlRm9ybWF0KToKKysgICAgICAgIChyeDo6SW1hZ2UxMTo6Z2V0RFhH
SUZvcm1hdCk6CisrICAgICAgICAocng6OkltYWdlMTE6OmxvYWREYXRhKToKKysgICAgICAgIChy
eDo6SW1hZ2UxMTo6bG9hZENvbXByZXNzZWREYXRhKToKKysgICAgICAgIChyeDo6SW1hZ2UxMTo6
Y29weSk6CisrICAgICAgICAocng6OkltYWdlMTE6OmdldFN0YWdpbmdUZXh0dXJlKToKKysgICAg
ICAgIChyeDo6SW1hZ2UxMTo6Z2V0U3RhZ2luZ1N1YnJlc291cmNlKToKKysgICAgICAgIChyeDo6
SW1hZ2UxMTo6Y3JlYXRlU3RhZ2luZ1RleHR1cmUpOgorKyAgICAgICAgKHJ4OjpJbWFnZTExOjpt
YXApOgorKyAgICAgICAgKHJ4OjpJbWFnZTExOjp1bm1hcCk6CisrICAgICAgICAqIHNyYy9saWJH
TEVTdjIvcmVuZGVyZXIvSW1hZ2UxMS5oOiBBZGRlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2
Mi9yZW5kZXJlci9JbWFnZTkuY3BwOiBBZGRlZC4KKysgICAgICAgIChyeDo6SW1hZ2U5OjpJbWFn
ZTkpOgorKyAgICAgICAgKHJ4OjpJbWFnZTk6On5JbWFnZTkpOgorKyAgICAgICAgKHJ4OjpJbWFn
ZTk6OmdlbmVyYXRlTWlwKToKKysgICAgICAgIChyeDo6SW1hZ2U5OjptYWtlSW1hZ2U5KToKKysg
ICAgICAgIChyeDo6SW1hZ2U5OjpnZW5lcmF0ZU1pcG1hcCk6CisrICAgICAgICAocng6OkltYWdl
OTo6Y29weUxvY2thYmxlU3VyZmFjZXMpOgorKyAgICAgICAgKHJ4OjpJbWFnZTk6OnJlZGVmaW5l
KToKKysgICAgICAgIChyeDo6SW1hZ2U5OjpjcmVhdGVTdXJmYWNlKToKKysgICAgICAgIChyeDo6
SW1hZ2U5Ojpsb2NrKToKKysgICAgICAgIChyeDo6SW1hZ2U5Ojp1bmxvY2spOgorKyAgICAgICAg
KHJ4OjpJbWFnZTk6OmlzUmVuZGVyYWJsZUZvcm1hdCk6CisrICAgICAgICAocng6OkltYWdlOTo6
Z2V0RDNERm9ybWF0KToKKysgICAgICAgIChyeDo6SW1hZ2U5OjpnZXRTdXJmYWNlKToKKysgICAg
ICAgIChyeDo6SW1hZ2U5OjpzZXRNYW5hZ2VkU3VyZmFjZSk6CisrICAgICAgICAocng6OkltYWdl
OTo6dXBkYXRlU3VyZmFjZSk6CisrICAgICAgICAocng6OkltYWdlOTo6bG9hZERhdGEpOgorKyAg
ICAgICAgKHJ4OjpJbWFnZTk6OmxvYWRDb21wcmVzc2VkRGF0YSk6CisrICAgICAgICAocng6Oklt
YWdlOTo6Y29weSk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvSW1hZ2U5Lmg6
IEFkZGVkLgorKyAgICAgICAgKHJ4OjpJbWFnZTk6OmlzRGlydHkpOgorKyAgICAgICAgKiBzcmMv
bGliR0xFU3YyL3JlbmRlcmVyL0ltYWdlU1NFMi5jcHA6IEFkZGVkLgorKyAgICAgICAgKHJ4OjpJ
bWFnZTo6bG9hZFJHQkFVQnl0ZURhdGFUb0JHUkFTU0UyKToKKysgICAgICAgIChyeDo6SW1hZ2U6
OmxvYWRBbHBoYURhdGFUb0JHUkFTU0UyKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5k
ZXJlci9JbmRleEJ1ZmZlci5jcHA6IEFkZGVkLgorKyAgICAgICAgKHJ4OjpJbmRleEJ1ZmZlcjo6
SW5kZXhCdWZmZXIpOgorKyAgICAgICAgKHJ4OjpJbmRleEJ1ZmZlcjo6fkluZGV4QnVmZmVyKToK
KysgICAgICAgIChyeDo6SW5kZXhCdWZmZXI6OmdldFNlcmlhbCk6CisrICAgICAgICAocng6Oklu
ZGV4QnVmZmVyOjp1cGRhdGVTZXJpYWwpOgorKyAgICAgICAgKHJ4OjpJbmRleEJ1ZmZlckludGVy
ZmFjZTo6SW5kZXhCdWZmZXJJbnRlcmZhY2UpOgorKyAgICAgICAgKHJ4OjpJbmRleEJ1ZmZlcklu
dGVyZmFjZTo6fkluZGV4QnVmZmVySW50ZXJmYWNlKToKKysgICAgICAgIChyeDo6SW5kZXhCdWZm
ZXJJbnRlcmZhY2U6OmdldEluZGV4VHlwZSk6CisrICAgICAgICAocng6OkluZGV4QnVmZmVySW50
ZXJmYWNlOjpnZXRCdWZmZXJTaXplKToKKysgICAgICAgIChyeDo6SW5kZXhCdWZmZXJJbnRlcmZh
Y2U6OmdldFNlcmlhbCk6CisrICAgICAgICAocng6OkluZGV4QnVmZmVySW50ZXJmYWNlOjptYXBC
dWZmZXIpOgorKyAgICAgICAgKHJ4OjpJbmRleEJ1ZmZlckludGVyZmFjZTo6dW5tYXBCdWZmZXIp
OgorKyAgICAgICAgKHJ4OjpJbmRleEJ1ZmZlckludGVyZmFjZTo6Z2V0SW5kZXhCdWZmZXIpOgor
KyAgICAgICAgKHJ4OjpJbmRleEJ1ZmZlckludGVyZmFjZTo6Z2V0V3JpdGVQb3NpdGlvbik6Cisr
ICAgICAgICAocng6OkluZGV4QnVmZmVySW50ZXJmYWNlOjpzZXRXcml0ZVBvc2l0aW9uKToKKysg
ICAgICAgIChyeDo6SW5kZXhCdWZmZXJJbnRlcmZhY2U6OmRpc2NhcmQpOgorKyAgICAgICAgKHJ4
OjpJbmRleEJ1ZmZlckludGVyZmFjZTo6c2V0QnVmZmVyU2l6ZSk6CisrICAgICAgICAocng6OlN0
cmVhbWluZ0luZGV4QnVmZmVySW50ZXJmYWNlOjpTdHJlYW1pbmdJbmRleEJ1ZmZlckludGVyZmFj
ZSk6CisrICAgICAgICAocng6OlN0cmVhbWluZ0luZGV4QnVmZmVySW50ZXJmYWNlOjp+U3RyZWFt
aW5nSW5kZXhCdWZmZXJJbnRlcmZhY2UpOgorKyAgICAgICAgKHJ4OjpTdHJlYW1pbmdJbmRleEJ1
ZmZlckludGVyZmFjZTo6cmVzZXJ2ZUJ1ZmZlclNwYWNlKToKKysgICAgICAgIChyeDo6U3RhdGlj
SW5kZXhCdWZmZXJJbnRlcmZhY2U6OlN0YXRpY0luZGV4QnVmZmVySW50ZXJmYWNlKToKKysgICAg
ICAgIChyeDo6U3RhdGljSW5kZXhCdWZmZXJJbnRlcmZhY2U6On5TdGF0aWNJbmRleEJ1ZmZlcklu
dGVyZmFjZSk6CisrICAgICAgICAocng6OlN0YXRpY0luZGV4QnVmZmVySW50ZXJmYWNlOjpyZXNl
cnZlQnVmZmVyU3BhY2UpOgorKyAgICAgICAgKHJ4OjpTdGF0aWNJbmRleEJ1ZmZlckludGVyZmFj
ZTo6bG9va3VwUmFuZ2UpOgorKyAgICAgICAgKHJ4OjpTdGF0aWNJbmRleEJ1ZmZlckludGVyZmFj
ZTo6YWRkUmFuZ2UpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL0luZGV4QnVm
ZmVyLmg6IEFkZGVkLgorKyAgICAgICAgKHJ4OjpTdGF0aWNJbmRleEJ1ZmZlckludGVyZmFjZTo6
SW5kZXhSYW5nZTo6b3BlcmF0b3I8KToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJl
ci9JbmRleEJ1ZmZlcjExLmNwcDogQWRkZWQuCisrICAgICAgICAocng6OkluZGV4QnVmZmVyMTE6
OkluZGV4QnVmZmVyMTEpOgorKyAgICAgICAgKHJ4OjpJbmRleEJ1ZmZlcjExOjp+SW5kZXhCdWZm
ZXIxMSk6CisrICAgICAgICAocng6OkluZGV4QnVmZmVyMTE6OmluaXRpYWxpemUpOgorKyAgICAg
ICAgKHJ4OjpJbmRleEJ1ZmZlcjExOjptYWtlSW5kZXhCdWZmZXIxMSk6CisrICAgICAgICAocng6
OkluZGV4QnVmZmVyMTE6Om1hcEJ1ZmZlcik6CisrICAgICAgICAocng6OkluZGV4QnVmZmVyMTE6
OnVubWFwQnVmZmVyKToKKysgICAgICAgIChyeDo6SW5kZXhCdWZmZXIxMTo6Z2V0SW5kZXhUeXBl
KToKKysgICAgICAgIChyeDo6SW5kZXhCdWZmZXIxMTo6Z2V0QnVmZmVyU2l6ZSk6CisrICAgICAg
ICAocng6OkluZGV4QnVmZmVyMTE6OnNldFNpemUpOgorKyAgICAgICAgKHJ4OjpJbmRleEJ1ZmZl
cjExOjpkaXNjYXJkKToKKysgICAgICAgIChyeDo6SW5kZXhCdWZmZXIxMTo6Z2V0SW5kZXhGb3Jt
YXQpOgorKyAgICAgICAgKHJ4OjpJbmRleEJ1ZmZlcjExOjpnZXRCdWZmZXIpOgorKyAgICAgICAg
KiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL0luZGV4QnVmZmVyMTEuaDogQWRkZWQuCisrICAgICAg
ICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvSW5kZXhCdWZmZXI5LmNwcDogQWRkZWQuCisrICAg
ICAgICAocng6OkluZGV4QnVmZmVyOTo6SW5kZXhCdWZmZXI5KToKKysgICAgICAgIChyeDo6SW5k
ZXhCdWZmZXI5Ojp+SW5kZXhCdWZmZXI5KToKKysgICAgICAgIChyeDo6SW5kZXhCdWZmZXI5Ojpp
bml0aWFsaXplKToKKysgICAgICAgIChyeDo6SW5kZXhCdWZmZXI5OjptYWtlSW5kZXhCdWZmZXI5
KToKKysgICAgICAgIChyeDo6SW5kZXhCdWZmZXI5OjptYXBCdWZmZXIpOgorKyAgICAgICAgKHJ4
OjpJbmRleEJ1ZmZlcjk6OnVubWFwQnVmZmVyKToKKysgICAgICAgIChyeDo6SW5kZXhCdWZmZXI5
OjpnZXRJbmRleFR5cGUpOgorKyAgICAgICAgKHJ4OjpJbmRleEJ1ZmZlcjk6OmdldEJ1ZmZlclNp
emUpOgorKyAgICAgICAgKHJ4OjpJbmRleEJ1ZmZlcjk6OnNldFNpemUpOgorKyAgICAgICAgKHJ4
OjpJbmRleEJ1ZmZlcjk6OmRpc2NhcmQpOgorKyAgICAgICAgKHJ4OjpJbmRleEJ1ZmZlcjk6Omdl
dEluZGV4Rm9ybWF0KToKKysgICAgICAgIChyeDo6SW5kZXhCdWZmZXI5OjpnZXRCdWZmZXIpOgor
KyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL0luZGV4QnVmZmVyOS5oOiBBZGRlZC4K
KysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9JbmRleERhdGFNYW5hZ2VyLmNwcDog
QWRkZWQuCisrICAgICAgICAocng6OkluZGV4RGF0YU1hbmFnZXI6OkluZGV4RGF0YU1hbmFnZXIp
OgorKyAgICAgICAgKHJ4OjpJbmRleERhdGFNYW5hZ2VyOjp+SW5kZXhEYXRhTWFuYWdlcik6Cisr
ICAgICAgICAocng6OmluZGV4VHlwZVNpemUpOgorKyAgICAgICAgKHJ4Ojpjb252ZXJ0SW5kaWNl
cyk6CisrICAgICAgICAocng6OmNvbXB1dGVSYW5nZSk6CisrICAgICAgICAocng6OkluZGV4RGF0
YU1hbmFnZXI6OnByZXBhcmVJbmRleERhdGEpOgorKyAgICAgICAgKHJ4OjpJbmRleERhdGFNYW5h
Z2VyOjpnZXRDb3VudGluZ0luZGljZXMpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRl
cmVyL0luZGV4RGF0YU1hbmFnZXIuaDogQWRkZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIv
cmVuZGVyZXIvSW5wdXRMYXlvdXRDYWNoZS5jcHA6IEFkZGVkLgorKyAgICAgICAgKHJ4OjpJbnB1
dExheW91dENhY2hlOjpJbnB1dExheW91dENhY2hlKToKKysgICAgICAgIChyeDo6SW5wdXRMYXlv
dXRDYWNoZTo6fklucHV0TGF5b3V0Q2FjaGUpOgorKyAgICAgICAgKHJ4OjpJbnB1dExheW91dENh
Y2hlOjppbml0aWFsaXplKToKKysgICAgICAgIChyeDo6SW5wdXRMYXlvdXRDYWNoZTo6Y2xlYXIp
OgorKyAgICAgICAgKHJ4OjpJbnB1dExheW91dENhY2hlOjphcHBseVZlcnRleEJ1ZmZlcnMpOgor
KyAgICAgICAgKHJ4OjpJbnB1dExheW91dENhY2hlOjpoYXNoSW5wdXRMYXlvdXQpOgorKyAgICAg
ICAgKHJ4OjpJbnB1dExheW91dENhY2hlOjpjb21wYXJlSW5wdXRMYXlvdXRzKToKKysgICAgICAg
ICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9JbnB1dExheW91dENhY2hlLmg6IEFkZGVkLgorKyAg
ICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL1F1ZXJ5MTEuY3BwOiBBZGRlZC4KKysgICAg
ICAgIChyeDo6UXVlcnkxMTo6UXVlcnkxMSk6CisrICAgICAgICAocng6OlF1ZXJ5MTE6On5RdWVy
eTExKToKKysgICAgICAgIChyeDo6UXVlcnkxMTo6YmVnaW4pOgorKyAgICAgICAgKHJ4OjpRdWVy
eTExOjplbmQpOgorKyAgICAgICAgKHJ4OjpRdWVyeTExOjpnZXRSZXN1bHQpOgorKyAgICAgICAg
KHJ4OjpRdWVyeTExOjppc1Jlc3VsdEF2YWlsYWJsZSk6CisrICAgICAgICAocng6OlF1ZXJ5MTE6
OnRlc3RRdWVyeSk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvUXVlcnkxMS5o
OiBBZGRlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9RdWVyeTkuY3BwOiBB
ZGRlZC4KKysgICAgICAgIChyeDo6UXVlcnk5OjpRdWVyeTkpOgorKyAgICAgICAgKHJ4OjpRdWVy
eTk6On5RdWVyeTkpOgorKyAgICAgICAgKHJ4OjpRdWVyeTk6OmJlZ2luKToKKysgICAgICAgIChy
eDo6UXVlcnk5OjplbmQpOgorKyAgICAgICAgKHJ4OjpRdWVyeTk6OmdldFJlc3VsdCk6CisrICAg
ICAgICAocng6OlF1ZXJ5OTo6aXNSZXN1bHRBdmFpbGFibGUpOgorKyAgICAgICAgKHJ4OjpRdWVy
eTk6OnRlc3RRdWVyeSk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvUXVlcnk5
Lmg6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL1F1ZXJ5SW1wbC5o
OiBBZGRlZC4KKysgICAgICAgIChyeDo6UXVlcnlJbXBsOjpRdWVyeUltcGwpOgorKyAgICAgICAg
KHJ4OjpRdWVyeUltcGw6On5RdWVyeUltcGwpOgorKyAgICAgICAgKHJ4OjpRdWVyeUltcGw6Omdl
dFR5cGUpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL1JlbmRlclN0YXRlQ2Fj
aGUuY3BwOiBBZGRlZC4KKysgICAgICAgIChyeDo6UmVuZGVyU3RhdGVDYWNoZTo6UmVuZGVyU3Rh
dGVDYWNoZSk6CisrICAgICAgICAocng6OlJlbmRlclN0YXRlQ2FjaGU6On5SZW5kZXJTdGF0ZUNh
Y2hlKToKKysgICAgICAgIChyeDo6UmVuZGVyU3RhdGVDYWNoZTo6aW5pdGlhbGl6ZSk6CisrICAg
ICAgICAocng6OlJlbmRlclN0YXRlQ2FjaGU6OmNsZWFyKToKKysgICAgICAgIChyeDo6UmVuZGVy
U3RhdGVDYWNoZTo6aGFzaEJsZW5kU3RhdGUpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJTdGF0ZUNh
Y2hlOjpjb21wYXJlQmxlbmRTdGF0ZXMpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJTdGF0ZUNhY2hl
OjpnZXRCbGVuZFN0YXRlKToKKysgICAgICAgIChyeDo6UmVuZGVyU3RhdGVDYWNoZTo6aGFzaFJh
c3Rlcml6ZXJTdGF0ZSk6CisrICAgICAgICAocng6OlJlbmRlclN0YXRlQ2FjaGU6OmNvbXBhcmVS
YXN0ZXJpemVyU3RhdGVzKToKKysgICAgICAgIChyeDo6UmVuZGVyU3RhdGVDYWNoZTo6Z2V0UmFz
dGVyaXplclN0YXRlKToKKysgICAgICAgIChyeDo6UmVuZGVyU3RhdGVDYWNoZTo6aGFzaERlcHRo
U3RlbmNpbFN0YXRlKToKKysgICAgICAgIChyeDo6UmVuZGVyU3RhdGVDYWNoZTo6Y29tcGFyZURl
cHRoU3RlbmNpbFN0YXRlcyk6CisrICAgICAgICAocng6OlJlbmRlclN0YXRlQ2FjaGU6OmdldERl
cHRoU3RlbmNpbFN0YXRlKToKKysgICAgICAgIChyeDo6UmVuZGVyU3RhdGVDYWNoZTo6aGFzaFNh
bXBsZXJTdGF0ZSk6CisrICAgICAgICAocng6OlJlbmRlclN0YXRlQ2FjaGU6OmNvbXBhcmVTYW1w
bGVyU3RhdGVzKToKKysgICAgICAgIChyeDo6UmVuZGVyU3RhdGVDYWNoZTo6Z2V0U2FtcGxlclN0
YXRlKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9SZW5kZXJTdGF0ZUNhY2hl
Lmg6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL1JlbmRlclRhcmdl
dC5oOiBBZGRlZC4KKysgICAgICAgIChyeDo6UmVuZGVyVGFyZ2V0OjpSZW5kZXJUYXJnZXQpOgor
KyAgICAgICAgKHJ4OjpSZW5kZXJUYXJnZXQ6On5SZW5kZXJUYXJnZXQpOgorKyAgICAgICAgKHJ4
OjpSZW5kZXJUYXJnZXQ6OmdldFdpZHRoKToKKysgICAgICAgIChyeDo6UmVuZGVyVGFyZ2V0Ojpn
ZXRIZWlnaHQpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJUYXJnZXQ6OmdldEludGVybmFsRm9ybWF0
KToKKysgICAgICAgIChyeDo6UmVuZGVyVGFyZ2V0OjpnZXRBY3R1YWxGb3JtYXQpOgorKyAgICAg
ICAgKHJ4OjpSZW5kZXJUYXJnZXQ6OmdldFNhbXBsZXMpOgorKyAgICAgICAgKiBzcmMvbGliR0xF
U3YyL3JlbmRlcmVyL1JlbmRlclRhcmdldDExLmNwcDogQWRkZWQuCisrICAgICAgICAocng6Omdl
dFJUVlN1YnJlc291cmNlSW5kZXgpOgorKyAgICAgICAgKHJ4OjpnZXREU1ZTdWJyZXNvdXJjZUlu
ZGV4KToKKysgICAgICAgIChyeDo6UmVuZGVyVGFyZ2V0MTE6OlJlbmRlclRhcmdldDExKToKKysg
ICAgICAgIChyeDo6UmVuZGVyVGFyZ2V0MTE6On5SZW5kZXJUYXJnZXQxMSk6CisrICAgICAgICAo
cng6OlJlbmRlclRhcmdldDExOjptYWtlUmVuZGVyVGFyZ2V0MTEpOgorKyAgICAgICAgKHJ4OjpS
ZW5kZXJUYXJnZXQxMTo6Z2V0VGV4dHVyZSk6CisrICAgICAgICAocng6OlJlbmRlclRhcmdldDEx
OjpnZXRSZW5kZXJUYXJnZXRWaWV3KToKKysgICAgICAgIChyeDo6UmVuZGVyVGFyZ2V0MTE6Omdl
dERlcHRoU3RlbmNpbFZpZXcpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJUYXJnZXQxMTo6Z2V0U2hh
ZGVyUmVzb3VyY2VWaWV3KToKKysgICAgICAgIChyeDo6UmVuZGVyVGFyZ2V0MTE6OmdldFN1YnJl
c291cmNlSW5kZXgpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL1JlbmRlclRh
cmdldDExLmg6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL1JlbmRl
clRhcmdldDkuY3BwOiBBZGRlZC4KKysgICAgICAgIChyeDo6UmVuZGVyVGFyZ2V0OTo6UmVuZGVy
VGFyZ2V0OSk6CisrICAgICAgICAocng6OlJlbmRlclRhcmdldDk6On5SZW5kZXJUYXJnZXQ5KToK
KysgICAgICAgIChyeDo6UmVuZGVyVGFyZ2V0OTo6bWFrZVJlbmRlclRhcmdldDkpOgorKyAgICAg
ICAgKHJ4OjpSZW5kZXJUYXJnZXQ5OjpnZXRTdXJmYWNlKToKKysgICAgICAgICogc3JjL2xpYkdM
RVN2Mi9yZW5kZXJlci9SZW5kZXJUYXJnZXQ5Lmg6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGli
R0xFU3YyL3JlbmRlcmVyL1JlbmRlcmVyLmNwcDogQWRkZWQuCisrICAgICAgICAocng6OlJlbmRl
cmVyOjpSZW5kZXJlcik6CisrICAgICAgICAocng6OlJlbmRlcmVyOjp+UmVuZGVyZXIpOgorKyAg
ICAgICAgKHJ4OjpSZW5kZXJlcjo6aW5pdGlhbGl6ZUNvbXBpbGVyKToKKysgICAgICAgIChyeDo6
UmVuZGVyZXI6OmNvbXBpbGVUb0JpbmFyeSk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVu
ZGVyZXIvUmVuZGVyZXIuaDogQWRkZWQuCisrICAgICAgICAoZ2V0Q29tcGFyYWJsZU9TVmVyc2lv
bik6CisrICAgICAgICAocng6OlJlbmRlcmVyOjpnZXRWZXJ0ZXhUZXh0dXJlU3VwcG9ydCk6Cisr
ICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvUmVuZGVyZXIxMS5jcHA6IEFkZGVkLgor
KyAgICAgICAgKHJ4OjpSZW5kZXJlcjExOjpSZW5kZXJlcjExKToKKysgICAgICAgIChyeDo6UmVu
ZGVyZXIxMTo6flJlbmRlcmVyMTEpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjExOjptYWtlUmVu
ZGVyZXIxMSk6CisrICAgICAgICAocng6OlJlbmRlcmVyMTE6OmluaXRpYWxpemUpOgorKyAgICAg
ICAgKHJ4OjpSZW5kZXJlcjExOjppbml0aWFsaXplRGV2aWNlKToKKysgICAgICAgIChyeDo6UmVu
ZGVyZXIxMTo6Z2VuZXJhdGVDb25maWdzKToKKysgICAgICAgIChyeDo6UmVuZGVyZXIxMTo6ZGVs
ZXRlQ29uZmlncyk6CisrICAgICAgICAocng6OlJlbmRlcmVyMTE6OnN5bmMpOgorKyAgICAgICAg
KHJ4OjpSZW5kZXJlcjExOjpjcmVhdGVTd2FwQ2hhaW4pOgorKyAgICAgICAgKHJ4OjpSZW5kZXJl
cjExOjpzZXRTYW1wbGVyU3RhdGUpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjExOjpzZXRUZXh0
dXJlKToKKysgICAgICAgIChyeDo6UmVuZGVyZXIxMTo6c2V0UmFzdGVyaXplclN0YXRlKToKKysg
ICAgICAgIChyeDo6UmVuZGVyZXIxMTo6c2V0QmxlbmRTdGF0ZSk6CisrICAgICAgICAocng6OlJl
bmRlcmVyMTE6OnNldERlcHRoU3RlbmNpbFN0YXRlKToKKysgICAgICAgIChyeDo6UmVuZGVyZXIx
MTo6c2V0U2Npc3NvclJlY3RhbmdsZSk6CisrICAgICAgICAocng6OlJlbmRlcmVyMTE6OnNldFZp
ZXdwb3J0KToKKysgICAgICAgIChyeDo6UmVuZGVyZXIxMTo6YXBwbHlQcmltaXRpdmVUeXBlKToK
KysgICAgICAgIChyeDo6UmVuZGVyZXIxMTo6YXBwbHlSZW5kZXJUYXJnZXQpOgorKyAgICAgICAg
KHJ4OjpSZW5kZXJlcjExOjphcHBseVZlcnRleEJ1ZmZlcik6CisrICAgICAgICAocng6OlJlbmRl
cmVyMTE6OmFwcGx5SW5kZXhCdWZmZXIpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjExOjpkcmF3
QXJyYXlzKToKKysgICAgICAgIChyeDo6UmVuZGVyZXIxMTo6ZHJhd0VsZW1lbnRzKToKKysgICAg
ICAgIChyeDo6UmVuZGVyZXIxMTo6ZHJhd0xpbmVMb29wKToKKysgICAgICAgIChyeDo6UmVuZGVy
ZXIxMTo6ZHJhd1RyaWFuZ2xlRmFuKToKKysgICAgICAgIChyeDo6UmVuZGVyZXIxMTo6YXBwbHlT
aGFkZXJzKToKKysgICAgICAgIChyeDo6UmVuZGVyZXIxMTo6YXBwbHlVbmlmb3Jtcyk6CisrICAg
ICAgICAocng6OlJlbmRlcmVyMTE6OmNsZWFyKToKKysgICAgICAgIChyeDo6UmVuZGVyZXIxMTo6
bWFza2VkQ2xlYXIpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjExOjptYXJrQWxsU3RhdGVEaXJ0
eSk6CisrICAgICAgICAocng6OlJlbmRlcmVyMTE6OnJlbGVhc2VEZXZpY2VSZXNvdXJjZXMpOgor
KyAgICAgICAgKHJ4OjpSZW5kZXJlcjExOjpub3RpZnlEZXZpY2VMb3N0KToKKysgICAgICAgIChy
eDo6UmVuZGVyZXIxMTo6aXNEZXZpY2VMb3N0KToKKysgICAgICAgIChyeDo6UmVuZGVyZXIxMTo6
dGVzdERldmljZUxvc3QpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjExOjp0ZXN0RGV2aWNlUmVz
ZXR0YWJsZSk6CisrICAgICAgICAocng6OlJlbmRlcmVyMTE6OnJlbGVhc2UpOgorKyAgICAgICAg
KHJ4OjpSZW5kZXJlcjExOjpyZXNldERldmljZSk6CisrICAgICAgICAocng6OlJlbmRlcmVyMTE6
OmdldEFkYXB0ZXJWZW5kb3IpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjExOjpnZXRSZW5kZXJl
ckRlc2NyaXB0aW9uKToKKysgICAgICAgIChyeDo6UmVuZGVyZXIxMTo6Z2V0QWRhcHRlcklkZW50
aWZpZXIpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjExOjpnZXRCR1JBVGV4dHVyZVN1cHBvcnQp
OgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjExOjpnZXREWFQxVGV4dHVyZVN1cHBvcnQpOgorKyAg
ICAgICAgKHJ4OjpSZW5kZXJlcjExOjpnZXREWFQzVGV4dHVyZVN1cHBvcnQpOgorKyAgICAgICAg
KHJ4OjpSZW5kZXJlcjExOjpnZXREWFQ1VGV4dHVyZVN1cHBvcnQpOgorKyAgICAgICAgKHJ4OjpS
ZW5kZXJlcjExOjpnZXREZXB0aFRleHR1cmVTdXBwb3J0KToKKysgICAgICAgIChyeDo6UmVuZGVy
ZXIxMTo6Z2V0RmxvYXQzMlRleHR1cmVTdXBwb3J0KToKKysgICAgICAgIChyeDo6UmVuZGVyZXIx
MTo6Z2V0RmxvYXQxNlRleHR1cmVTdXBwb3J0KToKKysgICAgICAgIChyeDo6UmVuZGVyZXIxMTo6
Z2V0THVtaW5hbmNlVGV4dHVyZVN1cHBvcnQpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjExOjpn
ZXRMdW1pbmFuY2VBbHBoYVRleHR1cmVTdXBwb3J0KToKKysgICAgICAgIChyeDo6UmVuZGVyZXIx
MTo6Z2V0VGV4dHVyZUZpbHRlckFuaXNvdHJvcHlTdXBwb3J0KToKKysgICAgICAgIChyeDo6UmVu
ZGVyZXIxMTo6Z2V0VGV4dHVyZU1heEFuaXNvdHJvcHkpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJl
cjExOjpnZXRFdmVudFF1ZXJ5U3VwcG9ydCk6CisrICAgICAgICAocng6OlJlbmRlcmVyMTE6Omdl
dFZpZXdwb3J0Qm91bmRzKToKKysgICAgICAgIChyeDo6UmVuZGVyZXIxMTo6Z2V0TWF4VmVydGV4
VGV4dHVyZUltYWdlVW5pdHMpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjExOjpnZXRNYXhDb21i
aW5lZFRleHR1cmVJbWFnZVVuaXRzKToKKysgICAgICAgIChyeDo6UmVuZGVyZXIxMTo6Z2V0UmVz
ZXJ2ZWRWZXJ0ZXhVbmlmb3JtVmVjdG9ycyk6CisrICAgICAgICAocng6OlJlbmRlcmVyMTE6Omdl
dFJlc2VydmVkRnJhZ21lbnRVbmlmb3JtVmVjdG9ycyk6CisrICAgICAgICAocng6OlJlbmRlcmVy
MTE6OmdldE1heFZlcnRleFVuaWZvcm1WZWN0b3JzKToKKysgICAgICAgIChyeDo6UmVuZGVyZXIx
MTo6Z2V0TWF4RnJhZ21lbnRVbmlmb3JtVmVjdG9ycyk6CisrICAgICAgICAocng6OlJlbmRlcmVy
MTE6OmdldE1heFZhcnlpbmdWZWN0b3JzKToKKysgICAgICAgIChyeDo6UmVuZGVyZXIxMTo6Z2V0
Tm9uUG93ZXIyVGV4dHVyZVN1cHBvcnQpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjExOjpnZXRP
Y2NsdXNpb25RdWVyeVN1cHBvcnQpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjExOjpnZXRJbnN0
YW5jaW5nU3VwcG9ydCk6CisrICAgICAgICAocng6OlJlbmRlcmVyMTE6OmdldFNoYXJlSGFuZGxl
U3VwcG9ydCk6CisrICAgICAgICAocng6OlJlbmRlcmVyMTE6OmdldERlcml2YXRpdmVJbnN0cnVj
dGlvblN1cHBvcnQpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjExOjpnZXRQb3N0U3ViQnVmZmVy
U3VwcG9ydCk6CisrICAgICAgICAocng6OlJlbmRlcmVyMTE6OmdldE1ham9yU2hhZGVyTW9kZWwp
OgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjExOjpnZXRNaW5vclNoYWRlck1vZGVsKToKKysgICAg
ICAgIChyeDo6UmVuZGVyZXIxMTo6Z2V0TWF4UG9pbnRTaXplKToKKysgICAgICAgIChyeDo6UmVu
ZGVyZXIxMTo6Z2V0TWF4Vmlld3BvcnREaW1lbnNpb24pOgorKyAgICAgICAgKHJ4OjpSZW5kZXJl
cjExOjpnZXRNYXhUZXh0dXJlV2lkdGgpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjExOjpnZXRN
YXhUZXh0dXJlSGVpZ2h0KToKKysgICAgICAgIChyeDo6UmVuZGVyZXIxMTo6Z2V0MzJCaXRJbmRl
eFN1cHBvcnQpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjExOjpnZXRNaW5Td2FwSW50ZXJ2YWwp
OgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjExOjpnZXRNYXhTd2FwSW50ZXJ2YWwpOgorKyAgICAg
ICAgKHJ4OjpSZW5kZXJlcjExOjpnZXRNYXhTdXBwb3J0ZWRTYW1wbGVzKToKKysgICAgICAgIChy
eDo6UmVuZGVyZXIxMTo6Z2V0TmVhcmVzdFN1cHBvcnRlZFNhbXBsZXMpOgorKyAgICAgICAgKHJ4
OjpSZW5kZXJlcjExOjpnZXRNYXhSZW5kZXJUYXJnZXRzKToKKysgICAgICAgIChyeDo6UmVuZGVy
ZXIxMTo6Y29weVRvUmVuZGVyVGFyZ2V0KToKKysgICAgICAgIChyeDo6UmVuZGVyZXIxMTo6Y29w
eUltYWdlKToKKysgICAgICAgIChyeDo6UmVuZGVyZXIxMTo6Y29weVRleHR1cmUpOgorKyAgICAg
ICAgKHJ4OjpSZW5kZXJlcjExOjp1bmFwcGx5UmVuZGVyVGFyZ2V0cyk6CisrICAgICAgICAocng6
OlJlbmRlcmVyMTE6OnNldE9uZVRpbWVSZW5kZXJUYXJnZXQpOgorKyAgICAgICAgKHJ4OjpSZW5k
ZXJlcjExOjpjcmVhdGVSZW5kZXJUYXJnZXQpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjExOjps
b2FkRXhlY3V0YWJsZSk6CisrICAgICAgICAocng6OlJlbmRlcmVyMTE6OmNvbXBpbGVUb0V4ZWN1
dGFibGUpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjExOjpjcmVhdGVWZXJ0ZXhCdWZmZXIpOgor
KyAgICAgICAgKHJ4OjpSZW5kZXJlcjExOjpjcmVhdGVJbmRleEJ1ZmZlcik6CisrICAgICAgICAo
cng6OlJlbmRlcmVyMTE6OmNyZWF0ZUJ1ZmZlclN0b3JhZ2UpOgorKyAgICAgICAgKHJ4OjpSZW5k
ZXJlcjExOjpjcmVhdGVRdWVyeSk6CisrICAgICAgICAocng6OlJlbmRlcmVyMTE6OmNyZWF0ZUZl
bmNlKToKKysgICAgICAgIChyeDo6UmVuZGVyZXIxMTo6Z2V0UmVuZGVyVGFyZ2V0UmVzb3VyY2Up
OgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjExOjpibGl0UmVjdCk6CisrICAgICAgICAocng6OlJl
bmRlcmVyMTE6OnJlYWRQaXhlbHMpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjExOjpjcmVhdGVJ
bWFnZSk6CisrICAgICAgICAocng6OlJlbmRlcmVyMTE6OmdlbmVyYXRlTWlwbWFwKToKKysgICAg
ICAgIChyeDo6UmVuZGVyZXIxMTo6Y3JlYXRlVGV4dHVyZVN0b3JhZ2UyRCk6CisrICAgICAgICAo
cng6OlJlbmRlcmVyMTE6OmNyZWF0ZVRleHR1cmVTdG9yYWdlQ3ViZSk6CisrICAgICAgICAocng6
OmdldEZhc3RQaXhlbENvcHlTaXplKToKKysgICAgICAgIChyeDo6cmVhZFBpeGVsQ29sb3IpOgor
KyAgICAgICAgKHJ4Ojp3cml0ZVBpeGVsQ29sb3IpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjEx
OjpyZWFkVGV4dHVyZURhdGEpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjExOjpibGl0UmVuZGVy
YnVmZmVyUmVjdCk6CisrICAgICAgICAocng6OlJlbmRlcmVyMTE6OnJlc29sdmVNdWx0aXNhbXBs
ZWRUZXh0dXJlKToKKysgICAgICAgIChyeDo6UmVuZGVyZXIxMTo6Z2V0TFVJRCk6CisrICAgICAg
ICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvUmVuZGVyZXIxMS5oOiBBZGRlZC4KKysgICAgICAg
IChyeDo6UmVuZGVyZXIxMTo6Z2V0RGV2aWNlKToKKysgICAgICAgIChyeDo6UmVuZGVyZXIxMTo6
Z2V0RGV2aWNlQ29udGV4dCk6CisrICAgICAgICAocng6OlJlbmRlcmVyMTE6OmdldER4Z2lGYWN0
b3J5KToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9SZW5kZXJlcjkuY3BwOiBB
ZGRlZC4KKysgICAgICAgIChyeDo6UmVuZGVyZXI5OjpSZW5kZXJlcjkpOgorKyAgICAgICAgKHJ4
OjpSZW5kZXJlcjk6On5SZW5kZXJlcjkpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjk6Om1ha2VS
ZW5kZXJlcjkpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjk6OmluaXRpYWxpemUpOgorKyAgICAg
ICAgKHJ4OjpSZW5kZXJlcjk6OmluaXRpYWxpemVEZXZpY2UpOgorKyAgICAgICAgKHJ4OjpSZW5k
ZXJlcjk6OmdldERlZmF1bHRQcmVzZW50UGFyYW1ldGVycyk6CisrICAgICAgICAocng6OlJlbmRl
cmVyOTo6Z2VuZXJhdGVDb25maWdzKToKKysgICAgICAgIChyeDo6UmVuZGVyZXI5OjpkZWxldGVD
b25maWdzKToKKysgICAgICAgIChyeDo6UmVuZGVyZXI5OjpzdGFydFNjZW5lKToKKysgICAgICAg
IChyeDo6UmVuZGVyZXI5OjplbmRTY2VuZSk6CisrICAgICAgICAocng6OlJlbmRlcmVyOTo6c3lu
Yyk6CisrICAgICAgICAocng6OlJlbmRlcmVyOTo6Y3JlYXRlU3dhcENoYWluKToKKysgICAgICAg
IChyeDo6UmVuZGVyZXI5OjphbGxvY2F0ZUV2ZW50UXVlcnkpOgorKyAgICAgICAgKHJ4OjpSZW5k
ZXJlcjk6OmZyZWVFdmVudFF1ZXJ5KToKKysgICAgICAgIChyeDo6UmVuZGVyZXI5OjpjcmVhdGVW
ZXJ0ZXhTaGFkZXIpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjk6OmNyZWF0ZVBpeGVsU2hhZGVy
KToKKysgICAgICAgIChyeDo6UmVuZGVyZXI5OjpjcmVhdGVWZXJ0ZXhCdWZmZXIpOgorKyAgICAg
ICAgKHJ4OjpSZW5kZXJlcjk6OmNyZWF0ZUluZGV4QnVmZmVyKToKKysgICAgICAgIChyeDo6UmVu
ZGVyZXI5OjpjcmVhdGVCdWZmZXJTdG9yYWdlKToKKysgICAgICAgIChyeDo6UmVuZGVyZXI5Ojpj
cmVhdGVRdWVyeSk6CisrICAgICAgICAocng6OlJlbmRlcmVyOTo6Y3JlYXRlRmVuY2UpOgorKyAg
ICAgICAgKHJ4OjpSZW5kZXJlcjk6OnNldFNhbXBsZXJTdGF0ZSk6CisrICAgICAgICAocng6OlJl
bmRlcmVyOTo6c2V0VGV4dHVyZSk6CisrICAgICAgICAocng6OlJlbmRlcmVyOTo6c2V0UmFzdGVy
aXplclN0YXRlKToKKysgICAgICAgIChyeDo6UmVuZGVyZXI5OjpzZXRCbGVuZFN0YXRlKToKKysg
ICAgICAgIChyeDo6UmVuZGVyZXI5OjpzZXREZXB0aFN0ZW5jaWxTdGF0ZSk6CisrICAgICAgICAo
cng6OlJlbmRlcmVyOTo6c2V0U2Npc3NvclJlY3RhbmdsZSk6CisrICAgICAgICAocng6OlJlbmRl
cmVyOTo6c2V0Vmlld3BvcnQpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjk6OmFwcGx5UHJpbWl0
aXZlVHlwZSk6CisrICAgICAgICAocng6OlJlbmRlcmVyOTo6Z2V0TnVsbENvbG9yYnVmZmVyKToK
KysgICAgICAgIChyeDo6UmVuZGVyZXI5OjphcHBseVJlbmRlclRhcmdldCk6CisrICAgICAgICAo
cng6OlJlbmRlcmVyOTo6YXBwbHlWZXJ0ZXhCdWZmZXIpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJl
cjk6OmFwcGx5SW5kZXhCdWZmZXIpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjk6OmRyYXdBcnJh
eXMpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjk6OmRyYXdFbGVtZW50cyk6CisrICAgICAgICAo
cng6OlJlbmRlcmVyOTo6ZHJhd0xpbmVMb29wKToKKysgICAgICAgIChyeDo6ZHJhd1BvaW50cyk6
CisrICAgICAgICAocng6OlJlbmRlcmVyOTo6ZHJhd0luZGV4ZWRQb2ludHMpOgorKyAgICAgICAg
KHJ4OjpSZW5kZXJlcjk6OmFwcGx5U2hhZGVycyk6CisrICAgICAgICAocng6OlJlbmRlcmVyOTo6
YXBwbHlVbmlmb3Jtcyk6CisrICAgICAgICAocng6OlJlbmRlcmVyOTo6YXBwbHlVbmlmb3JtbmZ2
KToKKysgICAgICAgIChyeDo6UmVuZGVyZXI5OjphcHBseVVuaWZvcm1uaXYpOgorKyAgICAgICAg
KHJ4OjpSZW5kZXJlcjk6OmFwcGx5VW5pZm9ybW5idik6CisrICAgICAgICAocng6OlJlbmRlcmVy
OTo6Y2xlYXIpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjk6Om1hcmtBbGxTdGF0ZURpcnR5KToK
KysgICAgICAgIChyeDo6UmVuZGVyZXI5OjpyZWxlYXNlRGV2aWNlUmVzb3VyY2VzKToKKysgICAg
ICAgIChyeDo6UmVuZGVyZXI5Ojpub3RpZnlEZXZpY2VMb3N0KToKKysgICAgICAgIChyeDo6UmVu
ZGVyZXI5Ojppc0RldmljZUxvc3QpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjk6OnRlc3REZXZp
Y2VMb3N0KToKKysgICAgICAgIChyeDo6UmVuZGVyZXI5Ojp0ZXN0RGV2aWNlUmVzZXR0YWJsZSk6
CisrICAgICAgICAocng6OlJlbmRlcmVyOTo6cmVzZXREZXZpY2UpOgorKyAgICAgICAgKHJ4OjpS
ZW5kZXJlcjk6OmdldEFkYXB0ZXJWZW5kb3IpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjk6Omdl
dFJlbmRlcmVyRGVzY3JpcHRpb24pOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjk6OmdldEFkYXB0
ZXJJZGVudGlmaWVyKToKKysgICAgICAgIChyeDo6UmVuZGVyZXI5OjpnZXRNdWx0aVNhbXBsZVN1
cHBvcnQpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjk6OmdldEJHUkFUZXh0dXJlU3VwcG9ydCk6
CisrICAgICAgICAocng6OlJlbmRlcmVyOTo6Z2V0RFhUMVRleHR1cmVTdXBwb3J0KToKKysgICAg
ICAgIChyeDo6UmVuZGVyZXI5OjpnZXREWFQzVGV4dHVyZVN1cHBvcnQpOgorKyAgICAgICAgKHJ4
OjpSZW5kZXJlcjk6OmdldERYVDVUZXh0dXJlU3VwcG9ydCk6CisrICAgICAgICAocng6OlJlbmRl
cmVyOTo6Z2V0RGVwdGhUZXh0dXJlU3VwcG9ydCk6CisrICAgICAgICAocng6OlJlbmRlcmVyOTo6
Z2V0RmxvYXQzMlRleHR1cmVTdXBwb3J0KToKKysgICAgICAgIChyeDo6UmVuZGVyZXI5OjpnZXRG
bG9hdDE2VGV4dHVyZVN1cHBvcnQpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjk6OmdldEx1bWlu
YW5jZVRleHR1cmVTdXBwb3J0KToKKysgICAgICAgIChyeDo6UmVuZGVyZXI5OjpnZXRMdW1pbmFu
Y2VBbHBoYVRleHR1cmVTdXBwb3J0KToKKysgICAgICAgIChyeDo6UmVuZGVyZXI5OjpnZXRUZXh0
dXJlRmlsdGVyQW5pc290cm9weVN1cHBvcnQpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjk6Omdl
dFRleHR1cmVNYXhBbmlzb3Ryb3B5KToKKysgICAgICAgIChyeDo6UmVuZGVyZXI5OjpnZXRFdmVu
dFF1ZXJ5U3VwcG9ydCk6CisrICAgICAgICAocng6OlJlbmRlcmVyOTo6Z2V0TWF4VmVydGV4VGV4
dHVyZUltYWdlVW5pdHMpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjk6OmdldE1heENvbWJpbmVk
VGV4dHVyZUltYWdlVW5pdHMpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjk6OmdldFJlc2VydmVk
VmVydGV4VW5pZm9ybVZlY3RvcnMpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjk6OmdldFJlc2Vy
dmVkRnJhZ21lbnRVbmlmb3JtVmVjdG9ycyk6CisrICAgICAgICAocng6OlJlbmRlcmVyOTo6Z2V0
TWF4VmVydGV4VW5pZm9ybVZlY3RvcnMpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjk6OmdldE1h
eEZyYWdtZW50VW5pZm9ybVZlY3RvcnMpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjk6OmdldE1h
eFZhcnlpbmdWZWN0b3JzKToKKysgICAgICAgIChyeDo6UmVuZGVyZXI5OjpnZXROb25Qb3dlcjJU
ZXh0dXJlU3VwcG9ydCk6CisrICAgICAgICAocng6OlJlbmRlcmVyOTo6Z2V0T2NjbHVzaW9uUXVl
cnlTdXBwb3J0KToKKysgICAgICAgIChyeDo6UmVuZGVyZXI5OjpnZXRJbnN0YW5jaW5nU3VwcG9y
dCk6CisrICAgICAgICAocng6OlJlbmRlcmVyOTo6Z2V0U2hhcmVIYW5kbGVTdXBwb3J0KToKKysg
ICAgICAgIChyeDo6UmVuZGVyZXI5OjpnZXREZXJpdmF0aXZlSW5zdHJ1Y3Rpb25TdXBwb3J0KToK
KysgICAgICAgIChyeDo6UmVuZGVyZXI5OjpnZXRQb3N0U3ViQnVmZmVyU3VwcG9ydCk6CisrICAg
ICAgICAocng6OlJlbmRlcmVyOTo6Z2V0TWFqb3JTaGFkZXJNb2RlbCk6CisrICAgICAgICAocng6
OlJlbmRlcmVyOTo6Z2V0TWF4UG9pbnRTaXplKToKKysgICAgICAgIChyeDo6UmVuZGVyZXI5Ojpn
ZXRNYXhWaWV3cG9ydERpbWVuc2lvbik6CisrICAgICAgICAocng6OlJlbmRlcmVyOTo6Z2V0TWF4
VGV4dHVyZVdpZHRoKToKKysgICAgICAgIChyeDo6UmVuZGVyZXI5OjpnZXRNYXhUZXh0dXJlSGVp
Z2h0KToKKysgICAgICAgIChyeDo6UmVuZGVyZXI5OjpnZXQzMkJpdEluZGV4U3VwcG9ydCk6Cisr
ICAgICAgICAocng6OlJlbmRlcmVyOTo6Z2V0Q2Fwc0RlY2xUeXBlcyk6CisrICAgICAgICAocng6
OlJlbmRlcmVyOTo6Z2V0TWluU3dhcEludGVydmFsKToKKysgICAgICAgIChyeDo6UmVuZGVyZXI5
OjpnZXRNYXhTd2FwSW50ZXJ2YWwpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjk6OmdldE1heFN1
cHBvcnRlZFNhbXBsZXMpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjk6OmdldE5lYXJlc3RTdXBw
b3J0ZWRTYW1wbGVzKToKKysgICAgICAgIChyeDo6UmVuZGVyZXI5OjpnZXRNYXhSZW5kZXJUYXJn
ZXRzKToKKysgICAgICAgIChyeDo6UmVuZGVyZXI5OjpDb252ZXJ0VGV4dHVyZUludGVybmFsRm9y
bWF0KToKKysgICAgICAgIChyeDo6UmVuZGVyZXI5Ojpjb3B5VG9SZW5kZXJUYXJnZXQpOgorKyAg
ICAgICAgKHJ4OjpSZW5kZXJlcjk6OmdldEJ1ZmZlclBvb2wpOgorKyAgICAgICAgKHJ4OjpSZW5k
ZXJlcjk6OmNvcHlJbWFnZSk6CisrICAgICAgICAocng6OlJlbmRlcmVyOTo6YmxpdFJlY3QpOgor
KyAgICAgICAgKHJ4OjpSZW5kZXJlcjk6OnJlYWRQaXhlbHMpOgorKyAgICAgICAgKHJ4OjpSZW5k
ZXJlcjk6OmNyZWF0ZVJlbmRlclRhcmdldCk6CisrICAgICAgICAocng6OlJlbmRlcmVyOTo6bG9h
ZEV4ZWN1dGFibGUpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjk6OmNvbXBpbGVUb0V4ZWN1dGFi
bGUpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjk6OmJveEZpbHRlcik6CisrICAgICAgICAocng6
OlJlbmRlcmVyOTo6Z2V0VGV4dHVyZVBvb2wpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjk6OmNy
ZWF0ZUltYWdlKToKKysgICAgICAgIChyeDo6UmVuZGVyZXI5OjpnZW5lcmF0ZU1pcG1hcCk6Cisr
ICAgICAgICAocng6OlJlbmRlcmVyOTo6Y3JlYXRlVGV4dHVyZVN0b3JhZ2UyRCk6CisrICAgICAg
ICAocng6OlJlbmRlcmVyOTo6Y3JlYXRlVGV4dHVyZVN0b3JhZ2VDdWJlKToKKysgICAgICAgIChy
eDo6UmVuZGVyZXI5OjpnZXRMVUlEKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJl
ci9SZW5kZXJlcjkuaDogQWRkZWQuCisrICAgICAgICAocng6OlJlbmRlcmVyOTo6Z2V0RGV2aWNl
KToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9TaGFkZXJDYWNoZS5oOiBBZGRl
ZC4KKysgICAgICAgIChyeDo6U2hhZGVyQ2FjaGU6OlNoYWRlckNhY2hlKToKKysgICAgICAgIChy
eDo6U2hhZGVyQ2FjaGU6On5TaGFkZXJDYWNoZSk6CisrICAgICAgICAocng6OlNoYWRlckNhY2hl
Ojppbml0aWFsaXplKToKKysgICAgICAgIChyeDo6U2hhZGVyQ2FjaGU6OmNyZWF0ZSk6CisrICAg
ICAgICAocng6OlNoYWRlckNhY2hlOjpjbGVhcik6CisrICAgICAgICAocng6OlNoYWRlckNhY2hl
OjpjcmVhdGVTaGFkZXIpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL1NoYWRl
ckV4ZWN1dGFibGUuaDogQWRkZWQuCisrICAgICAgICAocng6OlNoYWRlckV4ZWN1dGFibGU6OlNo
YWRlckV4ZWN1dGFibGUpOgorKyAgICAgICAgKHJ4OjpTaGFkZXJFeGVjdXRhYmxlOjp+U2hhZGVy
RXhlY3V0YWJsZSk6CisrICAgICAgICAocng6OlNoYWRlckV4ZWN1dGFibGU6OmdldEZ1bmN0aW9u
KToKKysgICAgICAgIChyeDo6U2hhZGVyRXhlY3V0YWJsZTo6Z2V0TGVuZ3RoKToKKysgICAgICAg
ICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9TaGFkZXJFeGVjdXRhYmxlMTEuY3BwOiBBZGRlZC4K
KysgICAgICAgIChyeDo6U2hhZGVyRXhlY3V0YWJsZTExOjpTaGFkZXJFeGVjdXRhYmxlMTEpOgor
KyAgICAgICAgKHJ4OjpTaGFkZXJFeGVjdXRhYmxlMTE6On5TaGFkZXJFeGVjdXRhYmxlMTEpOgor
KyAgICAgICAgKHJ4OjpTaGFkZXJFeGVjdXRhYmxlMTE6Om1ha2VTaGFkZXJFeGVjdXRhYmxlMTEp
OgorKyAgICAgICAgKHJ4OjpTaGFkZXJFeGVjdXRhYmxlMTE6OmdldFZlcnRleFNoYWRlcik6Cisr
ICAgICAgICAocng6OlNoYWRlckV4ZWN1dGFibGUxMTo6Z2V0UGl4ZWxTaGFkZXIpOgorKyAgICAg
ICAgKHJ4OjpTaGFkZXJFeGVjdXRhYmxlMTE6OmdldEdlb21ldHJ5U2hhZGVyKToKKysgICAgICAg
IChyeDo6U2hhZGVyRXhlY3V0YWJsZTExOjpnZXRDb25zdGFudEJ1ZmZlcik6CisrICAgICAgICAq
IHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvU2hhZGVyRXhlY3V0YWJsZTExLmg6IEFkZGVkLgorKyAg
ICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL1NoYWRlckV4ZWN1dGFibGU5LmNwcDogQWRk
ZWQuCisrICAgICAgICAocng6OlNoYWRlckV4ZWN1dGFibGU5OjpTaGFkZXJFeGVjdXRhYmxlOSk6
CisrICAgICAgICAocng6OlNoYWRlckV4ZWN1dGFibGU5Ojp+U2hhZGVyRXhlY3V0YWJsZTkpOgor
KyAgICAgICAgKHJ4OjpTaGFkZXJFeGVjdXRhYmxlOTo6bWFrZVNoYWRlckV4ZWN1dGFibGU5KToK
KysgICAgICAgIChyeDo6U2hhZGVyRXhlY3V0YWJsZTk6OmdldFZlcnRleFNoYWRlcik6CisrICAg
ICAgICAocng6OlNoYWRlckV4ZWN1dGFibGU5OjpnZXRQaXhlbFNoYWRlcik6CisrICAgICAgICAq
IHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvU2hhZGVyRXhlY3V0YWJsZTkuaDogQWRkZWQuCisrICAg
ICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvU3dhcENoYWluLmg6IEFkZGVkLgorKyAgICAg
ICAgKHJ4OjpTd2FwQ2hhaW46OlN3YXBDaGFpbik6CisrICAgICAgICAocng6OlN3YXBDaGFpbjo6
flN3YXBDaGFpbik6CisrICAgICAgICAocng6OlN3YXBDaGFpbjo6Z2V0U2hhcmVIYW5kbGUpOgor
KyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL1N3YXBDaGFpbjExLmNwcDogQWRkZWQu
CisrICAgICAgICAocng6OlN3YXBDaGFpbjExOjpTd2FwQ2hhaW4xMSk6CisrICAgICAgICAocng6
OlN3YXBDaGFpbjExOjp+U3dhcENoYWluMTEpOgorKyAgICAgICAgKHJ4OjpTd2FwQ2hhaW4xMTo6
cmVsZWFzZSk6CisrICAgICAgICAocng6OlN3YXBDaGFpbjExOjpyZWxlYXNlT2Zmc2NyZWVuVGV4
dHVyZSk6CisrICAgICAgICAocng6OlN3YXBDaGFpbjExOjpyZXNldE9mZnNjcmVlblRleHR1cmUp
OgorKyAgICAgICAgKHJ4OjpTd2FwQ2hhaW4xMTo6cmVzaXplKToKKysgICAgICAgIChyeDo6U3dh
cENoYWluMTE6OnJlc2V0KToKKysgICAgICAgIChyeDo6U3dhcENoYWluMTE6OmluaXRQYXNzVGhy
b3VnaFJlc291cmNlcyk6CisrICAgICAgICAocng6OlN3YXBDaGFpbjExOjpzd2FwUmVjdCk6Cisr
ICAgICAgICAocng6OlN3YXBDaGFpbjExOjpnZXRPZmZzY3JlZW5UZXh0dXJlKToKKysgICAgICAg
IChyeDo6U3dhcENoYWluMTE6OmdldFJlbmRlclRhcmdldCk6CisrICAgICAgICAocng6OlN3YXBD
aGFpbjExOjpnZXRSZW5kZXJUYXJnZXRTaGFkZXJSZXNvdXJjZSk6CisrICAgICAgICAocng6OlN3
YXBDaGFpbjExOjpnZXREZXB0aFN0ZW5jaWwpOgorKyAgICAgICAgKHJ4OjpTd2FwQ2hhaW4xMTo6
Z2V0RGVwdGhTdGVuY2lsVGV4dHVyZSk6CisrICAgICAgICAocng6OlN3YXBDaGFpbjExOjptYWtl
U3dhcENoYWluMTEpOgorKyAgICAgICAgKHJ4OjpTd2FwQ2hhaW4xMTo6cmVjcmVhdGUpOgorKyAg
ICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL1N3YXBDaGFpbjExLmg6IEFkZGVkLgorKyAg
ICAgICAgKHJ4OjpTd2FwQ2hhaW4xMTo6Z2V0V2lkdGgpOgorKyAgICAgICAgKHJ4OjpTd2FwQ2hh
aW4xMTo6Z2V0SGVpZ2h0KToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9Td2Fw
Q2hhaW45LmNwcDogQWRkZWQuCisrICAgICAgICAocng6OlN3YXBDaGFpbjk6OlN3YXBDaGFpbjkp
OgorKyAgICAgICAgKHJ4OjpTd2FwQ2hhaW45Ojp+U3dhcENoYWluOSk6CisrICAgICAgICAocng6
OlN3YXBDaGFpbjk6OnJlbGVhc2UpOgorKyAgICAgICAgKHJ4Ojpjb252ZXJ0SW50ZXJ2YWwpOgor
KyAgICAgICAgKHJ4OjpTd2FwQ2hhaW45OjpyZXNpemUpOgorKyAgICAgICAgKHJ4OjpTd2FwQ2hh
aW45OjpyZXNldCk6CisrICAgICAgICAocng6OlN3YXBDaGFpbjk6OnN3YXBSZWN0KToKKysgICAg
ICAgIChyeDo6U3dhcENoYWluOTo6Z2V0UmVuZGVyVGFyZ2V0KToKKysgICAgICAgIChyeDo6U3dh
cENoYWluOTo6Z2V0RGVwdGhTdGVuY2lsKToKKysgICAgICAgIChyeDo6U3dhcENoYWluOTo6Z2V0
T2Zmc2NyZWVuVGV4dHVyZSk6CisrICAgICAgICAocng6OlN3YXBDaGFpbjk6Om1ha2VTd2FwQ2hh
aW45KToKKysgICAgICAgIChyeDo6U3dhcENoYWluOTo6cmVjcmVhdGUpOgorKyAgICAgICAgKiBz
cmMvbGliR0xFU3YyL3JlbmRlcmVyL1N3YXBDaGFpbjkuaDogQWRkZWQuCisrICAgICAgICAqIHNy
Yy9saWJHTEVTdjIvcmVuZGVyZXIvVGV4dHVyZVN0b3JhZ2UuY3BwOiBBZGRlZC4KKysgICAgICAg
IChyeDo6VGV4dHVyZVN0b3JhZ2VJbnRlcmZhY2U6OlRleHR1cmVTdG9yYWdlSW50ZXJmYWNlKToK
KysgICAgICAgIChyeDo6VGV4dHVyZVN0b3JhZ2VJbnRlcmZhY2U6On5UZXh0dXJlU3RvcmFnZUlu
dGVyZmFjZSk6CisrICAgICAgICAocng6OlRleHR1cmVTdG9yYWdlSW50ZXJmYWNlOjppc1JlbmRl
clRhcmdldCk6CisrICAgICAgICAocng6OlRleHR1cmVTdG9yYWdlSW50ZXJmYWNlOjppc01hbmFn
ZWQpOgorKyAgICAgICAgKHJ4OjpUZXh0dXJlU3RvcmFnZUludGVyZmFjZTo6Z2V0VGV4dHVyZVNl
cmlhbCk6CisrICAgICAgICAocng6OlRleHR1cmVTdG9yYWdlSW50ZXJmYWNlOjppc3N1ZVRleHR1
cmVTZXJpYWwpOgorKyAgICAgICAgKHJ4OjpUZXh0dXJlU3RvcmFnZUludGVyZmFjZTo6Z2V0TG9k
T2Zmc2V0KToKKysgICAgICAgIChyeDo6VGV4dHVyZVN0b3JhZ2VJbnRlcmZhY2U6OmxldmVsQ291
bnQpOgorKyAgICAgICAgKHJ4OjpUZXh0dXJlU3RvcmFnZUludGVyZmFjZTJEOjpUZXh0dXJlU3Rv
cmFnZUludGVyZmFjZTJEKToKKysgICAgICAgIChyeDo6VGV4dHVyZVN0b3JhZ2VJbnRlcmZhY2Uy
RDo6flRleHR1cmVTdG9yYWdlSW50ZXJmYWNlMkQpOgorKyAgICAgICAgKHJ4OjpUZXh0dXJlU3Rv
cmFnZUludGVyZmFjZTJEOjpnZXRSZW5kZXJUYXJnZXQpOgorKyAgICAgICAgKHJ4OjpUZXh0dXJl
U3RvcmFnZUludGVyZmFjZTJEOjpnZW5lcmF0ZU1pcG1hcCk6CisrICAgICAgICAocng6OlRleHR1
cmVTdG9yYWdlSW50ZXJmYWNlMkQ6OmdldFJlbmRlclRhcmdldFNlcmlhbCk6CisrICAgICAgICAo
cng6OlRleHR1cmVTdG9yYWdlSW50ZXJmYWNlQ3ViZTo6VGV4dHVyZVN0b3JhZ2VJbnRlcmZhY2VD
dWJlKToKKysgICAgICAgIChyeDo6VGV4dHVyZVN0b3JhZ2VJbnRlcmZhY2VDdWJlOjp+VGV4dHVy
ZVN0b3JhZ2VJbnRlcmZhY2VDdWJlKToKKysgICAgICAgIChyeDo6VGV4dHVyZVN0b3JhZ2VJbnRl
cmZhY2VDdWJlOjpnZXRSZW5kZXJUYXJnZXQpOgorKyAgICAgICAgKHJ4OjpUZXh0dXJlU3RvcmFn
ZUludGVyZmFjZUN1YmU6OmdlbmVyYXRlTWlwbWFwKToKKysgICAgICAgIChyeDo6VGV4dHVyZVN0
b3JhZ2VJbnRlcmZhY2VDdWJlOjpnZXRSZW5kZXJUYXJnZXRTZXJpYWwpOgorKyAgICAgICAgKiBz
cmMvbGliR0xFU3YyL3JlbmRlcmVyL1RleHR1cmVTdG9yYWdlLmg6IEFkZGVkLgorKyAgICAgICAg
KHJ4OjpUZXh0dXJlU3RvcmFnZTo6VGV4dHVyZVN0b3JhZ2UpOgorKyAgICAgICAgKHJ4OjpUZXh0
dXJlU3RvcmFnZTo6flRleHR1cmVTdG9yYWdlKToKKysgICAgICAgIChyeDo6VGV4dHVyZVN0b3Jh
Z2VJbnRlcmZhY2U6OmdldFN0b3JhZ2VJbnN0YW5jZSk6CisrICAgICAgICAqIHNyYy9saWJHTEVT
djIvcmVuZGVyZXIvVGV4dHVyZVN0b3JhZ2UxMS5jcHA6IEFkZGVkLgorKyAgICAgICAgKHJ4OjpU
ZXh0dXJlU3RvcmFnZTExOjpUZXh0dXJlU3RvcmFnZTExKToKKysgICAgICAgIChyeDo6VGV4dHVy
ZVN0b3JhZ2UxMTo6flRleHR1cmVTdG9yYWdlMTEpOgorKyAgICAgICAgKHJ4OjpUZXh0dXJlU3Rv
cmFnZTExOjptYWtlVGV4dHVyZVN0b3JhZ2UxMSk6CisrICAgICAgICAocng6OlRleHR1cmVTdG9y
YWdlMTE6OkdldFRleHR1cmVCaW5kRmxhZ3MpOgorKyAgICAgICAgKHJ4OjpUZXh0dXJlU3RvcmFn
ZTExOjpJc1RleHR1cmVGb3JtYXRSZW5kZXJhYmxlKToKKysgICAgICAgIChyeDo6VGV4dHVyZVN0
b3JhZ2UxMTo6Z2V0QmluZEZsYWdzKToKKysgICAgICAgIChyeDo6VGV4dHVyZVN0b3JhZ2UxMTo6
Z2V0QmFzZVRleHR1cmUpOgorKyAgICAgICAgKHJ4OjpUZXh0dXJlU3RvcmFnZTExOjpnZXRMb2RP
ZmZzZXQpOgorKyAgICAgICAgKHJ4OjpUZXh0dXJlU3RvcmFnZTExOjppc1JlbmRlclRhcmdldCk6
CisrICAgICAgICAocng6OlRleHR1cmVTdG9yYWdlMTE6OmlzTWFuYWdlZCk6CisrICAgICAgICAo
cng6OlRleHR1cmVTdG9yYWdlMTE6OmxldmVsQ291bnQpOgorKyAgICAgICAgKHJ4OjpUZXh0dXJl
U3RvcmFnZTExOjpnZXRTdWJyZXNvdXJjZUluZGV4KToKKysgICAgICAgIChyeDo6VGV4dHVyZVN0
b3JhZ2UxMTo6dXBkYXRlU3VicmVzb3VyY2VMZXZlbCk6CisrICAgICAgICAocng6OlRleHR1cmVT
dG9yYWdlMTE6OmdlbmVyYXRlTWlwbWFwTGF5ZXIpOgorKyAgICAgICAgKHJ4OjpUZXh0dXJlU3Rv
cmFnZTExXzJEOjpUZXh0dXJlU3RvcmFnZTExXzJEKToKKysgICAgICAgIChyeDo6VGV4dHVyZVN0
b3JhZ2UxMV8yRDo6flRleHR1cmVTdG9yYWdlMTFfMkQpOgorKyAgICAgICAgKHJ4OjpUZXh0dXJl
U3RvcmFnZTExXzJEOjptYWtlVGV4dHVyZVN0b3JhZ2UxMV8yRCk6CisrICAgICAgICAocng6OlRl
eHR1cmVTdG9yYWdlMTFfMkQ6OmdldFJlbmRlclRhcmdldCk6CisrICAgICAgICAocng6OlRleHR1
cmVTdG9yYWdlMTFfMkQ6OmdldFNSVik6CisrICAgICAgICAocng6OlRleHR1cmVTdG9yYWdlMTFf
MkQ6OmdlbmVyYXRlTWlwbWFwKToKKysgICAgICAgIChyeDo6VGV4dHVyZVN0b3JhZ2UxMV9DdWJl
OjpUZXh0dXJlU3RvcmFnZTExX0N1YmUpOgorKyAgICAgICAgKHJ4OjpUZXh0dXJlU3RvcmFnZTEx
X0N1YmU6On5UZXh0dXJlU3RvcmFnZTExX0N1YmUpOgorKyAgICAgICAgKHJ4OjpUZXh0dXJlU3Rv
cmFnZTExX0N1YmU6Om1ha2VUZXh0dXJlU3RvcmFnZTExX0N1YmUpOgorKyAgICAgICAgKHJ4OjpU
ZXh0dXJlU3RvcmFnZTExX0N1YmU6OmdldFJlbmRlclRhcmdldCk6CisrICAgICAgICAocng6OlRl
eHR1cmVTdG9yYWdlMTFfQ3ViZTo6Z2V0U1JWKToKKysgICAgICAgIChyeDo6VGV4dHVyZVN0b3Jh
Z2UxMV9DdWJlOjpnZW5lcmF0ZU1pcG1hcCk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVu
ZGVyZXIvVGV4dHVyZVN0b3JhZ2UxMS5oOiBBZGRlZC4KKysgICAgICAgIChyeDo6VGV4dHVyZVN0
b3JhZ2UxMTo6Z2V0UmVuZGVyVGFyZ2V0KToKKysgICAgICAgIChyeDo6VGV4dHVyZVN0b3JhZ2Ux
MTo6Z2VuZXJhdGVNaXBtYXApOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL1Rl
eHR1cmVTdG9yYWdlOS5jcHA6IEFkZGVkLgorKyAgICAgICAgKHJ4OjpUZXh0dXJlU3RvcmFnZTk6
OlRleHR1cmVTdG9yYWdlOSk6CisrICAgICAgICAocng6OlRleHR1cmVTdG9yYWdlOTo6flRleHR1
cmVTdG9yYWdlOSk6CisrICAgICAgICAocng6OlRleHR1cmVTdG9yYWdlOTo6bWFrZVRleHR1cmVT
dG9yYWdlOSk6CisrICAgICAgICAocng6OlRleHR1cmVTdG9yYWdlOTo6R2V0VGV4dHVyZVVzYWdl
KToKKysgICAgICAgIChyeDo6VGV4dHVyZVN0b3JhZ2U5OjpJc1RleHR1cmVGb3JtYXRSZW5kZXJh
YmxlKToKKysgICAgICAgIChyeDo6VGV4dHVyZVN0b3JhZ2U5Ojppc1JlbmRlclRhcmdldCk6Cisr
ICAgICAgICAocng6OlRleHR1cmVTdG9yYWdlOTo6aXNNYW5hZ2VkKToKKysgICAgICAgIChyeDo6
VGV4dHVyZVN0b3JhZ2U5OjpnZXRQb29sKToKKysgICAgICAgIChyeDo6VGV4dHVyZVN0b3JhZ2U5
OjpnZXRVc2FnZSk6CisrICAgICAgICAocng6OlRleHR1cmVTdG9yYWdlOTo6Z2V0TG9kT2Zmc2V0
KToKKysgICAgICAgIChyeDo6VGV4dHVyZVN0b3JhZ2U5OjpsZXZlbENvdW50KToKKysgICAgICAg
IChyeDo6VGV4dHVyZVN0b3JhZ2U5XzJEOjpUZXh0dXJlU3RvcmFnZTlfMkQpOgorKyAgICAgICAg
KHJ4OjpUZXh0dXJlU3RvcmFnZTlfMkQ6On5UZXh0dXJlU3RvcmFnZTlfMkQpOgorKyAgICAgICAg
KHJ4OjpUZXh0dXJlU3RvcmFnZTlfMkQ6Om1ha2VUZXh0dXJlU3RvcmFnZTlfMkQpOgorKyAgICAg
ICAgKHJ4OjpUZXh0dXJlU3RvcmFnZTlfMkQ6OmdldFN1cmZhY2VMZXZlbCk6CisrICAgICAgICAo
cng6OlRleHR1cmVTdG9yYWdlOV8yRDo6Z2V0UmVuZGVyVGFyZ2V0KToKKysgICAgICAgIChyeDo6
VGV4dHVyZVN0b3JhZ2U5XzJEOjpnZW5lcmF0ZU1pcG1hcCk6CisrICAgICAgICAocng6OlRleHR1
cmVTdG9yYWdlOV8yRDo6Z2V0QmFzZVRleHR1cmUpOgorKyAgICAgICAgKHJ4OjpUZXh0dXJlU3Rv
cmFnZTlfMkQ6OmluaXRpYWxpemVSZW5kZXJUYXJnZXQpOgorKyAgICAgICAgKHJ4OjpUZXh0dXJl
U3RvcmFnZTlfQ3ViZTo6VGV4dHVyZVN0b3JhZ2U5X0N1YmUpOgorKyAgICAgICAgKHJ4OjpUZXh0
dXJlU3RvcmFnZTlfQ3ViZTo6flRleHR1cmVTdG9yYWdlOV9DdWJlKToKKysgICAgICAgIChyeDo6
VGV4dHVyZVN0b3JhZ2U5X0N1YmU6Om1ha2VUZXh0dXJlU3RvcmFnZTlfQ3ViZSk6CisrICAgICAg
ICAocng6OlRleHR1cmVTdG9yYWdlOV9DdWJlOjpnZXRDdWJlTWFwU3VyZmFjZSk6CisrICAgICAg
ICAocng6OlRleHR1cmVTdG9yYWdlOV9DdWJlOjpnZXRSZW5kZXJUYXJnZXQpOgorKyAgICAgICAg
KHJ4OjpUZXh0dXJlU3RvcmFnZTlfQ3ViZTo6Z2VuZXJhdGVNaXBtYXApOgorKyAgICAgICAgKHJ4
OjpUZXh0dXJlU3RvcmFnZTlfQ3ViZTo6Z2V0QmFzZVRleHR1cmUpOgorKyAgICAgICAgKHJ4OjpU
ZXh0dXJlU3RvcmFnZTlfQ3ViZTo6aW5pdGlhbGl6ZVJlbmRlclRhcmdldCk6CisrICAgICAgICAq
IHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvVGV4dHVyZVN0b3JhZ2U5Lmg6IEFkZGVkLgorKyAgICAg
ICAgKHJ4OjpUZXh0dXJlU3RvcmFnZTk6OmdldFJlbmRlclRhcmdldCk6CisrICAgICAgICAocng6
OlRleHR1cmVTdG9yYWdlOTo6Z2VuZXJhdGVNaXBtYXApOgorKyAgICAgICAgKiBzcmMvbGliR0xF
U3YyL3JlbmRlcmVyL1ZlcnRleEJ1ZmZlci5jcHA6IEFkZGVkLgorKyAgICAgICAgKHJ4OjpWZXJ0
ZXhCdWZmZXI6OlZlcnRleEJ1ZmZlcik6CisrICAgICAgICAocng6OlZlcnRleEJ1ZmZlcjo6flZl
cnRleEJ1ZmZlcik6CisrICAgICAgICAocng6OlZlcnRleEJ1ZmZlcjo6dXBkYXRlU2VyaWFsKToK
KysgICAgICAgIChyeDo6VmVydGV4QnVmZmVyOjpnZXRTZXJpYWwpOgorKyAgICAgICAgKHJ4OjpW
ZXJ0ZXhCdWZmZXJJbnRlcmZhY2U6OlZlcnRleEJ1ZmZlckludGVyZmFjZSk6CisrICAgICAgICAo
cng6OlZlcnRleEJ1ZmZlckludGVyZmFjZTo6flZlcnRleEJ1ZmZlckludGVyZmFjZSk6CisrICAg
ICAgICAocng6OlZlcnRleEJ1ZmZlckludGVyZmFjZTo6Z2V0U2VyaWFsKToKKysgICAgICAgIChy
eDo6VmVydGV4QnVmZmVySW50ZXJmYWNlOjpnZXRCdWZmZXJTaXplKToKKysgICAgICAgIChyeDo6
VmVydGV4QnVmZmVySW50ZXJmYWNlOjpzZXRCdWZmZXJTaXplKToKKysgICAgICAgIChyeDo6VmVy
dGV4QnVmZmVySW50ZXJmYWNlOjpnZXRXcml0ZVBvc2l0aW9uKToKKysgICAgICAgIChyeDo6VmVy
dGV4QnVmZmVySW50ZXJmYWNlOjpzZXRXcml0ZVBvc2l0aW9uKToKKysgICAgICAgIChyeDo6VmVy
dGV4QnVmZmVySW50ZXJmYWNlOjpkaXNjYXJkKToKKysgICAgICAgIChyeDo6VmVydGV4QnVmZmVy
SW50ZXJmYWNlOjpzdG9yZVZlcnRleEF0dHJpYnV0ZXMpOgorKyAgICAgICAgKHJ4OjpWZXJ0ZXhC
dWZmZXJJbnRlcmZhY2U6OnN0b3JlUmF3RGF0YSk6CisrICAgICAgICAocng6OlZlcnRleEJ1ZmZl
ckludGVyZmFjZTo6cmVzZXJ2ZVZlcnRleFNwYWNlKToKKysgICAgICAgIChyeDo6VmVydGV4QnVm
ZmVySW50ZXJmYWNlOjpyZXNlcnZlUmF3RGF0YVNwYWNlKToKKysgICAgICAgIChyeDo6VmVydGV4
QnVmZmVySW50ZXJmYWNlOjpnZXRWZXJ0ZXhCdWZmZXIpOgorKyAgICAgICAgKHJ4OjpTdHJlYW1p
bmdWZXJ0ZXhCdWZmZXJJbnRlcmZhY2U6OlN0cmVhbWluZ1ZlcnRleEJ1ZmZlckludGVyZmFjZSk6
CisrICAgICAgICAocng6OlN0cmVhbWluZ1ZlcnRleEJ1ZmZlckludGVyZmFjZTo6flN0cmVhbWlu
Z1ZlcnRleEJ1ZmZlckludGVyZmFjZSk6CisrICAgICAgICAocng6OlN0cmVhbWluZ1ZlcnRleEJ1
ZmZlckludGVyZmFjZTo6cmVzZXJ2ZVNwYWNlKToKKysgICAgICAgIChyeDo6U3RhdGljVmVydGV4
QnVmZmVySW50ZXJmYWNlOjpTdGF0aWNWZXJ0ZXhCdWZmZXJJbnRlcmZhY2UpOgorKyAgICAgICAg
KHJ4OjpTdGF0aWNWZXJ0ZXhCdWZmZXJJbnRlcmZhY2U6On5TdGF0aWNWZXJ0ZXhCdWZmZXJJbnRl
cmZhY2UpOgorKyAgICAgICAgKHJ4OjpTdGF0aWNWZXJ0ZXhCdWZmZXJJbnRlcmZhY2U6Omxvb2t1
cEF0dHJpYnV0ZSk6CisrICAgICAgICAocng6OlN0YXRpY1ZlcnRleEJ1ZmZlckludGVyZmFjZTo6
cmVzZXJ2ZVNwYWNlKToKKysgICAgICAgIChyeDo6U3RhdGljVmVydGV4QnVmZmVySW50ZXJmYWNl
OjpzdG9yZVZlcnRleEF0dHJpYnV0ZXMpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRl
cmVyL1ZlcnRleEJ1ZmZlci5oOiBBZGRlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5k
ZXJlci9WZXJ0ZXhCdWZmZXIxMS5jcHA6IEFkZGVkLgorKyAgICAgICAgKHJ4OjpWZXJ0ZXhCdWZm
ZXIxMTo6VmVydGV4QnVmZmVyMTEpOgorKyAgICAgICAgKHJ4OjpWZXJ0ZXhCdWZmZXIxMTo6flZl
cnRleEJ1ZmZlcjExKToKKysgICAgICAgIChyeDo6VmVydGV4QnVmZmVyMTE6OmluaXRpYWxpemUp
OgorKyAgICAgICAgKHJ4OjpWZXJ0ZXhCdWZmZXIxMTo6bWFrZVZlcnRleEJ1ZmZlcjExKToKKysg
ICAgICAgIChyeDo6VmVydGV4QnVmZmVyMTE6OnN0b3JlVmVydGV4QXR0cmlidXRlcyk6CisrICAg
ICAgICAocng6OlZlcnRleEJ1ZmZlcjExOjpzdG9yZVJhd0RhdGEpOgorKyAgICAgICAgKHJ4OjpW
ZXJ0ZXhCdWZmZXIxMTo6Z2V0U3BhY2VSZXF1aXJlZCk6CisrICAgICAgICAocng6OlZlcnRleEJ1
ZmZlcjExOjpyZXF1aXJlc0NvbnZlcnNpb24pOgorKyAgICAgICAgKHJ4OjpWZXJ0ZXhCdWZmZXIx
MTo6Z2V0QnVmZmVyU2l6ZSk6CisrICAgICAgICAocng6OlZlcnRleEJ1ZmZlcjExOjpzZXRCdWZm
ZXJTaXplKToKKysgICAgICAgIChyeDo6VmVydGV4QnVmZmVyMTE6OmRpc2NhcmQpOgorKyAgICAg
ICAgKHJ4OjpWZXJ0ZXhCdWZmZXIxMTo6Z2V0VmVydGV4U2l6ZSk6CisrICAgICAgICAocng6OlZl
cnRleEJ1ZmZlcjExOjpnZXREWEdJRm9ybWF0KToKKysgICAgICAgIChyeDo6VmVydGV4QnVmZmVy
MTE6OmdldEJ1ZmZlcik6CisrICAgICAgICAocng6OmNvcHlWZXJ0ZXhEYXRhKToKKysgICAgICAg
IChyeDo6Y29weUZpeGVkVmVydGV4RGF0YSk6CisrICAgICAgICAocng6OmNvcHlUb0Zsb2F0VmVy
dGV4RGF0YSk6CisrICAgICAgICAocng6OlZlcnRleEJ1ZmZlcjExOjpnZXRWZXJ0ZXhDb252ZXJz
aW9uKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9WZXJ0ZXhCdWZmZXIxMS5o
OiBBZGRlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9WZXJ0ZXhCdWZmZXI5
LmNwcDogQWRkZWQuCisrICAgICAgICAocng6OlZlcnRleEJ1ZmZlcjk6OlZlcnRleEJ1ZmZlcjkp
OgorKyAgICAgICAgKHJ4OjpWZXJ0ZXhCdWZmZXI5Ojp+VmVydGV4QnVmZmVyOSk6CisrICAgICAg
ICAocng6OlZlcnRleEJ1ZmZlcjk6OmluaXRpYWxpemUpOgorKyAgICAgICAgKHJ4OjpWZXJ0ZXhC
dWZmZXI5OjptYWtlVmVydGV4QnVmZmVyOSk6CisrICAgICAgICAocng6OlZlcnRleEJ1ZmZlcjk6
OnN0b3JlVmVydGV4QXR0cmlidXRlcyk6CisrICAgICAgICAocng6OlZlcnRleEJ1ZmZlcjk6OnN0
b3JlUmF3RGF0YSk6CisrICAgICAgICAocng6OlZlcnRleEJ1ZmZlcjk6OmdldFNwYWNlUmVxdWly
ZWQpOgorKyAgICAgICAgKHJ4OjpWZXJ0ZXhCdWZmZXI5OjpyZXF1aXJlc0NvbnZlcnNpb24pOgor
KyAgICAgICAgKHJ4OjpWZXJ0ZXhCdWZmZXI5OjpnZXRWZXJ0ZXhTaXplKToKKysgICAgICAgIChy
eDo6VmVydGV4QnVmZmVyOTo6Z2V0RGVjbFR5cGUpOgorKyAgICAgICAgKHJ4OjpWZXJ0ZXhCdWZm
ZXI5OjpnZXRCdWZmZXJTaXplKToKKysgICAgICAgIChyeDo6VmVydGV4QnVmZmVyOTo6c2V0QnVm
ZmVyU2l6ZSk6CisrICAgICAgICAocng6OlZlcnRleEJ1ZmZlcjk6OmRpc2NhcmQpOgorKyAgICAg
ICAgKHJ4OjpWZXJ0ZXhCdWZmZXI5OjpnZXRCdWZmZXIpOgorKyAgICAgICAgKHJ4OjpWZXJ0ZXhC
dWZmZXI5Ojppbml0aWFsaXplVHJhbnNsYXRpb25zKToKKysgICAgICAgIChyeDo6VmVydGV4QnVm
ZmVyOTo6dHlwZUluZGV4KToKKysgICAgICAgIChyeDo6VmVydGV4QnVmZmVyOTo6Zm9ybWF0Q29u
dmVydGVyKToKKysgICAgICAgIChyeDo6VmVydGV4QnVmZmVyOTo6c3BhY2VSZXF1aXJlZCk6Cisr
ICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvVmVydGV4QnVmZmVyOS5oOiBBZGRlZC4K
KysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9WZXJ0ZXhEYXRhTWFuYWdlci5jcHA6
IEFkZGVkLgorKyAgICAgICAgKHJ4OjplbGVtZW50c0luQnVmZmVyKToKKysgICAgICAgIChyeDo6
VmVydGV4RGF0YU1hbmFnZXI6OlZlcnRleERhdGFNYW5hZ2VyKToKKysgICAgICAgIChyeDo6VmVy
dGV4RGF0YU1hbmFnZXI6On5WZXJ0ZXhEYXRhTWFuYWdlcik6CisrICAgICAgICAocng6OmRpcmVj
dFN0b3JhZ2VQb3NzaWJsZSk6CisrICAgICAgICAocng6OlZlcnRleERhdGFNYW5hZ2VyOjpwcmVw
YXJlVmVydGV4RGF0YSk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvVmVydGV4
RGF0YU1hbmFnZXIuaDogQWRkZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIv
VmVydGV4RGVjbGFyYXRpb25DYWNoZS5jcHA6IEFkZGVkLgorKyAgICAgICAgKHJ4OjpWZXJ0ZXhE
ZWNsYXJhdGlvbkNhY2hlOjpWZXJ0ZXhEZWNsYXJhdGlvbkNhY2hlKToKKysgICAgICAgIChyeDo6
VmVydGV4RGVjbGFyYXRpb25DYWNoZTo6flZlcnRleERlY2xhcmF0aW9uQ2FjaGUpOgorKyAgICAg
ICAgKHJ4OjpWZXJ0ZXhEZWNsYXJhdGlvbkNhY2hlOjphcHBseURlY2xhcmF0aW9uKToKKysgICAg
ICAgIChyeDo6VmVydGV4RGVjbGFyYXRpb25DYWNoZTo6bWFya1N0YXRlRGlydHkpOgorKyAgICAg
ICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL1ZlcnRleERlY2xhcmF0aW9uQ2FjaGUuaDogQWRk
ZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvZ2VuZXJhdGVtaXAuaDogQWRk
ZWQuCisrICAgICAgICAocng6Okw4OjphdmVyYWdlKToKKysgICAgICAgIChyeDo6QThMODo6YXZl
cmFnZSk6CisrICAgICAgICAocng6OkE4UjhHOEI4OjphdmVyYWdlKToKKysgICAgICAgIChyeDo6
QTE2QjE2RzE2UjE2Rjo6YXZlcmFnZSk6CisrICAgICAgICAocng6OlIxNkY6OmF2ZXJhZ2UpOgor
KyAgICAgICAgKHJ4OjpSMTZHMTZGOjphdmVyYWdlKToKKysgICAgICAgIChyeDo6QTMyQjMyRzMy
UjMyRjo6YXZlcmFnZSk6CisrICAgICAgICAocng6OlIzMkY6OmF2ZXJhZ2UpOgorKyAgICAgICAg
KHJ4OjpSMzJHMzJGOjphdmVyYWdlKToKKysgICAgICAgIChyeDo6UjMyRzMyQjMyRjo6YXZlcmFn
ZSk6CisrICAgICAgICAocng6OkdlbmVyYXRlTWlwKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2
Mi9yZW5kZXJlci9yZW5kZXJlcjExX3V0aWxzLmNwcDogQWRkZWQuCisrICAgICAgICAoZ2xfZDNk
MTE6OkNvbnZlcnRCbGVuZEZ1bmMpOgorKyAgICAgICAgKGdsX2QzZDExOjpDb252ZXJ0QmxlbmRP
cCk6CisrICAgICAgICAoZ2xfZDNkMTE6OkNvbnZlcnRDb2xvck1hc2spOgorKyAgICAgICAgKGds
X2QzZDExOjpDb252ZXJ0Q3VsbE1vZGUpOgorKyAgICAgICAgKGdsX2QzZDExOjpDb252ZXJ0Q29t
cGFyaXNvbik6CisrICAgICAgICAoZ2xfZDNkMTE6OkNvbnZlcnREZXB0aE1hc2spOgorKyAgICAg
ICAgKGdsX2QzZDExOjpDb252ZXJ0U3RlbmNpbE1hc2spOgorKyAgICAgICAgKGdsX2QzZDExOjpD
b252ZXJ0U3RlbmNpbE9wKToKKysgICAgICAgIChnbF9kM2QxMTo6Q29udmVydEZpbHRlcik6Cisr
ICAgICAgICAoZ2xfZDNkMTE6OkNvbnZlcnRUZXh0dXJlV3JhcCk6CisrICAgICAgICAoZ2xfZDNk
MTE6OkNvbnZlcnRNaW5MT0QpOgorKyAgICAgICAgKGdsX2QzZDExOjpDb252ZXJ0TWF4TE9EKToK
KysgICAgICAgIChkM2QxMV9nbDo6Q29udmVydEJhY2tCdWZmZXJGb3JtYXQpOgorKyAgICAgICAg
KGQzZDExX2dsOjpDb252ZXJ0RGVwdGhTdGVuY2lsRm9ybWF0KToKKysgICAgICAgIChkM2QxMV9n
bDo6Q29udmVydFJlbmRlcmJ1ZmZlckZvcm1hdCk6CisrICAgICAgICAoZDNkMTFfZ2w6OkNvbnZl
cnRUZXh0dXJlSW50ZXJuYWxGb3JtYXQpOgorKyAgICAgICAgKGdsX2QzZDExOjpDb252ZXJ0UmVu
ZGVyYnVmZmVyRm9ybWF0KToKKysgICAgICAgIChnbF9kM2QxMTo6Q29udmVydFRleHR1cmVGb3Jt
YXQpOgorKyAgICAgICAgKGQzZDExOjpTZXRQb3NpdGlvblRleENvb3JkVmVydGV4KToKKysgICAg
ICAgIChkM2QxMTo6U2V0UG9zaXRpb25EZXB0aENvbG9yVmVydGV4KToKKysgICAgICAgIChkM2Qx
MTo6Q29tcHV0ZVBpeGVsU2l6ZUJpdHMpOgorKyAgICAgICAgKGQzZDExOjpDb21wdXRlQmxvY2tT
aXplQml0cyk6CisrICAgICAgICAoZDNkMTE6OklzQ29tcHJlc3NlZCk6CisrICAgICAgICAoZDNk
MTE6OkdldFRleHR1cmVGb3JtYXREaW1lbnNpb25BbGlnbm1lbnQpOgorKyAgICAgICAgKGQzZDEx
OjpJc0RlcHRoU3RlbmNpbEZvcm1hdCk6CisrICAgICAgICAoZDNkMTE6OkdldERlcHRoVGV4dHVy
ZUZvcm1hdCk6CisrICAgICAgICAoZDNkMTE6OkdldERlcHRoU2hhZGVyUmVzb3VyY2VGb3JtYXQp
OgorKyAgICAgICAgKGQzZDExOjpTZXREZWJ1Z05hbWUpOgorKyAgICAgICAgKiBzcmMvbGliR0xF
U3YyL3JlbmRlcmVyL3JlbmRlcmVyMTFfdXRpbHMuaDogQWRkZWQuCisrICAgICAgICAoZDNkMTE6
OmlzRGV2aWNlTG9zdEVycm9yKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9y
ZW5kZXJlcjlfdXRpbHMuY3BwOiBBZGRlZC4KKysgICAgICAgIChnbF9kM2Q5OjpDb252ZXJ0Q29t
cGFyaXNvbik6CisrICAgICAgICAoZ2xfZDNkOTo6Q29udmVydENvbG9yKToKKysgICAgICAgIChn
bF9kM2Q5OjpDb252ZXJ0QmxlbmRGdW5jKToKKysgICAgICAgIChnbF9kM2Q5OjpDb252ZXJ0Qmxl
bmRPcCk6CisrICAgICAgICAoZ2xfZDNkOTo6Q29udmVydFN0ZW5jaWxPcCk6CisrICAgICAgICAo
Z2xfZDNkOTo6Q29udmVydFRleHR1cmVXcmFwKToKKysgICAgICAgIChnbF9kM2Q5OjpDb252ZXJ0
Q3VsbE1vZGUpOgorKyAgICAgICAgKGdsX2QzZDk6OkNvbnZlcnRDdWJlRmFjZSk6CisrICAgICAg
ICAoZ2xfZDNkOTo6Q29udmVydENvbG9yTWFzayk6CisrICAgICAgICAoZ2xfZDNkOTo6Q29udmVy
dE1hZ0ZpbHRlcik6CisrICAgICAgICAoZ2xfZDNkOTo6Q29udmVydE1pbkZpbHRlcik6CisrICAg
ICAgICAoZ2xfZDNkOTo6Q29udmVydFJlbmRlcmJ1ZmZlckZvcm1hdCk6CisrICAgICAgICAoZ2xf
ZDNkOTo6R2V0TXVsdGlzYW1wbGVUeXBlRnJvbVNhbXBsZXMpOgorKyAgICAgICAgKGQzZDlfZ2w6
OkdldFN0ZW5jaWxTaXplKToKKysgICAgICAgIChkM2Q5X2dsOjpHZXRBbHBoYVNpemUpOgorKyAg
ICAgICAgKGQzZDlfZ2w6OkdldFNhbXBsZXNGcm9tTXVsdGlzYW1wbGVUeXBlKToKKysgICAgICAg
IChkM2Q5X2dsOjpJc0Zvcm1hdENoYW5uZWxFcXVpdmFsZW50KToKKysgICAgICAgIChkM2Q5X2ds
OjpDb252ZXJ0QmFja0J1ZmZlckZvcm1hdCk6CisrICAgICAgICAoZDNkOV9nbDo6Q29udmVydERl
cHRoU3RlbmNpbEZvcm1hdCk6CisrICAgICAgICAoZDNkOV9nbDo6Q29udmVydFJlbmRlclRhcmdl
dEZvcm1hdCk6CisrICAgICAgICAoZDNkOV9nbDo6R2V0RXF1aXZhbGVudEZvcm1hdCk6CisrICAg
ICAgICAoZDNkOTo6SXNDb21wcmVzc2VkRm9ybWF0KToKKysgICAgICAgIChkM2Q5OjpDb21wdXRl
Um93U2l6ZSk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvcmVuZGVyZXI5X3V0
aWxzLmg6IEFkZGVkLgorKyAgICAgICAgKGQzZDk6OmlzRGV2aWNlTG9zdEVycm9yKToKKysgICAg
ICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9zaGFkZXJzOiBBZGRlZC4KKysgICAgICAgICog
c3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9zaGFkZXJzL0JsaXQucHM6IEFkZGVkLgorKyAgICAgICAg
KiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL3NoYWRlcnMvQmxpdC52czogQWRkZWQuCisrICAgICAg
ICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvc2hhZGVycy9DbGVhcjExLmhsc2w6IEFkZGVkLgor
KyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL3NoYWRlcnMvUGFzc3Rocm91Z2gxMS5o
bHNsOiBBZGRlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9zaGFkZXJzL2Nv
bXBpbGVkOiBBZGRlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9zaGFkZXJz
L2NvbXBpbGVkL2NsZWFyMTF2cy5oOiBBZGRlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9y
ZW5kZXJlci9zaGFkZXJzL2NvbXBpbGVkL2NsZWFybXVsdGlwbGUxMXBzLmg6IEFkZGVkLgorKyAg
ICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL3NoYWRlcnMvY29tcGlsZWQvY2xlYXJzaW5n
bGUxMXBzLmg6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL3NoYWRl
cnMvY29tcGlsZWQvY29tcG9uZW50bWFza3BzLmg6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGli
R0xFU3YyL3JlbmRlcmVyL3NoYWRlcnMvY29tcGlsZWQvZmxpcHl2cy5oOiBBZGRlZC4KKysgICAg
ICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9zaGFkZXJzL2NvbXBpbGVkL2x1bWluYW5jZXBz
Lmg6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL3NoYWRlcnMvY29t
cGlsZWQvcGFzc3Rocm91Z2gxMXZzLmg6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3Yy
L3JlbmRlcmVyL3NoYWRlcnMvY29tcGlsZWQvcGFzc3Rocm91Z2hsdW0xMXBzLmg6IEFkZGVkLgor
KyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL3NoYWRlcnMvY29tcGlsZWQvcGFzc3Ro
cm91Z2hsdW1hbHBoYTExcHMuaDogQWRkZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVu
ZGVyZXIvc2hhZGVycy9jb21waWxlZC9wYXNzdGhyb3VnaHBzLmg6IEFkZGVkLgorKyAgICAgICAg
KiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL3NoYWRlcnMvY29tcGlsZWQvcGFzc3Rocm91Z2hyZ2Ix
MXBzLmg6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL3NoYWRlcnMv
Y29tcGlsZWQvcGFzc3Rocm91Z2hyZ2JhMTFwcy5oOiBBZGRlZC4KKysgICAgICAgICogc3JjL2xp
YkdMRVN2Mi9yZW5kZXJlci9zaGFkZXJzL2NvbXBpbGVkL3N0YW5kYXJkdnMuaDogQWRkZWQuCisr
ICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvc2hhZGVycy9nZW5lcmF0ZV9zaGFkZXJz
LmJhdDogQWRkZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvdmVydGV4Y29u
dmVyc2lvbi5oOiBBZGRlZC4KKysgICAgICAgIChyeDo6SWRlbnRpdHk6OmNvbnZlcnQpOgorKyAg
ICAgICAgKHJ4OjpDYXN0Ojpjb252ZXJ0KToKKysgICAgICAgIChyeDo6Tm9ybWFsaXplOjpjb252
ZXJ0KToKKysgICAgICAgIChyeDo6Rml4ZWRUb0Zsb2F0Ojpjb252ZXJ0KToKKysgICAgICAgIChy
eDo6U2ltcGxlRGVmYXVsdFZhbHVlczo6emVybyk6CisrICAgICAgICAocng6OlNpbXBsZURlZmF1
bHRWYWx1ZXM6Om9uZSk6CisrICAgICAgICAocng6Ok5vcm1hbGl6ZWREZWZhdWx0VmFsdWVzOjp6
ZXJvKToKKysgICAgICAgIChyeDo6Tm9ybWFsaXplZERlZmF1bHRWYWx1ZXM6Om9uZSk6CisrICAg
ICAgICAocng6OlZlcnRleERhdGFDb252ZXJ0ZXI6OmNvbnZlcnRBcnJheSk6CisrICAgICAgICAo
cng6OlZlcnRleERhdGFDb252ZXJ0ZXI6OnBvaW50ZXJBZGRCeXRlcyk6CisrICAgICAgICAocng6
OlZlcnRleERhdGFDb252ZXJ0ZXI6OmNvcHlDb21wb25lbnQpOgorKyAgICAgICAgKiBzcmMvbGli
R0xFU3YyL3Jlc291cmNlLmg6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3V0aWxp
dGllcy5jcHA6IEFkZGVkLgorKyAgICAgICAgKGdsOjpVbmlmb3JtQ29tcG9uZW50Q291bnQpOgor
KyAgICAgICAgKGdsOjpVbmlmb3JtQ29tcG9uZW50VHlwZSk6CisrICAgICAgICAoZ2w6OlVuaWZv
cm1Db21wb25lbnRTaXplKToKKysgICAgICAgIChnbDo6VW5pZm9ybUludGVybmFsU2l6ZSk6Cisr
ICAgICAgICAoZ2w6OlVuaWZvcm1FeHRlcm5hbFNpemUpOgorKyAgICAgICAgKGdsOjpWYXJpYWJs
ZVJvd0NvdW50KToKKysgICAgICAgIChnbDo6VmFyaWFibGVDb2x1bW5Db3VudCk6CisrICAgICAg
ICAoZ2w6OkFsbG9jYXRlRmlyc3RGcmVlQml0cyk6CisrICAgICAgICAoZ2w6OkNvbXB1dGVQaXRj
aCk6CisrICAgICAgICAoZ2w6OkNvbXB1dGVDb21wcmVzc2VkUGl0Y2gpOgorKyAgICAgICAgKGds
OjpDb21wdXRlQ29tcHJlc3NlZFNpemUpOgorKyAgICAgICAgKGdsOjpJc0NvbXByZXNzZWQpOgor
KyAgICAgICAgKGdsOjpJc0RlcHRoVGV4dHVyZSk6CisrICAgICAgICAoZ2w6OklzU3RlbmNpbFRl
eHR1cmUpOgorKyAgICAgICAgKGdsOjpNYWtlVmFsaWRTaXplKToKKysgICAgICAgIChnbDo6Q29t
cHV0ZVBpeGVsU2l6ZSk6CisrICAgICAgICAoZ2w6OklzQ3ViZW1hcFRleHR1cmVUYXJnZXQpOgor
KyAgICAgICAgKGdsOjpJc0ludGVybmFsVGV4dHVyZVRhcmdldCk6CisrICAgICAgICAoZ2w6OkNv
bnZlcnRTaXplZEludGVybmFsRm9ybWF0KToKKysgICAgICAgIChnbDo6RXh0cmFjdEZvcm1hdCk6
CisrICAgICAgICAoZ2w6OkV4dHJhY3RUeXBlKToKKysgICAgICAgIChnbDo6SXNDb2xvclJlbmRl
cmFibGUpOgorKyAgICAgICAgKGdsOjpJc0RlcHRoUmVuZGVyYWJsZSk6CisrICAgICAgICAoZ2w6
OklzU3RlbmNpbFJlbmRlcmFibGUpOgorKyAgICAgICAgKGdsOjpJc0Zsb2F0MzJGb3JtYXQpOgor
KyAgICAgICAgKGdsOjpJc0Zsb2F0MTZGb3JtYXQpOgorKyAgICAgICAgKGdsOjpHZXRBbHBoYVNp
emUpOgorKyAgICAgICAgKGdsOjpHZXRSZWRTaXplKToKKysgICAgICAgIChnbDo6R2V0R3JlZW5T
aXplKToKKysgICAgICAgIChnbDo6R2V0Qmx1ZVNpemUpOgorKyAgICAgICAgKGdsOjpHZXREZXB0
aFNpemUpOgorKyAgICAgICAgKGdsOjpHZXRTdGVuY2lsU2l6ZSk6CisrICAgICAgICAoZ2w6Oklz
VHJpYW5nbGVNb2RlKToKKysgICAgICAgIChnZXRUZW1wUGF0aCk6CisrICAgICAgICAod3JpdGVG
aWxlKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi91dGlsaXRpZXMuaDogQWRkZWQuCisrICAg
ICAgICAqIHNyYy90aGlyZF9wYXJ0eS9tdXJtdXJoYXNoOiBBZGRlZC4KKysgICAgICAgICogc3Jj
L3RoaXJkX3BhcnR5L211cm11cmhhc2gvTElDRU5TRTogQWRkZWQuCisrICAgICAgICAqIHNyYy90
aGlyZF9wYXJ0eS9tdXJtdXJoYXNoL011cm11ckhhc2gzLmNwcDogQWRkZWQsIHJlcGxhY2VkIHRh
YnMgd2l0aCBzcGFjZXMuCisrICAgICAgICAocm90bDMyKToKKysgICAgICAgIChyb3RsNjQpOgor
KyAgICAgICAgKGdldGJsb2NrKToKKysgICAgICAgIChmbWl4KToKKysgICAgICAgIChNdXJtdXJI
YXNoM194ODZfMzIpOgorKyAgICAgICAgKE11cm11ckhhc2gzX3g4Nl8xMjgpOgorKyAgICAgICAg
KE11cm11ckhhc2gzX3g2NF8xMjgpOgorKyAgICAgICAgKiBzcmMvdGhpcmRfcGFydHkvbXVybXVy
aGFzaC9NdXJtdXJIYXNoMy5oOiBBZGRlZCwgcmVwbGFjZWQgdGFicyB3aXRoIHNwYWNlcy4KKysK
KysyMDEzLTA3LTIwICBEZWFuIEphY2tzb24gIDxkaW5vQGFwcGxlLmNvbT4KKysKKysgICAgICAg
IFVwZGF0ZWQgQU5HTEUgaXMgbGVha2luZyBsaWtlIGEgc2lldmUKKysgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTg5MzkKKysKKysgICAgICAgIFJvbGxv
dXQgMTUyODYzLCByMTUyODIxLCByMTUyOTI5IGFuZCByMTUyNzU1LgorKworKyAgICAgICAgKiBB
TkdMRS5wbGlzdDoKKysgICAgICAgICogQU5HTEUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoK
KysgICAgICAgICogRGVyaXZlZFNvdXJjZXMubWFrZTogUmVtb3ZlZC4KKysgICAgICAgICogR05V
bWFrZWZpbGUuYW06CisrICAgICAgICAqIFRhcmdldC5wcmk6CisrICAgICAgICAqIGluY2x1ZGUv
R0xTTEFORy9TaGFkZXJMYW5nLmg6CisrICAgICAgICAqIHNyYy9jb21waWxlci9CYXNlVHlwZXMu
aDoKKysgICAgICAgIChnZXRRdWFsaWZpZXJTdHJpbmcpOgorKyAgICAgICAgKiBzcmMvY29tcGls
ZXIvQ29tbW9uLmg6CisrICAgICAgICAoRW5jb2RlU291cmNlTG9jKToKKysgICAgICAgIChEZWNv
ZGVTb3VyY2VMb2MpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvQ29tcGlsZXIuY3BwOgorKyAg
ICAgICAgKFRDb21waWxlcjo6VENvbXBpbGVyKToKKysgICAgICAgIChUQ29tcGlsZXI6OkluaXQp
OgorKyAgICAgICAgKFRDb21waWxlcjo6Y29tcGlsZSk6CisrICAgICAgICAoVENvbXBpbGVyOjpk
ZXRlY3RSZWN1cnNpb24pOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvQ29uc3RhbnRVbmlvbi5o
OgorKyAgICAgICAgKENvbnN0YW50VW5pb246OkNvbnN0YW50VW5pb24pOgorKyAgICAgICAgKiBz
cmMvY29tcGlsZXIvRGV0ZWN0Q2FsbERlcHRoLmNwcDogUmVtb3ZlZC4KKysgICAgICAgICogc3Jj
L2NvbXBpbGVyL0RldGVjdFJlY3Vyc2lvbi5jcHA6IEFkZGVkLgorKyAgICAgICAgKERldGVjdFJl
Y3Vyc2lvbjo6RnVuY3Rpb25Ob2RlOjpGdW5jdGlvbk5vZGUpOgorKyAgICAgICAgKERldGVjdFJl
Y3Vyc2lvbjo6RnVuY3Rpb25Ob2RlOjpnZXROYW1lKToKKysgICAgICAgIChEZXRlY3RSZWN1cnNp
b246OkZ1bmN0aW9uTm9kZTo6YWRkQ2FsbGVlKToKKysgICAgICAgIChEZXRlY3RSZWN1cnNpb246
OkZ1bmN0aW9uTm9kZTo6ZGV0ZWN0UmVjdXJzaW9uKToKKysgICAgICAgIChEZXRlY3RSZWN1cnNp
b246OkRldGVjdFJlY3Vyc2lvbik6CisrICAgICAgICAoRGV0ZWN0UmVjdXJzaW9uOjp+RGV0ZWN0
UmVjdXJzaW9uKToKKysgICAgICAgIChEZXRlY3RSZWN1cnNpb246OnZpc2l0QWdncmVnYXRlKToK
KysgICAgICAgIChEZXRlY3RSZWN1cnNpb246OmRldGVjdFJlY3Vyc2lvbik6CisrICAgICAgICAo
RGV0ZWN0UmVjdXJzaW9uOjpmaW5kRnVuY3Rpb25CeU5hbWUpOgorKyAgICAgICAgKiBzcmMvY29t
cGlsZXIvRGV0ZWN0UmVjdXJzaW9uLmg6IFJlbmFtZWQgZnJvbSBTb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9zcmMvY29tcGlsZXIvRGV0ZWN0Q2FsbERlcHRoLmguCisrICAgICAgICAqIHNyYy9jb21w
aWxlci9EaWFnbm9zdGljcy5jcHA6CisrICAgICAgICAoVERpYWdub3N0aWNzOjp3cml0ZUluZm8p
OgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvRm9yTG9vcFVucm9sbC5jcHA6CisrICAgICAgICAo
Rm9yTG9vcFVucm9sbDo6ZXZhbHVhdGVJbnRDb25zdGFudCk6CisrICAgICAgICAqIHNyYy9jb21w
aWxlci9JbmZvU2luay5jcHA6CisrICAgICAgICAoVEluZm9TaW5rQmFzZTo6cHJlZml4KToKKysg
ICAgICAgIChUSW5mb1NpbmtCYXNlOjpsb2NhdGlvbik6CisrICAgICAgICAoVEluZm9TaW5rQmFz
ZTo6bWVzc2FnZSk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9JbmZvU2luay5oOgorKyAgICAg
ICAgKiBzcmMvY29tcGlsZXIvSW5pdGlhbGl6ZS5jcHA6CisrICAgICAgICAoQnVpbHRJbkZ1bmN0
aW9uc0NvbW1vbik6CisrICAgICAgICAoQnVpbHRJbkZ1bmN0aW9uc1ZlcnRleCk6CisrICAgICAg
ICAoVEJ1aWx0SW5zOjppbml0aWFsaXplKToKKysgICAgICAgIChJZGVudGlmeUJ1aWx0SW5zKToK
KysgICAgICAgIChJbml0RXh0ZW5zaW9uQmVoYXZpb3IpOgorKyAgICAgICAgKiBzcmMvY29tcGls
ZXIvSW50ZXJtZWRpYXRlLmNwcDoKKysgICAgICAgIChUSW50ZXJtZWRpYXRlOjphZGRTeW1ib2wp
OgorKyAgICAgICAgKFRJbnRlcm1lZGlhdGU6OmFkZEJpbmFyeU1hdGgpOgorKyAgICAgICAgKFRJ
bnRlcm1lZGlhdGU6OmFkZEFzc2lnbik6CisrICAgICAgICAoVEludGVybWVkaWF0ZTo6YWRkSW5k
ZXgpOgorKyAgICAgICAgKFRJbnRlcm1lZGlhdGU6OmFkZFVuYXJ5TWF0aCk6CisrICAgICAgICAo
VEludGVybWVkaWF0ZTo6c2V0QWdncmVnYXRlT3BlcmF0b3IpOgorKyAgICAgICAgKFRJbnRlcm1l
ZGlhdGU6OmFkZENvbnZlcnNpb24pOgorKyAgICAgICAgKFRJbnRlcm1lZGlhdGU6Omdyb3dBZ2dy
ZWdhdGUpOgorKyAgICAgICAgKFRJbnRlcm1lZGlhdGU6Om1ha2VBZ2dyZWdhdGUpOgorKyAgICAg
ICAgKFRJbnRlcm1lZGlhdGU6OmFkZFNlbGVjdGlvbik6CisrICAgICAgICAoVEludGVybWVkaWF0
ZTo6YWRkQ29tbWEpOgorKyAgICAgICAgKFRJbnRlcm1lZGlhdGU6OmFkZENvbnN0YW50VW5pb24p
OgorKyAgICAgICAgKFRJbnRlcm1lZGlhdGU6OmFkZFN3aXp6bGUpOgorKyAgICAgICAgKFRJbnRl
cm1lZGlhdGU6OmFkZExvb3ApOgorKyAgICAgICAgKFRJbnRlcm1lZGlhdGU6OmFkZEJyYW5jaCk6
CisrICAgICAgICAoVEludGVybVVuYXJ5Ojpwcm9tb3RlKToKKysgICAgICAgIChUSW50ZXJtQmlu
YXJ5Ojpwcm9tb3RlKToKKysgICAgICAgIChDb21wYXJlU3RydWN0KToKKysgICAgICAgIChDb21w
YXJlU3RydWN0dXJlKToKKysgICAgICAgIChUSW50ZXJtQ29uc3RhbnRVbmlvbjo6Zm9sZCk6Cisr
ICAgICAgICAoVEludGVybWVkaWF0ZTo6cHJvbW90ZUNvbnN0YW50VW5pb24pOgorKyAgICAgICAg
KiBzcmMvY29tcGlsZXIvT3V0cHV0R0xTTC5jcHA6CisrICAgICAgICAoVE91dHB1dEdMU0w6Ondy
aXRlVmFyaWFibGVQcmVjaXNpb24pOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvT3V0cHV0R0xT
TC5oOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvT3V0cHV0R0xTTEJhc2UuY3BwOgorKyAgICAg
ICAgKFRPdXRwdXRHTFNMQmFzZTo6d3JpdGVWYXJpYWJsZVR5cGUpOgorKyAgICAgICAgKFRPdXRw
dXRHTFNMQmFzZTo6d3JpdGVDb25zdGFudFVuaW9uKToKKysgICAgICAgIChUT3V0cHV0R0xTTEJh
c2U6OnZpc2l0QmluYXJ5KToKKysgICAgICAgIChUT3V0cHV0R0xTTEJhc2U6OnZpc2l0QWdncmVn
YXRlKToKKysgICAgICAgIChUT3V0cHV0R0xTTEJhc2U6OmdldFR5cGVOYW1lKToKKysgICAgICAg
IChUT3V0cHV0R0xTTEJhc2U6Omhhc2hGdW5jdGlvbk5hbWUpOgorKyAgICAgICAgKiBzcmMvY29t
cGlsZXIvT3V0cHV0R0xTTEJhc2UuaDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL091dHB1dEhM
U0wuY3BwOgorKyAgICAgICAgKHNoOjpPdXRwdXRITFNMOjpPdXRwdXRITFNMKToKKysgICAgICAg
IChzaDo6T3V0cHV0SExTTDo6aGVhZGVyKToKKysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6dmlz
aXRTeW1ib2wpOgorKyAgICAgICAgKHNoOjpPdXRwdXRITFNMOjp2aXNpdEJpbmFyeSk6CisrICAg
ICAgICAoc2g6Ok91dHB1dEhMU0w6OnZpc2l0QWdncmVnYXRlKToKKysgICAgICAgIChzaDo6T3V0
cHV0SExTTDo6dmlzaXRTZWxlY3Rpb24pOgorKyAgICAgICAgKHNoOjpPdXRwdXRITFNMOjp2aXNp
dExvb3ApOgorKyAgICAgICAgKHNoOjpPdXRwdXRITFNMOjpoYW5kbGVFeGNlc3NpdmVMb29wKToK
KysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6dHlwZVN0cmluZyk6CisrICAgICAgICAoc2g6Ok91
dHB1dEhMU0w6OmluaXRpYWxpemVyKToKKysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6YWRkQ29u
c3RydWN0b3IpOgorKyAgICAgICAgKHNoOjpPdXRwdXRITFNMOjp3cml0ZUNvbnN0YW50VW5pb24p
OgorKyAgICAgICAgKHNoOjpPdXRwdXRITFNMOjpkZWNvcmF0ZUZpZWxkKToKKysgICAgICAgICog
c3JjL2NvbXBpbGVyL091dHB1dEhMU0wuaDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL1BhcnNl
SGVscGVyLmNwcDoKKysgICAgICAgIChUUGFyc2VDb250ZXh0OjpwYXJzZVZlY3RvckZpZWxkcyk6
CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6cGFyc2VNYXRyaXhGaWVsZHMpOgorKyAgICAgICAg
KFRQYXJzZUNvbnRleHQ6OmVycm9yKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0Ojp3YXJuaW5n
KToKKysgICAgICAgIChUUGFyc2VDb250ZXh0Ojphc3NpZ25FcnJvcik6CisrICAgICAgICAoVFBh
cnNlQ29udGV4dDo6dW5hcnlPcEVycm9yKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0OjpiaW5h
cnlPcEVycm9yKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0OjpwcmVjaXNpb25FcnJvckNoZWNr
KToKKysgICAgICAgIChUUGFyc2VDb250ZXh0OjpsVmFsdWVFcnJvckNoZWNrKToKKysgICAgICAg
IChUUGFyc2VDb250ZXh0OjpnbG9iYWxFcnJvckNoZWNrKToKKysgICAgICAgIChUUGFyc2VDb250
ZXh0OjpyZXNlcnZlZEVycm9yQ2hlY2spOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OmNvbnN0
cnVjdG9yRXJyb3JDaGVjayk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6dm9pZEVycm9yQ2hl
Y2spOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OmJvb2xFcnJvckNoZWNrKToKKysgICAgICAg
IChUUGFyc2VDb250ZXh0OjpzYW1wbGVyRXJyb3JDaGVjayk6CisrICAgICAgICAoVFBhcnNlQ29u
dGV4dDo6c3RydWN0UXVhbGlmaWVyRXJyb3JDaGVjayk6CisrICAgICAgICAoVFBhcnNlQ29udGV4
dDo6cGFyYW1ldGVyU2FtcGxlckVycm9yQ2hlY2spOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6
OmNvbnRhaW5zU2FtcGxlcik6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6YXJyYXlTaXplRXJy
b3JDaGVjayk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6YXJyYXlRdWFsaWZpZXJFcnJvckNo
ZWNrKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0OjphcnJheVR5cGVFcnJvckNoZWNrKToKKysg
ICAgICAgIChUUGFyc2VDb250ZXh0OjphcnJheUVycm9yQ2hlY2spOgorKyAgICAgICAgKFRQYXJz
ZUNvbnRleHQ6OmFycmF5U2V0TWF4U2l6ZSk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6bm9u
SW5pdENvbnN0RXJyb3JDaGVjayk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6bm9uSW5pdEVy
cm9yQ2hlY2spOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OnBhcmFtRXJyb3JDaGVjayk6Cisr
ICAgICAgICAoVFBhcnNlQ29udGV4dDo6ZXh0ZW5zaW9uRXJyb3JDaGVjayk6CisrICAgICAgICAo
VFBhcnNlQ29udGV4dDo6aGFuZGxlRXh0ZW5zaW9uRGlyZWN0aXZlKToKKysgICAgICAgIChUUGFy
c2VDb250ZXh0OjpoYW5kbGVQcmFnbWFEaXJlY3RpdmUpOgorKyAgICAgICAgKFRQYXJzZUNvbnRl
eHQ6OmZpbmRGdW5jdGlvbik6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6ZXhlY3V0ZUluaXRp
YWxpemVyKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0OjphZGRDb25zdHJ1Y3Rvcik6CisrICAg
ICAgICAoVFBhcnNlQ29udGV4dDo6Y29uc3RydWN0QnVpbHRJbik6CisrICAgICAgICAoVFBhcnNl
Q29udGV4dDo6Y29uc3RydWN0U3RydWN0KToKKysgICAgICAgIChUUGFyc2VDb250ZXh0OjphZGRD
b25zdFZlY3Rvck5vZGUpOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OmFkZENvbnN0TWF0cml4
Tm9kZSk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6YWRkQ29uc3RBcnJheU5vZGUpOgorKyAg
ICAgICAgKFRQYXJzZUNvbnRleHQ6OmFkZENvbnN0U3RydWN0KToKKysgICAgICAgIChUUGFyc2VD
b250ZXh0OjplbnRlclN0cnVjdERlY2xhcmF0aW9uKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0
OjpzdHJ1Y3ROZXN0aW5nRXJyb3JDaGVjayk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9QYXJz
ZUhlbHBlci5oOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OlRQYXJzZUNvbnRleHQpOgorKyAg
ICAgICAgKFRQYXJzZUNvbnRleHQ6OnByYWdtYSk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9Q
b29sQWxsb2MuY3BwOgorKyAgICAgICAgKFRQb29sQWxsb2NhdG9yOjphbGxvY2F0ZSk6CisrICAg
ICAgICAqIHNyYy9jb21waWxlci9TaEhhbmRsZS5oOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIv
U2hhZGVyTGFuZy5jcHA6CisrICAgICAgICAoU2hJbml0QnVpbHRJblJlc291cmNlcyk6CisrICAg
ICAgICAqIHNyYy9jb21waWxlci9TeW1ib2xUYWJsZS5jcHA6CisrICAgICAgICAoVFR5cGU6OlRU
eXBlKToKKysgICAgICAgIChUVHlwZTo6YnVpbGRNYW5nbGVkTmFtZSk6CisrICAgICAgICAoVFR5
cGU6OmdldFN0cnVjdFNpemUpOgorKyAgICAgICAgKFRUeXBlOjpjb21wdXRlRGVlcGVzdFN0cnVj
dE5lc3RpbmcpOgorKyAgICAgICAgKFRUeXBlOjppc1N0cnVjdHVyZUNvbnRhaW5pbmdBcnJheXMp
OgorKyAgICAgICAgKFRTeW1ib2xUYWJsZUxldmVsOjpyZWxhdGVUb0V4dGVuc2lvbik6CisrICAg
ICAgICAoVFN5bWJvbDo6VFN5bWJvbCk6CisrICAgICAgICAoVFZhcmlhYmxlOjpUVmFyaWFibGUp
OgorKyAgICAgICAgKFRWYXJpYWJsZTo6Y2xvbmUpOgorKyAgICAgICAgKFRGdW5jdGlvbjo6VEZ1
bmN0aW9uKToKKysgICAgICAgIChURnVuY3Rpb246OmNsb25lKToKKysgICAgICAgIChUU3ltYm9s
VGFibGVMZXZlbDo6Y2xvbmUpOgorKyAgICAgICAgKFRTeW1ib2xUYWJsZTo6Y29weVRhYmxlKToK
KysgICAgICAgICogc3JjL2NvbXBpbGVyL1N5bWJvbFRhYmxlLmg6CisrICAgICAgICAoVFZhcmlh
YmxlOjpUVmFyaWFibGUpOgorKyAgICAgICAgKFRWYXJpYWJsZTo6dXBkYXRlQXJyYXlJbmZvcm1h
dGlvblR5cGUpOgorKyAgICAgICAgKFRWYXJpYWJsZTo6Z2V0QXJyYXlJbmZvcm1hdGlvblR5cGUp
OgorKyAgICAgICAgKFRQYXJhbWV0ZXI6OmNvcHlQYXJhbSk6CisrICAgICAgICAoVEZ1bmN0aW9u
OjpyZWxhdGVUb0V4dGVuc2lvbik6CisrICAgICAgICAoVEZ1bmN0aW9uOjpnZXRFeHRlbnNpb24p
OgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvVHlwZXMuaDoKKysgICAgICAgIChOZXdQb29sVFR5
cGVMaXN0KToKKysgICAgICAgIChUVHlwZTo6VFR5cGUpOgorKyAgICAgICAgKFRUeXBlOjpjb3B5
VHlwZSk6CisrICAgICAgICAoVFR5cGU6OmNsb25lKToKKysgICAgICAgIChUVHlwZTo6Z2V0T2Jq
ZWN0U2l6ZSk6CisrICAgICAgICAoVFR5cGU6OmdldE1heEFycmF5U2l6ZSk6CisrICAgICAgICAo
VFR5cGU6OnNldE1heEFycmF5U2l6ZSk6CisrICAgICAgICAoVFR5cGU6OmNsZWFyQXJyYXluZXNz
KToKKysgICAgICAgIChUVHlwZTo6c2V0QXJyYXlJbmZvcm1hdGlvblR5cGUpOgorKyAgICAgICAg
KFRUeXBlOjpnZXRBcnJheUluZm9ybWF0aW9uVHlwZSk6CisrICAgICAgICAoVFR5cGU6OmdldFN0
cnVjdCk6CisrICAgICAgICAoVFR5cGU6OnNldFN0cnVjdCk6CisrICAgICAgICAoVFR5cGU6Omdl
dFR5cGVOYW1lKToKKysgICAgICAgIChUVHlwZTo6c2V0VHlwZU5hbWUpOgorKyAgICAgICAgKFRU
eXBlOjppc0ZpZWxkKToKKysgICAgICAgIChUVHlwZTo6Z2V0RmllbGROYW1lKToKKysgICAgICAg
IChUVHlwZTo6c2V0RmllbGROYW1lKToKKysgICAgICAgIChUVHlwZTo6Z2V0TWFuZ2xlZE5hbWUp
OgorKyAgICAgICAgKFRUeXBlOjpnZXREZWVwZXN0U3RydWN0TmVzdGluZyk6CisrICAgICAgICAo
VFB1YmxpY1R5cGU6OnNldEJhc2ljKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL1ZhcmlhYmxl
SW5mby5jcHA6CisrICAgICAgICAoZ2V0VXNlckRlZmluZWRWYXJpYWJsZUluZm8pOgorKyAgICAg
ICAgKiBzcmMvY29tcGlsZXIvYnVpbHRpbl9zeW1ib2xfdGFibGUuY3BwOiBSZW1vdmVkLgorKyAg
ICAgICAgKiBzcmMvY29tcGlsZXIvYnVpbHRpbl9zeW1ib2xfdGFibGUuaDogUmVtb3ZlZC4KKysg
ICAgICAgICogc3JjL2NvbXBpbGVyL2J1aWx0aW5fc3ltYm9scy5qc29uOiBSZW1vdmVkLgorKyAg
ICAgICAgKiBzcmMvY29tcGlsZXIvZ2VuZXJhdGVfYnVpbHRpbl9zeW1ib2xfdGFibGUucHk6IFJl
bW92ZWQuCisrICAgICAgICAqIHNyYy9jb21waWxlci9nbHNsYW5nLmw6CisrICAgICAgICAqIHNy
Yy9jb21waWxlci9nbHNsYW5nLnk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9nbHNsYW5nX2xl
eC5jcHA6CisrICAgICAgICAoeXlfZ2V0X3ByZXZpb3VzX3N0YXRlKToKKysgICAgICAgICh5eV90
cnlfTlVMX3RyYW5zKToKKysgICAgICAgICh5eV9wdXNoX3N0YXRlKToKKysgICAgICAgICh5eV9w
b3Bfc3RhdGUpOgorKyAgICAgICAgKHl5X3RvcF9zdGF0ZSk6CisrICAgICAgICAoc3RyaW5nX2lu
cHV0KToKKysgICAgICAgIChjaGVja190eXBlKToKKysgICAgICAgIChyZXNlcnZlZF93b3JkKToK
KysgICAgICAgICh5eWVycm9yKToKKysgICAgICAgIChnbHNsYW5nX3NjYW4pOgorKyAgICAgICAg
KiBzcmMvY29tcGlsZXIvZ2xzbGFuZ190YWIuY3BwOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIv
Z2xzbGFuZ190YWIuaDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL2ludGVybU91dC5jcHA6Cisr
ICAgICAgICAoVE91dHB1dFRyYXZlcnNlcjo6dmlzaXRVbmFyeSk6CisrICAgICAgICAoVE91dHB1
dFRyYXZlcnNlcjo6dmlzaXRBZ2dyZWdhdGUpOgorKyAgICAgICAgKFRPdXRwdXRUcmF2ZXJzZXI6
OnZpc2l0Q29uc3RhbnRVbmlvbik6CisrICAgICAgICAqIHNyYy9jb21waWxlci9pbnRlcm1lZGlh
dGUuaDoKKysgICAgICAgIChUSW50ZXJtTm9kZTo6VEludGVybU5vZGUpOgorKyAgICAgICAgKFRJ
bnRlcm1Ob2RlOjpnZXRMaW5lKToKKysgICAgICAgIChUSW50ZXJtTm9kZTo6c2V0TGluZSk6Cisr
ICAgICAgICAoVEludGVybU5vZGU6On5USW50ZXJtTm9kZSk6CisrICAgICAgICAoVEludGVybUNv
bnN0YW50VW5pb246OnNldFVuaW9uQXJyYXlQb2ludGVyKToKKysgICAgICAgIChUSW50ZXJtQWdn
cmVnYXRlOjpUSW50ZXJtQWdncmVnYXRlKToKKysgICAgICAgIChUSW50ZXJtQWdncmVnYXRlOjpz
ZXRFbmRMaW5lKToKKysgICAgICAgIChUSW50ZXJtQWdncmVnYXRlOjpnZXRFbmRMaW5lKToKKysg
ICAgICAgIChUSW50ZXJtVHJhdmVyc2VyOjpUSW50ZXJtVHJhdmVyc2VyKToKKysgICAgICAgIChU
SW50ZXJtVHJhdmVyc2VyOjppbmNyZW1lbnREZXB0aCk6CisrICAgICAgICAqIHNyYy9jb21waWxl
ci9sb2NhbGludGVybWVkaWF0ZS5oOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvcGFyc2VDb25z
dC5jcHA6CisrICAgICAgICAoVENvbnN0VHJhdmVyc2VyOjp2aXNpdFN5bWJvbCk6CisrICAgICAg
ICAoVENvbnN0VHJhdmVyc2VyOjp2aXNpdEJpbmFyeSk6CisrICAgICAgICAoVENvbnN0VHJhdmVy
c2VyOjp2aXNpdFVuYXJ5KToKKysgICAgICAgIChUQ29uc3RUcmF2ZXJzZXI6OnZpc2l0QWdncmVn
YXRlKToKKysgICAgICAgIChUQ29uc3RUcmF2ZXJzZXI6OnZpc2l0U2VsZWN0aW9uKToKKysgICAg
ICAgIChUQ29uc3RUcmF2ZXJzZXI6OnZpc2l0Q29uc3RhbnRVbmlvbik6CisrICAgICAgICAoVENv
bnN0VHJhdmVyc2VyOjp2aXNpdExvb3ApOgorKyAgICAgICAgKFRDb25zdFRyYXZlcnNlcjo6dmlz
aXRCcmFuY2gpOgorKyAgICAgICAgKFRJbnRlcm1lZGlhdGU6OnBhcnNlQ29uc3RUcmVlKToKKysg
ICAgICAgICogc3JjL2NvbXBpbGVyL3RpbWluZy9SZXN0cmljdFZlcnRleFNoYWRlclRpbWluZy5j
cHA6CisrICAgICAgICAoUmVzdHJpY3RWZXJ0ZXhTaGFkZXJUaW1pbmc6OnZpc2l0U3ltYm9sKToK
KysgICAgICAgICogc3JjL2xpYkVHTC9Db25maWcuY3BwOiBSZW1vdmVkLgorKyAgICAgICAgKiBz
cmMvbGliRUdML0NvbmZpZy5oOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvbGliRUdML0Rpc3Bs
YXkuY3BwOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvbGliRUdML0Rpc3BsYXkuaDogUmVtb3Zl
ZC4KKysgICAgICAgICogc3JjL2xpYkVHTC9SRUFETUU6IEFkZGVkLgorKyAgICAgICAgKiBzcmMv
bGliRUdML1NoYWRlckNhY2hlLmg6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9saWJFR0wvU3Vy
ZmFjZS5jcHA6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9saWJFR0wvU3VyZmFjZS5oOiBSZW1v
dmVkLgorKyAgICAgICAgKiBzcmMvbGliRUdML2xpYkVHTC5jcHA6IFJlbW92ZWQuCisrICAgICAg
ICAqIHNyYy9saWJFR0wvbGliRUdMLmRlZjogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xpYkVH
TC9saWJFR0wucmM6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9saWJFR0wvbGliRUdMLnZjeHBy
b2o6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9saWJFR0wvbGliRUdMLnZjeHByb2ouZmlsdGVy
czogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xpYkVHTC9tYWluLmNwcDogUmVtb3ZlZC4KKysg
ICAgICAgICogc3JjL2xpYkVHTC9tYWluLmg6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9saWJF
R0wvcmVzb3VyY2UuaDogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9CaW5hcnlT
dHJlYW0uaDogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9CbGl0LmNwcDogUmVt
b3ZlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9CbGl0Lmg6IFJlbW92ZWQuCisrICAgICAg
ICAqIHNyYy9saWJHTEVTdjIvQnVmZmVyLmNwcDogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xp
YkdMRVN2Mi9CdWZmZXIuaDogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9Db250
ZXh0LmNwcDogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9Db250ZXh0Lmg6IFJl
bW92ZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvRDNEQ29uc3RhbnRUYWJsZS5jcHA6IFJl
bW92ZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvRDNEQ29uc3RhbnRUYWJsZS5oOiBSZW1v
dmVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL0ZlbmNlLmNwcDogUmVtb3ZlZC4KKysgICAg
ICAgICogc3JjL2xpYkdMRVN2Mi9GZW5jZS5oOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvbGli
R0xFU3YyL0Zsb2F0MTZUb0Zsb2F0MzIuY3BwOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvbGli
R0xFU3YyL0Zsb2F0MTZUb0Zsb2F0MzIucHk6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9saWJH
TEVTdjIvRnJhbWVidWZmZXIuY3BwOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3Yy
L0ZyYW1lYnVmZmVyLmg6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvSGFuZGxl
QWxsb2NhdG9yLmNwcDogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9IYW5kbGVB
bGxvY2F0b3IuaDogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9JbmRleERhdGFN
YW5hZ2VyLmNwcDogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9JbmRleERhdGFN
YW5hZ2VyLmg6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvUHJvZ3JhbS5jcHA6
IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvUHJvZ3JhbS5oOiBSZW1vdmVkLgor
KyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1Byb2dyYW1CaW5hcnkuY3BwOiBSZW1vdmVkLgorKyAg
ICAgICAgKiBzcmMvbGliR0xFU3YyL1Byb2dyYW1CaW5hcnkuaDogUmVtb3ZlZC4KKysgICAgICAg
ICogc3JjL2xpYkdMRVN2Mi9RdWVyeS5jcHA6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9saWJH
TEVTdjIvUXVlcnkuaDogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9SRUFETUU6
IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1JlbmRlcmJ1ZmZlci5jcHA6IFJlbW92
ZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvUmVuZGVyYnVmZmVyLmg6IFJlbW92ZWQuCisr
ICAgICAgICAqIHNyYy9saWJHTEVTdjIvUmVzb3VyY2VNYW5hZ2VyLmNwcDogUmVtb3ZlZC4KKysg
ICAgICAgICogc3JjL2xpYkdMRVN2Mi9SZXNvdXJjZU1hbmFnZXIuaDogUmVtb3ZlZC4KKysgICAg
ICAgICogc3JjL2xpYkdMRVN2Mi9TaGFkZXIuY3BwOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMv
bGliR0xFU3YyL1NoYWRlci5oOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1Rl
eHR1cmUuY3BwOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1RleHR1cmUuaDog
UmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9UZXh0dXJlU1NFMi5jcHA6IFJlbW92
ZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvVmVydGV4RGF0YU1hbmFnZXIuY3BwOiBSZW1v
dmVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1ZlcnRleERhdGFNYW5hZ2VyLmg6IFJlbW92
ZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvbGliR0xFU3YyLmNwcDogUmVtb3ZlZC4KKysg
ICAgICAgICogc3JjL2xpYkdMRVN2Mi9saWJHTEVTdjIuZGVmOiBSZW1vdmVkLgorKyAgICAgICAg
KiBzcmMvbGliR0xFU3YyL2xpYkdMRVN2Mi5yYzogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xp
YkdMRVN2Mi9saWJHTEVTdjIudmN4cHJvajogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xpYkdM
RVN2Mi9saWJHTEVTdjIudmN4cHJvai5maWx0ZXJzOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMv
bGliR0xFU3YyL21haW4uY3BwOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL21h
aW4uaDogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9tYXRodXRpbC5oOiBSZW1v
dmVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3Jlc291cmNlLmg6IFJlbW92ZWQuCisrICAg
ICAgICAqIHNyYy9saWJHTEVTdjIvc2hhZGVycy9CbGl0LnBzOiBSZW1vdmVkLgorKyAgICAgICAg
KiBzcmMvbGliR0xFU3YyL3NoYWRlcnMvQmxpdC52czogUmVtb3ZlZC4KKysgICAgICAgICogc3Jj
L2xpYkdMRVN2Mi9zaGFkZXJzL2NvbXBvbmVudG1hc2twcy5oOiBSZW1vdmVkLgorKyAgICAgICAg
KiBzcmMvbGliR0xFU3YyL3NoYWRlcnMvZmxpcHl2cy5oOiBSZW1vdmVkLgorKyAgICAgICAgKiBz
cmMvbGliR0xFU3YyL3NoYWRlcnMvZ2VuZXJhdGVfc2hhZGVycy5iYXQ6IFJlbW92ZWQuCisrICAg
ICAgICAqIHNyYy9saWJHTEVTdjIvc2hhZGVycy9sdW1pbmFuY2Vwcy5oOiBSZW1vdmVkLgorKyAg
ICAgICAgKiBzcmMvbGliR0xFU3YyL3NoYWRlcnMvcGFzc3Rocm91Z2hwcy5oOiBSZW1vdmVkLgor
KyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3NoYWRlcnMvc3RhbmRhcmR2cy5oOiBSZW1vdmVkLgor
KyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3V0aWxpdGllcy5jcHA6IFJlbW92ZWQuCisrICAgICAg
ICAqIHNyYy9saWJHTEVTdjIvdXRpbGl0aWVzLmg6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9s
aWJHTEVTdjIvdmVydGV4Y29udmVyc2lvbi5oOiBSZW1vdmVkLgorKworKzIwMTMtMDctMTkgIEFs
ZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5AYXBwbGUuY29tPgorKworKyAgICAgICAgR2Vu
ZXJhdGUgZGVyaXZlZCBmaWxlcyBpbiBBTkdMRSBhdCBidWlsZCB0aW1lIHJhdGhlciB0aGFuIHdo
ZW4gdXBkYXRpbmcgZnJvbSB1cHN0cmVhbS4KKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xMTg4NzIKKysKKysgICAgICAgIFJldmlld2VkIGJ5IE1hcmsg
Um93ZS4KKysKKysgICAgICAgICogQU5HTEUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajogTWFk
ZSBEZXJpdmVkIFNvdXJjZXMgdGFyZ2V0IHdoaWNoIGNhbGxzIERlcml2ZWRTb3VyY2VzLm1ha2Us
CisrICAgICAgICBtb3ZlZCBnZW5lcmF0ZWQgZmlsZXMgaW50byBEZXJpdmVkIFNvdXJjZXMgZ3Jv
dXAuCisrICAgICAgICAqIERlcml2ZWRTb3VyY2VzLm1ha2U6IEFkZGVkLgorKworKzIwMTMtMDct
MTggIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5AYXBwbGUuY29tPgorKworKyAgICAg
ICAgQWRkZWQgcHJldmlvdXNseSB1bmluY2x1ZGVkIGZpbGVzIGZyb20gQU5HTEUgcjI0MjYgd2l0
aCB0aGVzZSBleGNlcHRpb25zOgorKyAgICAgICAgTm8gZ3lwIGZpbGVzIGFyZSBpbmNsdWRlZC4g
IE5vIFdlYktpdCBwb3J0cyB1c2UgdGhlbS4KKysgICAgICAgIEFOR0xFLnNsbiBpcyBub3QgaW5j
bHVkZWQuICBJIHdpbGwgbm90IHVzZSB0aGF0LgorKyAgICAgICAgdHJhbnNsYXRvcl9jb21tb24g
YW5kIHRyYW5zbGF0b3JfaGxzbCBwcm9qZWN0cyBhbmQgZmlsdGVycyBhcmUgbm90IGluY2x1ZGVk
LgorKyAgICAgICAgSSB3aWxsIG5lZWQgdG8gbWFrZSBhIGN1c3RvbWl6ZWQgdHJhbnNsYXRvciAg
cHJvamVjdCB0aGF0IHVzZXMgdGhlIEdMU0wgdHJhbnNsYXRvciBpbnN0ZWFkIG9mIHRoZSBITFNM
LgorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTExODgz
MworKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGVhbiBKYWNrc29uLgorKworKyAgICAgICAgKiBz
cmMvY29tcGlsZXIvYnVpbHRpbl9zeW1ib2xzLmpzb246IEFkZGVkLgorKyAgICAgICAgKiBzcmMv
Y29tcGlsZXIvZ2VuZXJhdGVfYnVpbHRpbl9zeW1ib2xfdGFibGUucHk6IEFkZGVkLgorKyAgICAg
ICAgKHBhcnNlQnVpbHRpbik6CisrICAgICAgICAqIHNyYy9saWJFR0w6IFJlcGxhY2VkLgorKyAg
ICAgICAgKiBzcmMvbGliRUdML0NvbmZpZy5jcHA6IEFkZGVkLgorKyAgICAgICAgKGVnbDo6Q29u
ZmlnOjpDb25maWcpOgorKyAgICAgICAgKGVnbDo6Q29uZmlnOjpzZXREZWZhdWx0cyk6CisrICAg
ICAgICAoZWdsOjpDb25maWc6OnNldCk6CisrICAgICAgICAoZWdsOjpDb25maWc6OmdldEhhbmRs
ZSk6CisrICAgICAgICAoZWdsOjpTb3J0Q29uZmlnOjpTb3J0Q29uZmlnKToKKysgICAgICAgIChl
Z2w6OlNvcnRDb25maWc6OnNjYW5Gb3JXYW50ZWRDb21wb25lbnRzKToKKysgICAgICAgIChlZ2w6
OlNvcnRDb25maWc6OndhbnRlZENvbXBvbmVudHNTaXplKToKKysgICAgICAgIChlZ2w6OlNvcnRD
b25maWc6Om9wZXJhdG9yKCkpOgorKyAgICAgICAgKGVnbDo6Q29uZmlnU2V0OjpDb25maWdTZXQp
OgorKyAgICAgICAgKGVnbDo6Q29uZmlnU2V0OjphZGQpOgorKyAgICAgICAgKGVnbDo6Q29uZmln
U2V0OjpzaXplKToKKysgICAgICAgIChlZ2w6OkNvbmZpZ1NldDo6Z2V0Q29uZmlncyk6CisrICAg
ICAgICAoZWdsOjpDb25maWdTZXQ6OmdldCk6CisrICAgICAgICAqIHNyYy9saWJFR0wvQ29uZmln
Lmg6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGliRUdML0Rpc3BsYXkuY3BwOiBBZGRlZC4KKysg
ICAgICAgIChlZ2w6OkRpc3BsYXk6OmdldERpc3BsYXkpOgorKyAgICAgICAgKGVnbDo6RGlzcGxh
eTo6RGlzcGxheSk6CisrICAgICAgICAoZWdsOjpEaXNwbGF5Ojp+RGlzcGxheSk6CisrICAgICAg
ICAoZWdsOjpEaXNwbGF5Ojppbml0aWFsaXplKToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OnRl
cm1pbmF0ZSk6CisrICAgICAgICAoZWdsOjpEaXNwbGF5OjpzdGFydFNjZW5lKToKKysgICAgICAg
IChlZ2w6OkRpc3BsYXk6OmVuZFNjZW5lKToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OmdldENv
bmZpZ3MpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6Z2V0Q29uZmlnQXR0cmliKToKKysgICAg
ICAgIChlZ2w6OkRpc3BsYXk6OmNyZWF0ZURldmljZSk6CisrICAgICAgICAoZWdsOjpEaXNwbGF5
Ojppbml0aWFsaXplRGV2aWNlKToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OnJlc2V0RGV2aWNl
KToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OmNyZWF0ZVdpbmRvd1N1cmZhY2UpOgorKyAgICAg
ICAgKGVnbDo6RGlzcGxheTo6Y3JlYXRlT2Zmc2NyZWVuU3VyZmFjZSk6CisrICAgICAgICAoZWds
OjpEaXNwbGF5OjpjcmVhdGVDb250ZXh0KToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OnJlc3Rv
cmVMb3N0RGV2aWNlKToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OmRlc3Ryb3lTdXJmYWNlKToK
KysgICAgICAgIChlZ2w6OkRpc3BsYXk6OmRlc3Ryb3lDb250ZXh0KToKKysgICAgICAgIChlZ2w6
OkRpc3BsYXk6Om5vdGlmeURldmljZUxvc3QpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6aXNE
ZXZpY2VMb3N0KToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OmlzSW5pdGlhbGl6ZWQpOgorKyAg
ICAgICAgKGVnbDo6RGlzcGxheTo6aXNWYWxpZENvbmZpZyk6CisrICAgICAgICAoZWdsOjpEaXNw
bGF5Ojppc1ZhbGlkQ29udGV4dCk6CisrICAgICAgICAoZWdsOjpEaXNwbGF5Ojppc1ZhbGlkU3Vy
ZmFjZSk6CisrICAgICAgICAoZWdsOjpEaXNwbGF5OjpoYXNFeGlzdGluZ1dpbmRvd1N1cmZhY2Up
OgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6Z2V0TWluU3dhcEludGVydmFsKToKKysgICAgICAg
IChlZ2w6OkRpc3BsYXk6OmdldE1heFN3YXBJbnRlcnZhbCk6CisrICAgICAgICAoZWdsOjpEaXNw
bGF5OjpnZXREZXZpY2UpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6Z2V0RGV2aWNlQ2Fwcyk6
CisrICAgICAgICAoZWdsOjpEaXNwbGF5OjpnZXRBZGFwdGVySWRlbnRpZmllcik6CisrICAgICAg
ICAoZWdsOjpEaXNwbGF5Ojp0ZXN0RGV2aWNlTG9zdCk6CisrICAgICAgICAoZWdsOjpEaXNwbGF5
Ojp0ZXN0RGV2aWNlUmVzZXR0YWJsZSk6CisrICAgICAgICAoZWdsOjpEaXNwbGF5OjpzeW5jKToK
KysgICAgICAgIChlZ2w6OkRpc3BsYXk6OmFsbG9jYXRlRXZlbnRRdWVyeSk6CisrICAgICAgICAo
ZWdsOjpEaXNwbGF5OjpmcmVlRXZlbnRRdWVyeSk6CisrICAgICAgICAoZWdsOjpEaXNwbGF5Ojpn
ZXRNdWx0aVNhbXBsZVN1cHBvcnQpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6Z2V0RFhUMVRl
eHR1cmVTdXBwb3J0KToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OmdldERYVDNUZXh0dXJlU3Vw
cG9ydCk6CisrICAgICAgICAoZWdsOjpEaXNwbGF5OjpnZXREWFQ1VGV4dHVyZVN1cHBvcnQpOgor
KyAgICAgICAgKGVnbDo6RGlzcGxheTo6Z2V0RGVwdGhUZXh0dXJlU3VwcG9ydCk6CisrICAgICAg
ICAoZWdsOjpEaXNwbGF5OjpnZXRGbG9hdDMyVGV4dHVyZVN1cHBvcnQpOgorKyAgICAgICAgKGVn
bDo6RGlzcGxheTo6Z2V0RmxvYXQxNlRleHR1cmVTdXBwb3J0KToKKysgICAgICAgIChlZ2w6OkRp
c3BsYXk6OmdldEx1bWluYW5jZVRleHR1cmVTdXBwb3J0KToKKysgICAgICAgIChlZ2w6OkRpc3Bs
YXk6OmdldEx1bWluYW5jZUFscGhhVGV4dHVyZVN1cHBvcnQpOgorKyAgICAgICAgKGVnbDo6RGlz
cGxheTo6Z2V0VGV4dHVyZUZpbHRlckFuaXNvdHJvcHlTdXBwb3J0KToKKysgICAgICAgIChlZ2w6
OkRpc3BsYXk6OmdldEJ1ZmZlclBvb2wpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6Z2V0VGV4
dHVyZVBvb2wpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6Z2V0RXZlbnRRdWVyeVN1cHBvcnQp
OgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6Z2V0RGVmYXVsdFByZXNlbnRQYXJhbWV0ZXJzKToK
KysgICAgICAgIChlZ2w6OkRpc3BsYXk6OmluaXRFeHRlbnNpb25TdHJpbmcpOgorKyAgICAgICAg
KGVnbDo6RGlzcGxheTo6Z2V0RXh0ZW5zaW9uU3RyaW5nKToKKysgICAgICAgIChlZ2w6OkRpc3Bs
YXk6OmluaXRWZW5kb3JTdHJpbmcpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6Z2V0VmVuZG9y
U3RyaW5nKToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OnNoYXJlSGFuZGxlU3VwcG9ydGVkKToK
KysgICAgICAgIChlZ2w6OkRpc3BsYXk6OmNyZWF0ZVZlcnRleFNoYWRlcik6CisrICAgICAgICAo
ZWdsOjpEaXNwbGF5Ojpjb21waWxlU2hhZGVyU291cmNlKToKKysgICAgICAgIChlZ2w6OkRpc3Bs
YXk6OmNyZWF0ZVBpeGVsU2hhZGVyKToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OmdldFZlcnRl
eFRleHR1cmVTdXBwb3J0KToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OmdldE5vblBvd2VyMlRl
eHR1cmVTdXBwb3J0KToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OmdldE9jY2x1c2lvblF1ZXJ5
U3VwcG9ydCk6CisrICAgICAgICAoZWdsOjpEaXNwbGF5OjpnZXRJbnN0YW5jaW5nU3VwcG9ydCk6
CisrICAgICAgICAqIHNyYy9saWJFR0wvRGlzcGxheS5oOiBBZGRlZC4KKysgICAgICAgIChnZXRD
b21wYXJhYmxlT1NWZXJzaW9uKToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OmlzRDNkOUV4RGV2
aWNlKToKKysgICAgICAgICogc3JjL2xpYkVHTC9SRUFETUU6IFJlbW92ZWQuCisrICAgICAgICAq
IHNyYy9saWJFR0wvU2hhZGVyQ2FjaGUuaDogQWRkZWQuCisrICAgICAgICAoZWdsOjpTaGFkZXJD
YWNoZTo6U2hhZGVyQ2FjaGUpOgorKyAgICAgICAgKGVnbDo6U2hhZGVyQ2FjaGU6On5TaGFkZXJD
YWNoZSk6CisrICAgICAgICAoZWdsOjpTaGFkZXJDYWNoZTo6aW5pdGlhbGl6ZSk6CisrICAgICAg
ICAoZWdsOjpTaGFkZXJDYWNoZTo6Y3JlYXRlKToKKysgICAgICAgIChlZ2w6OlNoYWRlckNhY2hl
OjpjbGVhcik6CisrICAgICAgICAoZWdsOjpTaGFkZXJDYWNoZTo6Y3JlYXRlU2hhZGVyKToKKysg
ICAgICAgICogc3JjL2xpYkVHTC9TdXJmYWNlLmNwcDogQWRkZWQuCisrICAgICAgICAoZWdsOjpT
dXJmYWNlOjpTdXJmYWNlKToKKysgICAgICAgIChlZ2w6OlN1cmZhY2U6On5TdXJmYWNlKToKKysg
ICAgICAgIChlZ2w6OlN1cmZhY2U6OmluaXRpYWxpemUpOgorKyAgICAgICAgKGVnbDo6U3VyZmFj
ZTo6cmVsZWFzZSk6CisrICAgICAgICAoZWdsOjpTdXJmYWNlOjpyZXNldFN3YXBDaGFpbik6Cisr
ICAgICAgICAoZWdsOjpTdXJmYWNlOjpzd2FwUmVjdCk6CisrICAgICAgICAoZWdsOjpTdXJmYWNl
OjpnZXRXaW5kb3dIYW5kbGUpOgorKyAgICAgICAgKGVnbDo6U3VyZmFjZVdpbmRvd1Byb2MpOgor
KyAgICAgICAgKGVnbDo6U3VyZmFjZTo6c3ViY2xhc3NXaW5kb3cpOgorKyAgICAgICAgKGVnbDo6
U3VyZmFjZTo6dW5zdWJjbGFzc1dpbmRvdyk6CisrICAgICAgICAoZWdsOjpTdXJmYWNlOjpjaGVj
a0Zvck91dE9mRGF0ZVN3YXBDaGFpbik6CisrICAgICAgICAoZWdsOjpTdXJmYWNlOjpjb252ZXJ0
SW50ZXJ2YWwpOgorKyAgICAgICAgKGVnbDo6U3VyZmFjZTo6c3dhcCk6CisrICAgICAgICAoZWds
OjpTdXJmYWNlOjpwb3N0U3ViQnVmZmVyKToKKysgICAgICAgIChlZ2w6OlN1cmZhY2U6OmdldFdp
ZHRoKToKKysgICAgICAgIChlZ2w6OlN1cmZhY2U6OmdldEhlaWdodCk6CisrICAgICAgICAoZWds
OjpTdXJmYWNlOjppc1Bvc3RTdWJCdWZmZXJTdXBwb3J0ZWQpOgorKyAgICAgICAgKGVnbDo6U3Vy
ZmFjZTo6Z2V0UmVuZGVyVGFyZ2V0KToKKysgICAgICAgIChlZ2w6OlN1cmZhY2U6OmdldERlcHRo
U3RlbmNpbCk6CisrICAgICAgICAoZWdsOjpTdXJmYWNlOjpnZXRPZmZzY3JlZW5UZXh0dXJlKToK
KysgICAgICAgIChlZ2w6OlN1cmZhY2U6OnNldFN3YXBJbnRlcnZhbCk6CisrICAgICAgICAoZWds
OjpTdXJmYWNlOjpnZXRUZXh0dXJlRm9ybWF0KToKKysgICAgICAgIChlZ2w6OlN1cmZhY2U6Omdl
dFRleHR1cmVUYXJnZXQpOgorKyAgICAgICAgKGVnbDo6U3VyZmFjZTo6c2V0Qm91bmRUZXh0dXJl
KToKKysgICAgICAgIChlZ2w6OlN1cmZhY2U6OmdldEJvdW5kVGV4dHVyZSk6CisrICAgICAgICAo
ZWdsOjpTdXJmYWNlOjpnZXRGb3JtYXQpOgorKyAgICAgICAgKiBzcmMvbGliRUdML1N1cmZhY2Uu
aDogQWRkZWQuCisrICAgICAgICAoZWdsOjpTdXJmYWNlOjpnZXRTaGFyZUhhbmRsZSk6CisrICAg
ICAgICAqIHNyYy9saWJFR0wvbGliRUdMLmNwcDogQWRkZWQuCisrICAgICAgICAodmFsaWRhdGVE
aXNwbGF5KToKKysgICAgICAgICh2YWxpZGF0ZUNvbmZpZyk6CisrICAgICAgICAodmFsaWRhdGVD
b250ZXh0KToKKysgICAgICAgICh2YWxpZGF0ZVN1cmZhY2UpOgorKyAgICAgICAgKiBzcmMvbGli
RUdML2xpYkVHTC5kZWY6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGliRUdML2xpYkVHTC5yYzog
QWRkZWQuCisrICAgICAgICAqIHNyYy9saWJFR0wvbGliRUdMLnZjeHByb2o6IEFkZGVkLgorKyAg
ICAgICAgKiBzcmMvbGliRUdML2xpYkVHTC52Y3hwcm9qLmZpbHRlcnM6IEFkZGVkLgorKyAgICAg
ICAgKiBzcmMvbGliRUdML21haW4uY3BwOiBBZGRlZC4KKysgICAgICAgIChEbGxNYWluKToKKysg
ICAgICAgIChlZ2w6OnNldEN1cnJlbnRFcnJvcik6CisrICAgICAgICAoZWdsOjpnZXRDdXJyZW50
RXJyb3IpOgorKyAgICAgICAgKGVnbDo6c2V0Q3VycmVudEFQSSk6CisrICAgICAgICAoZWdsOjpn
ZXRDdXJyZW50QVBJKToKKysgICAgICAgIChlZ2w6OnNldEN1cnJlbnREaXNwbGF5KToKKysgICAg
ICAgIChlZ2w6OmdldEN1cnJlbnREaXNwbGF5KToKKysgICAgICAgIChlZ2w6OnNldEN1cnJlbnRE
cmF3U3VyZmFjZSk6CisrICAgICAgICAoZWdsOjpnZXRDdXJyZW50RHJhd1N1cmZhY2UpOgorKyAg
ICAgICAgKGVnbDo6c2V0Q3VycmVudFJlYWRTdXJmYWNlKToKKysgICAgICAgIChlZ2w6OmdldEN1
cnJlbnRSZWFkU3VyZmFjZSk6CisrICAgICAgICAoZXJyb3IpOgorKyAgICAgICAgKiBzcmMvbGli
RUdML21haW4uaDogQWRkZWQuCisrICAgICAgICAoZXJyb3IpOgorKyAgICAgICAgKHN1Y2Nlc3Mp
OgorKyAgICAgICAgKiBzcmMvbGliRUdML3Jlc291cmNlLmg6IEFkZGVkLgorKyAgICAgICAgKiBz
cmMvbGliR0xFU3YyOiBSZXBsYWNlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9CaW5hcnlT
dHJlYW0uaDogQWRkZWQuCisrICAgICAgICAoZ2w6OkJpbmFyeUlucHV0U3RyZWFtOjpCaW5hcnlJ
bnB1dFN0cmVhbSk6CisrICAgICAgICAoZ2w6OkJpbmFyeUlucHV0U3RyZWFtOjpyZWFkKToKKysg
ICAgICAgIChnbDo6QmluYXJ5SW5wdXRTdHJlYW06OnNraXApOgorKyAgICAgICAgKGdsOjpCaW5h
cnlJbnB1dFN0cmVhbTo6b2Zmc2V0KToKKysgICAgICAgIChnbDo6QmluYXJ5SW5wdXRTdHJlYW06
OmVycm9yKToKKysgICAgICAgIChnbDo6QmluYXJ5SW5wdXRTdHJlYW06OmVuZE9mU3RyZWFtKToK
KysgICAgICAgIChnbDo6QmluYXJ5T3V0cHV0U3RyZWFtOjpCaW5hcnlPdXRwdXRTdHJlYW0pOgor
KyAgICAgICAgKGdsOjpCaW5hcnlPdXRwdXRTdHJlYW06OndyaXRlKToKKysgICAgICAgIChnbDo6
QmluYXJ5T3V0cHV0U3RyZWFtOjpsZW5ndGgpOgorKyAgICAgICAgKGdsOjpCaW5hcnlPdXRwdXRT
dHJlYW06OmRhdGEpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL0JsaXQuY3BwOiBBZGRlZC4K
KysgICAgICAgIChnbDo6QmxpdDo6QmxpdCk6CisrICAgICAgICAoZ2w6OkJsaXQ6On5CbGl0KToK
KysgICAgICAgIChnbDo6QmxpdDo6aW5pdEdlb21ldHJ5KToKKysgICAgICAgIChnbDo6QmxpdDo6
c2V0U2hhZGVyKToKKysgICAgICAgIChnbDo6QmxpdDo6c2V0VmVydGV4U2hhZGVyKToKKysgICAg
ICAgIChnbDo6QmxpdDo6c2V0UGl4ZWxTaGFkZXIpOgorKyAgICAgICAgKGdsOjpCbGl0OjpnZXRT
dXJmYWNlUmVjdCk6CisrICAgICAgICAoZ2w6OkJsaXQ6OmJveEZpbHRlcik6CisrICAgICAgICAo
Z2w6OkJsaXQ6OmNvcHkpOgorKyAgICAgICAgKGdsOjpCbGl0Ojpmb3JtYXRDb252ZXJ0KToKKysg
ICAgICAgIChnbDo6QmxpdDo6c2V0Rm9ybWF0Q29udmVydFNoYWRlcnMpOgorKyAgICAgICAgKGds
OjpCbGl0Ojpjb3B5U3VyZmFjZVRvVGV4dHVyZSk6CisrICAgICAgICAoZ2w6OkJsaXQ6OnNldFZp
ZXdwb3J0KToKKysgICAgICAgIChnbDo6QmxpdDo6c2V0Q29tbW9uQmxpdFN0YXRlKToKKysgICAg
ICAgIChnbDo6QmxpdDo6cmVuZGVyKToKKysgICAgICAgIChnbDo6QmxpdDo6c2F2ZVN0YXRlKToK
KysgICAgICAgIChnbDo6QmxpdDo6cmVzdG9yZVN0YXRlKToKKysgICAgICAgICogc3JjL2xpYkdM
RVN2Mi9CbGl0Lmg6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL0J1ZmZlci5jcHA6
IEFkZGVkLgorKyAgICAgICAgKGdsOjpCdWZmZXI6OkJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkJ1
ZmZlcjo6fkJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkJ1ZmZlcjo6YnVmZmVyRGF0YSk6CisrICAg
ICAgICAoZ2w6OkJ1ZmZlcjo6YnVmZmVyU3ViRGF0YSk6CisrICAgICAgICAoZ2w6OkJ1ZmZlcjo6
Z2V0U3RhdGljVmVydGV4QnVmZmVyKToKKysgICAgICAgIChnbDo6QnVmZmVyOjpnZXRTdGF0aWNJ
bmRleEJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkJ1ZmZlcjo6aW52YWxpZGF0ZVN0YXRpY0RhdGEp
OgorKyAgICAgICAgKGdsOjpCdWZmZXI6OnByb21vdGVTdGF0aWNVc2FnZSk6CisrICAgICAgICAq
IHNyYy9saWJHTEVTdjIvQnVmZmVyLmg6IEFkZGVkLgorKyAgICAgICAgKGdsOjpCdWZmZXI6OmRh
dGEpOgorKyAgICAgICAgKGdsOjpCdWZmZXI6OnNpemUpOgorKyAgICAgICAgKGdsOjpCdWZmZXI6
OnVzYWdlKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9Db250ZXh0LmNwcDogQWRkZWQuCisr
ICAgICAgICAoZ2w6Om1ha2VTdGF0aWNTdHJpbmcpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpD
b250ZXh0KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6fkNvbnRleHQpOgorKyAgICAgICAgKGds
OjpDb250ZXh0OjptYWtlQ3VycmVudCk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6Om1hcmtBbGxT
dGF0ZURpcnR5KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6bWFya0R4VW5pZm9ybXNEaXJ0eSk6
CisrICAgICAgICAoZ2w6OkNvbnRleHQ6Om1hcmtDb250ZXh0TG9zdCk6CisrICAgICAgICAoZ2w6
OkNvbnRleHQ6OmlzQ29udGV4dExvc3QpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzZXRDbGVh
ckNvbG9yKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c2V0Q2xlYXJEZXB0aCk6CisrICAgICAg
ICAoZ2w6OkNvbnRleHQ6OnNldENsZWFyU3RlbmNpbCk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6
OnNldEN1bGxGYWNlKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6aXNDdWxsRmFjZUVuYWJsZWQp
OgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzZXRDdWxsTW9kZSk6CisrICAgICAgICAoZ2w6OkNv
bnRleHQ6OnNldEZyb250RmFjZSk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnNldERlcHRoVGVz
dCk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmlzRGVwdGhUZXN0RW5hYmxlZCk6CisrICAgICAg
ICAoZ2w6OkNvbnRleHQ6OnNldERlcHRoRnVuYyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnNl
dERlcHRoUmFuZ2UpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzZXRCbGVuZCk6CisrICAgICAg
ICAoZ2w6OkNvbnRleHQ6OmlzQmxlbmRFbmFibGVkKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6
c2V0QmxlbmRGYWN0b3JzKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c2V0QmxlbmRDb2xvcik6
CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnNldEJsZW5kRXF1YXRpb24pOgorKyAgICAgICAgKGds
OjpDb250ZXh0OjpzZXRTdGVuY2lsVGVzdCk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmlzU3Rl
bmNpbFRlc3RFbmFibGVkKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c2V0U3RlbmNpbFBhcmFt
cyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnNldFN0ZW5jaWxCYWNrUGFyYW1zKToKKysgICAg
ICAgIChnbDo6Q29udGV4dDo6c2V0U3RlbmNpbFdyaXRlbWFzayk6CisrICAgICAgICAoZ2w6OkNv
bnRleHQ6OnNldFN0ZW5jaWxCYWNrV3JpdGVtYXNrKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6
c2V0U3RlbmNpbE9wZXJhdGlvbnMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzZXRTdGVuY2ls
QmFja09wZXJhdGlvbnMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzZXRQb2x5Z29uT2Zmc2V0
RmlsbCk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmlzUG9seWdvbk9mZnNldEZpbGxFbmFibGVk
KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c2V0UG9seWdvbk9mZnNldFBhcmFtcyk6CisrICAg
ICAgICAoZ2w6OkNvbnRleHQ6OnNldFNhbXBsZUFscGhhVG9Db3ZlcmFnZSk6CisrICAgICAgICAo
Z2w6OkNvbnRleHQ6OmlzU2FtcGxlQWxwaGFUb0NvdmVyYWdlRW5hYmxlZCk6CisrICAgICAgICAo
Z2w6OkNvbnRleHQ6OnNldFNhbXBsZUNvdmVyYWdlKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6
aXNTYW1wbGVDb3ZlcmFnZUVuYWJsZWQpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzZXRTYW1w
bGVDb3ZlcmFnZVBhcmFtcyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnNldFNjaXNzb3JUZXN0
KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6aXNTY2lzc29yVGVzdEVuYWJsZWQpOgorKyAgICAg
ICAgKGdsOjpDb250ZXh0OjpzZXREaXRoZXIpOgorKyAgICAgICAgKGdsOjpDb250ZXh0Ojppc0Rp
dGhlckVuYWJsZWQpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzZXRMaW5lV2lkdGgpOgorKyAg
ICAgICAgKGdsOjpDb250ZXh0OjpzZXRHZW5lcmF0ZU1pcG1hcEhpbnQpOgorKyAgICAgICAgKGds
OjpDb250ZXh0OjpzZXRGcmFnbWVudFNoYWRlckRlcml2YXRpdmVIaW50KToKKysgICAgICAgIChn
bDo6Q29udGV4dDo6c2V0Vmlld3BvcnRQYXJhbXMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0Ojpz
ZXRTY2lzc29yUGFyYW1zKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c2V0Q29sb3JNYXNrKToK
KysgICAgICAgIChnbDo6Q29udGV4dDo6c2V0RGVwdGhNYXNrKToKKysgICAgICAgIChnbDo6Q29u
dGV4dDo6c2V0QWN0aXZlU2FtcGxlcik6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmdldFJlYWRG
cmFtZWJ1ZmZlckhhbmRsZSk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmdldERyYXdGcmFtZWJ1
ZmZlckhhbmRsZSk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmdldFJlbmRlcmJ1ZmZlckhhbmRs
ZSk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmdldEFycmF5QnVmZmVySGFuZGxlKToKKysgICAg
ICAgIChnbDo6Q29udGV4dDo6Z2V0QWN0aXZlUXVlcnkpOgorKyAgICAgICAgKGdsOjpDb250ZXh0
OjpzZXRFbmFibGVWZXJ0ZXhBdHRyaWJBcnJheSk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6Omdl
dFZlcnRleEF0dHJpYlN0YXRlKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c2V0VmVydGV4QXR0
cmliU3RhdGUpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRWZXJ0ZXhBdHRyaWJQb2ludGVy
KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0VmVydGV4QXR0cmlidXRlcyk6CisrICAgICAg
ICAoZ2w6OkNvbnRleHQ6OnNldFBhY2tBbGlnbm1lbnQpOgorKyAgICAgICAgKGdsOjpDb250ZXh0
OjpnZXRQYWNrQWxpZ25tZW50KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c2V0VW5wYWNrQWxp
Z25tZW50KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0VW5wYWNrQWxpZ25tZW50KToKKysg
ICAgICAgIChnbDo6Q29udGV4dDo6c2V0UGFja1JldmVyc2VSb3dPcmRlcik6CisrICAgICAgICAo
Z2w6OkNvbnRleHQ6OmdldFBhY2tSZXZlcnNlUm93T3JkZXIpOgorKyAgICAgICAgKGdsOjpDb250
ZXh0OjpjcmVhdGVCdWZmZXIpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpjcmVhdGVQcm9ncmFt
KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Y3JlYXRlU2hhZGVyKToKKysgICAgICAgIChnbDo6
Q29udGV4dDo6Y3JlYXRlVGV4dHVyZSk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmNyZWF0ZVJl
bmRlcmJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmNyZWF0ZUZyYW1lYnVmZmVyKToK
KysgICAgICAgIChnbDo6Q29udGV4dDo6Y3JlYXRlRmVuY2UpOgorKyAgICAgICAgKGdsOjpDb250
ZXh0OjpjcmVhdGVRdWVyeSk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmRlbGV0ZUJ1ZmZlcik6
CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmRlbGV0ZVNoYWRlcik6CisrICAgICAgICAoZ2w6OkNv
bnRleHQ6OmRlbGV0ZVByb2dyYW0pOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpkZWxldGVUZXh0
dXJlKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6ZGVsZXRlUmVuZGVyYnVmZmVyKToKKysgICAg
ICAgIChnbDo6Q29udGV4dDo6ZGVsZXRlRnJhbWVidWZmZXIpOgorKyAgICAgICAgKGdsOjpDb250
ZXh0OjpkZWxldGVGZW5jZSk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmRlbGV0ZVF1ZXJ5KToK
KysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0QnVmZmVyKToKKysgICAgICAgIChnbDo6Q29udGV4
dDo6Z2V0U2hhZGVyKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0UHJvZ3JhbSk6CisrICAg
ICAgICAoZ2w6OkNvbnRleHQ6OmdldFRleHR1cmUpOgorKyAgICAgICAgKGdsOjpDb250ZXh0Ojpn
ZXRSZW5kZXJidWZmZXIpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRSZWFkRnJhbWVidWZm
ZXIpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXREcmF3RnJhbWVidWZmZXIpOgorKyAgICAg
ICAgKGdsOjpDb250ZXh0OjpiaW5kQXJyYXlCdWZmZXIpOgorKyAgICAgICAgKGdsOjpDb250ZXh0
OjpiaW5kRWxlbWVudEFycmF5QnVmZmVyKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6YmluZFRl
eHR1cmUyRCk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmJpbmRUZXh0dXJlQ3ViZU1hcCk6Cisr
ICAgICAgICAoZ2w6OkNvbnRleHQ6OmJpbmRSZWFkRnJhbWVidWZmZXIpOgorKyAgICAgICAgKGds
OjpDb250ZXh0OjpiaW5kRHJhd0ZyYW1lYnVmZmVyKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6
YmluZFJlbmRlcmJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnVzZVByb2dyYW0pOgor
KyAgICAgICAgKGdsOjpDb250ZXh0OjpsaW5rUHJvZ3JhbSk6CisrICAgICAgICAoZ2w6OkNvbnRl
eHQ6OnNldFByb2dyYW1CaW5hcnkpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpiZWdpblF1ZXJ5
KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6ZW5kUXVlcnkpOgorKyAgICAgICAgKGdsOjpDb250
ZXh0OjpzZXRGcmFtZWJ1ZmZlclplcm8pOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzZXRSZW5k
ZXJidWZmZXJTdG9yYWdlKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0RnJhbWVidWZmZXIp
OgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRGZW5jZSk6CisrICAgICAgICAoZ2w6OkNvbnRl
eHQ6OmdldFF1ZXJ5KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0QXJyYXlCdWZmZXIpOgor
KyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRFbGVtZW50QXJyYXlCdWZmZXIpOgorKyAgICAgICAg
KGdsOjpDb250ZXh0OjpnZXRDdXJyZW50UHJvZ3JhbUJpbmFyeSk6CisrICAgICAgICAoZ2w6OkNv
bnRleHQ6OmdldFRleHR1cmUyRCk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmdldFRleHR1cmVD
dWJlTWFwKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0U2FtcGxlclRleHR1cmUpOgorKyAg
ICAgICAgKGdsOjpDb250ZXh0OjpnZXRCb29sZWFudik6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6
OmdldEZsb2F0dik6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmdldEludGVnZXJ2KToKKysgICAg
ICAgIChnbDo6Q29udGV4dDo6Z2V0UXVlcnlQYXJhbWV0ZXJJbmZvKToKKysgICAgICAgIChnbDo6
Q29udGV4dDo6YXBwbHlSZW5kZXJUYXJnZXQpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjphcHBs
eVN0YXRlKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6YXBwbHlWZXJ0ZXhCdWZmZXIpOgorKyAg
ICAgICAgKGdsOjpDb250ZXh0OjphcHBseUluZGV4QnVmZmVyKToKKysgICAgICAgIChnbDo6Q29u
dGV4dDo6YXBwbHlTaGFkZXJzKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6YXBwbHlUZXh0dXJl
cyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnJlYWRQaXhlbHMpOgorKyAgICAgICAgKGdsOjpD
b250ZXh0OjpjbGVhcik6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmRyYXdBcnJheXMpOgorKyAg
ICAgICAgKGdsOjpDb250ZXh0OjpkcmF3RWxlbWVudHMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0
OjpzeW5jKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6ZHJhd0xpbmVMb29wKToKKysgICAgICAg
IChnbDo6Q29udGV4dDo6cmVjb3JkSW52YWxpZEVudW0pOgorKyAgICAgICAgKGdsOjpDb250ZXh0
OjpyZWNvcmRJbnZhbGlkVmFsdWUpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpyZWNvcmRJbnZh
bGlkT3BlcmF0aW9uKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6cmVjb3JkT3V0T2ZNZW1vcnkp
OgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpyZWNvcmRJbnZhbGlkRnJhbWVidWZmZXJPcGVyYXRp
b24pOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRFcnJvcik6CisrICAgICAgICAoZ2w6OkNv
bnRleHQ6OmdldFJlc2V0U3RhdHVzKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6aXNSZXNldE5v
dGlmaWNhdGlvbkVuYWJsZWQpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzdXBwb3J0c1NoYWRl
ck1vZGVsMyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmdldE1heGltdW1Qb2ludFNpemUpOgor
KyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRNYXhpbXVtVmFyeWluZ1ZlY3RvcnMpOgorKyAgICAg
ICAgKGdsOjpDb250ZXh0OjpnZXRNYXhpbXVtVmVydGV4VGV4dHVyZUltYWdlVW5pdHMpOgorKyAg
ICAgICAgKGdsOjpDb250ZXh0OjpnZXRNYXhpbXVtQ29tYmluZWRUZXh0dXJlSW1hZ2VVbml0cyk6
CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmdldE1heGltdW1GcmFnbWVudFVuaWZvcm1WZWN0b3Jz
KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0TWF4U3VwcG9ydGVkU2FtcGxlcyk6CisrICAg
ICAgICAoZ2w6OkNvbnRleHQ6OmdldE5lYXJlc3RTdXBwb3J0ZWRTYW1wbGVzKToKKysgICAgICAg
IChnbDo6Q29udGV4dDo6c3VwcG9ydHNFdmVudFF1ZXJpZXMpOgorKyAgICAgICAgKGdsOjpDb250
ZXh0OjpzdXBwb3J0c09jY2x1c2lvblF1ZXJpZXMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0Ojpz
dXBwb3J0c0RYVDFUZXh0dXJlcyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnN1cHBvcnRzRFhU
M1RleHR1cmVzKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c3VwcG9ydHNEWFQ1VGV4dHVyZXMp
OgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzdXBwb3J0c0Zsb2F0MzJUZXh0dXJlcyk6CisrICAg
ICAgICAoZ2w6OkNvbnRleHQ6OnN1cHBvcnRzRmxvYXQzMkxpbmVhckZpbHRlcik6CisrICAgICAg
ICAoZ2w6OkNvbnRleHQ6OnN1cHBvcnRzRmxvYXQzMlJlbmRlcmFibGVUZXh0dXJlcyk6CisrICAg
ICAgICAoZ2w6OkNvbnRleHQ6OnN1cHBvcnRzRmxvYXQxNlRleHR1cmVzKToKKysgICAgICAgIChn
bDo6Q29udGV4dDo6c3VwcG9ydHNGbG9hdDE2TGluZWFyRmlsdGVyKToKKysgICAgICAgIChnbDo6
Q29udGV4dDo6c3VwcG9ydHNGbG9hdDE2UmVuZGVyYWJsZVRleHR1cmVzKToKKysgICAgICAgIChn
bDo6Q29udGV4dDo6Z2V0TWF4aW11bVJlbmRlcmJ1ZmZlckRpbWVuc2lvbik6CisrICAgICAgICAo
Z2w6OkNvbnRleHQ6OmdldE1heGltdW1UZXh0dXJlRGltZW5zaW9uKToKKysgICAgICAgIChnbDo6
Q29udGV4dDo6Z2V0TWF4aW11bUN1YmVUZXh0dXJlRGltZW5zaW9uKToKKysgICAgICAgIChnbDo6
Q29udGV4dDo6Z2V0TWF4aW11bVRleHR1cmVMZXZlbCk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6
OnN1cHBvcnRzTHVtaW5hbmNlVGV4dHVyZXMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzdXBw
b3J0c0x1bWluYW5jZUFscGhhVGV4dHVyZXMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzdXBw
b3J0c0RlcHRoVGV4dHVyZXMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzdXBwb3J0czMyYml0
SW5kaWNlcyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnN1cHBvcnRzTm9uUG93ZXIyVGV4dHVy
ZSk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnN1cHBvcnRzSW5zdGFuY2luZyk6CisrICAgICAg
ICAoZ2w6OkNvbnRleHQ6OnN1cHBvcnRzVGV4dHVyZUZpbHRlckFuaXNvdHJvcHkpOgorKyAgICAg
ICAgKGdsOjpDb250ZXh0OjpzdXBwb3J0c0Rlcml2YXRpdmVJbnN0cnVjdGlvbnMpOgorKyAgICAg
ICAgKGdsOjpDb250ZXh0OjpnZXRUZXh0dXJlTWF4QW5pc290cm9weSk6CisrICAgICAgICAoZ2w6
OkNvbnRleHQ6OmdldEN1cnJlbnRSZWFkRm9ybWF0VHlwZSk6CisrICAgICAgICAoZ2w6OkNvbnRl
eHQ6OmRldGFjaEJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmRldGFjaFRleHR1cmUp
OgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpkZXRhY2hGcmFtZWJ1ZmZlcik6CisrICAgICAgICAo
Z2w6OkNvbnRleHQ6OmRldGFjaFJlbmRlcmJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6
OmdldEluY29tcGxldGVUZXh0dXJlKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c2tpcERyYXcp
OgorKyAgICAgICAgKGdsOjpDb250ZXh0Ojppc1RyaWFuZ2xlTW9kZSk6CisrICAgICAgICAoZ2w6
OkNvbnRleHQ6OnNldFZlcnRleEF0dHJpYik6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnNldFZl
cnRleEF0dHJpYkRpdmlzb3IpOgorKyAgICAgICAgKGdsOjpDb250ZXh0Ojppbml0RXh0ZW5zaW9u
U3RyaW5nKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0RXh0ZW5zaW9uU3RyaW5nKToKKysg
ICAgICAgIChnbDo6Q29udGV4dDo6aW5pdFJlbmRlcmVyU3RyaW5nKToKKysgICAgICAgIChnbDo6
Q29udGV4dDo6Z2V0UmVuZGVyZXJTdHJpbmcpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpibGl0
RnJhbWVidWZmZXIpOgorKyAgICAgICAgKGdsOjpWZXJ0ZXhEZWNsYXJhdGlvbkNhY2hlOjpWZXJ0
ZXhEZWNsYXJhdGlvbkNhY2hlKToKKysgICAgICAgIChnbDo6VmVydGV4RGVjbGFyYXRpb25DYWNo
ZTo6flZlcnRleERlY2xhcmF0aW9uQ2FjaGUpOgorKyAgICAgICAgKGdsOjpWZXJ0ZXhEZWNsYXJh
dGlvbkNhY2hlOjphcHBseURlY2xhcmF0aW9uKToKKysgICAgICAgIChnbDo6VmVydGV4RGVjbGFy
YXRpb25DYWNoZTo6bWFya1N0YXRlRGlydHkpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL0Nv
bnRleHQuaDogQWRkZWQuCisrICAgICAgICAoZ2w6OlZlcnRleEF0dHJpYnV0ZTo6VmVydGV4QXR0
cmlidXRlKToKKysgICAgICAgIChnbDo6VmVydGV4QXR0cmlidXRlOjp0eXBlU2l6ZSk6CisrICAg
ICAgICAoZ2w6OlZlcnRleEF0dHJpYnV0ZTo6c3RyaWRlKToKKysgICAgICAgIChnbDo6Q29udGV4
dDo6Z2V0QmxpdHRlcik6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmdldERldmljZUNhcHMpOgor
KyAgICAgICAgKiBzcmMvbGliR0xFU3YyL0QzRENvbnN0YW50VGFibGUuY3BwOiBBZGRlZC4KKysg
ICAgICAgIChnbDo6RDNEQ29uc3RhbnQ6OkQzRENvbnN0YW50KToKKysgICAgICAgIChnbDo6RDNE
Q29uc3RhbnQ6On5EM0RDb25zdGFudCk6CisrICAgICAgICAoZ2w6OkQzRENvbnN0YW50OjphZGRT
dHJ1Y3RNZW1iZXJzKToKKysgICAgICAgIChnbDo6RDNEQ29uc3RhbnRUYWJsZTo6RDNEQ29uc3Rh
bnRUYWJsZSk6CisrICAgICAgICAoZ2w6OkQzRENvbnN0YW50VGFibGU6On5EM0RDb25zdGFudFRh
YmxlKToKKysgICAgICAgIChnbDo6RDNEQ29uc3RhbnRUYWJsZTo6Z2V0Q29uc3RhbnQpOgorKyAg
ICAgICAgKGdsOjpEM0RDb25zdGFudFRhYmxlOjpnZXRDb25zdGFudEJ5TmFtZSk6CisrICAgICAg
ICAqIHNyYy9saWJHTEVTdjIvRDNEQ29uc3RhbnRUYWJsZS5oOiBBZGRlZC4KKysgICAgICAgIChn
bDo6RDNEQ29uc3RhbnRUYWJsZTo6ZXJyb3IpOgorKyAgICAgICAgKGdsOjpEM0RDb25zdGFudFRh
YmxlOjpjb25zdGFudHMpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL0ZlbmNlLmNwcDogQWRk
ZWQuCisrICAgICAgICAoZ2w6OkZlbmNlOjpGZW5jZSk6CisrICAgICAgICAoZ2w6OkZlbmNlOjp+
RmVuY2UpOgorKyAgICAgICAgKGdsOjpGZW5jZTo6aXNGZW5jZSk6CisrICAgICAgICAoZ2w6OkZl
bmNlOjpzZXRGZW5jZSk6CisrICAgICAgICAoZ2w6OkZlbmNlOjp0ZXN0RmVuY2UpOgorKyAgICAg
ICAgKGdsOjpGZW5jZTo6ZmluaXNoRmVuY2UpOgorKyAgICAgICAgKGdsOjpGZW5jZTo6Z2V0RmVu
Y2Vpdik6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvRmVuY2UuaDogQWRkZWQuCisrICAgICAg
ICAqIHNyYy9saWJHTEVTdjIvRmxvYXQxNlRvRmxvYXQzMi5jcHA6IEFkZGVkLgorKyAgICAgICAg
KGdsOjpmbG9hdDE2VG9GbG9hdDMyKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9GbG9hdDE2
VG9GbG9hdDMyLnB5OiBBZGRlZC4KKysgICAgICAgIChjb252ZXJ0TWFudGlzc2EpOgorKyAgICAg
ICAgKGNvbnZlcnRFeHBvbmVudCk6CisrICAgICAgICAoY29udmVydE9mZnNldCk6CisrICAgICAg
ICAqIHNyYy9saWJHTEVTdjIvRnJhbWVidWZmZXIuY3BwOiBBZGRlZC4KKysgICAgICAgIChnbDo6
RnJhbWVidWZmZXI6OkZyYW1lYnVmZmVyKToKKysgICAgICAgIChnbDo6RnJhbWVidWZmZXI6On5G
cmFtZWJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkZyYW1lYnVmZmVyOjpsb29rdXBSZW5kZXJidWZm
ZXIpOgorKyAgICAgICAgKGdsOjpGcmFtZWJ1ZmZlcjo6c2V0Q29sb3JidWZmZXIpOgorKyAgICAg
ICAgKGdsOjpGcmFtZWJ1ZmZlcjo6c2V0RGVwdGhidWZmZXIpOgorKyAgICAgICAgKGdsOjpGcmFt
ZWJ1ZmZlcjo6c2V0U3RlbmNpbGJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkZyYW1lYnVmZmVyOjpk
ZXRhY2hUZXh0dXJlKToKKysgICAgICAgIChnbDo6RnJhbWVidWZmZXI6OmRldGFjaFJlbmRlcmJ1
ZmZlcik6CisrICAgICAgICAoZ2w6OkZyYW1lYnVmZmVyOjpnZXRSZW5kZXJUYXJnZXRTZXJpYWwp
OgorKyAgICAgICAgKGdsOjpGcmFtZWJ1ZmZlcjo6Z2V0UmVuZGVyVGFyZ2V0KToKKysgICAgICAg
IChnbDo6RnJhbWVidWZmZXI6OmdldERlcHRoU3RlbmNpbCk6CisrICAgICAgICAoZ2w6OkZyYW1l
YnVmZmVyOjpnZXREZXB0aGJ1ZmZlclNlcmlhbCk6CisrICAgICAgICAoZ2w6OkZyYW1lYnVmZmVy
OjpnZXRTdGVuY2lsYnVmZmVyU2VyaWFsKToKKysgICAgICAgIChnbDo6RnJhbWVidWZmZXI6Omdl
dENvbG9yYnVmZmVyKToKKysgICAgICAgIChnbDo6RnJhbWVidWZmZXI6OmdldERlcHRoYnVmZmVy
KToKKysgICAgICAgIChnbDo6RnJhbWVidWZmZXI6OmdldFN0ZW5jaWxidWZmZXIpOgorKyAgICAg
ICAgKGdsOjpGcmFtZWJ1ZmZlcjo6Z2V0TnVsbENvbG9yYnVmZmVyKToKKysgICAgICAgIChnbDo6
RnJhbWVidWZmZXI6OmdldENvbG9yYnVmZmVyVHlwZSk6CisrICAgICAgICAoZ2w6OkZyYW1lYnVm
ZmVyOjpnZXREZXB0aGJ1ZmZlclR5cGUpOgorKyAgICAgICAgKGdsOjpGcmFtZWJ1ZmZlcjo6Z2V0
U3RlbmNpbGJ1ZmZlclR5cGUpOgorKyAgICAgICAgKGdsOjpGcmFtZWJ1ZmZlcjo6Z2V0Q29sb3Ji
dWZmZXJIYW5kbGUpOgorKyAgICAgICAgKGdsOjpGcmFtZWJ1ZmZlcjo6Z2V0RGVwdGhidWZmZXJI
YW5kbGUpOgorKyAgICAgICAgKGdsOjpGcmFtZWJ1ZmZlcjo6Z2V0U3RlbmNpbGJ1ZmZlckhhbmRs
ZSk6CisrICAgICAgICAoZ2w6OkZyYW1lYnVmZmVyOjpoYXNTdGVuY2lsKToKKysgICAgICAgIChn
bDo6RnJhbWVidWZmZXI6OmNvbXBsZXRlbmVzcyk6CisrICAgICAgICAoZ2w6OkRlZmF1bHRGcmFt
ZWJ1ZmZlcjo6RGVmYXVsdEZyYW1lYnVmZmVyKToKKysgICAgICAgIChnbDo6RnJhbWVidWZmZXI6
OmdldFNhbXBsZXMpOgorKyAgICAgICAgKGdsOjpEZWZhdWx0RnJhbWVidWZmZXI6OmNvbXBsZXRl
bmVzcyk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvRnJhbWVidWZmZXIuaDogQWRkZWQuCisr
ICAgICAgICAqIHNyYy9saWJHTEVTdjIvSGFuZGxlQWxsb2NhdG9yLmNwcDogQWRkZWQuCisrICAg
ICAgICAoZ2w6OkhhbmRsZUFsbG9jYXRvcjo6SGFuZGxlQWxsb2NhdG9yKToKKysgICAgICAgIChn
bDo6SGFuZGxlQWxsb2NhdG9yOjp+SGFuZGxlQWxsb2NhdG9yKToKKysgICAgICAgIChnbDo6SGFu
ZGxlQWxsb2NhdG9yOjpzZXRCYXNlSGFuZGxlKToKKysgICAgICAgIChnbDo6SGFuZGxlQWxsb2Nh
dG9yOjphbGxvY2F0ZSk6CisrICAgICAgICAoZ2w6OkhhbmRsZUFsbG9jYXRvcjo6cmVsZWFzZSk6
CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvSGFuZGxlQWxsb2NhdG9yLmg6IEFkZGVkLgorKyAg
ICAgICAgKiBzcmMvbGliR0xFU3YyL0luZGV4RGF0YU1hbmFnZXIuY3BwOiBBZGRlZC4KKysgICAg
ICAgIChnbDo6SW5kZXhEYXRhTWFuYWdlcjo6SW5kZXhEYXRhTWFuYWdlcik6CisrICAgICAgICAo
Z2w6OkluZGV4RGF0YU1hbmFnZXI6On5JbmRleERhdGFNYW5hZ2VyKToKKysgICAgICAgIChnbDo6
Y29udmVydEluZGljZXMpOgorKyAgICAgICAgKGdsOjpjb21wdXRlUmFuZ2UpOgorKyAgICAgICAg
KGdsOjpJbmRleERhdGFNYW5hZ2VyOjpwcmVwYXJlSW5kZXhEYXRhKToKKysgICAgICAgIChnbDo6
SW5kZXhEYXRhTWFuYWdlcjo6aW5kZXhTaXplKToKKysgICAgICAgIChnbDo6SW5kZXhEYXRhTWFu
YWdlcjo6dHlwZVNpemUpOgorKyAgICAgICAgKGdsOjpJbmRleERhdGFNYW5hZ2VyOjpnZXRDb3Vu
dGluZ0luZGljZXMpOgorKyAgICAgICAgKGdsOjpJbmRleEJ1ZmZlcjo6SW5kZXhCdWZmZXIpOgor
KyAgICAgICAgKGdsOjpJbmRleEJ1ZmZlcjo6fkluZGV4QnVmZmVyKToKKysgICAgICAgIChnbDo6
SW5kZXhCdWZmZXI6OmdldEJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkluZGV4QnVmZmVyOjpnZXRT
ZXJpYWwpOgorKyAgICAgICAgKGdsOjpJbmRleEJ1ZmZlcjo6aXNzdWVTZXJpYWwpOgorKyAgICAg
ICAgKGdsOjpJbmRleEJ1ZmZlcjo6dW5tYXApOgorKyAgICAgICAgKGdsOjpTdHJlYW1pbmdJbmRl
eEJ1ZmZlcjo6U3RyZWFtaW5nSW5kZXhCdWZmZXIpOgorKyAgICAgICAgKGdsOjpTdHJlYW1pbmdJ
bmRleEJ1ZmZlcjo6flN0cmVhbWluZ0luZGV4QnVmZmVyKToKKysgICAgICAgIChnbDo6U3RyZWFt
aW5nSW5kZXhCdWZmZXI6Om1hcCk6CisrICAgICAgICAoZ2w6OlN0cmVhbWluZ0luZGV4QnVmZmVy
OjpyZXNlcnZlU3BhY2UpOgorKyAgICAgICAgKGdsOjpTdGF0aWNJbmRleEJ1ZmZlcjo6U3RhdGlj
SW5kZXhCdWZmZXIpOgorKyAgICAgICAgKGdsOjpTdGF0aWNJbmRleEJ1ZmZlcjo6flN0YXRpY0lu
ZGV4QnVmZmVyKToKKysgICAgICAgIChnbDo6U3RhdGljSW5kZXhCdWZmZXI6Om1hcCk6CisrICAg
ICAgICAoZ2w6OlN0YXRpY0luZGV4QnVmZmVyOjpyZXNlcnZlU3BhY2UpOgorKyAgICAgICAgKGds
OjpTdGF0aWNJbmRleEJ1ZmZlcjo6bG9va3VwVHlwZSk6CisrICAgICAgICAoZ2w6OlN0YXRpY0lu
ZGV4QnVmZmVyOjpsb29rdXBSYW5nZSk6CisrICAgICAgICAoZ2w6OlN0YXRpY0luZGV4QnVmZmVy
OjphZGRSYW5nZSk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvSW5kZXhEYXRhTWFuYWdlci5o
OiBBZGRlZC4KKysgICAgICAgIChnbDo6SW5kZXhCdWZmZXI6OnNpemUpOgorKyAgICAgICAgKGds
OjpTdGF0aWNJbmRleEJ1ZmZlcjo6SW5kZXhSYW5nZTo6b3BlcmF0b3I8KToKKysgICAgICAgICog
c3JjL2xpYkdMRVN2Mi9Qcm9ncmFtLmNwcDogQWRkZWQuCisrICAgICAgICAoZ2w6OkF0dHJpYnV0
ZUJpbmRpbmdzOjpBdHRyaWJ1dGVCaW5kaW5ncyk6CisrICAgICAgICAoZ2w6OkF0dHJpYnV0ZUJp
bmRpbmdzOjp+QXR0cmlidXRlQmluZGluZ3MpOgorKyAgICAgICAgKGdsOjpJbmZvTG9nOjpJbmZv
TG9nKToKKysgICAgICAgIChnbDo6SW5mb0xvZzo6fkluZm9Mb2cpOgorKyAgICAgICAgKGdsOjpJ
bmZvTG9nOjpnZXRMZW5ndGgpOgorKyAgICAgICAgKGdsOjpJbmZvTG9nOjpnZXRMb2cpOgorKyAg
ICAgICAgKGdsOjpJbmZvTG9nOjphcHBlbmRTYW5pdGl6ZWQpOgorKyAgICAgICAgKGdsOjpJbmZv
TG9nOjphcHBlbmQpOgorKyAgICAgICAgKGdsOjpJbmZvTG9nOjpyZXNldCk6CisrICAgICAgICAo
Z2w6OlByb2dyYW06OlByb2dyYW0pOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjp+UHJvZ3JhbSk6
CisrICAgICAgICAoZ2w6OlByb2dyYW06OmF0dGFjaFNoYWRlcik6CisrICAgICAgICAoZ2w6OlBy
b2dyYW06OmRldGFjaFNoYWRlcik6CisrICAgICAgICAoZ2w6OlByb2dyYW06OmdldEF0dGFjaGVk
U2hhZGVyc0NvdW50KToKKysgICAgICAgIChnbDo6QXR0cmlidXRlQmluZGluZ3M6OmJpbmRBdHRy
aWJ1dGVMb2NhdGlvbik6CisrICAgICAgICAoZ2w6OlByb2dyYW06OmJpbmRBdHRyaWJ1dGVMb2Nh
dGlvbik6CisrICAgICAgICAoZ2w6OlByb2dyYW06OmxpbmspOgorKyAgICAgICAgKGdsOjpBdHRy
aWJ1dGVCaW5kaW5nczo6Z2V0QXR0cmlidXRlQmluZGluZyk6CisrICAgICAgICAoZ2w6OlByb2dy
YW06OnVubGluayk6CisrICAgICAgICAoZ2w6OlByb2dyYW06OmlzTGlua2VkKToKKysgICAgICAg
IChnbDo6UHJvZ3JhbTo6Z2V0UHJvZ3JhbUJpbmFyeSk6CisrICAgICAgICAoZ2w6OlByb2dyYW06
OnNldFByb2dyYW1CaW5hcnkpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpyZWxlYXNlKToKKysg
ICAgICAgIChnbDo6UHJvZ3JhbTo6YWRkUmVmKToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6Z2V0
UmVmQ291bnQpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpnZXRQcm9ncmFtQmluYXJ5TGVuZ3Ro
KToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6Z2V0SW5mb0xvZ0xlbmd0aCk6CisrICAgICAgICAo
Z2w6OlByb2dyYW06OmdldEluZm9Mb2cpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpnZXRBdHRh
Y2hlZFNoYWRlcnMpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpnZXRBY3RpdmVBdHRyaWJ1dGUp
OgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpnZXRBY3RpdmVBdHRyaWJ1dGVDb3VudCk6CisrICAg
ICAgICAoZ2w6OlByb2dyYW06OmdldEFjdGl2ZUF0dHJpYnV0ZU1heExlbmd0aCk6CisrICAgICAg
ICAoZ2w6OlByb2dyYW06OmdldEFjdGl2ZVVuaWZvcm0pOgorKyAgICAgICAgKGdsOjpQcm9ncmFt
OjpnZXRBY3RpdmVVbmlmb3JtQ291bnQpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpnZXRBY3Rp
dmVVbmlmb3JtTWF4TGVuZ3RoKToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6ZmxhZ0ZvckRlbGV0
aW9uKToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6aXNGbGFnZ2VkRm9yRGVsZXRpb24pOgorKyAg
ICAgICAgKGdsOjpQcm9ncmFtOjp2YWxpZGF0ZSk6CisrICAgICAgICAoZ2w6OlByb2dyYW06Omlz
VmFsaWRhdGVkKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9Qcm9ncmFtLmg6IEFkZGVkLgor
KyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1Byb2dyYW1CaW5hcnkuY3BwOiBBZGRlZC4KKysgICAg
ICAgIChnbDo6c3RyKToKKysgICAgICAgIChnbDo6VW5pZm9ybTo6VW5pZm9ybSk6CisrICAgICAg
ICAoZ2w6OlVuaWZvcm06On5Vbmlmb3JtKToKKysgICAgICAgIChnbDo6VW5pZm9ybTo6aXNBcnJh
eSk6CisrICAgICAgICAoZ2w6OlVuaWZvcm1Mb2NhdGlvbjo6VW5pZm9ybUxvY2F0aW9uKToKKysg
ICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6UHJvZ3JhbUJpbmFyeSk6CisrICAgICAgICAoZ2w6
OlByb2dyYW1CaW5hcnk6On5Qcm9ncmFtQmluYXJ5KToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJp
bmFyeTo6Z2V0U2VyaWFsKToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6aXNzdWVTZXJp
YWwpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjpnZXRQaXhlbFNoYWRlcik6CisrICAg
ICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OmdldFZlcnRleFNoYWRlcik6CisrICAgICAgICAoZ2w6
OlByb2dyYW1CaW5hcnk6OmdldEF0dHJpYnV0ZUxvY2F0aW9uKToKKysgICAgICAgIChnbDo6UHJv
Z3JhbUJpbmFyeTo6Z2V0U2VtYW50aWNJbmRleCk6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5h
cnk6OmdldFVzZWRTYW1wbGVyUmFuZ2UpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5Ojp1
c2VzUG9pbnRTaXplKToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6Z2V0U2FtcGxlck1h
cHBpbmcpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjpnZXRTYW1wbGVyVGV4dHVyZVR5
cGUpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjpnZXRVbmlmb3JtTG9jYXRpb24pOgor
KyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjpzZXRVbmlmb3JtMWZ2KToKKysgICAgICAgIChn
bDo6UHJvZ3JhbUJpbmFyeTo6c2V0VW5pZm9ybTJmdik6CisrICAgICAgICAoZ2w6OlByb2dyYW1C
aW5hcnk6OnNldFVuaWZvcm0zZnYpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjpzZXRV
bmlmb3JtNGZ2KToKKysgICAgICAgIChnbDo6dHJhbnNwb3NlTWF0cml4KToKKysgICAgICAgIChn
bDo6UHJvZ3JhbUJpbmFyeTo6c2V0VW5pZm9ybU1hdHJpeDJmdik6CisrICAgICAgICAoZ2w6OlBy
b2dyYW1CaW5hcnk6OnNldFVuaWZvcm1NYXRyaXgzZnYpOgorKyAgICAgICAgKGdsOjpQcm9ncmFt
QmluYXJ5OjpzZXRVbmlmb3JtTWF0cml4NGZ2KToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFy
eTo6c2V0VW5pZm9ybTFpdik6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OnNldFVuaWZv
cm0yaXYpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjpzZXRVbmlmb3JtM2l2KToKKysg
ICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6c2V0VW5pZm9ybTRpdik6CisrICAgICAgICAoZ2w6
OlByb2dyYW1CaW5hcnk6OmdldFVuaWZvcm1mdik6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5h
cnk6OmdldFVuaWZvcm1pdik6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OmRpcnR5QWxs
VW5pZm9ybXMpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjphcHBseVVuaWZvcm1zKToK
KysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6Y29tcGlsZVRvQmluYXJ5KToKKysgICAgICAg
IChnbDo6UHJvZ3JhbUJpbmFyeTo6cGFja1ZhcnlpbmdzKToKKysgICAgICAgIChnbDo6UHJvZ3Jh
bUJpbmFyeTo6bGlua1ZhcnlpbmdzKToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6bG9h
ZCk6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OnNhdmUpOgorKyAgICAgICAgKGdsOjpQ
cm9ncmFtQmluYXJ5OjpnZXRMZW5ndGgpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5Ojps
aW5rKToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6bGlua0F0dHJpYnV0ZXMpOgorKyAg
ICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjpsaW5rVW5pZm9ybXMpOgorKyAgICAgICAgKGdsOjpQ
cm9ncmFtQmluYXJ5OjpkZWZpbmVVbmlmb3JtKToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFy
eTo6Y3JlYXRlVW5pZm9ybSk6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OmRlY29yYXRl
QXR0cmlidXRlKToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6dW5kZWNvcmF0ZVVuaWZv
cm0pOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjphcHBseVVuaWZvcm1uYnYpOgorKyAg
ICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjphcHBseVVuaWZvcm1uZnYpOgorKyAgICAgICAgKGds
OjpQcm9ncmFtQmluYXJ5OjphcHBseVVuaWZvcm0xaXYpOgorKyAgICAgICAgKGdsOjpQcm9ncmFt
QmluYXJ5OjphcHBseVVuaWZvcm0yaXYpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5Ojph
cHBseVVuaWZvcm0zaXYpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjphcHBseVVuaWZv
cm00aXYpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjphcHBseVVuaWZvcm1uaXYpOgor
KyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5Ojppc1ZhbGlkYXRlZCk6CisrICAgICAgICAoZ2w6
OlByb2dyYW1CaW5hcnk6OmdldEFjdGl2ZUF0dHJpYnV0ZSk6CisrICAgICAgICAoZ2w6OlByb2dy
YW1CaW5hcnk6OmdldEFjdGl2ZUF0dHJpYnV0ZUNvdW50KToKKysgICAgICAgIChnbDo6UHJvZ3Jh
bUJpbmFyeTo6Z2V0QWN0aXZlQXR0cmlidXRlTWF4TGVuZ3RoKToKKysgICAgICAgIChnbDo6UHJv
Z3JhbUJpbmFyeTo6Z2V0QWN0aXZlVW5pZm9ybSk6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5h
cnk6OmdldEFjdGl2ZVVuaWZvcm1Db3VudCk6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6
OmdldEFjdGl2ZVVuaWZvcm1NYXhMZW5ndGgpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5
Ojp2YWxpZGF0ZSk6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OnZhbGlkYXRlU2FtcGxl
cnMpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjpnZXREeERlcHRoUmFuZ2VMb2NhdGlv
bik6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OmdldER4RGVwdGhMb2NhdGlvbik6Cisr
ICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OmdldER4Q29vcmRMb2NhdGlvbik6CisrICAgICAg
ICAoZ2w6OlByb2dyYW1CaW5hcnk6OmdldER4SGFsZlBpeGVsU2l6ZUxvY2F0aW9uKToKKysgICAg
ICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6Z2V0RHhGcm9udENDV0xvY2F0aW9uKToKKysgICAgICAg
IChnbDo6UHJvZ3JhbUJpbmFyeTo6Z2V0RHhQb2ludHNPckxpbmVzTG9jYXRpb24pOgorKyAgICAg
ICAgKGdsOjpQcm9ncmFtQmluYXJ5OjpTYW1wbGVyOjpTYW1wbGVyKToKKysgICAgICAgICogc3Jj
L2xpYkdMRVN2Mi9Qcm9ncmFtQmluYXJ5Lmg6IEFkZGVkLgorKyAgICAgICAgKGdsOjpVbmlmb3Jt
OjpSZWdpc3RlckluZm86OlJlZ2lzdGVySW5mbyk6CisrICAgICAgICAoZ2w6OlVuaWZvcm06OlJl
Z2lzdGVySW5mbzo6c2V0KToKKysgICAgICAgIChnbDo6VW5pZm9ybUxvY2F0aW9uOjpVbmlmb3Jt
TG9jYXRpb24pOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1F1ZXJ5LmNwcDogQWRkZWQuCisr
ICAgICAgICAoZ2w6OlF1ZXJ5OjpRdWVyeSk6CisrICAgICAgICAoZ2w6OlF1ZXJ5Ojp+UXVlcnkp
OgorKyAgICAgICAgKGdsOjpRdWVyeTo6YmVnaW4pOgorKyAgICAgICAgKGdsOjpRdWVyeTo6ZW5k
KToKKysgICAgICAgIChnbDo6UXVlcnk6OmdldFJlc3VsdCk6CisrICAgICAgICAoZ2w6OlF1ZXJ5
Ojppc1Jlc3VsdEF2YWlsYWJsZSk6CisrICAgICAgICAoZ2w6OlF1ZXJ5OjpnZXRUeXBlKToKKysg
ICAgICAgIChnbDo6UXVlcnk6OnRlc3RRdWVyeSk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIv
UXVlcnkuaDogQWRkZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvUkVBRE1FOiBSZW1vdmVk
LgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1JlbmRlcmJ1ZmZlci5jcHA6IEFkZGVkLgorKyAg
ICAgICAgKGdsOjpSZW5kZXJidWZmZXJJbnRlcmZhY2U6OlJlbmRlcmJ1ZmZlckludGVyZmFjZSk6
CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlckludGVyZmFjZTo6YWRkUHJveHlSZWYpOgorKyAg
ICAgICAgKGdsOjpSZW5kZXJidWZmZXJJbnRlcmZhY2U6OnJlbGVhc2VQcm94eSk6CisrICAgICAg
ICAoZ2w6OlJlbmRlcmJ1ZmZlckludGVyZmFjZTo6Z2V0UmVkU2l6ZSk6CisrICAgICAgICAoZ2w6
OlJlbmRlcmJ1ZmZlckludGVyZmFjZTo6Z2V0R3JlZW5TaXplKToKKysgICAgICAgIChnbDo6UmVu
ZGVyYnVmZmVySW50ZXJmYWNlOjpnZXRCbHVlU2l6ZSk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1
ZmZlckludGVyZmFjZTo6Z2V0QWxwaGFTaXplKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVy
SW50ZXJmYWNlOjpnZXREZXB0aFNpemUpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJJbnRl
cmZhY2U6OmdldFN0ZW5jaWxTaXplKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyVGV4dHVy
ZTJEOjpSZW5kZXJidWZmZXJUZXh0dXJlMkQpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJU
ZXh0dXJlMkQ6On5SZW5kZXJidWZmZXJUZXh0dXJlMkQpOgorKyAgICAgICAgKGdsOjpSZW5kZXJi
dWZmZXJUZXh0dXJlMkQ6OmFkZFByb3h5UmVmKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVy
VGV4dHVyZTJEOjpyZWxlYXNlUHJveHkpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJUZXh0
dXJlMkQ6OmdldFJlbmRlclRhcmdldCk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclRleHR1
cmUyRDo6Z2V0RGVwdGhTdGVuY2lsKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyVGV4dHVy
ZTJEOjpnZXRXaWR0aCk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclRleHR1cmUyRDo6Z2V0
SGVpZ2h0KToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyVGV4dHVyZTJEOjpnZXRJbnRlcm5h
bEZvcm1hdCk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclRleHR1cmUyRDo6Z2V0RDNERm9y
bWF0KToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyVGV4dHVyZTJEOjpnZXRTYW1wbGVzKToK
KysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyVGV4dHVyZTJEOjpnZXRTZXJpYWwpOgorKyAgICAg
ICAgKGdsOjpSZW5kZXJidWZmZXJUZXh0dXJlQ3ViZU1hcDo6UmVuZGVyYnVmZmVyVGV4dHVyZUN1
YmVNYXApOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJUZXh0dXJlQ3ViZU1hcDo6flJlbmRl
cmJ1ZmZlclRleHR1cmVDdWJlTWFwKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyVGV4dHVy
ZUN1YmVNYXA6OmFkZFByb3h5UmVmKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyVGV4dHVy
ZUN1YmVNYXA6OnJlbGVhc2VQcm94eSk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclRleHR1
cmVDdWJlTWFwOjpnZXRSZW5kZXJUYXJnZXQpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJU
ZXh0dXJlQ3ViZU1hcDo6Z2V0RGVwdGhTdGVuY2lsKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVm
ZmVyVGV4dHVyZUN1YmVNYXA6OmdldFdpZHRoKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVy
VGV4dHVyZUN1YmVNYXA6OmdldEhlaWdodCk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclRl
eHR1cmVDdWJlTWFwOjpnZXRJbnRlcm5hbEZvcm1hdCk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1
ZmZlclRleHR1cmVDdWJlTWFwOjpnZXREM0RGb3JtYXQpOgorKyAgICAgICAgKGdsOjpSZW5kZXJi
dWZmZXJUZXh0dXJlQ3ViZU1hcDo6Z2V0U2FtcGxlcyk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1
ZmZlclRleHR1cmVDdWJlTWFwOjpnZXRTZXJpYWwpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZm
ZXI6OlJlbmRlcmJ1ZmZlcik6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlcjo6flJlbmRlcmJ1
ZmZlcik6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlcjo6YWRkUmVmKToKKysgICAgICAgIChn
bDo6UmVuZGVyYnVmZmVyOjpyZWxlYXNlKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyOjpn
ZXRSZW5kZXJUYXJnZXQpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXI6OmdldERlcHRoU3Rl
bmNpbCk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlcjo6Z2V0V2lkdGgpOgorKyAgICAgICAg
KGdsOjpSZW5kZXJidWZmZXI6OmdldEhlaWdodCk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZl
cjo6Z2V0SW50ZXJuYWxGb3JtYXQpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXI6OmdldEQz
REZvcm1hdCk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlcjo6Z2V0UmVkU2l6ZSk6CisrICAg
ICAgICAoZ2w6OlJlbmRlcmJ1ZmZlcjo6Z2V0R3JlZW5TaXplKToKKysgICAgICAgIChnbDo6UmVu
ZGVyYnVmZmVyOjpnZXRCbHVlU2l6ZSk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlcjo6Z2V0
QWxwaGFTaXplKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyOjpnZXREZXB0aFNpemUpOgor
KyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXI6OmdldFN0ZW5jaWxTaXplKToKKysgICAgICAgIChn
bDo6UmVuZGVyYnVmZmVyOjpnZXRTYW1wbGVzKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVy
OjpnZXRTZXJpYWwpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXI6OnNldFN0b3JhZ2UpOgor
KyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJTdG9yYWdlOjpSZW5kZXJidWZmZXJTdG9yYWdlKToK
KysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyU3RvcmFnZTo6flJlbmRlcmJ1ZmZlclN0b3JhZ2Up
OgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJTdG9yYWdlOjpnZXRSZW5kZXJUYXJnZXQpOgor
KyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJTdG9yYWdlOjpnZXREZXB0aFN0ZW5jaWwpOgorKyAg
ICAgICAgKGdsOjpSZW5kZXJidWZmZXJTdG9yYWdlOjpnZXRXaWR0aCk6CisrICAgICAgICAoZ2w6
OlJlbmRlcmJ1ZmZlclN0b3JhZ2U6OmdldEhlaWdodCk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1
ZmZlclN0b3JhZ2U6OmdldEludGVybmFsRm9ybWF0KToKKysgICAgICAgIChnbDo6UmVuZGVyYnVm
ZmVyU3RvcmFnZTo6Z2V0RDNERm9ybWF0KToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyU3Rv
cmFnZTo6Z2V0U2FtcGxlcyk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclN0b3JhZ2U6Omdl
dFNlcmlhbCk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclN0b3JhZ2U6Omlzc3VlU2VyaWFs
KToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyU3RvcmFnZTo6aXNzdWVDdWJlU2VyaWFscyk6
CisrICAgICAgICAoZ2w6OkNvbG9yYnVmZmVyOjpDb2xvcmJ1ZmZlcik6CisrICAgICAgICAoZ2w6
OkNvbG9yYnVmZmVyOjp+Q29sb3JidWZmZXIpOgorKyAgICAgICAgKGdsOjpDb2xvcmJ1ZmZlcjo6
Z2V0UmVuZGVyVGFyZ2V0KToKKysgICAgICAgIChnbDo6RGVwdGhTdGVuY2lsYnVmZmVyOjpEZXB0
aFN0ZW5jaWxidWZmZXIpOgorKyAgICAgICAgKGdsOjpEZXB0aFN0ZW5jaWxidWZmZXI6On5EZXB0
aFN0ZW5jaWxidWZmZXIpOgorKyAgICAgICAgKGdsOjpEZXB0aFN0ZW5jaWxidWZmZXI6OmdldERl
cHRoU3RlbmNpbCk6CisrICAgICAgICAoZ2w6OkRlcHRoYnVmZmVyOjpEZXB0aGJ1ZmZlcik6Cisr
ICAgICAgICAoZ2w6OkRlcHRoYnVmZmVyOjp+RGVwdGhidWZmZXIpOgorKyAgICAgICAgKGdsOjpT
dGVuY2lsYnVmZmVyOjpTdGVuY2lsYnVmZmVyKToKKysgICAgICAgIChnbDo6U3RlbmNpbGJ1ZmZl
cjo6flN0ZW5jaWxidWZmZXIpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1JlbmRlcmJ1ZmZl
ci5oOiBBZGRlZC4KKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVySW50ZXJmYWNlOjp+UmVuZGVy
YnVmZmVySW50ZXJmYWNlKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9SZXNvdXJjZU1hbmFn
ZXIuY3BwOiBBZGRlZC4KKysgICAgICAgIChnbDo6UmVzb3VyY2VNYW5hZ2VyOjpSZXNvdXJjZU1h
bmFnZXIpOgorKyAgICAgICAgKGdsOjpSZXNvdXJjZU1hbmFnZXI6On5SZXNvdXJjZU1hbmFnZXIp
OgorKyAgICAgICAgKGdsOjpSZXNvdXJjZU1hbmFnZXI6OmFkZFJlZik6CisrICAgICAgICAoZ2w6
OlJlc291cmNlTWFuYWdlcjo6cmVsZWFzZSk6CisrICAgICAgICAoZ2w6OlJlc291cmNlTWFuYWdl
cjo6Y3JlYXRlQnVmZmVyKToKKysgICAgICAgIChnbDo6UmVzb3VyY2VNYW5hZ2VyOjpjcmVhdGVT
aGFkZXIpOgorKyAgICAgICAgKGdsOjpSZXNvdXJjZU1hbmFnZXI6OmNyZWF0ZVByb2dyYW0pOgor
KyAgICAgICAgKGdsOjpSZXNvdXJjZU1hbmFnZXI6OmNyZWF0ZVRleHR1cmUpOgorKyAgICAgICAg
KGdsOjpSZXNvdXJjZU1hbmFnZXI6OmNyZWF0ZVJlbmRlcmJ1ZmZlcik6CisrICAgICAgICAoZ2w6
OlJlc291cmNlTWFuYWdlcjo6ZGVsZXRlQnVmZmVyKToKKysgICAgICAgIChnbDo6UmVzb3VyY2VN
YW5hZ2VyOjpkZWxldGVTaGFkZXIpOgorKyAgICAgICAgKGdsOjpSZXNvdXJjZU1hbmFnZXI6OmRl
bGV0ZVByb2dyYW0pOgorKyAgICAgICAgKGdsOjpSZXNvdXJjZU1hbmFnZXI6OmRlbGV0ZVRleHR1
cmUpOgorKyAgICAgICAgKGdsOjpSZXNvdXJjZU1hbmFnZXI6OmRlbGV0ZVJlbmRlcmJ1ZmZlcik6
CisrICAgICAgICAoZ2w6OlJlc291cmNlTWFuYWdlcjo6Z2V0QnVmZmVyKToKKysgICAgICAgIChn
bDo6UmVzb3VyY2VNYW5hZ2VyOjpnZXRTaGFkZXIpOgorKyAgICAgICAgKGdsOjpSZXNvdXJjZU1h
bmFnZXI6OmdldFRleHR1cmUpOgorKyAgICAgICAgKGdsOjpSZXNvdXJjZU1hbmFnZXI6OmdldFBy
b2dyYW0pOgorKyAgICAgICAgKGdsOjpSZXNvdXJjZU1hbmFnZXI6OmdldFJlbmRlcmJ1ZmZlcik6
CisrICAgICAgICAoZ2w6OlJlc291cmNlTWFuYWdlcjo6c2V0UmVuZGVyYnVmZmVyKToKKysgICAg
ICAgIChnbDo6UmVzb3VyY2VNYW5hZ2VyOjpjaGVja0J1ZmZlckFsbG9jYXRpb24pOgorKyAgICAg
ICAgKGdsOjpSZXNvdXJjZU1hbmFnZXI6OmNoZWNrVGV4dHVyZUFsbG9jYXRpb24pOgorKyAgICAg
ICAgKGdsOjpSZXNvdXJjZU1hbmFnZXI6OmNoZWNrUmVuZGVyYnVmZmVyQWxsb2NhdGlvbik6Cisr
ICAgICAgICAqIHNyYy9saWJHTEVTdjIvUmVzb3VyY2VNYW5hZ2VyLmg6IEFkZGVkLgorKyAgICAg
ICAgKiBzcmMvbGliR0xFU3YyL1NoYWRlci5jcHA6IEFkZGVkLgorKyAgICAgICAgKGdsOjpTaGFk
ZXI6OlNoYWRlcik6CisrICAgICAgICAoZ2w6OlNoYWRlcjo6flNoYWRlcik6CisrICAgICAgICAo
Z2w6OlNoYWRlcjo6Z2V0SGFuZGxlKToKKysgICAgICAgIChnbDo6U2hhZGVyOjpzZXRTb3VyY2Up
OgorKyAgICAgICAgKGdsOjpTaGFkZXI6OmdldEluZm9Mb2dMZW5ndGgpOgorKyAgICAgICAgKGds
OjpTaGFkZXI6OmdldEluZm9Mb2cpOgorKyAgICAgICAgKGdsOjpTaGFkZXI6OmdldFNvdXJjZUxl
bmd0aCk6CisrICAgICAgICAoZ2w6OlNoYWRlcjo6Z2V0VHJhbnNsYXRlZFNvdXJjZUxlbmd0aCk6
CisrICAgICAgICAoZ2w6OlNoYWRlcjo6Z2V0U291cmNlSW1wbCk6CisrICAgICAgICAoZ2w6OlNo
YWRlcjo6Z2V0U291cmNlKToKKysgICAgICAgIChnbDo6U2hhZGVyOjpnZXRUcmFuc2xhdGVkU291
cmNlKToKKysgICAgICAgIChnbDo6U2hhZGVyOjppc0NvbXBpbGVkKToKKysgICAgICAgIChnbDo6
U2hhZGVyOjpnZXRITFNMKToKKysgICAgICAgIChnbDo6U2hhZGVyOjphZGRSZWYpOgorKyAgICAg
ICAgKGdsOjpTaGFkZXI6OnJlbGVhc2UpOgorKyAgICAgICAgKGdsOjpTaGFkZXI6OmdldFJlZkNv
dW50KToKKysgICAgICAgIChnbDo6U2hhZGVyOjppc0ZsYWdnZWRGb3JEZWxldGlvbik6CisrICAg
ICAgICAoZ2w6OlNoYWRlcjo6ZmxhZ0ZvckRlbGV0aW9uKToKKysgICAgICAgIChnbDo6U2hhZGVy
Ojppbml0aWFsaXplQ29tcGlsZXIpOgorKyAgICAgICAgKGdsOjpTaGFkZXI6OnJlbGVhc2VDb21w
aWxlcik6CisrICAgICAgICAoZ2w6OlNoYWRlcjo6cGFyc2VWYXJ5aW5ncyk6CisrICAgICAgICAo
Z2w6OlNoYWRlcjo6dW5jb21waWxlKToKKysgICAgICAgIChnbDo6U2hhZGVyOjpjb21waWxlVG9I
TFNMKToKKysgICAgICAgIChnbDo6U2hhZGVyOjpwYXJzZVR5cGUpOgorKyAgICAgICAgKGdsOjpT
aGFkZXI6OmNvbXBhcmVWYXJ5aW5nKToKKysgICAgICAgIChnbDo6VmVydGV4U2hhZGVyOjpWZXJ0
ZXhTaGFkZXIpOgorKyAgICAgICAgKGdsOjpWZXJ0ZXhTaGFkZXI6On5WZXJ0ZXhTaGFkZXIpOgor
KyAgICAgICAgKGdsOjpWZXJ0ZXhTaGFkZXI6OmdldFR5cGUpOgorKyAgICAgICAgKGdsOjpWZXJ0
ZXhTaGFkZXI6OnVuY29tcGlsZSk6CisrICAgICAgICAoZ2w6OlZlcnRleFNoYWRlcjo6Y29tcGls
ZSk6CisrICAgICAgICAoZ2w6OlZlcnRleFNoYWRlcjo6Z2V0U2VtYW50aWNJbmRleCk6CisrICAg
ICAgICAoZ2w6OlZlcnRleFNoYWRlcjo6cGFyc2VBdHRyaWJ1dGVzKToKKysgICAgICAgIChnbDo6
RnJhZ21lbnRTaGFkZXI6OkZyYWdtZW50U2hhZGVyKToKKysgICAgICAgIChnbDo6RnJhZ21lbnRT
aGFkZXI6On5GcmFnbWVudFNoYWRlcik6CisrICAgICAgICAoZ2w6OkZyYWdtZW50U2hhZGVyOjpn
ZXRUeXBlKToKKysgICAgICAgIChnbDo6RnJhZ21lbnRTaGFkZXI6OmNvbXBpbGUpOgorKyAgICAg
ICAgKiBzcmMvbGliR0xFU3YyL1NoYWRlci5oOiBBZGRlZC4KKysgICAgICAgIChnbDo6VmFyeWlu
Zzo6VmFyeWluZyk6CisrICAgICAgICAoZ2w6OkF0dHJpYnV0ZTo6QXR0cmlidXRlKToKKysgICAg
ICAgICogc3JjL2xpYkdMRVN2Mi9UZXh0dXJlLmNwcDogQWRkZWQuCisrICAgICAgICAoZ2w6OkNv
bnZlcnRUZXh0dXJlSW50ZXJuYWxGb3JtYXQpOgorKyAgICAgICAgKGdsOjpJc1RleHR1cmVGb3Jt
YXRSZW5kZXJhYmxlKToKKysgICAgICAgIChnbDo6R2V0VGV4dHVyZVVzYWdlKToKKysgICAgICAg
IChnbDo6TWFrZVZhbGlkU2l6ZSk6CisrICAgICAgICAoZ2w6OkNvcHlMb2NrYWJsZVN1cmZhY2Vz
KToKKysgICAgICAgIChnbDo6SW1hZ2U6OkltYWdlKToKKysgICAgICAgIChnbDo6SW1hZ2U6On5J
bWFnZSk6CisrICAgICAgICAoZ2w6OkltYWdlOjpyZWRlZmluZSk6CisrICAgICAgICAoZ2w6Oklt
YWdlOjpjcmVhdGVTdXJmYWNlKToKKysgICAgICAgIChnbDo6SW1hZ2U6OmxvY2spOgorKyAgICAg
ICAgKGdsOjpJbWFnZTo6dW5sb2NrKToKKysgICAgICAgIChnbDo6SW1hZ2U6OmlzUmVuZGVyYWJs
ZUZvcm1hdCk6CisrICAgICAgICAoZ2w6OkltYWdlOjpnZXREM0RGb3JtYXQpOgorKyAgICAgICAg
KGdsOjpJbWFnZTo6Z2V0U3VyZmFjZSk6CisrICAgICAgICAoZ2w6OkltYWdlOjpzZXRNYW5hZ2Vk
U3VyZmFjZSk6CisrICAgICAgICAoZ2w6OkltYWdlOjp1cGRhdGVTdXJmYWNlKToKKysgICAgICAg
IChnbDo6SW1hZ2U6OmxvYWREYXRhKToKKysgICAgICAgIChnbDo6SW1hZ2U6OmxvYWRBbHBoYURh
dGEpOgorKyAgICAgICAgKGdsOjpJbWFnZTo6bG9hZEFscGhhRmxvYXREYXRhKToKKysgICAgICAg
IChnbDo6SW1hZ2U6OmxvYWRBbHBoYUhhbGZGbG9hdERhdGEpOgorKyAgICAgICAgKGdsOjpJbWFn
ZTo6bG9hZEx1bWluYW5jZURhdGEpOgorKyAgICAgICAgKGdsOjpJbWFnZTo6bG9hZEx1bWluYW5j
ZUZsb2F0RGF0YSk6CisrICAgICAgICAoZ2w6OkltYWdlOjpsb2FkTHVtaW5hbmNlSGFsZkZsb2F0
RGF0YSk6CisrICAgICAgICAoZ2w6OkltYWdlOjpsb2FkTHVtaW5hbmNlQWxwaGFEYXRhKToKKysg
ICAgICAgIChnbDo6SW1hZ2U6OmxvYWRMdW1pbmFuY2VBbHBoYUZsb2F0RGF0YSk6CisrICAgICAg
ICAoZ2w6OkltYWdlOjpsb2FkTHVtaW5hbmNlQWxwaGFIYWxmRmxvYXREYXRhKToKKysgICAgICAg
IChnbDo6SW1hZ2U6OmxvYWRSR0JVQnl0ZURhdGEpOgorKyAgICAgICAgKGdsOjpJbWFnZTo6bG9h
ZFJHQjU2NURhdGEpOgorKyAgICAgICAgKGdsOjpJbWFnZTo6bG9hZFJHQkZsb2F0RGF0YSk6Cisr
ICAgICAgICAoZ2w6OkltYWdlOjpsb2FkUkdCSGFsZkZsb2F0RGF0YSk6CisrICAgICAgICAoZ2w6
OkltYWdlOjpsb2FkUkdCQVVCeXRlRGF0YSk6CisrICAgICAgICAoZ2w6OkltYWdlOjpsb2FkUkdC
QTQ0NDREYXRhKToKKysgICAgICAgIChnbDo6SW1hZ2U6OmxvYWRSR0JBNTU1MURhdGEpOgorKyAg
ICAgICAgKGdsOjpJbWFnZTo6bG9hZFJHQkFGbG9hdERhdGEpOgorKyAgICAgICAgKGdsOjpJbWFn
ZTo6bG9hZFJHQkFIYWxmRmxvYXREYXRhKToKKysgICAgICAgIChnbDo6SW1hZ2U6OmxvYWRCR1JB
RGF0YSk6CisrICAgICAgICAoZ2w6OkltYWdlOjpsb2FkQ29tcHJlc3NlZERhdGEpOgorKyAgICAg
ICAgKGdsOjpJbWFnZTo6Y29weSk6CisrICAgICAgICAoZ2w6OlRleHR1cmVTdG9yYWdlOjpUZXh0
dXJlU3RvcmFnZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmVTdG9yYWdlOjp+VGV4dHVyZVN0b3Jh
Z2UpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlU3RvcmFnZTo6aXNSZW5kZXJUYXJnZXQpOgorKyAg
ICAgICAgKGdsOjpUZXh0dXJlU3RvcmFnZTo6aXNNYW5hZ2VkKToKKysgICAgICAgIChnbDo6VGV4
dHVyZVN0b3JhZ2U6OmdldFBvb2wpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlU3RvcmFnZTo6Z2V0
VXNhZ2UpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlU3RvcmFnZTo6Z2V0VGV4dHVyZVNlcmlhbCk6
CisrICAgICAgICAoZ2w6OlRleHR1cmVTdG9yYWdlOjppc3N1ZVRleHR1cmVTZXJpYWwpOgorKyAg
ICAgICAgKGdsOjpUZXh0dXJlU3RvcmFnZTo6Z2V0TG9kT2Zmc2V0KToKKysgICAgICAgIChnbDo6
VGV4dHVyZTo6VGV4dHVyZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6On5UZXh0dXJlKToKKysg
ICAgICAgIChnbDo6VGV4dHVyZTo6c2V0TWluRmlsdGVyKToKKysgICAgICAgIChnbDo6VGV4dHVy
ZTo6c2V0TWFnRmlsdGVyKToKKysgICAgICAgIChnbDo6VGV4dHVyZTo6c2V0V3JhcFMpOgorKyAg
ICAgICAgKGdsOjpUZXh0dXJlOjpzZXRXcmFwVCk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OnNl
dE1heEFuaXNvdHJvcHkpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpzZXRVc2FnZSk6CisrICAg
ICAgICAoZ2w6OlRleHR1cmU6OmdldE1pbkZpbHRlcik6CisrICAgICAgICAoZ2w6OlRleHR1cmU6
OmdldE1hZ0ZpbHRlcik6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OmdldFdyYXBTKToKKysgICAg
ICAgIChnbDo6VGV4dHVyZTo6Z2V0V3JhcFQpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpnZXRN
YXhBbmlzb3Ryb3B5KToKKysgICAgICAgIChnbDo6VGV4dHVyZTo6Z2V0VXNhZ2UpOgorKyAgICAg
ICAgKGdsOjpUZXh0dXJlOjppc01pcG1hcEZpbHRlcmVkKToKKysgICAgICAgIChnbDo6VGV4dHVy
ZTo6c2V0SW1hZ2UpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpzZXRDb21wcmVzc2VkSW1hZ2Up
OgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpzdWJJbWFnZSk6CisrICAgICAgICAoZ2w6OlRleHR1
cmU6OnN1YkltYWdlQ29tcHJlc3NlZCk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OmdldFRleHR1
cmUpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpoYXNEaXJ0eVBhcmFtZXRlcnMpOgorKyAgICAg
ICAgKGdsOjpUZXh0dXJlOjpoYXNEaXJ0eUltYWdlcyk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6
OnJlc2V0RGlydHkpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpnZXRUZXh0dXJlU2VyaWFsKToK
KysgICAgICAgIChnbDo6VGV4dHVyZTo6Z2V0UmVuZGVyVGFyZ2V0U2VyaWFsKToKKysgICAgICAg
IChnbDo6VGV4dHVyZTo6aXNJbW11dGFibGUpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpnZXRM
b2RPZmZzZXQpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpjcmVhdGlvbkxldmVscyk6CisrICAg
ICAgICAoZ2w6OlRleHR1cmU6OmxldmVsQ291bnQpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpn
ZXRCbGl0dGVyKToKKysgICAgICAgIChnbDo6VGV4dHVyZTo6Y29weVRvUmVuZGVyVGFyZ2V0KToK
KysgICAgICAgIChnbDo6VGV4dHVyZVN0b3JhZ2UyRDo6VGV4dHVyZVN0b3JhZ2UyRCk6CisrICAg
ICAgICAoZ2w6OlRleHR1cmVTdG9yYWdlMkQ6On5UZXh0dXJlU3RvcmFnZTJEKToKKysgICAgICAg
IChnbDo6VGV4dHVyZVN0b3JhZ2UyRDo6Z2V0U3VyZmFjZUxldmVsKToKKysgICAgICAgIChnbDo6
VGV4dHVyZVN0b3JhZ2UyRDo6Z2V0QmFzZVRleHR1cmUpOgorKyAgICAgICAgKGdsOjpUZXh0dXJl
U3RvcmFnZTJEOjpnZXRSZW5kZXJUYXJnZXRTZXJpYWwpOgorKyAgICAgICAgKGdsOjpUZXh0dXJl
MkQ6OlRleHR1cmUyRCk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6flRleHR1cmUyRCk6Cisr
ICAgICAgICAoZ2w6OlRleHR1cmUyRDo6YWRkUHJveHlSZWYpOgorKyAgICAgICAgKGdsOjpUZXh0
dXJlMkQ6OnJlbGVhc2VQcm94eSk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6Z2V0VGFyZ2V0
KToKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjpnZXRXaWR0aCk6CisrICAgICAgICAoZ2w6OlRl
eHR1cmUyRDo6Z2V0SGVpZ2h0KToKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjpnZXRJbnRlcm5h
bEZvcm1hdCk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6Z2V0RDNERm9ybWF0KToKKysgICAg
ICAgIChnbDo6VGV4dHVyZTJEOjpyZWRlZmluZUltYWdlKToKKysgICAgICAgIChnbDo6VGV4dHVy
ZTJEOjpzZXRJbWFnZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6YmluZFRleEltYWdlKToK
KysgICAgICAgIChnbDo6VGV4dHVyZTJEOjpyZWxlYXNlVGV4SW1hZ2UpOgorKyAgICAgICAgKGds
OjpUZXh0dXJlMkQ6OnNldENvbXByZXNzZWRJbWFnZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmUy
RDo6Y29tbWl0UmVjdCk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6c3ViSW1hZ2UpOgorKyAg
ICAgICAgKGdsOjpUZXh0dXJlMkQ6OnN1YkltYWdlQ29tcHJlc3NlZCk6CisrICAgICAgICAoZ2w6
OlRleHR1cmUyRDo6Y29weUltYWdlKToKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjpjb3B5U3Vi
SW1hZ2UpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlMkQ6OnN0b3JhZ2UpOgorKyAgICAgICAgKGds
OjpUZXh0dXJlMkQ6OmlzU2FtcGxlckNvbXBsZXRlKToKKysgICAgICAgIChnbDo6VGV4dHVyZTJE
Ojppc01pcG1hcENvbXBsZXRlKToKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjppc0NvbXByZXNz
ZWQpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlMkQ6OmlzRGVwdGgpOgorKyAgICAgICAgKGdsOjpU
ZXh0dXJlMkQ6OmdldEJhc2VUZXh0dXJlKToKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjpjcmVh
dGVUZXh0dXJlKToKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjp1cGRhdGVUZXh0dXJlKToKKysg
ICAgICAgIChnbDo6VGV4dHVyZTJEOjpjb252ZXJ0VG9SZW5kZXJUYXJnZXQpOgorKyAgICAgICAg
KGdsOjpUZXh0dXJlMkQ6OmdlbmVyYXRlTWlwbWFwcyk6CisrICAgICAgICAoZ2w6OlRleHR1cmUy
RDo6Z2V0UmVuZGVyYnVmZmVyKToKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjpnZXRSZW5kZXJU
YXJnZXQpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlMkQ6OmdldERlcHRoU3RlbmNpbCk6CisrICAg
ICAgICAoZ2w6OlRleHR1cmUyRDo6Z2V0U3RvcmFnZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmVT
dG9yYWdlQ3ViZU1hcDo6VGV4dHVyZVN0b3JhZ2VDdWJlTWFwKToKKysgICAgICAgIChnbDo6VGV4
dHVyZVN0b3JhZ2VDdWJlTWFwOjp+VGV4dHVyZVN0b3JhZ2VDdWJlTWFwKToKKysgICAgICAgIChn
bDo6VGV4dHVyZVN0b3JhZ2VDdWJlTWFwOjpnZXRDdWJlTWFwU3VyZmFjZSk6CisrICAgICAgICAo
Z2w6OlRleHR1cmVTdG9yYWdlQ3ViZU1hcDo6Z2V0QmFzZVRleHR1cmUpOgorKyAgICAgICAgKGds
OjpUZXh0dXJlU3RvcmFnZUN1YmVNYXA6OmdldFJlbmRlclRhcmdldFNlcmlhbCk6CisrICAgICAg
ICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpUZXh0dXJlQ3ViZU1hcCk6CisrICAgICAgICAoZ2w6OlRl
eHR1cmVDdWJlTWFwOjp+VGV4dHVyZUN1YmVNYXApOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3Vi
ZU1hcDo6YWRkUHJveHlSZWYpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6cmVsZWFz
ZVByb3h5KToKKysgICAgICAgIChnbDo6VGV4dHVyZUN1YmVNYXA6OmdldFRhcmdldCk6CisrICAg
ICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpnZXRXaWR0aCk6CisrICAgICAgICAoZ2w6OlRleHR1
cmVDdWJlTWFwOjpnZXRIZWlnaHQpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6Z2V0
SW50ZXJuYWxGb3JtYXQpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6Z2V0RDNERm9y
bWF0KToKKysgICAgICAgIChnbDo6VGV4dHVyZUN1YmVNYXA6OnNldEltYWdlUG9zWCk6CisrICAg
ICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpzZXRJbWFnZU5lZ1gpOgorKyAgICAgICAgKGdsOjpU
ZXh0dXJlQ3ViZU1hcDo6c2V0SW1hZ2VQb3NZKToKKysgICAgICAgIChnbDo6VGV4dHVyZUN1YmVN
YXA6OnNldEltYWdlTmVnWSk6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpzZXRJbWFn
ZVBvc1opOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6c2V0SW1hZ2VOZWdaKToKKysg
ICAgICAgIChnbDo6VGV4dHVyZUN1YmVNYXA6OnNldENvbXByZXNzZWRJbWFnZSk6CisrICAgICAg
ICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpjb21taXRSZWN0KToKKysgICAgICAgIChnbDo6VGV4dHVy
ZUN1YmVNYXA6OnN1YkltYWdlKToKKysgICAgICAgIChnbDo6VGV4dHVyZUN1YmVNYXA6OnN1Yklt
YWdlQ29tcHJlc3NlZCk6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjppc1NhbXBsZXJD
b21wbGV0ZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjppc0N1YmVDb21wbGV0ZSk6
CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjppc01pcG1hcEN1YmVDb21wbGV0ZSk6Cisr
ICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjppc0NvbXByZXNzZWQpOgorKyAgICAgICAgKGds
OjpUZXh0dXJlQ3ViZU1hcDo6Z2V0QmFzZVRleHR1cmUpOgorKyAgICAgICAgKGdsOjpUZXh0dXJl
Q3ViZU1hcDo6Y3JlYXRlVGV4dHVyZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjp1
cGRhdGVUZXh0dXJlKToKKysgICAgICAgIChnbDo6VGV4dHVyZUN1YmVNYXA6OmNvbnZlcnRUb1Jl
bmRlclRhcmdldCk6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpzZXRJbWFnZSk6Cisr
ICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpmYWNlSW5kZXgpOgorKyAgICAgICAgKGdsOjpU
ZXh0dXJlQ3ViZU1hcDo6cmVkZWZpbmVJbWFnZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJl
TWFwOjpjb3B5SW1hZ2UpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6Y29weVN1Yklt
YWdlKToKKysgICAgICAgIChnbDo6VGV4dHVyZUN1YmVNYXA6OnN0b3JhZ2UpOgorKyAgICAgICAg
KGdsOjpUZXh0dXJlQ3ViZU1hcDo6Z2VuZXJhdGVNaXBtYXBzKToKKysgICAgICAgIChnbDo6VGV4
dHVyZUN1YmVNYXA6OmdldFJlbmRlcmJ1ZmZlcik6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJl
TWFwOjpnZXRSZW5kZXJUYXJnZXQpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6Z2V0
U3RvcmFnZSk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvVGV4dHVyZS5oOiBBZGRlZC4KKysg
ICAgICAgIChnbDo6SW1hZ2U6Om1hcmtEaXJ0eSk6CisrICAgICAgICAoZ2w6OkltYWdlOjptYXJr
Q2xlYW4pOgorKyAgICAgICAgKGdsOjpJbWFnZTo6Z2V0V2lkdGgpOgorKyAgICAgICAgKGdsOjpJ
bWFnZTo6Z2V0SGVpZ2h0KToKKysgICAgICAgIChnbDo6SW1hZ2U6OmdldEludGVybmFsRm9ybWF0
KToKKysgICAgICAgIChnbDo6SW1hZ2U6OmlzRGlydHkpOgorKyAgICAgICAgKiBzcmMvbGliR0xF
U3YyL1RleHR1cmVTU0UyLmNwcDogQWRkZWQuCisrICAgICAgICAoZ2w6OkltYWdlOjpsb2FkUkdC
QVVCeXRlRGF0YVNTRTIpOgorKyAgICAgICAgKGdsOjpJbWFnZTo6bG9hZEFscGhhRGF0YVNTRTIp
OgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1ZlcnRleERhdGFNYW5hZ2VyLmNwcDogQWRkZWQu
CisrICAgICAgICAoZ2w6OmVsZW1lbnRzSW5CdWZmZXIpOgorKyAgICAgICAgKGdsOjpWZXJ0ZXhE
YXRhTWFuYWdlcjo6VmVydGV4RGF0YU1hbmFnZXIpOgorKyAgICAgICAgKGdsOjpWZXJ0ZXhEYXRh
TWFuYWdlcjo6flZlcnRleERhdGFNYW5hZ2VyKToKKysgICAgICAgIChnbDo6VmVydGV4RGF0YU1h
bmFnZXI6OndyaXRlQXR0cmlidXRlRGF0YSk6CisrICAgICAgICAoZ2w6OlZlcnRleERhdGFNYW5h
Z2VyOjpwcmVwYXJlVmVydGV4RGF0YSk6CisrICAgICAgICAoZ2w6OlZlcnRleERhdGFNYW5hZ2Vy
OjpzcGFjZVJlcXVpcmVkKToKKysgICAgICAgIChnbDo6VmVydGV4RGF0YU1hbmFnZXI6OmNoZWNr
VmVydGV4Q2Fwcyk6CisrICAgICAgICAoZ2w6OlZlcnRleERhdGFNYW5hZ2VyOjp0eXBlSW5kZXgp
OgorKyAgICAgICAgKGdsOjpWZXJ0ZXhCdWZmZXI6OlZlcnRleEJ1ZmZlcik6CisrICAgICAgICAo
Z2w6OlZlcnRleEJ1ZmZlcjo6flZlcnRleEJ1ZmZlcik6CisrICAgICAgICAoZ2w6OlZlcnRleEJ1
ZmZlcjo6dW5tYXApOgorKyAgICAgICAgKGdsOjpWZXJ0ZXhCdWZmZXI6OmdldEJ1ZmZlcik6Cisr
ICAgICAgICAoZ2w6OlZlcnRleEJ1ZmZlcjo6Z2V0U2VyaWFsKToKKysgICAgICAgIChnbDo6VmVy
dGV4QnVmZmVyOjppc3N1ZVNlcmlhbCk6CisrICAgICAgICAoZ2w6OkFycmF5VmVydGV4QnVmZmVy
OjpBcnJheVZlcnRleEJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkFycmF5VmVydGV4QnVmZmVyOjp+
QXJyYXlWZXJ0ZXhCdWZmZXIpOgorKyAgICAgICAgKGdsOjpBcnJheVZlcnRleEJ1ZmZlcjo6YWRk
UmVxdWlyZWRTcGFjZSk6CisrICAgICAgICAoZ2w6OlN0cmVhbWluZ1ZlcnRleEJ1ZmZlcjo6U3Ry
ZWFtaW5nVmVydGV4QnVmZmVyKToKKysgICAgICAgIChnbDo6U3RyZWFtaW5nVmVydGV4QnVmZmVy
Ojp+U3RyZWFtaW5nVmVydGV4QnVmZmVyKToKKysgICAgICAgIChnbDo6U3RyZWFtaW5nVmVydGV4
QnVmZmVyOjptYXApOgorKyAgICAgICAgKGdsOjpTdHJlYW1pbmdWZXJ0ZXhCdWZmZXI6OnJlc2Vy
dmVSZXF1aXJlZFNwYWNlKToKKysgICAgICAgIChnbDo6U3RhdGljVmVydGV4QnVmZmVyOjpTdGF0
aWNWZXJ0ZXhCdWZmZXIpOgorKyAgICAgICAgKGdsOjpTdGF0aWNWZXJ0ZXhCdWZmZXI6On5TdGF0
aWNWZXJ0ZXhCdWZmZXIpOgorKyAgICAgICAgKGdsOjpTdGF0aWNWZXJ0ZXhCdWZmZXI6Om1hcCk6
CisrICAgICAgICAoZ2w6OlN0YXRpY1ZlcnRleEJ1ZmZlcjo6cmVzZXJ2ZVJlcXVpcmVkU3BhY2Up
OgorKyAgICAgICAgKGdsOjpTdGF0aWNWZXJ0ZXhCdWZmZXI6Omxvb2t1cEF0dHJpYnV0ZSk6Cisr
ICAgICAgICAoZ2w6OlZlcnRleERhdGFNYW5hZ2VyOjpmb3JtYXRDb252ZXJ0ZXIpOgorKyAgICAg
ICAgKiBzcmMvbGliR0xFU3YyL1ZlcnRleERhdGFNYW5hZ2VyLmg6IEFkZGVkLgorKyAgICAgICAg
KGdsOjpBcnJheVZlcnRleEJ1ZmZlcjo6c2l6ZSk6CisrICAgICAgICAoZ2w6OlZlcnRleERhdGFN
YW5hZ2VyOjpkaXJ0eUN1cnJlbnRWYWx1ZSk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvbGli
R0xFU3YyLmNwcDogQWRkZWQuCisrICAgICAgICAodmFsaWRJbWFnZVNpemUpOgorKyAgICAgICAg
KGNoZWNrVGV4dHVyZUZvcm1hdFR5cGUpOgorKyAgICAgICAgKHZhbGlkYXRlU3ViSW1hZ2VQYXJh
bXMyRCk6CisrICAgICAgICAodmFsaWRhdGVTdWJJbWFnZVBhcmFtc0N1YmUpOgorKyAgICAgICAg
KHZhbGlkUmVhZEZvcm1hdFR5cGUpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL2xpYkdMRVN2
Mi5kZWY6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL2xpYkdMRVN2Mi5yYzogQWRk
ZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvbGliR0xFU3YyLnZjeHByb2o6IEFkZGVkLgor
KyAgICAgICAgKiBzcmMvbGliR0xFU3YyL2xpYkdMRVN2Mi52Y3hwcm9qLmZpbHRlcnM6IEFkZGVk
LgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL21haW4uY3BwOiBBZGRlZC4KKysgICAgICAgIChE
bGxNYWluKToKKysgICAgICAgIChnbDo6bWFrZUN1cnJlbnQpOgorKyAgICAgICAgKGdsOjpnZXRD
b250ZXh0KToKKysgICAgICAgIChnbDo6Z2V0Tm9uTG9zdENvbnRleHQpOgorKyAgICAgICAgKGds
OjpnZXREaXNwbGF5KToKKysgICAgICAgIChnbDo6Z2V0RGV2aWNlKToKKysgICAgICAgIChnbDo6
Y2hlY2tEZXZpY2VMb3N0KToKKysgICAgICAgIChlcnJvcik6CisrICAgICAgICAqIHNyYy9saWJH
TEVTdjIvbWFpbi5oOiBBZGRlZC4KKysgICAgICAgIChlcnJvcik6CisrICAgICAgICAqIHNyYy9s
aWJHTEVTdjIvbWF0aHV0aWwuaDogQWRkZWQuCisrICAgICAgICAoZ2w6OlZlY3RvcjQ6OlZlY3Rv
cjQpOgorKyAgICAgICAgKGdsOjppc1BvdzIpOgorKyAgICAgICAgKGdsOjpsb2cyKToKKysgICAg
ICAgIChnbDo6Y2VpbFBvdzIpOgorKyAgICAgICAgKGdsOjpjbGFtcCk6CisrICAgICAgICAoZ2w6
OmNsYW1wMDEpOgorKyAgICAgICAgKGdsOjp1bm9ybSk6CisrICAgICAgICAoZ2w6OnN1cHBvcnRz
U1NFMik6CisrICAgICAgICAoZ2w6OmZsb2F0MzJUb0Zsb2F0MTYpOgorKyAgICAgICAgKiBzcmMv
bGliR0xFU3YyL3Jlc291cmNlLmg6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3No
YWRlcnM6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3NoYWRlcnMvQmxpdC5wczog
QWRkZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvc2hhZGVycy9CbGl0LnZzOiBBZGRlZC4K
KysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9zaGFkZXJzL2NvbXBvbmVudG1hc2twcy5oOiBBZGRl
ZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9zaGFkZXJzL2ZsaXB5dnMuaDogQWRkZWQuCisr
ICAgICAgICAqIHNyYy9saWJHTEVTdjIvc2hhZGVycy9nZW5lcmF0ZV9zaGFkZXJzLmJhdDogQWRk
ZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvc2hhZGVycy9sdW1pbmFuY2Vwcy5oOiBBZGRl
ZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9zaGFkZXJzL3Bhc3N0aHJvdWdocHMuaDogQWRk
ZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvc2hhZGVycy9zdGFuZGFyZHZzLmg6IEFkZGVk
LgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3V0aWxpdGllcy5jcHA6IEFkZGVkLgorKyAgICAg
ICAgKGdsOjpVbmlmb3JtRXh0ZXJuYWxDb21wb25lbnRDb3VudCk6CisrICAgICAgICAoZ2w6OlVu
aWZvcm1JbnRlcm5hbENvbXBvbmVudENvdW50KToKKysgICAgICAgIChnbDo6VW5pZm9ybUNvbXBv
bmVudFR5cGUpOgorKyAgICAgICAgKGdsOjpVbmlmb3JtQ29tcG9uZW50U2l6ZSk6CisrICAgICAg
ICAoZ2w6OlVuaWZvcm1JbnRlcm5hbFNpemUpOgorKyAgICAgICAgKGdsOjpVbmlmb3JtRXh0ZXJu
YWxTaXplKToKKysgICAgICAgIChnbDo6VmFyaWFibGVSb3dDb3VudCk6CisrICAgICAgICAoZ2w6
OlZhcmlhYmxlQ29sdW1uQ291bnQpOgorKyAgICAgICAgKGdsOjpBbGxvY2F0ZUZpcnN0RnJlZUJp
dHMpOgorKyAgICAgICAgKGdsOjpDb21wdXRlUGl0Y2gpOgorKyAgICAgICAgKGdsOjpDb21wdXRl
Q29tcHJlc3NlZFBpdGNoKToKKysgICAgICAgIChnbDo6Q29tcHV0ZUNvbXByZXNzZWRTaXplKToK
KysgICAgICAgIChnbDo6SXNDb21wcmVzc2VkKToKKysgICAgICAgIChnbDo6SXNEZXB0aFRleHR1
cmUpOgorKyAgICAgICAgKGdsOjpJc1N0ZW5jaWxUZXh0dXJlKToKKysgICAgICAgIChnbDo6Q29t
cHV0ZVBpeGVsU2l6ZSk6CisrICAgICAgICAoZ2w6OklzQ3ViZW1hcFRleHR1cmVUYXJnZXQpOgor
KyAgICAgICAgKGdsOjpJc0ludGVybmFsVGV4dHVyZVRhcmdldCk6CisrICAgICAgICAoZ2w6OkNv
bnZlcnRTaXplZEludGVybmFsRm9ybWF0KToKKysgICAgICAgIChnbDo6RXh0cmFjdEZvcm1hdCk6
CisrICAgICAgICAoZ2w6OkV4dHJhY3RUeXBlKToKKysgICAgICAgIChnbDo6SXNDb2xvclJlbmRl
cmFibGUpOgorKyAgICAgICAgKGdsOjpJc0RlcHRoUmVuZGVyYWJsZSk6CisrICAgICAgICAoZ2w6
OklzU3RlbmNpbFJlbmRlcmFibGUpOgorKyAgICAgICAgKGdsOjpJc0Zsb2F0MzJGb3JtYXQpOgor
KyAgICAgICAgKGdsOjpJc0Zsb2F0MTZGb3JtYXQpOgorKyAgICAgICAgKGVzMmR4OjpDb252ZXJ0
Q29tcGFyaXNvbik6CisrICAgICAgICAoZXMyZHg6OkNvbnZlcnRDb2xvcik6CisrICAgICAgICAo
ZXMyZHg6OkNvbnZlcnRCbGVuZEZ1bmMpOgorKyAgICAgICAgKGVzMmR4OjpDb252ZXJ0QmxlbmRP
cCk6CisrICAgICAgICAoZXMyZHg6OkNvbnZlcnRTdGVuY2lsT3ApOgorKyAgICAgICAgKGVzMmR4
OjpDb252ZXJ0VGV4dHVyZVdyYXApOgorKyAgICAgICAgKGVzMmR4OjpDb252ZXJ0Q3VsbE1vZGUp
OgorKyAgICAgICAgKGVzMmR4OjpDb252ZXJ0Q3ViZUZhY2UpOgorKyAgICAgICAgKGVzMmR4OjpD
b252ZXJ0Q29sb3JNYXNrKToKKysgICAgICAgIChlczJkeDo6Q29udmVydE1hZ0ZpbHRlcik6Cisr
ICAgICAgICAoZXMyZHg6OkNvbnZlcnRNaW5GaWx0ZXIpOgorKyAgICAgICAgKGVzMmR4OjpDb252
ZXJ0UHJpbWl0aXZlVHlwZSk6CisrICAgICAgICAoZXMyZHg6OkNvbnZlcnRSZW5kZXJidWZmZXJG
b3JtYXQpOgorKyAgICAgICAgKGVzMmR4OjpHZXRNdWx0aXNhbXBsZVR5cGVGcm9tU2FtcGxlcyk6
CisrICAgICAgICAoZHgyZXM6OkdldFN0ZW5jaWxTaXplKToKKysgICAgICAgIChkeDJlczo6R2V0
QWxwaGFTaXplKToKKysgICAgICAgIChkeDJlczo6R2V0UmVkU2l6ZSk6CisrICAgICAgICAoZHgy
ZXM6OkdldEdyZWVuU2l6ZSk6CisrICAgICAgICAoZHgyZXM6OkdldEJsdWVTaXplKToKKysgICAg
ICAgIChkeDJlczo6R2V0RGVwdGhTaXplKToKKysgICAgICAgIChkeDJlczo6R2V0U2FtcGxlc0Zy
b21NdWx0aXNhbXBsZVR5cGUpOgorKyAgICAgICAgKGR4MmVzOjpJc0Zvcm1hdENoYW5uZWxFcXVp
dmFsZW50KToKKysgICAgICAgIChkeDJlczo6Q29udmVydFJlYWRCdWZmZXJGb3JtYXQpOgorKyAg
ICAgICAgKGR4MmVzOjpDb252ZXJ0QmFja0J1ZmZlckZvcm1hdCk6CisrICAgICAgICAoZHgyZXM6
OkNvbnZlcnREZXB0aFN0ZW5jaWxGb3JtYXQpOgorKyAgICAgICAgKGR4OjpJc0NvbXByZXNzZWRG
b3JtYXQpOgorKyAgICAgICAgKGR4OjpDb21wdXRlUm93U2l6ZSk6CisrICAgICAgICAoZ2V0VGVt
cFBhdGgpOgorKyAgICAgICAgKHdyaXRlRmlsZSk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIv
dXRpbGl0aWVzLmg6IEFkZGVkLgorKyAgICAgICAgKGlzRGV2aWNlTG9zdEVycm9yKToKKysgICAg
ICAgICogc3JjL2xpYkdMRVN2Mi92ZXJ0ZXhjb252ZXJzaW9uLmg6IEFkZGVkLgorKyAgICAgICAg
KGdsOjpJZGVudGl0eTo6Y29udmVydCk6CisrICAgICAgICAoZ2w6OkNhc3Q6OmNvbnZlcnQpOgor
KyAgICAgICAgKGdsOjpOb3JtYWxpemU6OmNvbnZlcnQpOgorKyAgICAgICAgKGdsOjpGaXhlZFRv
RmxvYXQ6OmNvbnZlcnQpOgorKyAgICAgICAgKGdsOjpTaW1wbGVEZWZhdWx0VmFsdWVzOjp6ZXJv
KToKKysgICAgICAgIChnbDo6U2ltcGxlRGVmYXVsdFZhbHVlczo6b25lKToKKysgICAgICAgIChn
bDo6Tm9ybWFsaXplZERlZmF1bHRWYWx1ZXM6Onplcm8pOgorKyAgICAgICAgKGdsOjpOb3JtYWxp
emVkRGVmYXVsdFZhbHVlczo6b25lKToKKysgICAgICAgIChnbDo6VmVydGV4RGF0YUNvbnZlcnRl
cjo6Y29udmVydEFycmF5KToKKysgICAgICAgIChnbDo6VmVydGV4RGF0YUNvbnZlcnRlcjo6cG9p
bnRlckFkZEJ5dGVzKToKKysgICAgICAgIChnbDo6VmVydGV4RGF0YUNvbnZlcnRlcjo6Y29weUNv
bXBvbmVudCk6CisrCisrMjAxMy0wNy0xNyAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNl
bkBhcHBsZS5jb20+CisrCisrICAgICAgICBNYWRlIGEgcmVwZWF0YWJsZSBwcm9jZXNzIGZvciB1
cGRhdGluZyBBTkdMRSB0aGF0IGRvZXMgbm90IGluY2x1ZGUgbWFudWFsbHkgZWRpdGluZyBhbnkg
ZmlsZXMuCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTE4ODE1CisrCisrICAgICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisrCisrICAgICAg
ICAqIHNyYy9jb21waWxlci9nbHNsYW5nLnk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9nbHNs
YW5nX2xleC5jcHA6CisrICAgICAgICAqIHNyYy9jb21waWxlci9nbHNsYW5nX3RhYi5jcHA6Cisr
ICAgICAgICAqIHNyYy9jb21waWxlci9nbHNsYW5nX3RhYi5oOiBQdXQgWVlMVFlQRSBkZWZpbml0
aW9uIGluICV1bmlvbiBpbnN0ZWFkIG9mIHByb2xvZ3VlIGFuZCByYW4gQmlzb24uCisrCisrMjAx
My0wNy0xNiAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkBhcHBsZS5jb20+CisrCisr
ICAgICAgICBVcGRhdGUgQU5HTEUgZnJvbSByMTk4NyB0byByMjQyNiB3aGlsZSBrZWVwaW5nIHRo
ZXNlIGNoYW5nZXM6CisrICAgICAgICBLZWVwaW5nICNpZiBkZWZpbmVkKF9NU0NfVkVSKSBhcm91
bmQgI3ByYWdtYSB3YXJuaW5nKGRpc2FibGU6IDQ3MTgpIGluIERlcGVuZGVuY3lHcmFwaC5jcHAu
CisrICAgICAgICBLZWVwaW5nIGluY2x1ZGUga2hycGxhdGZvcm0uaCBpbnN0ZWFkIG9mIEtIUi9r
aHJwbGF0Zm9ybS5oIGluIFNoYWRlckxhbmcuaC4KKysgICAgICAgIEFkZGVkIHN0YXRpY19jYXN0
cyBpbiBJbnRlcm1lZGlhdGUuY3BwIHRvIGZpeCBjb21waWxpbmcgb24gTWFjLgorKyAgICAgICAg
Q2hhbmdlZCBlbnVtIGJpdCBmaWVsZHMgdG8ganVzdCBlbnVtcyBmb3IgR0NDIGluIFR5cGVzLmgg
dG8gZml4IGNvbXBpbGluZyBmb3IgR1RLLgorKyAgICAgICAgUmFuIEJpc29uIG9uIE1hYyBhZnRl
ciByZW1vdmluZyB0aGUgdW5zdXBwb3J0ZWQgJWNvZGUgdGFnIChTZWUgZGlmZiB1cGxvYWRlZCB0
byBidWcgZm9yIGRldGFpbHMpLgorKyAgICAgICAgQWRkZWQgWVlMVFlQRSBkZWZpbml0aW9uIHRv
IGdsc2xhbmdfdGFiLmggd2hpY2ggd291bGQgaGF2ZSBiZWVuIHB1dCB0aGVyZSBieSB0aGUgdW5z
dXBwb3J0ZWQgJWNvZGUgdGFnLgorKworKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTExODU1MAorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGVhbiBKYWNr
c29uLgorKworKyAgICAgICAgKiBBTkdMRS5wbGlzdDogVXBkYXRlZCByZXZpc2lvbiBvZiBBTkdM
RSB0byAyNDI2LgorKyAgICAgICAgKiBBTkdMRS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgor
KyAgICAgICAgKiBHTlVtYWtlZmlsZS5hbToKKysgICAgICAgICogVGFyZ2V0LnByaToKKysgICAg
ICAgICAgICBSZW5hbWVkIERldGVjdFJlY3Vyc2lvbiB0byBEZXRlY3RDYWxsRGVwdGggYW5kIGFk
ZGVkIGJ1aWx0aW5fc3ltYm9sX3RhYmxlLgorKyAgICAgICAgKiBpbmNsdWRlL0dMU0xBTkcvU2hh
ZGVyTGFuZy5oOgorKyAgICAgICAgKiBzcmMvY29tbW9uL3ZlcnNpb24uaDoKKysgICAgICAgICog
c3JjL2NvbXBpbGVyL0Jhc2VUeXBlcy5oOgorKyAgICAgICAgKGdldFF1YWxpZmllclN0cmluZyk6
CisrICAgICAgICAqIHNyYy9jb21waWxlci9Db21tb24uaDoKKysgICAgICAgICogc3JjL2NvbXBp
bGVyL0NvbXBpbGVyLmNwcDoKKysgICAgICAgIChUQ29tcGlsZXI6OlRDb21waWxlcik6CisrICAg
ICAgICAoVENvbXBpbGVyOjpJbml0KToKKysgICAgICAgIChUQ29tcGlsZXI6OmNvbXBpbGUpOgor
KyAgICAgICAgKFRDb21waWxlcjo6ZGV0ZWN0Q2FsbERlcHRoKToKKysgICAgICAgIChUQ29tcGls
ZXI6OmVuZm9yY2VUaW1pbmdSZXN0cmljdGlvbnMpOgorKyAgICAgICAgKFRDb21waWxlcjo6bGlt
aXRFeHByZXNzaW9uQ29tcGxleGl0eSk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9Db25zdGFu
dFVuaW9uLmg6CisrICAgICAgICAoQ29uc3RhbnRVbmlvbjo6Q29uc3RhbnRVbmlvbik6CisrICAg
ICAgICAqIHNyYy9jb21waWxlci9EZXRlY3RDYWxsRGVwdGguY3BwOiBBZGRlZC4KKysgICAgICAg
IChEZXRlY3RDYWxsRGVwdGg6OkZ1bmN0aW9uTm9kZTo6RnVuY3Rpb25Ob2RlKToKKysgICAgICAg
IChEZXRlY3RDYWxsRGVwdGg6OkZ1bmN0aW9uTm9kZTo6Z2V0TmFtZSk6CisrICAgICAgICAoRGV0
ZWN0Q2FsbERlcHRoOjpGdW5jdGlvbk5vZGU6OmFkZENhbGxlZSk6CisrICAgICAgICAoRGV0ZWN0
Q2FsbERlcHRoOjpGdW5jdGlvbk5vZGU6OmRldGVjdENhbGxEZXB0aCk6CisrICAgICAgICAoRGV0
ZWN0Q2FsbERlcHRoOjpGdW5jdGlvbk5vZGU6OnJlc2V0KToKKysgICAgICAgIChEZXRlY3RDYWxs
RGVwdGg6OkRldGVjdENhbGxEZXB0aCk6CisrICAgICAgICAoRGV0ZWN0Q2FsbERlcHRoOjp+RGV0
ZWN0Q2FsbERlcHRoKToKKysgICAgICAgIChEZXRlY3RDYWxsRGVwdGg6OnZpc2l0QWdncmVnYXRl
KToKKysgICAgICAgIChEZXRlY3RDYWxsRGVwdGg6OmNoZWNrRXhjZWVkc01heERlcHRoKToKKysg
ICAgICAgIChEZXRlY3RDYWxsRGVwdGg6OnJlc2V0RnVuY3Rpb25Ob2Rlcyk6CisrICAgICAgICAo
RGV0ZWN0Q2FsbERlcHRoOjpkZXRlY3RDYWxsRGVwdGhGb3JGdW5jdGlvbik6CisrICAgICAgICAo
RGV0ZWN0Q2FsbERlcHRoOjpkZXRlY3RDYWxsRGVwdGgpOgorKyAgICAgICAgKERldGVjdENhbGxE
ZXB0aDo6ZmluZEZ1bmN0aW9uQnlOYW1lKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL0RldGVj
dENhbGxEZXB0aC5oOiBBZGRlZC4KKysgICAgICAgIChEZXRlY3RDYWxsRGVwdGg6OmdldEluZm9T
aW5rKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL0RldGVjdFJlY3Vyc2lvbi5jcHA6IFJlbW92
ZWQuCisrICAgICAgICAqIHNyYy9jb21waWxlci9EZXRlY3RSZWN1cnNpb24uaDogUmVtb3ZlZC4K
KysgICAgICAgICogc3JjL2NvbXBpbGVyL0RpYWdub3N0aWNzLmNwcDoKKysgICAgICAgIChURGlh
Z25vc3RpY3M6OndyaXRlSW5mbyk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9Gb3JMb29wVW5y
b2xsLmNwcDoKKysgICAgICAgIChGb3JMb29wVW5yb2xsOjpldmFsdWF0ZUludENvbnN0YW50KToK
KysgICAgICAgICogc3JjL2NvbXBpbGVyL0luZm9TaW5rLmNwcDoKKysgICAgICAgIChUSW5mb1Np
bmtCYXNlOjpwcmVmaXgpOgorKyAgICAgICAgKFRJbmZvU2lua0Jhc2U6OmxvY2F0aW9uKToKKysg
ICAgICAgIChUSW5mb1NpbmtCYXNlOjptZXNzYWdlKToKKysgICAgICAgICogc3JjL2NvbXBpbGVy
L0luZm9TaW5rLmg6CisrICAgICAgICAqIHNyYy9jb21waWxlci9Jbml0aWFsaXplLmNwcDoKKysg
ICAgICAgIChUQnVpbHRJbnM6OmluaXRpYWxpemUpOgorKyAgICAgICAgKElkZW50aWZ5QnVpbHRJ
bnMpOgorKyAgICAgICAgKEluaXRFeHRlbnNpb25CZWhhdmlvcik6CisrICAgICAgICAqIHNyYy9j
b21waWxlci9JbnRlcm1lZGlhdGUuY3BwOiBVcGRhdGVkIGFuZCBhZGRlZCBzdGF0aWNfY2FzdHMg
dG8gZml4IGJ1aWxkIGVycm9ycyBvbiBNYWMuCisrICAgICAgICAoVEludGVybWVkaWF0ZTo6YWRk
U3ltYm9sKToKKysgICAgICAgIChUSW50ZXJtZWRpYXRlOjphZGRCaW5hcnlNYXRoKToKKysgICAg
ICAgIChUSW50ZXJtZWRpYXRlOjphZGRBc3NpZ24pOgorKyAgICAgICAgKFRJbnRlcm1lZGlhdGU6
OmFkZEluZGV4KToKKysgICAgICAgIChUSW50ZXJtZWRpYXRlOjphZGRVbmFyeU1hdGgpOgorKyAg
ICAgICAgKFRJbnRlcm1lZGlhdGU6OnNldEFnZ3JlZ2F0ZU9wZXJhdG9yKToKKysgICAgICAgIChU
SW50ZXJtZWRpYXRlOjphZGRDb252ZXJzaW9uKToKKysgICAgICAgIChUSW50ZXJtZWRpYXRlOjpn
cm93QWdncmVnYXRlKToKKysgICAgICAgIChUSW50ZXJtZWRpYXRlOjptYWtlQWdncmVnYXRlKToK
KysgICAgICAgIChUSW50ZXJtZWRpYXRlOjphZGRTZWxlY3Rpb24pOgorKyAgICAgICAgKFRJbnRl
cm1lZGlhdGU6OmFkZENvbW1hKToKKysgICAgICAgIChUSW50ZXJtZWRpYXRlOjphZGRDb25zdGFu
dFVuaW9uKToKKysgICAgICAgIChUSW50ZXJtZWRpYXRlOjphZGRTd2l6emxlKToKKysgICAgICAg
IChUSW50ZXJtZWRpYXRlOjphZGRMb29wKToKKysgICAgICAgIChUSW50ZXJtZWRpYXRlOjphZGRC
cmFuY2gpOgorKyAgICAgICAgKFRJbnRlcm1VbmFyeTo6cHJvbW90ZSk6CisrICAgICAgICAoVElu
dGVybUJpbmFyeTo6cHJvbW90ZSk6CisrICAgICAgICAoQ29tcGFyZVN0cnVjdCk6CisrICAgICAg
ICAoQ29tcGFyZVN0cnVjdHVyZSk6CisrICAgICAgICAoVEludGVybUNvbnN0YW50VW5pb246OmZv
bGQpOgorKyAgICAgICAgKFRJbnRlcm1lZGlhdGU6OnByb21vdGVDb25zdGFudFVuaW9uKToKKysg
ICAgICAgICogc3JjL2NvbXBpbGVyL091dHB1dEdMU0wuY3BwOgorKyAgICAgICAgKFRPdXRwdXRH
TFNMOjp2aXNpdFN5bWJvbCk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9PdXRwdXRHTFNMLmg6
CisrICAgICAgICAqIHNyYy9jb21waWxlci9PdXRwdXRHTFNMQmFzZS5jcHA6CisrICAgICAgICAo
VE91dHB1dEdMU0xCYXNlOjp3cml0ZVZhcmlhYmxlVHlwZSk6CisrICAgICAgICAoVE91dHB1dEdM
U0xCYXNlOjp3cml0ZUNvbnN0YW50VW5pb24pOgorKyAgICAgICAgKFRPdXRwdXRHTFNMQmFzZTo6
dmlzaXRCaW5hcnkpOgorKyAgICAgICAgKFRPdXRwdXRHTFNMQmFzZTo6dmlzaXRBZ2dyZWdhdGUp
OgorKyAgICAgICAgKFRPdXRwdXRHTFNMQmFzZTo6Z2V0VHlwZU5hbWUpOgorKyAgICAgICAgKFRP
dXRwdXRHTFNMQmFzZTo6aGFzaEZ1bmN0aW9uTmFtZSk6CisrICAgICAgICAoVE91dHB1dEdMU0xC
YXNlOjpzdHJ1Y3REZWNsYXJlZCk6CisrICAgICAgICAoVE91dHB1dEdMU0xCYXNlOjpkZWNsYXJl
U3RydWN0KToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL091dHB1dEdMU0xCYXNlLmg6CisrICAg
ICAgICAqIHNyYy9jb21waWxlci9PdXRwdXRITFNMLmNwcDoKKysgICAgICAgIChzaDo6T3V0cHV0
SExTTDo6T3V0cHV0SExTTCk6CisrICAgICAgICAoc2g6Ok91dHB1dEhMU0w6OmhlYWRlcik6Cisr
ICAgICAgICAoc2g6Ok91dHB1dEhMU0w6OnZpc2l0U3ltYm9sKToKKysgICAgICAgIChzaDo6T3V0
cHV0SExTTDo6dmlzaXRCaW5hcnkpOgorKyAgICAgICAgKHNoOjpPdXRwdXRITFNMOjp2aXNpdEFn
Z3JlZ2F0ZSk6CisrICAgICAgICAoc2g6Ok91dHB1dEhMU0w6OnZpc2l0U2VsZWN0aW9uKToKKysg
ICAgICAgIChzaDo6T3V0cHV0SExTTDo6dmlzaXRMb29wKToKKysgICAgICAgIChzaDo6T3V0cHV0
SExTTDo6aGFuZGxlRXhjZXNzaXZlTG9vcCk6CisrICAgICAgICAoc2g6Ok91dHB1dEhMU0w6OnR5
cGVTdHJpbmcpOgorKyAgICAgICAgKHNoOjpPdXRwdXRITFNMOjppbml0aWFsaXplcik6CisrICAg
ICAgICAoc2g6Ok91dHB1dEhMU0w6OmFkZENvbnN0cnVjdG9yKToKKysgICAgICAgIChzaDo6T3V0
cHV0SExTTDo6d3JpdGVDb25zdGFudFVuaW9uKToKKysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6
ZGVjb3JhdGVGaWVsZCk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9PdXRwdXRITFNMLmg6Cisr
ICAgICAgICAqIHNyYy9jb21waWxlci9QYXJzZUhlbHBlci5jcHA6CisrICAgICAgICAoVFBhcnNl
Q29udGV4dDo6cGFyc2VWZWN0b3JGaWVsZHMpOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OnBh
cnNlTWF0cml4RmllbGRzKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0OjplcnJvcik6CisrICAg
ICAgICAoVFBhcnNlQ29udGV4dDo6d2FybmluZyk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6
YXNzaWduRXJyb3IpOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OnVuYXJ5T3BFcnJvcik6Cisr
ICAgICAgICAoVFBhcnNlQ29udGV4dDo6YmluYXJ5T3BFcnJvcik6CisrICAgICAgICAoVFBhcnNl
Q29udGV4dDo6cHJlY2lzaW9uRXJyb3JDaGVjayk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6
bFZhbHVlRXJyb3JDaGVjayk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6Z2xvYmFsRXJyb3JD
aGVjayk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6cmVzZXJ2ZWRFcnJvckNoZWNrKToKKysg
ICAgICAgIChUUGFyc2VDb250ZXh0Ojpjb25zdHJ1Y3RvckVycm9yQ2hlY2spOgorKyAgICAgICAg
KFRQYXJzZUNvbnRleHQ6OnZvaWRFcnJvckNoZWNrKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0
Ojpib29sRXJyb3JDaGVjayk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6c2FtcGxlckVycm9y
Q2hlY2spOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OnN0cnVjdFF1YWxpZmllckVycm9yQ2hl
Y2spOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OnBhcmFtZXRlclNhbXBsZXJFcnJvckNoZWNr
KToKKysgICAgICAgIChUUGFyc2VDb250ZXh0Ojpjb250YWluc1NhbXBsZXIpOgorKyAgICAgICAg
KFRQYXJzZUNvbnRleHQ6OmFycmF5U2l6ZUVycm9yQ2hlY2spOgorKyAgICAgICAgKFRQYXJzZUNv
bnRleHQ6OmFycmF5UXVhbGlmaWVyRXJyb3JDaGVjayk6CisrICAgICAgICAoVFBhcnNlQ29udGV4
dDo6YXJyYXlUeXBlRXJyb3JDaGVjayk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6YXJyYXlF
cnJvckNoZWNrKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0Ojpub25Jbml0Q29uc3RFcnJvckNo
ZWNrKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0Ojpub25Jbml0RXJyb3JDaGVjayk6CisrICAg
ICAgICAoVFBhcnNlQ29udGV4dDo6cGFyYW1FcnJvckNoZWNrKToKKysgICAgICAgIChUUGFyc2VD
b250ZXh0OjpleHRlbnNpb25FcnJvckNoZWNrKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0Ojpm
aW5kRnVuY3Rpb24pOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OmlzVmFyaWFibGVCdWlsdElu
KToKKysgICAgICAgIChUUGFyc2VDb250ZXh0OjpleGVjdXRlSW5pdGlhbGl6ZXIpOgorKyAgICAg
ICAgKFRQYXJzZUNvbnRleHQ6OmFkZENvbnN0cnVjdG9yKToKKysgICAgICAgIChUUGFyc2VDb250
ZXh0Ojpjb25zdHJ1Y3RCdWlsdEluKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0Ojpjb25zdHJ1
Y3RTdHJ1Y3QpOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OmFkZENvbnN0VmVjdG9yTm9kZSk6
CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6YWRkQ29uc3RNYXRyaXhOb2RlKToKKysgICAgICAg
IChUUGFyc2VDb250ZXh0OjphZGRDb25zdEFycmF5Tm9kZSk6CisrICAgICAgICAoVFBhcnNlQ29u
dGV4dDo6YWRkQ29uc3RTdHJ1Y3QpOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OmVudGVyU3Ry
dWN0RGVjbGFyYXRpb24pOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OnN0cnVjdE5lc3RpbmdF
cnJvckNoZWNrKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL1BhcnNlSGVscGVyLmg6CisrICAg
ICAgICAoVFBhcnNlQ29udGV4dDo6VFBhcnNlQ29udGV4dCk6CisrICAgICAgICAoVFBhcnNlQ29u
dGV4dDo6cHJhZ21hKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL1Bvb2xBbGxvYy5jcHA6Cisr
ICAgICAgICAoVFBvb2xBbGxvY2F0b3I6OmFsbG9jYXRlKToKKysgICAgICAgICogc3JjL2NvbXBp
bGVyL1NoSGFuZGxlLmg6CisrICAgICAgICAqIHNyYy9jb21waWxlci9TaGFkZXJMYW5nLmNwcDoK
KysgICAgICAgIChTaEluaXRCdWlsdEluUmVzb3VyY2VzKToKKysgICAgICAgICogc3JjL2NvbXBp
bGVyL1N5bWJvbFRhYmxlLmNwcDoKKysgICAgICAgIChUVHlwZTo6VFR5cGUpOgorKyAgICAgICAg
KFRUeXBlOjpidWlsZE1hbmdsZWROYW1lKToKKysgICAgICAgIChUVHlwZTo6Z2V0T2JqZWN0U2l6
ZSk6CisrICAgICAgICAoVFN0cnVjdHVyZTo6Y29udGFpbnNBcnJheXMpOgorKyAgICAgICAgKFRT
dHJ1Y3R1cmU6OmJ1aWxkTWFuZ2xlZE5hbWUpOgorKyAgICAgICAgKFRTdHJ1Y3R1cmU6OmNhbGN1
bGF0ZU9iamVjdFNpemUpOgorKyAgICAgICAgKFRTdHJ1Y3R1cmU6OmNhbGN1bGF0ZURlZXBlc3RO
ZXN0aW5nKToKKysgICAgICAgIChUU3ltYm9sVGFibGVMZXZlbDo6cmVsYXRlVG9FeHRlbnNpb24p
OgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvU3ltYm9sVGFibGUuaDoKKysgICAgICAgIChUU3lt
Ym9sOjpyZWxhdGVUb0V4dGVuc2lvbik6CisrICAgICAgICAoVFN5bWJvbDo6Z2V0RXh0ZW5zaW9u
KToKKysgICAgICAgIChUVmFyaWFibGU6OlRWYXJpYWJsZSk6CisrICAgICAgICAoVFZhcmlhYmxl
OjpzZXRRdWFsaWZpZXIpOgorKyAgICAgICAgKFRWYXJpYWJsZTo6c2hhcmVDb25zdFBvaW50ZXIp
OgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvVHlwZXMuaDogVXBkYXRlZCBhbmQgY2hhbmdlZCBl
bnVtIGJpdCBmaWVsZHMgdG8gZW51bXMgdG8gZml4IGNvbXBpbGluZyB3aXRoIEdDQy4KKysgICAg
ICAgIChURmllbGQ6OlRGaWVsZCk6CisrICAgICAgICAoVEZpZWxkOjp0eXBlKToKKysgICAgICAg
IChURmllbGQ6Om5hbWUpOgorKyAgICAgICAgKE5ld1Bvb2xURmllbGRMaXN0KToKKysgICAgICAg
IChUU3RydWN0dXJlOjpUU3RydWN0dXJlKToKKysgICAgICAgIChUU3RydWN0dXJlOjpuYW1lKToK
KysgICAgICAgIChUU3RydWN0dXJlOjpmaWVsZHMpOgorKyAgICAgICAgKFRTdHJ1Y3R1cmU6Om1h
bmdsZWROYW1lKToKKysgICAgICAgIChUU3RydWN0dXJlOjpvYmplY3RTaXplKToKKysgICAgICAg
IChUU3RydWN0dXJlOjpkZWVwZXN0TmVzdGluZyk6CisrICAgICAgICAoVFR5cGU6OlRUeXBlKToK
KysgICAgICAgIChUVHlwZTo6Y2xlYXJBcnJheW5lc3MpOgorKyAgICAgICAgKFRUeXBlOjpnZXRT
dHJ1Y3QpOgorKyAgICAgICAgKFRUeXBlOjpzZXRTdHJ1Y3QpOgorKyAgICAgICAgKFRUeXBlOjpn
ZXRNYW5nbGVkTmFtZSk6CisrICAgICAgICAoVFR5cGU6OmdldERlZXBlc3RTdHJ1Y3ROZXN0aW5n
KToKKysgICAgICAgIChUVHlwZTo6aXNTdHJ1Y3R1cmVDb250YWluaW5nQXJyYXlzKToKKysgICAg
ICAgIChUUHVibGljVHlwZTo6c2V0QmFzaWMpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvVmFy
aWFibGVJbmZvLmNwcDoKKysgICAgICAgIChnZXRVc2VyRGVmaW5lZFZhcmlhYmxlSW5mbyk6Cisr
ICAgICAgICAqIHNyYy9jb21waWxlci9idWlsdGluX3N5bWJvbF90YWJsZS5jcHA6IEFkZGVkLgor
KyAgICAgICAgKGJ1aWx0aW4xKToKKysgICAgICAgIChidWlsdGluMik6CisrICAgICAgICAoYnVp
bHRpbjMpOgorKyAgICAgICAgKEluc2VydEJ1aWx0SW5GdW5jdGlvbnNDb21tb24pOgorKyAgICAg
ICAgKEluc2VydEJ1aWx0SW5GdW5jdGlvbnNWZXJ0ZXgpOgorKyAgICAgICAgKiBzcmMvY29tcGls
ZXIvYnVpbHRpbl9zeW1ib2xfdGFibGUuaDogQWRkZWQuCisrICAgICAgICAqIHNyYy9jb21waWxl
ci9nbHNsYW5nLmw6CisrICAgICAgICAqIHNyYy9jb21waWxlci9nbHNsYW5nLnk6CisrICAgICAg
ICAqIHNyYy9jb21waWxlci9nbHNsYW5nX2xleC5jcHA6CisrICAgICAgICAoeXlfZ2V0X3ByZXZp
b3VzX3N0YXRlKToKKysgICAgICAgICh5eV90cnlfTlVMX3RyYW5zKToKKysgICAgICAgICh5eWdl
dF9sbG9jKToKKysgICAgICAgICh5eXNldF9sbG9jKToKKysgICAgICAgIChzdHJpbmdfaW5wdXQp
OgorKyAgICAgICAgKGNoZWNrX3R5cGUpOgorKyAgICAgICAgKHJlc2VydmVkX3dvcmQpOgorKyAg
ICAgICAgKGdsc2xhbmdfc2Nhbik6CisrICAgICAgICAqIHNyYy9jb21waWxlci9nbHNsYW5nX3Rh
Yi5jcHA6CisrICAgICAgICAoeXlzeW50YXhfZXJyb3IpOgorKyAgICAgICAgKHl5ZXJyb3IpOgor
KyAgICAgICAgKGdsc2xhbmdfcGFyc2UpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvZ2xzbGFu
Z190YWIuaDogUmVhZGRlZCBZWUxUWVBFIGRlZmluaXRpb24gYWZ0ZXIgQmlzb24gcmVtb3ZlZCBp
dC4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL2ludGVybU91dC5jcHA6CisrICAgICAgICAoVE91
dHB1dFRyYXZlcnNlcjo6dmlzaXRVbmFyeSk6CisrICAgICAgICAoVE91dHB1dFRyYXZlcnNlcjo6
dmlzaXRBZ2dyZWdhdGUpOgorKyAgICAgICAgKFRPdXRwdXRUcmF2ZXJzZXI6OnZpc2l0Q29uc3Rh
bnRVbmlvbik6CisrICAgICAgICAqIHNyYy9jb21waWxlci9pbnRlcm1lZGlhdGUuaDoKKysgICAg
ICAgIChUSW50ZXJtTm9kZTo6VEludGVybU5vZGUpOgorKyAgICAgICAgKFRJbnRlcm1Ob2RlOjp+
VEludGVybU5vZGUpOgorKyAgICAgICAgKFRJbnRlcm1Ob2RlOjpnZXRMaW5lKToKKysgICAgICAg
IChUSW50ZXJtTm9kZTo6c2V0TGluZSk6CisrICAgICAgICAoVEludGVybU5vZGU6OmdldEFzTG9v
cE5vZGUpOgorKyAgICAgICAgKFRJbnRlcm1Db25zdGFudFVuaW9uOjpnZXRJQ29uc3QpOgorKyAg
ICAgICAgKFRJbnRlcm1Db25zdGFudFVuaW9uOjpnZXRGQ29uc3QpOgorKyAgICAgICAgKFRJbnRl
cm1Db25zdGFudFVuaW9uOjpnZXRCQ29uc3QpOgorKyAgICAgICAgKFRJbnRlcm1BZ2dyZWdhdGU6
OlRJbnRlcm1BZ2dyZWdhdGUpOgorKyAgICAgICAgKFRJbnRlcm1UcmF2ZXJzZXI6OlRJbnRlcm1U
cmF2ZXJzZXIpOgorKyAgICAgICAgKFRJbnRlcm1UcmF2ZXJzZXI6OmdldE1heERlcHRoKToKKysg
ICAgICAgIChUSW50ZXJtVHJhdmVyc2VyOjppbmNyZW1lbnREZXB0aCk6CisrICAgICAgICAqIHNy
Yy9jb21waWxlci9sb2NhbGludGVybWVkaWF0ZS5oOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIv
cGFyc2VDb25zdC5jcHA6CisrICAgICAgICAoVENvbnN0VHJhdmVyc2VyOjp2aXNpdFN5bWJvbCk6
CisrICAgICAgICAoVENvbnN0VHJhdmVyc2VyOjp2aXNpdEJpbmFyeSk6CisrICAgICAgICAoVENv
bnN0VHJhdmVyc2VyOjp2aXNpdFVuYXJ5KToKKysgICAgICAgIChUQ29uc3RUcmF2ZXJzZXI6OnZp
c2l0QWdncmVnYXRlKToKKysgICAgICAgIChUQ29uc3RUcmF2ZXJzZXI6OnZpc2l0U2VsZWN0aW9u
KToKKysgICAgICAgIChUQ29uc3RUcmF2ZXJzZXI6OnZpc2l0Q29uc3RhbnRVbmlvbik6CisrICAg
ICAgICAoVENvbnN0VHJhdmVyc2VyOjp2aXNpdExvb3ApOgorKyAgICAgICAgKFRDb25zdFRyYXZl
cnNlcjo6dmlzaXRCcmFuY2gpOgorKyAgICAgICAgKFRJbnRlcm1lZGlhdGU6OnBhcnNlQ29uc3RU
cmVlKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9FeHByZXNzaW9uUGFy
c2VyLmNwcDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RpbWluZy9SZXN0cmljdFZlcnRleFNo
YWRlclRpbWluZy5jcHA6CisrICAgICAgICAoUmVzdHJpY3RWZXJ0ZXhTaGFkZXJUaW1pbmc6OnZp
c2l0U3ltYm9sKToKKysgICAgICAgICAgICBVcGRhdGVkIEFOR0xFIHRvIHIyNDI2IGFuZCByYW4g
Qmlzb24uCisrCisrMjAxMy0wNi0xNyAgRGFyaW4gQWRsZXIgIDxkYXJpbkBhcHBsZS5jb20+Cisr
CisrICAgICAgICBTb3J0IGFsbCB0aGUgWGNvZGUgcHJvamVjdCBmaWxlcworKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTExNzY5NgorKworKyAgICAgICAg
UmV2aWV3ZWQgYnkgQW5kZXJzIENhcmxzc29uLgorKworKyAgICAgICAgKiBBTkdMRS54Y29kZXBy
b2ovcHJvamVjdC5wYnhwcm9qOiBSYW4gdGhlIHNvcnQtWGNvZGUtcHJvamVjdC1maWxlIHNjcmlw
dC4KKysKKysyMDEzLTA0LTE4ICBLcnp5c3p0b2YgV29sYW5za2kgIDxrLndvbGFuc2tpQHNhbXN1
bmcuY29tPgorKworKyAgICAgICAgQWRkIGNoZWNraW5nIHdoZXRoZXIgdGhlIGNvbXBpbGVyIGFs
bG93cyB0byB1c2UgI3ByYWdtYSBkaXJlY3RpdmUuCisrICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTE0NzQwCisrCisrICAgICAgICBSZXZpZXdlZCBieSBB
bmRyZWFzIEtsaW5nLgorKworKyAgICAgICAgU29tZSBjb21waWxlcnMgbWF5IGNvbXBsYWluIHRo
YXQgI3ByYWdtYSB3YXJuaW5nIGlzIGFuIHVuZGVmaW5lZCBtYWNyby4KKysKKysgICAgICAgICog
c3JjL2NvbXBpbGVyL2RlcGdyYXBoL0RlcGVuZGVuY3lHcmFwaC5jcHA6CisrCisrMjAxMy0wNC0x
MSAgQW5kcmFzIEJlY3NpICA8YW5kcmFzLmJlY3NpQGRpZ2lhLmNvbT4KKysKKysgICAgICAgIFtR
dF1bTWFjXSBMaW5raW5nIGZhaWxzIHdpdGggUXQgNS4xCisrICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTE0NDM1CisrCisrICAgICAgICBSZXZpZXdlZCBi
eSBUb3IgQXJuZSBWZXN0YsO4LgorKworKyAgICAgICAgUXQgNS4xIGVuYWJsZXMgQysrMTEgYnkg
ZGVmYXVsdCB3aGVuIHVzaW5nIGNsYW5nIG9uIE1hYworKyAgICAgICAgYW5kIGxpbmtzIGFnYWlu
c3QgdGhlIGxpYmMrKyBzdGFuZGFyZCBsaWJyYXJ5LiBBcyBhIHJlc3VsdAorKyAgICAgICAgYnVp
bGRpbmcgdGhlIFF0V2ViS2l0IHNoYXJlZCBsaWJyYXJ5IGZhaWxzIHdoZW4gbGlua2luZworKyAg
ICAgICAgYWdhaW5zIHRoZSBBTkdMRSBpbnRlcm1lZGlhdGUgc3RhdGljIGxpYnJhcnkgYmVjYXVz
ZSBsaWJjKysKKysgICAgICAgIG1pc3NlcyBzb21lIHN5bWJvbHMgbmVlZGVkIGJ5IEFOR0xFLgor
KyAgICAgICAgRGlzYWJsZSBDKysxMSBmb3IgdGhlIEFOR0xFIGludGVybWVkaWF0ZSBsaWJyYXJ5
IHRvIGZpeCB0aGUgYnVpbGQuCisrCisrICAgICAgICAqIEFOR0xFLnByaToKKysKKysyMDEzLTA0
LTEwICBCZW5qYW1pbiBQb3VsYWluICA8YnBvdWxhaW5AYXBwbGUuY29tPgorKworKyAgICAgICAg
TWFzcyByZW1vdmUgYWxsIHRoZSBlbXB0eSBkaXJlY3RvcmllcworKworKyAgICAgICAgUnViYmVy
c3RhbXBlZCBieSBSeW9zdWtlIE5pd2EuCisrCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvZ2Vv
bWV0cnk6IFJlbW92ZWQuCisrCisrMjAxMy0wNC0wOCAgUnlvc3VrZSBOaXdhICA8cm5pd2FAd2Vi
a2l0Lm9yZz4KKysKKysgICAgICAgIFJlbW92ZSBBTkdMRS5neXAKKysgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTQyNDUKKysKKysgICAgICAgIFVucmV2
aWV3ZWQuIEp1c3QgcmVtb3ZpbmcgYW4gZW1wdHkgZGlyZWN0b3J5LgorKworKyAgICAgICAgKiBB
TkdMRS5neXA6IFJlbW92ZWQuCisrCisrMjAxMy0wNC0wNCAgTWFydGluIFJvYmluc29uICA8bXJv
Ymluc29uQGlnYWxpYS5jb20+CisrCisrICAgICAgICBbR1RLXSBSZW1vdmUgdGhlIGd5cCBidWls
ZAorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTExMzk0
MgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgR3VzdGF2byBOb3JvbmhhIFNpbHZhLgorKworKyAg
ICAgICAgKiBBTkdMRS5neXAvQU5HTEUuZ3lwOiBSZW1vdmVkLgorKyAgICAgICAgKiBBTkdMRS5n
eXBpOiBSZW1vdmVkLgorKworKzIwMTMtMDMtMjAgIFphbiBEb2JlcnNlayAgPHpkb2JlcnNla0Bp
Z2FsaWEuY29tPgorKworKyAgICAgICAgW0dUS10gQnVpbGQgQU5HTEUgc291cmNlcyBpbnRvIGEg
c2VwYXJhdGUgbGlicmFyeSBmcm9tIGxpYldlYkNvcmUubGEKKysgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTI3NzgKKysKKysgICAgICAgIFJldmlld2Vk
IGJ5IE1hcnRpbiBSb2JpbnNvbi4KKysKKysgICAgICAgICogR05VbWFrZWZpbGUuYW06IEFkZGVk
LCBzZXRzIHVwIHRoZSBsaWJBTkdMRS5sYSBsaWJyYXJ5LgorKworKzIwMTMtMDMtMDUgIEtlbm5l
dGggUnVzc2VsbCAgPGtickBnb29nbGUuY29tPgorKworKyAgICAgICAgVXBncmFkZSBBTkdMRSB0
byByMTk4NworKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTExMTM4MQorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGVhbiBKYWNrc29uLgorKworKyAgICAg
ICAgKiBpbmNsdWRlL0dMU0xBTkcvU2hhZGVyTGFuZy5oOgorKyAgICAgICAgKiBzcmMvY29tbW9u
L3ZlcnNpb24uaDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL0NvbXBpbGVyLmNwcDoKKysgICAg
ICAgIChUQ29tcGlsZXI6OlRDb21waWxlcik6CisrICAgICAgICAoVENvbXBpbGVyOjpJbml0KToK
KysgICAgICAgIChUQ29tcGlsZXI6OmNvbXBpbGUpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIv
UGFyc2VIZWxwZXIuaDoKKysgICAgICAgIChUUGFyc2VDb250ZXh0KToKKysgICAgICAgICogc3Jj
L2NvbXBpbGVyL1NoSGFuZGxlLmg6CisrICAgICAgICAoVENvbXBpbGVyKToKKysgICAgICAgICog
c3JjL2NvbXBpbGVyL1NoYWRlckxhbmcuY3BwOgorKyAgICAgICAgKFNoSW5pdEJ1aWx0SW5SZXNv
dXJjZXMpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvVW5mb2xkU2hvcnRDaXJjdWl0LmNwcDoK
KysgICAgICAgIChzaDo6VW5mb2xkU2hvcnRDaXJjdWl0Ojp2aXNpdFNlbGVjdGlvbik6CisrICAg
ICAgICAqIHNyYy9jb21waWxlci9nbHNsYW5nLmw6CisrICAgICAgICAqIHNyYy9jb21waWxlci9n
bHNsYW5nLnk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9nbHNsYW5nX2xleC5jcHA6CisrICAg
ICAgICAoZ2xzbGFuZ19zY2FuKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL2dsc2xhbmdfdGFi
LmNwcDoKKysgICAgICAgICAgICAgVXBkYXRlZCBBTkdMRSB0byByMTk4Ny4KKysKKysyMDEzLTAz
LTAxICBNYXJ0aW4gUm9iaW5zb24gIDxtcm9iaW5zb25AaWdhbGlhLmNvbT4KKysKKysgICAgICAg
IFtHVEtdIEFkZCBBTkdMRSB0byB0aGUgR1RLKyBneXAgYnVpbGQKKysgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTExMjgKKysKKysgICAgICAgIFJldmll
d2VkIGJ5IERpcmsgUHJhbmtlLgorKworKyAgICAgICAgQWRkIGZpbGVzIHRoYXQgYnVpbGQgYW4g
QU5HTEUgc3RhdGljIGxpYnJhcnkgZm9yIEdUSysgdXNpbmcgZ3lwLgorKworKyAgICAgICAgKiBB
TkdMRS5neXAvQU5HTEUuZ3lwOiBBZGRlZC4KKysgICAgICAgICogQU5HTEUuZ3lwaTogQWRkZWQu
CisrCisrMjAxMy0wMi0yMiAgS2VubmV0aCBSdXNzZWxsICA8a2JyQGdvb2dsZS5jb20+CisrCisr
ICAgICAgICBNYWMgT1MgYnVpbGQgYnJva2VuIGJ5IG5ldyBFeHByZXNzaW9uUGFyc2VyLmNwcAor
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTExMDYyOQor
KworKyAgICAgICAgVW5yZXZpZXdlZCBidWlsZCBmaXguIFJlZ2VuZXJhdGVkIEV4cHJlc3Npb25Q
YXJzZXIgd2l0aCBCaXNvbiAyLjMuCisrCisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9j
ZXNzb3IvRXhwcmVzc2lvblBhcnNlci5jcHA6CisrCisrMjAxMy0wMi0yMSAgWmhlbnlhbyBNbyAg
PHptb0Bnb29nbGUuY29tPgorKworKyAgICAgICAgUm9sbCBBTkdMRSB0byByMTgzMworKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTExMDUxMworKworKyAg
ICAgICAgUmV2aWV3ZWQgYnkgS2VubmV0aCBSdXNzZWxsLgorKworKyAgICAgICAgVXBzdHJlYW0g
QU5HTEUgcjE4MzMgaW5jbHVkZXMgd2Via2l0IHNpZGUgbG9jYWwgZml4ZXMKKysgICAgICAgIDEp
IHIxMzk3NTggYnVpbGQgZml4IGZvciAtV3Nob3J0ZW4tNjQtdG8tMzIKKysgICAgICAgIDIpIHIx
Mzk2NjUgYnVpbGQgZml4IGZvciB1bmluaXRpYWxpemVkIHZhcmlhYmxlcworKworKyAgICAgICAg
QWZ0ZXIgdGhpcyByb2xsLCBXZWJLaXQgc2lkZSBBTkdMRSBpcyB0aGUgc2FtZSBhcyB1cHN0cmVh
bSBBTkdMRSByMTgzMywgZXhjZXB0OgorKyAgICAgICAgMSkgaW5jbHVkZS9HTFNMQU5HL1NoYWRl
ckxhbmcuaCwgd2hlcmUgIktIUiIgaXMgcmVtb3ZlZCBmcm9tIGluY2x1ZGUgcGF0aC4KKysKKysg
ICAgICAgIFdpdGggdGhpcyByb2xsLCB3ZSBoYXZlIEVYVF9kcmF3X2J1ZmZlcnMgc3VwcG9ydC4K
KysgICAgICAgIAorKyAgICAgICAgKiBBTkdMRS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgor
KyAgICAgICAgKiBUYXJnZXQucHJpOgorKyAgICAgICAgKiBpbmNsdWRlL0dMU0xBTkcvU2hhZGVy
TGFuZy5oOgorKyAgICAgICAgKiBzcmMvY29tbW9uL2RlYnVnLmNwcDoKKysgICAgICAgICogc3Jj
L2NvbW1vbi9zeXN0ZW0uaDogQWRkZWQuCisrICAgICAgICAqIHNyYy9jb21tb24vdmVyc2lvbi5o
OgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvQXJyYXlCb3VuZHNDbGFtcGVyLmNwcDogUmVtb3Zl
ZC4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL0FycmF5Qm91bmRzQ2xhbXBlci5oOiBSZW1vdmVk
LgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvQ29tcGlsZXIuY3BwOgorKyAgICAgICAgKFRDb21w
aWxlcjo6VENvbXBpbGVyKToKKysgICAgICAgIChUQ29tcGlsZXI6OkluaXQpOgorKyAgICAgICAg
KFRDb21waWxlcjo6Y29tcGlsZSk6CisrICAgICAgICAoVENvbXBpbGVyOjpnZXRBcnJheUJvdW5k
c0NsYW1wZXIpOgorKyAgICAgICAgKFRDb21waWxlcjo6Z2V0QXJyYXlJbmRleENsYW1waW5nU3Ry
YXRlZ3kpOgorKyAgICAgICAgKFRDb21waWxlcjo6Z2V0QnVpbHRJbkZ1bmN0aW9uRW11bGF0b3Ip
OgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvRGV0ZWN0RGlzY29udGludWl0eS5jcHA6CisrICAg
ICAgICAoc2g6OkRldGVjdExvb3BEaXNjb250aW51aXR5Ojp0cmF2ZXJzZSk6CisrICAgICAgICAo
c2g6OkRldGVjdExvb3BEaXNjb250aW51aXR5Ojp2aXNpdExvb3ApOgorKyAgICAgICAgKHNoKToK
KysgICAgICAgIChzaDo6RGV0ZWN0TG9vcERpc2NvbnRpbnVpdHk6OnZpc2l0QnJhbmNoKToKKysg
ICAgICAgICogc3JjL2NvbXBpbGVyL0RldGVjdERpc2NvbnRpbnVpdHkuaDoKKysgICAgICAgIChE
ZXRlY3RMb29wRGlzY29udGludWl0eSk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9Jbml0aWFs
aXplLmNwcDoKKysgICAgICAgIChJbml0RXh0ZW5zaW9uQmVoYXZpb3IpOgorKyAgICAgICAgKiBz
cmMvY29tcGlsZXIvSW50ZXJtZWRpYXRlLmNwcDoKKysgICAgICAgIChUSW50ZXJtQ29uc3RhbnRV
bmlvbjo6Zm9sZCk6CisrICAgICAgICAoVEludGVybVRyYXZlcnNlcjo6aGFzaCk6CisrICAgICAg
ICAqIHNyYy9jb21waWxlci9NYXBMb25nVmFyaWFibGVOYW1lcy5jcHA6CisrICAgICAgICAoTG9u
Z05hbWVNYXA6OlNpemUpOgorKyAgICAgICAgKE1hcExvbmdWYXJpYWJsZU5hbWVzOjptYXBHbG9i
YWxMb25nTmFtZSk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9NYXBMb25nVmFyaWFibGVOYW1l
cy5oOgorKyAgICAgICAgKExvbmdOYW1lTWFwKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL091
dHB1dEVTU0wuY3BwOgorKyAgICAgICAgKFRPdXRwdXRFU1NMOjpUT3V0cHV0RVNTTCk6CisrICAg
ICAgICAqIHNyYy9jb21waWxlci9PdXRwdXRFU1NMLmg6CisrICAgICAgICAoVE91dHB1dEVTU0wp
OgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvT3V0cHV0R0xTTC5jcHA6CisrICAgICAgICAoVE91
dHB1dEdMU0w6OlRPdXRwdXRHTFNMKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL091dHB1dEdM
U0wuaDoKKysgICAgICAgIChUT3V0cHV0R0xTTCk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9P
dXRwdXRHTFNMQmFzZS5jcHA6CisrICAgICAgICAoVE91dHB1dEdMU0xCYXNlOjpUT3V0cHV0R0xT
TEJhc2UpOgorKyAgICAgICAgKFRPdXRwdXRHTFNMQmFzZTo6d3JpdGVDb25zdGFudFVuaW9uKToK
KysgICAgICAgIChUT3V0cHV0R0xTTEJhc2U6OnZpc2l0QmluYXJ5KToKKysgICAgICAgICogc3Jj
L2NvbXBpbGVyL091dHB1dEdMU0xCYXNlLmg6CisrICAgICAgICAoVE91dHB1dEdMU0xCYXNlKToK
KysgICAgICAgICogc3JjL2NvbXBpbGVyL091dHB1dEhMU0wuY3BwOgorKyAgICAgICAgKHNoOjpP
dXRwdXRITFNMOjpvdXRwdXQpOgorKyAgICAgICAgKHNoOjpPdXRwdXRITFNMOjp2aXNpdExvb3Ap
OgorKyAgICAgICAgKHNoOjpPdXRwdXRITFNMOjp3cml0ZUNvbnN0YW50VW5pb24pOgorKyAgICAg
ICAgKiBzcmMvY29tcGlsZXIvUGFyc2VIZWxwZXIuY3BwOgorKyAgICAgICAgKFRQYXJzZUNvbnRl
eHQ6OmNvbnN0cnVjdG9yRXJyb3JDaGVjayk6CisrICAgICAgICAoUGFQYXJzZVN0cmluZ3MpOgor
KyAgICAgICAgKiBzcmMvY29tcGlsZXIvUGFyc2VIZWxwZXIuaDoKKysgICAgICAgICogc3JjL2Nv
bXBpbGVyL1NoSGFuZGxlLmg6CisrICAgICAgICAoVENvbXBpbGVyKToKKysgICAgICAgICogc3Jj
L2NvbXBpbGVyL1NoYWRlckxhbmcuY3BwOgorKyAgICAgICAgKGNoZWNrQWN0aXZlVW5pZm9ybUFu
ZEF0dHJpYk1heExlbmd0aHMpOgorKyAgICAgICAgKGNoZWNrTWFwcGVkTmFtZU1heExlbmd0aCk6
CisrICAgICAgICAoZ2V0VmFyaWFibGVJbmZvKToKKysgICAgICAgIChTaEluaXRCdWlsdEluUmVz
b3VyY2VzKToKKysgICAgICAgIChTaENvbXBpbGUpOgorKyAgICAgICAgKFNoR2V0SW5mbyk6Cisr
ICAgICAgICAoU2hHZXRBY3RpdmVBdHRyaWIpOgorKyAgICAgICAgKFNoR2V0QWN0aXZlVW5pZm9y
bSk6CisrICAgICAgICAoU2hHZXROYW1lSGFzaGluZ0VudHJ5KToKKysgICAgICAgICogc3JjL2Nv
bXBpbGVyL1N5bWJvbFRhYmxlLmg6CisrICAgICAgICAoVEZ1bmN0aW9uOjpnZXRQYXJhbUNvdW50
KToKKysgICAgICAgIChURnVuY3Rpb246OmdldFBhcmFtKToKKysgICAgICAgIChUU3ltYm9sVGFi
bGU6OnNldERlZmF1bHRQcmVjaXNpb24pOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvVHJhbnNs
YXRvckVTU0wuY3BwOgorKyAgICAgICAgKFRyYW5zbGF0b3JFU1NMOjp0cmFuc2xhdGUpOgorKyAg
ICAgICAgKiBzcmMvY29tcGlsZXIvVHJhbnNsYXRvckdMU0wuY3BwOgorKyAgICAgICAgKFRyYW5z
bGF0b3JHTFNMOjp0cmFuc2xhdGUpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvVmFsaWRhdGVM
aW1pdGF0aW9ucy5jcHA6CisrICAgICAgICAoVmFsaWRhdGVMaW1pdGF0aW9uczo6dmFsaWRhdGVG
dW5jdGlvbkNhbGwpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvVmFyaWFibGVQYWNrZXIuY3Bw
OgorKyAgICAgICAgKFZhcmlhYmxlUGFja2VyOjpHZXROdW1Sb3dzKToKKysgICAgICAgICogc3Jj
L2NvbXBpbGVyL2dsc2xhbmcuaDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL2dsc2xhbmcubDoK
KysgICAgICAgICogc3JjL2NvbXBpbGVyL2dsc2xhbmcueToKKysgICAgICAgICogc3JjL2NvbXBp
bGVyL2dsc2xhbmdfbGV4LmNwcDoKKysgICAgICAgIChzdHJpbmdfaW5wdXQpOgorKyAgICAgICAg
KGdsc2xhbmdfc2Nhbik6CisrICAgICAgICAqIHNyYy9jb21waWxlci9nbHNsYW5nX3RhYi5jcHA6
CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvRXhwcmVzc2lvblBhcnNlci5j
cHA6CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvRXhwcmVzc2lvblBhcnNl
ci55OgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL0lucHV0LmNwcDoKKysg
ICAgICAgIChwcDo6SW5wdXQ6OklucHV0KToKKysgICAgICAgIChwcDo6SW5wdXQ6OnJlYWQpOgor
KyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL0lucHV0Lmg6CisrICAgICAgICAo
SW5wdXQpOgorKyAgICAgICAgKHBwOjpJbnB1dDo6Y291bnQpOgorKyAgICAgICAgKHBwOjpJbnB1
dDo6c3RyaW5nKToKKysgICAgICAgIChwcDo6SW5wdXQ6Omxlbmd0aCk6CisrICAgICAgICAoTG9j
YXRpb24pOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL1ByZXByb2Nlc3Nv
ci5jcHA6CisrICAgICAgICAocHA6OlByZXByb2Nlc3Nvcjo6aW5pdCk6CisrICAgICAgICAqIHNy
Yy9jb21waWxlci9wcmVwcm9jZXNzb3IvUHJlcHJvY2Vzc29yLmg6CisrICAgICAgICAoUHJlcHJv
Y2Vzc29yKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9Ub2tlbml6ZXIu
Y3BwOgorKyAgICAgICAgKHBwOjpUb2tlbml6ZXI6OmluaXQpOgorKyAgICAgICAgKiBzcmMvY29t
cGlsZXIvcHJlcHJvY2Vzc29yL1Rva2VuaXplci5oOgorKyAgICAgICAgKFRva2VuaXplcik6Cisr
ICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvVG9rZW5pemVyLmw6CisrICAgICAg
ICAqIHNyYy90aGlyZF9wYXJ0eTogQWRkZWQuCisrICAgICAgICAqIHNyYy90aGlyZF9wYXJ0eS9j
b21waWxlcjogQWRkZWQuCisrICAgICAgICAqIHNyYy90aGlyZF9wYXJ0eS9jb21waWxlci9BcnJh
eUJvdW5kc0NsYW1wZXIuY3BwOiBBZGRlZC4KKysgICAgICAgIChBcnJheUJvdW5kc0NsYW1wZXI6
OkFycmF5Qm91bmRzQ2xhbXBlcik6CisrICAgICAgICAoQXJyYXlCb3VuZHNDbGFtcGVyOjpTZXRD
bGFtcGluZ1N0cmF0ZWd5KToKKysgICAgICAgIChBcnJheUJvdW5kc0NsYW1wZXI6Ok1hcmtJbmRp
cmVjdEFycmF5Qm91bmRzRm9yQ2xhbXBpbmcpOgorKyAgICAgICAgKEFycmF5Qm91bmRzQ2xhbXBl
cjo6T3V0cHV0Q2xhbXBpbmdGdW5jdGlvbkRlZmluaXRpb24pOgorKyAgICAgICAgKiBzcmMvdGhp
cmRfcGFydHkvY29tcGlsZXIvQXJyYXlCb3VuZHNDbGFtcGVyLmg6IEFkZGVkLgorKyAgICAgICAg
KEFycmF5Qm91bmRzQ2xhbXBlcik6CisrICAgICAgICAoQXJyYXlCb3VuZHNDbGFtcGVyOjpDbGVh
bnVwKToKKysgICAgICAgIChBcnJheUJvdW5kc0NsYW1wZXI6OkdldEFycmF5Qm91bmRzQ2xhbXBE
ZWZpbml0aW9uTmVlZGVkKToKKysgICAgICAgIChBcnJheUJvdW5kc0NsYW1wZXI6OlNldEFycmF5
Qm91bmRzQ2xhbXBEZWZpbml0aW9uTmVlZGVkKToKKysgICAgICAgICogc3JjL3RoaXJkX3BhcnR5
L2NvbXBpbGVyL0xJQ0VOU0U6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvdGhpcmRfcGFydHkvY29t
cGlsZXIvUkVBRE1FLmFuZ2xlOiBBZGRlZC4KKysKKysyMDEzLTAyLTA0ICBEYXZpZCBLaWx6ZXIg
IDxkZGtpbHplckBhcHBsZS5jb20+CisrCisrICAgICAgICBTb3J0IEFOR0xFIFhjb2RlIHByb2pl
Y3QgZmlsZS4KKysKKysgICAgICAgICogQU5HTEUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoK
KysKKysyMDEzLTAxLTMwICBEYXZpZCBLaWx6ZXIgIDxkZGtpbHplckBhcHBsZS5jb20+CisrCisr
ICAgICAgICBSZW1vdmUgdXNlbGVzcyBjb21tZW50IGZyb20gQmFzZS54Y2NvbmZpZworKworKyAg
ICAgICAgUnViYmVyLXN0YW1wZWQgYnkgTWFyayBSb3dlLgorKworKyAgICAgICAgKiBDb25maWd1
cmF0aW9ucy9CYXNlLnhjY29uZmlnOiBSZW1vdmUgY29tbWVudC4KKysKKysyMDEzLTAxLTE2ICBB
bGxhbiBTYW5kZmVsZCBKZW5zZW4gIDxhbGxhbi5qZW5zZW5AZGlnaWEuY29tPgorKworKyAgICAg
ICAgRG9lc24ndCBidWlsZCB3aXRoIEdDQyA0LjcrCisrICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA2OTk5CisrCisrICAgICAgICBSZXZpZXdlZCBieSBD
c2FiYSBPc3p0cm9nb27DoWMuCisrCisrICAgICAgICBDb3JyZWN0IF9fR05VX0NfTUlOT1JfXyBt
YWNybyB0byBfX0dOVUNfTUlOT1JfXy4KKysKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXBy
b2Nlc3Nvci9FeHByZXNzaW9uUGFyc2VyLnk6CisrCisrMjAxMy0wMS0xNSAgRGF2aWQgS2lsemVy
ICA8ZGRraWx6ZXJAYXBwbGUuY29tPgorKworKyAgICAgICAgQlVJTEQgRklYOiBBZGQgU1VQUE9S
VEVEX1BMQVRGT1JNUyB0byBCYXNlLnhjY29uZmlnCisrCisrICAgICAgICAqIENvbmZpZ3VyYXRp
b25zL0Jhc2UueGNjb25maWc6IEFkZCBTVVBQT1JURURfUExBVEZPUk1TIHNvIHRoYXQKKysgICAg
ICAgIFhjb2RlIGtub3dzIHdlIGNhbiBidWlsZCB0aGlzIHByb2plY3QgZm9yIGFsbCB0aHJlZSBw
bGF0Zm9ybXMuCisrICAgICAgICBQcmV2aW91c2x5IHRoZSBNYWMgT1MgWCBTREtzIHdlcmUgbWlz
c2luZyBpbiB0aGUgc2NoZW1lIHBpY2tlci4KKysKKysyMDEzLTAxLTE1ICBEYXZpZCBLaWx6ZXIg
IDxkZGtpbHplckBhcHBsZS5jb20+CisrCisrICAgICAgICBVcHN0cmVhbSBpT1MgY2hhbmdlcyBm
b3IgQU5HTEUgcHJvamVjdAorKyAgICAgICAgPGh0dHA6Ly93ZWJraXQub3JnL2IvMTA2OTEzPgor
KworKyAgICAgICAgUmV2aWV3ZWQgYnkgSm9zZXBoIFBlY29yYXJvLgorKworKyAgICAgICAgKiBB
TkdMRS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorKyAgICAgICAgLSBVc2UgJChJTlNUQUxM
X1BBVEhfUFJFRklYKSB3aXRoIENvcHlGaWxlcyBidWlsZCBwaGFzZSBwYXRocy4KKysgICAgICAg
IC0gQWRkIGlPUy54Y2NvbmZpZyB0byBwcm9qZWN0LgorKyAgICAgICAgKiBDb25maWd1cmF0aW9u
cy9BTkdMRS54Y2NvbmZpZzoKKysgICAgICAgIC0gVXNlIElOU1RBTExfUEFUSF9BQ1RVQUwgaW5z
dGVhZCBvZiBJTlNUQUxMX1BBVEguICAoU2VlIGJlbG93LikKKysgICAgICAgIC0gVXNlICQoSU5T
VEFMTF9QQVRIX1BSRUZJWCkgd2l0aCBQVUJMSUNfSEVBREVSU19GT0xERVJfUEFUSC4KKysgICAg
ICAgICogQ29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZzoKKysgICAgICAgIC0gSW5jbHVkZSBp
T1MueGNjb25maWcuCisrICAgICAgICAtIEFkZCBwZXItcGxhdGZvcm0gdmFsdWVzIGZvciBHQ0Nf
RU5BQkxFX09CSkNfR0MgYW5kCisrICAgICAgICAgIEdDQ19NT0RFTF9UVU5JTkcuCisrICAgICAg
ICAtIERlZmluZSBJTlNUQUxMX1BBVEggd2hlbiBidWlsZGluZyBmb3IgbWFjb3N4IFNESy4KKysg
ICAgICAgICogQ29uZmlndXJhdGlvbnMvaU9TLnhjY29uZmlnOiBBZGQuICBOb3RlIHRoYXQgbWlz
c2luZyBpbmNsdWRlCisrICAgICAgICBmaWxlcyBhcmUgc2ltcGx5IGlnbm9yZWQgd2l0aG91dCBh
biBlcnJvciBieSBYY29kZS4KKysKKysyMDEzLTAxLTE1ICBEYXZpZCBLaWx6ZXIgIDxkZGtpbHpl
ckBhcHBsZS5jb20+CisrCisrICAgICAgICBBTkdMRSBzaG91bGQgYnVpbGQgd2l0aCAtV3Nob3J0
ZW4tNjQtdG8tMzIKKysgICAgICAgIDxodHRwOi8vd2Via2l0Lm9yZy9iLzEwNjc5OD4KKysgICAg
ICAgIDxodHRwOi8vY29kZS5nb29nbGUuY29tL3AvYW5nbGVwcm9qZWN0L2lzc3Vlcy9kZXRhaWw/
aWQ9Mzk2PgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgS2VubmV0aCBSdXNzZWxsLgorKworKyAg
ICAgICAgTW9zdCBjaGFuZ2VzIGJlbG93IGFyZSBzaW1wbHkgdG8gZG9jdW1lbnQgaXNzdWVzIHdp
dGggI3ByYWdtYQorKyAgICAgICAgc3RhdGVtZW50cyBwZXIgcmVxdWVzdCBieSB1cHN0cmVhbS4g
IFRoZSBjaGFuZ2UgdG8gb3NpbmNsdWRlLmgKKysgICAgICAgIGlzIHRoZSBvbmx5IGJ1ZyBmaXgs
IHdoaWNoIGRlZmluZXMgT1NfVExTSW5kZXggaW4gdGVybXMgb2YKKysgICAgICAgIHB0aHJlYWRf
a2V5X3QgaW5zdGVhZCBvZiB1bnNpZ25lZCBpbnQgc2luY2UgcHRocmVhZF9rZXlfdCBpcyBhCisr
ICAgICAgICA2NC1iaXQgdmFsdWUgb24gNjQtYml0IE1hYyBPUyBYLgorKworKyAgICAgICAgKiBD
b25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnOiBFbmFibGUgLVdzaG9ydGVuLTY0LXRvLTMyIGJ5
CisrICAgICAgICBzZXR0aW5nIEdDQ19XQVJOXzY0X1RPXzMyX0JJVF9DT05WRVJTSU9OIHRvIFlF
Uy4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL0ludGVybWVkaWF0ZS5jcHA6CisrICAgICAgICAo
VEludGVybVRyYXZlcnNlcjo6aGFzaCk6IEFkZCAjcHJhZ21hcyBmb3IgY2xhbmcgdG8gaWdub3Jl
CisrICAgICAgICAtV3Nob3J0ZW4tNjQtdG8tMzIgd2FybmluZy4KKysgICAgICAgICogc3JjL2Nv
bXBpbGVyL01hcExvbmdWYXJpYWJsZU5hbWVzLmNwcDoKKysgICAgICAgIChMb25nTmFtZU1hcDo6
U2l6ZSk6IERpdHRvLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvU2hhZGVyTGFuZy5jcHA6Cisr
ICAgICAgICAoZ2V0VmFyaWFibGVJbmZvKTogRGl0dG8uCisrICAgICAgICAoU2hHZXRJbmZvKTog
RGl0dG8uCisrICAgICAgICAqIHNyYy9jb21waWxlci9WYWxpZGF0ZUxpbWl0YXRpb25zLmNwcDoK
KysgICAgICAgIChWYWxpZGF0ZUxpbWl0YXRpb25zOjp2YWxpZGF0ZUZ1bmN0aW9uQ2FsbCk6IERp
dHRvLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvZ2xzbGFuZy5sOiBEaXR0by4KKysgICAgICAg
ICogc3JjL2NvbXBpbGVyL2dsc2xhbmdfbGV4LmNwcDogRGl0dG8uCisrICAgICAgICAqIHNyYy9j
b21waWxlci9vc2luY2x1ZGUuaDogQ2hhbmdlIHR5cGUgb2YgT1NfVExTSW5kZXggdG8KKysgICAg
ICAgIHB0aHJlYWRfa2V5X3QuICBEZWZpbmUgT1NfSU5WQUxJRF9UTFNfSU5ERVggYnkgdXNpbmcK
KysgICAgICAgIHN0YXRpY19jYXN0PE9TX1RMU0luZGV4PigtMSkuCisrICAgICAgICAqIHNyYy9j
b21waWxlci9wcmVwcm9jZXNzb3IvSW5wdXQuY3BwOgorKyAgICAgICAgKHBwOjpJbnB1dDo6SW5w
dXQpOiBBZGQgI3ByYWdtYXMgZm9yIGNsYW5nIHRvIGlnbm9yZQorKyAgICAgICAgLVdzaG9ydGVu
LTY0LXRvLTMyIHdhcm5pbmcuCisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3Iv
VG9rZW5pemVyLmNwcDogRGl0dG8uCisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNz
b3IvVG9rZW5pemVyLmw6IERpdHRvLgorKworKzIwMTMtMDEtMTQgIERhdmlkIEtpbHplciAgPGRk
a2lsemVyQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFJlbW92ZSBub25leGlzdGVudCBmaWxlIGlu
IEFOR0xFIFhjb2RlIHByb2plY3QKKysKKysgICAgICAgICogQU5HTEUueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvajogUmVtb3ZlIHJlZmVyZW5jZXMgdG8KKysgICAgICAgIG9zc291cmNlX25zcHIu
Y3BwIHdoaWNoIHdhcyByZW1vdmVkIGluIHIxMzk2NjUuCisrCisrMjAxMy0wMS0xNCAgRGVhbiBK
YWNrc29uICA8ZGlub0BhcHBsZS5jb20+CisrCisrICAgICAgICBVbnJldmlld2VkIFFUIGJ1aWxk
IGZpeC4KKysKKysgICAgICAgICogQU5HTEUucHJpOgorKworKzIwMTMtMDEtMTQgIERlYW4gSmFj
a3NvbiAgPGRpbm9AYXBwbGUuY29tPgorKworKyAgICAgICAgW0FOR0xFXSBVcGRhdGUgQU5HTEUg
aW4gV2ViS2l0CisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTA2Mjc0CisrCisrICAgICAgICBVbnJldmlld2VkIGF0dGVtcHRlZCBidWlsZCBmaXguCisr
CisrICAgICAgICBSZW1vdmUgdGhlIGNvcHkgZmlsZXMgc3RhZ2UuIE1ha2Uga2hycGxhdGZvcm0u
aCBhIHB1YmxpYyBoZWFkZXIuCisrCisrICAgICAgICAqIEFOR0xFLnhjb2RlcHJvai9wcm9qZWN0
LnBieHByb2o6CisrICAgICAgICAqIGluY2x1ZGUvR0xTTEFORy9TaGFkZXJMYW5nLmg6CisrCisr
MjAxMy0wMS0xNCAgTWF4IFZ1am92aWMgIDxtdnVqb3ZpY0BhZG9iZS5jb20+CisrCisrICAgICAg
ICBbQU5HTEVdIFVwZGF0ZSBBTkdMRSBpbiBXZWJLaXQKKysgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDYyNzQKKysKKysgICAgICAgIFJldmlld2VkIGJ5
IERlYW4gSmFja3Nvbi4KKysKKysgICAgICAgIFVwZGF0ZSBBTkdMRSB0byByMTY0MS4KKysKKysg
ICAgICAgIEFOR0xFIHBhcnNlcnMgd2VyZSBnZW5lcmF0ZWQgd2l0aCBCaXNvbiAyLjMuCisrCisr
ICAgICAgICBBZGRpdGlvbmFsbHksIHBlcmZvcm0gdGhlIGZvbGxvd2luZyBjaGFuZ2VzIHRvIFdl
YktpdCdzIEFOR0xFIGJ1aWxkIHN5c3RlbS4gTm90ZSB0aGF0IHRoZXNlCisrICAgICAgICBjaGFu
Z2VzIG9ubHkgYXBwbHkgdG8gV2ViS2l0J3MgY29weSBvZiBBTkdMRSwgYW5kIGRvIG5vdCBuZWVk
IHRvIGJlIHVwc3RyZWFtZWQgdG8gQU5HTEUuCisrICAgICAgICAoYSkgUmVtb3ZlIGFsbCBmaWxl
cyBpbiB0aGUgbGliRUdMIGFuZCBsaWJHTEVTdjIgZGlyZWN0b3JpZXMgYmVjYXVzZSBub2JvZHkg
aXMgdXNpbmcgdGhlbS4gCisrICAgICAgICAgICAgQWRkIGEgUkVBRE1FIGluIGVhY2ggZGlyZWN0
b3J5IHRvIGV4cGxhaW4gd2h5IHRoZWlyIGNvbnRlbnRzIGFyZSBub3QgY29waWVkIG92ZXIgZnJv
bQorKyAgICAgICAgICAgIEFOR0xFLiBUaGlzIHNpbXBsaWZpZXMgdXBkYXRpbmcgQU5HTEUgaW4g
dGhlIGZ1dHVyZS4KKysgICAgICAgIChiKSBSZW1vdmUgdGhlIGJ1aWxkX2FuZ2xlLnhjb2RlcHJv
aiBmaWxlIHRoYXQgbm8tb25lIGlzIHVzaW5nLiBJdCBhcHBlYXJzIGl0IHdhcyBjb3BpZWQKKysg
ICAgICAgICAgICBvdmVyIGZyb20gYSBneXAgYnVpbGQgb2YgQU5HTEUuIFRoZSBNYWMgYnVpbGQg
dXNlcyBBTkdMRS54Y29kZXByb2ouCisrICAgICAgICAoYykgUmVtb3ZlIGR1cGxpY2F0ZSBmaWxl
IGVudHJpZXMgaW4gQU5HTEUueGNvZGVwcm9qLiBDaGFuZ2UgaXRzIFhjb2RlIGdyb3VwIHN0cnVj
dHVyZSB0bworKyAgICAgICAgICAgIG1hdGNoIEFOR0xFJ3MgZGlyZWN0b3J5IHN0cnVjdHVyZS4K
KysgICAgICAgIChkKSBBZGQgYSBDb3B5IEZpbGVzIHRhc2sgdG8gQU5HTEUueGNvZGVwcm9qIHRv
IHB1dCB0aGUga2hycGxhdGZvcm0uaCBoZWFkZXIgaW4gdGhlIHJpZ2h0CisrICAgICAgICAgICAg
cGxhY2Ugc28gU2hhZGVyTGFuZy5oIGNhbiBmaW5kIGl0LiBTaGFkZXJMYW5nLmggaXMgY29waWVk
IHRvCisrICAgICAgICAgICAgPEJ1aWxkRGlyPi91c3IvbG9jYWwvaW5jbHVkZS9BTkdMRS9TaGFk
ZXJMYW5nLmggZHVyaW5nIHRoZSBDb3B5IEhlYWRlcnMgdGFzaywgYW5kIGl0CisrICAgICAgICAg
ICAgaW5jbHVkZXMgIktIUi9raHJwbGF0Zm9ybS5oIi4gVGh1cywgd2UgbmVlZCB0byBjb3B5IGto
cnBsYXRmb3JtLmggdG8KKysgICAgICAgICAgICA8QnVpbGREaXI+L3Vzci9sb2NhbC9pbmNsdWRl
L0FOR0xFL0tIUi9raHJwbGF0Zm9ybS5oLgorKworKyAgICAgICAgQWRkaXRpb25hbGx5LCBtYWtl
IG9uZSBidWlsZCBmaXggaW4gQU5HTEUgc291cmNlIHRoYXQgc2hvdWxkIGJlIHVwc3RyZWFtZWQg
dG8gQU5HTEU6CisrICAgICAgICAoMSkgQmVmb3JlIHRoaXMgcGF0Y2ggaW4gRXhwcmVzc2lvblBh
cnNlci55LCB3ZSB0b2dnbGVkIHRoZSAiLVdwcmFnbWFzIiBmbGFnIHNvIGNvbXBpbGVycworKyAg
ICAgICAgICAgIGNvdWxkIGlnbm9yZSB0aGUgcHJhZ21hcyB0aGF0IHRoZXkgZGlkbid0IHVuZGVy
c3RhbmQgaW5zdGVhZCBvZiBnZW5lcmF0aW5nIGFuIGVycm9yLgorKyAgICAgICAgICAgIEhvd2V2
ZXIsIGNsYW5nIGRvZXMgbm90IHVuZGVyc3RhbmQgIi1XcHJhZ21hcyIgaXRzZWxmLiBJbnN0ZWFk
LCB0dCB1bmRlcnN0YW5kcworKyAgICAgICAgICAgICItV3Vua25vd24tcHJhZ21hcyIuIE5vdywg
aW5zdGVhZCBvZiB0cnlpbmcgdG8gdGVtcG9yYXJpbHkgaWdub3JlIHByYWdtYXMsIHdlIGFwcGx5
IHRoZQorKyAgICAgICAgICAgIHJpZ2h0IGZsYWdzIHRvIHRoZSByaWdodCBjb21waWxlciB2ZXJz
aW9ucy4gVGhlIG5ldyBjb2RlIGluIEV4cHJlc3Npb25QYXJzZXIueSBsb29rcworKyAgICAgICAg
ICAgIGxpa2U6CisrCisrICAgICAgICAiIiIKKysgICAgICAgIC8vIFR1cm4gb2ZmIHVuaW5pdGlh
bGl6ZWQgdmFyaWFibGUgd2FybmluZ3MgdHJpZ2dlcmVkIGJ5IHRoZSBhdXRvLWdlbmVyYXRlZCBw
cGx2YWwgdmFyaWFibGUuCisrICAgICAgICAvLyBPbiBnY2MgNC43KywgVGhlIGZsYWcgaXMgY2Fs
bGVkICItV21heWJlLXVuaW5pdGlhbGl6ZWQiLgorKyAgICAgICAgLy8gT24gY2xhbmcgYW5kIGdj
YyA8IDQuNywgdGhlIGZsYWcgaXMgY2FsbGVkICItV3VuaW5pdGlhbGl6ZWQiLgorKyAgICAgICAg
I2lmICFkZWZpbmVkKF9fY2xhbmdfXykgJiYgKChfX0dOVUNfXyA9PSA0ICYmIF9fR05VX0NfTUlO
T1JfXyA+PSA3KSB8fCBfX0dOVUNfXyA+PSA1KQorKyAgICAgICAgI3ByYWdtYSBHQ0MgZGlhZ25v
c3RpYyBpZ25vcmVkICItV21heWJlLXVuaW5pdGlhbGl6ZWQiCisrICAgICAgICAjZWxzZQorKyAg
ICAgICAgI3ByYWdtYSBHQ0MgZGlhZ25vc3RpYyBpZ25vcmVkICItV3VuaW5pdGlhbGl6ZWQiCisr
ICAgICAgICAjZW5kaWYKKysgICAgICAgICIiIgorKworKyAgICAgICAgKiBBTkdMRS5wbGlzdDoK
KysgICAgICAgICogQU5HTEUucHJpOgorKyAgICAgICAgKiBBTkdMRS54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qOgorKyAgICAgICAgKiBEZXJpdmVkU291cmNlcy5wcmk6CisrICAgICAgICAqIFRh
cmdldC5wcmk6CisrICAgICAgICAqIGluY2x1ZGUvR0xTTEFORy9TaGFkZXJMYW5nLmg6CisrICAg
ICAgICAqIHNyYy9idWlsZF9hbmdsZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOiBSZW1vdmVk
LgorKyAgICAgICAgKiBzcmMvY29tbW9uL2FuZ2xldXRpbHMuaDoKKysgICAgICAgICogc3JjL2Nv
bW1vbi9kZWJ1Zy5jcHA6CisrICAgICAgICAoZ2w6OlNjb3BlZFBlcmZFdmVudEhlbHBlcjo6U2Nv
cGVkUGVyZkV2ZW50SGVscGVyKToKKysgICAgICAgICogc3JjL2NvbW1vbi9kZWJ1Zy5oOgorKyAg
ICAgICAgKiBzcmMvY29tbW9uL3ZlcnNpb24uaDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL0Nv
bXBpbGVyLmNwcDoKKysgICAgICAgIChUQ29tcGlsZXI6OkluaXQpOgorKyAgICAgICAgKFRDb21w
aWxlcjo6Y29tcGlsZSk6CisrICAgICAgICAoVENvbXBpbGVyOjpjbGVhclJlc3VsdHMpOgorKyAg
ICAgICAgKFRDb21waWxlcjo6Y29sbGVjdEF0dHJpYnNVbmlmb3Jtcyk6CisrICAgICAgICAoVENv
bXBpbGVyOjplbmZvcmNlUGFja2luZ1Jlc3RyaWN0aW9ucyk6CisrICAgICAgICAqIHNyYy9jb21w
aWxlci9EaWFnbm9zdGljcy5jcHA6CisrICAgICAgICAoVERpYWdub3N0aWNzOjpURGlhZ25vc3Rp
Y3MpOgorKyAgICAgICAgKFREaWFnbm9zdGljczo6d3JpdGVJbmZvKToKKysgICAgICAgIChURGlh
Z25vc3RpY3M6OnByaW50KToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL0RpYWdub3N0aWNzLmg6
CisrICAgICAgICAoVERpYWdub3N0aWNzOjpudW1FcnJvcnMpOgorKyAgICAgICAgKFREaWFnbm9z
dGljczo6bnVtV2FybmluZ3MpOgorKyAgICAgICAgKFREaWFnbm9zdGljcyk6CisrICAgICAgICAq
IHNyYy9jb21waWxlci9EaXJlY3RpdmVIYW5kbGVyLmg6CisrICAgICAgICAqIHNyYy9jb21waWxl
ci9IYXNoTmFtZXMuaDogQWRkZWQuCisrICAgICAgICAqIHNyYy9jb21waWxlci9JbnRlcm1lZGlh
dGUuY3BwOgorKyAgICAgICAgKFRJbnRlcm1UcmF2ZXJzZXI6Omhhc2gpOgorKyAgICAgICAgKiBz
cmMvY29tcGlsZXIvT3V0cHV0RVNTTC5jcHA6CisrICAgICAgICAoVE91dHB1dEVTU0w6OlRPdXRw
dXRFU1NMKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL091dHB1dEVTU0wuaDoKKysgICAgICAg
IChUT3V0cHV0RVNTTCk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9PdXRwdXRHTFNMLmNwcDoK
KysgICAgICAgIChUT3V0cHV0R0xTTDo6VE91dHB1dEdMU0wpOgorKyAgICAgICAgKiBzcmMvY29t
cGlsZXIvT3V0cHV0R0xTTC5oOgorKyAgICAgICAgKFRPdXRwdXRHTFNMKToKKysgICAgICAgICog
c3JjL2NvbXBpbGVyL091dHB1dEdMU0xCYXNlLmNwcDoKKysgICAgICAgIChUT3V0cHV0R0xTTEJh
c2U6OlRPdXRwdXRHTFNMQmFzZSk6CisrICAgICAgICAoVE91dHB1dEdMU0xCYXNlOjp3cml0ZVZh
cmlhYmxlVHlwZSk6CisrICAgICAgICAoVE91dHB1dEdMU0xCYXNlOjp3cml0ZUZ1bmN0aW9uUGFy
YW1ldGVycyk6CisrICAgICAgICAoVE91dHB1dEdMU0xCYXNlOjp3cml0ZUNvbnN0YW50VW5pb24p
OgorKyAgICAgICAgKFRPdXRwdXRHTFNMQmFzZTo6dmlzaXRTeW1ib2wpOgorKyAgICAgICAgKFRP
dXRwdXRHTFNMQmFzZTo6dmlzaXRCaW5hcnkpOgorKyAgICAgICAgKFRPdXRwdXRHTFNMQmFzZTo6
dmlzaXRBZ2dyZWdhdGUpOgorKyAgICAgICAgKFRPdXRwdXRHTFNMQmFzZTo6Z2V0VHlwZU5hbWUp
OgorKyAgICAgICAgKFRPdXRwdXRHTFNMQmFzZTo6aGFzaE5hbWUpOgorKyAgICAgICAgKFRPdXRw
dXRHTFNMQmFzZTo6aGFzaFZhcmlhYmxlTmFtZSk6CisrICAgICAgICAoVE91dHB1dEdMU0xCYXNl
OjpoYXNoRnVuY3Rpb25OYW1lKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL091dHB1dEdMU0xC
YXNlLmg6CisrICAgICAgICAoVE91dHB1dEdMU0xCYXNlKToKKysgICAgICAgICogc3JjL2NvbXBp
bGVyL091dHB1dEhMU0wuY3BwOgorKyAgICAgICAgKHNoOjpPdXRwdXRITFNMOjpPdXRwdXRITFNM
KToKKysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6aGVhZGVyKToKKysgICAgICAgIChzaDo6T3V0
cHV0SExTTDo6dmlzaXRBZ2dyZWdhdGUpOgorKyAgICAgICAgKHNoOjpPdXRwdXRITFNMOjp2aXNp
dEJyYW5jaCk6CisrICAgICAgICAoc2g6Ok91dHB1dEhMU0w6OmhhbmRsZUV4Y2Vzc2l2ZUxvb3Ap
OgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvT3V0cHV0SExTTC5oOgorKyAgICAgICAgKE91dHB1
dEhMU0wpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvUGFyc2VIZWxwZXIuY3BwOgorKyAgICAg
ICAgKFRQYXJzZUNvbnRleHQ6OmVycm9yKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0Ojpub25J
bml0Q29uc3RFcnJvckNoZWNrKToKKysgICAgICAgIChQYVBhcnNlU3RyaW5ncyk6CisrICAgICAg
ICAqIHNyYy9jb21waWxlci9QYXJzZUhlbHBlci5oOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6
OlRQYXJzZUNvbnRleHQpOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQpOgorKyAgICAgICAgKFRQ
YXJzZUNvbnRleHQ6Om51bUVycm9ycyk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9SZW5hbWVG
dW5jdGlvbi5oOgorKyAgICAgICAgKFJlbmFtZUZ1bmN0aW9uOjp2aXNpdEFnZ3JlZ2F0ZSk6Cisr
ICAgICAgICAqIHNyYy9jb21waWxlci9TaEhhbmRsZS5oOgorKyAgICAgICAgKFRDb21waWxlcjo6
Z2V0SGFzaEZ1bmN0aW9uKToKKysgICAgICAgIChUQ29tcGlsZXI6OmdldE5hbWVNYXApOgorKyAg
ICAgICAgKFRDb21waWxlcjo6Z2V0U3ltYm9sVGFibGUpOgorKyAgICAgICAgKFRDb21waWxlcik6
CisrICAgICAgICAqIHNyYy9jb21waWxlci9TaGFkZXJMYW5nLmNwcDoKKysgICAgICAgIChTaElu
aXRCdWlsdEluUmVzb3VyY2VzKToKKysgICAgICAgIChTaEdldEluZm8pOgorKyAgICAgICAgKFNo
R2V0TmFtZUhhc2hpbmdFbnRyeSk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9TeW1ib2xUYWJs
ZS5jcHA6CisrICAgICAgICAoVFR5cGU6OlRUeXBlKToKKysgICAgICAgIChUVHlwZTo6aXNTdHJ1
Y3R1cmVDb250YWluaW5nQXJyYXlzKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL1N5bWJvbFRh
YmxlLmg6CisrICAgICAgICAoVFN5bWJvbFRhYmxlOjpmaW5kQnVpbHRJbik6CisrICAgICAgICAo
VFN5bWJvbFRhYmxlKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL1RyYW5zbGF0b3JFU1NMLmNw
cDoKKysgICAgICAgIChUcmFuc2xhdG9yRVNTTDo6dHJhbnNsYXRlKToKKysgICAgICAgICogc3Jj
L2NvbXBpbGVyL1RyYW5zbGF0b3JHTFNMLmNwcDoKKysgICAgICAgIChUcmFuc2xhdG9yR0xTTDo6
dHJhbnNsYXRlKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL1R5cGVzLmg6CisrICAgICAgICAo
VFR5cGUpOgorKyAgICAgICAgKFRQdWJsaWNUeXBlKToKKysgICAgICAgIChUUHVibGljVHlwZTo6
c2V0QmFzaWMpOgorKyAgICAgICAgKFRQdWJsaWNUeXBlOjpzZXRBZ2dyZWdhdGUpOgorKyAgICAg
ICAgKFRQdWJsaWNUeXBlOjpzZXRBcnJheSk6CisrICAgICAgICAoVFB1YmxpY1R5cGU6OmlzU3Ry
dWN0dXJlQ29udGFpbmluZ0FycmF5cyk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9VbmZvbGRT
aG9ydENpcmN1aXQuY3BwOgorKyAgICAgICAgKHNoOjpVbmZvbGRTaG9ydENpcmN1aXQ6OnZpc2l0
QmluYXJ5KToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL1ZhcmlhYmxlSW5mby5jcHA6CisrICAg
ICAgICAoZ2V0VmFyaWFibGVJbmZvKToKKysgICAgICAgIChnZXRVc2VyRGVmaW5lZFZhcmlhYmxl
SW5mbyk6CisrICAgICAgICAoVFZhcmlhYmxlSW5mbzo6VFZhcmlhYmxlSW5mbyk6CisrICAgICAg
ICAoQ29sbGVjdEF0dHJpYnNVbmlmb3Jtczo6Q29sbGVjdEF0dHJpYnNVbmlmb3Jtcyk6CisrICAg
ICAgICAoQ29sbGVjdEF0dHJpYnNVbmlmb3Jtczo6dmlzaXRBZ2dyZWdhdGUpOgorKyAgICAgICAg
KiBzcmMvY29tcGlsZXIvVmFyaWFibGVJbmZvLmg6CisrICAgICAgICAoVFZhcmlhYmxlSW5mbyk6
CisrICAgICAgICAoQ29sbGVjdEF0dHJpYnNVbmlmb3Jtcyk6CisrICAgICAgICAqIHNyYy9jb21w
aWxlci9WYXJpYWJsZVBhY2tlci5jcHA6IEFkZGVkLgorKyAgICAgICAgKFZhcmlhYmxlUGFja2Vy
OjpHZXROdW1Db21wb25lbnRzUGVyUm93KToKKysgICAgICAgIChWYXJpYWJsZVBhY2tlcjo6R2V0
TnVtUm93cyk6CisrICAgICAgICAoVFZhcmlhYmxlSW5mb0NvbXBhcmVyOjpvcGVyYXRvcigpKToK
KysgICAgICAgIChWYXJpYWJsZVBhY2tlcjo6bWFrZUNvbHVtbkZsYWdzKToKKysgICAgICAgIChW
YXJpYWJsZVBhY2tlcjo6ZmlsbENvbHVtbnMpOgorKyAgICAgICAgKFZhcmlhYmxlUGFja2VyOjpz
ZWFyY2hDb2x1bW4pOgorKyAgICAgICAgKFZhcmlhYmxlUGFja2VyOjpDaGVja1ZhcmlhYmxlc1dp
dGhpblBhY2tpbmdMaW1pdHMpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvVmFyaWFibGVQYWNr
ZXIuaDogQWRkZWQuCisrICAgICAgICAoVmFyaWFibGVQYWNrZXIpOgorKyAgICAgICAgKiBzcmMv
Y29tcGlsZXIvVmVyc2lvbkdMU0wuY3BwOgorKyAgICAgICAgKFRWZXJzaW9uR0xTTDo6dmlzaXRB
Z2dyZWdhdGUpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvVmVyc2lvbkdMU0wuaDoKKysgICAg
ICAgIChUVmVyc2lvbkdMU0wpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvZ2xzbGFuZy5sOgor
KyAgICAgICAgKiBzcmMvY29tcGlsZXIvZ2xzbGFuZy55OgorKyAgICAgICAgKiBzcmMvY29tcGls
ZXIvZ2xzbGFuZ19sZXguY3BwOgorKyAgICAgICAgKHN0cmluZ19pbnB1dCk6CisrICAgICAgICAo
Z2xzbGFuZ19maW5hbGl6ZSk6CisrICAgICAgICAoZ2xzbGFuZ19zY2FuKToKKysgICAgICAgICog
c3JjL2NvbXBpbGVyL2dsc2xhbmdfdGFiLmNwcDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL2lu
dGVybWVkaWF0ZS5oOgorKyAgICAgICAgKFRJbnRlcm1UcmF2ZXJzZXIpOgorKyAgICAgICAgKiBz
cmMvY29tcGlsZXIvb3NpbmNsdWRlLmg6CisrICAgICAgICAoT1NfR2V0VExTVmFsdWUpOgorKyAg
ICAgICAgKiBzcmMvY29tcGlsZXIvb3Nzb3VyY2VfbnNwci5jcHA6CisrICAgICAgICAqIHNyYy9j
b21waWxlci9wcmVwcm9jZXNzb3IvRGlhZ25vc3RpY3NCYXNlLmNwcDogQWRkZWQuCisrICAgICAg
ICAocHApOgorKyAgICAgICAgKHBwOjpEaWFnbm9zdGljczo6fkRpYWdub3N0aWNzKToKKysgICAg
ICAgIChwcDo6RGlhZ25vc3RpY3M6OnJlcG9ydCk6CisrICAgICAgICAocHA6OkRpYWdub3N0aWNz
OjpzZXZlcml0eSk6CisrICAgICAgICAocHA6OkRpYWdub3N0aWNzOjptZXNzYWdlKToKKysgICAg
ICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9EaWFnbm9zdGljc0Jhc2UuaDogUmVuYW1l
ZCBmcm9tIFNvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci9wcmVwcm9jZXNzb3Iv
bmV3L0RpYWdub3N0aWNzLmguCisrICAgICAgICAocHApOgorKyAgICAgICAgKERpYWdub3N0aWNz
KToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9EaXJlY3RpdmVIYW5kbGVy
QmFzZS5jcHA6IFJlbmFtZWQgZnJvbSBTb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tcGls
ZXIvcHJlcHJvY2Vzc29yL25ldy9EaXJlY3RpdmVIYW5kbGVyQmFzZS5jcHAuCisrICAgICAgICAo
cHApOgorKyAgICAgICAgKHBwOjpEaXJlY3RpdmVIYW5kbGVyOjp+RGlyZWN0aXZlSGFuZGxlcik6
CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvRGlyZWN0aXZlSGFuZGxlckJh
c2UuaDogUmVuYW1lZCBmcm9tIFNvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci9w
cmVwcm9jZXNzb3IvbmV3L0RpcmVjdGl2ZUhhbmRsZXIuaC4KKysgICAgICAgIChwcCk6CisrICAg
ICAgICAoRGlyZWN0aXZlSGFuZGxlcik6CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9j
ZXNzb3IvRGlyZWN0aXZlUGFyc2VyLmNwcDogUmVuYW1lZCBmcm9tIFNvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3NyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvbmV3L0RpcmVjdGl2ZVBhcnNlci5jcHAu
CisrICAgICAgICAoZ2V0RGlyZWN0aXZlKToKKysgICAgICAgIChpc0NvbmRpdGlvbmFsRGlyZWN0
aXZlKToKKysgICAgICAgIChpc0VPRCk6CisrICAgICAgICAoc2tpcFVudGlsRU9EKToKKysgICAg
ICAgIChpc01hY3JvTmFtZVJlc2VydmVkKToKKysgICAgICAgIChpc01hY3JvUHJlZGVmaW5lZCk6
CisrICAgICAgICAocHApOgorKyAgICAgICAgKERlZmluZWRQYXJzZXIpOgorKyAgICAgICAgKHBw
OjpEZWZpbmVkUGFyc2VyOjpEZWZpbmVkUGFyc2VyKToKKysgICAgICAgIChwcDo6RGVmaW5lZFBh
cnNlcjo6bGV4KToKKysgICAgICAgIChwcDo6RGlyZWN0aXZlUGFyc2VyOjpEaXJlY3RpdmVQYXJz
ZXIpOgorKyAgICAgICAgKHBwOjpEaXJlY3RpdmVQYXJzZXI6OmxleCk6CisrICAgICAgICAocHA6
OkRpcmVjdGl2ZVBhcnNlcjo6cGFyc2VEaXJlY3RpdmUpOgorKyAgICAgICAgKHBwOjpEaXJlY3Rp
dmVQYXJzZXI6OnBhcnNlRGVmaW5lKToKKysgICAgICAgIChwcDo6RGlyZWN0aXZlUGFyc2VyOjpw
YXJzZVVuZGVmKToKKysgICAgICAgIChwcDo6RGlyZWN0aXZlUGFyc2VyOjpwYXJzZUlmKToKKysg
ICAgICAgIChwcDo6RGlyZWN0aXZlUGFyc2VyOjpwYXJzZUlmZGVmKToKKysgICAgICAgIChwcDo6
RGlyZWN0aXZlUGFyc2VyOjpwYXJzZUlmbmRlZik6CisrICAgICAgICAocHA6OkRpcmVjdGl2ZVBh
cnNlcjo6cGFyc2VFbHNlKToKKysgICAgICAgIChwcDo6RGlyZWN0aXZlUGFyc2VyOjpwYXJzZUVs
aWYpOgorKyAgICAgICAgKHBwOjpEaXJlY3RpdmVQYXJzZXI6OnBhcnNlRW5kaWYpOgorKyAgICAg
ICAgKHBwOjpEaXJlY3RpdmVQYXJzZXI6OnBhcnNlRXJyb3IpOgorKyAgICAgICAgKHBwOjpEaXJl
Y3RpdmVQYXJzZXI6OnBhcnNlUHJhZ21hKToKKysgICAgICAgIChwcDo6RGlyZWN0aXZlUGFyc2Vy
OjpwYXJzZUV4dGVuc2lvbik6CisrICAgICAgICAocHA6OkRpcmVjdGl2ZVBhcnNlcjo6cGFyc2VW
ZXJzaW9uKToKKysgICAgICAgIChwcDo6RGlyZWN0aXZlUGFyc2VyOjpwYXJzZUxpbmUpOgorKyAg
ICAgICAgKHBwOjpEaXJlY3RpdmVQYXJzZXI6OnNraXBwaW5nKToKKysgICAgICAgIChwcDo6RGly
ZWN0aXZlUGFyc2VyOjpwYXJzZUNvbmRpdGlvbmFsSWYpOgorKyAgICAgICAgKHBwOjpEaXJlY3Rp
dmVQYXJzZXI6OnBhcnNlRXhwcmVzc2lvbklmKToKKysgICAgICAgIChwcDo6RGlyZWN0aXZlUGFy
c2VyOjpwYXJzZUV4cHJlc3Npb25JZmRlZik6CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVw
cm9jZXNzb3IvRGlyZWN0aXZlUGFyc2VyLmg6IFJlbmFtZWQgZnJvbSBTb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL25ldy9EaXJlY3RpdmVQYXJzZXIuaC4K
KysgICAgICAgIChwcCk6CisrICAgICAgICAoRGlyZWN0aXZlUGFyc2VyKToKKysgICAgICAgIChD
b25kaXRpb25hbEJsb2NrKToKKysgICAgICAgIChwcDo6RGlyZWN0aXZlUGFyc2VyOjpDb25kaXRp
b25hbEJsb2NrOjpDb25kaXRpb25hbEJsb2NrKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3By
ZXByb2Nlc3Nvci9FeHByZXNzaW9uUGFyc2VyLmNwcDogUmVuYW1lZCBmcm9tIFNvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvbmV3L0V4cHJlc3Npb25QYXJz
ZXIuY3BwLgorKyAgICAgICAgKHl5c3ludGF4X2Vycm9yKToKKysgICAgICAgICh5eWxleCk6Cisr
ICAgICAgICAoeXllcnJvcik6CisrICAgICAgICAocHApOgorKyAgICAgICAgKHBwOjpFeHByZXNz
aW9uUGFyc2VyOjpFeHByZXNzaW9uUGFyc2VyKToKKysgICAgICAgIChwcDo6RXhwcmVzc2lvblBh
cnNlcjo6cGFyc2UpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL0V4cHJl
c3Npb25QYXJzZXIuaDogUmVuYW1lZCBmcm9tIFNvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9j
b21waWxlci9wcmVwcm9jZXNzb3IvbmV3L0V4cHJlc3Npb25QYXJzZXIuaC4KKysgICAgICAgIChw
cCk6CisrICAgICAgICAoRXhwcmVzc2lvblBhcnNlcik6CisrICAgICAgICAqIHNyYy9jb21waWxl
ci9wcmVwcm9jZXNzb3IvRXhwcmVzc2lvblBhcnNlci55OiBSZW5hbWVkIGZyb20gU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9uZXcvRXhwcmVzc2lvblBh
cnNlci55LgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL0lucHV0LmNwcDog
UmVuYW1lZCBmcm9tIFNvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci9wcmVwcm9j
ZXNzb3IvbmV3L0lucHV0LmNwcC4KKysgICAgICAgIChwcCk6CisrICAgICAgICAocHA6OklucHV0
OjpJbnB1dCk6CisrICAgICAgICAocHA6OklucHV0OjpyZWFkKToKKysgICAgICAgICogc3JjL2Nv
bXBpbGVyL3ByZXByb2Nlc3Nvci9JbnB1dC5oOiBSZW5hbWVkIGZyb20gU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9uZXcvSW5wdXQuaC4KKysgICAgICAg
IChwcCk6CisrICAgICAgICAoSW5wdXQpOgorKyAgICAgICAgKHBwOjpJbnB1dDo6Y291bnQpOgor
KyAgICAgICAgKHBwOjpJbnB1dDo6c3RyaW5nKToKKysgICAgICAgIChwcDo6SW5wdXQ6Omxlbmd0
aCk6CisrICAgICAgICAoTG9jYXRpb24pOgorKyAgICAgICAgKHBwOjpJbnB1dDo6TG9jYXRpb246
OkxvY2F0aW9uKToKKysgICAgICAgIChwcDo6SW5wdXQ6OnJlYWRMb2MpOgorKyAgICAgICAgKiBz
cmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL0xleGVyLmNwcDogUmVuYW1lZCBmcm9tIFNvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvbmV3L0xleGVyLmNwcC4K
KysgICAgICAgIChwcCk6CisrICAgICAgICAocHA6OkxleGVyOjp+TGV4ZXIpOgorKyAgICAgICAg
KiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL0xleGVyLmg6IFJlbmFtZWQgZnJvbSBTb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL25ldy9MZXhlci5oLgor
KyAgICAgICAgKHBwKToKKysgICAgICAgIChMZXhlcik6CisrICAgICAgICAqIHNyYy9jb21waWxl
ci9wcmVwcm9jZXNzb3IvTWFjcm8uY3BwOiBSZW5hbWVkIGZyb20gU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9uZXcvTWFjcm8uY3BwLgorKyAgICAgICAg
KHBwKToKKysgICAgICAgIChwcDo6TWFjcm86OmVxdWFscyk6CisrICAgICAgICAqIHNyYy9jb21w
aWxlci9wcmVwcm9jZXNzb3IvTWFjcm8uaDogUmVuYW1lZCBmcm9tIFNvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3NyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvbmV3L01hY3JvLmguCisrICAgICAgICAo
cHApOgorKyAgICAgICAgKHBwOjpNYWNybzo6TWFjcm8pOgorKyAgICAgICAgKE1hY3JvKToKKysg
ICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9NYWNyb0V4cGFuZGVyLmNwcDogUmVu
YW1lZCBmcm9tIFNvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci9wcmVwcm9jZXNz
b3IvbmV3L01hY3JvRXhwYW5kZXIuY3BwLgorKyAgICAgICAgKHBwKToKKysgICAgICAgIChUb2tl
bkxleGVyKToKKysgICAgICAgIChwcDo6VG9rZW5MZXhlcjo6VG9rZW5MZXhlcik6CisrICAgICAg
ICAocHA6OlRva2VuTGV4ZXI6OmxleCk6CisrICAgICAgICAocHA6Ok1hY3JvRXhwYW5kZXI6Ok1h
Y3JvRXhwYW5kZXIpOgorKyAgICAgICAgKHBwOjpNYWNyb0V4cGFuZGVyOjp+TWFjcm9FeHBhbmRl
cik6CisrICAgICAgICAocHA6Ok1hY3JvRXhwYW5kZXI6OmxleCk6CisrICAgICAgICAocHA6Ok1h
Y3JvRXhwYW5kZXI6OmdldFRva2VuKToKKysgICAgICAgIChwcDo6TWFjcm9FeHBhbmRlcjo6dW5n
ZXRUb2tlbik6CisrICAgICAgICAocHA6Ok1hY3JvRXhwYW5kZXI6OmlzTmV4dFRva2VuTGVmdFBh
cmVuKToKKysgICAgICAgIChwcDo6TWFjcm9FeHBhbmRlcjo6cHVzaE1hY3JvKToKKysgICAgICAg
IChwcDo6TWFjcm9FeHBhbmRlcjo6cG9wTWFjcm8pOgorKyAgICAgICAgKHBwOjpNYWNyb0V4cGFu
ZGVyOjpleHBhbmRNYWNybyk6CisrICAgICAgICAocHA6Ok1hY3JvRXhwYW5kZXI6OmNvbGxlY3RN
YWNyb0FyZ3MpOgorKyAgICAgICAgKHBwOjpNYWNyb0V4cGFuZGVyOjpyZXBsYWNlTWFjcm9QYXJh
bXMpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL01hY3JvRXhwYW5kZXIu
aDogUmVuYW1lZCBmcm9tIFNvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci9wcmVw
cm9jZXNzb3IvbmV3L01hY3JvRXhwYW5kZXIuaC4KKysgICAgICAgIChwcCk6CisrICAgICAgICAo
TWFjcm9FeHBhbmRlcik6CisrICAgICAgICAoTWFjcm9Db250ZXh0KToKKysgICAgICAgIChwcDo6
TWFjcm9FeHBhbmRlcjo6TWFjcm9Db250ZXh0OjpNYWNyb0NvbnRleHQpOgorKyAgICAgICAgKHBw
OjpNYWNyb0V4cGFuZGVyOjpNYWNyb0NvbnRleHQ6OmVtcHR5KToKKysgICAgICAgIChwcDo6TWFj
cm9FeHBhbmRlcjo6TWFjcm9Db250ZXh0OjpnZXQpOgorKyAgICAgICAgKHBwOjpNYWNyb0V4cGFu
ZGVyOjpNYWNyb0NvbnRleHQ6OnVuZ2V0KToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXBy
b2Nlc3Nvci9QcmVwcm9jZXNzb3IuY3BwOiBSZW5hbWVkIGZyb20gU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9uZXcvUHJlcHJvY2Vzc29yLmNwcC4KKysg
ICAgICAgIChwcCk6CisrICAgICAgICAoUHJlcHJvY2Vzc29ySW1wbCk6CisrICAgICAgICAocHA6
OlByZXByb2Nlc3NvckltcGw6OlByZXByb2Nlc3NvckltcGwpOgorKyAgICAgICAgKHBwOjpQcmVw
cm9jZXNzb3I6OlByZXByb2Nlc3Nvcik6CisrICAgICAgICAocHA6OlByZXByb2Nlc3Nvcjo6flBy
ZXByb2Nlc3Nvcik6CisrICAgICAgICAocHA6OlByZXByb2Nlc3Nvcjo6aW5pdCk6CisrICAgICAg
ICAocHA6OlByZXByb2Nlc3Nvcjo6cHJlZGVmaW5lTWFjcm8pOgorKyAgICAgICAgKHBwOjpQcmVw
cm9jZXNzb3I6OmxleCk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvUHJl
cHJvY2Vzc29yLmg6IFJlbmFtZWQgZnJvbSBTb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29t
cGlsZXIvcHJlcHJvY2Vzc29yL25ldy9QcmVwcm9jZXNzb3IuaC4KKysgICAgICAgIChwcCk6Cisr
ICAgICAgICAoUHJlcHJvY2Vzc29yKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nl
c3Nvci9Tb3VyY2VMb2NhdGlvbi5oOiBSZW5hbWVkIGZyb20gU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9uZXcvU291cmNlTG9jYXRpb24uaC4KKysgICAg
ICAgIChwcCk6CisrICAgICAgICAocHA6OlNvdXJjZUxvY2F0aW9uOjpTb3VyY2VMb2NhdGlvbik6
CisrICAgICAgICAoU291cmNlTG9jYXRpb24pOgorKyAgICAgICAgKHBwOjpTb3VyY2VMb2NhdGlv
bjo6ZXF1YWxzKToKKysgICAgICAgIChwcDo6b3BlcmF0b3I9PSk6CisrICAgICAgICAocHA6Om9w
ZXJhdG9yIT0pOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL1Rva2VuLmNw
cDogUmVuYW1lZCBmcm9tIFNvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci9wcmVw
cm9jZXNzb3IvbmV3L1Rva2VuLmNwcC4KKysgICAgICAgIChwcCk6CisrICAgICAgICAocHA6OlRv
a2VuOjpyZXNldCk6CisrICAgICAgICAocHA6OlRva2VuOjplcXVhbHMpOgorKyAgICAgICAgKHBw
OjpUb2tlbjo6c2V0QXRTdGFydE9mTGluZSk6CisrICAgICAgICAocHA6OlRva2VuOjpzZXRIYXNM
ZWFkaW5nU3BhY2UpOgorKyAgICAgICAgKHBwOjpUb2tlbjo6c2V0RXhwYW5zaW9uRGlzYWJsZWQp
OgorKyAgICAgICAgKHBwOjpUb2tlbjo6aVZhbHVlKToKKysgICAgICAgIChwcDo6VG9rZW46OnVW
YWx1ZSk6CisrICAgICAgICAocHA6OlRva2VuOjpmVmFsdWUpOgorKyAgICAgICAgKHBwOjpvcGVy
YXRvcjw8KToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9Ub2tlbi5oOiBS
ZW5hbWVkIGZyb20gU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3ByZXByb2Nl
c3Nvci9uZXcvVG9rZW4uaC4KKysgICAgICAgIChwcCk6CisrICAgICAgICAocHA6OlRva2VuOjpU
b2tlbik6CisrICAgICAgICAoVG9rZW4pOgorKyAgICAgICAgKHBwOjpUb2tlbjo6YXRTdGFydE9m
TGluZSk6CisrICAgICAgICAocHA6OlRva2VuOjpoYXNMZWFkaW5nU3BhY2UpOgorKyAgICAgICAg
KHBwOjpUb2tlbjo6ZXhwYW5zaW9uRGlzYWJsZWQpOgorKyAgICAgICAgKHBwOjpvcGVyYXRvcj09
KToKKysgICAgICAgIChwcDo6b3BlcmF0b3IhPSk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9w
cmVwcm9jZXNzb3IvVG9rZW5pemVyLmNwcDogUmVuYW1lZCBmcm9tIFNvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3NyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvbmV3L1Rva2VuaXplci5jcHAuCisrICAg
ICAgICAoeXlfYnVmZmVyX3N0YXRlKToKKysgICAgICAgICh5eV90cmFuc19pbmZvKToKKysgICAg
ICAgICh5eWd1dHNfdCk6CisrICAgICAgICAoeXlfZ2V0X3ByZXZpb3VzX3N0YXRlKToKKysgICAg
ICAgICh5eV90cnlfTlVMX3RyYW5zKToKKysgICAgICAgIChpbnB1dCk6CisrICAgICAgICAocHBy
ZXN0YXJ0KToKKysgICAgICAgIChwcF9zd2l0Y2hfdG9fYnVmZmVyKToKKysgICAgICAgIChwcF9s
b2FkX2J1ZmZlcl9zdGF0ZSk6CisrICAgICAgICAocHBfY3JlYXRlX2J1ZmZlcik6CisrICAgICAg
ICAocHBfZGVsZXRlX2J1ZmZlcik6CisrICAgICAgICAocHBfaW5pdF9idWZmZXIpOgorKyAgICAg
ICAgKHBwX2ZsdXNoX2J1ZmZlcik6CisrICAgICAgICAocHBwdXNoX2J1ZmZlcl9zdGF0ZSk6Cisr
ICAgICAgICAocHBwb3BfYnVmZmVyX3N0YXRlKToKKysgICAgICAgIChwcGVuc3VyZV9idWZmZXJf
c3RhY2spOgorKyAgICAgICAgKHBwX3NjYW5fYnVmZmVyKToKKysgICAgICAgIChwcF9zY2FuX3N0
cmluZyk6CisrICAgICAgICAocHBfc2Nhbl9ieXRlcyk6CisrICAgICAgICAoeXlfZmF0YWxfZXJy
b3IpOgorKyAgICAgICAgKHBwZ2V0X2V4dHJhKToKKysgICAgICAgIChwcGdldF9saW5lbm8pOgor
KyAgICAgICAgKHBwZ2V0X2NvbHVtbik6CisrICAgICAgICAocHBnZXRfaW4pOgorKyAgICAgICAg
KHBwZ2V0X291dCk6CisrICAgICAgICAocHBnZXRfbGVuZyk6CisrICAgICAgICAocHBnZXRfdGV4
dCk6CisrICAgICAgICAocHBzZXRfZXh0cmEpOgorKyAgICAgICAgKHBwc2V0X2xpbmVubyk6Cisr
ICAgICAgICAocHBzZXRfY29sdW1uKToKKysgICAgICAgIChwcHNldF9pbik6CisrICAgICAgICAo
cHBzZXRfb3V0KToKKysgICAgICAgIChwcGdldF9kZWJ1Zyk6CisrICAgICAgICAocHBzZXRfZGVi
dWcpOgorKyAgICAgICAgKHBwZ2V0X2x2YWwpOgorKyAgICAgICAgKHBwc2V0X2x2YWwpOgorKyAg
ICAgICAgKHBwZ2V0X2xsb2MpOgorKyAgICAgICAgKHBwc2V0X2xsb2MpOgorKyAgICAgICAgKHBw
bGV4X2luaXQpOgorKyAgICAgICAgKHBwbGV4X2luaXRfZXh0cmEpOgorKyAgICAgICAgKHl5X2lu
aXRfZ2xvYmFscyk6CisrICAgICAgICAocHBsZXhfZGVzdHJveSk6CisrICAgICAgICAoeXlfZmxl
eF9zdHJuY3B5KToKKysgICAgICAgICh5eV9mbGV4X3N0cmxlbik6CisrICAgICAgICAocHBhbGxv
Yyk6CisrICAgICAgICAocHByZWFsbG9jKToKKysgICAgICAgIChwcGZyZWUpOgorKyAgICAgICAg
KHBwKToKKysgICAgICAgIChwcDo6VG9rZW5pemVyOjpUb2tlbml6ZXIpOgorKyAgICAgICAgKHBw
OjpUb2tlbml6ZXI6On5Ub2tlbml6ZXIpOgorKyAgICAgICAgKHBwOjpUb2tlbml6ZXI6OmluaXQp
OgorKyAgICAgICAgKHBwOjpUb2tlbml6ZXI6OnNldEZpbGVOdW1iZXIpOgorKyAgICAgICAgKHBw
OjpUb2tlbml6ZXI6OnNldExpbmVOdW1iZXIpOgorKyAgICAgICAgKHBwOjpUb2tlbml6ZXI6Omxl
eCk6CisrICAgICAgICAocHA6OlRva2VuaXplcjo6aW5pdFNjYW5uZXIpOgorKyAgICAgICAgKHBw
OjpUb2tlbml6ZXI6OmRlc3Ryb3lTY2FubmVyKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3By
ZXByb2Nlc3Nvci9Ub2tlbml6ZXIuaDogUmVuYW1lZCBmcm9tIFNvdXJjZS9UaGlyZFBhcnR5L0FO
R0xFL3NyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvbmV3L1Rva2VuaXplci5oLgorKyAgICAgICAg
KHBwKToKKysgICAgICAgIChUb2tlbml6ZXIpOgorKyAgICAgICAgKENvbnRleHQpOgorKyAgICAg
ICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL1Rva2VuaXplci5sOiBSZW5hbWVkIGZyb20g
U291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9uZXcvVG9r
ZW5pemVyLmwuCisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvYXRvbS5jOiBS
ZW1vdmVkLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL2F0b20uaDogUmVt
b3ZlZC4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9jb21waWxlLmg6IFJl
bW92ZWQuCisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvY3BwLmM6IFJlbW92
ZWQuCisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvY3BwLmg6IFJlbW92ZWQu
CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvY3Bwc3RydWN0LmM6IFJlbW92
ZWQuCisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvZ2VuZXJhdGVfcGFyc2Vy
LnNoOiBSZW5hbWVkIGZyb20gU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3By
ZXByb2Nlc3Nvci9uZXcvZ2VuZXJhdGVfcGFyc2VyLnNoLgorKyAgICAgICAgKiBzcmMvY29tcGls
ZXIvcHJlcHJvY2Vzc29yL21lbW9yeS5jOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvY29tcGls
ZXIvcHJlcHJvY2Vzc29yL21lbW9yeS5oOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvY29tcGls
ZXIvcHJlcHJvY2Vzc29yL25ldy9EaWFnbm9zdGljc0Jhc2UuY3BwOiBSZW1vdmVkLgorKyAgICAg
ICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL25ldy9uZXdfZmlsZS5jcHA6IFJlbW92ZWQu
CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvbmV3L25ld19maWxlMi5jcHA6
IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvbmV3L3ByZXBy
b2Nlc3Nvci52Y3Byb2o6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9j
ZXNzb3IvbnVtZXJpY19sZXguaDogQWRkZWQuCisrICAgICAgICAocHApOgorKyAgICAgICAgKHBw
OjpudW1lcmljX2Jhc2VfaW50KToKKysgICAgICAgIChwcDo6bnVtZXJpY19sZXhfaW50KToKKysg
ICAgICAgIChwcDo6bnVtZXJpY19sZXhfZmxvYXQpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIv
cHJlcHJvY2Vzc29yL3BhcnNlci5oOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIv
cHJlcHJvY2Vzc29yL3BwX3V0aWxzLmg6IFJlbmFtZWQgZnJvbSBTb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9zcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL25ldy9wcF91dGlscy5oLgorKyAgICAgICAg
KiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL3ByZXByb2Nlc3MuaDogUmVtb3ZlZC4KKysgICAg
ICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9zY2FubmVyLmM6IFJlbW92ZWQuCisrICAg
ICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3Ivc2Nhbm5lci5oOiBSZW1vdmVkLgorKyAg
ICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL3NsZ2xvYmFscy5oOiBSZW1vdmVkLgor
KyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL3N5bWJvbHMuYzogUmVtb3ZlZC4K
KysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9zeW1ib2xzLmg6IFJlbW92ZWQu
CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvdG9rZW5zLmM6IFJlbW92ZWQu
CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvdG9rZW5zLmg6IFJlbW92ZWQu
CisrICAgICAgICAqIHNyYy9saWJFR0wvQ29uZmlnLmNwcDogUmVtb3ZlZC4KKysgICAgICAgICog
c3JjL2xpYkVHTC9Db25maWcuaDogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xpYkVHTC9EaXNw
bGF5LmNwcDogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xpYkVHTC9EaXNwbGF5Lmg6IFJlbW92
ZWQuCisrICAgICAgICAqIHNyYy9saWJFR0wvUkVBRE1FOiBBZGRlZC4KKysgICAgICAgICogc3Jj
L2xpYkVHTC9TdXJmYWNlLmNwcDogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xpYkVHTC9TdXJm
YWNlLmg6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9saWJFR0wvbGliRUdMLmNwcDogUmVtb3Zl
ZC4KKysgICAgICAgICogc3JjL2xpYkVHTC9saWJFR0wuZGVmOiBSZW1vdmVkLgorKyAgICAgICAg
KiBzcmMvbGliRUdML2xpYkVHTC5yYzogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xpYkVHTC9s
aWJFR0wudmNwcm9qOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvbGliRUdML21haW4uY3BwOiBS
ZW1vdmVkLgorKyAgICAgICAgKiBzcmMvbGliRUdML21haW4uaDogUmVtb3ZlZC4KKysgICAgICAg
ICogc3JjL2xpYkVHTC9yZXNvdXJjZS5oOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvbGliR0xF
U3YyL0JsaXQuY3BwOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL0JsaXQuaDog
UmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9CdWZmZXIuY3BwOiBSZW1vdmVkLgor
KyAgICAgICAgKiBzcmMvbGliR0xFU3YyL0J1ZmZlci5oOiBSZW1vdmVkLgorKyAgICAgICAgKiBz
cmMvbGliR0xFU3YyL0NvbnRleHQuY3BwOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvbGliR0xF
U3YyL0NvbnRleHQuaDogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9GZW5jZS5j
cHA6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvRmVuY2UuaDogUmVtb3ZlZC4K
KysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9GcmFtZWJ1ZmZlci5jcHA6IFJlbW92ZWQuCisrICAg
ICAgICAqIHNyYy9saWJHTEVTdjIvRnJhbWVidWZmZXIuaDogUmVtb3ZlZC4KKysgICAgICAgICog
c3JjL2xpYkdMRVN2Mi9IYW5kbGVBbGxvY2F0b3IuY3BwOiBSZW1vdmVkLgorKyAgICAgICAgKiBz
cmMvbGliR0xFU3YyL0hhbmRsZUFsbG9jYXRvci5oOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMv
bGliR0xFU3YyL0luZGV4RGF0YU1hbmFnZXIuY3BwOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMv
bGliR0xFU3YyL0luZGV4RGF0YU1hbmFnZXIuaDogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xp
YkdMRVN2Mi9Qcm9ncmFtLmNwcDogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9Q
cm9ncmFtLmg6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvUHJvZ3JhbUJpbmFy
eS5jcHA6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvUHJvZ3JhbUJpbmFyeS5o
OiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1F1ZXJ5LmNwcDogUmVtb3ZlZC4K
KysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9RdWVyeS5oOiBSZW1vdmVkLgorKyAgICAgICAgKiBz
cmMvbGliR0xFU3YyL1JFQURNRTogQWRkZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvUmVu
ZGVyYnVmZmVyLmNwcDogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9SZW5kZXJi
dWZmZXIuaDogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9SZXNvdXJjZU1hbmFn
ZXIuY3BwOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1Jlc291cmNlTWFuYWdl
ci5oOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1NoYWRlci5jcHA6IFJlbW92
ZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvU2hhZGVyLmg6IFJlbW92ZWQuCisrICAgICAg
ICAqIHNyYy9saWJHTEVTdjIvVGV4dHVyZS5jcHA6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9s
aWJHTEVTdjIvVGV4dHVyZS5oOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1Zl
cnRleERhdGFNYW5hZ2VyLmNwcDogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9W
ZXJ0ZXhEYXRhTWFuYWdlci5oOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL2xp
YkdMRVN2Mi5jcHA6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvbGliR0xFU3Yy
LmRlZjogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9saWJHTEVTdjIucmM6IFJl
bW92ZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvbGliR0xFU3YyLnZjcHJvajogUmVtb3Zl
ZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9tYWluLmNwcDogUmVtb3ZlZC4KKysgICAgICAg
ICogc3JjL2xpYkdMRVN2Mi9tYWluLmg6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVT
djIvbWF0aHV0aWwuaDogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZXNvdXJj
ZS5oOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3V0aWxpdGllcy5jcHA6IFJl
bW92ZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvdXRpbGl0aWVzLmg6IFJlbW92ZWQuCisr
ICAgICAgICAqIHNyYy9saWJHTEVTdjIvdmVydGV4Y29udmVyc2lvbi5oOiBSZW1vdmVkLgorKwor
KzIwMTItMTItMTggIE1heCBWdWpvdmljICA8bXZ1am92aWNAYWRvYmUuY29tPgorKworKyAgICAg
ICAgW0FOR0xFXSBVc2Ugb2YgdW5pbml0aWFsaXplZCBtZW1vcnkgaW4gQXJyYXlCb3VuZHNDbGFt
cGVyCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA1
MjE4CisrCisrICAgICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisrCisrICAgICAgICBU
SW50ZXJtQmluYXJ5OjphZGRJbmRleENsYW1wIGlzIHVuaW5pdGlhbGl6ZWQgd2hlbiB0aGUgY29t
cGlsZSBmbGFnIAorKyAgICAgICAgU0hfQ0xBTVBfSU5ESVJFQ1RfQVJSQVlfQk9VTkRTIGlzIG5v
dCBzZXQuIFRoZW4sIGFkZEluZGV4Q2xhbXAgaXMgdXNlZCBpbiBPdXRwdXRHTFNMQmFzZS4gCisr
ICAgICAgICBDU1MgU2hhZGVycyBuZWVkcyB0byBkbyBhIGZpcnN0IHZhbGlkYXRpb24gcGFzcyB3
aXRob3V0IHRoZSBTSF9DTEFNUF9JTkRJUkVDVF9BUlJBWV9CT1VORFMgCisrICAgICAgICBmbGFn
IGFuZCBpdHMgZWZmZWN0cy4gSG93ZXZlciwgc29tZXRpbWVzIGFkZEluZGV4Q2xhbXAgaXMgdHJ1
ZSwgd2hpY2ggaW5zZXJ0cyBjbGFtcGluZyBjb2RlCisrICAgICAgICB0aGF0IGNhdXNlcyBhIHNo
YWRlciB0byBmYWlsIGNvbXBpbGF0aW9uIGF0IHRoZSBXZWJHTCBsZXZlbC4KKysKKysgICAgICAg
ICogc3JjL2NvbXBpbGVyL2ludGVybWVkaWF0ZS5oOgorKyAgICAgICAgKFRJbnRlcm1CaW5hcnk6
OlRJbnRlcm1CaW5hcnkpOgorKworKzIwMTItMTAtMjkgIEFuZGVycyBDYXJsc3NvbiAgPGFuZGVy
c2NhQGFwcGxlLmNvbT4KKysKKysgICAgICAgIEJ1aWxkIFdlYktpdCBhcyBDKysxMSBvbiBNYWMK
KysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDA3MjAK
KysKKysgICAgICAgIFJldmlld2VkIGJ5IERhbmllbCBCYXRlcy4KKysKKysgICAgICAgICogQ29u
ZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZzoKKysgICAgICAgIEFkZCBDTEFOR19DWFhfTEFOR1VB
R0VfU1RBTkRBUkQ9Z251KysweC4KKysKKysyMDEyLTEwLTI4ICBNYXJrIFJvd2UgIDxtcm93ZUBh
cHBsZS5jb20+CisrCisrICAgICAgICBTaW1wbGlmeSBYY29kZSBjb25maWd1cmF0aW9uIHNldHRp
bmdzIHRoYXQgdXNlZCB0byB2YXJ5IGJldHdlZW4gT1MgdmVyc2lvbnMuCisrCisrICAgICAgICBS
ZXZpZXdlZCBieSBEYW4gQmVybnN0ZWluLgorKworKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9C
YXNlLnhjY29uZmlnOgorKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9EZWJ1Z1JlbGVhc2UueGNj
b25maWc6CisrCisrMjAxMi0xMC0yOCAgTWFyayBSb3dlICA8bXJvd2VAYXBwbGUuY29tPgorKwor
KyAgICAgICAgUmVtb3ZlIHJlZmVyZW5jZXMgdG8gdW5zdXBwb3J0ZWQgT1MgYW5kIFhjb2RlIHZl
cnNpb25zLgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgQW5kZXJzIENhcmxzc29uLgorKworKyAg
ICAgICAgKiBDb25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnOgorKyAgICAgICAgKiBDb25maWd1
cmF0aW9ucy9Db21waWxlclZlcnNpb24ueGNjb25maWc6IFJlbW92ZWQuCisrICAgICAgICAqIENv
bmZpZ3VyYXRpb25zL0RlYnVnUmVsZWFzZS54Y2NvbmZpZzoKKysKKysyMDEyLTEwLTI3ICBEYW4g
QmVybnN0ZWluICA8bWl0ekBhcHBsZS5jb20+CisrCisrICAgICAgICBSRUFMX1BMQVRGT1JNX05B
TUUgYnVpbGQgc2V0dGluZyBpcyBubyBsb25nZXIgbmVlZGVkCisrICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTAwNTg3CisrCisrICAgICAgICBSZXZpZXdl
ZCBieSBNYXJrIFJvd2UuCisrCisrICAgICAgICBSZW1vdmVkIHRoZSBkZWZpbml0aW9uIG9mIFJF
QUxfUExBVEZPUk1fTkFNRSBhbmQgcmVwbGFjZWQgcmVmZXJlbmNlcyB0byBpdCB3aXRoIHJlZmVy
ZW5jZXMKKysgICAgICAgIHRvIFBMQVRGT1JNX05BTUUuCisrCisrICAgICAgICAqIENvbmZpZ3Vy
YXRpb25zL0Jhc2UueGNjb25maWc6CisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0NvbXBpbGVy
VmVyc2lvbi54Y2NvbmZpZzoKKysKKysyMDEyLTEwLTE4ICBEZWFuIEphY2tzb24gIDxkaW5vQGFw
cGxlLmNvbT4KKysKKysgICAgICAgIFNoYWRlciB0cmFuc2xhdG9yIG5lZWRzIG9wdGlvbiB0byBj
bGFtcCB1bmlmb3JtIGFycmF5IGFjY2Vzc2VzIGluIHZlcnRleCBzaGFkZXJzCisrICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTg5NzcKKysgICAgICAgIGh0
dHBzOi8vY29kZS5nb29nbGUuY29tL3AvYW5nbGVwcm9qZWN0L2lzc3Vlcy9kZXRhaWw/aWQ9NDkK
KysKKysgICAgICAgIFJldmlld2VkIGJ5IEFsb2sgUHJpeWFkYXJzaGkgYW5kIEtlbiBSdXNzZWxs
LgorKworKyAgICAgICAgV2ViR0wgZG9lcyBub3QgYWxsb3cgR0xTTCBjb2RlIHRvIGluZGV4IGEg
dW5pZm9ybSBhcnJheSBvdXRzaWRlIGl0cyBib3VuZHMuIEFkZCBhCisrICAgICAgICBmbGFnIHRv
IHRoZSBBTkdMRSBjb21waWxlciB0byBpbnNlcnQgY2xhbXAgc3RhdGVtZW50cyBhcm91bmQgc3Vj
aCBpbmRleGluZy4KKysgICAgICAgIFNpbmNlIGl0IGlzIHBvc3NpYmxlIHRvIGFjY2VzcyB2ZWMy
LzMvNCBhbmQgbWF0Mi8zLzQgY29tcG9uZW50cyBieSBhcnJheSBpbmRleGluZywKKysgICAgICAg
IHRoZXkgbXVzdCBiZSBzaW1pbGFybHkgY2xhbXBlZC4KKysKKysgICAgICAgIFVuZm9ydHVuYXRl
bHksIGl0IGlzIGN1cnJlbnRseSBub3QgcG9zc2libGUgdG8gYWx3YXlzIGRldGVybWluZSB0aGF0
IHRoZSBpbmRleGluZyBpcworKyAgICAgICAgb3BlcmF0aW5nIG9uIGEgdW5pZm9ybSB2YXJpYWJs
ZS4gRm9yIGV4YW1wbGUsIHN1cHBvc2Ugd2UgaGF2ZSAidW5pZm9ybSBtYXQ0IGEiLiBBTkdMRQor
KyAgICAgICAgaXMgY3VycmVudGx5IG5vdCBhYmxlIHRvIHRlbGwgdXMgdGhhdCB0aGUgcnZhbHVl
IG9mICJhWzBdIiBpcyBhIHVuaWZvcm0sIGp1c3QgdGhhdAorKyAgICAgICAgaXQgaGFzIGEgc2l6
ZSBvZiA0LiBUaGVyZWZvcmUsIHRoZSBjbGFtcGluZyBpcyBkb25lIG9uIGFsbCBpbmRpcmVjdCBh
cnJheSBpbmRleGluZy4KKysKKysgICAgICAgIFRoaXMgd2lsbCBoYXZlIGEgcGVyZm9ybWFuY2Ug
aW1wYWN0LiBGdXR1cmUgZW5oYW5jZW1lbnRzIG1heSBiZSBhYmxlIHRvIGRldGVybWluZQorKyAg
ICAgICAgY2FzZXMgd2hlcmUgdGhlIGNsYW1waW5nIGlzIG5vdCBuZWNlc3NhcnkuIEN1cnJlbnRs
eSBvbmx5IGRpcmVjdCBpbmRleGluZyBpcyBza2lwcGVkCisrICAgICAgICAoaS5lLiBsb29raW5n
IHVwIGEgdmFsdWUgdXNpbmcgYSBjb25zdGFudCBpbmRleCkuCisrCisrICAgICAgICBUaGUgY2xh
bXAgaW5zZXJ0aW9uIGlzIG9ubHkgcGVyZm9ybWVkIG9uIHRoZSBHTFNMIG91dHB1dC4gRGlyZWN0
M0QgYWxyZWFkeSBndWFyYW50ZWVzCisrICAgICAgICB0aGF0IG91dC1vZi1ib3VuZHMgdW5pZm9y
bSBhcnJheSBhY2Nlc3MgcmV0dXJucyBhIHplcm8gdmFsdWUuCisrCisrICAgICAgICAqIEFOR0xF
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisrICAgICAgICAqIFRhcmdldC5wcmk6CisrICAg
ICAgICAqIGluY2x1ZGUvR0xTTEFORy9TaGFkZXJMYW5nLmg6IE5ldyBjb21waWxlciBvcHRpb24u
CisrICAgICAgICAqIHNyYy9jb21waWxlci9BcnJheUJvdW5kc0NsYW1wZXIuY3BwOiBBZGRlZC4K
KysgICAgICAgIChBcnJheUJvdW5kc0NsYW1wZXI6OkFycmF5Qm91bmRzQ2xhbXBlcik6CisrICAg
ICAgICAoQXJyYXlCb3VuZHNDbGFtcGVyOjpPdXRwdXRDbGFtcGluZ0Z1bmN0aW9uRGVmaW5pdGlv
bik6IEluamVjdHMgYSBjbGFtcGluZyBmdW5jdGlvbiBmb3IgaW50ZWdlcnMgaW50byBHTFNMIHNv
dXJjZS4KKysgICAgICAgIChBcnJheUJvdW5kc0NsYW1wZXI6Ok1hcmtJbmRpcmVjdEFycmF5Qm91
bmRzRm9yQ2xhbXBpbmcpOiBFeGFtaW5lcyB0aGUgQVNUIGxvb2tpbmcgZm9yIG5vbi1kaXJlY3Qg
YXJyYXkgaW5kZXhpbmcuCisrICAgICAgICAqIHNyYy9jb21waWxlci9BcnJheUJvdW5kc0NsYW1w
ZXIuaDogQWRkZWQuCisrICAgICAgICAoQXJyYXlCb3VuZHNDbGFtcGVyKToKKysgICAgICAgIChB
cnJheUJvdW5kc0NsYW1wZXI6OkdldEFycmF5Qm91bmRzQ2xhbXBEZWZpbml0aW9uTmVlZGVkKToK
KysgICAgICAgIChBcnJheUJvdW5kc0NsYW1wZXI6OlNldEFycmF5Qm91bmRzQ2xhbXBEZWZpbml0
aW9uTmVlZGVkKTogTWFya3MgdGhlIG9iamVjdCBhcyBuZWVkaW5nIHRvIG91dHB1dCB0aGUgY2xh
bXBpbmcgZnVuY3Rpb24uCisrICAgICAgICAoQXJyYXlCb3VuZHNDbGFtcGVyOjpDbGVhbnVwKTog
UmVzZXRzIHRoZSBzdGF0ZSBzbyB0aGF0IHN1YnNlcXVlbnQgcnVucyBzdGFydCBmcmVzaC4KKysg
ICAgICAgICogc3JjL2NvbXBpbGVyL0NvbXBpbGVyLmNwcDoKKysgICAgICAgIChUQ29tcGlsZXI6
OmNvbXBpbGUpOiBSdW4gdGhlIGNsYW1waW5nIGNvZGUgaWYgdGhlIGNvbXBpbGUgb3B0aW9uIHdh
cyBzZXQuCisrICAgICAgICAoVENvbXBpbGVyOjpjbGVhclJlc3VsdHMpOgorKyAgICAgICAgKFRD
b21waWxlcjo6Z2V0QXJyYXlCb3VuZHNDbGFtcGVyKToKKysgICAgICAgICogc3JjL2NvbXBpbGVy
L091dHB1dEdMU0xCYXNlLmNwcDoKKysgICAgICAgIChUT3V0cHV0R0xTTEJhc2U6OnZpc2l0Qmlu
YXJ5KTogSWYgdGhlIGV4cHJlc3Npb24gaGFzIGJlZW4gZmxhZ2dlZCwgaW5zZXJ0IGFuIGFwcHJv
cHJpYXRlICJjbGFtcCIgc3RhdGVtZW50LgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvU2hIYW5k
bGUuaDoKKysgICAgICAgIChUQ29tcGlsZXIpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvVHJh
bnNsYXRvckVTU0wuY3BwOgorKyAgICAgICAgKFRyYW5zbGF0b3JFU1NMOjp0cmFuc2xhdGUpOgor
KyAgICAgICAgKiBzcmMvY29tcGlsZXIvVHJhbnNsYXRvckdMU0wuY3BwOgorKyAgICAgICAgKFRy
YW5zbGF0b3JHTFNMOjp0cmFuc2xhdGUpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvaW50ZXJt
T3V0LmNwcDoKKysgICAgICAgIChUVHlwZTo6Z2V0Q29tcGxldGVTdHJpbmcpOiBBZGQgYXJyYXkg
c2l6ZSB0byBpbnRlcm1lZGlhdGUgdHJlZSBvdXRwdXQuCisrICAgICAgICAqIHNyYy9jb21waWxl
ci9pbnRlcm1lZGlhdGUuaDoKKysgICAgICAgIChUSW50ZXJtQmluYXJ5OjpzZXRBZGRJbmRleENs
YW1wKTogTmV3IGZsYWcgZm9yIGluZGljYXRpbmcgYSBiaW5hcnkgZXhwcmVzc2lvbiBuZWVkcyBj
bGFtcGluZy4KKysgICAgICAgIChUSW50ZXJtQmluYXJ5OjpnZXRBZGRJbmRleENsYW1wKToKKysg
ICAgICAgIChUSW50ZXJtQmluYXJ5KToKKysKKysyMDEyLTA5LTEzICBNYXJrIFJvd2UgIDxtcm93
ZUBhcHBsZS5jb20+CisrCisrICAgICAgICA8cmRhcjovL3Byb2JsZW0vMTIyNTU3MjA+IEZpeCB0
aGUgYnVpbGQgd2l0aCBuZXdlciBDbGFuZworKworKyAgICAgICAgUmV2aWV3ZWQgYnkgU2FtIFdl
aW5pZy4KKysgICAgICAgIAorKyAgICAgICAgQ2xhbmcgZ2VuZXJhdGVzIGEgd2FybmluZyBhYm91
dCB0aGUgaW5jbHVzaW9uIG9mIHRyYWlsaW5nIGNvbW1hcyBvbiB0aGUgZmluYWwgZW51bSBpdGVt
IGFzIGl0J3MgYXBwYXJlbnRseQorKyAgICAgICAgYSBDKysxMSBleHRlbnNpb24uIFJlbW92ZSB0
aGVtLgorKyAgICAgICAgCisrICAgICAgICAqIHNyYy9jb21waWxlci9CYXNlVHlwZXMuaDoKKysg
ICAgICAgICogc3JjL2NvbXBpbGVyL0V4dGVuc2lvbkJlaGF2aW9yLmg6CisrICAgICAgICAqIHNy
Yy9jb21waWxlci9QYXJzZUhlbHBlci5jcHA6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6cGFy
c2VWZWN0b3JGaWVsZHMpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvaW50ZXJtZWRpYXRlLmg6
CisrCisrMjAxMi0wOS0xMyAgU2ltb24gSGF1c21hbm4gIDxzaW1vbi5oYXVzbWFubkBub2tpYS5j
b20+CisrCisrICAgICAgICBbUXRdIFRoZSBBTkdMRSBidWlsZCBvbiBXaW5kb3dzIGJyZWFrcyB3
aXRoIEdudVdpbjMyJ3MgZmxleCBiZWNhdXNlIGl0IGlzIHRvbyBvbGQKKysgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05NjM1OQorKworKyAgICAgICAgUmV2
aWV3ZWQgYnkgVG9yIEFybmUgVmVzdGLDuC4KKysKKysgICAgICAgIEdudVdpbjMyJ3MgZmxleCBp
cyAyLjUuNCBhbmQgdGhhdCBpcyB0b28gb2xkIGZvciBBTkdMRSdzIHByZXByb2Nlc3NvcgorKyAg
ICAgICAgbGV4ZXIuIFRoZSBvbmx5IHZpYWJsZSBhbHRlcm5hdGl2ZSBJIGNvdWxkIGZpbmQgb24g
V2luZG93cyB0aGF0IHByb3ZpZGVzCisrICAgICAgICBiaW5hcmllcyBpcyB0aGUgd2luZmxleGJp
c29uIGRpc3RyaWJ1dGlvbiAoaHR0cDovL3NvdXJjZWZvcmdlLm5ldC9wcm9qZWN0cy93aW5mbGV4
Ymlzb24vKSwKKysgICAgICAgIHNvIGxldCdzIHVzZSB0aGF0IG9uZSBpbnN0ZWFkLgorKworKyAg
ICAgICAgKiBEZXJpdmVkU291cmNlcy5wcmk6CisrCisrMjAxMi0wOS0xMiAgU2ltb24gSGF1c21h
bm4gIDxzaW1vbi5oYXVzbWFubkBub2tpYS5jb20+CisrCisrICAgICAgICBbUXRdIEJ1aWxkIG9u
IFdpbmRvd3MgcmVxdWlyZXMgYmlzb24vZmxleCBpbiBQQVRICisrICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTYzNTgKKysKKysgICAgICAgIFJldmlld2Vk
IGJ5IFRvciBBcm5lIFZlc3Riw7guCisrCisrICAgICAgICBVc2UgTUFLRUZJTEVfTk9PUF9DT01N
QU5EIGluc3RlYWQgb2YgdGhlIFxuXHQgdHJpY2sgdG8gZ2VuZXJhdGUgYSBkdW1teSBjb21tYW5k
LiBPdGhlcndpc2UKKysgICAgICAgIHRoZSBQQVRIIHByZXBlbmQgdHJpY2sgd2lsbCBicmVhayBi
ZWNhdXNlIGl0IGdlbmVyYXRlcyBhIGNvbW1hbmQgbGluZSBhbG9uZyB0aGUgbGluZXMgb2YKKysg
ICAgICAgIChzZXQgUEFUSD0iLi4uIikgJiYgd2l0aCBqdXN0IHRoYXQgdHJhaWxpbmcgYW1wZXJz
YW5kIHBhaXIuCisrCisrICAgICAgICAqIERlcml2ZWRTb3VyY2VzLnByaToKKysKKysyMDEyLTA5
LTEwICBEZWFuIEphY2tzb24gIDxkaW5vQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFtBcHBsZV0g
SW5zdGFsbCBwbGlzdCBmb3IgQXBwbGUgT3BlbiBTb3VyY2UgYnVpbGQgc3lzdGVtCisrICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTYzNDUKKysKKysgICAg
ICAgIFJldmlld2VkIGJ5IE1hcmsgUm93ZS4KKysKKysgICAgICAgIEFwcGxlJ3MgYnVpbGQgc3lz
dGVtIHJlcXVpcmVzIGEgY291cGxlIG9mIGZpbGVzIHRoYXQgZGVzY3JpYmUgd2hlcmUKKysgICAg
ICAgIHRoZSAzcmQgcGFydHkgT3BlbiBTb3VyY2UgbGlicmFyeSBjYW1lIGZyb20sIGFuZCB3aGF0
IGxpY2Vuc2UgaXQKKysgICAgICAgIHVzZXMuIFRoZXNlIGZpbGVzIGFyZSBjb3BpZWQgaW50byAv
dXNyL2xvY2FsIHdoZW4gdGhlIHByb2plY3QgaXMKKysgICAgICAgIGJlaW5nIGluc3RhbGxlZC4K
KysKKysgICAgICAgICogQU5HTEUucGxpc3Q6IEFkZGVkLgorKyAgICAgICAgKiBBTkdMRS50eHQ6
IEFkZGVkLgorKyAgICAgICAgKiBBTkdMRS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorKwor
KzIwMTItMDktMDYgIEFuZHJhcyBCZWNzaSAgPGFuZHJhcy5iZWNzaUBub2tpYS5jb20+CisrCisr
ICAgICAgICBbQU5HTEVdIEZpeCB0aGUgYnVpbGQgd2l0aCBnY2MgNC43CisrICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTU5ODkKKysKKysgICAgICAgIFJl
dmlld2VkIGJ5IENzYWJhIE9zenRyb2dvbsOhYy4KKysKKysgICAgICAgIFRoZSBidWlsZCBmYWls
cyBiZWNhdXNlIG9mIGEgYm9ndXMgd2FybmluZyBhYm91dCB0aGUgYXV0by1nZW5lcmF0ZWQKKysg
ICAgICAgIHBwbHZhbCB2YXJpYWJsZS4gVW5mb3J0dW5hdGVseSB0aGUgd2FybmluZyBpcyBjYWxs
ZWQgLVd1bmluaXRpYWxpemVkCisrICAgICAgICBpbiBnY2MgNC42IGFuZCAtV21heWJlLXVuaW5p
dGlhbGl6ZWQgaW4gZ2NjIDQuNyB0aHVzIHdlIGFsc28gbmVlZCB0bworKyAgICAgICAgaWdub3Jl
IHVua25vd24gcHJhZ21hcyBub3QgdG8gYnJlYWsgdGhlIGJ1aWxkIHdpdGggY29tcGlsZXJzIHRo
YXQgZG8KKysgICAgICAgIG5vdCByZWNvZ25pemUgdGhlc2Ugb3B0aW9ucy4KKysKKysgICAgICAg
ICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9uZXcvRXhwcmVzc2lvblBhcnNlci55OgorKwor
KzIwMTItMDktMDYgIFNpbW9uIEhhdXNtYW5uICA8c2ltb24uaGF1c21hbm5Abm9raWEuY29tPgor
KworKyAgICAgICAgW1F0XSBGaXggYnVpbGQgd2l0aCBBTkdMRSBvbiBwbGF0Zm9ybXMgdGhhdCBw
cm92aWRlIEVHTC9HTEVTdjIKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD05NTk2NQorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgVG9yIEFybmUgVmVzdGLD
uC4KKysKKysgICAgICAgIEFkZCBidWlsZCBydWxlcyB0byBidWlsZCBBTkdMRSBhcyBhIHN0YXRp
YyBsaWJyYXJ5IGZvciB0aGUgUXQgcG9ydC4KKysKKysgICAgICAgICogQU5HTEUucHJpOiBBZGRl
ZC4KKysgICAgICAgICogQU5HTEUucHJvOiBBZGRlZC4KKysgICAgICAgICogRGVyaXZlZFNvdXJj
ZXMucHJpOiBBZGRlZC4KKysgICAgICAgICogVGFyZ2V0LnByaTogQWRkZWQuCisrCisrMjAxMi0w
OC0yNCAgSm9zaHVhIE5ldHRlcmZpZWxkICA8am5ldHRlcmZpZWxkQHJpbS5jb20+CisrCisrICAg
ICAgICBbQ1NTIFNoYWRlcnNdIFtBTkdMRV0gUmVuYW1lRnVuY3Rpb246OlJlbmFtZUZ1bmN0aW9u
IG1heSBzdG9yZSByZWZlcmVuY2VzIHRvIHRlbXBvcmFyeSBzdHJpbmcKKysgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05NDczNgorKyAgICAgICAgaHR0cDov
L2NvZGUuZ29vZ2xlLmNvbS9wL2FuZ2xlcHJvamVjdC9pc3N1ZXMvZGV0YWlsP2lkPTM2MAorKwor
KyAgICAgICAgUmV2aWV3ZWQgYnkgR2VvcmdlIFN0YWlrb3MuCisrCisrICAgICAgICBXaGVuIFJl
bmFtZUZ1bmN0aW9uOjpSZW5hbWVGdW5jdGlvbihjb25zdCBUU3RyaW5nJiBvbGRGdW5jdGlvbk5h
bWUsIGNvbnN0IFRTdHJpbmcmCisrICAgICAgICBuZXdGdW5jdGlvbk5hbWUpIGlzIGNhbGxlZCBm
cm9tIFRDb21waWxlcjo6cmV3cml0ZUNTU1NoYWRlcihUSW50ZXJtTm9kZSopLCByZWZlcmVuY2Vz
IHRvCisrICAgICAgICB0aGUgdGVtcG9yYXJpZXMgb2xkRnVuY3Rpb25OYW1lIGFuZCBuZXdGdW5j
dGlvbk5hbWUgYXJlIHN0b3JlZCBhcyBtT2xkRnVuY3Rpb25OYW1lIGFuZAorKyAgICAgICAgbU5l
d0Z1bmN0aW9uTmFtZS4gVGhpcyByZXN1bHRzIGluIHVuZGVmaW5lZCBiZWhhdmlvdXIgaW4gdmlz
aXRBZ2dyZWdhdGUuCisrCisrICAgICAgICBUaGlzIHNhbWUgcGF0Y2ggaXMgYmVpbmcgYXBwbGll
ZCBpbiB1cHN0cmVhbSBBTkdMRSwgYW5kIGlzIG5lZWRlZCBmb3IgQ1NTIFNoYWRlcgorKyAgICAg
ICAgc2FuaXRpemF0aW9uLgorKworKyAgICAgICAgKiBzcmMvY29tcGlsZXIvUmVuYW1lRnVuY3Rp
b24uaDoKKysgICAgICAgIChSZW5hbWVGdW5jdGlvbjo6dmlzaXRBZ2dyZWdhdGUpOgorKyAgICAg
ICAgKFJlbmFtZUZ1bmN0aW9uKToKKysKKysyMDEyLTA3LTE4ICBLcmlzdMOzZiBLb3N6dHnDsyAg
PGtrcmlzdG9mQGluZi51LXN6ZWdlZC5odT4KKysKKysgICAgICAgIFtRdF0gQnVpbGRmaXggYWZ0
ZXIgcjEyMjg3MC4KKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD04OTAzOQorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgQ3NhYmEgT3N6dHJvZ29uw6FjCisr
CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvbmV3L01hY3JvRXhwYW5kZXIu
Y3BwOgorKyAgICAgICAgKHBwOjpNYWNyb0V4cGFuZGVyOjp1bmdldFRva2VuKToKKysKKysyMDEy
LTA3LTE3ICBNYXggVnVqb3ZpYyAgPG12dWpvdmljQGFkb2JlLmNvbT4KKysKKysgICAgICAgIFVw
ZGF0ZSBBTkdMRSBpbiBXZWJLaXQKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD04OTAzOQorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGVhbiBKYWNrc29u
IGFuZCBNYXJrIFJvd2UuCisrCisrICAgICAgICBVcGRhdGUgQU5HTEUgdG8gcjExNzAsIHdpdGgg
dGhlIGZvbGxvd2luZyBtb2RpZmljYXRpb25zOgorKworKyAgICAgICAgKDEpIFVzZSBCaXNvbiAy
LjMgaW5zdGVhZCBvZiBCaXNvbiAyLjQuMiB0byBnZW5lcmF0ZSBFeHByZXNzaW9uUGFyc2VyLmNw
cCBhbmQKKysgICAgICAgIGdsc2xhbmdfdGFiLmNwcC4gSSBoYWQgdG8gbW9kaWZ5IEV4cHJlc3Np
b25QYXJzZXIueSB0byBtYWtlIGl0IGNvbXBhdGlibGUgd2l0aCBCaXNvbgorKyAgICAgICAgMi4z
LiBUaGUgY2hhbmdlcyBoYXZlIGJlZW4gY29udHJpYnV0ZWQgYmFjayB0byBBTkdMRSBpbiByMTIy
NC4KKysKKysgICAgICAgICgyKSBDb250aW51ZSB0byByZWNvZ25pemUgUU5YIGFzIFBPU0lYIGlu
IEFOR0xFLiBUaGlzIGhhcyBiZWVuIGNvbnRyaWJ1dGVkIGJhY2sgdG8gQU5HTEUKKysgICAgICAg
IGluIHIxMjIzLgorKworKyAgICAgICAgKDMpIFJlbmFtZSBBTkdMRS9zcmMvY29tcGlsZXIvcHJl
cHJvY2Vzc29yL25ldy9EaWFnbm9zdGljLmNwcCB0byBEaWFnbm9zdGljQmFzZS5jcHAuCisrICAg
ICAgICBSZW5hbWUgQU5HTEUvc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9uZXcvRGlyZWN0aXZl
SGFuZGxlci5jcHAgdG8gRGlyZWN0aXZlSGFuZGxlckJhc2UuY3BwLgorKworKyAgICAgICAgV2l0
aCB0aGUgaW50cm9kdWN0aW9uIG9mIEFOR0xFJ3MgbmV3IHByZXByb2Nlc3NvciwgdGhlcmUgd2Vy
ZSB0d28gZmlsZXMgbmFtZWQgRGlhZ25vc3RpYy5jcHAKKysgICAgICAgIGluIEFOR0xFIHVuZGVy
IGRpZmZlcmVudCBmb2xkZXJzLiBUaGlzIGNhdXNlZCBwcm9ibGVtcyBvbiB0aGUgUVQgYnVpbGQg
d2hlbiB0aGVpciBvYmplY3QKKysgICAgICAgIGZpbGVzLCBib3RoIG5hbWVkIERpYWdub3N0aWMu
bywgdHJpZWQgdG8gZ28gaW4gdGhlIHNhbWUgZm9sZGVyLiBSZW5hbWluZyBvbmUgb2YgdGhlbSB0
bworKyAgICAgICAgRGlhZ25vc3RpY0Jhc2UuY3BwIGF2b2lkcyB0aGlzIGNvbmZsaWN0LiBUaGUg
c2FtZSBzaXR1YXRpb24gb2NjdXJyZWQgd2l0aAorKyAgICAgICAgRGlyZWN0aXZlSGFuZGxlci5j
cHAuIEkgd2lsbCB3b3JrIG9uIGNvbnRyaWJ1dGluZyB0aGlzIGNoYW5nZSBiYWNrIHRvIEFOR0xF
IGZvciBmdXR1cmUKKysgICAgICAgIHVwZGF0ZXMuCisrCisrICAgICAgICAoNCkgQWRkIHRoZSBm
b2xsb3dpbmcgbGluZXMgdG8gZ2xzbGFuZy55IGFuZCBFeHByZXNzaW9uUGFyc2VyLnk6CisrICAg
ICAgICAjZGVmaW5lIFlZRU5BQkxFX05MUyAwCisrICAgICAgICAjZGVmaW5lIFlZTFRZUEVfSVNf
VFJJVklBTCAxCisrCisrICAgICAgICBCaXNvbiAyLjMgZG9lc24ndCBmaXJzdCBjaGVjayB0aGF0
IHRoZXNlIG1hY3JvcyBhcmUgZGVmaW5lZCBiZWZvcmUgcmVhZGluZyB0aGVpciB2YWx1ZSwKKysg
ICAgICAgIHdoaWNoIGNhdXNlcyB0aGUgUVQgYnVpbGQgdG8gZmFpbC4KKysKKysgICAgICAgIFdl
IHdvcmsgYXJvdW5kIHRoaXMgaXNzdWUgaW4gdGhlIHNhbWUgd2F5IGluIENTU0dyYW1tYXIueS4K
KysKKysgICAgICAgIEkgd2lsbCB3b3JrIG9uIGNvbnRyaWJ1dGluZyB0aGlzIGNoYW5nZSBiYWNr
IHRvIEFOR0xFLgorKworKyAgICAgICAgKiBBTkdMRS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
OgorKyAgICAgICAgKiBpbmNsdWRlL0dMRVMyL2dsMmV4dC5oOgorKyAgICAgICAgKiBpbmNsdWRl
L0dMU0xBTkcvU2hhZGVyTGFuZy5oOgorKyAgICAgICAgKiBzcmMvYnVpbGRfYW5nbGUueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvajoKKysgICAgICAgICogc3JjL2NvbW1vbi9hbmdsZXV0aWxzLmg6
CisrICAgICAgICAqIHNyYy9jb21tb24vZGVidWcuY3BwOgorKyAgICAgICAgKGdsKToKKysgICAg
ICAgIChnbDo6b3V0cHV0KToKKysgICAgICAgIChnbDo6dHJhY2UpOgorKyAgICAgICAgKGdsOjpw
ZXJmQWN0aXZlKToKKysgICAgICAgIChnbDo6U2NvcGVkUGVyZkV2ZW50SGVscGVyOjpTY29wZWRQ
ZXJmRXZlbnRIZWxwZXIpOgorKyAgICAgICAgKGdsOjpTY29wZWRQZXJmRXZlbnRIZWxwZXI6On5T
Y29wZWRQZXJmRXZlbnRIZWxwZXIpOgorKyAgICAgICAgKiBzcmMvY29tbW9uL3ZlcnNpb24uaDoK
KysgICAgICAgICogc3JjL2NvbXBpbGVyL0J1aWx0SW5GdW5jdGlvbkVtdWxhdG9yLmNwcDoKKysg
ICAgICAgIChCdWlsdEluRnVuY3Rpb25FbXVsYXRvcjo6SWRlbnRpZnlGdW5jdGlvbik6CisrICAg
ICAgICAqIHNyYy9jb21waWxlci9CdWlsdEluRnVuY3Rpb25FbXVsYXRvci5oOgorKyAgICAgICAg
KiBzcmMvY29tcGlsZXIvQ29tcGlsZXIuY3BwOgorKyAgICAgICAgKGlzV2ViR0xCYXNlZFNwZWMp
OgorKyAgICAgICAgKFRDb21waWxlcjo6Y29tcGlsZSk6CisrICAgICAgICAoVENvbXBpbGVyOjpy
ZXdyaXRlQ1NTU2hhZGVyKToKKysgICAgICAgIChUQ29tcGlsZXI6OmVuZm9yY2VUaW1pbmdSZXN0
cmljdGlvbnMpOgorKyAgICAgICAgKFRDb21waWxlcjo6ZW5mb3JjZUZyYWdtZW50U2hhZGVyVGlt
aW5nUmVzdHJpY3Rpb25zKToKKysgICAgICAgIChUQ29tcGlsZXI6OmVuZm9yY2VWZXJ0ZXhTaGFk
ZXJUaW1pbmdSZXN0cmljdGlvbnMpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvRGV0ZWN0RGlz
Y29udGludWl0eS5jcHA6IEFkZGVkLgorKyAgICAgICAgKHNoOjpEZXRlY3RMb29wRGlzY29udGlu
dWl0eTo6dHJhdmVyc2UpOgorKyAgICAgICAgKHNoKToKKysgICAgICAgIChzaDo6RGV0ZWN0TG9v
cERpc2NvbnRpbnVpdHk6OnZpc2l0QnJhbmNoKToKKysgICAgICAgIChzaDo6RGV0ZWN0TG9vcERp
c2NvbnRpbnVpdHk6OnZpc2l0QWdncmVnYXRlKToKKysgICAgICAgIChzaDo6Y29udGFpbnNMb29w
RGlzY29udGludWl0eSk6CisrICAgICAgICAoc2g6OkRldGVjdEdyYWRpZW50T3BlcmF0aW9uOjp0
cmF2ZXJzZSk6CisrICAgICAgICAoc2g6OkRldGVjdEdyYWRpZW50T3BlcmF0aW9uOjp2aXNpdFVu
YXJ5KToKKysgICAgICAgIChzaDo6RGV0ZWN0R3JhZGllbnRPcGVyYXRpb246OnZpc2l0QWdncmVn
YXRlKToKKysgICAgICAgIChzaDo6Y29udGFpbnNHcmFkaWVudE9wZXJhdGlvbik6CisrICAgICAg
ICAqIHNyYy9jb21waWxlci9EZXRlY3REaXNjb250aW51aXR5Lmg6IEFkZGVkLgorKyAgICAgICAg
KHNoKToKKysgICAgICAgIChEZXRlY3RMb29wRGlzY29udGludWl0eSk6CisrICAgICAgICAoRGV0
ZWN0R3JhZGllbnRPcGVyYXRpb24pOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvRGlhZ25vc3Rp
Y3MuY3BwOiBBZGRlZC4KKysgICAgICAgIChURGlhZ25vc3RpY3M6OlREaWFnbm9zdGljcyk6Cisr
ICAgICAgICAoVERpYWdub3N0aWNzOjp+VERpYWdub3N0aWNzKToKKysgICAgICAgIChURGlhZ25v
c3RpY3M6OndyaXRlSW5mbyk6CisrICAgICAgICAoVERpYWdub3N0aWNzOjp3cml0ZURlYnVnKToK
KysgICAgICAgIChURGlhZ25vc3RpY3M6OnByaW50KToKKysgICAgICAgICogc3JjL2NvbXBpbGVy
L0RpYWdub3N0aWNzLmg6IEFkZGVkLgorKyAgICAgICAgKFREaWFnbm9zdGljcyk6CisrICAgICAg
ICAoVERpYWdub3N0aWNzOjppbmZvU2luayk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9EaXJl
Y3RpdmVIYW5kbGVyLmNwcDogQWRkZWQuCisrICAgICAgICAoZ2V0QmVoYXZpb3IpOgorKyAgICAg
ICAgKFREaXJlY3RpdmVIYW5kbGVyOjpURGlyZWN0aXZlSGFuZGxlcik6CisrICAgICAgICAoVERp
cmVjdGl2ZUhhbmRsZXI6On5URGlyZWN0aXZlSGFuZGxlcik6CisrICAgICAgICAoVERpcmVjdGl2
ZUhhbmRsZXI6OmhhbmRsZUVycm9yKToKKysgICAgICAgIChURGlyZWN0aXZlSGFuZGxlcjo6aGFu
ZGxlUHJhZ21hKToKKysgICAgICAgIChURGlyZWN0aXZlSGFuZGxlcjo6aGFuZGxlRXh0ZW5zaW9u
KToKKysgICAgICAgIChURGlyZWN0aXZlSGFuZGxlcjo6aGFuZGxlVmVyc2lvbik6CisrICAgICAg
ICAqIHNyYy9jb21waWxlci9EaXJlY3RpdmVIYW5kbGVyLmg6IEFkZGVkLgorKyAgICAgICAgKFRE
aXJlY3RpdmVIYW5kbGVyKToKKysgICAgICAgIChURGlyZWN0aXZlSGFuZGxlcjo6cHJhZ21hKToK
KysgICAgICAgIChURGlyZWN0aXZlSGFuZGxlcjo6ZXh0ZW5zaW9uQmVoYXZpb3IpOgorKyAgICAg
ICAgKiBzcmMvY29tcGlsZXIvRXh0ZW5zaW9uQmVoYXZpb3IuaDoKKysgICAgICAgIChnZXRCZWhh
dmlvclN0cmluZyk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9Jbml0aWFsaXplLmNwcDoKKysg
ICAgICAgIChCdWlsdEluQ29uc3RhbnRzKToKKysgICAgICAgIChUQnVpbHRJbnM6OmluaXRpYWxp
emUpOgorKyAgICAgICAgKElkZW50aWZ5QnVpbHRJbnMpOgorKyAgICAgICAgKiBzcmMvY29tcGls
ZXIvSW5pdGlhbGl6ZVBhcnNlQ29udGV4dC5jcHA6IEFkZGVkLgorKyAgICAgICAgKEluaXRpYWxp
emVQYXJzZUNvbnRleHRJbmRleCk6CisrICAgICAgICAoRnJlZVBhcnNlQ29udGV4dEluZGV4KToK
KysgICAgICAgIChJbml0aWFsaXplR2xvYmFsUGFyc2VDb250ZXh0KToKKysgICAgICAgIChGcmVl
UGFyc2VDb250ZXh0KToKKysgICAgICAgIChHZXRHbG9iYWxQYXJzZUNvbnRleHQpOgorKyAgICAg
ICAgKiBzcmMvY29tcGlsZXIvSW5pdGlhbGl6ZVBhcnNlQ29udGV4dC5oOgorKyAgICAgICAgKFRU
aHJlYWRQYXJzZUNvbnRleHRSZWMpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvSW50ZXJtZWRp
YXRlLmNwcDoKKysgICAgICAgIChUSW50ZXJtZWRpYXRlOjphZGRTZWxlY3Rpb24pOgorKyAgICAg
ICAgKiBzcmMvY29tcGlsZXIvTWFwTG9uZ1ZhcmlhYmxlTmFtZXMuY3BwOgorKyAgICAgICAgKiBz
cmMvY29tcGlsZXIvT3V0cHV0SExTTC5jcHA6CisrICAgICAgICAoc2g6OnN0cik6CisrICAgICAg
ICAoc2g6Ok91dHB1dEhMU0w6Ok91dHB1dEhMU0wpOgorKyAgICAgICAgKHNoOjpPdXRwdXRITFNM
Ojp+T3V0cHV0SExTTCk6CisrICAgICAgICAoc2g6Ok91dHB1dEhMU0w6Om91dHB1dCk6CisrICAg
ICAgICAoc2g6Ok91dHB1dEhMU0w6OmhlYWRlcik6CisrICAgICAgICAoc2g6Ok91dHB1dEhMU0w6
OnZpc2l0QmluYXJ5KToKKysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6dmlzaXRVbmFyeSk6Cisr
ICAgICAgICAoc2g6Ok91dHB1dEhMU0w6OnZpc2l0QWdncmVnYXRlKToKKysgICAgICAgIChzaDo6
T3V0cHV0SExTTDo6dmlzaXRTZWxlY3Rpb24pOgorKyAgICAgICAgKHNoOjpPdXRwdXRITFNMOjp2
aXNpdExvb3ApOgorKyAgICAgICAgKHNoOjpPdXRwdXRITFNMOjp0cmF2ZXJzZVN0YXRlbWVudHMp
OgorKyAgICAgICAgKHNoKToKKysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6aGFuZGxlRXhjZXNz
aXZlTG9vcCk6CisrICAgICAgICAoc2g6Ok91dHB1dEhMU0w6OnR5cGVTdHJpbmcpOgorKyAgICAg
ICAgKHNoOjpPdXRwdXRITFNMOjphZGRDb25zdHJ1Y3Rvcik6CisrICAgICAgICAoc2g6Ok91dHB1
dEhMU0w6OmRlY29yYXRlRmllbGQpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvT3V0cHV0SExT
TC5oOgorKyAgICAgICAgKHNoKToKKysgICAgICAgIChPdXRwdXRITFNMKToKKysgICAgICAgICog
c3JjL2NvbXBpbGVyL1BhcnNlSGVscGVyLmNwcDoKKysgICAgICAgIChUUGFyc2VDb250ZXh0Ojpw
YXJzZVZlY3RvckZpZWxkcyk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6cGFyc2VNYXRyaXhG
aWVsZHMpOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OmVycm9yKToKKysgICAgICAgIChUUGFy
c2VDb250ZXh0Ojp3YXJuaW5nKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0Ojp0cmFjZSk6Cisr
ICAgICAgICAoVFBhcnNlQ29udGV4dDo6YXNzaWduRXJyb3IpOgorKyAgICAgICAgKFRQYXJzZUNv
bnRleHQ6OnVuYXJ5T3BFcnJvcik6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6YmluYXJ5T3BF
cnJvcik6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6cHJlY2lzaW9uRXJyb3JDaGVjayk6Cisr
ICAgICAgICAoVFBhcnNlQ29udGV4dDo6bFZhbHVlRXJyb3JDaGVjayk6CisrICAgICAgICAoVFBh
cnNlQ29udGV4dDo6Y29uc3RFcnJvckNoZWNrKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0Ojpp
bnRlZ2VyRXJyb3JDaGVjayk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6Z2xvYmFsRXJyb3JD
aGVjayk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6cmVzZXJ2ZWRFcnJvckNoZWNrKToKKysg
ICAgICAgIChUUGFyc2VDb250ZXh0Ojpjb25zdHJ1Y3RvckVycm9yQ2hlY2spOgorKyAgICAgICAg
KFRQYXJzZUNvbnRleHQ6OnZvaWRFcnJvckNoZWNrKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0
Ojpib29sRXJyb3JDaGVjayk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6c2FtcGxlckVycm9y
Q2hlY2spOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OnN0cnVjdFF1YWxpZmllckVycm9yQ2hl
Y2spOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OnBhcmFtZXRlclNhbXBsZXJFcnJvckNoZWNr
KToKKysgICAgICAgIChUUGFyc2VDb250ZXh0OjphcnJheVNpemVFcnJvckNoZWNrKToKKysgICAg
ICAgIChUUGFyc2VDb250ZXh0OjphcnJheVF1YWxpZmllckVycm9yQ2hlY2spOgorKyAgICAgICAg
KFRQYXJzZUNvbnRleHQ6OmFycmF5VHlwZUVycm9yQ2hlY2spOgorKyAgICAgICAgKFRQYXJzZUNv
bnRleHQ6OmFycmF5RXJyb3JDaGVjayk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6YXJyYXlT
ZXRNYXhTaXplKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0Ojpub25Jbml0Q29uc3RFcnJvckNo
ZWNrKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0Ojpub25Jbml0RXJyb3JDaGVjayk6CisrICAg
ICAgICAoVFBhcnNlQ29udGV4dDo6cGFyYW1FcnJvckNoZWNrKToKKysgICAgICAgIChUUGFyc2VD
b250ZXh0OjpleHRlbnNpb25FcnJvckNoZWNrKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0Ojpz
dXBwb3J0c0V4dGVuc2lvbik6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6aGFuZGxlRXh0ZW5z
aW9uRGlyZWN0aXZlKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0OjpoYW5kbGVQcmFnbWFEaXJl
Y3RpdmUpOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OmZpbmRGdW5jdGlvbik6CisrICAgICAg
ICAoVFBhcnNlQ29udGV4dDo6ZXhlY3V0ZUluaXRpYWxpemVyKToKKysgICAgICAgIChUUGFyc2VD
b250ZXh0Ojpjb25zdHJ1Y3RCdWlsdEluKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0Ojpjb25z
dHJ1Y3RTdHJ1Y3QpOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OmFkZENvbnN0VmVjdG9yTm9k
ZSk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6YWRkQ29uc3RNYXRyaXhOb2RlKToKKysgICAg
ICAgIChUUGFyc2VDb250ZXh0OjphZGRDb25zdEFycmF5Tm9kZSk6CisrICAgICAgICAoVFBhcnNl
Q29udGV4dDo6YWRkQ29uc3RTdHJ1Y3QpOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OmVudGVy
U3RydWN0RGVjbGFyYXRpb24pOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OnN0cnVjdE5lc3Rp
bmdFcnJvckNoZWNrKToKKysgICAgICAgIChQYVBhcnNlU3RyaW5ncyk6CisrICAgICAgICAqIHNy
Yy9jb21waWxlci9QYXJzZUhlbHBlci5oOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OlRQYXJz
ZUNvbnRleHQpOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQpOgorKyAgICAgICAgKFRQYXJzZUNv
bnRleHQ6OmluZm9TaW5rKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0OjpleHRlbnNpb25CZWhh
dmlvcik6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6cHJhZ21hKToKKysgICAgICAgICogc3Jj
L2NvbXBpbGVyL1Bvb2xBbGxvYy5jcHA6CisrICAgICAgICAoVEFsbG9jYXRpb246OmNoZWNrR3Vh
cmRCbG9jayk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9QcmFnbWEuaDogQWRkZWQuCisrICAg
ICAgICAoVFByYWdtYSk6CisrICAgICAgICAoVFByYWdtYTo6VFByYWdtYSk6CisrICAgICAgICAq
IHNyYy9jb21waWxlci9SZW5hbWVGdW5jdGlvbi5oOiBBZGRlZC4KKysgICAgICAgIChSZW5hbWVG
dW5jdGlvbik6CisrICAgICAgICAoUmVuYW1lRnVuY3Rpb246OlJlbmFtZUZ1bmN0aW9uKToKKysg
ICAgICAgIChSZW5hbWVGdW5jdGlvbjo6dmlzaXRBZ2dyZWdhdGUpOgorKyAgICAgICAgKiBzcmMv
Y29tcGlsZXIvU2hIYW5kbGUuaDoKKysgICAgICAgIChUQ29tcGlsZXIpOgorKyAgICAgICAgKiBz
cmMvY29tcGlsZXIvU2hhZGVyTGFuZy5jcHA6CisrICAgICAgICAoZ2V0VmFyaWFibGVJbmZvKToK
KysgICAgICAgICogc3JjL2NvbXBpbGVyL1N5bWJvbFRhYmxlLmNwcDoKKysgICAgICAgIChUVHlw
ZTo6YnVpbGRNYW5nbGVkTmFtZSk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9UcmFuc2xhdG9y
SExTTC5jcHA6CisrICAgICAgICAqIHNyYy9jb21waWxlci9VbmZvbGRTZWxlY3QuY3BwOiBSZW1v
dmVkLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvVW5mb2xkU2VsZWN0Lmg6IFJlbW92ZWQuCisr
ICAgICAgICAqIHNyYy9jb21waWxlci9VbmZvbGRTaG9ydENpcmN1aXQuY3BwOiBBZGRlZC4KKysg
ICAgICAgIChzaDo6VW5mb2xkU2hvcnRDaXJjdWl0OjpVbmZvbGRTaG9ydENpcmN1aXQpOgorKyAg
ICAgICAgKHNoKToKKysgICAgICAgIChzaDo6VW5mb2xkU2hvcnRDaXJjdWl0Ojp0cmF2ZXJzZSk6
CisrICAgICAgICAoc2g6OlVuZm9sZFNob3J0Q2lyY3VpdDo6dmlzaXRCaW5hcnkpOgorKyAgICAg
ICAgKHNoOjpVbmZvbGRTaG9ydENpcmN1aXQ6OnZpc2l0U2VsZWN0aW9uKToKKysgICAgICAgIChz
aDo6VW5mb2xkU2hvcnRDaXJjdWl0Ojp2aXNpdExvb3ApOgorKyAgICAgICAgKHNoOjpVbmZvbGRT
aG9ydENpcmN1aXQ6OmdldE5leHRUZW1wb3JhcnlJbmRleCk6CisrICAgICAgICAqIHNyYy9jb21w
aWxlci9VbmZvbGRTaG9ydENpcmN1aXQuaDogQWRkZWQuCisrICAgICAgICAoc2gpOgorKyAgICAg
ICAgKFVuZm9sZFNob3J0Q2lyY3VpdCk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9WYWxpZGF0
ZUxpbWl0YXRpb25zLmNwcDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL2RlYnVnLmNwcDoKKysg
ICAgICAgICogc3JjL2NvbXBpbGVyL2RlcGdyYXBoOiBBZGRlZC4KKysgICAgICAgICogc3JjL2Nv
bXBpbGVyL2RlcGdyYXBoL0RlcGVuZGVuY3lHcmFwaC5jcHA6IEFkZGVkLgorKyAgICAgICAgKFRE
ZXBlbmRlbmN5R3JhcGg6OlREZXBlbmRlbmN5R3JhcGgpOgorKyAgICAgICAgKFREZXBlbmRlbmN5
R3JhcGg6On5URGVwZW5kZW5jeUdyYXBoKToKKysgICAgICAgIChURGVwZW5kZW5jeUdyYXBoOjpj
cmVhdGVBcmd1bWVudCk6CisrICAgICAgICAoVERlcGVuZGVuY3lHcmFwaDo6Y3JlYXRlRnVuY3Rp
b25DYWxsKToKKysgICAgICAgIChURGVwZW5kZW5jeUdyYXBoOjpnZXRPckNyZWF0ZVN5bWJvbCk6
CisrICAgICAgICAoVERlcGVuZGVuY3lHcmFwaDo6Y3JlYXRlU2VsZWN0aW9uKToKKysgICAgICAg
IChURGVwZW5kZW5jeUdyYXBoOjpjcmVhdGVMb29wKToKKysgICAgICAgIChURGVwZW5kZW5jeUdy
YXBoOjpjcmVhdGVMb2dpY2FsT3ApOgorKyAgICAgICAgKFRHcmFwaExvZ2ljYWxPcDo6Z2V0T3BT
dHJpbmcpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvZGVwZ3JhcGgvRGVwZW5kZW5jeUdyYXBo
Lmg6IEFkZGVkLgorKyAgICAgICAgKFRHcmFwaE5vZGUpOgorKyAgICAgICAgKFRHcmFwaE5vZGU6
OlRHcmFwaE5vZGUpOgorKyAgICAgICAgKFRHcmFwaE5vZGU6On5UR3JhcGhOb2RlKToKKysgICAg
ICAgIChUR3JhcGhQYXJlbnROb2RlKToKKysgICAgICAgIChUR3JhcGhQYXJlbnROb2RlOjpUR3Jh
cGhQYXJlbnROb2RlKToKKysgICAgICAgIChUR3JhcGhQYXJlbnROb2RlOjp+VEdyYXBoUGFyZW50
Tm9kZSk6CisrICAgICAgICAoVEdyYXBoUGFyZW50Tm9kZTo6YWRkRGVwZW5kZW50Tm9kZSk6Cisr
ICAgICAgICAoVEdyYXBoQXJndW1lbnQpOgorKyAgICAgICAgKFRHcmFwaEFyZ3VtZW50OjpUR3Jh
cGhBcmd1bWVudCk6CisrICAgICAgICAoVEdyYXBoQXJndW1lbnQ6On5UR3JhcGhBcmd1bWVudCk6
CisrICAgICAgICAoVEdyYXBoQXJndW1lbnQ6OmdldEludGVybUZ1bmN0aW9uQ2FsbCk6CisrICAg
ICAgICAoVEdyYXBoQXJndW1lbnQ6OmdldEFyZ3VtZW50TnVtYmVyKToKKysgICAgICAgIChUR3Jh
cGhGdW5jdGlvbkNhbGwpOgorKyAgICAgICAgKFRHcmFwaEZ1bmN0aW9uQ2FsbDo6VEdyYXBoRnVu
Y3Rpb25DYWxsKToKKysgICAgICAgIChUR3JhcGhGdW5jdGlvbkNhbGw6On5UR3JhcGhGdW5jdGlv
bkNhbGwpOgorKyAgICAgICAgKFRHcmFwaEZ1bmN0aW9uQ2FsbDo6Z2V0SW50ZXJtRnVuY3Rpb25D
YWxsKToKKysgICAgICAgIChUR3JhcGhTeW1ib2wpOgorKyAgICAgICAgKFRHcmFwaFN5bWJvbDo6
VEdyYXBoU3ltYm9sKToKKysgICAgICAgIChUR3JhcGhTeW1ib2w6On5UR3JhcGhTeW1ib2wpOgor
KyAgICAgICAgKFRHcmFwaFN5bWJvbDo6Z2V0SW50ZXJtU3ltYm9sKToKKysgICAgICAgIChUR3Jh
cGhTZWxlY3Rpb24pOgorKyAgICAgICAgKFRHcmFwaFNlbGVjdGlvbjo6VEdyYXBoU2VsZWN0aW9u
KToKKysgICAgICAgIChUR3JhcGhTZWxlY3Rpb246On5UR3JhcGhTZWxlY3Rpb24pOgorKyAgICAg
ICAgKFRHcmFwaFNlbGVjdGlvbjo6Z2V0SW50ZXJtU2VsZWN0aW9uKToKKysgICAgICAgIChUR3Jh
cGhMb29wKToKKysgICAgICAgIChUR3JhcGhMb29wOjpUR3JhcGhMb29wKToKKysgICAgICAgIChU
R3JhcGhMb29wOjp+VEdyYXBoTG9vcCk6CisrICAgICAgICAoVEdyYXBoTG9vcDo6Z2V0SW50ZXJt
TG9vcCk6CisrICAgICAgICAoVEdyYXBoTG9naWNhbE9wKToKKysgICAgICAgIChUR3JhcGhMb2dp
Y2FsT3A6OlRHcmFwaExvZ2ljYWxPcCk6CisrICAgICAgICAoVEdyYXBoTG9naWNhbE9wOjp+VEdy
YXBoTG9naWNhbE9wKToKKysgICAgICAgIChUR3JhcGhMb2dpY2FsT3A6OmdldEludGVybUxvZ2lj
YWxPcCk6CisrICAgICAgICAoVERlcGVuZGVuY3lHcmFwaCk6CisrICAgICAgICAoVERlcGVuZGVu
Y3lHcmFwaDo6YmVnaW4pOgorKyAgICAgICAgKFREZXBlbmRlbmN5R3JhcGg6OmVuZCk6CisrICAg
ICAgICAoVERlcGVuZGVuY3lHcmFwaDo6YmVnaW5TYW1wbGVyU3ltYm9scyk6CisrICAgICAgICAo
VERlcGVuZGVuY3lHcmFwaDo6ZW5kU2FtcGxlclN5bWJvbHMpOgorKyAgICAgICAgKFREZXBlbmRl
bmN5R3JhcGg6OmJlZ2luVXNlckRlZmluZWRGdW5jdGlvbkNhbGxzKToKKysgICAgICAgIChURGVw
ZW5kZW5jeUdyYXBoOjplbmRVc2VyRGVmaW5lZEZ1bmN0aW9uQ2FsbHMpOgorKyAgICAgICAgKFRE
ZXBlbmRlbmN5R3JhcGhUcmF2ZXJzZXIpOgorKyAgICAgICAgKFREZXBlbmRlbmN5R3JhcGhUcmF2
ZXJzZXI6OlREZXBlbmRlbmN5R3JhcGhUcmF2ZXJzZXIpOgorKyAgICAgICAgKFREZXBlbmRlbmN5
R3JhcGhUcmF2ZXJzZXI6OnZpc2l0U3ltYm9sKToKKysgICAgICAgIChURGVwZW5kZW5jeUdyYXBo
VHJhdmVyc2VyOjp2aXNpdEFyZ3VtZW50KToKKysgICAgICAgIChURGVwZW5kZW5jeUdyYXBoVHJh
dmVyc2VyOjp2aXNpdEZ1bmN0aW9uQ2FsbCk6CisrICAgICAgICAoVERlcGVuZGVuY3lHcmFwaFRy
YXZlcnNlcjo6dmlzaXRTZWxlY3Rpb24pOgorKyAgICAgICAgKFREZXBlbmRlbmN5R3JhcGhUcmF2
ZXJzZXI6OnZpc2l0TG9vcCk6CisrICAgICAgICAoVERlcGVuZGVuY3lHcmFwaFRyYXZlcnNlcjo6
dmlzaXRMb2dpY2FsT3ApOgorKyAgICAgICAgKFREZXBlbmRlbmN5R3JhcGhUcmF2ZXJzZXI6Omdl
dERlcHRoKToKKysgICAgICAgIChURGVwZW5kZW5jeUdyYXBoVHJhdmVyc2VyOjppbmNyZW1lbnRE
ZXB0aCk6CisrICAgICAgICAoVERlcGVuZGVuY3lHcmFwaFRyYXZlcnNlcjo6ZGVjcmVtZW50RGVw
dGgpOgorKyAgICAgICAgKFREZXBlbmRlbmN5R3JhcGhUcmF2ZXJzZXI6OmNsZWFyVmlzaXRlZCk6
CisrICAgICAgICAoVERlcGVuZGVuY3lHcmFwaFRyYXZlcnNlcjo6bWFya1Zpc2l0ZWQpOgorKyAg
ICAgICAgKFREZXBlbmRlbmN5R3JhcGhUcmF2ZXJzZXI6OmlzVmlzaXRlZCk6CisrICAgICAgICAq
IHNyYy9jb21waWxlci9kZXBncmFwaC9EZXBlbmRlbmN5R3JhcGhCdWlsZGVyLmNwcDogQWRkZWQu
CisrICAgICAgICAoVERlcGVuZGVuY3lHcmFwaEJ1aWxkZXI6OmJ1aWxkKToKKysgICAgICAgIChU
RGVwZW5kZW5jeUdyYXBoQnVpbGRlcjo6dmlzaXRBZ2dyZWdhdGUpOgorKyAgICAgICAgKFREZXBl
bmRlbmN5R3JhcGhCdWlsZGVyOjp2aXNpdEZ1bmN0aW9uRGVmaW5pdGlvbik6CisrICAgICAgICAo
VERlcGVuZGVuY3lHcmFwaEJ1aWxkZXI6OnZpc2l0RnVuY3Rpb25DYWxsKToKKysgICAgICAgIChU
RGVwZW5kZW5jeUdyYXBoQnVpbGRlcjo6dmlzaXRBZ2dyZWdhdGVDaGlsZHJlbik6CisrICAgICAg
ICAoVERlcGVuZGVuY3lHcmFwaEJ1aWxkZXI6OnZpc2l0U3ltYm9sKToKKysgICAgICAgIChURGVw
ZW5kZW5jeUdyYXBoQnVpbGRlcjo6dmlzaXRCaW5hcnkpOgorKyAgICAgICAgKFREZXBlbmRlbmN5
R3JhcGhCdWlsZGVyOjp2aXNpdEFzc2lnbm1lbnQpOgorKyAgICAgICAgKFREZXBlbmRlbmN5R3Jh
cGhCdWlsZGVyOjp2aXNpdExvZ2ljYWxPcCk6CisrICAgICAgICAoVERlcGVuZGVuY3lHcmFwaEJ1
aWxkZXI6OnZpc2l0QmluYXJ5Q2hpbGRyZW4pOgorKyAgICAgICAgKFREZXBlbmRlbmN5R3JhcGhC
dWlsZGVyOjp2aXNpdFNlbGVjdGlvbik6CisrICAgICAgICAoVERlcGVuZGVuY3lHcmFwaEJ1aWxk
ZXI6OnZpc2l0TG9vcCk6CisrICAgICAgICAoVERlcGVuZGVuY3lHcmFwaEJ1aWxkZXI6OmNvbm5l
Y3RNdWx0aXBsZU5vZGVzVG9TaW5nbGVOb2RlKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL2Rl
cGdyYXBoL0RlcGVuZGVuY3lHcmFwaEJ1aWxkZXIuaDogQWRkZWQuCisrICAgICAgICAoVERlcGVu
ZGVuY3lHcmFwaEJ1aWxkZXIpOgorKyAgICAgICAgKFROb2RlU2V0U3RhY2spOgorKyAgICAgICAg
KFREZXBlbmRlbmN5R3JhcGhCdWlsZGVyOjpUTm9kZVNldFN0YWNrOjpUTm9kZVNldFN0YWNrKToK
KysgICAgICAgIChURGVwZW5kZW5jeUdyYXBoQnVpbGRlcjo6VE5vZGVTZXRTdGFjazo6flROb2Rl
U2V0U3RhY2spOgorKyAgICAgICAgKFREZXBlbmRlbmN5R3JhcGhCdWlsZGVyOjpUTm9kZVNldFN0
YWNrOjpnZXRUb3BTZXQpOgorKyAgICAgICAgKFREZXBlbmRlbmN5R3JhcGhCdWlsZGVyOjpUTm9k
ZVNldFN0YWNrOjpwdXNoU2V0KToKKysgICAgICAgIChURGVwZW5kZW5jeUdyYXBoQnVpbGRlcjo6
VE5vZGVTZXRTdGFjazo6cG9wU2V0KToKKysgICAgICAgIChURGVwZW5kZW5jeUdyYXBoQnVpbGRl
cjo6VE5vZGVTZXRTdGFjazo6cG9wU2V0SW50b05leHQpOgorKyAgICAgICAgKFREZXBlbmRlbmN5
R3JhcGhCdWlsZGVyOjpUTm9kZVNldFN0YWNrOjppbnNlcnRJbnRvVG9wU2V0KToKKysgICAgICAg
IChURGVwZW5kZW5jeUdyYXBoQnVpbGRlcjo6VE5vZGVTZXRTdGFjazo6Y2xlYXIpOgorKyAgICAg
ICAgKFROb2RlU2V0TWFpbnRhaW5lcik6CisrICAgICAgICAoVERlcGVuZGVuY3lHcmFwaEJ1aWxk
ZXI6OlROb2RlU2V0TWFpbnRhaW5lcjo6VE5vZGVTZXRNYWludGFpbmVyKToKKysgICAgICAgIChU
RGVwZW5kZW5jeUdyYXBoQnVpbGRlcjo6VE5vZGVTZXRNYWludGFpbmVyOjp+VE5vZGVTZXRNYWlu
dGFpbmVyKToKKysgICAgICAgIChUTm9kZVNldFByb3BhZ2F0aW5nTWFpbnRhaW5lcik6CisrICAg
ICAgICAoVERlcGVuZGVuY3lHcmFwaEJ1aWxkZXI6OlROb2RlU2V0UHJvcGFnYXRpbmdNYWludGFp
bmVyOjpUTm9kZVNldFByb3BhZ2F0aW5nTWFpbnRhaW5lcik6CisrICAgICAgICAoVERlcGVuZGVu
Y3lHcmFwaEJ1aWxkZXI6OlROb2RlU2V0UHJvcGFnYXRpbmdNYWludGFpbmVyOjp+VE5vZGVTZXRQ
cm9wYWdhdGluZ01haW50YWluZXIpOgorKyAgICAgICAgKFRMZWZ0bW9zdFN5bWJvbE1haW50YWlu
ZXIpOgorKyAgICAgICAgKFREZXBlbmRlbmN5R3JhcGhCdWlsZGVyOjpUTGVmdG1vc3RTeW1ib2xN
YWludGFpbmVyOjpUTGVmdG1vc3RTeW1ib2xNYWludGFpbmVyKToKKysgICAgICAgIChURGVwZW5k
ZW5jeUdyYXBoQnVpbGRlcjo6VExlZnRtb3N0U3ltYm9sTWFpbnRhaW5lcjo6flRMZWZ0bW9zdFN5
bWJvbE1haW50YWluZXIpOgorKyAgICAgICAgKFREZXBlbmRlbmN5R3JhcGhCdWlsZGVyOjpURGVw
ZW5kZW5jeUdyYXBoQnVpbGRlcik6CisrICAgICAgICAoVERlcGVuZGVuY3lHcmFwaEJ1aWxkZXI6
OmJ1aWxkKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL2RlcGdyYXBoL0RlcGVuZGVuY3lHcmFw
aE91dHB1dC5jcHA6IEFkZGVkLgorKyAgICAgICAgKFREZXBlbmRlbmN5R3JhcGhPdXRwdXQ6Om91
dHB1dEluZGVudGF0aW9uKToKKysgICAgICAgIChURGVwZW5kZW5jeUdyYXBoT3V0cHV0Ojp2aXNp
dEFyZ3VtZW50KToKKysgICAgICAgIChURGVwZW5kZW5jeUdyYXBoT3V0cHV0Ojp2aXNpdEZ1bmN0
aW9uQ2FsbCk6CisrICAgICAgICAoVERlcGVuZGVuY3lHcmFwaE91dHB1dDo6dmlzaXRTeW1ib2wp
OgorKyAgICAgICAgKFREZXBlbmRlbmN5R3JhcGhPdXRwdXQ6OnZpc2l0U2VsZWN0aW9uKToKKysg
ICAgICAgIChURGVwZW5kZW5jeUdyYXBoT3V0cHV0Ojp2aXNpdExvb3ApOgorKyAgICAgICAgKFRE
ZXBlbmRlbmN5R3JhcGhPdXRwdXQ6OnZpc2l0TG9naWNhbE9wKToKKysgICAgICAgIChURGVwZW5k
ZW5jeUdyYXBoT3V0cHV0OjpvdXRwdXRBbGxTcGFubmluZ1RyZWVzKToKKysgICAgICAgICogc3Jj
L2NvbXBpbGVyL2RlcGdyYXBoL0RlcGVuZGVuY3lHcmFwaE91dHB1dC5oOiBBZGRlZC4KKysgICAg
ICAgIChURGVwZW5kZW5jeUdyYXBoT3V0cHV0KToKKysgICAgICAgIChURGVwZW5kZW5jeUdyYXBo
T3V0cHV0OjpURGVwZW5kZW5jeUdyYXBoT3V0cHV0KToKKysgICAgICAgICogc3JjL2NvbXBpbGVy
L2RlcGdyYXBoL0RlcGVuZGVuY3lHcmFwaFRyYXZlcnNlLmNwcDogQWRkZWQuCisrICAgICAgICAo
VEdyYXBoTm9kZTo6dHJhdmVyc2UpOgorKyAgICAgICAgKFRHcmFwaFBhcmVudE5vZGU6OnRyYXZl
cnNlKToKKysgICAgICAgIChUR3JhcGhBcmd1bWVudDo6dHJhdmVyc2UpOgorKyAgICAgICAgKFRH
cmFwaEZ1bmN0aW9uQ2FsbDo6dHJhdmVyc2UpOgorKyAgICAgICAgKFRHcmFwaFN5bWJvbDo6dHJh
dmVyc2UpOgorKyAgICAgICAgKFRHcmFwaFNlbGVjdGlvbjo6dHJhdmVyc2UpOgorKyAgICAgICAg
KFRHcmFwaExvb3A6OnRyYXZlcnNlKToKKysgICAgICAgIChUR3JhcGhMb2dpY2FsT3A6OnRyYXZl
cnNlKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL2dsc2xhbmcuaDoKKysgICAgICAgICogc3Jj
L2NvbXBpbGVyL2dsc2xhbmcubDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL2dsc2xhbmcueToK
KysgICAgICAgICogc3JjL2NvbXBpbGVyL2dsc2xhbmdfbGV4LmNwcDoKKysgICAgICAgICh5eV9i
dWZmZXJfc3RhdGUpOgorKyAgICAgICAgKHl5Z3V0c190KToKKysgICAgICAgICh5eV9nZXRfcHJl
dmlvdXNfc3RhdGUpOgorKyAgICAgICAgKHl5X3RyeV9OVUxfdHJhbnMpOgorKyAgICAgICAgKGlu
cHV0KToKKysgICAgICAgICh5eWVuc3VyZV9idWZmZXJfc3RhY2spOgorKyAgICAgICAgKHl5X3Nj
YW5fYnl0ZXMpOgorKyAgICAgICAgKHl5Z2V0X2xlbmcpOgorKyAgICAgICAgKHN0cmluZ19pbnB1
dCk6CisrICAgICAgICAoeXllcnJvcik6CisrICAgICAgICAoZ2xzbGFuZ19maW5hbGl6ZSk6Cisr
ICAgICAgICAoZ2xzbGFuZ19zY2FuKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL2dsc2xhbmdf
dGFiLmNwcDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL2ludGVybWVkaWF0ZS5oOgorKyAgICAg
ICAgKFRJbnRlcm1BZ2dyZWdhdGU6OlRJbnRlcm1BZ2dyZWdhdGUpOgorKyAgICAgICAgKFRJbnRl
cm1BZ2dyZWdhdGU6On5USW50ZXJtQWdncmVnYXRlKToKKysgICAgICAgIChUSW50ZXJtQWdncmVn
YXRlOjppc1VzZXJEZWZpbmVkKToKKysgICAgICAgIChUSW50ZXJtQWdncmVnYXRlKToKKysgICAg
ICAgIChUSW50ZXJtVHJhdmVyc2VyOjp+VEludGVybVRyYXZlcnNlcik6CisrICAgICAgICAqIHNy
Yy9jb21waWxlci9vc2luY2x1ZGUuaDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nl
c3Nvci9hdG9tLmM6CisrICAgICAgICAoRmluZEhhc2hMb2MpOgorKyAgICAgICAgKFByaW50QXRv
bVRhYmxlKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9jcHAuYzoKKysg
ICAgICAgIChDUFBwcmFnbWEpOgorKyAgICAgICAgKHJlYWRDUFBsaW5lKToKKysgICAgICAgIChQ
cmVkZWZpbmVJbnRNYWNybyk6CisrICAgICAgICAoTWFjcm9FeHBhbmQpOgorKyAgICAgICAgKiBz
cmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL2NwcC5oOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIv
cHJlcHJvY2Vzc29yL21lbW9yeS5oOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vz
c29yL25ldzogQWRkZWQgcHJvcGVydGllcyBhbGxvdy10YWJzLCBhbGxvdy10YWJzLCBhbGxvdy10
YWJzLCBhbGxvdy10YWJzLCBhbGxvdy10YWJzLCBhbGxvdy10YWJzLCBhbGxvdy10YWJzLCBhbGxv
dy10YWJzLCBhbGxvdy10YWJzLCBhbGxvdy10YWJzLCBhbGxvdy10YWJzLCBhbGxvdy10YWJzLCBh
bGxvdy10YWJzLCBhbGxvdy10YWJzLCBhbGxvdy10YWJzLCBhbGxvdy10YWJzLCBhbGxvdy10YWJz
LCBhbGxvdy10YWJzLCBhbGxvdy10YWJzLCBhbGxvdy10YWJzLCBhbGxvdy10YWJzLCBhbGxvdy10
YWJzLCBhbGxvdy10YWJzLCBhbGxvdy10YWJzLCBhbGxvdy10YWJzLCBhbGxvdy10YWJzLCBhbGxv
dy10YWJzLCBhbGxvdy10YWJzIGFuZCBhbGxvdy10YWJzLgorKyAgICAgICAgKiBzcmMvY29tcGls
ZXIvcHJlcHJvY2Vzc29yL25ldy9Db250ZXh0LmNwcDogUmVtb3ZlZC4KKysgICAgICAgICogc3Jj
L2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9uZXcvQ29udGV4dC5oOiBSZW1vdmVkLgorKyAgICAgICAg
KiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL25ldy9EaWFnbm9zdGljcy5oOiBBZGRlZC4KKysg
ICAgICAgIChwcCk6CisrICAgICAgICAoRGlhZ25vc3RpY3MpOgorKyAgICAgICAgKiBzcmMvY29t
cGlsZXIvcHJlcHJvY2Vzc29yL25ldy9EaWFnbm9zdGljc0Jhc2UuY3BwOiBBZGRlZC4KKysgICAg
ICAgIChwcCk6CisrICAgICAgICAocHA6OkRpYWdub3N0aWNzOjp+RGlhZ25vc3RpY3MpOgorKyAg
ICAgICAgKHBwOjpEaWFnbm9zdGljczo6cmVwb3J0KToKKysgICAgICAgIChwcDo6RGlhZ25vc3Rp
Y3M6OnNldmVyaXR5KToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9uZXcv
RGlyZWN0aXZlSGFuZGxlci5oOiBBZGRlZC4KKysgICAgICAgIChwcCk6CisrICAgICAgICAoRGly
ZWN0aXZlSGFuZGxlcik6CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvbmV3
L0RpcmVjdGl2ZUhhbmRsZXJCYXNlLmNwcDogQWRkZWQuCisrICAgICAgICAocHApOgorKyAgICAg
ICAgKHBwOjpEaXJlY3RpdmVIYW5kbGVyOjp+RGlyZWN0aXZlSGFuZGxlcik6CisrICAgICAgICAq
IHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvbmV3L0RpcmVjdGl2ZVBhcnNlci5jcHA6IEFkZGVk
LgorKyAgICAgICAgKGdldERpcmVjdGl2ZSk6CisrICAgICAgICAoaXNDb25kaXRpb25hbERpcmVj
dGl2ZSk6CisrICAgICAgICAoaXNFT0QpOgorKyAgICAgICAgKHNraXBVbnRpbEVPRCk6CisrICAg
ICAgICAoaXNNYWNyb05hbWVSZXNlcnZlZCk6CisrICAgICAgICAoaXNNYWNyb1ByZWRlZmluZWQp
OgorKyAgICAgICAgKHBwKToKKysgICAgICAgIChEZWZpbmVkUGFyc2VyKToKKysgICAgICAgIChw
cDo6RGVmaW5lZFBhcnNlcjo6RGVmaW5lZFBhcnNlcik6CisrICAgICAgICAocHA6OkRlZmluZWRQ
YXJzZXI6OmxleCk6CisrICAgICAgICAocHA6OkRpcmVjdGl2ZVBhcnNlcjo6RGlyZWN0aXZlUGFy
c2VyKToKKysgICAgICAgIChwcDo6RGlyZWN0aXZlUGFyc2VyOjpsZXgpOgorKyAgICAgICAgKHBw
OjpEaXJlY3RpdmVQYXJzZXI6OnBhcnNlRGlyZWN0aXZlKToKKysgICAgICAgIChwcDo6RGlyZWN0
aXZlUGFyc2VyOjpwYXJzZURlZmluZSk6CisrICAgICAgICAocHA6OkRpcmVjdGl2ZVBhcnNlcjo6
cGFyc2VVbmRlZik6CisrICAgICAgICAocHA6OkRpcmVjdGl2ZVBhcnNlcjo6cGFyc2VJZik6Cisr
ICAgICAgICAocHA6OkRpcmVjdGl2ZVBhcnNlcjo6cGFyc2VJZmRlZik6CisrICAgICAgICAocHA6
OkRpcmVjdGl2ZVBhcnNlcjo6cGFyc2VJZm5kZWYpOgorKyAgICAgICAgKHBwOjpEaXJlY3RpdmVQ
YXJzZXI6OnBhcnNlRWxzZSk6CisrICAgICAgICAocHA6OkRpcmVjdGl2ZVBhcnNlcjo6cGFyc2VF
bGlmKToKKysgICAgICAgIChwcDo6RGlyZWN0aXZlUGFyc2VyOjpwYXJzZUVuZGlmKToKKysgICAg
ICAgIChwcDo6RGlyZWN0aXZlUGFyc2VyOjpwYXJzZUVycm9yKToKKysgICAgICAgIChwcDo6RGly
ZWN0aXZlUGFyc2VyOjpwYXJzZVByYWdtYSk6CisrICAgICAgICAocHA6OkRpcmVjdGl2ZVBhcnNl
cjo6cGFyc2VFeHRlbnNpb24pOgorKyAgICAgICAgKHBwOjpEaXJlY3RpdmVQYXJzZXI6OnBhcnNl
VmVyc2lvbik6CisrICAgICAgICAocHA6OkRpcmVjdGl2ZVBhcnNlcjo6cGFyc2VMaW5lKToKKysg
ICAgICAgIChwcDo6RGlyZWN0aXZlUGFyc2VyOjpza2lwcGluZyk6CisrICAgICAgICAocHA6OkRp
cmVjdGl2ZVBhcnNlcjo6cGFyc2VDb25kaXRpb25hbElmKToKKysgICAgICAgIChwcDo6RGlyZWN0
aXZlUGFyc2VyOjpwYXJzZUV4cHJlc3Npb25JZik6CisrICAgICAgICAocHA6OkRpcmVjdGl2ZVBh
cnNlcjo6cGFyc2VFeHByZXNzaW9uSWZkZWYpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJl
cHJvY2Vzc29yL25ldy9EaXJlY3RpdmVQYXJzZXIuaDogQWRkZWQuCisrICAgICAgICAocHApOgor
KyAgICAgICAgKERpcmVjdGl2ZVBhcnNlcik6CisrICAgICAgICAoQ29uZGl0aW9uYWxCbG9jayk6
CisrICAgICAgICAocHA6OkRpcmVjdGl2ZVBhcnNlcjo6Q29uZGl0aW9uYWxCbG9jazo6Q29uZGl0
aW9uYWxCbG9jayk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvbmV3L0V4
cHJlc3Npb25QYXJzZXIuY3BwOiBBZGRlZC4KKysgICAgICAgICh5eXN5bnRheF9lcnJvcik6Cisr
ICAgICAgICAoeXlsZXgpOgorKyAgICAgICAgKHl5ZXJyb3IpOgorKyAgICAgICAgKHBwKToKKysg
ICAgICAgIChwcDo6RXhwcmVzc2lvblBhcnNlcjo6RXhwcmVzc2lvblBhcnNlcik6CisrICAgICAg
ICAocHA6OkV4cHJlc3Npb25QYXJzZXI6OnBhcnNlKToKKysgICAgICAgICogc3JjL2NvbXBpbGVy
L3ByZXByb2Nlc3Nvci9uZXcvRXhwcmVzc2lvblBhcnNlci5oOiBBZGRlZC4KKysgICAgICAgIChw
cCk6CisrICAgICAgICAoRXhwcmVzc2lvblBhcnNlcik6CisrICAgICAgICAqIHNyYy9jb21waWxl
ci9wcmVwcm9jZXNzb3IvbmV3L0V4cHJlc3Npb25QYXJzZXIueTogQWRkZWQuCisrICAgICAgICAq
IHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvbmV3L0lucHV0LmNwcDogQWRkZWQgcHJvcGVydHkg
YWxsb3ctdGFicy4KKysgICAgICAgIChwcDo6SW5wdXQ6OklucHV0KToKKysgICAgICAgIChwcDo6
SW5wdXQ6OnJlYWQpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL25ldy9J
bnB1dC5oOiBBZGRlZCBwcm9wZXJ0eSBhbGxvdy10YWJzLgorKyAgICAgICAgKHBwKToKKysgICAg
ICAgIChJbnB1dCk6CisrICAgICAgICAocHA6OklucHV0Ojpjb3VudCk6CisrICAgICAgICAocHA6
OklucHV0OjpzdHJpbmcpOgorKyAgICAgICAgKHBwOjpJbnB1dDo6bGVuZ3RoKToKKysgICAgICAg
IChMb2NhdGlvbik6CisrICAgICAgICAocHA6OklucHV0OjpMb2NhdGlvbjo6TG9jYXRpb24pOgor
KyAgICAgICAgKHBwOjpJbnB1dDo6cmVhZExvYyk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9w
cmVwcm9jZXNzb3IvbmV3L0xleGVyLmNwcDogQWRkZWQuCisrICAgICAgICAocHApOgorKyAgICAg
ICAgKHBwOjpMZXhlcjo6fkxleGVyKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nl
c3Nvci9uZXcvTGV4ZXIuaDogQWRkZWQuCisrICAgICAgICAocHApOgorKyAgICAgICAgKExleGVy
KToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9uZXcvTWFjcm8uY3BwOiBB
ZGRlZCBwcm9wZXJ0eSBhbGxvdy10YWJzLgorKyAgICAgICAgKHBwOjpNYWNybzo6ZXF1YWxzKToK
KysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9uZXcvTWFjcm8uaDogQWRkZWQg
cHJvcGVydHkgYWxsb3ctdGFicy4KKysgICAgICAgIChwcCk6CisrICAgICAgICAocHA6Ok1hY3Jv
OjpNYWNybyk6CisrICAgICAgICAoTWFjcm8pOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJl
cHJvY2Vzc29yL25ldy9NYWNyb0V4cGFuZGVyLmNwcDogQWRkZWQuCisrICAgICAgICAocHApOgor
KyAgICAgICAgKFRva2VuTGV4ZXIpOgorKyAgICAgICAgKHBwOjpUb2tlbkxleGVyOjpUb2tlbkxl
eGVyKToKKysgICAgICAgIChwcDo6VG9rZW5MZXhlcjo6bGV4KToKKysgICAgICAgIChwcDo6TWFj
cm9FeHBhbmRlcjo6TWFjcm9FeHBhbmRlcik6CisrICAgICAgICAocHA6Ok1hY3JvRXhwYW5kZXI6
On5NYWNyb0V4cGFuZGVyKToKKysgICAgICAgIChwcDo6TWFjcm9FeHBhbmRlcjo6bGV4KToKKysg
ICAgICAgIChwcDo6TWFjcm9FeHBhbmRlcjo6Z2V0VG9rZW4pOgorKyAgICAgICAgKHBwOjpNYWNy
b0V4cGFuZGVyOjp1bmdldFRva2VuKToKKysgICAgICAgIChwcDo6TWFjcm9FeHBhbmRlcjo6aXNO
ZXh0VG9rZW5MZWZ0UGFyZW4pOgorKyAgICAgICAgKHBwOjpNYWNyb0V4cGFuZGVyOjpwdXNoTWFj
cm8pOgorKyAgICAgICAgKHBwOjpNYWNyb0V4cGFuZGVyOjpwb3BNYWNybyk6CisrICAgICAgICAo
cHA6Ok1hY3JvRXhwYW5kZXI6OmV4cGFuZE1hY3JvKToKKysgICAgICAgIChwcDo6TWFjcm9FeHBh
bmRlcjo6Y29sbGVjdE1hY3JvQXJncyk6CisrICAgICAgICAocHA6Ok1hY3JvRXhwYW5kZXI6OnJl
cGxhY2VNYWNyb1BhcmFtcyk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3Iv
bmV3L01hY3JvRXhwYW5kZXIuaDogQWRkZWQuCisrICAgICAgICAocHApOgorKyAgICAgICAgKE1h
Y3JvRXhwYW5kZXIpOgorKyAgICAgICAgKE1hY3JvQ29udGV4dCk6CisrICAgICAgICAocHA6Ok1h
Y3JvRXhwYW5kZXI6Ok1hY3JvQ29udGV4dDo6TWFjcm9Db250ZXh0KToKKysgICAgICAgIChwcDo6
TWFjcm9FeHBhbmRlcjo6TWFjcm9Db250ZXh0OjplbXB0eSk6CisrICAgICAgICAocHA6Ok1hY3Jv
RXhwYW5kZXI6Ok1hY3JvQ29udGV4dDo6Z2V0KToKKysgICAgICAgIChwcDo6TWFjcm9FeHBhbmRl
cjo6TWFjcm9Db250ZXh0Ojp1bmdldCk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9j
ZXNzb3IvbmV3L1ByZXByb2Nlc3Nvci5jcHA6IEFkZGVkIHByb3BlcnR5IGFsbG93LXRhYnMuCisr
ICAgICAgICAoUHJlcHJvY2Vzc29ySW1wbCk6CisrICAgICAgICAocHA6OlByZXByb2Nlc3Nvcklt
cGw6OlByZXByb2Nlc3NvckltcGwpOgorKyAgICAgICAgKHBwKToKKysgICAgICAgIChwcDo6UHJl
cHJvY2Vzc29yOjpQcmVwcm9jZXNzb3IpOgorKyAgICAgICAgKHBwOjpQcmVwcm9jZXNzb3I6On5Q
cmVwcm9jZXNzb3IpOgorKyAgICAgICAgKHBwOjpQcmVwcm9jZXNzb3I6OmluaXQpOgorKyAgICAg
ICAgKHBwOjpQcmVwcm9jZXNzb3I6OnByZWRlZmluZU1hY3JvKToKKysgICAgICAgIChwcDo6UHJl
cHJvY2Vzc29yOjpsZXgpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL25l
dy9QcmVwcm9jZXNzb3IuaDogQWRkZWQgcHJvcGVydHkgYWxsb3ctdGFicy4KKysgICAgICAgIChw
cCk6CisrICAgICAgICAoUHJlcHJvY2Vzc29yKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3By
ZXByb2Nlc3Nvci9uZXcvU291cmNlTG9jYXRpb24uaDogQWRkZWQuCisrICAgICAgICAocHApOgor
KyAgICAgICAgKHBwOjpTb3VyY2VMb2NhdGlvbjo6U291cmNlTG9jYXRpb24pOgorKyAgICAgICAg
KFNvdXJjZUxvY2F0aW9uKToKKysgICAgICAgIChwcDo6U291cmNlTG9jYXRpb246OmVxdWFscyk6
CisrICAgICAgICAocHA6Om9wZXJhdG9yPT0pOgorKyAgICAgICAgKHBwOjpvcGVyYXRvciE9KToK
KysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9uZXcvVG9rZW4uY3BwOiBBZGRl
ZCBwcm9wZXJ0eSBhbGxvdy10YWJzLgorKyAgICAgICAgKHBwOjpUb2tlbjo6cmVzZXQpOgorKyAg
ICAgICAgKHBwOjpUb2tlbjo6ZXF1YWxzKToKKysgICAgICAgIChwcDo6VG9rZW46OnNldEF0U3Rh
cnRPZkxpbmUpOgorKyAgICAgICAgKHBwOjpUb2tlbjo6c2V0SGFzTGVhZGluZ1NwYWNlKToKKysg
ICAgICAgIChwcCk6CisrICAgICAgICAocHA6OlRva2VuOjpzZXRFeHBhbnNpb25EaXNhYmxlZCk6
CisrICAgICAgICAocHA6Om9wZXJhdG9yPDwpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJl
cHJvY2Vzc29yL25ldy9Ub2tlbi5oOiBBZGRlZCBwcm9wZXJ0eSBhbGxvdy10YWJzLgorKyAgICAg
ICAgKHBwOjpUb2tlbjo6VG9rZW4pOgorKyAgICAgICAgKFRva2VuKToKKysgICAgICAgIChwcDo6
VG9rZW46OmF0U3RhcnRPZkxpbmUpOgorKyAgICAgICAgKHBwOjpUb2tlbjo6aGFzTGVhZGluZ1Nw
YWNlKToKKysgICAgICAgIChwcDo6VG9rZW46OmV4cGFuc2lvbkRpc2FibGVkKToKKysgICAgICAg
IChwcDo6b3BlcmF0b3I9PSk6CisrICAgICAgICAocHApOgorKyAgICAgICAgKHBwOjpvcGVyYXRv
ciE9KToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9uZXcvVG9rZW5pemVy
LmNwcDogQWRkZWQuCisrICAgICAgICAoeXlfYnVmZmVyX3N0YXRlKToKKysgICAgICAgICh5eV90
cmFuc19pbmZvKToKKysgICAgICAgICh5eWd1dHNfdCk6CisrICAgICAgICAoeXlfZ2V0X3ByZXZp
b3VzX3N0YXRlKToKKysgICAgICAgICh5eV90cnlfTlVMX3RyYW5zKToKKysgICAgICAgIChpbnB1
dCk6CisrICAgICAgICAocHByZXN0YXJ0KToKKysgICAgICAgIChwcF9zd2l0Y2hfdG9fYnVmZmVy
KToKKysgICAgICAgIChwcF9sb2FkX2J1ZmZlcl9zdGF0ZSk6CisrICAgICAgICAocHBfY3JlYXRl
X2J1ZmZlcik6CisrICAgICAgICAocHBfZGVsZXRlX2J1ZmZlcik6CisrICAgICAgICAocHBfaW5p
dF9idWZmZXIpOgorKyAgICAgICAgKHBwX2ZsdXNoX2J1ZmZlcik6CisrICAgICAgICAocHBwdXNo
X2J1ZmZlcl9zdGF0ZSk6CisrICAgICAgICAocHBwb3BfYnVmZmVyX3N0YXRlKToKKysgICAgICAg
IChwcGVuc3VyZV9idWZmZXJfc3RhY2spOgorKyAgICAgICAgKHBwX3NjYW5fYnVmZmVyKToKKysg
ICAgICAgIChwcF9zY2FuX3N0cmluZyk6CisrICAgICAgICAocHBfc2Nhbl9ieXRlcyk6CisrICAg
ICAgICAoeXlfZmF0YWxfZXJyb3IpOgorKyAgICAgICAgKHBwZ2V0X2V4dHJhKToKKysgICAgICAg
IChwcGdldF9saW5lbm8pOgorKyAgICAgICAgKHBwZ2V0X2NvbHVtbik6CisrICAgICAgICAocHBn
ZXRfaW4pOgorKyAgICAgICAgKHBwZ2V0X291dCk6CisrICAgICAgICAocHBnZXRfbGVuZyk6Cisr
ICAgICAgICAocHBnZXRfdGV4dCk6CisrICAgICAgICAocHBzZXRfZXh0cmEpOgorKyAgICAgICAg
KHBwc2V0X2xpbmVubyk6CisrICAgICAgICAocHBzZXRfY29sdW1uKToKKysgICAgICAgIChwcHNl
dF9pbik6CisrICAgICAgICAocHBzZXRfb3V0KToKKysgICAgICAgIChwcGdldF9kZWJ1Zyk6Cisr
ICAgICAgICAocHBzZXRfZGVidWcpOgorKyAgICAgICAgKHBwZ2V0X2x2YWwpOgorKyAgICAgICAg
KHBwc2V0X2x2YWwpOgorKyAgICAgICAgKHBwZ2V0X2xsb2MpOgorKyAgICAgICAgKHBwc2V0X2xs
b2MpOgorKyAgICAgICAgKHBwbGV4X2luaXQpOgorKyAgICAgICAgKHBwbGV4X2luaXRfZXh0cmEp
OgorKyAgICAgICAgKHl5X2luaXRfZ2xvYmFscyk6CisrICAgICAgICAocHBsZXhfZGVzdHJveSk6
CisrICAgICAgICAoeXlfZmxleF9zdHJuY3B5KToKKysgICAgICAgICh5eV9mbGV4X3N0cmxlbik6
CisrICAgICAgICAocHBhbGxvYyk6CisrICAgICAgICAocHByZWFsbG9jKToKKysgICAgICAgIChw
cGZyZWUpOgorKyAgICAgICAgKHBwKToKKysgICAgICAgIChwcDo6VG9rZW5pemVyOjpUb2tlbml6
ZXIpOgorKyAgICAgICAgKHBwOjpUb2tlbml6ZXI6On5Ub2tlbml6ZXIpOgorKyAgICAgICAgKHBw
OjpUb2tlbml6ZXI6OmluaXQpOgorKyAgICAgICAgKHBwOjpUb2tlbml6ZXI6OnNldEZpbGVOdW1i
ZXIpOgorKyAgICAgICAgKHBwOjpUb2tlbml6ZXI6OnNldExpbmVOdW1iZXIpOgorKyAgICAgICAg
KHBwOjpUb2tlbml6ZXI6OmxleCk6CisrICAgICAgICAocHA6OlRva2VuaXplcjo6aW5pdFNjYW5u
ZXIpOgorKyAgICAgICAgKHBwOjpUb2tlbml6ZXI6OmRlc3Ryb3lTY2FubmVyKToKKysgICAgICAg
ICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9uZXcvVG9rZW5pemVyLmg6IEFkZGVkLgorKyAg
ICAgICAgKHBwKToKKysgICAgICAgIChUb2tlbml6ZXIpOgorKyAgICAgICAgKENvbnRleHQpOgor
KyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL25ldy9Ub2tlbml6ZXIubDogQWRk
ZWQuCisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvbmV3L2dlbmVyYXRlX3Bh
cnNlci5zaDogQWRkZWQgcHJvcGVydHkgYWxsb3ctdGFicy4KKysgICAgICAgICogc3JjL2NvbXBp
bGVyL3ByZXByb2Nlc3Nvci9uZXcvcHAubDogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2NvbXBp
bGVyL3ByZXByb2Nlc3Nvci9uZXcvcHAueTogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2NvbXBp
bGVyL3ByZXByb2Nlc3Nvci9uZXcvcHBfbGV4LmNwcDogUmVtb3ZlZC4KKysgICAgICAgICogc3Jj
L2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9uZXcvcHBfdGFiLmNwcDogUmVtb3ZlZC4KKysgICAgICAg
ICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9uZXcvcHBfdGFiLmg6IFJlbW92ZWQuCisrICAg
ICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvbmV3L3BwX3V0aWxzLmg6IEFkZGVkLgor
KyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL25ldy9wcmVwcm9jZXNzb3IudmNw
cm9qOiBBZGRlZC4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9uZXcvc3Rs
X3V0aWxzLmg6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3Iv
bmV3L3Rva2VuX3R5cGUuaDogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXBy
b2Nlc3Nvci9wcmVwcm9jZXNzLmg6CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNz
b3Ivc2Nhbm5lci5jOgorKyAgICAgICAgKEluaXRTY2FubmVySW5wdXQpOgorKyAgICAgICAgKiBz
cmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL3NjYW5uZXIuaDoKKysgICAgICAgICogc3JjL2NvbXBp
bGVyL3ByZXByb2Nlc3Nvci9zeW1ib2xzLmg6CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVw
cm9jZXNzb3IvdG9rZW5zLmM6CisrICAgICAgICAoUmVhZFRva2VuKToKKysgICAgICAgIChEdW1w
VG9rZW5TdHJlYW0pOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL3Rva2Vu
cy5oOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdGltaW5nOiBBZGRlZC4KKysgICAgICAgICog
c3JjL2NvbXBpbGVyL3RpbWluZy9SZXN0cmljdEZyYWdtZW50U2hhZGVyVGltaW5nLmNwcDogQWRk
ZWQuCisrICAgICAgICAoUmVzdHJpY3RGcmFnbWVudFNoYWRlclRpbWluZzo6UmVzdHJpY3RGcmFn
bWVudFNoYWRlclRpbWluZyk6CisrICAgICAgICAoUmVzdHJpY3RGcmFnbWVudFNoYWRlclRpbWlu
Zzo6ZW5mb3JjZVJlc3RyaWN0aW9ucyk6CisrICAgICAgICAoUmVzdHJpY3RGcmFnbWVudFNoYWRl
clRpbWluZzo6dmFsaWRhdGVVc2VyRGVmaW5lZEZ1bmN0aW9uQ2FsbFVzYWdlKToKKysgICAgICAg
IChSZXN0cmljdEZyYWdtZW50U2hhZGVyVGltaW5nOjpiZWdpbkVycm9yKToKKysgICAgICAgIChS
ZXN0cmljdEZyYWdtZW50U2hhZGVyVGltaW5nOjppc1NhbXBsaW5nT3ApOgorKyAgICAgICAgKFJl
c3RyaWN0RnJhZ21lbnRTaGFkZXJUaW1pbmc6OnZpc2l0QXJndW1lbnQpOgorKyAgICAgICAgKFJl
c3RyaWN0RnJhZ21lbnRTaGFkZXJUaW1pbmc6OnZpc2l0U2VsZWN0aW9uKToKKysgICAgICAgIChS
ZXN0cmljdEZyYWdtZW50U2hhZGVyVGltaW5nOjp2aXNpdExvb3ApOgorKyAgICAgICAgKFJlc3Ry
aWN0RnJhZ21lbnRTaGFkZXJUaW1pbmc6OnZpc2l0TG9naWNhbE9wKToKKysgICAgICAgICogc3Jj
L2NvbXBpbGVyL3RpbWluZy9SZXN0cmljdEZyYWdtZW50U2hhZGVyVGltaW5nLmg6IEFkZGVkLgor
KyAgICAgICAgKFJlc3RyaWN0RnJhZ21lbnRTaGFkZXJUaW1pbmcpOgorKyAgICAgICAgKFJlc3Ry
aWN0RnJhZ21lbnRTaGFkZXJUaW1pbmc6Om51bUVycm9ycyk6CisrICAgICAgICAqIHNyYy9jb21w
aWxlci90aW1pbmcvUmVzdHJpY3RWZXJ0ZXhTaGFkZXJUaW1pbmcuY3BwOiBBZGRlZC4KKysgICAg
ICAgIChSZXN0cmljdFZlcnRleFNoYWRlclRpbWluZzo6dmlzaXRTeW1ib2wpOgorKyAgICAgICAg
KiBzcmMvY29tcGlsZXIvdGltaW5nL1Jlc3RyaWN0VmVydGV4U2hhZGVyVGltaW5nLmg6IEFkZGVk
LgorKyAgICAgICAgKFJlc3RyaWN0VmVydGV4U2hhZGVyVGltaW5nKToKKysgICAgICAgIChSZXN0
cmljdFZlcnRleFNoYWRlclRpbWluZzo6UmVzdHJpY3RWZXJ0ZXhTaGFkZXJUaW1pbmcpOgorKyAg
ICAgICAgKFJlc3RyaWN0VmVydGV4U2hhZGVyVGltaW5nOjplbmZvcmNlUmVzdHJpY3Rpb25zKToK
KysgICAgICAgIChSZXN0cmljdFZlcnRleFNoYWRlclRpbWluZzo6bnVtRXJyb3JzKToKKysgICAg
ICAgICogc3JjL2xpYkVHTC9EaXNwbGF5LmNwcDoKKysgICAgICAgIChlZ2wpOgorKyAgICAgICAg
KGVnbDo6RGlzcGxheTo6Z2V0RGVwdGhUZXh0dXJlU3VwcG9ydCk6CisrICAgICAgICAoZWdsOjpE
aXNwbGF5OjpnZXRUZXh0dXJlUG9vbCk6CisrICAgICAgICAqIHNyYy9saWJFR0wvRGlzcGxheS5o
OgorKyAgICAgICAgKERpc3BsYXkpOgorKyAgICAgICAgKiBzcmMvbGliRUdML1N1cmZhY2UuY3Bw
OgorKyAgICAgICAgKGVnbDo6U3VyZmFjZTo6U3VyZmFjZSk6CisrICAgICAgICAoZWdsOjpTdXJm
YWNlOjpyZWxlYXNlKToKKysgICAgICAgIChlZ2w6OlN1cmZhY2U6OnJlc2V0U3dhcENoYWluKToK
KysgICAgICAgIChlZ2w6OlN1cmZhY2U6OnN3YXBSZWN0KToKKysgICAgICAgIChlZ2wpOgorKyAg
ICAgICAgKGVnbDo6U3VyZmFjZTo6c3dhcCk6CisrICAgICAgICAoZWdsOjpTdXJmYWNlOjpwb3N0
U3ViQnVmZmVyKToKKysgICAgICAgICogc3JjL2xpYkVHTC9TdXJmYWNlLmg6CisrICAgICAgICAo
U3VyZmFjZSk6CisrICAgICAgICAqIHNyYy9saWJFR0wvbGliRUdMLmNwcDoKKysgICAgICAgICog
c3JjL2xpYkdMRVN2Mi9Db250ZXh0LmNwcDoKKysgICAgICAgIChnbDo6Q29udGV4dDo6bWFrZUN1
cnJlbnQpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjptYXJrRHhVbmlmb3Jtc0RpcnR5KToKKysg
ICAgICAgIChnbCk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmdldEludGVnZXJ2KToKKysgICAg
ICAgIChnbDo6Q29udGV4dDo6Z2V0UXVlcnlQYXJhbWV0ZXJJbmZvKToKKysgICAgICAgIChnbDo6
Q29udGV4dDo6YXBwbHlSZW5kZXJUYXJnZXQpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjphcHBs
eVN0YXRlKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6YXBwbHlTaGFkZXJzKToKKysgICAgICAg
IChnbDo6Q29udGV4dDo6YXBwbHlUZXh0dXJlcyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnJl
YWRQaXhlbHMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpjbGVhcik6CisrICAgICAgICAoZ2w6
OkNvbnRleHQ6OmRyYXdBcnJheXMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpkcmF3RWxlbWVu
dHMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzdXBwb3J0c0RlcHRoVGV4dHVyZXMpOgorKyAg
ICAgICAgKGdsOjpDb250ZXh0Ojppbml0RXh0ZW5zaW9uU3RyaW5nKToKKysgICAgICAgIChnbDo6
Q29udGV4dDo6YmxpdEZyYW1lYnVmZmVyKToKKysgICAgICAgIChnbDo6VmVydGV4RGVjbGFyYXRp
b25DYWNoZTo6YXBwbHlEZWNsYXJhdGlvbik6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvQ29u
dGV4dC5oOgorKyAgICAgICAgKENvbnRleHQpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL0Zy
YW1lYnVmZmVyLmNwcDoKKysgICAgICAgIChnbDo6RnJhbWVidWZmZXI6On5GcmFtZWJ1ZmZlcik6
CisrICAgICAgICAoZ2wpOgorKyAgICAgICAgKGdsOjpGcmFtZWJ1ZmZlcjo6Z2V0TnVsbENvbG9y
YnVmZmVyKToKKysgICAgICAgIChnbDo6RnJhbWVidWZmZXI6OmNvbXBsZXRlbmVzcyk6CisrICAg
ICAgICAqIHNyYy9saWJHTEVTdjIvRnJhbWVidWZmZXIuaDoKKysgICAgICAgIChGcmFtZWJ1ZmZl
cik6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvUHJvZ3JhbS5jcHA6CisrICAgICAgICAoZ2wp
OgorKyAgICAgICAgKGdsOjpBdHRyaWJ1dGVCaW5kaW5nczo6QXR0cmlidXRlQmluZGluZ3MpOgor
KyAgICAgICAgKGdsOjpBdHRyaWJ1dGVCaW5kaW5nczo6fkF0dHJpYnV0ZUJpbmRpbmdzKToKKysg
ICAgICAgIChnbDo6SW5mb0xvZzo6SW5mb0xvZyk6CisrICAgICAgICAoZ2w6OkluZm9Mb2c6On5J
bmZvTG9nKToKKysgICAgICAgIChnbDo6SW5mb0xvZzo6Z2V0TGVuZ3RoKToKKysgICAgICAgIChn
bDo6SW5mb0xvZzo6Z2V0TG9nKToKKysgICAgICAgIChnbDo6SW5mb0xvZzo6YXBwZW5kU2FuaXRp
emVkKToKKysgICAgICAgIChnbDo6SW5mb0xvZzo6YXBwZW5kKToKKysgICAgICAgIChnbDo6SW5m
b0xvZzo6cmVzZXQpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpQcm9ncmFtKToKKysgICAgICAg
IChnbDo6UHJvZ3JhbTo6flByb2dyYW0pOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjphdHRhY2hT
aGFkZXIpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpkZXRhY2hTaGFkZXIpOgorKyAgICAgICAg
KGdsOjpQcm9ncmFtOjpnZXRBdHRhY2hlZFNoYWRlcnNDb3VudCk6CisrICAgICAgICAoZ2w6OkF0
dHJpYnV0ZUJpbmRpbmdzOjpiaW5kQXR0cmlidXRlTG9jYXRpb24pOgorKyAgICAgICAgKGdsOjpQ
cm9ncmFtOjpiaW5kQXR0cmlidXRlTG9jYXRpb24pOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjps
aW5rKToKKysgICAgICAgIChnbDo6QXR0cmlidXRlQmluZGluZ3M6OmdldEF0dHJpYnV0ZUJpbmRp
bmcpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjp1bmxpbmspOgorKyAgICAgICAgKGdsOjpQcm9n
cmFtOjpnZXRQcm9ncmFtQmluYXJ5KToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6c2V0UHJvZ3Jh
bUJpbmFyeSk6CisrICAgICAgICAoZ2w6OlByb2dyYW06OmdldEluZm9Mb2dMZW5ndGgpOgorKyAg
ICAgICAgKGdsOjpQcm9ncmFtOjpnZXRJbmZvTG9nKToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6
Z2V0QWN0aXZlQXR0cmlidXRlKToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6Z2V0QWN0aXZlQXR0
cmlidXRlQ291bnQpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpnZXRBY3RpdmVBdHRyaWJ1dGVN
YXhMZW5ndGgpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpnZXRBY3RpdmVVbmlmb3JtKToKKysg
ICAgICAgIChnbDo6UHJvZ3JhbTo6Z2V0QWN0aXZlVW5pZm9ybUNvdW50KToKKysgICAgICAgIChn
bDo6UHJvZ3JhbTo6Z2V0QWN0aXZlVW5pZm9ybU1heExlbmd0aCk6CisrICAgICAgICAoZ2w6OlBy
b2dyYW06OnZhbGlkYXRlKToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6aXNWYWxpZGF0ZWQpOgor
KyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1Byb2dyYW0uaDoKKysgICAgICAgIChnbCk6CisrICAg
ICAgICAoQXR0cmlidXRlQmluZGluZ3MpOgorKyAgICAgICAgKEluZm9Mb2cpOgorKyAgICAgICAg
KFByb2dyYW0pOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1Byb2dyYW1CaW5hcnkuY3BwOiBB
ZGRlZC4KKysgICAgICAgIChnbDo6c3RyKToKKysgICAgICAgIChnbCk6CisrICAgICAgICAoZ2w6
OlVuaWZvcm06OlVuaWZvcm0pOgorKyAgICAgICAgKGdsOjpVbmlmb3JtOjp+VW5pZm9ybSk6Cisr
ICAgICAgICAoZ2w6OlVuaWZvcm06OmlzQXJyYXkpOgorKyAgICAgICAgKGdsOjpVbmlmb3JtTG9j
YXRpb246OlVuaWZvcm1Mb2NhdGlvbik6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OlBy
b2dyYW1CaW5hcnkpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5Ojp+UHJvZ3JhbUJpbmFy
eSk6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OmdldFBpeGVsU2hhZGVyKToKKysgICAg
ICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6Z2V0VmVydGV4U2hhZGVyKToKKysgICAgICAgIChnbDo6
UHJvZ3JhbUJpbmFyeTo6Z2V0QXR0cmlidXRlTG9jYXRpb24pOgorKyAgICAgICAgKGdsOjpQcm9n
cmFtQmluYXJ5OjpnZXRTZW1hbnRpY0luZGV4KToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFy
eTo6Z2V0VXNlZFNhbXBsZXJSYW5nZSk6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6Omdl
dFNhbXBsZXJNYXBwaW5nKToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6Z2V0U2FtcGxl
clRleHR1cmVUeXBlKToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6Z2V0VW5pZm9ybUxv
Y2F0aW9uKToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6c2V0VW5pZm9ybTFmdik6Cisr
ICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OnNldFVuaWZvcm0yZnYpOgorKyAgICAgICAgKGds
OjpQcm9ncmFtQmluYXJ5OjpzZXRVbmlmb3JtM2Z2KToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJp
bmFyeTo6c2V0VW5pZm9ybTRmdik6CisrICAgICAgICAoZ2w6OnRyYW5zcG9zZU1hdHJpeCk6Cisr
ICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OnNldFVuaWZvcm1NYXRyaXgyZnYpOgorKyAgICAg
ICAgKGdsOjpQcm9ncmFtQmluYXJ5OjpzZXRVbmlmb3JtTWF0cml4M2Z2KToKKysgICAgICAgIChn
bDo6UHJvZ3JhbUJpbmFyeTo6c2V0VW5pZm9ybU1hdHJpeDRmdik6CisrICAgICAgICAoZ2w6OlBy
b2dyYW1CaW5hcnk6OnNldFVuaWZvcm0xaXYpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5
OjpzZXRVbmlmb3JtMml2KToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6c2V0VW5pZm9y
bTNpdik6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OnNldFVuaWZvcm00aXYpOgorKyAg
ICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjpnZXRVbmlmb3JtZnYpOgorKyAgICAgICAgKGdsOjpQ
cm9ncmFtQmluYXJ5OjpnZXRVbmlmb3JtaXYpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5
OjpkaXJ0eUFsbFVuaWZvcm1zKToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6YXBwbHlV
bmlmb3Jtcyk6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OmNvbXBpbGVUb0JpbmFyeSk6
CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OnBhY2tWYXJ5aW5ncyk6CisrICAgICAgICAo
Z2w6OlByb2dyYW1CaW5hcnk6OmxpbmtWYXJ5aW5ncyk6CisrICAgICAgICAoZ2w6OlByb2dyYW1C
aW5hcnk6OmxpbmspOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjpsaW5rQXR0cmlidXRl
cyk6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OmxpbmtVbmlmb3Jtcyk6CisrICAgICAg
ICAoZ2w6OlByb2dyYW1CaW5hcnk6OmRlZmluZVVuaWZvcm0pOgorKyAgICAgICAgKGdsOjpQcm9n
cmFtQmluYXJ5OjpjcmVhdGVVbmlmb3JtKToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6
ZGVjb3JhdGVBdHRyaWJ1dGUpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5Ojp1bmRlY29y
YXRlVW5pZm9ybSk6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OmFwcGx5VW5pZm9ybW5i
dik6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OmFwcGx5VW5pZm9ybW5mdik6CisrICAg
ICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OmFwcGx5VW5pZm9ybTFpdik6CisrICAgICAgICAoZ2w6
OlByb2dyYW1CaW5hcnk6OmFwcGx5VW5pZm9ybTJpdik6CisrICAgICAgICAoZ2w6OlByb2dyYW1C
aW5hcnk6OmFwcGx5VW5pZm9ybTNpdik6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OmFw
cGx5VW5pZm9ybTRpdik6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OmFwcGx5VW5pZm9y
bW5pdik6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OmlzVmFsaWRhdGVkKToKKysgICAg
ICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6Z2V0QWN0aXZlQXR0cmlidXRlKToKKysgICAgICAgIChn
bDo6UHJvZ3JhbUJpbmFyeTo6Z2V0QWN0aXZlQXR0cmlidXRlQ291bnQpOgorKyAgICAgICAgKGds
OjpQcm9ncmFtQmluYXJ5OjpnZXRBY3RpdmVBdHRyaWJ1dGVNYXhMZW5ndGgpOgorKyAgICAgICAg
KGdsOjpQcm9ncmFtQmluYXJ5OjpnZXRBY3RpdmVVbmlmb3JtKToKKysgICAgICAgIChnbDo6UHJv
Z3JhbUJpbmFyeTo6Z2V0QWN0aXZlVW5pZm9ybUNvdW50KToKKysgICAgICAgIChnbDo6UHJvZ3Jh
bUJpbmFyeTo6Z2V0QWN0aXZlVW5pZm9ybU1heExlbmd0aCk6CisrICAgICAgICAoZ2w6OlByb2dy
YW1CaW5hcnk6OnZhbGlkYXRlKToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6dmFsaWRh
dGVTYW1wbGVycyk6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OmdldER4RGVwdGhSYW5n
ZUxvY2F0aW9uKToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6Z2V0RHhEZXB0aExvY2F0
aW9uKToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6Z2V0RHhDb29yZExvY2F0aW9uKToK
KysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6Z2V0RHhIYWxmUGl4ZWxTaXplTG9jYXRpb24p
OgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjpnZXREeEZyb250Q0NXTG9jYXRpb24pOgor
KyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjpnZXREeFBvaW50c09yTGluZXNMb2NhdGlvbik6
CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvUHJvZ3JhbUJpbmFyeS5oOiBBZGRlZC4KKysgICAg
ICAgIChnbCk6CisrICAgICAgICAoVW5pZm9ybSk6CisrICAgICAgICAoZ2w6OlVuaWZvcm06OlJl
Z2lzdGVySW5mbzo6UmVnaXN0ZXJJbmZvKToKKysgICAgICAgIChSZWdpc3RlckluZm8pOgorKyAg
ICAgICAgKGdsOjpVbmlmb3JtOjpSZWdpc3RlckluZm86OnNldCk6CisrICAgICAgICAoVW5pZm9y
bUxvY2F0aW9uKToKKysgICAgICAgIChQcm9ncmFtQmluYXJ5KToKKysgICAgICAgIChTYW1wbGVy
KToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9SZW5kZXJidWZmZXIuY3BwOgorKyAgICAgICAg
KGdsKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyVGV4dHVyZTJEOjpSZW5kZXJidWZmZXJU
ZXh0dXJlMkQpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJUZXh0dXJlMkQ6On5SZW5kZXJi
dWZmZXJUZXh0dXJlMkQpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJUZXh0dXJlMkQ6OmFk
ZFByb3h5UmVmKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyVGV4dHVyZTJEOjpyZWxlYXNl
UHJveHkpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJUZXh0dXJlMkQ6OmdldFJlbmRlclRh
cmdldCk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclRleHR1cmUyRDo6Z2V0RGVwdGhTdGVu
Y2lsKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyVGV4dHVyZTJEOjpnZXRXaWR0aCk6Cisr
ICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclRleHR1cmUyRDo6Z2V0SGVpZ2h0KToKKysgICAgICAg
IChnbDo6UmVuZGVyYnVmZmVyVGV4dHVyZTJEOjpnZXRJbnRlcm5hbEZvcm1hdCk6CisrICAgICAg
ICAoZ2w6OlJlbmRlcmJ1ZmZlclRleHR1cmUyRDo6Z2V0RDNERm9ybWF0KToKKysgICAgICAgIChn
bDo6UmVuZGVyYnVmZmVyVGV4dHVyZTJEOjpnZXRTYW1wbGVzKToKKysgICAgICAgIChnbDo6UmVu
ZGVyYnVmZmVyVGV4dHVyZTJEOjpnZXRTZXJpYWwpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZm
ZXJUZXh0dXJlQ3ViZU1hcDo6UmVuZGVyYnVmZmVyVGV4dHVyZUN1YmVNYXApOgorKyAgICAgICAg
KGdsOjpSZW5kZXJidWZmZXJUZXh0dXJlQ3ViZU1hcDo6flJlbmRlcmJ1ZmZlclRleHR1cmVDdWJl
TWFwKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyVGV4dHVyZUN1YmVNYXA6OmFkZFByb3h5
UmVmKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyVGV4dHVyZUN1YmVNYXA6OnJlbGVhc2VQ
cm94eSk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclRleHR1cmVDdWJlTWFwOjpnZXRSZW5k
ZXJUYXJnZXQpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJUZXh0dXJlQ3ViZU1hcDo6Z2V0
RGVwdGhTdGVuY2lsKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyVGV4dHVyZUN1YmVNYXA6
OmdldFdpZHRoKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyVGV4dHVyZUN1YmVNYXA6Omdl
dEhlaWdodCk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclRleHR1cmVDdWJlTWFwOjpnZXRJ
bnRlcm5hbEZvcm1hdCk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclRleHR1cmVDdWJlTWFw
OjpnZXREM0RGb3JtYXQpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJUZXh0dXJlQ3ViZU1h
cDo6Z2V0U2FtcGxlcyk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclRleHR1cmVDdWJlTWFw
OjpnZXRTZXJpYWwpOgorKyAgICAgICAgKGdsOjpEZXB0aFN0ZW5jaWxidWZmZXI6OmdldERlcHRo
U3RlbmNpbCk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvUmVuZGVyYnVmZmVyLmg6CisrICAg
ICAgICAoZ2wpOgorKyAgICAgICAgKFJlbmRlcmJ1ZmZlclRleHR1cmUyRCk6CisrICAgICAgICAo
UmVuZGVyYnVmZmVyVGV4dHVyZUN1YmVNYXApOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1No
YWRlci5jcHA6CisrICAgICAgICAoZ2w6OlNoYWRlcjo6Z2V0SW5mb0xvZyk6CisrICAgICAgICAo
Z2w6OlNoYWRlcjo6Z2V0U291cmNlSW1wbCk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvU2hh
ZGVyLmg6CisrICAgICAgICAoU2hhZGVyKToKKysgICAgICAgIChWZXJ0ZXhTaGFkZXIpOgorKyAg
ICAgICAgKiBzcmMvbGliR0xFU3YyL1RleHR1cmUuY3BwOgorKyAgICAgICAgKGdsOjpDb252ZXJ0
VGV4dHVyZUZvcm1hdFR5cGUpOgorKyAgICAgICAgKGdsOjpJc1RleHR1cmVGb3JtYXRSZW5kZXJh
YmxlKToKKysgICAgICAgIChnbDo6R2V0VGV4dHVyZVVzYWdlKToKKysgICAgICAgIChnbCk6Cisr
ICAgICAgICAoZ2w6OkltYWdlOjpjcmVhdGVTdXJmYWNlKToKKysgICAgICAgIChnbDo6SW1hZ2U6
OnVwZGF0ZVN1cmZhY2UpOgorKyAgICAgICAgKGdsOjpJbWFnZTo6bG9hZERhdGEpOgorKyAgICAg
ICAgKGdsOjpJbWFnZTo6bG9hZEFscGhhRGF0YSk6CisrICAgICAgICAoZ2w6OkltYWdlOjpsb2Fk
QWxwaGFEYXRhU1NFMik6CisrICAgICAgICAoZ2w6OkltYWdlOjpsb2FkQWxwaGFGbG9hdERhdGEp
OgorKyAgICAgICAgKGdsOjpJbWFnZTo6bG9hZEFscGhhSGFsZkZsb2F0RGF0YSk6CisrICAgICAg
ICAoZ2w6OkltYWdlOjpsb2FkTHVtaW5hbmNlRGF0YSk6CisrICAgICAgICAoZ2w6OkltYWdlOjps
b2FkTHVtaW5hbmNlRmxvYXREYXRhKToKKysgICAgICAgIChnbDo6SW1hZ2U6OmxvYWRMdW1pbmFu
Y2VIYWxmRmxvYXREYXRhKToKKysgICAgICAgIChnbDo6SW1hZ2U6OmxvYWRMdW1pbmFuY2VBbHBo
YURhdGEpOgorKyAgICAgICAgKGdsOjpJbWFnZTo6bG9hZEx1bWluYW5jZUFscGhhRmxvYXREYXRh
KToKKysgICAgICAgIChnbDo6SW1hZ2U6OmxvYWRMdW1pbmFuY2VBbHBoYUhhbGZGbG9hdERhdGEp
OgorKyAgICAgICAgKGdsOjpJbWFnZTo6bG9hZFJHQlVCeXRlRGF0YSk6CisrICAgICAgICAoZ2w6
OkltYWdlOjpsb2FkUkdCNTY1RGF0YSk6CisrICAgICAgICAoZ2w6OkltYWdlOjpsb2FkUkdCRmxv
YXREYXRhKToKKysgICAgICAgIChnbDo6SW1hZ2U6OmxvYWRSR0JIYWxmRmxvYXREYXRhKToKKysg
ICAgICAgIChnbDo6SW1hZ2U6OmxvYWRSR0JBVUJ5dGVEYXRhU1NFMik6CisrICAgICAgICAoZ2w6
OkltYWdlOjpsb2FkUkdCQVVCeXRlRGF0YSk6CisrICAgICAgICAoZ2w6OkltYWdlOjpsb2FkUkdC
QTQ0NDREYXRhKToKKysgICAgICAgIChnbDo6SW1hZ2U6OmxvYWRSR0JBNTU1MURhdGEpOgorKyAg
ICAgICAgKGdsOjpJbWFnZTo6bG9hZFJHQkFGbG9hdERhdGEpOgorKyAgICAgICAgKGdsOjpJbWFn
ZTo6bG9hZFJHQkFIYWxmRmxvYXREYXRhKToKKysgICAgICAgIChnbDo6SW1hZ2U6OmxvYWRCR1JB
RGF0YSk6CisrICAgICAgICAoZ2w6OkltYWdlOjpsb2FkQ29tcHJlc3NlZERhdGEpOgorKyAgICAg
ICAgKGdsOjpJbWFnZTo6Y29weSk6CisrICAgICAgICAoZ2w6OlRleHR1cmVTdG9yYWdlOjpUZXh0
dXJlU3RvcmFnZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmVTdG9yYWdlOjppc1JlbmRlclRhcmdl
dCk6CisrICAgICAgICAoZ2w6OlRleHR1cmVTdG9yYWdlOjpnZXRVc2FnZSk6CisrICAgICAgICAo
Z2w6OlRleHR1cmU6OnNldEltYWdlKToKKysgICAgICAgIChnbDo6VGV4dHVyZTo6c2V0Q29tcHJl
c3NlZEltYWdlKToKKysgICAgICAgIChnbDo6VGV4dHVyZTo6c3ViSW1hZ2UpOgorKyAgICAgICAg
KGdsOjpUZXh0dXJlOjpzdWJJbWFnZUNvbXByZXNzZWQpOgorKyAgICAgICAgKGdsOjpUZXh0dXJl
U3RvcmFnZTJEOjpUZXh0dXJlU3RvcmFnZTJEKToKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjpn
ZXRJbnRlcm5hbEZvcm1hdCk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6Z2V0RDNERm9ybWF0
KToKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjpjb3B5SW1hZ2UpOgorKyAgICAgICAgKGdsOjpU
ZXh0dXJlMkQ6OmNvcHlTdWJJbWFnZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6c3RvcmFn
ZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6aXNTYW1wbGVyQ29tcGxldGUpOgorKyAgICAg
ICAgKGdsOjpUZXh0dXJlMkQ6OmlzQ29tcHJlc3NlZCk6CisrICAgICAgICAoZ2w6OlRleHR1cmUy
RDo6aXNEZXB0aCk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6Y3JlYXRlVGV4dHVyZSk6Cisr
ICAgICAgICAoZ2w6OlRleHR1cmUyRDo6Y29udmVydFRvUmVuZGVyVGFyZ2V0KToKKysgICAgICAg
IChnbDo6VGV4dHVyZTJEOjpnZXRSZW5kZXJidWZmZXIpOgorKyAgICAgICAgKGdsOjpUZXh0dXJl
MkQ6OmdldFJlbmRlclRhcmdldCk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6Z2V0RGVwdGhT
dGVuY2lsKToKKysgICAgICAgIChnbDo6VGV4dHVyZVN0b3JhZ2VDdWJlTWFwOjpUZXh0dXJlU3Rv
cmFnZUN1YmVNYXApOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6Z2V0V2lkdGgpOgor
KyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6Z2V0SGVpZ2h0KToKKysgICAgICAgIChnbDo6
VGV4dHVyZUN1YmVNYXA6OmdldEludGVybmFsRm9ybWF0KToKKysgICAgICAgIChnbDo6VGV4dHVy
ZUN1YmVNYXA6OmdldEQzREZvcm1hdCk6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpp
c1NhbXBsZXJDb21wbGV0ZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjppc0NvbXBy
ZXNzZWQpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6Y3JlYXRlVGV4dHVyZSk6Cisr
ICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpjb252ZXJ0VG9SZW5kZXJUYXJnZXQpOgorKyAg
ICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6Y29weUltYWdlKToKKysgICAgICAgIChnbDo6VGV4
dHVyZUN1YmVNYXA6OmNvcHlTdWJJbWFnZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFw
OjpzdG9yYWdlKToKKysgICAgICAgIChnbDo6VGV4dHVyZUN1YmVNYXA6OmdldFJlbmRlcmJ1ZmZl
cik6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvVGV4dHVyZS5oOgorKyAgICAgICAgKEltYWdl
KToKKysgICAgICAgIChUZXh0dXJlU3RvcmFnZSk6CisrICAgICAgICAoVGV4dHVyZSk6CisrICAg
ICAgICAoVGV4dHVyZVN0b3JhZ2UyRCk6CisrICAgICAgICAoVGV4dHVyZTJEKToKKysgICAgICAg
IChUZXh0dXJlU3RvcmFnZUN1YmVNYXApOgorKyAgICAgICAgKFRleHR1cmVDdWJlTWFwKToKKysg
ICAgICAgICogc3JjL2xpYkdMRVN2Mi9WZXJ0ZXhEYXRhTWFuYWdlci5jcHA6CisrICAgICAgICAo
Z2w6OlZlcnRleERhdGFNYW5hZ2VyOjpwcmVwYXJlVmVydGV4RGF0YSk6CisrICAgICAgICAqIHNy
Yy9saWJHTEVTdjIvbGliR0xFU3YyLmNwcDoKKysgICAgICAgIChjaGVja1RleHR1cmVGb3JtYXRU
eXBlKToKKysgICAgICAgICh2YWxpZGF0ZVN1YkltYWdlUGFyYW1zMkQpOgorKyAgICAgICAgKHZh
bGlkYXRlU3ViSW1hZ2VQYXJhbXNDdWJlKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9saWJH
TEVTdjIudmNwcm9qOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL21hdGh1dGlsLmg6CisrICAg
ICAgICAoZ2wpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3V0aWxpdGllcy5jcHA6CisrICAg
ICAgICAoZ2w6OklzRGVwdGhUZXh0dXJlKToKKysgICAgICAgIChnbCk6CisrICAgICAgICAoZ2w6
OkNvbXB1dGVQaXhlbFNpemUpOgorKyAgICAgICAgKGdsOjpFeHRyYWN0Rm9ybWF0KToKKysgICAg
ICAgIChnbDo6RXh0cmFjdFR5cGUpOgorKyAgICAgICAgKGVzMmR4OjpDb252ZXJ0Q3ViZUZhY2Up
OgorKyAgICAgICAgKGVzMmR4OjpDb252ZXJ0UmVuZGVyYnVmZmVyRm9ybWF0KToKKysgICAgICAg
IChkeDJlczo6R2V0U3RlbmNpbFNpemUpOgorKyAgICAgICAgKGR4MmVzOjpHZXREZXB0aFNpemUp
OgorKyAgICAgICAgKGR4MmVzOjpJc0RlcHRoVGV4dHVyZUZvcm1hdCk6CisrICAgICAgICAoZHgy
ZXMpOgorKyAgICAgICAgKGR4MmVzOjpJc1N0ZW5jaWxUZXh0dXJlRm9ybWF0KToKKysgICAgICAg
IChkeDJlczo6Q29udmVydERlcHRoU3RlbmNpbEZvcm1hdCk6CisrICAgICAgICAqIHNyYy9saWJH
TEVTdjIvdXRpbGl0aWVzLmg6CisrICAgICAgICAoZ2wpOgorKyAgICAgICAgKGR4MmVzKToKKysK
KysyMDEyLTA3LTExICBNYXJrIFJvd2UgIDxtcm93ZUBhcHBsZS5jb20+CisrCisrICAgICAgICA8
aHR0cDovL3dlYmtpdC5vcmcvYi85MTAyND4gQnVpbGQgYWdhaW5zdCB0aGUgbGF0ZXN0IFNESyB3
aGVuIHRhcmdldGluZyBvbGRlciBPUyBYIHZlcnNpb25zLgorKworKyAgICAgICAgUmV2aWV3ZWQg
YnkgRGFuIEJlcm5zdGVpbi4KKysKKysgICAgICAgIFRoZSBkZXBsb3ltZW50IHRhcmdldCBpcyBh
bHJlYWR5IHNldCB0byB0aGUgdmVyc2lvbiB0aGF0IHdlJ3JlIHRhcmdldGluZywgYW5kIGl0J3Mg
dGhhdCBzZXR0aW5nCisrICAgICAgICB3aGljaCBkZXRlcm1pbmVzIHdoaWNoIGZ1bmN0aW9uYWxp
dHkgZnJvbSB0aGUgU0RLIGlzIGF2YWlsYWJsZSB0byB1cy4KKysKKysgICAgICAgICogQ29uZmln
dXJhdGlvbnMvQmFzZS54Y2NvbmZpZzoKKysKKysyMDEyLTA2LTIyICBKb3NodWEgTmV0dGVyZmll
bGQgIDxqbmV0dGVyZmllbGRAcmltLmNvbT4KKysKKysgICAgICAgIFtCbGFja0JlcnJ5XSBTYW5p
dGl6ZSBHTFNMIGNvZGUgdXNpbmcgQU5HTEUuCisrCisrICAgICAgICBCbGFja0JlcnJ5IHBvcnQg
ZG9lcyBub3Qgc2FuaXRpemUgR0xTTCBjb2RlIHdpdGggQU5HTEUKKysgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04OTU4MworKworKyAgICAgICAgUmV2aWV3
ZWQgYnkgUm9iIEJ1aXMuCisrCisrICAgICAgICAqIHNyYy9jb21waWxlci9vc2luY2x1ZGUuaDog
UmVjb2duaXNlcyBRTlggYXMgUE9TSVgKKysKKysyMDEyLTAzLTI2ICBEZWFuIEphY2tzb24gIDxk
aW5vQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFVwZGF0ZSBBTkdMRSBpbiBXZWJLaXQKKysgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04MTcxNworKworKyAg
ICAgICAgUmV2aWV3ZWQgYnkgS2VubmV0aCBSdXNzZWxsLgorKworKyAgICAgICAgVXBkYXRlIGFu
Z2xlcHJvamVjdCB0byByMTAwOS4gU3luY2VkIHRoZSBzb3VyY2UgZGlyZWN0b3J5CisrICAgICAg
ICBiZXR3ZWVuIHRoZSBhbmdsZSByZXBvc2l0b3J5IGFuZCBXZWJLaXQuIFJhbiB0aGUgT1MgWCBM
aW9uCisrICAgICAgICB2ZXJzaW9uIG9mIEJpc29uIG92ZXIgdGhlIGdsc2xhbmcubCBpbnB1dCB3
aGljaCBnZW5lcmF0ZXMKKysgICAgICAgIGEgc2xpZ2h0bHkgZGlmZmVyZW50IG91dHB1dCB0aGFu
IGFuZ2xlIHByb3ZpZGVkLgorKworKyAgICAgICAgKiBpbmNsdWRlL0VHTC9lZ2xleHQuaDoKKysg
ICAgICAgICogaW5jbHVkZS9HTEVTMi9nbDJleHQuaDoKKysgICAgICAgICogaW5jbHVkZS9HTFNM
QU5HL1NoYWRlckxhbmcuaDoKKysgICAgICAgICogc3JjL2NvbW1vbi9SZWZDb3VudE9iamVjdC5j
cHA6IFJlbmFtZWQgZnJvbSBTb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliR0xFU3YyL1Jl
ZkNvdW50T2JqZWN0LmNwcC4KKysgICAgICAgIChSZWZDb3VudE9iamVjdDo6UmVmQ291bnRPYmpl
Y3QpOgorKyAgICAgICAgKFJlZkNvdW50T2JqZWN0Ojp+UmVmQ291bnRPYmplY3QpOgorKyAgICAg
ICAgKFJlZkNvdW50T2JqZWN0OjphZGRSZWYpOgorKyAgICAgICAgKFJlZkNvdW50T2JqZWN0Ojpy
ZWxlYXNlKToKKysgICAgICAgIChSZWZDb3VudE9iamVjdEJpbmRpbmdQb2ludGVyOjpzZXQpOgor
KyAgICAgICAgKiBzcmMvY29tbW9uL1JlZkNvdW50T2JqZWN0Lmg6IFJlbmFtZWQgZnJvbSBTb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliR0xFU3YyL1JlZkNvdW50T2JqZWN0LmguCisrICAg
ICAgICAoUmVmQ291bnRPYmplY3QpOgorKyAgICAgICAgKFJlZkNvdW50T2JqZWN0OjppZCk6Cisr
ICAgICAgICAoUmVmQ291bnRPYmplY3RCaW5kaW5nUG9pbnRlcik6CisrICAgICAgICAoUmVmQ291
bnRPYmplY3RCaW5kaW5nUG9pbnRlcjo6UmVmQ291bnRPYmplY3RCaW5kaW5nUG9pbnRlcik6Cisr
ICAgICAgICAoUmVmQ291bnRPYmplY3RCaW5kaW5nUG9pbnRlcjo6flJlZkNvdW50T2JqZWN0Qmlu
ZGluZ1BvaW50ZXIpOgorKyAgICAgICAgKFJlZkNvdW50T2JqZWN0QmluZGluZ1BvaW50ZXI6Omdl
dCk6CisrICAgICAgICAoUmVmQ291bnRPYmplY3RCaW5kaW5nUG9pbnRlcjo6aWQpOgorKyAgICAg
ICAgKFJlZkNvdW50T2JqZWN0QmluZGluZ1BvaW50ZXI6Om9wZXJhdG9yICEgKToKKysgICAgICAg
IChCaW5kaW5nUG9pbnRlcik6CisrICAgICAgICAoQmluZGluZ1BvaW50ZXI6OnNldCk6CisrICAg
ICAgICAoQmluZGluZ1BvaW50ZXI6OmdldCk6CisrICAgICAgICAoQmluZGluZ1BvaW50ZXI6Om9w
ZXJhdG9yIC0+ICk6CisrICAgICAgICAqIHNyYy9jb21tb24vZGVidWcuY3BwOgorKyAgICAgICAg
KGdsOjpvdXRwdXQpOgorKyAgICAgICAgKiBzcmMvY29tbW9uL3ZlcnNpb24uaDoKKysgICAgICAg
ICogc3JjL2NvbXBpbGVyL0Jhc2VUeXBlcy5oOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvQ29t
cGlsZXIuY3BwOgorKyAgICAgICAgKFRDb21waWxlcjo6VENvbXBpbGVyKToKKysgICAgICAgIChU
Q29tcGlsZXI6On5UQ29tcGlsZXIpOgorKyAgICAgICAgKFRDb21waWxlcjo6bWFwTG9uZ1Zhcmlh
YmxlTmFtZXMpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvQ29uc3RhbnRVbmlvbi5oOgorKyAg
ICAgICAgKENvbnN0YW50VW5pb246OkNvbnN0YW50VW5pb24pOgorKyAgICAgICAgKENvbnN0YW50
VW5pb246Om9wZXJhdG9yPT0pOgorKyAgICAgICAgKENvbnN0YW50VW5pb246Om9wZXJhdG9yPik6
CisrICAgICAgICAoQ29uc3RhbnRVbmlvbjo6b3BlcmF0b3I8KToKKysgICAgICAgICogc3JjL2Nv
bXBpbGVyL0ludGVybWVkaWF0ZS5jcHA6CisrICAgICAgICAoVEludGVybUNvbnN0YW50VW5pb246
OmZvbGQpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvTWFwTG9uZ1ZhcmlhYmxlTmFtZXMuY3Bw
OgorKyAgICAgICAgKExvbmdOYW1lTWFwOjpMb25nTmFtZU1hcCk6CisrICAgICAgICAoTG9uZ05h
bWVNYXA6On5Mb25nTmFtZU1hcCk6CisrICAgICAgICAoTG9uZ05hbWVNYXA6OkdldEluc3RhbmNl
KToKKysgICAgICAgIChMb25nTmFtZU1hcDo6UmVsZWFzZSk6CisrICAgICAgICAoTG9uZ05hbWVN
YXA6OkZpbmQpOgorKyAgICAgICAgKExvbmdOYW1lTWFwOjpJbnNlcnQpOgorKyAgICAgICAgKExv
bmdOYW1lTWFwOjpTaXplKToKKysgICAgICAgIChNYXBMb25nVmFyaWFibGVOYW1lczo6TWFwTG9u
Z1ZhcmlhYmxlTmFtZXMpOgorKyAgICAgICAgKE1hcExvbmdWYXJpYWJsZU5hbWVzOjp2aXNpdFN5
bWJvbCk6CisrICAgICAgICAoTWFwTG9uZ1ZhcmlhYmxlTmFtZXM6Om1hcEdsb2JhbExvbmdOYW1l
KToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL01hcExvbmdWYXJpYWJsZU5hbWVzLmg6CisrICAg
ICAgICAoTG9uZ05hbWVNYXApOgorKyAgICAgICAgKE1hcExvbmdWYXJpYWJsZU5hbWVzKToKKysg
ICAgICAgICogc3JjL2NvbXBpbGVyL091dHB1dEhMU0wuY3BwOgorKyAgICAgICAgKHNoOjpPdXRw
dXRITFNMOjpPdXRwdXRITFNMKToKKysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6aGVhZGVyKToK
KysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6dmlzaXRTeW1ib2wpOgorKyAgICAgICAgKHNoOjpP
dXRwdXRITFNMOjp2aXNpdFVuYXJ5KToKKysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6dmlzaXRB
Z2dyZWdhdGUpOgorKyAgICAgICAgKHNoOjpPdXRwdXRITFNMOjp2aXNpdExvb3ApOgorKyAgICAg
ICAgKHNoOjpPdXRwdXRITFNMOjpoYW5kbGVFeGNlc3NpdmVMb29wKToKKysgICAgICAgIChzaDo6
T3V0cHV0SExTTDo6dHlwZVN0cmluZyk6CisrICAgICAgICAoc2g6Ok91dHB1dEhMU0w6OmFkZENv
bnN0cnVjdG9yKToKKysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6ZGVjb3JhdGVVbmlmb3JtKToK
KysgICAgICAgICogc3JjL2NvbXBpbGVyL091dHB1dEhMU0wuaDoKKysgICAgICAgIChPdXRwdXRI
TFNMKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL1Bvb2xBbGxvYy5jcHA6CisrICAgICAgICAo
VEFsbG9jYXRpb246OmNoZWNrR3VhcmRCbG9jayk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9T
aEhhbmRsZS5oOgorKyAgICAgICAgKFRDb21waWxlcik6CisrICAgICAgICAqIHNyYy9jb21waWxl
ci9TeW1ib2xUYWJsZS5jcHA6CisrICAgICAgICAqIHNyYy9jb21waWxlci9TeW1ib2xUYWJsZS5o
OgorKyAgICAgICAgKFRTeW1ib2xUYWJsZSk6CisrICAgICAgICAoVFN5bWJvbFRhYmxlOjpnZXRP
dXRlckxldmVsKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL1ZhcmlhYmxlSW5mby5jcHA6Cisr
ICAgICAgICAoZ2V0VmFyaWFibGVEYXRhVHlwZSk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9n
bHNsYW5nLmw6CisrICAgICAgICAqIHNyYy9jb21waWxlci9nbHNsYW5nLnk6CisrICAgICAgICAq
IHNyYy9jb21waWxlci9nbHNsYW5nX2xleC5jcHA6CisrICAgICAgICAoeXlfYnVmZmVyX3N0YXRl
KToKKysgICAgICAgICh5eWd1dHNfdCk6CisrICAgICAgICAoaW5wdXQpOgorKyAgICAgICAgKHl5
ZW5zdXJlX2J1ZmZlcl9zdGFjayk6CisrICAgICAgICAoeXlfc2Nhbl9ieXRlcyk6CisrICAgICAg
ICAoeXlnZXRfbGVuZyk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9nbHNsYW5nX3RhYi5jcHA6
CisrICAgICAgICAqIHNyYy9jb21waWxlci9vc2luY2x1ZGUuaDoKKysgICAgICAgICogc3JjL2Nv
bXBpbGVyL3ByZXByb2Nlc3Nvci9jcHAuYzoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXBy
b2Nlc3Nvci9tZW1vcnkuYzoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9u
ZXcvQ29udGV4dC5jcHA6IEFkZGVkLgorKyAgICAgICAgKGlzTWFjcm9OYW1lUmVzZXJ2ZWQpOgor
KyAgICAgICAgKHBwKToKKysgICAgICAgIChwcDo6Q29udGV4dDo6Q29udGV4dCk6CisrICAgICAg
ICAocHA6OkNvbnRleHQ6On5Db250ZXh0KToKKysgICAgICAgIChwcDo6Q29udGV4dDo6aW5pdCk6
CisrICAgICAgICAocHA6OkNvbnRleHQ6OnByb2Nlc3MpOgorKyAgICAgICAgKHBwOjpDb250ZXh0
OjpkZWZpbmVNYWNybyk6CisrICAgICAgICAocHA6OkNvbnRleHQ6OnVuZGVmaW5lTWFjcm8pOgor
KyAgICAgICAgKHBwOjpDb250ZXh0Ojppc01hY3JvRGVmaW5lZCk6CisrICAgICAgICAocHA6OkNv
bnRleHQ6OnJlc2V0KToKKysgICAgICAgIChwcDo6Q29udGV4dDo6ZGVmaW5lQnVpbHRJbk1hY3Jv
KToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9uZXcvQ29udGV4dC5oOiBB
ZGRlZC4KKysgICAgICAgIChwcCk6CisrICAgICAgICAoQ29udGV4dCk6CisrICAgICAgICAocHA6
OkNvbnRleHQ6OmxleGVyKToKKysgICAgICAgIChwcDo6Q29udGV4dDo6b3V0cHV0KToKKysgICAg
ICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9uZXcvSW5wdXQuY3BwOiBBZGRlZC4KKysg
ICAgICAgIChwcCk6CisrICAgICAgICAocHA6OklucHV0OjpJbnB1dCk6CisrICAgICAgICAocHA6
OklucHV0Ojplb2YpOgorKyAgICAgICAgKHBwOjpJbnB1dDo6cmVhZCk6CisrICAgICAgICAocHA6
OklucHV0OjpnZXRDaGFyKToKKysgICAgICAgIChwcDo6SW5wdXQ6OnBlZWtDaGFyKToKKysgICAg
ICAgIChwcDo6SW5wdXQ6OnN3aXRjaFRvTmV4dFN0cmluZyk6CisrICAgICAgICAocHA6OklucHV0
Ojppc1N0cmluZ0VtcHR5KToKKysgICAgICAgIChwcDo6SW5wdXQ6OnN0cmluZ0xlbmd0aCk6Cisr
ICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvbmV3L0lucHV0Lmg6IEFkZGVkLgor
KyAgICAgICAgKHBwKToKKysgICAgICAgIChJbnB1dCk6CisrICAgICAgICAocHA6OklucHV0Ojpl
cnJvcik6CisrICAgICAgICAocHA6OklucHV0OjpzdHJpbmdJbmRleCk6CisrICAgICAgICAqIHNy
Yy9jb21waWxlci9wcmVwcm9jZXNzb3IvbmV3L01hY3JvLmNwcDogQWRkZWQuCisrICAgICAgICAo
cHApOgorKyAgICAgICAgKHBwOjpNYWNybzo6TWFjcm8pOgorKyAgICAgICAgKHBwOjpNYWNybzo6
fk1hY3JvKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9uZXcvTWFjcm8u
aDogQWRkZWQuCisrICAgICAgICAocHApOgorKyAgICAgICAgKE1hY3JvKToKKysgICAgICAgIChw
cDo6TWFjcm86OnR5cGUpOgorKyAgICAgICAgKHBwOjpNYWNybzo6aWRlbnRpZmllcik6CisrICAg
ICAgICAocHA6Ok1hY3JvOjpwYXJhbWV0ZXJzKToKKysgICAgICAgIChwcDo6TWFjcm86OnJlcGxh
Y2VtZW50cyk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvbmV3L1ByZXBy
b2Nlc3Nvci5jcHA6IEFkZGVkLgorKyAgICAgICAgKHBwKToKKysgICAgICAgIChwcDo6UHJlcHJv
Y2Vzc29yOjpQcmVwcm9jZXNzb3IpOgorKyAgICAgICAgKHBwOjpQcmVwcm9jZXNzb3I6On5QcmVw
cm9jZXNzb3IpOgorKyAgICAgICAgKHBwOjpQcmVwcm9jZXNzb3I6OmluaXQpOgorKyAgICAgICAg
KHBwOjpQcmVwcm9jZXNzb3I6OnByb2Nlc3MpOgorKyAgICAgICAgKHBwOjpQcmVwcm9jZXNzb3I6
OnJlc2V0KToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9uZXcvUHJlcHJv
Y2Vzc29yLmg6IEFkZGVkLgorKyAgICAgICAgKHBwKToKKysgICAgICAgIChQcmVwcm9jZXNzb3Ip
OgorKyAgICAgICAgKHBwOjpQcmVwcm9jZXNzb3I6OmJlZ2luKToKKysgICAgICAgIChwcDo6UHJl
cHJvY2Vzc29yOjplbmQpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL25l
dy9Ub2tlbi5jcHA6IEFkZGVkLgorKyAgICAgICAgKHBwKToKKysgICAgICAgIChwcDo6VG9rZW46
OmVuY29kZUxvY2F0aW9uKToKKysgICAgICAgIChwcDo6VG9rZW46OmRlY29kZUxvY2F0aW9uKToK
KysgICAgICAgIChwcDo6VG9rZW46OlRva2VuKToKKysgICAgICAgIChwcDo6VG9rZW46On5Ub2tl
bik6CisrICAgICAgICAocHA6Om9wZXJhdG9yPDwpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIv
cHJlcHJvY2Vzc29yL25ldy9Ub2tlbi5oOiBBZGRlZC4KKysgICAgICAgIChwcCk6CisrICAgICAg
ICAoVG9rZW4pOgorKyAgICAgICAgKHBwOjpUb2tlbjo6bG9jYXRpb24pOgorKyAgICAgICAgKHBw
OjpUb2tlbjo6dHlwZSk6CisrICAgICAgICAocHA6OlRva2VuOjp2YWx1ZSk6CisrICAgICAgICAq
IHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvbmV3L2dlbmVyYXRlX3BhcnNlci5zaDogQWRkZWQu
CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvbmV3L3BwLmw6IEFkZGVkLgor
KyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL25ldy9wcC55OiBBZGRlZC4KKysg
ICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9uZXcvcHBfbGV4LmNwcDogQWRkZWQu
CisrICAgICAgICAoeXlfYnVmZmVyX3N0YXRlKToKKysgICAgICAgICh5eV90cmFuc19pbmZvKToK
KysgICAgICAgICh5eWd1dHNfdCk6CisrICAgICAgICAoeXlfZ2V0X3ByZXZpb3VzX3N0YXRlKToK
KysgICAgICAgICh5eV90cnlfTlVMX3RyYW5zKToKKysgICAgICAgIChpbnB1dCk6CisrICAgICAg
ICAocHByZXN0YXJ0KToKKysgICAgICAgIChwcF9zd2l0Y2hfdG9fYnVmZmVyKToKKysgICAgICAg
IChwcF9sb2FkX2J1ZmZlcl9zdGF0ZSk6CisrICAgICAgICAocHBfY3JlYXRlX2J1ZmZlcik6Cisr
ICAgICAgICAocHBfZGVsZXRlX2J1ZmZlcik6CisrICAgICAgICAocHBfaW5pdF9idWZmZXIpOgor
KyAgICAgICAgKHBwX2ZsdXNoX2J1ZmZlcik6CisrICAgICAgICAocHBwdXNoX2J1ZmZlcl9zdGF0
ZSk6CisrICAgICAgICAocHBwb3BfYnVmZmVyX3N0YXRlKToKKysgICAgICAgIChwcGVuc3VyZV9i
dWZmZXJfc3RhY2spOgorKyAgICAgICAgKHBwX3NjYW5fYnVmZmVyKToKKysgICAgICAgIChwcF9z
Y2FuX3N0cmluZyk6CisrICAgICAgICAocHBfc2Nhbl9ieXRlcyk6CisrICAgICAgICAoeXlfcHVz
aF9zdGF0ZSk6CisrICAgICAgICAoeXlfcG9wX3N0YXRlKToKKysgICAgICAgICh5eV90b3Bfc3Rh
dGUpOgorKyAgICAgICAgKHl5X2ZhdGFsX2Vycm9yKToKKysgICAgICAgIChwcGdldF9leHRyYSk6
CisrICAgICAgICAocHBnZXRfbGluZW5vKToKKysgICAgICAgIChwcGdldF9jb2x1bW4pOgorKyAg
ICAgICAgKHBwZ2V0X2luKToKKysgICAgICAgIChwcGdldF9vdXQpOgorKyAgICAgICAgKHBwZ2V0
X2xlbmcpOgorKyAgICAgICAgKHBwZ2V0X3RleHQpOgorKyAgICAgICAgKHBwc2V0X2V4dHJhKToK
KysgICAgICAgIChwcHNldF9saW5lbm8pOgorKyAgICAgICAgKHBwc2V0X2NvbHVtbik6CisrICAg
ICAgICAocHBzZXRfaW4pOgorKyAgICAgICAgKHBwc2V0X291dCk6CisrICAgICAgICAocHBnZXRf
ZGVidWcpOgorKyAgICAgICAgKHBwc2V0X2RlYnVnKToKKysgICAgICAgIChwcGdldF9sdmFsKToK
KysgICAgICAgIChwcHNldF9sdmFsKToKKysgICAgICAgIChwcGdldF9sbG9jKToKKysgICAgICAg
IChwcHNldF9sbG9jKToKKysgICAgICAgIChwcGxleF9pbml0KToKKysgICAgICAgIChwcGxleF9p
bml0X2V4dHJhKToKKysgICAgICAgICh5eV9pbml0X2dsb2JhbHMpOgorKyAgICAgICAgKHBwbGV4
X2Rlc3Ryb3kpOgorKyAgICAgICAgKHl5X2ZsZXhfc3RybmNweSk6CisrICAgICAgICAoeXlfZmxl
eF9zdHJsZW4pOgorKyAgICAgICAgKHBwYWxsb2MpOgorKyAgICAgICAgKHBwcmVhbGxvYyk6Cisr
ICAgICAgICAocHBmcmVlKToKKysgICAgICAgIChleHRyYWN0TWFjcm9OYW1lKToKKysgICAgICAg
IChwcCk6CisrICAgICAgICAocHA6OkNvbnRleHQ6OnJlYWRJbnB1dCk6CisrICAgICAgICAocHA6
OkNvbnRleHQ6OmluaXRMZXhlcik6CisrICAgICAgICAocHA6OkNvbnRleHQ6OmRlc3Ryb3lMZXhl
cik6CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvbmV3L3BwX3RhYi5jcHA6
IEFkZGVkLgorKyAgICAgICAgKFlZTFRZUEUpOgorKyAgICAgICAgKHl5c3ludGF4X2Vycm9yKToK
KysgICAgICAgICh5eWVycm9yKToKKysgICAgICAgIChwdXNoQ29uZGl0aW9uYWxCbG9jayk6Cisr
ICAgICAgICAocG9wQ29uZGl0aW9uYWxCbG9jayk6CisrICAgICAgICAocHA6OkNvbnRleHQ6OnBh
cnNlKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9uZXcvcHBfdGFiLmg6
IEFkZGVkLgorKyAgICAgICAgKFlZTFRZUEUpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJl
cHJvY2Vzc29yL25ldy9zdGxfdXRpbHMuaDogQWRkZWQuCisrICAgICAgICAocHApOgorKyAgICAg
ICAgKERlbGV0ZSk6CisrICAgICAgICAocHA6OkRlbGV0ZTo6b3BlcmF0b3IoKSk6CisrICAgICAg
ICAoRGVsZXRlU2Vjb25kKToKKysgICAgICAgIChwcDo6RGVsZXRlU2Vjb25kOjpvcGVyYXRvcigp
KToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9uZXcvdG9rZW5fdHlwZS5o
OiBBZGRlZC4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9zY2FubmVyLmM6
CisrICAgICAgICAoeXlsZXhfQ1BQKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nl
c3Nvci9zeW1ib2xzLmM6CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvdG9r
ZW5zLmM6CisrICAgICAgICAqIHNyYy9saWJFR0wvQ29uZmlnLmNwcDoKKysgICAgICAgIChlZ2w6
OkNvbmZpZ1NldDo6Z2V0Q29uZmlncyk6CisrICAgICAgICAqIHNyYy9saWJFR0wvRGlzcGxheS5j
cHA6CisrICAgICAgICAoZWdsOjpEaXNwbGF5Ojppbml0aWFsaXplKToKKysgICAgICAgIChlZ2w6
OkRpc3BsYXk6OnRlcm1pbmF0ZSk6CisrICAgICAgICAoZWdsOjpEaXNwbGF5OjpyZXN0b3JlTG9z
dERldmljZSk6CisrICAgICAgICAoZWdsOjpEaXNwbGF5OjpzeW5jKToKKysgICAgICAgIChlZ2wp
OgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6YWxsb2NhdGVFdmVudFF1ZXJ5KToKKysgICAgICAg
IChlZ2w6OkRpc3BsYXk6OmZyZWVFdmVudFF1ZXJ5KToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6
OmdldEZsb2F0MzJUZXh0dXJlU3VwcG9ydCk6CisrICAgICAgICAoZWdsOjpEaXNwbGF5OjpnZXRG
bG9hdDE2VGV4dHVyZVN1cHBvcnQpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6Z2V0RXZlbnRR
dWVyeVN1cHBvcnQpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6aW5pdEV4dGVuc2lvblN0cmlu
Zyk6CisrICAgICAgICAoZWdsOjpEaXNwbGF5OjpzaGFyZUhhbmRsZVN1cHBvcnRlZCk6CisrICAg
ICAgICAoZWdsOjpEaXNwbGF5OjpnZXRPY2NsdXNpb25RdWVyeVN1cHBvcnQpOgorKyAgICAgICAg
KGVnbDo6RGlzcGxheTo6Z2V0SW5zdGFuY2luZ1N1cHBvcnQpOgorKyAgICAgICAgKiBzcmMvbGli
RUdML0Rpc3BsYXkuaDoKKysgICAgICAgIChEaXNwbGF5KToKKysgICAgICAgIChlZ2w6OkRpc3Bs
YXk6OmlzRDNkOUV4RGV2aWNlKToKKysgICAgICAgICogc3JjL2xpYkVHTC9TdXJmYWNlLmNwcDoK
KysgICAgICAgIChlZ2w6OlN1cmZhY2U6OnJlc2V0U3dhcENoYWluKToKKysgICAgICAgICogc3Jj
L2xpYkVHTC9saWJFR0wuY3BwOgorKyAgICAgICAgKiBzcmMvbGliRUdML2xpYkVHTC52Y3Byb2o6
CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvQmxpdC5jcHA6CisrICAgICAgICAoZ2w6OkJsaXQ6
OnNldENvbW1vbkJsaXRTdGF0ZSk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvQnVmZmVyLmg6
CisrICAgICAgICAoQnVmZmVyKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9Db250ZXh0LmNw
cDoKKysgICAgICAgIChnbDo6Q29udGV4dDo6Q29udGV4dCk6CisrICAgICAgICAoZ2w6OkNvbnRl
eHQ6On5Db250ZXh0KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6bWFrZUN1cnJlbnQpOgorKyAg
ICAgICAgKGdsOjpDb250ZXh0OjpnZXRBY3RpdmVRdWVyeSk6CisrICAgICAgICAoZ2wpOgorKyAg
ICAgICAgKGdsOjpDb250ZXh0OjpjcmVhdGVGZW5jZSk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6
OmNyZWF0ZVF1ZXJ5KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6ZGVsZXRlUXVlcnkpOgorKyAg
ICAgICAgKGdsOjpDb250ZXh0OjpiZWdpblF1ZXJ5KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6
ZW5kUXVlcnkpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRRdWVyeSk6CisrICAgICAgICAo
Z2w6OkNvbnRleHQ6OmFwcGx5VmVydGV4QnVmZmVyKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6
YXBwbHlJbmRleEJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnJlYWRQaXhlbHMpOgor
KyAgICAgICAgKGdsOjpDb250ZXh0OjpjbGVhcik6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmRy
YXdBcnJheXMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpkcmF3RWxlbWVudHMpOgorKyAgICAg
ICAgKGdsOjpDb250ZXh0OjpzeW5jKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6ZHJhd0xpbmVM
b29wKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c3VwcG9ydHNPY2NsdXNpb25RdWVyaWVzKToK
KysgICAgICAgIChnbDo6Q29udGV4dDo6c3VwcG9ydHNJbnN0YW5jaW5nKToKKysgICAgICAgIChn
bDo6Q29udGV4dDo6c2V0VmVydGV4QXR0cmliRGl2aXNvcik6CisrICAgICAgICAoZ2w6OkNvbnRl
eHQ6OmluaXRFeHRlbnNpb25TdHJpbmcpOgorKyAgICAgICAgKGdsOjpWZXJ0ZXhEZWNsYXJhdGlv
bkNhY2hlOjphcHBseURlY2xhcmF0aW9uKToKKysgICAgICAgIChnbDo6VmVydGV4RGVjbGFyYXRp
b25DYWNoZTo6bWFya1N0YXRlRGlydHkpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL0NvbnRl
eHQuaDoKKysgICAgICAgIChnbCk6CisrICAgICAgICAoZ2w6OlZlcnRleEF0dHJpYnV0ZTo6VmVy
dGV4QXR0cmlidXRlKToKKysgICAgICAgIChTdGF0ZSk6CisrICAgICAgICAoVmVydGV4RGVjbGFy
YXRpb25DYWNoZSk6CisrICAgICAgICAoQ29udGV4dCk6CisrICAgICAgICAqIHNyYy9saWJHTEVT
djIvRmVuY2UuY3BwOgorKyAgICAgICAgKGdsOjpGZW5jZTo6RmVuY2UpOgorKyAgICAgICAgKGds
OjpGZW5jZTo6fkZlbmNlKToKKysgICAgICAgIChnbDo6RmVuY2U6OnNldEZlbmNlKToKKysgICAg
ICAgICogc3JjL2xpYkdMRVN2Mi9GZW5jZS5oOgorKyAgICAgICAgKGVnbCk6CisrICAgICAgICAo
RmVuY2UpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL0ZyYW1lYnVmZmVyLmNwcDoKKysgICAg
ICAgIChnbDo6RnJhbWVidWZmZXI6Omxvb2t1cFJlbmRlcmJ1ZmZlcik6CisrICAgICAgICAoZ2w6
OkZyYW1lYnVmZmVyOjpkZXRhY2hUZXh0dXJlKToKKysgICAgICAgIChnbDo6RnJhbWVidWZmZXI6
OmNvbXBsZXRlbmVzcyk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvRnJhbWVidWZmZXIuaDoK
KysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9JbmRleERhdGFNYW5hZ2VyLmNwcDoKKysgICAgICAg
IChnbDo6SW5kZXhEYXRhTWFuYWdlcjo6SW5kZXhEYXRhTWFuYWdlcik6CisrICAgICAgICAoZ2w6
OkluZGV4RGF0YU1hbmFnZXI6On5JbmRleERhdGFNYW5hZ2VyKToKKysgICAgICAgIChnbDo6Y29t
cHV0ZVJhbmdlKToKKysgICAgICAgIChnbDo6SW5kZXhEYXRhTWFuYWdlcjo6cHJlcGFyZUluZGV4
RGF0YSk6CisrICAgICAgICAoZ2w6OkluZGV4RGF0YU1hbmFnZXI6OmdldENvdW50aW5nSW5kaWNl
cyk6CisrICAgICAgICAoZ2wpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL0luZGV4RGF0YU1h
bmFnZXIuaDoKKysgICAgICAgIChJbmRleERhdGFNYW5hZ2VyKToKKysgICAgICAgICogc3JjL2xp
YkdMRVN2Mi9Qcm9ncmFtLmNwcDoKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6Z2V0VW5pZm9ybUxv
Y2F0aW9uKToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6c2V0VW5pZm9ybTFmdik6CisrICAgICAg
ICAoZ2w6OlByb2dyYW06OnNldFVuaWZvcm0yZnYpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpz
ZXRVbmlmb3JtM2Z2KToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6c2V0VW5pZm9ybTRmdik6Cisr
ICAgICAgICAoZ2w6OlByb2dyYW06OnNldFVuaWZvcm0xaXYpOgorKyAgICAgICAgKGdsOjpQcm9n
cmFtOjpzZXRVbmlmb3JtMml2KToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6c2V0VW5pZm9ybTNp
dik6CisrICAgICAgICAoZ2w6OlByb2dyYW06OnNldFVuaWZvcm00aXYpOgorKyAgICAgICAgKGds
OjpQcm9ncmFtOjpwYWNrVmFyeWluZ3MpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpsaW5rVmFy
eWluZ3MpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpkZWZpbmVVbmlmb3JtKToKKysgICAgICAg
IChnbDo6UHJvZ3JhbTo6Y3JlYXRlVW5pZm9ybSk6CisrICAgICAgICAoZ2w6OlByb2dyYW06OmFw
cGx5VW5pZm9ybW5idik6CisrICAgICAgICAoZ2w6OlByb2dyYW06OmFwcGx5VW5pZm9ybTFpdik6
CisrICAgICAgICAoZ2w6OlByb2dyYW06OmFwcGx5VW5pZm9ybTJpdik6CisrICAgICAgICAoZ2w6
OlByb2dyYW06OmFwcGx5VW5pZm9ybTNpdik6CisrICAgICAgICAoZ2w6OlByb2dyYW06OmFwcGx5
VW5pZm9ybTRpdik6CisrICAgICAgICAoZ2w6OlByb2dyYW06OmdldEluZm9Mb2cpOgorKyAgICAg
ICAgKiBzcmMvbGliR0xFU3YyL1Byb2dyYW0uaDoKKysgICAgICAgIChQcm9ncmFtKToKKysgICAg
ICAgICogc3JjL2xpYkdMRVN2Mi9RdWVyeS5jcHA6IEFkZGVkLgorKyAgICAgICAgKGdsKToKKysg
ICAgICAgIChnbDo6UXVlcnk6OlF1ZXJ5KToKKysgICAgICAgIChnbDo6UXVlcnk6On5RdWVyeSk6
CisrICAgICAgICAoZ2w6OlF1ZXJ5OjpiZWdpbik6CisrICAgICAgICAoZ2w6OlF1ZXJ5OjplbmQp
OgorKyAgICAgICAgKGdsOjpRdWVyeTo6Z2V0UmVzdWx0KToKKysgICAgICAgIChnbDo6UXVlcnk6
OmlzUmVzdWx0QXZhaWxhYmxlKToKKysgICAgICAgIChnbDo6UXVlcnk6OmdldFR5cGUpOgorKyAg
ICAgICAgKGdsOjpRdWVyeTo6dGVzdFF1ZXJ5KToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9R
dWVyeS5oOiBBZGRlZC4KKysgICAgICAgIChnbCk6CisrICAgICAgICAoUXVlcnkpOgorKyAgICAg
ICAgKiBzcmMvbGliR0xFU3YyL1JlbmRlcmJ1ZmZlci5jcHA6CisrICAgICAgICAoZ2wpOgorKyAg
ICAgICAgKGdsOjpSZW5kZXJidWZmZXJJbnRlcmZhY2U6OmFkZFByb3h5UmVmKToKKysgICAgICAg
IChnbDo6UmVuZGVyYnVmZmVySW50ZXJmYWNlOjpyZWxlYXNlUHJveHkpOgorKyAgICAgICAgKGds
OjpSZW5kZXJidWZmZXJUZXh0dXJlOjpSZW5kZXJidWZmZXJUZXh0dXJlKToKKysgICAgICAgIChn
bDo6UmVuZGVyYnVmZmVyVGV4dHVyZTo6flJlbmRlcmJ1ZmZlclRleHR1cmUpOgorKyAgICAgICAg
KGdsOjpSZW5kZXJidWZmZXJUZXh0dXJlOjphZGRQcm94eVJlZik6CisrICAgICAgICAoZ2w6OlJl
bmRlcmJ1ZmZlclRleHR1cmU6OnJlbGVhc2VQcm94eSk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1
ZmZlcjo6YWRkUmVmKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyOjpyZWxlYXNlKToKKysg
ICAgICAgICogc3JjL2xpYkdMRVN2Mi9SZW5kZXJidWZmZXIuaDoKKysgICAgICAgIChnbCk6Cisr
ICAgICAgICAoUmVuZGVyYnVmZmVySW50ZXJmYWNlKToKKysgICAgICAgIChSZW5kZXJidWZmZXJU
ZXh0dXJlKToKKysgICAgICAgIChSZW5kZXJidWZmZXIpOgorKyAgICAgICAgKiBzcmMvbGliR0xF
U3YyL1NoYWRlci5jcHA6CisrICAgICAgICAoZ2w6OlNoYWRlcjo6U2hhZGVyKToKKysgICAgICAg
IChnbDo6U2hhZGVyOjpnZXRJbmZvTG9nKToKKysgICAgICAgIChnbDo6U2hhZGVyOjpnZXRTb3Vy
Y2VJbXBsKToKKysgICAgICAgIChnbCk6CisrICAgICAgICAoZ2w6OlNoYWRlcjo6aW5pdGlhbGl6
ZUNvbXBpbGVyKToKKysgICAgICAgIChnbDo6U2hhZGVyOjpwYXJzZVZhcnlpbmdzKToKKysgICAg
ICAgIChnbDo6U2hhZGVyOjp1bmNvbXBpbGUpOgorKyAgICAgICAgKGdsOjpTaGFkZXI6OmNvbXBp
bGVUb0hMU0wpOgorKyAgICAgICAgKGdsOjpWZXJ0ZXhTaGFkZXI6OnVuY29tcGlsZSk6CisrICAg
ICAgICAoZ2w6OlZlcnRleFNoYWRlcjo6Y29tcGlsZSk6CisrICAgICAgICAoZ2w6OlZlcnRleFNo
YWRlcjo6cGFyc2VBdHRyaWJ1dGVzKToKKysgICAgICAgIChnbDo6RnJhZ21lbnRTaGFkZXI6OmNv
bXBpbGUpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1NoYWRlci5oOgorKyAgICAgICAgKFNo
YWRlcik6CisrICAgICAgICAoVmVydGV4U2hhZGVyKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2
Mi9UZXh0dXJlLmNwcDoKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjpUZXh0dXJlMkQpOgorKyAg
ICAgICAgKGdsOjpUZXh0dXJlMkQ6On5UZXh0dXJlMkQpOgorKyAgICAgICAgKGdsKToKKysgICAg
ICAgIChnbDo6VGV4dHVyZTJEOjphZGRQcm94eVJlZik6CisrICAgICAgICAoZ2w6OlRleHR1cmUy
RDo6cmVsZWFzZVByb3h5KToKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjpnZXRSZW5kZXJidWZm
ZXIpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6VGV4dHVyZUN1YmVNYXApOgorKyAg
ICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6flRleHR1cmVDdWJlTWFwKToKKysgICAgICAgIChn
bDo6VGV4dHVyZUN1YmVNYXA6OmFkZFByb3h5UmVmKToKKysgICAgICAgIChnbDo6VGV4dHVyZUN1
YmVNYXA6OnJlbGVhc2VQcm94eSk6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjppc1Nh
bXBsZXJDb21wbGV0ZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpjb252ZXJ0VG9S
ZW5kZXJUYXJnZXQpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6Z2V0UmVuZGVyYnVm
ZmVyKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9UZXh0dXJlLmg6CisrICAgICAgICAoVGV4
dHVyZSk6CisrICAgICAgICAoVGV4dHVyZTJEKToKKysgICAgICAgIChUZXh0dXJlQ3ViZU1hcCk6
CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvVmVydGV4RGF0YU1hbmFnZXIuY3BwOgorKyAgICAg
ICAgKGdsOjpWZXJ0ZXhEYXRhTWFuYWdlcjo6d3JpdGVBdHRyaWJ1dGVEYXRhKToKKysgICAgICAg
IChnbDo6VmVydGV4RGF0YU1hbmFnZXI6OnByZXBhcmVWZXJ0ZXhEYXRhKToKKysgICAgICAgIChn
bDo6VmVydGV4RGF0YU1hbmFnZXI6OnNwYWNlUmVxdWlyZWQpOgorKyAgICAgICAgKGdsKToKKysg
ICAgICAgICogc3JjL2xpYkdMRVN2Mi9WZXJ0ZXhEYXRhTWFuYWdlci5oOgorKyAgICAgICAgKFRy
YW5zbGF0ZWRBdHRyaWJ1dGUpOgorKyAgICAgICAgKFZlcnRleERhdGFNYW5hZ2VyKToKKysgICAg
ICAgICogc3JjL2xpYkdMRVN2Mi9saWJHTEVTdjIuY3BwOgorKyAgICAgICAgKiBzcmMvbGliR0xF
U3YyL2xpYkdMRVN2Mi5kZWY6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvbGliR0xFU3YyLnZj
cHJvajoKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi91dGlsaXRpZXMuY3BwOgorKyAgICAgICAg
KGdsOjpJc0ludGVybmFsVGV4dHVyZVRhcmdldCk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIv
dXRpbGl0aWVzLmg6CisrICAgICAgICAoZ2wpOgorKworKzIwMTItMDMtMDkgIEFzaG9kIE5ha2Fz
aGlhbiAgPGFzaG9kbmFrYXNoaWFuQHlhaG9vLmNvbT4KKysKKysgICAgICAgIEJhc2ggc2NyaXB0
cyBzaG91bGQgc3VwcG9ydCBMRiBlbmRpbmdzIG9ubHkKKysgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03OTUwOQorKworKyAgICAgICAgUmV2aWV3ZWQgYnkg
RGF2aWQgS2lsemVyLgorKworKyAgICAgICAgKiBzcmMvY29tcGlsZXIvZ2VuZXJhdGVfcGFyc2Vy
LnNoOiBBZGRlZCBwcm9wZXJ0eSBzdm46ZW9sLXN0eWxlLgorKworKzIwMTItMDItMjEgIFNhbSBX
ZWluaWcgIDxzYW1Ad2Via2l0Lm9yZz4KKysKKysgICAgICAgIEF0dGVtcHQgdG8gZml4IHRoZSBT
bm93IExlb3BhcmQgYnVpbGQuCisrCisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0Jhc2UueGNj
b25maWc6CisrCisrMjAxMi0wMi0yMSAgU2FtIFdlaW5pZyAgPHNhbUB3ZWJraXQub3JnPgorKwor
KyAgICAgICAgVXNlIGxpYmMrKyB3aGVuIGJ1aWxkaW5nIHdpdGggQ2xhbmcgb24gTWFjCisrICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Nzg5ODEKKysKKysg
ICAgICAgIFJldmlld2VkIGJ5IERhbiBCZXJuc3RlaW4uCisrCisrICAgICAgICAqIENvbmZpZ3Vy
YXRpb25zL0Jhc2UueGNjb25maWc6CisrCisrMjAxMi0wMS0wNyAgQ2hyaXMgTWFycmluICA8Y21h
cnJpbkBhcHBsZS5jb20+CisrCisrICAgICAgICBGaXhlZCBhIHdhcm5pbmcgaW4gR1RLIGJ1aWxk
IG9mIEFOR0xFCisrCisrICAgICAgICBVbnJldmlld2VkLgorKworKyAgICAgICAgKiBzcmMvY29t
cGlsZXIvRGV0ZWN0UmVjdXJzaW9uLmNwcDoKKysgICAgICAgIChEZXRlY3RSZWN1cnNpb246On5E
ZXRlY3RSZWN1cnNpb24pOgorKworKzIwMTItMDEtMDYgIE1hcmsgUm93ZSAgPG1yb3dlQGFwcGxl
LmNvbT4KKysKKysgICAgICAgIFJlZ2VuZXJhdGUgYSBmZXcgZmlsZXMgd2l0aCBhIG1vcmUgYXBw
cm9wcmlhdGUgdmVyc2lvbiBvZiBiaXNvbi4KKysKKysgICAgICAgIFJ1YmJlci1zdGFtcGVkIGJ5
IERhbiBCZXJuc3RlaW4uCisrCisrICAgICAgICAqIHNyYy9jb21waWxlci9nbHNsYW5nLmw6IFR3
ZWFrIHRoZSBpbnB1dCBzbyB0aGF0IGl0IGdlbmVyYXRlcyBjb2RlIHRoYXQgY29tcGlsZXMgd2l0
aG91dCB3YXJuaW5ncy4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL2dsc2xhbmdfbGV4LmNwcDoK
KysgICAgICAgICogc3JjL2NvbXBpbGVyL2dsc2xhbmdfdGFiLmNwcDoKKysgICAgICAgICogc3Jj
L2NvbXBpbGVyL2dsc2xhbmdfdGFiLmg6CisrCisrMjAxMi0wMS0wNiAgQ2hyaXMgTWFycmluICA8
Y21hcnJpbkBhcHBsZS5jb20+CisrCisrICAgICAgICBVcGRhdGUgQU5HTEUgaW4gV2ViS2l0IHRy
ZWUKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03NTc1
MworKworKyAgICAgICAgUmV2aWV3ZWQgYnkgU2ltb24gRnJhc2VyLgorKworKyAgICAgICAgVXBk
YXRlZCBBTkdMRSB0byByOTM5LiBGaXhlZCBhIGNvbXBpbGVyIGVycm9yIChtaXNzaW5nIGNhc2Ug
aW4gc3dpdGNoIHN0YXRlbWVudCkKKysgICAgICAgIGFuZCBhZGRlZCA1IG5ldyBmaWxlcyB0byB4
Y29kZXByb2ouIE90aGVyIHRoYW4gdGhhdCBpdCBpcyBhIHN0cmFpZ2h0IGNvcHkgb2YKKysgICAg
ICAgIHRoZSBmaWxlcyBmcm9tIHRoZSBBTkdMRSByZXBvc2l0b3J5LgorKworKyAgICAgICAgKiBB
TkdMRS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorKyAgICAgICAgKiBpbmNsdWRlL0VHTC9l
Z2xleHQuaDoKKysgICAgICAgICogaW5jbHVkZS9FR0wvZWdscGxhdGZvcm0uaDoKKysgICAgICAg
ICogaW5jbHVkZS9HTEVTMi9nbDJleHQuaDoKKysgICAgICAgICogaW5jbHVkZS9HTFNMQU5HL1No
YWRlckxhbmcuaDoKKysgICAgICAgICogc3JjL2NvbW1vbi9kZWJ1Zy5jcHA6CisrICAgICAgICAo
Z2w6Om91dHB1dCk6CisrICAgICAgICAoZ2w6OnRyYWNlKToKKysgICAgICAgIChnbDo6cGVyZkFj
dGl2ZSk6CisrICAgICAgICAoZ2w6OlNjb3BlZFBlcmZFdmVudEhlbHBlcjo6U2NvcGVkUGVyZkV2
ZW50SGVscGVyKToKKysgICAgICAgIChnbDo6U2NvcGVkUGVyZkV2ZW50SGVscGVyOjp+U2NvcGVk
UGVyZkV2ZW50SGVscGVyKToKKysgICAgICAgICogc3JjL2NvbW1vbi92ZXJzaW9uLmg6CisrICAg
ICAgICAqIHNyYy9jb21waWxlci9CYXNlVHlwZXMuaDoKKysgICAgICAgIChnZXRCYXNpY1N0cmlu
Zyk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9CdWlsdEluRnVuY3Rpb25FbXVsYXRvci5jcHA6
IEFkZGVkLgorKyAgICAgICAgKEJ1aWx0SW5GdW5jdGlvbkVtdWxhdG9yOjpCdWlsdEluRnVuY3Rp
b25FbXVsYXRvcik6CisrICAgICAgICAoQnVpbHRJbkZ1bmN0aW9uRW11bGF0b3I6OlNldEZ1bmN0
aW9uQ2FsbGVkKToKKysgICAgICAgIChCdWlsdEluRnVuY3Rpb25FbXVsYXRvcjo6T3V0cHV0RW11
bGF0ZWRGdW5jdGlvbkRlZmluaXRpb24pOgorKyAgICAgICAgKEJ1aWx0SW5GdW5jdGlvbkVtdWxh
dG9yOjpJZGVudGlmeUZ1bmN0aW9uKToKKysgICAgICAgIChCdWlsdEluRnVuY3Rpb25FbXVsYXRv
cjo6TWFya0J1aWx0SW5GdW5jdGlvbnNGb3JFbXVsYXRpb24pOgorKyAgICAgICAgKEJ1aWx0SW5G
dW5jdGlvbkVtdWxhdG9yOjpDbGVhbnVwKToKKysgICAgICAgIChCdWlsdEluRnVuY3Rpb25FbXVs
YXRvcjo6R2V0RW11bGF0ZWRGdW5jdGlvbk5hbWUpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIv
QnVpbHRJbkZ1bmN0aW9uRW11bGF0b3IuaDogQWRkZWQuCisrICAgICAgICAqIHNyYy9jb21waWxl
ci9Db21waWxlci5jcHA6CisrICAgICAgICAoVENvbXBpbGVyOjpUQ29tcGlsZXIpOgorKyAgICAg
ICAgKFRDb21waWxlcjo6Y29tcGlsZSk6CisrICAgICAgICAoVENvbXBpbGVyOjpjbGVhclJlc3Vs
dHMpOgorKyAgICAgICAgKFRDb21waWxlcjo6ZGV0ZWN0UmVjdXJzaW9uKToKKysgICAgICAgIChU
Q29tcGlsZXI6OmdldE1hcHBlZE5hbWVNYXhMZW5ndGgpOgorKyAgICAgICAgKFRDb21waWxlcjo6
Z2V0QnVpbHRJbkZ1bmN0aW9uRW11bGF0b3IpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvRGV0
ZWN0UmVjdXJzaW9uLmNwcDogQWRkZWQuCisrICAgICAgICAoRGV0ZWN0UmVjdXJzaW9uOjpGdW5j
dGlvbk5vZGU6OkZ1bmN0aW9uTm9kZSk6CisrICAgICAgICAoRGV0ZWN0UmVjdXJzaW9uOjpGdW5j
dGlvbk5vZGU6OmdldE5hbWUpOgorKyAgICAgICAgKERldGVjdFJlY3Vyc2lvbjo6RnVuY3Rpb25O
b2RlOjphZGRDYWxsZWUpOgorKyAgICAgICAgKERldGVjdFJlY3Vyc2lvbjo6RnVuY3Rpb25Ob2Rl
OjpkZXRlY3RSZWN1cnNpb24pOgorKyAgICAgICAgKERldGVjdFJlY3Vyc2lvbjo6RGV0ZWN0UmVj
dXJzaW9uKToKKysgICAgICAgIChEZXRlY3RSZWN1cnNpb246On5EZXRlY3RSZWN1cnNpb24pOgor
KyAgICAgICAgKERldGVjdFJlY3Vyc2lvbjo6dmlzaXRBZ2dyZWdhdGUpOgorKyAgICAgICAgKERl
dGVjdFJlY3Vyc2lvbjo6ZGV0ZWN0UmVjdXJzaW9uKToKKysgICAgICAgIChEZXRlY3RSZWN1cnNp
b246OmZpbmRGdW5jdGlvbkJ5TmFtZSk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9EZXRlY3RS
ZWN1cnNpb24uaDogQWRkZWQuCisrICAgICAgICAqIHNyYy9jb21waWxlci9FeHRlbnNpb25CZWhh
dmlvci5oOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvRm9yTG9vcFVucm9sbC5jcHA6CisrICAg
ICAgICAoRm9yTG9vcFVucm9sbDo6TWFya0Zvckxvb3BzV2l0aEludGVnZXJJbmRpY2VzRm9yVW5y
b2xsaW5nKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL0Zvckxvb3BVbnJvbGwuaDoKKysgICAg
ICAgICogc3JjL2NvbXBpbGVyL0luaXRpYWxpemUuY3BwOgorKyAgICAgICAgKEJ1aWx0SW5GdW5j
dGlvbnNDb21tb24pOgorKyAgICAgICAgKEJ1aWx0SW5GdW5jdGlvbnNWZXJ0ZXgpOgorKyAgICAg
ICAgKEJ1aWx0SW5GdW5jdGlvbnNGcmFnbWVudCk6CisrICAgICAgICAoVEJ1aWx0SW5zOjppbml0
aWFsaXplKToKKysgICAgICAgIChJZGVudGlmeUJ1aWx0SW5zKToKKysgICAgICAgIChJbml0RXh0
ZW5zaW9uQmVoYXZpb3IpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvTWFwTG9uZ1ZhcmlhYmxl
TmFtZXMuY3BwOgorKyAgICAgICAgKE1hcExvbmdWYXJpYWJsZU5hbWVzOjpNYXBMb25nVmFyaWFi
bGVOYW1lcyk6CisrICAgICAgICAoTWFwTG9uZ1ZhcmlhYmxlTmFtZXM6OnZpc2l0U3ltYm9sKToK
KysgICAgICAgIChNYXBMb25nVmFyaWFibGVOYW1lczo6bWFwVmFyeWluZ0xvbmdOYW1lKToKKysg
ICAgICAgICogc3JjL2NvbXBpbGVyL01hcExvbmdWYXJpYWJsZU5hbWVzLmg6CisrICAgICAgICAq
IHNyYy9jb21waWxlci9PdXRwdXRHTFNMQmFzZS5jcHA6CisrICAgICAgICAoVE91dHB1dEdMU0xC
YXNlOjp2aXNpdFVuYXJ5KToKKysgICAgICAgIChUT3V0cHV0R0xTTEJhc2U6OnZpc2l0QWdncmVn
YXRlKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL091dHB1dEhMU0wuY3BwOgorKyAgICAgICAg
KHNoOjpPdXRwdXRITFNMOjpPdXRwdXRITFNMKToKKysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6
aGVhZGVyKToKKysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6dmlzaXRTeW1ib2wpOgorKyAgICAg
ICAgKHNoOjpPdXRwdXRITFNMOjp2aXNpdEFnZ3JlZ2F0ZSk6CisrICAgICAgICAoc2g6Ok91dHB1
dEhMU0w6OnZpc2l0U2VsZWN0aW9uKToKKysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6dmlzaXRM
b29wKToKKysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6aGFuZGxlRXhjZXNzaXZlTG9vcCk6Cisr
ICAgICAgICAoc2g6Ok91dHB1dEhMU0w6OmFkZENvbnN0cnVjdG9yKToKKysgICAgICAgIChzaDo6
T3V0cHV0SExTTDo6ZGVjb3JhdGUpOgorKyAgICAgICAgKHNoOjpPdXRwdXRITFNMOjpkZWNvcmF0
ZVVuaWZvcm0pOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvT3V0cHV0SExTTC5oOgorKyAgICAg
ICAgKiBzcmMvY29tcGlsZXIvUGFyc2VIZWxwZXIuY3BwOgorKyAgICAgICAgKFRQYXJzZUNvbnRl
eHQ6OnJlY292ZXIpOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OnJlc2VydmVkRXJyb3JDaGVj
ayk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6Y29uc3RydWN0b3JFcnJvckNoZWNrKToKKysg
ICAgICAgIChUUGFyc2VDb250ZXh0OjpleHRlbnNpb25FcnJvckNoZWNrKToKKysgICAgICAgIChU
UGFyc2VDb250ZXh0OjpzdXBwb3J0c0V4dGVuc2lvbik6CisrICAgICAgICAoVFBhcnNlQ29udGV4
dDo6ZW50ZXJTdHJ1Y3REZWNsYXJhdGlvbik6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6ZXhp
dFN0cnVjdERlY2xhcmF0aW9uKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0OjpzdHJ1Y3ROZXN0
aW5nRXJyb3JDaGVjayk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9QYXJzZUhlbHBlci5oOgor
KyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OlRQYXJzZUNvbnRleHQpOgorKyAgICAgICAgKiBzcmMv
Y29tcGlsZXIvUG9vbEFsbG9jLmg6CisrICAgICAgICAocG9vbF9hbGxvY2F0b3I6OnBvb2xfYWxs
b2NhdG9yKToKKysgICAgICAgIChwb29sX2FsbG9jYXRvcjo6b3BlcmF0b3I9KToKKysgICAgICAg
IChwb29sX2FsbG9jYXRvcjo6c2V0QWxsb2NhdG9yKToKKysgICAgICAgIChwb29sX2FsbG9jYXRv
cjo6Z2V0QWxsb2NhdG9yKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL1NoSGFuZGxlLmg6Cisr
ICAgICAgICAqIHNyYy9jb21waWxlci9TaGFkZXJMYW5nLmNwcDoKKysgICAgICAgIChjaGVja0Fj
dGl2ZVVuaWZvcm1BbmRBdHRyaWJNYXhMZW5ndGhzKToKKysgICAgICAgIChjaGVja01hcHBlZE5h
bWVNYXhMZW5ndGgpOgorKyAgICAgICAgKGdldFZhcmlhYmxlSW5mbyk6CisrICAgICAgICAoU2hJ
bml0QnVpbHRJblJlc291cmNlcyk6CisrICAgICAgICAoU2hHZXRJbmZvKToKKysgICAgICAgICog
c3JjL2NvbXBpbGVyL1N5bWJvbFRhYmxlLmNwcDoKKysgICAgICAgIChUVHlwZTo6Y29tcHV0ZURl
ZXBlc3RTdHJ1Y3ROZXN0aW5nKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL1RyYW5zbGF0b3JF
U1NMLmNwcDoKKysgICAgICAgIChUcmFuc2xhdG9yRVNTTDo6dHJhbnNsYXRlKToKKysgICAgICAg
IChUcmFuc2xhdG9yRVNTTDo6d3JpdGVFeHRlbnNpb25CZWhhdmlvcik6CisrICAgICAgICAqIHNy
Yy9jb21waWxlci9UcmFuc2xhdG9yR0xTTC5jcHA6CisrICAgICAgICAoVHJhbnNsYXRvckdMU0w6
OnRyYW5zbGF0ZSk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9UeXBlcy5oOgorKyAgICAgICAg
KFRUeXBlOjpUVHlwZSk6CisrICAgICAgICAoVFR5cGU6OmNvcHlUeXBlKToKKysgICAgICAgIChU
VHlwZTo6c2V0U3RydWN0KToKKysgICAgICAgIChUVHlwZTo6Z2V0RGVlcGVzdFN0cnVjdE5lc3Rp
bmcpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvVW5mb2xkU2VsZWN0LmNwcDoKKysgICAgICAg
IChzaDo6VW5mb2xkU2VsZWN0Ojp0cmF2ZXJzZSk6CisrICAgICAgICAoc2g6OlVuZm9sZFNlbGVj
dDo6dmlzaXRTZWxlY3Rpb24pOgorKyAgICAgICAgKHNoOjpVbmZvbGRTZWxlY3Q6OnZpc2l0TG9v
cCk6CisrICAgICAgICAoc2g6OlVuZm9sZFNlbGVjdDo6Z2V0TmV4dFRlbXBvcmFyeUluZGV4KToK
KysgICAgICAgICogc3JjL2NvbXBpbGVyL1VuZm9sZFNlbGVjdC5oOgorKyAgICAgICAgKiBzcmMv
Y29tcGlsZXIvVmFsaWRhdGVMaW1pdGF0aW9ucy5jcHA6CisrICAgICAgICAqIHNyYy9jb21waWxl
ci9WYWxpZGF0ZUxpbWl0YXRpb25zLmg6CisrICAgICAgICAqIHNyYy9jb21waWxlci9WYXJpYWJs
ZUluZm8uY3BwOgorKyAgICAgICAgKGdldFZhcmlhYmxlRGF0YVR5cGUpOgorKyAgICAgICAgKiBz
cmMvY29tcGlsZXIvZ2VuZXJhdGVfZ2xzbGFuZ19sZXhlci5zaDogUmVtb3ZlZC4KKysgICAgICAg
ICogc3JjL2NvbXBpbGVyL2dlbmVyYXRlX2dsc2xhbmdfcGFyc2VyLnNoOiBSZW1vdmVkLgorKyAg
ICAgICAgKiBzcmMvY29tcGlsZXIvZ2VuZXJhdGVfcGFyc2VyLnNoOiBBZGRlZC4KKysgICAgICAg
ICogc3JjL2NvbXBpbGVyL2dsc2xhbmcubDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL2dsc2xh
bmcueToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL2dsc2xhbmdfbGV4LmNwcDoKKysgICAgICAg
ICh5eV9nZXRfcHJldmlvdXNfc3RhdGUpOgorKyAgICAgICAgKHl5X3RyeV9OVUxfdHJhbnMpOgor
KyAgICAgICAgKiBzcmMvY29tcGlsZXIvZ2xzbGFuZ190YWIuY3BwOgorKyAgICAgICAgKiBzcmMv
Y29tcGlsZXIvZ2xzbGFuZ190YWIuaDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL2ludGVybU91
dC5jcHA6CisrICAgICAgICAoVE91dHB1dFRyYXZlcnNlcjo6dmlzaXRBZ2dyZWdhdGUpOgorKyAg
ICAgICAgKiBzcmMvY29tcGlsZXIvaW50ZXJtZWRpYXRlLmg6CisrICAgICAgICAoVEludGVybVVu
YXJ5OjpUSW50ZXJtVW5hcnkpOgorKyAgICAgICAgKFRJbnRlcm1VbmFyeTo6c2V0VXNlRW11bGF0
ZWRGdW5jdGlvbik6CisrICAgICAgICAoVEludGVybVVuYXJ5OjpnZXRVc2VFbXVsYXRlZEZ1bmN0
aW9uKToKKysgICAgICAgIChUSW50ZXJtQWdncmVnYXRlOjpUSW50ZXJtQWdncmVnYXRlKToKKysg
ICAgICAgIChUSW50ZXJtQWdncmVnYXRlOjpzZXRVc2VFbXVsYXRlZEZ1bmN0aW9uKToKKysgICAg
ICAgIChUSW50ZXJtQWdncmVnYXRlOjpnZXRVc2VFbXVsYXRlZEZ1bmN0aW9uKToKKysgICAgICAg
ICogc3JjL2NvbXBpbGVyL29zaW5jbHVkZS5oOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvb3Nz
b3VyY2VfcG9zaXguY3BwOgorKyAgICAgICAgKE9TX0FsbG9jVExTSW5kZXgpOgorKyAgICAgICAg
KE9TX1NldFRMU1ZhbHVlKToKKysgICAgICAgIChPU19GcmVlVExTSW5kZXgpOgorKyAgICAgICAg
KiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL2F0b20uYzoKKysgICAgICAgIChHcm93QXRvbVRh
YmxlKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9sZW5ndGhfbGltaXRz
Lmg6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL3NjYW5uZXIu
aDoKKysgICAgICAgICogc3JjL2xpYkVHTC9EaXNwbGF5LmNwcDoKKysgICAgICAgIChlZ2w6OkRp
c3BsYXk6OmdldERpc3BsYXkpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6RGlzcGxheSk6Cisr
ICAgICAgICAoZWdsOjpEaXNwbGF5Ojp+RGlzcGxheSk6CisrICAgICAgICAoZWdsOjpEaXNwbGF5
Ojppbml0aWFsaXplKToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OnRlcm1pbmF0ZSk6CisrICAg
ICAgICAoZWdsOjpEaXNwbGF5OjpzdGFydFNjZW5lKToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6
OmVuZFNjZW5lKToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OmNyZWF0ZURldmljZSk6CisrICAg
ICAgICAoZWdsOjpEaXNwbGF5Ojppbml0aWFsaXplRGV2aWNlKToKKysgICAgICAgIChlZ2w6OkRp
c3BsYXk6OnJlc2V0RGV2aWNlKToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OmNyZWF0ZVdpbmRv
d1N1cmZhY2UpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6Y3JlYXRlT2Zmc2NyZWVuU3VyZmFj
ZSk6CisrICAgICAgICAoZWdsOjpEaXNwbGF5OjpjcmVhdGVDb250ZXh0KToKKysgICAgICAgIChl
Z2w6OkRpc3BsYXk6OnJlc3RvcmVMb3N0RGV2aWNlKToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6
Om5vdGlmeURldmljZUxvc3QpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6aXNEZXZpY2VMb3N0
KToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OnRlc3REZXZpY2VMb3N0KToKKysgICAgICAgIChl
Z2w6OkRpc3BsYXk6OnRlc3REZXZpY2VSZXNldHRhYmxlKToKKysgICAgICAgIChlZ2w6OkRpc3Bs
YXk6OmdldERYVDFUZXh0dXJlU3VwcG9ydCk6CisrICAgICAgICAoZWdsOjpEaXNwbGF5OjpnZXRE
WFQzVGV4dHVyZVN1cHBvcnQpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6Z2V0RFhUNVRleHR1
cmVTdXBwb3J0KToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OmdldEZsb2F0MzJUZXh0dXJlU3Vw
cG9ydCk6CisrICAgICAgICAoZWdsOjpEaXNwbGF5OjpnZXRGbG9hdDE2VGV4dHVyZVN1cHBvcnQp
OgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6Z2V0VGV4dHVyZVBvb2wpOgorKyAgICAgICAgKGVn
bDo6RGlzcGxheTo6aW5pdEV4dGVuc2lvblN0cmluZyk6CisrICAgICAgICAqIHNyYy9saWJFR0wv
RGlzcGxheS5oOgorKyAgICAgICAgKiBzcmMvbGliRUdML1N1cmZhY2UuY3BwOgorKyAgICAgICAg
KGVnbDo6U3VyZmFjZTo6U3VyZmFjZSk6CisrICAgICAgICAoZWdsOjpTdXJmYWNlOjppbml0aWFs
aXplKToKKysgICAgICAgIChlZ2w6OlN1cmZhY2U6OnJlc2V0U3dhcENoYWluKToKKysgICAgICAg
IChlZ2w6OlN1cmZhY2U6OnN1YmNsYXNzV2luZG93KToKKysgICAgICAgIChlZ2w6OlN1cmZhY2U6
OnVuc3ViY2xhc3NXaW5kb3cpOgorKyAgICAgICAgKGVnbDo6U3VyZmFjZTo6c3dhcCk6CisrICAg
ICAgICAoZWdsOjpTdXJmYWNlOjpwb3N0U3ViQnVmZmVyKToKKysgICAgICAgIChlZ2w6OlN1cmZh
Y2U6OmlzUG9zdFN1YkJ1ZmZlclN1cHBvcnRlZCk6CisrICAgICAgICAqIHNyYy9saWJFR0wvU3Vy
ZmFjZS5oOgorKyAgICAgICAgKiBzcmMvbGliRUdML2xpYkVHTC5jcHA6CisrICAgICAgICAqIHNy
Yy9saWJFR0wvbGliRUdMLnJjOgorKyAgICAgICAgKiBzcmMvbGliRUdML2xpYkVHTC52Y3Byb2o6
CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvQnVmZmVyLmNwcDoKKysgICAgICAgIChnbDo6QnVm
ZmVyOjpidWZmZXJTdWJEYXRhKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9Db250ZXh0LmNw
cDoKKysgICAgICAgIChnbDo6Q29udGV4dDo6Q29udGV4dCk6CisrICAgICAgICAoZ2w6OkNvbnRl
eHQ6Om1ha2VDdXJyZW50KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6bWFya0FsbFN0YXRlRGly
dHkpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjptYXJrQ29udGV4dExvc3QpOgorKyAgICAgICAg
KGdsOjpDb250ZXh0Ojppc0NvbnRleHRMb3N0KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c2V0
UGFja1JldmVyc2VSb3dPcmRlcik6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmdldFBhY2tSZXZl
cnNlUm93T3JkZXIpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpkZWxldGVQcm9ncmFtKToKKysg
ICAgICAgIChnbDo6Q29udGV4dDo6Z2V0RHJhd0ZyYW1lYnVmZmVyKToKKysgICAgICAgIChnbDo6
Q29udGV4dDo6YmluZERyYXdGcmFtZWJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnVz
ZVByb2dyYW0pOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzZXRGcmFtZWJ1ZmZlclplcm8pOgor
KyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRDdXJyZW50UHJvZ3JhbSk6CisrICAgICAgICAoZ2w6
OkNvbnRleHQ6OmdldEJvb2xlYW52KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0SW50ZWdl
cnYpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRRdWVyeVBhcmFtZXRlckluZm8pOgorKyAg
ICAgICAgKGdsOjpDb250ZXh0OjphcHBseVJlbmRlclRhcmdldCk6CisrICAgICAgICAoZ2w6OkNv
bnRleHQ6OmFwcGx5U3RhdGUpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjphcHBseVZlcnRleEJ1
ZmZlcik6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmFwcGx5SW5kZXhCdWZmZXIpOgorKyAgICAg
ICAgKGdsOjpDb250ZXh0OjphcHBseVNoYWRlcnMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0Ojph
cHBseVRleHR1cmVzKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6cmVhZFBpeGVscyk6CisrICAg
ICAgICAoZ2w6OkNvbnRleHQ6OmNsZWFyKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6ZHJhd0Fy
cmF5cyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmRyYXdFbGVtZW50cyk6CisrICAgICAgICAo
Z2w6OkNvbnRleHQ6OnN5bmMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpkcmF3Q2xvc2luZ0xp
bmUpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRSZXNldFN0YXR1cyk6CisrICAgICAgICAo
Z2w6OkNvbnRleHQ6OmlzUmVzZXROb3RpZmljYXRpb25FbmFibGVkKToKKysgICAgICAgIChnbDo6
Q29udGV4dDo6c3VwcG9ydHNEWFQxVGV4dHVyZXMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0Ojpz
dXBwb3J0c0RYVDNUZXh0dXJlcyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnN1cHBvcnRzRFhU
NVRleHR1cmVzKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c3VwcG9ydHNGbG9hdDMyVGV4dHVy
ZXMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzdXBwb3J0c0Zsb2F0MzJMaW5lYXJGaWx0ZXIp
OgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzdXBwb3J0c0Zsb2F0MzJSZW5kZXJhYmxlVGV4dHVy
ZXMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzdXBwb3J0c0Zsb2F0MTZUZXh0dXJlcyk6Cisr
ICAgICAgICAoZ2w6OkNvbnRleHQ6OnN1cHBvcnRzRmxvYXQxNkxpbmVhckZpbHRlcik6CisrICAg
ICAgICAoZ2w6OkNvbnRleHQ6OnN1cHBvcnRzRmxvYXQxNlJlbmRlcmFibGVUZXh0dXJlcyk6Cisr
ICAgICAgICAoZ2w6OkNvbnRleHQ6OmluaXRFeHRlbnNpb25TdHJpbmcpOgorKyAgICAgICAgKGds
OjpDb250ZXh0Ojppbml0UmVuZGVyZXJTdHJpbmcpOgorKyAgICAgICAgKGdsOjpDb250ZXh0Ojpn
ZXRSZW5kZXJlclN0cmluZyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmJsaXRGcmFtZWJ1ZmZl
cik6CisrICAgICAgICAoZ2w6OlZlcnRleERlY2xhcmF0aW9uQ2FjaGU6OmFwcGx5RGVjbGFyYXRp
b24pOgorKyAgICAgICAgKGdsOjpWZXJ0ZXhEZWNsYXJhdGlvbkNhY2hlOjptYXJrU3RhdGVEaXJ0
eSk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvQ29udGV4dC5oOgorKyAgICAgICAgKiBzcmMv
bGliR0xFU3YyL0ZlbmNlLmNwcDoKKysgICAgICAgIChnbDo6RmVuY2U6OnRlc3RGZW5jZSk6Cisr
ICAgICAgICAoZ2w6OkZlbmNlOjpnZXRGZW5jZWl2KToKKysgICAgICAgICogc3JjL2xpYkdMRVN2
Mi9GcmFtZWJ1ZmZlci5jcHA6CisrICAgICAgICAoZ2w6OkZyYW1lYnVmZmVyOjpzZXRDb2xvcmJ1
ZmZlcik6CisrICAgICAgICAoZ2w6OkZyYW1lYnVmZmVyOjpzZXREZXB0aGJ1ZmZlcik6CisrICAg
ICAgICAoZ2w6OkZyYW1lYnVmZmVyOjpzZXRTdGVuY2lsYnVmZmVyKToKKysgICAgICAgIChnbDo6
RnJhbWVidWZmZXI6OmdldENvbG9yYnVmZmVyKToKKysgICAgICAgIChnbDo6RnJhbWVidWZmZXI6
OmdldERlcHRoYnVmZmVyKToKKysgICAgICAgIChnbDo6RnJhbWVidWZmZXI6OmdldFN0ZW5jaWxi
dWZmZXIpOgorKyAgICAgICAgKGdsOjpGcmFtZWJ1ZmZlcjo6aGFzU3RlbmNpbCk6CisrICAgICAg
ICAoZ2w6OkZyYW1lYnVmZmVyOjpjb21wbGV0ZW5lc3MpOgorKyAgICAgICAgKGdsOjpEZWZhdWx0
RnJhbWVidWZmZXI6OkRlZmF1bHRGcmFtZWJ1ZmZlcik6CisrICAgICAgICAqIHNyYy9saWJHTEVT
djIvRnJhbWVidWZmZXIuaDoKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9JbmRleERhdGFNYW5h
Z2VyLmNwcDoKKysgICAgICAgIChnbDo6SW5kZXhEYXRhTWFuYWdlcjo6cHJlcGFyZUluZGV4RGF0
YSk6CisrICAgICAgICAoZ2w6OkluZGV4QnVmZmVyOjpJbmRleEJ1ZmZlcik6CisrICAgICAgICAo
Z2w6OkluZGV4QnVmZmVyOjpnZXRTZXJpYWwpOgorKyAgICAgICAgKGdsOjpJbmRleEJ1ZmZlcjo6
aXNzdWVTZXJpYWwpOgorKyAgICAgICAgKGdsOjpTdHJlYW1pbmdJbmRleEJ1ZmZlcjo6cmVzZXJ2
ZVNwYWNlKToKKysgICAgICAgIChnbDo6U3RhdGljSW5kZXhCdWZmZXI6OnJlc2VydmVTcGFjZSk6
CisrICAgICAgICAoZ2w6OlN0YXRpY0luZGV4QnVmZmVyOjpsb29rdXBSYW5nZSk6CisrICAgICAg
ICAoZ2w6OlN0YXRpY0luZGV4QnVmZmVyOjphZGRSYW5nZSk6CisrICAgICAgICAqIHNyYy9saWJH
TEVTdjIvSW5kZXhEYXRhTWFuYWdlci5oOgorKyAgICAgICAgKGdsOjpTdGF0aWNJbmRleEJ1ZmZl
cjo6SW5kZXhSYW5nZTo6b3BlcmF0b3I8KToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9Qcm9n
cmFtLmNwcDoKKysgICAgICAgIChnbDo6VW5pZm9ybTo6VW5pZm9ybSk6CisrICAgICAgICAoZ2w6
OlVuaWZvcm06OmlzQXJyYXkpOgorKyAgICAgICAgKGdsOjpVbmlmb3JtTG9jYXRpb246OlVuaWZv
cm1Mb2NhdGlvbik6CisrICAgICAgICAoZ2w6OlByb2dyYW06OlByb2dyYW0pOgorKyAgICAgICAg
KGdsOjpQcm9ncmFtOjpkZXRhY2hTaGFkZXIpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpnZXRV
c2VkU2FtcGxlclJhbmdlKToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6Z2V0U2FtcGxlck1hcHBp
bmcpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpnZXRVbmlmb3JtTG9jYXRpb24pOgorKyAgICAg
ICAgKGdsOjpQcm9ncmFtOjpzZXRVbmlmb3JtMWZ2KToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6
c2V0VW5pZm9ybTJmdik6CisrICAgICAgICAoZ2w6OlByb2dyYW06OnNldFVuaWZvcm0zZnYpOgor
KyAgICAgICAgKGdsOjp0cmFuc3Bvc2VNYXRyaXgpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpz
ZXRVbmlmb3JtTWF0cml4MmZ2KToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6c2V0VW5pZm9ybU1h
dHJpeDNmdik6CisrICAgICAgICAoZ2w6OlByb2dyYW06OnNldFVuaWZvcm1NYXRyaXg0ZnYpOgor
KyAgICAgICAgKGdsOjpQcm9ncmFtOjpnZXRVbmlmb3JtZnYpOgorKyAgICAgICAgKGdsOjpQcm9n
cmFtOjpnZXRVbmlmb3JtaXYpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjphcHBseVVuaWZvcm1z
KToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6Y29tcGlsZVRvQmluYXJ5KToKKysgICAgICAgIChn
bDo6UHJvZ3JhbTo6bGlua1ZhcnlpbmdzKToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6bGluayk6
CisrICAgICAgICAoZ2w6OlByb2dyYW06OmRlZmluZVVuaWZvcm0pOgorKyAgICAgICAgKGdsOjpQ
cm9ncmFtOjpjcmVhdGVVbmlmb3JtKToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6ZGVjb3JhdGVB
dHRyaWJ1dGUpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjp1bmRlY29yYXRlVW5pZm9ybSk6Cisr
ICAgICAgICAoZ2w6OlByb2dyYW06OmFwcGx5VW5pZm9ybW5idik6CisrICAgICAgICAoZ2w6OlBy
b2dyYW06OmFwcGx5VW5pZm9ybW5mdik6CisrICAgICAgICAoZ2w6OlByb2dyYW06OmFwcGx5VW5p
Zm9ybTFpdik6CisrICAgICAgICAoZ2w6OlByb2dyYW06OmFwcGx5VW5pZm9ybTJpdik6CisrICAg
ICAgICAoZ2w6OlByb2dyYW06OmFwcGx5VW5pZm9ybTNpdik6CisrICAgICAgICAoZ2w6OlByb2dy
YW06OmFwcGx5VW5pZm9ybTRpdik6CisrICAgICAgICAoZ2w6OlByb2dyYW06OmFwcGx5VW5pZm9y
bW5pdik6CisrICAgICAgICAoZ2w6OlByb2dyYW06OmFwcGVuZFRvSW5mb0xvZ1Nhbml0aXplZCk6
CisrICAgICAgICAoZ2w6OlByb2dyYW06OnVubGluayk6CisrICAgICAgICAoZ2w6OlByb2dyYW06
OmdldEFjdGl2ZVVuaWZvcm0pOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpnZXRBY3RpdmVVbmlm
b3JtQ291bnQpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpnZXRBY3RpdmVVbmlmb3JtTWF4TGVu
Z3RoKToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6dmFsaWRhdGVTYW1wbGVycyk6CisrICAgICAg
ICAoZ2w6OlByb2dyYW06OmluaXRpYWxpemVDb25zdGFudEhhbmRsZXMpOgorKyAgICAgICAgKGds
OjpQcm9ncmFtOjpnZXREeENvb3JkTG9jYXRpb24pOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3Yy
L1Byb2dyYW0uaDoKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9SZW5kZXJidWZmZXIuY3BwOgor
KyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJJbnRlcmZhY2U6OlJlbmRlcmJ1ZmZlckludGVyZmFj
ZSk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlckludGVyZmFjZTo6Z2V0UmVkU2l6ZSk6Cisr
ICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlckludGVyZmFjZTo6Z2V0R3JlZW5TaXplKToKKysgICAg
ICAgIChnbDo6UmVuZGVyYnVmZmVySW50ZXJmYWNlOjpnZXRCbHVlU2l6ZSk6CisrICAgICAgICAo
Z2w6OlJlbmRlcmJ1ZmZlckludGVyZmFjZTo6Z2V0QWxwaGFTaXplKToKKysgICAgICAgIChnbDo6
UmVuZGVyYnVmZmVySW50ZXJmYWNlOjpnZXREZXB0aFNpemUpOgorKyAgICAgICAgKGdsOjpSZW5k
ZXJidWZmZXJJbnRlcmZhY2U6OmdldFN0ZW5jaWxTaXplKToKKysgICAgICAgIChnbDo6UmVuZGVy
YnVmZmVyVGV4dHVyZTo6UmVuZGVyYnVmZmVyVGV4dHVyZSk6CisrICAgICAgICAoZ2w6OlJlbmRl
cmJ1ZmZlclRleHR1cmU6On5SZW5kZXJidWZmZXJUZXh0dXJlKToKKysgICAgICAgIChnbDo6UmVu
ZGVyYnVmZmVyVGV4dHVyZTo6Z2V0UmVuZGVyVGFyZ2V0KToKKysgICAgICAgIChnbDo6UmVuZGVy
YnVmZmVyVGV4dHVyZTo6Z2V0RGVwdGhTdGVuY2lsKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVm
ZmVyVGV4dHVyZTo6Z2V0V2lkdGgpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJUZXh0dXJl
OjpnZXRIZWlnaHQpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJUZXh0dXJlOjpnZXRJbnRl
cm5hbEZvcm1hdCk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclRleHR1cmU6OmdldEQzREZv
cm1hdCk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclRleHR1cmU6OmdldFNhbXBsZXMpOgor
KyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJUZXh0dXJlOjpnZXRTZXJpYWwpOgorKyAgICAgICAg
KGdsOjpSZW5kZXJidWZmZXI6OlJlbmRlcmJ1ZmZlcik6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1
ZmZlcjo6flJlbmRlcmJ1ZmZlcik6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlcjo6Z2V0UmVu
ZGVyVGFyZ2V0KToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyOjpnZXREZXB0aFN0ZW5jaWwp
OgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXI6OmdldFdpZHRoKToKKysgICAgICAgIChnbDo6
UmVuZGVyYnVmZmVyOjpnZXRIZWlnaHQpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXI6Omdl
dEludGVybmFsRm9ybWF0KToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyOjpnZXREM0RGb3Jt
YXQpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXI6OmdldFJlZFNpemUpOgorKyAgICAgICAg
KGdsOjpSZW5kZXJidWZmZXI6OmdldEdyZWVuU2l6ZSk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1
ZmZlcjo6Z2V0Qmx1ZVNpemUpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXI6OmdldEFscGhh
U2l6ZSk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlcjo6Z2V0RGVwdGhTaXplKToKKysgICAg
ICAgIChnbDo6UmVuZGVyYnVmZmVyOjpnZXRTdGVuY2lsU2l6ZSk6CisrICAgICAgICAoZ2w6OlJl
bmRlcmJ1ZmZlcjo6Z2V0U2FtcGxlcyk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlcjo6Z2V0
U2VyaWFsKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyOjpzZXRTdG9yYWdlKToKKysgICAg
ICAgIChnbDo6UmVuZGVyYnVmZmVyU3RvcmFnZTo6Z2V0RDNERm9ybWF0KToKKysgICAgICAgIChn
bDo6UmVuZGVyYnVmZmVyU3RvcmFnZTo6aXNzdWVDdWJlU2VyaWFscyk6CisrICAgICAgICAoZ2w6
OkNvbG9yYnVmZmVyOjpDb2xvcmJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkNvbG9yYnVmZmVyOjpn
ZXRSZW5kZXJUYXJnZXQpOgorKyAgICAgICAgKGdsOjpEZXB0aGJ1ZmZlcjo6RGVwdGhidWZmZXIp
OgorKyAgICAgICAgKGdsOjpTdGVuY2lsYnVmZmVyOjpTdGVuY2lsYnVmZmVyKToKKysgICAgICAg
ICogc3JjL2xpYkdMRVN2Mi9SZW5kZXJidWZmZXIuaDoKKysgICAgICAgIChnbDo6UmVuZGVyYnVm
ZmVySW50ZXJmYWNlOjp+UmVuZGVyYnVmZmVySW50ZXJmYWNlKToKKysgICAgICAgICogc3JjL2xp
YkdMRVN2Mi9TaGFkZXIuY3BwOgorKyAgICAgICAgKGdsOjpTaGFkZXI6OmdldFRyYW5zbGF0ZWRT
b3VyY2VMZW5ndGgpOgorKyAgICAgICAgKGdsOjpTaGFkZXI6OmdldFNvdXJjZUltcGwpOgorKyAg
ICAgICAgKGdsOjpTaGFkZXI6OmdldFNvdXJjZSk6CisrICAgICAgICAoZ2w6OlNoYWRlcjo6Z2V0
VHJhbnNsYXRlZFNvdXJjZSk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvU2hhZGVyLmg6Cisr
ICAgICAgICAqIHNyYy9saWJHTEVTdjIvVGV4dHVyZS5jcHA6CisrICAgICAgICAoZ2w6OkNvbnZl
cnRUZXh0dXJlRm9ybWF0VHlwZSk6CisrICAgICAgICAoZ2w6OklzVGV4dHVyZUZvcm1hdFJlbmRl
cmFibGUpOgorKyAgICAgICAgKGdsOjpJbWFnZTo6SW1hZ2UpOgorKyAgICAgICAgKGdsOjpJbWFn
ZTo6fkltYWdlKToKKysgICAgICAgIChnbDo6SW1hZ2U6OnJlZGVmaW5lKToKKysgICAgICAgIChn
bDo6SW1hZ2U6OmNyZWF0ZVN1cmZhY2UpOgorKyAgICAgICAgKGdsOjpJbWFnZTo6bG9jayk6Cisr
ICAgICAgICAoZ2w6OkltYWdlOjp1bmxvY2spOgorKyAgICAgICAgKGdsOjpJbWFnZTo6aXNSZW5k
ZXJhYmxlRm9ybWF0KToKKysgICAgICAgIChnbDo6SW1hZ2U6OmdldEQzREZvcm1hdCk6CisrICAg
ICAgICAoZ2w6OkltYWdlOjpnZXRTdXJmYWNlKToKKysgICAgICAgIChnbDo6SW1hZ2U6OnNldE1h
bmFnZWRTdXJmYWNlKToKKysgICAgICAgIChnbDo6SW1hZ2U6OnVwZGF0ZVN1cmZhY2UpOgorKyAg
ICAgICAgKGdsOjpJbWFnZTo6bG9hZERhdGEpOgorKyAgICAgICAgKGdsOjpJbWFnZTo6bG9hZEFs
cGhhRGF0YSk6CisrICAgICAgICAoZ2w6OkltYWdlOjpsb2FkQWxwaGFGbG9hdERhdGEpOgorKyAg
ICAgICAgKGdsOjpJbWFnZTo6bG9hZEFscGhhSGFsZkZsb2F0RGF0YSk6CisrICAgICAgICAoZ2w6
OkltYWdlOjpsb2FkTHVtaW5hbmNlRGF0YSk6CisrICAgICAgICAoZ2w6OkltYWdlOjpsb2FkTHVt
aW5hbmNlRmxvYXREYXRhKToKKysgICAgICAgIChnbDo6SW1hZ2U6OmxvYWRMdW1pbmFuY2VIYWxm
RmxvYXREYXRhKToKKysgICAgICAgIChnbDo6SW1hZ2U6OmxvYWRMdW1pbmFuY2VBbHBoYURhdGEp
OgorKyAgICAgICAgKGdsOjpJbWFnZTo6bG9hZEx1bWluYW5jZUFscGhhRmxvYXREYXRhKToKKysg
ICAgICAgIChnbDo6SW1hZ2U6OmxvYWRMdW1pbmFuY2VBbHBoYUhhbGZGbG9hdERhdGEpOgorKyAg
ICAgICAgKGdsOjpJbWFnZTo6bG9hZFJHQlVCeXRlRGF0YSk6CisrICAgICAgICAoZ2w6OkltYWdl
Ojpsb2FkUkdCNTY1RGF0YSk6CisrICAgICAgICAoZ2w6OkltYWdlOjpsb2FkUkdCRmxvYXREYXRh
KToKKysgICAgICAgIChnbDo6SW1hZ2U6OmxvYWRSR0JIYWxmRmxvYXREYXRhKToKKysgICAgICAg
IChnbDo6SW1hZ2U6OmxvYWRSR0JBVUJ5dGVEYXRhU1NFMik6CisrICAgICAgICAoZ2w6OkltYWdl
Ojpsb2FkUkdCQVVCeXRlRGF0YSk6CisrICAgICAgICAoZ2w6OkltYWdlOjpsb2FkUkdCQTQ0NDRE
YXRhKToKKysgICAgICAgIChnbDo6SW1hZ2U6OmxvYWRSR0JBNTU1MURhdGEpOgorKyAgICAgICAg
KGdsOjpJbWFnZTo6bG9hZFJHQkFGbG9hdERhdGEpOgorKyAgICAgICAgKGdsOjpJbWFnZTo6bG9h
ZFJHQkFIYWxmRmxvYXREYXRhKToKKysgICAgICAgIChnbDo6SW1hZ2U6OmxvYWRCR1JBRGF0YSk6
CisrICAgICAgICAoZ2w6OkltYWdlOjpsb2FkQ29tcHJlc3NlZERhdGEpOgorKyAgICAgICAgKGds
OjpGbGlwQ29weURYVDFCbG9ja0Z1bGwpOgorKyAgICAgICAgKGdsOjpGbGlwQ29weURYVDFCbG9j
a0hhbGYpOgorKyAgICAgICAgKGdsOjpGbGlwQ29weURYVDNCbG9ja0Z1bGwpOgorKyAgICAgICAg
KGdsOjpGbGlwQ29weURYVDNCbG9ja0hhbGYpOgorKyAgICAgICAgKGdsOjpGbGlwQ29weURYVDVC
bG9ja0Z1bGwpOgorKyAgICAgICAgKGdsOjpGbGlwQ29weURYVDVCbG9ja0hhbGYpOgorKyAgICAg
ICAgKGdsOjpJbWFnZTo6bG9hZERYVDFEYXRhKToKKysgICAgICAgIChnbDo6SW1hZ2U6OmxvYWRE
WFQzRGF0YSk6CisrICAgICAgICAoZ2w6OkltYWdlOjpsb2FkRFhUNURhdGEpOgorKyAgICAgICAg
KGdsOjpJbWFnZTo6Y29weSk6CisrICAgICAgICAoZ2w6OlRleHR1cmVTdG9yYWdlOjpUZXh0dXJl
U3RvcmFnZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmVTdG9yYWdlOjp+VGV4dHVyZVN0b3JhZ2Up
OgorKyAgICAgICAgKGdsOjpUZXh0dXJlU3RvcmFnZTo6aXNSZW5kZXJUYXJnZXQpOgorKyAgICAg
ICAgKGdsOjpUZXh0dXJlU3RvcmFnZTo6aXNNYW5hZ2VkKToKKysgICAgICAgIChnbDo6VGV4dHVy
ZVN0b3JhZ2U6OmdldFBvb2wpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlU3RvcmFnZTo6Z2V0VGV4
dHVyZVNlcmlhbCk6CisrICAgICAgICAoZ2w6OlRleHR1cmVTdG9yYWdlOjppc3N1ZVRleHR1cmVT
ZXJpYWwpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpUZXh0dXJlKToKKysgICAgICAgIChnbDo6
VGV4dHVyZTo6flRleHR1cmUpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpzZXRNaW5GaWx0ZXIp
OgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpzZXRNYWdGaWx0ZXIpOgorKyAgICAgICAgKGdsOjpU
ZXh0dXJlOjpzZXRXcmFwUyk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OnNldFdyYXBUKToKKysg
ICAgICAgIChnbDo6VGV4dHVyZTo6c2V0VXNhZ2UpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpn
ZXRNaW5GaWx0ZXIpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpnZXRNYWdGaWx0ZXIpOgorKyAg
ICAgICAgKGdsOjpUZXh0dXJlOjpnZXRXcmFwUyk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6Omdl
dFdyYXBUKToKKysgICAgICAgIChnbDo6VGV4dHVyZTo6Z2V0VXNhZ2UpOgorKyAgICAgICAgKGds
OjpUZXh0dXJlOjpzZXRJbWFnZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OnNldENvbXByZXNz
ZWRJbWFnZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OnN1YkltYWdlKToKKysgICAgICAgIChn
bDo6VGV4dHVyZTo6c3ViSW1hZ2VDb21wcmVzc2VkKToKKysgICAgICAgIChnbDo6VGV4dHVyZTo6
Z2V0VGV4dHVyZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6Omhhc0RpcnR5UGFyYW1ldGVycyk6
CisrICAgICAgICAoZ2w6OlRleHR1cmU6Omhhc0RpcnR5SW1hZ2VzKToKKysgICAgICAgIChnbDo6
VGV4dHVyZTo6cmVzZXREaXJ0eSk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OmdldFRleHR1cmVT
ZXJpYWwpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpnZXRSZW5kZXJUYXJnZXRTZXJpYWwpOgor
KyAgICAgICAgKGdsOjpUZXh0dXJlOjppc0ltbXV0YWJsZSk6CisrICAgICAgICAoZ2w6OlRleHR1
cmU6OmNyZWF0aW9uTGV2ZWxzKToKKysgICAgICAgIChnbDo6VGV4dHVyZTo6Z2V0QmxpdHRlcik6
CisrICAgICAgICAoZ2w6OlRleHR1cmU6OmNvcHlUb1JlbmRlclRhcmdldCk6CisrICAgICAgICAo
Z2w6OlRleHR1cmVTdG9yYWdlMkQ6OlRleHR1cmVTdG9yYWdlMkQpOgorKyAgICAgICAgKGdsOjpU
ZXh0dXJlU3RvcmFnZTJEOjp+VGV4dHVyZVN0b3JhZ2UyRCk6CisrICAgICAgICAoZ2w6OlRleHR1
cmVTdG9yYWdlMkQ6OmdldFN1cmZhY2VMZXZlbCk6CisrICAgICAgICAoZ2w6OlRleHR1cmVTdG9y
YWdlMkQ6OmdldEJhc2VUZXh0dXJlKToKKysgICAgICAgIChnbDo6VGV4dHVyZVN0b3JhZ2UyRDo6
Z2V0UmVuZGVyVGFyZ2V0U2VyaWFsKToKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjpUZXh0dXJl
MkQpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlMkQ6On5UZXh0dXJlMkQpOgorKyAgICAgICAgKGds
OjpUZXh0dXJlMkQ6OmdldFdpZHRoKToKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjpnZXRIZWln
aHQpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlMkQ6OmdldEludGVybmFsRm9ybWF0KToKKysgICAg
ICAgIChnbDo6VGV4dHVyZTJEOjpnZXRUeXBlKToKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjpy
ZWRlZmluZUltYWdlKToKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjpzZXRJbWFnZSk6CisrICAg
ICAgICAoZ2w6OlRleHR1cmUyRDo6YmluZFRleEltYWdlKToKKysgICAgICAgIChnbDo6VGV4dHVy
ZTJEOjpyZWxlYXNlVGV4SW1hZ2UpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlMkQ6OnNldENvbXBy
ZXNzZWRJbWFnZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6Y29tbWl0UmVjdCk6CisrICAg
ICAgICAoZ2w6OlRleHR1cmUyRDo6Y29weUltYWdlKToKKysgICAgICAgIChnbDo6VGV4dHVyZTJE
Ojpjb3B5U3ViSW1hZ2UpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlMkQ6OnN0b3JhZ2UpOgorKyAg
ICAgICAgKGdsOjpUZXh0dXJlMkQ6OmlzU2FtcGxlckNvbXBsZXRlKToKKysgICAgICAgIChnbDo6
VGV4dHVyZTJEOjppc01pcG1hcENvbXBsZXRlKToKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjpn
ZXRCYXNlVGV4dHVyZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6Y3JlYXRlVGV4dHVyZSk6
CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6dXBkYXRlVGV4dHVyZSk6CisrICAgICAgICAoZ2w6
OlRleHR1cmUyRDo6Y29udmVydFRvUmVuZGVyVGFyZ2V0KToKKysgICAgICAgIChnbDo6VGV4dHVy
ZTJEOjpnZW5lcmF0ZU1pcG1hcHMpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlMkQ6OmdldFJlbmRl
cmJ1ZmZlcik6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6Z2V0UmVuZGVyVGFyZ2V0KToKKysg
ICAgICAgIChnbDo6VGV4dHVyZTJEOjpnZXRTdG9yYWdlKToKKysgICAgICAgIChnbDo6VGV4dHVy
ZVN0b3JhZ2VDdWJlTWFwOjpUZXh0dXJlU3RvcmFnZUN1YmVNYXApOgorKyAgICAgICAgKGdsOjpU
ZXh0dXJlU3RvcmFnZUN1YmVNYXA6On5UZXh0dXJlU3RvcmFnZUN1YmVNYXApOgorKyAgICAgICAg
KGdsOjpUZXh0dXJlU3RvcmFnZUN1YmVNYXA6OmdldEN1YmVNYXBTdXJmYWNlKToKKysgICAgICAg
IChnbDo6VGV4dHVyZVN0b3JhZ2VDdWJlTWFwOjpnZXRCYXNlVGV4dHVyZSk6CisrICAgICAgICAo
Z2w6OlRleHR1cmVTdG9yYWdlQ3ViZU1hcDo6Z2V0UmVuZGVyVGFyZ2V0U2VyaWFsKToKKysgICAg
ICAgIChnbDo6VGV4dHVyZUN1YmVNYXA6OlRleHR1cmVDdWJlTWFwKToKKysgICAgICAgIChnbDo6
VGV4dHVyZUN1YmVNYXA6On5UZXh0dXJlQ3ViZU1hcCk6CisrICAgICAgICAoZ2w6OlRleHR1cmVD
dWJlTWFwOjpnZXRXaWR0aCk6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpnZXRIZWln
aHQpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6Z2V0SW50ZXJuYWxGb3JtYXQpOgor
KyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6Z2V0VHlwZSk6CisrICAgICAgICAoZ2w6OlRl
eHR1cmVDdWJlTWFwOjpzZXRDb21wcmVzc2VkSW1hZ2UpOgorKyAgICAgICAgKGdsOjpUZXh0dXJl
Q3ViZU1hcDo6Y29tbWl0UmVjdCk6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpzdWJJ
bWFnZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpzdWJJbWFnZUNvbXByZXNzZWQp
OgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6aXNTYW1wbGVyQ29tcGxldGUpOgorKyAg
ICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6aXNDdWJlQ29tcGxldGUpOgorKyAgICAgICAgKGds
OjpUZXh0dXJlQ3ViZU1hcDo6aXNNaXBtYXBDdWJlQ29tcGxldGUpOgorKyAgICAgICAgKGdsOjpU
ZXh0dXJlQ3ViZU1hcDo6Z2V0QmFzZVRleHR1cmUpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3Vi
ZU1hcDo6Y3JlYXRlVGV4dHVyZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjp1cGRh
dGVUZXh0dXJlKToKKysgICAgICAgIChnbDo6VGV4dHVyZUN1YmVNYXA6OmNvbnZlcnRUb1JlbmRl
clRhcmdldCk6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpzZXRJbWFnZSk6CisrICAg
ICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpyZWRlZmluZUltYWdlKToKKysgICAgICAgIChnbDo6
VGV4dHVyZUN1YmVNYXA6OmNvcHlJbWFnZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFw
Ojpjb3B5U3ViSW1hZ2UpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6c3RvcmFnZSk6
CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpnZW5lcmF0ZU1pcG1hcHMpOgorKyAgICAg
ICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6Z2V0UmVuZGVyYnVmZmVyKToKKysgICAgICAgIChnbDo6
VGV4dHVyZUN1YmVNYXA6OmdldFJlbmRlclRhcmdldCk6CisrICAgICAgICAoZ2w6OlRleHR1cmVD
dWJlTWFwOjpnZXRTdG9yYWdlKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9UZXh0dXJlLmg6
CisrICAgICAgICAoZ2w6OkltYWdlOjptYXJrRGlydHkpOgorKyAgICAgICAgKGdsOjpJbWFnZTo6
bWFya0NsZWFuKToKKysgICAgICAgIChnbDo6SW1hZ2U6OmdldFdpZHRoKToKKysgICAgICAgIChn
bDo6SW1hZ2U6OmdldEhlaWdodCk6CisrICAgICAgICAoZ2w6OkltYWdlOjpnZXRGb3JtYXQpOgor
KyAgICAgICAgKGdsOjpJbWFnZTo6Z2V0VHlwZSk6CisrICAgICAgICAoZ2w6OkltYWdlOjppc0Rp
cnR5KToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9WZXJ0ZXhEYXRhTWFuYWdlci5jcHA6Cisr
ICAgICAgICAoZ2w6OmVsZW1lbnRzSW5CdWZmZXIpOgorKyAgICAgICAgKGdsOjpWZXJ0ZXhEYXRh
TWFuYWdlcjo6VmVydGV4RGF0YU1hbmFnZXIpOgorKyAgICAgICAgKGdsOjpWZXJ0ZXhEYXRhTWFu
YWdlcjo6d3JpdGVBdHRyaWJ1dGVEYXRhKToKKysgICAgICAgIChnbDo6VmVydGV4RGF0YU1hbmFn
ZXI6OnByZXBhcmVWZXJ0ZXhEYXRhKToKKysgICAgICAgIChnbDo6VmVydGV4QnVmZmVyOjpWZXJ0
ZXhCdWZmZXIpOgorKyAgICAgICAgKGdsOjpWZXJ0ZXhCdWZmZXI6OmdldFNlcmlhbCk6CisrICAg
ICAgICAoZ2w6OlZlcnRleEJ1ZmZlcjo6aXNzdWVTZXJpYWwpOgorKyAgICAgICAgKGdsOjpTdHJl
YW1pbmdWZXJ0ZXhCdWZmZXI6OnJlc2VydmVSZXF1aXJlZFNwYWNlKToKKysgICAgICAgIChnbDo6
U3RhdGljVmVydGV4QnVmZmVyOjptYXApOgorKyAgICAgICAgKGdsOjpTdGF0aWNWZXJ0ZXhCdWZm
ZXI6OnJlc2VydmVSZXF1aXJlZFNwYWNlKToKKysgICAgICAgIChnbDo6U3RhdGljVmVydGV4QnVm
ZmVyOjpsb29rdXBBdHRyaWJ1dGUpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1ZlcnRleERh
dGFNYW5hZ2VyLmg6CisrICAgICAgICAoZ2w6OkFycmF5VmVydGV4QnVmZmVyOjpzaXplKToKKysg
ICAgICAgICogc3JjL2xpYkdMRVN2Mi9nZW9tZXRyeS9JbmRleERhdGFNYW5hZ2VyLmNwcDogUmVt
b3ZlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9nZW9tZXRyeS9JbmRleERhdGFNYW5hZ2Vy
Lmg6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvZ2VvbWV0cnkvVmVydGV4RGF0
YU1hbmFnZXIuY3BwOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL2dlb21ldHJ5
L1ZlcnRleERhdGFNYW5hZ2VyLmg6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIv
Z2VvbWV0cnkvdmVydGV4Y29udmVyc2lvbi5oOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvbGli
R0xFU3YyL2xpYkdMRVN2Mi5jcHA6CisrICAgICAgICAodmFsaWRhdGVTdWJJbWFnZVBhcmFtcyk6
CisrICAgICAgICAodmFsaWRSZWFkRm9ybWF0VHlwZSk6CisrICAgICAgICAoRXh0ZW5zaW9uOjpn
bEJpbmRUZXhJbWFnZSk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvbGliR0xFU3YyLmRlZjoK
KysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9saWJHTEVTdjIucmM6CisrICAgICAgICAqIHNyYy9s
aWJHTEVTdjIvbGliR0xFU3YyLnZjcHJvajoKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9tYWlu
LmNwcDoKKysgICAgICAgIChnbDo6Z2V0Tm9uTG9zdENvbnRleHQpOgorKyAgICAgICAgKGdsOjpj
aGVja0RldmljZUxvc3QpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL21haW4uaDoKKysgICAg
ICAgICogc3JjL2xpYkdMRVN2Mi91dGlsaXRpZXMuY3BwOgorKyAgICAgICAgKGdsOjpVbmlmb3Jt
RXh0ZXJuYWxDb21wb25lbnRDb3VudCk6CisrICAgICAgICAoZ2w6OlVuaWZvcm1JbnRlcm5hbENv
bXBvbmVudENvdW50KToKKysgICAgICAgIChnbDo6VW5pZm9ybUNvbXBvbmVudFNpemUpOgorKyAg
ICAgICAgKGdsOjpVbmlmb3JtSW50ZXJuYWxTaXplKToKKysgICAgICAgIChnbDo6VW5pZm9ybUV4
dGVybmFsU2l6ZSk6CisrICAgICAgICAoZ2w6OkNvbXB1dGVDb21wcmVzc2VkU2l6ZSk6CisrICAg
ICAgICAoZ2w6OklzQ29tcHJlc3NlZCk6CisrICAgICAgICAoZ2w6OkV4dHJhY3RGb3JtYXQpOgor
KyAgICAgICAgKGdsOjpFeHRyYWN0VHlwZSk6CisrICAgICAgICAoZHgyZXM6OklzRmxvYXQzMkZv
cm1hdCk6CisrICAgICAgICAoZHgyZXM6OklzRmxvYXQxNkZvcm1hdCk6CisrICAgICAgICAqIHNy
Yy9saWJHTEVTdjIvdXRpbGl0aWVzLmg6CisrICAgICAgICAoaXNEZXZpY2VMb3N0RXJyb3IpOgor
KworKzIwMTEtMTEtMTEgIERhcmluIEFkbGVyICA8ZGFyaW5AYXBwbGUuY29tPgorKworKyAgICAg
ICAgKiBBTkdMRS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOiBMZXQgYSBuZXdlciBYY29kZSB1
cGRhdGUgdGhpcyBmaWxlLgorKyAgICAgICAgSWYgYW4gb2xkZXIgWGNvZGUgZG93bmdyYWRlcyB0
aGlzIGZpbGUgYW5kIHdlIGhhdmUgYSByaXNrIG9mIHNvbWUga2luZCBvZgorKyAgICAgICAgb3Nj
aWxsYXRpbmcgY29tbWl0IHNpdHVhdGlvbiwgcGxlYXNlIGNvbnRhY3QgbWUgc28gSSBrbm93IG5v
dCB0byBkbyB0aGlzIGFnYWluLgorKworKzIwMTEtMDktMTkgIEFkYW0gUm9iZW4gIDxhcm9iZW5A
YXBwbGUuY29tPgorKworKyAgICAgICAgTGV0IFhjb2RlIDQgZG8gaXRzIHRoYW5nIHdpdGggQU5H
TEUueGNvZGVwcm9qCisrCisrICAgICAgICAqIEFOR0xFLnhjb2RlcHJvai9wcm9qZWN0LnBieHBy
b2o6CisrCisrMjAxMS0wOS0xMyAgQW5kZXJzIENhcmxzc29uICA8YW5kZXJzY2FAYXBwbGUuY29t
PgorKworKyAgICAgICAgRGlzYWJsZSBDKysgZXhjZXB0aW9ucyB3aGVuIGJ1aWxkaW5nIHdpdGgg
Y2xhbmcKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02
ODAzMQorKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzk1NTY4ODA+CisrCisrICAgICAgICBSZXZp
ZXdlZCBieSBNYXJrIFJvd2UuCisrCisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0Jhc2UueGNj
b25maWc6CisrCisrMjAxMS0wOS0wOCAgQW5kcmFzIEJlY3NpICA8YW5kcmFzLmJlY3NpQG5va2lh
LmNvbT4KKysKKysgICAgICAgIFtRdF0gQnVpbGQgZmFpbHMgd2l0aCBzdHJpY3QgY29tcGlsZXIK
KysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02Nzc3OAor
KworKyAgICAgICAgUmV2aWV3ZWQgYnkgQ3NhYmEgT3N6dHJvZ29uw6FjLgorKworKyAgICAgICAg
KiBzcmMvY29tcGlsZXIvZ2xzbGFuZ19sZXguY3BwOiBSZWdlbmVyYXRlIHdpdGggZ2VuZXJhdGVf
Z2xzbGFuZ19sZXhlci5zaCB1c2luZyBhIG5ld2VyIGZsZXgKKysgICAgICAgIHRvIHN1cHByZXNz
IHdhcm5pbmcgYW5kIGZpeCB0aGUgYnVpbGQgd2hlbiB1c2luZyBbLVdlcnJvcj11bnVzZWQtcmVz
dWx0XQorKworKzIwMTEtMDgtMTIgIE1hcmsgUm93ZSAgPG1yb3dlQGFwcGxlLmNvbT4KKysKKysg
ICAgICAgIEJlIG1vcmUgZm9yd2FyZC1sb29raW5nIGluIHRoZSBjaG9pY2Ugb2YgY29tcGlsZXIu
CisrCisrICAgICAgICBSdWJiZXItc3RhbXBlZCBieSBKb24gSG9uZXljdXR0LgorKworKyAgICAg
ICAgKiBDb25maWd1cmF0aW9ucy9Db21waWxlclZlcnNpb24ueGNjb25maWc6CisrCisrMjAxMS0w
OC0xMSAgUmVuYXRhIEhvZG92YW4gIDxyZW5pQHdlYmtpdC5vcmc+CisrCisrICAgICAgICBbUXRd
Rml4IHdhcm5pbmdzIGFmdGVyIHI5MjgwNS4KKysKKysgICAgICAgIFJldmlld2VkIGJ5IENzYWJh
IE9zenRyb2dvbsOhYy4KKysKKysgICAgICAgIENvbnRyb2wgcmVhY2hlZCB0aGUgZW5kIG5vbi12
b2lkIGZ1bmN0aW9ucy4KKysKKysgICAgICAgICogc3JjL2NvbXBpbGVyL29zc291cmNlX3Bvc2l4
LmNwcDoKKysgICAgICAgIChPU19BbGxvY1RMU0luZGV4KToKKysgICAgICAgIChPU19TZXRUTFNW
YWx1ZSk6CisrCisrMjAxMS0wOC0xMSAgUmVuYXRhIEhvZG92YW4gIDxyZW5pQHdlYmtpdC5vcmc+
CisrCisrICAgICAgICBCdWlsZCBmaXggb24gUXQgV2luZG93cyAzMi1iaXQgUmVsZWFzZS9EZWJ1
ZyBhZnRlciByOTI4MDUuCisrCisrICAgICAgICBVbnJldmlld2VkLgorKworKyAgICAgICAgKiBz
cmMvY29tcGlsZXIvb3Nzb3VyY2VfcG9zaXguY3BwOgorKyAgICAgICAgKE9TX0ZyZWVUTFNJbmRl
eCk6CisrCisrMjAxMS0wOC0wNCAgTWFyayBSb3dlICA8bXJvd2VAYXBwbGUuY29tPgorKworKyAg
ICAgICAgRnV0dXJlLXByb29mIFhjb2RlIGNvbmZpZ3VyYXRpb24gc2V0dGluZ3MuCisrCisrICAg
ICAgICAqIENvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWc6CisrICAgICAgICAqIENvbmZpZ3Vy
YXRpb25zL0NvbXBpbGVyVmVyc2lvbi54Y2NvbmZpZzoKKysgICAgICAgICogQ29uZmlndXJhdGlv
bnMvRGVidWdSZWxlYXNlLnhjY29uZmlnOgorKworKzIwMTEtMDYtMzAgIE1hcmsgUm93ZSAgPG1y
b3dlQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFJ1YmJlci1zdGFtcGVkIGJ5IERhbiBCZXJuc3Rl
aW4uCisrCisrICAgICAgICBBTkdMRSBzaG91bGRuJ3QgdHJ5IHRvIHVzZSBpbnRlcm5hbCBTREtz
LiBJdCBkb2Vzbid0IG5lZWQgdGhlbSEKKysKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMvQmFz
ZS54Y2NvbmZpZzoKKysKKysyMDExLTA2LTIwICBaaGVueWFvIE1vICA8em1vQGdvb2dsZS5jb20+
CisrCisrICAgICAgICBSZXZpZXdlZCBieSBLZW5uZXRoIFJ1c3NlbGwuCisrCisrICAgICAgICBV
cGRhdGUgQU5HTEUgdG8gcjY5NgorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTU2Mzk2CisrCisrICAgICAgICAqIEFOR0xFLnhjb2RlcHJvai9wcm9qZWN0
LnBieHByb2o6CisrICAgICAgICAqIGluY2x1ZGUvRUdML2VnbGV4dC5oOgorKyAgICAgICAgKiBp
bmNsdWRlL0dMU0xBTkcvU2hhZGVyTGFuZy5oOgorKyAgICAgICAgKiBzcmMvYnVpbGRfYW5nbGUu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKysgICAgICAgICogc3JjL2NvbW1vbi9kZWJ1Zy5j
cHA6CisrICAgICAgICAoZ2w6Om91dHB1dCk6CisrICAgICAgICAoZ2w6OnRyYWNlKToKKysgICAg
ICAgIChnbDo6cGVyZkFjdGl2ZSk6CisrICAgICAgICAoZ2w6OlNjb3BlZFBlcmZFdmVudEhlbHBl
cjo6U2NvcGVkUGVyZkV2ZW50SGVscGVyKToKKysgICAgICAgIChnbDo6U2NvcGVkUGVyZkV2ZW50
SGVscGVyOjp+U2NvcGVkUGVyZkV2ZW50SGVscGVyKToKKysgICAgICAgICogc3JjL2NvbW1vbi9k
ZWJ1Zy5oOgorKyAgICAgICAgKiBzcmMvY29tbW9uL3ZlcnNpb24uaDogQWRkZWQuCisrICAgICAg
ICAqIHNyYy9jb21waWxlci9Db2RlR2VuR0xTTC5jcHA6CisrICAgICAgICAoQ29uc3RydWN0Q29t
cGlsZXIpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvQ29kZUdlbkhMU0wuY3BwOgorKyAgICAg
ICAgKENvbnN0cnVjdENvbXBpbGVyKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL0NvbXBpbGVy
LmNwcDoKKysgICAgICAgIChUQ29tcGlsZXI6OmNvbXBpbGUpOgorKyAgICAgICAgKFRDb21waWxl
cjo6bWFwTG9uZ1ZhcmlhYmxlTmFtZXMpOgorKyAgICAgICAgKFRDb21waWxlcjo6Z2V0TWFwcGVk
TmFtZU1heExlbmd0aCk6CisrICAgICAgICAoVENvbXBpbGVyOjpnZXRFeHRlbnNpb25CZWhhdmlv
cik6CisrICAgICAgICAqIHNyYy9jb21waWxlci9Db25zdGFudFVuaW9uLmg6CisrICAgICAgICAo
Q29uc3RhbnRVbmlvbjo6b3BlcmF0b3I9PSk6CisrICAgICAgICAoQ29uc3RhbnRVbmlvbjo6b3Bl
cmF0b3I+KToKKysgICAgICAgIChDb25zdGFudFVuaW9uOjpvcGVyYXRvcjwpOgorKyAgICAgICAg
KiBzcmMvY29tcGlsZXIvRXh0ZW5zaW9uQmVoYXZpb3IuaDoKKysgICAgICAgIChnZXRCZWhhdmlv
clN0cmluZyk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9Gb3JMb29wVW5yb2xsLmNwcDogQWRk
ZWQuCisrICAgICAgICAoRm9yTG9vcFVucm9sbDo6RmlsbExvb3BJbmRleEluZm8pOgorKyAgICAg
ICAgKEZvckxvb3BVbnJvbGw6OlN0ZXApOgorKyAgICAgICAgKEZvckxvb3BVbnJvbGw6OlNhdGlz
Zmllc0xvb3BDb25kaXRpb24pOgorKyAgICAgICAgKEZvckxvb3BVbnJvbGw6Ok5lZWRzVG9SZXBs
YWNlU3ltYm9sV2l0aFZhbHVlKToKKysgICAgICAgIChGb3JMb29wVW5yb2xsOjpHZXRMb29wSW5k
ZXhWYWx1ZSk6CisrICAgICAgICAoRm9yTG9vcFVucm9sbDo6UHVzaCk6CisrICAgICAgICAoRm9y
TG9vcFVucm9sbDo6UG9wKToKKysgICAgICAgIChGb3JMb29wVW5yb2xsOjpnZXRMb29wSW5jcmVt
ZW50KToKKysgICAgICAgIChGb3JMb29wVW5yb2xsOjpldmFsdWF0ZUludENvbnN0YW50KToKKysg
ICAgICAgICogc3JjL2NvbXBpbGVyL0Zvckxvb3BVbnJvbGwuaDogQWRkZWQuCisrICAgICAgICAo
Rm9yTG9vcFVucm9sbDo6Rm9yTG9vcFVucm9sbCk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9J
bml0aWFsaXplLmNwcDoKKysgICAgICAgIChCdWlsdEluRnVuY3Rpb25zVmVydGV4KToKKysgICAg
ICAgICogc3JjL2NvbXBpbGVyL01hcExvbmdWYXJpYWJsZU5hbWVzLmNwcDogQWRkZWQuCisrICAg
ICAgICAoTWFwTG9uZ1ZhcmlhYmxlTmFtZXM6Ok1hcExvbmdWYXJpYWJsZU5hbWVzKToKKysgICAg
ICAgIChNYXBMb25nVmFyaWFibGVOYW1lczo6dmlzaXRTeW1ib2wpOgorKyAgICAgICAgKE1hcExv
bmdWYXJpYWJsZU5hbWVzOjp2aXNpdENvbnN0YW50VW5pb24pOgorKyAgICAgICAgKE1hcExvbmdW
YXJpYWJsZU5hbWVzOjp2aXNpdEJpbmFyeSk6CisrICAgICAgICAoTWFwTG9uZ1ZhcmlhYmxlTmFt
ZXM6OnZpc2l0VW5hcnkpOgorKyAgICAgICAgKE1hcExvbmdWYXJpYWJsZU5hbWVzOjp2aXNpdFNl
bGVjdGlvbik6CisrICAgICAgICAoTWFwTG9uZ1ZhcmlhYmxlTmFtZXM6OnZpc2l0QWdncmVnYXRl
KToKKysgICAgICAgIChNYXBMb25nVmFyaWFibGVOYW1lczo6dmlzaXRMb29wKToKKysgICAgICAg
IChNYXBMb25nVmFyaWFibGVOYW1lczo6dmlzaXRCcmFuY2gpOgorKyAgICAgICAgKE1hcExvbmdW
YXJpYWJsZU5hbWVzOjptYXBWYXJ5aW5nTG9uZ05hbWUpOgorKyAgICAgICAgKiBzcmMvY29tcGls
ZXIvTWFwTG9uZ1ZhcmlhYmxlTmFtZXMuaDogQWRkZWQuCisrICAgICAgICAqIHNyYy9jb21waWxl
ci9PdXRwdXRFU1NMLmNwcDogQWRkZWQuCisrICAgICAgICAoVE91dHB1dEVTU0w6OlRPdXRwdXRF
U1NMKToKKysgICAgICAgIChUT3V0cHV0RVNTTDo6d3JpdGVWYXJpYWJsZVByZWNpc2lvbik6Cisr
ICAgICAgICAqIHNyYy9jb21waWxlci9PdXRwdXRFU1NMLmg6IEFkZGVkLgorKyAgICAgICAgKiBz
cmMvY29tcGlsZXIvT3V0cHV0R0xTTC5jcHA6CisrICAgICAgICAoVE91dHB1dEdMU0w6OlRPdXRw
dXRHTFNMKToKKysgICAgICAgIChUT3V0cHV0R0xTTDo6d3JpdGVWYXJpYWJsZVByZWNpc2lvbik6
CisrICAgICAgICAqIHNyYy9jb21waWxlci9PdXRwdXRHTFNMLmg6CisrICAgICAgICAqIHNyYy9j
b21waWxlci9PdXRwdXRHTFNMQmFzZS5jcHA6IEFkZGVkLgorKyAgICAgICAgKFRPdXRwdXRHTFNM
QmFzZTo6VE91dHB1dEdMU0xCYXNlKToKKysgICAgICAgIChUT3V0cHV0R0xTTEJhc2U6OndyaXRl
VHJpcGxldCk6CisrICAgICAgICAoVE91dHB1dEdMU0xCYXNlOjp3cml0ZVZhcmlhYmxlVHlwZSk6
CisrICAgICAgICAoVE91dHB1dEdMU0xCYXNlOjp3cml0ZUZ1bmN0aW9uUGFyYW1ldGVycyk6Cisr
ICAgICAgICAoVE91dHB1dEdMU0xCYXNlOjp3cml0ZUNvbnN0YW50VW5pb24pOgorKyAgICAgICAg
KFRPdXRwdXRHTFNMQmFzZTo6dmlzaXRTeW1ib2wpOgorKyAgICAgICAgKFRPdXRwdXRHTFNMQmFz
ZTo6dmlzaXRDb25zdGFudFVuaW9uKToKKysgICAgICAgIChUT3V0cHV0R0xTTEJhc2U6OnZpc2l0
QmluYXJ5KToKKysgICAgICAgIChUT3V0cHV0R0xTTEJhc2U6OnZpc2l0VW5hcnkpOgorKyAgICAg
ICAgKFRPdXRwdXRHTFNMQmFzZTo6dmlzaXRTZWxlY3Rpb24pOgorKyAgICAgICAgKFRPdXRwdXRH
TFNMQmFzZTo6dmlzaXRBZ2dyZWdhdGUpOgorKyAgICAgICAgKFRPdXRwdXRHTFNMQmFzZTo6dmlz
aXRMb29wKToKKysgICAgICAgIChUT3V0cHV0R0xTTEJhc2U6OnZpc2l0QnJhbmNoKToKKysgICAg
ICAgIChUT3V0cHV0R0xTTEJhc2U6OnZpc2l0Q29kZUJsb2NrKToKKysgICAgICAgICogc3JjL2Nv
bXBpbGVyL091dHB1dEdMU0xCYXNlLmg6IEFkZGVkLgorKyAgICAgICAgKFRPdXRwdXRHTFNMQmFz
ZTo6b2JqU2luayk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9PdXRwdXRITFNMLmNwcDoKKysg
ICAgICAgIChzaDo6T3V0cHV0SExTTDo6T3V0cHV0SExTTCk6CisrICAgICAgICAoc2g6Ok91dHB1
dEhMU0w6OmhlYWRlcik6CisrICAgICAgICAoc2g6Ok91dHB1dEhMU0w6OnZpc2l0VW5hcnkpOgor
KyAgICAgICAgKHNoOjpPdXRwdXRITFNMOjp2aXNpdEFnZ3JlZ2F0ZSk6CisrICAgICAgICAoc2g6
Ok91dHB1dEhMU0w6OnZpc2l0U2VsZWN0aW9uKToKKysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6
dmlzaXRMb29wKToKKysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6dmlzaXRCcmFuY2gpOgorKyAg
ICAgICAgKHNoOjpPdXRwdXRITFNMOjpoYW5kbGVFeGNlc3NpdmVMb29wKToKKysgICAgICAgIChz
aDo6T3V0cHV0SExTTDo6b3V0cHV0TGluZURpcmVjdGl2ZSk6CisrICAgICAgICAqIHNyYy9jb21w
aWxlci9PdXRwdXRITFNMLmg6CisrICAgICAgICAqIHNyYy9jb21waWxlci9QYXJzZUhlbHBlci5j
cHA6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6cHJlY2lzaW9uRXJyb3JDaGVjayk6CisrICAg
ICAgICAoVFBhcnNlQ29udGV4dDo6Y29uc3RydWN0b3JFcnJvckNoZWNrKToKKysgICAgICAgIChU
UGFyc2VDb250ZXh0Ojpub25Jbml0RXJyb3JDaGVjayk6CisrICAgICAgICAqIHNyYy9jb21waWxl
ci9QYXJzZUhlbHBlci5oOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OlRQYXJzZUNvbnRleHQp
OgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvU2hIYW5kbGUuaDoKKysgICAgICAgICogc3JjL2Nv
bXBpbGVyL1NoYWRlckxhbmcuY3BwOgorKyAgICAgICAgKGdldFZhcmlhYmxlSW5mbyk6CisrICAg
ICAgICAoU2hDb25zdHJ1Y3RDb21waWxlcik6CisrICAgICAgICAoU2hHZXRJbmZvKToKKysgICAg
ICAgIChTaEdldEFjdGl2ZUF0dHJpYik6CisrICAgICAgICAoU2hHZXRBY3RpdmVVbmlmb3JtKToK
KysgICAgICAgICogc3JjL2NvbXBpbGVyL1RyYW5zbGF0b3JFU1NMLmNwcDogQWRkZWQuCisrICAg
ICAgICAoVHJhbnNsYXRvckVTU0w6OlRyYW5zbGF0b3JFU1NMKToKKysgICAgICAgIChUcmFuc2xh
dG9yRVNTTDo6dHJhbnNsYXRlKToKKysgICAgICAgIChUcmFuc2xhdG9yRVNTTDo6d3JpdGVFeHRl
bnNpb25CZWhhdmlvcik6CisrICAgICAgICAqIHNyYy9jb21waWxlci9UcmFuc2xhdG9yRVNTTC5o
OiBBZGRlZC4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL1ZhbGlkYXRlTGltaXRhdGlvbnMuY3Bw
OgorKyAgICAgICAgKFZhbGlkYXRlTGltaXRhdGlvbnM6OnZpc2l0QmluYXJ5KToKKysgICAgICAg
IChWYWxpZGF0ZUxpbWl0YXRpb25zOjp2aXNpdExvb3ApOgorKyAgICAgICAgKiBzcmMvY29tcGls
ZXIvVmFsaWRhdGVMaW1pdGF0aW9ucy5oOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvVmFyaWFi
bGVJbmZvLmNwcDoKKysgICAgICAgIChnZXRWYXJpYWJsZUluZm8pOgorKyAgICAgICAgKGdldEJ1
aWx0SW5WYXJpYWJsZUluZm8pOgorKyAgICAgICAgKGdldFVzZXJEZWZpbmVkVmFyaWFibGVJbmZv
KToKKysgICAgICAgIChDb2xsZWN0QXR0cmlic1VuaWZvcm1zOjp2aXNpdEFnZ3JlZ2F0ZSk6Cisr
ICAgICAgICAqIHNyYy9jb21waWxlci9WYXJpYWJsZUluZm8uaDoKKysgICAgICAgICogc3JjL2Nv
bXBpbGVyL1ZlcnNpb25HTFNMLmNwcDoKKysgICAgICAgIChUVmVyc2lvbkdMU0w6OnZpc2l0U3lt
Ym9sKToKKysgICAgICAgIChUVmVyc2lvbkdMU0w6OnZpc2l0Q29uc3RhbnRVbmlvbik6CisrICAg
ICAgICAoVFZlcnNpb25HTFNMOjp2aXNpdEJpbmFyeSk6CisrICAgICAgICAoVFZlcnNpb25HTFNM
Ojp2aXNpdFVuYXJ5KToKKysgICAgICAgIChUVmVyc2lvbkdMU0w6OnZpc2l0U2VsZWN0aW9uKToK
KysgICAgICAgIChUVmVyc2lvbkdMU0w6OnZpc2l0QWdncmVnYXRlKToKKysgICAgICAgIChUVmVy
c2lvbkdMU0w6OnZpc2l0TG9vcCk6CisrICAgICAgICAoVFZlcnNpb25HTFNMOjp2aXNpdEJyYW5j
aCk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9WZXJzaW9uR0xTTC5oOgorKyAgICAgICAgKiBz
cmMvY29tcGlsZXIvZ2xzbGFuZy55OgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvZ2xzbGFuZ190
YWIuY3BwOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvZ2xzbGFuZ190YWIuaDoKKysgICAgICAg
ICogc3JjL2NvbXBpbGVyL2ludGVybWVkaWF0ZS5oOgorKyAgICAgICAgKFRJbnRlcm1Mb29wOjpU
SW50ZXJtTG9vcCk6CisrICAgICAgICAoVEludGVybUxvb3A6OnNldFVucm9sbEZsYWcpOgorKyAg
ICAgICAgKFRJbnRlcm1Mb29wOjpnZXRVbnJvbGxGbGFnKToKKysgICAgICAgIChUSW50ZXJtU3lt
Ym9sOjpUSW50ZXJtU3ltYm9sKToKKysgICAgICAgIChUSW50ZXJtU3ltYm9sOjpzZXRJZCk6Cisr
ICAgICAgICAoVEludGVybVN5bWJvbDo6c2V0U3ltYm9sKToKKysgICAgICAgIChUSW50ZXJtU3lt
Ym9sOjpnZXRPcmlnaW5hbFN5bWJvbCk6CisrICAgICAgICAoVEludGVybUFnZ3JlZ2F0ZTo6VElu
dGVybUFnZ3JlZ2F0ZSk6CisrICAgICAgICAoVEludGVybUFnZ3JlZ2F0ZTo6c2V0RW5kTGluZSk6
CisrICAgICAgICAoVEludGVybUFnZ3JlZ2F0ZTo6Z2V0RW5kTGluZSk6CisrICAgICAgICAqIHNy
Yy9jb21waWxlci9wcmVwcm9jZXNzb3IvYXRvbS5jOgorKyAgICAgICAgKEFkZFN0cmluZyk6Cisr
ICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvY29tcGlsZS5oOgorKyAgICAgICAg
KiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL2NwcC5jOgorKyAgICAgICAgKENQUGVsc2UpOgor
KyAgICAgICAgKGV2YWwpOgorKyAgICAgICAgKENQUGlmKToKKysgICAgICAgIChDUFBpZmRlZik6
CisrICAgICAgICAocmVhZENQUGxpbmUpOgorKyAgICAgICAgKENoa0NvcnJlY3RFbHNlTmVzdGlu
Zyk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvY3Bwc3RydWN0LmM6Cisr
ICAgICAgICAoUmVzZXRQcmVwcm9jZXNzb3IpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJl
cHJvY2Vzc29yL3NjYW5uZXIuYzoKKysgICAgICAgIChieXRlX3NjYW4pOgorKyAgICAgICAgKHl5
bGV4X0NQUCk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3Ivc2Nhbm5lci5o
OgorKyAgICAgICAgKiBzcmMvbGliRUdML0NvbmZpZy5jcHA6CisrICAgICAgICAoZWdsOjpDb25m
aWc6OkNvbmZpZyk6CisrICAgICAgICAoZWdsOjpDb25maWc6OnNldCk6CisrICAgICAgICAoZWds
OjpDb25maWdTZXQ6OmFkZCk6CisrICAgICAgICAoZWdsOjpDb25maWdTZXQ6OmdldENvbmZpZ3Mp
OgorKyAgICAgICAgKiBzcmMvbGliRUdML0NvbmZpZy5oOgorKyAgICAgICAgKiBzcmMvbGliRUdM
L0Rpc3BsYXkuY3BwOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6RGlzcGxheSk6CisrICAgICAg
ICAoZWdsOjpEaXNwbGF5Ojppbml0aWFsaXplKToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OnRl
cm1pbmF0ZSk6CisrICAgICAgICAoZWdsOjpEaXNwbGF5OjpnZXRDb25maWdBdHRyaWIpOgorKyAg
ICAgICAgKGVnbDo6RGlzcGxheTo6Y3JlYXRlRGV2aWNlKToKKysgICAgICAgIChlZ2w6OkRpc3Bs
YXk6OmNyZWF0ZVdpbmRvd1N1cmZhY2UpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6Y3JlYXRl
T2Zmc2NyZWVuU3VyZmFjZSk6CisrICAgICAgICAoZWdsOjpEaXNwbGF5OjpjcmVhdGVDb250ZXh0
KToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OmRlc3Ryb3lDb250ZXh0KToKKysgICAgICAgIChl
Z2w6OkRpc3BsYXk6OmlzSW5pdGlhbGl6ZWQpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6Z2V0
QWRhcHRlcklkZW50aWZpZXIpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6aXNEZXZpY2VMb3N0
KToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OmdldEJ1ZmZlclBvb2wpOgorKyAgICAgICAgKGVn
bDo6RGlzcGxheTo6aW5pdEV4dGVuc2lvblN0cmluZyk6CisrICAgICAgICAoZWdsOjpEaXNwbGF5
OjpnZXRFeHRlbnNpb25TdHJpbmcpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6Z2V0VmVydGV4
VGV4dHVyZVN1cHBvcnQpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6Z2V0Tm9uUG93ZXIyVGV4
dHVyZVN1cHBvcnQpOgorKyAgICAgICAgKiBzcmMvbGliRUdML0Rpc3BsYXkuaDoKKysgICAgICAg
IChlZ2w6OkRpc3BsYXk6OmlzRDNkOUV4RGV2aWNlKToKKysgICAgICAgICogc3JjL2xpYkVHTC9T
dXJmYWNlLmNwcDoKKysgICAgICAgIChlZ2w6OlN1cmZhY2U6OlN1cmZhY2UpOgorKyAgICAgICAg
KGVnbDo6U3VyZmFjZTo6aW5pdGlhbGl6ZSk6CisrICAgICAgICAoZWdsOjpTdXJmYWNlOjpyZWxl
YXNlKToKKysgICAgICAgIChlZ2w6OlN1cmZhY2U6OnJlc2V0U3dhcENoYWluKToKKysgICAgICAg
IChlZ2w6OlN1cmZhY2VXaW5kb3dQcm9jKToKKysgICAgICAgIChlZ2w6OlN1cmZhY2U6OnN1YmNs
YXNzV2luZG93KToKKysgICAgICAgIChlZ2w6OlN1cmZhY2U6OnVuc3ViY2xhc3NXaW5kb3cpOgor
KyAgICAgICAgKGVnbDo6U3VyZmFjZTo6c3dhcCk6CisrICAgICAgICAoZWdsOjpTdXJmYWNlOjpn
ZXRSZW5kZXJUYXJnZXQpOgorKyAgICAgICAgKGVnbDo6U3VyZmFjZTo6Z2V0T2Zmc2NyZWVuVGV4
dHVyZSk6CisrICAgICAgICAoZWdsOjpTdXJmYWNlOjpnZXRUZXh0dXJlRm9ybWF0KToKKysgICAg
ICAgIChlZ2w6OlN1cmZhY2U6OmdldFRleHR1cmVUYXJnZXQpOgorKyAgICAgICAgKGVnbDo6U3Vy
ZmFjZTo6c2V0Qm91bmRUZXh0dXJlKToKKysgICAgICAgIChlZ2w6OlN1cmZhY2U6OmdldEJvdW5k
VGV4dHVyZSk6CisrICAgICAgICAoZWdsOjpTdXJmYWNlOjpnZXRGb3JtYXQpOgorKyAgICAgICAg
KiBzcmMvbGliRUdML1N1cmZhY2UuaDoKKysgICAgICAgIChlZ2w6OlN1cmZhY2U6OmdldFNoYXJl
SGFuZGxlKToKKysgICAgICAgICogc3JjL2xpYkVHTC9saWJFR0wuY3BwOgorKyAgICAgICAgKHZh
bGlkYXRlRGlzcGxheSk6CisrICAgICAgICAodmFsaWRhdGVDb25maWcpOgorKyAgICAgICAgKHZh
bGlkYXRlQ29udGV4dCk6CisrICAgICAgICAodmFsaWRhdGVTdXJmYWNlKToKKysgICAgICAgICog
c3JjL2xpYkVHTC9saWJFR0wucmM6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGliRUdML2xpYkVH
TC52Y3Byb2o6CisrICAgICAgICAqIHNyYy9saWJFR0wvbWFpbi5jcHA6CisrICAgICAgICAoRGxs
TWFpbik6CisrICAgICAgICAqIHNyYy9saWJFR0wvbWFpbi5oOgorKyAgICAgICAgKiBzcmMvbGli
RUdML3Jlc291cmNlLmg6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL0JsaXQuY3Bw
OgorKyAgICAgICAgKGdsOjpCbGl0Ojppbml0R2VvbWV0cnkpOgorKyAgICAgICAgKGdsOjpCbGl0
Ojpjb3B5KToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9CbGl0Lmg6CisrICAgICAgICAqIHNy
Yy9saWJHTEVTdjIvQnVmZmVyLmNwcDoKKysgICAgICAgIChnbDo6QnVmZmVyOjpCdWZmZXIpOgor
KyAgICAgICAgKGdsOjpCdWZmZXI6On5CdWZmZXIpOgorKyAgICAgICAgKGdsOjpCdWZmZXI6OmJ1
ZmZlckRhdGEpOgorKyAgICAgICAgKGdsOjpCdWZmZXI6OmJ1ZmZlclN1YkRhdGEpOgorKyAgICAg
ICAgKGdsOjpCdWZmZXI6OmdldFN0YXRpY1ZlcnRleEJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkJ1
ZmZlcjo6Z2V0U3RhdGljSW5kZXhCdWZmZXIpOgorKyAgICAgICAgKGdsOjpCdWZmZXI6OmludmFs
aWRhdGVTdGF0aWNEYXRhKToKKysgICAgICAgIChnbDo6QnVmZmVyOjpwcm9tb3RlU3RhdGljVXNh
Z2UpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL0J1ZmZlci5oOgorKyAgICAgICAgKiBzcmMv
bGliR0xFU3YyL0NvbnRleHQuY3BwOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpDb250ZXh0KToK
KysgICAgICAgIChnbDo6Q29udGV4dDo6fkNvbnRleHQpOgorKyAgICAgICAgKGdsOjpDb250ZXh0
OjptYWtlQ3VycmVudCk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6Om1hcmtBbGxTdGF0ZURpcnR5
KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c2V0QWN0aXZlU2FtcGxlcik6CisrICAgICAgICAo
Z2w6OkNvbnRleHQ6OmNyZWF0ZUZyYW1lYnVmZmVyKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6
Y3JlYXRlRmVuY2UpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpkZWxldGVGcmFtZWJ1ZmZlcik6
CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmRlbGV0ZUZlbmNlKToKKysgICAgICAgIChnbDo6Q29u
dGV4dDo6YmluZFRleHR1cmUyRCk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmJpbmRUZXh0dXJl
Q3ViZU1hcCk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmdldFRleHR1cmUyRCk6CisrICAgICAg
ICAoZ2w6OkNvbnRleHQ6OmdldFRleHR1cmVDdWJlTWFwKToKKysgICAgICAgIChnbDo6Q29udGV4
dDo6Z2V0U2FtcGxlclRleHR1cmUpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRJbnRlZ2Vy
dik6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmFwcGx5UmVuZGVyVGFyZ2V0KToKKysgICAgICAg
IChnbDo6Q29udGV4dDo6YXBwbHlTdGF0ZSk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmFwcGx5
VmVydGV4QnVmZmVyKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6YXBwbHlTaGFkZXJzKToKKysg
ICAgICAgIChnbDo6Q29udGV4dDo6YXBwbHlUZXh0dXJlcyk6CisrICAgICAgICAoZ2w6OkNvbnRl
eHQ6OnJlYWRQaXhlbHMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpjbGVhcik6CisrICAgICAg
ICAoZ2w6OkNvbnRleHQ6OmRyYXdBcnJheXMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpkcmF3
RWxlbWVudHMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpmaW5pc2gpOgorKyAgICAgICAgKGds
OjpDb250ZXh0OjpmbHVzaCk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmRyYXdDbG9zaW5nTGlu
ZSk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmdldE1heGltdW1WZXJ0ZXhUZXh0dXJlSW1hZ2VV
bml0cyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmdldE1heGltdW1Db21iaW5lZFRleHR1cmVJ
bWFnZVVuaXRzKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c3VwcG9ydHNOb25Qb3dlcjJUZXh0
dXJlKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6ZGV0YWNoVGV4dHVyZSk6CisrICAgICAgICAo
Z2w6OkNvbnRleHQ6OmdldEluY29tcGxldGVUZXh0dXJlKToKKysgICAgICAgIChnbDo6Q29udGV4
dDo6aW5pdEV4dGVuc2lvblN0cmluZyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmJsaXRGcmFt
ZWJ1ZmZlcik6CisrICAgICAgICAoZ2w6OlZlcnRleERlY2xhcmF0aW9uQ2FjaGU6OlZlcnRleERl
Y2xhcmF0aW9uQ2FjaGUpOgorKyAgICAgICAgKGdsOjpWZXJ0ZXhEZWNsYXJhdGlvbkNhY2hlOjp+
VmVydGV4RGVjbGFyYXRpb25DYWNoZSk6CisrICAgICAgICAoZ2w6OlZlcnRleERlY2xhcmF0aW9u
Q2FjaGU6OmFwcGx5RGVjbGFyYXRpb24pOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL0NvbnRl
eHQuaDoKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9GcmFtZWJ1ZmZlci5jcHA6CisrICAgICAg
ICAoZ2w6OkZyYW1lYnVmZmVyOjpsb29rdXBSZW5kZXJidWZmZXIpOgorKyAgICAgICAgKGdsOjpG
cmFtZWJ1ZmZlcjo6Y29tcGxldGVuZXNzKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9GcmFt
ZWJ1ZmZlci5oOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL0hhbmRsZUFsbG9jYXRvci5jcHA6
IEFkZGVkLgorKyAgICAgICAgKGdsOjpIYW5kbGVBbGxvY2F0b3I6OkhhbmRsZUFsbG9jYXRvcik6
CisrICAgICAgICAoZ2w6OkhhbmRsZUFsbG9jYXRvcjo6fkhhbmRsZUFsbG9jYXRvcik6CisrICAg
ICAgICAoZ2w6OkhhbmRsZUFsbG9jYXRvcjo6c2V0QmFzZUhhbmRsZSk6CisrICAgICAgICAoZ2w6
OkhhbmRsZUFsbG9jYXRvcjo6YWxsb2NhdGUpOgorKyAgICAgICAgKGdsOjpIYW5kbGVBbGxvY2F0
b3I6OnJlbGVhc2UpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL0hhbmRsZUFsbG9jYXRvci5o
OiBBZGRlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9JbmRleERhdGFNYW5hZ2VyLmNwcDog
QWRkZWQuCisrICAgICAgICAoZ2w6OkluZGV4RGF0YU1hbmFnZXI6OkluZGV4RGF0YU1hbmFnZXIp
OgorKyAgICAgICAgKGdsOjpJbmRleERhdGFNYW5hZ2VyOjp+SW5kZXhEYXRhTWFuYWdlcik6Cisr
ICAgICAgICAoZ2w6OmNvbnZlcnRJbmRpY2VzKToKKysgICAgICAgIChnbDo6Y29tcHV0ZVJhbmdl
KToKKysgICAgICAgIChnbDo6SW5kZXhEYXRhTWFuYWdlcjo6cHJlcGFyZUluZGV4RGF0YSk6Cisr
ICAgICAgICAoZ2w6OkluZGV4RGF0YU1hbmFnZXI6OmluZGV4U2l6ZSk6CisrICAgICAgICAoZ2w6
OkluZGV4RGF0YU1hbmFnZXI6OnR5cGVTaXplKToKKysgICAgICAgIChnbDo6SW5kZXhCdWZmZXI6
OkluZGV4QnVmZmVyKToKKysgICAgICAgIChnbDo6SW5kZXhCdWZmZXI6On5JbmRleEJ1ZmZlcik6
CisrICAgICAgICAoZ2w6OkluZGV4QnVmZmVyOjpnZXRCdWZmZXIpOgorKyAgICAgICAgKGdsOjpJ
bmRleEJ1ZmZlcjo6dW5tYXApOgorKyAgICAgICAgKGdsOjpTdHJlYW1pbmdJbmRleEJ1ZmZlcjo6
U3RyZWFtaW5nSW5kZXhCdWZmZXIpOgorKyAgICAgICAgKGdsOjpTdHJlYW1pbmdJbmRleEJ1ZmZl
cjo6flN0cmVhbWluZ0luZGV4QnVmZmVyKToKKysgICAgICAgIChnbDo6U3RyZWFtaW5nSW5kZXhC
dWZmZXI6Om1hcCk6CisrICAgICAgICAoZ2w6OlN0cmVhbWluZ0luZGV4QnVmZmVyOjpyZXNlcnZl
U3BhY2UpOgorKyAgICAgICAgKGdsOjpTdGF0aWNJbmRleEJ1ZmZlcjo6U3RhdGljSW5kZXhCdWZm
ZXIpOgorKyAgICAgICAgKGdsOjpTdGF0aWNJbmRleEJ1ZmZlcjo6flN0YXRpY0luZGV4QnVmZmVy
KToKKysgICAgICAgIChnbDo6U3RhdGljSW5kZXhCdWZmZXI6Om1hcCk6CisrICAgICAgICAoZ2w6
OlN0YXRpY0luZGV4QnVmZmVyOjpyZXNlcnZlU3BhY2UpOgorKyAgICAgICAgKGdsOjpTdGF0aWNJ
bmRleEJ1ZmZlcjo6bG9va3VwVHlwZSk6CisrICAgICAgICAoZ2w6OlN0YXRpY0luZGV4QnVmZmVy
Ojpsb29rdXBSYW5nZSk6CisrICAgICAgICAoZ2w6OlN0YXRpY0luZGV4QnVmZmVyOjphZGRSYW5n
ZSk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvSW5kZXhEYXRhTWFuYWdlci5oOiBBZGRlZC4K
KysgICAgICAgIChnbDo6SW5kZXhCdWZmZXI6OnNpemUpOgorKyAgICAgICAgKiBzcmMvbGliR0xF
U3YyL1Byb2dyYW0uY3BwOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpnZXRTZW1hbnRpY0luZGV4
KToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6Z2V0U2FtcGxlck1hcHBpbmcpOgorKyAgICAgICAg
KGdsOjpQcm9ncmFtOjpnZXRTYW1wbGVyVGV4dHVyZVR5cGUpOgorKyAgICAgICAgKGdsOjpQcm9n
cmFtOjpjb21waWxlVG9CaW5hcnkpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpwYWNrVmFyeWlu
Z3MpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpsaW5rVmFyeWluZ3MpOgorKyAgICAgICAgKGds
OjpQcm9ncmFtOjpsaW5rKToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6bGlua1VuaWZvcm1zKToK
KysgICAgICAgIChnbDo6UHJvZ3JhbTo6ZGVmaW5lVW5pZm9ybSk6CisrICAgICAgICAoZ2w6OlBy
b2dyYW06OmFwcGx5VW5pZm9ybTFpdik6CisrICAgICAgICAoZ2w6OlByb2dyYW06OmFwcGVuZFRv
SW5mb0xvZ1Nhbml0aXplZCk6CisrICAgICAgICAoZ2w6OlByb2dyYW06OnVubGluayk6CisrICAg
ICAgICAoZ2w6OlByb2dyYW06OmdldEFjdGl2ZVVuaWZvcm1NYXhMZW5ndGgpOgorKyAgICAgICAg
KGdsOjpQcm9ncmFtOjp2YWxpZGF0ZSk6CisrICAgICAgICAoZ2w6OlByb2dyYW06OnZhbGlkYXRl
U2FtcGxlcnMpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1Byb2dyYW0uaDoKKysgICAgICAg
ICogc3JjL2xpYkdMRVN2Mi9SZW5kZXJidWZmZXIuY3BwOgorKyAgICAgICAgKGdsOjpSZW5kZXJi
dWZmZXI6OmdldFdpZHRoKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyOjpnZXRIZWlnaHQp
OgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXI6OmdldEludGVybmFsRm9ybWF0KToKKysgICAg
ICAgIChnbDo6UmVuZGVyYnVmZmVyOjpnZXRSZWRTaXplKToKKysgICAgICAgIChnbDo6UmVuZGVy
YnVmZmVyOjpnZXRHcmVlblNpemUpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXI6OmdldEJs
dWVTaXplKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyOjpnZXRBbHBoYVNpemUpOgorKyAg
ICAgICAgKGdsOjpSZW5kZXJidWZmZXI6OmdldERlcHRoU2l6ZSk6CisrICAgICAgICAoZ2w6OlJl
bmRlcmJ1ZmZlcjo6Z2V0U3RlbmNpbFNpemUpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXI6
OmdldFNhbXBsZXMpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJTdG9yYWdlOjpSZW5kZXJi
dWZmZXJTdG9yYWdlKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyU3RvcmFnZTo6Z2V0V2lk
dGgpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJTdG9yYWdlOjpnZXRIZWlnaHQpOgorKyAg
ICAgICAgKGdsOjpSZW5kZXJidWZmZXJTdG9yYWdlOjpnZXRJbnRlcm5hbEZvcm1hdCk6CisrICAg
ICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclN0b3JhZ2U6OmdldFJlZFNpemUpOgorKyAgICAgICAgKGds
OjpSZW5kZXJidWZmZXJTdG9yYWdlOjpnZXRHcmVlblNpemUpOgorKyAgICAgICAgKGdsOjpSZW5k
ZXJidWZmZXJTdG9yYWdlOjpnZXRCbHVlU2l6ZSk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZl
clN0b3JhZ2U6OmdldEFscGhhU2l6ZSk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclN0b3Jh
Z2U6OmdldERlcHRoU2l6ZSk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclN0b3JhZ2U6Omdl
dFN0ZW5jaWxTaXplKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyU3RvcmFnZTo6Z2V0RDNE
Rm9ybWF0KToKKysgICAgICAgIChnbDo6Q29sb3JidWZmZXI6OkNvbG9yYnVmZmVyKToKKysgICAg
ICAgIChnbDo6Q29sb3JidWZmZXI6OmdldFdpZHRoKToKKysgICAgICAgIChnbDo6Q29sb3JidWZm
ZXI6OmdldEhlaWdodCk6CisrICAgICAgICAoZ2w6OkNvbG9yYnVmZmVyOjpnZXRJbnRlcm5hbEZv
cm1hdCk6CisrICAgICAgICAoZ2w6OkNvbG9yYnVmZmVyOjpnZXRUeXBlKToKKysgICAgICAgIChn
bDo6Q29sb3JidWZmZXI6OmdldEQzREZvcm1hdCk6CisrICAgICAgICAoZ2w6OkNvbG9yYnVmZmVy
Ojppc0NvbG9yYnVmZmVyKToKKysgICAgICAgIChnbDo6Q29sb3JidWZmZXI6OmdldFJlbmRlclRh
cmdldCk6CisrICAgICAgICAoZ2w6OkRlcHRoU3RlbmNpbGJ1ZmZlcjo6RGVwdGhTdGVuY2lsYnVm
ZmVyKToKKysgICAgICAgIChnbDo6RGVwdGhidWZmZXI6OkRlcHRoYnVmZmVyKToKKysgICAgICAg
IChnbDo6U3RlbmNpbGJ1ZmZlcjo6U3RlbmNpbGJ1ZmZlcik6CisrICAgICAgICAqIHNyYy9saWJH
TEVTdjIvUmVuZGVyYnVmZmVyLmg6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvUmVzb3VyY2VN
YW5hZ2VyLmNwcDoKKysgICAgICAgIChnbDo6UmVzb3VyY2VNYW5hZ2VyOjpjcmVhdGVCdWZmZXIp
OgorKyAgICAgICAgKGdsOjpSZXNvdXJjZU1hbmFnZXI6OmNyZWF0ZVNoYWRlcik6CisrICAgICAg
ICAoZ2w6OlJlc291cmNlTWFuYWdlcjo6Y3JlYXRlUHJvZ3JhbSk6CisrICAgICAgICAoZ2w6OlJl
c291cmNlTWFuYWdlcjo6Y3JlYXRlVGV4dHVyZSk6CisrICAgICAgICAoZ2w6OlJlc291cmNlTWFu
YWdlcjo6Y3JlYXRlUmVuZGVyYnVmZmVyKToKKysgICAgICAgIChnbDo6UmVzb3VyY2VNYW5hZ2Vy
OjpkZWxldGVCdWZmZXIpOgorKyAgICAgICAgKGdsOjpSZXNvdXJjZU1hbmFnZXI6OmRlbGV0ZVNo
YWRlcik6CisrICAgICAgICAoZ2w6OlJlc291cmNlTWFuYWdlcjo6ZGVsZXRlUHJvZ3JhbSk6Cisr
ICAgICAgICAoZ2w6OlJlc291cmNlTWFuYWdlcjo6ZGVsZXRlVGV4dHVyZSk6CisrICAgICAgICAo
Z2w6OlJlc291cmNlTWFuYWdlcjo6ZGVsZXRlUmVuZGVyYnVmZmVyKToKKysgICAgICAgIChnbDo6
UmVzb3VyY2VNYW5hZ2VyOjpjaGVja1RleHR1cmVBbGxvY2F0aW9uKToKKysgICAgICAgICogc3Jj
L2xpYkdMRVN2Mi9SZXNvdXJjZU1hbmFnZXIuaDoKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9T
aGFkZXIuY3BwOgorKyAgICAgICAgKGdsOjpTaGFkZXI6OlNoYWRlcik6CisrICAgICAgICAoZ2w6
OlNoYWRlcjo6Y29tcGlsZVRvSExTTCk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvU2hhZGVy
Lmg6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvVGV4dHVyZS5jcHA6CisrICAgICAgICAoZ2w6
OlRleHR1cmU6OkltYWdlOjpJbWFnZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OkltYWdlOjp+
SW1hZ2UpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpJbWFnZTo6aXNSZW5kZXJhYmxlKToKKysg
ICAgICAgIChnbDo6VGV4dHVyZTo6SW1hZ2U6OmdldEQzREZvcm1hdCk6CisrICAgICAgICAoZ2w6
OlRleHR1cmU6OlRleHR1cmUpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpzZXRNaW5GaWx0ZXIp
OgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpzZXRNYWdGaWx0ZXIpOgorKyAgICAgICAgKGdsOjpU
ZXh0dXJlOjpzZXRXcmFwUyk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OnNldFdyYXBUKToKKysg
ICAgICAgIChnbDo6VGV4dHVyZTo6bG9hZEltYWdlRGF0YSk6CisrICAgICAgICAoZ2w6OlRleHR1
cmU6OmxvYWRBbHBoYUltYWdlRGF0YSk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OmxvYWRBbHBo
YUZsb2F0SW1hZ2VEYXRhKToKKysgICAgICAgIChnbDo6VGV4dHVyZTo6bG9hZEFscGhhSGFsZkZs
b2F0SW1hZ2VEYXRhKToKKysgICAgICAgIChnbDo6VGV4dHVyZTo6bG9hZEx1bWluYW5jZUltYWdl
RGF0YSk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OmxvYWRMdW1pbmFuY2VGbG9hdEltYWdlRGF0
YSk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OmxvYWRMdW1pbmFuY2VIYWxmRmxvYXRJbWFnZURh
dGEpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpsb2FkTHVtaW5hbmNlQWxwaGFJbWFnZURhdGEp
OgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpsb2FkTHVtaW5hbmNlQWxwaGFGbG9hdEltYWdlRGF0
YSk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OmxvYWRMdW1pbmFuY2VBbHBoYUhhbGZGbG9hdElt
YWdlRGF0YSk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OmxvYWRSR0JVQnl0ZUltYWdlRGF0YSk6
CisrICAgICAgICAoZ2w6OlRleHR1cmU6OmxvYWRSR0I1NjVJbWFnZURhdGEpOgorKyAgICAgICAg
KGdsOjpUZXh0dXJlOjpsb2FkUkdCRmxvYXRJbWFnZURhdGEpOgorKyAgICAgICAgKGdsOjpUZXh0
dXJlOjpsb2FkUkdCSGFsZkZsb2F0SW1hZ2VEYXRhKToKKysgICAgICAgIChnbDo6VGV4dHVyZTo6
bG9hZFJHQkFVQnl0ZUltYWdlRGF0YVNTRTIpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpsb2Fk
UkdCQVVCeXRlSW1hZ2VEYXRhKToKKysgICAgICAgIChnbDo6VGV4dHVyZTo6bG9hZFJHQkE0NDQ0
SW1hZ2VEYXRhKToKKysgICAgICAgIChnbDo6VGV4dHVyZTo6bG9hZFJHQkE1NTUxSW1hZ2VEYXRh
KToKKysgICAgICAgIChnbDo6VGV4dHVyZTo6bG9hZFJHQkFGbG9hdEltYWdlRGF0YSk6CisrICAg
ICAgICAoZ2w6OlRleHR1cmU6OmxvYWRSR0JBSGFsZkZsb2F0SW1hZ2VEYXRhKToKKysgICAgICAg
IChnbDo6VGV4dHVyZTo6bG9hZEJHUkFJbWFnZURhdGEpOgorKyAgICAgICAgKGdsOjpUZXh0dXJl
Ojpsb2FkQ29tcHJlc3NlZEltYWdlRGF0YSk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OmNyZWF0
ZVN1cmZhY2UpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpzZXRJbWFnZSk6CisrICAgICAgICAo
Z2w6OlRleHR1cmU6OnNldENvbXByZXNzZWRJbWFnZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6
OnN1YkltYWdlKToKKysgICAgICAgIChnbDo6VGV4dHVyZTo6c3ViSW1hZ2VDb21wcmVzc2VkKToK
KysgICAgICAgIChnbDo6VGV4dHVyZTo6Y29weVRvSW1hZ2UpOgorKyAgICAgICAgKGdsOjpUZXh0
dXJlOjpnZXRUZXh0dXJlKToKKysgICAgICAgIChnbDo6VGV4dHVyZTo6aXNEaXJ0eVBhcmFtZXRl
cik6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OmlzRGlydHlJbWFnZSk6CisrICAgICAgICAoZ2w6
OlRleHR1cmU6OnJlc2V0RGlydHkpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpnZXRTZXJpYWwp
OgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpjcmVhdGlvbkxldmVscyk6CisrICAgICAgICAoZ2w6
OlRleHR1cmU6OmxldmVsQ291bnQpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjppc3N1ZVNlcmlh
bCk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6VGV4dHVyZTJEKToKKysgICAgICAgIChnbDo6
VGV4dHVyZTJEOjp+VGV4dHVyZTJEKToKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjpnZXRXaWR0
aCk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6Z2V0SGVpZ2h0KToKKysgICAgICAgIChnbDo6
VGV4dHVyZTJEOjpnZXRJbnRlcm5hbEZvcm1hdCk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6
Z2V0VHlwZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6Z2V0RDNERm9ybWF0KToKKysgICAg
ICAgIChnbDo6VGV4dHVyZTJEOjpyZWRlZmluZVRleHR1cmUpOgorKyAgICAgICAgKGdsOjpUZXh0
dXJlMkQ6OnNldEltYWdlKToKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjpiaW5kVGV4SW1hZ2Up
OgorKyAgICAgICAgKGdsOjpUZXh0dXJlMkQ6OnJlbGVhc2VUZXhJbWFnZSk6CisrICAgICAgICAo
Z2w6OlRleHR1cmUyRDo6c2V0Q29tcHJlc3NlZEltYWdlKToKKysgICAgICAgIChnbDo6VGV4dHVy
ZTJEOjpjb21taXRSZWN0KToKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjpjb3B5SW1hZ2UpOgor
KyAgICAgICAgKGdsOjpUZXh0dXJlMkQ6OmNvcHlTdWJJbWFnZSk6CisrICAgICAgICAoZ2w6OlRl
eHR1cmUyRDo6aXNDb21wbGV0ZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6aXNDb21wcmVz
c2VkKToKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjpnZXRCYXNlVGV4dHVyZSk6CisrICAgICAg
ICAoZ2w6OlRleHR1cmUyRDo6Y3JlYXRlVGV4dHVyZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmUy
RDo6dXBkYXRlVGV4dHVyZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6Y29udmVydFRvUmVu
ZGVyVGFyZ2V0KToKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjpnZW5lcmF0ZU1pcG1hcHMpOgor
KyAgICAgICAgKGdsOjpUZXh0dXJlMkQ6OmdldFJlbmRlcmJ1ZmZlcik6CisrICAgICAgICAoZ2w6
OlRleHR1cmUyRDo6Z2V0UmVuZGVyVGFyZ2V0KToKKysgICAgICAgIChnbDo6VGV4dHVyZUN1YmVN
YXA6OmdldFdpZHRoKToKKysgICAgICAgIChnbDo6VGV4dHVyZUN1YmVNYXA6OmdldEhlaWdodCk6
CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpnZXRJbnRlcm5hbEZvcm1hdCk6CisrICAg
ICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpnZXRUeXBlKToKKysgICAgICAgIChnbDo6VGV4dHVy
ZUN1YmVNYXA6OmdldEQzREZvcm1hdCk6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpz
ZXRJbWFnZVBvc1gpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6c2V0SW1hZ2VOZWdY
KToKKysgICAgICAgIChnbDo6VGV4dHVyZUN1YmVNYXA6OnNldEltYWdlUG9zWSk6CisrICAgICAg
ICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpzZXRJbWFnZU5lZ1kpOgorKyAgICAgICAgKGdsOjpUZXh0
dXJlQ3ViZU1hcDo6c2V0SW1hZ2VQb3NaKToKKysgICAgICAgIChnbDo6VGV4dHVyZUN1YmVNYXA6
OnNldEltYWdlTmVnWik6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpzZXRDb21wcmVz
c2VkSW1hZ2UpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6Y29tbWl0UmVjdCk6Cisr
ICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjppc0NvbXBsZXRlKToKKysgICAgICAgIChnbDo6
VGV4dHVyZUN1YmVNYXA6OmlzQ29tcHJlc3NlZCk6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJl
TWFwOjpnZXRCYXNlVGV4dHVyZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpjcmVh
dGVUZXh0dXJlKToKKysgICAgICAgIChnbDo6VGV4dHVyZUN1YmVNYXA6OnVwZGF0ZVRleHR1cmUp
OgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6Y29udmVydFRvUmVuZGVyVGFyZ2V0KToK
KysgICAgICAgIChnbDo6VGV4dHVyZUN1YmVNYXA6OnNldEltYWdlKToKKysgICAgICAgIChnbDo6
VGV4dHVyZUN1YmVNYXA6OnJlZGVmaW5lVGV4dHVyZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmVD
dWJlTWFwOjpjb3B5SW1hZ2UpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6Z2V0Q3Vi
ZU1hcFN1cmZhY2UpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6Y29weVN1YkltYWdl
KToKKysgICAgICAgIChnbDo6VGV4dHVyZUN1YmVNYXA6OmdlbmVyYXRlTWlwbWFwcyk6CisrICAg
ICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpnZXRSZW5kZXJidWZmZXIpOgorKyAgICAgICAgKGds
OjpUZXh0dXJlQ3ViZU1hcDo6Z2V0UmVuZGVyVGFyZ2V0KToKKysgICAgICAgICogc3JjL2xpYkdM
RVN2Mi9UZXh0dXJlLmg6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvVmVydGV4RGF0YU1hbmFn
ZXIuY3BwOiBBZGRlZC4KKysgICAgICAgIChnbDo6VmVydGV4RGF0YU1hbmFnZXI6OlZlcnRleERh
dGFNYW5hZ2VyKToKKysgICAgICAgIChnbDo6VmVydGV4RGF0YU1hbmFnZXI6On5WZXJ0ZXhEYXRh
TWFuYWdlcik6CisrICAgICAgICAoZ2w6OlZlcnRleERhdGFNYW5hZ2VyOjp3cml0ZUF0dHJpYnV0
ZURhdGEpOgorKyAgICAgICAgKGdsOjpWZXJ0ZXhEYXRhTWFuYWdlcjo6cHJlcGFyZVZlcnRleERh
dGEpOgorKyAgICAgICAgKGdsOjpWZXJ0ZXhEYXRhTWFuYWdlcjo6c3BhY2VSZXF1aXJlZCk6Cisr
ICAgICAgICAoZ2w6OlZlcnRleERhdGFNYW5hZ2VyOjpjaGVja1ZlcnRleENhcHMpOgorKyAgICAg
ICAgKGdsOjpWZXJ0ZXhEYXRhTWFuYWdlcjo6dHlwZUluZGV4KToKKysgICAgICAgIChnbDo6VmVy
dGV4QnVmZmVyOjpWZXJ0ZXhCdWZmZXIpOgorKyAgICAgICAgKGdsOjpWZXJ0ZXhCdWZmZXI6On5W
ZXJ0ZXhCdWZmZXIpOgorKyAgICAgICAgKGdsOjpWZXJ0ZXhCdWZmZXI6OnVubWFwKToKKysgICAg
ICAgIChnbDo6VmVydGV4QnVmZmVyOjpnZXRCdWZmZXIpOgorKyAgICAgICAgKGdsOjpDb25zdGFu
dFZlcnRleEJ1ZmZlcjo6Q29uc3RhbnRWZXJ0ZXhCdWZmZXIpOgorKyAgICAgICAgKGdsOjpDb25z
dGFudFZlcnRleEJ1ZmZlcjo6fkNvbnN0YW50VmVydGV4QnVmZmVyKToKKysgICAgICAgIChnbDo6
QXJyYXlWZXJ0ZXhCdWZmZXI6OkFycmF5VmVydGV4QnVmZmVyKToKKysgICAgICAgIChnbDo6QXJy
YXlWZXJ0ZXhCdWZmZXI6On5BcnJheVZlcnRleEJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkFycmF5
VmVydGV4QnVmZmVyOjphZGRSZXF1aXJlZFNwYWNlKToKKysgICAgICAgIChnbDo6QXJyYXlWZXJ0
ZXhCdWZmZXI6OmFkZFJlcXVpcmVkU3BhY2VGb3IpOgorKyAgICAgICAgKGdsOjpTdHJlYW1pbmdW
ZXJ0ZXhCdWZmZXI6OlN0cmVhbWluZ1ZlcnRleEJ1ZmZlcik6CisrICAgICAgICAoZ2w6OlN0cmVh
bWluZ1ZlcnRleEJ1ZmZlcjo6flN0cmVhbWluZ1ZlcnRleEJ1ZmZlcik6CisrICAgICAgICAoZ2w6
OlN0cmVhbWluZ1ZlcnRleEJ1ZmZlcjo6bWFwKToKKysgICAgICAgIChnbDo6U3RyZWFtaW5nVmVy
dGV4QnVmZmVyOjpyZXNlcnZlUmVxdWlyZWRTcGFjZSk6CisrICAgICAgICAoZ2w6OlN0YXRpY1Zl
cnRleEJ1ZmZlcjo6U3RhdGljVmVydGV4QnVmZmVyKToKKysgICAgICAgIChnbDo6U3RhdGljVmVy
dGV4QnVmZmVyOjp+U3RhdGljVmVydGV4QnVmZmVyKToKKysgICAgICAgIChnbDo6U3RhdGljVmVy
dGV4QnVmZmVyOjptYXApOgorKyAgICAgICAgKGdsOjpTdGF0aWNWZXJ0ZXhCdWZmZXI6OnJlc2Vy
dmVSZXF1aXJlZFNwYWNlKToKKysgICAgICAgIChnbDo6U3RhdGljVmVydGV4QnVmZmVyOjpsb29r
dXBBdHRyaWJ1dGUpOgorKyAgICAgICAgKGdsOjpWZXJ0ZXhEYXRhTWFuYWdlcjo6Zm9ybWF0Q29u
dmVydGVyKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9WZXJ0ZXhEYXRhTWFuYWdlci5oOiBB
ZGRlZC4KKysgICAgICAgIChnbDo6QXJyYXlWZXJ0ZXhCdWZmZXI6OnNpemUpOgorKyAgICAgICAg
KGdsOjpWZXJ0ZXhEYXRhTWFuYWdlcjo6ZGlydHlDdXJyZW50VmFsdWUpOgorKyAgICAgICAgKiBz
cmMvbGliR0xFU3YyL2xpYkdMRVN2Mi5jcHA6CisrICAgICAgICAodmFsaWRJbWFnZVNpemUpOgor
KyAgICAgICAgKEV4dGVuc2lvbjo6Z2xCaW5kVGV4SW1hZ2UpOgorKyAgICAgICAgKiBzcmMvbGli
R0xFU3YyL2xpYkdMRVN2Mi5kZWY6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvbGliR0xFU3Yy
LnJjOiBBZGRlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9saWJHTEVTdjIudmNwcm9qOgor
KyAgICAgICAgKiBzcmMvbGliR0xFU3YyL21haW4uY3BwOgorKyAgICAgICAgKGVycm9yKToKKysg
ICAgICAgICogc3JjL2xpYkdMRVN2Mi9tYXRodXRpbC5oOgorKyAgICAgICAgKGdsOjpjbGFtcCk6
CisrICAgICAgICAoZ2w6OmNsYW1wMDEpOgorKyAgICAgICAgKGdsOjp0cmFuc2Zvcm1QaXhlbFJl
Y3QpOgorKyAgICAgICAgKGdsOjp0cmFuc2Zvcm1QaXhlbFlPZmZzZXQpOgorKyAgICAgICAgKGds
OjphZGp1c3RXaW5kaW5nKToKKysgICAgICAgIChnbDo6c3VwcG9ydHNTU0UyKToKKysgICAgICAg
ICogc3JjL2xpYkdMRVN2Mi9yZXNvdXJjZS5oOiBBZGRlZC4KKysgICAgICAgICogc3JjL2xpYkdM
RVN2Mi91dGlsaXRpZXMuY3BwOgorKyAgICAgICAgKGdsOjpDb21wdXRlQ29tcHJlc3NlZFBpdGNo
KToKKysgICAgICAgIChlczJkeDo6Q29udmVydEN1YmVGYWNlKToKKysgICAgICAgIChlczJkeDo6
Q29udmVydFByaW1pdGl2ZVR5cGUpOgorKyAgICAgICAgKGVzMmR4OjpDb252ZXJ0UmVuZGVyYnVm
ZmVyRm9ybWF0KToKKysgICAgICAgIChlczJkeDo6R2V0TXVsdGlzYW1wbGVUeXBlRnJvbVNhbXBs
ZXMpOgorKyAgICAgICAgKGR4MmVzOjpHZXRTdGVuY2lsU2l6ZSk6CisrICAgICAgICAoZHgyZXM6
OkdldEFscGhhU2l6ZSk6CisrICAgICAgICAoZHgyZXM6OkdldFJlZFNpemUpOgorKyAgICAgICAg
KGR4MmVzOjpHZXRHcmVlblNpemUpOgorKyAgICAgICAgKGR4MmVzOjpHZXRCbHVlU2l6ZSk6Cisr
ICAgICAgICAoZHgyZXM6OkdldERlcHRoU2l6ZSk6CisrICAgICAgICAoZ2V0VGVtcFBhdGgpOgor
KyAgICAgICAgKHdyaXRlRmlsZSk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvdXRpbGl0aWVz
Lmg6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvdmVydGV4Y29udmVyc2lvbi5oOiBBZGRlZC4K
KysgICAgICAgIChnbDo6SWRlbnRpdHk6OmNvbnZlcnQpOgorKyAgICAgICAgKGdsOjpDYXN0Ojpj
b252ZXJ0KToKKysgICAgICAgIChnbDo6Tm9ybWFsaXplOjpjb252ZXJ0KToKKysgICAgICAgIChn
bDo6Rml4ZWRUb0Zsb2F0Ojpjb252ZXJ0KToKKysgICAgICAgIChnbDo6U2ltcGxlRGVmYXVsdFZh
bHVlczo6emVybyk6CisrICAgICAgICAoZ2w6OlNpbXBsZURlZmF1bHRWYWx1ZXM6Om9uZSk6Cisr
ICAgICAgICAoZ2w6Ok5vcm1hbGl6ZWREZWZhdWx0VmFsdWVzOjp6ZXJvKToKKysgICAgICAgIChn
bDo6Tm9ybWFsaXplZERlZmF1bHRWYWx1ZXM6Om9uZSk6CisrICAgICAgICAoZ2w6OlZlcnRleERh
dGFDb252ZXJ0ZXI6OmNvbnZlcnRBcnJheSk6CisrICAgICAgICAoZ2w6OlZlcnRleERhdGFDb252
ZXJ0ZXI6OnBvaW50ZXJBZGRCeXRlcyk6CisrICAgICAgICAoZ2w6OlZlcnRleERhdGFDb252ZXJ0
ZXI6OmNvcHlDb21wb25lbnQpOgorKworKzIwMTEtMDUtMjQgIERhdmlkIEtpbHplciAgPGRka2ls
emVyQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFBhcnQgMiBvZiAyOiA8aHR0cDovL3dlYmtpdC5v
cmcvYi82MDgwNT4gRW5hYmxlIC1XbmV3bGluZS1lb2Ygb24gQU5HTEUKKysKKysgICAgICAgIFJl
dmlld2VkIGJ5IEFkYW0gUm9iZW4uCisrCisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0Jhc2Uu
eGNjb25maWc6CisrICAgICAgICAoR0NDX1dBUk5fQUJPVVRfTUlTU0lOR19ORVdMSU5FKTogQWRk
ZWQuIFNldCB0byBZRVMuCisrCisrMjAxMS0wNS0yMyAgRGF2aWQgS2lsemVyICA8ZGRraWx6ZXJA
YXBwbGUuY29tPgorKworKyAgICAgICAgUGFydCAxIG9mIDI6IDxodHRwOi8vd2Via2l0Lm9yZy9i
LzYwODA1PiBFbmFibGUgLVduZXdsaW5lLWVvZiBvbiBBTkdMRQorKworKyAgICAgICAgTWVyZ2Ug
QU5HTEUgdXBzdHJlYW0gY29tbWl0IHI2NTMgZm9yIElzc3VlIDE1NC4KKysKKysgICAgICAgICog
c3JjL2NvbXBpbGVyL1Bvb2xBbGxvYy5oOiBBZGRlZCBuZXdsaW5lIHRvIGVuZCBvZiBmaWxlLgor
KyAgICAgICAgKiBzcmMvY29tcGlsZXIvU2hIYW5kbGUuaDogRGl0dG8uCisrICAgICAgICAqIHNy
Yy9saWJFR0wvRGlzcGxheS5jcHA6IERpdHRvLgorKworKzIwMTEtMDUtMTYgIERhdmlkIEtpbHpl
ciAgPGRka2lsemVyQGFwcGxlLmNvbT4KKysKKysgICAgICAgIDxodHRwOi8vd2Via2l0Lm9yZy9i
LzYwOTEzPiBDKysgZXhjZXB0aW9ucyBzaG91bGQgbm90IGJlIGVuYWJsZWQgd2hlbiBidWlsZGlu
ZyB3aXRoIGxsdm0tZ2NjLTQuMgorKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzk0NDY0MzA+Cisr
CisrICAgICAgICBSZXZpZXdlZCBieSBNYXJrIFJvd2UuCisrCisrICAgICAgICAqIENvbmZpZ3Vy
YXRpb25zL0Jhc2UueGNjb25maWc6IEZpeGVkIHR5cG8uCisrCisrMjAxMS0wNS0wNCAgRGF2aWQg
S2lsemVyICA8ZGRraWx6ZXJAYXBwbGUuY29tPgorKworKyAgICAgICAgUGFydCAyIG9mIDI6IDxo
dHRwOi8vd2Via2l0Lm9yZy9iLzU2MzM3PiBFbmFibGUgLVdlcnJvciBvbiBBTkdMRQorKworKyAg
ICAgICAgUmV2aWV3ZWQgYnkgQWRhbSBCYXJ0aC4KKysKKysgICAgICAgICogQ29uZmlndXJhdGlv
bnMvQmFzZS54Y2NvbmZpZzoKKysgICAgICAgIChHQ0NfVFJFQVRfV0FSTklOR1NfQVNfRVJST1JT
KTogU2V0IHRvIFlFUy4KKysKKysyMDExLTA1LTA0ICBEYXZpZCBLaWx6ZXIgIDxkZGtpbHplckBh
cHBsZS5jb20+CisrCisrICAgICAgICBQYXJ0IDEgb2YgMjogPGh0dHA6Ly93ZWJraXQub3JnL2Iv
NTYzMzc+IEVuYWJsZSAtV2Vycm9yIG9uIEFOR0xFCisrCisrICAgICAgICBNZXJnZSBBTkdMRSB1
cHN0cmVhbSBjb21taXRzIHI1NzIsIHI1NzMsIHI1NzQsIHI1NzUuCisrCisrICAgICAgICBUaGlz
IHVuYmxvY2tzIGVuYWJsaW5nIC1XZXJyb3Igb24gQU5HTEUuICBTaW5jZSBhbGwgY2hhbmdlcyBh
cmUKKysgICAgICAgIGluIHRoZSB1cHN0cmVhbSByZXBvc2l0b3J5LCB0aGV5IG1heSBiZSBzYWZl
bHkgb3ZlcndyaXR0ZW4KKysgICAgICAgIGR1cmluZyB0aGUgbmV4dCBBTkdMRSB1cGRhdGUuCisr
CisrICAgICAgICAqIHNyYy9jb21waWxlci9Db25zdGFudFVuaW9uLmg6CisrICAgICAgICAoQ29u
c3RhbnRVbmlvbjo6b3BlcmF0b3I9PSk6IEFkZGVkIGEgZGVmYXVsdCBjYXNlLgorKyAgICAgICAg
KiBzcmMvY29tcGlsZXIvSW50ZXJtZWRpYXRlLmNwcDoKKysgICAgICAgIChUSW50ZXJtQmluYXJ5
Ojpwcm9tb3RlKTogQWRkZWQgcGFyZW50aGVzZXMuCisrICAgICAgICAqIHNyYy9jb21waWxlci9Q
YXJzZUhlbHBlci5jcHA6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6cHJlY2lzaW9uRXJyb3JD
aGVjayk6IEFkZGVkIGEgZGVmYXVsdCBjYXNlLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvUG9v
bEFsbG9jLmNwcDoKKysgICAgICAgIChUQWxsb2NhdGlvbjo6Y2hlY2tHdWFyZEJsb2NrKTogQ2hh
bmdlZCAnJXUnIHRvICclbHUnIGZvciBzaXplX3QKKysgICAgICAgIHZhcmlhYmxlLiAgUHV0IGZv
ciBsb29wIGluc2lkZSAjaWZkZWYgR1VBUkRfQkxPQ0tTLyNlbmRpZiBtYWNyb3MKKysgICAgICAg
IHRvIGZpeCB0YXV0b2xvZ2ljYWwtY29tcGFyZSB3YXJuaW5nLgorKyAgICAgICAgKFRBbGxvY2F0
aW9uOjpjaGVja0FsbG9jTGlzdCk6IEFkZGVkIG5ld2xpbmUgdG8gZW5kIG9mIGZpbGUuCisrCisr
MjAxMS0wNC0yNiAgRGFuIEJlcm5zdGVpbiAgPG1pdHpAYXBwbGUuY29tPgorKworKyAgICAgICAg
QnVpbGQgZml4LgorKworKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9Db21waWxlclZlcnNpb24u
eGNjb25maWc6CisrCisrMjAxMS0wNC0yNiAgRGFuIEJlcm5zdGVpbiAgPG1pdHpAYXBwbGUuY29t
PgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgTWFyayBSb3dlLgorKworKyAgICAgICAgQ2hvb3Nl
IHRoZSBjb21waWxlciBiYXNlZCBvbiB0aGUgWGNvZGUgdmVyc2lvbiBmb3IgU25vdyBMZW9wYXJk
IGRlYnVnIGJ1aWxkcy4KKysKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZp
ZzoKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMvQ29tcGlsZXJWZXJzaW9uLnhjY29uZmlnOiBB
ZGRlZC4KKysKKysyMDExLTAzLTE3ICBKZWZmIE1pbGxlciAgPGplZmZtQGFwcGxlLmNvbT4KKysK
KysgICAgICAgIFVzZSBhIGNvbnNpc3RlbnQgc2V0IG9mIGZpbGUgcGF0dGVybnMgaW4gdGhlIHN2
bjppZ25vcmUgcHJvcGVydHkgZm9yIGFsbCAueGNvZGVwcm9qIGRpcmVjdG9yaWVzLCBzcGVjaWZp
Y2FsbHk6CisrICAgICAgICAKKysgICAgICAgICoubW9kZSoKKysgICAgICAgICoucGJ4dXNlcgor
KyAgICAgICAgKi5wZXJzcGVjdGl2ZSoKKysgICAgICAgIHByb2plY3QueGN3b3Jrc3BhY2UKKysg
ICAgICAgIHhjdXNlcmRhdGEKKysKKysgICAgICAgICogQU5HTEUueGNvZGVwcm9qOiBNb2RpZmll
ZCBwcm9wZXJ0eSBzdm46aWdub3JlLgorKyAgICAgICAgKiBzcmMvYnVpbGRfYW5nbGUueGNvZGVw
cm9qOiBNb2RpZmllZCBwcm9wZXJ0eSBzdm46aWdub3JlLgorKworKzIwMTEtMDEtMTggIEtlbm5l
dGggUnVzc2VsbCAgPGtickBnb29nbGUuY29tPgorKworKyAgICAgICAgVW5yZXZpZXdlZCwgTGVv
cGFyZCBidWlsZCBmaXguIFJlbW92ZSBmbGV4L2Jpc29uIHRhcmdldHMgZm9yIEdMU0wKKysgICAg
ICAgIGdyYW1tYXIgYmVjYXVzZSB0aGUgZ2VuZXJhdGVkIHNvdXJjZXMgYXJlIGFscmVhZHkgY2hl
Y2tlZCBpbi4KKysKKysgICAgICAgICogQU5HTEUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoK
KysgICAgICAgICogc3JjL2J1aWxkX2FuZ2xlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6Cisr
CisrMjAxMS0wMS0xOCAgS2VubmV0aCBSdXNzZWxsICA8a2JyQGdvb2dsZS5jb20+CisrCisrICAg
ICAgICBVbnJldmlld2VkLCByZWxlYXNlIGJ1aWxkIGZpeC4gRXhwbGljaXRseSBjYXN0IGF3YXkg
Y29uc3QuCisrCisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3Ivc2Nhbm5lci5j
OgorKyAgICAgICAgKFNjYW5Gcm9tU3RyaW5nKToKKysKKysyMDExLTAxLTE4ICBCZW4gVmFuaWsg
IDxiZW4udmFuaWtAZ21haWwuY29tPgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgS2VubmV0aCBS
dXNzZWxsLgorKworKyAgICAgICAgVXBkYXRpbmcgQU5HTEUgaW4gV2ViS2l0IHRvIHI1MzMuCisr
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDcxOTQKKysK
KysgICAgICAgICogQU5HTEUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKysgICAgICAgICog
aW5jbHVkZS9HTFNMQU5HL1NoYWRlckxhbmcuaDoKKysgICAgICAgICogc3JjL2NvbW1vbi9kZWJ1
Zy5jcHA6CisrICAgICAgICAoZ2w6OnRyYWNlKToKKysgICAgICAgICogc3JjL2NvbW1vbi9kZWJ1
Zy5oOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvQ29kZUdlbkdMU0wuY3BwOgorKyAgICAgICAg
KENvbnN0cnVjdENvbXBpbGVyKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL0NvZGVHZW5ITFNM
LmNwcDoKKysgICAgICAgIChDb25zdHJ1Y3RDb21waWxlcik6CisrICAgICAgICAqIHNyYy9jb21w
aWxlci9Db21tb24uaDoKKysgICAgICAgIChFbmNvZGVTb3VyY2VMb2MpOgorKyAgICAgICAgKERl
Y29kZVNvdXJjZUxvYyk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9Db21waWxlci5jcHA6IEFk
ZGVkLgorKyAgICAgICAgKFRTaEhhbmRsZUJhc2U6OlRTaEhhbmRsZUJhc2UpOgorKyAgICAgICAg
KFRTaEhhbmRsZUJhc2U6On5UU2hIYW5kbGVCYXNlKToKKysgICAgICAgIChUQ29tcGlsZXI6OlRD
b21waWxlcik6CisrICAgICAgICAoVENvbXBpbGVyOjp+VENvbXBpbGVyKToKKysgICAgICAgIChU
Q29tcGlsZXI6OkluaXQpOgorKyAgICAgICAgKFRDb21waWxlcjo6Y29tcGlsZSk6CisrICAgICAg
ICAoVENvbXBpbGVyOjpJbml0QnVpbHRJblN5bWJvbFRhYmxlKToKKysgICAgICAgIChUQ29tcGls
ZXI6OmNsZWFyUmVzdWx0cyk6CisrICAgICAgICAoVENvbXBpbGVyOjp2YWxpZGF0ZUxpbWl0YXRp
b25zKToKKysgICAgICAgIChUQ29tcGlsZXI6OmNvbGxlY3RBdHRyaWJzVW5pZm9ybXMpOgorKyAg
ICAgICAgKiBzcmMvY29tcGlsZXIvRXh0ZW5zaW9uQmVoYXZpb3IuaDogQWRkZWQuCisrICAgICAg
ICAqIHNyYy9jb21waWxlci9JbmZvU2luay5jcHA6CisrICAgICAgICAoVEluZm9TaW5rQmFzZTo6
bG9jYXRpb24pOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvSW5mb1NpbmsuaDoKKysgICAgICAg
IChUSW5mb1NpbmtCYXNlOjpzaXplKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL0luaXRpYWxp
emUuY3BwOgorKyAgICAgICAgKEJ1aWx0SW5GdW5jdGlvbnNDb21tb24pOgorKyAgICAgICAgKEJ1
aWx0SW5GdW5jdGlvbnNWZXJ0ZXgpOgorKyAgICAgICAgKEJ1aWx0SW5GdW5jdGlvbnNGcmFnbWVu
dCk6CisrICAgICAgICAoU3RhbmRhcmRVbmlmb3Jtcyk6CisrICAgICAgICAoRGVmYXVsdFByZWNp
c2lvblZlcnRleCk6CisrICAgICAgICAoRGVmYXVsdFByZWNpc2lvbkZyYWdtZW50KToKKysgICAg
ICAgIChCdWlsdEluQ29uc3RhbnRzKToKKysgICAgICAgIChUQnVpbHRJbnM6OmluaXRpYWxpemUp
OgorKyAgICAgICAgKElkZW50aWZ5QnVpbHRJbnMpOgorKyAgICAgICAgKEluaXRFeHRlbnNpb25C
ZWhhdmlvcik6CisrICAgICAgICAqIHNyYy9jb21waWxlci9Jbml0aWFsaXplLmg6CisrICAgICAg
ICAqIHNyYy9jb21waWxlci9JbnRlcm1UcmF2ZXJzZS5jcHA6CisrICAgICAgICAoVEludGVybUxv
b3A6OnRyYXZlcnNlKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL0ludGVybWVkaWF0ZS5jcHA6
CisrICAgICAgICAoZ2V0T3BlcmF0b3JTdHJpbmcpOgorKyAgICAgICAgKFRJbnRlcm1lZGlhdGU6
OmFkZEJpbmFyeU1hdGgpOgorKyAgICAgICAgKFRJbnRlcm1lZGlhdGU6OmFkZExvb3ApOgorKyAg
ICAgICAgKFRJbnRlcm1lZGlhdGU6OnBvc3RQcm9jZXNzKToKKysgICAgICAgIChUSW50ZXJtQmlu
YXJ5Ojpwcm9tb3RlKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL091dHB1dEdMU0wuY3BwOgor
KyAgICAgICAgKFRPdXRwdXRHTFNMOjp2aXNpdFVuYXJ5KToKKysgICAgICAgIChUT3V0cHV0R0xT
TDo6dmlzaXRMb29wKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL091dHB1dEhMU0wuY3BwOgor
KyAgICAgICAgKHNoOjpPdXRwdXRITFNMOjpPdXRwdXRITFNMKToKKysgICAgICAgIChzaDo6T3V0
cHV0SExTTDo6aGVhZGVyKToKKysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6dmlzaXRCaW5hcnkp
OgorKyAgICAgICAgKHNoOjpPdXRwdXRITFNMOjp2aXNpdFVuYXJ5KToKKysgICAgICAgIChzaDo6
T3V0cHV0SExTTDo6dmlzaXRBZ2dyZWdhdGUpOgorKyAgICAgICAgKHNoOjpPdXRwdXRITFNMOjp2
aXNpdExvb3ApOgorKyAgICAgICAgKHNoOjpPdXRwdXRITFNMOjpoYW5kbGVFeGNlc3NpdmVMb29w
KToKKysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6YXJndW1lbnRTdHJpbmcpOgorKyAgICAgICAg
KiBzcmMvY29tcGlsZXIvT3V0cHV0SExTTC5oOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvUGFy
c2VIZWxwZXIuY3BwOgorKyAgICAgICAgKFJlcG9ydEluZm8pOgorKyAgICAgICAgKERlZmluZUV4
dGVuc2lvbk1hY3Jvcyk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6ZXJyb3IpOgorKyAgICAg
ICAgKFRQYXJzZUNvbnRleHQ6Ondhcm5pbmcpOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OnJl
c2VydmVkRXJyb3JDaGVjayk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6Y29uc3RydWN0b3JF
cnJvckNoZWNrKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0OjphcnJheVF1YWxpZmllckVycm9y
Q2hlY2spOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OmV4dGVuc2lvbkVycm9yQ2hlY2spOgor
KyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OmFyZUFsbENoaWxkQ29uc3QpOgorKyAgICAgICAgKFBh
UGFyc2VTdHJpbmdzKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL1BhcnNlSGVscGVyLmg6Cisr
ICAgICAgICAoVFBhcnNlQ29udGV4dDo6VFBhcnNlQ29udGV4dCk6CisrICAgICAgICAqIHNyYy9j
b21waWxlci9Qb29sQWxsb2MuY3BwOgorKyAgICAgICAgKEluaXRpYWxpemVHbG9iYWxQb29scyk6
CisrICAgICAgICAoRnJlZUdsb2JhbFBvb2xzKToKKysgICAgICAgIChTZXRHbG9iYWxQb29sQWxs
b2NhdG9yKToKKysgICAgICAgIChUUG9vbEFsbG9jYXRvcjo6VFBvb2xBbGxvY2F0b3IpOgorKyAg
ICAgICAgKFRQb29sQWxsb2NhdG9yOjp+VFBvb2xBbGxvY2F0b3IpOgorKyAgICAgICAgKFRBbGxv
Y2F0aW9uOjpjaGVja0FsbG9jTGlzdCk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9Qb29sQWxs
b2MuaDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL1NlYXJjaFN5bWJvbC5jcHA6IEFkZGVkLgor
KyAgICAgICAgKHNoOjpTZWFyY2hTeW1ib2w6OlNlYXJjaFN5bWJvbCk6CisrICAgICAgICAoc2g6
OlNlYXJjaFN5bWJvbDo6dHJhdmVyc2UpOgorKyAgICAgICAgKHNoOjpTZWFyY2hTeW1ib2w6OnZp
c2l0U3ltYm9sKToKKysgICAgICAgIChzaDo6U2VhcmNoU3ltYm9sOjpmb3VuZE1hdGNoKToKKysg
ICAgICAgICogc3JjL2NvbXBpbGVyL1NlYXJjaFN5bWJvbC5oOiBBZGRlZC4KKysgICAgICAgICog
c3JjL2NvbXBpbGVyL1NoSGFuZGxlLmg6CisrICAgICAgICAoVENvbXBpbGVyOjpnZXRBc0NvbXBp
bGVyKToKKysgICAgICAgIChUQ29tcGlsZXI6OmdldEluZm9TaW5rKToKKysgICAgICAgIChUQ29t
cGlsZXI6OmdldEF0dHJpYnMpOgorKyAgICAgICAgKFRDb21waWxlcjo6Z2V0VW5pZm9ybXMpOgor
KyAgICAgICAgKFRDb21waWxlcjo6Z2V0U2hhZGVyVHlwZSk6CisrICAgICAgICAoVENvbXBpbGVy
OjpnZXRTaGFkZXJTcGVjKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL1NoYWRlckxhbmcuY3Bw
OgorKyAgICAgICAgKGdldFZhcmlhYmxlTWF4TGVuZ3RoKToKKysgICAgICAgIChnZXRWYXJpYWJs
ZUluZm8pOgorKyAgICAgICAgKFNoSW5pdEJ1aWx0SW5SZXNvdXJjZXMpOgorKyAgICAgICAgKFNo
Q29uc3RydWN0Q29tcGlsZXIpOgorKyAgICAgICAgKFNoQ29tcGlsZSk6CisrICAgICAgICAoU2hH
ZXRJbmZvKToKKysgICAgICAgIChTaEdldEluZm9Mb2cpOgorKyAgICAgICAgKFNoR2V0T2JqZWN0
Q29kZSk6CisrICAgICAgICAoU2hHZXRBY3RpdmVBdHRyaWIpOgorKyAgICAgICAgKFNoR2V0QWN0
aXZlVW5pZm9ybSk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9TeW1ib2xUYWJsZS5jcHA6Cisr
ICAgICAgICAoVFN5bWJvbFRhYmxlTGV2ZWw6OnJlbGF0ZVRvRXh0ZW5zaW9uKToKKysgICAgICAg
ICogc3JjL2NvbXBpbGVyL1N5bWJvbFRhYmxlLmg6CisrICAgICAgICAoVFZhcmlhYmxlOjpzaGFy
ZUNvbnN0UG9pbnRlcik6CisrICAgICAgICAoVEZ1bmN0aW9uOjpyZWxhdGVUb0V4dGVuc2lvbik6
CisrICAgICAgICAoVEZ1bmN0aW9uOjpnZXRFeHRlbnNpb24pOgorKyAgICAgICAgKFRGdW5jdGlv
bjo6Z2V0UGFyYW1Db3VudCk6CisrICAgICAgICAoVEZ1bmN0aW9uOjpnZXRQYXJhbSk6CisrICAg
ICAgICAoVFN5bWJvbFRhYmxlOjpnZXRHbG9iYWxMZXZlbCk6CisrICAgICAgICAoVFN5bWJvbFRh
YmxlOjpyZWxhdGVUb09wZXJhdG9yKToKKysgICAgICAgIChUU3ltYm9sVGFibGU6OnJlbGF0ZVRv
RXh0ZW5zaW9uKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL1RyYW5zbGF0b3JHTFNMLmNwcDoK
KysgICAgICAgICh3cml0ZVZlcnNpb24pOgorKyAgICAgICAgKFRyYW5zbGF0b3JHTFNMOjpUcmFu
c2xhdG9yR0xTTCk6CisrICAgICAgICAoVHJhbnNsYXRvckdMU0w6OnRyYW5zbGF0ZSk6CisrICAg
ICAgICAqIHNyYy9jb21waWxlci9UcmFuc2xhdG9yR0xTTC5oOgorKyAgICAgICAgKiBzcmMvY29t
cGlsZXIvVHJhbnNsYXRvckhMU0wuY3BwOgorKyAgICAgICAgKFRyYW5zbGF0b3JITFNMOjpUcmFu
c2xhdG9ySExTTCk6CisrICAgICAgICAoVHJhbnNsYXRvckhMU0w6OnRyYW5zbGF0ZSk6CisrICAg
ICAgICAqIHNyYy9jb21waWxlci9UcmFuc2xhdG9ySExTTC5oOgorKyAgICAgICAgKiBzcmMvY29t
cGlsZXIvVHlwZXMuaDoKKysgICAgICAgIChUVHlwZTo6VFR5cGUpOgorKyAgICAgICAgKiBzcmMv
Y29tcGlsZXIvVW5mb2xkU2VsZWN0LmNwcDoKKysgICAgICAgIChzaDo6VW5mb2xkU2VsZWN0Ojp2
aXNpdFNlbGVjdGlvbik6CisrICAgICAgICAqIHNyYy9jb21waWxlci9VbmZvbGRTZWxlY3QuaDoK
KysgICAgICAgICogc3JjL2NvbXBpbGVyL1ZhbGlkYXRlTGltaXRhdGlvbnMuY3BwOiBBZGRlZC4K
KysgICAgICAgIChWYWxpZGF0ZUxpbWl0YXRpb25zOjpWYWxpZGF0ZUxpbWl0YXRpb25zKToKKysg
ICAgICAgIChWYWxpZGF0ZUxpbWl0YXRpb25zOjp2aXNpdFN5bWJvbCk6CisrICAgICAgICAoVmFs
aWRhdGVMaW1pdGF0aW9uczo6dmlzaXRDb25zdGFudFVuaW9uKToKKysgICAgICAgIChWYWxpZGF0
ZUxpbWl0YXRpb25zOjp2aXNpdEJpbmFyeSk6CisrICAgICAgICAoVmFsaWRhdGVMaW1pdGF0aW9u
czo6dmlzaXRVbmFyeSk6CisrICAgICAgICAoVmFsaWRhdGVMaW1pdGF0aW9uczo6dmlzaXRTZWxl
Y3Rpb24pOgorKyAgICAgICAgKFZhbGlkYXRlTGltaXRhdGlvbnM6OnZpc2l0QWdncmVnYXRlKToK
KysgICAgICAgIChWYWxpZGF0ZUxpbWl0YXRpb25zOjp2aXNpdExvb3ApOgorKyAgICAgICAgKFZh
bGlkYXRlTGltaXRhdGlvbnM6OnZpc2l0QnJhbmNoKToKKysgICAgICAgIChWYWxpZGF0ZUxpbWl0
YXRpb25zOjplcnJvcik6CisrICAgICAgICAoVmFsaWRhdGVMaW1pdGF0aW9uczo6d2l0aGluTG9v
cEJvZHkpOgorKyAgICAgICAgKFZhbGlkYXRlTGltaXRhdGlvbnM6OmlzTG9vcEluZGV4KToKKysg
ICAgICAgIChWYWxpZGF0ZUxpbWl0YXRpb25zOjp2YWxpZGF0ZUxvb3BUeXBlKToKKysgICAgICAg
IChWYWxpZGF0ZUxpbWl0YXRpb25zOjp2YWxpZGF0ZUZvckxvb3BIZWFkZXIpOgorKyAgICAgICAg
KFZhbGlkYXRlTGltaXRhdGlvbnM6OnZhbGlkYXRlRm9yTG9vcEluaXQpOgorKyAgICAgICAgKFZh
bGlkYXRlTGltaXRhdGlvbnM6OnZhbGlkYXRlRm9yTG9vcENvbmQpOgorKyAgICAgICAgKFZhbGlk
YXRlTGltaXRhdGlvbnM6OnZhbGlkYXRlRm9yTG9vcEV4cHIpOgorKyAgICAgICAgKFZhbGlkYXRl
TGltaXRhdGlvbnM6OnZhbGlkYXRlRnVuY3Rpb25DYWxsKToKKysgICAgICAgIChWYWxpZGF0ZUxp
bWl0YXRpb25zOjp2YWxpZGF0ZU9wZXJhdGlvbik6CisrICAgICAgICAoVmFsaWRhdGVMaW1pdGF0
aW9uczo6aXNDb25zdEV4cHIpOgorKyAgICAgICAgKFZhbGlkYXRlTGltaXRhdGlvbnM6OmlzQ29u
c3RJbmRleEV4cHIpOgorKyAgICAgICAgKFZhbGlkYXRlTGltaXRhdGlvbnM6OnZhbGlkYXRlSW5k
ZXhpbmcpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvVmFsaWRhdGVMaW1pdGF0aW9ucy5oOiBB
ZGRlZC4KKysgICAgICAgIChWYWxpZGF0ZUxpbWl0YXRpb25zOjpudW1FcnJvcnMpOgorKyAgICAg
ICAgKiBzcmMvY29tcGlsZXIvVmFyaWFibGVJbmZvLmNwcDogQWRkZWQuCisrICAgICAgICAoYXJy
YXlCcmFja2V0cyk6CisrICAgICAgICAoZ2V0VmFyaWFibGVEYXRhVHlwZSk6CisrICAgICAgICAo
Z2V0VmFyaWFibGVJbmZvKToKKysgICAgICAgIChnZXRCdWlsdEluVmFyaWFibGVJbmZvKToKKysg
ICAgICAgIChnZXRVc2VyRGVmaW5lZFZhcmlhYmxlSW5mbyk6CisrICAgICAgICAoQ29sbGVjdEF0
dHJpYnNVbmlmb3Jtczo6Q29sbGVjdEF0dHJpYnNVbmlmb3Jtcyk6CisrICAgICAgICAoQ29sbGVj
dEF0dHJpYnNVbmlmb3Jtczo6dmlzaXRTeW1ib2wpOgorKyAgICAgICAgKENvbGxlY3RBdHRyaWJz
VW5pZm9ybXM6OnZpc2l0Q29uc3RhbnRVbmlvbik6CisrICAgICAgICAoQ29sbGVjdEF0dHJpYnNV
bmlmb3Jtczo6dmlzaXRCaW5hcnkpOgorKyAgICAgICAgKENvbGxlY3RBdHRyaWJzVW5pZm9ybXM6
OnZpc2l0VW5hcnkpOgorKyAgICAgICAgKENvbGxlY3RBdHRyaWJzVW5pZm9ybXM6OnZpc2l0U2Vs
ZWN0aW9uKToKKysgICAgICAgIChDb2xsZWN0QXR0cmlic1VuaWZvcm1zOjp2aXNpdEFnZ3JlZ2F0
ZSk6CisrICAgICAgICAoQ29sbGVjdEF0dHJpYnNVbmlmb3Jtczo6dmlzaXRMb29wKToKKysgICAg
ICAgIChDb2xsZWN0QXR0cmlic1VuaWZvcm1zOjp2aXNpdEJyYW5jaCk6CisrICAgICAgICAqIHNy
Yy9jb21waWxlci9WYXJpYWJsZUluZm8uaDogQWRkZWQuCisrICAgICAgICAqIHNyYy9jb21waWxl
ci9WZXJzaW9uR0xTTC5jcHA6IEFkZGVkLgorKyAgICAgICAgKFRWZXJzaW9uR0xTTDo6VFZlcnNp
b25HTFNMKToKKysgICAgICAgIChUVmVyc2lvbkdMU0w6OnZpc2l0U3ltYm9sKToKKysgICAgICAg
IChUVmVyc2lvbkdMU0w6OnZpc2l0Q29uc3RhbnRVbmlvbik6CisrICAgICAgICAoVFZlcnNpb25H
TFNMOjp2aXNpdEJpbmFyeSk6CisrICAgICAgICAoVFZlcnNpb25HTFNMOjp2aXNpdFVuYXJ5KToK
KysgICAgICAgIChUVmVyc2lvbkdMU0w6OnZpc2l0U2VsZWN0aW9uKToKKysgICAgICAgIChUVmVy
c2lvbkdMU0w6OnZpc2l0QWdncmVnYXRlKToKKysgICAgICAgIChUVmVyc2lvbkdMU0w6OnZpc2l0
TG9vcCk6CisrICAgICAgICAoVFZlcnNpb25HTFNMOjp2aXNpdEJyYW5jaCk6CisrICAgICAgICAo
VFZlcnNpb25HTFNMOjp1cGRhdGVWZXJzaW9uKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL1Zl
cnNpb25HTFNMLmg6IEFkZGVkLgorKyAgICAgICAgKFRWZXJzaW9uR0xTTDo6Z2V0VmVyc2lvbik6
CisrICAgICAgICAqIHNyYy9jb21waWxlci9nZW5lcmF0ZV9nbHNsYW5nX2xleGVyLnNoOiBBZGRl
ZC4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL2dlbmVyYXRlX2dsc2xhbmdfcGFyc2VyLnNoOiBB
ZGRlZC4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL2dsc2xhbmcuaDogQWRkZWQuCisrICAgICAg
ICAqIHNyYy9jb21waWxlci9nbHNsYW5nLmw6CisrICAgICAgICAqIHNyYy9jb21waWxlci9nbHNs
YW5nLnk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9nbHNsYW5nX2xleC5jcHA6IEFkZGVkLgor
KyAgICAgICAgKHl5X2dldF9uZXh0X2J1ZmZlcik6CisrICAgICAgICAoeXlfZ2V0X3ByZXZpb3Vz
X3N0YXRlKToKKysgICAgICAgICh5eV90cnlfTlVMX3RyYW5zKToKKysgICAgICAgIChpbnB1dCk6
CisrICAgICAgICAoeXlyZXN0YXJ0KToKKysgICAgICAgICh5eV9zd2l0Y2hfdG9fYnVmZmVyKToK
KysgICAgICAgICh5eV9sb2FkX2J1ZmZlcl9zdGF0ZSk6CisrICAgICAgICAoeXlfY3JlYXRlX2J1
ZmZlcik6CisrICAgICAgICAoeXlfZGVsZXRlX2J1ZmZlcik6CisrICAgICAgICAoeXlfaW5pdF9i
dWZmZXIpOgorKyAgICAgICAgKHl5X2ZsdXNoX2J1ZmZlcik6CisrICAgICAgICAoeXlwdXNoX2J1
ZmZlcl9zdGF0ZSk6CisrICAgICAgICAoeXlwb3BfYnVmZmVyX3N0YXRlKToKKysgICAgICAgICh5
eWVuc3VyZV9idWZmZXJfc3RhY2spOgorKyAgICAgICAgKHl5X3NjYW5fYnVmZmVyKToKKysgICAg
ICAgICh5eV9zY2FuX3N0cmluZyk6CisrICAgICAgICAoeXlfc2Nhbl9ieXRlcyk6CisrICAgICAg
ICAoeXlfcHVzaF9zdGF0ZSk6CisrICAgICAgICAoeXlfcG9wX3N0YXRlKToKKysgICAgICAgICh5
eV90b3Bfc3RhdGUpOgorKyAgICAgICAgKHl5X2ZhdGFsX2Vycm9yKToKKysgICAgICAgICh5eWdl
dF9leHRyYSk6CisrICAgICAgICAoeXlnZXRfbGluZW5vKToKKysgICAgICAgICh5eWdldF9jb2x1
bW4pOgorKyAgICAgICAgKHl5Z2V0X2luKToKKysgICAgICAgICh5eWdldF9vdXQpOgorKyAgICAg
ICAgKHl5Z2V0X2xlbmcpOgorKyAgICAgICAgKHl5Z2V0X3RleHQpOgorKyAgICAgICAgKHl5c2V0
X2V4dHJhKToKKysgICAgICAgICh5eXNldF9saW5lbm8pOgorKyAgICAgICAgKHl5c2V0X2NvbHVt
bik6CisrICAgICAgICAoeXlzZXRfaW4pOgorKyAgICAgICAgKHl5c2V0X291dCk6CisrICAgICAg
ICAoeXlnZXRfZGVidWcpOgorKyAgICAgICAgKHl5c2V0X2RlYnVnKToKKysgICAgICAgICh5eWdl
dF9sdmFsKToKKysgICAgICAgICh5eXNldF9sdmFsKToKKysgICAgICAgICh5eWxleF9pbml0KToK
KysgICAgICAgICh5eWxleF9pbml0X2V4dHJhKToKKysgICAgICAgICh5eV9pbml0X2dsb2JhbHMp
OgorKyAgICAgICAgKHl5bGV4X2Rlc3Ryb3kpOgorKyAgICAgICAgKHl5X2ZsZXhfc3RybmNweSk6
CisrICAgICAgICAoeXlfZmxleF9zdHJsZW4pOgorKyAgICAgICAgKHl5YWxsb2MpOgorKyAgICAg
ICAgKHl5cmVhbGxvYyk6CisrICAgICAgICAoeXlmcmVlKToKKysgICAgICAgIChzdHJpbmdfaW5w
dXQpOgorKyAgICAgICAgKGNoZWNrX3R5cGUpOgorKyAgICAgICAgKHJlc2VydmVkX3dvcmQpOgor
KyAgICAgICAgKHl5ZXJyb3IpOgorKyAgICAgICAgKGdsc2xhbmdfaW5pdGlhbGl6ZSk6CisrICAg
ICAgICAoZ2xzbGFuZ19maW5hbGl6ZSk6CisrICAgICAgICAoZ2xzbGFuZ19zY2FuKToKKysgICAg
ICAgICogc3JjL2NvbXBpbGVyL2dsc2xhbmdfdGFiLmNwcDogQWRkZWQuCisrICAgICAgICAoeXl0
bmFtZXJyKToKKysgICAgICAgICh5eXN5bnRheF9lcnJvcik6CisrICAgICAgICAoZ2xzbGFuZ19w
YXJzZSk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9nbHNsYW5nX3RhYi5oOiBBZGRlZC4KKysg
ICAgICAgICogc3JjL2NvbXBpbGVyL2ludGVybU91dC5jcHA6CisrICAgICAgICAoVE91dHB1dFRy
YXZlcnNlcjo6VE91dHB1dFRyYXZlcnNlcik6CisrICAgICAgICAoT3V0cHV0VHJlZVRleHQpOgor
KyAgICAgICAgKFRPdXRwdXRUcmF2ZXJzZXI6OnZpc2l0U3ltYm9sKToKKysgICAgICAgIChUT3V0
cHV0VHJhdmVyc2VyOjp2aXNpdEJpbmFyeSk6CisrICAgICAgICAoVE91dHB1dFRyYXZlcnNlcjo6
dmlzaXRVbmFyeSk6CisrICAgICAgICAoVE91dHB1dFRyYXZlcnNlcjo6dmlzaXRBZ2dyZWdhdGUp
OgorKyAgICAgICAgKFRPdXRwdXRUcmF2ZXJzZXI6OnZpc2l0U2VsZWN0aW9uKToKKysgICAgICAg
IChUT3V0cHV0VHJhdmVyc2VyOjp2aXNpdENvbnN0YW50VW5pb24pOgorKyAgICAgICAgKFRPdXRw
dXRUcmF2ZXJzZXI6OnZpc2l0TG9vcCk6CisrICAgICAgICAoVE91dHB1dFRyYXZlcnNlcjo6dmlz
aXRCcmFuY2gpOgorKyAgICAgICAgKFRJbnRlcm1lZGlhdGU6Om91dHB1dFRyZWUpOgorKyAgICAg
ICAgKiBzcmMvY29tcGlsZXIvaW50ZXJtZWRpYXRlLmg6CisrICAgICAgICAoVEludGVybUxvb3A6
OlRJbnRlcm1Mb29wKToKKysgICAgICAgIChUSW50ZXJtTG9vcDo6Z2V0VHlwZSk6CisrICAgICAg
ICAoVEludGVybUxvb3A6OmdldEluaXQpOgorKyAgICAgICAgKFRJbnRlcm1Mb29wOjpnZXRDb25k
aXRpb24pOgorKyAgICAgICAgKFRJbnRlcm1Mb29wOjpnZXRFeHByZXNzaW9uKToKKysgICAgICAg
IChUSW50ZXJtTG9vcDo6Z2V0Qm9keSk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9sb2NhbGlu
dGVybWVkaWF0ZS5oOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvb3NpbmNsdWRlLmg6CisrICAg
ICAgICAoT1NfR2V0VExTVmFsdWUpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvb3Nzb3VyY2Vf
bnNwci5jcHA6IEFkZGVkLgorKyAgICAgICAgKE9TX0FsbG9jVExTSW5kZXgpOgorKyAgICAgICAg
KE9TX1NldFRMU1ZhbHVlKToKKysgICAgICAgIChPU19GcmVlVExTSW5kZXgpOgorKyAgICAgICAg
KiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL2NvbXBpbGUuaDoKKysgICAgICAgICogc3JjL2Nv
bXBpbGVyL3ByZXByb2Nlc3Nvci9jcHAuYzoKKysgICAgICAgIChDUFBkZWZpbmUpOgorKyAgICAg
ICAgKENQUGVsc2UpOgorKyAgICAgICAgKENQUGlmKToKKysgICAgICAgIChDUFBpZmRlZik6Cisr
ICAgICAgICAoQ1BQZXJyb3IpOgorKyAgICAgICAgKENQUGV4dGVuc2lvbik6CisrICAgICAgICAo
cmVhZENQUGxpbmUpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL3ByZXBy
b2Nlc3MuaDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9zY2FubmVyLmM6
CisrICAgICAgICAoc3RyX2dldGNoKToKKysgICAgICAgIChzdHJfdW5nZXRjaCk6CisrICAgICAg
ICAoU2NhbkZyb21TdHJpbmcpOgorKyAgICAgICAgKGxGbG9hdENvbnN0KToKKysgICAgICAgIChi
eXRlX3NjYW4pOgorKyAgICAgICAgKHl5bGV4X0NQUCk6CisrICAgICAgICAoY2hlY2tfRU9GKToK
KysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9zY2FubmVyLmg6CisrICAgICAg
ICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvdG9rZW5zLmM6CisrICAgICAgICAoUmVjb3Jk
VG9rZW4pOgorKyAgICAgICAgKFJlYWRUb2tlbik6CisrICAgICAgICAqIHNyYy9jb21waWxlci90
b29sczogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3VuaXN0ZC5oOiBSZW1vdmVk
LgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdXRpbC5jcHA6IEFkZGVkLgorKyAgICAgICAgKGF0
b2ZfZG90KToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3V0aWwuaDogQWRkZWQuCisrICAgICAg
ICAqIHNyYy9saWJFR0wvQ29uZmlnLmNwcDoKKysgICAgICAgIChlZ2w6OkNvbmZpZzo6c2V0KToK
KysgICAgICAgICogc3JjL2xpYkVHTC9EaXNwbGF5LmNwcDoKKysgICAgICAgIChlZ2w6OkRpc3Bs
YXk6OkRpc3BsYXkpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6aW5pdGlhbGl6ZSk6CisrICAg
ICAgICAoZWdsOjpEaXNwbGF5Ojp0ZXJtaW5hdGUpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6
Y3JlYXRlRGV2aWNlKToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OnJlc2V0RGV2aWNlKToKKysg
ICAgICAgIChlZ2w6OkRpc3BsYXk6OmNyZWF0ZUNvbnRleHQpOgorKyAgICAgICAgKGVnbDo6RGlz
cGxheTo6ZGVzdHJveUNvbnRleHQpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6Z2V0TWluU3dh
cEludGVydmFsKToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OmdldE1heFN3YXBJbnRlcnZhbCk6
CisrICAgICAgICAoZWdsOjpEaXNwbGF5OjpnZXREZXZpY2UpOgorKyAgICAgICAgKGVnbDo6RGlz
cGxheTo6Z2V0RmxvYXRUZXh0dXJlU3VwcG9ydCk6CisrICAgICAgICAoZWdsOjpEaXNwbGF5Ojpn
ZXRIYWxmRmxvYXRUZXh0dXJlU3VwcG9ydCk6CisrICAgICAgICAoZWdsOjpEaXNwbGF5OjpnZXRM
dW1pbmFuY2VUZXh0dXJlU3VwcG9ydCk6CisrICAgICAgICAoZWdsOjpEaXNwbGF5OjpnZXRMdW1p
bmFuY2VBbHBoYVRleHR1cmVTdXBwb3J0KToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OmdldEJ1
ZmZlclBvb2wpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6Z2V0RXZlbnRRdWVyeVN1cHBvcnQp
OgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6Z2V0RGVmYXVsdFByZXNlbnRQYXJhbWV0ZXJzKToK
KysgICAgICAgICogc3JjL2xpYkVHTC9EaXNwbGF5Lmg6CisrICAgICAgICAqIHNyYy9saWJFR0wv
U3VyZmFjZS5jcHA6CisrICAgICAgICAoZWdsOjpTdXJmYWNlOjpTdXJmYWNlKToKKysgICAgICAg
IChlZ2w6OlN1cmZhY2U6On5TdXJmYWNlKToKKysgICAgICAgIChlZ2w6OlN1cmZhY2U6OnJlbGVh
c2UpOgorKyAgICAgICAgKGVnbDo6U3VyZmFjZTo6cmVzZXRTd2FwQ2hhaW4pOgorKyAgICAgICAg
KGVnbDo6U3VyZmFjZTo6d3JpdGVSZWNvcmRhYmxlRmxpcFN0YXRlKToKKysgICAgICAgIChlZ2w6
OlN1cmZhY2U6OnJlc3RvcmVTdGF0ZSk6CisrICAgICAgICAoZWdsOjpTdXJmYWNlV2luZG93UHJv
Yyk6CisrICAgICAgICAoZWdsOjpTdXJmYWNlOjpzdWJjbGFzc1dpbmRvdyk6CisrICAgICAgICAo
ZWdsOjpTdXJmYWNlOjp1bnN1YmNsYXNzV2luZG93KToKKysgICAgICAgIChlZ2w6OlN1cmZhY2U6
OmNoZWNrRm9yT3V0T2ZEYXRlU3dhcENoYWluKToKKysgICAgICAgIChlZ2w6OlN1cmZhY2U6OmNv
bnZlcnRJbnRlcnZhbCk6CisrICAgICAgICAoZWdsOjpTdXJmYWNlOjpzd2FwKToKKysgICAgICAg
IChlZ2w6OlN1cmZhY2U6OmdldFJlbmRlclRhcmdldCk6CisrICAgICAgICAoZWdsOjpTdXJmYWNl
OjpzZXRTd2FwSW50ZXJ2YWwpOgorKyAgICAgICAgKiBzcmMvbGliRUdML1N1cmZhY2UuaDoKKysg
ICAgICAgICogc3JjL2xpYkVHTC9saWJFR0wuY3BwOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3Yy
L0JsaXQuY3BwOgorKyAgICAgICAgKGdsOjpCbGl0Ojpjb3B5U3VyZmFjZVRvVGV4dHVyZSk6Cisr
ICAgICAgICAoZ2w6OkJsaXQ6OnNldENvbW1vbkJsaXRTdGF0ZSk6CisrICAgICAgICAqIHNyYy9s
aWJHTEVTdjIvQnVmZmVyLmNwcDoKKysgICAgICAgIChnbDo6QnVmZmVyOjpCdWZmZXIpOgorKyAg
ICAgICAgKGdsOjpCdWZmZXI6On5CdWZmZXIpOgorKyAgICAgICAgKGdsOjpCdWZmZXI6OmJ1ZmZl
ckRhdGEpOgorKyAgICAgICAgKGdsOjpCdWZmZXI6OmJ1ZmZlclN1YkRhdGEpOgorKyAgICAgICAg
KGdsOjpCdWZmZXI6OmdldFZlcnRleEJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkJ1ZmZlcjo6Z2V0
SW5kZXhCdWZmZXIpOgorKyAgICAgICAgKGdsOjpCdWZmZXI6OmludmFsaWRhdGVTdGF0aWNEYXRh
KToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9CdWZmZXIuaDoKKysgICAgICAgICogc3JjL2xp
YkdMRVN2Mi9Db250ZXh0LmNwcDoKKysgICAgICAgIChnbDo6Q29udGV4dDo6Q29udGV4dCk6Cisr
ICAgICAgICAoZ2w6OkNvbnRleHQ6On5Db250ZXh0KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6
bWFrZUN1cnJlbnQpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjptYXJrQWxsU3RhdGVEaXJ0eSk6
CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnNldEZyYWdtZW50U2hhZGVyRGVyaXZhdGl2ZUhpbnQp
OgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzZXRFbmFibGVWZXJ0ZXhBdHRyaWJBcnJheSk6Cisr
ICAgICAgICAoZ2w6OkNvbnRleHQ6OmdldFZlcnRleEF0dHJpYlN0YXRlKToKKysgICAgICAgIChn
bDo6Q29udGV4dDo6Z2V0VmVydGV4QXR0cmlidXRlcyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6
OmNyZWF0ZUZlbmNlKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6ZGVsZXRlRmVuY2UpOgorKyAg
ICAgICAgKGdsOjpDb250ZXh0OjpiaW5kVGV4dHVyZTJEKToKKysgICAgICAgIChnbDo6Q29udGV4
dDo6YmluZFRleHR1cmVDdWJlTWFwKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0RmVuY2Up
OgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRUZXh0dXJlMkQpOgorKyAgICAgICAgKGdsOjpD
b250ZXh0OjpnZXRUZXh0dXJlQ3ViZU1hcCk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmdldFNh
bXBsZXJUZXh0dXJlKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0Qm9vbGVhbnYpOgorKyAg
ICAgICAgKGdsOjpDb250ZXh0OjpnZXRJbnRlZ2Vydik6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6
OmdldFF1ZXJ5UGFyYW1ldGVySW5mbyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmFwcGx5UmVu
ZGVyVGFyZ2V0KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6YXBwbHlTdGF0ZSk6CisrICAgICAg
ICAoZ2w6OkNvbnRleHQ6Omxvb2t1cEF0dHJpYnV0ZU1hcHBpbmcpOgorKyAgICAgICAgKGdsOjpD
b250ZXh0OjphcHBseVZlcnRleEJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmFwcGx5
SW5kZXhCdWZmZXIpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpyZWFkUGl4ZWxzKToKKysgICAg
ICAgIChnbDo6Q29udGV4dDo6Y2xlYXIpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpkcmF3QXJy
YXlzKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6ZHJhd0VsZW1lbnRzKToKKysgICAgICAgIChn
bDo6Q29udGV4dDo6ZmluaXNoKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6ZHJhd0Nsb3NpbmdM
aW5lKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0TWF4aW11bVZhcnlpbmdWZWN0b3JzKToK
KysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0TWF4aW11bUZyYWdtZW50VW5pZm9ybVZlY3RvcnMp
OgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzdXBwb3J0c0V2ZW50UXVlcmllcyk6CisrICAgICAg
ICAoZ2w6OkNvbnRleHQ6OnN1cHBvcnRzRmxvYXRUZXh0dXJlcyk6CisrICAgICAgICAoZ2w6OkNv
bnRleHQ6OnN1cHBvcnRzRmxvYXRMaW5lYXJGaWx0ZXIpOgorKyAgICAgICAgKGdsOjpDb250ZXh0
OjpzdXBwb3J0c0Zsb2F0UmVuZGVyYWJsZVRleHR1cmVzKToKKysgICAgICAgIChnbDo6Q29udGV4
dDo6c3VwcG9ydHNIYWxmRmxvYXRUZXh0dXJlcyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnN1
cHBvcnRzSGFsZkZsb2F0TGluZWFyRmlsdGVyKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c3Vw
cG9ydHNIYWxmRmxvYXRSZW5kZXJhYmxlVGV4dHVyZXMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0
OjpnZXRNYXhpbXVtUmVuZGVyYnVmZmVyRGltZW5zaW9uKToKKysgICAgICAgIChnbDo6Q29udGV4
dDo6Z2V0TWF4aW11bVRleHR1cmVEaW1lbnNpb24pOgorKyAgICAgICAgKGdsOjpDb250ZXh0Ojpn
ZXRNYXhpbXVtQ3ViZVRleHR1cmVEaW1lbnNpb24pOgorKyAgICAgICAgKGdsOjpDb250ZXh0Ojpn
ZXRNYXhpbXVtVGV4dHVyZUxldmVsKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c3VwcG9ydHNM
dW1pbmFuY2VUZXh0dXJlcyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnN1cHBvcnRzTHVtaW5h
bmNlQWxwaGFUZXh0dXJlcyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnN1cHBvcnRzMzJiaXRJ
bmRpY2VzKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0SW5jb21wbGV0ZVRleHR1cmUpOgor
KyAgICAgICAgKGdsOjpDb250ZXh0OjpzZXRWZXJ0ZXhBdHRyaWIpOgorKyAgICAgICAgKGdsOjpD
b250ZXh0Ojppbml0RXh0ZW5zaW9uU3RyaW5nKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Ymxp
dEZyYW1lYnVmZmVyKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9Db250ZXh0Lmg6CisrICAg
ICAgICAoZ2w6OlZlcnRleEF0dHJpYnV0ZTo6VmVydGV4QXR0cmlidXRlKToKKysgICAgICAgIChn
bDo6VmVydGV4QXR0cmlidXRlOjp0eXBlU2l6ZSk6CisrICAgICAgICAoZ2w6OlZlcnRleEF0dHJp
YnV0ZTo6c3RyaWRlKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9GZW5jZS5jcHA6IEFkZGVk
LgorKyAgICAgICAgKGdsOjpGZW5jZTo6RmVuY2UpOgorKyAgICAgICAgKGdsOjpGZW5jZTo6fkZl
bmNlKToKKysgICAgICAgIChnbDo6RmVuY2U6OmlzRmVuY2UpOgorKyAgICAgICAgKGdsOjpGZW5j
ZTo6c2V0RmVuY2UpOgorKyAgICAgICAgKGdsOjpGZW5jZTo6dGVzdEZlbmNlKToKKysgICAgICAg
IChnbDo6RmVuY2U6OmZpbmlzaEZlbmNlKToKKysgICAgICAgIChnbDo6RmVuY2U6OmdldEZlbmNl
aXYpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL0ZlbmNlLmg6IEFkZGVkLgorKyAgICAgICAg
KiBzcmMvbGliR0xFU3YyL0ZyYW1lYnVmZmVyLmNwcDoKKysgICAgICAgIChnbDo6RnJhbWVidWZm
ZXI6OmNvbXBsZXRlbmVzcyk6CisrICAgICAgICAoZ2w6OkRlZmF1bHRGcmFtZWJ1ZmZlcjo6RGVm
YXVsdEZyYW1lYnVmZmVyKToKKysgICAgICAgIChnbDo6RGVmYXVsdEZyYW1lYnVmZmVyOjpjb21w
bGV0ZW5lc3MpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1Byb2dyYW0uY3BwOgorKyAgICAg
ICAgKGdsOjpQcm9ncmFtOjpQcm9ncmFtKToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6Z2V0U2Ft
cGxlck1hcHBpbmcpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpnZXRVbmlmb3JtTG9jYXRpb24p
OgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpzZXRVbmlmb3JtMWl2KToKKysgICAgICAgIChnbDo6
UHJvZ3JhbTo6YXBwbHlVbmlmb3Jtcyk6CisrICAgICAgICAoZ2w6OlByb2dyYW06OnBhY2tWYXJ5
aW5ncyk6CisrICAgICAgICAoZ2w6OlByb2dyYW06OmxpbmtWYXJ5aW5ncyk6CisrICAgICAgICAo
Z2w6OlByb2dyYW06OmxpbmspOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpkZWZpbmVVbmlmb3Jt
KToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6Y3JlYXRlVW5pZm9ybSk6CisrICAgICAgICAoZ2w6
OlByb2dyYW06OmFwcGx5VW5pZm9ybTFpdik6CisrICAgICAgICAoZ2w6OlByb2dyYW06OnJlc2V0
SW5mb0xvZyk6CisrICAgICAgICAoZ2w6OlByb2dyYW06OnVubGluayk6CisrICAgICAgICAoZ2w6
OlByb2dyYW06OmdldEFjdGl2ZUF0dHJpYnV0ZSk6CisrICAgICAgICAoZ2w6OlByb2dyYW06Omdl
dEFjdGl2ZVVuaWZvcm0pOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpnZXREeERlcHRoUmFuZ2VM
b2NhdGlvbik6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvUHJvZ3JhbS5oOgorKyAgICAgICAg
KiBzcmMvbGliR0xFU3YyL1JlZkNvdW50T2JqZWN0LmNwcDoKKysgICAgICAgIChnbDo6UmVmQ291
bnRPYmplY3Q6On5SZWZDb3VudE9iamVjdCk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvUmVu
ZGVyYnVmZmVyLmNwcDoKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyU3RvcmFnZTo6UmVuZGVy
YnVmZmVyU3RvcmFnZSk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclN0b3JhZ2U6OmlzRmxv
YXRpbmdQb2ludCk6CisrICAgICAgICAoZ2w6OkNvbG9yYnVmZmVyOjpDb2xvcmJ1ZmZlcik6Cisr
ICAgICAgICAoZ2w6OkRlcHRoU3RlbmNpbGJ1ZmZlcjo6RGVwdGhTdGVuY2lsYnVmZmVyKToKKysg
ICAgICAgICogc3JjL2xpYkdMRVN2Mi9SZW5kZXJidWZmZXIuaDoKKysgICAgICAgICogc3JjL2xp
YkdMRVN2Mi9TaGFkZXIuY3BwOgorKyAgICAgICAgKGdsOjpTaGFkZXI6OlNoYWRlcik6CisrICAg
ICAgICAoZ2w6OlNoYWRlcjo6cGFyc2VWYXJ5aW5ncyk6CisrICAgICAgICAoZ2w6OlNoYWRlcjo6
Y29tcGlsZVRvSExTTCk6CisrICAgICAgICAoZ2w6OlZlcnRleFNoYWRlcjo6cGFyc2VBdHRyaWJ1
dGVzKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9UZXh0dXJlLmNwcDoKKysgICAgICAgIChn
bDo6VGV4dHVyZTo6VGV4dHVyZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OmlzRmxvYXRpbmdQ
b2ludCk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OmlzUmVuZGVyYWJsZUZvcm1hdCk6CisrICAg
ICAgICAoZ2w6OlRleHR1cmU6OnNlbGVjdEZvcm1hdCk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6
OmxvYWRJbWFnZURhdGEpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpsb2FkQWxwaGFGbG9hdElt
YWdlRGF0YSk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OmxvYWRBbHBoYUhhbGZGbG9hdEltYWdl
RGF0YSk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OmxvYWRMdW1pbmFuY2VJbWFnZURhdGEpOgor
KyAgICAgICAgKGdsOjpUZXh0dXJlOjpsb2FkTHVtaW5hbmNlRmxvYXRJbWFnZURhdGEpOgorKyAg
ICAgICAgKGdsOjpUZXh0dXJlOjpsb2FkTHVtaW5hbmNlSGFsZkZsb2F0SW1hZ2VEYXRhKToKKysg
ICAgICAgIChnbDo6VGV4dHVyZTo6bG9hZEx1bWluYW5jZUFscGhhSW1hZ2VEYXRhKToKKysgICAg
ICAgIChnbDo6VGV4dHVyZTo6bG9hZEx1bWluYW5jZUFscGhhRmxvYXRJbWFnZURhdGEpOgorKyAg
ICAgICAgKGdsOjpUZXh0dXJlOjpsb2FkTHVtaW5hbmNlQWxwaGFIYWxmRmxvYXRJbWFnZURhdGEp
OgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpsb2FkUkdCRmxvYXRJbWFnZURhdGEpOgorKyAgICAg
ICAgKGdsOjpUZXh0dXJlOjpsb2FkUkdCSGFsZkZsb2F0SW1hZ2VEYXRhKToKKysgICAgICAgIChn
bDo6VGV4dHVyZTo6bG9hZFJHQkFGbG9hdEltYWdlRGF0YSk6CisrICAgICAgICAoZ2w6OlRleHR1
cmU6OmxvYWRSR0JBSGFsZkZsb2F0SW1hZ2VEYXRhKToKKysgICAgICAgIChnbDo6VGV4dHVyZTo6
Y3JlYXRlU3VyZmFjZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OnNldEltYWdlKToKKysgICAg
ICAgIChnbDo6VGV4dHVyZTo6c2V0Q29tcHJlc3NlZEltYWdlKToKKysgICAgICAgIChnbDo6VGV4
dHVyZTo6c3ViSW1hZ2UpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpzdWJJbWFnZUNvbXByZXNz
ZWQpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpjb3B5Tm9uUmVuZGVyYWJsZSk6CisrICAgICAg
ICAoZ2w6OlRleHR1cmU6OmdldEQzREZvcm1hdCk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6Omlz
UmVuZGVyYWJsZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6VGV4dHVyZTJEKToKKysgICAg
ICAgIChnbDo6VGV4dHVyZTJEOjp+VGV4dHVyZTJEKToKKysgICAgICAgIChnbDo6VGV4dHVyZTJE
OjpyZWRlZmluZVRleHR1cmUpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlMkQ6OnNldEltYWdlKToK
KysgICAgICAgIChnbDo6VGV4dHVyZTJEOjpzZXRDb21wcmVzc2VkSW1hZ2UpOgorKyAgICAgICAg
KGdsOjpUZXh0dXJlMkQ6OmNvcHlJbWFnZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6Y29w
eVN1YkltYWdlKToKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjppc0NvbXBsZXRlKToKKysgICAg
ICAgIChnbDo6VGV4dHVyZTJEOjpjcmVhdGVUZXh0dXJlKToKKysgICAgICAgIChnbDo6VGV4dHVy
ZTJEOjpjb252ZXJ0VG9SZW5kZXJUYXJnZXQpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlMkQ6Omdl
bmVyYXRlTWlwbWFwcyk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6Z2V0Q29sb3JidWZmZXIp
OgorKyAgICAgICAgKGdsOjpUZXh0dXJlMkQ6OmdldFJlbmRlclRhcmdldCk6CisrICAgICAgICAo
Z2w6OlRleHR1cmVDdWJlTWFwOjpUZXh0dXJlQ3ViZU1hcCk6CisrICAgICAgICAoZ2w6OlRleHR1
cmVDdWJlTWFwOjp+VGV4dHVyZUN1YmVNYXApOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1h
cDo6c3ViSW1hZ2UpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6c3ViSW1hZ2VDb21w
cmVzc2VkKToKKysgICAgICAgIChnbDo6VGV4dHVyZUN1YmVNYXA6OmlzQ29tcGxldGUpOgorKyAg
ICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6Y3JlYXRlVGV4dHVyZSk6CisrICAgICAgICAoZ2w6
OlRleHR1cmVDdWJlTWFwOjpjb252ZXJ0VG9SZW5kZXJUYXJnZXQpOgorKyAgICAgICAgKGdsOjpU
ZXh0dXJlQ3ViZU1hcDo6cmVkZWZpbmVUZXh0dXJlKToKKysgICAgICAgIChnbDo6VGV4dHVyZUN1
YmVNYXA6OmNvcHlJbWFnZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpjb3B5U3Vi
SW1hZ2UpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6Z2VuZXJhdGVNaXBtYXBzKToK
KysgICAgICAgIChnbDo6VGV4dHVyZUN1YmVNYXA6OmdldENvbG9yYnVmZmVyKToKKysgICAgICAg
IChnbDo6VGV4dHVyZUN1YmVNYXA6OmdldFJlbmRlclRhcmdldCk6CisrICAgICAgICAoZ2w6OlRl
eHR1cmU6OlRleHR1cmVDb2xvcmJ1ZmZlclByb3h5OjpUZXh0dXJlQ29sb3JidWZmZXJQcm94eSk6
CisrICAgICAgICAoZ2w6OlRleHR1cmU6OlRleHR1cmVDb2xvcmJ1ZmZlclByb3h5Ojppc0Zsb2F0
aW5nUG9pbnQpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1RleHR1cmUuaDoKKysgICAgICAg
ICogc3JjL2xpYkdMRVN2Mi9nZW9tZXRyeS9JbmRleERhdGFNYW5hZ2VyLmNwcDoKKysgICAgICAg
IChnbDo6SW5kZXhEYXRhTWFuYWdlcjo6SW5kZXhEYXRhTWFuYWdlcik6CisrICAgICAgICAoZ2w6
OkluZGV4RGF0YU1hbmFnZXI6On5JbmRleERhdGFNYW5hZ2VyKToKKysgICAgICAgIChnbDo6Y29u
dmVydEluZGljZXMpOgorKyAgICAgICAgKGdsOjpjb21wdXRlUmFuZ2UpOgorKyAgICAgICAgKGds
OjpJbmRleERhdGFNYW5hZ2VyOjpwcmVwYXJlSW5kZXhEYXRhKToKKysgICAgICAgIChnbDo6SW5k
ZXhEYXRhTWFuYWdlcjo6aW5kZXhTaXplKToKKysgICAgICAgIChnbDo6SW5kZXhEYXRhTWFuYWdl
cjo6dHlwZVNpemUpOgorKyAgICAgICAgKGdsOjpJbmRleEJ1ZmZlcjo6SW5kZXhCdWZmZXIpOgor
KyAgICAgICAgKGdsOjpJbmRleEJ1ZmZlcjo6fkluZGV4QnVmZmVyKToKKysgICAgICAgIChnbDo6
SW5kZXhCdWZmZXI6OmdldEJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkluZGV4QnVmZmVyOjp1bm1h
cCk6CisrICAgICAgICAoZ2w6OlN0cmVhbWluZ0luZGV4QnVmZmVyOjpTdHJlYW1pbmdJbmRleEJ1
ZmZlcik6CisrICAgICAgICAoZ2w6OlN0cmVhbWluZ0luZGV4QnVmZmVyOjp+U3RyZWFtaW5nSW5k
ZXhCdWZmZXIpOgorKyAgICAgICAgKGdsOjpTdHJlYW1pbmdJbmRleEJ1ZmZlcjo6bWFwKToKKysg
ICAgICAgIChnbDo6U3RyZWFtaW5nSW5kZXhCdWZmZXI6OnJlc2VydmVTcGFjZSk6CisrICAgICAg
ICAoZ2w6OlN0YXRpY0luZGV4QnVmZmVyOjpTdGF0aWNJbmRleEJ1ZmZlcik6CisrICAgICAgICAo
Z2w6OlN0YXRpY0luZGV4QnVmZmVyOjp+U3RhdGljSW5kZXhCdWZmZXIpOgorKyAgICAgICAgKGds
OjpTdGF0aWNJbmRleEJ1ZmZlcjo6bWFwKToKKysgICAgICAgIChnbDo6U3RhdGljSW5kZXhCdWZm
ZXI6OnJlc2VydmVTcGFjZSk6CisrICAgICAgICAoZ2w6OlN0YXRpY0luZGV4QnVmZmVyOjpsb29r
dXBUeXBlKToKKysgICAgICAgIChnbDo6U3RhdGljSW5kZXhCdWZmZXI6Omxvb2t1cFJhbmdlKToK
KysgICAgICAgIChnbDo6U3RhdGljSW5kZXhCdWZmZXI6OmFkZFJhbmdlKToKKysgICAgICAgICog
c3JjL2xpYkdMRVN2Mi9nZW9tZXRyeS9JbmRleERhdGFNYW5hZ2VyLmg6CisrICAgICAgICAoZ2w6
OkluZGV4QnVmZmVyOjpzaXplKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9nZW9tZXRyeS9W
ZXJ0ZXhEYXRhTWFuYWdlci5jcHA6CisrICAgICAgICAoZ2w6OlZlcnRleERhdGFNYW5hZ2VyOjpW
ZXJ0ZXhEYXRhTWFuYWdlcik6CisrICAgICAgICAoZ2w6OlZlcnRleERhdGFNYW5hZ2VyOjp+VmVy
dGV4RGF0YU1hbmFnZXIpOgorKyAgICAgICAgKGdsOjpWZXJ0ZXhEYXRhTWFuYWdlcjo6d3JpdGVB
dHRyaWJ1dGVEYXRhKToKKysgICAgICAgIChnbDo6VmVydGV4RGF0YU1hbmFnZXI6OnByZXBhcmVW
ZXJ0ZXhEYXRhKToKKysgICAgICAgIChnbDo6VmVydGV4RGF0YU1hbmFnZXI6OnNwYWNlUmVxdWly
ZWQpOgorKyAgICAgICAgKGdsOjpWZXJ0ZXhEYXRhTWFuYWdlcjo6Y2hlY2tWZXJ0ZXhDYXBzKToK
KysgICAgICAgIChnbDo6VmVydGV4RGF0YU1hbmFnZXI6OnR5cGVJbmRleCk6CisrICAgICAgICAo
Z2w6OlZlcnRleERhdGFNYW5hZ2VyOjpzZXR1cEF0dHJpYnV0ZXMpOgorKyAgICAgICAgKGdsOjpW
ZXJ0ZXhCdWZmZXI6OlZlcnRleEJ1ZmZlcik6CisrICAgICAgICAoZ2w6OlZlcnRleEJ1ZmZlcjo6
flZlcnRleEJ1ZmZlcik6CisrICAgICAgICAoZ2w6OlZlcnRleEJ1ZmZlcjo6dW5tYXApOgorKyAg
ICAgICAgKGdsOjpWZXJ0ZXhCdWZmZXI6OmdldEJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkNvbnN0
YW50VmVydGV4QnVmZmVyOjpDb25zdGFudFZlcnRleEJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkNv
bnN0YW50VmVydGV4QnVmZmVyOjp+Q29uc3RhbnRWZXJ0ZXhCdWZmZXIpOgorKyAgICAgICAgKGds
OjpBcnJheVZlcnRleEJ1ZmZlcjo6QXJyYXlWZXJ0ZXhCdWZmZXIpOgorKyAgICAgICAgKGdsOjpB
cnJheVZlcnRleEJ1ZmZlcjo6fkFycmF5VmVydGV4QnVmZmVyKToKKysgICAgICAgIChnbDo6QXJy
YXlWZXJ0ZXhCdWZmZXI6OmFkZFJlcXVpcmVkU3BhY2UpOgorKyAgICAgICAgKGdsOjpBcnJheVZl
cnRleEJ1ZmZlcjo6YWRkUmVxdWlyZWRTcGFjZUZvcik6CisrICAgICAgICAoZ2w6OlN0cmVhbWlu
Z1ZlcnRleEJ1ZmZlcjo6U3RyZWFtaW5nVmVydGV4QnVmZmVyKToKKysgICAgICAgIChnbDo6U3Ry
ZWFtaW5nVmVydGV4QnVmZmVyOjp+U3RyZWFtaW5nVmVydGV4QnVmZmVyKToKKysgICAgICAgIChn
bDo6U3RyZWFtaW5nVmVydGV4QnVmZmVyOjptYXApOgorKyAgICAgICAgKGdsOjpTdHJlYW1pbmdW
ZXJ0ZXhCdWZmZXI6OnJlc2VydmVSZXF1aXJlZFNwYWNlKToKKysgICAgICAgIChnbDo6U3RhdGlj
VmVydGV4QnVmZmVyOjpTdGF0aWNWZXJ0ZXhCdWZmZXIpOgorKyAgICAgICAgKGdsOjpTdGF0aWNW
ZXJ0ZXhCdWZmZXI6On5TdGF0aWNWZXJ0ZXhCdWZmZXIpOgorKyAgICAgICAgKGdsOjpTdGF0aWNW
ZXJ0ZXhCdWZmZXI6Om1hcCk6CisrICAgICAgICAoZ2w6OlN0YXRpY1ZlcnRleEJ1ZmZlcjo6cmVz
ZXJ2ZVJlcXVpcmVkU3BhY2UpOgorKyAgICAgICAgKGdsOjpTdGF0aWNWZXJ0ZXhCdWZmZXI6Omxv
b2t1cEF0dHJpYnV0ZSk6CisrICAgICAgICAoZ2w6OlZlcnRleERhdGFNYW5hZ2VyOjpmb3JtYXRD
b252ZXJ0ZXIpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL2dlb21ldHJ5L1ZlcnRleERhdGFN
YW5hZ2VyLmg6CisrICAgICAgICAoZ2w6OkFycmF5VmVydGV4QnVmZmVyOjpzaXplKToKKysgICAg
ICAgIChnbDo6VmVydGV4RGF0YU1hbmFnZXI6OmRpcnR5Q3VycmVudFZhbHVlKToKKysgICAgICAg
ICogc3JjL2xpYkdMRVN2Mi9nZW9tZXRyeS9iYWNrZW5kLmNwcDogUmVtb3ZlZC4KKysgICAgICAg
ICogc3JjL2xpYkdMRVN2Mi9nZW9tZXRyeS9iYWNrZW5kLmg6IFJlbW92ZWQuCisrICAgICAgICAq
IHNyYy9saWJHTEVTdjIvZ2VvbWV0cnkvZHg5LmNwcDogUmVtb3ZlZC4KKysgICAgICAgICogc3Jj
L2xpYkdMRVN2Mi9nZW9tZXRyeS9keDkuaDogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xpYkdM
RVN2Mi9saWJHTEVTdjIuY3BwOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL2xpYkdMRVN2Mi5k
ZWY6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvbGliR0xFU3YyLnZjcHJvajoKKysgICAgICAg
ICogc3JjL2xpYkdMRVN2Mi91dGlsaXRpZXMuY3BwOgorKyAgICAgICAgKGdsOjpVbmlmb3JtQ29t
cG9uZW50Q291bnQpOgorKyAgICAgICAgKGdsOjpVbmlmb3JtQ29tcG9uZW50VHlwZSk6CisrICAg
ICAgICAoZ2w6OkNvbXB1dGVQaXhlbFNpemUpOgorKyAgICAgICAgKGdsOjpDaGVja1RleHR1cmVG
b3JtYXRUeXBlKToKKysgICAgICAgIChnbDo6SXNDb2xvclJlbmRlcmFibGUpOgorKyAgICAgICAg
KGdsOjpJc0RlcHRoUmVuZGVyYWJsZSk6CisrICAgICAgICAoZ2w6OklzU3RlbmNpbFJlbmRlcmFi
bGUpOgorKyAgICAgICAgKGVzMmR4OjpHZXRBbHBoYVNpemUpOgorKyAgICAgICAgKGVzMmR4OjpH
ZXRSZWRTaXplKToKKysgICAgICAgIChlczJkeDo6R2V0R3JlZW5TaXplKToKKysgICAgICAgIChl
czJkeDo6R2V0Qmx1ZVNpemUpOgorKyAgICAgICAgKGVzMmR4OjpHZXREZXB0aFNpemUpOgorKyAg
ICAgICAgKGVzMmR4OjpDb252ZXJ0UHJpbWl0aXZlVHlwZSk6CisrICAgICAgICAoZHgyZXM6OkNv
bnZlcnRCYWNrQnVmZmVyRm9ybWF0KToKKysgICAgICAgIChkeDJlczo6Q29udmVydERlcHRoU3Rl
bmNpbEZvcm1hdCk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvdXRpbGl0aWVzLmg6CisrCisr
MjAxMS0wMS0xNyAgRGFuIEJlcm5zdGVpbiAgPG1pdHpAYXBwbGUuY29tPgorKworKyAgICAgICAg
UnViYmVyLXN0YW1wZWQgYnkgTWFyayBSb3dlLgorKworKyAgICAgICAgVXBkYXRlIHhjb2RlcHJv
aiBzdm46aWdub3JlIHRvIGluY2x1ZGUgeGN1c2VyZGF0YS4KKysKKysgICAgICAgICogQU5HTEUu
eGNvZGVwcm9qOiBNb2RpZmllZCBwcm9wZXJ0eSBzdm46aWdub3JlLgorKyAgICAgICAgKiBzcmMv
YnVpbGRfYW5nbGUueGNvZGVwcm9qOiBNb2RpZmllZCBwcm9wZXJ0eSBzdm46aWdub3JlLgorKwor
KzIwMTAtMTItMDEgIFN0ZXZlIEZhbGtlbmJ1cmcgIDxzZmFsa2VuQGFwcGxlLmNvbT4KKysKKysg
ICAgICAgIFJldmlld2VkIGJ5IEFkYW0gUm9iZW4uCisrCisrICAgICAgICB2Y3Byb2ogY2hhbmdl
cyBjYW4ndCBiZSBhcHBsaWVkIGNsZWFubHkgYnkgdGhlIFdpbmRvd3MgRVdTIGJvdAorKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUwMzI4CisrCisrICAg
ICAgICAqIHNyYy9saWJFR0wvbGliRUdMLnZjcHJvajogQWRkZWQgcHJvcGVydHkgc3ZuOmVvbC1z
dHlsZS4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9saWJHTEVTdjIudmNwcm9qOiBBZGRlZCBw
cm9wZXJ0eSBzdm46ZW9sLXN0eWxlLgorKworKzIwMTAtMTEtMDMgIERhcmluIEFkbGVyICA8ZGFy
aW5AYXBwbGUuY29tPgorKworKyAgICAgICAgVXBkYXRlZCBYY29kZSBwcm9qZWN0cyBieSBvcGVu
aW5nIHRoZW0gd2l0aCBYY29kZSAzLjIuNC4KKysgICAgICAgIFVwZGF0ZWQgc3ZuOmlnbm9yZSBm
b3IgWGNvZGUgcHJvamVjdHMuCisrCisrICAgICAgICAqIEFOR0xFLnhjb2RlcHJvajogQWRkZWQg
cHJvcGVydHkgc3ZuOmlnbm9yZS4KKysgICAgICAgICogQU5HTEUueGNvZGVwcm9qL3Byb2plY3Qu
cGJ4cHJvajogVXBkYXRlZCB3aXRoIFhjb2RlIDMuMi40LgorKyAgICAgICAgKiBzcmMvYnVpbGRf
YW5nbGUueGNvZGVwcm9qOiBBZGRlZCBwcm9wZXJ0eSBzdm46aWdub3JlLgorKyAgICAgICAgKiBz
cmMvYnVpbGRfYW5nbGUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajogVXBkYXRlZCB3aXRoIFhj
b2RlIDMuMi40LgorKworKzIwMTAtMDktMDEgIFpoZW55YW8gTW8gIDx6bW9AZ29vZ2xlLmNvbT4K
KysKKysgICAgICAgIFJldmlld2VkIGJ5IEtlbm5ldGggUnVzc2VsbC4KKysKKysgICAgICAgIFJv
bGwgQU5HTEUgdW5kZXIgd2Via2l0IHRvIHI0MDIKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD00NTAwNAorKworKyAgICAgICAgKiBBTkdMRS54Y29kZXBy
b2ovcHJvamVjdC5wYnhwcm9qOgorKyAgICAgICAgKiBpbmNsdWRlL0dMRVMyL2dsMmV4dC5oOgor
KyAgICAgICAgKiBpbmNsdWRlL0dMU0xBTkcvUmVzb3VyY2VMaW1pdHMuaDogUmVtb3ZlZC4KKysg
ICAgICAgICogaW5jbHVkZS9HTFNMQU5HL1NoYWRlckxhbmcuaDoKKysgICAgICAgICogc3JjL2Nv
bXBpbGVyL0Jhc2VUeXBlcy5oOgorKyAgICAgICAgKGdldFByZWNpc2lvblN0cmluZyk6CisrICAg
ICAgICAoZ2V0QmFzaWNTdHJpbmcpOgorKyAgICAgICAgKElzU2FtcGxlcik6CisrICAgICAgICAo
Z2V0UXVhbGlmaWVyU3RyaW5nKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL0luaXRpYWxpemUu
Y3BwOgorKyAgICAgICAgKEJ1aWx0SW5Db25zdGFudHMpOgorKyAgICAgICAgKElkZW50aWZ5QnVp
bHRJbnMpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvSW5pdGlhbGl6ZS5oOgorKyAgICAgICAg
KiBzcmMvY29tcGlsZXIvSW5pdGlhbGl6ZURsbC5jcHA6CisrICAgICAgICAoSW5pdFByb2Nlc3Mp
OgorKyAgICAgICAgKERldGFjaFByb2Nlc3MpOgorKyAgICAgICAgKEluaXRUaHJlYWQpOgorKyAg
ICAgICAgKERldGFjaFRocmVhZCk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9Jbml0aWFsaXpl
RGxsLmg6CisrICAgICAgICAqIHNyYy9jb21waWxlci9Jbml0aWFsaXplUGFyc2VDb250ZXh0Lmg6
CisrICAgICAgICAqIHNyYy9jb21waWxlci9JbnRlcm1lZGlhdGUuY3BwOgorKyAgICAgICAgKEdl
dEhpZ2hlclByZWNpc2lvbik6CisrICAgICAgICAoVEludGVybWVkaWF0ZTo6YWRkQmluYXJ5TWF0
aCk6CisrICAgICAgICAoVEludGVybWVkaWF0ZTo6c2V0QWdncmVnYXRlT3BlcmF0b3IpOgorKyAg
ICAgICAgKFRJbnRlcm1lZGlhdGU6OmFkZENvbW1hKToKKysgICAgICAgIChUSW50ZXJtZWRpYXRl
Ojpwb3N0UHJvY2Vzcyk6CisrICAgICAgICAoVEludGVybUJpbmFyeTo6cHJvbW90ZSk6CisrICAg
ICAgICAoQ29tcGFyZVN0cnVjdCk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9PdXRwdXRHTFNM
LmNwcDoKKysgICAgICAgIChUT3V0cHV0R0xTTDo6d3JpdGVGdW5jdGlvblBhcmFtZXRlcnMpOgor
KyAgICAgICAgKFRPdXRwdXRHTFNMOjp2aXNpdFVuYXJ5KToKKysgICAgICAgIChUT3V0cHV0R0xT
TDo6dmlzaXRCcmFuY2gpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvT3V0cHV0SExTTC5jcHA6
CisrICAgICAgICAoc2g6Ok91dHB1dEhMU0w6OmhlYWRlcik6CisrICAgICAgICAoc2g6Ok91dHB1
dEhMU0w6OnZpc2l0QmluYXJ5KToKKysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6dmlzaXRBZ2dy
ZWdhdGUpOgorKyAgICAgICAgKHNoOjpPdXRwdXRITFNMOjpoYW5kbGVFeGNlc3NpdmVMb29wKToK
KysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6YWRkQ29uc3RydWN0b3IpOgorKyAgICAgICAgKiBz
cmMvY29tcGlsZXIvUGFyc2VIZWxwZXIuY3BwOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OmNv
bnN0cnVjdG9yRXJyb3JDaGVjayk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6c2FtcGxlckVy
cm9yQ2hlY2spOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OnBhcmFtRXJyb3JDaGVjayk6Cisr
ICAgICAgICAoVFBhcnNlQ29udGV4dDo6ZmluZEZ1bmN0aW9uKToKKysgICAgICAgIChUUGFyc2VD
b250ZXh0OjpleGVjdXRlSW5pdGlhbGl6ZXIpOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OmFk
ZENvbnN0cnVjdG9yKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0OjphZGRDb25zdFN0cnVjdCk6
CisrICAgICAgICAoRnJlZVBhcnNlQ29udGV4dEluZGV4KToKKysgICAgICAgIChHZXRHbG9iYWxQ
YXJzZUNvbnRleHQpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvUG9vbEFsbG9jLmg6CisrICAg
ICAgICAoVFBvb2xBbGxvY2F0b3I6OnRIZWFkZXI6OnRIZWFkZXIpOgorKyAgICAgICAgKHBvb2xf
YWxsb2NhdG9yOjphbGxvY2F0ZSk6CisrICAgICAgICAocG9vbF9hbGxvY2F0b3I6OmRlYWxsb2Nh
dGUpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvU2hhZGVyTGFuZy5jcHA6CisrICAgICAgICAo
U2hJbml0aWFsaXplKToKKysgICAgICAgIChTaEZpbmFsaXplKToKKysgICAgICAgIChTaEluaXRC
dWlsdEluUmVzb3VyY2UpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvU3ltYm9sVGFibGUuY3Bw
OgorKyAgICAgICAgKFRUeXBlOjpnZXRTdHJ1Y3RTaXplKToKKysgICAgICAgICogc3JjL2NvbXBp
bGVyL1N5bWJvbFRhYmxlLmg6CisrICAgICAgICAoVFZhcmlhYmxlOjpzZXRRdWFsaWZpZXIpOgor
KyAgICAgICAgKiBzcmMvY29tcGlsZXIvVHlwZXMuaDoKKysgICAgICAgIChUVHlwZTo6VFR5cGUp
OgorKyAgICAgICAgKFRUeXBlOjpnZXRCYXNpY1R5cGUpOgorKyAgICAgICAgKFRUeXBlOjpzZXRC
YXNpY1R5cGUpOgorKyAgICAgICAgKFRUeXBlOjpnZXRQcmVjaXNpb24pOgorKyAgICAgICAgKFRU
eXBlOjpzZXRQcmVjaXNpb24pOgorKyAgICAgICAgKFRUeXBlOjpnZXRRdWFsaWZpZXIpOgorKyAg
ICAgICAgKFRUeXBlOjpzZXRRdWFsaWZpZXIpOgorKyAgICAgICAgKFRUeXBlOjpnZXROb21pbmFs
U2l6ZSk6CisrICAgICAgICAoVFR5cGU6OnNldE5vbWluYWxTaXplKToKKysgICAgICAgIChUVHlw
ZTo6aXNNYXRyaXgpOgorKyAgICAgICAgKFRUeXBlOjpzZXRNYXRyaXgpOgorKyAgICAgICAgKFRU
eXBlOjppc0FycmF5KToKKysgICAgICAgIChUVHlwZTo6Z2V0QXJyYXlTaXplKToKKysgICAgICAg
IChUVHlwZTo6c2V0QXJyYXlTaXplKToKKysgICAgICAgIChUVHlwZTo6Z2V0TWF4QXJyYXlTaXpl
KToKKysgICAgICAgIChUVHlwZTo6c2V0TWF4QXJyYXlTaXplKToKKysgICAgICAgIChUVHlwZTo6
Y2xlYXJBcnJheW5lc3MpOgorKyAgICAgICAgKFRUeXBlOjpzZXRBcnJheUluZm9ybWF0aW9uVHlw
ZSk6CisrICAgICAgICAoVFR5cGU6OmdldEFycmF5SW5mb3JtYXRpb25UeXBlKToKKysgICAgICAg
IChUVHlwZTo6aXNWZWN0b3IpOgorKyAgICAgICAgKFRUeXBlOjppc1NjYWxhcik6CisrICAgICAg
ICAoVFR5cGU6OnNldFN0cnVjdCk6CisrICAgICAgICAoVFR5cGU6OmdldFR5cGVOYW1lKToKKysg
ICAgICAgIChUVHlwZTo6c2V0VHlwZU5hbWUpOgorKyAgICAgICAgKFRUeXBlOjppc0ZpZWxkKToK
KysgICAgICAgIChUVHlwZTo6Z2V0RmllbGROYW1lKToKKysgICAgICAgIChUVHlwZTo6c2V0Rmll
bGROYW1lKToKKysgICAgICAgIChUVHlwZTo6Z2V0QmFzaWNTdHJpbmcpOgorKyAgICAgICAgKFRU
eXBlOjpnZXRQcmVjaXNpb25TdHJpbmcpOgorKyAgICAgICAgKFRUeXBlOjpnZXRRdWFsaWZpZXJT
dHJpbmcpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvZ2xzbGFuZy5sOgorKyAgICAgICAgKiBz
cmMvY29tcGlsZXIvZ2xzbGFuZy55OgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvaW50ZXJtZWRp
YXRlLmg6CisrICAgICAgICAoVEludGVybU5vZGU6OmdldExpbmUpOgorKyAgICAgICAgKFRJbnRl
cm1Ob2RlOjpzZXRMaW5lKToKKysgICAgICAgIChUSW50ZXJtVHlwZWQ6OmdldEFzVHlwZWQpOgor
KyAgICAgICAgKFRJbnRlcm1UeXBlZDo6c2V0VHlwZSk6CisrICAgICAgICAoVEludGVybVR5cGVk
OjpnZXRUeXBlKToKKysgICAgICAgIChUSW50ZXJtVHlwZWQ6OmdldFR5cGVQb2ludGVyKToKKysg
ICAgICAgIChUSW50ZXJtVHlwZWQ6OmdldEJhc2ljVHlwZSk6CisrICAgICAgICAoVEludGVybVR5
cGVkOjpnZXRRdWFsaWZpZXIpOgorKyAgICAgICAgKFRJbnRlcm1UeXBlZDo6Z2V0UHJlY2lzaW9u
KToKKysgICAgICAgIChUSW50ZXJtVHlwZWQ6OmdldE5vbWluYWxTaXplKToKKysgICAgICAgIChU
SW50ZXJtVHlwZWQ6OmlzTWF0cml4KToKKysgICAgICAgIChUSW50ZXJtVHlwZWQ6OmlzQXJyYXkp
OgorKyAgICAgICAgKFRJbnRlcm1UeXBlZDo6aXNWZWN0b3IpOgorKyAgICAgICAgKFRJbnRlcm1U
eXBlZDo6aXNTY2FsYXIpOgorKyAgICAgICAgKFRJbnRlcm1UeXBlZDo6Z2V0QmFzaWNTdHJpbmcp
OgorKyAgICAgICAgKFRJbnRlcm1UeXBlZDo6Z2V0UXVhbGlmaWVyU3RyaW5nKToKKysgICAgICAg
IChUSW50ZXJtU3ltYm9sOjpnZXRJZCk6CisrICAgICAgICAoVEludGVybVN5bWJvbDo6Z2V0U3lt
Ym9sKToKKysgICAgICAgIChUSW50ZXJtT3BlcmF0b3I6OnNldE9wKToKKysgICAgICAgIChUSW50
ZXJtQmluYXJ5OjpzZXRMZWZ0KToKKysgICAgICAgIChUSW50ZXJtQmluYXJ5OjpzZXRSaWdodCk6
CisrICAgICAgICAoVEludGVybUJpbmFyeTo6Z2V0TGVmdCk6CisrICAgICAgICAoVEludGVybUJp
bmFyeTo6Z2V0UmlnaHQpOgorKyAgICAgICAgKFRJbnRlcm1VbmFyeTo6c2V0T3BlcmFuZCk6Cisr
ICAgICAgICAoVEludGVybVVuYXJ5OjpnZXRPcGVyYW5kKToKKysgICAgICAgIChUSW50ZXJtQWdn
cmVnYXRlOjpnZXRBc0FnZ3JlZ2F0ZSk6CisrICAgICAgICAoVEludGVybUFnZ3JlZ2F0ZTo6Z2V0
U2VxdWVuY2UpOgorKyAgICAgICAgKFRJbnRlcm1BZ2dyZWdhdGU6OnNldE5hbWUpOgorKyAgICAg
ICAgKFRJbnRlcm1BZ2dyZWdhdGU6OmdldE5hbWUpOgorKyAgICAgICAgKFRJbnRlcm1BZ2dyZWdh
dGU6OnNldFVzZXJEZWZpbmVkKToKKysgICAgICAgIChUSW50ZXJtQWdncmVnYXRlOjppc1VzZXJE
ZWZpbmVkKToKKysgICAgICAgIChUSW50ZXJtQWdncmVnYXRlOjpnZXRRdWFsaWZpZXIpOgorKyAg
ICAgICAgKFRJbnRlcm1BZ2dyZWdhdGU6OnNldE9wdGltaXplKToKKysgICAgICAgIChUSW50ZXJt
QWdncmVnYXRlOjpzZXREZWJ1Zyk6CisrICAgICAgICAoVEludGVybVNlbGVjdGlvbjo6Z2V0Q29u
ZGl0aW9uKToKKysgICAgICAgIChUSW50ZXJtU2VsZWN0aW9uOjpnZXRUcnVlQmxvY2spOgorKyAg
ICAgICAgKFRJbnRlcm1TZWxlY3Rpb246OmdldEZhbHNlQmxvY2spOgorKyAgICAgICAgKFRJbnRl
cm1TZWxlY3Rpb246OmdldEFzU2VsZWN0aW9uTm9kZSk6CisrICAgICAgICAqIHNyYy9jb21waWxl
ci9wYXJzZUNvbnN0LmNwcDoKKysgICAgICAgIChUQ29uc3RUcmF2ZXJzZXI6OlRDb25zdFRyYXZl
cnNlcik6CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvYXRvbS5jOgorKyAg
ICAgICAgKEluaXRBdG9tVGFibGUpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vz
c29yL2F0b20uaDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9jb21waWxl
Lmg6CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvY3BwLmM6CisrICAgICAg
ICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvY3BwLmg6CisrICAgICAgICAqIHNyYy9jb21w
aWxlci9wcmVwcm9jZXNzb3IvY3Bwc3RydWN0LmM6CisrICAgICAgICAqIHNyYy9jb21waWxlci9w
cmVwcm9jZXNzb3IvbWVtb3J5LmM6CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNz
b3IvbWVtb3J5Lmg6CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvcGFyc2Vy
Lmg6CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvcHJlcHJvY2Vzcy5oOgor
KyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL3NjYW5uZXIuYzoKKysgICAgICAg
ICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9zY2FubmVyLmg6CisrICAgICAgICAqIHNyYy9j
b21waWxlci9wcmVwcm9jZXNzb3Ivc2xnbG9iYWxzLmg6CisrICAgICAgICAqIHNyYy9jb21waWxl
ci9wcmVwcm9jZXNzb3Ivc3ltYm9scy5jOgorKyAgICAgICAgKE5ld1N5bWJvbCk6CisrICAgICAg
ICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3Ivc3ltYm9scy5oOgorKyAgICAgICAgKiBzcmMv
Y29tcGlsZXIvcHJlcHJvY2Vzc29yL3Rva2Vucy5jOgorKyAgICAgICAgKFJlY29yZFRva2VuKToK
KysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci90b2tlbnMuaDoKKysgICAgICAg
ICogc3JjL2xpYkVHTC9EaXNwbGF5LmNwcDoKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OkRpc3Bs
YXkpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6aW5pdGlhbGl6ZSk6CisrICAgICAgICAoZWds
OjpEaXNwbGF5Ojp0ZXJtaW5hdGUpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6Y3JlYXRlRGV2
aWNlKToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OmNyZWF0ZVdpbmRvd1N1cmZhY2UpOgorKyAg
ICAgICAgKGVnbDo6RGlzcGxheTo6Y3JlYXRlQ29udGV4dCk6CisrICAgICAgICAoZWdsOjpEaXNw
bGF5OjpnZXRNdWx0aVNhbXBsZVN1cHBvcnQpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6Z2V0
Q29tcHJlc3NlZFRleHR1cmVTdXBwb3J0KToKKysgICAgICAgICogc3JjL2xpYkVHTC9EaXNwbGF5
Lmg6CisrICAgICAgICAqIHNyYy9saWJFR0wvU3VyZmFjZS5jcHA6CisrICAgICAgICAoZWdsOjpT
dXJmYWNlOjpTdXJmYWNlKToKKysgICAgICAgIChlZ2w6OlN1cmZhY2U6OnJlc2V0U3dhcENoYWlu
KToKKysgICAgICAgIChlZ2w6OlN1cmZhY2U6OmdldFdpbmRvd0hhbmRsZSk6CisrICAgICAgICAo
ZWdsOjpTdXJmYWNlOjp3cml0ZVJlY29yZGFibGVGbGlwU3RhdGUpOgorKyAgICAgICAgKGVnbDo6
U3VyZmFjZTo6YXBwbHlGbGlwU3RhdGUpOgorKyAgICAgICAgKGVnbDo6U3VyZmFjZTo6cmVsZWFz
ZVJlY29yZGVkU3RhdGUpOgorKyAgICAgICAgKGVnbDo6U3VyZmFjZTo6Y2hlY2tGb3JXaW5kb3dS
ZXNpemUpOgorKyAgICAgICAgKGVnbDo6U3VyZmFjZTo6c3dhcCk6CisrICAgICAgICAqIHNyYy9s
aWJFR0wvU3VyZmFjZS5oOgorKyAgICAgICAgKiBzcmMvbGliRUdML2xpYkVHTC5jcHA6CisrICAg
ICAgICAqIHNyYy9saWJFR0wvbGliRUdMLnZjcHJvajoKKysgICAgICAgICogc3JjL2xpYkdMRVN2
Mi9CbGl0LmNwcDoKKysgICAgICAgIChnbDo6QmxpdDo6c2V0VmVydGV4U2hhZGVyKToKKysgICAg
ICAgIChnbDo6QmxpdDo6c2V0UGl4ZWxTaGFkZXIpOgorKyAgICAgICAgKGdsOjpCbGl0OjpzZXRG
b3JtYXRDb252ZXJ0U2hhZGVycyk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvQnVmZmVyLmNw
cDoKKysgICAgICAgIChnbDo6QnVmZmVyOjpCdWZmZXIpOgorKyAgICAgICAgKiBzcmMvbGliR0xF
U3YyL0J1ZmZlci5oOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL0NvbnRleHQuY3BwOgorKyAg
ICAgICAgKGdsOjpDb250ZXh0OjpDb250ZXh0KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6fkNv
bnRleHQpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjptYWtlQ3VycmVudCk6CisrICAgICAgICAo
Z2w6OkNvbnRleHQ6Om1hcmtBbGxTdGF0ZURpcnR5KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6
Z2V0UmVhZEZyYW1lYnVmZmVySGFuZGxlKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0RHJh
d0ZyYW1lYnVmZmVySGFuZGxlKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0UmVuZGVyYnVm
ZmVySGFuZGxlKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0QXJyYXlCdWZmZXJIYW5kbGUp
OgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzZXRWZXJ0ZXhBdHRyaWJTdGF0ZSk6CisrICAgICAg
ICAoZ2w6OkNvbnRleHQ6OmNyZWF0ZUJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmNy
ZWF0ZVByb2dyYW0pOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpjcmVhdGVTaGFkZXIpOgorKyAg
ICAgICAgKGdsOjpDb250ZXh0OjpjcmVhdGVUZXh0dXJlKToKKysgICAgICAgIChnbDo6Q29udGV4
dDo6Y3JlYXRlUmVuZGVyYnVmZmVyKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6ZGVsZXRlQnVm
ZmVyKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6ZGVsZXRlU2hhZGVyKToKKysgICAgICAgIChn
bDo6Q29udGV4dDo6ZGVsZXRlUHJvZ3JhbSk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmRlbGV0
ZVRleHR1cmUpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpkZWxldGVSZW5kZXJidWZmZXIpOgor
KyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRCdWZmZXIpOgorKyAgICAgICAgKGdsOjpDb250ZXh0
OjpnZXRTaGFkZXIpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRQcm9ncmFtKToKKysgICAg
ICAgIChnbDo6Q29udGV4dDo6Z2V0VGV4dHVyZSk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6Omdl
dFJlbmRlcmJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmdldFJlYWRGcmFtZWJ1ZmZl
cik6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmdldERyYXdGcmFtZWJ1ZmZlcik6CisrICAgICAg
ICAoZ2w6OkNvbnRleHQ6OmJpbmRBcnJheUJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6
OmJpbmRFbGVtZW50QXJyYXlCdWZmZXIpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpiaW5kVGV4
dHVyZTJEKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6YmluZFRleHR1cmVDdWJlTWFwKToKKysg
ICAgICAgIChnbDo6Q29udGV4dDo6YmluZFJlYWRGcmFtZWJ1ZmZlcik6CisrICAgICAgICAoZ2w6
OkNvbnRleHQ6OmJpbmREcmF3RnJhbWVidWZmZXIpOgorKyAgICAgICAgKGdsOjpDb250ZXh0Ojpi
aW5kUmVuZGVyYnVmZmVyKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6dXNlUHJvZ3JhbSk6Cisr
ICAgICAgICAoZ2w6OkNvbnRleHQ6OnNldEZyYW1lYnVmZmVyWmVybyk6CisrICAgICAgICAoZ2w6
OkNvbnRleHQ6OnNldFJlbmRlcmJ1ZmZlclN0b3JhZ2UpOgorKyAgICAgICAgKGdsOjpDb250ZXh0
OjpnZXRGcmFtZWJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmdldEFycmF5QnVmZmVy
KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0RWxlbWVudEFycmF5QnVmZmVyKToKKysgICAg
ICAgIChnbDo6Q29udGV4dDo6Z2V0Q3VycmVudFByb2dyYW0pOgorKyAgICAgICAgKGdsOjpDb250
ZXh0OjpnZXRUZXh0dXJlMkQpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRUZXh0dXJlQ3Vi
ZU1hcCk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmdldFNhbXBsZXJUZXh0dXJlKToKKysgICAg
ICAgIChnbDo6Q29udGV4dDo6Z2V0RmxvYXR2KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0
SW50ZWdlcnYpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRRdWVyeVBhcmFtZXRlckluZm8p
OgorKyAgICAgICAgKGdsOjpDb250ZXh0OjphcHBseVJlbmRlclRhcmdldCk6CisrICAgICAgICAo
Z2w6OkNvbnRleHQ6OmFwcGx5U3RhdGUpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjphcHBseUlu
ZGV4QnVmZmVyKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6cmVhZFBpeGVscyk6CisrICAgICAg
ICAoZ2w6OkNvbnRleHQ6OmNsZWFyKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6ZmluaXNoKToK
KysgICAgICAgIChnbDo6Q29udGV4dDo6Zmx1c2gpOgorKyAgICAgICAgKGdsOjpDb250ZXh0Ojpz
dXBwb3J0c1NoYWRlck1vZGVsMyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmdldE1heFN1cHBv
cnRlZFNhbXBsZXMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXROZWFyZXN0U3VwcG9ydGVk
U2FtcGxlcyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnN1cHBvcnRzQ29tcHJlc3NlZFRleHR1
cmVzKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6ZGV0YWNoQnVmZmVyKToKKysgICAgICAgIChn
bDo6Q29udGV4dDo6ZGV0YWNoVGV4dHVyZSk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmRldGFj
aEZyYW1lYnVmZmVyKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6ZGV0YWNoUmVuZGVyYnVmZmVy
KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0SW5jb21wbGV0ZVRleHR1cmUpOgorKyAgICAg
ICAgKGdsOjpDb250ZXh0Ojppbml0RXh0ZW5zaW9uU3RyaW5nKToKKysgICAgICAgIChnbDo6Q29u
dGV4dDo6YmxpdEZyYW1lYnVmZmVyKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9Db250ZXh0
Lmg6CisrICAgICAgICAoZ2w6OkF0dHJpYnV0ZVN0YXRlOjpBdHRyaWJ1dGVTdGF0ZSk6CisrICAg
ICAgICAqIHNyYy9saWJHTEVTdjIvRnJhbWVidWZmZXIuY3BwOgorKyAgICAgICAgKGdsOjpGcmFt
ZWJ1ZmZlcjo6RnJhbWVidWZmZXIpOgorKyAgICAgICAgKGdsOjpGcmFtZWJ1ZmZlcjo6fkZyYW1l
YnVmZmVyKToKKysgICAgICAgIChnbDo6RnJhbWVidWZmZXI6Omxvb2t1cFJlbmRlcmJ1ZmZlcik6
CisrICAgICAgICAoZ2w6OkZyYW1lYnVmZmVyOjpzZXRDb2xvcmJ1ZmZlcik6CisrICAgICAgICAo
Z2w6OkZyYW1lYnVmZmVyOjpzZXREZXB0aGJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkZyYW1lYnVm
ZmVyOjpzZXRTdGVuY2lsYnVmZmVyKToKKysgICAgICAgIChnbDo6RnJhbWVidWZmZXI6OmRldGFj
aFRleHR1cmUpOgorKyAgICAgICAgKGdsOjpGcmFtZWJ1ZmZlcjo6ZGV0YWNoUmVuZGVyYnVmZmVy
KToKKysgICAgICAgIChnbDo6RnJhbWVidWZmZXI6OmdldFJlbmRlclRhcmdldFNlcmlhbCk6Cisr
ICAgICAgICAoZ2w6OkZyYW1lYnVmZmVyOjpnZXRSZW5kZXJUYXJnZXQpOgorKyAgICAgICAgKGds
OjpGcmFtZWJ1ZmZlcjo6Z2V0RGVwdGhTdGVuY2lsKToKKysgICAgICAgIChnbDo6RnJhbWVidWZm
ZXI6OmdldERlcHRoYnVmZmVyU2VyaWFsKToKKysgICAgICAgIChnbDo6RnJhbWVidWZmZXI6Omdl
dFN0ZW5jaWxidWZmZXJTZXJpYWwpOgorKyAgICAgICAgKGdsOjpGcmFtZWJ1ZmZlcjo6Z2V0Q29s
b3JidWZmZXIpOgorKyAgICAgICAgKGdsOjpGcmFtZWJ1ZmZlcjo6Z2V0RGVwdGhidWZmZXIpOgor
KyAgICAgICAgKGdsOjpGcmFtZWJ1ZmZlcjo6Z2V0U3RlbmNpbGJ1ZmZlcik6CisrICAgICAgICAo
Z2w6OkZyYW1lYnVmZmVyOjpnZXRDb2xvcmJ1ZmZlckhhbmRsZSk6CisrICAgICAgICAoZ2w6OkZy
YW1lYnVmZmVyOjpnZXREZXB0aGJ1ZmZlckhhbmRsZSk6CisrICAgICAgICAoZ2w6OkZyYW1lYnVm
ZmVyOjpnZXRTdGVuY2lsYnVmZmVySGFuZGxlKToKKysgICAgICAgIChnbDo6RnJhbWVidWZmZXI6
Omhhc1N0ZW5jaWwpOgorKyAgICAgICAgKGdsOjpGcmFtZWJ1ZmZlcjo6aXNNdWx0aXNhbXBsZSk6
CisrICAgICAgICAoZ2w6OkZyYW1lYnVmZmVyOjpjb21wbGV0ZW5lc3MpOgorKyAgICAgICAgKGds
OjpEZWZhdWx0RnJhbWVidWZmZXI6OkRlZmF1bHRGcmFtZWJ1ZmZlcik6CisrICAgICAgICAoZ2w6
OkZyYW1lYnVmZmVyOjpnZXRTYW1wbGVzKToKKysgICAgICAgIChnbDo6RGVmYXVsdEZyYW1lYnVm
ZmVyOjpjb21wbGV0ZW5lc3MpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL0ZyYW1lYnVmZmVy
Lmg6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvUHJvZ3JhbS5jcHA6CisrICAgICAgICAoZ2w6
OlByb2dyYW06OlByb2dyYW0pOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjp+UHJvZ3JhbSk6Cisr
ICAgICAgICAoZ2w6OlByb2dyYW06OmF0dGFjaFNoYWRlcik6CisrICAgICAgICAoZ2w6OlByb2dy
YW06OmRldGFjaFNoYWRlcik6CisrICAgICAgICAoZ2w6OlByb2dyYW06OmxpbmtWYXJ5aW5ncyk6
CisrICAgICAgICAoZ2w6OlByb2dyYW06OmxpbmspOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjp1
bmxpbmspOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpyZWxlYXNlKToKKysgICAgICAgIChnbDo6
UHJvZ3JhbTo6YWRkUmVmKToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6Z2V0UmVmQ291bnQpOgor
KyAgICAgICAgKGdsOjpQcm9ncmFtOjpnZXREeFZpZXdwb3J0TG9jYXRpb24pOgorKyAgICAgICAg
KiBzcmMvbGliR0xFU3YyL1Byb2dyYW0uaDoKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9SZWZD
b3VudE9iamVjdC5jcHA6IEFkZGVkLgorKyAgICAgICAgKGdsOjpSZWZDb3VudE9iamVjdDo6UmVm
Q291bnRPYmplY3QpOgorKyAgICAgICAgKGdsOjpSZWZDb3VudE9iamVjdDo6flJlZkNvdW50T2Jq
ZWN0KToKKysgICAgICAgIChnbDo6UmVmQ291bnRPYmplY3Q6OmFkZFJlZik6CisrICAgICAgICAo
Z2w6OlJlZkNvdW50T2JqZWN0OjpyZWxlYXNlKToKKysgICAgICAgIChnbDo6UmVmQ291bnRPYmpl
Y3RCaW5kaW5nUG9pbnRlcjo6c2V0KToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9SZWZDb3Vu
dE9iamVjdC5oOiBBZGRlZC4KKysgICAgICAgIChnbDo6UmVmQ291bnRPYmplY3Q6OmlkKToKKysg
ICAgICAgIChnbDo6UmVmQ291bnRPYmplY3RCaW5kaW5nUG9pbnRlcjo6UmVmQ291bnRPYmplY3RC
aW5kaW5nUG9pbnRlcik6CisrICAgICAgICAoZ2w6OlJlZkNvdW50T2JqZWN0QmluZGluZ1BvaW50
ZXI6On5SZWZDb3VudE9iamVjdEJpbmRpbmdQb2ludGVyKToKKysgICAgICAgIChnbDo6UmVmQ291
bnRPYmplY3RCaW5kaW5nUG9pbnRlcjo6Z2V0KToKKysgICAgICAgIChnbDo6UmVmQ291bnRPYmpl
Y3RCaW5kaW5nUG9pbnRlcjo6aWQpOgorKyAgICAgICAgKGdsOjpSZWZDb3VudE9iamVjdEJpbmRp
bmdQb2ludGVyOjpvcGVyYXRvciAhICk6CisrICAgICAgICAoZ2w6OkJpbmRpbmdQb2ludGVyOjpz
ZXQpOgorKyAgICAgICAgKGdsOjpCaW5kaW5nUG9pbnRlcjo6Z2V0KToKKysgICAgICAgIChnbDo6
QmluZGluZ1BvaW50ZXI6Om9wZXJhdG9yIC0+ICk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIv
UmVuZGVyYnVmZmVyLmNwcDoKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyOjpSZW5kZXJidWZm
ZXIpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXI6On5SZW5kZXJidWZmZXIpOgorKyAgICAg
ICAgKGdsOjpSZW5kZXJidWZmZXI6OmlzQ29sb3JidWZmZXIpOgorKyAgICAgICAgKGdsOjpSZW5k
ZXJidWZmZXI6OmlzRGVwdGhidWZmZXIpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXI6Omlz
U3RlbmNpbGJ1ZmZlcik6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlcjo6Z2V0UmVuZGVyVGFy
Z2V0KToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyOjpnZXREZXB0aFN0ZW5jaWwpOgorKyAg
ICAgICAgKGdsOjpSZW5kZXJidWZmZXI6OmdldFdpZHRoKToKKysgICAgICAgIChnbDo6UmVuZGVy
YnVmZmVyOjpnZXRIZWlnaHQpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXI6OmdldEZvcm1h
dCk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlcjo6Z2V0RDNERm9ybWF0KToKKysgICAgICAg
IChnbDo6UmVuZGVyYnVmZmVyOjpnZXRTZXJpYWwpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZm
ZXI6OnNldFN0b3JhZ2UpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJTdG9yYWdlOjpSZW5k
ZXJidWZmZXJTdG9yYWdlKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyU3RvcmFnZTo6flJl
bmRlcmJ1ZmZlclN0b3JhZ2UpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJTdG9yYWdlOjpp
c0NvbG9yYnVmZmVyKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyU3RvcmFnZTo6aXNEZXB0
aGJ1ZmZlcik6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclN0b3JhZ2U6OmlzU3RlbmNpbGJ1
ZmZlcik6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclN0b3JhZ2U6OmdldFJlbmRlclRhcmdl
dCk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclN0b3JhZ2U6OmdldERlcHRoU3RlbmNpbCk6
CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclN0b3JhZ2U6OmdldFdpZHRoKToKKysgICAgICAg
IChnbDo6UmVuZGVyYnVmZmVyU3RvcmFnZTo6Z2V0SGVpZ2h0KToKKysgICAgICAgIChnbDo6UmVu
ZGVyYnVmZmVyU3RvcmFnZTo6c2V0U2l6ZSk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclN0
b3JhZ2U6OmdldEZvcm1hdCk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclN0b3JhZ2U6Omdl
dEQzREZvcm1hdCk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclN0b3JhZ2U6OmdldFNhbXBs
ZXMpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJTdG9yYWdlOjpnZXRTZXJpYWwpOgorKyAg
ICAgICAgKGdsOjpSZW5kZXJidWZmZXJTdG9yYWdlOjppc3N1ZVNlcmlhbCk6CisrICAgICAgICAo
Z2w6OkNvbG9yYnVmZmVyOjpDb2xvcmJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkNvbG9yYnVmZmVy
Ojppc0NvbG9yYnVmZmVyKToKKysgICAgICAgIChnbDo6Q29sb3JidWZmZXI6OmdldFJlZFNpemUp
OgorKyAgICAgICAgKGdsOjpDb2xvcmJ1ZmZlcjo6Z2V0R3JlZW5TaXplKToKKysgICAgICAgIChn
bDo6Q29sb3JidWZmZXI6OmdldEJsdWVTaXplKToKKysgICAgICAgIChnbDo6Q29sb3JidWZmZXI6
OmdldEFscGhhU2l6ZSk6CisrICAgICAgICAoZ2w6OkRlcHRoU3RlbmNpbGJ1ZmZlcjo6RGVwdGhT
dGVuY2lsYnVmZmVyKToKKysgICAgICAgIChnbDo6RGVwdGhTdGVuY2lsYnVmZmVyOjp+RGVwdGhT
dGVuY2lsYnVmZmVyKToKKysgICAgICAgIChnbDo6RGVwdGhTdGVuY2lsYnVmZmVyOjppc0RlcHRo
YnVmZmVyKToKKysgICAgICAgIChnbDo6RGVwdGhTdGVuY2lsYnVmZmVyOjppc1N0ZW5jaWxidWZm
ZXIpOgorKyAgICAgICAgKGdsOjpEZXB0aFN0ZW5jaWxidWZmZXI6OmdldERlcHRoU2l6ZSk6Cisr
ICAgICAgICAoZ2w6OkRlcHRoU3RlbmNpbGJ1ZmZlcjo6Z2V0U3RlbmNpbFNpemUpOgorKyAgICAg
ICAgKGdsOjpEZXB0aFN0ZW5jaWxidWZmZXI6OmdldERlcHRoU3RlbmNpbCk6CisrICAgICAgICAo
Z2w6OkRlcHRoYnVmZmVyOjpEZXB0aGJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkRlcHRoYnVmZmVy
Ojp+RGVwdGhidWZmZXIpOgorKyAgICAgICAgKGdsOjpEZXB0aGJ1ZmZlcjo6aXNEZXB0aGJ1ZmZl
cik6CisrICAgICAgICAoZ2w6OkRlcHRoYnVmZmVyOjppc1N0ZW5jaWxidWZmZXIpOgorKyAgICAg
ICAgKGdsOjpTdGVuY2lsYnVmZmVyOjpTdGVuY2lsYnVmZmVyKToKKysgICAgICAgIChnbDo6U3Rl
bmNpbGJ1ZmZlcjo6flN0ZW5jaWxidWZmZXIpOgorKyAgICAgICAgKGdsOjpTdGVuY2lsYnVmZmVy
Ojppc0RlcHRoYnVmZmVyKToKKysgICAgICAgIChnbDo6U3RlbmNpbGJ1ZmZlcjo6aXNTdGVuY2ls
YnVmZmVyKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9SZW5kZXJidWZmZXIuaDoKKysgICAg
ICAgIChnbDo6UmVuZGVyYnVmZmVyOjpnZXRTdG9yYWdlKToKKysgICAgICAgICogc3JjL2xpYkdM
RVN2Mi9SZXNvdXJjZU1hbmFnZXIuY3BwOiBBZGRlZC4KKysgICAgICAgIChnbDo6UmVzb3VyY2VN
YW5hZ2VyOjpSZXNvdXJjZU1hbmFnZXIpOgorKyAgICAgICAgKGdsOjpSZXNvdXJjZU1hbmFnZXI6
On5SZXNvdXJjZU1hbmFnZXIpOgorKyAgICAgICAgKGdsOjpSZXNvdXJjZU1hbmFnZXI6OmFkZFJl
Zik6CisrICAgICAgICAoZ2w6OlJlc291cmNlTWFuYWdlcjo6cmVsZWFzZSk6CisrICAgICAgICAo
Z2w6OlJlc291cmNlTWFuYWdlcjo6Y3JlYXRlQnVmZmVyKToKKysgICAgICAgIChnbDo6UmVzb3Vy
Y2VNYW5hZ2VyOjpjcmVhdGVTaGFkZXIpOgorKyAgICAgICAgKGdsOjpSZXNvdXJjZU1hbmFnZXI6
OmNyZWF0ZVByb2dyYW0pOgorKyAgICAgICAgKGdsOjpSZXNvdXJjZU1hbmFnZXI6OmNyZWF0ZVRl
eHR1cmUpOgorKyAgICAgICAgKGdsOjpSZXNvdXJjZU1hbmFnZXI6OmNyZWF0ZVJlbmRlcmJ1ZmZl
cik6CisrICAgICAgICAoZ2w6OlJlc291cmNlTWFuYWdlcjo6ZGVsZXRlQnVmZmVyKToKKysgICAg
ICAgIChnbDo6UmVzb3VyY2VNYW5hZ2VyOjpkZWxldGVTaGFkZXIpOgorKyAgICAgICAgKGdsOjpS
ZXNvdXJjZU1hbmFnZXI6OmRlbGV0ZVByb2dyYW0pOgorKyAgICAgICAgKGdsOjpSZXNvdXJjZU1h
bmFnZXI6OmRlbGV0ZVRleHR1cmUpOgorKyAgICAgICAgKGdsOjpSZXNvdXJjZU1hbmFnZXI6OmRl
bGV0ZVJlbmRlcmJ1ZmZlcik6CisrICAgICAgICAoZ2w6OlJlc291cmNlTWFuYWdlcjo6Z2V0QnVm
ZmVyKToKKysgICAgICAgIChnbDo6UmVzb3VyY2VNYW5hZ2VyOjpnZXRTaGFkZXIpOgorKyAgICAg
ICAgKGdsOjpSZXNvdXJjZU1hbmFnZXI6OmdldFRleHR1cmUpOgorKyAgICAgICAgKGdsOjpSZXNv
dXJjZU1hbmFnZXI6OmdldFByb2dyYW0pOgorKyAgICAgICAgKGdsOjpSZXNvdXJjZU1hbmFnZXI6
OmdldFJlbmRlcmJ1ZmZlcik6CisrICAgICAgICAoZ2w6OlJlc291cmNlTWFuYWdlcjo6c2V0UmVu
ZGVyYnVmZmVyKToKKysgICAgICAgIChnbDo6UmVzb3VyY2VNYW5hZ2VyOjpjaGVja0J1ZmZlckFs
bG9jYXRpb24pOgorKyAgICAgICAgKGdsOjpSZXNvdXJjZU1hbmFnZXI6OmNoZWNrVGV4dHVyZUFs
bG9jYXRpb24pOgorKyAgICAgICAgKGdsOjpSZXNvdXJjZU1hbmFnZXI6OmNoZWNrUmVuZGVyYnVm
ZmVyQWxsb2NhdGlvbik6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvUmVzb3VyY2VNYW5hZ2Vy
Lmg6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1NoYWRlci5jcHA6CisrICAgICAg
ICAoZ2w6OlNoYWRlcjo6U2hhZGVyKToKKysgICAgICAgIChnbDo6U2hhZGVyOjphZGRSZWYpOgor
KyAgICAgICAgKGdsOjpTaGFkZXI6OnJlbGVhc2UpOgorKyAgICAgICAgKGdsOjpTaGFkZXI6Omdl
dFJlZkNvdW50KToKKysgICAgICAgIChnbDo6U2hhZGVyOjpwYXJzZVZhcnlpbmdzKToKKysgICAg
ICAgIChnbDo6VmVydGV4U2hhZGVyOjpWZXJ0ZXhTaGFkZXIpOgorKyAgICAgICAgKGdsOjpGcmFn
bWVudFNoYWRlcjo6RnJhZ21lbnRTaGFkZXIpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1No
YWRlci5oOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1RleHR1cmUuY3BwOgorKyAgICAgICAg
KGdsOjpUZXh0dXJlOjpJbWFnZTo6SW1hZ2UpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpUZXh0
dXJlKToKKysgICAgICAgIChnbDo6VGV4dHVyZTo6Z2V0QmxpdHRlcik6CisrICAgICAgICAoZ2w6
OlRleHR1cmU6OnNlbGVjdEZvcm1hdCk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OmxvYWRJbWFn
ZURhdGEpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpsb2FkQWxwaGFJbWFnZURhdGEpOgorKyAg
ICAgICAgKGdsOjpUZXh0dXJlOjpsb2FkTHVtaW5hbmNlSW1hZ2VEYXRhKToKKysgICAgICAgIChn
bDo6VGV4dHVyZTo6bG9hZEx1bWluYW5jZUFscGhhSW1hZ2VEYXRhKToKKysgICAgICAgIChnbDo6
VGV4dHVyZTo6bG9hZFJHQlVCeXRlSW1hZ2VEYXRhKToKKysgICAgICAgIChnbDo6VGV4dHVyZTo6
bG9hZFJHQjU2NUltYWdlRGF0YSk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OmxvYWRSR0JBVUJ5
dGVJbWFnZURhdGEpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpsb2FkUkdCQTQ0NDRJbWFnZURh
dGEpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpsb2FkUkdCQTU1NTFJbWFnZURhdGEpOgorKyAg
ICAgICAgKGdsOjpUZXh0dXJlOjpsb2FkQkdSQUltYWdlRGF0YSk6CisrICAgICAgICAoZ2w6OlRl
eHR1cmU6OmNyZWF0ZVN1cmZhY2UpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpzZXRJbWFnZSk6
CisrICAgICAgICAoZ2w6OlRleHR1cmU6OnNldENvbXByZXNzZWRJbWFnZSk6CisrICAgICAgICAo
Z2w6OlRleHR1cmU6OnN1YkltYWdlKToKKysgICAgICAgIChnbDo6VGV4dHVyZTo6c3ViSW1hZ2VD
b21wcmVzc2VkKToKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjpUZXh0dXJlMkQpOgorKyAgICAg
ICAgKGdsOjpUZXh0dXJlMkQ6OmdldEZvcm1hdCk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6
c2V0Q29tcHJlc3NlZEltYWdlKToKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjpzdWJJbWFnZSk6
CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6c3ViSW1hZ2VDb21wcmVzc2VkKToKKysgICAgICAg
IChnbDo6VGV4dHVyZTJEOjpjb3B5SW1hZ2UpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlMkQ6OmNv
cHlTdWJJbWFnZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6aXNDb21wcmVzc2VkKToKKysg
ICAgICAgIChnbDo6VGV4dHVyZTJEOjpnZXRDb2xvcmJ1ZmZlcik6CisrICAgICAgICAoZ2w6OlRl
eHR1cmVDdWJlTWFwOjpUZXh0dXJlQ3ViZU1hcCk6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJl
TWFwOjpnZXRGb3JtYXQpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6c2V0Q29tcHJl
c3NlZEltYWdlKToKKysgICAgICAgIChnbDo6VGV4dHVyZUN1YmVNYXA6OnN1YkltYWdlKToKKysg
ICAgICAgIChnbDo6VGV4dHVyZUN1YmVNYXA6OnN1YkltYWdlQ29tcHJlc3NlZCk6CisrICAgICAg
ICAoZ2w6OlRleHR1cmVDdWJlTWFwOjppc0NvbXByZXNzZWQpOgorKyAgICAgICAgKGdsOjpUZXh0
dXJlQ3ViZU1hcDo6Y29weUltYWdlKToKKysgICAgICAgIChnbDo6VGV4dHVyZUN1YmVNYXA6OmNv
cHlTdWJJbWFnZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpnZXRDb2xvcmJ1ZmZl
cik6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OlRleHR1cmVDb2xvcmJ1ZmZlclByb3h5OjphZGRS
ZWYpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpUZXh0dXJlQ29sb3JidWZmZXJQcm94eTo6cmVs
ZWFzZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OlRleHR1cmVDb2xvcmJ1ZmZlclByb3h5Ojpn
ZXRXaWR0aCk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OlRleHR1cmVDb2xvcmJ1ZmZlclByb3h5
OjpnZXRIZWlnaHQpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpUZXh0dXJlQ29sb3JidWZmZXJQ
cm94eTo6Z2V0Rm9ybWF0KToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9UZXh0dXJlLmg6Cisr
ICAgICAgICAqIHNyYy9saWJHTEVTdjIvbGliR0xFU3YyLmNwcDoKKysgICAgICAgICogc3JjL2xp
YkdMRVN2Mi9saWJHTEVTdjIuZGVmOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL2xpYkdMRVN2
Mi52Y3Byb2o6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvbWFpbi5oOgorKyAgICAgICAgKiBz
cmMvbGliR0xFU3YyL3V0aWxpdGllcy5jcHA6CisrICAgICAgICAoZ2w6OkNvbXB1dGVDb21wcmVz
c2VkUGl0Y2gpOgorKyAgICAgICAgKGdsOjpDb21wdXRlQ29tcHJlc3NlZFNpemUpOgorKyAgICAg
ICAgKGdsOjpJc0NvbXByZXNzZWQpOgorKyAgICAgICAgKGdsOjpDb21wdXRlUGl4ZWxTaXplKToK
KysgICAgICAgIChnbDo6Q2hlY2tUZXh0dXJlRm9ybWF0VHlwZSk6CisrICAgICAgICAoZXMyZHg6
OkNvbnZlcnRSZW5kZXJidWZmZXJGb3JtYXQpOgorKyAgICAgICAgKGVzMmR4OjpHZXRTYW1wbGVz
RnJvbU11bHRpc2FtcGxlVHlwZSk6CisrICAgICAgICAoZXMyZHg6OkdldE11bHRpc2FtcGxlVHlw
ZUZyb21TYW1wbGVzKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi91dGlsaXRpZXMuaDoKKysK
KysyMDEwLTA4LTE3ICBDaHJpcyBNYXJyaW4gIDxjbWFycmluQGFwcGxlLmNvbT4KKysKKysgICAg
ICAgIFVucmV2aWV3ZWQuCisrCisrICAgICAgICBNb3ZlZCBwcmV2aW91cyBsaW5rIGVycm9yIGZp
eCB0byBCYXNlLnhjY29uZmlnLgorKworKyAgICAgICAgKiBBTkdMRS54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qOgorKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnOgorKwor
KzIwMTAtMDgtMTcgIENocmlzIE1hcnJpbiAgPGNtYXJyaW5AYXBwbGUuY29tPgorKworKyAgICAg
ICAgVW5yZXZpZXdlZC4KKysKKysgICAgICAgIEdvdCByaWQgb2YgbGluayBlcnJvcnMgaW4gV2Vi
Q29yZS4KKysKKysgICAgICAgIENoYW5nZWQgR0NDX0lOTElORVNfQVJFX1BSSVZBVEVfRVhURVJO
IHRvIFlFUyBhbmQKKysgICAgICAgIEdDQ19TWU1CT0xTX1BSSVZBVEVfRVhURVJOIHRvIE5PIHRv
IG1hdGNoIFdlYkNvcmUKKysgICAgICAgIGZsYWdzLgorKworKyAgICAgICAgKiBBTkdMRS54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qOgorKworKzIwMTAtMDgtMDQgIEtlbm5ldGggUnVzc2VsbCAg
PGtickBnb29nbGUuY29tPgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGltaXRyaSBHbGF6a292
LgorKworKyAgICAgICAgVXBkYXRlIEFOR0xFIHRvIHIzNTIKKysgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MzUwMAorKworKyAgICAgICAgVXBkYXRlZCBB
TkdMRSB0byByMzUyIChKdWx5IDI2LCAyMDEwKS4gQnVpbHQgV2ViS2l0IHRvIHRlc3QuCisrCisr
ICAgICAgICAqIGluY2x1ZGUvR0xTTEFORy9TaGFkZXJMYW5nLmg6CisrICAgICAgICAqIHNyYy9j
b21waWxlci9Jbml0aWFsaXplLmNwcDoKKysgICAgICAgIChCdWlsdEluRnVuY3Rpb25zQ29tbW9u
KToKKysgICAgICAgIChCdWlsdEluRnVuY3Rpb25zVmVydGV4KToKKysgICAgICAgIChCdWlsdElu
RnVuY3Rpb25zRnJhZ21lbnQpOgorKyAgICAgICAgKFN0YW5kYXJkVW5pZm9ybXMpOgorKyAgICAg
ICAgKERlZmF1bHRQcmVjaXNpb25WZXJ0ZXgpOgorKyAgICAgICAgKERlZmF1bHRQcmVjaXNpb25G
cmFnbWVudCk6CisrICAgICAgICAoQnVpbHRJbkNvbnN0YW50cyk6CisrICAgICAgICAoVEJ1aWx0
SW5zOjppbml0aWFsaXplKToKKysgICAgICAgIChJZGVudGlmeUJ1aWx0SW5zKToKKysgICAgICAg
ICogc3JjL2NvbXBpbGVyL0luaXRpYWxpemUuaDoKKysgICAgICAgIChUQnVpbHRJbnM6OmdldEJ1
aWx0SW5TdHJpbmdzKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL091dHB1dEdMU0wuY3BwOgor
KyAgICAgICAgKFRPdXRwdXRHTFNMOjp2aXNpdFNlbGVjdGlvbik6CisrICAgICAgICAqIHNyYy9j
b21waWxlci9TaEhhbmRsZS5oOgorKyAgICAgICAgKFRDb21waWxlcjo6Z2V0TGFuZ3VhZ2UpOgor
KyAgICAgICAgKFRDb21waWxlcjo6Z2V0U3BlYyk6CisrICAgICAgICAoVENvbXBpbGVyOjpnZXRT
eW1ib2xUYWJsZSk6CisrICAgICAgICAoVENvbXBpbGVyOjpnZXRJbmZvU2luayk6CisrICAgICAg
ICAqIHNyYy9jb21waWxlci9TaGFkZXJMYW5nLmNwcDoKKysgICAgICAgIChJbml0aWFsaXplU3lt
Ym9sVGFibGUpOgorKyAgICAgICAgKEdlbmVyYXRlQnVpbHRJblN5bWJvbFRhYmxlKToKKysgICAg
ICAgIChTaEluaXRpYWxpemUpOgorKyAgICAgICAgKFNoQ29uc3RydWN0Q29tcGlsZXIpOgorKyAg
ICAgICAgKFNoRmluYWxpemUpOgorKyAgICAgICAgKFNoQ29tcGlsZSk6CisrICAgICAgICAqIHNy
Yy9jb21waWxlci9TeW1ib2xUYWJsZS5oOgorKyAgICAgICAgKFRTeW1ib2xUYWJsZTo6YXRCdWls
dEluTGV2ZWwpOgorKyAgICAgICAgKFRTeW1ib2xUYWJsZTo6YXRHbG9iYWxMZXZlbCk6CisrICAg
ICAgICAoVFN5bWJvbFRhYmxlOjpwdXNoKToKKysgICAgICAgIChUU3ltYm9sVGFibGU6OmdldEds
b2JhbExldmVsKToKKysgICAgICAgIChUU3ltYm9sVGFibGU6OmN1cnJlbnRMZXZlbCk6CisrICAg
ICAgICAqIHNyYy9saWJHTEVTdjIvU2hhZGVyLmNwcDoKKysgICAgICAgIChnbDo6U2hhZGVyOjpT
aGFkZXIpOgorKyAgICAgICAgKGdsOjpTaGFkZXI6OmNvbXBpbGVUb0hMU0wpOgorKworKzIwMTAt
MDgtMDMgIE1hcmsgUm93ZSAgPG1yb3dlQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFJ1YmJlci1z
dGFtcGVkIGJ5IEFkZWxlIFBldGVyc29uLgorKworKyAgICAgICAgUmVtb3ZlIHNvbWUgdW5uZWNl
c3NhcnkgZmlsZXMgZnJvbSB0aGUgQU5HTEUgdHJlZS4KKysKKysgICAgICAgICogc3JjL2NvbXBp
bGVyL3Rvb2xzL0NPUFlJTkcuYmlzb246IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9jb21waWxl
ci90b29scy9DT1BZSU5HLmZsZXg6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9jb21waWxlci90
b29scy9SRUFETUU6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9jb21waWxlci90b29scy9iaXNv
bi5oYWlyeTogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3Rvb2xzL2Jpc29uLnNp
bXBsZTogUmVtb3ZlZC4KKysKKysyMDEwLTA4LTAzICBNYXJrIFJvd2UgIDxtcm93ZUBhcHBsZS5j
b20+CisrCisrICAgICAgICBSdWJiZXItc3RhbXBlZCBieSBBZGVsZSBQZXRlcnNvbi4KKysKKysg
ICAgICAgIENsZWFuIHVwIHRoZSBBTkdMRSBYY29kZSBwcm9qZWN0LgorKworKyAgICAgICAgTWFp
biBjaGFuZ2VzIGluY2x1ZGU6CisrICAgICAgICDigKIgQWRkaW5nIGEgUHJvZHVjdGlvbiBjb25m
aWd1cmF0aW9uLgorKyAgICAgICAg4oCiIE1vZGlmeWluZyB0aGUgbGlicmFyeSBuYW1lIGZyb20g
bGliYW5nbGUuYSB0byBsaWJBTkdMRS5hLgorKyAgICAgICAg4oCiIEluc3RhbGxpbmcgdGhlIGhl
YWRlcnMgaW4gYSBzdWJkaXJlY3Rvcnkgb2YgL3Vzci9sb2NhbC9pbmNsdWRlIHRvIGF2b2lkIHBv
bGx1dGluZyB0aGUgdG9wLWxldmVsIGRpcmVjdG9yeS4KKysgICAgICAgIOKAoiBHZW5lcmF0aW5n
IGRlcml2ZWQgc291cmNlcyBpbiB0byB0aGUgYnVpbHQgcHJvZHVjdHMgZGlyZWN0b3J5IHNvIHRo
ZXkncmUgc2F2ZWQgYWxvbmcgd2l0aCB0aGUgc3ltcm9vdC4KKysgICAgICAgIOKAoiBTd2l0Y2hp
bmcgdG8gdXNpbmcgLnhjY29uZmlnIGZpbGVzIGZvciBtYXhpbXVtIGNsZWFubGluZXNzLgorKwor
KyAgICAgICAgKiBBTkdMRS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorKyAgICAgICAgKiBD
b25maWd1cmF0aW9ucy9BTkdMRS54Y2NvbmZpZzogQWRkZWQuCisrICAgICAgICAqIENvbmZpZ3Vy
YXRpb25zL0Jhc2UueGNjb25maWc6IEFkZGVkLgorKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9E
ZWJ1Z1JlbGVhc2UueGNjb25maWc6IEFkZGVkLgorKworKzIwMTAtMDgtMDIgIFBhdWwgU2F3YXlh
ICA8cHNhd2F5YUBhcHBsZS5jb20+CisrCisrICAgICAgICBSZXZpZXdlZCBieSBBZGVsZSBQZXRl
cnNvbi4KKysKKysgICAgICAgIEFkZCBBTkdMRSBsaWJyYXJ5IHRvIFdlYktpdC4gRnJvbSB0aGUg
cmVwb3NpdG9yeSAoaHR0cDovL2FuZ2xlcHJvamVjdC5nb29nbGVjb2RlLmNvbSkgYXMgb2YgSnVs
eSAyMi4KKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00
Mjc4OQorKworZGlmZiAtLWdpdCBhL3NjcmlwdHMvY29weS1mcmFtZXdvcmtzLXRvLXNlY29uZGFy
eS1wYXRoLnNoIGIvc2NyaXB0cy9jb3B5LWZyYW1ld29ya3MtdG8tc2Vjb25kYXJ5LXBhdGguc2gK
K25ldyBmaWxlIG1vZGUgMTAwNzU1CitpbmRleCAwMDAwMDAwMDAuLjJlMDBjMTI3MAorLS0tIC9k
ZXYvbnVsbAorKysrIGIvc2NyaXB0cy9jb3B5LWZyYW1ld29ya3MtdG8tc2Vjb25kYXJ5LXBhdGgu
c2gKK0BAIC0wLDAgKzEsNjIgQEAKKysjIS9iaW4vc2gKKysKKytzZXQgLWUKKysKKytpZiBbWyAi
JHtERVBMT1lNRU5UX0xPQ0FUSU9OfSIgIT0gIllFUyIgXV07IHRoZW4KKysgICAgZWNobyAiZXJy
b3I6ICQoYmFzZW5hbWUgJDApIHNob3VsZCBvbmx5IGJlIHJ1biBmb3IgZGVwbG95bWVudC1zdHls
ZSAoXCJwcm9kdWN0aW9uXCIgLyBcIm5vbi1lbmdpbmVlcmluZ1wiKSBidWlsZHMuIgorKyAgICBl
eGl0IDEKKytmaQorKworK2lmIFtbICIke1VTRV9TWVNURU1fQ09OVEVOVF9QQVRIfSIgIT0gIllF
UyIgfHwgIiR7Q09QWV9TVEFHRURfRlJBTUVXT1JLU19UT19TRUNPTkRBUllfUEFUSH0iICE9ICJZ
RVMiIF1dOyB0aGVuCisrICAgIGVjaG8gIlNraXBwaW5nIGNvcHlpbmcgZnJhbWV3b3JrcyB0byBz
ZWNvbmRhcnkgY29udGVudCBwYXRoLiIKKysgICAgZXhpdCAwCisrZmkKKysKKytpZiBbWyAiJHtB
Q1RJT059IiA9PSAiaW5zdGFsbGFwaSIgfHwgIiR7QUNUSU9OfSIgPT0gImluc3RhbGxoZHJzIiBd
XTsgdGhlbgorKyAgICBlY2hvICJTa2lwcGluZyBjb3B5aW5nIGZyYW1ld29ya3MgdG8gc2Vjb25k
YXJ5IGNvbnRlbnQgcGF0aCBmb3IgaW5zdGFsbGFwaSBvciBpbnN0YWxsaGRycyBhY3Rpb24uIgor
KyAgICBleGl0IDAKKytmaQorKworK2lmIFtbIC16ICIke0ZSQU1FV09SS1NfVE9fQ09QWV9UT19T
RUNPTkRBUllfUEFUSH0iICYmIC16ICIke0RZTElCU19UT19DT1BZX1RPX1NFQ09OREFSWV9QQVRI
fSIgXV07IHRoZW4KKysgICAgZWNobyAid2FybmluZzogTmVpdGhlciBGUkFNRVdPUktTX1RPX0NP
UFlfVE9fU0VDT05EQVJZX1BBVEggb3IgRFlMSUJTX1RPX0NPUFlfVE9fU0VDT05EQVJZX1BBVEgg
YXJlIHNldC4iCisrZmkKKysKKytpZiBbWyAteiAiJHtTRUNPTkRBUllfU1RBR0VEX0ZSQU1FV09S
S19ESVJFQ1RPUll9IiBdXTsgdGhlbgorKyAgICBlY2hvICJlcnJvcjogU0VDT05EQVJZX1NUQUdF
RF9GUkFNRVdPUktfRElSRUNUT1JZIGlzIG5vdCBzZXQuIgorKyAgICBleGl0IDEKKytmaQorKwor
K2Z1bmN0aW9uIGNvcHlfcHJvZHVjdF90b19kZXN0aW5hdGlvbl9mcmFtZXdvcmtfZGlyZWN0b3J5
CisreworKyAgICBQUk9EVUNUX0NPTVBPTkVOVD0kMQorKworKyAgICAjIEluIGRlcGxveW1lbnQg
YnVpbGRzLCBCVUlMVF9QUk9EVUNUU19ESVIgZG9lc24ndCBwb2ludCB0byB0aGUgYWN0dWFsIGxv
Y2F0aW9uIG9mIGFueSBwcm9kdWN0cywKKysgICAgIyBidXQgdG8gYSBzaW5nbGUgZm9sZGVyIG9m
IHN5bWxpbmtzIHRvIGFsbCBidWlsdCBwcm9kdWN0cywgcmVnYXJkbGVzcyBvZiB3aGV0aGVyIHRo
ZXkgYXJlIGFjdHVhbGx5CisrICAgICMgYmVpbmcgaW5zdGFsbGVkLiBXZSBuZWVkIHRvIGNvcHkg
dGhlIGFjdHVhbCBwcm9kdWN0cyB0byB0aGUgc2Vjb25kYXJ5IGNvbnRlbnQgcGF0aCwgKm5vdCog
anVzdCBhIHN5bWxpbmsuCisrICAgIFNPVVJDRV9QUk9EVUNUX1BBVEg9IiQocmVhZGxpbmsgIiR7
QlVJTFRfUFJPRFVDVFNfRElSfS8ke1BST0RVQ1RfQ09NUE9ORU5UfSIpIgorKworKyAgICBlY2hv
ICJDb3B5aW5nICR7U09VUkNFX1BST0RVQ1RfUEFUSH0gdG8gJHtERVNUSU5BVElPTl9GUkFNRVdP
UktfRElSRUNUT1JZfSIKKysgICAgcnN5bmMgLWFFICIke1NPVVJDRV9QUk9EVUNUX1BBVEh9IiAi
JHtERVNUSU5BVElPTl9GUkFNRVdPUktfRElSRUNUT1JZfSIKKyt9CisrCisraWYgW1sgISAteiAi
JHtTRUNPTkRBUllfU1RBR0VEX0ZSQU1FV09SS19ESVJFQ1RPUll9IiBdXTsgdGhlbgorKyAgICBE
RVNUSU5BVElPTl9GUkFNRVdPUktfRElSRUNUT1JZPSIke0RTVFJPT1R9JHtTRUNPTkRBUllfU1RB
R0VEX0ZSQU1FV09SS19ESVJFQ1RPUll9IgorKyAgICBta2RpciAtcCAiJHtERVNUSU5BVElPTl9G
UkFNRVdPUktfRElSRUNUT1JZfSIKKysKKysgICAgZm9yIEZSQU1FV09SS19OQU1FIGluICQoZWNo
byAke0ZSQU1FV09SS1NfVE9fQ09QWV9UT19TRUNPTkRBUllfUEFUSH0gfCB0ciAnICcgJ1xuJykK
KysgICAgZG8KKysgICAgICAgIEZSQU1FV09SS19CVU5ETEVfTkFNRT0iJHtGUkFNRVdPUktfTkFN
RX0uZnJhbWV3b3JrIgorKworKyAgICAgICAgY29weV9wcm9kdWN0X3RvX2Rlc3RpbmF0aW9uX2Zy
YW1ld29ya19kaXJlY3RvcnkgJHtGUkFNRVdPUktfQlVORExFX05BTUV9CisrICAgIGRvbmUKKytm
aQorKworK2lmIFtbICEgLXogIiR7RFlMSUJTX1RPX0NPUFlfVE9fU0VDT05EQVJZX1BBVEh9IiBd
XTsgdGhlbgorKyAgICBERVNUSU5BVElPTl9GUkFNRVdPUktfRElSRUNUT1JZPSIke0RTVFJPT1R9
JHtTRUNPTkRBUllfU1RBR0VEX0ZSQU1FV09SS19ESVJFQ1RPUll9JHtTVEFHRURfRFlMSUJfRlJB
TUVXT1JLX1BBVEh9IgorKyAgICBta2RpciAtcCAiJHtERVNUSU5BVElPTl9GUkFNRVdPUktfRElS
RUNUT1JZfSIKKysKKysgICAgZm9yIERZTElCIGluICQoZWNobyAke0RZTElCU19UT19DT1BZX1RP
X1NFQ09OREFSWV9QQVRIfSB8IHRyICcgJyAnXG4nKQorKyAgICBkbworKyAgICAgICAgY29weV9w
cm9kdWN0X3RvX2Rlc3RpbmF0aW9uX2ZyYW1ld29ya19kaXJlY3RvcnkgJHtEWUxJQn0KKysgICAg
ZG9uZQorK2ZpCiBkaWZmIC0tZ2l0IGEvc2NyaXB0cy9ydW5fY29kZV9nZW5lcmF0aW9uLnB5IGIv
c2NyaXB0cy9ydW5fY29kZV9nZW5lcmF0aW9uLnB5Ci1pbmRleCBhZGM5YmQ5Li5hNmVmMzlmIDEw
MDc1NQoraW5kZXggYWRjOWJkOWViLi5hNmVmMzlmZDIgMTAwNzU1CiAtLS0gYS9zY3JpcHRzL3J1
bl9jb2RlX2dlbmVyYXRpb24ucHkKICsrKyBiL3NjcmlwdHMvcnVuX2NvZGVfZ2VuZXJhdGlvbi5w
eQogQEAgLTI1Niw4ICsyNTYsMTEgQEAgZGVmIG1haW4oKToKQEAgLTI3LDcgKzE5Mzc5LDcgQEAg
aW5kZXggYWRjOWJkOS4uYTZlZjM5ZiAxMDA3NTUKICAgICAgICAgICMgVXBkYXRlIHRoZSBoYXNo
IGRpY3Rpb25hcnkuCiAgICAgICAgICBhbGxfbmV3X2hhc2hlc1tmbmFtZV0gPSBuZXdfaGFzaGVz
CiBkaWZmIC0tZ2l0IGEvc3JjL2NvbW1vbi91dGlsaXRpZXMuY3BwIGIvc3JjL2NvbW1vbi91dGls
aXRpZXMuY3BwCi1pbmRleCBlYmUyODJjLi43NThmYjA2IDEwMDY0NAoraW5kZXggYTE3NTczNGMz
Li43ZmM5YWE3OTIgMTAwNjQ0CiAtLS0gYS9zcmMvY29tbW9uL3V0aWxpdGllcy5jcHAKICsrKyBi
L3NyYy9jb21tb24vdXRpbGl0aWVzLmNwcAogQEAgLTYsNiArNiwxMiBAQApAQCAtNDQsNyArMTkz
OTYsNyBAQCBpbmRleCBlYmUyODJjLi43NThmYjA2IDEwMDY0NAogICNpbmNsdWRlICJHTEVTMy9n
bDMuaCIKICAjaW5jbHVkZSAiY29tbW9uL21hdGh1dGlsLmgiCiBkaWZmIC0tZ2l0IGEvc3JjL2Nv
bXBpbGVyL3ByZXByb2Nlc3Nvci9wcmVwcm9jZXNzb3JfdGFiX2F1dG9nZW4uY3BwIGIvc3JjL2Nv
bXBpbGVyL3ByZXByb2Nlc3Nvci9wcmVwcm9jZXNzb3JfdGFiX2F1dG9nZW4uY3BwCi1pbmRleCA0
NzExNzc0Li45ZWFiMWIzIDEwMDY0NAoraW5kZXggNDcxMTc3NGNkLi45ZWFiMWIzNjEgMTAwNjQ0
CiAtLS0gYS9zcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL3ByZXByb2Nlc3Nvcl90YWJfYXV0b2dl
bi5jcHAKICsrKyBiL3NyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvcHJlcHJvY2Vzc29yX3RhYl9h
dXRvZ2VuLmNwcAogQEAgLTEsNSArMSw4IEBACkBAIC01Nyw3ICsxOTQwOSw3IEBAIGluZGV4IDQ3
MTE3NzQuLjllYWIxYjMgMTAwNjQ0CiAgCiAgICAgQ29weXJpZ2h0IChDKSAxOTg0LCAxOTg5LTE5
OTAsIDIwMDAtMjAxNSwgMjAxOC0yMDE5IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwKIGRpZmYg
LS1naXQgYS9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci9Db2RlR2VuLmNwcCBiL3NyYy9jb21waWxl
ci90cmFuc2xhdG9yL0NvZGVHZW4uY3BwCi1pbmRleCA0OTdlZjg4Li40NzIxM2M5IDEwMDY0NAor
aW5kZXggNDk3ZWY4ODFlLi40NzIxM2M5MDQgMTAwNjQ0CiAtLS0gYS9zcmMvY29tcGlsZXIvdHJh
bnNsYXRvci9Db2RlR2VuLmNwcAogKysrIGIvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvQ29kZUdl
bi5jcHAKIEBAIC0yMyw2ICsyMyw5IEBACkBAIC03MSw3ICsxOTQyMyw3IEBAIGluZGV4IDQ5N2Vm
ODguLjQ3MjEzYzkgMTAwNjQ0CiAgI2lmZGVmIEFOR0xFX0VOQUJMRV9NRVRBTF9TUElSVgogICMg
ICAgaW5jbHVkZSAiY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWwuaCIKIGRpZmYg
LS1naXQgYS9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QuY3Bw
IGIvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0LmNwcAotaW5k
ZXggN2Y2NjVjMS4uNTk1ODEwMSAxMDA2NDQKK2luZGV4IDdmNjY1YzEzMC4uNTk1ODEwMTUwIDEw
MDY0NAogLS0tIGEvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0
LmNwcAogKysrIGIvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0
LmNwcAogQEAgLTk1MCw3ICs5NTAsNiBAQCBib29sIFRyYW5zbGF0b3JNZXRhbERpcmVjdDo6dHJh
bnNsYXRlSW1wbChUSW5mb1NpbmtCYXNlICZzaW5rLApAQCAtODMsNyArMTk0MzUsNyBAQCBpbmRl
eCA3ZjY2NWMxLi41OTU4MTAxIDEwMDY0NAogICAgICAgICAgewogICAgICAgICAgICAgIGlmICgh
UmVwbGFjZVZhcmlhYmxlKHRoaXMsIHJvb3QsIEJ1aWx0SW5WYXJpYWJsZTo6Z2xfVmVydGV4SW5k
ZXgoKSwgJmtnbF9WZXJ0ZXhJRE1ldGFsKSkKIGRpZmYgLS1naXQgYS9zcmMvY29tcGlsZXIvdHJh
bnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QvRW1pdE1ldGFsLmNwcCBiL3NyYy9jb21waWxl
ci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC9FbWl0TWV0YWwuY3BwCi1pbmRleCAw
MTljZmNmLi4yNWM5MTFlIDEwMDY0NAoraW5kZXggNDYxMGQ1Y2ZjLi44ZjlhMTNiZmEgMTAwNjQ0
CiAtLS0gYS9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QvRW1p
dE1ldGFsLmNwcAogKysrIGIvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFs
RGlyZWN0L0VtaXRNZXRhbC5jcHAKIEBAIC0xNzQwLDcgKzE3NDAsNiBAQCB2b2lkIEdlbk1ldGFs
VHJhdmVyc2VyOjplbWl0RnVuY3Rpb25TaWduYXR1cmUoY29uc3QgVEZ1bmN0aW9uICZmdW5jKQpA
QCAtOTYsNyArMTk0NDgsNyBAQCBpbmRleCAwMTljZmNmLi4yNWM5MTFlIDEwMDY0NAogICAgICAg
ICAgbU91dCA8PCAiIEBAWEZCLUJpbmRpbmdzQEAgIjsKIGRpZmYgLS1naXQgYS9zcmMvY29tcGls
ZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QvRW52aXJvbm1lbnRWYXJpYWJsZS5o
IGIvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0L0Vudmlyb25t
ZW50VmFyaWFibGUuaAogbmV3IGZpbGUgbW9kZSAxMDA2NDQKLWluZGV4IDAwMDAwMDAuLmQ4MjNm
YzcKK2luZGV4IDAwMDAwMDAwMC4uZDgyM2ZjNzI4CiAtLS0gL2Rldi9udWxsCiArKysgYi9zcmMv
Y29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QvRW52aXJvbm1lbnRWYXJp
YWJsZS5oCiBAQCAtMCwwICsxLDQ1IEBACkBAIC0xNDYsNyArMTk0OTgsNyBAQCBpbmRleCAwMDAw
MDAwLi5kODIzZmM3CiArCiArI2VuZGlmICAvLyBDT01QSUxFUl9UUkFOU0xBVE9SX1RSQU5TTEFU
T1JNRVRBTERJUkVDVF9FTlZJUk9OTUVOVFZBUklBQkxFX0hfCiBkaWZmIC0tZ2l0IGEvc3JjL2Nv
bXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0L0lkR2VuLmNwcCBiL3NyYy9j
b21waWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC9JZEdlbi5jcHAKLWluZGV4
IDgxZmYyNzIuLjlkMmI0M2IgMTAwNjQ0CitpbmRleCA4MWZmMjcyMmYuLjlkMmI0M2JjMCAxMDA2
NDQKIC0tLSBhL3NyYy9jb21waWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC9J
ZEdlbi5jcHAKICsrKyBiL3NyYy9jb21waWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERp
cmVjdC9JZEdlbi5jcHAKIEBAIC0yNSw3ICsyNSw3IEBAIE5hbWUgSWRHZW46OmNyZWF0ZU5ld05h
bWUoc2l6ZV90IGNvdW50LApAQCAtMTU5LDcgKzE5NTExLDcgQEAgaW5kZXggODFmZjI3Mi4uOWQy
YjQzYiAxMDA2NDQKICAgICAgbU5ld05hbWVCdWZmZXIuY2xlYXIoKTsKICAgICAgbU5ld05hbWVC
dWZmZXIgKz0gJ18nOwogZGlmZiAtLWdpdCBhL3NyYy9jb21waWxlci90cmFuc2xhdG9yL1RyYW5z
bGF0b3JNZXRhbERpcmVjdC9Nb2RpZnlTdHJ1Y3QuY3BwIGIvc3JjL2NvbXBpbGVyL3RyYW5zbGF0
b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0L01vZGlmeVN0cnVjdC5jcHAKLWluZGV4IGJjYzVkNjUu
LjYwNzU4ZmIgMTAwNjQ0CitpbmRleCBiY2M1ZDY1ODkuLjYwNzU4ZmJlOCAxMDA2NDQKIC0tLSBh
L3NyYy9jb21waWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC9Nb2RpZnlTdHJ1
Y3QuY3BwCiArKysgYi9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJl
Y3QvTW9kaWZ5U3RydWN0LmNwcAogQEAgLTYwMSw3ICs2MDEsNyBAQCBjbGFzcyBDb252ZXJ0U3Ry
dWN0U3RhdGUgOiBhbmdsZTo6Tm9uQ29weWFibGUKQEAgLTE3Miw3ICsxOTUyNCw3IEBAIGluZGV4
IGJjYzVkNjUuLjYwNzU4ZmIgMTAwNjQ0CiAgICAgIH0KICAKIGRpZmYgLS1naXQgYS9zcmMvY29t
cGlsZXIvdHJhbnNsYXRvci9nbHNsYW5nX3RhYl9hdXRvZ2VuLmNwcCBiL3NyYy9jb21waWxlci90
cmFuc2xhdG9yL2dsc2xhbmdfdGFiX2F1dG9nZW4uY3BwCi1pbmRleCA4MjgzN2JmLi4yYzU4MGI1
IDEwMDY0NAoraW5kZXggODI4MzdiZmFmLi4yYzU4MGI1YzAgMTAwNjQ0CiAtLS0gYS9zcmMvY29t
cGlsZXIvdHJhbnNsYXRvci9nbHNsYW5nX3RhYl9hdXRvZ2VuLmNwcAogKysrIGIvc3JjL2NvbXBp
bGVyL3RyYW5zbGF0b3IvZ2xzbGFuZ190YWJfYXV0b2dlbi5jcHAKIEBAIC0xLDUgKzEsOCBAQApA
QCAtMTg1LDcgKzE5NTM3LDcgQEAgaW5kZXggODI4MzdiZi4uMmM1ODBiNSAxMDA2NDQKICAKICAg
ICBDb3B5cmlnaHQgKEMpIDE5ODQsIDE5ODktMTk5MCwgMjAwMC0yMDE1LCAyMDE4LTIwMTkgRnJl
ZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLAogZGlmZiAtLWdpdCBhL3NyYy9jb21waWxlci90cmFuc2xh
dG9yL2dsc2xhbmdfdGFiX2F1dG9nZW4uaCBiL3NyYy9jb21waWxlci90cmFuc2xhdG9yL2dsc2xh
bmdfdGFiX2F1dG9nZW4uaAotaW5kZXggZDJlYWIwYi4uMmVjMmQyYyAxMDA2NDQKK2luZGV4IGQy
ZWFiMGI3Yi4uMmVjMmQyYzQ0IDEwMDY0NAogLS0tIGEvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3Iv
Z2xzbGFuZ190YWJfYXV0b2dlbi5oCiArKysgYi9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci9nbHNs
YW5nX3RhYl9hdXRvZ2VuLmgKIEBAIC0xLDUgKzEsOCBAQApAQCAtMTk4LDcgKzE5NTUwLDcgQEAg
aW5kZXggZDJlYWIwYi4uMmVjMmQyYyAxMDA2NDQKICAKICAgICBDb3B5cmlnaHQgKEMpIDE5ODQs
IDE5ODktMTk5MCwgMjAwMC0yMDE1LCAyMDE4LTIwMTkgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9u
LAogZGlmZiAtLWdpdCBhL3NyYy9jb21waWxlci90cmFuc2xhdG9yL2dsc2xhbmdfd3JhcHBlci5j
cHAgYi9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci9nbHNsYW5nX3dyYXBwZXIuY3BwCi1pbmRleCAx
ODdmMzUwLi4zZGU3NTk3IDEwMDY0NAoraW5kZXggMTg3ZjM1MDAxLi4zZGU3NTk3ZDEgMTAwNjQ0
CiAtLS0gYS9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci9nbHNsYW5nX3dyYXBwZXIuY3BwCiArKysg
Yi9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci9nbHNsYW5nX3dyYXBwZXIuY3BwCiBAQCAtMTAsNiAr
MTAsNyBAQApAQCAtMjEwLDcgKzE5NTYyLDcgQEAgaW5kZXggMTg3ZjM1MC4uM2RlNzU5NyAxMDA2
NDQKICAKICAvLyBnbHNsYW5nIGhhcyBpc3N1ZXMgd2l0aCBzb21lIHNwZWNpZmljIHdhcm5pbmdz
LgogZGlmZiAtLWdpdCBhL3NyYy9jb21waWxlci90cmFuc2xhdG9yL3RyZWVfb3BzL2FwcGxlL1Vu
Zm9sZFNob3J0Q2lyY3VpdEFTVC5jcHAgYi9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci90cmVlX29w
cy9hcHBsZS9VbmZvbGRTaG9ydENpcmN1aXRBU1QuY3BwCi1pbmRleCA1NWUyZjhiLi40MjM3NTU4
IDEwMDY0NAoraW5kZXggNTVlMmY4Yjk3Li40MjM3NTU4NTIgMTAwNjQ0CiAtLS0gYS9zcmMvY29t
cGlsZXIvdHJhbnNsYXRvci90cmVlX29wcy9hcHBsZS9VbmZvbGRTaG9ydENpcmN1aXRBU1QuY3Bw
CiArKysgYi9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci90cmVlX29wcy9hcHBsZS9VbmZvbGRTaG9y
dENpcmN1aXRBU1QuY3BwCiBAQCAtMTAsNiArMTAsNyBAQApAQCAtMjI5LDcgKzE5NTgxLDcgQEAg
aW5kZXggNTVlMmY4Yi4uNDIzNzU1OCAxMDA2NDQKICsjZW5kaWYKICB9ICAvLyBuYW1lc3BhY2Ug
c2gKIGRpZmYgLS1naXQgYS9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci90cmVlX29wcy9hcHBsZS9V
bmZvbGRTaG9ydENpcmN1aXRBU1QuaCBiL3NyYy9jb21waWxlci90cmFuc2xhdG9yL3RyZWVfb3Bz
L2FwcGxlL1VuZm9sZFNob3J0Q2lyY3VpdEFTVC5oCi1pbmRleCBhZDNjYzA4Li43NTA2OWM1IDEw
MDY0NAoraW5kZXggYWQzY2MwODBkLi43NTA2OWM1NzIgMTAwNjQ0CiAtLS0gYS9zcmMvY29tcGls
ZXIvdHJhbnNsYXRvci90cmVlX29wcy9hcHBsZS9VbmZvbGRTaG9ydENpcmN1aXRBU1QuaAogKysr
IGIvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvdHJlZV9vcHMvYXBwbGUvVW5mb2xkU2hvcnRDaXJj
dWl0QVNULmgKIEBAIC0xMSw3ICsxMSw3IEBACkBAIC0yNDIsMTAgKzE5NTk0LDEwIEBAIGluZGV4
IGFkM2NjMDguLjc1MDY5YzUgMTAwNjQ0CiAgewogIAogZGlmZiAtLWdpdCBhL3NyYy9saWJBTkdM
RS9Db250ZXh0LmNwcCBiL3NyYy9saWJBTkdMRS9Db250ZXh0LmNwcAotaW5kZXggNjg1YjIzNS4u
OTNiNjY3NiAxMDA3NTUKK2luZGV4IDQyNmFjZDlhNy4uNmU2YzBkNDgwIDEwMDc1NQogLS0tIGEv
c3JjL2xpYkFOR0xFL0NvbnRleHQuY3BwCiArKysgYi9zcmMvbGliQU5HTEUvQ29udGV4dC5jcHAK
LUBAIC05MjA3LDcgKzkyMDcsNyBAQCBlZ2w6OkVycm9yIENvbnRleHQ6OnNldERlZmF1bHRGcmFt
ZWJ1ZmZlcihlZ2w6OlN1cmZhY2UgKmRyYXdTdXJmYWNlLCBlZ2w6OlN1cmZhYworQEAgLTkyNjAs
NyArOTI2MCw3IEBAIGVnbDo6RXJyb3IgQ29udGV4dDo6c2V0RGVmYXVsdEZyYW1lYnVmZmVyKGVn
bDo6U3VyZmFjZSAqZHJhd1N1cmZhY2UsIGVnbDo6U3VyZmFjCiAgICAgIEFTU0VSVChtQ3VycmVu
dERyYXdTdXJmYWNlID09IG51bGxwdHIpOwogICAgICBBU1NFUlQobUN1cnJlbnRSZWFkU3VyZmFj
ZSA9PSBudWxscHRyKTsKICAKQEAgLTI1NCw3ICsxOTYwNiw3IEBAIGluZGV4IDY4NWIyMzUuLjkz
YjY2NzYgMTAwNzU1CiAgCiAgICAgIG1DdXJyZW50RHJhd1N1cmZhY2UgPSBkcmF3U3VyZmFjZTsK
ICAgICAgbUN1cnJlbnRSZWFkU3VyZmFjZSA9IHJlYWRTdXJmYWNlOwotQEAgLTkyMTksNyArOTIx
OSw3IEBAIGVnbDo6RXJyb3IgQ29udGV4dDo6c2V0RGVmYXVsdEZyYW1lYnVmZmVyKGVnbDo6U3Vy
ZmFjZSAqZHJhd1N1cmZhY2UsIGVnbDo6U3VyZmFjCitAQCAtOTI3Miw3ICs5MjcyLDcgQEAgZWds
OjpFcnJvciBDb250ZXh0OjpzZXREZWZhdWx0RnJhbWVidWZmZXIoZWdsOjpTdXJmYWNlICpkcmF3
U3VyZmFjZSwgZWdsOjpTdXJmYWMKICAgICAgfQogICAgICBlbHNlCiAgICAgIHsKQEAgLTI2Myw3
ICsxOTYxNSw3IEBAIGluZGV4IDY4NWIyMzUuLjkzYjY2NzYgMTAwNzU1CiAgICAgIH0KICAgICAg
QVNTRVJUKG5ld0RlZmF1bHRGcmFtZWJ1ZmZlcik7CiAgCi1AQCAtOTIzMCwxNCArOTIzMCwxNCBA
QCBlZ2w6OkVycm9yIENvbnRleHQ6OnNldERlZmF1bHRGcmFtZWJ1ZmZlcihlZ2w6OlN1cmZhY2Ug
KmRyYXdTdXJmYWNlLCBlZ2w6OlN1cmZhYworQEAgLTkyODMsMTQgKzkyODMsMTQgQEAgZWdsOjpF
cnJvciBDb250ZXh0OjpzZXREZWZhdWx0RnJhbWVidWZmZXIoZWdsOjpTdXJmYWNlICpkcmF3U3Vy
ZmFjZSwgZWdsOjpTdXJmYWMKICAKICAgICAgLy8gVXBkYXRlIGRlZmF1bHQgZnJhbWVidWZmZXIs
IHRoZSBiaW5kaW5nIG9mIHRoZSBwcmV2aW91cyBkZWZhdWx0CiAgICAgIC8vIGZyYW1lYnVmZmVy
IChvciBsYWNrIG9mKSB3aWxsIGhhdmUgYSBudWxscHRyLgpAQCAtMjgyLDcgKzE5NjM0LDcgQEAg
aW5kZXggNjg1YjIzNS4uOTNiNjY3NiAxMDA3NTUKICAKICAgICAgcmV0dXJuIGVnbDo6Tm9FcnJv
cigpOwogZGlmZiAtLWdpdCBhL3NyYy9saWJBTkdMRS9TdGF0ZS5jcHAgYi9zcmMvbGliQU5HTEUv
U3RhdGUuY3BwCi1pbmRleCAyZjdjM2RjLi40YTg3ZjBkIDEwMDY0NAoraW5kZXggYjk3YmJiNGYx
Li4zZmY0NzMwZWQgMTAwNjQ0CiAtLS0gYS9zcmMvbGliQU5HTEUvU3RhdGUuY3BwCiArKysgYi9z
cmMvbGliQU5HTEUvU3RhdGUuY3BwCiBAQCAtNiw2ICs2LDkgQEAKQEAgLTI5NiwxMSArMTk2NDgs
MTEgQEAgaW5kZXggMmY3YzNkYy4uNGE4N2YwZCAxMDA2NDQKICAKICAjaW5jbHVkZSA8c3RyaW5n
Lmg+CiBkaWZmIC0tZ2l0IGEvc3JjL2xpYkFOR0xFL1N1cmZhY2UuY3BwIGIvc3JjL2xpYkFOR0xF
L1N1cmZhY2UuY3BwCi1pbmRleCAxY2Q4YTAwLi44YjIxODZlIDEwMDY0NAoraW5kZXggYTgyMGYx
ODkwLi43NDUxN2YyNGQgMTAwNjQ0CiAtLS0gYS9zcmMvbGliQU5HTEUvU3VyZmFjZS5jcHAKICsr
KyBiL3NyYy9saWJBTkdMRS9TdXJmYWNlLmNwcAotQEAgLTYyNCwxMCArNjI0LDEwIEBAIEVycm9y
IFN1cmZhY2U6OmdldEJ1ZmZlckFnZShjb25zdCBnbDo6Q29udGV4dCAqY29udGV4dCwgRUdMaW50
ICphZ2UpIGNvbnN0Ci0gICAgIHJldHVybiBtSW1wbGVtZW50YXRpb24tPmdldEJ1ZmZlckFnZShj
b250ZXh0LCBhZ2UpOworQEAgLTY0MCwxMCArNjQwLDEwIEBAIEVycm9yIFN1cmZhY2U6OmdldEJ1
ZmZlckFnZShjb25zdCBnbDo6Q29udGV4dCAqY29udGV4dCwgRUdMaW50ICphZ2UpCisgICAgIHJl
dHVybiBlcnI7CiAgfQogIAogLWdsOjpGcmFtZWJ1ZmZlciAqU3VyZmFjZTo6Y3JlYXRlRGVmYXVs
dEZyYW1lYnVmZmVyKGNvbnN0IGdsOjpDb250ZXh0ICpjb250ZXh0LApAQCAtMzEzLDcgKzE5NjY1
LDcgQEAgaW5kZXggMWNkOGEwMC4uOGIyMTg2ZSAxMDA2NDQKICAKICBnbDo6SW5pdFN0YXRlIFN1
cmZhY2U6OmluaXRTdGF0ZShjb25zdCBnbDo6SW1hZ2VJbmRleCAmIC8qaW1hZ2VJbmRleCovKSBj
b25zdAogZGlmZiAtLWdpdCBhL3NyYy9saWJBTkdMRS9TdXJmYWNlLmggYi9zcmMvbGliQU5HTEUv
U3VyZmFjZS5oCi1pbmRleCA5OGEzYjg2Li4wODU2YTYyIDEwMDY0NAoraW5kZXggMTdkZGVhYTkx
Li5mZjE2YzRhYjkgMTAwNjQ0CiAtLS0gYS9zcmMvbGliQU5HTEUvU3VyZmFjZS5oCiArKysgYi9z
cmMvbGliQU5HTEUvU3VyZmFjZS5oCiBAQCAtMTA1LDcgKzEwNSw3IEBAIGNsYXNzIFN1cmZhY2Ug
OiBwdWJsaWMgTGFiZWxlZE9iamVjdCwgcHVibGljIGdsOjpGcmFtZWJ1ZmZlckF0dGFjaG1lbnRP
YmplY3QKQEAgLTMyNSw3ICsxOTY3Nyw3IEBAIGluZGV4IDk4YTNiODYuLjA4NTZhNjIgMTAwNjQ0
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBlZ2w6OlN1cmZhY2UgKnJlYWRTdXJmYWNlKTsKICAKICAgICAgY29uc3QgQ29uZmln
ICpnZXRDb25maWcoKSBjb25zdDsKLUBAIC0yMTYsOCArMjE2LDYgQEAgY2xhc3MgU3VyZmFjZSA6
IHB1YmxpYyBMYWJlbGVkT2JqZWN0LCBwdWJsaWMgZ2w6OkZyYW1lYnVmZmVyQXR0YWNobWVudE9i
amVjdAorQEAgLTIyMCw4ICsyMjAsNiBAQCBjbGFzcyBTdXJmYWNlIDogcHVibGljIExhYmVsZWRP
YmplY3QsIHB1YmxpYyBnbDo6RnJhbWVidWZmZXJBdHRhY2htZW50T2JqZWN0CiAgICAgIH5TdXJm
YWNlKCkgb3ZlcnJpZGU7CiAgICAgIHJ4OjpGcmFtZWJ1ZmZlckF0dGFjaG1lbnRPYmplY3RJbXBs
ICpnZXRBdHRhY2htZW50SW1wbCgpIGNvbnN0IG92ZXJyaWRlOwogIApAQCAtMzM1LDcgKzE5Njg3
LDcgQEAgaW5kZXggOThhM2I4Ni4uMDg1NmE2MiAxMDA2NDQKICAgICAgZnJpZW5kIGNsYXNzIGds
OjpUZXh0dXJlOwogICAgICBFcnJvciByZWxlYXNlVGV4SW1hZ2VGcm9tVGV4dHVyZShjb25zdCBn
bDo6Q29udGV4dCAqY29udGV4dCk7CiBkaWZmIC0tZ2l0IGEvc3JjL2xpYkFOR0xFL3JlbmRlcmVy
L2RyaXZlcl91dGlscy5jcHAgYi9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZHJpdmVyX3V0aWxzLmNw
cAotaW5kZXggYmZkZjBmZi4uNmU1MDk3NiAxMDA2NDQKK2luZGV4IGJmZGYwZmY3Ni4uNmU1MDk3
NjUzIDEwMDY0NAogLS0tIGEvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2RyaXZlcl91dGlscy5jcHAK
ICsrKyBiL3NyYy9saWJBTkdMRS9yZW5kZXJlci9kcml2ZXJfdXRpbHMuY3BwCiBAQCAtMTY0LDYg
KzE2NCwxMCBAQCBjb25zdCBjaGFyICpHZXRWZW5kb3JTdHJpbmcodWludDMyX3QgdmVuZG9ySWQp
CkBAIC0zNTAsNyArMTk3MDIsNyBAQCBpbmRleCBiZmRmMGZmLi42ZTUwOTc2IDEwMDY0NAogICAg
ICAgICAgICAgIHJldHVybiAiVGVzdCI7CiAgICAgICAgICBjYXNlIDA6CiBkaWZmIC0tZ2l0IGEv
c3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9JT1N1cmZhY2VTdXJmYWNlQ0dMLmNwcCBiL3Ny
Yy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvSU9TdXJmYWNlU3VyZmFjZUNHTC5jcHAKLWluZGV4
IGEyYjQ0ZDIuLjIwZWM4NWEgMTAwNjQ0CitpbmRleCBhMmI0NGQyYmYuLjIwZWM4NWE1MCAxMDA2
NDQKIC0tLSBhL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvSU9TdXJmYWNlU3VyZmFjZUNH
TC5jcHAKICsrKyBiL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvSU9TdXJmYWNlU3VyZmFj
ZUNHTC5jcHAKIEBAIC0yNTAsMTIgKzI1MCwxMCBAQCBib29sIElPU3VyZmFjZVN1cmZhY2VDR0w6
OnZhbGlkYXRlQXR0cmlidXRlcyhFR0xDbGllbnRCdWZmZXIgYnVmZmVyLApAQCAtMzcxLDcgKzE5
NzIzLDcgQEAgaW5kZXggYTJiNDRkMi4uMjBlYzg1YSAxMDA2NDQKICAgICAgcmV0dXJuIHRydWU7
CiAgfQogZGlmZiAtLWdpdCBhL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbHNsYW5nX3dyYXBwZXJf
dXRpbHMuaCBiL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbHNsYW5nX3dyYXBwZXJfdXRpbHMuaAot
aW5kZXggZDI3NzE1ZC4uNzVkMjUyZiAxMDA2NDQKK2luZGV4IGQyNzcxNWQ5NC4uNzVkMjUyZjdh
IDEwMDY0NAogLS0tIGEvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsc2xhbmdfd3JhcHBlcl91dGls
cy5oCiArKysgYi9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2xzbGFuZ193cmFwcGVyX3V0aWxzLmgK
IEBAIC0xMCw3ICsxMCw2IEBACkBAIC00MDAsMTAgKzE5NzUyLDEwIEBAIGluZGV4IGQyNzcxNWQu
Ljc1ZDI1MmYgMTAwNjQ0CiAgfSAgLy8gbmFtZXNwYWNlIHJ4CiAgCiBkaWZmIC0tZ2l0IGEvc3Jj
L2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL0J1ZmZlck10bC5tbSBiL3NyYy9saWJBTkdMRS9yZW5k
ZXJlci9tZXRhbC9CdWZmZXJNdGwubW0KLWluZGV4IDI3OTkyM2YuLjkwMGFlYTggMTAwNjQ0Citp
bmRleCAyNzk5MjNmZjIuLjkwMGFlYThhZiAxMDA2NDQKIC0tLSBhL3NyYy9saWJBTkdMRS9yZW5k
ZXJlci9tZXRhbC9CdWZmZXJNdGwubW0KICsrKyBiL3NyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRh
bC9CdWZmZXJNdGwubW0KLUBAIC0zNjUsNyArMzY1LDcgQEAKK0BAIC0zNjUsNyArMzY1LDcgQEAg
Q29udmVyc2lvbkJ1ZmZlck10bCAqQnVmZmVyTXRsOjpnZXRVbmlmb3JtQ29udmVyc2lvbkJ1ZmZl
cihDb250ZXh0TXRsICpjb250ZXh0LAogICAgICB7CiAgICAgICAgICBpZiAoYnVmZmVyLm9mZnNl
dCA9PSBvZmZzZXQpCiAgICAgICAgICB7CkBAIC00MTIsNyArMTk3NjQsNyBAQCBpbmRleCAyNzk5
MjNmLi45MDBhZWE4IDEwMDY0NAogICAgICAgICAgfQogICAgICB9CiAgCi1AQCAtNTIwLDcgKzUy
MCw3IEBACitAQCAtNTIwLDcgKzUyMCw3IEBAIGFuZ2xlOjpSZXN1bHQgQnVmZmVyTXRsOjpzZXRE
YXRhSW1wbChjb25zdCBnbDo6Q29udGV4dCAqY29udGV4dCwKICAgICAgICAgIGRlZmF1bHQ6CiAg
ICAgICAgICAgICAgLy8gZHluYW1pYyBidWZmZXIsIGFsbG93IHVwIHRvIDEwIHVwZGF0ZSBwZXIg
ZnJhbWUvZW5jb2Rpbmcgd2l0aG91dAogICAgICAgICAgICAgIC8vIHdhaXRpbmcgZm9yIEdQVS4K
QEAgLTQyMiwxMCArMTk3NzQsMTAgQEAgaW5kZXggMjc5OTIzZi4uOTAwYWVhOCAxMDA2NDQKICAg
ICAgICAgICAgICAgICAgbWF4QnVmZmVycyA9IDEwOwogICAgICAgICAgICAgICAgICBtQnVmZmVy
UG9vbC5zZXRBbHdheXNVc2VTaGFyZWRNZW0oKTsKIGRpZmYgLS1naXQgYS9zcmMvbGliQU5HTEUv
cmVuZGVyZXIvbWV0YWwvRGlzcGxheU10bC5tbSBiL3NyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRh
bC9EaXNwbGF5TXRsLm1tCi1pbmRleCBkZjlhNmU2Li42NTUyNDMyIDEwMDY0NAoraW5kZXggZGE1
YjFjOTlmLi42NDk4YWY4OTEgMTAwNjQ0CiAtLS0gYS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0
YWwvRGlzcGxheU10bC5tbQogKysrIGIvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL0Rpc3Bs
YXlNdGwubW0KLUBAIC0yNTQsOSArMjU0LDEwIEBAIGJvb2wgSXNNZXRhbERpc3BsYXlBdmFpbGFi
bGUoKQorQEAgLTI1NCw5ICsyNTQsMTAgQEAgbXRsOjpBdXRvT2JqQ1B0cjxpZDxNVExEZXZpY2U+
PiBEaXNwbGF5TXRsOjpnZXRNZXRhbERldmljZU1hdGNoaW5nQXR0cmlidXRlKAogICAgICAgICAg
fQogICAgICB9CiAgCkBAIC00MzksNyArMTk3OTEsNyBAQCBpbmRleCBkZjlhNmU2Li42NTUyNDMy
IDEwMDY0NAogICAgICBmb3IgKGlkPE1UTERldmljZT4gZGV2aWNlIGluIGRldmljZUxpc3QuZ2V0
KCkpCiAgICAgIHsKICAgICAgICAgIGlmIChkZXZpY2UucmVtb3ZhYmxlKQotQEAgLTI3OCw3ICsy
NzksNyBAQCBib29sIElzTWV0YWxEaXNwbGF5QXZhaWxhYmxlKCkKK0BAIC0yNzgsNyArMjc5LDcg
QEAgbXRsOjpBdXRvT2JqQ1B0cjxpZDxNVExEZXZpY2U+PiBEaXNwbGF5TXRsOjpnZXRNZXRhbERl
dmljZU1hdGNoaW5nQXR0cmlidXRlKAogICAgICBpZiAoYXR0cmlicy5nZXQoRUdMX1BPV0VSX1BS
RUZFUkVOQ0VfQU5HTEUsIDApID09IEVHTF9ISUdIX1BPV0VSX0FOR0xFKQogICAgICB7CiAgICAg
ICAgICAvLyBTZWFyY2ggZm9yIGEgZGlzY3JldGUgR1BVIGZpcnN0LgpAQCAtNDQ4LDcgKzE5ODAw
LDcgQEAgaW5kZXggZGY5YTZlNi4uNjU1MjQzMiAxMDA2NDQKICAgICAgICAgIHsKICAgICAgICAg
ICAgICBpZiAoIVtkZXZpY2UgaXNIZWFkbGVzc10pCiAgICAgICAgICAgICAgICAgIHJldHVybiBk
ZXZpY2U7Ci1AQCAtMjg3LDcgKzI4OCw3IEBAIGJvb2wgSXNNZXRhbERpc3BsYXlBdmFpbGFibGUo
KQorQEAgLTI4Nyw3ICsyODgsNyBAQCBtdGw6OkF1dG9PYmpDUHRyPGlkPE1UTERldmljZT4+IERp
c3BsYXlNdGw6OmdldE1ldGFsRGV2aWNlTWF0Y2hpbmdBdHRyaWJ1dGUoCiAgICAgIGVsc2UgaWYg
KGF0dHJpYnMuZ2V0KEVHTF9QT1dFUl9QUkVGRVJFTkNFX0FOR0xFLCAwKSA9PSBFR0xfTE9XX1BP
V0VSX0FOR0xFKQogICAgICB7CiAgICAgICAgICAvLyBJZiB3ZSd2ZSBzZWxlY3RlZCBhIGxvdyBw
b3dlciBkZXZpY2UsIGxvb2sgdGhyb3VnaCBpbnRlZ3JhdGVkIGRldmljZXMuCkBAIC00NTcsNyAr
MTk4MDksNyBAQCBpbmRleCBkZjlhNmU2Li42NTUyNDMyIDEwMDY0NAogICAgICAgICAgewogICAg
ICAgICAgICAgIGlmICghW2RldmljZSBpc0hlYWRsZXNzXSkKICAgICAgICAgICAgICAgICAgcmV0
dXJuIGRldmljZTsKLUBAIC0zMTAsNiArMzExLDE3IEBAIGJvb2wgSXNNZXRhbERpc3BsYXlBdmFp
bGFibGUoKQorQEAgLTMxMCw2ICszMTEsMTcgQEAgbXRsOjpBdXRvT2JqQ1B0cjxpZDxNVExEZXZp
Y2U+PiBEaXNwbGF5TXRsOjpnZXRNZXRhbERldmljZU1hdGNoaW5nQXR0cmlidXRlKAogICAgICAg
ICAgfQogICAgICB9CiAgCkBAIC00NzUsNyArMTk4MjcsNyBAQCBpbmRleCBkZjlhNmU2Li42NTUy
NDMyIDEwMDY0NAogICNlbmRpZgogICAgICAvLyBJZiB3ZSBjYW4ndCBmaW5kIGFueXRoaW5nLCBv
ciBhcmUgb24gYSBwbGF0Zm9ybSB0aGF0IGRvZXNuJ3Qgc3VwcG9ydCBwb3dlciBvcHRpb25zLCBj
cmVhdGUgYQogICAgICAvLyBkZWZhdWx0IGRldmljZS4KLUBAIC0xMjAzLDggKzEyMTUsNyBAQCBi
b29sIElzTWV0YWxEaXNwbGF5QXZhaWxhYmxlKCkKK0BAIC0xMjA5LDggKzEyMjEsNyBAQCBib29s
IERpc3BsYXlNdGw6OnN1cHBvcnRzRWl0aGVyR1BVRmFtaWx5KHVpbnQ4X3QgaU9TRmFtaWx5LCB1
aW50OF90IG1hY0ZhbWlseSkgYwogIGJvb2wgRGlzcGxheU10bDo6c3VwcG9ydHMzMkJpdEZsb2F0
RmlsdGVyaW5nKCkgY29uc3QKICB7CiAgI2lmIChkZWZpbmVkKF9fTUFDXzExXzApICYmIF9fTUFD
X09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gX19NQUNfMTFfMCkgfHwgICAgICAgIFwKQEAg
LTQ4NiwyMCArMTk4MzgsMjAgQEAgaW5kZXggZGY5YTZlNi4uNjU1MjQzMiAxMDA2NDQKICAgICAg
ewogICAgICAgICAgcmV0dXJuIFttTWV0YWxEZXZpY2Ugc3VwcG9ydHMzMkJpdEZsb2F0RmlsdGVy
aW5nXTsKIGRpZmYgLS1naXQgYS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvRnJhbWVCdWZm
ZXJNdGwubW0gYi9zcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvRnJhbWVCdWZmZXJNdGwubW0K
LWluZGV4IDliNDc0NjAuLmZjY2UyZTIgMTAwNjQ0CitpbmRleCAyMmU0YzcyZjEuLjQwYmEwNWM3
NSAxMDA2NDQKIC0tLSBhL3NyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9GcmFtZUJ1ZmZlck10
bC5tbQogKysrIGIvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL0ZyYW1lQnVmZmVyTXRsLm1t
Ci1AQCAtMTY2MSw1ICsxNjYxLDQgQEAgdm9pZCBSb3VuZFZhbHVlQW5kQWRqdXN0Q29ycmVzcG9u
ZGluZ1ZhbHVlKGZsb2F0IGEsCitAQCAtMTY1MSw1ICsxNjUxLDQgQEAgYW5nbGU6OlJlc3VsdCBG
cmFtZWJ1ZmZlck10bDo6cmVhZFBpeGVsc1RvQnVmZmVyKGNvbnN0IGdsOjpDb250ZXh0ICpjb250
ZXh0LAogIAogICAgICByZXR1cm4gYW5nbGU6OlJlc3VsdDo6Q29udGludWU7CiAgfQogLQogIH0K
IGRpZmYgLS1naXQgYS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvSU9TdXJmYWNlU3VyZmFj
ZU10bC5tbSBiL3NyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9JT1N1cmZhY2VTdXJmYWNlTXRs
Lm1tCi1pbmRleCBhYjcyODNhLi4xMDAwODY3IDEwMDY0NAoraW5kZXggYWI3MjgzYWUxLi4xMDAw
ODY3NTkgMTAwNjQ0CiAtLS0gYS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvSU9TdXJmYWNl
U3VyZmFjZU10bC5tbQogKysrIGIvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL0lPU3VyZmFj
ZVN1cmZhY2VNdGwubW0KLUBAIC0yMTksMTIgKzIxOSwxMCBAQCBpbnQgRmluZElPU3VyZmFjZUZv
cm1hdEluZGV4KEdMZW51bSBpbnRlcm5hbEZvcm1hdCwgR0xlbnVtIHR5cGUpCitAQCAtMjE5LDEy
ICsyMTksMTAgQEAgYm9vbCBJT1N1cmZhY2VTdXJmYWNlTXRsOjpWYWxpZGF0ZUF0dHJpYnV0ZXMo
RUdMQ2xpZW50QnVmZmVyIGJ1ZmZlciwKICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgfQog
IApAQCAtNTE3LDEwICsxOTg2OSwxMCBAQCBpbmRleCBhYjcyODNhLi4xMDAwODY3IDEwMDY0NAog
ICAgICByZXR1cm4gdHJ1ZTsKICB9CiBkaWZmIC0tZ2l0IGEvc3JjL2xpYkFOR0xFL3JlbmRlcmVy
L21ldGFsL1Byb2dyYW1NdGwubW0gYi9zcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvUHJvZ3Jh
bU10bC5tbQotaW5kZXggZjE0ZjE1Yy4uNGFlOWY4ZiAxMDA2NDQKK2luZGV4IGYxNGYxNWNlOC4u
NGFlOWY4ZjM5IDEwMDY0NAogLS0tIGEvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL1Byb2dy
YW1NdGwubW0KICsrKyBiL3NyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9Qcm9ncmFtTXRsLm1t
Ci1AQCAtNTg5LDcgKzU4OSw3IEBAIHZvaWQgSW5pdEFyZ3VtZW50QnVmZmVyRW5jb2RlcihtdGw6
OkNvbnRleHQgKmNvbnRleHQsCitAQCAtNTg5LDcgKzU4OSw3IEBAIGFuZ2xlOjpSZXN1bHQgUHJv
Z3JhbU10bDo6Z2V0U3BlY2lhbGl6ZWRTaGFkZXIoQ29udGV4dE10bCAqY29udGV4dCwKICAKICAg
ICAgbXRsOjpUcmFuc2xhdGVkU2hhZGVySW5mbyAqdHJhbnNsYXRlZE1zbEluZm8gPSAmbU1zbFNo
YWRlclRyYW5zbGF0ZUluZm9bc2hhZGVyVHlwZV07CiAgICAgIFByb2dyYW1TaGFkZXJPYmpWYXJp
YW50TXRsICpzaGFkZXJWYXJpYW50OwpAQCAtNTI5LDcgKzE5ODgxLDcgQEAgaW5kZXggZjE0ZjE1
Yy4uNGFlOWY4ZiAxMDA2NDQKICAKICAgICAgaWYgKHNoYWRlclR5cGUgPT0gZ2w6OlNoYWRlclR5
cGU6OlZlcnRleCkKICAgICAgewotQEAgLTYzOSw3ICs2MzksNyBAQCB2b2lkIEluaXRBcmd1bWVu
dEJ1ZmZlckVuY29kZXIobXRsOjpDb250ZXh0ICpjb250ZXh0LAorQEAgLTYzOSw3ICs2MzksNyBA
QCBhbmdsZTo6UmVzdWx0IFByb2dyYW1NdGw6OmdldFNwZWNpYWxpemVkU2hhZGVyKENvbnRleHRN
dGwgKmNvbnRleHQsCiAgICAgICAgICAgICAgICAgICAgICBbTlNTdHJpbmcgc3RyaW5nV2l0aFVU
RjhTdHJpbmc6c2g6Om10bDo6a1Jhc3Rlcml6ZXJEaXNjYXJkRW5hYmxlZENvbnN0TmFtZV07CiAg
ICAgICAgICAgICAgfQogIApAQCAtNTM4LDcgKzE5ODkwLDcgQEAgaW5kZXggZjE0ZjE1Yy4uNGFl
OWY4ZiAxMDA2NDQKICAgICAgICAgICAgICBbZnVuY0NvbnN0YW50cyBzZXRDb25zdGFudFZhbHVl
OiZlbXVsYXRlRGlzY2FyZAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHR5cGU6TVRMRGF0YVR5cGVCb29sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICB3aXRoTmFtZTpkaXNjYXJkRW5hYmxlZFN0cl07Ci1AQCAtNjc1LDE0ICs2NzUsMTUgQEAgdm9p
ZCBJbml0QXJndW1lbnRCdWZmZXJFbmNvZGVyKG10bDo6Q29udGV4dCAqY29udGV4dCwKK0BAIC02
NzUsMTQgKzY3NSwxNSBAQCBhbmdsZTo6UmVzdWx0IFByb2dyYW1NdGw6OmdldFNwZWNpYWxpemVk
U2hhZGVyKENvbnRleHRNdGwgKmNvbnRleHQsCiAgICAgICAgICAgICAgICAgICAgICBbTlNTdHJp
bmcgc3RyaW5nV2l0aFVURjhTdHJpbmc6c2g6Om10bDo6a0NvdmVyYWdlTWFza0VuYWJsZWRDb25z
dE5hbWVdOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAKQEAgLTU1Nyw3ICsxOTkwOSw3
IEBAIGluZGV4IGYxNGYxNWMuLjRhZTlmOGYgMTAwNjQ0CiAgICAgICAgICAgICAgTVRMUGl4ZWxG
b3JtYXQgZGVwdGhQaXhlbEZvcm1hdCA9CiAgICAgICAgICAgICAgICAgIChNVExQaXhlbEZvcm1h
dClyZW5kZXJQaXBlbGluZURlc2Mub3V0cHV0RGVzY3JpcHRvci5kZXB0aEF0dGFjaG1lbnRQaXhl
bEZvcm1hdDsKICAgICAgICAgICAgICBCT09MIGZyYWdEZXB0aFdyaXRlRW5hYmxlZCA9IGRlcHRo
UGl4ZWxGb3JtYXQgIT0gTVRMUGl4ZWxGb3JtYXRJbnZhbGlkOwotQEAgLTcwNSwxMiArNzA2LDEy
IEBAIHZvaWQgSW5pdEFyZ3VtZW50QnVmZmVyRW5jb2RlcihtdGw6OkNvbnRleHQgKmNvbnRleHQs
CitAQCAtNzA1LDEyICs3MDYsMTIgQEAgYW5nbGU6OlJlc3VsdCBQcm9ncmFtTXRsOjpnZXRTcGVj
aWFsaXplZFNoYWRlcihDb250ZXh0TXRsICpjb250ZXh0LAogICAgICAgICAgc2V0Q29uc3RhbnRW
YWx1ZTomKGNvbnRleHQtPmdldERpc3BsYXkoKS0+Z2V0RmVhdHVyZXMoKS5hbGxvd1NhbXBsZXJD
b21wYXJlTG9kLmVuYWJsZWQpCiAgICAgICAgICAgICAgICAgICAgICB0eXBlOk1UTERhdGFUeXBl
Qm9vbAogICAgICAgICAgICAgICAgICB3aXRoTmFtZTpAIkFOR0xFVXNlU2FtcGxlQ29tcGFyZUxv
ZCJdOwpAQCAtNTczLDQxICsxOTkyNSw0OSBAQCBpbmRleCBmMTRmMTVjLi40YWU5ZjhmIDEwMDY0
NAogIAogICAgICAvLyBTdG9yZSByZWZlcmVuY2UgdG8gdGhlIHRyYW5zbGF0ZWQgc291cmNlIGZv
ciBlYXNpbHkgcXVlcnlpbmcgbWFwcGVkIGJpbmRpbmdzIGxhdGVyLgogZGlmZiAtLWdpdCBhL3Ny
Yy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9TdXJmYWNlTXRsLm1tIGIvc3JjL2xpYkFOR0xFL3Jl
bmRlcmVyL21ldGFsL1N1cmZhY2VNdGwubW0KLWluZGV4IDY4NTVlNDUuLmRhYTBlNTkgMTAwNjQ0
CitpbmRleCA2ODU1ZTQ1MTYuLmRhYTBlNTljZiAxMDA2NDQKIC0tLSBhL3NyYy9saWJBTkdMRS9y
ZW5kZXJlci9tZXRhbC9TdXJmYWNlTXRsLm1tCiArKysgYi9zcmMvbGliQU5HTEUvcmVuZGVyZXIv
bWV0YWwvU3VyZmFjZU10bC5tbQotQEAgLTc3NSw1ICs3NzUsNCBAQAorQEAgLTc3NSw1ICs3NzUs
NCBAQCB2b2lkIFBCdWZmZXJTdXJmYWNlTXRsOjpzZXRGaXhlZEhlaWdodChFR0xpbnQgaGVpZ2h0
KQogIHsKICAgICAgbVNpemUuaGVpZ2h0ID0gaGVpZ2h0OwogIH0KIC0KICB9CiBkaWZmIC0tZ2l0
IGEvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL1ZlcnRleEFycmF5TXRsLmggYi9zcmMvbGli
QU5HTEUvcmVuZGVyZXIvbWV0YWwvVmVydGV4QXJyYXlNdGwuaAotaW5kZXggODZlNmEyOC4uZjU3
YWU2NiAxMDA2NDQKK2luZGV4IDg2ZTZhMjgzNi4uN2ZiM2E5OGU1IDEwMDY0NAogLS0tIGEvc3Jj
L2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL1ZlcnRleEFycmF5TXRsLmgKICsrKyBiL3NyYy9saWJB
TkdMRS9yZW5kZXJlci9tZXRhbC9WZXJ0ZXhBcnJheU10bC5oCi1AQCAtMTUxLDcgKzE1MSw3IEBA
IGNsYXNzIFZlcnRleEFycmF5TXRsIDogcHVibGljIFZlcnRleEFycmF5SW1wbAotICAgICBtdGw6
OkJ1ZmZlclBvb2wgbUR5bmFtaWNJbmRleERhdGE7Ci0gCitAQCAtMTUzLDYgKzE1Myw3IEBAIGNs
YXNzIFZlcnRleEFycmF5TXRsIDogcHVibGljIFZlcnRleEFycmF5SW1wbAogICAgICBzdGQ6OnZl
Y3Rvcjx1aW50MzJfdD4gbUVtdWxhdGVkSW5zdGFuY2VBdHRyaWJzOwotLQotKyAgICBib29sIG1F
bGVtZW50QXJyYXlEaXJ0eSA9IHRydWU7CisgCiAgICAgIGJvb2wgbVZlcnRleEFycmF5RGlydHkg
PSB0cnVlOworKyAgICBib29sIG1WZXJ0ZXhEYXRhRGlydHkgPSB0cnVlOwogIH07CiAgfSAgLy8g
bmFtZXNwYWNlIHJ4CisgCiBkaWZmIC0tZ2l0IGEvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFs
L1ZlcnRleEFycmF5TXRsLm1tIGIvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL1ZlcnRleEFy
cmF5TXRsLm1tCi1pbmRleCBiYTBjNTA1Li42ODJiNzExIDEwMDY0NAoraW5kZXggYmEwYzUwNTYx
Li5lYTM0ZjUxMWQgMTAwNjQ0CiAtLS0gYS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvVmVy
dGV4QXJyYXlNdGwubW0KICsrKyBiL3NyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9WZXJ0ZXhB
cnJheU10bC5tbQotQEAgLTI3Myw2ICsyNzMsNyBAQCBpbmxpbmUgdm9pZCBTZXREZWZhdWx0VmVy
dGV4QnVmZmVyTGF5b3V0KG10bDo6VmVydGV4QnVmZmVyTGF5b3V0RGVzYyAqbGF5b3V0KQorQEAg
LTI3Myw2ICsyNzMsNyBAQCBhbmdsZTo6UmVzdWx0IFZlcnRleEFycmF5TXRsOjpzeW5jU3RhdGUo
Y29uc3QgZ2w6OkNvbnRleHQgKmNvbnRleHQsCiAgICAgICAgICAgICAgY2FzZSBnbDo6VmVydGV4
QXJyYXk6OkRJUlRZX0JJVF9FTEVNRU5UX0FSUkFZX0JVRkZFUjoKICAgICAgICAgICAgICBjYXNl
IGdsOjpWZXJ0ZXhBcnJheTo6RElSVFlfQklUX0VMRU1FTlRfQVJSQVlfQlVGRkVSX0RBVEE6CiAg
ICAgICAgICAgICAgewotKyAgICAgICAgICAgICAgICBtRWxlbWVudEFycmF5RGlydHkgPSB0cnVl
OworKyAgICAgICAgICAgICAgICBtVmVydGV4RGF0YURpcnR5ID0gdHJ1ZTsKICAgICAgICAgICAg
ICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogIAotQEAgLTQ3NSw3ICs0NzYsMjEgQEAgaW5s
aW5lIHZvaWQgU2V0RGVmYXVsdFZlcnRleEJ1ZmZlckxheW91dChtdGw6OlZlcnRleEJ1ZmZlckxh
eW91dERlc2MgKmxheW91dCkKK0BAIC0zMDAsNyArMzAxLDcgQEAgYW5nbGU6OlJlc3VsdCBWZXJ0
ZXhBcnJheU10bDo6c3luY1N0YXRlKGNvbnN0IGdsOjpDb250ZXh0ICpjb250ZXh0LAorICAgICBj
YXNlIGdsOjpWZXJ0ZXhBcnJheTo6RElSVFlfQklUX0JVRkZFUl9EQVRBXzAgKyBJTkRFWDogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICAgQU5HTEVfVFJZ
KHN5bmNEaXJ0eUF0dHJpYihjb250ZXh0LCBhdHRyaWJzW0lOREVYXSwgYmluZGluZ3NbYXR0cmli
c1tJTkRFWF0uYmluZGluZ0luZGV4XSwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBJTkRFWCkpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgXAorLSAgICAgICAgbVZlcnRleEFycmF5RGlydHkgPSB0cnVlOyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
XAorKyAgICAgICAgbVZlcnRleERhdGFEaXJ0eSA9IHRydWU7ICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgICBi
cmVhazsKKyAKKyAgICAgICAgICAgICAgICAgQU5HTEVfVkVSVEVYX0lOREVYX0NBU0VTKEFOR0xF
X1ZFUlRFWF9ESVJUWV9CVUZGRVJfREFUQV9GVU5DKQorQEAgLTQ3NSw3ICs0NzYsMjEgQEAgYW5n
bGU6OlJlc3VsdCBWZXJ0ZXhBcnJheU10bDo6c2V0dXBEcmF3KGNvbnN0IGdsOjpDb250ZXh0ICpn
bENvbnRleHQsCiAgICAgICAgICAgICAgICAgIH0KICAKICAgICAgICAgICAgICAgICAgZGVzYy5s
YXlvdXRzW2J1ZmZlcklkeF0uc3RyaWRlID0gbUN1cnJlbnRBcnJheUJ1ZmZlclN0cmlkZXNbdl07
CkBAIC02MTUsOSArMTk5NzUsOSBAQCBpbmRleCBiYTBjNTA1Li42ODJiNzExIDEwMDY0NAogKyAg
ICAgICAgfSAgLy8gZm9yICh2KQogKyAgICB9CiArCi0rICAgIGlmKGRpcnR5IHx8IG1FbGVtZW50
QXJyYXlEaXJ0eSkKKysgICAgaWYoZGlydHkgfHwgbVZlcnRleERhdGFEaXJ0eSkKICsgICAgewot
KyAgICAgICAgbUVsZW1lbnRBcnJheURpcnR5ID0gZmFsc2U7CisrICAgICAgICBtVmVydGV4RGF0
YURpcnR5ID0gZmFsc2U7CiArICAgICAgICBjb25zdCBnbDo6UHJvZ3JhbUV4ZWN1dGFibGUgKmV4
ZWN1dGFibGUgPSBnbENvbnRleHQtPmdldFN0YXRlKCkuZ2V0UHJvZ3JhbUV4ZWN1dGFibGUoKTsK
ICsgICAgICAgIGNvbnN0IGdsOjpBdHRyaWJ1dGVzTWFzayAmcHJvZ3JhbUFjdGl2ZUF0dHJpYnNN
YXNrID0KICsgICAgICAgICAgICAgICAgZXhlY3V0YWJsZS0+Z2V0QWN0aXZlQXR0cmliTG9jYXRp
b25zTWFzaygpOwpAQCAtNjI5LDcgKzE5OTg5LDcgQEAgaW5kZXggYmEwYzUwNS4uNjgyYjcxMSAx
MDA2NDQKICAgICAgICAgICAgICBpZiAobUN1cnJlbnRBcnJheUJ1ZmZlcnNbdl0pCiAgICAgICAg
ICAgICAgewogICAgICAgICAgICAgICAgICBjbWRFbmNvZGVyLT5zZXRWZXJ0ZXhCdWZmZXIobUN1
cnJlbnRBcnJheUJ1ZmZlcnNbdl0tPmdldEN1cnJlbnRCdWZmZXIoKSwKLUBAIC00ODgsMTAgKzUw
MywxMSBAQCBpbmxpbmUgdm9pZCBTZXREZWZhdWx0VmVydGV4QnVmZmVyTGF5b3V0KG10bDo6VmVy
dGV4QnVmZmVyTGF5b3V0RGVzYyAqbGF5b3V0KQorQEAgLTQ4OCwxMCArNTAzLDExIEBAIGFuZ2xl
OjpSZXN1bHQgVmVydGV4QXJyYXlNdGw6OnNldHVwRHJhdyhjb25zdCBnbDo6Q29udGV4dCAqZ2xD
b250ZXh0LAogICAgICAgICAgICAgICAgICBjbWRFbmNvZGVyLT5zZXRWZXJ0ZXhCeXRlcyhtQ3Vy
cmVudEFycmF5SW5saW5lRGF0YVBvaW50ZXJzW3ZdLAogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBtQ3VycmVudEFycmF5SW5saW5lRGF0YVNpemVzW3ZdLCBidWZm
ZXJJZHgpOwogICAgICAgICAgICAgIH0KQEAgLTY0Miw4ICsyMDAwMiwyOSBAQCBpbmRleCBiYTBj
NTA1Li42ODJiNzExIDEwMDY0NAogICAgICAqdmVydGV4RGVzY0NoYW5nZWQgPSBkaXJ0eTsKICAK
ICAgICAgcmV0dXJuIGFuZ2xlOjpSZXN1bHQ6OkNvbnRpbnVlOworQEAgLTYzNiw2ICs2NTIsNyBA
QCBhbmdsZTo6UmVzdWx0IFZlcnRleEFycmF5TXRsOjpzeW5jRGlydHlBdHRyaWIoY29uc3QgZ2w6
OkNvbnRleHQgKmdsQ29udGV4dCwKKyAgICAgICAgIGlmIChidWZmZXJHTCkKKyAgICAgICAgIHsK
KyAgICAgICAgICAgICBCdWZmZXJNdGwgKmJ1ZmZlck10bCA9IG10bDo6R2V0SW1wbChidWZmZXJH
TCk7CisrICAgICAgICAgICAgbUNvbnRlbnRzT2JzZXJ2ZXJzLT5lbmFibGVGb3JCdWZmZXIoYnVm
ZmVyR0wsIHN0YXRpY19jYXN0PHVpbnQzMl90PihhdHRyaWJJbmRleCkpOworICAgICAgICAgICAg
IGJvb2wgbmVlZENvbnZlcnNpb24gPQorICAgICAgICAgICAgICAgICBmb3JtYXQuYWN0dWFsRm9y
bWF0SWQgIT0gZm9ybWF0LmludGVuZGVkRm9ybWF0SWQgfHwKKyAgICAgICAgICAgICAgICAgKGJp
bmRpbmcuZ2V0T2Zmc2V0KCkgJSBmb3JtYXQuYWN0dWFsQW5nbGVGb3JtYXQoKS5waXhlbEJ5dGVz
KSAhPSAwIHx8CitAQCAtNjQ1LDEyICs2NjIsMTAgQEAgYW5nbGU6OlJlc3VsdCBWZXJ0ZXhBcnJh
eU10bDo6c3luY0RpcnR5QXR0cmliKGNvbnN0IGdsOjpDb250ZXh0ICpnbENvbnRleHQsCisgCisg
ICAgICAgICAgICAgaWYgKG5lZWRDb252ZXJzaW9uKQorICAgICAgICAgICAgIHsKKy0gICAgICAg
ICAgICAgICAgbUNvbnRlbnRzT2JzZXJ2ZXJzLT5lbmFibGVGb3JCdWZmZXIoYnVmZmVyR0wsIHN0
YXRpY19jYXN0PHVpbnQzMl90PihhdHRyaWJJbmRleCkpOworICAgICAgICAgICAgICAgICBBTkdM
RV9UUlkoY29udmVydFZlcnRleEJ1ZmZlcihnbENvbnRleHQsIGJ1ZmZlck10bCwgYmluZGluZywg
YXR0cmliSW5kZXgsIGZvcm1hdCkpOworICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICBlbHNl
CisgICAgICAgICAgICAgeworLSAgICAgICAgICAgICAgICBtQ29udGVudHNPYnNlcnZlcnMtPmRp
c2FibGVGb3JCdWZmZXIoYnVmZmVyR0wsIHN0YXRpY19jYXN0PHVpbnQzMl90PihhdHRyaWJJbmRl
eCkpOworICAgICAgICAgICAgICAgICBtQ3VycmVudEFycmF5QnVmZmVyc1thdHRyaWJJbmRleF0g
ICAgICAgPSBidWZmZXJNdGw7CisgICAgICAgICAgICAgICAgIG1DdXJyZW50QXJyYXlCdWZmZXJP
ZmZzZXRzW2F0dHJpYkluZGV4XSA9IGJpbmRpbmcuZ2V0T2Zmc2V0KCk7CisgICAgICAgICAgICAg
ICAgIG1DdXJyZW50QXJyYXlCdWZmZXJTdHJpZGVzW2F0dHJpYkluZGV4XSA9IGJpbmRpbmcuZ2V0
U3RyaWRlKCk7CiBkaWZmIC0tZ2l0IGEvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF9i
dWZmZXJfcG9vbC5oIGIvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF9idWZmZXJfcG9v
bC5oCi1pbmRleCBjM2JlMTFmLi4yMDRlYmI5IDEwMDY0NAoraW5kZXggYzNiZTExZjc4Li4yMDRl
YmI5NDkgMTAwNjQ0CiAtLS0gYS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX2J1ZmZl
cl9wb29sLmgKICsrKyBiL3NyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9tdGxfYnVmZmVyX3Bv
b2wuaAogQEAgLTEyNiw3ICsxMjYsNyBAQCBjbGFzcyBCdWZmZXJQb29sCkBAIC02NTUsODkgKzIw
MDM2LDExIEBAIGluZGV4IGMzYmUxMWYuLjIwNGViYjkgMTAwNjQ0CiAgICAgIGJvb2wgbUFsd2F5
c0FsbG9jYXRlTmV3QnVmZmVyOwogIH07CiAgCi1kaWZmIC0tZ2l0IGEvc3JjL2xpYkFOR0xFL3Jl
bmRlcmVyL21ldGFsL210bF9mb3JtYXRfbWFwLmpzb24gYi9zcmMvbGliQU5HTEUvcmVuZGVyZXIv
bWV0YWwvbXRsX2Zvcm1hdF9tYXAuanNvbgotaW5kZXggYzQ1MjBjZC4uYTRlOGM2OSAxMDA2NDQK
LS0tLSBhL3NyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9tdGxfZm9ybWF0X21hcC5qc29uCi0r
KysgYi9zcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX2Zvcm1hdF9tYXAuanNvbgotQEAg
LTEyMSwxNCArMTIxLDYgQEAKLSAgICAgICAgICAgICAiQVNUQ18xMngxMl9TUkdCX0JMT0NLIjog
Ik1UTFBpeGVsRm9ybWF0QVNUQ18xMngxMl9zUkdCIgotICAgICAgICAgfSwKLSAgICAgICAgICJt
YXBfc2ltIjogewotLSAgICAgICAgICAgICJQVlJUQzFfUkdCXzRCUFBfVU5PUk1fQkxPQ0siOiAi
TVRMUGl4ZWxGb3JtYXRQVlJUQ19SR0JfNEJQUCIsCi0tICAgICAgICAgICAgIlBWUlRDMV9SR0Jf
MkJQUF9VTk9STV9CTE9DSyI6ICJNVExQaXhlbEZvcm1hdFBWUlRDX1JHQl8yQlBQIiwKLS0gICAg
ICAgICAgICAiUFZSVEMxX1JHQkFfNEJQUF9VTk9STV9CTE9DSyI6ICJNVExQaXhlbEZvcm1hdFBW
UlRDX1JHQkFfNEJQUCIsCi0tICAgICAgICAgICAgIlBWUlRDMV9SR0JBXzJCUFBfVU5PUk1fQkxP
Q0siOiAiTVRMUGl4ZWxGb3JtYXRQVlJUQ19SR0JBXzJCUFAiLAotLSAgICAgICAgICAgICJQVlJU
QzFfUkdCXzJCUFBfVU5PUk1fU1JHQl9CTE9DSyI6ICJNVExQaXhlbEZvcm1hdFBWUlRDX1JHQl8y
QlBQX3NSR0IiLAotLSAgICAgICAgICAgICJQVlJUQzFfUkdCXzRCUFBfVU5PUk1fU1JHQl9CTE9D
SyI6ICJNVExQaXhlbEZvcm1hdFBWUlRDX1JHQl80QlBQX3NSR0IiLAotLSAgICAgICAgICAgICJQ
VlJUQzFfUkdCQV8yQlBQX1VOT1JNX1NSR0JfQkxPQ0siOiAiTVRMUGl4ZWxGb3JtYXRQVlJUQ19S
R0JBXzJCUFBfc1JHQiIsCi0tICAgICAgICAgICAgIlBWUlRDMV9SR0JBXzRCUFBfVU5PUk1fU1JH
Ql9CTE9DSyI6ICJNVExQaXhlbEZvcm1hdFBWUlRDX1JHQkFfNEJQUF9zUkdCIiwKLSAgICAgICAg
ICAgICAiRVRDMV9SOEc4QjhfVU5PUk1fQkxPQ0siOiAiTVRMUGl4ZWxGb3JtYXRFVEMyX1JHQjgi
LAotICAgICAgICAgICAgICJFVEMyX1I4RzhCOF9VTk9STV9CTE9DSyI6ICJNVExQaXhlbEZvcm1h
dEVUQzJfUkdCOCIsCi0gICAgICAgICAgICAgIkVUQzJfUjhHOEI4X1NSR0JfQkxPQ0siOiAiTVRM
UGl4ZWxGb3JtYXRFVEMyX1JHQjhfc1JHQiIsCi1kaWZmIC0tZ2l0IGEvc3JjL2xpYkFOR0xFL3Jl
bmRlcmVyL21ldGFsL210bF9mb3JtYXRfdGFibGVfYXV0b2dlbi5tbSBiL3NyYy9saWJBTkdMRS9y
ZW5kZXJlci9tZXRhbC9tdGxfZm9ybWF0X3RhYmxlX2F1dG9nZW4ubW0KLWluZGV4IDlkMTljODUu
LmI1ZDkwZmYgMTAwNjQ0Ci0tLS0gYS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX2Zv
cm1hdF90YWJsZV9hdXRvZ2VuLm1tCi0rKysgYi9zcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwv
bXRsX2Zvcm1hdF90YWJsZV9hdXRvZ2VuLm1tCi1AQCAtMTE1Miw1NCArMTE1Miw2IEBACi0gICAg
ICAgICAgICAgdGhpcy0+YWN0dWFsRm9ybWF0SWQgPSBhbmdsZTo6Rm9ybWF0SUQ6OkVUQzJfUjhH
OEI4X1VOT1JNX0JMT0NLOwotICAgICAgICAgICAgIGJyZWFrOwotIAotLSAgICAgICAgY2FzZSBh
bmdsZTo6Rm9ybWF0SUQ6OlBWUlRDMV9SR0JBXzJCUFBfVU5PUk1fQkxPQ0s6Ci0tCi0tICAgICAg
ICAgICAgdGhpcy0+bWV0YWxGb3JtYXQgICAgPSBNVExQaXhlbEZvcm1hdFBWUlRDX1JHQkFfMkJQ
UDsKLS0gICAgICAgICAgICB0aGlzLT5hY3R1YWxGb3JtYXRJZCA9IGFuZ2xlOjpGb3JtYXRJRDo6
UFZSVEMxX1JHQkFfMkJQUF9VTk9STV9CTE9DSzsKLS0gICAgICAgICAgICBicmVhazsKLS0KLS0g
ICAgICAgIGNhc2UgYW5nbGU6OkZvcm1hdElEOjpQVlJUQzFfUkdCQV8yQlBQX1VOT1JNX1NSR0Jf
QkxPQ0s6Ci0tCi0tICAgICAgICAgICAgdGhpcy0+bWV0YWxGb3JtYXQgICAgPSBNVExQaXhlbEZv
cm1hdFBWUlRDX1JHQkFfMkJQUF9zUkdCOwotLSAgICAgICAgICAgIHRoaXMtPmFjdHVhbEZvcm1h
dElkID0gYW5nbGU6OkZvcm1hdElEOjpQVlJUQzFfUkdCQV8yQlBQX1VOT1JNX1NSR0JfQkxPQ0s7
Ci0tICAgICAgICAgICAgYnJlYWs7Ci0tCi0tICAgICAgICBjYXNlIGFuZ2xlOjpGb3JtYXRJRDo6
UFZSVEMxX1JHQkFfNEJQUF9VTk9STV9CTE9DSzoKLS0KLS0gICAgICAgICAgICB0aGlzLT5tZXRh
bEZvcm1hdCAgICA9IE1UTFBpeGVsRm9ybWF0UFZSVENfUkdCQV80QlBQOwotLSAgICAgICAgICAg
IHRoaXMtPmFjdHVhbEZvcm1hdElkID0gYW5nbGU6OkZvcm1hdElEOjpQVlJUQzFfUkdCQV80QlBQ
X1VOT1JNX0JMT0NLOwotLSAgICAgICAgICAgIGJyZWFrOwotLQotLSAgICAgICAgY2FzZSBhbmds
ZTo6Rm9ybWF0SUQ6OlBWUlRDMV9SR0JBXzRCUFBfVU5PUk1fU1JHQl9CTE9DSzoKLS0KLS0gICAg
ICAgICAgICB0aGlzLT5tZXRhbEZvcm1hdCAgICA9IE1UTFBpeGVsRm9ybWF0UFZSVENfUkdCQV80
QlBQX3NSR0I7Ci0tICAgICAgICAgICAgdGhpcy0+YWN0dWFsRm9ybWF0SWQgPSBhbmdsZTo6Rm9y
bWF0SUQ6OlBWUlRDMV9SR0JBXzRCUFBfVU5PUk1fU1JHQl9CTE9DSzsKLS0gICAgICAgICAgICBi
cmVhazsKLS0KLS0gICAgICAgIGNhc2UgYW5nbGU6OkZvcm1hdElEOjpQVlJUQzFfUkdCXzJCUFBf
VU5PUk1fQkxPQ0s6Ci0tCi0tICAgICAgICAgICAgdGhpcy0+bWV0YWxGb3JtYXQgICAgPSBNVExQ
aXhlbEZvcm1hdFBWUlRDX1JHQl8yQlBQOwotLSAgICAgICAgICAgIHRoaXMtPmFjdHVhbEZvcm1h
dElkID0gYW5nbGU6OkZvcm1hdElEOjpQVlJUQzFfUkdCXzJCUFBfVU5PUk1fQkxPQ0s7Ci0tICAg
ICAgICAgICAgYnJlYWs7Ci0tCi0tICAgICAgICBjYXNlIGFuZ2xlOjpGb3JtYXRJRDo6UFZSVEMx
X1JHQl8yQlBQX1VOT1JNX1NSR0JfQkxPQ0s6Ci0tCi0tICAgICAgICAgICAgdGhpcy0+bWV0YWxG
b3JtYXQgICAgPSBNVExQaXhlbEZvcm1hdFBWUlRDX1JHQl8yQlBQX3NSR0I7Ci0tICAgICAgICAg
ICAgdGhpcy0+YWN0dWFsRm9ybWF0SWQgPSBhbmdsZTo6Rm9ybWF0SUQ6OlBWUlRDMV9SR0JfMkJQ
UF9VTk9STV9TUkdCX0JMT0NLOwotLSAgICAgICAgICAgIGJyZWFrOwotLQotLSAgICAgICAgY2Fz
ZSBhbmdsZTo6Rm9ybWF0SUQ6OlBWUlRDMV9SR0JfNEJQUF9VTk9STV9CTE9DSzoKLS0KLS0gICAg
ICAgICAgICB0aGlzLT5tZXRhbEZvcm1hdCAgICA9IE1UTFBpeGVsRm9ybWF0UFZSVENfUkdCXzRC
UFA7Ci0tICAgICAgICAgICAgdGhpcy0+YWN0dWFsRm9ybWF0SWQgPSBhbmdsZTo6Rm9ybWF0SUQ6
OlBWUlRDMV9SR0JfNEJQUF9VTk9STV9CTE9DSzsKLS0gICAgICAgICAgICBicmVhazsKLS0KLS0g
ICAgICAgIGNhc2UgYW5nbGU6OkZvcm1hdElEOjpQVlJUQzFfUkdCXzRCUFBfVU5PUk1fU1JHQl9C
TE9DSzoKLS0KLS0gICAgICAgICAgICB0aGlzLT5tZXRhbEZvcm1hdCAgICA9IE1UTFBpeGVsRm9y
bWF0UFZSVENfUkdCXzRCUFBfc1JHQjsKLS0gICAgICAgICAgICB0aGlzLT5hY3R1YWxGb3JtYXRJ
ZCA9IGFuZ2xlOjpGb3JtYXRJRDo6UFZSVEMxX1JHQl80QlBQX1VOT1JNX1NSR0JfQkxPQ0s7Ci0t
ICAgICAgICAgICAgYnJlYWs7Ci0tCi0gICAgICAgICBjYXNlIGFuZ2xlOjpGb3JtYXRJRDo6RDE2
X1VOT1JNOgotIAotICAgICAgICAgICAgIHRoaXMtPm1ldGFsRm9ybWF0ICAgID0gTVRMUGl4ZWxG
b3JtYXREZXB0aDMyRmxvYXQ7CiBkaWZmIC0tZ2l0IGEvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21l
dGFsL210bF9yZW5kZXJfdXRpbHMubW0gYi9zcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRs
X3JlbmRlcl91dGlscy5tbQotaW5kZXggMTYxM2VlOS4uZTA3NTI5NSAxMDA2NDQKK2luZGV4IDE2
MTNlZTliNy4uZTA3NTI5NWY4IDEwMDY0NAogLS0tIGEvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21l
dGFsL210bF9yZW5kZXJfdXRpbHMubW0KICsrKyBiL3NyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRh
bC9tdGxfcmVuZGVyX3V0aWxzLm1tCi1AQCAtMjU0MCw0NSArMjU0MCwxMyBAQCBBTkdMRV9JTkxJ
TkUgdm9pZCBTZXRQaXBlbGluZVN0YXRlKENvbXB1dGVDb21tYW5kRW5jb2RlciAqZW5jb2RlciwK
K0BAIC0yNTQwLDQ1ICsyNTQwLDEzIEBAIGFuZ2xlOjpSZXN1bHQgTWlwbWFwVXRpbHM6OmdlbmVy
YXRlTWlwbWFwQ1MoQ29udGV4dE10bCAqY29udGV4dE10bCwKICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wgc1JHQk1pcG1hcCwKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5hdGl2ZVRleExldmVsQXJyYXkgKm1pcG1h
cE91dHB1dFZpZXdzKQogIHsKQEAgLTc4Myw3ICsyMDA4Niw3IEBAIGluZGV4IDE2MTNlZTkuLmUw
NzUyOTUgMTAwNjQ0CiAgICAgIENvbXB1dGVDb21tYW5kRW5jb2RlciAqY21kRW5jb2RlciA9IGNv
bnRleHRNdGwtPmdldENvbXB1dGVDb21tYW5kRW5jb2RlcigpOwogICAgICBBU1NFUlQoY21kRW5j
b2Rlcik7CiAgCi1AQCAtMjYxNSw4ICsyNTgzLDI5IEBAIEFOR0xFX0lOTElORSB2b2lkIFNldFBp
cGVsaW5lU3RhdGUoQ29tcHV0ZUNvbW1hbmRFbmNvZGVyICplbmNvZGVyLAorQEAgLTI2MTUsOCAr
MjU4MywyOSBAQCBhbmdsZTo6UmVzdWx0IE1pcG1hcFV0aWxzOjpnZW5lcmF0ZU1pcG1hcENTKENv
bnRleHRNdGwgKmNvbnRleHRNdGwsCiAgICAgICAgICAgICAgVU5SRUFDSEFCTEUoKTsKICAgICAg
fQogIApAQCAtODE1LDcgKzIwMTE4LDcgQEAgaW5kZXggMTYxM2VlOS4uZTA3NTI5NSAxMDA2NDQK
ICAgICAgTWlwbWFwTmF0aXZlTGV2ZWwgYmF0Y2hTcmNMZXZlbCA9IGtaZXJvTmF0aXZlTWlwTGV2
ZWw7CiAgICAgIG9wdGlvbnMuc3JjTGV2ZWwgICAgICAgICAgICAgICAgPSBiYXRjaFNyY0xldmVs
LmdldCgpOwogZGlmZiAtLWdpdCBhL3NyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9tdGxfcmVz
b3VyY2Vfc3BpLmggYi9zcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX3Jlc291cmNlX3Nw
aS5oCi1pbmRleCAzZWFhOWE2Li4yZWNmN2I0IDEwMDY0NAoraW5kZXggM2VhYTlhNjRlLi4yZWNm
N2I0MGIgMTAwNjQ0CiAtLS0gYS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX3Jlc291
cmNlX3NwaS5oCiArKysgYi9zcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX3Jlc291cmNl
X3NwaS5oCiBAQCAtMSw5ICsxLDYzIEBACkBAIC04ODksNyArMjAxOTIsNyBAQCBpbmRleCAzZWFh
OWE2Li4yZWNmN2I0IDEwMDY0NAogKwogKyNlbmRpZiAvKiBMSUJBTkdMRV9SRU5ERVJFUl9NRVRB
TF9SRVNPVVJDRV9TUElfSF8gKi8KIGRpZmYgLS1naXQgYS9zcmMvbGliQU5HTEUvcmVuZGVyZXIv
bWV0YWwvbXRsX3Jlc291cmNlcy5oIGIvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF9y
ZXNvdXJjZXMuaAotaW5kZXggOGI4ZWIyNi4uMTlhOTc0MCAxMDA2NDQKK2luZGV4IDhiOGViMjZi
NS4uMTlhOTc0MDg3IDEwMDY0NAogLS0tIGEvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210
bF9yZXNvdXJjZXMuaAogKysrIGIvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF9yZXNv
dXJjZXMuaAogQEAgLTM0NSw3ICszNDUsOSBAQCBjbGFzcyBUZXh0dXJlIGZpbmFsIDogcHVibGlj
IFJlc291cmNlLApAQCAtOTA0LDcgKzIwMjA3LDcgQEAgaW5kZXggOGI4ZWIyNi4uMTlhOTc0MCAx
MDA2NDQKICAgIHB1YmxpYzoKICAgICAgc3RhdGljIGFuZ2xlOjpSZXN1bHQgTWFrZUJ1ZmZlcihD
b250ZXh0TXRsICpjb250ZXh0LAogZGlmZiAtLWdpdCBhL3NyYy9saWJBTkdMRS9yZW5kZXJlci9t
ZXRhbC9tdGxfcmVzb3VyY2VzLm1tIGIvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF9y
ZXNvdXJjZXMubW0KLWluZGV4IDhjMDVmYzIuLjBmOWI1M2IgMTAwNjQ0CitpbmRleCAxZThjOGYy
NjQuLjdlYmYzMTY5MCAxMDA2NDQKIC0tLSBhL3NyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9t
dGxfcmVzb3VyY2VzLm1tCiArKysgYi9zcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX3Jl
c291cmNlcy5tbQogQEAgLTM1LDEyICszNSwxNCBAQCBpbmxpbmUgTlNVSW50ZWdlciBHZXRNaXBT
aXplKE5TVUludGVnZXIgYmFzZVNpemUsIGNvbnN0IE1pcG1hcE5hdGl2ZUxldmVsIGxldmVsKQpA
QCAtOTMzLDcgKzIwMjM2LDcgQEAgaW5kZXggOGMwNWZjMi4uMGY5YjUzYiAxMDA2NDQKICB7CiAg
I2lmIFRBUkdFVF9PU19PU1ggfHwgVEFSR0VUX09TX01BQ0NBVEFMWVNUCiAgICAgIC8vIE1ha2Ug
c3VyZSBHUFUgJiBDUFUgY29udGVudHMgYXJlIHN5bmNocm9uaXplZC4KLUBAIC01MTIsMTIgKzUx
NCwxMiBAQCB2b2lkIEVuc3VyZUNQVU1lbVdpbGxCZVN5bmNlZChDb250ZXh0TXRsICpjb250ZXh0
LCBUICpyZXNvdXJjZSkKK0BAIC01MjEsMTIgKzUyMywxMiBAQCBUZXh0dXJlOjpUZXh0dXJlKFRl
eHR1cmUgKm9yaWdpbmFsLCBjb25zdCBUZXh0dXJlU3dpenpsZUNoYW5uZWxzICZzd2l6emxlKQog
IAogIHZvaWQgVGV4dHVyZTo6c3luY0NvbnRlbnQoQ29udGV4dE10bCAqY29udGV4dCwgbXRsOjpC
bGl0Q29tbWFuZEVuY29kZXIgKmJsaXRFbmNvZGVyKQogIHsKQEAgLTk0OCw3ICsyMDI1MSw3IEBA
IGluZGV4IDhjMDVmYzIuLjBmOWI1M2IgMTAwNjQ0CiAgfQogIAogIGJvb2wgVGV4dHVyZTo6aXND
UFVBY2Nlc3NpYmxlKCkgY29uc3QKLUBAIC05ODIsNyArOTg0LDcgQEAgdm9pZCBFbnN1cmVDUFVN
ZW1XaWxsQmVTeW5jZWQoQ29udGV4dE10bCAqY29udGV4dCwgVCAqcmVzb3VyY2UpCitAQCAtOTkx
LDcgKzk5Myw3IEBAIGFuZ2xlOjpSZXN1bHQgQnVmZmVyOjpyZXNldFdpdGhSZXNPcHQoQ29udGV4
dE10bCAqY29udGV4dCwKICAKICB2b2lkIEJ1ZmZlcjo6c3luY0NvbnRlbnQoQ29udGV4dE10bCAq
Y29udGV4dCwgbXRsOjpCbGl0Q29tbWFuZEVuY29kZXIgKmJsaXRFbmNvZGVyKQogIHsKQEAgLTk1
Nyw3ICsyMDI2MCw3IEBAIGluZGV4IDhjMDVmYzIuLjBmOWI1M2IgMTAwNjQ0CiAgfQogIAogIGNv
bnN0IHVpbnQ4X3QgKkJ1ZmZlcjo6bWFwUmVhZE9ubHkoQ29udGV4dE10bCAqY29udGV4dCkKLUBA
IC0xMDAzLDcgKzEwMDUsNyBAQCB2b2lkIEVuc3VyZUNQVU1lbVdpbGxCZVN5bmNlZChDb250ZXh0
TXRsICpjb250ZXh0LCBUICpyZXNvdXJjZSkKK0BAIC0xMDEyLDcgKzEwMTQsNyBAQCB1aW50OF90
ICpCdWZmZXI6Om1hcFdpdGhPcHQoQ29udGV4dE10bCAqY29udGV4dCwgYm9vbCByZWFkb25seSwg
Ym9vbCBub1N5bmMpCiAgICAgIHsKICAgICAgICAgIENvbW1hbmRRdWV1ZSAmY21kUXVldWUgPSBj
b250ZXh0LT5jbWRRdWV1ZSgpOwogIApAQCAtOTY3LDcgKzIwMjcwLDcgQEAgaW5kZXggOGMwNWZj
Mi4uMGY5YjUzYiAxMDA2NDQKICAgICAgICAgIGlmICh0aGlzLT5pc0JlaW5nVXNlZEJ5R1BVKGNv
bnRleHQpKQogICAgICAgICAgewogZGlmZiAtLWdpdCBhL3NyYy9saWJBTkdMRS9yZW5kZXJlci9t
ZXRhbC9tdGxfdXRpbHMuaCBiL3NyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9tdGxfdXRpbHMu
aAotaW5kZXggZDIxOGMxMy4uYjIzNmQ5MiAxMDA2NDQKK2luZGV4IGQyMThjMTNlZC4uYjIzNmQ5
MjY1IDEwMDY0NAogLS0tIGEvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF91dGlscy5o
CiArKysgYi9zcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX3V0aWxzLmgKIEBAIC0xMDUs
MTEgKzEwNSw5IEBAIEF1dG9PYmpDUHRyPGlkPE1UTExpYnJhcnk+PiBDcmVhdGVTaGFkZXJMaWJy
YXJ5KApAQCAtOTg0LDEwICsyMDI4NywxMCBAQCBpbmRleCBkMjE4YzEzLi5iMjM2ZDkyIDEwMDY0
NAogIAogIGJvb2wgU3VwcG9ydHNBcHBsZUdQVUZhbWlseShpZDxNVExEZXZpY2U+IGRldmljZSwg
dWludDhfdCBhcHBsZUZhbWlseSk7CiBkaWZmIC0tZ2l0IGEvc3JjL3Rlc3RzL2FuZ2xlX3VuaXR0
ZXN0cy5nbmkgYi9zcmMvdGVzdHMvYW5nbGVfdW5pdHRlc3RzLmduaQotaW5kZXggNjEzNDVmOC4u
ZGQ3MGI5ZiAxMDA2NDQKK2luZGV4IDYxM2UwNzkwYi4uMjUyYTIwNzY0IDEwMDY0NAogLS0tIGEv
c3JjL3Rlc3RzL2FuZ2xlX3VuaXR0ZXN0cy5nbmkKICsrKyBiL3NyYy90ZXN0cy9hbmdsZV91bml0
dGVzdHMuZ25pCi1AQCAtMTY2LDYgKzE2Niw4IEBAIGlmIChpc19hbmRyb2lkKSB7CitAQCAtMTY3
LDYgKzE2Nyw4IEBAIGlmIChpc19hbmRyb2lkKSB7CiAgICAgICAgWyAiY29tcGlsZXJfdGVzdHMv
SW1tdXRhYmxlU3RyaW5nX3Rlc3RfYXV0b2dlbi5jcHAiIF0KICB9CiAgCkBAIC0xMDM4LDUgKzIw
MzQxLDUgQEAgcmVuYW1lIGZyb20gc3JjL3Rlc3RzL2RlcXBfc3VwcG9ydC9kZXFwX2tocl9nbGVz
M190ZXN0X2V4cGVjdGF0aW9ucy50eHQKIHJlbmFtZSB0byBzcmMvdGVzdHMvZGVxcF9zdXBwb3J0
L2RlcXBfa2hyX2dsZXMzX1Rlc3RFeHBlY3RhdGlvbnMKIGRpZmYgLS1naXQgYS90aGlyZF9wYXJ0
eS9yOC9jdXN0b21fZDguamFyIGIvdGhpcmRfcGFydHkvcjgvY3VzdG9tX2Q4LmphcgogZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0Ci1pbmRleCA5OWE5MTA2Li4wMDAwMDAwCitpbmRleCA5OWE5MTA2
MzcuLjAwMDAwMDAwMAogQmluYXJ5IGZpbGVzIGEvdGhpcmRfcGFydHkvcjgvY3VzdG9tX2Q4Lmph
ciBhbmQgL2Rldi9udWxsIGRpZmZlcgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvZG9jL0NhcHR1cmVBbmRSZXBsYXkubWQgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9kb2Mv
Q2FwdHVyZUFuZFJlcGxheS5tZAppbmRleCBkZjM0NmJjYTE2OTVhYjY2OWY0ZTI3ODRjYWY3MGEx
YTgyOTFmODE2Li5lYzRlM2Q3YzMyYTg4YjRmYTEyMzBmNzQ5N2ExYzI2ZDMxY2JhYzA4IDEwMDY0
NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9kb2MvQ2FwdHVyZUFuZFJlcGxheS5tZAor
KysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9kb2MvQ2FwdHVyZUFuZFJlcGxheS5tZApAQCAt
NDQsMzggKzQ0LDIyIEBAIFNvbWUgc2ltcGxlIGVudmlyb25tZW50IHZhcmlhYmxlcyBjb250cm9s
IGZyYW1lIGNhcHR1cmU6CiAgICAqIFVzZXMgbWlkLWV4ZWN1dGlvbiBjYXB0dXJlIHRvIHdyaXRl
ICJTZXR1cCIgZnVuY3Rpb25zIHRoYXQgc3RhcnRzIGEgQ29udGV4dCBhdCBmcmFtZSBgbmAuCiAg
ICAqIEV4YW1wbGU6IGBBTkdMRV9DQVBUVVJFX0ZSQU1FX1NUQVJUPTJgLiBEZWZhdWx0IGlzIGAw
YC4KICAqIGBBTkdMRV9DQVBUVVJFX0ZSQU1FX0VORD08bj5gOgotICAgKiBCeSBkZWZhdWx0IEFO
R0xFIHdpbGwgY2FwdHVyZSB0aGUgZmlyc3QgdGVuIGZyYW1lcy4gVGhpcyB2YXJpYWJsZSBjYW4g
b3ZlcnJpZGUgdGhlIGRlZmF1bHQuCi0gICAqIEV4YW1wbGU6IGBBTkdMRV9DQVBUVVJFX0ZSQU1F
X0VORD00YC4gRGVmYXVsdCBpcyBgMTBgLgorICAgKiBFeGFtcGxlOiBgQU5HTEVfQ0FQVFVSRV9G
UkFNRV9FTkQ9NGAuIERlZmF1bHQgaXMgYDBgIHdoaWNoIGRpc2FibGVzIGNhcHR1cmUuCiAgKiBg
QU5HTEVfQ0FQVFVSRV9MQUJFTD08bGFiZWw+YDoKICAgICogV2hlbiBzcGVjaWZpZWQsIGZpbGVz
IGFuZCBmdW5jdGlvbnMgd2lsbCBiZSBsYWJlbGVkIHVuaXF1ZWx5LgogICAgKiBFeGFtcGxlOiBg
QU5HTEVfQ0FQVFVSRV9MQUJFTD1mb29gCiAgICAgICogUmVzdWx0cyBpbiBmaWxlbmFtZXMgbGlr
ZSB0aGlzOgogICAgICAgIGBgYAotICAgICAgIGZvb19jYXB0dXJlX2NvbnRleHQxLmNwcAotICAg
ICAgIGZvb19jYXB0dXJlX2NvbnRleHQxLmgKLSAgICAgICBmb29fY2FwdHVyZV9jb250ZXh0MV9m
aWxlcy50eHQKLSAgICAgICBmb29fY2FwdHVyZV9jb250ZXh0MV9mcmFtZTAwMC5hbmdsZWRhdGEK
LSAgICAgICBmb29fY2FwdHVyZV9jb250ZXh0MV9mcmFtZTAwMC5jcHAKLSAgICAgICBmb29fY2Fw
dHVyZV9jb250ZXh0MV9mcmFtZTAwMS5hbmdsZWRhdGEKLSAgICAgICBmb29fY2FwdHVyZV9jb250
ZXh0MV9mcmFtZTAwMS5jcHAKKyAgICAgICBmb28uYW5nbGVkYXRhLmd6CisgICAgICAgZm9vX2Nv
bnRleHQxXzAwMS5jcHAKKyAgICAgICBmb29fY29udGV4dDFfMDAyLmNwcAorICAgICAgIGZvb19j
b250ZXh0MV8wMDMuY3BwCisgICAgICAgZm9vX2NvbnRleHQxLmNwcAorICAgICAgIGZvb19jb250
ZXh0MS5oCisgICAgICAgZm9vLmpzb24KKyAgICAgICBmb29fc2hhcmVkLmNwcAogICAgICAgIC4u
LgogICAgICAgIGBgYAotICAgICAqIEZ1bmN0aW9ucyB3cmFwcGVkIGluIG5hbWVzcGFjZXMgbGlr
ZSB0aGlzOgotICAgICAgIGBgYAotICAgICAgIG5hbWVzcGFjZSBmb28KLSAgICAgICB7Ci0gICAg
ICAgICAgIHZvaWQgUmVwbGF5Q29udGV4dDFGcmFtZTAoKTsKLSAgICAgICAgICAgdm9pZCBSZXBs
YXlDb250ZXh0MUZyYW1lMSgpOwotICAgICAgIH0KLSAgICAgICBgYGAKLSAgICAgKiBGb3IgdXNl
IGxpa2UgdGhpczoKLSAgICAgICBgYGAKLSAgICAgICBmb286OlNldHVwQ29udGV4dDFSZXBsYXko
KTsKLSAgICAgICBmb3IgKC4uLikKLSAgICAgICB7Ci0gICAgICAgICAgIGZvbzo6UmVwbGF5Q29u
dGV4dDFGcmFtZShpKTsKLSAgICAgICB9Ci0gICAgICAgYGBgCiAgKiBgQU5HTEVfQ0FQVFVSRV9T
RVJJQUxJWkVfU1RBVEVgOgogICAgKiBTZXQgdG8gYDFgIHRvIGVuYWJsZSBHTCBzdGF0ZSBzZXJp
YWxpemF0aW9uLiBEZWZhdWx0IGlzIGAwYC4KIApAQCAtODYsOSArNzAsMTEgQEAgdGVtcGxhdGUu
IEZvciBleGFtcGxlOgogJCBBTkdMRV9DQVBUVVJFX0ZSQU1FX0VORD00IEFOR0xFX0NBUFRVUkVf
T1VUX0RJUj1zYW1wbGVzL2NhcHR1cmVfcmVwbGF5IG91dC9EZWJ1Zy9zaW1wbGVfdGV4dHVyZV8y
ZAogYGBgCiAKLSMjIFJ1bm5pbmcgYSBDUFAgcmVwbGF5CisjIyBSdW5uaW5nIHRoZSBjYXB0dXJl
X3JlcGxheSBzYW1wbGUgKGRlc2t0b3Agb25seSkKIAotVG8gcnVuIGEgQ1BQIHJlcGxheSB5b3Ug
Y2FuIHVzZSBhIHRlbXBsYXRlIGxvY2F0ZWQgaW4KKypOb3RlOiBUaGUgY2FwdHVyZV9yZXBsYXkg
c2FtcGxlIGlzIGJyb2tlbiB1bnRpbCBodHRwOi8vYW5nbGVidWcuY29tLzU5MTEgaXMgYWRkcmVz
c2VkLioKKworVG8gcnVuIGEgc2FtcGxlIHJlcGxheSB5b3UgY2FuIHVzZSBhIHRlbXBsYXRlIGxv
Y2F0ZWQgaW4KIFtzYW1wbGVzL2NhcHR1cmVfcmVwbGF5XSguLi9zYW1wbGVzL2NhcHR1cmVfcmVw
bGF5KS4gRmlyc3QgcnVuIHlvdXIgY2FwdHVyZSBhbmQgZW5zdXJlIGFsbCBjYXB0dXJlCiBmaWxl
cyBhcmUgd3JpdHRlbiB0byBgc2FtcGxlcy9jYXB0dXJlX3JlcGxheWAuIFlvdSBjYW4gY29udmVu
aWVudGx5IHVzZSBgQU5HTEVfQ0FQVFVSRV9PVVRfRElSYC4KIFRoZW4gZW5hYmxlIHRoZSBgY2Fw
dHVyZV9yZXBsYXlfc2FtcGxlYCB2aWEgYGduIGFyZ3NgOgpAQCAtMTAxLDExICs4Nyw0MiBAQCBT
ZWUgW3NhbXBsZXMvQlVJTEQuZ25dKC4uL3NhbXBsZXMvQlVJTEQuZ24pIGZvciBkZXRhaWxzLiBU
aGVuIGJ1aWxkIGFuZCBydW4geW91cgogCiBgYGAKICQgYXV0b25pbmphIC1DIG91dC9EZWJ1ZyBj
YXB0dXJlX3JlcGxheV9zYW1wbGUKLSQgQU5HTEVfQ0FQVFVSRV9FTkFCTEVEPTAgb3V0L0RlYnVn
L2NhcHR1cmVfcmVwbGF5X3NhbXBsZQorJCBvdXQvRGVidWcvY2FwdHVyZV9yZXBsYXlfc2FtcGxl
CiBgYGAKIAotTm90ZSB0aGF0IHdlIHNwZWNpZnkgYEFOR0xFX0NBUFRVUkVfRU5BQkxFRD0wYCB0
byBwcmV2ZW50IHJlLWNhcHR1cmluZyB3aGVuIHJ1bm5pbmcgdGhlIHJlcGxheS4KKyMjIFJ1bm5p
bmcgYSBwZXJmIHRlc3QgcmVwbGF5IChhbGwgcGxhdGZvcm1zLCBpbmNsdWRpbmcgQW5kcm9pZCkK
KworVG8gcnVuIHlvdXIgY2FwdHVyZSBvbiBhbnkgcGxhdGZvcm0gKFdpbmRvd3MsIExpbnV4LCBB
bmRyb2lkLCBNYWMgKHVudGVzdGVkKSksIHlvdSdsbCBuZWVkIHRvCitjb21waWxlIGl0IGFzIHBh
cnQgb2YgQU5HTEUncyBUcmFjZSBSZXBsYXkgaGFybmVzcywgd2hpY2ggaXMgcGFydCBvZiBgYW5n
bGVfcGVyZnRlc3RzYC4KKworQ3JlYXRlIGEgZm9sZGVyIHVuZGVyIGBzcmMvdGVzdHMvcmVzdHJp
Y3RlZF90cmFjZXNgIHRoYXQgbWF0Y2hlcyB0aGUgYEFOR0xFX0NBUFRVUkVfTEFCRUxgIHlvdQor
dXNlZCBhYm92ZS4KIAorUGxhY2UgYWxsIHRoZSB0cmFjZSBvdXRwdXQgZmlsZXMgaW50byBpdC4g
IEZvciBleGFtcGxlLCBpZiB0aGUgbGFiZWwgd2FzIGBkZXNrdG9wX3Rlc3RgOgorYGBgCitzcmMv
dGVzdHMvcmVzdHJpY3RlZF90cmFjZXMkIGxzIC0xIGRlc2t0b3BfdGVzdC8KK2Rlc2t0b3BfdGVz
dC5hbmdsZWRhdGEuZ3oKK2Rlc2t0b3BfdGVzdF9jb250ZXh0MV8wMDEuY3BwCitkZXNrdG9wX3Rl
c3RfY29udGV4dDFfMDAyLmNwcAorZGVza3RvcF90ZXN0X2NvbnRleHQxXzAwMy5jcHAKK2Rlc2t0
b3BfdGVzdF9jb250ZXh0MS5jcHAKK2Rlc2t0b3BfdGVzdF9jb250ZXh0MS5oCitkZXNrdG9wX3Rl
c3QuanNvbgorZGVza3RvcF90ZXN0X3NoYXJlZC5jcHAKK2BgYAorVGhlbiBhZGQgdGhlIGxhYmVs
IG9mIHlvdXIgdHJhY2UgdG8KK1tyZXN0cmljdGVkX3RyYWNlcy5qc29uXSguLi9zcmMvdGVzdHMv
cmVzdHJpY3RlZF90cmFjZXMvcmVzdHJpY3RlZF90cmFjZXMuanNvbikuCitOb3RlIGl0IGluY2x1
ZGVzIGEgdmVyc2lvbiB3aXRoIHRoZSBzdHJpbmcuICBKdXN0IHVzZSB0aGUgbnVtYmVyIGAxYCBm
b3IgbG9jYWwgY2hhbmdlcy4KK2BgYAorICAgICAiZGVhZF90cmlnZ2VyXzIgMSIsCisrICAgICJk
ZXNrdG9wX3Rlc3QgMSIsCisgICAgICJkaXNuZXlfdHN1bV90c3VtIDUiLAorYGBgCitOb3cgeW91
IHNob3VsZCBiZSBhYmxlIHRvIGNvbXBpbGUgYW5kIHJ1biB0aGUgcGVyZiB0ZXN0IGluY2x1ZGlu
ZyB5b3VyIHRyYWNlOgorYGBgCithdXRvbmluamEgLUMgb3V0L0RlYnVnIGFuZ2xlX3BlcmZ0ZXN0
cworQU5HTEVfQ0FQVFVSRV9FTkFCTEVEPTAgb3V0L0RlYnVnL2FuZ2xlX3BlcmZ0ZXN0cyAtLWd0
ZXN0X2ZpbHRlcj0iKmRlc2t0b3BfdGVzdCoiIC0tdmVyYm9zZQorYGBgCiAjIyBDYXB0dXJpbmcg
YW4gQW5kcm9pZCBhcHBsaWNhdGlvbgogCiBJbiBvcmRlciB0byBjYXB0dXJlIG9uIEFuZHJvaWQs
IHRoZSBmb2xsb3dpbmcgYWRkaXRpb25hbCBzdGVwcyBtdXN0IGJlIHRha2VuLiBUaGVzZSBzdGVw
cwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvZG9jL0V4dGVuc2lvblN1cHBv
cnQubWQgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9kb2MvRXh0ZW5zaW9uU3VwcG9ydC5tZApp
bmRleCA4YjkxYTA5NTRiOGEzMjdjMGM5NmFkNjQwNGRkMGJmNDQ1MTc3ODhhLi5hZWYzYmVkNDAx
NGYyNTE3OGRjMjQ5ZjYzNTI3ODlkNTA4YTZkOTE4IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9BTkdMRS9kb2MvRXh0ZW5zaW9uU3VwcG9ydC5tZAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9kb2MvRXh0ZW5zaW9uU3VwcG9ydC5tZApAQCAtMTAyLDYgKzEwMiw3IEBAIHVzaW5n
IGRhdGEgZnJvbSByZWdpc3RyeV94bWwucHkgYW5kIGdsLnhtbC4KIHwgW0dMX0FOR0xFX3BhY2tf
cmV2ZXJzZV9yb3dfb3JkZXJdKGh0dHBzOi8va2hyb25vcy5vcmcvcmVnaXN0cnkvT3BlbkdML2V4
dGVuc2lvbnMvQU5HTEUvQU5HTEVfcGFja19yZXZlcnNlX3Jvd19vcmRlci50eHQpIHwgIHwgIHwg
IHwgIHwgIHwgIHwKIHwgW0dMX05WX3BhY2tfc3ViaW1hZ2VdKGh0dHBzOi8va2hyb25vcy5vcmcv
cmVnaXN0cnkvT3BlbkdML2V4dGVuc2lvbnMvTlYvTlZfcGFja19zdWJpbWFnZS50eHQpIHwgJiN4
MjcxNDsgfCAmI3gyNzE0OyB8ICYjeDI3MTQ7IHwgJiN4MjcxNDsgfCAmI3gyNzE0OyB8ICYjeDI3
MTQ7IHwKIHwgW0dMX0tIUl9wYXJhbGxlbF9zaGFkZXJfY29tcGlsZV0oaHR0cHM6Ly9raHJvbm9z
Lm9yZy9yZWdpc3RyeS9PcGVuR0wvZXh0ZW5zaW9ucy9LSFIvS0hSX3BhcmFsbGVsX3NoYWRlcl9j
b21waWxlLnR4dCkgfCAmI3gyNzE0OyB8ICYjeDI3MTQ7IHwgJiN4MjcxNDsgfCAmI3gyNzE0OyB8
ICYjeDI3MTQ7IHwgJiN4MjcxNDsgfAorfCBbR0xfQU1EX3BlcmZvcm1hbmNlX21vbml0b3JdKGh0
dHBzOi8va2hyb25vcy5vcmcvcmVnaXN0cnkvT3BlbkdML2V4dGVuc2lvbnMvQU1EL0FNRF9wZXJm
b3JtYW5jZV9tb25pdG9yLnR4dCkgfCAgfCAgfCAgfCAgfCAgfCAgfAogfCBbR0xfTlZfcGl4ZWxf
YnVmZmVyX29iamVjdF0oaHR0cHM6Ly9raHJvbm9zLm9yZy9yZWdpc3RyeS9PcGVuR0wvZXh0ZW5z
aW9ucy9OVi9OVl9waXhlbF9idWZmZXJfb2JqZWN0LnR4dCkgfCAmI3gyNzE0OyB8ICYjeDI3MTQ7
IHwgJiN4MjcxNDsgfCAmI3gyNzE0OyB8ICYjeDI3MTQ7IHwgJiN4MjcxNDsgfAogfCBbR0xfRVhU
X3ByaW1pdGl2ZV9ib3VuZGluZ19ib3hdKGh0dHBzOi8va2hyb25vcy5vcmcvcmVnaXN0cnkvT3Bl
bkdML2V4dGVuc2lvbnMvRVhUL0VYVF9wcmltaXRpdmVfYm91bmRpbmdfYm94LnR4dCkgfCAmI3gy
NzE0OyB8ICYjeDI3MTQ7IHwgJiN4MjcxNDsgfCAmI3gyNzE0OyB8ICYjeDI3MTQ7IHwgJiN4Mjcx
NDsgfAogfCBbR0xfT0VTX3ByaW1pdGl2ZV9ib3VuZGluZ19ib3hdKGh0dHBzOi8va2hyb25vcy5v
cmcvcmVnaXN0cnkvT3BlbkdML2V4dGVuc2lvbnMvT0VTL09FU19wcmltaXRpdmVfYm91bmRpbmdf
Ym94LnR4dCkgfCAgfCAgfCAgfCAgfCAgfCAgfApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvZXh0ZW5zaW9ucy9FR0xfQU5HTEVfcGxhdGZvcm1fYW5nbGVfZGV2aWNlX2lkLnR4
dCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL2V4dGVuc2lvbnMvRUdMX0FOR0xFX3BsYXRmb3Jt
X2FuZ2xlX2RldmljZV9pZC50eHQKaW5kZXggMWQzZWMyYjljYjM1NDBjZTgzN2M1ZTE5M2RmZTlj
YWFmMmI5NDA1Yy4uYWEyYzMwMmRkYzVjMTk4NjBjMDY0Zjc1YWVlYzRiMGU5ZDczMTYwOCAxMDA2
NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvZXh0ZW5zaW9ucy9FR0xfQU5HTEVfcGxh
dGZvcm1fYW5nbGVfZGV2aWNlX2lkLnR4dAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9l
eHRlbnNpb25zL0VHTF9BTkdMRV9wbGF0Zm9ybV9hbmdsZV9kZXZpY2VfaWQudHh0CkBAIC05LDYg
KzksNyBAQCBOYW1lIFN0cmluZ3MKIENvbnRyaWJ1dG9ycwogCiAgICAgSm9uYWggUnlhbi1EYXZp
cywgR29vZ2xlCisgICAgS2ltbW8gS2lubnVuZW4sIEFwcGxlCiAKIENvbnRhY3RzCiAKQEAgLTIw
LDcgKzIxLDcgQEAgU3RhdHVzCiAKIFZlcnNpb24KIAotICAgIFZlcnNpb24gMSwgMjAyMS0xMi0x
NAorICAgIFZlcnNpb24gMiwgMjAyMi0wNC0wOQogCiBOdW1iZXIKIApAQCAtMzQsNiArMzUsOCBA
QCBEZXBlbmRlbmNpZXMKIAogICAgIFJlcXVpcmVzIEFOR0xFX3BsYXRmb3JtX2FuZ2xlLgogCisg
ICAgRUdMX0FOR0xFX2Rpc3BsYXlfcG93ZXJfcHJlZmVyZW5jZSBpbnRlcmFjdHMgd2l0aCB0aGlz
IGV4dGVuc2lvbi4KKwogT3ZlcnZpZXcKIAogICAgIFRoaXMgZXh0ZW5zaW9uIGVuYWJsZXMgdGhl
IHNlbGVjdGlvbiBvZiBhIGdyYXBoaWNzIGRldmljZSB0byBiYWNrCkBAIC03MSw4ICs3NCw4IEBA
IE5ldyBCZWhhdmlvcgogICAgIElmIHRoZSBoaWdoIHBhcnQgYW5kIGxvdyBwYXJ0IGNvbWJpbmVk
IGlzIHplcm8sIGFuIEVHTF9CQURfQVRUUklCVVRFIGVycm9yCiAgICAgaXMgZ2VuZXJhdGVkIGFu
ZCBFR0xfTk9fRElTUExBWSBpcyByZXR1cm5lZC4KIAotICAgIElmIHRoZSBJRCBzcGVjaWZpZWQg
ZG9lc24ndCBtYXRjaCBhbnkgZGV2aWNlcyBvbiB0aGUgc3lzdGVtLCB0aGUgZGVmYXVsdAotICAg
IGRldmljZSBpcyB1c2VkLgorICAgIElmIHRoZSBJRCBzcGVjaWZpZWQgZG9lc24ndCBtYXRjaCBh
bnkgZGV2aWNlcyBvbiB0aGUgc3lzdGVtLCB0aGUgZGV2aWNlCisgICAgaXMgc2VsZWN0ZWQgYXMg
ZGVzY3JpYmVkIGluIHRoZSBFR0xfQU5HTEVfZGlzcGxheV9wb3dlcl9wcmVmZXJlbmNlIGV4dGVu
c2lvbi4KIAogSXNzdWVzCiAKQEAgLTgwLDUgKzgzLDkgQEAgSXNzdWVzCiAKIFJldmlzaW9uIEhp
c3RvcnkKIAorICAgIFZlcnNpb24gMiwgMjAyMi0wNC0wOSAoS2ltbW8gS2lubnVuZW4pCisgICAg
ICAtIERlc2NyaWJlIGludGVyYWN0aW9uIHdpdGggRUdMX0FOR0xFX2Rpc3BsYXlfcG93ZXJfcHJl
ZmVyZW5jZSwKKyAgICAgICAgRUdMX0FOR0xFX3BsYXRmb3JtX2FuZ2xlX2RldmljZV9pZCB0YWtl
cyBwcmVjZWRlbmNlLgorCiAgICAgVmVyc2lvbiAxLCAyMDIxLTEyLTE0IChKb25haCBSeWFuLURh
dmlzKQogICAgICAgLSBJbml0aWFsIGRyYWZ0LCBiYXNlZCBvbiBFR0xfQU5HTEVfcGxhdGZvcm1f
YW5nbGVfZDNkX2x1aWQKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL2V4dGVu
c2lvbnMvRUdMX0FOR0xFX3Bvd2VyX3ByZWZlcmVuY2UudHh0IGIvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvZXh0ZW5zaW9ucy9FR0xfQU5HTEVfcG93ZXJfcHJlZmVyZW5jZS50eHQKaW5kZXggNDU1
NDk1ZDkzM2IxNTM1YzljNGE4NDgxY2Q5NGY5N2I1ZDhhZjgwZS4uYzkwMGJlZTU1NzM4NDQzNzk5
YWRkYmYxYTVhZDhhZjY3Y2QxOTg0OSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvZXh0ZW5zaW9ucy9FR0xfQU5HTEVfcG93ZXJfcHJlZmVyZW5jZS50eHQKKysrIGIvU291cmNl
L1RoaXJkUGFydHkvQU5HTEUvZXh0ZW5zaW9ucy9FR0xfQU5HTEVfcG93ZXJfcHJlZmVyZW5jZS50
eHQKQEAgLTksNiArOSw3IEBAIE5hbWUgU3RyaW5ncwogQ29udHJpYnV0b3JzCiAKICAgICBLZW5u
ZXRoIFJ1c3NlbGwKKyAgICBLaW1tbyBLaW5udW5lbgogCiBDb250YWN0cwogCkBAIC0yMCw3ICsy
MSw3IEBAIFN0YXR1cwogCiBWZXJzaW9uCiAKLSAgICBWZXJzaW9uIDEsIEFwcmlsIDE2LCAyMDE5
CisgICAgVmVyc2lvbiAzLCBNYXJjaCAxMCwgMjAyMgogCiBOdW1iZXIKIApAQCAtNDksNiArNTAs
OCBAQCBOZXcgUHJvY2VkdXJlcyBhbmQgRnVuY3Rpb25zCiAgICAgICAgIEVHTERpc3BsYXkgZHB5
LAogICAgICAgICBFR0xDb250ZXh0IGNvbnRleHQpOwogICAgIHZvaWQgZWdsSGFuZGxlR1BVU3dp
dGNoQU5HTEUoRUdMRGlzcGxheSBkcHkpOworICAgIHZvaWQgZWdsRm9yY2VHUFVTd2l0Y2hBTkdM
RShFR0xEaXNwbGF5IGRweSwgRUdMaW50IGdwdUlESGlnaCwKKyAgICAgICAgRUdMaW50IGdwdUlE
TG93KTsKIAogTmV3IFRva2VucwogCkBAIC0xMjAsNiArMTIzLDMxIEBAIEFkZGl0aW9ucyB0byB0
aGUgRUdMIDEuNCBTcGVjaWZpY2F0aW9uCiAgICAgaWYgfGRweXwgaXMgYW4gdW5pbml0aWFsaXpl
ZCBkaXNwbGF5LCBhbiBFR0xfTk9UX0lOSVRJQUxJWkVEIGVycm9yCiAgICAgaXMgZ2VuZXJhdGVk
LgogCisgICAgZWdsRm9yY2VHUFVTd2l0Y2hBTkdMRSBzaG91bGQgYmUgY2FsbGVkIHdpdGggYW4g
ZXhwbGljaXQgZ3B1SUQgdG8gdHJhbnNpdGlvbgorICAgIGJldHdlZW4gdGhlIGxvdy1wb3dlciBh
bmQgaGlnaC1wb3dlciBHUFVzLiBUaGlzIHNob3VsZCBiZSBjYWxsZWQgaWYKKyAgICB0aGUgZW52
aXJvbm1lbnQgaXMgYWx0ZXJlZCBpbiBzdWNoIGEgd2F5IHRoYXQgZWdsSGFuZGxlR1BVU3dpdGNo
QU5HTEUKKyAgICB3aWxsIG5vdCB3b3JrLgorICAgIE9uIHRoZSBtYWNPUyBwbGF0Zm9ybSwgdGhl
IHNhbmRib3ggcG9saWN5IG1pZ2h0IHByZXZlbnQgZWdsSGFuZGxlR1BVU3dpdGNoQU5HTEUKKyAg
ICBmcm9tIG9idGFpbmluZyB0aGUgY3VycmVudCBtYWluIGFjdGl2ZSBHUFUuIEluIHRoZXNlIGNh
c2VzLCB0aGUgZ3B1SUQgY2FuCisgICAgYmUgb2J0YWluZWQgYW5vdGhlciB3YXkgKGUuZyBpbiBv
dGhlciBwcm9jZXNzKSBhbmQgY29tbXVuaWNhdGVkIHZpYQorICAgIGVnbEZvcmNlR1BVU3dpdGNo
QU5HTEUgdG8gdGhlIE9wZW5HTCBkaXNwbGF5LgorICAgIElmIGdwdUlEIGRvZXMgbm90IG1hdGNo
IGFueSBhdmFpbGFibGUgR1BVcyBpbiB0aGUgc3lzdGVtLAorICAgIG5vdGhpbmcgaGFwcGVucy4K
KworICAgIEZvciBjYWxscyB0byB0aGlzIGZ1bmN0aW9uOgorCisgICAgSWYgfGRweXwgaXMgbm90
IGEgdmFsaWQgZGlzcGxheSwgYW4gRUdMX0JBRF9ESVNQTEFZIGVycm9yIGlzCisgICAgZ2VuZXJh
dGVkLgorCisgICAgaWYgfGRweXwgaXMgYW4gdW5pbml0aWFsaXplZCBkaXNwbGF5LCBhbiBFR0xf
Tk9UX0lOSVRJQUxJWkVEIGVycm9yCisgICAgaXMgZ2VuZXJhdGVkLgorCisgICAgfGdwdUlESGln
aHwgdGhlIGhpZ2ggMzIgYml0cyBvZiB0aGUgSU9LaXQgcmVnaXN0cnkgSUQgb2YgdGhlIEdQVSB0
bworICAgIHVzZSBmb3IgYWxsIGNvbnRleHRzIGluIHRoZSBkaXNwbGF5LgorCisgICAgfGdwdUlE
TG93fCB0aGUgbG93IDMyIGJpdHMgb2YgdGhlIElPS2l0IHJlZ2lzdHJ5IElEIG9mIHRoZSBHUFUg
dG8KKyAgICB1c2UgZm9yIGFsbCBjb250ZXh0cyBpbiB0aGUgZGlzcGxheS4KKwogSXNzdWVzCiAK
ICAgICBOb25lIHlldC4KQEAgLTEzMiwzICsxNjAsNCBAQCBSZXZpc2lvbiBIaXN0b3J5CiAgICAg
ICAyICAgSnVuZSA1LCAyMDIwICAga2JyICAgICAgICBBZGQgZWdsUmVsZWFzZUhpZ2hQb3dlckdQ
VUFOR0xFLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlZ2xSZWFjcXVp
cmVIaWdoUG93ZXJHUFVBTkdMRSwgYW5kCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGVnbEhhbmRsZUdQVVN3aXRjaEFOR0xFCisgICAgICAzICAgTWFyY2ggMTAsIDIwMjIg
a2tpbm51bmVuICBBZGQgZWdsRm9yY2VHUFVTd2l0Y2hBTkdMRQpkaWZmIC0tZ2l0IGEvU291cmNl
L1RoaXJkUGFydHkvQU5HTEUvZ25pL2FuZ2xlLmduaSBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L2duaS9hbmdsZS5nbmkKaW5kZXggYWI1N2U0ODM3MjMzNTM2MTExMzJmNTQ0MTA2YjM5MGQ0NDk3
N2JkOC4uNDU3YjQxNzkyNGMzODY0M2FiMzgwNDlmZjU1MWVjOWQ1OGIyMTAxMiAxMDA2NDQKLS0t
IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvZ25pL2FuZ2xlLmduaQorKysgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9nbmkvYW5nbGUuZ25pCkBAIC00MCw2ICs0MCw4IEBAIGlmIChhbmdsZV9o
YXNfYnVpbGQpIHsKICAgfQogCiAgIGFuZ2xlX3VzZV94MTEgPSBvem9uZV9wbGF0Zm9ybV94MTEg
JiYgIWlzX2dncCAmJiBpc19saW51eCAmJiAhaXNfY2hyb21lY2FzdAorICBhbmdsZV91c2Vfd2F5
bGFuZCA9CisgICAgICBvem9uZV9wbGF0Zm9ybV93YXlsYW5kICYmICFpc19nZ3AgJiYgaXNfbGlu
dXggJiYgIWlzX2Nocm9tZWNhc3QKICAgYW5nbGVfdXNlX3Z1bGthbl9kaXNwbGF5ID0gKGlzX2xp
bnV4IHx8IGlzX2Nocm9tZW9zKSAmJiAhaXNfZ2dwCiB9IGVsc2UgewogICBkZWNsYXJlX2FyZ3Mo
KSB7CkBAIC01MCw2ICs1Miw3IEBAIGlmIChhbmdsZV9oYXNfYnVpbGQpIHsKICAgICBidWlsZF93
aXRoX2Nocm9taXVtID0gZmFsc2UKICAgICBkY2hlY2tfYWx3YXlzX29uID0gZmFsc2UKICAgICBh
bmdsZV91c2VfeDExID0gKGlzX2xpbnV4IHx8IGlzX2Nocm9tZW9zKSAmJiAhaXNfZ2dwCisgICAg
YW5nbGVfdXNlX3dheWxhbmQgPSBpc19saW51eCAmJiAhaXNfZ2dwCiAgICAgdXNlX296b25lID0g
ZmFsc2UKICAgICBvem9uZV9wbGF0Zm9ybV9nYm0gPSBmYWxzZQogICAgIG96b25lX3BsYXRmb3Jt
X3dheWxhbmQgPSBmYWxzZQpAQCAtNzEsMTEgKzc0LDExIEBAIGRlY2xhcmVfYXJncygpIHsKIAog
ICBpZiAoY3VycmVudF9jcHUgPT0gImFybTY0IiB8fCBjdXJyZW50X2NwdSA9PSAieDY0IiB8fAog
ICAgICAgY3VycmVudF9jcHUgPT0gIm1pcHM2NGVsIiB8fCBjdXJyZW50X2NwdSA9PSAiczM5MHgi
IHx8Ci0gICAgICBjdXJyZW50X2NwdSA9PSAicHBjNjQiKSB7CisgICAgICBjdXJyZW50X2NwdSA9
PSAicHBjNjQiIHx8IGN1cnJlbnRfY3B1ID09ICJsb29uZzY0IikgewogICAgIGFuZ2xlXzY0Yml0
X2N1cnJlbnRfY3B1ID0gdHJ1ZQogICB9IGVsc2UgaWYgKGN1cnJlbnRfY3B1ID09ICJhcm0iIHx8
IGN1cnJlbnRfY3B1ID09ICJ4ODYiIHx8CiAgICAgICAgICAgICAgY3VycmVudF9jcHUgPT0gIm1p
cHNlbCIgfHwgY3VycmVudF9jcHUgPT0gInMzOTAiIHx8Ci0gICAgICAgICAgICAgY3VycmVudF9j
cHUgPT0gInBwYyIpIHsKKyAgICAgICAgICAgICBjdXJyZW50X2NwdSA9PSAicHBjIiB8fCBjdXJy
ZW50X2NwdSA9PSAibG9vbmczMiIpIHsKICAgICBhbmdsZV82NGJpdF9jdXJyZW50X2NwdSA9IGZh
bHNlCiAgIH0gZWxzZSB7CiAgICAgYXNzZXJ0KGZhbHNlLCAiVW5rbm93biBjdXJyZW50IENQVTog
JGN1cnJlbnRfY3B1IikKQEAgLTEyOSwxNyArMTMyLDE4IEBAIGRlY2xhcmVfYXJncygpIHsKIAog
ICBhbmdsZV9lbmFibGVfZDNkOSA9IGlzX3dpbiAmJiAhYW5nbGVfaXNfd2ludXdwCiAgIGFuZ2xl
X2VuYWJsZV9kM2QxMSA9IGlzX3dpbgotICBhbmdsZV9lbmFibGVfZ2wgPSAob3pvbmVfcGxhdGZv
cm1fZ2JtIHx8IG96b25lX3BsYXRmb3JtX3dheWxhbmQgfHwKLSAgICAgICAgICAgICAgICAgICAg
ICFpc19saW51eCB8fCAoYW5nbGVfdXNlX3gxMSAmJiAhaXNfY2hyb21lb3MpKSAmJgotICAgICAg
ICAgICAgICAgICAgICAhaXNfZnVjaHNpYSAmJiAhYW5nbGVfaXNfd2ludXdwICYmICFpc19nZ3Ag
JiYgIWlzX3dpbl9hcm02NAorICBhbmdsZV9lbmFibGVfZ2wgPQorICAgICAgKG96b25lX3BsYXRm
b3JtX2dibSB8fCBvem9uZV9wbGF0Zm9ybV93YXlsYW5kIHx8ICFpc19saW51eCB8fAorICAgICAg
ICgoYW5nbGVfdXNlX3gxMSAmJiAhaXNfY2hyb21lb3MpIHx8IGFuZ2xlX3VzZV93YXlsYW5kKSkg
JiYgIWlzX2Z1Y2hzaWEgJiYKKyAgICAgICFhbmdsZV9pc193aW51d3AgJiYgIWlzX2dncCAmJiAh
aXNfd2luX2FybTY0CiAKICAgYW5nbGVfZW5hYmxlX3Z1bGthbiA9CiAgICAgICBhbmdsZV9oYXNf
YnVpbGQgJiYKICAgICAgICEoaXNfYW5kcm9pZCAmJiBidWlsZF93aXRoX2Nocm9taXVtICYmIGlz
X29mZmljaWFsX2J1aWxkKSAmJgogICAgICAgKChpc193aW4gJiYgIWFuZ2xlX2lzX3dpbnV3cCkg
fHwKICAgICAgICAoKGlzX2xpbnV4IHx8IGlzX2Nocm9tZW9zKSAmJgotICAgICAgICAoYW5nbGVf
dXNlX3gxMSB8fCBhbmdsZV91c2VfdnVsa2FuX2Rpc3BsYXkpKSB8fCBpc19hbmRyb2lkIHx8Ci0g
ICAgICAgaXNfZnVjaHNpYSB8fCBpc19nZ3AgfHwgaXNfbWFjKQorICAgICAgICAoYW5nbGVfdXNl
X3gxMSB8fCBhbmdsZV91c2Vfd2F5bGFuZCB8fCBhbmdsZV91c2VfdnVsa2FuX2Rpc3BsYXkpKSB8
fAorICAgICAgIGlzX2FuZHJvaWQgfHwgaXNfZnVjaHNpYSB8fCBpc19nZ3AgfHwgaXNfbWFjKQog
CiAgICMgV2hlbiBzZXQgdG8gdHJ1ZSwgQU5HTEUgd2lsbCBub3QgdXNlIFZLX0tIUl9zdXJmYWNl
IGFuZCBWS19LSFJfc3dhcGNoYWluCiAgICMgZXh0ZW5zaW9ucy4gQ29udGVudCBjYW4gYmUgcmVu
ZGVyZWQgb25seSBvZmYtc2NyZWVuLgpAQCAtMTU0LDYgKzE1OCw5IEBAIGRlY2xhcmVfYXJncygp
IHsKIAogICAjIEVuYWJsZXMgdGhlIE9wZW5DTCBwYXNzLXRocm91Z2ggYmFjayBlbmQKICAgYW5n
bGVfZW5hYmxlX2NsX3Bhc3N0aHJvdWdoID0gYW5nbGVfZW5hYmxlX2NsCisKKyAgIyBVc2UgZ2xz
bGFuZyB0byBnZW5lcmF0ZSBTUElSLVYKKyAgYW5nbGVfdXNlX3NwaXJ2X2dlbl90aHJvdWdoX2ds
c2xhbmcgPSBmYWxzZQogfQogCiAjIE9wZW5DTCBpcyBub3Qgc3VwcG9ydGVkIG9uIFdpbmRvd3Mg
VVdQLCBiZWNhdXNlIHRoZSBDTCBoZWFkZXJzIGluY2x1ZGUgRFg5LCB3aGljaCBpcyBub3QKQEAg
LTE5Miw3ICsxOTksOCBAQCBkZWNsYXJlX2FyZ3MoKSB7CiAgICMgdGhlIFNQSVItViBnZW5lcmF0
aW9uIHBhdGgsIGJ1dCBsZWF2ZSBpdCBkaXNhYmxlZCBvbiByZWxlYXNlLiAgSXQncyBzdGlsbCB1
c2VkIGJ5IHRoZSBtZXRhbAogICAjIGJhY2tlbmQgbmV2ZXJ0aGVsZXNzLgogICBhbmdsZV9lbmFi
bGVfc3BpcnZfZ2VuX3Rocm91Z2hfZ2xzbGFuZyA9Ci0gICAgICBpc19kZWJ1ZyB8fCBhbmdsZV9h
c3NlcnRfYWx3YXlzX29uIHx8IGFuZ2xlX2VuYWJsZV9tZXRhbAorICAgICAgaXNfZGVidWcgfHwg
YW5nbGVfYXNzZXJ0X2Fsd2F5c19vbiB8fCBhbmdsZV9lbmFibGVfbWV0YWwgfHwKKyAgICAgIGFu
Z2xlX3VzZV9zcGlydl9nZW5fdGhyb3VnaF9nbHNsYW5nCiAKICAgIyBJU3ByaXRlVmlzdWFsIHdp
bmRvd3MgY2Fubm90IGJlIHZhbGlkYXRlZCBhbmQgY2FuIGxlYWQgdG8gY3Jhc2hlcyBpZiBhbiBp
bnZhbGlkIHdpbmRvdyBpcwogICAjIHByb3ZpZGVkIHRvIEFOR0xFLiBEaXNhYmxlIHRoZW0gZm9y
IG5vbi1zdGFuZGFsb25lIEFOR0xFIGJ1aWxkcy4gY3JidWcuY29tLzExNzYxMTgKQEAgLTIwNyw2
ICsyMTUsOSBAQCBkZWNsYXJlX2FyZ3MoKSB7CiAgICAgICAgICAgICAgICAgICAgICAgISh0YXJn
ZXRfZW52aXJvbm1lbnQgPT0gImNhdGFseXN0IiAmJgogICAgICAgICAgICAgICAgICAgICAgICAg
KHRhcmdldF9jcHUgPT0gIng4NiIgfHwgdGFyZ2V0X2NwdSA9PSAieDY0IikpCiAKKyAgIyBEaXJl
Y3Rvcnkgd2hlcmUgdG8gZmluZCB3YXlsYW5kIHNvdXJjZSBmaWxlcworICBhbmdsZV93YXlsYW5k
X2RpciA9ICIkYW5nbGVfcm9vdC90aGlyZF9wYXJ0eS93YXlsYW5kIgorCiAgIGFuZ2xlX3Z1bGth
bl9oZWFkZXJzX2RpciA9CiAgICAgICAiJGFuZ2xlX3Jvb3QvdGhpcmRfcGFydHkvdnVsa2FuLWRl
cHMvdnVsa2FuLWhlYWRlcnMvc3JjIgogICBhbmdsZV92dWxrYW5fbG9hZGVyX2RpciA9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9pbmNsdWRlL0VHTC9lZ2xleHRfYW5nbGUu
aCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL2luY2x1ZGUvRUdML2VnbGV4dF9hbmdsZS5oCmlu
ZGV4IDVmOGNhYTg2YmIwMTMyNDAyNjYwNjFkYWQzYjJkNTg2ZWJjZjBmNWEuLjYwZDVlZDM3MjQx
Mjk5NmY3ZjY1Y2JiYzEwZDFmYjMxOWIwNTgyNWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL2luY2x1ZGUvRUdML2VnbGV4dF9hbmdsZS5oCisrKyBiL1NvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL2luY2x1ZGUvRUdML2VnbGV4dF9hbmdsZS5oCkBAIC0yODIsMTAgKzI4MiwxMiBA
QCBFR0xBUEkgRUdMQm9vbGVhbiBFR0xBUElFTlRSWSBlZ2xHZXRNc2NSYXRlQU5HTEUoRUdMRGlz
cGxheSBkcHksCiB0eXBlZGVmIHZvaWQoRUdMQVBJRU5UUllQIFBGTkVHTFJFTEVBU0VISUdIUE9X
RVJHUFVBTkdMRVBST0MpIChFR0xEaXNwbGF5IGRweSwgRUdMQ29udGV4dCBjdHgpOwogdHlwZWRl
ZiB2b2lkKEVHTEFQSUVOVFJZUCBQRk5FR0xSRUFDUVVJUkVISUdIUE9XRVJHUFVBTkdMRVBST0Mp
IChFR0xEaXNwbGF5IGRweSwgRUdMQ29udGV4dCBjdHgpOwogdHlwZWRlZiB2b2lkKEVHTEFQSUVO
VFJZUCBQRk5FR0xIQU5ETEVHUFVTV0lUQ0hBTkdMRVBST0MpIChFR0xEaXNwbGF5IGRweSk7Cit0
eXBlZGVmIHZvaWQoRUdMQVBJRU5UUllQIFBGTkVHTEZPUkNFR1BVU1dJVENIQU5HTEVQUk9DKSAo
RUdMRGlzcGxheSBkcHksIEVHTGludCBncHVJREhpZ2gsIEVHTGludCBncHVJRExvdyk7CiAjaWZk
ZWYgRUdMX0VHTEVYVF9QUk9UT1RZUEVTCiBFR0xBUEkgdm9pZCBFR0xBUElFTlRSWSBlZ2xSZWxl
YXNlSGlnaFBvd2VyR1BVQU5HTEUoRUdMRGlzcGxheSBkcHksIEVHTENvbnRleHQgY3R4KTsKIEVH
TEFQSSB2b2lkIEVHTEFQSUVOVFJZIGVnbFJlYWNxdWlyZUhpZ2hQb3dlckdQVUFOR0xFKEVHTERp
c3BsYXkgZHB5LCBFR0xDb250ZXh0IGN0eCk7CiBFR0xBUEkgdm9pZCBFR0xBUElFTlRSWSBlZ2xI
YW5kbGVHUFVTd2l0Y2hBTkdMRShFR0xEaXNwbGF5IGRweSk7CitFR0xBUEkgdm9pZCBFR0xBUElF
TlRSWSBlZ2xGb3JjZUdQVVN3aXRjaEFOR0xFKEVHTERpc3BsYXkgZHB5LCBFR0xpbnQgZ3B1SURI
aWdoLCBFR0xpbnQgZ3B1SURMb3cpOwogI2VuZGlmCiAjZW5kaWYgLyogRUdMX0FOR0xFX3Bvd2Vy
X3ByZWZlcmVuY2UgKi8KIApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvaW5j
bHVkZS9HTFNMQU5HL1NoYWRlckxhbmcuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL2luY2x1
ZGUvR0xTTEFORy9TaGFkZXJMYW5nLmgKaW5kZXggYjMyYzYwMTZjYmFmMjM3MDAzNGE2ZGVmNTJj
ZjYyNGEyYTVhMzYwZi4uYzMwMTkzNWE1ODhhODFmNGQxYmNkNmJlYjA3NDI5NDI5NGM1ZjZjZiAx
MDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvaW5jbHVkZS9HTFNMQU5HL1NoYWRl
ckxhbmcuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9pbmNsdWRlL0dMU0xBTkcvU2hh
ZGVyTGFuZy5oCkBAIC0yNiw3ICsyNiw3IEBACiAKIC8vIFZlcnNpb24gbnVtYmVyIGZvciBzaGFk
ZXIgdHJhbnNsYXRpb24gQVBJLgogLy8gSXQgaXMgaW5jcmVtZW50ZWQgZXZlcnkgdGltZSB0aGUg
QVBJIGNoYW5nZXMuCi0jZGVmaW5lIEFOR0xFX1NIX1ZFUlNJT04gMjcwCisjZGVmaW5lIEFOR0xF
X1NIX1ZFUlNJT04gMjcxCiAKIGVudW0gU2hTaGFkZXJTcGVjCiB7CkBAIC00MTgsNiArNDE4LDcg
QEAgc3RydWN0IFNoQnVpbHRJblJlc291cmNlcwogICAgIGludCBPRVNfcHJpbWl0aXZlX2JvdW5k
aW5nX2JveDsKICAgICBpbnQgQU5HTEVfYmFzZV92ZXJ0ZXhfYmFzZV9pbnN0YW5jZV9zaGFkZXJf
YnVpbHRpbjsKICAgICBpbnQgQU5EUk9JRF9leHRlbnNpb25fcGFja19lczMxYTsKKyAgICBpbnQg
S0hSX2JsZW5kX2VxdWF0aW9uX2FkdmFuY2VkOwogCiAgICAgLy8gU2V0IHRvIDEgdG8gZW5hYmxl
IHJlcGxhY2luZyBHTF9FWFRfZHJhd19idWZmZXJzICNleHRlbnNpb24gZGlyZWN0aXZlcwogICAg
IC8vIHdpdGggR0xfTlZfZHJhd19idWZmZXJzIGluIEVTU0wgb3V0cHV0LiBUaGlzIGZsYWcgY2Fu
IGJlIHVzZWQgdG8gZW11bGF0ZQpAQCAtNzk0LDYgKzc5NSwxMCBAQCBHTGVudW0gR2V0VGVzc0dl
blNwYWNpbmcoY29uc3QgU2hIYW5kbGUgaGFuZGxlKTsKIEdMZW51bSBHZXRUZXNzR2VuVmVydGV4
T3JkZXIoY29uc3QgU2hIYW5kbGUgaGFuZGxlKTsKIEdMZW51bSBHZXRUZXNzR2VuUG9pbnRNb2Rl
KGNvbnN0IFNoSGFuZGxlIGhhbmRsZSk7CiAKKy8vIFJldHVybnMgdGhlIGJsZW5kIGVxdWF0aW9u
IGxpc3Qgc3VwcG9ydGVkIGluIHRoZSBmcmFnbWVudCBzaGFkZXIuICBUaGlzIGlzIGEgYml0c2V0
IG9mCisvLyBnbDo6QmxlbmRFcXVhdGlvblR5cGUsIGFuZCBjYW4gb25seSBpbmNsdWRlIGJpdHMg
ZnJvbSBLSFJfYmxlbmRfZXF1YXRpb25fYWR2YW5jZWQuCit1aW50MzJfdCBHZXRBZHZhbmNlZEJs
ZW5kRXF1YXRpb25zKGNvbnN0IFNoSGFuZGxlIGhhbmRsZSk7CisKIC8vCiAvLyBIZWxwZXIgZnVu
Y3Rpb24gdG8gaWRlbnRpZnkgc3BlY3MgdGhhdCBhcmUgYmFzZWQgb24gdGhlIFdlYkdMIHNwZWMu
CiAvLwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvaW5jbHVkZS9HTFNMQU5H
L1NoYWRlclZhcnMuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL2luY2x1ZGUvR0xTTEFORy9T
aGFkZXJWYXJzLmgKaW5kZXggMmZlY2RkMDJjM2U2ZjUzYTk0N2Q2YTQ2MTY2ODExZjU3YTk5ZmYz
ZC4uMTgxNzVlMTVjNzZkMjE3OTE1ZjQ3ZGEwN2Y5MTA3NzgwMmU1YWRjZSAxMDA2NDQKLS0tIGEv
U291cmNlL1RoaXJkUGFydHkvQU5HTEUvaW5jbHVkZS9HTFNMQU5HL1NoYWRlclZhcnMuaAorKysg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9pbmNsdWRlL0dMU0xBTkcvU2hhZGVyVmFycy5oCkBA
IC0xNSw3ICsxNSw3IEBACiAjaW5jbHVkZSA8c3RyaW5nPgogI2luY2x1ZGUgPHZlY3Rvcj4KIAot
Ly8gVGhpcyB0eXBlIGlzIGRlZmluZWQgaGVyZSB0byBzaW1wbGlmeSBBTkdMRSdzIGludGVncmF0
aW9uIHdpdGggZ2xzbGFuZyBmb3IgU1BJUnYuCisvLyBUaGlzIHR5cGUgaXMgZGVmaW5lZCBoZXJl
IHRvIHNpbXBsaWZ5IEFOR0xFJ3MgaW50ZWdyYXRpb24gd2l0aCBnbHNsYW5nIGZvciBTUElSLVYu
CiB1c2luZyBTaENvbXBpbGVPcHRpb25zID0gdWludDY0X3Q7CiAKIG5hbWVzcGFjZSBzaApAQCAt
MjE5LDcgKzIxOSw3IEBAIHN0cnVjdCBTaGFkZXJWYXJpYWJsZQogICAgIGJvb2wgcmVhZG9ubHk7
CiAgICAgYm9vbCB3cml0ZW9ubHk7CiAKLSAgICAvLyBGcm9tIEVYVF9zaGFkZXJfZnJhbWVidWZm
ZXJfZmV0Y2gKKyAgICAvLyBGcm9tIEVYVF9zaGFkZXJfZnJhbWVidWZmZXJfZmV0Y2ggLyBLSFJf
YmxlbmRfZXF1YXRpb25fYWR2YW5jZWQKICAgICBib29sIGlzRnJhZ21lbnRJbk91dDsKIAogICAg
IC8vIE91dHB1dFZhcmlhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9p
bmNsdWRlL3BsYXRmb3JtL0ZlYXR1cmVzTXRsLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9p
bmNsdWRlL3BsYXRmb3JtL0ZlYXR1cmVzTXRsLmgKaW5kZXggMTY1YmI0NzExMDUxNDdhN2Y5YzIy
YzM3OWE4M2FhMmIwODAyODVlZi4uYTg1Y2U5YjlhZDMzNjNmNzE5MTYyNjI3MjU4OWI0YjNiMmVm
MmRkNiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvaW5jbHVkZS9wbGF0Zm9y
bS9GZWF0dXJlc010bC5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL2luY2x1ZGUvcGxh
dGZvcm0vRmVhdHVyZXNNdGwuaApAQCAtMTI4LDYgKzEyOCwxMSBAQCBzdHJ1Y3QgRmVhdHVyZXNN
dGwgOiBGZWF0dXJlU2V0QmFzZQogICAgIEZlYXR1cmUgaW50ZWxEaXNhYmxlRmFzdE1hdGggPSB7
CiAgICAgICAgICJpbnRlbF9kaXNhYmxlX2Zhc3RfbWF0aCIsIEZlYXR1cmVDYXRlZ29yeTo6TWV0
YWxXb3JrYXJvdW5kcywKICAgICAgICAgIkRpc2FibGUgZmFzdCBtYXRoIGluIGF0YW4gYW5kIGlu
dmFyaWFuY2UgY2FzZXMgd2hlbiBydW5uaW5nIGJlbG93IG1hY09TIDEyLjAiLCAmbWVtYmVyc307
CisKKyAgICBGZWF0dXJlIG11bHRpc2FtcGxlQ29sb3JGb3JtYXRTaGFkZXJSZWFkV29ya2Fyb3Vu
ZCA9IHsKKyAgICAgICAgIm11bHRpc2FtcGxlX2NvbG9yX2Zvcm1hdF9zaGFkZXJfcmVhZF93b3Jr
YXJvdW5kIiwgRmVhdHVyZUNhdGVnb3J5OjpNZXRhbFdvcmthcm91bmRzLAorICAgICAgICAiQWRk
IHNoYWRlclJlYWQgdXNhZ2UgdG8gc29tZSBtdWx0aXNhbXBsZWQgdGV4dHVyZSBmb3JtYXRzIiwg
Jm1lbWJlcnMsCisgICAgICAgICJodHRwOi8vYW5nbGVidWcuY29tLzcwNDkifTsKIH07CiAKIH0g
IC8vIG5hbWVzcGFjZSBhbmdsZQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUv
aW5jbHVkZS9wbGF0Zm9ybS9GZWF0dXJlc1ZrLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9p
bmNsdWRlL3BsYXRmb3JtL0ZlYXR1cmVzVmsuaAppbmRleCBmYzBkYjRkYTk2YjJhNjQ3ZDQ2Nzk3
M2ViMjc2ZmYxZjQzOTIxMmEyLi5hMGY5ZGE1ZTY4NDlhYzc2NDQwOGRhNzUyNzEzMTIwYWM0OTM1
YjJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9pbmNsdWRlL3BsYXRmb3Jt
L0ZlYXR1cmVzVmsuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9pbmNsdWRlL3BsYXRm
b3JtL0ZlYXR1cmVzVmsuaApAQCAtMTAzLDE1ICsxMDMsMTUgQEAgc3RydWN0IEZlYXR1cmVzVmsg
OiBGZWF0dXJlU2V0QmFzZQogICAgICAgICAic3VwcG9ydHNGaWx0ZXJpbmdQcmVjaXNpb24iLCBG
ZWF0dXJlQ2F0ZWdvcnk6OlZ1bGthbkZlYXR1cmVzLAogICAgICAgICAiVmtEZXZpY2Ugc3VwcG9y
dHMgdGhlIFZLX0dPT0dMRV9zYW1wbGVyX2ZpbHRlcmluZ19wcmVjaXNpb24gZXh0ZW5zaW9uIiwg
Jm1lbWJlcnN9OwogCi0gICAgLy8gV2hldGhlciB0aGUgVmtEZXZpY2Ugc3VwcG9ydHMgdGhlIFZL
X0tIUl9leHRlcm5hbF9mZW5jZV9jYXBhYmlsaXRpZXMgZXh0ZW5zaW9uLgorICAgIC8vIFdoZXRo
ZXIgdGhlIFZrSW5zdGFuY2Ugc3VwcG9ydHMgdGhlIFZLX0tIUl9leHRlcm5hbF9mZW5jZV9jYXBh
YmlsaXRpZXMgZXh0ZW5zaW9uLgogICAgIEZlYXR1cmUgc3VwcG9ydHNFeHRlcm5hbEZlbmNlQ2Fw
YWJpbGl0aWVzID0gewogICAgICAgICAic3VwcG9ydHNFeHRlcm5hbEZlbmNlQ2FwYWJpbGl0aWVz
IiwgRmVhdHVyZUNhdGVnb3J5OjpWdWxrYW5GZWF0dXJlcywKLSAgICAgICAgIlZrRGV2aWNlIHN1
cHBvcnRzIHRoZSBWS19LSFJfZXh0ZXJuYWxfZmVuY2VfY2FwYWJpbGl0aWVzIGV4dGVuc2lvbiIs
ICZtZW1iZXJzfTsKKyAgICAgICAgIlZrSW5zdGFuY2Ugc3VwcG9ydHMgdGhlIFZLX0tIUl9leHRl
cm5hbF9mZW5jZV9jYXBhYmlsaXRpZXMgZXh0ZW5zaW9uIiwgJm1lbWJlcnN9OwogCi0gICAgLy8g
V2hldGhlciB0aGUgVmtEZXZpY2Ugc3VwcG9ydHMgdGhlIFZLX0tIUl9leHRlcm5hbF9zZW1hcGhv
cmVfY2FwYWJpbGl0aWVzIGV4dGVuc2lvbi4KKyAgICAvLyBXaGV0aGVyIHRoZSBWa0luc3RhbmNl
IHN1cHBvcnRzIHRoZSBWS19LSFJfZXh0ZXJuYWxfc2VtYXBob3JlX2NhcGFiaWxpdGllcyBleHRl
bnNpb24uCiAgICAgRmVhdHVyZSBzdXBwb3J0c0V4dGVybmFsU2VtYXBob3JlQ2FwYWJpbGl0aWVz
ID0gewogICAgICAgICAic3VwcG9ydHNFeHRlcm5hbFNlbWFwaG9yZUNhcGFiaWxpdGllcyIsIEZl
YXR1cmVDYXRlZ29yeTo6VnVsa2FuRmVhdHVyZXMsCi0gICAgICAgICJWa0RldmljZSBzdXBwb3J0
cyB0aGUgVktfS0hSX2V4dGVybmFsX3NlbWFwaG9yZV9jYXBhYmlsaXRpZXMgZXh0ZW5zaW9uIiwg
Jm1lbWJlcnN9OworICAgICAgICAiVmtJbnN0YW5jZSBzdXBwb3J0cyB0aGUgVktfS0hSX2V4dGVy
bmFsX3NlbWFwaG9yZV9jYXBhYmlsaXRpZXMgZXh0ZW5zaW9uIiwgJm1lbWJlcnN9OwogCiAgICAg
Ly8gV2hldGhlciB0aGUgVmtEZXZpY2Ugc3VwcG9ydHMgdGhlIFZLX0tIUl9leHRlcm5hbF9zZW1h
cGhvcmVfZmQgZXh0ZW5zaW9uLCBvbiB3aGljaCB0aGUKICAgICAvLyBHTF9FWFRfc2VtYXBob3Jl
X2ZkIGV4dGVuc2lvbiBjYW4gYmUgbGF5ZXJlZC4KQEAgLTQwNCw2ICs0MDQsMTMgQEAgc3RydWN0
IEZlYXR1cmVzVmsgOiBGZWF0dXJlU2V0QmFzZQogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICJWa0RldmljZSBzdXBwb3J0cyBWS19FWFRfZGVwdGhfY2xpcF9jb250cm9s
IGV4dGVuc2lvbi4iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZt
ZW1iZXJzLCAiaHR0cDovL2FuZ2xlYnVnLmNvbS81NDIxIn07CiAKKyAgICAvLyBXaGV0aGVyIHRo
ZSBWa0RldmljZSBzdXBwb3J0cyB0aGUgVktfRVhUX2JsZW5kX29wZXJhdGlvbl9hZHZhbmNlZCBl
eHRlbnNpb24KKyAgICAvLyBodHRwOi8vYW5nbGVidWcuY29tLzM1ODYKKyAgICBGZWF0dXJlIHN1
cHBvcnRzQmxlbmRPcGVyYXRpb25BZHZhbmNlZCA9IHsKKyAgICAgICAgInN1cHBvcnRzQmxlbmRP
cGVyYXRpb25BZHZhbmNlZCIsIEZlYXR1cmVDYXRlZ29yeTo6VnVsa2FuRmVhdHVyZXMsCisgICAg
ICAgICJWa0RldmljZSBzdXBwb3J0cyBWS19FWFRfYmxlbmRfb3BlcmF0aW9uX2FkdmFuY2VkIGV4
dGVuc2lvbi4iLCAmbWVtYmVycywKKyAgICAgICAgImh0dHA6Ly9hbmdsZWJ1Zy5jb20vMzU4NiJ9
OworCiAgICAgLy8gRm9yY2UgbWF4VW5pZm9ybUJ1ZmZlclNpemUgdG8gMTZLIG9uIFF1YWxjb21t
J3MgQWRyZW5vIDU0MC4gUGl4ZWwyJ3MgQWRyZW5vNTQwIHJlcG9ydHMKICAgICAvLyBtYXhVbmlm
b3JtQnVmZmVyU2l6ZSA2NGsgYnV0IHZhcmlvdXMgdGVzdHMgZmFpbGVkIHdpdGggdGhhdCBzaXpl
LiBGb3IgdGhhdCBzcGVjaWZpYwogICAgIC8vIGRldmljZSwgd2Ugc2V0IHRvIDE2ayBmb3Igbm93
IHdoaWNoIGlzIGtub3duIHRvIHBhc3MgYWxsIHRlc3RzLgpAQCAtNTc4LDYgKzU4NSwxMSBAQCBz
dHJ1Y3QgRmVhdHVyZXNWayA6IEZlYXR1cmVTZXRCYXNlCiAgICAgICAgICJzdXBwb3J0c1N1cmZh
Y2VQcm90ZWN0ZWRDYXBhYmlsaXRpZXNFeHRlbnNpb24iLCBGZWF0dXJlQ2F0ZWdvcnk6OlZ1bGth
bkZlYXR1cmVzLAogICAgICAgICAiVmtJbnN0YW5jZSBzdXBwb3J0cyB0aGUgVktfS0hSX3N1cmZh
Y2VfcHJvdGVjdGVkX2NhcGFiaWxpdGllcyBleHRlbnNpb24iLCAmbWVtYmVyc307CiAKKyAgICAv
LyBXaGV0aGVyIHRoZSBWa0luc3RhbmNlIHN1cHBvcnRzIHRoZSBWS19HT09HTEVfc3VyZmFjZWxl
c3NfcXVlcnkgZXh0ZW5zaW9uLgorICAgIEZlYXR1cmUgc3VwcG9ydHNTdXJmYWNlbGVzc1F1ZXJ5
RXh0ZW5zaW9uID0geworICAgICAgICAic3VwcG9ydHNTdXJmYWNlbGVzc1F1ZXJ5RXh0ZW5zaW9u
IiwgRmVhdHVyZUNhdGVnb3J5OjpWdWxrYW5GZWF0dXJlcywKKyAgICAgICAgIlZrSW5zdGFuY2Ug
c3VwcG9ydHMgdGhlIFZLX0dPT0dMRV9zdXJmYWNlbGVzc19xdWVyeSBleHRlbnNpb24iLCAmbWVt
YmVyc307CisKICAgICAvLyBXaGV0aGVyIHRoZSBWa1N1cmZhY2Ugc3VwcG9ydHMgcHJvdGVjdGVk
IHN3YXBjaGFpbnMgZnJvbQogICAgIC8vIHN1cHBvcnRzU3VyZmFjZVByb3RlY3RlZENhcGFiaWxp
dGllc0V4dGVuc2lvbi4KICAgICBGZWF0dXJlIHN1cHBvcnRzU3VyZmFjZVByb3RlY3RlZFN3YXBj
aGFpbnMgPSB7CkBAIC02NDAsNiArNjUyLDExIEBAIHN0cnVjdCBGZWF0dXJlc1ZrIDogRmVhdHVy
ZVNldEJhc2UKICAgICBGZWF0dXJlIHJldGFpblNwaXJ2RGVidWdJbmZvID0geyJyZXRhaW5TcGly
dkRlYnVnSW5mbyIsIEZlYXR1cmVDYXRlZ29yeTo6VnVsa2FuRmVhdHVyZXMsCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAiUmV0YWluIGRlYnVnIGluZm8gaW4gU1BJUi1WIGJs
b2IuIiwgJm1lbWJlcnMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiaHR0
cDovL2FuZ2xlYnVnLmNvbS81OTAxIn07CisKKyAgICAvLyBXaGV0aGVyIHdlIGNyZWF0ZSBhIFZ1
bGthbiBwaXBlbGluZSB3aXRoICJkZWZhdWx0IiBzdGF0ZSBkdXJpbmcgZ2xMaW5rUHJvZ3JhbQor
ICAgIEZlYXR1cmUgY3JlYXRlUGlwZWxpbmVEdXJpbmdMaW5rID0geyJjcmVhdGVQaXBlbGluZUR1
cmluZ0xpbmsiLCBGZWF0dXJlQ2F0ZWdvcnk6OlZ1bGthbkZlYXR1cmVzLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICJDcmVhdGUgcGlwZWxpbmUgd2l0aCBkZWZhdWx0
IHN0YXRlIGR1cmluZyBnbExpbmtQcm9ncmFtIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAmbWVtYmVycywgImh0dHA6Ly9hbmdsZWJ1Zy5jb20vNzA0NiJ9OwogfTsK
IAogaW5saW5lIEZlYXR1cmVzVms6OkZlYXR1cmVzVmsoKSAgPSBkZWZhdWx0OwpkaWZmIC0tZ2l0
IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvaW5mcmEvQU5HTEVXcmFuZ2xpbmcubWQgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9pbmZyYS9BTkdMRVdyYW5nbGluZy5tZAppbmRleCA3OTk2OWZh
NTFjZWY4NDAwMzQzMGVmNjczZmIzNmZlZjFmNWMxMWI3Li5lNGEwMDMxMDJkODM0NzdiY2Y5Mjc0
MTg0ODMyOTE0YjNlYzRmYzFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9p
bmZyYS9BTkdMRVdyYW5nbGluZy5tZAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9pbmZy
YS9BTkdMRVdyYW5nbGluZy5tZApAQCAtNCw3ICs0LDcgQEAgQXMgYW4gQU5HTEUgU2hlcmlmZi4g
WW91ciBqb2IgaXMgdG86CiAKICAxLiBLZWVwIHRoZSBbQU5HTEUgVHJ5IFdhdGVyZmFsbF0oaHR0
cHM6Ly9jaS5jaHJvbWl1bS5vcmcvcC9jaHJvbWl1bS9nL3RyeXNlcnZlci5jaHJvbWl1bS5hbmds
ZS9idWlsZGVycykgaW4gZ29vZAogICAgIHdvcmtpbmcgb3JkZXIuCi0gMS4gQ29udHJvbCBhbmQg
bW9uaXRvciB0aGUgW0FOR0xFIGF1dG8tcm9sbGVyc10oI3Rhc2stM190aGUtYXV0b19yb2xsZXJz
KS4KKyAxLiBDb250cm9sIGFuZCBtb25pdG9yIHRoZSBbQU5HTEUgYXV0by1yb2xsZXJzXSgjdGhl
LWF1dG8tcm9sbGVycykuCiAgMS4gS2VlcCB0aGUgW0FOR0xFIFN0YW5kYWxvbmUgVGVzdGVyc10o
UkVBRE1FLm1kKSBpbiBnb29kIHdvcmtpbmcgb3JkZXIuCiAgMS4gS2VlcCB0aGUgW1N3QU5HTEUg
VHJ5IFdhdGVyZmFsbF0oaHR0cHM6Ly9sdWNpLW1pbG8uYXBwc3BvdC5jb20vcC9jaHJvbWl1bS9n
L3RyeXNlcnZlci5jaHJvbWl1bS5zd2FuZ2xlL2J1aWxkZXJzKSBpbiBnb29kCiAgICAgd29ya2lu
ZyBvcmRlci4KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL2luZnJhL2NvbmZp
Zy9nZW5lcmF0ZWQvY3ItYnVpbGRidWNrZXQuY2ZnIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUv
aW5mcmEvY29uZmlnL2dlbmVyYXRlZC9jci1idWlsZGJ1Y2tldC5jZmcKaW5kZXggZjkyNDdmYzg5
OTY4OWU2OTFkYTBiNTY5OWZiZWJhNTI3ODc3OTk2MS4uMDM3NDIyZGUzNzIyODA3OTgxMjViZDJl
YjU3ZTQzOWZkMmYwNDA4OCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvaW5m
cmEvY29uZmlnL2dlbmVyYXRlZC9jci1idWlsZGJ1Y2tldC5jZmcKKysrIGIvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvaW5mcmEvY29uZmlnL2dlbmVyYXRlZC9jci1idWlsZGJ1Y2tldC5jZmcKQEAg
LTQ2LDYgKzQ2LDEwIEBAIGJ1Y2tldHMgewogICAgICAgICAnfScKICAgICAgIGJ1aWxkX251bWJl
cnM6IFlFUwogICAgICAgc2VydmljZV9hY2NvdW50OiAiYW5nbGUtY2ktYnVpbGRlckBjaG9wcy1z
ZXJ2aWNlLWFjY291bnRzLmlhbS5nc2VydmljZWFjY291bnQuY29tIgorICAgICAgZXhwZXJpbWVu
dHMgeworICAgICAgICBrZXk6ICJsdWNpLnJlY2lwZXMudXNlX3B5dGhvbjMiCisgICAgICAgIHZh
bHVlOiAxMDAKKyAgICAgIH0KICAgICAgIHJlc3VsdGRiIHsKICAgICAgICAgZW5hYmxlOiB0cnVl
CiAgICAgICB9CkBAIC04Miw2ICs4NiwxMCBAQCBidWNrZXRzIHsKICAgICAgICAgJ30nCiAgICAg
ICBidWlsZF9udW1iZXJzOiBZRVMKICAgICAgIHNlcnZpY2VfYWNjb3VudDogImFuZ2xlLWNpLWJ1
aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAg
ICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24z
IgorICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAg
IGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAtMTE4LDYgKzEyNiwxMCBAQCBidWNrZXRzIHsKICAg
ICAgICAgJ30nCiAgICAgICBidWlsZF9udW1iZXJzOiBZRVMKICAgICAgIHNlcnZpY2VfYWNjb3Vu
dDogImFuZ2xlLWNpLWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2Vh
Y2NvdW50LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNp
cGVzLnVzZV9weXRob24zIgorICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1
bHRkYiB7CiAgICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAtMTU0LDYgKzE2NiwxMCBA
QCBidWNrZXRzIHsKICAgICAgICAgJ30nCiAgICAgICBidWlsZF9udW1iZXJzOiBZRVMKICAgICAg
IHNlcnZpY2VfYWNjb3VudDogImFuZ2xlLWNpLWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50
cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAg
a2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgorICAgICAgICB2YWx1ZTogMTAwCisgICAg
ICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAt
MTkwLDYgKzIwNiwxMCBAQCBidWNrZXRzIHsKICAgICAgICAgJ30nCiAgICAgICBidWlsZF9udW1i
ZXJzOiBZRVMKICAgICAgIHNlcnZpY2VfYWNjb3VudDogImFuZ2xlLWNpLWJ1aWxkZXJAY2hvcHMt
c2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4cGVyaW1l
bnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgorICAgICAgICB2
YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJsZTogdHJ1
ZQogICAgICAgfQpAQCAtMjI2LDYgKzI0NiwxMCBAQCBidWNrZXRzIHsKICAgICAgICAgJ30nCiAg
ICAgICBidWlsZF9udW1iZXJzOiBZRVMKICAgICAgIHNlcnZpY2VfYWNjb3VudDogImFuZ2xlLWNp
LWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIK
KyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRo
b24zIgorICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAg
ICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAtMjY0LDYgKzI4OCwxMCBAQCBidWNrZXRzIHsK
ICAgICAgICAgJ30nCiAgICAgICBidWlsZF9udW1iZXJzOiBZRVMKICAgICAgIHNlcnZpY2VfYWNj
b3VudDogImFuZ2xlLWNpLWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZp
Y2VhY2NvdW50LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5y
ZWNpcGVzLnVzZV9weXRob24zIgorICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAgICBy
ZXN1bHRkYiB7CiAgICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAtMzAyLDYgKzMzMCwx
MCBAQCBidWNrZXRzIHsKICAgICAgICAgJ30nCiAgICAgICBidWlsZF9udW1iZXJzOiBZRVMKICAg
ICAgIHNlcnZpY2VfYWNjb3VudDogImFuZ2xlLWNpLWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2Nv
dW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAg
ICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgorICAgICAgICB2YWx1ZTogMTAwCisg
ICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpA
QCAtMzQwLDYgKzM3MiwxMCBAQCBidWNrZXRzIHsKICAgICAgICAgJ30nCiAgICAgICBidWlsZF9u
dW1iZXJzOiBZRVMKICAgICAgIHNlcnZpY2VfYWNjb3VudDogImFuZ2xlLWNpLWJ1aWxkZXJAY2hv
cHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4cGVy
aW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgorICAgICAg
ICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJsZTog
dHJ1ZQogICAgICAgfQpAQCAtMzc4LDYgKzQxNCwxMCBAQCBidWNrZXRzIHsKICAgICAgICAgJ30n
CiAgICAgICBidWlsZF9udW1iZXJzOiBZRVMKICAgICAgIHNlcnZpY2VfYWNjb3VudDogImFuZ2xl
LWNpLWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNv
bSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9w
eXRob24zIgorICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAg
ICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAtNDE2LDYgKzQ1NiwxMCBAQCBidWNrZXRz
IHsKICAgICAgICAgJ30nCiAgICAgICBidWlsZF9udW1iZXJzOiBZRVMKICAgICAgIHNlcnZpY2Vf
YWNjb3VudDogImFuZ2xlLWNpLWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3Nl
cnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVj
aS5yZWNpcGVzLnVzZV9weXRob24zIgorICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAg
ICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAtNDU0LDYgKzQ5
OCwxMCBAQCBidWNrZXRzIHsKICAgICAgICAgJ30nCiAgICAgICBidWlsZF9udW1iZXJzOiBZRVMK
ICAgICAgIHNlcnZpY2VfYWNjb3VudDogImFuZ2xlLWNpLWJ1aWxkZXJAY2hvcHMtc2VydmljZS1h
Y2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAg
ICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgorICAgICAgICB2YWx1ZTogMTAw
CisgICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAg
fQpAQCAtNDkyLDYgKzU0MCwxMCBAQCBidWNrZXRzIHsKICAgICAgICAgJ30nCiAgICAgICBidWls
ZF9udW1iZXJzOiBZRVMKICAgICAgIHNlcnZpY2VfYWNjb3VudDogImFuZ2xlLWNpLWJ1aWxkZXJA
Y2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4
cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgorICAg
ICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJs
ZTogdHJ1ZQogICAgICAgfQpAQCAtNTMwLDYgKzU4MiwxMCBAQCBidWNrZXRzIHsKICAgICAgICAg
J30nCiAgICAgICBidWlsZF9udW1iZXJzOiBZRVMKICAgICAgIHNlcnZpY2VfYWNjb3VudDogImFu
Z2xlLWNpLWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50
LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVz
ZV9weXRob24zIgorICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRkYiB7
CiAgICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAtNTY2LDYgKzYyMiwxMCBAQCBidWNr
ZXRzIHsKICAgICAgICAgJ30nCiAgICAgICBidWlsZF9udW1iZXJzOiBZRVMKICAgICAgIHNlcnZp
Y2VfYWNjb3VudDogImFuZ2xlLWNpLWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0u
Z3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAi
bHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgorICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAg
ICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAtNjAyLDYg
KzY2MiwxMCBAQCBidWNrZXRzIHsKICAgICAgICAgJ30nCiAgICAgICBidWlsZF9udW1iZXJzOiBZ
RVMKICAgICAgIHNlcnZpY2VfYWNjb3VudDogImFuZ2xlLWNpLWJ1aWxkZXJAY2hvcHMtc2Vydmlj
ZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRzIHsK
KyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgorICAgICAgICB2YWx1ZTog
MTAwCisgICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJsZTogdHJ1ZQogICAg
ICAgfQpAQCAtNjM4LDYgKzcwMiwxMCBAQCBidWNrZXRzIHsKICAgICAgICAgJ30nCiAgICAgICBi
dWlsZF9udW1iZXJzOiBZRVMKICAgICAgIHNlcnZpY2VfYWNjb3VudDogImFuZ2xlLWNpLWJ1aWxk
ZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAg
IGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgor
ICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVu
YWJsZTogdHJ1ZQogICAgICAgfQpAQCAtNjc2LDYgKzc0NCwxMCBAQCBidWNrZXRzIHsKICAgICAg
ICAgJ30nCiAgICAgICBidWlsZF9udW1iZXJzOiBZRVMKICAgICAgIHNlcnZpY2VfYWNjb3VudDog
ImFuZ2xlLWNpLWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2Nv
dW50LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVz
LnVzZV9weXRob24zIgorICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRk
YiB7CiAgICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAtNzE0LDYgKzc4NiwxMCBAQCBi
dWNrZXRzIHsKICAgICAgICAgJ30nCiAgICAgICBidWlsZF9udW1iZXJzOiBZRVMKICAgICAgIHNl
cnZpY2VfYWNjb3VudDogImFuZ2xlLWNpLWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5p
YW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5
OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgorICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9
CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAtNzUy
LDYgKzgyOCwxMCBAQCBidWNrZXRzIHsKICAgICAgICAgJ30nCiAgICAgICBidWlsZF9udW1iZXJz
OiBZRVMKICAgICAgIHNlcnZpY2VfYWNjb3VudDogImFuZ2xlLWNpLWJ1aWxkZXJAY2hvcHMtc2Vy
dmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRz
IHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgorICAgICAgICB2YWx1
ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJsZTogdHJ1ZQog
ICAgICAgfQpAQCAtNzkwLDYgKzg3MCwxMCBAQCBidWNrZXRzIHsKICAgICAgICAgJ30nCiAgICAg
ICBidWlsZF9udW1iZXJzOiBZRVMKICAgICAgIHNlcnZpY2VfYWNjb3VudDogImFuZ2xlLWNpLWJ1
aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAg
ICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24z
IgorICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAg
IGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAtODI4LDYgKzkxMiwxMCBAQCBidWNrZXRzIHsKICAg
ICAgICAgJ30nCiAgICAgICBidWlsZF9udW1iZXJzOiBZRVMKICAgICAgIHNlcnZpY2VfYWNjb3Vu
dDogImFuZ2xlLWNpLWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2Vh
Y2NvdW50LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNp
cGVzLnVzZV9weXRob24zIgorICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1
bHRkYiB7CiAgICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAtODY2LDYgKzk1NCwxMCBA
QCBidWNrZXRzIHsKICAgICAgICAgJ30nCiAgICAgICBidWlsZF9udW1iZXJzOiBZRVMKICAgICAg
IHNlcnZpY2VfYWNjb3VudDogImFuZ2xlLWNpLWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50
cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAg
a2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgorICAgICAgICB2YWx1ZTogMTAwCisgICAg
ICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAt
OTA0LDYgKzk5NiwxMCBAQCBidWNrZXRzIHsKICAgICAgICAgJ30nCiAgICAgICBidWlsZF9udW1i
ZXJzOiBZRVMKICAgICAgIHNlcnZpY2VfYWNjb3VudDogImFuZ2xlLWNpLWJ1aWxkZXJAY2hvcHMt
c2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4cGVyaW1l
bnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgorICAgICAgICB2
YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJsZTogdHJ1
ZQogICAgICAgfQpAQCAtOTQyLDYgKzEwMzgsMTAgQEAgYnVja2V0cyB7CiAgICAgICAgICd9Jwog
ICAgICAgYnVpbGRfbnVtYmVyczogWUVTCiAgICAgICBzZXJ2aWNlX2FjY291bnQ6ICJhbmdsZS1j
aS1idWlsZGVyQGNob3BzLXNlcnZpY2UtYWNjb3VudHMuaWFtLmdzZXJ2aWNlYWNjb3VudC5jb20i
CisgICAgICBleHBlcmltZW50cyB7CisgICAgICAgIGtleTogImx1Y2kucmVjaXBlcy51c2VfcHl0
aG9uMyIKKyAgICAgICAgdmFsdWU6IDEwMAorICAgICAgfQogICAgICAgcmVzdWx0ZGIgewogICAg
ICAgICBlbmFibGU6IHRydWUKICAgICAgIH0KQEAgLTk4MCw2ICsxMDgwLDEwIEBAIGJ1Y2tldHMg
ewogICAgICAgICAnfScKICAgICAgIGJ1aWxkX251bWJlcnM6IFlFUwogICAgICAgc2VydmljZV9h
Y2NvdW50OiAiYW5nbGUtY2ktYnVpbGRlckBjaG9wcy1zZXJ2aWNlLWFjY291bnRzLmlhbS5nc2Vy
dmljZWFjY291bnQuY29tIgorICAgICAgZXhwZXJpbWVudHMgeworICAgICAgICBrZXk6ICJsdWNp
LnJlY2lwZXMudXNlX3B5dGhvbjMiCisgICAgICAgIHZhbHVlOiAxMDAKKyAgICAgIH0KICAgICAg
IHJlc3VsdGRiIHsKICAgICAgICAgZW5hYmxlOiB0cnVlCiAgICAgICB9CkBAIC0xMDE4LDYgKzEx
MjIsMTAgQEAgYnVja2V0cyB7CiAgICAgICAgICd9JwogICAgICAgYnVpbGRfbnVtYmVyczogWUVT
CiAgICAgICBzZXJ2aWNlX2FjY291bnQ6ICJhbmdsZS1jaS1idWlsZGVyQGNob3BzLXNlcnZpY2Ut
YWNjb3VudHMuaWFtLmdzZXJ2aWNlYWNjb3VudC5jb20iCisgICAgICBleHBlcmltZW50cyB7Cisg
ICAgICAgIGtleTogImx1Y2kucmVjaXBlcy51c2VfcHl0aG9uMyIKKyAgICAgICAgdmFsdWU6IDEw
MAorICAgICAgfQogICAgICAgcmVzdWx0ZGIgewogICAgICAgICBlbmFibGU6IHRydWUKICAgICAg
IH0KQEAgLTEwNTYsNiArMTE2NCwxMCBAQCBidWNrZXRzIHsKICAgICAgICAgJ30nCiAgICAgICBi
dWlsZF9udW1iZXJzOiBZRVMKICAgICAgIHNlcnZpY2VfYWNjb3VudDogImFuZ2xlLWNpLWJ1aWxk
ZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAg
IGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgor
ICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVu
YWJsZTogdHJ1ZQogICAgICAgfQpAQCAtMTA5NCw2ICsxMjA2LDEwIEBAIGJ1Y2tldHMgewogICAg
ICAgICAnfScKICAgICAgIGJ1aWxkX251bWJlcnM6IFlFUwogICAgICAgc2VydmljZV9hY2NvdW50
OiAiYW5nbGUtY2ktYnVpbGRlckBjaG9wcy1zZXJ2aWNlLWFjY291bnRzLmlhbS5nc2VydmljZWFj
Y291bnQuY29tIgorICAgICAgZXhwZXJpbWVudHMgeworICAgICAgICBrZXk6ICJsdWNpLnJlY2lw
ZXMudXNlX3B5dGhvbjMiCisgICAgICAgIHZhbHVlOiAxMDAKKyAgICAgIH0KICAgICAgIHJlc3Vs
dGRiIHsKICAgICAgICAgZW5hYmxlOiB0cnVlCiAgICAgICB9CkBAIC0xMTMyLDYgKzEyNDgsMTAg
QEAgYnVja2V0cyB7CiAgICAgICAgICd9JwogICAgICAgYnVpbGRfbnVtYmVyczogWUVTCiAgICAg
ICBzZXJ2aWNlX2FjY291bnQ6ICJhbmdsZS1jaS1idWlsZGVyQGNob3BzLXNlcnZpY2UtYWNjb3Vu
dHMuaWFtLmdzZXJ2aWNlYWNjb3VudC5jb20iCisgICAgICBleHBlcmltZW50cyB7CisgICAgICAg
IGtleTogImx1Y2kucmVjaXBlcy51c2VfcHl0aG9uMyIKKyAgICAgICAgdmFsdWU6IDEwMAorICAg
ICAgfQogICAgICAgcmVzdWx0ZGIgewogICAgICAgICBlbmFibGU6IHRydWUKICAgICAgIH0KQEAg
LTExNzAsNiArMTI5MCwxMCBAQCBidWNrZXRzIHsKICAgICAgICAgJ30nCiAgICAgICBidWlsZF9u
dW1iZXJzOiBZRVMKICAgICAgIHNlcnZpY2VfYWNjb3VudDogImFuZ2xlLWNpLWJ1aWxkZXJAY2hv
cHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4cGVy
aW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgorICAgICAg
ICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJsZTog
dHJ1ZQogICAgICAgfQpAQCAtMTIyMiw2ICsxMzQ2LDEwIEBAIGJ1Y2tldHMgewogICAgICAgICAn
fScKICAgICAgIGJ1aWxkX251bWJlcnM6IFlFUwogICAgICAgc2VydmljZV9hY2NvdW50OiAiYW5n
bGUtdHJ5LWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50
LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVz
ZV9weXRob24zIgorICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRkYiB7
CiAgICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAtMTI1OCw2ICsxMzg2LDEwIEBAIGJ1
Y2tldHMgewogICAgICAgICAnfScKICAgICAgIGJ1aWxkX251bWJlcnM6IFlFUwogICAgICAgc2Vy
dmljZV9hY2NvdW50OiAiYW5nbGUtdHJ5LWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5p
YW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5
OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgorICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9
CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAtMTI5
NCw2ICsxNDI2LDEwIEBAIGJ1Y2tldHMgewogICAgICAgICAnfScKICAgICAgIGJ1aWxkX251bWJl
cnM6IFlFUwogICAgICAgc2VydmljZV9hY2NvdW50OiAiYW5nbGUtdHJ5LWJ1aWxkZXJAY2hvcHMt
c2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4cGVyaW1l
bnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgorICAgICAgICB2
YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJsZTogdHJ1
ZQogICAgICAgfQpAQCAtMTMzMCw2ICsxNDY2LDEwIEBAIGJ1Y2tldHMgewogICAgICAgICAnfScK
ICAgICAgIGJ1aWxkX251bWJlcnM6IFlFUwogICAgICAgc2VydmljZV9hY2NvdW50OiAiYW5nbGUt
dHJ5LWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNv
bSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9w
eXRob24zIgorICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAg
ICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAtMTM2Niw2ICsxNTA2LDEwIEBAIGJ1Y2tl
dHMgewogICAgICAgICAnfScKICAgICAgIGJ1aWxkX251bWJlcnM6IFlFUwogICAgICAgc2Vydmlj
ZV9hY2NvdW50OiAiYW5nbGUtdHJ5LWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0u
Z3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAi
bHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgorICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAg
ICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAtMTQwNCw2
ICsxNTQ4LDEwIEBAIGJ1Y2tldHMgewogICAgICAgICAnfScKICAgICAgIGJ1aWxkX251bWJlcnM6
IFlFUwogICAgICAgc2VydmljZV9hY2NvdW50OiAiYW5nbGUtdHJ5LWJ1aWxkZXJAY2hvcHMtc2Vy
dmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRz
IHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgorICAgICAgICB2YWx1
ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJsZTogdHJ1ZQog
ICAgICAgfQpAQCAtMTQ0Miw2ICsxNTkwLDEwIEBAIGJ1Y2tldHMgewogICAgICAgICAnfScKICAg
ICAgIGJ1aWxkX251bWJlcnM6IFlFUwogICAgICAgc2VydmljZV9hY2NvdW50OiAiYW5nbGUtdHJ5
LWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIK
KyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRo
b24zIgorICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAg
ICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAtMTQ4MCw2ICsxNjMyLDEwIEBAIGJ1Y2tldHMg
ewogICAgICAgICAnfScKICAgICAgIGJ1aWxkX251bWJlcnM6IFlFUwogICAgICAgc2VydmljZV9h
Y2NvdW50OiAiYW5nbGUtdHJ5LWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3Nl
cnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVj
aS5yZWNpcGVzLnVzZV9weXRob24zIgorICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAg
ICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAtMTUxOCw2ICsx
Njc0LDEwIEBAIGJ1Y2tldHMgewogICAgICAgICAnfScKICAgICAgIGJ1aWxkX251bWJlcnM6IFlF
UwogICAgICAgc2VydmljZV9hY2NvdW50OiAiYW5nbGUtdHJ5LWJ1aWxkZXJAY2hvcHMtc2Vydmlj
ZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRzIHsK
KyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgorICAgICAgICB2YWx1ZTog
MTAwCisgICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJsZTogdHJ1ZQogICAg
ICAgfQpAQCAtMTU1Niw2ICsxNzE2LDEwIEBAIGJ1Y2tldHMgewogICAgICAgICAnfScKICAgICAg
IGJ1aWxkX251bWJlcnM6IFlFUwogICAgICAgc2VydmljZV9hY2NvdW50OiAiYW5nbGUtdHJ5LWJ1
aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAg
ICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24z
IgorICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAg
IGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAtMTU5NCw2ICsxNzU4LDEwIEBAIGJ1Y2tldHMgewog
ICAgICAgICAnfScKICAgICAgIGJ1aWxkX251bWJlcnM6IFlFUwogICAgICAgc2VydmljZV9hY2Nv
dW50OiAiYW5nbGUtdHJ5LWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZp
Y2VhY2NvdW50LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5y
ZWNpcGVzLnVzZV9weXRob24zIgorICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAgICBy
ZXN1bHRkYiB7CiAgICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAtMTYzMCw2ICsxNzk4
LDEwIEBAIGJ1Y2tldHMgewogICAgICAgICAnfScKICAgICAgIGJ1aWxkX251bWJlcnM6IFlFUwog
ICAgICAgc2VydmljZV9hY2NvdW50OiAiYW5nbGUtdHJ5LWJ1aWxkZXJAY2hvcHMtc2VydmljZS1h
Y2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAg
ICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgorICAgICAgICB2YWx1ZTogMTAw
CisgICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAg
fQpAQCAtMTY2Niw2ICsxODM4LDEwIEBAIGJ1Y2tldHMgewogICAgICAgICAnfScKICAgICAgIGJ1
aWxkX251bWJlcnM6IFlFUwogICAgICAgc2VydmljZV9hY2NvdW50OiAiYW5nbGUtdHJ5LWJ1aWxk
ZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAg
IGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgor
ICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVu
YWJsZTogdHJ1ZQogICAgICAgfQpAQCAtMTcwMiw2ICsxODc4LDEwIEBAIGJ1Y2tldHMgewogICAg
ICAgICAnfScKICAgICAgIGJ1aWxkX251bWJlcnM6IFlFUwogICAgICAgc2VydmljZV9hY2NvdW50
OiAiYW5nbGUtdHJ5LWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2Vh
Y2NvdW50LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNp
cGVzLnVzZV9weXRob24zIgorICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1
bHRkYiB7CiAgICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAtMTc3NCw2ICsxOTU0LDEw
IEBAIGJ1Y2tldHMgewogICAgICAgICAnfScKICAgICAgIGJ1aWxkX251bWJlcnM6IFlFUwogICAg
ICAgc2VydmljZV9hY2NvdW50OiAiYW5nbGUtdHJ5LWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2Nv
dW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAg
ICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgorICAgICAgICB2YWx1ZTogMTAwCisg
ICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpA
QCAtMTgxMiw2ICsxOTk2LDEwIEBAIGJ1Y2tldHMgewogICAgICAgICAnfScKICAgICAgIGJ1aWxk
X251bWJlcnM6IFlFUwogICAgICAgc2VydmljZV9hY2NvdW50OiAiYW5nbGUtdHJ5LWJ1aWxkZXJA
Y2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4
cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgorICAg
ICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJs
ZTogdHJ1ZQogICAgICAgfQpAQCAtMTg1MCw2ICsyMDM4LDEwIEBAIGJ1Y2tldHMgewogICAgICAg
ICAnfScKICAgICAgIGJ1aWxkX251bWJlcnM6IFlFUwogICAgICAgc2VydmljZV9hY2NvdW50OiAi
YW5nbGUtdHJ5LWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2Nv
dW50LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVz
LnVzZV9weXRob24zIgorICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRk
YiB7CiAgICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAtMTg4OCw2ICsyMDgwLDEwIEBA
IGJ1Y2tldHMgewogICAgICAgICAnfScKICAgICAgIGJ1aWxkX251bWJlcnM6IFlFUwogICAgICAg
c2VydmljZV9hY2NvdW50OiAiYW5nbGUtdHJ5LWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50
cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAg
a2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgorICAgICAgICB2YWx1ZTogMTAwCisgICAg
ICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAt
MTkyNiw2ICsyMTIyLDEwIEBAIGJ1Y2tldHMgewogICAgICAgICAnfScKICAgICAgIGJ1aWxkX251
bWJlcnM6IFlFUwogICAgICAgc2VydmljZV9hY2NvdW50OiAiYW5nbGUtdHJ5LWJ1aWxkZXJAY2hv
cHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4cGVy
aW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgorICAgICAg
ICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJsZTog
dHJ1ZQogICAgICAgfQpAQCAtMTk2NCw2ICsyMTY0LDEwIEBAIGJ1Y2tldHMgewogICAgICAgICAn
fScKICAgICAgIGJ1aWxkX251bWJlcnM6IFlFUwogICAgICAgc2VydmljZV9hY2NvdW50OiAiYW5n
bGUtdHJ5LWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50
LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVz
ZV9weXRob24zIgorICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRkYiB7
CiAgICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAtMjAwMiw2ICsyMjA2LDEwIEBAIGJ1
Y2tldHMgewogICAgICAgICAnfScKICAgICAgIGJ1aWxkX251bWJlcnM6IFlFUwogICAgICAgc2Vy
dmljZV9hY2NvdW50OiAiYW5nbGUtdHJ5LWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5p
YW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5
OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgorICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9
CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAtMjA0
MCw2ICsyMjQ4LDEwIEBAIGJ1Y2tldHMgewogICAgICAgICAnfScKICAgICAgIGJ1aWxkX251bWJl
cnM6IFlFUwogICAgICAgc2VydmljZV9hY2NvdW50OiAiYW5nbGUtdHJ5LWJ1aWxkZXJAY2hvcHMt
c2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4cGVyaW1l
bnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgorICAgICAgICB2
YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJsZTogdHJ1
ZQogICAgICAgfQpAQCAtMjA3OCw2ICsyMjkwLDEwIEBAIGJ1Y2tldHMgewogICAgICAgICAnfScK
ICAgICAgIGJ1aWxkX251bWJlcnM6IFlFUwogICAgICAgc2VydmljZV9hY2NvdW50OiAiYW5nbGUt
dHJ5LWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNv
bSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9w
eXRob24zIgorICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAg
ICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAtMjExNiw2ICsyMzMyLDEwIEBAIGJ1Y2tl
dHMgewogICAgICAgICAnfScKICAgICAgIGJ1aWxkX251bWJlcnM6IFlFUwogICAgICAgc2Vydmlj
ZV9hY2NvdW50OiAiYW5nbGUtdHJ5LWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0u
Z3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAi
bHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgorICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAg
ICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAtMjE1NCw2
ICsyMzc0LDEwIEBAIGJ1Y2tldHMgewogICAgICAgICAnfScKICAgICAgIGJ1aWxkX251bWJlcnM6
IFlFUwogICAgICAgc2VydmljZV9hY2NvdW50OiAiYW5nbGUtdHJ5LWJ1aWxkZXJAY2hvcHMtc2Vy
dmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRz
IHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgorICAgICAgICB2YWx1
ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJsZTogdHJ1ZQog
ICAgICAgfQpAQCAtMjE5Miw2ICsyNDE2LDEwIEBAIGJ1Y2tldHMgewogICAgICAgICAnfScKICAg
ICAgIGJ1aWxkX251bWJlcnM6IFlFUwogICAgICAgc2VydmljZV9hY2NvdW50OiAiYW5nbGUtdHJ5
LWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIK
KyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRo
b24zIgorICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAg
ICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvaW5mcmEvY29uZmlnL21haW4uc3RhciBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL2lu
ZnJhL2NvbmZpZy9tYWluLnN0YXIKaW5kZXggZjRmYzgxZjM0NTI5ZjE1YzI2MzM2OGM0MTFkZjk4
MWMwYmM3OGQ5Ny4uNmMxMmE2Zjk5MWViZGIwNzc3YTgzNWJmZDk0NTdjOTdiMGEyNDRlYSAxMDA3
NTUKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvaW5mcmEvY29uZmlnL21haW4uc3Rhcgor
KysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9pbmZyYS9jb25maWcvbWFpbi5zdGFyCkBAIC0x
NjUsNiArMTY1LDcgQEAgYnVpbGRfcmVjaXBlID0gX3JlY2lwZV9mb3JfcGFja2FnZSgKIAogYnVp
bGRfcmVjaXBlKAogICAgIG5hbWUgPSAicmVjaXBlOmFuZ2xlIiwKKyAgICB1c2VfcHl0aG9uMyA9
IFRydWUsCiApCiAKIGJ1aWxkX3JlY2lwZSgKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL2luZnJhL3NwZWNzL2FuZ2xlLmpzb24gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9p
bmZyYS9zcGVjcy9hbmdsZS5qc29uCmluZGV4IDFkNzhkYWNmNDRiMDlmZGZmYTU1ZjJkMGY0OTdk
YTYyZGUzNTZjM2UuLjQ5MjU1YjMxMzIzZGU0OWQwYzJiZDJmZTAxOWMzZWUxNGI4NWEyNDAgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL2luZnJhL3NwZWNzL2FuZ2xlLmpzb24K
KysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvaW5mcmEvc3BlY3MvYW5nbGUuanNvbgpAQCAt
NDg1LDcgKzQ4NSw4IEBACiAgICAgICB7CiAgICAgICAgICJhcmdzIjogWwogICAgICAgICAgICIt
LWxvZz1kZWJ1ZyIsCi0gICAgICAgICAgIi0tc21va2UtdGVzdC1tb2RlIgorICAgICAgICAgICIt
LXNtb2tlLXRlc3QtbW9kZSIsCisgICAgICAgICAgIi0tc2hvdy10ZXN0LXN0ZG91dCIKICAgICAg
ICAgXSwKICAgICAgICAgImlzb2xhdGVfbmFtZSI6ICJhbmdsZV9wZXJmdGVzdHMiLAogICAgICAg
ICAibWVyZ2UiOiB7CkBAIC01NjcsNyArNTY4LDggQEAKICAgICAiaXNvbGF0ZWRfc2NyaXB0cyI6
IFsKICAgICAgIHsKICAgICAgICAgImFyZ3MiOiBbCi0gICAgICAgICAgIi0tbG9nPWRlYnVnIgor
ICAgICAgICAgICItLWxvZz1kZWJ1ZyIsCisgICAgICAgICAgIi0tc2hvdy10ZXN0LXN0ZG91dCIK
ICAgICAgICAgXSwKICAgICAgICAgImlzb2xhdGVfbmFtZSI6ICJhbmdsZV9wZXJmdGVzdHMiLAog
ICAgICAgICAibWVyZ2UiOiB7CkBAIC0xMDkyLDcgKzEwOTQsOCBAQAogICAgICAgewogICAgICAg
ICAiYXJncyI6IFsKICAgICAgICAgICAiLS1sb2c9ZGVidWciLAotICAgICAgICAgICItLXNtb2tl
LXRlc3QtbW9kZSIKKyAgICAgICAgICAiLS1zbW9rZS10ZXN0LW1vZGUiLAorICAgICAgICAgICIt
LXNob3ctdGVzdC1zdGRvdXQiCiAgICAgICAgIF0sCiAgICAgICAgICJpc29sYXRlX25hbWUiOiAi
YW5nbGVfcGVyZnRlc3RzIiwKICAgICAgICAgIm1lcmdlIjogewpAQCAtMTE1NSw3ICsxMTU4LDgg
QEAKICAgICAiaXNvbGF0ZWRfc2NyaXB0cyI6IFsKICAgICAgIHsKICAgICAgICAgImFyZ3MiOiBb
Ci0gICAgICAgICAgIi0tbG9nPWRlYnVnIgorICAgICAgICAgICItLWxvZz1kZWJ1ZyIsCisgICAg
ICAgICAgIi0tc2hvdy10ZXN0LXN0ZG91dCIKICAgICAgICAgXSwKICAgICAgICAgImlzb2xhdGVf
bmFtZSI6ICJhbmdsZV9wZXJmdGVzdHMiLAogICAgICAgICAibWVyZ2UiOiB7CkBAIC0xNzQwLDcg
KzE3NDQsOCBAQAogICAgICAgewogICAgICAgICAiYXJncyI6IFsKICAgICAgICAgICAiLS1sb2c9
ZGVidWciLAotICAgICAgICAgICItLXNtb2tlLXRlc3QtbW9kZSIKKyAgICAgICAgICAiLS1zbW9r
ZS10ZXN0LW1vZGUiLAorICAgICAgICAgICItLXNob3ctdGVzdC1zdGRvdXQiCiAgICAgICAgIF0s
CiAgICAgICAgICJpc29sYXRlX25hbWUiOiAiYW5nbGVfcGVyZnRlc3RzIiwKICAgICAgICAgIm1l
cmdlIjogewpAQCAtMTgwMiw3ICsxODA3LDggQEAKICAgICAiaXNvbGF0ZWRfc2NyaXB0cyI6IFsK
ICAgICAgIHsKICAgICAgICAgImFyZ3MiOiBbCi0gICAgICAgICAgIi0tbG9nPWRlYnVnIgorICAg
ICAgICAgICItLWxvZz1kZWJ1ZyIsCisgICAgICAgICAgIi0tc2hvdy10ZXN0LXN0ZG91dCIKICAg
ICAgICAgXSwKICAgICAgICAgImlzb2xhdGVfbmFtZSI6ICJhbmdsZV9wZXJmdGVzdHMiLAogICAg
ICAgICAibWVyZ2UiOiB7CkBAIC0yMjQ5LDYgKzIyNTUsMzYgQEAKICAgICAgICAgInRlc3QiOiAi
YW5nbGVfZW5kMmVuZF90ZXN0cyIsCiAgICAgICAgICJ0ZXN0X2lkX3ByZWZpeCI6ICJuaW5qYTov
L3NyYy90ZXN0czphbmdsZV9lbmQyZW5kX3Rlc3RzLyIsCiAgICAgICAgICJ1c2VfaXNvbGF0ZWRf
c2NyaXB0c19hcGkiOiB0cnVlCisgICAgICB9LAorICAgICAgeworICAgICAgICAiYXJncyI6IFsK
KyAgICAgICAgICAiYW5nbGVfd2hpdGVfYm94X3Rlc3RzIiwKKyAgICAgICAgICAiLS1ib3QtbW9k
ZSIsCisgICAgICAgICAgIi0tZ3Rlc3RfZmlsdGVyPSpWdWxrYW5fU3dpZnRTaGFkZXIqIiwKKyAg
ICAgICAgICAiLS14dmZiIgorICAgICAgICBdLAorICAgICAgICAibWVyZ2UiOiB7CisgICAgICAg
ICAgImFyZ3MiOiBbXSwKKyAgICAgICAgICAic2NyaXB0IjogIi8vdGVzdGluZy9tZXJnZV9zY3Jp
cHRzL3N0YW5kYXJkX2lzb2xhdGVkX3NjcmlwdF9tZXJnZS5weSIKKyAgICAgICAgfSwKKyAgICAg
ICAgInN3YXJtaW5nIjogeworICAgICAgICAgICJjYW5fdXNlX29uX3N3YXJtaW5nX2J1aWxkZXJz
IjogdHJ1ZSwKKyAgICAgICAgICAiY29udGFpbm1lbnRfdHlwZSI6ICJBVVRPIiwKKyAgICAgICAg
ICAiZGltZW5zaW9uX3NldHMiOiBbCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICJjcHUi
OiAieDg2LTY0IiwKKyAgICAgICAgICAgICAgImdwdSI6ICJub25lIiwKKyAgICAgICAgICAgICAg
Im9zIjogIlVidW50dS0xOC4wNCIsCisgICAgICAgICAgICAgICJwb29sIjogImNocm9taXVtLnRl
c3RzLmdwdSIKKyAgICAgICAgICAgIH0KKyAgICAgICAgICBdLAorICAgICAgICAgICJoYXJkX3Rp
bWVvdXQiOiA5MDAsCisgICAgICAgICAgImlvX3RpbWVvdXQiOiA5MDAsCisgICAgICAgICAgInNl
cnZpY2VfYWNjb3VudCI6ICJjaHJvbWl1bS10ZXN0ZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5p
YW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgICAgfSwKKyAgICAgICAgInRlc3QiOiAiYW5n
bGVfd2hpdGVfYm94X3Rlc3RzIiwKKyAgICAgICAgInRlc3RfaWRfcHJlZml4IjogIm5pbmphOi8v
c3JjL3Rlc3RzOmFuZ2xlX3doaXRlX2JveF90ZXN0cy8iLAorICAgICAgICAidXNlX2lzb2xhdGVk
X3NjcmlwdHNfYXBpIjogdHJ1ZQogICAgICAgfQogICAgIF0sCiAgICAgImlzb2xhdGVkX3Njcmlw
dHMiOiBbCkBAIC0yNzE1LDYgKzI3NTEsMzYgQEAKICAgICAgICAgInRlc3QiOiAiYW5nbGVfZW5k
MmVuZF90ZXN0cyIsCiAgICAgICAgICJ0ZXN0X2lkX3ByZWZpeCI6ICJuaW5qYTovL3NyYy90ZXN0
czphbmdsZV9lbmQyZW5kX3Rlc3RzLyIsCiAgICAgICAgICJ1c2VfaXNvbGF0ZWRfc2NyaXB0c19h
cGkiOiB0cnVlCisgICAgICB9LAorICAgICAgeworICAgICAgICAiYXJncyI6IFsKKyAgICAgICAg
ICAiYW5nbGVfd2hpdGVfYm94X3Rlc3RzIiwKKyAgICAgICAgICAiLS1ib3QtbW9kZSIsCisgICAg
ICAgICAgIi0tZ3Rlc3RfZmlsdGVyPSpWdWxrYW5fU3dpZnRTaGFkZXIqIiwKKyAgICAgICAgICAi
LS14dmZiIgorICAgICAgICBdLAorICAgICAgICAibWVyZ2UiOiB7CisgICAgICAgICAgImFyZ3Mi
OiBbXSwKKyAgICAgICAgICAic2NyaXB0IjogIi8vdGVzdGluZy9tZXJnZV9zY3JpcHRzL3N0YW5k
YXJkX2lzb2xhdGVkX3NjcmlwdF9tZXJnZS5weSIKKyAgICAgICAgfSwKKyAgICAgICAgInN3YXJt
aW5nIjogeworICAgICAgICAgICJjYW5fdXNlX29uX3N3YXJtaW5nX2J1aWxkZXJzIjogdHJ1ZSwK
KyAgICAgICAgICAiY29udGFpbm1lbnRfdHlwZSI6ICJBVVRPIiwKKyAgICAgICAgICAiZGltZW5z
aW9uX3NldHMiOiBbCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICJjcHUiOiAieDg2LTY0
IiwKKyAgICAgICAgICAgICAgImdwdSI6ICJub25lIiwKKyAgICAgICAgICAgICAgIm9zIjogIlVi
dW50dS0xOC4wNCIsCisgICAgICAgICAgICAgICJwb29sIjogImNocm9taXVtLnRlc3RzLmdwdSIK
KyAgICAgICAgICAgIH0KKyAgICAgICAgICBdLAorICAgICAgICAgICJoYXJkX3RpbWVvdXQiOiA5
MDAsCisgICAgICAgICAgImlvX3RpbWVvdXQiOiA5MDAsCisgICAgICAgICAgInNlcnZpY2VfYWNj
b3VudCI6ICJjaHJvbWl1bS10ZXN0ZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZp
Y2VhY2NvdW50LmNvbSIKKyAgICAgICAgfSwKKyAgICAgICAgInRlc3QiOiAiYW5nbGVfd2hpdGVf
Ym94X3Rlc3RzIiwKKyAgICAgICAgInRlc3RfaWRfcHJlZml4IjogIm5pbmphOi8vc3JjL3Rlc3Rz
OmFuZ2xlX3doaXRlX2JveF90ZXN0cy8iLAorICAgICAgICAidXNlX2lzb2xhdGVkX3NjcmlwdHNf
YXBpIjogdHJ1ZQogICAgICAgfQogICAgIF0KICAgfSwKQEAgLTMxNDQsNiArMzIxMCwzNiBAQAog
ICAgICAgICAidGVzdCI6ICJhbmdsZV9lbmQyZW5kX3Rlc3RzIiwKICAgICAgICAgInRlc3RfaWRf
cHJlZml4IjogIm5pbmphOi8vc3JjL3Rlc3RzOmFuZ2xlX2VuZDJlbmRfdGVzdHMvIiwKICAgICAg
ICAgInVzZV9pc29sYXRlZF9zY3JpcHRzX2FwaSI6IHRydWUKKyAgICAgIH0sCisgICAgICB7Cisg
ICAgICAgICJhcmdzIjogWworICAgICAgICAgICJhbmdsZV93aGl0ZV9ib3hfdGVzdHMiLAorICAg
ICAgICAgICItLWJvdC1tb2RlIiwKKyAgICAgICAgICAiLS1ndGVzdF9maWx0ZXI9KlZ1bGthbl9T
d2lmdFNoYWRlcioiLAorICAgICAgICAgICItLXh2ZmIiCisgICAgICAgIF0sCisgICAgICAgICJt
ZXJnZSI6IHsKKyAgICAgICAgICAiYXJncyI6IFtdLAorICAgICAgICAgICJzY3JpcHQiOiAiLy90
ZXN0aW5nL21lcmdlX3NjcmlwdHMvc3RhbmRhcmRfaXNvbGF0ZWRfc2NyaXB0X21lcmdlLnB5Igor
ICAgICAgICB9LAorICAgICAgICAic3dhcm1pbmciOiB7CisgICAgICAgICAgImNhbl91c2Vfb25f
c3dhcm1pbmdfYnVpbGRlcnMiOiB0cnVlLAorICAgICAgICAgICJjb250YWlubWVudF90eXBlIjog
IkFVVE8iLAorICAgICAgICAgICJkaW1lbnNpb25fc2V0cyI6IFsKKyAgICAgICAgICAgIHsKKyAg
ICAgICAgICAgICAgImNwdSI6ICJ4ODYtNjQiLAorICAgICAgICAgICAgICAiZ3B1IjogIm5vbmUi
LAorICAgICAgICAgICAgICAib3MiOiAiVWJ1bnR1LTE4LjA0IiwKKyAgICAgICAgICAgICAgInBv
b2wiOiAiY2hyb21pdW0udGVzdHMuZ3B1IgorICAgICAgICAgICAgfQorICAgICAgICAgIF0sCisg
ICAgICAgICAgImhhcmRfdGltZW91dCI6IDkwMCwKKyAgICAgICAgICAiaW9fdGltZW91dCI6IDkw
MCwKKyAgICAgICAgICAic2VydmljZV9hY2NvdW50IjogImNocm9taXVtLXRlc3RlckBjaG9wcy1z
ZXJ2aWNlLWFjY291bnRzLmlhbS5nc2VydmljZWFjY291bnQuY29tIgorICAgICAgICB9LAorICAg
ICAgICAidGVzdCI6ICJhbmdsZV93aGl0ZV9ib3hfdGVzdHMiLAorICAgICAgICAidGVzdF9pZF9w
cmVmaXgiOiAibmluamE6Ly9zcmMvdGVzdHM6YW5nbGVfd2hpdGVfYm94X3Rlc3RzLyIsCisgICAg
ICAgICJ1c2VfaXNvbGF0ZWRfc2NyaXB0c19hcGkiOiB0cnVlCiAgICAgICB9CiAgICAgXQogICB9
LApAQCAtMzU3MCw2ICszNjY2LDM2IEBACiAgICAgICAgICJ0ZXN0IjogImFuZ2xlX2VuZDJlbmRf
dGVzdHMiLAogICAgICAgICAidGVzdF9pZF9wcmVmaXgiOiAibmluamE6Ly9zcmMvdGVzdHM6YW5n
bGVfZW5kMmVuZF90ZXN0cy8iLAogICAgICAgICAidXNlX2lzb2xhdGVkX3NjcmlwdHNfYXBpIjog
dHJ1ZQorICAgICAgfSwKKyAgICAgIHsKKyAgICAgICAgImFyZ3MiOiBbCisgICAgICAgICAgImFu
Z2xlX3doaXRlX2JveF90ZXN0cyIsCisgICAgICAgICAgIi0tYm90LW1vZGUiLAorICAgICAgICAg
ICItLWd0ZXN0X2ZpbHRlcj0qVnVsa2FuX1N3aWZ0U2hhZGVyKiIsCisgICAgICAgICAgIi0teHZm
YiIKKyAgICAgICAgXSwKKyAgICAgICAgIm1lcmdlIjogeworICAgICAgICAgICJhcmdzIjogW10s
CisgICAgICAgICAgInNjcmlwdCI6ICIvL3Rlc3RpbmcvbWVyZ2Vfc2NyaXB0cy9zdGFuZGFyZF9p
c29sYXRlZF9zY3JpcHRfbWVyZ2UucHkiCisgICAgICAgIH0sCisgICAgICAgICJzd2FybWluZyI6
IHsKKyAgICAgICAgICAiY2FuX3VzZV9vbl9zd2FybWluZ19idWlsZGVycyI6IHRydWUsCisgICAg
ICAgICAgImNvbnRhaW5tZW50X3R5cGUiOiAiQVVUTyIsCisgICAgICAgICAgImRpbWVuc2lvbl9z
ZXRzIjogWworICAgICAgICAgICAgeworICAgICAgICAgICAgICAiY3B1IjogIng4Ni02NCIsCisg
ICAgICAgICAgICAgICJncHUiOiAibm9uZSIsCisgICAgICAgICAgICAgICJvcyI6ICJVYnVudHUt
MTguMDQiLAorICAgICAgICAgICAgICAicG9vbCI6ICJjaHJvbWl1bS50ZXN0cy5ncHUiCisgICAg
ICAgICAgICB9CisgICAgICAgICAgXSwKKyAgICAgICAgICAiaGFyZF90aW1lb3V0IjogOTAwLAor
ICAgICAgICAgICJpb190aW1lb3V0IjogOTAwLAorICAgICAgICAgICJzZXJ2aWNlX2FjY291bnQi
OiAiY2hyb21pdW0tdGVzdGVyQGNob3BzLXNlcnZpY2UtYWNjb3VudHMuaWFtLmdzZXJ2aWNlYWNj
b3VudC5jb20iCisgICAgICAgIH0sCisgICAgICAgICJ0ZXN0IjogImFuZ2xlX3doaXRlX2JveF90
ZXN0cyIsCisgICAgICAgICJ0ZXN0X2lkX3ByZWZpeCI6ICJuaW5qYTovL3NyYy90ZXN0czphbmds
ZV93aGl0ZV9ib3hfdGVzdHMvIiwKKyAgICAgICAgInVzZV9pc29sYXRlZF9zY3JpcHRzX2FwaSI6
IHRydWUKICAgICAgIH0KICAgICBdCiAgIH0sCkBAIC00NDc2LDcgKzQ2MDIsOCBAQAogICAgICAg
ewogICAgICAgICAiYXJncyI6IFsKICAgICAgICAgICAiLS1sb2c9ZGVidWciLAotICAgICAgICAg
ICItLXNtb2tlLXRlc3QtbW9kZSIKKyAgICAgICAgICAiLS1zbW9rZS10ZXN0LW1vZGUiLAorICAg
ICAgICAgICItLXNob3ctdGVzdC1zdGRvdXQiCiAgICAgICAgIF0sCiAgICAgICAgICJpc29sYXRl
X25hbWUiOiAiYW5nbGVfcGVyZnRlc3RzIiwKICAgICAgICAgIm1lcmdlIjogewpAQCAtNTIyOCw3
ICs1MzU1LDggQEAKICAgICAgIHsKICAgICAgICAgImFyZ3MiOiBbCiAgICAgICAgICAgIi0tbG9n
PWRlYnVnIiwKLSAgICAgICAgICAiLS1zbW9rZS10ZXN0LW1vZGUiCisgICAgICAgICAgIi0tc21v
a2UtdGVzdC1tb2RlIiwKKyAgICAgICAgICAiLS1zaG93LXRlc3Qtc3Rkb3V0IgogICAgICAgICBd
LAogICAgICAgICAiaXNvbGF0ZV9uYW1lIjogImFuZ2xlX3BlcmZ0ZXN0cyIsCiAgICAgICAgICJt
ZXJnZSI6IHsKQEAgLTUyOTAsNyArNTQxOCw4IEBACiAgICAgImlzb2xhdGVkX3NjcmlwdHMiOiBb
CiAgICAgICB7CiAgICAgICAgICJhcmdzIjogWwotICAgICAgICAgICItLWxvZz1kZWJ1ZyIKKyAg
ICAgICAgICAiLS1sb2c9ZGVidWciLAorICAgICAgICAgICItLXNob3ctdGVzdC1zdGRvdXQiCiAg
ICAgICAgIF0sCiAgICAgICAgICJpc29sYXRlX25hbWUiOiAiYW5nbGVfcGVyZnRlc3RzIiwKICAg
ICAgICAgIm1lcmdlIjogewpAQCAtNTcyMyw2ICs1ODUyLDM1IEBACiAgICAgICAgICJ0ZXN0Ijog
ImFuZ2xlX2VuZDJlbmRfdGVzdHMiLAogICAgICAgICAidGVzdF9pZF9wcmVmaXgiOiAibmluamE6
Ly9zcmMvdGVzdHM6YW5nbGVfZW5kMmVuZF90ZXN0cy8iLAogICAgICAgICAidXNlX2lzb2xhdGVk
X3NjcmlwdHNfYXBpIjogdHJ1ZQorICAgICAgfSwKKyAgICAgIHsKKyAgICAgICAgImFyZ3MiOiBb
CisgICAgICAgICAgImFuZ2xlX3doaXRlX2JveF90ZXN0cyIsCisgICAgICAgICAgIi0tYm90LW1v
ZGUiLAorICAgICAgICAgICItLWd0ZXN0X2ZpbHRlcj0qVnVsa2FuX1N3aWZ0U2hhZGVyKiIKKyAg
ICAgICAgXSwKKyAgICAgICAgIm1lcmdlIjogeworICAgICAgICAgICJhcmdzIjogW10sCisgICAg
ICAgICAgInNjcmlwdCI6ICIvL3Rlc3RpbmcvbWVyZ2Vfc2NyaXB0cy9zdGFuZGFyZF9pc29sYXRl
ZF9zY3JpcHRfbWVyZ2UucHkiCisgICAgICAgIH0sCisgICAgICAgICJzd2FybWluZyI6IHsKKyAg
ICAgICAgICAiY2FuX3VzZV9vbl9zd2FybWluZ19idWlsZGVycyI6IHRydWUsCisgICAgICAgICAg
ImNvbnRhaW5tZW50X3R5cGUiOiAiQVVUTyIsCisgICAgICAgICAgImRpbWVuc2lvbl9zZXRzIjog
WworICAgICAgICAgICAgeworICAgICAgICAgICAgICAiY3B1IjogIng4Ni02NCIsCisgICAgICAg
ICAgICAgICJncHUiOiAibm9uZSIsCisgICAgICAgICAgICAgICJvcyI6ICJXaW5kb3dzLTEwIiwK
KyAgICAgICAgICAgICAgInBvb2wiOiAiY2hyb21pdW0udGVzdHMuZ3B1IgorICAgICAgICAgICAg
fQorICAgICAgICAgIF0sCisgICAgICAgICAgImhhcmRfdGltZW91dCI6IDkwMCwKKyAgICAgICAg
ICAiaW9fdGltZW91dCI6IDkwMCwKKyAgICAgICAgICAic2VydmljZV9hY2NvdW50IjogImNocm9t
aXVtLXRlc3RlckBjaG9wcy1zZXJ2aWNlLWFjY291bnRzLmlhbS5nc2VydmljZWFjY291bnQuY29t
IgorICAgICAgICB9LAorICAgICAgICAidGVzdCI6ICJhbmdsZV93aGl0ZV9ib3hfdGVzdHMiLAor
ICAgICAgICAidGVzdF9pZF9wcmVmaXgiOiAibmluamE6Ly9zcmMvdGVzdHM6YW5nbGVfd2hpdGVf
Ym94X3Rlc3RzLyIsCisgICAgICAgICJ1c2VfaXNvbGF0ZWRfc2NyaXB0c19hcGkiOiB0cnVlCiAg
ICAgICB9CiAgICAgXSwKICAgICAiaXNvbGF0ZWRfc2NyaXB0cyI6IFsKQEAgLTU3OTUsNiArNTk1
MywzNSBAQAogICAgICAgICAidGVzdCI6ICJhbmdsZV9lbmQyZW5kX3Rlc3RzIiwKICAgICAgICAg
InRlc3RfaWRfcHJlZml4IjogIm5pbmphOi8vc3JjL3Rlc3RzOmFuZ2xlX2VuZDJlbmRfdGVzdHMv
IiwKICAgICAgICAgInVzZV9pc29sYXRlZF9zY3JpcHRzX2FwaSI6IHRydWUKKyAgICAgIH0sCisg
ICAgICB7CisgICAgICAgICJhcmdzIjogWworICAgICAgICAgICJhbmdsZV93aGl0ZV9ib3hfdGVz
dHMiLAorICAgICAgICAgICItLWJvdC1tb2RlIiwKKyAgICAgICAgICAiLS1ndGVzdF9maWx0ZXI9
KlZ1bGthbl9Td2lmdFNoYWRlcioiCisgICAgICAgIF0sCisgICAgICAgICJtZXJnZSI6IHsKKyAg
ICAgICAgICAiYXJncyI6IFtdLAorICAgICAgICAgICJzY3JpcHQiOiAiLy90ZXN0aW5nL21lcmdl
X3NjcmlwdHMvc3RhbmRhcmRfaXNvbGF0ZWRfc2NyaXB0X21lcmdlLnB5IgorICAgICAgICB9LAor
ICAgICAgICAic3dhcm1pbmciOiB7CisgICAgICAgICAgImNhbl91c2Vfb25fc3dhcm1pbmdfYnVp
bGRlcnMiOiB0cnVlLAorICAgICAgICAgICJjb250YWlubWVudF90eXBlIjogIkFVVE8iLAorICAg
ICAgICAgICJkaW1lbnNpb25fc2V0cyI6IFsKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAg
ImNwdSI6ICJ4ODYtNjQiLAorICAgICAgICAgICAgICAiZ3B1IjogIm5vbmUiLAorICAgICAgICAg
ICAgICAib3MiOiAiV2luZG93cy0xMCIsCisgICAgICAgICAgICAgICJwb29sIjogImNocm9taXVt
LnRlc3RzLmdwdSIKKyAgICAgICAgICAgIH0KKyAgICAgICAgICBdLAorICAgICAgICAgICJoYXJk
X3RpbWVvdXQiOiA5MDAsCisgICAgICAgICAgImlvX3RpbWVvdXQiOiA5MDAsCisgICAgICAgICAg
InNlcnZpY2VfYWNjb3VudCI6ICJjaHJvbWl1bS10ZXN0ZXJAY2hvcHMtc2VydmljZS1hY2NvdW50
cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgICAgfSwKKyAgICAgICAgInRlc3QiOiAi
YW5nbGVfd2hpdGVfYm94X3Rlc3RzIiwKKyAgICAgICAgInRlc3RfaWRfcHJlZml4IjogIm5pbmph
Oi8vc3JjL3Rlc3RzOmFuZ2xlX3doaXRlX2JveF90ZXN0cy8iLAorICAgICAgICAidXNlX2lzb2xh
dGVkX3NjcmlwdHNfYXBpIjogdHJ1ZQogICAgICAgfQogICAgIF0KICAgfSwKQEAgLTYyMDcsNiAr
NjM5NCwzNSBAQAogICAgICAgICAidGVzdCI6ICJhbmdsZV9lbmQyZW5kX3Rlc3RzIiwKICAgICAg
ICAgInRlc3RfaWRfcHJlZml4IjogIm5pbmphOi8vc3JjL3Rlc3RzOmFuZ2xlX2VuZDJlbmRfdGVz
dHMvIiwKICAgICAgICAgInVzZV9pc29sYXRlZF9zY3JpcHRzX2FwaSI6IHRydWUKKyAgICAgIH0s
CisgICAgICB7CisgICAgICAgICJhcmdzIjogWworICAgICAgICAgICJhbmdsZV93aGl0ZV9ib3hf
dGVzdHMiLAorICAgICAgICAgICItLWJvdC1tb2RlIiwKKyAgICAgICAgICAiLS1ndGVzdF9maWx0
ZXI9KlZ1bGthbl9Td2lmdFNoYWRlcioiCisgICAgICAgIF0sCisgICAgICAgICJtZXJnZSI6IHsK
KyAgICAgICAgICAiYXJncyI6IFtdLAorICAgICAgICAgICJzY3JpcHQiOiAiLy90ZXN0aW5nL21l
cmdlX3NjcmlwdHMvc3RhbmRhcmRfaXNvbGF0ZWRfc2NyaXB0X21lcmdlLnB5IgorICAgICAgICB9
LAorICAgICAgICAic3dhcm1pbmciOiB7CisgICAgICAgICAgImNhbl91c2Vfb25fc3dhcm1pbmdf
YnVpbGRlcnMiOiB0cnVlLAorICAgICAgICAgICJjb250YWlubWVudF90eXBlIjogIkFVVE8iLAor
ICAgICAgICAgICJkaW1lbnNpb25fc2V0cyI6IFsKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAg
ICAgImNwdSI6ICJ4ODYtNjQiLAorICAgICAgICAgICAgICAiZ3B1IjogIm5vbmUiLAorICAgICAg
ICAgICAgICAib3MiOiAiV2luZG93cy0xMCIsCisgICAgICAgICAgICAgICJwb29sIjogImNocm9t
aXVtLnRlc3RzLmdwdSIKKyAgICAgICAgICAgIH0KKyAgICAgICAgICBdLAorICAgICAgICAgICJo
YXJkX3RpbWVvdXQiOiA5MDAsCisgICAgICAgICAgImlvX3RpbWVvdXQiOiA5MDAsCisgICAgICAg
ICAgInNlcnZpY2VfYWNjb3VudCI6ICJjaHJvbWl1bS10ZXN0ZXJAY2hvcHMtc2VydmljZS1hY2Nv
dW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgICAgfSwKKyAgICAgICAgInRlc3Qi
OiAiYW5nbGVfd2hpdGVfYm94X3Rlc3RzIiwKKyAgICAgICAgInRlc3RfaWRfcHJlZml4IjogIm5p
bmphOi8vc3JjL3Rlc3RzOmFuZ2xlX3doaXRlX2JveF90ZXN0cy8iLAorICAgICAgICAidXNlX2lz
b2xhdGVkX3NjcmlwdHNfYXBpIjogdHJ1ZQogICAgICAgfQogICAgIF0KICAgfSwKZGlmZiAtLWdp
dCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL2luZnJhL3NwZWNzL2dlbmVyYXRlX3Rlc3Rfc3Bl
Y19qc29uLnB5IGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvaW5mcmEvc3BlY3MvZ2VuZXJhdGVf
dGVzdF9zcGVjX2pzb24ucHkKaW5kZXggZmM5ODQ0M2Q0OGIwYWU1ZDVlNzZjMjE0NzMyNmY3ZTE2
ZThkMjE1ZS4uZDZiMzlkZDM2ODM4ODFiYzYyYzQ4NDg2YWVlYmUyOWVkMjkxNGQyZiAxMDA3NTUK
LS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvaW5mcmEvc3BlY3MvZ2VuZXJhdGVfdGVzdF9z
cGVjX2pzb24ucHkKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvaW5mcmEvc3BlY3MvZ2Vu
ZXJhdGVfdGVzdF9zcGVjX2pzb24ucHkKQEAgLTEsNCArMSw0IEBACi0jIS91c3IvYmluL2VudiBw
eXRob24zCisjIS91c3IvYmluL2VudiB2cHl0aG9uMwogIyBDb3B5cmlnaHQgMjAyMSBUaGUgQU5H
TEUgUHJvamVjdCBBdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogIyBVc2Ugb2YgdGhpcyBz
b3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJl
CiAjIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9BTkdMRS9pbmZyYS9zcGVjcy90ZXN0X3N1aXRlcy5weWwgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9pbmZyYS9zcGVjcy90ZXN0X3N1aXRlcy5weWwKaW5kZXggNTUyN2Y3MmI3ZDNhMGVm
N2UxODI5YWQyZmQ3ZWE5YTA4NzQ1Y2Y0MC4uMWI2M2EyOWMyNTZlMTg3MzczMmZhMDE1MGM2MDUw
YmY0ZTYwYjY3NSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvaW5mcmEvc3Bl
Y3MvdGVzdF9zdWl0ZXMucHlsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL2luZnJhL3Nw
ZWNzL3Rlc3Rfc3VpdGVzLnB5bApAQCAtNjc3LDYgKzY3Nyw3IEBACiAgICAgICAnYW5nbGVfcGVy
ZnRlc3RzJzogewogICAgICAgICAnYXJncyc6IFsKICAgICAgICAgICAnLS1sb2c9ZGVidWcnLAor
ICAgICAgICAgICctLXNob3ctdGVzdC1zdGRvdXQnLAogICAgICAgICBdLAogICAgICAgICAnbWVy
Z2UnOiB7CiAgICAgICAgICAgJ3NjcmlwdCc6ICcvL3NjcmlwdHMvcHJvY2Vzc19hbmdsZV9wZXJm
X3Jlc3VsdHMucHknLApAQCAtNjk3LDYgKzY5OCw3IEBACiAgICAgICAgICdhcmdzJzogWwogICAg
ICAgICAgICctLWxvZz1kZWJ1ZycsCiAgICAgICAgICAgJy0tc21va2UtdGVzdC1tb2RlJywKKyAg
ICAgICAgICAnLS1zaG93LXRlc3Qtc3Rkb3V0JywKICAgICAgICAgXSwKICAgICAgICAgJ21lcmdl
JzogewogICAgICAgICAgICdzY3JpcHQnOiAnLy9zY3JpcHRzL3Byb2Nlc3NfYW5nbGVfcGVyZl9y
ZXN1bHRzLnB5JywKQEAgLTEwNjYsNiArMTA2OCwyMCBAQAogICAgICAgICB9LAogICAgICAgfSwK
ICAgICB9LAorCisgICAgJ3N3YW5nbGVfd2hpdGVfYm94X3Rlc3RzJzogeworICAgICAgJ2FuZ2xl
X3doaXRlX2JveF90ZXN0cyc6IHsKKyAgICAgICAgJ2FyZ3MnOiBbCisgICAgICAgICAgJ2FuZ2xl
X3doaXRlX2JveF90ZXN0cycsCisgICAgICAgICAgJy0tYm90LW1vZGUnLAorICAgICAgICAgICct
LWd0ZXN0X2ZpbHRlcj0qVnVsa2FuX1N3aWZ0U2hhZGVyKicsCisgICAgICAgIF0sCisgICAgICAg
ICdsaW51eF9hcmdzJzogWworICAgICAgICAgICctLXh2ZmInLAorICAgICAgICBdLAorICAgICAg
ICAndXNlX2lzb2xhdGVkX3NjcmlwdHNfYXBpJzogVHJ1ZSwKKyAgICAgIH0sCisgICAgfQogICB9
LAogCiAgICdjb21wb3VuZF9zdWl0ZXMnOiB7CkBAIC0xMTY1LDEwICsxMTgxLDEyIEBACiAgICAg
ICAnc3dhbmdsZV9kZXFwX2tocl9nbGVzMzFfdGVzdHMnLAogICAgICAgJ3N3YW5nbGVfZGVxcF9r
aHJfZ2xlczNfdGVzdHMnLAogICAgICAgJ3N3YW5nbGVfZW5kMmVuZF90ZXN0cycsCisgICAgICAn
c3dhbmdsZV93aGl0ZV9ib3hfdGVzdHMnLAogICAgIF0sCiAKICAgICAnc3dhbmdsZV9ub25fZGVx
cF9zbG93X2d0ZXN0cyc6IFsKICAgICAgICdzd2FuZ2xlX2VuZDJlbmRfc2xvd190ZXN0cycsCisg
ICAgICAnc3dhbmdsZV93aGl0ZV9ib3hfdGVzdHMnLAogICAgIF0sCiAKICAgICAnc3dhbmdsZV9z
bG93X2d0ZXN0cyc6IFsKQEAgLTExODYsNiArMTIwNCw3IEBACiAgICAgICAnc3dhbmdsZV9kZXFw
X2tocl9nbGVzMzFfdGVzdHMnLAogICAgICAgJ3N3YW5nbGVfZGVxcF9raHJfZ2xlczNfdGVzdHMn
LAogICAgICAgJ3N3YW5nbGVfZW5kMmVuZF90ZXN0cycsCisgICAgICAnc3dhbmdsZV93aGl0ZV9i
b3hfdGVzdHMnLAogICAgIF0sCiAKICAgICAnd2luMTBfaW50ZWxfZ3Rlc3RzJzogWwpkaWZmIC0t
Z2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc2FtcGxlcy90b3J1c19saWdodGluZy9Ub3J1
c0J1ZmZlclN0b3JhZ2UuY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc2FtcGxlcy90b3J1
c19saWdodGluZy9Ub3J1c0J1ZmZlclN0b3JhZ2UuY3BwCmluZGV4IGZlNzg2NmE2ZDdiZDc5ODVm
NDAwMDQ4YzZhOTQyZTM4NTZlZTU5YjYuLjEzNzg5ZmU1YTIyNjY5ZTQ2ZTNlYjJkZjM4ZTVmY2Ux
NTUxODYwYWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NhbXBsZXMvdG9y
dXNfbGlnaHRpbmcvVG9ydXNCdWZmZXJTdG9yYWdlLmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zYW1wbGVzL3RvcnVzX2xpZ2h0aW5nL1RvcnVzQnVmZmVyU3RvcmFnZS5jcHAKQEAg
LTEzOCw2ICsxMzgsMTEgQEAgdm9pZCBtYWluKCkKICAgICB2b2lkIHN0ZXAoZmxvYXQgZHQsIGRv
dWJsZSB0b3RhbFRpbWUpIG92ZXJyaWRlCiAgICAgewogICAgICAgICBtQW5nbGUgKz0ga0RlZ3Jl
ZXNQZXJTZWNvbmQgKiBkdDsKKyAgICAgICAgaWYgKG1MYXN0RnVsbFNlY29uZCAhPSBzdGF0aWNf
Y2FzdDx1aW50MzJfdD4odG90YWxUaW1lKSkKKyAgICAgICAgeworICAgICAgICAgICAgbUxhc3RG
dWxsU2Vjb25kID0gc3RhdGljX2Nhc3Q8dWludDMyX3Q+KHRvdGFsVGltZSk7CisgICAgICAgICAg
ICByZWdlbmVyYXRlVG9ydXMoKTsKKyAgICAgICAgfQogICAgICAgICB1cGRhdGVIdWVzKHRvdGFs
VGltZSk7CiAgICAgfQogCkBAIC0xNTMsNiArMTU4LDE1IEBAIHZvaWQgbWFpbigpCiAgICAgICAg
IGdsVW5pZm9ybU1hdHJpeDRmdihtTVZNYXRyaXhMb2MsIDEsIEdMX0ZBTFNFLCBtb2RlbE1hdHJp
eC5kYXRhKTsKICAgICAgICAgZ2xVbmlmb3JtTWF0cml4NGZ2KG1NVlBNYXRyaXhMb2MsIDEsIEdM
X0ZBTFNFLCBtdnBNYXRyaXguZGF0YSk7CiAKKyAgICAgICAgZ2xCaW5kQnVmZmVyKEdMX0FSUkFZ
X0JVRkZFUiwgbVZlcnRleEJ1ZmZlcik7CisgICAgICAgIGdsVmVydGV4QXR0cmliUG9pbnRlciht
UG9zaXRpb25Mb2MsIDMsIEdMX0ZMT0FULCBmYWxzZSwgNiAqIHNpemVvZihHTGZsb2F0KSwgbnVs
bHB0cik7CisgICAgICAgIGdsVmVydGV4QXR0cmliUG9pbnRlcihtTm9ybWFsTG9jLCAzLCBHTF9G
TE9BVCwgZmFsc2UsIDYgKiBzaXplb2YoR0xmbG9hdCksCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICByZWludGVycHJldF9jYXN0PGNvbnN0IHZvaWQgKj4oMyAqIHNpemVvZihHTGZsb2F0
KSkpOworICAgICAgICBnbEJpbmRCdWZmZXIoR0xfQVJSQVlfQlVGRkVSLCBtSHVlQnVmZmVyKTsK
KyAgICAgICAgZ2xWZXJ0ZXhBdHRyaWJQb2ludGVyKG1IdWVMb2MsIDEsIEdMX0ZMT0FULCBmYWxz
ZSwgc2l6ZW9mKEdMZmxvYXQpLCBudWxscHRyKTsKKyAgICAgICAgZ2xCaW5kQnVmZmVyKEdMX0VM
RU1FTlRfQVJSQVlfQlVGRkVSLCBtSW5kZXhCdWZmZXIpOworICAgICAgICBnbFZlcnRleEF0dHJp
YlBvaW50ZXIobUh1ZUxvYywgMSwgR0xfRkxPQVQsIGZhbHNlLCBzaXplb2YoR0xmbG9hdCksIG51
bGxwdHIpOworCiAgICAgICAgIGdsRHJhd0VsZW1lbnRzKEdMX1RSSUFOR0xFUywgbUluZGV4Q291
bnQsIEdMX1VOU0lHTkVEX1NIT1JULCAwKTsKIAogICAgICAgICBBU1NFUlQoc3RhdGljX2Nhc3Q8
R0xlbnVtPihHTF9OT19FUlJPUikgPT0gZ2xHZXRFcnJvcigpKTsKQEAgLTE5MSw2ICsyMDUsMzUg
QEAgdm9pZCBtYWluKCkKICAgICAgICAgQVNTRVJUKHN0YXRpY19jYXN0PEdMZW51bT4oR0xfTk9f
RVJST1IpID09IGdsR2V0RXJyb3IoKSk7CiAgICAgfQogCisgICAgdm9pZCByZWdlbmVyYXRlVG9y
dXMoKQorICAgIHsKKyAgICAgICAgZ2xCaW5kQnVmZmVyKEdMX0FSUkFZX0JVRkZFUiwgbUh1ZUJ1
ZmZlcik7CisgICAgICAgIGdsRGlzYWJsZVZlcnRleEF0dHJpYkFycmF5KG1IdWVMb2MpOworICAg
ICAgICBnbFVubWFwQnVmZmVyKEdMX0FSUkFZX0JVRkZFUik7CisgICAgICAgIGdsRGVsZXRlQnVm
ZmVycygxLCAmbUh1ZUJ1ZmZlcik7CisKKyAgICAgICAgc3RkOjp2ZWN0b3I8R0xmbG9hdD4gaHVl
cyhrSHVlc1NpemUsIDAuMGYpOworCisgICAgICAgIGdsR2VuQnVmZmVycygxLCAmbUh1ZUJ1ZmZl
cik7CisgICAgICAgIGdsQmluZEJ1ZmZlcihHTF9BUlJBWV9CVUZGRVIsIG1IdWVCdWZmZXIpOwor
ICAgICAgICBnbEJ1ZmZlclN0b3JhZ2VFWFQoR0xfQVJSQVlfQlVGRkVSLCBrSHVlc1NpemUgKiBz
aXplb2YoR0xmbG9hdCksIGh1ZXMuZGF0YSgpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
R0xfTUFQX1dSSVRFX0JJVCB8IEdMX01BUF9QRVJTSVNURU5UX0JJVF9FWFQgfCBHTF9NQVBfQ09I
RVJFTlRfQklUX0VYVCk7CisKKyAgICAgICAgbUh1ZU1hcFB0ciA9IHN0YXRpY19jYXN0PGZsb2F0
ICo+KAorICAgICAgICAgICAgZ2xNYXBCdWZmZXJSYW5nZShHTF9BUlJBWV9CVUZGRVIsIDAsIGtI
dWVzU2l6ZSAqIHNpemVvZihHTGZsb2F0KSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
R0xfTUFQX1dSSVRFX0JJVCB8IEdMX01BUF9VTlNZTkNIUk9OSVpFRF9CSVQgfAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgR0xfTUFQX1BFUlNJU1RFTlRfQklUX0VYVCB8IEdMX01B
UF9DT0hFUkVOVF9CSVRfRVhUKSk7CisKKyAgICAgICAgQVNTRVJUKG1IdWVNYXBQdHIgIT0gbnVs
bHB0cik7CisgICAgICAgIEFTU0VSVChzdGF0aWNfY2FzdDxHTGVudW0+KEdMX05PX0VSUk9SKSA9
PSBnbEdldEVycm9yKCkpOworCisgICAgICAgIGdsRW5hYmxlVmVydGV4QXR0cmliQXJyYXkobUh1
ZUxvYyk7CisKKyAgICAgICAgR0xzeW5jIHN5bmMgPSBnbEZlbmNlU3luYyhHTF9TWU5DX0dQVV9D
T01NQU5EU19DT01QTEVURSwgMCk7CisgICAgICAgIGdsQ2xpZW50V2FpdFN5bmMoc3luYywgMCwg
MCk7CisgICAgICAgIGdsRGVsZXRlU3luYyhzeW5jKTsKKyAgICB9CisKICAgcHJpdmF0ZToKICAg
ICBHTHVpbnQgbVByb2dyYW0gPSAwOwogCkBAIC0yMTUsNiArMjU4LDggQEAgdm9pZCBtYWluKCkK
ICAgICBmbG9hdCAqbUh1ZU1hcFB0ciA9IG51bGxwdHI7CiAKICAgICBmbG9hdCBtQW5nbGUgPSAw
OworCisgICAgdWludDMyX3QgbUxhc3RGdWxsU2Vjb25kID0gMDsKIH07CiAKIGludCBtYWluKGlu
dCBhcmdjLCBjaGFyICoqYXJndikKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NjcmlwdHMvYm1wX3RvX252MTIucHkgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zY3JpcHRz
L2JtcF90b19udjEyLnB5CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAxMDQ5MTY1OGIz
YjJlZTkxOTIzYjkzYWYyODU4MTlhYzEwYjE5MGRlLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NjcmlwdHMvYm1w
X3RvX252MTIucHkKKysrIC9kZXYvbnVsbApAQCAtMSw4OSArMCwwIEBACi0jIS91c3IvYmluL3B5
dGhvbjIKLSMKLSMgQ29weXJpZ2h0IDIwMTYgVGhlIEFOR0xFIFByb2plY3QgQXV0aG9ycy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KLSMgVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQg
YnkgYSBCU0Qtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQotIyBmb3VuZCBpbiB0aGUgTElDRU5T
RSBmaWxlLgotIwotIyBibXBfdG9fbnYxMi5weToKLSMgICBTY3JpcHQgdG8gY29udmVydCBhIHNp
bXBsZSBCTVAgZmlsZSB0byBhbiBOVjEyIGZvcm1hdC4gVXNlZCB0byBjcmVhdGUKLSMgICB0ZXN0
IGltYWdlcyBmb3IgdGhlIE5WMTIgdGV4dHVyZSBzdHJlYW0gZW5kIHRvIGVuZCB0ZXN0cwotCi1p
bXBvcnQgc3lzCi1pbXBvcnQgc3RydWN0Ci0KLWlmIGxlbihzeXMuYXJndikgIT0gNDoKLSAgICBw
cmludCgiVXNhZ2U6IGJtcF90b19udjEyLnB5IGlucHV0IG91dHB1dCBwcmVmaXgiKQotICAgIGV4
aXQoMCkKLQotYm1wX2ZpbGUgPSBvcGVuKHN5cy5hcmd2WzFdLCAicmIiKQotCi1tYWdpYyA9IGJt
cF9maWxlLnJlYWQoMikKLWlmIChtYWdpYyAhPSAiQk0iKToKLSAgICBwcmludCgiSW52YWxpZCBC
TVAgbWFnaWMiKQotICAgIGV4aXQoMSkKLQotZmlsZV9zaXplLCA9IHN0cnVjdC51bnBhY2soIkki
LCBibXBfZmlsZS5yZWFkKDQpKQotCi0jIGVhdCByZXNlcnZlZCBieXRlcwotYm1wX2ZpbGUucmVh
ZCg0KQotCi1vZmZzZXQsID0gc3RydWN0LnVucGFjaygiSSIsIGJtcF9maWxlLnJlYWQoNCkpCi0K
LWhlYWRlcnNpemUsID0gc3RydWN0LnVucGFjaygiSSIsIGJtcF9maWxlLnJlYWQoNCkpCi13aWR0
aCwgPSBzdHJ1Y3QudW5wYWNrKCJpIiwgYm1wX2ZpbGUucmVhZCg0KSkKLWhlaWdodCwgPSBzdHJ1
Y3QudW5wYWNrKCJpIiwgYm1wX2ZpbGUucmVhZCg0KSkKLXBsYW5lcywgPSBzdHJ1Y3QudW5wYWNr
KCJIIiwgYm1wX2ZpbGUucmVhZCgyKSkKLWJwcCwgPSBzdHJ1Y3QudW5wYWNrKCJIIiwgYm1wX2Zp
bGUucmVhZCgyKSkKLWNvbXByZXNzaW9uLCA9IHN0cnVjdC51bnBhY2soImkiLCBibXBfZmlsZS5y
ZWFkKDQpKQotaW1hZ2Vfc2l6ZSwgPSBzdHJ1Y3QudW5wYWNrKCJpIiwgYm1wX2ZpbGUucmVhZCg0
KSkKLQotaWYgKGJwcCAhPSAyNCBvciBjb21wcmVzc2lvbiAhPSAwKToKLSAgICBwcmludCgiVW5z
dXBwb3J0ZWQgQk1QIGZpbGUiKQotICAgIGJtcF9maWxlLmNsb3NlKCkKLSAgICBleGl0KDEpCi0K
LWJtcF9maWxlLnNlZWsob2Zmc2V0LCAwKQotcGl4ZWxzID0gYm1wX2ZpbGUucmVhZCh3aWR0aCAq
IGhlaWdodCAqIDMpCi1ibXBfZmlsZS5jbG9zZSgpCi0KLSMgY29udmVydCB0byBZVVYgNDo0OjQK
LWNvbnZlcnRlZF9waXhlbHMgPSBieXRlYXJyYXkocGl4ZWxzKQotZm9yIGkgaW4gcmFuZ2UoMCwg
d2lkdGggKiBoZWlnaHQpOgotICAgIFIsID0gc3RydWN0LnVucGFjaygiQiIsIHBpeGVsc1tpICog
MyArIDJdKQotICAgIEcsID0gc3RydWN0LnVucGFjaygiQiIsIHBpeGVsc1tpICogMyArIDFdKQot
ICAgIEIsID0gc3RydWN0LnVucGFjaygiQiIsIHBpeGVsc1tpICogM10pCi0gICAgY29udmVydGVk
X3BpeGVsc1tpICogM10gPSAoKDY2ICogUiArIDEyOSAqIEcgKyAyNSAqIEIgKyAxMjgpID4+IDgp
ICsgMTYKLSAgICBjb252ZXJ0ZWRfcGl4ZWxzW2kgKiAzICsgMV0gPSAoKC0zOCAqIFIgLSA3NCAq
IEcgKyAxMTIgKiBCICsgMTI4KSA+PiA4KSArIDEyOAotICAgIGNvbnZlcnRlZF9waXhlbHNbaSAq
IDMgKyAyXSA9ICgoMTEyICogUiAtIDk0ICogRyAtIDE4ICogQiArIDEyOCkgPj4gOCkgKyAxMjgK
LQotIyBkb3duc2FtcGxlIHRvIHBhY2tlZCBVViBidWZmZXIKLXV2X2J1ZmZlciA9IGJ5dGVhcnJh
eSh3aWR0aCAqIGhlaWdodCAvIDIpCi1mb3IgaSBpbiByYW5nZSgwLCB3aWR0aCAqIGhlaWdodCAv
IDIsIDIpOgotICAgIFUxID0gY29udmVydGVkX3BpeGVsc1soKCgoaSAvIHdpZHRoKSAqIDIpICog
d2lkdGgpICsgKGkgJSB3aWR0aCkpICogMyArIDFdCi0gICAgVTIgPSBjb252ZXJ0ZWRfcGl4ZWxz
WygoKChpIC8gd2lkdGgpICogMikgKiB3aWR0aCkgKyB3aWR0aCArIChpICUgd2lkdGgpKSAqIDMg
KyAxXQotICAgIFYxID0gY29udmVydGVkX3BpeGVsc1soKCgoaSAvIHdpZHRoKSAqIDIpICogd2lk
dGgpICsgKGkgJSB3aWR0aCkpICogMyArIDJdCi0gICAgVjIgPSBjb252ZXJ0ZWRfcGl4ZWxzWygo
KChpIC8gd2lkdGgpICogMikgKiB3aWR0aCkgKyB3aWR0aCArIChpICUgd2lkdGgpKSAqIDMgKyAy
XQotICAgIHV2X2J1ZmZlcltpXSA9IChVMSArIFUyKSAvIDIKLSAgICB1dl9idWZmZXJbaSArIDFd
ID0gKFYxICsgVjIpIC8gMgotCi0jIGV4dHJhY3QgdGhlIFkgYnVmZmVyCi15X2J1ZmZlciA9IGJ5
dGVhcnJheSh3aWR0aCAqIGhlaWdodCkKLWZvciBpIGluIHJhbmdlKDAsIHdpZHRoICogaGVpZ2h0
KToKLSAgICB5X2J1ZmZlcltpXSA9IGNvbnZlcnRlZF9waXhlbHNbaSAqIDNdCi0KLSMgd3JpdGUg
b3V0IHRoZSBmaWxlIGFzIGEgQyBoZWFkZXIKLW52MTJfZmlsZSA9IG9wZW4oc3lzLmFyZ3ZbMl0s
ICJ3IikKLW52MTJfZmlsZS53cml0ZSgiLy8gQXV0b21hdGljYWxseSBnZW5lcmF0ZWQgZnJvbSAi
ICsgc3lzLmFyZ3ZbMV0gKyAiXG4iKQotbnYxMl9maWxlLndyaXRlKCJzdGF0aWMgY29uc3Qgc2l6
ZV90ICIgKyBzeXMuYXJndlszXSArICJfd2lkdGggPSAiICsgc3RyKHdpZHRoKSArICI7XG4iKQot
bnYxMl9maWxlLndyaXRlKCJzdGF0aWMgY29uc3Qgc2l6ZV90ICIgKyBzeXMuYXJndlszXSArICJf
aGVpZ2h0ID0gIiArIHN0cihoZWlnaHQpICsgIjtcbiIpCi1udjEyX2ZpbGUud3JpdGUoInN0YXRp
YyBjb25zdCB1bnNpZ25lZCBjaGFyICIgKyBzeXMuYXJndlszXSArICJfZGF0YVtdID0gXG57IikK
LWZvciBpIGluIHJhbmdlKDAsIHdpZHRoICogaGVpZ2h0KToKLSAgICBpZiAoaSAlIDE2KSA9PSAw
OgotICAgICAgICBudjEyX2ZpbGUud3JpdGUoIlxuICAgICIpCi0gICAgbnYxMl9maWxlLndyaXRl
KHN0cih5X2J1ZmZlcltpXSkgKyAiLCIpCi1mb3IgaSBpbiByYW5nZSgwLCB3aWR0aCAqIGhlaWdo
dCAvIDIpOgotICAgIGlmIChpICUgMTYpID09IDA6Ci0gICAgICAgIG52MTJfZmlsZS53cml0ZSgi
XG4gICAgIikKLSAgICBudjEyX2ZpbGUud3JpdGUoc3RyKHV2X2J1ZmZlcltpXSkgKyAiLCIpCi1u
djEyX2ZpbGUud3JpdGUoIlxufTsiKQotbnYxMl9maWxlLmNsb3NlKCkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NjcmlwdHMvY29kZV9nZW5lcmF0aW9uX2hhc2hlcy9BTkdM
RV9zaGFkZXJfcHJlcHJvY2Vzc29yLmpzb24gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zY3Jp
cHRzL2NvZGVfZ2VuZXJhdGlvbl9oYXNoZXMvQU5HTEVfc2hhZGVyX3ByZXByb2Nlc3Nvci5qc29u
CmluZGV4IGYwNjMzODcwYTJiNGM3MjJhOTk4NzAyZGJhMzJlYzNkNjc5ZjMzMTEuLjBmZDRhZGIy
MTk1NjFhZjI4ZGJmNmVkYjUyM2MzMjVmOTczNjdkYjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3NjcmlwdHMvY29kZV9nZW5lcmF0aW9uX2hhc2hlcy9BTkdMRV9zaGFkZXJf
cHJlcHJvY2Vzc29yLmpzb24KKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc2NyaXB0cy9j
b2RlX2dlbmVyYXRpb25faGFzaGVzL0FOR0xFX3NoYWRlcl9wcmVwcm9jZXNzb3IuanNvbgpAQCAt
Miw3ICsyLDcgQEAKICAgInNyYy9jb21waWxlci9nZW5lcmF0ZV9wYXJzZXJfdG9vbHMucHkiOgog
ICAgICI2YTM0YWQ5MTE3MTBhNDVlNTY0NGU5Zjc5ZGZkMmNlNSIsCiAgICJzcmMvY29tcGlsZXIv
cHJlcHJvY2Vzc29yL2dlbmVyYXRlX3BhcnNlci5weSI6Ci0gICAgImNjODcxZGU5OTY4OGEzNWJm
ZTMyZWY1MDFmOTY1ZDVhIiwKKyAgICAiOWE0NTg4ZmRmMDA5Mjk4ZmU0OWM1MmI5MjUyNzg5Yzci
LAogICAic3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9wcmVwcm9jZXNzb3IubCI6CiAgICAgIjMx
YjRmOGJjMGJiOGY3MTNmNWU0ZGI4YWUwNDkyNWUyIiwKICAgInNyYy9jb21waWxlci9wcmVwcm9j
ZXNzb3IvcHJlcHJvY2Vzc29yLnkiOgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvc2NyaXB0cy9jb2RlX2dlbmVyYXRpb25faGFzaGVzL0FOR0xFX3NoYWRlcl90cmFuc2xhdG9y
Lmpzb24gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zY3JpcHRzL2NvZGVfZ2VuZXJhdGlvbl9o
YXNoZXMvQU5HTEVfc2hhZGVyX3RyYW5zbGF0b3IuanNvbgppbmRleCA1N2ViYzg0MmRlZDUxM2Fk
MmUyNzMxZGU1ZjE1NDYxMDg4YTZhMTFhLi43N2M4NDc3MWMzMTQyZjNjMmQxMDNhNzNjZTg5NWI0
OWEwZWI3YTVkIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zY3JpcHRzL2Nv
ZGVfZ2VuZXJhdGlvbl9oYXNoZXMvQU5HTEVfc2hhZGVyX3RyYW5zbGF0b3IuanNvbgorKysgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zY3JpcHRzL2NvZGVfZ2VuZXJhdGlvbl9oYXNoZXMvQU5H
TEVfc2hhZGVyX3RyYW5zbGF0b3IuanNvbgpAQCAtMiwxMyArMiwxMyBAQAogICAic3JjL2NvbXBp
bGVyL2dlbmVyYXRlX3BhcnNlcl90b29scy5weSI6CiAgICAgIjZhMzRhZDkxMTcxMGE0NWU1NjQ0
ZTlmNzlkZmQyY2U1IiwKICAgInNyYy9jb21waWxlci90cmFuc2xhdG9yL2dlbmVyYXRlX3BhcnNl
ci5weSI6Ci0gICAgIjU2NjE3OGVjZGZhZTNhMjk4MDNiMzY4N2ZjNTE4ZWJiIiwKKyAgICAiYWQ5
MTk5NzJhMDQwZDliM2I0YWE1ZGM1NDdmYWRjNzUiLAogICAic3JjL2NvbXBpbGVyL3RyYW5zbGF0
b3IvZ2xzbGFuZy5sIjoKLSAgICAiOTIxMDIxMTExZjk5MDZiNmI0ODY5Mzc1YjE1MjQ5OWIiLAor
ICAgICI5YjVlZDg1ZjY2MDFlYjZiMTNhOTQ3NjkxNmU0NDhlMCIsCiAgICJzcmMvY29tcGlsZXIv
dHJhbnNsYXRvci9nbHNsYW5nLnkiOgogICAgICJiYmMxMDliMTljNWE0NzI0ZDBlMmY5MTkxYWM1
MjYwMyIsCiAgICJzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9nbHNsYW5nX2xleF9hdXRvZ2VuLmNw
cCI6Ci0gICAgIjE4ZjU2YTUzMDNlNmI3ZTA2MWQ4YWFkZWY2OWZhZjliIiwKKyAgICAiOWFkN2Q2
MmNmZDgxZTM2ZGIzYzk3MzkwYzhmOGFkMjYiLAogICAic3JjL2NvbXBpbGVyL3RyYW5zbGF0b3Iv
Z2xzbGFuZ190YWJfYXV0b2dlbi5jcHAiOgogICAgICJkMjQwODgyOGRkNDQ0OTg2MGIxYmQwNmVh
OTc3MDdhNSIsCiAgICJzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9nbHNsYW5nX3RhYl9hdXRvZ2Vu
LmgiOgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc2NyaXB0cy9jb2RlX2dl
bmVyYXRpb25faGFzaGVzL0V4dGVuc2lvbl9maWxlcy5qc29uIGIvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc2NyaXB0cy9jb2RlX2dlbmVyYXRpb25faGFzaGVzL0V4dGVuc2lvbl9maWxlcy5qc29u
CmluZGV4IGMwMTM5MGUyNDJlZGRjYWVhYjIwN2ExYjgzODYwNDE4NDhiMjBiMjUuLjc4OGVlNDMw
OThjNjhiYzU2MjZiOGMzYzI0NjE2ZTA0ZjFmNGQ4MWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3NjcmlwdHMvY29kZV9nZW5lcmF0aW9uX2hhc2hlcy9FeHRlbnNpb25fZmls
ZXMuanNvbgorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zY3JpcHRzL2NvZGVfZ2VuZXJh
dGlvbl9oYXNoZXMvRXh0ZW5zaW9uX2ZpbGVzLmpzb24KQEAgLTEsMTIgKzEsMTIgQEAKIHsKICAg
ImRvYy9FeHRlbnNpb25TdXBwb3J0Lm1kIjoKLSAgICAiYzExNjA4ZTNhNWM3YmU5ZDg1YWZkYjYx
YzA0ZTc4ZGYiLAorICAgICJmMjAxZTU5YzBkN2ZjODkzYjM3YzRiMmUwOTU0ZDQxMCIsCiAgICJz
Y3JpcHRzL2NsLnhtbCI6CiAgICAgImY5MjMyMDFkNGVhM2UxMTMwNzYzYjE5ZmE3ZmFhN2EyIiwK
ICAgInNjcmlwdHMvZWdsLnhtbCI6CiAgICAgIjAxM2M1NTJlNmM1MjNhYmRjZjI2ODI2OGVhNDdl
OWZlIiwKICAgInNjcmlwdHMvZWdsX2FuZ2xlX2V4dC54bWwiOgotICAgICI3MmJmMTBlZDNkMjNk
NWNkZmE0OTkzNGEwMzkzYjMwZCIsCisgICAgIjM2MThlODM1ZGJlMWIyOGVmNWFkMjBlN2UzNmQx
MjYyIiwKICAgInNjcmlwdHMvZXh0ZW5zaW9uX2RhdGEvaW50ZWxfNjMwX2xpbnV4Lmpzb24iOgog
ICAgICI1MTNkYWJlNTYxYjkyYjU3N2VjODQzM2QyNjNmOGJhNiIsCiAgICJzY3JpcHRzL2V4dGVu
c2lvbl9kYXRhL2ludGVsXzYzMF93aW4xMC5qc29uIjoKQEAgLTIyLDE3ICsyMiwxNyBAQAogICAi
c2NyaXB0cy9leHRlbnNpb25fZGF0YS9zd2lmdHNoYWRlcl93aW4xMF9nbGVzMS5qc29uIjoKICAg
ICAiZmJmMWMzZGM4MzU3MGMxZTNmZmZkYmVlMzEzYmNhMzAiLAogICAic2NyaXB0cy9nbC54bWwi
OgotICAgICJkOTNlMWQ0OTUxOWMyMTcwODI2Nzk4MzY5ODJiOGVlZSIsCisgICAgIjRlYTQyYTU5
MzQzNDhlYWI0ZDMwYzBlOTJlMDBjOTBkIiwKICAgInNjcmlwdHMvZ2xfYW5nbGVfZXh0LnhtbCI6
Ci0gICAgIjQ3NDk4OTQ0MGY5ODBhMDc5OTM1ZGZmM2FiNGQ3YjI0IiwKKyAgICAiNWFjMzg2NzJh
ZTNjNGIwYWNhMDhiNTQ2MWViYzY2OWQiLAogICAic2NyaXB0cy9yZWdpc3RyeV94bWwucHkiOgot
ICAgICIyZDY5MjRkMzk4YTc5MGY0ZWY4MDQ3M2MwMjc5ZWRhNSIsCisgICAgImEwNGMxMGMzMzFk
ZGZmNzNkMGZmOWE1NjQ4OWJlMTI5IiwKICAgInNjcmlwdHMvd2dsLnhtbCI6CiAgICAgImMzNjAw
MTQzMTkxOWUxYzQzNWYxMjE1YTg1ZjdlMWRiIiwKICAgInNyYy9saWJBTkdMRS9nZW5fZXh0ZW5z
aW9ucy5weSI6CiAgICAgIjE4NmU3YjIyY2I1NjBiZjRmMzJlMmIxYjhhMDI1ZGQ4IiwKICAgInNy
Yy9saWJBTkdMRS9nbGVzX2V4dGVuc2lvbnNfYXV0b2dlbi5jcHAiOgotICAgICI5MWQzMjE1YjMy
OTQ2Mzg5M2QyNGFlYWMxZjE3YTU3ZCIsCisgICAgIjVkZmU5NmRhZTVjZDQ4Njc5NDFlMGUzNGIw
OWFhZTRiIiwKICAgInNyYy9saWJBTkdMRS9nbGVzX2V4dGVuc2lvbnNfYXV0b2dlbi5oIjoKLSAg
ICAiOGY4MWExNDQ5ZDllNWRjYjQzMTNiMjgzMmI1MWZlNWYiCisgICAgIjhkZjc0Mjc5YTM0ZGZk
NjM0YWI0YTllZmRkNTkwZjE1IgogfQpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAt
LWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NjcmlwdHMvY29kZV9nZW5lcmF0aW9uX2hh
c2hlcy9HTF9DVFNfKGRFUVApX2J1aWxkX2ZpbGVzLmpzb24gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9zY3JpcHRzL2NvZGVfZ2VuZXJhdGlvbl9oYXNoZXMvR0xfQ1RTXyhkRVFQKV9idWlsZF9m
aWxlcy5qc29uCmluZGV4IGVjNWI1OTJjNTNiMjAwNTJhNjg1Mzc3ODM0ZGQ4ODVkMTRmZDc0YzIu
LjgyYmEwZjRiMDE4ZTk0YzhkYzdmN2NmYTA5YmUzZDQ3NWM5MjY4MDUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NjcmlwdHMvY29kZV9nZW5lcmF0aW9uX2hhc2hlcy9HTF9D
VFNfKGRFUVApX2J1aWxkX2ZpbGVzLmpzb24KKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUv
c2NyaXB0cy9jb2RlX2dlbmVyYXRpb25faGFzaGVzL0dMX0NUU18oZEVRUClfYnVpbGRfZmlsZXMu
anNvbgpAQCAtODAsNyArODAsNyBAQAogICAidGhpcmRfcGFydHkvVkstR0wtQ1RTL3NyYy9leHRl
cm5hbC92dWxrYW5jdHMvbW9kdWxlcy92dWxrYW4vbWVtb3J5L0NNYWtlTGlzdHMudHh0IjoKICAg
ICAiZmRiNjE1ODhlZGVjNzUzMjI2NjBjYWZhMGI5MGRlNmYiLAogICAidGhpcmRfcGFydHkvVkst
R0wtQ1RTL3NyYy9leHRlcm5hbC92dWxrYW5jdHMvbW9kdWxlcy92dWxrYW4vbWVtb3J5X21vZGVs
L0NNYWtlTGlzdHMudHh0IjoKLSAgICAiZmJlODA4YWJiNDk0ZTlhN2EyMjY1ZjIzMDg3ZjQyNGMi
LAorICAgICJiM2RiYjc1ZTUxNTNiMzgyZTYwMmVhZDVjZWFkMTcxMyIsCiAgICJ0aGlyZF9wYXJ0
eS9WSy1HTC1DVFMvc3JjL2V4dGVybmFsL3Z1bGthbmN0cy9tb2R1bGVzL3Z1bGthbi9tZXNoX3No
YWRlci9DTWFrZUxpc3RzLnR4dCI6CiAgICAgIjA3NjE0NjkyYTgwNjNmNzMyNDFkNjdlMDYxMGEx
NmFmIiwKICAgInRoaXJkX3BhcnR5L1ZLLUdMLUNUUy9zcmMvZXh0ZXJuYWwvdnVsa2FuY3RzL21v
ZHVsZXMvdnVsa2FuL21vZGlmaWVycy9DTWFrZUxpc3RzLnR4dCI6CkBAIC0xMDQsNyArMTA0LDcg
QEAKICAgInRoaXJkX3BhcnR5L1ZLLUdMLUNUUy9zcmMvZXh0ZXJuYWwvdnVsa2FuY3RzL21vZHVs
ZXMvdnVsa2FuL3JlY29udmVyZ2VuY2UvQ01ha2VMaXN0cy50eHQiOgogICAgICIxZmEzN2NjOGEw
ZTZkNjY5ZjAzOTYxYjkxNDEzYjg4NSIsCiAgICJ0aGlyZF9wYXJ0eS9WSy1HTC1DVFMvc3JjL2V4
dGVybmFsL3Z1bGthbmN0cy9tb2R1bGVzL3Z1bGthbi9yZW5kZXJwYXNzL0NNYWtlTGlzdHMudHh0
IjoKLSAgICAiNWM4ZDBmZTUwYWNjZWNjZGMyNGY2ZGVhMWY4YTNiZDYiLAorICAgICI3NWQ4ZmNj
YzJmYTg4MWJmNjhlMTkwZTAyZTllMzFiYyIsCiAgICJ0aGlyZF9wYXJ0eS9WSy1HTC1DVFMvc3Jj
L2V4dGVybmFsL3Z1bGthbmN0cy9tb2R1bGVzL3Z1bGthbi9yb2J1c3RuZXNzL0NNYWtlTGlzdHMu
dHh0IjoKICAgICAiNGQ0ODExNDM0ZDNjZGRkMTI0ODg0MmViYzY1ZWUxNWIiLAogICAidGhpcmRf
cGFydHkvVkstR0wtQ1RTL3NyYy9leHRlcm5hbC92dWxrYW5jdHMvbW9kdWxlcy92dWxrYW4vc2hh
ZGVyZXhlY3V0b3IvQ01ha2VMaXN0cy50eHQiOgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc2NyaXB0cy9jb2RlX2dlbmVyYXRpb25faGFzaGVzL0dMX0VHTF9XR0xfbG9hZGVy
Lmpzb24gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zY3JpcHRzL2NvZGVfZ2VuZXJhdGlvbl9o
YXNoZXMvR0xfRUdMX1dHTF9sb2FkZXIuanNvbgppbmRleCBjZTc3MThkMzIwZjU1NzhlOGJhYWVh
YTdkNmEzMjUzMzZjNjk2Y2I3Li42ZTA1MWIyNDkyZDg1YmMzYmUyMzFiMDdjZjBiM2JiNjZhY2U4
YTIxIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zY3JpcHRzL2NvZGVfZ2Vu
ZXJhdGlvbl9oYXNoZXMvR0xfRUdMX1dHTF9sb2FkZXIuanNvbgorKysgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9BTkdMRS9zY3JpcHRzL2NvZGVfZ2VuZXJhdGlvbl9oYXNoZXMvR0xfRUdMX1dHTF9sb2Fk
ZXIuanNvbgpAQCAtNCwzNyArNCwzNyBAQAogICAic2NyaXB0cy9lZ2wueG1sIjoKICAgICAiMDEz
YzU1MmU2YzUyM2FiZGNmMjY4MjY4ZWE0N2U5ZmUiLAogICAic2NyaXB0cy9lZ2xfYW5nbGVfZXh0
LnhtbCI6Ci0gICAgIjcyYmYxMGVkM2QyM2Q1Y2RmYTQ5OTM0YTAzOTNiMzBkIiwKKyAgICAiMzYx
OGU4MzVkYmUxYjI4ZWY1YWQyMGU3ZTM2ZDEyNjIiLAogICAic2NyaXB0cy9nZW5lcmF0ZV9sb2Fk
ZXIucHkiOgogICAgICJlNjdmNGRhNjRiYTdmNWNmZjM5YmE0ZTg5MjZhMDVmOCIsCiAgICJzY3Jp
cHRzL2dsLnhtbCI6Ci0gICAgImQ5M2UxZDQ5NTE5YzIxNzA4MjY3OTgzNjk4MmI4ZWVlIiwKKyAg
ICAiNGVhNDJhNTkzNDM0OGVhYjRkMzBjMGU5MmUwMGM5MGQiLAogICAic2NyaXB0cy9nbF9hbmds
ZV9leHQueG1sIjoKLSAgICAiNDc0OTg5NDQwZjk4MGEwNzk5MzVkZmYzYWI0ZDdiMjQiLAorICAg
ICI1YWMzODY3MmFlM2M0YjBhY2EwOGI1NDYxZWJjNjY5ZCIsCiAgICJzY3JpcHRzL3JlZ2lzdHJ5
X3htbC5weSI6Ci0gICAgIjJkNjkyNGQzOThhNzkwZjRlZjgwNDczYzAyNzllZGE1IiwKKyAgICAi
YTA0YzEwYzMzMWRkZmY3M2QwZmY5YTU2NDg5YmUxMjkiLAogICAic2NyaXB0cy93Z2wueG1sIjoK
ICAgICAiYzM2MDAxNDMxOTE5ZTFjNDM1ZjEyMTVhODVmN2UxZGIiLAogICAic3JjL2xpYkVHTC9l
Z2xfbG9hZGVyX2F1dG9nZW4uY3BwIjoKLSAgICAiNGIzNDJiYjMzMzJhYjhmY2EzNGIwODVjMmQ5
ZGYzOWMiLAorICAgICJmOGUzMDVjNWI5ZGVmYTllYzQxOWNhYzFhNGMyMjQ3YyIsCiAgICJzcmMv
bGliRUdML2VnbF9sb2FkZXJfYXV0b2dlbi5oIjoKLSAgICAiZTRlZjE2Yzk5MGI2N2ExNjhmNWM2
NjhlYWYwYjYzZWQiLAorICAgICI2ZTFmNDhkMzM1OGJkNTdjYjE3ZTljYTdjOGQwZjEzYSIsCiAg
ICJzcmMvdGVzdHMvcmVzdHJpY3RlZF90cmFjZXMvdHJhY2VfZWdsX2xvYWRlcl9hdXRvZ2VuLmNw
cCI6Ci0gICAgIjNhNDExN2I5ZTZjMDhlMDdiYjUwYmFlMDQ3YmE0ZWMyIiwKKyAgICAiNzU3ZDU0
YTdhZmMzMGY4YWEzZDI4NWFkMjMxOGY2OGMiLAogICAic3JjL3Rlc3RzL3Jlc3RyaWN0ZWRfdHJh
Y2VzL3RyYWNlX2VnbF9sb2FkZXJfYXV0b2dlbi5oIjoKLSAgICAiZjE0NDU0MDBlODAyMzBkMWMz
ZWVkZWU2MjdlNTU1YzMiLAorICAgICIyYTQxN2Q1MTNmNGFkMjg5MmNjYzVjNjZlNDJlNTc1OSIs
CiAgICJzcmMvdGVzdHMvcmVzdHJpY3RlZF90cmFjZXMvdHJhY2VfZ2xlc19sb2FkZXJfYXV0b2dl
bi5jcHAiOgotICAgICI2ZWY2NjQ1Y2Q1NjkxOWQwMjVmYmUxMDAxNDA1Y2ZkNSIsCisgICAgIjY2
ZDA5YTJkZDI0MGMwNzM4NjhmYzE0MTE4MTg2YzY5IiwKICAgInNyYy90ZXN0cy9yZXN0cmljdGVk
X3RyYWNlcy90cmFjZV9nbGVzX2xvYWRlcl9hdXRvZ2VuLmgiOgotICAgICI1Zjc1YzY2NTEzYjZk
NGVlODZlMDg4ZWQ2MGI0ODBkYSIsCisgICAgImU2YmRlZmI1OGRlNDM5YjViMzhkNGQyNTQ2YWU0
NGU3IiwKICAgInV0aWwvZWdsX2xvYWRlcl9hdXRvZ2VuLmNwcCI6Ci0gICAgIjBkYWI3Y2YwODI2
YTYxOGRjMDQ2YzFjNzhmM2FjN2M5IiwKKyAgICAiNmFmYmJjNTUzMjIyNzA1ZGQ3N2M0OGU3NTEw
MjUwZGQiLAogICAidXRpbC9lZ2xfbG9hZGVyX2F1dG9nZW4uaCI6Ci0gICAgImZlMGJiODNhMjZl
M2UxYTA5ZThiZDkzODFjZDdiMjk1IiwKKyAgICAiM2UxZTZlYTk4M2FhOTUyNjAxZDFiNmRlODMx
NjFhOGEiLAogICAidXRpbC9nbGVzX2xvYWRlcl9hdXRvZ2VuLmNwcCI6Ci0gICAgIjk2NTk5NWQ2
Y2UwZDdiYzZmZWM2YTY3NTE5MGNhZmFlIiwKKyAgICAiMDE0ODJjNTZkZDJjNDQxMDE0OWZlYWE4
YmZmMjFiYmUiLAogICAidXRpbC9nbGVzX2xvYWRlcl9hdXRvZ2VuLmgiOgotICAgICJhYzc3ZGY5
NjQ1NTdmNmUzNWEyOGExZTAyYjEwZTgxNyIsCisgICAgImNhMWVlYjU3ZmY2MjMwNDNhN2U3MWYz
NzBkNGI5NTc5IiwKICAgInV0aWwvd2luZG93cy93Z2xfbG9hZGVyX2F1dG9nZW4uY3BwIjoKICAg
ICAiMTU4ZTY5MzdkZDdiZDI4NzliYjQ0MDk4M2FmZDVhMzYiLAogICAidXRpbC93aW5kb3dzL3dn
bF9sb2FkZXJfYXV0b2dlbi5oIjoKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NjcmlwdHMvY29kZV9nZW5lcmF0aW9uX2hhc2hlcy9HTF9FR0xfZW50cnlfcG9pbnRzLmpzb24g
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zY3JpcHRzL2NvZGVfZ2VuZXJhdGlvbl9oYXNoZXMv
R0xfRUdMX2VudHJ5X3BvaW50cy5qc29uCmluZGV4IGZiYTg0Y2UwZTJhZDE3YzFjZWE0NTQ5MzA2
OGI5MzEyNWFjMzNkOTEuLjQxZjM1MjFmM2MxMDg1MmYzMDYzZWIxNTQ5NmNkNzRiNjZiMjIxOGYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NjcmlwdHMvY29kZV9nZW5lcmF0
aW9uX2hhc2hlcy9HTF9FR0xfZW50cnlfcG9pbnRzLmpzb24KKysrIGIvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc2NyaXB0cy9jb2RlX2dlbmVyYXRpb25faGFzaGVzL0dMX0VHTF9lbnRyeV9wb2lu
dHMuanNvbgpAQCAtNCwyNSArNCwyNSBAQAogICAic2NyaXB0cy9lZ2wueG1sIjoKICAgICAiMDEz
YzU1MmU2YzUyM2FiZGNmMjY4MjY4ZWE0N2U5ZmUiLAogICAic2NyaXB0cy9lZ2xfYW5nbGVfZXh0
LnhtbCI6Ci0gICAgIjcyYmYxMGVkM2QyM2Q1Y2RmYTQ5OTM0YTAzOTNiMzBkIiwKKyAgICAiMzYx
OGU4MzVkYmUxYjI4ZWY1YWQyMGU3ZTM2ZDEyNjIiLAogICAic2NyaXB0cy9lbnRyeV9wb2ludF9w
YWNrZWRfZWdsX2VudW1zLmpzb24iOgogICAgICJhNzJhZTg1NWM2YjQwMzkxMjEwM2I1MTkxMzk5
NTFhMSIsCiAgICJzY3JpcHRzL2VudHJ5X3BvaW50X3BhY2tlZF9nbF9lbnVtcy5qc29uIjoKICAg
ICAiYTFjZGQxNTQ1ZDMwOTVmOTc3Yjk4NjlkZjU1MTMwNzEiLAogICAic2NyaXB0cy9nZW5lcmF0
ZV9lbnRyeV9wb2ludHMucHkiOgotICAgICJmMDU2MzViMTFiMmMzNTkyMzg0YjE2YzQ4MTc3OTMz
ZSIsCisgICAgIjM0ZWM1MDcwNWEyZjcwY2QyMTUxYzUzZTU3Njg5Y2NjIiwKICAgInNjcmlwdHMv
Z2wueG1sIjoKLSAgICAiZDkzZTFkNDk1MTljMjE3MDgyNjc5ODM2OTgyYjhlZWUiLAorICAgICI0
ZWE0MmE1OTM0MzQ4ZWFiNGQzMGMwZTkyZTAwYzkwZCIsCiAgICJzY3JpcHRzL2dsX2FuZ2xlX2V4
dC54bWwiOgotICAgICI0NzQ5ODk0NDBmOTgwYTA3OTkzNWRmZjNhYjRkN2IyNCIsCisgICAgIjVh
YzM4NjcyYWUzYzRiMGFjYTA4YjU0NjFlYmM2NjlkIiwKICAgInNjcmlwdHMvcmVnaXN0cnlfeG1s
LnB5IjoKLSAgICAiMmQ2OTI0ZDM5OGE3OTBmNGVmODA0NzNjMDI3OWVkYTUiLAorICAgICJhMDRj
MTBjMzMxZGRmZjczZDBmZjlhNTY0ODliZTEyOSIsCiAgICJzY3JpcHRzL3dnbC54bWwiOgogICAg
ICJjMzYwMDE0MzE5MTllMWM0MzVmMTIxNWE4NWY3ZTFkYiIsCiAgICJzcmMvY29tbW9uL2VudHJ5
X3BvaW50c19lbnVtX2F1dG9nZW4uY3BwIjoKLSAgICAiMDhiZjc3NzgyZTZmYjQ2N2VmYTJmOTVm
NjRkZWE4M2MiLAorICAgICJmODgyZWYzNDM1OWJkNDM4ZDAxNjUzZWMwMjI4YjRhOCIsCiAgICJz
cmMvY29tbW9uL2VudHJ5X3BvaW50c19lbnVtX2F1dG9nZW4uaCI6Ci0gICAgIjIzNTczNTJiZjQ3
NjdhMDdiMjQzYWQ0YWZhYjczZGNkIiwKKyAgICAiZTk0NGExN2Y4MzJkMDBhMmFjOTc2MmNlOTU3
ZjM3MGMiLAogICAic3JjL2xpYkFOR0xFL0NvbnRleHRfZ2xfMV9hdXRvZ2VuLmgiOgogICAgICIx
MTVkMjI0ZmQyOGIwYmMyYjI4MDAzNTRiYjU3ZmNmMyIsCiAgICJzcmMvbGliQU5HTEUvQ29udGV4
dF9nbF8yX2F1dG9nZW4uaCI6CkBAIC00Miw3ICs0Miw3IEBACiAgICJzcmMvbGliQU5HTEUvQ29u
dGV4dF9nbGVzXzNfMl9hdXRvZ2VuLmgiOgogICAgICI0ODU2N2RjYTE2ZmQ4ODFkZmU2ZDYxZmVl
MGUzMTA2ZiIsCiAgICJzcmMvbGliQU5HTEUvQ29udGV4dF9nbGVzX2V4dF9hdXRvZ2VuLmgiOgot
ICAgICI5NzBjYzdmYmE4MmYwNjlhNWU5OGU2ZWNiYjI1NDE3ZSIsCisgICAgImE3NDFiNTc3Mzc1
ZDU3YmM4M2FhMDhkM2E3MTNjNzhkIiwKICAgInNyYy9saWJBTkdMRS9jYXB0dXJlL2NhcHR1cmVf
Z2xlc18xXzBfYXV0b2dlbi5jcHAiOgogICAgICI3ZWM3ZWY4Zjc3OWI4MDlhNDVkNzRiOTc1MDJj
NDE5YiIsCiAgICJzcmMvbGliQU5HTEUvY2FwdHVyZS9jYXB0dXJlX2dsZXNfMV8wX2F1dG9nZW4u
aCI6CkBAIC02NCwxOSArNjQsMTkgQEAKICAgInNyYy9saWJBTkdMRS9jYXB0dXJlL2NhcHR1cmVf
Z2xlc18zXzJfYXV0b2dlbi5oIjoKICAgICAiNzRlZDczNjZhZjNhNDZjMDY2MTM5N2NmYTI5ZWM2
ZmMiLAogICAic3JjL2xpYkFOR0xFL2NhcHR1cmUvY2FwdHVyZV9nbGVzX2V4dF9hdXRvZ2VuLmNw
cCI6Ci0gICAgIjJjMDc3NGIyM2ZlODRlN2UxNzE0NDFjMWNiNDVkMTI2IiwKKyAgICAiZDA1ZWY1
MmU0M2RmN2ZhOTExOWUxODAzZWJiZWI3YTAiLAogICAic3JjL2xpYkFOR0xFL2NhcHR1cmUvY2Fw
dHVyZV9nbGVzX2V4dF9hdXRvZ2VuLmgiOgotICAgICI4MTg0M2YxNTdlMmIxMmUzOTljNzlkNmMw
NTYwNmM5MCIsCisgICAgIjExN2Q4MGUzMjVlMDZkMDgxZWNlNzY4YzA2MWVlNWE1IiwKICAgInNy
Yy9saWJBTkdMRS9jYXB0dXJlL2ZyYW1lX2NhcHR1cmVfcmVwbGF5X2F1dG9nZW4uY3BwIjoKICAg
ICAiZTJlNjQxOWQ0M2JjOTZhNjViOGE4ZTk0MjIyYTkxMGEiLAogICAic3JjL2xpYkFOR0xFL2Nh
cHR1cmUvZnJhbWVfY2FwdHVyZV91dGlsc19hdXRvZ2VuLmNwcCI6Ci0gICAgIjk2MzA3YmQ2OWE2
NDhmMWIwMjM5NTZjMDAwODYyM2M1IiwKKyAgICAiOTBjYWVjZjEwNWU3ZjdhNTAwNTYxZDRjNTQ0
Nzg0NGIiLAogICAic3JjL2xpYkFOR0xFL2NhcHR1cmUvZnJhbWVfY2FwdHVyZV91dGlsc19hdXRv
Z2VuLmgiOgotICAgICI4NDBlNGFkN2Q4NjEwZDE2MTA2YmRkNjZlMjE3OThhNSIsCisgICAgImM3
YjQ3NjM2ZWRmNzBhMDg2Nzg4ZDI2NTA1ZWQ0MDUwIiwKICAgInNyYy9saWJBTkdMRS92YWxpZGF0
aW9uQ0xfYXV0b2dlbi5oIjoKICAgICAiMDAyMmQwY2RiNmE5ZTJlZjRhNTliNzExNjRmNjIzMzMi
LAogICAic3JjL2xpYkFOR0xFL3ZhbGlkYXRpb25FR0xfYXV0b2dlbi5oIjoKLSAgICAiZDlmZjAz
NGJmNTJiMDNjYjFjZDYxMzJjNjA2MzlmNTUiLAorICAgICJlOTgwODMzZGI5NDkwMDVkZTA1ZWJm
ZGEzYjY1YTE4YiIsCiAgICJzcmMvbGliQU5HTEUvdmFsaWRhdGlvbkVTMV9hdXRvZ2VuLmgiOgog
ICAgICI5OWFmNWUzMjg2OTBhZTc4ZDc3MjRhODBlOTRjZmFjNSIsCiAgICJzcmMvbGliQU5HTEUv
dmFsaWRhdGlvbkVTMl9hdXRvZ2VuLmgiOgpAQCAtODgsNyArODgsNyBAQAogICAic3JjL2xpYkFO
R0xFL3ZhbGlkYXRpb25FUzNfYXV0b2dlbi5oIjoKICAgICAiMDE0NzUwNmNlOTFjNjhkOGNjYmNh
OTY4OGM3MjUxYmEiLAogICAic3JjL2xpYkFOR0xFL3ZhbGlkYXRpb25FU0VYVF9hdXRvZ2VuLmgi
OgotICAgICJlYWI4NmI3NDhjMTc2NWZkMWI4NjMyOWQxNmExY2Y2YSIsCisgICAgImY4M2UxNzJl
M2IzZDQ0NjZiZTM3MjZmMWFhMTcwNWJjIiwKICAgInNyYy9saWJBTkdMRS92YWxpZGF0aW9uR0wx
X2F1dG9nZW4uaCI6CiAgICAgImEyNDdkZGRjNDA0MTgxODBkNGIyZGJlZmViNzVmMjMzIiwKICAg
InNyYy9saWJBTkdMRS92YWxpZGF0aW9uR0wyX2F1dG9nZW4uaCI6CkBAIC05OCw5ICs5OCw5IEBA
CiAgICJzcmMvbGliQU5HTEUvdmFsaWRhdGlvbkdMNF9hdXRvZ2VuLmgiOgogICAgICIwNDc3MTUw
Nzc5NDk3YWQ4OTQ5NzNmMGU0YjgzMGQ2YiIsCiAgICJzcmMvbGliRUdML2xpYkVHTF9hdXRvZ2Vu
LmNwcCI6Ci0gICAgIjAzMDlkYTAwMjU3MjMzMWFkMGZjN2IyZWVmZThjMzIzIiwKKyAgICAiZDJh
NDcxNmExZTMyNDE2YjY0YWExMWRhNzI5NGEyZDEiLAogICAic3JjL2xpYkVHTC9saWJFR0xfYXV0
b2dlbi5kZWYiOgotICAgICI0MTE4NWIxNzE4Y2NjNzA0YzZmZGM4NDE0NjVjZDQzZiIsCisgICAg
Ijc3M2JlNTM1YzAwZTAxZTM0M2I1MjU2MWZjYTczYTZiIiwKICAgInNyYy9saWJHTC9lbnRyeV9w
b2ludHNfZ2xfMV9hdXRvZ2VuLmNwcCI6CiAgICAgIjgxNDhjY2I1OTdjNWM3N2RiN2Q1ZTUzMmM3
MTUyMjQzIiwKICAgInNyYy9saWJHTC9lbnRyeV9wb2ludHNfZ2xfMV9hdXRvZ2VuLmgiOgpAQCAt
MTI0LDcgKzEyNCw3IEBACiAgICJzcmMvbGliR0xFU3YyL2NsX3N0dWJzX2F1dG9nZW4uaCI6CiAg
ICAgIjZkODgwYzZiNjUyODQxOTJiNTg0MmYwZTQyYWQyNzQxIiwKICAgInNyYy9saWJHTEVTdjIv
ZWdsX2V4dF9zdHVic19hdXRvZ2VuLmgiOgotICAgICI1Y2JiMGYzMzQ0MWViMWUyNzI3MjY3NDBi
MWI2OTA5MCIsCisgICAgIjg2MTRjMGYzZTliZWMwOTQyMWY1NTdjNWJiNzgyNmVmIiwKICAgInNy
Yy9saWJHTEVTdjIvZWdsX2dldF9sYWJlbGVkX29iamVjdF9kYXRhLmpzb24iOgogICAgICIyZjQx
NDhiMmRkZjM0ZTYyNjcwZTMyYzVlNmRhNDkzNyIsCiAgICJzcmMvbGliR0xFU3YyL2VnbF9zdHVi
c19hdXRvZ2VuLmgiOgpAQCAtMTM4LDkgKzEzOCw5IEBACiAgICJzcmMvbGliR0xFU3YyL2VudHJ5
X3BvaW50c19lZ2xfYXV0b2dlbi5oIjoKICAgICAiM2JjN2E4ZGY5ZGVhZGQ3Y2ZkNjE1ZDBjZmFk
MGM2YTgiLAogICAic3JjL2xpYkdMRVN2Mi9lbnRyeV9wb2ludHNfZWdsX2V4dF9hdXRvZ2VuLmNw
cCI6Ci0gICAgIjBlMDQ2YTNjMjVlZDhkMjJkYjcwZTAxMTI0YzFmNTIzIiwKKyAgICAiOWFjZDRl
MmM3ZDRhZTYxYWRjMmNjMDEwMjlmMWRkMDgiLAogICAic3JjL2xpYkdMRVN2Mi9lbnRyeV9wb2lu
dHNfZWdsX2V4dF9hdXRvZ2VuLmgiOgotICAgICI4MjU1ZTRmNzAyMTY4ODM5NmJkODE0YzRiNmNh
ZGZkNiIsCisgICAgIjVjZTAzMDY3Zjc1YzYxNzlkNDdmZTg1MTg2ZGZmNjQ2IiwKICAgInNyYy9s
aWJHTEVTdjIvZW50cnlfcG9pbnRzX2dsZXNfMV8wX2F1dG9nZW4uY3BwIjoKICAgICAiNGNiOWY1
ZDU2YzAwM2QxNjI3MzY1Y2ZhMzQ0NzBlZGMiLAogICAic3JjL2xpYkdMRVN2Mi9lbnRyeV9wb2lu
dHNfZ2xlc18xXzBfYXV0b2dlbi5oIjoKQEAgLTE2MiwxNyArMTYyLDE3IEBACiAgICJzcmMvbGli
R0xFU3YyL2VudHJ5X3BvaW50c19nbGVzXzNfMl9hdXRvZ2VuLmgiOgogICAgICI2NDdmOTMyYTI5
OWNkYjQ3MjZiNjBiYmJhMDU5ZjBkMiIsCiAgICJzcmMvbGliR0xFU3YyL2VudHJ5X3BvaW50c19n
bGVzX2V4dF9hdXRvZ2VuLmNwcCI6Ci0gICAgIjEwMWJjZWYxMDFhZDc1MzEzODI4NTZmMmQ0Mjhl
MGFkIiwKKyAgICAiNjdmMDJlYWIyOWQ5MThjMGIyMmU2YzU1ZjgxMDZjMTMiLAogICAic3JjL2xp
YkdMRVN2Mi9lbnRyeV9wb2ludHNfZ2xlc19leHRfYXV0b2dlbi5oIjoKLSAgICAiNmUwMzI2NDI2
YWNhMTFmNmIxYTM4NzRlZDBlYTE2YTMiLAorICAgICJlMjBlOWIxODUxNjA3NDY4NGZlMDE5OGRj
NzIxNWFmNSIsCiAgICJzcmMvbGliR0xFU3YyL2xpYkdMRVN2Ml9hdXRvZ2VuLmNwcCI6Ci0gICAg
IjExNDRhMmNkMGJhYzRkYmI4ZDUwOTc2ZTAzOTQ1OTMzIiwKKyAgICAiNmE3ZTc3NWIyMDU2M2Q0
MDUwMDVjYjFiYmNmNjdlNzYiLAogICAic3JjL2xpYkdMRVN2Mi9saWJHTEVTdjJfYXV0b2dlbi5k
ZWYiOgotICAgICIzNTRmYjgyNzBlMTdiNWU0MWFjNzU0ZWQ5Y2Y5NjU4MSIsCisgICAgIjE0YzA5
Y2RlNTM3NDE2MmUyYzNkY2QxOTQ3ODA0ZjBkIiwKICAgInNyYy9saWJHTEVTdjIvbGliR0xFU3Yy
X25vX2NhcHR1cmVfYXV0b2dlbi5kZWYiOgotICAgICJjYjUyNjFkODY4ZTE2OGQwZjMwYmY2NmQz
YTVmZjgxOSIsCisgICAgIjBmOTE2OGMxZWJiMWY5YzA0NGI2MjQ5OTY5YThlYzBjIiwKICAgInNy
Yy9saWJHTEVTdjIvbGliR0xFU3YyX3dpdGhfY2FwdHVyZV9hdXRvZ2VuLmRlZiI6Ci0gICAgIjM1
MWY5ZjI2MjYwYjdiMzlmMWZjODA4Y2RiZTljNWUyIiwKKyAgICAiNGQ3N2QxZTVjZWVlNDUzYmQ5
OWExNTBmNmEyNGFhODAiLAogICAic3JjL2xpYk9wZW5DTC9saWJPcGVuQ0xfYXV0b2dlbi5jcHAi
OgogICAgICIxMDg0OTk3OGM5MTBkYzFhZjVkZDRmMGM4MTVkMTU4MSIKIH0KXCBObyBuZXdsaW5l
IGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zY3Jp
cHRzL2NvZGVfZ2VuZXJhdGlvbl9oYXNoZXMvR0xlbnVtX3ZhbHVlX3RvX3N0cmluZ19tYXAuanNv
biBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NjcmlwdHMvY29kZV9nZW5lcmF0aW9uX2hhc2hl
cy9HTGVudW1fdmFsdWVfdG9fc3RyaW5nX21hcC5qc29uCmluZGV4IGZkYTBjZmUwMmRiYjRjMmVi
MWUyYTBiY2U0MjIwMjg3ZDdmMDM2MzQuLmZkNGI5NzZmZmFjOTg4MmY0YTBmYTVmMDljMGY1OThh
NWUzNjM4NmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NjcmlwdHMvY29k
ZV9nZW5lcmF0aW9uX2hhc2hlcy9HTGVudW1fdmFsdWVfdG9fc3RyaW5nX21hcC5qc29uCisrKyBi
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NjcmlwdHMvY29kZV9nZW5lcmF0aW9uX2hhc2hlcy9H
TGVudW1fdmFsdWVfdG9fc3RyaW5nX21hcC5qc29uCkBAIC0yLDEzICsyLDEzIEBACiAgICJzY3Jp
cHRzL2dlbl9nbF9lbnVtX3V0aWxzLnB5IjoKICAgICAiMzMyY2ZiNmYwNDI0MmQxODk2NjQ0NWY3
MGYwMDM5YjMiLAogICAic2NyaXB0cy9nbC54bWwiOgotICAgICJkOTNlMWQ0OTUxOWMyMTcwODI2
Nzk4MzY5ODJiOGVlZSIsCisgICAgIjRlYTQyYTU5MzQzNDhlYWI0ZDMwYzBlOTJlMDBjOTBkIiwK
ICAgInNjcmlwdHMvZ2xfYW5nbGVfZXh0LnhtbCI6Ci0gICAgIjQ3NDk4OTQ0MGY5ODBhMDc5OTM1
ZGZmM2FiNGQ3YjI0IiwKKyAgICAiNWFjMzg2NzJhZTNjNGIwYWNhMDhiNTQ2MWViYzY2OWQiLAog
ICAic2NyaXB0cy9yZWdpc3RyeV94bWwucHkiOgotICAgICIyZDY5MjRkMzk4YTc5MGY0ZWY4MDQ3
M2MwMjc5ZWRhNSIsCisgICAgImEwNGMxMGMzMzFkZGZmNzNkMGZmOWE1NjQ4OWJlMTI5IiwKICAg
InNyYy9saWJBTkdMRS9jYXB0dXJlL2dsX2VudW1fdXRpbHNfYXV0b2dlbi5jcHAiOgotICAgICI3
MTQ1NDU5NGJkM2IxYmYzM2FhODM1MDk0MjA5MjY2OSIsCisgICAgIjg5ODQzN2ZjNjYxNmEzMWNm
YzczNGEwNmI1NzNmZmI0IiwKICAgInNyYy9saWJBTkdMRS9jYXB0dXJlL2dsX2VudW1fdXRpbHNf
YXV0b2dlbi5oIjoKICAgICAiZmIwYmI3ZjUwNmY2MDgyZWEzYjJjM2ZhMzg0ZDI3MzkiCiB9Clwg
Tm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc2NyaXB0cy9jb2RlX2dlbmVyYXRpb25faGFzaGVzL01ldGFsX2Zvcm1hdF90YWJsZS5q
c29uIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc2NyaXB0cy9jb2RlX2dlbmVyYXRpb25faGFz
aGVzL01ldGFsX2Zvcm1hdF90YWJsZS5qc29uCmluZGV4IDg4ZGExNGYxZjc0NDJmOTk5NmY5N2E3
ZjU5MjMwNDU5MGFlMmFjYmUuLjY5NjUwYTE4ZGI5OTkwYTQ3YzdmMDcwNDJjMDcyYmYxZDUwNzNh
NzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NjcmlwdHMvY29kZV9nZW5l
cmF0aW9uX2hhc2hlcy9NZXRhbF9mb3JtYXRfdGFibGUuanNvbgorKysgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9BTkdMRS9zY3JpcHRzL2NvZGVfZ2VuZXJhdGlvbl9oYXNoZXMvTWV0YWxfZm9ybWF0X3Rh
YmxlLmpzb24KQEAgLTYsNyArNiw3IEBACiAgICJzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwv
Z2VuX210bF9mb3JtYXRfdGFibGUucHkiOgogICAgICJhYmIyMzAwZTVkOWQ3MDkzMWUyNDk3Zjgy
MGY2NGJkNSIsCiAgICJzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX2Zvcm1hdF9tYXAu
anNvbiI6Ci0gICAgIjhlZTk1ZGRlNjlhMmYwNDk3M2VhMTk0MzRlNGY5ZjNlIiwKKyAgICAiMDY5
MzBmOWYyM2M3YTNkYTZhNzJhMTAxM2QzOWJiZjgiLAogICAic3JjL2xpYkFOR0xFL3JlbmRlcmVy
L21ldGFsL210bF9mb3JtYXRfdGFibGVfYXV0b2dlbi5tbSI6Ci0gICAgImRjMTU2Njk5MDU3OTlh
ZmFiOGIyMmJkZjQwMDQxN2NhIgorICAgICI4YTRkNWRiZWY3MmY3ZThhY2Y1OTY4OWY1NDA3N2Ux
YiIKIH0KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zY3JpcHRzL2NvZGVfZ2VuZXJhdGlvbl9oYXNoZXMvT3BlbkdMX2Rpc3Bh
dGNoX3RhYmxlLmpzb24gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zY3JpcHRzL2NvZGVfZ2Vu
ZXJhdGlvbl9oYXNoZXMvT3BlbkdMX2Rpc3BhdGNoX3RhYmxlLmpzb24KaW5kZXggZjBmNThmMjU5
YjdjY2EyNzEzZWMzM2ZiYzJkMzVjNzMzYzI0NzUxMC4uOTc4NTZjNTI4YmZlNGMyNTZiMGRkNjQ1
ZGFhOWNiODlmMjc5NGY4ZiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc2Ny
aXB0cy9jb2RlX2dlbmVyYXRpb25faGFzaGVzL09wZW5HTF9kaXNwYXRjaF90YWJsZS5qc29uCisr
KyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NjcmlwdHMvY29kZV9nZW5lcmF0aW9uX2hhc2hl
cy9PcGVuR0xfZGlzcGF0Y2hfdGFibGUuanNvbgpAQCAtMSw2ICsxLDYgQEAKIHsKICAgInNjcmlw
dHMvZ2wueG1sIjoKLSAgICAiZDkzZTFkNDk1MTljMjE3MDgyNjc5ODM2OTgyYjhlZWUiLAorICAg
ICI0ZWE0MmE1OTM0MzQ4ZWFiNGQzMGMwZTkyZTAwYzkwZCIsCiAgICJzcmMvbGliQU5HTEUvcmVu
ZGVyZXIvYW5nbGVfZm9ybWF0LnB5IjoKICAgICAiMmY4ZmE3NjgwODhlMjJiMDk2M2JiZGY4NDJk
M2U3MjUiLAogICAic3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL0Rpc3BhdGNoVGFibGVHTF9hdXRv
Z2VuLmNwcCI6CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zY3JpcHRzL2Nv
ZGVfZ2VuZXJhdGlvbl9oYXNoZXMvU1BJUi1WX2hlbHBlcnMuanNvbiBiL1NvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL3NjcmlwdHMvY29kZV9nZW5lcmF0aW9uX2hhc2hlcy9TUElSLVZfaGVscGVycy5q
c29uCmluZGV4IDc4MDdhZGI1YThjYTYzN2M3Njg5MDA5OWQ3ZDU2ZGE3YWRkYTc3MmEuLmI2NGNk
NTBjOWY4MWQxZmQyYjYyNGMxYjFmZjlkZWMyMDJmZTE4M2EgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3NjcmlwdHMvY29kZV9nZW5lcmF0aW9uX2hhc2hlcy9TUElSLVZfaGVs
cGVycy5qc29uCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NjcmlwdHMvY29kZV9nZW5l
cmF0aW9uX2hhc2hlcy9TUElSLVZfaGVscGVycy5qc29uCkBAIC0xLDYgKzEsNiBAQAogewogICAi
c3JjL2NvbW1vbi9zcGlydi9nZW5fc3BpcnZfYnVpbGRlcl9hbmRfcGFyc2VyLnB5IjoKLSAgICAi
ZWU1ZjA2OTgzMzZlNWUwMjFiMzhkM2FmMDZjYzU2ZjAiLAorICAgICJkZjEwMmVmOWYxYjUzYjhl
YTVkYzk1YzAzNGE4NjliOCIsCiAgICJzcmMvY29tbW9uL3NwaXJ2L3NwaXJ2X2luc3RydWN0aW9u
X2J1aWxkZXJfYXV0b2dlbi5jcHAiOgogICAgICJiZjVjYzQ3Njg2ZTlkYmQwMGI2MjI5ZTRlZTM4
YTI4MyIsCiAgICJzcmMvY29tbW9uL3NwaXJ2L3NwaXJ2X2luc3RydWN0aW9uX2J1aWxkZXJfYXV0
b2dlbi5oIjoKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NjcmlwdHMvY29k
ZV9nZW5lcmF0aW9uX2hhc2hlcy9UZXN0X3NwZWNfSlNPTi5qc29uIGIvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc2NyaXB0cy9jb2RlX2dlbmVyYXRpb25faGFzaGVzL1Rlc3Rfc3BlY19KU09OLmpz
b24KaW5kZXggY2RmMjQ5NDE1NDU4ZTIwNTA3MWVlZmRlNGM3NGQyNDAzZWRhMjAxOC4uNmRjZjJi
Mjc3ZTZmNjRmZmY3ZTFlNzU2ZTViZDliMTE3MjkzYWMxNyAxMDA2NDQKLS0tIGEvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc2NyaXB0cy9jb2RlX2dlbmVyYXRpb25faGFzaGVzL1Rlc3Rfc3BlY19K
U09OLmpzb24KKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc2NyaXB0cy9jb2RlX2dlbmVy
YXRpb25faGFzaGVzL1Rlc3Rfc3BlY19KU09OLmpzb24KQEAgLTEsMjAgKzEsMjAgQEAKIHsKICAg
ImluZnJhL3NwZWNzL2FuZ2xlLmpzb24iOgotICAgICJkZjg0MjE0MjZkMzk0M2FiZjJkY2JkODQ2
ZDE0NzNkYiIsCisgICAgImYwYzExN2U0YjRlN2JmNzgxMmJiODNlZjA3YmUzMmI2IiwKICAgImlu
ZnJhL3NwZWNzL2dlbmVyYXRlX3Rlc3Rfc3BlY19qc29uLnB5IjoKLSAgICAiYTY4MTg2N2I4Zjcx
NDc2ZDA3ZTU5NTE2ZTg1MWNjYjQiLAorICAgICJiZTQ1Njk2MjZhYTkxZjg4NzI2NjRlMmQ5Y2Vm
NGFjMiIsCiAgICJpbmZyYS9zcGVjcy9taXhpbnMucHlsIjoKICAgICAiMzJjZTZlM2UwN2ViNDg0
ZjdhNThkZmQ3ZGJmYzExOGIiLAogICAiaW5mcmEvc3BlY3MvdGVzdF9zdWl0ZV9leGNlcHRpb25z
LnB5bCI6CiAgICAgIjcyMzQ2MGRhODRhOTA4ODRhOTY2OGMwN2EwODkzMzkwIiwKICAgImluZnJh
L3NwZWNzL3Rlc3Rfc3VpdGVzLnB5bCI6Ci0gICAgIjUxY2JkZDZlZjc3N2Q1YmQ0ZWQ5MjYyYTNk
ODg2NDY5IiwKKyAgICAiMmNkYTBjOGRiZjYwNjk5YTU5OGVhNTIxN2U1NjczNTQiLAogICAiaW5m
cmEvc3BlY3MvdmFyaWFudHMucHlsIjoKICAgICAiOGNmY2FhOTlmYTA3YWQyYTJkNWQxNGYyMjBm
ZDUwMzciLAogICAiaW5mcmEvc3BlY3Mvd2F0ZXJmYWxscy5weWwiOgogICAgICIzNTlhOTg0ODc1
MzhjYzlhZTk0ZWViZDA3MjUyNGI3YSIsCiAgICJ0ZXN0aW5nL2J1aWxkYm90L2dlbmVyYXRlX2J1
aWxkYm90X2pzb24ucHkiOgotICAgICI5YjhjM2FmMmM2NDE3NzUxYTQ4MDRkNzU1ODJkMDc1MSIs
CisgICAgIjlkOThlMjk0ZDc1M2YzOGYwMDIzMjg1MWI0OWZkNGZmIiwKICAgInRlc3RpbmcvYnVp
bGRib3QvbWl4aW5zLnB5bCI6Ci0gICAgImJiZDVlMzdlZTI4YmViZGQ2OTMwNDQ5MjUzYzA1Nzlm
IgorICAgICIwNTI5MWQxYWE5YTU2ODc2MzM1NWM2NTVhZDdmMjAyYyIKIH0KXCBObyBuZXdsaW5l
IGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zY3Jp
cHRzL2NvZGVfZ2VuZXJhdGlvbl9oYXNoZXMvVnVsa2FuX21hbmRhdG9yeV9mb3JtYXRfc3VwcG9y
dF90YWJsZS5qc29uIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc2NyaXB0cy9jb2RlX2dlbmVy
YXRpb25faGFzaGVzL1Z1bGthbl9tYW5kYXRvcnlfZm9ybWF0X3N1cHBvcnRfdGFibGUuanNvbgpp
bmRleCA2MGE2MTRiMDkzNmEzYjA3ZmZhZjRlODJlY2I1ZTNlYmUzYjY4MzVlLi5jZjk2YzA4Mzlh
ZjA3NDA2NGIxNDM5NDllMjY1MTIxM2Q2MmZhYjBlIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9BTkdMRS9zY3JpcHRzL2NvZGVfZ2VuZXJhdGlvbl9oYXNoZXMvVnVsa2FuX21hbmRhdG9y
eV9mb3JtYXRfc3VwcG9ydF90YWJsZS5qc29uCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NjcmlwdHMvY29kZV9nZW5lcmF0aW9uX2hhc2hlcy9WdWxrYW5fbWFuZGF0b3J5X2Zvcm1hdF9z
dXBwb3J0X3RhYmxlLmpzb24KQEAgLTEwLDUgKzEwLDUgQEAKICAgInNyYy9saWJBTkdMRS9yZW5k
ZXJlci92dWxrYW4vdmtfbWFuZGF0b3J5X2Zvcm1hdF9zdXBwb3J0X3RhYmxlX2F1dG9nZW4uY3Bw
IjoKICAgICAiYTcyNmVlNzkxZWI0OTY0YzQwNmYzOTIxZDliNzMzNDYiLAogICAidGhpcmRfcGFy
dHkvdnVsa2FuLWRlcHMvdnVsa2FuLWhlYWRlcnMvc3JjL3JlZ2lzdHJ5L3ZrLnhtbCI6Ci0gICAg
IjQ1MGRiNzQ5Yzg2NWJkZmI3ODg4NDZiYTA3Yzg5ZDZkIgorICAgICJkMjgzOWJjMjg3MWI1ZTlk
NGU4MDE1YjUzMDQyMDNkNiIKIH0KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zY3JpcHRzL2NvZGVfZ2VuZXJhdGlvbl9oYXNo
ZXMvb3ZlcmxheV93aWRnZXRzLmpzb24gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zY3JpcHRz
L2NvZGVfZ2VuZXJhdGlvbl9oYXNoZXMvb3ZlcmxheV93aWRnZXRzLmpzb24KaW5kZXggM2JhNDRm
NGE3N2MxOWNkYjkxNmUxMzgxMDBlZTEzNTNhMjFlNjljNi4uZWMxY2YxYmEyODBlNTFkYWNlMWRm
M2M1Yjk3ZWQyMjFlNGQwMWZjYyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUv
c2NyaXB0cy9jb2RlX2dlbmVyYXRpb25faGFzaGVzL292ZXJsYXlfd2lkZ2V0cy5qc29uCisrKyBi
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NjcmlwdHMvY29kZV9nZW5lcmF0aW9uX2hhc2hlcy9v
dmVybGF5X3dpZGdldHMuanNvbgpAQCAtMSwxMCArMSwxMCBAQAogewogICAic3JjL2xpYkFOR0xF
L092ZXJsYXlfYXV0b2dlbi5jcHAiOgotICAgICJjYTY4OWIzNzYxZWI0MTEyNGQ5MGU5NjdhYTE3
MTFjYSIsCisgICAgIjQ1YWM5MGM5MDYwMmMzZjIwYWU3OThjYjgwZTNjZjU4IiwKICAgInNyYy9s
aWJBTkdMRS9PdmVybGF5X2F1dG9nZW4uaCI6Ci0gICAgIjhjN2NiZGI3MDUwOGNjNWEyM2I5ZjQ0
NzcxZGM3OTE5IiwKKyAgICAiY2ExN2VkM2Q3ODEyNjA3ODYwNzUzNzVkNjI3NWI5NWMiLAogICAi
c3JjL2xpYkFOR0xFL2dlbl9vdmVybGF5X3dpZGdldHMucHkiOgotICAgICJhMjhkMjg0OTlkZTU2
MmQ4MzQxNDY0YWJiMmYyYmYxOCIsCisgICAgIjQ1MzBhN2Y2NWM1MTIwNmNlOWRlNjkxNzY4M2Uz
Njg3IiwKICAgInNyYy9saWJBTkdMRS9vdmVybGF5X3dpZGdldHMuanNvbiI6Ci0gICAgIjFhYWM2
MTM1Njg0NmViYmI1MzNhYjIxMGUxODk1MjkwIgorICAgICI0OGUzY2I3MTY1ZDIyYTQwNzcyYjJj
NzMzZTRjOThiNSIKIH0KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zY3JpcHRzL2NvZGVfZ2VuZXJhdGlvbl9oYXNoZXMvcHJv
Y190YWJsZS5qc29uIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc2NyaXB0cy9jb2RlX2dlbmVy
YXRpb25faGFzaGVzL3Byb2NfdGFibGUuanNvbgppbmRleCA4ODBhNWVhMWYzMjkwMmE2OTAxNzE0
N2IwOWRlMmUyYTVhZjVjZGVjLi44YTk0Y2MwMmY1NDIyNTNkOWE4YzdhZDc3MjgwYjg0ZTgwMTdm
MjlhIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zY3JpcHRzL2NvZGVfZ2Vu
ZXJhdGlvbl9oYXNoZXMvcHJvY190YWJsZS5qc29uCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FO
R0xFL3NjcmlwdHMvY29kZV9nZW5lcmF0aW9uX2hhc2hlcy9wcm9jX3RhYmxlLmpzb24KQEAgLTQs
MTUgKzQsMTUgQEAKICAgInNjcmlwdHMvZWdsLnhtbCI6CiAgICAgIjAxM2M1NTJlNmM1MjNhYmRj
ZjI2ODI2OGVhNDdlOWZlIiwKICAgInNjcmlwdHMvZWdsX2FuZ2xlX2V4dC54bWwiOgotICAgICI3
MmJmMTBlZDNkMjNkNWNkZmE0OTkzNGEwMzkzYjMwZCIsCisgICAgIjM2MThlODM1ZGJlMWIyOGVm
NWFkMjBlN2UzNmQxMjYyIiwKICAgInNjcmlwdHMvZ2VuX3Byb2NfdGFibGUucHkiOgogICAgICI4
MzM2NDQ5ZGE3ZTM2ZjQ1ZGQ2ZDcwYzQ0YWRkMmViZiIsCiAgICJzY3JpcHRzL2dsLnhtbCI6Ci0g
ICAgImQ5M2UxZDQ5NTE5YzIxNzA4MjY3OTgzNjk4MmI4ZWVlIiwKKyAgICAiNGVhNDJhNTkzNDM0
OGVhYjRkMzBjMGU5MmUwMGM5MGQiLAogICAic2NyaXB0cy9nbF9hbmdsZV9leHQueG1sIjoKLSAg
ICAiNDc0OTg5NDQwZjk4MGEwNzk5MzVkZmYzYWI0ZDdiMjQiLAorICAgICI1YWMzODY3MmFlM2M0
YjBhY2EwOGI1NDYxZWJjNjY5ZCIsCiAgICJzY3JpcHRzL3JlZ2lzdHJ5X3htbC5weSI6Ci0gICAg
IjJkNjkyNGQzOThhNzkwZjRlZjgwNDczYzAyNzllZGE1IiwKKyAgICAiYTA0YzEwYzMzMWRkZmY3
M2QwZmY5YTU2NDg5YmUxMjkiLAogICAic2NyaXB0cy93Z2wueG1sIjoKICAgICAiYzM2MDAxNDMx
OTE5ZTFjNDM1ZjEyMTVhODVmN2UxZGIiLAogICAic3JjL2xpYkdML3Byb2NfdGFibGVfd2dsX2F1
dG9nZW4uY3BwIjoKQEAgLTIwLDcgKzIwLDcgQEAKICAgInNyYy9saWJHTEVTdjIvcHJvY190YWJs
ZV9jbF9hdXRvZ2VuLmNwcCI6CiAgICAgImVkMDAzYjBmMDQxYWFhYTM1YjY3ZDNmZTA3ZTYxZjkx
IiwKICAgInNyYy9saWJHTEVTdjIvcHJvY190YWJsZV9lZ2xfYXV0b2dlbi5jcHAiOgotICAgICI1
MDI2Zjg2Mjk5YTAyYTRiMTQ0MDI5NWI0NmY0ZGM3NyIsCisgICAgImM2YjVkMGI2MDM5NWNjZDMz
YTFkOWUzODM0MWVlZWYzIiwKICAgInNyYy9saWJPcGVuQ0wvbGliT3BlbkNMX2F1dG9nZW4ubWFw
IjoKICAgICAiYmM1ZjVjZjQ4MjI3MTQ5ZWQzMjEyNThhMTZlZmYxZDciCiB9ClwgTm8gbmV3bGlu
ZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc2Ny
aXB0cy9jb2RlX2dlbmVyYXRpb25faGFzaGVzL3Jlc3RyaWN0ZWRfdHJhY2VzLmpzb24gYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zY3JpcHRzL2NvZGVfZ2VuZXJhdGlvbl9oYXNoZXMvcmVzdHJp
Y3RlZF90cmFjZXMuanNvbgppbmRleCBkYzQ4MzU1OWI5ZTZmMWJhZTJhNzQzMzBiOWRkM2FlYmFj
YjRhMGQzLi41ZGRhZWQ2M2NkMWVkYmMzN2YwNzk1ZjMxZmE2Mzc3ZjJhODAzMzJiIDEwMDY0NAot
LS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zY3JpcHRzL2NvZGVfZ2VuZXJhdGlvbl9oYXNo
ZXMvcmVzdHJpY3RlZF90cmFjZXMuanNvbgorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9z
Y3JpcHRzL2NvZGVfZ2VuZXJhdGlvbl9oYXNoZXMvcmVzdHJpY3RlZF90cmFjZXMuanNvbgpAQCAt
NCw1ICs0LDUgQEAKICAgInNyYy90ZXN0cy9yZXN0cmljdGVkX3RyYWNlcy9nZW5fcmVzdHJpY3Rl
ZF90cmFjZXMucHkiOgogICAgICI3NzgwNDA1ZjhlMGQ5MmZhODdhNzcyZGQ2NGM2MmVmYiIsCiAg
ICJzcmMvdGVzdHMvcmVzdHJpY3RlZF90cmFjZXMvcmVzdHJpY3RlZF90cmFjZXMuanNvbiI6Ci0g
ICAgIjVhNGI1ZWJhMGMyZWI1YWY3Nzc4YjQzZjRkNzY2NDQzIgorICAgICJkZjNjNjA5YTFmZDIz
NmEwYmIwYTRlYTk0ZDk1MDNhMyIKIH0KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYg
LS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zY3JpcHRzL2VnbF9hbmdsZV9leHQueG1s
IGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc2NyaXB0cy9lZ2xfYW5nbGVfZXh0LnhtbAppbmRl
eCAzN2IzZWJhZmRmNTRjYWQ3YTQ3ZWRmZjg5OGQwZWQxYzA2NzYzYzIzLi42MjZkZTc2NTFkZmM3
M2VjMjQ2MjA4NTllNDI4MGYwM2MwMzAyNTc4IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zY3JpcHRzL2VnbF9hbmdsZV9leHQueG1sCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3NjcmlwdHMvZWdsX2FuZ2xlX2V4dC54bWwKQEAgLTExMyw2ICsxMTMsMTIgQEAKICAg
ICAgICAgICAgIDxwcm90bz48cHl0cGU+dm9pZDwvcHl0cGU+IDxuYW1lPmVnbEhhbmRsZUdQVVN3
aXRjaEFOR0xFPC9uYW1lPjwvcHJvdG8+CiAgICAgICAgICAgICA8cGFyYW0+PHB0eXBlPkVHTERp
c3BsYXk8L3B0eXBlPiA8bmFtZT5kcHk8L25hbWU+PC9wYXJhbT4KICAgICAgICAgPC9jb21tYW5k
PgorICAgICAgICA8Y29tbWFuZD4KKyAgICAgICAgICAgIDxwcm90bz48cHl0cGU+dm9pZDwvcHl0
cGU+IDxuYW1lPmVnbEZvcmNlR1BVU3dpdGNoQU5HTEU8L25hbWU+PC9wcm90bz4KKyAgICAgICAg
ICAgIDxwYXJhbT48cHR5cGU+RUdMRGlzcGxheTwvcHR5cGU+IDxuYW1lPmRweTwvbmFtZT48L3Bh
cmFtPgorICAgICAgICAgICAgPHBhcmFtPjxwdHlwZT5FR0xpbnQ8L3B0eXBlPiA8bmFtZT5ncHVJ
REhpZ2g8L25hbWU+PC9wYXJhbT4KKyAgICAgICAgICAgIDxwYXJhbT48cHR5cGU+RUdMaW50PC9w
dHlwZT4gPG5hbWU+Z3B1SURMb3c8L25hbWU+PC9wYXJhbT4KKyAgICAgICAgPC9jb21tYW5kPgog
ICAgICAgICA8Y29tbWFuZD4KICAgICAgICAgICAgIDxwcm90bz48cHR5cGU+RUdMQm9vbGVhbjwv
cHR5cGU+IDxuYW1lPmVnbFF1ZXJ5RGlzcGxheUF0dHJpYkFOR0xFPC9uYW1lPjwvcHJvdG8+CiAg
ICAgICAgICAgICA8cGFyYW0+PHB0eXBlPkVHTERpc3BsYXk8L3B0eXBlPiA8bmFtZT5kcHk8L25h
bWU+PC9wYXJhbT4KQEAgLTE4MCw2ICsxODYsNyBAQAogICAgICAgICAgICAgICAgIDxjb21tYW5k
IG5hbWU9ImVnbFJlbGVhc2VIaWdoUG93ZXJHUFVBTkdMRSIvPgogICAgICAgICAgICAgICAgIDxj
b21tYW5kIG5hbWU9ImVnbFJlYWNxdWlyZUhpZ2hQb3dlckdQVUFOR0xFIi8+CiAgICAgICAgICAg
ICAgICAgPGNvbW1hbmQgbmFtZT0iZWdsSGFuZGxlR1BVU3dpdGNoQU5HTEUiLz4KKyAgICAgICAg
ICAgICAgICA8Y29tbWFuZCBuYW1lPSJlZ2xGb3JjZUdQVVN3aXRjaEFOR0xFIi8+CiAgICAgICAg
ICAgICA8L3JlcXVpcmU+CiAgICAgICAgIDwvZXh0ZW5zaW9uPgogICAgICAgICA8ZXh0ZW5zaW9u
IG5hbWU9IkVHTF9BTkdMRV9kaXNwbGF5X3NlbWFwaG9yZV9zaGFyZV9ncm91cCIgc3VwcG9ydGVk
PSJlZ2wiPgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc2NyaXB0cy9maWxl
X2V4aXN0cy5weSBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NjcmlwdHMvZmlsZV9leGlzdHMu
cHkKaW5kZXggOTc2YmY1NDZjZjliZGIzNTAxMzdlMjZhZmNiZWQ2ZTYxZmU4NDY0Ny4uOTE0MGY0
MjM0ZTljY2FiNTllN2NkZDZkOGY3Y2FjZmEyNjZkMjIwZCAxMDA2NDQKLS0tIGEvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc2NyaXB0cy9maWxlX2V4aXN0cy5weQorKysgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9BTkdMRS9zY3JpcHRzL2ZpbGVfZXhpc3RzLnB5CkBAIC0xLDQgKzEsNCBAQAotIyEvdXNy
L2Jpbi9weXRob24yCisjIS91c3IvYmluL3B5dGhvbjMKICMgQ29weXJpZ2h0IDIwMTkgVGhlIEFO
R0xFIFByb2plY3QgQXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICMgVXNlIG9mIHRoaXMg
c291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBi
ZQogIyBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvc2NyaXB0cy9nZW5lcmF0ZV9lbnRyeV9wb2ludHMucHkgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zY3JpcHRzL2dlbmVyYXRlX2VudHJ5X3BvaW50cy5weQppbmRleCAyNGFh
YzFjODkxMDg2OTMxYmE0ZjE0MGMyNDJkZTkxMDAwODBhYmM4Li41YjExYzExNjI1M2VjY2ViZTZh
YWFkMWY1OTgzZjY4NzY2MThiODVkIDEwMDc1NQotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zY3JpcHRzL2dlbmVyYXRlX2VudHJ5X3BvaW50cy5weQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zY3JpcHRzL2dlbmVyYXRlX2VudHJ5X3BvaW50cy5weQpAQCAtNTAsOSArNTAsNiBA
QCBJTklUX0RJQ1QgPSB7CiAgICAgImNsSWNkR2V0UGxhdGZvcm1JRHNLSFIiOiAidHJ1ZSIsCiB9
CiAKLSMgU3RyaXAgdGhlc2Ugc3VmZml4ZXMgZnJvbSBDb250ZXh0IGVudHJ5IHBvaW50IG5hbWVz
LiBOViBpcyBleGNsdWRlZCAoZm9yIG5vdykuCi1TVFJJUF9TVUZGSVhFUyA9IFsiQU5EUk9JRCIs
ICJBTkdMRSIsICJFWFQiLCAiS0hSIiwgIk9FUyIsICJDSFJPTUlVTSIsICJPVlIiXQotCiBURU1Q
TEFURV9FTlRSWV9QT0lOVF9IRUFERVIgPSAiIiJcCiAvLyBHRU5FUkFURUQgRklMRSAtIERPIE5P
VCBFRElULgogLy8gR2VuZXJhdGVkIGJ5IHtzY3JpcHRfbmFtZX0gdXNpbmcgZGF0YSBmcm9tIHtk
YXRhX3NvdXJjZV9uYW1lfS4KQEAgLTE0NjYsNyArMTQ2Myw3IEBAIGRlZiBzdHJpcF9zdWZmaXgo
YXBpLCBuYW1lKToKICAgICBpZiBpc19hbGlhc2luZ19leGNlcHRlZChhcGksIG5hbWUpOgogICAg
ICAgICByZXR1cm4gbmFtZQogCi0gICAgZm9yIHN1ZmZpeCBpbiBTVFJJUF9TVUZGSVhFUzoKKyAg
ICBmb3Igc3VmZml4IGluIHJlZ2lzdHJ5X3htbC5zdHJpcF9zdWZmaXhlczoKICAgICAgICAgaWYg
bmFtZS5lbmRzd2l0aChzdWZmaXgpOgogICAgICAgICAgICAgbmFtZSA9IG5hbWVbMDotbGVuKHN1
ZmZpeCldCiAgICAgcmV0dXJuIG5hbWUKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FO
R0xFL3NjcmlwdHMvZ2VuZXJhdGVfbmV3X3JlbmRlcmVyLnB5IGIvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc2NyaXB0cy9nZW5lcmF0ZV9uZXdfcmVuZGVyZXIucHkKZGVsZXRlZCBmaWxlIG1vZGUg
MTAwNzU1CmluZGV4IGNkYzAxMzU4YTczNjc1ZjJkMDUxYzE5ZDVmYTZhYzQxMzJjYjNlZTIuLjAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvc2NyaXB0cy9nZW5lcmF0ZV9uZXdfcmVuZGVyZXIucHkKKysrIC9kZXYvbnVs
bApAQCAtMSwyODYgKzAsMCBAQAotIyEvdXNyL2Jpbi9weXRob24yCi0jCi0jIENvcHlyaWdodCAy
MDE1IFRoZSBBTkdMRSBQcm9qZWN0IEF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0jIFVz
ZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlIGxpY2Vuc2Ug
dGhhdCBjYW4gYmUKLSMgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KLSMKLSMgZ2VuZXJhdGVf
bmV3X3JlbmRlcmVyLnB5OgotIyAgIFV0aWxpdHkgc2NyaXB0IHRvIGdlbmVyYXRlIHN0dWJzIGZv
ciBhIG5ldyBSZW5kZXJlciBjbGFzcy4KLSMgICBVc2FnZTogZ2VuZXJhdGVfbmV3X3JlbmRlcmVy
LnB5IDxyZW5kZXJlciBuYW1lPiA8cmVuZGVyZXIgc3VmZml4PgotIyAgICAgUmVuZGVyZXIgbmFt
ZSBpcyB0aGUgZm9sZGVyIGZvciB0aGUgcmVuZGVyZXIgc3ViZGlyZWN0b3J5Ci0jICAgICBSZW5k
ZXJlciBzdWZmaXggaXMgdGhlIGFiYnJldmlhdGlvbiB0byBhcHBlbmQgYWZ0ZXIgdGhlIGNsYXNz
IG5hbWVzLgotIwotIyBUaGUgc2NyaXB0IGlzIGZhaXJseSByb2J1c3QgYnV0IG1heSBub3Qgd29y
ayBmb3IgYWxsIG5ldyBtZXRob2RzIG9yCi0jIG90aGVyIHVuZXhwZWN0ZWQgZmVhdHVyZXMuIEl0
IGV4cGVjdHMgdGhhdCBhYnN0cmFjdCBtZXRob2RzIGFyZSBhbGwKLSMgZ3JvdXBlZCBhZnRlciB0
aGUgcHVibGljIGRlc3RydWN0b3Igb3IgYWZ0ZXIgdGhlIHByaXZhdGUKLSMgRElTQUxMT1dfQ09Q
WV9BTkRfQVNTSUdOIG1hY3JvLgotCi1pbXBvcnQgb3MsIHN5cywgcmUsIHN0cmluZwotCi1pZiBs
ZW4oc3lzLmFyZ3YpIDwgMzoKLSAgICBwcmludCgnVXNhZ2U6ICcgKyBzeXMuYXJndlswXSArICcg
PHJlbmRlcmVyIGRpciBuYW1lPiA8cmVuZGVyZXIgY2xhc3Mgc3VmZml4PicpCi0gICAgc3lzLmV4
aXQoMSkKLQotcmVuZGVyZXJfbmFtZSA9IHN5cy5hcmd2WzFdCi1yZW5kZXJlcl9zdWZmaXggPSBz
eXMuYXJndlsyXQotCi0jIGNoYW5nZSB0byB0aGUgcmVuZGVyZXIgZGlyZWN0b3J5Ci1vcy5jaGRp
cihvcy5wYXRoLmpvaW4ob3MucGF0aC5kaXJuYW1lKHN5cy5hcmd2WzBdKSwgIi4uIiwgInNyYyIs
ICJsaWJBTkdMRSIsICJyZW5kZXJlciIpKQotCi0jIGVuc3VyZSBzdWJkaXIgZXhpc3RzCi1pZiBu
b3Qgb3MucGF0aC5pc2RpcihyZW5kZXJlcl9uYW1lKToKLSAgICBvcy5ta2RpcihyZW5kZXJlcl9u
YW1lKQotCi1pbXBsX2NsYXNzZXMgPSBbCi0gICAgJ0J1ZmZlcicsCi0gICAgJ0NvbXBpbGVyJywK
LSAgICAnQ29udGV4dCcsCi0gICAgJ0RldmljZScsCi0gICAgJ0Rpc3BsYXknLAotICAgICdGZW5j
ZU5WJywKLSAgICAnRmVuY2VTeW5jJywKLSAgICAnRnJhbWVidWZmZXInLAotICAgICdJbWFnZScs
Ci0gICAgJ1BhdGgnLAotICAgICdQcm9ncmFtJywKLSAgICAnUXVlcnknLAotICAgICdSZW5kZXJi
dWZmZXInLAotICAgICdTYW1wbGVyJywKLSAgICAnU2hhZGVyJywKLSAgICAnU3VyZmFjZScsCi0g
ICAgJ1RleHR1cmUnLAotICAgICdUcmFuc2Zvcm1GZWVkYmFjaycsCi0gICAgJ1ZlcnRleEFycmF5
JywKLV0KLQotaF9maWxlX3RlbXBsYXRlID0gIiIiLy8KLS8vIENvcHlyaWdodCAyMDE2IFRoZSBB
TkdMRSBQcm9qZWN0IEF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0vLyBVc2Ugb2YgdGhp
cyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZSBsaWNlbnNlIHRoYXQgY2Fu
IGJlCi0vLyBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgotLy8KLS8vICRUeXBlZEltcGwuaDoK
LS8vICAgIERlZmluZXMgdGhlIGNsYXNzIGludGVyZmFjZSBmb3IgJFR5cGVkSW1wbCwgaW1wbGVt
ZW50aW5nICRCYXNlSW1wbC4KLS8vCi0KLSNpZm5kZWYgTElCQU5HTEVfUkVOREVSRVJfJHtSZW5k
ZXJlck5hbWVDYXBzfV8ke1R5cGVkSW1wbENhcHN9X0hfCi0jZGVmaW5lIExJQkFOR0xFX1JFTkRF
UkVSXyR7UmVuZGVyZXJOYW1lQ2Fwc31fJHtUeXBlZEltcGxDYXBzfV9IXwotCi0jaW5jbHVkZSAi
bGliQU5HTEUvcmVuZGVyZXIvJEJhc2VJbXBsLmgiCi0KLW5hbWVzcGFjZSByeAotewotCi1jbGFz
cyAkVHlwZWRJbXBsIDogcHVibGljICRCYXNlSW1wbAotewotICBwdWJsaWM6Ci0gICAgJFR5cGVk
SW1wbCgkQ29uc3RydWN0b3JQYXJhbXMpOwotICAgIH4kVHlwZWRJbXBsKCkgb3ZlcnJpZGU7Ci0k
SW1wbE1ldGhvZERlY2xhcmF0aW9ucyRQcml2YXRlSW1wbE1ldGhvZERlY2xhcmF0aW9uc307Ci0K
LX0gIC8vIG5hbWVzcGFjZSByeAotCi0jZW5kaWYgIC8vIExJQkFOR0xFX1JFTkRFUkVSXyR7UmVu
ZGVyZXJOYW1lQ2Fwc31fJHtUeXBlZEltcGxDYXBzfV9IXwotIiIiCi0KLWNwcF9maWxlX3RlbXBs
YXRlID0gIiIiLy8KLS8vIENvcHlyaWdodCAyMDE2IFRoZSBBTkdMRSBQcm9qZWN0IEF1dGhvcnMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0vLyBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zl
cm5lZCBieSBhIEJTRC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCi0vLyBmb3VuZCBpbiB0aGUg
TElDRU5TRSBmaWxlLgotLy8KLS8vICRUeXBlZEltcGwuY3BwOgotLy8gICAgSW1wbGVtZW50cyB0
aGUgY2xhc3MgbWV0aG9kcyBmb3IgJFR5cGVkSW1wbC4KLS8vCi0KLSNpbmNsdWRlICJsaWJBTkdM
RS9yZW5kZXJlci8kUmVuZGVyZXJOYW1lLyRUeXBlZEltcGwuaCIKLQotI2luY2x1ZGUgImNvbW1v
bi9kZWJ1Zy5oIgotCi1uYW1lc3BhY2UgcngKLXsKLQotJFR5cGVkSW1wbDo6JFR5cGVkSW1wbCgk
Q29uc3RydWN0b3JQYXJhbXMpIDogJEJhc2VJbXBsKCRCYXNlQ29udHJ1Y3RvckFyZ3MpCi17Ci19
Ci0KLSRUeXBlZEltcGw6On4kVHlwZWRJbXBsKCkKLXsKLX0KLSRJbXBsTWV0aG9kRGVmaW5pdGlv
bnMKLX0gIC8vIG5hbWVzcGFjZSByeAotIiIiCi0KLQotZGVmIGdlbmVyYXRlX2ltcGxfZGVjbGFy
YXRpb24oaW1wbF9zdHViKToKLSAgICAjIGVuc3VyZSB0aGUgd3JhcHBlZCBsaW5lcyBhcmUgYWxp
Z25lZCB2ZXJ0aWNhbGx5Ci0gICAgdGVtcCA9IHJlLnN1YihyJ1xuICAgICAgICAnLCAnXG4nLCBp
bXBsX3N0dWIpCi0gICAgcmV0dXJuIHRlbXAgKyAnIG92ZXJyaWRlO1xuJwotCi0KLWRlZiBnZW5l
cmF0ZV9pbXBsX2RlZmluaXRpb24oaW1wbF9zdHViLCB0eXBlZF9pbXBsKToKLSAgICBmdW5jdGlv
bl9zaWduYXR1cmUgPSBpbXBsX3N0dWIuc3RyaXAoKQotCi0gICAgIyBzdHJpcCBjb21tZW50cwot
ICAgIGZ1bmN0aW9uX3NpZ25hdHVyZSA9IHJlLnN1YihyJ1wvXC9bXlxuXSpcbicsICcnLCBmdW5j
dGlvbl9zaWduYXR1cmUpLnN0cmlwKCkKLQotICAgIHByb2cgPSByZS5jb21waWxlKHInXiguK1sg
XCpcJl0pKFteIFwoXCpcJl0rXCgpJykKLSAgICByZXR1cm5fdmFsdWUgPSBwcm9nLm1hdGNoKGZ1
bmN0aW9uX3NpZ25hdHVyZSkuZ3JvdXAoMSkKLQotICAgICMgZW5zdXJlIHRoZSB3cmFwcGVkIGxp
bmVzIGFyZSBhbGlnbmVkIHZlcnRpY2FsbHkKLSAgICBzcGFjZXMgPSAnICcgKiBsZW4odHlwZWRf
aW1wbCkKLSAgICBmdW5jdGlvbl9zaWduYXR1cmUgPSByZS5zdWIocidcbiAgICAgICAgICAnLCAn
XG4nICsgc3BhY2VzLCBmdW5jdGlvbl9zaWduYXR1cmUpCi0KLSAgICAjIGFkZCBjbGFzcyBzY29w
aW5nCi0gICAgZnVuY3Rpb25fc2lnbmF0dXJlID0gcHJvZy5zdWIocidcMScgKyB0eXBlZF9pbXBs
ICsgcic6OlwyJywgZnVuY3Rpb25fc2lnbmF0dXJlKQotICAgIGZ1bmN0aW9uX3NpZ25hdHVyZSAr
PSAnXG4nCi0KLSAgICByZXR1cm5fc3RhdGVtZW50ID0gJycKLSAgICByZXR1cm5fdHlwZSA9IHJl
dHVybl92YWx1ZS5zdHJpcCgpCi0KLSAgICBpZiByZXR1cm5fdHlwZSAhPSAndm9pZCc6Ci0gICAg
ICAgICMgc3BlY2lhbGl6ZWQgcmV0dXJuIHZhbHVlcyBmb3IgRXJyb3JzLCBwb2ludGVycywgZXRj
Ci0gICAgICAgIGlmIHJldHVybl90eXBlID09ICdnbDo6RXJyb3InOgotICAgICAgICAgICAgcmV0
dXJuX3N0YXRlbWVudCA9ICcgICAgcmV0dXJuIGdsOjpJbnZhbGlkT3BlcmF0aW9uKCk7XG4nCi0g
ICAgICAgIGVsaWYgcmV0dXJuX3R5cGUgPT0gJ2VnbDo6RXJyb3InOgotICAgICAgICAgICAgcmV0
dXJuX3N0YXRlbWVudCA9ICcgICAgcmV0dXJuIGVnbDo6RWdsQmFkQWNjZXNzKCk7XG4nCi0gICAg
ICAgIGVsaWYgcmV0dXJuX3R5cGUgPT0gJ0xpbmtSZXN1bHQnOgotICAgICAgICAgICAgcmV0dXJu
X3N0YXRlbWVudCA9ICcgICAgcmV0dXJuIGdsOjpJbnZhbGlkT3BlcmF0aW9uKCk7XG4nCi0gICAg
ICAgIGVsaWYgcmUuc2VhcmNoKHInXCokJywgcmV0dXJuX3R5cGUpOgotICAgICAgICAgICAgcmV0
dXJuX3N0YXRlbWVudCA9ICcgICAgcmV0dXJuIHN0YXRpY19jYXN0PCcgKyByZXR1cm5fdHlwZSAr
ICc+KDApO1xuJwotICAgICAgICBlbGlmIHJlLnNlYXJjaChyJ2NvbnN0IChbXiBcJl0rKSBcJiQn
LCByZXR1cm5fdHlwZSk6Ci0gICAgICAgICAgICBvYmpfdHlwZSA9IHJlLnNlYXJjaChyJ2NvbnN0
IChbXiBcJl0rKSBcJiQnLCByZXR1cm5fdHlwZSkuZ3JvdXAoMSkKLSAgICAgICAgICAgIHJldHVy
bl9zdGF0ZW1lbnQgPSAnICAgIHN0YXRpYyAnICsgb2JqX3R5cGUgKyAnIGxvY2FsO1xuJyArICcg
ICAgcmV0dXJuIGxvY2FsO1xuJwotICAgICAgICBlbHNlOgotICAgICAgICAgICAgcmV0dXJuX3N0
YXRlbWVudCA9ICcgICAgcmV0dXJuICcgKyByZXR1cm5fdHlwZSArICcoKTtcbicKLQotICAgIGJv
ZHkgPSAne1xuJyArICcgICAgVU5JTVBMRU1FTlRFRCgpO1xuJyArIHJldHVybl9zdGF0ZW1lbnQg
KyAnfVxuJwotCi0gICAgcmV0dXJuICdcbicgKyBmdW5jdGlvbl9zaWduYXR1cmUgKyBib2R5Ci0K
LQotZGVmIGdldF9jb25zdHJ1Y3Rvcl9hcmdzKGNvbnN0cnVjdG9yKToKLSAgICBwYXJhbXMgPSBy
ZS5zZWFyY2gocidcKCguKilcKScsIGNvbnN0cnVjdG9yKS5ncm91cCgxKQotICAgIGFyZ3MgPSAn
LCAnLmpvaW4ocmUuZmluZGFsbChyJ1teXHddPyhcdyspKD86XCx8JCknLCBwYXJhbXMpKQotICAg
IHJldHVybiBwYXJhbXMsIGFyZ3MKLQotCi1kZWYgcGFyc2VfaW1wbF9oZWFkZXIoYmFzZV9pbXBs
KToKLSAgICBpbXBsX2hfZmlsZV9wYXRoID0gYmFzZV9pbXBsICsgJy5oJwotICAgIGltcGxfaF9m
aWxlID0gb3BlbihpbXBsX2hfZmlsZV9wYXRoLCAncicpCi0KLSAgICAjIGV4dHJhY3QgaW1wbCBz
dHVicwotICAgIGNvcHkgPSBGYWxzZQotICAgIGNvcHlfcHJpdmF0ZSA9IEZhbHNlCi0gICAgaW1w
bF9zdHVicyA9ICcnCi0gICAgcHJpdmF0ZV9pbXBsX3N0dWJzID0gJycKLSAgICBjb25zdHJ1Y3Rv
ciA9IGJhc2VfaW1wbCArICcoKSB7fScKLSAgICBmb3IgbGluZSBpbiBpbXBsX2hfZmlsZToKLSAg
ICAgICAgY2xlYW5fbGluZSA9IGxpbmUuc3RyaXAoKQotCi0gICAgICAgIG1hdGNoID0gcmUuc2Vh
cmNoKHInXig/OmV4cGxpY2l0ICk/KCcgKyBiYXNlX2ltcGwgKyByJ1woW15cKV0qXCkpJywgY2xl
YW5fbGluZSkKLSAgICAgICAgaWYgbWF0Y2g6Ci0gICAgICAgICAgICBjb25zdHJ1Y3RvciA9IG1h
dGNoLmdyb3VwKDEpCi0KLSAgICAgICAgIyBiZWdpbiBjYXB0dXJlIHdoZW4gcmVhZGluZyB0aGUg
ZGVzdHJ1Y3Rvci4KLSAgICAgICAgIyBiZWdpbiBjYXB0dXJlIGFsc28gaW4gdGhlIHByaXZhdGUg
c2NvcGUgKGEgZmV3IHNwZWNpYWwgY2FzZXMpCi0gICAgICAgICMgZW5kIGNhcHR1cmUgd2hlbiB3
ZSByZWFjaCBhIG5vbi12aXJ0dWFsIGZ1bmN0aW9uLCBvciBkaWZmZXJlbnQgc2NvcGUuCi0gICAg
ICAgIGlmICd+JyArIGJhc2VfaW1wbCBpbiBjbGVhbl9saW5lOgotICAgICAgICAgICAgY29weSA9
IFRydWUKLSAgICAgICAgICAgIGNvcHlfcHJpdmF0ZSA9IEZhbHNlCi0gICAgICAgIGVsaWYgJ3By
aXZhdGU6JyBpbiBjbGVhbl9saW5lOgotICAgICAgICAgICAgY29weSA9IEZhbHNlCi0gICAgICAg
ICAgICBjb3B5X3ByaXZhdGUgPSBUcnVlCi0gICAgICAgIGVsaWYgJzsnIGluIGNsZWFuX2xpbmUg
YW5kICcgPSAwJyBub3QgaW4gY2xlYW5fbGluZToKLSAgICAgICAgICAgIGNvcHkgPSBGYWxzZQot
ICAgICAgICAgICAgY29weV9wcml2YXRlID0gRmFsc2UKLSAgICAgICAgZWxpZiAnfScgaW4gY2xl
YW5fbGluZSBvciAncHJvdGVjdGVkOicgaW4gY2xlYW5fbGluZSBvciAncHJpdmF0ZTonIGluIGNs
ZWFuX2xpbmU6Ci0gICAgICAgICAgICBjb3B5ID0gRmFsc2UKLSAgICAgICAgICAgIGNvcHlfcHJp
dmF0ZSA9IEZhbHNlCi0gICAgICAgIGVsaWYgY29weToKLSAgICAgICAgICAgIGltcGxfc3R1YnMg
Kz0gbGluZQotICAgICAgICBlbGlmIGNvcHlfcHJpdmF0ZToKLSAgICAgICAgICAgIHByaXZhdGVf
aW1wbF9zdHVicyArPSBsaW5lCi0KLSAgICBpbXBsX2hfZmlsZS5jbG9zZSgpCi0KLSAgICByZXR1
cm4gaW1wbF9zdHVicywgcHJpdmF0ZV9pbXBsX3N0dWJzLCBjb25zdHJ1Y3RvcgotCi0KLWRlZiBn
ZXRfYmFzZV9jbGFzcyhiYXNlX2ltcGwpOgotICAgIGltcGxfaF9maWxlX3BhdGggPSBiYXNlX2lt
cGwgKyAnLmgnCi0gICAgd2l0aCBvcGVuKGltcGxfaF9maWxlX3BhdGgsICdyJykgYXMgaW1wbF9o
X2ZpbGU6Ci0gICAgICAgIGZvciBsaW5lIGluIGltcGxfaF9maWxlOgotICAgICAgICAgICAgbWF0
Y2ggPSByZS5zZWFyY2gocideY2xhc3MgJyArIGJhc2VfaW1wbCArIHInIDogcHVibGljIChcdysp
JywgbGluZSkKLSAgICAgICAgICAgIGlmIG1hdGNoOgotICAgICAgICAgICAgICAgIHJldHVybiBt
YXRjaC5ncm91cCgxKQotICAgIHJldHVybiBGYWxzZQotCi0KLWZvciBpbXBsX2NsYXNzIGluIGlt
cGxfY2xhc3NlczoKLQotICAgIGJhc2VfaW1wbCA9IGltcGxfY2xhc3MgKyAnSW1wbCcKLSAgICB0
eXBlZF9pbXBsID0gaW1wbF9jbGFzcyArIHJlbmRlcmVyX3N1ZmZpeAotCi0gICAgaF9maWxlX3Bh
dGggPSBvcy5wYXRoLmpvaW4ocmVuZGVyZXJfbmFtZSwgdHlwZWRfaW1wbCArICcuaCcpCi0gICAg
Y3BwX2ZpbGVfcGF0aCA9IG9zLnBhdGguam9pbihyZW5kZXJlcl9uYW1lLCB0eXBlZF9pbXBsICsg
Jy5jcHAnKQotCi0gICAgaF9maWxlID0gb3BlbihoX2ZpbGVfcGF0aCwgJ3cnKQotICAgIGNwcF9m
aWxlID0gb3BlbihjcHBfZmlsZV9wYXRoLCAndycpCi0KLSAgICAjIGV4dHJhY3QgaW1wbCBzdHVi
cwotICAgIGltcGxfc3R1YnMsIHByaXZhdGVfaW1wbF9zdHVicywgY29uc3RydWN0b3IgPSBwYXJz
ZV9pbXBsX2hlYWRlcihiYXNlX2ltcGwpCi0KLSAgICAjIEhhbmRsZSBiYXNlIGNsYXNzZXMsIHNr
aXBwaW5nIGFuZ2xlOjpOb25Db3B5YWJsZS4KLSAgICBiYXNlX2NsYXNzID0gZ2V0X2Jhc2VfY2xh
c3MoYmFzZV9pbXBsKQotICAgIGlmIGJhc2VfY2xhc3MgYW5kIGJhc2VfY2xhc3MgIT0gJ2FuZ2xl
JzoKLSAgICAgICAgYmFzZV9pbXBsX3N0dWJzLCBiYXNlX3ByaXZhdGVfaW1wbF9zdHVicywgYmFz
ZV9jb25zdHJ1Y3RvciA9IHBhcnNlX2ltcGxfaGVhZGVyKGJhc2VfY2xhc3MpCi0gICAgICAgIGlt
cGxfc3R1YnMgKz0gYmFzZV9pbXBsX3N0dWJzCi0gICAgICAgIHByaXZhdGVfaW1wbF9zdHVicyAr
PSBiYXNlX3ByaXZhdGVfaW1wbF9zdHVicwotCi0gICAgaW1wbF9tZXRob2RfZGVjbGFyYXRpb25z
ID0gJycKLSAgICBpbXBsX21ldGhvZF9kZWZpbml0aW9ucyA9ICcnCi0gICAgcHJpdmF0ZV9pbXBs
X21ldGhvZF9kZWNsYXJhdGlvbnMgPSAnJwotCi0gICAgZm9yIGltcGxfc3R1YiBpbiBpbXBsX3N0
dWJzLnNwbGl0KCcgPSAwO1xuJyk6Ci0gICAgICAgICMgdXNlICd2aXJ0dWFsJyB0byBpZGVudGlm
eSB0aGUgc3RyaW5ncyB3aXRoIGZ1bmN0aW9ucwotICAgICAgICBpZiAndmlydHVhbCcgaW4gaW1w
bF9zdHViOgotICAgICAgICAgICAgdGVtcCA9IHJlLnN1YihyJ3ZpcnR1YWwgJywgJycsIGltcGxf
c3R1YikKLSAgICAgICAgICAgIGltcGxfbWV0aG9kX2RlY2xhcmF0aW9ucyArPSBnZW5lcmF0ZV9p
bXBsX2RlY2xhcmF0aW9uKHRlbXApCi0gICAgICAgICAgICBpbXBsX21ldGhvZF9kZWZpbml0aW9u
cyArPSBnZW5lcmF0ZV9pbXBsX2RlZmluaXRpb24odGVtcCwgdHlwZWRfaW1wbCkKLQotICAgIGZv
ciBpbXBsX3N0dWIgaW4gcHJpdmF0ZV9pbXBsX3N0dWJzLnNwbGl0KCcgPSAwO1xuJyk6Ci0gICAg
ICAgICMgdXNlICd2aXJ0dWFsJyB0byBpZGVudGlmeSB0aGUgc3RyaW5ncyB3aXRoIGZ1bmN0aW9u
cwotICAgICAgICBpZiAndmlydHVhbCcgaW4gaW1wbF9zdHViOgotICAgICAgICAgICAgdGVtcCA9
IHJlLnN1YihyJ3ZpcnR1YWwgJywgJycsIGltcGxfc3R1YikKLSAgICAgICAgICAgIHByaXZhdGVf
aW1wbF9tZXRob2RfZGVjbGFyYXRpb25zICs9IGdlbmVyYXRlX2ltcGxfZGVjbGFyYXRpb24odGVt
cCkKLSAgICAgICAgICAgIGltcGxfbWV0aG9kX2RlZmluaXRpb25zICs9IGdlbmVyYXRlX2ltcGxf
ZGVmaW5pdGlvbih0ZW1wLCB0eXBlZF9pbXBsKQotCi0gICAgY29uc3RydWN0b3JfcGFyYW1zLCBi
YXNlX2NvbnN0cnVjdG9yX2FyZ3MgPSBnZXRfY29uc3RydWN0b3JfYXJncyhjb25zdHJ1Y3RvcikK
LQotICAgIGlmIHByaXZhdGVfaW1wbF9tZXRob2RfZGVjbGFyYXRpb25zOgotICAgICAgICBwcml2
YXRlX2ltcGxfbWV0aG9kX2RlY2xhcmF0aW9ucyA9ICJcbiAgcHJpdmF0ZTpcbiIgKyBwcml2YXRl
X2ltcGxfbWV0aG9kX2RlY2xhcmF0aW9ucwotCi0gICAgc3Vic3RpdHV0aW9ucyA9IHsKLSAgICAg
ICAgJ0Jhc2VJbXBsJzogYmFzZV9pbXBsLAotICAgICAgICAnVHlwZWRJbXBsJzogdHlwZWRfaW1w
bCwKLSAgICAgICAgJ1R5cGVkSW1wbENhcHMnOiB0eXBlZF9pbXBsLnVwcGVyKCksCi0gICAgICAg
ICdSZW5kZXJlck5hbWUnOiByZW5kZXJlcl9uYW1lLAotICAgICAgICAnUmVuZGVyZXJOYW1lQ2Fw
cyc6IHJlbmRlcmVyX25hbWUudXBwZXIoKSwKLSAgICAgICAgJ0ltcGxNZXRob2REZWNsYXJhdGlv
bnMnOiBpbXBsX21ldGhvZF9kZWNsYXJhdGlvbnMsCi0gICAgICAgICdJbXBsTWV0aG9kRGVmaW5p
dGlvbnMnOiBpbXBsX21ldGhvZF9kZWZpbml0aW9ucywKLSAgICAgICAgJ0NvbnN0cnVjdG9yUGFy
YW1zJzogY29uc3RydWN0b3JfcGFyYW1zLAotICAgICAgICAnQmFzZUNvbnRydWN0b3JBcmdzJzog
YmFzZV9jb25zdHJ1Y3Rvcl9hcmdzLAotICAgICAgICAnUHJpdmF0ZUltcGxNZXRob2REZWNsYXJh
dGlvbnMnOiBwcml2YXRlX2ltcGxfbWV0aG9kX2RlY2xhcmF0aW9ucwotICAgIH0KLQotICAgIGhf
ZmlsZS53cml0ZShzdHJpbmcuVGVtcGxhdGUoaF9maWxlX3RlbXBsYXRlKS5zdWJzdGl0dXRlKHN1
YnN0aXR1dGlvbnMpKQotICAgIGNwcF9maWxlLndyaXRlKHN0cmluZy5UZW1wbGF0ZShjcHBfZmls
ZV90ZW1wbGF0ZSkuc3Vic3RpdHV0ZShzdWJzdGl0dXRpb25zKSkKLQotICAgIGhfZmlsZS5jbG9z
ZSgpCi0gICAgY3BwX2ZpbGUuY2xvc2UoKQotCi0jIFByaW50IGEgYmxvY2sgb2Ygc291cmNlIGZp
bGVzIHRvIGFkZCB0byB0aGUgYnVpbGQKLXByaW50KCJHZW5lcmF0ZWQgZmlsZXM6IikKLWZvciBp
bXBsX2NsYXNzIGluIGltcGxfY2xhc3NlczoKLSAgICBwYXRoID0gImxpYkFOR0xFL3JlbmRlcmVy
LyIgKyByZW5kZXJlcl9uYW1lICsgIi8iICsgaW1wbF9jbGFzcyArIHJlbmRlcmVyX3N1ZmZpeAot
ICAgIHByaW50KCdcJycgKyBwYXRoICsgIi5jcHBcJywiKQotICAgIHByaW50KCdcJycgKyBwYXRo
ICsgIi5oXCcsIikKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NjcmlwdHMv
Z2wueG1sIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc2NyaXB0cy9nbC54bWwKaW5kZXggOWRi
NjU5ZGZlNTkwMjM2YWQyZDFhNzRhYjZmM2M5N2EyZmFlMDZiNS4uYjE2OGVhOTQxODBjNDc4MDdh
ODBhMTQ5NGMyYmE3ZDQxYTc0NjBhNCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvc2NyaXB0cy9nbC54bWwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc2NyaXB0cy9n
bC54bWwKQEAgLTIwOCw2ICsyMDgsMzYgQEAgdHlwZWRlZiB1bnNpZ25lZCBpbnQgR0xoYW5kbGVB
UkI7CiAgICAgICAgICAgICA8ZW51bSBuYW1lPSJHTF9GVU5DX0FERCIvPgogICAgICAgICAgICAg
PGVudW0gbmFtZT0iR0xfRlVOQ19SRVZFUlNFX1NVQlRSQUNUIi8+CiAgICAgICAgICAgICA8ZW51
bSBuYW1lPSJHTF9GVU5DX1NVQlRSQUNUIi8+CisgICAgICAgICAgICA8ZW51bSBuYW1lPSJHTF9N
VUxUSVBMWSIvPgorICAgICAgICAgICAgPGVudW0gbmFtZT0iR0xfTVVMVElQTFlfS0hSIi8+Cisg
ICAgICAgICAgICA8ZW51bSBuYW1lPSJHTF9TQ1JFRU4iLz4KKyAgICAgICAgICAgIDxlbnVtIG5h
bWU9IkdMX1NDUkVFTl9LSFIiLz4KKyAgICAgICAgICAgIDxlbnVtIG5hbWU9IkdMX09WRVJMQVki
Lz4KKyAgICAgICAgICAgIDxlbnVtIG5hbWU9IkdMX09WRVJMQVlfS0hSIi8+CisgICAgICAgICAg
ICA8ZW51bSBuYW1lPSJHTF9EQVJLRU4iLz4KKyAgICAgICAgICAgIDxlbnVtIG5hbWU9IkdMX0RB
UktFTl9LSFIiLz4KKyAgICAgICAgICAgIDxlbnVtIG5hbWU9IkdMX0xJR0hURU4iLz4KKyAgICAg
ICAgICAgIDxlbnVtIG5hbWU9IkdMX0xJR0hURU5fS0hSIi8+CisgICAgICAgICAgICA8ZW51bSBu
YW1lPSJHTF9DT0xPUkRPREdFIi8+CisgICAgICAgICAgICA8ZW51bSBuYW1lPSJHTF9DT0xPUkRP
REdFX0tIUiIvPgorICAgICAgICAgICAgPGVudW0gbmFtZT0iR0xfQ09MT1JCVVJOIi8+CisgICAg
ICAgICAgICA8ZW51bSBuYW1lPSJHTF9DT0xPUkJVUk5fS0hSIi8+CisgICAgICAgICAgICA8ZW51
bSBuYW1lPSJHTF9IQVJETElHSFQiLz4KKyAgICAgICAgICAgIDxlbnVtIG5hbWU9IkdMX0hBUkRM
SUdIVF9LSFIiLz4KKyAgICAgICAgICAgIDxlbnVtIG5hbWU9IkdMX1NPRlRMSUdIVCIvPgorICAg
ICAgICAgICAgPGVudW0gbmFtZT0iR0xfU09GVExJR0hUX0tIUiIvPgorICAgICAgICAgICAgPGVu
dW0gbmFtZT0iR0xfRElGRkVSRU5DRSIvPgorICAgICAgICAgICAgPGVudW0gbmFtZT0iR0xfRElG
RkVSRU5DRV9LSFIiLz4KKyAgICAgICAgICAgIDxlbnVtIG5hbWU9IkdMX0VYQ0xVU0lPTiIvPgor
ICAgICAgICAgICAgPGVudW0gbmFtZT0iR0xfRVhDTFVTSU9OX0tIUiIvPgorICAgICAgICAgICAg
PGVudW0gbmFtZT0iR0xfSFNMX0hVRSIvPgorICAgICAgICAgICAgPGVudW0gbmFtZT0iR0xfSFNM
X0hVRV9LSFIiLz4KKyAgICAgICAgICAgIDxlbnVtIG5hbWU9IkdMX0hTTF9TQVRVUkFUSU9OIi8+
CisgICAgICAgICAgICA8ZW51bSBuYW1lPSJHTF9IU0xfU0FUVVJBVElPTl9LSFIiLz4KKyAgICAg
ICAgICAgIDxlbnVtIG5hbWU9IkdMX0hTTF9DT0xPUiIvPgorICAgICAgICAgICAgPGVudW0gbmFt
ZT0iR0xfSFNMX0NPTE9SX0tIUiIvPgorICAgICAgICAgICAgPGVudW0gbmFtZT0iR0xfSFNMX0xV
TUlOT1NJVFkiLz4KKyAgICAgICAgICAgIDxlbnVtIG5hbWU9IkdMX0hTTF9MVU1JTk9TSVRZX0tI
UiIvPgogICAgICAgICA8L2dyb3VwPgogCiAgICAgICAgIDxncm91cCBuYW1lPSJCb29sZWFuIj4K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NjcmlwdHMvZ2xfYW5nbGVfZXh0
LnhtbCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NjcmlwdHMvZ2xfYW5nbGVfZXh0LnhtbApp
bmRleCBjMDZjOTk4OGZhNjg1ODE1NThlMWJkZDM5YWU2MWFhYjUyZWRiNzIwLi5jZDRlMGNmMDA2
Nzc2OGIzZDQ3NDI1M2U5MmY0NjYzYjJkOWNkNzk3IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9BTkdMRS9zY3JpcHRzL2dsX2FuZ2xlX2V4dC54bWwKKysrIGIvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc2NyaXB0cy9nbF9hbmdsZV9leHQueG1sCkBAIC03NzMsNyArNzczLDcgQEAKICAg
ICAgICAgICAgIDxwYXJhbT48cHR5cGU+R0xzaXplaTwvcHR5cGU+IDxuYW1lPmNvdW50PC9uYW1l
PjwvcGFyYW0+CiAgICAgICAgICAgICA8cGFyYW0gZ3JvdXA9IkRyYXdFbGVtZW50c1R5cGUiPjxw
dHlwZT5HTGVudW08L3B0eXBlPiA8bmFtZT50eXBlPC9uYW1lPjwvcGFyYW0+CiAgICAgICAgICAg
ICA8cGFyYW0+Y29uc3QgPHB0eXBlPkdMdm9pZDwvcHR5cGU+ICo8bmFtZT5pbmRpY2VzPC9uYW1l
PjwvcGFyYW0+Ci0gICAgICAgICAgICA8cGFyYW0+PHB0eXBlPkdMc2l6ZWk8L3B0eXBlPiA8bmFt
ZT5pbnN0YW5jZUNvdW50czwvbmFtZT48L3BhcmFtPgorICAgICAgICAgICAgPHBhcmFtPjxwdHlw
ZT5HTHNpemVpPC9wdHlwZT4gPG5hbWU+aW5zdGFuY2VDb3VudDwvbmFtZT48L3BhcmFtPgogICAg
ICAgICAgICAgPHBhcmFtPjxwdHlwZT5HTGludDwvcHR5cGU+IDxuYW1lPmJhc2VWZXJ0ZXg8L25h
bWU+PC9wYXJhbT4KICAgICAgICAgICAgIDxwYXJhbT48cHR5cGU+R0x1aW50PC9wdHlwZT4gPG5h
bWU+YmFzZUluc3RhbmNlPC9uYW1lPjwvcGFyYW0+CiAgICAgICAgIDwvY29tbWFuZD4KZGlmZiAt
LWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NjcmlwdHMvbXN2c19wcm9qZWN0cy5weSBi
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NjcmlwdHMvbXN2c19wcm9qZWN0cy5weQpkZWxldGVk
IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggZjI0YTk1MjE2ZWUyMDY3NjI5YjZjNWU2MjAxYmUzYzcx
ZjQ0MmY0ZS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zY3JpcHRzL21zdnNfcHJvamVjdHMucHkKKysrIC9kZXYv
bnVsbApAQCAtMSw0MiArMCwwIEBACi0jIS91c3IvYmluL3B5dGhvbjIKLSMKLSMgQ29weXJpZ2h0
IDIwMTcgVGhlIEFOR0xFIFByb2plY3QgQXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSMg
VXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUgbGljZW5z
ZSB0aGF0IGNhbiBiZQotIyBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgotIwotIyBtc3ZzX3By
b2plY3RzLnB5OgotIyAgIEEgaGVscGVyIHV0aWxpdHkgdGhhdCBnZW5lcmF0ZXMgVmlzdWFsIFN0
dWRpbyBwcm9qZWN0cyBmb3IgZWFjaCBvZgotIyAgIHRoZSBhdmFpbGFibGUgZGlyZWN0b3JpZXMg
aW4gJ291dCcsIGFuZCB0aGVuIHJ1bnMgYW5vdGhlciBoZWxwZXIKLSMgICB1dGlsaXR5IHRoYXQg
bWVyZ2VzIHRoZXNlIHByb2plY3RzIGludG8gb25lIHNvbHV0aW9uLgotCi1pbXBvcnQgc3lzLCBv
cywgc3VicHJvY2VzcwotCi0jIENoYW5nZSB0aGlzIHRvIHRhcmdldCBhbm90aGVyIFZTIHZlcnNp
b24uCi10YXJnZXRfaWRlID0gJ3ZzMjAxNycKLXNvbHV0aW9uX25hbWUgPSAnQU5HTEUnCi0KLXNj
cmlwdF9kaXIgPSBvcy5wYXRoLmRpcm5hbWUoc3lzLmFyZ3ZbMF0pCi0KLSMgU2V0IHRoZSBDV0Qg
dG8gdGhlIHJvb3QgQU5HTEUgZm9sZGVyLgotb3MuY2hkaXIob3MucGF0aC5qb2luKHNjcmlwdF9k
aXIsICcuLicpKQotCi1vdXRfZGlyID0gJ291dCcKLQotCi0jIEdlbmVyYXRlIHRoZSBWUyBzb2x1
dGlvbnMgZm9yIGFueSB2YWxpZCBkaXJlY3RvcnkuCi1kZWYgZ2VuZXJhdGVfcHJvamVjdHMoZGly
bmFtZSk6Ci0gICAgYXJncyA9IFsnZ24uYmF0JywgJ2dlbicsIGRpcm5hbWUsICctLWlkZT0nICsg
dGFyZ2V0X2lkZSwgJy0tc2xuPScgKyBzb2x1dGlvbl9uYW1lXQotICAgIHByaW50KCdSdW5uaW5n
ICInICsgJyAnLmpvaW4oYXJncykgKyAnIicpCi0gICAgc3VicHJvY2Vzcy5jYWxsKGFyZ3MpCi0K
LQotZm9yIHBvdGVudGlhbF9kaXIgaW4gb3MubGlzdGRpcihvdXRfZGlyKToKLSAgICBwYXRoID0g
b3MucGF0aC5qb2luKG91dF9kaXIsIHBvdGVudGlhbF9kaXIpCi0gICAgYnVpbGRfbmluamFfZCA9
IG9zLnBhdGguam9pbihwYXRoLCAnYnVpbGQubmluamEuZCcpCi0gICAgaWYgb3MucGF0aC5leGlz
dHMoYnVpbGRfbmluamFfZCk6Ci0gICAgICAgIGdlbmVyYXRlX3Byb2plY3RzKHBhdGgpCi0KLSMg
UnVuIHRoZSBoZWxwZXIgdXRpbGl0eSB0aGF0IG1lcmdlcyB0aGUgcHJvamVjdHMuCi1hcmdzID0g
WydweXRob24nLCBvcy5wYXRoLmpvaW4oJ2J1aWxkJywgJ3dpbicsICdnbl9tZXRhX3Nsbi5weScp
XQotcHJpbnQoJ1J1bm5pbmcgIicgKyAnICcuam9pbihhcmdzKSArICciJykKLXN1YnByb2Nlc3Mu
Y2FsbChhcmdzKQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc2NyaXB0cy9y
ZWdpc3RyeV94bWwucHkgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zY3JpcHRzL3JlZ2lzdHJ5
X3htbC5weQppbmRleCBhODdkYjU3YzVkOTFhZDkzMjA0OTQwYWJmNzhmYzNlYjZjNGMxNTI0Li4z
OGRkMWUxMmNiNTI0ZjA5Y2E5OGY4NThhNjQyNTRkZDJlNzY5ZDE1IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zY3JpcHRzL3JlZ2lzdHJ5X3htbC5weQorKysgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9zY3JpcHRzL3JlZ2lzdHJ5X3htbC5weQpAQCAtMjIwLDYgKzIyMCw3
IEBAIGFuZ2xlX2VzX29ubHlfZXh0ZW5zaW9ucyA9IFsKIF0KIAogZ2xlc19lc19vbmx5X2V4dGVu
c2lvbnMgPSBbCisgICAgIkdMX0FNRF9wZXJmb3JtYW5jZV9tb25pdG9yIiwKICAgICAiR0xfQU5E
Uk9JRF9leHRlbnNpb25fcGFja19lczMxYSIsCiAgICAgIkdMX0FOR0xFX2RlcHRoX3RleHR1cmUi
LAogICAgICJHTF9BTkdMRV90cmFuc2xhdGVkX3NoYWRlcl9zb3VyY2UiLApAQCAtMzEyLDYgKzMx
Myw4IEBAIHN1cHBvcnRlZF9lZ2xfZXh0ZW5zaW9ucyA9IFsKICAgICAiRUdMX0VYVF9nbF9jb2xv
cnNwYWNlX2Rpc3BsYXlfcDNfcGFzc3Rocm91Z2giLAogICAgICJFR0xfRVhUX2dsX2NvbG9yc3Bh
Y2Vfc2NyZ2IiLAogICAgICJFR0xfRVhUX2dsX2NvbG9yc3BhY2Vfc2NyZ2JfbGluZWFyIiwKKyAg
ICAiRUdMX0VYVF9pbWFnZV9kbWFfYnVmX2ltcG9ydCIsCisgICAgIkVHTF9FWFRfaW1hZ2VfZG1h
X2J1Zl9pbXBvcnRfbW9kaWZpZXJzIiwKICAgICAiRUdMX0VYVF9pbWFnZV9nbF9jb2xvcnNwYWNl
IiwKICAgICAiRUdMX0VYVF9waXhlbF9mb3JtYXRfZmxvYXQiLAogICAgICJFR0xfRVhUX3BsYXRm
b3JtX2Jhc2UiLApAQCAtMzYwLDcgKzM2Myw4IEBAIHN1cHBvcnRlZF9jbF9leHRlbnNpb25zID0g
WwogXQogCiAjIFN0cmlwIHRoZXNlIHN1ZmZpeGVzIGZyb20gQ29udGV4dCBlbnRyeSBwb2ludCBu
YW1lcy4gTlYgaXMgZXhjbHVkZWQgKGZvciBub3cpLgotc3RyaXBfc3VmZml4ZXMgPSBbIkFOR0xF
IiwgIkVYVCIsICJLSFIiLCAiT0VTIiwgIkNIUk9NSVVNIl0KK3N0cmlwX3N1ZmZpeGVzID0gWyJB
TUQiLCAiQU5EUk9JRCIsICJBTkdMRSIsICJDSFJPTUlVTSIsICJFWFQiLCAiS0hSIiwgIk9FUyIs
ICJPVlIiXQorY2hlY2tfc29ydGVkKCdzdHJpcF9zdWZmaXhlcycsIHN0cmlwX3N1ZmZpeGVzKQog
CiAjIFRoZSBFR0xfQU5HTEVfZXhwbGljaXRfY29udGV4dCBleHRlbnNpb24gaXMgZ2VuZXJhdGVk
IGRpZmZlcmVudGx5IGZyb20gb3RoZXIgZXh0ZW5zaW9ucy4KICMgVG9nZ2xlIGdlbmVyYXRpb24g
aGVyZS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NjcmlwdHMvcmVtb3Zl
X2ZpbGVzLnB5IGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc2NyaXB0cy9yZW1vdmVfZmlsZXMu
cHkKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IDcyYjRjMWRiOThjZjNiZjQwZDVkZTk1
MWU5YjQ1MWYzYjg2MWNmZTYuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc2NyaXB0cy9yZW1vdmVfZmlsZXMucHkK
KysrIC9kZXYvbnVsbApAQCAtMSwzMSArMCwwIEBACi0jIS91c3IvYmluL3B5dGhvbjIKLSMKLSMg
Q29weXJpZ2h0IDIwMTkgVGhlIEFOR0xFIFByb2plY3QgQXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KLSMgVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5
bGUgbGljZW5zZSB0aGF0IGNhbiBiZQotIyBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgotIwot
IyByZW1vdmVfZmlsZXMucHk6Ci0jICAgVGhpcyBzcGVjaWFsIGFjdGlvbiBpcyB1c2VkIHRvIGNs
ZWFudXAgb2xkIGZpbGVzIGZyb20gdGhlIGJ1aWxkIGRpcmVjdG9yeS4KLSMgICBPdGhlcndpc2Ug
QU5HTEUgd2lsbCBwaWNrIHVwIHRoZSBvbGQgZmlsZShzKSwgY2F1c2luZyBidWlsZCBvciBydW50
aW1lIGVycm9ycy4KLSMKLQotaW1wb3J0IGdsb2IKLWltcG9ydCBvcwotaW1wb3J0IHN5cwotCi1p
ZiBsZW4oc3lzLmFyZ3YpIDwgMzoKLSAgICBwcmludCgiVXNhZ2U6ICIgKyBzeXMuYXJndlswXSAr
ICIgPHN0YW1wX2ZpbGU+IDxyZW1vdmVfcGF0dGVybnM+IikKLQotc3RhbXBfZmlsZSA9IHN5cy5h
cmd2WzFdCi0KLWZvciBpIGluIHJhbmdlKDIsIGxlbihzeXMuYXJndikpOgotICAgIHJlbW92ZV9w
YXR0ZXJuID0gc3lzLmFyZ3ZbaV0KLSAgICByZW1vdmVfZmlsZXMgPSBnbG9iLmdsb2IocmVtb3Zl
X3BhdHRlcm4pCi0gICAgZm9yIGYgaW4gcmVtb3ZlX2ZpbGVzOgotICAgICAgICBpZiBvcy5wYXRo
LmlzZmlsZShmKToKLSAgICAgICAgICAgIG9zLnJlbW92ZShmKQotCi0jIHRvdWNoIGFuIHVudXNl
ZCBmaWxlIHRvIGtlZXAgYSB0aW1lc3RhbXAKLXdpdGggb3BlbihzdGFtcF9maWxlLCAidyIpIGFz
IGY6Ci0gICAgZi53cml0ZSgiYmxhaCIpCi0gICAgZi5jbG9zZSgpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvYW5nbGVfY29tbWl0LmggYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvYW5nbGVfY29tbWl0LmgKaW5kZXggZTFiY2ZiYTk2NzMwNGIxYWY5M2JmYmFl
MjNlMmQ2ZGFmZGE5NmI5Yi4uZTJmZDAzMGMyMDYyNWRiNGE2YmI5MGEwZGY0OWNmYTViOTA1Y2Ji
ZCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2FuZ2xlX2NvbW1pdC5o
CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9hbmdsZV9jb21taXQuaApAQCAtMSw0
ICsxLDQgQEAKLSNkZWZpbmUgQU5HTEVfQ09NTUlUX0hBU0ggIjc4YzY0ZGQ3NGVlNSIKKyNkZWZp
bmUgQU5HTEVfQ09NTUlUX0hBU0ggImU3ZjI5NDQwZjAyNSIKICNkZWZpbmUgQU5HTEVfQ09NTUlU
X0hBU0hfU0laRSAxMgotI2RlZmluZSBBTkdMRV9DT01NSVRfREFURSAiMjAyMi0wMi0xOCAxNzoz
OToyMyArMDAwMCIKLSNkZWZpbmUgQU5HTEVfQ09NTUlUX1BPU0lUSU9OIDE3OTgyCisjZGVmaW5l
IEFOR0xFX0NPTU1JVF9EQVRFICIyMDIyLTAzLTIyIDE1OjU1OjUyICswMDAwIgorI2RlZmluZSBB
TkdMRV9DT01NSVRfUE9TSVRJT04gMTgxNzgKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3NyYy9jb21taXRfaWQucHkgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29t
bWl0X2lkLnB5CmluZGV4IDI4YWY2NDgyZmFiMjc0YjdjZmUyYWQxOWIyOTNlOTViYjFlNTdmMmEu
LjAxNjlhZDU0YzdiM2M4MmQzZDQ1MjNjY2ZmNzlhMTc0MTQyMTYwNmMgMTAwNzU1Ci0tLSBhL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21taXRfaWQucHkKKysrIGIvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvc3JjL2NvbW1pdF9pZC5weQpAQCAtMSw0ICsxLDQgQEAKLSMhL3Vzci9iaW4v
ZW52IHB5dGhvbgorIyEvdXNyL2Jpbi9lbnYgcHl0aG9uMwogIyAgQ29weXJpZ2h0IDIwMTggVGhl
IEFOR0xFIFByb2plY3QgQXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICMgIFVzZSBvZiB0
aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlIGxpY2Vuc2UgdGhhdCBj
YW4gYmUKICMgIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tbW9uL0Zhc3RWZWN0b3IuaCBiL1NvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL3NyYy9jb21tb24vRmFzdFZlY3Rvci5oCmluZGV4IDQ1ZmU1MmU5NDc1YTFmMjlj
NzQxNTg4MTQxMGFkNmE0ZTc1NTRhN2MuLjFiN2RiNTBhNjk0NDhjNzNkMjVmNWE2YzQ5ZDk2Yzc4
NzdkNmUyMTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21tb24v
RmFzdFZlY3Rvci5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21tb24vRmFz
dFZlY3Rvci5oCkBAIC00NDksMTMgKzQ0OSwxMyBAQCB2b2lkIEZhc3RWZWN0b3I8VCwgTiwgU3Rv
cmFnZT46OmVuc3VyZV9jYXBhY2l0eShzaXplX3QgY2FwYWNpdHkpCiB9CiAKIHRlbXBsYXRlIDxj
bGFzcyBLZXksIGNsYXNzIFZhbHVlLCBzaXplX3QgTj4KLWNsYXNzIEZhc3RVbm9yZGVyZWRNYXAg
ZmluYWwKK2NsYXNzIEZsYXRVbm9yZGVyZWRNYXAgZmluYWwKIHsKICAgcHVibGljOgogICAgIHVz
aW5nIFBhaXIgPSBzdGQ6OnBhaXI8S2V5LCBWYWx1ZT47CiAKLSAgICBGYXN0VW5vcmRlcmVkTWFw
KCkge30KLSAgICB+RmFzdFVub3JkZXJlZE1hcCgpIHt9CisgICAgRmxhdFVub3JkZXJlZE1hcCgp
IHt9CisgICAgfkZsYXRVbm9yZGVyZWRNYXAoKSB7fQogCiAgICAgdm9pZCBpbnNlcnQoS2V5IGtl
eSwgVmFsdWUgdmFsdWUpCiAgICAgewpAQCAtNDk3LDExICs0OTcsMTEgQEAgY2xhc3MgRmFzdFVu
b3JkZXJlZE1hcCBmaW5hbAogfTsKIAogdGVtcGxhdGUgPGNsYXNzIFQsIHNpemVfdCBOPgotY2xh
c3MgRmFzdFVub3JkZXJlZFNldCBmaW5hbAorY2xhc3MgRmxhdFVub3JkZXJlZFNldCBmaW5hbAog
ewogICBwdWJsaWM6Ci0gICAgRmFzdFVub3JkZXJlZFNldCgpIHt9Ci0gICAgfkZhc3RVbm9yZGVy
ZWRTZXQoKSB7fQorICAgIEZsYXRVbm9yZGVyZWRTZXQoKSB7fQorICAgIH5GbGF0VW5vcmRlcmVk
U2V0KCkge30KIAogICAgIGJvb2wgZW1wdHkoKSBjb25zdCB7IHJldHVybiBtRGF0YS5lbXB0eSgp
OyB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21tb24vRmFz
dFZlY3Rvcl91bml0dGVzdC5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tbW9u
L0Zhc3RWZWN0b3JfdW5pdHRlc3QuY3BwCmluZGV4IGYyYTI3ZTM3OGUwMTFjYzMzMzc2NjM0NjA0
NWEyNWEyMzNlM2NiZmQuLmY3NzRiYzFhM2QxMjAwMGVkYWI4ZGIyMjE0NDIyODA3MDVjYzQyMjYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21tb24vRmFzdFZlY3Rv
cl91bml0dGVzdC5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbW1vbi9G
YXN0VmVjdG9yX3VuaXR0ZXN0LmNwcApAQCAtMjU3LDEwICsyNTcsMTAgQEAgVEVTVChGYXN0VmVj
dG9yLCBOb25Db3B5YWJsZSkKICAgICBFWFBFQ1RfRVEoMywgY29weVswXS54KTsKIH0KIAotLy8g
QmFzaWMgZnVuY3Rpb25hbGl0eSBmb3IgRmFzdFVub3JkZXJlZE1hcAotVEVTVChGYXN0VW5vcmRl
cmVkTWFwLCBCYXNpY1VzYWdlKQorLy8gQmFzaWMgZnVuY3Rpb25hbGl0eSBmb3IgRmxhdFVub3Jk
ZXJlZE1hcAorVEVTVChGbGF0VW5vcmRlcmVkTWFwLCBCYXNpY1VzYWdlKQogewotICAgIEZhc3RV
bm9yZGVyZWRNYXA8aW50LCBib29sLCAzPiB0ZXN0TWFwOworICAgIEZsYXRVbm9yZGVyZWRNYXA8
aW50LCBib29sLCAzPiB0ZXN0TWFwOwogICAgIEVYUEVDVF9UUlVFKHRlc3RNYXAuZW1wdHkoKSk7
CiAgICAgRVhQRUNUX0VRKHRlc3RNYXAuc2l6ZSgpLCAwdSk7CiAKQEAgLTI5NCwxMCArMjk0LDEw
IEBAIFRFU1QoRmFzdFVub3JkZXJlZE1hcCwgQmFzaWNVc2FnZSkKICAgICB9CiB9CiAKLS8vIEJh
c2ljIGZ1bmN0aW9uYWxpdHkgZm9yIEZhc3RVbm9yZGVyZWRTZXQKLVRFU1QoRmFzdFVub3JkZXJl
ZFNldCwgQmFzaWNVc2FnZSkKKy8vIEJhc2ljIGZ1bmN0aW9uYWxpdHkgZm9yIEZsYXRVbm9yZGVy
ZWRTZXQKK1RFU1QoRmxhdFVub3JkZXJlZFNldCwgQmFzaWNVc2FnZSkKIHsKLSAgICBGYXN0VW5v
cmRlcmVkU2V0PGludCwgMz4gdGVzdE1hcDsKKyAgICBGbGF0VW5vcmRlcmVkU2V0PGludCwgMz4g
dGVzdE1hcDsKICAgICBFWFBFQ1RfVFJVRSh0ZXN0TWFwLmVtcHR5KCkpOwogCiAgICAgdGVzdE1h
cC5pbnNlcnQoNSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29t
bW9uL1BhY2tlZEVudW1zLmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21tb24v
UGFja2VkRW51bXMuY3BwCmluZGV4IDgyMzllMzQwMDAyZmRiYmQyNjg2ZjE2YjRjODM4OTdmYzA1
YjFmMGEuLjRjOWMzN2FhZDZlYjdmNTY2MjUyODM3M2E2NmNlNTEzZDdhYTIyOTEgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21tb24vUGFja2VkRW51bXMuY3BwCisr
KyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21tb24vUGFja2VkRW51bXMuY3BwCkBA
IC0zNDcsNiArMzQ3LDUxIEBAIHN0ZDo6b3N0cmVhbSAmb3BlcmF0b3I8PChzdGQ6Om9zdHJlYW0g
Jm9zLCBCbGVuZEVxdWF0aW9uVHlwZSB2YWx1ZSkKICAgICAgICAgY2FzZSBCbGVuZEVxdWF0aW9u
VHlwZTo6UmV2ZXJzZVN1YnRyYWN0OgogICAgICAgICAgICAgb3MgPDwgIkdMX0ZVTkNfUkVWRVJT
RV9TVUJUUkFDVCI7CiAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSBCbGVuZEVxdWF0
aW9uVHlwZTo6TXVsdGlwbHk6CisgICAgICAgICAgICBvcyA8PCAiR0xfTVVMVElQTFlfS0hSIjsK
KyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIEJsZW5kRXF1YXRpb25UeXBlOjpTY3Jl
ZW46CisgICAgICAgICAgICBvcyA8PCAiR0xfU0NSRUVOX0tIUiI7CisgICAgICAgICAgICBicmVh
azsKKyAgICAgICAgY2FzZSBCbGVuZEVxdWF0aW9uVHlwZTo6T3ZlcmxheToKKyAgICAgICAgICAg
IG9zIDw8ICJHTF9PVkVSTEFZX0tIUiI7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2Fz
ZSBCbGVuZEVxdWF0aW9uVHlwZTo6RGFya2VuOgorICAgICAgICAgICAgb3MgPDwgIkdMX0RBUktF
Tl9LSFIiOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgQmxlbmRFcXVhdGlvblR5
cGU6OkxpZ2h0ZW46CisgICAgICAgICAgICBvcyA8PCAiR0xfTElHSFRFTl9LSFIiOworICAgICAg
ICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgQmxlbmRFcXVhdGlvblR5cGU6OkNvbG9yZG9kZ2U6
CisgICAgICAgICAgICBvcyA8PCAiR0xfQ09MT1JET0RHRV9LSFIiOworICAgICAgICAgICAgYnJl
YWs7CisgICAgICAgIGNhc2UgQmxlbmRFcXVhdGlvblR5cGU6OkNvbG9yYnVybjoKKyAgICAgICAg
ICAgIG9zIDw8ICJHTF9DT0xPUkJVUk5fS0hSIjsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAg
ICBjYXNlIEJsZW5kRXF1YXRpb25UeXBlOjpIYXJkbGlnaHQ6CisgICAgICAgICAgICBvcyA8PCAi
R0xfSEFSRExJR0hUX0tIUiI7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSBCbGVu
ZEVxdWF0aW9uVHlwZTo6U29mdGxpZ2h0OgorICAgICAgICAgICAgb3MgPDwgIkdMX1NPRlRMSUdI
VF9LSFIiOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgQmxlbmRFcXVhdGlvblR5
cGU6OkRpZmZlcmVuY2U6CisgICAgICAgICAgICBvcyA8PCAiR0xfRElGRkVSRU5DRV9LSFIiOwor
ICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgQmxlbmRFcXVhdGlvblR5cGU6OkV4Y2x1
c2lvbjoKKyAgICAgICAgICAgIG9zIDw8ICJHTF9FWENMVVNJT05fS0hSIjsKKyAgICAgICAgICAg
IGJyZWFrOworICAgICAgICBjYXNlIEJsZW5kRXF1YXRpb25UeXBlOjpIc2xIdWU6CisgICAgICAg
ICAgICBvcyA8PCAiR0xfSFNMX0hVRV9LSFIiOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAg
IGNhc2UgQmxlbmRFcXVhdGlvblR5cGU6OkhzbFNhdHVyYXRpb246CisgICAgICAgICAgICBvcyA8
PCAiR0xfSFNMX1NBVFVSQVRJT05fS0hSIjsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBj
YXNlIEJsZW5kRXF1YXRpb25UeXBlOjpIc2xDb2xvcjoKKyAgICAgICAgICAgIG9zIDw8ICJHTF9I
U0xfQ09MT1JfS0hSIjsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIEJsZW5kRXF1
YXRpb25UeXBlOjpIc2xMdW1pbm9zaXR5OgorICAgICAgICAgICAgb3MgPDwgIkdMX0hTTF9MVU1J
Tk9TSVRZX0tIUiI7CisgICAgICAgICAgICBicmVhazsKICAgICAgICAgZGVmYXVsdDoKICAgICAg
ICAgICAgIG9zIDw8ICJHTF9JTlZBTElEX0VOVU0iOwogICAgICAgICAgICAgYnJlYWs7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tbW9uL1BhY2tlZEVudW1zLmgg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tbW9uL1BhY2tlZEVudW1zLmgKaW5kZXgg
NTI5NWI5Yjk3MTE5NzUxNDBkZWQzODIzMTc1NGY3MTIxZGM0ODgzNi4uMmEwOTkzMjQzODNiZjEz
YjNjNzAwOGIxNWU2YmUwZTVkNjQxZjI3MiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc3JjL2NvbW1vbi9QYWNrZWRFbnVtcy5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FO
R0xFL3NyYy9jb21tb24vUGFja2VkRW51bXMuaApAQCAtMzQxLDIzICszNDEsNzIgQEAgZW51bSBj
bGFzcyBCbGVuZEVxdWF0aW9uVHlwZQogICAgIFVudXNlZCAgICAgICAgICA9IDMsCiAgICAgU3Vi
dHJhY3QgICAgICAgID0gNCwgIC8vIEdMZW51bSA9PSAweDgwMEEKICAgICBSZXZlcnNlU3VidHJh
Y3QgPSA1LCAgLy8gR0xlbnVtID09IDB4ODAwQgotICAgIEludmFsaWRFbnVtICAgICA9IDYsCi0g
ICAgRW51bUNvdW50ICAgICAgID0gNgorCisgICAgTXVsdGlwbHkgICA9IDYsICAgLy8gR0xlbnVt
ID09IDB4OTI5NAorICAgIFNjcmVlbiAgICAgPSA3LCAgIC8vIEdMZW51bSA9PSAweDkyOTUKKyAg
ICBPdmVybGF5ICAgID0gOCwgICAvLyBHTGVudW0gPT0gMHg5Mjk2CisgICAgRGFya2VuICAgICA9
IDksICAgLy8gR0xlbnVtID09IDB4OTI5NworICAgIExpZ2h0ZW4gICAgPSAxMCwgIC8vIEdMZW51
bSA9PSAweDkyOTgKKyAgICBDb2xvcmRvZGdlID0gMTEsICAvLyBHTGVudW0gPT0gMHg5Mjk5Cisg
ICAgQ29sb3JidXJuICA9IDEyLCAgLy8gR0xlbnVtID09IDB4OTI5QQorICAgIEhhcmRsaWdodCAg
PSAxMywgIC8vIEdMZW51bSA9PSAweDkyOUIKKyAgICBTb2Z0bGlnaHQgID0gMTQsICAvLyBHTGVu
dW0gPT0gMHg5MjlDCisgICAgVW51c2VkMiAgICA9IDE1LAorICAgIERpZmZlcmVuY2UgPSAxNiwg
IC8vIEdMZW51bSA9PSAweDkyOUUKKyAgICBVbnVzZWQzICAgID0gMTcsCisgICAgRXhjbHVzaW9u
ICA9IDE4LCAgLy8gR0xlbnVtID09IDB4OTJBMAorCisgICAgSHNsSHVlICAgICAgICA9IDE5LCAg
Ly8gR0xlbnVtID09IDB4OTJBRAorICAgIEhzbFNhdHVyYXRpb24gPSAyMCwgIC8vIEdMZW51bSA9
PSAweDkyQUUKKyAgICBIc2xDb2xvciAgICAgID0gMjEsICAvLyBHTGVudW0gPT0gMHg5MkFGCisg
ICAgSHNsTHVtaW5vc2l0eSA9IDIyLCAgLy8gR0xlbnVtID09IDB4OTJCMAorCisgICAgSW52YWxp
ZEVudW0gPSAyMywKKyAgICBFbnVtQ291bnQgICA9IEludmFsaWRFbnVtCiB9OwogCit1c2luZyBC
bGVuZEVxdWF0aW9uQml0U2V0ID0gYW5nbGU6OlBhY2tlZEVudW1CaXRTZXQ8Z2w6OkJsZW5kRXF1
YXRpb25UeXBlPjsKKwogdGVtcGxhdGUgPD4KIGNvbnN0ZXhwciBCbGVuZEVxdWF0aW9uVHlwZSBG
cm9tR0xlbnVtPEJsZW5kRXF1YXRpb25UeXBlPihHTGVudW0gZnJvbSkKIHsKLSAgICBjb25zdCBH
TGVudW0gc2NhbGVkID0gKGZyb20gLSBHTF9GVU5DX0FERCk7Ci0gICAgcmV0dXJuIChzY2FsZWQg
PT0gc3RhdGljX2Nhc3Q8R0xlbnVtPihCbGVuZEVxdWF0aW9uVHlwZTo6VW51c2VkKSB8fAotICAg
ICAgICAgICAgc2NhbGVkID49IHN0YXRpY19jYXN0PEdMZW51bT4oQmxlbmRFcXVhdGlvblR5cGU6
OkVudW1Db3VudCkpCi0gICAgICAgICAgICAgICA/IEJsZW5kRXF1YXRpb25UeXBlOjpJbnZhbGlk
RW51bQotICAgICAgICAgICAgICAgOiBzdGF0aWNfY2FzdDxCbGVuZEVxdWF0aW9uVHlwZT4oc2Nh
bGVkKTsKKyAgICBpZiAoZnJvbSA8PSBHTF9GVU5DX1JFVkVSU0VfU1VCVFJBQ1QpCisgICAgewor
ICAgICAgICBjb25zdCBHTGVudW0gc2NhbGVkID0gKGZyb20gLSBHTF9GVU5DX0FERCk7CisgICAg
ICAgIHJldHVybiAoc2NhbGVkID09IHN0YXRpY19jYXN0PEdMZW51bT4oQmxlbmRFcXVhdGlvblR5
cGU6OlVudXNlZCkpCisgICAgICAgICAgICAgICAgICAgPyBCbGVuZEVxdWF0aW9uVHlwZTo6SW52
YWxpZEVudW0KKyAgICAgICAgICAgICAgICAgICA6IHN0YXRpY19jYXN0PEJsZW5kRXF1YXRpb25U
eXBlPihzY2FsZWQpOworICAgIH0KKyAgICBpZiAoZnJvbSA8PSBHTF9FWENMVVNJT05fS0hSKQor
ICAgIHsKKyAgICAgICAgY29uc3QgR0xlbnVtIHNjYWxlZCA9CisgICAgICAgICAgICAoZnJvbSAt
IEdMX01VTFRJUExZX0tIUiArIHN0YXRpY19jYXN0PHVpbnQzMl90PihCbGVuZEVxdWF0aW9uVHlw
ZTo6TXVsdGlwbHkpKTsKKyAgICAgICAgcmV0dXJuIChzY2FsZWQgPT0gc3RhdGljX2Nhc3Q8R0xl
bnVtPihCbGVuZEVxdWF0aW9uVHlwZTo6VW51c2VkMikgfHwKKyAgICAgICAgICAgICAgICBzY2Fs
ZWQgPT0gc3RhdGljX2Nhc3Q8R0xlbnVtPihCbGVuZEVxdWF0aW9uVHlwZTo6VW51c2VkMykpCisg
ICAgICAgICAgICAgICAgICAgPyBCbGVuZEVxdWF0aW9uVHlwZTo6SW52YWxpZEVudW0KKyAgICAg
ICAgICAgICAgICAgICA6IHN0YXRpY19jYXN0PEJsZW5kRXF1YXRpb25UeXBlPihzY2FsZWQpOwor
ICAgIH0KKyAgICBpZiAoZnJvbSA8PSBHTF9IU0xfTFVNSU5PU0lUWV9LSFIpCisgICAgeworICAg
ICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8QmxlbmRFcXVhdGlvblR5cGU+KGZyb20gLSBHTF9IU0xf
SFVFX0tIUiArCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
c3RhdGljX2Nhc3Q8dWludDMyX3Q+KEJsZW5kRXF1YXRpb25UeXBlOjpIc2xIdWUpKTsKKyAgICB9
CisgICAgcmV0dXJuIEJsZW5kRXF1YXRpb25UeXBlOjpJbnZhbGlkRW51bTsKIH0KIAogY29uc3Rl
eHByIEdMZW51bSBUb0dMZW51bShCbGVuZEVxdWF0aW9uVHlwZSBmcm9tKQogewotICAgIHJldHVy
biBzdGF0aWNfY2FzdDxHTGVudW0+KGZyb20pICsgR0xfRlVOQ19BREQ7CisgICAgaWYgKGZyb20g
PD0gQmxlbmRFcXVhdGlvblR5cGU6OlJldmVyc2VTdWJ0cmFjdCkKKyAgICB7CisgICAgICAgIHJl
dHVybiBzdGF0aWNfY2FzdDxHTGVudW0+KGZyb20pICsgR0xfRlVOQ19BREQ7CisgICAgfQorICAg
IGlmIChmcm9tIDw9IEJsZW5kRXF1YXRpb25UeXBlOjpFeGNsdXNpb24pCisgICAgeworICAgICAg
ICByZXR1cm4gc3RhdGljX2Nhc3Q8R0xlbnVtPihmcm9tKSAtIHN0YXRpY19jYXN0PEdMZW51bT4o
QmxlbmRFcXVhdGlvblR5cGU6Ok11bHRpcGx5KSArCisgICAgICAgICAgICAgICBHTF9NVUxUSVBM
WV9LSFI7CisgICAgfQorICAgIHJldHVybiBzdGF0aWNfY2FzdDxHTGVudW0+KGZyb20pIC0gc3Rh
dGljX2Nhc3Q8R0xlbnVtPihCbGVuZEVxdWF0aW9uVHlwZTo6SHNsSHVlKSArCisgICAgICAgICAg
IEdMX0hTTF9IVUVfS0hSOwogfQogCiBBTkdMRV9WQUxJREFURV9QQUNLRURfRU5VTShCbGVuZEVx
dWF0aW9uVHlwZSwgQWRkLCBHTF9GVU5DX0FERCk7CkBAIC0zNjUsNiArNDE0LDIxIEBAIEFOR0xF
X1ZBTElEQVRFX1BBQ0tFRF9FTlVNKEJsZW5kRXF1YXRpb25UeXBlLCBNaW4sIEdMX01JTik7CiBB
TkdMRV9WQUxJREFURV9QQUNLRURfRU5VTShCbGVuZEVxdWF0aW9uVHlwZSwgTWF4LCBHTF9NQVgp
OwogQU5HTEVfVkFMSURBVEVfUEFDS0VEX0VOVU0oQmxlbmRFcXVhdGlvblR5cGUsIFN1YnRyYWN0
LCBHTF9GVU5DX1NVQlRSQUNUKTsKIEFOR0xFX1ZBTElEQVRFX1BBQ0tFRF9FTlVNKEJsZW5kRXF1
YXRpb25UeXBlLCBSZXZlcnNlU3VidHJhY3QsIEdMX0ZVTkNfUkVWRVJTRV9TVUJUUkFDVCk7CitB
TkdMRV9WQUxJREFURV9QQUNLRURfRU5VTShCbGVuZEVxdWF0aW9uVHlwZSwgTXVsdGlwbHksIEdM
X01VTFRJUExZX0tIUik7CitBTkdMRV9WQUxJREFURV9QQUNLRURfRU5VTShCbGVuZEVxdWF0aW9u
VHlwZSwgU2NyZWVuLCBHTF9TQ1JFRU5fS0hSKTsKK0FOR0xFX1ZBTElEQVRFX1BBQ0tFRF9FTlVN
KEJsZW5kRXF1YXRpb25UeXBlLCBPdmVybGF5LCBHTF9PVkVSTEFZX0tIUik7CitBTkdMRV9WQUxJ
REFURV9QQUNLRURfRU5VTShCbGVuZEVxdWF0aW9uVHlwZSwgRGFya2VuLCBHTF9EQVJLRU5fS0hS
KTsKK0FOR0xFX1ZBTElEQVRFX1BBQ0tFRF9FTlVNKEJsZW5kRXF1YXRpb25UeXBlLCBMaWdodGVu
LCBHTF9MSUdIVEVOX0tIUik7CitBTkdMRV9WQUxJREFURV9QQUNLRURfRU5VTShCbGVuZEVxdWF0
aW9uVHlwZSwgQ29sb3Jkb2RnZSwgR0xfQ09MT1JET0RHRV9LSFIpOworQU5HTEVfVkFMSURBVEVf
UEFDS0VEX0VOVU0oQmxlbmRFcXVhdGlvblR5cGUsIENvbG9yYnVybiwgR0xfQ09MT1JCVVJOX0tI
Uik7CitBTkdMRV9WQUxJREFURV9QQUNLRURfRU5VTShCbGVuZEVxdWF0aW9uVHlwZSwgSGFyZGxp
Z2h0LCBHTF9IQVJETElHSFRfS0hSKTsKK0FOR0xFX1ZBTElEQVRFX1BBQ0tFRF9FTlVNKEJsZW5k
RXF1YXRpb25UeXBlLCBTb2Z0bGlnaHQsIEdMX1NPRlRMSUdIVF9LSFIpOworQU5HTEVfVkFMSURB
VEVfUEFDS0VEX0VOVU0oQmxlbmRFcXVhdGlvblR5cGUsIERpZmZlcmVuY2UsIEdMX0RJRkZFUkVO
Q0VfS0hSKTsKK0FOR0xFX1ZBTElEQVRFX1BBQ0tFRF9FTlVNKEJsZW5kRXF1YXRpb25UeXBlLCBF
eGNsdXNpb24sIEdMX0VYQ0xVU0lPTl9LSFIpOworQU5HTEVfVkFMSURBVEVfUEFDS0VEX0VOVU0o
QmxlbmRFcXVhdGlvblR5cGUsIEhzbEh1ZSwgR0xfSFNMX0hVRV9LSFIpOworQU5HTEVfVkFMSURB
VEVfUEFDS0VEX0VOVU0oQmxlbmRFcXVhdGlvblR5cGUsIEhzbFNhdHVyYXRpb24sIEdMX0hTTF9T
QVRVUkFUSU9OX0tIUik7CitBTkdMRV9WQUxJREFURV9QQUNLRURfRU5VTShCbGVuZEVxdWF0aW9u
VHlwZSwgSHNsQ29sb3IsIEdMX0hTTF9DT0xPUl9LSFIpOworQU5HTEVfVkFMSURBVEVfUEFDS0VE
X0VOVU0oQmxlbmRFcXVhdGlvblR5cGUsIEhzbEx1bWlub3NpdHksIEdMX0hTTF9MVU1JTk9TSVRZ
X0tIUik7CiAKIHN0ZDo6b3N0cmVhbSAmb3BlcmF0b3I8PChzdGQ6Om9zdHJlYW0gJm9zLCBCbGVu
ZEVxdWF0aW9uVHlwZSB2YWx1ZSk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FO
R0xFL3NyYy9jb21tb24vYW5nbGV1dGlscy5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9z
cmMvY29tbW9uL2FuZ2xldXRpbHMuY3BwCmluZGV4IDdkZTE0MGFiMWQwNjUzZDRhZDQzY2YzZmM3
NWQ5ZDdjYWM0OGQxYjAuLjJiNjlmNjZkNzRhMThjNjg3OTI3YjUzNmJiMWQ3NDZiY2M2NmJiNzIg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21tb24vYW5nbGV1dGls
cy5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbW1vbi9hbmdsZXV0aWxz
LmNwcApAQCAtNDUsNiArNDUsNzAgQEAgdm9pZCBTYXZlRmlsZUhlbHBlcjo6d3JpdGUoY29uc3Qg
dWludDhfdCAqZGF0YSwgc2l6ZV90IHNpemUpCiAgICAgbU9mcy53cml0ZShyZWludGVycHJldF9j
YXN0PGNvbnN0IGNoYXIgKj4oZGF0YSksIHNpemUpOwogfQogCisvLyBBTURfcGVyZm9ybWFuY2Vf
bW9uaXRvciBoZWxwZXJzLgorCitQZXJmTW9uaXRvckNvdW50ZXI6OlBlcmZNb25pdG9yQ291bnRl
cigpID0gZGVmYXVsdDsKKworUGVyZk1vbml0b3JDb3VudGVyOjp+UGVyZk1vbml0b3JDb3VudGVy
KCkgPSBkZWZhdWx0OworCitQZXJmTW9uaXRvckNvdW50ZXJHcm91cDo6UGVyZk1vbml0b3JDb3Vu
dGVyR3JvdXAoKSA9IGRlZmF1bHQ7CisKK1BlcmZNb25pdG9yQ291bnRlckdyb3VwOjp+UGVyZk1v
bml0b3JDb3VudGVyR3JvdXAoKSA9IGRlZmF1bHQ7CisKK3VpbnQzMl90IEdldFBlcmZNb25pdG9y
Q291bnRlckluZGV4KGNvbnN0IFBlcmZNb25pdG9yQ291bnRlcnMgJmNvdW50ZXJzLCBjb25zdCBz
dGQ6OnN0cmluZyAmbmFtZSkKK3sKKyAgICBmb3IgKHVpbnQzMl90IGNvdW50ZXJJbmRleCA9IDA7
IGNvdW50ZXJJbmRleCA8IHN0YXRpY19jYXN0PHVpbnQzMl90Pihjb3VudGVycy5zaXplKCkpOwor
ICAgICAgICAgKytjb3VudGVySW5kZXgpCisgICAgeworICAgICAgICBpZiAoY291bnRlcnNbY291
bnRlckluZGV4XS5uYW1lID09IG5hbWUpCisgICAgICAgIHsKKyAgICAgICAgICAgIHJldHVybiBj
b3VudGVySW5kZXg7CisgICAgICAgIH0KKyAgICB9CisKKyAgICByZXR1cm4gc3RkOjpudW1lcmlj
X2xpbWl0czx1aW50MzJfdD46Om1heCgpOworfQorCit1aW50MzJfdCBHZXRQZXJmTW9uaXRvckNv
dW50ZXJHcm91cEluZGV4KGNvbnN0IFBlcmZNb25pdG9yQ291bnRlckdyb3VwcyAmZ3JvdXBzLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzdGQ6OnN0cmlu
ZyAmbmFtZSkKK3sKKyAgICBmb3IgKHVpbnQzMl90IGdyb3VwSW5kZXggPSAwOyBncm91cEluZGV4
IDwgc3RhdGljX2Nhc3Q8dWludDMyX3Q+KGdyb3Vwcy5zaXplKCkpOyArK2dyb3VwSW5kZXgpCisg
ICAgeworICAgICAgICBpZiAoZ3JvdXBzW2dyb3VwSW5kZXhdLm5hbWUgPT0gbmFtZSkKKyAgICAg
ICAgeworICAgICAgICAgICAgcmV0dXJuIGdyb3VwSW5kZXg7CisgICAgICAgIH0KKyAgICB9CisK
KyAgICByZXR1cm4gc3RkOjpudW1lcmljX2xpbWl0czx1aW50MzJfdD46Om1heCgpOworfQorCitj
b25zdCBQZXJmTW9uaXRvckNvdW50ZXIgJkdldFBlcmZNb25pdG9yQ291bnRlcihjb25zdCBQZXJm
TW9uaXRvckNvdW50ZXJzICZjb3VudGVycywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0ZDo6c3RyaW5nICZuYW1lKQoreworICAgIHJldHVy
biBHZXRQZXJmTW9uaXRvckNvdW50ZXIoY29uc3RfY2FzdDxQZXJmTW9uaXRvckNvdW50ZXJzICY+
KGNvdW50ZXJzKSwgbmFtZSk7Cit9CisKK1BlcmZNb25pdG9yQ291bnRlciAmR2V0UGVyZk1vbml0
b3JDb3VudGVyKFBlcmZNb25pdG9yQ291bnRlcnMgJmNvdW50ZXJzLCBjb25zdCBzdGQ6OnN0cmlu
ZyAmbmFtZSkKK3sKKyAgICB1aW50MzJfdCBjb3VudGVySW5kZXggPSBHZXRQZXJmTW9uaXRvckNv
dW50ZXJJbmRleChjb3VudGVycywgbmFtZSk7CisgICAgQVNTRVJUKGNvdW50ZXJJbmRleCA8IHN0
YXRpY19jYXN0PHVpbnQzMl90Pihjb3VudGVycy5zaXplKCkpKTsKKyAgICByZXR1cm4gY291bnRl
cnNbY291bnRlckluZGV4XTsKK30KKworY29uc3QgUGVyZk1vbml0b3JDb3VudGVyR3JvdXAgJkdl
dFBlcmZNb25pdG9yQ291bnRlckdyb3VwKGNvbnN0IFBlcmZNb25pdG9yQ291bnRlckdyb3VwcyAm
Z3JvdXBzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGNvbnN0IHN0ZDo6c3RyaW5nICZuYW1lKQoreworICAgIHJldHVybiBHZXRQZXJm
TW9uaXRvckNvdW50ZXJHcm91cChjb25zdF9jYXN0PFBlcmZNb25pdG9yQ291bnRlckdyb3VwcyAm
Pihncm91cHMpLCBuYW1lKTsKK30KKworUGVyZk1vbml0b3JDb3VudGVyR3JvdXAgJkdldFBlcmZN
b25pdG9yQ291bnRlckdyb3VwKFBlcmZNb25pdG9yQ291bnRlckdyb3VwcyAmZ3JvdXBzLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0
ZDo6c3RyaW5nICZuYW1lKQoreworICAgIHVpbnQzMl90IGdyb3VwSW5kZXggPSBHZXRQZXJmTW9u
aXRvckNvdW50ZXJHcm91cEluZGV4KGdyb3VwcywgbmFtZSk7CisgICAgQVNTRVJUKGdyb3VwSW5k
ZXggPCBzdGF0aWNfY2FzdDx1aW50MzJfdD4oZ3JvdXBzLnNpemUoKSkpOworICAgIHJldHVybiBn
cm91cHNbZ3JvdXBJbmRleF07Cit9CiB9ICAvLyBuYW1lc3BhY2UgYW5nbGUKIAogc3RkOjpzdHJp
bmcgQXJyYXlTdHJpbmcodW5zaWduZWQgaW50IGkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9BTkdMRS9zcmMvY29tbW9uL2FuZ2xldXRpbHMuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FO
R0xFL3NyYy9jb21tb24vYW5nbGV1dGlscy5oCmluZGV4IDA1MDFmZjA3ODE2MzUxODRlNzIzZDYz
NjQzMDU1M2E5NDhkYTQxNmEuLjk5MTYxYWNjZThhZTI4ZjgzMjExNzdhN2JhNThlNzBiZjZhODA2
ZDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21tb24vYW5nbGV1
dGlscy5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21tb24vYW5nbGV1dGls
cy5oCkBAIC04OSw2ICs4OSw5MyBAQCBzdHJ1Y3QgU2F2ZUZpbGVIZWxwZXIKICAgICBzdGQ6OnN0
cmluZyBtRmlsZVBhdGg7CiB9OwogCisvLyBBTURfcGVyZm9ybWFuY2VfbW9uaXRvciBoZWxwZXJz
LgorY29uc3RleHByIGNoYXIga1BlcmZNb25pdG9yRXh0ZW5zaW9uTmFtZVtdID0gIkdMX0FNRF9w
ZXJmb3JtYW5jZV9tb25pdG9yIjsKKworc3RydWN0IFBlcmZNb25pdG9yQ291bnRlcgoreworICAg
IFBlcmZNb25pdG9yQ291bnRlcigpOworICAgIH5QZXJmTW9uaXRvckNvdW50ZXIoKTsKKworICAg
IHN0ZDo6c3RyaW5nIG5hbWU7CisgICAgdWludDMyX3QgdmFsdWU7Cit9OwordXNpbmcgUGVyZk1v
bml0b3JDb3VudGVycyA9IHN0ZDo6dmVjdG9yPFBlcmZNb25pdG9yQ291bnRlcj47CisKK3N0cnVj
dCBQZXJmTW9uaXRvckNvdW50ZXJHcm91cAoreworICAgIFBlcmZNb25pdG9yQ291bnRlckdyb3Vw
KCk7CisgICAgflBlcmZNb25pdG9yQ291bnRlckdyb3VwKCk7CisKKyAgICBzdGQ6OnN0cmluZyBu
YW1lOworICAgIFBlcmZNb25pdG9yQ291bnRlcnMgY291bnRlcnM7Cit9OwordXNpbmcgUGVyZk1v
bml0b3JDb3VudGVyR3JvdXBzID0gc3RkOjp2ZWN0b3I8UGVyZk1vbml0b3JDb3VudGVyR3JvdXA+
OworCit1aW50MzJfdCBHZXRQZXJmTW9uaXRvckNvdW50ZXJJbmRleChjb25zdCBQZXJmTW9uaXRv
ckNvdW50ZXJzICZjb3VudGVycywgY29uc3Qgc3RkOjpzdHJpbmcgJm5hbWUpOworY29uc3QgUGVy
Zk1vbml0b3JDb3VudGVyICZHZXRQZXJmTW9uaXRvckNvdW50ZXIoY29uc3QgUGVyZk1vbml0b3JD
b3VudGVycyAmY291bnRlcnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBjb25zdCBzdGQ6OnN0cmluZyAmbmFtZSk7CitQZXJmTW9uaXRvckNvdW50ZXIg
JkdldFBlcmZNb25pdG9yQ291bnRlcihQZXJmTW9uaXRvckNvdW50ZXJzICZjb3VudGVycywgY29u
c3Qgc3RkOjpzdHJpbmcgJm5hbWUpOwordWludDMyX3QgR2V0UGVyZk1vbml0b3JDb3VudGVyR3Jv
dXBJbmRleChjb25zdCBQZXJmTW9uaXRvckNvdW50ZXJHcm91cHMgJmdyb3VwcywKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RkOjpzdHJpbmcgJm5hbWUp
OworY29uc3QgUGVyZk1vbml0b3JDb3VudGVyR3JvdXAgJkdldFBlcmZNb25pdG9yQ291bnRlckdy
b3VwKGNvbnN0IFBlcmZNb25pdG9yQ291bnRlckdyb3VwcyAmZ3JvdXBzLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0ZDo6
c3RyaW5nICZuYW1lKTsKK1BlcmZNb25pdG9yQ291bnRlckdyb3VwICZHZXRQZXJmTW9uaXRvckNv
dW50ZXJHcm91cChQZXJmTW9uaXRvckNvdW50ZXJHcm91cHMgJmdyb3VwcywKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzdGQ6OnN0cmlu
ZyAmbmFtZSk7CisKK3N0cnVjdCBQZXJmTW9uaXRvclRyaXBsZXQKK3sKKyAgICB1aW50MzJfdCBn
cm91cDsKKyAgICB1aW50MzJfdCBjb3VudGVyOworICAgIHVpbnQzMl90IHZhbHVlOworfTsKKwor
I2RlZmluZSBBTkdMRV9WS19QRVJGX0NPVU5URVJTX1goRk4pICAgICAgICAgICAgICBcCisgICAg
Rk4ocHJpbWFyeUJ1ZmZlcnMpICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICBGTihy
ZW5kZXJQYXNzZXMpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgIEZOKHN1Ym1p
dHRlZEZyYW1lcykgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgRk4od3JpdGVEZXNj
cmlwdG9yU2V0cykgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICBGTihmbHVzaGVkT3V0c2lk
ZVJlbmRlclBhc3NDb21tYW5kQnVmZmVycykgICAgXAorICAgIEZOKHJlc29sdmVJbWFnZUNvbW1h
bmRzKSAgICAgICAgICAgICAgICAgICAgICBcCisgICAgRk4oZGVwdGhDbGVhcnMpICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICBGTihkZXB0aExvYWRzKSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgXAorICAgIEZOKGRlcHRoU3RvcmVzKSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBcCisgICAgRk4oc3RlbmNpbENsZWFycykgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFwKKyAgICBGTihzdGVuY2lsTG9hZHMpICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgXAorICAgIEZOKHN0ZW5jaWxTdG9yZXMpICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBcCisgICAgRk4oY29sb3JBdHRhY2htZW50VW5yZXNvbHZlcykgICAgICAgICAgICAgICAgIFwK
KyAgICBGTihkZXB0aEF0dGFjaG1lbnRVbnJlc29sdmVzKSAgICAgICAgICAgICAgICAgXAorICAg
IEZOKHN0ZW5jaWxBdHRhY2htZW50VW5yZXNvbHZlcykgICAgICAgICAgICAgICBcCisgICAgRk4o
Y29sb3JBdHRhY2htZW50UmVzb2x2ZXMpICAgICAgICAgICAgICAgICAgIFwKKyAgICBGTihkZXB0
aEF0dGFjaG1lbnRSZXNvbHZlcykgICAgICAgICAgICAgICAgICAgXAorICAgIEZOKHN0ZW5jaWxB
dHRhY2htZW50UmVzb2x2ZXMpICAgICAgICAgICAgICAgICBcCisgICAgRk4ocmVhZE9ubHlEZXB0
aFN0ZW5jaWxSZW5kZXJQYXNzZXMpICAgICAgICAgIFwKKyAgICBGTihkZXNjcmlwdG9yU2V0QWxs
b2NhdGlvbnMpICAgICAgICAgICAgICAgICAgXAorICAgIEZOKGRlc2NyaXB0b3JTZXRDYWNoZVRv
dGFsU2l6ZSkgICAgICAgICAgICAgICBcCisgICAgRk4oZGVzY3JpcHRvclNldENhY2hlS2V5U2l6
ZUJ5dGVzKSAgICAgICAgICAgIFwKKyAgICBGTih1bmlmb3Jtc0FuZFhmYkRlc2NyaXB0b3JTZXRD
YWNoZUhpdHMpICAgICAgXAorICAgIEZOKHVuaWZvcm1zQW5kWGZiRGVzY3JpcHRvclNldENhY2hl
TWlzc2VzKSAgICBcCisgICAgRk4odW5pZm9ybXNBbmRYZmJEZXNjcmlwdG9yU2V0Q2FjaGVUb3Rh
bFNpemUpIFwKKyAgICBGTih0ZXh0dXJlRGVzY3JpcHRvclNldENhY2hlSGl0cykgICAgICAgICAg
ICAgXAorICAgIEZOKHRleHR1cmVEZXNjcmlwdG9yU2V0Q2FjaGVNaXNzZXMpICAgICAgICAgICBc
CisgICAgRk4odGV4dHVyZURlc2NyaXB0b3JTZXRDYWNoZVRvdGFsU2l6ZSkgICAgICAgIFwKKyAg
ICBGTihzaGFkZXJCdWZmZXJzRGVzY3JpcHRvclNldENhY2hlSGl0cykgICAgICAgXAorICAgIEZO
KHNoYWRlckJ1ZmZlcnNEZXNjcmlwdG9yU2V0Q2FjaGVNaXNzZXMpICAgICBcCisgICAgRk4oc2hh
ZGVyQnVmZmVyc0Rlc2NyaXB0b3JTZXRDYWNoZVRvdGFsU2l6ZSkgIFwKKyAgICBGTihidWZmZXJz
R2hvc3RlZCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgIEZOKHZlcnRleEFycmF5
U3luY1N0YXRlQ2FsbHMpICAgICAgICAgICAgICAgICBcCisgICAgRk4oYWxsb2NhdGVOZXdCdWZm
ZXJCbG9ja0NhbGxzKSAgICAgICAgICAgICAgIFwKKyAgICBGTihkeW5hbWljQnVmZmVyQWxsb2Nh
dGlvbnMpCisKKyNkZWZpbmUgQU5HTEVfREVDTEFSRV9QRVJGX0NPVU5URVIoQ09VTlRFUikgdWlu
dDMyX3QgQ09VTlRFUjsKKworc3RydWN0IFZ1bGthblBlcmZDb3VudGVycworeworICAgIEFOR0xF
X1ZLX1BFUkZfQ09VTlRFUlNfWChBTkdMRV9ERUNMQVJFX1BFUkZfQ09VTlRFUikKK307CisKKyN1
bmRlZiBBTkdMRV9ERUNMQVJFX1BFUkZfQ09VTlRFUgorCiB9ICAvLyBuYW1lc3BhY2UgYW5nbGUK
IAogdGVtcGxhdGUgPHR5cGVuYW1lIFQsIHNpemVfdCBOPgpkaWZmIC0tZ2l0IGEvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL2NvbW1vbi9lbnRyeV9wb2ludHNfZW51bV9hdXRvZ2VuLmNwcCBi
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21tb24vZW50cnlfcG9pbnRzX2VudW1fYXV0
b2dlbi5jcHAKaW5kZXggZGJkNmEwMzNhMzY3ODAxMjdmN2IzMWRjMzQ3ZDRiNTA1Y2YwMzQ1NS4u
MDY2MjQxODc4M2YzZWQ2ZGFlMWI2NTEyN2NmNzI2MmEzZmEwZjIwMiAxMDA2NDQKLS0tIGEvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbW1vbi9lbnRyeV9wb2ludHNfZW51bV9hdXRvZ2Vu
LmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tbW9uL2VudHJ5X3BvaW50
c19lbnVtX2F1dG9nZW4uY3BwCkBAIC0zMTQsNiArMzE0LDggQEAgY29uc3QgY2hhciAqR2V0RW50
cnlQb2ludE5hbWUoRW50cnlQb2ludCBlcCkKICAgICAgICAgICAgIHJldHVybiAiZWdsRHVwTmF0
aXZlRmVuY2VGREFORFJPSUQiOwogICAgICAgICBjYXNlIEVudHJ5UG9pbnQ6OkVHTEV4cG9ydFZr
SW1hZ2VBTkdMRToKICAgICAgICAgICAgIHJldHVybiAiZWdsRXhwb3J0VmtJbWFnZUFOR0xFIjsK
KyAgICAgICAgY2FzZSBFbnRyeVBvaW50OjpFR0xGb3JjZUdQVVN3aXRjaEFOR0xFOgorICAgICAg
ICAgICAgcmV0dXJuICJlZ2xGb3JjZUdQVVN3aXRjaEFOR0xFIjsKICAgICAgICAgY2FzZSBFbnRy
eVBvaW50OjpFR0xHZXRDb21wb3NpdG9yVGltaW5nQU5EUk9JRDoKICAgICAgICAgICAgIHJldHVy
biAiZWdsR2V0Q29tcG9zaXRvclRpbWluZ0FORFJPSUQiOwogICAgICAgICBjYXNlIEVudHJ5UG9p
bnQ6OkVHTEdldENvbXBvc2l0b3JUaW1pbmdTdXBwb3J0ZWRBTkRST0lEOgpAQCAtMzkyLDYgKzM5
NCwxMCBAQCBjb25zdCBjaGFyICpHZXRFbnRyeVBvaW50TmFtZShFbnRyeVBvaW50IGVwKQogICAg
ICAgICAgICAgcmV0dXJuICJlZ2xRdWVyeURpc3BsYXlBdHRyaWJBTkdMRSI7CiAgICAgICAgIGNh
c2UgRW50cnlQb2ludDo6RUdMUXVlcnlEaXNwbGF5QXR0cmliRVhUOgogICAgICAgICAgICAgcmV0
dXJuICJlZ2xRdWVyeURpc3BsYXlBdHRyaWJFWFQiOworICAgICAgICBjYXNlIEVudHJ5UG9pbnQ6
OkVHTFF1ZXJ5RG1hQnVmRm9ybWF0c0VYVDoKKyAgICAgICAgICAgIHJldHVybiAiZWdsUXVlcnlE
bWFCdWZGb3JtYXRzRVhUIjsKKyAgICAgICAgY2FzZSBFbnRyeVBvaW50OjpFR0xRdWVyeURtYUJ1
Zk1vZGlmaWVyc0VYVDoKKyAgICAgICAgICAgIHJldHVybiAiZWdsUXVlcnlEbWFCdWZNb2RpZmll
cnNFWFQiOwogICAgICAgICBjYXNlIEVudHJ5UG9pbnQ6OkVHTFF1ZXJ5U3RyZWFtS0hSOgogICAg
ICAgICAgICAgcmV0dXJuICJlZ2xRdWVyeVN0cmVhbUtIUiI7CiAgICAgICAgIGNhc2UgRW50cnlQ
b2ludDo6RUdMUXVlcnlTdHJlYW11NjRLSFI6CkBAIC00ODIsNiArNDg4LDggQEAgY29uc3QgY2hh
ciAqR2V0RW50cnlQb2ludE5hbWUoRW50cnlQb2ludCBlcCkKICAgICAgICAgICAgIHJldHVybiAi
Z2xCZWdpbiI7CiAgICAgICAgIGNhc2UgRW50cnlQb2ludDo6R0xCZWdpbkNvbmRpdGlvbmFsUmVu
ZGVyOgogICAgICAgICAgICAgcmV0dXJuICJnbEJlZ2luQ29uZGl0aW9uYWxSZW5kZXIiOworICAg
ICAgICBjYXNlIEVudHJ5UG9pbnQ6OkdMQmVnaW5QZXJmTW9uaXRvckFNRDoKKyAgICAgICAgICAg
IHJldHVybiAiZ2xCZWdpblBlcmZNb25pdG9yQU1EIjsKICAgICAgICAgY2FzZSBFbnRyeVBvaW50
OjpHTEJlZ2luUXVlcnk6CiAgICAgICAgICAgICByZXR1cm4gImdsQmVnaW5RdWVyeSI7CiAgICAg
ICAgIGNhc2UgRW50cnlQb2ludDo6R0xCZWdpblF1ZXJ5RVhUOgpAQCAtODk2LDYgKzkwNCw4IEBA
IGNvbnN0IGNoYXIgKkdldEVudHJ5UG9pbnROYW1lKEVudHJ5UG9pbnQgZXApCiAgICAgICAgICAg
ICByZXR1cm4gImdsRGVsZXRlTGlzdHMiOwogICAgICAgICBjYXNlIEVudHJ5UG9pbnQ6OkdMRGVs
ZXRlTWVtb3J5T2JqZWN0c0VYVDoKICAgICAgICAgICAgIHJldHVybiAiZ2xEZWxldGVNZW1vcnlP
YmplY3RzRVhUIjsKKyAgICAgICAgY2FzZSBFbnRyeVBvaW50OjpHTERlbGV0ZVBlcmZNb25pdG9y
c0FNRDoKKyAgICAgICAgICAgIHJldHVybiAiZ2xEZWxldGVQZXJmTW9uaXRvcnNBTUQiOwogICAg
ICAgICBjYXNlIEVudHJ5UG9pbnQ6OkdMRGVsZXRlUHJvZ3JhbToKICAgICAgICAgICAgIHJldHVy
biAiZ2xEZWxldGVQcm9ncmFtIjsKICAgICAgICAgY2FzZSBFbnRyeVBvaW50OjpHTERlbGV0ZVBy
b2dyYW1QaXBlbGluZXM6CkBAIC0xMDgwLDYgKzEwOTAsOCBAQCBjb25zdCBjaGFyICpHZXRFbnRy
eVBvaW50TmFtZShFbnRyeVBvaW50IGVwKQogICAgICAgICAgICAgcmV0dXJuICJnbEVuZENvbmRp
dGlvbmFsUmVuZGVyIjsKICAgICAgICAgY2FzZSBFbnRyeVBvaW50OjpHTEVuZExpc3Q6CiAgICAg
ICAgICAgICByZXR1cm4gImdsRW5kTGlzdCI7CisgICAgICAgIGNhc2UgRW50cnlQb2ludDo6R0xF
bmRQZXJmTW9uaXRvckFNRDoKKyAgICAgICAgICAgIHJldHVybiAiZ2xFbmRQZXJmTW9uaXRvckFN
RCI7CiAgICAgICAgIGNhc2UgRW50cnlQb2ludDo6R0xFbmRRdWVyeToKICAgICAgICAgICAgIHJl
dHVybiAiZ2xFbmRRdWVyeSI7CiAgICAgICAgIGNhc2UgRW50cnlQb2ludDo6R0xFbmRRdWVyeUVY
VDoKQEAgLTEyMDAsNiArMTIxMiw4IEBAIGNvbnN0IGNoYXIgKkdldEVudHJ5UG9pbnROYW1lKEVu
dHJ5UG9pbnQgZXApCiAgICAgICAgICAgICByZXR1cm4gImdsR2VuRnJhbWVidWZmZXJzT0VTIjsK
ICAgICAgICAgY2FzZSBFbnRyeVBvaW50OjpHTEdlbkxpc3RzOgogICAgICAgICAgICAgcmV0dXJu
ICJnbEdlbkxpc3RzIjsKKyAgICAgICAgY2FzZSBFbnRyeVBvaW50OjpHTEdlblBlcmZNb25pdG9y
c0FNRDoKKyAgICAgICAgICAgIHJldHVybiAiZ2xHZW5QZXJmTW9uaXRvcnNBTUQiOwogICAgICAg
ICBjYXNlIEVudHJ5UG9pbnQ6OkdMR2VuUHJvZ3JhbVBpcGVsaW5lczoKICAgICAgICAgICAgIHJl
dHVybiAiZ2xHZW5Qcm9ncmFtUGlwZWxpbmVzIjsKICAgICAgICAgY2FzZSBFbnRyeVBvaW50OjpH
TEdlblByb2dyYW1QaXBlbGluZXNFWFQ6CkBAIC0xNDEwLDYgKzE0MjQsMTggQEAgY29uc3QgY2hh
ciAqR2V0RW50cnlQb2ludE5hbWUoRW50cnlQb2ludCBlcCkKICAgICAgICAgICAgIHJldHVybiAi
Z2xHZXRPYmplY3RQdHJMYWJlbCI7CiAgICAgICAgIGNhc2UgRW50cnlQb2ludDo6R0xHZXRPYmpl
Y3RQdHJMYWJlbEtIUjoKICAgICAgICAgICAgIHJldHVybiAiZ2xHZXRPYmplY3RQdHJMYWJlbEtI
UiI7CisgICAgICAgIGNhc2UgRW50cnlQb2ludDo6R0xHZXRQZXJmTW9uaXRvckNvdW50ZXJEYXRh
QU1EOgorICAgICAgICAgICAgcmV0dXJuICJnbEdldFBlcmZNb25pdG9yQ291bnRlckRhdGFBTUQi
OworICAgICAgICBjYXNlIEVudHJ5UG9pbnQ6OkdMR2V0UGVyZk1vbml0b3JDb3VudGVySW5mb0FN
RDoKKyAgICAgICAgICAgIHJldHVybiAiZ2xHZXRQZXJmTW9uaXRvckNvdW50ZXJJbmZvQU1EIjsK
KyAgICAgICAgY2FzZSBFbnRyeVBvaW50OjpHTEdldFBlcmZNb25pdG9yQ291bnRlclN0cmluZ0FN
RDoKKyAgICAgICAgICAgIHJldHVybiAiZ2xHZXRQZXJmTW9uaXRvckNvdW50ZXJTdHJpbmdBTUQi
OworICAgICAgICBjYXNlIEVudHJ5UG9pbnQ6OkdMR2V0UGVyZk1vbml0b3JDb3VudGVyc0FNRDoK
KyAgICAgICAgICAgIHJldHVybiAiZ2xHZXRQZXJmTW9uaXRvckNvdW50ZXJzQU1EIjsKKyAgICAg
ICAgY2FzZSBFbnRyeVBvaW50OjpHTEdldFBlcmZNb25pdG9yR3JvdXBTdHJpbmdBTUQ6CisgICAg
ICAgICAgICByZXR1cm4gImdsR2V0UGVyZk1vbml0b3JHcm91cFN0cmluZ0FNRCI7CisgICAgICAg
IGNhc2UgRW50cnlQb2ludDo6R0xHZXRQZXJmTW9uaXRvckdyb3Vwc0FNRDoKKyAgICAgICAgICAg
IHJldHVybiAiZ2xHZXRQZXJmTW9uaXRvckdyb3Vwc0FNRCI7CiAgICAgICAgIGNhc2UgRW50cnlQ
b2ludDo6R0xHZXRQaXhlbE1hcGZ2OgogICAgICAgICAgICAgcmV0dXJuICJnbEdldFBpeGVsTWFw
ZnYiOwogICAgICAgICBjYXNlIEVudHJ5UG9pbnQ6OkdMR2V0UGl4ZWxNYXB1aXY6CkBAIC0yNjI2
LDYgKzI2NTIsOCBAQCBjb25zdCBjaGFyICpHZXRFbnRyeVBvaW50TmFtZShFbnRyeVBvaW50IGVw
KQogICAgICAgICAgICAgcmV0dXJuICJnbFNlY29uZGFyeUNvbG9yUG9pbnRlciI7CiAgICAgICAg
IGNhc2UgRW50cnlQb2ludDo6R0xTZWxlY3RCdWZmZXI6CiAgICAgICAgICAgICByZXR1cm4gImds
U2VsZWN0QnVmZmVyIjsKKyAgICAgICAgY2FzZSBFbnRyeVBvaW50OjpHTFNlbGVjdFBlcmZNb25p
dG9yQ291bnRlcnNBTUQ6CisgICAgICAgICAgICByZXR1cm4gImdsU2VsZWN0UGVyZk1vbml0b3JD
b3VudGVyc0FNRCI7CiAgICAgICAgIGNhc2UgRW50cnlQb2ludDo6R0xTZW1hcGhvcmVQYXJhbWV0
ZXJ1aTY0dkVYVDoKICAgICAgICAgICAgIHJldHVybiAiZ2xTZW1hcGhvcmVQYXJhbWV0ZXJ1aTY0
dkVYVCI7CiAgICAgICAgIGNhc2UgRW50cnlQb2ludDo6R0xTZXRGZW5jZU5WOgpkaWZmIC0tZ2l0
IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbW1vbi9lbnRyeV9wb2ludHNfZW51bV9h
dXRvZ2VuLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tbW9uL2VudHJ5X3BvaW50
c19lbnVtX2F1dG9nZW4uaAppbmRleCBjMTc4ODk0ZTg2ODU2ZDRmYWM0OWE1NzYzM2Q4NjE0NzMx
MWFlMjA5Li43YTNkYjMxM2Y2ZGQ1Y2UxODQ3Y2UxMWFiYzk4NTFjYTNkY2RkY2U3IDEwMDY0NAot
LS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tbW9uL2VudHJ5X3BvaW50c19lbnVt
X2F1dG9nZW4uaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tbW9uL2VudHJ5
X3BvaW50c19lbnVtX2F1dG9nZW4uaApAQCAtMTYzLDYgKzE2Myw3IEBAIGVudW0gY2xhc3MgRW50
cnlQb2ludAogICAgIEVHTERlc3Ryb3lTeW5jS0hSLAogICAgIEVHTER1cE5hdGl2ZUZlbmNlRkRB
TkRST0lELAogICAgIEVHTEV4cG9ydFZrSW1hZ2VBTkdMRSwKKyAgICBFR0xGb3JjZUdQVVN3aXRj
aEFOR0xFLAogICAgIEVHTEdldENvbXBvc2l0b3JUaW1pbmdBTkRST0lELAogICAgIEVHTEdldENv
bXBvc2l0b3JUaW1pbmdTdXBwb3J0ZWRBTkRST0lELAogICAgIEVHTEdldENvbmZpZ0F0dHJpYiwK
QEAgLTIwMiw2ICsyMDMsOCBAQCBlbnVtIGNsYXNzIEVudHJ5UG9pbnQKICAgICBFR0xRdWVyeURl
dmljZVN0cmluZ0VYVCwKICAgICBFR0xRdWVyeURpc3BsYXlBdHRyaWJBTkdMRSwKICAgICBFR0xR
dWVyeURpc3BsYXlBdHRyaWJFWFQsCisgICAgRUdMUXVlcnlEbWFCdWZGb3JtYXRzRVhULAorICAg
IEVHTFF1ZXJ5RG1hQnVmTW9kaWZpZXJzRVhULAogICAgIEVHTFF1ZXJ5U3RyZWFtS0hSLAogICAg
IEVHTFF1ZXJ5U3RyZWFtdTY0S0hSLAogICAgIEVHTFF1ZXJ5U3RyaW5nLApAQCAtMjQ3LDYgKzI1
MCw3IEBAIGVudW0gY2xhc3MgRW50cnlQb2ludAogICAgIEdMQXR0YWNoU2hhZGVyLAogICAgIEdM
QmVnaW4sCiAgICAgR0xCZWdpbkNvbmRpdGlvbmFsUmVuZGVyLAorICAgIEdMQmVnaW5QZXJmTW9u
aXRvckFNRCwKICAgICBHTEJlZ2luUXVlcnksCiAgICAgR0xCZWdpblF1ZXJ5RVhULAogICAgIEdM
QmVnaW5RdWVyeUluZGV4ZWQsCkBAIC00NTQsNiArNDU4LDcgQEAgZW51bSBjbGFzcyBFbnRyeVBv
aW50CiAgICAgR0xEZWxldGVGcmFtZWJ1ZmZlcnNPRVMsCiAgICAgR0xEZWxldGVMaXN0cywKICAg
ICBHTERlbGV0ZU1lbW9yeU9iamVjdHNFWFQsCisgICAgR0xEZWxldGVQZXJmTW9uaXRvcnNBTUQs
CiAgICAgR0xEZWxldGVQcm9ncmFtLAogICAgIEdMRGVsZXRlUHJvZ3JhbVBpcGVsaW5lcywKICAg
ICBHTERlbGV0ZVByb2dyYW1QaXBlbGluZXNFWFQsCkBAIC01NDYsNiArNTUxLDcgQEAgZW51bSBj
bGFzcyBFbnRyeVBvaW50CiAgICAgR0xFbmQsCiAgICAgR0xFbmRDb25kaXRpb25hbFJlbmRlciwK
ICAgICBHTEVuZExpc3QsCisgICAgR0xFbmRQZXJmTW9uaXRvckFNRCwKICAgICBHTEVuZFF1ZXJ5
LAogICAgIEdMRW5kUXVlcnlFWFQsCiAgICAgR0xFbmRRdWVyeUluZGV4ZWQsCkBAIC02MDYsNiAr
NjEyLDcgQEAgZW51bSBjbGFzcyBFbnRyeVBvaW50CiAgICAgR0xHZW5GcmFtZWJ1ZmZlcnMsCiAg
ICAgR0xHZW5GcmFtZWJ1ZmZlcnNPRVMsCiAgICAgR0xHZW5MaXN0cywKKyAgICBHTEdlblBlcmZN
b25pdG9yc0FNRCwKICAgICBHTEdlblByb2dyYW1QaXBlbGluZXMsCiAgICAgR0xHZW5Qcm9ncmFt
UGlwZWxpbmVzRVhULAogICAgIEdMR2VuUXVlcmllcywKQEAgLTcxMSw2ICs3MTgsMTIgQEAgZW51
bSBjbGFzcyBFbnRyeVBvaW50CiAgICAgR0xHZXRPYmplY3RMYWJlbEtIUiwKICAgICBHTEdldE9i
amVjdFB0ckxhYmVsLAogICAgIEdMR2V0T2JqZWN0UHRyTGFiZWxLSFIsCisgICAgR0xHZXRQZXJm
TW9uaXRvckNvdW50ZXJEYXRhQU1ELAorICAgIEdMR2V0UGVyZk1vbml0b3JDb3VudGVySW5mb0FN
RCwKKyAgICBHTEdldFBlcmZNb25pdG9yQ291bnRlclN0cmluZ0FNRCwKKyAgICBHTEdldFBlcmZN
b25pdG9yQ291bnRlcnNBTUQsCisgICAgR0xHZXRQZXJmTW9uaXRvckdyb3VwU3RyaW5nQU1ELAor
ICAgIEdMR2V0UGVyZk1vbml0b3JHcm91cHNBTUQsCiAgICAgR0xHZXRQaXhlbE1hcGZ2LAogICAg
IEdMR2V0UGl4ZWxNYXB1aXYsCiAgICAgR0xHZXRQaXhlbE1hcHVzdiwKQEAgLTEzMTksNiArMTMz
Miw3IEBAIGVudW0gY2xhc3MgRW50cnlQb2ludAogICAgIEdMU2Vjb25kYXJ5Q29sb3JQM3VpdiwK
ICAgICBHTFNlY29uZGFyeUNvbG9yUG9pbnRlciwKICAgICBHTFNlbGVjdEJ1ZmZlciwKKyAgICBH
TFNlbGVjdFBlcmZNb25pdG9yQ291bnRlcnNBTUQsCiAgICAgR0xTZW1hcGhvcmVQYXJhbWV0ZXJ1
aTY0dkVYVCwKICAgICBHTFNldEZlbmNlTlYsCiAgICAgR0xTaGFkZU1vZGVsLApkaWZmIC0tZ2l0
IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbW1vbi9saW51eC9CVUlMRC5nbiBiL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21tb24vbGludXgvQlVJTEQuZ24KaW5kZXggODg4
NmMwYzM1NzBhZjQ1MTdmYTY3MTNmZTNlNjkxYTE4ZDVhZDkzYS4uMzFmYTU3ZTMyZjcwNDRiMTcx
MDBhMGVmOGRkNDQ1NThmMTU1YTc0MSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvc3JjL2NvbW1vbi9saW51eC9CVUlMRC5nbgorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zcmMvY29tbW9uL2xpbnV4L0JVSUxELmduCkBAIC0xMSw0ICsxMSw5IEBAIGFuZ2xlX3NvdXJj
ZV9zZXQoImFuZ2xlX2RtYV9idWYiKSB7CiAgIF0KIAogICBkZXBzID0gWyAiJGFuZ2xlX3Jvb3Q6
YW5nbGVfY29tbW9uIiBdCisKKyAgaWYgKGFuZ2xlX2VuYWJsZV92dWxrYW4pIHsKKyAgICBkZWZp
bmVzID0gWyAiQU5HTEVfRU5BQkxFX1ZVTEtBTiIgXQorICAgIHB1YmxpY19kZXBzID0gWyAiJGFu
Z2xlX3Z1bGthbl9oZWFkZXJzX2Rpcjp2dWxrYW5faGVhZGVycyIgXQorICB9CiB9CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tbW9uL2xpbnV4L2RtYV9idWZfdXRp
bHMuY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbW1vbi9saW51eC9kbWFfYnVm
X3V0aWxzLmNwcAppbmRleCA5YTM5YTQ1MGNjMWQxOGJiZTk4NjRhNmMwNjk5Njk0YmJmODUyMjhi
Li45OTc2MjgzYzRlNWVhNzdjNzFiZGVhOTAyNzQwZGQ3MjI5MDEzMDFmIDEwMDY0NAotLS0gYS9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tbW9uL2xpbnV4L2RtYV9idWZfdXRpbHMuY3Bw
CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21tb24vbGludXgvZG1hX2J1Zl91
dGlscy5jcHAKQEAgLTI4LDYgKzI4LDggQEAKICNkZWZpbmUgRFJNX0ZPUk1BVF9SMTYgRk9VUkND
KCdSJywgJzEnLCAnNicsICcgJykKICNkZWZpbmUgRFJNX0ZPUk1BVF9HUjg4IEZPVVJDQygnRycs
ICdSJywgJzgnLCAnOCcpCiAjZGVmaW5lIERSTV9GT1JNQVRfUkdCNTY1IEZPVVJDQygnUicsICdH
JywgJzEnLCAnNicpCisjZGVmaW5lIERSTV9GT1JNQVRfUkdCODg4IEZPVVJDQygnUicsICdHJywg
JzInLCAnNCcpCisjZGVmaW5lIERSTV9GT1JNQVRfQkdSODg4IEZPVVJDQygnQicsICdHJywgJzIn
LCAnNCcpCiAjZGVmaW5lIERSTV9GT1JNQVRfQVJHQjg4ODggRk9VUkNDKCdBJywgJ1InLCAnMics
ICc0JykKICNkZWZpbmUgRFJNX0ZPUk1BVF9BQkdSODg4OCBGT1VSQ0MoJ0EnLCAnQicsICcyJywg
JzQnKQogI2RlZmluZSBEUk1fRk9STUFUX1hSR0I4ODg4IEZPVVJDQygnWCcsICdSJywgJzInLCAn
NCcpCkBAIC03OCw0ICs4MCw3NCBAQCBHTGVudW0gRHJtRm91ckNDRm9ybWF0VG9HTEludGVybmFs
Rm9ybWF0KGludCBmb3VyY2NGb3JtYXQsIGJvb2wgKmlzWVVWKQogICAgIH0KIH0KIAorI2lmIGRl
ZmluZWQoQU5HTEVfRU5BQkxFX1ZVTEtBTikKK3N0ZDo6dmVjdG9yPGludD4gVmtGb3JtYXRUb0Ry
bUZvdXJDQ0Zvcm1hdChWa0Zvcm1hdCBmb3JtYXQpCit7CisgICAgc3dpdGNoIChmb3JtYXQpCisg
ICAgeworICAgICAgICBjYXNlIFZLX0ZPUk1BVF9SOF9VTk9STToKKyAgICAgICAgY2FzZSBWS19G
T1JNQVRfUjhfU1JHQjoKKyAgICAgICAgICAgIHJldHVybiB7RFJNX0ZPUk1BVF9SOH07CisgICAg
ICAgIGNhc2UgVktfRk9STUFUX1IxNl9VTk9STToKKyAgICAgICAgICAgIHJldHVybiB7RFJNX0ZP
Uk1BVF9SMTZ9OworICAgICAgICBjYXNlIFZLX0ZPUk1BVF9SOEc4X1VOT1JNOgorICAgICAgICBj
YXNlIFZLX0ZPUk1BVF9SOEc4X1NSR0I6CisgICAgICAgICAgICByZXR1cm4ge0RSTV9GT1JNQVRf
R1I4OH07CisgICAgICAgIGNhc2UgVktfRk9STUFUX1I4RzhCOF9VTk9STToKKyAgICAgICAgY2Fz
ZSBWS19GT1JNQVRfUjhHOEI4X1NSR0I6CisgICAgICAgICAgICByZXR1cm4ge0RSTV9GT1JNQVRf
QkdSODg4fTsKKyAgICAgICAgY2FzZSBWS19GT1JNQVRfQjhHOFI4X1VOT1JNOgorICAgICAgICBj
YXNlIFZLX0ZPUk1BVF9COEc4UjhfU1JHQjoKKyAgICAgICAgICAgIHJldHVybiB7RFJNX0ZPUk1B
VF9SR0I4ODh9OworICAgICAgICBjYXNlIFZLX0ZPUk1BVF9SOEc4QjhBOF9VTk9STToKKyAgICAg
ICAgY2FzZSBWS19GT1JNQVRfUjhHOEI4QThfU1JHQjoKKyAgICAgICAgICAgIHJldHVybiB7RFJN
X0ZPUk1BVF9BQkdSODg4OCwgRFJNX0ZPUk1BVF9YQkdSODg4OH07CisgICAgICAgIGNhc2UgVktf
Rk9STUFUX0I4RzhSOEE4X1VOT1JNOgorICAgICAgICBjYXNlIFZLX0ZPUk1BVF9COEc4UjhBOF9T
UkdCOgorICAgICAgICAgICAgcmV0dXJuIHtEUk1fRk9STUFUX0FSR0I4ODg4LCBEUk1fRk9STUFU
X1hSR0I4ODg4fTsKKyAgICAgICAgY2FzZSBWS19GT1JNQVRfQTJCMTBHMTBSMTBfVU5PUk1fUEFD
SzMyOgorICAgICAgICAgICAgcmV0dXJuIHtEUk1fRk9STUFUX0FSR0IyMTAxMDEwfTsKKyAgICAg
ICAgY2FzZSBWS19GT1JNQVRfQTJSMTBHMTBCMTBfVU5PUk1fUEFDSzMyOgorICAgICAgICAgICAg
cmV0dXJuIHtEUk1fRk9STUFUX0FCR1IyMTAxMDEwfTsKKyAgICAgICAgY2FzZSBWS19GT1JNQVRf
QjVHNlI1X1VOT1JNX1BBQ0sxNjoKKyAgICAgICAgICAgIHJldHVybiB7RFJNX0ZPUk1BVF9SR0I1
NjV9OworICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAgcmV0dXJuIHt9OworICAgIH0KK30K
Kworc3RkOjp2ZWN0b3I8VmtGb3JtYXQ+IERybUZvdXJDQ0Zvcm1hdFRvVmtGb3JtYXRzKGludCBm
b3VyY2NGb3JtYXQpCit7CisgICAgc3dpdGNoIChmb3VyY2NGb3JtYXQpCisgICAgeworICAgICAg
ICBjYXNlIERSTV9GT1JNQVRfUjg6CisgICAgICAgICAgICByZXR1cm4ge1ZLX0ZPUk1BVF9SOF9T
UkdCLCBWS19GT1JNQVRfUjhfVU5PUk19OworICAgICAgICBjYXNlIERSTV9GT1JNQVRfUjE2Ogor
ICAgICAgICAgICAgcmV0dXJuIHtWS19GT1JNQVRfUjE2X1VOT1JNfTsKKyAgICAgICAgY2FzZSBE
Uk1fRk9STUFUX0dSODg6CisgICAgICAgICAgICByZXR1cm4ge1ZLX0ZPUk1BVF9SOEc4X1NSR0Is
IFZLX0ZPUk1BVF9SOEc4X1VOT1JNfTsKKyAgICAgICAgY2FzZSBEUk1fRk9STUFUX0JHUjg4ODoK
KyAgICAgICAgICAgIHJldHVybiB7VktfRk9STUFUX1I4RzhCOF9TUkdCLCBWS19GT1JNQVRfUjhH
OEI4X1VOT1JNfTsKKyAgICAgICAgY2FzZSBEUk1fRk9STUFUX1JHQjg4ODoKKyAgICAgICAgICAg
IHJldHVybiB7VktfRk9STUFUX0I4RzhSOF9TUkdCLCBWS19GT1JNQVRfQjhHOFI4X1VOT1JNfTsK
KyAgICAgICAgY2FzZSBEUk1fRk9STUFUX0FCR1I4ODg4OgorICAgICAgICBjYXNlIERSTV9GT1JN
QVRfWEJHUjg4ODg6CisgICAgICAgICAgICByZXR1cm4ge1ZLX0ZPUk1BVF9SOEc4QjhBOF9TUkdC
LCBWS19GT1JNQVRfUjhHOEI4QThfVU5PUk19OworICAgICAgICBjYXNlIERSTV9GT1JNQVRfQVJH
Qjg4ODg6CisgICAgICAgIGNhc2UgRFJNX0ZPUk1BVF9YUkdCODg4ODoKKyAgICAgICAgICAgIHJl
dHVybiB7VktfRk9STUFUX0I4RzhSOEE4X1NSR0IsIFZLX0ZPUk1BVF9COEc4UjhBOF9VTk9STX07
CisgICAgICAgIGNhc2UgRFJNX0ZPUk1BVF9BQkdSMjEwMTAxMDoKKyAgICAgICAgICAgIHJldHVy
biB7VktfRk9STUFUX0EyUjEwRzEwQjEwX1VOT1JNX1BBQ0szMn07CisgICAgICAgIGNhc2UgRFJN
X0ZPUk1BVF9BUkdCMjEwMTAxMDoKKyAgICAgICAgICAgIHJldHVybiB7VktfRk9STUFUX0EyQjEw
RzEwUjEwX1VOT1JNX1BBQ0szMn07CisgICAgICAgIGNhc2UgRFJNX0ZPUk1BVF9SR0I1NjU6Cisg
ICAgICAgICAgICByZXR1cm4ge1ZLX0ZPUk1BVF9CNUc2UjVfVU5PUk1fUEFDSzE2fTsKKyAgICAg
ICAgZGVmYXVsdDoKKyAgICAgICAgICAgIFdBUk4oKSA8PCAiVW5rbm93biBkbWFfYnVmIGZvcm1h
dCAiIDw8IGZvdXJjY0Zvcm1hdAorICAgICAgICAgICAgICAgICAgIDw8ICIgdXNlZCB0byBpbml0
aWFsaXplIGFuIEVHTCBpbWFnZS4iOworICAgICAgICAgICAgcmV0dXJuIHt9OworICAgIH0KK30K
KyNlbmRpZiAgLy8gQU5HTEVfRU5BQkxFX1ZVTEtBTgorCiB9ICAvLyBuYW1lc3BhY2UgYW5nbGUK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21tb24vbGludXgvZG1h
X2J1Zl91dGlscy5oIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbW1vbi9saW51eC9k
bWFfYnVmX3V0aWxzLmgKaW5kZXggMzUxNDRiYjVmZjExMWNjM2VhOGE5MzllZjg2NDI3MzZkMGUw
M2FjZS4uNDUxYTc1MWViY2E4NTk4NThlZDNmNTlhMjhhNzQ3ZmNkODI2MTMwZSAxMDA2NDQKLS0t
IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbW1vbi9saW51eC9kbWFfYnVmX3V0aWxz
LmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbW1vbi9saW51eC9kbWFfYnVm
X3V0aWxzLmgKQEAgLTExLDkgKzExLDIwIEBACiAKICNpbmNsdWRlIDxhbmdsZV9nbC5oPgogCisj
aWYgZGVmaW5lZChBTkdMRV9FTkFCTEVfVlVMS0FOKQorIyAgICBpbmNsdWRlIDx2dWxrYW4vdnVs
a2FuX2NvcmUuaD4KKyMgICAgaW5jbHVkZSA8dmVjdG9yPgorI2VuZGlmCisKIG5hbWVzcGFjZSBh
bmdsZQogewogR0xlbnVtIERybUZvdXJDQ0Zvcm1hdFRvR0xJbnRlcm5hbEZvcm1hdChpbnQgZm9y
bWF0LCBib29sICppc1lVVik7CisKKyNpZiBkZWZpbmVkKEFOR0xFX0VOQUJMRV9WVUxLQU4pCitz
dGQ6OnZlY3RvcjxpbnQ+IFZrRm9ybWF0VG9Ecm1Gb3VyQ0NGb3JtYXQoVmtGb3JtYXQgZm9ybWF0
KTsKK3N0ZDo6dmVjdG9yPFZrRm9ybWF0PiBEcm1Gb3VyQ0NGb3JtYXRUb1ZrRm9ybWF0cyhpbnQg
Zm91cmNjRm9ybWF0KTsKKyNlbmRpZgorCiB9ICAvLyBuYW1lc3BhY2UgYW5nbGUKIAogI2VuZGlm
ICAvLyBDT01NT05fTElOVVhfRE1BX0JVRl9VVElMU19IXwpkaWZmIC0tZ2l0IGEvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL2NvbW1vbi9zcGlydi9nZW5fc3BpcnZfYnVpbGRlcl9hbmRfcGFy
c2VyLnB5IGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbW1vbi9zcGlydi9nZW5fc3Bp
cnZfYnVpbGRlcl9hbmRfcGFyc2VyLnB5CmluZGV4IDcwZTE2Njk4OGU1YTFmZjY5Y2VmODhlMWVm
NGNmOWE2NzVjZWNkNjkuLmZkNzYxYTRmYTEyYmNkY2VkY2I4YWNlZTI2MGE0YmFiYTI5OGNmZDUg
MTAwNzU1Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21tb24vc3BpcnYvZ2Vu
X3NwaXJ2X2J1aWxkZXJfYW5kX3BhcnNlci5weQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zcmMvY29tbW9uL3NwaXJ2L2dlbl9zcGlydl9idWlsZGVyX2FuZF9wYXJzZXIucHkKQEAgLTEs
NCArMSw0IEBACi0jIS91c3IvYmluL3B5dGhvbgorIyEvdXNyL2Jpbi9weXRob24zCiAjIENvcHly
aWdodCAyMDIxIFRoZSBBTkdMRSBQcm9qZWN0IEF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CiAjIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlIGxp
Y2Vuc2UgdGhhdCBjYW4gYmUKICMgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KQEAgLTE2Myw3
ICsxNjMsNyBAQCBkZWYgbG9hZF9ncmFtbWFyKGdyYW1tYXJfZmlsZSk6CiAKIAogZGVmIHJlbW92
ZV9jaGFycyhzdHJpbmcsIGNoYXJzKToKLSAgICByZXR1cm4gZmlsdGVyKGxhbWJkYSBjOiBjIG5v
dCBpbiBjaGFycywgc3RyaW5nKQorICAgIHJldHVybiAnJy5qb2luKGxpc3QoZmlsdGVyKGxhbWJk
YSBjOiBjIG5vdCBpbiBjaGFycywgc3RyaW5nKSkpCiAKIAogZGVmIG1ha2VfY2FtZWxfY2FzZShu
YW1lKToKQEAgLTMwOSw2ICszMDksNyBAQCBjbGFzcyBXcml0ZXI6CiAKICAgICAgICAgIyBPdGhl
cndpc2UsIHJlbW92ZSBpbnZhbGlkIGNoYXJhY3RlcnMgYW5kIG1ha2UgdGhlIGZpcnN0IGxldHRl
ciBsb3dlciBjYXNlLgogICAgICAgICBuYW1lID0gcmVtb3ZlX2NoYXJzKG5hbWUsICIgLiwrXG5+
IikKKwogICAgICAgICBuYW1lID0gbWFrZV9jYW1lbF9jYXNlKG5hbWUpCiAKICAgICAgICAgIyBN
YWtlIHN1cmUgdGhlIG5hbWUgaXMgbm90IGEgQysrIGtleXdvcmQKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21tb24vc3lzdGVtX3V0aWxzLmggYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvY29tbW9uL3N5c3RlbV91dGlscy5oCmluZGV4IDk1N2UxZTBhN2Iy
YjNmNjI4YzZjMWMwMzNkZjExYTgyOTEyNTU1MGIuLjVkM2Q1NTAxNWY4OWZkMzUwNTgwODZmZmNh
ZDdiNjVhZTJiNzFjYzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9j
b21tb24vc3lzdGVtX3V0aWxzLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2Nv
bW1vbi9zeXN0ZW1fdXRpbHMuaApAQCAtMTY0LDYgKzE2NCw4IEBAIGJvb2wgSXNEZWJ1Z2dlckF0
dGFjaGVkKCk7CiAvLyBDYWxscyBzeXN0ZW0gQVBJcyB0byBicmVhayBpbnRvIHRoZSBkZWJ1Z2dl
ci4KIHZvaWQgQnJlYWtEZWJ1Z2dlcigpOwogCit1aW50NjRfdCBHZXRQcm9jZXNzTWVtb3J5VXNh
Z2VLQigpOworCiBib29sIFByb3RlY3RNZW1vcnkodWludHB0cl90IHN0YXJ0LCBzaXplX3Qgc2l6
ZSk7CiBib29sIFVucHJvdGVjdE1lbW9yeSh1aW50cHRyX3Qgc3RhcnQsIHNpemVfdCBzaXplKTsK
IApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbW1vbi9zeXN0ZW1f
dXRpbHNfcG9zaXguY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbW1vbi9zeXN0
ZW1fdXRpbHNfcG9zaXguY3BwCmluZGV4IDQxNDNmZTFiNTk0YmU0NDg3YzEzZDFjMTlkMGFiNWMx
ZjE0YjMxZjkuLmNjOGM2MTg2NmNlMDI0MWQ5ZTFmNWRiNzZlMjI2YjMxYTRmMTcxOTMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21tb24vc3lzdGVtX3V0aWxzX3Bv
c2l4LmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tbW9uL3N5c3RlbV91
dGlsc19wb3NpeC5jcHAKQEAgLTEzLDIxICsxMywyNSBAQAogI2luY2x1ZGUgPGlvc3RyZWFtPgog
CiAjaW5jbHVkZSA8ZGxmY24uaD4KLSNpZmRlZiBBTkdMRV9QTEFURk9STV9GVUNIU0lBCi0jICAg
IGluY2x1ZGUgPHppcmNvbi9wcm9jZXNzLmg+Ci0jICAgIGluY2x1ZGUgPHppcmNvbi9zeXNjYWxs
cy5oPgotI2Vsc2UKLSMgICAgaW5jbHVkZSA8c3lzL3Jlc291cmNlLmg+Ci0jZW5kaWYKICNpbmNs
dWRlIDxncnAuaD4KKyNpbmNsdWRlIDxpbnR0eXBlcy5oPgogI2luY2x1ZGUgPHB3ZC5oPgorI2lu
Y2x1ZGUgPHNpZ25hbC5oPgorI2luY2x1ZGUgPHN0cmluZy5oPgorI2luY2x1ZGUgPHN5cy9tbWFu
Lmg+CiAjaW5jbHVkZSA8c3lzL3N0YXQuaD4KICNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KICNpbmNs
dWRlIDxzeXMvd2FpdC5oPgogI2luY2x1ZGUgPHVuaXN0ZC5oPgogCi0jaW5jbHVkZSA8c2lnbmFs
Lmg+Ci0jaW5jbHVkZSA8c3lzL21tYW4uaD4KKyNpbmNsdWRlICJjb21tb24vc3RyaW5nX3V0aWxz
LmgiCisKKyNpZmRlZiBBTkdMRV9QTEFURk9STV9GVUNIU0lBCisjICAgIGluY2x1ZGUgPHppcmNv
bi9wcm9jZXNzLmg+CisjICAgIGluY2x1ZGUgPHppcmNvbi9zeXNjYWxscy5oPgorI2Vsc2UKKyMg
ICAgaW5jbHVkZSA8c3lzL3Jlc291cmNlLmg+CisjZW5kaWYKIAogbmFtZXNwYWNlIGFuZ2xlCiB7
CkBAIC00MDIsNCArNDA2LDM1IEBAIFBhZ2VGYXVsdEhhbmRsZXIgKkNyZWF0ZVBhZ2VGYXVsdEhh
bmRsZXIoUGFnZUZhdWx0Q2FsbGJhY2sgY2FsbGJhY2spCiAgICAgZ1Bvc2l4UGFnZUZhdWx0SGFu
ZGxlciA9IG5ldyBQb3NpeFBhZ2VGYXVsdEhhbmRsZXIoY2FsbGJhY2spOwogICAgIHJldHVybiBn
UG9zaXhQYWdlRmF1bHRIYW5kbGVyOwogfQorCit1aW50NjRfdCBHZXRQcm9jZXNzTWVtb3J5VXNh
Z2VLQigpCit7CisgICAgRklMRSAqZmlsZSA9IGZvcGVuKCIvcHJvYy9zZWxmL3N0YXR1cyIsICJy
Iik7CisKKyAgICBpZiAoIWZpbGUpCisgICAgeworICAgICAgICByZXR1cm4gMDsKKyAgICB9CisK
KyAgICBjb25zdCBjaGFyICprU2VhcmNoU3RyaW5nICAgICAgICAgICA9ICJWbVJTUzoiOworICAg
IGNvbnN0ZXhwciBzaXplX3Qga01heExpbmVTaXplICAgICAgID0gMTAwOworICAgIHN0ZDo6YXJy
YXk8Y2hhciwga01heExpbmVTaXplPiBsaW5lID0ge307CisKKyAgICB1aW50NjRfdCBrYiA9IDA7
CisKKyAgICB3aGlsZSAoZmdldHMobGluZS5kYXRhKCksIGxpbmUuc2l6ZSgpLCBmaWxlKSAhPSBu
dWxscHRyKQorICAgIHsKKyAgICAgICAgaWYgKHN0cm5jbXAobGluZS5kYXRhKCksIGtTZWFyY2hT
dHJpbmcsIHN0cmxlbihrU2VhcmNoU3RyaW5nKSkgPT0gMCkKKyAgICAgICAgeworICAgICAgICAg
ICAgc3RkOjp2ZWN0b3I8c3RkOjpzdHJpbmc+IHN0cmluZ3M7CisgICAgICAgICAgICBTcGxpdFN0
cmluZ0Fsb25nV2hpdGVzcGFjZShsaW5lLmRhdGEoKSwgJnN0cmluZ3MpOworCisgICAgICAgICAg
ICBzc2NhbmYoc3RyaW5nc1sxXS5jX3N0cigpLCAiJSIgU0NOdTY0LCAma2IpOworICAgICAgICAg
ICAgYnJlYWs7CisgICAgICAgIH0KKyAgICB9CisgICAgZmNsb3NlKGZpbGUpOworCisgICAgcmV0
dXJuIGtiOworfQogfSAgLy8gbmFtZXNwYWNlIGFuZ2xlCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvY29tbW9uL3N5c3RlbV91dGlsc193aW4zMi5jcHAgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tbW9uL3N5c3RlbV91dGlsc193aW4zMi5jcHAKaW5kZXgg
MzM1ZmMwOTA2MTkyNGY2N2U0ZjNmODAxODVmOTdhYmY3ZDVlNjRiOS4uNWJjZmEyMzQ3ZTRjZTU4
ZmIyODM3ZjM0OGE4MzcxNjg5ODA2ZDRlMyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc3JjL2NvbW1vbi9zeXN0ZW1fdXRpbHNfd2luMzIuY3BwCisrKyBiL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3NyYy9jb21tb24vc3lzdGVtX3V0aWxzX3dpbjMyLmNwcApAQCAtOCw5ICs4
LDE0IEBACiAjaW5jbHVkZSAiY29tbW9uL0Zhc3RWZWN0b3IuaCIKICNpbmNsdWRlICJzeXN0ZW1f
dXRpbHMuaCIKIAotI2luY2x1ZGUgPHdpbmRvd3MuaD4KICNpbmNsdWRlIDxhcnJheT4KIAorLy8g
TXVzdCBiZSBpbmNsdWRlZCBpbiB0aGlzIG9yZGVyLgorLy8gY2xhbmctZm9ybWF0IG9mZgorI2lu
Y2x1ZGUgPHdpbmRvd3MuaD4KKyNpbmNsdWRlIDxwc2FwaS5oPgorLy8gY2xhbmctZm9ybWF0IG9u
CisKIG5hbWVzcGFjZSBhbmdsZQogewogYm9vbCBVbnNldEVudmlyb25tZW50VmFyKGNvbnN0IGNo
YXIgKnZhcmlhYmxlTmFtZSkKQEAgLTIxOSw0ICsyMjQsMTIgQEAgUGFnZUZhdWx0SGFuZGxlciAq
Q3JlYXRlUGFnZUZhdWx0SGFuZGxlcihQYWdlRmF1bHRDYWxsYmFjayBjYWxsYmFjaykKICAgICBn
V2luMzJQYWdlRmF1bHRIYW5kbGVyID0gbmV3IFdpbjMyUGFnZUZhdWx0SGFuZGxlcihjYWxsYmFj
ayk7CiAgICAgcmV0dXJuIGdXaW4zMlBhZ2VGYXVsdEhhbmRsZXI7CiB9CisKK3VpbnQ2NF90IEdl
dFByb2Nlc3NNZW1vcnlVc2FnZUtCKCkKK3sKKyAgICBQUk9DRVNTX01FTU9SWV9DT1VOVEVSU19F
WCBwbWM7CisgICAgOjpHZXRQcm9jZXNzTWVtb3J5SW5mbyg6OkdldEN1cnJlbnRQcm9jZXNzKCks
IHJlaW50ZXJwcmV0X2Nhc3Q8UFJPQ0VTU19NRU1PUllfQ09VTlRFUlMgKj4oJnBtYyksCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICBzaXplb2YocG1jKSk7CisgICAgcmV0dXJuIHN0YXRpY19j
YXN0PHVpbnQ2NF90PihwbWMuUHJpdmF0ZVVzYWdlKSAvIDEwMjR1bGw7Cit9CiB9ICAvLyBuYW1l
c3BhY2UgYW5nbGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21t
b24vc3lzdGVtX3V0aWxzX3dpbnV3cC5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
Y29tbW9uL3N5c3RlbV91dGlsc193aW51d3AuY3BwCmluZGV4IGFmZmM4OTJjNWRiZmMxMDI2MzAx
YWI3ZGE3OTM2YTliZGYyZTBjZTEuLmEwZWQyYzgyMWJjY2ExMjA3NGQzNDYxMjY3ZTBmMTAzNDNl
YzI3YTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21tb24vc3lz
dGVtX3V0aWxzX3dpbnV3cC5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2Nv
bW1vbi9zeXN0ZW1fdXRpbHNfd2ludXdwLmNwcApAQCAtMTA4LDQgKzEwOCwxMCBAQCBQYWdlRmF1
bHRIYW5kbGVyICpDcmVhdGVQYWdlRmF1bHRIYW5kbGVyKFBhZ2VGYXVsdENhbGxiYWNrIGNhbGxi
YWNrKQogewogICAgIHJldHVybiBuZXcgVXdwUGFnZUZhdWx0SGFuZGxlcihjYWxsYmFjayk7CiB9
CisKK3VpbnQ2NF90IEdldFByb2Nlc3NNZW1vcnlVc2FnZUtCKCkKK3sKKyAgICAvLyBOb3QgYXZh
aWxhYmxlIG9uIFVXUC4KKyAgICByZXR1cm4gMDsKK30KIH0gIC8vIG5hbWVzcGFjZSBhbmdsZQpk
aWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbW1vbi91dGlsaXRpZXMu
Y3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbW1vbi91dGlsaXRpZXMuY3BwCmlu
ZGV4IDc1OGZiMDZjNGNkZjM5NDQ1MjU5OTAwMmRmNTgyZjI2NGYxYzk3ZTUuLjdmYzlhYTc5MmFj
ZTI0ZjE0NjkyM2UzNzQ1NDJkNzI1M2JkMTZhNDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL3NyYy9jb21tb24vdXRpbGl0aWVzLmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvY29tbW9uL3V0aWxpdGllcy5jcHAKQEAgLTI2OSw3ICsyNjksNyBAQCBzdGQ6
OnN0cmluZyBHZXRHTFNMVHlwZVN0cmluZyhHTGVudW0gdHlwZSkKICAgICAgICAgICAgIHJldHVy
biAibWF0NCI7CiAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICBVTlJFQUNIQUJMRSgpOwot
ICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgICAgICAgICByZXR1cm4gIiI7CiAgICAg
fQogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tbW9uL3Z1
bGthbi9CVUlMRC5nbiBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21tb24vdnVsa2Fu
L0JVSUxELmduCmluZGV4IDYzODVhMzNhYTcxNTliNWM5OWVkNzZmYmYxY2YzMmU2NTUyMjAxZWEu
LjJlZTdlZDQxZGY2MDg5ODM3ZGNkMjAyMTY0MjA2YzdhM2RlMjIxZGYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21tb24vdnVsa2FuL0JVSUxELmduCisrKyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21tb24vdnVsa2FuL0JVSUxELmduCkBAIC0yOSw2
ICsyOSw5IEBAIGlmIChhbmdsZV9lbmFibGVfdnVsa2FuIHx8IGFuZ2xlX2J1aWxkX3Z1bGthbl9z
eXN0ZW1faW5mbykgewogICAgIGlmIChhbmdsZV9zaGFyZWRfbGlidnVsa2FuKSB7CiAgICAgICBk
ZWZpbmVzID0gWyAiQU5HTEVfU0hBUkVEX0xJQlZVTEtBTj0xIiBdCiAgICAgfQorICAgIGlmIChh
bmdsZV91c2Vfd2F5bGFuZCkgeworICAgICAgaW5jbHVkZV9kaXJzID0gWyAiJGFuZ2xlX3dheWxh
bmRfZGlyL3NyYyIgXQorICAgIH0KICAgfQogCiAgIGFuZ2xlX3NvdXJjZV9zZXQoImFuZ2xlX3Z1
bGthbl9oZWFkZXJzIikgewpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3Jj
L2NvbXBpbGVyLmduaSBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci5nbmkK
aW5kZXggZDBkNjU2NGE5MjA2MGEyYWRhYTdlNjk0ZmE2OWIwMWY2YWU0ZmQ4OC4uMjcyMWY0YWQ4
OTQzNDZjZDk0Yjg1NjM3ZWIxZTgxMjg0OTkxZDdlMSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyLmduaQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zcmMvY29tcGlsZXIuZ25pCkBAIC0yMiw2ICsyMiw3IEBAIGFuZ2xlX3RyYW5zbGF0b3Jfc291
cmNlcyA9IFsKICAgImluY2x1ZGUvR0xFUzMvZ2wzcGxhdGZvcm0uaCIsCiAgICJpbmNsdWRlL0tI
Ui9raHJwbGF0Zm9ybS5oIiwKICAgImluY2x1ZGUvYW5nbGVfZ2wuaCIsCisgICJzcmMvY29tcGls
ZXIvdHJhbnNsYXRvci9CYXNlVHlwZXMuY3BwIiwKICAgInNyYy9jb21waWxlci90cmFuc2xhdG9y
L0Jhc2VUeXBlcy5oIiwKICAgInNyYy9jb21waWxlci90cmFuc2xhdG9yL0J1aWx0SW5GdW5jdGlv
bkVtdWxhdG9yLmNwcCIsCiAgICJzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9CdWlsdEluRnVuY3Rp
b25FbXVsYXRvci5oIiwKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9j
b21waWxlci9wcmVwcm9jZXNzb3IvZ2VuZXJhdGVfcGFyc2VyLnB5IGIvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9nZW5lcmF0ZV9wYXJzZXIucHkKaW5k
ZXggNjA3ZDhkODcyZmUwNDM0ODk0NGQwODI2MmMxMzk3MjY5YWE5NDQ5MS4uOGQxZmNiMjQ1YzE2
NzgyYjVhZTk1YWJjMGUzYTdmNWM2MTIwZWVmMiAxMDA3NTUKLS0tIGEvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9nZW5lcmF0ZV9wYXJzZXIucHkKKysr
IGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9nZW5l
cmF0ZV9wYXJzZXIucHkKQEAgLTEsNCArMSw0IEBACi0jIS91c3IvYmluL3B5dGhvbgorIyEvdXNy
L2Jpbi9weXRob24zCiAjIENvcHlyaWdodCAyMDE5IFRoZSBBTkdMRSBQcm9qZWN0IEF1dGhvcnMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAjIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVy
bmVkIGJ5IGEgQlNELXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICMgZm91bmQgaW4gdGhlIExJ
Q0VOU0UgZmlsZS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21w
aWxlci90cmFuc2xhdG9yL0Jhc2VUeXBlcy5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9z
cmMvY29tcGlsZXIvdHJhbnNsYXRvci9CYXNlVHlwZXMuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjE1YTNlYmVi
Yzg4ZmFjNzUyNGZiZDg5Y2RhMzI2ZGM2Y2Y4OWNmYTIKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci9CYXNlVHlwZXMuY3Bw
CkBAIC0wLDAgKzEsNjQgQEAKKy8vCisvLyBDb3B5cmlnaHQgMjAyMiBUaGUgQU5HTEUgUHJvamVj
dCBBdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVXNlIG9mIHRoaXMgc291cmNlIGNv
ZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQorLy8gZm91
bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8vCisKKyNpbmNsdWRlICJCYXNlVHlwZXMuaCIKKwor
I2luY2x1ZGUgImNvbW1vbi9QYWNrZWRFbnVtcy5oIgorCituYW1lc3BhY2Ugc2gKK3sKK25hbWVz
cGFjZQoreworY29uc3RleHByIGdsOjpCbGVuZEVxdWF0aW9uQml0U2V0IGtBZHZhbmNlZEJsZW5k
Qml0c3sKKyAgICBnbDo6QmxlbmRFcXVhdGlvblR5cGU6Ok11bHRpcGx5LCAgICAgIGdsOjpCbGVu
ZEVxdWF0aW9uVHlwZTo6U2NyZWVuLAorICAgIGdsOjpCbGVuZEVxdWF0aW9uVHlwZTo6T3Zlcmxh
eSwgICAgICAgZ2w6OkJsZW5kRXF1YXRpb25UeXBlOjpEYXJrZW4sCisgICAgZ2w6OkJsZW5kRXF1
YXRpb25UeXBlOjpMaWdodGVuLCAgICAgICBnbDo6QmxlbmRFcXVhdGlvblR5cGU6OkNvbG9yZG9k
Z2UsCisgICAgZ2w6OkJsZW5kRXF1YXRpb25UeXBlOjpDb2xvcmJ1cm4sICAgICBnbDo6QmxlbmRF
cXVhdGlvblR5cGU6OkhhcmRsaWdodCwKKyAgICBnbDo6QmxlbmRFcXVhdGlvblR5cGU6OlNvZnRs
aWdodCwgICAgIGdsOjpCbGVuZEVxdWF0aW9uVHlwZTo6RGlmZmVyZW5jZSwKKyAgICBnbDo6Qmxl
bmRFcXVhdGlvblR5cGU6OkV4Y2x1c2lvbiwgICAgIGdsOjpCbGVuZEVxdWF0aW9uVHlwZTo6SHNs
SHVlLAorICAgIGdsOjpCbGVuZEVxdWF0aW9uVHlwZTo6SHNsU2F0dXJhdGlvbiwgZ2w6OkJsZW5k
RXF1YXRpb25UeXBlOjpIc2xDb2xvciwKKyAgICBnbDo6QmxlbmRFcXVhdGlvblR5cGU6OkhzbEx1
bWlub3NpdHksCit9OworCitjb25zdGV4cHIgZ2w6OkJsZW5kRXF1YXRpb25CaXRTZXQga0FkdmFu
Y2VkQmxlbmRIc2xCaXRzeworICAgIGdsOjpCbGVuZEVxdWF0aW9uVHlwZTo6SHNsSHVlLAorICAg
IGdsOjpCbGVuZEVxdWF0aW9uVHlwZTo6SHNsU2F0dXJhdGlvbiwKKyAgICBnbDo6QmxlbmRFcXVh
dGlvblR5cGU6OkhzbENvbG9yLAorICAgIGdsOjpCbGVuZEVxdWF0aW9uVHlwZTo6SHNsTHVtaW5v
c2l0eSwKK307CisKK2Jvb2wgSXNWYWxpZEFkdmFuY2VkQmxlbmRCaXRTZXQodWludDMyX3QgZW5h
YmxlZEVxdWF0aW9ucykKK3sKKyAgICByZXR1cm4gKGdsOjpCbGVuZEVxdWF0aW9uQml0U2V0KGVu
YWJsZWRFcXVhdGlvbnMpICYgfmtBZHZhbmNlZEJsZW5kQml0cykubm9uZSgpOworfQorfSAgLy8g
YW5vbnltb3VzIG5hbWVzcGFjZQorCitib29sIEFkdmFuY2VkQmxlbmRFcXVhdGlvbnM6OmFueSgp
IGNvbnN0Cit7CisgICAgQVNTRVJUKElzVmFsaWRBZHZhbmNlZEJsZW5kQml0U2V0KG1FbmFibGVk
QmxlbmRFcXVhdGlvbnMpKTsKKyAgICByZXR1cm4gbUVuYWJsZWRCbGVuZEVxdWF0aW9ucyAhPSAw
OworfQorCitib29sIEFkdmFuY2VkQmxlbmRFcXVhdGlvbnM6OmFueUhzbCgpIGNvbnN0Cit7Cisg
ICAgQVNTRVJUKElzVmFsaWRBZHZhbmNlZEJsZW5kQml0U2V0KG1FbmFibGVkQmxlbmRFcXVhdGlv
bnMpKTsKKyAgICByZXR1cm4gKGdsOjpCbGVuZEVxdWF0aW9uQml0U2V0KG1FbmFibGVkQmxlbmRF
cXVhdGlvbnMpICYga0FkdmFuY2VkQmxlbmRIc2xCaXRzKS5hbnkoKTsKK30KKwordm9pZCBBZHZh
bmNlZEJsZW5kRXF1YXRpb25zOjpzZXRBbGwoKQoreworICAgIEFTU0VSVChJc1ZhbGlkQWR2YW5j
ZWRCbGVuZEJpdFNldChtRW5hYmxlZEJsZW5kRXF1YXRpb25zKSk7CisgICAgbUVuYWJsZWRCbGVu
ZEVxdWF0aW9ucyA9IGtBZHZhbmNlZEJsZW5kQml0cy5iaXRzKCk7Cit9CisKK3ZvaWQgQWR2YW5j
ZWRCbGVuZEVxdWF0aW9uczo6c2V0KHVpbnQzMl90IGJsZW5kRXF1YXRpb24pCit7CisgICAgZ2w6
OkJsZW5kRXF1YXRpb25UeXBlIGVxID0gc3RhdGljX2Nhc3Q8Z2w6OkJsZW5kRXF1YXRpb25UeXBl
PihibGVuZEVxdWF0aW9uKTsKKyAgICBtRW5hYmxlZEJsZW5kRXF1YXRpb25zICAgPSBnbDo6Qmxl
bmRFcXVhdGlvbkJpdFNldChtRW5hYmxlZEJsZW5kRXF1YXRpb25zKS5zZXQoZXEpLmJpdHMoKTsK
KyAgICBBU1NFUlQoSXNWYWxpZEFkdmFuY2VkQmxlbmRCaXRTZXQobUVuYWJsZWRCbGVuZEVxdWF0
aW9ucykpOworfQorCit9ICAvLyBuYW1lc3BhY2Ugc2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci90cmFuc2xhdG9yL0Jhc2VUeXBlcy5oIGIvU291cmNl
L1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvQmFzZVR5cGVzLmgKaW5k
ZXggZjE1YTM5NzhiOWM5MGM3OWFlNTY2N2FkZGIzOTRmMjIyYTg2YWFlZC4uOWRmYWJkMjlmOWNk
NzY4OTExMGUzMzQ5N2QxMjg5YjhiODM3YTVlNiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvQmFzZVR5cGVzLmgKKysrIGIvU291cmNl
L1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvQmFzZVR5cGVzLmgKQEAg
LTEzMDQsNiArMTMwNCwzNiBAQCBlbnVtIFRMYXlvdXRUZXNzRXZhbHVhdGlvblR5cGUKICAgICBF
dGV0UG9pbnRNb2RlCiB9OwogCitjbGFzcyBBZHZhbmNlZEJsZW5kRXF1YXRpb25zCit7CisgIHB1
YmxpYzoKKyAgICAvLyBNdXN0IGhhdmUgYSB0cml2aWFsIGRlZmF1bHQgY29uc3RydWN0b3Igc2lu
Y2UgaXQgaXMgdXNlZCBpbiBZWVNUWVBFLgorICAgIEFkdmFuY2VkQmxlbmRFcXVhdGlvbnMoKSA9
IGRlZmF1bHQ7CisgICAgZXhwbGljaXQgY29uc3RleHByIEFkdmFuY2VkQmxlbmRFcXVhdGlvbnMo
dWludDMyX3QgaW5pdGlhbFN0YXRlKQorICAgICAgICA6IG1FbmFibGVkQmxlbmRFcXVhdGlvbnMo
aW5pdGlhbFN0YXRlKQorICAgIHt9CisKKyAgICBib29sIGFueSgpIGNvbnN0OworICAgIGJvb2wg
YW55SHNsKCkgY29uc3Q7CisKKyAgICB2b2lkIHNldEFsbCgpOworICAgIHZvaWQgcmVzZXQoKSB7
IG1FbmFibGVkQmxlbmRFcXVhdGlvbnMgPSAwOyB9CisKKyAgICAvLyBQYXJhbWV0ZXIgaXMgZ2w6
OkJsZW5kRXF1YXRpb25UeXBlLCBidXQgUGFja2VkRW51bXMuaCBpbmNsdWRlIGlzIG5vdCBwb3Nz
aWJsZSBoZXJlLgorICAgIHZvaWQgc2V0KHVpbnQzMl90IGJsZW5kRXF1YXRpb24pOworCisgICAg
dWludDMyX3QgYml0cygpIGNvbnN0IHsgcmV0dXJuIG1FbmFibGVkQmxlbmRFcXVhdGlvbnM7IH0K
KworICAgIEFkdmFuY2VkQmxlbmRFcXVhdGlvbnMgb3BlcmF0b3J8PShBZHZhbmNlZEJsZW5kRXF1
YXRpb25zIG90aGVyKQorICAgIHsKKyAgICAgICAgbUVuYWJsZWRCbGVuZEVxdWF0aW9ucyB8PSBv
dGhlci5tRW5hYmxlZEJsZW5kRXF1YXRpb25zOworICAgICAgICByZXR1cm4gKnRoaXM7CisgICAg
fQorCisgIHByaXZhdGU6CisgICAgdWludDMyX3QgbUVuYWJsZWRCbGVuZEVxdWF0aW9uczsKK307
CisKIHN0cnVjdCBUTGF5b3V0UXVhbGlmaWVyCiB7CiAgICAgLy8gTXVzdCBoYXZlIGEgdHJpdmlh
bCBkZWZhdWx0IGNvbnN0cnVjdG9yIHNpbmNlIGl0IGlzIHVzZWQgaW4gWVlTVFlQRS4KQEAgLTEz
MjAsNyArMTM1MCw3IEBAIHN0cnVjdCBUTGF5b3V0UXVhbGlmaWVyCiAgICAgICAgICAgICAgICBp
bnZvY2F0aW9ucyA9PSAwICYmIG1heFZlcnRpY2VzID09IC0xICYmIHZlcnRpY2VzID09IDAgJiYK
ICAgICAgICAgICAgICAgIHRlc1ByaW1pdGl2ZVR5cGUgPT0gRXRldFVuZGVmaW5lZCAmJiB0ZXNW
ZXJ0ZXhTcGFjaW5nVHlwZSA9PSBFdGV0VW5kZWZpbmVkICYmCiAgICAgICAgICAgICAgICB0ZXNP
cmRlcmluZ1R5cGUgPT0gRXRldFVuZGVmaW5lZCAmJiB0ZXNQb2ludFR5cGUgPT0gRXRldFVuZGVm
aW5lZCAmJiBpbmRleCA9PSAtMSAmJgotICAgICAgICAgICAgICAgaW5wdXRBdHRhY2htZW50SW5k
ZXggPT0gLTEgJiYgbm9uY29oZXJlbnQgPT0gZmFsc2U7CisgICAgICAgICAgICAgICBpbnB1dEF0
dGFjaG1lbnRJbmRleCA9PSAtMSAmJiBub25jb2hlcmVudCA9PSBmYWxzZSAmJiAhYWR2YW5jZWRC
bGVuZEVxdWF0aW9ucy5hbnkoKTsKICAgICB9CiAKICAgICBib29sIGlzQ29tYmluYXRpb25WYWxp
ZCgpIGNvbnN0CkBAIC0xMzMzLDYgKzEzNjMsNyBAQCBzdHJ1Y3QgVExheW91dFF1YWxpZmllcgog
ICAgICAgICBib29sIG90aGVyTGF5b3V0UXVhbGlmaWVyc1NwZWNpZmllZCA9CiAgICAgICAgICAg
ICAobG9jYXRpb24gIT0gLTEgfHwgYmluZGluZyAhPSAtMSB8fCBpbmRleCAhPSAtMSB8fCBtYXRy
aXhQYWNraW5nICE9IEVtcFVuc3BlY2lmaWVkIHx8CiAgICAgICAgICAgICAgYmxvY2tTdG9yYWdl
ICE9IEVic1Vuc3BlY2lmaWVkIHx8IGltYWdlSW50ZXJuYWxGb3JtYXQgIT0gRWlpZlVuc3BlY2lm
aWVkKTsKKyAgICAgICAgYm9vbCBibGVuZEVxdWF0aW9uU3BlY2lmaWVkID0gYWR2YW5jZWRCbGVu
ZEVxdWF0aW9ucy5hbnkoKTsKIAogICAgICAgICAvLyB3ZSBjYW4gaGF2ZSBlaXRoZXIgdGhlIHdv
cmsgZ3JvdXAgc2l6ZSBzcGVjaWZpZWQsIG9yIG51bWJlciBvZiB2aWV3cywKICAgICAgICAgLy8g
b3IgeXV2IGxheW91dCBxdWFsaWZpZXIsIG9yIGVhcmx5X2ZyYWdtZW50X3Rlc3RzIGxheW91dCBx
dWFsaWZpZXIsIG9yIHRoZSBvdGhlciBsYXlvdXQKQEAgLTEzNDAsNyArMTM3MSw3IEBAIHN0cnVj
dCBUTGF5b3V0UXVhbGlmaWVyCiAgICAgICAgIHJldHVybiAod29ya0dyb3VwU2l6ZVNwZWNpZmll
ZCA/IDEgOiAwKSArIChudW1WaWV3c1NldCA/IDEgOiAwKSArICh5dXYgPyAxIDogMCkgKwogICAg
ICAgICAgICAgICAgICAgIChlYXJseUZyYWdtZW50VGVzdHMgPyAxIDogMCkgKyAob3RoZXJMYXlv
dXRRdWFsaWZpZXJzU3BlY2lmaWVkID8gMSA6IDApICsKICAgICAgICAgICAgICAgICAgICAoZ2Vv
bWV0cnlTaGFkZXJTcGVjaWZpZWQgPyAxIDogMCkgKyAoc3VicGFzc0lucHV0U3BlY2lmaWVkID8g
MSA6IDApICsKLSAgICAgICAgICAgICAgICAgICAobm9uY29oZXJlbnQgPyAxIDogMCkgPD0KKyAg
ICAgICAgICAgICAgICAgICAobm9uY29oZXJlbnQgPyAxIDogMCkgKyAoYmxlbmRFcXVhdGlvblNw
ZWNpZmllZCA/IDEgOiAwKSA8PQogICAgICAgICAgICAgICAgMTsKICAgICB9CiAKQEAgLTEzOTEs
NiArMTQyMiw5IEBAIHN0cnVjdCBUTGF5b3V0UXVhbGlmaWVyCiAgICAgaW50IGlucHV0QXR0YWNo
bWVudEluZGV4OwogICAgIGJvb2wgbm9uY29oZXJlbnQ7CiAKKyAgICAvLyBLSFJfYmxlbmRfZXF1
YXRpb25fYWR2YW5jZWQgbGF5b3V0IHF1YWxpZmllcnMuCisgICAgQWR2YW5jZWRCbGVuZEVxdWF0
aW9ucyBhZHZhbmNlZEJsZW5kRXF1YXRpb25zOworCiAgIHByaXZhdGU6CiAgICAgZXhwbGljaXQg
Y29uc3RleHByIFRMYXlvdXRRdWFsaWZpZXIoaW50IC8qcGxhY2Vob2xkZXIqLykKICAgICAgICAg
OiBsb2NhdGlvbigtMSksCkBAIC0xNDE0LDcgKzE0NDgsOCBAQCBzdHJ1Y3QgVExheW91dFF1YWxp
ZmllcgogICAgICAgICAgIHRlc1BvaW50VHlwZShFdGV0VW5kZWZpbmVkKSwKICAgICAgICAgICBp
bmRleCgtMSksCiAgICAgICAgICAgaW5wdXRBdHRhY2htZW50SW5kZXgoLTEpLAotICAgICAgICAg
IG5vbmNvaGVyZW50KGZhbHNlKQorICAgICAgICAgIG5vbmNvaGVyZW50KGZhbHNlKSwKKyAgICAg
ICAgICBhZHZhbmNlZEJsZW5kRXF1YXRpb25zKDApCiAgICAge30KIH07CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci90cmFuc2xhdG9yL0NvbXBpbGVy
LmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci90cmFuc2xhdG9yL0Nv
bXBpbGVyLmNwcAppbmRleCA4YjAxNWE4MjMwZjE5YmI3OWMwNzc0ZTQzM2IxMGQ1ZTFjNzQwMjU5
Li40OWZkYTZjY2FhZmQzMGRhZmMzODQwZjViZDJhMWI5NWU4NjQ4ZTQ5IDEwMDY0NAotLS0gYS9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci9Db21waWxlci5j
cHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3Iv
Q29tcGlsZXIuY3BwCkBAIC0zNDYsNiArMzQ2LDcgQEAgVENvbXBpbGVyOjpUQ29tcGlsZXIoc2g6
OkdMZW51bSB0eXBlLCBTaFNoYWRlclNwZWMgc3BlYywgU2hTaGFkZXJPdXRwdXQgb3V0cHV0KQog
ICAgICAgbVRlc3NFdmFsdWF0aW9uU2hhZGVySW5wdXRPcmRlcmluZ1R5cGUoRXRldFVuZGVmaW5l
ZCksCiAgICAgICBtVGVzc0V2YWx1YXRpb25TaGFkZXJJbnB1dFBvaW50VHlwZShFdGV0VW5kZWZp
bmVkKSwKICAgICAgIG1IYXNBbnlQcmVjaXNlVHlwZShmYWxzZSksCisgICAgICBtQWR2YW5jZWRC
bGVuZEVxdWF0aW9ucygwKSwKICAgICAgIG1Db21waWxlT3B0aW9ucygwKQoge30KIApAQCAtNTYw
LDYgKzU2MSwxMCBAQCB2b2lkIFRDb21waWxlcjo6c2V0QVNUTWV0YWRhdGEoY29uc3QgVFBhcnNl
Q29udGV4dCAmcGFyc2VDb250ZXh0KQogCiAgICAgbUhhc0FueVByZWNpc2VUeXBlID0gcGFyc2VD
b250ZXh0Lmhhc0FueVByZWNpc2VUeXBlKCk7CiAKKyAgICBpZiAobVNoYWRlclR5cGUgPT0gR0xf
RlJBR01FTlRfU0hBREVSKQorICAgIHsKKyAgICAgICAgbUFkdmFuY2VkQmxlbmRFcXVhdGlvbnMg
PSBwYXJzZUNvbnRleHQuZ2V0QWR2YW5jZWRCbGVuZEVxdWF0aW9ucygpOworICAgIH0KICAgICBp
ZiAobVNoYWRlclR5cGUgPT0gR0xfR0VPTUVUUllfU0hBREVSX0VYVCkKICAgICB7CiAgICAgICAg
IG1HZW9tZXRyeVNoYWRlcklucHV0UHJpbWl0aXZlVHlwZSAgPSBwYXJzZUNvbnRleHQuZ2V0R2Vv
bWV0cnlTaGFkZXJJbnB1dFByaW1pdGl2ZVR5cGUoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci90cmFuc2xhdG9yL0NvbXBpbGVyLmggYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci9Db21waWxlci5oCmluZGV4
IGUxOWYwYWNkZTFhNzk1YWY2NDk2ZGI2ZWNiOWMxOTc5NDFkZmM1MWMuLmYzY2EwMTYxNTk2ZWYx
MDVmZWZkYWViNmFmNDc2ZjE1NDE1NDE3OGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3NyYy9jb21waWxlci90cmFuc2xhdG9yL0NvbXBpbGVyLmgKKysrIGIvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvQ29tcGlsZXIuaApAQCAtMTg0
LDYgKzE4NCw4IEBAIGNsYXNzIFRDb21waWxlciA6IHB1YmxpYyBUU2hIYW5kbGVCYXNlCiAKICAg
ICBib29sIGhhc0FueVByZWNpc2VUeXBlKCkgY29uc3QgeyByZXR1cm4gbUhhc0FueVByZWNpc2VU
eXBlOyB9CiAKKyAgICBBZHZhbmNlZEJsZW5kRXF1YXRpb25zIGdldEFkdmFuY2VkQmxlbmRFcXVh
dGlvbnMoKSBjb25zdCB7IHJldHVybiBtQWR2YW5jZWRCbGVuZEVxdWF0aW9uczsgfQorCiAgICAg
dW5zaWduZWQgaW50IGdldFNoYXJlZE1lbW9yeVNpemUoKSBjb25zdDsKIAogICAgIHNoOjpHTGVu
dW0gZ2V0U2hhZGVyVHlwZSgpIGNvbnN0IHsgcmV0dXJuIG1TaGFkZXJUeXBlOyB9CkBAIC0zMzks
NiArMzQxLDkgQEAgY2xhc3MgVENvbXBpbGVyIDogcHVibGljIFRTaEhhbmRsZUJhc2UKIAogICAg
IGJvb2wgbUhhc0FueVByZWNpc2VUeXBlOwogCisgICAgLy8gYWR2YW5jZWQgYmxlbmQgZXF1YXRp
b24gcGFyYW1ldGVycworICAgIEFkdmFuY2VkQmxlbmRFcXVhdGlvbnMgbUFkdmFuY2VkQmxlbmRF
cXVhdGlvbnM7CisKICAgICAvLyBuYW1lIGhhc2hpbmcuCiAgICAgTmFtZU1hcCBtTmFtZU1hcDsK
IApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3RyYW5z
bGF0b3IvRXh0ZW5zaW9uQmVoYXZpb3IuY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3Jj
L2NvbXBpbGVyL3RyYW5zbGF0b3IvRXh0ZW5zaW9uQmVoYXZpb3IuY3BwCmluZGV4IDA4MjdlYzcy
OGY4N2QzZGViYTNkMTQ3YzMxZmU0MTA5OWQ1OWQ2MDkuLmEwMjkwNDM2OGM5MDkzZjJmMjc5MjY3
MDllOTczN2EyYjlhOTVjNGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3Ny
Yy9jb21waWxlci90cmFuc2xhdG9yL0V4dGVuc2lvbkJlaGF2aW9yLmNwcAorKysgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci9FeHRlbnNpb25CZWhhdmlv
ci5jcHAKQEAgLTQwLDYgKzQwLDcgQEAKICAgICBPUChFWFRfdGV4dHVyZV9idWZmZXIpICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgT1AoRVhUX3RleHR1cmVfY3ViZV9tYXBfYXJy
YXkpICAgICAgICAgICAgICAgICAgICAgXAogICAgIE9QKEVYVF9ZVVZfdGFyZ2V0KSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICBPUChLSFJfYmxlbmRfZXF1YXRpb25fYWR2
YW5jZWQpICAgICAgICAgICAgICAgICAgICBcCiAgICAgT1AoTlZfRUdMX3N0cmVhbV9jb25zdW1l
cl9leHRlcm5hbCkgICAgICAgICAgICAgICAgXAogICAgIE9QKE5WX3NoYWRlcl9mcmFtZWJ1ZmZl
cl9mZXRjaCkgICAgICAgICAgICAgICAgICAgIFwKICAgICBPUChOVl9zaGFkZXJfbm9wZXJzcGVj
dGl2ZV9pbnRlcnBvbGF0aW9uKSAgICAgICAgICBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9BTkdMRS9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci9FeHRlbnNpb25CZWhhdmlvci5oIGIv
U291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvRXh0ZW5zaW9u
QmVoYXZpb3IuaAppbmRleCAyZmMwNmZiNGMwYjcxYjhjYjMwOGQ1YWFjNjYwZjJhN2I4MjdmZDg1
Li5kYzVhNTI1ZjM2ZTI1NjE4MTg1NGQ5M2E2ZTRkOWY1MzkyZDY5NjNlIDEwMDY0NAotLS0gYS9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci9FeHRlbnNpb25C
ZWhhdmlvci5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci90cmFu
c2xhdG9yL0V4dGVuc2lvbkJlaGF2aW9yLmgKQEAgLTQ2LDYgKzQ2LDcgQEAgZW51bSBjbGFzcyBU
RXh0ZW5zaW9uIDogdWludDhfdAogICAgIEVYVF90ZXh0dXJlX2J1ZmZlciwKICAgICBFWFRfdGV4
dHVyZV9jdWJlX21hcF9hcnJheSwKICAgICBFWFRfWVVWX3RhcmdldCwKKyAgICBLSFJfYmxlbmRf
ZXF1YXRpb25fYWR2YW5jZWQsCiAgICAgTlZfRUdMX3N0cmVhbV9jb25zdW1lcl9leHRlcm5hbCwK
ICAgICBOVl9zaGFkZXJfZnJhbWVidWZmZXJfZmV0Y2gsCiAgICAgTlZfc2hhZGVyX25vcGVyc3Bl
Y3RpdmVfaW50ZXJwb2xhdGlvbiwKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy9jb21waWxlci90cmFuc2xhdG9yL0luaXRpYWxpemUuY3BwIGIvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvSW5pdGlhbGl6ZS5jcHAKaW5kZXggMzRm
YWZlZTQwOWQxMmMzNmQxM2YzMTNmMjA1ZTE3OGJlZmI2YTAzMC4uYjZkY2NkYmU1Nzg4Y2NkODFk
ZDBjYmMxYjJhOGRmNWU4YzkyZGE1OCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvSW5pdGlhbGl6ZS5jcHAKKysrIGIvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvSW5pdGlhbGl6ZS5jcHAKQEAg
LTE4NSw2ICsxODUsMTAgQEAgdm9pZCBJbml0RXh0ZW5zaW9uQmVoYXZpb3IoY29uc3QgU2hCdWls
dEluUmVzb3VyY2VzICZyZXNvdXJjZXMsIFRFeHRlbnNpb25CZWhhdmkKICAgICB7CiAgICAgICAg
IGV4dEJlaGF2aW9yW1RFeHRlbnNpb246OkFORFJPSURfZXh0ZW5zaW9uX3BhY2tfZXMzMWFdID0g
RUJoVW5kZWZpbmVkOwogICAgIH0KKyAgICBpZiAocmVzb3VyY2VzLktIUl9ibGVuZF9lcXVhdGlv
bl9hZHZhbmNlZCkKKyAgICB7CisgICAgICAgIGV4dEJlaGF2aW9yW1RFeHRlbnNpb246OktIUl9i
bGVuZF9lcXVhdGlvbl9hZHZhbmNlZF0gPSBFQmhVbmRlZmluZWQ7CisgICAgfQogfQogCiB2b2lk
IFJlc2V0RXh0ZW5zaW9uQmVoYXZpb3IoY29uc3QgU2hCdWlsdEluUmVzb3VyY2VzICZyZXNvdXJj
ZXMsCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tcGlsZXIvdHJh
bnNsYXRvci9QYXJzZUNvbnRleHQuY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2Nv
bXBpbGVyL3RyYW5zbGF0b3IvUGFyc2VDb250ZXh0LmNwcAppbmRleCBmNDhhZGJhNDZkYmJiYjY1
OWVhODNjZDM2NDU5ZWI5ZDA2NzM2ODExLi4yMDc4OGNiOTMyM2RhYWVjOGYxZTMzNDgzZGZhYmFj
MWY0NDhkODkwIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tcGls
ZXIvdHJhbnNsYXRvci9QYXJzZUNvbnRleHQuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FO
R0xFL3NyYy9jb21waWxlci90cmFuc2xhdG9yL1BhcnNlQ29udGV4dC5jcHAKQEAgLTE0OCw2ICsx
NDgsMTAgQEAgVEludGVybVR5cGVkICpGaW5kTFZhbHVlQmFzZShUSW50ZXJtVHlwZWQgKm5vZGUp
CiAgICAgfSB3aGlsZSAodHJ1ZSk7CiB9CiAKK3ZvaWQgQWRkQWR2YW5jZWRCbGVuZEVxdWF0aW9u
KGdsOjpCbGVuZEVxdWF0aW9uVHlwZSBlcSwgVExheW91dFF1YWxpZmllciAqcXVhbGlmaWVyKQor
eworICAgIHF1YWxpZmllci0+YWR2YW5jZWRCbGVuZEVxdWF0aW9ucy5zZXQoc3RhdGljX2Nhc3Q8
dWludDMyX3Q+KGVxKSk7Cit9CiB9ICAvLyBuYW1lc3BhY2UKIAogLy8gVGhpcyB0cmFja3MgZWFj
aCBiaW5kaW5nIHBvaW50J3MgY3VycmVudCBkZWZhdWx0IG9mZnNldCBmb3IgaW5oZXJpdGFuY2Ug
b2Ygc3Vic2VxdWVudApAQCAtMjQ0LDYgKzI0OCw3IEBAIFRQYXJzZUNvbnRleHQ6OlRQYXJzZUNv
bnRleHQoVFN5bWJvbFRhYmxlICZzeW10LAogICAgICAgbVRlc3NFdmFsdWF0aW9uU2hhZGVySW5w
dXRPcmRlcmluZ1R5cGUoRXRldFVuZGVmaW5lZCksCiAgICAgICBtVGVzc0V2YWx1YXRpb25TaGFk
ZXJJbnB1dFBvaW50VHlwZShFdGV0VW5kZWZpbmVkKSwKICAgICAgIG1IYXNBbnlQcmVjaXNlVHlw
ZShmYWxzZSksCisgICAgICBtQWR2YW5jZWRCbGVuZEVxdWF0aW9ucygwKSwKICAgICAgIG1GdW5j
dGlvbkJvZHlOZXdTY29wZShmYWxzZSksCiAgICAgICBtT3V0cHV0VHlwZShvdXRwdXRUeXBlKQog
e30KQEAgLTE4MzYsOSArMTg0MSwxMCBAQCB2b2lkIFRQYXJzZUNvbnRleHQ6OmNoZWNrQmluZGlu
Z0lzVmFsaWQoY29uc3QgVFNvdXJjZUxvYyAmaWRlbnRpZmllckxvY2F0aW9uLCBjbwogCiB2b2lk
IFRQYXJzZUNvbnRleHQ6OmNoZWNrQ2FuVXNlTGF5b3V0UXVhbGlmaWVyKGNvbnN0IFRTb3VyY2VM
b2MgJmxvY2F0aW9uKQogewotICAgIGNvbnN0ZXhwciBzdGQ6OmFycmF5PFRFeHRlbnNpb24sIDJ1
PiBleHRlbnNpb25zeworICAgIGNvbnN0ZXhwciBzdGQ6OmFycmF5PFRFeHRlbnNpb24sIDN1PiBl
eHRlbnNpb25zewogICAgICAgICB7VEV4dGVuc2lvbjo6RVhUX3NoYWRlcl9mcmFtZWJ1ZmZlcl9m
ZXRjaCwKLSAgICAgICAgIFRFeHRlbnNpb246OkVYVF9zaGFkZXJfZnJhbWVidWZmZXJfZmV0Y2hf
bm9uX2NvaGVyZW50fX07CisgICAgICAgICBURXh0ZW5zaW9uOjpFWFRfc2hhZGVyX2ZyYW1lYnVm
ZmVyX2ZldGNoX25vbl9jb2hlcmVudCwKKyAgICAgICAgIFRFeHRlbnNpb246OktIUl9ibGVuZF9l
cXVhdGlvbl9hZHZhbmNlZH19OwogICAgIGlmIChnZXRTaGFkZXJWZXJzaW9uKCkgPCAzMDAgJiYg
IWNoZWNrQ2FuVXNlT25lT2ZFeHRlbnNpb25zKGxvY2F0aW9uLCBleHRlbnNpb25zKSkKICAgICB7
CiAgICAgICAgIGVycm9yKGxvY2F0aW9uLCAicXVhbGlmaWVyIHN1cHBvcnRlZCBpbiBHTFNMIEVT
IDMuMDAgYW5kIGFib3ZlIG9ubHkiLCAibGF5b3V0Iik7CkBAIC0yMTIwLDYgKzIxMjYsMjAgQEAg
dm9pZCBUUGFyc2VDb250ZXh0OjpjaGVja0ludmFyaWFudFZhcmlhYmxlUXVhbGlmaWVyKGJvb2wg
aW52YXJpYW50LAogICAgIH0KIH0KIAordm9pZCBUUGFyc2VDb250ZXh0OjpjaGVja0FkdmFuY2Vk
QmxlbmRFcXVhdGlvbnNOb3RTcGVjaWZpZWQoCisgICAgY29uc3QgVFNvdXJjZUxvYyAmbG9jYXRp
b24sCisgICAgY29uc3QgQWR2YW5jZWRCbGVuZEVxdWF0aW9ucyAmYWR2YW5jZWRCbGVuZEVxdWF0
aW9ucywKKyAgICBjb25zdCBUUXVhbGlmaWVyICZxdWFsaWZpZXIpCit7CisgICAgaWYgKGFkdmFu
Y2VkQmxlbmRFcXVhdGlvbnMuYW55KCkgJiYgcXVhbGlmaWVyICE9IEV2cUZyYWdtZW50T3V0KQor
ICAgIHsKKyAgICAgICAgZXJyb3IobG9jYXRpb24sCisgICAgICAgICAgICAgICJpbnZhbGlkIGxh
eW91dCBxdWFsaWZpZXI6IGJsZW5kaW5nIGVxdWF0aW9uIHF1YWxpZmllcnMgYXJlIG9ubHkgcGVy
bWl0dGVkIG9uIHRoZSAiCisgICAgICAgICAgICAgICJmcmFnbWVudCAnb3V0JyBxdWFsaWZpZXIg
IiwKKyAgICAgICAgICAgICAgImJsZW5kX3N1cHBvcnRfcXVhbGlmaWVyIik7CisgICAgfQorfQor
CiBib29sIFRQYXJzZUNvbnRleHQ6OmlzRXh0ZW5zaW9uRW5hYmxlZChURXh0ZW5zaW9uIGV4dGVu
c2lvbikgY29uc3QKIHsKICAgICByZXR1cm4gSXNFeHRlbnNpb25FbmFibGVkKGV4dGVuc2lvbkJl
aGF2aW9yKCksIGV4dGVuc2lvbik7CkBAIC0zNjI2LDYgKzM2NDYsOSBAQCB2b2lkIFRQYXJzZUNv
bnRleHQ6OnBhcnNlR2xvYmFsTGF5b3V0UXVhbGlmaWVyKGNvbnN0IFRUeXBlUXVhbGlmaWVyQnVp
bGRlciAmdHlwZQogICAgIGNoZWNrU3RkNDMwSXNGb3JTaGFkZXJTdG9yYWdlQmxvY2sodHlwZVF1
YWxpZmllci5saW5lLCBsYXlvdXRRdWFsaWZpZXIuYmxvY2tTdG9yYWdlLAogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZVF1YWxpZmllci5xdWFsaWZpZXIpOwogCisg
ICAgY2hlY2tBZHZhbmNlZEJsZW5kRXF1YXRpb25zTm90U3BlY2lmaWVkKAorICAgICAgICB0eXBl
UXVhbGlmaWVyLmxpbmUsIGxheW91dFF1YWxpZmllci5hZHZhbmNlZEJsZW5kRXF1YXRpb25zLCB0
eXBlUXVhbGlmaWVyLnF1YWxpZmllcik7CisKICAgICBpZiAodHlwZVF1YWxpZmllci5xdWFsaWZp
ZXIgIT0gRXZxRnJhZ21lbnRJbikKICAgICB7CiAgICAgICAgIGNoZWNrRWFybHlGcmFnbWVudFRl
c3RzSXNOb3RTcGVjaWZpZWQodHlwZVF1YWxpZmllci5saW5lLApAQCAtMzc1Nyw2ICszNzgwLDI4
IEBAIHZvaWQgVFBhcnNlQ29udGV4dDo6cGFyc2VHbG9iYWxMYXlvdXRRdWFsaWZpZXIoY29uc3Qg
VFR5cGVRdWFsaWZpZXJCdWlsZGVyICZ0eXBlCiAKICAgICAgICAgbUVhcmx5RnJhZ21lbnRUZXN0
c1NwZWNpZmllZCA9IHRydWU7CiAgICAgfQorICAgIGVsc2UgaWYgKHR5cGVRdWFsaWZpZXIucXVh
bGlmaWVyID09IEV2cUZyYWdtZW50T3V0KQorICAgIHsKKyAgICAgICAgaWYgKG1TaGFkZXJWZXJz
aW9uIDwgMzIwICYmICFpc0V4dGVuc2lvbkVuYWJsZWQoVEV4dGVuc2lvbjo6S0hSX2JsZW5kX2Vx
dWF0aW9uX2FkdmFuY2VkKSkKKyAgICAgICAgeworICAgICAgICAgICAgZXJyb3IodHlwZVF1YWxp
Zmllci5saW5lLAorICAgICAgICAgICAgICAgICAgIm91dCB0eXBlIHF1YWxpZmllciB3aXRob3V0
IHZhcmlhYmxlIGRlY2xhcmF0aW9uIGlzIHN1cHBvcnRlZCBpbiBHTFNMIEVTIDMuMjAsIgorICAg
ICAgICAgICAgICAgICAgIiBvciBpZiBHTF9LSFJfYmxlbmRfZXF1YXRpb25fYWR2YW5jZWQgaXMg
ZW5hYmxlZCIsCisgICAgICAgICAgICAgICAgICAibGF5b3V0Iik7CisgICAgICAgICAgICByZXR1
cm47CisgICAgICAgIH0KKworICAgICAgICBpZiAoIWxheW91dFF1YWxpZmllci5hZHZhbmNlZEJs
ZW5kRXF1YXRpb25zLmFueSgpKQorICAgICAgICB7CisgICAgICAgICAgICBlcnJvcih0eXBlUXVh
bGlmaWVyLmxpbmUsCisgICAgICAgICAgICAgICAgICAib25seSBibGVuZCBlcXVhdGlvbnMgYXJl
IGFsbG93ZWQgYXMgbGF5b3V0IHF1YWxpZmllciB3aGVuIG5vdCBkZWNsYXJpbmcgYSAiCisgICAg
ICAgICAgICAgICAgICAidmFyaWFibGUiLAorICAgICAgICAgICAgICAgICAgImxheW91dCIpOwor
ICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CisKKyAgICAgICAgbUFkdmFuY2VkQmxlbmRF
cXVhdGlvbnMgfD0gbGF5b3V0UXVhbGlmaWVyLmFkdmFuY2VkQmxlbmRFcXVhdGlvbnM7CisgICAg
fQogICAgIGVsc2UgaWYgKHR5cGVRdWFsaWZpZXIucXVhbGlmaWVyID09IEV2cVRlc3NDb250cm9s
T3V0KQogICAgIHsKICAgICAgICAgaWYgKG1TaGFkZXJWZXJzaW9uIDwgMzEwKQpAQCAtNTI4MSwx
NSArNTMyNiw5NSBAQCBUTGF5b3V0UXVhbGlmaWVyIFRQYXJzZUNvbnRleHQ6OnBhcnNlTGF5b3V0
UXVhbGlmaWVyKGNvbnN0IEltbXV0YWJsZVN0cmluZyAmcXVhbAogICAgICAgICAgICAgZXJyb3Io
cXVhbGlmaWVyVHlwZUxpbmUsICJpbnZhbGlkIGxheW91dCBxdWFsaWZpZXIiLCBxdWFsaWZpZXJU
eXBlKTsKICAgICAgICAgfQogICAgIH0KLSAgICBlbHNlIGlmIChxdWFsaWZpZXJUeXBlID09ICJu
b25jb2hlcmVudCIgJiYgbVNoYWRlclR5cGUgPT0gR0xfRlJBR01FTlRfU0hBREVSKQorICAgIGVs
c2UgaWYgKG1TaGFkZXJUeXBlID09IEdMX0ZSQUdNRU5UX1NIQURFUikKICAgICB7Ci0gICAgICAg
IGlmIChjaGVja0NhblVzZU9uZU9mRXh0ZW5zaW9ucygKLSAgICAgICAgICAgICAgICBxdWFsaWZp
ZXJUeXBlTGluZSwgc3RkOjphcnJheTxURXh0ZW5zaW9uLCAydT57Ci0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB7VEV4dGVuc2lvbjo6RVhUX3NoYWRlcl9mcmFtZWJ1ZmZl
cl9mZXRjaCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBURXh0ZW5z
aW9uOjpFWFRfc2hhZGVyX2ZyYW1lYnVmZmVyX2ZldGNoX25vbl9jb2hlcmVudH19KSkKKyAgICAg
ICAgaWYgKHF1YWxpZmllclR5cGUgPT0gIm5vbmNvaGVyZW50IikKKyAgICAgICAgeworICAgICAg
ICAgICAgaWYgKGNoZWNrQ2FuVXNlT25lT2ZFeHRlbnNpb25zKAorICAgICAgICAgICAgICAgICAg
ICBxdWFsaWZpZXJUeXBlTGluZSwKKyAgICAgICAgICAgICAgICAgICAgc3RkOjphcnJheTxURXh0
ZW5zaW9uLCAydT57CisgICAgICAgICAgICAgICAgICAgICAgICB7VEV4dGVuc2lvbjo6RVhUX3No
YWRlcl9mcmFtZWJ1ZmZlcl9mZXRjaCwKKyAgICAgICAgICAgICAgICAgICAgICAgICBURXh0ZW5z
aW9uOjpFWFRfc2hhZGVyX2ZyYW1lYnVmZmVyX2ZldGNoX25vbl9jb2hlcmVudH19KSkKKyAgICAg
ICAgICAgIHsKKyAgICAgICAgICAgICAgICBjaGVja0xheW91dFF1YWxpZmllclN1cHBvcnRlZChx
dWFsaWZpZXJUeXBlTGluZSwgcXVhbGlmaWVyVHlwZSwgMTAwKTsKKyAgICAgICAgICAgICAgICBx
dWFsaWZpZXIubm9uY29oZXJlbnQgPSB0cnVlOworICAgICAgICAgICAgfQorICAgICAgICB9Cisg
ICAgICAgIGVsc2UgaWYgKHF1YWxpZmllclR5cGUgPT0gImJsZW5kX3N1cHBvcnRfbXVsdGlwbHki
KQorICAgICAgICB7CisgICAgICAgICAgICBBZGRBZHZhbmNlZEJsZW5kRXF1YXRpb24oZ2w6OkJs
ZW5kRXF1YXRpb25UeXBlOjpNdWx0aXBseSwgJnF1YWxpZmllcik7CisgICAgICAgIH0KKyAgICAg
ICAgZWxzZSBpZiAocXVhbGlmaWVyVHlwZSA9PSAiYmxlbmRfc3VwcG9ydF9zY3JlZW4iKQorICAg
ICAgICB7CisgICAgICAgICAgICBBZGRBZHZhbmNlZEJsZW5kRXF1YXRpb24oZ2w6OkJsZW5kRXF1
YXRpb25UeXBlOjpTY3JlZW4sICZxdWFsaWZpZXIpOworICAgICAgICB9CisgICAgICAgIGVsc2Ug
aWYgKHF1YWxpZmllclR5cGUgPT0gImJsZW5kX3N1cHBvcnRfb3ZlcmxheSIpCiAgICAgICAgIHsK
LSAgICAgICAgICAgIGNoZWNrTGF5b3V0UXVhbGlmaWVyU3VwcG9ydGVkKHF1YWxpZmllclR5cGVM
aW5lLCBxdWFsaWZpZXJUeXBlLCAxMDApOwotICAgICAgICAgICAgcXVhbGlmaWVyLm5vbmNvaGVy
ZW50ID0gdHJ1ZTsKKyAgICAgICAgICAgIEFkZEFkdmFuY2VkQmxlbmRFcXVhdGlvbihnbDo6Qmxl
bmRFcXVhdGlvblR5cGU6Ok92ZXJsYXksICZxdWFsaWZpZXIpOworICAgICAgICB9CisgICAgICAg
IGVsc2UgaWYgKHF1YWxpZmllclR5cGUgPT0gImJsZW5kX3N1cHBvcnRfZGFya2VuIikKKyAgICAg
ICAgeworICAgICAgICAgICAgQWRkQWR2YW5jZWRCbGVuZEVxdWF0aW9uKGdsOjpCbGVuZEVxdWF0
aW9uVHlwZTo6RGFya2VuLCAmcXVhbGlmaWVyKTsKKyAgICAgICAgfQorICAgICAgICBlbHNlIGlm
IChxdWFsaWZpZXJUeXBlID09ICJibGVuZF9zdXBwb3J0X2xpZ2h0ZW4iKQorICAgICAgICB7Cisg
ICAgICAgICAgICBBZGRBZHZhbmNlZEJsZW5kRXF1YXRpb24oZ2w6OkJsZW5kRXF1YXRpb25UeXBl
OjpMaWdodGVuLCAmcXVhbGlmaWVyKTsKKyAgICAgICAgfQorICAgICAgICBlbHNlIGlmIChxdWFs
aWZpZXJUeXBlID09ICJibGVuZF9zdXBwb3J0X2NvbG9yZG9kZ2UiKQorICAgICAgICB7CisgICAg
ICAgICAgICBBZGRBZHZhbmNlZEJsZW5kRXF1YXRpb24oZ2w6OkJsZW5kRXF1YXRpb25UeXBlOjpD
b2xvcmRvZGdlLCAmcXVhbGlmaWVyKTsKKyAgICAgICAgfQorICAgICAgICBlbHNlIGlmIChxdWFs
aWZpZXJUeXBlID09ICJibGVuZF9zdXBwb3J0X2NvbG9yYnVybiIpCisgICAgICAgIHsKKyAgICAg
ICAgICAgIEFkZEFkdmFuY2VkQmxlbmRFcXVhdGlvbihnbDo6QmxlbmRFcXVhdGlvblR5cGU6OkNv
bG9yYnVybiwgJnF1YWxpZmllcik7CisgICAgICAgIH0KKyAgICAgICAgZWxzZSBpZiAocXVhbGlm
aWVyVHlwZSA9PSAiYmxlbmRfc3VwcG9ydF9oYXJkbGlnaHQiKQorICAgICAgICB7CisgICAgICAg
ICAgICBBZGRBZHZhbmNlZEJsZW5kRXF1YXRpb24oZ2w6OkJsZW5kRXF1YXRpb25UeXBlOjpIYXJk
bGlnaHQsICZxdWFsaWZpZXIpOworICAgICAgICB9CisgICAgICAgIGVsc2UgaWYgKHF1YWxpZmll
clR5cGUgPT0gImJsZW5kX3N1cHBvcnRfc29mdGxpZ2h0IikKKyAgICAgICAgeworICAgICAgICAg
ICAgQWRkQWR2YW5jZWRCbGVuZEVxdWF0aW9uKGdsOjpCbGVuZEVxdWF0aW9uVHlwZTo6U29mdGxp
Z2h0LCAmcXVhbGlmaWVyKTsKKyAgICAgICAgfQorICAgICAgICBlbHNlIGlmIChxdWFsaWZpZXJU
eXBlID09ICJibGVuZF9zdXBwb3J0X2RpZmZlcmVuY2UiKQorICAgICAgICB7CisgICAgICAgICAg
ICBBZGRBZHZhbmNlZEJsZW5kRXF1YXRpb24oZ2w6OkJsZW5kRXF1YXRpb25UeXBlOjpEaWZmZXJl
bmNlLCAmcXVhbGlmaWVyKTsKKyAgICAgICAgfQorICAgICAgICBlbHNlIGlmIChxdWFsaWZpZXJU
eXBlID09ICJibGVuZF9zdXBwb3J0X2V4Y2x1c2lvbiIpCisgICAgICAgIHsKKyAgICAgICAgICAg
IEFkZEFkdmFuY2VkQmxlbmRFcXVhdGlvbihnbDo6QmxlbmRFcXVhdGlvblR5cGU6OkV4Y2x1c2lv
biwgJnF1YWxpZmllcik7CisgICAgICAgIH0KKyAgICAgICAgZWxzZSBpZiAocXVhbGlmaWVyVHlw
ZSA9PSAiYmxlbmRfc3VwcG9ydF9oc2xfaHVlIikKKyAgICAgICAgeworICAgICAgICAgICAgQWRk
QWR2YW5jZWRCbGVuZEVxdWF0aW9uKGdsOjpCbGVuZEVxdWF0aW9uVHlwZTo6SHNsSHVlLCAmcXVh
bGlmaWVyKTsKKyAgICAgICAgfQorICAgICAgICBlbHNlIGlmIChxdWFsaWZpZXJUeXBlID09ICJi
bGVuZF9zdXBwb3J0X2hzbF9zYXR1cmF0aW9uIikKKyAgICAgICAgeworICAgICAgICAgICAgQWRk
QWR2YW5jZWRCbGVuZEVxdWF0aW9uKGdsOjpCbGVuZEVxdWF0aW9uVHlwZTo6SHNsU2F0dXJhdGlv
biwgJnF1YWxpZmllcik7CisgICAgICAgIH0KKyAgICAgICAgZWxzZSBpZiAocXVhbGlmaWVyVHlw
ZSA9PSAiYmxlbmRfc3VwcG9ydF9oc2xfY29sb3IiKQorICAgICAgICB7CisgICAgICAgICAgICBB
ZGRBZHZhbmNlZEJsZW5kRXF1YXRpb24oZ2w6OkJsZW5kRXF1YXRpb25UeXBlOjpIc2xDb2xvciwg
JnF1YWxpZmllcik7CisgICAgICAgIH0KKyAgICAgICAgZWxzZSBpZiAocXVhbGlmaWVyVHlwZSA9
PSAiYmxlbmRfc3VwcG9ydF9oc2xfbHVtaW5vc2l0eSIpCisgICAgICAgIHsKKyAgICAgICAgICAg
IEFkZEFkdmFuY2VkQmxlbmRFcXVhdGlvbihnbDo6QmxlbmRFcXVhdGlvblR5cGU6OkhzbEx1bWlu
b3NpdHksICZxdWFsaWZpZXIpOworICAgICAgICB9CisgICAgICAgIGVsc2UgaWYgKHF1YWxpZmll
clR5cGUgPT0gImJsZW5kX3N1cHBvcnRfYWxsX2VxdWF0aW9ucyIpCisgICAgICAgIHsKKyAgICAg
ICAgICAgIHF1YWxpZmllci5hZHZhbmNlZEJsZW5kRXF1YXRpb25zLnNldEFsbCgpOworICAgICAg
ICB9CisgICAgICAgIGVsc2UKKyAgICAgICAgeworICAgICAgICAgICAgZXJyb3IocXVhbGlmaWVy
VHlwZUxpbmUsICJpbnZhbGlkIGxheW91dCBxdWFsaWZpZXIiLCBxdWFsaWZpZXJUeXBlKTsKKyAg
ICAgICAgfQorCisgICAgICAgIGlmIChxdWFsaWZpZXIuYWR2YW5jZWRCbGVuZEVxdWF0aW9ucy5h
bnkoKSAmJiBtU2hhZGVyVmVyc2lvbiA8IDMyMCkKKyAgICAgICAgeworICAgICAgICAgICAgaWYg
KCFjaGVja0NhblVzZUV4dGVuc2lvbihxdWFsaWZpZXJUeXBlTGluZSwgVEV4dGVuc2lvbjo6S0hS
X2JsZW5kX2VxdWF0aW9uX2FkdmFuY2VkKSkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAg
ICBxdWFsaWZpZXIuYWR2YW5jZWRCbGVuZEVxdWF0aW9ucy5yZXNldCgpOworICAgICAgICAgICAg
fQogICAgICAgICB9CiAgICAgfQogICAgIGVsc2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL3NyYy9jb21waWxlci90cmFuc2xhdG9yL1BhcnNlQ29udGV4dC5oIGIvU291cmNl
L1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvUGFyc2VDb250ZXh0LmgK
aW5kZXggMzU0YWNjOWRjYmQxZjYzMzllYjIzNWQ3ZTBlYmRhNzZiZmI2MzM3OS4uODA1NzY5Nzkz
ZGNjYTVmNDU0MzI5MTVmOWY4MzY5MTUyNzE2ZTliZCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvUGFyc2VDb250ZXh0LmgKKysrIGIv
U291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvUGFyc2VDb250
ZXh0LmgKQEAgLTE5Miw2ICsxOTIsMTIgQEAgY2xhc3MgVFBhcnNlQ29udGV4dCA6IGFuZ2xlOjpO
b25Db3B5YWJsZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0
IFRTb3VyY2VMb2MgJnF1YWxpZmllckxvY2F0aW9uKTsKICAgICB2b2lkIGNoZWNrTG9jYWxWYXJp
YWJsZUNvbnN0U3RvcmFnZVF1YWxpZmllcihjb25zdCBUUXVhbGlmaWVyV3JhcHBlckJhc2UgJnF1
YWxpZmllcik7CiAgICAgdm9pZCBjaGVja1RDU091dFZhckluZGV4SXNWYWxpZChUSW50ZXJtQmlu
YXJ5ICpiaW5hcnlFeHByZXNzaW9uLCBjb25zdCBUU291cmNlTG9jICZsb2NhdGlvbik7CisKKyAg
ICB2b2lkIGNoZWNrQWR2YW5jZWRCbGVuZEVxdWF0aW9uc05vdFNwZWNpZmllZCgKKyAgICAgICAg
Y29uc3QgVFNvdXJjZUxvYyAmbG9jYXRpb24sCisgICAgICAgIGNvbnN0IEFkdmFuY2VkQmxlbmRF
cXVhdGlvbnMgJmFkdmFuY2VkQmxlbmRFcXVhdGlvbnMsCisgICAgICAgIGNvbnN0IFRRdWFsaWZp
ZXIgJnF1YWxpZmllcik7CisKICAgICBjb25zdCBUUHJhZ21hICZwcmFnbWEoKSBjb25zdCB7IHJl
dHVybiBtRGlyZWN0aXZlSGFuZGxlci5wcmFnbWEoKTsgfQogICAgIGNvbnN0IFRFeHRlbnNpb25C
ZWhhdmlvciAmZXh0ZW5zaW9uQmVoYXZpb3IoKSBjb25zdAogICAgIHsKQEAgLTQ5NSw2ICs1MDEs
NyBAQCBjbGFzcyBUUGFyc2VDb250ZXh0IDogYW5nbGU6Ok5vbkNvcHlhYmxlCiAKICAgICB2b2lk
IG1hcmtTaGFkZXJIYXNQcmVjaXNlKCkgeyBtSGFzQW55UHJlY2lzZVR5cGUgPSB0cnVlOyB9CiAg
ICAgYm9vbCBoYXNBbnlQcmVjaXNlVHlwZSgpIGNvbnN0IHsgcmV0dXJuIG1IYXNBbnlQcmVjaXNl
VHlwZTsgfQorICAgIEFkdmFuY2VkQmxlbmRFcXVhdGlvbnMgZ2V0QWR2YW5jZWRCbGVuZEVxdWF0
aW9ucygpIGNvbnN0IHsgcmV0dXJuIG1BZHZhbmNlZEJsZW5kRXF1YXRpb25zOyB9CiAKICAgICBT
aFNoYWRlck91dHB1dCBnZXRPdXRwdXRUeXBlKCkgY29uc3QgeyByZXR1cm4gbU91dHB1dFR5cGU7
IH0KIApAQCAtNzM1LDYgKzc0Miw4IEBAIGNsYXNzIFRQYXJzZUNvbnRleHQgOiBhbmdsZTo6Tm9u
Q29weWFibGUKICAgICAvLyBXaGV0aGVyIHRoZSB8cHJlY2lzZXwga2V5d29yZCBoYXMgYmVlbiBz
ZWVuIGluIHRoZSBzaGFkZXIuCiAgICAgYm9vbCBtSGFzQW55UHJlY2lzZVR5cGU7CiAKKyAgICBB
ZHZhbmNlZEJsZW5kRXF1YXRpb25zIG1BZHZhbmNlZEJsZW5kRXF1YXRpb25zOworCiAgICAgLy8g
VHJhY2sgd2hlbiB3ZSBhZGQgbmV3IHNjb3BlIGZvciBmdW5jIGJvZHkgaW4gRVNTTCAxLjAwIHNw
ZWMKICAgICBib29sIG1GdW5jdGlvbkJvZHlOZXdTY29wZTsKIApkaWZmIC0tZ2l0IGEvU291cmNl
L1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvUXVhbGlmaWVyVHlwZXMu
Y3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvUXVh
bGlmaWVyVHlwZXMuY3BwCmluZGV4IDBhOTI4YmFkNDNmMzQ2YWJmNmE4ZmYyYmU4YTJlYTljZTIx
NDMxMmMuLjgxNDI5OGRjNmFmZDU5MWJkYzRiNWYwMjc2MWYzY2Y4ZDEwNTExZmYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci90cmFuc2xhdG9yL1F1YWxp
ZmllclR5cGVzLmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tcGlsZXIv
dHJhbnNsYXRvci9RdWFsaWZpZXJUeXBlcy5jcHAKQEAgLTg1Myw2ICs4NTMsMTEgQEAgVExheW91
dFF1YWxpZmllciBKb2luTGF5b3V0UXVhbGlmaWVycyhUTGF5b3V0UXVhbGlmaWVyIGxlZnRRdWFs
aWZpZXIsCiAgICAgICAgIGpvaW5lZFF1YWxpZmllci5pbmRleCA9IHJpZ2h0UXVhbGlmaWVyLmlu
ZGV4OwogICAgIH0KIAorICAgIGlmIChyaWdodFF1YWxpZmllci5hZHZhbmNlZEJsZW5kRXF1YXRp
b25zLmFueSgpKQorICAgIHsKKyAgICAgICAgam9pbmVkUXVhbGlmaWVyLmFkdmFuY2VkQmxlbmRF
cXVhdGlvbnMgfD0gcmlnaHRRdWFsaWZpZXIuYWR2YW5jZWRCbGVuZEVxdWF0aW9uczsKKyAgICB9
CisKICAgICByZXR1cm4gam9pbmVkUXVhbGlmaWVyOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci9TaGFkZXJMYW5nLmNwcCBi
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci90cmFuc2xhdG9yL1NoYWRlckxh
bmcuY3BwCmluZGV4IDRhZjA0NTI4MzI3YmYxZjdmYzk5MzJlZWM3MDI4ODE0OWI2OWYzYzcuLjk2
YTczYjM3ZDMxNzJkYjA4ZjdlZGJhODRlOWY4MzRjOTkwOWE4N2MgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci90cmFuc2xhdG9yL1NoYWRlckxhbmcuY3Bw
CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci90cmFuc2xhdG9yL1No
YWRlckxhbmcuY3BwCkBAIC0yMzMsNiArMjMzLDcgQEAgdm9pZCBJbml0QnVpbHRJblJlc291cmNl
cyhTaEJ1aWx0SW5SZXNvdXJjZXMgKnJlc291cmNlcykKICAgICByZXNvdXJjZXMtPkVYVF90ZXh0
dXJlX2J1ZmZlciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPSAwOwogICAgIHJlc291cmNl
cy0+T0VTX3NhbXBsZV92YXJpYWJsZXMgICAgICAgICAgICAgICAgICAgICAgICAgICA9IDA7CiAg
ICAgcmVzb3VyY2VzLT5FWFRfY2xpcF9jdWxsX2Rpc3RhbmNlICAgICAgICAgICAgICAgICAgICAg
ICAgID0gMDsKKyAgICByZXNvdXJjZXMtPktIUl9ibGVuZF9lcXVhdGlvbl9hZHZhbmNlZCAgICAg
ICAgICAgICAgICAgICAgPSAwOwogCiAgICAgcmVzb3VyY2VzLT5NYXhDbGlwRGlzdGFuY2VzICAg
ICAgICAgICAgICAgID0gODsKICAgICByZXNvdXJjZXMtPk1heEN1bGxEaXN0YW5jZXMgICAgICAg
ICAgICAgICAgPSA4OwpAQCAtOTI1LDYgKzkyNiwxNCBAQCB1bnNpZ25lZCBpbnQgR2V0U2hhZGVy
U2hhcmVkTWVtb3J5U2l6ZShjb25zdCBTaEhhbmRsZSBoYW5kbGUpCiAgICAgcmV0dXJuIHNoYXJl
ZE1lbW9yeVNpemU7CiB9CiAKK3VpbnQzMl90IEdldEFkdmFuY2VkQmxlbmRFcXVhdGlvbnMoY29u
c3QgU2hIYW5kbGUgaGFuZGxlKQoreworICAgIFRDb21waWxlciAqY29tcGlsZXIgPSBHZXRDb21w
aWxlckZyb21IYW5kbGUoaGFuZGxlKTsKKyAgICBBU1NFUlQoY29tcGlsZXIpOworCisgICAgcmV0
dXJuIGNvbXBpbGVyLT5nZXRBZHZhbmNlZEJsZW5kRXF1YXRpb25zKCkuYml0cygpOworfQorCiB2
b2lkIEluaXRpYWxpemVHbHNsYW5nKCkKIHsKICAgICBpZiAoaW5pdGlhbGl6ZUdsc2xhbmdSZWZD
b3VudCA9PSAwKQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbXBp
bGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0L0FzdEhlbHBlcnMuY3BwIGIvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1l
dGFsRGlyZWN0L0FzdEhlbHBlcnMuY3BwCmluZGV4IGJiM2QyNzc5ZDc3ZDZhNTdjODE5NWNiZjIz
YzBjZDliM2VkYmMxZTYuLmQ2NDk2OWY0NDIwNjU0N2Y0N2ZkOWE0YTNlYTVmODI0NzJjNzI4Yzcg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci90cmFuc2xh
dG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC9Bc3RIZWxwZXJzLmNwcAorKysgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJl
Y3QvQXN0SGVscGVycy5jcHAKQEAgLTEzNSw2ICsxMzUsMjkgQEAgY29uc3QgVEZ1bmN0aW9uICZz
aDo6Q2xvbmVGdW5jdGlvbkFuZFByZXBlbmRQYXJhbShUU3ltYm9sVGFibGUgJnN5bWJvbFRhYmxl
LAogICAgIHJldHVybiBuZXdGdW5jOwogfQogCitjb25zdCBURnVuY3Rpb24gJnNoOjpDbG9uZUZ1
bmN0aW9uQW5kUHJlcGVuZFR3b1BhcmFtcyhUU3ltYm9sVGFibGUgJnN5bWJvbFRhYmxlLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSWRHZW4g
KmlkR2VuLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgY29uc3QgVEZ1bmN0aW9uICZvbGRGdW5jLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgVFZhcmlhYmxlICZuZXdQYXJhbTEs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBj
b25zdCBUVmFyaWFibGUgJm5ld1BhcmFtMikKK3sKKyAgICBBU1NFUlQob2xkRnVuYy5zeW1ib2xU
eXBlKCkgPT0gU3ltYm9sVHlwZTo6VXNlckRlZmluZWQgfHwKKyAgICAgICAgICAgb2xkRnVuYy5z
eW1ib2xUeXBlKCkgPT0gU3ltYm9sVHlwZTo6QW5nbGVJbnRlcm5hbCk7CisKKyAgICBOYW1lIG5l
d05hbWUgPSBpZEdlbiA/IGlkR2VuLT5jcmVhdGVOZXdOYW1lKE5hbWUob2xkRnVuYykpIDogTmFt
ZShvbGRGdW5jKTsKKworICAgIFRGdW5jdGlvbiAmbmV3RnVuYyA9CisgICAgICAgICpuZXcgVEZ1
bmN0aW9uKCZzeW1ib2xUYWJsZSwgbmV3TmFtZS5yYXdOYW1lKCksIG5ld05hbWUuc3ltYm9sVHlw
ZSgpLAorICAgICAgICAgICAgICAgICAgICAgICAmb2xkRnVuYy5nZXRSZXR1cm5UeXBlKCksIG9s
ZEZ1bmMuaXNLbm93blRvTm90SGF2ZVNpZGVFZmZlY3RzKCkpOworCisgICAgQWNxdWlyZUZ1bmN0
aW9uRXh0cmFzKG5ld0Z1bmMsIG9sZEZ1bmMpOworICAgIG5ld0Z1bmMuYWRkUGFyYW1ldGVyKCZu
ZXdQYXJhbTEpOworICAgIG5ld0Z1bmMuYWRkUGFyYW1ldGVyKCZuZXdQYXJhbTIpOworICAgIEFk
ZFBhcmFtZXRlcnNGcm9tKG5ld0Z1bmMsIG9sZEZ1bmMpOworCisgICAgcmV0dXJuIG5ld0Z1bmM7
Cit9CisKIGNvbnN0IFRGdW5jdGlvbiAmc2g6OkNsb25lRnVuY3Rpb25BbmRBcHBlbmRQYXJhbXMo
VFN5bWJvbFRhYmxlICZzeW1ib2xUYWJsZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgSWRHZW4gKmlkR2VuLAogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBURnVuY3Rpb24gJm9sZEZ1bmMsCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tcGlsZXIvdHJhbnNsYXRv
ci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QvQXN0SGVscGVycy5oIGIvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0L0FzdEhl
bHBlcnMuaAppbmRleCBiZWYwM2YwMDhmZDIyYTQyMmU1ZWQzMzZhY2IyMzdjYTI4Yzk4OTkwLi5l
MjY3ZmRmZTQ5MDU1ZTQ5YWYzMzhkODEzZDQwOWYxYjViYzgwMWNiIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0
YWxEaXJlY3QvQXN0SGVscGVycy5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9j
b21waWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC9Bc3RIZWxwZXJzLmgKQEAg
LTU0LDYgKzU0LDE0IEBAIGNvbnN0IFRGdW5jdGlvbiAmQ2xvbmVGdW5jdGlvbkFuZFByZXBlbmRQ
YXJhbShUU3ltYm9sVGFibGUgJnN5bWJvbFRhYmxlLAogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFRGdW5jdGlvbiAmb2xkRnVuYywKICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBUVmFyaWFibGUgJm5l
d1BhcmFtKTsKIAorLy8gQ2xvbmVzIGEgZnVuY3Rpb24gYW5kIHByZXBlbmRzIHRoZSBwcm92aWRl
ZCB0d28gcGFyYW1ldGVycy4KKy8vIElmIGBpZEdlbmAgaXMgbnVsbCwgdGhlIG9yaWdpbmFsIGZ1
bmN0aW9uIG11c3QgYmUgZGlzY2FyZGVkIGZyb20gdGhlIEFTVC4KK2NvbnN0IFRGdW5jdGlvbiAm
Q2xvbmVGdW5jdGlvbkFuZFByZXBlbmRUd29QYXJhbXMoVFN5bWJvbFRhYmxlICZzeW1ib2xUYWJs
ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSWRH
ZW4gKmlkR2VuLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBjb25zdCBURnVuY3Rpb24gJm9sZEZ1bmMsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFRWYXJpYWJsZSAmbmV3UGFyYW0xLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBUVmFy
aWFibGUgJm5ld1BhcmFtMik7CisKIC8vIENsb25lcyBhIGZ1bmN0aW9uIGFuZCBhcHBlbmRzIHRo
ZSBwcm92aWRlZCBleHRyYSBwYXJhbWV0ZXJzLgogLy8gSWYgYGlkR2VuYCBpcyBudWxsLCB0aGUg
b3JpZ2luYWwgZnVuY3Rpb24gbXVzdCBiZSBkaXNjYXJkZWQgZnJvbSB0aGUgQVNULgogY29uc3Qg
VEZ1bmN0aW9uICZDbG9uZUZ1bmN0aW9uQW5kQXBwZW5kUGFyYW1zKFRTeW1ib2xUYWJsZSAmc3lt
Ym9sVGFibGUsCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tcGls
ZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QvRW1pdE1ldGFsLmNwcCBiL1NvdXJj
ZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRh
bERpcmVjdC9FbWl0TWV0YWwuY3BwCmluZGV4IDI1YzkxMWU3NjZmMzI4MTJjODBiNjliNWY5YjNk
OTViM2Y4ZjUyMWEuLjhmOWExM2JmYTI2MWVkZjA4OTkzYmM3YzdmYjVkY2FmOTNhNTA0OWEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci90cmFuc2xhdG9y
L1RyYW5zbGF0b3JNZXRhbERpcmVjdC9FbWl0TWV0YWwuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL3NyYy9jb21waWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC9F
bWl0TWV0YWwuY3BwCkBAIC0xODM5LDYgKzE4MzksMTAgQEAgdm9pZCBHZW5NZXRhbFRyYXZlcnNl
cjo6ZW1pdEZ1bmN0aW9uUGFyYW1ldGVyKGNvbnN0IFRGdW5jdGlvbiAmZnVuYywgY29uc3QgVFZh
cmkKICAgICAgICAgewogICAgICAgICAgICAgbU91dCA8PCAiIFtbaW5zdGFuY2VfaWRdXSI7CiAg
ICAgICAgIH0KKyAgICAgICAgZWxzZSBpZiAoTmFtZShwYXJhbSkgPT0ga0Jhc2VJbnN0YW5jZU5h
bWUpCisgICAgICAgIHsKKyAgICAgICAgICAgIG1PdXQgPDwgIiBbW2Jhc2VfaW5zdGFuY2VdXSI7
CisgICAgICAgIH0KICAgICB9CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FO
R0xFL3NyYy9jb21waWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC9OYW1lLmgg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xh
dG9yTWV0YWxEaXJlY3QvTmFtZS5oCmluZGV4IGQ2ZWFlYThiNDdiYWY5NDIxZWQ1NDA3MzAxMWY5
Y2I1YjUwODUwNjAuLjZkM2FhYjU2YjU3MjhiMmRjNjEyOTA5ODllYzg4NjE3Yzg2ZjMxM2UgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci90cmFuc2xhdG9y
L1RyYW5zbGF0b3JNZXRhbERpcmVjdC9OYW1lLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0L05hbWUuaApA
QCAtNjEsNiArNjEsOCBAQCBjbGFzcyBOYW1lCiAgICAgU3ltYm9sVHlwZSBtU3ltYm9sVHlwZTsK
IH07CiAKK2NvbnN0ZXhwciBOYW1lIGtCYXNlSW5zdGFuY2VOYW1lID0gTmFtZSgiYmFzZUluc3Rh
bmNlIik7CisKIEFOR0xFX05PX0RJU0NBUkQgYm9vbCBFeHByZXNzaW9uQ29udGFpbnNOYW1lKGNv
bnN0IE5hbWUgJm5hbWUsIFRJbnRlcm1UeXBlZCAmbm9kZSk7CiAKIH0gIC8vIG5hbWVzcGFjZSBz
aApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3RyYW5z
bGF0b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0L1BpcGVsaW5lLmggYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QvUGlw
ZWxpbmUuaAppbmRleCBkMTkyYWRjNWIzYjhiOTk2NTM4NjllOWY1ZThjNzFjOWE2YmRjODNjLi5l
MDcxYjMzZWYyODBlYWE2YTJjZTJkOTUxYjQwMTkxNWFmZTBiOWUyIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0
YWxEaXJlY3QvUGlwZWxpbmUuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29t
cGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QvUGlwZWxpbmUuaApAQCAtMjMs
NiArMjMsMTAgQEAgc3RydWN0IFBpcGVsaW5lU2NvcGVkCiAgICAgLy8gTWF5IGNvaW5jaWRlIHdp
dGggYGludGVybmFsYCwgYnV0IG1heSBhbHNvIGRpdmVyZ2UgZnJvbSBgaW50ZXJuYWxgLgogICAg
IGNvbnN0IFQgKmV4dGVybmFsID0gbnVsbHB0cjsKIAorICAgIC8vIEV4dHJhIGRhdGEgdGhhdCBp
cyBjb25maWd1cmVkIHRvIHRhbGsgZXh0ZXJuYWxseSB0byB0aGUgcHJvZ3JhbS4KKyAgICAvLyBV
c2VkIG9ubHkgZm9yIGFkanVzdGluZyBNZXRhbCdzIEluc3RhbmNlSWQuCisgICAgY29uc3QgVCAq
ZXh0ZXJuYWxFeHRyYSA9IG51bGxwdHI7CisKICAgICAvLyBEYXRhIHRoYXQgaXMgY29uZmlndXJl
ZCB0byB0YWxrIGludGVybmFsbHkgd2l0aGluIHRoZSBwcm9ncmFtLgogICAgIC8vIE1heSBjb2lu
Y2lkZSB3aXRoIGBleHRlcm5hbGAsIGJ1dCBtYXkgYWxzbyBkaXZlcmdlIGZyb20gYGV4dGVybmFs
YC4KICAgICBjb25zdCBUICppbnRlcm5hbCA9IG51bGxwdHI7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxE
aXJlY3QvUmV3cml0ZVBpcGVsaW5lcy5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
Y29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QvUmV3cml0ZVBpcGVsaW5l
cy5jcHAKaW5kZXggMTIyNzI3MDczZDZkNmUzNWNjYjRhZDY5NTU3ZGIyNGZlMzZmNDI4Mi4uY2Qw
N2QwNjdiY2QxMDIyMDc1ZWM0ZGEwMTVkNzhmNGVjYmFhM2E1MCAxMDA2NDQKLS0tIGEvU291cmNl
L1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFs
RGlyZWN0L1Jld3JpdGVQaXBlbGluZXMuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy9jb21waWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC9SZXdyaXRlUGlw
ZWxpbmVzLmNwcApAQCAtNDM0LDExICs0MzQsMTkgQEAgY2xhc3MgUGlwZWxpbmVGdW5jdGlvbkVu
dgogICAgICAgICAgICAgfQogICAgICAgICAgICAgZWxzZSBpZiAoaXNNYWluICYmIG1QaXBlbGlu
ZS50eXBlID09IFBpcGVsaW5lOjpUeXBlOjpJbnN0YW5jZUlkKQogICAgICAgICAgICAgewotICAg
ICAgICAgICAgICAgIE5hbWUgbmFtZSA9IG1QaXBlbGluZS5nZXRTdHJ1Y3RJbnN0YW5jZU5hbWUo
UGlwZWxpbmU6OlZhcmlhbnQ6Ok1vZGlmaWVkKTsKLSAgICAgICAgICAgICAgICBhdXRvICp2YXIg
PSBuZXcgVFZhcmlhYmxlKCZtU3ltYm9sVGFibGUsIG5hbWUucmF3TmFtZSgpLAotICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmV3IFRUeXBlKFRCYXNpY1R5cGU6OkVi
dFVJbnQpLCBuYW1lLnN5bWJvbFR5cGUoKSk7Ci0gICAgICAgICAgICAgICAgbmV3RnVuYyAgID0g
JkNsb25lRnVuY3Rpb25BbmRQcmVwZW5kUGFyYW0obVN5bWJvbFRhYmxlLCBudWxscHRyLCBmdW5j
LCAqdmFyKTsKLSAgICAgICAgICAgICAgICBtUGlwZWxpbmVNYWluTG9jYWxWYXIuZXh0ZXJuYWwg
PSB2YXI7CisgICAgICAgICAgICAgICAgTmFtZSBpbnN0YW5jZUlkTmFtZSA9IG1QaXBlbGluZS5n
ZXRTdHJ1Y3RJbnN0YW5jZU5hbWUoUGlwZWxpbmU6OlZhcmlhbnQ6Ok1vZGlmaWVkKTsKKyAgICAg
ICAgICAgICAgICBhdXRvICppbnN0YW5jZUlkVmFyID0KKyAgICAgICAgICAgICAgICAgICAgbmV3
IFRWYXJpYWJsZSgmbVN5bWJvbFRhYmxlLCBpbnN0YW5jZUlkTmFtZS5yYXdOYW1lKCksCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmV3IFRUeXBlKFRCYXNpY1R5cGU6OkVidFVJ
bnQpLCBpbnN0YW5jZUlkTmFtZS5zeW1ib2xUeXBlKCkpOworCisgICAgICAgICAgICAgICAgYXV0
byAqYmFzZUluc3RhbmNlVmFyID0KKyAgICAgICAgICAgICAgICAgICAgbmV3IFRWYXJpYWJsZSgm
bVN5bWJvbFRhYmxlLCBrQmFzZUluc3RhbmNlTmFtZS5yYXdOYW1lKCksCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgbmV3IFRUeXBlKFRCYXNpY1R5cGU6OkVidFVJbnQpLCBrQmFz
ZUluc3RhbmNlTmFtZS5zeW1ib2xUeXBlKCkpOworCisgICAgICAgICAgICAgICAgbmV3RnVuYyA9
ICZDbG9uZUZ1bmN0aW9uQW5kUHJlcGVuZFR3b1BhcmFtcyhtU3ltYm9sVGFibGUsIG51bGxwdHIs
IGZ1bmMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAqaW5zdGFuY2VJZFZhciwgKmJhc2VJbnN0YW5jZVZhcik7CisgICAgICAgICAg
ICAgICAgbVBpcGVsaW5lTWFpbkxvY2FsVmFyLmV4dGVybmFsICAgICAgPSBpbnN0YW5jZUlkVmFy
OworICAgICAgICAgICAgICAgIG1QaXBlbGluZU1haW5Mb2NhbFZhci5leHRlcm5hbEV4dHJhID0g
YmFzZUluc3RhbmNlVmFyOwogICAgICAgICAgICAgfQogICAgICAgICAgICAgZWxzZSBpZiAoaXNN
YWluICYmIG1QaXBlbGluZS5hbHdheXNSZXF1aXJlc0xvY2FsVmFyaWFibGVEZWNsYXJhdGlvbklu
TWFpbigpKQogICAgICAgICAgICAgewpAQCAtNjMwLDYgKzYzOCwyMCBAQCBjbGFzcyBVcGRhdGVQ
aXBlbGluZUZ1bmN0aW9ucyA6IHByaXZhdGUgVEludGVybVJlYnVpbGQKICAgICAgICAgfQogICAg
IH0KIAorICAgIGNvbnN0IFRWYXJpYWJsZSAmZ2V0RXh0ZXJuYWxFeHRyYVBpcGVsaW5lVmFyaWFi
bGUoY29uc3QgVEZ1bmN0aW9uICZtYWluRnVuYykKKyAgICB7CisgICAgICAgIEFTU0VSVChtYWlu
RnVuYy5pc01haW4oKSk7CisgICAgICAgIGlmIChtUGlwZWxpbmVNYWluTG9jYWxWYXIuZXh0ZXJu
YWxFeHRyYSkKKyAgICAgICAgeworICAgICAgICAgICAgcmV0dXJuICptUGlwZWxpbmVNYWluTG9j
YWxWYXIuZXh0ZXJuYWxFeHRyYTsKKyAgICAgICAgfQorICAgICAgICBlbHNlCisgICAgICAgIHsK
KyAgICAgICAgICAgIEFTU0VSVChtYWluRnVuYy5nZXRQYXJhbUNvdW50KCkgPiAxKTsKKyAgICAg
ICAgICAgIHJldHVybiAqbWFpbkZ1bmMuZ2V0UGFyYW0oMSk7CisgICAgICAgIH0KKyAgICB9CisK
ICAgICBQb3N0UmVzdWx0IHZpc2l0QWdncmVnYXRlUG9zdChUSW50ZXJtQWdncmVnYXRlICZjYWxs
Tm9kZSkgb3ZlcnJpZGUKICAgICB7CiAgICAgICAgIGlmIChjYWxsTm9kZS5pc0NvbnN0cnVjdG9y
KCkpCkBAIC04MTEsMTEgKzgzMywxNSBAQCBjbGFzcyBVcGRhdGVQaXBlbGluZUZ1bmN0aW9ucyA6
IHByaXZhdGUgVEludGVybVJlYnVpbGQKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGVsc2Ug
aWYgKG1QaXBlbGluZS50eXBlID09IFBpcGVsaW5lOjpUeXBlOjpJbnN0YW5jZUlkKQogICAgICAg
ICAgICAgeworICAgICAgICAgICAgICAgIGF1dG8gdmFySW5zdGFuY2VJZCAgID0gbmV3IFRJbnRl
cm1TeW1ib2woJmdldEV4dGVybmFsUGlwZWxpbmVWYXJpYWJsZShmdW5jKSk7CisgICAgICAgICAg
ICAgICAgYXV0byB2YXJCYXNlSW5zdGFuY2UgPSBuZXcgVEludGVybVN5bWJvbCgmZ2V0RXh0ZXJu
YWxFeHRyYVBpcGVsaW5lVmFyaWFibGUoZnVuYykpOworCiAgICAgICAgICAgICAgICAgbmV3Qm9k
eS0+YXBwZW5kU3RhdGVtZW50KG5ldyBUSW50ZXJtQmluYXJ5KAogICAgICAgICAgICAgICAgICAg
ICBUT3BlcmF0b3I6OkVPcEFzc2lnbiwKICAgICAgICAgICAgICAgICAgICAgJkFjY2Vzc0ZpZWxk
QnlJbmRleCgqbmV3IFRJbnRlcm1TeW1ib2woJmdldEludGVybmFsUGlwZWxpbmVWYXJpYWJsZShm
dW5jKSksIDApLAotICAgICAgICAgICAgICAgICAgICAmQXNUeXBlKG1TeW1ib2xFbnYsICpuZXcg
VFR5cGUoVEJhc2ljVHlwZTo6RWJ0SW50KSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAq
bmV3IFRJbnRlcm1TeW1ib2woJmdldEV4dGVybmFsUGlwZWxpbmVWYXJpYWJsZShmdW5jKSkpKSk7
CisgICAgICAgICAgICAgICAgICAgICZBc1R5cGUoCisgICAgICAgICAgICAgICAgICAgICAgICBt
U3ltYm9sRW52LCAqbmV3IFRUeXBlKFRCYXNpY1R5cGU6OkVidEludCksCisgICAgICAgICAgICAg
ICAgICAgICAgICAqbmV3IFRJbnRlcm1CaW5hcnkoVE9wZXJhdG9yOjpFT3BTdWIsIHZhckluc3Rh
bmNlSWQsIHZhckJhc2VJbnN0YW5jZSkpKSk7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBl
bHNlIGlmICghbVBpcGVsaW5lTWFpbkxvY2FsVmFyLmlzVW5pZm9ybSgpKQogICAgICAgICAgICAg
ewpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3RyYW5z
bGF0b3IvZ2VuZXJhdGVfcGFyc2VyLnB5IGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2Nv
bXBpbGVyL3RyYW5zbGF0b3IvZ2VuZXJhdGVfcGFyc2VyLnB5CmluZGV4IGIxYTcwNzlhYzM5MjQz
ZTdiNWVhYTBlZmQ0M2NlZTZlY2U4NWYwZWIuLjA2OWQ3YTI3ZWEyZDA1NjJjODllNzg2ODQ1MGE4
ZjljMTI0ZGU5NzYgMTAwNzU1Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21w
aWxlci90cmFuc2xhdG9yL2dlbmVyYXRlX3BhcnNlci5weQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci9nZW5lcmF0ZV9wYXJzZXIucHkKQEAgLTEs
NCArMSw0IEBACi0jIS91c3IvYmluL3B5dGhvbgorIyEvdXNyL2Jpbi9weXRob24zCiAjIENvcHly
aWdodCAyMDE5IFRoZSBBTkdMRSBQcm9qZWN0IEF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CiAjIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlIGxp
Y2Vuc2UgdGhhdCBjYW4gYmUKICMgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KZGlmZiAtLWdp
dCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci90cmFuc2xhdG9yL2dsc2xh
bmcubCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci90cmFuc2xhdG9yL2ds
c2xhbmcubAppbmRleCAxNzU1Y2RlMGIwZTgzMDU0ZDY1OGI3MjBjYjJiMThjMDY4MGJhMjNjLi4x
ODY2MDA0MGVkYmVhMWZlYmFkMzNmNzdhMWQwOTI1Nzg1YTIwMjQyIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci9nbHNsYW5nLmwKKysr
IGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvZ2xzbGFu
Zy5sCkBAIC05Niw3ICs5Niw3IEBAIHN0YXRpYyBib29sIGlzX2V4dGVuc2lvbl9lbmFibGVkX29y
X2lzX2NvcmUoVFBhcnNlQ29udGV4dCAqY29udGV4dCwKIC8vIHdoaWNoIG1lYW5zIGluIHZlcnNp
b24gVjEsIHRoZSBzeW1ib2wgaXMgcmVzZXJ2ZWQsIGFuZCByZW1haW5zIHJlc2VydmVkIHVudGls
IFYzLiAgRnJvbSB2ZXJzaW9ucwogLy8gVjIgdW50aWwgVjMsIGl0J3MgYSBrZXl3b3JkIGlmIHRo
ZSBleHRlbnNpb24gaXMgZW5hYmxlZC4gIEZyb20gdmVyc2lvbiBWMyBvbiwgaXQncyBhIGtleXdv
cmQgaW4KIC8vIHRoZSBzcGVjIGl0c2VsZi4gIFByaW9yIHRvIFYxLCB0aGUgc3ltYm9sIGNhbiBi
ZSB1c2VkIGFzIGlkZW50aWZpZXIuCi1zdGF0aWMgaW50IEVTMl9leHRlbnNpb25fMl9FUzNfa2V5
d29yZChUUGFyc2VDb250ZXh0ICpjb250ZXh0LCBURXh0ZW5zaW9uIGV4dGVuc2lvbjEsIFRFeHRl
bnNpb24gZXh0ZW5zaW9uMiwgaW50IHRva2VuKTsKK3N0YXRpYyBpbnQgRVMyX2V4dGVuc2lvbnNf
RVMzX2tleXdvcmQoVFBhcnNlQ29udGV4dCAqY29udGV4dCwgVEV4dGVuc2lvbiBleHRlbnNpb24x
LCBURXh0ZW5zaW9uIGV4dGVuc2lvbjIsIFRFeHRlbnNpb24gZXh0ZW5zaW9uMywgaW50IHRva2Vu
KTsKIHN0YXRpYyBpbnQgRVMyX3Jlc2VydmVkX0VTM19rZXl3b3JkKFRQYXJzZUNvbnRleHQgKmNv
bnRleHQsIGludCB0b2tlbik7CiBzdGF0aWMgaW50IEVTMl9rZXl3b3JkX0VTM19yZXNlcnZlZChU
UGFyc2VDb250ZXh0ICpjb250ZXh0LCBpbnQgdG9rZW4pOwogc3RhdGljIGludCBFUzNfa2V5d29y
ZChUUGFyc2VDb250ZXh0ICpjb250ZXh0LCBpbnQgdG9rZW4pOwpAQCAtMjQ3LDcgKzI0Nyw3IEBA
IE8gICAgICAgICAgIFswLTddCiAic2FtcGxlclZpZGVvV0VCR0wiICAgIHsgcmV0dXJuIFdFQkdM
X3ZpZGVvX3RleHR1cmVfZXh0ZW5zaW9uKGNvbnRleHQsIFNBTVBMRVJWSURFT1dFQkdMKTsgfQog
InN0cnVjdCIgICAgICAgeyByZXR1cm4gU1RSVUNUOyB9CiAKLSJsYXlvdXQiICB7IHJldHVybiBF
UzJfZXh0ZW5zaW9uXzJfRVMzX2tleXdvcmQoY29udGV4dCwgVEV4dGVuc2lvbjo6RVhUX3NoYWRl
cl9mcmFtZWJ1ZmZlcl9mZXRjaCwgVEV4dGVuc2lvbjo6RVhUX3NoYWRlcl9mcmFtZWJ1ZmZlcl9m
ZXRjaF9ub25fY29oZXJlbnQsIExBWU9VVCk7IH0KKyJsYXlvdXQiICB7IHJldHVybiBFUzJfZXh0
ZW5zaW9uc19FUzNfa2V5d29yZChjb250ZXh0LCBURXh0ZW5zaW9uOjpFWFRfc2hhZGVyX2ZyYW1l
YnVmZmVyX2ZldGNoLCBURXh0ZW5zaW9uOjpFWFRfc2hhZGVyX2ZyYW1lYnVmZmVyX2ZldGNoX25v
bl9jb2hlcmVudCwgVEV4dGVuc2lvbjo6S0hSX2JsZW5kX2VxdWF0aW9uX2FkdmFuY2VkLCBMQVlP
VVQpOyB9CiAKICJ5dXZDc2NTdGFuZGFyZEVYVCIgICAgeyByZXR1cm4gRVMzX2V4dGVuc2lvbihj
b250ZXh0LCBURXh0ZW5zaW9uOjpFWFRfWVVWX3RhcmdldCwgWVVWQ1NDU1RBTkRBUkRFWFQpOyB9
CiAiaXR1XzYwMSIgICAgICAgICAgICAgIHsgcmV0dXJuIHl1dmNzY3N0YW5kYXJkZXh0X2NvbnN0
YW50KGNvbnRleHQpOyB9CkBAIC02MTIsNyArNjEyLDcgQEAgaW50IFdFQkdMX3ZpZGVvX3RleHR1
cmVfZXh0ZW5zaW9uKFRQYXJzZUNvbnRleHQgKmNvbnRleHQsIGludCB0b2tlbikKICAgICByZXR1
cm4gY2hlY2tfdHlwZSh5eXNjYW5uZXIpOwogfQogCi1pbnQgRVMyX2V4dGVuc2lvbl8yX0VTM19r
ZXl3b3JkKFRQYXJzZUNvbnRleHQgKmNvbnRleHQsIFRFeHRlbnNpb24gZXh0ZW5zaW9uMSwgVEV4
dGVuc2lvbiBleHRlbnNpb24yLCBpbnQgdG9rZW4pCitpbnQgRVMyX2V4dGVuc2lvbnNfRVMzX2tl
eXdvcmQoVFBhcnNlQ29udGV4dCAqY29udGV4dCwgVEV4dGVuc2lvbiBleHRlbnNpb24xLCBURXh0
ZW5zaW9uIGV4dGVuc2lvbjIsIFRFeHRlbnNpb24gZXh0ZW5zaW9uMywgaW50IHRva2VuKQogewog
ICAgIHN0cnVjdCB5eWd1dHNfdCogeXlnID0gKHN0cnVjdCB5eWd1dHNfdCopIGNvbnRleHQtPmdl
dFNjYW5uZXIoKTsKICAgICB5eXNjYW5fdCB5eXNjYW5uZXIgPSAoeXlzY2FuX3QpIGNvbnRleHQt
PmdldFNjYW5uZXIoKTsKQEAgLTYyNiw2ICs2MjYsMTAgQEAgaW50IEVTMl9leHRlbnNpb25fMl9F
UzNfa2V5d29yZChUUGFyc2VDb250ZXh0ICpjb250ZXh0LCBURXh0ZW5zaW9uIGV4dGVuc2lvbjEs
IFQKICAgICB7CiAgICAgICAgIHJldHVybiB0b2tlbjsKICAgICB9CisgICAgZWxzZSBpZiAoaXNf
ZXh0ZW5zaW9uX2VuYWJsZWRfb3JfaXNfY29yZShjb250ZXh0LCAxMDAsIGV4dGVuc2lvbjMsIDMw
MCkpCisgICAgeworICAgICAgICByZXR1cm4gdG9rZW47CisgICAgfQogCiAgICAgLy8gbm90IGEg
cmVzZXJ2ZWQgd29yZCBpbiBHTFNMIEVTIDEuMDAsIHNvIGNvdWxkIGJlIHVzZWQgYXMgYW4gaWRl
bnRpZmllci90eXBlIG5hbWUKICAgICB5eWx2YWwtPmxleC5zdHJpbmcgPSBBbGxvY2F0ZVBvb2xD
aGFyQXJyYXkoeXl0ZXh0LCB5eWxlbmcpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvZ2xzbGFuZ19sZXhfYXV0b2dlbi5jcHAgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci9nbHNsYW5nX2xl
eF9hdXRvZ2VuLmNwcAppbmRleCAxZjY2ZGZhMjBlMmM0YjA3YTRmMjNmZTI2MWUxMjIwYjZiMmY5
YWY1Li5jYjkyMTE5Mjc1MThlMjQ3ZjZjYWRkZjMzMzM0ZWYyYzAxY2NjZDRmIDEwMDY0NAotLS0g
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci9nbHNsYW5n
X2xleF9hdXRvZ2VuLmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tcGls
ZXIvdHJhbnNsYXRvci9nbHNsYW5nX2xleF9hdXRvZ2VuLmNwcApAQCAtOTE4LDEwICs5MTgsMTEg
QEAgc3RhdGljIGJvb2wgaXNfZXh0ZW5zaW9uX2VuYWJsZWRfb3JfaXNfY29yZShUUGFyc2VDb250
ZXh0ICpjb250ZXh0LAogLy8gd2hpY2ggbWVhbnMgaW4gdmVyc2lvbiBWMSwgdGhlIHN5bWJvbCBp
cyByZXNlcnZlZCwgYW5kIHJlbWFpbnMgcmVzZXJ2ZWQgdW50aWwgVjMuICBGcm9tIHZlcnNpb25z
CiAvLyBWMiB1bnRpbCBWMywgaXQncyBhIGtleXdvcmQgaWYgdGhlIGV4dGVuc2lvbiBpcyBlbmFi
bGVkLiAgRnJvbSB2ZXJzaW9uIFYzIG9uLCBpdCdzIGEga2V5d29yZCBpbgogLy8gdGhlIHNwZWMg
aXRzZWxmLiAgUHJpb3IgdG8gVjEsIHRoZSBzeW1ib2wgY2FuIGJlIHVzZWQgYXMgaWRlbnRpZmll
ci4KLXN0YXRpYyBpbnQgRVMyX2V4dGVuc2lvbl8yX0VTM19rZXl3b3JkKFRQYXJzZUNvbnRleHQg
KmNvbnRleHQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBURXh0ZW5z
aW9uIGV4dGVuc2lvbjEsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBU
RXh0ZW5zaW9uIGV4dGVuc2lvbjIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBpbnQgdG9rZW4pOworc3RhdGljIGludCBFUzJfZXh0ZW5zaW9uc19FUzNfa2V5d29yZChU
UGFyc2VDb250ZXh0ICpjb250ZXh0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBURXh0ZW5zaW9uIGV4dGVuc2lvbjEsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFRFeHRlbnNpb24gZXh0ZW5zaW9uMiwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgVEV4dGVuc2lvbiBleHRlbnNpb24zLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBpbnQgdG9rZW4pOwogc3RhdGljIGludCBFUzJfcmVzZXJ2ZWRf
RVMzX2tleXdvcmQoVFBhcnNlQ29udGV4dCAqY29udGV4dCwgaW50IHRva2VuKTsKIHN0YXRpYyBp
bnQgRVMyX2tleXdvcmRfRVMzX3Jlc2VydmVkKFRQYXJzZUNvbnRleHQgKmNvbnRleHQsIGludCB0
b2tlbik7CiBzdGF0aWMgaW50IEVTM19rZXl3b3JkKFRQYXJzZUNvbnRleHQgKmNvbnRleHQsIGlu
dCB0b2tlbik7CkBAIC0xNjg5LDkgKzE2OTAsMTAgQEAgWVlfREVDTAogICAgICAgICAgICAgICAg
IGNhc2UgOTc6CiAgICAgICAgICAgICAgICAgICAgIFlZX1JVTEVfU0VUVVAKICAgICAgICAgICAg
ICAgICAgICAgewotICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIEVTMl9leHRlbnNpb25f
Ml9FUzNfa2V5d29yZCgKKyAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBFUzJfZXh0ZW5z
aW9uc19FUzNfa2V5d29yZCgKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZXh0LCBU
RXh0ZW5zaW9uOjpFWFRfc2hhZGVyX2ZyYW1lYnVmZmVyX2ZldGNoLAotICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFRFeHRlbnNpb246OkVYVF9zaGFkZXJfZnJhbWVidWZmZXJfZmV0Y2hfbm9u
X2NvaGVyZW50LCBMQVlPVVQpOworICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRFeHRlbnNp
b246OkVYVF9zaGFkZXJfZnJhbWVidWZmZXJfZmV0Y2hfbm9uX2NvaGVyZW50LAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIFRFeHRlbnNpb246OktIUl9ibGVuZF9lcXVhdGlvbl9hZHZhbmNl
ZCwgTEFZT1VUKTsKICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICBZ
WV9CUkVBSwogICAgICAgICAgICAgICAgIGNhc2UgOTg6CkBAIC0zNDU4LDEwICszNDYwLDExIEBA
IGludCBXRUJHTF92aWRlb190ZXh0dXJlX2V4dGVuc2lvbihUUGFyc2VDb250ZXh0ICpjb250ZXh0
LCBpbnQgdG9rZW4pCiAgICAgcmV0dXJuIGNoZWNrX3R5cGUoeXlzY2FubmVyKTsKIH0KIAotaW50
IEVTMl9leHRlbnNpb25fMl9FUzNfa2V5d29yZChUUGFyc2VDb250ZXh0ICpjb250ZXh0LAotICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBURXh0ZW5zaW9uIGV4dGVuc2lvbjEsCi0gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRFeHRlbnNpb24gZXh0ZW5zaW9uMiwKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IHRva2VuKQoraW50IEVTMl9leHRlbnNpb25z
X0VTM19rZXl3b3JkKFRQYXJzZUNvbnRleHQgKmNvbnRleHQsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgVEV4dGVuc2lvbiBleHRlbnNpb24xLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFRFeHRlbnNpb24gZXh0ZW5zaW9uMiwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBURXh0ZW5zaW9uIGV4dGVuc2lvbjMsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgaW50IHRva2VuKQogewogICAgIHN0cnVjdCB5eWd1dHNfdCAqeXlnID0gKHN0cnVjdCB5
eWd1dHNfdCAqKWNvbnRleHQtPmdldFNjYW5uZXIoKTsKICAgICB5eXNjYW5fdCB5eXNjYW5uZXIg
ICA9ICh5eXNjYW5fdCljb250ZXh0LT5nZXRTY2FubmVyKCk7CkBAIC0zNDc1LDYgKzM0NzgsMTAg
QEAgaW50IEVTMl9leHRlbnNpb25fMl9FUzNfa2V5d29yZChUUGFyc2VDb250ZXh0ICpjb250ZXh0
LAogICAgIHsKICAgICAgICAgcmV0dXJuIHRva2VuOwogICAgIH0KKyAgICBlbHNlIGlmIChpc19l
eHRlbnNpb25fZW5hYmxlZF9vcl9pc19jb3JlKGNvbnRleHQsIDEwMCwgZXh0ZW5zaW9uMywgMzAw
KSkKKyAgICB7CisgICAgICAgIHJldHVybiB0b2tlbjsKKyAgICB9CiAKICAgICAvLyBub3QgYSBy
ZXNlcnZlZCB3b3JkIGluIEdMU0wgRVMgMS4wMCwgc28gY291bGQgYmUgdXNlZCBhcyBhbiBpZGVu
dGlmaWVyL3R5cGUgbmFtZQogICAgIHl5bHZhbC0+bGV4LnN0cmluZyA9IEFsbG9jYXRlUG9vbENo
YXJBcnJheSh5eXRleHQsIHl5bGVuZyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci90cmVlX29wcy9QcnVuZU5vT3BzLmNwcCBiL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci90cmFuc2xhdG9yL3RyZWVfb3BzL1By
dW5lTm9PcHMuY3BwCmluZGV4IGExMGE4NGM2ZGZjZjQ4NGI1MzI4MWRmY2UzMTJlMjNiZTYzNGYw
MDQuLjVhZTZjYjFmMzM1ZTFmNDNjNjc5OWI1ODI2ZmNmOGM0NzBjMTYwZjggMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci90cmFuc2xhdG9yL3RyZWVfb3Bz
L1BydW5lTm9PcHMuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21waWxl
ci90cmFuc2xhdG9yL3RyZWVfb3BzL1BydW5lTm9PcHMuY3BwCkBAIC0xMzksNyArMTM5LDYgQEAg
Ym9vbCBQcnVuZU5vT3BzVHJhdmVyc2VyOjp2aXNpdEJsb2NrKFZpc2l0IHZpc2l0LCBUSW50ZXJt
QmxvY2sgKm5vZGUpCiAgICAgQVNTRVJUKHZpc2l0ID09IFByZVZpc2l0KTsKIAogICAgIFRJbnRl
cm1TZXF1ZW5jZSAmc3RhdGVtZW50cyA9ICpub2RlLT5nZXRTZXF1ZW5jZSgpOwotICAgIFRJbnRl
cm1TZXF1ZW5jZSBlbXB0eVJlcGxhY2VtZW50OwogCiAgICAgLy8gVmlzaXQgZWFjaCBzdGF0ZW1l
bnQgaW4gdGhlIGJsb2NrIG9uZSBieSBvbmUuICBPbmNlIGEgYnJhbmNoIGlzIHZpc2l0ZWQgKGJy
ZWFrLCBjb250aW51ZSwKICAgICAvLyByZXR1cm4gb3IgZGlzY2FyZCksIGRyb3AgdGhlIHJlc3Qg
b2YgdGhlIHN0YXRlbWVudHMuCkBAIC0xNTYsNiArMTU1LDcgQEAgYm9vbCBQcnVuZU5vT3BzVHJh
dmVyc2VyOjp2aXNpdEJsb2NrKFZpc2l0IHZpc2l0LCBUSW50ZXJtQmxvY2sgKm5vZGUpCiAgICAg
ICAgIC8vIElmIGEgYnJhbmNoIGlzIHZpc2l0ZWQsIHBydW5lIHRoZSBzdGF0ZW1lbnQuICBJZiB0
aGUgc3RhdGVtZW50IGlzIGEgbm8tb3AsIGFsc28gcHJ1bmUgaXQuCiAgICAgICAgIGlmIChtSXNC
cmFuY2hWaXNpdGVkIHx8IElzTm9PcChzdGF0ZW1lbnQpKQogICAgICAgICB7CisgICAgICAgICAg
ICBUSW50ZXJtU2VxdWVuY2UgZW1wdHlSZXBsYWNlbWVudDsKICAgICAgICAgICAgIG1NdWx0aVJl
cGxhY2VtZW50cy5lbXBsYWNlX2JhY2sobm9kZSwgc3RhdGVtZW50LCBzdGQ6Om1vdmUoZW1wdHlS
ZXBsYWNlbWVudCkpOwogICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgIH0KZGlmZiAtLWdp
dCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci90cmFuc2xhdG9yL3RyZWVf
b3BzL1NpbXBsaWZ5TG9vcENvbmRpdGlvbnMuY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUv
c3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvdHJlZV9vcHMvU2ltcGxpZnlMb29wQ29uZGl0aW9ucy5j
cHAKaW5kZXggMGMyYWE4ZmI2Y2IxY2FkYTg4OWQwOTQ4OWNhN2Y1NDM3YjM4Y2U2YS4uYzZhM2Uw
YjllZWMyMmNiNzhmOTJkOWRkMzJiNjI4NTBkZTdlZjNkOCAxMDA2NDQKLS0tIGEvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvdHJlZV9vcHMvU2ltcGxpZnlM
b29wQ29uZGl0aW9ucy5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbXBp
bGVyL3RyYW5zbGF0b3IvdHJlZV9vcHMvU2ltcGxpZnlMb29wQ29uZGl0aW9ucy5jcHAKQEAgLTE2
MSw2ICsxNjEsMjAgQEAgYm9vbCBTaW1wbGlmeUxvb3BDb25kaXRpb25zVHJhdmVyc2VyOjp2aXNp
dEJyYW5jaChWaXNpdCB2aXNpdCwgVEludGVybUJyYW5jaCAqbm8KICAgICByZXR1cm4gdHJ1ZTsK
IH0KIAorVEludGVybUJsb2NrICpDcmVhdGVGcm9tQm9keShUSW50ZXJtTG9vcCAqbm9kZSwgYm9v
bCAqYm9keUVuZHNJbkJyYW5jaE91dCkKK3sKKyAgICBUSW50ZXJtQmxvY2sgKm5ld0JvZHkgPSBu
ZXcgVEludGVybUJsb2NrKCk7CisgICAgKmJvZHlFbmRzSW5CcmFuY2hPdXQgID0gZmFsc2U7CisK
KyAgICBUSW50ZXJtQmxvY2sgKm5vZGVCb2R5ID0gbm9kZS0+Z2V0Qm9keSgpOworICAgIGlmIChu
b2RlQm9keSAhPSBudWxscHRyKQorICAgIHsKKyAgICAgICAgbmV3Qm9keS0+Z2V0U2VxdWVuY2Uo
KS0+cHVzaF9iYWNrKG5vZGVCb2R5KTsKKyAgICAgICAgKmJvZHlFbmRzSW5CcmFuY2hPdXQgPSBF
bmRzSW5CcmFuY2gobm9kZUJvZHkpOworICAgIH0KKyAgICByZXR1cm4gbmV3Qm9keTsKK30KKwog
dm9pZCBTaW1wbGlmeUxvb3BDb25kaXRpb25zVHJhdmVyc2VyOjp0cmF2ZXJzZUxvb3AoVEludGVy
bUxvb3AgKm5vZGUpCiB7CiAgICAgLy8gTWFyayB0aGF0IHdlJ3JlIGluc2lkZSBhIGxvb3AgY29u
ZGl0aW9uIG9yIGV4cHJlc3Npb24sIGFuZCBkZXRlcm1pbmUgaWYgdGhlIGxvb3AgbmVlZHMgdG8g
YmUKQEAgLTIzOCwxMyArMjUyLDEzIEBAIHZvaWQgU2ltcGxpZnlMb29wQ29uZGl0aW9uc1RyYXZl
cnNlcjo6dHJhdmVyc2VMb29wKFRJbnRlcm1Mb29wICpub2RlKQogICAgICAgICAgICAgICAgICAg
ICBDcmVhdGVUZW1wSW5pdERlY2xhcmF0aW9uTm9kZShtTG9vcC5jb25kaXRpb25WYXJpYWJsZSwg
bUxvb3AuY29uZGl0aW9uKTsKICAgICAgICAgICAgICAgICBpbnNlcnRTdGF0ZW1lbnRJblBhcmVu
dEJsb2NrKHRlbXBJbml0RGVjbGFyYXRpb24pOwogCi0gICAgICAgICAgICAgICAgVEludGVybUJs
b2NrICpuZXdCb2R5ID0gbmV3IFRJbnRlcm1CbG9jaygpOwotICAgICAgICAgICAgICAgIGlmIChu
b2RlLT5nZXRCb2R5KCkpCisgICAgICAgICAgICAgICAgYm9vbCBib2R5RW5kc0luQnJhbmNoOwor
ICAgICAgICAgICAgICAgIFRJbnRlcm1CbG9jayAqbmV3Qm9keSA9IENyZWF0ZUZyb21Cb2R5KG5v
ZGUsICZib2R5RW5kc0luQnJhbmNoKTsKKyAgICAgICAgICAgICAgICBpZiAoIWJvZHlFbmRzSW5C
cmFuY2gpCiAgICAgICAgICAgICAgICAgewotICAgICAgICAgICAgICAgICAgICBuZXdCb2R5LT5n
ZXRTZXF1ZW5jZSgpLT5wdXNoX2JhY2sobm9kZS0+Z2V0Qm9keSgpKTsKKyAgICAgICAgICAgICAg
ICAgICAgbmV3Qm9keS0+Z2V0U2VxdWVuY2UoKS0+cHVzaF9iYWNrKENyZWF0ZVRlbXBBc3NpZ25t
ZW50Tm9kZSgKKyAgICAgICAgICAgICAgICAgICAgICAgIG1Mb29wLmNvbmRpdGlvblZhcmlhYmxl
LCBtTG9vcC5jb25kaXRpb24tPmRlZXBDb3B5KCkpKTsKICAgICAgICAgICAgICAgICB9Ci0gICAg
ICAgICAgICAgICAgbmV3Qm9keS0+Z2V0U2VxdWVuY2UoKS0+cHVzaF9iYWNrKAotICAgICAgICAg
ICAgICAgICAgICBDcmVhdGVUZW1wQXNzaWdubWVudE5vZGUobUxvb3AuY29uZGl0aW9uVmFyaWFi
bGUsIG1Mb29wLmNvbmRpdGlvbi0+ZGVlcENvcHkoKSkpOwogCiAgICAgICAgICAgICAgICAgLy8g
Q2FuJ3QgdXNlIHF1ZXVlUmVwbGFjZW1lbnQgdG8gcmVwbGFjZSBvbGQgYm9keSwgc2luY2UgaXQg
bWF5IGhhdmUgYmVlbiBudWxscHRyLgogICAgICAgICAgICAgICAgIC8vIEl0J3Mgc2FmZSB0byBk
byB0aGUgcmVwbGFjZW1lbnRzIGluIHBsYWNlIGhlcmUgLSB0aGUgbmV3IGJvZHkgd2lsbCBzdGls
bCBiZQpAQCAtMzAwLDEzICszMTQsMTMgQEAgdm9pZCBTaW1wbGlmeUxvb3BDb25kaXRpb25zVHJh
dmVyc2VyOjp0cmF2ZXJzZUxvb3AoVEludGVybUxvb3AgKm5vZGUpCiAgICAgICAgICAgICAgICAg
ICAgIENyZWF0ZVRlbXBEZWNsYXJhdGlvbk5vZGUobUxvb3AuY29uZGl0aW9uVmFyaWFibGUpOwog
ICAgICAgICAgICAgICAgIGluc2VydFN0YXRlbWVudEluUGFyZW50QmxvY2sodGVtcEluaXREZWNs
YXJhdGlvbik7CiAKLSAgICAgICAgICAgICAgICBUSW50ZXJtQmxvY2sgKm5ld0JvZHkgPSBuZXcg
VEludGVybUJsb2NrKCk7Ci0gICAgICAgICAgICAgICAgaWYgKG5vZGUtPmdldEJvZHkoKSkKKyAg
ICAgICAgICAgICAgICBib29sIGJvZHlFbmRzSW5CcmFuY2g7CisgICAgICAgICAgICAgICAgVElu
dGVybUJsb2NrICpuZXdCb2R5ID0gQ3JlYXRlRnJvbUJvZHkobm9kZSwgJmJvZHlFbmRzSW5CcmFu
Y2gpOworICAgICAgICAgICAgICAgIGlmICghYm9keUVuZHNJbkJyYW5jaCkKICAgICAgICAgICAg
ICAgICB7Ci0gICAgICAgICAgICAgICAgICAgIG5ld0JvZHktPmdldFNlcXVlbmNlKCktPnB1c2hf
YmFjayhub2RlLT5nZXRCb2R5KCkpOworICAgICAgICAgICAgICAgICAgICBuZXdCb2R5LT5nZXRT
ZXF1ZW5jZSgpLT5wdXNoX2JhY2soCisgICAgICAgICAgICAgICAgICAgICAgICBDcmVhdGVUZW1w
QXNzaWdubWVudE5vZGUobUxvb3AuY29uZGl0aW9uVmFyaWFibGUsIG1Mb29wLmNvbmRpdGlvbikp
OwogICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBuZXdCb2R5LT5nZXRTZXF1ZW5j
ZSgpLT5wdXNoX2JhY2soCi0gICAgICAgICAgICAgICAgICAgIENyZWF0ZVRlbXBBc3NpZ25tZW50
Tm9kZShtTG9vcC5jb25kaXRpb25WYXJpYWJsZSwgbUxvb3AuY29uZGl0aW9uKSk7CiAKICAgICAg
ICAgICAgICAgICAvLyBDYW4ndCB1c2UgcXVldWVSZXBsYWNlbWVudCB0byByZXBsYWNlIG9sZCBi
b2R5LCBzaW5jZSBpdCBtYXkgaGF2ZSBiZWVuIG51bGxwdHIuCiAgICAgICAgICAgICAgICAgLy8g
SXQncyBzYWZlIHRvIGRvIHRoZSByZXBsYWNlbWVudHMgaW4gcGxhY2UgaGVyZSAtIHRoZSBuZXcg
Ym9keSB3aWxsIHN0aWxsIGJlCkBAIC0zNTAsMTMgKzM2NCwxMCBAQCB2b2lkIFNpbXBsaWZ5TG9v
cENvbmRpdGlvbnNUcmF2ZXJzZXI6OnRyYXZlcnNlTG9vcChUSW50ZXJtTG9vcCAqbm9kZSkKICAg
ICAgICAgICAgICAgICAvLyAgIGV4cHJCOyBjb250aW51ZTsKIAogICAgICAgICAgICAgICAgIC8v
IEluc2VydCAieyBib2R5OyB9IiBpbiB0aGUgd2hpbGUgbG9vcAotICAgICAgICAgICAgICAgIFRJ
bnRlcm1CbG9jayAqd2hpbGVMb29wQm9keSA9IG5ldyBUSW50ZXJtQmxvY2soKTsKLSAgICAgICAg
ICAgICAgICBpZiAobm9kZS0+Z2V0Qm9keSgpKQotICAgICAgICAgICAgICAgIHsKLSAgICAgICAg
ICAgICAgICAgICAgd2hpbGVMb29wQm9keS0+Z2V0U2VxdWVuY2UoKS0+cHVzaF9iYWNrKG5vZGUt
PmdldEJvZHkoKSk7Ci0gICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGJvb2wgYm9k
eUVuZHNJbkJyYW5jaDsKKyAgICAgICAgICAgICAgICBUSW50ZXJtQmxvY2sgKndoaWxlTG9vcEJv
ZHkgPSBDcmVhdGVGcm9tQm9keShub2RlLCAmYm9keUVuZHNJbkJyYW5jaCk7CiAgICAgICAgICAg
ICAgICAgLy8gSW5zZXJ0ICJleHByQjsiIGluIHRoZSB3aGlsZSBsb29wCi0gICAgICAgICAgICAg
ICAgaWYgKG5vZGUtPmdldEV4cHJlc3Npb24oKSkKKyAgICAgICAgICAgICAgICBpZiAoIWJvZHlF
bmRzSW5CcmFuY2ggJiYgbm9kZS0+Z2V0RXhwcmVzc2lvbigpKQogICAgICAgICAgICAgICAgIHsK
ICAgICAgICAgICAgICAgICAgICAgd2hpbGVMb29wQm9keS0+Z2V0U2VxdWVuY2UoKS0+cHVzaF9i
YWNrKG5vZGUtPmdldEV4cHJlc3Npb24oKSk7CiAgICAgICAgICAgICAgICAgfQpAQCAtMzg5LDEz
ICs0MDAsMTAgQEAgdm9pZCBTaW1wbGlmeUxvb3BDb25kaXRpb25zVHJhdmVyc2VyOjp0cmF2ZXJz
ZUxvb3AoVEludGVybUxvb3AgKm5vZGUpCiAgICAgICAgICAgICAgICAgbG9vcFNjb3BlU2VxdWVu
Y2UtPnB1c2hfYmFjaygKICAgICAgICAgICAgICAgICAgICAgQ3JlYXRlVGVtcEluaXREZWNsYXJh
dGlvbk5vZGUobUxvb3AuY29uZGl0aW9uVmFyaWFibGUsIG1Mb29wLmNvbmRpdGlvbikpOwogICAg
ICAgICAgICAgICAgIC8vIEluc2VydCAieyBib2R5OyB9IiBpbiB0aGUgd2hpbGUgbG9vcAotICAg
ICAgICAgICAgICAgIFRJbnRlcm1CbG9jayAqd2hpbGVMb29wQm9keSA9IG5ldyBUSW50ZXJtQmxv
Y2soKTsKLSAgICAgICAgICAgICAgICBpZiAobm9kZS0+Z2V0Qm9keSgpKQotICAgICAgICAgICAg
ICAgIHsKLSAgICAgICAgICAgICAgICAgICAgd2hpbGVMb29wQm9keS0+Z2V0U2VxdWVuY2UoKS0+
cHVzaF9iYWNrKG5vZGUtPmdldEJvZHkoKSk7Ci0gICAgICAgICAgICAgICAgfQorICAgICAgICAg
ICAgICAgIGJvb2wgYm9keUVuZHNJbkJyYW5jaDsKKyAgICAgICAgICAgICAgICBUSW50ZXJtQmxv
Y2sgKndoaWxlTG9vcEJvZHkgPSBDcmVhdGVGcm9tQm9keShub2RlLCAmYm9keUVuZHNJbkJyYW5j
aCk7CiAgICAgICAgICAgICAgICAgLy8gSW5zZXJ0ICJleHByQjsiIGluIHRoZSB3aGlsZSBsb29w
Ci0gICAgICAgICAgICAgICAgaWYgKG5vZGUtPmdldEV4cHJlc3Npb24oKSkKKyAgICAgICAgICAg
ICAgICBpZiAoIWJvZHlFbmRzSW5CcmFuY2ggJiYgbm9kZS0+Z2V0RXhwcmVzc2lvbigpKQogICAg
ICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgd2hpbGVMb29wQm9keS0+Z2V0U2Vx
dWVuY2UoKS0+cHVzaF9iYWNrKG5vZGUtPmdldEV4cHJlc3Npb24oKSk7CiAgICAgICAgICAgICAg
ICAgfQpAQCAtNDMwLDE5ICs0MzgsMTkgQEAgdm9pZCBTaW1wbGlmeUxvb3BDb25kaXRpb25zVHJh
dmVyc2VyOjp0cmF2ZXJzZUxvb3AoVEludGVybUxvb3AgKm5vZGUpCiAgICAgICAgICAgICAgICAg
bG9vcFNjb3BlU2VxdWVuY2UtPnB1c2hfYmFjaygKICAgICAgICAgICAgICAgICAgICAgQ3JlYXRl
VGVtcEluaXREZWNsYXJhdGlvbk5vZGUobUxvb3AuY29uZGl0aW9uVmFyaWFibGUsIG1Mb29wLmNv
bmRpdGlvbikpOwogICAgICAgICAgICAgICAgIC8vIEluc2VydCAieyBib2R5OyB9IiBpbiB0aGUg
d2hpbGUgbG9vcAotICAgICAgICAgICAgICAgIFRJbnRlcm1CbG9jayAqd2hpbGVMb29wQm9keSA9
IG5ldyBUSW50ZXJtQmxvY2soKTsKLSAgICAgICAgICAgICAgICBpZiAobm9kZS0+Z2V0Qm9keSgp
KQotICAgICAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICAgICAgd2hpbGVMb29wQm9keS0+
Z2V0U2VxdWVuY2UoKS0+cHVzaF9iYWNrKG5vZGUtPmdldEJvZHkoKSk7Ci0gICAgICAgICAgICAg
ICAgfQorICAgICAgICAgICAgICAgIGJvb2wgYm9keUVuZHNJbkJyYW5jaDsKKyAgICAgICAgICAg
ICAgICBUSW50ZXJtQmxvY2sgKndoaWxlTG9vcEJvZHkgPSBDcmVhdGVGcm9tQm9keShub2RlLCAm
Ym9keUVuZHNJbkJyYW5jaCk7CiAgICAgICAgICAgICAgICAgLy8gSW5zZXJ0ICJleHByQjsiIGlu
IHRoZSB3aGlsZSBsb29wCi0gICAgICAgICAgICAgICAgaWYgKG5vZGUtPmdldEV4cHJlc3Npb24o
KSkKKyAgICAgICAgICAgICAgICBpZiAoIWJvZHlFbmRzSW5CcmFuY2ggJiYgbm9kZS0+Z2V0RXhw
cmVzc2lvbigpKQogICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgd2hpbGVM
b29wQm9keS0+Z2V0U2VxdWVuY2UoKS0+cHVzaF9iYWNrKG5vZGUtPmdldEV4cHJlc3Npb24oKSk7
CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIC8vIEluc2VydCAiczAgPSBleHBy
OyIgaW4gdGhlIHdoaWxlIGxvb3AKLSAgICAgICAgICAgICAgICB3aGlsZUxvb3BCb2R5LT5nZXRT
ZXF1ZW5jZSgpLT5wdXNoX2JhY2soCi0gICAgICAgICAgICAgICAgICAgIENyZWF0ZVRlbXBBc3Np
Z25tZW50Tm9kZShtTG9vcC5jb25kaXRpb25WYXJpYWJsZSwgbUxvb3AuY29uZGl0aW9uLT5kZWVw
Q29weSgpKSk7CisgICAgICAgICAgICAgICAgaWYgKCFib2R5RW5kc0luQnJhbmNoKQorICAgICAg
ICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgd2hpbGVMb29wQm9keS0+Z2V0U2VxdWVu
Y2UoKS0+cHVzaF9iYWNrKENyZWF0ZVRlbXBBc3NpZ25tZW50Tm9kZSgKKyAgICAgICAgICAgICAg
ICAgICAgICAgIG1Mb29wLmNvbmRpdGlvblZhcmlhYmxlLCBtTG9vcC5jb25kaXRpb24tPmRlZXBD
b3B5KCkpKTsKKyAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgLy8gQ3JlYXRlICJ3
aGlsZShzMCkgeyB3aGlsZUxvb3BCb2R5IH0iCiAgICAgICAgICAgICAgICAgd2hpbGVMb29wID0g
bmV3IFRJbnRlcm1Mb29wKEVMb29wV2hpbGUsIG51bGxwdHIsCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZVRlbXBTeW1ib2xOb2RlKG1Mb29wLmNvbmRp
dGlvblZhcmlhYmxlKSwgbnVsbHB0ciwKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FO
R0xFL3NyYy9jb21waWxlci90cmFuc2xhdG9yL3RyZWVfdXRpbC9JbnRlcm1Ob2RlX3V0aWwuY3Bw
IGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvdHJlZV91
dGlsL0ludGVybU5vZGVfdXRpbC5jcHAKaW5kZXggNGVlMmE0MGQxNDg0OTY2MjFjYjYyMjk3ZTI1
NWY1MDYzNGMzYjk2ZS4uMzI2ZGIzNDM0NTlkMjlhNmE3ZmIwY2RhMTNhODcxYWI2MjhmMzE2ZCAx
MDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3RyYW5zbGF0
b3IvdHJlZV91dGlsL0ludGVybU5vZGVfdXRpbC5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvdHJlZV91dGlsL0ludGVybU5vZGVfdXRpbC5j
cHAKQEAgLTM2Miw0ICszNjIsMzQgQEAgVEludGVybVR5cGVkICpDcmVhdGVCdWlsdEluVW5hcnlG
dW5jdGlvbkNhbGxOb2RlKGNvbnN0IGNoYXIgKm5hbWUsCiAgICAgcmV0dXJuIENyZWF0ZUJ1aWx0
SW5GdW5jdGlvbkNhbGxOb2RlKG5hbWUsICZzZXEsIHN5bWJvbFRhYmxlLCBzaGFkZXJWZXJzaW9u
KTsKIH0KIAorLy8gUmV0dXJucyB0cnVlIGlmIGEgYmxvY2sgZW5kcyBpbiBhIGJyYW5jaCAoYnJl
YWssIGNvbnRpbnVlLCByZXR1cm4sIGV0YykuICBUaGlzIGlzIG9ubHkgY29ycmVjdAorLy8gYWZ0
ZXIgUHJ1bmVOb09wcywgYmVjYXVzZSBpdCBleHBlY3RzIGVtcHR5IGJsb2NrcyBhZnRlciBhIGJy
YW5jaCB0byBoYXZlIGJlZW4gYWxyZWFkeSBwcnVuZWQsCisvLyBpLmUuIGEgYmxvY2sgY2FuIG9u
bHkgZW5kIGluIGEgYnJhbmNoIGlmIGl0cyBsYXN0IHN0YXRlbWVudCBpcyBhIGJyYW5jaCBvciBp
cyBhIGJsb2NrIGVuZGluZyBpbgorLy8gYnJhbmNoLgorYm9vbCBFbmRzSW5CcmFuY2goVEludGVy
bUJsb2NrICpibG9jaykKK3sKKyAgICB3aGlsZSAoYmxvY2sgIT0gbnVsbHB0cikKKyAgICB7Cisg
ICAgICAgIC8vIEdldCB0aGUgbGFzdCBzdGF0ZW1lbnQgb2YgdGhlIGJsb2NrLgorICAgICAgICBU
SW50ZXJtU2VxdWVuY2UgJnN0YXRlbWVudHMgPSAqYmxvY2stPmdldFNlcXVlbmNlKCk7CisgICAg
ICAgIGlmIChzdGF0ZW1lbnRzLmVtcHR5KCkpCisgICAgICAgIHsKKyAgICAgICAgICAgIHJldHVy
biBmYWxzZTsKKyAgICAgICAgfQorCisgICAgICAgIFRJbnRlcm1Ob2RlICpsYXN0U3RhdGVtZW50
ID0gc3RhdGVtZW50cy5iYWNrKCk7CisKKyAgICAgICAgLy8gSWYgaXQncyBhIGJyYW5jaCBpdHNl
bGYsIHdlIGhhdmUgdGhlIGFuc3dlci4KKyAgICAgICAgaWYgKGxhc3RTdGF0ZW1lbnQtPmdldEFz
QnJhbmNoTm9kZSgpKQorICAgICAgICB7CisgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICAg
ICAgfQorCisgICAgICAgIC8vIE90aGVyd2lzZSwgc2VlIGlmIGl0J3MgYSBibG9jayB0aGF0IGVu
ZHMgaW4gYSBicmFuY2gKKyAgICAgICAgYmxvY2sgPSBsYXN0U3RhdGVtZW50LT5nZXRBc0Jsb2Nr
KCk7CisgICAgfQorCisgICAgcmV0dXJuIGZhbHNlOworfQorCiB9ICAvLyBuYW1lc3BhY2Ugc2gK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci90cmFuc2xh
dG9yL3RyZWVfdXRpbC9JbnRlcm1Ob2RlX3V0aWwuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy9jb21waWxlci90cmFuc2xhdG9yL3RyZWVfdXRpbC9JbnRlcm1Ob2RlX3V0aWwuaAppbmRl
eCA0ZmU2YWQ5ZGEyMWYxYTViMTA2ZGEyMTFmNDczZjAzMzhlM2ZiYzk5Li4yMTE0OWFmYjY3ODhh
MDdhODY3ZjcwZTBkMjcwMjA3OTRjY2Y4MTE4IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci90cmVlX3V0aWwvSW50ZXJtTm9kZV91dGls
LmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3Iv
dHJlZV91dGlsL0ludGVybU5vZGVfdXRpbC5oCkBAIC0xMDUsNiArMTA1LDEyIEBAIFRJbnRlcm1T
d2l6emxlICpDcmVhdGVTd2l6emxlKFRJbnRlcm1UeXBlZCAqcmVmZXJlbmNlLCBBcmdzVC4uLiBh
cmdzKQogICAgIHJldHVybiBuZXcgVEludGVybVN3aXp6bGUocmVmZXJlbmNlLCBzd2l6emxlSW5k
ZXgpOwogfQogCisvLyBSZXR1cm5zIHRydWUgaWYgYSBibG9jayBlbmRzIGluIGEgYnJhbmNoIChi
cmVhaywgY29udGludWUsIHJldHVybiwgZXRjKS4gIFRoaXMgaXMgb25seSBjb3JyZWN0CisvLyBh
ZnRlciBQcnVuZU5vT3BzLCBiZWNhdXNlIGl0IGV4cGVjdHMgZW1wdHkgYmxvY2tzIGFmdGVyIGEg
YnJhbmNoIHRvIGhhdmUgYmVlbiBhbHJlYWR5IHBydW5lZCwKKy8vIGkuZS4gYSBibG9jayBjYW4g
b25seSBlbmQgaW4gYSBicmFuY2ggaWYgaXRzIGxhc3Qgc3RhdGVtZW50IGlzIGEgYnJhbmNoIG9y
IGlzIGEgYmxvY2sgZW5kaW5nIGluCisvLyBicmFuY2guCitib29sIEVuZHNJbkJyYW5jaChUSW50
ZXJtQmxvY2sgKmJsb2NrKTsKKwogfSAgLy8gbmFtZXNwYWNlIHNoCiAKICNlbmRpZiAgLy8gQ09N
UElMRVJfVFJBTlNMQVRPUl9JTlRFUk1OT0RFVVRJTF9IXwpkaWZmIC0tZ2l0IGEvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mb19tYWNvcy5tbSBiL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9ncHVfaW5mb191dGlsL1N5c3RlbUluZm9fbWFjb3Mu
bW0KaW5kZXggODNhMWI3NWJmNzMxYTc3MjA4ZjA0OTlmZmI4YmMyMDQxZTk1MDE1NS4uNjYyZWQ1
NDVkY2Q4NzEzNTE1ODY4OGYyNDRmYTg2YjA1MTIwNjFkYSAxMDA2NDQKLS0tIGEvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mb19tYWNvcy5tbQorKysg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvZ3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZvX21h
Y29zLm1tCkBAIC0xOTEsNyArMTkxLDcgQEAgdm9pZCBHZXRJT1JlZ2lzdHJ5RGV2aWNlcyhzdGQ6
OnZlY3RvcjxHUFVEZXZpY2VJbmZvPiAqZGV2aWNlcykKICAgICB9CiB9CiAKLXZvaWQgU2V0QWN0
aXZlR1BVSW5kZXgoU3lzdGVtSW5mbyAqaW5mbykKK3ZvaWQgRm9yY2VHUFVTd2l0Y2hJbmRleChT
eXN0ZW1JbmZvICppbmZvKQogewogICAgIFZlbmRvcklEIGFjdGl2ZVZlbmRvciA9IDA7CiAgICAg
RGV2aWNlSUQgYWN0aXZlRGV2aWNlID0gMDsKQEAgLTM3Myw3ICszNzMsNyBAQCBib29sIEdldFN5
c3RlbUluZm9fbWFjKFN5c3RlbUluZm8gKmluZm8pCiAgICAgLy8gR1BVIGluc3RlYWQgb2YgdGhl
IG5vbi1pbnRlbCBHUFUKICAgICBpZiAoQGF2YWlsYWJsZShtYWNPUyAxMC4xMywgKikpCiAgICAg
ewotICAgICAgICBTZXRBY3RpdmVHUFVJbmRleChpbmZvKTsKKyAgICAgICAgRm9yY2VHUFVTd2l0
Y2hJbmRleChpbmZvKTsKICAgICB9CiAKICAgICAvLyBGaWd1cmUgb3V0IHdoZXRoZXIgdGhpcyBp
cyBhIGR1YWwtR1BVIHN5c3RlbS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy9saWJBTkdMRS9DYXBzLmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJB
TkdMRS9DYXBzLmNwcAppbmRleCA0MTAwMGIxMzdkMjU2YmYzMGRmZGU2OWFiNDNmNjc5NGRiM2E3
NTI5Li5mNGMxYmVlZDI5MTI0OWUzMzkxMzMxOTI0MzkwNmI2NzIxMTBhOGMzIDEwMDY0NAotLS0g
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvQ2Fwcy5jcHAKKysrIGIvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL0NhcHMuY3BwCkBAIC0xMzAwLDYgKzEz
MDAsNyBAQCBzdGQ6OnZlY3RvcjxzdGQ6OnN0cmluZz4gRGlzcGxheUV4dGVuc2lvbnM6OmdldFN0
cmluZ3MoKSBjb25zdAogICAgIEluc2VydEV4dGVuc2lvblN0cmluZygiRUdMX0tIUl9sb2NrX3N1
cmZhY2UzIiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9ja1N1cmZhY2UzS0hSLCAg
ICAgICAgICAgICAgICAgICAgJmV4dGVuc2lvblN0cmluZ3MpOwogICAgIEluc2VydEV4dGVuc2lv
blN0cmluZygiRUdMX0FOR0xFX3Z1bGthbl9pbWFnZSIsICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgdnVsa2FuSW1hZ2VBTkdMRSwgICAgICAgICAgICAgICAgICAgJmV4dGVuc2lvblN0cmlu
Z3MpOwogICAgIEluc2VydEV4dGVuc2lvblN0cmluZygiRUdMX0FOR0xFX21ldGFsX2NyZWF0ZV9j
b250ZXh0X293bmVyc2hpcF9pZGVudGl0eSIsICAgbWV0YWxDcmVhdGVDb250ZXh0T3duZXJzaGlw
SWRlbnRpdHlBTkdMRSwgJmV4dGVuc2lvblN0cmluZ3MpOworICAgIEluc2VydEV4dGVuc2lvblN0
cmluZygiRUdMX0tIUl9wYXJ0aWFsX3VwZGF0ZSIsICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgcGFydGlhbFVwZGF0ZUtIUiwgICAgICAgICAgICAgICAgICAgJmV4dGVuc2lvblN0cmluZ3Mp
OwogICAgIC8vIGNsYW5nLWZvcm1hdCBvbgogCiAgICAgcmV0dXJuIGV4dGVuc2lvblN0cmluZ3M7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvQ2Fwcy5o
IGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL0NhcHMuaAppbmRleCBiZjkz
NmNhMTFkNjhkY2UyMDk3YzczNzA0N2VmN2ZiMjVlOTE4MjQ4Li4xMzQyOWFjMmQxZmY1ZDRjOWY3
ZDU2ZGQ1N2NiNTIxM2U5NGUwZTYzIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zcmMvbGliQU5HTEUvQ2Fwcy5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9s
aWJBTkdMRS9DYXBzLmgKQEAgLTE1NCw2ICsxNTQsOSBAQCBzdHJ1Y3QgTGltaXRhdGlvbnMKIAog
ICAgIC8vIE5vIGNvbXByZXNzZWQgVEVYVFVSRV8zRCBzdXBwb3J0LgogICAgIGJvb2wgbm9Db21w
cmVzc2VkVGV4dHVyZTNEID0gZmFsc2U7CisKKyAgICAvLyBEM0QgZG9lcyBub3Qgc3VwcG9ydCBj
b21wcmVzc2VkIHRleHR1cmVzIHdoZXJlIHRoZSBiYXNlIG1pcCBsZXZlbCBpcyBub3QgYSBtdWx0
aXBsZSBvZiA0CisgICAgYm9vbCBjb21wcmVzc2VkQmFzZU1pcExldmVsTXVsdGlwbGVPZkZvdXIg
PSBmYWxzZTsKIH07CiAKIHN0cnVjdCBUeXBlUHJlY2lzaW9uCkBAIC02NDYsNiArNjQ5LDkgQEAg
c3RydWN0IERpc3BsYXlFeHRlbnNpb25zCiAKICAgICAvLyBFR0xfQU5HTEVfbWV0YWxfY3JlYXRl
X2NvbnRleHRfb3duZXJzaGlwX2lkZW50aXR5CiAgICAgYm9vbCBtZXRhbENyZWF0ZUNvbnRleHRP
d25lcnNoaXBJZGVudGl0eUFOR0xFID0gZmFsc2U7CisKKyAgICAvLyBFR0xfS0hSX3BhcnRpYWxf
dXBkYXRlCisgICAgYm9vbCBwYXJ0aWFsVXBkYXRlS0hSID0gZmFsc2U7CiB9OwogCiBzdHJ1Y3Qg
RGV2aWNlRXh0ZW5zaW9ucwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3Jj
L2xpYkFOR0xFL0NvbXBpbGVyLmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJB
TkdMRS9Db21waWxlci5jcHAKaW5kZXggM2U4YTU2NWYyZDk4OGMxN2M0MGZhNDM3OWNkZDhlNDA4
MWQ2MGZhMy4uY2QxODAwN2I4YzY5MmQ4OWE4YmE2ZTE4NWNjNTJjNGZiODJiNzMyNSAxMDA2NDQK
LS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL0NvbXBpbGVyLmNwcAor
KysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvQ29tcGlsZXIuY3BwCkBA
IC0xODksNiArMTg5LDkgQEAgQ29tcGlsZXI6OkNvbXBpbGVyKHJ4OjpHTEltcGxGYWN0b3J5ICpp
bXBsRmFjdG9yeSwgY29uc3QgU3RhdGUgJnN0YXRlLCBlZ2w6OkRpc3AKICAgICAvLyBBTkRST0lE
X2V4dGVuc2lvbl9wYWNrX2VzMzFhCiAgICAgbVJlc291cmNlcy5BTkRST0lEX2V4dGVuc2lvbl9w
YWNrX2VzMzFhID0gZXh0ZW5zaW9ucy5leHRlbnNpb25QYWNrRXMzMWFBTkRST0lEOwogCisgICAg
Ly8gS0hSX2JsZW5kX2VxdWF0aW9uX2FkdmFuY2VkCisgICAgbVJlc291cmNlcy5LSFJfYmxlbmRf
ZXF1YXRpb25fYWR2YW5jZWQgPSBleHRlbnNpb25zLmJsZW5kRXF1YXRpb25BZHZhbmNlZEtIUjsK
KwogICAgIC8vIEdMU0wgRVMgMy4xIGNvbnN0YW50cwogICAgIG1SZXNvdXJjZXMuTWF4UHJvZ3Jh
bVRleHR1cmVHYXRoZXJPZmZzZXQgICAgPSBjYXBzLm1heFByb2dyYW1UZXh0dXJlR2F0aGVyT2Zm
c2V0OwogICAgIG1SZXNvdXJjZXMuTWluUHJvZ3JhbVRleHR1cmVHYXRoZXJPZmZzZXQgICAgPSBj
YXBzLm1pblByb2dyYW1UZXh0dXJlR2F0aGVyT2Zmc2V0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL0NvbnRleHQuY3BwIGIvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL2xpYkFOR0xFL0NvbnRleHQuY3BwCmluZGV4IDkzYjY2NzYyYWVhM2Y5YzU2
MjlhYWQ3OGU4YTFlOGE4YjZlODliOWMuLjZlNmMwZDQ4MDAyYjUwN2IzMGFiOGUyM2QwNDYxNDhk
MTY3MzA2OWUgMTAwNzU1Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdM
RS9Db250ZXh0LmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUv
Q29udGV4dC5jcHAKQEAgLTEzNiw2ICsxMzYsMTEgQEAgYm9vbCBHZXRCYWNrd2FyZENvbXBhdGli
bGVDb250ZXh0KGNvbnN0IGVnbDo6QXR0cmlidXRlTWFwICZhdHRyaWJzKQogICAgIHJldHVybiBh
dHRyaWJzLmdldChFR0xfQ09OVEVYVF9PUEVOR0xfQkFDS1dBUkRTX0NPTVBBVElCTEVfQU5HTEUs
IEVHTF9UUlVFKSA9PSBFR0xfVFJVRTsKIH0KIAorYm9vbCBHZXRXZWJHTENvbnRleHQoY29uc3Qg
ZWdsOjpBdHRyaWJ1dGVNYXAgJmF0dHJpYnMpCit7CisgICAgcmV0dXJuIChhdHRyaWJzLmdldChF
R0xfQ09OVEVYVF9XRUJHTF9DT01QQVRJQklMSVRZX0FOR0xFLCBFR0xfRkFMU0UpID09IEVHTF9U
UlVFKTsKK30KKwogVmVyc2lvbiBHZXRDbGllbnRWZXJzaW9uKGVnbDo6RGlzcGxheSAqZGlzcGxh
eSwgY29uc3QgZWdsOjpBdHRyaWJ1dGVNYXAgJmF0dHJpYnMpCiB7CiAgICAgVmVyc2lvbiByZXF1
ZXN0ZWRWZXJzaW9uID0KQEAgLTE1MSw4ICsxNTYsMTEgQEAgVmVyc2lvbiBHZXRDbGllbnRWZXJz
aW9uKGVnbDo6RGlzcGxheSAqZGlzcGxheSwgY29uc3QgZWdsOjpBdHRyaWJ1dGVNYXAgJmF0dHJp
YnMKICAgICAgICAgewogICAgICAgICAgICAgLy8gQWx3YXlzIHVwIHRoZSB2ZXJzaW9uIHRvIGF0
IGxlYXN0IHRoZSBtYXggY29uZm9ybWFudCB2ZXJzaW9uIHRoaXMgZGlzcGxheSBzdXBwb3J0cy4K
ICAgICAgICAgICAgIC8vIE9ubHkgcmV0dXJuIGEgaGlnaGVyIGNsaWVudCB2ZXJzaW9uIGlmIHJl
cXVlc3RlZC4KLSAgICAgICAgICAgIHJldHVybiBzdGQ6Om1heChkaXNwbGF5LT5nZXRJbXBsZW1l
bnRhdGlvbigpLT5nZXRNYXhDb25mb3JtYW50RVNWZXJzaW9uKCksCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgcmVxdWVzdGVkVmVyc2lvbik7CisgICAgICAgICAgICBjb25zdCBWZXJzaW9u
IGNvbmZvcm1hbnRWZXJzaW9uID0gc3RkOjptYXgoCisgICAgICAgICAgICAgICAgZGlzcGxheS0+
Z2V0SW1wbGVtZW50YXRpb24oKS0+Z2V0TWF4Q29uZm9ybWFudEVTVmVyc2lvbigpLCByZXF1ZXN0
ZWRWZXJzaW9uKTsKKyAgICAgICAgICAgIC8vIExpbWl0IHRoZSBXZWJHTCBjb250ZXh0IHRvIGF0
IG1vc3QgdmVyc2lvbiAzLjEKKyAgICAgICAgICAgIGNvbnN0IGJvb2wgaXNXZWJHTCA9IEdldFdl
YkdMQ29udGV4dChhdHRyaWJzKTsKKyAgICAgICAgICAgIHJldHVybiBpc1dlYkdMID8gc3RkOjpt
aW4oY29uZm9ybWFudFZlcnNpb24sIFZlcnNpb24oMywgMSkpIDogY29uZm9ybWFudFZlcnNpb247
CiAgICAgICAgIH0KICAgICB9CiAgICAgZWxzZQpAQCAtMjAzLDExICsyMTEsNiBAQCBib29sIEdl
dE5vRXJyb3IoY29uc3QgZWdsOjpBdHRyaWJ1dGVNYXAgJmF0dHJpYnMpCiAgICAgcmV0dXJuIChh
dHRyaWJzLmdldChFR0xfQ09OVEVYVF9PUEVOR0xfTk9fRVJST1JfS0hSLCBFR0xfRkFMU0UpID09
IEVHTF9UUlVFKTsKIH0KIAotYm9vbCBHZXRXZWJHTENvbnRleHQoY29uc3QgZWdsOjpBdHRyaWJ1
dGVNYXAgJmF0dHJpYnMpCi17Ci0gICAgcmV0dXJuIChhdHRyaWJzLmdldChFR0xfQ09OVEVYVF9X
RUJHTF9DT01QQVRJQklMSVRZX0FOR0xFLCBFR0xfRkFMU0UpID09IEVHTF9UUlVFKTsKLX0KLQog
Ym9vbCBHZXRFeHRlbnNpb25zRW5hYmxlZChjb25zdCBlZ2w6OkF0dHJpYnV0ZU1hcCAmYXR0cmli
cywgYm9vbCB3ZWJHTENvbnRleHQpCiB7CiAgICAgLy8gSWYgdGhlIGNvbnRleHQgaXMgV2ViR0ws
IGV4dGVuc2lvbnMgYXJlIGRpc2FibGVkIGJ5IGRlZmF1bHQKQEAgLTMyOCw2ICszMzEsMzMgQEAg
Ym9vbCBHZXRTYXZlQW5kUmVzdG9yZVN0YXRlKGNvbnN0IGVnbDo6QXR0cmlidXRlTWFwICZhdHRy
aWJzKQogewogICAgIHJldHVybiAoYXR0cmlicy5nZXQoRUdMX0VYVEVSTkFMX0NPTlRFWFRfU0FW
RV9TVEFURV9BTkdMRSwgRUdMX0ZBTFNFKSA9PSBFR0xfVFJVRSk7CiB9CisKK3ZvaWQgR2V0UGVy
Zk1vbml0b3JTdHJpbmcoY29uc3Qgc3RkOjpzdHJpbmcgJm5hbWUsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgIEdMc2l6ZWkgYnVmU2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgR0xz
aXplaSAqbGVuZ3RoLAorICAgICAgICAgICAgICAgICAgICAgICAgICBHTGNoYXIgKnN0cmluZ091
dCkKK3sKKyAgICBHTHNpemVpIG51bUNoYXJzV3JpdHRlbiA9IHN0ZDo6bWluKGJ1ZlNpemUsIHN0
YXRpY19jYXN0PEdMc2l6ZWk+KG5hbWUuc2l6ZSgpKSk7CisKKyAgICBpZiAobGVuZ3RoKQorICAg
IHsKKyAgICAgICAgaWYgKGJ1ZlNpemUgPT0gMCkKKyAgICAgICAgeworICAgICAgICAgICAgKmxl
bmd0aCA9IHN0YXRpY19jYXN0PEdMc2l6ZWk+KG5hbWUuc2l6ZSgpKTsKKyAgICAgICAgfQorICAg
ICAgICBlbHNlCisgICAgICAgIHsKKyAgICAgICAgICAgIC8vIEV4Y2x1ZGVzIG51bGwgdGVybWlu
YXRvci4KKyAgICAgICAgICAgIEFTU0VSVChudW1DaGFyc1dyaXR0ZW4gPiAwKTsKKyAgICAgICAg
ICAgICpsZW5ndGggPSBudW1DaGFyc1dyaXR0ZW4gLSAxOworICAgICAgICB9CisgICAgfQorCisg
ICAgaWYgKHN0cmluZ091dCkKKyAgICB7CisgICAgICAgIG1lbWNweShzdHJpbmdPdXQsIG5hbWUu
Y19zdHIoKSwgbnVtQ2hhcnNXcml0dGVuKTsKKyAgICB9Cit9CiB9ICAvLyBhbm9ueW1vdXMgbmFt
ZXNwYWNlCiAKICNpZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0FQUExFKQpAQCAtNjYwLDggKzY5
MCw3IEBAIHZvaWQgQ29udGV4dDo6aW5pdGlhbGl6ZURlZmF1bHRSZXNvdXJjZXMoKQogICAgIG1S
ZWFkSW52YWxpZGF0ZURpcnR5Qml0cy5zZXQoU3RhdGU6OkRJUlRZX0JJVF9SRUFEX0ZSQU1FQlVG
RkVSX0JJTkRJTkcpOwogICAgIG1EcmF3SW52YWxpZGF0ZURpcnR5Qml0cy5zZXQoU3RhdGU6OkRJ
UlRZX0JJVF9EUkFXX0ZSQU1FQlVGRkVSX0JJTkRJTkcpOwogCi0gICAgLy8gSW5pdGlhbGl6ZSBv
dmVybGF5IGFmdGVyIGltcGxlbWVudGF0aW9uIGlzIGluaXRpYWxpemVkLgotICAgIEFOR0xFX0NP
TlRFWFRfVFJZKG1PdmVybGF5LmluaXQodGhpcykpOworICAgIG1PdmVybGF5LmluaXQoKTsKIH0K
IAogZWdsOjpFcnJvciBDb250ZXh0OjpvbkRlc3Ryb3koY29uc3QgZWdsOjpEaXNwbGF5ICpkaXNw
bGF5KQpAQCAtMTIxNCw4ICsxMjQzLDYgQEAgR0xib29sZWFuIENvbnRleHQ6OmlzU2FtcGxlcihT
YW1wbGVySUQgc2FtcGxlck5hbWUpIGNvbnN0CiAKIHZvaWQgQ29udGV4dDo6YmluZFRleHR1cmUo
VGV4dHVyZVR5cGUgdGFyZ2V0LCBUZXh0dXJlSUQgaGFuZGxlKQogewotICAgIFRleHR1cmUgKnRl
eHR1cmUgPSBudWxscHRyOwotCiAgICAgLy8gU29tZSBhcHBzIGVuYWJsZSBLSFJfY3JlYXRlX2Nv
bnRleHRfbm9fZXJyb3IgYnV0IHBhc3MgaW4gYW4gaW52YWxpZCB0ZXh0dXJlIHR5cGUuCiAgICAg
Ly8gV29ya2Fyb3VuZCB0aGlzIGJ5IHNpbGVudGx5IHJldHVybmluZyBpbiBzdWNoIHNpdHVhdGlv
bnMuCiAgICAgaWYgKHRhcmdldCA9PSBUZXh0dXJlVHlwZTo6SW52YWxpZEVudW0pCkBAIC0xMjIz
LDYgKzEyNTAsNyBAQCB2b2lkIENvbnRleHQ6OmJpbmRUZXh0dXJlKFRleHR1cmVUeXBlIHRhcmdl
dCwgVGV4dHVyZUlEIGhhbmRsZSkKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAorICAgIFRleHR1
cmUgKnRleHR1cmUgPSBudWxscHRyOwogICAgIGlmIChoYW5kbGUudmFsdWUgPT0gMCkKICAgICB7
CiAgICAgICAgIHRleHR1cmUgPSBtWmVyb1RleHR1cmVzW3RhcmdldF0uZ2V0KCk7CkBAIC0xMjM0
LDYgKzEyNjIsMTIgQEAgdm9pZCBDb250ZXh0OjpiaW5kVGV4dHVyZShUZXh0dXJlVHlwZSB0YXJn
ZXQsIFRleHR1cmVJRCBoYW5kbGUpCiAgICAgfQogCiAgICAgQVNTRVJUKHRleHR1cmUpOworICAg
IC8vIEVhcmx5IHJldHVybiBpZiByZWJpbmRpbmcgdGhlIHNhbWUgdGV4dHVyZQorICAgIGlmICh0
ZXh0dXJlID09IG1TdGF0ZS5nZXRUYXJnZXRUZXh0dXJlKHRhcmdldCkpCisgICAgeworICAgICAg
ICByZXR1cm47CisgICAgfQorCiAgICAgbVN0YXRlLnNldFNhbXBsZXJUZXh0dXJlKHRoaXMsIHRh
cmdldCwgdGV4dHVyZSk7CiAgICAgbVN0YXRlQ2FjaGUub25BY3RpdmVUZXh0dXJlQ2hhbmdlKHRo
aXMpOwogfQpAQCAtMTI3OSw2ICsxMzEzLDEzIEBAIHZvaWQgQ29udGV4dDo6YmluZFNhbXBsZXIo
R0x1aW50IHRleHR1cmVVbml0LCBTYW1wbGVySUQgc2FtcGxlckhhbmRsZSkKICAgICBBU1NFUlQo
dGV4dHVyZVVuaXQgPCBzdGF0aWNfY2FzdDxHTHVpbnQ+KG1TdGF0ZS5tQ2Fwcy5tYXhDb21iaW5l
ZFRleHR1cmVJbWFnZVVuaXRzKSk7CiAgICAgU2FtcGxlciAqc2FtcGxlciA9CiAgICAgICAgIG1T
dGF0ZS5tU2FtcGxlck1hbmFnZXItPmNoZWNrU2FtcGxlckFsbG9jYXRpb24obUltcGxlbWVudGF0
aW9uLmdldCgpLCBzYW1wbGVySGFuZGxlKTsKKworICAgIC8vIEVhcmx5IHJldHVybiBpZiByZWJp
bmRpbmcgdGhlIHNhbWUgc2FtcGxlcgorICAgIGlmIChzYW1wbGVyID09IG1TdGF0ZS5nZXRTYW1w
bGVyKHRleHR1cmVVbml0KSkKKyAgICB7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKICAgICBt
U3RhdGUuc2V0U2FtcGxlckJpbmRpbmcodGhpcywgdGV4dHVyZVVuaXQsIHNhbXBsZXIpOwogICAg
IG1TYW1wbGVyT2JzZXJ2ZXJCaW5kaW5nc1t0ZXh0dXJlVW5pdF0uYmluZChzYW1wbGVyKTsKICAg
ICBtU3RhdGVDYWNoZS5vbkFjdGl2ZVRleHR1cmVDaGFuZ2UodGhpcyk7CkBAIC0zNzAzLDYgKzM3
NDQsOSBAQCBFeHRlbnNpb25zIENvbnRleHQ6OmdlbmVyYXRlU3VwcG9ydGVkRXh0ZW5zaW9ucygp
IGNvbnN0CiAgICAgLy8gQWx3YXlzIGVuYWJsZWQuIFdpbGwgcmV0dXJuIGEgZGVmYXVsdCBzdHJp
bmcgaWYgY2FwdHVyZSBpcyBub3QgZW5hYmxlZC4KICAgICBzdXBwb3J0ZWRFeHRlbnNpb25zLmdl
dFNlcmlhbGl6ZWRDb250ZXh0U3RyaW5nQU5HTEUgPSB0cnVlOwogCisgICAgLy8gUGVyZm9ybWFu
Y2UgY291bnRlciBxdWVyaWVzIGFyZSBhbHdheXMgc3VwcG9ydGVkLiBEaWZmZXJlbnQgZ3JvdXBz
IGV4aXN0IG9uIGVhY2ggYmFjay1lbmQuCisgICAgc3VwcG9ydGVkRXh0ZW5zaW9ucy5wZXJmb3Jt
YW5jZU1vbml0b3JBTUQgPSB0cnVlOworCiAgICAgcmV0dXJuIHN1cHBvcnRlZEV4dGVuc2lvbnM7
CiB9CiAKQEAgLTM5OTcsNiArNDA0MSwxMSBAQCB2b2lkIENvbnRleHQ6OmluaXRDYXBzKCkKICAg
ICAgICAgICAgICAgIDw8IG1heEF0b21pY0NvdW50ZXJCdWZmZXJCaW5kaW5nczsKICAgICAgICAg
QU5HTEVfTElNSVRfQ0FQKG1TdGF0ZS5tQ2Fwcy5tYXhBdG9taWNDb3VudGVyQnVmZmVyQmluZGlu
Z3MsCiAgICAgICAgICAgICAgICAgICAgICAgICBtYXhBdG9taWNDb3VudGVyQnVmZmVyQmluZGlu
Z3MpOworICAgICAgICBmb3IgKGdsOjpTaGFkZXJUeXBlIHNoYWRlclR5cGUgOiBnbDo6QWxsU2hh
ZGVyVHlwZXMoKSkKKyAgICAgICAgeworICAgICAgICAgICAgQU5HTEVfTElNSVRfQ0FQKG1TdGF0
ZS5tQ2Fwcy5tYXhTaGFkZXJBdG9taWNDb3VudGVyQnVmZmVyc1tzaGFkZXJUeXBlXSwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBtYXhBdG9taWNDb3VudGVyQnVmZmVyQmluZGluZ3MpOwor
ICAgICAgICB9CiAKICAgICAgICAgLy8gU3dpZnRTaGFkZXIgb25seSBzdXBwb3J0cyAxMiBzaGFk
ZXIgc3RvcmFnZSBidWZmZXIgYmluZGluZ3MuCiAgICAgICAgIGNvbnN0ZXhwciBHTGludCBtYXhT
aGFkZXJTdG9yYWdlQnVmZmVyQmluZGluZ3MgPSAxMjsKQEAgLTU0OTMsNyArNTU0Miw3IEBAIHZv
aWQgQ29udGV4dDo6YWN0aXZlVGV4dHVyZShHTGVudW0gdGV4dHVyZSkKIAogdm9pZCBDb250ZXh0
OjpibGVuZEJhcnJpZXIoKQogewotICAgIFVOSU1QTEVNRU5URUQoKTsKKyAgICBtSW1wbGVtZW50
YXRpb24tPmJsZW5kQmFycmllcigpOwogfQogCiB2b2lkIENvbnRleHQ6OmJsZW5kQ29sb3IoR0xm
bG9hdCByZWQsIEdMZmxvYXQgZ3JlZW4sIEdMZmxvYXQgYmx1ZSwgR0xmbG9hdCBhbHBoYSkKQEAg
LTU1MDQsMTEgKzU1NTMsMTUgQEAgdm9pZCBDb250ZXh0OjpibGVuZENvbG9yKEdMZmxvYXQgcmVk
LCBHTGZsb2F0IGdyZWVuLCBHTGZsb2F0IGJsdWUsIEdMZmxvYXQgYWxwaGEKIHZvaWQgQ29udGV4
dDo6YmxlbmRFcXVhdGlvbihHTGVudW0gbW9kZSkKIHsKICAgICBtU3RhdGUuc2V0QmxlbmRFcXVh
dGlvbihtb2RlLCBtb2RlKTsKKworICAgIG1TdGF0ZUNhY2hlLm9uQmxlbmRFcXVhdGlvbkNoYW5n
ZSh0aGlzKTsKIH0KIAogdm9pZCBDb250ZXh0OjpibGVuZEVxdWF0aW9uaShHTHVpbnQgYnVmLCBH
TGVudW0gbW9kZSkKIHsKICAgICBtU3RhdGUuc2V0QmxlbmRFcXVhdGlvbkluZGV4ZWQobW9kZSwg
bW9kZSwgYnVmKTsKKworICAgIG1TdGF0ZUNhY2hlLm9uQmxlbmRFcXVhdGlvbkNoYW5nZSh0aGlz
KTsKIH0KIAogdm9pZCBDb250ZXh0OjpibGVuZEVxdWF0aW9uU2VwYXJhdGUoR0xlbnVtIG1vZGVS
R0IsIEdMZW51bSBtb2RlQWxwaGEpCkBAIC02NjExLDcgKzY2NjQsNyBAQCB2b2lkIENvbnRleHQ6
OmRyYXdBcnJheXNJbnN0YW5jZWRCYXNlSW5zdGFuY2UoUHJpbWl0aXZlTW9kZSBtb2RlLAogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgaW5zdGFu
Y2VDb3VudCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBH
THVpbnQgYmFzZUluc3RhbmNlKQogewotICAgIGlmIChub29wRHJhdyhtb2RlLCBjb3VudCkpCisg
ICAgaWYgKG5vb3BEcmF3SW5zdGFuY2VkKG1vZGUsIGNvdW50LCBpbnN0YW5jZUNvdW50KSkKICAg
ICB7CiAgICAgICAgIEFOR0xFX0NPTlRFWFRfVFJZKG1JbXBsZW1lbnRhdGlvbi0+aGFuZGxlTm9v
cERyYXdFdmVudCgpKTsKICAgICAgICAgcmV0dXJuOwpAQCAtNjY0MCwxMSArNjY5MywxMSBAQCB2
b2lkIENvbnRleHQ6OmRyYXdFbGVtZW50c0luc3RhbmNlZEJhc2VWZXJ0ZXhCYXNlSW5zdGFuY2Uo
UHJpbWl0aXZlTW9kZSBtb2RlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgY291bnQsCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRHJhd0VsZW1lbnRzVHlwZSB0
eXBlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGNvbnN0IEdMdm9pZCAqaW5kaWNlcywKLSAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHNpemVpIGluc3RhbmNlQ291bnRzLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IEdMc2l6ZWkgaW5zdGFuY2VDb3VudCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBHTGludCBiYXNlVmVydGV4LAogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMdWludCBiYXNl
SW5zdGFuY2UpCiB7Ci0gICAgaWYgKG5vb3BEcmF3KG1vZGUsIGNvdW50KSkKKyAgICBpZiAobm9v
cERyYXdJbnN0YW5jZWQobW9kZSwgY291bnQsIGluc3RhbmNlQ291bnQpKQogICAgIHsKICAgICAg
ICAgQU5HTEVfQ09OVEVYVF9UUlkobUltcGxlbWVudGF0aW9uLT5oYW5kbGVOb29wRHJhd0V2ZW50
KCkpOwogICAgICAgICByZXR1cm47CkBAIC02NjY4LDcgKzY3MjEsNyBAQCB2b2lkIENvbnRleHQ6
OmRyYXdFbGVtZW50c0luc3RhbmNlZEJhc2VWZXJ0ZXhCYXNlSW5zdGFuY2UoUHJpbWl0aXZlTW9k
ZSBtb2RlLAogICAgIHJ4OjpSZXNldEJhc2VWZXJ0ZXhCYXNlSW5zdGFuY2UgcmVzZXRVbmlmb3Jt
cyhwcm9ncmFtT2JqZWN0LCBoYXNCYXNlVmVydGV4LCBoYXNCYXNlSW5zdGFuY2UpOwogCiAgICAg
QU5HTEVfQ09OVEVYVF9UUlkobUltcGxlbWVudGF0aW9uLT5kcmF3RWxlbWVudHNJbnN0YW5jZWRC
YXNlVmVydGV4QmFzZUluc3RhbmNlKAotICAgICAgICB0aGlzLCBtb2RlLCBjb3VudCwgdHlwZSwg
aW5kaWNlcywgaW5zdGFuY2VDb3VudHMsIGJhc2VWZXJ0ZXgsIGJhc2VJbnN0YW5jZSkpOworICAg
ICAgICB0aGlzLCBtb2RlLCBjb3VudCwgdHlwZSwgaW5kaWNlcywgaW5zdGFuY2VDb3VudCwgYmFz
ZVZlcnRleCwgYmFzZUluc3RhbmNlKSk7CiB9CiAKIHZvaWQgQ29udGV4dDo6bXVsdGlEcmF3QXJy
YXlzSW5zdGFuY2VkQmFzZUluc3RhbmNlKFByaW1pdGl2ZU1vZGUgbW9kZSwKQEAgLTkzNjAsNiAr
OTQxMywxOTUgQEAgdm9pZCBDb250ZXh0OjpmaW5pc2hJbW11dGFibGUoKSBjb25zdAogICAgIEFO
R0xFX0NPTlRFWFRfVFJZKG1JbXBsZW1lbnRhdGlvbi0+ZmluaXNoKHRoaXMpKTsKIH0KIAordm9p
ZCBDb250ZXh0OjpiZWdpblBlcmZNb25pdG9yKEdMdWludCBtb25pdG9yKSB7fQorCit2b2lkIENv
bnRleHQ6OmRlbGV0ZVBlcmZNb25pdG9ycyhHTHNpemVpIG4sIEdMdWludCAqbW9uaXRvcnMpIHt9
CisKK3ZvaWQgQ29udGV4dDo6ZW5kUGVyZk1vbml0b3IoR0x1aW50IG1vbml0b3IpIHt9CisKK3Zv
aWQgQ29udGV4dDo6Z2VuUGVyZk1vbml0b3JzKEdMc2l6ZWkgbiwgR0x1aW50ICptb25pdG9ycykK
K3sKKyAgICBmb3IgKEdMc2l6ZWkgbW9uaXRvckluZGV4ID0gMDsgbW9uaXRvckluZGV4IDwgbjsg
Kyttb25pdG9ySW5kZXgpCisgICAgeworICAgICAgICBtb25pdG9yc1tuXSA9IHN0YXRpY19jYXN0
PEdMdWludD4obW9uaXRvckluZGV4KTsKKyAgICB9Cit9CisKK3ZvaWQgQ29udGV4dDo6Z2V0UGVy
Zk1vbml0b3JDb3VudGVyRGF0YShHTHVpbnQgbW9uaXRvciwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBHTGVudW0gcG5hbWUsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgR0xzaXplaSBkYXRhU2l6ZSwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBHTHVpbnQgKmRhdGEsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgR0xpbnQgKmJ5dGVzV3JpdHRlbikKK3sKKyAgICB1c2luZyBuYW1l
c3BhY2UgYW5nbGU7CisgICAgY29uc3QgUGVyZk1vbml0b3JDb3VudGVyR3JvdXBzICZwZXJmTW9u
aXRvckdyb3VwcyA9IG1JbXBsZW1lbnRhdGlvbi0+Z2V0UGVyZk1vbml0b3JDb3VudGVycygpOwor
ICAgIEdMaW50IGJ5dGVDb3VudCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPSAw
OworICAgIHN3aXRjaCAocG5hbWUpCisgICAgeworICAgICAgICBjYXNlIEdMX1BFUkZNT05fUkVT
VUxUX0FWQUlMQUJMRV9BTUQ6CisgICAgICAgIHsKKyAgICAgICAgICAgICpkYXRhID0gR0xfVFJV
RTsKKyAgICAgICAgICAgIGJ5dGVDb3VudCArPSBzaXplb2YoR0x1aW50KTsKKyAgICAgICAgICAg
IGJyZWFrOworICAgICAgICB9CisgICAgICAgIGNhc2UgR0xfUEVSRk1PTl9SRVNVTFRfU0laRV9B
TUQ6CisgICAgICAgIHsKKyAgICAgICAgICAgIEdMdWludCByZXN1bHRTaXplID0gMDsKKyAgICAg
ICAgICAgIGZvciAoY29uc3QgUGVyZk1vbml0b3JDb3VudGVyR3JvdXAgJmdyb3VwIDogcGVyZk1v
bml0b3JHcm91cHMpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgcmVzdWx0U2l6ZSAr
PSBzaXplb2YoUGVyZk1vbml0b3JUcmlwbGV0KSAqIGdyb3VwLmNvdW50ZXJzLnNpemUoKTsKKyAg
ICAgICAgICAgIH0KKyAgICAgICAgICAgICpkYXRhID0gcmVzdWx0U2l6ZTsKKyAgICAgICAgICAg
IGJ5dGVDb3VudCArPSBzaXplb2YoR0x1aW50KTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAg
ICB9CisgICAgICAgIGNhc2UgR0xfUEVSRk1PTl9SRVNVTFRfQU1EOgorICAgICAgICB7CisgICAg
ICAgICAgICBQZXJmTW9uaXRvclRyaXBsZXQgKnJlc3VsdHNPdXQgPSByZWludGVycHJldF9jYXN0
PFBlcmZNb25pdG9yVHJpcGxldCAqPihkYXRhKTsKKyAgICAgICAgICAgIEdMc2l6ZWkgbWF4UmVz
dWx0cyAgICAgICAgICAgICA9IGRhdGFTaXplIC8gKDMgKiBzaXplb2YoR0x1aW50KSk7CisgICAg
ICAgICAgICBHTHNpemVpIHJlc3VsdENvdW50ICAgICAgICAgICAgPSAwOworICAgICAgICAgICAg
Zm9yIChzaXplX3QgZ3JvdXBJbmRleCA9IDA7CisgICAgICAgICAgICAgICAgIGdyb3VwSW5kZXgg
PCBwZXJmTW9uaXRvckdyb3Vwcy5zaXplKCkgJiYgcmVzdWx0Q291bnQgPCBtYXhSZXN1bHRzOyAr
K2dyb3VwSW5kZXgpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgY29uc3QgUGVyZk1v
bml0b3JDb3VudGVyR3JvdXAgJmdyb3VwID0gcGVyZk1vbml0b3JHcm91cHNbZ3JvdXBJbmRleF07
CisgICAgICAgICAgICAgICAgZm9yIChzaXplX3QgY291bnRlckluZGV4ID0gMDsKKyAgICAgICAg
ICAgICAgICAgICAgIGNvdW50ZXJJbmRleCA8IGdyb3VwLmNvdW50ZXJzLnNpemUoKSAmJiByZXN1
bHRDb3VudCA8IG1heFJlc3VsdHM7CisgICAgICAgICAgICAgICAgICAgICArK2NvdW50ZXJJbmRl
eCkKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIGNvbnN0IFBlcmZNb25p
dG9yQ291bnRlciAmY291bnRlciA9IGdyb3VwLmNvdW50ZXJzW2NvdW50ZXJJbmRleF07CisgICAg
ICAgICAgICAgICAgICAgIFBlcmZNb25pdG9yVHJpcGxldCAmdHJpcGxldCAgICAgICA9IHJlc3Vs
dHNPdXRbcmVzdWx0Q291bnQrK107CisgICAgICAgICAgICAgICAgICAgIHRyaXBsZXQuY291bnRl
ciAgICAgICAgICAgICAgICAgICA9IHN0YXRpY19jYXN0PEdMdWludD4oY291bnRlckluZGV4KTsK
KyAgICAgICAgICAgICAgICAgICAgdHJpcGxldC5ncm91cCAgICAgICAgICAgICAgICAgICAgID0g
c3RhdGljX2Nhc3Q8R0x1aW50Pihncm91cEluZGV4KTsKKyAgICAgICAgICAgICAgICAgICAgdHJp
cGxldC52YWx1ZSAgICAgICAgICAgICAgICAgICAgID0gY291bnRlci52YWx1ZTsKKyAgICAgICAg
ICAgICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgICAgICBieXRlQ291bnQgKz0gc2l6ZW9m
KFBlcmZNb25pdG9yVHJpcGxldCkgKiByZXN1bHRDb3VudDsKKyAgICAgICAgICAgIGJyZWFrOwor
ICAgICAgICB9CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICBVTlJFQUNIQUJMRSgpOwor
ICAgIH0KKworICAgIGlmIChieXRlc1dyaXR0ZW4pCisgICAgeworICAgICAgICAqYnl0ZXNXcml0
dGVuID0gYnl0ZUNvdW50OworICAgIH0KK30KKwordm9pZCBDb250ZXh0OjpnZXRQZXJmTW9uaXRv
ckNvdW50ZXJJbmZvKEdMdWludCBncm91cCwgR0x1aW50IGNvdW50ZXIsIEdMZW51bSBwbmFtZSwg
dm9pZCAqZGF0YSkKK3sKKyAgICB1c2luZyBuYW1lc3BhY2UgYW5nbGU7CisgICAgY29uc3QgUGVy
Zk1vbml0b3JDb3VudGVyR3JvdXBzICZwZXJmTW9uaXRvckdyb3VwcyA9IG1JbXBsZW1lbnRhdGlv
bi0+Z2V0UGVyZk1vbml0b3JDb3VudGVycygpOworICAgIEFTU0VSVChncm91cCA8IHBlcmZNb25p
dG9yR3JvdXBzLnNpemUoKSk7CisgICAgY29uc3QgUGVyZk1vbml0b3JDb3VudGVycyAmY291bnRl
cnMgPSBwZXJmTW9uaXRvckdyb3Vwc1tncm91cF0uY291bnRlcnM7CisgICAgQVNTRVJUKGNvdW50
ZXIgPCBjb3VudGVycy5zaXplKCkpOworCisgICAgc3dpdGNoIChwbmFtZSkKKyAgICB7CisgICAg
ICAgIGNhc2UgR0xfQ09VTlRFUl9UWVBFX0FNRDoKKyAgICAgICAgeworICAgICAgICAgICAgR0xl
bnVtICpkYXRhT3V0ID0gcmVpbnRlcnByZXRfY2FzdDxHTGVudW0gKj4oZGF0YSk7CisgICAgICAg
ICAgICAqZGF0YU91dCAgICAgICAgPSBHTF9VTlNJR05FRF9JTlQ7CisgICAgICAgICAgICBicmVh
azsKKyAgICAgICAgfQorICAgICAgICBjYXNlIEdMX0NPVU5URVJfUkFOR0VfQU1EOgorICAgICAg
ICB7CisgICAgICAgICAgICBHTHVpbnQgKmRhdGFPdXQgPSByZWludGVycHJldF9jYXN0PEdMdWlu
dCAqPihkYXRhKTsKKyAgICAgICAgICAgIGRhdGFPdXRbMF0gICAgICA9IDA7CisgICAgICAgICAg
ICBkYXRhT3V0WzFdICAgICAgPSBzdGQ6Om51bWVyaWNfbGltaXRzPEdMdWludD46Om1heCgpOwor
ICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAg
ICAgIFVOUkVBQ0hBQkxFKCk7CisgICAgfQorfQorCit2b2lkIENvbnRleHQ6OmdldFBlcmZNb25p
dG9yQ291bnRlclN0cmluZyhHTHVpbnQgZ3JvdXAsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBHTHVpbnQgY291bnRlciwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgYnVmU2l6ZSwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgKmxlbmd0aCwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIEdMY2hhciAqY291bnRlclN0cmluZykKK3sKKyAgICB1
c2luZyBuYW1lc3BhY2UgYW5nbGU7CisgICAgY29uc3QgUGVyZk1vbml0b3JDb3VudGVyR3JvdXBz
ICZwZXJmTW9uaXRvckdyb3VwcyA9IG1JbXBsZW1lbnRhdGlvbi0+Z2V0UGVyZk1vbml0b3JDb3Vu
dGVycygpOworICAgIEFTU0VSVChncm91cCA8IHBlcmZNb25pdG9yR3JvdXBzLnNpemUoKSk7Cisg
ICAgY29uc3QgUGVyZk1vbml0b3JDb3VudGVycyAmY291bnRlcnMgPSBwZXJmTW9uaXRvckdyb3Vw
c1tncm91cF0uY291bnRlcnM7CisgICAgQVNTRVJUKGNvdW50ZXIgPCBjb3VudGVycy5zaXplKCkp
OworICAgIEdldFBlcmZNb25pdG9yU3RyaW5nKGNvdW50ZXJzW2NvdW50ZXJdLm5hbWUsIGJ1ZlNp
emUsIGxlbmd0aCwgY291bnRlclN0cmluZyk7Cit9CisKK3ZvaWQgQ29udGV4dDo6Z2V0UGVyZk1v
bml0b3JDb3VudGVycyhHTHVpbnQgZ3JvdXAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgR0xpbnQgKm51bUNvdW50ZXJzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIEdMaW50ICptYXhBY3RpdmVDb3VudGVycywKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBHTHNpemVpIGNvdW50ZXJTaXplLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIEdMdWludCAqY291bnRlcnMpCit7CisgICAgdXNpbmcgbmFtZXNw
YWNlIGFuZ2xlOworICAgIGNvbnN0IFBlcmZNb25pdG9yQ291bnRlckdyb3VwcyAmcGVyZk1vbml0
b3JHcm91cHMgPSBtSW1wbGVtZW50YXRpb24tPmdldFBlcmZNb25pdG9yQ291bnRlcnMoKTsKKyAg
ICBBU1NFUlQoZ3JvdXAgPCBwZXJmTW9uaXRvckdyb3Vwcy5zaXplKCkpOworICAgIGNvbnN0IFBl
cmZNb25pdG9yQ291bnRlcnMgJmdyb3VwQ291bnRlcnMgPSBwZXJmTW9uaXRvckdyb3Vwc1tncm91
cF0uY291bnRlcnM7CisKKyAgICBpZiAobnVtQ291bnRlcnMpCisgICAgeworICAgICAgICAqbnVt
Q291bnRlcnMgPSBzdGF0aWNfY2FzdDxHTGludD4oZ3JvdXBDb3VudGVycy5zaXplKCkpOworICAg
IH0KKworICAgIGlmIChtYXhBY3RpdmVDb3VudGVycykKKyAgICB7CisgICAgICAgICptYXhBY3Rp
dmVDb3VudGVycyA9IHN0YXRpY19jYXN0PEdMaW50Pihncm91cENvdW50ZXJzLnNpemUoKSk7Cisg
ICAgfQorCisgICAgaWYgKGNvdW50ZXJzKQorICAgIHsKKyAgICAgICAgR0xzaXplaSBtYXhDb3Vu
dGVySW5kZXggPSBzdGQ6Om1pbihjb3VudGVyU2l6ZSwgc3RhdGljX2Nhc3Q8R0xzaXplaT4oZ3Jv
dXBDb3VudGVycy5zaXplKCkpKTsKKyAgICAgICAgZm9yIChHTHNpemVpIGNvdW50ZXJJbmRleCA9
IDA7IGNvdW50ZXJJbmRleCA8IG1heENvdW50ZXJJbmRleDsgKytjb3VudGVySW5kZXgpCisgICAg
ICAgIHsKKyAgICAgICAgICAgIGNvdW50ZXJzW2NvdW50ZXJJbmRleF0gPSBzdGF0aWNfY2FzdDxH
THVpbnQ+KGNvdW50ZXJJbmRleCk7CisgICAgICAgIH0KKyAgICB9Cit9CisKK3ZvaWQgQ29udGV4
dDo6Z2V0UGVyZk1vbml0b3JHcm91cFN0cmluZyhHTHVpbnQgZ3JvdXAsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBidWZTaXplLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgKmxlbmd0aCwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTGNoYXIgKmdyb3VwU3RyaW5nKQoreworICAg
IHVzaW5nIG5hbWVzcGFjZSBhbmdsZTsKKyAgICBjb25zdCBQZXJmTW9uaXRvckNvdW50ZXJHcm91
cHMgJnBlcmZNb25pdG9yR3JvdXBzID0gbUltcGxlbWVudGF0aW9uLT5nZXRQZXJmTW9uaXRvckNv
dW50ZXJzKCk7CisgICAgQVNTRVJUKGdyb3VwIDwgcGVyZk1vbml0b3JHcm91cHMuc2l6ZSgpKTsK
KyAgICBHZXRQZXJmTW9uaXRvclN0cmluZyhwZXJmTW9uaXRvckdyb3Vwc1tncm91cF0ubmFtZSwg
YnVmU2l6ZSwgbGVuZ3RoLCBncm91cFN0cmluZyk7Cit9CisKK3ZvaWQgQ29udGV4dDo6Z2V0UGVy
Zk1vbml0b3JHcm91cHMoR0xpbnQgKm51bUdyb3VwcywgR0xzaXplaSBncm91cHNTaXplLCBHTHVp
bnQgKmdyb3VwcykKK3sKKyAgICB1c2luZyBuYW1lc3BhY2UgYW5nbGU7CisgICAgY29uc3QgUGVy
Zk1vbml0b3JDb3VudGVyR3JvdXBzICZwZXJmTW9uaXRvckdyb3VwcyA9IG1JbXBsZW1lbnRhdGlv
bi0+Z2V0UGVyZk1vbml0b3JDb3VudGVycygpOworCisgICAgaWYgKG51bUdyb3VwcykKKyAgICB7
CisgICAgICAgICpudW1Hcm91cHMgPSBzdGF0aWNfY2FzdDxHTGludD4ocGVyZk1vbml0b3JHcm91
cHMuc2l6ZSgpKTsKKyAgICB9CisKKyAgICBHTHVpbnQgbWF4R3JvdXBJbmRleCA9CisgICAgICAg
IHN0ZDo6bWluPEdMdWludD4oZ3JvdXBzU2l6ZSwgc3RhdGljX2Nhc3Q8R0x1aW50PihwZXJmTW9u
aXRvckdyb3Vwcy5zaXplKCkpKTsKKyAgICBmb3IgKEdMdWludCBncm91cEluZGV4ID0gMDsgZ3Jv
dXBJbmRleCA8IG1heEdyb3VwSW5kZXg7ICsrZ3JvdXBJbmRleCkKKyAgICB7CisgICAgICAgIGdy
b3Vwc1tncm91cEluZGV4XSA9IGdyb3VwSW5kZXg7CisgICAgfQorfQorCit2b2lkIENvbnRleHQ6
OnNlbGVjdFBlcmZNb25pdG9yQ291bnRlcnMoR0x1aW50IG1vbml0b3IsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xib29sZWFuIGVuYWJsZSwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVpbnQgZ3JvdXAsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xpbnQgbnVtQ291bnRlcnMsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50ICpjb3VudGVyTGlzdCkKK3t9CisK
K2NvbnN0IGFuZ2xlOjpQZXJmTW9uaXRvckNvdW50ZXJHcm91cHMgJkNvbnRleHQ6OmdldFBlcmZN
b25pdG9yQ291bnRlckdyb3VwcygpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1JbXBsZW1lbnRhdGlv
bi0+Z2V0UGVyZk1vbml0b3JDb3VudGVycygpOworfQorCiAvLyBFcnJvclNldCBpbXBsZW1lbnRh
dGlvbi4KIEVycm9yU2V0OjpFcnJvclNldChDb250ZXh0ICpjb250ZXh0KSA6IG1Db250ZXh0KGNv
bnRleHQpIHt9CiAKQEAgLTk2NTcsNiArOTg5OSwxMSBAQCB2b2lkIFN0YXRlQ2FjaGU6Om9uQmxl
bmRGdW5jSW5kZXhlZENoYW5nZShDb250ZXh0ICpjb250ZXh0KQogICAgIHVwZGF0ZUJhc2ljRHJh
d1N0YXRlc0Vycm9yKCk7CiB9CiAKK3ZvaWQgU3RhdGVDYWNoZTo6b25CbGVuZEVxdWF0aW9uQ2hh
bmdlKENvbnRleHQgKmNvbnRleHQpCit7CisgICAgdXBkYXRlQmFzaWNEcmF3U3RhdGVzRXJyb3Io
KTsKK30KKwogdm9pZCBTdGF0ZUNhY2hlOjpzZXRWYWxpZERyYXdNb2Rlcyhib29sIHBvaW50c09L
LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sIGxpbmVzT0ssCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wgdHJpc09LLApkaWZmIC0tZ2l0IGEv
U291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL0NvbnRleHQuaCBiL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9Db250ZXh0LmgKaW5kZXggYjNlMGNjZDM5ZDA5
NTAxODZkMjUwZGFkZTZkNWQ4MTk5MjU5MjBmYS4uMmE1NzAyZTgzOGY0NGYxMTg5MzFlZGYzYmJh
NDcwODQ3NzFiMmRmMiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xp
YkFOR0xFL0NvbnRleHQuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5H
TEUvQ29udGV4dC5oCkBAIC0yNzUsNiArMjc1LDcgQEAgY2xhc3MgU3RhdGVDYWNoZSBmaW5hbCA6
IGFuZ2xlOjpOb25Db3B5YWJsZQogICAgIHZvaWQgb25Db2xvck1hc2tDaGFuZ2UoQ29udGV4dCAq
Y29udGV4dCk7CiAgICAgdm9pZCBvbkJ1ZmZlckJpbmRpbmdDaGFuZ2UoQ29udGV4dCAqY29udGV4
dCk7CiAgICAgdm9pZCBvbkJsZW5kRnVuY0luZGV4ZWRDaGFuZ2UoQ29udGV4dCAqY29udGV4dCk7
CisgICAgdm9pZCBvbkJsZW5kRXF1YXRpb25DaGFuZ2UoQ29udGV4dCAqY29udGV4dCk7CiAKICAg
cHJpdmF0ZToKICAgICAvLyBDYWNoZSB1cGRhdGUgZnVuY3Rpb25zLgpAQCAtNjQ5LDYgKzY1MCw4
IEBAIGNsYXNzIENvbnRleHQgZmluYWwgOiBwdWJsaWMgZWdsOjpMYWJlbGVkT2JqZWN0LCBhbmds
ZTo6Tm9uQ29weWFibGUsIHB1YmxpYyBhbmdsCiAgICAgLy8gTmVlZGVkIGJ5IGNhcHR1cmUgc2Vy
aWFsaXphdGlvbiBsb2dpYyB0aGF0IHdvcmtzIHdpdGggYSAiY29uc3QiIENvbnRleHQgcG9pbnRl
ci4KICAgICB2b2lkIGZpbmlzaEltbXV0YWJsZSgpIGNvbnN0OwogCisgICAgY29uc3QgYW5nbGU6
OlBlcmZNb25pdG9yQ291bnRlckdyb3VwcyAmZ2V0UGVyZk1vbml0b3JDb3VudGVyR3JvdXBzKCkg
Y29uc3Q7CisKICAgcHJpdmF0ZToKICAgICB2b2lkIGluaXRpYWxpemVEZWZhdWx0UmVzb3VyY2Vz
KCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9D
b250ZXh0LmlubC5oIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL0NvbnRl
eHQuaW5sLmgKaW5kZXggYzgxMGM1ZjY1MjYyNzVjYjFjMjliZmYwNGUxMDRmMTdhM2QzZThjZS4u
M2EwNTczZDMwN2YyMGY5ZmQyMzE0OGU3MzhkNmRjOGJjNThjOWQ0OCAxMDA2NDQKLS0tIGEvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL0NvbnRleHQuaW5sLmgKKysrIGIvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL0NvbnRleHQuaW5sLmgKQEAgLTE2MCw2
ICsxNjAsMTMgQEAgQU5HTEVfSU5MSU5FIHZvaWQgQ29udGV4dDo6YmluZEJ1ZmZlcihCdWZmZXJC
aW5kaW5nIHRhcmdldCwgQnVmZmVySUQgYnVmZmVyKQogewogICAgIEJ1ZmZlciAqYnVmZmVyT2Jq
ZWN0ID0KICAgICAgICAgbVN0YXRlLm1CdWZmZXJNYW5hZ2VyLT5jaGVja0J1ZmZlckFsbG9jYXRp
b24obUltcGxlbWVudGF0aW9uLmdldCgpLCBidWZmZXIpOworCisgICAgLy8gRWFybHkgcmV0dXJu
IGlmIHJlYmluZGluZyB0aGUgc2FtZSBidWZmZXIKKyAgICBpZiAoYnVmZmVyT2JqZWN0ID09IG1T
dGF0ZS5nZXRUYXJnZXRCdWZmZXIodGFyZ2V0KSkKKyAgICB7CisgICAgICAgIHJldHVybjsKKyAg
ICB9CisKICAgICBtU3RhdGUuc2V0QnVmZmVyQmluZGluZyh0aGlzLCB0YXJnZXQsIGJ1ZmZlck9i
amVjdCk7CiAgICAgbVN0YXRlQ2FjaGUub25CdWZmZXJCaW5kaW5nQ2hhbmdlKHRoaXMpOwogfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL0NvbnRleHRf
Z2xlc19leHRfYXV0b2dlbi5oIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xF
L0NvbnRleHRfZ2xlc19leHRfYXV0b2dlbi5oCmluZGV4IDQ2NDE1MzEzM2ViY2RiYzQyZDE5N2Nk
NGFkYzJhZDI2NDNhMjEzNDkuLmQ3ZmRlNjJkNTI3OGNiNTM3NmE4ODAxZmRlNTQ4Yjc0MmNhNGJi
YjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9Db250
ZXh0X2dsZXNfZXh0X2F1dG9nZW4uaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
bGliQU5HTEUvQ29udGV4dF9nbGVzX2V4dF9hdXRvZ2VuLmgKQEAgLTQ3LDYgKzQ3LDIzIEBACiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgLyogR0xFUzIr
IEV4dGVuc2lvbnMgKi8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBcCisgICAgLyogR0xfQU1EX3BlcmZvcm1hbmNlX21vbml0b3IgKi8g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBcCisgICAgdm9pZCBiZWdpblBlcmZNb25pdG9yKEdMdWludCBtb25pdG9yKTsgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAg
dm9pZCBkZWxldGVQZXJmTW9uaXRvcnMoR0xzaXplaSBuLCBHTHVpbnQgKm1vbml0b3JzKTsgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgdm9pZCBlbmRQZXJm
TW9uaXRvcihHTHVpbnQgbW9uaXRvcik7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgdm9pZCBnZW5QZXJmTW9uaXRvcnMoR0xz
aXplaSBuLCBHTHVpbnQgKm1vbml0b3JzKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBcCisgICAgdm9pZCBnZXRQZXJmTW9uaXRvckNvdW50ZXJEYXRhKEdMdWlu
dCBtb25pdG9yLCBHTGVudW0gcG5hbWUsIEdMc2l6ZWkgZGF0YVNpemUsIEdMdWludCAqZGF0YSwg
ICBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMaW50ICpieXRlc1dyaXR0
ZW4pOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgdm9p
ZCBnZXRQZXJmTW9uaXRvckNvdW50ZXJJbmZvKEdMdWludCBncm91cCwgR0x1aW50IGNvdW50ZXIs
IEdMZW51bSBwbmFtZSwgdm9pZCAqZGF0YSk7ICAgICAgICBcCisgICAgdm9pZCBnZXRQZXJmTW9u
aXRvckNvdW50ZXJTdHJpbmcoR0x1aW50IGdyb3VwLCBHTHVpbnQgY291bnRlciwgR0xzaXplaSBi
dWZTaXplLCAgICAgICAgICAgICAgICBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgR0xzaXplaSAqbGVuZ3RoLCBHTGNoYXIgKmNvdW50ZXJTdHJpbmcpOyAgICAgICAgICAg
ICAgICAgICAgICBcCisgICAgdm9pZCBnZXRQZXJmTW9uaXRvckNvdW50ZXJzKEdMdWludCBncm91
cCwgR0xpbnQgKm51bUNvdW50ZXJzLCBHTGludCAqbWF4QWN0aXZlQ291bnRlcnMsICAgICAgICBc
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgY291bnRlclNpemUsIEdM
dWludCAqY291bnRlcnMpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgdm9pZCBn
ZXRQZXJmTW9uaXRvckdyb3VwU3RyaW5nKEdMdWludCBncm91cCwgR0xzaXplaSBidWZTaXplLCBH
THNpemVpICpsZW5ndGgsICAgICAgICAgICAgICAgICBcCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIEdMY2hhciAqZ3JvdXBTdHJpbmcpOyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBcCisgICAgdm9pZCBnZXRQZXJmTW9uaXRvckdyb3VwcyhHTGlu
dCAqbnVtR3JvdXBzLCBHTHNpemVpIGdyb3Vwc1NpemUsIEdMdWludCAqZ3JvdXBzKTsgICAgICAg
ICAgICAgICBcCisgICAgdm9pZCBzZWxlY3RQZXJmTW9uaXRvckNvdW50ZXJzKEdMdWludCBtb25p
dG9yLCBHTGJvb2xlYW4gZW5hYmxlLCBHTHVpbnQgZ3JvdXAsICAgICAgICAgICAgICAgICBcCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMaW50IG51bUNvdW50ZXJzLCBHTHVp
bnQgKmNvdW50ZXJMaXN0KTsgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgLyogR0xfQU5E
Uk9JRF9leHRlbnNpb25fcGFja19lczMxYSAqLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgLyogR0xfQU5HTEVfZGVwdGhfdGV4
dHVyZSAqLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBcCiAgICAgLyogR0xfQU5HTEVfZnJhbWVidWZmZXJfYmxpdCAqLyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBcCkBAIC0zMTAsNyArMzI3LDcgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgR0xzaXplaSBpbnN0YW5jZUNvdW50LCBHTHVpbnQgYmFzZUluc3RhbmNlKTsg
ICAgICAgICAgICAgIFwKICAgICB2b2lkIGRyYXdFbGVtZW50c0luc3RhbmNlZEJhc2VWZXJ0ZXhC
YXNlSW5zdGFuY2UoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IFwKICAgICAgICAgUHJpbWl0aXZlTW9kZSBtb2RlUGFja2VkLCBHTHNpemVpIGNvdW50LCBEcmF3
RWxlbWVudHNUeXBlIHR5cGVQYWNrZWQsICAgICAgICAgICAgICAgICAgICAgIFwKLSAgICAgICAg
Y29uc3QgR0x2b2lkICppbmRpY2VzLCBHTHNpemVpIGluc3RhbmNlQ291bnRzLCBHTGludCBiYXNl
VmVydGV4LCBHTHVpbnQgYmFzZUluc3RhbmNlKTsgICAgIFwKKyAgICAgICAgY29uc3QgR0x2b2lk
ICppbmRpY2VzLCBHTHNpemVpIGluc3RhbmNlQ291bnQsIEdMaW50IGJhc2VWZXJ0ZXgsIEdMdWlu
dCBiYXNlSW5zdGFuY2UpOyAgICAgIFwKICAgICB2b2lkIG11bHRpRHJhd0FycmF5c0luc3RhbmNl
ZEJhc2VJbnN0YW5jZSggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFwKICAgICAgICAgUHJpbWl0aXZlTW9kZSBtb2RlUGFja2VkLCBjb25zdCBHTGlu
dCAqZmlyc3RzLCBjb25zdCBHTHNpemVpICpjb3VudHMsICAgICAgICAgICAgICAgICAgICAgIFwK
ICAgICAgICAgY29uc3QgR0xzaXplaSAqaW5zdGFuY2VDb3VudHMsIGNvbnN0IEdMdWludCAqYmFz
ZUluc3RhbmNlcywgR0xzaXplaSBkcmF3Y291bnQpOyAgICAgICAgICAgIFwKZGlmZiAtLWdpdCBh
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9EaXNwbGF5LmNwcCBiL1NvdXJj
ZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9EaXNwbGF5LmNwcAppbmRleCBiNTNjNzBj
NzNhOTllNjY1M2MwODcyYTUxN2E2ZThlZDEzMDg2NGUzLi44MGY0ZWUwOTliMWMwNzlmYmFlYzc5
ODlhZTMzNDkyMTM2MjkwOWExIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9z
cmMvbGliQU5HTEUvRGlzcGxheS5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3Jj
L2xpYkFOR0xFL0Rpc3BsYXkuY3BwCkBAIC0xMTksMTMgKzExOSwxNyBAQCBzdHJ1Y3QgQU5HTEVQ
bGF0Zm9ybURpc3BsYXkKICAgICAgICAgICBkZXZpY2VJZExvdyhkZXZpY2VJZExvdykKICAgICB7
fQogCi0gICAgYXV0byB0aWUoKSBjb25zdCB7IHJldHVybiBzdGQ6OnRpZShuYXRpdmVEaXNwbGF5
VHlwZSwgcG93ZXJQcmVmZXJlbmNlLCBwbGF0Zm9ybUFOR0xFVHlwZSwgZGV2aWNlSWRIaWdoLCBk
ZXZpY2VJZExvdyk7IH0KKyAgICBhdXRvIHRpZSgpIGNvbnN0CisgICAgeworICAgICAgICByZXR1
cm4gc3RkOjp0aWUobmF0aXZlRGlzcGxheVR5cGUsIHBvd2VyUHJlZmVyZW5jZSwgcGxhdGZvcm1B
TkdMRVR5cGUsIGRldmljZUlkSGlnaCwKKyAgICAgICAgICAgICAgICAgICAgICAgIGRldmljZUlk
TG93KTsKKyAgICB9CiAKLSAgICBFR0xOYXRpdmVEaXNwbGF5VHlwZSBuYXRpdmVEaXNwbGF5VHlw
ZSB7IEVHTF9ERUZBVUxUX0RJU1BMQVkgfTsKLSAgICBFR0xBdHRyaWIgcG93ZXJQcmVmZXJlbmNl
IHsgRUdMX0xPV19QT1dFUl9BTkdMRSB9OwotICAgIEVHTEF0dHJpYiBwbGF0Zm9ybUFOR0xFVHlw
ZSB7IEVHTF9QTEFURk9STV9BTkdMRV9UWVBFX0RFRkFVTFRfQU5HTEUgfTsKLSAgICBFR0xBdHRy
aWIgZGV2aWNlSWRIaWdoIHsgMCB9OwotICAgIEVHTEF0dHJpYiBkZXZpY2VJZExvdyB7IDAgfTsK
KyAgICBFR0xOYXRpdmVEaXNwbGF5VHlwZSBuYXRpdmVEaXNwbGF5VHlwZXtFR0xfREVGQVVMVF9E
SVNQTEFZfTsKKyAgICBFR0xBdHRyaWIgcG93ZXJQcmVmZXJlbmNle0VHTF9MT1dfUE9XRVJfQU5H
TEV9OworICAgIEVHTEF0dHJpYiBwbGF0Zm9ybUFOR0xFVHlwZXtFR0xfUExBVEZPUk1fQU5HTEVf
VFlQRV9ERUZBVUxUX0FOR0xFfTsKKyAgICBFR0xBdHRyaWIgZGV2aWNlSWRIaWdoezB9OworICAg
IEVHTEF0dHJpYiBkZXZpY2VJZExvd3swfTsKIH07CiAKIGlubGluZSBib29sIG9wZXJhdG9yPChj
b25zdCBBTkdMRVBsYXRmb3JtRGlzcGxheSAmYSwgY29uc3QgQU5HTEVQbGF0Zm9ybURpc3BsYXkg
JmIpCkBAIC02OTMsNyArNjk3LDggQEAgRGlzcGxheSAqRGlzcGxheTo6R2V0RGlzcGxheUZyb21O
YXRpdmVEaXNwbGF5KEVHTE5hdGl2ZURpc3BsYXlUeXBlIG5hdGl2ZURpc3BsYXkKICAgICBFR0xB
dHRyaWIgZGV2aWNlSWRIaWdoID0gdXBkYXRlZEF0dHJpYk1hcC5nZXQoRUdMX1BMQVRGT1JNX0FO
R0xFX0RFVklDRV9JRF9ISUdIX0FOR0xFLCAwKTsKICAgICBFR0xBdHRyaWIgZGV2aWNlSWRMb3cg
ID0gdXBkYXRlZEF0dHJpYk1hcC5nZXQoRUdMX1BMQVRGT1JNX0FOR0xFX0RFVklDRV9JRF9MT1df
QU5HTEUsIDApOwogICAgIEFOR0xFUGxhdGZvcm1EaXNwbGF5TWFwICpkaXNwbGF5cyA9IEdldEFO
R0xFUGxhdGZvcm1EaXNwbGF5TWFwKCk7Ci0gICAgQU5HTEVQbGF0Zm9ybURpc3BsYXkgZGlzcGxh
eUtleShuYXRpdmVEaXNwbGF5LCBwb3dlclByZWZlcmVuY2UsIHBsYXRmb3JtQU5HTEVUeXBlLCBk
ZXZpY2VJZEhpZ2gsIGRldmljZUlkTG93KTsKKyAgICBBTkdMRVBsYXRmb3JtRGlzcGxheSBkaXNw
bGF5S2V5KG5hdGl2ZURpc3BsYXksIHBvd2VyUHJlZmVyZW5jZSwgcGxhdGZvcm1BTkdMRVR5cGUs
IGRldmljZUlkSGlnaCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRldmlj
ZUlkTG93KTsKICAgICBjb25zdCBhdXRvICZpdGVyID0gZGlzcGxheXMtPmZpbmQoZGlzcGxheUtl
eSk7CiAgICAgaWYgKGl0ZXIgIT0gZGlzcGxheXMtPmVuZCgpKQogICAgIHsKQEAgLTg2MCw4ICs4
NjUsNyBAQCBEaXNwbGF5Ojp+RGlzcGxheSgpCiAgICAgICAgIEFOR0xFUGxhdGZvcm1EaXNwbGF5
TWFwICpkaXNwbGF5cyAgICAgID0gR2V0QU5HTEVQbGF0Zm9ybURpc3BsYXlNYXAoKTsKICAgICAg
ICAgQU5HTEVQbGF0Zm9ybURpc3BsYXlNYXA6Oml0ZXJhdG9yIGl0ZXIgPSBkaXNwbGF5cy0+Zmlu
ZChBTkdMRVBsYXRmb3JtRGlzcGxheSgKICAgICAgICAgICAgIG1TdGF0ZS5kaXNwbGF5SWQsIG1B
dHRyaWJ1dGVNYXAuZ2V0KEVHTF9QT1dFUl9QUkVGRVJFTkNFX0FOR0xFLCBFR0xfTE9XX1BPV0VS
X0FOR0xFKSwKLSAgICAgICAgICAgIG1BdHRyaWJ1dGVNYXAuZ2V0KEVHTF9QTEFURk9STV9BTkdM
RV9UWVBFX0FOR0xFLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRUdMX1BMQVRGT1JN
X0FOR0xFX1RZUEVfREVGQVVMVF9BTkdMRSksCisgICAgICAgICAgICBtQXR0cmlidXRlTWFwLmdl
dChFR0xfUExBVEZPUk1fQU5HTEVfVFlQRV9BTkdMRSwgRUdMX1BMQVRGT1JNX0FOR0xFX1RZUEVf
REVGQVVMVF9BTkdMRSksCiAgICAgICAgICAgICBtQXR0cmlidXRlTWFwLmdldChFR0xfUExBVEZP
Uk1fQU5HTEVfREVWSUNFX0lEX0hJR0hfQU5HTEUsIDApLAogICAgICAgICAgICAgbUF0dHJpYnV0
ZU1hcC5nZXQoRUdMX1BMQVRGT1JNX0FOR0xFX0RFVklDRV9JRF9MT1dfQU5HTEUsIDApKSk7CiAg
ICAgICAgIGlmIChpdGVyICE9IGRpc3BsYXlzLT5lbmQoKSkKQEAgLTIzNjgsNCArMjM3MiwzMyBA
QCBFcnJvciBEaXNwbGF5OjpoYW5kbGVHUFVTd2l0Y2goKQogICAgIHJldHVybiBOb0Vycm9yKCk7
CiB9CiAKK0Vycm9yIERpc3BsYXk6OmZvcmNlR1BVU3dpdGNoKEVHTGludCBncHVJREhpZ2gsIEVH
TGludCBncHVJRExvdykKK3sKKyAgICBBTkdMRV9UUlkobUltcGxlbWVudGF0aW9uLT5mb3JjZUdQ
VVN3aXRjaChncHVJREhpZ2gsIGdwdUlETG93KSk7CisgICAgaW5pdFZlbmRvclN0cmluZygpOwor
ICAgIHJldHVybiBOb0Vycm9yKCk7Cit9CisKK2Jvb2wgRGlzcGxheTo6c3VwcG9ydHNEbWFCdWZG
b3JtYXQoRUdMaW50IGZvcm1hdCkgY29uc3QKK3sKKyAgICByZXR1cm4gbUltcGxlbWVudGF0aW9u
LT5zdXBwb3J0c0RtYUJ1ZkZvcm1hdChmb3JtYXQpOworfQorCitFcnJvciBEaXNwbGF5OjpxdWVy
eURtYUJ1ZkZvcm1hdHMoRUdMaW50IG1heF9mb3JtYXRzLCBFR0xpbnQgKmZvcm1hdHMsIEVHTGlu
dCAqbnVtX2Zvcm1hdHMpCit7CisgICAgQU5HTEVfVFJZKG1JbXBsZW1lbnRhdGlvbi0+cXVlcnlE
bWFCdWZGb3JtYXRzKG1heF9mb3JtYXRzLCBmb3JtYXRzLCBudW1fZm9ybWF0cykpOworICAgIHJl
dHVybiBOb0Vycm9yKCk7Cit9CisKK0Vycm9yIERpc3BsYXk6OnF1ZXJ5RG1hQnVmTW9kaWZpZXJz
KEVHTGludCBmb3JtYXQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFR0xp
bnQgbWF4X21vZGlmaWVycywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVH
THVpbnQ2NEtIUiAqbW9kaWZpZXJzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgRUdMQm9vbGVhbiAqZXh0ZXJuYWxfb25seSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIEVHTGludCAqbnVtX21vZGlmaWVycykKK3sKKyAgICBBTkdMRV9UUlkobUltcGxl
bWVudGF0aW9uLT5xdWVyeURtYUJ1Zk1vZGlmaWVycyhmb3JtYXQsIG1heF9tb2RpZmllcnMsIG1v
ZGlmaWVycywgZXh0ZXJuYWxfb25seSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBudW1fbW9kaWZpZXJzKSk7CisgICAgcmV0dXJuIE5vRXJyb3Io
KTsKK30KKwogfSAgLy8gbmFtZXNwYWNlIGVnbApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL2xpYkFOR0xFL0Rpc3BsYXkuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy9saWJBTkdMRS9EaXNwbGF5LmgKaW5kZXggMTRlOWI1MmEyODY5ZmJmZGVmOWY2ZWIxYTIz
ZDJiYWZhODhhOTI5MS4uN2U3YWJiNjk1ZmQ2YmUwN2E5YjVhNTcyMGZjOTVkYTgxMjI2ZTQ4MiAx
MDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL0Rpc3BsYXku
aAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvRGlzcGxheS5oCkBA
IC0zMDMsNiArMzAzLDcgQEAgY2xhc3MgRGlzcGxheSBmaW5hbCA6IHB1YmxpYyBMYWJlbGVkT2Jq
ZWN0LAogICAgIHZvaWQgcmV0dXJuWmVyb0ZpbGxlZEJ1ZmZlcihhbmdsZTo6U2NyYXRjaEJ1ZmZl
ciB6ZXJvRmlsbGVkQnVmZmVyKTsKIAogICAgIGVnbDo6RXJyb3IgaGFuZGxlR1BVU3dpdGNoKCk7
CisgICAgZWdsOjpFcnJvciBmb3JjZUdQVVN3aXRjaChFR0xpbnQgZ3B1SURIaWdoLCBFR0xpbnQg
Z3B1SURMb3cpOwogCiAgICAgc3RkOjptdXRleCAmZ2V0RGlzcGxheUdsb2JhbE11dGV4KCkgeyBy
ZXR1cm4gbURpc3BsYXlHbG9iYWxNdXRleDsgfQogICAgIHN0ZDo6bXV0ZXggJmdldFByb2dyYW1D
YWNoZU11dGV4KCkgeyByZXR1cm4gbVByb2dyYW1DYWNoZU11dGV4OyB9CkBAIC0zMTEsNiArMzEy
LDE0IEBAIGNsYXNzIERpc3BsYXkgZmluYWwgOiBwdWJsaWMgTGFiZWxlZE9iamVjdCwKICAgICAv
LyB0aGVpciBvd24gRGVidWdBbm5vdGF0b3IuCiAgICAgdm9pZCBzZXRHbG9iYWxEZWJ1Z0Fubm90
YXRvcigpIHsgZ2w6OkluaXRpYWxpemVEZWJ1Z0Fubm90YXRpb25zKCZtQW5ub3RhdG9yKTsgfQog
CisgICAgYm9vbCBzdXBwb3J0c0RtYUJ1ZkZvcm1hdChFR0xpbnQgZm9ybWF0KSBjb25zdDsKKyAg
ICBFcnJvciBxdWVyeURtYUJ1ZkZvcm1hdHMoRUdMaW50IG1heF9mb3JtYXRzLCBFR0xpbnQgKmZv
cm1hdHMsIEVHTGludCAqbnVtX2Zvcm1hdHMpOworICAgIEVycm9yIHF1ZXJ5RG1hQnVmTW9kaWZp
ZXJzKEVHTGludCBmb3JtYXQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRUdMaW50
IG1heF9tb2RpZmllcnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRUdMdWludDY0
S0hSICptb2RpZmllcnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRUdMQm9vbGVh
biAqZXh0ZXJuYWxfb25seSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFR0xpbnQg
Km51bV9tb2RpZmllcnMpOworCiAgIHByaXZhdGU6CiAgICAgRGlzcGxheShFR0xlbnVtIHBsYXRm
b3JtLCBFR0xOYXRpdmVEaXNwbGF5VHlwZSBkaXNwbGF5SWQsIERldmljZSAqZWdsRGV2aWNlKTsK
IApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL0Vycm9y
U3RyaW5ncy5oIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL0Vycm9yU3Ry
aW5ncy5oCmluZGV4IDZmMjhiYTg5NTg4OTY2YzU5NDI4ZGQzMDIxOTI2ZWJmMzgwM2U5MzQuLjBm
Y2UyZDFhMzE1MDEzOWY4ZTVhODZlZDRjM2JkNGIwN2FhYjc1Y2MgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9FcnJvclN0cmluZ3MuaAorKysgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvRXJyb3JTdHJpbmdzLmgKQEAgLTE4LDEx
ICsxOCwxNCBAQCBuYW1lc3BhY2UgZXJyCiAvLyBjbGFuZy1mb3JtYXQgb2ZmCiBNU0cgazNERGVw
dGhTdGVuY2lsID0gIkZvcm1hdCBjYW5ub3QgYmUgR0xfREVQVEhfQ09NUE9ORU5UIG9yIEdMX0RF
UFRIX1NURU5DSUwgaWYgdGFyZ2V0IGlzIEdMX1RFWFRVUkVfM0QiOwogTVNHIGtBTkdMRUNvcHlU
ZXh0dXJlM0RVbmF2YWlsYWJsZSA9ICJHTF9BTkdMRV9jb3B5X3RleHR1cmVfM2QgZXh0ZW5zaW9u
IG5vdCBhdmFpbGFibGUuIjsKK01TRyBrQWR2YW5jZWRCbGVuZEVxdWF0aW9uV2l0aE1SVCA9ICJB
ZHZhbmNlZCBibGVuZCBlcXVhdGlvbiBvbmx5IGNhbiBiZSB1c2VkIHdoZW4gb25seSBvbmUgZHJh
dyBidWZmZXIgaXMgbm90IE5PTkUiOworTVNHIGtBZHZhbmNlZEJsZW5kRXh0ZW5zaW9uTm90RW5h
YmxlZCA9ICJHTF9LSFJfYmxlbmRfZXF1YXRpb25fYWR2YW5jZWQgZXh0ZW5zaW9uIG5vdCBlbmFi
bGVkLiI7CiBNU0cga0F0b21pY0NvdW50ZXJSZXNvdXJjZU5hbWUgPSAiQWN0aXZlIGF0b21pYyBj
b3VudGVyIHJlc291cmNlcyBhcmUgbm90IGFzc2lnbmVkIG5hbWUgc3RyaW5ncy4iOwogTVNHIGtB
dHRyaWJ1dGVaZXJvUmVxdWlyZXNEaXZpc29yTGltaXRhdGlvbiA9ICJUaGUgY3VycmVudCBjb250
ZXh0IGRvZXNuJ3Qgc3VwcG9ydCBzZXR0aW5nIGEgbm9uLXplcm8gZGl2aXNvciBvbiB0aGUgYXR0
cmlidXRlIHdpdGggaW5kZXggemVyby4gUGxlYXNlIHJlb3JkZXIgdGhlIGF0dHJpYnV0ZXMgaW4g
eW91ciB2ZXJ0ZXggc2hhZGVyIHNvIHRoYXQgYXR0cmlidXRlIHplcm8gY2FuIGhhdmUgYSB6ZXJv
IGRpdmlzb3IuIjsKIE1TRyBrQmFzZUxldmVsTmVnYXRpdmUgPSAiQmFzZSBsZXZlbCBtdXN0IGJl
IGF0IGxlYXN0IDAuIjsKIE1TRyBrQmFzZUxldmVsTm9uWmVybyA9ICJCYXNlIGxldmVsIG11c3Qg
YmUgMC4iOwogTVNHIGtCYXNlTGV2ZWxPdXRPZlJhbmdlID0gIlRleHR1cmUgYmFzZSBsZXZlbCBv
dXQgb2YgcmFuZ2UiOworTVNHIGtCbGVuZEVxdWF0aW9uTm90RW5hYmxlZCA9ICJBY3RpdmUgZnJh
Z21lbnQgc2hhZGVyIGRvZXMgbm90IGluY2x1ZGUgdGhlIGxheW91dCBxdWFsaWZpZXIgbWF0Y2hp
bmcgdGhlIGJsZW5kIGVxdWF0aW9uIjsKIE1TRyBrQmxpdERlcHRoT3JTdGVuY2lsRm9ybWF0TWlz
bWF0Y2ggPSAiRGVwdGgvc3RlbmNpbCBidWZmZXIgZm9ybWF0IGNvbWJpbmF0aW9uIG5vdCBhbGxv
d2VkIGZvciBibGl0LiI7CiBNU0cga0JsaXREaW1lbnNpb25zT3V0T2ZSYW5nZSA9ICJCbGl0RnJh
bWVidWZmZXIgZGltZW5zaW9ucyBvdXQgb2YgMzItYml0IGludGVnZXIgcmFuZ2UuIjsKIE1TRyBr
QmxpdEV4dGVuc2lvbkRlcHRoU3RlbmNpbFdob2xlQnVmZmVyQmxpdCA9ICJPbmx5IHdob2xlLWJ1
ZmZlciBkZXB0aCBhbmQgc3RlbmNpbCBibGl0cyBhcmUgc3VwcG9ydGVkIGJ5IHRoaXMgZXh0ZW5z
aW9uLiI7CkBAIC0zMTIsNiArMzE1LDkgQEAgTVNHIGtJbnZhbGlkTmFtZSA9ICJJbnZhbGlkIG5h
bWUuIjsKIE1TRyBrSW52YWxpZE5hbWVDaGFyYWN0ZXJzID0gIk5hbWUgY29udGFpbnMgaW52YWxp
ZCBjaGFyYWN0ZXJzLiI7CiBNU0cga0ludmFsaWRPcmlnaW5FbnVtID0gIkludmFsaWQgb3JpZ2lu
IGVudW0uIjsKIE1TRyBrSW52YWxpZFBhY2tQYXJhbWV0ZXJzRm9yV2ViR0wgPSAiSW52YWxpZCBj
b21iaW5hdGlvbiBvZiBwYWNrIHBhcmFtZXRlcnMgZm9yIFdlYkdMLiI7CitNU0cga0ludmFsaWRQ
ZXJmTW9uaXRvciA9ICJJbnZhbGlkIHBlcmYgbW9uaXRvci4iOworTVNHIGtJbnZhbGlkUGVyZk1v
bml0b3JDb3VudGVyID0gIkludmFsaWQgcGVyZiBtb25pdG9yIGNvdW50ZXIuIjsKK01TRyBrSW52
YWxpZFBlcmZNb25pdG9yR3JvdXAgPSAiSW52YWxpZCBwZXJmIG1vbml0b3IgY291bnRlciBncm91
cC4iOwogTVNHIGtJbnZhbGlkUG5hbWUgPSAiSW52YWxpZCBwbmFtZS4iOwogTVNHIGtJbnZhbGlk
UG9pbnRlclF1ZXJ5ID0gIkludmFsaWQgcG9pbnRlciBxdWVyeS4iOwogTVNHIGtJbnZhbGlkUG9p
bnRQYXJhbWV0ZXIgPSAiSW52YWxpZCBwb2ludCBwYXJhbWV0ZXIuIjsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9PdmVybGF5LmNwcCBiL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9PdmVybGF5LmNwcAppbmRleCA3YWI3YTJhYWIx
YjIyNTU2YzA4YjI3NzkxY2Y5Mjg5NjNjZTI4NGVhLi43YjY0NzU4MzBmNmIyOTdmMGFiYzViOGQz
NzMxOGI3MWU0ZDcwOTkzIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
bGliQU5HTEUvT3ZlcmxheS5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xp
YkFOR0xFL092ZXJsYXkuY3BwCkBAIC0zNiw3ICszNiw3IEBAIE92ZXJsYXk6Ok92ZXJsYXkocng6
OkdMSW1wbEZhY3RvcnkgKmZhY3RvcnkpCiB7fQogT3ZlcmxheTo6fk92ZXJsYXkoKSA9IGRlZmF1
bHQ7CiAKLWFuZ2xlOjpSZXN1bHQgT3ZlcmxheTo6aW5pdChjb25zdCBDb250ZXh0ICpjb250ZXh0
KQordm9pZCBPdmVybGF5Ojppbml0KCkKIHsKICAgICBpbml0T3ZlcmxheVdpZGdldHMoKTsKICAg
ICBtTGFzdFBlclNlY29uZFVwZGF0ZSA9IGFuZ2xlOjpHZXRDdXJyZW50U3lzdGVtVGltZSgpOwpA
QCAtNDYsMTQgKzQ2LDYgQEAgYW5nbGU6OlJlc3VsdCBPdmVybGF5Ojppbml0KGNvbnN0IENvbnRl
eHQgKmNvbnRleHQpCiAgICAgICAgIFtdKGNvbnN0IHN0ZDo6dW5pcXVlX3B0cjxvdmVybGF5OjpX
aWRnZXQ+ICZ3aWRnZXQpIHsgcmV0dXJuIHdpZGdldC5nZXQoKSAhPSBudWxscHRyOyB9KSk7CiAK
ICAgICBlbmFibGVPdmVybGF5V2lkZ2V0c0Zyb21FbnZpcm9ubWVudCgpOwotCi0gICAgYm9vbCBz
dWNjZXNzID0gZmFsc2U7Ci0gICAgQU5HTEVfVFJZKG1JbXBsZW1lbnRhdGlvbi0+aW5pdChjb250
ZXh0LCAmc3VjY2VzcykpOwotICAgIGlmICghc3VjY2VzcykKLSAgICB7Ci0gICAgICAgIG1TdGF0
ZS5tRW5hYmxlZFdpZGdldENvdW50ID0gMDsKLSAgICB9Ci0gICAgcmV0dXJuIGFuZ2xlOjpSZXN1
bHQ6OkNvbnRpbnVlOwogfQogCiB2b2lkIE92ZXJsYXk6OmRlc3Ryb3koY29uc3QgZ2w6OkNvbnRl
eHQgKmNvbnRleHQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGli
QU5HTEUvT3ZlcmxheS5oIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL092
ZXJsYXkuaAppbmRleCBmZWE3YmY4MDZmZjRkODJjYWEzZDFiNTQ1MjIzOTk1NzA5MTQ1ZmIyLi5k
M2ZiMTM3YjExZTU4YjY5NGE1NjM0NzhjY2ExMzMzZjFjNDRjZmJmIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvT3ZlcmxheS5oCisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9PdmVybGF5LmgKQEAgLTU5LDcgKzU5LDcgQEAg
Y2xhc3MgT3ZlcmxheSA6IGFuZ2xlOjpOb25Db3B5YWJsZQogICAgIE92ZXJsYXkocng6OkdMSW1w
bEZhY3RvcnkgKmltcGxGYWN0b3J5KTsKICAgICB+T3ZlcmxheSgpOwogCi0gICAgYW5nbGU6OlJl
c3VsdCBpbml0KGNvbnN0IENvbnRleHQgKmNvbnRleHQpOworICAgIHZvaWQgaW5pdCgpOwogICAg
IHZvaWQgZGVzdHJveShjb25zdCBnbDo6Q29udGV4dCAqY29udGV4dCk7CiAKICAgICB2b2lkIG9u
U3dhcCgpIGNvbnN0OwpAQCAtMTEzLDcgKzExMyw3IEBAIGNsYXNzIE1vY2tPdmVybGF5CiAgICAg
TW9ja092ZXJsYXkocng6OkdMSW1wbEZhY3RvcnkgKmltcGxGYWN0b3J5KTsKICAgICB+TW9ja092
ZXJsYXkoKTsKIAotICAgIGFuZ2xlOjpSZXN1bHQgaW5pdChjb25zdCBDb250ZXh0ICpjb250ZXh0
KSB7IHJldHVybiBhbmdsZTo6UmVzdWx0OjpDb250aW51ZTsgfQorICAgIHZvaWQgaW5pdCgpIHt9
CiAgICAgdm9pZCBkZXN0cm95KGNvbnN0IENvbnRleHQgKmNvbnRleHQpIHt9CiAKICAgICB2b2lk
IG9uU3dhcCgpIGNvbnN0IHt9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9z
cmMvbGliQU5HTEUvT3ZlcmxheVdpZGdldHMuY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUv
c3JjL2xpYkFOR0xFL092ZXJsYXlXaWRnZXRzLmNwcAppbmRleCBiNTg3MzRkYjRiNjFlYzk3NGMx
MTkxOGYyNGU4NWJkYTBhZWZmMjFjLi4zZTFkNzQ1YTFmYTVlMTMxYzlmY2JmMTI2ODg5YzY5NGEw
ZWYwY2E3IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUv
T3ZlcmxheVdpZGdldHMuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJB
TkdMRS9PdmVybGF5V2lkZ2V0cy5jcHAKQEAgLTUyNCw2ICs1MjQsMjAgQEAgdm9pZCBBcHBlbmRX
aWRnZXREYXRhSGVscGVyOjpBcHBlbmRWdWxrYW5EZXNjcmlwdG9yQ2FjaGVTaXplKGNvbnN0IG92
ZXJsYXk6OldpZGcKICAgICBBcHBlbmRSdW5uaW5nR3JhcGhDb21tb24od2lkZ2V0LCBpbWFnZUV4
dGVudCwgdGV4dFdpZGdldCwgZ3JhcGhXaWRnZXQsIHdpZGdldENvdW50cywgZm9ybWF0KTsKIH0K
IAordm9pZCBBcHBlbmRXaWRnZXREYXRhSGVscGVyOjpBcHBlbmRWdWxrYW5EZXNjcmlwdG9yQ2Fj
aGVLZXlTaXplKGNvbnN0IG92ZXJsYXk6OldpZGdldCAqd2lkZ2V0LAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGds
OjpFeHRlbnRzICZpbWFnZUV4dGVudCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUZXh0V2lkZ2V0RGF0YSAqdGV4dFdpZGdl
dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBHcmFwaFdpZGdldERhdGEgKmdyYXBoV2lkZ2V0LAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE92ZXJsYXlX
aWRnZXRDb3VudHMgKndpZGdldENvdW50cykKK3sKKyAgICBjb25zdCBvdmVybGF5OjpDb3VudCAq
Y291bnRXaWRnZXQgPSBzdGF0aWNfY2FzdDxjb25zdCBvdmVybGF5OjpDb3VudCAqPih3aWRnZXQp
OworICAgIHN0ZDo6b3N0cmluZ3N0cmVhbSB0ZXh0OworICAgIGRvdWJsZSBrYiA9IHN0YXRpY19j
YXN0PGRvdWJsZT4oY291bnRXaWRnZXQtPmNvdW50KSAvIDEwMDAuMDsKKyAgICB0ZXh0IDw8ICJE
UyBDYWNoZSBLZXkgU2l6ZTogIiA8PCBzdGQ6OmZpeGVkIDw8IHN0ZDo6c2V0cHJlY2lzaW9uKDEp
IDw8IGtiIDw8ICIga2IiOworCisgICAgQXBwZW5kVGV4dENvbW1vbih3aWRnZXQsIGltYWdlRXh0
ZW50LCB0ZXh0LnN0cigpLCB0ZXh0V2lkZ2V0LCB3aWRnZXRDb3VudHMpOworfQorCiBzdGQ6Om9z
dHJlYW0gJkFwcGVuZFdpZGdldERhdGFIZWxwZXI6Ok91dHB1dFBlclNlY29uZChzdGQ6Om9zdHJl
YW0gJm91dCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGNvbnN0IG92ZXJsYXk6OlBlclNlY29uZCAqcGVyU2Vjb25kKQogewpkaWZmIC0tZ2l0
IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL092ZXJsYXlfYXV0b2dlbi5j
cHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvT3ZlcmxheV9hdXRvZ2Vu
LmNwcAppbmRleCA1YzFmMzFhZjM0MjBmOTVlNThiY2VmOGNmNWNmZGU4MzljYjc5OWViLi44N2Q0
N2UzOGRlZDI5YzgyYWIwM2RmOTBiMjQyNDc2YzBiZDY4ZmVkIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvT3ZlcmxheV9hdXRvZ2VuLmNwcAorKysgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvT3ZlcmxheV9hdXRvZ2VuLmNwcApA
QCAtNDgsOCArNDgsOCBAQCB2b2lkIE92ZXJsYXk6OmluaXRPdmVybGF5V2lkZ2V0cygpCiAgICAg
ICAgICAgICB3aWRnZXQtPmNvb3Jkc1sxXSA9IG9mZnNldFk7CiAgICAgICAgICAgICB3aWRnZXQt
PmNvb3Jkc1syXSA9IG9mZnNldFggKyB3aWR0aDsKICAgICAgICAgICAgIHdpZGdldC0+Y29vcmRz
WzNdID0gb2Zmc2V0WSArIGhlaWdodDsKLSAgICAgICAgICAgIHdpZGdldC0+Y29sb3JbMF0gID0g
MC40OTgwMzkyMTU2ODZmOwotICAgICAgICAgICAgd2lkZ2V0LT5jb2xvclsxXSAgPSAwLjc0OTAx
OTYwNzg0M2Y7CisgICAgICAgICAgICB3aWRnZXQtPmNvbG9yWzBdICA9IDAuNDk4MDM5MjE1Njg2
Mjc0NWY7CisgICAgICAgICAgICB3aWRnZXQtPmNvbG9yWzFdICA9IDAuNzQ5MDE5NjA3ODQzMTM3
M2Y7CiAgICAgICAgICAgICB3aWRnZXQtPmNvbG9yWzJdICA9IDEuMGY7CiAgICAgICAgICAgICB3
aWRnZXQtPmNvbG9yWzNdICA9IDEuMGY7CiAgICAgICAgIH0KQEAgLTExOCwxMCArMTE4LDEwIEBA
IHZvaWQgT3ZlcmxheTo6aW5pdE92ZXJsYXlXaWRnZXRzKCkKICAgICAgICAgICAgIHdpZGdldC0+
Y29vcmRzWzFdID0gb2Zmc2V0WTsKICAgICAgICAgICAgIHdpZGdldC0+Y29vcmRzWzJdID0gb2Zm
c2V0WCArIHdpZHRoOwogICAgICAgICAgICAgd2lkZ2V0LT5jb29yZHNbM10gPSBvZmZzZXRZICsg
aGVpZ2h0OwotICAgICAgICAgICAgd2lkZ2V0LT5jb2xvclswXSAgPSAwLjI5NDExNzY0NzA1OWY7
Ci0gICAgICAgICAgICB3aWRnZXQtPmNvbG9yWzFdICA9IDAuNzg0MzEzNzI1NDlmOworICAgICAg
ICAgICAgd2lkZ2V0LT5jb2xvclswXSAgPSAwLjI5NDExNzY0NzA1ODgyMzU0ZjsKKyAgICAgICAg
ICAgIHdpZGdldC0+Y29sb3JbMV0gID0gMC43ODQzMTM3MjU0OTAxOTYxZjsKICAgICAgICAgICAg
IHdpZGdldC0+Y29sb3JbMl0gID0gMC4wZjsKLSAgICAgICAgICAgIHdpZGdldC0+Y29sb3JbM10g
ID0gMC43ODQzMTM3MjU0OWY7CisgICAgICAgICAgICB3aWRnZXQtPmNvbG9yWzNdICA9IDAuNzg0
MzEzNzI1NDkwMTk2MWY7CiAgICAgICAgIH0KICAgICAgICAgbVN0YXRlLm1PdmVybGF5V2lkZ2V0
c1tXaWRnZXRJZDo6VnVsa2FuUmVuZGVyUGFzc0NvdW50XS5yZXNldCh3aWRnZXQpOwogICAgICAg
ICB7CkBAIC0xMzksOCArMTM5LDggQEAgdm9pZCBPdmVybGF5Ojppbml0T3ZlcmxheVdpZGdldHMo
KQogICAgICAgICAgICAgd2lkZ2V0LT5kZXNjcmlwdGlvbi5jb29yZHNbMV0gPSBzdGQ6Om1heChv
ZmZzZXRZIC0gaGVpZ2h0LCAxKTsKICAgICAgICAgICAgIHdpZGdldC0+ZGVzY3JpcHRpb24uY29v
cmRzWzJdID0gb2Zmc2V0WCArIHdpZHRoOwogICAgICAgICAgICAgd2lkZ2V0LT5kZXNjcmlwdGlv
bi5jb29yZHNbM10gPSBvZmZzZXRZOwotICAgICAgICAgICAgd2lkZ2V0LT5kZXNjcmlwdGlvbi5j
b2xvclswXSAgPSAwLjI5NDExNzY0NzA1OWY7Ci0gICAgICAgICAgICB3aWRnZXQtPmRlc2NyaXB0
aW9uLmNvbG9yWzFdICA9IDAuNzg0MzEzNzI1NDlmOworICAgICAgICAgICAgd2lkZ2V0LT5kZXNj
cmlwdGlvbi5jb2xvclswXSAgPSAwLjI5NDExNzY0NzA1ODgyMzU0ZjsKKyAgICAgICAgICAgIHdp
ZGdldC0+ZGVzY3JpcHRpb24uY29sb3JbMV0gID0gMC43ODQzMTM3MjU0OTAxOTYxZjsKICAgICAg
ICAgICAgIHdpZGdldC0+ZGVzY3JpcHRpb24uY29sb3JbMl0gID0gMC4wZjsKICAgICAgICAgICAg
IHdpZGdldC0+ZGVzY3JpcHRpb24uY29sb3JbM10gID0gMS4wZjsKICAgICAgICAgfQpAQCAtMTYy
LDkgKzE2Miw5IEBAIHZvaWQgT3ZlcmxheTo6aW5pdE92ZXJsYXlXaWRnZXRzKCkKICAgICAgICAg
ICAgIHdpZGdldC0+Y29vcmRzWzJdID0gb2Zmc2V0WDsKICAgICAgICAgICAgIHdpZGdldC0+Y29v
cmRzWzNdID0gb2Zmc2V0WSArIGhlaWdodDsKICAgICAgICAgICAgIHdpZGdldC0+Y29sb3JbMF0g
ID0gMS4wZjsKLSAgICAgICAgICAgIHdpZGdldC0+Y29sb3JbMV0gID0gMC43ODQzMTM3MjU0OWY7
Ci0gICAgICAgICAgICB3aWRnZXQtPmNvbG9yWzJdICA9IDAuMjk0MTE3NjQ3MDU5ZjsKLSAgICAg
ICAgICAgIHdpZGdldC0+Y29sb3JbM10gID0gMC43ODQzMTM3MjU0OWY7CisgICAgICAgICAgICB3
aWRnZXQtPmNvbG9yWzFdICA9IDAuNzg0MzEzNzI1NDkwMTk2MWY7CisgICAgICAgICAgICB3aWRn
ZXQtPmNvbG9yWzJdICA9IDAuMjk0MTE3NjQ3MDU4ODIzNTRmOworICAgICAgICAgICAgd2lkZ2V0
LT5jb2xvclszXSAgPSAwLjc4NDMxMzcyNTQ5MDE5NjFmOwogICAgICAgICB9CiAgICAgICAgIG1T
dGF0ZS5tT3ZlcmxheVdpZGdldHNbV2lkZ2V0SWQ6OlZ1bGthblJlbmRlclBhc3NCdWZmZXJDb3Vu
dF0ucmVzZXQod2lkZ2V0KTsKICAgICAgICAgewpAQCAtMTgzLDggKzE4Myw4IEBAIHZvaWQgT3Zl
cmxheTo6aW5pdE92ZXJsYXlXaWRnZXRzKCkKICAgICAgICAgICAgIHdpZGdldC0+ZGVzY3JpcHRp
b24uY29vcmRzWzJdID0gc3RkOjptaW4ob2Zmc2V0WCArIHdpZHRoLCAtMSk7CiAgICAgICAgICAg
ICB3aWRnZXQtPmRlc2NyaXB0aW9uLmNvb3Jkc1szXSA9IG9mZnNldFk7CiAgICAgICAgICAgICB3
aWRnZXQtPmRlc2NyaXB0aW9uLmNvbG9yWzBdICA9IDEuMGY7Ci0gICAgICAgICAgICB3aWRnZXQt
PmRlc2NyaXB0aW9uLmNvbG9yWzFdICA9IDAuNzg0MzEzNzI1NDlmOwotICAgICAgICAgICAgd2lk
Z2V0LT5kZXNjcmlwdGlvbi5jb2xvclsyXSAgPSAwLjI5NDExNzY0NzA1OWY7CisgICAgICAgICAg
ICB3aWRnZXQtPmRlc2NyaXB0aW9uLmNvbG9yWzFdICA9IDAuNzg0MzEzNzI1NDkwMTk2MWY7Cisg
ICAgICAgICAgICB3aWRnZXQtPmRlc2NyaXB0aW9uLmNvbG9yWzJdICA9IDAuMjk0MTE3NjQ3MDU4
ODIzNTRmOwogICAgICAgICAgICAgd2lkZ2V0LT5kZXNjcmlwdGlvbi5jb2xvclszXSAgPSAxLjBm
OwogICAgICAgICB9CiAgICAgfQpAQCAtMjA1LDkgKzIwNSw5IEBAIHZvaWQgT3ZlcmxheTo6aW5p
dE92ZXJsYXlXaWRnZXRzKCkKICAgICAgICAgICAgIHdpZGdldC0+Y29vcmRzWzJdID0gb2Zmc2V0
WDsKICAgICAgICAgICAgIHdpZGdldC0+Y29vcmRzWzNdID0gb2Zmc2V0WSArIGhlaWdodDsKICAg
ICAgICAgICAgIHdpZGdldC0+Y29sb3JbMF0gID0gMS4wZjsKLSAgICAgICAgICAgIHdpZGdldC0+
Y29sb3JbMV0gID0gMC43ODQzMTM3MjU0OWY7Ci0gICAgICAgICAgICB3aWRnZXQtPmNvbG9yWzJd
ICA9IDAuMjk0MTE3NjQ3MDU5ZjsKLSAgICAgICAgICAgIHdpZGdldC0+Y29sb3JbM10gID0gMC43
ODQzMTM3MjU0OWY7CisgICAgICAgICAgICB3aWRnZXQtPmNvbG9yWzFdICA9IDAuNzg0MzEzNzI1
NDkwMTk2MWY7CisgICAgICAgICAgICB3aWRnZXQtPmNvbG9yWzJdICA9IDAuMjk0MTE3NjQ3MDU4
ODIzNTRmOworICAgICAgICAgICAgd2lkZ2V0LT5jb2xvclszXSAgPSAwLjc4NDMxMzcyNTQ5MDE5
NjFmOwogICAgICAgICB9CiAgICAgICAgIG1TdGF0ZS5tT3ZlcmxheVdpZGdldHNbV2lkZ2V0SWQ6
OlZ1bGthblNlY29uZGFyeUNvbW1hbmRCdWZmZXJQb29sV2FzdGVdLnJlc2V0KHdpZGdldCk7CiAg
ICAgICAgIHsKQEAgLTIyNiw4ICsyMjYsOCBAQCB2b2lkIE92ZXJsYXk6OmluaXRPdmVybGF5V2lk
Z2V0cygpCiAgICAgICAgICAgICB3aWRnZXQtPmRlc2NyaXB0aW9uLmNvb3Jkc1syXSA9IHN0ZDo6
bWluKG9mZnNldFggKyB3aWR0aCwgLTEpOwogICAgICAgICAgICAgd2lkZ2V0LT5kZXNjcmlwdGlv
bi5jb29yZHNbM10gPSBvZmZzZXRZOwogICAgICAgICAgICAgd2lkZ2V0LT5kZXNjcmlwdGlvbi5j
b2xvclswXSAgPSAxLjBmOwotICAgICAgICAgICAgd2lkZ2V0LT5kZXNjcmlwdGlvbi5jb2xvclsx
XSAgPSAwLjc4NDMxMzcyNTQ5ZjsKLSAgICAgICAgICAgIHdpZGdldC0+ZGVzY3JpcHRpb24uY29s
b3JbMl0gID0gMC4yOTQxMTc2NDcwNTlmOworICAgICAgICAgICAgd2lkZ2V0LT5kZXNjcmlwdGlv
bi5jb2xvclsxXSAgPSAwLjc4NDMxMzcyNTQ5MDE5NjFmOworICAgICAgICAgICAgd2lkZ2V0LT5k
ZXNjcmlwdGlvbi5jb2xvclsyXSAgPSAwLjI5NDExNzY0NzA1ODgyMzU0ZjsKICAgICAgICAgICAg
IHdpZGdldC0+ZGVzY3JpcHRpb24uY29sb3JbM10gID0gMS4wZjsKICAgICAgICAgfQogICAgIH0K
QEAgLTI0NywxMCArMjQ3LDEwIEBAIHZvaWQgT3ZlcmxheTo6aW5pdE92ZXJsYXlXaWRnZXRzKCkK
ICAgICAgICAgICAgIHdpZGdldC0+Y29vcmRzWzFdID0gb2Zmc2V0WTsKICAgICAgICAgICAgIHdp
ZGdldC0+Y29vcmRzWzJdID0gb2Zmc2V0WCArIHdpZHRoOwogICAgICAgICAgICAgd2lkZ2V0LT5j
b29yZHNbM10gPSBvZmZzZXRZICsgaGVpZ2h0OwotICAgICAgICAgICAgd2lkZ2V0LT5jb2xvclsw
XSAgPSAwLjI5NDExNzY0NzA1OWY7Ci0gICAgICAgICAgICB3aWRnZXQtPmNvbG9yWzFdICA9IDAu
Nzg0MzEzNzI1NDlmOworICAgICAgICAgICAgd2lkZ2V0LT5jb2xvclswXSAgPSAwLjI5NDExNzY0
NzA1ODgyMzU0ZjsKKyAgICAgICAgICAgIHdpZGdldC0+Y29sb3JbMV0gID0gMC43ODQzMTM3MjU0
OTAxOTYxZjsKICAgICAgICAgICAgIHdpZGdldC0+Y29sb3JbMl0gID0gMC4wZjsKLSAgICAgICAg
ICAgIHdpZGdldC0+Y29sb3JbM10gID0gMC43ODQzMTM3MjU0OWY7CisgICAgICAgICAgICB3aWRn
ZXQtPmNvbG9yWzNdICA9IDAuNzg0MzEzNzI1NDkwMTk2MWY7CiAgICAgICAgIH0KICAgICAgICAg
bVN0YXRlLm1PdmVybGF5V2lkZ2V0c1tXaWRnZXRJZDo6VnVsa2FuV3JpdGVEZXNjcmlwdG9yU2V0
Q291bnRdLnJlc2V0KHdpZGdldCk7CiAgICAgICAgIHsKQEAgLTI2OCw4ICsyNjgsOCBAQCB2b2lk
IE92ZXJsYXk6OmluaXRPdmVybGF5V2lkZ2V0cygpCiAgICAgICAgICAgICB3aWRnZXQtPmRlc2Ny
aXB0aW9uLmNvb3Jkc1sxXSA9IHN0ZDo6bWF4KG9mZnNldFkgLSBoZWlnaHQsIDEpOwogICAgICAg
ICAgICAgd2lkZ2V0LT5kZXNjcmlwdGlvbi5jb29yZHNbMl0gPSBvZmZzZXRYICsgd2lkdGg7CiAg
ICAgICAgICAgICB3aWRnZXQtPmRlc2NyaXB0aW9uLmNvb3Jkc1szXSA9IG9mZnNldFk7Ci0gICAg
ICAgICAgICB3aWRnZXQtPmRlc2NyaXB0aW9uLmNvbG9yWzBdICA9IDAuMjk0MTE3NjQ3MDU5ZjsK
LSAgICAgICAgICAgIHdpZGdldC0+ZGVzY3JpcHRpb24uY29sb3JbMV0gID0gMC43ODQzMTM3MjU0
OWY7CisgICAgICAgICAgICB3aWRnZXQtPmRlc2NyaXB0aW9uLmNvbG9yWzBdICA9IDAuMjk0MTE3
NjQ3MDU4ODIzNTRmOworICAgICAgICAgICAgd2lkZ2V0LT5kZXNjcmlwdGlvbi5jb2xvclsxXSAg
PSAwLjc4NDMxMzcyNTQ5MDE5NjFmOwogICAgICAgICAgICAgd2lkZ2V0LT5kZXNjcmlwdGlvbi5j
b2xvclsyXSAgPSAwLjBmOwogICAgICAgICAgICAgd2lkZ2V0LT5kZXNjcmlwdGlvbi5jb2xvclsz
XSAgPSAxLjBmOwogICAgICAgICB9CkBAIC0yOTIsOCArMjkyLDggQEAgdm9pZCBPdmVybGF5Ojpp
bml0T3ZlcmxheVdpZGdldHMoKQogICAgICAgICAgICAgd2lkZ2V0LT5jb29yZHNbM10gPSBvZmZz
ZXRZICsgaGVpZ2h0OwogICAgICAgICAgICAgd2lkZ2V0LT5jb2xvclswXSAgPSAxLjBmOwogICAg
ICAgICAgICAgd2lkZ2V0LT5jb2xvclsxXSAgPSAwLjBmOwotICAgICAgICAgICAgd2lkZ2V0LT5j
b2xvclsyXSAgPSAwLjI5NDExNzY0NzA1OWY7Ci0gICAgICAgICAgICB3aWRnZXQtPmNvbG9yWzNd
ICA9IDAuNzg0MzEzNzI1NDlmOworICAgICAgICAgICAgd2lkZ2V0LT5jb2xvclsyXSAgPSAwLjI5
NDExNzY0NzA1ODgyMzU0ZjsKKyAgICAgICAgICAgIHdpZGdldC0+Y29sb3JbM10gID0gMC43ODQz
MTM3MjU0OTAxOTYxZjsKICAgICAgICAgfQogICAgICAgICBtU3RhdGUubU92ZXJsYXlXaWRnZXRz
W1dpZGdldElkOjpWdWxrYW5EZXNjcmlwdG9yU2V0QWxsb2NhdGlvbnNdLnJlc2V0KHdpZGdldCk7
CiAgICAgICAgIHsKQEAgLTMxMyw3ICszMTMsNyBAQCB2b2lkIE92ZXJsYXk6OmluaXRPdmVybGF5
V2lkZ2V0cygpCiAgICAgICAgICAgICB3aWRnZXQtPmRlc2NyaXB0aW9uLmNvb3Jkc1szXSA9IG9m
ZnNldFk7CiAgICAgICAgICAgICB3aWRnZXQtPmRlc2NyaXB0aW9uLmNvbG9yWzBdICA9IDEuMGY7
CiAgICAgICAgICAgICB3aWRnZXQtPmRlc2NyaXB0aW9uLmNvbG9yWzFdICA9IDAuMGY7Ci0gICAg
ICAgICAgICB3aWRnZXQtPmRlc2NyaXB0aW9uLmNvbG9yWzJdICA9IDAuMjk0MTE3NjQ3MDU5ZjsK
KyAgICAgICAgICAgIHdpZGdldC0+ZGVzY3JpcHRpb24uY29sb3JbMl0gID0gMC4yOTQxMTc2NDcw
NTg4MjM1NGY7CiAgICAgICAgICAgICB3aWRnZXQtPmRlc2NyaXB0aW9uLmNvbG9yWzNdICA9IDEu
MGY7CiAgICAgICAgIH0KICAgICB9CkBAIC0zMzUsOCArMzM1LDggQEAgdm9pZCBPdmVybGF5Ojpp
bml0T3ZlcmxheVdpZGdldHMoKQogICAgICAgICAgICAgd2lkZ2V0LT5jb29yZHNbM10gPSBvZmZz
ZXRZICsgaGVpZ2h0OwogICAgICAgICAgICAgd2lkZ2V0LT5jb2xvclswXSAgPSAxLjBmOwogICAg
ICAgICAgICAgd2lkZ2V0LT5jb2xvclsxXSAgPSAwLjBmOwotICAgICAgICAgICAgd2lkZ2V0LT5j
b2xvclsyXSAgPSAwLjI5NDExNzY0NzA1OWY7Ci0gICAgICAgICAgICB3aWRnZXQtPmNvbG9yWzNd
ICA9IDAuNzg0MzEzNzI1NDlmOworICAgICAgICAgICAgd2lkZ2V0LT5jb2xvclsyXSAgPSAwLjI5
NDExNzY0NzA1ODgyMzU0ZjsKKyAgICAgICAgICAgIHdpZGdldC0+Y29sb3JbM10gID0gMC43ODQz
MTM3MjU0OTAxOTYxZjsKICAgICAgICAgfQogICAgICAgICBtU3RhdGUubU92ZXJsYXlXaWRnZXRz
W1dpZGdldElkOjpWdWxrYW5TaGFkZXJCdWZmZXJEU0hpdFJhdGVdLnJlc2V0KHdpZGdldCk7CiAg
ICAgICAgIHsKQEAgLTM1Niw3ICszNTYsNyBAQCB2b2lkIE92ZXJsYXk6OmluaXRPdmVybGF5V2lk
Z2V0cygpCiAgICAgICAgICAgICB3aWRnZXQtPmRlc2NyaXB0aW9uLmNvb3Jkc1szXSA9IG9mZnNl
dFk7CiAgICAgICAgICAgICB3aWRnZXQtPmRlc2NyaXB0aW9uLmNvbG9yWzBdICA9IDEuMGY7CiAg
ICAgICAgICAgICB3aWRnZXQtPmRlc2NyaXB0aW9uLmNvbG9yWzFdICA9IDAuMGY7Ci0gICAgICAg
ICAgICB3aWRnZXQtPmRlc2NyaXB0aW9uLmNvbG9yWzJdICA9IDAuMjk0MTE3NjQ3MDU5ZjsKKyAg
ICAgICAgICAgIHdpZGdldC0+ZGVzY3JpcHRpb24uY29sb3JbMl0gID0gMC4yOTQxMTc2NDcwNTg4
MjM1NGY7CiAgICAgICAgICAgICB3aWRnZXQtPmRlc2NyaXB0aW9uLmNvbG9yWzNdICA9IDEuMGY7
CiAgICAgICAgIH0KICAgICB9CkBAIC0zNzcsOSArMzc3LDkgQEAgdm9pZCBPdmVybGF5Ojppbml0
T3ZlcmxheVdpZGdldHMoKQogICAgICAgICAgICAgd2lkZ2V0LT5jb29yZHNbMl0gPSBvZmZzZXRY
OwogICAgICAgICAgICAgd2lkZ2V0LT5jb29yZHNbM10gPSBvZmZzZXRZOwogICAgICAgICAgICAg
d2lkZ2V0LT5jb2xvclswXSAgPSAwLjBmOwotICAgICAgICAgICAgd2lkZ2V0LT5jb2xvclsxXSAg
PSAwLjc4NDMxMzcyNTQ5ZjsKLSAgICAgICAgICAgIHdpZGdldC0+Y29sb3JbMl0gID0gMC4yOTQx
MTc2NDcwNTlmOwotICAgICAgICAgICAgd2lkZ2V0LT5jb2xvclszXSAgPSAwLjc4NDMxMzcyNTQ5
ZjsKKyAgICAgICAgICAgIHdpZGdldC0+Y29sb3JbMV0gID0gMC43ODQzMTM3MjU0OTAxOTYxZjsK
KyAgICAgICAgICAgIHdpZGdldC0+Y29sb3JbMl0gID0gMC4yOTQxMTc2NDcwNTg4MjM1NGY7Cisg
ICAgICAgICAgICB3aWRnZXQtPmNvbG9yWzNdICA9IDAuNzg0MzEzNzI1NDkwMTk2MWY7CiAgICAg
ICAgIH0KICAgICAgICAgbVN0YXRlLm1PdmVybGF5V2lkZ2V0c1tXaWRnZXRJZDo6VnVsa2FuRHlu
YW1pY0J1ZmZlckFsbG9jYXRpb25zXS5yZXNldCh3aWRnZXQpOwogICAgICAgICB7CkBAIC0zOTgs
OCArMzk4LDggQEAgdm9pZCBPdmVybGF5Ojppbml0T3ZlcmxheVdpZGdldHMoKQogICAgICAgICAg
ICAgd2lkZ2V0LT5kZXNjcmlwdGlvbi5jb29yZHNbMl0gPSBvZmZzZXRYOwogICAgICAgICAgICAg
d2lkZ2V0LT5kZXNjcmlwdGlvbi5jb29yZHNbM10gPSBvZmZzZXRZOwogICAgICAgICAgICAgd2lk
Z2V0LT5kZXNjcmlwdGlvbi5jb2xvclswXSAgPSAwLjBmOwotICAgICAgICAgICAgd2lkZ2V0LT5k
ZXNjcmlwdGlvbi5jb2xvclsxXSAgPSAwLjc4NDMxMzcyNTQ5ZjsKLSAgICAgICAgICAgIHdpZGdl
dC0+ZGVzY3JpcHRpb24uY29sb3JbMl0gID0gMC4yOTQxMTc2NDcwNTlmOworICAgICAgICAgICAg
d2lkZ2V0LT5kZXNjcmlwdGlvbi5jb2xvclsxXSAgPSAwLjc4NDMxMzcyNTQ5MDE5NjFmOworICAg
ICAgICAgICAgd2lkZ2V0LT5kZXNjcmlwdGlvbi5jb2xvclsyXSAgPSAwLjI5NDExNzY0NzA1ODgy
MzU0ZjsKICAgICAgICAgICAgIHdpZGdldC0+ZGVzY3JpcHRpb24uY29sb3JbM10gID0gMS4wZjsK
ICAgICAgICAgfQogICAgIH0KQEAgLTQyMCw5ICs0MjAsOSBAQCB2b2lkIE92ZXJsYXk6OmluaXRP
dmVybGF5V2lkZ2V0cygpCiAgICAgICAgICAgICB3aWRnZXQtPmNvb3Jkc1syXSA9IG9mZnNldFgg
KyB3aWR0aDsKICAgICAgICAgICAgIHdpZGdldC0+Y29vcmRzWzNdID0gb2Zmc2V0WSArIGhlaWdo
dDsKICAgICAgICAgICAgIHdpZGdldC0+Y29sb3JbMF0gID0gMC4wZjsKLSAgICAgICAgICAgIHdp
ZGdldC0+Y29sb3JbMV0gID0gMC43ODQzMTM3MjU0OWY7Ci0gICAgICAgICAgICB3aWRnZXQtPmNv
bG9yWzJdICA9IDAuNzI1NDkwMTk2MDc4ZjsKLSAgICAgICAgICAgIHdpZGdldC0+Y29sb3JbM10g
ID0gMC43ODQzMTM3MjU0OWY7CisgICAgICAgICAgICB3aWRnZXQtPmNvbG9yWzFdICA9IDAuNzg0
MzEzNzI1NDkwMTk2MWY7CisgICAgICAgICAgICB3aWRnZXQtPmNvbG9yWzJdICA9IDAuNzI1NDkw
MTk2MDc4NDMxM2Y7CisgICAgICAgICAgICB3aWRnZXQtPmNvbG9yWzNdICA9IDAuNzg0MzEzNzI1
NDkwMTk2MWY7CiAgICAgICAgIH0KICAgICAgICAgbVN0YXRlLm1PdmVybGF5V2lkZ2V0c1tXaWRn
ZXRJZDo6VnVsa2FuRGVzY3JpcHRvckNhY2hlU2l6ZV0ucmVzZXQod2lkZ2V0KTsKICAgICAgICAg
ewpAQCAtNDQxLDggKzQ0MSw4IEBAIHZvaWQgT3ZlcmxheTo6aW5pdE92ZXJsYXlXaWRnZXRzKCkK
ICAgICAgICAgICAgIHdpZGdldC0+ZGVzY3JpcHRpb24uY29vcmRzWzJdID0gb2Zmc2V0WCArIHdp
ZHRoOwogICAgICAgICAgICAgd2lkZ2V0LT5kZXNjcmlwdGlvbi5jb29yZHNbM10gPSBvZmZzZXRZ
OwogICAgICAgICAgICAgd2lkZ2V0LT5kZXNjcmlwdGlvbi5jb2xvclswXSAgPSAwLjBmOwotICAg
ICAgICAgICAgd2lkZ2V0LT5kZXNjcmlwdGlvbi5jb2xvclsxXSAgPSAwLjc4NDMxMzcyNTQ5ZjsK
LSAgICAgICAgICAgIHdpZGdldC0+ZGVzY3JpcHRpb24uY29sb3JbMl0gID0gMC4yOTQxMTc2NDcw
NTlmOworICAgICAgICAgICAgd2lkZ2V0LT5kZXNjcmlwdGlvbi5jb2xvclsxXSAgPSAwLjc4NDMx
MzcyNTQ5MDE5NjFmOworICAgICAgICAgICAgd2lkZ2V0LT5kZXNjcmlwdGlvbi5jb2xvclsyXSAg
PSAwLjI5NDExNzY0NzA1ODgyMzU0ZjsKICAgICAgICAgICAgIHdpZGdldC0+ZGVzY3JpcHRpb24u
Y29sb3JbM10gID0gMS4wZjsKICAgICAgICAgfQogICAgIH0KQEAgLTQ2Myw5ICs0NjMsOSBAQCB2
b2lkIE92ZXJsYXk6OmluaXRPdmVybGF5V2lkZ2V0cygpCiAgICAgICAgICAgICB3aWRnZXQtPmNv
b3Jkc1syXSA9IG9mZnNldFggKyB3aWR0aDsKICAgICAgICAgICAgIHdpZGdldC0+Y29vcmRzWzNd
ID0gb2Zmc2V0WSArIGhlaWdodDsKICAgICAgICAgICAgIHdpZGdldC0+Y29sb3JbMF0gID0gMC4w
ZjsKLSAgICAgICAgICAgIHdpZGdldC0+Y29sb3JbMV0gID0gMC43ODQzMTM3MjU0OWY7Ci0gICAg
ICAgICAgICB3aWRnZXQtPmNvbG9yWzJdICA9IDAuMjk0MTE3NjQ3MDU5ZjsKLSAgICAgICAgICAg
IHdpZGdldC0+Y29sb3JbM10gID0gMC43ODQzMTM3MjU0OWY7CisgICAgICAgICAgICB3aWRnZXQt
PmNvbG9yWzFdICA9IDAuNzg0MzEzNzI1NDkwMTk2MWY7CisgICAgICAgICAgICB3aWRnZXQtPmNv
bG9yWzJdICA9IDAuMjk0MTE3NjQ3MDU4ODIzNTRmOworICAgICAgICAgICAgd2lkZ2V0LT5jb2xv
clszXSAgPSAwLjc4NDMxMzcyNTQ5MDE5NjFmOwogICAgICAgICB9CiAgICAgICAgIG1TdGF0ZS5t
T3ZlcmxheVdpZGdldHNbV2lkZ2V0SWQ6OlZ1bGthblRleHR1cmVEZXNjcmlwdG9yQ2FjaGVTaXpl
XS5yZXNldCh3aWRnZXQpOwogICAgICAgICB7CkBAIC00ODQsOCArNDg0LDggQEAgdm9pZCBPdmVy
bGF5Ojppbml0T3ZlcmxheVdpZGdldHMoKQogICAgICAgICAgICAgd2lkZ2V0LT5kZXNjcmlwdGlv
bi5jb29yZHNbMl0gPSBvZmZzZXRYICsgd2lkdGg7CiAgICAgICAgICAgICB3aWRnZXQtPmRlc2Ny
aXB0aW9uLmNvb3Jkc1szXSA9IG9mZnNldFk7CiAgICAgICAgICAgICB3aWRnZXQtPmRlc2NyaXB0
aW9uLmNvbG9yWzBdICA9IDAuMGY7Ci0gICAgICAgICAgICB3aWRnZXQtPmRlc2NyaXB0aW9uLmNv
bG9yWzFdICA9IDAuNzg0MzEzNzI1NDlmOwotICAgICAgICAgICAgd2lkZ2V0LT5kZXNjcmlwdGlv
bi5jb2xvclsyXSAgPSAwLjI5NDExNzY0NzA1OWY7CisgICAgICAgICAgICB3aWRnZXQtPmRlc2Ny
aXB0aW9uLmNvbG9yWzFdICA9IDAuNzg0MzEzNzI1NDkwMTk2MWY7CisgICAgICAgICAgICB3aWRn
ZXQtPmRlc2NyaXB0aW9uLmNvbG9yWzJdICA9IDAuMjk0MTE3NjQ3MDU4ODIzNTRmOwogICAgICAg
ICAgICAgd2lkZ2V0LT5kZXNjcmlwdGlvbi5jb2xvclszXSAgPSAxLjBmOwogICAgICAgICB9CiAg
ICAgfQpAQCAtNTA2LDkgKzUwNiw5IEBAIHZvaWQgT3ZlcmxheTo6aW5pdE92ZXJsYXlXaWRnZXRz
KCkKICAgICAgICAgICAgIHdpZGdldC0+Y29vcmRzWzJdID0gb2Zmc2V0WCArIHdpZHRoOwogICAg
ICAgICAgICAgd2lkZ2V0LT5jb29yZHNbM10gPSBvZmZzZXRZICsgaGVpZ2h0OwogICAgICAgICAg
ICAgd2lkZ2V0LT5jb2xvclswXSAgPSAwLjBmOwotICAgICAgICAgICAgd2lkZ2V0LT5jb2xvclsx
XSAgPSAwLjc4NDMxMzcyNTQ5ZjsKLSAgICAgICAgICAgIHdpZGdldC0+Y29sb3JbMl0gID0gMS4x
NzY0NzA1ODgyNGY7Ci0gICAgICAgICAgICB3aWRnZXQtPmNvbG9yWzNdICA9IDAuNzg0MzEzNzI1
NDlmOworICAgICAgICAgICAgd2lkZ2V0LT5jb2xvclsxXSAgPSAwLjc4NDMxMzcyNTQ5MDE5NjFm
OworICAgICAgICAgICAgd2lkZ2V0LT5jb2xvclsyXSAgPSAxLjE3NjQ3MDU4ODIzNTI5NDJmOwor
ICAgICAgICAgICAgd2lkZ2V0LT5jb2xvclszXSAgPSAwLjc4NDMxMzcyNTQ5MDE5NjFmOwogICAg
ICAgICB9CiAgICAgICAgIG1TdGF0ZS5tT3ZlcmxheVdpZGdldHNbV2lkZ2V0SWQ6OlZ1bGthblVu
aWZvcm1EZXNjcmlwdG9yQ2FjaGVTaXplXS5yZXNldCh3aWRnZXQpOwogICAgICAgICB7CkBAIC01
MjcsMTEgKzUyNywzNCBAQCB2b2lkIE92ZXJsYXk6OmluaXRPdmVybGF5V2lkZ2V0cygpCiAgICAg
ICAgICAgICB3aWRnZXQtPmRlc2NyaXB0aW9uLmNvb3Jkc1syXSA9IG9mZnNldFggKyB3aWR0aDsK
ICAgICAgICAgICAgIHdpZGdldC0+ZGVzY3JpcHRpb24uY29vcmRzWzNdID0gb2Zmc2V0WTsKICAg
ICAgICAgICAgIHdpZGdldC0+ZGVzY3JpcHRpb24uY29sb3JbMF0gID0gMC4wZjsKLSAgICAgICAg
ICAgIHdpZGdldC0+ZGVzY3JpcHRpb24uY29sb3JbMV0gID0gMC43ODQzMTM3MjU0OWY7Ci0gICAg
ICAgICAgICB3aWRnZXQtPmRlc2NyaXB0aW9uLmNvbG9yWzJdICA9IDAuMjk0MTE3NjQ3MDU5ZjsK
KyAgICAgICAgICAgIHdpZGdldC0+ZGVzY3JpcHRpb24uY29sb3JbMV0gID0gMC43ODQzMTM3MjU0
OTAxOTYxZjsKKyAgICAgICAgICAgIHdpZGdldC0+ZGVzY3JpcHRpb24uY29sb3JbMl0gID0gMC4y
OTQxMTc2NDcwNTg4MjM1NGY7CiAgICAgICAgICAgICB3aWRnZXQtPmRlc2NyaXB0aW9uLmNvbG9y
WzNdICA9IDEuMGY7CiAgICAgICAgIH0KICAgICB9CisKKyAgICB7CisgICAgICAgIENvdW50ICp3
aWRnZXQgPSBuZXcgQ291bnQ7CisgICAgICAgIHsKKyAgICAgICAgICAgIGNvbnN0IGludDMyX3Qg
Zm9udFNpemUgPSBHZXRGb250U2l6ZShrRm9udE1pcFNtYWxsLCBrTGFyZ2VGb250KTsKKyAgICAg
ICAgICAgIGNvbnN0IGludDMyX3Qgb2Zmc2V0WCAgPSAxMDsKKyAgICAgICAgICAgIGNvbnN0IGlu
dDMyX3Qgb2Zmc2V0WSAgPSAxMDA7CisgICAgICAgICAgICBjb25zdCBpbnQzMl90IHdpZHRoICAg
ID0gMzAgKiAoa0ZvbnRHbHlwaFdpZHRoID4+IGZvbnRTaXplKTsKKyAgICAgICAgICAgIGNvbnN0
IGludDMyX3QgaGVpZ2h0ICAgPSAoa0ZvbnRHbHlwaEhlaWdodCA+PiBmb250U2l6ZSk7CisKKyAg
ICAgICAgICAgIHdpZGdldC0+dHlwZSAgICAgID0gV2lkZ2V0VHlwZTo6Q291bnQ7CisgICAgICAg
ICAgICB3aWRnZXQtPmZvbnRTaXplICA9IGZvbnRTaXplOworICAgICAgICAgICAgd2lkZ2V0LT5j
b29yZHNbMF0gPSBvZmZzZXRYOworICAgICAgICAgICAgd2lkZ2V0LT5jb29yZHNbMV0gPSBvZmZz
ZXRZOworICAgICAgICAgICAgd2lkZ2V0LT5jb29yZHNbMl0gPSBvZmZzZXRYICsgd2lkdGg7Cisg
ICAgICAgICAgICB3aWRnZXQtPmNvb3Jkc1szXSA9IG9mZnNldFkgKyBoZWlnaHQ7CisgICAgICAg
ICAgICB3aWRnZXQtPmNvbG9yWzBdICA9IDEuMGY7CisgICAgICAgICAgICB3aWRnZXQtPmNvbG9y
WzFdICA9IDEuMGY7CisgICAgICAgICAgICB3aWRnZXQtPmNvbG9yWzJdICA9IDEuMGY7CisgICAg
ICAgICAgICB3aWRnZXQtPmNvbG9yWzNdICA9IDEuMGY7CisgICAgICAgIH0KKyAgICAgICAgbVN0
YXRlLm1PdmVybGF5V2lkZ2V0c1tXaWRnZXRJZDo6VnVsa2FuRGVzY3JpcHRvckNhY2hlS2V5U2l6
ZV0ucmVzZXQod2lkZ2V0KTsKKyAgICB9CiB9CiAKIH0gIC8vIG5hbWVzcGFjZSBnbApkaWZmIC0t
Z2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL092ZXJsYXlfYXV0b2dl
bi5oIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL092ZXJsYXlfYXV0b2dl
bi5oCmluZGV4IDA2ZGI0ODk2NGZiODcyYTZmZGUyYzMzNGNkYTMyMTBlYzE1NDM1MTcuLjM0ZmFj
ZmI5OTI3MjUyODM0MGJjMGJmNTU5ZDFhNTM2YWNhYTU0MDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9PdmVybGF5X2F1dG9nZW4uaAorKysgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvT3ZlcmxheV9hdXRvZ2VuLmgKQEAgLTM4
LDYgKzM4LDggQEAgZW51bSBjbGFzcyBXaWRnZXRJZAogICAgIFZ1bGthblRleHR1cmVEZXNjcmlw
dG9yQ2FjaGVTaXplLAogICAgIC8vIE51bWJlciBvZiBjYWNoZWQgZGVmYXVsdCB1bmlmb3JtIGRl
c2NyaXB0b3Igc2V0cwogICAgIFZ1bGthblVuaWZvcm1EZXNjcmlwdG9yQ2FjaGVTaXplLAorICAg
IC8vIFRvdGFsIHNpemUgb2YgYWxsIGtleXMgaW4gdGhlIGRlc2NyaXB0b3Igc2V0IGNhY2hlcwor
ICAgIFZ1bGthbkRlc2NyaXB0b3JDYWNoZUtleVNpemUsCiAKICAgICBJbnZhbGlkRW51bSwKICAg
ICBFbnVtQ291bnQgPSBJbnZhbGlkRW51bSwKQEAgLTU3LDYgKzU5LDcgQEAgZW51bSBjbGFzcyBX
aWRnZXRJZAogICAgIFBST0MoVnVsa2FuRHluYW1pY0J1ZmZlckFsbG9jYXRpb25zKSAgICAgICAg
XAogICAgIFBST0MoVnVsa2FuRGVzY3JpcHRvckNhY2hlU2l6ZSkgICAgICAgICAgICAgXAogICAg
IFBST0MoVnVsa2FuVGV4dHVyZURlc2NyaXB0b3JDYWNoZVNpemUpICAgICAgXAotICAgIFBST0Mo
VnVsa2FuVW5pZm9ybURlc2NyaXB0b3JDYWNoZVNpemUpCisgICAgUFJPQyhWdWxrYW5Vbmlmb3Jt
RGVzY3JpcHRvckNhY2hlU2l6ZSkgICAgICBcCisgICAgUFJPQyhWdWxrYW5EZXNjcmlwdG9yQ2Fj
aGVLZXlTaXplKQogCiB9ICAvLyBuYW1lc3BhY2UgZ2wKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9Qcm9ncmFtLmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3NyYy9saWJBTkdMRS9Qcm9ncmFtLmNwcAppbmRleCAyN2FiYTYzYzMxNTFjNTdjZjI2
OWU3OGE1OGEzNmM2Y2I5Y2RhZDE0Li40ODI3N2EyNTMxZTM2ODk3ZDIzNTE5M2YzMDlkNzMxOTZm
Yjk4OThjIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUv
UHJvZ3JhbS5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL1By
b2dyYW0uY3BwCkBAIC0xMzQzLDYgKzEzNDMsNyBAQCBhbmdsZTo6UmVzdWx0IFByb2dyYW06Omxp
bmtJbXBsKGNvbnN0IENvbnRleHQgKmNvbnRleHQpCiAKICAgICAgICAgICAgIG1TdGF0ZS5tRXhl
Y3V0YWJsZS0+bVVzZXNFYXJseUZyYWdtZW50VGVzdHNPcHRpbWl6YXRpb24gPQogICAgICAgICAg
ICAgICAgIGZyYWdtZW50U2hhZGVyLT5oYXNFYXJseUZyYWdtZW50VGVzdHNPcHRpbWl6YXRpb24o
KTsKKyAgICAgICAgICAgIG1TdGF0ZS5tQWR2YW5jZWRCbGVuZEVxdWF0aW9ucyA9IGZyYWdtZW50
U2hhZGVyLT5nZXRBZHZhbmNlZEJsZW5kRXF1YXRpb25zKCk7CiAgICAgICAgICAgICBtU3RhdGUu
bVNwZWNDb25zdFVzYWdlQml0cyB8PSBmcmFnbWVudFNoYWRlci0+Z2V0U3BlY0NvbnN0VXNhZ2VC
aXRzKCk7CiAgICAgICAgIH0KIApAQCAtMTU0MCw2ICsxNTQxLDcgQEAgdm9pZCBQcm9ncmFtOjp1
bmxpbmsoKQogICAgIG1TdGF0ZS5tQ2FjaGVkQmFzZVZlcnRleCAgICAgICAgICAgICAgPSAwOwog
ICAgIG1TdGF0ZS5tQ2FjaGVkQmFzZUluc3RhbmNlICAgICAgICAgICAgPSAwOwogICAgIG1TdGF0
ZS5tRWFybHlGcmFtZW50VGVzdHNPcHRpbWl6YXRpb24gPSBmYWxzZTsKKyAgICBtU3RhdGUubUFk
dmFuY2VkQmxlbmRFcXVhdGlvbnMucmVzZXQoKTsKICAgICBtU3RhdGUubVNwZWNDb25zdFVzYWdl
Qml0cy5yZXNldCgpOwogCiAgICAgbVZhbGlkYXRlZCA9IGZhbHNlOwpAQCAtMzYxNiw2ICszNjE4
LDcgQEAgYW5nbGU6OlJlc3VsdCBQcm9ncmFtOjpzZXJpYWxpemUoY29uc3QgQ29udGV4dCAqY29u
dGV4dCwgYW5nbGU6Ok1lbW9yeUJ1ZmZlciAqYmkKIAogICAgIHN0cmVhbS53cml0ZUludChtU3Rh
dGUubU51bVZpZXdzKTsKICAgICBzdHJlYW0ud3JpdGVCb29sKG1TdGF0ZS5tRWFybHlGcmFtZW50
VGVzdHNPcHRpbWl6YXRpb24pOworICAgIHN0cmVhbS53cml0ZUludChtU3RhdGUubUFkdmFuY2Vk
QmxlbmRFcXVhdGlvbnMuYml0cygpKTsKICAgICBzdHJlYW0ud3JpdGVJbnQobVN0YXRlLm1TcGVj
Q29uc3RVc2FnZUJpdHMuYml0cygpKTsKIAogICAgIHN0cmVhbS53cml0ZUludChtU3RhdGUuZ2V0
VW5pZm9ybUxvY2F0aW9ucygpLnNpemUoKSk7CkBAIC0zNzA4LDcgKzM3MTEsMTIgQEAgYW5nbGU6
OlJlc3VsdCBQcm9ncmFtOjpkZXNlcmlhbGl6ZShjb25zdCBDb250ZXh0ICpjb250ZXh0LAogCiAg
ICAgbVN0YXRlLm1OdW1WaWV3cyAgICAgICAgICAgICAgICAgICAgICA9IHN0cmVhbS5yZWFkSW50
PGludD4oKTsKICAgICBtU3RhdGUubUVhcmx5RnJhbWVudFRlc3RzT3B0aW1pemF0aW9uID0gc3Ry
ZWFtLnJlYWRCb29sKCk7Ci0gICAgbVN0YXRlLm1TcGVjQ29uc3RVc2FnZUJpdHMgICAgICAgICAg
ICA9IHJ4OjpTcGVjQ29uc3RVc2FnZUJpdHMoc3RyZWFtLnJlYWRJbnQ8dWludDMyX3Q+KCkpOwor
CisgICAgc3RhdGljX2Fzc2VydChzaXplb2YobVN0YXRlLm1BZHZhbmNlZEJsZW5kRXF1YXRpb25z
LmJpdHMoKSkgPT0gc2l6ZW9mKHVpbnQzMl90KSk7CisgICAgbVN0YXRlLm1BZHZhbmNlZEJsZW5k
RXF1YXRpb25zID0gQmxlbmRFcXVhdGlvbkJpdFNldChzdHJlYW0ucmVhZEludDx1aW50MzJfdD4o
KSk7CisKKyAgICBzdGF0aWNfYXNzZXJ0KHNpemVvZihtU3RhdGUubVNwZWNDb25zdFVzYWdlQml0
cy5iaXRzKCkpID09IHNpemVvZih1aW50MzJfdCkpOworICAgIG1TdGF0ZS5tU3BlY0NvbnN0VXNh
Z2VCaXRzID0gcng6OlNwZWNDb25zdFVzYWdlQml0cyhzdHJlYW0ucmVhZEludDx1aW50MzJfdD4o
KSk7CiAKICAgICBjb25zdCBzaXplX3QgdW5pZm9ybUluZGV4Q291bnQgPSBzdHJlYW0ucmVhZElu
dDxzaXplX3Q+KCk7CiAgICAgQVNTRVJUKG1TdGF0ZS5tVW5pZm9ybUxvY2F0aW9ucy5lbXB0eSgp
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9Qcm9n
cmFtLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvUHJvZ3JhbS5oCmlu
ZGV4IGQzNWMwYTg2ZDRlMWIzZjU3NjY0NzdjYTY5MjJkNGFiMGEwYTJlZWQuLjBlNGM1OWFiYTMx
YmFjNzljMmFmZTk5MWVhYzA0NjVkMmZiYWEzNzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL3NyYy9saWJBTkdMRS9Qcm9ncmFtLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc3JjL2xpYkFOR0xFL1Byb2dyYW0uaApAQCAtMzQ0LDYgKzM0NCw3IEBAIGNsYXNzIFBy
b2dyYW1TdGF0ZSBmaW5hbCA6IGFuZ2xlOjpOb25Db3B5YWJsZQogCiAgICAgYm9vbCBoYXNJbWFn
ZXMoKSBjb25zdCB7IHJldHVybiAhZ2V0SW1hZ2VCaW5kaW5ncygpLmVtcHR5KCk7IH0KICAgICBi
b29sIGhhc0Vhcmx5RnJhZ21lbnRUZXN0c09wdGltaXphdGlvbigpIGNvbnN0IHsgcmV0dXJuIG1F
YXJseUZyYW1lbnRUZXN0c09wdGltaXphdGlvbjsgfQorICAgIEJsZW5kRXF1YXRpb25CaXRTZXQg
Z2V0QWR2YW5jZWRCbGVuZEVxdWF0aW9ucygpIGNvbnN0IHsgcmV0dXJuIG1BZHZhbmNlZEJsZW5k
RXF1YXRpb25zOyB9CiAgICAgcng6OlNwZWNDb25zdFVzYWdlQml0cyBnZXRTcGVjQ29uc3RVc2Fn
ZUJpdHMoKSBjb25zdCB7IHJldHVybiBtU3BlY0NvbnN0VXNhZ2VCaXRzOyB9CiAKICAgICAvLyBB
IFByb2dyYW0gY2FuIG9ubHkgZWl0aGVyIGJlIGdyYXBoaWNzIG9yIGNvbXB1dGUsIGJ1dCBuZXZl
ciBib3RoLCBzbyBpdApAQCAtMzkyLDYgKzM5Myw4IEBAIGNsYXNzIFByb2dyYW1TdGF0ZSBmaW5h
bCA6IGFuZ2xlOjpOb25Db3B5YWJsZQogICAgIGJvb2wgbUJpbmFyeVJldHJpZXZlYWJsZUhpbnQ7
CiAgICAgYm9vbCBtU2VwYXJhYmxlOwogICAgIGJvb2wgbUVhcmx5RnJhbWVudFRlc3RzT3B0aW1p
emF0aW9uOworICAgIC8vIEtIUl9ibGVuZF9lcXVhdGlvbl9hZHZhbmNlZCBzdXBwb3J0ZWQgZXF1
YXRpb24gbGlzdAorICAgIEJsZW5kRXF1YXRpb25CaXRTZXQgbUFkdmFuY2VkQmxlbmRFcXVhdGlv
bnM7CiAgICAgcng6OlNwZWNDb25zdFVzYWdlQml0cyBtU3BlY0NvbnN0VXNhZ2VCaXRzOwogCiAg
ICAgLy8gQU5HTEVfbXVsdGl2aWV3LgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvc3JjL2xpYkFOR0xFL1NoYWRlci5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
bGliQU5HTEUvU2hhZGVyLmNwcAppbmRleCBlYzZmMzc3Zjk4NGVlMzJlNjg1ODIyNzJlYjA4MmRl
MmM4MjlhY2RhLi45NDg0Yjk0Y2ZiMDlmZDc3MDc0NzZiNWFiOTRkNjMyMDk0MGZiZWRlIDEwMDY0
NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvU2hhZGVyLmNwcAor
KysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvU2hhZGVyLmNwcApAQCAt
MzMwLDEyICszMzAsMTMgQEAgdm9pZCBTaGFkZXI6OmNvbXBpbGUoY29uc3QgQ29udGV4dCAqY29u
dGV4dCkKICAgICBtU3RhdGUubUdlb21ldHJ5U2hhZGVySW5wdXRQcmltaXRpdmVUeXBlLnJlc2V0
KCk7CiAgICAgbVN0YXRlLm1HZW9tZXRyeVNoYWRlck91dHB1dFByaW1pdGl2ZVR5cGUucmVzZXQo
KTsKICAgICBtU3RhdGUubUdlb21ldHJ5U2hhZGVyTWF4VmVydGljZXMucmVzZXQoKTsKLSAgICBt
U3RhdGUubUdlb21ldHJ5U2hhZGVySW52b2NhdGlvbnMgICAgICA9IDE7Ci0gICAgbVN0YXRlLm1U
ZXNzQ29udHJvbFNoYWRlclZlcnRpY2VzICAgICAgPSAwOwotICAgIG1TdGF0ZS5tVGVzc0dlbk1v
ZGUgICAgICAgICAgICAgICAgICAgID0gMDsKLSAgICBtU3RhdGUubVRlc3NHZW5TcGFjaW5nICAg
ICAgICAgICAgICAgICA9IDA7Ci0gICAgbVN0YXRlLm1UZXNzR2VuVmVydGV4T3JkZXIgICAgICAg
ICAgICAgPSAwOwotICAgIG1TdGF0ZS5tVGVzc0dlblBvaW50TW9kZSAgICAgICAgICAgICAgID0g
MDsKKyAgICBtU3RhdGUubUdlb21ldHJ5U2hhZGVySW52b2NhdGlvbnMgPSAxOworICAgIG1TdGF0
ZS5tVGVzc0NvbnRyb2xTaGFkZXJWZXJ0aWNlcyA9IDA7CisgICAgbVN0YXRlLm1UZXNzR2VuTW9k
ZSAgICAgICAgICAgICAgID0gMDsKKyAgICBtU3RhdGUubVRlc3NHZW5TcGFjaW5nICAgICAgICAg
ICAgPSAwOworICAgIG1TdGF0ZS5tVGVzc0dlblZlcnRleE9yZGVyICAgICAgICA9IDA7CisgICAg
bVN0YXRlLm1UZXNzR2VuUG9pbnRNb2RlICAgICAgICAgID0gMDsKKyAgICBtU3RhdGUubUFkdmFu
Y2VkQmxlbmRFcXVhdGlvbnMucmVzZXQoKTsKICAgICBtU3RhdGUubUVhcmx5RnJhZ21lbnRUZXN0
c09wdGltaXphdGlvbiA9IGZhbHNlOwogICAgIG1TdGF0ZS5tU3BlY0NvbnN0VXNhZ2VCaXRzLnJl
c2V0KCk7CiAKQEAgLTUzNiw2ICs1MzcsOCBAQCB2b2lkIFNoYWRlcjo6cmVzb2x2ZUNvbXBpbGUo
KQogICAgICAgICAgICAgICAgIEdldEFjdGl2ZVNoYWRlclZhcmlhYmxlcyhzaDo6R2V0T3V0cHV0
VmFyaWFibGVzKGNvbXBpbGVySGFuZGxlKSk7CiAgICAgICAgICAgICBtU3RhdGUubUVhcmx5RnJh
Z21lbnRUZXN0c09wdGltaXphdGlvbiA9CiAgICAgICAgICAgICAgICAgc2g6Okhhc0Vhcmx5RnJh
Z21lbnRUZXN0c09wdGltaXphdGlvbihjb21waWxlckhhbmRsZSk7CisgICAgICAgICAgICBtU3Rh
dGUubUFkdmFuY2VkQmxlbmRFcXVhdGlvbnMgPQorICAgICAgICAgICAgICAgIEJsZW5kRXF1YXRp
b25CaXRTZXQoc2g6OkdldEFkdmFuY2VkQmxlbmRFcXVhdGlvbnMoY29tcGlsZXJIYW5kbGUpKTsK
ICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9CiAgICAgICAgIGNhc2UgU2hhZGVyVHlwZTo6
R2VvbWV0cnk6CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5H
TEUvU2hhZGVyLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvU2hhZGVy
LmgKaW5kZXggMzdkODI0ZTUxMWUzZDMxMGI4MDcwYzc3ZWUzNWY1ODdkY2ViMjc0MS4uNTg5OWUw
ZDNmZTY2NWYzZGJkM2M0MDBlYjNjNjNmODk2ODk1MzBlYyAxMDA2NDQKLS0tIGEvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL1NoYWRlci5oCisrKyBiL1NvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL3NyYy9saWJBTkdMRS9TaGFkZXIuaApAQCAtMTM1LDYgKzEzNSw3IEBAIGNsYXNz
IFNoYWRlclN0YXRlIGZpbmFsIDogYW5nbGU6Ok5vbkNvcHlhYmxlCiAgICAgc3RkOjp2ZWN0b3I8
c2g6OlNoYWRlclZhcmlhYmxlPiBtQWN0aXZlT3V0cHV0VmFyaWFibGVzOwogCiAgICAgYm9vbCBt
RWFybHlGcmFnbWVudFRlc3RzT3B0aW1pemF0aW9uOworICAgIEJsZW5kRXF1YXRpb25CaXRTZXQg
bUFkdmFuY2VkQmxlbmRFcXVhdGlvbnM7CiAgICAgcng6OlNwZWNDb25zdFVzYWdlQml0cyBtU3Bl
Y0NvbnN0VXNhZ2VCaXRzOwogCiAgICAgLy8gQU5HTEVfbXVsdGl2aWV3LgpAQCAtMjAzLDYgKzIw
NCw3IEBAIGNsYXNzIFNoYWRlciBmaW5hbCA6IGFuZ2xlOjpOb25Db3B5YWJsZSwgcHVibGljIExh
YmVsZWRPYmplY3QKICAgICB7CiAgICAgICAgIHJldHVybiBtU3RhdGUubUVhcmx5RnJhZ21lbnRU
ZXN0c09wdGltaXphdGlvbjsKICAgICB9CisgICAgQmxlbmRFcXVhdGlvbkJpdFNldCBnZXRBZHZh
bmNlZEJsZW5kRXF1YXRpb25zKCkgY29uc3QgeyByZXR1cm4gbVN0YXRlLm1BZHZhbmNlZEJsZW5k
RXF1YXRpb25zOyB9CiAgICAgcng6OlNwZWNDb25zdFVzYWdlQml0cyBnZXRTcGVjQ29uc3RVc2Fn
ZUJpdHMoKSBjb25zdCB7IHJldHVybiBtU3RhdGUubVNwZWNDb25zdFVzYWdlQml0czsgfQogCiAg
ICAgaW50IGdldFNoYWRlclZlcnNpb24oKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3NyYy9saWJBTkdMRS9TdGF0ZS5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9z
cmMvbGliQU5HTEUvU3RhdGUuY3BwCmluZGV4IDRhODdmMGQyOTE1OWNlNjQ2MzU0NjQwMzVjMWMy
M2RlNjQxODZmNjMuLjNmZjQ3MzBlZDMyYTViMzRkNWY3YjhkZTYwZmJjZmVjMDljMzhkZjkgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9TdGF0ZS5jcHAK
KysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL1N0YXRlLmNwcApAQCAt
MjE3OCw2ICsyMTc4LDEwIEBAIGFuZ2xlOjpSZXN1bHQgU3RhdGU6OmRldGFjaEJ1ZmZlcihDb250
ZXh0ICpjb250ZXh0LCBjb25zdCBCdWZmZXIgKmJ1ZmZlcikKICAgICBpZiAoY3VyVHJhbnNmb3Jt
RmVlZGJhY2spCiAgICAgewogICAgICAgICBBTkdMRV9UUlkoY3VyVHJhbnNmb3JtRmVlZGJhY2st
PmRldGFjaEJ1ZmZlcihjb250ZXh0LCBidWZmZXJJRCkpOworICAgICAgICBpZiAoaXNUcmFuc2Zv
cm1GZWVkYmFja0FjdGl2ZVVucGF1c2VkKCkpCisgICAgICAgIHsKKyAgICAgICAgICAgIGNvbnRl
eHQtPmdldFN0YXRlQ2FjaGUoKS5vbkFjdGl2ZVRyYW5zZm9ybUZlZWRiYWNrQ2hhbmdlKGNvbnRl
eHQpOworICAgICAgICB9CiAgICAgfQogCiAgICAgaWYgKGdldFZlcnRleEFycmF5KCktPmRldGFj
aEJ1ZmZlcihjb250ZXh0LCBidWZmZXJJRCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvbGliQU5HTEUvU3VyZmFjZS5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zcmMvbGliQU5HTEUvU3VyZmFjZS5jcHAKaW5kZXggOGIyMTg2ZTYzOTA0MTI5ODhhY2UzOWNh
YzI2MTA4NTRjZjEyYTMzZi4uNzQ1MTdmMjRkMThiYzZlODdmNzZjNWI5NGRmMjA5NGQ5MTZiNDcz
ZiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL1N1cmZh
Y2UuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9TdXJmYWNl
LmNwcApAQCAtOTYsNiArOTYsOCBAQCBTdXJmYWNlOjpTdXJmYWNlKEVHTGludCBzdXJmYWNlVHlw
ZSwKICAgICAgIG1Jc0N1cnJlbnRPbkFueUNvbnRleHQoZmFsc2UpLAogICAgICAgbUxvY2tCdWZm
ZXJQdHIobnVsbHB0ciksCiAgICAgICBtTG9ja0J1ZmZlclBpdGNoKDApLAorICAgICAgbUJ1ZmZl
ckFnZVF1ZXJpZWRTaW5jZUxhc3RTd2FwKGZhbHNlKSwKKyAgICAgIG1Jc0RhbWFnZVJlZ2lvblNl
dChmYWxzZSksCiAgICAgICBtSW5pdFN0YXRlKGdsOjpJbml0U3RhdGU6OkluaXRpYWxpemVkKSwK
ICAgICAgIG1JbXBsT2JzZXJ2ZXJCaW5kaW5nKHRoaXMsIGtTdXJmYWNlSW1wbFN1YmplY3RJbmRl
eCkKIHsKQEAgLTE3NSw2ICsxNzcsMTAgQEAgdm9pZCBTdXJmYWNlOjpwb3N0U3dhcChjb25zdCBn
bDo6Q29udGV4dCAqY29udGV4dCkKICAgICAgICAgbUluaXRTdGF0ZSA9IGdsOjpJbml0U3RhdGU6
Ok1heU5lZWRJbml0OwogICAgICAgICBvblN0YXRlQ2hhbmdlKGFuZ2xlOjpTdWJqZWN0TWVzc2Fn
ZTo6U3ViamVjdENoYW5nZWQpOwogICAgIH0KKworICAgIG1CdWZmZXJBZ2VRdWVyaWVkU2luY2VM
YXN0U3dhcCA9IGZhbHNlOworCisgICAgbUlzRGFtYWdlUmVnaW9uU2V0ID0gZmFsc2U7CiB9CiAK
IEVycm9yIFN1cmZhY2U6OmluaXRpYWxpemUoY29uc3QgRGlzcGxheSAqZGlzcGxheSkKQEAgLTYw
OSw3ICs2MTUsNyBAQCBHTHVpbnQgU3VyZmFjZTo6Z2V0SWQoKSBjb25zdAogICAgIHJldHVybiAw
OwogfQogCi1FcnJvciBTdXJmYWNlOjpnZXRCdWZmZXJBZ2UoY29uc3QgZ2w6OkNvbnRleHQgKmNv
bnRleHQsIEVHTGludCAqYWdlKSBjb25zdAorRXJyb3IgU3VyZmFjZTo6Z2V0QnVmZmVyQWdlSW1w
bChjb25zdCBnbDo6Q29udGV4dCAqY29udGV4dCwgRUdMaW50ICphZ2UpIGNvbnN0CiB7CiAgICAg
Ly8gV2hlbiBFR0xfQlVGRkVSX1BSRVNFUlZFRCwgdGhlIHByZXZpb3VzIGZyYW1lIGNvbnRlbnRz
IGFyZSBjb3BpZWQgdG8KICAgICAvLyBjdXJyZW50IGZyYW1lLCBzbyB0aGUgYnVmZmVyIGFnZSBp
cyBhbHdheXMgMS4KQEAgLTYyNCw2ICs2MzAsMTYgQEAgRXJyb3IgU3VyZmFjZTo6Z2V0QnVmZmVy
QWdlKGNvbnN0IGdsOjpDb250ZXh0ICpjb250ZXh0LCBFR0xpbnQgKmFnZSkgY29uc3QKICAgICBy
ZXR1cm4gbUltcGxlbWVudGF0aW9uLT5nZXRCdWZmZXJBZ2UoY29udGV4dCwgYWdlKTsKIH0KIAor
RXJyb3IgU3VyZmFjZTo6Z2V0QnVmZmVyQWdlKGNvbnN0IGdsOjpDb250ZXh0ICpjb250ZXh0LCBF
R0xpbnQgKmFnZSkKK3sKKyAgICBFcnJvciBlcnIgPSBnZXRCdWZmZXJBZ2VJbXBsKGNvbnRleHQs
IGFnZSk7CisgICAgaWYgKCFlcnIuaXNFcnJvcigpKQorICAgIHsKKyAgICAgICAgbUJ1ZmZlckFn
ZVF1ZXJpZWRTaW5jZUxhc3RTd2FwID0gdHJ1ZTsKKyAgICB9CisgICAgcmV0dXJuIGVycjsKK30K
Kwogc3RkOjp1bmlxdWVfcHRyPGdsOjpGcmFtZWJ1ZmZlcj4gU3VyZmFjZTo6Y3JlYXRlRGVmYXVs
dEZyYW1lYnVmZmVyKGNvbnN0IGdsOjpDb250ZXh0ICpjb250ZXh0LAogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVnbDo6
U3VyZmFjZSAqcmVhZFN1cmZhY2UpCiB7CkBAIC04MjEsNiArODM3LDExIEBAIFdpbmRvd1N1cmZh
Y2U6OldpbmRvd1N1cmZhY2Uocng6OkVHTEltcGxGYWN0b3J5ICppbXBsRmFjdG9yeSwKICAgICBt
SW1wbGVtZW50YXRpb24gPSBpbXBsRmFjdG9yeS0+Y3JlYXRlV2luZG93U3VyZmFjZShtU3RhdGUs
IHdpbmRvdywgYXR0cmlicyk7CiB9CiAKK3ZvaWQgU3VyZmFjZTo6c2V0RGFtYWdlUmVnaW9uKGNv
bnN0IEVHTGludCAqcmVjdHMsIEVHTGludCBuX3JlY3RzKQoreworICAgIG1Jc0RhbWFnZVJlZ2lv
blNldCA9IHRydWU7Cit9CisKIFdpbmRvd1N1cmZhY2U6On5XaW5kb3dTdXJmYWNlKCkge30KIAog
UGJ1ZmZlclN1cmZhY2U6OlBidWZmZXJTdXJmYWNlKHJ4OjpFR0xJbXBsRmFjdG9yeSAqaW1wbEZh
Y3RvcnksCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUv
U3VyZmFjZS5oIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL1N1cmZhY2Uu
aAppbmRleCAwODU2YTYyOWJlZmFiOTgxYzFlYjNmYTRjNTkyODY0NWIxOTMxMjI1Li5mZjE2YzRh
YjlmMzE5Zjg4YmViN2QzNDgwNjE4M2EzMzU5MzFlZjQ3IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvU3VyZmFjZS5oCisrKyBiL1NvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL3NyYy9saWJBTkdMRS9TdXJmYWNlLmgKQEAgLTIwMywxMCArMjAzLDE0IEBAIGNs
YXNzIFN1cmZhY2UgOiBwdWJsaWMgTGFiZWxlZE9iamVjdCwgcHVibGljIGdsOjpGcmFtZWJ1ZmZl
ckF0dGFjaG1lbnRPYmplY3QKICAgICAvLyBvdGhlcndpc2UuCiAgICAgY29uc3QgZ2w6Ok9mZnNl
dCAmZ2V0VGV4dHVyZU9mZnNldCgpIGNvbnN0IHsgcmV0dXJuIG1UZXh0dXJlT2Zmc2V0OyB9CiAK
LSAgICBFcnJvciBnZXRCdWZmZXJBZ2UoY29uc3QgZ2w6OkNvbnRleHQgKmNvbnRleHQsIEVHTGlu
dCAqYWdlKSBjb25zdDsKKyAgICBFcnJvciBnZXRCdWZmZXJBZ2UoY29uc3QgZ2w6OkNvbnRleHQg
KmNvbnRleHQsIEVHTGludCAqYWdlKTsKIAogICAgIEVycm9yIHNldFJlbmRlckJ1ZmZlcihFR0xp
bnQgcmVuZGVyQnVmZmVyKTsKIAorICAgIGJvb2wgYnVmZmVyQWdlUXVlcmllZFNpbmNlTGFzdFN3
YXAoKSBjb25zdCB7IHJldHVybiBtQnVmZmVyQWdlUXVlcmllZFNpbmNlTGFzdFN3YXA7IH0KKyAg
ICB2b2lkIHNldERhbWFnZVJlZ2lvbihjb25zdCBFR0xpbnQgKnJlY3RzLCBFR0xpbnQgbl9yZWN0
cyk7CisgICAgYm9vbCBpc0RhbWFnZVJlZ2lvblNldCgpIGNvbnN0IHsgcmV0dXJuIG1Jc0RhbWFn
ZVJlZ2lvblNldDsgfQorCiAgIHByb3RlY3RlZDoKICAgICBTdXJmYWNlKEVHTGludCBzdXJmYWNl
VHlwZSwKICAgICAgICAgICAgIGNvbnN0IGVnbDo6Q29uZmlnICpjb25maWcsCkBAIC0yNjcsNyAr
MjcxLDEyIEBAIGNsYXNzIFN1cmZhY2UgOiBwdWJsaWMgTGFiZWxlZE9iamVjdCwgcHVibGljIGds
OjpGcmFtZWJ1ZmZlckF0dGFjaG1lbnRPYmplY3QKICAgICB1aW50OF90ICptTG9ja0J1ZmZlclB0
cjsgICAgICAvLyBNZW1vcnkgb3duZWQgYnkgYmFja2VuZC4KICAgICBFR0xpbnQgbUxvY2tCdWZm
ZXJQaXRjaDsKIAorICAgIGJvb2wgbUJ1ZmZlckFnZVF1ZXJpZWRTaW5jZUxhc3RTd2FwOworICAg
IGJvb2wgbUlzRGFtYWdlUmVnaW9uU2V0OworCiAgIHByaXZhdGU6CisgICAgRXJyb3IgZ2V0QnVm
ZmVyQWdlSW1wbChjb25zdCBnbDo6Q29udGV4dCAqY29udGV4dCwgRUdMaW50ICphZ2UpIGNvbnN0
OworCiAgICAgRXJyb3IgZGVzdHJveUltcGwoY29uc3QgRGlzcGxheSAqZGlzcGxheSk7CiAKICAg
ICB2b2lkIHBvc3RTd2FwKGNvbnN0IGdsOjpDb250ZXh0ICpjb250ZXh0KTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9UZXh0dXJlLmNwcCBiL1NvdXJj
ZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9UZXh0dXJlLmNwcAppbmRleCAxNmRlMzlk
YzlkM2Y1Mjg2NTg3MmJlNjlkYmY5NTFlNjdjNDU0Y2YzLi44YWUxMmNkYmQwOTNhMWYyNzNiOTQz
MDcxYTU0NDQ5MWZlMDIzZThlIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9z
cmMvbGliQU5HTEUvVGV4dHVyZS5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3Jj
L2xpYkFOR0xFL1RleHR1cmUuY3BwCkBAIC0xMjEzLDcgKzEyMTMsMTUgQEAgdm9pZCBUZXh0dXJl
OjpzaWduYWxEaXJ0eVN0YXRlKHNpemVfdCBkaXJ0eUJpdCkKICAgICBtRGlydHlCaXRzLnNldChk
aXJ0eUJpdCk7CiAgICAgaW52YWxpZGF0ZUNvbXBsZXRlbmVzc0NhY2hlKCk7CiAgICAgbVN0YXRl
Lm1DYWNoZWRTYW1wbGVyRm9ybWF0VmFsaWQgPSBmYWxzZTsKLSAgICBvblN0YXRlQ2hhbmdlKGFu
Z2xlOjpTdWJqZWN0TWVzc2FnZTo6RGlydHlCaXRzRmxhZ2dlZCk7CisKKyAgICBpZiAoZGlydHlC
aXQgPT0gRElSVFlfQklUX0JBU0VfTEVWRUwgfHwgZGlydHlCaXQgPT0gRElSVFlfQklUX01BWF9M
RVZFTCkKKyAgICB7CisgICAgICAgIG9uU3RhdGVDaGFuZ2UoYW5nbGU6OlN1YmplY3RNZXNzYWdl
OjpTdWJqZWN0Q2hhbmdlZCk7CisgICAgfQorICAgIGVsc2UKKyAgICB7CisgICAgICAgIG9uU3Rh
dGVDaGFuZ2UoYW5nbGU6OlN1YmplY3RNZXNzYWdlOjpEaXJ0eUJpdHNGbGFnZ2VkKTsKKyAgICB9
CiB9CiAKIGFuZ2xlOjpSZXN1bHQgVGV4dHVyZTo6c2V0SW1hZ2UoQ29udGV4dCAqY29udGV4dCwK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9hbmdsZXR5
cGVzLmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9hbmdsZXR5cGVz
LmNwcAppbmRleCAxNGQ4YmMwZDI1ZjFmMmYxMTY3NGFlODA2ZTg2NDJlMDE3N2RjYzIyLi45MDc2
MTYwOTU4ZjIyYjc5YmM0N2RjZTNhYTI3OTE1Y2VmMmQ1OGZjIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvYW5nbGV0eXBlcy5jcHAKKysrIGIvU291cmNl
L1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL2FuZ2xldHlwZXMuY3BwCkBAIC0zNiw2ICsz
NiwxMiBAQCBib29sIEVuY2xvc2VzUmFuZ2UoaW50IG91dHNpZGVMb3csIGludCBvdXRzaWRlSGln
aCwgaW50IGluc2lkZUxvdywgaW50IGluc2lkZUhpZwogewogICAgIHJldHVybiBvdXRzaWRlTG93
IDw9IGluc2lkZUxvdyAmJiBvdXRzaWRlSGlnaCA+PSBpbnNpZGVIaWdoOwogfQorCitib29sIElz
QWR2YW5jZWRCbGVuZEVxdWF0aW9uKGdsOjpCbGVuZEVxdWF0aW9uVHlwZSBibGVuZEVxdWF0aW9u
KQoreworICAgIHJldHVybiBibGVuZEVxdWF0aW9uID49IGdsOjpCbGVuZEVxdWF0aW9uVHlwZTo6
TXVsdGlwbHkgJiYKKyAgICAgICAgICAgYmxlbmRFcXVhdGlvbiA8PSBnbDo6QmxlbmRFcXVhdGlv
blR5cGU6OkhzbEx1bWlub3NpdHk7Cit9CiB9ICAvLyBhbm9ueW1vdXMgbmFtZXNwYWNlCiAKIFJh
c3Rlcml6ZXJTdGF0ZTo6UmFzdGVyaXplclN0YXRlKCkKQEAgLTM1Myw3ICszNTksNiBAQCBCbGVu
ZFN0YXRlRXh0OjpCbGVuZFN0YXRlRXh0KGNvbnN0IHNpemVfdCBkcmF3QnVmZmVycykKICAgICAg
IG1Db2xvck1hc2soQ29sb3JNYXNrU3RvcmFnZTo6R2V0UmVwbGljYXRlZFZhbHVlKFBhY2tDb2xv
ck1hc2sodHJ1ZSwgdHJ1ZSwgdHJ1ZSwgdHJ1ZSksCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtTWF4Q29sb3JNYXNrKSksCiAgICAgICBtTWF4
RW5hYmxlZE1hc2soMHhGRiA+PiAoOCAtIGRyYXdCdWZmZXJzKSksCi0gICAgICBtRW5hYmxlZE1h
c2soKSwKICAgICAgIG1NYXhEcmF3QnVmZmVycyhkcmF3QnVmZmVycykKIHt9CiAKQEAgLTQzNCwx
MCArNDM5LDEwIEBAIERyYXdCdWZmZXJNYXNrIEJsZW5kU3RhdGVFeHQ6OmNvbXBhcmVDb2xvck1h
c2soQ29sb3JNYXNrU3RvcmFnZTo6VHlwZSBvdGhlcikgY29uCiAgICAgcmV0dXJuIENvbG9yTWFz
a1N0b3JhZ2U6OkdldERpZmZNYXNrKG1Db2xvck1hc2ssIG90aGVyKTsKIH0KIAotQmxlbmRTdGF0
ZUV4dDo6RXF1YXRpb25TdG9yYWdlOjpUeXBlIEJsZW5kU3RhdGVFeHQ6OmV4cGFuZEVxdWF0aW9u
VmFsdWUoY29uc3QgR0xlbnVtIG1vZGUpIGNvbnN0CitCbGVuZFN0YXRlRXh0OjpFcXVhdGlvblN0
b3JhZ2U6OlR5cGUgQmxlbmRTdGF0ZUV4dDo6ZXhwYW5kRXF1YXRpb25WYWx1ZSgKKyAgICBjb25z
dCBnbDo6QmxlbmRFcXVhdGlvblR5cGUgZXF1YXRpb24pIGNvbnN0CiB7Ci0gICAgcmV0dXJuIEVx
dWF0aW9uU3RvcmFnZTo6R2V0UmVwbGljYXRlZFZhbHVlKEZyb21HTGVudW08QmxlbmRFcXVhdGlv
blR5cGU+KG1vZGUpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBtTWF4RXF1YXRpb25NYXNrKTsKKyAgICByZXR1cm4gRXF1YXRpb25TdG9yYWdlOjpHZXRS
ZXBsaWNhdGVkVmFsdWUoZXF1YXRpb24sIG1NYXhFcXVhdGlvbk1hc2spOwogfQogCiBCbGVuZFN0
YXRlRXh0OjpFcXVhdGlvblN0b3JhZ2U6OlR5cGUgQmxlbmRTdGF0ZUV4dDo6ZXhwYW5kRXF1YXRp
b25Db2xvckluZGV4ZWQoCkBAIC00NTYsOCArNDYxLDIyIEBAIEJsZW5kU3RhdGVFeHQ6OkVxdWF0
aW9uU3RvcmFnZTo6VHlwZSBCbGVuZFN0YXRlRXh0OjpleHBhbmRFcXVhdGlvbkFscGhhSW5kZXhl
ZCgKIAogdm9pZCBCbGVuZFN0YXRlRXh0OjpzZXRFcXVhdGlvbnMoY29uc3QgR0xlbnVtIG1vZGVD
b2xvciwgY29uc3QgR0xlbnVtIG1vZGVBbHBoYSkKIHsKLSAgICBtRXF1YXRpb25Db2xvciA9IGV4
cGFuZEVxdWF0aW9uVmFsdWUobW9kZUNvbG9yKTsKLSAgICBtRXF1YXRpb25BbHBoYSA9IGV4cGFu
ZEVxdWF0aW9uVmFsdWUobW9kZUFscGhhKTsKKyAgICBjb25zdCBnbDo6QmxlbmRFcXVhdGlvblR5
cGUgY29sb3JFcXVhdGlvbiA9IEZyb21HTGVudW08QmxlbmRFcXVhdGlvblR5cGU+KG1vZGVDb2xv
cik7CisgICAgY29uc3QgZ2w6OkJsZW5kRXF1YXRpb25UeXBlIGFscGhhRXF1YXRpb24gPSBGcm9t
R0xlbnVtPEJsZW5kRXF1YXRpb25UeXBlPihtb2RlQWxwaGEpOworCisgICAgbUVxdWF0aW9uQ29s
b3IgPSBleHBhbmRFcXVhdGlvblZhbHVlKGNvbG9yRXF1YXRpb24pOworICAgIG1FcXVhdGlvbkFs
cGhhID0gZXhwYW5kRXF1YXRpb25WYWx1ZShhbHBoYUVxdWF0aW9uKTsKKworICAgIC8vIE5vdGUg
dGhhdCBhZHZhbmNlZCBibGVuZCBlcXVhdGlvbnMgY2Fubm90IGJlIGluZGVwZW5kZW50bHkgc2V0
IGZvciBjb2xvciBhbmQgYWxwaGEsIHNvIG9ubHkKKyAgICAvLyB0aGUgY29sb3IgZXF1YXRpb24g
Y2FuIGJlIGNoZWNrZWQuCisgICAgaWYgKElzQWR2YW5jZWRCbGVuZEVxdWF0aW9uKGNvbG9yRXF1
YXRpb24pKQorICAgIHsKKyAgICAgICAgbVVzZXNBZHZhbmNlZEJsZW5kRXF1YXRpb25NYXNrID0g
bU1heEVuYWJsZWRNYXNrOworICAgIH0KKyAgICBlbHNlCisgICAgeworICAgICAgICBtVXNlc0Fk
dmFuY2VkQmxlbmRFcXVhdGlvbk1hc2sucmVzZXQoKTsKKyAgICB9CiB9CiAKIHZvaWQgQmxlbmRT
dGF0ZUV4dDo6c2V0RXF1YXRpb25zSW5kZXhlZChjb25zdCBzaXplX3QgaW5kZXgsCkBAIC00NjUs
MTAgKzQ4NCwxNCBAQCB2b2lkIEJsZW5kU3RhdGVFeHQ6OnNldEVxdWF0aW9uc0luZGV4ZWQoY29u
c3Qgc2l6ZV90IGluZGV4LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGNvbnN0IEdMZW51bSBtb2RlQWxwaGEpCiB7CiAgICAgQVNTRVJUKGluZGV4IDwgbU1heERyYXdC
dWZmZXJzKTsKLSAgICBFcXVhdGlvblN0b3JhZ2U6OlNldFZhbHVlSW5kZXhlZChpbmRleCwgRnJv
bUdMZW51bTxCbGVuZEVxdWF0aW9uVHlwZT4obW9kZUNvbG9yKSwKLSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAmbUVxdWF0aW9uQ29sb3IpOwotICAgIEVxdWF0aW9uU3RvcmFn
ZTo6U2V0VmFsdWVJbmRleGVkKGluZGV4LCBGcm9tR0xlbnVtPEJsZW5kRXF1YXRpb25UeXBlPiht
b2RlQWxwaGEpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZtRXF1YXRp
b25BbHBoYSk7CisKKyAgICBjb25zdCBnbDo6QmxlbmRFcXVhdGlvblR5cGUgY29sb3JFcXVhdGlv
biA9IEZyb21HTGVudW08QmxlbmRFcXVhdGlvblR5cGU+KG1vZGVDb2xvcik7CisgICAgY29uc3Qg
Z2w6OkJsZW5kRXF1YXRpb25UeXBlIGFscGhhRXF1YXRpb24gPSBGcm9tR0xlbnVtPEJsZW5kRXF1
YXRpb25UeXBlPihtb2RlQWxwaGEpOworCisgICAgRXF1YXRpb25TdG9yYWdlOjpTZXRWYWx1ZUlu
ZGV4ZWQoaW5kZXgsIGNvbG9yRXF1YXRpb24sICZtRXF1YXRpb25Db2xvcik7CisgICAgRXF1YXRp
b25TdG9yYWdlOjpTZXRWYWx1ZUluZGV4ZWQoaW5kZXgsIGFscGhhRXF1YXRpb24sICZtRXF1YXRp
b25BbHBoYSk7CisKKyAgICBtVXNlc0FkdmFuY2VkQmxlbmRFcXVhdGlvbk1hc2suc2V0KGluZGV4
LCBJc0FkdmFuY2VkQmxlbmRFcXVhdGlvbihjb2xvckVxdWF0aW9uKSk7CiB9CiAKIHZvaWQgQmxl
bmRTdGF0ZUV4dDo6c2V0RXF1YXRpb25zSW5kZXhlZChjb25zdCBzaXplX3QgaW5kZXgsCkBAIC00
NzcsMTIgKzUwMCwxNiBAQCB2b2lkIEJsZW5kU3RhdGVFeHQ6OnNldEVxdWF0aW9uc0luZGV4ZWQo
Y29uc3Qgc2l6ZV90IGluZGV4LAogewogICAgIEFTU0VSVChpbmRleCA8IG1NYXhEcmF3QnVmZmVy
cyk7CiAgICAgQVNTRVJUKHNvdXJjZUluZGV4IDwgc291cmNlLm1NYXhEcmF3QnVmZmVycyk7Ci0g
ICAgRXF1YXRpb25TdG9yYWdlOjpTZXRWYWx1ZUluZGV4ZWQoCi0gICAgICAgIGluZGV4LCBFcXVh
dGlvblN0b3JhZ2U6OkdldFZhbHVlSW5kZXhlZChzb3VyY2VJbmRleCwgc291cmNlLm1FcXVhdGlv
bkNvbG9yKSwKLSAgICAgICAgJm1FcXVhdGlvbkNvbG9yKTsKLSAgICBFcXVhdGlvblN0b3JhZ2U6
OlNldFZhbHVlSW5kZXhlZCgKLSAgICAgICAgaW5kZXgsIEVxdWF0aW9uU3RvcmFnZTo6R2V0VmFs
dWVJbmRleGVkKHNvdXJjZUluZGV4LCBzb3VyY2UubUVxdWF0aW9uQWxwaGEpLAotICAgICAgICAm
bUVxdWF0aW9uQWxwaGEpOworCisgICAgY29uc3QgZ2w6OkJsZW5kRXF1YXRpb25UeXBlIGNvbG9y
RXF1YXRpb24gPQorICAgICAgICBFcXVhdGlvblN0b3JhZ2U6OkdldFZhbHVlSW5kZXhlZChzb3Vy
Y2VJbmRleCwgc291cmNlLm1FcXVhdGlvbkNvbG9yKTsKKyAgICBjb25zdCBnbDo6QmxlbmRFcXVh
dGlvblR5cGUgYWxwaGFFcXVhdGlvbiA9CisgICAgICAgIEVxdWF0aW9uU3RvcmFnZTo6R2V0VmFs
dWVJbmRleGVkKHNvdXJjZUluZGV4LCBzb3VyY2UubUVxdWF0aW9uQWxwaGEpOworCisgICAgRXF1
YXRpb25TdG9yYWdlOjpTZXRWYWx1ZUluZGV4ZWQoaW5kZXgsIGNvbG9yRXF1YXRpb24sICZtRXF1
YXRpb25Db2xvcik7CisgICAgRXF1YXRpb25TdG9yYWdlOjpTZXRWYWx1ZUluZGV4ZWQoaW5kZXgs
IGFscGhhRXF1YXRpb24sICZtRXF1YXRpb25BbHBoYSk7CisKKyAgICBtVXNlc0FkdmFuY2VkQmxl
bmRFcXVhdGlvbk1hc2suc2V0KGluZGV4LCBJc0FkdmFuY2VkQmxlbmRFcXVhdGlvbihjb2xvckVx
dWF0aW9uKSk7CiB9CiAKIEdMZW51bSBCbGVuZFN0YXRlRXh0OjpnZXRFcXVhdGlvbkNvbG9ySW5k
ZXhlZChzaXplX3QgaW5kZXgpIGNvbnN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9zcmMvbGliQU5HTEUvYW5nbGV0eXBlcy5oIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUv
c3JjL2xpYkFOR0xFL2FuZ2xldHlwZXMuaAppbmRleCA2YTFlYjkzNDg2Zjk0NTNlN2E5YWNhYWY4
ZWUxZWM0MWE1MWFkZWNkLi5hODkwZjVjMjRhNzRhNzZmYmZiMGRmNzhmZTdmNWY1ZDU3MjE1YThm
IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvYW5nbGV0
eXBlcy5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9hbmdsZXR5
cGVzLmgKQEAgLTY2NSw3ICs2NjUsNyBAQCBjbGFzcyBCbGVuZFN0YXRlRXh0IGZpbmFsCiAKICAg
ICAvLy8vLy8vLy8gQmxlbmQgRXF1YXRpb24gLy8vLy8vLy8vCiAKLSAgICBFcXVhdGlvblN0b3Jh
Z2U6OlR5cGUgZXhwYW5kRXF1YXRpb25WYWx1ZShjb25zdCBHTGVudW0gbW9kZSkgY29uc3Q7Cisg
ICAgRXF1YXRpb25TdG9yYWdlOjpUeXBlIGV4cGFuZEVxdWF0aW9uVmFsdWUoY29uc3QgZ2w6OkJs
ZW5kRXF1YXRpb25UeXBlIGVxdWF0aW9uKSBjb25zdDsKICAgICBFcXVhdGlvblN0b3JhZ2U6OlR5
cGUgZXhwYW5kRXF1YXRpb25Db2xvckluZGV4ZWQoY29uc3Qgc2l6ZV90IGluZGV4KSBjb25zdDsK
ICAgICBFcXVhdGlvblN0b3JhZ2U6OlR5cGUgZXhwYW5kRXF1YXRpb25BbHBoYUluZGV4ZWQoY29u
c3Qgc2l6ZV90IGluZGV4KSBjb25zdDsKICAgICB2b2lkIHNldEVxdWF0aW9ucyhjb25zdCBHTGVu
dW0gbW9kZUNvbG9yLCBjb25zdCBHTGVudW0gbW9kZUFscGhhKTsKQEAgLTcyMSw2ICs3MjEsOCBA
QCBjbGFzcyBCbGVuZFN0YXRlRXh0IGZpbmFsCiAKICAgICBEcmF3QnVmZmVyTWFzayBtTWF4RW5h
YmxlZE1hc2s7CiAgICAgRHJhd0J1ZmZlck1hc2sgbUVuYWJsZWRNYXNrOworICAgIC8vIENhY2hl
IG9mIHdoZXRoZXIgdGhlIGJsZW5kIGVxdWF0aW9uIGZvciBlYWNoIGluZGV4IGlzIGZyb20gS0hS
X2JsZW5kX2VxdWF0aW9uX2FkdmFuY2VkLgorICAgIERyYXdCdWZmZXJNYXNrIG1Vc2VzQWR2YW5j
ZWRCbGVuZEVxdWF0aW9uTWFzazsKIAogICAgIHNpemVfdCBtTWF4RHJhd0J1ZmZlcnM7CiB9Owpk
aWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL2FuZ2xldHlw
ZXNfdW5pdHRlc3QuY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL2Fu
Z2xldHlwZXNfdW5pdHRlc3QuY3BwCmluZGV4IDNiYTUxNWIxNTM5MTQ2NjhkNzI3M2I3YTcxMmJm
NjhmZjJiMTRjODEuLmRlM2JmMDgzZGEwMmM5OTFhNWViYzJhNjY0NWU1NWMyYjA1MTI3ZmEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9hbmdsZXR5cGVz
X3VuaXR0ZXN0LmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUv
YW5nbGV0eXBlc191bml0dGVzdC5jcHAKQEAgLTUwLDcgKzUwLDcgQEAgVEVTVChCbGVuZFN0YXRl
RXh0LCBJbml0KQogICAgICAgICBBU1NFUlRfRVEoYmxlbmRTdGF0ZUV4dC5tTWF4RHJhd0J1ZmZl
cnMsIDF1KTsKICAgICAgICAgQVNTRVJUX0VRKGJsZW5kU3RhdGVFeHQubU1heEVuYWJsZWRNYXNr
LnRvX3Vsb25nKCksIDF1KTsKICAgICAgICAgQVNTRVJUX0VRKGJsZW5kU3RhdGVFeHQubU1heENv
bG9yTWFzaywgaXM2NEJpdCA/IDB4RkZ1IDogMHhGdSk7Ci0gICAgICAgIEFTU0VSVF9FUShibGVu
ZFN0YXRlRXh0Lm1NYXhFcXVhdGlvbk1hc2ssIGlzNjRCaXQgPyAweEZGdSA6IDB4RnUpOworICAg
ICAgICBBU1NFUlRfRVEoYmxlbmRTdGF0ZUV4dC5tTWF4RXF1YXRpb25NYXNrLCAweEZGdSk7CiAg
ICAgICAgIEFTU0VSVF9FUShibGVuZFN0YXRlRXh0Lm1NYXhGYWN0b3JNYXNrLCAweEZGdSk7CiAg
ICAgICAgIGNoZWNrSW5pdFN0YXRlKGJsZW5kU3RhdGVFeHQpOwogICAgIH0KQEAgLTYwLDcgKzYw
LDcgQEAgVEVTVChCbGVuZFN0YXRlRXh0LCBJbml0KQogICAgICAgICBBU1NFUlRfRVEoYmxlbmRT
dGF0ZUV4dC5tTWF4RHJhd0J1ZmZlcnMsIDR1KTsKICAgICAgICAgQVNTRVJUX0VRKGJsZW5kU3Rh
dGVFeHQubU1heEVuYWJsZWRNYXNrLnRvX3Vsb25nKCksIDB4RnUpOwogICAgICAgICBBU1NFUlRf
RVEoYmxlbmRTdGF0ZUV4dC5tTWF4Q29sb3JNYXNrLCBpczY0Qml0ID8gMHhGRkZGRkZGRnUgOiAw
eEZGRkZ1KTsKLSAgICAgICAgQVNTRVJUX0VRKGJsZW5kU3RhdGVFeHQubU1heEVxdWF0aW9uTWFz
aywgaXM2NEJpdCA/IDB4RkZGRkZGRkZ1IDogMHhGRkZGdSk7CisgICAgICAgIEFTU0VSVF9FUShi
bGVuZFN0YXRlRXh0Lm1NYXhFcXVhdGlvbk1hc2ssIDB4RkZGRkZGRkZ1KTsKICAgICAgICAgQVNT
RVJUX0VRKGJsZW5kU3RhdGVFeHQubU1heEZhY3Rvck1hc2ssIDB4RkZGRkZGRkZ1KTsKICAgICAg
ICAgY2hlY2tJbml0U3RhdGUoYmxlbmRTdGF0ZUV4dCk7CiAgICAgfQpAQCAtNzAsNyArNzAsNyBA
QCBURVNUKEJsZW5kU3RhdGVFeHQsIEluaXQpCiAgICAgICAgIEFTU0VSVF9FUShibGVuZFN0YXRl
RXh0Lm1NYXhEcmF3QnVmZmVycywgOHUpOwogICAgICAgICBBU1NFUlRfRVEoYmxlbmRTdGF0ZUV4
dC5tTWF4RW5hYmxlZE1hc2sudG9fdWxvbmcoKSwgMHhGRnUpOwogICAgICAgICBBU1NFUlRfRVEo
YmxlbmRTdGF0ZUV4dC5tTWF4Q29sb3JNYXNrLCBpczY0Qml0ID8gMHhGRkZGRkZGRkZGRkZGRkZG
dSA6IDB4RkZGRkZGRkZ1KTsKLSAgICAgICAgQVNTRVJUX0VRKGJsZW5kU3RhdGVFeHQubU1heEVx
dWF0aW9uTWFzaywgaXM2NEJpdCA/IDB4RkZGRkZGRkZGRkZGRkZGRnUgOiAweEZGRkZGRkZGdSk7
CisgICAgICAgIEFTU0VSVF9FUShibGVuZFN0YXRlRXh0Lm1NYXhFcXVhdGlvbk1hc2ssIDB4RkZG
RkZGRkZGRkZGRkZGRnUpOwogICAgICAgICBBU1NFUlRfRVEoYmxlbmRTdGF0ZUV4dC5tTWF4RmFj
dG9yTWFzaywgMHhGRkZGRkZGRkZGRkZGRkZGdSk7CiAgICAgICAgIGNoZWNrSW5pdFN0YXRlKGJs
ZW5kU3RhdGVFeHQpOwogICAgIH0KQEAgLTEyNiwxMyArMTI2LDEzIEBAIFRFU1QoQmxlbmRTdGF0
ZUV4dCwgQmxlbmRFcXVhdGlvbnMpCiAgICAgZ2w6OkJsZW5kU3RhdGVFeHQgYmxlbmRTdGF0ZUV4
dCA9IGdsOjpCbGVuZFN0YXRlRXh0KDcpOwogCiAgICAgYmxlbmRTdGF0ZUV4dC5zZXRFcXVhdGlv
bnMoR0xfTUlOLCBHTF9GVU5DX1NVQlRSQUNUKTsKLSAgICBBU1NFUlRfRVEoYmxlbmRTdGF0ZUV4
dC5tRXF1YXRpb25Db2xvciwgaXM2NEJpdCA/IDB4MDEwMTAxMDEwMTAxMDF1IDogMHgxMTExMTEx
dSk7Ci0gICAgQVNTRVJUX0VRKGJsZW5kU3RhdGVFeHQubUVxdWF0aW9uQWxwaGEsIGlzNjRCaXQg
PyAweDA0MDQwNDA0MDQwNDA0dSA6IDB4NDQ0NDQ0NHUpOworICAgIEFTU0VSVF9FUShibGVuZFN0
YXRlRXh0Lm1FcXVhdGlvbkNvbG9yLCAweDAxMDEwMTAxMDEwMTAxdSk7CisgICAgQVNTRVJUX0VR
KGJsZW5kU3RhdGVFeHQubUVxdWF0aW9uQWxwaGEsIDB4MDQwNDA0MDQwNDA0MDR1KTsKIAogICAg
IGJsZW5kU3RhdGVFeHQuc2V0RXF1YXRpb25zSW5kZXhlZCgzLCBHTF9NQVgsIEdMX0ZVTkNfU1VC
VFJBQ1QpOwogICAgIGJsZW5kU3RhdGVFeHQuc2V0RXF1YXRpb25zSW5kZXhlZCg1LCBHTF9NSU4s
IEdMX0ZVTkNfQUREKTsKLSAgICBBU1NFUlRfRVEoYmxlbmRTdGF0ZUV4dC5tRXF1YXRpb25Db2xv
ciwgaXM2NEJpdCA/IDB4MDEwMTAxMDIwMTAxMDF1IDogMHgxMTEyMTExdSk7Ci0gICAgQVNTRVJU
X0VRKGJsZW5kU3RhdGVFeHQubUVxdWF0aW9uQWxwaGEsIGlzNjRCaXQgPyAweDA0MDAwNDA0MDQw
NDA0dSA6IDB4NDA0NDQ0NHUpOworICAgIEFTU0VSVF9FUShibGVuZFN0YXRlRXh0Lm1FcXVhdGlv
bkNvbG9yLCAweDAxMDEwMTAyMDEwMTAxdSk7CisgICAgQVNTRVJUX0VRKGJsZW5kU3RhdGVFeHQu
bUVxdWF0aW9uQWxwaGEsIDB4MDQwMDA0MDQwNDA0MDR1KTsKICAgICBBU1NFUlRfRVEoYmxlbmRT
dGF0ZUV4dC5nZXRFcXVhdGlvbkNvbG9ySW5kZXhlZCgzKSwgc3RhdGljX2Nhc3Q8R0xlbnVtPihH
TF9NQVgpKTsKICAgICBBU1NFUlRfRVEoYmxlbmRTdGF0ZUV4dC5nZXRFcXVhdGlvbkFscGhhSW5k
ZXhlZCg1KSwgc3RhdGljX2Nhc3Q8R0xlbnVtPihHTF9GVU5DX0FERCkpOwogCkBAIC0xNDEsOCAr
MTQxLDggQEAgVEVTVChCbGVuZFN0YXRlRXh0LCBCbGVuZEVxdWF0aW9ucykKICAgICBnbDo6Qmxl
bmRTdGF0ZUV4dDo6RXF1YXRpb25TdG9yYWdlOjpUeXBlIG90aGVyRXF1YXRpb25BbHBoYSA9CiAg
ICAgICAgIGJsZW5kU3RhdGVFeHQuZXhwYW5kRXF1YXRpb25BbHBoYUluZGV4ZWQoMCk7CiAKLSAg
ICBBU1NFUlRfRVEob3RoZXJFcXVhdGlvbkNvbG9yLCBpczY0Qml0ID8gMHgwMTAxMDEwMTAxMDEw
MXUgOiAweDExMTExMTF1KTsKLSAgICBBU1NFUlRfRVEob3RoZXJFcXVhdGlvbkFscGhhLCBpczY0
Qml0ID8gMHgwNDA0MDQwNDA0MDQwNHUgOiAweDQ0NDQ0NDR1KTsKKyAgICBBU1NFUlRfRVEob3Ro
ZXJFcXVhdGlvbkNvbG9yLCAweDAxMDEwMTAxMDEwMTAxdSk7CisgICAgQVNTRVJUX0VRKG90aGVy
RXF1YXRpb25BbHBoYSwgMHgwNDA0MDQwNDA0MDQwNHUpOwogCiAgICAgY29uc3QgZ2w6OkRyYXdC
dWZmZXJNYXNrIGRpZmYgPQogICAgICAgICBibGVuZFN0YXRlRXh0LmNvbXBhcmVFcXVhdGlvbnMo
b3RoZXJFcXVhdGlvbkNvbG9yLCBvdGhlckVxdWF0aW9uQWxwaGEpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL2NhcHR1cmUvRnJhbWVDYXB0dXJlLmNw
cCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9jYXB0dXJlL0ZyYW1lQ2Fw
dHVyZS5jcHAKaW5kZXggMzlkM2YyYWMwMGQ0NzNhM2M0MmVlZmRkNmY4ODk0OGNlMzljM2IzOS4u
NDhkZGZjNTdlYzI5MGEwZWZmZDg2NzdhZWI4ZjIxYWIxZTA5OTVkNSAxMDA2NDQKLS0tIGEvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL2NhcHR1cmUvRnJhbWVDYXB0dXJlLmNw
cAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvY2FwdHVyZS9GcmFt
ZUNhcHR1cmUuY3BwCkBAIC04ODcsNiArODg3LDIxIEBAIHZvaWQgTWF5YmVSZXNldFJlc291cmNl
cyhSZXNvdXJjZUlEVHlwZSByZXNvdXJjZUlEVHlwZSwKICAgICAgICAgICAgICAgICAgICAgICAg
ICBSZXNvdXJjZVRyYWNrZXIgKnJlc291cmNlVHJhY2tlciwKICAgICAgICAgICAgICAgICAgICAg
ICAgICBzdGQ6OnZlY3Rvcjx1aW50OF90PiAqYmluYXJ5RGF0YSkKIHsKKyAgICAvLyBMb2NhbCBo
ZWxwZXIgdG8gZ2V0IHdlbGwgc3RydWN0dXJlZCBibG9ja3MgaW4gRGVsZXRlIGNhbGxzLCBpLmUu
CisgICAgLy8gY29uc3QgR0x1aW50IGRlbGV0ZVRleHR1cmVzW10gPSB7CisgICAgLy8gICAgZ1Rl
eHR1cmVNYXBbMV0sIGdUZXh0dXJlTWFwWzJdLCBnVGV4dHVyZU1hcFszXSwgZ1RleHR1cmVNYXBb
NF0sCisgICAgLy8gICAgZ1RleHR1cmVNYXBbNV0sIGdUZXh0dXJlTWFwWzZdLCBnVGV4dHVyZU1h
cFs3XSwgZ1RleHR1cmVNYXBbOF19OworICAgIGF1dG8gZm9ybWF0UmVzb3VyY2VJbmRleCA9IFtd
KHN0ZDo6c3RyaW5nc3RyZWFtICZvdXQsIHNpemVfdCBpKSB7CisgICAgICAgIGlmIChpID4gMCkK
KyAgICAgICAgeworICAgICAgICAgICAgb3V0IDw8ICIsICI7CisgICAgICAgIH0KKyAgICAgICAg
aWYgKChpICUgNCkgPT0gMCkKKyAgICAgICAgeworICAgICAgICAgICAgb3V0IDw8ICJcbiAgICAg
ICAgIjsKKyAgICAgICAgfQorICAgIH07CisKICAgICBzd2l0Y2ggKHJlc291cmNlSURUeXBlKQog
ICAgIHsKICAgICAgICAgY2FzZSBSZXNvdXJjZUlEVHlwZTo6QnVmZmVyOgpAQCAtODk0LDM1ICs5
MDksNDEgQEAgdm9pZCBNYXliZVJlc2V0UmVzb3VyY2VzKFJlc291cmNlSURUeXBlIHJlc291cmNl
SURUeXBlLAogICAgICAgICAgICAgVHJhY2tlZFJlc291cmNlICZ0cmFja2VkQnVmZmVycyA9CiAg
ICAgICAgICAgICAgICAgcmVzb3VyY2VUcmFja2VyLT5nZXRUcmFja2VkUmVzb3VyY2UoUmVzb3Vy
Y2VJRFR5cGU6OkJ1ZmZlcik7CiAgICAgICAgICAgICBSZXNvdXJjZVNldCAmbmV3QnVmZmVycyAg
ICAgICAgICAgPSB0cmFja2VkQnVmZmVycy5nZXROZXdSZXNvdXJjZXMoKTsKKyAgICAgICAgICAg
IFJlc291cmNlU2V0ICZidWZmZXJzVG9SZWdlbiAgICAgICA9IHRyYWNrZWRCdWZmZXJzLmdldFJl
c291cmNlc1RvUmVnZW4oKTsKICAgICAgICAgICAgIFJlc291cmNlQ2FsbHMgJmJ1ZmZlclJlZ2Vu
Q2FsbHMgICA9IHRyYWNrZWRCdWZmZXJzLmdldFJlc291cmNlUmVnZW5DYWxscygpOwogICAgICAg
ICAgICAgUmVzb3VyY2VDYWxscyAmYnVmZmVyUmVzdG9yZUNhbGxzID0gdHJhY2tlZEJ1ZmZlcnMu
Z2V0UmVzb3VyY2VSZXN0b3JlQ2FsbHMoKTsKIAogICAgICAgICAgICAgQnVmZmVyQ2FsbHMgJmJ1
ZmZlck1hcENhbGxzICAgPSByZXNvdXJjZVRyYWNrZXItPmdldEJ1ZmZlck1hcENhbGxzKCk7CiAg
ICAgICAgICAgICBCdWZmZXJDYWxscyAmYnVmZmVyVW5tYXBDYWxscyA9IHJlc291cmNlVHJhY2tl
ci0+Z2V0QnVmZmVyVW5tYXBDYWxscygpOwogCi0gICAgICAgICAgICAvLyBJZiB3ZSBoYXZlIGFu
eSBuZXcgYnVmZmVycyBnZW5lcmF0ZWQgYW5kIG5vdCBkZWxldGVkIGR1cmluZyB0aGUgcnVuLCBk
ZWxldGUgdGhlbSBub3cKLSAgICAgICAgICAgIGlmICghbmV3QnVmZmVycy5lbXB0eSgpKQorICAg
ICAgICAgICAgLy8gSWYgd2UgaGF2ZSBhbnkgbmV3IGJ1ZmZlcnMgZ2VuZXJhdGVkIGFuZCBub3Qg
ZGVsZXRlZCBkdXJpbmcgdGhlIHJ1biwgb3IgYW55IGJ1ZmZlcnMKKyAgICAgICAgICAgIC8vIHRo
YXQgd2UgbmVlZCB0byByZWdlbiwgZGVsZXRlIHRoZW0gbm93CisgICAgICAgICAgICBpZiAoIW5l
d0J1ZmZlcnMuZW1wdHkoKSB8fCAhYnVmZmVyc1RvUmVnZW4uZW1wdHkoKSkKICAgICAgICAgICAg
IHsKKyAgICAgICAgICAgICAgICBzaXplX3QgY291bnQgPSAwOworCiAgICAgICAgICAgICAgICAg
b3V0IDw8ICIgICAgY29uc3QgR0x1aW50IGRlbGV0ZUJ1ZmZlcnNbXSA9IHsiOwotICAgICAgICAg
ICAgICAgIFJlc291cmNlU2V0OjppdGVyYXRvciBidWZmZXJJdGVyID0gbmV3QnVmZmVycy5iZWdp
bigpOwotICAgICAgICAgICAgICAgIGZvciAoc2l6ZV90IGkgPSAwOyBidWZmZXJJdGVyICE9IG5l
d0J1ZmZlcnMuZW5kKCk7ICsraSwgKytidWZmZXJJdGVyKQorCisgICAgICAgICAgICAgICAgZm9y
IChhdXRvICZvbGRCdWZmZXIgOiBidWZmZXJzVG9SZWdlbikKICAgICAgICAgICAgICAgICB7Ci0g
ICAgICAgICAgICAgICAgICAgIGlmIChpID4gMCkKLSAgICAgICAgICAgICAgICAgICAgewotICAg
ICAgICAgICAgICAgICAgICAgICAgb3V0IDw8ICIsICI7Ci0gICAgICAgICAgICAgICAgICAgIH0K
LSAgICAgICAgICAgICAgICAgICAgaWYgKChpICUgNCkgPT0gMCkKLSAgICAgICAgICAgICAgICAg
ICAgewotICAgICAgICAgICAgICAgICAgICAgICAgb3V0IDw8ICJcbiAgICAgICAgIjsKLSAgICAg
ICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgICAgICBvdXQgPDwgImdCdWZmZXJNYXBb
IiA8PCAqYnVmZmVySXRlciA8PCAiXSI7CisgICAgICAgICAgICAgICAgICAgIGZvcm1hdFJlc291
cmNlSW5kZXgob3V0LCBjb3VudCk7CisgICAgICAgICAgICAgICAgICAgIG91dCA8PCAiZ0J1ZmZl
ck1hcFsiIDw8IG9sZEJ1ZmZlciA8PCAiXSI7CisgICAgICAgICAgICAgICAgICAgICsrY291bnQ7
CiAgICAgICAgICAgICAgICAgfQorCisgICAgICAgICAgICAgICAgZm9yIChhdXRvICZuZXdCdWZm
ZXIgOiBuZXdCdWZmZXJzKQorICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAg
Zm9ybWF0UmVzb3VyY2VJbmRleChvdXQsIGNvdW50KTsKKyAgICAgICAgICAgICAgICAgICAgb3V0
IDw8ICJnQnVmZmVyTWFwWyIgPDwgbmV3QnVmZmVyIDw8ICJdIjsKKyAgICAgICAgICAgICAgICAg
ICAgKytjb3VudDsKKyAgICAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgICAgICAvLyBEZWxl
dGUgYWxsIHRoZSBuZXcgYW5kIG9sZCBidWZmZXJzIGF0IG9uY2UKICAgICAgICAgICAgICAgICBv
dXQgPDwgIn07XG4iOwotICAgICAgICAgICAgICAgIG91dCA8PCAiICAgIGdsRGVsZXRlQnVmZmVy
cygiIDw8IG5ld0J1ZmZlcnMuc2l6ZSgpIDw8ICIsIGRlbGV0ZUJ1ZmZlcnMpO1xuIjsKKyAgICAg
ICAgICAgICAgICBvdXQgPDwgIiAgICBnbERlbGV0ZUJ1ZmZlcnMoIiA8PCBjb3VudCA8PCAiLCBk
ZWxldGVCdWZmZXJzKTtcbiI7CiAgICAgICAgICAgICB9CiAKICAgICAgICAgICAgIC8vIElmIGFu
eSBvZiBvdXIgc3RhcnRpbmcgYnVmZmVycyB3ZXJlIGRlbGV0ZWQgZHVyaW5nIHRoZSBydW4sIHJl
Y3JlYXRlIHRoZW0KLSAgICAgICAgICAgIFJlc291cmNlU2V0ICZidWZmZXJzVG9SZWdlbiA9IHRy
YWNrZWRCdWZmZXJzLmdldFJlc291cmNlc1RvUmVnZW4oKTsKICAgICAgICAgICAgIGZvciAoR0x1
aW50IGlkIDogYnVmZmVyc1RvUmVnZW4pCiAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAg
Ly8gRW1pdCB0aGVpciByZWdlbiBjYWxscwpAQCAtMTAwOCwzNCArMTAyOSwzNyBAQCB2b2lkIE1h
eWJlUmVzZXRSZXNvdXJjZXMoUmVzb3VyY2VJRFR5cGUgcmVzb3VyY2VJRFR5cGUsCiAgICAgICAg
ICAgICBUcmFja2VkUmVzb3VyY2UgJnRyYWNrZWRGcmFtZWJ1ZmZlcnMgPQogICAgICAgICAgICAg
ICAgIHJlc291cmNlVHJhY2tlci0+Z2V0VHJhY2tlZFJlc291cmNlKFJlc291cmNlSURUeXBlOjpG
cmFtZWJ1ZmZlcik7CiAgICAgICAgICAgICBSZXNvdXJjZVNldCAmbmV3RnJhbWVidWZmZXJzICAg
ICAgICAgICA9IHRyYWNrZWRGcmFtZWJ1ZmZlcnMuZ2V0TmV3UmVzb3VyY2VzKCk7CisgICAgICAg
ICAgICBSZXNvdXJjZVNldCAmZnJhbWVidWZmZXJzVG9SZWdlbiAgICAgICA9IHRyYWNrZWRGcmFt
ZWJ1ZmZlcnMuZ2V0UmVzb3VyY2VzVG9SZWdlbigpOwogICAgICAgICAgICAgUmVzb3VyY2VDYWxs
cyAmZnJhbWVidWZmZXJSZWdlbkNhbGxzICAgPSB0cmFja2VkRnJhbWVidWZmZXJzLmdldFJlc291
cmNlUmVnZW5DYWxscygpOwogICAgICAgICAgICAgUmVzb3VyY2VDYWxscyAmZnJhbWVidWZmZXJS
ZXN0b3JlQ2FsbHMgPSB0cmFja2VkRnJhbWVidWZmZXJzLmdldFJlc291cmNlUmVzdG9yZUNhbGxz
KCk7CiAKLSAgICAgICAgICAgIC8vIElmIHdlIGhhdmUgYW55IG5ldyBmcmFtZWJ1ZmZlcnMgZ2Vu
ZXJhdGVkIGFuZCBub3QgZGVsZXRlZCBkdXJpbmcgdGhlIHJ1biwgZGVsZXRlIHRoZW0KLSAgICAg
ICAgICAgIC8vIG5vdwotICAgICAgICAgICAgaWYgKCFuZXdGcmFtZWJ1ZmZlcnMuZW1wdHkoKSkK
KyAgICAgICAgICAgIC8vIElmIHdlIGhhdmUgYW55IG5ldyBmcmFtZWJ1ZmZlcnMgZ2VuZXJhdGVk
IGFuZCBub3QgZGVsZXRlZCBkdXJpbmcgdGhlIHJ1biwgb3IgYW55CisgICAgICAgICAgICAvLyBm
cmFtZWJ1ZmZlcnMgdGhhdCB3ZSBuZWVkIHRvIHJlZ2VuLCBkZWxldGUgdGhlbSBub3cKKyAgICAg
ICAgICAgIGlmICghbmV3RnJhbWVidWZmZXJzLmVtcHR5KCkgfHwgIWZyYW1lYnVmZmVyc1RvUmVn
ZW4uZW1wdHkoKSkKICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBzaXplX3QgY291bnQg
PSAwOworCiAgICAgICAgICAgICAgICAgb3V0IDw8ICIgICAgY29uc3QgR0x1aW50IGRlbGV0ZUZy
YW1lYnVmZmVyc1tdID0geyI7Ci0gICAgICAgICAgICAgICAgUmVzb3VyY2VTZXQ6Oml0ZXJhdG9y
IGZyYW1lYnVmZmVySXRlciA9IG5ld0ZyYW1lYnVmZmVycy5iZWdpbigpOwotICAgICAgICAgICAg
ICAgIGZvciAoc2l6ZV90IGkgPSAwOyBmcmFtZWJ1ZmZlckl0ZXIgIT0gbmV3RnJhbWVidWZmZXJz
LmVuZCgpOyArK2ksICsrZnJhbWVidWZmZXJJdGVyKQorCisgICAgICAgICAgICAgICAgZm9yIChh
dXRvICZvbGRGYiA6IGZyYW1lYnVmZmVyc1RvUmVnZW4pCiAgICAgICAgICAgICAgICAgewotICAg
ICAgICAgICAgICAgICAgICBpZiAoaSA+IDApCi0gICAgICAgICAgICAgICAgICAgIHsKLSAgICAg
ICAgICAgICAgICAgICAgICAgIG91dCA8PCAiLCAiOwotICAgICAgICAgICAgICAgICAgICB9Ci0g
ICAgICAgICAgICAgICAgICAgIGlmICgoaSAlIDQpID09IDApCi0gICAgICAgICAgICAgICAgICAg
IHsKLSAgICAgICAgICAgICAgICAgICAgICAgIG91dCA8PCAiXG4gICAgICAgICI7Ci0gICAgICAg
ICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICAgICAgb3V0IDw8ICJnRnJhbWVidWZmZXJN
YXBbIiA8PCAqZnJhbWVidWZmZXJJdGVyIDw8ICJdIjsKKyAgICAgICAgICAgICAgICAgICAgZm9y
bWF0UmVzb3VyY2VJbmRleChvdXQsIGNvdW50KTsKKyAgICAgICAgICAgICAgICAgICAgb3V0IDw8
ICJnRnJhbWVidWZmZXJNYXBbIiA8PCBvbGRGYiA8PCAiXSI7CisgICAgICAgICAgICAgICAgICAg
ICsrY291bnQ7CisgICAgICAgICAgICAgICAgfQorCisgICAgICAgICAgICAgICAgZm9yIChhdXRv
ICZuZXdGYiA6IG5ld0ZyYW1lYnVmZmVycykKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAg
ICAgICAgICAgIGZvcm1hdFJlc291cmNlSW5kZXgob3V0LCBjb3VudCk7CisgICAgICAgICAgICAg
ICAgICAgIG91dCA8PCAiZ0ZyYW1lYnVmZmVyTWFwWyIgPDwgbmV3RmIgPDwgIl0iOworICAgICAg
ICAgICAgICAgICAgICArK2NvdW50OwogICAgICAgICAgICAgICAgIH0KKworICAgICAgICAgICAg
ICAgIC8vIERlbGV0ZSBhbGwgdGhlIG5ldyBhbmQgb2xkIGZyYW1lYnVmZmVycyBhdCBvbmNlCiAg
ICAgICAgICAgICAgICAgb3V0IDw8ICJ9O1xuIjsKLSAgICAgICAgICAgICAgICBvdXQgPDwgIiAg
ICBnbERlbGV0ZUZyYW1lYnVmZmVycygiIDw8IG5ld0ZyYW1lYnVmZmVycy5zaXplKCkKLSAgICAg
ICAgICAgICAgICAgICAgPDwgIiwgZGVsZXRlRnJhbWVidWZmZXJzKTtcbiI7CisgICAgICAgICAg
ICAgICAgb3V0IDw8ICIgICAgZ2xEZWxldGVGcmFtZWJ1ZmZlcnMoIiA8PCBjb3VudCA8PCAiLCBk
ZWxldGVGcmFtZWJ1ZmZlcnMpO1xuIjsKICAgICAgICAgICAgIH0KIAotICAgICAgICAgICAgLy8g
SWYgYW55IG9mIG91ciBzdGFydGluZyBmcmFtZWJ1ZmZlcnMgd2VyZSBkZWxldGVkIGR1cmluZyB0
aGUgcnVuLCByZWdlbiB0aGVtCi0gICAgICAgICAgICBSZXNvdXJjZVNldCAmZnJhbWVidWZmZXJz
VG9SZWdlbiA9IHRyYWNrZWRGcmFtZWJ1ZmZlcnMuZ2V0UmVzb3VyY2VzVG9SZWdlbigpOwogICAg
ICAgICAgICAgZm9yIChHTHVpbnQgaWQgOiBmcmFtZWJ1ZmZlcnNUb1JlZ2VuKQogICAgICAgICAg
ICAgewogICAgICAgICAgICAgICAgIC8vIEVtaXQgdGhlaXIgcmVnZW4gY2FsbHMKQEAgLTEwNjcs
MjggKzEwOTEsMjIgQEAgdm9pZCBNYXliZVJlc2V0UmVzb3VyY2VzKFJlc291cmNlSURUeXBlIHJl
c291cmNlSURUeXBlLAogICAgICAgICAgICAgUmVzb3VyY2VTZXQgJm5ld1JlbmRlcmJ1ZmZlcnMg
PQogICAgICAgICAgICAgICAgIHJlc291cmNlVHJhY2tlci0+Z2V0VHJhY2tlZFJlc291cmNlKFJl
c291cmNlSURUeXBlOjpSZW5kZXJidWZmZXIpLmdldE5ld1Jlc291cmNlcygpOwogCi0gICAgICAg
ICAgICAvLyBJZiB3ZSBoYXZlIGFueSBuZXcgcmVuZGVyYnVmZmVycyBnZW5lcmF0ZWQgYW5kIG5v
dCBkZWxldGVkIGR1cmluZyB0aGUgcnVuLCBkZWxldGUKLSAgICAgICAgICAgIC8vIHRoZW0gbm93
CisgICAgICAgICAgICAvLyBEZWxldGUgYW55IG5ldyByZW5kZXJidWZmZXJzIGdlbmVyYXRlZCBh
bmQgbm90IGRlbGV0ZWQgZHVyaW5nIHRoZSBydW4KICAgICAgICAgICAgIGlmICghbmV3UmVuZGVy
YnVmZmVycy5lbXB0eSgpKQogICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIHNpemVfdCBj
b3VudCA9IDA7CisKICAgICAgICAgICAgICAgICBvdXQgPDwgIiAgICBjb25zdCBHTHVpbnQgZGVs
ZXRlUmVuZGVyYnVmZmVyc1tdID0geyI7Ci0gICAgICAgICAgICAgICAgUmVzb3VyY2VTZXQ6Oml0
ZXJhdG9yIHJlbmRlcmJ1ZmZlckl0ZXIgPSBuZXdSZW5kZXJidWZmZXJzLmJlZ2luKCk7Ci0gICAg
ICAgICAgICAgICAgZm9yIChzaXplX3QgaSA9IDA7IHJlbmRlcmJ1ZmZlckl0ZXIgIT0gbmV3UmVu
ZGVyYnVmZmVycy5lbmQoKTsKLSAgICAgICAgICAgICAgICAgICAgICsraSwgKytyZW5kZXJidWZm
ZXJJdGVyKQorCisgICAgICAgICAgICAgICAgZm9yIChhdXRvICZuZXdSYiA6IG5ld1JlbmRlcmJ1
ZmZlcnMpCiAgICAgICAgICAgICAgICAgewotICAgICAgICAgICAgICAgICAgICBpZiAoaSA+IDAp
Ci0gICAgICAgICAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIG91dCA8PCAi
LCAiOwotICAgICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgICAgIGlmICgoaSAl
IDQpID09IDApCi0gICAgICAgICAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICAgICAgICAg
IG91dCA8PCAiXG4gICAgICAgICI7Ci0gICAgICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAg
ICAgICAgICAgb3V0IDw8ICJnUmVuZGVyYnVmZmVyTWFwWyIgPDwgKnJlbmRlcmJ1ZmZlckl0ZXIg
PDwgIl0iOworICAgICAgICAgICAgICAgICAgICBmb3JtYXRSZXNvdXJjZUluZGV4KG91dCwgY291
bnQpOworICAgICAgICAgICAgICAgICAgICBvdXQgPDwgImdSZW5kZXJidWZmZXJNYXBbIiA8PCBu
ZXdSYiA8PCAiXSI7CisgICAgICAgICAgICAgICAgICAgICsrY291bnQ7CiAgICAgICAgICAgICAg
ICAgfQorCiAgICAgICAgICAgICAgICAgb3V0IDw8ICJ9O1xuIjsKLSAgICAgICAgICAgICAgICBv
dXQgPDwgIiAgICBnbERlbGV0ZVJlbmRlcmJ1ZmZlcnMoIiA8PCBuZXdSZW5kZXJidWZmZXJzLnNp
emUoKQotICAgICAgICAgICAgICAgICAgICA8PCAiLCBkZWxldGVSZW5kZXJidWZmZXJzKTtcbiI7
CisgICAgICAgICAgICAgICAgb3V0IDw8ICIgICAgZ2xEZWxldGVSZW5kZXJidWZmZXJzKCIgPDwg
Y291bnQgPDwgIiwgZGVsZXRlUmVuZGVyYnVmZmVycyk7XG4iOwogICAgICAgICAgICAgfQogCiAg
ICAgICAgICAgICAvLyBUT0RPIChodHRwOi8vYW5nbGVidWcuY29tLzQ1OTkpOiBIYW5kbGUgcmVu
ZGVyYnVmZmVycyB0aGF0IG5lZWQgcmVnZW4KQEAgLTExMjIsMzIgKzExNDAsMzcgQEAgdm9pZCBN
YXliZVJlc2V0UmVzb3VyY2VzKFJlc291cmNlSURUeXBlIHJlc291cmNlSURUeXBlLAogICAgICAg
ICAgICAgVHJhY2tlZFJlc291cmNlICZ0cmFja2VkVGV4dHVyZXMgPQogICAgICAgICAgICAgICAg
IHJlc291cmNlVHJhY2tlci0+Z2V0VHJhY2tlZFJlc291cmNlKFJlc291cmNlSURUeXBlOjpUZXh0
dXJlKTsKICAgICAgICAgICAgIFJlc291cmNlU2V0ICZuZXdUZXh0dXJlcyAgICAgICAgICAgPSB0
cmFja2VkVGV4dHVyZXMuZ2V0TmV3UmVzb3VyY2VzKCk7CisgICAgICAgICAgICBSZXNvdXJjZVNl
dCAmdGV4dHVyZXNUb1JlZ2VuICAgICAgID0gdHJhY2tlZFRleHR1cmVzLmdldFJlc291cmNlc1Rv
UmVnZW4oKTsKICAgICAgICAgICAgIFJlc291cmNlQ2FsbHMgJnRleHR1cmVSZWdlbkNhbGxzICAg
PSB0cmFja2VkVGV4dHVyZXMuZ2V0UmVzb3VyY2VSZWdlbkNhbGxzKCk7CiAgICAgICAgICAgICBS
ZXNvdXJjZUNhbGxzICZ0ZXh0dXJlUmVzdG9yZUNhbGxzID0gdHJhY2tlZFRleHR1cmVzLmdldFJl
c291cmNlUmVzdG9yZUNhbGxzKCk7CiAKLSAgICAgICAgICAgIC8vIElmIHdlIGhhdmUgYW55IG5l
dyB0ZXh0dXJlcyBnZW5lcmF0ZWQgYW5kIG5vdCBkZWxldGVkIGR1cmluZyB0aGUgcnVuLCBkZWxl
dGUgdGhlbSBub3cKLSAgICAgICAgICAgIGlmICghbmV3VGV4dHVyZXMuZW1wdHkoKSkKKyAgICAg
ICAgICAgIC8vIElmIHdlIGhhdmUgYW55IG5ldyB0ZXh0dXJlcyBnZW5lcmF0ZWQgYW5kIG5vdCBk
ZWxldGVkIGR1cmluZyB0aGUgcnVuLCBvciBhbnkgdGV4dHVyZXMKKyAgICAgICAgICAgIC8vIG1v
ZGlmaWVkIGR1cmluZyB0aGUgcnVuIHRoYXQgd2UgbmVlZCB0byByZWdlbiwgZGVsZXRlIHRoZW0g
bm93CisgICAgICAgICAgICBpZiAoIW5ld1RleHR1cmVzLmVtcHR5KCkgfHwgIXRleHR1cmVzVG9S
ZWdlbi5lbXB0eSgpKQogICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIHNpemVfdCBjb3Vu
dCA9IDA7CisKICAgICAgICAgICAgICAgICBvdXQgPDwgIiAgICBjb25zdCBHTHVpbnQgZGVsZXRl
VGV4dHVyZXNbXSA9IHsiOwotICAgICAgICAgICAgICAgIFJlc291cmNlU2V0OjppdGVyYXRvciB0
ZXh0dXJlSXRlciA9IG5ld1RleHR1cmVzLmJlZ2luKCk7Ci0gICAgICAgICAgICAgICAgZm9yIChz
aXplX3QgaSA9IDA7IHRleHR1cmVJdGVyICE9IG5ld1RleHR1cmVzLmVuZCgpOyArK2ksICsrdGV4
dHVyZUl0ZXIpCisKKyAgICAgICAgICAgICAgICBmb3IgKGF1dG8gJm9sZFRleCA6IHRleHR1cmVz
VG9SZWdlbikKICAgICAgICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgICAgIGlmIChpID4g
MCkKLSAgICAgICAgICAgICAgICAgICAgewotICAgICAgICAgICAgICAgICAgICAgICAgb3V0IDw8
ICIsICI7Ci0gICAgICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICAgICAgaWYgKChp
ICUgNCkgPT0gMCkKLSAgICAgICAgICAgICAgICAgICAgewotICAgICAgICAgICAgICAgICAgICAg
ICAgb3V0IDw8ICJcbiAgICAgICAgIjsKLSAgICAgICAgICAgICAgICAgICAgfQotICAgICAgICAg
ICAgICAgICAgICBvdXQgPDwgImdUZXh0dXJlTWFwWyIgPDwgKnRleHR1cmVJdGVyIDw8ICJdIjsK
KyAgICAgICAgICAgICAgICAgICAgZm9ybWF0UmVzb3VyY2VJbmRleChvdXQsIGNvdW50KTsKKyAg
ICAgICAgICAgICAgICAgICAgb3V0IDw8ICJnVGV4dHVyZU1hcFsiIDw8IG9sZFRleCA8PCAiXSI7
CisgICAgICAgICAgICAgICAgICAgICsrY291bnQ7CiAgICAgICAgICAgICAgICAgfQorCisgICAg
ICAgICAgICAgICAgZm9yIChhdXRvICZuZXdUZXggOiBuZXdUZXh0dXJlcykKKyAgICAgICAgICAg
ICAgICB7CisgICAgICAgICAgICAgICAgICAgIGZvcm1hdFJlc291cmNlSW5kZXgob3V0LCBjb3Vu
dCk7CisgICAgICAgICAgICAgICAgICAgIG91dCA8PCAiZ1RleHR1cmVNYXBbIiA8PCBuZXdUZXgg
PDwgIl0iOworICAgICAgICAgICAgICAgICAgICArK2NvdW50OworICAgICAgICAgICAgICAgIH0K
KwogICAgICAgICAgICAgICAgIG91dCA8PCAifTtcbiI7Ci0gICAgICAgICAgICAgICAgb3V0IDw8
ICIgICAgZ2xEZWxldGVUZXh0dXJlcygiIDw8IG5ld1RleHR1cmVzLnNpemUoKSA8PCAiLCBkZWxl
dGVUZXh0dXJlcyk7XG4iOworICAgICAgICAgICAgICAgIG91dCA8PCAiICAgIGdsRGVsZXRlVGV4
dHVyZXMoIiA8PCBjb3VudCA8PCAiLCBkZWxldGVUZXh0dXJlcyk7XG4iOwogICAgICAgICAgICAg
fQogCi0gICAgICAgICAgICAvLyBJZiBhbnkgb2Ygb3VyIHN0YXJ0aW5nIHRleHR1cmVzIHdlcmUg
ZGVsZXRlZCBkdXJpbmcgdGhlIHJ1biwgcmVnZW4gdGhlbQotICAgICAgICAgICAgUmVzb3VyY2VT
ZXQgJnRleHR1cmVzVG9SZWdlbiA9IHRyYWNrZWRUZXh0dXJlcy5nZXRSZXNvdXJjZXNUb1JlZ2Vu
KCk7CisgICAgICAgICAgICAvLyBJZiBhbnkgb2Ygb3VyIHN0YXJ0aW5nIHRleHR1cmVzIHdlcmUg
ZGVsZXRlZCwgcmVnZW4gdGhlbQogICAgICAgICAgICAgZm9yIChHTHVpbnQgaWQgOiB0ZXh0dXJl
c1RvUmVnZW4pCiAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgLy8gRW1pdCB0aGVpciBy
ZWdlbiBjYWxscwpAQCAtMTE4MiwyNCArMTIwNSwxOSBAQCB2b2lkIE1heWJlUmVzZXRSZXNvdXJj
ZXMoUmVzb3VyY2VJRFR5cGUgcmVzb3VyY2VJRFR5cGUsCiAgICAgICAgICAgICAvLyB0aGVtIG5v
dwogICAgICAgICAgICAgaWYgKCFuZXdWZXJ0ZXh0QXJyYXlzLmVtcHR5KCkpCiAgICAgICAgICAg
ICB7CisgICAgICAgICAgICAgICAgc2l6ZV90IGNvdW50ID0gMDsKKwogICAgICAgICAgICAgICAg
IG91dCA8PCAiICAgIGNvbnN0IEdMdWludCBkZWxldGVWZXJ0ZXhBcnJheXNbXSA9IHsiOwotICAg
ICAgICAgICAgICAgIFJlc291cmNlU2V0OjppdGVyYXRvciB2ZXJ0ZXhBcnJheUl0ZXIgPSBuZXdW
ZXJ0ZXh0QXJyYXlzLmJlZ2luKCk7Ci0gICAgICAgICAgICAgICAgZm9yIChzaXplX3QgaSA9IDA7
IHZlcnRleEFycmF5SXRlciAhPSBuZXdWZXJ0ZXh0QXJyYXlzLmVuZCgpOwotICAgICAgICAgICAg
ICAgICAgICAgKytpLCArK3ZlcnRleEFycmF5SXRlcikKKworICAgICAgICAgICAgICAgIGZvciAo
YXV0byAmbmV3VkEgOiBuZXdWZXJ0ZXh0QXJyYXlzKQogICAgICAgICAgICAgICAgIHsKLSAgICAg
ICAgICAgICAgICAgICAgaWYgKGkgPiAwKQotICAgICAgICAgICAgICAgICAgICB7Ci0gICAgICAg
ICAgICAgICAgICAgICAgICBvdXQgPDwgIiwgIjsKLSAgICAgICAgICAgICAgICAgICAgfQotICAg
ICAgICAgICAgICAgICAgICBpZiAoKGkgJSA0KSA9PSAwKQotICAgICAgICAgICAgICAgICAgICB7
Ci0gICAgICAgICAgICAgICAgICAgICAgICBvdXQgPDwgIlxuICAgICAgICAiOwotICAgICAgICAg
ICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgICAgIG91dCA8PCAiZ1ZlcnRleEFycmF5TWFw
WyIgPDwgKnZlcnRleEFycmF5SXRlciA8PCAiXSI7CisgICAgICAgICAgICAgICAgICAgIGZvcm1h
dFJlc291cmNlSW5kZXgob3V0LCBjb3VudCk7CisgICAgICAgICAgICAgICAgICAgIG91dCA8PCAi
Z1ZlcnRleEFycmF5TWFwWyIgPDwgbmV3VkEgPDwgIl0iOworICAgICAgICAgICAgICAgICAgICAr
K2NvdW50OwogICAgICAgICAgICAgICAgIH0KKwogICAgICAgICAgICAgICAgIG91dCA8PCAifTtc
biI7Ci0gICAgICAgICAgICAgICAgb3V0IDw8ICIgICAgZ2xEZWxldGVWZXJ0ZXhBcnJheXMoIiA8
PCBuZXdWZXJ0ZXh0QXJyYXlzLnNpemUoKQotICAgICAgICAgICAgICAgICAgICA8PCAiLCBkZWxl
dGVWZXJ0ZXhBcnJheXMpO1xuIjsKKyAgICAgICAgICAgICAgICBvdXQgPDwgIiAgICBnbERlbGV0
ZVZlcnRleEFycmF5cygiIDw8IGNvdW50IDw8ICIsIGRlbGV0ZVZlcnRleEFycmF5cyk7XG4iOwog
ICAgICAgICAgICAgfQogCiAgICAgICAgICAgICAvLyBUT0RPIChodHRwOi8vYW5nbGVidWcuY29t
LzQ1OTkpOiBIYW5kbGUgdmVydGV4IGFycmF5cyB0aGF0IG5lZWQgcmVnZW4KQEAgLTIxNjYsOSAr
MjE4NCwxNSBAQCB2b2lkIENhcHR1cmVWZXJ0ZXhBcnJheVN0YXRlKHN0ZDo6dmVjdG9yPENhbGxD
YXB0dXJlPiAqc2V0dXBDYWxscywKICAgICAgICAgICAgIH0KICAgICAgICAgfQogCi0gICAgICAg
IGlmIChhdHRyaWIuZm9ybWF0ICE9IGRlZmF1bHRBdHRyaWIuZm9ybWF0IHx8IGF0dHJpYi5wb2lu
dGVyICE9IGRlZmF1bHRBdHRyaWIucG9pbnRlciB8fAotICAgICAgICAgICAgYmluZGluZy5nZXRT
dHJpZGUoKSAhPSBkZWZhdWx0QmluZGluZy5nZXRTdHJpZGUoKSB8fAotICAgICAgICAgICAgYmlu
ZGluZy5nZXRCdWZmZXIoKS5nZXQoKSAhPSBudWxscHRyKQorICAgICAgICAvLyBEb24ndCBjYXB0
dXJlIENhcHR1cmVWZXJ0ZXhBdHRyaWJQb2ludGVyIGNhbGxzIHdoZW4gYSBub24tZGVmYXVsdCBW
QU8gaXMgYm91bmQsIHRoZSBhcnJheQorICAgICAgICAvLyBidWZmZXIgaXMgbnVsbCBhbmQgYSBu
b24tbnVsbCBhdHRyaWIgcG9pbnRlciBpcyB1c2VkLgorICAgICAgICBib29sIHNraXBJbnZhbGlk
QXR0cmliID0gdmVydGV4QXJyYXktPmlkKCkudmFsdWUgIT0gMCAmJgorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgYmluZGluZy5nZXRCdWZmZXIoKS5nZXQoKSA9PSBudWxscHRyICYm
IGF0dHJpYi5wb2ludGVyICE9IG51bGxwdHI7CisKKyAgICAgICAgaWYgKCFza2lwSW52YWxpZEF0
dHJpYiAmJgorICAgICAgICAgICAgKGF0dHJpYi5mb3JtYXQgIT0gZGVmYXVsdEF0dHJpYi5mb3Jt
YXQgfHwgYXR0cmliLnBvaW50ZXIgIT0gZGVmYXVsdEF0dHJpYi5wb2ludGVyIHx8CisgICAgICAg
ICAgICAgYmluZGluZy5nZXRTdHJpZGUoKSAhPSBkZWZhdWx0QmluZGluZy5nZXRTdHJpZGUoKSB8
fAorICAgICAgICAgICAgIGJpbmRpbmcuZ2V0QnVmZmVyKCkuZ2V0KCkgIT0gbnVsbHB0cikpCiAg
ICAgICAgIHsKICAgICAgICAgICAgIC8vIEVhY2ggYXR0cmlidXRlIGNhbiBwdWxsIGZyb20gYSBz
ZXBhcmF0ZSBidWZmZXIsIHNvIGNoZWNrIHRoZSBiaW5kaW5nCiAgICAgICAgICAgICBnbDo6QnVm
ZmVyICpidWZmZXIgPSBiaW5kaW5nLmdldEJ1ZmZlcigpLmdldCgpOwpAQCAtMjU4Nyw3ICsyNjEx
LDYgQEAgdm9pZCBDYXB0dXJlQnVmZmVyUmVzZXRDYWxscyhjb25zdCBnbDo6U3RhdGUgJnJlcGxh
eVN0YXRlLAogCiAgICAgLy8gVHJhY2sgY2FsbHMgdG8gcmVnZW5lcmF0ZSBhIGdpdmVuIGJ1ZmZl
cgogICAgIFJlc291cmNlQ2FsbHMgJmJ1ZmZlclJlZ2VuQ2FsbHMgPSB0cmFja2VkQnVmZmVycy5n
ZXRSZXNvdXJjZVJlZ2VuQ2FsbHMoKTsKLSAgICBDYXB0dXJlKCZidWZmZXJSZWdlbkNhbGxzW2J1
ZmZlcklEXSwgQ2FwdHVyZURlbGV0ZUJ1ZmZlcnMocmVwbGF5U3RhdGUsIHRydWUsIDEsIGlkKSk7
CiAgICAgQ2FwdHVyZSgmYnVmZmVyUmVnZW5DYWxsc1tidWZmZXJJRF0sIENhcHR1cmVHZW5CdWZm
ZXJzKHJlcGxheVN0YXRlLCB0cnVlLCAxLCBpZCkpOwogICAgIE1heWJlQ2FwdHVyZVVwZGF0ZVJl
c291cmNlSURzKHJlc291cmNlVHJhY2tlciwgJmJ1ZmZlclJlZ2VuQ2FsbHNbYnVmZmVySURdKTsK
IApAQCAtMjg4NSw5ICsyOTA4LDYgQEAgdm9pZCBDYXB0dXJlU2hhcmVHcm91cE1pZEV4ZWN1dGlv
blNldHVwKGNvbnN0IGdsOjpDb250ZXh0ICpjb250ZXh0LAogICAgICAgICBSZXNvdXJjZUNhbGxz
ICZ0ZXh0dXJlUmVnZW5DYWxscyA9IHRyYWNrZWRUZXh0dXJlcy5nZXRSZXNvdXJjZVJlZ2VuQ2Fs
bHMoKTsKICAgICAgICAgQ2FsbFZlY3RvciB0ZXhHZW5DYWxscyh7c2V0dXBDYWxscywgJnRleHR1
cmVSZWdlbkNhbGxzW2lkLnZhbHVlXX0pOwogCi0gICAgICAgIC8vIEZvciByZXNldCBvbmx5LCBk
ZWxldGUgdGhlIHRleHR1cmUgYmVmb3JlIGdlbm5pbmcKLSAgICAgICAgQ2FwdHVyZSgmdGV4dHVy
ZVJlZ2VuQ2FsbHNbaWQudmFsdWVdLCBDYXB0dXJlRGVsZXRlVGV4dHVyZXMocmVwbGF5U3RhdGUs
IHRydWUsIDEsICZpZCkpOwotCiAgICAgICAgIC8vIEdlbiB0aGUgVGV4dHVyZS4KICAgICAgICAg
Zm9yIChzdGQ6OnZlY3RvcjxDYWxsQ2FwdHVyZT4gKmNhbGxzIDogdGV4R2VuQ2FsbHMpCiAgICAg
ICAgIHsKQEAgLTM1NDgsMTEgKzM1NjgsNiBAQCB2b2lkIENhcHR1cmVNaWRFeGVjdXRpb25TZXR1
cChjb25zdCBnbDo6Q29udGV4dCAqY29udGV4dCwKICAgICAgICAgUmVzb3VyY2VDYWxscyAmZnJh
bWVidWZmZXJSZWdlbkNhbGxzID0gdHJhY2tlZEZyYW1lYnVmZmVycy5nZXRSZXNvdXJjZVJlZ2Vu
Q2FsbHMoKTsKICAgICAgICAgQ2FsbFZlY3RvciBmcmFtZWJ1ZmZlckdlbkNhbGxzKHtzZXR1cENh
bGxzLCAmZnJhbWVidWZmZXJSZWdlbkNhbGxzW2lkLnZhbHVlXX0pOwogCi0gICAgICAgIC8vIEZv
ciByZXNldCBvbmx5LCBkZWxldGUgdGhlIGZyYW1lYnVmZmVyIGJlZm9yZSBnZW5uaW5nLiAgVGhp
cyBpcyBva2F5IGV2ZW4gaWYgdGhlCi0gICAgICAgIC8vIGZyYW1lYnVmZmVyIGhhcyBhbHJlYWR5
IGJlZW4gZGVsZXRlZC4KLSAgICAgICAgQ2FwdHVyZSgmZnJhbWVidWZmZXJSZWdlbkNhbGxzW2lk
LnZhbHVlXSwKLSAgICAgICAgICAgICAgICBDYXB0dXJlRGVsZXRlRnJhbWVidWZmZXJzKHJlcGxh
eVN0YXRlLCB0cnVlLCAxLCAmaWQpKTsKLQogICAgICAgICAvLyBHZW4gdGhlIGZyYW1lYnVmZmVy
CiAgICAgICAgIGZvciAoc3RkOjp2ZWN0b3I8Q2FsbENhcHR1cmU+ICpjYWxscyA6IGZyYW1lYnVm
ZmVyR2VuQ2FsbHMpCiAgICAgICAgIHsKQEAgLTQzMDIsNiArNDMxNywyOCBAQCBzdGQ6OnN0cmlu
ZyBHZXRCYXNlTmFtZShjb25zdCBzdGQ6OnN0cmluZyAmbmFtZVdpdGhQYXRoKQogICAgIEFTU0VS
VCghcmVzdWx0LmVtcHR5KCkpOwogICAgIHJldHVybiByZXN1bHQuYmFjaygpOwogfQorCit0ZW1w
bGF0ZSA8Pgorc3RydWN0IFBhcmFtVmFsdWVUcmFpdDxnbDo6QnVmZmVySUQ+Cit7CisgICAgc3Rh
dGljIGNvbnN0ZXhwciBjb25zdCBjaGFyICpuYW1lID0gImJ1ZmZlclBhY2tlZCI7CisgICAgc3Rh
dGljIGNvbnN0IFBhcmFtVHlwZSB0eXBlSUQgICAgID0gUGFyYW1UeXBlOjpUQnVmZmVySUQ7Cit9
OworCit0ZW1wbGF0ZSA8Pgorc3RydWN0IFBhcmFtVmFsdWVUcmFpdDxnbDo6UmVuZGVyYnVmZmVy
SUQ+Cit7CisgICAgc3RhdGljIGNvbnN0ZXhwciBjb25zdCBjaGFyICpuYW1lID0gInJlbmRlcmJ1
ZmZlclBhY2tlZCI7CisgICAgc3RhdGljIGNvbnN0IFBhcmFtVHlwZSB0eXBlSUQgICAgID0gUGFy
YW1UeXBlOjpUUmVuZGVyYnVmZmVySUQ7Cit9OworCit0ZW1wbGF0ZSA8Pgorc3RydWN0IFBhcmFt
VmFsdWVUcmFpdDxnbDo6VGV4dHVyZUlEPgoreworICAgIHN0YXRpYyBjb25zdGV4cHIgY29uc3Qg
Y2hhciAqbmFtZSA9ICJ0ZXh0dXJlUGFja2VkIjsKKyAgICBzdGF0aWMgY29uc3QgUGFyYW1UeXBl
IHR5cGVJRCAgICAgPSBQYXJhbVR5cGU6OlRUZXh0dXJlSUQ7Cit9OworCiB9ICAvLyBuYW1lc3Bh
Y2UKIAogUGFyYW1DYXB0dXJlOjpQYXJhbUNhcHR1cmUoKSA6IHR5cGUoUGFyYW1UeXBlOjpUR0xl
bnVtKSwgZW51bUdyb3VwKGdsOjpHTGVudW1Hcm91cDo6RGVmYXVsdEdyb3VwKSB7fQpAQCAtNTY1
Miw2ICs1Njg5LDI1IEBAIHZvaWQgRnJhbWVDYXB0dXJlU2hhcmVkOjptYXliZUNhcHR1cmVQcmVD
YWxsVXBkYXRlcygKICAgICAgICAgICAgIG1heWJlR2VuUmVzb3VyY2VPbkJpbmQ8Z2w6OkZyYW1l
YnVmZmVySUQ+KGNhbGwpOwogICAgICAgICAgICAgYnJlYWs7CiAKKyAgICAgICAgY2FzZSBFbnRy
eVBvaW50OjpHTEdlblJlbmRlcmJ1ZmZlcnM6CisgICAgICAgIGNhc2UgRW50cnlQb2ludDo6R0xH
ZW5SZW5kZXJidWZmZXJzT0VTOgorICAgICAgICB7CisgICAgICAgICAgICBHTHNpemVpIGNvdW50
ID0gY2FsbC5wYXJhbXMuZ2V0UGFyYW0oIm4iLCBQYXJhbVR5cGU6OlRHTHNpemVpLCAwKS52YWx1
ZS5HTHNpemVpVmFsOworICAgICAgICAgICAgY29uc3QgZ2w6OlJlbmRlcmJ1ZmZlcklEICpyZW5k
ZXJidWZmZXJJRHMgPQorICAgICAgICAgICAgICAgIGNhbGwucGFyYW1zLmdldFBhcmFtKCJyZW5k
ZXJidWZmZXJzUGFja2VkIiwgUGFyYW1UeXBlOjpUUmVuZGVyYnVmZmVySURQb2ludGVyLCAxKQor
ICAgICAgICAgICAgICAgICAgICAudmFsdWUuUmVuZGVyYnVmZmVySURQb2ludGVyVmFsOworICAg
ICAgICAgICAgZm9yIChHTHNpemVpIGkgPSAwOyBpIDwgY291bnQ7IGkrKykKKyAgICAgICAgICAg
IHsKKyAgICAgICAgICAgICAgICBoYW5kbGVHZW5uZWRSZXNvdXJjZShyZW5kZXJidWZmZXJJRHNb
aV0pOworICAgICAgICAgICAgfQorICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KKworICAg
ICAgICBjYXNlIEVudHJ5UG9pbnQ6OkdMQmluZFJlbmRlcmJ1ZmZlcjoKKyAgICAgICAgY2FzZSBF
bnRyeVBvaW50OjpHTEJpbmRSZW5kZXJidWZmZXJPRVM6CisgICAgICAgICAgICBtYXliZUdlblJl
c291cmNlT25CaW5kPGdsOjpSZW5kZXJidWZmZXJJRD4oY2FsbCk7CisgICAgICAgICAgICBicmVh
azsKKwogICAgICAgICBjYXNlIEVudHJ5UG9pbnQ6OkdMR2VuVGV4dHVyZXM6CiAgICAgICAgIHsK
ICAgICAgICAgICAgIEdMc2l6ZWkgY291bnQgPSBjYWxsLnBhcmFtcy5nZXRQYXJhbSgibiIsIFBh
cmFtVHlwZTo6VEdMc2l6ZWksIDApLnZhbHVlLkdMc2l6ZWlWYWw7CkBAIC01NjY2LDYgKzU3MjIs
MTAgQEAgdm9pZCBGcmFtZUNhcHR1cmVTaGFyZWQ6Om1heWJlQ2FwdHVyZVByZUNhbGxVcGRhdGVz
KAogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KIAorICAgICAgICBjYXNlIEVudHJ5UG9p
bnQ6OkdMQmluZFRleHR1cmU6CisgICAgICAgICAgICBtYXliZUdlblJlc291cmNlT25CaW5kPGds
OjpUZXh0dXJlSUQ+KGNhbGwpOworICAgICAgICAgICAgYnJlYWs7CisKICAgICAgICAgY2FzZSBF
bnRyeVBvaW50OjpHTERlbGV0ZUJ1ZmZlcnM6CiAgICAgICAgIHsKICAgICAgICAgICAgIEdMc2l6
ZWkgY291bnQgPSBjYWxsLnBhcmFtcy5nZXRQYXJhbSgibiIsIFBhcmFtVHlwZTo6VEdMc2l6ZWks
IDApLnZhbHVlLkdMc2l6ZWlWYWw7CkBAIC01Njk5LDYgKzU3NTksMTAgQEAgdm9pZCBGcmFtZUNh
cHR1cmVTaGFyZWQ6Om1heWJlQ2FwdHVyZVByZUNhbGxVcGRhdGVzKAogICAgICAgICAgICAgYnJl
YWs7CiAgICAgICAgIH0KIAorICAgICAgICBjYXNlIEVudHJ5UG9pbnQ6OkdMQmluZEJ1ZmZlcjoK
KyAgICAgICAgICAgIG1heWJlR2VuUmVzb3VyY2VPbkJpbmQ8Z2w6OkJ1ZmZlcklEPihjYWxsKTsK
KyAgICAgICAgICAgIGJyZWFrOworCiAgICAgICAgIGNhc2UgRW50cnlQb2ludDo6R0xEZWxldGVQ
cm9ncmFtUGlwZWxpbmVzOgogICAgICAgICBjYXNlIEVudHJ5UG9pbnQ6OkdMRGVsZXRlUHJvZ3Jh
bVBpcGVsaW5lc0VYVDoKICAgICAgICAgewpAQCAtNzY5NCw2ICs3NzU4LDM4IEBAIHZvaWQgV3Jp
dGVQYXJhbVZhbHVlUmVwbGF5PFBhcmFtVHlwZTo6VEdMZmxvYXRDb25zdFBvaW50ZXI+KHN0ZDo6
b3N0cmVhbSAmb3MsCiAgICAgfQogfQogCit0ZW1wbGF0ZSA8Pgordm9pZCBXcml0ZVBhcmFtVmFs
dWVSZXBsYXk8UGFyYW1UeXBlOjpUR0xpbnRDb25zdFBvaW50ZXI+KHN0ZDo6b3N0cmVhbSAmb3Ms
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgY29uc3QgQ2FsbENhcHR1cmUgJmNhbGwsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgR0xpbnQgKnZhbHVlKQoreworICAg
IGlmICh2YWx1ZSA9PSAwKQorICAgIHsKKyAgICAgICAgb3MgPDwgIm51bGxwdHIiOworICAgIH0K
KyAgICBlbHNlCisgICAgeworICAgICAgICBvcyA8PCAicmVpbnRlcnByZXRfY2FzdDxjb25zdCBH
TGludCAqPigiCisgICAgICAgICAgIDw8IHN0YXRpY19jYXN0PGludD4ocmVpbnRlcnByZXRfY2Fz
dDxpbnRwdHJfdD4odmFsdWUpKSA8PCAiKSI7CisgICAgfQorfQorCit0ZW1wbGF0ZSA8Pgordm9p
ZCBXcml0ZVBhcmFtVmFsdWVSZXBsYXk8UGFyYW1UeXBlOjpUR0xzaXplaVBvaW50ZXI+KHN0ZDo6
b3N0cmVhbSAmb3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgY29uc3QgQ2FsbENhcHR1cmUgJmNhbGwsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSAqdmFsdWUpCit7Cisg
ICAgaWYgKHZhbHVlID09IDApCisgICAgeworICAgICAgICBvcyA8PCAibnVsbHB0ciI7CisgICAg
fQorICAgIGVsc2UKKyAgICB7CisgICAgICAgIG9zIDw8ICJyZWludGVycHJldF9jYXN0PEdMc2l6
ZWkgKj4oIiA8PCBzdGF0aWNfY2FzdDxpbnQ+KHJlaW50ZXJwcmV0X2Nhc3Q8aW50cHRyX3Q+KHZh
bHVlKSkKKyAgICAgICAgICAgPDwgIikiOworICAgIH0KK30KKwogdGVtcGxhdGUgPD4KIHZvaWQg
V3JpdGVQYXJhbVZhbHVlUmVwbGF5PFBhcmFtVHlwZTo6VEdMdWludENvbnN0UG9pbnRlcj4oc3Rk
Ojpvc3RyZWFtICZvcywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgY29uc3QgQ2FsbENhcHR1cmUgJmNhbGwsCmRpZmYgLS1naXQgYS9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvY2FwdHVyZS9GcmFtZUNhcHR1cmUu
aCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9jYXB0dXJlL0ZyYW1lQ2Fw
dHVyZS5oCmluZGV4IDZlYWZlZWJmMGE5ZjQ5OTExM2Y3OTliMTk3YWMxMGQ5ODk3MmUxMDcuLjY4
ZTEzZTUwZTZlOWFiZWZiZGRlODRhMzczNmRlMjFhYWIzODU5NGEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9jYXB0dXJlL0ZyYW1lQ2FwdHVyZS5oCisr
KyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9jYXB0dXJlL0ZyYW1lQ2Fw
dHVyZS5oCkBAIC0zMDgsNyArMzA4LDcgQEAgY2xhc3MgVHJhY2tlZFJlc291cmNlIGZpbmFsIDog
YW5nbGU6Ok5vbkNvcHlhYmxlCiAgICAgUmVzb3VyY2VDYWxscyAmZ2V0UmVzb3VyY2VSZXN0b3Jl
Q2FsbHMoKSB7IHJldHVybiBtUmVzb3VyY2VSZXN0b3JlQ2FsbHM7IH0KIAogICBwcml2YXRlOgot
ICAgIC8vIFJlc291cmNlIHJlZ2VuIGNhbGxzIHdpbGwgZGVsZXRlIGFuZCBnZW4gYSByZXNvdXJj
ZQorICAgIC8vIFJlc291cmNlIHJlZ2VuIGNhbGxzIHdpbGwgZ2VuIGEgcmVzb3VyY2UKICAgICBS
ZXNvdXJjZUNhbGxzIG1SZXNvdXJjZVJlZ2VuQ2FsbHM7CiAgICAgLy8gUmVzb3VyY2UgcmVzdG9y
ZSBjYWxscyB3aWxsIHJlc3RvcmUgdGhlIGNvbnRlbnRzIG9mIGEgcmVzb3VyY2UKICAgICBSZXNv
dXJjZUNhbGxzIG1SZXNvdXJjZVJlc3RvcmVDYWxsczsKQEAgLTkyMCw2ICs5MjAsMTYgQEAgdm9p
ZCBXcml0ZVBhcmFtVmFsdWVSZXBsYXk8UGFyYW1UeXBlOjpUR0xmbG9hdENvbnN0UG9pbnRlcj4o
c3RkOjpvc3RyZWFtICZvcywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IENhbGxDYXB0dXJlICZjYWxsLAogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qg
R0xmbG9hdCAqdmFsdWUpOwogCit0ZW1wbGF0ZSA8Pgordm9pZCBXcml0ZVBhcmFtVmFsdWVSZXBs
YXk8UGFyYW1UeXBlOjpUR0xpbnRDb25zdFBvaW50ZXI+KHN0ZDo6b3N0cmVhbSAmb3MsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29u
c3QgQ2FsbENhcHR1cmUgJmNhbGwsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgR0xpbnQgKnZhbHVlKTsKKwordGVtcGxhdGUg
PD4KK3ZvaWQgV3JpdGVQYXJhbVZhbHVlUmVwbGF5PFBhcmFtVHlwZTo6VEdMc2l6ZWlQb2ludGVy
PihzdGQ6Om9zdHJlYW0gJm9zLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGNvbnN0IENhbGxDYXB0dXJlICZjYWxsLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgKnZhbHVl
KTsKKwogdGVtcGxhdGUgPD4KIHZvaWQgV3JpdGVQYXJhbVZhbHVlUmVwbGF5PFBhcmFtVHlwZTo6
VEdMdWludENvbnN0UG9pbnRlcj4oc3RkOjpvc3RyZWFtICZvcywKICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgQ2FsbENhcHR1
cmUgJmNhbGwsCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5H
TEUvY2FwdHVyZS9jYXB0dXJlX2dsZXNfMl8wX3BhcmFtcy5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvbGliQU5HTEUvY2FwdHVyZS9jYXB0dXJlX2dsZXNfMl8wX3BhcmFtcy5jcHAK
aW5kZXggYzFhNGFjYjY0NWI0OWYzMjg5MmUwMmI3N2U4YTBlZjEyNGMzZGNhNi4uYjJiOTU1Zjc2
YzdiMDZhYjIxMjM0MWE3ZWQ5ZDE3NmY5NWJjNTM2YSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL2NhcHR1cmUvY2FwdHVyZV9nbGVzXzJfMF9wYXJhbXMu
Y3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9jYXB0dXJlL2Nh
cHR1cmVfZ2xlc18yXzBfcGFyYW1zLmNwcApAQCAtNjkxLDYgKzY5MSwyNiBAQCB2b2lkIENhcHR1
cmVUZXhJbWFnZTJEX3BpeGVscyhjb25zdCBTdGF0ZSAmZ2xTdGF0ZSwKICAgICAgICAgcmV0dXJu
OwogICAgIH0KIAorICAgIC8vIEJlY2F1c2UgR0xfSEFMRl9GTE9BVCBhbmQgR0xfSEFMRl9GTE9B
VF9PRVMgaGF2ZSBkaWZmZXJlbnQgdmFsdWVzLCBhbmQgdGhlCisgICAgLy8gZm9ybWF0IHRhYmxl
IGNyZWF0ZWQgYnkgQnVpbGRJbnRlcm5hbEZvcm1hdEluZm9NYXAoKSBhbmQgcXVlcmllZCBoZXJl
CisgICAgLy8gdXNlcyBHTF9IQUxGX0ZMT0FUX09FUyBmb3IgbGVnYWN5IGZvcm1hdHMsIHdlIGhh
dmUgdG8gb3ZlcnJpZGUgdGhlIHR5cGUgaGVyZS4KKyAgICAvLworICAgIC8vIEJ1aWxkSW50ZXJu
YWxGb3JtYXRJbmZvTWFwKCkgY2FuJ3QgaGF2ZSBlbnRyaWVzIG9mIHRoZSBzYW1lIGZvcm1hdCBm
b3IKKyAgICAvLyBHTF9IQUxGX0ZMT0FUIGFuZCBHTF9BTFBIQV9GTE9BVF9PRVMsIGFuZCBmb3Jt
YXRzIGxpa2UgUjE2RiB1c2UgR0xfSEFMRl9GTE9BVCwKKyAgICAvLyBidXQgbGVnYWN5IGZvcm1h
dHMgbGlrZSBBTFBIQTE2RiB1c2UgR0xfSEFMRl9GTE9BVF9PRVMsIHNvIG92ZXJyaWRpbmcKKyAg
ICAvLyBHTF9IQUxGX0ZMT0FUIG9ubHkgYmFzZWQgb24gdGhlIEdMRVMgdmVyc2lvbiwgbGlrZSBp
dCBpcyBkb25lIGluCisgICAgLy8gZ2V0UmVhZFBpeGVsc1R5cGUsIHdpbGwgbm90IHdvcmssIHdl
IGFsc28gaGF2ZSB0byBjaGVjayB0aGUgZm9ybWF0IHdoZW4gZG9pbmcgc28uCisgICAgLy8KKyAg
ICAvLyBCZXR0ZXIgd291bGQgYmUgdG8gYWN0dWFsbHkgdXNlIHRoZSAoc2l6ZWQpIGludGVybmFs
IGZvcm1hdCB0byBkbyB0aGUgbG9va3VwLAorICAgIC8vIGJ1dCB0aGlzIGRvZXNuJ3Qgd29yayB3
aGVuIGNhbGxpbmcgdGhpcyBmdW5jdGlvbiBmcm9tIENhcHR1cmVUZXhTdWJJbWFnZTJEX3BpeGVs
cywKKyAgICAvLyBiZWNhdXNlIHRoZXJlIHRoZSBpbnRlcm5hbCBmb3JtYXQgaXMgbm90IGtub3du
LgorCisgICAgaWYgKHR5cGUgPT0gR0xfSEFMRl9GTE9BVCAmJgorICAgICAgICAoZm9ybWF0ID09
IEdMX0FMUEhBIHx8IGZvcm1hdCA9PSBHTF9MVU1JTkFOQ0UgfHwgZm9ybWF0ID09IEdMX0xVTUlO
QU5DRV9BTFBIQSkpCisgICAgeworICAgICAgICB0eXBlID0gR0xfSEFMRl9GTE9BVF9PRVM7Cisg
ICAgfQorCiAgICAgY29uc3QgZ2w6OkludGVybmFsRm9ybWF0ICZpbnRlcm5hbEZvcm1hdEluZm8g
PSBnbDo6R2V0SW50ZXJuYWxGb3JtYXRJbmZvKGZvcm1hdCwgdHlwZSk7CiAgICAgY29uc3QgZ2w6
OlBpeGVsVW5wYWNrU3RhdGUgJnVucGFjayAgICAgICAgICAgPSBnbFN0YXRlLmdldFVucGFja1N0
YXRlKCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdM
RS9jYXB0dXJlL2NhcHR1cmVfZ2xlc19leHRfYXV0b2dlbi5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvbGliQU5HTEUvY2FwdHVyZS9jYXB0dXJlX2dsZXNfZXh0X2F1dG9nZW4uY3Bw
CmluZGV4IDU2YzJlZjZhYjBjMGQyYTgzZWZlYjVhZmM0YWFlYjAwMjBiNWIyMjEuLjQ4ZWMxZGFi
ZGNlNDJiMTM1OTMyNDRjNDhmOTRiZTI2MmY5MDY2ODAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9jYXB0dXJlL2NhcHR1cmVfZ2xlc19leHRfYXV0b2dl
bi5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL2NhcHR1cmUv
Y2FwdHVyZV9nbGVzX2V4dF9hdXRvZ2VuLmNwcApAQCAtMjAsNiArMjAsNDAyIEBAIHVzaW5nIG5h
bWVzcGFjZSBhbmdsZTsKIG5hbWVzcGFjZSBnbAogewogCitDYWxsQ2FwdHVyZSBDYXB0dXJlQmVn
aW5QZXJmTW9uaXRvckFNRChjb25zdCBTdGF0ZSAmZ2xTdGF0ZSwgYm9vbCBpc0NhbGxWYWxpZCwg
R0x1aW50IG1vbml0b3IpCit7CisgICAgUGFyYW1CdWZmZXIgcGFyYW1CdWZmZXI7CisKKyAgICBw
YXJhbUJ1ZmZlci5hZGRWYWx1ZVBhcmFtKCJtb25pdG9yIiwgUGFyYW1UeXBlOjpUR0x1aW50LCBt
b25pdG9yKTsKKworICAgIHJldHVybiBDYWxsQ2FwdHVyZShhbmdsZTo6RW50cnlQb2ludDo6R0xC
ZWdpblBlcmZNb25pdG9yQU1ELCBzdGQ6Om1vdmUocGFyYW1CdWZmZXIpKTsKK30KKworQ2FsbENh
cHR1cmUgQ2FwdHVyZURlbGV0ZVBlcmZNb25pdG9yc0FNRChjb25zdCBTdGF0ZSAmZ2xTdGF0ZSwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCBpc0NhbGxWYWxp
ZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBuLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVpbnQgKm1vbml0b3Jz
KQoreworICAgIFBhcmFtQnVmZmVyIHBhcmFtQnVmZmVyOworCisgICAgcGFyYW1CdWZmZXIuYWRk
VmFsdWVQYXJhbSgibiIsIFBhcmFtVHlwZTo6VEdMc2l6ZWksIG4pOworCisgICAgaWYgKGlzQ2Fs
bFZhbGlkKQorICAgIHsKKyAgICAgICAgUGFyYW1DYXB0dXJlIG1vbml0b3JzUGFyYW0oIm1vbml0
b3JzIiwgUGFyYW1UeXBlOjpUR0x1aW50UG9pbnRlcik7CisgICAgICAgIEluaXRQYXJhbVZhbHVl
KFBhcmFtVHlwZTo6VEdMdWludFBvaW50ZXIsIG1vbml0b3JzLCAmbW9uaXRvcnNQYXJhbS52YWx1
ZSk7CisgICAgICAgIENhcHR1cmVEZWxldGVQZXJmTW9uaXRvcnNBTURfbW9uaXRvcnMoZ2xTdGF0
ZSwgaXNDYWxsVmFsaWQsIG4sIG1vbml0b3JzLCAmbW9uaXRvcnNQYXJhbSk7CisgICAgICAgIHBh
cmFtQnVmZmVyLmFkZFBhcmFtKHN0ZDo6bW92ZShtb25pdG9yc1BhcmFtKSk7CisgICAgfQorICAg
IGVsc2UKKyAgICB7CisgICAgICAgIFBhcmFtQ2FwdHVyZSBtb25pdG9yc1BhcmFtKCJtb25pdG9y
cyIsIFBhcmFtVHlwZTo6VEdMdWludFBvaW50ZXIpOworICAgICAgICBJbml0UGFyYW1WYWx1ZShQ
YXJhbVR5cGU6OlRHTHVpbnRQb2ludGVyLCBzdGF0aWNfY2FzdDxHTHVpbnQgKj4obnVsbHB0ciks
CisgICAgICAgICAgICAgICAgICAgICAgICZtb25pdG9yc1BhcmFtLnZhbHVlKTsKKyAgICAgICAg
cGFyYW1CdWZmZXIuYWRkUGFyYW0oc3RkOjptb3ZlKG1vbml0b3JzUGFyYW0pKTsKKyAgICB9CisK
KyAgICByZXR1cm4gQ2FsbENhcHR1cmUoYW5nbGU6OkVudHJ5UG9pbnQ6OkdMRGVsZXRlUGVyZk1v
bml0b3JzQU1ELCBzdGQ6Om1vdmUocGFyYW1CdWZmZXIpKTsKK30KKworQ2FsbENhcHR1cmUgQ2Fw
dHVyZUVuZFBlcmZNb25pdG9yQU1EKGNvbnN0IFN0YXRlICZnbFN0YXRlLCBib29sIGlzQ2FsbFZh
bGlkLCBHTHVpbnQgbW9uaXRvcikKK3sKKyAgICBQYXJhbUJ1ZmZlciBwYXJhbUJ1ZmZlcjsKKwor
ICAgIHBhcmFtQnVmZmVyLmFkZFZhbHVlUGFyYW0oIm1vbml0b3IiLCBQYXJhbVR5cGU6OlRHTHVp
bnQsIG1vbml0b3IpOworCisgICAgcmV0dXJuIENhbGxDYXB0dXJlKGFuZ2xlOjpFbnRyeVBvaW50
OjpHTEVuZFBlcmZNb25pdG9yQU1ELCBzdGQ6Om1vdmUocGFyYW1CdWZmZXIpKTsKK30KKworQ2Fs
bENhcHR1cmUgQ2FwdHVyZUdlblBlcmZNb25pdG9yc0FNRChjb25zdCBTdGF0ZSAmZ2xTdGF0ZSwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCBpc0NhbGxWYWxpZCwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBuLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVpbnQgKm1vbml0b3JzKQoreworICAg
IFBhcmFtQnVmZmVyIHBhcmFtQnVmZmVyOworCisgICAgcGFyYW1CdWZmZXIuYWRkVmFsdWVQYXJh
bSgibiIsIFBhcmFtVHlwZTo6VEdMc2l6ZWksIG4pOworCisgICAgaWYgKGlzQ2FsbFZhbGlkKQor
ICAgIHsKKyAgICAgICAgUGFyYW1DYXB0dXJlIG1vbml0b3JzUGFyYW0oIm1vbml0b3JzIiwgUGFy
YW1UeXBlOjpUR0x1aW50UG9pbnRlcik7CisgICAgICAgIEluaXRQYXJhbVZhbHVlKFBhcmFtVHlw
ZTo6VEdMdWludFBvaW50ZXIsIG1vbml0b3JzLCAmbW9uaXRvcnNQYXJhbS52YWx1ZSk7CisgICAg
ICAgIENhcHR1cmVHZW5QZXJmTW9uaXRvcnNBTURfbW9uaXRvcnMoZ2xTdGF0ZSwgaXNDYWxsVmFs
aWQsIG4sIG1vbml0b3JzLCAmbW9uaXRvcnNQYXJhbSk7CisgICAgICAgIHBhcmFtQnVmZmVyLmFk
ZFBhcmFtKHN0ZDo6bW92ZShtb25pdG9yc1BhcmFtKSk7CisgICAgfQorICAgIGVsc2UKKyAgICB7
CisgICAgICAgIFBhcmFtQ2FwdHVyZSBtb25pdG9yc1BhcmFtKCJtb25pdG9ycyIsIFBhcmFtVHlw
ZTo6VEdMdWludFBvaW50ZXIpOworICAgICAgICBJbml0UGFyYW1WYWx1ZShQYXJhbVR5cGU6OlRH
THVpbnRQb2ludGVyLCBzdGF0aWNfY2FzdDxHTHVpbnQgKj4obnVsbHB0ciksCisgICAgICAgICAg
ICAgICAgICAgICAgICZtb25pdG9yc1BhcmFtLnZhbHVlKTsKKyAgICAgICAgcGFyYW1CdWZmZXIu
YWRkUGFyYW0oc3RkOjptb3ZlKG1vbml0b3JzUGFyYW0pKTsKKyAgICB9CisKKyAgICByZXR1cm4g
Q2FsbENhcHR1cmUoYW5nbGU6OkVudHJ5UG9pbnQ6OkdMR2VuUGVyZk1vbml0b3JzQU1ELCBzdGQ6
Om1vdmUocGFyYW1CdWZmZXIpKTsKK30KKworQ2FsbENhcHR1cmUgQ2FwdHVyZUdldFBlcmZNb25p
dG9yQ291bnRlckRhdGFBTUQoY29uc3QgU3RhdGUgJmdsU3RhdGUsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sIGlzQ2FsbFZhbGlkLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50IG1vbml0b3Is
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTGVudW0g
cG5hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBH
THNpemVpIGRhdGFTaXplLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgR0x1aW50ICpkYXRhLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgR0xpbnQgKmJ5dGVzV3JpdHRlbikKK3sKKyAgICBQYXJhbUJ1ZmZlciBw
YXJhbUJ1ZmZlcjsKKworICAgIHBhcmFtQnVmZmVyLmFkZFZhbHVlUGFyYW0oIm1vbml0b3IiLCBQ
YXJhbVR5cGU6OlRHTHVpbnQsIG1vbml0b3IpOworICAgIHBhcmFtQnVmZmVyLmFkZEVudW1QYXJh
bSgicG5hbWUiLCBHTGVudW1Hcm91cDo6RGVmYXVsdEdyb3VwLCBQYXJhbVR5cGU6OlRHTGVudW0s
IHBuYW1lKTsKKyAgICBwYXJhbUJ1ZmZlci5hZGRWYWx1ZVBhcmFtKCJkYXRhU2l6ZSIsIFBhcmFt
VHlwZTo6VEdMc2l6ZWksIGRhdGFTaXplKTsKKworICAgIGlmIChpc0NhbGxWYWxpZCkKKyAgICB7
CisgICAgICAgIFBhcmFtQ2FwdHVyZSBkYXRhUGFyYW0oImRhdGEiLCBQYXJhbVR5cGU6OlRHTHVp
bnRQb2ludGVyKTsKKyAgICAgICAgSW5pdFBhcmFtVmFsdWUoUGFyYW1UeXBlOjpUR0x1aW50UG9p
bnRlciwgZGF0YSwgJmRhdGFQYXJhbS52YWx1ZSk7CisgICAgICAgIENhcHR1cmVHZXRQZXJmTW9u
aXRvckNvdW50ZXJEYXRhQU1EX2RhdGEoZ2xTdGF0ZSwgaXNDYWxsVmFsaWQsIG1vbml0b3IsIHBu
YW1lLCBkYXRhU2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBkYXRhLCBieXRlc1dyaXR0ZW4sICZkYXRhUGFyYW0pOworICAgICAgICBwYXJhbUJ1
ZmZlci5hZGRQYXJhbShzdGQ6Om1vdmUoZGF0YVBhcmFtKSk7CisgICAgfQorICAgIGVsc2UKKyAg
ICB7CisgICAgICAgIFBhcmFtQ2FwdHVyZSBkYXRhUGFyYW0oImRhdGEiLCBQYXJhbVR5cGU6OlRH
THVpbnRQb2ludGVyKTsKKyAgICAgICAgSW5pdFBhcmFtVmFsdWUoUGFyYW1UeXBlOjpUR0x1aW50
UG9pbnRlciwgc3RhdGljX2Nhc3Q8R0x1aW50ICo+KG51bGxwdHIpLCAmZGF0YVBhcmFtLnZhbHVl
KTsKKyAgICAgICAgcGFyYW1CdWZmZXIuYWRkUGFyYW0oc3RkOjptb3ZlKGRhdGFQYXJhbSkpOwor
ICAgIH0KKworICAgIGlmIChpc0NhbGxWYWxpZCkKKyAgICB7CisgICAgICAgIFBhcmFtQ2FwdHVy
ZSBieXRlc1dyaXR0ZW5QYXJhbSgiYnl0ZXNXcml0dGVuIiwgUGFyYW1UeXBlOjpUR0xpbnRQb2lu
dGVyKTsKKyAgICAgICAgSW5pdFBhcmFtVmFsdWUoUGFyYW1UeXBlOjpUR0xpbnRQb2ludGVyLCBi
eXRlc1dyaXR0ZW4sICZieXRlc1dyaXR0ZW5QYXJhbS52YWx1ZSk7CisgICAgICAgIENhcHR1cmVH
ZXRQZXJmTW9uaXRvckNvdW50ZXJEYXRhQU1EX2J5dGVzV3JpdHRlbigKKyAgICAgICAgICAgIGds
U3RhdGUsIGlzQ2FsbFZhbGlkLCBtb25pdG9yLCBwbmFtZSwgZGF0YVNpemUsIGRhdGEsIGJ5dGVz
V3JpdHRlbiwgJmJ5dGVzV3JpdHRlblBhcmFtKTsKKyAgICAgICAgcGFyYW1CdWZmZXIuYWRkUGFy
YW0oc3RkOjptb3ZlKGJ5dGVzV3JpdHRlblBhcmFtKSk7CisgICAgfQorICAgIGVsc2UKKyAgICB7
CisgICAgICAgIFBhcmFtQ2FwdHVyZSBieXRlc1dyaXR0ZW5QYXJhbSgiYnl0ZXNXcml0dGVuIiwg
UGFyYW1UeXBlOjpUR0xpbnRQb2ludGVyKTsKKyAgICAgICAgSW5pdFBhcmFtVmFsdWUoUGFyYW1U
eXBlOjpUR0xpbnRQb2ludGVyLCBzdGF0aWNfY2FzdDxHTGludCAqPihudWxscHRyKSwKKyAgICAg
ICAgICAgICAgICAgICAgICAgJmJ5dGVzV3JpdHRlblBhcmFtLnZhbHVlKTsKKyAgICAgICAgcGFy
YW1CdWZmZXIuYWRkUGFyYW0oc3RkOjptb3ZlKGJ5dGVzV3JpdHRlblBhcmFtKSk7CisgICAgfQor
CisgICAgcmV0dXJuIENhbGxDYXB0dXJlKGFuZ2xlOjpFbnRyeVBvaW50OjpHTEdldFBlcmZNb25p
dG9yQ291bnRlckRhdGFBTUQsIHN0ZDo6bW92ZShwYXJhbUJ1ZmZlcikpOworfQorCitDYWxsQ2Fw
dHVyZSBDYXB0dXJlR2V0UGVyZk1vbml0b3JDb3VudGVySW5mb0FNRChjb25zdCBTdGF0ZSAmZ2xT
dGF0ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJv
b2wgaXNDYWxsVmFsaWQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBHTHVpbnQgZ3JvdXAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBHTHVpbnQgY291bnRlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIEdMZW51bSBwbmFtZSwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZvaWQgKmRhdGEpCit7CisgICAgUGFyYW1CdWZm
ZXIgcGFyYW1CdWZmZXI7CisKKyAgICBwYXJhbUJ1ZmZlci5hZGRWYWx1ZVBhcmFtKCJncm91cCIs
IFBhcmFtVHlwZTo6VEdMdWludCwgZ3JvdXApOworICAgIHBhcmFtQnVmZmVyLmFkZFZhbHVlUGFy
YW0oImNvdW50ZXIiLCBQYXJhbVR5cGU6OlRHTHVpbnQsIGNvdW50ZXIpOworICAgIHBhcmFtQnVm
ZmVyLmFkZEVudW1QYXJhbSgicG5hbWUiLCBHTGVudW1Hcm91cDo6RGVmYXVsdEdyb3VwLCBQYXJh
bVR5cGU6OlRHTGVudW0sIHBuYW1lKTsKKworICAgIGlmIChpc0NhbGxWYWxpZCkKKyAgICB7Cisg
ICAgICAgIFBhcmFtQ2FwdHVyZSBkYXRhUGFyYW0oImRhdGEiLCBQYXJhbVR5cGU6OlR2b2lkUG9p
bnRlcik7CisgICAgICAgIEluaXRQYXJhbVZhbHVlKFBhcmFtVHlwZTo6VHZvaWRQb2ludGVyLCBk
YXRhLCAmZGF0YVBhcmFtLnZhbHVlKTsKKyAgICAgICAgQ2FwdHVyZUdldFBlcmZNb25pdG9yQ291
bnRlckluZm9BTURfZGF0YShnbFN0YXRlLCBpc0NhbGxWYWxpZCwgZ3JvdXAsIGNvdW50ZXIsIHBu
YW1lLCBkYXRhLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICZkYXRhUGFyYW0pOworICAgICAgICBwYXJhbUJ1ZmZlci5hZGRQYXJhbShzdGQ6Om1vdmUo
ZGF0YVBhcmFtKSk7CisgICAgfQorICAgIGVsc2UKKyAgICB7CisgICAgICAgIFBhcmFtQ2FwdHVy
ZSBkYXRhUGFyYW0oImRhdGEiLCBQYXJhbVR5cGU6OlR2b2lkUG9pbnRlcik7CisgICAgICAgIElu
aXRQYXJhbVZhbHVlKFBhcmFtVHlwZTo6VHZvaWRQb2ludGVyLCBzdGF0aWNfY2FzdDx2b2lkICo+
KG51bGxwdHIpLCAmZGF0YVBhcmFtLnZhbHVlKTsKKyAgICAgICAgcGFyYW1CdWZmZXIuYWRkUGFy
YW0oc3RkOjptb3ZlKGRhdGFQYXJhbSkpOworICAgIH0KKworICAgIHJldHVybiBDYWxsQ2FwdHVy
ZShhbmdsZTo6RW50cnlQb2ludDo6R0xHZXRQZXJmTW9uaXRvckNvdW50ZXJJbmZvQU1ELCBzdGQ6
Om1vdmUocGFyYW1CdWZmZXIpKTsKK30KKworQ2FsbENhcHR1cmUgQ2FwdHVyZUdldFBlcmZNb25p
dG9yQ291bnRlclN0cmluZ0FNRChjb25zdCBTdGF0ZSAmZ2xTdGF0ZSwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCBpc0NhbGxWYWxpZCwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50IGdy
b3VwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBH
THVpbnQgY291bnRlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgR0xzaXplaSBidWZTaXplLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBHTHNpemVpICpsZW5ndGgsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMY2hhciAqY291bnRlclN0cmluZykKK3sK
KyAgICBQYXJhbUJ1ZmZlciBwYXJhbUJ1ZmZlcjsKKworICAgIHBhcmFtQnVmZmVyLmFkZFZhbHVl
UGFyYW0oImdyb3VwIiwgUGFyYW1UeXBlOjpUR0x1aW50LCBncm91cCk7CisgICAgcGFyYW1CdWZm
ZXIuYWRkVmFsdWVQYXJhbSgiY291bnRlciIsIFBhcmFtVHlwZTo6VEdMdWludCwgY291bnRlcik7
CisgICAgcGFyYW1CdWZmZXIuYWRkVmFsdWVQYXJhbSgiYnVmU2l6ZSIsIFBhcmFtVHlwZTo6VEdM
c2l6ZWksIGJ1ZlNpemUpOworCisgICAgaWYgKGlzQ2FsbFZhbGlkKQorICAgIHsKKyAgICAgICAg
UGFyYW1DYXB0dXJlIGxlbmd0aFBhcmFtKCJsZW5ndGgiLCBQYXJhbVR5cGU6OlRHTHNpemVpUG9p
bnRlcik7CisgICAgICAgIEluaXRQYXJhbVZhbHVlKFBhcmFtVHlwZTo6VEdMc2l6ZWlQb2ludGVy
LCBsZW5ndGgsICZsZW5ndGhQYXJhbS52YWx1ZSk7CisgICAgICAgIENhcHR1cmVHZXRQZXJmTW9u
aXRvckNvdW50ZXJTdHJpbmdBTURfbGVuZ3RoKGdsU3RhdGUsIGlzQ2FsbFZhbGlkLCBncm91cCwg
Y291bnRlciwgYnVmU2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgbGVuZ3RoLCBjb3VudGVyU3RyaW5nLCAmbGVuZ3RoUGFyYW0pOworICAg
ICAgICBwYXJhbUJ1ZmZlci5hZGRQYXJhbShzdGQ6Om1vdmUobGVuZ3RoUGFyYW0pKTsKKyAgICB9
CisgICAgZWxzZQorICAgIHsKKyAgICAgICAgUGFyYW1DYXB0dXJlIGxlbmd0aFBhcmFtKCJsZW5n
dGgiLCBQYXJhbVR5cGU6OlRHTHNpemVpUG9pbnRlcik7CisgICAgICAgIEluaXRQYXJhbVZhbHVl
KFBhcmFtVHlwZTo6VEdMc2l6ZWlQb2ludGVyLCBzdGF0aWNfY2FzdDxHTHNpemVpICo+KG51bGxw
dHIpLAorICAgICAgICAgICAgICAgICAgICAgICAmbGVuZ3RoUGFyYW0udmFsdWUpOworICAgICAg
ICBwYXJhbUJ1ZmZlci5hZGRQYXJhbShzdGQ6Om1vdmUobGVuZ3RoUGFyYW0pKTsKKyAgICB9CisK
KyAgICBpZiAoaXNDYWxsVmFsaWQpCisgICAgeworICAgICAgICBQYXJhbUNhcHR1cmUgY291bnRl
clN0cmluZ1BhcmFtKCJjb3VudGVyU3RyaW5nIiwgUGFyYW1UeXBlOjpUR0xjaGFyUG9pbnRlcik7
CisgICAgICAgIEluaXRQYXJhbVZhbHVlKFBhcmFtVHlwZTo6VEdMY2hhclBvaW50ZXIsIGNvdW50
ZXJTdHJpbmcsICZjb3VudGVyU3RyaW5nUGFyYW0udmFsdWUpOworICAgICAgICBDYXB0dXJlR2V0
UGVyZk1vbml0b3JDb3VudGVyU3RyaW5nQU1EX2NvdW50ZXJTdHJpbmcoZ2xTdGF0ZSwgaXNDYWxs
VmFsaWQsIGdyb3VwLCBjb3VudGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgYnVmU2l6ZSwgbGVuZ3RoLCBjb3VudGVyU3RyaW5n
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgJmNvdW50ZXJTdHJpbmdQYXJhbSk7CisgICAgICAgIHBhcmFtQnVmZmVyLmFkZFBhcmFt
KHN0ZDo6bW92ZShjb3VudGVyU3RyaW5nUGFyYW0pKTsKKyAgICB9CisgICAgZWxzZQorICAgIHsK
KyAgICAgICAgUGFyYW1DYXB0dXJlIGNvdW50ZXJTdHJpbmdQYXJhbSgiY291bnRlclN0cmluZyIs
IFBhcmFtVHlwZTo6VEdMY2hhclBvaW50ZXIpOworICAgICAgICBJbml0UGFyYW1WYWx1ZShQYXJh
bVR5cGU6OlRHTGNoYXJQb2ludGVyLCBzdGF0aWNfY2FzdDxHTGNoYXIgKj4obnVsbHB0ciksCisg
ICAgICAgICAgICAgICAgICAgICAgICZjb3VudGVyU3RyaW5nUGFyYW0udmFsdWUpOworICAgICAg
ICBwYXJhbUJ1ZmZlci5hZGRQYXJhbShzdGQ6Om1vdmUoY291bnRlclN0cmluZ1BhcmFtKSk7Cisg
ICAgfQorCisgICAgcmV0dXJuIENhbGxDYXB0dXJlKGFuZ2xlOjpFbnRyeVBvaW50OjpHTEdldFBl
cmZNb25pdG9yQ291bnRlclN0cmluZ0FNRCwgc3RkOjptb3ZlKHBhcmFtQnVmZmVyKSk7Cit9CisK
K0NhbGxDYXB0dXJlIENhcHR1cmVHZXRQZXJmTW9uaXRvckNvdW50ZXJzQU1EKGNvbnN0IFN0YXRl
ICZnbFN0YXRlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Ym9vbCBpc0NhbGxWYWxpZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIEdMdWludCBncm91cCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIEdMaW50ICpudW1Db3VudGVycywKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIEdMaW50ICptYXhBY3RpdmVDb3VudGVycywKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgY291bnRlclNpemUsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVpbnQgKmNvdW50
ZXJzKQoreworICAgIFBhcmFtQnVmZmVyIHBhcmFtQnVmZmVyOworCisgICAgcGFyYW1CdWZmZXIu
YWRkVmFsdWVQYXJhbSgiZ3JvdXAiLCBQYXJhbVR5cGU6OlRHTHVpbnQsIGdyb3VwKTsKKworICAg
IGlmIChpc0NhbGxWYWxpZCkKKyAgICB7CisgICAgICAgIFBhcmFtQ2FwdHVyZSBudW1Db3VudGVy
c1BhcmFtKCJudW1Db3VudGVycyIsIFBhcmFtVHlwZTo6VEdMaW50UG9pbnRlcik7CisgICAgICAg
IEluaXRQYXJhbVZhbHVlKFBhcmFtVHlwZTo6VEdMaW50UG9pbnRlciwgbnVtQ291bnRlcnMsICZu
dW1Db3VudGVyc1BhcmFtLnZhbHVlKTsKKyAgICAgICAgQ2FwdHVyZUdldFBlcmZNb25pdG9yQ291
bnRlcnNBTURfbnVtQ291bnRlcnMoZ2xTdGF0ZSwgaXNDYWxsVmFsaWQsIGdyb3VwLCBudW1Db3Vu
dGVycywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgbWF4QWN0aXZlQ291bnRlcnMsIGNvdW50ZXJTaXplLCBjb3VudGVycywKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJm51bUNvdW50ZXJzUGFy
YW0pOworICAgICAgICBwYXJhbUJ1ZmZlci5hZGRQYXJhbShzdGQ6Om1vdmUobnVtQ291bnRlcnNQ
YXJhbSkpOworICAgIH0KKyAgICBlbHNlCisgICAgeworICAgICAgICBQYXJhbUNhcHR1cmUgbnVt
Q291bnRlcnNQYXJhbSgibnVtQ291bnRlcnMiLCBQYXJhbVR5cGU6OlRHTGludFBvaW50ZXIpOwor
ICAgICAgICBJbml0UGFyYW1WYWx1ZShQYXJhbVR5cGU6OlRHTGludFBvaW50ZXIsIHN0YXRpY19j
YXN0PEdMaW50ICo+KG51bGxwdHIpLAorICAgICAgICAgICAgICAgICAgICAgICAmbnVtQ291bnRl
cnNQYXJhbS52YWx1ZSk7CisgICAgICAgIHBhcmFtQnVmZmVyLmFkZFBhcmFtKHN0ZDo6bW92ZShu
dW1Db3VudGVyc1BhcmFtKSk7CisgICAgfQorCisgICAgaWYgKGlzQ2FsbFZhbGlkKQorICAgIHsK
KyAgICAgICAgUGFyYW1DYXB0dXJlIG1heEFjdGl2ZUNvdW50ZXJzUGFyYW0oIm1heEFjdGl2ZUNv
dW50ZXJzIiwgUGFyYW1UeXBlOjpUR0xpbnRQb2ludGVyKTsKKyAgICAgICAgSW5pdFBhcmFtVmFs
dWUoUGFyYW1UeXBlOjpUR0xpbnRQb2ludGVyLCBtYXhBY3RpdmVDb3VudGVycywgJm1heEFjdGl2
ZUNvdW50ZXJzUGFyYW0udmFsdWUpOworICAgICAgICBDYXB0dXJlR2V0UGVyZk1vbml0b3JDb3Vu
dGVyc0FNRF9tYXhBY3RpdmVDb3VudGVycyhnbFN0YXRlLCBpc0NhbGxWYWxpZCwgZ3JvdXAsIG51
bUNvdW50ZXJzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBtYXhBY3RpdmVDb3VudGVycywgY291bnRlclNpemUsIGNvdW50ZXJzLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAmbWF4QWN0aXZlQ291bnRlcnNQYXJhbSk7CisgICAgICAgIHBhcmFtQnVmZmVyLmFkZFBhcmFt
KHN0ZDo6bW92ZShtYXhBY3RpdmVDb3VudGVyc1BhcmFtKSk7CisgICAgfQorICAgIGVsc2UKKyAg
ICB7CisgICAgICAgIFBhcmFtQ2FwdHVyZSBtYXhBY3RpdmVDb3VudGVyc1BhcmFtKCJtYXhBY3Rp
dmVDb3VudGVycyIsIFBhcmFtVHlwZTo6VEdMaW50UG9pbnRlcik7CisgICAgICAgIEluaXRQYXJh
bVZhbHVlKFBhcmFtVHlwZTo6VEdMaW50UG9pbnRlciwgc3RhdGljX2Nhc3Q8R0xpbnQgKj4obnVs
bHB0ciksCisgICAgICAgICAgICAgICAgICAgICAgICZtYXhBY3RpdmVDb3VudGVyc1BhcmFtLnZh
bHVlKTsKKyAgICAgICAgcGFyYW1CdWZmZXIuYWRkUGFyYW0oc3RkOjptb3ZlKG1heEFjdGl2ZUNv
dW50ZXJzUGFyYW0pKTsKKyAgICB9CisKKyAgICBwYXJhbUJ1ZmZlci5hZGRWYWx1ZVBhcmFtKCJj
b3VudGVyU2l6ZSIsIFBhcmFtVHlwZTo6VEdMc2l6ZWksIGNvdW50ZXJTaXplKTsKKworICAgIGlm
IChpc0NhbGxWYWxpZCkKKyAgICB7CisgICAgICAgIFBhcmFtQ2FwdHVyZSBjb3VudGVyc1BhcmFt
KCJjb3VudGVycyIsIFBhcmFtVHlwZTo6VEdMdWludFBvaW50ZXIpOworICAgICAgICBJbml0UGFy
YW1WYWx1ZShQYXJhbVR5cGU6OlRHTHVpbnRQb2ludGVyLCBjb3VudGVycywgJmNvdW50ZXJzUGFy
YW0udmFsdWUpOworICAgICAgICBDYXB0dXJlR2V0UGVyZk1vbml0b3JDb3VudGVyc0FNRF9jb3Vu
dGVycyhnbFN0YXRlLCBpc0NhbGxWYWxpZCwgZ3JvdXAsIG51bUNvdW50ZXJzLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXhBY3RpdmVDb3VudGVy
cywgY291bnRlclNpemUsIGNvdW50ZXJzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAmY291bnRlcnNQYXJhbSk7CisgICAgICAgIHBhcmFtQnVmZmVy
LmFkZFBhcmFtKHN0ZDo6bW92ZShjb3VudGVyc1BhcmFtKSk7CisgICAgfQorICAgIGVsc2UKKyAg
ICB7CisgICAgICAgIFBhcmFtQ2FwdHVyZSBjb3VudGVyc1BhcmFtKCJjb3VudGVycyIsIFBhcmFt
VHlwZTo6VEdMdWludFBvaW50ZXIpOworICAgICAgICBJbml0UGFyYW1WYWx1ZShQYXJhbVR5cGU6
OlRHTHVpbnRQb2ludGVyLCBzdGF0aWNfY2FzdDxHTHVpbnQgKj4obnVsbHB0ciksCisgICAgICAg
ICAgICAgICAgICAgICAgICZjb3VudGVyc1BhcmFtLnZhbHVlKTsKKyAgICAgICAgcGFyYW1CdWZm
ZXIuYWRkUGFyYW0oc3RkOjptb3ZlKGNvdW50ZXJzUGFyYW0pKTsKKyAgICB9CisKKyAgICByZXR1
cm4gQ2FsbENhcHR1cmUoYW5nbGU6OkVudHJ5UG9pbnQ6OkdMR2V0UGVyZk1vbml0b3JDb3VudGVy
c0FNRCwgc3RkOjptb3ZlKHBhcmFtQnVmZmVyKSk7Cit9CisKK0NhbGxDYXB0dXJlIENhcHR1cmVH
ZXRQZXJmTW9uaXRvckdyb3VwU3RyaW5nQU1EKGNvbnN0IFN0YXRlICZnbFN0YXRlLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCBpc0NhbGxWYWxp
ZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMdWlu
dCBncm91cCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IEdMc2l6ZWkgYnVmU2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIEdMc2l6ZWkgKmxlbmd0aCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIEdMY2hhciAqZ3JvdXBTdHJpbmcpCit7CisgICAgUGFyYW1CdWZm
ZXIgcGFyYW1CdWZmZXI7CisKKyAgICBwYXJhbUJ1ZmZlci5hZGRWYWx1ZVBhcmFtKCJncm91cCIs
IFBhcmFtVHlwZTo6VEdMdWludCwgZ3JvdXApOworICAgIHBhcmFtQnVmZmVyLmFkZFZhbHVlUGFy
YW0oImJ1ZlNpemUiLCBQYXJhbVR5cGU6OlRHTHNpemVpLCBidWZTaXplKTsKKworICAgIGlmIChp
c0NhbGxWYWxpZCkKKyAgICB7CisgICAgICAgIFBhcmFtQ2FwdHVyZSBsZW5ndGhQYXJhbSgibGVu
Z3RoIiwgUGFyYW1UeXBlOjpUR0xzaXplaVBvaW50ZXIpOworICAgICAgICBJbml0UGFyYW1WYWx1
ZShQYXJhbVR5cGU6OlRHTHNpemVpUG9pbnRlciwgbGVuZ3RoLCAmbGVuZ3RoUGFyYW0udmFsdWUp
OworICAgICAgICBDYXB0dXJlR2V0UGVyZk1vbml0b3JHcm91cFN0cmluZ0FNRF9sZW5ndGgoZ2xT
dGF0ZSwgaXNDYWxsVmFsaWQsIGdyb3VwLCBidWZTaXplLCBsZW5ndGgsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBncm91cFN0cmluZywgJmxlbmd0
aFBhcmFtKTsKKyAgICAgICAgcGFyYW1CdWZmZXIuYWRkUGFyYW0oc3RkOjptb3ZlKGxlbmd0aFBh
cmFtKSk7CisgICAgfQorICAgIGVsc2UKKyAgICB7CisgICAgICAgIFBhcmFtQ2FwdHVyZSBsZW5n
dGhQYXJhbSgibGVuZ3RoIiwgUGFyYW1UeXBlOjpUR0xzaXplaVBvaW50ZXIpOworICAgICAgICBJ
bml0UGFyYW1WYWx1ZShQYXJhbVR5cGU6OlRHTHNpemVpUG9pbnRlciwgc3RhdGljX2Nhc3Q8R0xz
aXplaSAqPihudWxscHRyKSwKKyAgICAgICAgICAgICAgICAgICAgICAgJmxlbmd0aFBhcmFtLnZh
bHVlKTsKKyAgICAgICAgcGFyYW1CdWZmZXIuYWRkUGFyYW0oc3RkOjptb3ZlKGxlbmd0aFBhcmFt
KSk7CisgICAgfQorCisgICAgaWYgKGlzQ2FsbFZhbGlkKQorICAgIHsKKyAgICAgICAgUGFyYW1D
YXB0dXJlIGdyb3VwU3RyaW5nUGFyYW0oImdyb3VwU3RyaW5nIiwgUGFyYW1UeXBlOjpUR0xjaGFy
UG9pbnRlcik7CisgICAgICAgIEluaXRQYXJhbVZhbHVlKFBhcmFtVHlwZTo6VEdMY2hhclBvaW50
ZXIsIGdyb3VwU3RyaW5nLCAmZ3JvdXBTdHJpbmdQYXJhbS52YWx1ZSk7CisgICAgICAgIENhcHR1
cmVHZXRQZXJmTW9uaXRvckdyb3VwU3RyaW5nQU1EX2dyb3VwU3RyaW5nKGdsU3RhdGUsIGlzQ2Fs
bFZhbGlkLCBncm91cCwgYnVmU2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgbGVuZ3RoLCBncm91cFN0cmluZywgJmdyb3VwU3RyaW5n
UGFyYW0pOworICAgICAgICBwYXJhbUJ1ZmZlci5hZGRQYXJhbShzdGQ6Om1vdmUoZ3JvdXBTdHJp
bmdQYXJhbSkpOworICAgIH0KKyAgICBlbHNlCisgICAgeworICAgICAgICBQYXJhbUNhcHR1cmUg
Z3JvdXBTdHJpbmdQYXJhbSgiZ3JvdXBTdHJpbmciLCBQYXJhbVR5cGU6OlRHTGNoYXJQb2ludGVy
KTsKKyAgICAgICAgSW5pdFBhcmFtVmFsdWUoUGFyYW1UeXBlOjpUR0xjaGFyUG9pbnRlciwgc3Rh
dGljX2Nhc3Q8R0xjaGFyICo+KG51bGxwdHIpLAorICAgICAgICAgICAgICAgICAgICAgICAmZ3Jv
dXBTdHJpbmdQYXJhbS52YWx1ZSk7CisgICAgICAgIHBhcmFtQnVmZmVyLmFkZFBhcmFtKHN0ZDo6
bW92ZShncm91cFN0cmluZ1BhcmFtKSk7CisgICAgfQorCisgICAgcmV0dXJuIENhbGxDYXB0dXJl
KGFuZ2xlOjpFbnRyeVBvaW50OjpHTEdldFBlcmZNb25pdG9yR3JvdXBTdHJpbmdBTUQsIHN0ZDo6
bW92ZShwYXJhbUJ1ZmZlcikpOworfQorCitDYWxsQ2FwdHVyZSBDYXB0dXJlR2V0UGVyZk1vbml0
b3JHcm91cHNBTUQoY29uc3QgU3RhdGUgJmdsU3RhdGUsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgYm9vbCBpc0NhbGxWYWxpZCwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBHTGludCAqbnVtR3JvdXBzLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgZ3JvdXBzU2l6ZSwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVpbnQgKmdyb3VwcykKK3sK
KyAgICBQYXJhbUJ1ZmZlciBwYXJhbUJ1ZmZlcjsKKworICAgIGlmIChpc0NhbGxWYWxpZCkKKyAg
ICB7CisgICAgICAgIFBhcmFtQ2FwdHVyZSBudW1Hcm91cHNQYXJhbSgibnVtR3JvdXBzIiwgUGFy
YW1UeXBlOjpUR0xpbnRQb2ludGVyKTsKKyAgICAgICAgSW5pdFBhcmFtVmFsdWUoUGFyYW1UeXBl
OjpUR0xpbnRQb2ludGVyLCBudW1Hcm91cHMsICZudW1Hcm91cHNQYXJhbS52YWx1ZSk7CisgICAg
ICAgIENhcHR1cmVHZXRQZXJmTW9uaXRvckdyb3Vwc0FNRF9udW1Hcm91cHMoZ2xTdGF0ZSwgaXND
YWxsVmFsaWQsIG51bUdyb3VwcywgZ3JvdXBzU2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBncm91cHMsICZudW1Hcm91cHNQYXJhbSk7CisgICAg
ICAgIHBhcmFtQnVmZmVyLmFkZFBhcmFtKHN0ZDo6bW92ZShudW1Hcm91cHNQYXJhbSkpOworICAg
IH0KKyAgICBlbHNlCisgICAgeworICAgICAgICBQYXJhbUNhcHR1cmUgbnVtR3JvdXBzUGFyYW0o
Im51bUdyb3VwcyIsIFBhcmFtVHlwZTo6VEdMaW50UG9pbnRlcik7CisgICAgICAgIEluaXRQYXJh
bVZhbHVlKFBhcmFtVHlwZTo6VEdMaW50UG9pbnRlciwgc3RhdGljX2Nhc3Q8R0xpbnQgKj4obnVs
bHB0ciksCisgICAgICAgICAgICAgICAgICAgICAgICZudW1Hcm91cHNQYXJhbS52YWx1ZSk7Cisg
ICAgICAgIHBhcmFtQnVmZmVyLmFkZFBhcmFtKHN0ZDo6bW92ZShudW1Hcm91cHNQYXJhbSkpOwor
ICAgIH0KKworICAgIHBhcmFtQnVmZmVyLmFkZFZhbHVlUGFyYW0oImdyb3Vwc1NpemUiLCBQYXJh
bVR5cGU6OlRHTHNpemVpLCBncm91cHNTaXplKTsKKworICAgIGlmIChpc0NhbGxWYWxpZCkKKyAg
ICB7CisgICAgICAgIFBhcmFtQ2FwdHVyZSBncm91cHNQYXJhbSgiZ3JvdXBzIiwgUGFyYW1UeXBl
OjpUR0x1aW50UG9pbnRlcik7CisgICAgICAgIEluaXRQYXJhbVZhbHVlKFBhcmFtVHlwZTo6VEdM
dWludFBvaW50ZXIsIGdyb3VwcywgJmdyb3Vwc1BhcmFtLnZhbHVlKTsKKyAgICAgICAgQ2FwdHVy
ZUdldFBlcmZNb25pdG9yR3JvdXBzQU1EX2dyb3VwcyhnbFN0YXRlLCBpc0NhbGxWYWxpZCwgbnVt
R3JvdXBzLCBncm91cHNTaXplLCBncm91cHMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgJmdyb3Vwc1BhcmFtKTsKKyAgICAgICAgcGFyYW1CdWZmZXIuYWRk
UGFyYW0oc3RkOjptb3ZlKGdyb3Vwc1BhcmFtKSk7CisgICAgfQorICAgIGVsc2UKKyAgICB7Cisg
ICAgICAgIFBhcmFtQ2FwdHVyZSBncm91cHNQYXJhbSgiZ3JvdXBzIiwgUGFyYW1UeXBlOjpUR0x1
aW50UG9pbnRlcik7CisgICAgICAgIEluaXRQYXJhbVZhbHVlKFBhcmFtVHlwZTo6VEdMdWludFBv
aW50ZXIsIHN0YXRpY19jYXN0PEdMdWludCAqPihudWxscHRyKSwKKyAgICAgICAgICAgICAgICAg
ICAgICAgJmdyb3Vwc1BhcmFtLnZhbHVlKTsKKyAgICAgICAgcGFyYW1CdWZmZXIuYWRkUGFyYW0o
c3RkOjptb3ZlKGdyb3Vwc1BhcmFtKSk7CisgICAgfQorCisgICAgcmV0dXJuIENhbGxDYXB0dXJl
KGFuZ2xlOjpFbnRyeVBvaW50OjpHTEdldFBlcmZNb25pdG9yR3JvdXBzQU1ELCBzdGQ6Om1vdmUo
cGFyYW1CdWZmZXIpKTsKK30KKworQ2FsbENhcHR1cmUgQ2FwdHVyZVNlbGVjdFBlcmZNb25pdG9y
Q291bnRlcnNBTUQoY29uc3QgU3RhdGUgJmdsU3RhdGUsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBib29sIGlzQ2FsbFZhbGlkLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50IG1vbml0b3IsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTGJvb2xlYW4gZW5h
YmxlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1
aW50IGdyb3VwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgR0xpbnQgbnVtQ291bnRlcnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBHTHVpbnQgKmNvdW50ZXJMaXN0KQoreworICAgIFBhcmFtQnVmZmVyIHBh
cmFtQnVmZmVyOworCisgICAgcGFyYW1CdWZmZXIuYWRkVmFsdWVQYXJhbSgibW9uaXRvciIsIFBh
cmFtVHlwZTo6VEdMdWludCwgbW9uaXRvcik7CisgICAgcGFyYW1CdWZmZXIuYWRkVmFsdWVQYXJh
bSgiZW5hYmxlIiwgUGFyYW1UeXBlOjpUR0xib29sZWFuLCBlbmFibGUpOworICAgIHBhcmFtQnVm
ZmVyLmFkZFZhbHVlUGFyYW0oImdyb3VwIiwgUGFyYW1UeXBlOjpUR0x1aW50LCBncm91cCk7Cisg
ICAgcGFyYW1CdWZmZXIuYWRkVmFsdWVQYXJhbSgibnVtQ291bnRlcnMiLCBQYXJhbVR5cGU6OlRH
TGludCwgbnVtQ291bnRlcnMpOworCisgICAgaWYgKGlzQ2FsbFZhbGlkKQorICAgIHsKKyAgICAg
ICAgUGFyYW1DYXB0dXJlIGNvdW50ZXJMaXN0UGFyYW0oImNvdW50ZXJMaXN0IiwgUGFyYW1UeXBl
OjpUR0x1aW50UG9pbnRlcik7CisgICAgICAgIEluaXRQYXJhbVZhbHVlKFBhcmFtVHlwZTo6VEdM
dWludFBvaW50ZXIsIGNvdW50ZXJMaXN0LCAmY291bnRlckxpc3RQYXJhbS52YWx1ZSk7CisgICAg
ICAgIENhcHR1cmVTZWxlY3RQZXJmTW9uaXRvckNvdW50ZXJzQU1EX2NvdW50ZXJMaXN0KGdsU3Rh
dGUsIGlzQ2FsbFZhbGlkLCBtb25pdG9yLCBlbmFibGUsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdyb3VwLCBudW1Db3VudGVycywgY291
bnRlckxpc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICZjb3VudGVyTGlzdFBhcmFtKTsKKyAgICAgICAgcGFyYW1CdWZmZXIuYWRkUGFy
YW0oc3RkOjptb3ZlKGNvdW50ZXJMaXN0UGFyYW0pKTsKKyAgICB9CisgICAgZWxzZQorICAgIHsK
KyAgICAgICAgUGFyYW1DYXB0dXJlIGNvdW50ZXJMaXN0UGFyYW0oImNvdW50ZXJMaXN0IiwgUGFy
YW1UeXBlOjpUR0x1aW50UG9pbnRlcik7CisgICAgICAgIEluaXRQYXJhbVZhbHVlKFBhcmFtVHlw
ZTo6VEdMdWludFBvaW50ZXIsIHN0YXRpY19jYXN0PEdMdWludCAqPihudWxscHRyKSwKKyAgICAg
ICAgICAgICAgICAgICAgICAgJmNvdW50ZXJMaXN0UGFyYW0udmFsdWUpOworICAgICAgICBwYXJh
bUJ1ZmZlci5hZGRQYXJhbShzdGQ6Om1vdmUoY291bnRlckxpc3RQYXJhbSkpOworICAgIH0KKwor
ICAgIHJldHVybiBDYWxsQ2FwdHVyZShhbmdsZTo6RW50cnlQb2ludDo6R0xTZWxlY3RQZXJmTW9u
aXRvckNvdW50ZXJzQU1ELCBzdGQ6Om1vdmUocGFyYW1CdWZmZXIpKTsKK30KKwogQ2FsbENhcHR1
cmUgQ2FwdHVyZURyYXdBcnJheXNJbnN0YW5jZWRCYXNlSW5zdGFuY2VBTkdMRShjb25zdCBTdGF0
ZSAmZ2xTdGF0ZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgYm9vbCBpc0NhbGxWYWxpZCwKICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHJpbWl0aXZlTW9kZSBtb2RlUGFja2VkLApA
QCAtNDYsNyArNDQyLDcgQEAgQ2FsbENhcHR1cmUgQ2FwdHVyZURyYXdFbGVtZW50c0luc3RhbmNl
ZEJhc2VWZXJ0ZXhCYXNlSW5zdGFuY2VBTkdMRShjb25zdCBTdGF0ZQogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHNp
emVpIGNvdW50LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBEcmF3RWxlbWVudHNUeXBlIHR5cGVQYWNrZWQsCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGNvbnN0IEdMdm9pZCAqaW5kaWNlcywKLSAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBpbnN0YW5j
ZUNvdW50cywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBpbnN0YW5jZUNvdW50LAogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBH
TGludCBiYXNlVmVydGV4LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVpbnQgYmFzZUluc3RhbmNlKQogewpAQCAt
NjEsOCArNDU3LDggQEAgQ2FsbENhcHR1cmUgQ2FwdHVyZURyYXdFbGVtZW50c0luc3RhbmNlZEJh
c2VWZXJ0ZXhCYXNlSW5zdGFuY2VBTkdMRShjb25zdCBTdGF0ZQogICAgICAgICBQYXJhbUNhcHR1
cmUgaW5kaWNlc1BhcmFtKCJpbmRpY2VzIiwgUGFyYW1UeXBlOjpUR0x2b2lkQ29uc3RQb2ludGVy
KTsKICAgICAgICAgSW5pdFBhcmFtVmFsdWUoUGFyYW1UeXBlOjpUR0x2b2lkQ29uc3RQb2ludGVy
LCBpbmRpY2VzLCAmaW5kaWNlc1BhcmFtLnZhbHVlKTsKICAgICAgICAgQ2FwdHVyZURyYXdFbGVt
ZW50c0luc3RhbmNlZEJhc2VWZXJ0ZXhCYXNlSW5zdGFuY2VBTkdMRV9pbmRpY2VzKAotICAgICAg
ICAgICAgZ2xTdGF0ZSwgaXNDYWxsVmFsaWQsIG1vZGVQYWNrZWQsIGNvdW50LCB0eXBlUGFja2Vk
LCBpbmRpY2VzLCBpbnN0YW5jZUNvdW50cywKLSAgICAgICAgICAgIGJhc2VWZXJ0ZXgsIGJhc2VJ
bnN0YW5jZSwgJmluZGljZXNQYXJhbSk7CisgICAgICAgICAgICBnbFN0YXRlLCBpc0NhbGxWYWxp
ZCwgbW9kZVBhY2tlZCwgY291bnQsIHR5cGVQYWNrZWQsIGluZGljZXMsIGluc3RhbmNlQ291bnQs
IGJhc2VWZXJ0ZXgsCisgICAgICAgICAgICBiYXNlSW5zdGFuY2UsICZpbmRpY2VzUGFyYW0pOwog
ICAgICAgICBwYXJhbUJ1ZmZlci5hZGRQYXJhbShzdGQ6Om1vdmUoaW5kaWNlc1BhcmFtKSk7CiAg
ICAgfQogICAgIGVsc2UKQEAgLTczLDcgKzQ2OSw3IEBAIENhbGxDYXB0dXJlIENhcHR1cmVEcmF3
RWxlbWVudHNJbnN0YW5jZWRCYXNlVmVydGV4QmFzZUluc3RhbmNlQU5HTEUoY29uc3QgU3RhdGUK
ICAgICAgICAgcGFyYW1CdWZmZXIuYWRkUGFyYW0oc3RkOjptb3ZlKGluZGljZXNQYXJhbSkpOwog
ICAgIH0KIAotICAgIHBhcmFtQnVmZmVyLmFkZFZhbHVlUGFyYW0oImluc3RhbmNlQ291bnRzIiwg
UGFyYW1UeXBlOjpUR0xzaXplaSwgaW5zdGFuY2VDb3VudHMpOworICAgIHBhcmFtQnVmZmVyLmFk
ZFZhbHVlUGFyYW0oImluc3RhbmNlQ291bnQiLCBQYXJhbVR5cGU6OlRHTHNpemVpLCBpbnN0YW5j
ZUNvdW50KTsKICAgICBwYXJhbUJ1ZmZlci5hZGRWYWx1ZVBhcmFtKCJiYXNlVmVydGV4IiwgUGFy
YW1UeXBlOjpUR0xpbnQsIGJhc2VWZXJ0ZXgpOwogICAgIHBhcmFtQnVmZmVyLmFkZFZhbHVlUGFy
YW0oImJhc2VJbnN0YW5jZSIsIFBhcmFtVHlwZTo6VEdMdWludCwgYmFzZUluc3RhbmNlKTsKIApk
aWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL2NhcHR1cmUv
Y2FwdHVyZV9nbGVzX2V4dF9hdXRvZ2VuLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
bGliQU5HTEUvY2FwdHVyZS9jYXB0dXJlX2dsZXNfZXh0X2F1dG9nZW4uaAppbmRleCBiMTRjZWQy
Y2VlYzQyZTk0OTdjNGQ5NTFiMWU1OTg1MTI5ODFiODA2Li45Mzk3ZmIyZWQzNjRkMmU3ZTg3Nzk4
Mzc2OTQ1OThkZDVmZWMzZWI1IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9z
cmMvbGliQU5HTEUvY2FwdHVyZS9jYXB0dXJlX2dsZXNfZXh0X2F1dG9nZW4uaAorKysgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvY2FwdHVyZS9jYXB0dXJlX2dsZXNfZXh0
X2F1dG9nZW4uaApAQCAtMTksNiArMTksNjUgQEAgbmFtZXNwYWNlIGdsCiAKIC8vIE1ldGhvZCBD
YXB0dXJlcwogCisvLyBHTF9BTURfcGVyZm9ybWFuY2VfbW9uaXRvcgorYW5nbGU6OkNhbGxDYXB0
dXJlIENhcHR1cmVCZWdpblBlcmZNb25pdG9yQU1EKGNvbnN0IFN0YXRlICZnbFN0YXRlLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wgaXNDYWxsVmFs
aWQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50
IG1vbml0b3IpOworYW5nbGU6OkNhbGxDYXB0dXJlIENhcHR1cmVEZWxldGVQZXJmTW9uaXRvcnNB
TUQoY29uc3QgU3RhdGUgJmdsU3RhdGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBib29sIGlzQ2FsbFZhbGlkLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBuLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50ICptb25pdG9ycyk7CithbmdsZTo6
Q2FsbENhcHR1cmUgQ2FwdHVyZUVuZFBlcmZNb25pdG9yQU1EKGNvbnN0IFN0YXRlICZnbFN0YXRl
LCBib29sIGlzQ2FsbFZhbGlkLCBHTHVpbnQgbW9uaXRvcik7CithbmdsZTo6Q2FsbENhcHR1cmUg
Q2FwdHVyZUdlblBlcmZNb25pdG9yc0FNRChjb25zdCBTdGF0ZSAmZ2xTdGF0ZSwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wgaXNDYWxsVmFsaWQsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHNpemVpIG4sCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVpbnQgKm1vbml0
b3JzKTsKK2FuZ2xlOjpDYWxsQ2FwdHVyZSBDYXB0dXJlR2V0UGVyZk1vbml0b3JDb3VudGVyRGF0
YUFNRChjb25zdCBTdGF0ZSAmZ2xTdGF0ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBib29sIGlzQ2FsbFZhbGlkLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMdWludCBtb25pdG9y
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IEdMZW51bSBwbmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBHTHNpemVpIGRhdGFTaXplLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMdWludCAqZGF0YSwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTGludCAqYnl0ZXNX
cml0dGVuKTsKK2FuZ2xlOjpDYWxsQ2FwdHVyZSBDYXB0dXJlR2V0UGVyZk1vbml0b3JDb3VudGVy
SW5mb0FNRChjb25zdCBTdGF0ZSAmZ2xTdGF0ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sIGlzQ2FsbFZhbGlkLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMdWludCBncm91
cCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBHTHVpbnQgY291bnRlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBHTGVudW0gcG5hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdm9pZCAqZGF0YSk7CithbmdsZTo6Q2FsbENh
cHR1cmUgQ2FwdHVyZUdldFBlcmZNb25pdG9yQ291bnRlclN0cmluZ0FNRChjb25zdCBTdGF0ZSAm
Z2xTdGF0ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGJvb2wgaXNDYWxsVmFsaWQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVpbnQgZ3JvdXAsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVpbnQgY291bnRl
ciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIEdMc2l6ZWkgYnVmU2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgKmxlbmd0aCwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMY2hhciAqY291bnRlclN0
cmluZyk7CithbmdsZTo6Q2FsbENhcHR1cmUgQ2FwdHVyZUdldFBlcmZNb25pdG9yQ291bnRlcnNB
TUQoY29uc3QgU3RhdGUgJmdsU3RhdGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgYm9vbCBpc0NhbGxWYWxpZCwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVpbnQgZ3JvdXAsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xpbnQgKm51bUNv
dW50ZXJzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIEdMaW50ICptYXhBY3RpdmVDb3VudGVycywKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBHTHNpemVpIGNvdW50ZXJTaXplLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMdWludCAqY291bnRl
cnMpOworYW5nbGU6OkNhbGxDYXB0dXJlIENhcHR1cmVHZXRQZXJmTW9uaXRvckdyb3VwU3RyaW5n
QU1EKGNvbnN0IFN0YXRlICZnbFN0YXRlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wgaXNDYWxsVmFsaWQsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50IGdyb3VwLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdM
c2l6ZWkgYnVmU2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBHTHNpemVpICpsZW5ndGgsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xjaGFyICpncm91cFN0cmluZyk7Cithbmds
ZTo6Q2FsbENhcHR1cmUgQ2FwdHVyZUdldFBlcmZNb25pdG9yR3JvdXBzQU1EKGNvbnN0IFN0YXRl
ICZnbFN0YXRlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBib29sIGlzQ2FsbFZhbGlkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBHTGludCAqbnVtR3JvdXBzLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHNpemVpIGdyb3Vwc1NpemUsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMdWludCAqZ3JvdXBz
KTsKK2FuZ2xlOjpDYWxsQ2FwdHVyZSBDYXB0dXJlU2VsZWN0UGVyZk1vbml0b3JDb3VudGVyc0FN
RChjb25zdCBTdGF0ZSAmZ2xTdGF0ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBib29sIGlzQ2FsbFZhbGlkLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMdWludCBtb25pdG9yLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdM
Ym9vbGVhbiBlbmFibGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgR0x1aW50IGdyb3VwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMaW50IG51bUNvdW50ZXJzLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMdWludCAqY291
bnRlckxpc3QpOworCiAvLyBHTF9BTkRST0lEX2V4dGVuc2lvbl9wYWNrX2VzMzFhCiAKIC8vIEdM
X0FOR0xFX2Jhc2VfdmVydGV4X2Jhc2VfaW5zdGFuY2UKQEAgLTM2LDcgKzk1LDcgQEAgYW5nbGU6
OkNhbGxDYXB0dXJlIENhcHR1cmVEcmF3RWxlbWVudHNJbnN0YW5jZWRCYXNlVmVydGV4QmFzZUlu
c3RhbmNlQU5HTEUoCiAgICAgR0xzaXplaSBjb3VudCwKICAgICBEcmF3RWxlbWVudHNUeXBlIHR5
cGVQYWNrZWQsCiAgICAgY29uc3QgR0x2b2lkICppbmRpY2VzLAotICAgIEdMc2l6ZWkgaW5zdGFu
Y2VDb3VudHMsCisgICAgR0xzaXplaSBpbnN0YW5jZUNvdW50LAogICAgIEdMaW50IGJhc2VWZXJ0
ZXgsCiAgICAgR0x1aW50IGJhc2VJbnN0YW5jZSk7CiBhbmdsZTo6Q2FsbENhcHR1cmUgQ2FwdHVy
ZU11bHRpRHJhd0FycmF5c0luc3RhbmNlZEJhc2VJbnN0YW5jZUFOR0xFKGNvbnN0IFN0YXRlICZn
bFN0YXRlLApAQCAtMjU0OSw2ICsyNjA4LDExMyBAQCBhbmdsZTo6Q2FsbENhcHR1cmUgQ2FwdHVy
ZUZyYW1lYnVmZmVyVGV4dHVyZU11bHRpdmlld09WUihjb25zdCBTdGF0ZSAmZ2xTdGF0ZSwKIAog
Ly8gUGFyYW1ldGVyIENhcHR1cmVzCiAKK3ZvaWQgQ2FwdHVyZURlbGV0ZVBlcmZNb25pdG9yc0FN
RF9tb25pdG9ycyhjb25zdCBTdGF0ZSAmZ2xTdGF0ZSwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBib29sIGlzQ2FsbFZhbGlkLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgbiwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBHTHVpbnQgKm1vbml0b3JzLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFuZ2xlOjpQYXJhbUNhcHR1cmUgKnBhcmFtQ2Fw
dHVyZSk7Cit2b2lkIENhcHR1cmVHZW5QZXJmTW9uaXRvcnNBTURfbW9uaXRvcnMoY29uc3QgU3Rh
dGUgJmdsU3RhdGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9v
bCBpc0NhbGxWYWxpZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBH
THNpemVpIG4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50
ICptb25pdG9ycywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbmds
ZTo6UGFyYW1DYXB0dXJlICpwYXJhbUNhcHR1cmUpOwordm9pZCBDYXB0dXJlR2V0UGVyZk1vbml0
b3JDb3VudGVyRGF0YUFNRF9kYXRhKGNvbnN0IFN0YXRlICZnbFN0YXRlLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wgaXNDYWxsVmFsaWQsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50IG1vbml0b3Is
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xlbnVtIHBu
YW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6
ZWkgZGF0YVNpemUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgR0x1aW50ICpkYXRhLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIEdMaW50ICpieXRlc1dyaXR0ZW4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgYW5nbGU6OlBhcmFtQ2FwdHVyZSAqcGFyYW1DYXB0dXJlKTsKK3Zv
aWQgQ2FwdHVyZUdldFBlcmZNb25pdG9yQ291bnRlckRhdGFBTURfYnl0ZXNXcml0dGVuKGNvbnN0
IFN0YXRlICZnbFN0YXRlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgYm9vbCBpc0NhbGxWYWxpZCwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMdWludCBtb25pdG9yLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xlbnVtIHBuYW1l
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
R0xzaXplaSBkYXRhU2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIEdMdWludCAqZGF0YSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMaW50ICpieXRlc1dyaXR0ZW4sCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbmdsZTo6UGFy
YW1DYXB0dXJlICpwYXJhbUNhcHR1cmUpOwordm9pZCBDYXB0dXJlR2V0UGVyZk1vbml0b3JDb3Vu
dGVySW5mb0FNRF9kYXRhKGNvbnN0IFN0YXRlICZnbFN0YXRlLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wgaXNDYWxsVmFsaWQsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50IGdyb3VwLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMdWludCBjb3VudGVyLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMZW51bSBwbmFt
ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2b2lkICpk
YXRhLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFuZ2xl
OjpQYXJhbUNhcHR1cmUgKnBhcmFtQ2FwdHVyZSk7Cit2b2lkIENhcHR1cmVHZXRQZXJmTW9uaXRv
ckNvdW50ZXJTdHJpbmdBTURfbGVuZ3RoKGNvbnN0IFN0YXRlICZnbFN0YXRlLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sIGlzQ2FsbFZhbGlk
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVp
bnQgZ3JvdXAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIEdMdWludCBjb3VudGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBHTHNpemVpIGJ1ZlNpemUsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgKmxlbmd0aCwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xjaGFyICpjb3VudGVyU3RyaW5n
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbmds
ZTo6UGFyYW1DYXB0dXJlICpwYXJhbUNhcHR1cmUpOwordm9pZCBDYXB0dXJlR2V0UGVyZk1vbml0
b3JDb3VudGVyU3RyaW5nQU1EX2NvdW50ZXJTdHJpbmcoY29uc3QgU3RhdGUgJmdsU3RhdGUsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBi
b29sIGlzQ2FsbFZhbGlkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgR0x1aW50IGdyb3VwLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50IGNvdW50ZXIsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHNpemVp
IGJ1ZlNpemUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBHTHNpemVpICpsZW5ndGgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTGNoYXIgKmNvdW50ZXJTdHJpbmcsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbmds
ZTo6UGFyYW1DYXB0dXJlICpwYXJhbUNhcHR1cmUpOwordm9pZCBDYXB0dXJlR2V0UGVyZk1vbml0
b3JDb3VudGVyc0FNRF9udW1Db3VudGVycyhjb25zdCBTdGF0ZSAmZ2xTdGF0ZSwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCBpc0NhbGxWYWxp
ZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1
aW50IGdyb3VwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBHTGludCAqbnVtQ291bnRlcnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIEdMaW50ICptYXhBY3RpdmVDb3VudGVycywKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBjb3VudGVyU2l6
ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1
aW50ICpjb3VudGVycywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgYW5nbGU6OlBhcmFtQ2FwdHVyZSAqcGFyYW1DYXB0dXJlKTsKK3ZvaWQgQ2FwdHVy
ZUdldFBlcmZNb25pdG9yQ291bnRlcnNBTURfbWF4QWN0aXZlQ291bnRlcnMoY29uc3QgU3RhdGUg
JmdsU3RhdGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGJvb2wgaXNDYWxsVmFsaWQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMdWludCBncm91cCwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xpbnQgKm51bUNvdW50
ZXJzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBHTGludCAqbWF4QWN0aXZlQ291bnRlcnMsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgY291bnRlclNpemUsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMdWlu
dCAqY291bnRlcnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGFuZ2xlOjpQYXJhbUNhcHR1cmUgKnBhcmFtQ2FwdHVyZSk7Cit2b2lkIENh
cHR1cmVHZXRQZXJmTW9uaXRvckNvdW50ZXJzQU1EX2NvdW50ZXJzKGNvbnN0IFN0YXRlICZnbFN0
YXRlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29s
IGlzQ2FsbFZhbGlkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBHTHVpbnQgZ3JvdXAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIEdMaW50ICpudW1Db3VudGVycywKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgR0xpbnQgKm1heEFjdGl2ZUNvdW50ZXJzLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHNpemVpIGNvdW50ZXJTaXpl
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVpbnQg
KmNvdW50ZXJzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBhbmdsZTo6UGFyYW1DYXB0dXJlICpwYXJhbUNhcHR1cmUpOwordm9pZCBDYXB0dXJlR2V0UGVy
Zk1vbml0b3JHcm91cFN0cmluZ0FNRF9sZW5ndGgoY29uc3QgU3RhdGUgJmdsU3RhdGUsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sIGlzQ2FsbFZh
bGlkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1
aW50IGdyb3VwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgR0xzaXplaSBidWZTaXplLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgR0xzaXplaSAqbGVuZ3RoLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgR0xjaGFyICpncm91cFN0cmluZywKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFuZ2xlOjpQYXJhbUNhcHR1cmUgKnBh
cmFtQ2FwdHVyZSk7Cit2b2lkIENhcHR1cmVHZXRQZXJmTW9uaXRvckdyb3VwU3RyaW5nQU1EX2dy
b3VwU3RyaW5nKGNvbnN0IFN0YXRlICZnbFN0YXRlLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sIGlzQ2FsbFZhbGlkLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVpbnQgZ3JvdXAs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdM
c2l6ZWkgYnVmU2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgR0xzaXplaSAqbGVuZ3RoLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBHTGNoYXIgKmdyb3VwU3RyaW5nLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbmdsZTo6UGFyYW1D
YXB0dXJlICpwYXJhbUNhcHR1cmUpOwordm9pZCBDYXB0dXJlR2V0UGVyZk1vbml0b3JHcm91cHNB
TURfbnVtR3JvdXBzKGNvbnN0IFN0YXRlICZnbFN0YXRlLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wgaXNDYWxsVmFsaWQsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xpbnQgKm51bUdyb3VwcywKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHNpemVpIGdyb3Vwc1Np
emUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50
ICpncm91cHMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
YW5nbGU6OlBhcmFtQ2FwdHVyZSAqcGFyYW1DYXB0dXJlKTsKK3ZvaWQgQ2FwdHVyZUdldFBlcmZN
b25pdG9yR3JvdXBzQU1EX2dyb3Vwcyhjb25zdCBTdGF0ZSAmZ2xTdGF0ZSwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sIGlzQ2FsbFZhbGlkLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMaW50ICpudW1Hcm91cHMsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBncm91cHNT
aXplLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMdWludCAq
Z3JvdXBzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFuZ2xl
OjpQYXJhbUNhcHR1cmUgKnBhcmFtQ2FwdHVyZSk7Cit2b2lkIENhcHR1cmVTZWxlY3RQZXJmTW9u
aXRvckNvdW50ZXJzQU1EX2NvdW50ZXJMaXN0KGNvbnN0IFN0YXRlICZnbFN0YXRlLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sIGlzQ2Fs
bFZhbGlkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBHTHVpbnQgbW9uaXRvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgR0xib29sZWFuIGVuYWJsZSwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50IGdyb3VwLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTGludCBudW1Db3Vu
dGVycywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgR0x1aW50ICpjb3VudGVyTGlzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgYW5nbGU6OlBhcmFtQ2FwdHVyZSAqcGFyYW1DYXB0dXJlKTsK
IHZvaWQgQ2FwdHVyZURyYXdFbGVtZW50c0luc3RhbmNlZEJhc2VWZXJ0ZXhCYXNlSW5zdGFuY2VB
TkdMRV9pbmRpY2VzKAogICAgIGNvbnN0IFN0YXRlICZnbFN0YXRlLAogICAgIGJvb2wgaXNDYWxs
VmFsaWQsCkBAIC0yNTU2LDcgKzI3MjIsNyBAQCB2b2lkIENhcHR1cmVEcmF3RWxlbWVudHNJbnN0
YW5jZWRCYXNlVmVydGV4QmFzZUluc3RhbmNlQU5HTEVfaW5kaWNlcygKICAgICBHTHNpemVpIGNv
dW50LAogICAgIERyYXdFbGVtZW50c1R5cGUgdHlwZVBhY2tlZCwKICAgICBjb25zdCBHTHZvaWQg
KmluZGljZXMsCi0gICAgR0xzaXplaSBpbnN0YW5jZUNvdW50cywKKyAgICBHTHNpemVpIGluc3Rh
bmNlQ291bnQsCiAgICAgR0xpbnQgYmFzZVZlcnRleCwKICAgICBHTHVpbnQgYmFzZUluc3RhbmNl
LAogICAgIGFuZ2xlOjpQYXJhbUNhcHR1cmUgKnBhcmFtQ2FwdHVyZSk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvY2FwdHVyZS9jYXB0dXJlX2dsZXNf
ZXh0X3BhcmFtcy5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvY2Fw
dHVyZS9jYXB0dXJlX2dsZXNfZXh0X3BhcmFtcy5jcHAKaW5kZXggYzAxOWE3MzRhMzhkZjA4ZWU4
ZTEwYmRkMTRmNjcxZDNiMDMyMTU0NC4uZjg3NzYxZjQ0MzI4MGFlZGNhYTNjM2RlODU2NGEwODBm
NWE1ZmQ5YiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xF
L2NhcHR1cmUvY2FwdHVyZV9nbGVzX2V4dF9wYXJhbXMuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL3NyYy9saWJBTkdMRS9jYXB0dXJlL2NhcHR1cmVfZ2xlc19leHRfcGFyYW1zLmNw
cApAQCAtMjMsNyArMjMsNyBAQCB2b2lkIENhcHR1cmVEcmF3RWxlbWVudHNJbnN0YW5jZWRCYXNl
VmVydGV4QmFzZUluc3RhbmNlQU5HTEVfaW5kaWNlcygKICAgICBHTHNpemVpIGNvdW50LAogICAg
IERyYXdFbGVtZW50c1R5cGUgdHlwZVBhY2tlZCwKICAgICBjb25zdCBHTHZvaWQgKmluZGljZXMs
Ci0gICAgR0xzaXplaSBpbnN0YW5jZUNvdW50cywKKyAgICBHTHNpemVpIGluc3RhbmNlQ291bnQs
CiAgICAgR0xpbnQgYmFzZVZlcnRleCwKICAgICBHTHVpbnQgYmFzZUluc3RhbmNlLAogICAgIGFu
Z2xlOjpQYXJhbUNhcHR1cmUgKnBhcmFtQ2FwdHVyZSkKQEAgLTIwMTEsNyArMjAxMSw3IEBAIHZv
aWQgQ2FwdHVyZUdldFRleExldmVsUGFyYW1ldGVyZnZBTkdMRV9wYXJhbXMoY29uc3QgU3RhdGUg
JmdsU3RhdGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IEdMZmxvYXQgKnBhcmFtcywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgUGFyYW1DYXB0dXJlICpwYXJhbUNhcHR1cmUpCiB7Ci0gICAgVU5JTVBMRU1FTlRF
RCgpOworICAgIENhcHR1cmVNZW1vcnkocGFyYW1zLCBzaXplb2YoR0xmbG9hdCksIHBhcmFtQ2Fw
dHVyZSk7CiB9CiAKIHZvaWQgQ2FwdHVyZUdldE11bHRpc2FtcGxlZnZBTkdMRV92YWwoY29uc3Qg
U3RhdGUgJmdsU3RhdGUsCkBAIC00MDQ3LDQgKzQwNDcsMTcwIEBAIHZvaWQgQ2FwdHVyZVJlbGVh
c2VUZXh0dXJlc0FOR0xFX2xheW91dHMoY29uc3QgU3RhdGUgJmdsU3RhdGUsCiAgICAgVU5JTVBM
RU1FTlRFRCgpOwogfQogCit2b2lkIENhcHR1cmVEZWxldGVQZXJmTW9uaXRvcnNBTURfbW9uaXRv
cnMoY29uc3QgU3RhdGUgJmdsU3RhdGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgYm9vbCBpc0NhbGxWYWxpZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBHTHNpemVpIG4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgR0x1aW50ICptb25pdG9ycywKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBhbmdsZTo6UGFyYW1DYXB0dXJlICpwYXJhbUNhcHR1cmUpCit7
CisgICAgVU5JTVBMRU1FTlRFRCgpOworfQorCit2b2lkIENhcHR1cmVHZW5QZXJmTW9uaXRvcnNB
TURfbW9uaXRvcnMoY29uc3QgU3RhdGUgJmdsU3RhdGUsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgYm9vbCBpc0NhbGxWYWxpZCwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBHTHNpemVpIG4sCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgR0x1aW50ICptb25pdG9ycywKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBhbmdsZTo6UGFyYW1DYXB0dXJlICpwYXJhbUNhcHR1cmUpCit7Cisg
ICAgVU5JTVBMRU1FTlRFRCgpOworfQorCit2b2lkIENhcHR1cmVHZXRQZXJmTW9uaXRvckNvdW50
ZXJEYXRhQU1EX2RhdGEoY29uc3QgU3RhdGUgJmdsU3RhdGUsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCBpc0NhbGxWYWxpZCwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVpbnQgbW9uaXRvciwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTGVudW0gcG5hbWUsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBkYXRh
U2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVp
bnQgKmRhdGEsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
R0xpbnQgKmJ5dGVzV3JpdHRlbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBhbmdsZTo6UGFyYW1DYXB0dXJlICpwYXJhbUNhcHR1cmUpCit7CisgICAgcGFy
YW1DYXB0dXJlLT5yZWFkQnVmZmVyU2l6ZUJ5dGVzID0gZGF0YVNpemU7Cit9CisKK3ZvaWQgQ2Fw
dHVyZUdldFBlcmZNb25pdG9yQ291bnRlckRhdGFBTURfYnl0ZXNXcml0dGVuKGNvbnN0IFN0YXRl
ICZnbFN0YXRlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgYm9vbCBpc0NhbGxWYWxpZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIEdMdWludCBtb25pdG9yLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xlbnVtIHBuYW1lLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXpl
aSBkYXRhU2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIEdMdWludCAqZGF0YSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIEdMaW50ICpieXRlc1dyaXR0ZW4sCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbmdsZTo6UGFyYW1DYXB0
dXJlICpwYXJhbUNhcHR1cmUpCit7CisgICAgcGFyYW1DYXB0dXJlLT5yZWFkQnVmZmVyU2l6ZUJ5
dGVzID0gc2l6ZW9mKEdMaW50KTsKK30KKwordm9pZCBDYXB0dXJlR2V0UGVyZk1vbml0b3JDb3Vu
dGVySW5mb0FNRF9kYXRhKGNvbnN0IFN0YXRlICZnbFN0YXRlLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wgaXNDYWxsVmFsaWQsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50IGdyb3VwLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMdWludCBjb3VudGVyLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMZW51bSBwbmFt
ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2b2lkICpk
YXRhLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFuZ2xl
OjpQYXJhbUNhcHR1cmUgKnBhcmFtQ2FwdHVyZSkKK3sKKyAgICBVTklNUExFTUVOVEVEKCk7Cit9
CisKK3ZvaWQgQ2FwdHVyZUdldFBlcmZNb25pdG9yQ291bnRlclN0cmluZ0FNRF9sZW5ndGgoY29u
c3QgU3RhdGUgJmdsU3RhdGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGJvb2wgaXNDYWxsVmFsaWQsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIEdMdWludCBncm91cCwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50IGNvdW50ZXIsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgYnVmU2l6
ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xz
aXplaSAqbGVuZ3RoLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBHTGNoYXIgKmNvdW50ZXJTdHJpbmcsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGFuZ2xlOjpQYXJhbUNhcHR1cmUgKnBhcmFtQ2FwdHVy
ZSkKK3sKKyAgICBwYXJhbUNhcHR1cmUtPnJlYWRCdWZmZXJTaXplQnl0ZXMgPSBzaXplb2YoR0xz
aXplaSk7Cit9CisKK3ZvaWQgQ2FwdHVyZUdldFBlcmZNb25pdG9yQ291bnRlclN0cmluZ0FNRF9j
b3VudGVyU3RyaW5nKGNvbnN0IFN0YXRlICZnbFN0YXRlLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCBpc0NhbGxWYWxpZCwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdM
dWludCBncm91cCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIEdMdWludCBjb3VudGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBidWZTaXplLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSAq
bGVuZ3RoLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgR0xjaGFyICpjb3VudGVyU3RyaW5nLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYW5nbGU6OlBhcmFtQ2FwdHVyZSAqcGFy
YW1DYXB0dXJlKQoreworICAgIHBhcmFtQ2FwdHVyZS0+cmVhZEJ1ZmZlclNpemVCeXRlcyA9IGJ1
ZlNpemU7Cit9CisKK3ZvaWQgQ2FwdHVyZUdldFBlcmZNb25pdG9yQ291bnRlcnNBTURfbnVtQ291
bnRlcnMoY29uc3QgU3RhdGUgJmdsU3RhdGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGJvb2wgaXNDYWxsVmFsaWQsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMdWludCBncm91cCwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xpbnQgKm51bUNvdW50
ZXJzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBH
TGludCAqbWF4QWN0aXZlQ291bnRlcnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgY291bnRlclNpemUsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMdWludCAqY291bnRlcnMsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFuZ2xlOjpQYXJh
bUNhcHR1cmUgKnBhcmFtQ2FwdHVyZSkKK3sKKyAgICBwYXJhbUNhcHR1cmUtPnJlYWRCdWZmZXJT
aXplQnl0ZXMgPSBzaXplb2YoR0xpbnQpOworfQorCit2b2lkIENhcHR1cmVHZXRQZXJmTW9uaXRv
ckNvdW50ZXJzQU1EX21heEFjdGl2ZUNvdW50ZXJzKGNvbnN0IFN0YXRlICZnbFN0YXRlLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29s
IGlzQ2FsbFZhbGlkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBHTHVpbnQgZ3JvdXAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMaW50ICpudW1Db3VudGVycywKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xpbnQgKm1h
eEFjdGl2ZUNvdW50ZXJzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBHTHNpemVpIGNvdW50ZXJTaXplLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVpbnQgKmNvdW50ZXJzLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBh
bmdsZTo6UGFyYW1DYXB0dXJlICpwYXJhbUNhcHR1cmUpCit7CisgICAgcGFyYW1DYXB0dXJlLT5y
ZWFkQnVmZmVyU2l6ZUJ5dGVzID0gc2l6ZW9mKEdMaW50KTsKK30KKwordm9pZCBDYXB0dXJlR2V0
UGVyZk1vbml0b3JDb3VudGVyc0FNRF9jb3VudGVycyhjb25zdCBTdGF0ZSAmZ2xTdGF0ZSwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCBpc0NhbGxW
YWxpZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1
aW50IGdyb3VwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBHTGludCAqbnVtQ291bnRlcnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIEdMaW50ICptYXhBY3RpdmVDb3VudGVycywKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBjb3VudGVyU2l6ZSwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50ICpjb3VudGVy
cywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYW5nbGU6
OlBhcmFtQ2FwdHVyZSAqcGFyYW1DYXB0dXJlKQoreworICAgIHBhcmFtQ2FwdHVyZS0+cmVhZEJ1
ZmZlclNpemVCeXRlcyA9IGNvdW50ZXJTaXplICogc2l6ZW9mKEdMdWludCk7Cit9CisKK3ZvaWQg
Q2FwdHVyZUdldFBlcmZNb25pdG9yR3JvdXBTdHJpbmdBTURfbGVuZ3RoKGNvbnN0IFN0YXRlICZn
bFN0YXRlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Ym9vbCBpc0NhbGxWYWxpZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIEdMdWludCBncm91cCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIEdMc2l6ZWkgYnVmU2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgKmxlbmd0aCwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMY2hhciAqZ3JvdXBTdHJpbmcsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbmdsZTo6UGFy
YW1DYXB0dXJlICpwYXJhbUNhcHR1cmUpCit7CisgICAgcGFyYW1DYXB0dXJlLT5yZWFkQnVmZmVy
U2l6ZUJ5dGVzID0gc2l6ZW9mKEdMc2l6ZWkpOworfQorCit2b2lkIENhcHR1cmVHZXRQZXJmTW9u
aXRvckdyb3VwU3RyaW5nQU1EX2dyb3VwU3RyaW5nKGNvbnN0IFN0YXRlICZnbFN0YXRlLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sIGlz
Q2FsbFZhbGlkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBHTHVpbnQgZ3JvdXAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgYnVmU2l6ZSwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSAqbGVuZ3RoLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTGNoYXIgKmdy
b3VwU3RyaW5nLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBhbmdsZTo6UGFyYW1DYXB0dXJlICpwYXJhbUNhcHR1cmUpCit7CisgICAgcGFyYW1D
YXB0dXJlLT5yZWFkQnVmZmVyU2l6ZUJ5dGVzID0gYnVmU2l6ZTsKK30KKwordm9pZCBDYXB0dXJl
R2V0UGVyZk1vbml0b3JHcm91cHNBTURfbnVtR3JvdXBzKGNvbnN0IFN0YXRlICZnbFN0YXRlLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wgaXNDYWxs
VmFsaWQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xp
bnQgKm51bUdyb3VwcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBHTHNpemVpIGdyb3Vwc1NpemUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgR0x1aW50ICpncm91cHMsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgYW5nbGU6OlBhcmFtQ2FwdHVyZSAqcGFyYW1DYXB0dXJlKQor
eworICAgIFVOSU1QTEVNRU5URUQoKTsKK30KKwordm9pZCBDYXB0dXJlR2V0UGVyZk1vbml0b3JH
cm91cHNBTURfZ3JvdXBzKGNvbnN0IFN0YXRlICZnbFN0YXRlLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wgaXNDYWxsVmFsaWQsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xpbnQgKm51bUdyb3VwcywKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHNpemVpIGdyb3Vwc1NpemUsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50ICpncm91cHMs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYW5nbGU6OlBhcmFt
Q2FwdHVyZSAqcGFyYW1DYXB0dXJlKQoreworICAgIFVOSU1QTEVNRU5URUQoKTsKK30KKwordm9p
ZCBDYXB0dXJlU2VsZWN0UGVyZk1vbml0b3JDb3VudGVyc0FNRF9jb3VudGVyTGlzdChjb25zdCBT
dGF0ZSAmZ2xTdGF0ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgYm9vbCBpc0NhbGxWYWxpZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50IG1vbml0b3IsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMYm9vbGVhbiBlbmFibGUs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdM
dWludCBncm91cCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgR0xpbnQgbnVtQ291bnRlcnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIEdMdWludCAqY291bnRlckxpc3QsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFuZ2xlOjpQYXJhbUNh
cHR1cmUgKnBhcmFtQ2FwdHVyZSkKK3sKKyAgICBVTklNUExFTUVOVEVEKCk7Cit9CiB9ICAvLyBu
YW1lc3BhY2UgZ2wKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJB
TkdMRS9jYXB0dXJlL2ZyYW1lX2NhcHR1cmVfdXRpbHMuY3BwIGIvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc3JjL2xpYkFOR0xFL2NhcHR1cmUvZnJhbWVfY2FwdHVyZV91dGlscy5jcHAKaW5kZXgg
YmE0YTJiNzNlNTVlOTdkM2JlMGMwODFhYTJhYmUwN2ViZmZmMDRhYi4uNjAyZmZiNjMzYTFiMWQw
OWVhZTRjYWVjOTZhZDA1NDFiMzRhNzkyOSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc3JjL2xpYkFOR0xFL2NhcHR1cmUvZnJhbWVfY2FwdHVyZV91dGlscy5jcHAKKysrIGIv
U291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL2NhcHR1cmUvZnJhbWVfY2FwdHVy
ZV91dGlscy5jcHAKQEAgLTEyMjIsNyArMTIyMiw5IEBAIFJlc3VsdCBTZXJpYWxpemVUZXh0dXJl
RGF0YShKc29uU2VyaWFsaXplciAqanNvbiwKICAgICAgICAgQVNTRVJUKGluZGV4LmdldFR5cGUo
KSA9PSBnbDo6VGV4dHVyZVR5cGU6Ol8yRCB8fCBpbmRleC5nZXRUeXBlKCkgPT0gZ2w6OlRleHR1
cmVUeXBlOjpfM0QgfHwKICAgICAgICAgICAgICAgIGluZGV4LmdldFR5cGUoKSA9PSBnbDo6VGV4
dHVyZVR5cGU6Ol8yREFycmF5IHx8CiAgICAgICAgICAgICAgICBpbmRleC5nZXRUeXBlKCkgPT0g
Z2w6OlRleHR1cmVUeXBlOjpDdWJlTWFwIHx8Ci0gICAgICAgICAgICAgICBpbmRleC5nZXRUeXBl
KCkgPT0gZ2w6OlRleHR1cmVUeXBlOjpDdWJlTWFwQXJyYXkpOworICAgICAgICAgICAgICAgaW5k
ZXguZ2V0VHlwZSgpID09IGdsOjpUZXh0dXJlVHlwZTo6Q3ViZU1hcEFycmF5IHx8CisgICAgICAg
ICAgICAgICBpbmRleC5nZXRUeXBlKCkgPT0gZ2w6OlRleHR1cmVUeXBlOjpfMkRNdWx0aXNhbXBs
ZUFycmF5IHx8CisgICAgICAgICAgICAgICBpbmRleC5nZXRUeXBlKCkgPT0gZ2w6OlRleHR1cmVU
eXBlOjpfMkRNdWx0aXNhbXBsZSk7CiAKICAgICAgICAgR0xlbnVtIGdsRm9ybWF0ID0gZm9ybWF0
LmZvcm1hdDsKICAgICAgICAgR0xlbnVtIGdsVHlwZSAgID0gZm9ybWF0LnR5cGU7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvY2FwdHVyZS9mcmFtZV9j
YXB0dXJlX3V0aWxzX2F1dG9nZW4uY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xp
YkFOR0xFL2NhcHR1cmUvZnJhbWVfY2FwdHVyZV91dGlsc19hdXRvZ2VuLmNwcAppbmRleCBhYWZj
OTQ1NDVlOTc3NDk5OTU1NWJiNjM5MTc0NjU1MmJiY2YyZjdiLi40MjVhY2ZjNTI2MTM2ZWExMjU0
MjYwMzk1ZjcwM2I5MzhiMDI1YmQ3IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zcmMvbGliQU5HTEUvY2FwdHVyZS9mcmFtZV9jYXB0dXJlX3V0aWxzX2F1dG9nZW4uY3BwCisr
KyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9jYXB0dXJlL2ZyYW1lX2Nh
cHR1cmVfdXRpbHNfYXV0b2dlbi5jcHAKQEAgLTY1LDYgKzY1LDkgQEAgdm9pZCBXcml0ZVBhcmFt
Q2FwdHVyZVJlcGxheShzdGQ6Om9zdHJlYW0gJm9zLCBjb25zdCBDYWxsQ2FwdHVyZSAmY2FsbCwg
Y29uc3QgUGEKICAgICAgICAgY2FzZSBQYXJhbVR5cGU6OlRFR0xBdHRyaWJLSFI6CiAgICAgICAg
ICAgICBXcml0ZVBhcmFtVmFsdWVSZXBsYXk8UGFyYW1UeXBlOjpURUdMQXR0cmliS0hSPihvcywg
Y2FsbCwgcGFyYW0udmFsdWUuRUdMQXR0cmliS0hSVmFsKTsKICAgICAgICAgICAgIGJyZWFrOwor
ICAgICAgICBjYXNlIFBhcmFtVHlwZTo6VEVHTEJvb2xlYW46CisgICAgICAgICAgICBXcml0ZVBh
cmFtVmFsdWVSZXBsYXk8UGFyYW1UeXBlOjpURUdMQm9vbGVhbj4ob3MsIGNhbGwsIHBhcmFtLnZh
bHVlLkVHTEJvb2xlYW5WYWwpOworICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIGNhc2UgUGFy
YW1UeXBlOjpURUdMQ2xpZW50QnVmZmVyOgogICAgICAgICAgICAgV3JpdGVQYXJhbVZhbHVlUmVw
bGF5PFBhcmFtVHlwZTo6VEVHTENsaWVudEJ1ZmZlcj4ob3MsIGNhbGwsCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXJhbS52
YWx1ZS5FR0xDbGllbnRCdWZmZXJWYWwpOwpAQCAtNjEyLDYgKzYxNSw4IEBAIGNvbnN0IGNoYXIg
KlBhcmFtVHlwZVRvU3RyaW5nKFBhcmFtVHlwZSBwYXJhbVR5cGUpCiAgICAgICAgICAgICByZXR1
cm4gIkdMZW51bSI7CiAgICAgICAgIGNhc2UgUGFyYW1UeXBlOjpURUdMQXR0cmliS0hSOgogICAg
ICAgICAgICAgcmV0dXJuICJHTGVudW0iOworICAgICAgICBjYXNlIFBhcmFtVHlwZTo6VEVHTEJv
b2xlYW46CisgICAgICAgICAgICByZXR1cm4gIkdMZW51bSI7CiAgICAgICAgIGNhc2UgUGFyYW1U
eXBlOjpURUdMQ2xpZW50QnVmZmVyOgogICAgICAgICAgICAgcmV0dXJuICJHTGVudW0iOwogICAg
ICAgICBjYXNlIFBhcmFtVHlwZTo6VEVHTENvbmZpZzoKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9jYXB0dXJlL2ZyYW1lX2NhcHR1cmVfdXRpbHNfYXV0
b2dlbi5oIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL2NhcHR1cmUvZnJh
bWVfY2FwdHVyZV91dGlsc19hdXRvZ2VuLmgKaW5kZXggYmRjNWUyYTUyNWQzOWE1YmFiMzcxY2Fk
NDk3NjBhYWJhODEzNGRlOC4uOWM3NmMyZmMxNTMyMDIxNmNkOWUzZWYzODhhMzhiYjJhZDM5NjA3
ZiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL2NhcHR1
cmUvZnJhbWVfY2FwdHVyZV91dGlsc19hdXRvZ2VuLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc3JjL2xpYkFOR0xFL2NhcHR1cmUvZnJhbWVfY2FwdHVyZV91dGlsc19hdXRvZ2VuLmgK
QEAgLTMwLDYgKzMwLDcgQEAgZW51bSBjbGFzcyBQYXJhbVR5cGUKICAgICBURHJhd0VsZW1lbnRz
VHlwZSwKICAgICBURUdMQXR0cmliLAogICAgIFRFR0xBdHRyaWJLSFIsCisgICAgVEVHTEJvb2xl
YW4sCiAgICAgVEVHTENsaWVudEJ1ZmZlciwKICAgICBURUdMQ29uZmlnLAogICAgIFRFR0xDb250
ZXh0LApAQCAtMTcyLDcgKzE3Myw3IEBAIGVudW0gY2xhc3MgUGFyYW1UeXBlCiAgICAgVHZvaWRQ
b2ludGVyUG9pbnRlciwKIH07CiAKLWNvbnN0ZXhwciB1aW50MzJfdCBrUGFyYW1UeXBlQ291bnQg
PSAxNTM7Citjb25zdGV4cHIgdWludDMyX3Qga1BhcmFtVHlwZUNvdW50ID0gMTU0OwogCiB1bmlv
biBQYXJhbVZhbHVlCiB7CkBAIC0xODksNiArMTkwLDcgQEAgdW5pb24gUGFyYW1WYWx1ZQogICAg
IGdsOjpEcmF3RWxlbWVudHNUeXBlIERyYXdFbGVtZW50c1R5cGVWYWw7CiAgICAgRUdMQXR0cmli
IEVHTEF0dHJpYlZhbDsKICAgICBFR0xBdHRyaWJLSFIgRUdMQXR0cmliS0hSVmFsOworICAgIEVH
TEJvb2xlYW4gRUdMQm9vbGVhblZhbDsKICAgICBFR0xDbGllbnRCdWZmZXIgRUdMQ2xpZW50QnVm
ZmVyVmFsOwogICAgIEVHTENvbmZpZyBFR0xDb25maWdWYWw7CiAgICAgRUdMQ29udGV4dCBFR0xD
b250ZXh0VmFsOwpAQCAtNDIyLDYgKzQyNCwxMiBAQCBpbmxpbmUgRUdMQXR0cmliS0hSIEdldFBh
cmFtVmFsPFBhcmFtVHlwZTo6VEVHTEF0dHJpYktIUiwgRUdMQXR0cmliS0hSPihjb25zdCBQYQog
ICAgIHJldHVybiB2YWx1ZS5FR0xBdHRyaWJLSFJWYWw7CiB9CiAKK3RlbXBsYXRlIDw+Citpbmxp
bmUgRUdMQm9vbGVhbiBHZXRQYXJhbVZhbDxQYXJhbVR5cGU6OlRFR0xCb29sZWFuLCBFR0xCb29s
ZWFuPihjb25zdCBQYXJhbVZhbHVlICZ2YWx1ZSkKK3sKKyAgICByZXR1cm4gdmFsdWUuRUdMQm9v
bGVhblZhbDsKK30KKwogdGVtcGxhdGUgPD4KIGlubGluZSBFR0xDbGllbnRCdWZmZXIgR2V0UGFy
YW1WYWw8UGFyYW1UeXBlOjpURUdMQ2xpZW50QnVmZmVyLCBFR0xDbGllbnRCdWZmZXI+KAogICAg
IGNvbnN0IFBhcmFtVmFsdWUgJnZhbHVlKQpAQCAtMTM4MCw2ICsxMzg4LDggQEAgVCBBY2Nlc3NQ
YXJhbVZhbHVlKFBhcmFtVHlwZSBwYXJhbVR5cGUsIGNvbnN0IFBhcmFtVmFsdWUgJnZhbHVlKQog
ICAgICAgICAgICAgcmV0dXJuIEdldFBhcmFtVmFsPFBhcmFtVHlwZTo6VEVHTEF0dHJpYiwgVD4o
dmFsdWUpOwogICAgICAgICBjYXNlIFBhcmFtVHlwZTo6VEVHTEF0dHJpYktIUjoKICAgICAgICAg
ICAgIHJldHVybiBHZXRQYXJhbVZhbDxQYXJhbVR5cGU6OlRFR0xBdHRyaWJLSFIsIFQ+KHZhbHVl
KTsKKyAgICAgICAgY2FzZSBQYXJhbVR5cGU6OlRFR0xCb29sZWFuOgorICAgICAgICAgICAgcmV0
dXJuIEdldFBhcmFtVmFsPFBhcmFtVHlwZTo6VEVHTEJvb2xlYW4sIFQ+KHZhbHVlKTsKICAgICAg
ICAgY2FzZSBQYXJhbVR5cGU6OlRFR0xDbGllbnRCdWZmZXI6CiAgICAgICAgICAgICByZXR1cm4g
R2V0UGFyYW1WYWw8UGFyYW1UeXBlOjpURUdMQ2xpZW50QnVmZmVyLCBUPih2YWx1ZSk7CiAgICAg
ICAgIGNhc2UgUGFyYW1UeXBlOjpURUdMQ29uZmlnOgpAQCAtMTc1MSw2ICsxNzYxLDEyIEBAIGlu
bGluZSB2b2lkIFNldFBhcmFtVmFsPFBhcmFtVHlwZTo6VEVHTEF0dHJpYktIUj4oRUdMQXR0cmli
S0hSIHZhbHVlSW4sIFBhcmFtVmFsCiAgICAgdmFsdWVPdXQtPkVHTEF0dHJpYktIUlZhbCA9IHZh
bHVlSW47CiB9CiAKK3RlbXBsYXRlIDw+CitpbmxpbmUgdm9pZCBTZXRQYXJhbVZhbDxQYXJhbVR5
cGU6OlRFR0xCb29sZWFuPihFR0xCb29sZWFuIHZhbHVlSW4sIFBhcmFtVmFsdWUgKnZhbHVlT3V0
KQoreworICAgIHZhbHVlT3V0LT5FR0xCb29sZWFuVmFsID0gdmFsdWVJbjsKK30KKwogdGVtcGxh
dGUgPD4KIGlubGluZSB2b2lkIFNldFBhcmFtVmFsPFBhcmFtVHlwZTo6VEVHTENsaWVudEJ1ZmZl
cj4oRUdMQ2xpZW50QnVmZmVyIHZhbHVlSW4sIFBhcmFtVmFsdWUgKnZhbHVlT3V0KQogewpAQCAt
MjcwMSw2ICsyNzE3LDkgQEAgdm9pZCBJbml0UGFyYW1WYWx1ZShQYXJhbVR5cGUgcGFyYW1UeXBl
LCBUIHZhbHVlSW4sIFBhcmFtVmFsdWUgKnZhbHVlT3V0KQogICAgICAgICBjYXNlIFBhcmFtVHlw
ZTo6VEVHTEF0dHJpYktIUjoKICAgICAgICAgICAgIFNldFBhcmFtVmFsPFBhcmFtVHlwZTo6VEVH
TEF0dHJpYktIUj4odmFsdWVJbiwgdmFsdWVPdXQpOwogICAgICAgICAgICAgYnJlYWs7CisgICAg
ICAgIGNhc2UgUGFyYW1UeXBlOjpURUdMQm9vbGVhbjoKKyAgICAgICAgICAgIFNldFBhcmFtVmFs
PFBhcmFtVHlwZTo6VEVHTEJvb2xlYW4+KHZhbHVlSW4sIHZhbHVlT3V0KTsKKyAgICAgICAgICAg
IGJyZWFrOwogICAgICAgICBjYXNlIFBhcmFtVHlwZTo6VEVHTENsaWVudEJ1ZmZlcjoKICAgICAg
ICAgICAgIFNldFBhcmFtVmFsPFBhcmFtVHlwZTo6VEVHTENsaWVudEJ1ZmZlcj4odmFsdWVJbiwg
dmFsdWVPdXQpOwogICAgICAgICAgICAgYnJlYWs7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvY2FwdHVyZS9nbF9lbnVtX3V0aWxzX2F1dG9nZW4uY3Bw
IGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL2NhcHR1cmUvZ2xfZW51bV91
dGlsc19hdXRvZ2VuLmNwcAppbmRleCAyMWQ2ODBiMGRhYzg4NzcxYzBmNjU4MDBjOGNmMmZlMTZm
MGFkNTQ5Li4wOTg1ZTEyZGZkZGNjMjUzNzEwZTdkZjA3NjVmYzU1ZTg2YjZjNTFiIDEwMDY0NAot
LS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvY2FwdHVyZS9nbF9lbnVt
X3V0aWxzX2F1dG9nZW4uY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJB
TkdMRS9jYXB0dXJlL2dsX2VudW1fdXRpbHNfYXV0b2dlbi5jcHAKQEAgLTE2MCw2ICsxNjAsMzYg
QEAgY29uc3QgY2hhciAqR0xlbnVtVG9TdHJpbmcoR0xlbnVtR3JvdXAgZW51bUdyb3VwLCB1bnNp
Z25lZCBpbnQgdmFsdWUpCiAgICAgICAgICAgICAgICAgICAgIHJldHVybiAiR0xfRlVOQ19TVUJU
UkFDVCI7CiAgICAgICAgICAgICAgICAgY2FzZSAweDgwMEI6CiAgICAgICAgICAgICAgICAgICAg
IHJldHVybiAiR0xfRlVOQ19SRVZFUlNFX1NVQlRSQUNUIjsKKyAgICAgICAgICAgICAgICBjYXNl
IDB4OTI5NDoKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuICJHTF9NVUxUSVBMWSI7CisgICAg
ICAgICAgICAgICAgY2FzZSAweDkyOTU6CisgICAgICAgICAgICAgICAgICAgIHJldHVybiAiR0xf
U0NSRUVOIjsKKyAgICAgICAgICAgICAgICBjYXNlIDB4OTI5NjoKKyAgICAgICAgICAgICAgICAg
ICAgcmV0dXJuICJHTF9PVkVSTEFZIjsKKyAgICAgICAgICAgICAgICBjYXNlIDB4OTI5NzoKKyAg
ICAgICAgICAgICAgICAgICAgcmV0dXJuICJHTF9EQVJLRU4iOworICAgICAgICAgICAgICAgIGNh
c2UgMHg5Mjk4OgorICAgICAgICAgICAgICAgICAgICByZXR1cm4gIkdMX0xJR0hURU4iOworICAg
ICAgICAgICAgICAgIGNhc2UgMHg5Mjk5OgorICAgICAgICAgICAgICAgICAgICByZXR1cm4gIkdM
X0NPTE9SRE9ER0UiOworICAgICAgICAgICAgICAgIGNhc2UgMHg5MjlBOgorICAgICAgICAgICAg
ICAgICAgICByZXR1cm4gIkdMX0NPTE9SQlVSTiI7CisgICAgICAgICAgICAgICAgY2FzZSAweDky
OUI6CisgICAgICAgICAgICAgICAgICAgIHJldHVybiAiR0xfSEFSRExJR0hUIjsKKyAgICAgICAg
ICAgICAgICBjYXNlIDB4OTI5QzoKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuICJHTF9TT0ZU
TElHSFQiOworICAgICAgICAgICAgICAgIGNhc2UgMHg5MjlFOgorICAgICAgICAgICAgICAgICAg
ICByZXR1cm4gIkdMX0RJRkZFUkVOQ0UiOworICAgICAgICAgICAgICAgIGNhc2UgMHg5MkEwOgor
ICAgICAgICAgICAgICAgICAgICByZXR1cm4gIkdMX0VYQ0xVU0lPTiI7CisgICAgICAgICAgICAg
ICAgY2FzZSAweDkyQUQ6CisgICAgICAgICAgICAgICAgICAgIHJldHVybiAiR0xfSFNMX0hVRSI7
CisgICAgICAgICAgICAgICAgY2FzZSAweDkyQUU6CisgICAgICAgICAgICAgICAgICAgIHJldHVy
biAiR0xfSFNMX1NBVFVSQVRJT04iOworICAgICAgICAgICAgICAgIGNhc2UgMHg5MkFGOgorICAg
ICAgICAgICAgICAgICAgICByZXR1cm4gIkdMX0hTTF9DT0xPUiI7CisgICAgICAgICAgICAgICAg
Y2FzZSAweDkyQjA6CisgICAgICAgICAgICAgICAgICAgIHJldHVybiAiR0xfSFNMX0xVTUlOT1NJ
VFkiOwogICAgICAgICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICAgICAgICAgIHJldHVy
biBVbmtub3duR0xlbnVtVG9TdHJpbmcodmFsdWUpOwogICAgICAgICAgICAgfQpAQCAtMTIyNyw2
ICsxMjU3LDIwIEBAIGNvbnN0IGNoYXIgKkdMZW51bVRvU3RyaW5nKEdMZW51bUdyb3VwIGVudW1H
cm91cCwgdW5zaWduZWQgaW50IHZhbHVlKQogICAgICAgICAgICAgICAgICAgICByZXR1cm4gIkdM
X1BPSU5UX1NJWkVfQVJSQVlfQlVGRkVSX0JJTkRJTkdfT0VTIjsKICAgICAgICAgICAgICAgICBj
YXNlIDB4OEJCQjoKICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICJHTF9GUkFNRUJVRkZFUl9G
TElQX1lfTUVTQSI7CisgICAgICAgICAgICAgICAgY2FzZSAweDhCQzA6CisgICAgICAgICAgICAg
ICAgICAgIHJldHVybiAiR0xfQ09VTlRFUl9UWVBFX0FNRCI7CisgICAgICAgICAgICAgICAgY2Fz
ZSAweDhCQzE6CisgICAgICAgICAgICAgICAgICAgIHJldHVybiAiR0xfQ09VTlRFUl9SQU5HRV9B
TUQiOworICAgICAgICAgICAgICAgIGNhc2UgMHg4QkMyOgorICAgICAgICAgICAgICAgICAgICBy
ZXR1cm4gIkdMX1VOU0lHTkVEX0lOVDY0X0FNRCI7CisgICAgICAgICAgICAgICAgY2FzZSAweDhC
QzM6CisgICAgICAgICAgICAgICAgICAgIHJldHVybiAiR0xfUEVSQ0VOVEFHRV9BTUQiOworICAg
ICAgICAgICAgICAgIGNhc2UgMHg4QkM0OgorICAgICAgICAgICAgICAgICAgICByZXR1cm4gIkdM
X1BFUkZNT05fUkVTVUxUX0FWQUlMQUJMRV9BTUQiOworICAgICAgICAgICAgICAgIGNhc2UgMHg4
QkM1OgorICAgICAgICAgICAgICAgICAgICByZXR1cm4gIkdMX1BFUkZNT05fUkVTVUxUX1NJWkVf
QU1EIjsKKyAgICAgICAgICAgICAgICBjYXNlIDB4OEJDNjoKKyAgICAgICAgICAgICAgICAgICAg
cmV0dXJuICJHTF9QRVJGTU9OX1JFU1VMVF9BTUQiOwogICAgICAgICAgICAgICAgIGNhc2UgMHg4
QkU3OgogICAgICAgICAgICAgICAgICAgICByZXR1cm4gIkdMX1NBTVBMRVJfRVhURVJOQUxfMkRf
WTJZX0VYVCI7CiAgICAgICAgICAgICAgICAgY2FzZSAweDhCRkE6CkBAIC0xNzM1LDM2ICsxNzc5
LDYgQEAgY29uc3QgY2hhciAqR0xlbnVtVG9TdHJpbmcoR0xlbnVtR3JvdXAgZW51bUdyb3VwLCB1
bnNpZ25lZCBpbnQgdmFsdWUpCiAgICAgICAgICAgICAgICAgICAgIHJldHVybiAiR0xfTUFYX0NP
TVBVVEVfV09SS19HUk9VUF9DT1VOVCI7CiAgICAgICAgICAgICAgICAgY2FzZSAweDkxQkY6CiAg
ICAgICAgICAgICAgICAgICAgIHJldHVybiAiR0xfTUFYX0NPTVBVVEVfV09SS19HUk9VUF9TSVpF
IjsKLSAgICAgICAgICAgICAgICBjYXNlIDB4OTI5NDoKLSAgICAgICAgICAgICAgICAgICAgcmV0
dXJuICJHTF9NVUxUSVBMWSI7Ci0gICAgICAgICAgICAgICAgY2FzZSAweDkyOTU6Ci0gICAgICAg
ICAgICAgICAgICAgIHJldHVybiAiR0xfU0NSRUVOIjsKLSAgICAgICAgICAgICAgICBjYXNlIDB4
OTI5NjoKLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuICJHTF9PVkVSTEFZIjsKLSAgICAgICAg
ICAgICAgICBjYXNlIDB4OTI5NzoKLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuICJHTF9EQVJL
RU4iOwotICAgICAgICAgICAgICAgIGNhc2UgMHg5Mjk4OgotICAgICAgICAgICAgICAgICAgICBy
ZXR1cm4gIkdMX0xJR0hURU4iOwotICAgICAgICAgICAgICAgIGNhc2UgMHg5Mjk5OgotICAgICAg
ICAgICAgICAgICAgICByZXR1cm4gIkdMX0NPTE9SRE9ER0UiOwotICAgICAgICAgICAgICAgIGNh
c2UgMHg5MjlBOgotICAgICAgICAgICAgICAgICAgICByZXR1cm4gIkdMX0NPTE9SQlVSTiI7Ci0g
ICAgICAgICAgICAgICAgY2FzZSAweDkyOUI6Ci0gICAgICAgICAgICAgICAgICAgIHJldHVybiAi
R0xfSEFSRExJR0hUIjsKLSAgICAgICAgICAgICAgICBjYXNlIDB4OTI5QzoKLSAgICAgICAgICAg
ICAgICAgICAgcmV0dXJuICJHTF9TT0ZUTElHSFQiOwotICAgICAgICAgICAgICAgIGNhc2UgMHg5
MjlFOgotICAgICAgICAgICAgICAgICAgICByZXR1cm4gIkdMX0RJRkZFUkVOQ0UiOwotICAgICAg
ICAgICAgICAgIGNhc2UgMHg5MkEwOgotICAgICAgICAgICAgICAgICAgICByZXR1cm4gIkdMX0VY
Q0xVU0lPTiI7Ci0gICAgICAgICAgICAgICAgY2FzZSAweDkyQUQ6Ci0gICAgICAgICAgICAgICAg
ICAgIHJldHVybiAiR0xfSFNMX0hVRSI7Ci0gICAgICAgICAgICAgICAgY2FzZSAweDkyQUU6Ci0g
ICAgICAgICAgICAgICAgICAgIHJldHVybiAiR0xfSFNMX1NBVFVSQVRJT04iOwotICAgICAgICAg
ICAgICAgIGNhc2UgMHg5MkFGOgotICAgICAgICAgICAgICAgICAgICByZXR1cm4gIkdMX0hTTF9D
T0xPUiI7Ci0gICAgICAgICAgICAgICAgY2FzZSAweDkyQjA6Ci0gICAgICAgICAgICAgICAgICAg
IHJldHVybiAiR0xfSFNMX0xVTUlOT1NJVFkiOwogICAgICAgICAgICAgICAgIGNhc2UgMHg5MkJC
OgogICAgICAgICAgICAgICAgICAgICByZXR1cm4gIkdMX1BVUkdFRF9DT05URVhUX1JFU0VUX05W
IjsKICAgICAgICAgICAgICAgICBjYXNlIDB4OTJCRToKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9jYXB0dXJlL3RyYWNlX2ZpeHR1cmUuY3BwIGIvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL2NhcHR1cmUvdHJhY2VfZml4dHVyZS5j
cHAKaW5kZXggZWY3NWU3OGM4NjA3NjQ4Y2M5MTRkMTg0ZGFhNWY0MGQ1ZWI0NzIwNy4uMzhmYzQz
YzM5MGI1MjEyNzMxYTkyNTU2ZmY3Y2UxZGRkNzE0OTljMSAxMDA2NDQKLS0tIGEvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL2NhcHR1cmUvdHJhY2VfZml4dHVyZS5jcHAKKysr
IGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL2NhcHR1cmUvdHJhY2VfZml4
dHVyZS5jcHAKQEAgLTMxNSw2ICszMTUsMjEgQEAgdm9pZCBTZXRGcmFtZWJ1ZmZlcklEKEdMdWlu
dCBpZCkKICAgICBTZXRSZXNvdXJjZUlEKGdGcmFtZWJ1ZmZlck1hcCwgaWQpOwogfQogCit2b2lk
IFNldEJ1ZmZlcklEKEdMdWludCBpZCkKK3sKKyAgICBTZXRSZXNvdXJjZUlEKGdCdWZmZXJNYXAs
IGlkKTsKK30KKwordm9pZCBTZXRSZW5kZXJidWZmZXJJRChHTHVpbnQgaWQpCit7CisgICAgU2V0
UmVzb3VyY2VJRChnUmVuZGVyYnVmZmVyTWFwLCBpZCk7Cit9CisKK3ZvaWQgU2V0VGV4dHVyZUlE
KEdMdWludCBpZCkKK3sKKyAgICBTZXRSZXNvdXJjZUlEKGdUZXh0dXJlTWFwLCBpZCk7Cit9CisK
IHZvaWQgVmFsaWRhdGVTZXJpYWxpemVkU3RhdGUoY29uc3QgY2hhciAqc2VyaWFsaXplZFN0YXRl
LCBjb25zdCBjaGFyICpmaWxlTmFtZSwgdWludDMyX3QgbGluZSkKIHsKICAgICBpZiAoZ1ZhbGlk
YXRlU2VyaWFsaXplZFN0YXRlQ2FsbGJhY2spCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvbGliQU5HTEUvY2FwdHVyZS90cmFjZV9maXh0dXJlLmggYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvY2FwdHVyZS90cmFjZV9maXh0dXJlLmgKaW5kZXgg
NDFjMThmYTc0NzY2NDQ5YTQ3ZWQ1NWEwMzI5Mjg4YmJlNjI0YzU4NC4uNGQwNmVkYTgxN2I1ZjBl
NTI2ODI4MzVkNmFhNzQ1ODQwZmYzY2ZmYiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc3JjL2xpYkFOR0xFL2NhcHR1cmUvdHJhY2VfZml4dHVyZS5oCisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9jYXB0dXJlL3RyYWNlX2ZpeHR1cmUuaApAQCAt
MTMwLDYgKzEzMCw5IEBAIHZvaWQgVXBkYXRlVmVydGV4QXJyYXlJRChHTHVpbnQgaWQsIEdMc2l6
ZWkgcmVhZEJ1ZmZlck9mZnNldCk7CiB2b2lkIFVwZGF0ZUJ1ZmZlcklEMihHTHVpbnQgaWQsIEdM
c2l6ZWkgcmVhZEJ1ZmZlck9mZnNldCk7CiAKIHZvaWQgU2V0RnJhbWVidWZmZXJJRChHTHVpbnQg
aWQpOwordm9pZCBTZXRCdWZmZXJJRChHTHVpbnQgaWQpOwordm9pZCBTZXRSZW5kZXJidWZmZXJJ
RChHTHVpbnQgaWQpOwordm9pZCBTZXRUZXh0dXJlSUQoR0x1aW50IGlkKTsKIAogdm9pZCBWYWxp
ZGF0ZVNlcmlhbGl6ZWRTdGF0ZShjb25zdCBjaGFyICpzZXJpYWxpemVkU3RhdGUsIGNvbnN0IGNo
YXIgKmZpbGVOYW1lLCB1aW50MzJfdCBsaW5lKTsKICNkZWZpbmUgVkFMSURBVEVfQ0hFQ0tQT0lO
VChTVEFURSkgVmFsaWRhdGVTZXJpYWxpemVkU3RhdGUoU1RBVEUsIF9fRklMRV9fLCBfX0xJTkVf
XykKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9nZW5f
b3ZlcmxheV93aWRnZXRzLnB5IGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xF
L2dlbl9vdmVybGF5X3dpZGdldHMucHkKaW5kZXggMDRkYTcxMWI5MWQ0ZDcyNWNkYWUwODg0N2Yy
ZjkwYjU4YzBmNWQ1NS4uMmFkMGUwMjA2ZTI3ZmNlODJhMjZjOTlkN2FjYTliYjUyNDdhNTczMyAx
MDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL2dlbl9vdmVy
bGF5X3dpZGdldHMucHkKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xF
L2dlbl9vdmVybGF5X3dpZGdldHMucHkKQEAgLTEsNCArMSw0IEBACi0jISAvdXNyL2Jpbi9weXRo
b24KKyMhIC91c3IvYmluL3B5dGhvbjMKIAogIyBDb3B5cmlnaHQgMjAxOSBUaGUgQU5HTEUgUHJv
amVjdCBBdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogIyBVc2Ugb2YgdGhpcyBzb3VyY2Ug
Y29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCkBAIC0x
MCw2ICsxMCw3IEBACiAjICBOT1RFOiBkb24ndCBydW4gdGhpcyBzY3JpcHQgZGlyZWN0bHkuIFJ1
biBzY3JpcHRzL3J1bl9jb2RlX2dlbmVyYXRpb24ucHkuCiAKIGltcG9ydCBqc29uCitpbXBvcnQg
b3MKIGltcG9ydCBzeXMKIAogT1VUX1NPVVJDRV9GSUxFX05BTUUgPSAnT3ZlcmxheV9hdXRvZ2Vu
LmNwcCcKQEAgLTE2MCw3ICsxNjEsNyBAQCBjbGFzcyBPdmVybGF5V2lkZ2V0OgogCiBkZWYgaXNf
bmVnYXRpdmVfY29vcmQoY29vcmRzLCBheGlzLCB3aWRnZXRzX3NvX2Zhcik6CiAKLSAgICBpZiBp
c2luc3RhbmNlKGNvb3Jkc1theGlzXSwgdW5pY29kZSk6CisgICAgaWYgaXNpbnN0YW5jZShjb29y
ZHNbYXhpc10sIHN0cik6CiAgICAgICAgIGNvb3JkX3NwbGl0ID0gY29vcmRzW2F4aXNdLnNwbGl0
KCcuJykKICAgICAgICAgIyBUaGUgY29vcmRpbmF0ZSBpcyBpbiB0aGUgZm9ybSBvdGhlcl93aWRn
ZXQuZWRnZS5tb2RlCiAgICAgICAgICMgV2Ugc2ltcGx5IG5lZWQgdG8ga25vdyBpZiBvdGhlcl93
aWRnZXQncyBjb29yZGluYXRlIGlzIG5lZ2F0aXZlIG9yIG5vdC4KQEAgLTE5Niw3ICsxOTcsNyBA
QCBkZWYgZ2V0X29mZnNldF9oZWxwZXIod2lkZ2V0LCBheGlzLCBzbWFsbGVyX2Nvb3JkX3NpZGUp
OgogICAgICMgVGhlIGNhc2UgZm9yIHRoZSBZIGF4aXMgaXMgc2ltaWxhciwgd2l0aCB0aGUgZWRn
ZSB2YWx1ZXMgYmVpbmcgdG9wIG9yIGJvdHRvbS4KIAogICAgIGNvb3JkID0gd2lkZ2V0LmNvb3Jk
c1theGlzXQotICAgIGlmIG5vdCBpc2luc3RhbmNlKGNvb3JkLCB1bmljb2RlKToKKyAgICBpZiBu
b3QgaXNpbnN0YW5jZShjb29yZCwgc3RyKToKICAgICAgICAgaXNfbGVmdCA9IGNvb3JkID49IDAK
ICAgICAgICAgcmV0dXJuIGNvb3JkLCBpc19sZWZ0CiAKQEAgLTM0NSw3ICszNDYsNyBAQCBkZWYg
bWFpbigpOgogICAgIHdpdGggb3BlbihPVVRfU09VUkNFX0ZJTEVfTkFNRSwgJ3cnKSBhcyBvdXRm
aWxlOgogICAgICAgICBvdXRmaWxlLndyaXRlKAogICAgICAgICAgICAgT1VUX1NPVVJDRV9GSUxF
X1RFTVBMQVRFLmZvcm1hdCgKLSAgICAgICAgICAgICAgICBzY3JpcHRfbmFtZT1fX2ZpbGVfXywK
KyAgICAgICAgICAgICAgICBzY3JpcHRfbmFtZT1vcy5wYXRoLmJhc2VuYW1lKF9fZmlsZV9fKSwK
ICAgICAgICAgICAgICAgICBpbnB1dF9maWxlX25hbWU9SU5fSlNPTl9GSUxFX05BTUUsCiAgICAg
ICAgICAgICAgICAgb3V0X2ZpbGVfbmFtZT1PVVRfU09VUkNFX0ZJTEVfTkFNRSwKICAgICAgICAg
ICAgICAgICBpbml0X3dpZGdldHM9J1xuJy5qb2luKGluaXRfd2lkZ2V0cykpKQpAQCAtMzU3LDcg
KzM1OCw3IEBAIGRlZiBtYWluKCk6CiAKICAgICAgICAgb3V0ZmlsZS53cml0ZSgKICAgICAgICAg
ICAgIE9VVF9IRUFERVJfRklMRV9URU1QTEFURS5mb3JtYXQoCi0gICAgICAgICAgICAgICAgc2Ny
aXB0X25hbWU9X19maWxlX18sCisgICAgICAgICAgICAgICAgc2NyaXB0X25hbWU9b3MucGF0aC5i
YXNlbmFtZShfX2ZpbGVfXyksCiAgICAgICAgICAgICAgICAgaW5wdXRfZmlsZV9uYW1lPUlOX0pT
T05fRklMRV9OQU1FLAogICAgICAgICAgICAgICAgIG91dF9maWxlX25hbWU9T1VUX1NPVVJDRV9G
SUxFX05BTUUsCiAgICAgICAgICAgICAgICAgd2lkZ2V0X2lkcz0nJy5qb2luKHdpZGdldF9pZHMp
LApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL2dsZXNf
ZXh0ZW5zaW9uc19hdXRvZ2VuLmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJB
TkdMRS9nbGVzX2V4dGVuc2lvbnNfYXV0b2dlbi5jcHAKaW5kZXggMDMzODZiNDQ4NDZmM2M2MTJk
Zjc2MDc0ZjNmZTM1ODFmNmU2MWEyOS4uNmQ5MzEzMjJiOGI4ZjY3MWJjZjMwYWY3ZWM5OWZmNDI3
YTQyY2Y1NiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xF
L2dsZXNfZXh0ZW5zaW9uc19hdXRvZ2VuLmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zcmMvbGliQU5HTEUvZ2xlc19leHRlbnNpb25zX2F1dG9nZW4uY3BwCkBAIC0xMTgsNiArMTE4
LDcgQEAgY29uc3QgRXh0ZW5zaW9uSW5mb01hcCAmR2V0RXh0ZW5zaW9uSW5mb01hcCgpCiAgICAg
ICAgIG1hcFsiR0xfQU5HTEVfcGFja19yZXZlcnNlX3Jvd19vcmRlciJdID0gZW5hYmxlYWJsZUV4
dGVuc2lvbigmRXh0ZW5zaW9uczo6cGFja1JldmVyc2VSb3dPcmRlckFOR0xFKTsKICAgICAgICAg
bWFwWyJHTF9OVl9wYWNrX3N1YmltYWdlIl0gPSBlbmFibGVhYmxlRXh0ZW5zaW9uKCZFeHRlbnNp
b25zOjpwYWNrU3ViaW1hZ2VOVik7CiAgICAgICAgIG1hcFsiR0xfS0hSX3BhcmFsbGVsX3NoYWRl
cl9jb21waWxlIl0gPSBlbmFibGVhYmxlRXh0ZW5zaW9uKCZFeHRlbnNpb25zOjpwYXJhbGxlbFNo
YWRlckNvbXBpbGVLSFIpOworICAgICAgICBtYXBbIkdMX0FNRF9wZXJmb3JtYW5jZV9tb25pdG9y
Il0gPSBlc09ubHlFeHRlbnNpb24oJkV4dGVuc2lvbnM6OnBlcmZvcm1hbmNlTW9uaXRvckFNRCk7
CiAgICAgICAgIG1hcFsiR0xfTlZfcGl4ZWxfYnVmZmVyX29iamVjdCJdID0gZW5hYmxlYWJsZUV4
dGVuc2lvbigmRXh0ZW5zaW9uczo6cGl4ZWxCdWZmZXJPYmplY3ROVik7CiAgICAgICAgIG1hcFsi
R0xfRVhUX3ByaW1pdGl2ZV9ib3VuZGluZ19ib3giXSA9IGVzT25seUV4dGVuc2lvbigmRXh0ZW5z
aW9uczo6cHJpbWl0aXZlQm91bmRpbmdCb3hFWFQpOwogICAgICAgICBtYXBbIkdMX09FU19wcmlt
aXRpdmVfYm91bmRpbmdfYm94Il0gPSBlc09ubHlFeHRlbnNpb24oJkV4dGVuc2lvbnM6OnByaW1p
dGl2ZUJvdW5kaW5nQm94T0VTKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy9saWJBTkdMRS9nbGVzX2V4dGVuc2lvbnNfYXV0b2dlbi5oIGIvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL2xpYkFOR0xFL2dsZXNfZXh0ZW5zaW9uc19hdXRvZ2VuLmgKaW5kZXggNGI5
OGY5NDBkZDg0ZDAyOWViMjQ5YWM3ODJmNDk2NDQ1OTA2YWFiMC4uMWUyMjNmNjY0MDQwMjQwYjRi
YzcwNjliYTg0MDNiMWQzZmMzNjgwMSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvc3JjL2xpYkFOR0xFL2dsZXNfZXh0ZW5zaW9uc19hdXRvZ2VuLmgKKysrIGIvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL2dsZXNfZXh0ZW5zaW9uc19hdXRvZ2VuLmgKQEAg
LTMxMSw2ICszMTEsOSBAQCBzdHJ1Y3QgRXh0ZW5zaW9ucwogICAgIC8vIEdMX0tIUl9wYXJhbGxl
bF9zaGFkZXJfY29tcGlsZQogICAgIGJvb2wgcGFyYWxsZWxTaGFkZXJDb21waWxlS0hSID0gZmFs
c2U7CiAKKyAgICAvLyBHTF9BTURfcGVyZm9ybWFuY2VfbW9uaXRvcgorICAgIGJvb2wgcGVyZm9y
bWFuY2VNb25pdG9yQU1EID0gZmFsc2U7CisKICAgICAvLyBHTF9OVl9waXhlbF9idWZmZXJfb2Jq
ZWN0CiAgICAgYm9vbCBwaXhlbEJ1ZmZlck9iamVjdE5WID0gZmFsc2U7CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9vdmVybGF5X3dpZGdldHMuanNv
biBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9vdmVybGF5X3dpZGdldHMu
anNvbgppbmRleCBlYWJmMjc3ZGE2ZjBmMzVlNTYxNDljYmIxMTRjYWJhZmUzNjA1ODIwLi4wNzA5
MmU3NWIxNWZmYmQ4ODEzOTY0MDQ1M2YwNjMwYjU3ZDQ0ZmNlIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvb3ZlcmxheV93aWRnZXRzLmpzb24KKysrIGIv
U291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL292ZXJsYXlfd2lkZ2V0cy5qc29u
CkBAIC0yMTIsNiArMjEyLDE1IEBACiAgICAgICAgICAgICAgICAgImZvbnQiOiAic21hbGwiLAog
ICAgICAgICAgICAgICAgICJsZW5ndGgiOiA5MAogICAgICAgICAgICAgfQorICAgICAgICB9LAor
ICAgICAgICB7CisgICAgICAgICAgICAibmFtZSI6ICJWdWxrYW5EZXNjcmlwdG9yQ2FjaGVLZXlT
aXplIiwKKyAgICAgICAgICAgICJjb21tZW50IjogIlRvdGFsIHNpemUgb2YgYWxsIGtleXMgaW4g
dGhlIGRlc2NyaXB0b3Igc2V0IGNhY2hlcyIsCisgICAgICAgICAgICAidHlwZSI6ICJDb3VudCIs
CisgICAgICAgICAgICAiY29sb3IiOiBbMjU1LCAyNTUsIDI1NSwgMjU1XSwKKyAgICAgICAgICAg
ICJjb29yZHMiOiBbMTAsIDEwMF0sCisgICAgICAgICAgICAiZm9udCI6ICJzbWFsbCIsCisgICAg
ICAgICAgICAibGVuZ3RoIjogMzAKICAgICAgICAgfQogICAgIF0KIH0KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9xdWVyeXV0aWxzLmNwcCBiL1NvdXJj
ZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9xdWVyeXV0aWxzLmNwcAppbmRleCA4ZGE2
NjJiN2IwNTU2ZTdmOGNkY2FkOGU1MzA5MzllZDlhYjVjZTBkLi4wNGYwZjljYjc1ZmY4YzEwNTcw
MzkyYmUyYTQ4Zjk5MTJiNTU3ZTMxIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zcmMvbGliQU5HTEUvcXVlcnl1dGlscy5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvc3JjL2xpYkFOR0xFL3F1ZXJ5dXRpbHMuY3BwCkBAIC00MjMzLDcgKzQyMzMsNyBAQCB2b2lk
IFF1ZXJ5Q29udGV4dEF0dHJpYihjb25zdCBnbDo6Q29udGV4dCAqY29udGV4dCwgRUdMaW50IGF0
dHJpYnV0ZSwgRUdMaW50ICp2YQogCiBlZ2w6OkVycm9yIFF1ZXJ5U3VyZmFjZUF0dHJpYihjb25z
dCBEaXNwbGF5ICpkaXNwbGF5LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qg
Z2w6OkNvbnRleHQgKmNvbnRleHQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25z
dCBTdXJmYWNlICpzdXJmYWNlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3VyZmFj
ZSAqc3VyZmFjZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVHTGludCBhdHRyaWJ1
dGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFR0xpbnQgKnZhbHVlKQogewpkaWZm
IC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3F1ZXJ5dXRpbHMu
aCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9xdWVyeXV0aWxzLmgKaW5k
ZXggMWNhMDI0YWU5OTI0NDI5ODllMDE2M2RmNmY1NjdjYmYyMjEyY2Y2Ni4uNGQxYzQ5OGRhODQz
NzY5ZWVmYjI3ZTY0ZjE4ZmViZDIwMTdmYmFlYiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL2xpYkFOR0xFL3F1ZXJ5dXRpbHMuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvbGliQU5HTEUvcXVlcnl1dGlscy5oCkBAIC0yNzYsNyArMjc2LDcgQEAgdm9p
ZCBRdWVyeUNvbnRleHRBdHRyaWIoY29uc3QgZ2w6OkNvbnRleHQgKmNvbnRleHQsIEVHTGludCBh
dHRyaWJ1dGUsIEVHTGludCAqdmEKIAogZWdsOjpFcnJvciBRdWVyeVN1cmZhY2VBdHRyaWIoY29u
c3QgRGlzcGxheSAqZGlzcGxheSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0
IGdsOjpDb250ZXh0ICpjb250ZXh0LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29u
c3QgU3VyZmFjZSAqc3VyZmFjZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN1cmZh
Y2UgKnN1cmZhY2UsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFR0xpbnQgYXR0cmli
dXRlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRUdMaW50ICp2YWx1ZSk7CiBlZ2w6
OkVycm9yIFNldFN1cmZhY2VBdHRyaWIoU3VyZmFjZSAqc3VyZmFjZSwgRUdMaW50IGF0dHJpYnV0
ZSwgRUdMaW50IHZhbHVlKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3Ny
Yy9saWJBTkdMRS9yZW5kZXJlci9Db250ZXh0SW1wbC5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvQ29udGV4dEltcGwuY3BwCmluZGV4IDQxNTQxZGMz
MmI0MWE5OTkxYmM2YWIxYmQyZDk3NjljMmM3YWM2OWEuLjk1MmQ0ZWUzN2FhOGQyNjFmMDM5YTM2
MzhmOGJjNDU3M2RjOTA1ZjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3Ny
Yy9saWJBTkdMRS9yZW5kZXJlci9Db250ZXh0SW1wbC5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL0NvbnRleHRJbXBsLmNwcApAQCAtOSw2ICs5
LDcgQEAKIAogI2luY2x1ZGUgImxpYkFOR0xFL3JlbmRlcmVyL0NvbnRleHRJbXBsLmgiCiAKKyNp
bmNsdWRlICJjb21tb24vdGhpcmRfcGFydHkvYmFzZS9hbmdsZWJhc2Uvbm9fZGVzdHJ1Y3Rvci5o
IgogI2luY2x1ZGUgImxpYkFOR0xFL0NvbnRleHQuaCIKIAogbmFtZXNwYWNlIHJ4CkBAIC03OSw0
ICs4MCw5IEBAIGFuZ2xlOjpSZXN1bHQgQ29udGV4dEltcGw6OnJlbGVhc2VUZXh0dXJlcyhjb25z
dCBnbDo6Q29udGV4dCAqY29udGV4dCwKICAgICByZXR1cm4gYW5nbGU6OlJlc3VsdDo6U3RvcDsK
IH0KIAorY29uc3QgYW5nbGU6OlBlcmZNb25pdG9yQ291bnRlckdyb3VwcyAmQ29udGV4dEltcGw6
OmdldFBlcmZNb25pdG9yQ291bnRlcnMoKQoreworICAgIHN0YXRpYyBhbmdsZTo6YmFzZTo6Tm9E
ZXN0cnVjdG9yPGFuZ2xlOjpQZXJmTW9uaXRvckNvdW50ZXJHcm91cHM+IHNDb3VudGVyczsKKyAg
ICByZXR1cm4gKnNDb3VudGVyczsKK30KIH0gIC8vIG5hbWVzcGFjZSByeApkaWZmIC0tZ2l0IGEv
U291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL0NvbnRleHRJbXBs
LmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvQ29udGV4
dEltcGwuaAppbmRleCA2ODA2ODAyMWRkOWMzYWI5NzJlMjMyYTk3NThkZjEyZDYyNDdiYjRiLi42
MDhhYTlhZmFhNDkxNjA2NGMwYzZhMDRjZDhiZjA0OGIwYjY5MzdhIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvQ29udGV4dEltcGwuaAor
KysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvQ29udGV4
dEltcGwuaApAQCAtMTk0LDYgKzE5NCw5IEBAIGNsYXNzIENvbnRleHRJbXBsIDogcHVibGljIEdM
SW1wbEZhY3RvcnkKICAgICAvLyBFWFRfc2hhZGVyX2ZyYW1lYnVmZmVyX2ZldGNoX25vbl9jb2hl
cmVudAogICAgIHZpcnR1YWwgdm9pZCBmcmFtZWJ1ZmZlckZldGNoQmFycmllcigpIHt9CiAKKyAg
ICAvLyBLSFJfYmxlbmRfZXF1YXRpb25fYWR2YW5jZWQKKyAgICB2aXJ0dWFsIHZvaWQgYmxlbmRC
YXJyaWVyKCkge30KKwogICAgIC8vIFN0YXRlIHN5bmMgd2l0aCBkaXJ0eSBiaXRzLgogICAgIHZp
cnR1YWwgYW5nbGU6OlJlc3VsdCBzeW5jU3RhdGUoY29uc3QgZ2w6OkNvbnRleHQgKmNvbnRleHQs
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBnbDo6U3RhdGU6OkRp
cnR5Qml0cyAmZGlydHlCaXRzLApAQCAtMjU2LDYgKzI1OSw5IEBAIGNsYXNzIENvbnRleHRJbXBs
IDogcHVibGljIEdMSW1wbEZhY3RvcnkKICAgICB2aXJ0dWFsIGFuZ2xlOjpSZXN1bHQgcmVsZWFz
ZVRleHR1cmVzKGNvbnN0IGdsOjpDb250ZXh0ICpjb250ZXh0LAogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgZ2w6OlRleHR1cmVCYXJyaWVyVmVjdG9yICp0ZXh0dXJl
QmFycmllcnMpOwogCisgICAgLy8gQU1EX3BlcmZvcm1hbmNlX21vbml0b3IKKyAgICB2aXJ0dWFs
IGNvbnN0IGFuZ2xlOjpQZXJmTW9uaXRvckNvdW50ZXJHcm91cHMgJmdldFBlcmZNb25pdG9yQ291
bnRlcnMoKTsKKwogICBwcm90ZWN0ZWQ6CiAgICAgY29uc3QgZ2w6OlN0YXRlICZtU3RhdGU7CiAg
ICAgZ2w6Ok1lbW9yeVByb2dyYW1DYWNoZSAqbU1lbW9yeVByb2dyYW1DYWNoZTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9EaXNwbGF5
SW1wbC5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIv
RGlzcGxheUltcGwuY3BwCmluZGV4IGIzOGY5Y2E5Yjk3YTQ4NWU0ZDMyMzU4M2Q5MzI2Mzc0OWZl
M2M0ZTkuLmY2MDM2ZTdjNDk5ZjZmNDU1MDgwODY5NjRmNjgzY2QxNzJmYWJiZjUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9EaXNwbGF5
SW1wbC5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRl
cmVyL0Rpc3BsYXlJbXBsLmNwcApAQCAtNzQsNiArNzQsMTEgQEAgZWdsOjpFcnJvciBEaXNwbGF5
SW1wbDo6aGFuZGxlR1BVU3dpdGNoKCkKICAgICByZXR1cm4gZWdsOjpOb0Vycm9yKCk7CiB9CiAK
K2VnbDo6RXJyb3IgRGlzcGxheUltcGw6OmZvcmNlR1BVU3dpdGNoKEVHTGludCBncHVJREhpZ2gs
IEVHTGludCBncHVJRExvdykKK3sKKyAgICByZXR1cm4gZWdsOjpOb0Vycm9yKCk7Cit9CisKIGVn
bDo6RXJyb3IgRGlzcGxheUltcGw6OnZhbGlkYXRlQ2xpZW50QnVmZmVyKGNvbnN0IGVnbDo6Q29u
ZmlnICpjb25maWd1cmF0aW9uLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgRUdMZW51bSBidWZ0eXBlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgRUdMQ2xpZW50QnVmZmVyIGNsaWVudEJ1ZmZlciwKQEAgLTExNSw0ICsx
MjAsMzIgQEAgRGV2aWNlSW1wbCAqRGlzcGxheUltcGw6OmNyZWF0ZURldmljZSgpCiB7CiAgICAg
cmV0dXJuIG5ldyBNb2NrRGV2aWNlKCk7CiB9CisKK2Jvb2wgRGlzcGxheUltcGw6OmlzWDExKCkg
Y29uc3QKK3sKKyAgICByZXR1cm4gZmFsc2U7Cit9CisKK2Jvb2wgRGlzcGxheUltcGw6OnN1cHBv
cnRzRG1hQnVmRm9ybWF0KEVHTGludCBmb3JtYXQpIGNvbnN0Cit7CisgICAgVU5SRUFDSEFCTEUo
KTsKKyAgICByZXR1cm4gZmFsc2U7Cit9CisKK2VnbDo6RXJyb3IgRGlzcGxheUltcGw6OnF1ZXJ5
RG1hQnVmRm9ybWF0cyhFR0xpbnQgbWF4X2Zvcm1hdHMsIEVHTGludCAqZm9ybWF0cywgRUdMaW50
ICpudW1fZm9ybWF0cykKK3sKKyAgICBVTlJFQUNIQUJMRSgpOworICAgIHJldHVybiBlZ2w6Ok5v
RXJyb3IoKTsKK30KKworZWdsOjpFcnJvciBEaXNwbGF5SW1wbDo6cXVlcnlEbWFCdWZNb2RpZmll
cnMoRUdMaW50IGZvcm1hdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIEVHTGludCBtYXhfbW9kaWZpZXJzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgRUdMdWludDY0S0hSICptb2RpZmllcnMsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFR0xCb29sZWFuICpleHRlcm5hbF9vbmx5
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRUdMaW50ICpu
dW1fbW9kaWZpZXJzKQoreworICAgIFVOUkVBQ0hBQkxFKCk7CisgICAgcmV0dXJuIGVnbDo6Tm9F
cnJvcigpOworfQorCiB9ICAvLyBuYW1lc3BhY2UgcngKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9EaXNwbGF5SW1wbC5oIGIvU291cmNl
L1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL0Rpc3BsYXlJbXBsLmgKaW5k
ZXggMDg0NWE2Njg1NGFkZThkODE0ODkxMWU5NmJhMjAyMzhiNjg4NWU3Yy4uODc5YWJhNzI5MTk1
YmVjNzNiOGI4N2M4NDc5MWYzZTZiMWUxZWIyZSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL0Rpc3BsYXlJbXBsLmgKKysrIGIvU291cmNl
L1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL0Rpc3BsYXlJbXBsLmgKQEAg
LTEyMCw2ICsxMjAsMTcgQEAgY2xhc3MgRGlzcGxheUltcGwgOiBwdWJsaWMgRUdMSW1wbEZhY3Rv
cnksIHB1YmxpYyBhbmdsZTo6U3ViamVjdAogICAgIGNvbnN0IGVnbDo6RGlzcGxheVN0YXRlICZn
ZXRTdGF0ZSgpIGNvbnN0IHsgcmV0dXJuIG1TdGF0ZTsgfQogCiAgICAgdmlydHVhbCBlZ2w6OkVy
cm9yIGhhbmRsZUdQVVN3aXRjaCgpOworICAgIHZpcnR1YWwgZWdsOjpFcnJvciBmb3JjZUdQVVN3
aXRjaChFR0xpbnQgZ3B1SURIaWdoLCBFR0xpbnQgZ3B1SURMb3cpOworCisgICAgdmlydHVhbCBi
b29sIGlzWDExKCkgY29uc3Q7CisKKyAgICB2aXJ0dWFsIGJvb2wgc3VwcG9ydHNEbWFCdWZGb3Jt
YXQoRUdMaW50IGZvcm1hdCkgY29uc3Q7CisgICAgdmlydHVhbCBlZ2w6OkVycm9yIHF1ZXJ5RG1h
QnVmRm9ybWF0cyhFR0xpbnQgbWF4X2Zvcm1hdHMsIEVHTGludCAqZm9ybWF0cywgRUdMaW50ICpu
dW1fZm9ybWF0cyk7CisgICAgdmlydHVhbCBlZ2w6OkVycm9yIHF1ZXJ5RG1hQnVmTW9kaWZpZXJz
KEVHTGludCBmb3JtYXQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIEVHTGludCBtYXhfbW9kaWZpZXJzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBFR0x1aW50NjRLSFIgKm1vZGlmaWVycywKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgRUdMQm9vbGVhbiAqZXh0ZXJuYWxfb25seSwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRUdMaW50ICpudW1fbW9k
aWZpZXJzKTsKIAogICBwcm90ZWN0ZWQ6CiAgICAgY29uc3QgZWdsOjpEaXNwbGF5U3RhdGUgJm1T
dGF0ZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9y
ZW5kZXJlci9PdmVybGF5SW1wbC5oIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFO
R0xFL3JlbmRlcmVyL092ZXJsYXlJbXBsLmgKaW5kZXggNjc4MzNjY2VhOGQyOTE1ZjBjN2M5OGY0
NTJhNTI5MWFmZGI1YTU5NS4uZmMxYjFiMGQ1ODMxZWNmODU0N2YyZjQ2OWVlOWVhNWRhMjI4ZDgz
MSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRl
cmVyL092ZXJsYXlJbXBsLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFO
R0xFL3JlbmRlcmVyL092ZXJsYXlJbXBsLmgKQEAgLTMzLDE3ICszMywxMCBAQCBjbGFzcyBPdmVy
bGF5SW1wbCA6IGFuZ2xlOjpOb25Db3B5YWJsZQogCiAgICAgdmlydHVhbCB2b2lkIG9uRGVzdHJv
eShjb25zdCBnbDo6Q29udGV4dCAqY29udGV4dCkge30KIAotICAgIHZpcnR1YWwgYW5nbGU6OlJl
c3VsdCBpbml0KGNvbnN0IGdsOjpDb250ZXh0ICpjb250ZXh0LCBib29sICpzdWNjZXNzT3V0KTsK
LQogICBwcm90ZWN0ZWQ6CiAgICAgY29uc3QgZ2w6Ok92ZXJsYXlTdGF0ZSAmbVN0YXRlOwogfTsK
IAotaW5saW5lIGFuZ2xlOjpSZXN1bHQgT3ZlcmxheUltcGw6OmluaXQoY29uc3QgZ2w6OkNvbnRl
eHQgKmNvbnRleHQsIGJvb2wgKnN1Y2Nlc3NPdXQpCi17Ci0gICAgcmV0dXJuIGFuZ2xlOjpSZXN1
bHQ6OkNvbnRpbnVlOwotfQotCiB9ICAvLyBuYW1lc3BhY2UgcngKIAogI2VuZGlmICAvLyBMSUJB
TkdMRV9SRU5ERVJFUl9PVkVSTEFZSU1QTF9IXwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL1N1cmZhY2VJbXBsLmNwcCBiL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9TdXJmYWNlSW1wbC5jcHAKaW5k
ZXggNTczNDc1YTQ3NTlmNTUyMGVkYWVjMDYwOWY4MWRhZDBhNzAzOWQ0YS4uYWU2ZGZmYWU5OTc3
OGU1Yzc0MDc2NWU1MzY0YzY0YjA3ZjMwNzQ0NCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL1N1cmZhY2VJbXBsLmNwcAorKysgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvU3VyZmFjZUltcGwuY3Bw
CkBAIC0xMjEsOCArMTIxLDggQEAgZWdsOjpFcnJvciBTdXJmYWNlSW1wbDo6Z2V0VXNlckhlaWdo
dChjb25zdCBlZ2w6OkRpc3BsYXkgKmRpc3BsYXksIEVHTGludCAqdmFsdWUKIAogZWdsOjpFcnJv
ciBTdXJmYWNlSW1wbDo6Z2V0QnVmZmVyQWdlKGNvbnN0IGdsOjpDb250ZXh0ICpjb250ZXh0LCBF
R0xpbnQgKmFnZSkKIHsKLSAgICBVTlJFQUNIQUJMRSgpOwotICAgIHJldHVybiBlZ2w6OkVnbEJh
ZE1hdGNoKCk7CisgICAgKmFnZSA9IDA7CisgICAgcmV0dXJuIGVnbDo6Tm9FcnJvcigpOwogfQog
CiBlZ2w6OkVycm9yIFN1cmZhY2VJbXBsOjpsb2NrU3VyZmFjZShjb25zdCBlZ2w6OkRpc3BsYXkg
KmRpc3BsYXksCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5H
TEUvcmVuZGVyZXIvY29weXZlcnRleC5pbmMuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3Ny
Yy9saWJBTkdMRS9yZW5kZXJlci9jb3B5dmVydGV4LmluYy5oCmluZGV4IDM0ZjZjN2JjYzdmM2Jm
ZGMzODVkMTYyMDc3MGY1ZWNjOTA4NmRlODcuLjNmMTg0NGU5MWM2ZTNiYTkwMmM4Yzc5NWZiZmFm
NTRiOTEyYWEyYTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJB
TkdMRS9yZW5kZXJlci9jb3B5dmVydGV4LmluYy5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FO
R0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9jb3B5dmVydGV4LmluYy5oCkBAIC05LDYgKzksNDkg
QEAKIG5hbWVzcGFjZSByeAogewogCisvLyBSZXR1cm5zIGFuIGFsaWduZWQgYnVmZmVyIHRvIHJl
YWQgdGhlIGlucHV0IGZyb20KK3RlbXBsYXRlIDx0eXBlbmFtZSBULCBzaXplX3QgaW5wdXRDb21w
b25lbnRDb3VudD4KK2lubGluZSBjb25zdCBUICpHZXRBbGlnbmVkT2Zmc2V0SW5wdXQoY29uc3Qg
VCAqb2Zmc2V0SW5wdXQsIFQgKmFsaWduZWRFbGVtZW50KQoreworICAgIGlmIChyZWludGVycHJl
dF9jYXN0PHVpbnRwdHJfdD4ob2Zmc2V0SW5wdXQpICUgc2l6ZW9mKFQpICE9IDApCisgICAgewor
ICAgICAgICAvLyBBcHBsaWNhdGlvbnMgbWF5IHBhc3MgaW4gYXJiaXRyYXJpbHkgYWxpZ25lZCBi
dWZmZXJzIGFzIGlucHV0LgorICAgICAgICAvLyBDZXJ0YWluIGFyY2hpdGVjdHVyZXMgaGF2ZSBy
ZXN0cmljdGlvbnMgcmVnYXJkaW5nIHVuYWxpZ25lZCByZWFkcy4gU3BlY2lmaWNhbGx5LCB3ZSBj
cmFzaAorICAgICAgICAvLyBvbiBhcm1lYWJpLXY3YSBkZXZpY2VzIHdpdGggYSBTSUdCVVMgZXJy
b3Igd2hlbiBwZXJmb3JtaW5nIHN1Y2ggb3BlcmF0aW9ucy4gYXJtNjQgYW5kCisgICAgICAgIC8v
IHg4Ni02NCBkZXZpY2VzIGRvIG5vdCBhcHBlYXIgdG8gaGF2ZSBzdWNoIGlzc3Vlcy4KKyAgICAg
ICAgLy8KKyAgICAgICAgLy8gVGhlIHdvcmthcm91bmQgaXMgdG8gZGV0ZWN0IGlmIHRoZSBpbnB1
dCBidWZmZXIgaXMgdW5hbGlnbmVkIGFuZCBpZiBzbywgcGVyZm9ybSBhCisgICAgICAgIC8vIGJ5
dGUtd2lzZSBjb3B5IG9mIHRoZSB1bmFsaWduZWQgcG9ydGlvbiBhbmQgYSBtZW1jcHkgb2YgdGhl
IHJlc3Qgb2YgdGhlIGJ1ZmZlci4KKyAgICAgICAgdWludDhfdCAqYWxpZ25lZEJ1ZmZlciAgICAg
ICAgICAgICAgID0gcmVpbnRlcnByZXRfY2FzdDx1aW50OF90ICo+KCZhbGlnbmVkRWxlbWVudFsw
XSk7CisgICAgICAgIHVpbnRwdHJfdCB1bmFsaWduZWRJbnB1dFN0YXJ0QWRkcmVzcyA9IHJlaW50
ZXJwcmV0X2Nhc3Q8dWludHB0cl90PihvZmZzZXRJbnB1dCk7CisgICAgICAgIGNvbnN0ZXhwciBz
aXplX3Qga0FsaWdubWVudE1pbnVzT25lICA9IHNpemVvZihUKSAtIDE7CisgICAgICAgIHVpbnRw
dHJfdCBhbGlnbmVkSW5wdXRTdGFydEFkZHJlc3MgPQorICAgICAgICAgICAgKHJlaW50ZXJwcmV0
X2Nhc3Q8dWludHB0cl90PihvZmZzZXRJbnB1dCkgKyBrQWxpZ25tZW50TWludXNPbmUpICYgfihr
QWxpZ25tZW50TWludXNPbmUpOworICAgICAgICBBU1NFUlQoYWxpZ25lZElucHV0U3RhcnRBZGRy
ZXNzID49IHVuYWxpZ25lZElucHV0U3RhcnRBZGRyZXNzKTsKKworICAgICAgICBjb25zdCBzaXpl
X3QgdG90YWxCeXRlc1RvQ29weSAgICAgPSBzaXplb2YoVCkgKiBpbnB1dENvbXBvbmVudENvdW50
OworICAgICAgICBjb25zdCBzaXplX3QgdW5hbGlnbmVkQnl0ZXNUb0NvcHkgPSBhbGlnbmVkSW5w
dXRTdGFydEFkZHJlc3MgLSB1bmFsaWduZWRJbnB1dFN0YXJ0QWRkcmVzczsKKyAgICAgICAgQVNT
RVJUKHRvdGFsQnl0ZXNUb0NvcHkgPj0gdW5hbGlnbmVkQnl0ZXNUb0NvcHkpOworCisgICAgICAg
IC8vIGJ5dGUtd2lzZSBjb3B5IG9mIHVuYWxpZ25lZCBwb3J0aW9uCisgICAgICAgIGZvciAoc2l6
ZV90IGkgPSAwOyBpIDwgdW5hbGlnbmVkQnl0ZXNUb0NvcHk7IGkrKykKKyAgICAgICAgeworICAg
ICAgICAgICAgYWxpZ25lZEJ1ZmZlcltpXSA9IHJlaW50ZXJwcmV0X2Nhc3Q8Y29uc3QgdWludDhf
dCAqPigmb2Zmc2V0SW5wdXRbMF0pW2ldOworICAgICAgICB9CisKKyAgICAgICAgLy8gbWVtY3B5
IHJlbWFpbmluZyBidWZmZXIKKyAgICAgICAgbWVtY3B5KCZhbGlnbmVkQnVmZmVyW3VuYWxpZ25l
ZEJ5dGVzVG9Db3B5XSwKKyAgICAgICAgICAgICAgICZyZWludGVycHJldF9jYXN0PGNvbnN0IHVp
bnQ4X3QgKj4oJm9mZnNldElucHV0WzBdKVt1bmFsaWduZWRCeXRlc1RvQ29weV0sCisgICAgICAg
ICAgICAgICB0b3RhbEJ5dGVzVG9Db3B5IC0gdW5hbGlnbmVkQnl0ZXNUb0NvcHkpOworCisgICAg
ICAgIHJldHVybiBhbGlnbmVkRWxlbWVudDsKKyAgICB9CisgICAgZWxzZQorICAgIHsKKyAgICAg
ICAgcmV0dXJuIG9mZnNldElucHV0OworICAgIH0KK30KKwogdGVtcGxhdGUgPHR5cGVuYW1lIFQs
CiAgICAgICAgICAgc2l6ZV90IGlucHV0Q29tcG9uZW50Q291bnQsCiAgICAgICAgICAgc2l6ZV90
IG91dHB1dENvbXBvbmVudENvdW50LApAQCAtMjgsNyArNzEsMTEgQEAgaW5saW5lIHZvaWQgQ29w
eU5hdGl2ZVZlcnRleERhdGEoY29uc3QgdWludDhfdCAqaW5wdXQsIHNpemVfdCBzdHJpZGUsIHNp
emVfdCBjb3UKICAgICAgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBjb3VudDsgaSsrKQogICAg
ICAgICB7CiAgICAgICAgICAgICBjb25zdCBUICpvZmZzZXRJbnB1dCA9IHJlaW50ZXJwcmV0X2Nh
c3Q8Y29uc3QgVCAqPihpbnB1dCArIChpICogc3RyaWRlKSk7Ci0gICAgICAgICAgICBUICpvZmZz
ZXRPdXRwdXQgICAgICA9IHJlaW50ZXJwcmV0X2Nhc3Q8VCAqPihvdXRwdXQpICsgaSAqIG91dHB1
dENvbXBvbmVudENvdW50OworICAgICAgICAgICAgVCBvZmZzZXRJbnB1dEFsaWduZWRbaW5wdXRD
b21wb25lbnRDb3VudF07CisgICAgICAgICAgICBvZmZzZXRJbnB1dCA9CisgICAgICAgICAgICAg
ICAgR2V0QWxpZ25lZE9mZnNldElucHV0PFQsIGlucHV0Q29tcG9uZW50Q291bnQ+KG9mZnNldElu
cHV0LCAmb2Zmc2V0SW5wdXRBbGlnbmVkWzBdKTsKKworICAgICAgICAgICAgVCAqb2Zmc2V0T3V0
cHV0ID0gcmVpbnRlcnByZXRfY2FzdDxUICo+KG91dHB1dCkgKyBpICogb3V0cHV0Q29tcG9uZW50
Q291bnQ7CiAKICAgICAgICAgICAgIG1lbWNweShvZmZzZXRPdXRwdXQsIG9mZnNldElucHV0LCBh
dHRyaWJTaXplKTsKICAgICAgICAgfQpAQCAtNDEsNyArODgsMTIgQEAgaW5saW5lIHZvaWQgQ29w
eU5hdGl2ZVZlcnRleERhdGEoY29uc3QgdWludDhfdCAqaW5wdXQsIHNpemVfdCBzdHJpZGUsIHNp
emVfdCBjb3UKICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IGNvdW50OyBpKyspCiAgICAgewog
ICAgICAgICBjb25zdCBUICpvZmZzZXRJbnB1dCA9IHJlaW50ZXJwcmV0X2Nhc3Q8Y29uc3QgVCAq
PihpbnB1dCArIChpICogc3RyaWRlKSk7Ci0gICAgICAgIFQgKm9mZnNldE91dHB1dCAgICAgID0g
cmVpbnRlcnByZXRfY2FzdDxUICo+KG91dHB1dCkgKyBpICogb3V0cHV0Q29tcG9uZW50Q291bnQ7
CisgICAgICAgIFQgb2Zmc2V0SW5wdXRBbGlnbmVkW2lucHV0Q29tcG9uZW50Q291bnRdOworICAg
ICAgICBBU1NFUlQoc2l6ZW9mKG9mZnNldElucHV0QWxpZ25lZCkgPT0gYXR0cmliU2l6ZSk7Cisg
ICAgICAgIG9mZnNldElucHV0ID0KKyAgICAgICAgICAgIEdldEFsaWduZWRPZmZzZXRJbnB1dDxU
LCBpbnB1dENvbXBvbmVudENvdW50PihvZmZzZXRJbnB1dCwgJm9mZnNldElucHV0QWxpZ25lZFsw
XSk7CisKKyAgICAgICAgVCAqb2Zmc2V0T3V0cHV0ID0gcmVpbnRlcnByZXRfY2FzdDxUICo+KG91
dHB1dCkgKyBpICogb3V0cHV0Q29tcG9uZW50Q291bnQ7CiAKICAgICAgICAgbWVtY3B5KG9mZnNl
dE91dHB1dCwgb2Zmc2V0SW5wdXQsIGF0dHJpYlNpemUpOwogCkBAIC0xOTYsNiArMjQ4LDEwIEBA
IGlubGluZSB2b2lkIENvcHlUb0Zsb2F0VmVydGV4RGF0YShjb25zdCB1aW50OF90ICppbnB1dCwK
ICAgICAgICAgb3V0cHV0VHlwZSAqb2Zmc2V0T3V0cHV0ID0KICAgICAgICAgICAgIHJlaW50ZXJw
cmV0X2Nhc3Q8b3V0cHV0VHlwZSAqPihvdXRwdXQpICsgaSAqIG91dHB1dENvbXBvbmVudENvdW50
OwogCisgICAgICAgIFQgb2Zmc2V0SW5wdXRBbGlnbmVkW2lucHV0Q29tcG9uZW50Q291bnRdOwor
ICAgICAgICBvZmZzZXRJbnB1dCA9CisgICAgICAgICAgICBHZXRBbGlnbmVkT2Zmc2V0SW5wdXQ8
VCwgaW5wdXRDb21wb25lbnRDb3VudD4ob2Zmc2V0SW5wdXQsICZvZmZzZXRJbnB1dEFsaWduZWRb
MF0pOworCiAgICAgICAgIGZvciAoc2l6ZV90IGogPSAwOyBqIDwgaW5wdXRDb21wb25lbnRDb3Vu
dDsgaisrKQogICAgICAgICB7CiAgICAgICAgICAgICBmbG9hdCByZXN1bHQgPSAwOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2QzZC9U
ZXh0dXJlRDNELmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5k
ZXJlci9kM2QvVGV4dHVyZUQzRC5jcHAKaW5kZXggZWUyYTkyNGExOGE0YTFlMDcyZGU4ZjRiMDkz
YTVkNzA3ZWNlY2E5MC4uNGU3NTVlMjE3MjQ5OGVjNzZhYmE2MzIzOTViYmIxOWMxOWE3M2Q2NyAx
MDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVy
L2QzZC9UZXh0dXJlRDNELmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGli
QU5HTEUvcmVuZGVyZXIvZDNkL1RleHR1cmVEM0QuY3BwCkBAIC0xMTQ2LDYgKzExNDYsNyBAQCBh
bmdsZTo6UmVzdWx0IFRleHR1cmVEM0RfMkQ6OmNvcHlTdWJJbWFnZShjb25zdCBnbDo6Q29udGV4
dCAqY29udGV4dCwKICAgICAgICAgQU5HTEVfVFJZKG1JbWFnZUFycmF5W2luZGV4LmdldExldmVs
SW5kZXgoKV0tPmNvcHlGcm9tRnJhbWVidWZmZXIoY29udGV4dCwgY2xpcHBlZE9mZnNldCwKICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgY2xpcHBlZEFyZWEsIHNvdXJjZSkpOwogICAgICAgICBtRGlydHlJbWFn
ZXMgPSB0cnVlOworICAgICAgICBvblN0YXRlQ2hhbmdlKGFuZ2xlOjpTdWJqZWN0TWVzc2FnZTo6
RGlydHlCaXRzRmxhZ2dlZCk7CiAgICAgfQogICAgIGVsc2UKICAgICB7CkBAIC0xODU0LDYgKzE4
NTUsNyBAQCBhbmdsZTo6UmVzdWx0IFRleHR1cmVEM0RfQ3ViZTo6Y29weUltYWdlKGNvbnN0IGds
OjpDb250ZXh0ICpjb250ZXh0LAogICAgICAgICBBTkdMRV9UUlkobUltYWdlQXJyYXlbZmFjZUlu
ZGV4XVtpbmRleC5nZXRMZXZlbEluZGV4KCldLT5jb3B5RnJvbUZyYW1lYnVmZmVyKAogICAgICAg
ICAgICAgY29udGV4dCwgZGVzdE9mZnNldCwgY2xpcHBlZEFyZWEsIHNvdXJjZSkpOwogICAgICAg
ICBtRGlydHlJbWFnZXMgPSB0cnVlOworICAgICAgICBvblN0YXRlQ2hhbmdlKGFuZ2xlOjpTdWJq
ZWN0TWVzc2FnZTo6RGlydHlCaXRzRmxhZ2dlZCk7CiAgICAgfQogICAgIGVsc2UKICAgICB7CkBA
IC0xODk4LDYgKzE5MDAsNyBAQCBhbmdsZTo6UmVzdWx0IFRleHR1cmVEM0RfQ3ViZTo6Y29weVN1
YkltYWdlKGNvbnN0IGdsOjpDb250ZXh0ICpjb250ZXh0LAogICAgICAgICBBTkdMRV9UUlkobUlt
YWdlQXJyYXlbZmFjZUluZGV4XVtpbmRleC5nZXRMZXZlbEluZGV4KCldLT5jb3B5RnJvbUZyYW1l
YnVmZmVyKAogICAgICAgICAgICAgY29udGV4dCwgY2xpcHBlZE9mZnNldCwgY2xpcHBlZEFyZWEs
IHNvdXJjZSkpOwogICAgICAgICBtRGlydHlJbWFnZXMgPSB0cnVlOworICAgICAgICBvblN0YXRl
Q2hhbmdlKGFuZ2xlOjpTdWJqZWN0TWVzc2FnZTo6RGlydHlCaXRzRmxhZ2dlZCk7CiAgICAgfQog
ICAgIGVsc2UKICAgICB7CkBAIC0yNjI3LDYgKzI2MzAsNyBAQCBhbmdsZTo6UmVzdWx0IFRleHR1
cmVEM0RfM0Q6OmNvcHlTdWJJbWFnZShjb25zdCBnbDo6Q29udGV4dCAqY29udGV4dCwKICAgICBB
TkdMRV9UUlkobUltYWdlQXJyYXlbaW5kZXguZ2V0TGV2ZWxJbmRleCgpXS0+Y29weUZyb21GcmFt
ZWJ1ZmZlcihjb250ZXh0LCBjbGlwcGVkRGVzdE9mZnNldCwKICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGlwcGVk
U291cmNlQXJlYSwgc291cmNlKSk7CiAgICAgbURpcnR5SW1hZ2VzID0gdHJ1ZTsKKyAgICBvblN0
YXRlQ2hhbmdlKGFuZ2xlOjpTdWJqZWN0TWVzc2FnZTo6RGlydHlCaXRzRmxhZ2dlZCk7CiAKICAg
ICBpZiAoc3luY1RleFN0b3JhZ2UpCiAgICAgewpAQCAtMzMxNSw2ICszMzE5LDcgQEAgYW5nbGU6
OlJlc3VsdCBUZXh0dXJlRDNEXzJEQXJyYXk6OmNvcHlTdWJJbWFnZShjb25zdCBnbDo6Q29udGV4
dCAqY29udGV4dCwKICAgICAgICAgQU5HTEVfVFJZKG1JbWFnZUFycmF5W2luZGV4LmdldExldmVs
SW5kZXgoKV1bY2xpcHBlZERlc3RPZmZzZXQuel0tPmNvcHlGcm9tRnJhbWVidWZmZXIoCiAgICAg
ICAgICAgICBjb250ZXh0LCBkZXN0TGF5ZXJPZmZzZXQsIGNsaXBwZWRTb3VyY2VBcmVhLCBzb3Vy
Y2UpKTsKICAgICAgICAgbURpcnR5SW1hZ2VzID0gdHJ1ZTsKKyAgICAgICAgb25TdGF0ZUNoYW5n
ZShhbmdsZTo6U3ViamVjdE1lc3NhZ2U6OkRpcnR5Qml0c0ZsYWdnZWQpOwogICAgIH0KICAgICBl
bHNlCiAgICAgewpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFO
R0xFL3JlbmRlcmVyL2QzZC9kM2QxMS9yZW5kZXJlcjExX3V0aWxzLmNwcCBiL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9kM2QvZDNkMTEvcmVuZGVyZXIxMV91
dGlscy5jcHAKaW5kZXggZmQ4NDhmMDgzMDcxZWIzMzgwZGIzZWZjMDJjNGJiZWQ1ODY0ZjY0ZC4u
NGYyYjc1NjBmM2QxZTc3OTQwZTVlNzdmZjc1YWFkNTFjNWYzM2EwNCAxMDA2NDQKLS0tIGEvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2QzZC9kM2QxMS9yZW5k
ZXJlcjExX3V0aWxzLmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5H
TEUvcmVuZGVyZXIvZDNkL2QzZDExL3JlbmRlcmVyMTFfdXRpbHMuY3BwCkBAIC0xNzAzLDYgKzE3
MDMsOSBAQCB2b2lkIEdlbmVyYXRlQ2FwcyhJRDNEMTFEZXZpY2UgKmRldmljZSwKICAgICAvLyBE
M0QxMSBkb2VzIG5vdCBzdXBwb3J0IHZlcnRleCBhdHRyaWJ1dGUgYWxpYXNpbmcKICAgICBsaW1p
dGF0aW9ucy0+bm9WZXJ0ZXhBdHRyaWJ1dGVBbGlhc2luZyA9IHRydWU7CiAKKyAgICAvLyBEM0Qx
MSBkb2VzIG5vdCBzdXBwb3J0IGNvbXByZXNzZWQgdGV4dHVyZXMgd2hlcmUgdGhlIGJhc2UgbWlw
IGxldmVsIGlzIG5vdCBhIG11bHRpcGxlIG9mIDQKKyAgICBsaW1pdGF0aW9ucy0+Y29tcHJlc3Nl
ZEJhc2VNaXBMZXZlbE11bHRpcGxlT2ZGb3VyID0gdHJ1ZTsKKwogI2lmZGVmIEFOR0xFX0VOQUJM
RV9XSU5ET1dTX1VXUAogICAgIC8vIFNldHRpbmcgYSBub24temVybyBkaXZpc29yIG9uIGF0dHJp
YnV0ZSB6ZXJvIGRvZXNuJ3Qgd29yayBvbiBjZXJ0YWluIFdpbmRvd3MgUGhvbmUgOC1lcmEKICAg
ICAvLyBkZXZpY2VzLiBXZSBzaG91bGQgcHJldmVudCBkZXZlbG9wZXJzIGZyb20gZG9pbmcgdGhp
cyBvbiBBTEwgV2luZG93cyBTdG9yZSBkZXZpY2VzLiBUaGlzIHdpbGwKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9kM2QvZDNkOS9yZW5k
ZXJlcjlfdXRpbHMuY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3Jl
bmRlcmVyL2QzZC9kM2Q5L3JlbmRlcmVyOV91dGlscy5jcHAKaW5kZXggZjM5OWFkM2Y3YzhiNzY4
ZmJhNzczNDdmNmM4MTUwNTIyZTQ4M2EwNC4uNDhmYTQ4NGRmNzI4ZDBlYzg1MzdkNjg4MDViMTE1
NWQ1MDRjNGU2NyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFO
R0xFL3JlbmRlcmVyL2QzZC9kM2Q5L3JlbmRlcmVyOV91dGlscy5jcHAKKysrIGIvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2QzZC9kM2Q5L3JlbmRlcmVyOV91
dGlscy5jcHAKQEAgLTc4Niw2ICs3ODYsOSBAQCB2b2lkIEdlbmVyYXRlQ2FwcyhJRGlyZWN0M0Q5
ICpkM2Q5LAogCiAgICAgLy8gRDNEOSBkb2VzIG5vdCBzdXBwb3J0IHZlcnRleCBhdHRyaWJ1dGUg
YWxpYXNpbmcKICAgICBsaW1pdGF0aW9ucy0+bm9WZXJ0ZXhBdHRyaWJ1dGVBbGlhc2luZyA9IHRy
dWU7CisKKyAgICAvLyBEM0Q5IGRvZXMgbm90IHN1cHBvcnQgY29tcHJlc3NlZCB0ZXh0dXJlcyB3
aGVyZSB0aGUgYmFzZSBtaXAgbGV2ZWwgaXMgbm90IGEgbXVsdGlwbGUgb2YgNAorICAgIGxpbWl0
YXRpb25zLT5jb21wcmVzc2VkQmFzZU1pcExldmVsTXVsdGlwbGVPZkZvdXIgPSB0cnVlOwogfQog
CiB9ICAvLyBuYW1lc3BhY2UgZDNkOV9nbApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9EaXNwbGF5Q0dMLmggYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0Rpc3BsYXlDR0wu
aAppbmRleCBhN2JjYjQ2ZjkyMGE1Y2JhNWQ4NjVlZTVhZjM1NDhiZTFmNGYzYjAxLi45YzlmYjll
YzA1YWZkZWM2OWMyMTYwOGYyYzkwOTZlZGUwY2UxNzM5IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0Rpc3BsYXlDR0wuaAor
KysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2ds
L0Rpc3BsYXlDR0wuaApAQCAtMTA1LDYgKzEwNSw3IEBAIGNsYXNzIERpc3BsYXlDR0wgOiBwdWJs
aWMgRGlzcGxheUdMCiAgICAgZWdsOjpFcnJvciByZWZlcmVuY2VEaXNjcmV0ZUdQVSgpOwogICAg
IGVnbDo6RXJyb3IgdW5yZWZlcmVuY2VEaXNjcmV0ZUdQVSgpOwogICAgIGVnbDo6RXJyb3IgaGFu
ZGxlR1BVU3dpdGNoKCkgb3ZlcnJpZGU7CisgICAgZWdsOjpFcnJvciBmb3JjZUdQVVN3aXRjaChF
R0xpbnQgZ3B1SURIaWdoLCBFR0xpbnQgZ3B1SURMb3cpIG92ZXJyaWRlOwogCiAgIHByaXZhdGU6
CiAgICAgZWdsOjpFcnJvciBtYWtlQ3VycmVudFN1cmZhY2VsZXNzKGdsOjpDb250ZXh0ICpjb250
ZXh0KSBvdmVycmlkZTsKQEAgLTExMyw2ICsxMTQsNyBAQCBjbGFzcyBEaXNwbGF5Q0dMIDogcHVi
bGljIERpc3BsYXlHTAogICAgIHZvaWQgZ2VuZXJhdGVDYXBzKGVnbDo6Q2FwcyAqb3V0Q2Fwcykg
Y29uc3Qgb3ZlcnJpZGU7CiAKICAgICB2b2lkIGNoZWNrRGlzY3JldGVHUFVTdGF0dXMoKTsKKyAg
ICB2b2lkIHNldENvbnRleHRUb0dQVSh1aW50NjRfdCBncHVJRCwgR0xpbnQgdmlydHVhbFNjcmVl
bik7CiAKICAgICBzdGQ6OnNoYXJlZF9wdHI8UmVuZGVyZXJHTD4gbVJlbmRlcmVyOwogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wv
Y2dsL0Rpc3BsYXlDR0wubW0gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUv
cmVuZGVyZXIvZ2wvY2dsL0Rpc3BsYXlDR0wubW0KaW5kZXggODk0ZTdlNmMzM2Y0YWUxYTE1NTZm
ODBiN2E3YzE3NmNlOGUxNTJjMi4uNzU0MmQ2N2Q0ZGM0NjRhNmU3NDJhMWUzMzU4NzY4ZTI0Y2Yx
ZjRmNCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3Jl
bmRlcmVyL2dsL2NnbC9EaXNwbGF5Q0dMLm1tCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvRGlzcGxheUNHTC5tbQpAQCAtNTAsOSArNTAs
OCBAQCB1c2luZyBJT1JlZ2lzdHJ5R1BVSUQgPSB1aW50NjRfdDsKIC8vIENvZGUgZnJvbSBXZWJL
aXQgdG8gc2V0IGFuIE9wZW5HTCBjb250ZXh0IHRvIHVzZSBhIHBhcnRpY3VsYXIgR1BVIGJ5IElE
LgogLy8gaHR0cHM6Ly90cmFjLndlYmtpdC5vcmcvYnJvd3Nlci93ZWJraXQvdHJ1bmsvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvR3JhcGhpY3NDb250ZXh0R0xPcGVuR0xD
b2NvYS5tbQogLy8gVXNlZCB3aXRoIHBlcm1pc3Npb24uCi1zdGF0aWMgdm9pZCBTZXRHUFVCeVJl
Z2lzdHJ5SUQoQ0dMQ29udGV4dE9iaiBjb250ZXh0T2JqLAotICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIENHTFBpeGVsRm9ybWF0T2JqIHBpeGVsRm9ybWF0T2JqLAotICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIElPUmVnaXN0cnlHUFVJRCBwcmVmZXJyZWRHUFVJRCkKK3N0YXRp
YyBzdGQ6Om9wdGlvbmFsPEdMaW50PiBHZXRWaXJ0dWFsU2NyZWVuQnlSZWdpc3RyeUlEKENHTFBp
eGVsRm9ybWF0T2JqIHBpeGVsRm9ybWF0T2JqLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSU9SZWdpc3RyeUdQVUlEIGdwdUlEKQogewog
ICAgIGlmIChAYXZhaWxhYmxlKG1hY09TIDEwLjEzLCAqKSkKICAgICB7CkBAIC02Miw1MSArNjEs
NjUgQEAgc3RhdGljIHZvaWQgU2V0R1BVQnlSZWdpc3RyeUlEKENHTENvbnRleHRPYmogY29udGV4
dE9iaiwKICAgICAgICAgLy8gcmVnaXN0cnlJRC4gQ0dMU2V0VmlydHVhbFNjcmVlbiBjYW4gdGhl
biBiZSB1c2VkIHRvIHRlbGwgT3BlbkdMIHdoaWNoIEdQVSBpdCBzaG91bGQgYmUKICAgICAgICAg
Ly8gdXNpbmcuCiAKLSAgICAgICAgaWYgKCFjb250ZXh0T2JqIHx8ICFwcmVmZXJyZWRHUFVJRCkK
LSAgICAgICAgICAgIHJldHVybjsKLQogICAgICAgICBHTGludCB2aXJ0dWFsU2NyZWVuQ291bnQg
PSAwOwogICAgICAgICBDR0xFcnJvciBlcnJvciA9IENHTERlc2NyaWJlUGl4ZWxGb3JtYXQocGl4
ZWxGb3JtYXRPYmosIDAsIGtDR0xQRkFWaXJ0dWFsU2NyZWVuQ291bnQsCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmdmlydHVhbFNjcmVlbkNvdW50KTsK
LSAgICAgICAgQVNTRVJUKGVycm9yID09IGtDR0xOb0Vycm9yKTsKLQotICAgICAgICBHTGludCBm
aXJzdEFjY2VsZXJhdGVkU2NyZWVuID0gLTE7CisgICAgICAgIGlmIChlcnJvciAhPSBrQ0dMTm9F
cnJvcikKKyAgICAgICAgeworICAgICAgICAgICAgTk9UUkVBQ0hFRCgpOworICAgICAgICAgICAg
cmV0dXJuIHN0ZDo6bnVsbG9wdDsKKyAgICAgICAgfQogCiAgICAgICAgIGZvciAoR0xpbnQgdmly
dHVhbFNjcmVlbiA9IDA7IHZpcnR1YWxTY3JlZW4gPCB2aXJ0dWFsU2NyZWVuQ291bnQ7ICsrdmly
dHVhbFNjcmVlbikKICAgICAgICAgewogICAgICAgICAgICAgR0xpbnQgZGlzcGxheU1hc2sgPSAw
OwogICAgICAgICAgICAgZXJyb3IgPSBDR0xEZXNjcmliZVBpeGVsRm9ybWF0KHBpeGVsRm9ybWF0
T2JqLCB2aXJ0dWFsU2NyZWVuLCBrQ0dMUEZBRGlzcGxheU1hc2ssCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgJmRpc3BsYXlNYXNrKTsKLSAgICAgICAgICAgIEFT
U0VSVChlcnJvciA9PSBrQ0dMTm9FcnJvcik7Ci0KLSAgICAgICAgICAgIGF1dG8gZ3B1SUQgPSBh
bmdsZTo6R2V0R3B1SURGcm9tT3BlbkdMRGlzcGxheU1hc2soZGlzcGxheU1hc2spOwotCi0gICAg
ICAgICAgICBpZiAoZ3B1SUQgPT0gcHJlZmVycmVkR1BVSUQpCisgICAgICAgICAgICBpZiAoZXJy
b3IgIT0ga0NHTE5vRXJyb3IpCiAgICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgZXJyb3Ig
PSBDR0xTZXRWaXJ0dWFsU2NyZWVuKGNvbnRleHRPYmosIHZpcnR1YWxTY3JlZW4pOwotICAgICAg
ICAgICAgICAgIEFTU0VSVChlcnJvciA9PSBrQ0dMTm9FcnJvcik7Ci0gICAgICAgICAgICAgICAg
ZnByaW50ZihzdGRlcnIsICJDb250ZXh0ICglcCkgc2V0IHRvIEdQVSB3aXRoIElEOiAoJWxsZCku
IiwgY29udGV4dE9iaiwgZ3B1SUQpOwotICAgICAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAg
ICAgICAgICBOT1RSRUFDSEVEKCk7CisgICAgICAgICAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9w
dDsKICAgICAgICAgICAgIH0KIAotICAgICAgICAgICAgaWYgKGZpcnN0QWNjZWxlcmF0ZWRTY3Jl
ZW4gPCAwKQorICAgICAgICAgICAgYXV0byB2aXJ0dWFsU2NyZWVuR1BVSUQgPSBhbmdsZTo6R2V0
R3B1SURGcm9tT3BlbkdMRGlzcGxheU1hc2soZGlzcGxheU1hc2spOworICAgICAgICAgICAgaWYg
KHZpcnR1YWxTY3JlZW5HUFVJRCA9PSBncHVJRCkKICAgICAgICAgICAgIHsKLSAgICAgICAgICAg
ICAgICBHTGludCBpc0FjY2VsZXJhdGVkID0gMDsKLSAgICAgICAgICAgICAgICBlcnJvciA9IENH
TERlc2NyaWJlUGl4ZWxGb3JtYXQocGl4ZWxGb3JtYXRPYmosIHZpcnR1YWxTY3JlZW4sIGtDR0xQ
RkFBY2NlbGVyYXRlZCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgJmlzQWNjZWxlcmF0ZWQpOwotICAgICAgICAgICAgICAgIEFTU0VSVChlcnJvciA9PSBr
Q0dMTm9FcnJvcik7Ci0gICAgICAgICAgICAgICAgaWYgKGlzQWNjZWxlcmF0ZWQpCi0gICAgICAg
ICAgICAgICAgICAgIGZpcnN0QWNjZWxlcmF0ZWRTY3JlZW4gPSB2aXJ0dWFsU2NyZWVuOworICAg
ICAgICAgICAgICAgIHJldHVybiB2aXJ0dWFsU2NyZWVuOwogICAgICAgICAgICAgfQogICAgICAg
ICB9CisgICAgfQorICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7Cit9CiAKLSAgICAgICAgLy8gTm8g
cmVnaXN0cnlJRCBtYXRjaCBmb3VuZDsgc2V0IHRvIGZpcnN0IGhhcmR3YXJlLWFjY2VsZXJhdGVk
IHZpcnR1YWwgc2NyZWVuLgotICAgICAgICBpZiAoZmlyc3RBY2NlbGVyYXRlZFNjcmVlbiA+PSAw
KQorc3RhdGljIHN0ZDo6b3B0aW9uYWw8R0xpbnQ+IEdldEZpcnN0QWNjZWxlcmF0ZWRWaXJ0dWFs
U2NyZWVuKENHTFBpeGVsRm9ybWF0T2JqIHBpeGVsRm9ybWF0T2JqKQoreworICAgIGlmIChAYXZh
aWxhYmxlKG1hY09TIDEwLjEzLCAqKSkKKyAgICB7CisgICAgICAgIEdMaW50IHZpcnR1YWxTY3Jl
ZW5Db3VudCA9IDA7CisgICAgICAgIENHTEVycm9yIGVycm9yID0gQ0dMRGVzY3JpYmVQaXhlbEZv
cm1hdChwaXhlbEZvcm1hdE9iaiwgMCwga0NHTFBGQVZpcnR1YWxTY3JlZW5Db3VudCwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZ2aXJ0dWFsU2NyZWVu
Q291bnQpOworICAgICAgICBpZiAoZXJyb3IgIT0ga0NHTE5vRXJyb3IpCisgICAgICAgIHsKKyAg
ICAgICAgICAgIE5PVFJFQUNIRUQoKTsKKyAgICAgICAgICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7
CisgICAgICAgIH0KKyAgICAgICAgZm9yIChHTGludCB2aXJ0dWFsU2NyZWVuID0gMDsgdmlydHVh
bFNjcmVlbiA8IHZpcnR1YWxTY3JlZW5Db3VudDsgKyt2aXJ0dWFsU2NyZWVuKQogICAgICAgICB7
Ci0gICAgICAgICAgICBlcnJvciA9IENHTFNldFZpcnR1YWxTY3JlZW4oY29udGV4dE9iaiwgZmly
c3RBY2NlbGVyYXRlZFNjcmVlbik7Ci0gICAgICAgICAgICBBU1NFUlQoZXJyb3IgPT0ga0NHTE5v
RXJyb3IpOworICAgICAgICAgICAgR0xpbnQgaXNBY2NlbGVyYXRlZCA9IDA7CisgICAgICAgICAg
ICBlcnJvciA9IENHTERlc2NyaWJlUGl4ZWxGb3JtYXQocGl4ZWxGb3JtYXRPYmosIHZpcnR1YWxT
Y3JlZW4sIGtDR0xQRkFBY2NlbGVyYXRlZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAmaXNBY2NlbGVyYXRlZCk7CisgICAgICAgICAgICBpZiAoZXJyb3IgIT0g
a0NHTE5vRXJyb3IpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgTk9UUkVBQ0hFRCgp
OworICAgICAgICAgICAgICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7CisgICAgICAgICAgICB9Cisg
ICAgICAgICAgICBpZiAoaXNBY2NlbGVyYXRlZCkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAg
ICAgICByZXR1cm4gdmlydHVhbFNjcmVlbjsKKyAgICAgICAgICAgIH0KICAgICAgICAgfQogICAg
IH0KKyAgICByZXR1cm4gc3RkOjpudWxsb3B0OwogfQogCiB9ICAvLyBhbm9ueW1vdXMgbmFtZXNw
YWNlCkBAIC02NTAsMjIgKzY2Myw1NiBAQCBlZ2w6OkVycm9yIERpc3BsYXlDR0w6OmhhbmRsZUdQ
VVN3aXRjaCgpCiAgICAgICAgIHVpbnQ2NF90IGdwdUlEID0gYW5nbGU6OkdldEdwdUlERnJvbURp
c3BsYXlJRChrQ0dEaXJlY3RNYWluRGlzcGxheSk7CiAgICAgICAgIGlmIChncHVJRCAhPSBtQ3Vy
cmVudEdQVUlEKQogICAgICAgICB7Ci0gICAgICAgICAgICBTZXRHUFVCeVJlZ2lzdHJ5SUQobUNv
bnRleHQsIG1QaXhlbEZvcm1hdCwgZ3B1SUQpOwotICAgICAgICAgICAgLy8gUGVyZm9ybWluZyB0
aGUgYWJvdmUgb3BlcmF0aW9uIHNlZW1zIHRvIG5lZWQgYSBjYWxsIHRvIENHTFNldEN1cnJlbnRD
b250ZXh0IHRvIG1ha2UKLSAgICAgICAgICAgIC8vIHRoZSBjb250ZXh0IHdvcmsgcHJvcGVybHkg
YWdhaW4uIEZhaWxpbmcgdG8gZG8gdGhpcyByZXR1cm5zIG51bGwgc3RyaW5ncyBmb3IKLSAgICAg
ICAgICAgIC8vIEdMX1ZFTkRPUiBhbmQgR0xfUkVOREVSRVIuCi0gICAgICAgICAgICBDR0xVcGRh
dGVDb250ZXh0KG1Db250ZXh0KTsKLSAgICAgICAgICAgIENHTFNldEN1cnJlbnRDb250ZXh0KG1D
b250ZXh0KTsKLSAgICAgICAgICAgIG9uU3RhdGVDaGFuZ2UoYW5nbGU6OlN1YmplY3RNZXNzYWdl
OjpTdWJqZWN0Q2hhbmdlZCk7Ci0gICAgICAgICAgICBtQ3VycmVudEdQVUlEID0gZ3B1SUQ7Ci0K
LSAgICAgICAgICAgIG1SZW5kZXJlci0+aGFuZGxlR1BVU3dpdGNoKCk7CisgICAgICAgICAgICBh
dXRvIHZpcnR1YWxTY3JlZW4gPSBHZXRWaXJ0dWFsU2NyZWVuQnlSZWdpc3RyeUlEKG1QaXhlbEZv
cm1hdCwgZ3B1SUQpOworICAgICAgICAgICAgaWYgKCF2aXJ0dWFsU2NyZWVuKQorICAgICAgICAg
ICAgeworICAgICAgICAgICAgICAgIHZpcnR1YWxTY3JlZW4gPSBHZXRGaXJzdEFjY2VsZXJhdGVk
VmlydHVhbFNjcmVlbihtUGl4ZWxGb3JtYXQpOworICAgICAgICAgICAgfQorICAgICAgICAgICAg
aWYgKHZpcnR1YWxTY3JlZW4pCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgc2V0Q29u
dGV4dFRvR1BVKGdwdUlELCAqdmlydHVhbFNjcmVlbik7CisgICAgICAgICAgICB9CiAgICAgICAg
IH0KICAgICB9CiAKICAgICByZXR1cm4gZWdsOjpOb0Vycm9yKCk7CiB9CiAKK2VnbDo6RXJyb3Ig
RGlzcGxheUNHTDo6Zm9yY2VHUFVTd2l0Y2goRUdMaW50IGdwdUlESGlnaCwgRUdMaW50IGdwdUlE
TG93KQoreworICAgIGlmIChtU3VwcG9ydHNHUFVTd2l0Y2hpbmcpCisgICAgeworICAgICAgICB1
aW50NjRfdCBncHVJRCA9IHN0YXRpY19jYXN0PHVpbnQ2NF90PihzdGF0aWNfY2FzdDx1aW50MzJf
dD4oZ3B1SURIaWdoKSkgPDwgMzIgfAorICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRpY19j
YXN0PHVpbnQzMl90PihncHVJRExvdyk7CisgICAgICAgIGlmIChncHVJRCAhPSBtQ3VycmVudEdQ
VUlEKQorICAgICAgICB7CisgICAgICAgICAgICBhdXRvIHZpcnR1YWxTY3JlZW4gPSBHZXRWaXJ0
dWFsU2NyZWVuQnlSZWdpc3RyeUlEKG1QaXhlbEZvcm1hdCwgZ3B1SUQpOworICAgICAgICAgICAg
aWYgKHZpcnR1YWxTY3JlZW4pCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgc2V0Q29u
dGV4dFRvR1BVKGdwdUlELCAqdmlydHVhbFNjcmVlbik7CisgICAgICAgICAgICB9CisgICAgICAg
IH0KKyAgICB9CisgICAgcmV0dXJuIGVnbDo6Tm9FcnJvcigpOworfQorCit2b2lkIERpc3BsYXlD
R0w6OnNldENvbnRleHRUb0dQVSh1aW50NjRfdCBncHVJRCwgR0xpbnQgdmlydHVhbFNjcmVlbikK
K3sKKyAgICBDR0xFcnJvciBlcnJvciA9IENHTFNldFZpcnR1YWxTY3JlZW4obUNvbnRleHQsIHZp
cnR1YWxTY3JlZW4pOworICAgIEFTU0VSVChlcnJvciA9PSBrQ0dMTm9FcnJvcik7CisgICAgaWYg
KGVycm9yID09IGtDR0xOb0Vycm9yKQorICAgIHsKKyAgICAgICAgLy8gUGVyZm9ybWluZyB0aGUg
YWJvdmUgb3BlcmF0aW9uIHNlZW1zIHRvIG5lZWQgYSBjYWxsIHRvIENHTFNldEN1cnJlbnRDb250
ZXh0IHRvIG1ha2UKKyAgICAgICAgLy8gdGhlIGNvbnRleHQgd29yayBwcm9wZXJseSBhZ2Fpbi4g
RmFpbGluZyB0byBkbyB0aGlzIHJldHVybnMgbnVsbCBzdHJpbmdzIGZvcgorICAgICAgICAvLyBH
TF9WRU5ET1IgYW5kIEdMX1JFTkRFUkVSLgorICAgICAgICBDR0xVcGRhdGVDb250ZXh0KG1Db250
ZXh0KTsKKyAgICAgICAgQ0dMU2V0Q3VycmVudENvbnRleHQobUNvbnRleHQpOworICAgICAgICBv
blN0YXRlQ2hhbmdlKGFuZ2xlOjpTdWJqZWN0TWVzc2FnZTo6U3ViamVjdENoYW5nZWQpOworICAg
ICAgICBtQ3VycmVudEdQVUlEID0gZ3B1SUQ7CisgICAgICAgIG1SZW5kZXJlci0+aGFuZGxlR1BV
U3dpdGNoKCk7CisgICAgfQorfQorCiB9ICAvLyBuYW1lc3BhY2UgcngKIAogI2VuZGlmICAvLyBk
ZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ09TKSB8fCBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01B
Q0NBVEFMWVNUKQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFO
R0xFL3JlbmRlcmVyL2dsL2dseC9EaXNwbGF5R0xYLmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FO
R0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9nbHgvRGlzcGxheUdMWC5jcHAKaW5kZXggY2Q1
NDI4YzI4YmRhNjkyZDg4NzE5NWNjM2IzYzM3MGUyODRkZmE1NC4uYmZlYjU3OWQxYTI3YjdmNDU2
YTEzMDdjNmRiZDNkMGQ5ZDJiYjc1NCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2dseC9EaXNwbGF5R0xYLmNwcAorKysgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZ2x4L0Rpc3BsYXlH
TFguY3BwCkBAIC0xMDc5LDQgKzEwNzksOSBAQCBSZW5kZXJlckdMICpEaXNwbGF5R0xYOjpnZXRS
ZW5kZXJlcigpIGNvbnN0CiAgICAgcmV0dXJuIG1SZW5kZXJlci5nZXQoKTsKIH0KIAorYm9vbCBE
aXNwbGF5R0xYOjppc1gxMSgpIGNvbnN0Cit7CisgICAgcmV0dXJuIHRydWU7Cit9CisKIH0gIC8v
IG5hbWVzcGFjZSByeApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xp
YkFOR0xFL3JlbmRlcmVyL2dsL2dseC9EaXNwbGF5R0xYLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZ2x4L0Rpc3BsYXlHTFguaAppbmRleCBjMGQx
Y2JjYTI1ZjAwMGNjNWY3MzI0OGRjMzkxY2YyNTFlMGRkZWFiLi5mMTA1MTU2ZWQ2NzBkMTU5Njk2
YTQ3MTAzOGUwY2I3NjRiZDgwYmQwIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZ2x4L0Rpc3BsYXlHTFguaAorKysgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZ2x4L0Rpc3BsYXlHTFgu
aApAQCAtMTAwLDYgKzEwMCw4IEBAIGNsYXNzIERpc3BsYXlHTFggOiBwdWJsaWMgRGlzcGxheUdM
CiAKICAgICBSZW5kZXJlckdMICpnZXRSZW5kZXJlcigpIGNvbnN0IG92ZXJyaWRlOwogCisgICAg
Ym9vbCBpc1gxMSgpIGNvbnN0IG92ZXJyaWRlOworCiAgIHByaXZhdGU6CiAgICAgZWdsOjpFcnJv
ciBpbml0aWFsaXplQ29udGV4dChnbHg6OkZCQ29uZmlnIGNvbmZpZywKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGNvbnN0IGVnbDo6QXR0cmlidXRlTWFwICZlZ2xBdHRyaWJ1dGVz
LApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRl
cmVyL2dsc2xhbmdfd3JhcHBlcl91dGlscy5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9z
cmMvbGliQU5HTEUvcmVuZGVyZXIvZ2xzbGFuZ193cmFwcGVyX3V0aWxzLmNwcAppbmRleCBlMWY0
NWJjNWEwNjU2NTYxYjkyMjVhOWI4ODUwZDQ0ZWQwNjFjMWNmLi5lY2VkMGNlMmJmYjlhYTZhYjRl
ZTEzNzMyNmFkOTM5ZTEzM2JjNTM5IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2xzbGFuZ193cmFwcGVyX3V0aWxzLmNwcAorKysgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2xzbGFuZ193cmFw
cGVyX3V0aWxzLmNwcApAQCAtMzQzNyw2ICszNDM3LDkgQEAgVHJhbnNmb3JtYXRpb25TdGF0ZSBT
cGlydlRyYW5zZm9ybWVyOjp0cmFuc2Zvcm1EZWNvcmF0ZShjb25zdCB1aW50MzJfdCAqaW5zdHJ1
Y3QKICAgICAgICAgICAgICAgICBtWGZiQ29kZUdlbmVyYXRvci5hZGRNZW1iZXJEZWNvcmF0ZSgq
aW5mbywgaWQsIG1TcGlydkJsb2JPdXQpOwogICAgICAgICAgICAgfQogICAgICAgICAgICAgYnJl
YWs7CisgICAgICAgIGNhc2Ugc3B2OjpEZWNvcmF0aW9uSW52YXJpYW50OgorICAgICAgICAgICAg
c3BpcnY6OldyaXRlRGVjb3JhdGUobVNwaXJ2QmxvYk91dCwgaWQsIHNwdjo6RGVjb3JhdGlvbklu
dmFyaWFudCwge30pOworICAgICAgICAgICAgcmV0dXJuIFRyYW5zZm9ybWF0aW9uU3RhdGU6OlRy
YW5zZm9ybWVkOwogICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgYnJlYWs7CiAgICAgfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVy
L21ldGFsL0NvbnRleHRNdGwuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdM
RS9yZW5kZXJlci9tZXRhbC9Db250ZXh0TXRsLmgKaW5kZXggMjFiMDRiNGNmNWY0ZGIxZTgwYWYy
MGRmM2Y0YWJmOTU4NTFkOTRhMy4uMGY2YWI5NzVhZjUyZmI5OWQ3NjNiMTY3YTY5OWY3MTMxY2I2
ZDJmMCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3Jl
bmRlcmVyL21ldGFsL0NvbnRleHRNdGwuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9z
cmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvQ29udGV4dE10bC5oCkBAIC00MDAsMTEgKzQwMCwx
MyBAQCBjbGFzcyBDb250ZXh0TXRsIDogcHVibGljIENvbnRleHRJbXBsLCBwdWJsaWMgbXRsOjpD
b250ZXh0CiAgICAgYW5nbGU6OlJlc3VsdCBkcmF3VHJpRmFuQXJyYXlzKGNvbnN0IGdsOjpDb250
ZXh0ICpjb250ZXh0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTGludCBm
aXJzdCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBjb3VudCwK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBpbnN0YW5jZXMpOwor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHNpemVpIGluc3RhbmNlcywKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50IGJhc2VJbnN0YW5jZSk7CiAg
ICAgYW5nbGU6OlJlc3VsdCBkcmF3VHJpRmFuQXJyYXlzV2l0aEJhc2VWZXJ0ZXgoY29uc3QgZ2w6
OkNvbnRleHQgKmNvbnRleHQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgR0xpbnQgZmlyc3QsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgR0xzaXplaSBjb3VudCwKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBHTHNpemVpIGluc3RhbmNlcyk7CisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBpbnN0YW5jZXMs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50
IGJhc2VJbnN0YW5jZSk7CiAgICAgYW5nbGU6OlJlc3VsdCBkcmF3VHJpRmFuQXJyYXlzTGVnYWN5
KGNvbnN0IGdsOjpDb250ZXh0ICpjb250ZXh0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBHTGludCBmaXJzdCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgR0xzaXplaSBjb3VudCwKQEAgLTQxMyw3ICs0MTUsOSBAQCBjbGFzcyBDb250
ZXh0TXRsIDogcHVibGljIENvbnRleHRJbXBsLCBwdWJsaWMgbXRsOjpDb250ZXh0CiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBjb3VudCwKICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBnbDo6RHJhd0VsZW1lbnRzVHlwZSB0eXBlLAogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHZvaWQgKmluZGljZXMsCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBpbnN0YW5jZXMpOwor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgaW5zdGFuY2VzLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMaW50IGJhc2VWZXJ0ZXgsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50IGJhc2VJbnN0YW5jZSk7
CiAKICAgICBhbmdsZTo6UmVzdWx0IGRyYXdMaW5lTG9vcEFycmF5c05vbkluc3RhbmNlZChjb25z
dCBnbDo6Q29udGV4dCAqY29udGV4dCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBHTGludCBmaXJzdCwKQEAgLTQyMSw3ICs0MjUsOCBAQCBjbGFzcyBD
b250ZXh0TXRsIDogcHVibGljIENvbnRleHRJbXBsLCBwdWJsaWMgbXRsOjpDb250ZXh0CiAgICAg
YW5nbGU6OlJlc3VsdCBkcmF3TGluZUxvb3BBcnJheXMoY29uc3QgZ2w6OkNvbnRleHQgKmNvbnRl
eHQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xpbnQgZmlyc3QsCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBjb3VudCwKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHNpemVpIGluc3RhbmNlcyk7CisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBpbnN0YW5jZXMsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50IGJhc2VJbnN0YW5jZSk7CiAg
ICAgYW5nbGU6OlJlc3VsdCBkcmF3TGluZUxvb3BFbGVtZW50c05vbkluc3RhbmNlZE5vUHJpbWl0
aXZlUmVzdGFydChjb25zdCBnbDo6Q29udGV4dCAqY29udGV4dCwKICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6
ZWkgY291bnQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBnbDo6RHJhd0VsZW1lbnRzVHlwZSB0eXBlLApAQCAtNDMw
LDI2ICs0MzUsMzIgQEAgY2xhc3MgQ29udGV4dE10bCA6IHB1YmxpYyBDb250ZXh0SW1wbCwgcHVi
bGljIG10bDo6Q29udGV4dAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
R0xzaXplaSBjb3VudCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGds
OjpEcmF3RWxlbWVudHNUeXBlIHR5cGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBjb25zdCB2b2lkICppbmRpY2VzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgR0xzaXplaSBpbnN0YW5jZXMpOworICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgR0xzaXplaSBpbnN0YW5jZXMsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBHTGludCBiYXNlVmVydGV4LAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgR0x1aW50IGJhc2VJbnN0YW5jZSk7CiAKICAgICBhbmdsZTo6UmVz
dWx0IGRyYXdBcnJheXNQcm92b2tpbmdWZXJ0ZXhJbXBsKGNvbnN0IGdsOjpDb250ZXh0ICpjb250
ZXh0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2w6
OlByaW1pdGl2ZU1vZGUgbW9kZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIEdMc2l6ZWkgZmlyc3QsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBHTHNpemVpIGNvdW50LAotICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBpbnN0YW5jZXMpOworICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBpbnN0YW5jZXMs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVpbnQg
YmFzZUluc3RhbmNlKTsKIAogICAgIGFuZ2xlOjpSZXN1bHQgZHJhd0FycmF5c0ltcGwoY29uc3Qg
Z2w6OkNvbnRleHQgKmNvbnRleHQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBn
bDo6UHJpbWl0aXZlTW9kZSBtb2RlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
R0xpbnQgZmlyc3QsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHNpemVpIGNv
dW50LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBpbnN0YW5jZUNv
dW50KTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgaW5zdGFuY2VD
b3VudCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMdWludCBiYXNlSW5zdGFu
Y2UpOwogCiAgICAgYW5nbGU6OlJlc3VsdCBkcmF3RWxlbWVudHNJbXBsKGNvbnN0IGdsOjpDb250
ZXh0ICpjb250ZXh0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnbDo6UHJp
bWl0aXZlTW9kZSBtb2RlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHNp
emVpIGNvdW50LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnbDo6RHJhd0Vs
ZW1lbnRzVHlwZSB0eXBlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25z
dCB2b2lkICppbmRpY2VzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHNp
emVpIGluc3RhbmNlQ291bnQpOworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBH
THNpemVpIGluc3RhbmNlQ291bnQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IEdMaW50IGJhc2VWZXJ0ZXgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdM
dWludCBiYXNlSW5zdGFuY2UpOwogICAgIHZvaWQgZmx1c2hDb21tYW5kQnVmZmVySWZOZWVkZWQo
KTsKICAgICB2b2lkIHVwZGF0ZUV4dGVuZGVkU3RhdGUoY29uc3QgZ2w6OlN0YXRlICZnbFN0YXRl
KTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3Jl
bmRlcmVyL21ldGFsL0NvbnRleHRNdGwubW0gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
bGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvQ29udGV4dE10bC5tbQppbmRleCA4MWVkOGEzZDRkNWJk
NzllNTNjOWVjNjdiMTNiMTlkZTQ3NzBkYjA5Li5lOTFmNzY3NGNhODlhODc5OGY0MjM1YjJkM2E5
MGE4N2E5MGY5NWE1IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGli
QU5HTEUvcmVuZGVyZXIvbWV0YWwvQ29udGV4dE10bC5tbQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvQ29udGV4dE10bC5tbQpAQCAtMjkz
LDcgKzI5Myw4IEBAIGFuZ2xlOjpSZXN1bHQgQ29udGV4dE10bDo6ZmluaXNoKGNvbnN0IGdsOjpD
b250ZXh0ICpjb250ZXh0KQogYW5nbGU6OlJlc3VsdCBDb250ZXh0TXRsOjpkcmF3VHJpRmFuQXJy
YXlzV2l0aEJhc2VWZXJ0ZXgoY29uc3QgZ2w6OkNvbnRleHQgKmNvbnRleHQsCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTGludCBmaXJz
dCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIEdMc2l6ZWkgY291bnQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBHTHNpemVpIGluc3RhbmNlcykKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgaW5zdGFuY2Vz
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgR0x1aW50IGJhc2VJbnN0YW5jZSkKIHsKICAgICBBU1NFUlQoKGdldERpc3BsYXkoKS0+Z2V0
RmVhdHVyZXMoKS5oYXNCYXNlVmVydGV4SW5zdGFuY2VkRHJhdy5lbmFibGVkKSk7CiAKQEAgLTMy
MCw5ICszMjEsOSBAQCBhbmdsZTo6UmVzdWx0IENvbnRleHRNdGw6OmRyYXdUcmlGYW5BcnJheXNX
aXRoQmFzZVZlcnRleChjb25zdCBnbDo6Q29udGV4dCAqY29udAogCiAgICAgLy8gRHJhdyB3aXRo
IHRoZSB6ZXJvIHN0YXJ0aW5nIGluZGV4IGJ1ZmZlciwgc2hpZnQgdGhlIHZlcnRleCBpbmRleCB1
c2luZyBiYXNlVmVydGV4IGluc3RhbmNlZAogICAgIC8vIGRyYXc6Ci0gICAgbVJlbmRlckVuY29k
ZXIuZHJhd0luZGV4ZWRJbnN0YW5jZWRCYXNlVmVydGV4KE1UTFByaW1pdGl2ZVR5cGVUcmlhbmds
ZSwgZ2VuSW5kaWNlc0NvdW50LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBNVExJbmRleFR5cGVVSW50MzIsIG1UcmlGYW5BcnJheXNJbmRleEJ1ZmZl
ciwgMCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
aW5zdGFuY2VzLCBmaXJzdCk7CisgICAgbVJlbmRlckVuY29kZXIuZHJhd0luZGV4ZWRJbnN0YW5j
ZWRCYXNlVmVydGV4QmFzZUluc3RhbmNlKAorICAgICAgICBNVExQcmltaXRpdmVUeXBlVHJpYW5n
bGUsIGdlbkluZGljZXNDb3VudCwgTVRMSW5kZXhUeXBlVUludDMyLCBtVHJpRmFuQXJyYXlzSW5k
ZXhCdWZmZXIsIDAsCisgICAgICAgIGluc3RhbmNlcywgZmlyc3QsIGJhc2VJbnN0YW5jZSk7CiAK
ICAgICByZXR1cm4gYW5nbGU6OlJlc3VsdDo6Q29udGludWU7CiB9CkBAIC0zNTgsMTUgKzM1OSwx
NiBAQCBhbmdsZTo6UmVzdWx0IENvbnRleHRNdGw6OmRyYXdUcmlGYW5BcnJheXNMZWdhY3koY29u
c3QgZ2w6OkNvbnRleHQgKmNvbnRleHQsCiBhbmdsZTo6UmVzdWx0IENvbnRleHRNdGw6OmRyYXdU
cmlGYW5BcnJheXMoY29uc3QgZ2w6OkNvbnRleHQgKmNvbnRleHQsCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xpbnQgZmlyc3QsCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBjb3VudCwKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHNpemVpIGluc3RhbmNlcykKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHNpemVpIGluc3RhbmNlcywKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVpbnQgYmFzZUluc3Rh
bmNlKQogewotICAgIGlmIChjb3VudCA8PSAzKQorICAgIGlmIChjb3VudCA8PSAzICYmIGJhc2VJ
bnN0YW5jZSA9PSAwKQogICAgIHsKICAgICAgICAgcmV0dXJuIGRyYXdBcnJheXNJbnN0YW5jZWQo
Y29udGV4dCwgZ2w6OlByaW1pdGl2ZU1vZGU6OlRyaWFuZ2xlcywgZmlyc3QsIGNvdW50LCBpbnN0
YW5jZXMpOwogICAgIH0KICAgICBpZiAoZ2V0RGlzcGxheSgpLT5nZXRGZWF0dXJlcygpLmhhc0Jh
c2VWZXJ0ZXhJbnN0YW5jZWREcmF3LmVuYWJsZWQpCiAgICAgewotICAgICAgICByZXR1cm4gZHJh
d1RyaUZhbkFycmF5c1dpdGhCYXNlVmVydGV4KGNvbnRleHQsIGZpcnN0LCBjb3VudCwgaW5zdGFu
Y2VzKTsKKyAgICAgICAgcmV0dXJuIGRyYXdUcmlGYW5BcnJheXNXaXRoQmFzZVZlcnRleChjb250
ZXh0LCBmaXJzdCwgY291bnQsIGluc3RhbmNlcywgYmFzZUluc3RhbmNlKTsKICAgICB9CiAgICAg
cmV0dXJuIGRyYXdUcmlGYW5BcnJheXNMZWdhY3koY29udGV4dCwgZmlyc3QsIGNvdW50LCBpbnN0
YW5jZXMpOwogfQpAQCAtMzgyLDE1ICszODQsMTYgQEAgYW5nbGU6OlJlc3VsdCBDb250ZXh0TXRs
OjpkcmF3TGluZUxvb3BBcnJheXNOb25JbnN0YW5jZWQoY29uc3QgZ2w6OkNvbnRleHQgKmNvbnQK
ICAgICBBTkdMRV9UUlkobGluZWxvb3BIZWxwZXIuYmVnaW4oY29udGV4dCwgJm1MaW5lTG9vcExh
c3RTZWdtZW50SW5kZXhCdWZmZXIsIGZpcnN0LCBjb3VudCwKICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgZ2w6OkRyYXdFbGVtZW50c1R5cGU6OkludmFsaWRFbnVtLCBudWxscHRy
KSk7CiAKLSAgICByZXR1cm4gZHJhd0FycmF5c0ltcGwoY29udGV4dCwgZ2w6OlByaW1pdGl2ZU1v
ZGU6OkxpbmVTdHJpcCwgZmlyc3QsIGNvdW50LCAwKTsKKyAgICByZXR1cm4gZHJhd0FycmF5c0lt
cGwoY29udGV4dCwgZ2w6OlByaW1pdGl2ZU1vZGU6OkxpbmVTdHJpcCwgZmlyc3QsIGNvdW50LCAw
LCAwKTsKIH0KIAogYW5nbGU6OlJlc3VsdCBDb250ZXh0TXRsOjpkcmF3TGluZUxvb3BBcnJheXMo
Y29uc3QgZ2w6OkNvbnRleHQgKmNvbnRleHQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBHTGludCBmaXJzdCwKICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgY291bnQsCi0gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBHTHNpemVpIGluc3RhbmNlcykKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgaW5zdGFuY2VzLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50IGJhc2VJbnN0YW5j
ZSkKIHsKLSAgICBpZiAoaW5zdGFuY2VzIDw9IDEpCisgICAgaWYgKGluc3RhbmNlcyA8PSAxICYm
IGJhc2VJbnN0YW5jZSA9PSAwKQogICAgIHsKICAgICAgICAgcmV0dXJuIGRyYXdMaW5lTG9vcEFy
cmF5c05vbkluc3RhbmNlZChjb250ZXh0LCBmaXJzdCwgY291bnQpOwogICAgIH0KQEAgLTQxMiw5
ICs0MTUsMTggQEAgYW5nbGU6OlJlc3VsdCBDb250ZXh0TXRsOjpkcmF3TGluZUxvb3BBcnJheXMo
Y29uc3QgZ2w6OkNvbnRleHQgKmNvbnRleHQsCiAgICAgQU5HTEVfVFJZKHNldHVwRHJhdyhjb250
ZXh0LCBnbDo6UHJpbWl0aXZlTW9kZTo6TGluZUxvb3AsIGZpcnN0LCBjb3VudCwgaW5zdGFuY2Vz
LAogICAgICAgICAgICAgICAgICAgICAgICAgZ2w6OkRyYXdFbGVtZW50c1R5cGU6OkludmFsaWRF
bnVtLCBudWxscHRyLCBmYWxzZSkpOwogCi0gICAgbVJlbmRlckVuY29kZXIuZHJhd0luZGV4ZWRJ
bnN0YW5jZWQoTVRMUHJpbWl0aXZlVHlwZUxpbmVTdHJpcCwgZ2VuSW5kaWNlc0NvdW50LAotICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1UTEluZGV4VHlwZVVJbnQzMiwg
Z2VuSWR4QnVmZmVyLCBnZW5JZHhCdWZmZXJPZmZzZXQsCi0gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgaW5zdGFuY2VzKTsKKyAgICBpZiAoYmFzZUluc3RhbmNlID09IDAp
CisgICAgeworICAgICAgICBtUmVuZGVyRW5jb2Rlci5kcmF3SW5kZXhlZEluc3RhbmNlZChNVExQ
cmltaXRpdmVUeXBlTGluZVN0cmlwLCBnZW5JbmRpY2VzQ291bnQsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1UTEluZGV4VHlwZVVJbnQzMiwgZ2VuSWR4QnVm
ZmVyLCBnZW5JZHhCdWZmZXJPZmZzZXQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGluc3RhbmNlcyk7CisgICAgfQorICAgIGVsc2UKKyAgICB7CisgICAgICAg
IG1SZW5kZXJFbmNvZGVyLmRyYXdJbmRleGVkSW5zdGFuY2VkQmFzZVZlcnRleEJhc2VJbnN0YW5j
ZSgKKyAgICAgICAgICAgIE1UTFByaW1pdGl2ZVR5cGVMaW5lU3RyaXAsIGdlbkluZGljZXNDb3Vu
dCwgTVRMSW5kZXhUeXBlVUludDMyLCBnZW5JZHhCdWZmZXIsCisgICAgICAgICAgICBnZW5JZHhC
dWZmZXJPZmZzZXQsIGluc3RhbmNlcywgMCwgYmFzZUluc3RhbmNlKTsKKyAgICB9CiAKICAgICBy
ZXR1cm4gYW5nbGU6OlJlc3VsdDo6Q29udGludWU7CiB9CkBAIC00MjMsNyArNDM1LDggQEAgYW5n
bGU6OlJlc3VsdCBDb250ZXh0TXRsOjpkcmF3QXJyYXlzSW1wbChjb25zdCBnbDo6Q29udGV4dCAq
Y29udGV4dCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2w6OlBy
aW1pdGl2ZU1vZGUgbW9kZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgR0xpbnQgZmlyc3QsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IEdMc2l6ZWkgY291bnQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IEdMc2l6ZWkgaW5zdGFuY2VzKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBHTHNpemVpIGluc3RhbmNlcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgR0x1aW50IGJhc2VJbnN0YW5jZSkKIHsKICAgICAvLyBSZWFsIGluc3RhbmNlcyBj
b3VudC4gWmVybyBtZWFucyB0aGlzIGlzIG5vdCBpbnN0YW5jZWQgZHJhdy4KICAgICBHTHNpemVp
IGluc3RhbmNlQ291bnQgPSBpbnN0YW5jZXMgPyBpbnN0YW5jZXMgOiAxOwpAQCAtNDM0LDE1ICs0
NDcsMTUgQEAgYW5nbGU6OlJlc3VsdCBDb250ZXh0TXRsOjpkcmF3QXJyYXlzSW1wbChjb25zdCBn
bDo6Q29udGV4dCAqY29udGV4dCwKICAgICB9CiAgICAgaWYgKHJlcXVpcmVzSW5kZXhSZXdyaXRl
KGNvbnRleHQtPmdldFN0YXRlKCksIG1vZGUpKQogICAgIHsKLSAgICAgICAgcmV0dXJuIGRyYXdB
cnJheXNQcm92b2tpbmdWZXJ0ZXhJbXBsKGNvbnRleHQsIG1vZGUsIGZpcnN0LCBjb3VudCwgaW5z
dGFuY2VzKTsKKyAgICAgICAgcmV0dXJuIGRyYXdBcnJheXNQcm92b2tpbmdWZXJ0ZXhJbXBsKGNv
bnRleHQsIG1vZGUsIGZpcnN0LCBjb3VudCwgaW5zdGFuY2VzLCBiYXNlSW5zdGFuY2UpOwogICAg
IH0KICAgICBpZiAobW9kZSA9PSBnbDo6UHJpbWl0aXZlTW9kZTo6VHJpYW5nbGVGYW4pCiAgICAg
ewotICAgICAgICByZXR1cm4gZHJhd1RyaUZhbkFycmF5cyhjb250ZXh0LCBmaXJzdCwgY291bnQs
IGluc3RhbmNlQ291bnQpOworICAgICAgICByZXR1cm4gZHJhd1RyaUZhbkFycmF5cyhjb250ZXh0
LCBmaXJzdCwgY291bnQsIGluc3RhbmNlQ291bnQsIGJhc2VJbnN0YW5jZSk7CiAgICAgfQogICAg
IGVsc2UgaWYgKG1vZGUgPT0gZ2w6OlByaW1pdGl2ZU1vZGU6OkxpbmVMb29wKQogICAgIHsKLSAg
ICAgICAgcmV0dXJuIGRyYXdMaW5lTG9vcEFycmF5cyhjb250ZXh0LCBmaXJzdCwgY291bnQsIGlu
c3RhbmNlQ291bnQpOworICAgICAgICByZXR1cm4gZHJhd0xpbmVMb29wQXJyYXlzKGNvbnRleHQs
IGZpcnN0LCBjb3VudCwgaW5zdGFuY2VDb3VudCwgYmFzZUluc3RhbmNlKTsKICAgICB9CiAKICAg
ICBNVExQcmltaXRpdmVUeXBlIG10bFR5cGUgPSBtdGw6OkdldFByaW1pdGl2ZVR5cGUobW9kZSk7
CkBAIC00NTgsNyArNDcxLDE1IEBAIGFuZ2xlOjpSZXN1bHQgQ29udGV4dE10bDo6ZHJhd0FycmF5
c0ltcGwoY29uc3QgZ2w6OkNvbnRleHQgKmNvbnRleHQsCiAgICAgfSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBcCiAgICAgZWxzZSAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBcCiAgICAgeyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0g
ICAgICAgIG1SZW5kZXJFbmNvZGVyLmRyYXdJbnN0YW5jZWQobXRsVHlwZSwgZmlyc3QsIGNvdW50
LCBpbnN0YW5jZUNvdW50KTsgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgIGlmIChi
YXNlSW5zdGFuY2UgPT0gMCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgIHsgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBcCisgICAgICAgICAgICBtUmVuZGVyRW5jb2Rlci5kcmF3SW5zdGFu
Y2VkKG10bFR5cGUsIGZpcnN0LCBjb3VudCwgaW5zdGFuY2VDb3VudCk7ICAgICAgICAgICAgICAg
ICAgICBcCisgICAgICAgIH0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAg
ICAgIGVsc2UgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgIHsgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgICAgICBtUmVuZGVyRW5jb2Rlci5k
cmF3SW5zdGFuY2VkQmFzZUluc3RhbmNlKG10bFR5cGUsIGZpcnN0LCBjb3VudCwgaW5zdGFuY2VD
b3VudCwgICAgICAgICBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGJhc2VJbnN0YW5jZSk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBcCisgICAgICAgIH0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgfQog
CiAgICAgQU5HTEVfTVRMX1hGQl9EUkFXKERSQVdfR0VORVJJQ19BUlJBWSkKQEAgLTQ3MSw3ICs0
OTIsNyBAQCBhbmdsZTo6UmVzdWx0IENvbnRleHRNdGw6OmRyYXdBcnJheXMoY29uc3QgZ2w6OkNv
bnRleHQgKmNvbnRleHQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xp
bnQgZmlyc3QsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBj
b3VudCkKIHsKLSAgICByZXR1cm4gZHJhd0FycmF5c0ltcGwoY29udGV4dCwgbW9kZSwgZmlyc3Qs
IGNvdW50LCAwKTsKKyAgICByZXR1cm4gZHJhd0FycmF5c0ltcGwoY29udGV4dCwgbW9kZSwgZmly
c3QsIGNvdW50LCAwLCAwKTsKIH0KIAogYW5nbGU6OlJlc3VsdCBDb250ZXh0TXRsOjpkcmF3QXJy
YXlzSW5zdGFuY2VkKGNvbnN0IGdsOjpDb250ZXh0ICpjb250ZXh0LApAQCAtNDgwLDExICs1MDEs
MTAgQEAgYW5nbGU6OlJlc3VsdCBDb250ZXh0TXRsOjpkcmF3QXJyYXlzSW5zdGFuY2VkKGNvbnN0
IGdsOjpDb250ZXh0ICpjb250ZXh0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIEdMc2l6ZWkgY291bnQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgR0xzaXplaSBpbnN0YW5jZXMpCiB7Ci0gICAgaWYgKGluc3RhbmNl
cyA9PSAwKQotICAgIHsKLSAgICAgICAgcmV0dXJuIGFuZ2xlOjpSZXN1bHQ6OkNvbnRpbnVlOwot
ICAgIH0KLSAgICByZXR1cm4gZHJhd0FycmF5c0ltcGwoY29udGV4dCwgbW9kZSwgZmlyc3QsIGNv
dW50LCBpbnN0YW5jZXMpOworICAgIC8vIEluc3RhbmNlZCBkcmF3IGNhbGxzIHdpdGggemVybyBp
bnN0YW5jZXMgYXJlIHNraXBwZWQgaW4gdGhlIGZyb250ZW5kLgorICAgIC8vIFRoZSBkcmF3QXJy
YXlzSW1wbCBmdW5jdGlvbiB3b3VsZCB0cmVhdCB0aGVtIGFzIG5vbi1pbnN0YW5jZWQuCisgICAg
QVNTRVJUKGluc3RhbmNlcyA+IDApOworICAgIHJldHVybiBkcmF3QXJyYXlzSW1wbChjb250ZXh0
LCBtb2RlLCBmaXJzdCwgY291bnQsIGluc3RhbmNlcywgMCk7CiB9CiAKIGFuZ2xlOjpSZXN1bHQg
Q29udGV4dE10bDo6ZHJhd0FycmF5c0luc3RhbmNlZEJhc2VJbnN0YW5jZShjb25zdCBnbDo6Q29u
dGV4dCAqY29udGV4dCwKQEAgLTQ5NCwxNSArNTE0LDE5IEBAIGFuZ2xlOjpSZXN1bHQgQ29udGV4
dE10bDo6ZHJhd0FycmF5c0luc3RhbmNlZEJhc2VJbnN0YW5jZShjb25zdCBnbDo6Q29udGV4dCAq
Y29uCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgR0xzaXplaSBpbnN0YW5jZUNvdW50LAogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMdWludCBiYXNlSW5zdGFuY2UpCiB7Ci0g
ICAgVU5JTVBMRU1FTlRFRCgpOwotICAgIHJldHVybiBhbmdsZTo6UmVzdWx0OjpTdG9wOworICAg
IC8vIEluc3RhbmNlZCBkcmF3IGNhbGxzIHdpdGggemVybyBpbnN0YW5jZXMgYXJlIHNraXBwZWQg
aW4gdGhlIGZyb250ZW5kLgorICAgIC8vIFRoZSBkcmF3QXJyYXlzSW1wbCBmdW5jdGlvbiB3b3Vs
ZCB0cmVhdCB0aGVtIGFzIG5vbi1pbnN0YW5jZWQuCisgICAgQVNTRVJUKGluc3RhbmNlQ291bnQg
PiAwKTsKKyAgICByZXR1cm4gZHJhd0FycmF5c0ltcGwoY29udGV4dCwgbW9kZSwgZmlyc3QsIGNv
dW50LCBpbnN0YW5jZUNvdW50LCBiYXNlSW5zdGFuY2UpOwogfQogCiBhbmdsZTo6UmVzdWx0IENv
bnRleHRNdGw6OmRyYXdUcmlGYW5FbGVtZW50cyhjb25zdCBnbDo6Q29udGV4dCAqY29udGV4dCwK
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgY291
bnQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnbDo6RHJh
d0VsZW1lbnRzVHlwZSB0eXBlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgY29uc3Qgdm9pZCAqaW5kaWNlcywKLSAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgaW5zdGFuY2VzKQorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBpbnN0YW5jZXMsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTGludCBiYXNlVmVydGV4LAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50IGJhc2VJbnN0
YW5jZSkKIHsKICAgICBpZiAoY291bnQgPiAzKQogICAgIHsKQEAgLTUyMiwxNCArNTQ2LDMyIEBA
IGFuZ2xlOjpSZXN1bHQgQ29udGV4dE10bDo6ZHJhd1RyaUZhbkVsZW1lbnRzKGNvbnN0IGdsOjpD
b250ZXh0ICpjb250ZXh0LAogICAgICAgICBBTkdMRV9UUlkoc2V0dXBEcmF3KGNvbnRleHQsIGds
OjpQcmltaXRpdmVNb2RlOjpUcmlhbmdsZUZhbiwgMCwgY291bnQsIGluc3RhbmNlcywgdHlwZSwK
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbmRpY2VzLCBmYWxzZSkpOwogCi0gICAgICAg
IG1SZW5kZXJFbmNvZGVyLmRyYXdJbmRleGVkSW5zdGFuY2VkKE1UTFByaW1pdGl2ZVR5cGVUcmlh
bmdsZSwgZ2VuSW5kaWNlc0NvdW50LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBNVExJbmRleFR5cGVVSW50MzIsIGdlbklkeEJ1ZmZlciwgZ2VuSWR4QnVmZmVy
T2Zmc2V0LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnN0
YW5jZXMpOworICAgICAgICBpZiAoYmFzZVZlcnRleCA9PSAwICYmIGJhc2VJbnN0YW5jZSA9PSAw
KQorICAgICAgICB7CisgICAgICAgICAgICBtUmVuZGVyRW5jb2Rlci5kcmF3SW5kZXhlZEluc3Rh
bmNlZChNVExQcmltaXRpdmVUeXBlVHJpYW5nbGUsIGdlbkluZGljZXNDb3VudCwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1UTEluZGV4VHlwZVVJbnQz
MiwgZ2VuSWR4QnVmZmVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgZ2VuSWR4QnVmZmVyT2Zmc2V0LCBpbnN0YW5jZXMpOworICAgICAgICB9CisgICAg
ICAgIGVsc2UKKyAgICAgICAgeworICAgICAgICAgICAgbVJlbmRlckVuY29kZXIuZHJhd0luZGV4
ZWRJbnN0YW5jZWRCYXNlVmVydGV4QmFzZUluc3RhbmNlKAorICAgICAgICAgICAgICAgIE1UTFBy
aW1pdGl2ZVR5cGVUcmlhbmdsZSwgZ2VuSW5kaWNlc0NvdW50LCBNVExJbmRleFR5cGVVSW50MzIs
IGdlbklkeEJ1ZmZlciwKKyAgICAgICAgICAgICAgICBnZW5JZHhCdWZmZXJPZmZzZXQsIGluc3Rh
bmNlcywgYmFzZVZlcnRleCwgYmFzZUluc3RhbmNlKTsKKyAgICAgICAgfQogCiAgICAgICAgIHJl
dHVybiBhbmdsZTo6UmVzdWx0OjpDb250aW51ZTsKICAgICB9ICAvLyBpZiAoY291bnQgPiAzKQot
ICAgIHJldHVybiBkcmF3RWxlbWVudHNJbnN0YW5jZWQoY29udGV4dCwgZ2w6OlByaW1pdGl2ZU1v
ZGU6OlRyaWFuZ2xlcywgY291bnQsIHR5cGUsIGluZGljZXMsCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBpbnN0YW5jZXMpOworICAgIGlmIChiYXNlVmVydGV4ID09IDAgJiYgYmFz
ZUluc3RhbmNlID09IDApCisgICAgeworICAgICAgICByZXR1cm4gZHJhd0VsZW1lbnRzSW5zdGFu
Y2VkKGNvbnRleHQsIGdsOjpQcmltaXRpdmVNb2RlOjpUcmlhbmdsZXMsIGNvdW50LCB0eXBlLCBp
bmRpY2VzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluc3RhbmNlcyk7
CisgICAgfQorICAgIGVsc2UKKyAgICB7CisgICAgICAgIHJldHVybiBkcmF3RWxlbWVudHNJbnN0
YW5jZWRCYXNlVmVydGV4QmFzZUluc3RhbmNlKGNvbnRleHQsIGdsOjpQcmltaXRpdmVNb2RlOjpU
cmlhbmdsZXMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGNvdW50LCB0eXBlLCBpbmRpY2VzLCBpbnN0YW5jZXMsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhc2VWZXJ0
ZXgsIGJhc2VJbnN0YW5jZSk7CisgICAgfQogfQogCiBhbmdsZTo6UmVzdWx0IENvbnRleHRNdGw6
OmRyYXdMaW5lTG9vcEVsZW1lbnRzTm9uSW5zdGFuY2VkTm9QcmltaXRpdmVSZXN0YXJ0KApAQCAt
NTQ0LDE5ICs1ODYsMjEgQEAgYW5nbGU6OlJlc3VsdCBDb250ZXh0TXRsOjpkcmF3TGluZUxvb3BF
bGVtZW50c05vbkluc3RhbmNlZE5vUHJpbWl0aXZlUmVzdGFydCgKICAgICBBTkdMRV9UUlkoCiAg
ICAgICAgIGxpbmVsb29wSGVscGVyLmJlZ2luKGNvbnRleHQsICZtTGluZUxvb3BMYXN0U2VnbWVu
dEluZGV4QnVmZmVyLCAwLCBjb3VudCwgdHlwZSwgaW5kaWNlcykpOwogCi0gICAgcmV0dXJuIGRy
YXdFbGVtZW50c0ltcGwoY29udGV4dCwgZ2w6OlByaW1pdGl2ZU1vZGU6OkxpbmVTdHJpcCwgY291
bnQsIHR5cGUsIGluZGljZXMsIDApOworICAgIHJldHVybiBkcmF3RWxlbWVudHNJbXBsKGNvbnRl
eHQsIGdsOjpQcmltaXRpdmVNb2RlOjpMaW5lU3RyaXAsIGNvdW50LCB0eXBlLCBpbmRpY2VzLCAw
LCAwLCAwKTsKIH0KIAogYW5nbGU6OlJlc3VsdCBDb250ZXh0TXRsOjpkcmF3TGluZUxvb3BFbGVt
ZW50cyhjb25zdCBnbDo6Q29udGV4dCAqY29udGV4dCwKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBjb3VudCwKICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2w6OkRyYXdFbGVtZW50c1R5cGUgdHlwZSwK
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgdm9p
ZCAqaW5kaWNlcywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgR0xzaXplaSBpbnN0YW5jZXMpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIEdMc2l6ZWkgaW5zdGFuY2VzLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBHTGludCBiYXNlVmVydGV4LAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVpbnQgYmFzZUluc3RhbmNlKQogewog
ICAgIGlmIChjb3VudCA+PSAyKQogICAgIHsKICAgICAgICAgYm9vbCBwcmltaXRpdmVSZXN0YXJ0
ID0gZ2V0U3RhdGUoKS5pc1ByaW1pdGl2ZVJlc3RhcnRFbmFibGVkKCk7Ci0gICAgICAgIGlmIChp
bnN0YW5jZXMgPD0gMSAmJiAhcHJpbWl0aXZlUmVzdGFydCkKKyAgICAgICAgaWYgKGluc3RhbmNl
cyA8PSAxICYmICFwcmltaXRpdmVSZXN0YXJ0ICYmIGJhc2VWZXJ0ZXggPT0gMCAmJiBiYXNlSW5z
dGFuY2UgPT0gMCkKICAgICAgICAgewogICAgICAgICAgICAgLy8gTm9uIGluc3RhbmNlZCBkcmF3
IGFuZCBubyBwcmltaXRpdmUgcmVzdGFydCwganVzdCB1c2UgZmFzdGVyIHZlcnNpb24uCiAgICAg
ICAgICAgICByZXR1cm4gZHJhd0xpbmVMb29wRWxlbWVudHNOb25JbnN0YW5jZWROb1ByaW1pdGl2
ZVJlc3RhcnQoY29udGV4dCwgY291bnQsIHR5cGUsCkBAIC01NzksMjEgKzYyMyw0MCBAQCBhbmds
ZTo6UmVzdWx0IENvbnRleHRNdGw6OmRyYXdMaW5lTG9vcEVsZW1lbnRzKGNvbnN0IGdsOjpDb250
ZXh0ICpjb250ZXh0LAogICAgICAgICBBTkdMRV9UUlkoc2V0dXBEcmF3KGNvbnRleHQsIGdsOjpQ
cmltaXRpdmVNb2RlOjpMaW5lTG9vcCwgMCwgY291bnQsIGluc3RhbmNlcywgdHlwZSwKICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBpbmRpY2VzLCBmYWxzZSkpOwogCi0gICAgICAgIG1SZW5k
ZXJFbmNvZGVyLmRyYXdJbmRleGVkSW5zdGFuY2VkKE1UTFByaW1pdGl2ZVR5cGVMaW5lU3RyaXAs
IGdlbkluZGljZXNDb3VudCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgTVRMSW5kZXhUeXBlVUludDMyLCBnZW5JZHhCdWZmZXIsIGdlbklkeEJ1ZmZlck9mZnNl
dCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5zdGFuY2Vz
KTsKKyAgICAgICAgaWYgKGJhc2VWZXJ0ZXggPT0gMCAmJiBiYXNlSW5zdGFuY2UgPT0gMCkKKyAg
ICAgICAgeworICAgICAgICAgICAgbVJlbmRlckVuY29kZXIuZHJhd0luZGV4ZWRJbnN0YW5jZWQo
TVRMUHJpbWl0aXZlVHlwZUxpbmVTdHJpcCwgZ2VuSW5kaWNlc0NvdW50LAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTVRMSW5kZXhUeXBlVUludDMyLCBn
ZW5JZHhCdWZmZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBnZW5JZHhCdWZmZXJPZmZzZXQsIGluc3RhbmNlcyk7CisgICAgICAgIH0KKyAgICAgICAg
ZWxzZQorICAgICAgICB7CisgICAgICAgICAgICBtUmVuZGVyRW5jb2Rlci5kcmF3SW5kZXhlZElu
c3RhbmNlZEJhc2VWZXJ0ZXhCYXNlSW5zdGFuY2UoCisgICAgICAgICAgICAgICAgTVRMUHJpbWl0
aXZlVHlwZUxpbmVTdHJpcCwgZ2VuSW5kaWNlc0NvdW50LCBNVExJbmRleFR5cGVVSW50MzIsIGdl
bklkeEJ1ZmZlciwKKyAgICAgICAgICAgICAgICBnZW5JZHhCdWZmZXJPZmZzZXQsIGluc3RhbmNl
cywgYmFzZVZlcnRleCwgYmFzZUluc3RhbmNlKTsKKyAgICAgICAgfQogCiAgICAgICAgIHJldHVy
biBhbmdsZTo6UmVzdWx0OjpDb250aW51ZTsKICAgICB9ICAvLyBpZiAoY291bnQgPj0gMikKLSAg
ICByZXR1cm4gZHJhd0VsZW1lbnRzSW5zdGFuY2VkKGNvbnRleHQsIGdsOjpQcmltaXRpdmVNb2Rl
OjpMaW5lcywgY291bnQsIHR5cGUsIGluZGljZXMsCi0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBpbnN0YW5jZXMpOworICAgIGlmIChiYXNlVmVydGV4ID09IDAgJiYgYmFzZUluc3Rh
bmNlID09IDApCisgICAgeworICAgICAgICByZXR1cm4gZHJhd0VsZW1lbnRzSW5zdGFuY2VkKGNv
bnRleHQsIGdsOjpQcmltaXRpdmVNb2RlOjpMaW5lcywgY291bnQsIHR5cGUsIGluZGljZXMsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5zdGFuY2VzKTsKKyAgICB9Cisg
ICAgZWxzZQorICAgIHsKKyAgICAgICAgcmV0dXJuIGRyYXdFbGVtZW50c0luc3RhbmNlZEJhc2VW
ZXJ0ZXhCYXNlSW5zdGFuY2UoY29udGV4dCwgZ2w6OlByaW1pdGl2ZU1vZGU6OkxpbmVzLCBjb3Vu
dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgdHlwZSwgaW5kaWNlcywgaW5zdGFuY2VzLCBiYXNlVmVydGV4LAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYXNlSW5zdGFu
Y2UpOworICAgIH0KIH0KIAogYW5nbGU6OlJlc3VsdCBDb250ZXh0TXRsOjpkcmF3QXJyYXlzUHJv
dm9raW5nVmVydGV4SW1wbChjb25zdCBnbDo6Q29udGV4dCAqY29udGV4dCwKICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2w6OlByaW1pdGl2
ZU1vZGUgbW9kZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgR0xzaXplaSBmaXJzdCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBjb3VudCwKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBpbnN0YW5j
ZXMpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIEdMc2l6ZWkgaW5zdGFuY2VzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBHTHVpbnQgYmFzZUluc3RhbmNlKQogewogCiAgICAgc2l6
ZV90IG91dEluZGV4Q291bnQgICAgICAgICAgICAgICA9IDA7CkBAIC02MjQsNyArNjg3LDE1IEBA
IGFuZ2xlOjpSZXN1bHQgQ29udGV4dE10bDo6ZHJhd0FycmF5c1Byb3Zva2luZ1ZlcnRleEltcGwo
Y29uc3QgZ2w6OkNvbnRleHQgKmNvbnRlCiAgICAgICAgIH0gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFwKICAgICAgICAgZWxzZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAog
ICAgICAgICB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0gICAgICAgICAgICBt
UmVuZGVyRW5jb2Rlci5kcmF3SW5zdGFuY2VkKG10bFR5cGUsIGZpcnN0LCBjb3VudCwgaW5zdGFu
Y2VzKTsgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgICAgIGlmIChiYXNlSW5zdGFu
Y2UgPT0gMCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgXAorICAgICAgICAgICAgeyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBcCisgICAgICAgICAgICAgICAgbVJlbmRlckVuY29kZXIuZHJhd0luc3RhbmNlZChtdGxUeXBl
LCBmaXJzdCwgY291bnQsIGluc3RhbmNlcyk7ICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAg
ICAgIH0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICAgICAgZWxzZSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgICAgICB7ICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFwKKyAgICAgICAgICAgICAgICBtUmVuZGVyRW5jb2Rlci5kcmF3SW5zdGFuY2VkQmFz
ZUluc3RhbmNlKG10bFR5cGUsIGZpcnN0LCBjb3VudCwgaW5zdGFuY2VzLCAgICAgICAgXAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFz
ZUluc3RhbmNlKTsgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgICAgICB9ICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFwKICAgICAgICAgfSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgXAogICAgIH0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBc
CiAgICAgZWxzZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKQEAgLTY0MSw4ICs3
MTIsMTcgQEAgYW5nbGU6OlJlc3VsdCBDb250ZXh0TXRsOjpkcmF3QXJyYXlzUHJvdm9raW5nVmVy
dGV4SW1wbChjb25zdCBnbDo6Q29udGV4dCAqY29udGUKICAgICAgICAgfSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgXAogICAgICAgICBlbHNlICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBcCiAgICAgICAgIHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSAgICAg
ICAgICAgIG1SZW5kZXJFbmNvZGVyLmRyYXdJbmRleGVkSW5zdGFuY2VkKG10bFR5cGUsIG91dElu
ZGV4Q291bnRpMzIsIG10bElkeFR5cGUsICAgICAgICAgICAgXAotICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZHJhd0lkeEJ1ZmZlciwgb3V0SW5kZXhPZmZz
ZXQsIGluc3RhbmNlcyk7ICAgICAgICBcCisgICAgICAgICAgICBpZiAoYmFzZUluc3RhbmNlID09
IDApICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFwKKyAgICAgICAgICAgIHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAor
ICAgICAgICAgICAgICAgIG1SZW5kZXJFbmNvZGVyLmRyYXdJbmRleGVkSW5zdGFuY2VkKG10bFR5
cGUsIG91dEluZGV4Q291bnRpMzIsIG10bElkeFR5cGUsICAgICAgICBcCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZHJhd0lkeEJ1ZmZlciwgb3V0
SW5kZXhPZmZzZXQsIGluc3RhbmNlcyk7ICAgIFwKKyAgICAgICAgICAgIH0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgXAorICAgICAgICAgICAgZWxzZSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBcCisgICAgICAgICAgICB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAg
ICAgICAgICBtUmVuZGVyRW5jb2Rlci5kcmF3SW5kZXhlZEluc3RhbmNlZEJhc2VWZXJ0ZXhCYXNl
SW5zdGFuY2UoICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICAgICAgICAgICAgICBt
dGxUeXBlLCBvdXRJbmRleENvdW50aTMyLCBtdGxJZHhUeXBlLCBkcmF3SWR4QnVmZmVyLCBvdXRJ
bmRleE9mZnNldCwgICAgICAgICBcCisgICAgICAgICAgICAgICAgICAgIGluc3RhbmNlcywgMCwg
YmFzZUluc3RhbmNlKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFwKKyAgICAgICAgICAgIH0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAg
ICAgICB9ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgfQogCkBAIC02NTYs
NyArNzM2LDkgQEAgYW5nbGU6OlJlc3VsdCBDb250ZXh0TXRsOjpkcmF3RWxlbWVudHNJbXBsKGNv
bnN0IGdsOjpDb250ZXh0ICpjb250ZXh0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIEdMc2l6ZWkgY291bnQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgZ2w6OkRyYXdFbGVtZW50c1R5cGUgdHlwZSwKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB2b2lkICppbmRpY2VzLAotICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgaW5zdGFuY2VzKQor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgaW5zdGFu
Y2VzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMaW50IGJh
c2VWZXJ0ZXgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1
aW50IGJhc2VJbnN0YW5jZSkKIHsKICAgICAvLyBSZWFsIGluc3RhbmNlcyBjb3VudC4gWmVybyBt
ZWFucyB0aGlzIGlzIG5vdCBpbnN0YW5jZWQgZHJhdy4KICAgICBHTHNpemVpIGluc3RhbmNlQ291
bnQgPSBpbnN0YW5jZXMgPyBpbnN0YW5jZXMgOiAxOwpAQCAtNjY4LDExICs3NTAsMTMgQEAgYW5n
bGU6OlJlc3VsdCBDb250ZXh0TXRsOjpkcmF3RWxlbWVudHNJbXBsKGNvbnN0IGdsOjpDb250ZXh0
ICpjb250ZXh0LAogCiAgICAgaWYgKG1vZGUgPT0gZ2w6OlByaW1pdGl2ZU1vZGU6OlRyaWFuZ2xl
RmFuKQogICAgIHsKLSAgICAgICAgcmV0dXJuIGRyYXdUcmlGYW5FbGVtZW50cyhjb250ZXh0LCBj
b3VudCwgdHlwZSwgaW5kaWNlcywgaW5zdGFuY2VDb3VudCk7CisgICAgICAgIHJldHVybiBkcmF3
VHJpRmFuRWxlbWVudHMoY29udGV4dCwgY291bnQsIHR5cGUsIGluZGljZXMsIGluc3RhbmNlQ291
bnQsIGJhc2VWZXJ0ZXgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFzZUlu
c3RhbmNlKTsKICAgICB9CiAgICAgZWxzZSBpZiAobW9kZSA9PSBnbDo6UHJpbWl0aXZlTW9kZTo6
TGluZUxvb3ApCiAgICAgewotICAgICAgICByZXR1cm4gZHJhd0xpbmVMb29wRWxlbWVudHMoY29u
dGV4dCwgY291bnQsIHR5cGUsIGluZGljZXMsIGluc3RhbmNlQ291bnQpOworICAgICAgICByZXR1
cm4gZHJhd0xpbmVMb29wRWxlbWVudHMoY29udGV4dCwgY291bnQsIHR5cGUsIGluZGljZXMsIGlu
c3RhbmNlQ291bnQsIGJhc2VWZXJ0ZXgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBiYXNlSW5zdGFuY2UpOwogICAgIH0KIAogICAgIG10bDo6QnVmZmVyUmVmIGlkeEJ1ZmZl
cjsKQEAgLTcyNSw3ICs4MDksNyBAQCBhbmdsZTo6UmVzdWx0IENvbnRleHRNdGw6OmRyYXdFbGVt
ZW50c0ltcGwoY29uc3QgZ2w6OkNvbnRleHQgKmNvbnRleHQsCiAKICAgICBNVExJbmRleFR5cGUg
bXRsSWR4VHlwZSA9IG10bDo6R2V0SW5kZXhUeXBlKGNvbnZlcnRlZFR5cGUpOwogCi0gICAgaWYg
KGluc3RhbmNlcyA9PSAwKQorICAgIGlmIChpbnN0YW5jZXMgPT0gMCAmJiBiYXNlVmVydGV4ID09
IDAgJiYgYmFzZUluc3RhbmNlID09IDApCiAgICAgewogICAgICAgICAvLyBOb3JtYWwgZHJhdwog
ICAgICAgICBmb3IgKGF1dG8gJmNvbW1hbmQgOiBkcmF3Q29tbWFuZHMpCkBAIC03MzcsMTEgKzgy
MSwyNCBAQCBhbmdsZTo6UmVzdWx0IENvbnRleHRNdGw6OmRyYXdFbGVtZW50c0ltcGwoY29uc3Qg
Z2w6OkNvbnRleHQgKmNvbnRleHQsCiAgICAgZWxzZQogICAgIHsKICAgICAgICAgLy8gSW5zdGFu
Y2VkIGRyYXcKLSAgICAgICAgZm9yIChhdXRvICZjb21tYW5kIDogZHJhd0NvbW1hbmRzKQorICAg
ICAgICBpZiAoYmFzZVZlcnRleCA9PSAwICYmIGJhc2VJbnN0YW5jZSA9PSAwKQorICAgICAgICB7
CisgICAgICAgICAgICBmb3IgKGF1dG8gJmNvbW1hbmQgOiBkcmF3Q29tbWFuZHMpCisgICAgICAg
ICAgICB7CisgICAgICAgICAgICAgICAgbVJlbmRlckVuY29kZXIuZHJhd0luZGV4ZWRJbnN0YW5j
ZWQoCisgICAgICAgICAgICAgICAgICAgIG10bFR5cGUsIGNvbW1hbmQuY291bnQsIG10bElkeFR5
cGUsIGRyYXdJZHhCdWZmZXIsCisgICAgICAgICAgICAgICAgICAgIGNvbW1hbmQub2Zmc2V0ICsg
cHJvdm9raW5nVmVydGV4QWRkaXRpb25hbE9mZnNldCwgaW5zdGFuY2VDb3VudCk7CisgICAgICAg
ICAgICB9CisgICAgICAgIH0KKyAgICAgICAgZWxzZQogICAgICAgICB7Ci0gICAgICAgICAgICBt
UmVuZGVyRW5jb2Rlci5kcmF3SW5kZXhlZEluc3RhbmNlZChtdGxUeXBlLCBjb21tYW5kLmNvdW50
LCBtdGxJZHhUeXBlLCBkcmF3SWR4QnVmZmVyLAotICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgY29tbWFuZC5vZmZzZXQgKyBwcm92b2tpbmdWZXJ0ZXhBZGRp
dGlvbmFsT2Zmc2V0LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgaW5zdGFuY2VDb3VudCk7CisgICAgICAgICAgICBmb3IgKGF1dG8gJmNvbW1hbmQgOiBk
cmF3Q29tbWFuZHMpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgbVJlbmRlckVuY29k
ZXIuZHJhd0luZGV4ZWRJbnN0YW5jZWRCYXNlVmVydGV4QmFzZUluc3RhbmNlKAorICAgICAgICAg
ICAgICAgICAgICBtdGxUeXBlLCBjb21tYW5kLmNvdW50LCBtdGxJZHhUeXBlLCBkcmF3SWR4QnVm
ZmVyLAorICAgICAgICAgICAgICAgICAgICBjb21tYW5kLm9mZnNldCArIHByb3Zva2luZ1ZlcnRl
eEFkZGl0aW9uYWxPZmZzZXQsIGluc3RhbmNlQ291bnQsIGJhc2VWZXJ0ZXgsCisgICAgICAgICAg
ICAgICAgICAgIGJhc2VJbnN0YW5jZSk7CisgICAgICAgICAgICB9CiAgICAgICAgIH0KICAgICB9
CiAgICAgcmV0dXJuIGFuZ2xlOjpSZXN1bHQ6OkNvbnRpbnVlOwpAQCAtNzUzLDcgKzg1MCw3IEBA
IGFuZ2xlOjpSZXN1bHQgQ29udGV4dE10bDo6ZHJhd0VsZW1lbnRzKGNvbnN0IGdsOjpDb250ZXh0
ICpjb250ZXh0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2w6OkRy
YXdFbGVtZW50c1R5cGUgdHlwZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGNvbnN0IHZvaWQgKmluZGljZXMpCiB7Ci0gICAgcmV0dXJuIGRyYXdFbGVtZW50c0ltcGwo
Y29udGV4dCwgbW9kZSwgY291bnQsIHR5cGUsIGluZGljZXMsIDApOworICAgIHJldHVybiBkcmF3
RWxlbWVudHNJbXBsKGNvbnRleHQsIG1vZGUsIGNvdW50LCB0eXBlLCBpbmRpY2VzLCAwLCAwLCAw
KTsKIH0KIAogYW5nbGU6OlJlc3VsdCBDb250ZXh0TXRsOjpkcmF3RWxlbWVudHNCYXNlVmVydGV4
KGNvbnN0IGdsOjpDb250ZXh0ICpjb250ZXh0LApAQCAtNzc0LDExICs4NzEsMTAgQEAgYW5nbGU6
OlJlc3VsdCBDb250ZXh0TXRsOjpkcmF3RWxlbWVudHNJbnN0YW5jZWQoY29uc3QgZ2w6OkNvbnRl
eHQgKmNvbnRleHQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBjb25zdCB2b2lkICppbmRpY2VzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgR0xzaXplaSBpbnN0YW5jZUNvdW50KQogewotICAgIGlmIChpbnN0
YW5jZUNvdW50ID09IDApCi0gICAgewotICAgICAgICByZXR1cm4gYW5nbGU6OlJlc3VsdDo6Q29u
dGludWU7Ci0gICAgfQotICAgIHJldHVybiBkcmF3RWxlbWVudHNJbXBsKGNvbnRleHQsIG1vZGUs
IGNvdW50LCB0eXBlLCBpbmRpY2VzLCBpbnN0YW5jZUNvdW50KTsKKyAgICAvLyBJbnN0YW5jZWQg
ZHJhdyBjYWxscyB3aXRoIHplcm8gaW5zdGFuY2VzIGFyZSBza2lwcGVkIGluIHRoZSBmcm9udGVu
ZC4KKyAgICAvLyBUaGUgZHJhd0VsZW1lbnRzSW1wbCBmdW5jdGlvbiB3b3VsZCB0cmVhdCB0aGVt
IGFzIG5vbi1pbnN0YW5jZWQuCisgICAgQVNTRVJUKGluc3RhbmNlQ291bnQgPiAwKTsKKyAgICBy
ZXR1cm4gZHJhd0VsZW1lbnRzSW1wbChjb250ZXh0LCBtb2RlLCBjb3VudCwgdHlwZSwgaW5kaWNl
cywgaW5zdGFuY2VDb3VudCwgMCwgMCk7CiB9CiAKIGFuZ2xlOjpSZXN1bHQgQ29udGV4dE10bDo6
ZHJhd0VsZW1lbnRzSW5zdGFuY2VkQmFzZVZlcnRleChjb25zdCBnbDo6Q29udGV4dCAqY29udGV4
dCwKQEAgLTc4OSw5ICs4ODUsMTAgQEAgYW5nbGU6OlJlc3VsdCBDb250ZXh0TXRsOjpkcmF3RWxl
bWVudHNJbnN0YW5jZWRCYXNlVmVydGV4KGNvbnN0IGdsOjpDb250ZXh0ICpjb24KICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHNpemVp
IGluc3RhbmNlQ291bnQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgR0xpbnQgYmFzZVZlcnRleCkKIHsKLSAgICAvLyBOT1RFKGhxbGUp
OiBFUyAzLjIKLSAgICBVTklNUExFTUVOVEVEKCk7Ci0gICAgcmV0dXJuIGFuZ2xlOjpSZXN1bHQ6
OlN0b3A7CisgICAgLy8gSW5zdGFuY2VkIGRyYXcgY2FsbHMgd2l0aCB6ZXJvIGluc3RhbmNlcyBh
cmUgc2tpcHBlZCBpbiB0aGUgZnJvbnRlbmQuCisgICAgLy8gVGhlIGRyYXdFbGVtZW50c0ltcGwg
ZnVuY3Rpb24gd291bGQgdHJlYXQgdGhlbSBhcyBub24taW5zdGFuY2VkLgorICAgIEFTU0VSVChp
bnN0YW5jZUNvdW50ID4gMCk7CisgICAgcmV0dXJuIGRyYXdFbGVtZW50c0ltcGwoY29udGV4dCwg
bW9kZSwgY291bnQsIHR5cGUsIGluZGljZXMsIGluc3RhbmNlQ291bnQsIGJhc2VWZXJ0ZXgsIDAp
OwogfQogCiBhbmdsZTo6UmVzdWx0IENvbnRleHRNdGw6OmRyYXdFbGVtZW50c0luc3RhbmNlZEJh
c2VWZXJ0ZXhCYXNlSW5zdGFuY2UoY29uc3QgZ2w6OkNvbnRleHQgKmNvbnRleHQsCkBAIC04MDMs
OCArOTAwLDExIEBAIGFuZ2xlOjpSZXN1bHQgQ29udGV4dE10bDo6ZHJhd0VsZW1lbnRzSW5zdGFu
Y2VkQmFzZVZlcnRleEJhc2VJbnN0YW5jZShjb25zdCBnbDo6CiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xpbnQg
YmFzZVZlcnRleCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVpbnQgYmFzZUluc3RhbmNlKQogewotICAgIFVO
SU1QTEVNRU5URUQoKTsKLSAgICByZXR1cm4gYW5nbGU6OlJlc3VsdDo6U3RvcDsKKyAgICAvLyBJ
bnN0YW5jZWQgZHJhdyBjYWxscyB3aXRoIHplcm8gaW5zdGFuY2VzIGFyZSBza2lwcGVkIGluIHRo
ZSBmcm9udGVuZC4KKyAgICAvLyBUaGUgZHJhd0VsZW1lbnRzSW1wbCBmdW5jdGlvbiB3b3VsZCB0
cmVhdCB0aGVtIGFzIG5vbi1pbnN0YW5jZWQuCisgICAgQVNTRVJUKGluc3RhbmNlcyA+IDApOwor
ICAgIHJldHVybiBkcmF3RWxlbWVudHNJbXBsKGNvbnRleHQsIG1vZGUsIGNvdW50LCB0eXBlLCBp
bmRpY2VzLCBpbnN0YW5jZXMsIGJhc2VWZXJ0ZXgsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgYmFzZUluc3RhbmNlKTsKIH0KIAogYW5nbGU6OlJlc3VsdCBDb250ZXh0TXRsOjpkcmF3UmFu
Z2VFbGVtZW50cyhjb25zdCBnbDo6Q29udGV4dCAqY29udGV4dCwKQEAgLTgxNSw3ICs5MTUsNyBA
QCBhbmdsZTo6UmVzdWx0IENvbnRleHRNdGw6OmRyYXdSYW5nZUVsZW1lbnRzKGNvbnN0IGdsOjpD
b250ZXh0ICpjb250ZXh0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBnbDo6RHJhd0VsZW1lbnRzVHlwZSB0eXBlLAogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBjb25zdCB2b2lkICppbmRpY2VzKQogewotICAgIHJldHVybiBk
cmF3RWxlbWVudHNJbXBsKGNvbnRleHQsIG1vZGUsIGNvdW50LCB0eXBlLCBpbmRpY2VzLCAwKTsK
KyAgICByZXR1cm4gZHJhd0VsZW1lbnRzSW1wbChjb250ZXh0LCBtb2RlLCBjb3VudCwgdHlwZSwg
aW5kaWNlcywgMCwgMCwgMCk7CiB9CiAKIGFuZ2xlOjpSZXN1bHQgQ29udGV4dE10bDo6ZHJhd1Jh
bmdlRWxlbWVudHNCYXNlVmVydGV4KGNvbnN0IGdsOjpDb250ZXh0ICpjb250ZXh0LApkaWZmIC0t
Z2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFs
L0Rpc3BsYXlNdGwubW0gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVu
ZGVyZXIvbWV0YWwvRGlzcGxheU10bC5tbQppbmRleCA2NTUyNDMyYWIyZGVkNGMyMmNlMDJiYjc1
MGRlNDgxY2I3MTVmNmM1Li42NDk4YWY4OTFiMjE4MjY4NmRjNmYyOTY0ZGZiZGM2YjA2ZmRjNDZk
IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVy
ZXIvbWV0YWwvRGlzcGxheU10bC5tbQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
bGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvRGlzcGxheU10bC5tbQpAQCAtOTg5LDYgKzk4OSwxMCBA
QCB2b2lkIERpc3BsYXlNdGw6OmluaXRpYWxpemVFeHRlbnNpb25zKCkgY29uc3QKIAogICAgIC8v
IEdMX0tIUl9wYXJhbGxlbF9zaGFkZXJfY29tcGlsZQogICAgIG1OYXRpdmVFeHRlbnNpb25zLnBh
cmFsbGVsU2hhZGVyQ29tcGlsZUtIUiA9IHRydWU7CisKKyAgICBtTmF0aXZlRXh0ZW5zaW9ucy5i
YXNlVmVydGV4QmFzZUluc3RhbmNlQU5HTEUgPSBtRmVhdHVyZXMuaGFzQmFzZVZlcnRleEluc3Rh
bmNlZERyYXcuZW5hYmxlZDsKKyAgICBtTmF0aXZlRXh0ZW5zaW9ucy5iYXNlVmVydGV4QmFzZUlu
c3RhbmNlU2hhZGVyQnVpbHRpbkFOR0xFID0KKyAgICAgICAgbUZlYXR1cmVzLmhhc0Jhc2VWZXJ0
ZXhJbnN0YW5jZWREcmF3LmVuYWJsZWQ7CiB9CiAKIHZvaWQgRGlzcGxheU10bDo6aW5pdGlhbGl6
ZVRleHR1cmVDYXBzKCkgY29uc3QKQEAgLTExMDYsNiArMTExMCw4IEBAIHZvaWQgRGlzcGxheU10
bDo6aW5pdGlhbGl6ZUZlYXR1cmVzKCkKICAgICBBTkdMRV9GRUFUVVJFX0NPTkRJVElPTigoJm1G
ZWF0dXJlcyksIGludGVsRGlzYWJsZUZhc3RNYXRoLAogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGlzSW50ZWwoKSAmJiBHZXRNYWNPU1ZlcnNpb24oKSA8IE9TVmVyc2lvbigxMiwgMCwgMCkp
OwogCisgICAgQU5HTEVfRkVBVFVSRV9DT05ESVRJT04oKCZtRmVhdHVyZXMpLCBtdWx0aXNhbXBs
ZUNvbG9yRm9ybWF0U2hhZGVyUmVhZFdvcmthcm91bmQsIGlzQU1EKCkpOworCiAgICAgQU5HTEVf
RkVBVFVSRV9DT05ESVRJT04oKCZtRmVhdHVyZXMpLCBmb3JjZU5vbkNTQmFzZU1pcG1hcEdlbmVy
YXRpb24sIGlzSW50ZWwoKSk7CiAKICAgICBib29sIGRlZmF1bHREaXJlY3RUb01ldGFsID0gdHJ1
ZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5k
ZXJlci9tZXRhbC9tdGxfY29tbWFuZF9idWZmZXIuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9tdGxfY29tbWFuZF9idWZmZXIuaAppbmRleCA5
OGVhMjJhNmM1MTgzY2JlZTBjY2RhNDk2YWZmNGJiYmU2ZGVjMTY3Li4yMDBlMDI4MjM3YzczZTQ4
YWQwOWQ5MmI5YWI2MjIxMzBjZjg0NWVkIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX2NvbW1hbmRfYnVmZmVyLmgKKysr
IGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210
bF9jb21tYW5kX2J1ZmZlci5oCkBAIC04OSw3ICs4OSw2IEBAIGNsYXNzIENvbW1hbmRRdWV1ZSBm
aW5hbCA6IHB1YmxpYyBXcmFwcGVkT2JqZWN0PGlkPE1UTENvbW1hbmRRdWV1ZT4+LCBhbmdsZTo6
Tm9uCiAgICAgICAgIHVpbnQ2NF90IHNlcmlhbDsKICAgICB9OwogICAgIHN0ZDo6ZGVxdWU8Q21k
QnVmZmVyUXVldWVFbnRyeT4gbU1ldGFsQ21kQnVmZmVyczsKLSAgICBzdGQ6OmRlcXVlPENtZEJ1
ZmZlclF1ZXVlRW50cnk+IG1NZXRhbENtZEJ1ZmZlcnNUbXA7CiAKICAgICB1aW50NjRfdCBtUXVl
dWVTZXJpYWxDb3VudGVyID0gMTsKICAgICBzdGQ6OmF0b21pYzx1aW50NjRfdD4gbUNvbW1pdHRl
ZEJ1ZmZlclNlcmlhbHswfTsKQEAgLTQzNCw2ICs0MzMsMTEgQEAgY2xhc3MgUmVuZGVyQ29tbWFu
ZEVuY29kZXIgZmluYWwgOiBwdWJsaWMgQ29tbWFuZEVuY29kZXIKICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCB2ZXJ0ZXhTdGFydCwKICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCB2ZXJ0ZXhDb3VudCwKICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBpbnN0YW5jZXMpOwor
ICAgIFJlbmRlckNvbW1hbmRFbmNvZGVyICZkcmF3SW5zdGFuY2VkQmFzZUluc3RhbmNlKE1UTFBy
aW1pdGl2ZVR5cGUgcHJpbWl0aXZlVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCB2ZXJ0ZXhTdGFydCwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCB2ZXJ0ZXhD
b3VudCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICB1aW50MzJfdCBpbnN0YW5jZXMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgdWludDMyX3QgYmFzZUluc3RhbmNlKTsKICAgICBSZW5kZXJDb21t
YW5kRW5jb2RlciAmZHJhd0luZGV4ZWQoTVRMUHJpbWl0aXZlVHlwZSBwcmltaXRpdmVUeXBlLAog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBpbmRleENvdW50
LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBNVExJbmRleFR5cGUgaW5k
ZXhUeXBlLApAQCAtNDQ1LDEzICs0NDksMTQgQEAgY2xhc3MgUmVuZGVyQ29tbWFuZEVuY29kZXIg
ZmluYWwgOiBwdWJsaWMgQ29tbWFuZEVuY29kZXIKICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgY29uc3QgQnVmZmVyUmVmICZpbmRleEJ1ZmZlciwKICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZV90IGJ1ZmZlck9m
ZnNldCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWlu
dDMyX3QgaW5zdGFuY2VzKTsKLSAgICBSZW5kZXJDb21tYW5kRW5jb2RlciAmZHJhd0luZGV4ZWRJ
bnN0YW5jZWRCYXNlVmVydGV4KE1UTFByaW1pdGl2ZVR5cGUgcHJpbWl0aXZlVHlwZSwKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQz
Ml90IGluZGV4Q291bnQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBNVExJbmRleFR5cGUgaW5kZXhUeXBlLAotICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgQnVmZmVyUmVm
ICZpbmRleEJ1ZmZlciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHNpemVfdCBidWZmZXJPZmZzZXQsCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBpbnN0YW5jZXMs
Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICB1aW50MzJfdCBiYXNlVmVydGV4KTsKKyAgICBSZW5kZXJDb21tYW5kRW5jb2RlciAmZHJhd0lu
ZGV4ZWRJbnN0YW5jZWRCYXNlVmVydGV4QmFzZUluc3RhbmNlKE1UTFByaW1pdGl2ZVR5cGUgcHJp
bWl0aXZlVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IGluZGV4Q291bnQsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBNVExJbmRleFR5cGUgaW5kZXhUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgQnVmZmVyUmVmICZp
bmRleEJ1ZmZlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVfdCBidWZmZXJPZmZzZXQsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICB1aW50MzJfdCBpbnN0YW5jZXMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBiYXNlVmVydGV4LAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgdWludDMyX3QgYmFzZUluc3RhbmNlKTsKIAogICAgIFJlbmRlckNvbW1hbmRF
bmNvZGVyICZzZXRWaXNpYmlsaXR5UmVzdWx0TW9kZShNVExWaXNpYmlsaXR5UmVzdWx0TW9kZSBt
b2RlLCBzaXplX3Qgb2Zmc2V0KTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF9jb21tYW5kX2J1ZmZlci5tbSBiL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9tdGxfY29t
bWFuZF9idWZmZXIubW0KaW5kZXggZGMzYzJlYmM3Yjc4ODQwZDNiOGY4NjhhMzRiZTJmMThhMGNk
YjBmMS4uNDRiZjM0MGM5ZjBmNTAyZDVjNzY5NDJmNDg4YzVkNGNlOWUyNmIxYiAxMDA2NDQKLS0t
IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210
bF9jb21tYW5kX2J1ZmZlci5tbQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGli
QU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX2NvbW1hbmRfYnVmZmVyLm1tCkBAIC0zOCwzOCArMzgs
MzkgQEAgbmFtZXNwYWNlIG10bAogbmFtZXNwYWNlCiB7CiAKLSNkZWZpbmUgQU5HTEVfTVRMX0NN
RF9YKFBST0MpICAgICAgICAgICAgXAotICAgIFBST0MoSW52YWxpZCkgICAgICAgICAgICAgICAg
ICAgICAgICBcCi0gICAgUFJPQyhTZXRSZW5kZXJQaXBlbGluZVN0YXRlKSAgICAgICAgIFwKLSAg
ICBQUk9DKFNldFRyaWFuZ2xlRmlsbE1vZGUpICAgICAgICAgICAgXAotICAgIFBST0MoU2V0RnJv
bnRGYWNpbmdXaW5kaW5nKSAgICAgICAgICBcCi0gICAgUFJPQyhTZXRDdWxsTW9kZSkgICAgICAg
ICAgICAgICAgICAgIFwKLSAgICBQUk9DKFNldERlcHRoU3RlbmNpbFN0YXRlKSAgICAgICAgICAg
XAotICAgIFBST0MoU2V0RGVwdGhCaWFzKSAgICAgICAgICAgICAgICAgICBcCi0gICAgUFJPQyhT
ZXRTdGVuY2lsUmVmVmFscykgICAgICAgICAgICAgIFwKLSAgICBQUk9DKFNldFZpZXdwb3J0KSAg
ICAgICAgICAgICAgICAgICAgXAotICAgIFBST0MoU2V0U2Npc3NvclJlY3QpICAgICAgICAgICAg
ICAgICBcCi0gICAgUFJPQyhTZXRCbGVuZENvbG9yKSAgICAgICAgICAgICAgICAgIFwKLSAgICBQ
Uk9DKFNldFZlcnRleEJ1ZmZlcikgICAgICAgICAgICAgICAgXAotICAgIFBST0MoU2V0VmVydGV4
QnVmZmVyT2Zmc2V0KSAgICAgICAgICBcCi0gICAgUFJPQyhTZXRWZXJ0ZXhCeXRlcykgICAgICAg
ICAgICAgICAgIFwKLSAgICBQUk9DKFNldFZlcnRleFNhbXBsZXJTdGF0ZSkgICAgICAgICAgXAot
ICAgIFBST0MoU2V0VmVydGV4VGV4dHVyZSkgICAgICAgICAgICAgICBcCi0gICAgUFJPQyhTZXRG
cmFnbWVudEJ1ZmZlcikgICAgICAgICAgICAgIFwKLSAgICBQUk9DKFNldEZyYWdtZW50QnVmZmVy
T2Zmc2V0KSAgICAgICAgXAotICAgIFBST0MoU2V0RnJhZ21lbnRCeXRlcykgICAgICAgICAgICAg
ICBcCi0gICAgUFJPQyhTZXRGcmFnbWVudFNhbXBsZXJTdGF0ZSkgICAgICAgIFwKLSAgICBQUk9D
KFNldEZyYWdtZW50VGV4dHVyZSkgICAgICAgICAgICAgXAotICAgIFBST0MoRHJhdykgICAgICAg
ICAgICAgICAgICAgICAgICAgICBcCi0gICAgUFJPQyhEcmF3SW5zdGFuY2VkKSAgICAgICAgICAg
ICAgICAgIFwKLSAgICBQUk9DKERyYXdJbmRleGVkKSAgICAgICAgICAgICAgICAgICAgXAotICAg
IFBST0MoRHJhd0luZGV4ZWRJbnN0YW5jZWQpICAgICAgICAgICBcCi0gICAgUFJPQyhEcmF3SW5k
ZXhlZEluc3RhbmNlZEJhc2VWZXJ0ZXgpIFwKLSAgICBQUk9DKFNldFZpc2liaWxpdHlSZXN1bHRN
b2RlKSAgICAgICAgXAotICAgIFBST0MoVXNlUmVzb3VyY2UpICAgICAgICAgICAgICAgICAgICBc
Ci0gICAgUFJPQyhNZW1vcnlCYXJyaWVyV2l0aFJlc291cmNlKSAgICAgIFwKLSAgICBQUk9DKElu
c2VydERlYnVnc2lnbikgICAgICAgICAgICAgICAgXAotICAgIFBST0MoUHVzaERlYnVnR3JvdXAp
ICAgICAgICAgICAgICAgICBcCisjZGVmaW5lIEFOR0xFX01UTF9DTURfWChQUk9DKSAgICAgICAg
ICAgICAgICAgICAgICAgIFwKKyAgICBQUk9DKEludmFsaWQpICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgXAorICAgIFBST0MoU2V0UmVuZGVyUGlwZWxpbmVTdGF0ZSkgICAgICAg
ICAgICAgICAgICAgICBcCisgICAgUFJPQyhTZXRUcmlhbmdsZUZpbGxNb2RlKSAgICAgICAgICAg
ICAgICAgICAgICAgIFwKKyAgICBQUk9DKFNldEZyb250RmFjaW5nV2luZGluZykgICAgICAgICAg
ICAgICAgICAgICAgXAorICAgIFBST0MoU2V0Q3VsbE1vZGUpICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBcCisgICAgUFJPQyhTZXREZXB0aFN0ZW5jaWxTdGF0ZSkgICAgICAgICAgICAg
ICAgICAgICAgIFwKKyAgICBQUk9DKFNldERlcHRoQmlhcykgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgXAorICAgIFBST0MoU2V0U3RlbmNpbFJlZlZhbHMpICAgICAgICAgICAgICAgICAg
ICAgICAgICBcCisgICAgUFJPQyhTZXRWaWV3cG9ydCkgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFwKKyAgICBQUk9DKFNldFNjaXNzb3JSZWN0KSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgXAorICAgIFBST0MoU2V0QmxlbmRDb2xvcikgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBcCisgICAgUFJPQyhTZXRWZXJ0ZXhCdWZmZXIpICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFwKKyAgICBQUk9DKFNldFZlcnRleEJ1ZmZlck9mZnNldCkgICAgICAgICAgICAgICAgICAg
ICAgXAorICAgIFBST0MoU2V0VmVydGV4Qnl0ZXMpICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBcCisgICAgUFJPQyhTZXRWZXJ0ZXhTYW1wbGVyU3RhdGUpICAgICAgICAgICAgICAgICAgICAg
IFwKKyAgICBQUk9DKFNldFZlcnRleFRleHR1cmUpICAgICAgICAgICAgICAgICAgICAgICAgICAg
XAorICAgIFBST0MoU2V0RnJhZ21lbnRCdWZmZXIpICAgICAgICAgICAgICAgICAgICAgICAgICBc
CisgICAgUFJPQyhTZXRGcmFnbWVudEJ1ZmZlck9mZnNldCkgICAgICAgICAgICAgICAgICAgIFwK
KyAgICBQUk9DKFNldEZyYWdtZW50Qnl0ZXMpICAgICAgICAgICAgICAgICAgICAgICAgICAgXAor
ICAgIFBST0MoU2V0RnJhZ21lbnRTYW1wbGVyU3RhdGUpICAgICAgICAgICAgICAgICAgICBcCisg
ICAgUFJPQyhTZXRGcmFnbWVudFRleHR1cmUpICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAg
ICBQUk9DKERyYXcpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAg
IFBST0MoRHJhd0luc3RhbmNlZCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAg
UFJPQyhEcmF3SW5zdGFuY2VkQmFzZUluc3RhbmNlKSAgICAgICAgICAgICAgICAgIFwKKyAgICBQ
Uk9DKERyYXdJbmRleGVkKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgIFBS
T0MoRHJhd0luZGV4ZWRJbnN0YW5jZWQpICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgUFJP
QyhEcmF3SW5kZXhlZEluc3RhbmNlZEJhc2VWZXJ0ZXhCYXNlSW5zdGFuY2UpIFwKKyAgICBQUk9D
KFNldFZpc2liaWxpdHlSZXN1bHRNb2RlKSAgICAgICAgICAgICAgICAgICAgXAorICAgIFBST0Mo
VXNlUmVzb3VyY2UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgUFJPQyhN
ZW1vcnlCYXJyaWVyV2l0aFJlc291cmNlKSAgICAgICAgICAgICAgICAgIFwKKyAgICBQUk9DKElu
c2VydERlYnVnc2lnbikgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgIFBST0MoUHVz
aERlYnVnR3JvdXApICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgUFJPQyhQb3BE
ZWJ1Z0dyb3VwKQogCiAjZGVmaW5lIEFOR0xFX01UTF9UWVBFX0RFQ0woQ01EKSBDTUQsCkBAIC0y
NzIsNiArMjczLDIxIEBAIHZvaWQgRHJhd0luc3RhbmNlZENtZChpZDxNVExSZW5kZXJDb21tYW5k
RW5jb2Rlcj4gZW5jb2RlciwgSW50ZXJtZWRpYXRlQ29tbWFuZFN0CiAgICAgICAgICAgICAgIGlu
c3RhbmNlQ291bnQ6aW5zdGFuY2VzXTsKIH0KIAordm9pZCBEcmF3SW5zdGFuY2VkQmFzZUluc3Rh
bmNlQ21kKGlkPE1UTFJlbmRlckNvbW1hbmRFbmNvZGVyPiBlbmNvZGVyLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIEludGVybWVkaWF0ZUNvbW1hbmRTdHJlYW0gKnN0cmVhbSkK
K3sKKyAgICBNVExQcmltaXRpdmVUeXBlIHByaW1pdGl2ZVR5cGUgPSBzdHJlYW0tPmZldGNoPE1U
TFByaW1pdGl2ZVR5cGU+KCk7CisgICAgdWludDMyX3QgdmVydGV4U3RhcnQgICAgICAgICAgID0g
c3RyZWFtLT5mZXRjaDx1aW50MzJfdD4oKTsKKyAgICB1aW50MzJfdCB2ZXJ0ZXhDb3VudCAgICAg
ICAgICAgPSBzdHJlYW0tPmZldGNoPHVpbnQzMl90PigpOworICAgIHVpbnQzMl90IGluc3RhbmNl
cyAgICAgICAgICAgICA9IHN0cmVhbS0+ZmV0Y2g8dWludDMyX3Q+KCk7CisgICAgdWludDMyX3Qg
YmFzZUluc3RhbmNlICAgICAgICAgID0gc3RyZWFtLT5mZXRjaDx1aW50MzJfdD4oKTsKKyAgICBb
ZW5jb2RlciBkcmF3UHJpbWl0aXZlczpwcmltaXRpdmVUeXBlCisgICAgICAgICAgICAgICAgdmVy
dGV4U3RhcnQ6dmVydGV4U3RhcnQKKyAgICAgICAgICAgICAgICB2ZXJ0ZXhDb3VudDp2ZXJ0ZXhD
b3VudAorICAgICAgICAgICAgICBpbnN0YW5jZUNvdW50Omluc3RhbmNlcworICAgICAgICAgICAg
ICAgYmFzZUluc3RhbmNlOmJhc2VJbnN0YW5jZV07Cit9CisKIHZvaWQgRHJhd0luZGV4ZWRDbWQo
aWQ8TVRMUmVuZGVyQ29tbWFuZEVuY29kZXI+IGVuY29kZXIsIEludGVybWVkaWF0ZUNvbW1hbmRT
dHJlYW0gKnN0cmVhbSkKIHsKICAgICBNVExQcmltaXRpdmVUeXBlIHByaW1pdGl2ZVR5cGUgPSBz
dHJlYW0tPmZldGNoPE1UTFByaW1pdGl2ZVR5cGU+KCk7CkBAIC0zMDQsOCArMzIwLDggQEAgdm9p
ZCBEcmF3SW5kZXhlZEluc3RhbmNlZENtZChpZDxNVExSZW5kZXJDb21tYW5kRW5jb2Rlcj4gZW5j
b2RlciwgSW50ZXJtZWRpYXRlQ28KICAgICBbaW5kZXhCdWZmZXIgQU5HTEVfTVRMX1JFTEVBU0Vd
OwogfQogCi12b2lkIERyYXdJbmRleGVkSW5zdGFuY2VkQmFzZVZlcnRleENtZChpZDxNVExSZW5k
ZXJDb21tYW5kRW5jb2Rlcj4gZW5jb2RlciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIEludGVybWVkaWF0ZUNvbW1hbmRTdHJlYW0gKnN0cmVhbSkKK3ZvaWQgRHJhd0lu
ZGV4ZWRJbnN0YW5jZWRCYXNlVmVydGV4QmFzZUluc3RhbmNlQ21kKGlkPE1UTFJlbmRlckNvbW1h
bmRFbmNvZGVyPiBlbmNvZGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgSW50ZXJtZWRpYXRlQ29tbWFuZFN0cmVhbSAqc3RyZWFtKQogewogICAg
IE1UTFByaW1pdGl2ZVR5cGUgcHJpbWl0aXZlVHlwZSA9IHN0cmVhbS0+ZmV0Y2g8TVRMUHJpbWl0
aXZlVHlwZT4oKTsKICAgICB1aW50MzJfdCBpbmRleENvdW50ICAgICAgICAgICAgPSBzdHJlYW0t
PmZldGNoPHVpbnQzMl90PigpOwpAQCAtMzE0LDYgKzMzMCw3IEBAIHZvaWQgRHJhd0luZGV4ZWRJ
bnN0YW5jZWRCYXNlVmVydGV4Q21kKGlkPE1UTFJlbmRlckNvbW1hbmRFbmNvZGVyPiBlbmNvZGVy
LAogICAgIHNpemVfdCBidWZmZXJPZmZzZXQgICAgICAgICAgICA9IHN0cmVhbS0+ZmV0Y2g8c2l6
ZV90PigpOwogICAgIHVpbnQzMl90IGluc3RhbmNlcyAgICAgICAgICAgICA9IHN0cmVhbS0+ZmV0
Y2g8dWludDMyX3Q+KCk7CiAgICAgdWludDMyX3QgYmFzZVZlcnRleCAgICAgICAgICAgID0gc3Ry
ZWFtLT5mZXRjaDx1aW50MzJfdD4oKTsKKyAgICB1aW50MzJfdCBiYXNlSW5zdGFuY2UgICAgICAg
ICAgPSBzdHJlYW0tPmZldGNoPHVpbnQzMl90PigpOwogICAgIFtlbmNvZGVyIGRyYXdJbmRleGVk
UHJpbWl0aXZlczpwcmltaXRpdmVUeXBlCiAgICAgICAgICAgICAgICAgICAgICAgICBpbmRleENv
dW50OmluZGV4Q291bnQKICAgICAgICAgICAgICAgICAgICAgICAgICBpbmRleFR5cGU6aW5kZXhU
eXBlCkBAIC0zMjEsNyArMzM4LDcgQEAgdm9pZCBEcmF3SW5kZXhlZEluc3RhbmNlZEJhc2VWZXJ0
ZXhDbWQoaWQ8TVRMUmVuZGVyQ29tbWFuZEVuY29kZXI+IGVuY29kZXIsCiAgICAgICAgICAgICAg
ICAgIGluZGV4QnVmZmVyT2Zmc2V0OmJ1ZmZlck9mZnNldAogICAgICAgICAgICAgICAgICAgICAg
aW5zdGFuY2VDb3VudDppbnN0YW5jZXMKICAgICAgICAgICAgICAgICAgICAgICAgIGJhc2VWZXJ0
ZXg6YmFzZVZlcnRleAotICAgICAgICAgICAgICAgICAgICAgIGJhc2VJbnN0YW5jZTowXTsKKyAg
ICAgICAgICAgICAgICAgICAgICBiYXNlSW5zdGFuY2U6YmFzZUluc3RhbmNlXTsKICAgICBbaW5k
ZXhCdWZmZXIgQU5HTEVfTVRMX1JFTEVBU0VdOwogfQogCkBAIC00MjUsMjQgKzQ0MiwxNSBAQCB2
b2lkIENvbW1hbmRRdWV1ZTo6c2V0KGlkPE1UTENvbW1hbmRRdWV1ZT4gbWV0YWxRdWV1ZSkKIAog
dm9pZCBDb21tYW5kUXVldWU6OmZpbmlzaEFsbENvbW1hbmRzKCkKIHsKKyAgICBzdGQ6OmRlcXVl
PENtZEJ1ZmZlclF1ZXVlRW50cnk+IGNvbW1hbmRCdWZmZXJzOwogICAgIHsKLSAgICAgICAgLy8g
Q29weSB0byB0ZW1wIGxpc3QKICAgICAgICAgc3RkOjpsb2NrX2d1YXJkPHN0ZDo6bXV0ZXg+IGxn
KG1Mb2NrKTsKLQotICAgICAgICBmb3IgKENtZEJ1ZmZlclF1ZXVlRW50cnkgJm1ldGFsQnVmZmVy
RW50cnkgOiBtTWV0YWxDbWRCdWZmZXJzKQotICAgICAgICB7Ci0gICAgICAgICAgICBtTWV0YWxD
bWRCdWZmZXJzVG1wLnB1c2hfYmFjayhtZXRhbEJ1ZmZlckVudHJ5KTsKLSAgICAgICAgfQotCi0g
ICAgICAgIG1NZXRhbENtZEJ1ZmZlcnMuY2xlYXIoKTsKKyAgICAgICAgbU1ldGFsQ21kQnVmZmVy
cy5zd2FwKGNvbW1hbmRCdWZmZXJzKTsKICAgICB9Ci0KLSAgICAvLyBXYWl0IGZvciBjb21tYW5k
IGJ1ZmZlcnMgdG8gZmluaXNoCi0gICAgZm9yIChDbWRCdWZmZXJRdWV1ZUVudHJ5ICZtZXRhbEJ1
ZmZlckVudHJ5IDogbU1ldGFsQ21kQnVmZmVyc1RtcCkKKyAgICBmb3IgKENtZEJ1ZmZlclF1ZXVl
RW50cnkgJmVudHJ5IDogY29tbWFuZEJ1ZmZlcnMpCiAgICAgewotICAgICAgICBbbWV0YWxCdWZm
ZXJFbnRyeS5idWZmZXIgd2FpdFVudGlsQ29tcGxldGVkXTsKKyAgICAgICAgW2VudHJ5LmJ1ZmZl
ciB3YWl0VW50aWxDb21wbGV0ZWRdOwogICAgIH0KLSAgICBtTWV0YWxDbWRCdWZmZXJzVG1wLmNs
ZWFyKCk7CiB9CiAKIHZvaWQgQ29tbWFuZFF1ZXVlOjplbnN1cmVSZXNvdXJjZVJlYWR5Rm9yQ1BV
KGNvbnN0IFJlc291cmNlUmVmICZyZXNvdXJjZSkKQEAgLTE2ODUsNiArMTY5MywyNiBAQCBSZW5k
ZXJDb21tYW5kRW5jb2RlciAmUmVuZGVyQ29tbWFuZEVuY29kZXI6OmRyYXdJbnN0YW5jZWQoTVRM
UHJpbWl0aXZlVHlwZSBwcmltaQogICAgIHJldHVybiAqdGhpczsKIH0KIAorUmVuZGVyQ29tbWFu
ZEVuY29kZXIgJlJlbmRlckNvbW1hbmRFbmNvZGVyOjpkcmF3SW5zdGFuY2VkQmFzZUluc3RhbmNl
KAorICAgIE1UTFByaW1pdGl2ZVR5cGUgcHJpbWl0aXZlVHlwZSwKKyAgICB1aW50MzJfdCB2ZXJ0
ZXhTdGFydCwKKyAgICB1aW50MzJfdCB2ZXJ0ZXhDb3VudCwKKyAgICB1aW50MzJfdCBpbnN0YW5j
ZXMsCisgICAgdWludDMyX3QgYmFzZUluc3RhbmNlKQoreworICAgIEFTU0VSVChtUGlwZWxpbmVT
dGF0ZVNldCAmJgorICAgICAgICAgICAiUmVuZGVyIFBpcGVsaW5lIFN0YXRlIHdhcyBuZXZlciBz
ZXQgYW5kIHdlJ3ZlIGlzc3VlZCBhIGRyYXcgY29tbWFuZC4iKTsKKyAgICBtSGFzRHJhd0NhbGxz
ID0gdHJ1ZTsKKyAgICBtQ29tbWFuZHMucHVzaChDbWRUeXBlOjpEcmF3SW5zdGFuY2VkQmFzZUlu
c3RhbmNlKQorICAgICAgICAucHVzaChwcmltaXRpdmVUeXBlKQorICAgICAgICAucHVzaCh2ZXJ0
ZXhTdGFydCkKKyAgICAgICAgLnB1c2godmVydGV4Q291bnQpCisgICAgICAgIC5wdXNoKGluc3Rh
bmNlcykKKyAgICAgICAgLnB1c2goYmFzZUluc3RhbmNlKTsKKworICAgIHJldHVybiAqdGhpczsK
K30KKwogUmVuZGVyQ29tbWFuZEVuY29kZXIgJlJlbmRlckNvbW1hbmRFbmNvZGVyOjpkcmF3SW5k
ZXhlZChNVExQcmltaXRpdmVUeXBlIHByaW1pdGl2ZVR5cGUsCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IGluZGV4Q291bnQs
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IE1UTEluZGV4VHlwZSBpbmRleFR5cGUsCkBAIC0xNzM5LDE0ICsxNzY3LDE1IEBAIFJlbmRlckNv
bW1hbmRFbmNvZGVyICZSZW5kZXJDb21tYW5kRW5jb2Rlcjo6ZHJhd0luZGV4ZWRJbnN0YW5jZWQo
TVRMUHJpbWl0aXZlVHlwCiAgICAgcmV0dXJuICp0aGlzOwogfQogCi1SZW5kZXJDb21tYW5kRW5j
b2RlciAmUmVuZGVyQ29tbWFuZEVuY29kZXI6OmRyYXdJbmRleGVkSW5zdGFuY2VkQmFzZVZlcnRl
eCgKK1JlbmRlckNvbW1hbmRFbmNvZGVyICZSZW5kZXJDb21tYW5kRW5jb2Rlcjo6ZHJhd0luZGV4
ZWRJbnN0YW5jZWRCYXNlVmVydGV4QmFzZUluc3RhbmNlKAogICAgIE1UTFByaW1pdGl2ZVR5cGUg
cHJpbWl0aXZlVHlwZSwKICAgICB1aW50MzJfdCBpbmRleENvdW50LAogICAgIE1UTEluZGV4VHlw
ZSBpbmRleFR5cGUsCiAgICAgY29uc3QgQnVmZmVyUmVmICZpbmRleEJ1ZmZlciwKICAgICBzaXpl
X3QgYnVmZmVyT2Zmc2V0LAogICAgIHVpbnQzMl90IGluc3RhbmNlcywKLSAgICB1aW50MzJfdCBi
YXNlVmVydGV4KQorICAgIHVpbnQzMl90IGJhc2VWZXJ0ZXgsCisgICAgdWludDMyX3QgYmFzZUlu
c3RhbmNlKQogewogICAgIEFTU0VSVChtUGlwZWxpbmVTdGF0ZVNldCAmJgogICAgICAgICAgICAi
UmVuZGVyIFBpcGVsaW5lIFN0YXRlIHdhcyBuZXZlciBzZXQgYW5kIHdlJ3ZlIGlzc3VlZCBhIGRy
YXcgY29tbWFuZC4iKTsKQEAgLTE3NTgsMTQgKzE3ODcsMTUgQEAgUmVuZGVyQ29tbWFuZEVuY29k
ZXIgJlJlbmRlckNvbW1hbmRFbmNvZGVyOjpkcmF3SW5kZXhlZEluc3RhbmNlZEJhc2VWZXJ0ZXgo
CiAgICAgbUhhc0RyYXdDYWxscyA9IHRydWU7CiAgICAgY21kQnVmZmVyKCkuc2V0UmVhZERlcGVu
ZGVuY3koaW5kZXhCdWZmZXIpOwogCi0gICAgbUNvbW1hbmRzLnB1c2goQ21kVHlwZTo6RHJhd0lu
ZGV4ZWRJbnN0YW5jZWRCYXNlVmVydGV4KQorICAgIG1Db21tYW5kcy5wdXNoKENtZFR5cGU6OkRy
YXdJbmRleGVkSW5zdGFuY2VkQmFzZVZlcnRleEJhc2VJbnN0YW5jZSkKICAgICAgICAgLnB1c2go
cHJpbWl0aXZlVHlwZSkKICAgICAgICAgLnB1c2goaW5kZXhDb3VudCkKICAgICAgICAgLnB1c2go
aW5kZXhUeXBlKQogICAgICAgICAucHVzaChbaW5kZXhCdWZmZXItPmdldCgpIEFOR0xFX01UTF9S
RVRBSU5dKQogICAgICAgICAucHVzaChidWZmZXJPZmZzZXQpCiAgICAgICAgIC5wdXNoKGluc3Rh
bmNlcykKLSAgICAgICAgLnB1c2goYmFzZVZlcnRleCk7CisgICAgICAgIC5wdXNoKGJhc2VWZXJ0
ZXgpCisgICAgICAgIC5wdXNoKGJhc2VJbnN0YW5jZSk7CiAKICAgICByZXR1cm4gKnRoaXM7CiB9
CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVy
ZXIvbWV0YWwvbXRsX3Jlc291cmNlcy5tbSBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9s
aWJBTkdMRS9yZW5kZXJlci9tZXRhbC9tdGxfcmVzb3VyY2VzLm1tCmluZGV4IDBmOWI1M2I2ZDJl
MDg2ZTA2ODliNmJmNjIyMjhlMTRkOGU3ZjZhMzUuLjdlYmYzMTY5MDA1NWZkMzg0NjdmZWI5OWM0
ZTEyYjgwMWQ3ZDFjZTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9s
aWJBTkdMRS9yZW5kZXJlci9tZXRhbC9tdGxfcmVzb3VyY2VzLm1tCisrKyBiL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9tdGxfcmVzb3VyY2VzLm1t
CkBAIC0zMzcsNiArMzM3LDE1IEBAIGFuZ2xlOjpSZXN1bHQgVGV4dHVyZTo6TWFrZVRleHR1cmUo
Q29udGV4dE10bCAqY29udGV4dCwKICAgICByZXR1cm4gYW5nbGU6OlJlc3VsdDo6Q29udGludWU7
CiB9CiAKK2Jvb2wgbmVlZE11bHRpc2FtcGxlQ29sb3JGb3JtYXRTaGFkZXJSZWFkV29ya2Fyb3Vu
ZChDb250ZXh0TXRsICpjb250ZXh0LCBNVExUZXh0dXJlRGVzY3JpcHRvciAqZGVzYykKK3sKKyAg
ICByZXR1cm4gZGVzYy5zYW1wbGVDb3VudCA+IDEgJiYKKyAgICAgICAgICAgY29udGV4dC0+Z2V0
RGlzcGxheSgpCisgICAgICAgICAgICAgICAtPmdldEZlYXR1cmVzKCkKKyAgICAgICAgICAgICAg
IC5tdWx0aXNhbXBsZUNvbG9yRm9ybWF0U2hhZGVyUmVhZFdvcmthcm91bmQuZW5hYmxlZCAmJgor
ICAgICAgICAgICBjb250ZXh0LT5nZXROYXRpdmVGb3JtYXRDYXBzKGRlc2MucGl4ZWxGb3JtYXQp
LmNvbG9yUmVuZGVyYWJsZTsKK30KKwogLyoqIHN0YXRpYyAqLwogVGV4dHVyZVJlZiBUZXh0dXJl
OjpNYWtlRnJvbU1ldGFsKGlkPE1UTFRleHR1cmU+IG1ldGFsVGV4dHVyZSkKIHsKQEAgLTM5Nyw3
ICs0MDYsNyBAQCBUZXh0dXJlOjpUZXh0dXJlKENvbnRleHRNdGwgKmNvbnRleHQsCiAgICAgICAg
ICAgICBkZXNjLnJlc291cmNlT3B0aW9ucyA9IE1UTFJlc291cmNlU3RvcmFnZU1vZGVQcml2YXRl
OwogICAgICAgICB9CiAKLSAgICAgICAgaWYgKCFyZW5kZXJUYXJnZXRPbmx5KQorICAgICAgICBp
ZiAoIXJlbmRlclRhcmdldE9ubHkgfHwgbmVlZE11bHRpc2FtcGxlQ29sb3JGb3JtYXRTaGFkZXJS
ZWFkV29ya2Fyb3VuZChjb250ZXh0LCBkZXNjKSkKICAgICAgICAgewogICAgICAgICAgICAgZGVz
Yy51c2FnZSA9IGRlc2MudXNhZ2UgfCBNVExUZXh0dXJlVXNhZ2VTaGFkZXJSZWFkOwogICAgICAg
ICAgICAgaWYgKGNvbnRleHQtPmdldE5hdGl2ZUZvcm1hdENhcHMoZGVzYy5waXhlbEZvcm1hdCku
d3JpdGFibGUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5H
TEUvcmVuZGVyZXIvbWV0YWwvc2hhZGVycy9jcmVhdGVfbXRsX2ludGVybmFsX3NoYWRlcnMucHkg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvc2hh
ZGVycy9jcmVhdGVfbXRsX2ludGVybmFsX3NoYWRlcnMucHkKaW5kZXggZGE3NDU3Y2I4NTdhNmMy
MGM1YTY4ZjkzMGQ2YzhiOGExNDk5MTlkYy4uNGViZTk5MjY2NjA5YjZhMDhhNjE0OTMxNDlhOWQw
MjEyMWZiZjAzMyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFO
R0xFL3JlbmRlcmVyL21ldGFsL3NoYWRlcnMvY3JlYXRlX210bF9pbnRlcm5hbF9zaGFkZXJzLnB5
CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRh
bC9zaGFkZXJzL2NyZWF0ZV9tdGxfaW50ZXJuYWxfc2hhZGVycy5weQpAQCAtMSw0ICsxLDQgQEAK
LSMhL3Vzci9iaW4vcHl0aG9uCisjIS91c3IvYmluL3B5dGhvbjMKICMgQ29weXJpZ2h0IDIwMjEg
VGhlIEFOR0xFIFByb2plY3QgQXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICMgVXNlIG9m
IHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUgbGljZW5zZSB0aGF0
IGNhbiBiZQogIyBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgpkaWZmIC0tZ2l0IGEvU291cmNl
L1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9Db250ZXh0Vmsu
Y3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGth
bi9Db250ZXh0VmsuY3BwCmluZGV4IGNlYjgzOWU0YjdiODZjYTdmMWQ1OWE2NGE0MjRkMTU2ZDJi
NGE5ZWMuLjQ3NTgwNjJhZGQzNTIwNGY0N2ZjMzIyZTM3ZmI1MzMzYTU3YTUxNzEgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4v
Q29udGV4dFZrLmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUv
cmVuZGVyZXIvdnVsa2FuL0NvbnRleHRWay5jcHAKQEAgLTYwNyw5ICs2MDcsMTcgQEAgY29uc3Rl
eHByIGFuZ2xlOjpQYWNrZWRFbnVtTWFwPFJlbmRlclBhc3NDbG9zdXJlUmVhc29uLCBjb25zdCBj
aGFyICo+IGtSZW5kZXJQYXMKICAgICAgIlRlbXBvcmFyeSByZW5kZXIgcGFzcyB1c2VkIGZvciBp
bWFnZSBjb3B5IGNsb3NlZCJ9LAogICAgIHtSZW5kZXJQYXNzQ2xvc3VyZVJlYXNvbjo6VGVtcG9y
YXJ5Rm9yT3ZlcmxheURyYXcsCiAgICAgICJUZW1wb3JhcnkgcmVuZGVyIHBhc3MgdXNlZCBmb3Ig
b3ZlcmxheSBkcmF3IGNsb3NlZCJ9LAotICAgIHtSZW5kZXJQYXNzQ2xvc3VyZVJlYXNvbjo6T3Zl
cmxheUZvbnRDcmVhdGlvbiwKLSAgICAgIlJlbmRlciBwYXNzIGNsb3NlZCBkdWUgdG8gY3JlYXRp
bmcgT3ZlcmxheSBmb250In0sCiB9fTsKKworVmtEZXBlbmRlbmN5RmxhZ3MgR2V0TG9jYWxEZXBl
bmRlbmN5RmxhZ3MoQ29udGV4dFZrICpjb250ZXh0VmspCit7CisgICAgVmtEZXBlbmRlbmN5Rmxh
Z3MgZGVwZW5kZW5jeUZsYWdzID0gVktfREVQRU5ERU5DWV9CWV9SRUdJT05fQklUOworICAgIGlm
IChjb250ZXh0VmstPmdldEN1cnJlbnRWaWV3Q291bnQoKSA+IDApCisgICAgeworICAgICAgICBk
ZXBlbmRlbmN5RmxhZ3MgfD0gVktfREVQRU5ERU5DWV9WSUVXX0xPQ0FMX0JJVDsKKyAgICB9Cisg
ICAgcmV0dXJuIGRlcGVuZGVuY3lGbGFnczsKK30KIH0gIC8vIGFub255bW91cyBuYW1lc3BhY2UK
IAogLy8gTm90IG5lY2Vzc2FyeSBvbmNlIHVwZ3JhZGVkIHRvIEMrKzE3LgpAQCAtNjIyLDE4ICs2
MzAsOCBAQCBjb25zdGV4cHIgQ29udGV4dFZrOjpEaXJ0eUJpdHMgQ29udGV4dFZrOjprRHJpdmVy
VW5pZm9ybXNBbmRCaW5kaW5nRGlydHlCaXRzOwogCiB2b2lkIENvbnRleHRWazo6Zmx1c2hEZXNj
cmlwdG9yU2V0VXBkYXRlcygpCiB7Ci0gICAgaWYgKG1Xcml0ZURlc2NyaXB0b3JTZXRzLmVtcHR5
KCkpCi0gICAgewotICAgICAgICBBU1NFUlQobURlc2NyaXB0b3JCdWZmZXJJbmZvcy5lbXB0eSgp
KTsKLSAgICAgICAgQVNTRVJUKG1EZXNjcmlwdG9ySW1hZ2VJbmZvcy5lbXB0eSgpKTsKLSAgICAg
ICAgcmV0dXJuOwotICAgIH0KLQotICAgIHZrVXBkYXRlRGVzY3JpcHRvclNldHMoZ2V0RGV2aWNl
KCksIHN0YXRpY19jYXN0PHVpbnQzMl90PihtV3JpdGVEZXNjcmlwdG9yU2V0cy5zaXplKCkpLAot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgbVdyaXRlRGVzY3JpcHRvclNldHMuZGF0YSgpLCAw
LCBudWxscHRyKTsKLSAgICBtV3JpdGVEZXNjcmlwdG9yU2V0cy5jbGVhcigpOwotICAgIG1EZXNj
cmlwdG9yQnVmZmVySW5mb3MuY2xlYXIoKTsKLSAgICBtRGVzY3JpcHRvckltYWdlSW5mb3MuY2xl
YXIoKTsKKyAgICBtUGVyZkNvdW50ZXJzLndyaXRlRGVzY3JpcHRvclNldHMgKz0KKyAgICAgICAg
bVVwZGF0ZURlc2NyaXB0b3JTZXRzQnVpbGRlci5mbHVzaERlc2NyaXB0b3JTZXRVcGRhdGVzKGdl
dERldmljZSgpKTsKIH0KIAogQU5HTEVfSU5MSU5FIHZvaWQgQ29udGV4dFZrOjpvblJlbmRlclBh
c3NGaW5pc2hlZChSZW5kZXJQYXNzQ2xvc3VyZVJlYXNvbiByZWFzb24pCkBAIC03MTQsNyArNzEy
LDYgQEAgQ29udGV4dFZrOjpDb250ZXh0VmsoY29uc3QgZ2w6OlN0YXRlICZzdGF0ZSwgZ2w6OkVy
cm9yU2V0ICplcnJvclNldCwgUmVuZGVyZXJWawogICAgICAgbUxhc3RQcm9ncmFtVXNlc0ZyYW1l
YnVmZmVyRmV0Y2goZmFsc2UpLAogICAgICAgbUdwdUNsb2NrU3luY3tzdGQ6Om51bWVyaWNfbGlt
aXRzPGRvdWJsZT46Om1heCgpLCBzdGQ6Om51bWVyaWNfbGltaXRzPGRvdWJsZT46Om1heCgpfSwK
ICAgICAgIG1HcHVFdmVudFRpbWVzdGFtcE9yaWdpbigwKSwKLSAgICAgIG1QZXJmQ291bnRlcnN7
fSwKICAgICAgIG1Db250ZXh0UGVyZkNvdW50ZXJze30sCiAgICAgICBtQ3VtdWxhdGl2ZUNvbnRl
eHRQZXJmQ291bnRlcnN7fSwKICAgICAgIG1Db250ZXh0UHJpb3JpdHkocmVuZGVyZXItPmdldERy
aXZlclByaW9yaXR5KEdldENvbnRleHRQcmlvcml0eShzdGF0ZSkpKSwKQEAgLTc3OCw2ICs3NzUs
OCBAQCBDb250ZXh0Vms6OkNvbnRleHRWayhjb25zdCBnbDo6U3RhdGUgJnN0YXRlLCBnbDo6RXJy
b3JTZXQgKmVycm9yU2V0LCBSZW5kZXJlclZrCiAgICAgICAgICZDb250ZXh0Vms6OmhhbmRsZURp
cnR5R3JhcGhpY3NTaGFkZXJSZXNvdXJjZXM7CiAgICAgbUdyYXBoaWNzRGlydHlCaXRIYW5kbGVy
c1tESVJUWV9CSVRfRlJBTUVCVUZGRVJfRkVUQ0hfQkFSUklFUl0gPQogICAgICAgICAmQ29udGV4
dFZrOjpoYW5kbGVEaXJ0eUdyYXBoaWNzRnJhbWVidWZmZXJGZXRjaEJhcnJpZXI7CisgICAgbUdy
YXBoaWNzRGlydHlCaXRIYW5kbGVyc1tESVJUWV9CSVRfQkxFTkRfQkFSUklFUl0gPQorICAgICAg
ICAmQ29udGV4dFZrOjpoYW5kbGVEaXJ0eUdyYXBoaWNzQmxlbmRCYXJyaWVyOwogICAgIGlmIChn
ZXRGZWF0dXJlcygpLnN1cHBvcnRzVHJhbnNmb3JtRmVlZGJhY2tFeHRlbnNpb24uZW5hYmxlZCkK
ICAgICB7CiAgICAgICAgIG1HcmFwaGljc0RpcnR5Qml0SGFuZGxlcnNbRElSVFlfQklUX1RSQU5T
Rk9STV9GRUVEQkFDS19CVUZGRVJTXSA9CkBAIC04NDYsMTAgKzg0NSwyMiBAQCBDb250ZXh0Vms6
OkNvbnRleHRWayhjb25zdCBnbDo6U3RhdGUgJnN0YXRlLCBnbDo6RXJyb3JTZXQgKmVycm9yU2V0
LCBSZW5kZXJlclZrCiAgICAgbVBpcGVsaW5lRGlydHlCaXRzTWFzay5yZXNldChnbDo6U3RhdGU6
OkRJUlRZX0JJVF9TSEFERVJfU1RPUkFHRV9CVUZGRVJfQklORElORyk7CiAgICAgbVBpcGVsaW5l
RGlydHlCaXRzTWFzay5yZXNldChnbDo6U3RhdGU6OkRJUlRZX0JJVF9BVE9NSUNfQ09VTlRFUl9C
VUZGRVJfQklORElORyk7CiAKLSAgICAvLyBSZXNlcnZlIHJlYXNvbmFibGUgYW1vdW50IG9mIHNw
YWNlcyBzbyB0aGF0IGZvciBtYWpvcml0eSBvZiBhcHBzIHdlIGRvbid0IG5lZWQgdG8gZ3JvdyBh
dCBhbGwKLSAgICBtRGVzY3JpcHRvckJ1ZmZlckluZm9zLnJlc2VydmUoa0Rlc2NyaXB0b3JCdWZm
ZXJJbmZvc0luaXRpYWxTaXplKTsKLSAgICBtRGVzY3JpcHRvckltYWdlSW5mb3MucmVzZXJ2ZShr
RGVzY3JpcHRvckltYWdlSW5mb3NJbml0aWFsU2l6ZSk7Ci0gICAgbVdyaXRlRGVzY3JpcHRvclNl
dHMucmVzZXJ2ZShrRGVzY3JpcHRvcldyaXRlSW5mb3NJbml0aWFsU2l6ZSk7CisgICAgYW5nbGU6
OlBlcmZNb25pdG9yQ291bnRlckdyb3VwIHZ1bGthbkdyb3VwOworICAgIHZ1bGthbkdyb3VwLm5h
bWUgPSAidnVsa2FuIjsKKworI2RlZmluZSBBTkdMRV9BRERfUEVSRl9NT05JVE9SX0NPVU5URVJf
R1JPVVAoQ09VTlRFUikgXAorICAgIHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgXAorICAgICAgICBhbmdsZTo6UGVyZk1vbml0b3JDb3VudGVyIGNvdW50
ZXI7ICAgICAgICAgICAgXAorICAgICAgICBjb3VudGVyLm5hbWUgID0gI0NPVU5URVI7ICAgICAg
ICAgICAgICAgICAgICAgXAorICAgICAgICBjb3VudGVyLnZhbHVlID0gMDsgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgXAorICAgICAgICB2dWxrYW5Hcm91cC5jb3VudGVycy5wdXNoX2JhY2so
Y291bnRlcik7ICAgICAgXAorICAgIH0KKworICAgIEFOR0xFX1ZLX1BFUkZfQ09VTlRFUlNfWChB
TkdMRV9BRERfUEVSRl9NT05JVE9SX0NPVU5URVJfR1JPVVApCisKKyN1bmRlZiBBTkdMRV9BRERf
UEVSRl9NT05JVE9SX0NPVU5URVJfR1JPVVAKKworICAgIG1QZXJmTW9uaXRvckNvdW50ZXJzLnB1
c2hfYmFjayh2dWxrYW5Hcm91cCk7CiB9CiAKIENvbnRleHRWazo6fkNvbnRleHRWaygpID0gZGVm
YXVsdDsKQEAgLTExNTEsOCArMTE2MiwxMiBAQCBhbmdsZTo6UmVzdWx0IENvbnRleHRWazo6c2V0
dXBEcmF3KGNvbnN0IGdsOjpDb250ZXh0ICpjb250ZXh0LAogICAgIFByb2dyYW1FeGVjdXRhYmxl
VmsgKnByb2dyYW1FeGVjdXRhYmxlVmsgPSBnZXRFeGVjdXRhYmxlKCk7CiAgICAgaWYgKHByb2dy
YW1FeGVjdXRhYmxlVmstPmhhc0RpcnR5VW5pZm9ybXMoKSkKICAgICB7Ci0gICAgICAgIEFOR0xF
X1RSWShwcm9ncmFtRXhlY3V0YWJsZVZrLT51cGRhdGVVbmlmb3Jtcyh0aGlzLCAqbVN0YXRlLmdl
dFByb2dyYW1FeGVjdXRhYmxlKCksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAmbURlZmF1bHRVbmlmb3JtU3RvcmFnZSkpOworICAgICAgICBU
cmFuc2Zvcm1GZWVkYmFja1ZrICp0cmFuc2Zvcm1GZWVkYmFja1ZrID0KKyAgICAgICAgICAgIHZr
OjpTYWZlR2V0SW1wbChtU3RhdGUuZ2V0Q3VycmVudFRyYW5zZm9ybUZlZWRiYWNrKCkpOworICAg
ICAgICBBTkdMRV9UUlkocHJvZ3JhbUV4ZWN1dGFibGVWay0+dXBkYXRlVW5pZm9ybXMoCisgICAg
ICAgICAgICB0aGlzLCAmbVVwZGF0ZURlc2NyaXB0b3JTZXRzQnVpbGRlciwgJm1SZXNvdXJjZVVz
ZUxpc3QsICZtRW1wdHlCdWZmZXIsCisgICAgICAgICAgICAqbVN0YXRlLmdldFByb2dyYW1FeGVj
dXRhYmxlKCksICZtRGVmYXVsdFVuaWZvcm1TdG9yYWdlLAorICAgICAgICAgICAgbVN0YXRlLmlz
VHJhbnNmb3JtRmVlZGJhY2tBY3RpdmVVbnBhdXNlZCgpLCB0cmFuc2Zvcm1GZWVkYmFja1ZrKSk7
CiAgICAgICAgIG1HcmFwaGljc0RpcnR5Qml0cy5zZXQoRElSVFlfQklUX0RFU0NSSVBUT1JfU0VU
Uyk7CiAgICAgfQogCkBAIC0xMjMxLDYgKzEyNDYsMTcgQEAgYW5nbGU6OlJlc3VsdCBDb250ZXh0
Vms6OnNldHVwSW5kZXhlZERyYXcoY29uc3QgZ2w6OkNvbnRleHQgKmNvbnRleHQsCiAgICAgICAg
ICAgICBtR3JhcGhpY3NEaXJ0eUJpdHMuc2V0KERJUlRZX0JJVF9JTkRFWF9CVUZGRVIpOwogICAg
ICAgICAgICAgbUxhc3RJbmRleEJ1ZmZlck9mZnNldCA9IGluZGljZXM7CiAgICAgICAgIH0KKwor
ICAgICAgICAvLyBXaGVuIHlvdSBkcmF3IHdpdGggTGluZUxvb3AgbW9kZSBvciBHTF9VTlNJR05F
RF9CWVRFIHR5cGUsIHdlIG1heSBhbGxvY2F0ZSBpdHMgb3duCisgICAgICAgIC8vIGVsZW1lbnQg
YnVmZmVyIGFuZCBtb2RpZnkgbUN1cnJlbnRFbGVtZW50QXJyYXlCdWZmZXIuIFdoZW4gd2Ugc3dp
dGNoIG91dCBvZiB0aGF0IGRyYXcKKyAgICAgICAgLy8gbW9kZSwgd2UgbXVzdCByZXNldCBtQ3Vy
cmVudEVsZW1lbnRBcnJheUJ1ZmZlciBiYWNrIHRvIHRoZSB2ZXJ0ZXhBcnJheSdzIGVsZW1lbnQg
YnVmZmVyLgorICAgICAgICAvLyBTaW5jZSBpbiBlaXRoZXIgY2FzZSB3ZSBzZXQgRElSVFlfQklU
X0lOREVYX0JVRkZFUiBkaXJ0eSBiaXQsIHdlIHVzZSB0aGlzIGJpdCB0byByZS1zeW5jCisgICAg
ICAgIC8vIG1DdXJyZW50RWxlbWVudEFycmF5QnVmZmVyLgorICAgICAgICBpZiAobUdyYXBoaWNz
RGlydHlCaXRzW0RJUlRZX0JJVF9JTkRFWF9CVUZGRVJdKQorICAgICAgICB7CisgICAgICAgICAg
ICB2ZXJ0ZXhBcnJheVZrLT51cGRhdGVDdXJyZW50RWxlbWVudEFycmF5QnVmZmVyKCk7CisgICAg
ICAgIH0KKwogICAgICAgICBpZiAoc2hvdWxkQ29udmVydFVpbnQ4VmtJbmRleFR5cGUoaW5kZXhU
eXBlKSAmJiBtR3JhcGhpY3NEaXJ0eUJpdHNbRElSVFlfQklUX0lOREVYX0JVRkZFUl0pCiAgICAg
ICAgIHsKICAgICAgICAgICAgIEFOR0xFX1ZLX1BFUkZfV0FSTklORyh0aGlzLCBHTF9ERUJVR19T
RVZFUklUWV9MT1csCkBAIC0xMzkyLDggKzE0MTgsMTIgQEAgYW5nbGU6OlJlc3VsdCBDb250ZXh0
Vms6OnNldHVwRGlzcGF0Y2goY29uc3QgZ2w6OkNvbnRleHQgKmNvbnRleHQpCiAgICAgUHJvZ3Jh
bUV4ZWN1dGFibGVWayAqcHJvZ3JhbUV4ZWN1dGFibGVWayA9IGdldEV4ZWN1dGFibGUoKTsKICAg
ICBpZiAocHJvZ3JhbUV4ZWN1dGFibGVWay0+aGFzRGlydHlVbmlmb3JtcygpKQogICAgIHsKLSAg
ICAgICAgQU5HTEVfVFJZKHByb2dyYW1FeGVjdXRhYmxlVmstPnVwZGF0ZVVuaWZvcm1zKHRoaXMs
ICptU3RhdGUuZ2V0UHJvZ3JhbUV4ZWN1dGFibGUoKSwKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZtRGVmYXVsdFVuaWZvcm1TdG9yYWdlKSk7
CisgICAgICAgIFRyYW5zZm9ybUZlZWRiYWNrVmsgKnRyYW5zZm9ybUZlZWRiYWNrVmsgPQorICAg
ICAgICAgICAgdms6OlNhZmVHZXRJbXBsKG1TdGF0ZS5nZXRDdXJyZW50VHJhbnNmb3JtRmVlZGJh
Y2soKSk7CisgICAgICAgIEFOR0xFX1RSWShwcm9ncmFtRXhlY3V0YWJsZVZrLT51cGRhdGVVbmlm
b3JtcygKKyAgICAgICAgICAgIHRoaXMsICZtVXBkYXRlRGVzY3JpcHRvclNldHNCdWlsZGVyLCAm
bVJlc291cmNlVXNlTGlzdCwgJm1FbXB0eUJ1ZmZlciwKKyAgICAgICAgICAgICptU3RhdGUuZ2V0
UHJvZ3JhbUV4ZWN1dGFibGUoKSwgJm1EZWZhdWx0VW5pZm9ybVN0b3JhZ2UsCisgICAgICAgICAg
ICBtU3RhdGUuaXNUcmFuc2Zvcm1GZWVkYmFja0FjdGl2ZVVucGF1c2VkKCksIHRyYW5zZm9ybUZl
ZWRiYWNrVmspKTsKICAgICAgICAgbUNvbXB1dGVEaXJ0eUJpdHMuc2V0KERJUlRZX0JJVF9ERVND
UklQVE9SX1NFVFMpOwogICAgIH0KIApAQCAtMTY0NSw3ICsxNjc1LDkgQEAgYW5nbGU6OlJlc3Vs
dCBDb250ZXh0Vms6OmhhbmRsZURpcnR5R3JhcGhpY3NQaXBlbGluZURlc2MoRGlydHlCaXRzOjpJ
dGVyYXRvciAqZGkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
PyBtQ3VycmVudEdyYXBoaWNzUGlwZWxpbmUtPmdldFBpcGVsaW5lKCkuZ2V0SGFuZGxlKCkKICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBWS19OVUxMX0hBTkRM
RTsKIAotICAgIFByb2dyYW1FeGVjdXRhYmxlVmsgKmV4ZWN1dGFibGVWayA9IGdldEV4ZWN1dGFi
bGUoKTsKKyAgICBBU1NFUlQobVN0YXRlLmdldFByb2dyYW1FeGVjdXRhYmxlKCkgIT0gbnVsbHB0
cik7CisgICAgY29uc3QgZ2w6OlByb2dyYW1FeGVjdXRhYmxlICZnbEV4ZWN1dGFibGUgPSAqbVN0
YXRlLmdldFByb2dyYW1FeGVjdXRhYmxlKCk7CisgICAgUHJvZ3JhbUV4ZWN1dGFibGVWayAqZXhl
Y3V0YWJsZVZrICAgICAgICAgPSBnZXRFeGVjdXRhYmxlKCk7CiAgICAgQVNTRVJUKGV4ZWN1dGFi
bGVWayk7CiAKICAgICBpZiAoIW1DdXJyZW50R3JhcGhpY3NQaXBlbGluZSkKQEAgLTE2NTksNyAr
MTY5MSw4IEBAIGFuZ2xlOjpSZXN1bHQgQ29udGV4dFZrOjpoYW5kbGVEaXJ0eUdyYXBoaWNzUGlw
ZWxpbmVEZXNjKERpcnR5Qml0czo6SXRlcmF0b3IgKmRpCiAKICAgICAgICAgLy8gRHJhdyBjYWxs
IHNoYWRlciBwYXRjaGluZywgc2hhZGVyIGNvbXBpbGF0aW9uLCBhbmQgcGlwZWxpbmUgY2FjaGUg
cXVlcnkuCiAgICAgICAgIEFOR0xFX1RSWShleGVjdXRhYmxlVmstPmdldEdyYXBoaWNzUGlwZWxp
bmUodGhpcywgbUN1cnJlbnREcmF3TW9kZSwgKm1HcmFwaGljc1BpcGVsaW5lRGVzYywKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmZGVzY1B0ciwg
Jm1DdXJyZW50R3JhcGhpY3NQaXBlbGluZSkpOworICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGdsRXhlY3V0YWJsZSwgJmRlc2NQdHIsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJm1DdXJyZW50R3Jh
cGhpY3NQaXBlbGluZSkpOwogICAgICAgICBtR3JhcGhpY3NQaXBlbGluZVRyYW5zaXRpb24ucmVz
ZXQoKTsKICAgICB9CiAgICAgZWxzZSBpZiAobUdyYXBoaWNzUGlwZWxpbmVUcmFuc2l0aW9uLmFu
eSgpKQpAQCAtMTY3Miw4ICsxNzA1LDggQEAgYW5nbGU6OlJlc3VsdCBDb250ZXh0Vms6OmhhbmRs
ZURpcnR5R3JhcGhpY3NQaXBlbGluZURlc2MoRGlydHlCaXRzOjpJdGVyYXRvciAqZGkKICAgICAg
ICAgICAgIGNvbnN0IHZrOjpHcmFwaGljc1BpcGVsaW5lRGVzYyAqZGVzY1B0cjsKIAogICAgICAg
ICAgICAgQU5HTEVfVFJZKGV4ZWN1dGFibGVWay0+Z2V0R3JhcGhpY3NQaXBlbGluZSh0aGlzLCBt
Q3VycmVudERyYXdNb2RlLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAqbUdyYXBoaWNzUGlwZWxpbmVEZXNjLCAmZGVzY1B0ciwKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJm1DdXJy
ZW50R3JhcGhpY3NQaXBlbGluZSkpOworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAqbUdyYXBoaWNzUGlwZWxpbmVEZXNjLCBnbEV4ZWN1dGFi
bGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICZkZXNjUHRyLCAmbUN1cnJlbnRHcmFwaGljc1BpcGVsaW5lKSk7CiAKICAgICAgICAgICAg
IG9sZFBpcGVsaW5lLT5hZGRUcmFuc2l0aW9uKG1HcmFwaGljc1BpcGVsaW5lVHJhbnNpdGlvbiwg
ZGVzY1B0ciwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1DdXJyZW50
R3JhcGhpY3NQaXBlbGluZSk7CkBAIC0xODE2LDE0ICsxODQ5LDE0IEBAIEFOR0xFX0lOTElORSBh
bmdsZTo6UmVzdWx0IENvbnRleHRWazo6aGFuZGxlRGlydHlUZXh0dXJlc0ltcGwoCiAKICAgICAg
ICAgLy8gRW5zdXJlIHRoZSBpbWFnZSBpcyBpbiB0aGUgZGVzaXJlZCBsYXlvdXQKICAgICAgICAg
Y29tbWFuZEJ1ZmZlckhlbHBlci0+aW1hZ2VSZWFkKHRoaXMsIGltYWdlLmdldEFzcGVjdEZsYWdz
KCksIGltYWdlTGF5b3V0LCAmaW1hZ2UpOwotCi0gICAgICAgIHRleHR1cmVWay0+cmV0YWluSW1h
Z2VWaWV3cygmbVJlc291cmNlVXNlTGlzdCk7CiAgICAgfQogCiAgICAgaWYgKGV4ZWN1dGFibGUt
Pmhhc1RleHR1cmVzKCkpCiAgICAgewogICAgICAgICBQcm9ncmFtRXhlY3V0YWJsZVZrICpleGVj
dXRhYmxlVmsgPSBnZXRFeGVjdXRhYmxlKCk7Ci0gICAgICAgIEFOR0xFX1RSWShleGVjdXRhYmxl
VmstPnVwZGF0ZVRleHR1cmVzRGVzY3JpcHRvclNldCh0aGlzLCBtQWN0aXZlVGV4dHVyZXNEZXNj
KSk7CisgICAgICAgIEFOR0xFX1RSWShleGVjdXRhYmxlVmstPnVwZGF0ZVRleHR1cmVzRGVzY3Jp
cHRvclNldCgKKyAgICAgICAgICAgIHRoaXMsICZtVXBkYXRlRGVzY3JpcHRvclNldHNCdWlsZGVy
LCAmbVJlc291cmNlVXNlTGlzdCwgKmV4ZWN1dGFibGUsIG1BY3RpdmVUZXh0dXJlcywKKyAgICAg
ICAgICAgIG1BY3RpdmVUZXh0dXJlc0Rlc2MsIG1FbXVsYXRlU2VhbWZ1bEN1YmVNYXBTYW1wbGlu
ZykpOwogICAgIH0KIAogICAgIHJldHVybiBhbmdsZTo6UmVzdWx0OjpDb250aW51ZTsKQEAgLTE5
MDAsNyArMTkzMywyMyBAQCBhbmdsZTo6UmVzdWx0IENvbnRleHRWazo6aGFuZGxlRGlydHlHcmFw
aGljc0ZyYW1lYnVmZmVyRmV0Y2hCYXJyaWVyKAogCiAgICAgbVJlbmRlclBhc3NDb21tYW5kQnVm
ZmVyLT5waXBlbGluZUJhcnJpZXIoCiAgICAgICAgIFZLX1BJUEVMSU5FX1NUQUdFX0NPTE9SX0FU
VEFDSE1FTlRfT1VUUFVUX0JJVCwgVktfUElQRUxJTkVfU1RBR0VfRlJBR01FTlRfU0hBREVSX0JJ
VCwKLSAgICAgICAgVktfREVQRU5ERU5DWV9CWV9SRUdJT05fQklULCAxLCAmbWVtb3J5QmFycmll
ciwgMCwgbnVsbHB0ciwgMCwgbnVsbHB0cik7CisgICAgICAgIEdldExvY2FsRGVwZW5kZW5jeUZs
YWdzKHRoaXMpLCAxLCAmbWVtb3J5QmFycmllciwgMCwgbnVsbHB0ciwgMCwgbnVsbHB0cik7CisK
KyAgICByZXR1cm4gYW5nbGU6OlJlc3VsdDo6Q29udGludWU7Cit9CisKK2FuZ2xlOjpSZXN1bHQg
Q29udGV4dFZrOjpoYW5kbGVEaXJ0eUdyYXBoaWNzQmxlbmRCYXJyaWVyKERpcnR5Qml0czo6SXRl
cmF0b3IgKmRpcnR5Qml0c0l0ZXJhdG9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgRGlydHlCaXRzIGRpcnR5Qml0TWFzaykKK3sKKyAg
ICBWa01lbW9yeUJhcnJpZXIgbWVtb3J5QmFycmllciA9IHt9OworICAgIG1lbW9yeUJhcnJpZXIu
c1R5cGUgICAgICAgICAgID0gVktfU1RSVUNUVVJFX1RZUEVfTUVNT1JZX0JBUlJJRVI7CisgICAg
bWVtb3J5QmFycmllci5zcmNBY2Nlc3NNYXNrICAgPSBWS19BQ0NFU1NfQ09MT1JfQVRUQUNITUVO
VF9XUklURV9CSVQ7CisgICAgbWVtb3J5QmFycmllci5kc3RBY2Nlc3NNYXNrICAgPSBWS19BQ0NF
U1NfQ09MT1JfQVRUQUNITUVOVF9SRUFEX05PTkNPSEVSRU5UX0JJVF9FWFQ7CisKKyAgICBtUmVu
ZGVyUGFzc0NvbW1hbmRCdWZmZXItPnBpcGVsaW5lQmFycmllcihWS19QSVBFTElORV9TVEFHRV9D
T0xPUl9BVFRBQ0hNRU5UX09VVFBVVF9CSVQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgVktfUElQRUxJTkVfU1RBR0VfQ09MT1JfQVRUQUNITUVOVF9PVVRQ
VVRfQklULAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdl
dExvY2FsRGVwZW5kZW5jeUZsYWdzKHRoaXMpLCAxLCAmbWVtb3J5QmFycmllciwgMCwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBudWxscHRyLCAwLCBudWxs
cHRyKTsKIAogICAgIHJldHVybiBhbmdsZTo6UmVzdWx0OjpDb250aW51ZTsKIH0KQEAgLTE5MzQs
OCArMTk4Myw5IEBAIGFuZ2xlOjpSZXN1bHQgQ29udGV4dFZrOjpoYW5kbGVEaXJ0eVNoYWRlclJl
c291cmNlc0ltcGwoQ29tbWFuZEJ1ZmZlckhlbHBlclQgKmNvCiAKICAgICBQcm9ncmFtRXhlY3V0
YWJsZVZrICpleGVjdXRhYmxlVmsgPSBnZXRFeGVjdXRhYmxlKCk7CiAgICAgRnJhbWVidWZmZXJW
ayAqZHJhd0ZyYW1lYnVmZmVyVmsgID0gZ2V0RHJhd0ZyYW1lYnVmZmVyKCk7Ci0gICAgQU5HTEVf
VFJZKGV4ZWN1dGFibGVWay0+dXBkYXRlU2hhZGVyUmVzb3VyY2VzRGVzY3JpcHRvclNldCh0aGlz
LCBkcmF3RnJhbWVidWZmZXJWaywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1TaGFkZXJCdWZmZXJzRGVzY3JpcHRvckRlc2Mp
KTsKKyAgICBBTkdMRV9UUlkoZXhlY3V0YWJsZVZrLT51cGRhdGVTaGFkZXJSZXNvdXJjZXNEZXNj
cmlwdG9yU2V0KAorICAgICAgICB0aGlzLCBleGVjdXRhYmxlLCAmbVVwZGF0ZURlc2NyaXB0b3JT
ZXRzQnVpbGRlciwgJm1FbXB0eUJ1ZmZlciwgJm1SZXNvdXJjZVVzZUxpc3QsCisgICAgICAgIGRy
YXdGcmFtZWJ1ZmZlclZrLCBtU2hhZGVyQnVmZmVyc0Rlc2NyaXB0b3JEZXNjKSk7CiAKICAgICAv
LyBSZWNvcmQgdXNhZ2Ugb2Ygc3RvcmFnZSBidWZmZXJzIGFuZCBpbWFnZXMgaW4gdGhlIGNvbW1h
bmQgYnVmZmVyIHRvIGFpZCBoYW5kbGluZyBvZgogICAgIC8vIGdsTWVtb3J5QmFycmllci4KQEAg
LTIwNzYsOCArMjEyNiwxMCBAQCBhbmdsZTo6UmVzdWx0IENvbnRleHRWazo6aGFuZGxlRGlydHlH
cmFwaGljc1RyYW5zZm9ybUZlZWRiYWNrQnVmZmVyc0VtdWxhdGlvbigKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiB2azo6a0ludmFs
aWRCdWZmZXJTZXJpYWwpOwogCiAgICAgUHJvZ3JhbVZrICpwcm9ncmFtVmsgPSBnZXRQcm9ncmFt
KCk7Ci0gICAgcmV0dXJuIHByb2dyYW1Way0+Z2V0RXhlY3V0YWJsZSgpLnVwZGF0ZVRyYW5zZm9y
bUZlZWRiYWNrRGVzY3JpcHRvclNldCgKLSAgICAgICAgdGhpcywgKmV4ZWN1dGFibGUsIHVuaWZv
cm1CdWZmZXIsIHhmYkJ1ZmZlckRlc2MpOworICAgIHJldHVybiBwcm9ncmFtVmstPmdldEV4ZWN1
dGFibGUoKS51cGRhdGVVbmlmb3Jtc0FuZFhmYkRlc2NyaXB0b3JTZXQoCisgICAgICAgIHRoaXMs
ICZtVXBkYXRlRGVzY3JpcHRvclNldHNCdWlsZGVyLCAmbVJlc291cmNlVXNlTGlzdCwgJm1FbXB0
eUJ1ZmZlciwgKmV4ZWN1dGFibGUsCisgICAgICAgIHVuaWZvcm1CdWZmZXIsIHhmYkJ1ZmZlckRl
c2MsIG1TdGF0ZS5pc1RyYW5zZm9ybUZlZWRiYWNrQWN0aXZlVW5wYXVzZWQoKSwKKyAgICAgICAg
dHJhbnNmb3JtRmVlZGJhY2tWayk7CiB9CiAKIGFuZ2xlOjpSZXN1bHQgQ29udGV4dFZrOjpoYW5k
bGVEaXJ0eUdyYXBoaWNzVHJhbnNmb3JtRmVlZGJhY2tCdWZmZXJzRXh0ZW5zaW9uKApAQCAtMjIy
NCwxMyArMjI3NiwxNCBAQCBhbmdsZTo6UmVzdWx0IENvbnRleHRWazo6aGFuZGxlRGlydHlEZXNj
cmlwdG9yU2V0c0ltcGwoQ29tbWFuZEJ1ZmZlclQgKmNvbW1hbmRCdQogICAgIH0KIAogICAgIFBy
b2dyYW1FeGVjdXRhYmxlVmsgKmV4ZWN1dGFibGVWayA9IGdldEV4ZWN1dGFibGUoKTsKLSAgICBy
ZXR1cm4gZXhlY3V0YWJsZVZrLT51cGRhdGVEZXNjcmlwdG9yU2V0cyh0aGlzLCBjb21tYW5kQnVm
ZmVyLCBwaXBlbGluZVR5cGUpOworICAgIHJldHVybiBleGVjdXRhYmxlVmstPnVwZGF0ZURlc2Ny
aXB0b3JTZXRzKHRoaXMsICZtUmVzb3VyY2VVc2VMaXN0LCBjb21tYW5kQnVmZmVyLCBwaXBlbGlu
ZVR5cGUpOwogfQogCiB2b2lkIENvbnRleHRWazo6c3luY09iamVjdFBlcmZDb3VudGVycygpCiB7
CiAgICAgbVBlcmZDb3VudGVycy5kZXNjcmlwdG9yU2V0QWxsb2NhdGlvbnMgICAgICAgICAgICAg
ICAgICA9IDA7CiAgICAgbVBlcmZDb3VudGVycy5kZXNjcmlwdG9yU2V0Q2FjaGVUb3RhbFNpemUg
ICAgICAgICAgICAgICA9IDA7CisgICAgbVBlcmZDb3VudGVycy5kZXNjcmlwdG9yU2V0Q2FjaGVL
ZXlTaXplQnl0ZXMgICAgICAgICAgICA9IDA7CiAgICAgbVBlcmZDb3VudGVycy51bmlmb3Jtc0Fu
ZFhmYkRlc2NyaXB0b3JTZXRDYWNoZUhpdHMgICAgICA9IDA7CiAgICAgbVBlcmZDb3VudGVycy51
bmlmb3Jtc0FuZFhmYkRlc2NyaXB0b3JTZXRDYWNoZU1pc3NlcyAgICA9IDA7CiAgICAgbVBlcmZD
b3VudGVycy51bmlmb3Jtc0FuZFhmYkRlc2NyaXB0b3JTZXRDYWNoZVRvdGFsU2l6ZSA9IDA7CkBA
IC0yMjQwLDYgKzIyOTMsNyBAQCB2b2lkIENvbnRleHRWazo6c3luY09iamVjdFBlcmZDb3VudGVy
cygpCiAgICAgbVBlcmZDb3VudGVycy5zaGFkZXJCdWZmZXJzRGVzY3JpcHRvclNldENhY2hlSGl0
cyAgICAgICA9IDA7CiAgICAgbVBlcmZDb3VudGVycy5zaGFkZXJCdWZmZXJzRGVzY3JpcHRvclNl
dENhY2hlTWlzc2VzICAgICA9IDA7CiAgICAgbVBlcmZDb3VudGVycy5zaGFkZXJCdWZmZXJzRGVz
Y3JpcHRvclNldENhY2hlVG90YWxTaXplICA9IDA7CisgICAgbVBlcmZDb3VudGVycy5keW5hbWlj
QnVmZmVyQWxsb2NhdGlvbnMgICAgICAgICAgICAgICAgICA9IDA7CiAKICAgICAvLyBDb250ZXh0
VmsncyBkZXNjcmlwdG9yIHNldCBhbGxvY2F0aW9ucwogICAgIENvbnRleHRWa1BlcmZDb3VudGVy
cyBjb250ZXh0Q291bnRlcnMgPSBnZXRBbmRSZXNldE9iamVjdFBlcmZDb3VudGVycygpOwpAQCAt
MjI4OSw2ICsyMzQzLDExIEBAIHZvaWQgQ29udGV4dFZrOjpzeW5jT2JqZWN0UGVyZkNvdW50ZXJz
KCkKICAgICAgICAgICAgIHByb2dQZXJmQ291bnRlcnMuZGVzY3JpcHRvclNldENhY2hlTWlzc2Vz
W0Rlc2NyaXB0b3JTZXRJbmRleDo6U2hhZGVyUmVzb3VyY2VdOwogICAgICAgICBtUGVyZkNvdW50
ZXJzLnNoYWRlckJ1ZmZlcnNEZXNjcmlwdG9yU2V0Q2FjaGVUb3RhbFNpemUgKz0KICAgICAgICAg
ICAgIHByb2dQZXJmQ291bnRlcnMuZGVzY3JpcHRvclNldENhY2hlU2l6ZXNbRGVzY3JpcHRvclNl
dEluZGV4OjpTaGFkZXJSZXNvdXJjZV07CisKKyAgICAgICAgZm9yICh1aW50MzJfdCBrZXlTaXpl
Qnl0ZXMgOiBwcm9nUGVyZkNvdW50ZXJzLmRlc2NyaXB0b3JTZXRDYWNoZUtleVNpemVzQnl0ZXMp
CisgICAgICAgIHsKKyAgICAgICAgICAgIG1QZXJmQ291bnRlcnMuZGVzY3JpcHRvclNldENhY2hl
S2V5U2l6ZUJ5dGVzICs9IGtleVNpemVCeXRlczsKKyAgICAgICAgfQogICAgIH0KIAogICAgIG1Q
ZXJmQ291bnRlcnMuZGVzY3JpcHRvclNldENhY2hlVG90YWxTaXplICs9CkBAIC0yMzU1LDYgKzI0
MTQsMTkgQEAgdm9pZCBDb250ZXh0Vms6OnVwZGF0ZU92ZXJsYXlPblByZXNlbnQoKQogICAgICAg
ICAgICAgb3ZlcmxheS0+Z2V0UnVubmluZ0dyYXBoV2lkZ2V0KGdsOjpXaWRnZXRJZDo6VnVsa2Fu
RHluYW1pY0J1ZmZlckFsbG9jYXRpb25zKTsKICAgICAgICAgZHluYW1pY0J1ZmZlckFsbG9jYXRp
b25zLT5uZXh0KCk7CiAgICAgfQorCisgICAgeworICAgICAgICBnbDo6Q291bnRXaWRnZXQgKmNh
Y2hlS2V5U2l6ZSA9CisgICAgICAgICAgICBvdmVybGF5LT5nZXRDb3VudFdpZGdldChnbDo6V2lk
Z2V0SWQ6OlZ1bGthbkRlc2NyaXB0b3JDYWNoZUtleVNpemUpOworICAgICAgICBjYWNoZUtleVNp
emUtPnJlc2V0KCk7CisgICAgICAgIGNhY2hlS2V5U2l6ZS0+YWRkKG1QZXJmQ291bnRlcnMuZGVz
Y3JpcHRvclNldENhY2hlS2V5U2l6ZUJ5dGVzKTsKKyAgICB9CisKKyAgICB7CisgICAgICAgIGds
OjpSdW5uaW5nR3JhcGhXaWRnZXQgKmR5bmFtaWNCdWZmZXJBbGxvY2F0aW9ucyA9CisgICAgICAg
ICAgICBvdmVybGF5LT5nZXRSdW5uaW5nR3JhcGhXaWRnZXQoZ2w6OldpZGdldElkOjpWdWxrYW5E
eW5hbWljQnVmZmVyQWxsb2NhdGlvbnMpOworICAgICAgICBkeW5hbWljQnVmZmVyQWxsb2NhdGlv
bnMtPmFkZChtUGVyZkNvdW50ZXJzLmR5bmFtaWNCdWZmZXJBbGxvY2F0aW9ucyk7CisgICAgfQog
fQogCiB2b2lkIENvbnRleHRWazo6YWRkT3ZlcmxheVVzZWRCdWZmZXJzQ291bnQodms6OkNvbW1h
bmRCdWZmZXJIZWxwZXJDb21tb24gKmNvbW1hbmRCdWZmZXIpCkBAIC0yMzk3LDYgKzI0NjksMTkg
QEAgdm9pZCBDb250ZXh0Vms6OmFkZE92ZXJsYXlVc2VkQnVmZmVyc0NvdW50KHZrOjpDb21tYW5k
QnVmZmVySGVscGVyQ29tbW9uICpjb21tYW4KIH0KIAogYW5nbGU6OlJlc3VsdCBDb250ZXh0Vms6
OnN1Ym1pdEZyYW1lKGNvbnN0IHZrOjpTZW1hcGhvcmUgKnNpZ25hbFNlbWFwaG9yZSwgU2VyaWFs
ICpzdWJtaXRTZXJpYWxPdXQpCit7CisgICAgcmV0dXJuIHN1Ym1pdEZyYW1lSW1wbChzaWduYWxT
ZW1hcGhvcmUsIHN1Ym1pdFNlcmlhbE91dCwgU3VibWl0RnJhbWVUeXBlOjpPdXRzaWRlQW5kUlBD
b21tYW5kcyk7Cit9CisKK2FuZ2xlOjpSZXN1bHQgQ29udGV4dFZrOjpzdWJtaXRGcmFtZU91dHNp
ZGVDb21tYW5kQnVmZmVyT25seShTZXJpYWwgKnN1Ym1pdFNlcmlhbE91dCkKK3sKKyAgICBBTkdM
RV9UUkFDRV9FVkVOVDAoImdwdS5hbmdsZSIsICJDb250ZXh0Vms6OnN1Ym1pdEZyYW1lT3V0c2lk
ZUNvbW1hbmRCdWZmZXJPbmx5Iik7CisgICAgcmV0dXJuIHN1Ym1pdEZyYW1lSW1wbChudWxscHRy
LCBzdWJtaXRTZXJpYWxPdXQsIFN1Ym1pdEZyYW1lVHlwZTo6T3V0c2lkZVJQQ29tbWFuZHNPbmx5
KTsKK30KKworYW5nbGU6OlJlc3VsdCBDb250ZXh0Vms6OnN1Ym1pdEZyYW1lSW1wbChjb25zdCB2
azo6U2VtYXBob3JlICpzaWduYWxTZW1hcGhvcmUsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFNlcmlhbCAqc3VibWl0U2VyaWFsT3V0LAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBTdWJtaXRGcmFtZVR5cGUgc3VibWl0RnJhbWVUeXBl
KQogewogICAgIGlmIChtQ3VycmVudFdpbmRvd1N1cmZhY2UpCiAgICAgewpAQCAtMjQxNCwxNCAr
MjQ5OSwyOSBAQCBhbmdsZTo6UmVzdWx0IENvbnRleHRWazo6c3VibWl0RnJhbWUoY29uc3Qgdms6
OlNlbWFwaG9yZSAqc2lnbmFsU2VtYXBob3JlLCBTZXJpYQogICAgICAgICBkdW1wQ29tbWFuZFN0
cmVhbURpYWdub3N0aWNzKCk7CiAgICAgfQogCi0gICAgZ2V0U2hhcmVHcm91cFZrKCktPmFjcXVp
cmVSZXNvdXJjZVVzZUxpc3Qoc3RkOjptb3ZlKG1SZXNvdXJjZVVzZUxpc3QpKTsKKyAgICBpZiAo
c3VibWl0RnJhbWVUeXBlID09IFN1Ym1pdEZyYW1lVHlwZTo6T3V0c2lkZUFuZFJQQ29tbWFuZHMp
CisgICAgeworICAgICAgICBnZXRTaGFyZUdyb3VwVmsoKS0+YWNxdWlyZVJlc291cmNlVXNlTGlz
dChzdGQ6Om1vdmUobVJlc291cmNlVXNlTGlzdCkpOworICAgIH0KKyAgICBlbHNlCisgICAgewor
ICAgICAgICBnZXRTaGFyZUdyb3VwVmsoKS0+Y29weVJlc291cmNlVXNlTGlzdChtUmVzb3VyY2VV
c2VMaXN0KTsKKyAgICB9CisKICAgICBBTkdMRV9UUlkobVJlbmRlcmVyLT5zdWJtaXRGcmFtZSh0
aGlzLCBoYXNQcm90ZWN0ZWRDb250ZW50KCksIG1Db250ZXh0UHJpb3JpdHksCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RkOjptb3ZlKG1XYWl0U2VtYXBob3JlcyksCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RkOjptb3ZlKG1XYWl0U2VtYXBo
b3JlU3RhZ2VNYXNrcyksIHNpZ25hbFNlbWFwaG9yZSwKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBnZXRTaGFyZUdyb3VwVmsoKS0+cmVsZWFzZVJlc291cmNlVXNlTGlzdHMo
KSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGQ6Om1vdmUobUN1cnJl
bnRHYXJiYWdlKSwgJm1Db21tYW5kUG9vbHMsIHN1Ym1pdFNlcmlhbE91dCkpOwogCi0gICAgb25S
ZW5kZXJQYXNzRmluaXNoZWQoUmVuZGVyUGFzc0Nsb3N1cmVSZWFzb246OkFscmVhZHlTcGVjaWZp
ZWRFbHNld2hlcmUpOworICAgIGlmIChzdWJtaXRGcmFtZVR5cGUgPT0gU3VibWl0RnJhbWVUeXBl
OjpPdXRzaWRlQW5kUlBDb21tYW5kcykKKyAgICB7CisgICAgICAgIGdldFNoYXJlR3JvdXBWaygp
LT5yZWxlYXNlUmVzb3VyY2VVc2VMaXN0cygqc3VibWl0U2VyaWFsT3V0KTsKKyAgICAgICAgLy8g
Tm93IHRoYXQgd2UgaGF2ZSBwcm9jZXNzZWQgcmVzb3VyY2VVc2VMaXN0LCBzb21lIG9mIHBlbmRp
bmcgZ2FyYmFnZSBtYXkgbm8gbG9uZ2VyIHBlbmRpbmcKKyAgICAgICAgLy8gYW5kIHNob3VsZCBi
ZSBtb3ZlZCB0byBnYXJiYWdlIGxpc3QuCisgICAgICAgIG1SZW5kZXJlci0+Y2xlYW51cFBlbmRp
bmdTdWJtaXNzaW9uR2FyYmFnZSgpOworICAgICAgICBvblJlbmRlclBhc3NGaW5pc2hlZChSZW5k
ZXJQYXNzQ2xvc3VyZVJlYXNvbjo6QWxyZWFkeVNwZWNpZmllZEVsc2V3aGVyZSk7CisgICAgfQor
CiAgICAgbUNvbXB1dGVEaXJ0eUJpdHMgfD0gbU5ld0NvbXB1dGVDb21tYW5kQnVmZmVyRGlydHlC
aXRzOwogCiAgICAgaWYgKG1HcHVFdmVudHNFbmFibGVkKQpAQCAtMjQyOSw2ICsyNTI5LDIyIEBA
IGFuZ2xlOjpSZXN1bHQgQ29udGV4dFZrOjpzdWJtaXRGcmFtZShjb25zdCB2azo6U2VtYXBob3Jl
ICpzaWduYWxTZW1hcGhvcmUsIFNlcmlhCiAgICAgICAgIEFOR0xFX1RSWShjaGVja0NvbXBsZXRl
ZEdwdUV2ZW50cygpKTsKICAgICB9CiAKKyAgICBtUGVyZkNvdW50ZXJzLnN1Ym1pdHRlZEZyYW1l
cysrOworICAgIHJlc2V0VG90YWxCdWZmZXJUb0ltYWdlQ29weVNpemUoKTsKKworICAgIHJldHVy
biBhbmdsZTo6UmVzdWx0OjpDb250aW51ZTsKK30KKworYW5nbGU6OlJlc3VsdCBDb250ZXh0Vms6
Om9uQ29weVVwZGF0ZShWa0RldmljZVNpemUgc2l6ZSkKK3sKKyAgICBtVG90YWxCdWZmZXJUb0lt
YWdlQ29weVNpemUgKz0gc2l6ZTsKKyAgICBBTkdMRV9UUkFDRV9FVkVOVDAoImdwdS5hbmdsZSIs
ICJDb250ZXh0Vms6Om9uQ29weVVwZGF0ZSIpOworICAgIC8vIElmIHRoZSBjb3B5IHNpemUgZXhj
ZWVkcyB0aGUgc3BlY2lmaWVkIHRocmVzaG9sZCwgc3VibWl0IHRoZSBvdXRzaWRlIGNvbW1hbmQg
YnVmZmVyLgorICAgIFZrRGV2aWNlU2l6ZSBjb3B5U2l6ZSA9IGdldFRvdGFsQnVmZmVyVG9JbWFn
ZUNvcHlTaXplKCk7CisgICAgaWYgKGNvcHlTaXplID49IGtNYXhCdWZmZXJUb0ltYWdlQ29weVNp
emUpCisgICAgeworICAgICAgICBBTkdMRV9UUlkoc3VibWl0T3V0c2lkZVJlbmRlclBhc3NDb21t
YW5kc0ltcGwoKSk7CisgICAgfQogICAgIHJldHVybiBhbmdsZTo6UmVzdWx0OjpDb250aW51ZTsK
IH0KIApAQCAtNTA2MSw2ICs1MTc3LDExIEBAIHZvaWQgQ29udGV4dFZrOjpmcmFtZWJ1ZmZlckZl
dGNoQmFycmllcigpCiAgICAgbUdyYXBoaWNzRGlydHlCaXRzLnNldChESVJUWV9CSVRfRlJBTUVC
VUZGRVJfRkVUQ0hfQkFSUklFUik7CiB9CiAKK3ZvaWQgQ29udGV4dFZrOjpibGVuZEJhcnJpZXIo
KQoreworICAgIG1HcmFwaGljc0RpcnR5Qml0cy5zZXQoRElSVFlfQklUX0JMRU5EX0JBUlJJRVIp
OworfQorCiBhbmdsZTo6UmVzdWx0IENvbnRleHRWazo6YWNxdWlyZVRleHR1cmVzKGNvbnN0IGds
OjpDb250ZXh0ICpjb250ZXh0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBjb25zdCBnbDo6VGV4dHVyZUJhcnJpZXJWZWN0b3IgJnRleHR1cmVCYXJyaWVycykKIHsK
QEAgLTU0MjQsOCArNTU0NSw4IEBAIGFuZ2xlOjpSZXN1bHQgQ29udGV4dFZrOjp1cGRhdGVEcml2
ZXJVbmlmb3Jtc0Rlc2NyaXB0b3JTZXQoYm9vbCBuZXdCdWZmZXIsCiAgICAgLy8gQWxsb2NhdGUg
YSBuZXcgZGVzY3JpcHRvciBzZXQuCiAgICAgYm9vbCBuZXdQb29sQWxsb2NhdGVkOwogICAgIEFO
R0xFX1RSWShtRHJpdmVyVW5pZm9ybXNEZXNjcmlwdG9yUG9vbHNbcGlwZWxpbmVUeXBlXS5hbGxv
Y2F0ZVNldHNBbmRHZXRJbmZvKAotICAgICAgICB0aGlzLCBkcml2ZXJVbmlmb3Jtcy5kZXNjcmlw
dG9yU2V0TGF5b3V0LmdldCgpLCAxLCAmZHJpdmVyVW5pZm9ybXMuZGVzY3JpcHRvclBvb2xCaW5k
aW5nLAotICAgICAgICAmZHJpdmVyVW5pZm9ybXMuZGVzY3JpcHRvclNldCwgJm5ld1Bvb2xBbGxv
Y2F0ZWQpKTsKKyAgICAgICAgdGhpcywgJm1SZXNvdXJjZVVzZUxpc3QsIGRyaXZlclVuaWZvcm1z
LmRlc2NyaXB0b3JTZXRMYXlvdXQuZ2V0KCksIDEsCisgICAgICAgICZkcml2ZXJVbmlmb3Jtcy5k
ZXNjcmlwdG9yUG9vbEJpbmRpbmcsICZkcml2ZXJVbmlmb3Jtcy5kZXNjcmlwdG9yU2V0LCAmbmV3
UG9vbEFsbG9jYXRlZCkpOwogICAgIG1Db250ZXh0UGVyZkNvdW50ZXJzLmRlc2NyaXB0b3JTZXRz
QWxsb2NhdGVkW3BpcGVsaW5lVHlwZV0rKzsKIAogICAgIC8vIENsZWFyIGRlc2NyaXB0b3Igc2V0
IGNhY2hlLiBJdCBtYXkgbm8gbG9uZ2VyIGJlIHZhbGlkLgpAQCAtNTQzNSwxMiArNTU1NiwxMiBA
QCBhbmdsZTo6UmVzdWx0IENvbnRleHRWazo6dXBkYXRlRHJpdmVyVW5pZm9ybXNEZXNjcmlwdG9y
U2V0KGJvb2wgbmV3QnVmZmVyLAogICAgIH0KIAogICAgIC8vIFVwZGF0ZSB0aGUgZHJpdmVyIHVu
aWZvcm0gZGVzY3JpcHRvciBzZXQuCi0gICAgVmtEZXNjcmlwdG9yQnVmZmVySW5mbyAmYnVmZmVy
SW5mbyA9IGFsbG9jRGVzY3JpcHRvckJ1ZmZlckluZm8oKTsKKyAgICBWa0Rlc2NyaXB0b3JCdWZm
ZXJJbmZvICZidWZmZXJJbmZvID0gbVVwZGF0ZURlc2NyaXB0b3JTZXRzQnVpbGRlci5hbGxvY0Rl
c2NyaXB0b3JCdWZmZXJJbmZvKCk7CiAgICAgYnVmZmVySW5mby5idWZmZXIgICAgICAgICAgICAg
ICAgICA9IGRyaXZlclVuaWZvcm1zLmN1cnJlbnRCdWZmZXItPmdldEJ1ZmZlcigpLmdldEhhbmRs
ZSgpOwogICAgIGJ1ZmZlckluZm8ub2Zmc2V0ICAgICAgICAgICAgICAgICAgPSAwOwogICAgIGJ1
ZmZlckluZm8ucmFuZ2UgICAgICAgICAgICAgICAgICAgPSBkcml2ZXJVbmlmb3Jtc1NpemU7CiAK
LSAgICBWa1dyaXRlRGVzY3JpcHRvclNldCAmd3JpdGVJbmZvID0gYWxsb2NXcml0ZURlc2NyaXB0
b3JTZXQoKTsKKyAgICBWa1dyaXRlRGVzY3JpcHRvclNldCAmd3JpdGVJbmZvID0gbVVwZGF0ZURl
c2NyaXB0b3JTZXRzQnVpbGRlci5hbGxvY1dyaXRlRGVzY3JpcHRvclNldCgpOwogICAgIHdyaXRl
SW5mby5zVHlwZSAgICAgICAgICAgICAgICAgPSBWS19TVFJVQ1RVUkVfVFlQRV9XUklURV9ERVND
UklQVE9SX1NFVDsKICAgICB3cml0ZUluZm8uZHN0U2V0ICAgICAgICAgICAgICAgID0gZHJpdmVy
VW5pZm9ybXMuZGVzY3JpcHRvclNldDsKICAgICB3cml0ZUluZm8uZHN0QmluZGluZyAgICAgICAg
ICAgID0gMDsKQEAgLTYyODIsNiArNjQwMywxNSBAQCBib29sIENvbnRleHRWazo6c2hvdWxkQ29u
dmVydFVpbnQ4VmtJbmRleFR5cGUoZ2w6OkRyYXdFbGVtZW50c1R5cGUgZ2xJbmRleFR5cGUpCiAg
ICAgICAgICAgICAhbVJlbmRlcmVyLT5nZXRGZWF0dXJlcygpLnN1cHBvcnRzSW5kZXhUeXBlVWlu
dDguZW5hYmxlZCk7CiB9CiAKK2FuZ2xlOjpSZXN1bHQgQ29udGV4dFZrOjpzdWJtaXRPdXRzaWRl
UmVuZGVyUGFzc0NvbW1hbmRzSW1wbCgpCit7CisgICAgQU5HTEVfVFJBQ0VfRVZFTlQwKCJncHUu
YW5nbGUiLCAiQ29udGV4dFZrOjpzdWJtaXRPdXRzaWRlUmVuZGVyUGFzc0NvbW1hbmRzSW1wbCIp
OworICAgIEFOR0xFX1RSWShmbHVzaE91dHNpZGVSZW5kZXJQYXNzQ29tbWFuZHMoKSk7CisgICAg
U2VyaWFsIHVudXNlZFNlcmlhbDsKKyAgICBBTkdMRV9UUlkoc3VibWl0RnJhbWVPdXRzaWRlQ29t
bWFuZEJ1ZmZlck9ubHkoJnVudXNlZFNlcmlhbCkpOworICAgIHJldHVybiBhbmdsZTo6UmVzdWx0
OjpDb250aW51ZTsKK30KKwogYW5nbGU6OlJlc3VsdCBDb250ZXh0Vms6OmZsdXNoT3V0c2lkZVJl
bmRlclBhc3NDb21tYW5kcygpCiB7CiAgICAgaWYgKG1PdXRzaWRlUmVuZGVyUGFzc0NvbW1hbmRz
LT5lbXB0eSgpKQpAQCAtNjQ1Nyw2NCArNjU4Nyw2IEBAIGJvb2wgQ29udGV4dFZrOjppc1JvYnVz
dFJlc291cmNlSW5pdEVuYWJsZWQoKSBjb25zdAogICAgIHJldHVybiBtU3RhdGUuaXNSb2J1c3RS
ZXNvdXJjZUluaXRFbmFibGVkKCk7CiB9CiAKLXRlbXBsYXRlIDx0eXBlbmFtZSBULCBjb25zdCBU
ICpWa1dyaXRlRGVzY3JpcHRvclNldDo6KnBJbmZvPgotdm9pZCBDb250ZXh0Vms6Omdyb3dEZXNj
aXB0b3JDYXBhY2l0eShzdGQ6OnZlY3RvcjxUPiAqZGVzY3JpcHRvclZlY3Rvciwgc2l6ZV90IG5l
d1NpemUpCi17Ci0gICAgY29uc3QgVCAqY29uc3Qgb2xkSW5mb1N0YXJ0ID0gZGVzY3JpcHRvclZl
Y3Rvci0+ZW1wdHkoKSA/IG51bGxwdHIgOiAmKCpkZXNjcmlwdG9yVmVjdG9yKVswXTsKLSAgICBz
aXplX3QgbmV3Q2FwYWNpdHkgICAgICAgICAgPSBzdGQ6Om1heChkZXNjcmlwdG9yVmVjdG9yLT5j
YXBhY2l0eSgpIDw8IDEsIG5ld1NpemUpOwotICAgIGRlc2NyaXB0b3JWZWN0b3ItPnJlc2VydmUo
bmV3Q2FwYWNpdHkpOwotCi0gICAgaWYgKG9sZEluZm9TdGFydCkKLSAgICB7Ci0gICAgICAgIC8v
IHBhdGNoIG1Xcml0ZUluZm8gd2l0aCBuZXcgQnVmZmVySW5mby9JbWFnZUluZm8gcG9pbnRlcnMK
LSAgICAgICAgZm9yIChWa1dyaXRlRGVzY3JpcHRvclNldCAmc2V0IDogbVdyaXRlRGVzY3JpcHRv
clNldHMpCi0gICAgICAgIHsKLSAgICAgICAgICAgIGlmIChzZXQuKnBJbmZvKQotICAgICAgICAg
ICAgewotICAgICAgICAgICAgICAgIHNpemVfdCBpbmRleCA9IHNldC4qcEluZm8gLSBvbGRJbmZv
U3RhcnQ7Ci0gICAgICAgICAgICAgICAgc2V0LipwSW5mbyAgID0gJigqZGVzY3JpcHRvclZlY3Rv
cilbaW5kZXhdOwotICAgICAgICAgICAgfQotICAgICAgICB9Ci0gICAgfQotfQotCi10ZW1wbGF0
ZSA8dHlwZW5hbWUgVCwgY29uc3QgVCAqVmtXcml0ZURlc2NyaXB0b3JTZXQ6OipwSW5mbz4KLVQg
KkNvbnRleHRWazo6YWxsb2NEZXNjcmlwdG9ySW5mb3Moc3RkOjp2ZWN0b3I8VD4gKmRlc2NyaXB0
b3JWZWN0b3IsIHNpemVfdCBjb3VudCkKLXsKLSAgICBzaXplX3Qgb2xkU2l6ZSA9IGRlc2NyaXB0
b3JWZWN0b3ItPnNpemUoKTsKLSAgICBzaXplX3QgbmV3U2l6ZSA9IG9sZFNpemUgKyBjb3VudDsK
LSAgICBpZiAobmV3U2l6ZSA+IGRlc2NyaXB0b3JWZWN0b3ItPmNhcGFjaXR5KCkpCi0gICAgewot
ICAgICAgICAvLyBJZiB3ZSBoYXZlIHJlYWNoZWQgY2FwYWNpdHksIGdyb3cgdGhlIHN0b3JhZ2Ug
YW5kIHBhdGNoIHRoZSBkZXNjcmlwdG9yIHNldCB3aXRoIG5ldwotICAgICAgICAvLyBidWZmZXIg
aW5mbyBwb2ludGVyCi0gICAgICAgIGdyb3dEZXNjaXB0b3JDYXBhY2l0eTxULCBwSW5mbz4oZGVz
Y3JpcHRvclZlY3RvciwgbmV3U2l6ZSk7Ci0gICAgfQotICAgIGRlc2NyaXB0b3JWZWN0b3ItPnJl
c2l6ZShuZXdTaXplKTsKLSAgICByZXR1cm4gJigqZGVzY3JpcHRvclZlY3Rvcilbb2xkU2l6ZV07
Ci19Ci0KLVZrRGVzY3JpcHRvckJ1ZmZlckluZm8gKkNvbnRleHRWazo6YWxsb2NEZXNjcmlwdG9y
QnVmZmVySW5mb3Moc2l6ZV90IGNvdW50KQotewotICAgIHJldHVybiBhbGxvY0Rlc2NyaXB0b3JJ
bmZvczxWa0Rlc2NyaXB0b3JCdWZmZXJJbmZvLCAmVmtXcml0ZURlc2NyaXB0b3JTZXQ6OnBCdWZm
ZXJJbmZvPigKLSAgICAgICAgJm1EZXNjcmlwdG9yQnVmZmVySW5mb3MsIGNvdW50KTsKLX0KLQot
VmtEZXNjcmlwdG9ySW1hZ2VJbmZvICpDb250ZXh0Vms6OmFsbG9jRGVzY3JpcHRvckltYWdlSW5m
b3Moc2l6ZV90IGNvdW50KQotewotICAgIHJldHVybiBhbGxvY0Rlc2NyaXB0b3JJbmZvczxWa0Rl
c2NyaXB0b3JJbWFnZUluZm8sICZWa1dyaXRlRGVzY3JpcHRvclNldDo6cEltYWdlSW5mbz4oCi0g
ICAgICAgICZtRGVzY3JpcHRvckltYWdlSW5mb3MsIGNvdW50KTsKLX0KLQotVmtXcml0ZURlc2Ny
aXB0b3JTZXQgKkNvbnRleHRWazo6YWxsb2NXcml0ZURlc2NyaXB0b3JTZXRzKHNpemVfdCBjb3Vu
dCkKLXsKLSAgICBtUGVyZkNvdW50ZXJzLndyaXRlRGVzY3JpcHRvclNldHMgKz0gY291bnQ7Ci0K
LSAgICBzaXplX3Qgb2xkU2l6ZSA9IG1Xcml0ZURlc2NyaXB0b3JTZXRzLnNpemUoKTsKLSAgICBz
aXplX3QgbmV3U2l6ZSA9IG9sZFNpemUgKyBjb3VudDsKLSAgICBtV3JpdGVEZXNjcmlwdG9yU2V0
cy5yZXNpemUobmV3U2l6ZSk7Ci0gICAgcmV0dXJuICZtV3JpdGVEZXNjcmlwdG9yU2V0c1tvbGRT
aXplXTsKLX0KLQogdm9pZCBDb250ZXh0Vms6OnNldERlZmF1bHRVbmlmb3JtQmxvY2tzTWluU2l6
ZUZvclRlc3Rpbmcoc2l6ZV90IG1pblNpemUpCiB7CiAgICAgbURlZmF1bHRVbmlmb3JtU3RvcmFn
ZS5zZXRNaW5pbXVtU2l6ZUZvclRlc3RpbmcobWluU2l6ZSk7CkBAIC02ODU2LDQgKzY5MjgsMTA5
IEBAIFByb2dyYW1FeGVjdXRhYmxlVmsgKkNvbnRleHRWazo6Z2V0RXhlY3V0YWJsZSgpIGNvbnN0
CiAgICAgfQogICAgIHJldHVybiBudWxscHRyOwogfQorCitjb25zdCBhbmdsZTo6UGVyZk1vbml0
b3JDb3VudGVyR3JvdXBzICZDb250ZXh0Vms6OmdldFBlcmZNb25pdG9yQ291bnRlcnMoKQorewor
ICAgIHN5bmNPYmplY3RQZXJmQ291bnRlcnMoKTsKKworICAgIGFuZ2xlOjpQZXJmTW9uaXRvckNv
dW50ZXJzICZjb3VudGVycyA9CisgICAgICAgIGFuZ2xlOjpHZXRQZXJmTW9uaXRvckNvdW50ZXJH
cm91cChtUGVyZk1vbml0b3JDb3VudGVycywgInZ1bGthbiIpLmNvdW50ZXJzOworCisjZGVmaW5l
IEFOR0xFX1VQREFURV9QRVJGX01BUChDT1VOVEVSKSBcCisgICAgYW5nbGU6OkdldFBlcmZNb25p
dG9yQ291bnRlcihjb3VudGVycywgI0NPVU5URVIpLnZhbHVlID0gbVBlcmZDb3VudGVycy5DT1VO
VEVSOworCisgICAgQU5HTEVfVktfUEVSRl9DT1VOVEVSU19YKEFOR0xFX1VQREFURV9QRVJGX01B
UCkKKworI3VuZGVmIEFOR0xFX1VQREFURV9QRVJGX01BUAorICAgIHJldHVybiBtUGVyZk1vbml0
b3JDb3VudGVyczsKK30KKworLy8gVXBkYXRlRGVzY3JpcHRvclNldHNCdWlsZGVyIGltcGxlbWVu
dGF0aW9uLgorVXBkYXRlRGVzY3JpcHRvclNldHNCdWlsZGVyOjpVcGRhdGVEZXNjcmlwdG9yU2V0
c0J1aWxkZXIoKQoreworICAgIC8vIFJlc2VydmUgcmVhc29uYWJsZSBhbW91bnQgb2Ygc3BhY2Vz
IHNvIHRoYXQgZm9yIG1ham9yaXR5IG9mIGFwcHMgd2UgZG9uJ3QgbmVlZCB0byBncm93IGF0IGFs
bAorICAgIG1EZXNjcmlwdG9yQnVmZmVySW5mb3MucmVzZXJ2ZShrRGVzY3JpcHRvckJ1ZmZlcklu
Zm9zSW5pdGlhbFNpemUpOworICAgIG1EZXNjcmlwdG9ySW1hZ2VJbmZvcy5yZXNlcnZlKGtEZXNj
cmlwdG9ySW1hZ2VJbmZvc0luaXRpYWxTaXplKTsKKyAgICBtV3JpdGVEZXNjcmlwdG9yU2V0cy5y
ZXNlcnZlKGtEZXNjcmlwdG9yV3JpdGVJbmZvc0luaXRpYWxTaXplKTsKK30KKworVXBkYXRlRGVz
Y3JpcHRvclNldHNCdWlsZGVyOjp+VXBkYXRlRGVzY3JpcHRvclNldHNCdWlsZGVyKCkgPSBkZWZh
dWx0OworCit0ZW1wbGF0ZSA8dHlwZW5hbWUgVCwgY29uc3QgVCAqVmtXcml0ZURlc2NyaXB0b3JT
ZXQ6OipwSW5mbz4KK3ZvaWQgVXBkYXRlRGVzY3JpcHRvclNldHNCdWlsZGVyOjpncm93RGVzY3Jp
cHRvckNhcGFjaXR5KHN0ZDo6dmVjdG9yPFQ+ICpkZXNjcmlwdG9yVmVjdG9yLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZV90IG5l
d1NpemUpCit7CisgICAgY29uc3QgVCAqY29uc3Qgb2xkSW5mb1N0YXJ0ID0gZGVzY3JpcHRvclZl
Y3Rvci0+ZW1wdHkoKSA/IG51bGxwdHIgOiAmKCpkZXNjcmlwdG9yVmVjdG9yKVswXTsKKyAgICBz
aXplX3QgbmV3Q2FwYWNpdHkgICAgICAgICAgPSBzdGQ6Om1heChkZXNjcmlwdG9yVmVjdG9yLT5j
YXBhY2l0eSgpIDw8IDEsIG5ld1NpemUpOworICAgIGRlc2NyaXB0b3JWZWN0b3ItPnJlc2VydmUo
bmV3Q2FwYWNpdHkpOworCisgICAgaWYgKG9sZEluZm9TdGFydCkKKyAgICB7CisgICAgICAgIC8v
IHBhdGNoIG1Xcml0ZUluZm8gd2l0aCBuZXcgQnVmZmVySW5mby9JbWFnZUluZm8gcG9pbnRlcnMK
KyAgICAgICAgZm9yIChWa1dyaXRlRGVzY3JpcHRvclNldCAmc2V0IDogbVdyaXRlRGVzY3JpcHRv
clNldHMpCisgICAgICAgIHsKKyAgICAgICAgICAgIGlmIChzZXQuKnBJbmZvKQorICAgICAgICAg
ICAgeworICAgICAgICAgICAgICAgIHNpemVfdCBpbmRleCA9IHNldC4qcEluZm8gLSBvbGRJbmZv
U3RhcnQ7CisgICAgICAgICAgICAgICAgc2V0LipwSW5mbyAgID0gJigqZGVzY3JpcHRvclZlY3Rv
cilbaW5kZXhdOworICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgfQorfQorCit0ZW1wbGF0
ZSA8dHlwZW5hbWUgVCwgY29uc3QgVCAqVmtXcml0ZURlc2NyaXB0b3JTZXQ6OipwSW5mbz4KK1Qg
KlVwZGF0ZURlc2NyaXB0b3JTZXRzQnVpbGRlcjo6YWxsb2NEZXNjcmlwdG9ySW5mb3Moc3RkOjp2
ZWN0b3I8VD4gKmRlc2NyaXB0b3JWZWN0b3IsIHNpemVfdCBjb3VudCkKK3sKKyAgICBzaXplX3Qg
b2xkU2l6ZSA9IGRlc2NyaXB0b3JWZWN0b3ItPnNpemUoKTsKKyAgICBzaXplX3QgbmV3U2l6ZSA9
IG9sZFNpemUgKyBjb3VudDsKKyAgICBpZiAobmV3U2l6ZSA+IGRlc2NyaXB0b3JWZWN0b3ItPmNh
cGFjaXR5KCkpCisgICAgeworICAgICAgICAvLyBJZiB3ZSBoYXZlIHJlYWNoZWQgY2FwYWNpdHks
IGdyb3cgdGhlIHN0b3JhZ2UgYW5kIHBhdGNoIHRoZSBkZXNjcmlwdG9yIHNldCB3aXRoIG5ldwor
ICAgICAgICAvLyBidWZmZXIgaW5mbyBwb2ludGVyCisgICAgICAgIGdyb3dEZXNjcmlwdG9yQ2Fw
YWNpdHk8VCwgcEluZm8+KGRlc2NyaXB0b3JWZWN0b3IsIG5ld1NpemUpOworICAgIH0KKyAgICBk
ZXNjcmlwdG9yVmVjdG9yLT5yZXNpemUobmV3U2l6ZSk7CisgICAgcmV0dXJuICYoKmRlc2NyaXB0
b3JWZWN0b3IpW29sZFNpemVdOworfQorCitWa0Rlc2NyaXB0b3JCdWZmZXJJbmZvICpVcGRhdGVE
ZXNjcmlwdG9yU2V0c0J1aWxkZXI6OmFsbG9jRGVzY3JpcHRvckJ1ZmZlckluZm9zKHNpemVfdCBj
b3VudCkKK3sKKyAgICByZXR1cm4gYWxsb2NEZXNjcmlwdG9ySW5mb3M8VmtEZXNjcmlwdG9yQnVm
ZmVySW5mbywgJlZrV3JpdGVEZXNjcmlwdG9yU2V0OjpwQnVmZmVySW5mbz4oCisgICAgICAgICZt
RGVzY3JpcHRvckJ1ZmZlckluZm9zLCBjb3VudCk7Cit9CisKK1ZrRGVzY3JpcHRvckltYWdlSW5m
byAqVXBkYXRlRGVzY3JpcHRvclNldHNCdWlsZGVyOjphbGxvY0Rlc2NyaXB0b3JJbWFnZUluZm9z
KHNpemVfdCBjb3VudCkKK3sKKyAgICByZXR1cm4gYWxsb2NEZXNjcmlwdG9ySW5mb3M8VmtEZXNj
cmlwdG9ySW1hZ2VJbmZvLCAmVmtXcml0ZURlc2NyaXB0b3JTZXQ6OnBJbWFnZUluZm8+KAorICAg
ICAgICAmbURlc2NyaXB0b3JJbWFnZUluZm9zLCBjb3VudCk7Cit9CisKK1ZrV3JpdGVEZXNjcmlw
dG9yU2V0ICpVcGRhdGVEZXNjcmlwdG9yU2V0c0J1aWxkZXI6OmFsbG9jV3JpdGVEZXNjcmlwdG9y
U2V0cyhzaXplX3QgY291bnQpCit7CisgICAgc2l6ZV90IG9sZFNpemUgPSBtV3JpdGVEZXNjcmlw
dG9yU2V0cy5zaXplKCk7CisgICAgc2l6ZV90IG5ld1NpemUgPSBvbGRTaXplICsgY291bnQ7Cisg
ICAgbVdyaXRlRGVzY3JpcHRvclNldHMucmVzaXplKG5ld1NpemUpOworICAgIHJldHVybiAmbVdy
aXRlRGVzY3JpcHRvclNldHNbb2xkU2l6ZV07Cit9CisKK3VpbnQzMl90IFVwZGF0ZURlc2NyaXB0
b3JTZXRzQnVpbGRlcjo6Zmx1c2hEZXNjcmlwdG9yU2V0VXBkYXRlcyhWa0RldmljZSBkZXZpY2Up
Cit7CisgICAgaWYgKG1Xcml0ZURlc2NyaXB0b3JTZXRzLmVtcHR5KCkpCisgICAgeworICAgICAg
ICBBU1NFUlQobURlc2NyaXB0b3JCdWZmZXJJbmZvcy5lbXB0eSgpKTsKKyAgICAgICAgQVNTRVJU
KG1EZXNjcmlwdG9ySW1hZ2VJbmZvcy5lbXB0eSgpKTsKKyAgICAgICAgcmV0dXJuIDA7CisgICAg
fQorCisgICAgdmtVcGRhdGVEZXNjcmlwdG9yU2V0cyhkZXZpY2UsIHN0YXRpY19jYXN0PHVpbnQz
Ml90PihtV3JpdGVEZXNjcmlwdG9yU2V0cy5zaXplKCkpLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgbVdyaXRlRGVzY3JpcHRvclNldHMuZGF0YSgpLCAwLCBudWxscHRyKTsKKworICAgIHVp
bnQzMl90IHJldFZhbCA9IHN0YXRpY19jYXN0PHVpbnQzMl90PihtRGVzY3JpcHRvckltYWdlSW5m
b3Muc2l6ZSgpKTsKKworICAgIG1Xcml0ZURlc2NyaXB0b3JTZXRzLmNsZWFyKCk7CisgICAgbURl
c2NyaXB0b3JCdWZmZXJJbmZvcy5jbGVhcigpOworICAgIG1EZXNjcmlwdG9ySW1hZ2VJbmZvcy5j
bGVhcigpOworCisgICAgcmV0dXJuIHJldFZhbDsKK30KIH0gIC8vIG5hbWVzcGFjZSByeApkaWZm
IC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1
bGthbi9Db250ZXh0VmsuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9y
ZW5kZXJlci92dWxrYW4vQ29udGV4dFZrLmgKb2xkIG1vZGUgMTAwNzU1Cm5ldyBtb2RlIDEwMDY0
NAppbmRleCA5NmE5MzQ5OWU5NmUwMzcxYzNlMTRkNDk3YTA5MTI5MDczYmNjNjA0Li41ZTE3MGVk
ZTc3ODMyMzlhMDczNmUzMjFhZWVkMDMyNjYxOGJjOGRhCi0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vQ29udGV4dFZrLmgKKysrIGIvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9Db250ZXh0
VmsuaApAQCAtMzcsNiArMzcsMTAgQEAgY2xhc3MgU2hhcmVHcm91cFZrOwogc3RhdGljIGNvbnN0
ZXhwciB1aW50MzJfdCBrTWF4R3B1RXZlbnROYW1lTGVuID0gMzI7CiB1c2luZyBFdmVudE5hbWUg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPSBzdGQ6OmFycmF5PGNoYXIsIGtNYXhHcHVF
dmVudE5hbWVMZW4+OwogCisvLyBJZiB0aGUgdG90YWwgc2l6ZSBvZiBjb3B5QnVmZmVyVG9JbWFn
ZSBjb21tYW5kcyBpbiB0aGUgb3V0c2lkZSBjb21tYW5kIGJ1ZmZlciByZWFjaGVzIHRoZQorLy8g
dGhyZXNob2xkIGJlbG93LCB0aGUgbGF0dGVyIGlzIGZsdXNoZWQuCitzdGF0aWMgY29uc3RleHBy
IFZrRGV2aWNlU2l6ZSBrTWF4QnVmZmVyVG9JbWFnZUNvcHlTaXplID0gMSA8PCAyODsKKwogdXNp
bmcgQ29udGV4dFZrRGVzY3JpcHRvclNldExpc3QgPSBhbmdsZTo6UGFja2VkRW51bU1hcDxQaXBl
bGluZVR5cGUsIHVpbnQzMl90PjsKIAogc3RydWN0IENvbnRleHRWa1BlcmZDb3VudGVycwpAQCAt
NjAsNiArNjQsNDAgQEAgZW51bSBjbGFzcyBRdWV1ZVN1Ym1pdFR5cGUKICAgICBTa2lwUXVldWVT
dWJtaXQsCiB9OwogCitjbGFzcyBVcGRhdGVEZXNjcmlwdG9yU2V0c0J1aWxkZXIgZmluYWwgOiBh
bmdsZTo6Tm9uQ29weWFibGUKK3sKKyAgcHVibGljOgorICAgIFVwZGF0ZURlc2NyaXB0b3JTZXRz
QnVpbGRlcigpOworICAgIH5VcGRhdGVEZXNjcmlwdG9yU2V0c0J1aWxkZXIoKTsKKworICAgIFZr
RGVzY3JpcHRvckJ1ZmZlckluZm8gKmFsbG9jRGVzY3JpcHRvckJ1ZmZlckluZm9zKHNpemVfdCBj
b3VudCk7CisgICAgVmtEZXNjcmlwdG9ySW1hZ2VJbmZvICphbGxvY0Rlc2NyaXB0b3JJbWFnZUlu
Zm9zKHNpemVfdCBjb3VudCk7CisgICAgVmtXcml0ZURlc2NyaXB0b3JTZXQgKmFsbG9jV3JpdGVE
ZXNjcmlwdG9yU2V0cyhzaXplX3QgY291bnQpOworCisgICAgVmtEZXNjcmlwdG9yQnVmZmVySW5m
byAmYWxsb2NEZXNjcmlwdG9yQnVmZmVySW5mbygpIHsgcmV0dXJuICphbGxvY0Rlc2NyaXB0b3JC
dWZmZXJJbmZvcygxKTsgfQorICAgIFZrRGVzY3JpcHRvckltYWdlSW5mbyAmYWxsb2NEZXNjcmlw
dG9ySW1hZ2VJbmZvKCkgeyByZXR1cm4gKmFsbG9jRGVzY3JpcHRvckltYWdlSW5mb3MoMSk7IH0K
KyAgICBWa1dyaXRlRGVzY3JpcHRvclNldCAmYWxsb2NXcml0ZURlc2NyaXB0b3JTZXQoKSB7IHJl
dHVybiAqYWxsb2NXcml0ZURlc2NyaXB0b3JTZXRzKDEpOyB9CisKKyAgICAvLyBSZXR1cm5zIHRo
ZSBudW1iZXIgb2Ygd3JpdHRlbiBkZXNjcmlwdG9yIHNldHMuCisgICAgdWludDMyX3QgZmx1c2hE
ZXNjcmlwdG9yU2V0VXBkYXRlcyhWa0RldmljZSBkZXZpY2UpOworCisgIHByaXZhdGU6CisgICAg
dGVtcGxhdGUgPHR5cGVuYW1lIFQsIGNvbnN0IFQgKlZrV3JpdGVEZXNjcmlwdG9yU2V0OjoqcElu
Zm8+CisgICAgVCAqYWxsb2NEZXNjcmlwdG9ySW5mb3Moc3RkOjp2ZWN0b3I8VD4gKmRlc2NyaXB0
b3JWZWN0b3IsIHNpemVfdCBjb3VudCk7CisgICAgdGVtcGxhdGUgPHR5cGVuYW1lIFQsIGNvbnN0
IFQgKlZrV3JpdGVEZXNjcmlwdG9yU2V0OjoqcEluZm8+CisgICAgdm9pZCBncm93RGVzY3JpcHRv
ckNhcGFjaXR5KHN0ZDo6dmVjdG9yPFQ+ICpkZXNjcmlwdG9yVmVjdG9yLCBzaXplX3QgbmV3U2l6
ZSk7CisKKyAgICBzdGQ6OnZlY3RvcjxWa0Rlc2NyaXB0b3JCdWZmZXJJbmZvPiBtRGVzY3JpcHRv
ckJ1ZmZlckluZm9zOworICAgIHN0ZDo6dmVjdG9yPFZrRGVzY3JpcHRvckltYWdlSW5mbz4gbURl
c2NyaXB0b3JJbWFnZUluZm9zOworICAgIHN0ZDo6dmVjdG9yPFZrV3JpdGVEZXNjcmlwdG9yU2V0
PiBtV3JpdGVEZXNjcmlwdG9yU2V0czsKK307CisKK2VudW0gY2xhc3MgU3VibWl0RnJhbWVUeXBl
Cit7CisgICAgT3V0c2lkZUFuZFJQQ29tbWFuZHMsCisgICAgT3V0c2lkZVJQQ29tbWFuZHNPbmx5
LAorfTsKKwogY2xhc3MgQ29udGV4dFZrIDogcHVibGljIENvbnRleHRJbXBsLCBwdWJsaWMgdms6
OkNvbnRleHQsIHB1YmxpYyBNdWx0aXNhbXBsZVRleHR1cmVJbml0aWFsaXplcgogewogICBwdWJs
aWM6CkBAIC0zNDUsNiArMzgzLDkgQEAgY2xhc3MgQ29udGV4dFZrIDogcHVibGljIENvbnRleHRJ
bXBsLCBwdWJsaWMgdms6OkNvbnRleHQsIHB1YmxpYyBNdWx0aXNhbXBsZVRleHQKICAgICAvLyBF
WFRfc2hhZGVyX2ZyYW1lYnVmZmVyX2ZldGNoX25vbl9jb2hlcmVudAogICAgIHZvaWQgZnJhbWVi
dWZmZXJGZXRjaEJhcnJpZXIoKSBvdmVycmlkZTsKIAorICAgIC8vIEtIUl9ibGVuZF9lcXVhdGlv
bl9hZHZhbmNlZAorICAgIHZvaWQgYmxlbmRCYXJyaWVyKCkgb3ZlcnJpZGU7CisKICAgICAvLyBH
TF9BTkdMRV92dWxrYW5faW1hZ2UKICAgICBhbmdsZTo6UmVzdWx0IGFjcXVpcmVUZXh0dXJlcyhj
b25zdCBnbDo6Q29udGV4dCAqY29udGV4dCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBjb25zdCBnbDo6VGV4dHVyZUJhcnJpZXJWZWN0b3IgJnRleHR1cmVCYXJyaWVycykgb3Zl
cnJpZGU7CkBAIC02MDMsNiArNjQ0LDcgQEAgY2xhc3MgQ29udGV4dFZrIDogcHVibGljIENvbnRl
eHRJbXBsLCBwdWJsaWMgdms6OkNvbnRleHQsIHB1YmxpYyBNdWx0aXNhbXBsZVRleHQKICAgICBh
bmdsZTo6UmVzdWx0IHN0YXJ0TmV4dFN1YnBhc3MoKTsKICAgICBhbmdsZTo6UmVzdWx0IGZsdXNo
Q29tbWFuZHNBbmRFbmRSZW5kZXJQYXNzKFJlbmRlclBhc3NDbG9zdXJlUmVhc29uIHJlYXNvbik7
CiAgICAgYW5nbGU6OlJlc3VsdCBmbHVzaENvbW1hbmRzQW5kRW5kUmVuZGVyUGFzc1dpdGhvdXRR
dWV1ZVN1Ym1pdChSZW5kZXJQYXNzQ2xvc3VyZVJlYXNvbiByZWFzb24pOworICAgIGFuZ2xlOjpS
ZXN1bHQgc3VibWl0T3V0c2lkZVJlbmRlclBhc3NDb21tYW5kc0ltcGwoKTsKIAogICAgIGFuZ2xl
OjpSZXN1bHQgc3luY0V4dGVybmFsTWVtb3J5KCk7CiAKQEAgLTYzOCwyMiArNjgwLDE2IEBAIGNs
YXNzIENvbnRleHRWayA6IHB1YmxpYyBDb250ZXh0SW1wbCwgcHVibGljIHZrOjpDb250ZXh0LCBw
dWJsaWMgTXVsdGlzYW1wbGVUZXh0CiAgICAgdm9pZCB1cGRhdGVPdmVybGF5T25QcmVzZW50KCk7
CiAgICAgdm9pZCBhZGRPdmVybGF5VXNlZEJ1ZmZlcnNDb3VudCh2azo6Q29tbWFuZEJ1ZmZlckhl
bHBlckNvbW1vbiAqY29tbWFuZEJ1ZmZlcik7CiAKLSAgICAvLyBEZXNjcmlwdG9yU2V0IHdyaXRl
cwotICAgIFZrRGVzY3JpcHRvckJ1ZmZlckluZm8gKmFsbG9jRGVzY3JpcHRvckJ1ZmZlckluZm9z
KHNpemVfdCBjb3VudCk7Ci0gICAgVmtEZXNjcmlwdG9ySW1hZ2VJbmZvICphbGxvY0Rlc2NyaXB0
b3JJbWFnZUluZm9zKHNpemVfdCBjb3VudCk7Ci0gICAgVmtXcml0ZURlc2NyaXB0b3JTZXQgKmFs
bG9jV3JpdGVEZXNjcmlwdG9yU2V0cyhzaXplX3QgY291bnQpOwotCi0gICAgVmtEZXNjcmlwdG9y
QnVmZmVySW5mbyAmYWxsb2NEZXNjcmlwdG9yQnVmZmVySW5mbygpIHsgcmV0dXJuICphbGxvY0Rl
c2NyaXB0b3JCdWZmZXJJbmZvcygxKTsgfQotICAgIFZrRGVzY3JpcHRvckltYWdlSW5mbyAmYWxs
b2NEZXNjcmlwdG9ySW1hZ2VJbmZvKCkgeyByZXR1cm4gKmFsbG9jRGVzY3JpcHRvckltYWdlSW5m
b3MoMSk7IH0KLSAgICBWa1dyaXRlRGVzY3JpcHRvclNldCAmYWxsb2NXcml0ZURlc2NyaXB0b3JT
ZXQoKSB7IHJldHVybiAqYWxsb2NXcml0ZURlc2NyaXB0b3JTZXRzKDEpOyB9Ci0KICAgICAvLyBG
b3IgdGVzdGluZyBvbmx5LgogICAgIHZvaWQgc2V0RGVmYXVsdFVuaWZvcm1CbG9ja3NNaW5TaXpl
Rm9yVGVzdGluZyhzaXplX3QgbWluU2l6ZSk7CiAKICAgICB2azo6QnVmZmVySGVscGVyICZnZXRF
bXB0eUJ1ZmZlcigpIHsgcmV0dXJuIG1FbXB0eUJ1ZmZlcjsgfQogCi0gICAgY29uc3Qgdms6OlBl
cmZDb3VudGVycyAmZ2V0UGVyZkNvdW50ZXJzKCkgY29uc3QgeyByZXR1cm4gbVBlcmZDb3VudGVy
czsgfQotICAgIHZrOjpQZXJmQ291bnRlcnMgJmdldFBlcmZDb3VudGVycygpIHsgcmV0dXJuIG1Q
ZXJmQ291bnRlcnM7IH0KKyAgICAvLyBLZWVwaW5nIHRyYWNrIG9mIHRoZSBidWZmZXIgY29weSBz
aXplLiBVc2VkIHRvIGRldGVybWluZSB3aGVuIHRvIHN1Ym1pdCB0aGUgb3V0c2lkZSBjb21tYW5k
CisgICAgLy8gYnVmZmVyLgorICAgIGFuZ2xlOjpSZXN1bHQgb25Db3B5VXBkYXRlKFZrRGV2aWNl
U2l6ZSBzaXplKTsKKyAgICB2b2lkIHJlc2V0VG90YWxCdWZmZXJUb0ltYWdlQ29weVNpemUoKSB7
IG1Ub3RhbEJ1ZmZlclRvSW1hZ2VDb3B5U2l6ZSA9IDA7IH0KKyAgICBWa0RldmljZVNpemUgZ2V0
VG90YWxCdWZmZXJUb0ltYWdlQ29weVNpemUoKSBjb25zdCB7IHJldHVybiBtVG90YWxCdWZmZXJU
b0ltYWdlQ29weVNpemU7IH0KIAogICAgIC8vIEltcGxlbWVudGF0aW9uIG9mIE11bHRpc2FtcGxl
VGV4dHVyZUluaXRpYWxpemVyCiAgICAgYW5nbGU6OlJlc3VsdCBpbml0aWFsaXplTXVsdGlzYW1w
bGVUZXh0dXJlVG9CbGFjayhjb25zdCBnbDo6Q29udGV4dCAqY29udGV4dCwKQEAgLTY4OCw2ICs3
MjQsOCBAQCBjbGFzcyBDb250ZXh0VmsgOiBwdWJsaWMgQ29udGV4dEltcGwsIHB1YmxpYyB2azo6
Q29udGV4dCwgcHVibGljIE11bHRpc2FtcGxlVGV4dAogICAgICAgICByZXR1cm4gYW5nbGU6OlJl
c3VsdDo6Q29udGludWU7CiAgICAgfQogCisgICAgY29uc3QgYW5nbGU6OlBlcmZNb25pdG9yQ291
bnRlckdyb3VwcyAmZ2V0UGVyZk1vbml0b3JDb3VudGVycygpIG92ZXJyaWRlOworCiAgIHByaXZh
dGU6CiAgICAgLy8gRGlydHkgYml0cy4KICAgICBlbnVtIERpcnR5Qml0VHlwZSA6IHNpemVfdApA
QCAtNzIxLDYgKzc1OSw3IEBAIGNsYXNzIENvbnRleHRWayA6IHB1YmxpYyBDb250ZXh0SW1wbCwg
cHVibGljIHZrOjpDb250ZXh0LCBwdWJsaWMgTXVsdGlzYW1wbGVUZXh0CiAgICAgICAgIERJUlRZ
X0JJVF9UUkFOU0ZPUk1fRkVFREJBQ0tfUkVTVU1FLAogICAgICAgICBESVJUWV9CSVRfREVTQ1JJ
UFRPUl9TRVRTLAogICAgICAgICBESVJUWV9CSVRfRlJBTUVCVUZGRVJfRkVUQ0hfQkFSUklFUiwK
KyAgICAgICAgRElSVFlfQklUX0JMRU5EX0JBUlJJRVIsCiAgICAgICAgIC8vIER5bmFtaWMgdmll
d3BvcnQvc2Npc3NvcgogICAgICAgICBESVJUWV9CSVRfVklFV1BPUlQsCiAgICAgICAgIERJUlRZ
X0JJVF9TQ0lTU09SLApAQCAtODI3LDYgKzg2Niw3IEBAIGNsYXNzIENvbnRleHRWayA6IHB1Ymxp
YyBDb250ZXh0SW1wbCwgcHVibGljIHZrOjpDb250ZXh0LCBwdWJsaWMgTXVsdGlzYW1wbGVUZXh0
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnbDo6RHJhd0VsZW1lbnRzVHlw
ZSBpbmRleFR5cGVPckludmFsaWQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBjb25zdCB2b2lkICppbmRpY2VzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgdWludDMyX3QgKm51bUluZGljZXNPdXQpOworCiAgICAgYW5nbGU6OlJlc3VsdCBzZXR1cERp
c3BhdGNoKGNvbnN0IGdsOjpDb250ZXh0ICpjb250ZXh0KTsKIAogICAgIGdsOjpSZWN0YW5nbGUg
Z2V0Q29ycmVjdGVkVmlld3BvcnQoY29uc3QgZ2w6OlJlY3RhbmdsZSAmdmlld3BvcnQpIGNvbnN0
OwpAQCAtODk0LDYgKzkzNCw4IEBAIGNsYXNzIENvbnRleHRWayA6IHB1YmxpYyBDb250ZXh0SW1w
bCwgcHVibGljIHZrOjpDb250ZXh0LCBwdWJsaWMgTXVsdGlzYW1wbGVUZXh0CiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIERpcnR5Qml0cyBkaXJ0
eUJpdE1hc2spOwogICAgIGFuZ2xlOjpSZXN1bHQgaGFuZGxlRGlydHlHcmFwaGljc0ZyYW1lYnVm
ZmVyRmV0Y2hCYXJyaWVyKERpcnR5Qml0czo6SXRlcmF0b3IgKmRpcnR5Qml0c0l0ZXJhdG9yLAog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIERpcnR5Qml0cyBkaXJ0eUJpdE1hc2spOworICAgIGFuZ2xlOjpSZXN1bHQgaGFuZGxlRGly
dHlHcmFwaGljc0JsZW5kQmFycmllcihEaXJ0eUJpdHM6Okl0ZXJhdG9yICpkaXJ0eUJpdHNJdGVy
YXRvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
RGlydHlCaXRzIGRpcnR5Qml0TWFzayk7CiAgICAgYW5nbGU6OlJlc3VsdCBoYW5kbGVEaXJ0eUdy
YXBoaWNzVHJhbnNmb3JtRmVlZGJhY2tCdWZmZXJzRW11bGF0aW9uKAogICAgICAgICBEaXJ0eUJp
dHM6Okl0ZXJhdG9yICpkaXJ0eUJpdHNJdGVyYXRvciwKICAgICAgICAgRGlydHlCaXRzIGRpcnR5
Qml0TWFzayk7CkBAIC05NTIsNiArOTk0LDEwIEBAIGNsYXNzIENvbnRleHRWayA6IHB1YmxpYyBD
b250ZXh0SW1wbCwgcHVibGljIHZrOjpDb250ZXh0LCBwdWJsaWMgTXVsdGlzYW1wbGVUZXh0CiAg
ICAgdm9pZCB3cml0ZUF0b21pY0NvdW50ZXJCdWZmZXJEcml2ZXJVbmlmb3JtT2Zmc2V0cyh1aW50
MzJfdCAqb2Zmc2V0c091dCwgc2l6ZV90IG9mZnNldHNTaXplKTsKIAogICAgIGFuZ2xlOjpSZXN1
bHQgc3VibWl0RnJhbWUoY29uc3Qgdms6OlNlbWFwaG9yZSAqc2lnbmFsU2VtYXBob3JlLCBTZXJp
YWwgKnN1Ym1pdFNlcmlhbE91dCk7CisgICAgYW5nbGU6OlJlc3VsdCBzdWJtaXRGcmFtZU91dHNp
ZGVDb21tYW5kQnVmZmVyT25seShTZXJpYWwgKnN1Ym1pdFNlcmlhbE91dCk7CisgICAgYW5nbGU6
OlJlc3VsdCBzdWJtaXRGcmFtZUltcGwoY29uc3Qgdms6OlNlbWFwaG9yZSAqc2lnbmFsU2VtYXBo
b3JlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNlcmlhbCAqc3VibWl0U2Vy
aWFsT3V0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN1Ym1pdEZyYW1lVHlw
ZSBzdWJtaXRGcmFtZVR5cGUpOwogCiAgICAgYW5nbGU6OlJlc3VsdCBzeW5jaHJvbml6ZUNwdUdw
dVRpbWUoKTsKICAgICBhbmdsZTo6UmVzdWx0IHRyYWNlR3B1RXZlbnRJbXBsKHZrOjpPdXRzaWRl
UmVuZGVyUGFzc0NvbW1hbmRCdWZmZXIgKmNvbW1hbmRCdWZmZXIsCkBAIC0xMDA0LDEyICsxMDUw
LDYgQEAgY2xhc3MgQ29udGV4dFZrIDogcHVibGljIENvbnRleHRJbXBsLCBwdWJsaWMgdms6OkNv
bnRleHQsIHB1YmxpYyBNdWx0aXNhbXBsZVRleHQKICAgICAgICAgc2l6ZV90IGJ1ZmZlckNvdW50
LAogICAgICAgICBjb25zdCBnbDo6VHJhbnNmb3JtRmVlZGJhY2tCdWZmZXJzQXJyYXk8dms6OkJ1
ZmZlckhlbHBlciAqPiAmYnVmZmVycyk7CiAKLSAgICAvLyBEZXNjcmlwdG9yU2V0IHdyaXRlcwot
ICAgIHRlbXBsYXRlIDx0eXBlbmFtZSBULCBjb25zdCBUICpWa1dyaXRlRGVzY3JpcHRvclNldDo6
KnBJbmZvPgotICAgIFQgKmFsbG9jRGVzY3JpcHRvckluZm9zKHN0ZDo6dmVjdG9yPFQ+ICpkZXNj
cmlwdG9yVmVjdG9yLCBzaXplX3QgY291bnQpOwotICAgIHRlbXBsYXRlIDx0eXBlbmFtZSBULCBj
b25zdCBUICpWa1dyaXRlRGVzY3JpcHRvclNldDo6KnBJbmZvPgotICAgIHZvaWQgZ3Jvd0Rlc2Np
cHRvckNhcGFjaXR5KHN0ZDo6dmVjdG9yPFQ+ICpkZXNjcmlwdG9yVmVjdG9yLCBzaXplX3QgbmV3
U2l6ZSk7Ci0KICAgICBhbmdsZTo6UmVzdWx0IHVwZGF0ZVJlbmRlclBhc3NEZXB0aFN0ZW5jaWxB
Y2Nlc3MoKTsKICAgICBib29sIHNob3VsZFN3aXRjaFRvUmVhZE9ubHlEZXB0aEZlZWRiYWNrTG9v
cE1vZGUoZ2w6OlRleHR1cmUgKnRleHR1cmUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGdsOjpDb21tYW5kIGNvbW1hbmQpIGNvbnN0OwpAQCAt
MTE3MCw3ICsxMjEwLDcgQEAgY2xhc3MgQ29udGV4dFZrIDogcHVibGljIENvbnRleHRJbXBsLCBw
dWJsaWMgdms6OkNvbnRleHQsIHB1YmxpYyBNdWx0aXNhbXBsZVRleHQKICAgICBHcmFwaGljc0V2
ZW50Q21kQnVmIG1RdWVyeUV2ZW50VHlwZTsKIAogICAgIC8vIFRyYW5zZm9ybSBmZWVkYmFjayBi
dWZmZXJzLgotICAgIGFuZ2xlOjpGYXN0VW5vcmRlcmVkU2V0PGNvbnN0IHZrOjpCdWZmZXJIZWxw
ZXIgKiwKKyAgICBhbmdsZTo6RmxhdFVub3JkZXJlZFNldDxjb25zdCB2azo6QnVmZmVySGVscGVy
ICosCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2w6OklNUExFTUVOVEFUSU9OX01BWF9U
UkFOU0ZPUk1fRkVFREJBQ0tfQlVGRkVSUz4KICAgICAgICAgbUN1cnJlbnRUcmFuc2Zvcm1GZWVk
YmFja0J1ZmZlcnM7CiAKQEAgLTExOTcsNiArMTIzNywxMCBAQCBjbGFzcyBDb250ZXh0VmsgOiBw
dWJsaWMgQ29udGV4dEltcGwsIHB1YmxpYyB2azo6Q29udGV4dCwgcHVibGljIE11bHRpc2FtcGxl
VGV4dAogICAgIC8vIEdMX0VYVF9zaGFkZXJfZnJhbWVidWZmZXJfZmV0Y2hfbm9uX2NvaGVyZW50
CiAgICAgYm9vbCBtTGFzdFByb2dyYW1Vc2VzRnJhbWVidWZmZXJGZXRjaDsKIAorICAgIC8vIFRo
ZSBzaXplIG9mIGNvcHkgY29tbWFuZHMgaXNzdWVkIGJldHdlZW4gYnVmZmVycyBhbmQgaW1hZ2Vz
LiBVc2VkIHRvIHN1Ym1pdCB0aGUgY29tbWFuZAorICAgIC8vIGJ1ZmZlciBmb3IgdGhlIG91dHNp
ZGUgcmVuZGVyIHBhc3MuCisgICAgVmtEZXZpY2VTaXplIG1Ub3RhbEJ1ZmZlclRvSW1hZ2VDb3B5
U2l6ZSA9IDA7CisKICAgICAvLyBTZW1hcGhvcmVzIHRoYXQgbXVzdCBiZSB3YWl0ZWQgb24gaW4g
dGhlIG5leHQgc3VibWlzc2lvbi4KICAgICBzdGQ6OnZlY3RvcjxWa1NlbWFwaG9yZT4gbVdhaXRT
ZW1hcGhvcmVzOwogICAgIHN0ZDo6dmVjdG9yPFZrUGlwZWxpbmVTdGFnZUZsYWdzPiBtV2FpdFNl
bWFwaG9yZVN0YWdlTWFza3M7CkBAIC0xMjEwLDcgKzEyNTQsNyBAQCBjbGFzcyBDb250ZXh0Vmsg
OiBwdWJsaWMgQ29udGV4dEltcGwsIHB1YmxpYyB2azo6Q29udGV4dCwgcHVibGljIE11bHRpc2Ft
cGxlVGV4dAogICAgIHVpbnQ2NF90IG1HcHVFdmVudFRpbWVzdGFtcE9yaWdpbjsKIAogICAgIC8v
IEEgbWl4IG9mIHBlci1mcmFtZSBhbmQgcGVyLXJ1biBjb3VudGVycy4KLSAgICB2azo6UGVyZkNv
dW50ZXJzIG1QZXJmQ291bnRlcnM7CisgICAgYW5nbGU6OlBlcmZNb25pdG9yQ291bnRlckdyb3Vw
cyBtUGVyZk1vbml0b3JDb3VudGVyczsKICAgICBDb250ZXh0VmtQZXJmQ291bnRlcnMgbUNvbnRl
eHRQZXJmQ291bnRlcnM7CiAgICAgQ29udGV4dFZrUGVyZkNvdW50ZXJzIG1DdW11bGF0aXZlQ29u
dGV4dFBlcmZDb3VudGVyczsKIApAQCAtMTIyMiw5ICsxMjY2LDcgQEAgY2xhc3MgQ29udGV4dFZr
IDogcHVibGljIENvbnRleHRJbXBsLCBwdWJsaWMgdms6OkNvbnRleHQsIHB1YmxpYyBNdWx0aXNh
bXBsZVRleHQKICAgICBlZ2w6OkNvbnRleHRQcmlvcml0eSBtQ29udGV4dFByaW9yaXR5OwogCiAg
ICAgLy8gU3RvcmFnZSBmb3IgdmtVcGRhdGVEZXNjcmlwdG9yU2V0cwotICAgIHN0ZDo6dmVjdG9y
PFZrRGVzY3JpcHRvckJ1ZmZlckluZm8+IG1EZXNjcmlwdG9yQnVmZmVySW5mb3M7Ci0gICAgc3Rk
Ojp2ZWN0b3I8VmtEZXNjcmlwdG9ySW1hZ2VJbmZvPiBtRGVzY3JpcHRvckltYWdlSW5mb3M7Ci0g
ICAgc3RkOjp2ZWN0b3I8VmtXcml0ZURlc2NyaXB0b3JTZXQ+IG1Xcml0ZURlc2NyaXB0b3JTZXRz
OworICAgIFVwZGF0ZURlc2NyaXB0b3JTZXRzQnVpbGRlciBtVXBkYXRlRGVzY3JpcHRvclNldHNC
dWlsZGVyOwogCiAgICAgU2hhcmVHcm91cFZrICptU2hhcmVHcm91cFZrOwogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL0Rp
c3BsYXlWay5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVy
ZXIvdnVsa2FuL0Rpc3BsYXlWay5jcHAKaW5kZXggOWEyNTI0ZTFiYjIzZjNhNjM3OTEyZDU5ODhm
YTliZTQyYjNhNWYwZS4uNTZiZTE0NWY1ZTYwMTRiYjg1ZmY0YzJlZTRmOTUyZDBkYWFiNjUwOSAx
MDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVy
L3Z1bGthbi9EaXNwbGF5VmsuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9s
aWJBTkdMRS9yZW5kZXJlci92dWxrYW4vRGlzcGxheVZrLmNwcApAQCAtMjYsNyArMjYsNyBAQAog
bmFtZXNwYWNlIHJ4CiB7CiAvLyBUaW1lIGludGVydmFsIGluIHNlY29uZHMgdGhhdCB3ZSBzaG91
bGQgdHJ5IHRvIHBydW5lIGRlZmF1bHQgYnVmZmVyIHBvb2xzLgotY29uc3RleHByIGRvdWJsZSBr
VGltZUVsYXBzZWRGb3JQcnVuZURlZmF1bHRCdWZmZXJQb29sID0gMTsKK2NvbnN0ZXhwciBkb3Vi
bGUga1RpbWVFbGFwc2VkRm9yUHJ1bmVEZWZhdWx0QnVmZmVyUG9vbCA9IDAuMjU7CiAKIERpc3Bs
YXlWazo6RGlzcGxheVZrKGNvbnN0IGVnbDo6RGlzcGxheVN0YXRlICZzdGF0ZSkKICAgICA6IERp
c3BsYXlJbXBsKHN0YXRlKSwKQEAgLTM0Niw2ICszNDYsOCBAQCB2b2lkIERpc3BsYXlWazo6Z2Vu
ZXJhdGVFeHRlbnNpb25zKGVnbDo6RGlzcGxheUV4dGVuc2lvbnMgKm91dEV4dGVuc2lvbnMpIGNv
bnN0CiAKICAgICBvdXRFeHRlbnNpb25zLT5sb2NrU3VyZmFjZTNLSFIgPQogICAgICAgICBnZXRS
ZW5kZXJlcigpLT5nZXRGZWF0dXJlcygpLnN1cHBvcnRzTG9ja1N1cmZhY2VFeHRlbnNpb24uZW5h
YmxlZDsKKworICAgIG91dEV4dGVuc2lvbnMtPnBhcnRpYWxVcGRhdGVLSFIgPSB0cnVlOwogfQog
CiB2b2lkIERpc3BsYXlWazo6Z2VuZXJhdGVDYXBzKGVnbDo6Q2FwcyAqb3V0Q2FwcykgY29uc3QK
QEAgLTQzNSw2ICs0MzcsMTggQEAgdm9pZCBTaGFyZUdyb3VwVms6Om9uRGVzdHJveShjb25zdCBl
Z2w6OkRpc3BsYXkgKmRpc3BsYXkpCiAgICAgQVNTRVJUKG1SZXNvdXJjZVVzZUxpc3RzLmVtcHR5
KCkpOwogfQogCit2b2lkIFNoYXJlR3JvdXBWazo6cmVsZWFzZVJlc291cmNlVXNlTGlzdHMoY29u
c3QgU2VyaWFsICZzdWJtaXRTZXJpYWwpCit7CisgICAgaWYgKCFtUmVzb3VyY2VVc2VMaXN0cy5l
bXB0eSgpKQorICAgIHsKKyAgICAgICAgZm9yICh2azo6UmVzb3VyY2VVc2VMaXN0ICZpdCA6IG1S
ZXNvdXJjZVVzZUxpc3RzKQorICAgICAgICB7CisgICAgICAgICAgICBpdC5yZWxlYXNlUmVzb3Vy
Y2VVc2VzQW5kVXBkYXRlU2VyaWFscyhzdWJtaXRTZXJpYWwpOworICAgICAgICB9CisgICAgICAg
IG1SZXNvdXJjZVVzZUxpc3RzLmNsZWFyKCk7CisgICAgfQorfQorCiB2azo6QnVmZmVyUG9vbCAq
U2hhcmVHcm91cFZrOjpnZXREZWZhdWx0QnVmZmVyUG9vbChSZW5kZXJlclZrICpyZW5kZXJlciwK
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZrRGV2
aWNlU2l6ZSBzaXplLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgdWludDMyX3QgbWVtb3J5VHlwZUluZGV4KQpkaWZmIC0tZ2l0IGEvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9EaXNwbGF5VmsuaCBi
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vRGlz
cGxheVZrLmgKaW5kZXggYmYxNTFmZGFjMzA2MWMzNjQwZWIxMTBlZWRlZDVmZTI2ZGFiODk4Yi4u
M2RmZDE0OGI2NGMwM2EyNTE3NmViYjdiNmJlMDJkZGE0NmVlOGVmZSAxMDA2NDQKLS0tIGEvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9EaXNwbGF5
VmsuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIv
dnVsa2FuL0Rpc3BsYXlWay5oCkBAIC0zNiwxNCArMzYsMTcgQEAgY2xhc3MgU2hhcmVHcm91cFZr
IDogcHVibGljIFNoYXJlR3JvdXBJbXBsCiAgICAgRGVzY3JpcHRvclNldExheW91dENhY2hlICZn
ZXREZXNjcmlwdG9yU2V0TGF5b3V0Q2FjaGUoKSB7IHJldHVybiBtRGVzY3JpcHRvclNldExheW91
dENhY2hlOyB9CiAgICAgQ29udGV4dFZrU2V0ICpnZXRDb250ZXh0cygpIHsgcmV0dXJuICZtQ29u
dGV4dHM7IH0KIAotICAgIHN0ZDo6dmVjdG9yPHZrOjpSZXNvdXJjZVVzZUxpc3Q+ICYmcmVsZWFz
ZVJlc291cmNlVXNlTGlzdHMoKQotICAgIHsKLSAgICAgICAgcmV0dXJuIHN0ZDo6bW92ZShtUmVz
b3VyY2VVc2VMaXN0cyk7Ci0gICAgfQorICAgIHZvaWQgcmVsZWFzZVJlc291cmNlVXNlTGlzdHMo
Y29uc3QgU2VyaWFsICZzdWJtaXRTZXJpYWwpOwogICAgIHZvaWQgYWNxdWlyZVJlc291cmNlVXNl
TGlzdCh2azo6UmVzb3VyY2VVc2VMaXN0ICYmcmVzb3VyY2VVc2VMaXN0KQogICAgIHsKICAgICAg
ICAgbVJlc291cmNlVXNlTGlzdHMuZW1wbGFjZV9iYWNrKHN0ZDo6bW92ZShyZXNvdXJjZVVzZUxp
c3QpKTsKICAgICB9CisgICAgdm9pZCBjb3B5UmVzb3VyY2VVc2VMaXN0KHZrOjpSZXNvdXJjZVVz
ZUxpc3QgJnJlc291cmNlVXNlTGlzdCkKKyAgICB7CisgICAgICAgIHZrOjpSZXNvdXJjZVVzZUxp
c3QgY29weVJlc291cmNlVXNlTGlzdDsKKyAgICAgICAgY29weVJlc291cmNlVXNlTGlzdC5jb3B5
KHJlc291cmNlVXNlTGlzdCk7CisgICAgICAgIG1SZXNvdXJjZVVzZUxpc3RzLmVtcGxhY2VfYmFj
ayhzdGQ6Om1vdmUoY29weVJlc291cmNlVXNlTGlzdCkpOworICAgIH0KIAogICAgIHZrOjpCdWZm
ZXJQb29sICpnZXREZWZhdWx0QnVmZmVyUG9vbChSZW5kZXJlclZrICpyZW5kZXJlciwKICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVmtEZXZpY2VTaXplIHNpemUsCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIv
dnVsa2FuL0ZyYW1lYnVmZmVyVmsuY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xp
YkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9GcmFtZWJ1ZmZlclZrLmNwcAppbmRleCBkMGIxMjAyYjUy
YzM2MWZlOGUwNzIyYTZlZWNkMjdjZDdlZWVlNDc4Li4zMTMxYzA1MjRjMWIwMDI3MDJjNzUwNWQz
MGQxOGE1MTM0OTkzZGRmIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
bGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL0ZyYW1lYnVmZmVyVmsuY3BwCisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vRnJhbWVidWZmZXJW
ay5jcHAKQEAgLTEyMTAsNyArMTIxMCw3IEBAIGFuZ2xlOjpSZXN1bHQgRnJhbWVidWZmZXJWazo6
YmxpdChjb25zdCBnbDo6Q29udGV4dCAqY29udGV4dCwKICAgICAgICAgICAgICAgICBjb250ZXh0
VmstPmZsdXNoQ29tbWFuZHNBbmRFbmRSZW5kZXJQYXNzKFJlbmRlclBhc3NDbG9zdXJlUmVhc29u
OjpQcmVwYXJlRm9yQmxpdCkpOwogCiAgICAgICAgICAgICBjb25zdCB2azo6SW1hZ2VWaWV3ICpj
b3B5SW1hZ2VWaWV3ID0gbnVsbHB0cjsKLSAgICAgICAgICAgIEFOR0xFX1RSWShyZWFkUmVuZGVy
VGFyZ2V0LT5nZXRBbmRSZXRhaW5Db3B5SW1hZ2VWaWV3KGNvbnRleHRWaywgJmNvcHlJbWFnZVZp
ZXcpKTsKKyAgICAgICAgICAgIEFOR0xFX1RSWShyZWFkUmVuZGVyVGFyZ2V0LT5nZXRDb3B5SW1h
Z2VWaWV3KGNvbnRleHRWaywgJmNvcHlJbWFnZVZpZXcpKTsKICAgICAgICAgICAgIEFOR0xFX1RS
WSh1dGlsc1ZrLmNvbG9yQmxpdFJlc29sdmUoCiAgICAgICAgICAgICAgICAgY29udGV4dFZrLCB0
aGlzLCAmcmVhZFJlbmRlclRhcmdldC0+Z2V0SW1hZ2VGb3JDb3B5KCksIGNvcHlJbWFnZVZpZXcs
IHBhcmFtcykpOwogICAgICAgICB9CkBAIC0xNDU5LDcgKzE0NTksNyBAQCBhbmdsZTo6UmVzdWx0
IEZyYW1lYnVmZmVyVms6OnJlc29sdmVDb2xvcldpdGhDb21tYW5kKENvbnRleHRWayAqY29udGV4
dFZrLAogICAgIHJlc29sdmVSZWdpb24uZXh0ZW50LmhlaWdodCAgICAgICAgICAgICAgICAgPSBw
YXJhbXMuYmxpdEFyZWEuaGVpZ2h0OwogICAgIHJlc29sdmVSZWdpb24uZXh0ZW50LmRlcHRoICAg
ICAgICAgICAgICAgICAgPSAxOwogCi0gICAgdms6OlBlcmZDb3VudGVycyAmcGVyZkNvdW50ZXJz
ID0gY29udGV4dFZrLT5nZXRQZXJmQ291bnRlcnMoKTsKKyAgICBhbmdsZTo6VnVsa2FuUGVyZkNv
dW50ZXJzICZwZXJmQ291bnRlcnMgPSBjb250ZXh0VmstPmdldFBlcmZDb3VudGVycygpOwogICAg
IGZvciAoc2l6ZV90IGNvbG9ySW5kZXhHTCA6IG1TdGF0ZS5nZXRFbmFibGVkRHJhd0J1ZmZlcnMo
KSkKICAgICB7CiAgICAgICAgIFJlbmRlclRhcmdldFZrICpkcmF3UmVuZGVyVGFyZ2V0ID0gbVJl
bmRlclRhcmdldENhY2hlLmdldENvbG9ycygpW2NvbG9ySW5kZXhHTF07CmRpZmYgLS1naXQgYS9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL092ZXJs
YXlWay5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIv
dnVsa2FuL092ZXJsYXlWay5jcHAKaW5kZXggOTA1ZmE3YTQ3MTI0ZTlkMDVlNjkwOWVlNjIwODcz
ZjljZTM4ZTBjYy4uMzc0NmQwYWQwNmZmMGZlMzg5MTk1MjYxOTdlYWU0MjIyYzkwNzNlOCAxMDA2
NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1
bGthbi9PdmVybGF5VmsuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJB
TkdMRS9yZW5kZXJlci92dWxrYW4vT3ZlcmxheVZrLmNwcApAQCAtMjEsMTggKzIxLDYgQEAgbmFt
ZXNwYWNlIHJ4CiBPdmVybGF5Vms6Ok92ZXJsYXlWayhjb25zdCBnbDo6T3ZlcmxheVN0YXRlICZz
dGF0ZSkgOiBPdmVybGF5SW1wbChzdGF0ZSkge30KIE92ZXJsYXlWazo6fk92ZXJsYXlWaygpID0g
ZGVmYXVsdDsKIAotYW5nbGU6OlJlc3VsdCBPdmVybGF5Vms6OmluaXQoY29uc3QgZ2w6OkNvbnRl
eHQgKmNvbnRleHQsIGJvb2wgKnN1Y2Nlc3NPdXQpCi17Ci0gICAgKnN1Y2Nlc3NPdXQgPSBmYWxz
ZTsKLQotICAgIENvbnRleHRWayAqY29udGV4dFZrID0gdms6OkdldEltcGwoY29udGV4dCk7Ci0g
ICAgQU5HTEVfVFJZKGNyZWF0ZUZvbnQoY29udGV4dFZrKSk7Ci0KLSAgICBBTkdMRV9UUlkoY29u
dGV4dFZrLT5mbHVzaEltcGwobnVsbHB0ciwgUmVuZGVyUGFzc0Nsb3N1cmVSZWFzb246Ok92ZXJs
YXlGb250Q3JlYXRpb24pKTsKLSAgICAqc3VjY2Vzc091dCA9IHRydWU7Ci0gICAgcmV0dXJuIGFu
Z2xlOjpSZXN1bHQ6OkNvbnRpbnVlOwotfQotCiB2b2lkIE92ZXJsYXlWazo6b25EZXN0cm95KGNv
bnN0IGdsOjpDb250ZXh0ICpjb250ZXh0KQogewogICAgIFJlbmRlcmVyVmsgKnJlbmRlcmVyID0g
dms6OkdldEltcGwoY29udGV4dCktPmdldFJlbmRlcmVyKCk7CkBAIC0xMjQsNiArMTEyLDEyIEBA
IGFuZ2xlOjpSZXN1bHQgT3ZlcmxheVZrOjpvblByZXNlbnQoQ29udGV4dFZrICpjb250ZXh0Vmss
CiAgICAgICAgIHJldHVybiBhbmdsZTo6UmVzdWx0OjpDb250aW51ZTsKICAgICB9CiAKKyAgICAv
LyBMYXppbHkgaW5pdGlhbGl6ZSB0aGUgZm9udCBvbiBmaXJzdCB1c2UKKyAgICBpZiAoIW1Gb250
SW1hZ2UudmFsaWQoKSkKKyAgICB7CisgICAgICAgIEFOR0xFX1RSWShjcmVhdGVGb250KGNvbnRl
eHRWaykpOworICAgIH0KKwogICAgIFJlbmRlcmVyVmsgKnJlbmRlcmVyID0gY29udGV4dFZrLT5n
ZXRSZW5kZXJlcigpOwogCiAgICAgdms6OlJlbmRlcmVyU2NvcGVkPHZrOjpCdWZmZXJIZWxwZXI+
IHRleHREYXRhQnVmZmVyKHJlbmRlcmVyKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vT3ZlcmxheVZrLmggYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL092ZXJsYXlWay5o
CmluZGV4IDhjMGU3NjI4MDg5NjBjYzdlNjI0Nzc1NDc1MDQyZDRiMTJiYmU3NzMuLmFiNTQ1M2Rm
YzkzM2MyN2YwYTNkYjg5NTRkMmQ2NjkzMTdkZDE2NjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vT3ZlcmxheVZrLmgKKysr
IGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9P
dmVybGF5VmsuaApAQCAtMjUsNyArMjUsNiBAQCBjbGFzcyBPdmVybGF5VmsgOiBwdWJsaWMgT3Zl
cmxheUltcGwKICAgICBPdmVybGF5VmsoY29uc3QgZ2w6Ok92ZXJsYXlTdGF0ZSAmc3RhdGUpOwog
ICAgIH5PdmVybGF5VmsoKSBvdmVycmlkZTsKIAotICAgIGFuZ2xlOjpSZXN1bHQgaW5pdChjb25z
dCBnbDo6Q29udGV4dCAqY29udGV4dCwgYm9vbCAqc3VjY2Vzc091dCkgb3ZlcnJpZGU7CiAgICAg
dm9pZCBvbkRlc3Ryb3koY29uc3QgZ2w6OkNvbnRleHQgKmNvbnRleHQpIG92ZXJyaWRlOwogCiAg
ICAgYW5nbGU6OlJlc3VsdCBvblByZXNlbnQoQ29udGV4dFZrICpjb250ZXh0VmssCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2Fu
L1Byb2dyYW1FeGVjdXRhYmxlVmsuY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xp
YkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9Qcm9ncmFtRXhlY3V0YWJsZVZrLmNwcAppbmRleCBmODYx
ZDc1ZjIzYWVmMzI4YmFhMDhkODAzNWNkMTk0NThjNWQ1YWU5Li4xZGFlYTUyYjI3N2Y5MmVjNWE1
NjBkMmQwOTZlODk2NGFlOGU0NTAyIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL1Byb2dyYW1FeGVjdXRhYmxlVmsuY3BwCisr
KyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4v
UHJvZ3JhbUV4ZWN1dGFibGVWay5jcHAKQEAgLTY0LDcgKzY0LDcgQEAgYm9vbCBWYWxpZGF0ZVRy
YW5zZm9ybWVkU3BpclYoY29uc3QgZ2w6OlNoYWRlckJpdFNldCAmbGlua2VkU2hhZGVyU3RhZ2Vz
LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgU2hhZGVySW50ZXJmYWNlVmFy
aWFibGVJbmZvTWFwICZ2YXJpYWJsZUluZm9NYXAsCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBjb25zdCBnbDo6U2hhZGVyTWFwPGFuZ2xlOjpzcGlydjo6QmxvYj4gJnNwaXJ2QmxvYnMp
CiB7Ci0gICAgY29uc3QgZ2w6OlNoYWRlclR5cGUgbGFzdFByZUZyYWdtZW50U3RhZ2UgPSBnbDo6
R2V0TGFzdFByZUZyYWdtZW50U3RhZ2UobGlua2VkU2hhZGVyU3RhZ2VzKTsKKyAgICBnbDo6U2hh
ZGVyVHlwZSBsYXN0UHJlRnJhZ21lbnRTdGFnZSA9IGdsOjpHZXRMYXN0UHJlRnJhZ21lbnRTdGFn
ZShsaW5rZWRTaGFkZXJTdGFnZXMpOwogCiAgICAgZm9yIChnbDo6U2hhZGVyVHlwZSBzaGFkZXJU
eXBlIDogbGlua2VkU2hhZGVyU3RhZ2VzKQogICAgIHsKQEAgLTEzNCw3ICsxMzQsNyBAQCBhbmds
ZTo6UmVzdWx0IFNoYWRlckluZm86OmluaXRTaGFkZXJzKGNvbnN0IGdsOjpTaGFkZXJCaXRTZXQg
JmxpbmtlZFNoYWRlclN0YWdlcwogewogICAgIGNsZWFyKCk7CiAKLSAgICBmb3IgKGNvbnN0IGds
OjpTaGFkZXJUeXBlIHNoYWRlclR5cGUgOiBnbDo6QWxsU2hhZGVyVHlwZXMoKSkKKyAgICBmb3Ig
KGdsOjpTaGFkZXJUeXBlIHNoYWRlclR5cGUgOiBnbDo6QWxsU2hhZGVyVHlwZXMoKSkKICAgICB7
CiAgICAgICAgIGlmIChzcGlydkJsb2JzW3NoYWRlclR5cGVdICE9IG51bGxwdHIpCiAgICAgICAg
IHsKQEAgLTE3MCw3ICsxNzAsNyBAQCB2b2lkIFNoYWRlckluZm86OmxvYWQoZ2w6OkJpbmFyeUlu
cHV0U3RyZWFtICpzdHJlYW0pCiAgICAgY2xlYXIoKTsKIAogICAgIC8vIFJlYWQgaW4gc2hhZGVy
IGNvZGVzIGZvciBhbGwgc2hhZGVyIHR5cGVzCi0gICAgZm9yIChjb25zdCBnbDo6U2hhZGVyVHlw
ZSBzaGFkZXJUeXBlIDogZ2w6OkFsbFNoYWRlclR5cGVzKCkpCisgICAgZm9yIChnbDo6U2hhZGVy
VHlwZSBzaGFkZXJUeXBlIDogZ2w6OkFsbFNoYWRlclR5cGVzKCkpCiAgICAgewogICAgICAgICBh
bmdsZTo6c3BpcnY6OkJsb2IgKnNwaXJ2QmxvYiA9ICZtU3BpcnZCbG9ic1tzaGFkZXJUeXBlXTsK
IApAQCAtMTg2LDcgKzE4Niw3IEBAIHZvaWQgU2hhZGVySW5mbzo6c2F2ZShnbDo6QmluYXJ5T3V0
cHV0U3RyZWFtICpzdHJlYW0pCiAgICAgQVNTRVJUKHZhbGlkKCkpOwogCiAgICAgLy8gV3JpdGUg
b3V0IHNoYWRlciBjb2RlcyBmb3IgYWxsIHNoYWRlciB0eXBlcwotICAgIGZvciAoY29uc3QgZ2w6
OlNoYWRlclR5cGUgc2hhZGVyVHlwZSA6IGdsOjpBbGxTaGFkZXJUeXBlcygpKQorICAgIGZvciAo
Z2w6OlNoYWRlclR5cGUgc2hhZGVyVHlwZSA6IGdsOjpBbGxTaGFkZXJUeXBlcygpKQogICAgIHsK
ICAgICAgICAgY29uc3QgYW5nbGU6OnNwaXJ2OjpCbG9iICZzcGlydkJsb2IgPSBtU3BpcnZCbG9i
c1tzaGFkZXJUeXBlXTsKIApAQCAtMjAxLDcgKzIwMSw3IEBAIFByb2dyYW1JbmZvOjpQcm9ncmFt
SW5mbygpIHt9CiBQcm9ncmFtSW5mbzo6flByb2dyYW1JbmZvKCkgPSBkZWZhdWx0OwogCiBhbmds
ZTo6UmVzdWx0IFByb2dyYW1JbmZvOjppbml0UHJvZ3JhbShDb250ZXh0VmsgKmNvbnRleHRWaywK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGdsOjpTaGFkZXJU
eXBlIHNoYWRlclR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBn
bDo6U2hhZGVyVHlwZSBzaGFkZXJUeXBlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgYm9vbCBpc0xhc3RQcmVGcmFnbWVudFN0YWdlLAogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgYm9vbCBpc1RyYW5zZm9ybUZlZWRiYWNrUHJvZ3JhbSwKICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFNoYWRlckluZm8gJnNo
YWRlckluZm8sCkBAIC00ODIsNyArNDgyLDggQEAgdWludDMyX3QgR2V0SW50ZXJmYWNlQmxvY2tB
cnJheVNpemUoY29uc3Qgc3RkOjp2ZWN0b3I8Z2w6OkludGVyZmFjZUJsb2NrPiAmYmxvY2sKIH0K
IAogYW5nbGU6OlJlc3VsdCBQcm9ncmFtRXhlY3V0YWJsZVZrOjphbGxvY1VuaWZvcm1BbmRYZmJE
ZXNjcmlwdG9yU2V0KAotICAgIENvbnRleHRWayAqY29udGV4dFZrLAorICAgIHZrOjpDb250ZXh0
ICpjb250ZXh0LAorICAgIHZrOjpSZXNvdXJjZVVzZUxpc3QgKnJlc291cmNlVXNlTGlzdCwKICAg
ICB2azo6QnVmZmVySGVscGVyICpkZWZhdWx0VW5pZm9ybUJ1ZmZlciwKICAgICBjb25zdCB2azo6
RGVzY3JpcHRvclNldERlc2MgJnhmYkJ1ZmZlckRlc2MsCiAgICAgYm9vbCAqbmV3RGVzY3JpcHRv
clNldEFsbG9jYXRlZCkKQEAgLTQ5OCwxOSArNDk5LDE4IEBAIGFuZ2xlOjpSZXN1bHQgUHJvZ3Jh
bUV4ZWN1dGFibGVWazo6YWxsb2NVbmlmb3JtQW5kWGZiRGVzY3JpcHRvclNldCgKICAgICAgICAg
bURlc2NyaXB0b3JTZXRzW0Rlc2NyaXB0b3JTZXRJbmRleDo6VW5pZm9ybXNBbmRYZmJdID0gZGVz
Y3JpcHRvclNldDsKICAgICAgICAgLy8gVGhlIGRlc2NyaXB0b3IgcG9vbCB0aGF0IHRoaXMgZGVz
Y3JpcHRvciBzZXQgd2FzIGFsbG9jYXRlZCBmcm9tIG5lZWRzIHRvIGJlIHJldGFpbmVkIGVhY2gK
ICAgICAgICAgLy8gdGltZSB0aGUgZGVzY3JpcHRvciBzZXQgaXMgdXNlZCBpbiBhIG5ldyBjb21t
YW5kLgotICAgICAgICBtRGVzY3JpcHRvclBvb2xCaW5kaW5nc1tEZXNjcmlwdG9yU2V0SW5kZXg6
OlVuaWZvcm1zQW5kWGZiXS5nZXQoKS5yZXRhaW4oCi0gICAgICAgICAgICAmY29udGV4dFZrLT5n
ZXRSZXNvdXJjZVVzZUxpc3QoKSk7CisgICAgICAgIG1EZXNjcmlwdG9yUG9vbEJpbmRpbmdzW0Rl
c2NyaXB0b3JTZXRJbmRleDo6VW5pZm9ybXNBbmRYZmJdLmdldCgpLnJldGFpbihyZXNvdXJjZVVz
ZUxpc3QpOwogICAgICAgICByZXR1cm4gYW5nbGU6OlJlc3VsdDo6Q29udGludWU7CiAgICAgfQog
CiAgICAgYm9vbCBuZXdQb29sQWxsb2NhdGVkOwotICAgIEFOR0xFX1RSWShhbGxvY2F0ZURlc2Ny
aXB0b3JTZXRBbmRHZXRJbmZvKGNvbnRleHRWaywgRGVzY3JpcHRvclNldEluZGV4OjpVbmlmb3Jt
c0FuZFhmYiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAm
bmV3UG9vbEFsbG9jYXRlZCkpOworICAgIEFOR0xFX1RSWShhbGxvY2F0ZURlc2NyaXB0b3JTZXRB
bmRHZXRJbmZvKAorICAgICAgICBjb250ZXh0LCByZXNvdXJjZVVzZUxpc3QsIERlc2NyaXB0b3JT
ZXRJbmRleDo6VW5pZm9ybXNBbmRYZmIsICZuZXdQb29sQWxsb2NhdGVkKSk7CiAKICAgICAvLyBD
bGVhciBkZXNjcmlwdG9yIHNldCBjYWNoZS4gSXQgbWF5IG5vIGxvbmdlciBiZSB2YWxpZC4KICAg
ICBpZiAobmV3UG9vbEFsbG9jYXRlZCkKICAgICB7Ci0gICAgICAgIG1Vbmlmb3Jtc0FuZFhmYkRl
c2NyaXB0b3JzQ2FjaGUuZGVzdHJveShjb250ZXh0VmstPmdldFJlbmRlcmVyKCksCisgICAgICAg
IG1Vbmlmb3Jtc0FuZFhmYkRlc2NyaXB0b3JzQ2FjaGUuZGVzdHJveShjb250ZXh0LT5nZXRSZW5k
ZXJlcigpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
VnVsa2FuQ2FjaGVUeXBlOjpVbmlmb3Jtc0FuZFhmYkRlc2NyaXB0b3JzKTsKICAgICB9CiAKQEAg
LTUyMiwxNSArNTIyLDE4IEBAIGFuZ2xlOjpSZXN1bHQgUHJvZ3JhbUV4ZWN1dGFibGVWazo6YWxs
b2NVbmlmb3JtQW5kWGZiRGVzY3JpcHRvclNldCgKICAgICByZXR1cm4gYW5nbGU6OlJlc3VsdDo6
Q29udGludWU7CiB9CiAKLWFuZ2xlOjpSZXN1bHQgUHJvZ3JhbUV4ZWN1dGFibGVWazo6YWxsb2Nh
dGVEZXNjcmlwdG9yU2V0KENvbnRleHRWayAqY29udGV4dFZrLAorYW5nbGU6OlJlc3VsdCBQcm9n
cmFtRXhlY3V0YWJsZVZrOjphbGxvY2F0ZURlc2NyaXB0b3JTZXQodms6OkNvbnRleHQgKmNvbnRl
eHQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB2azo6UmVzb3VyY2VVc2VMaXN0ICpyZXNvdXJjZVVzZUxpc3QsCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBEZXNjcmlwdG9yU2V0
SW5kZXggZGVzY3JpcHRvclNldEluZGV4KQogewogICAgIGJvb2wgaWdub3JlTmV3UG9vbEFsbG9j
YXRlZDsKLSAgICByZXR1cm4gYWxsb2NhdGVEZXNjcmlwdG9yU2V0QW5kR2V0SW5mbyhjb250ZXh0
VmssIGRlc2NyaXB0b3JTZXRJbmRleCwgJmlnbm9yZU5ld1Bvb2xBbGxvY2F0ZWQpOworICAgIHJl
dHVybiBhbGxvY2F0ZURlc2NyaXB0b3JTZXRBbmRHZXRJbmZvKGNvbnRleHQsIHJlc291cmNlVXNl
TGlzdCwgZGVzY3JpcHRvclNldEluZGV4LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICZpZ25vcmVOZXdQb29sQWxsb2NhdGVkKTsKIH0KIAogYW5nbGU6OlJlc3Vs
dCBQcm9ncmFtRXhlY3V0YWJsZVZrOjphbGxvY2F0ZURlc2NyaXB0b3JTZXRBbmRHZXRJbmZvKAot
ICAgIENvbnRleHRWayAqY29udGV4dFZrLAorICAgIHZrOjpDb250ZXh0ICpjb250ZXh0LAorICAg
IHZrOjpSZXNvdXJjZVVzZUxpc3QgKnJlc291cmNlVXNlTGlzdCwKICAgICBEZXNjcmlwdG9yU2V0
SW5kZXggZGVzY3JpcHRvclNldEluZGV4LAogICAgIGJvb2wgKm5ld1Bvb2xBbGxvY2F0ZWRPdXQp
CiB7CkBAIC01MzksOCArNTQyLDkgQEAgYW5nbGU6OlJlc3VsdCBQcm9ncmFtRXhlY3V0YWJsZVZr
OjphbGxvY2F0ZURlc2NyaXB0b3JTZXRBbmRHZXRJbmZvKAogICAgIGNvbnN0IHZrOjpEZXNjcmlw
dG9yU2V0TGF5b3V0ICZkZXNjcmlwdG9yU2V0TGF5b3V0ID0KICAgICAgICAgbURlc2NyaXB0b3JT
ZXRMYXlvdXRzW2Rlc2NyaXB0b3JTZXRJbmRleF0uZ2V0KCk7CiAgICAgQU5HTEVfVFJZKGR5bmFt
aWNEZXNjcmlwdG9yUG9vbC5hbGxvY2F0ZVNldHNBbmRHZXRJbmZvKAotICAgICAgICBjb250ZXh0
VmssIGRlc2NyaXB0b3JTZXRMYXlvdXQsIDEsICZtRGVzY3JpcHRvclBvb2xCaW5kaW5nc1tkZXNj
cmlwdG9yU2V0SW5kZXhdLAotICAgICAgICAmbURlc2NyaXB0b3JTZXRzW2Rlc2NyaXB0b3JTZXRJ
bmRleF0sIG5ld1Bvb2xBbGxvY2F0ZWRPdXQpKTsKKyAgICAgICAgY29udGV4dCwgcmVzb3VyY2VV
c2VMaXN0LCBkZXNjcmlwdG9yU2V0TGF5b3V0LCAxLAorICAgICAgICAmbURlc2NyaXB0b3JQb29s
QmluZGluZ3NbZGVzY3JpcHRvclNldEluZGV4XSwgJm1EZXNjcmlwdG9yU2V0c1tkZXNjcmlwdG9y
U2V0SW5kZXhdLAorICAgICAgICBuZXdQb29sQWxsb2NhdGVkT3V0KSk7CiAgICAgbUVtcHR5RGVz
Y3JpcHRvclNldHNbZGVzY3JpcHRvclNldEluZGV4XSA9IFZLX05VTExfSEFORExFOwogCiAgICAg
KyttUGVyZkNvdW50ZXJzLmRlc2NyaXB0b3JTZXRBbGxvY2F0aW9uc1tkZXNjcmlwdG9yU2V0SW5k
ZXhdOwpAQCAtNTUwLDcgKzU1NCw3IEBAIGFuZ2xlOjpSZXN1bHQgUHJvZ3JhbUV4ZWN1dGFibGVW
azo6YWxsb2NhdGVEZXNjcmlwdG9yU2V0QW5kR2V0SW5mbygKIAogdm9pZCBQcm9ncmFtRXhlY3V0
YWJsZVZrOjphZGRJbnRlcmZhY2VCbG9ja0Rlc2NyaXB0b3JTZXREZXNjKAogICAgIGNvbnN0IHN0
ZDo6dmVjdG9yPGdsOjpJbnRlcmZhY2VCbG9jaz4gJmJsb2NrcywKLSAgICBjb25zdCBnbDo6U2hh
ZGVyVHlwZSBzaGFkZXJUeXBlLAorICAgIGdsOjpTaGFkZXJUeXBlIHNoYWRlclR5cGUsCiAgICAg
VmtEZXNjcmlwdG9yVHlwZSBkZXNjVHlwZSwKICAgICB2azo6RGVzY3JpcHRvclNldExheW91dERl
c2MgKmRlc2NPdXQpCiB7CkBAIC01ODEsNyArNTg1LDcgQEAgdm9pZCBQcm9ncmFtRXhlY3V0YWJs
ZVZrOjphZGRJbnRlcmZhY2VCbG9ja0Rlc2NyaXB0b3JTZXREZXNjKAogCiB2b2lkIFByb2dyYW1F
eGVjdXRhYmxlVms6OmFkZEF0b21pY0NvdW50ZXJCdWZmZXJEZXNjcmlwdG9yU2V0RGVzYygKICAg
ICBjb25zdCBzdGQ6OnZlY3RvcjxnbDo6QXRvbWljQ291bnRlckJ1ZmZlcj4gJmF0b21pY0NvdW50
ZXJCdWZmZXJzLAotICAgIGNvbnN0IGdsOjpTaGFkZXJUeXBlIHNoYWRlclR5cGUsCisgICAgZ2w6
OlNoYWRlclR5cGUgc2hhZGVyVHlwZSwKICAgICB2azo6RGVzY3JpcHRvclNldExheW91dERlc2Mg
KmRlc2NPdXQpCiB7CiAgICAgaWYgKGF0b21pY0NvdW50ZXJCdWZmZXJzLmVtcHR5KCkpCkBAIC02
MzksNyArNjQzLDcgQEAgdm9pZCBQcm9ncmFtRXhlY3V0YWJsZVZrOjphZGRJbWFnZURlc2NyaXB0
b3JTZXREZXNjKGNvbnN0IGdsOjpQcm9ncmFtRXhlY3V0YWJsZQogICAgICAgICAgICAgYXJyYXlT
aXplICo9IG91dGVyQXJyYXlTaXplOwogICAgICAgICB9CiAKLSAgICAgICAgZm9yIChjb25zdCBn
bDo6U2hhZGVyVHlwZSBzaGFkZXJUeXBlIDogZXhlY3V0YWJsZS5nZXRMaW5rZWRTaGFkZXJTdGFn
ZXMoKSkKKyAgICAgICAgZm9yIChnbDo6U2hhZGVyVHlwZSBzaGFkZXJUeXBlIDogZXhlY3V0YWJs
ZS5nZXRMaW5rZWRTaGFkZXJTdGFnZXMoKSkKICAgICAgICAgewogICAgICAgICAgICAgaWYgKCFp
bWFnZVVuaWZvcm0uaXNBY3RpdmUoc2hhZGVyVHlwZSkpCiAgICAgICAgICAgICB7CkBAIC02NjUs
NyArNjY5LDcgQEAgdm9pZCBQcm9ncmFtRXhlY3V0YWJsZVZrOjphZGRJbWFnZURlc2NyaXB0b3JT
ZXREZXNjKGNvbnN0IGdsOjpQcm9ncmFtRXhlY3V0YWJsZQogCiB2b2lkIFByb2dyYW1FeGVjdXRh
YmxlVms6OmFkZElucHV0QXR0YWNobWVudERlc2NyaXB0b3JTZXREZXNjKAogICAgIGNvbnN0IGds
OjpQcm9ncmFtRXhlY3V0YWJsZSAmZXhlY3V0YWJsZSwKLSAgICBjb25zdCBnbDo6U2hhZGVyVHlw
ZSBzaGFkZXJUeXBlLAorICAgIGdsOjpTaGFkZXJUeXBlIHNoYWRlclR5cGUsCiAgICAgdms6OkRl
c2NyaXB0b3JTZXRMYXlvdXREZXNjICpkZXNjT3V0KQogewogICAgIGlmIChzaGFkZXJUeXBlICE9
IGdsOjpTaGFkZXJUeXBlOjpGcmFnbWVudCkKQEAgLTczNCw3ICs3MzgsNyBAQCBhbmdsZTo6UmVz
dWx0IFByb2dyYW1FeGVjdXRhYmxlVms6OmFkZFRleHR1cmVEZXNjcmlwdG9yU2V0RGVzYygKICAg
ICAgICAgICAgIGFycmF5U2l6ZSAqPSBvdXRlckFycmF5U2l6ZTsKICAgICAgICAgfQogCi0gICAg
ICAgIGZvciAoY29uc3QgZ2w6OlNoYWRlclR5cGUgc2hhZGVyVHlwZSA6IGV4ZWN1dGFibGUuZ2V0
TGlua2VkU2hhZGVyU3RhZ2VzKCkpCisgICAgICAgIGZvciAoZ2w6OlNoYWRlclR5cGUgc2hhZGVy
VHlwZSA6IGV4ZWN1dGFibGUuZ2V0TGlua2VkU2hhZGVyU3RhZ2VzKCkpCiAgICAgICAgIHsKICAg
ICAgICAgICAgIGlmICghc2FtcGxlclVuaWZvcm0uaXNBY3RpdmUoc2hhZGVyVHlwZSkpCiAgICAg
ICAgICAgICB7CkBAIC04NzYsMTQgKzg4MCwxNSBAQCB2b2lkIFByb2dyYW1FeGVjdXRhYmxlVms6
OnVwZGF0ZUVhcmx5RnJhZ21lbnRUZXN0c09wdGltaXphdGlvbigKIGFuZ2xlOjpSZXN1bHQgUHJv
Z3JhbUV4ZWN1dGFibGVWazo6Z2V0R3JhcGhpY3NQaXBlbGluZShDb250ZXh0VmsgKmNvbnRleHRW
aywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBnbDo6UHJpbWl0aXZlTW9kZSBtb2RlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHZrOjpHcmFwaGljc1BpcGVsaW5lRGVzYyAm
ZGVzYywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBjb25zdCBnbDo6UHJvZ3JhbUV4ZWN1dGFibGUgJmdsRXhlY3V0YWJsZSwKICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB2azo6
R3JhcGhpY3NQaXBlbGluZURlc2MgKipkZXNjUHRyT3V0LAogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZrOjpQaXBlbGluZUhlbHBlciAqKnBp
cGVsaW5lT3V0KQogewotICAgIGNvbnN0IGdsOjpTdGF0ZSAmZ2xTdGF0ZSAgICAgICAgICAgICAg
ICAgID0gY29udGV4dFZrLT5nZXRTdGF0ZSgpOwotICAgIFJlbmRlcmVyVmsgKnJlbmRlcmVyICAg
ICAgICAgICAgICAgICAgICAgID0gY29udGV4dFZrLT5nZXRSZW5kZXJlcigpOwotICAgIHZrOjpQ
aXBlbGluZUNhY2hlICpwaXBlbGluZUNhY2hlICAgICAgICAgID0gbnVsbHB0cjsKLSAgICBjb25z
dCBnbDo6UHJvZ3JhbUV4ZWN1dGFibGUgKmdsRXhlY3V0YWJsZSA9IGdsU3RhdGUuZ2V0UHJvZ3Jh
bUV4ZWN1dGFibGUoKTsKLSAgICBBU1NFUlQoZ2xFeGVjdXRhYmxlICYmIGdsRXhlY3V0YWJsZS0+
aGFzTGlua2VkU2hhZGVyU3RhZ2UoZ2w6OlNoYWRlclR5cGU6OlZlcnRleCkpOworICAgIGNvbnN0
IGdsOjpTdGF0ZSAmZ2xTdGF0ZSAgICAgICAgID0gY29udGV4dFZrLT5nZXRTdGF0ZSgpOworICAg
IFJlbmRlcmVyVmsgKnJlbmRlcmVyICAgICAgICAgICAgID0gY29udGV4dFZrLT5nZXRSZW5kZXJl
cigpOworICAgIHZrOjpQaXBlbGluZUNhY2hlICpwaXBlbGluZUNhY2hlID0gbnVsbHB0cjsKKwor
ICAgIEFTU0VSVChnbEV4ZWN1dGFibGUuaGFzTGlua2VkU2hhZGVyU3RhZ2UoZ2w6OlNoYWRlclR5
cGU6OlZlcnRleCkpOwogCiAgICAgbVRyYW5zZm9ybU9wdGlvbnMuZW5hYmxlTGluZVJhc3RlckVt
dWxhdGlvbiA9IGNvbnRleHRWay0+aXNCcmVzZW5oYW1FbXVsYXRpb25FbmFibGVkKG1vZGUpOwog
ICAgIG1UcmFuc2Zvcm1PcHRpb25zLnN1cmZhY2VSb3RhdGlvbiAgICAgICAgICAgPSBUb1VuZGVy
bHlpbmcoZGVzYy5nZXRTdXJmYWNlUm90YXRpb24oKSk7CkBAIC04OTQsMTMgKzg5OSwxMyBAQCBh
bmdsZTo6UmVzdWx0IFByb2dyYW1FeGVjdXRhYmxlVms6OmdldEdyYXBoaWNzUGlwZWxpbmUoQ29u
dGV4dFZrICpjb250ZXh0VmssCiAKICAgICAvLyBUaGlzIG11c3QgYmUgY2FsbGVkIGFmdGVyIG1U
cmFuc2Zvcm1PcHRpb25zIGhhdmUgYmVlbiBzZXQuCiAgICAgUHJvZ3JhbUluZm8gJnByb2dyYW1J
bmZvICAgICAgICAgICAgICAgICAgPSBnZXRHcmFwaGljc1Byb2dyYW1JbmZvKG1UcmFuc2Zvcm1P
cHRpb25zKTsKLSAgICBjb25zdCBnbDo6U2hhZGVyQml0U2V0IGxpbmtlZFNoYWRlclN0YWdlcyA9
IGdsRXhlY3V0YWJsZS0+Z2V0TGlua2VkU2hhZGVyU3RhZ2VzKCk7Ci0gICAgY29uc3QgZ2w6OlNo
YWRlclR5cGUgbGFzdFByZUZyYWdtZW50U3RhZ2UgPSBnbDo6R2V0TGFzdFByZUZyYWdtZW50U3Rh
Z2UobGlua2VkU2hhZGVyU3RhZ2VzKTsKKyAgICBjb25zdCBnbDo6U2hhZGVyQml0U2V0IGxpbmtl
ZFNoYWRlclN0YWdlcyA9IGdsRXhlY3V0YWJsZS5nZXRMaW5rZWRTaGFkZXJTdGFnZXMoKTsKKyAg
ICBnbDo6U2hhZGVyVHlwZSBsYXN0UHJlRnJhZ21lbnRTdGFnZSAgICAgICA9IGdsOjpHZXRMYXN0
UHJlRnJhZ21lbnRTdGFnZShsaW5rZWRTaGFkZXJTdGFnZXMpOwogCiAgICAgY29uc3QgYm9vbCBp
c1RyYW5zZm9ybUZlZWRiYWNrUHJvZ3JhbSA9Ci0gICAgICAgICFnbEV4ZWN1dGFibGUtPmdldExp
bmtlZFRyYW5zZm9ybUZlZWRiYWNrVmFyeWluZ3MoKS5lbXB0eSgpOworICAgICAgICAhZ2xFeGVj
dXRhYmxlLmdldExpbmtlZFRyYW5zZm9ybUZlZWRiYWNrVmFyeWluZ3MoKS5lbXB0eSgpOwogCi0g
ICAgZm9yIChjb25zdCBnbDo6U2hhZGVyVHlwZSBzaGFkZXJUeXBlIDogbGlua2VkU2hhZGVyU3Rh
Z2VzKQorICAgIGZvciAoZ2w6OlNoYWRlclR5cGUgc2hhZGVyVHlwZSA6IGxpbmtlZFNoYWRlclN0
YWdlcykKICAgICB7CiAgICAgICAgIEFOR0xFX1RSWShpbml0R3JhcGhpY3NTaGFkZXJQcm9ncmFt
KAogICAgICAgICAgICAgY29udGV4dFZrLCBzaGFkZXJUeXBlLCBzaGFkZXJUeXBlID09IGxhc3RQ
cmVGcmFnbWVudFN0YWdlLCBpc1RyYW5zZm9ybUZlZWRiYWNrUHJvZ3JhbSwKQEAgLTkyNCwxOSAr
OTI5LDE4IEBAIGFuZ2xlOjpSZXN1bHQgUHJvZ3JhbUV4ZWN1dGFibGVWazo6Z2V0R3JhcGhpY3NQ
aXBlbGluZShDb250ZXh0VmsgKmNvbnRleHRWaywKICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGRlc2MuZ2V0RW11bGF0ZWREaXRoZXJDb250cm9sKCkpOwogCiAg
ICAgLy8gQ29tcGFyZSB0aGUgZnJhZ21lbnQgb3V0cHV0IGludGVyZmFjZSB3aXRoIHRoZSBmcmFt
ZWJ1ZmZlciBpbnRlcmZhY2UuCi0gICAgY29uc3QgZ2w6OlByb2dyYW1FeGVjdXRhYmxlICZleGVj
dXRhYmxlID0gKmdsU3RhdGUuZ2V0UHJvZ3JhbUV4ZWN1dGFibGUoKTsKLQotICAgIGNvbnN0IGds
OjpBdHRyaWJ1dGVzTWFzayAmYWN0aXZlQXR0cmliTG9jYXRpb25zID0gZXhlY3V0YWJsZS5nZXRO
b25CdWlsdGluQXR0cmliTG9jYXRpb25zTWFzaygpOworICAgIGNvbnN0IGdsOjpBdHRyaWJ1dGVz
TWFzayAmYWN0aXZlQXR0cmliTG9jYXRpb25zID0KKyAgICAgICAgZ2xFeGVjdXRhYmxlLmdldE5v
bkJ1aWx0aW5BdHRyaWJMb2NhdGlvbnNNYXNrKCk7CiAKICAgICAvLyBDYWxjdWxhdGUgbWlzc2lu
ZyBzaGFkZXIgb3V0cHV0cy4KLSAgICBjb25zdCBnbDo6RHJhd0J1ZmZlck1hc2sgJnNoYWRlck91
dE1hc2sgPSBleGVjdXRhYmxlLmdldEFjdGl2ZU91dHB1dFZhcmlhYmxlc01hc2soKTsKKyAgICBj
b25zdCBnbDo6RHJhd0J1ZmZlck1hc2sgJnNoYWRlck91dE1hc2sgPSBnbEV4ZWN1dGFibGUuZ2V0
QWN0aXZlT3V0cHV0VmFyaWFibGVzTWFzaygpOwogICAgIGdsOjpEcmF3QnVmZmVyTWFzayBmcmFt
ZWJ1ZmZlck1hc2sgICAgICA9IGdsU3RhdGUuZ2V0RHJhd0ZyYW1lYnVmZmVyKCktPmdldERyYXdC
dWZmZXJNYXNrKCk7CiAgICAgZ2w6OkRyYXdCdWZmZXJNYXNrIG1pc3NpbmdPdXRwdXRzTWFzayAg
ID0gfnNoYWRlck91dE1hc2sgJiBmcmFtZWJ1ZmZlck1hc2s7CiAKICAgICBBTkdMRV9UUlkocmVu
ZGVyZXItPmdldFBpcGVsaW5lQ2FjaGUoJnBpcGVsaW5lQ2FjaGUpKTsKICAgICByZXR1cm4gc2hh
ZGVyUHJvZ3JhbS0+Z2V0R3JhcGhpY3NQaXBlbGluZSgKICAgICAgICAgY29udGV4dFZrLCAmY29u
dGV4dFZrLT5nZXRSZW5kZXJQYXNzQ2FjaGUoKSwgKnBpcGVsaW5lQ2FjaGUsIGdldFBpcGVsaW5l
TGF5b3V0KCksIGRlc2MsCi0gICAgICAgIGFjdGl2ZUF0dHJpYkxvY2F0aW9ucywgZXhlY3V0YWJs
ZS5nZXRBdHRyaWJ1dGVzVHlwZU1hc2soKSwgbWlzc2luZ091dHB1dHNNYXNrLCBkZXNjUHRyT3V0
LAorICAgICAgICBhY3RpdmVBdHRyaWJMb2NhdGlvbnMsIGdsRXhlY3V0YWJsZS5nZXRBdHRyaWJ1
dGVzVHlwZU1hc2soKSwgbWlzc2luZ091dHB1dHNNYXNrLCBkZXNjUHRyT3V0LAogICAgICAgICBw
aXBlbGluZU91dCk7CiB9CiAKQEAgLTEwMjEsNyArMTAyNSw3IEBAIGFuZ2xlOjpSZXN1bHQgUHJv
Z3JhbUV4ZWN1dGFibGVWazo6Y3JlYXRlUGlwZWxpbmVMYXlvdXQoCiAgICAgLy8gRGVmYXVsdCB1
bmlmb3JtcyBhbmQgdHJhbnNmb3JtIGZlZWRiYWNrOgogICAgIHZrOjpEZXNjcmlwdG9yU2V0TGF5
b3V0RGVzYyB1bmlmb3Jtc0FuZFhmYlNldERlc2M7CiAgICAgbU51bURlZmF1bHRVbmlmb3JtRGVz
Y3JpcHRvcnMgPSAwOwotICAgIGZvciAoY29uc3QgZ2w6OlNoYWRlclR5cGUgc2hhZGVyVHlwZSA6
IGxpbmtlZFNoYWRlclN0YWdlcykKKyAgICBmb3IgKGdsOjpTaGFkZXJUeXBlIHNoYWRlclR5cGUg
OiBsaW5rZWRTaGFkZXJTdGFnZXMpCiAgICAgewogICAgICAgICBjb25zdCBzdGQ6OnN0cmluZyB1
bmlmb3JtQmxvY2tOYW1lID0ga0RlZmF1bHRVbmlmb3JtTmFtZXNbc2hhZGVyVHlwZV07CiAgICAg
ICAgIGNvbnN0IFNoYWRlckludGVyZmFjZVZhcmlhYmxlSW5mbyAmaW5mbyA9CkBAIC0xMDU2LDcg
KzEwNjAsNyBAQCBhbmdsZTo6UmVzdWx0IFByb2dyYW1FeGVjdXRhYmxlVms6OmNyZWF0ZVBpcGVs
aW5lTGF5b3V0KAogCiAgICAgLy8gQ291bnQgdGhlIG51bWJlciBvZiBhY3RpdmUgdW5pZm9ybSBi
dWZmZXIgZGVzY3JpcHRvcnMuCiAgICAgdWludDMyX3QgbnVtQWN0aXZlVW5pZm9ybUJ1ZmZlckRl
c2NyaXB0b3JzID0gMDsKLSAgICBmb3IgKGNvbnN0IGdsOjpTaGFkZXJUeXBlIHNoYWRlclR5cGUg
OiBsaW5rZWRTaGFkZXJTdGFnZXMpCisgICAgZm9yIChnbDo6U2hhZGVyVHlwZSBzaGFkZXJUeXBl
IDogbGlua2VkU2hhZGVyU3RhZ2VzKQogICAgIHsKICAgICAgICAgY29uc3Qgc3RkOjp2ZWN0b3I8
Z2w6OkludGVyZmFjZUJsb2NrPiAmYmxvY2tzID0gZ2xFeGVjdXRhYmxlLmdldFVuaWZvcm1CbG9j
a3MoKTsKICAgICAgICAgZm9yICh1aW50MzJfdCBidWZmZXJJbmRleCA9IDA7IGJ1ZmZlckluZGV4
IDwgYmxvY2tzLnNpemUoKTspCkBAIC0xMDg4LDcgKzEwOTIsNyBAQCBhbmdsZTo6UmVzdWx0IFBy
b2dyYW1FeGVjdXRhYmxlVms6OmNyZWF0ZVBpcGVsaW5lTGF5b3V0KAogICAgICAgICBtVW5pZm9y
bUJ1ZmZlckRlc2NyaXB0b3JUeXBlID0gVktfREVTQ1JJUFRPUl9UWVBFX1VOSUZPUk1fQlVGRkVS
OwogICAgIH0KIAotICAgIGZvciAoY29uc3QgZ2w6OlNoYWRlclR5cGUgc2hhZGVyVHlwZSA6IGxp
bmtlZFNoYWRlclN0YWdlcykKKyAgICBmb3IgKGdsOjpTaGFkZXJUeXBlIHNoYWRlclR5cGUgOiBs
aW5rZWRTaGFkZXJTdGFnZXMpCiAgICAgewogICAgICAgICBhZGRJbnRlcmZhY2VCbG9ja0Rlc2Ny
aXB0b3JTZXREZXNjKGdsRXhlY3V0YWJsZS5nZXRVbmlmb3JtQmxvY2tzKCksIHNoYWRlclR5cGUs
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbVVuaWZvcm1CdWZm
ZXJEZXNjcmlwdG9yVHlwZSwgJnJlc291cmNlc1NldERlc2MpOwpAQCAtMTA5OCw3ICsxMTAyLDcg
QEAgYW5nbGU6OlJlc3VsdCBQcm9ncmFtRXhlY3V0YWJsZVZrOjpjcmVhdGVQaXBlbGluZUxheW91
dCgKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZyZXNv
dXJjZXNTZXREZXNjKTsKICAgICB9CiAKLSAgICBmb3IgKGNvbnN0IGdsOjpTaGFkZXJUeXBlIHNo
YWRlclR5cGUgOiBsaW5rZWRTaGFkZXJTdGFnZXMpCisgICAgZm9yIChnbDo6U2hhZGVyVHlwZSBz
aGFkZXJUeXBlIDogbGlua2VkU2hhZGVyU3RhZ2VzKQogICAgIHsKICAgICAgICAgYWRkSW1hZ2VE
ZXNjcmlwdG9yU2V0RGVzYyhnbEV4ZWN1dGFibGUsICZyZXNvdXJjZXNTZXREZXNjKTsKICAgICAg
ICAgYWRkSW5wdXRBdHRhY2htZW50RGVzY3JpcHRvclNldERlc2MoZ2xFeGVjdXRhYmxlLCBzaGFk
ZXJUeXBlLCAmcmVzb3VyY2VzU2V0RGVzYyk7CkBAIC0xMTk5LDggKzEyMDMsMTEgQEAgdm9pZCBQ
cm9ncmFtRXhlY3V0YWJsZVZrOjpyZXNvbHZlUHJlY2lzaW9uTWlzbWF0Y2goY29uc3QgZ2w6OlBy
b2dyYW1NZXJnZWRWYXJ5aW4KIH0KIAogdm9pZCBQcm9ncmFtRXhlY3V0YWJsZVZrOjp1cGRhdGVE
ZWZhdWx0VW5pZm9ybXNEZXNjcmlwdG9yU2V0KAotICAgIENvbnRleHRWayAqY29udGV4dFZrLAot
ICAgIGNvbnN0IGdsOjpTaGFkZXJUeXBlIHNoYWRlclR5cGUsCisgICAgdms6OkNvbnRleHQgKmNv
bnRleHQsCisgICAgVXBkYXRlRGVzY3JpcHRvclNldHNCdWlsZGVyICp1cGRhdGVCdWlsZGVyLAor
ICAgIHZrOjpCdWZmZXJIZWxwZXIgKmVtcHR5QnVmZmVyLAorICAgIHZrOjpSZXNvdXJjZVVzZUxp
c3QgKnJlc291cmNlVXNlTGlzdCwKKyAgICBnbDo6U2hhZGVyVHlwZSBzaGFkZXJUeXBlLAogICAg
IGNvbnN0IERlZmF1bHRVbmlmb3JtQmxvY2sgJmRlZmF1bHRVbmlmb3JtQmxvY2ssCiAgICAgdms6
OkJ1ZmZlckhlbHBlciAqZGVmYXVsdFVuaWZvcm1CdWZmZXIpCiB7CkBAIC0xMjEyLDE1ICsxMjE5
LDE1IEBAIHZvaWQgUHJvZ3JhbUV4ZWN1dGFibGVWazo6dXBkYXRlRGVmYXVsdFVuaWZvcm1zRGVz
Y3JpcHRvclNldCgKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIFZrV3JpdGVEZXNjcmlw
dG9yU2V0ICZ3cml0ZUluZm8gICAgPSBjb250ZXh0VmstPmFsbG9jV3JpdGVEZXNjcmlwdG9yU2V0
KCk7Ci0gICAgVmtEZXNjcmlwdG9yQnVmZmVySW5mbyAmYnVmZmVySW5mbyA9IGNvbnRleHRWay0+
YWxsb2NEZXNjcmlwdG9yQnVmZmVySW5mbygpOworICAgIFZrV3JpdGVEZXNjcmlwdG9yU2V0ICZ3
cml0ZUluZm8gICAgPSB1cGRhdGVCdWlsZGVyLT5hbGxvY1dyaXRlRGVzY3JpcHRvclNldCgpOwor
ICAgIFZrRGVzY3JpcHRvckJ1ZmZlckluZm8gJmJ1ZmZlckluZm8gPSB1cGRhdGVCdWlsZGVyLT5h
bGxvY0Rlc2NyaXB0b3JCdWZmZXJJbmZvKCk7CiAKLSAgICBWa0RldmljZVNpemUgc2l6ZSAgICAg
ICAgICAgICAgPSBnZXREZWZhdWx0VW5pZm9ybUFsaWduZWRTaXplKGNvbnRleHRWaywgc2hhZGVy
VHlwZSk7CisgICAgVmtEZXZpY2VTaXplIHNpemUgICAgICAgICAgICAgID0gZ2V0RGVmYXVsdFVu
aWZvcm1BbGlnbmVkU2l6ZShjb250ZXh0LCBzaGFkZXJUeXBlKTsKICAgICB2azo6QnVmZmVySGVs
cGVyICpidWZmZXJIZWxwZXIgPSBkZWZhdWx0VW5pZm9ybUJ1ZmZlcjsKICAgICBpZiAoZGVmYXVs
dFVuaWZvcm1CbG9jay51bmlmb3JtRGF0YS5lbXB0eSgpKQogICAgIHsKLSAgICAgICAgYnVmZmVy
SGVscGVyID0gJmNvbnRleHRWay0+Z2V0RW1wdHlCdWZmZXIoKTsKLSAgICAgICAgYnVmZmVySGVs
cGVyLT5yZXRhaW5SZWFkT25seSgmY29udGV4dFZrLT5nZXRSZXNvdXJjZVVzZUxpc3QoKSk7Cisg
ICAgICAgIGJ1ZmZlckhlbHBlciA9IGVtcHR5QnVmZmVyOworICAgICAgICBidWZmZXJIZWxwZXIt
PnJldGFpblJlYWRPbmx5KHJlc291cmNlVXNlTGlzdCk7CiAgICAgICAgIHNpemUgPSBidWZmZXJI
ZWxwZXItPmdldFNpemUoKTsKICAgICB9CiAKQEAgLTEyMzAsMzkgKzEyMzcsMzggQEAgdm9pZCBQ
cm9ncmFtRXhlY3V0YWJsZVZrOjp1cGRhdGVEZWZhdWx0VW5pZm9ybXNEZXNjcmlwdG9yU2V0KAog
fQogCiAvLyBMYXppbHkgYWxsb2NhdGUgdGhlIGRlc2NyaXB0b3Igc2V0LiBXZSBtYXkgbm90IG5l
ZWQgb25lIGlmIGFsbCBvZiB0aGUgYnVmZmVycyBhcmUgaW5hY3RpdmUuCi1hbmdsZTo6UmVzdWx0
IFByb2dyYW1FeGVjdXRhYmxlVms6OmdldE9yQWxsb2NhdGVTaGFkZXJSZXNvdXJjZXNEZXNjcmlw
dG9yU2V0KAotICAgIENvbnRleHRWayAqY29udGV4dFZrLAotICAgIGNvbnN0IHZrOjpEZXNjcmlw
dG9yU2V0RGVzYyAqc2hhZGVyQnVmZmVyc0Rlc2MsCi0gICAgVmtEZXNjcmlwdG9yU2V0ICpkZXNj
cmlwdG9yU2V0T3V0KQorYW5nbGU6OlJlc3VsdCBQcm9ncmFtRXhlY3V0YWJsZVZrOjphbGxvY2F0
ZVNoYWRlclJlc291cmNlc0Rlc2NyaXB0b3JTZXQoCisgICAgdms6OkNvbnRleHQgKmNvbnRleHQs
CisgICAgdms6OlJlc291cmNlVXNlTGlzdCAqcmVzb3VyY2VVc2VMaXN0LAorICAgIGNvbnN0IHZr
OjpEZXNjcmlwdG9yU2V0RGVzYyAqc2hhZGVyQnVmZmVyc0Rlc2MpCiB7Ci0gICAgaWYgKG1EZXNj
cmlwdG9yU2V0c1tEZXNjcmlwdG9yU2V0SW5kZXg6OlNoYWRlclJlc291cmNlXSA9PSBWS19OVUxM
X0hBTkRMRSkKLSAgICB7Ci0gICAgICAgIGJvb2wgbmV3UG9vbEFsbG9jYXRlZCA9IGZhbHNlOwot
ICAgICAgICBBTkdMRV9UUlkoYWxsb2NhdGVEZXNjcmlwdG9yU2V0QW5kR2V0SW5mbyhjb250ZXh0
VmssIERlc2NyaXB0b3JTZXRJbmRleDo6U2hhZGVyUmVzb3VyY2UsCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZuZXdQb29sQWxsb2NhdGVkKSk7Cisg
ICAgYm9vbCBuZXdQb29sQWxsb2NhdGVkID0gZmFsc2U7CisgICAgQU5HTEVfVFJZKGFsbG9jYXRl
RGVzY3JpcHRvclNldEFuZEdldEluZm8oCisgICAgICAgIGNvbnRleHQsIHJlc291cmNlVXNlTGlz
dCwgRGVzY3JpcHRvclNldEluZGV4OjpTaGFkZXJSZXNvdXJjZSwgJm5ld1Bvb2xBbGxvY2F0ZWQp
KTsKIAotICAgICAgICBpZiAoc2hhZGVyQnVmZmVyc0Rlc2MpCisgICAgaWYgKHNoYWRlckJ1ZmZl
cnNEZXNjKQorICAgIHsKKyAgICAgICAgLy8gQ2xlYXIgZGVzY3JpcHRvciBzZXQgY2FjaGUuIEl0
IG1heSBubyBsb25nZXIgYmUgdmFsaWQuCisgICAgICAgIGlmIChuZXdQb29sQWxsb2NhdGVkKQog
ICAgICAgICB7Ci0gICAgICAgICAgICAvLyBDbGVhciBkZXNjcmlwdG9yIHNldCBjYWNoZS4gSXQg
bWF5IG5vIGxvbmdlciBiZSB2YWxpZC4KLSAgICAgICAgICAgIGlmIChuZXdQb29sQWxsb2NhdGVk
KQotICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIG1TaGFkZXJCdWZmZXJEZXNjcmlwdG9y
c0NhY2hlLmRlc3Ryb3koY29udGV4dFZrLT5nZXRSZW5kZXJlcigpLAotICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVnVsa2FuQ2FjaGVUeXBlOjpT
aGFkZXJCdWZmZXJzRGVzY3JpcHRvcnMpOwotICAgICAgICAgICAgfQotCi0gICAgICAgICAgICBt
U2hhZGVyQnVmZmVyRGVzY3JpcHRvcnNDYWNoZS5pbnNlcnQoCi0gICAgICAgICAgICAgICAgKnNo
YWRlckJ1ZmZlcnNEZXNjLCBtRGVzY3JpcHRvclNldHNbRGVzY3JpcHRvclNldEluZGV4OjpTaGFk
ZXJSZXNvdXJjZV0pOworICAgICAgICAgICAgbVNoYWRlckJ1ZmZlckRlc2NyaXB0b3JzQ2FjaGUu
ZGVzdHJveShjb250ZXh0LT5nZXRSZW5kZXJlcigpLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBWdWxrYW5DYWNoZVR5cGU6OlNoYWRlckJ1ZmZlcnNE
ZXNjcmlwdG9ycyk7CiAgICAgICAgIH0KKworICAgICAgICBtU2hhZGVyQnVmZmVyRGVzY3JpcHRv
cnNDYWNoZS5pbnNlcnQoKnNoYWRlckJ1ZmZlcnNEZXNjLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgbURlc2NyaXB0b3JTZXRzW0Rlc2NyaXB0b3JTZXRJbmRl
eDo6U2hhZGVyUmVzb3VyY2VdKTsKICAgICB9Ci0gICAgKmRlc2NyaXB0b3JTZXRPdXQgPSBtRGVz
Y3JpcHRvclNldHNbRGVzY3JpcHRvclNldEluZGV4OjpTaGFkZXJSZXNvdXJjZV07Ci0gICAgQVNT
RVJUKCpkZXNjcmlwdG9yU2V0T3V0ICE9IFZLX05VTExfSEFORExFKTsKICAgICByZXR1cm4gYW5n
bGU6OlJlc3VsdDo6Q29udGludWU7CiB9CiAKIGFuZ2xlOjpSZXN1bHQgUHJvZ3JhbUV4ZWN1dGFi
bGVWazo6dXBkYXRlQnVmZmVyc0Rlc2NyaXB0b3JTZXQoCi0gICAgQ29udGV4dFZrICpjb250ZXh0
VmssCi0gICAgY29uc3QgZ2w6OlNoYWRlclR5cGUgc2hhZGVyVHlwZSwKKyAgICB2azo6Q29udGV4
dCAqY29udGV4dCwKKyAgICBVcGRhdGVEZXNjcmlwdG9yU2V0c0J1aWxkZXIgKnVwZGF0ZUJ1aWxk
ZXIsCisgICAgdms6OkJ1ZmZlckhlbHBlciAqZW1wdHlCdWZmZXIsCisgICAgdms6OlJlc291cmNl
VXNlTGlzdCAqcmVzb3VyY2VVc2VMaXN0LAorICAgIGdsOjpTaGFkZXJUeXBlIHNoYWRlclR5cGUs
CiAgICAgY29uc3Qgdms6OkRlc2NyaXB0b3JTZXREZXNjICZzaGFkZXJCdWZmZXJzRGVzYywKKyAg
ICBjb25zdCBnbDo6QnVmZmVyVmVjdG9yICZidWZmZXJzLAogICAgIGNvbnN0IHN0ZDo6dmVjdG9y
PGdsOjpJbnRlcmZhY2VCbG9jaz4gJmJsb2NrcywKICAgICBWa0Rlc2NyaXB0b3JUeXBlIGRlc2Ny
aXB0b3JUeXBlLAogICAgIFZrRGV2aWNlU2l6ZSBtYXhCb3VuZEJ1ZmZlclJhbmdlLApAQCAtMTI3
NiwyNyArMTI4MiwyMCBAQCBhbmdsZTo6UmVzdWx0IFByb2dyYW1FeGVjdXRhYmxlVms6OnVwZGF0
ZUJ1ZmZlcnNEZXNjcmlwdG9yU2V0KAogCiAgICAgQVNTRVJUKGRlc2NyaXB0b3JUeXBlID09IG1V
bmlmb3JtQnVmZmVyRGVzY3JpcHRvclR5cGUgfHwKICAgICAgICAgICAgZGVzY3JpcHRvclR5cGUg
PT0ga1N0b3JhZ2VCdWZmZXJEZXNjcmlwdG9yVHlwZSk7Ci0gICAgY29uc3QgYm9vbCBpc1N0b3Jh
Z2VCdWZmZXIgPSBkZXNjcmlwdG9yVHlwZSA9PSBrU3RvcmFnZUJ1ZmZlckRlc2NyaXB0b3JUeXBl
OworCisgICAgVmtEZXNjcmlwdG9yU2V0IGRlc2NyaXB0b3JTZXQgPSBtRGVzY3JpcHRvclNldHNb
RGVzY3JpcHRvclNldEluZGV4OjpTaGFkZXJSZXNvdXJjZV07CisgICAgQVNTRVJUKGRlc2NyaXB0
b3JTZXQgIT0gVktfTlVMTF9IQU5ETEUpOwogCiAgICAgLy8gV3JpdGUgdW5pZm9ybSBvciBzdG9y
YWdlIGJ1ZmZlcnMuCi0gICAgY29uc3QgZ2w6OlN0YXRlICZnbFN0YXRlID0gY29udGV4dFZrLT5n
ZXRTdGF0ZSgpOwotICAgIGZvciAodWludDMyX3QgYnVmZmVySW5kZXggPSAwOyBidWZmZXJJbmRl
eCA8IGJsb2Nrcy5zaXplKCk7ICsrYnVmZmVySW5kZXgpCisgICAgZm9yIChjb25zdCBnbDo6SW50
ZXJmYWNlQmxvY2sgJmJsb2NrIDogYmxvY2tzKQogICAgIHsKLSAgICAgICAgY29uc3QgZ2w6Oklu
dGVyZmFjZUJsb2NrICZibG9jayA9IGJsb2Nrc1tidWZmZXJJbmRleF07Ci0gICAgICAgIGNvbnN0
IGdsOjpPZmZzZXRCaW5kaW5nUG9pbnRlcjxnbDo6QnVmZmVyPiAmYnVmZmVyQmluZGluZyA9Ci0g
ICAgICAgICAgICBpc1N0b3JhZ2VCdWZmZXIgPyBnbFN0YXRlLmdldEluZGV4ZWRTaGFkZXJTdG9y
YWdlQnVmZmVyKGJsb2NrLmJpbmRpbmcpCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBn
bFN0YXRlLmdldEluZGV4ZWRVbmlmb3JtQnVmZmVyKGJsb2NrLmJpbmRpbmcpOworICAgICAgICBj
b25zdCBnbDo6T2Zmc2V0QmluZGluZ1BvaW50ZXI8Z2w6OkJ1ZmZlcj4gJmJ1ZmZlckJpbmRpbmcg
PSBidWZmZXJzW2Jsb2NrLmJpbmRpbmddOwogCiAgICAgICAgIGlmICghYmxvY2suaXNBY3RpdmUo
c2hhZGVyVHlwZSkpCiAgICAgICAgIHsKICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICB9
CiAKLSAgICAgICAgaWYgKGJ1ZmZlckJpbmRpbmcuZ2V0KCkgPT0gbnVsbHB0cikKLSAgICAgICAg
ewotICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAgIH0KLQogICAgICAgICBjb25zdCBTaGFk
ZXJJbnRlcmZhY2VWYXJpYWJsZUluZm8gJmluZm8gPQogICAgICAgICAgICAgbVZhcmlhYmxlSW5m
b01hcC5nZXQoc2hhZGVyVHlwZSwgYmxvY2subWFwcGVkTmFtZSk7CiAgICAgICAgIGlmIChpbmZv
LmlzRHVwbGljYXRlKQpAQCAtMTMwNyw2ICsxMzA2LDI2IEBAIGFuZ2xlOjpSZXN1bHQgUHJvZ3Jh
bUV4ZWN1dGFibGVWazo6dXBkYXRlQnVmZmVyc0Rlc2NyaXB0b3JTZXQoCiAgICAgICAgIHVpbnQz
Ml90IGJpbmRpbmcgICAgICA9IGluZm8uYmluZGluZzsKICAgICAgICAgdWludDMyX3QgYXJyYXlF
bGVtZW50ID0gYmxvY2suaXNBcnJheSA/IGJsb2NrLmFycmF5RWxlbWVudCA6IDA7CiAKKyAgICAg
ICAgaWYgKGJ1ZmZlckJpbmRpbmcuZ2V0KCkgPT0gbnVsbHB0cikKKyAgICAgICAgeworICAgICAg
ICAgICAgaWYgKCFjYWNoZUhpdCkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBWa0Rl
c2NyaXB0b3JCdWZmZXJJbmZvICZidWZmZXJJbmZvID0gdXBkYXRlQnVpbGRlci0+YWxsb2NEZXNj
cmlwdG9yQnVmZmVySW5mbygpOworICAgICAgICAgICAgICAgIFZrV3JpdGVEZXNjcmlwdG9yU2V0
ICZ3cml0ZUluZm8gICAgPSB1cGRhdGVCdWlsZGVyLT5hbGxvY1dyaXRlRGVzY3JpcHRvclNldCgp
OworCisgICAgICAgICAgICAgICAgZW1wdHlCdWZmZXItPnJldGFpblJlYWRPbmx5KHJlc291cmNl
VXNlTGlzdCk7CisgICAgICAgICAgICAgICAgV3JpdGVCdWZmZXJEZXNjcmlwdG9yU2V0QmluZGlu
ZygqZW1wdHlCdWZmZXIsIDAsIGVtcHR5QnVmZmVyLT5nZXRTaXplKCksCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXNjcmlwdG9yU2V0LCBkZXNjcmlw
dG9yVHlwZSwgYmluZGluZywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGFycmF5RWxlbWVudCwgMCwgJmJ1ZmZlckluZm8sICZ3cml0ZUluZm8pOworICAg
ICAgICAgICAgfQorICAgICAgICAgICAgaWYgKElzRHluYW1pY0Rlc2NyaXB0b3IoZGVzY3JpcHRv
clR5cGUpKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIG1EeW5hbWljU2hhZGVyQnVm
ZmVyRGVzY3JpcHRvck9mZnNldHMucHVzaF9iYWNrKAorICAgICAgICAgICAgICAgICAgICBzdGF0
aWNfY2FzdDx1aW50MzJfdD4oZW1wdHlCdWZmZXItPmdldE9mZnNldCgpKSk7CisgICAgICAgICAg
ICB9CisgICAgICAgICAgICBjb250aW51ZTsKKyAgICAgICAgfQorCiAgICAgICAgIC8vIExpbWl0
IGJvdW5kIGJ1ZmZlciBzaXplIHRvIG1heGltdW0gcmVzb3VyY2UgYmluZGluZyBzaXplLgogICAg
ICAgICBHTHNpemVpcHRyIGJvdW5kQnVmZmVyU2l6ZSA9IGdsOjpHZXRCb3VuZEJ1ZmZlckF2YWls
YWJsZVNpemUoYnVmZmVyQmluZGluZyk7CiAgICAgICAgIFZrRGV2aWNlU2l6ZSBzaXplICAgICAg
ICAgID0gc3RkOjptaW48VmtEZXZpY2VTaXplPihib3VuZEJ1ZmZlclNpemUsIG1heEJvdW5kQnVm
ZmVyUmFuZ2UpOwpAQCAtMTMyMSwxMiArMTM0MCw5IEBAIGFuZ2xlOjpSZXN1bHQgUHJvZ3JhbUV4
ZWN1dGFibGVWazo6dXBkYXRlQnVmZmVyc0Rlc2NyaXB0b3JTZXQoCiAKICAgICAgICAgaWYgKCFj
YWNoZUhpdCkKICAgICAgICAgewotICAgICAgICAgICAgVmtEZXNjcmlwdG9yQnVmZmVySW5mbyAm
YnVmZmVySW5mbyA9IGNvbnRleHRWay0+YWxsb2NEZXNjcmlwdG9yQnVmZmVySW5mbygpOwotICAg
ICAgICAgICAgVmtXcml0ZURlc2NyaXB0b3JTZXQgJndyaXRlSW5mbyAgICA9IGNvbnRleHRWay0+
YWxsb2NXcml0ZURlc2NyaXB0b3JTZXQoKTsKKyAgICAgICAgICAgIFZrRGVzY3JpcHRvckJ1ZmZl
ckluZm8gJmJ1ZmZlckluZm8gPSB1cGRhdGVCdWlsZGVyLT5hbGxvY0Rlc2NyaXB0b3JCdWZmZXJJ
bmZvKCk7CisgICAgICAgICAgICBWa1dyaXRlRGVzY3JpcHRvclNldCAmd3JpdGVJbmZvICAgID0g
dXBkYXRlQnVpbGRlci0+YWxsb2NXcml0ZURlc2NyaXB0b3JTZXQoKTsKIAotICAgICAgICAgICAg
VmtEZXNjcmlwdG9yU2V0IGRlc2NyaXB0b3JTZXQ7Ci0gICAgICAgICAgICBBTkdMRV9UUlkoZ2V0
T3JBbGxvY2F0ZVNoYWRlclJlc291cmNlc0Rlc2NyaXB0b3JTZXQoY29udGV4dFZrLCAmc2hhZGVy
QnVmZmVyc0Rlc2MsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgJmRlc2NyaXB0b3JTZXQpKTsKICAgICAgICAgICAgIFZrRGV2
aWNlU2l6ZSBvZmZzZXQgPQogICAgICAgICAgICAgICAgIElzRHluYW1pY0Rlc2NyaXB0b3IoZGVz
Y3JpcHRvclR5cGUpID8gMCA6IGJ1ZmZlckJpbmRpbmcuZ2V0T2Zmc2V0KCk7CiAgICAgICAgICAg
ICBXcml0ZUJ1ZmZlckRlc2NyaXB0b3JTZXRCaW5kaW5nKGJ1ZmZlckhlbHBlciwgb2Zmc2V0LCBz
aXplLCBkZXNjcmlwdG9yU2V0LApAQCAtMTM0NCwxMyArMTM2MCwxNiBAQCBhbmdsZTo6UmVzdWx0
IFByb2dyYW1FeGVjdXRhYmxlVms6OnVwZGF0ZUJ1ZmZlcnNEZXNjcmlwdG9yU2V0KAogfQogCiBh
bmdsZTo6UmVzdWx0IFByb2dyYW1FeGVjdXRhYmxlVms6OnVwZGF0ZUF0b21pY0NvdW50ZXJCdWZm
ZXJzRGVzY3JpcHRvclNldCgKLSAgICBDb250ZXh0VmsgKmNvbnRleHRWaywKKyAgICB2azo6Q29u
dGV4dCAqY29udGV4dCwKKyAgICBVcGRhdGVEZXNjcmlwdG9yU2V0c0J1aWxkZXIgKnVwZGF0ZUJ1
aWxkZXIsCisgICAgdms6OkJ1ZmZlckhlbHBlciAqZW1wdHlCdWZmZXIsCisgICAgdms6OlJlc291
cmNlVXNlTGlzdCAqcmVzb3VyY2VVc2VMaXN0LAorICAgIGNvbnN0IGdsOjpCdWZmZXJWZWN0b3Ig
JmF0b21pY0NvdW50ZXJCdWZmZXJCaW5kaW5ncywKICAgICBjb25zdCBnbDo6UHJvZ3JhbUV4ZWN1
dGFibGUgJmV4ZWN1dGFibGUsCi0gICAgY29uc3QgZ2w6OlNoYWRlclR5cGUgc2hhZGVyVHlwZSwK
KyAgICBnbDo6U2hhZGVyVHlwZSBzaGFkZXJUeXBlLAogICAgIGNvbnN0IHZrOjpEZXNjcmlwdG9y
U2V0RGVzYyAmc2hhZGVyQnVmZmVyc0Rlc2MsCiAgICAgYm9vbCBjYWNoZUhpdCkKIHsKLSAgICBj
b25zdCBnbDo6U3RhdGUgJmdsU3RhdGUgPSBjb250ZXh0VmstPmdldFN0YXRlKCk7CiAgICAgY29u
c3Qgc3RkOjp2ZWN0b3I8Z2w6OkF0b21pY0NvdW50ZXJCdWZmZXI+ICZhdG9taWNDb3VudGVyQnVm
ZmVycyA9CiAgICAgICAgIGV4ZWN1dGFibGUuZ2V0QXRvbWljQ291bnRlckJ1ZmZlcnMoKTsKIApA
QCAtMTM3NCwyMSArMTM5MywxOCBAQCBhbmdsZTo6UmVzdWx0IFByb2dyYW1FeGVjdXRhYmxlVms6
OnVwZGF0ZUF0b21pY0NvdW50ZXJCdWZmZXJzRGVzY3JpcHRvclNldCgKIAogICAgIGdsOjpBdG9t
aWNDb3VudGVyQnVmZmVyTWFzayB3cml0dGVuQmluZGluZ3M7CiAKLSAgICBSZW5kZXJlclZrICpy
ZW5kZXJlclZrID0gY29udGV4dFZrLT5nZXRSZW5kZXJlcigpOworICAgIFJlbmRlcmVyVmsgKnJl
bmRlcmVyVmsgPSBjb250ZXh0LT5nZXRSZW5kZXJlcigpOwogICAgIGNvbnN0IFZrRGV2aWNlU2l6
ZSByZXF1aXJlZE9mZnNldEFsaWdubWVudCA9CiAgICAgICAgIHJlbmRlcmVyVmstPmdldFBoeXNp
Y2FsRGV2aWNlUHJvcGVydGllcygpLmxpbWl0cy5taW5TdG9yYWdlQnVmZmVyT2Zmc2V0QWxpZ25t
ZW50OwogCi0gICAgVmtEZXNjcmlwdG9yU2V0IGRlc2NyaXB0b3JTZXQ7Ci0gICAgQU5HTEVfVFJZ
KAotICAgICAgICBnZXRPckFsbG9jYXRlU2hhZGVyUmVzb3VyY2VzRGVzY3JpcHRvclNldChjb250
ZXh0VmssICZzaGFkZXJCdWZmZXJzRGVzYywgJmRlc2NyaXB0b3JTZXQpKTsKKyAgICBWa0Rlc2Ny
aXB0b3JTZXQgZGVzY3JpcHRvclNldCA9IG1EZXNjcmlwdG9yU2V0c1tEZXNjcmlwdG9yU2V0SW5k
ZXg6OlNoYWRlclJlc291cmNlXTsKIAogICAgIC8vIFdyaXRlIGF0b21pYyBjb3VudGVyIGJ1ZmZl
cnMuCi0gICAgZm9yICh1aW50MzJfdCBidWZmZXJJbmRleCA9IDA7IGJ1ZmZlckluZGV4IDwgYXRv
bWljQ291bnRlckJ1ZmZlcnMuc2l6ZSgpOyArK2J1ZmZlckluZGV4KQorICAgIGZvciAoY29uc3Qg
Z2w6OkF0b21pY0NvdW50ZXJCdWZmZXIgJmF0b21pY0NvdW50ZXJCdWZmZXIgOiBhdG9taWNDb3Vu
dGVyQnVmZmVycykKICAgICB7Ci0gICAgICAgIGNvbnN0IGdsOjpBdG9taWNDb3VudGVyQnVmZmVy
ICZhdG9taWNDb3VudGVyQnVmZmVyID0gYXRvbWljQ291bnRlckJ1ZmZlcnNbYnVmZmVySW5kZXhd
OwotICAgICAgICB1aW50MzJfdCBiaW5kaW5nICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICA9IGF0b21pY0NvdW50ZXJCdWZmZXIuYmluZGluZzsKKyAgICAgICAgdWludDMyX3QgYmlu
ZGluZyA9IGF0b21pY0NvdW50ZXJCdWZmZXIuYmluZGluZzsKICAgICAgICAgY29uc3QgZ2w6Ok9m
ZnNldEJpbmRpbmdQb2ludGVyPGdsOjpCdWZmZXI+ICZidWZmZXJCaW5kaW5nID0KLSAgICAgICAg
ICAgIGdsU3RhdGUuZ2V0SW5kZXhlZEF0b21pY0NvdW50ZXJCdWZmZXIoYmluZGluZyk7CisgICAg
ICAgICAgICBhdG9taWNDb3VudGVyQnVmZmVyQmluZGluZ3NbYmluZGluZ107CiAKICAgICAgICAg
aWYgKGJ1ZmZlckJpbmRpbmcuZ2V0KCkgPT0gbnVsbHB0cikKICAgICAgICAgewpAQCAtMTM5OSw4
ICsxNDE1LDggQEAgYW5nbGU6OlJlc3VsdCBQcm9ncmFtRXhlY3V0YWJsZVZrOjp1cGRhdGVBdG9t
aWNDb3VudGVyQnVmZmVyc0Rlc2NyaXB0b3JTZXQoCiAgICAgICAgICAgICAgICAgICAgICAgInVw
ZGF0ZUF0b21pY0NvdW50ZXJCdWZmZXJzRGVzY3JpcHRvclNldCBuZWVkcyBhbiB1cGRhdGUgdG8g
aGFuZGxlIGR5bmFtaWMgIgogICAgICAgICAgICAgICAgICAgICAgICJkZXNjcmlwdG9ycyIpOwog
Ci0gICAgICAgIFZrRGVzY3JpcHRvckJ1ZmZlckluZm8gJmJ1ZmZlckluZm8gPSBjb250ZXh0Vmst
PmFsbG9jRGVzY3JpcHRvckJ1ZmZlckluZm8oKTsKLSAgICAgICAgVmtXcml0ZURlc2NyaXB0b3JT
ZXQgJndyaXRlSW5mbyAgICA9IGNvbnRleHRWay0+YWxsb2NXcml0ZURlc2NyaXB0b3JTZXQoKTsK
KyAgICAgICAgVmtEZXNjcmlwdG9yQnVmZmVySW5mbyAmYnVmZmVySW5mbyA9IHVwZGF0ZUJ1aWxk
ZXItPmFsbG9jRGVzY3JpcHRvckJ1ZmZlckluZm8oKTsKKyAgICAgICAgVmtXcml0ZURlc2NyaXB0
b3JTZXQgJndyaXRlSW5mbyAgICA9IHVwZGF0ZUJ1aWxkZXItPmFsbG9jV3JpdGVEZXNjcmlwdG9y
U2V0KCk7CiAKICAgICAgICAgQnVmZmVyVmsgKmJ1ZmZlclZrICAgICAgICAgICAgID0gdms6Okdl
dEltcGwoYnVmZmVyQmluZGluZy5nZXQoKSk7CiAgICAgICAgIHZrOjpCdWZmZXJIZWxwZXIgJmJ1
ZmZlckhlbHBlciA9IGJ1ZmZlclZrLT5nZXRCdWZmZXIoKTsKQEAgLTE0MTUsMTUgKzE0MzEsMTQg
QEAgYW5nbGU6OlJlc3VsdCBQcm9ncmFtRXhlY3V0YWJsZVZrOjp1cGRhdGVBdG9taWNDb3VudGVy
QnVmZmVyc0Rlc2NyaXB0b3JTZXQoCiAgICAgfQogCiAgICAgLy8gQmluZCB0aGUgZW1wdHkgYnVm
ZmVyIHRvIGV2ZXJ5IGFycmF5IHNsb3QgdGhhdCdzIHVudXNlZC4KLSAgICB2azo6QnVmZmVySGVs
cGVyICZlbXB0eUJ1ZmZlciA9IGNvbnRleHRWay0+Z2V0RW1wdHlCdWZmZXIoKTsKLSAgICBlbXB0
eUJ1ZmZlci5yZXRhaW5SZWFkT25seSgmY29udGV4dFZrLT5nZXRSZXNvdXJjZVVzZUxpc3QoKSk7
CisgICAgZW1wdHlCdWZmZXItPnJldGFpblJlYWRPbmx5KHJlc291cmNlVXNlTGlzdCk7CiAgICAg
c2l6ZV90IGNvdW50ICAgICAgICAgICAgICAgICAgICAgICAgPSAofndyaXR0ZW5CaW5kaW5ncyku
Y291bnQoKTsKLSAgICBWa0Rlc2NyaXB0b3JCdWZmZXJJbmZvICpidWZmZXJJbmZvcyA9IGNvbnRl
eHRWay0+YWxsb2NEZXNjcmlwdG9yQnVmZmVySW5mb3MoY291bnQpOwotICAgIFZrV3JpdGVEZXNj
cmlwdG9yU2V0ICp3cml0ZUluZm9zICAgID0gY29udGV4dFZrLT5hbGxvY1dyaXRlRGVzY3JpcHRv
clNldHMoY291bnQpOworICAgIFZrRGVzY3JpcHRvckJ1ZmZlckluZm8gKmJ1ZmZlckluZm9zID0g
dXBkYXRlQnVpbGRlci0+YWxsb2NEZXNjcmlwdG9yQnVmZmVySW5mb3MoY291bnQpOworICAgIFZr
V3JpdGVEZXNjcmlwdG9yU2V0ICp3cml0ZUluZm9zICAgID0gdXBkYXRlQnVpbGRlci0+YWxsb2NX
cml0ZURlc2NyaXB0b3JTZXRzKGNvdW50KTsKICAgICBzaXplX3Qgd3JpdGVDb3VudCAgICAgICAg
ICAgICAgICAgICA9IDA7CiAgICAgZm9yIChzaXplX3QgYmluZGluZyA6IH53cml0dGVuQmluZGlu
Z3MpCiAgICAgewotICAgICAgICBXcml0ZUJ1ZmZlckRlc2NyaXB0b3JTZXRCaW5kaW5nKGVtcHR5
QnVmZmVyLCAwLCBlbXB0eUJ1ZmZlci5nZXRTaXplKCksIGRlc2NyaXB0b3JTZXQsCisgICAgICAg
IFdyaXRlQnVmZmVyRGVzY3JpcHRvclNldEJpbmRpbmcoKmVtcHR5QnVmZmVyLCAwLCBlbXB0eUJ1
ZmZlci0+Z2V0U2l6ZSgpLCBkZXNjcmlwdG9yU2V0LAogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGtTdG9yYWdlQnVmZmVyRGVzY3JpcHRvclR5cGUsIGluZm8uYmluZGlu
ZywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0aWNfY2FzdDx1
aW50MzJfdD4oYmluZGluZyksIDAsICZidWZmZXJJbmZvc1t3cml0ZUNvdW50XSwKICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmd3JpdGVJbmZvc1t3cml0ZUNvdW50XSk7
CkBAIC0xNDM0LDEyICsxNDQ5LDE1IEBAIGFuZ2xlOjpSZXN1bHQgUHJvZ3JhbUV4ZWN1dGFibGVW
azo6dXBkYXRlQXRvbWljQ291bnRlckJ1ZmZlcnNEZXNjcmlwdG9yU2V0KAogfQogCiBhbmdsZTo6
UmVzdWx0IFByb2dyYW1FeGVjdXRhYmxlVms6OnVwZGF0ZUltYWdlc0Rlc2NyaXB0b3JTZXQoCi0g
ICAgQ29udGV4dFZrICpjb250ZXh0VmssCisgICAgdms6OkNvbnRleHQgKmNvbnRleHQsCisgICAg
dms6OlJlc291cmNlVXNlTGlzdCAqcmVzb3VyY2VVc2VMaXN0LAorICAgIFVwZGF0ZURlc2NyaXB0
b3JTZXRzQnVpbGRlciAqdXBkYXRlQnVpbGRlciwKKyAgICBjb25zdCBnbDo6QWN0aXZlVGV4dHVy
ZUFycmF5PFRleHR1cmVWayAqPiAmYWN0aXZlSW1hZ2VzLAorICAgIGNvbnN0IHN0ZDo6dmVjdG9y
PGdsOjpJbWFnZVVuaXQ+ICZpbWFnZVVuaXRzLAogICAgIGNvbnN0IGdsOjpQcm9ncmFtRXhlY3V0
YWJsZSAmZXhlY3V0YWJsZSwKLSAgICBjb25zdCBnbDo6U2hhZGVyVHlwZSBzaGFkZXJUeXBlKQor
ICAgIGdsOjpTaGFkZXJUeXBlIHNoYWRlclR5cGUpCiB7Ci0gICAgY29uc3QgZ2w6OlN0YXRlICZn
bFN0YXRlICAgICAgICAgICAgICAgICAgICAgICAgICAgPSBjb250ZXh0VmstPmdldFN0YXRlKCk7
Ci0gICAgUmVuZGVyZXJWayAqcmVuZGVyZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
PSBjb250ZXh0VmstPmdldFJlbmRlcmVyKCk7CisgICAgUmVuZGVyZXJWayAqcmVuZGVyZXIgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgPSBjb250ZXh0LT5nZXRSZW5kZXJlcigpOwogICAg
IGNvbnN0IHN0ZDo6dmVjdG9yPGdsOjpJbWFnZUJpbmRpbmc+ICZpbWFnZUJpbmRpbmdzID0gZXhl
Y3V0YWJsZS5nZXRJbWFnZUJpbmRpbmdzKCk7CiAgICAgY29uc3Qgc3RkOjp2ZWN0b3I8Z2w6Okxp
bmtlZFVuaWZvcm0+ICZ1bmlmb3JtcyAgICAgPSBleGVjdXRhYmxlLmdldFVuaWZvcm1zKCk7CiAK
QEAgLTE0NDgsMTAgKzE0NjYsMTAgQEAgYW5nbGU6OlJlc3VsdCBQcm9ncmFtRXhlY3V0YWJsZVZr
Ojp1cGRhdGVJbWFnZXNEZXNjcmlwdG9yU2V0KAogICAgICAgICByZXR1cm4gYW5nbGU6OlJlc3Vs
dDo6Q29udGludWU7CiAgICAgfQogCi0gICAgY29uc3QgZ2w6OkFjdGl2ZVRleHR1cmVBcnJheTxU
ZXh0dXJlVmsgKj4gJmFjdGl2ZUltYWdlcyA9IGNvbnRleHRWay0+Z2V0QWN0aXZlSW1hZ2VzKCk7
Ci0KICAgICBhbmdsZTo6SGFzaE1hcDxzdGQ6OnN0cmluZywgdWludDMyX3Q+IG1hcHBlZEltYWdl
TmFtZVRvQXJyYXlPZmZzZXQ7CiAKKyAgICBWa0Rlc2NyaXB0b3JTZXQgZGVzY3JpcHRvclNldCA9
IG1EZXNjcmlwdG9yU2V0c1tEZXNjcmlwdG9yU2V0SW5kZXg6OlNoYWRlclJlc291cmNlXTsKKwog
ICAgIC8vIFdyaXRlIGltYWdlcy4KICAgICBmb3IgKHVpbnQzMl90IGltYWdlSW5kZXggPSAwOyBp
bWFnZUluZGV4IDwgaW1hZ2VCaW5kaW5ncy5zaXplKCk7ICsraW1hZ2VJbmRleCkKICAgICB7CkBA
IC0xNDY0LDkgKzE0ODIsNiBAQCBhbmdsZTo6UmVzdWx0IFByb2dyYW1FeGVjdXRhYmxlVms6OnVw
ZGF0ZUltYWdlc0Rlc2NyaXB0b3JTZXQoCiAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAg
fQogCi0gICAgICAgIFZrRGVzY3JpcHRvclNldCBkZXNjcmlwdG9yU2V0OwotICAgICAgICBBTkdM
RV9UUlkoZ2V0T3JBbGxvY2F0ZVNoYWRlclJlc291cmNlc0Rlc2NyaXB0b3JTZXQoY29udGV4dFZr
LCBudWxscHRyLCAmZGVzY3JpcHRvclNldCkpOwotCiAgICAgICAgIHN0ZDo6c3RyaW5nIG1hcHBl
ZEltYWdlTmFtZSA9IEdsc2xhbmdHZXRNYXBwZWRTYW1wbGVyTmFtZShpbWFnZVVuaWZvcm0ubmFt
ZSk7CiAKICAgICAgICAgR2V0SW1hZ2VOYW1lV2l0aG91dEluZGljZXMoJm1hcHBlZEltYWdlTmFt
ZSk7CkBAIC0xNDk3LDcgKzE1MTIsNyBAQCBhbmdsZTo6UmVzdWx0IFByb2dyYW1FeGVjdXRhYmxl
Vms6OnVwZGF0ZUltYWdlc0Rlc2NyaXB0b3JTZXQoCiAgICAgICAgICAgICAgICAgY29udGludWU7
CiAgICAgICAgICAgICB9CiAKLSAgICAgICAgICAgIFZrV3JpdGVEZXNjcmlwdG9yU2V0ICp3cml0
ZUluZm9zID0gY29udGV4dFZrLT5hbGxvY1dyaXRlRGVzY3JpcHRvclNldHMoYXJyYXlTaXplKTsK
KyAgICAgICAgICAgIFZrV3JpdGVEZXNjcmlwdG9yU2V0ICp3cml0ZUluZm9zID0gdXBkYXRlQnVp
bGRlci0+YWxsb2NXcml0ZURlc2NyaXB0b3JTZXRzKGFycmF5U2l6ZSk7CiAKICAgICAgICAgICAg
IGZvciAodWludDMyX3QgYXJyYXlFbGVtZW50ID0gMDsgYXJyYXlFbGVtZW50IDwgYXJyYXlTaXpl
OyArK2FycmF5RWxlbWVudCkKICAgICAgICAgICAgIHsKQEAgLTE1MDUsNyArMTUyMCw3IEBAIGFu
Z2xlOjpSZXN1bHQgUHJvZ3JhbUV4ZWN1dGFibGVWazo6dXBkYXRlSW1hZ2VzRGVzY3JpcHRvclNl
dCgKICAgICAgICAgICAgICAgICBUZXh0dXJlVmsgKnRleHR1cmVWayA9IGFjdGl2ZUltYWdlc1tp
bWFnZVVuaXRdOwogCiAgICAgICAgICAgICAgICAgY29uc3Qgdms6OkJ1ZmZlclZpZXcgKnZpZXcg
PSBudWxscHRyOwotICAgICAgICAgICAgICAgIEFOR0xFX1RSWSh0ZXh0dXJlVmstPmdldEJ1ZmZl
clZpZXdBbmRSZWNvcmRVc2UoY29udGV4dFZrLCBmb3JtYXQsIHRydWUsICZ2aWV3KSk7CisgICAg
ICAgICAgICAgICAgQU5HTEVfVFJZKHRleHR1cmVWay0+Z2V0QnVmZmVyVmlld0FuZFJlY29yZFVz
ZShjb250ZXh0LCBmb3JtYXQsIHRydWUsICZ2aWV3KSk7CiAKICAgICAgICAgICAgICAgICB3cml0
ZUluZm9zW2FycmF5RWxlbWVudF0uc1R5cGUgICAgICAgICAgICA9IFZLX1NUUlVDVFVSRV9UWVBF
X1dSSVRFX0RFU0NSSVBUT1JfU0VUOwogICAgICAgICAgICAgICAgIHdyaXRlSW5mb3NbYXJyYXlF
bGVtZW50XS5wTmV4dCAgICAgICAgICAgID0gbnVsbHB0cjsKQEAgLTE1MjgsMTggKzE1NDMsMTgg
QEAgYW5nbGU6OlJlc3VsdCBQcm9ncmFtRXhlY3V0YWJsZVZrOjp1cGRhdGVJbWFnZXNEZXNjcmlw
dG9yU2V0KAogICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgIH0KIAotICAgICAgICBWa1dy
aXRlRGVzY3JpcHRvclNldCAqd3JpdGVJbmZvcyAgPSBjb250ZXh0VmstPmFsbG9jV3JpdGVEZXNj
cmlwdG9yU2V0cyhhcnJheVNpemUpOwotICAgICAgICBWa0Rlc2NyaXB0b3JJbWFnZUluZm8gKmlt
YWdlSW5mb3MgPSBjb250ZXh0VmstPmFsbG9jRGVzY3JpcHRvckltYWdlSW5mb3MoYXJyYXlTaXpl
KTsKKyAgICAgICAgVmtXcml0ZURlc2NyaXB0b3JTZXQgKndyaXRlSW5mb3MgID0gdXBkYXRlQnVp
bGRlci0+YWxsb2NXcml0ZURlc2NyaXB0b3JTZXRzKGFycmF5U2l6ZSk7CisgICAgICAgIFZrRGVz
Y3JpcHRvckltYWdlSW5mbyAqaW1hZ2VJbmZvcyA9IHVwZGF0ZUJ1aWxkZXItPmFsbG9jRGVzY3Jp
cHRvckltYWdlSW5mb3MoYXJyYXlTaXplKTsKICAgICAgICAgZm9yICh1aW50MzJfdCBhcnJheUVs
ZW1lbnQgPSAwOyBhcnJheUVsZW1lbnQgPCBhcnJheVNpemU7ICsrYXJyYXlFbGVtZW50KQogICAg
ICAgICB7CiAgICAgICAgICAgICBHTHVpbnQgaW1hZ2VVbml0ICAgICAgICAgICAgID0gaW1hZ2VC
aW5kaW5nLmJvdW5kSW1hZ2VVbml0c1thcnJheUVsZW1lbnRdOwotICAgICAgICAgICAgY29uc3Qg
Z2w6OkltYWdlVW5pdCAmYmluZGluZyA9IGdsU3RhdGUuZ2V0SW1hZ2VVbml0KGltYWdlVW5pdCk7
CisgICAgICAgICAgICBjb25zdCBnbDo6SW1hZ2VVbml0ICZiaW5kaW5nID0gaW1hZ2VVbml0c1tp
bWFnZVVuaXRdOwogICAgICAgICAgICAgVGV4dHVyZVZrICp0ZXh0dXJlVmsgICAgICAgICA9IGFj
dGl2ZUltYWdlc1tpbWFnZVVuaXRdOwogCiAgICAgICAgICAgICB2azo6SW1hZ2VIZWxwZXIgKmlt
YWdlICAgICAgICAgPSAmdGV4dHVyZVZrLT5nZXRJbWFnZSgpOwogICAgICAgICAgICAgY29uc3Qg
dms6OkltYWdlVmlldyAqaW1hZ2VWaWV3ID0gbnVsbHB0cjsKIAotICAgICAgICAgICAgQU5HTEVf
VFJZKHRleHR1cmVWay0+Z2V0U3RvcmFnZUltYWdlVmlldyhjb250ZXh0VmssIGJpbmRpbmcsICZp
bWFnZVZpZXcpKTsKKyAgICAgICAgICAgIEFOR0xFX1RSWSh0ZXh0dXJlVmstPmdldFN0b3JhZ2VJ
bWFnZVZpZXcoY29udGV4dCwgYmluZGluZywgJmltYWdlVmlldykpOwogCiAgICAgICAgICAgICAv
LyBOb3RlOiBiaW5kaW5nLmFjY2VzcyBpcyB1bnVzZWQgYmVjYXVzZSBpdCBpcyBpbXBsaWVkIGJ5
IHRoZSBzaGFkZXIuCiAKQEAgLTE1NjUsMTcgKzE1ODAsMjUgQEAgYW5nbGU6OlJlc3VsdCBQcm9n
cmFtRXhlY3V0YWJsZVZrOjp1cGRhdGVJbWFnZXNEZXNjcmlwdG9yU2V0KAogCiBhbmdsZTo6UmVz
dWx0IFByb2dyYW1FeGVjdXRhYmxlVms6OnVwZGF0ZVNoYWRlclJlc291cmNlc0Rlc2NyaXB0b3JT
ZXQoCiAgICAgQ29udGV4dFZrICpjb250ZXh0VmssCisgICAgY29uc3QgZ2w6OlByb2dyYW1FeGVj
dXRhYmxlICpleGVjdXRhYmxlLAorICAgIFVwZGF0ZURlc2NyaXB0b3JTZXRzQnVpbGRlciAqdXBk
YXRlQnVpbGRlciwKKyAgICB2azo6QnVmZmVySGVscGVyICplbXB0eUJ1ZmZlciwKKyAgICB2azo6
UmVzb3VyY2VVc2VMaXN0ICpyZXNvdXJjZVVzZUxpc3QsCiAgICAgRnJhbWVidWZmZXJWayAqZnJh
bWVidWZmZXJWaywKICAgICBjb25zdCB2azo6RGVzY3JpcHRvclNldERlc2MgJnNoYWRlckJ1ZmZl
cnNEZXNjKQogewotICAgIGNvbnN0IGdsOjpQcm9ncmFtRXhlY3V0YWJsZSAqZXhlY3V0YWJsZSA9
IGNvbnRleHRWay0+Z2V0U3RhdGUoKS5nZXRQcm9ncmFtRXhlY3V0YWJsZSgpOwotICAgIEFTU0VS
VChleGVjdXRhYmxlKTsKLQogICAgIC8vIFJlc2V0IHRoZSBkZXNjcmlwdG9yIHNldCBoYW5kbGVz
IHNvIHdlIG9ubHkgYWxsb2NhdGUgYSBuZXcgb25lIHdoZW4gbmVjZXNzYXJ5LgogICAgIG1EZXNj
cmlwdG9yU2V0c1tEZXNjcmlwdG9yU2V0SW5kZXg6OlNoYWRlclJlc291cmNlXSAgICAgID0gVktf
TlVMTF9IQU5ETEU7CiAgICAgbUVtcHR5RGVzY3JpcHRvclNldHNbRGVzY3JpcHRvclNldEluZGV4
OjpTaGFkZXJSZXNvdXJjZV0gPSBWS19OVUxMX0hBTkRMRTsKICAgICBtRHluYW1pY1NoYWRlckJ1
ZmZlckRlc2NyaXB0b3JPZmZzZXRzLmNsZWFyKCk7CiAKKyAgICBpZiAoIW1EeW5hbWljRGVzY3Jp
cHRvclBvb2xzW0Rlc2NyaXB0b3JTZXRJbmRleDo6U2hhZGVyUmVzb3VyY2VdLnZhbGlkKCkpCisg
ICAgeworICAgICAgICByZXR1cm4gYW5nbGU6OlJlc3VsdDo6Q29udGludWU7CisgICAgfQorCisg
ICAgYm9vbCBjYWNoZUhpdCA9IGZhbHNlOworCiAgICAgaWYgKCFleGVjdXRhYmxlLT5oYXNJbWFn
ZXMoKSAmJiAhZXhlY3V0YWJsZS0+dXNlc0ZyYW1lYnVmZmVyRmV0Y2goKSkKICAgICB7CiAgICAg
ICAgIFZrRGVzY3JpcHRvclNldCBkZXNjcmlwdG9yU2V0ID0gVktfTlVMTF9IQU5ETEU7CkBAIC0x
NTg2LDM2ICsxNjA5LDYwIEBAIGFuZ2xlOjpSZXN1bHQgUHJvZ3JhbUV4ZWN1dGFibGVWazo6dXBk
YXRlU2hhZGVyUmVzb3VyY2VzRGVzY3JpcHRvclNldCgKICAgICAgICAgICAgIC8vIGVhY2ggdGlt
ZSB0aGUgZGVzY3JpcHRvciBzZXQgaXMgdXNlZCBpbiBhIG5ldyBjb21tYW5kLgogICAgICAgICAg
ICAgbURlc2NyaXB0b3JQb29sQmluZGluZ3NbRGVzY3JpcHRvclNldEluZGV4OjpTaGFkZXJSZXNv
dXJjZV0uZ2V0KCkucmV0YWluKAogICAgICAgICAgICAgICAgICZjb250ZXh0VmstPmdldFJlc291
cmNlVXNlTGlzdCgpKTsKKyAgICAgICAgICAgIGNhY2hlSGl0ID0gdHJ1ZTsKKyAgICAgICAgfQor
ICAgICAgICBlbHNlCisgICAgICAgIHsKKyAgICAgICAgICAgIEFOR0xFX1RSWShhbGxvY2F0ZVNo
YWRlclJlc291cmNlc0Rlc2NyaXB0b3JTZXQoY29udGV4dFZrLCByZXNvdXJjZVVzZUxpc3QsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICZzaGFkZXJCdWZmZXJzRGVzYykpOwogICAgICAgICB9CiAgICAgfQorICAgIGVsc2UKKyAgICB7
CisgICAgICAgIEFOR0xFX1RSWShhbGxvY2F0ZVNoYWRlclJlc291cmNlc0Rlc2NyaXB0b3JTZXQo
Y29udGV4dFZrLCByZXNvdXJjZVVzZUxpc3QsIG51bGxwdHIpKTsKKyAgICB9CiAKLSAgICBib29s
IGNhY2hlSGl0ID0gbURlc2NyaXB0b3JTZXRzW0Rlc2NyaXB0b3JTZXRJbmRleDo6U2hhZGVyUmVz
b3VyY2VdICE9IFZLX05VTExfSEFORExFOworICAgIEFTU0VSVChtRGVzY3JpcHRvclNldHNbRGVz
Y3JpcHRvclNldEluZGV4OjpTaGFkZXJSZXNvdXJjZV0gIT0gVktfTlVMTF9IQU5ETEUpOwogCiAg
ICAgY29uc3QgVmtQaHlzaWNhbERldmljZUxpbWl0cyAmbGltaXRzID0KICAgICAgICAgY29udGV4
dFZrLT5nZXRSZW5kZXJlcigpLT5nZXRQaHlzaWNhbERldmljZVByb3BlcnRpZXMoKS5saW1pdHM7
CiAKLSAgICBmb3IgKGNvbnN0IGdsOjpTaGFkZXJUeXBlIHNoYWRlclR5cGUgOiBleGVjdXRhYmxl
LT5nZXRMaW5rZWRTaGFkZXJTdGFnZXMoKSkKKyAgICBjb25zdCBnbDo6U3RhdGUgJmdsU3RhdGUg
PSBjb250ZXh0VmstPmdldFN0YXRlKCk7CisgICAgY29uc3QgZ2w6OkJ1ZmZlclZlY3RvciAmYXRv
bWljQ291bnRlckJ1ZmZlckJpbmRpbmdzID0KKyAgICAgICAgZ2xTdGF0ZS5nZXRPZmZzZXRCaW5k
aW5nUG9pbnRlckF0b21pY0NvdW50ZXJCdWZmZXJzKCk7CisKKyAgICBjb25zdCBnbDo6QnVmZmVy
VmVjdG9yICZ1bmlmb3JtQnVmZmVycyA9IGdsU3RhdGUuZ2V0T2Zmc2V0QmluZGluZ1BvaW50ZXJV
bmlmb3JtQnVmZmVycygpOworICAgIGNvbnN0IGdsOjpCdWZmZXJWZWN0b3IgJnN0b3JhZ2VCdWZm
ZXJzID0gZ2xTdGF0ZS5nZXRPZmZzZXRCaW5kaW5nUG9pbnRlclNoYWRlclN0b3JhZ2VCdWZmZXJz
KCk7CisgICAgY29uc3QgZ2w6OkFjdGl2ZVRleHR1cmVBcnJheTxUZXh0dXJlVmsgKj4gJmFjdGl2
ZUltYWdlcyA9IGNvbnRleHRWay0+Z2V0QWN0aXZlSW1hZ2VzKCk7CisKKyAgICBmb3IgKGdsOjpT
aGFkZXJUeXBlIHNoYWRlclR5cGUgOiBleGVjdXRhYmxlLT5nZXRMaW5rZWRTaGFkZXJTdGFnZXMo
KSkKICAgICB7CiAgICAgICAgIEFOR0xFX1RSWSh1cGRhdGVCdWZmZXJzRGVzY3JpcHRvclNldCgK
LSAgICAgICAgICAgIGNvbnRleHRWaywgc2hhZGVyVHlwZSwgc2hhZGVyQnVmZmVyc0Rlc2MsIGV4
ZWN1dGFibGUtPmdldFVuaWZvcm1CbG9ja3MoKSwKLSAgICAgICAgICAgIG1Vbmlmb3JtQnVmZmVy
RGVzY3JpcHRvclR5cGUsIGxpbWl0cy5tYXhVbmlmb3JtQnVmZmVyUmFuZ2UsIGNhY2hlSGl0KSk7
CisgICAgICAgICAgICBjb250ZXh0VmssIHVwZGF0ZUJ1aWxkZXIsIGVtcHR5QnVmZmVyLCByZXNv
dXJjZVVzZUxpc3QsIHNoYWRlclR5cGUsIHNoYWRlckJ1ZmZlcnNEZXNjLAorICAgICAgICAgICAg
dW5pZm9ybUJ1ZmZlcnMsIGV4ZWN1dGFibGUtPmdldFVuaWZvcm1CbG9ja3MoKSwgbVVuaWZvcm1C
dWZmZXJEZXNjcmlwdG9yVHlwZSwKKyAgICAgICAgICAgIGxpbWl0cy5tYXhVbmlmb3JtQnVmZmVy
UmFuZ2UsIGNhY2hlSGl0KSk7CiAgICAgICAgIEFOR0xFX1RSWSh1cGRhdGVCdWZmZXJzRGVzY3Jp
cHRvclNldCgKLSAgICAgICAgICAgIGNvbnRleHRWaywgc2hhZGVyVHlwZSwgc2hhZGVyQnVmZmVy
c0Rlc2MsIGV4ZWN1dGFibGUtPmdldFNoYWRlclN0b3JhZ2VCbG9ja3MoKSwKLSAgICAgICAgICAg
IGtTdG9yYWdlQnVmZmVyRGVzY3JpcHRvclR5cGUsIGxpbWl0cy5tYXhTdG9yYWdlQnVmZmVyUmFu
Z2UsIGNhY2hlSGl0KSk7Ci0gICAgICAgIEFOR0xFX1RSWSh1cGRhdGVBdG9taWNDb3VudGVyQnVm
ZmVyc0Rlc2NyaXB0b3JTZXQoY29udGV4dFZrLCAqZXhlY3V0YWJsZSwgc2hhZGVyVHlwZSwKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBz
aGFkZXJCdWZmZXJzRGVzYywgY2FjaGVIaXQpKTsKLSAgICAgICAgQU5HTEVfVFJZKHVwZGF0ZUlt
YWdlc0Rlc2NyaXB0b3JTZXQoY29udGV4dFZrLCAqZXhlY3V0YWJsZSwgc2hhZGVyVHlwZSkpOwot
ICAgICAgICBBTkdMRV9UUlkoCi0gICAgICAgICAgICB1cGRhdGVJbnB1dEF0dGFjaG1lbnREZXNj
cmlwdG9yU2V0KCpleGVjdXRhYmxlLCBzaGFkZXJUeXBlLCBjb250ZXh0VmssIGZyYW1lYnVmZmVy
VmspKTsKKyAgICAgICAgICAgIGNvbnRleHRWaywgdXBkYXRlQnVpbGRlciwgZW1wdHlCdWZmZXIs
IHJlc291cmNlVXNlTGlzdCwgc2hhZGVyVHlwZSwgc2hhZGVyQnVmZmVyc0Rlc2MsCisgICAgICAg
ICAgICBzdG9yYWdlQnVmZmVycywgZXhlY3V0YWJsZS0+Z2V0U2hhZGVyU3RvcmFnZUJsb2Nrcygp
LCBrU3RvcmFnZUJ1ZmZlckRlc2NyaXB0b3JUeXBlLAorICAgICAgICAgICAgbGltaXRzLm1heFN0
b3JhZ2VCdWZmZXJSYW5nZSwgY2FjaGVIaXQpKTsKKyAgICAgICAgQU5HTEVfVFJZKHVwZGF0ZUF0
b21pY0NvdW50ZXJCdWZmZXJzRGVzY3JpcHRvclNldCgKKyAgICAgICAgICAgIGNvbnRleHRWaywg
dXBkYXRlQnVpbGRlciwgZW1wdHlCdWZmZXIsIHJlc291cmNlVXNlTGlzdCwgYXRvbWljQ291bnRl
ckJ1ZmZlckJpbmRpbmdzLAorICAgICAgICAgICAgKmV4ZWN1dGFibGUsIHNoYWRlclR5cGUsIHNo
YWRlckJ1ZmZlcnNEZXNjLCBjYWNoZUhpdCkpOworICAgICAgICBBTkdMRV9UUlkodXBkYXRlSW1h
Z2VzRGVzY3JpcHRvclNldChjb250ZXh0VmssIHJlc291cmNlVXNlTGlzdCwgdXBkYXRlQnVpbGRl
ciwgYWN0aXZlSW1hZ2VzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBnbFN0YXRlLmdldEltYWdlVW5pdHMoKSwgKmV4ZWN1dGFibGUsIHNoYWRlclR5cGUpKTsK
KyAgICAgICAgQU5HTEVfVFJZKHVwZGF0ZUlucHV0QXR0YWNobWVudERlc2NyaXB0b3JTZXQoY29u
dGV4dFZrLCByZXNvdXJjZVVzZUxpc3QsIHVwZGF0ZUJ1aWxkZXIsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpleGVjdXRhYmxlLCBzaGFkZXJU
eXBlLCBmcmFtZWJ1ZmZlclZrKSk7CiAgICAgfQogCiAgICAgcmV0dXJuIGFuZ2xlOjpSZXN1bHQ6
OkNvbnRpbnVlOwogfQogCiBhbmdsZTo6UmVzdWx0IFByb2dyYW1FeGVjdXRhYmxlVms6OnVwZGF0
ZUlucHV0QXR0YWNobWVudERlc2NyaXB0b3JTZXQoCisgICAgdms6OkNvbnRleHQgKmNvbnRleHQs
CisgICAgdms6OlJlc291cmNlVXNlTGlzdCAqcmVzb3VyY2VVc2VMaXN0LAorICAgIFVwZGF0ZURl
c2NyaXB0b3JTZXRzQnVpbGRlciAqdXBkYXRlQnVpbGRlciwKICAgICBjb25zdCBnbDo6UHJvZ3Jh
bUV4ZWN1dGFibGUgJmV4ZWN1dGFibGUsCi0gICAgY29uc3QgZ2w6OlNoYWRlclR5cGUgc2hhZGVy
VHlwZSwKLSAgICBDb250ZXh0VmsgKmNvbnRleHRWaywKKyAgICBnbDo6U2hhZGVyVHlwZSBzaGFk
ZXJUeXBlLAogICAgIEZyYW1lYnVmZmVyVmsgKmZyYW1lYnVmZmVyVmspCiB7CiAgICAgaWYgKHNo
YWRlclR5cGUgIT0gZ2w6OlNoYWRlclR5cGU6OkZyYWdtZW50KQpAQCAtMTY0MiwxNyArMTY4OSwx
NiBAQCBhbmdsZTo6UmVzdWx0IFByb2dyYW1FeGVjdXRhYmxlVms6OnVwZGF0ZUlucHV0QXR0YWNo
bWVudERlc2NyaXB0b3JTZXQoCiAKICAgICB1aW50MzJfdCBiYXNlQmluZGluZyA9IGJhc2VJbmZv
LmJpbmRpbmcgLSBiYXNlSW5wdXRBdHRhY2htZW50LmxvY2F0aW9uOwogCisgICAgVmtEZXNjcmlw
dG9yU2V0IGRlc2NyaXB0b3JTZXQgPSBtRGVzY3JpcHRvclNldHNbRGVzY3JpcHRvclNldEluZGV4
OjpTaGFkZXJSZXNvdXJjZV07CisKICAgICBmb3IgKHNpemVfdCBjb2xvckluZGV4IDogZnJhbWVi
dWZmZXJWay0+Z2V0U3RhdGUoKS5nZXRDb2xvckF0dGFjaG1lbnRzTWFzaygpKQogICAgIHsKLSAg
ICAgICAgVmtEZXNjcmlwdG9yU2V0IGRlc2NyaXB0b3JTZXQ7Ci0gICAgICAgIEFOR0xFX1RSWShn
ZXRPckFsbG9jYXRlU2hhZGVyUmVzb3VyY2VzRGVzY3JpcHRvclNldChjb250ZXh0VmssIG51bGxw
dHIsICZkZXNjcmlwdG9yU2V0KSk7Ci0KLSAgICAgICAgVmtXcml0ZURlc2NyaXB0b3JTZXQgKndy
aXRlSW5mb3MgID0gY29udGV4dFZrLT5hbGxvY1dyaXRlRGVzY3JpcHRvclNldHMoMSk7Ci0gICAg
ICAgIFZrRGVzY3JpcHRvckltYWdlSW5mbyAqaW1hZ2VJbmZvcyA9IGNvbnRleHRWay0+YWxsb2NE
ZXNjcmlwdG9ySW1hZ2VJbmZvcygxKTsKKyAgICAgICAgVmtXcml0ZURlc2NyaXB0b3JTZXQgKndy
aXRlSW5mb3MgID0gdXBkYXRlQnVpbGRlci0+YWxsb2NXcml0ZURlc2NyaXB0b3JTZXRzKDEpOwor
ICAgICAgICBWa0Rlc2NyaXB0b3JJbWFnZUluZm8gKmltYWdlSW5mb3MgPSB1cGRhdGVCdWlsZGVy
LT5hbGxvY0Rlc2NyaXB0b3JJbWFnZUluZm9zKDEpOwogICAgICAgICBSZW5kZXJUYXJnZXRWayAq
cmVuZGVyVGFyZ2V0VmsgICAgPSBmcmFtZWJ1ZmZlclZrLT5nZXRDb2xvckRyYXdSZW5kZXJUYXJn
ZXQoY29sb3JJbmRleCk7CiAgICAgICAgIGNvbnN0IHZrOjpJbWFnZVZpZXcgKmltYWdlVmlldyAg
ICA9IG51bGxwdHI7CiAKLSAgICAgICAgQU5HTEVfVFJZKHJlbmRlclRhcmdldFZrLT5nZXRJbWFn
ZVZpZXcoY29udGV4dFZrLCAmaW1hZ2VWaWV3KSk7CisgICAgICAgIEFOR0xFX1RSWShyZW5kZXJU
YXJnZXRWay0+Z2V0SW1hZ2VWaWV3KGNvbnRleHQsICZpbWFnZVZpZXcpKTsKIAogICAgICAgICBp
bWFnZUluZm9zWzBdLnNhbXBsZXIgICAgID0gVktfTlVMTF9IQU5ETEU7CiAgICAgICAgIGltYWdl
SW5mb3NbMF0uaW1hZ2VWaWV3ICAgPSBpbWFnZVZpZXctPmdldEhhbmRsZSgpOwpAQCAtMTY3Myw3
MSArMTcxOSw4MCBAQCBhbmdsZTo6UmVzdWx0IFByb2dyYW1FeGVjdXRhYmxlVms6OnVwZGF0ZUlu
cHV0QXR0YWNobWVudERlc2NyaXB0b3JTZXQoCiAgICAgcmV0dXJuIGFuZ2xlOjpSZXN1bHQ6OkNv
bnRpbnVlOwogfQogCi1hbmdsZTo6UmVzdWx0IFByb2dyYW1FeGVjdXRhYmxlVms6OnVwZGF0ZVRy
YW5zZm9ybUZlZWRiYWNrRGVzY3JpcHRvclNldCgKLSAgICBDb250ZXh0VmsgKmNvbnRleHRWaywK
K2FuZ2xlOjpSZXN1bHQgUHJvZ3JhbUV4ZWN1dGFibGVWazo6dXBkYXRlVW5pZm9ybXNBbmRYZmJE
ZXNjcmlwdG9yU2V0KAorICAgIHZrOjpDb250ZXh0ICpjb250ZXh0LAorICAgIFVwZGF0ZURlc2Ny
aXB0b3JTZXRzQnVpbGRlciAqdXBkYXRlQnVpbGRlciwKKyAgICB2azo6UmVzb3VyY2VVc2VMaXN0
ICpyZXNvdXJjZVVzZUxpc3QsCisgICAgdms6OkJ1ZmZlckhlbHBlciAqZW1wdHlCdWZmZXIsCiAg
ICAgY29uc3QgZ2w6OlByb2dyYW1FeGVjdXRhYmxlICZleGVjdXRhYmxlLAogICAgIHZrOjpCdWZm
ZXJIZWxwZXIgKmRlZmF1bHRVbmlmb3JtQnVmZmVyLAotICAgIGNvbnN0IHZrOjpEZXNjcmlwdG9y
U2V0RGVzYyAmeGZiQnVmZmVyRGVzYykKKyAgICBjb25zdCB2azo6RGVzY3JpcHRvclNldERlc2Mg
JnVuaWZvcm1zQW5kWGZiRGVzYywKKyAgICBib29sIGlzVHJhbnNmb3JtRmVlZGJhY2tBY3RpdmVV
bnBhdXNlZCwKKyAgICBUcmFuc2Zvcm1GZWVkYmFja1ZrICp0cmFuc2Zvcm1GZWVkYmFja1ZrKQog
ewogICAgIEFTU0VSVChleGVjdXRhYmxlLmhhc1RyYW5zZm9ybUZlZWRiYWNrT3V0cHV0KCkpOwog
CiAgICAgYm9vbCBuZXdEZXNjcmlwdG9yU2V0QWxsb2NhdGVkOwotICAgIEFOR0xFX1RSWShhbGxv
Y1VuaWZvcm1BbmRYZmJEZXNjcmlwdG9yU2V0KGNvbnRleHRWaywgZGVmYXVsdFVuaWZvcm1CdWZm
ZXIsIHhmYkJ1ZmZlckRlc2MsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgJm5ld0Rlc2NyaXB0b3JTZXRBbGxvY2F0ZWQpKTsKKyAgICBBTkdMRV9UUlkoYWxs
b2NVbmlmb3JtQW5kWGZiRGVzY3JpcHRvclNldChjb250ZXh0LCByZXNvdXJjZVVzZUxpc3QsIGRl
ZmF1bHRVbmlmb3JtQnVmZmVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHVuaWZvcm1zQW5kWGZiRGVzYywgJm5ld0Rlc2NyaXB0b3JTZXRBbGxvY2F0ZWQp
KTsKIAogICAgIGlmIChuZXdEZXNjcmlwdG9yU2V0QWxsb2NhdGVkKQogICAgIHsKLSAgICAgICAg
Zm9yIChjb25zdCBnbDo6U2hhZGVyVHlwZSBzaGFkZXJUeXBlIDogZXhlY3V0YWJsZS5nZXRMaW5r
ZWRTaGFkZXJTdGFnZXMoKSkKKyAgICAgICAgZm9yIChnbDo6U2hhZGVyVHlwZSBzaGFkZXJUeXBl
IDogZXhlY3V0YWJsZS5nZXRMaW5rZWRTaGFkZXJTdGFnZXMoKSkKICAgICAgICAgewotICAgICAg
ICAgICAgdXBkYXRlRGVmYXVsdFVuaWZvcm1zRGVzY3JpcHRvclNldCgKLSAgICAgICAgICAgICAg
ICBjb250ZXh0VmssIHNoYWRlclR5cGUsICptRGVmYXVsdFVuaWZvcm1CbG9ja3Nbc2hhZGVyVHlw
ZV0sIGRlZmF1bHRVbmlmb3JtQnVmZmVyKTsKKyAgICAgICAgICAgIHVwZGF0ZURlZmF1bHRVbmlm
b3Jtc0Rlc2NyaXB0b3JTZXQoY29udGV4dCwgdXBkYXRlQnVpbGRlciwgZW1wdHlCdWZmZXIsIHJl
c291cmNlVXNlTGlzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgc2hhZGVyVHlwZSwgKm1EZWZhdWx0VW5pZm9ybUJsb2Nrc1tzaGFkZXJUeXBlXSwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdFVuaWZv
cm1CdWZmZXIpOwogICAgICAgICB9Ci0gICAgICAgIHVwZGF0ZVRyYW5zZm9ybUZlZWRiYWNrRGVz
Y3JpcHRvclNldEltcGwoY29udGV4dFZrLCBleGVjdXRhYmxlKTsKKyAgICAgICAgdXBkYXRlVHJh
bnNmb3JtRmVlZGJhY2tEZXNjcmlwdG9yU2V0SW1wbChjb250ZXh0LCB1cGRhdGVCdWlsZGVyLCBl
bXB0eUJ1ZmZlciwgZXhlY3V0YWJsZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBpc1RyYW5zZm9ybUZlZWRiYWNrQWN0aXZlVW5wYXVzZWQsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtRmVl
ZGJhY2tWayk7CiAgICAgfQogCiAgICAgcmV0dXJuIGFuZ2xlOjpSZXN1bHQ6OkNvbnRpbnVlOwog
fQogCiB2b2lkIFByb2dyYW1FeGVjdXRhYmxlVms6OnVwZGF0ZVRyYW5zZm9ybUZlZWRiYWNrRGVz
Y3JpcHRvclNldEltcGwoCi0gICAgQ29udGV4dFZrICpjb250ZXh0VmssCi0gICAgY29uc3QgZ2w6
OlByb2dyYW1FeGVjdXRhYmxlICZleGVjdXRhYmxlKQorICAgIHZrOjpDb250ZXh0ICpjb250ZXh0
LAorICAgIFVwZGF0ZURlc2NyaXB0b3JTZXRzQnVpbGRlciAqdXBkYXRlQnVpbGRlciwKKyAgICB2
azo6QnVmZmVySGVscGVyICplbXB0eUJ1ZmZlciwKKyAgICBjb25zdCBnbDo6UHJvZ3JhbUV4ZWN1
dGFibGUgJmV4ZWN1dGFibGUsCisgICAgYm9vbCBpc1RyYW5zZm9ybUZlZWRiYWNrQWN0aXZlVW5w
YXVzZWQsCisgICAgVHJhbnNmb3JtRmVlZGJhY2tWayAqdHJhbnNmb3JtRmVlZGJhY2tWaykKIHsK
LSAgICBjb25zdCBnbDo6U3RhdGUgJmdsU3RhdGUgICAgICAgICAgICAgICAgID0gY29udGV4dFZr
LT5nZXRTdGF0ZSgpOwotICAgIGdsOjpUcmFuc2Zvcm1GZWVkYmFjayAqdHJhbnNmb3JtRmVlZGJh
Y2sgPSBnbFN0YXRlLmdldEN1cnJlbnRUcmFuc2Zvcm1GZWVkYmFjaygpOwotCiAgICAgaWYgKCFl
eGVjdXRhYmxlLmhhc1RyYW5zZm9ybUZlZWRiYWNrT3V0cHV0KCkpCiAgICAgewogICAgICAgICAv
LyBJZiB4ZmIgaGFzIG5vIG91dHB1dCB0aGVyZSBpcyBubyBuZWVkIHRvIHVwZGF0ZSBkZXNjcmlw
dG9yIHNldC4KICAgICAgICAgcmV0dXJuOwogICAgIH0KLSAgICBpZiAoIWdsU3RhdGUuaXNUcmFu
c2Zvcm1GZWVkYmFja0FjdGl2ZVVucGF1c2VkKCkpCisgICAgaWYgKCFpc1RyYW5zZm9ybUZlZWRi
YWNrQWN0aXZlVW5wYXVzZWQpCiAgICAgewogICAgICAgICAvLyBXZSBzZXQgZW1wdHkgQnVmZmVy
IHRvIHhmYiBkZXNjcmlwdG9yIHNldCBiZWNhdXNlIHhmYiBkZXNjcmlwdG9yIHNldAogICAgICAg
ICAvLyByZXF1aXJlcyB2YWxpZCBidWZmZXIgYmluZGluZ3MsIGV2ZW4gaWYgdGhleSBhcmUgZW1w
dHkgYnVmZmVyLAogICAgICAgICAvLyBvdGhlcndpc2UgVnVsa2FuIHZhbGlkYXRpb24gbGF5ZXIg
Z2VuZXJhdGVzIGVycm9ycy4KLSAgICAgICAgaWYgKHRyYW5zZm9ybUZlZWRiYWNrKQorICAgICAg
ICBpZiAodHJhbnNmb3JtRmVlZGJhY2tWaykKICAgICAgICAgewotICAgICAgICAgICAgVHJhbnNm
b3JtRmVlZGJhY2tWayAqdHJhbnNmb3JtRmVlZGJhY2tWayA9IHZrOjpHZXRJbXBsKHRyYW5zZm9y
bUZlZWRiYWNrKTsKICAgICAgICAgICAgIHRyYW5zZm9ybUZlZWRiYWNrVmstPmluaXREZXNjcmlw
dG9yU2V0KAotICAgICAgICAgICAgICAgIGNvbnRleHRWaywgbVZhcmlhYmxlSW5mb01hcCwgZXhl
Y3V0YWJsZS5nZXRUcmFuc2Zvcm1GZWVkYmFja0J1ZmZlckNvdW50KCksCisgICAgICAgICAgICAg
ICAgY29udGV4dCwgdXBkYXRlQnVpbGRlciwgZW1wdHlCdWZmZXIsIG1WYXJpYWJsZUluZm9NYXAs
CisgICAgICAgICAgICAgICAgZXhlY3V0YWJsZS5nZXRUcmFuc2Zvcm1GZWVkYmFja0J1ZmZlckNv
dW50KCksCiAgICAgICAgICAgICAgICAgbURlc2NyaXB0b3JTZXRzW0Rlc2NyaXB0b3JTZXRJbmRl
eDo6VW5pZm9ybXNBbmRYZmJdKTsKICAgICAgICAgfQogICAgICAgICByZXR1cm47CiAgICAgfQot
Ci0gICAgVHJhbnNmb3JtRmVlZGJhY2tWayAqdHJhbnNmb3JtRmVlZGJhY2tWayA9IHZrOjpHZXRJ
bXBsKGdsU3RhdGUuZ2V0Q3VycmVudFRyYW5zZm9ybUZlZWRiYWNrKCkpOwotICAgIHRyYW5zZm9y
bUZlZWRiYWNrVmstPnVwZGF0ZURlc2NyaXB0b3JTZXQoY29udGV4dFZrLCBleGVjdXRhYmxlLCBt
VmFyaWFibGVJbmZvTWFwLAorICAgIHRyYW5zZm9ybUZlZWRiYWNrVmstPnVwZGF0ZURlc2NyaXB0
b3JTZXQoY29udGV4dCwgdXBkYXRlQnVpbGRlciwgZXhlY3V0YWJsZSwgbVZhcmlhYmxlSW5mb01h
cCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1EZXNjcmlw
dG9yU2V0c1tEZXNjcmlwdG9yU2V0SW5kZXg6OlVuaWZvcm1zQW5kWGZiXSk7CiB9CiAKIGFuZ2xl
OjpSZXN1bHQgUHJvZ3JhbUV4ZWN1dGFibGVWazo6dXBkYXRlVGV4dHVyZXNEZXNjcmlwdG9yU2V0
KAotICAgIENvbnRleHRWayAqY29udGV4dFZrLAotICAgIGNvbnN0IHZrOjpEZXNjcmlwdG9yU2V0
RGVzYyAmdGV4dHVyZXNEZXNjKQorICAgIHZrOjpDb250ZXh0ICpjb250ZXh0LAorICAgIFVwZGF0
ZURlc2NyaXB0b3JTZXRzQnVpbGRlciAqdXBkYXRlQnVpbGRlciwKKyAgICB2azo6UmVzb3VyY2VV
c2VMaXN0ICpyZXNvdXJjZVVzZUxpc3QsCisgICAgY29uc3QgZ2w6OlByb2dyYW1FeGVjdXRhYmxl
ICZleGVjdXRhYmxlLAorICAgIGNvbnN0IGdsOjpBY3RpdmVUZXh0dXJlQXJyYXk8dms6OlRleHR1
cmVVbml0PiAmYWN0aXZlVGV4dHVyZXMsCisgICAgY29uc3Qgdms6OkRlc2NyaXB0b3JTZXREZXNj
ICZ0ZXh0dXJlc0Rlc2MsCisgICAgYm9vbCBlbXVsYXRlU2VhbWZ1bEN1YmVNYXBTYW1wbGluZykK
IHsKLSAgICBjb25zdCBnbDo6UHJvZ3JhbUV4ZWN1dGFibGUgKmV4ZWN1dGFibGUgPSBjb250ZXh0
VmstPmdldFN0YXRlKCkuZ2V0UHJvZ3JhbUV4ZWN1dGFibGUoKTsKLSAgICBBU1NFUlQoZXhlY3V0
YWJsZSk7Ci0KLSAgICBpZiAoIWV4ZWN1dGFibGUtPmhhc1RleHR1cmVzKCkpCisgICAgaWYgKCFl
eGVjdXRhYmxlLmhhc1RleHR1cmVzKCkpCiAgICAgewogICAgICAgICByZXR1cm4gYW5nbGU6OlJl
c3VsdDo6Q29udGludWU7CiAgICAgfQpAQCAtMTc0OCwyNCArMTgwMywyMSBAQCBhbmdsZTo6UmVz
dWx0IFByb2dyYW1FeGVjdXRhYmxlVms6OnVwZGF0ZVRleHR1cmVzRGVzY3JpcHRvclNldCgKICAg
ICAgICAgbURlc2NyaXB0b3JTZXRzW0Rlc2NyaXB0b3JTZXRJbmRleDo6VGV4dHVyZV0gPSBkZXNj
cmlwdG9yU2V0OwogICAgICAgICAvLyBUaGUgZGVzY3JpcHRvciBwb29sIHRoYXQgdGhpcyBkZXNj
cmlwdG9yIHNldCB3YXMgYWxsb2NhdGVkIGZyb20gbmVlZHMgdG8gYmUgcmV0YWluZWQgZWFjaAog
ICAgICAgICAvLyB0aW1lIHRoZSBkZXNjcmlwdG9yIHNldCBpcyB1c2VkIGluIGEgbmV3IGNvbW1h
bmQuCi0gICAgICAgIG1EZXNjcmlwdG9yUG9vbEJpbmRpbmdzW0Rlc2NyaXB0b3JTZXRJbmRleDo6
VGV4dHVyZV0uZ2V0KCkucmV0YWluKAotICAgICAgICAgICAgJmNvbnRleHRWay0+Z2V0UmVzb3Vy
Y2VVc2VMaXN0KCkpOworICAgICAgICBtRGVzY3JpcHRvclBvb2xCaW5kaW5nc1tEZXNjcmlwdG9y
U2V0SW5kZXg6OlRleHR1cmVdLmdldCgpLnJldGFpbihyZXNvdXJjZVVzZUxpc3QpOwogICAgICAg
ICByZXR1cm4gYW5nbGU6OlJlc3VsdDo6Q29udGludWU7CiAgICAgfQogCi0gICAgY29uc3QgZ2w6
OkFjdGl2ZVRleHR1cmVBcnJheTx2azo6VGV4dHVyZVVuaXQ+ICZhY3RpdmVUZXh0dXJlcyA9IGNv
bnRleHRWay0+Z2V0QWN0aXZlVGV4dHVyZXMoKTsKLSAgICBib29sIGVtdWxhdGVTZWFtZnVsQ3Vi
ZU1hcFNhbXBsaW5nID0gY29udGV4dFZrLT5lbXVsYXRlU2VhbWZ1bEN1YmVNYXBTYW1wbGluZygp
OworICAgIGNvbnN0IHN0ZDo6dmVjdG9yPGdsOjpTYW1wbGVyQmluZGluZz4gJnNhbXBsZXJCaW5k
aW5ncyA9IGV4ZWN1dGFibGUuZ2V0U2FtcGxlckJpbmRpbmdzKCk7CiAKLSAgICBmb3IgKGNvbnN0
IGdsOjpTaGFkZXJUeXBlIHNoYWRlclR5cGUgOiBleGVjdXRhYmxlLT5nZXRMaW5rZWRTaGFkZXJT
dGFnZXMoKSkKKyAgICBmb3IgKGdsOjpTaGFkZXJUeXBlIHNoYWRlclR5cGUgOiBleGVjdXRhYmxl
LmdldExpbmtlZFNoYWRlclN0YWdlcygpKQogICAgIHsKICAgICAgICAgYW5nbGU6Okhhc2hNYXA8
c3RkOjpzdHJpbmcsIHVpbnQzMl90PiBtYXBwZWRTYW1wbGVyTmFtZVRvQXJyYXlPZmZzZXQ7Ci0g
ICAgICAgIGZvciAodWludDMyX3QgdGV4dHVyZUluZGV4ID0gMDsgdGV4dHVyZUluZGV4IDwgZXhl
Y3V0YWJsZS0+Z2V0U2FtcGxlckJpbmRpbmdzKCkuc2l6ZSgpOworICAgICAgICBmb3IgKHVpbnQz
Ml90IHRleHR1cmVJbmRleCA9IDA7IHRleHR1cmVJbmRleCA8IGV4ZWN1dGFibGUuZ2V0U2FtcGxl
ckJpbmRpbmdzKCkuc2l6ZSgpOwogICAgICAgICAgICAgICsrdGV4dHVyZUluZGV4KQogICAgICAg
ICB7Ci0gICAgICAgICAgICBjb25zdCBnbDo6U2FtcGxlckJpbmRpbmcgJnNhbXBsZXJCaW5kaW5n
ID0KLSAgICAgICAgICAgICAgICBleGVjdXRhYmxlLT5nZXRTYW1wbGVyQmluZGluZ3MoKVt0ZXh0
dXJlSW5kZXhdOwotICAgICAgICAgICAgdWludDMyX3QgdW5pZm9ybUluZGV4ID0gZXhlY3V0YWJs
ZS0+Z2V0VW5pZm9ybUluZGV4RnJvbVNhbXBsZXJJbmRleCh0ZXh0dXJlSW5kZXgpOwotICAgICAg
ICAgICAgY29uc3QgZ2w6OkxpbmtlZFVuaWZvcm0gJnNhbXBsZXJVbmlmb3JtID0gZXhlY3V0YWJs
ZS0+Z2V0VW5pZm9ybXMoKVt1bmlmb3JtSW5kZXhdOworICAgICAgICAgICAgY29uc3QgZ2w6OlNh
bXBsZXJCaW5kaW5nICZzYW1wbGVyQmluZGluZyA9IHNhbXBsZXJCaW5kaW5nc1t0ZXh0dXJlSW5k
ZXhdOworICAgICAgICAgICAgdWludDMyX3QgdW5pZm9ybUluZGV4ID0gZXhlY3V0YWJsZS5nZXRV
bmlmb3JtSW5kZXhGcm9tU2FtcGxlckluZGV4KHRleHR1cmVJbmRleCk7CisgICAgICAgICAgICBj
b25zdCBnbDo6TGlua2VkVW5pZm9ybSAmc2FtcGxlclVuaWZvcm0gPSBleGVjdXRhYmxlLmdldFVu
aWZvcm1zKClbdW5pZm9ybUluZGV4XTsKICAgICAgICAgICAgIHN0ZDo6c3RyaW5nIG1hcHBlZFNh
bXBsZXJOYW1lID0gR2xzbGFuZ0dldE1hcHBlZFNhbXBsZXJOYW1lKHNhbXBsZXJVbmlmb3JtLm5h
bWUpOwogCiAgICAgICAgICAgICBpZiAoIXNhbXBsZXJVbmlmb3JtLmlzQWN0aXZlKHNoYWRlclR5
cGUpKQpAQCAtMTc4NiwxMyArMTgzOCwxMyBAQCBhbmdsZTo6UmVzdWx0IFByb2dyYW1FeGVjdXRh
YmxlVms6OnVwZGF0ZVRleHR1cmVzRGVzY3JpcHRvclNldCgKICAgICAgICAgICAgIGlmIChkZXNj
cmlwdG9yU2V0ID09IFZLX05VTExfSEFORExFKQogICAgICAgICAgICAgewogICAgICAgICAgICAg
ICAgIGJvb2wgbmV3UG9vbEFsbG9jYXRlZDsKLSAgICAgICAgICAgICAgICBBTkdMRV9UUlkoYWxs
b2NhdGVEZXNjcmlwdG9yU2V0QW5kR2V0SW5mbyhjb250ZXh0VmssIERlc2NyaXB0b3JTZXRJbmRl
eDo6VGV4dHVyZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAmbmV3UG9vbEFsbG9jYXRlZCkpOworICAgICAgICAgICAgICAgIEFOR0xF
X1RSWShhbGxvY2F0ZURlc2NyaXB0b3JTZXRBbmRHZXRJbmZvKAorICAgICAgICAgICAgICAgICAg
ICBjb250ZXh0LCByZXNvdXJjZVVzZUxpc3QsIERlc2NyaXB0b3JTZXRJbmRleDo6VGV4dHVyZSwg
Jm5ld1Bvb2xBbGxvY2F0ZWQpKTsKIAogICAgICAgICAgICAgICAgIC8vIENsZWFyIGRlc2NyaXB0
b3Igc2V0IGNhY2hlLiBJdCBtYXkgbm8gbG9uZ2VyIGJlIHZhbGlkLgogICAgICAgICAgICAgICAg
IGlmIChuZXdQb29sQWxsb2NhdGVkKQogICAgICAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAg
ICAgICAgbVRleHR1cmVEZXNjcmlwdG9yc0NhY2hlLmRlc3Ryb3koY29udGV4dFZrLT5nZXRSZW5k
ZXJlcigpLAorICAgICAgICAgICAgICAgICAgICBtVGV4dHVyZURlc2NyaXB0b3JzQ2FjaGUuZGVz
dHJveShjb250ZXh0LT5nZXRSZW5kZXJlcigpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBWdWxrYW5DYWNoZVR5cGU6OlRleHR1cmVEZXNjcmlw
dG9ycyk7CiAgICAgICAgICAgICAgICAgfQogCkBAIC0xODA5LDcgKzE4NjEsNyBAQCBhbmdsZTo6
UmVzdWx0IFByb2dyYW1FeGVjdXRhYmxlVms6OnVwZGF0ZVRleHR1cmVzRGVzY3JpcHRvclNldCgK
ICAgICAgICAgICAgIC8vIHRpbWUgd2UgcHJvY2VzcyBhIG5lc3RlZCBhcnJheS4KICAgICAgICAg
ICAgIG1hcHBlZFNhbXBsZXJOYW1lVG9BcnJheU9mZnNldFttYXBwZWRTYW1wbGVyTmFtZV0gKz0g
YXJyYXlTaXplOwogCi0gICAgICAgICAgICBWa1dyaXRlRGVzY3JpcHRvclNldCAqd3JpdGVJbmZv
cyA9IGNvbnRleHRWay0+YWxsb2NXcml0ZURlc2NyaXB0b3JTZXRzKGFycmF5U2l6ZSk7CisgICAg
ICAgICAgICBWa1dyaXRlRGVzY3JpcHRvclNldCAqd3JpdGVJbmZvcyA9IHVwZGF0ZUJ1aWxkZXIt
PmFsbG9jV3JpdGVEZXNjcmlwdG9yU2V0cyhhcnJheVNpemUpOwogCiAgICAgICAgICAgICAvLyBU
ZXh0dXJlIGJ1ZmZlcnMgdXNlIGJ1ZmZlciB2aWV3cywgc28gdGhleSBhcmUgZXNwZWNpYWxseSBo
YW5kbGVkLgogICAgICAgICAgICAgaWYgKHNhbXBsZXJCaW5kaW5nLnRleHR1cmVUeXBlID09IGds
OjpUZXh0dXJlVHlwZTo6QnVmZmVyKQpAQCAtMTgxOSw4ICsxODcxLDcgQEAgYW5nbGU6OlJlc3Vs
dCBQcm9ncmFtRXhlY3V0YWJsZVZrOjp1cGRhdGVUZXh0dXJlc0Rlc2NyaXB0b3JTZXQoCiAgICAg
ICAgICAgICAgICAgICAgIEdMdWludCB0ZXh0dXJlVW5pdCAgICAgICAgID0gc2FtcGxlckJpbmRp
bmcuYm91bmRUZXh0dXJlVW5pdHNbYXJyYXlFbGVtZW50XTsKICAgICAgICAgICAgICAgICAgICAg
VGV4dHVyZVZrICp0ZXh0dXJlVmsgICAgICAgPSBhY3RpdmVUZXh0dXJlc1t0ZXh0dXJlVW5pdF0u
dGV4dHVyZTsKICAgICAgICAgICAgICAgICAgICAgY29uc3Qgdms6OkJ1ZmZlclZpZXcgKnZpZXcg
PSBudWxscHRyOwotICAgICAgICAgICAgICAgICAgICBBTkdMRV9UUlkoCi0gICAgICAgICAgICAg
ICAgICAgICAgICB0ZXh0dXJlVmstPmdldEJ1ZmZlclZpZXdBbmRSZWNvcmRVc2UoY29udGV4dFZr
LCBudWxscHRyLCBmYWxzZSwgJnZpZXcpKTsKKyAgICAgICAgICAgICAgICAgICAgQU5HTEVfVFJZ
KHRleHR1cmVWay0+Z2V0QnVmZmVyVmlld0FuZFJlY29yZFVzZShjb250ZXh0LCBudWxscHRyLCBm
YWxzZSwgJnZpZXcpKTsKIAogICAgICAgICAgICAgICAgICAgICB3cml0ZUluZm9zW2FycmF5RWxl
bWVudF0uc1R5cGUgICAgICA9IFZLX1NUUlVDVFVSRV9UWVBFX1dSSVRFX0RFU0NSSVBUT1JfU0VU
OwogICAgICAgICAgICAgICAgICAgICB3cml0ZUluZm9zW2FycmF5RWxlbWVudF0ucE5leHQgICAg
ICA9IG51bGxwdHI7CkBAIC0xODM3LDcgKzE4ODgsNyBAQCBhbmdsZTo6UmVzdWx0IFByb2dyYW1F
eGVjdXRhYmxlVms6OnVwZGF0ZVRleHR1cmVzRGVzY3JpcHRvclNldCgKICAgICAgICAgICAgICAg
ICBjb250aW51ZTsKICAgICAgICAgICAgIH0KIAotICAgICAgICAgICAgVmtEZXNjcmlwdG9ySW1h
Z2VJbmZvICppbWFnZUluZm9zID0gY29udGV4dFZrLT5hbGxvY0Rlc2NyaXB0b3JJbWFnZUluZm9z
KGFycmF5U2l6ZSk7CisgICAgICAgICAgICBWa0Rlc2NyaXB0b3JJbWFnZUluZm8gKmltYWdlSW5m
b3MgPSB1cGRhdGVCdWlsZGVyLT5hbGxvY0Rlc2NyaXB0b3JJbWFnZUluZm9zKGFycmF5U2l6ZSk7
CiAgICAgICAgICAgICBmb3IgKHVpbnQzMl90IGFycmF5RWxlbWVudCA9IDA7IGFycmF5RWxlbWVu
dCA8IGFycmF5U2l6ZTsgKythcnJheUVsZW1lbnQpCiAgICAgICAgICAgICB7CiAgICAgICAgICAg
ICAgICAgR0x1aW50IHRleHR1cmVVbml0ICAgICAgICAgID0gc2FtcGxlckJpbmRpbmcuYm91bmRU
ZXh0dXJlVW5pdHNbYXJyYXlFbGVtZW50XTsKQEAgLTE4NTQsMTcgKzE5MDUsMTcgQEAgYW5nbGU6
OlJlc3VsdCBQcm9ncmFtRXhlY3V0YWJsZVZrOjp1cGRhdGVUZXh0dXJlc0Rlc2NyaXB0b3JTZXQo
CiAKICAgICAgICAgICAgICAgICBpZiAoZW11bGF0ZVNlYW1mdWxDdWJlTWFwU2FtcGxpbmcpCiAg
ICAgICAgICAgICAgICAgewotICAgICAgICAgICAgICAgICAgICAvLyBJZiBlbXVsYXRpbmcgc2Vh
bWZ1bCBjdWJlbWFwcGluZywgdXNlIHRoZSBmZXRjaCBpbWFnZSB2aWV3LiAgVGhpcyBpcworICAg
ICAgICAgICAgICAgICAgICAvLyBJZiBlbXVsYXRpbmcgc2VhbWZ1bCBjdWJlIG1hcHBpbmcsIHVz
ZSB0aGUgZmV0Y2ggaW1hZ2Ugdmlldy4gIFRoaXMgaXMKICAgICAgICAgICAgICAgICAgICAgLy8g
YmFzaWNhbGx5IHRoZSBzYW1lIGltYWdlIHZpZXcgYXMgcmVhZCwgZXhjZXB0IGl0J3MgYSAyREFy
cmF5IHZpZXcgZm9yCiAgICAgICAgICAgICAgICAgICAgIC8vIGN1YmUgbWFwcy4KLSAgICAgICAg
ICAgICAgICAgICAgY29uc3Qgdms6OkltYWdlVmlldyAmaW1hZ2VWaWV3ID0gdGV4dHVyZVZrLT5n
ZXRGZXRjaEltYWdlVmlld0FuZFJlY29yZFVzZSgKLSAgICAgICAgICAgICAgICAgICAgICAgIGNv
bnRleHRWaywgdW5pdC5zcmdiRGVjb2RlLCBzYW1wbGVyVW5pZm9ybS50ZXhlbEZldGNoU3RhdGlj
VXNlKTsKKyAgICAgICAgICAgICAgICAgICAgY29uc3Qgdms6OkltYWdlVmlldyAmaW1hZ2VWaWV3
ID0gdGV4dHVyZVZrLT5nZXRGZXRjaEltYWdlVmlldygKKyAgICAgICAgICAgICAgICAgICAgICAg
IGNvbnRleHQsIHVuaXQuc3JnYkRlY29kZSwgc2FtcGxlclVuaWZvcm0udGV4ZWxGZXRjaFN0YXRp
Y1VzZSk7CiAgICAgICAgICAgICAgICAgICAgIGltYWdlSW5mb3NbYXJyYXlFbGVtZW50XS5pbWFn
ZVZpZXcgPSBpbWFnZVZpZXcuZ2V0SGFuZGxlKCk7CiAgICAgICAgICAgICAgICAgfQogICAgICAg
ICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgICAgIGNv
bnN0IHZrOjpJbWFnZVZpZXcgJmltYWdlVmlldyA9IHRleHR1cmVWay0+Z2V0UmVhZEltYWdlVmll
d0FuZFJlY29yZFVzZSgKLSAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRleHRWaywgdW5pdC5z
cmdiRGVjb2RlLCBzYW1wbGVyVW5pZm9ybS50ZXhlbEZldGNoU3RhdGljVXNlKTsKKyAgICAgICAg
ICAgICAgICAgICAgY29uc3Qgdms6OkltYWdlVmlldyAmaW1hZ2VWaWV3ID0gdGV4dHVyZVZrLT5n
ZXRSZWFkSW1hZ2VWaWV3KAorICAgICAgICAgICAgICAgICAgICAgICAgY29udGV4dCwgdW5pdC5z
cmdiRGVjb2RlLCBzYW1wbGVyVW5pZm9ybS50ZXhlbEZldGNoU3RhdGljVXNlKTsKICAgICAgICAg
ICAgICAgICAgICAgaW1hZ2VJbmZvc1thcnJheUVsZW1lbnRdLmltYWdlVmlldyA9IGltYWdlVmll
dy5nZXRIYW5kbGUoKTsKICAgICAgICAgICAgICAgICB9CiAKQEAgLTE4OTEsNyArMTk0Miw4IEBA
IGFuZ2xlOjpSZXN1bHQgUHJvZ3JhbUV4ZWN1dGFibGVWazo6dXBkYXRlVGV4dHVyZXNEZXNjcmlw
dG9yU2V0KAogfQogCiB0ZW1wbGF0ZSA8dHlwZW5hbWUgQ29tbWFuZEJ1ZmZlclQ+Ci1hbmdsZTo6
UmVzdWx0IFByb2dyYW1FeGVjdXRhYmxlVms6OnVwZGF0ZURlc2NyaXB0b3JTZXRzKENvbnRleHRW
ayAqY29udGV4dFZrLAorYW5nbGU6OlJlc3VsdCBQcm9ncmFtRXhlY3V0YWJsZVZrOjp1cGRhdGVE
ZXNjcmlwdG9yU2V0cyh2azo6Q29udGV4dCAqY29udGV4dCwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdms6OlJlc291cmNlVXNlTGlzdCAq
cmVzb3VyY2VVc2VMaXN0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBDb21tYW5kQnVmZmVyVCAqY29tbWFuZEJ1ZmZlciwKICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUGlwZWxpbmVU
eXBlIHBpcGVsaW5lVHlwZSkKIHsKQEAgLTE5MjgsNyArMTk4MCw3IEBAIGFuZ2xlOjpSZXN1bHQg
UHJvZ3JhbUV4ZWN1dGFibGVWazo6dXBkYXRlRGVzY3JpcHRvclNldHMoQ29udGV4dFZrICpjb250
ZXh0VmssCiAgICAgICAgIFZrRGVzY3JpcHRvclNldCBkZXNjU2V0ID0gbURlc2NyaXB0b3JTZXRz
W2Rlc2NyaXB0b3JTZXRJbmRleF07CiAgICAgICAgIGlmIChkZXNjU2V0ID09IFZLX05VTExfSEFO
RExFKQogICAgICAgICB7Ci0gICAgICAgICAgICBpZiAoIWNvbnRleHRWay0+Z2V0UmVuZGVyZXIo
KS0+Z2V0RmVhdHVyZXMoKS5iaW5kRW1wdHlGb3JVbnVzZWREZXNjcmlwdG9yU2V0cy5lbmFibGVk
KQorICAgICAgICAgICAgaWYgKCFjb250ZXh0LT5nZXRSZW5kZXJlcigpLT5nZXRGZWF0dXJlcygp
LmJpbmRFbXB0eUZvclVudXNlZERlc2NyaXB0b3JTZXRzLmVuYWJsZWQpCiAgICAgICAgICAgICB7
CiAgICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICB9CkBAIC0xOTQxLDcgKzE5
OTMsOCBAQCBhbmdsZTo6UmVzdWx0IFByb2dyYW1FeGVjdXRhYmxlVms6OnVwZGF0ZURlc2NyaXB0
b3JTZXRzKENvbnRleHRWayAqY29udGV4dFZrLAogICAgICAgICAgICAgICAgICAgICBtRGVzY3Jp
cHRvclNldExheW91dHNbZGVzY3JpcHRvclNldEluZGV4XS5nZXQoKTsKIAogICAgICAgICAgICAg
ICAgIEFOR0xFX1RSWShtRHluYW1pY0Rlc2NyaXB0b3JQb29sc1tkZXNjcmlwdG9yU2V0SW5kZXhd
LmFsbG9jYXRlRGVzY3JpcHRvclNldHMoCi0gICAgICAgICAgICAgICAgICAgIGNvbnRleHRWaywg
ZGVzY3JpcHRvclNldExheW91dCwgMSwgJm1EZXNjcmlwdG9yUG9vbEJpbmRpbmdzW2Rlc2NyaXB0
b3JTZXRJbmRleF0sCisgICAgICAgICAgICAgICAgICAgIGNvbnRleHQsIHJlc291cmNlVXNlTGlz
dCwgZGVzY3JpcHRvclNldExheW91dCwgMSwKKyAgICAgICAgICAgICAgICAgICAgJm1EZXNjcmlw
dG9yUG9vbEJpbmRpbmdzW2Rlc2NyaXB0b3JTZXRJbmRleF0sCiAgICAgICAgICAgICAgICAgICAg
ICZtRW1wdHlEZXNjcmlwdG9yU2V0c1tkZXNjcmlwdG9yU2V0SW5kZXhdKSk7CiAKICAgICAgICAg
ICAgICAgICArK21QZXJmQ291bnRlcnMuZGVzY3JpcHRvclNldEFsbG9jYXRpb25zW2Rlc2NyaXB0
b3JTZXRJbmRleF07CkBAIC0xOTc3LDExICsyMDMwLDEzIEBAIGFuZ2xlOjpSZXN1bHQgUHJvZ3Jh
bUV4ZWN1dGFibGVWazo6dXBkYXRlRGVzY3JpcHRvclNldHMoQ29udGV4dFZrICpjb250ZXh0Vmss
CiB9CiAKIHRlbXBsYXRlIGFuZ2xlOjpSZXN1bHQgUHJvZ3JhbUV4ZWN1dGFibGVWazo6dXBkYXRl
RGVzY3JpcHRvclNldHM8dms6OnByaXY6OlNlY29uZGFyeUNvbW1hbmRCdWZmZXI+KAotICAgIENv
bnRleHRWayAqY29udGV4dFZrLAorICAgIHZrOjpDb250ZXh0ICpjb250ZXh0LAorICAgIHZrOjpS
ZXNvdXJjZVVzZUxpc3QgKnJlc291cmNlVXNlTGlzdCwKICAgICB2azo6cHJpdjo6U2Vjb25kYXJ5
Q29tbWFuZEJ1ZmZlciAqY29tbWFuZEJ1ZmZlciwKICAgICBQaXBlbGluZVR5cGUgcGlwZWxpbmVU
eXBlKTsKIHRlbXBsYXRlIGFuZ2xlOjpSZXN1bHQgUHJvZ3JhbUV4ZWN1dGFibGVWazo6dXBkYXRl
RGVzY3JpcHRvclNldHM8dms6OlZ1bGthblNlY29uZGFyeUNvbW1hbmRCdWZmZXI+KAotICAgIENv
bnRleHRWayAqY29udGV4dFZrLAorICAgIHZrOjpDb250ZXh0ICpjb250ZXh0LAorICAgIHZrOjpS
ZXNvdXJjZVVzZUxpc3QgKnJlc291cmNlVXNlTGlzdCwKICAgICB2azo6VnVsa2FuU2Vjb25kYXJ5
Q29tbWFuZEJ1ZmZlciAqY29tbWFuZEJ1ZmZlciwKICAgICBQaXBlbGluZVR5cGUgcGlwZWxpbmVU
eXBlKTsKIApAQCAtMjAzMCwxNCArMjA4NSwyMiBAQCBQcm9ncmFtRXhlY3V0YWJsZVBlcmZDb3Vu
dGVycyBQcm9ncmFtRXhlY3V0YWJsZVZrOjpnZXRBbmRSZXNldE9iamVjdFBlcmZDb3VudGVycwog
ICAgIG1TaGFkZXJCdWZmZXJEZXNjcmlwdG9yc0NhY2hlLmFjY3VtdWxhdGVDYWNoZVN0YXRzKFZ1
bGthbkNhY2hlVHlwZTo6U2hhZGVyQnVmZmVyc0Rlc2NyaXB0b3JzLAogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMpOwogCisgICAgbVBl
cmZDb3VudGVycy5kZXNjcmlwdG9yU2V0Q2FjaGVLZXlTaXplc0J5dGVzW0Rlc2NyaXB0b3JTZXRJ
bmRleDo6VW5pZm9ybXNBbmRYZmJdID0KKyAgICAgICAgc3RhdGljX2Nhc3Q8dWludDMyX3Q+KG1V
bmlmb3Jtc0FuZFhmYkRlc2NyaXB0b3JzQ2FjaGUuZ2V0VG90YWxDYWNoZUtleVNpemVCeXRlcygp
KTsKKyAgICBtUGVyZkNvdW50ZXJzLmRlc2NyaXB0b3JTZXRDYWNoZUtleVNpemVzQnl0ZXNbRGVz
Y3JpcHRvclNldEluZGV4OjpUZXh0dXJlXSA9CisgICAgICAgIHN0YXRpY19jYXN0PHVpbnQzMl90
PihtVGV4dHVyZURlc2NyaXB0b3JzQ2FjaGUuZ2V0VG90YWxDYWNoZUtleVNpemVCeXRlcygpKTsK
KyAgICBtUGVyZkNvdW50ZXJzLmRlc2NyaXB0b3JTZXRDYWNoZUtleVNpemVzQnl0ZXNbRGVzY3Jp
cHRvclNldEluZGV4OjpTaGFkZXJSZXNvdXJjZV0gPQorICAgICAgICBzdGF0aWNfY2FzdDx1aW50
MzJfdD4obVNoYWRlckJ1ZmZlckRlc2NyaXB0b3JzQ2FjaGUuZ2V0VG90YWxDYWNoZUtleVNpemVC
eXRlcygpKTsKKwogICAgIG1DdW11bGF0aXZlUGVyZkNvdW50ZXJzLmRlc2NyaXB0b3JTZXRBbGxv
Y2F0aW9ucyArPSBtUGVyZkNvdW50ZXJzLmRlc2NyaXB0b3JTZXRBbGxvY2F0aW9uczsKICAgICBt
Q3VtdWxhdGl2ZVBlcmZDb3VudGVycy5kZXNjcmlwdG9yU2V0Q2FjaGVIaXRzICs9IG1QZXJmQ291
bnRlcnMuZGVzY3JpcHRvclNldENhY2hlSGl0czsKICAgICBtQ3VtdWxhdGl2ZVBlcmZDb3VudGVy
cy5kZXNjcmlwdG9yU2V0Q2FjaGVNaXNzZXMgKz0gbVBlcmZDb3VudGVycy5kZXNjcmlwdG9yU2V0
Q2FjaGVNaXNzZXM7CiAKLSAgICBQcm9ncmFtRXhlY3V0YWJsZVBlcmZDb3VudGVycyBjb3VudGVy
cyA9IG1QZXJmQ291bnRlcnM7Ci0gICAgbVBlcmZDb3VudGVycy5kZXNjcmlwdG9yU2V0QWxsb2Nh
dGlvbnMgPSB7fTsKLSAgICBtUGVyZkNvdW50ZXJzLmRlc2NyaXB0b3JTZXRDYWNoZUhpdHMgICA9
IHt9OwotICAgIG1QZXJmQ291bnRlcnMuZGVzY3JpcHRvclNldENhY2hlTWlzc2VzID0ge307Cisg
ICAgUHJvZ3JhbUV4ZWN1dGFibGVQZXJmQ291bnRlcnMgY291bnRlcnMgICAgICAgID0gbVBlcmZD
b3VudGVyczsKKyAgICBtUGVyZkNvdW50ZXJzLmRlc2NyaXB0b3JTZXRBbGxvY2F0aW9ucyAgICAg
ICAgPSB7fTsKKyAgICBtUGVyZkNvdW50ZXJzLmRlc2NyaXB0b3JTZXRDYWNoZUhpdHMgICAgICAg
ICAgPSB7fTsKKyAgICBtUGVyZkNvdW50ZXJzLmRlc2NyaXB0b3JTZXRDYWNoZU1pc3NlcyAgICAg
ICAgPSB7fTsKKyAgICBtUGVyZkNvdW50ZXJzLmRlc2NyaXB0b3JTZXRDYWNoZUtleVNpemVzQnl0
ZXMgPSB7fTsKICAgICByZXR1cm4gY291bnRlcnM7CiB9CiAKQEAgLTIwNjUsOSArMjEyOCwxNCBA
QCB2b2lkIFByb2dyYW1FeGVjdXRhYmxlVms6OnNldEFsbERlZmF1bHRVbmlmb3Jtc0RpcnR5KGNv
bnN0IGdsOjpQcm9ncmFtRXhlY3V0YWJsZQogICAgIH0KIH0KIAotYW5nbGU6OlJlc3VsdCBQcm9n
cmFtRXhlY3V0YWJsZVZrOjp1cGRhdGVVbmlmb3JtcyhDb250ZXh0VmsgKmNvbnRleHRWaywKK2Fu
Z2xlOjpSZXN1bHQgUHJvZ3JhbUV4ZWN1dGFibGVWazo6dXBkYXRlVW5pZm9ybXModms6OkNvbnRl
eHQgKmNvbnRleHQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFVwZGF0ZURlc2NyaXB0b3JTZXRzQnVpbGRlciAqdXBkYXRlQnVpbGRlciwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdms6OlJlc291cmNl
VXNlTGlzdCAqcmVzb3VyY2VVc2VMaXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB2azo6QnVmZmVySGVscGVyICplbXB0eUJ1ZmZlciwKICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZ2w6OlBy
b2dyYW1FeGVjdXRhYmxlICZnbEV4ZWN1dGFibGUsCi0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHZrOjpEeW5hbWljQnVmZmVyICpkZWZhdWx0VW5pZm9y
bVN0b3JhZ2UpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHZrOjpEeW5hbWljQnVmZmVyICpkZWZhdWx0VW5pZm9ybVN0b3JhZ2UsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wgaXNUcmFuc2Zvcm1G
ZWVkYmFja0FjdGl2ZVVucGF1c2VkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBUcmFuc2Zvcm1GZWVkYmFja1ZrICp0cmFuc2Zvcm1GZWVkYmFja1Zr
KQogewogICAgIEFTU0VSVChoYXNEaXJ0eVVuaWZvcm1zKCkpOwogCkBAIC0yMDgxLDcgKzIxNDks
NyBAQCBhbmdsZTo6UmVzdWx0IFByb2dyYW1FeGVjdXRhYmxlVms6OnVwZGF0ZVVuaWZvcm1zKENv
bnRleHRWayAqY29udGV4dFZrLAogICAgIC8vIGJ1ZmZlciBmb3IgdW5pZm9ybSBkYXRhIGhhdmUg
c3dpdGNoZWQsIGJlY2F1c2UgYWxsIHNoYWRlciBzdGFnZXMgYXJlIHVzaW5nIHRoZSBzYW1lIGJ1
ZmZlciwKICAgICAvLyB3ZSB0aGVuIG11c3QgdXBkYXRlIHVuaWZvcm0gZGF0YSBmb3IgYWxsIHNo
YWRlciBzdGFnZXMgdG8ga2VlcCBhbGwgc2hhZGVyIHN0YWdlcycgdW5pZm9ybQogICAgIC8vIGRh
dGEgaW4gdGhlIHNhbWUgYnVmZmVyLgotICAgIHJlcXVpcmVkU3BhY2UgPSBjYWxjVW5pZm9ybVVw
ZGF0ZVJlcXVpcmVkU3BhY2UoY29udGV4dFZrLCBnbEV4ZWN1dGFibGUsICZvZmZzZXRzKTsKKyAg
ICByZXF1aXJlZFNwYWNlID0gY2FsY1VuaWZvcm1VcGRhdGVSZXF1aXJlZFNwYWNlKGNvbnRleHQs
IGdsRXhlY3V0YWJsZSwgJm9mZnNldHMpOwogICAgIEFTU0VSVChyZXF1aXJlZFNwYWNlID4gMCk7
CiAKICAgICAvLyBBbGxvY2F0ZSBzcGFjZSBmcm9tIGR5bmFtaWNCdWZmZXIuIEFsd2F5cyB0cnkg
dG8gYWxsb2NhdGUgZnJvbSB0aGUgY3VycmVudCBidWZmZXIgZmlyc3QuCkBAIC0yMDkwLDE0ICsy
MTU4LDE0IEBAIGFuZ2xlOjpSZXN1bHQgUHJvZ3JhbUV4ZWN1dGFibGVWazo6dXBkYXRlVW5pZm9y
bXMoQ29udGV4dFZrICpjb250ZXh0VmssCiAgICAgewogICAgICAgICBzZXRBbGxEZWZhdWx0VW5p
Zm9ybXNEaXJ0eShnbEV4ZWN1dGFibGUpOwogCi0gICAgICAgIHJlcXVpcmVkU3BhY2UgPSBjYWxj
VW5pZm9ybVVwZGF0ZVJlcXVpcmVkU3BhY2UoY29udGV4dFZrLCBnbEV4ZWN1dGFibGUsICZvZmZz
ZXRzKTsKLSAgICAgICAgQU5HTEVfVFJZKGRlZmF1bHRVbmlmb3JtU3RvcmFnZS0+YWxsb2NhdGUo
Y29udGV4dFZrLCByZXF1aXJlZFNwYWNlLCAmZGVmYXVsdFVuaWZvcm1CdWZmZXIsCisgICAgICAg
IHJlcXVpcmVkU3BhY2UgPSBjYWxjVW5pZm9ybVVwZGF0ZVJlcXVpcmVkU3BhY2UoY29udGV4dCwg
Z2xFeGVjdXRhYmxlLCAmb2Zmc2V0cyk7CisgICAgICAgIEFOR0xFX1RSWShkZWZhdWx0VW5pZm9y
bVN0b3JhZ2UtPmFsbG9jYXRlKGNvbnRleHQsIHJlcXVpcmVkU3BhY2UsICZkZWZhdWx0VW5pZm9y
bUJ1ZmZlciwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgJmFueU5ld0J1ZmZlckFsbG9jYXRlZCkpOwogICAgIH0KIAogICAgIHVpbnQ4X3QgKmJ1ZmZl
ckRhdGEgICAgICAgPSBkZWZhdWx0VW5pZm9ybUJ1ZmZlci0+Z2V0TWFwcGVkTWVtb3J5KCk7CiAg
ICAgVmtEZXZpY2VTaXplIGJ1ZmZlck9mZnNldCA9IGRlZmF1bHRVbmlmb3JtQnVmZmVyLT5nZXRP
ZmZzZXQoKTsKLSAgICBmb3IgKGNvbnN0IGdsOjpTaGFkZXJUeXBlIHNoYWRlclR5cGUgOiBnbEV4
ZWN1dGFibGUuZ2V0TGlua2VkU2hhZGVyU3RhZ2VzKCkpCisgICAgZm9yIChnbDo6U2hhZGVyVHlw
ZSBzaGFkZXJUeXBlIDogZ2xFeGVjdXRhYmxlLmdldExpbmtlZFNoYWRlclN0YWdlcygpKQogICAg
IHsKICAgICAgICAgaWYgKG1EZWZhdWx0VW5pZm9ybUJsb2Nrc0RpcnR5W3NoYWRlclR5cGVdKQog
ICAgICAgICB7CkBAIC0yMTA5LDcgKzIxNzcsNyBAQCBhbmdsZTo6UmVzdWx0IFByb2dyYW1FeGVj
dXRhYmxlVms6OnVwZGF0ZVVuaWZvcm1zKENvbnRleHRWayAqY29udGV4dFZrLAogICAgICAgICB9
CiAgICAgICAgICsrb2Zmc2V0SW5kZXg7CiAgICAgfQotICAgIEFOR0xFX1RSWShkZWZhdWx0VW5p
Zm9ybUJ1ZmZlci0+Zmx1c2goY29udGV4dFZrLT5nZXRSZW5kZXJlcigpKSk7CisgICAgQU5HTEVf
VFJZKGRlZmF1bHRVbmlmb3JtQnVmZmVyLT5mbHVzaChjb250ZXh0LT5nZXRSZW5kZXJlcigpKSk7
CiAKICAgICAvLyBCZWNhdXNlIHRoZSB1bmlmb3JtIGJ1ZmZlcnMgYXJlIHBlciBjb250ZXh0LCB3
ZSBjYW4ndCByZWx5IG9uIGR5bmFtaWNCdWZmZXIncyBhbGxvY2F0ZQogICAgIC8vIGZ1bmN0aW9u
IHRvIHRlbGwgdXMgaWYgeW91IGhhdmUgZ290IGEgbmV3IGJ1ZmZlciBvciBub3QuIE90aGVyIHBy
b2dyYW0ncyB1c2Ugb2YgdGhlIGJ1ZmZlcgpAQCAtMjEyNyw4ICsyMTk1LDYgQEAgYW5nbGU6OlJl
c3VsdCBQcm9ncmFtRXhlY3V0YWJsZVZrOjp1cGRhdGVVbmlmb3JtcyhDb250ZXh0VmsgKmNvbnRl
eHRWaywKIAogICAgICAgICBpZiAoZ2xFeGVjdXRhYmxlLmhhc1RyYW5zZm9ybUZlZWRiYWNrT3V0
cHV0KCkpCiAgICAgICAgIHsKLSAgICAgICAgICAgIFRyYW5zZm9ybUZlZWRiYWNrVmsgKnRyYW5z
Zm9ybUZlZWRiYWNrVmsgPQotICAgICAgICAgICAgICAgIHZrOjpHZXRJbXBsKGNvbnRleHRWay0+
Z2V0U3RhdGUoKS5nZXRDdXJyZW50VHJhbnNmb3JtRmVlZGJhY2soKSk7CiAgICAgICAgICAgICB1
bmlmb3Jtc0FuZFhmYkJ1ZmZlckRlc2MgPSAmdHJhbnNmb3JtRmVlZGJhY2tWay0+Z2V0VHJhbnNm
b3JtRmVlZGJhY2tEZXNjKCk7CiAgICAgICAgICAgICB1bmlmb3Jtc0FuZFhmYkJ1ZmZlckRlc2Mt
PnVwZGF0ZURlZmF1bHRVbmlmb3JtQnVmZmVyKAogICAgICAgICAgICAgICAgIGRlZmF1bHRVbmlm
b3JtQnVmZmVyLT5nZXRCdWZmZXJTZXJpYWwoKSk7CkBAIC0yMTQwLDE4ICsyMjA2LDIwIEBAIGFu
Z2xlOjpSZXN1bHQgUHJvZ3JhbUV4ZWN1dGFibGVWazo6dXBkYXRlVW5pZm9ybXMoQ29udGV4dFZr
ICpjb250ZXh0VmssCiAgICAgICAgIH0KIAogICAgICAgICBib29sIG5ld0Rlc2NyaXB0b3JTZXRB
bGxvY2F0ZWQ7Ci0gICAgICAgIEFOR0xFX1RSWShhbGxvY1VuaWZvcm1BbmRYZmJEZXNjcmlwdG9y
U2V0KGNvbnRleHRWaywgZGVmYXVsdFVuaWZvcm1CdWZmZXIsCisgICAgICAgIEFOR0xFX1RSWShh
bGxvY1VuaWZvcm1BbmRYZmJEZXNjcmlwdG9yU2V0KGNvbnRleHQsIHJlc291cmNlVXNlTGlzdCwg
ZGVmYXVsdFVuaWZvcm1CdWZmZXIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICp1bmlmb3Jtc0FuZFhmYkJ1ZmZlckRlc2MsCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZuZXdEZXNjcmlwdG9yU2V0QWxs
b2NhdGVkKSk7CiAKICAgICAgICAgaWYgKG5ld0Rlc2NyaXB0b3JTZXRBbGxvY2F0ZWQpCiAgICAg
ICAgIHsKLSAgICAgICAgICAgIGZvciAoY29uc3QgZ2w6OlNoYWRlclR5cGUgc2hhZGVyVHlwZSA6
IGdsRXhlY3V0YWJsZS5nZXRMaW5rZWRTaGFkZXJTdGFnZXMoKSkKKyAgICAgICAgICAgIGZvciAo
Z2w6OlNoYWRlclR5cGUgc2hhZGVyVHlwZSA6IGdsRXhlY3V0YWJsZS5nZXRMaW5rZWRTaGFkZXJT
dGFnZXMoKSkKICAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICB1cGRhdGVEZWZhdWx0VW5p
Zm9ybXNEZXNjcmlwdG9yU2V0KGNvbnRleHRWaywgc2hhZGVyVHlwZSwKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICptRGVmYXVsdFVuaWZvcm1CbG9j
a3Nbc2hhZGVyVHlwZV0sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBkZWZhdWx0VW5pZm9ybUJ1ZmZlcik7Ci0gICAgICAgICAgICAgICAgdXBkYXRl
VHJhbnNmb3JtRmVlZGJhY2tEZXNjcmlwdG9yU2V0SW1wbChjb250ZXh0VmssIGdsRXhlY3V0YWJs
ZSk7CisgICAgICAgICAgICAgICAgdXBkYXRlRGVmYXVsdFVuaWZvcm1zRGVzY3JpcHRvclNldCgK
KyAgICAgICAgICAgICAgICAgICAgY29udGV4dCwgdXBkYXRlQnVpbGRlciwgZW1wdHlCdWZmZXIs
IHJlc291cmNlVXNlTGlzdCwgc2hhZGVyVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgKm1EZWZh
dWx0VW5pZm9ybUJsb2Nrc1tzaGFkZXJUeXBlXSwgZGVmYXVsdFVuaWZvcm1CdWZmZXIpOworICAg
ICAgICAgICAgICAgIHVwZGF0ZVRyYW5zZm9ybUZlZWRiYWNrRGVzY3JpcHRvclNldEltcGwoCisg
ICAgICAgICAgICAgICAgICAgIGNvbnRleHQsIHVwZGF0ZUJ1aWxkZXIsIGVtcHR5QnVmZmVyLCBn
bEV4ZWN1dGFibGUsCisgICAgICAgICAgICAgICAgICAgIGlzVHJhbnNmb3JtRmVlZGJhY2tBY3Rp
dmVVbnBhdXNlZCwgdHJhbnNmb3JtRmVlZGJhY2tWayk7CiAgICAgICAgICAgICB9CiAgICAgICAg
IH0KICAgICB9CkBAIC0yMTYwLDE3ICsyMjI4LDE3IEBAIGFuZ2xlOjpSZXN1bHQgUHJvZ3JhbUV4
ZWN1dGFibGVWazo6dXBkYXRlVW5pZm9ybXMoQ29udGV4dFZrICpjb250ZXh0VmssCiB9CiAKIHNp
emVfdCBQcm9ncmFtRXhlY3V0YWJsZVZrOjpjYWxjVW5pZm9ybVVwZGF0ZVJlcXVpcmVkU3BhY2Uo
Ci0gICAgQ29udGV4dFZrICpjb250ZXh0VmssCisgICAgdms6OkNvbnRleHQgKmNvbnRleHQsCiAg
ICAgY29uc3QgZ2w6OlByb2dyYW1FeGVjdXRhYmxlICZnbEV4ZWN1dGFibGUsCiAgICAgZ2w6OlNo
YWRlck1hcDxWa0RldmljZVNpemU+ICp1bmlmb3JtT2Zmc2V0cykgY29uc3QKIHsKICAgICBzaXpl
X3QgcmVxdWlyZWRTcGFjZSA9IDA7Ci0gICAgZm9yIChjb25zdCBnbDo6U2hhZGVyVHlwZSBzaGFk
ZXJUeXBlIDogZ2xFeGVjdXRhYmxlLmdldExpbmtlZFNoYWRlclN0YWdlcygpKQorICAgIGZvciAo
Z2w6OlNoYWRlclR5cGUgc2hhZGVyVHlwZSA6IGdsRXhlY3V0YWJsZS5nZXRMaW5rZWRTaGFkZXJT
dGFnZXMoKSkKICAgICB7CiAgICAgICAgIGlmIChtRGVmYXVsdFVuaWZvcm1CbG9ja3NEaXJ0eVtz
aGFkZXJUeXBlXSkKICAgICAgICAgewogICAgICAgICAgICAgKCp1bmlmb3JtT2Zmc2V0cylbc2hh
ZGVyVHlwZV0gPSByZXF1aXJlZFNwYWNlOwotICAgICAgICAgICAgcmVxdWlyZWRTcGFjZSArPSBn
ZXREZWZhdWx0VW5pZm9ybUFsaWduZWRTaXplKGNvbnRleHRWaywgc2hhZGVyVHlwZSk7CisgICAg
ICAgICAgICByZXF1aXJlZFNwYWNlICs9IGdldERlZmF1bHRVbmlmb3JtQWxpZ25lZFNpemUoY29u
dGV4dCwgc2hhZGVyVHlwZSk7CiAgICAgICAgIH0KICAgICB9CiAgICAgcmV0dXJuIHJlcXVpcmVk
U3BhY2U7CkBAIC0yMTkxLDcgKzIyNTksNyBAQCBhbmdsZTo6UmVzdWx0IFByb2dyYW1FeGVjdXRh
YmxlVms6OnJlc2l6ZVVuaWZvcm1CbG9ja01lbW9yeSgKICAgICBjb25zdCBnbDo6UHJvZ3JhbUV4
ZWN1dGFibGUgJmdsRXhlY3V0YWJsZSwKICAgICBjb25zdCBnbDo6U2hhZGVyTWFwPHNpemVfdD4g
JnJlcXVpcmVkQnVmZmVyU2l6ZSkKIHsKLSAgICBmb3IgKGNvbnN0IGdsOjpTaGFkZXJUeXBlIHNo
YWRlclR5cGUgOiBnbEV4ZWN1dGFibGUuZ2V0TGlua2VkU2hhZGVyU3RhZ2VzKCkpCisgICAgZm9y
IChnbDo6U2hhZGVyVHlwZSBzaGFkZXJUeXBlIDogZ2xFeGVjdXRhYmxlLmdldExpbmtlZFNoYWRl
clN0YWdlcygpKQogICAgIHsKICAgICAgICAgaWYgKHJlcXVpcmVkQnVmZmVyU2l6ZVtzaGFkZXJU
eXBlXSA+IDApCiAgICAgICAgIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vUHJvZ3JhbUV4ZWN1dGFibGVWay5oIGIvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9Qcm9ncmFt
RXhlY3V0YWJsZVZrLmgKaW5kZXggNTViZTA0ODhmYzY2ZmZhZTM3Yzc4NzRlMjE4MWIzZjUyNGQ1
YTQ3NC4uOTkxMDg2MjJiOWMyNWVmZGI3ZGFiNzJmNzAxZTgzZjlmYzkxZGI3OCAxMDA2NDQKLS0t
IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9Q
cm9ncmFtRXhlY3V0YWJsZVZrLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xp
YkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9Qcm9ncmFtRXhlY3V0YWJsZVZrLmgKQEAgLTY5LDcgKzY5
LDcgQEAgY2xhc3MgUHJvZ3JhbUluZm8gZmluYWwgOiBhbmdsZTo6Tm9uQ29weWFibGUKICAgICB+
UHJvZ3JhbUluZm8oKTsKIAogICAgIGFuZ2xlOjpSZXN1bHQgaW5pdFByb2dyYW0oQ29udGV4dFZr
ICpjb250ZXh0VmssCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBnbDo6U2hh
ZGVyVHlwZSBzaGFkZXJUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2w6OlNo
YWRlclR5cGUgc2hhZGVyVHlwZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wg
aXNMYXN0UHJlRnJhZ21lbnRTdGFnZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJv
b2wgaXNUcmFuc2Zvcm1GZWVkYmFja1Byb2dyYW0sCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBjb25zdCBTaGFkZXJJbmZvICZzaGFkZXJJbmZvLApAQCAtNzcsNyArNzcsNyBAQCBjbGFz
cyBQcm9ncmFtSW5mbyBmaW5hbCA6IGFuZ2xlOjpOb25Db3B5YWJsZQogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgY29uc3QgU2hhZGVySW50ZXJmYWNlVmFyaWFibGVJbmZvTWFwICZ2YXJp
YWJsZUluZm9NYXApOwogICAgIHZvaWQgcmVsZWFzZShDb250ZXh0VmsgKmNvbnRleHRWayk7CiAK
LSAgICBBTkdMRV9JTkxJTkUgYm9vbCB2YWxpZChjb25zdCBnbDo6U2hhZGVyVHlwZSBzaGFkZXJU
eXBlKSBjb25zdAorICAgIEFOR0xFX0lOTElORSBib29sIHZhbGlkKGdsOjpTaGFkZXJUeXBlIHNo
YWRlclR5cGUpIGNvbnN0CiAgICAgewogICAgICAgICByZXR1cm4gbVByb2dyYW1IZWxwZXIudmFs
aWQoc2hhZGVyVHlwZSk7CiAgICAgfQpAQCAtMTEzLDYgKzExMyw3IEBAIHN0cnVjdCBQcm9ncmFt
RXhlY3V0YWJsZVBlcmZDb3VudGVycwogICAgIERlc2NyaXB0b3JTZXRDb3VudExpc3QgZGVzY3Jp
cHRvclNldENhY2hlSGl0czsKICAgICBEZXNjcmlwdG9yU2V0Q291bnRMaXN0IGRlc2NyaXB0b3JT
ZXRDYWNoZU1pc3NlczsKICAgICBEZXNjcmlwdG9yU2V0Q291bnRMaXN0IGRlc2NyaXB0b3JTZXRD
YWNoZVNpemVzOworICAgIERlc2NyaXB0b3JTZXRDb3VudExpc3QgZGVzY3JpcHRvclNldENhY2hl
S2V5U2l6ZXNCeXRlczsKIH07CiAKIHVzaW5nIERlZmF1bHRVbmlmb3JtQmxvY2tNYXAgPSBnbDo6
U2hhZGVyTWFwPHN0ZDo6c2hhcmVkX3B0cjxEZWZhdWx0VW5pZm9ybUJsb2NrPj47CkBAIC0xNDcs
NiArMTQ4LDcgQEAgY2xhc3MgUHJvZ3JhbUV4ZWN1dGFibGVWawogICAgIGFuZ2xlOjpSZXN1bHQg
Z2V0R3JhcGhpY3NQaXBlbGluZShDb250ZXh0VmsgKmNvbnRleHRWaywKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgZ2w6OlByaW1pdGl2ZU1vZGUgbW9kZSwKICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgdms6OkdyYXBoaWNzUGlwZWxpbmVE
ZXNjICZkZXNjLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBn
bDo6UHJvZ3JhbUV4ZWN1dGFibGUgJmdsRXhlY3V0YWJsZSwKICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgY29uc3Qgdms6OkdyYXBoaWNzUGlwZWxpbmVEZXNjICoqZGVzY1B0
ck91dCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdms6OlBpcGVsaW5l
SGVscGVyICoqcGlwZWxpbmVPdXQpOwogCkBAIC0xNTcsMjMgKzE1OSw0MSBAQCBjbGFzcyBQcm9n
cmFtRXhlY3V0YWJsZVZrCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBj
b25zdCBnbDo6UHJvZ3JhbUV4ZWN1dGFibGUgJmdsRXhlY3V0YWJsZSwKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGdsOjpBY3RpdmVUZXh0dXJlQXJyYXk8dms6OlRleHR1
cmVVbml0PiAqYWN0aXZlVGV4dHVyZXMpOwogCi0gICAgYW5nbGU6OlJlc3VsdCB1cGRhdGVUZXh0
dXJlc0Rlc2NyaXB0b3JTZXQoQ29udGV4dFZrICpjb250ZXh0VmssCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgdms6OkRlc2NyaXB0b3JTZXREZXNj
ICZ0ZXh0dXJlc0Rlc2MpOworICAgIGFuZ2xlOjpSZXN1bHQgdXBkYXRlVGV4dHVyZXNEZXNjcmlw
dG9yU2V0KAorICAgICAgICB2azo6Q29udGV4dCAqY29udGV4dCwKKyAgICAgICAgVXBkYXRlRGVz
Y3JpcHRvclNldHNCdWlsZGVyICp1cGRhdGVCdWlsZGVyLAorICAgICAgICB2azo6UmVzb3VyY2VV
c2VMaXN0ICpyZXNvdXJjZVVzZUxpc3QsCisgICAgICAgIGNvbnN0IGdsOjpQcm9ncmFtRXhlY3V0
YWJsZSAmZXhlY3V0YWJsZSwKKyAgICAgICAgY29uc3QgZ2w6OkFjdGl2ZVRleHR1cmVBcnJheTx2
azo6VGV4dHVyZVVuaXQ+ICZhY3RpdmVUZXh0dXJlcywKKyAgICAgICAgY29uc3Qgdms6OkRlc2Ny
aXB0b3JTZXREZXNjICZ0ZXh0dXJlc0Rlc2MsCisgICAgICAgIGJvb2wgZW11bGF0ZVNlYW1mdWxD
dWJlTWFwU2FtcGxpbmcpOwogICAgIGFuZ2xlOjpSZXN1bHQgdXBkYXRlU2hhZGVyUmVzb3VyY2Vz
RGVzY3JpcHRvclNldCgKICAgICAgICAgQ29udGV4dFZrICpjb250ZXh0VmssCisgICAgICAgIGNv
bnN0IGdsOjpQcm9ncmFtRXhlY3V0YWJsZSAqZXhlY3V0YWJsZSwKKyAgICAgICAgVXBkYXRlRGVz
Y3JpcHRvclNldHNCdWlsZGVyICp1cGRhdGVCdWlsZGVyLAorICAgICAgICB2azo6QnVmZmVySGVs
cGVyICplbXB0eUJ1ZmZlciwKKyAgICAgICAgdms6OlJlc291cmNlVXNlTGlzdCAqcmVzb3VyY2VV
c2VMaXN0LAogICAgICAgICBGcmFtZWJ1ZmZlclZrICpmcmFtZWJ1ZmZlclZrLAogICAgICAgICBj
b25zdCB2azo6RGVzY3JpcHRvclNldERlc2MgJnNoYWRlckJ1ZmZlcnNEZXNjKTsKLSAgICBhbmds
ZTo6UmVzdWx0IHVwZGF0ZVRyYW5zZm9ybUZlZWRiYWNrRGVzY3JpcHRvclNldChDb250ZXh0Vmsg
KmNvbnRleHRWaywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBjb25zdCBnbDo6UHJvZ3JhbUV4ZWN1dGFibGUgJmV4ZWN1dGFibGUsCi0gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdms6OkJ1
ZmZlckhlbHBlciAqZGVmYXVsdFVuaWZvcm1CdWZmZXIsCi0gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgdms6OkRlc2NyaXB0b3JTZXRE
ZXNjICZ4ZmJCdWZmZXJEZXNjKTsKLSAgICBhbmdsZTo6UmVzdWx0IHVwZGF0ZUlucHV0QXR0YWNo
bWVudERlc2NyaXB0b3JTZXQoY29uc3QgZ2w6OlByb2dyYW1FeGVjdXRhYmxlICZleGVjdXRhYmxl
LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBj
b25zdCBnbDo6U2hhZGVyVHlwZSBzaGFkZXJUeXBlLAotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDb250ZXh0VmsgKmNvbnRleHRWaywKKyAgICBh
bmdsZTo6UmVzdWx0IHVwZGF0ZVVuaWZvcm1zQW5kWGZiRGVzY3JpcHRvclNldCh2azo6Q29udGV4
dCAqY29udGV4dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBVcGRhdGVEZXNjcmlwdG9yU2V0c0J1aWxkZXIgKnVwZGF0ZUJ1aWxkZXIsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdms6OlJlc291
cmNlVXNlTGlzdCAqcmVzb3VyY2VVc2VMaXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHZrOjpCdWZmZXJIZWxwZXIgKmVtcHR5QnVmZmVyLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0
IGdsOjpQcm9ncmFtRXhlY3V0YWJsZSAmZXhlY3V0YWJsZSwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2azo6QnVmZmVySGVscGVyICpkZWZhdWx0
VW5pZm9ybUJ1ZmZlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBjb25zdCB2azo6RGVzY3JpcHRvclNldERlc2MgJnVuaWZvcm1zQW5kWGZiRGVz
YywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBi
b29sIGlzVHJhbnNmb3JtRmVlZGJhY2tBY3RpdmVVbnBhdXNlZCwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUcmFuc2Zvcm1GZWVkYmFja1ZrICp0
cmFuc2Zvcm1GZWVkYmFja1ZrKTsKKyAgICBhbmdsZTo6UmVzdWx0IHVwZGF0ZUlucHV0QXR0YWNo
bWVudERlc2NyaXB0b3JTZXQodms6OkNvbnRleHQgKmNvbnRleHQsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZrOjpSZXNvdXJjZVVzZUxpc3Qg
KnJlc291cmNlVXNlTGlzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgVXBkYXRlRGVzY3JpcHRvclNldHNCdWlsZGVyICp1cGRhdGVCdWlsZGVy
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBj
b25zdCBnbDo6UHJvZ3JhbUV4ZWN1dGFibGUgJmV4ZWN1dGFibGUsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdsOjpTaGFkZXJUeXBlIHNoYWRl
clR5cGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIEZyYW1lYnVmZmVyVmsgKmZyYW1lYnVmZmVyVmspOwogCiAgICAgdGVtcGxhdGUgPHR5cGVu
YW1lIENvbW1hbmRCdWZmZXJUPgotICAgIGFuZ2xlOjpSZXN1bHQgdXBkYXRlRGVzY3JpcHRvclNl
dHMoQ29udGV4dFZrICpjb250ZXh0VmssCisgICAgYW5nbGU6OlJlc3VsdCB1cGRhdGVEZXNjcmlw
dG9yU2V0cyh2azo6Q29udGV4dCAqY29udGV4dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHZrOjpSZXNvdXJjZVVzZUxpc3QgKnJlc291cmNlVXNlTGlzdCwKICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENvbW1hbmRCdWZmZXJUICpjb21tYW5k
QnVmZmVyLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUGlwZWxpbmVU
eXBlIHBpcGVsaW5lVHlwZSk7CiAKQEAgLTE5Niw3ICsyMTYsNyBAQCBjbGFzcyBQcm9ncmFtRXhl
Y3V0YWJsZVZrCiAgICAgdm9pZCBhY2N1bXVsYXRlQ2FjaGVTdGF0cyhWdWxrYW5DYWNoZVR5cGUg
Y2FjaGVUeXBlLCBjb25zdCBDYWNoZVN0YXRzICZjYWNoZVN0YXRzKTsKICAgICBQcm9ncmFtRXhl
Y3V0YWJsZVBlcmZDb3VudGVycyBnZXRBbmRSZXNldE9iamVjdFBlcmZDb3VudGVycygpOwogCi0g
ICAgc2l6ZV90IGdldERlZmF1bHRVbmlmb3JtQWxpZ25lZFNpemUodms6OkNvbnRleHQgKmNvbnRl
eHQsIGNvbnN0IGdsOjpTaGFkZXJUeXBlIHNoYWRlclR5cGUpIGNvbnN0CisgICAgc2l6ZV90IGdl
dERlZmF1bHRVbmlmb3JtQWxpZ25lZFNpemUodms6OkNvbnRleHQgKmNvbnRleHQsIGdsOjpTaGFk
ZXJUeXBlIHNoYWRlclR5cGUpIGNvbnN0CiAgICAgewogICAgICAgICBSZW5kZXJlclZrICpyZW5k
ZXJlciA9IGNvbnRleHQtPmdldFJlbmRlcmVyKCk7CiAgICAgICAgIHNpemVfdCBhbGlnbm1lbnQg
ICAgID0gc3RhdGljX2Nhc3Q8c2l6ZV90PigKQEAgLTIxMiwzNyArMjMyLDQ1IEBAIGNsYXNzIFBy
b2dyYW1FeGVjdXRhYmxlVmsKICAgICBib29sIGhhc0RpcnR5VW5pZm9ybXMoKSBjb25zdCB7IHJl
dHVybiBtRGVmYXVsdFVuaWZvcm1CbG9ja3NEaXJ0eS5hbnkoKTsgfQogCiAgICAgdm9pZCBzZXRB
bGxEZWZhdWx0VW5pZm9ybXNEaXJ0eShjb25zdCBnbDo6UHJvZ3JhbUV4ZWN1dGFibGUgJmV4ZWN1
dGFibGUpOwotICAgIGFuZ2xlOjpSZXN1bHQgdXBkYXRlVW5pZm9ybXMoQ29udGV4dFZrICpjb250
ZXh0VmssCisgICAgYW5nbGU6OlJlc3VsdCB1cGRhdGVVbmlmb3Jtcyh2azo6Q29udGV4dCAqY29u
dGV4dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFVwZGF0ZURlc2NyaXB0b3JT
ZXRzQnVpbGRlciAqdXBkYXRlQnVpbGRlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHZrOjpSZXNvdXJjZVVzZUxpc3QgKnJlc291cmNlVXNlTGlzdCwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHZrOjpCdWZmZXJIZWxwZXIgKmVtcHR5QnVmZmVyLAogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZ2w6OlByb2dyYW1FeGVjdXRhYmxlICZn
bEV4ZWN1dGFibGUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2azo6RHluYW1p
Y0J1ZmZlciAqZGVmYXVsdFVuaWZvcm1TdG9yYWdlKTsKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHZrOjpEeW5hbWljQnVmZmVyICpkZWZhdWx0VW5pZm9ybVN0b3JhZ2UsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sIGlzVHJhbnNmb3JtRmVlZGJhY2tBY3Rp
dmVVbnBhdXNlZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRyYW5zZm9ybUZl
ZWRiYWNrVmsgKnRyYW5zZm9ybUZlZWRiYWNrVmspOwogICAgIHZvaWQgb25Qcm9ncmFtQmluZChj
b25zdCBnbDo6UHJvZ3JhbUV4ZWN1dGFibGUgJmdsRXhlY3V0YWJsZSk7CiAKICAgcHJpdmF0ZToK
ICAgICBmcmllbmQgY2xhc3MgUHJvZ3JhbVZrOwogICAgIGZyaWVuZCBjbGFzcyBQcm9ncmFtUGlw
ZWxpbmVWazsKIAotICAgIGFuZ2xlOjpSZXN1bHQgYWxsb2NVbmlmb3JtQW5kWGZiRGVzY3JpcHRv
clNldChDb250ZXh0VmsgKmNvbnRleHRWaywKKyAgICBhbmdsZTo6UmVzdWx0IGFsbG9jVW5pZm9y
bUFuZFhmYkRlc2NyaXB0b3JTZXQodms6OkNvbnRleHQgKmNvbnRleHQsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZrOjpSZXNvdXJjZVVzZUxpc3Qg
KnJlc291cmNlVXNlTGlzdCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgdms6OkJ1ZmZlckhlbHBlciAqZGVmYXVsdFVuaWZvcm1CdWZmZXIsCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHZrOjpE
ZXNjcmlwdG9yU2V0RGVzYyAmeGZiQnVmZmVyRGVzYywKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCAqbmV3RGVzY3JpcHRvclNldEFsbG9jYXRl
ZCk7CiAKLSAgICBhbmdsZTo6UmVzdWx0IGFsbG9jYXRlRGVzY3JpcHRvclNldChDb250ZXh0Vmsg
KmNvbnRleHRWaywKKyAgICBhbmdsZTo6UmVzdWx0IGFsbG9jYXRlRGVzY3JpcHRvclNldCh2azo6
Q29udGV4dCAqY29udGV4dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICB2azo6UmVzb3VyY2VVc2VMaXN0ICpyZXNvdXJjZVVzZUxpc3QsCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgRGVzY3JpcHRvclNldEluZGV4IGRlc2NyaXB0b3JTZXRJ
bmRleCk7Ci0gICAgYW5nbGU6OlJlc3VsdCBhbGxvY2F0ZURlc2NyaXB0b3JTZXRBbmRHZXRJbmZv
KENvbnRleHRWayAqY29udGV4dFZrLAorICAgIGFuZ2xlOjpSZXN1bHQgYWxsb2NhdGVEZXNjcmlw
dG9yU2V0QW5kR2V0SW5mbyh2azo6Q29udGV4dCAqY29udGV4dCwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdms6OlJlc291cmNlVXNlTGlzdCAqcmVz
b3VyY2VVc2VMaXN0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBEZXNjcmlwdG9yU2V0SW5kZXggZGVzY3JpcHRvclNldEluZGV4LAogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sICpuZXdQb29sQWxs
b2NhdGVkT3V0KTsKICAgICB2b2lkIGFkZEludGVyZmFjZUJsb2NrRGVzY3JpcHRvclNldERlc2Mo
Y29uc3Qgc3RkOjp2ZWN0b3I8Z2w6OkludGVyZmFjZUJsb2NrPiAmYmxvY2tzLAotICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBnbDo6U2hhZGVyVHlwZSBz
aGFkZXJUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBn
bDo6U2hhZGVyVHlwZSBzaGFkZXJUeXBlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBWa0Rlc2NyaXB0b3JUeXBlIGRlc2NUeXBlLAogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2azo6RGVzY3JpcHRvclNldExheW91dERlc2Mg
KmRlc2NPdXQpOwogICAgIHZvaWQgYWRkQXRvbWljQ291bnRlckJ1ZmZlckRlc2NyaXB0b3JTZXRE
ZXNjKAogICAgICAgICBjb25zdCBzdGQ6OnZlY3RvcjxnbDo6QXRvbWljQ291bnRlckJ1ZmZlcj4g
JmF0b21pY0NvdW50ZXJCdWZmZXJzLAotICAgICAgICBjb25zdCBnbDo6U2hhZGVyVHlwZSBzaGFk
ZXJUeXBlLAorICAgICAgICBnbDo6U2hhZGVyVHlwZSBzaGFkZXJUeXBlLAogICAgICAgICB2azo6
RGVzY3JpcHRvclNldExheW91dERlc2MgKmRlc2NPdXQpOwogICAgIHZvaWQgYWRkSW1hZ2VEZXNj
cmlwdG9yU2V0RGVzYyhjb25zdCBnbDo6UHJvZ3JhbUV4ZWN1dGFibGUgJmV4ZWN1dGFibGUsCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZrOjpEZXNjcmlwdG9yU2V0TGF5b3V0
RGVzYyAqZGVzY091dCk7CiAgICAgdm9pZCBhZGRJbnB1dEF0dGFjaG1lbnREZXNjcmlwdG9yU2V0
RGVzYyhjb25zdCBnbDo6UHJvZ3JhbUV4ZWN1dGFibGUgJmV4ZWN1dGFibGUsCi0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBnbDo6U2hhZGVyVHlwZSBz
aGFkZXJUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Z2w6OlNoYWRlclR5cGUgc2hhZGVyVHlwZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHZrOjpEZXNjcmlwdG9yU2V0TGF5b3V0RGVzYyAqZGVzY091dCk7CiAg
ICAgYW5nbGU6OlJlc3VsdCBhZGRUZXh0dXJlRGVzY3JpcHRvclNldERlc2MoCiAgICAgICAgIENv
bnRleHRWayAqY29udGV4dFZrLApAQCAtMjUxLDMyICsyNzksNTEgQEAgY2xhc3MgUHJvZ3JhbUV4
ZWN1dGFibGVWawogICAgICAgICB2azo6RGVzY3JpcHRvclNldExheW91dERlc2MgKmRlc2NPdXQp
OwogCiAgICAgdm9pZCByZXNvbHZlUHJlY2lzaW9uTWlzbWF0Y2goY29uc3QgZ2w6OlByb2dyYW1N
ZXJnZWRWYXJ5aW5ncyAmbWVyZ2VkVmFyeWluZ3MpOwotICAgIHZvaWQgdXBkYXRlRGVmYXVsdFVu
aWZvcm1zRGVzY3JpcHRvclNldChDb250ZXh0VmsgKmNvbnRleHRWaywKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZ2w6OlNoYWRlclR5cGUgc2hhZGVy
VHlwZSwKKyAgICB2b2lkIHVwZGF0ZURlZmF1bHRVbmlmb3Jtc0Rlc2NyaXB0b3JTZXQodms6OkNv
bnRleHQgKmNvbnRleHQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFVwZGF0ZURlc2NyaXB0b3JTZXRzQnVpbGRlciAqdXBkYXRlQnVpbGRlciwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdms6OkJ1ZmZlckhlbHBlciAqZW1w
dHlCdWZmZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZr
OjpSZXNvdXJjZVVzZUxpc3QgKnJlc291cmNlVXNlTGlzdCwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgZ2w6OlNoYWRlclR5cGUgc2hhZGVyVHlwZSwKICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgRGVmYXVsdFVuaWZv
cm1CbG9jayAmZGVmYXVsdFVuaWZvcm1CbG9jaywKICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgdms6OkJ1ZmZlckhlbHBlciAqZGVmYXVsdFVuaWZvcm1CdWZmZXIp
OwotICAgIHZvaWQgdXBkYXRlVHJhbnNmb3JtRmVlZGJhY2tEZXNjcmlwdG9yU2V0SW1wbChDb250
ZXh0VmsgKmNvbnRleHRWaywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgY29uc3QgZ2w6OlByb2dyYW1FeGVjdXRhYmxlICZleGVjdXRhYmxlKTsKLSAg
ICBhbmdsZTo6UmVzdWx0IGdldE9yQWxsb2NhdGVTaGFkZXJSZXNvdXJjZXNEZXNjcmlwdG9yU2V0
KAotICAgICAgICBDb250ZXh0VmsgKmNvbnRleHRWaywKLSAgICAgICAgY29uc3Qgdms6OkRlc2Ny
aXB0b3JTZXREZXNjICpzaGFkZXJCdWZmZXJzRGVzYywKLSAgICAgICAgVmtEZXNjcmlwdG9yU2V0
ICpkZXNjcmlwdG9yU2V0T3V0KTsKLSAgICBhbmdsZTo6UmVzdWx0IHVwZGF0ZUJ1ZmZlcnNEZXNj
cmlwdG9yU2V0KENvbnRleHRWayAqY29udGV4dFZrLAotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgY29uc3QgZ2w6OlNoYWRlclR5cGUgc2hhZGVyVHlwZSwKKyAg
ICB2b2lkIHVwZGF0ZVRyYW5zZm9ybUZlZWRiYWNrRGVzY3JpcHRvclNldEltcGwodms6OkNvbnRl
eHQgKmNvbnRleHQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFVwZGF0ZURlc2NyaXB0b3JTZXRzQnVpbGRlciAqdXBkYXRlQnVpbGRlciwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdms6OkJ1ZmZlckhl
bHBlciAqZW1wdHlCdWZmZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGNvbnN0IGdsOjpQcm9ncmFtRXhlY3V0YWJsZSAmZXhlY3V0YWJsZSwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCBpc1Ry
YW5zZm9ybUZlZWRiYWNrQWN0aXZlVW5wYXVzZWQsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFRyYW5zZm9ybUZlZWRiYWNrVmsgKnRyYW5zZm9ybUZl
ZWRiYWNrVmspOworICAgIGFuZ2xlOjpSZXN1bHQgYWxsb2NhdGVTaGFkZXJSZXNvdXJjZXNEZXNj
cmlwdG9yU2V0KAorICAgICAgICB2azo6Q29udGV4dCAqY29udGV4dCwKKyAgICAgICAgdms6OlJl
c291cmNlVXNlTGlzdCAqcmVzb3VyY2VVc2VMaXN0LAorICAgICAgICBjb25zdCB2azo6RGVzY3Jp
cHRvclNldERlc2MgKnNoYWRlckJ1ZmZlcnNEZXNjKTsKKyAgICBhbmdsZTo6UmVzdWx0IHVwZGF0
ZUJ1ZmZlcnNEZXNjcmlwdG9yU2V0KHZrOjpDb250ZXh0ICpjb250ZXh0LAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVXBkYXRlRGVzY3JpcHRvclNldHNCdWls
ZGVyICp1cGRhdGVCdWlsZGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgdms6OkJ1ZmZlckhlbHBlciAqZW1wdHlCdWZmZXIsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2azo6UmVzb3VyY2VVc2VMaXN0ICpyZXNvdXJj
ZVVzZUxpc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBn
bDo6U2hhZGVyVHlwZSBzaGFkZXJUeXBlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgY29uc3Qgdms6OkRlc2NyaXB0b3JTZXREZXNjICZzaGFkZXJCdWZmZXJz
RGVzYywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0
IGdsOjpCdWZmZXJWZWN0b3IgJmJ1ZmZlcnMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBjb25zdCBzdGQ6OnZlY3RvcjxnbDo6SW50ZXJmYWNlQmxvY2s+ICZi
bG9ja3MsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWa0Rl
c2NyaXB0b3JUeXBlIGRlc2NyaXB0b3JUeXBlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgVmtEZXZpY2VTaXplIG1heEJvdW5kQnVmZmVyUmFuZ2UsCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sIGNhY2hlSGl0KTsK
ICAgICBhbmdsZTo6UmVzdWx0IHVwZGF0ZUF0b21pY0NvdW50ZXJCdWZmZXJzRGVzY3JpcHRvclNl
dCgKLSAgICAgICAgQ29udGV4dFZrICpjb250ZXh0VmssCisgICAgICAgIHZrOjpDb250ZXh0ICpj
b250ZXh0LAorICAgICAgICBVcGRhdGVEZXNjcmlwdG9yU2V0c0J1aWxkZXIgKnVwZGF0ZUJ1aWxk
ZXIsCisgICAgICAgIHZrOjpCdWZmZXJIZWxwZXIgKmVtcHR5QnVmZmVyLAorICAgICAgICB2azo6
UmVzb3VyY2VVc2VMaXN0ICpyZXNvdXJjZVVzZUxpc3QsCisgICAgICAgIGNvbnN0IGdsOjpCdWZm
ZXJWZWN0b3IgJmF0b21pY0NvdW50ZXJCdWZmZXJCaW5kaW5ncywKICAgICAgICAgY29uc3QgZ2w6
OlByb2dyYW1FeGVjdXRhYmxlICZleGVjdXRhYmxlLAotICAgICAgICBjb25zdCBnbDo6U2hhZGVy
VHlwZSBzaGFkZXJUeXBlLAorICAgICAgICBnbDo6U2hhZGVyVHlwZSBzaGFkZXJUeXBlLAogICAg
ICAgICBjb25zdCB2azo6RGVzY3JpcHRvclNldERlc2MgJnNoYWRlckJ1ZmZlcnNEZXNjLAogICAg
ICAgICBib29sIGNhY2hlSGl0KTsKLSAgICBhbmdsZTo6UmVzdWx0IHVwZGF0ZUltYWdlc0Rlc2Ny
aXB0b3JTZXQoQ29udGV4dFZrICpjb250ZXh0VmssCisgICAgYW5nbGU6OlJlc3VsdCB1cGRhdGVJ
bWFnZXNEZXNjcmlwdG9yU2V0KHZrOjpDb250ZXh0ICpjb250ZXh0LAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2azo6UmVzb3VyY2VVc2VMaXN0ICpyZXNvdXJj
ZVVzZUxpc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFVw
ZGF0ZURlc2NyaXB0b3JTZXRzQnVpbGRlciAqdXBkYXRlQnVpbGRlciwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZ2w6OkFjdGl2ZVRleHR1cmVBcnJh
eTxUZXh0dXJlVmsgKj4gJmFjdGl2ZUltYWdlcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgY29uc3Qgc3RkOjp2ZWN0b3I8Z2w6OkltYWdlVW5pdD4gJmltYWdl
VW5pdHMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0
IGdsOjpQcm9ncmFtRXhlY3V0YWJsZSAmZXhlY3V0YWJsZSwKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZ2w6OlNoYWRlclR5cGUgc2hhZGVyVHlwZSk7
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdsOjpTaGFkZXJU
eXBlIHNoYWRlclR5cGUpOwogCiAgICAgc3RhdGljIGFuZ2xlOjpSZXN1bHQgSW5pdER5bmFtaWNE
ZXNjcmlwdG9yUG9vbCgKICAgICAgICAgdms6OkNvbnRleHQgKmNvbnRleHQsCkBAIC0yODcsMTIg
KzMzNCwxMiBAQCBjbGFzcyBQcm9ncmFtRXhlY3V0YWJsZVZrCiAKICAgICB2b2lkIG91dHB1dEN1
bXVsYXRpdmVQZXJmQ291bnRlcnMoKTsKIAotICAgIHNpemVfdCBjYWxjVW5pZm9ybVVwZGF0ZVJl
cXVpcmVkU3BhY2UoQ29udGV4dFZrICpjb250ZXh0VmssCisgICAgc2l6ZV90IGNhbGNVbmlmb3Jt
VXBkYXRlUmVxdWlyZWRTcGFjZSh2azo6Q29udGV4dCAqY29udGV4dCwKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGdsOjpQcm9ncmFtRXhlY3V0YWJsZSAm
Z2xFeGVjdXRhYmxlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Z2w6OlNoYWRlck1hcDxWa0RldmljZVNpemU+ICp1bmlmb3JtT2Zmc2V0cykgY29uc3Q7CiAKICAg
ICBBTkdMRV9JTkxJTkUgYW5nbGU6OlJlc3VsdCBpbml0UHJvZ3JhbShDb250ZXh0VmsgKmNvbnRl
eHRWaywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBn
bDo6U2hhZGVyVHlwZSBzaGFkZXJUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGdsOjpTaGFkZXJUeXBlIHNoYWRlclR5cGUsCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCBpc0xhc3RQcmVGcmFnbWVudFN0YWdlLAog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wgaXNUcmFuc2Zv
cm1GZWVkYmFja1Byb2dyYW0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgUHJvZ3JhbVRyYW5zZm9ybU9wdGlvbnMgb3B0aW9uQml0cywKQEAgLTMxNiw3ICszNjMs
NyBAQCBjbGFzcyBQcm9ncmFtRXhlY3V0YWJsZVZrCiAKICAgICBBTkdMRV9JTkxJTkUgYW5nbGU6
OlJlc3VsdCBpbml0R3JhcGhpY3NTaGFkZXJQcm9ncmFtKAogICAgICAgICBDb250ZXh0VmsgKmNv
bnRleHRWaywKLSAgICAgICAgY29uc3QgZ2w6OlNoYWRlclR5cGUgc2hhZGVyVHlwZSwKKyAgICAg
ICAgZ2w6OlNoYWRlclR5cGUgc2hhZGVyVHlwZSwKICAgICAgICAgYm9vbCBpc0xhc3RQcmVGcmFn
bWVudFN0YWdlLAogICAgICAgICBib29sIGlzVHJhbnNmb3JtRmVlZGJhY2tQcm9ncmFtLAogICAg
ICAgICBQcm9ncmFtVHJhbnNmb3JtT3B0aW9ucyBvcHRpb25CaXRzLApkaWZmIC0tZ2l0IGEvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9Qcm9ncmFt
VmsuY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1
bGthbi9Qcm9ncmFtVmsuY3BwCmluZGV4IGE1N2I0Njg2YzllZjEyMTBkMTQzNzU0MGYxNzkyNWRl
ZDczMDhhNGQuLjFlNTVhMjAzMDQwN2Q1MGRlZDQ4ZThlZDM2YTlkYjJmMjEwYjI2NTUgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxr
YW4vUHJvZ3JhbVZrLmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5H
TEUvcmVuZGVyZXIvdnVsa2FuL1Byb2dyYW1Way5jcHAKQEAgLTEzNSw2ICsxMzUsMjQgQEAgY2xh
c3MgU3RkMTQwQmxvY2tMYXlvdXRFbmNvZGVyRmFjdG9yeSA6IHB1YmxpYyBnbDo6Q3VzdG9tQmxv
Y2tMYXlvdXRFbmNvZGVyRmFjdG8KICAgcHVibGljOgogICAgIHNoOjpCbG9ja0xheW91dEVuY29k
ZXIgKm1ha2VFbmNvZGVyKCkgb3ZlcnJpZGUgeyByZXR1cm4gbmV3IHNoOjpTdGQxNDBCbG9ja0Vu
Y29kZXIoKTsgfQogfTsKKwordm9pZCBTZXR1cERlZmF1bHRQaXBlbGluZVN0YXRlKGNvbnN0IENv
bnRleHRWayAqY29udGV4dFZrLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVf
dCBvdXRwdXRWYXJpYWJsZXNDb3VudCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBn
bDo6UHJpbWl0aXZlTW9kZSBtb2RlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZr
OjpHcmFwaGljc1BpcGVsaW5lRGVzYyAqZ3JhcGhpY3NQaXBlbGluZURlc2NPdXQpCit7CisgICAg
Z3JhcGhpY3NQaXBlbGluZURlc2NPdXQtPmluaXREZWZhdWx0cyhjb250ZXh0VmspOworICAgIGdy
YXBoaWNzUGlwZWxpbmVEZXNjT3V0LT5zZXRUb3BvbG9neShtb2RlKTsKKyAgICBncmFwaGljc1Bp
cGVsaW5lRGVzY091dC0+c2V0UmVuZGVyUGFzc1NhbXBsZUNvdW50KDEpOworCisgICAgY29uc3Rl
eHByIGFuZ2xlOjpGb3JtYXRJRCBrRGVmYXVsdENvbG9yQXR0YWNobWVudEZvcm1hdCA9IGFuZ2xl
OjpGb3JtYXRJRDo6UjhHOEI4QThfVU5PUk07CisgICAgZm9yIChzaXplX3QgY29sb3JBdHRhY2ht
ZW50SW5kZXggPSAwOyBjb2xvckF0dGFjaG1lbnRJbmRleCA8IG91dHB1dFZhcmlhYmxlc0NvdW50
OworICAgICAgICAgY29sb3JBdHRhY2htZW50SW5kZXgrKykKKyAgICB7CisgICAgICAgIGdyYXBo
aWNzUGlwZWxpbmVEZXNjT3V0LT5zZXRSZW5kZXJQYXNzQ29sb3JBdHRhY2htZW50Rm9ybWF0KGNv
bG9yQXR0YWNobWVudEluZGV4LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBrRGVmYXVsdENvbG9yQXR0YWNobWVudEZv
cm1hdCk7CisgICAgfQorfQogfSAgLy8gYW5vbnltb3VzIG5hbWVzcGFjZQogCiAvLyBQcm9ncmFt
VmsgaW1wbGVtZW50YXRpb24uCkBAIC0yMDUsOSArMjIzLDE1IEBAIHN0ZDo6dW5pcXVlX3B0cjxM
aW5rRXZlbnQ+IFByb2dyYW1Wazo6bGluayhjb25zdCBnbDo6Q29udGV4dCAqY29udGV4dCwKICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZtR2xzbGFuZ1Byb2dyYW1JbnRlcmZh
Y2VJbmZvLCAmc3BpcnZCbG9icywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICZtRXhlY3V0YWJsZS5tVmFyaWFibGVJbmZvTWFwKTsKIAorICAgIGlmIChjb250ZXh0VmstPmdl
dEZlYXR1cmVzKCkuZW5hYmxlUHJlY2lzaW9uUXVhbGlmaWVycy5lbmFibGVkKQorICAgIHsKKyAg
ICAgICAgbUV4ZWN1dGFibGUucmVzb2x2ZVByZWNpc2lvbk1pc21hdGNoKG1lcmdlZFZhcnlpbmdz
KTsKKyAgICB9CisKICAgICAvLyBDb21waWxlIHRoZSBzaGFkZXJzLgotICAgIGFuZ2xlOjpSZXN1
bHQgc3RhdHVzID0gbUV4ZWN1dGFibGUubU9yaWdpbmFsU2hhZGVySW5mby5pbml0U2hhZGVycygK
LSAgICAgICAgbVN0YXRlLmdldEV4ZWN1dGFibGUoKS5nZXRMaW5rZWRTaGFkZXJTdGFnZXMoKSwg
c3BpcnZCbG9icywgbUV4ZWN1dGFibGUubVZhcmlhYmxlSW5mb01hcCk7CisgICAgY29uc3QgZ2w6
OlByb2dyYW1FeGVjdXRhYmxlICZwcm9ncmFtRXhlY3V0YWJsZSA9IG1TdGF0ZS5nZXRFeGVjdXRh
YmxlKCk7CisgICAgYW5nbGU6OlJlc3VsdCBzdGF0dXMgICAgICAgICAgICAgICAgICAgICAgICAg
ICA9IG1FeGVjdXRhYmxlLm1PcmlnaW5hbFNoYWRlckluZm8uaW5pdFNoYWRlcnMoCisgICAgICAg
IHByb2dyYW1FeGVjdXRhYmxlLmdldExpbmtlZFNoYWRlclN0YWdlcygpLCBzcGlydkJsb2JzLCBt
RXhlY3V0YWJsZS5tVmFyaWFibGVJbmZvTWFwKTsKICAgICBpZiAoc3RhdHVzICE9IGFuZ2xlOjpS
ZXN1bHQ6OkNvbnRpbnVlKQogICAgIHsKICAgICAgICAgcmV0dXJuIHN0ZDo6bWFrZV91bmlxdWU8
TGlua0V2ZW50RG9uZT4oc3RhdHVzKTsKQEAgLTIxOSwxNyArMjQzLDU0IEBAIHN0ZDo6dW5pcXVl
X3B0cjxMaW5rRXZlbnQ+IFByb2dyYW1Wazo6bGluayhjb25zdCBnbDo6Q29udGV4dCAqY29udGV4
dCwKICAgICAgICAgcmV0dXJuIHN0ZDo6bWFrZV91bmlxdWU8TGlua0V2ZW50RG9uZT4oc3RhdHVz
KTsKICAgICB9CiAKLSAgICBpZiAoY29udGV4dFZrLT5nZXRGZWF0dXJlcygpLmVuYWJsZVByZWNp
c2lvblF1YWxpZmllcnMuZW5hYmxlZCkKKyAgICAvLyBUT0RPKGppZS5hLmNoZW5AaW50ZWwuY29t
KTogUGFyYWxsZWxpemUgbGlua2luZy4KKyAgICAvLyBodHRwOi8vY3JidWcuY29tLzg0OTU3Ngor
ICAgIHN0YXR1cyA9IG1FeGVjdXRhYmxlLmNyZWF0ZVBpcGVsaW5lTGF5b3V0KGNvbnRleHRWaywg
cHJvZ3JhbUV4ZWN1dGFibGUsIG51bGxwdHIpOworCisgICAgLy8gQ3JlYXRlIHBpcGVsaW5lIHdp
dGggZGVmYXVsdCBzdGF0ZQorICAgIGlmICgoc3RhdHVzID09IGFuZ2xlOjpSZXN1bHQ6OkNvbnRp
bnVlKSAmJgorICAgICAgICBjb250ZXh0VmstPmdldEZlYXR1cmVzKCkuY3JlYXRlUGlwZWxpbmVE
dXJpbmdMaW5rLmVuYWJsZWQpCiAgICAgewotICAgICAgICBtRXhlY3V0YWJsZS5yZXNvbHZlUHJl
Y2lzaW9uTWlzbWF0Y2gobWVyZ2VkVmFyeWluZ3MpOworICAgICAgICBzdGF0dXMgPSBjcmVhdGVH
cmFwaGljc1BpcGVsaW5lV2l0aERlZmF1bHRTdGF0ZShjb250ZXh0KTsKICAgICB9CiAKLSAgICAv
LyBUT0RPKGppZS5hLmNoZW5AaW50ZWwuY29tKTogUGFyYWxsZWxpemUgbGlua2luZy4KLSAgICAv
LyBodHRwOi8vY3JidWcuY29tLzg0OTU3NgotICAgIHN0YXR1cyA9IG1FeGVjdXRhYmxlLmNyZWF0
ZVBpcGVsaW5lTGF5b3V0KGNvbnRleHRWaywgbVN0YXRlLmdldEV4ZWN1dGFibGUoKSwgbnVsbHB0
cik7CiAgICAgcmV0dXJuIHN0ZDo6bWFrZV91bmlxdWU8TGlua0V2ZW50RG9uZT4oc3RhdHVzKTsK
IH0KIAorYW5nbGU6OlJlc3VsdCBQcm9ncmFtVms6OmNyZWF0ZUdyYXBoaWNzUGlwZWxpbmVXaXRo
RGVmYXVsdFN0YXRlKGNvbnN0IGdsOjpDb250ZXh0ICpjb250ZXh0KQoreworICAgIGNvbnN0IGds
OjpQcm9ncmFtRXhlY3V0YWJsZSAmZ2xFeGVjdXRhYmxlID0gbVN0YXRlLmdldEV4ZWN1dGFibGUo
KTsKKworICAgIC8vIE5PT1AgaWYgLQorICAgIC8vIDEuIFByb2dyYW0gaXMgc2VwYXJhYmxlCisg
ICAgLy8gMi4gUHJvZ3JhbSBoYXMgYSBjb21wdXRlIHNoYWRlcgorICAgIC8vIDMuIFByb2dyYW0g
aGFzIGdyZWF0ZXIgdGhhbiAzIG91dHB1dCB2YXJpYWJsZXMKKyAgICBib29sIGlzUHJvZ3JhbVNl
cGVyYWJsZSA9IG1TdGF0ZS5pc1NlcGFyYWJsZSgpOworICAgIGJvb2wgaGFzQ29tcHV0ZVNoYWRl
ciAgID0gZ2xFeGVjdXRhYmxlLmhhc0xpbmtlZFNoYWRlclN0YWdlKGdsOjpTaGFkZXJUeXBlOjpD
b21wdXRlKTsKKyAgICBpZiAoaXNQcm9ncmFtU2VwZXJhYmxlIHx8IGhhc0NvbXB1dGVTaGFkZXIg
fHwgZ2xFeGVjdXRhYmxlLmdldE91dHB1dFZhcmlhYmxlcygpLnNpemUoKSA+IDMpCisgICAgewor
ICAgICAgICByZXR1cm4gYW5nbGU6OlJlc3VsdDo6Q29udGludWU7CisgICAgfQorCisgICAgQ29u
dGV4dFZrICpjb250ZXh0VmsgICAgICAgICAgICAgICAgICAgID0gdms6OkdldEltcGwoY29udGV4
dCk7CisgICAgY29uc3Qgdms6OkdyYXBoaWNzUGlwZWxpbmVEZXNjICpkZXNjUHRyID0gbnVsbHB0
cjsKKyAgICB2azo6UGlwZWxpbmVIZWxwZXIgKnBpcGVsaW5lICAgICAgICAgICAgPSBudWxscHRy
OworICAgIHZrOjpHcmFwaGljc1BpcGVsaW5lRGVzYyBncmFwaGljc1BpcGVsaW5lRGVzYzsKKwor
ICAgIC8vIEl0IGlzIG9ubHkgYXQgZHJhd2NhbGwgdGltZSB0aGF0IHdlIHdpbGwgaGF2ZSBjb21w
bGV0ZSBpbmZvcm1hdGlvbiByZXF1aXJlZCB0byBidWlsZCB0aGUKKyAgICAvLyBncmFwaGljcyBw
aXBlbGluZSBkZXNjcmlwdG9yLiBVc2UgdGhlIG1vc3QgImNvbW1vbmx5IHNlZW4iIHN0YXRlIHZh
bHVlcyBhbmQgY3JlYXRlIHRoZQorICAgIC8vIHBpcGVsaW5lLiBUaGlzIGF0dGVtcHRzIHRvIGlt
cHJvdmUgc2hhZGVyIGJpbmFyeSBjYWNoZSBoaXRzIGluIHRoZSB1bmRlcmx5aW5nIElDRCBzaW5j
ZSBpdCBpcworICAgIC8vIGNvbW1vbiBmb3IgdGhlIHNhbWUgc2hhZGVyIHRvIGJlIHVzZWQgYWNy
b3NzIGRpZmZlcmVudCBwaXBlbGluZXMuCisgICAgZ2w6OlByaW1pdGl2ZU1vZGUgbW9kZSA9IChn
bEV4ZWN1dGFibGUuaGFzTGlua2VkU2hhZGVyU3RhZ2UoZ2w6OlNoYWRlclR5cGU6OlRlc3NDb250
cm9sKSB8fAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2xFeGVjdXRhYmxlLmhhc0xp
bmtlZFNoYWRlclN0YWdlKGdsOjpTaGFkZXJUeXBlOjpUZXNzRXZhbHVhdGlvbikpCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICA/IGdsOjpQcmltaXRpdmVNb2RlOjpQYXRjaGVzCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IGdsOjpQcmltaXRpdmVNb2RlOjpUcmlh
bmdsZVN0cmlwOworICAgIFNldHVwRGVmYXVsdFBpcGVsaW5lU3RhdGUoY29udGV4dFZrLCBnbEV4
ZWN1dGFibGUuZ2V0T3V0cHV0VmFyaWFibGVzKCkuc2l6ZSgpLCBtb2RlLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgJmdyYXBoaWNzUGlwZWxpbmVEZXNjKTsKKyAgICByZXR1cm4gbUV4
ZWN1dGFibGUuZ2V0R3JhcGhpY3NQaXBlbGluZShjb250ZXh0VmssIG1vZGUsIGdyYXBoaWNzUGlw
ZWxpbmVEZXNjLCBnbEV4ZWN1dGFibGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgJmRlc2NQdHIsICZwaXBlbGluZSk7Cit9CisKIHZvaWQgUHJvZ3JhbVZrOjps
aW5rUmVzb3VyY2VzKGNvbnN0IGdsOjpQcm9ncmFtTGlua2VkUmVzb3VyY2VzICZyZXNvdXJjZXMp
CiB7CiAgICAgU3RkMTQwQmxvY2tMYXlvdXRFbmNvZGVyRmFjdG9yeSBzdGQxNDBFbmNvZGVyRmFj
dG9yeTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9y
ZW5kZXJlci92dWxrYW4vUHJvZ3JhbVZrLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
bGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL1Byb2dyYW1Way5oCmluZGV4IGJiMzY0ZjQ4ZjI5MzJj
YmYxM2RkOTQ4ZTYyMzI0MGRiODMxMjdiZjIuLmUyZDkwOThmNTE1NDRlYTg4N2JlNDQwZWNlZTE3
NjI0NDk5MDg4M2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJB
TkdMRS9yZW5kZXJlci92dWxrYW4vUHJvZ3JhbVZrLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9Qcm9ncmFtVmsuaApAQCAtMTQwLDYg
KzE0MCw4IEBAIGNsYXNzIFByb2dyYW1WayA6IHB1YmxpYyBQcm9ncmFtSW1wbAogICAgIHZvaWQg
c2V0VW5pZm9ybUltcGwoR0xpbnQgbG9jYXRpb24sIEdMc2l6ZWkgY291bnQsIGNvbnN0IFQgKnYs
IEdMZW51bSBlbnRyeVBvaW50VHlwZSk7CiAgICAgdm9pZCBsaW5rUmVzb3VyY2VzKGNvbnN0IGds
OjpQcm9ncmFtTGlua2VkUmVzb3VyY2VzICZyZXNvdXJjZXMpOwogCisgICAgYW5nbGU6OlJlc3Vs
dCBjcmVhdGVHcmFwaGljc1BpcGVsaW5lV2l0aERlZmF1bHRTdGF0ZShjb25zdCBnbDo6Q29udGV4
dCAqY29udGV4dCk7CisKICAgICAvLyBXZSBrZWVwIHRoZSBTUElSLVYgY29kZSB0byB1c2UgZm9y
IGRyYXcgY2FsbCBwaXBlbGluZSBjcmVhdGlvbi4KICAgICBHbHNsYW5nUHJvZ3JhbUludGVyZmFj
ZUluZm8gbUdsc2xhbmdQcm9ncmFtSW50ZXJmYWNlSW5mbzsKIApkaWZmIC0tZ2l0IGEvU291cmNl
L1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9SZW5kZXJUYXJn
ZXRWay5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIv
dnVsa2FuL1JlbmRlclRhcmdldFZrLmNwcAppbmRleCAxNzZiZGMxYzcwYTQ1YTUxNGUxNjlkZDhj
ZDA4Y2E5OGU2ZDQ1OGY3Li41OTI2MGYxNDAyYmRmNGQwNWJlMDI0MDhjZDEzMTM3YzE3MzE3OTQ3
IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVy
ZXIvdnVsa2FuL1JlbmRlclRhcmdldFZrLmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL1JlbmRlclRhcmdldFZrLmNwcApAQCAtMTA4
LDcgKzEwOCw2IEBAIHZvaWQgUmVuZGVyVGFyZ2V0Vms6Om9uQ29sb3JEcmF3KENvbnRleHRWayAq
Y29udGV4dFZrLAogICAgICAgICBtUmVzb2x2ZUltYWdlLT5vbldyaXRlKG1MZXZlbEluZGV4R0ws
IDEsIG1MYXllckluZGV4LCBmcmFtZWJ1ZmZlckxheWVyQ291bnQsCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgVktfSU1BR0VfQVNQRUNUX0NPTE9SX0JJVCk7CiAgICAgfQotICAgIHJl
dGFpbkltYWdlVmlld3MoY29udGV4dFZrKTsKIH0KIAogdm9pZCBSZW5kZXJUYXJnZXRWazo6b25D
b2xvclJlc29sdmUoQ29udGV4dFZrICpjb250ZXh0VmssIHVpbnQzMl90IGZyYW1lYnVmZmVyTGF5
ZXJDb3VudCkKQEAgLTEyMCw3ICsxMTksNiBAQCB2b2lkIFJlbmRlclRhcmdldFZrOjpvbkNvbG9y
UmVzb2x2ZShDb250ZXh0VmsgKmNvbnRleHRWaywgdWludDMyX3QgZnJhbWVidWZmZXJMYQogICAg
IGNvbnRleHRWay0+b25JbWFnZVJlbmRlclBhc3NXcml0ZShtTGV2ZWxJbmRleEdMLCBtTGF5ZXJJ
bmRleCwgZnJhbWVidWZmZXJMYXllckNvdW50LAogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBWS19JTUFHRV9BU1BFQ1RfQ09MT1JfQklULCB2azo6SW1hZ2VMYXlvdXQ6OkNv
bG9yQXR0YWNobWVudCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbUlt
YWdlKTsKLSAgICByZXRhaW5JbWFnZVZpZXdzKGNvbnRleHRWayk7CiB9CiAKIHZvaWQgUmVuZGVy
VGFyZ2V0Vms6Om9uRGVwdGhTdGVuY2lsRHJhdyhDb250ZXh0VmsgKmNvbnRleHRWaywgdWludDMy
X3QgZnJhbWVidWZmZXJMYXllckNvdW50KQpAQCAtMTMxLDcgKzEyOSw2IEBAIHZvaWQgUmVuZGVy
VGFyZ2V0Vms6Om9uRGVwdGhTdGVuY2lsRHJhdyhDb250ZXh0VmsgKmNvbnRleHRWaywgdWludDMy
X3QgZnJhbWVidWZmCiAKICAgICBjb250ZXh0VmstPm9uRGVwdGhTdGVuY2lsRHJhdyhtTGV2ZWxJ
bmRleEdMLCBtTGF5ZXJJbmRleCwgZnJhbWVidWZmZXJMYXllckNvdW50LCBtSW1hZ2UsCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbVJlc29sdmVJbWFnZSk7Ci0gICAgcmV0YWlu
SW1hZ2VWaWV3cyhjb250ZXh0VmspOwogfQogCiB2azo6SW1hZ2VIZWxwZXIgJlJlbmRlclRhcmdl
dFZrOjpnZXRJbWFnZUZvclJlbmRlclBhc3MoKQpAQCAtMTU4LDcgKzE1NSw3IEBAIGNvbnN0IHZr
OjpJbWFnZUhlbHBlciAmUmVuZGVyVGFyZ2V0Vms6OmdldFJlc29sdmVJbWFnZUZvclJlbmRlclBh
c3MoKSBjb25zdAogICAgIHJldHVybiAqbVJlc29sdmVJbWFnZTsKIH0KIAotYW5nbGU6OlJlc3Vs
dCBSZW5kZXJUYXJnZXRWazo6Z2V0SW1hZ2VWaWV3SW1wbChDb250ZXh0VmsgKmNvbnRleHRWaywK
K2FuZ2xlOjpSZXN1bHQgUmVuZGVyVGFyZ2V0Vms6OmdldEltYWdlVmlld0ltcGwodms6OkNvbnRl
eHQgKmNvbnRleHQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGNvbnN0IHZrOjpJbWFnZUhlbHBlciAmaW1hZ2UsCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGdsOjpTcmdiV3JpdGVDb250cm9sTW9kZSBtb2RlLAog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2azo6SW1hZ2VW
aWV3SGVscGVyICppbWFnZVZpZXdzLApAQCAtMTY4LDM2ICsxNjUsMzYgQEAgYW5nbGU6OlJlc3Vs
dCBSZW5kZXJUYXJnZXRWazo6Z2V0SW1hZ2VWaWV3SW1wbChDb250ZXh0VmsgKmNvbnRleHRWaywK
ICAgICB2azo6TGV2ZWxJbmRleCBsZXZlbFZrID0gbUltYWdlLT50b1ZrTGV2ZWwobUxldmVsSW5k
ZXhHTCk7CiAgICAgaWYgKG1MYXllckNvdW50ID09IDEpCiAgICAgewotICAgICAgICByZXR1cm4g
aW1hZ2VWaWV3cy0+Z2V0TGV2ZWxMYXllckRyYXdJbWFnZVZpZXcoY29udGV4dFZrLCBpbWFnZSwg
bGV2ZWxWaywgbUxheWVySW5kZXgsIG1vZGUsCisgICAgICAgIHJldHVybiBpbWFnZVZpZXdzLT5n
ZXRMZXZlbExheWVyRHJhd0ltYWdlVmlldyhjb250ZXh0LCBpbWFnZSwgbGV2ZWxWaywgbUxheWVy
SW5kZXgsIG1vZGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBpbWFnZVZpZXdPdXQpOwogICAgIH0KIAogICAgIC8vIExheWVyZWQgcmVuZGVy
IHRhcmdldHMgdmlldyB0aGUgd2hvbGUgbGV2ZWwgb3IgYSBoYW5kZnVsIG9mIGxheWVycyBpbiBj
YXNlIG9mIG11bHRpdmlldy4KLSAgICByZXR1cm4gaW1hZ2VWaWV3cy0+Z2V0TGV2ZWxEcmF3SW1h
Z2VWaWV3KGNvbnRleHRWaywgaW1hZ2UsIGxldmVsVmssIG1MYXllckluZGV4LCBtTGF5ZXJDb3Vu
dCwKKyAgICByZXR1cm4gaW1hZ2VWaWV3cy0+Z2V0TGV2ZWxEcmF3SW1hZ2VWaWV3KGNvbnRleHQs
IGltYWdlLCBsZXZlbFZrLCBtTGF5ZXJJbmRleCwgbUxheWVyQ291bnQsCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtb2RlLCBpbWFnZVZpZXdPdXQpOwogfQog
Ci1hbmdsZTo6UmVzdWx0IFJlbmRlclRhcmdldFZrOjpnZXRJbWFnZVZpZXcoQ29udGV4dFZrICpj
b250ZXh0VmssCithbmdsZTo6UmVzdWx0IFJlbmRlclRhcmdldFZrOjpnZXRJbWFnZVZpZXcodms6
OkNvbnRleHQgKmNvbnRleHQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgY29uc3Qgdms6OkltYWdlVmlldyAqKmltYWdlVmlld091dCkgY29uc3QKIHsKICAgICBB
U1NFUlQobUltYWdlKTsKLSAgICByZXR1cm4gZ2V0SW1hZ2VWaWV3SW1wbChjb250ZXh0VmssICpt
SW1hZ2UsIGdsOjpTcmdiV3JpdGVDb250cm9sTW9kZTo6RGVmYXVsdCwgbUltYWdlVmlld3MsCisg
ICAgcmV0dXJuIGdldEltYWdlVmlld0ltcGwoY29udGV4dCwgKm1JbWFnZSwgZ2w6OlNyZ2JXcml0
ZUNvbnRyb2xNb2RlOjpEZWZhdWx0LCBtSW1hZ2VWaWV3cywKICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBpbWFnZVZpZXdPdXQpOwogfQogCi1hbmdsZTo6UmVzdWx0IFJlbmRlclRhcmdldFZr
OjpnZXRJbWFnZVZpZXdXaXRoQ29sb3JzcGFjZShDb250ZXh0VmsgKmNvbnRleHRWaywKK2FuZ2xl
OjpSZXN1bHQgUmVuZGVyVGFyZ2V0Vms6OmdldEltYWdlVmlld1dpdGhDb2xvcnNwYWNlKHZrOjpD
b250ZXh0ICpjb250ZXh0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgZ2w6OlNyZ2JXcml0ZUNvbnRyb2xNb2RlIG1vZGUsCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB2
azo6SW1hZ2VWaWV3ICoqaW1hZ2VWaWV3T3V0KSBjb25zdAogewogICAgIEFTU0VSVChtSW1hZ2Up
OwotICAgIHJldHVybiBnZXRJbWFnZVZpZXdJbXBsKGNvbnRleHRWaywgKm1JbWFnZSwgbW9kZSwg
bUltYWdlVmlld3MsIGltYWdlVmlld091dCk7CisgICAgcmV0dXJuIGdldEltYWdlVmlld0ltcGwo
Y29udGV4dCwgKm1JbWFnZSwgbW9kZSwgbUltYWdlVmlld3MsIGltYWdlVmlld091dCk7CiB9CiAK
LWFuZ2xlOjpSZXN1bHQgUmVuZGVyVGFyZ2V0Vms6OmdldFJlc29sdmVJbWFnZVZpZXcoQ29udGV4
dFZrICpjb250ZXh0VmssCithbmdsZTo6UmVzdWx0IFJlbmRlclRhcmdldFZrOjpnZXRSZXNvbHZl
SW1hZ2VWaWV3KHZrOjpDb250ZXh0ICpjb250ZXh0LAogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB2azo6SW1hZ2VWaWV3ICoqaW1hZ2VWaWV3
T3V0KSBjb25zdAogewogICAgIEFTU0VSVChtUmVzb2x2ZUltYWdlKTsKLSAgICByZXR1cm4gZ2V0
SW1hZ2VWaWV3SW1wbChjb250ZXh0VmssICptUmVzb2x2ZUltYWdlLCBnbDo6U3JnYldyaXRlQ29u
dHJvbE1vZGU6OkRlZmF1bHQsCisgICAgcmV0dXJuIGdldEltYWdlVmlld0ltcGwoY29udGV4dCwg
Km1SZXNvbHZlSW1hZ2UsIGdsOjpTcmdiV3JpdGVDb250cm9sTW9kZTo6RGVmYXVsdCwKICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBtUmVzb2x2ZUltYWdlVmlld3MsIGltYWdlVmlld091dCk7
CiB9CiAKQEAgLTIxNCwxMSArMjExLDkgQEAgdms6OkltYWdlSGVscGVyICpSZW5kZXJUYXJnZXRW
azo6Z2V0T3duZXJPZkRhdGEoKSBjb25zdAogICAgIHJldHVybiBpc1Jlc29sdmVJbWFnZU93bmVy
T2ZEYXRhKCkgPyBtUmVzb2x2ZUltYWdlIDogbUltYWdlOwogfQogCi1hbmdsZTo6UmVzdWx0IFJl
bmRlclRhcmdldFZrOjpnZXRBbmRSZXRhaW5Db3B5SW1hZ2VWaWV3KENvbnRleHRWayAqY29udGV4
dFZrLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBjb25zdCB2azo6SW1hZ2VWaWV3ICoqaW1hZ2VWaWV3T3V0KSBjb25zdAorYW5nbGU6OlJl
c3VsdCBSZW5kZXJUYXJnZXRWazo6Z2V0Q29weUltYWdlVmlldyh2azo6Q29udGV4dCAqY29udGV4
dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qg
dms6OkltYWdlVmlldyAqKmltYWdlVmlld091dCkgY29uc3QKIHsKLSAgICByZXRhaW5JbWFnZVZp
ZXdzKGNvbnRleHRWayk7Ci0KICAgICBjb25zdCB2azo6SW1hZ2VWaWV3SGVscGVyICppbWFnZVZp
ZXdzID0KICAgICAgICAgaXNSZXNvbHZlSW1hZ2VPd25lck9mRGF0YSgpID8gbVJlc29sdmVJbWFn
ZVZpZXdzIDogbUltYWdlVmlld3M7CiAKQEAgLTIzMyw4ICsyMjgsOCBAQCBhbmdsZTo6UmVzdWx0
IFJlbmRlclRhcmdldFZrOjpnZXRBbmRSZXRhaW5Db3B5SW1hZ2VWaWV3KENvbnRleHRWayAqY29u
dGV4dFZrLAogICAgIC8vIE90aGVyd2lzZSwgdGhpcyBtdXN0IGNvbWUgZnJvbSB0aGUgc3VyZmFj
ZSwgaW4gd2hpY2ggY2FzZSB0aGUgaW1hZ2UgaXMgMkQsIHNvIHRoZSBpbWFnZSB2aWV3CiAgICAg
Ly8gdXNlZCB0byBkcmF3IGlzIGp1c3QgYXMgZ29vZCBmb3IgZmV0Y2hpbmcuICBJZiByZXNvbHZl
IGF0dGFjaG1lbnQgaXMgcHJlc2VudCwgZmV0Y2hpbmcgaXMKICAgICAvLyBkb25lIGZyb20gdGhh
dC4KLSAgICByZXR1cm4gaXNSZXNvbHZlSW1hZ2VPd25lck9mRGF0YSgpID8gZ2V0UmVzb2x2ZUlt
YWdlVmlldyhjb250ZXh0VmssIGltYWdlVmlld091dCkKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIDogZ2V0SW1hZ2VWaWV3KGNvbnRleHRWaywgaW1hZ2VWaWV3T3V0KTsK
KyAgICByZXR1cm4gaXNSZXNvbHZlSW1hZ2VPd25lck9mRGF0YSgpID8gZ2V0UmVzb2x2ZUltYWdl
Vmlldyhjb250ZXh0LCBpbWFnZVZpZXdPdXQpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICA6IGdldEltYWdlVmlldyhjb250ZXh0LCBpbWFnZVZpZXdPdXQpOwogfQogCiBh
bmdsZTo6Rm9ybWF0SUQgUmVuZGVyVGFyZ2V0Vms6OmdldEltYWdlQWN0dWFsRm9ybWF0SUQoKSBj
b25zdApAQCAtMzQyLDE1ICszMzcsNiBAQCBhbmdsZTo6UmVzdWx0IFJlbmRlclRhcmdldFZrOjpm
bHVzaFN0YWdlZFVwZGF0ZXMoQ29udGV4dFZrICpjb250ZXh0VmssCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZlcnJlZENsZWFySW5kZXgp
OwogfQogCi12b2lkIFJlbmRlclRhcmdldFZrOjpyZXRhaW5JbWFnZVZpZXdzKENvbnRleHRWayAq
Y29udGV4dFZrKSBjb25zdAotewotICAgIG1JbWFnZVZpZXdzLT5yZXRhaW4oJmNvbnRleHRWay0+
Z2V0UmVzb3VyY2VVc2VMaXN0KCkpOwotICAgIGlmIChtUmVzb2x2ZUltYWdlVmlld3MpCi0gICAg
ewotICAgICAgICBtUmVzb2x2ZUltYWdlVmlld3MtPnJldGFpbigmY29udGV4dFZrLT5nZXRSZXNv
dXJjZVVzZUxpc3QoKSk7Ci0gICAgfQotfQotCiBib29sIFJlbmRlclRhcmdldFZrOjpoYXNEZWZp
bmVkQ29udGVudCgpIGNvbnN0CiB7CiAgICAgdms6OkltYWdlSGVscGVyICppbWFnZSA9IGdldE93
bmVyT2ZEYXRhKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGli
QU5HTEUvcmVuZGVyZXIvdnVsa2FuL1JlbmRlclRhcmdldFZrLmggYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL1JlbmRlclRhcmdldFZrLmgKaW5k
ZXggN2I4Yjk3NjE3NmQzY2YzODUyNGFiZjEzNTlhNGFhMGY3ODg4MTA1OS4uMDg2YWZiYTFjNmRm
Mjg0MTQwZmUyY2E3MGVlZDRiYzg1OTUxYjkwOSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9SZW5kZXJUYXJnZXRWay5oCisr
KyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4v
UmVuZGVyVGFyZ2V0VmsuaApAQCAtODIsMTcgKzgyLDE2IEBAIGNsYXNzIFJlbmRlclRhcmdldFZr
IGZpbmFsIDogcHVibGljIEZyYW1lYnVmZmVyQXR0YWNobWVudFJlbmRlclRhcmdldAogICAgIHZr
OjpJbWFnZUhlbHBlciAmZ2V0SW1hZ2VGb3JXcml0ZSgpIGNvbnN0OwogCiAgICAgLy8gRm9yIGN1
YmUgbWFwcyB3ZSB1c2Ugc2luZ2xlLWxldmVsIHNpbmdsZS1sYXllciAyRCBhcnJheSB2aWV3cy4K
LSAgICBhbmdsZTo6UmVzdWx0IGdldEltYWdlVmlldyhDb250ZXh0VmsgKmNvbnRleHRWaywgY29u
c3Qgdms6OkltYWdlVmlldyAqKmltYWdlVmlld091dCkgY29uc3Q7Ci0gICAgYW5nbGU6OlJlc3Vs
dCBnZXRJbWFnZVZpZXdXaXRoQ29sb3JzcGFjZShDb250ZXh0VmsgKmNvbnRleHRWaywKKyAgICBh
bmdsZTo6UmVzdWx0IGdldEltYWdlVmlldyh2azo6Q29udGV4dCAqY29udGV4dFZrLCBjb25zdCB2
azo6SW1hZ2VWaWV3ICoqaW1hZ2VWaWV3T3V0KSBjb25zdDsKKyAgICBhbmdsZTo6UmVzdWx0IGdl
dEltYWdlVmlld1dpdGhDb2xvcnNwYWNlKHZrOjpDb250ZXh0ICpjb250ZXh0LAogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2w6OlNyZ2JXcml0ZUNvbnRyb2xN
b2RlIHNyZ2JXcml0ZUNvbnRybE1vZGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBjb25zdCB2azo6SW1hZ2VWaWV3ICoqaW1hZ2VWaWV3T3V0KSBjb25zdDsK
LSAgICBhbmdsZTo6UmVzdWx0IGdldFJlc29sdmVJbWFnZVZpZXcoQ29udGV4dFZrICpjb250ZXh0
VmssCisgICAgYW5nbGU6OlJlc3VsdCBnZXRSZXNvbHZlSW1hZ2VWaWV3KHZrOjpDb250ZXh0ICpj
b250ZXh0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB2azo6
SW1hZ2VWaWV3ICoqaW1hZ2VWaWV3T3V0KSBjb25zdDsKIAogICAgIC8vIEZvciAzRCB0ZXh0dXJl
cywgdGhlIDJEIHZpZXcgY3JlYXRlZCBmb3IgcmVuZGVyIHRhcmdldCBpcyBpbnZhbGlkIHRvIHJl
YWQgZnJvbS4gIFRoZQogICAgIC8vIGZvbGxvd2luZyB3aWxsIHJldHVybiBhIHZpZXcgdG8gdGhl
IHdob2xlIGltYWdlIChmb3IgYWxsIHR5cGVzLCBpbmNsdWRpbmcgM0QgYW5kIDJEQXJyYXkpLgot
ICAgIGFuZ2xlOjpSZXN1bHQgZ2V0QW5kUmV0YWluQ29weUltYWdlVmlldyhDb250ZXh0VmsgKmNv
bnRleHRWaywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29u
c3Qgdms6OkltYWdlVmlldyAqKmltYWdlVmlld091dCkgY29uc3Q7CisgICAgYW5nbGU6OlJlc3Vs
dCBnZXRDb3B5SW1hZ2VWaWV3KHZrOjpDb250ZXh0ICpjb250ZXh0LCBjb25zdCB2azo6SW1hZ2VW
aWV3ICoqaW1hZ2VWaWV3T3V0KSBjb25zdDsKIAogICAgIGFuZ2xlOjpGb3JtYXRJRCBnZXRJbWFn
ZUFjdHVhbEZvcm1hdElEKCkgY29uc3Q7CiAgICAgY29uc3QgYW5nbGU6OkZvcm1hdCAmZ2V0SW1h
Z2VBY3R1YWxGb3JtYXQoKSBjb25zdDsKQEAgLTExOSw4ICsxMTgsNiBAQCBjbGFzcyBSZW5kZXJU
YXJnZXRWayBmaW5hbCA6IHB1YmxpYyBGcmFtZWJ1ZmZlckF0dGFjaG1lbnRSZW5kZXJUYXJnZXQK
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBkZWZlcnJlZENs
ZWFySW5kZXgsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3Qg
ZnJhbWVidWZmZXJMYXllckNvdW50KTsKIAotICAgIHZvaWQgcmV0YWluSW1hZ2VWaWV3cyhDb250
ZXh0VmsgKmNvbnRleHRWaykgY29uc3Q7Ci0KICAgICBib29sIGhhc0RlZmluZWRDb250ZW50KCkg
Y29uc3Q7CiAgICAgYm9vbCBoYXNEZWZpbmVkU3RlbmNpbENvbnRlbnQoKSBjb25zdDsKICAgICAv
LyBNYXJrIGNvbnRlbnQgYXMgdW5kZWZpbmVkIHNvIHRoYXQgY2VydGFpbiBvcHRpbWl6YXRpb25z
IGFyZSBwb3NzaWJsZSBzdWNoIGFzIHVzaW5nIERPTlRfQ0FSRQpAQCAtMTM5LDcgKzEzNiw3IEBA
IGNsYXNzIFJlbmRlclRhcmdldFZrIGZpbmFsIDogcHVibGljIEZyYW1lYnVmZmVyQXR0YWNobWVu
dFJlbmRlclRhcmdldAogICAgIH0KIAogICBwcml2YXRlOgotICAgIGFuZ2xlOjpSZXN1bHQgZ2V0
SW1hZ2VWaWV3SW1wbChDb250ZXh0VmsgKmNvbnRleHRWaywKKyAgICBhbmdsZTo6UmVzdWx0IGdl
dEltYWdlVmlld0ltcGwodms6OkNvbnRleHQgKmNvbnRleHQsCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGNvbnN0IHZrOjpJbWFnZUhlbHBlciAmaW1hZ2UsCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGdsOjpTcmdiV3JpdGVDb250cm9sTW9kZSBtb2RlLAog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2azo6SW1hZ2VWaWV3SGVscGVyICpp
bWFnZVZpZXdzLApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFO
R0xFL3JlbmRlcmVyL3Z1bGthbi9SZW5kZXJidWZmZXJWay5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL1JlbmRlcmJ1ZmZlclZrLmNwcApp
bmRleCA2MWU5ZjBiNTE0ZWY1ZjVjZDNmNTI3YjlmMWI1MzFjZTE1ZTQ4MGM0Li5kZjJmNzNkZTdi
ZjUxZGEwYTQ3ZWI5NmIxZDBmMjk2YzI4ODBmZmM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL1JlbmRlcmJ1ZmZlclZrLmNw
cAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVs
a2FuL1JlbmRlcmJ1ZmZlclZrLmNwcApAQCAtMjc1LDYgKzI3NSwxNiBAQCB2b2lkIFJlbmRlcmJ1
ZmZlclZrOjpyZWxlYXNlQW5kRGVsZXRlSW1hZ2UoQ29udGV4dFZrICpjb250ZXh0VmspCiB2b2lk
IFJlbmRlcmJ1ZmZlclZrOjpyZWxlYXNlSW1hZ2UoQ29udGV4dFZrICpjb250ZXh0VmspCiB7CiAg
ICAgUmVuZGVyZXJWayAqcmVuZGVyZXIgPSBjb250ZXh0VmstPmdldFJlbmRlcmVyKCk7CisgICAg
aWYgKG1JbWFnZSA9PSBudWxscHRyKQorICAgIHsKKyAgICAgICAgQVNTRVJUKG1JbWFnZVZpZXdz
LmlzSW1hZ2VWaWV3R2FyYmFnZUVtcHR5KCkgJiYKKyAgICAgICAgICAgICAgIG1NdWx0aXNhbXBs
ZWRJbWFnZVZpZXdzLmlzSW1hZ2VWaWV3R2FyYmFnZUVtcHR5KCkpOworICAgIH0KKyAgICBlbHNl
CisgICAgeworICAgICAgICBtSW1hZ2UtPmNvbGxlY3RWaWV3R2FyYmFnZShyZW5kZXJlciwgJm1J
bWFnZVZpZXdzKTsKKyAgICAgICAgbUltYWdlLT5jb2xsZWN0Vmlld0dhcmJhZ2UocmVuZGVyZXIs
ICZtTXVsdGlzYW1wbGVkSW1hZ2VWaWV3cyk7CisgICAgfQogCiAgICAgaWYgKG1JbWFnZSAmJiBt
T3duc0ltYWdlKQogICAgIHsKQEAgLTI4NywxMyArMjk3LDEwIEBAIHZvaWQgUmVuZGVyYnVmZmVy
Vms6OnJlbGVhc2VJbWFnZShDb250ZXh0VmsgKmNvbnRleHRWaykKICAgICAgICAgbUltYWdlT2Jz
ZXJ2ZXJCaW5kaW5nLmJpbmQobnVsbHB0cik7CiAgICAgfQogCi0gICAgbUltYWdlVmlld3MucmVs
ZWFzZShyZW5kZXJlcik7Ci0KICAgICBpZiAobU11bHRpc2FtcGxlZEltYWdlLnZhbGlkKCkpCiAg
ICAgewogICAgICAgICBtTXVsdGlzYW1wbGVkSW1hZ2UucmVsZWFzZUltYWdlRnJvbVNoYXJlQ29u
dGV4dHMocmVuZGVyZXIsIGNvbnRleHRWayk7CiAgICAgfQotICAgIG1NdWx0aXNhbXBsZWRJbWFn
ZVZpZXdzLnJlbGVhc2UocmVuZGVyZXIpOwogfQogCiBjb25zdCBnbDo6SW50ZXJuYWxGb3JtYXQg
JlJlbmRlcmJ1ZmZlclZrOjpnZXRJbXBsZW1lbnRhdGlvblNpemVkRm9ybWF0KCkgY29uc3QKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci92
dWxrYW4vUmVuZGVyZXJWay5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5H
TEUvcmVuZGVyZXIvdnVsa2FuL1JlbmRlcmVyVmsuY3BwCmluZGV4IDU4Y2U5NzkzMWM4NzdiNjk5
NGE4NTVjMjNhMDIyNTBmNGFkOTRjZTguLjVjZjUyNjBmMWQzNmJkODdmMmE3ODBjYzM2MGI4YTEy
YTJhOTY5ZDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdM
RS9yZW5kZXJlci92dWxrYW4vUmVuZGVyZXJWay5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9SZW5kZXJlclZrLmNwcApAQCAtNDcs
NiArNDcsMTIgQEAgY29uc3RleHByIGJvb2wga0V4cG9zZU5vbkNvbmZvcm1hbnRFeHRlbnNpb25z
QW5kVmVyc2lvbnMgPSB0cnVlOwogI2Vsc2UKIGNvbnN0ZXhwciBib29sIGtFeHBvc2VOb25Db25m
b3JtYW50RXh0ZW5zaW9uc0FuZFZlcnNpb25zID0gZmFsc2U7CiAjZW5kaWYKKworI2lmIGRlZmlu
ZWQoQU5HTEVfVVNFX1NQSVJWX0dFTkVSQVRJT05fVEhST1VHSF9HTFNMQU5HKQorY29uc3RleHBy
IGJvb2wga1VzZVNwaXJ2R2VuVGhyb3VnaEdsc2xhbmcgPSB0cnVlOworI2Vsc2UKK2NvbnN0ZXhw
ciBib29sIGtVc2VTcGlydkdlblRocm91Z2hHbHNsYW5nICAgICAgICAgICAgICAgID0gZmFsc2U7
CisjZW5kaWYKIH0gIC8vIGFub255bW91cyBuYW1lc3BhY2UKIAogbmFtZXNwYWNlIHJ4CkBAIC0x
ODMsMTEgKzE4OSw5IEBAIGNvbnN0ZXhwciBjb25zdCBjaGFyICprU2tpcHBlZE1lc3NhZ2VzW10g
PSB7CiAgICAgLy8gZnJhbWVidWZmZXIgdGhhdCdzIGFjY2Vzc2VkIGJ5IHRoZSBjb21tYW5kIGJ1
ZmZlciBpcyBpZGVudGljYWxseSBsYWlkIG91dC4KICAgICAvLyBodHRwOi8vYW5nbGVidWcuY29t
LzY4MTEKICAgICAiVlVJRC12a0NtZEV4ZWN1dGVDb21tYW5kcy1wQ29tbWFuZEJ1ZmZlcnMtMDAw
OTkiLAotICAgIC8vIFZNQSBpcyB1c2VkIHRvIGFsbG9jYXRlIGJ1ZmZlciBtZW1vcnksIGFuZCBp
dCdzIG5vdCBjaGVja2luZyB0aGUgcmVzdWx0IG9mCi0gICAgLy8gdmtHZXRCdWZmZXJNZW1vcnlS
ZXF1aXJlbWVudHMgYWdhaW5zdCB0aGUgaGVhcCBzaXplIGJlZm9yZSBhdHRlbXB0aW5nIHRvIG1h
a2UgYW4gYWxsb2NhdGlvbi4KLSAgICAvLyBUaGlzIGxlYWRzIHRvIGEgdmFsaWRhdGlvbiBlcnJv
ciB0aGF0IGlzIGJlbmlnbiBhcyB0aGUgc3Vic2VxdWVudCBhbGxvY2F0aW9uIHdpbGwgZmFpbCBh
bnl3YXkKLSAgICAvLyAoaS5lLiBhbiBPT00gd2lsbCBiZSBnZW5lcmF0ZWQgYnkgVnVsa2FuIGlu
c3RlYWQgb2YgQU5HTEUgdG8gdGhlIHNhbWUgZWZmZWN0KS4KLSAgICAiVlVJRC12a0FsbG9jYXRl
TWVtb3J5LXBBbGxvY2F0ZUluZm8tMDE3MTMiLAorICAgIC8vIGh0dHA6Ly9hbmdsZWJ1Zy5jb20v
NzEwNQorICAgICJWVUlELXZrQ21kRHJhdy1Ob25lLTA2NTM4IiwKKyAgICAiVlVJRC12a0NtZERy
YXdJbmRleGVkLU5vbmUtMDY1MzgiLAogfTsKIAogc3RydWN0IFNraXBwZWRTeW5jdmFsTWVzc2Fn
ZQpAQCAtNTMwLDYgKzUzNCwxNCBAQCBjb25zdGV4cHIgU2tpcHBlZFN5bmN2YWxNZXNzYWdlIGtT
a2lwcGVkU3luY3ZhbE1lc3NhZ2VzW10gPSB7CiAgICAgICJWS19JTUFHRV9MQVlPVVRfR0VORVJB
TCkuIEFjY2VzcyBpbmZvICh1c2FnZTogU1lOQ19JTUFHRV9MQVlPVVRfVFJBTlNJVElPTiwgcHJp
b3JfdXNhZ2U6ICIKICAgICAgIlNZTkNfQ09MT1JfQVRUQUNITUVOVF9PVVRQVVRfQ09MT1JfQVRU
QUNITUVOVF9XUklURSwgd3JpdGVfYmFycmllcnM6IiwKICAgICAgZmFsc2UsIHRydWV9LAorICAg
IC8vIGh0dHA6Ly9hbmdsZWJ1Zy5jb20vNzA3MAorICAgIHsKKyAgICAgICAgIlNZTkMtSEFaQVJE
LVJFQURfQUZURVJfV1JJVEUiLAorICAgICAgICAidHlwZTogVktfREVTQ1JJUFRPUl9UWVBFX0NP
TUJJTkVEX0lNQUdFX1NBTVBMRVIsIGltYWdlTGF5b3V0OiBWS19JTUFHRV9MQVlPVVRfR0VORVJB
TCwgIgorICAgICAgICAiYmluZGluZyAjMCwgaW5kZXggMC4gQWNjZXNzIGluZm8gKHVzYWdlOiBT
WU5DX0ZSQUdNRU5UX1NIQURFUl9TSEFERVJfU1RPUkFHRV9SRUFELCAiCisgICAgICAgICJwcmlv
cl91c2FnZTogU1lOQ19DT0xPUl9BVFRBQ0hNRU5UX09VVFBVVF9DT0xPUl9BVFRBQ0hNRU5UX1dS
SVRFLCB3cml0ZV9iYXJyaWVyczogMCwgIgorICAgICAgICAiY29tbWFuZDogdmtDbWRCZWdpblJl
bmRlclBhc3MiLAorICAgIH0sCiB9OwogCiBlbnVtIGNsYXNzIERlYnVnTWVzc2FnZVJlcG9ydApA
QCAtMTE0NCw3ICsxMTU2LDggQEAgUmVuZGVyZXJWazo6flJlbmRlcmVyVmsoKQogYm9vbCBSZW5k
ZXJlclZrOjpoYXNTaGFyZWRHYXJiYWdlKCkKIHsKICAgICBzdGQ6OmxvY2tfZ3VhcmQ8c3RkOjpt
dXRleD4gbG9jayhtR2FyYmFnZU11dGV4KTsKLSAgICByZXR1cm4gIW1TaGFyZWRHYXJiYWdlLmVt
cHR5KCkgfHwgIW1TdWJhbGxvY2F0aW9uR2FyYmFnZS5lbXB0eSgpOworICAgIHJldHVybiAhbVNo
YXJlZEdhcmJhZ2UuZW1wdHkoKSB8fCAhbVBlbmRpbmdTdWJtaXNzaW9uR2FyYmFnZS5lbXB0eSgp
IHx8CisgICAgICAgICAgICFtU3ViYWxsb2NhdGlvbkdhcmJhZ2UuZW1wdHkoKSB8fCAhbVBlbmRp
bmdTdWJtaXNzaW9uU3ViYWxsb2NhdGlvbkdhcmJhZ2UuZW1wdHkoKTsKIH0KIAogdm9pZCBSZW5k
ZXJlclZrOjpyZWxlYXNlU2hhcmVkUmVzb3VyY2VzKHZrOjpSZXNvdXJjZVVzZUxpc3QgKnJlc291
cmNlTGlzdCkKQEAgLTEzODcsNiArMTQwMCwxMiBAQCBhbmdsZTo6UmVzdWx0IFJlbmRlcmVyVms6
OmluaXRpYWxpemUoRGlzcGxheVZrICpkaXNwbGF5VmssCiAgICAgICAgIEFOR0xFX0ZFQVRVUkVf
Q09ORElUSU9OKCZtRmVhdHVyZXMsIHN1cHBvcnRzU3VyZmFjZVByb3RlY3RlZENhcGFiaWxpdGll
c0V4dGVuc2lvbiwgdHJ1ZSk7CiAgICAgfQogCisgICAgaWYgKEV4dGVuc2lvbkZvdW5kKFZLX0dP
T0dMRV9TVVJGQUNFTEVTU19RVUVSWV9FWFRFTlNJT05fTkFNRSwgaW5zdGFuY2VFeHRlbnNpb25O
YW1lcykpCisgICAgeworICAgICAgICBtRW5hYmxlZEluc3RhbmNlRXh0ZW5zaW9ucy5wdXNoX2Jh
Y2soVktfR09PR0xFX1NVUkZBQ0VMRVNTX1FVRVJZX0VYVEVOU0lPTl9OQU1FKTsKKyAgICAgICAg
QU5HTEVfRkVBVFVSRV9DT05ESVRJT04oJm1GZWF0dXJlcywgc3VwcG9ydHNTdXJmYWNlbGVzc1F1
ZXJ5RXh0ZW5zaW9uLCB0cnVlKTsKKyAgICB9CisKICAgICAvLyBWZXJpZnkgdGhlIHJlcXVpcmVk
IGV4dGVuc2lvbnMgYXJlIGluIHRoZSBleHRlbnNpb24gbmFtZXMgc2V0LiBGYWlsIGlmIG5vdC4K
ICAgICBzdGQ6OnNvcnQobUVuYWJsZWRJbnN0YW5jZUV4dGVuc2lvbnMuYmVnaW4oKSwgbUVuYWJs
ZWRJbnN0YW5jZUV4dGVuc2lvbnMuZW5kKCksIFN0ckxlc3MpOwogICAgIEFOR0xFX1ZLX1RSWShk
aXNwbGF5VmssCkBAIC0xNDAwLDYgKzE0MTksMTkgQEAgYW5nbGU6OlJlc3VsdCBSZW5kZXJlclZr
Ojppbml0aWFsaXplKERpc3BsYXlWayAqZGlzcGxheVZrLAogICAgICAgICAgICAgVktfS0hSX0dF
VF9QSFlTSUNBTF9ERVZJQ0VfUFJPUEVSVElFU18yX0VYVEVOU0lPTl9OQU1FKTsKICAgICB9CiAK
KyAgICBpZiAoRXh0ZW5zaW9uRm91bmQoVktfS0hSX0VYVEVSTkFMX0ZFTkNFX0NBUEFCSUxJVElF
U19FWFRFTlNJT05fTkFNRSwgaW5zdGFuY2VFeHRlbnNpb25OYW1lcykpCisgICAgeworICAgICAg
ICBtRW5hYmxlZEluc3RhbmNlRXh0ZW5zaW9ucy5wdXNoX2JhY2soVktfS0hSX0VYVEVSTkFMX0ZF
TkNFX0NBUEFCSUxJVElFU19FWFRFTlNJT05fTkFNRSk7CisgICAgICAgIEFOR0xFX0ZFQVRVUkVf
Q09ORElUSU9OKCZtRmVhdHVyZXMsIHN1cHBvcnRzRXh0ZXJuYWxGZW5jZUNhcGFiaWxpdGllcywg
dHJ1ZSk7CisgICAgfQorCisgICAgaWYgKEV4dGVuc2lvbkZvdW5kKFZLX0tIUl9FWFRFUk5BTF9T
RU1BUEhPUkVfQ0FQQUJJTElUSUVTX0VYVEVOU0lPTl9OQU1FLAorICAgICAgICAgICAgICAgICAg
ICAgICBpbnN0YW5jZUV4dGVuc2lvbk5hbWVzKSkKKyAgICB7CisgICAgICAgIG1FbmFibGVkSW5z
dGFuY2VFeHRlbnNpb25zLnB1c2hfYmFjayhWS19LSFJfRVhURVJOQUxfU0VNQVBIT1JFX0NBUEFC
SUxJVElFU19FWFRFTlNJT05fTkFNRSk7CisgICAgICAgIEFOR0xFX0ZFQVRVUkVfQ09ORElUSU9O
KCZtRmVhdHVyZXMsIHN1cHBvcnRzRXh0ZXJuYWxTZW1hcGhvcmVDYXBhYmlsaXRpZXMsIHRydWUp
OworICAgIH0KKwogICAgIFZrQXBwbGljYXRpb25JbmZvIGFwcGxpY2F0aW9uSW5mbyAgPSB7fTsK
ICAgICBhcHBsaWNhdGlvbkluZm8uc1R5cGUgICAgICAgICAgICAgID0gVktfU1RSVUNUVVJFX1RZ
UEVfQVBQTElDQVRJT05fSU5GTzsKICAgICBzdGQ6OnN0cmluZyBhcHBOYW1lICAgICAgICAgICAg
ICAgID0gYW5nbGU6OkdldEV4ZWN1dGFibGVOYW1lKCk7CkBAIC0xNDU1LDYgKzE0ODcsMTUgQEAg
YW5nbGU6OlJlc3VsdCBSZW5kZXJlclZrOjppbml0aWFsaXplKERpc3BsYXlWayAqZGlzcGxheVZr
LAogICAgIHZhbGlkYXRpb25GZWF0dXJlcy5lbmFibGVkVmFsaWRhdGlvbkZlYXR1cmVDb3VudCA9
IDE7CiAgICAgdmFsaWRhdGlvbkZlYXR1cmVzLnBFbmFibGVkVmFsaWRhdGlvbkZlYXR1cmVzICAg
ID0gZW5hYmxlZEZlYXR1cmVzOwogCisgICAgLy8gaHR0cDovL2FuZ2xlYnVnLmNvbS83MDUwIC0g
U2hhZGVyIHZhbGlkYXRpb24gY2FjaGluZyBpcyBicm9rZW4gb24gQW5kcm9pZAorICAgIFZrVmFs
aWRhdGlvbkZlYXR1cmVEaXNhYmxlRVhUIGRpc2FibGVkRmVhdHVyZXNbXSA9IHsKKyAgICAgICAg
VktfVkFMSURBVElPTl9GRUFUVVJFX0RJU0FCTEVfU0hBREVSX1ZBTElEQVRJT05fQ0FDSEVfRVhU
fTsKKyAgICBpZiAoSXNBbmRyb2lkKCkpCisgICAgeworICAgICAgICB2YWxpZGF0aW9uRmVhdHVy
ZXMuZGlzYWJsZWRWYWxpZGF0aW9uRmVhdHVyZUNvdW50ID0gMTsKKyAgICAgICAgdmFsaWRhdGlv
bkZlYXR1cmVzLnBEaXNhYmxlZFZhbGlkYXRpb25GZWF0dXJlcyAgICA9IGRpc2FibGVkRmVhdHVy
ZXM7CisgICAgfQorCiAgICAgaWYgKG1FbmFibGVWYWxpZGF0aW9uTGF5ZXJzKQogICAgIHsKICAg
ICAgICAgLy8gRW5hYmxlIGJlc3QgcHJhY3RpY2VzIG91dHB1dCB3aGljaCBpbmNsdWRlcyBwZXJm
ZG9jIGxheWVyCkBAIC0xNjAzLDE2ICsxNjQ0LDE3IEBAIGFuZ2xlOjpSZXN1bHQgUmVuZGVyZXJW
azo6aW5pdGlhbGl6ZShEaXNwbGF5VmsgKmRpc3BsYXlWaywKICAgICBWa01lbW9yeVByb3BlcnR5
RmxhZ3MgcmVxdWlyZWRGbGFncyA9IFZLX01FTU9SWV9QUk9QRVJUWV9IT1NUX1ZJU0lCTEVfQklU
OwogICAgIGJvb2wgcGVyc2lzdGVudGx5TWFwcGVkICAgICAgICAgICAgID0gbUZlYXR1cmVzLnBl
cnNpc3RlbnRseU1hcHBlZEJ1ZmZlcnMuZW5hYmxlZDsKIAotICAgIC8vIENvaGVyZW50IHN0YWdp
bmcgYnVmZmVyCisgICAgLy8gVW5jYWNoZWQgY29oZXJlbnQgc3RhZ2luZyBidWZmZXIKICAgICBW
a01lbW9yeVByb3BlcnR5RmxhZ3MgcHJlZmVycmVkRmxhZ3MgPSBWS19NRU1PUllfUFJPUEVSVFlf
SE9TVF9DT0hFUkVOVF9CSVQ7CiAgICAgQU5HTEVfVktfVFJZKGRpc3BsYXlWaywgbUFsbG9jYXRv
ci5maW5kTWVtb3J5VHlwZUluZGV4Rm9yQnVmZmVySW5mbygKICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgY3JlYXRlSW5mbywgcmVxdWlyZWRGbGFncywgcHJlZmVycmVkRmxhZ3MsIHBl
cnNpc3RlbnRseU1hcHBlZCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJm1Db2hl
cmVudFN0YWdpbmdCdWZmZXJNZW1vcnlUeXBlSW5kZXgpKTsKICAgICBBU1NFUlQobUNvaGVyZW50
U3RhZ2luZ0J1ZmZlck1lbW9yeVR5cGVJbmRleCAhPSBrSW52YWxpZE1lbW9yeVR5cGVJbmRleCk7
CiAKLSAgICAvLyBOb24tY29oZXJlbnQgc3RhZ2luZyBidWZmZXIKKyAgICAvLyBDYWNoZWQgKGIv
MjE5OTc0MzY5KSBOb24tY29oZXJlbnQgc3RhZ2luZyBidWZmZXIKKyAgICBwcmVmZXJyZWRGbGFn
cyA9IFZLX01FTU9SWV9QUk9QRVJUWV9IT1NUX0NBQ0hFRF9CSVQ7CiAgICAgQU5HTEVfVktfVFJZ
KGRpc3BsYXlWaywgbUFsbG9jYXRvci5maW5kTWVtb3J5VHlwZUluZGV4Rm9yQnVmZmVySW5mbygK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY3JlYXRlSW5mbywgcmVxdWlyZWRGbGFn
cywgMCwgcGVyc2lzdGVudGx5TWFwcGVkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBjcmVhdGVJbmZvLCByZXF1aXJlZEZsYWdzLCBwcmVmZXJyZWRGbGFncywgcGVyc2lzdGVudGx5
TWFwcGVkLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmbU5vbkNvaGVyZW50U3Rh
Z2luZ0J1ZmZlck1lbW9yeVR5cGVJbmRleCkpOwogICAgIEFTU0VSVChtTm9uQ29oZXJlbnRTdGFn
aW5nQnVmZmVyTWVtb3J5VHlwZUluZGV4ICE9IGtJbnZhbGlkTWVtb3J5VHlwZUluZGV4KTsKIApA
QCAtMTYyMiwxMSArMTY2NCw5IEBAIGFuZ2xlOjpSZXN1bHQgUmVuZGVyZXJWazo6aW5pdGlhbGl6
ZShEaXNwbGF5VmsgKmRpc3BsYXlWaywKICAgICBBU1NFUlQoZ2w6OmlzUG93MihtUGh5c2ljYWxE
ZXZpY2VQcm9wZXJ0aWVzLmxpbWl0cy5ub25Db2hlcmVudEF0b21TaXplKSk7CiAgICAgQVNTRVJU
KGdsOjppc1BvdzIobVBoeXNpY2FsRGV2aWNlUHJvcGVydGllcy5saW1pdHMub3B0aW1hbEJ1ZmZl
ckNvcHlPZmZzZXRBbGlnbm1lbnQpKTsKICAgICBtU3RhZ2luZ0J1ZmZlckFsaWdubWVudCA9IHN0
ZDo6bWF4KAotICAgICAgICBtU3RhZ2luZ0J1ZmZlckFsaWdubWVudCwKLSAgICAgICAgc3RhdGlj
X2Nhc3Q8c2l6ZV90PihtUGh5c2ljYWxEZXZpY2VQcm9wZXJ0aWVzLmxpbWl0cy5vcHRpbWFsQnVm
ZmVyQ29weU9mZnNldEFsaWdubWVudCkpOwotICAgIG1TdGFnaW5nQnVmZmVyQWxpZ25tZW50ID0K
LSAgICAgICAgc3RkOjptYXgobVN0YWdpbmdCdWZmZXJBbGlnbm1lbnQsCi0gICAgICAgICAgICAg
ICAgIHN0YXRpY19jYXN0PHNpemVfdD4obVBoeXNpY2FsRGV2aWNlUHJvcGVydGllcy5saW1pdHMu
bm9uQ29oZXJlbnRBdG9tU2l6ZSkpOworICAgICAgICB7bVN0YWdpbmdCdWZmZXJBbGlnbm1lbnQs
CisgICAgICAgICBzdGF0aWNfY2FzdDxzaXplX3Q+KG1QaHlzaWNhbERldmljZVByb3BlcnRpZXMu
bGltaXRzLm9wdGltYWxCdWZmZXJDb3B5T2Zmc2V0QWxpZ25tZW50KSwKKyAgICAgICAgIHN0YXRp
Y19jYXN0PHNpemVfdD4obVBoeXNpY2FsRGV2aWNlUHJvcGVydGllcy5saW1pdHMubm9uQ29oZXJl
bnRBdG9tU2l6ZSl9KTsKICAgICBBU1NFUlQoZ2w6OmlzUG93MihtU3RhZ2luZ0J1ZmZlckFsaWdu
bWVudCkpOwogCiAgICAgLy8gRGV2aWNlIGxvY2FsIHZlcnRleCBjb252ZXJzaW9uIGJ1ZmZlcgpA
QCAtMTY0MiwxMCArMTY4MiwxMiBAQCBhbmdsZTo6UmVzdWx0IFJlbmRlcmVyVms6OmluaXRpYWxp
emUoRGlzcGxheVZrICpkaXNwbGF5VmssCiAgICAgLy8gc3RhZ2luZyBidWZmZXIKICAgICBtSG9z
dFZpc2libGVWZXJ0ZXhDb252ZXJzaW9uQnVmZmVyTWVtb3J5VHlwZUluZGV4ID0gbU5vbkNvaGVy
ZW50U3RhZ2luZ0J1ZmZlck1lbW9yeVR5cGVJbmRleDsKICAgICAvLyBXZSBtYXkgdXNlIGNvbXB1
dGUgc2hhZGVyIHRvIGRvIGNvbnZlcnNpb24sIHNvIHdlIG11c3QgbWVldAotICAgIC8vIG1pblN0
b3JhZ2VCdWZmZXJPZmZzZXRBbGlnbm1lbnQgcmVxdWlyZW1lbnQgYXMgd2VsbC4KKyAgICAvLyBt
aW5TdG9yYWdlQnVmZmVyT2Zmc2V0QWxpZ25tZW50IHJlcXVpcmVtZW50IGFzIHdlbGwuIEFsc28g
dGFrZSBpbnRvIGFjY291bnQgbm9uLWNvaGVyZW50CisgICAgLy8gYWxpZ25tZW50IHJlcXVpcmVt
ZW50cy4KICAgICBtVmVydGV4Q29udmVyc2lvbkJ1ZmZlckFsaWdubWVudCA9IHN0ZDo6bWF4KAot
ICAgICAgICB2azo6a1ZlcnRleEJ1ZmZlckFsaWdubWVudCwKLSAgICAgICAgc3RhdGljX2Nhc3Q8
c2l6ZV90PihtUGh5c2ljYWxEZXZpY2VQcm9wZXJ0aWVzLmxpbWl0cy5taW5TdG9yYWdlQnVmZmVy
T2Zmc2V0QWxpZ25tZW50KSk7CisgICAgICAgIHt2azo6a1ZlcnRleEJ1ZmZlckFsaWdubWVudCwK
KyAgICAgICAgIHN0YXRpY19jYXN0PHNpemVfdD4obVBoeXNpY2FsRGV2aWNlUHJvcGVydGllcy5s
aW1pdHMubWluU3RvcmFnZUJ1ZmZlck9mZnNldEFsaWdubWVudCksCisgICAgICAgICBzdGF0aWNf
Y2FzdDxzaXplX3Q+KG1QaHlzaWNhbERldmljZVByb3BlcnRpZXMubGltaXRzLm5vbkNvaGVyZW50
QXRvbVNpemUpfSk7CiAgICAgQVNTRVJUKGdsOjppc1BvdzIobVZlcnRleENvbnZlcnNpb25CdWZm
ZXJBbGlnbm1lbnQpKTsKIAogICAgIHsKQEAgLTE3MjcsMTIgKzE3NjksNiBAQCB2b2lkIFJlbmRl
cmVyVms6OnF1ZXJ5RGV2aWNlRXh0ZW5zaW9uRmVhdHVyZXMoY29uc3Qgdms6OkV4dGVuc2lvbk5h
bWVMaXN0ICZkZXZpYwogICAgIG1Ecml2ZXJQcm9wZXJ0aWVzICAgICAgID0ge307CiAgICAgbURy
aXZlclByb3BlcnRpZXMuc1R5cGUgPSBWS19TVFJVQ1RVUkVfVFlQRV9QSFlTSUNBTF9ERVZJQ0Vf
RFJJVkVSX1BST1BFUlRJRVM7CiAKLSAgICBtRXh0ZXJuYWxGZW5jZVByb3BlcnRpZXMgICAgICAg
PSB7fTsKLSAgICBtRXh0ZXJuYWxGZW5jZVByb3BlcnRpZXMuc1R5cGUgPSBWS19TVFJVQ1RVUkVf
VFlQRV9FWFRFUk5BTF9GRU5DRV9QUk9QRVJUSUVTOwotCi0gICAgbUV4dGVybmFsU2VtYXBob3Jl
UHJvcGVydGllcyAgICAgICA9IHt9OwotICAgIG1FeHRlcm5hbFNlbWFwaG9yZVByb3BlcnRpZXMu
c1R5cGUgPSBWS19TVFJVQ1RVUkVfVFlQRV9FWFRFUk5BTF9TRU1BUEhPUkVfUFJPUEVSVElFUzsK
LQogICAgIG1TYW1wbGVyWWNiY3JDb252ZXJzaW9uRmVhdHVyZXMgPSB7fTsKICAgICBtU2FtcGxl
clljYmNyQ29udmVyc2lvbkZlYXR1cmVzLnNUeXBlID0KICAgICAgICAgVktfU1RSVUNUVVJFX1RZ
UEVfUEhZU0lDQUxfREVWSUNFX1NBTVBMRVJfWUNCQ1JfQ09OVkVSU0lPTl9GRUFUVVJFUzsKQEAg
LTE3NTEsNiArMTc4NywxNCBAQCB2b2lkIFJlbmRlcmVyVms6OnF1ZXJ5RGV2aWNlRXh0ZW5zaW9u
RmVhdHVyZXMoY29uc3Qgdms6OkV4dGVuc2lvbk5hbWVMaXN0ICZkZXZpYwogICAgIG1EZXB0aENs
aXBDb250cm9sRmVhdHVyZXMuc1R5cGUgPQogICAgICAgICBWS19TVFJVQ1RVUkVfVFlQRV9QSFlT
SUNBTF9ERVZJQ0VfREVQVEhfQ0xJUF9DT05UUk9MX0ZFQVRVUkVTX0VYVDsKIAorICAgIG1CbGVu
ZE9wZXJhdGlvbkFkdmFuY2VkRmVhdHVyZXMgPSB7fTsKKyAgICBtQmxlbmRPcGVyYXRpb25BZHZh
bmNlZEZlYXR1cmVzLnNUeXBlID0KKyAgICAgICAgVktfU1RSVUNUVVJFX1RZUEVfUEhZU0lDQUxf
REVWSUNFX0JMRU5EX09QRVJBVElPTl9BRFZBTkNFRF9GRUFUVVJFU19FWFQ7CisKKyAgICBtQmxl
bmRPcGVyYXRpb25BZHZhbmNlZFByb3BlcnRpZXMgPSB7fTsKKyAgICBtQmxlbmRPcGVyYXRpb25B
ZHZhbmNlZFByb3BlcnRpZXMuc1R5cGUgPQorICAgICAgICBWS19TVFJVQ1RVUkVfVFlQRV9QSFlT
SUNBTF9ERVZJQ0VfQkxFTkRfT1BFUkFUSU9OX0FEVkFOQ0VEX1BST1BFUlRJRVNfRVhUOworCiAg
ICAgaWYgKCF2a0dldFBoeXNpY2FsRGV2aWNlUHJvcGVydGllczJLSFIgfHwgIXZrR2V0UGh5c2lj
YWxEZXZpY2VGZWF0dXJlczJLSFIpCiAgICAgewogICAgICAgICByZXR1cm47CkBAIC0xODc4LDMw
ICsxOTIyLDE0IEBAIHZvaWQgUmVuZGVyZXJWazo6cXVlcnlEZXZpY2VFeHRlbnNpb25GZWF0dXJl
cyhjb25zdCB2azo6RXh0ZW5zaW9uTmFtZUxpc3QgJmRldmljCiAgICAgICAgIHZrOjpBZGRUb1BO
ZXh0Q2hhaW4oJmRldmljZUZlYXR1cmVzLCAmbURlcHRoQ2xpcENvbnRyb2xGZWF0dXJlcyk7CiAg
ICAgfQogCi0gICAgdmtHZXRQaHlzaWNhbERldmljZUZlYXR1cmVzMktIUihtUGh5c2ljYWxEZXZp
Y2UsICZkZXZpY2VGZWF0dXJlcyk7Ci0gICAgdmtHZXRQaHlzaWNhbERldmljZVByb3BlcnRpZXMy
S0hSKG1QaHlzaWNhbERldmljZSwgJmRldmljZVByb3BlcnRpZXMpOwotCi0gICAgLy8gRmVuY2Ug
cHJvcGVydGllcwotICAgIGlmIChtRmVhdHVyZXMuc3VwcG9ydHNFeHRlcm5hbEZlbmNlQ2FwYWJp
bGl0aWVzLmVuYWJsZWQpCisgICAgaWYgKEV4dGVuc2lvbkZvdW5kKFZLX0VYVF9CTEVORF9PUEVS
QVRJT05fQURWQU5DRURfRVhURU5TSU9OX05BTUUsIGRldmljZUV4dGVuc2lvbk5hbWVzKSkKICAg
ICB7Ci0gICAgICAgIFZrUGh5c2ljYWxEZXZpY2VFeHRlcm5hbEZlbmNlSW5mbyBleHRlcm5hbEZl
bmNlSW5mbyA9IHt9OwotICAgICAgICBleHRlcm5hbEZlbmNlSW5mby5zVHlwZSAgICAgID0gVktf
U1RSVUNUVVJFX1RZUEVfUEhZU0lDQUxfREVWSUNFX0VYVEVSTkFMX0ZFTkNFX0lORk87Ci0gICAg
ICAgIGV4dGVybmFsRmVuY2VJbmZvLmhhbmRsZVR5cGUgPSBWS19FWFRFUk5BTF9GRU5DRV9IQU5E
TEVfVFlQRV9TWU5DX0ZEX0JJVF9LSFI7Ci0KLSAgICAgICAgdmtHZXRQaHlzaWNhbERldmljZUV4
dGVybmFsRmVuY2VQcm9wZXJ0aWVzS0hSKG1QaHlzaWNhbERldmljZSwgJmV4dGVybmFsRmVuY2VJ
bmZvLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgJm1FeHRlcm5hbEZlbmNlUHJvcGVydGllcyk7CisgICAgICAgIHZrOjpBZGRUb1BOZXh0Q2hh
aW4oJmRldmljZUZlYXR1cmVzLCAmbUJsZW5kT3BlcmF0aW9uQWR2YW5jZWRGZWF0dXJlcyk7Cisg
ICAgICAgIHZrOjpBZGRUb1BOZXh0Q2hhaW4oJmRldmljZVByb3BlcnRpZXMsICZtQmxlbmRPcGVy
YXRpb25BZHZhbmNlZFByb3BlcnRpZXMpOwogICAgIH0KIAotICAgIC8vIFNlbWFwaG9yZSBwcm9w
ZXJ0aWVzCi0gICAgaWYgKG1GZWF0dXJlcy5zdXBwb3J0c0V4dGVybmFsU2VtYXBob3JlQ2FwYWJp
bGl0aWVzLmVuYWJsZWQpCi0gICAgewotICAgICAgICBWa1BoeXNpY2FsRGV2aWNlRXh0ZXJuYWxT
ZW1hcGhvcmVJbmZvIGV4dGVybmFsU2VtYXBob3JlSW5mbyA9IHt9OwotICAgICAgICBleHRlcm5h
bFNlbWFwaG9yZUluZm8uc1R5cGUgPSBWS19TVFJVQ1RVUkVfVFlQRV9QSFlTSUNBTF9ERVZJQ0Vf
RVhURVJOQUxfU0VNQVBIT1JFX0lORk87Ci0gICAgICAgIGV4dGVybmFsU2VtYXBob3JlSW5mby5o
YW5kbGVUeXBlID0gVktfRVhURVJOQUxfU0VNQVBIT1JFX0hBTkRMRV9UWVBFX1NZTkNfRkRfQklU
X0tIUjsKLQotICAgICAgICB2a0dldFBoeXNpY2FsRGV2aWNlRXh0ZXJuYWxTZW1hcGhvcmVQcm9w
ZXJ0aWVzS0hSKG1QaHlzaWNhbERldmljZSwgJmV4dGVybmFsU2VtYXBob3JlSW5mbywKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmbUV4
dGVybmFsU2VtYXBob3JlUHJvcGVydGllcyk7Ci0gICAgfQorICAgIHZrR2V0UGh5c2ljYWxEZXZp
Y2VGZWF0dXJlczJLSFIobVBoeXNpY2FsRGV2aWNlLCAmZGV2aWNlRmVhdHVyZXMpOworICAgIHZr
R2V0UGh5c2ljYWxEZXZpY2VQcm9wZXJ0aWVzMktIUihtUGh5c2ljYWxEZXZpY2UsICZkZXZpY2VQ
cm9wZXJ0aWVzKTsKIAogICAgIC8vIENsZWFuIHVwIHBOZXh0IGNoYWlucwogICAgIG1MaW5lUmFz
dGVyaXphdGlvbkZlYXR1cmVzLnBOZXh0ICAgICAgICAgICAgICAgICA9IG51bGxwdHI7CkBAIC0x
OTI2LDYgKzE5NTQsOCBAQCB2b2lkIFJlbmRlcmVyVms6OnF1ZXJ5RGV2aWNlRXh0ZW5zaW9uRmVh
dHVyZXMoY29uc3Qgdms6OkV4dGVuc2lvbk5hbWVMaXN0ICZkZXZpYwogICAgIG1Qcm90ZWN0ZWRN
ZW1vcnlQcm9wZXJ0aWVzLnBOZXh0ICAgICAgICAgICAgICAgICA9IG51bGxwdHI7CiAgICAgbUhv
c3RRdWVyeVJlc2V0RmVhdHVyZXMucE5leHQgICAgICAgICAgICAgICAgICAgID0gbnVsbHB0cjsK
ICAgICBtRGVwdGhDbGlwQ29udHJvbEZlYXR1cmVzLnBOZXh0ICAgICAgICAgICAgICAgICAgPSBu
dWxscHRyOworICAgIG1CbGVuZE9wZXJhdGlvbkFkdmFuY2VkRmVhdHVyZXMucE5leHQgICAgICAg
ICAgICA9IG51bGxwdHI7CisgICAgbUJsZW5kT3BlcmF0aW9uQWR2YW5jZWRQcm9wZXJ0aWVzLnBO
ZXh0ICAgICAgICAgID0gbnVsbHB0cjsKIH0KIAogYW5nbGU6OlJlc3VsdCBSZW5kZXJlclZrOjpp
bml0aWFsaXplRGV2aWNlKERpc3BsYXlWayAqZGlzcGxheVZrLCB1aW50MzJfdCBxdWV1ZUZhbWls
eUluZGV4KQpAQCAtMjExMSwxNiArMjE0MSw2IEBAIGFuZ2xlOjpSZXN1bHQgUmVuZGVyZXJWazo6
aW5pdGlhbGl6ZURldmljZShEaXNwbGF5VmsgKmRpc3BsYXlWaywgdWludDMyX3QgcXVldWVGCiAj
ZW5kaWYgIC8vICFkZWZpbmVkKEFOR0xFX1NIQVJFRF9MSUJWVUxLQU4pCiAgICAgfQogCi0gICAg
aWYgKGdldEZlYXR1cmVzKCkuc3VwcG9ydHNFeHRlcm5hbFNlbWFwaG9yZUNhcGFiaWxpdGllcy5l
bmFibGVkKQotICAgIHsKLSAgICAgICAgbUVuYWJsZWREZXZpY2VFeHRlbnNpb25zLnB1c2hfYmFj
ayhWS19LSFJfRVhURVJOQUxfU0VNQVBIT1JFX0NBUEFCSUxJVElFU19FWFRFTlNJT05fTkFNRSk7
Ci0gICAgfQotCi0gICAgaWYgKGdldEZlYXR1cmVzKCkuc3VwcG9ydHNFeHRlcm5hbEZlbmNlQ2Fw
YWJpbGl0aWVzLmVuYWJsZWQpCi0gICAgewotICAgICAgICBtRW5hYmxlZERldmljZUV4dGVuc2lv
bnMucHVzaF9iYWNrKFZLX0tIUl9FWFRFUk5BTF9GRU5DRV9DQVBBQklMSVRJRVNfRVhURU5TSU9O
X05BTUUpOwotICAgIH0KLQogICAgIGlmIChnZXRGZWF0dXJlcygpLnN1cHBvcnRzRXh0ZXJuYWxT
ZW1hcGhvcmVGZC5lbmFibGVkKQogICAgIHsKICAgICAgICAgbUVuYWJsZWREZXZpY2VFeHRlbnNp
b25zLnB1c2hfYmFjayhWS19LSFJfRVhURVJOQUxfU0VNQVBIT1JFX0ZEX0VYVEVOU0lPTl9OQU1F
KTsKQEAgLTIxMjgsNyArMjE0OCw2IEBAIGFuZ2xlOjpSZXN1bHQgUmVuZGVyZXJWazo6aW5pdGlh
bGl6ZURldmljZShEaXNwbGF5VmsgKmRpc3BsYXlWaywgdWludDMyX3QgcXVldWVGCiAKICAgICBp
ZiAoZ2V0RmVhdHVyZXMoKS5zdXBwb3J0c0V4dGVybmFsU2VtYXBob3JlQ2FwYWJpbGl0aWVzLmVu
YWJsZWQpCiAgICAgewotICAgICAgICBtRW5hYmxlZERldmljZUV4dGVuc2lvbnMucHVzaF9iYWNr
KFZLX0tIUl9FWFRFUk5BTF9TRU1BUEhPUkVfQ0FQQUJJTElUSUVTX0VYVEVOU0lPTl9OQU1FKTsK
ICNpZiAhZGVmaW5lZChBTkdMRV9TSEFSRURfTElCVlVMS0FOKQogICAgICAgICBJbml0RXh0ZXJu
YWxTZW1hcGhvcmVDYXBhYmlsaXRpZXNGdW5jdGlvbnMobUluc3RhbmNlKTsKICNlbmRpZiAgLy8g
IWRlZmluZWQoQU5HTEVfU0hBUkVEX0xJQlZVTEtBTikKQEAgLTIxNDQsNyArMjE2Myw2IEBAIGFu
Z2xlOjpSZXN1bHQgUmVuZGVyZXJWazo6aW5pdGlhbGl6ZURldmljZShEaXNwbGF5VmsgKmRpc3Bs
YXlWaywgdWludDMyX3QgcXVldWVGCiAKICAgICBpZiAoZ2V0RmVhdHVyZXMoKS5zdXBwb3J0c0V4
dGVybmFsRmVuY2VDYXBhYmlsaXRpZXMuZW5hYmxlZCkKICAgICB7Ci0gICAgICAgIG1FbmFibGVk
RGV2aWNlRXh0ZW5zaW9ucy5wdXNoX2JhY2soVktfS0hSX0VYVEVSTkFMX0ZFTkNFX0NBUEFCSUxJ
VElFU19FWFRFTlNJT05fTkFNRSk7CiAjaWYgIWRlZmluZWQoQU5HTEVfU0hBUkVEX0xJQlZVTEtB
TikKICAgICAgICAgSW5pdEV4dGVybmFsRmVuY2VDYXBhYmlsaXRpZXNGdW5jdGlvbnMobUluc3Rh
bmNlKTsKICNlbmRpZiAgLy8gIWRlZmluZWQoQU5HTEVfU0hBUkVEX0xJQlZVTEtBTikKQEAgLTIz
ODMsNiArMjQwMSwxMiBAQCBhbmdsZTo6UmVzdWx0IFJlbmRlcmVyVms6OmluaXRpYWxpemVEZXZp
Y2UoRGlzcGxheVZrICpkaXNwbGF5VmssIHVpbnQzMl90IHF1ZXVlRgogICAgICAgICB2azo6QWRk
VG9QTmV4dENoYWluKCZtRW5hYmxlZEZlYXR1cmVzLCAmbURlcHRoQ2xpcENvbnRyb2xGZWF0dXJl
cyk7CiAgICAgfQogCisgICAgaWYgKGdldEZlYXR1cmVzKCkuc3VwcG9ydHNCbGVuZE9wZXJhdGlv
bkFkdmFuY2VkLmVuYWJsZWQpCisgICAgeworICAgICAgICBtRW5hYmxlZERldmljZUV4dGVuc2lv
bnMucHVzaF9iYWNrKFZLX0VYVF9CTEVORF9PUEVSQVRJT05fQURWQU5DRURfRVhURU5TSU9OX05B
TUUpOworICAgICAgICB2azo6QWRkVG9QTmV4dENoYWluKCZtRW5hYmxlZEZlYXR1cmVzLCAmbUJs
ZW5kT3BlcmF0aW9uQWR2YW5jZWRGZWF0dXJlcyk7CisgICAgfQorCiAgICAgbUN1cnJlbnRRdWV1
ZUZhbWlseUluZGV4ID0gcXVldWVGYW1pbHlJbmRleDsKIAogICAgIHZrOjpRdWV1ZUZhbWlseSBx
dWV1ZUZhbWlseTsKQEAgLTI3NDUsNyArMjc2OSwxNiBAQCBnbDo6VmVyc2lvbiBSZW5kZXJlclZr
OjpnZXRNYXhTdXBwb3J0ZWRFU1ZlcnNpb24oKSBjb25zdAogCiBnbDo6VmVyc2lvbiBSZW5kZXJl
clZrOjpnZXRNYXhDb25mb3JtYW50RVNWZXJzaW9uKCkgY29uc3QKIHsKLSAgICByZXR1cm4gTGlt
aXRWZXJzaW9uVG8oZ2V0TWF4U3VwcG9ydGVkRVNWZXJzaW9uKCksIHszLCAxfSk7CisgICAgY29u
c3QgZ2w6OlZlcnNpb24gbWF4U3VwcG9ydGVkRVNWZXJzaW9uID0gZ2V0TWF4U3VwcG9ydGVkRVNW
ZXJzaW9uKCk7CisgICAgY29uc3QgYm9vbCBoYXNHZW9tZXRyeUFuZFRlc3NTdXBwb3J0ID0KKyAg
ICAgICAgZ2V0TmF0aXZlRXh0ZW5zaW9ucygpLmdlb21ldHJ5U2hhZGVyQW55KCkgJiYgZ2V0TmF0
aXZlRXh0ZW5zaW9ucygpLnRlc3NlbGxhdGlvblNoYWRlckVYVDsKKworICAgIGlmICghaGFzR2Vv
bWV0cnlBbmRUZXNzU3VwcG9ydCB8fCAhbUZlYXR1cmVzLmV4cG9zZU5vbkNvbmZvcm1hbnRFeHRl
bnNpb25zQW5kVmVyc2lvbnMuZW5hYmxlZCkKKyAgICB7CisgICAgICAgIHJldHVybiBMaW1pdFZl
cnNpb25UbyhtYXhTdXBwb3J0ZWRFU1ZlcnNpb24sIHszLCAxfSk7CisgICAgfQorCisgICAgcmV0
dXJuIG1heFN1cHBvcnRlZEVTVmVyc2lvbjsKIH0KIAogdm9pZCBSZW5kZXJlclZrOjppbml0RmVh
dHVyZXMoRGlzcGxheVZrICpkaXNwbGF5VmssCkBAIC0yODY4LDE0ICsyOTAxLDYgQEAgdm9pZCBS
ZW5kZXJlclZrOjppbml0RmVhdHVyZXMoRGlzcGxheVZrICpkaXNwbGF5VmssCiAgICAgICAgICZt
RmVhdHVyZXMsIHN1cHBvcnRzRmlsdGVyaW5nUHJlY2lzaW9uLAogICAgICAgICBFeHRlbnNpb25G
b3VuZChWS19HT09HTEVfU0FNUExFUl9GSUxURVJJTkdfUFJFQ0lTSU9OX0VYVEVOU0lPTl9OQU1F
LCBkZXZpY2VFeHRlbnNpb25OYW1lcykpOwogCi0gICAgQU5HTEVfRkVBVFVSRV9DT05ESVRJT04o
Ci0gICAgICAgICZtRmVhdHVyZXMsIHN1cHBvcnRzRXh0ZXJuYWxGZW5jZUNhcGFiaWxpdGllcywK
LSAgICAgICAgRXh0ZW5zaW9uRm91bmQoVktfS0hSX0VYVEVSTkFMX0ZFTkNFX0NBUEFCSUxJVElF
U19FWFRFTlNJT05fTkFNRSwgZGV2aWNlRXh0ZW5zaW9uTmFtZXMpKTsKLQotICAgIEFOR0xFX0ZF
QVRVUkVfQ09ORElUSU9OKCZtRmVhdHVyZXMsIHN1cHBvcnRzRXh0ZXJuYWxTZW1hcGhvcmVDYXBh
YmlsaXRpZXMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgRXh0ZW5zaW9uRm91bmQoVktf
S0hSX0VYVEVSTkFMX1NFTUFQSE9SRV9DQVBBQklMSVRJRVNfRVhURU5TSU9OX05BTUUsCi0gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGV2aWNlRXh0ZW5zaW9uTmFt
ZXMpKTsKLQogICAgIEFOR0xFX0ZFQVRVUkVfQ09ORElUSU9OKAogICAgICAgICAmbUZlYXR1cmVz
LCBzdXBwb3J0c0V4dGVybmFsU2VtYXBob3JlRmQsCiAgICAgICAgIEV4dGVuc2lvbkZvdW5kKFZL
X0tIUl9FWFRFUk5BTF9TRU1BUEhPUkVfRkRfRVhURU5TSU9OX05BTUUsIGRldmljZUV4dGVuc2lv
bk5hbWVzKSk7CkBAIC0yODg5LDE1ICsyOTE0LDM2IEBAIHZvaWQgUmVuZGVyZXJWazo6aW5pdEZl
YXR1cmVzKERpc3BsYXlWayAqZGlzcGxheVZrLAogICAgICAgICBFeHRlbnNpb25Gb3VuZChWS19L
SFJfRVhURVJOQUxfRkVOQ0VfRkRfRVhURU5TSU9OX05BTUUsIGRldmljZUV4dGVuc2lvbk5hbWVz
KSk7CiAKICNpZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0FORFJPSUQpCi0gICAgaWYgKG1GZWF0
dXJlcy5zdXBwb3J0c0V4dGVybmFsRmVuY2VDYXBhYmlsaXRpZXMuZW5hYmxlZCAmJgotICAgICAg
ICBtRmVhdHVyZXMuc3VwcG9ydHNFeHRlcm5hbFNlbWFwaG9yZUNhcGFiaWxpdGllcy5lbmFibGVk
KQorICAgIGlmICgobUZlYXR1cmVzLnN1cHBvcnRzRXh0ZXJuYWxGZW5jZUNhcGFiaWxpdGllcy5l
bmFibGVkICYmCisgICAgICAgICBtRmVhdHVyZXMuc3VwcG9ydHNFeHRlcm5hbFNlbWFwaG9yZUNh
cGFiaWxpdGllcy5lbmFibGVkKSB8fAorICAgICAgICBtUGh5c2ljYWxEZXZpY2VQcm9wZXJ0aWVz
LmFwaVZlcnNpb24gPj0gVktfTUFLRV9WRVJTSU9OKDEsIDEsIDApKQogICAgIHsKKyAgICAgICAg
VmtFeHRlcm5hbEZlbmNlUHJvcGVydGllcyBleHRlcm5hbEZlbmNlUHJvcGVydGllcyA9IHt9Owor
ICAgICAgICBleHRlcm5hbEZlbmNlUHJvcGVydGllcy5zVHlwZSA9IFZLX1NUUlVDVFVSRV9UWVBF
X0VYVEVSTkFMX0ZFTkNFX1BST1BFUlRJRVM7CisKKyAgICAgICAgVmtQaHlzaWNhbERldmljZUV4
dGVybmFsRmVuY2VJbmZvIGV4dGVybmFsRmVuY2VJbmZvID0ge307CisgICAgICAgIGV4dGVybmFs
RmVuY2VJbmZvLnNUeXBlICAgICAgPSBWS19TVFJVQ1RVUkVfVFlQRV9QSFlTSUNBTF9ERVZJQ0Vf
RVhURVJOQUxfRkVOQ0VfSU5GTzsKKyAgICAgICAgZXh0ZXJuYWxGZW5jZUluZm8uaGFuZGxlVHlw
ZSA9IFZLX0VYVEVSTkFMX0ZFTkNFX0hBTkRMRV9UWVBFX1NZTkNfRkRfQklUX0tIUjsKKworICAg
ICAgICB2a0dldFBoeXNpY2FsRGV2aWNlRXh0ZXJuYWxGZW5jZVByb3BlcnRpZXNLSFIobVBoeXNp
Y2FsRGV2aWNlLCAmZXh0ZXJuYWxGZW5jZUluZm8sCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmZXh0ZXJuYWxGZW5jZVByb3BlcnRpZXMpOwor
CisgICAgICAgIFZrRXh0ZXJuYWxTZW1hcGhvcmVQcm9wZXJ0aWVzIGV4dGVybmFsU2VtYXBob3Jl
UHJvcGVydGllcyA9IHt9OworICAgICAgICBleHRlcm5hbFNlbWFwaG9yZVByb3BlcnRpZXMuc1R5
cGUgPSBWS19TVFJVQ1RVUkVfVFlQRV9FWFRFUk5BTF9TRU1BUEhPUkVfUFJPUEVSVElFUzsKKwor
ICAgICAgICBWa1BoeXNpY2FsRGV2aWNlRXh0ZXJuYWxTZW1hcGhvcmVJbmZvIGV4dGVybmFsU2Vt
YXBob3JlSW5mbyA9IHt9OworICAgICAgICBleHRlcm5hbFNlbWFwaG9yZUluZm8uc1R5cGUgPSBW
S19TVFJVQ1RVUkVfVFlQRV9QSFlTSUNBTF9ERVZJQ0VfRVhURVJOQUxfU0VNQVBIT1JFX0lORk87
CisgICAgICAgIGV4dGVybmFsU2VtYXBob3JlSW5mby5oYW5kbGVUeXBlID0gVktfRVhURVJOQUxf
U0VNQVBIT1JFX0hBTkRMRV9UWVBFX1NZTkNfRkRfQklUX0tIUjsKKworICAgICAgICB2a0dldFBo
eXNpY2FsRGV2aWNlRXh0ZXJuYWxTZW1hcGhvcmVQcm9wZXJ0aWVzS0hSKG1QaHlzaWNhbERldmlj
ZSwgJmV4dGVybmFsU2VtYXBob3JlSW5mbywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmZXh0ZXJuYWxTZW1hcGhvcmVQcm9wZXJ0aWVz
KTsKKwogICAgICAgICBBTkdMRV9GRUFUVVJFX0NPTkRJVElPTigKICAgICAgICAgICAgICZtRmVh
dHVyZXMsIHN1cHBvcnRzQW5kcm9pZE5hdGl2ZUZlbmNlU3luYywKICAgICAgICAgICAgIChtRmVh
dHVyZXMuc3VwcG9ydHNFeHRlcm5hbEZlbmNlRmQuZW5hYmxlZCAmJgotICAgICAgICAgICAgIEZl
bmNlUHJvcGVydGllc0NvbXBhdGlibGVXaXRoQW5kcm9pZChtRXh0ZXJuYWxGZW5jZVByb3BlcnRp
ZXMpICYmCisgICAgICAgICAgICAgRmVuY2VQcm9wZXJ0aWVzQ29tcGF0aWJsZVdpdGhBbmRyb2lk
KGV4dGVybmFsRmVuY2VQcm9wZXJ0aWVzKSAmJgogICAgICAgICAgICAgIG1GZWF0dXJlcy5zdXBw
b3J0c0V4dGVybmFsU2VtYXBob3JlRmQuZW5hYmxlZCAmJgotICAgICAgICAgICAgIFNlbWFwaG9y
ZVByb3BlcnRpZXNDb21wYXRpYmxlV2l0aEFuZHJvaWQobUV4dGVybmFsU2VtYXBob3JlUHJvcGVy
dGllcykpKTsKKyAgICAgICAgICAgICBTZW1hcGhvcmVQcm9wZXJ0aWVzQ29tcGF0aWJsZVdpdGhB
bmRyb2lkKGV4dGVybmFsU2VtYXBob3JlUHJvcGVydGllcykpKTsKICAgICB9CiAgICAgZWxzZQog
ICAgIHsKQEAgLTI5MjMsNiArMjk2OSwxMCBAQCB2b2lkIFJlbmRlcmVyVms6OmluaXRGZWF0dXJl
cyhEaXNwbGF5VmsgKmRpc3BsYXlWaywKICAgICBBTkdMRV9GRUFUVVJFX0NPTkRJVElPTigmbUZl
YXR1cmVzLCBzdXBwb3J0c0RlcHRoQ2xpcENvbnRyb2wsCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgbURlcHRoQ2xpcENvbnRyb2xGZWF0dXJlcy5kZXB0aENsaXBDb250cm9sID09IFZLX1RS
VUUpOwogCisgICAgQU5HTEVfRkVBVFVSRV9DT05ESVRJT04oCisgICAgICAgICZtRmVhdHVyZXMs
IHN1cHBvcnRzQmxlbmRPcGVyYXRpb25BZHZhbmNlZCwKKyAgICAgICAgRXh0ZW5zaW9uRm91bmQo
VktfRVhUX0JMRU5EX09QRVJBVElPTl9BRFZBTkNFRF9FWFRFTlNJT05fTkFNRSwgZGV2aWNlRXh0
ZW5zaW9uTmFtZXMpKTsKKwogICAgIEFOR0xFX0ZFQVRVUkVfQ09ORElUSU9OKCZtRmVhdHVyZXMs
IHN1cHBvcnRzVHJhbnNmb3JtRmVlZGJhY2tFeHRlbnNpb24sCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgbVRyYW5zZm9ybUZlZWRiYWNrRmVhdHVyZXMudHJhbnNmb3JtRmVlZGJhY2sgPT0g
VktfVFJVRSk7CiAKQEAgLTMxOTIsNiArMzI0Miw4IEBAIHZvaWQgUmVuZGVyZXJWazo6aW5pdEZl
YXR1cmVzKERpc3BsYXlWayAqZGlzcGxheVZrLAogICAgIC8vIFJldGFpbiBkZWJ1ZyBpbmZvIGlu
IFNQSVItViBibG9iLgogICAgIEFOR0xFX0ZFQVRVUkVfQ09ORElUSU9OKCZtRmVhdHVyZXMsIHJl
dGFpblNwaXJ2RGVidWdJbmZvLCBnZXRFbmFibGVWYWxpZGF0aW9uTGF5ZXJzKCkpOwogCisgICAg
QU5HTEVfRkVBVFVSRV9DT05ESVRJT04oJm1GZWF0dXJlcywgZ2VuZXJhdGVTUElSVlRocm91Z2hH
bHNsYW5nLCBrVXNlU3BpcnZHZW5UaHJvdWdoR2xzbGFuZyk7CisKICAgICBhbmdsZTo6UGxhdGZv
cm1NZXRob2RzICpwbGF0Zm9ybSA9IEFOR0xFUGxhdGZvcm1DdXJyZW50KCk7CiAgICAgcGxhdGZv
cm0tPm92ZXJyaWRlRmVhdHVyZXNWayhwbGF0Zm9ybSwgJm1GZWF0dXJlcyk7CiAKQEAgLTM1NjEs
MzYgKzM2MTMsMjYgQEAgYW5nbGU6OlJlc3VsdCBSZW5kZXJlclZrOjpjbGVhbnVwR2FyYmFnZShT
ZXJpYWwgbGFzdENvbXBsZXRlZFF1ZXVlU2VyaWFsKQogICAgIHN0ZDo6bG9ja19ndWFyZDxzdGQ6
Om11dGV4PiBsb2NrKG1HYXJiYWdlTXV0ZXgpOwogCiAgICAgLy8gQ2xlYW4gdXAgZ2VuZXJhbCBn
YXJiYWdlcwotICAgIHZrOjpTaGFyZWRHYXJiYWdlTGlzdCByZW1haW5pbmdHYXJiYWdlOwogICAg
IHdoaWxlICghbVNoYXJlZEdhcmJhZ2UuZW1wdHkoKSkKICAgICB7CiAgICAgICAgIHZrOjpTaGFy
ZWRHYXJiYWdlICZnYXJiYWdlID0gbVNoYXJlZEdhcmJhZ2UuZnJvbnQoKTsKICAgICAgICAgaWYg
KCFnYXJiYWdlLmRlc3Ryb3lJZkNvbXBsZXRlKHRoaXMsIGxhc3RDb21wbGV0ZWRRdWV1ZVNlcmlh
bCkpCiAgICAgICAgIHsKLSAgICAgICAgICAgIHJlbWFpbmluZ0dhcmJhZ2UucHVzaChzdGQ6Om1v
dmUoZ2FyYmFnZSkpOworICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KICAgICAgICAgbVNo
YXJlZEdhcmJhZ2UucG9wKCk7CiAgICAgfQotICAgIGlmICghcmVtYWluaW5nR2FyYmFnZS5lbXB0
eSgpKQotICAgIHsKLSAgICAgICAgbVNoYXJlZEdhcmJhZ2UgPSBzdGQ6Om1vdmUocmVtYWluaW5n
R2FyYmFnZSk7Ci0gICAgfQogCiAgICAgLy8gQ2xlYW4gdXAgc3ViYWxsb2NhdGlvbiBnYXJiYWdl
cwotICAgIHZrOjpTaGFyZWRCdWZmZXJTdWJhbGxvY2F0aW9uR2FyYmFnZUxpc3QgcmVtYWluaW5n
U3ViYWxsb2NhdGlvbkdhcmJhZ2U7CiAgICAgd2hpbGUgKCFtU3ViYWxsb2NhdGlvbkdhcmJhZ2Uu
ZW1wdHkoKSkKICAgICB7CiAgICAgICAgIHZrOjpTaGFyZWRCdWZmZXJTdWJhbGxvY2F0aW9uR2Fy
YmFnZSAmZ2FyYmFnZSA9IG1TdWJhbGxvY2F0aW9uR2FyYmFnZS5mcm9udCgpOwogICAgICAgICBp
ZiAoIWdhcmJhZ2UuZGVzdHJveUlmQ29tcGxldGUodGhpcywgbGFzdENvbXBsZXRlZFF1ZXVlU2Vy
aWFsKSkKICAgICAgICAgewotICAgICAgICAgICAgcmVtYWluaW5nU3ViYWxsb2NhdGlvbkdhcmJh
Z2UucHVzaChzdGQ6Om1vdmUoZ2FyYmFnZSkpOworICAgICAgICAgICAgYnJlYWs7CiAgICAgICAg
IH0KICAgICAgICAgbVN1YmFsbG9jYXRpb25HYXJiYWdlLnBvcCgpOwogICAgIH0KLSAgICBpZiAo
IXJlbWFpbmluZ1N1YmFsbG9jYXRpb25HYXJiYWdlLmVtcHR5KCkpCi0gICAgewotICAgICAgICBt
U3ViYWxsb2NhdGlvbkdhcmJhZ2UgPSBzdGQ6Om1vdmUocmVtYWluaW5nU3ViYWxsb2NhdGlvbkdh
cmJhZ2UpOwotICAgIH0KIAogICAgIHJldHVybiBhbmdsZTo6UmVzdWx0OjpDb250aW51ZTsKIH0K
QEAgLTM2MDAsNiArMzY0Miw1MSBAQCB2b2lkIFJlbmRlcmVyVms6OmNsZWFudXBDb21wbGV0ZWRD
b21tYW5kc0dhcmJhZ2UoKQogICAgICh2b2lkKWNsZWFudXBHYXJiYWdlKGdldExhc3RDb21wbGV0
ZWRRdWV1ZVNlcmlhbCgpKTsKIH0KIAordm9pZCBSZW5kZXJlclZrOjpjbGVhbnVwUGVuZGluZ1N1
Ym1pc3Npb25HYXJiYWdlKCkKK3sKKyAgICBzdGQ6OmxvY2tfZ3VhcmQ8c3RkOjptdXRleD4gbG9j
ayhtR2FyYmFnZU11dGV4KTsKKworICAgIC8vIENoZWNrIGlmIHBlbmRpbmcgZ2FyYmFnZSBpcyBz
dGlsbCBwZW5kaW5nLiBJZiBub3QsIG1vdmUgdGhlbSB0byB0aGUgZ2FyYmFnZSBsaXN0LgorICAg
IHZrOjpTaGFyZWRHYXJiYWdlTGlzdCBwZW5kaW5nR2FyYmFnZTsKKyAgICB3aGlsZSAoIW1QZW5k
aW5nU3VibWlzc2lvbkdhcmJhZ2UuZW1wdHkoKSkKKyAgICB7CisgICAgICAgIHZrOjpTaGFyZWRH
YXJiYWdlICZnYXJiYWdlID0gbVBlbmRpbmdTdWJtaXNzaW9uR2FyYmFnZS5mcm9udCgpOworICAg
ICAgICBpZiAoIWdhcmJhZ2UudXNlZEluUmVjb3JkZWRDb21tYW5kcygpKQorICAgICAgICB7Cisg
ICAgICAgICAgICBtU2hhcmVkR2FyYmFnZS5wdXNoKHN0ZDo6bW92ZShnYXJiYWdlKSk7CisgICAg
ICAgIH0KKyAgICAgICAgZWxzZQorICAgICAgICB7CisgICAgICAgICAgICBwZW5kaW5nR2FyYmFn
ZS5wdXNoKHN0ZDo6bW92ZShnYXJiYWdlKSk7CisgICAgICAgIH0KKyAgICAgICAgbVBlbmRpbmdT
dWJtaXNzaW9uR2FyYmFnZS5wb3AoKTsKKyAgICB9CisgICAgaWYgKCFwZW5kaW5nR2FyYmFnZS5l
bXB0eSgpKQorICAgIHsKKyAgICAgICAgbVBlbmRpbmdTdWJtaXNzaW9uR2FyYmFnZSA9IHN0ZDo6
bW92ZShwZW5kaW5nR2FyYmFnZSk7CisgICAgfQorCisgICAgdms6OlNoYXJlZEJ1ZmZlclN1YmFs
bG9jYXRpb25HYXJiYWdlTGlzdCBwZW5kaW5nU3ViYWxsb2NhdGlvbkdhcmJhZ2U7CisgICAgd2hp
bGUgKCFtUGVuZGluZ1N1Ym1pc3Npb25TdWJhbGxvY2F0aW9uR2FyYmFnZS5lbXB0eSgpKQorICAg
IHsKKyAgICAgICAgdms6OlNoYXJlZEJ1ZmZlclN1YmFsbG9jYXRpb25HYXJiYWdlICZzdWJhbGxv
Y2F0aW9uR2FyYmFnZSA9CisgICAgICAgICAgICBtUGVuZGluZ1N1Ym1pc3Npb25TdWJhbGxvY2F0
aW9uR2FyYmFnZS5mcm9udCgpOworICAgICAgICBpZiAoIXN1YmFsbG9jYXRpb25HYXJiYWdlLnVz
ZWRJblJlY29yZGVkQ29tbWFuZHMoKSkKKyAgICAgICAgeworICAgICAgICAgICAgbVN1YmFsbG9j
YXRpb25HYXJiYWdlLnB1c2goc3RkOjptb3ZlKHN1YmFsbG9jYXRpb25HYXJiYWdlKSk7CisgICAg
ICAgIH0KKyAgICAgICAgZWxzZQorICAgICAgICB7CisgICAgICAgICAgICBwZW5kaW5nU3ViYWxs
b2NhdGlvbkdhcmJhZ2UucHVzaChzdGQ6Om1vdmUoc3ViYWxsb2NhdGlvbkdhcmJhZ2UpKTsKKyAg
ICAgICAgfQorICAgICAgICBtUGVuZGluZ1N1Ym1pc3Npb25TdWJhbGxvY2F0aW9uR2FyYmFnZS5w
b3AoKTsKKyAgICB9CisgICAgaWYgKCFwZW5kaW5nU3ViYWxsb2NhdGlvbkdhcmJhZ2UuZW1wdHko
KSkKKyAgICB7CisgICAgICAgIG1QZW5kaW5nU3VibWlzc2lvblN1YmFsbG9jYXRpb25HYXJiYWdl
ID0gc3RkOjptb3ZlKHBlbmRpbmdTdWJhbGxvY2F0aW9uR2FyYmFnZSk7CisgICAgfQorfQorCiB2
b2lkIFJlbmRlcmVyVms6Om9uTmV3VmFsaWRhdGlvbk1lc3NhZ2UoY29uc3Qgc3RkOjpzdHJpbmcg
Jm1lc3NhZ2UpCiB7CiAgICAgbUxhc3RWYWxpZGF0aW9uTWVzc2FnZSA9IG1lc3NhZ2U7CkBAIC0z
NzM1LDcgKzM4MjIsNiBAQCBhbmdsZTo6UmVzdWx0IFJlbmRlcmVyVms6OnN1Ym1pdEZyYW1lKHZr
OjpDb250ZXh0ICpjb250ZXh0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBzdGQ6OnZlY3RvcjxWa1NlbWFwaG9yZT4gJiZ3YWl0U2VtYXBob3JlcywKICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RkOjp2ZWN0b3I8VmtQaXBlbGluZVN0YWdlRmxh
Z3M+ICYmd2FpdFNlbWFwaG9yZVN0YWdlTWFza3MsCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGNvbnN0IHZrOjpTZW1hcGhvcmUgKnNpZ25hbFNlbWFwaG9yZSwKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RkOjp2ZWN0b3I8dms6OlJlc291cmNl
VXNlTGlzdD4gJiZyZXNvdXJjZVVzZUxpc3RzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB2azo6R2FyYmFnZUxpc3QgJiZjdXJyZW50R2FyYmFnZSwKICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgdms6OlNlY29uZGFyeUNvbW1hbmRQb29scyAqY29t
bWFuZFBvb2xzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTZXJpYWwg
KnN1Ym1pdFNlcmlhbE91dCkKQEAgLTM3NjgsMTEgKzM4NTQsNiBAQCBhbmdsZTo6UmVzdWx0IFJl
bmRlcmVyVms6OnN1Ym1pdEZyYW1lKHZrOjpDb250ZXh0ICpjb250ZXh0LAogCiAgICAgd2FpdFNl
bWFwaG9yZXMuY2xlYXIoKTsKICAgICB3YWl0U2VtYXBob3JlU3RhZ2VNYXNrcy5jbGVhcigpOwot
ICAgIGZvciAodms6OlJlc291cmNlVXNlTGlzdCAmaXQgOiByZXNvdXJjZVVzZUxpc3RzKQotICAg
IHsKLSAgICAgICAgaXQucmVsZWFzZVJlc291cmNlVXNlc0FuZFVwZGF0ZVNlcmlhbHMoKnN1Ym1p
dFNlcmlhbE91dCk7Ci0gICAgfQotICAgIHJlc291cmNlVXNlTGlzdHMuY2xlYXIoKTsKIAogICAg
IHJldHVybiBhbmdsZTo6UmVzdWx0OjpDb250aW51ZTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vUmVuZGVyZXJWay5o
IGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9S
ZW5kZXJlclZrLmgKaW5kZXggZGUwOWRlNmIwZWRkNDRjZWMwOTllZGQ5OTk2ODQ3NzM3ODhiMjEx
YS4uNDE3NGI2ZTZmNzM2ZDMwMTVjMGI5Yjc0OWI2YzlhMjdmZGEzM2JlOSAxMDA2NDQKLS0tIGEv
U291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9SZW5k
ZXJlclZrLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRl
cmVyL3Z1bGthbi9SZW5kZXJlclZrLmgKQEAgLTMxMCw3ICszMTAsMTIgQEAgY2xhc3MgUmVuZGVy
ZXJWayA6IGFuZ2xlOjpOb25Db3B5YWJsZQogICAgICAgICBpZiAoIXNoYXJlZEdhcmJhZ2UuZW1w
dHkoKSkKICAgICAgICAgewogICAgICAgICAgICAgdms6OlNoYXJlZEdhcmJhZ2UgZ2FyYmFnZShz
dGQ6Om1vdmUodXNlKSwgc3RkOjptb3ZlKHNoYXJlZEdhcmJhZ2UpKTsKLSAgICAgICAgICAgIGlm
ICghZ2FyYmFnZS5kZXN0cm95SWZDb21wbGV0ZSh0aGlzLCBnZXRMYXN0Q29tcGxldGVkUXVldWVT
ZXJpYWwoKSkpCisgICAgICAgICAgICBpZiAoZ2FyYmFnZS51c2VkSW5SZWNvcmRlZENvbW1hbmRz
KCkpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgc3RkOjpsb2NrX2d1YXJkPHN0ZDo6
bXV0ZXg+IGxvY2sobUdhcmJhZ2VNdXRleCk7CisgICAgICAgICAgICAgICAgbVBlbmRpbmdTdWJt
aXNzaW9uR2FyYmFnZS5wdXNoKHN0ZDo6bW92ZShnYXJiYWdlKSk7CisgICAgICAgICAgICB9Cisg
ICAgICAgICAgICBlbHNlIGlmICghZ2FyYmFnZS5kZXN0cm95SWZDb21wbGV0ZSh0aGlzLCBnZXRM
YXN0Q29tcGxldGVkUXVldWVTZXJpYWwoKSkpCiAgICAgICAgICAgICB7CiAgICAgICAgICAgICAg
ICAgc3RkOjpsb2NrX2d1YXJkPHN0ZDo6bXV0ZXg+IGxvY2sobUdhcmJhZ2VNdXRleCk7CiAgICAg
ICAgICAgICAgICAgbVNoYXJlZEdhcmJhZ2UucHVzaChzdGQ6Om1vdmUoZ2FyYmFnZSkpOwpAQCAt
MzIyLDcgKzMyNywxNSBAQCBjbGFzcyBSZW5kZXJlclZrIDogYW5nbGU6Ok5vbkNvcHlhYmxlCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdms6OkJ1ZmZlclN1YmFsbG9jYXRp
b24gJiZzdWJhbGxvY2F0aW9uKQogICAgIHsKICAgICAgICAgc3RkOjpsb2NrX2d1YXJkPHN0ZDo6
bXV0ZXg+IGxvY2sobUdhcmJhZ2VNdXRleCk7Ci0gICAgICAgIG1TdWJhbGxvY2F0aW9uR2FyYmFn
ZS5lbXBsYWNlKHN0ZDo6bW92ZSh1c2UpLCBzdGQ6Om1vdmUoc3ViYWxsb2NhdGlvbikpOworICAg
ICAgICBpZiAodXNlLnVzZWRJblJlY29yZGVkQ29tbWFuZHMoKSkKKyAgICAgICAgeworICAgICAg
ICAgICAgbVBlbmRpbmdTdWJtaXNzaW9uU3ViYWxsb2NhdGlvbkdhcmJhZ2UuZW1wbGFjZShzdGQ6
Om1vdmUodXNlKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgc3RkOjptb3ZlKHN1YmFsbG9jYXRpb24pKTsKKyAgICAgICAgfQorICAg
ICAgICBlbHNlCisgICAgICAgIHsKKyAgICAgICAgICAgIG1TdWJhbGxvY2F0aW9uR2FyYmFnZS5l
bXBsYWNlKHN0ZDo6bW92ZSh1c2UpLCBzdGQ6Om1vdmUoc3ViYWxsb2NhdGlvbikpOworICAgICAg
ICB9CiAgICAgfQogCiAgICAgYW5nbGU6OlJlc3VsdCBnZXRQaXBlbGluZUNhY2hlKHZrOjpQaXBl
bGluZUNhY2hlICoqcGlwZWxpbmVDYWNoZSk7CkBAIC00MDYsNiArNDE5LDcgQEAgY2xhc3MgUmVu
ZGVyZXJWayA6IGFuZ2xlOjpOb25Db3B5YWJsZQogCiAgICAgYW5nbGU6OlJlc3VsdCBjbGVhbnVw
R2FyYmFnZShTZXJpYWwgbGFzdENvbXBsZXRlZFF1ZXVlU2VyaWFsKTsKICAgICB2b2lkIGNsZWFu
dXBDb21wbGV0ZWRDb21tYW5kc0dhcmJhZ2UoKTsKKyAgICB2b2lkIGNsZWFudXBQZW5kaW5nU3Vi
bWlzc2lvbkdhcmJhZ2UoKTsKIAogICAgIGFuZ2xlOjpSZXN1bHQgc3VibWl0RnJhbWUodms6OkNv
bnRleHQgKmNvbnRleHQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sIGhhc1By
b3RlY3RlZENvbnRlbnQsCkBAIC00MTMsNyArNDI3LDYgQEAgY2xhc3MgUmVuZGVyZXJWayA6IGFu
Z2xlOjpOb25Db3B5YWJsZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RkOjp2ZWN0
b3I8VmtTZW1hcGhvcmU+ICYmd2FpdFNlbWFwaG9yZXMsCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBzdGQ6OnZlY3RvcjxWa1BpcGVsaW5lU3RhZ2VGbGFncz4gJiZ3YWl0U2VtYXBob3Jl
U3RhZ2VNYXNrcywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHZrOjpTZW1h
cGhvcmUgKnNpZ25hbFNlbWFwaG9yZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0
ZDo6dmVjdG9yPHZrOjpSZXNvdXJjZVVzZUxpc3Q+ICYmcmVzb3VyY2VVc2VMaXN0cywKICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHZrOjpHYXJiYWdlTGlzdCAmJmN1cnJlbnRHYXJiYWdl
LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdms6OlNlY29uZGFyeUNvbW1hbmRQb29s
cyAqY29tbWFuZFBvb2xzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU2VyaWFsICpz
dWJtaXRTZXJpYWxPdXQpOwpAQCAtNTkzLDggKzYwNiw4IEBAIGNsYXNzIFJlbmRlcmVyVmsgOiBh
bmdsZTo6Tm9uQ29weWFibGUKICAgICBWa1BoeXNpY2FsRGV2aWNlUHJvdGVjdGVkTWVtb3J5UHJv
cGVydGllcyBtUHJvdGVjdGVkTWVtb3J5UHJvcGVydGllczsKICAgICBWa1BoeXNpY2FsRGV2aWNl
SG9zdFF1ZXJ5UmVzZXRGZWF0dXJlc0VYVCBtSG9zdFF1ZXJ5UmVzZXRGZWF0dXJlczsKICAgICBW
a1BoeXNpY2FsRGV2aWNlRGVwdGhDbGlwQ29udHJvbEZlYXR1cmVzRVhUIG1EZXB0aENsaXBDb250
cm9sRmVhdHVyZXM7Ci0gICAgVmtFeHRlcm5hbEZlbmNlUHJvcGVydGllcyBtRXh0ZXJuYWxGZW5j
ZVByb3BlcnRpZXM7Ci0gICAgVmtFeHRlcm5hbFNlbWFwaG9yZVByb3BlcnRpZXMgbUV4dGVybmFs
U2VtYXBob3JlUHJvcGVydGllczsKKyAgICBWa1BoeXNpY2FsRGV2aWNlQmxlbmRPcGVyYXRpb25B
ZHZhbmNlZEZlYXR1cmVzRVhUIG1CbGVuZE9wZXJhdGlvbkFkdmFuY2VkRmVhdHVyZXM7CisgICAg
VmtQaHlzaWNhbERldmljZUJsZW5kT3BlcmF0aW9uQWR2YW5jZWRQcm9wZXJ0aWVzRVhUIG1CbGVu
ZE9wZXJhdGlvbkFkdmFuY2VkUHJvcGVydGllczsKICAgICBWa1BoeXNpY2FsRGV2aWNlU2FtcGxl
clljYmNyQ29udmVyc2lvbkZlYXR1cmVzIG1TYW1wbGVyWWNiY3JDb252ZXJzaW9uRmVhdHVyZXM7
CiAgICAgc3RkOjp2ZWN0b3I8VmtRdWV1ZUZhbWlseVByb3BlcnRpZXM+IG1RdWV1ZUZhbWlseVBy
b3BlcnRpZXM7CiAgICAgdWludDMyX3QgbU1heFZlcnRleEF0dHJpYkRpdmlzb3I7CkBAIC02MDgs
OSArNjIxLDE2IEBAIGNsYXNzIFJlbmRlcmVyVmsgOiBhbmdsZTo6Tm9uQ29weWFibGUKIAogICAg
IGJvb2wgbURldmljZUxvc3Q7CiAKKyAgICAvLyBXZSBncm91cCBnYXJiYWdlIGludG8gZm91ciBj
YXRlZ29yaWVzOiBtU2hhcmVkR2FyYmFnZSBpcyB0aGUgZ2FyYmFnZSB0aGF0IGhhcyBhbHJlYWR5
CisgICAgLy8gc3VibWl0dGVkIHRvIHZ1bGthbiwgd2UgZXhwZWN0IHRoZW0gdG8gZmluaXNoIGlu
IGZpbml0ZSB0aW1lLiBtUGVuZGluZ1N1Ym1pc3Npb25HYXJiYWdlIGlzCisgICAgLy8gdGhlIGdh
cmJhZ2UgdGhhdCBpcyBzdGlsbCByZWZlcmVuY2VkIGluIHRoZSByZWNvcmRlZCBjb21tYW5kcy4g
c3ViYWxsb2NhdGlvbnMgaGF2ZSBpdHMgb3duCisgICAgLy8gZGVkaWNhdGVkIGdhcmJhZ2UgbGlz
dCBmb3IgcGVyZm9ybWFuY2Ugb3B0aW1pemF0aW9uIHNpbmNlIHRoZXkgdGVuZCB0byBiZSB0aGUg
bW9zdCBjb21tb24KKyAgICAvLyBnYXJiYWdlIG9iamVjdHMuIEFsbCB0aGVzZSBmb3VyIGdyb3Vw
cyBvZiBnYXJiYWdlIHNoYXJlIHRoZSBzYW1lIG11dGV4IGxvY2suCiAgICAgc3RkOjptdXRleCBt
R2FyYmFnZU11dGV4OwogICAgIHZrOjpTaGFyZWRHYXJiYWdlTGlzdCBtU2hhcmVkR2FyYmFnZTsK
KyAgICB2azo6U2hhcmVkR2FyYmFnZUxpc3QgbVBlbmRpbmdTdWJtaXNzaW9uR2FyYmFnZTsKICAg
ICB2azo6U2hhcmVkQnVmZmVyU3ViYWxsb2NhdGlvbkdhcmJhZ2VMaXN0IG1TdWJhbGxvY2F0aW9u
R2FyYmFnZTsKKyAgICB2azo6U2hhcmVkQnVmZmVyU3ViYWxsb2NhdGlvbkdhcmJhZ2VMaXN0IG1Q
ZW5kaW5nU3VibWlzc2lvblN1YmFsbG9jYXRpb25HYXJiYWdlOwogCiAgICAgdms6Ok1lbW9yeVBy
b3BlcnRpZXMgbU1lbW9yeVByb3BlcnRpZXM7CiAgICAgdms6OkZvcm1hdFRhYmxlIG1Gb3JtYXRU
YWJsZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9y
ZW5kZXJlci92dWxrYW4vUmVzb3VyY2VWay5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9z
cmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL1Jlc291cmNlVmsuY3BwCmluZGV4IDgzOTE0ZmNh
YTlkZGMwNTMyZGRhZDJhY2I4ZjI3ZWI3ZDgyZGEwY2QuLmQ2MTY2OGI3YWNjNmVhZDk5MDViMTJk
ZTBlZjIwZDIzYjMyYmRmZmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3Ny
Yy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vUmVzb3VyY2VWay5jcHAKKysrIGIvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9SZXNvdXJjZVZrLmNw
cApAQCAtMTcsNiArMTcsOCBAQCBuYW1lc3BhY2UgdmsKIHsKIG5hbWVzcGFjZQogeworY29uc3Rl
eHByIHNpemVfdCBrRGVmYXVsdFJlc291cmNlVXNlQ291bnQgPSA0MDk2OworCiBhbmdsZTo6UmVz
dWx0IEZpbmlzaFJ1bm5pbmdDb21tYW5kcyhDb250ZXh0VmsgKmNvbnRleHRWaywgU2VyaWFsIHNl
cmlhbCkKIHsKICAgICByZXR1cm4gY29udGV4dFZrLT5maW5pc2hUb1NlcmlhbChzZXJpYWwpOwpA
QCAtMTgzLDEzICsxODUsMTMgQEAgYm9vbCBTaGFyZWRHYXJiYWdlOjpkZXN0cm95SWZDb21wbGV0
ZShSZW5kZXJlclZrICpyZW5kZXJlciwgU2VyaWFsIGNvbXBsZXRlZFNlcmkKIC8vIFJlc291cmNl
VXNlTGlzdCBpbXBsZW1lbnRhdGlvbi4KIFJlc291cmNlVXNlTGlzdDo6UmVzb3VyY2VVc2VMaXN0
KCkKIHsKLSAgICBjb25zdGV4cHIgc2l6ZV90IGtEZWZhdWx0UmVzb3VyY2VVc2VDb3VudCA9IDQw
OTY7CiAgICAgbVJlc291cmNlVXNlcy5yZXNlcnZlKGtEZWZhdWx0UmVzb3VyY2VVc2VDb3VudCk7
CiB9CiAKIFJlc291cmNlVXNlTGlzdDo6UmVzb3VyY2VVc2VMaXN0KFJlc291cmNlVXNlTGlzdCAm
Jm90aGVyKQogewogICAgICp0aGlzID0gc3RkOjptb3ZlKG90aGVyKTsKKyAgICBvdGhlci5tUmVz
b3VyY2VVc2VzLnJlc2VydmUoa0RlZmF1bHRSZXNvdXJjZVVzZUNvdW50KTsKIH0KIAogUmVzb3Vy
Y2VVc2VMaXN0Ojp+UmVzb3VyY2VVc2VMaXN0KCkKQEAgLTE5Nyw2ICsxOTksMTYgQEAgUmVzb3Vy
Y2VVc2VMaXN0Ojp+UmVzb3VyY2VVc2VMaXN0KCkKICAgICBBU1NFUlQobVJlc291cmNlVXNlcy5l
bXB0eSgpKTsKIH0KIAordm9pZCBSZXNvdXJjZVVzZUxpc3Q6OmNvcHkoUmVzb3VyY2VVc2VMaXN0
ICZzcmNSZXNvdXJjZVVzZSkKK3sKKyAgICBzaXplX3Qgc2l6ZSA9IHNyY1Jlc291cmNlVXNlLm1S
ZXNvdXJjZVVzZXMuc2l6ZSgpOworICAgIG1SZXNvdXJjZVVzZXMucmVzaXplKHNpemUpOworICAg
IGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgc2l6ZTsgaSsrKQorICAgIHsKKyAgICAgICAgbVJlc291
cmNlVXNlc1tpXS5jb3B5KHNyY1Jlc291cmNlVXNlLm1SZXNvdXJjZVVzZXNbaV0pOworICAgIH0K
K30KKwogUmVzb3VyY2VVc2VMaXN0ICZSZXNvdXJjZVVzZUxpc3Q6Om9wZXJhdG9yPShSZXNvdXJj
ZVVzZUxpc3QgJiZyaHMpCiB7CiAgICAgc3RkOjpzd2FwKG1SZXNvdXJjZVVzZXMsIHJocy5tUmVz
b3VyY2VVc2VzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJB
TkdMRS9yZW5kZXJlci92dWxrYW4vUmVzb3VyY2VWay5oIGIvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9SZXNvdXJjZVZrLmgKaW5kZXggMDM2ZTYx
YjliZGViZjkxOTdjYTA5MzAzYjY2NjU0YjczYTk0MmEyZS4uNTQxYTQ2NWU2MWNmNDQ0MGMzNDNk
NzY2ZDBlMjNjZjA0YmRkNDcwMSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUv
c3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9SZXNvdXJjZVZrLmgKKysrIGIvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9SZXNvdXJjZVZrLmgK
QEAgLTQ1LDYgKzQ1LDEyIEBAIGNsYXNzIFNoYXJlZFJlc291cmNlVXNlIGZpbmFsIDogYW5nbGU6
Ok5vbkNvcHlhYmxlCiAgICAgICAgIHJldHVybiAqdGhpczsKICAgICB9CiAKKyAgICB2b2lkIGNv
cHkoU2hhcmVkUmVzb3VyY2VVc2UgJnNyYykKKyAgICB7CisgICAgICAgIG1Vc2UgPSBzcmMubVVz
ZTsKKyAgICAgICAgbVVzZS0+Y291bnRlcisrOworICAgIH0KKwogICAgIEFOR0xFX0lOTElORSBi
b29sIHZhbGlkKCkgY29uc3QgeyByZXR1cm4gbVVzZSAhPSBudWxscHRyOyB9CiAKICAgICB2b2lk
IGluaXQoKQpAQCAtMTI4LDYgKzEzNCw3IEBAIGNsYXNzIFNoYXJlZEJ1ZmZlclN1YmFsbG9jYXRp
b25HYXJiYWdlCiAgICAgflNoYXJlZEJ1ZmZlclN1YmFsbG9jYXRpb25HYXJiYWdlKCkgPSBkZWZh
dWx0OwogCiAgICAgYm9vbCBkZXN0cm95SWZDb21wbGV0ZShSZW5kZXJlclZrICpyZW5kZXJlciwg
U2VyaWFsIGNvbXBsZXRlZFNlcmlhbCk7CisgICAgYm9vbCB1c2VkSW5SZWNvcmRlZENvbW1hbmRz
KCkgY29uc3QgeyByZXR1cm4gbUxpZmV0aW1lLnVzZWRJblJlY29yZGVkQ29tbWFuZHMoKTsgfQog
CiAgIHByaXZhdGU6CiAgICAgU2hhcmVkUmVzb3VyY2VVc2UgbUxpZmV0aW1lOwpAQCAtMTQ1LDYg
KzE1Miw3IEBAIGNsYXNzIFNoYXJlZEdhcmJhZ2UKICAgICBTaGFyZWRHYXJiYWdlICZvcGVyYXRv
cj0oU2hhcmVkR2FyYmFnZSAmJnJocyk7CiAKICAgICBib29sIGRlc3Ryb3lJZkNvbXBsZXRlKFJl
bmRlcmVyVmsgKnJlbmRlcmVyLCBTZXJpYWwgY29tcGxldGVkU2VyaWFsKTsKKyAgICBib29sIHVz
ZWRJblJlY29yZGVkQ29tbWFuZHMoKSBjb25zdCB7IHJldHVybiBtTGlmZXRpbWUudXNlZEluUmVj
b3JkZWRDb21tYW5kcygpOyB9CiAKICAgcHJpdmF0ZToKICAgICBTaGFyZWRSZXNvdXJjZVVzZSBt
TGlmZXRpbWU7CkBAIC0xNjMsNiArMTcxLDcgQEAgY2xhc3MgUmVzb3VyY2VVc2VMaXN0IGZpbmFs
IDogYW5nbGU6Ok5vbkNvcHlhYmxlCiAgICAgUmVzb3VyY2VVc2VMaXN0ICZvcGVyYXRvcj0oUmVz
b3VyY2VVc2VMaXN0ICYmcmhzKTsKIAogICAgIHZvaWQgYWRkKGNvbnN0IFNoYXJlZFJlc291cmNl
VXNlICZyZXNvdXJjZVVzZSk7CisgICAgdm9pZCBjb3B5KFJlc291cmNlVXNlTGlzdCAmc3JjUmVz
b3VyY2VVc2UpOwogCiAgICAgdm9pZCByZWxlYXNlUmVzb3VyY2VVc2VzKCk7CiAgICAgdm9pZCBy
ZWxlYXNlUmVzb3VyY2VVc2VzQW5kVXBkYXRlU2VyaWFscyhTZXJpYWwgc2VyaWFsKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxr
YW4vU3VyZmFjZVZrLmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9y
ZW5kZXJlci92dWxrYW4vU3VyZmFjZVZrLmNwcAppbmRleCBjNGViZmNjMjQwZTUxYWViYzJiNDhi
NjY4NmQ4M2I1ZDNjMGViNWU5Li4wMDI2OTM2OTcxMjk3ZmYxNjM5N2UwNzIxMDQ5ZjlmOWZmMDZh
OWFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVu
ZGVyZXIvdnVsa2FuL1N1cmZhY2VWay5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUv
c3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9TdXJmYWNlVmsuY3BwCkBAIC0xNzUsNiArMTc1
LDEwIEBAIFZrQ29sb3JTcGFjZUtIUiBNYXBFZ2xDb2xvclNwYWNlVG9Wa0NvbG9yU3BhY2UoRUdM
ZW51bSBFR0xDb2xvcnNwYWNlKQogICAgICAgICAgICAgcmV0dXJuIFZLX0NPTE9SX1NQQUNFX0VY
VEVOREVEX1NSR0JfTElORUFSX0VYVDsKICAgICAgICAgY2FzZSBFR0xfR0xfQ09MT1JTUEFDRV9T
Q1JHQl9FWFQ6CiAgICAgICAgICAgICByZXR1cm4gVktfQ09MT1JfU1BBQ0VfRVhURU5ERURfU1JH
Ql9OT05MSU5FQVJfRVhUOworICAgICAgICBjYXNlIEVHTF9HTF9DT0xPUlNQQUNFX0JUMjAyMF9M
SU5FQVJfRVhUOgorICAgICAgICAgICAgcmV0dXJuIFZLX0NPTE9SX1NQQUNFX0JUMjAyMF9MSU5F
QVJfRVhUOworICAgICAgICBjYXNlIEVHTF9HTF9DT0xPUlNQQUNFX0JUMjAyMF9QUV9FWFQ6Cisg
ICAgICAgICAgICByZXR1cm4gVktfQ09MT1JfU1BBQ0VfSERSMTBfU1QyMDg0X0VYVDsKICAgICAg
ICAgZGVmYXVsdDoKICAgICAgICAgICAgIFVOUkVBQ0hBQkxFKCk7CiAgICAgICAgICAgICByZXR1
cm4gVktfQ09MT1JfU1BBQ0VfU1JHQl9OT05MSU5FQVJfS0hSOwpAQCAtNDQ1LDkgKzQ0OSw5IEBA
IHZvaWQgT2Zmc2NyZWVuU3VyZmFjZVZrOjpBdHRhY2htZW50SW1hZ2U6OmRlc3Ryb3koY29uc3Qg
ZWdsOjpEaXNwbGF5ICpkaXNwbGF5KQogICAgIERpc3BsYXlWayAqZGlzcGxheVZrID0gdms6Okdl
dEltcGwoZGlzcGxheSk7CiAgICAgUmVuZGVyZXJWayAqcmVuZGVyZXIgPSBkaXNwbGF5VmstPmdl
dFJlbmRlcmVyKCk7CiAgICAgLy8gRnJvbnQgZW5kIG11c3QgZW5zdXJlIGFsbCB1c2FnZSBoYXMg
YmVlbiBzdWJtaXR0ZWQuCisgICAgaW1hZ2UuY29sbGVjdFZpZXdHYXJiYWdlKHJlbmRlcmVyLCAm
aW1hZ2VWaWV3cyk7CiAgICAgaW1hZ2UucmVsZWFzZUltYWdlKHJlbmRlcmVyKTsKICAgICBpbWFn
ZS5yZWxlYXNlU3RhZ2VkVXBkYXRlcyhyZW5kZXJlcik7Ci0gICAgaW1hZ2VWaWV3cy5yZWxlYXNl
KHJlbmRlcmVyKTsKIH0KIAogT2Zmc2NyZWVuU3VyZmFjZVZrOjpPZmZzY3JlZW5TdXJmYWNlVmso
Y29uc3QgZWdsOjpTdXJmYWNlU3RhdGUgJnN1cmZhY2VTdGF0ZSwgUmVuZGVyZXJWayAqcmVuZGVy
ZXIpCkBAIC03MzEsNyArNzM1LDggQEAgV2luZG93U3VyZmFjZVZrOjpXaW5kb3dTdXJmYWNlVmso
Y29uc3QgZWdsOjpTdXJmYWNlU3RhdGUgJnN1cmZhY2VTdGF0ZSwgRUdMTmF0aXYKICAgICAgIG1E
ZXB0aFN0ZW5jaWxJbWFnZUJpbmRpbmcodGhpcywga0FueVN1cmZhY2VJbWFnZVN1YmplY3RJbmRl
eCksCiAgICAgICBtQ29sb3JJbWFnZU1TQmluZGluZyh0aGlzLCBrQW55U3VyZmFjZUltYWdlU3Vi
amVjdEluZGV4KSwKICAgICAgIG1OZWVkVG9BY3F1aXJlTmV4dFN3YXBjaGFpbkltYWdlKGZhbHNl
KSwKLSAgICAgIG1GcmFtZUNvdW50KDEpCisgICAgICBtRnJhbWVDb3VudCgxKSwKKyAgICAgIG1C
dWZmZXJBZ2VRdWVyeUZyYW1lTnVtYmVyKDApCiB7CiAgICAgLy8gSW5pdGlhbGl6ZSB0aGUgY29s
b3IgcmVuZGVyIHRhcmdldCB3aXRoIHRoZSBtdWx0aXNhbXBsZWQgdGFyZ2V0cy4gIElmIG5vdCBt
dWx0aXNhbXBsZWQsIHRoZQogICAgIC8vIHJlbmRlciB0YXJnZXQgd2lsbCBiZSB1cGRhdGVkIHRv
IHJlZmVyIHRvIGEgc3dhcGNoYWluIGltYWdlIG9uIGV2ZXJ5IGFjcXVpcmUuCkBAIC0xNDc2LDE2
ICsxNDgxLDE2IEBAIHZvaWQgV2luZG93U3VyZmFjZVZrOjpyZWxlYXNlU3dhcGNoYWluSW1hZ2Vz
KENvbnRleHRWayAqY29udGV4dFZrKQogCiAgICAgaWYgKG1EZXB0aFN0ZW5jaWxJbWFnZS52YWxp
ZCgpKQogICAgIHsKKyAgICAgICAgbURlcHRoU3RlbmNpbEltYWdlLmNvbGxlY3RWaWV3R2FyYmFn
ZShyZW5kZXJlciwgJm1EZXB0aFN0ZW5jaWxJbWFnZVZpZXdzKTsKICAgICAgICAgbURlcHRoU3Rl
bmNpbEltYWdlLnJlbGVhc2VJbWFnZUZyb21TaGFyZUNvbnRleHRzKHJlbmRlcmVyLCBjb250ZXh0
VmspOwogICAgICAgICBtRGVwdGhTdGVuY2lsSW1hZ2UucmVsZWFzZVN0YWdlZFVwZGF0ZXMocmVu
ZGVyZXIpOwotICAgICAgICBtRGVwdGhTdGVuY2lsSW1hZ2VWaWV3cy5yZWxlYXNlKHJlbmRlcmVy
KTsKICAgICB9CiAKICAgICBpZiAobUNvbG9ySW1hZ2VNUy52YWxpZCgpKQogICAgIHsKKyAgICAg
ICAgbUNvbG9ySW1hZ2VNUy5jb2xsZWN0Vmlld0dhcmJhZ2UocmVuZGVyZXIsICZtQ29sb3JJbWFn
ZU1TVmlld3MpOwogICAgICAgICBtQ29sb3JJbWFnZU1TLnJlbGVhc2VJbWFnZUZyb21TaGFyZUNv
bnRleHRzKHJlbmRlcmVyLCBjb250ZXh0VmspOwogICAgICAgICBtQ29sb3JJbWFnZU1TLnJlbGVh
c2VTdGFnZWRVcGRhdGVzKHJlbmRlcmVyKTsKLSAgICAgICAgbUNvbG9ySW1hZ2VNU1ZpZXdzLnJl
bGVhc2UocmVuZGVyZXIpOwogICAgICAgICBjb250ZXh0VmstPmFkZEdhcmJhZ2UoJm1GcmFtZWJ1
ZmZlck1TKTsKICAgICB9CiAKQEAgLTE0OTMsMTEgKzE0OTgsMTIgQEAgdm9pZCBXaW5kb3dTdXJm
YWNlVms6OnJlbGVhc2VTd2FwY2hhaW5JbWFnZXMoQ29udGV4dFZrICpjb250ZXh0VmspCiAKICAg
ICBmb3IgKFN3YXBjaGFpbkltYWdlICZzd2FwY2hhaW5JbWFnZSA6IG1Td2FwY2hhaW5JbWFnZXMp
CiAgICAgeworICAgICAgICBzd2FwY2hhaW5JbWFnZS5pbWFnZS5jb2xsZWN0Vmlld0dhcmJhZ2Uo
cmVuZGVyZXIsICZzd2FwY2hhaW5JbWFnZS5pbWFnZVZpZXdzKTsKKyAgICAgICAgc3dhcGNoYWlu
SW1hZ2UuaW1hZ2UucmVsZWFzZUltYWdlQW5kVmlld0dhcmJhZ2UocmVuZGVyZXIpOwogICAgICAg
ICAvLyBXZSBkb24ndCBvd24gdGhlIHN3YXBjaGFpbiBpbWFnZSBoYW5kbGVzLCBzbyB3ZSBqdXN0
IHJlbW92ZSBvdXIgcmVmZXJlbmNlIHRvIGl0LgogICAgICAgICBzd2FwY2hhaW5JbWFnZS5pbWFn
ZS5yZXNldEltYWdlV2Vha1JlZmVyZW5jZSgpOwogICAgICAgICBzd2FwY2hhaW5JbWFnZS5pbWFn
ZS5kZXN0cm95KHJlbmRlcmVyKTsKIAotICAgICAgICBzd2FwY2hhaW5JbWFnZS5pbWFnZVZpZXdz
LnJlbGVhc2UocmVuZGVyZXIpOwogICAgICAgICBjb250ZXh0VmstPmFkZEdhcmJhZ2UoJnN3YXBj
aGFpbkltYWdlLmZyYW1lYnVmZmVyKTsKICAgICAgICAgaWYgKHN3YXBjaGFpbkltYWdlLmZldGNo
RnJhbWVidWZmZXIudmFsaWQoKSkKICAgICAgICAgewpAQCAtMTg4MCwxNCArMTg4NiwxMiBAQCBh
bmdsZTo6UmVzdWx0IFdpbmRvd1N1cmZhY2VWazo6ZG9EZWZlcnJlZEFjcXVpcmVOZXh0SW1hZ2Uo
Y29uc3QgZ2w6OkNvbnRleHQgKmNvbgogICAgICAgICBBTkdMRV9WS19UUlkoY29udGV4dFZrLCBy
ZXN1bHQpOwogICAgIH0KIAotICAgIC8vIEludmFsaWRhdGUgdGhlIGNvbG9yIGltYWdlIGlmIHRo
ZSBzd2FwIGJlaGF2aW9yIGlzIEVHTF9CVUZGRVJfREVTVFJPWUVELgotICAgIC8vIEFsc28gaW52
YWxpZGF0ZSB0aGUgbXVsdGktc2FtcGxlIGNvbG9yIGltYWdlIGFuZCBkZXB0aC9zdGVuY2lsIGNv
bnRlbnQuCi0gICAgaWYgKG1TdGF0ZS5zd2FwQmVoYXZpb3IgPT0gRUdMX0JVRkZFUl9ERVNUUk9Z
RUQpCisgICAgaWYgKG1TdGF0ZS5zd2FwQmVoYXZpb3IgPT0gRUdMX0JVRkZFUl9ERVNUUk9ZRUQg
JiYgbUJ1ZmZlckFnZVF1ZXJ5RnJhbWVOdW1iZXIgPT0gMCkKICAgICB7CiAgICAgICAgIG1Td2Fw
Y2hhaW5JbWFnZXNbbUN1cnJlbnRTd2FwY2hhaW5JbWFnZUluZGV4XS5pbWFnZS5pbnZhbGlkYXRl
U3VicmVzb3VyY2VDb250ZW50KAogICAgICAgICAgICAgY29udGV4dFZrLCBnbDo6TGV2ZWxJbmRl
eCgwKSwgMCwgMSk7CisgICAgICAgIG1Db2xvckltYWdlTVMuaW52YWxpZGF0ZVN1YnJlc291cmNl
Q29udGVudChjb250ZXh0VmssIGdsOjpMZXZlbEluZGV4KDApLCAwLCAxKTsKICAgICB9Ci0gICAg
bUNvbG9ySW1hZ2VNUy5pbnZhbGlkYXRlU3VicmVzb3VyY2VDb250ZW50KGNvbnRleHRWaywgZ2w6
OkxldmVsSW5kZXgoMCksIDAsIDEpOwogICAgIG1EZXB0aFN0ZW5jaWxJbWFnZS5pbnZhbGlkYXRl
U3VicmVzb3VyY2VDb250ZW50KGNvbnRleHRWaywgZ2w6OkxldmVsSW5kZXgoMCksIDAsIDEpOwog
ICAgIG1EZXB0aFN0ZW5jaWxJbWFnZS5pbnZhbGlkYXRlU3VicmVzb3VyY2VTdGVuY2lsQ29udGVu
dChjb250ZXh0VmssIGdsOjpMZXZlbEluZGV4KDApLCAwLCAxKTsKIApAQCAtMjMxNywxMyArMjMy
MSw2IEBAIGFuZ2xlOjpSZXN1bHQgV2luZG93U3VyZmFjZVZrOjpkcmF3T3ZlcmxheShDb250ZXh0
VmsgKmNvbnRleHRWaywgU3dhcGNoYWluSW1hZ2UKIAogZWdsOjpFcnJvciBXaW5kb3dTdXJmYWNl
Vms6OmdldEJ1ZmZlckFnZShjb25zdCBnbDo6Q29udGV4dCAqY29udGV4dCwgRUdMaW50ICphZ2Up
CiB7Ci0gICAgLy8gU2V0IGFnZSB0byAwIGlmIHN3YXAgYmVoYXZpb3IgaXMgRUdMX0JVRkZFUl9E
RVNUUk9ZRUQuCi0gICAgaWYgKGFnZSAhPSBudWxscHRyICYmIG1TdGF0ZS5zd2FwQmVoYXZpb3Ig
PT0gRUdMX0JVRkZFUl9ERVNUUk9ZRUQpCi0gICAgewotICAgICAgICAqYWdlID0gMDsKLSAgICAg
ICAgcmV0dXJuIGVnbDo6Tm9FcnJvcigpOwotICAgIH0KLQogICAgIGlmIChtTmVlZFRvQWNxdWly
ZU5leHRTd2FwY2hhaW5JbWFnZSkKICAgICB7CiAgICAgICAgIC8vIEFjcXVpcmUgdGhlIGN1cnJl
bnQgaW1hZ2UgaWYgbmVlZGVkLgpAQCAtMjMzNiwxMiArMjMzMywxOSBAQCBlZ2w6OkVycm9yIFdp
bmRvd1N1cmZhY2VWazo6Z2V0QnVmZmVyQWdlKGNvbnN0IGdsOjpDb250ZXh0ICpjb250ZXh0LCBF
R0xpbnQgKmFnZQogICAgICAgICB9CiAgICAgfQogCisgICAgaWYgKG1CdWZmZXJBZ2VRdWVyeUZy
YW1lTnVtYmVyID09IDApCisgICAgeworICAgICAgICBBTkdMRV9WS19QRVJGX1dBUk5JTkcodms6
OkdldEltcGwoY29udGV4dCksIEdMX0RFQlVHX1NFVkVSSVRZX0xPVywKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICJRdWVyeWluZyBhZ2Ugb2YgYSBzdXJmYWNlIHdpbGwgbWFrZSBpdCBy
ZXRhaW4gaXRzIGNvbnRlbnQiKTsKKworICAgICAgICBtQnVmZmVyQWdlUXVlcnlGcmFtZU51bWJl
ciA9IG1GcmFtZUNvdW50OworICAgIH0KICAgICBpZiAoYWdlICE9IG51bGxwdHIpCiAgICAgewog
ICAgICAgICB1aW50NjRfdCBmcmFtZU51bWJlciA9IG1Td2FwY2hhaW5JbWFnZXNbbUN1cnJlbnRT
d2FwY2hhaW5JbWFnZUluZGV4XS5tRnJhbWVOdW1iZXI7Ci0gICAgICAgIGlmIChmcmFtZU51bWJl
ciA9PSAwKQorICAgICAgICBpZiAoZnJhbWVOdW1iZXIgPCBtQnVmZmVyQWdlUXVlcnlGcmFtZU51
bWJlcikKICAgICAgICAgewotICAgICAgICAgICAgKmFnZSA9IDA7ICAvLyBIYXMgbm90IGJlZW4g
dXNlZCBmb3IgcmVuZGVyaW5nIHlldCwgbm8gYWdlLgorICAgICAgICAgICAgKmFnZSA9IDA7ICAv
LyBIYXMgbm90IGJlZW4gdXNlZCBmb3IgcmVuZGVyaW5nIHlldCBvciBzaW5jZSBhZ2Ugd2FzIHF1
ZXJpZWQsIG5vIGFnZS4KICAgICAgICAgfQogICAgICAgICBlbHNlCiAgICAgICAgIHsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxr
YW4vU3VyZmFjZVZrLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVu
ZGVyZXIvdnVsa2FuL1N1cmZhY2VWay5oCmluZGV4IDIxNTUxMTJiNDhiZTk4YWEzOTQ1MmMwOWU2
ZmYzYzE3NjdiNGFmZGUuLmJmNGJlZjc2YmI2Y2I3ZjBmMzk5ZTZhOTg0NmZmZjBmNDRiYjAyZWUg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJl
ci92dWxrYW4vU3VyZmFjZVZrLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xp
YkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9TdXJmYWNlVmsuaApAQCAtNDExLDYgKzQxMSw5IEBAIGNs
YXNzIFdpbmRvd1N1cmZhY2VWayA6IHB1YmxpYyBTdXJmYWNlVmsKICAgICAvLyBFR0xfS0hSX2xv
Y2tfc3VyZmFjZTMKICAgICB2azo6QnVmZmVySGVscGVyIG1Mb2NrQnVmZmVySGVscGVyOwogCisg
ICAgLy8gRUdMX0tIUl9wYXJ0aWFsX3VwZGF0ZQorICAgIHVpbnQ2NF90IG1CdWZmZXJBZ2VRdWVy
eUZyYW1lTnVtYmVyOworCiAgICAgLy8gR0xfRVhUX3NoYWRlcl9mcmFtZWJ1ZmZlcl9mZXRjaAog
ICAgIEZyYW1lYnVmZmVyRmV0Y2hNb2RlIG1GcmFtZWJ1ZmZlckZldGNoTW9kZSA9IEZyYW1lYnVm
ZmVyRmV0Y2hNb2RlOjpEaXNhYmxlZDsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL1RleHR1cmVWay5jcHAgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL1RleHR1cmVW
ay5jcHAKaW5kZXggMjM5MGE5NDM1MzIzNTE4YzQ1YzdhN2IyMDU5ZjkwYzVmZWIwYTQ1Ny4uYzJi
ZmJjMzk0OWI3ODJjYTIyZmJhNmFhMDIzMDRiYzhhOTU2ZDJlNCAxMDA2NDQKLS0tIGEvU291cmNl
L1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9UZXh0dXJlVmsu
Y3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci92
dWxrYW4vVGV4dHVyZVZrLmNwcApAQCAtMjY2LDE1ICsyNjYsMTUgQEAgdm9pZCBTZXQzREJhc2VB
cnJheUxheWVyQW5kTGF5ZXJDb3VudChWa0ltYWdlU3VicmVzb3VyY2VMYXllcnMgKlN1YnJlc291
cmNlKQogICAgIFN1YnJlc291cmNlLT5sYXllckNvdW50ICAgICA9IDE7CiB9CiAKLWNvbnN0IHZr
OjpGb3JtYXQgKkFkanVzdFN0b3JhZ2VWaWV3Rm9ybWF0UGVyV29ya2Fyb3VuZHMoQ29udGV4dFZr
ICpjb250ZXh0VmssCitjb25zdCB2azo6Rm9ybWF0ICpBZGp1c3RTdG9yYWdlVmlld0Zvcm1hdFBl
cldvcmthcm91bmRzKFJlbmRlcmVyVmsgKnJlbmRlcmVyLAogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB2azo6Rm9ybWF0ICppbnRl
bmRlZCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgdms6OkltYWdlQWNjZXNzIGFjY2VzcykKIHsKICAgICAvLyByMzJmIGltYWdlcyBhcmUg
ZW11bGF0ZWQgd2l0aCByMzJ1aS4KLSAgICBpZiAoY29udGV4dFZrLT5nZXRGZWF0dXJlcygpLmVt
dWxhdGVSMzJmSW1hZ2VBdG9taWNFeGNoYW5nZS5lbmFibGVkICYmCisgICAgaWYgKHJlbmRlcmVy
LT5nZXRGZWF0dXJlcygpLmVtdWxhdGVSMzJmSW1hZ2VBdG9taWNFeGNoYW5nZS5lbmFibGVkICYm
CiAgICAgICAgIGludGVuZGVkLT5nZXRBY3R1YWxJbWFnZUZvcm1hdElEKGFjY2VzcykgPT0gYW5n
bGU6OkZvcm1hdElEOjpSMzJfRkxPQVQpCiAgICAgewotICAgICAgICByZXR1cm4gJmNvbnRleHRW
ay0+Z2V0UmVuZGVyZXIoKS0+Z2V0Rm9ybWF0KGFuZ2xlOjpGb3JtYXRJRDo6UjMyX1VJTlQpOwor
ICAgICAgICByZXR1cm4gJnJlbmRlcmVyLT5nZXRGb3JtYXQoYW5nbGU6OkZvcm1hdElEOjpSMzJf
VUlOVCk7CiAgICAgfQogCiAgICAgcmV0dXJuIGludGVuZGVkOwpAQCAtNzk1LDcgKzc5NSw3IEBA
IGFuZ2xlOjpSZXN1bHQgVGV4dHVyZVZrOjpjb3B5U3ViSW1hZ2VJbXBsKGNvbnN0IGdsOjpDb250
ZXh0ICpjb250ZXh0LAogICAgICAgICAgICAgY29udGV4dFZrLT5mbHVzaENvbW1hbmRzQW5kRW5k
UmVuZGVyUGFzcyhSZW5kZXJQYXNzQ2xvc3VyZVJlYXNvbjo6UHJlcGFyZUZvckltYWdlQ29weSkp
OwogCiAgICAgICAgIGNvbnN0IHZrOjpJbWFnZVZpZXcgKmNvcHlJbWFnZVZpZXcgPSBudWxscHRy
OwotICAgICAgICBBTkdMRV9UUlkoY29sb3JSZWFkUlQtPmdldEFuZFJldGFpbkNvcHlJbWFnZVZp
ZXcoY29udGV4dFZrLCAmY29weUltYWdlVmlldykpOworICAgICAgICBBTkdMRV9UUlkoY29sb3JS
ZWFkUlQtPmdldENvcHlJbWFnZVZpZXcoY29udGV4dFZrLCAmY29weUltYWdlVmlldykpOwogCiAg
ICAgICAgIHJldHVybiBjb3B5U3ViSW1hZ2VJbXBsV2l0aERyYXcoY29udGV4dFZrLCBvZmZzZXRJ
bWFnZUluZGV4LCBtb2RpZmllZERlc3RPZmZzZXQsIGRzdEZvcm1hdCwKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvclJlYWRSVC0+Z2V0TGV2ZWxJbmRleCgpLCBj
bGlwcGVkU291cmNlQm94LApAQCAtODY5LDcgKzg2OSw3IEBAIGFuZ2xlOjpSZXN1bHQgVGV4dHVy
ZVZrOjpjb3B5U3ViVGV4dHVyZUltcGwoQ29udGV4dFZrICpjb250ZXh0VmssCiAgICAgICAgIHJl
dHVybiBjb3B5U3ViSW1hZ2VJbXBsV2l0aERyYXcoCiAgICAgICAgICAgICBjb250ZXh0VmssIG9m
ZnNldEltYWdlSW5kZXgsIGRzdE9mZnNldCwgZHN0VmtGb3JtYXQsIHNvdXJjZUxldmVsR0wsIHNv
dXJjZUJveCwgZmFsc2UsCiAgICAgICAgICAgICB1bnBhY2tGbGlwWSwgdW5wYWNrUHJlbXVsdGlw
bHlBbHBoYSwgdW5wYWNrVW5tdWx0aXBseUFscGhhLCAmc291cmNlLT5nZXRJbWFnZSgpLAotICAg
ICAgICAgICAgJnNvdXJjZS0+Z2V0Q29weUltYWdlVmlld0FuZFJlY29yZFVzZShjb250ZXh0Vmsp
LCBTdXJmYWNlUm90YXRpb246OklkZW50aXR5KTsKKyAgICAgICAgICAgICZzb3VyY2UtPmdldENv
cHlJbWFnZVZpZXcoKSwgU3VyZmFjZVJvdGF0aW9uOjpJZGVudGl0eSk7CiAgICAgfQogCiAgICAg
QU5HTEVfVktfUEVSRl9XQVJOSU5HKGNvbnRleHRWaywgR0xfREVCVUdfU0VWRVJJVFlfSElHSCwK
QEAgLTE0ODIsOCArMTQ4Miw4IEBAIHZvaWQgVGV4dHVyZVZrOjpyZWxlYXNlQW5kRGVsZXRlSW1h
Z2VBbmRWaWV3cyhDb250ZXh0VmsgKmNvbnRleHRWaykKIHsKICAgICBpZiAobUltYWdlKQogICAg
IHsKLSAgICAgICAgcmVsZWFzZUltYWdlKGNvbnRleHRWayk7CiAgICAgICAgIHJlbGVhc2VTdGFn
ZWRVcGRhdGVzKGNvbnRleHRWayk7CisgICAgICAgIHJlbGVhc2VJbWFnZShjb250ZXh0VmspOwog
ICAgICAgICBtSW1hZ2VPYnNlcnZlckJpbmRpbmcuYmluZChudWxscHRyKTsKICAgICAgICAgbVJl
cXVpcmVzTXV0YWJsZVN0b3JhZ2UgPSBmYWxzZTsKICAgICAgICAgbVJlcXVpcmVkSW1hZ2VBY2Nl
c3MgICAgPSB2azo6SW1hZ2VBY2Nlc3M6OlNhbXBsZU9ubHk7CkBAIC0xOTQzLDcgKzE5NDMsNiBA
QCBhbmdsZTo6UmVzdWx0IFRleHR1cmVWazo6Z2VuZXJhdGVNaXBtYXAoY29uc3QgZ2w6OkNvbnRl
eHQgKmNvbnRleHQpCiAgICAgICAgIEFTU0VSVCgobUltYWdlVXNhZ2VGbGFncyAmIFZLX0lNQUdF
X1VTQUdFX1NUT1JBR0VfQklUKSAhPSAwKTsKIAogICAgICAgICBtSW1hZ2UtPnJldGFpbigmY29u
dGV4dFZrLT5nZXRSZXNvdXJjZVVzZUxpc3QoKSk7Ci0gICAgICAgIGdldEltYWdlVmlld3MoKS5y
ZXRhaW4oJmNvbnRleHRWay0+Z2V0UmVzb3VyY2VVc2VMaXN0KCkpOwogCiAgICAgICAgIHJldHVy
biBnZW5lcmF0ZU1pcG1hcHNXaXRoQ29tcHV0ZShjb250ZXh0VmspOwogICAgIH0KQEAgLTIxNDUs
OCArMjE0NCw3IEBAIGFuZ2xlOjpSZXN1bHQgVGV4dHVyZVZrOjpyZWluaXRJbWFnZUFzUmVuZGVy
YWJsZShDb250ZXh0VmsgKmNvbnRleHRWaywKIAogICAgICAgICByZXR1cm4gY29weVN1YkltYWdl
SW1wbFdpdGhEcmF3KGNvbnRleHRWaywgaW5kZXgsIGdsOjprT2Zmc2V0WmVybywgZm9ybWF0LCBz
b3VyY2VMZXZlbEdMLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNv
dXJjZUJveCwgZmFsc2UsIGZhbHNlLCBmYWxzZSwgZmFsc2UsIG1JbWFnZSwKLSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmZ2V0Q29weUltYWdlVmlld0FuZFJlY29yZFVz
ZShjb250ZXh0VmspLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN1
cmZhY2VSb3RhdGlvbjo6SWRlbnRpdHkpOworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICZnZXRDb3B5SW1hZ2VWaWV3KCksIFN1cmZhY2VSb3RhdGlvbjo6SWRlbnRpdHkp
OwogICAgIH0KIAogICAgIGZvciAodms6OkxldmVsSW5kZXggbGV2ZWxWaygwKTsgbGV2ZWxWayA8
IHZrOjpMZXZlbEluZGV4KGxldmVsQ291bnQpOyArK2xldmVsVmspCkBAIC0yMjY0LDExICsyMjYy
LDggQEAgYW5nbGU6OlJlc3VsdCBUZXh0dXJlVms6OnJlc3BlY2lmeUltYWdlU3RvcmFnZShDb250
ZXh0VmsgKmNvbnRleHRWaykKICAgICAgICAgfQogICAgICAgICBlbHNlCiAgICAgICAgIHsKLSAg
ICAgICAgICAgIC8vIE1ha2UgdGhlIGltYWdlIHN0YWdlIGl0c2VsZiBhcyB1cGRhdGVzIHRvIGl0
cyBsZXZlbHMuCi0gICAgICAgICAgICBtSW1hZ2UtPnN0YWdlU2VsZkFzU3VicmVzb3VyY2VVcGRh
dGVzKGNvbnRleHRWaywgbUltYWdlLT5nZXRMZXZlbENvdW50KCksCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1SZWRlZmluZWRMZXZlbHMpOworICAg
ICAgICAgICAgc3RhZ2VTZWxmQXNTdWJyZXNvdXJjZVVwZGF0ZXMoY29udGV4dFZrKTsKICAgICAg
ICAgfQotCiAgICAgICAgIC8vIFJlbGVhc2UgdGhlIGN1cnJlbnQgaW1hZ2Ugc28gdGhhdCBpdCB3
aWxsIGJlIHJlY3JlYXRlZCB3aXRoIHRoZSBjb3JyZWN0IG51bWJlciBvZiBtaXAKICAgICAgICAg
Ly8gbGV2ZWxzLCBiYXNlIGxldmVsLCBhbmQgbWF4IGxldmVsLgogICAgICAgICByZWxlYXNlSW1h
Z2UoY29udGV4dFZrKTsKQEAgLTIzMjQsNiArMjMxOSwxNSBAQCBhbmdsZTo6UmVzdWx0IFRleHR1
cmVWazo6Z2V0QXR0YWNobWVudFJlbmRlclRhcmdldChjb25zdCBnbDo6Q29udGV4dCAqY29udGV4
dCwKICAgICBBU1NFUlQobVN0YXRlLmhhc0JlZW5Cb3VuZEFzQXR0YWNobWVudCgpKTsKICAgICBB
TkdMRV9UUlkoZW5zdXJlUmVuZGVyYWJsZShjb250ZXh0VmspKTsKIAorICAgIGlmIChtUmVkZWZp
bmVkTGV2ZWxzLmFueSgpKQorICAgIHsKKyAgICAgICAgLy8gSWYgd2UgaGF2ZSByZWRlZmluZWQg
bGV2ZWxzLCB3ZSBtdXN0IGZsdXNoIHRob3NlIG91dCB0byBmaXggdGhlIHJlbmRlciB0YXJnZXRz
LgorICAgICAgICBBTkdMRV9UUlkocmVzcGVjaWZ5SW1hZ2VTdG9yYWdlKGNvbnRleHRWaykpOwor
ICAgIH0KKworICAgIC8vIE90aGVyd2lzZSwgZG9uJ3QgZmx1c2ggc3RhZ2VkIHVwZGF0ZXMgaGVy
ZS4gV2UnbGwgaGFuZGxlIHRoYXQgaW4gRnJhbWVidWZmZXJWayBzbyB3ZSBjYW4KKyAgICAvLyBk
ZWZlciBjbGVhcnMuCisKICAgICBpZiAoIW1JbWFnZS0+dmFsaWQoKSkKICAgICB7CiAgICAgICAg
IC8vIEltbXV0YWJsZSB0ZXh0dXJlIG11c3QgYWxyZWFkeSBoYXZlIGEgdmFsaWQgaW1hZ2UKQEAg
LTIzNjMsOCArMjM2Nyw2IEBAIGFuZ2xlOjpSZXN1bHQgVGV4dHVyZVZrOjpnZXRBdHRhY2htZW50
UmVuZGVyVGFyZ2V0KGNvbnN0IGdsOjpDb250ZXh0ICpjb250ZXh0LAogICAgICAgICAgICAgbVN0
YXRlLmdldFR5cGUoKSwgc2FtcGxlcywgKm1JbWFnZSwgdXNlUm9idXN0SW5pdCkpOwogICAgIH0K
IAotICAgIC8vIERvbid0IGZsdXNoIHN0YWdlZCB1cGRhdGVzIGhlcmUuIFdlJ2xsIGhhbmRsZSB0
aGF0IGluIEZyYW1lYnVmZmVyVmsgc28gaXQgY2FuIGRlZmVyIGNsZWFycy4KLQogICAgIEdMdWlu
dCBsYXllckluZGV4ID0gMCwgbGF5ZXJDb3VudCA9IDAsIGltYWdlTGF5ZXJDb3VudCA9IDA7CiAg
ICAgR2V0UmVuZGVyVGFyZ2V0TGF5ZXJDb3VudEFuZEluZGV4KG1JbWFnZSwgaW1hZ2VJbmRleCwg
JmxheWVySW5kZXgsICZsYXllckNvdW50LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAmaW1hZ2VMYXllckNvdW50KTsKQEAgLTIzNzUsMTAgKzIzNzcsMTQgQEAgYW5nbGU6
OlJlc3VsdCBUZXh0dXJlVms6OmdldEF0dGFjaG1lbnRSZW5kZXJUYXJnZXQoY29uc3QgZ2w6OkNv
bnRleHQgKmNvbnRleHQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2w6
OkxldmVsSW5kZXgoaW1hZ2VJbmRleC5nZXRMZXZlbEluZGV4KCkpLAogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHJlbmRlclRvVGV4dHVyZUluZGV4KTsKIAotICAgICAgICBB
U1NFUlQoaW1hZ2VJbmRleC5nZXRMZXZlbEluZGV4KCkgPAotICAgICAgICAgICAgICAgc3RhdGlj
X2Nhc3Q8aW50MzJfdD4obVNpbmdsZUxheWVyUmVuZGVyVGFyZ2V0c1tyZW5kZXJUb1RleHR1cmVJ
bmRleF0uc2l6ZSgpKSk7Ci0gICAgICAgICpydE91dCA9ICZtU2luZ2xlTGF5ZXJSZW5kZXJUYXJn
ZXRzW3JlbmRlclRvVGV4dHVyZUluZGV4XVtpbWFnZUluZGV4LmdldExldmVsSW5kZXgoKV0KLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbGF5ZXJJbmRleF07Cisg
ICAgICAgIHN0ZDo6dmVjdG9yPFJlbmRlclRhcmdldFZlY3Rvcj4gJmxldmVsUmVuZGVyVGFyZ2V0
cyA9CisgICAgICAgICAgICBtU2luZ2xlTGF5ZXJSZW5kZXJUYXJnZXRzW3JlbmRlclRvVGV4dHVy
ZUluZGV4XTsKKyAgICAgICAgQVNTRVJUKGltYWdlSW5kZXguZ2V0TGV2ZWxJbmRleCgpIDwgc3Rh
dGljX2Nhc3Q8aW50MzJfdD4obGV2ZWxSZW5kZXJUYXJnZXRzLnNpemUoKSkpOworCisgICAgICAg
IFJlbmRlclRhcmdldFZlY3RvciAmbGF5ZXJSZW5kZXJUYXJnZXRzID0gbGV2ZWxSZW5kZXJUYXJn
ZXRzW2ltYWdlSW5kZXguZ2V0TGV2ZWxJbmRleCgpXTsKKyAgICAgICAgQVNTRVJUKGltYWdlSW5k
ZXguZ2V0TGF5ZXJJbmRleCgpIDwgc3RhdGljX2Nhc3Q8aW50MzJfdD4obGF5ZXJSZW5kZXJUYXJn
ZXRzLnNpemUoKSkpOworCisgICAgICAgICpydE91dCA9ICZsYXllclJlbmRlclRhcmdldHNbbGF5
ZXJJbmRleF07CiAgICAgfQogICAgIGVsc2UKICAgICB7CkBAIC0yNjc4LDkgKzI2ODQsOSBAQCBh
bmdsZTo6UmVzdWx0IFRleHR1cmVWazo6c3luY1N0YXRlKGNvbnN0IGdsOjpDb250ZXh0ICpjb250
ZXh0LAogICAgICAgICAvLyB0aGUgbGV2ZWxzIGhhdmUgYWxyZWFkeSBiZWVuIGRpc2NhcmRlZCB0
aHJvdWdoIHRoZSB8cmVtb3ZlU3RhZ2VkVXBkYXRlc3wgY2FsbCBhYm92ZS4KICAgICAgICAgQU5H
TEVfVFJZKGZsdXNoSW1hZ2VTdGFnZWRVcGRhdGVzKGNvbnRleHRWaykpOwogCi0gICAgICAgIG1J
bWFnZS0+c3RhZ2VTZWxmQXNTdWJyZXNvdXJjZVVwZGF0ZXMoY29udGV4dFZrLCAxLCB7fSk7Cisg
ICAgICAgIHN0YWdlU2VsZkFzU3VicmVzb3VyY2VVcGRhdGVzKGNvbnRleHRWayk7CiAKLSAgICAg
ICAgLy8gUmVsZWFzZSB2aWV3cyBhbmQgcmVuZGVyIHRhcmdldHMgY3JlYXRlZCBmb3IgdGhlIG9s
ZCBpbWFnZS4KKyAgICAgICAgLy8gUmVsZWFzZSB0aGUgbUltYWdlIHdpdGhvdXQgY29sbGVjdGlu
ZyBnYXJiYWdlIGZyb20gaW1hZ2Ugdmlld3MuCiAgICAgICAgIHJlbGVhc2VJbWFnZShjb250ZXh0
VmspOwogICAgIH0KIApAQCAtMjc3MSwxMiArMjc3NywxMiBAQCB2b2lkIFRleHR1cmVWazo6cmVs
ZWFzZU93bmVyc2hpcE9mSW1hZ2UoY29uc3QgZ2w6OkNvbnRleHQgKmNvbnRleHQpCiAgICAgcmVs
ZWFzZUFuZERlbGV0ZUltYWdlQW5kVmlld3MoY29udGV4dFZrKTsKIH0KIAotYm9vbCBUZXh0dXJl
Vms6OnNob3VsZERlY29kZVNSR0IoQ29udGV4dFZrICpjb250ZXh0VmssCitib29sIFRleHR1cmVW
azo6c2hvdWxkRGVjb2RlU1JHQih2azo6Q29udGV4dCAqY29udGV4dCwKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIEdMZW51bSBzcmdiRGVjb2RlLAogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgYm9vbCB0ZXhlbEZldGNoU3RhdGljVXNlKSBjb25zdAogewogICAgIC8v
IEJ5IGRlZmF1bHQsIHdlIGRlY29kZSBTUkdCIGltYWdlcy4KLSAgICBjb25zdCB2azo6Rm9ybWF0
ICZmb3JtYXQgPSBnZXRCYXNlTGV2ZWxGb3JtYXQoY29udGV4dFZrLT5nZXRSZW5kZXJlcigpKTsK
KyAgICBjb25zdCB2azo6Rm9ybWF0ICZmb3JtYXQgPSBnZXRCYXNlTGV2ZWxGb3JtYXQoY29udGV4
dC0+Z2V0UmVuZGVyZXIoKSk7CiAgICAgYm9vbCBkZWNvZGVTUkdCICAgICAgICAgID0gZm9ybWF0
LmdldEFjdHVhbEltYWdlRm9ybWF0KGdldFJlcXVpcmVkSW1hZ2VBY2Nlc3MoKSkuaXNTUkdCOwog
CiAgICAgLy8gSWYgdGhlIFNSR0Igb3ZlcnJpZGUgaXMgZW5hYmxlZCwgd2UgYWxzbyBkZWNvZGUg
U1JHQi4KQEAgLTI4MDEsMjEgKzI4MDcsMjAgQEAgYm9vbCBUZXh0dXJlVms6OnNob3VsZERlY29k
ZVNSR0IoQ29udGV4dFZrICpjb250ZXh0VmssCiAgICAgcmV0dXJuIGRlY29kZVNSR0I7CiB9CiAK
LWNvbnN0IHZrOjpJbWFnZVZpZXcgJlRleHR1cmVWazo6Z2V0UmVhZEltYWdlVmlld0FuZFJlY29y
ZFVzZShDb250ZXh0VmsgKmNvbnRleHRWaywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTGVudW0gc3JnYkRlY29kZSwKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBi
b29sIHRleGVsRmV0Y2hTdGF0aWNVc2UpIGNvbnN0Citjb25zdCB2azo6SW1hZ2VWaWV3ICZUZXh0
dXJlVms6OmdldFJlYWRJbWFnZVZpZXcodms6OkNvbnRleHQgKmNvbnRleHQsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xlbnVtIHNyZ2JEZWNvZGUs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCB0
ZXhlbEZldGNoU3RhdGljVXNlKSBjb25zdAogewogICAgIEFTU0VSVChtSW1hZ2UtPnZhbGlkKCkp
OwogCiAgICAgY29uc3Qgdms6OkltYWdlVmlld0hlbHBlciAmaW1hZ2VWaWV3cyA9IGdldEltYWdl
Vmlld3MoKTsKLSAgICBpbWFnZVZpZXdzLnJldGFpbigmY29udGV4dFZrLT5nZXRSZXNvdXJjZVVz
ZUxpc3QoKSk7CiAKICAgICBpZiAobVN0YXRlLmlzU3RlbmNpbE1vZGUoKSAmJiBpbWFnZVZpZXdz
Lmhhc1N0ZW5jaWxSZWFkSW1hZ2VWaWV3KCkpCiAgICAgewogICAgICAgICByZXR1cm4gaW1hZ2VW
aWV3cy5nZXRTdGVuY2lsUmVhZEltYWdlVmlldygpOwogICAgIH0KIAotICAgIGlmIChzaG91bGRE
ZWNvZGVTUkdCKGNvbnRleHRWaywgc3JnYkRlY29kZSwgdGV4ZWxGZXRjaFN0YXRpY1VzZSkpCisg
ICAgaWYgKHNob3VsZERlY29kZVNSR0IoY29udGV4dCwgc3JnYkRlY29kZSwgdGV4ZWxGZXRjaFN0
YXRpY1VzZSkpCiAgICAgewogICAgICAgICBBU1NFUlQoaW1hZ2VWaWV3cy5nZXRTUkdCUmVhZElt
YWdlVmlldygpLnZhbGlkKCkpOwogICAgICAgICByZXR1cm4gaW1hZ2VWaWV3cy5nZXRTUkdCUmVh
ZEltYWdlVmlldygpOwpAQCAtMjgyNSwxOSArMjgzMCwxOCBAQCBjb25zdCB2azo6SW1hZ2VWaWV3
ICZUZXh0dXJlVms6OmdldFJlYWRJbWFnZVZpZXdBbmRSZWNvcmRVc2UoQ29udGV4dFZrICpjb250
ZXh0VgogICAgIHJldHVybiBpbWFnZVZpZXdzLmdldExpbmVhclJlYWRJbWFnZVZpZXcoKTsKIH0K
IAotY29uc3Qgdms6OkltYWdlVmlldyAmVGV4dHVyZVZrOjpnZXRGZXRjaEltYWdlVmlld0FuZFJl
Y29yZFVzZShDb250ZXh0VmsgKmNvbnRleHRWaywKLSAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xlbnVtIHNyZ2JEZWNvZGUsCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGJvb2wgdGV4ZWxGZXRjaFN0YXRpY1VzZSkgY29uc3QKK2NvbnN0IHZrOjpJbWFnZVZpZXcg
JlRleHR1cmVWazo6Z2V0RmV0Y2hJbWFnZVZpZXcodms6OkNvbnRleHQgKmNvbnRleHQsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMZW51bSBzcmdi
RGVjb2RlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBib29sIHRleGVsRmV0Y2hTdGF0aWNVc2UpIGNvbnN0CiB7CiAgICAgQVNTRVJUKG1JbWFnZS0+
dmFsaWQoKSk7CiAKICAgICBjb25zdCB2azo6SW1hZ2VWaWV3SGVscGVyICZpbWFnZVZpZXdzID0g
Z2V0SW1hZ2VWaWV3cygpOwotICAgIGltYWdlVmlld3MucmV0YWluKCZjb250ZXh0VmstPmdldFJl
c291cmNlVXNlTGlzdCgpKTsKIAogICAgIC8vIFdlIGRvbid0IGN1cnJlbnRseSBzdXBwb3J0IGZl
dGNoIGZvciBkZXB0aC9zdGVuY2lsIGN1YmUgbWFwIHRleHR1cmVzLgogICAgIEFTU0VSVCghaW1h
Z2VWaWV3cy5oYXNTdGVuY2lsUmVhZEltYWdlVmlldygpIHx8ICFpbWFnZVZpZXdzLmhhc0ZldGNo
SW1hZ2VWaWV3KCkpOwogCi0gICAgaWYgKHNob3VsZERlY29kZVNSR0IoY29udGV4dFZrLCBzcmdi
RGVjb2RlLCB0ZXhlbEZldGNoU3RhdGljVXNlKSkKKyAgICBpZiAoc2hvdWxkRGVjb2RlU1JHQihj
b250ZXh0LCBzcmdiRGVjb2RlLCB0ZXhlbEZldGNoU3RhdGljVXNlKSkKICAgICB7CiAgICAgICAg
IHJldHVybiAoaW1hZ2VWaWV3cy5oYXNGZXRjaEltYWdlVmlldygpID8gaW1hZ2VWaWV3cy5nZXRT
UkdCRmV0Y2hJbWFnZVZpZXcoKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICA6IGltYWdlVmlld3MuZ2V0U1JHQlJlYWRJbWFnZVZpZXcoKSk7CkBAIC0yODQ3
LDEyICsyODUxLDExIEBAIGNvbnN0IHZrOjpJbWFnZVZpZXcgJlRleHR1cmVWazo6Z2V0RmV0Y2hJ
bWFnZVZpZXdBbmRSZWNvcmRVc2UoQ29udGV4dFZrICpjb250ZXh0CiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBpbWFnZVZpZXdzLmdldExpbmVhclJlYWRJbWFn
ZVZpZXcoKSk7CiB9CiAKLWNvbnN0IHZrOjpJbWFnZVZpZXcgJlRleHR1cmVWazo6Z2V0Q29weUlt
YWdlVmlld0FuZFJlY29yZFVzZShDb250ZXh0VmsgKmNvbnRleHRWaykgY29uc3QKK2NvbnN0IHZr
OjpJbWFnZVZpZXcgJlRleHR1cmVWazo6Z2V0Q29weUltYWdlVmlldygpIGNvbnN0CiB7CiAgICAg
QVNTRVJUKG1JbWFnZS0+dmFsaWQoKSk7CiAKICAgICBjb25zdCB2azo6SW1hZ2VWaWV3SGVscGVy
ICZpbWFnZVZpZXdzID0gZ2V0SW1hZ2VWaWV3cygpOwotICAgIGltYWdlVmlld3MucmV0YWluKCZj
b250ZXh0VmstPmdldFJlc291cmNlVXNlTGlzdCgpKTsKIAogICAgIGNvbnN0IGFuZ2xlOjpGb3Jt
YXQgJmFuZ2xlRm9ybWF0ID0gbUltYWdlLT5nZXRBY3R1YWxGb3JtYXQoKTsKICAgICBBU1NFUlQo
YW5nbGVGb3JtYXQuaXNTUkdCID09CkBAIC0yODY0LDcgKzI4NjcsNyBAQCBjb25zdCB2azo6SW1h
Z2VWaWV3ICZUZXh0dXJlVms6OmdldENvcHlJbWFnZVZpZXdBbmRSZWNvcmRVc2UoQ29udGV4dFZr
ICpjb250ZXh0VgogICAgIHJldHVybiBpbWFnZVZpZXdzLmdldExpbmVhckNvcHlJbWFnZVZpZXco
KTsKIH0KIAotYW5nbGU6OlJlc3VsdCBUZXh0dXJlVms6OmdldExldmVsTGF5ZXJJbWFnZVZpZXco
Q29udGV4dFZrICpjb250ZXh0VmssCithbmdsZTo6UmVzdWx0IFRleHR1cmVWazo6Z2V0TGV2ZWxM
YXllckltYWdlVmlldyh2azo6Q29udGV4dCAqY29udGV4dCwKICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdsOjpMZXZlbEluZGV4IGxldmVsLAogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZV90IGxheWVyLAog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgdms6
OkltYWdlVmlldyAqKmltYWdlVmlld091dCkKQEAgLTI4NzYsMTcgKzI4NzksMTkgQEAgYW5nbGU6
OlJlc3VsdCBUZXh0dXJlVms6OmdldExldmVsTGF5ZXJJbWFnZVZpZXcoQ29udGV4dFZrICpjb250
ZXh0VmssCiAgICAgdWludDMyX3QgbmF0aXZlTGF5ZXIgICA9IGdldE5hdGl2ZUltYWdlTGF5ZXIo
c3RhdGljX2Nhc3Q8dWludDMyX3Q+KGxheWVyKSk7CiAKICAgICByZXR1cm4gZ2V0SW1hZ2VWaWV3
cygpLmdldExldmVsTGF5ZXJEcmF3SW1hZ2VWaWV3KAotICAgICAgICBjb250ZXh0VmssICptSW1h
Z2UsIGxldmVsVmssIG5hdGl2ZUxheWVyLCBnbDo6U3JnYldyaXRlQ29udHJvbE1vZGU6OkRlZmF1
bHQsIGltYWdlVmlld091dCk7CisgICAgICAgIGNvbnRleHQsICptSW1hZ2UsIGxldmVsVmssIG5h
dGl2ZUxheWVyLCBnbDo6U3JnYldyaXRlQ29udHJvbE1vZGU6OkRlZmF1bHQsIGltYWdlVmlld091
dCk7CiB9CiAKLWFuZ2xlOjpSZXN1bHQgVGV4dHVyZVZrOjpnZXRTdG9yYWdlSW1hZ2VWaWV3KENv
bnRleHRWayAqY29udGV4dFZrLAorYW5nbGU6OlJlc3VsdCBUZXh0dXJlVms6OmdldFN0b3JhZ2VJ
bWFnZVZpZXcodms6OkNvbnRleHQgKmNvbnRleHQsCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBjb25zdCBnbDo6SW1hZ2VVbml0ICZiaW5kaW5nLAogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgdms6OkltYWdlVmll
dyAqKmltYWdlVmlld091dCkKIHsKKyAgICBSZW5kZXJlclZrICpyZW5kZXJlciA9IGNvbnRleHQt
PmdldFJlbmRlcmVyKCk7CisKICAgICBhbmdsZTo6Rm9ybWF0SUQgZm9ybWF0SUQgPSBhbmdsZTo6
Rm9ybWF0OjpJbnRlcm5hbEZvcm1hdFRvSUQoYmluZGluZy5mb3JtYXQpOwotICAgIGNvbnN0IHZr
OjpGb3JtYXQgKmZvcm1hdCA9ICZjb250ZXh0VmstPmdldFJlbmRlcmVyKCktPmdldEZvcm1hdChm
b3JtYXRJRCk7CisgICAgY29uc3Qgdms6OkZvcm1hdCAqZm9ybWF0ID0gJnJlbmRlcmVyLT5nZXRG
b3JtYXQoZm9ybWF0SUQpOwogCi0gICAgZm9ybWF0ID0gQWRqdXN0U3RvcmFnZVZpZXdGb3JtYXRQ
ZXJXb3JrYXJvdW5kcyhjb250ZXh0VmssIGZvcm1hdCwgZ2V0UmVxdWlyZWRJbWFnZUFjY2Vzcygp
KTsKKyAgICBmb3JtYXQgPSBBZGp1c3RTdG9yYWdlVmlld0Zvcm1hdFBlcldvcmthcm91bmRzKHJl
bmRlcmVyLCBmb3JtYXQsIGdldFJlcXVpcmVkSW1hZ2VBY2Nlc3MoKSk7CiAKICAgICBnbDo6TGV2
ZWxJbmRleCBuYXRpdmVMZXZlbEdMID0KICAgICAgICAgZ2V0TmF0aXZlSW1hZ2VMZXZlbChnbDo6
TGV2ZWxJbmRleChzdGF0aWNfY2FzdDx1aW50MzJfdD4oYmluZGluZy5sZXZlbCkpKTsKQEAgLTI4
OTcsNyArMjkwMiw3IEBAIGFuZ2xlOjpSZXN1bHQgVGV4dHVyZVZrOjpnZXRTdG9yYWdlSW1hZ2VW
aWV3KENvbnRleHRWayAqY29udGV4dFZrLAogICAgICAgICB1aW50MzJfdCBuYXRpdmVMYXllciA9
IGdldE5hdGl2ZUltYWdlTGF5ZXIoc3RhdGljX2Nhc3Q8dWludDMyX3Q+KGJpbmRpbmcubGF5ZXIp
KTsKIAogICAgICAgICByZXR1cm4gZ2V0SW1hZ2VWaWV3cygpLmdldExldmVsTGF5ZXJTdG9yYWdl
SW1hZ2VWaWV3KAotICAgICAgICAgICAgY29udGV4dFZrLCAqbUltYWdlLCBuYXRpdmVMZXZlbFZr
LCBuYXRpdmVMYXllciwKKyAgICAgICAgICAgIGNvbnRleHQsICptSW1hZ2UsIG5hdGl2ZUxldmVs
VmssIG5hdGl2ZUxheWVyLAogICAgICAgICAgICAgVktfSU1BR0VfVVNBR0VfU0FNUExFRF9CSVQg
fCBWS19JTUFHRV9VU0FHRV9TVE9SQUdFX0JJVCwKICAgICAgICAgICAgIGZvcm1hdC0+Z2V0QWN0
dWFsSW1hZ2VGb3JtYXRJRChnZXRSZXF1aXJlZEltYWdlQWNjZXNzKCkpLCBpbWFnZVZpZXdPdXQp
OwogICAgIH0KQEAgLTI5MDUsMTcgKzI5MTAsMTcgQEAgYW5nbGU6OlJlc3VsdCBUZXh0dXJlVms6
OmdldFN0b3JhZ2VJbWFnZVZpZXcoQ29udGV4dFZrICpjb250ZXh0VmssCiAgICAgdWludDMyX3Qg
bmF0aXZlTGF5ZXIgPSBnZXROYXRpdmVJbWFnZUxheWVyKDApOwogCiAgICAgcmV0dXJuIGdldElt
YWdlVmlld3MoKS5nZXRMZXZlbFN0b3JhZ2VJbWFnZVZpZXcoCi0gICAgICAgIGNvbnRleHRWaywg
bVN0YXRlLmdldFR5cGUoKSwgKm1JbWFnZSwgbmF0aXZlTGV2ZWxWaywgbmF0aXZlTGF5ZXIsCisg
ICAgICAgIGNvbnRleHQsIG1TdGF0ZS5nZXRUeXBlKCksICptSW1hZ2UsIG5hdGl2ZUxldmVsVmss
IG5hdGl2ZUxheWVyLAogICAgICAgICBWS19JTUFHRV9VU0FHRV9TQU1QTEVEX0JJVCB8IFZLX0lN
QUdFX1VTQUdFX1NUT1JBR0VfQklULAogICAgICAgICBmb3JtYXQtPmdldEFjdHVhbEltYWdlRm9y
bWF0SUQoZ2V0UmVxdWlyZWRJbWFnZUFjY2VzcygpKSwgaW1hZ2VWaWV3T3V0KTsKIH0KIAotYW5n
bGU6OlJlc3VsdCBUZXh0dXJlVms6OmdldEJ1ZmZlclZpZXdBbmRSZWNvcmRVc2UoQ29udGV4dFZr
ICpjb250ZXh0VmssCithbmdsZTo6UmVzdWx0IFRleHR1cmVWazo6Z2V0QnVmZmVyVmlld0FuZFJl
Y29yZFVzZSh2azo6Q29udGV4dCAqY29udGV4dCwKICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHZrOjpGb3JtYXQgKmltYWdlVW5pZm9ybUZv
cm1hdCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGJvb2wgaXNJbWFnZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGNvbnN0IHZrOjpCdWZmZXJWaWV3ICoqdmlld091dCkKIHsKLSAgICBSZW5kZXJl
clZrICpyZW5kZXJlciA9IGNvbnRleHRWay0+Z2V0UmVuZGVyZXIoKTsKKyAgICBSZW5kZXJlclZr
ICpyZW5kZXJlciA9IGNvbnRleHQtPmdldFJlbmRlcmVyKCk7CiAKICAgICBBU1NFUlQobVN0YXRl
LmdldEJ1ZmZlcigpLmdldCgpICE9IG51bGxwdHIpOwogCkBAIC0yOTI4LDcgKzI5MzMsNyBAQCBh
bmdsZTo6UmVzdWx0IFRleHR1cmVWazo6Z2V0QnVmZmVyVmlld0FuZFJlY29yZFVzZShDb250ZXh0
VmsgKmNvbnRleHRWaywKIAogICAgIGlmIChpc0ltYWdlKQogICAgIHsKLSAgICAgICAgaW1hZ2VV
bmlmb3JtRm9ybWF0ID0gQWRqdXN0U3RvcmFnZVZpZXdGb3JtYXRQZXJXb3JrYXJvdW5kcyhjb250
ZXh0VmssIGltYWdlVW5pZm9ybUZvcm1hdCwKKyAgICAgICAgaW1hZ2VVbmlmb3JtRm9ybWF0ID0g
QWRqdXN0U3RvcmFnZVZpZXdGb3JtYXRQZXJXb3JrYXJvdW5kcyhyZW5kZXJlciwgaW1hZ2VVbmlm
b3JtRm9ybWF0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGdldFJlcXVpcmVkSW1hZ2VBY2Nlc3MoKSk7CiAgICAgfQog
CkBAIC0yOTM2LDcgKzI5NDEsNyBAQCBhbmdsZTo6UmVzdWx0IFRleHR1cmVWazo6Z2V0QnVmZmVy
Vmlld0FuZFJlY29yZFVzZShDb250ZXh0VmsgKmNvbnRleHRWaywKICAgICBjb25zdCB2azo6QnVm
ZmVySGVscGVyICZidWZmZXIgPSB2azo6R2V0SW1wbChtU3RhdGUuZ2V0QnVmZmVyKCkuZ2V0KCkp
LT5nZXRCdWZmZXIoKTsKICAgICBWa0RldmljZVNpemUgYnVmZmVyT2Zmc2V0ICAgICAgPSBidWZm
ZXIuZ2V0T2Zmc2V0KCk7CiAKLSAgICByZXR1cm4gbUJ1ZmZlclZpZXdzLmdldFZpZXcoY29udGV4
dFZrLCBidWZmZXIsIGJ1ZmZlck9mZnNldCwgKmltYWdlVW5pZm9ybUZvcm1hdCwgdmlld091dCk7
CisgICAgcmV0dXJuIG1CdWZmZXJWaWV3cy5nZXRWaWV3KGNvbnRleHQsIGJ1ZmZlciwgYnVmZmVy
T2Zmc2V0LCAqaW1hZ2VVbmlmb3JtRm9ybWF0LCB2aWV3T3V0KTsKIH0KIAogYW5nbGU6OlJlc3Vs
dCBUZXh0dXJlVms6OmluaXRJbWFnZShDb250ZXh0VmsgKmNvbnRleHRWaywKQEAgLTMwMzUsNiAr
MzA0MCw4IEBAIHZvaWQgVGV4dHVyZVZrOjpyZWxlYXNlSW1hZ2UoQ29udGV4dFZrICpjb250ZXh0
VmspCiB7CiAgICAgUmVuZGVyZXJWayAqcmVuZGVyZXIgPSBjb250ZXh0VmstPmdldFJlbmRlcmVy
KCk7CiAKKyAgICByZWxlYXNlSW1hZ2VWaWV3cyhjb250ZXh0VmspOworCiAgICAgaWYgKG1JbWFn
ZSkKICAgICB7CiAgICAgICAgIGlmIChtT3duc0ltYWdlKQpAQCAtMzA1Niw5ICszMDYzLDI2IEBA
IHZvaWQgVGV4dHVyZVZrOjpyZWxlYXNlSW1hZ2UoQ29udGV4dFZrICpjb250ZXh0VmspCiAgICAg
ICAgIH0KICAgICB9CiAKLSAgICBmb3IgKHZrOjpJbWFnZVZpZXdIZWxwZXIgJmltYWdlVmlld3Mg
OiBtTXVsdGlzYW1wbGVkSW1hZ2VWaWV3cykKKyAgICBvblN0YXRlQ2hhbmdlKGFuZ2xlOjpTdWJq
ZWN0TWVzc2FnZTo6U3ViamVjdENoYW5nZWQpOworICAgIG1SZWRlZmluZWRMZXZlbHMucmVzZXQo
KTsKK30KKwordm9pZCBUZXh0dXJlVms6OnJlbGVhc2VJbWFnZVZpZXdzKENvbnRleHRWayAqY29u
dGV4dFZrKQoreworICAgIFJlbmRlcmVyVmsgKnJlbmRlcmVyID0gY29udGV4dFZrLT5nZXRSZW5k
ZXJlcigpOworCisgICAgaWYgKG1JbWFnZSA9PSBudWxscHRyKQorICAgIHsKKyAgICAgICAgZm9y
ICh2azo6SW1hZ2VWaWV3SGVscGVyICZpbWFnZVZpZXdIZWxwZXIgOiBtTXVsdGlzYW1wbGVkSW1h
Z2VWaWV3cykKKyAgICAgICAgeworICAgICAgICAgICAgQVNTRVJUKGltYWdlVmlld0hlbHBlci5p
c0ltYWdlVmlld0dhcmJhZ2VFbXB0eSgpKTsKKyAgICAgICAgfQorICAgICAgICByZXR1cm47Cisg
ICAgfQorCisgICAgZm9yICh2azo6SW1hZ2VWaWV3SGVscGVyICZpbWFnZVZpZXdIZWxwZXIgOiBt
TXVsdGlzYW1wbGVkSW1hZ2VWaWV3cykKICAgICB7Ci0gICAgICAgIGltYWdlVmlld3MucmVsZWFz
ZShyZW5kZXJlcik7CisgICAgICAgIG1JbWFnZS0+Y29sbGVjdFZpZXdHYXJiYWdlKHJlbmRlcmVy
LCAmaW1hZ2VWaWV3SGVscGVyKTsKICAgICB9CiAKICAgICBmb3IgKGF1dG8gJnJlbmRlclRhcmdl
dHMgOiBtU2luZ2xlTGF5ZXJSZW5kZXJUYXJnZXRzKQpAQCAtMzA3Miw5ICszMDk2LDYgQEAgdm9p
ZCBUZXh0dXJlVms6OnJlbGVhc2VJbWFnZShDb250ZXh0VmsgKmNvbnRleHRWaykKICAgICAgICAg
cmVuZGVyVGFyZ2V0cy5jbGVhcigpOwogICAgIH0KICAgICBtTXVsdGlMYXllclJlbmRlclRhcmdl
dHMuY2xlYXIoKTsKLQotICAgIG9uU3RhdGVDaGFuZ2UoYW5nbGU6OlN1YmplY3RNZXNzYWdlOjpT
dWJqZWN0Q2hhbmdlZCk7Ci0gICAgbVJlZGVmaW5lZExldmVscy5yZXNldCgpOwogfQogCiB2b2lk
IFRleHR1cmVWazo6cmVsZWFzZVN0YWdlZFVwZGF0ZXMoQ29udGV4dFZrICpjb250ZXh0VmspCkBA
IC0zMzM1LDcgKzMzNTYsMTcgQEAgdWludDMyX3QgVGV4dHVyZVZrOjpnZXRJbWFnZVZpZXdMYXll
ckNvdW50KCkgY29uc3QKIAogYW5nbGU6OlJlc3VsdCBUZXh0dXJlVms6OnJlZnJlc2hJbWFnZVZp
ZXdzKENvbnRleHRWayAqY29udGV4dFZrKQogewotICAgIGdldEltYWdlVmlld3MoKS5yZWxlYXNl
KGNvbnRleHRWay0+Z2V0UmVuZGVyZXIoKSk7CisgICAgdms6OkltYWdlVmlld0hlbHBlciAmaW1h
Z2VWaWV3ID0gZ2V0SW1hZ2VWaWV3cygpOworICAgIGlmIChtSW1hZ2UgPT0gbnVsbHB0cikKKyAg
ICB7CisgICAgICAgIEFTU0VSVChpbWFnZVZpZXcuaXNJbWFnZVZpZXdHYXJiYWdlRW1wdHkoKSk7
CisgICAgfQorICAgIGVsc2UKKyAgICB7CisgICAgICAgIFJlbmRlcmVyVmsgKnJlbmRlcmVyID0g
Y29udGV4dFZrLT5nZXRSZW5kZXJlcigpOworICAgICAgICBtSW1hZ2UtPmNvbGxlY3RWaWV3R2Fy
YmFnZShyZW5kZXJlciwgJmltYWdlVmlldyk7CisgICAgfQorCiAgICAgY29uc3QgZ2w6OkltYWdl
RGVzYyAmYmFzZUxldmVsRGVzYyA9IG1TdGF0ZS5nZXRCYXNlTGV2ZWxEZXNjKCk7CiAKICAgICBB
TkdMRV9UUlkoaW5pdEltYWdlVmlld3MoY29udGV4dFZrLCBtSW1hZ2UtPmdldEFjdHVhbEZvcm1h
dCgpLCBiYXNlTGV2ZWxEZXNjLmZvcm1hdC5pbmZvLT5zaXplZCwKQEAgLTM0NTAsNCArMzQ4MSwx
NSBAQCBib29sIFRleHR1cmVWazo6aW1hZ2VIYXNBY3R1YWxJbWFnZUZvcm1hdChhbmdsZTo6Rm9y
bWF0SUQgYWN0dWFsRm9ybWF0SUQpIGNvbnN0CiAgICAgcmV0dXJuIG1JbWFnZSAmJiAobUltYWdl
LT5nZXRBY3R1YWxGb3JtYXRJRCgpICE9IGFjdHVhbEZvcm1hdElEKTsKIH0KIAordm9pZCBUZXh0
dXJlVms6OnN0YWdlU2VsZkFzU3VicmVzb3VyY2VVcGRhdGVzKENvbnRleHRWayAqY29udGV4dFZr
KQoreworICAgIC8vIElmIHdlIGFyZSBjYWxsaW5nIHN0YWdlU2VsZkFzU3VicmVzb3VyY2VVcGRh
dGVzKCksIHRoZSBjdXJyZW50IGltYWdlIHdpbGwgYmUgc3dhcHBlZAorICAgIC8vIHRvIHByZXZJ
bWFnZSBpbiBzdGFnZVNlbGZBc1N1YnJlc291cmNlVXBkYXRlcygpLCB0aGVyZWZvcmUgd2UgbmVl
ZCB0byByZWxlYXNlIHRoZQorICAgIC8vIGltYWdlVmlld3MgZmlyc3QgYXMgd2Ugd2FudCB0byB1
c2UgY3VycmVudCBpbWFnZS5tVXNlIHRvIGtlZXAgdHJhY2sgb2YgaW1hZ2VWaWV3cycgcmVzb3Vy
Y2UKKyAgICAvLyBsaWZldGltZS4KKyAgICByZWxlYXNlSW1hZ2VWaWV3cyhjb250ZXh0VmspOwor
ICAgIC8vIE1ha2UgdGhlIGltYWdlIHN0YWdlIGl0c2VsZiBhcyB1cGRhdGVzIHRvIGl0cyBsZXZl
bHMuCisgICAgbUltYWdlLT5zdGFnZVNlbGZBc1N1YnJlc291cmNlVXBkYXRlcyhjb250ZXh0Vmss
IG1JbWFnZS0+Z2V0TGV2ZWxDb3VudCgpLCBtUmVkZWZpbmVkTGV2ZWxzKTsKK30KKwogfSAgLy8g
bmFtZXNwYWNlIHJ4CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGli
QU5HTEUvcmVuZGVyZXIvdnVsa2FuL1RleHR1cmVWay5oIGIvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9UZXh0dXJlVmsuaAppbmRleCA2ZTliZTYw
MzMzNDlmMTk3MTkxYmRlYTM4MTk0ZTExODAwNjg3M2JhLi5jMzA0ZWE4MTE4NDI5YjkwZmIxOGUx
YjJmNWI2NDI3NmY1Zjc4NTg0IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9z
cmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL1RleHR1cmVWay5oCisrKyBiL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vVGV4dHVyZVZrLmgKQEAg
LTE5NSwxMSArMTk1LDYgQEAgY2xhc3MgVGV4dHVyZVZrIDogcHVibGljIFRleHR1cmVJbXBsLCBw
dWJsaWMgYW5nbGU6Ok9ic2VydmVySW50ZXJmYWNlCiAgICAgICAgIHJldHVybiAqbUltYWdlOwog
ICAgIH0KIAotICAgIHZvaWQgcmV0YWluSW1hZ2VWaWV3cyh2azo6UmVzb3VyY2VVc2VMaXN0ICpy
ZXNvdXJjZVVzZUxpc3QpCi0gICAgewotICAgICAgICBnZXRJbWFnZVZpZXdzKCkucmV0YWluKHJl
c291cmNlVXNlTGlzdCk7Ci0gICAgfQotCiAgICAgdm9pZCByZXRhaW5CdWZmZXJWaWV3cyh2azo6
UmVzb3VyY2VVc2VMaXN0ICpyZXNvdXJjZVVzZUxpc3QpCiAgICAgewogICAgICAgICBtQnVmZmVy
Vmlld3MucmV0YWluKHJlc291cmNlVXNlTGlzdCk7CkBAIC0yMDcsMTkgKzIwMiwyNCBAQCBjbGFz
cyBUZXh0dXJlVmsgOiBwdWJsaWMgVGV4dHVyZUltcGwsIHB1YmxpYyBhbmdsZTo6T2JzZXJ2ZXJJ
bnRlcmZhY2UKIAogICAgIHZvaWQgcmVsZWFzZU93bmVyc2hpcE9mSW1hZ2UoY29uc3QgZ2w6OkNv
bnRleHQgKmNvbnRleHQpOwogCi0gICAgY29uc3Qgdms6OkltYWdlVmlldyAmZ2V0UmVhZEltYWdl
Vmlld0FuZFJlY29yZFVzZShDb250ZXh0VmsgKmNvbnRleHRWaywKLSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMZW51bSBzcmdiRGVjb2RlLAot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9v
bCB0ZXhlbEZldGNoU3RhdGljVXNlKSBjb25zdDsKKyAgICBjb25zdCB2azo6SW1hZ2VWaWV3ICZn
ZXRSZWFkSW1hZ2VWaWV3KHZrOjpDb250ZXh0ICpjb250ZXh0LAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgR0xlbnVtIHNyZ2JEZWNvZGUsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sIHRleGVsRmV0Y2hTdGF0aWNVc2UpIGNv
bnN0OwogCiAgICAgLy8gQSBzcGVjaWFsIHZpZXcgZm9yIGN1YmUgbWFwcyBhcyBhIDJEIGFycmF5
LCB1c2VkIHdpdGggc2hhZGVycyB0aGF0IGRvIHRleGVsRmV0Y2goKSBhbmQgZm9yCiAgICAgLy8g
c2VhbWZ1bCBjdWJlIG1hcCBlbXVsYXRpb24uCi0gICAgY29uc3Qgdms6OkltYWdlVmlldyAmZ2V0
RmV0Y2hJbWFnZVZpZXdBbmRSZWNvcmRVc2UoQ29udGV4dFZrICpjb250ZXh0VmssCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xlbnVtIHNy
Z2JEZWNvZGUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgYm9vbCB0ZXhlbEZldGNoU3RhdGljVXNlKSBjb25zdDsKKyAgICBjb25zdCB2azo6
SW1hZ2VWaWV3ICZnZXRGZXRjaEltYWdlVmlldyh2azo6Q29udGV4dCAqY29udGV4dCwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTGVudW0gc3JnYkRlY29kZSwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sIHRleGVsRmV0
Y2hTdGF0aWNVc2UpIGNvbnN0OworCisgICAgYW5nbGU6OlJlc3VsdCBnZXRCdWZmZXJWaWV3QW5k
UmVjb3JkVXNlKHZrOjpDb250ZXh0ICpjb250ZXh0LAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBjb25zdCB2azo6Rm9ybWF0ICppbWFnZVVuaWZvcm1Gb3JtYXQs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wgaXNJbWFn
ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgdms6
OkJ1ZmZlclZpZXcgKip2aWV3T3V0KTsKIAogICAgIC8vIEEgc3BlY2lhbCB2aWV3IHVzZWQgZm9y
IHRleHR1cmUgY29waWVzIHRoYXQgc2hvdWxkbid0IHBlcmZvcm0gc3dpenpsZS4KLSAgICBjb25z
dCB2azo6SW1hZ2VWaWV3ICZnZXRDb3B5SW1hZ2VWaWV3QW5kUmVjb3JkVXNlKENvbnRleHRWayAq
Y29udGV4dFZrKSBjb25zdDsKLSAgICBhbmdsZTo6UmVzdWx0IGdldFN0b3JhZ2VJbWFnZVZpZXco
Q29udGV4dFZrICpjb250ZXh0VmssCisgICAgY29uc3Qgdms6OkltYWdlVmlldyAmZ2V0Q29weUlt
YWdlVmlldygpIGNvbnN0OworICAgIGFuZ2xlOjpSZXN1bHQgZ2V0U3RvcmFnZUltYWdlVmlldyh2
azo6Q29udGV4dCAqY29udGV4dCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgY29uc3QgZ2w6OkltYWdlVW5pdCAmYmluZGluZywKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgY29uc3Qgdms6OkltYWdlVmlldyAqKmltYWdlVmlld091dCk7CiAKQEAg
LTIyOSwxMSArMjI5LDYgQEAgY2xhc3MgVGV4dHVyZVZrIDogcHVibGljIFRleHR1cmVJbXBsLCBw
dWJsaWMgYW5nbGU6Ok9ic2VydmVySW50ZXJmYWNlCiAgICAgICAgIHJldHVybiBtU2FtcGxlci5n
ZXQoKTsKICAgICB9CiAKLSAgICBhbmdsZTo6UmVzdWx0IGdldEJ1ZmZlclZpZXdBbmRSZWNvcmRV
c2UoQ29udGV4dFZrICpjb250ZXh0VmssCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGNvbnN0IHZrOjpGb3JtYXQgKmltYWdlVW5pZm9ybUZvcm1hdCwKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCBpc0ltYWdlLAotICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB2azo6QnVmZmVy
VmlldyAqKnZpZXdPdXQpOwotCiAgICAgLy8gTm9ybWFsbHksIGluaXRpYWxpemUgdGhlIGltYWdl
IHdpdGggZW5hYmxlZCBtaXBtYXAgbGV2ZWwgY291bnRzLgogICAgIGFuZ2xlOjpSZXN1bHQgZW5z
dXJlSW1hZ2VJbml0aWFsaXplZChDb250ZXh0VmsgKmNvbnRleHRWaywgSW1hZ2VNaXBMZXZlbHMg
bWlwTGV2ZWxzKTsKIApAQCAtNDI0LDYgKzQxOSw3IEBAIGNsYXNzIFRleHR1cmVWayA6IHB1Ymxp
YyBUZXh0dXJlSW1wbCwgcHVibGljIGFuZ2xlOjpPYnNlcnZlckludGVyZmFjZQogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGFuZ2xlOjpGb3JtYXRJRCBhY3R1YWxJbWFnZUZvcm1hdElELAog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIEltYWdlTWlwTGV2ZWxzIG1pcExldmVscyk7CiAg
ICAgdm9pZCByZWxlYXNlSW1hZ2UoQ29udGV4dFZrICpjb250ZXh0VmspOworICAgIHZvaWQgcmVs
ZWFzZUltYWdlVmlld3MoQ29udGV4dFZrICpjb250ZXh0VmspOwogICAgIHZvaWQgcmVsZWFzZVN0
YWdlZFVwZGF0ZXMoQ29udGV4dFZrICpjb250ZXh0VmspOwogICAgIHVpbnQzMl90IGdldE1pcExl
dmVsQ291bnQoSW1hZ2VNaXBMZXZlbHMgbWlwTGV2ZWxzKSBjb25zdDsKICAgICB1aW50MzJfdCBn
ZXRNYXhMZXZlbENvdW50KCkgY29uc3Q7CkBAIC00NDcsNyArNDQzLDcgQEAgY2xhc3MgVGV4dHVy
ZVZrIDogcHVibGljIFRleHR1cmVJbXBsLCBwdWJsaWMgYW5nbGU6Ok9ic2VydmVySW50ZXJmYWNl
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2w6OkxldmVs
SW5kZXggbGV2ZWwsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgR0x1aW50IGxheWVySW5kZXgsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgR0x1aW50IGxheWVyQ291bnQpOwotICAgIGFuZ2xlOjpSZXN1bHQgZ2V0TGV2
ZWxMYXllckltYWdlVmlldyhDb250ZXh0VmsgKmNvbnRleHRWaywKKyAgICBhbmdsZTo6UmVzdWx0
IGdldExldmVsTGF5ZXJJbWFnZVZpZXcodms6OkNvbnRleHQgKmNvbnRleHQsCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdsOjpMZXZlbEluZGV4IGxldmVsR0wsCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVfdCBsYXllciwKICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgdms6OkltYWdlVmll
dyAqKmltYWdlVmlld091dCk7CkBAIC00NzksNyArNDc1LDcgQEAgY2xhc3MgVGV4dHVyZVZrIDog
cHVibGljIFRleHR1cmVJbXBsLCBwdWJsaWMgYW5nbGU6Ok9ic2VydmVySW50ZXJmYWNlCiAgICAg
fQogCiAgICAgYW5nbGU6OlJlc3VsdCByZWZyZXNoSW1hZ2VWaWV3cyhDb250ZXh0VmsgKmNvbnRl
eHRWayk7Ci0gICAgYm9vbCBzaG91bGREZWNvZGVTUkdCKENvbnRleHRWayAqY29udGV4dFZrLCBH
TGVudW0gc3JnYkRlY29kZSwgYm9vbCB0ZXhlbEZldGNoU3RhdGljVXNlKSBjb25zdDsKKyAgICBi
b29sIHNob3VsZERlY29kZVNSR0Iodms6OkNvbnRleHQgKmNvbnRleHQsIEdMZW51bSBzcmdiRGVj
b2RlLCBib29sIHRleGVsRmV0Y2hTdGF0aWNVc2UpIGNvbnN0OwogICAgIHZvaWQgaW5pdEltYWdl
VXNhZ2VGbGFncyhDb250ZXh0VmsgKmNvbnRleHRWaywgYW5nbGU6OkZvcm1hdElEIGFjdHVhbEZv
cm1hdElEKTsKICAgICB2b2lkIGhhbmRsZUltbXV0YWJsZVNhbXBsZXJUcmFuc2l0aW9uKGNvbnN0
IHZrOjpJbWFnZUhlbHBlciAqcHJldmlvdXNJbWFnZSwKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGNvbnN0IHZrOjpJbWFnZUhlbHBlciAqbmV4dEltYWdlKTsKQEAg
LTQ4Nyw2ICs0ODMsOCBAQCBjbGFzcyBUZXh0dXJlVmsgOiBwdWJsaWMgVGV4dHVyZUltcGwsIHB1
YmxpYyBhbmdsZTo6T2JzZXJ2ZXJJbnRlcmZhY2UKICAgICB2azo6SW1hZ2VBY2Nlc3MgZ2V0UmVx
dWlyZWRJbWFnZUFjY2VzcygpIGNvbnN0IHsgcmV0dXJuIG1SZXF1aXJlZEltYWdlQWNjZXNzOyB9
CiAgICAgYm9vbCBpbWFnZUhhc0FjdHVhbEltYWdlRm9ybWF0KGFuZ2xlOjpGb3JtYXRJRCBhY3R1
YWxGb3JtYXRJRCkgY29uc3Q7CiAKKyAgICB2b2lkIHN0YWdlU2VsZkFzU3VicmVzb3VyY2VVcGRh
dGVzKENvbnRleHRWayAqY29udGV4dFZrKTsKKwogICAgIGJvb2wgbU93bnNJbWFnZTsKICAgICBi
b29sIG1SZXF1aXJlc011dGFibGVTdG9yYWdlOwogICAgIHZrOjpJbWFnZUFjY2VzcyBtUmVxdWly
ZWRJbWFnZUFjY2VzczsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9s
aWJBTkdMRS9yZW5kZXJlci92dWxrYW4vVHJhbnNmb3JtRmVlZGJhY2tWay5jcHAgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL1RyYW5zZm9ybUZl
ZWRiYWNrVmsuY3BwCmluZGV4IDkxOWY1ZWQ1MzFiM2UwMGVmNDMyYTA1NDIwZTg5N2VkODJiNjJh
MjUuLmNiN2NiY2M1MzhlMWMwZWI1YmJlODAyMjcyODdjNWQ3MTM5OWYzMmUgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vVHJh
bnNmb3JtRmVlZGJhY2tWay5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xp
YkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9UcmFuc2Zvcm1GZWVkYmFja1ZrLmNwcApAQCAtMjM4LDUy
ICsyMzgsNTYgQEAgdm9pZCBUcmFuc2Zvcm1GZWVkYmFja1ZrOjp1cGRhdGVEZXNjcmlwdG9yU2V0
TGF5b3V0KAogICAgIH0KIH0KIAotdm9pZCBUcmFuc2Zvcm1GZWVkYmFja1ZrOjppbml0RGVzY3Jp
cHRvclNldChDb250ZXh0VmsgKmNvbnRleHRWaywKK3ZvaWQgVHJhbnNmb3JtRmVlZGJhY2tWazo6
aW5pdERlc2NyaXB0b3JTZXQodms6OkNvbnRleHQgKmNvbnRleHQsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFVwZGF0ZURlc2NyaXB0b3JTZXRzQnVpbGRlciAq
dXBkYXRlQnVpbGRlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgdms6OkJ1ZmZlckhlbHBlciAqZW1wdHlCdWZmZXIsCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFNoYWRlckludGVyZmFjZVZhcmlhYmxlSW5mb01h
cCAmdmFyaWFibGVJbmZvTWFwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBzaXplX3QgeGZiQnVmZmVyQ291bnQsCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIFZrRGVzY3JpcHRvclNldCBkZXNjU2V0KSBjb25zdAogewotICAg
IGlmICghY29udGV4dFZrLT5nZXRGZWF0dXJlcygpLmVtdWxhdGVUcmFuc2Zvcm1GZWVkYmFjay5l
bmFibGVkKQorICAgIGlmICghY29udGV4dC0+Z2V0UmVuZGVyZXIoKS0+Z2V0RmVhdHVyZXMoKS5l
bXVsYXRlVHJhbnNmb3JtRmVlZGJhY2suZW5hYmxlZCkKICAgICB7CiAgICAgICAgIHJldHVybjsK
ICAgICB9CiAKICAgICBWa0Rlc2NyaXB0b3JCdWZmZXJJbmZvICpkZXNjcmlwdG9yQnVmZmVySW5m
byA9Ci0gICAgICAgIGNvbnRleHRWay0+YWxsb2NEZXNjcmlwdG9yQnVmZmVySW5mb3MoeGZiQnVm
ZmVyQ291bnQpOwotICAgIGNvbnN0IHZrOjpCdWZmZXJIZWxwZXIgJmVtcHR5QnVmZmVyID0gY29u
dGV4dFZrLT5nZXRFbXB0eUJ1ZmZlcigpOworICAgICAgICB1cGRhdGVCdWlsZGVyLT5hbGxvY0Rl
c2NyaXB0b3JCdWZmZXJJbmZvcyh4ZmJCdWZmZXJDb3VudCk7CiAKICAgICBmb3IgKHNpemVfdCBi
dWZmZXJJbmRleCA9IDA7IGJ1ZmZlckluZGV4IDwgeGZiQnVmZmVyQ291bnQ7ICsrYnVmZmVySW5k
ZXgpCiAgICAgewogICAgICAgICBWa0Rlc2NyaXB0b3JCdWZmZXJJbmZvICZidWZmZXJJbmZvID0g
ZGVzY3JpcHRvckJ1ZmZlckluZm9bYnVmZmVySW5kZXhdOwotICAgICAgICBidWZmZXJJbmZvLmJ1
ZmZlciAgICAgICAgICAgICAgICAgID0gZW1wdHlCdWZmZXIuZ2V0QnVmZmVyKCkuZ2V0SGFuZGxl
KCk7Ci0gICAgICAgIGJ1ZmZlckluZm8ub2Zmc2V0ICAgICAgICAgICAgICAgICAgPSBlbXB0eUJ1
ZmZlci5nZXRPZmZzZXQoKTsKLSAgICAgICAgYnVmZmVySW5mby5yYW5nZSAgICAgICAgICAgICAg
ICAgICA9IGVtcHR5QnVmZmVyLmdldFNpemUoKTsKKyAgICAgICAgYnVmZmVySW5mby5idWZmZXIg
ICAgICAgICAgICAgICAgICA9IGVtcHR5QnVmZmVyLT5nZXRCdWZmZXIoKS5nZXRIYW5kbGUoKTsK
KyAgICAgICAgYnVmZmVySW5mby5vZmZzZXQgICAgICAgICAgICAgICAgICA9IGVtcHR5QnVmZmVy
LT5nZXRPZmZzZXQoKTsKKyAgICAgICAgYnVmZmVySW5mby5yYW5nZSAgICAgICAgICAgICAgICAg
ICA9IGVtcHR5QnVmZmVyLT5nZXRTaXplKCk7CiAgICAgfQogCi0gICAgd3JpdGVEZXNjcmlwdG9y
U2V0KGNvbnRleHRWaywgdmFyaWFibGVJbmZvTWFwLCB4ZmJCdWZmZXJDb3VudCwgZGVzY3JpcHRv
ckJ1ZmZlckluZm8sIGRlc2NTZXQpOworICAgIHdyaXRlRGVzY3JpcHRvclNldChjb250ZXh0LCB1
cGRhdGVCdWlsZGVyLCB2YXJpYWJsZUluZm9NYXAsIHhmYkJ1ZmZlckNvdW50LAorICAgICAgICAg
ICAgICAgICAgICAgICBkZXNjcmlwdG9yQnVmZmVySW5mbywgZGVzY1NldCk7CiB9CiAKLXZvaWQg
VHJhbnNmb3JtRmVlZGJhY2tWazo6dXBkYXRlRGVzY3JpcHRvclNldChDb250ZXh0VmsgKmNvbnRl
eHRWaywKK3ZvaWQgVHJhbnNmb3JtRmVlZGJhY2tWazo6dXBkYXRlRGVzY3JpcHRvclNldCh2azo6
Q29udGV4dCAqY29udGV4dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBVcGRhdGVEZXNjcmlwdG9yU2V0c0J1aWxkZXIgKnVwZGF0ZUJ1aWxkZXIsCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZ2w6OlByb2dy
YW1FeGVjdXRhYmxlICZleGVjdXRhYmxlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGNvbnN0IFNoYWRlckludGVyZmFjZVZhcmlhYmxlSW5mb01hcCAmdmFy
aWFibGVJbmZvTWFwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFZrRGVzY3JpcHRvclNldCBkZXNjU2V0KSBjb25zdAogewotICAgIGlmICghY29udGV4dFZr
LT5nZXRGZWF0dXJlcygpLmVtdWxhdGVUcmFuc2Zvcm1GZWVkYmFjay5lbmFibGVkKQorICAgIFJl
bmRlcmVyVmsgKnJlbmRlcmVyID0gY29udGV4dC0+Z2V0UmVuZGVyZXIoKTsKKworICAgIGlmICgh
cmVuZGVyZXItPmdldEZlYXR1cmVzKCkuZW11bGF0ZVRyYW5zZm9ybUZlZWRiYWNrLmVuYWJsZWQp
CiAgICAgewogICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgc2l6ZV90IHhmYkJ1ZmZlckNv
dW50ICAgICAgICAgICAgICA9IGV4ZWN1dGFibGUuZ2V0VHJhbnNmb3JtRmVlZGJhY2tCdWZmZXJD
b3VudCgpOwotICAgIGNvbnN0IFZrRGV2aWNlU2l6ZSBvZmZzZXRBbGlnbm1lbnQgPSBjb250ZXh0
VmstPmdldFJlbmRlcmVyKCkKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIC0+Z2V0UGh5c2ljYWxEZXZpY2VQcm9wZXJ0aWVzKCkKLSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5saW1pdHMubWluU3RvcmFnZUJ1ZmZlck9mZnNl
dEFsaWdubWVudDsKKyAgICBzaXplX3QgeGZiQnVmZmVyQ291bnQgPSBleGVjdXRhYmxlLmdldFRy
YW5zZm9ybUZlZWRiYWNrQnVmZmVyQ291bnQoKTsKKyAgICBjb25zdCBWa0RldmljZVNpemUgb2Zm
c2V0QWxpZ25tZW50ID0KKyAgICAgICAgcmVuZGVyZXItPmdldFBoeXNpY2FsRGV2aWNlUHJvcGVy
dGllcygpLmxpbWl0cy5taW5TdG9yYWdlQnVmZmVyT2Zmc2V0QWxpZ25tZW50OwogCiAgICAgQVNT
RVJUKHhmYkJ1ZmZlckNvdW50ID4gMCk7CiAgICAgQVNTRVJUKGV4ZWN1dGFibGUuZ2V0VHJhbnNm
b3JtRmVlZGJhY2tCdWZmZXJNb2RlKCkgIT0gR0xfSU5URVJMRUFWRURfQVRUUklCUyB8fAogICAg
ICAgICAgICB4ZmJCdWZmZXJDb3VudCA9PSAxKTsKIAogICAgIFZrRGVzY3JpcHRvckJ1ZmZlcklu
Zm8gKmRlc2NyaXB0b3JCdWZmZXJJbmZvID0KLSAgICAgICAgY29udGV4dFZrLT5hbGxvY0Rlc2Ny
aXB0b3JCdWZmZXJJbmZvcyh4ZmJCdWZmZXJDb3VudCk7CisgICAgICAgIHVwZGF0ZUJ1aWxkZXIt
PmFsbG9jRGVzY3JpcHRvckJ1ZmZlckluZm9zKHhmYkJ1ZmZlckNvdW50KTsKIAogICAgIC8vIFVw
ZGF0ZSBidWZmZXIgZGVzY3JpcHRvciBiaW5kaW5nIGluZm8gZm9yIG91dHB1dCBidWZmZXJzCiAg
ICAgZm9yIChzaXplX3QgYnVmZmVySW5kZXggPSAwOyBidWZmZXJJbmRleCA8IHhmYkJ1ZmZlckNv
dW50OyArK2J1ZmZlckluZGV4KQpAQCAtMjk4LDcgKzMwMiw4IEBAIHZvaWQgVHJhbnNmb3JtRmVl
ZGJhY2tWazo6dXBkYXRlRGVzY3JpcHRvclNldChDb250ZXh0VmsgKmNvbnRleHRWaywKICAgICAg
ICAgQVNTRVJUKGJ1ZmZlckluZm8ucmFuZ2UgIT0gMCk7CiAgICAgfQogCi0gICAgd3JpdGVEZXNj
cmlwdG9yU2V0KGNvbnRleHRWaywgdmFyaWFibGVJbmZvTWFwLCB4ZmJCdWZmZXJDb3VudCwgZGVz
Y3JpcHRvckJ1ZmZlckluZm8sIGRlc2NTZXQpOworICAgIHdyaXRlRGVzY3JpcHRvclNldChjb250
ZXh0LCB1cGRhdGVCdWlsZGVyLCB2YXJpYWJsZUluZm9NYXAsIHhmYkJ1ZmZlckNvdW50LAorICAg
ICAgICAgICAgICAgICAgICAgICBkZXNjcmlwdG9yQnVmZmVySW5mbywgZGVzY1NldCk7CiB9CiAK
IHZvaWQgVHJhbnNmb3JtRmVlZGJhY2tWazo6Z2V0QnVmZmVyT2Zmc2V0cyhDb250ZXh0VmsgKmNv
bnRleHRWaywKQEAgLTM2NywxOSArMzcyLDIwIEBAIHZvaWQgVHJhbnNmb3JtRmVlZGJhY2tWazo6
b25TdWJqZWN0U3RhdGVDaGFuZ2UoYW5nbGU6OlN1YmplY3RJbmRleCBpbmRleCwKICAgICB9CiB9
CiAKLXZvaWQgVHJhbnNmb3JtRmVlZGJhY2tWazo6d3JpdGVEZXNjcmlwdG9yU2V0KENvbnRleHRW
ayAqY29udGV4dFZrLAordm9pZCBUcmFuc2Zvcm1GZWVkYmFja1ZrOjp3cml0ZURlc2NyaXB0b3JT
ZXQodms6OkNvbnRleHQgKmNvbnRleHQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBVcGRhdGVEZXNjcmlwdG9yU2V0c0J1aWxkZXIgKnVwZGF0ZUJ1aWxkZXIs
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBTaGFk
ZXJJbnRlcmZhY2VWYXJpYWJsZUluZm9NYXAgJnZhcmlhYmxlSW5mb01hcCwKICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVfdCB4ZmJCdWZmZXJDb3VudCwK
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZrRGVzY3JpcHRv
ckJ1ZmZlckluZm8gKmJ1ZmZlckluZm8sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBWa0Rlc2NyaXB0b3JTZXQgZGVzY1NldCkgY29uc3QKIHsKLSAgICBBU1NF
UlQoY29udGV4dFZrLT5nZXRGZWF0dXJlcygpLmVtdWxhdGVUcmFuc2Zvcm1GZWVkYmFjay5lbmFi
bGVkKTsKKyAgICBBU1NFUlQoY29udGV4dC0+Z2V0UmVuZGVyZXIoKS0+Z2V0RmVhdHVyZXMoKS5l
bXVsYXRlVHJhbnNmb3JtRmVlZGJhY2suZW5hYmxlZCk7CiAKICAgICBjb25zdCBzdGQ6OnN0cmlu
ZyBidWZmZXJOYW1lID0gR2V0WGZiQnVmZmVyTmFtZSgwKTsKICAgICBjb25zdCBTaGFkZXJJbnRl
cmZhY2VWYXJpYWJsZUluZm8gJmluZm8gPQogICAgICAgICB2YXJpYWJsZUluZm9NYXAuZ2V0KGds
OjpTaGFkZXJUeXBlOjpWZXJ0ZXgsIGJ1ZmZlck5hbWUpOwogCi0gICAgVmtXcml0ZURlc2NyaXB0
b3JTZXQgJndyaXRlRGVzY3JpcHRvckluZm8gPSBjb250ZXh0VmstPmFsbG9jV3JpdGVEZXNjcmlw
dG9yU2V0KCk7CisgICAgVmtXcml0ZURlc2NyaXB0b3JTZXQgJndyaXRlRGVzY3JpcHRvckluZm8g
PSB1cGRhdGVCdWlsZGVyLT5hbGxvY1dyaXRlRGVzY3JpcHRvclNldCgpOwogICAgIHdyaXRlRGVz
Y3JpcHRvckluZm8uc1R5cGUgICAgICAgICAgICAgICAgID0gVktfU1RSVUNUVVJFX1RZUEVfV1JJ
VEVfREVTQ1JJUFRPUl9TRVQ7CiAgICAgd3JpdGVEZXNjcmlwdG9ySW5mby5kc3RTZXQgICAgICAg
ICAgICAgICAgPSBkZXNjU2V0OwogICAgIHdyaXRlRGVzY3JpcHRvckluZm8uZHN0QmluZGluZyAg
ICAgICAgICAgID0gaW5mby5iaW5kaW5nOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9UcmFuc2Zvcm1GZWVkYmFja1ZrLmgg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL1Ry
YW5zZm9ybUZlZWRiYWNrVmsuaAppbmRleCBjNzY2MDRhY2E3ZWVjYzQ1ZjA5M2Y5ZWQzNGM4NWE4
OTJhODJmOGFlLi4yMDk1NTJjYTk1MmNmYTJhYmJmYWNiZGQ1NTI2OGU5ODdjMDc2YzJhIDEwMDY0
NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVs
a2FuL1RyYW5zZm9ybUZlZWRiYWNrVmsuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9z
cmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL1RyYW5zZm9ybUZlZWRiYWNrVmsuaApAQCAtMjIs
MTAgKzIyLDEyIEBAIGNsYXNzIFByb2dyYW1TdGF0ZTsKIAogbmFtZXNwYWNlIHJ4CiB7CitjbGFz
cyBVcGRhdGVEZXNjcmlwdG9yU2V0c0J1aWxkZXI7CisKIG5hbWVzcGFjZSB2awogewogY2xhc3Mg
RGVzY3JpcHRvclNldExheW91dERlc2M7Ci19Cit9ICAvLyBuYW1lc3BhY2UgdmsKIAogY2xhc3Mg
VHJhbnNmb3JtRmVlZGJhY2tWayA6IHB1YmxpYyBUcmFuc2Zvcm1GZWVkYmFja0ltcGwsIHB1Ymxp
YyBhbmdsZTo6T2JzZXJ2ZXJJbnRlcmZhY2UKIHsKQEAgLTQ3LDExICs0OSwxNCBAQCBjbGFzcyBU
cmFuc2Zvcm1GZWVkYmFja1ZrIDogcHVibGljIFRyYW5zZm9ybUZlZWRiYWNrSW1wbCwgcHVibGlj
IGFuZ2xlOjpPYnNlcnZlcgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25z
dCBTaGFkZXJJbnRlcmZhY2VWYXJpYWJsZUluZm9NYXAgJnZhcmlhYmxlSW5mb01hcCwKICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZV90IHhmYkJ1ZmZlckNvdW50LAogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2azo6RGVzY3JpcHRvclNldExheW91dERl
c2MgKmRlc2NTZXRMYXlvdXRPdXQpIGNvbnN0OwotICAgIHZvaWQgaW5pdERlc2NyaXB0b3JTZXQo
Q29udGV4dFZrICpjb250ZXh0VmssCisgICAgdm9pZCBpbml0RGVzY3JpcHRvclNldCh2azo6Q29u
dGV4dCAqY29udGV4dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIFVwZGF0ZURlc2NyaXB0
b3JTZXRzQnVpbGRlciAqdXBkYXRlQnVpbGRlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
IHZrOjpCdWZmZXJIZWxwZXIgKmVtcHR5QnVmZmVyLAogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgY29uc3QgU2hhZGVySW50ZXJmYWNlVmFyaWFibGVJbmZvTWFwICZ2YXJpYWJsZUluZm9NYXAs
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplX3QgeGZiQnVmZmVyQ291bnQsCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBWa0Rlc2NyaXB0b3JTZXQgZGVzY1NldCkgY29uc3Q7Ci0g
ICAgdm9pZCB1cGRhdGVEZXNjcmlwdG9yU2V0KENvbnRleHRWayAqY29udGV4dFZrLAorICAgIHZv
aWQgdXBkYXRlRGVzY3JpcHRvclNldCh2azo6Q29udGV4dCAqY29udGV4dCwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgVXBkYXRlRGVzY3JpcHRvclNldHNCdWlsZGVyICp1cGRhdGVCdWls
ZGVyLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBnbDo6UHJvZ3JhbUV4ZWN1
dGFibGUgJmV4ZWN1dGFibGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFNo
YWRlckludGVyZmFjZVZhcmlhYmxlSW5mb01hcCAmdmFyaWFibGVJbmZvTWFwLAogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBWa0Rlc2NyaXB0b3JTZXQgZGVzY1NldCkgY29uc3Q7CkBAIC0x
MDcsNyArMTEyLDggQEAgY2xhc3MgVHJhbnNmb3JtRmVlZGJhY2tWayA6IHB1YmxpYyBUcmFuc2Zv
cm1GZWVkYmFja0ltcGwsIHB1YmxpYyBhbmdsZTo6T2JzZXJ2ZXIKICAgICB2b2lkIG9uU3ViamVj
dFN0YXRlQ2hhbmdlKGFuZ2xlOjpTdWJqZWN0SW5kZXggaW5kZXgsIGFuZ2xlOjpTdWJqZWN0TWVz
c2FnZSBtZXNzYWdlKSBvdmVycmlkZTsKIAogICBwcml2YXRlOgotICAgIHZvaWQgd3JpdGVEZXNj
cmlwdG9yU2V0KENvbnRleHRWayAqY29udGV4dFZrLAorICAgIHZvaWQgd3JpdGVEZXNjcmlwdG9y
U2V0KHZrOjpDb250ZXh0ICpjb250ZXh0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIFVw
ZGF0ZURlc2NyaXB0b3JTZXRzQnVpbGRlciAqdXBkYXRlQnVpbGRlciwKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBjb25zdCBTaGFkZXJJbnRlcmZhY2VWYXJpYWJsZUluZm9NYXAgJnZhcmlh
YmxlSW5mb01hcCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplX3QgeGZiQnVmZmVy
Q291bnQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVmtEZXNjcmlwdG9yQnVmZmVySW5m
byAqYnVmZmVySW5mbywKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9s
aWJBTkdMRS9yZW5kZXJlci92dWxrYW4vVXRpbHNWay5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL1V0aWxzVmsuY3BwCmluZGV4IDQwNTgy
MmY0NWNlMmE4MjA5NmU1NjUxOTc4OGNmZWQ4NGYwOTJkNzUuLjdkODRhNTMxMGJmMjcxN2U4ODM4
MGI1M2M1MjFmZjQwODY5ODg2ZDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vVXRpbHNWay5jcHAKKysrIGIvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9VdGlsc1ZrLmNwcApA
QCAtMzUwOSw4ICszNTA5LDkgQEAgYW5nbGU6OlJlc3VsdCBVdGlsc1ZrOjphbGxvY2F0ZURlc2Ny
aXB0b3JTZXQoQ29udGV4dFZrICpjb250ZXh0VmssCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBWa0Rlc2NyaXB0b3JTZXQgKmRlc2NyaXB0b3JTZXRPdXQpCiB7
CiAgICAgQU5HTEVfVFJZKG1EZXNjcmlwdG9yUG9vbHNbZnVuY3Rpb25dLmFsbG9jYXRlRGVzY3Jp
cHRvclNldHMoCi0gICAgICAgIGNvbnRleHRWaywgbURlc2NyaXB0b3JTZXRMYXlvdXRzW2Z1bmN0
aW9uXVtEZXNjcmlwdG9yU2V0SW5kZXg6OkludGVybmFsXS5nZXQoKSwgMSwKLSAgICAgICAgYmlu
ZGluZ091dCwgZGVzY3JpcHRvclNldE91dCkpOworICAgICAgICBjb250ZXh0VmssICZjb250ZXh0
VmstPmdldFJlc291cmNlVXNlTGlzdCgpLAorICAgICAgICBtRGVzY3JpcHRvclNldExheW91dHNb
ZnVuY3Rpb25dW0Rlc2NyaXB0b3JTZXRJbmRleDo6SW50ZXJuYWxdLmdldCgpLCAxLCBiaW5kaW5n
T3V0LAorICAgICAgICBkZXNjcmlwdG9yU2V0T3V0KSk7CiAKICAgICBtUGVyZkNvdW50ZXJzLmRl
c2NyaXB0b3JTZXRzQWxsb2NhdGVkKys7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vVmVydGV4QXJyYXlWay5jcHAgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL1ZlcnRl
eEFycmF5VmsuY3BwCmluZGV4IDhlM2Q4YWJhZTMwZDYxMTc4NjcyYTYxY2U0NmI5YTI3NWUyNmQ3
MmIuLjA1NDljN2Y2OWYyNTU3ODNiYTY2ZWQwZGI5NmZhZWIzZmQ1ZWI1OTUgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vVmVy
dGV4QXJyYXlWay5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xF
L3JlbmRlcmVyL3Z1bGthbi9WZXJ0ZXhBcnJheVZrLmNwcApAQCAtNDk0LDYgKzQ5NCwxNSBAQCBh
bmdsZTo6UmVzdWx0IFZlcnRleEFycmF5Vms6OmNvbnZlcnRWZXJ0ZXhCdWZmZXJDUFUoQ29udGV4
dFZrICpjb250ZXh0VmssCiAgICAgcmV0dXJuIGFuZ2xlOjpSZXN1bHQ6OkNvbnRpbnVlOwogfQog
Cit2b2lkIFZlcnRleEFycmF5Vms6OnVwZGF0ZUN1cnJlbnRFbGVtZW50QXJyYXlCdWZmZXIoKQor
eworICAgIEFTU0VSVChtU3RhdGUuZ2V0RWxlbWVudEFycmF5QnVmZmVyKCkgIT0gbnVsbHB0cik7
CisgICAgQVNTRVJUKG1TdGF0ZS5nZXRFbGVtZW50QXJyYXlCdWZmZXIoKS0+Z2V0U2l6ZSgpID4g
MCk7CisKKyAgICBCdWZmZXJWayAqYnVmZmVyVmsgICAgICAgICA9IHZrOjpHZXRJbXBsKG1TdGF0
ZS5nZXRFbGVtZW50QXJyYXlCdWZmZXIoKSk7CisgICAgbUN1cnJlbnRFbGVtZW50QXJyYXlCdWZm
ZXIgPSAmYnVmZmVyVmstPmdldEJ1ZmZlcigpOworfQorCiBhbmdsZTo6UmVzdWx0IFZlcnRleEFy
cmF5Vms6OnN5bmNTdGF0ZShjb25zdCBnbDo6Q29udGV4dCAqY29udGV4dCwKICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGdsOjpWZXJ0ZXhBcnJheTo6RGlydHlC
aXRzICZkaXJ0eUJpdHMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBn
bDo6VmVydGV4QXJyYXk6OkRpcnR5QXR0cmliQml0c0FycmF5ICphdHRyaWJCaXRzLApAQCAtNTE5
LDggKzUyOCw3IEBAIGFuZ2xlOjpSZXN1bHQgVmVydGV4QXJyYXlWazo6c3luY1N0YXRlKGNvbnN0
IGdsOjpDb250ZXh0ICpjb250ZXh0LAogICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAg
ICAgICAgLy8gTm90ZSB0aGF0IGp1c3QgdXBkYXRpbmcgYnVmZmVyIGRhdGEgbWF5IHN0aWxsIHJl
c3VsdCBpbiBhIG5ldwogICAgICAgICAgICAgICAgICAgICAvLyB2azo6QnVmZmVySGVscGVyIGFs
bG9jYXRpb24uCi0gICAgICAgICAgICAgICAgICAgIEJ1ZmZlclZrICpidWZmZXJWayAgICAgICAg
ID0gdms6OkdldEltcGwoYnVmZmVyR0wpOwotICAgICAgICAgICAgICAgICAgICBtQ3VycmVudEVs
ZW1lbnRBcnJheUJ1ZmZlciA9ICZidWZmZXJWay0+Z2V0QnVmZmVyKCk7CisgICAgICAgICAgICAg
ICAgICAgIHVwZGF0ZUN1cnJlbnRFbGVtZW50QXJyYXlCdWZmZXIoKTsKICAgICAgICAgICAgICAg
ICB9CiAgICAgICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgICAgIHsKQEAgLTg0MiwyNSAr
ODUwLDM2IEBAIGFuZ2xlOjpSZXN1bHQgVmVydGV4QXJyYXlWazo6dXBkYXRlU3RyZWFtZWRBdHRy
aWJzKGNvbnN0IGdsOjpDb250ZXh0ICpjb250ZXh0LAogICAgICAgICAgICAgICAgIEFOR0xFX1RS
WShjb250ZXh0VmstPmFsbG9jYXRlU3RyZWFtZWRWZXJ0ZXhCdWZmZXIoYXR0cmliSW5kZXgsIGJ5
dGVzVG9BbGxvY2F0ZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICZ2ZXJ0ZXhEYXRhQnVmZmVyKSk7CiAKLSAgICAgICAg
ICAgICAgICBpZiAoYmluZGluZy5nZXRCdWZmZXIoKS5nZXQoKSAhPSBudWxscHRyKQorICAgICAg
ICAgICAgICAgIGdsOjpCdWZmZXIgKmJ1ZmZlckdMID0gYmluZGluZy5nZXRCdWZmZXIoKS5nZXQo
KTsKKyAgICAgICAgICAgICAgICBpZiAoYnVmZmVyR0wgIT0gbnVsbHB0cikKICAgICAgICAgICAg
ICAgICB7Ci0gICAgICAgICAgICAgICAgICAgIC8vIE1hcCBidWZmZXIgdG8gZXhwYW5kIGF0dHJp
YnMgZm9yIGRpdmlzb3IgZW11bGF0aW9uCi0gICAgICAgICAgICAgICAgICAgIEJ1ZmZlclZrICpi
dWZmZXJWayA9IHZrOjpHZXRJbXBsKGJpbmRpbmcuZ2V0QnVmZmVyKCkuZ2V0KCkpOwotICAgICAg
ICAgICAgICAgICAgICB2b2lkICpidWZmU3JjICAgICAgPSBudWxscHRyOwotICAgICAgICAgICAg
ICAgICAgICBBTkdMRV9UUlkoYnVmZmVyVmstPm1hcEltcGwoY29udGV4dFZrLCBHTF9NQVBfUkVB
RF9CSVQsICZidWZmU3JjKSk7Ci0gICAgICAgICAgICAgICAgICAgIHNyYyA9IHJlaW50ZXJwcmV0
X2Nhc3Q8Y29uc3QgdWludDhfdCAqPihidWZmU3JjKSArIGJpbmRpbmcuZ2V0T2Zmc2V0KCk7Cisg
ICAgICAgICAgICAgICAgICAgIC8vIE9ubHkgZG8gdGhlIGRhdGEgY29weSBpZiBzcmMgYnVmZmVy
IGlzIHZhbGlkLgorICAgICAgICAgICAgICAgICAgICBpZiAoYnVmZmVyR0wtPmdldFNpemUoKSA+
IDApCisgICAgICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIC8vIE1h
cCBidWZmZXIgdG8gZXhwYW5kIGF0dHJpYnMgZm9yIGRpdmlzb3IgZW11bGF0aW9uCisgICAgICAg
ICAgICAgICAgICAgICAgICBCdWZmZXJWayAqYnVmZmVyVmsgPSB2azo6R2V0SW1wbChiaW5kaW5n
LmdldEJ1ZmZlcigpLmdldCgpKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHZvaWQgKmJ1ZmZT
cmMgICAgICA9IG51bGxwdHI7CisgICAgICAgICAgICAgICAgICAgICAgICBBTkdMRV9UUlkoYnVm
ZmVyVmstPm1hcEltcGwoY29udGV4dFZrLCBHTF9NQVBfUkVBRF9CSVQsICZidWZmU3JjKSk7Cisg
ICAgICAgICAgICAgICAgICAgICAgICBzcmMgPSByZWludGVycHJldF9jYXN0PGNvbnN0IHVpbnQ4
X3QgKj4oYnVmZlNyYykgKyBiaW5kaW5nLmdldE9mZnNldCgpOwogCi0gICAgICAgICAgICAgICAg
ICAgIHVpbnQzMl90IHNyY0F0dHJpYnV0ZVNpemUgPQotICAgICAgICAgICAgICAgICAgICAgICAg
c3RhdGljX2Nhc3Q8dWludDMyX3Q+KENvbXB1dGVWZXJ0ZXhBdHRyaWJ1dGVUeXBlU2l6ZShhdHRy
aWIpKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IHNyY0F0dHJpYnV0ZVNpemUg
PQorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRpY19jYXN0PHVpbnQzMl90PihDb21w
dXRlVmVydGV4QXR0cmlidXRlVHlwZVNpemUoYXR0cmliKSk7CiAKLSAgICAgICAgICAgICAgICAg
ICAgc2l6ZV90IG51bVZlcnRpY2VzID0gR2V0VmVydGV4Q291bnQoYnVmZmVyVmssIGJpbmRpbmcs
IHNyY0F0dHJpYnV0ZVNpemUpOworICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZV90IG51bVZl
cnRpY2VzID0gR2V0VmVydGV4Q291bnQoYnVmZmVyVmssIGJpbmRpbmcsIHNyY0F0dHJpYnV0ZVNp
emUpOwogCi0gICAgICAgICAgICAgICAgICAgIEFOR0xFX1RSWShTdHJlYW1WZXJ0ZXhEYXRhV2l0
aERpdmlzb3IoCi0gICAgICAgICAgICAgICAgICAgICAgICBjb250ZXh0VmssIHZlcnRleERhdGFC
dWZmZXIsIHNyYywgYnl0ZXNUb0FsbG9jYXRlLCBiaW5kaW5nLmdldFN0cmlkZSgpLAotICAgICAg
ICAgICAgICAgICAgICAgICAgc3RyaWRlLCB2ZXJ0ZXhGb3JtYXQuZ2V0VmVydGV4TG9hZEZ1bmN0
aW9uKGNvbXByZXNzZWQpLCBkaXZpc29yLAotICAgICAgICAgICAgICAgICAgICAgICAgbnVtVmVy
dGljZXMpKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIEFOR0xFX1RSWShTdHJlYW1WZXJ0ZXhE
YXRhV2l0aERpdmlzb3IoCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGV4dFZrLCB2
ZXJ0ZXhEYXRhQnVmZmVyLCBzcmMsIGJ5dGVzVG9BbGxvY2F0ZSwgYmluZGluZy5nZXRTdHJpZGUo
KSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJpZGUsIHZlcnRleEZvcm1hdC5nZXRW
ZXJ0ZXhMb2FkRnVuY3Rpb24oY29tcHJlc3NlZCksIGRpdmlzb3IsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgbnVtVmVydGljZXMpKTsKIAotICAgICAgICAgICAgICAgICAgICBBTkdMRV9U
UlkoYnVmZmVyVmstPnVubWFwSW1wbChjb250ZXh0VmspKTsKKyAgICAgICAgICAgICAgICAgICAg
ICAgIEFOR0xFX1RSWShidWZmZXJWay0+dW5tYXBJbXBsKGNvbnRleHRWaykpOworICAgICAgICAg
ICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKGNvbnRleHRWay0+Z2V0
RXh0ZW5zaW9ucygpLnJvYnVzdG5lc3NFWFQpCisgICAgICAgICAgICAgICAgICAgIHsKKyAgICAg
ICAgICAgICAgICAgICAgICAgIC8vIFNhdGlzZnkgcm9idXN0bmVzcyBjb25zdHJhaW50cyAob25s
eSBpZiBleHRlbnNpb24gZW5hYmxlZCkKKyAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQ4X3Qg
KmRzdCA9IHZlcnRleERhdGFCdWZmZXItPmdldE1hcHBlZE1lbW9yeSgpOworICAgICAgICAgICAg
ICAgICAgICAgICAgbWVtc2V0KGRzdCwgMCwgYnl0ZXNUb0FsbG9jYXRlKTsKKyAgICAgICAgICAg
ICAgICAgICAgfQogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICBlbHNlCiAgICAg
ICAgICAgICAgICAgewpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xp
YkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9WZXJ0ZXhBcnJheVZrLmggYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL1ZlcnRleEFycmF5VmsuaAppbmRl
eCAzODM2ZTUwY2E5NmVjMjA1Mjg1MTBhNjNkNjY5ZmUxYzAzNzQ0MTdkLi5hZWVlY2RlYjZiZTZh
ZWVlYTU3MDQ3MGM0NDgxOGZhMzhkZTNmMDkzIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL1ZlcnRleEFycmF5VmsuaAorKysg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL1Zl
cnRleEFycmF5VmsuaApAQCAtODIsNiArODIsOSBAQCBjbGFzcyBWZXJ0ZXhBcnJheVZrIDogcHVi
bGljIFZlcnRleEFycmF5SW1wbAogICAgICAgICByZXR1cm4gbUN1cnJlbnRBcnJheUJ1ZmZlcnM7
CiAgICAgfQogCisgICAgLy8gVXBkYXRlIG1DdXJyZW50RWxlbWVudEFycmF5QnVmZmVyIGJhc2Vk
IG9uIHRoZSB2ZXJ0ZXggYXJyYXkgc3RhdGUKKyAgICB2b2lkIHVwZGF0ZUN1cnJlbnRFbGVtZW50
QXJyYXlCdWZmZXIoKTsKKwogICAgIHZrOjpCdWZmZXJIZWxwZXIgKmdldEN1cnJlbnRFbGVtZW50
QXJyYXlCdWZmZXIoKSBjb25zdCB7IHJldHVybiBtQ3VycmVudEVsZW1lbnRBcnJheUJ1ZmZlcjsg
fQogCiAgICAgYW5nbGU6OlJlc3VsdCBjb252ZXJ0SW5kZXhCdWZmZXJHUFUoQ29udGV4dFZrICpj
b250ZXh0VmssCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5H
TEUvcmVuZGVyZXIvdnVsa2FuL1ZrSW1hZ2VJbWFnZVNpYmxpbmdWay5jcHAgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL1ZrSW1hZ2VJbWFnZVNp
YmxpbmdWay5jcHAKaW5kZXggN2I5ODAyOTY5MjA1MzE2NTRjMGNlNzA2NGU1NzgyODQwNjc4ZTE2
ZS4uZWRmNTc5YjFkYWMyM2M5MTE1OTU3YmNlZDI1Y2I3N2YzYTdjZjE2MSAxMDA2NDQKLS0tIGEv
U291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9Wa0lt
YWdlSW1hZ2VTaWJsaW5nVmsuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9s
aWJBTkdMRS9yZW5kZXJlci92dWxrYW4vVmtJbWFnZUltYWdlU2libGluZ1ZrLmNwcApAQCAtMTI2
LDYgKzEyNiw3IEBAIHZvaWQgVmtJbWFnZUltYWdlU2libGluZ1ZrOjpyZWxlYXNlKFJlbmRlcmVy
VmsgKnJlbmRlcmVyKQogICAgIHsKICAgICAgICAgLy8gVE9ETzogSGFuZGxlIHRoZSBjYXNlIHdo
ZXJlIHRoZSBFR0xJbWFnZSBpcyB1c2VkIGluIHR3byBjb250ZXh0cyBub3QgaW4gdGhlIHNhbWUg
c2hhcmUKICAgICAgICAgLy8gZ3JvdXAuICBodHRwczovL2lzc3VldHJhY2tlci5nb29nbGUuY29t
LzE2OTg2ODgwMworICAgICAgICBtSW1hZ2UtPnJlbGVhc2VJbWFnZUFuZFZpZXdHYXJiYWdlKHJl
bmRlcmVyKTsKICAgICAgICAgbUltYWdlLT5yZXNldEltYWdlV2Vha1JlZmVyZW5jZSgpOwogICAg
ICAgICBtSW1hZ2UtPmRlc3Ryb3kocmVuZGVyZXIpOwogICAgICAgICBTYWZlRGVsZXRlKG1JbWFn
ZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVu
ZGVyZXIvdnVsa2FuL2FuZHJvaWQvRGlzcGxheVZrQW5kcm9pZC5jcHAgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL2FuZHJvaWQvRGlzcGxheVZr
QW5kcm9pZC5jcHAKaW5kZXggYTRiMmNmZWVjZjBiNGIwM2M1OWY1ZDQ5NjlmZGY5YjAxYzM4NzNk
MS4uNmIxZWIzZWJhNTk1MGJjODg5YTVkMjI2NzhkOTViMWJhNTg3Mzk1NiAxMDA2NDQKLS0tIGEv
U291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9hbmRy
b2lkL0Rpc3BsYXlWa0FuZHJvaWQuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3Ny
Yy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vYW5kcm9pZC9EaXNwbGF5VmtBbmRyb2lkLmNwcApA
QCAtNTAsMTEgKzUwLDcyIEBAIFN1cmZhY2VJbXBsICpEaXNwbGF5VmtBbmRyb2lkOjpjcmVhdGVX
aW5kb3dTdXJmYWNlVmsoY29uc3QgZWdsOjpTdXJmYWNlU3RhdGUgJnN0CiAKIGVnbDo6Q29uZmln
U2V0IERpc3BsYXlWa0FuZHJvaWQ6OmdlbmVyYXRlQ29uZmlncygpCiB7Ci0gICAgLy8gVGhlIGxp
c3Qgb2Ygc3VwcG9ydGVkIHN3YXBjaGFpbiBmb3JtYXRzIGlzIGF2YWlsYWJsZSBhdDoKLSAgICAv
LyBodHRwczovL2NzLmFuZHJvaWQuY29tL2FuZHJvaWQvcGxhdGZvcm0vc3VwZXJwcm9qZWN0Lysv
bWFzdGVyOmZyYW1ld29ya3MvbmF0aXZlL3Z1bGthbi9saWJ2dWxrYW4vc3dhcGNoYWluLmNwcDts
PTQ2NS00ODY/cT1HZXROYXRpdmVQaXhlbEZvcm1hdAotICAgIC8vIFRPRE8gKElzc3VlIDQwNjIp
OiBBZGQgY29uZGl0aW9uYWwgc3VwcG9ydCBmb3IgR0xfUkdCMTBfQTIgYW5kIEdMX1JHQkExNkYg
d2hlbiB0aGUKLSAgICAvLyBBbmRyb2lkIFZ1bGthbiBsb2FkZXIgYWRkcyBjb25kaXRpb25hbCBz
dXBwb3J0IGZvciB0aGVtLgotICAgIGNvbnN0IHN0ZDo6YXJyYXk8R0xlbnVtLCAzPiBrQ29sb3JG
b3JtYXRzID0ge0dMX1JHQkE4LCBHTF9SR0I4LCBHTF9SR0I1NjV9OworICAgIC8vIEFOR0xFJ3Mg
VnVsa2FuIGJhY2stZW5kIG9uIEFuZHJvaWQgdHJhZGl0aW9uYWxseSBzdXBwb3J0cyBFR0xDb25m
aWcncyB3aXRoIEdMX1JHQkE4LAorICAgIC8vIEdMX1JHQjgsIGFuZCBHTF9SR0I1NjUuICBUaGUg
QW5kcm9pZCBWdWxrYW4gbG9hZGVyIHVzZWQgdG8gc3VwcG9ydCBhbGwgdGhyZWUgb2YgdGhlc2UK
KyAgICAvLyAoZS5nLiBBbmRyb2lkIDcpLCBidXQgdGhpcyBoYXMgY2hhbmdlZCBhcyBBbmRyb2lk
IG5vdyBzdXBwb3J0cyBWdWxrYW4gZGV2aWNlcyB0aGF0IGRvIG5vdAorICAgIC8vIHN1cHBvcnQg
YWxsIG9mIHRob3NlIGZvcm1hdHMuICBUaGUgbG9hZGVyIGFsd2F5cyBzdXBwb3J0cyBHTF9SR0JB
OC4gIE90aGVyIGZvcm1hdHMgYXJlCisgICAgLy8gb3B0aW9uYWxseSBzdXBwb3J0ZWQsIGRlcGVu
ZGluZyBvbiB0aGUgdW5kZXJseWluZyBkcml2ZXIgc3VwcG9ydC4gIFRoaXMgaW5jbHVkZXMgR0xf
UkdCMTBfQTIKKyAgICAvLyBhbmQgR0xfUkdCQTE2Riwgd2hpY2ggQU5HTEUgYWxzbyBkZXNpcmVz
IHRvIHN1cHBvcnQgRUdMQ29uZmlnJ3Mgd2l0aC4KKyAgICAvLworICAgIC8vIFRoZSBwcm9ibGVt
IGZvciBBTkdMRSBpcyB0aGF0IFZ1bGthbiByZXF1aXJlcyBhIFZrU3VyZmFjZUtIUiBpbiBvcmRl
ciB0byBxdWVyeSBhdmFpbGFibGUKKyAgICAvLyBmb3JtYXRzIGZyb20gdGhlIGxvYWRlciwgYnV0
IEFOR0xFIG11c3QgZGV0ZXJtaW5lIHdoaWNoIEVHTENvbmZpZydzIHRvIGV4cG9zZSBiZWZvcmUg
aXQgaGFzCisgICAgLy8gYSBWa1N1cmZhY2VLSFIuICBUaGUgVktfR09PR0xFX3N1cmZhY2VsZXNz
X3F1ZXJ5IGV4dGVuc2lvbiBhbGxvd3MgQU5HTEUgdG8gcXVlcnkgZm9ybWF0cworICAgIC8vIHdp
dGhvdXQgaGF2aW5nIGEgVmtTdXJmYWNlS0hSLiAgVGhlIG9sZCBwYXRoIGlzIHN0aWxsIGtlcHQg
dW50aWwgdGhpcyBleHRlbnNpb24gYmVjb21lcworICAgIC8vIHVuaXZlcnNhbGx5IGF2YWlsYWJs
ZS4KKworICAgIC8vIEFzc3VtZSBHTF9SR0I4IGFuZCBHTF9SR0JBOCBpcyBhbHdheXMgYXZhaWxh
YmxlLgorICAgIHN0ZDo6dmVjdG9yPEdMZW51bT4ga0NvbG9yRm9ybWF0cyAgICAgICAgPSB7R0xf
UkdCQTgsIEdMX1JHQjh9OworICAgIHN0ZDo6dmVjdG9yPEdMZW51bT4ga0Rlc2lyZWRDb2xvckZv
cm1hdHMgPSB7R0xfUkdCNTY1LCBHTF9SR0IxMF9BMiwgR0xfUkdCQTE2Rn07CisgICAgaWYgKCFn
ZXRSZW5kZXJlcigpLT5nZXRGZWF0dXJlcygpLnN1cHBvcnRzU3VyZmFjZWxlc3NRdWVyeUV4dGVu
c2lvbi5lbmFibGVkKQorICAgIHsKKyAgICAgICAgLy8gT2xkIHBhdGg6IEFzc3VtZSBHTF9SR0I1
NjUgaXMgYXZhaWxhYmxlLCBhcyBpdCBpcyBnZW5lcmFsbHkgYXZhaWxhYmxlIG9uIHRoZSBkZXZp
Y2VzCisgICAgICAgIC8vIHRoYXQgc3VwcG9ydCBWdWxrYW4uCisgICAgICAgIGtDb2xvckZvcm1h
dHMucHVzaF9iYWNrKEdMX1JHQjU2NSk7CisgICAgfQorICAgIGVsc2UKKyAgICB7CisgICAgICAg
IC8vIFVzZSB0aGUgVktfR09PR0xFX3N1cmZhY2VsZXNzX3F1ZXJ5IGV4dGVuc2lvbiB0byBxdWVy
eSB0aGUgYXZhaWxhYmxlIGZvcm1hdHMgYW5kCisgICAgICAgIC8vIGNvbG9yc3BhY2VzIGJ5IHVz
aW5nIGEgVktfTlVMTF9IQU5ETEUgZm9yIHRoZSBWa1N1cmZhY2VLSFIgaGFuZGxlLgorICAgICAg
ICBWa1BoeXNpY2FsRGV2aWNlIHBoeXNpY2FsRGV2aWNlICAgICAgICAgICAgICA9IG1SZW5kZXJl
ci0+Z2V0UGh5c2ljYWxEZXZpY2UoKTsKKyAgICAgICAgVmtQaHlzaWNhbERldmljZVN1cmZhY2VJ
bmZvMktIUiBzdXJmYWNlSW5mbzIgPSB7fTsKKyAgICAgICAgc3VyZmFjZUluZm8yLnNUeXBlICAg
ICAgICAgID0gVktfU1RSVUNUVVJFX1RZUEVfUEhZU0lDQUxfREVWSUNFX1NVUkZBQ0VfSU5GT18y
X0tIUjsKKyAgICAgICAgc3VyZmFjZUluZm8yLnN1cmZhY2UgICAgICAgID0gVktfTlVMTF9IQU5E
TEU7CisgICAgICAgIHVpbnQzMl90IHN1cmZhY2VGb3JtYXRDb3VudCA9IDA7CisKKyAgICAgICAg
VmtSZXN1bHQgcmVzdWx0ID0gdmtHZXRQaHlzaWNhbERldmljZVN1cmZhY2VGb3JtYXRzMktIUihw
aHlzaWNhbERldmljZSwgJnN1cmZhY2VJbmZvMiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmc3VyZmFjZUZvcm1hdENvdW50
LCBudWxscHRyKTsKKyAgICAgICAgaWYgKHJlc3VsdCAhPSBWS19TVUNDRVNTKQorICAgICAgICB7
CisgICAgICAgICAgICByZXR1cm4gZWdsOjpDb25maWdTZXQoKTsKKyAgICAgICAgfQorICAgICAg
ICBzdGQ6OnZlY3RvcjxWa1N1cmZhY2VGb3JtYXQyS0hSPiBzdXJmYWNlRm9ybWF0czIoc3VyZmFj
ZUZvcm1hdENvdW50KTsKKyAgICAgICAgZm9yIChWa1N1cmZhY2VGb3JtYXQyS0hSICZzdXJmYWNl
Rm9ybWF0MiA6IHN1cmZhY2VGb3JtYXRzMikKKyAgICAgICAgeworICAgICAgICAgICAgc3VyZmFj
ZUZvcm1hdDIuc1R5cGUgPSBWS19TVFJVQ1RVUkVfVFlQRV9TVVJGQUNFX0ZPUk1BVF8yX0tIUjsK
KyAgICAgICAgfQorICAgICAgICByZXN1bHQgPSB2a0dldFBoeXNpY2FsRGV2aWNlU3VyZmFjZUZv
cm1hdHMyS0hSKHBoeXNpY2FsRGV2aWNlLCAmc3VyZmFjZUluZm8yLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZzdXJmYWNlRm9ybWF0Q291
bnQsIHN1cmZhY2VGb3JtYXRzMi5kYXRhKCkpOworICAgICAgICBpZiAocmVzdWx0ICE9IFZLX1NV
Q0NFU1MpCisgICAgICAgIHsKKyAgICAgICAgICAgIHJldHVybiBlZ2w6OkNvbmZpZ1NldCgpOwor
ICAgICAgICB9CisKKyAgICAgICAgZm9yIChjb25zdCBWa1N1cmZhY2VGb3JtYXQyS0hSICZzdXJm
YWNlRm9ybWF0MiA6IHN1cmZhY2VGb3JtYXRzMikKKyAgICAgICAgeworICAgICAgICAgICAgLy8g
TmVlZCB0byBjb252ZXJ0IGVhY2ggVnVsa2FuIFZrRm9ybWF0IGludG8gaXRzIEdMRVMgZXF1aXZh
bGVudCBhbmQKKyAgICAgICAgICAgIC8vIGFkZCBmb3JtYXRzIGluIGtEZXNpcmVkQ29sb3JGb3Jt
YXRzLgorICAgICAgICAgICAgYW5nbGU6OkZvcm1hdElEIGFuZ2xlRm9ybWF0SUQgPQorICAgICAg
ICAgICAgICAgIHZrOjpHZXRGb3JtYXRJREZyb21Wa0Zvcm1hdChzdXJmYWNlRm9ybWF0Mi5zdXJm
YWNlRm9ybWF0LmZvcm1hdCk7CisgICAgICAgICAgICBjb25zdCBhbmdsZTo6Rm9ybWF0ICZhbmds
ZUZvcm1hdCA9IGFuZ2xlOjpGb3JtYXQ6OkdldChhbmdsZUZvcm1hdElEKTsKKyAgICAgICAgICAg
IEdMZW51bSBnbEZvcm1hdCAgICAgICAgICAgICAgICAgID0gYW5nbGVGb3JtYXQuZ2xJbnRlcm5h
bEZvcm1hdDsKKworICAgICAgICAgICAgaWYgKHN0ZDo6ZmluZChrRGVzaXJlZENvbG9yRm9ybWF0
cy5iZWdpbigpLCBrRGVzaXJlZENvbG9yRm9ybWF0cy5lbmQoKSwgZ2xGb3JtYXQpICE9CisgICAg
ICAgICAgICAgICAga0Rlc2lyZWRDb2xvckZvcm1hdHMuZW5kKCkpCisgICAgICAgICAgICB7Cisg
ICAgICAgICAgICAgICAga0NvbG9yRm9ybWF0cy5wdXNoX2JhY2soZ2xGb3JtYXQpOworICAgICAg
ICAgICAgfQorICAgICAgICB9CisgICAgfQogCiAgICAgc3RkOjp2ZWN0b3I8R0xlbnVtPiBkZXB0
aFN0ZW5jaWxGb3JtYXRzKAogICAgICAgICBlZ2xfdms6OmtDb25maWdEZXB0aFN0ZW5jaWxGb3Jt
YXRzLApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3Jl
bmRlcmVyL3Z1bGthbi9kb2MvU2hhZGVyTW9kdWxlQ29tcGlsYXRpb24ubWQgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL2RvYy9TaGFkZXJNb2R1
bGVDb21waWxhdGlvbi5tZAppbmRleCBkNGUzYjhmZGE5NWU4YmQwNzg2Y2I5ZjI5MGJmZTM2Mzlj
NGY0ZDkyLi40MTUyZjcwOWMxMjczZWNjNDIxMjUzNGQ0OWU0MzVjM2QxNTg5NzhlIDEwMDY0NAot
LS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2Fu
L2RvYy9TaGFkZXJNb2R1bGVDb21waWxhdGlvbi5tZAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL2RvYy9TaGFkZXJNb2R1bGVDb21waWxh
dGlvbi5tZApAQCAtNCwzNCArNCwzNSBAQCBBTkdMRSBjb252ZXJ0cyBhcHBsaWNhdGlvbiBzaGFk
ZXJzIGludG8gVnVsa2FuIFtWa1NoYWRlck1vZHVsZXNdW1ZrU2hhZGVyTW9kdWxlXQogb2Ygc3Rl
cHM6CiAKIDEuICoqQU5HTEUgSW50ZXJuYWwgVHJhbnNsYXRpb24qKjogVGhlIGluaXRpYWwgY2Fs
bHMgdG8gYGdsQ29tcGlsZVNoYWRlcmAgYXJlIHBhc3NlZCB0byB0aGUgW0FOR0xFCi1zaGFkZXIg
dHJhbnNsYXRvcl1bdHJhbnNsYXRvcl0uIFRoZSB0cmFuc2xhdG9yIGNvbXBpbGVzIGFwcGxpY2F0
aW9uIHNoYWRlcnMgaW50byBWdWxrYW4tY29tcGF0aWJsZQotR0xTTC4gVnVsa2FuLWNvbXBhdGli
bGUgR0xTTCBtYXRjaGVzIHRoZSBbR0xfS0hSX3Z1bGthbl9nbHNsXVtHTF9LSFJfdnVsa2FuX2ds
c2xdIGV4dGVuc2lvbiBzcGVjCi13aXRoIHNvbWUgYWRkaXRpb25hbCB3b3JrYXJvdW5kcyBhbmQg
ZW11bGF0aW9uLiBXZSBlbXVsYXRlIE9wZW5HTCdzIGRpZmZlcmVudCBkZXB0aCByYW5nZSwgdmll
d3BvcnQKLXkgZmxpcHBpbmcsIGRlZmF1bHQgdW5pZm9ybXMsIGFuZCBPcGVuR0wKLVtsaW5lIHNl
Z21lbnQgcmFzdGVyaXphdGlvbl0oT3BlbkdMTGluZVNlZ21lbnRSYXN0ZXJpemF0aW9uLm1kKS4g
Rm9yIG1vcmUgaW5mbyBzZWUKLVtUcmFuc2xhdG9yVnVsa2FuLmNwcF1bVHJhbnNsYXRvclZ1bGth
bi5jcHBdLiBBZnRlciBpbml0aWFsIGNvbXBpbGF0aW9uIHRoZSBzaGFkZXJzIGFyZSBub3QKK3No
YWRlciB0cmFuc2xhdG9yXVt0cmFuc2xhdG9yXS4gVGhlIHRyYW5zbGF0b3IgY29tcGlsZXMgYXBw
bGljYXRpb24gc2hhZGVycyBpbnRvIFNQSVItViwgYWZ0ZXIKK3RyYW5zZm9ybWluZyBHTFNMIHRv
IGNvbmZvcm0gdG8gdGhlIFtHTF9LSFJfdnVsa2FuX2dsc2xdW0dMX0tIUl92dWxrYW5fZ2xzbF0g
ZXh0ZW5zaW9uIHNwZWMgd2l0aAorc29tZSBhZGRpdGlvbmFsIHdvcmthcm91bmRzIGFuZCBlbXVs
YXRpb24uIFdlIGVtdWxhdGUgT3BlbkdMJ3MgZGlmZmVyZW50IGRlcHRoIHJhbmdlLCB2aWV3cG9y
dCB5CitmbGlwcGluZywgZGVmYXVsdCB1bmlmb3JtcywgYW5kIE9wZW5HTAorW2xpbmUgc2VnbWVu
dCByYXN0ZXJpemF0aW9uXShPcGVuR0xMaW5lU2VnbWVudFJhc3Rlcml6YXRpb24ubWQpIGFtb25n
IG90aGVycy4gRm9yIG1vcmUgaW5mbyBzZWUKK1tUcmFuc2xhdG9yVnVsa2FuLmNwcF1bVHJhbnNs
YXRvclZ1bGthbi5jcHBdLiBBZnRlciBpbml0aWFsIGNvbXBpbGF0aW9uLCB0aGUgU1BJUi1WIGJs
b2JzIGFyZSBub3QKIGNvbXBsZXRlLiBUaGUgdHJhbnNsYXRvciBpbml0aWFsbHkgYXNzaWducyBy
ZXNvdXJjZXMgYW5kIGluL291dCB2YXJpYWJsZXMgYXJiaXRyYXJ5IGRlc2NyaXB0b3Igc2V0LAog
YmluZGluZyBhbmQgbG9jYXRpb24gaW5kaWNlcy4gVGhlIGNvcnJlY3QgdmFsdWVzIGFyZSBkZXRl
cm1pbmVkIGF0IGxpbmsgdGltZS4gRm9yIHRoZSBzYWtlIG9mCi10cmFuc2Zvcm0gZmVlZGJhY2ss
IHNvbWUgbWFya2VycyBhcmUgbGVmdCBpbiB0aGUgc2hhZGVyIGZvciBsaW5rLXRpbWUgc3Vic3Rp
dHV0aW9uLgordHJhbnNmb3JtIGZlZWRiYWNrLCBzb21lIGFkZGl0aW9uYWwgY29kZSBpcyBnZW5l
cmF0ZWQgdG8gYmUgcmVtb3ZlZCBvciBtb2RpZmllZCBkdXJpbmcgU1BJUi1WCit0cmFuc2Zvcm1h
dGlvbi4KIAotICBUaGUgdHJhbnNsYXRvciBvdXRwdXRzIHNvbWUgZmVhdHVyZSBjb2RlIGNvbmRp
dGlvbmFsIHRvIFZ1bGthbiBzcGVjaWFsaXphdGlvbiBjb25zdGFudHMsIHdoaWNoIGFyZQorICAg
VGhlIHRyYW5zbGF0b3Igb3V0cHV0cyBzb21lIGZlYXR1cmUgY29kZSBjb25kaXRpb25hbCB0byBW
dWxrYW4gc3BlY2lhbGl6YXRpb24gY29uc3RhbnRzLCB3aGljaCBhcmUKIHJlc29sdmVkIGF0IGRy
YXctdGltZS4gRm9yIGV4YW1wbGUsCiBbQnJlc2VuaGFtIGxpbmUgcmFzdGVyaXphdGlvbl0oT3Bl
bkdMTGluZVNlZ21lbnRSYXN0ZXJpemF0aW9uLm1kKSBlbXVsYXRpb24uCiAKLTEuICoqTGluay1U
aW1lIENvbXBpbGF0aW9uIGFuZCBUcmFuc2Zvcm1hdGlvbioqOiBEdXJpbmcgYSBjYWxsIHRvIGBn
bExpbmtQcm9ncmFtYCB0aGUgVnVsa2FuCi1iYWNrLWVuZCBjYW4ga25vdyB0aGUgbmVjZXNzYXJ5
IGxvY2F0aW9ucyBhbmQgcHJvcGVydGllcyB0byB3cml0ZSB0byBjb25uZWN0IHRoZSBzaGFkZXIg
c3RhZ2UKLWludGVyZmFjZXMuIFdlIGdldCB0aGUgY29tcGxldGVkIHNoYWRlciBzb3VyY2UgdXNp
bmcgQU5HTEUncwotW0dsc2xhbmdXcmFwcGVyVmtdW0dsc2xhbmdXcmFwcGVyVmsuY3BwXSBoZWxw
ZXIgY2xhc3MuIEF0IHRoaXMgdGltZSwgd2UgdXNlIEtocm9ub3MnCi1bZ2xzbGFuZ11bZ2xzbGFu
Z10gdG8gY29udmVydCB0aGUgVnVsa2FuLWNvbXBhdGlibGUgR0xTTCBpbnRvIFNQSVItVi4gQSB0
cmFuc2Zvcm1hdGlvbiBwYXNzIGlzIGRvbmUKLW9uIHRoZSBnZW5lcmF0ZWQgU1BJUi1WIHRvIHVw
ZGF0ZSB0aGUgYXJiaXRyYXJ5IGRlc2NyaXB0b3Igc2V0LCBiaW5kaW5nIGFuZCBsb2NhdGlvbiBp
bmRpY2VzIHNldCBpbgotc3RlcCAxLiBBZGRpdGlvbmFsbHksIGNvbXBvbmVudCBhbmQgdmFyaW91
cyB0cmFuc2Zvcm0gZmVlZGJhY2sgZGVjb3JhdGlvbnMgYXJlIGFkZGVkIGFuZCBpbmFjdGl2ZQot
dmFyeWluZ3MgYXJlIHJlbW92ZWQgZnJvbSB0aGUgc2hhZGVyIGludGVyZmFjZS4gV2UgY3VycmVu
dGx5IGRvbid0IGdlbmVyYXRlIGBWa1NoYWRlck1vZHVsZXNgIGF0Ci10aGlzIHRpbWUsIGJ1dCB0
aGF0IGNvdWxkIGJlIGEgZnV0dXJlIG9wdGltaXphdGlvbi4KLQotMS4gKipEcmF3LXRpbWUgUGlw
ZWxpbmUgQ3JlYXRpb24qKjogT25jZSB0aGUgYXBwbGljYXRpb24gcmVjb3JkcyBhIGRyYXcgY2Fs
bCwgdGhlIFNQSVItViBpcyBjb21waWxlZAotaW50byBgVmtTaGFkZXJNb2R1bGVgcy4gVGhlIGFw
cHJvcHJpYXRlIHNwZWNpYWxpemF0aW9uIGNvbnN0YW50cyBhcmUgdGhlbiByZXNvbHZlZCBhbmQg
dGhlCi1gVmtQaXBlbGluZWAgb2JqZWN0IGlzIGNyZWF0ZWQuICBOb3RlIHRoYXQgd2UgY3VycmVu
dGx5IGRvbid0IHVzZSBbU1BJUlYtVG9vbHNdW1NQSVJWLVRvb2xzXSB0bwotcGVyZm9ybSBhbnkg
U1BJUi1WIG9wdGltaXphdGlvbi4gVGhpcyBjb3VsZCBiZSBzb21ldGhpbmcgdG8gaW1wcm92ZSBv
biBpbiB0aGUgZnV0dXJlLgorMS4gKipMaW5rIFRpbWUqKjogRHVyaW5nIGEgY2FsbCB0byBgZ2xM
aW5rUHJvZ3JhbWAgdGhlIFZ1bGthbiBiYWNrLWVuZCBjYW4ga25vdyB0aGUgbmVjZXNzYXJ5Cits
b2NhdGlvbnMgYW5kIHByb3BlcnRpZXMgdG8gd3JpdGUgdG8gY29ubmVjdCB0aGUgc2hhZGVyIHN0
YWdlIGludGVyZmFjZXMuIEhvd2V2ZXIsIHNvbWUgZHJhdy10aW1lCitpbmZvcm1hdGlvbiBpcyBz
dGlsbCBuZWNlc3NhcnkgdG8gZmluYWxpemUgdGhlIFNQSVItVjsgZm9yIGV4YW1wbGUgd2hldGhl
ciAiZWFybHkgZnJhZ21lbnQgdGVzdHMiCitjYW4gYmUgZW5hYmxlZC4gQXMgYW4gb3B0aW1pemF0
aW9uLCB0aGUgU1BJUi1WIGlzIHRyYW5zZm9ybWVkIHdpdGggYXJiaXRyYXJ5IHNldHRpbmdzIGFu
ZCBhIFZ1bGthbgorcGlwZWxpbmUgb2JqZWN0IGlzIGNyZWF0ZWQgaW4gYW4gYXR0ZW1wdCB0byB3
YXJtIHRoZSBWdWxrYW4gcGlwZWxpbmUgY2FjaGUuCisKKzEuICoqRHJhdy1UaW1lIFNQSVItViBU
cmFuc2Zvcm1hdGlvbiBhbmQgUGlwZWxpbmUgQ3JlYXRpb24qKjogT25jZSB0aGUgYXBwbGljYXRp
b24gcmVjb3JkcyBhIGRyYXcKK2NhbGwsIGEgdHJhbnNmb3JtYXRpb24gcGFzcyBpcyBkb25lIG9u
IHRoZSBnZW5lcmF0ZWQgU1BJUi1WIHRvIHVwZGF0ZSB0aGUgYXJiaXRyYXJ5IGRlc2NyaXB0b3Ig
c2V0LAorYmluZGluZyBhbmQgbG9jYXRpb24gaW5kaWNlcyBzZXQgaW4gc3RlcCAxLiBBZGRpdGlv
bmFsbHksIGNvbXBvbmVudCBhbmQgdmFyaW91cyB0cmFuc2Zvcm0gZmVlZGJhY2sKK2RlY29yYXRp
b25zIGFyZSBhZGRlZCwgaW5hY3RpdmUgdmFyeWluZ3MgYXJlIHJlbW92ZWQsIGVhcmx5IGZyYWdt
ZW50IHRlc3RzIGFyZSBlbmFibGVkIG9yIGRpc2FibGVkLAorZGVidWcgaW5mbyBpcyByZW1vdmVk
IGFuZCBwcmUtcm90YXRpb24gaXMgYXBwbGllZC4gQXQgdGhpcyB0aW1lLCBgVmtTaGFkZXJNb2R1
bGVgcyBhcmUgY3JlYXRlZCAoYW5kCitjYWNoZWQpLiBUaGUgYXBwcm9wcmlhdGUgc3BlY2lhbGl6
YXRpb24gY29uc3RhbnRzIGFyZSB0aGVuIHJlc29sdmVkIGFuZCB0aGUgYFZrUGlwZWxpbmVgIG9i
amVjdCBpcworY3JlYXRlZC4gIE5vdGUgdGhhdCB3ZSBjdXJyZW50bHkgZG9uJ3QgdXNlIFtTUElS
Vi1Ub29sc11bU1BJUlYtVG9vbHNdIHRvIHBlcmZvcm0gYW55IFNQSVItVgorb3B0aW1pemF0aW9u
LiBUaGlzIGNvdWxkIGJlIHNvbWV0aGluZyB0byBpbXByb3ZlIG9uIGluIHRoZSBmdXR1cmUuCiAK
IFNlZSB0aGUgYmVsb3cgZGlhZ3JhbSBmb3IgYSBoaWdoLWxldmVsIHZpZXcgb2YgdGhlIHNoYWRl
ciB0cmFuc2xhdGlvbiBmbG93OgogCkBAIC00MSwxNSArNDIsMTQgQEAgcGFydGljaXBhbnQgQXBw
CiBwYXJ0aWNpcGFudCAiQU5HTEUgRnJvbnQtZW5kIgogcGFydGljaXBhbnQgIlZ1bGthbiBCYWNr
LWVuZCIKIHBhcnRpY2lwYW50ICJBTkdMRSBUcmFuc2xhdG9yIgotcGFydGljaXBhbnQgIkdsc2xh
bmdXcmFwcGVyVmsiCi1wYXJ0aWNpcGFudCAiR2xzbGFuZyIKK3BhcnRpY2lwYW50ICJMaW5rLVRp
bWUgU1BJUi1WIFRyYW5zZm9ybWVyIgogCiBBcHAtPiJBTkdMRSBGcm9udC1lbmQiOiBnbENvbXBp
bGVTaGFkZXIgKFZTKQogIkFOR0xFIEZyb250LWVuZCItPiJWdWxrYW4gQmFjay1lbmQiOiBTaGFk
ZXJWazo6Y29tcGlsZQogIlZ1bGthbiBCYWNrLWVuZCItPiJBTkdMRSBUcmFuc2xhdG9yIjogc2g6
OkNvbXBpbGUKLSJBTkdMRSBUcmFuc2xhdG9yIi0gLT4iQU5HTEUgRnJvbnQtZW5kIjogcmV0dXJu
IFZ1bGthbi1jb21wYXRpYmxlIEdMU0wKKyJBTkdMRSBUcmFuc2xhdG9yIi0gLT4iQU5HTEUgRnJv
bnQtZW5kIjogcmV0dXJuIFNQSVItVgogCi1Ob3RlIHJpZ2h0IG9mICJBTkdMRSBGcm9udC1lbmQi
OiBTb3VyY2UgaXMgdXNpbmcgYm9ndXNcblZ1bGthbiBxdWFsaWZpZXJzIHRvIGJlXG5jb3JyZWN0
ZWQgYXQgbGluayB0aW1lLgorTm90ZSByaWdodCBvZiAiQU5HTEUgRnJvbnQtZW5kIjogU1BJUi1W
IGlzIHVzaW5nIGJvZ3VzXG5kZWNvcmF0aW9ucyB0byBiZVxuY29ycmVjdGVkIGF0IGxpbmsgdGlt
ZS4KIAogTm90ZSByaWdodCBvZiBBcHA6IFNhbWUgZm9yIEZTLCBHUywgZXRjLi4uCiAKQEAgLTYw
LDEzICs2MCw4IEBAIEFwcC0+IkFOR0xFIEZyb250LWVuZCI6IGdsTGlua1Byb2dyYW0KIAogTm90
ZSByaWdodCBvZiAiVnVsa2FuIEJhY2stZW5kIjogUHJvZ3JhbVZrIGluaXRzIHVuaWZvcm1zLFxu
bGF5b3V0cywgYW5kIGRlc2NyaXB0b3JzLgogCi0iVnVsa2FuIEJhY2stZW5kIi0+R2xzbGFuZ1dy
YXBwZXJWazogR2xzbGFuZ1dyYXBwZXJWazo6R2V0U2hhZGVyU3BpcnZDb2RlCi1HbHNsYW5nV3Jh
cHBlclZrLT5HbHNsYW5nOiBHbHNsYW5nVG9TcHYKLUdsc2xhbmctIC0+R2xzbGFuZ1dyYXBwZXJW
azogUmV0dXJuIFNQSVItVgotCi1Ob3RlIHJpZ2h0IG9mIEdsc2xhbmdXcmFwcGVyVms6IFRyYW5z
Zm9ybSBTUElSLVYKLQotR2xzbGFuZ1dyYXBwZXJWay0gLT4iVnVsa2FuIEJhY2stZW5kIjogcmV0
dXJuIHRyYW5zZm9ybWVkIFNQSVItVgorIlZ1bGthbiBCYWNrLWVuZCItPiJMaW5rLVRpbWUgU1BJ
Ui1WIFRyYW5zZm9ybWVyIjogR2xzbGFuZ1dyYXBwZXJWazo6R2V0U2hhZGVyQ29kZQorIkxpbmst
VGltZSBTUElSLVYgVHJhbnNmb3JtZXIiLSAtPiJWdWxrYW4gQmFjay1lbmQiOiByZXRyaWV2ZSBT
UElSLVYgYW5kIGRldGVybWluZSBkZWNvcmF0aW9ucwogIlZ1bGthbiBCYWNrLWVuZCItIC0+IkFO
R0xFIEZyb250LWVuZCI6IHJldHVybiBzdWNjZXNzCiAKIE5vdGUgcmlnaHQgb2YgQXBwOiBBcHAg
ZXhlY3V0aW9uIGNvbnRpbnVlcy4uLgpAQCAtNzQsNiArNjksOSBAQCBOb3RlIHJpZ2h0IG9mIEFw
cDogQXBwIGV4ZWN1dGlvbiBjb250aW51ZXMuLi4KIEFwcC0+IkFOR0xFIEZyb250LWVuZCI6IGds
RHJhd0FycmF5cyAoYW55IGRyYXcpCiAiQU5HTEUgRnJvbnQtZW5kIi0+IlZ1bGthbiBCYWNrLWVu
ZCI6IENvbnRleHRWazo6ZHJhd0FycmF5cwogCisiVnVsa2FuIEJhY2stZW5kIi0+IkxpbmstVGlt
ZSBTUElSLVYgVHJhbnNmb3JtZXIiOiBHbHNsYW5nV3JhcHBlclZrOjpUcmFuc2Zvcm1TcGlyVgor
IkxpbmstVGltZSBTUElSLVYgVHJhbnNmb3JtZXIiLSAtPiJWdWxrYW4gQmFjay1lbmQiOiByZXR1
cm4gdHJhbnNmb3JtZWQgU1BJUi1WCisKIE5vdGUgcmlnaHQgb2YgIlZ1bGthbiBCYWNrLWVuZCI6
IFdlIGluaXQgVmtTaGFkZXJNb2R1bGVzXG5hbmQgVmtQaXBlbGluZSB0aGVuXG5yZWNvcmQgdGhl
IGRyYXcuCiAKICJWdWxrYW4gQmFjay1lbmQiLSAtPiJBTkdMRSBGcm9udC1lbmQiOiByZXR1cm4g
c3VjY2VzcwpAQCAtODIsNyArODAsNiBAQCBOb3RlIHJpZ2h0IG9mICJWdWxrYW4gQmFjay1lbmQi
OiBXZSBpbml0IFZrU2hhZGVyTW9kdWxlc1xuYW5kIFZrUGlwZWxpbmUgdGhlblxucgogIVtWdWxr
YW4gU2hhZGVyIFRyYW5zbGF0aW9uIEZsb3ddKGh0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50
LmNvbS9nb29nbGUvYW5nbGUvbWFpbi9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL2RvYy9p
bWcvVnVsa2FuU2hhZGVyVHJhbnNsYXRpb24uc3ZnP3Nhbml0aXplPXRydWUpCiAKIFtHTF9LSFJf
dnVsa2FuX2dsc2xdOiBodHRwczovL2dpdGh1Yi5jb20vS2hyb25vc0dyb3VwL0dMU0wvYmxvYi9t
YWluL2V4dGVuc2lvbnMva2hyL0dMX0tIUl92dWxrYW5fZ2xzbC50eHQKLVtnbHNsYW5nXTogaHR0
cHM6Ly9naXRodWIuY29tL0tocm9ub3NHcm91cC9nbHNsYW5nCiBbR2xzbGFuZ1dyYXBwZXJWay5j
cHBdOiBodHRwczovL2Nocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vYW5nbGUvYW5nbGUvKy9yZWZz
L2hlYWRzL21haW4vc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9HbHNsYW5nV3JhcHBlclZr
LmNwcAogW1NQSVJWLVRvb2xzXTogaHR0cHM6Ly9naXRodWIuY29tL0tocm9ub3NHcm91cC9TUElS
Vi1Ub29scwogW3RyYW5zbGF0b3JdOiBodHRwczovL2Nocm9taXVtLmdvb2dsZXNvdXJjZS5jb20v
YW5nbGUvYW5nbGUvKy9yZWZzL2hlYWRzL21haW4vc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIv
dnVsa2FuL2RvYy9pbWcvVnVsa2FuU2hhZGVyVHJhbnNsYXRpb24uc3ZnIGIvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9kb2MvaW1nL1Z1bGthblNo
YWRlclRyYW5zbGF0aW9uLnN2ZwppbmRleCAxMDc1NjViYjUxNzAxODIyOWU5MGMyYzk1NDQ4ZmE0
MzQ0MTg1MzU0Li4xOTk3ZjgyNTcxMjY4YzAyNTBmMGZhZDJlMDM5YTUwMmZiMzVjODY1IDEwMDY0
NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVs
a2FuL2RvYy9pbWcvVnVsa2FuU2hhZGVyVHJhbnNsYXRpb24uc3ZnCisrKyBiL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vZG9jL2ltZy9WdWxrYW5T
aGFkZXJUcmFuc2xhdGlvbi5zdmcKQEAgLTEsMTYgKzEsMTUgQEAKLTw/eG1sIHZlcnNpb249IjEu
MCIgZW5jb2Rpbmc9InV0Zi04IiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElD
ICItLy9XM0MvL0RURCBTVkcgMjAwMTA5MDQvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvMjAw
MS9SRUMtU1ZHLTIwMDEwOTA0L0RURC9zdmcxMC5kdGQiPjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cu
dzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iMTM3MCIgaGVpZ2h0PSIxMTUyIiB4bWxuczp4bGluaz0i
aHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+PHNvdXJjZT48IVtDREFUQVtwYXJ0aWNpcGFu
dCBBcHAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9InV0Zi04IiBzdGFuZGFsb25lPSJu
byI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMjAwMTA5MDQvL0VOIiAi
aHR0cDovL3d3dy53My5vcmcvVFIvMjAwMS9SRUMtU1ZHLTIwMDEwOTA0L0RURC9zdmcxMC5kdGQi
PjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iMTMyMCIgaGVp
Z2h0PSIxMDkxIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+PHNv
dXJjZT48IVtDREFUQVtwYXJ0aWNpcGFudCBBcHAKIHBhcnRpY2lwYW50ICJBTkdMRSBGcm9udC1l
bmQiCiBwYXJ0aWNpcGFudCAiVnVsa2FuIEJhY2stZW5kIgogcGFydGljaXBhbnQgIkFOR0xFIFRy
YW5zbGF0b3IiCi1wYXJ0aWNpcGFudCAiR2xzbGFuZ1dyYXBwZXJWayIKLXBhcnRpY2lwYW50ICJH
bHNsYW5nIgorcGFydGljaXBhbnQgIkxpbmstVGltZSBTUElSLVYgVHJhbnNmb3JtZXIiCiAKIEFw
cC0+IkFOR0xFIEZyb250LWVuZCI6IGdsQ29tcGlsZVNoYWRlciAoVlMpCiAiQU5HTEUgRnJvbnQt
ZW5kIi0+IlZ1bGthbiBCYWNrLWVuZCI6IFNoYWRlclZrOjpjb21waWxlCiAiVnVsa2FuIEJhY2st
ZW5kIi0+IkFOR0xFIFRyYW5zbGF0b3IiOiBzaDo6Q29tcGlsZQotIkFOR0xFIFRyYW5zbGF0b3Ii
LS0+IkFOR0xFIEZyb250LWVuZCI6IHJldHVybiBWdWxrYW4tY29tcGF0aWJsZSBHTFNMCisiQU5H
TEUgVHJhbnNsYXRvciItLT4iQU5HTEUgRnJvbnQtZW5kIjogcmV0dXJuIFNQSVItVgogCi1Ob3Rl
IHJpZ2h0IG9mICJBTkdMRSBGcm9udC1lbmQiOiBTb3VyY2UgaXMgdXNpbmcgYm9ndXNcblZ1bGth
biBxdWFsaWZpZXJzIHRvIGJlXG5jb3JyZWN0ZWQgYXQgbGluayB0aW1lLgorTm90ZSByaWdodCBv
ZiAiQU5HTEUgRnJvbnQtZW5kIjogU1BJUi1WIGlzIHVzaW5nIGJvZ3VzXG5kZWNvcmF0aW9ucyB0
byBiZVxuY29ycmVjdGVkIGF0IGxpbmsgdGltZS4KIAogTm90ZSByaWdodCBvZiBBcHA6IFNhbWUg
Zm9yIEZTLCBHUywgZXRjLi4uCiAKQEAgLTIxLDEzICsyMCw4IEBAIEFwcC0+IkFOR0xFIEZyb250
LWVuZCI6IGdsTGlua1Byb2dyYW0KIAogTm90ZSByaWdodCBvZiAiVnVsa2FuIEJhY2stZW5kIjog
UHJvZ3JhbVZrIGluaXRzIHVuaWZvcm1zLFxubGF5b3V0cywgYW5kIGRlc2NyaXB0b3JzLgogCi0i
VnVsa2FuIEJhY2stZW5kIi0+R2xzbGFuZ1dyYXBwZXJWazogR2xzbGFuZ1dyYXBwZXJWazo6R2V0
U2hhZGVyU3BpcnZDb2RlCi1HbHNsYW5nV3JhcHBlclZrLT5HbHNsYW5nOiBHbHNsYW5nVG9TcHYK
LUdsc2xhbmctLT5HbHNsYW5nV3JhcHBlclZrOiBSZXR1cm4gU1BJUi1WCi0KLU5vdGUgcmlnaHQg
b2YgR2xzbGFuZ1dyYXBwZXJWazogVHJhbnNmb3JtIFNQSVItVgotCi1HbHNsYW5nV3JhcHBlclZr
LS0+IlZ1bGthbiBCYWNrLWVuZCI6IHJldHVybiB0cmFuc2Zvcm1lZCBTUElSLVYKKyJWdWxrYW4g
QmFjay1lbmQiLT4iTGluay1UaW1lIFNQSVItViBUcmFuc2Zvcm1lciI6IEdsc2xhbmdXcmFwcGVy
Vms6OkdldFNoYWRlckNvZGUKKyJMaW5rLVRpbWUgU1BJUi1WIFRyYW5zZm9ybWVyIi0tPiJWdWxr
YW4gQmFjay1lbmQiOiByZXRyaWV2ZSBTUElSLVYgYW5kIGRldGVybWluZSBkZWNvcmF0aW9ucwog
IlZ1bGthbiBCYWNrLWVuZCItLT4iQU5HTEUgRnJvbnQtZW5kIjogcmV0dXJuIHN1Y2Nlc3MKIAog
Tm90ZSByaWdodCBvZiBBcHA6IEFwcCBleGVjdXRpb24gY29udGludWVzLi4uCkBAIC0zNSw3ICsy
OSwxMCBAQCBOb3RlIHJpZ2h0IG9mIEFwcDogQXBwIGV4ZWN1dGlvbiBjb250aW51ZXMuLi4KIEFw
cC0+IkFOR0xFIEZyb250LWVuZCI6IGdsRHJhd0FycmF5cyAoYW55IGRyYXcpCiAiQU5HTEUgRnJv
bnQtZW5kIi0+IlZ1bGthbiBCYWNrLWVuZCI6IENvbnRleHRWazo6ZHJhd0FycmF5cwogCisiVnVs
a2FuIEJhY2stZW5kIi0+IkxpbmstVGltZSBTUElSLVYgVHJhbnNmb3JtZXIiOiBHbHNsYW5nV3Jh
cHBlclZrOjpUcmFuc2Zvcm1TcGlyVgorIkxpbmstVGltZSBTUElSLVYgVHJhbnNmb3JtZXIiLS0+
IlZ1bGthbiBCYWNrLWVuZCI6IHJldHVybiB0cmFuc2Zvcm1lZCBTUElSLVYKKwogTm90ZSByaWdo
dCBvZiAiVnVsa2FuIEJhY2stZW5kIjogV2UgaW5pdCBWa1NoYWRlck1vZHVsZXNcbmFuZCBWa1Bp
cGVsaW5lIHRoZW5cbnJlY29yZCB0aGUgZHJhdy4KIAogIlZ1bGthbiBCYWNrLWVuZCItLT4iQU5H
TEUgRnJvbnQtZW5kIjogcmV0dXJuIHN1Y2Nlc3MKLV1dPjwvc291cmNlPjxkZXNjPjwvZGVzYz48
ZGVmcz48bWFya2VyIHZpZXdCb3g9IjAgMCA1IDUiIG1hcmtlcldpZHRoPSI1IiBtYXJrZXJIZWln
aHQ9IjUiIG9yaWVudD0iYXV0byIgcmVmWD0iNSIgcmVmWT0iMi41IiBpZD0ibWFya2VyQXJyb3dC
bG9jayI+PHBhdGggZD0iTSAwIDAgTCA1IDIuNSBMIDAgNSB6Ij48L3BhdGg+PC9tYXJrZXI+PG1h
cmtlciB2aWV3Qm94PSIwIDAgOS42IDE2IiBtYXJrZXJXaWR0aD0iNCIgbWFya2VySGVpZ2h0PSIx
NiIgb3JpZW50PSJhdXRvIiByZWZYPSI5LjYiIHJlZlk9IjgiIGlkPSJtYXJrZXJBcnJvd09wZW4i
PjxwYXRoIGQ9Ik0gOS42LDggMS45MiwxNiAwLDEzLjcgNS43Niw4IDAsMi4yODYgMS45MiwwIDku
Niw4IHoiPjwvcGF0aD48L21hcmtlcj48L2RlZnM+PGcgY2xhc3M9InRpdGxlIj48L2c+PGcgY2xh
c3M9ImFjdG9yIj48cmVjdCB4PSIxMCIgeT0iMjAiIHdpZHRoPSI0OC45MDYyNSIgaGVpZ2h0PSIz
OSIgc3Ryb2tlPSIjMDAwMDAwIiBmaWxsPSIjZmZmZmZmIiBzdHlsZT0ic3Ryb2tlLXdpZHRoOiAy
OyAtLWRhcmtyZWFkZXItaW5saW5lLWZpbGw6I2VhZTdlMTsgLS1kYXJrcmVhZGVyLWlubGluZS1z
dHJva2U6IzAwMDAwMDsiIGRhdGEtZGFya3JlYWRlci1pbmxpbmUtZmlsbD0iIiBkYXRhLWRhcmty
ZWFkZXItaW5saW5lLXN0cm9rZT0iIj48L3JlY3Q+PHRleHQgeD0iMjAiIHk9IjQ1IiBzdHlsZT0i
Zm9udC1zaXplOiAxNnB4OyBmb250LWZhbWlseTogJnF1b3Q7QW5kYWxlIE1vbm8mcXVvdDssIG1v
bm9zcGFjZTsiPjx0c3BhbiB4PSIyMCI+QXBwPC90c3Bhbj48L3RleHQ+PC9nPjxnIGNsYXNzPSJh
Y3RvciI+PHJlY3QgeD0iMTAiIHk9IjEwOTMuMDE1NjI1IiB3aWR0aD0iNDguOTA2MjUiIGhlaWdo
dD0iMzkiIHN0cm9rZT0iIzAwMDAwMCIgZmlsbD0iI2ZmZmZmZiIgc3R5bGU9InN0cm9rZS13aWR0
aDogMjsgLS1kYXJrcmVhZGVyLWlubGluZS1maWxsOiNlYWU3ZTE7IC0tZGFya3JlYWRlci1pbmxp
bmUtc3Ryb2tlOiMwMDAwMDA7IiBkYXRhLWRhcmtyZWFkZXItaW5saW5lLWZpbGw9IiIgZGF0YS1k
YXJrcmVhZGVyLWlubGluZS1zdHJva2U9IiI+PC9yZWN0Pjx0ZXh0IHg9IjIwIiB5PSIxMTE4LjAx
NTYyNSIgc3R5bGU9ImZvbnQtc2l6ZTogMTZweDsgZm9udC1mYW1pbHk6ICZxdW90O0FuZGFsZSBN
b25vJnF1b3Q7LCBtb25vc3BhY2U7Ij48dHNwYW4geD0iMjAiPkFwcDwvdHNwYW4+PC90ZXh0Pjwv
Zz48bGluZSB4MT0iMzQuNDUzMTI1IiB4Mj0iMzQuNDUzMTI1IiB5MT0iNTkiIHkyPSIxMDkzLjAx
NTYyNSIgc3Ryb2tlPSIjMDAwMDAwIiBmaWxsPSJub25lIiBzdHlsZT0ic3Ryb2tlLXdpZHRoOiAy
OyAtLWRhcmtyZWFkZXItaW5saW5lLWZpbGw6bm9uZTsgLS1kYXJrcmVhZGVyLWlubGluZS1zdHJv
a2U6IzAwMDAwMDsiIGRhdGEtZGFya3JlYWRlci1pbmxpbmUtZmlsbD0iIiBkYXRhLWRhcmtyZWFk
ZXItaW5saW5lLXN0cm9rZT0iIj48L2xpbmU+PGcgY2xhc3M9ImFjdG9yIj48cmVjdCB4PSIyNTIu
NjU2MjUiIHk9IjIwIiB3aWR0aD0iMTY0LjUiIGhlaWdodD0iMzkiIHN0cm9rZT0iIzAwMDAwMCIg
ZmlsbD0iI2ZmZmZmZiIgc3R5bGU9InN0cm9rZS13aWR0aDogMjsgLS1kYXJrcmVhZGVyLWlubGlu
ZS1maWxsOiNlYWU3ZTE7IC0tZGFya3JlYWRlci1pbmxpbmUtc3Ryb2tlOiMwMDAwMDA7IiBkYXRh
LWRhcmtyZWFkZXItaW5saW5lLWZpbGw9IiIgZGF0YS1kYXJrcmVhZGVyLWlubGluZS1zdHJva2U9
IiI+PC9yZWN0Pjx0ZXh0IHg9IjI2Mi42NTYyNSIgeT0iNDUiIHN0eWxlPSJmb250LXNpemU6IDE2
cHg7IGZvbnQtZmFtaWx5OiAmcXVvdDtBbmRhbGUgTW9ubyZxdW90OywgbW9ub3NwYWNlOyI+PHRz
cGFuIHg9IjI2Mi42NTYyNSI+QU5HTEUgRnJvbnQtZW5kPC90c3Bhbj48L3RleHQ+PC9nPjxnIGNs
YXNzPSJhY3RvciI+PHJlY3QgeD0iMjUyLjY1NjI1IiB5PSIxMDkzLjAxNTYyNSIgd2lkdGg9IjE2
NC41IiBoZWlnaHQ9IjM5IiBzdHJva2U9IiMwMDAwMDAiIGZpbGw9IiNmZmZmZmYiIHN0eWxlPSJz
dHJva2Utd2lkdGg6IDI7IC0tZGFya3JlYWRlci1pbmxpbmUtZmlsbDojZWFlN2UxOyAtLWRhcmty
ZWFkZXItaW5saW5lLXN0cm9rZTojMDAwMDAwOyIgZGF0YS1kYXJrcmVhZGVyLWlubGluZS1maWxs
PSIiIGRhdGEtZGFya3JlYWRlci1pbmxpbmUtc3Ryb2tlPSIiPjwvcmVjdD48dGV4dCB4PSIyNjIu
NjU2MjUiIHk9IjExMTguMDE1NjI1IiBzdHlsZT0iZm9udC1zaXplOiAxNnB4OyBmb250LWZhbWls
eTogJnF1b3Q7QW5kYWxlIE1vbm8mcXVvdDssIG1vbm9zcGFjZTsiPjx0c3BhbiB4PSIyNjIuNjU2
MjUiPkFOR0xFIEZyb250LWVuZDwvdHNwYW4+PC90ZXh0PjwvZz48bGluZSB4MT0iMzM0LjkwNjI1
IiB4Mj0iMzM0LjkwNjI1IiB5MT0iNTkiIHkyPSIxMDkzLjAxNTYyNSIgc3Ryb2tlPSIjMDAwMDAw
IiBmaWxsPSJub25lIiBzdHlsZT0ic3Ryb2tlLXdpZHRoOiAyOyAtLWRhcmtyZWFkZXItaW5saW5l
LWZpbGw6bm9uZTsgLS1kYXJrcmVhZGVyLWlubGluZS1zdHJva2U6IzAwMDAwMDsiIGRhdGEtZGFy
a3JlYWRlci1pbmxpbmUtZmlsbD0iIiBkYXRhLWRhcmtyZWFkZXItaW5saW5lLXN0cm9rZT0iIj48
L2xpbmU+PGcgY2xhc3M9ImFjdG9yIj48cmVjdCB4PSI1MjQuMjE4NzUiIHk9IjIwIiB3aWR0aD0i
MTY0LjUiIGhlaWdodD0iMzkiIHN0cm9rZT0iIzAwMDAwMCIgZmlsbD0iI2ZmZmZmZiIgc3R5bGU9
InN0cm9rZS13aWR0aDogMjsgLS1kYXJrcmVhZGVyLWlubGluZS1maWxsOiNlYWU3ZTE7IC0tZGFy
a3JlYWRlci1pbmxpbmUtc3Ryb2tlOiMwMDAwMDA7IiBkYXRhLWRhcmtyZWFkZXItaW5saW5lLWZp
bGw9IiIgZGF0YS1kYXJrcmVhZGVyLWlubGluZS1zdHJva2U9IiI+PC9yZWN0Pjx0ZXh0IHg9IjUz
NC4yMTg3NSIgeT0iNDUiIHN0eWxlPSJmb250LXNpemU6IDE2cHg7IGZvbnQtZmFtaWx5OiAmcXVv
dDtBbmRhbGUgTW9ubyZxdW90OywgbW9ub3NwYWNlOyI+PHRzcGFuIHg9IjUzNC4yMTg3NSI+VnVs
a2FuIEJhY2stZW5kPC90c3Bhbj48L3RleHQ+PC9nPjxnIGNsYXNzPSJhY3RvciI+PHJlY3QgeD0i
NTI0LjIxODc1IiB5PSIxMDkzLjAxNTYyNSIgd2lkdGg9IjE2NC41IiBoZWlnaHQ9IjM5IiBzdHJv
a2U9IiMwMDAwMDAiIGZpbGw9IiNmZmZmZmYiIHN0eWxlPSJzdHJva2Utd2lkdGg6IDI7IC0tZGFy
a3JlYWRlci1pbmxpbmUtZmlsbDojZWFlN2UxOyAtLWRhcmtyZWFkZXItaW5saW5lLXN0cm9rZToj
MDAwMDAwOyIgZGF0YS1kYXJrcmVhZGVyLWlubGluZS1maWxsPSIiIGRhdGEtZGFya3JlYWRlci1p
bmxpbmUtc3Ryb2tlPSIiPjwvcmVjdD48dGV4dCB4PSI1MzQuMjE4NzUiIHk9IjExMTguMDE1NjI1
IiBzdHlsZT0iZm9udC1zaXplOiAxNnB4OyBmb250LWZhbWlseTogJnF1b3Q7QW5kYWxlIE1vbm8m
cXVvdDssIG1vbm9zcGFjZTsiPjx0c3BhbiB4PSI1MzQuMjE4NzUiPlZ1bGthbiBCYWNrLWVuZDwv
dHNwYW4+PC90ZXh0PjwvZz48bGluZSB4MT0iNjA2LjQ2ODc1IiB4Mj0iNjA2LjQ2ODc1IiB5MT0i
NTkiIHkyPSIxMDkzLjAxNTYyNSIgc3Ryb2tlPSIjMDAwMDAwIiBmaWxsPSJub25lIiBzdHlsZT0i
c3Ryb2tlLXdpZHRoOiAyOyAtLWRhcmtyZWFkZXItaW5saW5lLWZpbGw6bm9uZTsgLS1kYXJrcmVh
ZGVyLWlubGluZS1zdHJva2U6IzAwMDAwMDsiIGRhdGEtZGFya3JlYWRlci1pbmxpbmUtZmlsbD0i
IiBkYXRhLWRhcmtyZWFkZXItaW5saW5lLXN0cm9rZT0iIj48L2xpbmU+PGcgY2xhc3M9ImFjdG9y
Ij48cmVjdCB4PSI4MTAuMDQ2ODc1IiB5PSIyMCIgd2lkdGg9IjE3NC41IiBoZWlnaHQ9IjM5IiBz
dHJva2U9IiMwMDAwMDAiIGZpbGw9IiNmZmZmZmYiIHN0eWxlPSJzdHJva2Utd2lkdGg6IDI7IC0t
ZGFya3JlYWRlci1pbmxpbmUtZmlsbDojZWFlN2UxOyAtLWRhcmtyZWFkZXItaW5saW5lLXN0cm9r
ZTojMDAwMDAwOyIgZGF0YS1kYXJrcmVhZGVyLWlubGluZS1maWxsPSIiIGRhdGEtZGFya3JlYWRl
ci1pbmxpbmUtc3Ryb2tlPSIiPjwvcmVjdD48dGV4dCB4PSI4MjAuMDQ2ODc1IiB5PSI0NSIgc3R5
bGU9ImZvbnQtc2l6ZTogMTZweDsgZm9udC1mYW1pbHk6ICZxdW90O0FuZGFsZSBNb25vJnF1b3Q7
LCBtb25vc3BhY2U7Ij48dHNwYW4geD0iODIwLjA0Njg3NSI+QU5HTEUgVHJhbnNsYXRvcjwvdHNw
YW4+PC90ZXh0PjwvZz48ZyBjbGFzcz0iYWN0b3IiPjxyZWN0IHg9IjgxMC4wNDY4NzUiIHk9IjEw
OTMuMDE1NjI1IiB3aWR0aD0iMTc0LjUiIGhlaWdodD0iMzkiIHN0cm9rZT0iIzAwMDAwMCIgZmls
bD0iI2ZmZmZmZiIgc3R5bGU9InN0cm9rZS13aWR0aDogMjsgLS1kYXJrcmVhZGVyLWlubGluZS1m
aWxsOiNlYWU3ZTE7IC0tZGFya3JlYWRlci1pbmxpbmUtc3Ryb2tlOiMwMDAwMDA7IiBkYXRhLWRh
cmtyZWFkZXItaW5saW5lLWZpbGw9IiIgZGF0YS1kYXJrcmVhZGVyLWlubGluZS1zdHJva2U9IiI+
PC9yZWN0Pjx0ZXh0IHg9IjgyMC4wNDY4NzUiIHk9IjExMTguMDE1NjI1IiBzdHlsZT0iZm9udC1z
aXplOiAxNnB4OyBmb250LWZhbWlseTogJnF1b3Q7QW5kYWxlIE1vbm8mcXVvdDssIG1vbm9zcGFj
ZTsiPjx0c3BhbiB4PSI4MjAuMDQ2ODc1Ij5BTkdMRSBUcmFuc2xhdG9yPC90c3Bhbj48L3RleHQ+
PC9nPjxsaW5lIHgxPSI4OTcuMjk2ODc1IiB4Mj0iODk3LjI5Njg3NSIgeTE9IjU5IiB5Mj0iMTA5
My4wMTU2MjUiIHN0cm9rZT0iIzAwMDAwMCIgZmlsbD0ibm9uZSIgc3R5bGU9InN0cm9rZS13aWR0
aDogMjsgLS1kYXJrcmVhZGVyLWlubGluZS1maWxsOm5vbmU7IC0tZGFya3JlYWRlci1pbmxpbmUt
c3Ryb2tlOiMwMDAwMDA7IiBkYXRhLWRhcmtyZWFkZXItaW5saW5lLWZpbGw9IiIgZGF0YS1kYXJr
cmVhZGVyLWlubGluZS1zdHJva2U9IiI+PC9saW5lPjxnIGNsYXNzPSJhY3RvciI+PHJlY3QgeD0i
MTAwNC41NDY4NzUiIHk9IjIwIiB3aWR0aD0iMTc0LjUiIGhlaWdodD0iMzkiIHN0cm9rZT0iIzAw
MDAwMCIgZmlsbD0iI2ZmZmZmZiIgc3R5bGU9InN0cm9rZS13aWR0aDogMjsgLS1kYXJrcmVhZGVy
LWlubGluZS1maWxsOiNlYWU3ZTE7IC0tZGFya3JlYWRlci1pbmxpbmUtc3Ryb2tlOiMwMDAwMDA7
IiBkYXRhLWRhcmtyZWFkZXItaW5saW5lLWZpbGw9IiIgZGF0YS1kYXJrcmVhZGVyLWlubGluZS1z
dHJva2U9IiI+PC9yZWN0Pjx0ZXh0IHg9IjEwMTQuNTQ2ODc1IiB5PSI0NSIgc3R5bGU9ImZvbnQt
c2l6ZTogMTZweDsgZm9udC1mYW1pbHk6ICZxdW90O0FuZGFsZSBNb25vJnF1b3Q7LCBtb25vc3Bh
Y2U7Ij48dHNwYW4geD0iMTAxNC41NDY4NzUiPkdsc2xhbmdXcmFwcGVyVms8L3RzcGFuPjwvdGV4
dD48L2c+PGcgY2xhc3M9ImFjdG9yIj48cmVjdCB4PSIxMDA0LjU0Njg3NSIgeT0iMTA5My4wMTU2
MjUiIHdpZHRoPSIxNzQuNSIgaGVpZ2h0PSIzOSIgc3Ryb2tlPSIjMDAwMDAwIiBmaWxsPSIjZmZm
ZmZmIiBzdHlsZT0ic3Ryb2tlLXdpZHRoOiAyOyAtLWRhcmtyZWFkZXItaW5saW5lLWZpbGw6I2Vh
ZTdlMTsgLS1kYXJrcmVhZGVyLWlubGluZS1zdHJva2U6IzAwMDAwMDsiIGRhdGEtZGFya3JlYWRl
ci1pbmxpbmUtZmlsbD0iIiBkYXRhLWRhcmtyZWFkZXItaW5saW5lLXN0cm9rZT0iIj48L3JlY3Q+
PHRleHQgeD0iMTAxNC41NDY4NzUiIHk9IjExMTguMDE1NjI1IiBzdHlsZT0iZm9udC1zaXplOiAx
NnB4OyBmb250LWZhbWlseTogJnF1b3Q7QW5kYWxlIE1vbm8mcXVvdDssIG1vbm9zcGFjZTsiPjx0
c3BhbiB4PSIxMDE0LjU0Njg3NSI+R2xzbGFuZ1dyYXBwZXJWazwvdHNwYW4+PC90ZXh0PjwvZz48
bGluZSB4MT0iMTA5MS43OTY4NzUiIHgyPSIxMDkxLjc5Njg3NSIgeTE9IjU5IiB5Mj0iMTA5My4w
MTU2MjUiIHN0cm9rZT0iIzAwMDAwMCIgZmlsbD0ibm9uZSIgc3R5bGU9InN0cm9rZS13aWR0aDog
MjsgLS1kYXJrcmVhZGVyLWlubGluZS1maWxsOm5vbmU7IC0tZGFya3JlYWRlci1pbmxpbmUtc3Ry
b2tlOiMwMDAwMDA7IiBkYXRhLWRhcmtyZWFkZXItaW5saW5lLWZpbGw9IiIgZGF0YS1kYXJrcmVh
ZGVyLWlubGluZS1zdHJva2U9IiI+PC9saW5lPjxnIGNsYXNzPSJhY3RvciI+PHJlY3QgeD0iMTI1
Mi41NzgxMjUiIHk9IjIwIiB3aWR0aD0iODcuNDM3NSIgaGVpZ2h0PSIzOSIgc3Ryb2tlPSIjMDAw
MDAwIiBmaWxsPSIjZmZmZmZmIiBzdHlsZT0ic3Ryb2tlLXdpZHRoOiAyOyAtLWRhcmtyZWFkZXIt
aW5saW5lLWZpbGw6I2VhZTdlMTsgLS1kYXJrcmVhZGVyLWlubGluZS1zdHJva2U6IzAwMDAwMDsi
IGRhdGEtZGFya3JlYWRlci1pbmxpbmUtZmlsbD0iIiBkYXRhLWRhcmtyZWFkZXItaW5saW5lLXN0
cm9rZT0iIj48L3JlY3Q+PHRleHQgeD0iMTI2Mi41NzgxMjUiIHk9IjQ1IiBzdHlsZT0iZm9udC1z
aXplOiAxNnB4OyBmb250LWZhbWlseTogJnF1b3Q7QW5kYWxlIE1vbm8mcXVvdDssIG1vbm9zcGFj
ZTsiPjx0c3BhbiB4PSIxMjYyLjU3ODEyNSI+R2xzbGFuZzwvdHNwYW4+PC90ZXh0PjwvZz48ZyBj
bGFzcz0iYWN0b3IiPjxyZWN0IHg9IjEyNTIuNTc4MTI1IiB5PSIxMDkzLjAxNTYyNSIgd2lkdGg9
Ijg3LjQzNzUiIGhlaWdodD0iMzkiIHN0cm9rZT0iIzAwMDAwMCIgZmlsbD0iI2ZmZmZmZiIgc3R5
bGU9InN0cm9rZS13aWR0aDogMjsgLS1kYXJrcmVhZGVyLWlubGluZS1maWxsOiNlYWU3ZTE7IC0t
ZGFya3JlYWRlci1pbmxpbmUtc3Ryb2tlOiMwMDAwMDA7IiBkYXRhLWRhcmtyZWFkZXItaW5saW5l
LWZpbGw9IiIgZGF0YS1kYXJrcmVhZGVyLWlubGluZS1zdHJva2U9IiI+PC9yZWN0Pjx0ZXh0IHg9
IjEyNjIuNTc4MTI1IiB5PSIxMTE4LjAxNTYyNSIgc3R5bGU9ImZvbnQtc2l6ZTogMTZweDsgZm9u
dC1mYW1pbHk6ICZxdW90O0FuZGFsZSBNb25vJnF1b3Q7LCBtb25vc3BhY2U7Ij48dHNwYW4geD0i
MTI2Mi41NzgxMjUiPkdsc2xhbmc8L3RzcGFuPjwvdGV4dD48L2c+PGxpbmUgeDE9IjEyOTYuMjk2
ODc1IiB4Mj0iMTI5Ni4yOTY4NzUiIHkxPSI1OSIgeTI9IjEwOTMuMDE1NjI1IiBzdHJva2U9IiMw
MDAwMDAiIGZpbGw9Im5vbmUiIHN0eWxlPSJzdHJva2Utd2lkdGg6IDI7IC0tZGFya3JlYWRlci1p
bmxpbmUtZmlsbDpub25lOyAtLWRhcmtyZWFkZXItaW5saW5lLXN0cm9rZTojMDAwMDAwOyIgZGF0
YS1kYXJrcmVhZGVyLWlubGluZS1maWxsPSIiIGRhdGEtZGFya3JlYWRlci1pbmxpbmUtc3Ryb2tl
PSIiPjwvbGluZT48ZyBjbGFzcz0ic2lnbmFsIj48dGV4dCB4PSI4OC4zNTE1NjI1IiB5PSI4OS41
IiBzdHlsZT0iZm9udC1zaXplOiAxNnB4OyBmb250LWZhbWlseTogJnF1b3Q7QW5kYWxlIE1vbm8m
cXVvdDssIG1vbm9zcGFjZTsiPjx0c3BhbiB4PSI4OC4zNTE1NjI1Ij5nbENvbXBpbGVTaGFkZXIg
KFZTKTwvdHNwYW4+PC90ZXh0PjxsaW5lIHgxPSIzNC40NTMxMjUiIHgyPSIzMzQuOTA2MjUiIHkx
PSI5OCIgeTI9Ijk4IiBzdHJva2U9IiMwMDAwMDAiIGZpbGw9Im5vbmUiIHN0eWxlPSJzdHJva2Ut
d2lkdGg6IDI7IG1hcmtlci1lbmQ6IHVybCgmcXVvdDsjbWFya2VyQXJyb3dCbG9jayZxdW90Oyk7
IC0tZGFya3JlYWRlci1pbmxpbmUtZmlsbDpub25lOyAtLWRhcmtyZWFkZXItaW5saW5lLXN0cm9r
ZTojMDAwMDAwOyIgZGF0YS1kYXJrcmVhZGVyLWlubGluZS1maWxsPSIiIGRhdGEtZGFya3JlYWRl
ci1pbmxpbmUtc3Ryb2tlPSIiPjwvbGluZT48L2c+PGcgY2xhc3M9InNpZ25hbCI+PHRleHQgeD0i
Mzg4LjgwNDY4NzUiIHk9IjEyOC41IiBzdHlsZT0iZm9udC1zaXplOiAxNnB4OyBmb250LWZhbWls
eTogJnF1b3Q7QW5kYWxlIE1vbm8mcXVvdDssIG1vbm9zcGFjZTsiPjx0c3BhbiB4PSIzODguODA0
Njg3NSI+U2hhZGVyVms6OmNvbXBpbGU8L3RzcGFuPjwvdGV4dD48bGluZSB4MT0iMzM0LjkwNjI1
IiB4Mj0iNjA2LjQ2ODc1IiB5MT0iMTM3IiB5Mj0iMTM3IiBzdHJva2U9IiMwMDAwMDAiIGZpbGw9
Im5vbmUiIHN0eWxlPSJzdHJva2Utd2lkdGg6IDI7IG1hcmtlci1lbmQ6IHVybCgmcXVvdDsjbWFy
a2VyQXJyb3dCbG9jayZxdW90Oyk7IC0tZGFya3JlYWRlci1pbmxpbmUtZmlsbDpub25lOyAtLWRh
cmtyZWFkZXItaW5saW5lLXN0cm9rZTojMDAwMDAwOyIgZGF0YS1kYXJrcmVhZGVyLWlubGluZS1m
aWxsPSIiIGRhdGEtZGFya3JlYWRlci1pbmxpbmUtc3Ryb2tlPSIiPjwvbGluZT48L2c+PGcgY2xh
c3M9InNpZ25hbCI+PHRleHQgeD0iNjk4Ljg5ODQzNzUiIHk9IjE2Ny41IiBzdHlsZT0iZm9udC1z
aXplOiAxNnB4OyBmb250LWZhbWlseTogJnF1b3Q7QW5kYWxlIE1vbm8mcXVvdDssIG1vbm9zcGFj
ZTsiPjx0c3BhbiB4PSI2OTguODk4NDM3NSI+c2g6OkNvbXBpbGU8L3RzcGFuPjwvdGV4dD48bGlu
ZSB4MT0iNjA2LjQ2ODc1IiB4Mj0iODk3LjI5Njg3NSIgeTE9IjE3NiIgeTI9IjE3NiIgc3Ryb2tl
PSIjMDAwMDAwIiBmaWxsPSJub25lIiBzdHlsZT0ic3Ryb2tlLXdpZHRoOiAyOyBtYXJrZXItZW5k
OiB1cmwoJnF1b3Q7I21hcmtlckFycm93QmxvY2smcXVvdDspOyAtLWRhcmtyZWFkZXItaW5saW5l
LWZpbGw6bm9uZTsgLS1kYXJrcmVhZGVyLWlubGluZS1zdHJva2U6IzAwMDAwMDsiIGRhdGEtZGFy
a3JlYWRlci1pbmxpbmUtZmlsbD0iIiBkYXRhLWRhcmtyZWFkZXItaW5saW5lLXN0cm9rZT0iIj48
L2xpbmU+PC9nPjxnIGNsYXNzPSJzaWduYWwiPjx0ZXh0IHg9IjQ3Ni40MjE4NzUiIHk9IjIwNi41
IiBzdHlsZT0iZm9udC1zaXplOiAxNnB4OyBmb250LWZhbWlseTogJnF1b3Q7QW5kYWxlIE1vbm8m
cXVvdDssIG1vbm9zcGFjZTsiPjx0c3BhbiB4PSI0NzYuNDIxODc1Ij5yZXR1cm4gVnVsa2FuLWNv
bXBhdGlibGUgR0xTTDwvdHNwYW4+PC90ZXh0PjxsaW5lIHgxPSI4OTcuMjk2ODc1IiB4Mj0iMzM0
LjkwNjI1IiB5MT0iMjE1IiB5Mj0iMjE1IiBzdHJva2U9IiMwMDAwMDAiIGZpbGw9Im5vbmUiIHN0
eWxlPSJzdHJva2Utd2lkdGg6IDI7IHN0cm9rZS1kYXNoYXJyYXk6IDYsIDI7IG1hcmtlci1lbmQ6
IHVybCgmcXVvdDsjbWFya2VyQXJyb3dCbG9jayZxdW90Oyk7IC0tZGFya3JlYWRlci1pbmxpbmUt
ZmlsbDpub25lOyAtLWRhcmtyZWFkZXItaW5saW5lLXN0cm9rZTojMDAwMDAwOyIgZGF0YS1kYXJr
cmVhZGVyLWlubGluZS1maWxsPSIiIGRhdGEtZGFya3JlYWRlci1pbmxpbmUtc3Ryb2tlPSIiPjwv
bGluZT48L2c+PGcgY2xhc3M9Im5vdGUiPjxyZWN0IHg9IjM1NC45MDYyNSIgeT0iMjM1IiB3aWR0
aD0iMjMxLjU2MjUiIGhlaWdodD0iNjcuNDA2MjUiIHN0cm9rZT0iIzAwMDAwMCIgZmlsbD0iI2Zm
ZmZmZiIgc3R5bGU9InN0cm9rZS13aWR0aDogMjsgLS1kYXJrcmVhZGVyLWlubGluZS1maWxsOiNl
YWU3ZTE7IC0tZGFya3JlYWRlci1pbmxpbmUtc3Ryb2tlOiMwMDAwMDA7IiBkYXRhLWRhcmtyZWFk
ZXItaW5saW5lLWZpbGw9IiIgZGF0YS1kYXJrcmVhZGVyLWlubGluZS1zdHJva2U9IiI+PC9yZWN0
Pjx0ZXh0IHg9IjM1OS45MDYyNSIgeT0iMjU1IiBzdHlsZT0iZm9udC1zaXplOiAxNnB4OyBmb250
LWZhbWlseTogJnF1b3Q7QW5kYWxlIE1vbm8mcXVvdDssIG1vbm9zcGFjZTsiPjx0c3BhbiB4PSIz
NTkuOTA2MjUiPlNvdXJjZSBpcyB1c2luZyBib2d1czwvdHNwYW4+PHRzcGFuIGR5PSIxLjJlbSIg
eD0iMzU5LjkwNjI1Ij5WdWxrYW4gcXVhbGlmaWVycyB0byBiZTwvdHNwYW4+PHRzcGFuIGR5PSIx
LjJlbSIgeD0iMzU5LjkwNjI1Ij5jb3JyZWN0ZWQgYXQgbGluayB0aW1lLjwvdHNwYW4+PC90ZXh0
PjwvZz48ZyBjbGFzcz0ibm90ZSI+PHJlY3QgeD0iNTQuNDUzMTI1IiB5PSIzMjIuNDA2MjUiIHdp
ZHRoPSIyMzEuNTYyNSIgaGVpZ2h0PSIyOSIgc3Ryb2tlPSIjMDAwMDAwIiBmaWxsPSIjZmZmZmZm
IiBzdHlsZT0ic3Ryb2tlLXdpZHRoOiAyOyAtLWRhcmtyZWFkZXItaW5saW5lLWZpbGw6I2VhZTdl
MTsgLS1kYXJrcmVhZGVyLWlubGluZS1zdHJva2U6IzAwMDAwMDsiIGRhdGEtZGFya3JlYWRlci1p
bmxpbmUtZmlsbD0iIiBkYXRhLWRhcmtyZWFkZXItaW5saW5lLXN0cm9rZT0iIj48L3JlY3Q+PHRl
eHQgeD0iNTkuNDUzMTI1IiB5PSIzNDIuNDA2MjUiIHN0eWxlPSJmb250LXNpemU6IDE2cHg7IGZv
bnQtZmFtaWx5OiAmcXVvdDtBbmRhbGUgTW9ubyZxdW90OywgbW9ub3NwYWNlOyI+PHRzcGFuIHg9
IjU5LjQ1MzEyNSI+U2FtZSBmb3IgRlMsIEdTLCBldGMuLi48L3RzcGFuPjwvdGV4dD48L2c+PGcg
Y2xhc3M9InNpZ25hbCI+PHRleHQgeD0iODMuNTMxMjUiIHk9IjM4MS45MDYyNSIgc3R5bGU9ImZv
bnQtc2l6ZTogMTZweDsgZm9udC1mYW1pbHk6ICZxdW90O0FuZGFsZSBNb25vJnF1b3Q7LCBtb25v
c3BhY2U7Ij48dHNwYW4geD0iODMuNTMxMjUiPmdsQ3JlYXRlUHJvZ3JhbSAoLi4uKTwvdHNwYW4+
PC90ZXh0PjxsaW5lIHgxPSIzNC40NTMxMjUiIHgyPSIzMzQuOTA2MjUiIHkxPSIzOTAuNDA2MjUi
IHkyPSIzOTAuNDA2MjUiIHN0cm9rZT0iIzAwMDAwMCIgZmlsbD0ibm9uZSIgc3R5bGU9InN0cm9r
ZS13aWR0aDogMjsgbWFya2VyLWVuZDogdXJsKCZxdW90OyNtYXJrZXJBcnJvd0Jsb2NrJnF1b3Q7
KTsgLS1kYXJrcmVhZGVyLWlubGluZS1maWxsOm5vbmU7IC0tZGFya3JlYWRlci1pbmxpbmUtc3Ry
b2tlOiMwMDAwMDA7IiBkYXRhLWRhcmtyZWFkZXItaW5saW5lLWZpbGw9IiIgZGF0YS1kYXJrcmVh
ZGVyLWlubGluZS1zdHJva2U9IiI+PC9saW5lPjwvZz48ZyBjbGFzcz0ic2lnbmFsIj48dGV4dCB4
PSI4OC4zNTE1NjI1IiB5PSI0MjAuOTA2MjUiIHN0eWxlPSJmb250LXNpemU6IDE2cHg7IGZvbnQt
ZmFtaWx5OiAmcXVvdDtBbmRhbGUgTW9ubyZxdW90OywgbW9ub3NwYWNlOyI+PHRzcGFuIHg9Ijg4
LjM1MTU2MjUiPmdsQXR0YWNoU2hhZGVyICguLi4pPC90c3Bhbj48L3RleHQ+PGxpbmUgeDE9IjM0
LjQ1MzEyNSIgeDI9IjMzNC45MDYyNSIgeTE9IjQyOS40MDYyNSIgeTI9IjQyOS40MDYyNSIgc3Ry
b2tlPSIjMDAwMDAwIiBmaWxsPSJub25lIiBzdHlsZT0ic3Ryb2tlLXdpZHRoOiAyOyBtYXJrZXIt
ZW5kOiB1cmwoJnF1b3Q7I21hcmtlckFycm93QmxvY2smcXVvdDspOyAtLWRhcmtyZWFkZXItaW5s
aW5lLWZpbGw6bm9uZTsgLS1kYXJrcmVhZGVyLWlubGluZS1zdHJva2U6IzAwMDAwMDsiIGRhdGEt
ZGFya3JlYWRlci1pbmxpbmUtZmlsbD0iIiBkYXRhLWRhcmtyZWFkZXItaW5saW5lLXN0cm9rZT0i
Ij48L2xpbmU+PC9nPjxnIGNsYXNzPSJzaWduYWwiPjx0ZXh0IHg9IjEyMi4wNjI1IiB5PSI0NTku
OTA2MjUiIHN0eWxlPSJmb250LXNpemU6IDE2cHg7IGZvbnQtZmFtaWx5OiAmcXVvdDtBbmRhbGUg
TW9ubyZxdW90OywgbW9ub3NwYWNlOyI+PHRzcGFuIHg9IjEyMi4wNjI1Ij5nbExpbmtQcm9ncmFt
PC90c3Bhbj48L3RleHQ+PGxpbmUgeDE9IjM0LjQ1MzEyNSIgeDI9IjMzNC45MDYyNSIgeTE9IjQ2
OC40MDYyNSIgeTI9IjQ2OC40MDYyNSIgc3Ryb2tlPSIjMDAwMDAwIiBmaWxsPSJub25lIiBzdHls
ZT0ic3Ryb2tlLXdpZHRoOiAyOyBtYXJrZXItZW5kOiB1cmwoJnF1b3Q7I21hcmtlckFycm93Qmxv
Y2smcXVvdDspOyAtLWRhcmtyZWFkZXItaW5saW5lLWZpbGw6bm9uZTsgLS1kYXJrcmVhZGVyLWlu
bGluZS1zdHJva2U6IzAwMDAwMDsiIGRhdGEtZGFya3JlYWRlci1pbmxpbmUtZmlsbD0iIiBkYXRh
LWRhcmtyZWFkZXItaW5saW5lLXN0cm9rZT0iIj48L2xpbmU+PC9nPjxnIGNsYXNzPSJzaWduYWwi
Pjx0ZXh0IHg9IjM5OC4yNTc4MTI1IiB5PSI0OTguOTA2MjUiIHN0eWxlPSJmb250LXNpemU6IDE2
cHg7IGZvbnQtZmFtaWx5OiAmcXVvdDtBbmRhbGUgTW9ubyZxdW90OywgbW9ub3NwYWNlOyI+PHRz
cGFuIHg9IjM5OC4yNTc4MTI1Ij5Qcm9ncmFtVms6Omxpbms8L3RzcGFuPjwvdGV4dD48bGluZSB4
MT0iMzM0LjkwNjI1IiB4Mj0iNjA2LjQ2ODc1IiB5MT0iNTA3LjQwNjI1IiB5Mj0iNTA3LjQwNjI1
IiBzdHJva2U9IiMwMDAwMDAiIGZpbGw9Im5vbmUiIHN0eWxlPSJzdHJva2Utd2lkdGg6IDI7IG1h
cmtlci1lbmQ6IHVybCgmcXVvdDsjbWFya2VyQXJyb3dCbG9jayZxdW90Oyk7IC0tZGFya3JlYWRl
ci1pbmxpbmUtZmlsbDpub25lOyAtLWRhcmtyZWFkZXItaW5saW5lLXN0cm9rZTojMDAwMDAwOyIg
ZGF0YS1kYXJrcmVhZGVyLWlubGluZS1maWxsPSIiIGRhdGEtZGFya3JlYWRlci1pbmxpbmUtc3Ry
b2tlPSIiPjwvbGluZT48L2c+PGcgY2xhc3M9Im5vdGUiPjxyZWN0IHg9IjYyNi40Njg3NSIgeT0i
NTI3LjQwNjI1IiB3aWR0aD0iMjUwLjgyODEyNSIgaGVpZ2h0PSI0OC4yMDMxMjUiIHN0cm9rZT0i
IzAwMDAwMCIgZmlsbD0iI2ZmZmZmZiIgc3R5bGU9InN0cm9rZS13aWR0aDogMjsgLS1kYXJrcmVh
ZGVyLWlubGluZS1maWxsOiNlYWU3ZTE7IC0tZGFya3JlYWRlci1pbmxpbmUtc3Ryb2tlOiMwMDAw
MDA7IiBkYXRhLWRhcmtyZWFkZXItaW5saW5lLWZpbGw9IiIgZGF0YS1kYXJrcmVhZGVyLWlubGlu
ZS1zdHJva2U9IiI+PC9yZWN0Pjx0ZXh0IHg9IjYzMS40Njg3NSIgeT0iNTQ3LjQwNjI1IiBzdHls
ZT0iZm9udC1zaXplOiAxNnB4OyBmb250LWZhbWlseTogJnF1b3Q7QW5kYWxlIE1vbm8mcXVvdDss
IG1vbm9zcGFjZTsiPjx0c3BhbiB4PSI2MzEuNDY4NzUiPlByb2dyYW1WayBpbml0cyB1bmlmb3Jt
cyw8L3RzcGFuPjx0c3BhbiBkeT0iMS4yZW0iIHg9IjYzMS40Njg3NSI+bGF5b3V0cywgYW5kIGRl
c2NyaXB0b3JzLjwvdHNwYW4+PC90ZXh0PjwvZz48ZyBjbGFzcz0ic2lnbmFsIj48dGV4dCB4PSI2
NzUuNzQyMTg3NSIgeT0iNjA2LjEwOTM3NSIgc3R5bGU9ImZvbnQtc2l6ZTogMTZweDsgZm9udC1m
YW1pbHk6ICZxdW90O0FuZGFsZSBNb25vJnF1b3Q7LCBtb25vc3BhY2U7Ij48dHNwYW4geD0iNjc1
Ljc0MjE4NzUiPkdsc2xhbmdXcmFwcGVyVms6OkdldFNoYWRlclNwaXJ2Q29kZTwvdHNwYW4+PC90
ZXh0PjxsaW5lIHgxPSI2MDYuNDY4NzUiIHgyPSIxMDkxLjc5Njg3NSIgeTE9IjYxNC42MDkzNzUi
IHkyPSI2MTQuNjA5Mzc1IiBzdHJva2U9IiMwMDAwMDAiIGZpbGw9Im5vbmUiIHN0eWxlPSJzdHJv
a2Utd2lkdGg6IDI7IG1hcmtlci1lbmQ6IHVybCgmcXVvdDsjbWFya2VyQXJyb3dCbG9jayZxdW90
Oyk7IC0tZGFya3JlYWRlci1pbmxpbmUtZmlsbDpub25lOyAtLWRhcmtyZWFkZXItaW5saW5lLXN0
cm9rZTojMDAwMDAwOyIgZGF0YS1kYXJrcmVhZGVyLWlubGluZS1maWxsPSIiIGRhdGEtZGFya3Jl
YWRlci1pbmxpbmUtc3Ryb2tlPSIiPjwvbGluZT48L2c+PGcgY2xhc3M9InNpZ25hbCI+PHRleHQg
eD0iMTEzNi4yNSIgeT0iNjQ1LjEwOTM3NSIgc3R5bGU9ImZvbnQtc2l6ZTogMTZweDsgZm9udC1m
YW1pbHk6ICZxdW90O0FuZGFsZSBNb25vJnF1b3Q7LCBtb25vc3BhY2U7Ij48dHNwYW4geD0iMTEz
Ni4yNSI+R2xzbGFuZ1RvU3B2PC90c3Bhbj48L3RleHQ+PGxpbmUgeDE9IjEwOTEuNzk2ODc1IiB4
Mj0iMTI5Ni4yOTY4NzUiIHkxPSI2NTMuNjA5Mzc1IiB5Mj0iNjUzLjYwOTM3NSIgc3Ryb2tlPSIj
MDAwMDAwIiBmaWxsPSJub25lIiBzdHlsZT0ic3Ryb2tlLXdpZHRoOiAyOyBtYXJrZXItZW5kOiB1
cmwoJnF1b3Q7I21hcmtlckFycm93QmxvY2smcXVvdDspOyAtLWRhcmtyZWFkZXItaW5saW5lLWZp
bGw6bm9uZTsgLS1kYXJrcmVhZGVyLWlubGluZS1zdHJva2U6IzAwMDAwMDsiIGRhdGEtZGFya3Jl
YWRlci1pbmxpbmUtZmlsbD0iIiBkYXRhLWRhcmtyZWFkZXItaW5saW5lLXN0cm9rZT0iIj48L2xp
bmU+PC9nPjxnIGNsYXNzPSJzaWduYWwiPjx0ZXh0IHg9IjExMzEuMjUiIHk9IjY4NC4xMDkzNzUi
IHN0eWxlPSJmb250LXNpemU6IDE2cHg7IGZvbnQtZmFtaWx5OiAmcXVvdDtBbmRhbGUgTW9ubyZx
dW90OywgbW9ub3NwYWNlOyI+PHRzcGFuIHg9IjExMzEuMjUiPlJldHVybiBTUElSLVY8L3RzcGFu
PjwvdGV4dD48bGluZSB4MT0iMTI5Ni4yOTY4NzUiIHgyPSIxMDkxLjc5Njg3NSIgeTE9IjY5Mi42
MDkzNzUiIHkyPSI2OTIuNjA5Mzc1IiBzdHJva2U9IiMwMDAwMDAiIGZpbGw9Im5vbmUiIHN0eWxl
PSJzdHJva2Utd2lkdGg6IDI7IHN0cm9rZS1kYXNoYXJyYXk6IDYsIDI7IG1hcmtlci1lbmQ6IHVy
bCgmcXVvdDsjbWFya2VyQXJyb3dCbG9jayZxdW90Oyk7IC0tZGFya3JlYWRlci1pbmxpbmUtZmls
bDpub25lOyAtLWRhcmtyZWFkZXItaW5saW5lLXN0cm9rZTojMDAwMDAwOyIgZGF0YS1kYXJrcmVh
ZGVyLWlubGluZS1maWxsPSIiIGRhdGEtZGFya3JlYWRlci1pbmxpbmUtc3Ryb2tlPSIiPjwvbGlu
ZT48L2c+PGcgY2xhc3M9Im5vdGUiPjxyZWN0IHg9IjExMTEuNzk2ODc1IiB5PSI3MTIuNjA5Mzc1
IiB3aWR0aD0iMTY0LjUiIGhlaWdodD0iMjkiIHN0cm9rZT0iIzAwMDAwMCIgZmlsbD0iI2ZmZmZm
ZiIgc3R5bGU9InN0cm9rZS13aWR0aDogMjsgLS1kYXJrcmVhZGVyLWlubGluZS1maWxsOiNlYWU3
ZTE7IC0tZGFya3JlYWRlci1pbmxpbmUtc3Ryb2tlOiMwMDAwMDA7IiBkYXRhLWRhcmtyZWFkZXIt
aW5saW5lLWZpbGw9IiIgZGF0YS1kYXJrcmVhZGVyLWlubGluZS1zdHJva2U9IiI+PC9yZWN0Pjx0
ZXh0IHg9IjExMTYuNzk2ODc1IiB5PSI3MzIuNjA5Mzc1IiBzdHlsZT0iZm9udC1zaXplOiAxNnB4
OyBmb250LWZhbWlseTogJnF1b3Q7QW5kYWxlIE1vbm8mcXVvdDssIG1vbm9zcGFjZTsiPjx0c3Bh
biB4PSIxMTE2Ljc5Njg3NSI+VHJhbnNmb3JtIFNQSVItVjwvdHNwYW4+PC90ZXh0PjwvZz48ZyBj
bGFzcz0ic2lnbmFsIj48dGV4dCB4PSI3MjguNTM5MDYyNSIgeT0iNzcyLjEwOTM3NSIgc3R5bGU9
ImZvbnQtc2l6ZTogMTZweDsgZm9udC1mYW1pbHk6ICZxdW90O0FuZGFsZSBNb25vJnF1b3Q7LCBt
b25vc3BhY2U7Ij48dHNwYW4geD0iNzI4LjUzOTA2MjUiPnJldHVybiB0cmFuc2Zvcm1lZCBTUElS
LVY8L3RzcGFuPjwvdGV4dD48bGluZSB4MT0iMTA5MS43OTY4NzUiIHgyPSI2MDYuNDY4NzUiIHkx
PSI3ODAuNjA5Mzc1IiB5Mj0iNzgwLjYwOTM3NSIgc3Ryb2tlPSIjMDAwMDAwIiBmaWxsPSJub25l
IiBzdHlsZT0ic3Ryb2tlLXdpZHRoOiAyOyBzdHJva2UtZGFzaGFycmF5OiA2LCAyOyBtYXJrZXIt
ZW5kOiB1cmwoJnF1b3Q7I21hcmtlckFycm93QmxvY2smcXVvdDspOyAtLWRhcmtyZWFkZXItaW5s
aW5lLWZpbGw6bm9uZTsgLS1kYXJrcmVhZGVyLWlubGluZS1zdHJva2U6IzAwMDAwMDsiIGRhdGEt
ZGFya3JlYWRlci1pbmxpbmUtZmlsbD0iIiBkYXRhLWRhcmtyZWFkZXItaW5saW5lLXN0cm9rZT0i
Ij48L2xpbmU+PC9nPjxnIGNsYXNzPSJzaWduYWwiPjx0ZXh0IHg9IjQwMy4yNTc4MTI1IiB5PSI4
MTEuMTA5Mzc1IiBzdHlsZT0iZm9udC1zaXplOiAxNnB4OyBmb250LWZhbWlseTogJnF1b3Q7QW5k
YWxlIE1vbm8mcXVvdDssIG1vbm9zcGFjZTsiPjx0c3BhbiB4PSI0MDMuMjU3ODEyNSI+cmV0dXJu
IHN1Y2Nlc3M8L3RzcGFuPjwvdGV4dD48bGluZSB4MT0iNjA2LjQ2ODc1IiB4Mj0iMzM0LjkwNjI1
IiB5MT0iODE5LjYwOTM3NSIgeTI9IjgxOS42MDkzNzUiIHN0cm9rZT0iIzAwMDAwMCIgZmlsbD0i
bm9uZSIgc3R5bGU9InN0cm9rZS13aWR0aDogMjsgc3Ryb2tlLWRhc2hhcnJheTogNiwgMjsgbWFy
a2VyLWVuZDogdXJsKCZxdW90OyNtYXJrZXJBcnJvd0Jsb2NrJnF1b3Q7KTsgLS1kYXJrcmVhZGVy
LWlubGluZS1maWxsOm5vbmU7IC0tZGFya3JlYWRlci1pbmxpbmUtc3Ryb2tlOiMwMDAwMDA7IiBk
YXRhLWRhcmtyZWFkZXItaW5saW5lLWZpbGw9IiIgZGF0YS1kYXJrcmVhZGVyLWlubGluZS1zdHJv
a2U9IiI+PC9saW5lPjwvZz48ZyBjbGFzcz0ibm90ZSI+PHJlY3QgeD0iNTQuNDUzMTI1IiB5PSI4
MzkuNjA5Mzc1IiB3aWR0aD0iMjYwLjQ1MzEyNSIgaGVpZ2h0PSIyOSIgc3Ryb2tlPSIjMDAwMDAw
IiBmaWxsPSIjZmZmZmZmIiBzdHlsZT0ic3Ryb2tlLXdpZHRoOiAyOyAtLWRhcmtyZWFkZXItaW5s
aW5lLWZpbGw6I2VhZTdlMTsgLS1kYXJrcmVhZGVyLWlubGluZS1zdHJva2U6IzAwMDAwMDsiIGRh
dGEtZGFya3JlYWRlci1pbmxpbmUtZmlsbD0iIiBkYXRhLWRhcmtyZWFkZXItaW5saW5lLXN0cm9r
ZT0iIj48L3JlY3Q+PHRleHQgeD0iNTkuNDUzMTI1IiB5PSI4NTkuNjA5Mzc1IiBzdHlsZT0iZm9u
dC1zaXplOiAxNnB4OyBmb250LWZhbWlseTogJnF1b3Q7QW5kYWxlIE1vbm8mcXVvdDssIG1vbm9z
cGFjZTsiPjx0c3BhbiB4PSI1OS40NTMxMjUiPkFwcCBleGVjdXRpb24gY29udGludWVzLi4uPC90
c3Bhbj48L3RleHQ+PC9nPjxnIGNsYXNzPSJzaWduYWwiPjx0ZXh0IHg9IjczLjg5ODQzNzUiIHk9
Ijg5OS4xMDkzNzUiIHN0eWxlPSJmb250LXNpemU6IDE2cHg7IGZvbnQtZmFtaWx5OiAmcXVvdDtB
bmRhbGUgTW9ubyZxdW90OywgbW9ub3NwYWNlOyI+PHRzcGFuIHg9IjczLjg5ODQzNzUiPmdsRHJh
d0FycmF5cyAoYW55IGRyYXcpPC90c3Bhbj48L3RleHQ+PGxpbmUgeDE9IjM0LjQ1MzEyNSIgeDI9
IjMzNC45MDYyNSIgeTE9IjkwNy42MDkzNzUiIHkyPSI5MDcuNjA5Mzc1IiBzdHJva2U9IiMwMDAw
MDAiIGZpbGw9Im5vbmUiIHN0eWxlPSJzdHJva2Utd2lkdGg6IDI7IG1hcmtlci1lbmQ6IHVybCgm
cXVvdDsjbWFya2VyQXJyb3dCbG9jayZxdW90Oyk7IC0tZGFya3JlYWRlci1pbmxpbmUtZmlsbDpu
b25lOyAtLWRhcmtyZWFkZXItaW5saW5lLXN0cm9rZTojMDAwMDAwOyIgZGF0YS1kYXJrcmVhZGVy
LWlubGluZS1maWxsPSIiIGRhdGEtZGFya3JlYWRlci1pbmxpbmUtc3Ryb2tlPSIiPjwvbGluZT48
L2c+PGcgY2xhc3M9InNpZ25hbCI+PHRleHQgeD0iMzY5LjUzOTA2MjUiIHk9IjkzOC4xMDkzNzUi
IHN0eWxlPSJmb250LXNpemU6IDE2cHg7IGZvbnQtZmFtaWx5OiAmcXVvdDtBbmRhbGUgTW9ubyZx
dW90OywgbW9ub3NwYWNlOyI+PHRzcGFuIHg9IjM2OS41MzkwNjI1Ij5Db250ZXh0Vms6OmRyYXdB
cnJheXM8L3RzcGFuPjwvdGV4dD48bGluZSB4MT0iMzM0LjkwNjI1IiB4Mj0iNjA2LjQ2ODc1IiB5
MT0iOTQ2LjYwOTM3NSIgeTI9Ijk0Ni42MDkzNzUiIHN0cm9rZT0iIzAwMDAwMCIgZmlsbD0ibm9u
ZSIgc3R5bGU9InN0cm9rZS13aWR0aDogMjsgbWFya2VyLWVuZDogdXJsKCZxdW90OyNtYXJrZXJB
cnJvd0Jsb2NrJnF1b3Q7KTsgLS1kYXJrcmVhZGVyLWlubGluZS1maWxsOm5vbmU7IC0tZGFya3Jl
YWRlci1pbmxpbmUtc3Ryb2tlOiMwMDAwMDA7IiBkYXRhLWRhcmtyZWFkZXItaW5saW5lLWZpbGw9
IiIgZGF0YS1kYXJrcmVhZGVyLWlubGluZS1zdHJva2U9IiI+PC9saW5lPjwvZz48ZyBjbGFzcz0i
bm90ZSI+PHJlY3QgeD0iNjI2LjQ2ODc1IiB5PSI5NjYuNjA5Mzc1IiB3aWR0aD0iMjMxLjU2MjUi
IGhlaWdodD0iNjcuNDA2MjUiIHN0cm9rZT0iIzAwMDAwMCIgZmlsbD0iI2ZmZmZmZiIgc3R5bGU9
InN0cm9rZS13aWR0aDogMjsgLS1kYXJrcmVhZGVyLWlubGluZS1maWxsOiNlYWU3ZTE7IC0tZGFy
a3JlYWRlci1pbmxpbmUtc3Ryb2tlOiMwMDAwMDA7IiBkYXRhLWRhcmtyZWFkZXItaW5saW5lLWZp
bGw9IiIgZGF0YS1kYXJrcmVhZGVyLWlubGluZS1zdHJva2U9IiI+PC9yZWN0Pjx0ZXh0IHg9IjYz
MS40Njg3NSIgeT0iOTg2LjYwOTM3NSIgc3R5bGU9ImZvbnQtc2l6ZTogMTZweDsgZm9udC1mYW1p
bHk6ICZxdW90O0FuZGFsZSBNb25vJnF1b3Q7LCBtb25vc3BhY2U7Ij48dHNwYW4geD0iNjMxLjQ2
ODc1Ij5XZSBpbml0IFZrU2hhZGVyTW9kdWxlczwvdHNwYW4+PHRzcGFuIGR5PSIxLjJlbSIgeD0i
NjMxLjQ2ODc1Ij5hbmQgVmtQaXBlbGluZSB0aGVuPC90c3Bhbj48dHNwYW4gZHk9IjEuMmVtIiB4
PSI2MzEuNDY4NzUiPnJlY29yZCB0aGUgZHJhdy48L3RzcGFuPjwvdGV4dD48L2c+PGcgY2xhc3M9
InNpZ25hbCI+PHRleHQgeD0iNDAzLjI1NzgxMjUiIHk9IjEwNjQuNTE1NjI1IiBzdHlsZT0iZm9u
dC1zaXplOiAxNnB4OyBmb250LWZhbWlseTogJnF1b3Q7QW5kYWxlIE1vbm8mcXVvdDssIG1vbm9z
cGFjZTsiPjx0c3BhbiB4PSI0MDMuMjU3ODEyNSI+cmV0dXJuIHN1Y2Nlc3M8L3RzcGFuPjwvdGV4
dD48bGluZSB4MT0iNjA2LjQ2ODc1IiB4Mj0iMzM0LjkwNjI1IiB5MT0iMTA3My4wMTU2MjUiIHky
PSIxMDczLjAxNTYyNSIgc3Ryb2tlPSIjMDAwMDAwIiBmaWxsPSJub25lIiBzdHlsZT0ic3Ryb2tl
LXdpZHRoOiAyOyBzdHJva2UtZGFzaGFycmF5OiA2LCAyOyBtYXJrZXItZW5kOiB1cmwoJnF1b3Q7
I21hcmtlckFycm93QmxvY2smcXVvdDspOyAtLWRhcmtyZWFkZXItaW5saW5lLWZpbGw6bm9uZTsg
LS1kYXJrcmVhZGVyLWlubGluZS1zdHJva2U6IzAwMDAwMDsiIGRhdGEtZGFya3JlYWRlci1pbmxp
bmUtZmlsbD0iIiBkYXRhLWRhcmtyZWFkZXItaW5saW5lLXN0cm9rZT0iIj48L2xpbmU+PC9nPjwv
c3ZnPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKK11dPjwvc291cmNlPjxkZXNjPjwvZGVz
Yz48ZGVmcz48bWFya2VyIHZpZXdCb3g9IjAgMCA1IDUiIG1hcmtlcldpZHRoPSI1IiBtYXJrZXJI
ZWlnaHQ9IjUiIG9yaWVudD0iYXV0byIgcmVmWD0iNSIgcmVmWT0iMi41IiBpZD0ibWFya2VyQXJy
b3dCbG9jayI+PHBhdGggZD0iTSAwIDAgTCA1IDIuNSBMIDAgNSB6Ij48L3BhdGg+PC9tYXJrZXI+
PG1hcmtlciB2aWV3Qm94PSIwIDAgOS42IDE2IiBtYXJrZXJXaWR0aD0iNCIgbWFya2VySGVpZ2h0
PSIxNiIgb3JpZW50PSJhdXRvIiByZWZYPSI5LjYiIHJlZlk9IjgiIGlkPSJtYXJrZXJBcnJvd09w
ZW4iPjxwYXRoIGQ9Ik0gOS42LDggMS45MiwxNiAwLDEzLjcgNS43Niw4IDAsMi4yODYgMS45Miww
IDkuNiw4IHoiPjwvcGF0aD48L21hcmtlcj48L2RlZnM+PGcgY2xhc3M9InRpdGxlIj48L2c+PGcg
Y2xhc3M9ImFjdG9yIj48cmVjdCB4PSIxMCIgeT0iMjAiIHdpZHRoPSI0OC44MDcyMjgwODgzNzg5
MDYiIGhlaWdodD0iMzguNTA2MDIzNDA2OTgyNDIiIHN0cm9rZT0iIzAwMDAwMCIgZmlsbD0iI2Zm
ZmZmZiIgc3R5bGU9InN0cm9rZS13aWR0aDogMjsiPjwvcmVjdD48dGV4dCB4PSIyMCIgeT0iNDQu
NjUwNjAyMzQwNjk4MjQiIHN0eWxlPSJmb250LXNpemU6IDE2cHg7IGZvbnQtZmFtaWx5OiAmcXVv
dDtBbmRhbGUgTW9ubyZxdW90OywgbW9ub3NwYWNlOyI+PHRzcGFuIHg9IjIwIj5BcHA8L3RzcGFu
PjwvdGV4dD48L2c+PGcgY2xhc3M9ImFjdG9yIj48cmVjdCB4PSIxMCIgeT0iMTAzMy4xMzI1MjYz
OTc3MDUiIHdpZHRoPSI0OC44MDcyMjgwODgzNzg5MDYiIGhlaWdodD0iMzguNTA2MDIzNDA2OTgy
NDIiIHN0cm9rZT0iIzAwMDAwMCIgZmlsbD0iI2ZmZmZmZiIgc3R5bGU9InN0cm9rZS13aWR0aDog
MjsiPjwvcmVjdD48dGV4dCB4PSIyMCIgeT0iMTA1Ny43ODMxMjg3Mzg0MDMzIiBzdHlsZT0iZm9u
dC1zaXplOiAxNnB4OyBmb250LWZhbWlseTogJnF1b3Q7QW5kYWxlIE1vbm8mcXVvdDssIG1vbm9z
cGFjZTsiPjx0c3BhbiB4PSIyMCI+QXBwPC90c3Bhbj48L3RleHQ+PC9nPjxsaW5lIHgxPSIzNC40
MDM2MTQwNDQxODk0NSIgeDI9IjM0LjQwMzYxNDA0NDE4OTQ1IiB5MT0iNTguNTA2MDIzNDA2OTgy
NDIiIHkyPSIxMDMzLjEzMjUyNjM5NzcwNSIgc3Ryb2tlPSIjMDAwMDAwIiBmaWxsPSJub25lIiBz
dHlsZT0ic3Ryb2tlLXdpZHRoOiAyOyI+PC9saW5lPjxnIGNsYXNzPSJhY3RvciI+PHJlY3QgeD0i
MjUyLjA0MjE1NjIxOTQ4MjQyIiB5PSIyMCIgd2lkdGg9IjE2NC4wMjQwOTM2Mjc5Mjk3IiBoZWln
aHQ9IjM4LjUwNjAyMzQwNjk4MjQyIiBzdHJva2U9IiMwMDAwMDAiIGZpbGw9IiNmZmZmZmYiIHN0
eWxlPSJzdHJva2Utd2lkdGg6IDI7Ij48L3JlY3Q+PHRleHQgeD0iMjYyLjA0MjE1NjIxOTQ4MjQi
IHk9IjQ0LjY1MDYwMjM0MDY5ODI0IiBzdHlsZT0iZm9udC1zaXplOiAxNnB4OyBmb250LWZhbWls
eTogJnF1b3Q7QW5kYWxlIE1vbm8mcXVvdDssIG1vbm9zcGFjZTsiPjx0c3BhbiB4PSIyNjIuMDQy
MTU2MjE5NDgyNCI+QU5HTEUgRnJvbnQtZW5kPC90c3Bhbj48L3RleHQ+PC9nPjxnIGNsYXNzPSJh
Y3RvciI+PHJlY3QgeD0iMjUyLjA0MjE1NjIxOTQ4MjQyIiB5PSIxMDMzLjEzMjUyNjM5NzcwNSIg
d2lkdGg9IjE2NC4wMjQwOTM2Mjc5Mjk3IiBoZWlnaHQ9IjM4LjUwNjAyMzQwNjk4MjQyIiBzdHJv
a2U9IiMwMDAwMDAiIGZpbGw9IiNmZmZmZmYiIHN0eWxlPSJzdHJva2Utd2lkdGg6IDI7Ij48L3Jl
Y3Q+PHRleHQgeD0iMjYyLjA0MjE1NjIxOTQ4MjQiIHk9IjEwNTcuNzgzMTI4NzM4NDAzMyIgc3R5
bGU9ImZvbnQtc2l6ZTogMTZweDsgZm9udC1mYW1pbHk6ICZxdW90O0FuZGFsZSBNb25vJnF1b3Q7
LCBtb25vc3BhY2U7Ij48dHNwYW4geD0iMjYyLjA0MjE1NjIxOTQ4MjQiPkFOR0xFIEZyb250LWVu
ZDwvdHNwYW4+PC90ZXh0PjwvZz48bGluZSB4MT0iMzM0LjA1NDIwMzAzMzQ0NzI3IiB4Mj0iMzM0
LjA1NDIwMzAzMzQ0NzI3IiB5MT0iNTguNTA2MDIzNDA2OTgyNDIiIHkyPSIxMDMzLjEzMjUyNjM5
NzcwNSIgc3Ryb2tlPSIjMDAwMDAwIiBmaWxsPSJub25lIiBzdHlsZT0ic3Ryb2tlLXdpZHRoOiAy
OyI+PC9saW5lPjxnIGNsYXNzPSJhY3RvciI+PHJlY3QgeD0iNTIyLjg4NTUyNDc0OTc1NTkiIHk9
IjIwIiB3aWR0aD0iMTY0LjAyNDA5MzYyNzkyOTciIGhlaWdodD0iMzguNTA2MDIzNDA2OTgyNDIi
IHN0cm9rZT0iIzAwMDAwMCIgZmlsbD0iI2ZmZmZmZiIgc3R5bGU9InN0cm9rZS13aWR0aDogMjsi
PjwvcmVjdD48dGV4dCB4PSI1MzIuODg1NTI0NzQ5NzU1OSIgeT0iNDQuNjUwNjAyMzQwNjk4MjQi
IHN0eWxlPSJmb250LXNpemU6IDE2cHg7IGZvbnQtZmFtaWx5OiAmcXVvdDtBbmRhbGUgTW9ubyZx
dW90OywgbW9ub3NwYWNlOyI+PHRzcGFuIHg9IjUzMi44ODU1MjQ3NDk3NTU5Ij5WdWxrYW4gQmFj
ay1lbmQ8L3RzcGFuPjwvdGV4dD48L2c+PGcgY2xhc3M9ImFjdG9yIj48cmVjdCB4PSI1MjIuODg1
NTI0NzQ5NzU1OSIgeT0iMTAzMy4xMzI1MjYzOTc3MDUiIHdpZHRoPSIxNjQuMDI0MDkzNjI3OTI5
NyIgaGVpZ2h0PSIzOC41MDYwMjM0MDY5ODI0MiIgc3Ryb2tlPSIjMDAwMDAwIiBmaWxsPSIjZmZm
ZmZmIiBzdHlsZT0ic3Ryb2tlLXdpZHRoOiAyOyI+PC9yZWN0Pjx0ZXh0IHg9IjUzMi44ODU1MjQ3
NDk3NTU5IiB5PSIxMDU3Ljc4MzEyODczODQwMzMiIHN0eWxlPSJmb250LXNpemU6IDE2cHg7IGZv
bnQtZmFtaWx5OiAmcXVvdDtBbmRhbGUgTW9ubyZxdW90OywgbW9ub3NwYWNlOyI+PHRzcGFuIHg9
IjUzMi44ODU1MjQ3NDk3NTU5Ij5WdWxrYW4gQmFjay1lbmQ8L3RzcGFuPjwvdGV4dD48L2c+PGxp
bmUgeDE9IjYwNC44OTc1NzE1NjM3MjA3IiB4Mj0iNjA0Ljg5NzU3MTU2MzcyMDciIHkxPSI1OC41
MDYwMjM0MDY5ODI0MiIgeTI9IjEwMzMuMTMyNTI2Mzk3NzA1IiBzdHJva2U9IiMwMDAwMDAiIGZp
bGw9Im5vbmUiIHN0eWxlPSJzdHJva2Utd2lkdGg6IDI7Ij48L2xpbmU+PGcgY2xhc3M9ImFjdG9y
Ij48cmVjdCB4PSI4MDguMTMyNTExMTM4OTE2IiB5PSIyMCIgd2lkdGg9IjE3My42MjY0OTUzNjEz
MjgxMiIgaGVpZ2h0PSIzOC41MDYwMjM0MDY5ODI0MiIgc3Ryb2tlPSIjMDAwMDAwIiBmaWxsPSIj
ZmZmZmZmIiBzdHlsZT0ic3Ryb2tlLXdpZHRoOiAyOyI+PC9yZWN0Pjx0ZXh0IHg9IjgxOC4xMzI1
MTExMzg5MTYiIHk9IjQ0LjY1MDYwMjM0MDY5ODI0IiBzdHlsZT0iZm9udC1zaXplOiAxNnB4OyBm
b250LWZhbWlseTogJnF1b3Q7QW5kYWxlIE1vbm8mcXVvdDssIG1vbm9zcGFjZTsiPjx0c3BhbiB4
PSI4MTguMTMyNTExMTM4OTE2Ij5BTkdMRSBUcmFuc2xhdG9yPC90c3Bhbj48L3RleHQ+PC9nPjxn
IGNsYXNzPSJhY3RvciI+PHJlY3QgeD0iODA4LjEzMjUxMTEzODkxNiIgeT0iMTAzMy4xMzI1MjYz
OTc3MDUiIHdpZHRoPSIxNzMuNjI2NDk1MzYxMzI4MTIiIGhlaWdodD0iMzguNTA2MDIzNDA2OTgy
NDIiIHN0cm9rZT0iIzAwMDAwMCIgZmlsbD0iI2ZmZmZmZiIgc3R5bGU9InN0cm9rZS13aWR0aDog
MjsiPjwvcmVjdD48dGV4dCB4PSI4MTguMTMyNTExMTM4OTE2IiB5PSIxMDU3Ljc4MzEyODczODQw
MzMiIHN0eWxlPSJmb250LXNpemU6IDE2cHg7IGZvbnQtZmFtaWx5OiAmcXVvdDtBbmRhbGUgTW9u
byZxdW90OywgbW9ub3NwYWNlOyI+PHRzcGFuIHg9IjgxOC4xMzI1MTExMzg5MTYiPkFOR0xFIFRy
YW5zbGF0b3I8L3RzcGFuPjwvdGV4dD48L2c+PGxpbmUgeDE9Ijg5NC45NDU3NTg4MTk1ODAxIiB4
Mj0iODk0Ljk0NTc1ODgxOTU4MDEiIHkxPSI1OC41MDYwMjM0MDY5ODI0MiIgeTI9IjEwMzMuMTMy
NTI2Mzk3NzA1IiBzdHJva2U9IiMwMDAwMDAiIGZpbGw9Im5vbmUiIHN0eWxlPSJzdHJva2Utd2lk
dGg6IDI7Ij48L2xpbmU+PGcgY2xhc3M9ImFjdG9yIj48cmVjdCB4PSIxMDAxLjc1OTAwNjUwMDI0
NDEiIHk9IjIwIiB3aWR0aD0iMjg4Ljg1NTQwNzcxNDg0Mzc1IiBoZWlnaHQ9IjM4LjUwNjAyMzQw
Njk4MjQyIiBzdHJva2U9IiMwMDAwMDAiIGZpbGw9IiNmZmZmZmYiIHN0eWxlPSJzdHJva2Utd2lk
dGg6IDI7Ij48L3JlY3Q+PHRleHQgeD0iMTAxMS43NTkwMDY1MDAyNDQxIiB5PSI0NC42NTA2MDIz
NDA2OTgyNCIgc3R5bGU9ImZvbnQtc2l6ZTogMTZweDsgZm9udC1mYW1pbHk6ICZxdW90O0FuZGFs
ZSBNb25vJnF1b3Q7LCBtb25vc3BhY2U7Ij48dHNwYW4geD0iMTAxMS43NTkwMDY1MDAyNDQxIj5M
aW5rLVRpbWUgU1BJUi1WIFRyYW5zZm9ybWVyPC90c3Bhbj48L3RleHQ+PC9nPjxnIGNsYXNzPSJh
Y3RvciI+PHJlY3QgeD0iMTAwMS43NTkwMDY1MDAyNDQxIiB5PSIxMDMzLjEzMjUyNjM5NzcwNSIg
d2lkdGg9IjI4OC44NTU0MDc3MTQ4NDM3NSIgaGVpZ2h0PSIzOC41MDYwMjM0MDY5ODI0MiIgc3Ry
b2tlPSIjMDAwMDAwIiBmaWxsPSIjZmZmZmZmIiBzdHlsZT0ic3Ryb2tlLXdpZHRoOiAyOyI+PC9y
ZWN0Pjx0ZXh0IHg9IjEwMTEuNzU5MDA2NTAwMjQ0MSIgeT0iMTA1Ny43ODMxMjg3Mzg0MDMzIiBz
dHlsZT0iZm9udC1zaXplOiAxNnB4OyBmb250LWZhbWlseTogJnF1b3Q7QW5kYWxlIE1vbm8mcXVv
dDssIG1vbm9zcGFjZTsiPjx0c3BhbiB4PSIxMDExLjc1OTAwNjUwMDI0NDEiPkxpbmstVGltZSBT
UElSLVYgVHJhbnNmb3JtZXI8L3RzcGFuPjwvdGV4dD48L2c+PGxpbmUgeDE9IjExNDYuMTg2NzEw
MzU3NjY2IiB4Mj0iMTE0Ni4xODY3MTAzNTc2NjYiIHkxPSI1OC41MDYwMjM0MDY5ODI0MiIgeTI9
IjEwMzMuMTMyNTI2Mzk3NzA1IiBzdHJva2U9IiMwMDAwMDAiIGZpbGw9Im5vbmUiIHN0eWxlPSJz
dHJva2Utd2lkdGg6IDI7Ij48L2xpbmU+PGcgY2xhc3M9InNpZ25hbCI+PHRleHQgeD0iODguMjEw
ODQyMTMyNTY4MzYiIHk9Ijg4LjkwMzYxNDA0NDE4OTQ1IiBzdHlsZT0iZm9udC1zaXplOiAxNnB4
OyBmb250LWZhbWlseTogJnF1b3Q7QW5kYWxlIE1vbm8mcXVvdDssIG1vbm9zcGFjZTsiPjx0c3Bh
biB4PSI4OC4yMTA4NDIxMzI1NjgzNiI+Z2xDb21waWxlU2hhZGVyIChWUyk8L3RzcGFuPjwvdGV4
dD48bGluZSB4MT0iMzQuNDAzNjE0MDQ0MTg5NDUiIHgyPSIzMzQuMDU0MjAzMDMzNDQ3MjciIHkx
PSI5Ny4wMTIwNDY4MTM5NjQ4NCIgeTI9Ijk3LjAxMjA0NjgxMzk2NDg0IiBzdHJva2U9IiMwMDAw
MDAiIGZpbGw9Im5vbmUiIHN0eWxlPSJzdHJva2Utd2lkdGg6IDI7IG1hcmtlci1lbmQ6IHVybCgm
cXVvdDsjbWFya2VyQXJyb3dCbG9jayZxdW90Oyk7Ij48L2xpbmU+PC9nPjxnIGNsYXNzPSJzaWdu
YWwiPjx0ZXh0IHg9IjM4Ny44NjE0MzExMjE4MjYyIiB5PSIxMjcuNDA5NjM3NDUxMTcxODgiIHN0
eWxlPSJmb250LXNpemU6IDE2cHg7IGZvbnQtZmFtaWx5OiAmcXVvdDtBbmRhbGUgTW9ubyZxdW90
OywgbW9ub3NwYWNlOyI+PHRzcGFuIHg9IjM4Ny44NjE0MzExMjE4MjYyIj5TaGFkZXJWazo6Y29t
cGlsZTwvdHNwYW4+PC90ZXh0PjxsaW5lIHgxPSIzMzQuMDU0MjAzMDMzNDQ3MjciIHgyPSI2MDQu
ODk3NTcxNTYzNzIwNyIgeTE9IjEzNS41MTgwNzAyMjA5NDcyNyIgeTI9IjEzNS41MTgwNzAyMjA5
NDcyNyIgc3Ryb2tlPSIjMDAwMDAwIiBmaWxsPSJub25lIiBzdHlsZT0ic3Ryb2tlLXdpZHRoOiAy
OyBtYXJrZXItZW5kOiB1cmwoJnF1b3Q7I21hcmtlckFycm93QmxvY2smcXVvdDspOyI+PC9saW5l
PjwvZz48ZyBjbGFzcz0ic2lnbmFsIj48dGV4dCB4PSI2OTcuMTA4NDEzNjk2Mjg5MSIgeT0iMTY1
LjkxNTY2MDg1ODE1NDMiIHN0eWxlPSJmb250LXNpemU6IDE2cHg7IGZvbnQtZmFtaWx5OiAmcXVv
dDtBbmRhbGUgTW9ubyZxdW90OywgbW9ub3NwYWNlOyI+PHRzcGFuIHg9IjY5Ny4xMDg0MTM2OTYy
ODkxIj5zaDo6Q29tcGlsZTwvdHNwYW4+PC90ZXh0PjxsaW5lIHgxPSI2MDQuODk3NTcxNTYzNzIw
NyIgeDI9Ijg5NC45NDU3NTg4MTk1ODAxIiB5MT0iMTc0LjAyNDA5MzYyNzkyOTciIHkyPSIxNzQu
MDI0MDkzNjI3OTI5NyIgc3Ryb2tlPSIjMDAwMDAwIiBmaWxsPSJub25lIiBzdHlsZT0ic3Ryb2tl
LXdpZHRoOiAyOyBtYXJrZXItZW5kOiB1cmwoJnF1b3Q7I21hcmtlckFycm93QmxvY2smcXVvdDsp
OyI+PC9saW5lPjwvZz48ZyBjbGFzcz0ic2lnbmFsIj48dGV4dCB4PSI1NTIuMDg0MzIwMDY4MzU5
NCIgeT0iMjA0LjQyMTY4NDI2NTEzNjcyIiBzdHlsZT0iZm9udC1zaXplOiAxNnB4OyBmb250LWZh
bWlseTogJnF1b3Q7QW5kYWxlIE1vbm8mcXVvdDssIG1vbm9zcGFjZTsiPjx0c3BhbiB4PSI1NTIu
MDg0MzIwMDY4MzU5NCI+cmV0dXJuIFNQSVItVjwvdHNwYW4+PC90ZXh0PjxsaW5lIHgxPSI4OTQu
OTQ1NzU4ODE5NTgwMSIgeDI9IjMzNC4wNTQyMDMwMzM0NDcyNyIgeTE9IjIxMi41MzAxMTcwMzQ5
MTIxIiB5Mj0iMjEyLjUzMDExNzAzNDkxMjEiIHN0cm9rZT0iIzAwMDAwMCIgZmlsbD0ibm9uZSIg
c3R5bGU9InN0cm9rZS13aWR0aDogMjsgc3Ryb2tlLWRhc2hhcnJheTogNiwgMjsgbWFya2VyLWVu
ZDogdXJsKCZxdW90OyNtYXJrZXJBcnJvd0Jsb2NrJnF1b3Q7KTsiPjwvbGluZT48L2c+PGcgY2xh
c3M9Im5vdGUiPjxyZWN0IHg9IjM1NC4wNTQyMDMwMzM0NDcyNyIgeT0iMjMyLjUzMDExNzAzNDkx
MjEiIHdpZHRoPSIyMzAuODQzMzY4NTMwMjczNDQiIGhlaWdodD0iNjYuOTA2MDI4NzQ3NTU4NiIg
c3Ryb2tlPSIjMDAwMDAwIiBmaWxsPSIjZmZmZmZmIiBzdHlsZT0ic3Ryb2tlLXdpZHRoOiAyOyI+
PC9yZWN0Pjx0ZXh0IHg9IjM1OS4wNTQyMDMwMzM0NDcyNyIgeT0iMjUyLjE4MDcxOTM3NTYxMDM1
IiBzdHlsZT0iZm9udC1zaXplOiAxNnB4OyBmb250LWZhbWlseTogJnF1b3Q7QW5kYWxlIE1vbm8m
cXVvdDssIG1vbm9zcGFjZTsiPjx0c3BhbiB4PSIzNTkuMDU0MjAzMDMzNDQ3MjciPlNQSVItViBp
cyB1c2luZyBib2d1czwvdHNwYW4+PHRzcGFuIGR5PSIxLjJlbSIgeD0iMzU5LjA1NDIwMzAzMzQ0
NzI3Ij5kZWNvcmF0aW9ucyB0byBiZTwvdHNwYW4+PHRzcGFuIGR5PSIxLjJlbSIgeD0iMzU5LjA1
NDIwMzAzMzQ0NzI3Ij5jb3JyZWN0ZWQgYXQgbGluayB0aW1lLjwvdHNwYW4+PC90ZXh0PjwvZz48
ZyBjbGFzcz0ibm90ZSI+PHJlY3QgeD0iNTQuNDAzNjE0MDQ0MTg5NDUiIHk9IjMxOS40MzYxNDU3
ODI0NzA3IiB3aWR0aD0iMjMwLjg0MzM2ODUzMDI3MzQ0IiBoZWlnaHQ9IjI4LjUwNjAyMzQwNjk4
MjQyMiIgc3Ryb2tlPSIjMDAwMDAwIiBmaWxsPSIjZmZmZmZmIiBzdHlsZT0ic3Ryb2tlLXdpZHRo
OiAyOyI+PC9yZWN0Pjx0ZXh0IHg9IjU5LjQwMzYxNDA0NDE4OTQ1IiB5PSIzMzkuMDg2NzQ4MTIz
MTY4OTUiIHN0eWxlPSJmb250LXNpemU6IDE2cHg7IGZvbnQtZmFtaWx5OiAmcXVvdDtBbmRhbGUg
TW9ubyZxdW90OywgbW9ub3NwYWNlOyI+PHRzcGFuIHg9IjU5LjQwMzYxNDA0NDE4OTQ1Ij5TYW1l
IGZvciBGUywgR1MsIGV0Yy4uLjwvdHNwYW4+PC90ZXh0PjwvZz48ZyBjbGFzcz0ic2lnbmFsIj48
dGV4dCB4PSI4My40MDk2MzM2MzY0NzQ2MSIgeT0iMzc4LjMzOTc1OTgyNjY2MDE2IiBzdHlsZT0i
Zm9udC1zaXplOiAxNnB4OyBmb250LWZhbWlseTogJnF1b3Q7QW5kYWxlIE1vbm8mcXVvdDssIG1v
bm9zcGFjZTsiPjx0c3BhbiB4PSI4My40MDk2MzM2MzY0NzQ2MSI+Z2xDcmVhdGVQcm9ncmFtICgu
Li4pPC90c3Bhbj48L3RleHQ+PGxpbmUgeDE9IjM0LjQwMzYxNDA0NDE4OTQ1IiB4Mj0iMzM0LjA1
NDIwMzAzMzQ0NzI3IiB5MT0iMzg2LjQ0ODE5MjU5NjQzNTU1IiB5Mj0iMzg2LjQ0ODE5MjU5NjQz
NTU1IiBzdHJva2U9IiMwMDAwMDAiIGZpbGw9Im5vbmUiIHN0eWxlPSJzdHJva2Utd2lkdGg6IDI7
IG1hcmtlci1lbmQ6IHVybCgmcXVvdDsjbWFya2VyQXJyb3dCbG9jayZxdW90Oyk7Ij48L2xpbmU+
PC9nPjxnIGNsYXNzPSJzaWduYWwiPjx0ZXh0IHg9Ijg4LjIxMDg0MjEzMjU2ODM2IiB5PSI0MTYu
ODQ1NzgzMjMzNjQyNiIgc3R5bGU9ImZvbnQtc2l6ZTogMTZweDsgZm9udC1mYW1pbHk6ICZxdW90
O0FuZGFsZSBNb25vJnF1b3Q7LCBtb25vc3BhY2U7Ij48dHNwYW4geD0iODguMjEwODQyMTMyNTY4
MzYiPmdsQXR0YWNoU2hhZGVyICguLi4pPC90c3Bhbj48L3RleHQ+PGxpbmUgeDE9IjM0LjQwMzYx
NDA0NDE4OTQ1IiB4Mj0iMzM0LjA1NDIwMzAzMzQ0NzI3IiB5MT0iNDI0Ljk1NDIxNjAwMzQxNzk3
IiB5Mj0iNDI0Ljk1NDIxNjAwMzQxNzk3IiBzdHJva2U9IiMwMDAwMDAiIGZpbGw9Im5vbmUiIHN0
eWxlPSJzdHJva2Utd2lkdGg6IDI7IG1hcmtlci1lbmQ6IHVybCgmcXVvdDsjbWFya2VyQXJyb3dC
bG9jayZxdW90Oyk7Ij48L2xpbmU+PC9nPjxnIGNsYXNzPSJzaWduYWwiPjx0ZXh0IHg9IjEyMS44
MTMyNDc2ODA2NjQwNiIgeT0iNDU1LjM1MTgwNjY0MDYyNSIgc3R5bGU9ImZvbnQtc2l6ZTogMTZw
eDsgZm9udC1mYW1pbHk6ICZxdW90O0FuZGFsZSBNb25vJnF1b3Q7LCBtb25vc3BhY2U7Ij48dHNw
YW4geD0iMTIxLjgxMzI0NzY4MDY2NDA2Ij5nbExpbmtQcm9ncmFtPC90c3Bhbj48L3RleHQ+PGxp
bmUgeDE9IjM0LjQwMzYxNDA0NDE4OTQ1IiB4Mj0iMzM0LjA1NDIwMzAzMzQ0NzI3IiB5MT0iNDYz
LjQ2MDIzOTQxMDQwMDQiIHkyPSI0NjMuNDYwMjM5NDEwNDAwNCIgc3Ryb2tlPSIjMDAwMDAwIiBm
aWxsPSJub25lIiBzdHlsZT0ic3Ryb2tlLXdpZHRoOiAyOyBtYXJrZXItZW5kOiB1cmwoJnF1b3Q7
I21hcmtlckFycm93QmxvY2smcXVvdDspOyI+PC9saW5lPjwvZz48ZyBjbGFzcz0ic2lnbmFsIj48
dGV4dCB4PSIzOTcuNDYzODQwNDg0NjE5MTQiIHk9IjQ5My44NTc4MzAwNDc2MDc0IiBzdHlsZT0i
Zm9udC1zaXplOiAxNnB4OyBmb250LWZhbWlseTogJnF1b3Q7QW5kYWxlIE1vbm8mcXVvdDssIG1v
bm9zcGFjZTsiPjx0c3BhbiB4PSIzOTcuNDYzODQwNDg0NjE5MTQiPlByb2dyYW1Wazo6bGluazwv
dHNwYW4+PC90ZXh0PjxsaW5lIHgxPSIzMzQuMDU0MjAzMDMzNDQ3MjciIHgyPSI2MDQuODk3NTcx
NTYzNzIwNyIgeTE9IjUwMS45NjYyNjI4MTczODI4IiB5Mj0iNTAxLjk2NjI2MjgxNzM4MjgiIHN0
cm9rZT0iIzAwMDAwMCIgZmlsbD0ibm9uZSIgc3R5bGU9InN0cm9rZS13aWR0aDogMjsgbWFya2Vy
LWVuZDogdXJsKCZxdW90OyNtYXJrZXJBcnJvd0Jsb2NrJnF1b3Q7KTsiPjwvbGluZT48L2c+PGcg
Y2xhc3M9Im5vdGUiPjxyZWN0IHg9IjYyNC44OTc1NzE1NjM3MjA3IiB5PSI1MjEuOTY2MjYyODE3
MzgyOCIgd2lkdGg9IjI1MC4wNDgxODcyNTU4NTkzOCIgaGVpZ2h0PSI0Ny43MDYwMjQxNjk5MjE4
NzUiIHN0cm9rZT0iIzAwMDAwMCIgZmlsbD0iI2ZmZmZmZiIgc3R5bGU9InN0cm9rZS13aWR0aDog
MjsiPjwvcmVjdD48dGV4dCB4PSI2MjkuODk3NTcxNTYzNzIwNyIgeT0iNTQxLjYxNjg2NTE1ODA4
MSIgc3R5bGU9ImZvbnQtc2l6ZTogMTZweDsgZm9udC1mYW1pbHk6ICZxdW90O0FuZGFsZSBNb25v
JnF1b3Q7LCBtb25vc3BhY2U7Ij48dHNwYW4geD0iNjI5Ljg5NzU3MTU2MzcyMDciPlByb2dyYW1W
ayBpbml0cyB1bmlmb3Jtcyw8L3RzcGFuPjx0c3BhbiBkeT0iMS4yZW0iIHg9IjYyOS44OTc1NzE1
NjM3MjA3Ij5sYXlvdXRzLCBhbmQgZGVzY3JpcHRvcnMuPC90c3Bhbj48L3RleHQ+PC9nPjxnIGNs
YXNzPSJzaWduYWwiPjx0ZXh0IHg9IjcyNi43MTY4Mzg4MzY2Njk5IiB5PSI2MDAuMDY5ODc3NjI0
NTExNyIgc3R5bGU9ImZvbnQtc2l6ZTogMTZweDsgZm9udC1mYW1pbHk6ICZxdW90O0FuZGFsZSBN
b25vJnF1b3Q7LCBtb25vc3BhY2U7Ij48dHNwYW4geD0iNzI2LjcxNjgzODgzNjY2OTkiPkdsc2xh
bmdXcmFwcGVyVms6OkdldFNoYWRlckNvZGU8L3RzcGFuPjwvdGV4dD48bGluZSB4MT0iNjA0Ljg5
NzU3MTU2MzcyMDciIHgyPSIxMTQ2LjE4NjcxMDM1NzY2NiIgeTE9IjYwOC4xNzgzMTAzOTQyODcx
IiB5Mj0iNjA4LjE3ODMxMDM5NDI4NzEiIHN0cm9rZT0iIzAwMDAwMCIgZmlsbD0ibm9uZSIgc3R5
bGU9InN0cm9rZS13aWR0aDogMjsgbWFya2VyLWVuZDogdXJsKCZxdW90OyNtYXJrZXJBcnJvd0Js
b2NrJnF1b3Q7KTsiPjwvbGluZT48L2c+PGcgY2xhc3M9InNpZ25hbCI+PHRleHQgeD0iNjc4Ljcw
NDc5OTY1MjA5OTYiIHk9IjYzOC41NzU5MDEwMzE0OTQxIiBzdHlsZT0iZm9udC1zaXplOiAxNnB4
OyBmb250LWZhbWlseTogJnF1b3Q7QW5kYWxlIE1vbm8mcXVvdDssIG1vbm9zcGFjZTsiPjx0c3Bh
biB4PSI2NzguNzA0Nzk5NjUyMDk5NiI+cmV0cmlldmUgU1BJUi1WIGFuZCBkZXRlcm1pbmUgZGVj
b3JhdGlvbnM8L3RzcGFuPjwvdGV4dD48bGluZSB4MT0iMTE0Ni4xODY3MTAzNTc2NjYiIHgyPSI2
MDQuODk3NTcxNTYzNzIwNyIgeTE9IjY0Ni42ODQzMzM4MDEyNjk1IiB5Mj0iNjQ2LjY4NDMzMzgw
MTI2OTUiIHN0cm9rZT0iIzAwMDAwMCIgZmlsbD0ibm9uZSIgc3R5bGU9InN0cm9rZS13aWR0aDog
Mjsgc3Ryb2tlLWRhc2hhcnJheTogNiwgMjsgbWFya2VyLWVuZDogdXJsKCZxdW90OyNtYXJrZXJB
cnJvd0Jsb2NrJnF1b3Q7KTsiPjwvbGluZT48L2c+PGcgY2xhc3M9InNpZ25hbCI+PHRleHQgeD0i
NDAyLjI1OTAyMTc1OTAzMzIiIHk9IjY3Ny4wODE5MjQ0Mzg0NzY2IiBzdHlsZT0iZm9udC1zaXpl
OiAxNnB4OyBmb250LWZhbWlseTogJnF1b3Q7QW5kYWxlIE1vbm8mcXVvdDssIG1vbm9zcGFjZTsi
Pjx0c3BhbiB4PSI0MDIuMjU5MDIxNzU5MDMzMiI+cmV0dXJuIHN1Y2Nlc3M8L3RzcGFuPjwvdGV4
dD48bGluZSB4MT0iNjA0Ljg5NzU3MTU2MzcyMDciIHgyPSIzMzQuMDU0MjAzMDMzNDQ3MjciIHkx
PSI2ODUuMTkwMzU3MjA4MjUyIiB5Mj0iNjg1LjE5MDM1NzIwODI1MiIgc3Ryb2tlPSIjMDAwMDAw
IiBmaWxsPSJub25lIiBzdHlsZT0ic3Ryb2tlLXdpZHRoOiAyOyBzdHJva2UtZGFzaGFycmF5OiA2
LCAyOyBtYXJrZXItZW5kOiB1cmwoJnF1b3Q7I21hcmtlckFycm93QmxvY2smcXVvdDspOyI+PC9s
aW5lPjwvZz48ZyBjbGFzcz0ibm90ZSI+PHJlY3QgeD0iNTQuNDAzNjE0MDQ0MTg5NDUiIHk9Ijcw
NS4xOTAzNTcyMDgyNTIiIHdpZHRoPSIyNTkuNjUwNTg4OTg5MjU3OCIgaGVpZ2h0PSIyOC41MDYw
MjM0MDY5ODI0MjIiIHN0cm9rZT0iIzAwMDAwMCIgZmlsbD0iI2ZmZmZmZiIgc3R5bGU9InN0cm9r
ZS13aWR0aDogMjsiPjwvcmVjdD48dGV4dCB4PSI1OS40MDM2MTQwNDQxODk0NSIgeT0iNzI0Ljg0
MDk1OTU0ODk1MDIiIHN0eWxlPSJmb250LXNpemU6IDE2cHg7IGZvbnQtZmFtaWx5OiAmcXVvdDtB
bmRhbGUgTW9ubyZxdW90OywgbW9ub3NwYWNlOyI+PHRzcGFuIHg9IjU5LjQwMzYxNDA0NDE4OTQ1
Ij5BcHAgZXhlY3V0aW9uIGNvbnRpbnVlcy4uLjwvdHNwYW4+PC90ZXh0PjwvZz48ZyBjbGFzcz0i
c2lnbmFsIj48dGV4dCB4PSI3My44MDcyMjQyNzM2ODE2NCIgeT0iNzY0LjA5Mzk3MTI1MjQ0MTQi
IHN0eWxlPSJmb250LXNpemU6IDE2cHg7IGZvbnQtZmFtaWx5OiAmcXVvdDtBbmRhbGUgTW9ubyZx
dW90OywgbW9ub3NwYWNlOyI+PHRzcGFuIHg9IjczLjgwNzIyNDI3MzY4MTY0Ij5nbERyYXdBcnJh
eXMgKGFueSBkcmF3KTwvdHNwYW4+PC90ZXh0PjxsaW5lIHgxPSIzNC40MDM2MTQwNDQxODk0NSIg
eDI9IjMzNC4wNTQyMDMwMzM0NDcyNyIgeTE9Ijc3Mi4yMDI0MDQwMjIyMTY4IiB5Mj0iNzcyLjIw
MjQwNDAyMjIxNjgiIHN0cm9rZT0iIzAwMDAwMCIgZmlsbD0ibm9uZSIgc3R5bGU9InN0cm9rZS13
aWR0aDogMjsgbWFya2VyLWVuZDogdXJsKCZxdW90OyNtYXJrZXJBcnJvd0Jsb2NrJnF1b3Q7KTsi
PjwvbGluZT48L2c+PGcgY2xhc3M9InNpZ25hbCI+PHRleHQgeD0iMzY4LjY1NjYxMjM5NjI0MDIz
IiB5PSI4MDIuNTk5OTk0NjU5NDIzOCIgc3R5bGU9ImZvbnQtc2l6ZTogMTZweDsgZm9udC1mYW1p
bHk6ICZxdW90O0FuZGFsZSBNb25vJnF1b3Q7LCBtb25vc3BhY2U7Ij48dHNwYW4geD0iMzY4LjY1
NjYxMjM5NjI0MDIzIj5Db250ZXh0Vms6OmRyYXdBcnJheXM8L3RzcGFuPjwvdGV4dD48bGluZSB4
MT0iMzM0LjA1NDIwMzAzMzQ0NzI3IiB4Mj0iNjA0Ljg5NzU3MTU2MzcyMDciIHkxPSI4MTAuNzA4
NDI3NDI5MTk5MiIgeTI9IjgxMC43MDg0Mjc0MjkxOTkyIiBzdHJva2U9IiMwMDAwMDAiIGZpbGw9
Im5vbmUiIHN0eWxlPSJzdHJva2Utd2lkdGg6IDI7IG1hcmtlci1lbmQ6IHVybCgmcXVvdDsjbWFy
a2VyQXJyb3dCbG9jayZxdW90Oyk7Ij48L2xpbmU+PC9nPjxnIGNsYXNzPSJzaWduYWwiPjx0ZXh0
IHg9IjcyMS45MTU2NDU1OTkzNjUyIiB5PSI4NDEuMTA2MDE4MDY2NDA2MiIgc3R5bGU9ImZvbnQt
c2l6ZTogMTZweDsgZm9udC1mYW1pbHk6ICZxdW90O0FuZGFsZSBNb25vJnF1b3Q7LCBtb25vc3Bh
Y2U7Ij48dHNwYW4geD0iNzIxLjkxNTY0NTU5OTM2NTIiPkdsc2xhbmdXcmFwcGVyVms6OlRyYW5z
Zm9ybVNwaXJWPC90c3Bhbj48L3RleHQ+PGxpbmUgeDE9IjYwNC44OTc1NzE1NjM3MjA3IiB4Mj0i
MTE0Ni4xODY3MTAzNTc2NjYiIHkxPSI4NDkuMjE0NDUwODM2MTgxNiIgeTI9Ijg0OS4yMTQ0NTA4
MzYxODE2IiBzdHJva2U9IiMwMDAwMDAiIGZpbGw9Im5vbmUiIHN0eWxlPSJzdHJva2Utd2lkdGg6
IDI7IG1hcmtlci1lbmQ6IHVybCgmcXVvdDsjbWFya2VyQXJyb3dCbG9jayZxdW90Oyk7Ij48L2xp
bmU+PC9nPjxnIGNsYXNzPSJzaWduYWwiPjx0ZXh0IHg9Ijc1NS41MTgwNDczMzI3NjM3IiB5PSI4
NzkuNjEyMDQxNDczMzg4NyIgc3R5bGU9ImZvbnQtc2l6ZTogMTZweDsgZm9udC1mYW1pbHk6ICZx
dW90O0FuZGFsZSBNb25vJnF1b3Q7LCBtb25vc3BhY2U7Ij48dHNwYW4geD0iNzU1LjUxODA0NzMz
Mjc2MzciPnJldHVybiB0cmFuc2Zvcm1lZCBTUElSLVY8L3RzcGFuPjwvdGV4dD48bGluZSB4MT0i
MTE0Ni4xODY3MTAzNTc2NjYiIHgyPSI2MDQuODk3NTcxNTYzNzIwNyIgeTE9Ijg4Ny43MjA0NzQy
NDMxNjQxIiB5Mj0iODg3LjcyMDQ3NDI0MzE2NDEiIHN0cm9rZT0iIzAwMDAwMCIgZmlsbD0ibm9u
ZSIgc3R5bGU9InN0cm9rZS13aWR0aDogMjsgc3Ryb2tlLWRhc2hhcnJheTogNiwgMjsgbWFya2Vy
LWVuZDogdXJsKCZxdW90OyNtYXJrZXJBcnJvd0Jsb2NrJnF1b3Q7KTsiPjwvbGluZT48L2c+PGcg
Y2xhc3M9Im5vdGUiPjxyZWN0IHg9IjYyNC44OTc1NzE1NjM3MjA3IiB5PSI5MDcuNzIwNDc0MjQz
MTY0MSIgd2lkdGg9IjIzMC44NDMzNjg1MzAyNzM0NCIgaGVpZ2h0PSI2Ni45MDYwMjg3NDc1NTg2
IiBzdHJva2U9IiMwMDAwMDAiIGZpbGw9IiNmZmZmZmYiIHN0eWxlPSJzdHJva2Utd2lkdGg6IDI7
Ij48L3JlY3Q+PHRleHQgeD0iNjI5Ljg5NzU3MTU2MzcyMDciIHk9IjkyNy4zNzEwNzY1ODM4NjIz
IiBzdHlsZT0iZm9udC1zaXplOiAxNnB4OyBmb250LWZhbWlseTogJnF1b3Q7QW5kYWxlIE1vbm8m
cXVvdDssIG1vbm9zcGFjZTsiPjx0c3BhbiB4PSI2MjkuODk3NTcxNTYzNzIwNyI+V2UgaW5pdCBW
a1NoYWRlck1vZHVsZXM8L3RzcGFuPjx0c3BhbiBkeT0iMS4yZW0iIHg9IjYyOS44OTc1NzE1NjM3
MjA3Ij5hbmQgVmtQaXBlbGluZSB0aGVuPC90c3Bhbj48dHNwYW4gZHk9IjEuMmVtIiB4PSI2Mjku
ODk3NTcxNTYzNzIwNyI+cmVjb3JkIHRoZSBkcmF3LjwvdHNwYW4+PC90ZXh0PjwvZz48ZyBjbGFz
cz0ic2lnbmFsIj48dGV4dCB4PSI0MDIuMjU5MDIxNzU5MDMzMiIgeT0iMTAwNS4wMjQwOTM2Mjc5
Mjk3IiBzdHlsZT0iZm9udC1zaXplOiAxNnB4OyBmb250LWZhbWlseTogJnF1b3Q7QW5kYWxlIE1v
bm8mcXVvdDssIG1vbm9zcGFjZTsiPjx0c3BhbiB4PSI0MDIuMjU5MDIxNzU5MDMzMiI+cmV0dXJu
IHN1Y2Nlc3M8L3RzcGFuPjwvdGV4dD48bGluZSB4MT0iNjA0Ljg5NzU3MTU2MzcyMDciIHgyPSIz
MzQuMDU0MjAzMDMzNDQ3MjciIHkxPSIxMDEzLjEzMjUyNjM5NzcwNTEiIHkyPSIxMDEzLjEzMjUy
NjM5NzcwNTEiIHN0cm9rZT0iIzAwMDAwMCIgZmlsbD0ibm9uZSIgc3R5bGU9InN0cm9rZS13aWR0
aDogMjsgc3Ryb2tlLWRhc2hhcnJheTogNiwgMjsgbWFya2VyLWVuZDogdXJsKCZxdW90OyNtYXJr
ZXJBcnJvd0Jsb2NrJnF1b3Q7KTsiPjwvbGluZT48L2c+PC9zdmc+ClwgTm8gbmV3bGluZSBhdCBl
bmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFO
R0xFL3JlbmRlcmVyL3Z1bGthbi9saW51eC9EbWFCdWZJbWFnZVNpYmxpbmdWa0xpbnV4LmNwcCBi
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vbGlu
dXgvRG1hQnVmSW1hZ2VTaWJsaW5nVmtMaW51eC5jcHAKaW5kZXggZWIyZjBhNThkNDVkOTIzNzFm
YjI2NjE4MTE2MzMxOGRlY2U1ZGNlMC4uNzk2ZGI3YzI5ZTViNjFhNmE5NjljMTU5OTg2Y2MwNzc2
NTM1MWVhNyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xF
L3JlbmRlcmVyL3Z1bGthbi9saW51eC9EbWFCdWZJbWFnZVNpYmxpbmdWa0xpbnV4LmNwcAorKysg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL2xp
bnV4L0RtYUJ1ZkltYWdlU2libGluZ1ZrTGludXguY3BwCkBAIC0xMyw2ICsxMyw4IEBACiAjaW5j
bHVkZSAibGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL0Rpc3BsYXlWay5oIgogI2luY2x1ZGUgImxp
YkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9SZW5kZXJlclZrLmgiCiAKKyNpbmNsdWRlIDxmY250bC5o
PgorCiBuYW1lc3BhY2UgcngKIHsKIG5hbWVzcGFjZQpAQCAtMTg4LDE1ICsxOTAsMTYgQEAgYm9v
bCBJc0Zvcm1hdFN1cHBvcnRlZChSZW5kZXJlclZrICpyZW5kZXJlciwKICAgICAgICAgICAgICAg
ICAgICAgICAgdWludDY0X3QgZHJtTW9kaWZpZXIsCiAgICAgICAgICAgICAgICAgICAgICAgIFZr
SW1hZ2VVc2FnZUZsYWdzIHVzYWdlRmxhZ3MsCiAgICAgICAgICAgICAgICAgICAgICAgIFZrSW1h
Z2VDcmVhdGVGbGFncyBjcmVhdGVGbGFncywKKyAgICAgICAgICAgICAgICAgICAgICAgVmtJbWFn
ZUZvcm1hdExpc3RDcmVhdGVJbmZvS0hSIGltYWdlRm9ybWF0TGlzdEluZm8sCiAgICAgICAgICAg
ICAgICAgICAgICAgIFZrSW1hZ2VGb3JtYXRQcm9wZXJ0aWVzMiAqaW1hZ2VGb3JtYXRQcm9wZXJ0
aWVzT3V0KQogewotICAgIFZrRXh0ZXJuYWxNZW1vcnlJbWFnZUNyZWF0ZUluZm8gZXh0ZXJuYWxN
ZW1vcnlJbWFnZUNyZWF0ZUluZm8gPSB7fTsKLSAgICBleHRlcm5hbE1lbW9yeUltYWdlQ3JlYXRl
SW5mby5zVHlwZSAgICAgICA9IFZLX1NUUlVDVFVSRV9UWVBFX0VYVEVSTkFMX01FTU9SWV9JTUFH
RV9DUkVBVEVfSU5GTzsKLSAgICBleHRlcm5hbE1lbW9yeUltYWdlQ3JlYXRlSW5mby5oYW5kbGVU
eXBlcyA9IFZLX0VYVEVSTkFMX01FTU9SWV9IQU5ETEVfVFlQRV9ETUFfQlVGX0JJVF9FWFQ7Cisg
ICAgVmtQaHlzaWNhbERldmljZUV4dGVybmFsSW1hZ2VGb3JtYXRJbmZvIGV4dGVybmFsSW1hZ2VG
b3JtYXRJbmZvID0ge307CisgICAgZXh0ZXJuYWxJbWFnZUZvcm1hdEluZm8uc1R5cGUgPSBWS19T
VFJVQ1RVUkVfVFlQRV9QSFlTSUNBTF9ERVZJQ0VfRVhURVJOQUxfSU1BR0VfRk9STUFUX0lORk87
CisgICAgZXh0ZXJuYWxJbWFnZUZvcm1hdEluZm8uaGFuZGxlVHlwZSA9IFZLX0VYVEVSTkFMX01F
TU9SWV9IQU5ETEVfVFlQRV9ETUFfQlVGX0JJVF9FWFQ7CiAKICAgICBWa1BoeXNpY2FsRGV2aWNl
SW1hZ2VGb3JtYXRJbmZvMiBpbWFnZUZvcm1hdEluZm8gPSB7fTsKICAgICBpbWFnZUZvcm1hdElu
Zm8uc1R5cGUgID0gVktfU1RSVUNUVVJFX1RZUEVfUEhZU0lDQUxfREVWSUNFX0lNQUdFX0ZPUk1B
VF9JTkZPXzI7Ci0gICAgaW1hZ2VGb3JtYXRJbmZvLnBOZXh0ICA9ICZleHRlcm5hbE1lbW9yeUlt
YWdlQ3JlYXRlSW5mbzsKKyAgICBpbWFnZUZvcm1hdEluZm8ucE5leHQgID0gJmV4dGVybmFsSW1h
Z2VGb3JtYXRJbmZvOwogICAgIGltYWdlRm9ybWF0SW5mby5mb3JtYXQgPSB2a0Zvcm1hdDsKICAg
ICBpbWFnZUZvcm1hdEluZm8udHlwZSAgID0gVktfSU1BR0VfVFlQRV8yRDsKICAgICBpbWFnZUZv
cm1hdEluZm8udGlsaW5nID0gVktfSU1BR0VfVElMSU5HX09QVElNQUw7CkBAIC0yMDYsMTMgKzIw
OSwxNCBAQCBib29sIElzRm9ybWF0U3VwcG9ydGVkKFJlbmRlcmVyVmsgKnJlbmRlcmVyLAogICAg
IFZrUGh5c2ljYWxEZXZpY2VJbWFnZURybUZvcm1hdE1vZGlmaWVySW5mb0VYVCBkcm1Gb3JtYXRN
b2RpZmllckluZm8gPSB7fTsKICAgICBkcm1Gb3JtYXRNb2RpZmllckluZm8uc1R5cGUgPQogICAg
ICAgICBWS19TVFJVQ1RVUkVfVFlQRV9QSFlTSUNBTF9ERVZJQ0VfSU1BR0VfRFJNX0ZPUk1BVF9N
T0RJRklFUl9JTkZPX0VYVDsKLSAgICBkcm1Gb3JtYXRNb2RpZmllckluZm8ucE5leHQgICAgICAg
ICAgICAgPSAmZXh0ZXJuYWxNZW1vcnlJbWFnZUNyZWF0ZUluZm87CiAgICAgZHJtRm9ybWF0TW9k
aWZpZXJJbmZvLmRybUZvcm1hdE1vZGlmaWVyID0gZHJtTW9kaWZpZXI7CiAgICAgZHJtRm9ybWF0
TW9kaWZpZXJJbmZvLnNoYXJpbmdNb2RlICAgICAgID0gVktfU0hBUklOR19NT0RFX0VYQ0xVU0lW
RTsKICAgICBpZiAoZHJtTW9kaWZpZXIgIT0gMCkKICAgICB7Ci0gICAgICAgIGltYWdlRm9ybWF0
SW5mby5wTmV4dCAgPSAmZHJtRm9ybWF0TW9kaWZpZXJJbmZvOwotICAgICAgICBpbWFnZUZvcm1h
dEluZm8udGlsaW5nID0gVktfSU1BR0VfVElMSU5HX0RSTV9GT1JNQVRfTU9ESUZJRVJfRVhUOwor
ICAgICAgICBleHRlcm5hbEltYWdlRm9ybWF0SW5mby5wTmV4dCA9ICZkcm1Gb3JtYXRNb2RpZmll
ckluZm87CisgICAgICAgIGltYWdlRm9ybWF0TGlzdEluZm8ucE5leHQgICAgID0gJmV4dGVybmFs
SW1hZ2VGb3JtYXRJbmZvOworICAgICAgICBpbWFnZUZvcm1hdEluZm8ucE5leHQgICAgICAgICA9
ICZpbWFnZUZvcm1hdExpc3RJbmZvOworICAgICAgICBpbWFnZUZvcm1hdEluZm8udGlsaW5nICAg
ICAgICA9IFZLX0lNQUdFX1RJTElOR19EUk1fRk9STUFUX01PRElGSUVSX0VYVDsKICAgICB9CiAK
ICAgICByZXR1cm4gdmtHZXRQaHlzaWNhbERldmljZUltYWdlRm9ybWF0UHJvcGVydGllczIocmVu
ZGVyZXItPmdldFBoeXNpY2FsRGV2aWNlKCksCkBAIC0yNTEsMTEgKzI1NSwxMiBAQCBWa1NhbXBs
ZXJZY2JjclJhbmdlIEdldFljYmNyUmFuZ2UoY29uc3QgZWdsOjpBdHRyaWJ1dGVNYXAgJmF0dHJp
YnMpCiAgICAgICAgICAgICAgICA6IFZLX1NBTVBMRVJfWUNCQ1JfUkFOR0VfSVRVX05BUlJPVzsK
IH0KIAotdWludDMyX3QgR2V0QWxsb2NhdGVJbmZvKGNvbnN0IGVnbDo6QXR0cmlidXRlTWFwICZh
dHRyaWJzLAotICAgICAgICAgICAgICAgICAgICAgICAgIFZrSW1hZ2UgaW1hZ2UsCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgdWludDMyX3QgcGxhbmVDb3VudCwKLSAgICAgICAgICAgICAgICAg
ICAgICAgICBjb25zdCBWa0RybUZvcm1hdE1vZGlmaWVyUHJvcGVydGllc0VYVCAmcHJvcGVydGll
cywKLSAgICAgICAgICAgICAgICAgICAgICAgICBBbGxvY2F0ZUluZm8gKmluZm9PdXQpCithbmds
ZTo6UmVzdWx0IEdldEFsbG9jYXRlSW5mbyhjb25zdCBlZ2w6OkF0dHJpYnV0ZU1hcCAmYXR0cmli
cywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZrSW1hZ2UgaW1hZ2UsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBwbGFuZUNvdW50LAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgY29uc3QgVmtEcm1Gb3JtYXRNb2RpZmllclByb3BlcnRpZXNFWFQg
JnByb3BlcnRpZXMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBbGxvY2F0ZUluZm8g
KmluZm9PdXQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCAqaW5mb0Nv
dW50T3V0KQogewogICAgIC8vIFRoZXJlIGFyZSBhIG51bWJlciBvZiBzaXR1YXRpb25zOgogICAg
IC8vCkBAIC0yOTAsMjEgKzI5NSwyOSBAQCB1aW50MzJfdCBHZXRBbGxvY2F0ZUluZm8oY29uc3Qg
ZWdsOjpBdHRyaWJ1dGVNYXAgJmF0dHJpYnMsCiAgICAgfQogCiAgICAgLy8gRmlsbCBpbiBhbGxv
Y2F0ZUluZm8sIGltcG9ydEZkSW5mbywgYmluZEluZm8gYW5kIGJpbmRQbGFuZUluZm8gZmlyc3Qu
Ci0gICAgY29uc3QgdWludDMyX3QgcGxhbmVzVG9BbGxvY2F0ZSA9IGlzRGlzam9pbnQgPyBwbGFu
ZUNvdW50IDogMTsKLSAgICBmb3IgKHVpbnQzMl90IHBsYW5lID0gMDsgcGxhbmUgPCBwbGFuZXNU
b0FsbG9jYXRlOyArK3BsYW5lKQorICAgICppbmZvQ291bnRPdXQgPSBpc0Rpc2pvaW50ID8gcGxh
bmVDb3VudCA6IDE7CisgICAgZm9yICh1aW50MzJfdCBwbGFuZSA9IDA7IHBsYW5lIDwgKmluZm9D
b3VudE91dDsgKytwbGFuZSkKICAgICB7CiAgICAgICAgIGluZm9PdXQtPmFsbG9jYXRlSW5mb1tw
bGFuZV0uc1R5cGUgPSBWS19TVFJVQ1RVUkVfVFlQRV9NRU1PUllfREVESUNBVEVEX0FMTE9DQVRF
X0lORk87CiAgICAgICAgIGluZm9PdXQtPmFsbG9jYXRlSW5mb1twbGFuZV0ucE5leHQgPSAmaW5m
b091dC0+aW1wb3J0RmRJbmZvW3BsYW5lXTsKICAgICAgICAgaW5mb091dC0+YWxsb2NhdGVJbmZv
W3BsYW5lXS5pbWFnZSA9IGltYWdlOwogCiAgICAgICAgIGluZm9PdXQtPmltcG9ydEZkSW5mb1tw
bGFuZV0uc1R5cGUgICAgICA9IFZLX1NUUlVDVFVSRV9UWVBFX0lNUE9SVF9NRU1PUllfRkRfSU5G
T19LSFI7Ci0gICAgICAgIGluZm9PdXQtPmltcG9ydEZkSW5mb1twbGFuZV0uaGFuZGxlVHlwZSA9
IFZLX0VYVEVSTkFMX01FTU9SWV9IQU5ETEVfVFlQRV9PUEFRVUVfRkRfQklUOwotICAgICAgICBp
bmZvT3V0LT5pbXBvcnRGZEluZm9bcGxhbmVdLmZkICAgICAgICAgPSBhdHRyaWJzLmdldEFzSW50
KGtGZHNbcGxhbmVdKTsKKyAgICAgICAgaW5mb091dC0+aW1wb3J0RmRJbmZvW3BsYW5lXS5oYW5k
bGVUeXBlID0gVktfRVhURVJOQUxfTUVNT1JZX0hBTkRMRV9UWVBFX0RNQV9CVUZfQklUX0VYVDsK
KworICAgICAgICAvLyBWdWxrYW4gdGFrZXMgb3duZXJzaGlwIG9mIHRoZSBGRCwgY2xvc2VkIG9u
IHZrRnJlZU1lbW9yeS4KKyAgICAgICAgaW50IGRmZCA9IGZjbnRsKGF0dHJpYnMuZ2V0QXNJbnQo
a0Zkc1twbGFuZV0pLCBGX0RVUEZEX0NMT0VYRUMsIDApOworICAgICAgICBpZiAoZGZkIDwgMCkK
KyAgICAgICAgeworICAgICAgICAgICAgRVJSKCkgPDwgImZhaWxlZCB0byBkdXBsaWNhdGUgZmQg
Zm9yIGRtYV9idWYgaW1wb3J0IiA8PCBzdGQ6OmVuZGw7CisgICAgICAgICAgICByZXR1cm4gYW5n
bGU6OlJlc3VsdDo6U3RvcDsKKyAgICAgICAgfQorICAgICAgICBpbmZvT3V0LT5pbXBvcnRGZElu
Zm9bcGxhbmVdLmZkID0gZGZkOwogCiAgICAgICAgIGluZm9PdXQtPmFsbG9jYXRlSW5mb1B0cltw
bGFuZV0gPSAmaW5mb091dC0+YWxsb2NhdGVJbmZvW3BsYW5lXTsKICAgICB9CiAKLSAgICByZXR1
cm4gcGxhbmVzVG9BbGxvY2F0ZTsKKyAgICByZXR1cm4gYW5nbGU6OlJlc3VsdDo6Q29udGludWU7
CiB9CiB9ICAvLyBhbm9ueW1vdXMgbmFtZXNwYWNlCiAKQEAgLTMzNyw2ICszNTAsNTkgQEAgZWds
OjpFcnJvciBEbWFCdWZJbWFnZVNpYmxpbmdWa0xpbnV4Ojppbml0aWFsaXplKGNvbnN0IGVnbDo6
RGlzcGxheSAqZGlzcGxheSkKICAgICByZXR1cm4gYW5nbGU6OlRvRUdMKGluaXRJbXBsKGRpc3Bs
YXlWayksIGRpc3BsYXlWaywgRUdMX0JBRF9QQVJBTUVURVIpOwogfQogCitWa0ltYWdlVXNhZ2VG
bGFncyBGaW5kU3VwcG9ydGVkVXNhZ2VGbGFnc0ZvckZvcm1hdCgKKyAgICBSZW5kZXJlclZrICpy
ZW5kZXJlciwKKyAgICBWa0Zvcm1hdCBmb3JtYXQsCisgICAgdWludDY0X3QgZHJtTW9kaWZpZXIs
CisgICAgVmtJbWFnZUZvcm1hdExpc3RDcmVhdGVJbmZvIGltYWdlRm9ybWF0TGlzdENyZWF0ZUlu
Zm8sCisgICAgVmtJbWFnZVVzYWdlRmxhZ3MgdXNhZ2VGbGFncywKKyAgICBWa0ltYWdlQ3JlYXRl
RmxhZ3MgY3JlYXRlRmxhZ3MsCisgICAgVmtJbWFnZUZvcm1hdFByb3BlcnRpZXMyICpvdXRJbWFn
ZUZvcm1hdFByb3BlcnRpZXMpCit7CisgICAgaWYgKCFJc0Zvcm1hdFN1cHBvcnRlZChyZW5kZXJl
ciwgZm9ybWF0LCBkcm1Nb2RpZmllciwgdXNhZ2VGbGFncywgY3JlYXRlRmxhZ3MsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICBpbWFnZUZvcm1hdExpc3RDcmVhdGVJbmZvLCBvdXRJbWFnZUZv
cm1hdFByb3BlcnRpZXMpKQorICAgIHsKKyAgICAgICAgdXNhZ2VGbGFncyAmPSB+a1JlbmRlclVz
YWdlOworICAgICAgICBpZiAoIUlzRm9ybWF0U3VwcG9ydGVkKHJlbmRlcmVyLCBmb3JtYXQsIGRy
bU1vZGlmaWVyLCB1c2FnZUZsYWdzLCBjcmVhdGVGbGFncywKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBpbWFnZUZvcm1hdExpc3RDcmVhdGVJbmZvLCBvdXRJbWFnZUZvcm1hdFByb3Bl
cnRpZXMpKQorICAgICAgICB7CisgICAgICAgICAgICB1c2FnZUZsYWdzICY9IH5rVGV4dHVyZVVz
YWdlOworICAgICAgICAgICAgaWYgKCFJc0Zvcm1hdFN1cHBvcnRlZChyZW5kZXJlciwgZm9ybWF0
LCBkcm1Nb2RpZmllciwgdXNhZ2VGbGFncywgY3JlYXRlRmxhZ3MsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGltYWdlRm9ybWF0TGlzdENyZWF0ZUluZm8sIG91dEltYWdlRm9y
bWF0UHJvcGVydGllcykpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgLy8gQ2FuIG5v
dCBmaW5kIHN1cHBvcnRlZCB1c2FnZSBmbGFncyBmb3IgdGhpcyBpbWFnZS4KKyAgICAgICAgICAg
ICAgICByZXR1cm4gMDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgIH0KKworICAgIHJl
dHVybiB1c2FnZUZsYWdzOworfQorCitib29sIEZpbmRTdXBwb3J0ZWRGbGFnc0ZvckZvcm1hdChS
ZW5kZXJlclZrICpyZW5kZXJlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZr
Rm9ybWF0IGZvcm1hdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQ2NF90
IGRybU1vZGlmaWVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVmtJbWFnZUZv
cm1hdExpc3RDcmVhdGVJbmZvIGltYWdlRm9ybWF0TGlzdENyZWF0ZUluZm8sCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBWa0ltYWdlVXNhZ2VGbGFncyAqb3V0VXNhZ2VGbGFncywK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZrSW1hZ2VDcmVhdGVGbGFncyAqb3V0
Q3JlYXRlRmxhZ3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWa0ltYWdlRm9y
bWF0UHJvcGVydGllczIgKm91dEltYWdlRm9ybWF0UHJvcGVydGllcykKK3sKKyAgICBWa0ltYWdl
VXNhZ2VGbGFncyBzdXBwb3J0ZWRVc2FnZUZsYWdzID0KKyAgICAgICAgRmluZFN1cHBvcnRlZFVz
YWdlRmxhZ3NGb3JGb3JtYXQocmVuZGVyZXIsIGZvcm1hdCwgZHJtTW9kaWZpZXIsIGltYWdlRm9y
bWF0TGlzdENyZWF0ZUluZm8sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICpvdXRVc2FnZUZsYWdzLCAqb3V0Q3JlYXRlRmxhZ3MsIG91dEltYWdlRm9ybWF0UHJvcGVy
dGllcyk7CisgICAgaWYgKHN1cHBvcnRlZFVzYWdlRmxhZ3MgPT0gMCkKKyAgICB7CisgICAgICAg
IC8vIFJlbW92ZSBtdXRhYmxlIGZvcm1hdCBiaXQgYW5kIHRyeSBhZ2Fpbi4KKyAgICAgICAgKm91
dENyZWF0ZUZsYWdzICY9IH5WS19JTUFHRV9DUkVBVEVfTVVUQUJMRV9GT1JNQVRfQklUOworICAg
ICAgICBzdXBwb3J0ZWRVc2FnZUZsYWdzID0gRmluZFN1cHBvcnRlZFVzYWdlRmxhZ3NGb3JGb3Jt
YXQoCisgICAgICAgICAgICByZW5kZXJlciwgZm9ybWF0LCBkcm1Nb2RpZmllciwgaW1hZ2VGb3Jt
YXRMaXN0Q3JlYXRlSW5mbywgKm91dFVzYWdlRmxhZ3MsCisgICAgICAgICAgICAqb3V0Q3JlYXRl
RmxhZ3MsIG91dEltYWdlRm9ybWF0UHJvcGVydGllcyk7CisgICAgfQorCisgICAgKm91dFVzYWdl
RmxhZ3MgPSBzdXBwb3J0ZWRVc2FnZUZsYWdzOworICAgIHJldHVybiBzdXBwb3J0ZWRVc2FnZUZs
YWdzICE9IDA7Cit9CisKIGFuZ2xlOjpSZXN1bHQgRG1hQnVmSW1hZ2VTaWJsaW5nVmtMaW51eDo6
aW5pdEltcGwoRGlzcGxheVZrICpkaXNwbGF5VmspCiB7CiAgICAgUmVuZGVyZXJWayAqcmVuZGVy
ZXIgPSBkaXNwbGF5VmstPmdldFJlbmRlcmVyKCk7CkBAIC0zODcsNDAgKzQ1Myw2IEBAIGFuZ2xl
OjpSZXN1bHQgRG1hQnVmSW1hZ2VTaWJsaW5nVmtMaW51eDo6aW5pdEltcGwoRGlzcGxheVZrICpk
aXNwbGF5VmspCiAgICAgaW1hZ2VGb3JtYXRQcm9wZXJ0aWVzLnNUeXBlICAgICAgICAgICAgICAg
ICAgICA9IFZLX1NUUlVDVFVSRV9UWVBFX0lNQUdFX0ZPUk1BVF9QUk9QRVJUSUVTXzI7CiAgICAg
aW1hZ2VGb3JtYXRQcm9wZXJ0aWVzLnBOZXh0ICAgICAgICAgICAgICAgICAgICA9ICZleHRlcm5h
bEZvcm1hdFByb3BlcnRpZXM7CiAKLSAgICBpZiAoIUlzRm9ybWF0U3VwcG9ydGVkKHJlbmRlcmVy
LCB2dWxrYW5Gb3JtYXQsIHBsYW5lME1vZGlmaWVyLCB1c2FnZUZsYWdzLCBjcmVhdGVGbGFncywK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICZpbWFnZUZvcm1hdFByb3BlcnRpZXMpKQotICAg
IHsKLSAgICAgICAgbVJlbmRlcmFibGUgPSBmYWxzZTsKLSAgICAgICAgdXNhZ2VGbGFncyAmPSB+
a1JlbmRlclVzYWdlOwotICAgICAgICBpZiAoIUlzRm9ybWF0U3VwcG9ydGVkKHJlbmRlcmVyLCB2
dWxrYW5Gb3JtYXQsIHBsYW5lME1vZGlmaWVyLCB1c2FnZUZsYWdzLCBjcmVhdGVGbGFncywKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmaW1hZ2VGb3JtYXRQcm9wZXJ0aWVzKSkKLSAg
ICAgICAgewotICAgICAgICAgICAgbVRleHR1cmVhYmxlID0gZmFsc2U7Ci0gICAgICAgICAgICB1
c2FnZUZsYWdzICY9IH5rVGV4dHVyZVVzYWdlOwotCi0gICAgICAgICAgICBpZiAoIUlzRm9ybWF0
U3VwcG9ydGVkKHJlbmRlcmVyLCB2dWxrYW5Gb3JtYXQsIHBsYW5lME1vZGlmaWVyLCB1c2FnZUZs
YWdzLCBjcmVhdGVGbGFncywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmlt
YWdlRm9ybWF0UHJvcGVydGllcykpCi0gICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgLy8g
VGhlIGltYWdlIGlzIGNvbXBsZXRlbHkgdW51c2FibGUuCi0gICAgICAgICAgICAgICAgQU5HTEVf
VktfQ0hFQ0soZGlzcGxheVZrLCBmYWxzZSwgVktfRVJST1JfRk9STUFUX05PVF9TVVBQT1JURUQp
OwotICAgICAgICAgICAgfQotICAgICAgICB9Ci0gICAgfQotCi0gICAgLy8gTWFrZSBzdXJlIGlt
YWdlIHdpZHRoL2hlaWdodC9zYW1wbGVzIGFyZSB3aXRoaW4gYWxsb3dlZCByYW5nZSBhbmQgdGhl
IGltYWdlIGlzIGltcG9ydGFibGUuCi0gICAgY29uc3QgYm9vbCBpc1dpZHRoVmFsaWQgPSBzdGF0
aWNfY2FzdDx1aW50MzJfdD4obVNpemUud2lkdGgpIDw9Ci0gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBpbWFnZUZvcm1hdFByb3BlcnRpZXMuaW1hZ2VGb3JtYXRQcm9wZXJ0aWVzLm1heEV4
dGVudC53aWR0aDsKLSAgICBjb25zdCBib29sIGlzSGVpZ2h0VmFsaWQgPSBzdGF0aWNfY2FzdDx1
aW50MzJfdD4obVNpemUuaGVpZ2h0KSA8PQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGltYWdlRm9ybWF0UHJvcGVydGllcy5pbWFnZUZvcm1hdFByb3BlcnRpZXMubWF4RXh0ZW50Lmhl
aWdodDsKLSAgICBjb25zdCBib29sIGlzU2FtcGxlQ291bnRWYWxpZCA9Ci0gICAgICAgIChpbWFn
ZUZvcm1hdFByb3BlcnRpZXMuaW1hZ2VGb3JtYXRQcm9wZXJ0aWVzLnNhbXBsZUNvdW50cyAmIFZL
X1NBTVBMRV9DT1VOVF8xX0JJVCkgIT0gMDsKLSAgICBjb25zdCBib29sIGlzTWVtb3J5SW1wb3J0
YWJsZSA9Ci0gICAgICAgIChleHRlcm5hbEZvcm1hdFByb3BlcnRpZXMuZXh0ZXJuYWxNZW1vcnlQ
cm9wZXJ0aWVzLmV4dGVybmFsTWVtb3J5RmVhdHVyZXMgJgotICAgICAgICAgVktfRVhURVJOQUxf
TUVNT1JZX0ZFQVRVUkVfSU1QT1JUQUJMRV9CSVQpID09IDA7Ci0gICAgQU5HTEVfVktfQ0hFQ0so
ZGlzcGxheVZrLAotICAgICAgICAgICAgICAgICAgIGlzV2lkdGhWYWxpZCAmJiBpc0hlaWdodFZh
bGlkICYmIGlzU2FtcGxlQ291bnRWYWxpZCAmJiBpc01lbW9yeUltcG9ydGFibGUsCi0gICAgICAg
ICAgICAgICAgICAgVktfRVJST1JfSU5DT01QQVRJQkxFX0RSSVZFUik7Ci0KICAgICBzdGQ6OnZl
Y3RvcjxWa1N1YnJlc291cmNlTGF5b3V0PiBwbGFuZXMocGxhbmVDb3VudCwgVmtTdWJyZXNvdXJj
ZUxheW91dHt9KTsKICAgICBmb3IgKHVpbnQzMl90IHBsYW5lID0gMDsgcGxhbmUgPCBwbGFuZUNv
dW50OyArK3BsYW5lKQogICAgIHsKQEAgLTQ0MCwxMiArNDcyLDM2IEBAIGFuZ2xlOjpSZXN1bHQg
RG1hQnVmSW1hZ2VTaWJsaW5nVmtMaW51eDo6aW5pdEltcGwoRGlzcGxheVZrICpkaXNwbGF5Vmsp
CiAgICAgZXh0ZXJuYWxNZW1vcnlJbWFnZUNyZWF0ZUluZm8ucE5leHQgICAgICAgPSAmaW1hZ2VE
cm1Nb2RpZmllckNyZWF0ZUluZm87CiAgICAgZXh0ZXJuYWxNZW1vcnlJbWFnZUNyZWF0ZUluZm8u
aGFuZGxlVHlwZXMgPSBWS19FWFRFUk5BTF9NRU1PUllfSEFORExFX1RZUEVfRE1BX0JVRl9CSVRf
RVhUOwogCi0gICAgVmtJbWFnZUZvcm1hdExpc3RDcmVhdGVJbmZvS0hSIGltYWdlRm9ybWF0TGlz
dEluZm9TdG9yYWdlOworICAgIFZrSW1hZ2VGb3JtYXRMaXN0Q3JlYXRlSW5mb0tIUiBpbWFnZUZv
cm1hdExpc3RDcmVhdGVJbmZvOwogICAgIHZrOjpJbWFnZUhlbHBlcjo6SW1hZ2VMaXN0Rm9ybWF0
cyBpbWFnZUxpc3RGb3JtYXRzU3RvcmFnZTsKICAgICBjb25zdCB2b2lkICppbWFnZUNyZWF0ZUlu
Zm9QTmV4dCA9IHZrOjpJbWFnZUhlbHBlcjo6RGVyaXZlQ3JlYXRlSW5mb1BOZXh0KAotICAgICAg
ICBkaXNwbGF5VmssIGFjdHVhbEltYWdlRm9ybWF0SUQsICZleHRlcm5hbE1lbW9yeUltYWdlQ3Jl
YXRlSW5mbywgJmltYWdlRm9ybWF0TGlzdEluZm9TdG9yYWdlLAorICAgICAgICBkaXNwbGF5Vmss
IGFjdHVhbEltYWdlRm9ybWF0SUQsICZleHRlcm5hbE1lbW9yeUltYWdlQ3JlYXRlSW5mbywgJmlt
YWdlRm9ybWF0TGlzdENyZWF0ZUluZm8sCiAgICAgICAgICZpbWFnZUxpc3RGb3JtYXRzU3RvcmFn
ZSwgJmNyZWF0ZUZsYWdzKTsKIAorICAgIGlmICghRmluZFN1cHBvcnRlZEZsYWdzRm9yRm9ybWF0
KHJlbmRlcmVyLCB2dWxrYW5Gb3JtYXQsIHBsYW5lME1vZGlmaWVyLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGltYWdlRm9ybWF0TGlzdENyZWF0ZUluZm8sICZ1c2FnZUZs
YWdzLCAmY3JlYXRlRmxhZ3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
JmltYWdlRm9ybWF0UHJvcGVydGllcykpCisgICAgeworICAgICAgICAvLyBUaGUgaW1hZ2UgaXMg
Y29tcGxldGVseSB1bnVzYWJsZS4KKyAgICAgICAgQU5HTEVfVktfQ0hFQ0soZGlzcGxheVZrLCBm
YWxzZSwgVktfRVJST1JfRk9STUFUX05PVF9TVVBQT1JURUQpOworICAgIH0KKyAgICBtUmVuZGVy
YWJsZSAgPSB1c2FnZUZsYWdzICYga1JlbmRlclVzYWdlOworICAgIG1UZXh0dXJlYWJsZSA9IHVz
YWdlRmxhZ3MgJiBrVGV4dHVyZVVzYWdlOworCisgICAgLy8gTWFrZSBzdXJlIGltYWdlIHdpZHRo
L2hlaWdodC9zYW1wbGVzIGFyZSB3aXRoaW4gYWxsb3dlZCByYW5nZSBhbmQgdGhlIGltYWdlIGlz
IGltcG9ydGFibGUuCisgICAgY29uc3QgYm9vbCBpc1dpZHRoVmFsaWQgPSBzdGF0aWNfY2FzdDx1
aW50MzJfdD4obVNpemUud2lkdGgpIDw9CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBp
bWFnZUZvcm1hdFByb3BlcnRpZXMuaW1hZ2VGb3JtYXRQcm9wZXJ0aWVzLm1heEV4dGVudC53aWR0
aDsKKyAgICBjb25zdCBib29sIGlzSGVpZ2h0VmFsaWQgPSBzdGF0aWNfY2FzdDx1aW50MzJfdD4o
bVNpemUuaGVpZ2h0KSA8PQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGltYWdlRm9y
bWF0UHJvcGVydGllcy5pbWFnZUZvcm1hdFByb3BlcnRpZXMubWF4RXh0ZW50LmhlaWdodDsKKyAg
ICBjb25zdCBib29sIGlzU2FtcGxlQ291bnRWYWxpZCA9CisgICAgICAgIChpbWFnZUZvcm1hdFBy
b3BlcnRpZXMuaW1hZ2VGb3JtYXRQcm9wZXJ0aWVzLnNhbXBsZUNvdW50cyAmIFZLX1NBTVBMRV9D
T1VOVF8xX0JJVCkgIT0gMDsKKyAgICBjb25zdCBib29sIGlzTWVtb3J5SW1wb3J0YWJsZSA9Cisg
ICAgICAgIChleHRlcm5hbEZvcm1hdFByb3BlcnRpZXMuZXh0ZXJuYWxNZW1vcnlQcm9wZXJ0aWVz
LmV4dGVybmFsTWVtb3J5RmVhdHVyZXMgJgorICAgICAgICAgVktfRVhURVJOQUxfTUVNT1JZX0ZF
QVRVUkVfSU1QT1JUQUJMRV9CSVQpICE9IDA7CisgICAgQU5HTEVfVktfQ0hFQ0soZGlzcGxheVZr
LAorICAgICAgICAgICAgICAgICAgIGlzV2lkdGhWYWxpZCAmJiBpc0hlaWdodFZhbGlkICYmIGlz
U2FtcGxlQ291bnRWYWxpZCAmJiBpc01lbW9yeUltcG9ydGFibGUsCisgICAgICAgICAgICAgICAg
ICAgVktfRVJST1JfSU5DT01QQVRJQkxFX0RSSVZFUik7CisKICAgICAvLyBDcmVhdGUgdGhlIGlt
YWdlCiAgICAgbUltYWdlID0gbmV3IHZrOjpJbWFnZUhlbHBlcigpOwogCkBAIC00ODksOCArNTQ1
LDkgQEAgYW5nbGU6OlJlc3VsdCBEbWFCdWZJbWFnZVNpYmxpbmdWa0xpbnV4Ojppbml0SW1wbChE
aXNwbGF5VmsgKmRpc3BsYXlWaykKICAgICB9CiAKICAgICBBbGxvY2F0ZUluZm8gYWxsb2NhdGVJ
bmZvOwotICAgIGNvbnN0IHVpbnQzMl90IGFsbG9jYXRlSW5mb0NvdW50ID0gR2V0QWxsb2NhdGVJ
bmZvKAotICAgICAgICBtQXR0cmlicywgbUltYWdlLT5nZXRJbWFnZSgpLmdldEhhbmRsZSgpLCBw
bGFuZUNvdW50LCBtb2RpZmllclByb3BlcnRpZXMsICZhbGxvY2F0ZUluZm8pOworICAgIHVpbnQz
Ml90IGFsbG9jYXRlSW5mb0NvdW50OworICAgIEFOR0xFX1RSWShHZXRBbGxvY2F0ZUluZm8obUF0
dHJpYnMsIG1JbWFnZS0+Z2V0SW1hZ2UoKS5nZXRIYW5kbGUoKSwgcGxhbmVDb3VudCwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIG1vZGlmaWVyUHJvcGVydGllcywgJmFsbG9jYXRlSW5m
bywgJmFsbG9jYXRlSW5mb0NvdW50KSk7CiAKICAgICByZXR1cm4gbUltYWdlLT5pbml0RXh0ZXJu
YWxNZW1vcnkoCiAgICAgICAgIGRpc3BsYXlWaywgcmVuZGVyZXItPmdldE1lbW9yeVByb3BlcnRp
ZXMoKSwgZXh0ZXJuYWxNZW1vcnlSZXF1aXJlbWVudHMsIGFsbG9jYXRlSW5mb0NvdW50LApkaWZm
IC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1
bGthbi9saW51eC94Y2IvRGlzcGxheVZrWGNiLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9z
cmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL2xpbnV4L3hjYi9EaXNwbGF5VmtYY2IuaAppbmRl
eCBmN2Y1Y2QzN2EzMDM3ZWIzNjc5ZTk3MzdjMzU3NGRjNDgwZTg5MDY4Li45ZmM4YzE3NGVhNDNi
OWU2MzYxNzMzY2FmOTQ3ZjcwNDRmOTM4ZTc5IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL2xpbnV4L3hjYi9EaXNwbGF5VmtY
Y2IuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIv
dnVsa2FuL2xpbnV4L3hjYi9EaXNwbGF5VmtYY2IuaApAQCAtMzYsNiArMzYsOCBAQCBjbGFzcyBE
aXNwbGF5VmtYY2IgOiBwdWJsaWMgRGlzcGxheVZrTGludXgKICAgICBjb25zdCBjaGFyICpnZXRX
U0lFeHRlbnNpb24oKSBjb25zdCBvdmVycmlkZTsKICAgICBhbmdsZTo6UmVzdWx0IHdhaXROYXRp
dmVJbXBsKCkgb3ZlcnJpZGU7CiAKKyAgICBib29sIGlzWDExKCkgY29uc3Qgb3ZlcnJpZGUgeyBy
ZXR1cm4gdHJ1ZTsgfQorCiAgIHByaXZhdGU6CiAgICAgeGNiX2Nvbm5lY3Rpb25fdCAqbVhjYkNv
bm5lY3Rpb247CiAgICAgLy8gSWYgdGhlcmUgaXMgbm8gWCBEaXNwbGF5LCBvYnZpb3VzbHkgaXQn
cyBpbXBvc3NpYmxlIHRvIGNvbm5lY3QgdG8gaXQgd2l0aCBYY2IsCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL21hYy9XaW5k
b3dTdXJmYWNlVmtNYWMubW0gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUv
cmVuZGVyZXIvdnVsa2FuL21hYy9XaW5kb3dTdXJmYWNlVmtNYWMubW0KaW5kZXggNDQyYWEwZGM1
ZGNlYzY4NGFhYjljYjc1NTEyODVkZmVkMzA4ZTMzYi4uYWU5YTJiMTU2YmUyOGMyMTFhMTFiYjkx
NWZkOTdhMjQzY2M1NWZmYiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3Jj
L2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9tYWMvV2luZG93U3VyZmFjZVZrTWFjLm1tCisrKyBi
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vbWFj
L1dpbmRvd1N1cmZhY2VWa01hYy5tbQpAQCAtMzcsNyArMzcsNyBAQCBhbmdsZTo6UmVzdWx0IFdp
bmRvd1N1cmZhY2VWa01hYzo6Y3JlYXRlU3VyZmFjZVZrKHZrOjpDb250ZXh0ICpjb250ZXh0LCBn
bDo6RXh0ZQogICAgIENBTGF5ZXIgKmxheWVyID0gcmVpbnRlcnByZXRfY2FzdDxDQUxheWVyICo+
KG1OYXRpdmVXaW5kb3dUeXBlKTsKIAogICAgIG1NZXRhbExheWVyICAgICAgICA9IFtbQ0FNZXRh
bExheWVyIGFsbG9jXSBpbml0XTsKLSAgICBtTWV0YWxMYXllci5mcmFtZSAgPSBsYXllci5mcmFt
ZTsKKyAgICBtTWV0YWxMYXllci5mcmFtZSAgPSBDR1JlY3RNYWtlKDAsIDAsIGxheWVyLmZyYW1l
LnNpemUud2lkdGgsIGxheWVyLmZyYW1lLnNpemUuaGVpZ2h0KTsKICAgICBtTWV0YWxMYXllci5k
ZXZpY2UgPSBtTWV0YWxEZXZpY2U7CiAgICAgbU1ldGFsTGF5ZXIuZHJhd2FibGVTaXplID0KICAg
ICAgICAgQ0dTaXplTWFrZShtTWV0YWxMYXllci5ib3VuZHMuc2l6ZS53aWR0aCAqIG1NZXRhbExh
eWVyLmNvbnRlbnRzU2NhbGUsCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9z
cmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL3ZrX2NhY2hlX3V0aWxzLmNwcCBiL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vdmtfY2FjaGVfdXRp
bHMuY3BwCmluZGV4IDU2Y2VmZTg4Y2MxMzVhZGY0ZGQ2MzRhOGViYzA2YjE5NjgxYmM4ZWUuLmI0
MmVmYmYzMDYwZTdjNWJjZGRiZjVlMzI5MDYyODYyN2Y4MGUwMDAgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vdmtfY2FjaGVf
dXRpbHMuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5k
ZXJlci92dWxrYW4vdmtfY2FjaGVfdXRpbHMuY3BwCkBAIC03NCwxMiArNzQsNTEgQEAgdWludDhf
dCBQYWNrR0xCbGVuZE9wKEdMZW51bSBibGVuZE9wKQogICAgICAgICAgICAgcmV0dXJuIHN0YXRp
Y19jYXN0PHVpbnQ4X3Q+KFZLX0JMRU5EX09QX01JTik7CiAgICAgICAgIGNhc2UgR0xfTUFYOgog
ICAgICAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PHVpbnQ4X3Q+KFZLX0JMRU5EX09QX01BWCk7
CisgICAgICAgIGNhc2UgR0xfTVVMVElQTFlfS0hSOgorICAgICAgICAgICAgcmV0dXJuIHN0YXRp
Y19jYXN0PHVpbnQ4X3Q+KFZLX0JMRU5EX09QX01VTFRJUExZX0VYVCAtIFZLX0JMRU5EX09QX1pF
Uk9fRVhUKTsKKyAgICAgICAgY2FzZSBHTF9TQ1JFRU5fS0hSOgorICAgICAgICAgICAgcmV0dXJu
IHN0YXRpY19jYXN0PHVpbnQ4X3Q+KFZLX0JMRU5EX09QX1NDUkVFTl9FWFQgLSBWS19CTEVORF9P
UF9aRVJPX0VYVCk7CisgICAgICAgIGNhc2UgR0xfT1ZFUkxBWV9LSFI6CisgICAgICAgICAgICBy
ZXR1cm4gc3RhdGljX2Nhc3Q8dWludDhfdD4oVktfQkxFTkRfT1BfT1ZFUkxBWV9FWFQgLSBWS19C
TEVORF9PUF9aRVJPX0VYVCk7CisgICAgICAgIGNhc2UgR0xfREFSS0VOX0tIUjoKKyAgICAgICAg
ICAgIHJldHVybiBzdGF0aWNfY2FzdDx1aW50OF90PihWS19CTEVORF9PUF9EQVJLRU5fRVhUIC0g
VktfQkxFTkRfT1BfWkVST19FWFQpOworICAgICAgICBjYXNlIEdMX0xJR0hURU5fS0hSOgorICAg
ICAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PHVpbnQ4X3Q+KFZLX0JMRU5EX09QX0xJR0hURU5f
RVhUIC0gVktfQkxFTkRfT1BfWkVST19FWFQpOworICAgICAgICBjYXNlIEdMX0NPTE9SRE9ER0Vf
S0hSOgorICAgICAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PHVpbnQ4X3Q+KFZLX0JMRU5EX09Q
X0NPTE9SRE9ER0VfRVhUIC0gVktfQkxFTkRfT1BfWkVST19FWFQpOworICAgICAgICBjYXNlIEdM
X0NPTE9SQlVSTl9LSFI6CisgICAgICAgICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8dWludDhfdD4o
VktfQkxFTkRfT1BfQ09MT1JCVVJOX0VYVCAtIFZLX0JMRU5EX09QX1pFUk9fRVhUKTsKKyAgICAg
ICAgY2FzZSBHTF9IQVJETElHSFRfS0hSOgorICAgICAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0
PHVpbnQ4X3Q+KFZLX0JMRU5EX09QX0hBUkRMSUdIVF9FWFQgLSBWS19CTEVORF9PUF9aRVJPX0VY
VCk7CisgICAgICAgIGNhc2UgR0xfU09GVExJR0hUX0tIUjoKKyAgICAgICAgICAgIHJldHVybiBz
dGF0aWNfY2FzdDx1aW50OF90PihWS19CTEVORF9PUF9TT0ZUTElHSFRfRVhUIC0gVktfQkxFTkRf
T1BfWkVST19FWFQpOworICAgICAgICBjYXNlIEdMX0RJRkZFUkVOQ0VfS0hSOgorICAgICAgICAg
ICAgcmV0dXJuIHN0YXRpY19jYXN0PHVpbnQ4X3Q+KFZLX0JMRU5EX09QX0RJRkZFUkVOQ0VfRVhU
IC0gVktfQkxFTkRfT1BfWkVST19FWFQpOworICAgICAgICBjYXNlIEdMX0VYQ0xVU0lPTl9LSFI6
CisgICAgICAgICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8dWludDhfdD4oVktfQkxFTkRfT1BfRVhD
TFVTSU9OX0VYVCAtIFZLX0JMRU5EX09QX1pFUk9fRVhUKTsKKyAgICAgICAgY2FzZSBHTF9IU0xf
SFVFX0tIUjoKKyAgICAgICAgICAgIHJldHVybiBzdGF0aWNfY2FzdDx1aW50OF90PihWS19CTEVO
RF9PUF9IU0xfSFVFX0VYVCAtIFZLX0JMRU5EX09QX1pFUk9fRVhUKTsKKyAgICAgICAgY2FzZSBH
TF9IU0xfU0FUVVJBVElPTl9LSFI6CisgICAgICAgICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8dWlu
dDhfdD4oVktfQkxFTkRfT1BfSFNMX1NBVFVSQVRJT05fRVhUIC0gVktfQkxFTkRfT1BfWkVST19F
WFQpOworICAgICAgICBjYXNlIEdMX0hTTF9DT0xPUl9LSFI6CisgICAgICAgICAgICByZXR1cm4g
c3RhdGljX2Nhc3Q8dWludDhfdD4oVktfQkxFTkRfT1BfSFNMX0NPTE9SX0VYVCAtIFZLX0JMRU5E
X09QX1pFUk9fRVhUKTsKKyAgICAgICAgY2FzZSBHTF9IU0xfTFVNSU5PU0lUWV9LSFI6CisgICAg
ICAgICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8dWludDhfdD4oVktfQkxFTkRfT1BfSFNMX0xVTUlO
T1NJVFlfRVhUIC0gVktfQkxFTkRfT1BfWkVST19FWFQpOwogICAgICAgICBkZWZhdWx0OgogICAg
ICAgICAgICAgVU5SRUFDSEFCTEUoKTsKICAgICAgICAgICAgIHJldHVybiAwOwogICAgIH0KIH0K
IAorVmtCbGVuZE9wIFVucGFja0JsZW5kT3AodWludDhfdCBwYWNrZWRCbGVuZE9wKQoreworICAg
IGlmIChwYWNrZWRCbGVuZE9wIDw9IFZLX0JMRU5EX09QX01BWCkKKyAgICB7CisgICAgICAgIHJl
dHVybiBzdGF0aWNfY2FzdDxWa0JsZW5kT3A+KHBhY2tlZEJsZW5kT3ApOworICAgIH0KKyAgICBy
ZXR1cm4gc3RhdGljX2Nhc3Q8VmtCbGVuZE9wPihwYWNrZWRCbGVuZE9wICsgVktfQkxFTkRfT1Bf
WkVST19FWFQpOworfQorCiB1aW50OF90IFBhY2tHTEJsZW5kRmFjdG9yKEdMZW51bSBibGVuZEZh
Y3RvcikKIHsKICAgICBzd2l0Y2ggKGJsZW5kRmFjdG9yKQpAQCAtMjg0LDEwICszMjMsMTAgQEAg
dm9pZCBVbnBhY2tCbGVuZEF0dGFjaG1lbnRTdGF0ZShjb25zdCBQYWNrZWRDb2xvckJsZW5kQXR0
YWNobWVudFN0YXRlICZwYWNrZWRTdGEKIHsKICAgICBzdGF0ZU91dC0+c3JjQ29sb3JCbGVuZEZh
Y3RvciA9IHN0YXRpY19jYXN0PFZrQmxlbmRGYWN0b3I+KHBhY2tlZFN0YXRlLnNyY0NvbG9yQmxl
bmRGYWN0b3IpOwogICAgIHN0YXRlT3V0LT5kc3RDb2xvckJsZW5kRmFjdG9yID0gc3RhdGljX2Nh
c3Q8VmtCbGVuZEZhY3Rvcj4ocGFja2VkU3RhdGUuZHN0Q29sb3JCbGVuZEZhY3Rvcik7Ci0gICAg
c3RhdGVPdXQtPmNvbG9yQmxlbmRPcCAgICAgICAgPSBzdGF0aWNfY2FzdDxWa0JsZW5kT3A+KHBh
Y2tlZFN0YXRlLmNvbG9yQmxlbmRPcCk7CisgICAgc3RhdGVPdXQtPmNvbG9yQmxlbmRPcCAgICAg
ICAgPSBVbnBhY2tCbGVuZE9wKHBhY2tlZFN0YXRlLmNvbG9yQmxlbmRPcCk7CiAgICAgc3RhdGVP
dXQtPnNyY0FscGhhQmxlbmRGYWN0b3IgPSBzdGF0aWNfY2FzdDxWa0JsZW5kRmFjdG9yPihwYWNr
ZWRTdGF0ZS5zcmNBbHBoYUJsZW5kRmFjdG9yKTsKICAgICBzdGF0ZU91dC0+ZHN0QWxwaGFCbGVu
ZEZhY3RvciA9IHN0YXRpY19jYXN0PFZrQmxlbmRGYWN0b3I+KHBhY2tlZFN0YXRlLmRzdEFscGhh
QmxlbmRGYWN0b3IpOwotICAgIHN0YXRlT3V0LT5hbHBoYUJsZW5kT3AgICAgICAgID0gc3RhdGlj
X2Nhc3Q8VmtCbGVuZE9wPihwYWNrZWRTdGF0ZS5hbHBoYUJsZW5kT3ApOworICAgIHN0YXRlT3V0
LT5hbHBoYUJsZW5kT3AgICAgICAgID0gVW5wYWNrQmxlbmRPcChwYWNrZWRTdGF0ZS5hbHBoYUJs
ZW5kT3ApOwogfQogCiB2b2lkIFNldFBpcGVsaW5lU2hhZGVyU3RhZ2VJbmZvKGNvbnN0IFZrU3Ry
dWN0dXJlVHlwZSB0eXBlLApAQCAtNTk0LDIwICs2MzMsNTEgQEAgdm9pZCBJbml0aWFsaXplVW5y
ZXNvbHZlU3VicGFzc0RlcGVuZGVuY2llcyhjb25zdCBTdWJwYXNzVmVjdG9yPFZrU3VicGFzc0Rl
c2NyaXAKICAgICBkZXBlbmRlbmN5LT5kZXBlbmRlbmN5RmxhZ3MgPSBWS19ERVBFTkRFTkNZX0JZ
X1JFR0lPTl9CSVQ7CiB9CiAKLXZvaWQgSW5pdGlhbGl6ZUlucHV0QXR0YWNobWVudFN1YnBhc3NE
ZXBlbmRlbmNpZXMoCi0gICAgc3RkOjp2ZWN0b3I8VmtTdWJwYXNzRGVwZW5kZW5jeT4gKnN1YnBh
c3NEZXBlbmRlbmNpZXMsCi0gICAgdWludDMyX3Qgc3VicGFzc0luZGV4KQorLy8gZ2xGcmFtZWJ1
ZmZlckZldGNoQmFycmllckVYVCBhbmQgZ2xCbGVuZEJhcnJpZXJLSFIgcmVxdWlyZSBhIHBpcGVs
aW5lIGJhcnJpZXIgdG8gYmUgaW5zZXJ0ZWQgaW4KKy8vIHRoZSByZW5kZXIgcGFzcy4gIFRoaXMg
cmVxdWlyZXMgYSBzdWJwYXNzIHNlbGYtZGVwZW5kZW5jeS4KKy8vCisvLyBGb3IgZnJhbWVidWZm
ZXIgZmV0Y2g6CisvLworLy8gICAgIHNyY1N0YWdlID0gVktfUElQRUxJTkVfU1RBR0VfQ09MT1Jf
QVRUQUNITUVOVF9PVVRQVVRfQklUCisvLyAgICAgZHN0U3RhZ2UgPSBWS19QSVBFTElORV9TVEFH
RV9GUkFHTUVOVF9TSEFERVJfQklUCisvLyAgICAgc3JjQWNjZXNzID0gVktfQUNDRVNTX0NPTE9S
X0FUVEFDSE1FTlRfV1JJVEVfQklUCisvLyAgICAgZHN0QWNjZXNzID0gVktfQUNDRVNTX0lOUFVU
X0FUVEFDSE1FTlRfUkVBRF9CSVQKKy8vCisvLyBGb3IgYWR2YW5jZWQgYmxlbmQ6CisvLworLy8g
ICAgIHNyY1N0YWdlID0gVktfUElQRUxJTkVfU1RBR0VfQ09MT1JfQVRUQUNITUVOVF9PVVRQVVRf
QklUCisvLyAgICAgZHN0U3RhZ2UgPSBWS19QSVBFTElORV9TVEFHRV9DT0xPUl9BVFRBQ0hNRU5U
X09VVFBVVF9CSVQKKy8vICAgICBzcmNBY2Nlc3MgPSBWS19BQ0NFU1NfQ09MT1JfQVRUQUNITUVO
VF9XUklURV9CSVQKKy8vICAgICBkc3RBY2Nlc3MgPSBWS19BQ0NFU1NfQ09MT1JfQVRUQUNITUVO
VF9SRUFEX05PTkNPSEVSRU5UX0JJVF9FWFQKKy8vCisvLyBTdWJwYXNzIGRlcGVuZGVuY2llcyBj
YW5ub3QgYmUgYWRkZWQgYWZ0ZXIgdGhlIGZhY3QgYXQgdGhlIGVuZCBvZiB0aGUgcmVuZGVyIHBh
c3MgZHVlIHRvIHJlbmRlcgorLy8gcGFzcyBjb21wYXRpYmlsaXR5IHJ1bGVzLiAgQU5HTEUgc3Bl
Y2lmaWVzIGEgc3VicGFzcyBzZWxmLWRlcGVuZGVuY3kgd2l0aCB0aGUgYWJvdmUgc3RhZ2UvYWNj
ZXNzCisvLyBtYXNrcyBpbiBwcmVwYXJhdGlvbiBvZiBwb3RlbnRpYWwgZnJhbWVidWZmZXIgZmV0
Y2ggYW5kIGFkdmFuY2VkIGJsZW5kIGJhcnJpZXJzLiAgVGhpcyBpcyBrbm93bgorLy8gbm90IHRv
IGFkZCBhbnkgb3ZlcmhlYWQgb24gYW55IGhhcmR3YXJlIHdlIGhhdmUgYmVlbiBhYmxlIHRvIGdh
dGhlciBpbmZvcm1hdGlvbiBmcm9tLgordm9pZCBJbml0aWFsaXplRGVmYXVsdFN1YnBhc3NTZWxm
RGVwZW5kZW5jaWVzKHZrOjpDb250ZXh0ICpjb250ZXh0LAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFJlbmRlclBhc3NEZXNjICZkZXNjLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IHN1YnBh
c3NJbmRleCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBz
dGQ6OnZlY3RvcjxWa1N1YnBhc3NEZXBlbmRlbmN5PiAqc3VicGFzc0RlcGVuZGVuY2llcykKIHsK
ICAgICBzdWJwYXNzRGVwZW5kZW5jaWVzLT5lbXBsYWNlX2JhY2soKTsKICAgICBWa1N1YnBhc3NE
ZXBlbmRlbmN5ICpkZXBlbmRlbmN5ID0gJnN1YnBhc3NEZXBlbmRlbmNpZXMtPmJhY2soKTsKIAot
ICAgIGRlcGVuZGVuY3ktPnNyY1N1YnBhc3MgICAgICA9IHN1YnBhc3NJbmRleDsKLSAgICBkZXBl
bmRlbmN5LT5kc3RTdWJwYXNzICAgICAgPSBzdWJwYXNzSW5kZXg7Ci0gICAgZGVwZW5kZW5jeS0+
c3JjU3RhZ2VNYXNrICAgID0gVktfUElQRUxJTkVfU1RBR0VfQ09MT1JfQVRUQUNITUVOVF9PVVRQ
VVRfQklUOwotICAgIGRlcGVuZGVuY3ktPmRzdFN0YWdlTWFzayAgICA9IFZLX1BJUEVMSU5FX1NU
QUdFX0ZSQUdNRU5UX1NIQURFUl9CSVQ7Ci0gICAgZGVwZW5kZW5jeS0+c3JjQWNjZXNzTWFzayAg
ID0gVktfQUNDRVNTX0NPTE9SX0FUVEFDSE1FTlRfV1JJVEVfQklUOwotICAgIGRlcGVuZGVuY3kt
PmRzdEFjY2Vzc01hc2sgICA9IFZLX0FDQ0VTU19JTlBVVF9BVFRBQ0hNRU5UX1JFQURfQklUOwor
ICAgIGRlcGVuZGVuY3ktPnNyY1N1YnBhc3MgICA9IHN1YnBhc3NJbmRleDsKKyAgICBkZXBlbmRl
bmN5LT5kc3RTdWJwYXNzICAgPSBzdWJwYXNzSW5kZXg7CisgICAgZGVwZW5kZW5jeS0+c3JjU3Rh
Z2VNYXNrID0gVktfUElQRUxJTkVfU1RBR0VfQ09MT1JfQVRUQUNITUVOVF9PVVRQVVRfQklUOwor
ICAgIGRlcGVuZGVuY3ktPmRzdFN0YWdlTWFzayA9CisgICAgICAgIFZLX1BJUEVMSU5FX1NUQUdF
X0ZSQUdNRU5UX1NIQURFUl9CSVQgfCBWS19QSVBFTElORV9TVEFHRV9DT0xPUl9BVFRBQ0hNRU5U
X09VVFBVVF9CSVQ7CisgICAgZGVwZW5kZW5jeS0+c3JjQWNjZXNzTWFzayA9IFZLX0FDQ0VTU19D
T0xPUl9BVFRBQ0hNRU5UX1dSSVRFX0JJVDsKKyAgICBkZXBlbmRlbmN5LT5kc3RBY2Nlc3NNYXNr
ID0gVktfQUNDRVNTX0lOUFVUX0FUVEFDSE1FTlRfUkVBRF9CSVQ7CisgICAgaWYgKGNvbnRleHQt
PmdldFJlbmRlcmVyKCktPmdldEZlYXR1cmVzKCkuc3VwcG9ydHNCbGVuZE9wZXJhdGlvbkFkdmFu
Y2VkLmVuYWJsZWQpCisgICAgeworICAgICAgICBkZXBlbmRlbmN5LT5kc3RBY2Nlc3NNYXNrIHw9
IFZLX0FDQ0VTU19DT0xPUl9BVFRBQ0hNRU5UX1JFQURfTk9OQ09IRVJFTlRfQklUX0VYVDsKKyAg
ICB9CiAgICAgZGVwZW5kZW5jeS0+ZGVwZW5kZW5jeUZsYWdzID0gVktfREVQRU5ERU5DWV9CWV9S
RUdJT05fQklUOworICAgIGlmIChkZXNjLnZpZXdDb3VudCgpID4gMCkKKyAgICB7CisgICAgICAg
IGRlcGVuZGVuY3ktPmRlcGVuZGVuY3lGbGFncyB8PSBWS19ERVBFTkRFTkNZX1ZJRVdfTE9DQUxf
QklUOworICAgIH0KIH0KIAogdm9pZCBUb0F0dGFjaG1lbnREZXNjaXB0aW9uMihjb25zdCBWa0F0
dGFjaG1lbnREZXNjcmlwdGlvbiAmZGVzYywKQEAgLTEyMDMsMTEgKzEyNzMsOSBAQCBhbmdsZTo6
UmVzdWx0IEluaXRpYWxpemVSZW5kZXJQYXNzRnJvbURlc2MoQ29udGV4dFZrICpjb250ZXh0Vmss
CiAgICAgICAgICAgICBkZXNjLmhhc0RlcHRoU3RlbmNpbFVucmVzb2x2ZUF0dGFjaG1lbnQoKSwg
JnN1YnBhc3NEZXBlbmRlbmNpZXMpOwogICAgIH0KIAotICAgIGlmIChuZWVkSW5wdXRBdHRhY2ht
ZW50cykKLSAgICB7Ci0gICAgICAgIHVpbnQzMl90IGRyYXdTdWJwYXNzSW5kZXggPSBzdGF0aWNf
Y2FzdDx1aW50MzJfdD4oc3VicGFzc0Rlc2Muc2l6ZSgpKSAtIDE7Ci0gICAgICAgIEluaXRpYWxp
emVJbnB1dEF0dGFjaG1lbnRTdWJwYXNzRGVwZW5kZW5jaWVzKCZzdWJwYXNzRGVwZW5kZW5jaWVz
LCBkcmF3U3VicGFzc0luZGV4KTsKLSAgICB9CisgICAgY29uc3QgdWludDMyX3QgZHJhd1N1YnBh
c3NJbmRleCA9IHN0YXRpY19jYXN0PHVpbnQzMl90PihzdWJwYXNzRGVzYy5zaXplKCkpIC0gMTsK
KyAgICBJbml0aWFsaXplRGVmYXVsdFN1YnBhc3NTZWxmRGVwZW5kZW5jaWVzKGNvbnRleHRWaywg
ZGVzYywgZHJhd1N1YnBhc3NJbmRleCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICZzdWJwYXNzRGVwZW5kZW5jaWVzKTsKIAogICAgIFZrUmVuZGVyUGFzc0Ny
ZWF0ZUluZm8gY3JlYXRlSW5mbyA9IHt9OwogICAgIGNyZWF0ZUluZm8uc1R5cGUgICAgICAgICAg
ICAgICAgICA9IFZLX1NUUlVDVFVSRV9UWVBFX1JFTkRFUl9QQVNTX0NSRUFURV9JTkZPOwpAQCAt
MTI3OCw3ICsxMzQ2LDcgQEAgdm9pZCBHZXRSZW5kZXJQYXNzQW5kVXBkYXRlQ291bnRlcnMoQ29u
dGV4dFZrICpjb250ZXh0VmssCiAgICAgKnJlbmRlclBhc3NPdXQgPSAmcmVuZGVyUGFzc0hlbHBl
ci0+Z2V0UmVuZGVyUGFzcygpOwogICAgIGlmICh1cGRhdGVQZXJmQ291bnRlcnMpCiAgICAgewot
ICAgICAgICBQZXJmQ291bnRlcnMgJmNvdW50ZXJzICAgICAgICAgICAgICAgICAgID0gY29udGV4
dFZrLT5nZXRQZXJmQ291bnRlcnMoKTsKKyAgICAgICAgYW5nbGU6OlZ1bGthblBlcmZDb3VudGVy
cyAmY291bnRlcnMgICAgICA9IGNvbnRleHRWay0+Z2V0UGVyZkNvdW50ZXJzKCk7CiAgICAgICAg
IGNvbnN0IFJlbmRlclBhc3NQZXJmQ291bnRlcnMgJnJwQ291bnRlcnMgPSByZW5kZXJQYXNzSGVs
cGVyLT5nZXRQZXJmQ291bnRlcnMoKTsKIAogICAgICAgICBjb3VudGVycy5kZXB0aENsZWFycyAr
PSBycENvdW50ZXJzLmRlcHRoQ2xlYXJzOwpAQCAtMjc1NCw2ICsyODIyLDE3IEBAIHZvaWQgR3Jh
cGhpY3NQaXBlbGluZURlc2M6OnVwZGF0ZVJlbmRlclBhc3NEZXNjKEdyYXBoaWNzUGlwZWxpbmVU
cmFuc2l0aW9uQml0cyAqCiAgICAgfQogfQogCit2b2lkIEdyYXBoaWNzUGlwZWxpbmVEZXNjOjpz
ZXRSZW5kZXJQYXNzU2FtcGxlQ291bnQoR0xpbnQgc2FtcGxlcykKK3sKKyAgICBtUmVuZGVyUGFz
c0Rlc2Muc2V0U2FtcGxlcyhzYW1wbGVzKTsKK30KKwordm9pZCBHcmFwaGljc1BpcGVsaW5lRGVz
Yzo6c2V0UmVuZGVyUGFzc0NvbG9yQXR0YWNobWVudEZvcm1hdChzaXplX3QgY29sb3JJbmRleEdM
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBhbmdsZTo6Rm9ybWF0SUQgZm9ybWF0SUQpCit7CisgICAgbVJlbmRlclBhc3NEZXNj
LnBhY2tDb2xvckF0dGFjaG1lbnQoY29sb3JJbmRleEdMLCBmb3JtYXRJRCk7Cit9CisKIC8vIEF0
dGFjaG1lbnRPcHNBcnJheSBpbXBsZW1lbnRhdGlvbi4KIEF0dGFjaG1lbnRPcHNBcnJheTo6QXR0
YWNobWVudE9wc0FycmF5KCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vdmtfY2FjaGVfdXRpbHMuaCBiL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vdmtfY2FjaGVfdXRp
bHMuaAppbmRleCAwYWI0NDc3ZGFiYWQ5NjBiNTE2MjU4ODExZTNmYWU5YzkzMDUwNjQ5Li4zMDY4
OTE0NTQwNDQzZWE2YzU0MjMxZjM5MDAxYzY2ZTFlNTI0MjlmIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL3ZrX2NhY2hlX3V0
aWxzLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVy
L3Z1bGthbi92a19jYWNoZV91dGlscy5oCkBAIC02MzQsNiArNjM0LDggQEAgY2xhc3MgR3JhcGhp
Y3NQaXBlbGluZURlc2MgZmluYWwKICAgICB2b2lkIHNldFJlbmRlclBhc3NEZXNjKGNvbnN0IFJl
bmRlclBhc3NEZXNjICZyZW5kZXJQYXNzRGVzYyk7CiAgICAgdm9pZCB1cGRhdGVSZW5kZXJQYXNz
RGVzYyhHcmFwaGljc1BpcGVsaW5lVHJhbnNpdGlvbkJpdHMgKnRyYW5zaXRpb24sCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBSZW5kZXJQYXNzRGVzYyAmcmVuZGVyUGFzc0Rl
c2MpOworICAgIHZvaWQgc2V0UmVuZGVyUGFzc1NhbXBsZUNvdW50KEdMaW50IHNhbXBsZXMpOwor
ICAgIHZvaWQgc2V0UmVuZGVyUGFzc0NvbG9yQXR0YWNobWVudEZvcm1hdChzaXplX3QgY29sb3JJ
bmRleEdMLCBhbmdsZTo6Rm9ybWF0SUQgZm9ybWF0SUQpOwogCiAgICAgLy8gQmxlbmQgc3RhdGVz
CiAgICAgdm9pZCBzZXRTaW5nbGVCbGVuZCh1aW50MzJfdCBjb2xvckluZGV4R0wsCkBAIC0xMTQy
LDYgKzExNDQsOCBAQCBjbGFzcyBEZXNjcmlwdG9yU2V0RGVzYwogCiAgICAgdm9pZCByZXNldCgp
IHsgbVBheWxvYWQuY2xlYXIoKTsgfQogCisgICAgc2l6ZV90IGdldEtleVNpemVCeXRlcygpIGNv
bnN0IHsgcmV0dXJuIG1QYXlsb2FkLnNpemUoKSAqIHNpemVvZih1aW50MzJfdCk7IH0KKwogICAg
IGJvb2wgb3BlcmF0b3I9PShjb25zdCBEZXNjcmlwdG9yU2V0RGVzYyAmb3RoZXIpIGNvbnN0CiAg
ICAgewogICAgICAgICByZXR1cm4gKG1QYXlsb2FkLnNpemUoKSA9PSBvdGhlci5tUGF5bG9hZC5z
aXplKCkpICYmCkBAIC0xNzg5LDggKzE3OTMsOCBAQCBjbGFzcyBEcml2ZXJVbmlmb3Jtc0Rlc2Ny
aXB0b3JTZXRDYWNoZSBmaW5hbAogICAgIHNpemVfdCBnZXRTaXplKCkgY29uc3QgeyByZXR1cm4g
bVBheWxvYWQuc2l6ZSgpOyB9CiAKICAgcHJpdmF0ZToKLSAgICBzdGF0aWMgY29uc3RleHByIHVp
bnQzMl90IGtGYXN0TWFwU2l6ZSA9IDE2OwotICAgIGFuZ2xlOjpGYXN0VW5vcmRlcmVkTWFwPHVp
bnQzMl90LCBWa0Rlc2NyaXB0b3JTZXQsIGtGYXN0TWFwU2l6ZT4gbVBheWxvYWQ7CisgICAgc3Rh
dGljIGNvbnN0ZXhwciB1aW50MzJfdCBrRmxhdE1hcFNpemUgPSAxNjsKKyAgICBhbmdsZTo6Rmxh
dFVub3JkZXJlZE1hcDx1aW50MzJfdCwgVmtEZXNjcmlwdG9yU2V0LCBrRmxhdE1hcFNpemU+IG1Q
YXlsb2FkOwogfTsKIAogLy8gVGVtcGxhdGVkIERlc2NyaXB0b3JzIENhY2hlCkBAIC0xODI3LDYg
KzE4MzEsMTcgQEAgY2xhc3MgRGVzY3JpcHRvclNldENhY2hlIGZpbmFsIDogYW5nbGU6Ok5vbkNv
cHlhYmxlCiAgICAgICAgIGFjY3VtdWxhdG9yLT5hY2N1bXVsYXRlQ2FjaGVTdGF0cyhjYWNoZVR5
cGUsIG1DYWNoZVN0YXRzKTsKICAgICB9CiAKKyAgICBzaXplX3QgZ2V0VG90YWxDYWNoZUtleVNp
emVCeXRlcygpIGNvbnN0CisgICAgeworICAgICAgICBzaXplX3QgdG90YWxTaXplID0gMDsKKyAg
ICAgICAgZm9yIChjb25zdCBhdXRvICZpdGVyIDogbVBheWxvYWQpCisgICAgICAgIHsKKyAgICAg
ICAgICAgIGNvbnN0IHZrOjpEZXNjcmlwdG9yU2V0RGVzYyAmZGVzYyA9IGl0ZXIuZmlyc3Q7Cisg
ICAgICAgICAgICB0b3RhbFNpemUgKz0gZGVzYy5nZXRLZXlTaXplQnl0ZXMoKTsKKyAgICAgICAg
fQorICAgICAgICByZXR1cm4gdG90YWxTaXplOworICAgIH0KKwogICBwcml2YXRlOgogICAgIGFu
Z2xlOjpIYXNoTWFwPHZrOjpEZXNjcmlwdG9yU2V0RGVzYywgVmtEZXNjcmlwdG9yU2V0PiBtUGF5
bG9hZDsKICAgICBDYWNoZVN0YXRzIG1DYWNoZVN0YXRzOwpkaWZmIC0tZ2l0IGEvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi92a19jYXBzX3V0aWxz
LmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxr
YW4vdmtfY2Fwc191dGlscy5jcHAKaW5kZXggYTIzNjA2MGVkZTkyOTM5OGQ2NzU3NzBiM2IzOGQ1
NzAwODFkYjczYy4uYzQ4ZTM5ZDAyMDMwYTVhZDcwZThiMjlmYjE4OTk5ZTI1ZjBiMGQ3NCAxMDA2
NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1
bGthbi92a19jYXBzX3V0aWxzLmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
bGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL3ZrX2NhcHNfdXRpbHMuY3BwCkBAIC01MjQsNiArNTI0
LDE2IEBAIHZvaWQgUmVuZGVyZXJWazo6ZW5zdXJlQ2Fwc0luaXRpYWxpemVkKCkgY29uc3QKICAg
ICBtTmF0aXZlRXh0ZW5zaW9ucy5zYW1wbGVWYXJpYWJsZXNPRVMgPQogICAgICAgICBzdXBwb3J0
U2FtcGxlUmF0ZVNoYWRpbmcgJiYgdmtfZ2w6OkdldE1heFNhbXBsZUNvdW50KGtOb3RTdXBwb3J0
ZWRTYW1wbGVDb3VudHMpID09IDA7CiAKKyAgICAvLyBHTF9LSFJfYmxlbmRfZXF1YXRpb25fYWR2
YW5jZWQKKyAgICAvLyBXaGlsZSBhZHZhbmNlZCBibGVuZCBpcyBvbmx5IGFsbG93ZWQgZm9yIG9u
ZSBhdHRhY2htZW50LCB0aGF0IGNvdWxkIGJlIGFueSBhdHRhY2htZW50IGluZGV4LgorICAgIC8v
IFZLX0VYVF9ibGVuZF9vcGVyYXRpb25fYWR2YW5jZWQgcmVxdWlyZXMgdGhhdCB0aGUgYXR0YWNo
bWVudCBpbmRleCBiZSBsZXNzIHRoYW4KKyAgICAvLyB8YWR2YW5jZWRCbGVuZE1heENvbG9yQXR0
YWNobWVudHN8LCB3aGljaCBtZWFucyB3ZSBjYW4gb25seSB0cml2aWFsbHkgdGFrZSBhZHZhbnRh
Z2Ugb2YgdGhpcworICAgIC8vIGV4dGVuc2lvbiBpZiB8YWR2YW5jZWRCbGVuZE1heENvbG9yQXR0
YWNobWVudHMgPj0gbWF4X2RyYXdfYnVmZmVyc3wuCisgICAgbU5hdGl2ZUV4dGVuc2lvbnMuYmxl
bmRFcXVhdGlvbkFkdmFuY2VkS0hSID0KKyAgICAgICAgbUZlYXR1cmVzLnN1cHBvcnRzQmxlbmRP
cGVyYXRpb25BZHZhbmNlZC5lbmFibGVkICYmCisgICAgICAgIG1CbGVuZE9wZXJhdGlvbkFkdmFu
Y2VkUHJvcGVydGllcy5hZHZhbmNlZEJsZW5kTWF4Q29sb3JBdHRhY2htZW50cyA+PQorICAgICAg
ICAgICAgZ2w6OklNUExFTUVOVEFUSU9OX01BWF9EUkFXX0JVRkZFUlM7CisKICAgICAvLyBFbmFi
bGUgRVhUX3VucGFja19zdWJpbWFnZQogICAgIG1OYXRpdmVFeHRlbnNpb25zLnVucGFja1N1Ymlt
YWdlRVhUID0gdHJ1ZTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3Jj
L2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi92a19oZWxwZXJzLmNwcCBiL1NvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vdmtfaGVscGVycy5jcHAKaW5k
ZXggZGI3YWIzZjZiZjY5MWU3YjI2OGFiNDk0NzhhY2Y3ZGI3M2M4OWYzZS4uZjlmMDdmODFlMTE3
ZmIzMDQ2ZGYxNmQ1YmM3NDBkNGIwODFmMGQ2MyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi92a19oZWxwZXJzLmNwcAorKysg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL3Zr
X2hlbHBlcnMuY3BwCkBAIC0xMDAxLDYgKzEwMDEsMjA4IEBAIHZvaWQgUGFja2VkQ2xlYXJWYWx1
ZXNBcnJheTo6c3RvcmVOb0RlcHRoU3RlbmNpbChQYWNrZWRBdHRhY2htZW50SW5kZXggaW5kZXgs
CiAgICAgbVZhbHVlc1tpbmRleC5nZXQoKV0gPSBjbGVhclZhbHVlOwogfQogCisvLyBSZW5kZXJQ
YXNzQXR0YWNobWVudCBpbXBsZW1lbnRhdGlvbgorUmVuZGVyUGFzc0F0dGFjaG1lbnQ6OlJlbmRl
clBhc3NBdHRhY2htZW50KCkKK3sKKyAgICByZXNldCgpOworfQorCit2b2lkIFJlbmRlclBhc3NB
dHRhY2htZW50Ojppbml0KEltYWdlSGVscGVyICppbWFnZSwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgZ2w6OkxldmVsSW5kZXggbGV2ZWxJbmRleCwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgdWludDMyX3QgbGF5ZXJJbmRleCwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgdWludDMyX3QgbGF5ZXJDb3VudCwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgVmtJbWFnZUFzcGVjdEZsYWdCaXRzIGFzcGVjdCkKK3sKKyAgICBtSW1hZ2UgICAg
ICA9IGltYWdlOworICAgIG1MZXZlbEluZGV4ID0gbGV2ZWxJbmRleDsKKyAgICBtTGF5ZXJJbmRl
eCA9IGxheWVySW5kZXg7CisgICAgbUxheWVyQ291bnQgPSBsYXllckNvdW50OworICAgIG1Bc3Bl
Y3QgICAgID0gYXNwZWN0OworCisgICAgbUltYWdlLT5zZXRSZW5kZXJQYXNzVXNhZ2VGbGFnKFJl
bmRlclBhc3NVc2FnZTo6UmVuZGVyVGFyZ2V0QXR0YWNobWVudCk7Cit9CisKK3ZvaWQgUmVuZGVy
UGFzc0F0dGFjaG1lbnQ6OnJlc2V0KCkKK3sKKyAgICBtSW1hZ2UgPSBudWxscHRyOworCisgICAg
bUFjY2VzcyA9IFJlc291cmNlQWNjZXNzOjpVbnVzZWQ7CisKKyAgICBtSW52YWxpZGF0ZWRDbWRD
b3VudCA9IGtJbmZpbml0ZUNtZENvdW50OworICAgIG1EaXNhYmxlZENtZENvdW50ICAgID0ga0lu
ZmluaXRlQ21kQ291bnQ7CisgICAgbUludmFsaWRhdGVBcmVhICAgICAgPSBnbDo6UmVjdGFuZ2xl
KCk7Cit9CisKK3ZvaWQgUmVuZGVyUGFzc0F0dGFjaG1lbnQ6Om9uQWNjZXNzKFJlc291cmNlQWNj
ZXNzIGFjY2VzcywgdWludDMyX3QgY3VycmVudENtZENvdW50KQoreworICAgIC8vIFVwZGF0ZSB0
aGUgYWNjZXNzIGZvciBvcHRpbWl6aW5nIHRoaXMgcmVuZGVyIHBhc3MncyBsb2FkT3AKKyAgICBV
cGRhdGVBY2Nlc3MoJm1BY2Nlc3MsIGFjY2Vzcyk7CisKKyAgICAvLyBVcGRhdGUgdGhlIGludmFs
aWRhdGUgc3RhdGUgZm9yIG9wdGltaXppbmcgdGhpcyByZW5kZXIgcGFzcydzIHN0b3JlT3AKKyAg
ICBpZiAob25BY2Nlc3NJbXBsKGFjY2VzcywgY3VycmVudENtZENvdW50KSkKKyAgICB7CisgICAg
ICAgIC8vIFRoZSBhdHRhY2htZW50IGlzIG5vIGxvbmdlciBpbnZhbGlkLCBzbyByZXN0b3JlIGl0
cyBjb250ZW50LgorICAgICAgICByZXN0b3JlQ29udGVudCgpOworICAgIH0KK30KKwordm9pZCBS
ZW5kZXJQYXNzQXR0YWNobWVudDo6aW52YWxpZGF0ZShjb25zdCBnbDo6UmVjdGFuZ2xlICZpbnZh
bGlkYXRlQXJlYSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCBp
c0F0dGFjaG1lbnRFbmFibGVkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICB1aW50MzJfdCBjdXJyZW50Q21kQ291bnQpCit7CisgICAgLy8gS2VlcCB0cmFjayBvZiB0aGUg
Y29tbWFuZCBjb3VudCBpbiB0aGUgcmVuZGVyIHBhc3MgYXQgdGhlIHRpbWUgb2YgaW52YWxpZGF0
aW9uLiAgSWYgdGhlcmUgYXJlCisgICAgLy8gbW9yZSBjb21tYW5kcyBpbiB0aGUgZnV0dXJlLCBp
bnZhbGlkYXRlIG11c3QgYmUgdW5kb25lLgorICAgIG1JbnZhbGlkYXRlZENtZENvdW50ID0gY3Vy
cmVudENtZENvdW50OworCisgICAgLy8gQWxzbyB0cmFjayB0aGUgY29tbWFuZCBjb3VudCBpZiB0
aGUgYXR0YWNobWVudCBpcyBjdXJyZW50bHkgZGlzYWJsZWQuCisgICAgbURpc2FibGVkQ21kQ291
bnQgPSBpc0F0dGFjaG1lbnRFbmFibGVkID8ga0luZmluaXRlQ21kQ291bnQgOiBjdXJyZW50Q21k
Q291bnQ7CisKKyAgICAvLyBTZXQvZXh0ZW5kIHRoZSBpbnZhbGlkYXRlIGFyZWEuCisgICAgRXh0
ZW5kUmVuZGVyUGFzc0ludmFsaWRhdGVBcmVhKGludmFsaWRhdGVBcmVhLCAmbUludmFsaWRhdGVB
cmVhKTsKK30KKwordm9pZCBSZW5kZXJQYXNzQXR0YWNobWVudDo6b25SZW5kZXJBcmVhR3Jvd3Ro
KENvbnRleHRWayAqY29udGV4dFZrLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGNvbnN0IGdsOjpSZWN0YW5nbGUgJm5ld1JlbmRlckFyZWEpCit7CisgICAg
Ly8gUmVtb3ZlIGludmFsaWRhdGUgaWYgaXQncyBubyBsb25nZXIgYXBwbGljYWJsZS4KKyAgICBp
ZiAobUludmFsaWRhdGVBcmVhLmVtcHR5KCkgfHwgbUludmFsaWRhdGVBcmVhLmVuY2xvc2VzKG5l
d1JlbmRlckFyZWEpKQorICAgIHsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIEFOR0xF
X1ZLX1BFUkZfV0FSTklORyhjb250ZXh0VmssIEdMX0RFQlVHX1NFVkVSSVRZX0xPVywKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgIkludmFsaWRhdGVTdWJGcmFtZWJ1ZmZlciBkaXNjYXJkZWQg
ZHVlIHRvIGluY3JlYXNlZCBzY2lzc29yIHJlZ2lvbiIpOworCisgICAgbUludmFsaWRhdGVBcmVh
ICAgICAgPSBnbDo6UmVjdGFuZ2xlKCk7CisgICAgbUludmFsaWRhdGVkQ21kQ291bnQgPSBrSW5m
aW5pdGVDbWRDb3VudDsKK30KKwordm9pZCBSZW5kZXJQYXNzQXR0YWNobWVudDo6ZmluYWxpemVM
b2FkU3RvcmUoQ29udGV4dCAqY29udGV4dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHVpbnQzMl90IGN1cnJlbnRDbWRDb3VudCwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wgaGFzVW5yZXNvbHZlQXR0YWNobWVu
dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJlbmRlclBh
c3NMb2FkT3AgKmxvYWRPcCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFJlbmRlclBhc3NTdG9yZU9wICpzdG9yZU9wLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCAqaXNJbnZhbGlkYXRlZE91dCkKK3sKKyAgICAv
LyBFbnN1cmUgd2UgZG9uJ3Qgd3JpdGUgdG8gYSByZWFkLW9ubHkgYXR0YWNobWVudC4gKFJlYWRP
bmx5IC0+ICFXcml0ZSkKKyAgICBBU1NFUlQoIW1JbWFnZS0+aGFzUmVuZGVyUGFzc1VzYWdlRmxh
ZyhSZW5kZXJQYXNzVXNhZ2U6OlJlYWRPbmx5QXR0YWNobWVudCkgfHwKKyAgICAgICAgICAgbUFj
Y2VzcyAhPSBSZXNvdXJjZUFjY2Vzczo6V3JpdGUpOworCisgICAgLy8gSWYgdGhlIGF0dGFjaG1l
bnQgaXMgaW52YWxpZGF0ZWQsIHNraXAgdGhlIHN0b3JlIG9wLiAgSWYgd2UgYXJlIG5vdCBsb2Fk
aW5nIG9yIGNsZWFyaW5nIHRoZQorICAgIC8vIGF0dGFjaG1lbnQgYW5kIHRoZSBhdHRhY2htZW50
IGhhcyBub3QgYmVlbiB1c2VkLCBhdXRvLWludmFsaWRhdGUgaXQuCisgICAgY29uc3QgYm9vbCBu
b3RMb2FkZWQgPSAqbG9hZE9wID09IFJlbmRlclBhc3NMb2FkT3A6OkRvbnRDYXJlICYmICFoYXNV
bnJlc29sdmVBdHRhY2htZW50OworICAgIGlmIChpc0ludmFsaWRhdGVkKGN1cnJlbnRDbWRDb3Vu
dCkgfHwgKG5vdExvYWRlZCAmJiBtQWNjZXNzICE9IFJlc291cmNlQWNjZXNzOjpXcml0ZSkpCisg
ICAgeworICAgICAgICAqc3RvcmVPcCAgICAgICAgICA9IFJlbmRlclBhc3NTdG9yZU9wOjpEb250
Q2FyZTsKKyAgICAgICAgKmlzSW52YWxpZGF0ZWRPdXQgPSB0cnVlOworICAgIH0KKyAgICBlbHNl
IGlmIChoYXNXcml0ZUFmdGVySW52YWxpZGF0ZShjdXJyZW50Q21kQ291bnQpKQorICAgIHsKKyAg
ICAgICAgLy8gVGhlIGF0dGFjaG1lbnQgd2FzIGludmFsaWRhdGVkLCBidXQgaXMgbm93IHZhbGlk
LiAgTGV0IHRoZSBpbWFnZSBrbm93IHRoZSBjb250ZW50cyBhcmUKKyAgICAgICAgLy8gbm93IGRl
ZmluZWQgc28gYSBmdXR1cmUgcmVuZGVyIHBhc3Mgd291bGQgdXNlIGxvYWRPcD1MT0FELgorICAg
ICAgICByZXN0b3JlQ29udGVudCgpOworICAgIH0KKworICAgIC8vIEZvciByZWFkIG9ubHkgZGVw
dGggc3RlbmNpbCwgd2UgY2FuIHVzZSBTdG9yZU9wTm9uZSBpZiBhdmFpbGFibGUuICBEb250Q2Fy
ZSBpcyBzdGlsbAorICAgIC8vIHByZWZlcnJlZCwgc28gZG8gdGhpcyBhZnRlciBoYW5kbGluZyBE
b250Q2FyZS4KKyAgICBjb25zdCBib29sIHN1cHBvcnRzTG9hZFN0b3JlT3BOb25lID0KKyAgICAg
ICAgY29udGV4dC0+Z2V0UmVuZGVyZXIoKS0+Z2V0RmVhdHVyZXMoKS5zdXBwb3J0c1JlbmRlclBh
c3NMb2FkU3RvcmVPcE5vbmUuZW5hYmxlZDsKKyAgICBjb25zdCBib29sIHN1cHBvcnRzU3RvcmVP
cE5vbmUgPQorICAgICAgICBzdXBwb3J0c0xvYWRTdG9yZU9wTm9uZSB8fAorICAgICAgICBjb250
ZXh0LT5nZXRSZW5kZXJlcigpLT5nZXRGZWF0dXJlcygpLnN1cHBvcnRzUmVuZGVyUGFzc1N0b3Jl
T3BOb25lUUNPTS5lbmFibGVkOworICAgIGlmIChtSW1hZ2UtPmhhc1JlbmRlclBhc3NVc2FnZUZs
YWcoUmVuZGVyUGFzc1VzYWdlOjpSZWFkT25seUF0dGFjaG1lbnQpICYmIHN1cHBvcnRzU3RvcmVP
cE5vbmUpCisgICAgeworICAgICAgICBpZiAoKnN0b3JlT3AgPT0gUmVuZGVyUGFzc1N0b3JlT3A6
OlN0b3JlKQorICAgICAgICB7CisgICAgICAgICAgICAqc3RvcmVPcCA9IFJlbmRlclBhc3NTdG9y
ZU9wOjpOb25lOworICAgICAgICB9CisgICAgfQorCisgICAgaWYgKG1BY2Nlc3MgPT0gUmVzb3Vy
Y2VBY2Nlc3M6OlVudXNlZCkKKyAgICB7CisgICAgICAgIGlmICgqc3RvcmVPcCA9PSBSZW5kZXJQ
YXNzU3RvcmVPcDo6RG9udENhcmUpCisgICAgICAgIHsKKyAgICAgICAgICAgIC8vIElmIHdlIGFy
ZSBsb2FkaW5nIG9yIGNsZWFyaW5nIHRoZSBhdHRhY2htZW50LCBidXQgdGhlIGF0dGFjaG1lbnQg
aGFzIG5vdCBiZWVuIHVzZWQsCisgICAgICAgICAgICAvLyBhbmQgdGhlIGRhdGEgaGFzIGFsc28g
bm90IGJlZW4gc3RvcmVkIGJhY2sgaW50byBhdHRhY2htZW50LCB0aGVuIGp1c3Qgc2tpcCB0aGUK
KyAgICAgICAgICAgIC8vIGxvYWQvY2xlYXIgb3AuCisgICAgICAgICAgICAqbG9hZE9wID0gUmVu
ZGVyUGFzc0xvYWRPcDo6RG9udENhcmU7CisgICAgICAgIH0KKyAgICAgICAgZWxzZSBpZiAoKmxv
YWRPcCAhPSBSZW5kZXJQYXNzTG9hZE9wOjpDbGVhciAmJiBzdXBwb3J0c0xvYWRTdG9yZU9wTm9u
ZSkKKyAgICAgICAgeworICAgICAgICAgICAgLy8gT3RoZXJ3aXNlIG1ha2Ugc3VyZSB0aGUgYXR0
YWNobWVudCBpcyBuZWl0aGVyIGxvYWRlZCBub3Igc3RvcmVkIChhcyBpdCdzIG5laXRoZXIKKyAg
ICAgICAgICAgIC8vIHVzZWQgbm9yIGludmFsaWRhdGVkKS4KKyAgICAgICAgICAgICpsb2FkT3Ag
ID0gUmVuZGVyUGFzc0xvYWRPcDo6Tm9uZTsKKyAgICAgICAgICAgICpzdG9yZU9wID0gUmVuZGVy
UGFzc1N0b3JlT3A6Ok5vbmU7CisgICAgICAgIH0KKyAgICB9Cit9CisKK3ZvaWQgUmVuZGVyUGFz
c0F0dGFjaG1lbnQ6OnJlc3RvcmVDb250ZW50KCkKK3sKKyAgICAvLyBOb3RlIHRoYXQgdGhlIGlt
YWdlIG1heSBoYXZlIGJlZW4gZGVsZXRlZCBzaW5jZSB0aGUgcmVuZGVyIHBhc3MgaGFzIHN0YXJ0
ZWQuCisgICAgaWYgKG1JbWFnZSkKKyAgICB7CisgICAgICAgIEFTU0VSVChtSW1hZ2UtPnZhbGlk
KCkpOworICAgICAgICBpZiAobUFzcGVjdCA9PSBWS19JTUFHRV9BU1BFQ1RfU1RFTkNJTF9CSVQp
CisgICAgICAgIHsKKyAgICAgICAgICAgIG1JbWFnZS0+cmVzdG9yZVN1YnJlc291cmNlU3RlbmNp
bENvbnRlbnQobUxldmVsSW5kZXgsIG1MYXllckluZGV4LCBtTGF5ZXJDb3VudCk7CisgICAgICAg
IH0KKyAgICAgICAgZWxzZQorICAgICAgICB7CisgICAgICAgICAgICBtSW1hZ2UtPnJlc3RvcmVT
dWJyZXNvdXJjZUNvbnRlbnQobUxldmVsSW5kZXgsIG1MYXllckluZGV4LCBtTGF5ZXJDb3VudCk7
CisgICAgICAgIH0KKyAgICAgICAgbUludmFsaWRhdGVBcmVhID0gZ2w6OlJlY3RhbmdsZSgpOwor
ICAgIH0KK30KKworYm9vbCBSZW5kZXJQYXNzQXR0YWNobWVudDo6aGFzV3JpdGVBZnRlckludmFs
aWRhdGUodWludDMyX3QgY3VycmVudENtZENvdW50KSBjb25zdAoreworICAgIHJldHVybiAobUlu
dmFsaWRhdGVkQ21kQ291bnQgIT0ga0luZmluaXRlQ21kQ291bnQgJiYKKyAgICAgICAgICAgIHN0
ZDo6bWluKG1EaXNhYmxlZENtZENvdW50LCBjdXJyZW50Q21kQ291bnQpICE9IG1JbnZhbGlkYXRl
ZENtZENvdW50KTsKK30KKworYm9vbCBSZW5kZXJQYXNzQXR0YWNobWVudDo6aXNJbnZhbGlkYXRl
ZCh1aW50MzJfdCBjdXJyZW50Q21kQ291bnQpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1JbnZhbGlk
YXRlZENtZENvdW50ICE9IGtJbmZpbml0ZUNtZENvdW50ICYmCisgICAgICAgICAgIHN0ZDo6bWlu
KG1EaXNhYmxlZENtZENvdW50LCBjdXJyZW50Q21kQ291bnQpID09IG1JbnZhbGlkYXRlZENtZENv
dW50OworfQorCitib29sIFJlbmRlclBhc3NBdHRhY2htZW50OjpvbkFjY2Vzc0ltcGwoUmVzb3Vy
Y2VBY2Nlc3MgYWNjZXNzLCB1aW50MzJfdCBjdXJyZW50Q21kQ291bnQpCit7CisgICAgaWYgKG1J
bnZhbGlkYXRlZENtZENvdW50ID09IGtJbmZpbml0ZUNtZENvdW50KQorICAgIHsKKyAgICAgICAg
Ly8gSWYgbmV2ZXIgaW52YWxpZGF0ZWQgb3Igbm8gbG9uZ2VyIGludmFsaWRhdGVkLCByZXR1cm4g
ZWFybHkuCisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisgICAgaWYgKGFjY2VzcyA9PSBS
ZXNvdXJjZUFjY2Vzczo6V3JpdGUpCisgICAgeworICAgICAgICAvLyBEcmF3aW5nIHRvIHRoaXMg
YXR0YWNobWVudCBpcyBiZWluZyBlbmFibGVkLiAgQXNzdW1lIHRoYXQgZHJhd2luZyB3aWxsIGlt
bWVkaWF0ZWx5IG9jY3VyCisgICAgICAgIC8vIGFmdGVyIHRoaXMgYXR0YWNobWVudCBpcyBlbmFi
bGVkLCBhbmQgdGhhdCBtZWFucyB0aGF0IHRoZSBhdHRhY2htZW50IHdpbGwgbm8gbG9uZ2VyIGJl
CisgICAgICAgIC8vIGludmFsaWRhdGVkLgorICAgICAgICBtSW52YWxpZGF0ZWRDbWRDb3VudCA9
IGtJbmZpbml0ZUNtZENvdW50OworICAgICAgICBtRGlzYWJsZWRDbWRDb3VudCAgICA9IGtJbmZp
bml0ZUNtZENvdW50OworICAgICAgICAvLyBSZXR1cm4gdHJ1ZSB0byBpbmRpY2F0ZSB0aGF0IHRo
ZSBzdG9yZSBvcCBzaG91bGQgcmVtYWluIFNUT1JFIGFuZCB0aGF0IG1Db250ZW50RGVmaW5lZAor
ICAgICAgICAvLyBzaG91bGQgYmUgc2V0IHRvIHRydWU7CisgICAgICAgIHJldHVybiB0cnVlOwor
ICAgIH0KKyAgICAvLyBEcmF3aW5nIHRvIHRoaXMgYXR0YWNobWVudCBpcyBiZWluZyBkaXNhYmxl
ZC4KKyAgICBpZiAoaGFzV3JpdGVBZnRlckludmFsaWRhdGUoY3VycmVudENtZENvdW50KSkKKyAg
ICB7CisgICAgICAgIC8vIFRoZSBhdHRhY2htZW50IHdhcyBwcmV2aW91c2x5IGRyYXduIHdoaWxl
IGVuYWJsZWQsIGFuZCBzbyBpcyBubyBsb25nZXIgaW52YWxpZGF0ZWQuCisgICAgICAgIG1JbnZh
bGlkYXRlZENtZENvdW50ID0ga0luZmluaXRlQ21kQ291bnQ7CisgICAgICAgIG1EaXNhYmxlZENt
ZENvdW50ICAgID0ga0luZmluaXRlQ21kQ291bnQ7CisgICAgICAgIC8vIFJldHVybiB0cnVlIHRv
IGluZGljYXRlIHRoYXQgdGhlIHN0b3JlIG9wIHNob3VsZCByZW1haW4gU1RPUkUgYW5kIHRoYXQg
bUNvbnRlbnREZWZpbmVkCisgICAgICAgIC8vIHNob3VsZCBiZSBzZXQgdG8gdHJ1ZTsKKyAgICAg
ICAgcmV0dXJuIHRydWU7CisgICAgfQorCisgICAgLy8gVXNlIHRoZSBsYXRlc3QgQ21kQ291bnQg
YXQgdGhlIHN0YXJ0IG9mIGJlaW5nIGRpc2FibGVkLiAgQXQgdGhlIGVuZCBvZiB0aGUgcmVuZGVy
IHBhc3MsCisgICAgLy8gY21kQ291bnREaXNhYmxlZCBpcyA8PSB0aGUgYWN0dWFsIGNvbW1hbmQg
Y291bnQsIGFuZCBzbyBpdCdzIGNvbXBhcmVkIHdpdGgKKyAgICAvLyBjbWRDb3VudEludmFsaWRh
dGVkLiAgSWYgdGhlIHNhbWUsIHRoZSBhdHRhY2htZW50IGlzIHN0aWxsIGludmFsaWRhdGVkLgor
ICAgIG1EaXNhYmxlZENtZENvdW50ID0gY3VycmVudENtZENvdW50OworICAgIHJldHVybiBmYWxz
ZTsKK30KKwogLy8gQ29tbWFuZEJ1ZmZlckhlbHBlckNvbW1vbiBpbXBsZW1lbnRhdGlvbi4KIENv
bW1hbmRCdWZmZXJIZWxwZXJDb21tb246OkNvbW1hbmRCdWZmZXJIZWxwZXJDb21tb24oKQogICAg
IDogbVBpcGVsaW5lQmFycmllcnMoKSwKQEAgLTEyNjUsMTkgKzE0NjcsOCBAQCBSZW5kZXJQYXNz
Q29tbWFuZEJ1ZmZlckhlbHBlcjo6UmVuZGVyUGFzc0NvbW1hbmRCdWZmZXJIZWxwZXIoKQogICAg
ICAgbVZhbGlkVHJhbnNmb3JtRmVlZGJhY2tCdWZmZXJDb3VudCgwKSwKICAgICAgIG1SZWJpbmRU
cmFuc2Zvcm1GZWVkYmFja0J1ZmZlcnMoZmFsc2UpLAogICAgICAgbUlzVHJhbnNmb3JtRmVlZGJh
Y2tBY3RpdmVVbnBhdXNlZChmYWxzZSksCi0gICAgICBtRGVwdGhBY2Nlc3MoUmVzb3VyY2VBY2Nl
c3M6OlVudXNlZCksCi0gICAgICBtU3RlbmNpbEFjY2VzcyhSZXNvdXJjZUFjY2Vzczo6VW51c2Vk
KSwKICAgICAgIG1QcmV2aW91c1N1YnBhc3Nlc0NtZENvdW50KDApLAotICAgICAgbURlcHRoQ21k
Q291bnRJbnZhbGlkYXRlZChrSW5maW5pdGVDbWRDb3VudCksCi0gICAgICBtRGVwdGhDbWRDb3Vu
dERpc2FibGVkKGtJbmZpbml0ZUNtZENvdW50KSwKLSAgICAgIG1TdGVuY2lsQ21kQ291bnRJbnZh
bGlkYXRlZChrSW5maW5pdGVDbWRDb3VudCksCi0gICAgICBtU3RlbmNpbENtZENvdW50RGlzYWJs
ZWQoa0luZmluaXRlQ21kQ291bnQpLAogICAgICAgbURlcHRoU3RlbmNpbEF0dGFjaG1lbnRJbmRl
eChrQXR0YWNobWVudEluZGV4SW52YWxpZCksCi0gICAgICBtRGVwdGhTdGVuY2lsSW1hZ2UobnVs
bHB0ciksCi0gICAgICBtRGVwdGhTdGVuY2lsUmVzb2x2ZUltYWdlKG51bGxwdHIpLAotICAgICAg
bURlcHRoU3RlbmNpbExldmVsSW5kZXgoMCksCi0gICAgICBtRGVwdGhTdGVuY2lsTGF5ZXJJbmRl
eCgwKSwKLSAgICAgIG1EZXB0aFN0ZW5jaWxMYXllckNvdW50KDApLAogICAgICAgbUNvbG9ySW1h
Z2VzQ291bnQoMCksCiAgICAgICBtSW1hZ2VPcHRpbWl6ZUZvclByZXNlbnQobnVsbHB0cikKIHt9
CkBAIC0xMzA3LDI0ICsxNDk4LDE5IEBAIGFuZ2xlOjpSZXN1bHQgUmVuZGVyUGFzc0NvbW1hbmRC
dWZmZXJIZWxwZXI6OnJlc2V0KENvbnRleHQgKmNvbnRleHQpCiAgICAgbVJlYmluZFRyYW5zZm9y
bUZlZWRiYWNrQnVmZmVycyAgICA9IGZhbHNlOwogICAgIG1IYXNTaGFkZXJTdG9yYWdlT3V0cHV0
ICAgICAgICAgICAgPSBmYWxzZTsKICAgICBtSGFzR0xNZW1vcnlCYXJyaWVySXNzdWVkICAgICAg
ICAgID0gZmFsc2U7Ci0gICAgbURlcHRoQWNjZXNzICAgICAgICAgICAgICAgICAgICAgICA9IFJl
c291cmNlQWNjZXNzOjpVbnVzZWQ7Ci0gICAgbVN0ZW5jaWxBY2Nlc3MgICAgICAgICAgICAgICAg
ICAgICA9IFJlc291cmNlQWNjZXNzOjpVbnVzZWQ7CiAgICAgbVByZXZpb3VzU3VicGFzc2VzQ21k
Q291bnQgICAgICAgICA9IDA7Ci0gICAgbURlcHRoQ21kQ291bnRJbnZhbGlkYXRlZCAgICAgICAg
ICA9IGtJbmZpbml0ZUNtZENvdW50OwotICAgIG1EZXB0aENtZENvdW50RGlzYWJsZWQgICAgICAg
ICAgICAgPSBrSW5maW5pdGVDbWRDb3VudDsKLSAgICBtU3RlbmNpbENtZENvdW50SW52YWxpZGF0
ZWQgICAgICAgID0ga0luZmluaXRlQ21kQ291bnQ7Ci0gICAgbVN0ZW5jaWxDbWRDb3VudERpc2Fi
bGVkICAgICAgICAgICA9IGtJbmZpbml0ZUNtZENvdW50OwogICAgIG1Db2xvckltYWdlc0NvdW50
ICAgICAgICAgICAgICAgICAgPSBQYWNrZWRBdHRhY2htZW50Q291bnQoMCk7CiAgICAgbURlcHRo
U3RlbmNpbEF0dGFjaG1lbnRJbmRleCAgICAgICA9IGtBdHRhY2htZW50SW5kZXhJbnZhbGlkOwot
ICAgIG1EZXB0aEludmFsaWRhdGVBcmVhICAgICAgICAgICAgICAgPSBnbDo6UmVjdGFuZ2xlKCk7
Ci0gICAgbVN0ZW5jaWxJbnZhbGlkYXRlQXJlYSAgICAgICAgICAgICA9IGdsOjpSZWN0YW5nbGUo
KTsKICAgICBtUmVuZGVyUGFzc1VzZWRJbWFnZXMuY2xlYXIoKTsKLSAgICBtRGVwdGhTdGVuY2ls
SW1hZ2UgICAgICAgID0gbnVsbHB0cjsKLSAgICBtRGVwdGhTdGVuY2lsUmVzb2x2ZUltYWdlID0g
bnVsbHB0cjsKICAgICBtQ29sb3JJbWFnZXMucmVzZXQoKTsKICAgICBtQ29sb3JSZXNvbHZlSW1h
Z2VzLnJlc2V0KCk7CiAgICAgbUltYWdlT3B0aW1pemVGb3JQcmVzZW50ID0gbnVsbHB0cjsKIAor
ICAgIG1EZXB0aEF0dGFjaG1lbnQucmVzZXQoKTsKKyAgICBtRGVwdGhSZXNvbHZlQXR0YWNobWVu
dC5yZXNldCgpOworICAgIG1TdGVuY2lsQXR0YWNobWVudC5yZXNldCgpOworICAgIG1TdGVuY2ls
UmVzb2x2ZUF0dGFjaG1lbnQucmVzZXQoKTsKKwogICAgIC8vIFJlc2V0IGFuZCByZS1pbml0aWFs
aXplIHRoZSBjb21tYW5kIGJ1ZmZlcnMKICAgICBmb3IgKHVpbnQzMl90IHN1YnBhc3MgPSAwOyBz
dWJwYXNzIDw9IG1DdXJyZW50U3VicGFzczsgKytzdWJwYXNzKQogICAgIHsKQEAgLTE0MjAsMTEg
KzE2MDYsOSBAQCB2b2lkIFJlbmRlclBhc3NDb21tYW5kQnVmZmVySGVscGVyOjpkZXB0aFN0ZW5j
aWxJbWFnZXNEcmF3KFJlc291cmNlVXNlTGlzdCAqcmVzbwogICAgIC8vIG9ubHkgaW5zZXJ0IGxh
eW91dCBjaGFuZ2UgYmFycmllciBvbmNlLgogICAgIGltYWdlLT5yZXRhaW4ocmVzb3VyY2VVc2VM
aXN0KTsKICAgICBtUmVuZGVyUGFzc1VzZWRJbWFnZXMuaW5zZXJ0KGltYWdlLT5nZXRJbWFnZVNl
cmlhbCgpKTsKLSAgICBtRGVwdGhTdGVuY2lsSW1hZ2UgICAgICA9IGltYWdlOwotICAgIG1EZXB0
aFN0ZW5jaWxMZXZlbEluZGV4ID0gbGV2ZWw7Ci0gICAgbURlcHRoU3RlbmNpbExheWVySW5kZXgg
PSBsYXllclN0YXJ0OwotICAgIG1EZXB0aFN0ZW5jaWxMYXllckNvdW50ID0gbGF5ZXJDb3VudDsK
LSAgICBpbWFnZS0+c2V0UmVuZGVyUGFzc1VzYWdlRmxhZyhSZW5kZXJQYXNzVXNhZ2U6OlJlbmRl
clRhcmdldEF0dGFjaG1lbnQpOworCisgICAgbURlcHRoQXR0YWNobWVudC5pbml0KGltYWdlLCBs
ZXZlbCwgbGF5ZXJTdGFydCwgbGF5ZXJDb3VudCwgVktfSU1BR0VfQVNQRUNUX0RFUFRIX0JJVCk7
CisgICAgbVN0ZW5jaWxBdHRhY2htZW50LmluaXQoaW1hZ2UsIGxldmVsLCBsYXllclN0YXJ0LCBs
YXllckNvdW50LCBWS19JTUFHRV9BU1BFQ1RfU1RFTkNJTF9CSVQpOwogCiAgICAgaWYgKHJlc29s
dmVJbWFnZSkKICAgICB7CkBAIC0xNDMzLDEzNSArMTYxNyw1OSBAQCB2b2lkIFJlbmRlclBhc3ND
b21tYW5kQnVmZmVySGVscGVyOjpkZXB0aFN0ZW5jaWxJbWFnZXNEcmF3KFJlc291cmNlVXNlTGlz
dCAqcmVzbwogICAgICAgICAvLyBtdWx0aXNhbXBsZWQtcmVuZGVyLXRvLXRleHR1cmUgcmVuZGVy
YnVmZmVycy4KICAgICAgICAgcmVzb2x2ZUltYWdlLT5yZXRhaW4ocmVzb3VyY2VVc2VMaXN0KTsK
ICAgICAgICAgbVJlbmRlclBhc3NVc2VkSW1hZ2VzLmluc2VydChyZXNvbHZlSW1hZ2UtPmdldElt
YWdlU2VyaWFsKCkpOwotICAgICAgICBtRGVwdGhTdGVuY2lsUmVzb2x2ZUltYWdlID0gcmVzb2x2
ZUltYWdlOwotICAgICAgICByZXNvbHZlSW1hZ2UtPnNldFJlbmRlclBhc3NVc2FnZUZsYWcoUmVu
ZGVyUGFzc1VzYWdlOjpSZW5kZXJUYXJnZXRBdHRhY2htZW50KTsKKworICAgICAgICBtRGVwdGhS
ZXNvbHZlQXR0YWNobWVudC5pbml0KHJlc29sdmVJbWFnZSwgbGV2ZWwsIGxheWVyU3RhcnQsIGxh
eWVyQ291bnQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVktfSU1BR0Vf
QVNQRUNUX0RFUFRIX0JJVCk7CisgICAgICAgIG1TdGVuY2lsUmVzb2x2ZUF0dGFjaG1lbnQuaW5p
dChyZXNvbHZlSW1hZ2UsIGxldmVsLCBsYXllclN0YXJ0LCBsYXllckNvdW50LAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVktfSU1BR0VfQVNQRUNUX1NURU5DSUxfQklU
KTsKICAgICB9CiB9CiAKIHZvaWQgUmVuZGVyUGFzc0NvbW1hbmRCdWZmZXJIZWxwZXI6Om9uRGVw
dGhBY2Nlc3MoUmVzb3VyY2VBY2Nlc3MgYWNjZXNzKQogewotICAgIC8vIFVwZGF0ZSB0aGUgYWNj
ZXNzIGZvciBvcHRpbWl6aW5nIHRoaXMgcmVuZGVyIHBhc3MncyBsb2FkT3AKLSAgICBVcGRhdGVB
Y2Nlc3MoJm1EZXB0aEFjY2VzcywgYWNjZXNzKTsKLQotICAgIC8vIFVwZGF0ZSB0aGUgaW52YWxp
ZGF0ZSBzdGF0ZSBmb3Igb3B0aW1pemluZyB0aGlzIHJlbmRlciBwYXNzJ3Mgc3RvcmVPcAotICAg
IGlmIChvbkRlcHRoU3RlbmNpbEFjY2VzcyhhY2Nlc3MsICZtRGVwdGhDbWRDb3VudEludmFsaWRh
dGVkLCAmbURlcHRoQ21kQ291bnREaXNhYmxlZCkpCi0gICAgewotICAgICAgICAvLyBUaGUgYXR0
YWNobWVudCBpcyBubyBsb25nZXIgaW52YWxpZCwgc28gcmVzdG9yZSBpdHMgY29udGVudC4KLSAg
ICAgICAgcmVzdG9yZURlcHRoQ29udGVudCgpOwotICAgIH0KKyAgICBtRGVwdGhBdHRhY2htZW50
Lm9uQWNjZXNzKGFjY2VzcywgZ2V0UmVuZGVyUGFzc1dyaXRlQ29tbWFuZENvdW50KCkpOwogfQog
CiB2b2lkIFJlbmRlclBhc3NDb21tYW5kQnVmZmVySGVscGVyOjpvblN0ZW5jaWxBY2Nlc3MoUmVz
b3VyY2VBY2Nlc3MgYWNjZXNzKQogewotICAgIC8vIFVwZGF0ZSB0aGUgYWNjZXNzIGZvciBvcHRp
bWl6aW5nIHRoaXMgcmVuZGVyIHBhc3MncyBsb2FkT3AKLSAgICBVcGRhdGVBY2Nlc3MoJm1TdGVu
Y2lsQWNjZXNzLCBhY2Nlc3MpOwotCi0gICAgLy8gVXBkYXRlIHRoZSBpbnZhbGlkYXRlIHN0YXRl
IGZvciBvcHRpbWl6aW5nIHRoaXMgcmVuZGVyIHBhc3MncyBzdGVuY2lsU3RvcmVPcAotICAgIGlm
IChvbkRlcHRoU3RlbmNpbEFjY2VzcyhhY2Nlc3MsICZtU3RlbmNpbENtZENvdW50SW52YWxpZGF0
ZWQsICZtU3RlbmNpbENtZENvdW50RGlzYWJsZWQpKQotICAgIHsKLSAgICAgICAgLy8gVGhlIGF0
dGFjaG1lbnQgaXMgbm8gbG9uZ2VyIGludmFsaWQsIHNvIHJlc3RvcmUgaXRzIGNvbnRlbnQuCi0g
ICAgICAgIHJlc3RvcmVTdGVuY2lsQ29udGVudCgpOwotICAgIH0KLX0KLQotYm9vbCBSZW5kZXJQ
YXNzQ29tbWFuZEJ1ZmZlckhlbHBlcjo6b25EZXB0aFN0ZW5jaWxBY2Nlc3MoUmVzb3VyY2VBY2Nl
c3MgYWNjZXNzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgdWludDMyX3QgKmNtZENvdW50SW52YWxpZGF0ZWQsCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCAqY21k
Q291bnREaXNhYmxlZCkKLXsKLSAgICBpZiAoKmNtZENvdW50SW52YWxpZGF0ZWQgPT0ga0luZmlu
aXRlQ21kQ291bnQpCi0gICAgewotICAgICAgICAvLyBJZiBuZXZlciBpbnZhbGlkYXRlZCBvciBu
byBsb25nZXIgaW52YWxpZGF0ZWQsIHJldHVybiBlYXJseS4KLSAgICAgICAgcmV0dXJuIGZhbHNl
OwotICAgIH0KLSAgICBpZiAoYWNjZXNzID09IFJlc291cmNlQWNjZXNzOjpXcml0ZSkKLSAgICB7
Ci0gICAgICAgIC8vIERyYXdpbmcgdG8gdGhpcyBhdHRhY2htZW50IGlzIGJlaW5nIGVuYWJsZWQu
ICBBc3N1bWUgdGhhdCBkcmF3aW5nIHdpbGwgaW1tZWRpYXRlbHkgb2NjdXIKLSAgICAgICAgLy8g
YWZ0ZXIgdGhpcyBhdHRhY2htZW50IGlzIGVuYWJsZWQsIGFuZCB0aGF0IG1lYW5zIHRoYXQgdGhl
IGF0dGFjaG1lbnQgd2lsbCBubyBsb25nZXIgYmUKLSAgICAgICAgLy8gaW52YWxpZGF0ZWQuCi0g
ICAgICAgICpjbWRDb3VudEludmFsaWRhdGVkID0ga0luZmluaXRlQ21kQ291bnQ7Ci0gICAgICAg
ICpjbWRDb3VudERpc2FibGVkICAgID0ga0luZmluaXRlQ21kQ291bnQ7Ci0gICAgICAgIC8vIFJl
dHVybiB0cnVlIHRvIGluZGljYXRlIHRoYXQgdGhlIHN0b3JlIG9wIHNob3VsZCByZW1haW4gU1RP
UkUgYW5kIHRoYXQgbUNvbnRlbnREZWZpbmVkCi0gICAgICAgIC8vIHNob3VsZCBiZSBzZXQgdG8g
dHJ1ZTsKLSAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAgfQotICAgIGVsc2UKLSAgICB7Ci0gICAg
ICAgIC8vIERyYXdpbmcgdG8gdGhpcyBhdHRhY2htZW50IGlzIGJlaW5nIGRpc2FibGVkLgotICAg
ICAgICBpZiAoaGFzV3JpdGVBZnRlckludmFsaWRhdGUoKmNtZENvdW50SW52YWxpZGF0ZWQsICpj
bWRDb3VudERpc2FibGVkKSkKLSAgICAgICAgewotICAgICAgICAgICAgLy8gVGhlIGF0dGFjaG1l
bnQgd2FzIHByZXZpb3VzbHkgZHJhd24gd2hpbGUgZW5hYmxlZCwgYW5kIHNvIGlzIG5vIGxvbmdl
ciBpbnZhbGlkYXRlZC4KLSAgICAgICAgICAgICpjbWRDb3VudEludmFsaWRhdGVkID0ga0luZmlu
aXRlQ21kQ291bnQ7Ci0gICAgICAgICAgICAqY21kQ291bnREaXNhYmxlZCAgICA9IGtJbmZpbml0
ZUNtZENvdW50OwotICAgICAgICAgICAgLy8gUmV0dXJuIHRydWUgdG8gaW5kaWNhdGUgdGhhdCB0
aGUgc3RvcmUgb3Agc2hvdWxkIHJlbWFpbiBTVE9SRSBhbmQgdGhhdAotICAgICAgICAgICAgLy8g
bUNvbnRlbnREZWZpbmVkIHNob3VsZCBiZSBzZXQgdG8gdHJ1ZTsKLSAgICAgICAgICAgIHJldHVy
biB0cnVlOwotICAgICAgICB9Ci0gICAgICAgIGVsc2UKLSAgICAgICAgewotICAgICAgICAgICAg
Ly8gR2V0IHRoZSBsYXRlc3QgQ21kQ291bnQgYXQgdGhlIHN0YXJ0IG9mIGJlaW5nIGRpc2FibGVk
LiAgQXQgdGhlIGVuZCBvZiB0aGUgcmVuZGVyCi0gICAgICAgICAgICAvLyBwYXNzLCBjbWRDb3Vu
dERpc2FibGVkIGlzIDw9IHRoZSBhY3R1YWwgY29tbWFuZCBidWZmZXIgc2l6ZSwgYW5kIHNvIGl0
J3MgY29tcGFyZWQKLSAgICAgICAgICAgIC8vIHdpdGggY21kQ291bnRJbnZhbGlkYXRlZC4gIElm
IHRoZSBzYW1lLCB0aGUgYXR0YWNobWVudCBpcyBzdGlsbCBpbnZhbGlkYXRlZC4KLSAgICAgICAg
ICAgICpjbWRDb3VudERpc2FibGVkID0gZ2V0UmVuZGVyUGFzc1dyaXRlQ29tbWFuZENvdW50KCk7
Ci0gICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAgIH0KLSAgICB9CisgICAgbVN0ZW5j
aWxBdHRhY2htZW50Lm9uQWNjZXNzKGFjY2VzcywgZ2V0UmVuZGVyUGFzc1dyaXRlQ29tbWFuZENv
dW50KCkpOwogfQogCiB2b2lkIFJlbmRlclBhc3NDb21tYW5kQnVmZmVySGVscGVyOjp1cGRhdGVT
dGFydGVkUmVuZGVyUGFzc1dpdGhEZXB0aE1vZGUoCiAgICAgYm9vbCByZWFkT25seURlcHRoU3Rl
bmNpbE1vZGUpCiB7CiAgICAgQVNTRVJUKG1SZW5kZXJQYXNzU3RhcnRlZCk7CisgICAgQVNTRVJU
KG1EZXB0aEF0dGFjaG1lbnQuZ2V0SW1hZ2UoKSA9PSBtU3RlbmNpbEF0dGFjaG1lbnQuZ2V0SW1h
Z2UoKSk7CisgICAgQVNTRVJUKG1EZXB0aFJlc29sdmVBdHRhY2htZW50LmdldEltYWdlKCkgPT0g
bVN0ZW5jaWxSZXNvbHZlQXR0YWNobWVudC5nZXRJbWFnZSgpKTsKIAotICAgIGlmIChtRGVwdGhT
dGVuY2lsSW1hZ2UpCisgICAgSW1hZ2VIZWxwZXIgKmRlcHRoU3RlbmNpbEltYWdlICAgICAgICA9
IG1EZXB0aEF0dGFjaG1lbnQuZ2V0SW1hZ2UoKTsKKyAgICBJbWFnZUhlbHBlciAqZGVwdGhTdGVu
Y2lsUmVzb2x2ZUltYWdlID0gbURlcHRoUmVzb2x2ZUF0dGFjaG1lbnQuZ2V0SW1hZ2UoKTsKKwor
ICAgIGlmIChkZXB0aFN0ZW5jaWxJbWFnZSkKICAgICB7CiAgICAgICAgIGlmIChyZWFkT25seURl
cHRoU3RlbmNpbE1vZGUpCiAgICAgICAgIHsKLSAgICAgICAgICAgIG1EZXB0aFN0ZW5jaWxJbWFn
ZS0+c2V0UmVuZGVyUGFzc1VzYWdlRmxhZyhSZW5kZXJQYXNzVXNhZ2U6OlJlYWRPbmx5QXR0YWNo
bWVudCk7CisgICAgICAgICAgICBkZXB0aFN0ZW5jaWxJbWFnZS0+c2V0UmVuZGVyUGFzc1VzYWdl
RmxhZyhSZW5kZXJQYXNzVXNhZ2U6OlJlYWRPbmx5QXR0YWNobWVudCk7CiAgICAgICAgIH0KICAg
ICAgICAgZWxzZQogICAgICAgICB7Ci0gICAgICAgICAgICBtRGVwdGhTdGVuY2lsSW1hZ2UtPmNs
ZWFyUmVuZGVyUGFzc1VzYWdlRmxhZyhSZW5kZXJQYXNzVXNhZ2U6OlJlYWRPbmx5QXR0YWNobWVu
dCk7CisgICAgICAgICAgICBkZXB0aFN0ZW5jaWxJbWFnZS0+Y2xlYXJSZW5kZXJQYXNzVXNhZ2VG
bGFnKFJlbmRlclBhc3NVc2FnZTo6UmVhZE9ubHlBdHRhY2htZW50KTsKICAgICAgICAgfQogICAg
IH0KIAotICAgIGlmIChtRGVwdGhTdGVuY2lsUmVzb2x2ZUltYWdlKQorICAgIGlmIChkZXB0aFN0
ZW5jaWxSZXNvbHZlSW1hZ2UpCiAgICAgewogICAgICAgICBpZiAocmVhZE9ubHlEZXB0aFN0ZW5j
aWxNb2RlKQogICAgICAgICB7Ci0gICAgICAgICAgICBtRGVwdGhTdGVuY2lsUmVzb2x2ZUltYWdl
LT5zZXRSZW5kZXJQYXNzVXNhZ2VGbGFnKFJlbmRlclBhc3NVc2FnZTo6UmVhZE9ubHlBdHRhY2ht
ZW50KTsKKyAgICAgICAgICAgIGRlcHRoU3RlbmNpbFJlc29sdmVJbWFnZS0+c2V0UmVuZGVyUGFz
c1VzYWdlRmxhZyhSZW5kZXJQYXNzVXNhZ2U6OlJlYWRPbmx5QXR0YWNobWVudCk7CiAgICAgICAg
IH0KICAgICAgICAgZWxzZQogICAgICAgICB7Ci0gICAgICAgICAgICBtRGVwdGhTdGVuY2lsUmVz
b2x2ZUltYWdlLT5jbGVhclJlbmRlclBhc3NVc2FnZUZsYWcoCi0gICAgICAgICAgICAgICAgUmVu
ZGVyUGFzc1VzYWdlOjpSZWFkT25seUF0dGFjaG1lbnQpOworICAgICAgICAgICAgZGVwdGhTdGVu
Y2lsUmVzb2x2ZUltYWdlLT5jbGVhclJlbmRlclBhc3NVc2FnZUZsYWcoUmVuZGVyUGFzc1VzYWdl
OjpSZWFkT25seUF0dGFjaG1lbnQpOwogICAgICAgICB9CiAgICAgfQogfQogCi12b2lkIFJlbmRl
clBhc3NDb21tYW5kQnVmZmVySGVscGVyOjpyZXN0b3JlRGVwdGhDb250ZW50KCkKLXsKLSAgICAv
LyBOb3RlIHRoYXQgdGhlIGltYWdlIG1heSBoYXZlIGJlZW4gZGVsZXRlZCBzaW5jZSB0aGUgcmVu
ZGVyIHBhc3MgaGFzIHN0YXJ0ZWQuCi0gICAgaWYgKG1EZXB0aFN0ZW5jaWxJbWFnZSkKLSAgICB7
Ci0gICAgICAgIEFTU0VSVChtRGVwdGhTdGVuY2lsSW1hZ2UtPnZhbGlkKCkpOwotICAgICAgICBt
RGVwdGhTdGVuY2lsSW1hZ2UtPnJlc3RvcmVTdWJyZXNvdXJjZUNvbnRlbnQoCi0gICAgICAgICAg
ICBtRGVwdGhTdGVuY2lsTGV2ZWxJbmRleCwgbURlcHRoU3RlbmNpbExheWVySW5kZXgsIG1EZXB0
aFN0ZW5jaWxMYXllckNvdW50KTsKLSAgICAgICAgbURlcHRoSW52YWxpZGF0ZUFyZWEgPSBnbDo6
UmVjdGFuZ2xlKCk7Ci0gICAgfQotfQotCi12b2lkIFJlbmRlclBhc3NDb21tYW5kQnVmZmVySGVs
cGVyOjpyZXN0b3JlU3RlbmNpbENvbnRlbnQoKQotewotICAgIC8vIE5vdGUgdGhhdCB0aGUgaW1h
Z2UgbWF5IGhhdmUgYmVlbiBkZWxldGVkIHNpbmNlIHRoZSByZW5kZXIgcGFzcyBoYXMgc3RhcnRl
ZC4KLSAgICBpZiAobURlcHRoU3RlbmNpbEltYWdlKQotICAgIHsKLSAgICAgICAgQVNTRVJUKG1E
ZXB0aFN0ZW5jaWxJbWFnZS0+dmFsaWQoKSk7Ci0gICAgICAgIG1EZXB0aFN0ZW5jaWxJbWFnZS0+
cmVzdG9yZVN1YnJlc291cmNlU3RlbmNpbENvbnRlbnQoCi0gICAgICAgICAgICBtRGVwdGhTdGVu
Y2lsTGV2ZWxJbmRleCwgbURlcHRoU3RlbmNpbExheWVySW5kZXgsIG1EZXB0aFN0ZW5jaWxMYXll
ckNvdW50KTsKLSAgICAgICAgbVN0ZW5jaWxJbnZhbGlkYXRlQXJlYSA9IGdsOjpSZWN0YW5nbGUo
KTsKLSAgICB9Ci19Ci0KIHZvaWQgUmVuZGVyUGFzc0NvbW1hbmRCdWZmZXJIZWxwZXI6OmZpbmFs
aXplQ29sb3JJbWFnZUxheW91dCgKICAgICBDb250ZXh0ICpjb250ZXh0LAogICAgIEltYWdlSGVs
cGVyICppbWFnZSwKQEAgLTE2MDksMjEgKzE3MTcsMjQgQEAgdm9pZCBSZW5kZXJQYXNzQ29tbWFu
ZEJ1ZmZlckhlbHBlcjo6ZmluYWxpemVDb2xvckltYWdlTGF5b3V0KAogCiB2b2lkIFJlbmRlclBh
c3NDb21tYW5kQnVmZmVySGVscGVyOjpmaW5hbGl6ZURlcHRoU3RlbmNpbEltYWdlTGF5b3V0KENv
bnRleHQgKmNvbnRleHQpCiB7Ci0gICAgQVNTRVJUKG1EZXB0aFN0ZW5jaWxJbWFnZSk7CisgICAg
QVNTRVJUKG1EZXB0aEF0dGFjaG1lbnQuZ2V0SW1hZ2UoKSAhPSBudWxscHRyKTsKKyAgICBBU1NF
UlQobURlcHRoQXR0YWNobWVudC5nZXRJbWFnZSgpID09IG1TdGVuY2lsQXR0YWNobWVudC5nZXRJ
bWFnZSgpKTsKKworICAgIEltYWdlSGVscGVyICpkZXB0aFN0ZW5jaWxJbWFnZSA9IG1EZXB0aEF0
dGFjaG1lbnQuZ2V0SW1hZ2UoKTsKIAogICAgIC8vIERvIGRlcHRoIHN0ZW5jaWwgbGF5b3V0IGNo
YW5nZS4KICAgICBJbWFnZUxheW91dCBpbWFnZUxheW91dDsKICAgICBib29sIGJhcnJpZXJSZXF1
aXJlZDsKIAotICAgIGlmIChtRGVwdGhTdGVuY2lsSW1hZ2UtPnVzZWRCeUN1cnJlbnRSZW5kZXJQ
YXNzQXNBdHRhY2htZW50QW5kU2FtcGxlcigpKQorICAgIGlmIChkZXB0aFN0ZW5jaWxJbWFnZS0+
dXNlZEJ5Q3VycmVudFJlbmRlclBhc3NBc0F0dGFjaG1lbnRBbmRTYW1wbGVyKCkpCiAgICAgewog
ICAgICAgICAvLyB0ZXh0dXJlIGNvZGUgYWxyZWFkeSBwaWNrZWQgbGF5b3V0IGFuZCBpbnNlcnRl
ZCBiYXJyaWVyCi0gICAgICAgIGltYWdlTGF5b3V0ID0gbURlcHRoU3RlbmNpbEltYWdlLT5nZXRD
dXJyZW50SW1hZ2VMYXlvdXQoKTsKLSAgICAgICAgaWYgKG1EZXB0aFN0ZW5jaWxJbWFnZS0+aGFz
UmVuZGVyUGFzc1VzYWdlRmxhZyhSZW5kZXJQYXNzVXNhZ2U6OlJlYWRPbmx5QXR0YWNobWVudCkp
CisgICAgICAgIGltYWdlTGF5b3V0ID0gZGVwdGhTdGVuY2lsSW1hZ2UtPmdldEN1cnJlbnRJbWFn
ZUxheW91dCgpOworICAgICAgICBpZiAoZGVwdGhTdGVuY2lsSW1hZ2UtPmhhc1JlbmRlclBhc3NV
c2FnZUZsYWcoUmVuZGVyUGFzc1VzYWdlOjpSZWFkT25seUF0dGFjaG1lbnQpKQogICAgICAgICB7
CiAgICAgICAgICAgICBBU1NFUlQoaW1hZ2VMYXlvdXQgPT0gSW1hZ2VMYXlvdXQ6OkRTQXR0YWNo
bWVudFJlYWRBbmRGcmFnbWVudFNoYWRlclJlYWQgfHwKICAgICAgICAgICAgICAgICAgICBpbWFn
ZUxheW91dCA9PSBJbWFnZUxheW91dDo6RFNBdHRhY2htZW50UmVhZEFuZEFsbFNoYWRlcnNSZWFk
KTsKLSAgICAgICAgICAgIGJhcnJpZXJSZXF1aXJlZCA9IG1EZXB0aFN0ZW5jaWxJbWFnZS0+aXNS
ZWFkQmFycmllck5lY2Vzc2FyeShpbWFnZUxheW91dCk7CisgICAgICAgICAgICBiYXJyaWVyUmVx
dWlyZWQgPSBkZXB0aFN0ZW5jaWxJbWFnZS0+aXNSZWFkQmFycmllck5lY2Vzc2FyeShpbWFnZUxh
eW91dCk7CiAgICAgICAgIH0KICAgICAgICAgZWxzZQogICAgICAgICB7CkBAIC0xNjMyLDEwICsx
NzQzLDEwIEBAIHZvaWQgUmVuZGVyUGFzc0NvbW1hbmRCdWZmZXJIZWxwZXI6OmZpbmFsaXplRGVw
dGhTdGVuY2lsSW1hZ2VMYXlvdXQoQ29udGV4dCAqY29uCiAgICAgICAgICAgICBiYXJyaWVyUmVx
dWlyZWQgPSB0cnVlOwogICAgICAgICB9CiAgICAgfQotICAgIGVsc2UgaWYgKG1EZXB0aFN0ZW5j
aWxJbWFnZS0+aGFzUmVuZGVyUGFzc1VzYWdlRmxhZyhSZW5kZXJQYXNzVXNhZ2U6OlJlYWRPbmx5
QXR0YWNobWVudCkpCisgICAgZWxzZSBpZiAoZGVwdGhTdGVuY2lsSW1hZ2UtPmhhc1JlbmRlclBh
c3NVc2FnZUZsYWcoUmVuZGVyUGFzc1VzYWdlOjpSZWFkT25seUF0dGFjaG1lbnQpKQogICAgIHsK
ICAgICAgICAgaW1hZ2VMYXlvdXQgICAgID0gSW1hZ2VMYXlvdXQ6OkRlcHRoU3RlbmNpbEF0dGFj
aG1lbnRSZWFkT25seTsKLSAgICAgICAgYmFycmllclJlcXVpcmVkID0gbURlcHRoU3RlbmNpbElt
YWdlLT5pc1JlYWRCYXJyaWVyTmVjZXNzYXJ5KGltYWdlTGF5b3V0KTsKKyAgICAgICAgYmFycmll
clJlcXVpcmVkID0gZGVwdGhTdGVuY2lsSW1hZ2UtPmlzUmVhZEJhcnJpZXJOZWNlc3NhcnkoaW1h
Z2VMYXlvdXQpOwogICAgIH0KICAgICBlbHNlCiAgICAgewpAQCAtMTY0OCw0OCArMTc1OSw0NSBA
QCB2b2lkIFJlbmRlclBhc3NDb21tYW5kQnVmZmVySGVscGVyOjpmaW5hbGl6ZURlcHRoU3RlbmNp
bEltYWdlTGF5b3V0KENvbnRleHQgKmNvbgogCiAgICAgaWYgKGJhcnJpZXJSZXF1aXJlZCkKICAg
ICB7Ci0gICAgICAgIGNvbnN0IGFuZ2xlOjpGb3JtYXQgJmZvcm1hdCA9IG1EZXB0aFN0ZW5jaWxJ
bWFnZS0+Z2V0QWN0dWFsRm9ybWF0KCk7CisgICAgICAgIGNvbnN0IGFuZ2xlOjpGb3JtYXQgJmZv
cm1hdCA9IGRlcHRoU3RlbmNpbEltYWdlLT5nZXRBY3R1YWxGb3JtYXQoKTsKICAgICAgICAgQVNT
RVJUKGZvcm1hdC5oYXNEZXB0aE9yU3RlbmNpbEJpdHMoKSk7CiAgICAgICAgIFZrSW1hZ2VBc3Bl
Y3RGbGFncyBhc3BlY3RGbGFncyA9IEdldERlcHRoU3RlbmNpbEFzcGVjdEZsYWdzKGZvcm1hdCk7
Ci0gICAgICAgIHVwZGF0ZUltYWdlTGF5b3V0QW5kQmFycmllcihjb250ZXh0LCBtRGVwdGhTdGVu
Y2lsSW1hZ2UsIGFzcGVjdEZsYWdzLCBpbWFnZUxheW91dCk7CisgICAgICAgIHVwZGF0ZUltYWdl
TGF5b3V0QW5kQmFycmllcihjb250ZXh0LCBkZXB0aFN0ZW5jaWxJbWFnZSwgYXNwZWN0RmxhZ3Ms
IGltYWdlTGF5b3V0KTsKICAgICB9CiB9CiAKIHZvaWQgUmVuZGVyUGFzc0NvbW1hbmRCdWZmZXJI
ZWxwZXI6OmZpbmFsaXplRGVwdGhTdGVuY2lsUmVzb2x2ZUltYWdlTGF5b3V0KENvbnRleHQgKmNv
bnRleHQpCiB7Ci0gICAgQVNTRVJUKG1EZXB0aFN0ZW5jaWxJbWFnZSk7Ci0gICAgQVNTRVJUKCFt
RGVwdGhTdGVuY2lsUmVzb2x2ZUltYWdlLT5oYXNSZW5kZXJQYXNzVXNhZ2VGbGFnKFJlbmRlclBh
c3NVc2FnZTo6UmVhZE9ubHlBdHRhY2htZW50KSk7CisgICAgQVNTRVJUKG1EZXB0aFJlc29sdmVB
dHRhY2htZW50LmdldEltYWdlKCkgIT0gbnVsbHB0cik7CisgICAgQVNTRVJUKG1EZXB0aFJlc29s
dmVBdHRhY2htZW50LmdldEltYWdlKCkgPT0gbVN0ZW5jaWxSZXNvbHZlQXR0YWNobWVudC5nZXRJ
bWFnZSgpKTsKKworICAgIEltYWdlSGVscGVyICpkZXB0aFN0ZW5jaWxSZXNvbHZlSW1hZ2UgPSBt
RGVwdGhSZXNvbHZlQXR0YWNobWVudC5nZXRJbWFnZSgpOworICAgIEFTU0VSVCghZGVwdGhTdGVu
Y2lsUmVzb2x2ZUltYWdlLT5oYXNSZW5kZXJQYXNzVXNhZ2VGbGFnKFJlbmRlclBhc3NVc2FnZTo6
UmVhZE9ubHlBdHRhY2htZW50KSk7CiAKICAgICBJbWFnZUxheW91dCBpbWFnZUxheW91dCAgICAg
PSBJbWFnZUxheW91dDo6RGVwdGhTdGVuY2lsUmVzb2x2ZUF0dGFjaG1lbnQ7Ci0gICAgY29uc3Qg
YW5nbGU6OkZvcm1hdCAmZm9ybWF0ID0gbURlcHRoU3RlbmNpbFJlc29sdmVJbWFnZS0+Z2V0QWN0
dWFsRm9ybWF0KCk7CisgICAgY29uc3QgYW5nbGU6OkZvcm1hdCAmZm9ybWF0ID0gZGVwdGhTdGVu
Y2lsUmVzb2x2ZUltYWdlLT5nZXRBY3R1YWxGb3JtYXQoKTsKICAgICBBU1NFUlQoZm9ybWF0Lmhh
c0RlcHRoT3JTdGVuY2lsQml0cygpKTsKICAgICBWa0ltYWdlQXNwZWN0RmxhZ3MgYXNwZWN0Rmxh
Z3MgPSBHZXREZXB0aFN0ZW5jaWxBc3BlY3RGbGFncyhmb3JtYXQpOwogCi0gICAgdXBkYXRlSW1h
Z2VMYXlvdXRBbmRCYXJyaWVyKGNvbnRleHQsIG1EZXB0aFN0ZW5jaWxSZXNvbHZlSW1hZ2UsIGFz
cGVjdEZsYWdzLCBpbWFnZUxheW91dCk7CisgICAgdXBkYXRlSW1hZ2VMYXlvdXRBbmRCYXJyaWVy
KGNvbnRleHQsIGRlcHRoU3RlbmNpbFJlc29sdmVJbWFnZSwgYXNwZWN0RmxhZ3MsIGltYWdlTGF5
b3V0KTsKIAotICAgIGlmICghbURlcHRoU3RlbmNpbFJlc29sdmVJbWFnZS0+aGFzUmVuZGVyUGFz
c1VzYWdlRmxhZyhSZW5kZXJQYXNzVXNhZ2U6OlJlYWRPbmx5QXR0YWNobWVudCkpCisgICAgaWYg
KCFkZXB0aFN0ZW5jaWxSZXNvbHZlSW1hZ2UtPmhhc1JlbmRlclBhc3NVc2FnZUZsYWcoUmVuZGVy
UGFzc1VzYWdlOjpSZWFkT25seUF0dGFjaG1lbnQpKQogICAgIHsKICAgICAgICAgQVNTRVJUKG1E
ZXB0aFN0ZW5jaWxBdHRhY2htZW50SW5kZXggIT0ga0F0dGFjaG1lbnRJbmRleEludmFsaWQpOwog
ICAgICAgICBjb25zdCBQYWNrZWRBdHRhY2htZW50T3BzRGVzYyAmZHNPcHMgPSBtQXR0YWNobWVu
dE9wc1ttRGVwdGhTdGVuY2lsQXR0YWNobWVudEluZGV4XTsKIAogICAgICAgICAvLyBJZiB0aGUg
aW1hZ2UgaXMgYmVpbmcgd3JpdHRlbiB0bywgbWFyayBpdHMgY29udGVudHMgZGVmaW5lZC4KLSAg
ICAgICAgVmtJbWFnZUFzcGVjdEZsYWdzIGRlZmluZWRBc3BlY3RzID0gMDsKICAgICAgICAgaWYg
KCFkc09wcy5pc0ludmFsaWRhdGVkKQogICAgICAgICB7Ci0gICAgICAgICAgICBkZWZpbmVkQXNw
ZWN0cyB8PSBWS19JTUFHRV9BU1BFQ1RfREVQVEhfQklUOworICAgICAgICAgICAgbURlcHRoUmVz
b2x2ZUF0dGFjaG1lbnQucmVzdG9yZUNvbnRlbnQoKTsKICAgICAgICAgfQogICAgICAgICBpZiAo
IWRzT3BzLmlzU3RlbmNpbEludmFsaWRhdGVkKQogICAgICAgICB7Ci0gICAgICAgICAgICBkZWZp
bmVkQXNwZWN0cyB8PSBWS19JTUFHRV9BU1BFQ1RfU1RFTkNJTF9CSVQ7Ci0gICAgICAgIH0KLSAg
ICAgICAgaWYgKGRlZmluZWRBc3BlY3RzICE9IDApCi0gICAgICAgIHsKLSAgICAgICAgICAgIG1E
ZXB0aFN0ZW5jaWxSZXNvbHZlSW1hZ2UtPm9uV3JpdGUobURlcHRoU3RlbmNpbExldmVsSW5kZXgs
IDEsIG1EZXB0aFN0ZW5jaWxMYXllckluZGV4LAotICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBtRGVwdGhTdGVuY2lsTGF5ZXJDb3VudCwgZGVmaW5lZEFzcGVj
dHMpOworICAgICAgICAgICAgbVN0ZW5jaWxSZXNvbHZlQXR0YWNobWVudC5yZXN0b3JlQ29udGVu
dCgpOwogICAgICAgICB9CiAgICAgfQogCi0gICAgbURlcHRoU3RlbmNpbFJlc29sdmVJbWFnZS0+
cmVzZXRSZW5kZXJQYXNzVXNhZ2VGbGFncygpOworICAgIGRlcHRoU3RlbmNpbFJlc29sdmVJbWFn
ZS0+cmVzZXRSZW5kZXJQYXNzVXNhZ2VGbGFncygpOwogfQogCiB2b2lkIFJlbmRlclBhc3NDb21t
YW5kQnVmZmVySGVscGVyOjpmaW5hbGl6ZUltYWdlTGF5b3V0KENvbnRleHQgKmNvbnRleHQsIGNv
bnN0IEltYWdlSGVscGVyICppbWFnZSkKQEAgLTE3MTEsMTYgKzE4MTksMTggQEAgdm9pZCBSZW5k
ZXJQYXNzQ29tbWFuZEJ1ZmZlckhlbHBlcjo6ZmluYWxpemVJbWFnZUxheW91dChDb250ZXh0ICpj
b250ZXh0LCBjb25zdAogICAgICAgICB9CiAgICAgfQogCi0gICAgaWYgKG1EZXB0aFN0ZW5jaWxJ
bWFnZSA9PSBpbWFnZSkKKyAgICBpZiAobURlcHRoQXR0YWNobWVudC5nZXRJbWFnZSgpID09IGlt
YWdlKQogICAgIHsKICAgICAgICAgZmluYWxpemVEZXB0aFN0ZW5jaWxJbWFnZUxheW91dEFuZExv
YWRTdG9yZShjb250ZXh0KTsKLSAgICAgICAgbURlcHRoU3RlbmNpbEltYWdlID0gbnVsbHB0cjsK
KyAgICAgICAgbURlcHRoQXR0YWNobWVudC5yZXNldCgpOworICAgICAgICBtU3RlbmNpbEF0dGFj
aG1lbnQucmVzZXQoKTsKICAgICB9CiAKLSAgICBpZiAobURlcHRoU3RlbmNpbFJlc29sdmVJbWFn
ZSA9PSBpbWFnZSkKKyAgICBpZiAobURlcHRoUmVzb2x2ZUF0dGFjaG1lbnQuZ2V0SW1hZ2UoKSA9
PSBpbWFnZSkKICAgICB7CiAgICAgICAgIGZpbmFsaXplRGVwdGhTdGVuY2lsUmVzb2x2ZUltYWdl
TGF5b3V0KGNvbnRleHQpOwotICAgICAgICBtRGVwdGhTdGVuY2lsUmVzb2x2ZUltYWdlID0gbnVs
bHB0cjsKKyAgICAgICAgbURlcHRoUmVzb2x2ZUF0dGFjaG1lbnQucmVzZXQoKTsKKyAgICAgICAg
bVN0ZW5jaWxSZXNvbHZlQXR0YWNobWVudC5yZXNldCgpOwogICAgIH0KIH0KIApAQCAtMTczNyw2
MSArMTg0NywzOCBAQCB2b2lkIFJlbmRlclBhc3NDb21tYW5kQnVmZmVySGVscGVyOjpmaW5hbGl6
ZURlcHRoU3RlbmNpbExvYWRTdG9yZShDb250ZXh0ICpjb250ZQogICAgIC8vIFRoaXMgaGFzIHRv
IGJlIGNhbGxlZCBhZnRlciBsYXlvdXQgYmVlbiBmaW5hbGl6ZWQKICAgICBBU1NFUlQoZHNPcHMu
aW5pdGlhbExheW91dCAhPSBzdGF0aWNfY2FzdDx1aW50MTZfdD4oSW1hZ2VMYXlvdXQ6OlVuZGVm
aW5lZCkpOwogCi0gICAgLy8gRW5zdXJlIHdlIGRvbid0IHdyaXRlIHRvIGEgcmVhZC1vbmx5IFJl
bmRlclBhc3MuIChSZWFkT25seSAtPiAhV3JpdGUpCi0gICAgQVNTRVJUKCFtRGVwdGhTdGVuY2ls
SW1hZ2UtPmhhc1JlbmRlclBhc3NVc2FnZUZsYWcoUmVuZGVyUGFzc1VzYWdlOjpSZWFkT25seUF0
dGFjaG1lbnQpIHx8Ci0gICAgICAgICAgIChtRGVwdGhBY2Nlc3MgIT0gUmVzb3VyY2VBY2Nlc3M6
OldyaXRlICYmIG1TdGVuY2lsQWNjZXNzICE9IFJlc291cmNlQWNjZXNzOjpXcml0ZSkpOworICAg
IHVpbnQzMl90IGN1cnJlbnRDbWRDb3VudCAgPSBnZXRSZW5kZXJQYXNzV3JpdGVDb21tYW5kQ291
bnQoKTsKKyAgICBib29sIGlzRGVwdGhJbnZhbGlkYXRlZCAgID0gZmFsc2U7CisgICAgYm9vbCBp
c1N0ZW5jaWxJbnZhbGlkYXRlZCA9IGZhbHNlOwogCi0gICAgLy8gSWYgdGhlIGF0dGFjaG1lbnQg
aXMgaW52YWxpZGF0ZWQsIHNraXAgdGhlIHN0b3JlIG9wLiAgSWYgd2UgYXJlIG5vdCBsb2FkaW5n
IG9yIGNsZWFyaW5nIHRoZQotICAgIC8vIGF0dGFjaG1lbnQgYW5kIHRoZSBhdHRhY2htZW50IGhh
cyBub3QgYmVlbiB1c2VkLCBhdXRvLWludmFsaWRhdGUgaXQuCi0gICAgY29uc3QgYm9vbCBkZXB0
aE5vdExvYWRlZCA9Ci0gICAgICAgIGRlcHRoTG9hZE9wID09IFJlbmRlclBhc3NMb2FkT3A6OkRv
bnRDYXJlICYmICFtUmVuZGVyUGFzc0Rlc2MuaGFzRGVwdGhVbnJlc29sdmVBdHRhY2htZW50KCk7
Ci0gICAgaWYgKGlzSW52YWxpZGF0ZWQobURlcHRoQ21kQ291bnRJbnZhbGlkYXRlZCwgbURlcHRo
Q21kQ291bnREaXNhYmxlZCkgfHwKLSAgICAgICAgKGRlcHRoTm90TG9hZGVkICYmIG1EZXB0aEFj
Y2VzcyAhPSBSZXNvdXJjZUFjY2Vzczo6V3JpdGUpKQorICAgIG1EZXB0aEF0dGFjaG1lbnQuZmlu
YWxpemVMb2FkU3RvcmUoY29udGV4dCwgY3VycmVudENtZENvdW50LAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgbVJlbmRlclBhc3NEZXNjLmhhc0RlcHRoVW5yZXNvbHZl
QXR0YWNobWVudCgpLCAmZGVwdGhMb2FkT3AsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAmZGVwdGhTdG9yZU9wLCAmaXNEZXB0aEludmFsaWRhdGVkKTsKKyAgICBtU3Rl
bmNpbEF0dGFjaG1lbnQuZmluYWxpemVMb2FkU3RvcmUoY29udGV4dCwgY3VycmVudENtZENvdW50
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtUmVuZGVyUGFzc0Rl
c2MuaGFzU3RlbmNpbFVucmVzb2x2ZUF0dGFjaG1lbnQoKSwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgJnN0ZW5jaWxMb2FkT3AsICZzdGVuY2lsU3RvcmVPcCwgJmlz
U3RlbmNpbEludmFsaWRhdGVkKTsKKworICAgIGlmIChpc0RlcHRoSW52YWxpZGF0ZWQpCiAgICAg
ewotICAgICAgICBkZXB0aFN0b3JlT3AgICAgICAgID0gUmVuZGVyUGFzc1N0b3JlT3A6OkRvbnRD
YXJlOwogICAgICAgICBkc09wcy5pc0ludmFsaWRhdGVkID0gdHJ1ZTsKICAgICB9Ci0gICAgZWxz
ZSBpZiAoaGFzV3JpdGVBZnRlckludmFsaWRhdGUobURlcHRoQ21kQ291bnRJbnZhbGlkYXRlZCwg
bURlcHRoQ21kQ291bnREaXNhYmxlZCkpCi0gICAgewotICAgICAgICAvLyBUaGUgZGVwdGggYXR0
YWNobWVudCB3YXMgaW52YWxpZGF0ZWQsIGJ1dCBpcyBub3cgdmFsaWQuICBMZXQgdGhlIGltYWdl
IGtub3cgdGhlIGNvbnRlbnRzCi0gICAgICAgIC8vIGFyZSBub3cgZGVmaW5lZCBzbyBhIGZ1dHVy
ZSByZW5kZXIgcGFzcyB3b3VsZCB1c2UgbG9hZE9wPUxPQUQuCi0gICAgICAgIHJlc3RvcmVEZXB0
aENvbnRlbnQoKTsKLSAgICB9Ci0gICAgY29uc3QgYm9vbCBzdGVuY2lsTm90TG9hZGVkID0gc3Rl
bmNpbExvYWRPcCA9PSBSZW5kZXJQYXNzTG9hZE9wOjpEb250Q2FyZSAmJgotICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICFtUmVuZGVyUGFzc0Rlc2MuaGFzU3RlbmNpbFVucmVzb2x2
ZUF0dGFjaG1lbnQoKTsKLSAgICBpZiAoaXNJbnZhbGlkYXRlZChtU3RlbmNpbENtZENvdW50SW52
YWxpZGF0ZWQsIG1TdGVuY2lsQ21kQ291bnREaXNhYmxlZCkgfHwKLSAgICAgICAgKHN0ZW5jaWxO
b3RMb2FkZWQgJiYgbVN0ZW5jaWxBY2Nlc3MgIT0gUmVzb3VyY2VBY2Nlc3M6OldyaXRlKSkKKyAg
ICBpZiAoaXNTdGVuY2lsSW52YWxpZGF0ZWQpCiAgICAgewotICAgICAgICBzdGVuY2lsU3RvcmVP
cCAgICAgICAgICAgICA9IFJlbmRlclBhc3NTdG9yZU9wOjpEb250Q2FyZTsKICAgICAgICAgZHNP
cHMuaXNTdGVuY2lsSW52YWxpZGF0ZWQgPSB0cnVlOwogICAgIH0KLSAgICBlbHNlIGlmIChoYXNX
cml0ZUFmdGVySW52YWxpZGF0ZShtU3RlbmNpbENtZENvdW50SW52YWxpZGF0ZWQsIG1TdGVuY2ls
Q21kQ291bnREaXNhYmxlZCkpCi0gICAgewotICAgICAgICAvLyBUaGUgc3RlbmNpbCBhdHRhY2ht
ZW50IHdhcyBpbnZhbGlkYXRlZCwgYnV0IGlzIG5vdyB2YWxpZC4gIExldCB0aGUgaW1hZ2Uga25v
dyB0aGUKLSAgICAgICAgLy8gY29udGVudHMgYXJlIG5vdyBkZWZpbmVkIHNvIGEgZnV0dXJlIHJl
bmRlciBwYXNzIHdvdWxkIHVzZSBsb2FkT3A9TE9BRC4KLSAgICAgICAgcmVzdG9yZVN0ZW5jaWxD
b250ZW50KCk7Ci0gICAgfQotCi0gICAgZmluYWxpemVEZXB0aFN0ZW5jaWxMb2FkU3RvcmVPcHMo
Y29udGV4dCwgbURlcHRoQWNjZXNzLCAmZGVwdGhMb2FkT3AsICZkZXB0aFN0b3JlT3ApOwotICAg
IGZpbmFsaXplRGVwdGhTdGVuY2lsTG9hZFN0b3JlT3BzKGNvbnRleHQsIG1TdGVuY2lsQWNjZXNz
LCAmc3RlbmNpbExvYWRPcCwgJnN0ZW5jaWxTdG9yZU9wKTsKIAogICAgIC8vIFRoaXMgaGFzIHRv
IGJlIGRvbmUgYWZ0ZXIgc3RvcmVPcCBoYXMgYmVlbiBmaW5hbGl6ZWQuCi0gICAgaWYgKCFtRGVw
dGhTdGVuY2lsSW1hZ2UtPmhhc1JlbmRlclBhc3NVc2FnZUZsYWcoUmVuZGVyUGFzc1VzYWdlOjpS
ZWFkT25seUF0dGFjaG1lbnQpKQorICAgIEFTU0VSVChtRGVwdGhBdHRhY2htZW50LmdldEltYWdl
KCkgPT0gbVN0ZW5jaWxBdHRhY2htZW50LmdldEltYWdlKCkpOworICAgIGlmICghbURlcHRoQXR0
YWNobWVudC5nZXRJbWFnZSgpLT5oYXNSZW5kZXJQYXNzVXNhZ2VGbGFnKFJlbmRlclBhc3NVc2Fn
ZTo6UmVhZE9ubHlBdHRhY2htZW50KSkKICAgICB7CiAgICAgICAgIC8vIElmIHRoZSBpbWFnZSBp
cyBiZWluZyB3cml0dGVuIHRvLCBtYXJrIGl0cyBjb250ZW50cyBkZWZpbmVkLgotICAgICAgICBW
a0ltYWdlQXNwZWN0RmxhZ3MgZGVmaW5lZEFzcGVjdHMgPSAwOwogICAgICAgICBpZiAoZGVwdGhT
dG9yZU9wID09IFJlbmRlclBhc3NTdG9yZU9wOjpTdG9yZSkKICAgICAgICAgewotICAgICAgICAg
ICAgZGVmaW5lZEFzcGVjdHMgfD0gVktfSU1BR0VfQVNQRUNUX0RFUFRIX0JJVDsKKyAgICAgICAg
ICAgIG1EZXB0aEF0dGFjaG1lbnQucmVzdG9yZUNvbnRlbnQoKTsKICAgICAgICAgfQogICAgICAg
ICBpZiAoc3RlbmNpbFN0b3JlT3AgPT0gUmVuZGVyUGFzc1N0b3JlT3A6OlN0b3JlKQogICAgICAg
ICB7Ci0gICAgICAgICAgICBkZWZpbmVkQXNwZWN0cyB8PSBWS19JTUFHRV9BU1BFQ1RfU1RFTkNJ
TF9CSVQ7Ci0gICAgICAgIH0KLSAgICAgICAgaWYgKGRlZmluZWRBc3BlY3RzICE9IDApCi0gICAg
ICAgIHsKLSAgICAgICAgICAgIG1EZXB0aFN0ZW5jaWxJbWFnZS0+b25Xcml0ZShtRGVwdGhTdGVu
Y2lsTGV2ZWxJbmRleCwgMSwgbURlcHRoU3RlbmNpbExheWVySW5kZXgsCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgbURlcHRoU3RlbmNpbExheWVyQ291bnQsIGRlZmlu
ZWRBc3BlY3RzKTsKKyAgICAgICAgICAgIG1TdGVuY2lsQXR0YWNobWVudC5yZXN0b3JlQ29udGVu
dCgpOwogICAgICAgICB9CiAgICAgfQogCkBAIC0xODAxLDUxICsxODg4LDEzIEBAIHZvaWQgUmVu
ZGVyUGFzc0NvbW1hbmRCdWZmZXJIZWxwZXI6OmZpbmFsaXplRGVwdGhTdGVuY2lsTG9hZFN0b3Jl
KENvbnRleHQgKmNvbnRlCiAgICAgU2V0Qml0RmllbGQoZHNPcHMuc3RlbmNpbFN0b3JlT3AsIHN0
ZW5jaWxTdG9yZU9wKTsKIH0KIAotdm9pZCBSZW5kZXJQYXNzQ29tbWFuZEJ1ZmZlckhlbHBlcjo6
ZmluYWxpemVEZXB0aFN0ZW5jaWxMb2FkU3RvcmVPcHMoQ29udGV4dCAqY29udGV4dCwKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFJlc291cmNlQWNjZXNzIGFjY2VzcywKLSAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJlbmRlclBhc3NMb2Fk
T3AgKmxvYWRPcCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFJlbmRlclBhc3NTdG9yZU9wICpzdG9yZU9wKQotewot
ICAgIC8vIEZvciByZWFkIG9ubHkgZGVwdGggc3RlbmNpbCwgd2UgY2FuIHVzZSBTdG9yZU9wTm9u
ZSBpZiBhdmFpbGFibGUuICBEb250Q2FyZSBpcyBzdGlsbAotICAgIC8vIHByZWZlcnJlZCwgc28g
ZG8gdGhpcyBhZnRlciBoYW5kbGluZyBEb250Q2FyZS4KLSAgICBjb25zdCBib29sIHN1cHBvcnRz
TG9hZFN0b3JlT3BOb25lID0KLSAgICAgICAgY29udGV4dC0+Z2V0UmVuZGVyZXIoKS0+Z2V0RmVh
dHVyZXMoKS5zdXBwb3J0c1JlbmRlclBhc3NMb2FkU3RvcmVPcE5vbmUuZW5hYmxlZDsKLSAgICBj
b25zdCBib29sIHN1cHBvcnRzU3RvcmVPcE5vbmUgPQotICAgICAgICBzdXBwb3J0c0xvYWRTdG9y
ZU9wTm9uZSB8fAotICAgICAgICBjb250ZXh0LT5nZXRSZW5kZXJlcigpLT5nZXRGZWF0dXJlcygp
LnN1cHBvcnRzUmVuZGVyUGFzc1N0b3JlT3BOb25lUUNPTS5lbmFibGVkOwotICAgIGlmIChtRGVw
dGhTdGVuY2lsSW1hZ2UtPmhhc1JlbmRlclBhc3NVc2FnZUZsYWcoUmVuZGVyUGFzc1VzYWdlOjpS
ZWFkT25seUF0dGFjaG1lbnQpICYmCi0gICAgICAgIHN1cHBvcnRzU3RvcmVPcE5vbmUpCi0gICAg
ewotICAgICAgICBpZiAoKnN0b3JlT3AgPT0gUmVuZGVyUGFzc1N0b3JlT3A6OlN0b3JlKQotICAg
ICAgICB7Ci0gICAgICAgICAgICAqc3RvcmVPcCA9IFJlbmRlclBhc3NTdG9yZU9wOjpOb25lOwot
ICAgICAgICB9Ci0gICAgfQotCi0gICAgaWYgKGFjY2VzcyA9PSBSZXNvdXJjZUFjY2Vzczo6VW51
c2VkKQotICAgIHsKLSAgICAgICAgaWYgKCpzdG9yZU9wID09IFJlbmRlclBhc3NTdG9yZU9wOjpE
b250Q2FyZSkKLSAgICAgICAgewotICAgICAgICAgICAgLy8gSWYgd2UgYXJlIGxvYWRpbmcgb3Ig
Y2xlYXJpbmcgdGhlIGF0dGFjaG1lbnQsIGJ1dCB0aGUgYXR0YWNobWVudCBoYXMgbm90IGJlZW4g
dXNlZCwKLSAgICAgICAgICAgIC8vIGFuZCB0aGUgZGF0YSBoYXMgYWxzbyBub3QgYmVlbiBzdG9y
ZWQgYmFjayBpbnRvIGF0dGFjaG1lbnQsIHRoZW4ganVzdCBza2lwIHRoZQotICAgICAgICAgICAg
Ly8gbG9hZC9jbGVhciBvcC4KLSAgICAgICAgICAgICpsb2FkT3AgPSBSZW5kZXJQYXNzTG9hZE9w
OjpEb250Q2FyZTsKLSAgICAgICAgfQotICAgICAgICBlbHNlIGlmICgqbG9hZE9wICE9IFJlbmRl
clBhc3NMb2FkT3A6OkNsZWFyICYmIHN1cHBvcnRzTG9hZFN0b3JlT3BOb25lKQotICAgICAgICB7
Ci0gICAgICAgICAgICAvLyBPdGhlcndpc2UgbWFrZSBzdXJlIHRoZSBhdHRhY2htZW50IGlzIG5l
aXRoZXIgbG9hZGVkIG5vciBzdG9yZWQgKGFzIGl0J3MgbmVpdGhlcgotICAgICAgICAgICAgLy8g
dXNlZCBub3IgaW52YWxpZGF0ZWQpLgotICAgICAgICAgICAgKmxvYWRPcCAgPSBSZW5kZXJQYXNz
TG9hZE9wOjpOb25lOwotICAgICAgICAgICAgKnN0b3JlT3AgPSBSZW5kZXJQYXNzU3RvcmVPcDo6
Tm9uZTsKLSAgICAgICAgfQotICAgIH0KLX0KLQogdm9pZCBSZW5kZXJQYXNzQ29tbWFuZEJ1ZmZl
ckhlbHBlcjo6ZmluYWxpemVEZXB0aFN0ZW5jaWxJbWFnZUxheW91dEFuZExvYWRTdG9yZShDb250
ZXh0ICpjb250ZXh0KQogewogICAgIGZpbmFsaXplRGVwdGhTdGVuY2lsSW1hZ2VMYXlvdXQoY29u
dGV4dCk7CiAgICAgZmluYWxpemVEZXB0aFN0ZW5jaWxMb2FkU3RvcmUoY29udGV4dCk7Ci0gICAg
bURlcHRoU3RlbmNpbEltYWdlLT5yZXNldFJlbmRlclBhc3NVc2FnZUZsYWdzKCk7CisKKyAgICBB
U1NFUlQobURlcHRoQXR0YWNobWVudC5nZXRJbWFnZSgpID09IG1TdGVuY2lsQXR0YWNobWVudC5n
ZXRJbWFnZSgpKTsKKyAgICBtRGVwdGhBdHRhY2htZW50LmdldEltYWdlKCktPnJlc2V0UmVuZGVy
UGFzc1VzYWdlRmxhZ3MoKTsKIH0KIAogYW5nbGU6OlJlc3VsdCBSZW5kZXJQYXNzQ29tbWFuZEJ1
ZmZlckhlbHBlcjo6YmVnaW5SZW5kZXJQYXNzKApAQCAtMTkwOCwxMSArMTk1NywxMyBAQCBhbmds
ZTo6UmVzdWx0IFJlbmRlclBhc3NDb21tYW5kQnVmZmVySGVscGVyOjplbmRSZW5kZXJQYXNzKENv
bnRleHRWayAqY29udGV4dFZrKQogICAgIH0KIAogICAgIC8vIERvIGRlcHRoIHN0ZW5jaWwgbGF5
b3V0IGNoYW5nZSBhbmQgbG9hZCBzdG9yZSBvcHRpbWl6YXRpb24uCi0gICAgaWYgKG1EZXB0aFN0
ZW5jaWxJbWFnZSkKKyAgICBBU1NFUlQobURlcHRoQXR0YWNobWVudC5nZXRJbWFnZSgpID09IG1T
dGVuY2lsQXR0YWNobWVudC5nZXRJbWFnZSgpKTsKKyAgICBBU1NFUlQobURlcHRoUmVzb2x2ZUF0
dGFjaG1lbnQuZ2V0SW1hZ2UoKSA9PSBtU3RlbmNpbFJlc29sdmVBdHRhY2htZW50LmdldEltYWdl
KCkpOworICAgIGlmIChtRGVwdGhBdHRhY2htZW50LmdldEltYWdlKCkgIT0gbnVsbHB0cikKICAg
ICB7CiAgICAgICAgIGZpbmFsaXplRGVwdGhTdGVuY2lsSW1hZ2VMYXlvdXRBbmRMb2FkU3RvcmUo
Y29udGV4dFZrKTsKICAgICB9Ci0gICAgaWYgKG1EZXB0aFN0ZW5jaWxSZXNvbHZlSW1hZ2UpCisg
ICAgaWYgKG1EZXB0aFJlc29sdmVBdHRhY2htZW50LmdldEltYWdlKCkgIT0gbnVsbHB0cikKICAg
ICB7CiAgICAgICAgIGZpbmFsaXplRGVwdGhTdGVuY2lsUmVzb2x2ZUltYWdlTGF5b3V0KGNvbnRl
eHRWayk7CiAgICAgfQpAQCAtMTk5NywzNCArMjA0OCwxOSBAQCB2b2lkIFJlbmRlclBhc3NDb21t
YW5kQnVmZmVySGVscGVyOjppbnZhbGlkYXRlUmVuZGVyUGFzc0RlcHRoQXR0YWNobWVudCgKICAg
ICBjb25zdCBnbDo6RGVwdGhTdGVuY2lsU3RhdGUgJmRzU3RhdGUsCiAgICAgY29uc3QgZ2w6OlJl
Y3RhbmdsZSAmaW52YWxpZGF0ZUFyZWEpCiB7Ci0gICAgLy8gS2VlcCB0cmFjayBvZiB0aGUgc2l6
ZSBvZiBjb21tYW5kcyBpbiB0aGUgY29tbWFuZCBidWZmZXIuICBJZiB0aGUgc2l6ZSBncm93cyBp
biB0aGUKLSAgICAvLyBmdXR1cmUsIHRoYXQgaW1wbGllcyB0aGF0IGRyYXdpbmcgb2NjdXJlZCBz
aW5jZSBpbnZhbGlkYXRlZC4KLSAgICBtRGVwdGhDbWRDb3VudEludmFsaWRhdGVkID0gZ2V0UmVu
ZGVyUGFzc1dyaXRlQ29tbWFuZENvdW50KCk7Ci0KLSAgICAvLyBBbHNvIHRyYWNrIHRoZSBzaXpl
IGlmIHRoZSBhdHRhY2htZW50IGlzIGN1cnJlbnRseSBkaXNhYmxlZC4KICAgICBjb25zdCBib29s
IGlzRGVwdGhXcml0ZUVuYWJsZWQgPSBkc1N0YXRlLmRlcHRoVGVzdCAmJiBkc1N0YXRlLmRlcHRo
TWFzazsKLSAgICBtRGVwdGhDbWRDb3VudERpc2FibGVkID0gaXNEZXB0aFdyaXRlRW5hYmxlZCA/
IGtJbmZpbml0ZUNtZENvdW50IDogbURlcHRoQ21kQ291bnRJbnZhbGlkYXRlZDsKLQotICAgIC8v
IFNldC9leHRlbmQgdGhlIGludmFsaWRhdGUgYXJlYS4KLSAgICBFeHRlbmRSZW5kZXJQYXNzSW52
YWxpZGF0ZUFyZWEoaW52YWxpZGF0ZUFyZWEsICZtRGVwdGhJbnZhbGlkYXRlQXJlYSk7CisgICAg
bURlcHRoQXR0YWNobWVudC5pbnZhbGlkYXRlKGludmFsaWRhdGVBcmVhLCBpc0RlcHRoV3JpdGVF
bmFibGVkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRSZW5kZXJQYXNzV3Jp
dGVDb21tYW5kQ291bnQoKSk7CiB9CiAKIHZvaWQgUmVuZGVyUGFzc0NvbW1hbmRCdWZmZXJIZWxw
ZXI6OmludmFsaWRhdGVSZW5kZXJQYXNzU3RlbmNpbEF0dGFjaG1lbnQoCiAgICAgY29uc3QgZ2w6
OkRlcHRoU3RlbmNpbFN0YXRlICZkc1N0YXRlLAogICAgIGNvbnN0IGdsOjpSZWN0YW5nbGUgJmlu
dmFsaWRhdGVBcmVhKQogewotICAgIC8vIEtlZXAgdHJhY2sgb2YgdGhlIHNpemUgb2YgY29tbWFu
ZHMgaW4gdGhlIGNvbW1hbmQgYnVmZmVyLiAgSWYgdGhlIHNpemUgZ3Jvd3MgaW4gdGhlCi0gICAg
Ly8gZnV0dXJlLCB0aGF0IGltcGxpZXMgdGhhdCBkcmF3aW5nIG9jY3VyZWQgc2luY2UgaW52YWxp
ZGF0ZWQuCi0gICAgbVN0ZW5jaWxDbWRDb3VudEludmFsaWRhdGVkID0gZ2V0UmVuZGVyUGFzc1dy
aXRlQ29tbWFuZENvdW50KCk7Ci0KLSAgICAvLyBBbHNvIHRyYWNrIHRoZSBzaXplIGlmIHRoZSBh
dHRhY2htZW50IGlzIGN1cnJlbnRseSBkaXNhYmxlZC4KICAgICBjb25zdCBib29sIGlzU3RlbmNp
bFdyaXRlRW5hYmxlZCA9CiAgICAgICAgIGRzU3RhdGUuc3RlbmNpbFRlc3QgJiYgKCFkc1N0YXRl
LmlzU3RlbmNpbE5vT3AoKSB8fCAhZHNTdGF0ZS5pc1N0ZW5jaWxCYWNrTm9PcCgpKTsKLSAgICBt
U3RlbmNpbENtZENvdW50RGlzYWJsZWQgPQotICAgICAgICBpc1N0ZW5jaWxXcml0ZUVuYWJsZWQg
PyBrSW5maW5pdGVDbWRDb3VudCA6IG1TdGVuY2lsQ21kQ291bnRJbnZhbGlkYXRlZDsKLQotICAg
IC8vIFNldC9leHRlbmQgdGhlIGludmFsaWRhdGUgYXJlYS4KLSAgICBFeHRlbmRSZW5kZXJQYXNz
SW52YWxpZGF0ZUFyZWEoaW52YWxpZGF0ZUFyZWEsICZtU3RlbmNpbEludmFsaWRhdGVBcmVhKTsK
KyAgICBtU3RlbmNpbEF0dGFjaG1lbnQuaW52YWxpZGF0ZShpbnZhbGlkYXRlQXJlYSwgaXNTdGVu
Y2lsV3JpdGVFbmFibGVkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdldFJl
bmRlclBhc3NXcml0ZUNvbW1hbmRDb3VudCgpKTsKIH0KIAogYW5nbGU6OlJlc3VsdCBSZW5kZXJQ
YXNzQ29tbWFuZEJ1ZmZlckhlbHBlcjo6Zmx1c2hUb1ByaW1hcnkoQ29udGV4dCAqY29udGV4dCwK
QEAgLTIxNDAsMjIgKzIxNzYsOCBAQCB2b2lkIFJlbmRlclBhc3NDb21tYW5kQnVmZmVySGVscGVy
Ojpncm93UmVuZGVyQXJlYShDb250ZXh0VmsgKmNvbnRleHRWaywKICAgICBnbDo6R2V0RW5jbG9z
aW5nUmVjdGFuZ2xlKG1SZW5kZXJBcmVhLCBuZXdSZW5kZXJBcmVhLCAmbVJlbmRlckFyZWEpOwog
CiAgICAgLy8gUmVtb3ZlIGludmFsaWRhdGVzIHRoYXQgYXJlIG5vIGxvbmdlciBhcHBsaWNhYmxl
LgotICAgIGlmICghbURlcHRoSW52YWxpZGF0ZUFyZWEuZW1wdHkoKSAmJiAhbURlcHRoSW52YWxp
ZGF0ZUFyZWEuZW5jbG9zZXMobVJlbmRlckFyZWEpKQotICAgIHsKLSAgICAgICAgQU5HTEVfVktf
UEVSRl9XQVJOSU5HKAotICAgICAgICAgICAgY29udGV4dFZrLCBHTF9ERUJVR19TRVZFUklUWV9M
T1csCi0gICAgICAgICAgICAiSW52YWxpZGF0ZVN1YkZyYW1lYnVmZmVyIGZvciBkZXB0aCBkaXNj
YXJkZWQgZHVlIHRvIGluY3JlYXNlZCBzY2lzc29yIHJlZ2lvbiIpOwotICAgICAgICBtRGVwdGhJ
bnZhbGlkYXRlQXJlYSAgICAgID0gZ2w6OlJlY3RhbmdsZSgpOwotICAgICAgICBtRGVwdGhDbWRD
b3VudEludmFsaWRhdGVkID0ga0luZmluaXRlQ21kQ291bnQ7Ci0gICAgfQotICAgIGlmICghbVN0
ZW5jaWxJbnZhbGlkYXRlQXJlYS5lbXB0eSgpICYmICFtU3RlbmNpbEludmFsaWRhdGVBcmVhLmVu
Y2xvc2VzKG1SZW5kZXJBcmVhKSkKLSAgICB7Ci0gICAgICAgIEFOR0xFX1ZLX1BFUkZfV0FSTklO
RygKLSAgICAgICAgICAgIGNvbnRleHRWaywgR0xfREVCVUdfU0VWRVJJVFlfTE9XLAotICAgICAg
ICAgICAgIkludmFsaWRhdGVTdWJGcmFtZWJ1ZmZlciBmb3Igc3RlbmNpbCBkaXNjYXJkZWQgZHVl
IHRvIGluY3JlYXNlZCBzY2lzc29yIHJlZ2lvbiIpOwotICAgICAgICBtU3RlbmNpbEludmFsaWRh
dGVBcmVhICAgICAgPSBnbDo6UmVjdGFuZ2xlKCk7Ci0gICAgICAgIG1TdGVuY2lsQ21kQ291bnRJ
bnZhbGlkYXRlZCA9IGtJbmZpbml0ZUNtZENvdW50OwotICAgIH0KKyAgICBtRGVwdGhBdHRhY2ht
ZW50Lm9uUmVuZGVyQXJlYUdyb3d0aChjb250ZXh0VmssIG1SZW5kZXJBcmVhKTsKKyAgICBtU3Rl
bmNpbEF0dGFjaG1lbnQub25SZW5kZXJBcmVhR3Jvd3RoKGNvbnRleHRWaywgbVJlbmRlckFyZWEp
OwogfQogCiB2b2lkIFJlbmRlclBhc3NDb21tYW5kQnVmZmVySGVscGVyOjphZGRDb21tYW5kRGlh
Z25vc3RpY3MoQ29udGV4dFZrICpjb250ZXh0VmspCkBAIC0yMzMyLDcgKzIzNTQsNyBAQCB2b2lk
IER5bmFtaWNCdWZmZXI6OmluaXQoUmVuZGVyZXJWayAqcmVuZGVyZXIsCiAgICAgbU1lbW9yeVBy
b3BlcnR5RmxhZ3MgPQogICAgICAgICAoaG9zdFZpc2libGUpID8gVktfTUVNT1JZX1BST1BFUlRZ
X0hPU1RfVklTSUJMRV9CSVQgOiBWS19NRU1PUllfUFJPUEVSVFlfREVWSUNFX0xPQ0FMX0JJVDsK
IAotICAgIC8vIENoZWNrIHRoYXQgd2UgaGF2ZW4ndCBvdmVycmlkZW4gdGhlIGluaXRpYWwgc2l6
ZSBvZiB0aGUgYnVmZmVyIGluIHNldE1pbmltdW1TaXplRm9yVGVzdGluZy4KKyAgICAvLyBDaGVj
ayB0aGF0IHdlIGhhdmVuJ3Qgb3ZlcnJpZGRlbiB0aGUgaW5pdGlhbCBzaXplIG9mIHRoZSBidWZm
ZXIgaW4gc2V0TWluaW11bVNpemVGb3JUZXN0aW5nLgogICAgIGlmIChtSW5pdGlhbFNpemUgPT0g
MCkKICAgICB7CiAgICAgICAgIG1Jbml0aWFsU2l6ZSA9IGluaXRpYWxTaXplOwpAQCAtMjM1Niwx
NiArMjM3OCw5IEBAIER5bmFtaWNCdWZmZXI6On5EeW5hbWljQnVmZmVyKCkKICAgICBBU1NFUlQo
bUJ1ZmZlckZyZWVMaXN0LmVtcHR5KCkpOwogfQogCi1hbmdsZTo6UmVzdWx0IER5bmFtaWNCdWZm
ZXI6OmFsbG9jYXRlTmV3QnVmZmVyKENvbnRleHRWayAqY29udGV4dFZrKQorYW5nbGU6OlJlc3Vs
dCBEeW5hbWljQnVmZmVyOjphbGxvY2F0ZU5ld0J1ZmZlcihDb250ZXh0ICpjb250ZXh0KQogewot
ICAgIC8vIEdhdGhlciBzdGF0aXN0aWNzCi0gICAgY29uc3QgZ2w6Ok92ZXJsYXlUeXBlICpvdmVy
bGF5ID0gY29udGV4dFZrLT5nZXRPdmVybGF5KCk7Ci0gICAgaWYgKG92ZXJsYXktPmlzRW5hYmxl
ZCgpKQotICAgIHsKLSAgICAgICAgZ2w6OlJ1bm5pbmdHcmFwaFdpZGdldCAqZHluYW1pY0J1ZmZl
ckFsbG9jYXRpb25zID0KLSAgICAgICAgICAgIG92ZXJsYXktPmdldFJ1bm5pbmdHcmFwaFdpZGdl
dChnbDo6V2lkZ2V0SWQ6OlZ1bGthbkR5bmFtaWNCdWZmZXJBbGxvY2F0aW9ucyk7Ci0gICAgICAg
IGR5bmFtaWNCdWZmZXJBbGxvY2F0aW9ucy0+YWRkKDEpOwotICAgIH0KKyAgICBjb250ZXh0LT5n
ZXRQZXJmQ291bnRlcnMoKS5keW5hbWljQnVmZmVyQWxsb2NhdGlvbnMrKzsKIAogICAgIC8vIEFs
bG9jYXRlIHRoZSBidWZmZXIKICAgICBBU1NFUlQoIW1CdWZmZXIpOwpAQCAtMjM4MCw3ICsyMzk1
LDcgQEAgYW5nbGU6OlJlc3VsdCBEeW5hbWljQnVmZmVyOjphbGxvY2F0ZU5ld0J1ZmZlcihDb250
ZXh0VmsgKmNvbnRleHRWaykKICAgICBjcmVhdGVJbmZvLnF1ZXVlRmFtaWx5SW5kZXhDb3VudCA9
IDA7CiAgICAgY3JlYXRlSW5mby5wUXVldWVGYW1pbHlJbmRpY2VzICAgPSBudWxscHRyOwogCi0g
ICAgcmV0dXJuIG1CdWZmZXItPmluaXQoY29udGV4dFZrLCBjcmVhdGVJbmZvLCBtTWVtb3J5UHJv
cGVydHlGbGFncyk7CisgICAgcmV0dXJuIG1CdWZmZXItPmluaXQoY29udGV4dCwgY3JlYXRlSW5m
bywgbU1lbW9yeVByb3BlcnR5RmxhZ3MpOwogfQogCiBib29sIER5bmFtaWNCdWZmZXI6OmFsbG9j
YXRlRnJvbUN1cnJlbnRCdWZmZXIoc2l6ZV90IHNpemVJbkJ5dGVzLCBCdWZmZXJIZWxwZXIgKipi
dWZmZXJIZWxwZXJPdXQpCkBAIC0yNDA4LDcgKzI0MjMsNyBAQCBib29sIER5bmFtaWNCdWZmZXI6
OmFsbG9jYXRlRnJvbUN1cnJlbnRCdWZmZXIoc2l6ZV90IHNpemVJbkJ5dGVzLCBCdWZmZXJIZWxw
ZXIgKgogICAgIHJldHVybiB0cnVlOwogfQogCi1hbmdsZTo6UmVzdWx0IER5bmFtaWNCdWZmZXI6
OmFsbG9jYXRlKENvbnRleHRWayAqY29udGV4dFZrLAorYW5nbGU6OlJlc3VsdCBEeW5hbWljQnVm
ZmVyOjphbGxvY2F0ZShDb250ZXh0ICpjb250ZXh0LAogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBzaXplX3Qgc2l6ZUluQnl0ZXMsCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIEJ1ZmZlckhlbHBlciAqKmJ1ZmZlckhlbHBlck91dCwKICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCAqbmV3QnVmZmVyQWxsb2NhdGVkT3V0
KQpAQCAtMjQzNCwyMCArMjQ0OSwyMiBAQCBhbmdsZTo6UmVzdWx0IER5bmFtaWNCdWZmZXI6OmFs
bG9jYXRlKENvbnRleHRWayAqY29udGV4dFZrLAogICAgICAgICBBU1NFUlQoIW1CdWZmZXIpOwog
ICAgIH0KIAorICAgIFJlbmRlcmVyVmsgKnJlbmRlcmVyID0gY29udGV4dC0+Z2V0UmVuZGVyZXIo
KTsKKwogICAgIGNvbnN0IHNpemVfdCBzaXplSWdub3JpbmdIaXN0b3J5ID0gc3RkOjptYXgobUlu
aXRpYWxTaXplLCBzaXplVG9BbGxvY2F0ZSk7CiAgICAgaWYgKHNpemVUb0FsbG9jYXRlID4gbVNp
emUgfHwgc2l6ZUlnbm9yaW5nSGlzdG9yeSA8IG1TaXplIC8gNCkKICAgICB7CiAgICAgICAgIG1T
aXplID0gc2l6ZUlnbm9yaW5nSGlzdG9yeTsKICAgICAgICAgLy8gQ2xlYXIgdGhlIGZyZWUgbGlz
dCBzaW5jZSB0aGUgZnJlZSBidWZmZXJzIGFyZSBub3cgZWl0aGVyIHRvbyBzbWFsbCBvciB0b28g
YmlnLgotICAgICAgICBSZWxlYXNlQnVmZmVyTGlzdFRvUmVuZGVyZXIoY29udGV4dFZrLT5nZXRS
ZW5kZXJlcigpLCAmbUJ1ZmZlckZyZWVMaXN0KTsKKyAgICAgICAgUmVsZWFzZUJ1ZmZlckxpc3RU
b1JlbmRlcmVyKHJlbmRlcmVyLCAmbUJ1ZmZlckZyZWVMaXN0KTsKICAgICB9CiAKICAgICAvLyBU
aGUgZnJvbnQgb2YgdGhlIGZyZWUgbGlzdCBzaG91bGQgYmUgdGhlIG9sZGVzdC4gVGh1cyBpZiBp
dCBpcyBpbiB1c2UgdGhlIHJlc3Qgb2YgdGhlCiAgICAgLy8gZnJlZSBsaXN0IHNob3VsZCBiZSBp
biB1c2UgYXMgd2VsbC4KICAgICBpZiAobUJ1ZmZlckZyZWVMaXN0LmVtcHR5KCkgfHwKLSAgICAg
ICAgbUJ1ZmZlckZyZWVMaXN0LmZyb250KCktPmlzQ3VycmVudGx5SW5Vc2UoY29udGV4dFZrLT5n
ZXRMYXN0Q29tcGxldGVkUXVldWVTZXJpYWwoKSkpCisgICAgICAgIG1CdWZmZXJGcmVlTGlzdC5m
cm9udCgpLT5pc0N1cnJlbnRseUluVXNlKHJlbmRlcmVyLT5nZXRMYXN0Q29tcGxldGVkUXVldWVT
ZXJpYWwoKSkpCiAgICAgewotICAgICAgICBBTkdMRV9UUlkoYWxsb2NhdGVOZXdCdWZmZXIoY29u
dGV4dFZrKSk7CisgICAgICAgIEFOR0xFX1RSWShhbGxvY2F0ZU5ld0J1ZmZlcihjb250ZXh0KSk7
CiAgICAgfQogICAgIGVsc2UKICAgICB7CkBAIC0yNjI2LDcgKzI2NDMsOSBAQCBCdWZmZXJQb29s
Ojp+QnVmZmVyUG9vbCgpCiAKIHZvaWQgQnVmZmVyUG9vbDo6cHJ1bmVFbXB0eUJ1ZmZlcnMoUmVu
ZGVyZXJWayAqcmVuZGVyZXIpCiB7Ci0gICAgZm9yIChhdXRvIGl0ZXIgPSBtQnVmZmVyQmxvY2tz
LmJlZ2luKCk7IGl0ZXIgIT0gbUJ1ZmZlckJsb2Nrcy5lbmQoKTspCisgICAgaW50IGVtcHR5QnVm
ZmVyQ291bnQgPSAwOworICAgIGludCBmcmVlZEJ1ZmZlckNvdW50ID0gMDsKKyAgICBmb3IgKGF1
dG8gaXRlciA9IG1CdWZmZXJCbG9ja3MucmJlZ2luKCk7IGl0ZXIgIT0gbUJ1ZmZlckJsb2Nrcy5y
ZW5kKCk7KQogICAgIHsKICAgICAgICAgaWYgKCEoKml0ZXIpLT5pc0VtcHR5KCkpCiAgICAgICAg
IHsKQEAgLTI2MzgsMTYgKzI2NTcsMzQgQEAgdm9pZCBCdWZmZXJQb29sOjpwcnVuZUVtcHR5QnVm
ZmVycyhSZW5kZXJlclZrICpyZW5kZXJlcikKICAgICAgICAgaW50MzJfdCBjb3VudFJlbWFpbnNF
bXB0eSA9ICgqaXRlciktPmdldEFuZEluY3JlbWVudEVtcHR5Q291bnRlcigpOwogCiAgICAgICAg
IC8vIFdlIHdpbGwgYWx3YXlzIGZyZWUgZW1wdHkgYnVmZmVycyB0aGF0IGhhcyBzbWFsbGVyIHNp
emUuIE9yIGlmIHRoZSBlbXB0eSBidWZmZXIgaGFzIGJlZW4KLSAgICAgICAgLy8gZm91bmQgZW1w
dHkgZm9yIGxvbmcgZW5vdWdoIHRpbWUsIHdlIGFsc28gZnJlZSBpdC4KLSAgICAgICAgaWYgKCgq
aXRlciktPmdldE1lbW9yeVNpemUoKSA8IG1TaXplIHx8IGNvdW50UmVtYWluc0VtcHR5ID49IGtN
YXhDb3VudFJlbWFpbnNFbXB0eSkKKyAgICAgICAgLy8gZm91bmQgZW1wdHkgZm9yIGxvbmcgZW5v
dWdoIHRpbWUsIG9yIHdlIGFjY3VtdWxhdGVkIHRvbyBtYW55IGVtcHR5IGJ1ZmZlcnMsIHdlIGFs
c28gZnJlZQorICAgICAgICAvLyBpdC4KKyAgICAgICAgaWYgKCgqaXRlciktPmdldE1lbW9yeVNp
emUoKSA8IG1TaXplIHx8IGNvdW50UmVtYWluc0VtcHR5ID49IGtNYXhDb3VudFJlbWFpbnNFbXB0
eSB8fAorICAgICAgICAgICAgZW1wdHlCdWZmZXJDb3VudCA+PSBrTWF4RW1wdHlCdWZmZXJDb3Vu
dCkKICAgICAgICAgewogICAgICAgICAgICAgKCppdGVyKS0+ZGVzdHJveShyZW5kZXJlcik7Ci0g
ICAgICAgICAgICBpdGVyID0gbUJ1ZmZlckJsb2Nrcy5lcmFzZShpdGVyKTsKKyAgICAgICAgICAg
ICgqaXRlcikucmVzZXQoKTsKKyAgICAgICAgICAgICsrZnJlZWRCdWZmZXJDb3VudDsKICAgICAg
ICAgfQogICAgICAgICBlbHNlCiAgICAgICAgIHsKLSAgICAgICAgICAgICsraXRlcjsKKyAgICAg
ICAgICAgICsrZW1wdHlCdWZmZXJDb3VudDsKICAgICAgICAgfQorICAgICAgICArK2l0ZXI7Cisg
ICAgfQorCisgICAgLy8gUmVtb3ZlIHRoZSBudWxsIHBvaW50ZXJzIGFsbCBhdCBvbmNlLCBpZiBh
bnkuCisgICAgaWYgKGZyZWVkQnVmZmVyQ291bnQpCisgICAgeworICAgICAgICBCdWZmZXJCbG9j
a1BvaW50ZXJWZWN0b3IgY29tcGFjdGVkQmxvY2tzOworICAgICAgICBmb3IgKGF1dG8gaXRlciA9
IG1CdWZmZXJCbG9ja3MuYmVnaW4oKTsgaXRlciAhPSBtQnVmZmVyQmxvY2tzLmVuZCgpOyArK2l0
ZXIpCisgICAgICAgIHsKKyAgICAgICAgICAgIGlmICgqaXRlcikKKyAgICAgICAgICAgIHsKKyAg
ICAgICAgICAgICAgICBjb21wYWN0ZWRCbG9ja3MucHVzaF9iYWNrKHN0ZDo6bW92ZSgqaXRlcikp
OworICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgICAgIG1CdWZmZXJCbG9ja3MgPSBzdGQ6
Om1vdmUoY29tcGFjdGVkQmxvY2tzKTsKICAgICB9CiB9CiAKQEAgLTI3MDYsNiArMjc0Myw3IEBA
IGFuZ2xlOjpSZXN1bHQgQnVmZmVyUG9vbDo6YWxsb2NhdGVOZXdCdWZmZXIoQ29udGV4dFZrICpj
b250ZXh0VmssIFZrRGV2aWNlU2l6ZSBzCiAKICAgICAvLyBBcHBlbmQgdGhlIGJ1ZmZlckJsb2Nr
IGludG8gdGhlIHBvb2wKICAgICBtQnVmZmVyQmxvY2tzLnB1c2hfYmFjayhzdGQ6Om1vdmUoYmxv
Y2spKTsKKyAgICBjb250ZXh0VmstPmdldFBlcmZDb3VudGVycygpLmFsbG9jYXRlTmV3QnVmZmVy
QmxvY2tDYWxscysrOwogCiAgICAgcmV0dXJuIGFuZ2xlOjpSZXN1bHQ6OkNvbnRpbnVlOwogfQpA
QCAtMjcxNyw2ICsyNzU1LDggQEAgYW5nbGU6OlJlc3VsdCBCdWZmZXJQb29sOjphbGxvY2F0ZUJ1
ZmZlcihDb250ZXh0VmsgKmNvbnRleHRWaywKIHsKICAgICBBU1NFUlQoYWxpZ25tZW50KTsKICAg
ICBWa0RldmljZVNpemUgb2Zmc2V0OworICAgIFZrRGV2aWNlU2l6ZSBhbGlnbmVkU2l6ZSA9IHJv
dW5kVXAoc2l6ZUluQnl0ZXMsIGFsaWdubWVudCk7CisKICAgICAvLyBXZSBhbHdheXMgYWxsb2Nh
dGUgZnJvbSByZXZlcnNlIG9yZGVyIHNvIHRoYXQgb2xkZXIgYnVmZmVycyBoYXZlIGEgY2hhbmNl
IHRvIGFnZSBvdXQuIFRoZQogICAgIC8vIGFzc3VtcHRpb24gaXMgdGhhdCB0byBhbGxvY2F0ZSBm
cm9tIG5ldyBidWZmZXJzIGZpcnN0IG1heSBoYXZlIGEgYmV0dGVyIGNoYW5jZSB0byBsZWF2ZSB0
aGUKICAgICAvLyBvbGRlciBidWZmZXJzIGNvbXBsZXRlbHkgZW1wdHkgYW5kIHdlIG1heSBhYmxl
IHRvIGZyZWUgaXQuCkBAIC0yNzMxLDIxICsyNzcxLDIxIEBAIGFuZ2xlOjpSZXN1bHQgQnVmZmVy
UG9vbDo6YWxsb2NhdGVCdWZmZXIoQ29udGV4dFZrICpjb250ZXh0VmssCiAgICAgICAgICAgICBj
b250aW51ZTsKICAgICAgICAgfQogCi0gICAgICAgIGlmIChibG9jay0+YWxsb2NhdGUoc2l6ZUlu
Qnl0ZXMsIGFsaWdubWVudCwgJm9mZnNldCkgPT0gVktfU1VDQ0VTUykKKyAgICAgICAgaWYgKGJs
b2NrLT5hbGxvY2F0ZShhbGlnbmVkU2l6ZSwgYWxpZ25tZW50LCAmb2Zmc2V0KSA9PSBWS19TVUND
RVNTKQogICAgICAgICB7Ci0gICAgICAgICAgICBzdWJhbGxvY2F0aW9uLT5pbml0KGNvbnRleHRW
ay0+Z2V0RGV2aWNlKCksIGJsb2NrLmdldCgpLCBvZmZzZXQsIHNpemVJbkJ5dGVzKTsKKyAgICAg
ICAgICAgIHN1YmFsbG9jYXRpb24tPmluaXQoY29udGV4dFZrLT5nZXREZXZpY2UoKSwgYmxvY2su
Z2V0KCksIG9mZnNldCwgYWxpZ25lZFNpemUpOwogICAgICAgICAgICAgcmV0dXJuIGFuZ2xlOjpS
ZXN1bHQ6OkNvbnRpbnVlOwogICAgICAgICB9CiAgICAgICAgICsraXRlcjsKICAgICB9CiAKLSAg
ICBBTkdMRV9UUlkoYWxsb2NhdGVOZXdCdWZmZXIoY29udGV4dFZrLCBzaXplSW5CeXRlcykpOwor
ICAgIEFOR0xFX1RSWShhbGxvY2F0ZU5ld0J1ZmZlcihjb250ZXh0VmssIGFsaWduZWRTaXplKSk7
CiAKICAgICAvLyBTdWItYWxsb2NhdGUgZnJvbSB0aGUgYnVmZmVyQmxvY2suCiAgICAgc3RkOjp1
bmlxdWVfcHRyPEJ1ZmZlckJsb2NrPiAmYmxvY2sgPSBtQnVmZmVyQmxvY2tzLmJhY2soKTsKLSAg
ICBBTkdMRV9WS19DSEVDSyhjb250ZXh0VmssIGJsb2NrLT5hbGxvY2F0ZShzaXplSW5CeXRlcywg
YWxpZ25tZW50LCAmb2Zmc2V0KSA9PSBWS19TVUNDRVNTLAorICAgIEFOR0xFX1ZLX0NIRUNLKGNv
bnRleHRWaywgYmxvY2stPmFsbG9jYXRlKGFsaWduZWRTaXplLCBhbGlnbm1lbnQsICZvZmZzZXQp
ID09IFZLX1NVQ0NFU1MsCiAgICAgICAgICAgICAgICAgICAgVktfRVJST1JfT1VUX09GX0RFVklD
RV9NRU1PUlkpOwotICAgIHN1YmFsbG9jYXRpb24tPmluaXQoY29udGV4dFZrLT5nZXREZXZpY2Uo
KSwgYmxvY2suZ2V0KCksIG9mZnNldCwgc2l6ZUluQnl0ZXMpOworICAgIHN1YmFsbG9jYXRpb24t
PmluaXQoY29udGV4dFZrLT5nZXREZXZpY2UoKSwgYmxvY2suZ2V0KCksIG9mZnNldCwgYWxpZ25l
ZFNpemUpOwogCiAgICAgcmV0dXJuIGFuZ2xlOjpSZXN1bHQ6OkNvbnRpbnVlOwogfQpAQCAtMjgx
NSw3ICsyODU1LDggQEAgdm9pZCBEZXNjcmlwdG9yUG9vbEhlbHBlcjo6cmVsZWFzZShDb250ZXh0
VmsgKmNvbnRleHRWaykKIH0KIAogYW5nbGU6OlJlc3VsdCBEZXNjcmlwdG9yUG9vbEhlbHBlcjo6
YWxsb2NhdGVEZXNjcmlwdG9yU2V0cygKLSAgICBDb250ZXh0VmsgKmNvbnRleHRWaywKKyAgICBD
b250ZXh0ICpjb250ZXh0LAorICAgIFJlc291cmNlVXNlTGlzdCAqcmVzb3VyY2VVc2VMaXN0LAog
ICAgIGNvbnN0IERlc2NyaXB0b3JTZXRMYXlvdXQgJmRlc2NyaXB0b3JTZXRMYXlvdXQsCiAgICAg
dWludDMyX3QgZGVzY3JpcHRvclNldENvdW50LAogICAgIFZrRGVzY3JpcHRvclNldCAqZGVzY3Jp
cHRvclNldHNPdXQpCkBAIC0yODI5LDExICsyODcwLDExIEBAIGFuZ2xlOjpSZXN1bHQgRGVzY3Jp
cHRvclBvb2xIZWxwZXI6OmFsbG9jYXRlRGVzY3JpcHRvclNldHMoCiAgICAgQVNTRVJUKG1GcmVl
RGVzY3JpcHRvclNldHMgPj0gZGVzY3JpcHRvclNldENvdW50KTsKICAgICBtRnJlZURlc2NyaXB0
b3JTZXRzIC09IGRlc2NyaXB0b3JTZXRDb3VudDsKIAotICAgIEFOR0xFX1ZLX1RSWShjb250ZXh0
VmssIG1EZXNjcmlwdG9yUG9vbC5hbGxvY2F0ZURlc2NyaXB0b3JTZXRzKGNvbnRleHRWay0+Z2V0
RGV2aWNlKCksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgYWxsb2NJbmZvLCBkZXNjcmlwdG9yU2V0c091dCkpOworICAg
IEFOR0xFX1ZLX1RSWShjb250ZXh0LCBtRGVzY3JpcHRvclBvb2wuYWxsb2NhdGVEZXNjcmlwdG9y
U2V0cyhjb250ZXh0LT5nZXREZXZpY2UoKSwgYWxsb2NJbmZvLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXNjcmlwdG9y
U2V0c091dCkpOwogCiAgICAgLy8gVGhlIHBvb2wgaXMgc3RpbGwgaW4gdXNlIGV2ZXJ5IHRpbWUg
YSBuZXcgZGVzY3JpcHRvciBzZXQgaXMgYWxsb2NhdGVkIGZyb20gaXQuCi0gICAgcmV0YWluKCZj
b250ZXh0VmstPmdldFJlc291cmNlVXNlTGlzdCgpKTsKKyAgICByZXRhaW4ocmVzb3VyY2VVc2VM
aXN0KTsKIAogICAgIHJldHVybiBhbmdsZTo6UmVzdWx0OjpDb250aW51ZTsKIH0KQEAgLTI4OTUs
NyArMjkzNiw4IEBAIHZvaWQgRHluYW1pY0Rlc2NyaXB0b3JQb29sOjpyZWxlYXNlKENvbnRleHRW
ayAqY29udGV4dFZrKQogfQogCiBhbmdsZTo6UmVzdWx0IER5bmFtaWNEZXNjcmlwdG9yUG9vbDo6
YWxsb2NhdGVTZXRzQW5kR2V0SW5mbygKLSAgICBDb250ZXh0VmsgKmNvbnRleHRWaywKKyAgICBD
b250ZXh0ICpjb250ZXh0LAorICAgIFJlc291cmNlVXNlTGlzdCAqcmVzb3VyY2VVc2VMaXN0LAog
ICAgIGNvbnN0IERlc2NyaXB0b3JTZXRMYXlvdXQgJmRlc2NyaXB0b3JTZXRMYXlvdXQsCiAgICAg
dWludDMyX3QgZGVzY3JpcHRvclNldENvdW50LAogICAgIFJlZkNvdW50ZWREZXNjcmlwdG9yUG9v
bEJpbmRpbmcgKmJpbmRpbmdPdXQsCkBAIC0yOTExLDIyICsyOTUzLDIyIEBAIGFuZ2xlOjpSZXN1
bHQgRHluYW1pY0Rlc2NyaXB0b3JQb29sOjphbGxvY2F0ZVNldHNBbmRHZXRJbmZvKAogICAgIHsK
ICAgICAgICAgaWYgKCFtRGVzY3JpcHRvclBvb2xzW21DdXJyZW50UG9vbEluZGV4XS0+Z2V0KCku
aGFzQ2FwYWNpdHkoZGVzY3JpcHRvclNldENvdW50KSkKICAgICAgICAgewotICAgICAgICAgICAg
QU5HTEVfVFJZKGFsbG9jYXRlTmV3UG9vbChjb250ZXh0VmspKTsKKyAgICAgICAgICAgIEFOR0xF
X1RSWShhbGxvY2F0ZU5ld1Bvb2woY29udGV4dCkpOwogICAgICAgICAgICAgKm5ld1Bvb2xBbGxv
Y2F0ZWRPdXQgPSB0cnVlOwogICAgICAgICB9CiAKICAgICAgICAgYmluZGluZ091dC0+c2V0KG1E
ZXNjcmlwdG9yUG9vbHNbbUN1cnJlbnRQb29sSW5kZXhdKTsKICAgICB9CiAKLSAgICByZXR1cm4g
YmluZGluZ091dC0+Z2V0KCkuYWxsb2NhdGVEZXNjcmlwdG9yU2V0cyhjb250ZXh0VmssIGRlc2Ny
aXB0b3JTZXRMYXlvdXQsCisgICAgcmV0dXJuIGJpbmRpbmdPdXQtPmdldCgpLmFsbG9jYXRlRGVz
Y3JpcHRvclNldHMoY29udGV4dCwgcmVzb3VyY2VVc2VMaXN0LCBkZXNjcmlwdG9yU2V0TGF5b3V0
LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRl
c2NyaXB0b3JTZXRDb3VudCwgZGVzY3JpcHRvclNldHNPdXQpOwogfQogCi1hbmdsZTo6UmVzdWx0
IER5bmFtaWNEZXNjcmlwdG9yUG9vbDo6YWxsb2NhdGVOZXdQb29sKENvbnRleHRWayAqY29udGV4
dFZrKQorYW5nbGU6OlJlc3VsdCBEeW5hbWljRGVzY3JpcHRvclBvb2w6OmFsbG9jYXRlTmV3UG9v
bChDb250ZXh0ICpjb250ZXh0KQogewogICAgIGJvb2wgZm91bmQgPSBmYWxzZTsKIAotICAgIFNl
cmlhbCBsYXN0Q29tcGxldGVkU2VyaWFsID0gY29udGV4dFZrLT5nZXRMYXN0Q29tcGxldGVkUXVl
dWVTZXJpYWwoKTsKKyAgICBTZXJpYWwgbGFzdENvbXBsZXRlZFNlcmlhbCA9IGNvbnRleHQtPmdl
dFJlbmRlcmVyKCktPmdldExhc3RDb21wbGV0ZWRRdWV1ZVNlcmlhbCgpOwogICAgIGZvciAoc2l6
ZV90IHBvb2xJbmRleCA9IDA7IHBvb2xJbmRleCA8IG1EZXNjcmlwdG9yUG9vbHMuc2l6ZSgpOyAr
K3Bvb2xJbmRleCkKICAgICB7CiAgICAgICAgIGlmICghbURlc2NyaXB0b3JQb29sc1twb29sSW5k
ZXhdLT5pc1JlZmVyZW5jZWQoKSAmJgpAQCAtMjk0NCw3ICsyOTg2LDcgQEAgYW5nbGU6OlJlc3Vs
dCBEeW5hbWljRGVzY3JpcHRvclBvb2w6OmFsbG9jYXRlTmV3UG9vbChDb250ZXh0VmsgKmNvbnRl
eHRWaykKICAgICAgICAgbUN1cnJlbnRQb29sSW5kZXggPSBtRGVzY3JpcHRvclBvb2xzLnNpemUo
KSAtIDE7CiAKICAgICAgICAgc3RhdGljIGNvbnN0ZXhwciBzaXplX3Qga01heFBvb2xzID0gOTk5
OTk7Ci0gICAgICAgIEFOR0xFX1ZLX0NIRUNLKGNvbnRleHRWaywgbURlc2NyaXB0b3JQb29scy5z
aXplKCkgPCBrTWF4UG9vbHMsIFZLX0VSUk9SX1RPT19NQU5ZX09CSkVDVFMpOworICAgICAgICBB
TkdMRV9WS19DSEVDSyhjb250ZXh0LCBtRGVzY3JpcHRvclBvb2xzLnNpemUoKSA8IGtNYXhQb29s
cywgVktfRVJST1JfVE9PX01BTllfT0JKRUNUUyk7CiAgICAgfQogCiAgICAgLy8gVGhpcyBwb29s
IGlzIGdldHRpbmcgaG90LCBzbyBncm93IGl0cyBtYXggc2l6ZSB0byB0cnkgYW5kIHByZXZlbnQg
YWxsb2NhdGluZyBhbm90aGVyIHBvb2wgaW4KQEAgLTI5NTQsNyArMjk5Niw3IEBAIGFuZ2xlOjpS
ZXN1bHQgRHluYW1pY0Rlc2NyaXB0b3JQb29sOjphbGxvY2F0ZU5ld1Bvb2woQ29udGV4dFZrICpj
b250ZXh0VmspCiAgICAgICAgIG1NYXhTZXRzUGVyUG9vbCAqPSBtTWF4U2V0c1BlclBvb2xNdWx0
aXBsaWVyOwogICAgIH0KIAotICAgIHJldHVybiBtRGVzY3JpcHRvclBvb2xzW21DdXJyZW50UG9v
bEluZGV4XS0+Z2V0KCkuaW5pdChjb250ZXh0VmssIG1Qb29sU2l6ZXMsIG1NYXhTZXRzUGVyUG9v
bCk7CisgICAgcmV0dXJuIG1EZXNjcmlwdG9yUG9vbHNbbUN1cnJlbnRQb29sSW5kZXhdLT5nZXQo
KS5pbml0KGNvbnRleHQsIG1Qb29sU2l6ZXMsIG1NYXhTZXRzUGVyUG9vbCk7CiB9CiAKIC8vIEZv
ciB0ZXN0aW5nIG9ubHkhCkBAIC0zODEwLDcgKzM4NTIsNyBAQCBCdWZmZXJIZWxwZXIgJkJ1ZmZl
ckhlbHBlcjo6b3BlcmF0b3I9KEJ1ZmZlckhlbHBlciAmJm90aGVyKQogICAgIHJldHVybiAqdGhp
czsKIH0KIAotYW5nbGU6OlJlc3VsdCBCdWZmZXJIZWxwZXI6OmluaXQodms6OkNvbnRleHQgKmNv
bnRleHQsCithbmdsZTo6UmVzdWx0IEJ1ZmZlckhlbHBlcjo6aW5pdChDb250ZXh0ICpjb250ZXh0
LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgVmtCdWZmZXJDcmVhdGVJ
bmZvICZyZXF1ZXN0ZWRDcmVhdGVJbmZvLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgVmtNZW1vcnlQcm9wZXJ0eUZsYWdzIG1lbW9yeVByb3BlcnR5RmxhZ3MpCiB7CkBAIC00MzU3
LDcgKzQzOTksOCBAQCBJbWFnZUhlbHBlcjo6SW1hZ2VIZWxwZXIoSW1hZ2VIZWxwZXIgJiZvdGhl
cikKICAgICAgIG1TdWJyZXNvdXJjZVVwZGF0ZXMoc3RkOjptb3ZlKG90aGVyLm1TdWJyZXNvdXJj
ZVVwZGF0ZXMpKSwKICAgICAgIG1DdXJyZW50U2luZ2xlQ2xlYXJWYWx1ZShzdGQ6Om1vdmUob3Ro
ZXIubUN1cnJlbnRTaW5nbGVDbGVhclZhbHVlKSksCiAgICAgICBtQ29udGVudERlZmluZWQoc3Rk
Ojptb3ZlKG90aGVyLm1Db250ZW50RGVmaW5lZCkpLAotICAgICAgbVN0ZW5jaWxDb250ZW50RGVm
aW5lZChzdGQ6Om1vdmUob3RoZXIubVN0ZW5jaWxDb250ZW50RGVmaW5lZCkpCisgICAgICBtU3Rl
bmNpbENvbnRlbnREZWZpbmVkKHN0ZDo6bW92ZShvdGhlci5tU3RlbmNpbENvbnRlbnREZWZpbmVk
KSksCisgICAgICBtSW1hZ2VBbmRWaWV3R2FyYmFnZShzdGQ6Om1vdmUob3RoZXIubUltYWdlQW5k
Vmlld0dhcmJhZ2UpKQogewogICAgIEFTU0VSVCh0aGlzICE9ICZvdGhlcik7CiAgICAgb3RoZXIu
cmVzZXRDYWNoZWRQcm9wZXJ0aWVzKCk7CkBAIC00NzE0LDkgKzQ3NTcsMTEgQEAgdm9pZCBJbWFn
ZUhlbHBlcjo6ZGVyaXZlRXh0ZXJuYWxJbWFnZVRpbGluZyhjb25zdCB2b2lkICpjcmVhdGVJbmZv
Q2hhaW4pCiAKIHZvaWQgSW1hZ2VIZWxwZXI6OnJlbGVhc2VJbWFnZShSZW5kZXJlclZrICpyZW5k
ZXJlcikKIHsKLSAgICByZW5kZXJlci0+Y29sbGVjdEdhcmJhZ2VBbmRSZWluaXQoJm1Vc2UsICZt
SW1hZ2UsICZtRGV2aWNlTWVtb3J5KTsKLSAgICBtSW1hZ2VTZXJpYWwgPSBrSW52YWxpZEltYWdl
U2VyaWFsOwotCisgICAgQ29sbGVjdEdhcmJhZ2UoJm1JbWFnZUFuZFZpZXdHYXJiYWdlLCAmbUlt
YWdlLCAmbURldmljZU1lbW9yeSk7CisgICAgLy8gTm90aWZ5IHVzIGlmIHRoZSBhcHBsaWNhdGlv
biBwYXR0ZXJuIGNhdXNlcyB0aGUgdmlld3MgdG8ga2VlcCBnZXR0aW5nIHJlYWxsb2NhdGVkIGFu
ZCBjcmVhdGUKKyAgICAvLyBpbmZpbml0ZSBnYXJiYWdlCisgICAgQVNTRVJUKG1JbWFnZUFuZFZp
ZXdHYXJiYWdlLnNpemUoKSA8PSAxMDAwKTsKKyAgICByZWxlYXNlSW1hZ2VBbmRWaWV3R2FyYmFn
ZShyZW5kZXJlcik7CiAgICAgc2V0RW50aXJlQ29udGVudFVuZGVmaW5lZCgpOwogfQogCkBAIC00
NzM0LDYgKzQ3NzksMjIgQEAgdm9pZCBJbWFnZUhlbHBlcjo6cmVsZWFzZUltYWdlRnJvbVNoYXJl
Q29udGV4dHMoUmVuZGVyZXJWayAqcmVuZGVyZXIsIENvbnRleHRWawogICAgIHJlbGVhc2VJbWFn
ZShyZW5kZXJlcik7CiB9CiAKK3ZvaWQgSW1hZ2VIZWxwZXI6OmNvbGxlY3RWaWV3R2FyYmFnZShS
ZW5kZXJlclZrICpyZW5kZXJlciwgdms6OkltYWdlVmlld0hlbHBlciAqaW1hZ2VWaWV3KQorewor
ICAgIGltYWdlVmlldy0+cmVsZWFzZShyZW5kZXJlciwgbUltYWdlQW5kVmlld0dhcmJhZ2UpOwor
ICAgIC8vIElmIHdlIGRvIG5vdCBoYXZlIGFueSBJbWFnZUhlbHBlcjo6bVVzZSByZXRhaW5lZCBp
biBSZXNvdXJjZVVzZUxpc3QsIG1ha2UgYSBjbG9uZWQgY29weSBvZgorICAgIC8vIEltYWdlSGVs
cGVyOjptVXNlIGFuZCB1c2UgaXQgdG8gZnJlZSBhbnkgZ2FyYmFnZSBpbiBtSW1hZ2VBbmRWaWV3
R2FyYmFnZSBpbW1lZGlhdGVseS4KKyAgICBpZiAoIW1Vc2UudXNlZEluUmVjb3JkZWRDb21tYW5k
cygpICYmICFtSW1hZ2VBbmRWaWV3R2FyYmFnZS5lbXB0eSgpKQorICAgIHsKKyAgICAgICAgLy8g
Y2xvbmUgSW1hZ2VIZWxwZXI6Om1Vc2UKKyAgICAgICAgcng6OnZrOjpTaGFyZWRSZXNvdXJjZVVz
ZSBjbG9uZWRtVXNlOworICAgICAgICBjbG9uZWRtVXNlLmluaXQoKTsKKyAgICAgICAgY2xvbmVk
bVVzZS51cGRhdGVTZXJpYWxPbmVPZmYobVVzZS5nZXRTZXJpYWwoKSk7CisgICAgICAgIHJlbmRl
cmVyLT5jb2xsZWN0R2FyYmFnZShzdGQ6Om1vdmUoY2xvbmVkbVVzZSksIHN0ZDo6bW92ZShtSW1h
Z2VBbmRWaWV3R2FyYmFnZSkpOworICAgIH0KKyAgICBBU1NFUlQobUltYWdlQW5kVmlld0dhcmJh
Z2Uuc2l6ZSgpIDw9IDEwMDApOworfQorCiB2b2lkIEltYWdlSGVscGVyOjpyZWxlYXNlU3RhZ2Vk
VXBkYXRlcyhSZW5kZXJlclZrICpyZW5kZXJlcikKIHsKICAgICBBU1NFUlQodmFsaWRhdGVTdWJy
ZXNvdXJjZVVwZGF0ZVJlZkNvdW50c0NvbnNpc3RlbnQoKSk7CkBAIC00NzYwLDYgKzQ4MjEsMjAg
QEAgdm9pZCBJbWFnZUhlbHBlcjo6cmVzZXRJbWFnZVdlYWtSZWZlcmVuY2UoKQogICAgIG1Sb3Rh
dGVkQXNwZWN0UmF0aW8gPSBmYWxzZTsKIH0KIAordm9pZCBJbWFnZUhlbHBlcjo6cmVsZWFzZUlt
YWdlQW5kVmlld0dhcmJhZ2UoUmVuZGVyZXJWayAqcmVuZGVyZXIpCit7CisgICAgaWYgKCFtSW1h
Z2VBbmRWaWV3R2FyYmFnZS5lbXB0eSgpKQorICAgIHsKKyAgICAgICAgcmVuZGVyZXItPmNvbGxl
Y3RHYXJiYWdlKHN0ZDo6bW92ZShtVXNlKSwgc3RkOjptb3ZlKG1JbWFnZUFuZFZpZXdHYXJiYWdl
KSk7CisgICAgfQorICAgIGVsc2UKKyAgICB7CisgICAgICAgIG1Vc2UucmVsZWFzZSgpOworICAg
IH0KKyAgICBtVXNlLmluaXQoKTsKKyAgICBtSW1hZ2VTZXJpYWwgPSBrSW52YWxpZEltYWdlU2Vy
aWFsOworfQorCiBhbmdsZTo6UmVzdWx0IEltYWdlSGVscGVyOjppbml0aWFsaXplTm9uWmVyb01l
bW9yeShDb250ZXh0ICpjb250ZXh0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgYm9vbCBoYXNQcm90ZWN0ZWRDb250ZW50LAogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVmtEZXZpY2VTaXplIHNpemUp
CkBAIC01MDk5LDYgKzUxNzQsMTIgQEAgYW5nbGU6OlJlc3VsdCBJbWFnZUhlbHBlcjo6aW5pdFJl
aW50ZXJwcmV0ZWRMYXllckltYWdlVmlldyhDb250ZXh0ICpjb250ZXh0LAogCiB2b2lkIEltYWdl
SGVscGVyOjpkZXN0cm95KFJlbmRlcmVyVmsgKnJlbmRlcmVyKQogeworICAgIC8vIGRlc3Ryb3kg
YW55IHBlbmRpbmcgZ2FyYmFnZSBvYmplY3RzIChtb3N0IGxpa2VseSBmcm9tIEltYWdlVmlld0hl
bHBlcikgYXQgdGhpcyBwb2ludAorICAgIGZvciAoR2FyYmFnZU9iamVjdCAmb2JqZWN0IDogbUlt
YWdlQW5kVmlld0dhcmJhZ2UpCisgICAgeworICAgICAgICBvYmplY3QuZGVzdHJveShyZW5kZXJl
cik7CisgICAgfQorCiAgICAgVmtEZXZpY2UgZGV2aWNlID0gcmVuZGVyZXItPmdldERldmljZSgp
OwogCiAgICAgbUltYWdlLmRlc3Ryb3koZGV2aWNlKTsKQEAgLTY5MzcsNiArNzAxOCw3IEBAIHZv
aWQgSW1hZ2VIZWxwZXI6OnN0YWdlU2VsZkFzU3VicmVzb3VyY2VVcGRhdGVzKENvbnRleHRWayAq
Y29udGV4dFZrLAogICAgIHByZXZJbWFnZS0+Z2V0KCkubUxldmVsQ291bnQgICAgICAgICAgICAg
ICAgICA9IGxldmVsQ291bnQ7CiAgICAgcHJldkltYWdlLT5nZXQoKS5tTGF5ZXJDb3VudCAgICAg
ICAgICAgICAgICAgID0gbUxheWVyQ291bnQ7CiAgICAgcHJldkltYWdlLT5nZXQoKS5tSW1hZ2VT
ZXJpYWwgICAgICAgICAgICAgICAgID0gbUltYWdlU2VyaWFsOworICAgIHByZXZJbWFnZS0+Z2V0
KCkubUltYWdlQW5kVmlld0dhcmJhZ2UgICAgICAgICA9IHN0ZDo6bW92ZShtSW1hZ2VBbmRWaWV3
R2FyYmFnZSk7CiAKICAgICAvLyBSZXNldCBpbmZvcm1hdGlvbiBmb3IgY3VycmVudCAoaW52YWxp
ZCkgaW1hZ2UuCiAgICAgbUN1cnJlbnRMYXlvdXQgICAgICAgICAgICAgICA9IEltYWdlTGF5b3V0
OjpVbmRlZmluZWQ7CkBAIC03MjM3LDExICs3MzE5LDEyIEBAIGFuZ2xlOjpSZXN1bHQgSW1hZ2VI
ZWxwZXI6OmZsdXNoU3RhZ2VkVXBkYXRlcyhDb250ZXh0VmsgKmNvbnRleHRWaywKICAgICAgICAg
ICAgICAgICBBTkdMRV9UUlkoCiAgICAgICAgICAgICAgICAgICAgIGNvbnRleHRWay0+Z2V0T3V0
c2lkZVJlbmRlclBhc3NDb21tYW5kQnVmZmVyKGJ1ZmZlckFjY2VzcywgJmNvbW1hbmRCdWZmZXIp
KTsKIAorICAgICAgICAgICAgICAgIFZrQnVmZmVySW1hZ2VDb3B5ICpjb3B5UmVnaW9uID0gJnVw
ZGF0ZS5kYXRhLmJ1ZmZlci5jb3B5UmVnaW9uOwogICAgICAgICAgICAgICAgIGNvbW1hbmRCdWZm
ZXItPmNvcHlCdWZmZXJUb0ltYWdlKGN1cnJlbnRCdWZmZXItPmdldEJ1ZmZlcigpLmdldEhhbmRs
ZSgpLCBtSW1hZ2UsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgZ2V0Q3VycmVudExheW91dCgpLCAxLAotICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICZ1cGRhdGUuZGF0YS5idWZmZXIuY29weVJlZ2lvbik7Cisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0Q3VycmVu
dExheW91dCgpLCAxLCBjb3B5UmVnaW9uKTsKKyAgICAgICAgICAgICAgICBBTkdMRV9UUlkoY29u
dGV4dFZrLT5vbkNvcHlVcGRhdGUoY3VycmVudEJ1ZmZlci0+Z2V0U2l6ZSgpKSk7CiAgICAgICAg
ICAgICAgICAgb25Xcml0ZSh1cGRhdGVNaXBMZXZlbEdMLCAxLCB1cGRhdGVCYXNlTGF5ZXIsIHVw
ZGF0ZUxheWVyQ291bnQsCi0gICAgICAgICAgICAgICAgICAgICAgICB1cGRhdGUuZGF0YS5idWZm
ZXIuY29weVJlZ2lvbi5pbWFnZVN1YnJlc291cmNlLmFzcGVjdE1hc2spOworICAgICAgICAgICAg
ICAgICAgICAgICAgY29weVJlZ2lvbi0+aW1hZ2VTdWJyZXNvdXJjZS5hc3BlY3RNYXNrKTsKICAg
ICAgICAgICAgIH0KICAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAgIHsKQEAgLTcyNTEsMTEg
KzczMzQsMTIgQEAgYW5nbGU6OlJlc3VsdCBJbWFnZUhlbHBlcjo6Zmx1c2hTdGFnZWRVcGRhdGVz
KENvbnRleHRWayAqY29udGV4dFZrLAogICAgICAgICAgICAgICAgIEFOR0xFX1RSWSgKICAgICAg
ICAgICAgICAgICAgICAgY29udGV4dFZrLT5nZXRPdXRzaWRlUmVuZGVyUGFzc0NvbW1hbmRCdWZm
ZXIoaW1hZ2VBY2Nlc3MsICZjb21tYW5kQnVmZmVyKSk7CiAKKyAgICAgICAgICAgICAgICBWa0lt
YWdlQ29weSAqY29weVJlZ2lvbiA9ICZ1cGRhdGUuZGF0YS5pbWFnZS5jb3B5UmVnaW9uOwogICAg
ICAgICAgICAgICAgIGNvbW1hbmRCdWZmZXItPmNvcHlJbWFnZSh1cGRhdGUucmVmQ291bnRlZC5p
bWFnZS0+Z2V0KCkuZ2V0SW1hZ2UoKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgdXBkYXRlLnJlZkNvdW50ZWQuaW1hZ2UtPmdldCgpLmdldEN1cnJlbnRMYXlvdXQo
KSwgbUltYWdlLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRD
dXJyZW50TGF5b3V0KCksIDEsICZ1cGRhdGUuZGF0YS5pbWFnZS5jb3B5UmVnaW9uKTsKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0Q3VycmVudExheW91dCgpLCAx
LCBjb3B5UmVnaW9uKTsKICAgICAgICAgICAgICAgICBvbldyaXRlKHVwZGF0ZU1pcExldmVsR0ws
IDEsIHVwZGF0ZUJhc2VMYXllciwgdXBkYXRlTGF5ZXJDb3VudCwKLSAgICAgICAgICAgICAgICAg
ICAgICAgIHVwZGF0ZS5kYXRhLmltYWdlLmNvcHlSZWdpb24uZHN0U3VicmVzb3VyY2UuYXNwZWN0
TWFzayk7CisgICAgICAgICAgICAgICAgICAgICAgICBjb3B5UmVnaW9uLT5kc3RTdWJyZXNvdXJj
ZS5hc3BlY3RNYXNrKTsKICAgICAgICAgICAgIH0KIAogICAgICAgICAgICAgdXBkYXRlLnJlbGVh
c2UoY29udGV4dFZrLT5nZXRSZW5kZXJlcigpKTsKQEAgLTg1MTMsMTAgKzg1OTcsOCBAQCBMYXll
ck1vZGUgR2V0TGF5ZXJNb2RlKGNvbnN0IHZrOjpJbWFnZUhlbHBlciAmaW1hZ2UsIHVpbnQzMl90
IGxheWVyQ291bnQpCiAvLyBJbWFnZVZpZXdIZWxwZXIgaW1wbGVtZW50YXRpb24uCiBJbWFnZVZp
ZXdIZWxwZXI6OkltYWdlVmlld0hlbHBlcigpIDogbUN1cnJlbnRCYXNlTWF4TGV2ZWxIYXNoKDAp
LCBtTGluZWFyQ29sb3JzcGFjZSh0cnVlKSB7fQogCi1JbWFnZVZpZXdIZWxwZXI6OkltYWdlVmll
d0hlbHBlcihJbWFnZVZpZXdIZWxwZXIgJiZvdGhlcikgOiBSZXNvdXJjZShzdGQ6Om1vdmUob3Ro
ZXIpKQorSW1hZ2VWaWV3SGVscGVyOjpJbWFnZVZpZXdIZWxwZXIoSW1hZ2VWaWV3SGVscGVyICYm
b3RoZXIpCiB7Ci0gICAgc3RkOjpzd2FwKG1Vc2UsIG90aGVyLm1Vc2UpOwotCiAgICAgc3RkOjpz
d2FwKG1DdXJyZW50QmFzZU1heExldmVsSGFzaCwgb3RoZXIubUN1cnJlbnRCYXNlTWF4TGV2ZWxI
YXNoKTsKICAgICBzdGQ6OnN3YXAobUxpbmVhckNvbG9yc3BhY2UsIG90aGVyLm1MaW5lYXJDb2xv
cnNwYWNlKTsKIApAQCAtODU0NiwxMCArODYyOCw4IEBAIHZvaWQgSW1hZ2VWaWV3SGVscGVyOjpp
bml0KFJlbmRlcmVyVmsgKnJlbmRlcmVyKQogICAgIH0KIH0KIAotdm9pZCBJbWFnZVZpZXdIZWxw
ZXI6OnJlbGVhc2UoUmVuZGVyZXJWayAqcmVuZGVyZXIpCit2b2lkIEltYWdlVmlld0hlbHBlcjo6
cmVsZWFzZShSZW5kZXJlclZrICpyZW5kZXJlciwgc3RkOjp2ZWN0b3I8dms6OkdhcmJhZ2VPYmpl
Y3Q+ICZnYXJiYWdlKQogewotICAgIHN0ZDo6dmVjdG9yPEdhcmJhZ2VPYmplY3Q+IGdhcmJhZ2U7
Ci0KICAgICBtQ3VycmVudEJhc2VNYXhMZXZlbEhhc2ggPSAwOwogCiAgICAgLy8gUmVsZWFzZSB0
aGUgcmVhZCB2aWV3cwpAQCAtODYwOCwxOCArODY4OCwyMiBAQCB2b2lkIEltYWdlVmlld0hlbHBl
cjo6cmVsZWFzZShSZW5kZXJlclZrICpyZW5kZXJlcikKICAgICB9CiAgICAgbUxheWVyTGV2ZWxT
dG9yYWdlSW1hZ2VWaWV3cy5jbGVhcigpOwogCi0gICAgaWYgKCFnYXJiYWdlLmVtcHR5KCkpCi0g
ICAgewotICAgICAgICByZW5kZXJlci0+Y29sbGVjdEdhcmJhZ2Uoc3RkOjptb3ZlKG1Vc2UpLCBz
dGQ6Om1vdmUoZ2FyYmFnZSkpOwotCi0gICAgICAgIC8vIEVuc3VyZSB0aGUgcmVzb3VyY2UgdXNl
IGlzIGFsd2F5cyB2YWxpZC4KLSAgICAgICAgbVVzZS5pbml0KCk7Ci0gICAgfQotCiAgICAgLy8g
VXBkYXRlIGltYWdlIHZpZXcgc2VyaWFsLgogICAgIG1JbWFnZVZpZXdTZXJpYWwgPSByZW5kZXJl
ci0+Z2V0UmVzb3VyY2VTZXJpYWxGYWN0b3J5KCkuZ2VuZXJhdGVJbWFnZU9yQnVmZmVyVmlld1Nl
cmlhbCgpOwogfQogCitib29sIEltYWdlVmlld0hlbHBlcjo6aXNJbWFnZVZpZXdHYXJiYWdlRW1w
dHkoKSBjb25zdAoreworICAgIHJldHVybiBtUGVyTGV2ZWxSYW5nZUxpbmVhclJlYWRJbWFnZVZp
ZXdzLmVtcHR5KCkgJiYKKyAgICAgICAgICAgbVBlckxldmVsUmFuZ2VMaW5lYXJDb3B5SW1hZ2VW
aWV3cy5lbXB0eSgpICYmCisgICAgICAgICAgIG1QZXJMZXZlbFJhbmdlTGluZWFyRmV0Y2hJbWFn
ZVZpZXdzLmVtcHR5KCkgJiYKKyAgICAgICAgICAgbVBlckxldmVsUmFuZ2VTUkdCUmVhZEltYWdl
Vmlld3MuZW1wdHkoKSAmJiBtUGVyTGV2ZWxSYW5nZVNSR0JDb3B5SW1hZ2VWaWV3cy5lbXB0eSgp
ICYmCisgICAgICAgICAgIG1QZXJMZXZlbFJhbmdlU1JHQkZldGNoSW1hZ2VWaWV3cy5lbXB0eSgp
ICYmCisgICAgICAgICAgIG1QZXJMZXZlbFJhbmdlU3RlbmNpbFJlYWRJbWFnZVZpZXdzLmVtcHR5
KCkgJiYgbUxheWVyTGV2ZWxEcmF3SW1hZ2VWaWV3cy5lbXB0eSgpICYmCisgICAgICAgICAgIG1M
YXllckxldmVsRHJhd0ltYWdlVmlld3NMaW5lYXIuZW1wdHkoKSAmJiBtU3VicmVzb3VyY2VEcmF3
SW1hZ2VWaWV3cy5lbXB0eSgpICYmCisgICAgICAgICAgIG1MYXllckxldmVsU3RvcmFnZUltYWdl
Vmlld3MuZW1wdHkoKTsKK30KKwogdm9pZCBJbWFnZVZpZXdIZWxwZXI6OmRlc3Ryb3koVmtEZXZp
Y2UgZGV2aWNlKQogewogICAgIG1DdXJyZW50QmFzZU1heExldmVsSGFzaCA9IDA7CkBAIC04ODY4
LDcgKzg5NTIsNyBAQCBhbmdsZTo6UmVzdWx0IEltYWdlVmlld0hlbHBlcjo6aW5pdFNSR0JSZWFk
Vmlld3NJbXBsKENvbnRleHRWayAqY29udGV4dFZrLAogICAgIHJldHVybiBhbmdsZTo6UmVzdWx0
OjpDb250aW51ZTsKIH0KIAotYW5nbGU6OlJlc3VsdCBJbWFnZVZpZXdIZWxwZXI6OmdldExldmVs
U3RvcmFnZUltYWdlVmlldyhDb250ZXh0VmsgKmNvbnRleHRWaywKK2FuZ2xlOjpSZXN1bHQgSW1h
Z2VWaWV3SGVscGVyOjpnZXRMZXZlbFN0b3JhZ2VJbWFnZVZpZXcoQ29udGV4dCAqY29udGV4dCwK
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Z2w6OlRleHR1cmVUeXBlIHZpZXdUeXBlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBJbWFnZUhlbHBlciAmaW1hZ2UsCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExldmVs
SW5kZXggbGV2ZWxWaywKQEAgLTg4NzksOCArODk2Myw2IEBAIGFuZ2xlOjpSZXN1bHQgSW1hZ2VW
aWV3SGVscGVyOjpnZXRMZXZlbFN0b3JhZ2VJbWFnZVZpZXcoQ29udGV4dFZrICpjb250ZXh0Vmss
CiB7CiAgICAgQVNTRVJUKG1JbWFnZVZpZXdTZXJpYWwudmFsaWQoKSk7CiAKLSAgICByZXRhaW4o
JmNvbnRleHRWay0+Z2V0UmVzb3VyY2VVc2VMaXN0KCkpOwotCiAgICAgSW1hZ2VWaWV3ICppbWFn
ZVZpZXcgPQogICAgICAgICBHZXRMZXZlbEltYWdlVmlldygmbUxldmVsU3RvcmFnZUltYWdlVmll
d3MsIGxldmVsVmssIGltYWdlLmdldExldmVsQ291bnQoKSk7CiAKQEAgLTg4OTEsMTIgKzg5NzMs
MTIgQEAgYW5nbGU6OlJlc3VsdCBJbWFnZVZpZXdIZWxwZXI6OmdldExldmVsU3RvcmFnZUltYWdl
VmlldyhDb250ZXh0VmsgKmNvbnRleHRWaywKICAgICB9CiAKICAgICAvLyBDcmVhdGUgdGhlIHZp
ZXcuICBOb3RlIHRoYXQgc3RvcmFnZSBpbWFnZXMgYXJlIG5vdCBhZmZlY3RlZCBieSBzd2l6emxl
IHBhcmFtZXRlcnMuCi0gICAgcmV0dXJuIGltYWdlLmluaXRSZWludGVycHJldGVkTGF5ZXJJbWFn
ZVZpZXcoY29udGV4dFZrLCB2aWV3VHlwZSwgaW1hZ2UuZ2V0QXNwZWN0RmxhZ3MoKSwKKyAgICBy
ZXR1cm4gaW1hZ2UuaW5pdFJlaW50ZXJwcmV0ZWRMYXllckltYWdlVmlldyhjb250ZXh0LCB2aWV3
VHlwZSwgaW1hZ2UuZ2V0QXNwZWN0RmxhZ3MoKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBnbDo6U3dpenpsZVN0YXRlKCksIGltYWdlVmlldywgbGV2
ZWxWaywgMSwgbGF5ZXIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgaW1hZ2UuZ2V0TGF5ZXJDb3VudCgpLCBpbWFnZVVzYWdlRmxhZ3MsIGZvcm1hdElE
KTsKIH0KIAotYW5nbGU6OlJlc3VsdCBJbWFnZVZpZXdIZWxwZXI6OmdldExldmVsTGF5ZXJTdG9y
YWdlSW1hZ2VWaWV3KENvbnRleHRWayAqY29udGV4dFZrLAorYW5nbGU6OlJlc3VsdCBJbWFnZVZp
ZXdIZWxwZXI6OmdldExldmVsTGF5ZXJTdG9yYWdlSW1hZ2VWaWV3KENvbnRleHQgKmNvbnRleHRW
aywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBjb25zdCBJbWFnZUhlbHBlciAmaW1hZ2UsCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTGV2ZWxJbmRleCBsZXZlbFZr
LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHVpbnQzMl90IGxheWVyLApAQCAtODkwOCw4ICs4OTkwLDYgQEAgYW5nbGU6OlJlc3Vs
dCBJbWFnZVZpZXdIZWxwZXI6OmdldExldmVsTGF5ZXJTdG9yYWdlSW1hZ2VWaWV3KENvbnRleHRW
ayAqY29udGV4dFYKICAgICBBU1NFUlQobUltYWdlVmlld1NlcmlhbC52YWxpZCgpKTsKICAgICBB
U1NFUlQoIWltYWdlLmdldEFjdHVhbEZvcm1hdCgpLmlzQmxvY2spOwogCi0gICAgcmV0YWluKCZj
b250ZXh0VmstPmdldFJlc291cmNlVXNlTGlzdCgpKTsKLQogICAgIEltYWdlVmlldyAqaW1hZ2VW
aWV3ID0KICAgICAgICAgR2V0TGV2ZWxMYXllckltYWdlVmlldygmbUxheWVyTGV2ZWxTdG9yYWdl
SW1hZ2VWaWV3cywgbGV2ZWxWaywgbGF5ZXIsIGltYWdlLmdldExldmVsQ291bnQoKSwKICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBHZXRJbWFnZUxheWVyQ291bnRGb3JWaWV3KGltYWdl
KSk7CkBAIC04OTI3LDcgKzkwMDcsNyBAQCBhbmdsZTo6UmVzdWx0IEltYWdlVmlld0hlbHBlcjo6
Z2V0TGV2ZWxMYXllclN0b3JhZ2VJbWFnZVZpZXcoQ29udGV4dFZrICpjb250ZXh0VgogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEsIGltYWdlVXNhZ2VG
bGFncywgZm9ybWF0SUQpOwogfQogCi1hbmdsZTo6UmVzdWx0IEltYWdlVmlld0hlbHBlcjo6Z2V0
TGV2ZWxEcmF3SW1hZ2VWaWV3KENvbnRleHRWayAqY29udGV4dFZrLAorYW5nbGU6OlJlc3VsdCBJ
bWFnZVZpZXdIZWxwZXI6OmdldExldmVsRHJhd0ltYWdlVmlldyhDb250ZXh0ICpjb250ZXh0LAog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25z
dCBJbWFnZUhlbHBlciAmaW1hZ2UsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIExldmVsSW5kZXggbGV2ZWxWaywKICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgbGF5ZXIsCkBAIC04
OTM5LDggKzkwMTksNiBAQCBhbmdsZTo6UmVzdWx0IEltYWdlVmlld0hlbHBlcjo6Z2V0TGV2ZWxE
cmF3SW1hZ2VWaWV3KENvbnRleHRWayAqY29udGV4dFZrLAogICAgIEFTU0VSVChtSW1hZ2VWaWV3
U2VyaWFsLnZhbGlkKCkpOwogICAgIEFTU0VSVCghaW1hZ2UuZ2V0QWN0dWFsRm9ybWF0KCkuaXNC
bG9jayk7CiAKLSAgICByZXRhaW4oJmNvbnRleHRWay0+Z2V0UmVzb3VyY2VVc2VMaXN0KCkpOwot
CiAgICAgSW1hZ2VTdWJyZXNvdXJjZVJhbmdlIHJhbmdlID0gTWFrZUltYWdlU3VicmVzb3VyY2VE
cmF3UmFuZ2UoCiAgICAgICAgIGltYWdlLnRvR0xMZXZlbChsZXZlbFZrKSwgbGF5ZXIsIEdldExh
eWVyTW9kZShpbWFnZSwgbGF5ZXJDb3VudCksIG1vZGUpOwogCkBAIC04OTU4LDExICs5MDM2LDEx
IEBAIGFuZ2xlOjpSZXN1bHQgSW1hZ2VWaWV3SGVscGVyOjpnZXRMZXZlbERyYXdJbWFnZVZpZXco
Q29udGV4dFZrICpjb250ZXh0VmssCiAgICAgLy8gTm90ZSB0aGF0IHRoZXNlIHZpZXdzIGFyZSBz
cGVjaWZpY2FsbHkgbWFkZSB0byBiZSB1c2VkIGFzIGZyYW1lYnVmZmVyIGF0dGFjaG1lbnRzLCBh
bmQKICAgICAvLyB0aGVyZWZvcmUgZG9uJ3QgaGF2ZSBzd2l6emxlLgogICAgIGdsOjpUZXh0dXJl
VHlwZSB2aWV3VHlwZSA9IEdldDJEVGV4dHVyZVR5cGUobGF5ZXJDb3VudCwgaW1hZ2UuZ2V0U2Ft
cGxlcygpKTsKLSAgICByZXR1cm4gaW1hZ2UuaW5pdExheWVySW1hZ2VWaWV3KGNvbnRleHRWaywg
dmlld1R5cGUsIGltYWdlLmdldEFzcGVjdEZsYWdzKCksIGdsOjpTd2l6emxlU3RhdGUoKSwKKyAg
ICByZXR1cm4gaW1hZ2UuaW5pdExheWVySW1hZ2VWaWV3KGNvbnRleHQsIHZpZXdUeXBlLCBpbWFn
ZS5nZXRBc3BlY3RGbGFncygpLCBnbDo6U3dpenpsZVN0YXRlKCksCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB2aWV3LmdldCgpLCBsZXZlbFZrLCAxLCBsYXllciwgbGF5ZXJD
b3VudCwgbW9kZSk7CiB9CiAKLWFuZ2xlOjpSZXN1bHQgSW1hZ2VWaWV3SGVscGVyOjpnZXRMZXZl
bExheWVyRHJhd0ltYWdlVmlldyhDb250ZXh0VmsgKmNvbnRleHRWaywKK2FuZ2xlOjpSZXN1bHQg
SW1hZ2VWaWV3SGVscGVyOjpnZXRMZXZlbExheWVyRHJhd0ltYWdlVmlldyhDb250ZXh0ICpjb250
ZXh0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGNvbnN0IEltYWdlSGVscGVyICZpbWFnZSwKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMZXZlbEluZGV4IGxldmVsVmssCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
dWludDMyX3QgbGF5ZXIsCkBAIC04OTczLDggKzkwNTEsNiBAQCBhbmdsZTo6UmVzdWx0IEltYWdl
Vmlld0hlbHBlcjo6Z2V0TGV2ZWxMYXllckRyYXdJbWFnZVZpZXcoQ29udGV4dFZrICpjb250ZXh0
VmssCiAgICAgQVNTRVJUKG1JbWFnZVZpZXdTZXJpYWwudmFsaWQoKSk7CiAgICAgQVNTRVJUKCFp
bWFnZS5nZXRBY3R1YWxGb3JtYXQoKS5pc0Jsb2NrKTsKIAotICAgIHJldGFpbigmY29udGV4dFZr
LT5nZXRSZXNvdXJjZVVzZUxpc3QoKSk7Ci0KICAgICBMYXllckxldmVsSW1hZ2VWaWV3VmVjdG9y
ICZpbWFnZVZpZXdzID0gKG1vZGUgPT0gZ2w6OlNyZ2JXcml0ZUNvbnRyb2xNb2RlOjpMaW5lYXIp
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/IG1MYXll
ckxldmVsRHJhd0ltYWdlVmlld3NMaW5lYXIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIDogbUxheWVyTGV2ZWxEcmF3SW1hZ2VWaWV3czsKQEAgLTg5OTMs
NyArOTA2OSw3IEBAIGFuZ2xlOjpSZXN1bHQgSW1hZ2VWaWV3SGVscGVyOjpnZXRMZXZlbExheWVy
RHJhd0ltYWdlVmlldyhDb250ZXh0VmsgKmNvbnRleHRWaywKICAgICAvLyBOb3RlIHRoYXQgdGhl
c2Ugdmlld3MgYXJlIHNwZWNpZmljYWxseSBtYWRlIHRvIGJlIHVzZWQgYXMgZnJhbWVidWZmZXIg
YXR0YWNobWVudHMsIGFuZAogICAgIC8vIHRoZXJlZm9yZSBkb24ndCBoYXZlIHN3aXp6bGUuCiAg
ICAgZ2w6OlRleHR1cmVUeXBlIHZpZXdUeXBlID0gR2V0MkRUZXh0dXJlVHlwZSgxLCBpbWFnZS5n
ZXRTYW1wbGVzKCkpOwotICAgIHJldHVybiBpbWFnZS5pbml0TGF5ZXJJbWFnZVZpZXcoY29udGV4
dFZrLCB2aWV3VHlwZSwgaW1hZ2UuZ2V0QXNwZWN0RmxhZ3MoKSwgZ2w6OlN3aXp6bGVTdGF0ZSgp
LAorICAgIHJldHVybiBpbWFnZS5pbml0TGF5ZXJJbWFnZVZpZXcoY29udGV4dCwgdmlld1R5cGUs
IGltYWdlLmdldEFzcGVjdEZsYWdzKCksIGdsOjpTd2l6emxlU3RhdGUoKSwKICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGltYWdlVmlldywgbGV2ZWxWaywgMSwgbGF5ZXIsIDEs
IG1vZGUpOwogfQogCkBAIC05MTI0LDcgKzkyMDAsNyBAQCB2b2lkIEJ1ZmZlclZpZXdIZWxwZXI6
OmRlc3Ryb3koVmtEZXZpY2UgZGV2aWNlKQogICAgIG1WaWV3U2VyaWFsID0ga0ludmFsaWRJbWFn
ZU9yQnVmZmVyVmlld1NlcmlhbDsKIH0KIAotYW5nbGU6OlJlc3VsdCBCdWZmZXJWaWV3SGVscGVy
OjpnZXRWaWV3KENvbnRleHRWayAqY29udGV4dFZrLAorYW5nbGU6OlJlc3VsdCBCdWZmZXJWaWV3
SGVscGVyOjpnZXRWaWV3KENvbnRleHQgKmNvbnRleHQsCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgY29uc3QgQnVmZmVySGVscGVyICZidWZmZXIsCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVmtEZXZpY2VTaXplIGJ1ZmZlck9mZnNldCwK
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBGb3JtYXQgJmZv
cm1hdCwKQEAgLTkxNTYsNyArOTIzMiw3IEBAIGFuZ2xlOjpSZXN1bHQgQnVmZmVyVmlld0hlbHBl
cjo6Z2V0VmlldyhDb250ZXh0VmsgKmNvbnRleHRWaywKICAgICB2aWV3Q3JlYXRlSW5mby5yYW5n
ZSAgICAgICAgICAgICAgICAgID0gc2l6ZTsKIAogICAgIEJ1ZmZlclZpZXcgdmlldzsKLSAgICBB
TkdMRV9WS19UUlkoY29udGV4dFZrLCB2aWV3LmluaXQoY29udGV4dFZrLT5nZXREZXZpY2UoKSwg
dmlld0NyZWF0ZUluZm8pKTsKKyAgICBBTkdMRV9WS19UUlkoY29udGV4dCwgdmlldy5pbml0KGNv
bnRleHQtPmdldERldmljZSgpLCB2aWV3Q3JlYXRlSW5mbykpOwogCiAgICAgLy8gQ2FjaGUgdGhl
IHZpZXcKICAgICBhdXRvIGluc2VydEl0ZXIgPSBtVmlld3MuaW5zZXJ0KHt2aWV3VmtGb3JtYXQs
IHN0ZDo6bW92ZSh2aWV3KX0pOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUv
c3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi92a19oZWxwZXJzLmggYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL3ZrX2hlbHBlcnMuaAppbmRl
eCA3OWZhYTI2OTk5ZmM3YzM4MWFlMjYyMzY5MTk4YjM2MWEzNDdjYThjLi41YjE4NjE0MTFiM2Y5
OTEyZjU0MjljOTI5YmE1YzQxNTNiOGZmMTE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL3ZrX2hlbHBlcnMuaAorKysgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL3ZrX2hl
bHBlcnMuaApAQCAtODUsNyArODUsNyBAQCBjbGFzcyBEeW5hbWljQnVmZmVyIDogYW5nbGU6Ok5v
bkNvcHlhYmxlCiAgICAgLy8gaW50ZXJuYWxseSBtYXkgdHJpZ2dlciBhIG5ldyBidWZmZXIgdG8g
YmUgY3JlYXRlZCAod2hpY2ggaXMgcmV0dXJuZWQgaW4gdGhlIG9wdGlvbmFsCiAgICAgLy8gcGFy
YW1ldGVyIGBuZXdCdWZmZXJBbGxvY2F0ZWRPdXRgKS4gVGhlIG5ldyByZWdpb24gd2lsbCBiZSBp
biB0aGUgcmV0dXJuZWQgYnVmZmVyIGF0IGdpdmVuCiAgICAgLy8gb2Zmc2V0LgotICAgIGFuZ2xl
OjpSZXN1bHQgYWxsb2NhdGUoQ29udGV4dFZrICpjb250ZXh0VmssCisgICAgYW5nbGU6OlJlc3Vs
dCBhbGxvY2F0ZShDb250ZXh0ICpjb250ZXh0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAg
c2l6ZV90IHNpemVJbkJ5dGVzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgQnVmZmVySGVs
cGVyICoqYnVmZmVySGVscGVyT3V0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCAq
bmV3QnVmZmVyQWxsb2NhdGVkT3V0KTsKQEAgLTkzLDcgKzkzLDcgQEAgY2xhc3MgRHluYW1pY0J1
ZmZlciA6IGFuZ2xlOjpOb25Db3B5YWJsZQogICAgIC8vIFRoaXMgcmVsZWFzZXMgcmVzb3VyY2Vz
IHdoZW4gdGhleSBtaWdodCBjdXJyZW50bHkgYmUgaW4gdXNlLgogICAgIHZvaWQgcmVsZWFzZShS
ZW5kZXJlclZrICpyZW5kZXJlcik7CiAKLSAgICAvLyBUaGlzIGFkZHMgaW5mbGlnaHQgYnVmZmVy
cyB0byB0aGUgY29udGV4dCdzIG1SZXNvdXJjZVVzZUxpc3QgYW5kIHRoZW4gcmVsZWFzZXMgdGhl
bQorICAgIC8vIFRoaXMgYWRkcyBpbi1mbGlnaHQgYnVmZmVycyB0byB0aGUgY29udGV4dCdzIG1S
ZXNvdXJjZVVzZUxpc3QgYW5kIHRoZW4gcmVsZWFzZXMgdGhlbQogICAgIHZvaWQgcmVsZWFzZUlu
RmxpZ2h0QnVmZmVyc1RvUmVzb3VyY2VVc2VMaXN0KENvbnRleHRWayAqY29udGV4dFZrKTsKIAog
ICAgIC8vIFRoaXMgZnJlZXMgcmVzb3VyY2VzIGltbWVkaWF0ZWx5LgpAQCAtMTIwLDcgKzEyMCw3
IEBAIGNsYXNzIER5bmFtaWNCdWZmZXIgOiBhbmdsZTo6Tm9uQ29weWFibGUKIAogICBwcml2YXRl
OgogICAgIHZvaWQgcmVzZXQoKTsKLSAgICBhbmdsZTo6UmVzdWx0IGFsbG9jYXRlTmV3QnVmZmVy
KENvbnRleHRWayAqY29udGV4dFZrKTsKKyAgICBhbmdsZTo6UmVzdWx0IGFsbG9jYXRlTmV3QnVm
ZmVyKENvbnRleHQgKmNvbnRleHQpOwogCiAgICAgVmtCdWZmZXJVc2FnZUZsYWdzIG1Vc2FnZTsK
ICAgICBib29sIG1Ib3N0VmlzaWJsZTsKQEAgLTE1Niw3ICsxNTYsOCBAQCBjbGFzcyBEZXNjcmlw
dG9yUG9vbEhlbHBlciA6IHB1YmxpYyBSZXNvdXJjZQogICAgIHZvaWQgZGVzdHJveShWa0Rldmlj
ZSBkZXZpY2UpOwogICAgIHZvaWQgcmVsZWFzZShDb250ZXh0VmsgKmNvbnRleHRWayk7CiAKLSAg
ICBhbmdsZTo6UmVzdWx0IGFsbG9jYXRlRGVzY3JpcHRvclNldHMoQ29udGV4dFZrICpjb250ZXh0
VmssCisgICAgYW5nbGU6OlJlc3VsdCBhbGxvY2F0ZURlc2NyaXB0b3JTZXRzKENvbnRleHQgKmNv
bnRleHQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJlc291cmNl
VXNlTGlzdCAqcmVzb3VyY2VVc2VMaXN0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBjb25zdCBEZXNjcmlwdG9yU2V0TGF5b3V0ICZkZXNjcmlwdG9yU2V0TGF5b3V0
LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBkZXNj
cmlwdG9yU2V0Q291bnQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IFZrRGVzY3JpcHRvclNldCAqZGVzY3JpcHRvclNldHNPdXQpOwpAQCAtMTg4LDIwICsxODksMjMg
QEAgY2xhc3MgRHluYW1pY0Rlc2NyaXB0b3JQb29sIGZpbmFsIDogYW5nbGU6Ok5vbkNvcHlhYmxl
CiAgICAgLy8gV2UgdXNlIHRoZSBkZXNjcmlwdG9yIHR5cGUgdG8gaGVscCBjb3VudCB0aGUgbnVt
YmVyIG9mIGZyZWUgc2V0cy4KICAgICAvLyBCeSBjb252ZW50aW9uLCBzZXRzIGFyZSBpbmRleGVk
IGFjY29yZGluZyB0byB0aGUgY29uc3RhbnRzIGluIHZrX2NhY2hlX3V0aWxzLmguCiAgICAgQU5H
TEVfSU5MSU5FIGFuZ2xlOjpSZXN1bHQgYWxsb2NhdGVEZXNjcmlwdG9yU2V0cygKLSAgICAgICAg
Q29udGV4dFZrICpjb250ZXh0VmssCisgICAgICAgIENvbnRleHQgKmNvbnRleHQsCisgICAgICAg
IFJlc291cmNlVXNlTGlzdCAqcmVzb3VyY2VVc2VMaXN0LAogICAgICAgICBjb25zdCBEZXNjcmlw
dG9yU2V0TGF5b3V0ICZkZXNjcmlwdG9yU2V0TGF5b3V0LAogICAgICAgICB1aW50MzJfdCBkZXNj
cmlwdG9yU2V0Q291bnQsCiAgICAgICAgIFJlZkNvdW50ZWREZXNjcmlwdG9yUG9vbEJpbmRpbmcg
KmJpbmRpbmdPdXQsCiAgICAgICAgIFZrRGVzY3JpcHRvclNldCAqZGVzY3JpcHRvclNldHNPdXQp
CiAgICAgewogICAgICAgICBib29sIGlnbm9yZU5ld1Bvb2xBbGxvY2F0ZWQ7Ci0gICAgICAgIHJl
dHVybiBhbGxvY2F0ZVNldHNBbmRHZXRJbmZvKGNvbnRleHRWaywgZGVzY3JpcHRvclNldExheW91
dCwgZGVzY3JpcHRvclNldENvdW50LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBiaW5kaW5nT3V0LCBkZXNjcmlwdG9yU2V0c091dCwgJmlnbm9yZU5ld1Bvb2xBbGxvY2F0
ZWQpOworICAgICAgICByZXR1cm4gYWxsb2NhdGVTZXRzQW5kR2V0SW5mbyhjb250ZXh0LCByZXNv
dXJjZVVzZUxpc3QsIGRlc2NyaXB0b3JTZXRMYXlvdXQsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGRlc2NyaXB0b3JTZXRDb3VudCwgYmluZGluZ091dCwgZGVzY3JpcHRv
clNldHNPdXQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZpZ25vcmVO
ZXdQb29sQWxsb2NhdGVkKTsKICAgICB9CiAKICAgICAvLyBXZSB1c2UgdGhlIGRlc2NyaXB0b3Ig
dHlwZSB0byBoZWxwIGNvdW50IHRoZSBudW1iZXIgb2YgZnJlZSBzZXRzLgogICAgIC8vIEJ5IGNv
bnZlbnRpb24sIHNldHMgYXJlIGluZGV4ZWQgYWNjb3JkaW5nIHRvIHRoZSBjb25zdGFudHMgaW4g
dmtfY2FjaGVfdXRpbHMuaC4KLSAgICBhbmdsZTo6UmVzdWx0IGFsbG9jYXRlU2V0c0FuZEdldElu
Zm8oQ29udGV4dFZrICpjb250ZXh0VmssCisgICAgYW5nbGU6OlJlc3VsdCBhbGxvY2F0ZVNldHNB
bmRHZXRJbmZvKENvbnRleHQgKmNvbnRleHQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFJlc291cmNlVXNlTGlzdCAqcmVzb3VyY2VVc2VMaXN0LAogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBEZXNjcmlwdG9yU2V0TGF5b3V0
ICZkZXNjcmlwdG9yU2V0TGF5b3V0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICB1aW50MzJfdCBkZXNjcmlwdG9yU2V0Q291bnQsCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIFJlZkNvdW50ZWREZXNjcmlwdG9yUG9vbEJpbmRpbmcgKmJp
bmRpbmdPdXQsCkBAIC0yMTQsOCArMjE4LDEwIEBAIGNsYXNzIER5bmFtaWNEZXNjcmlwdG9yUG9v
bCBmaW5hbCA6IGFuZ2xlOjpOb25Db3B5YWJsZQogICAgIHN0YXRpYyB1aW50MzJfdCBHZXRNYXhT
ZXRzUGVyUG9vbE11bHRpcGxpZXJGb3JUZXN0aW5nKCk7CiAgICAgc3RhdGljIHZvaWQgU2V0TWF4
U2V0c1BlclBvb2xNdWx0aXBsaWVyRm9yVGVzdGluZyh1aW50MzJfdCBtYXhTZXRzUGVyUG9vbCk7
CiAKKyAgICBib29sIHZhbGlkKCkgY29uc3QgeyByZXR1cm4gIW1EZXNjcmlwdG9yUG9vbHMuZW1w
dHkoKTsgfQorCiAgIHByaXZhdGU6Ci0gICAgYW5nbGU6OlJlc3VsdCBhbGxvY2F0ZU5ld1Bvb2wo
Q29udGV4dFZrICpjb250ZXh0VmspOworICAgIGFuZ2xlOjpSZXN1bHQgYWxsb2NhdGVOZXdQb29s
KENvbnRleHQgKmNvbnRleHQpOwogCiAgICAgc3RhdGljIGNvbnN0ZXhwciB1aW50MzJfdCBrTWF4
U2V0c1BlclBvb2xNYXggPSA1MTI7CiAgICAgc3RhdGljIHVpbnQzMl90IG1NYXhTZXRzUGVyUG9v
bDsKQEAgLTg0NSwxMCArODUxLDEyIEBAIGNsYXNzIEJ1ZmZlclBvb2wgOiBhbmdsZTo6Tm9uQ29w
eWFibGUKICAgICB1aW50MzJfdCBtTWVtb3J5VHlwZUluZGV4OwogICAgIEJ1ZmZlckJsb2NrUG9p
bnRlclZlY3RvciBtQnVmZmVyQmxvY2tzOwogICAgIC8vIFdoZW4gcHJ1bmVEZWZhdWx0QnVmZmVy
UG9vbHMgZ2V0cyBjYWxsZWQsIHdlIGRvIG5vdCBpbW1lZGlhdGVseSBmcmVlIGFsbCBlbXB0eSBi
dWZmZXJzLiBPbmx5Ci0gICAgLy8gYnVmZmVycyB0aGF0IHdlIGZvdW5kIGFyZSBlbXB0eSBmb3Ig
dGhpcyBudW1iZXIgb2YgdGltZXMgY29uc2VjdXRpdmVseSwgd2Ugd2lsbCBhY3R1YWxseSBmcmVl
Ci0gICAgLy8gaXQuIFRoYXQgd2F5IHdlIGF2b2lkIHRoZSBzaXR1YXRpb24gdGhhdCBhIGJ1ZmZl
ciBqdXN0IGJlY29tZXMgZW1wdHkgYW5kIGdldHMgZnJlZWQgcmlnaHQKLSAgICAvLyBhZnRlciBh
bmQgdGhlbiB3ZSBoYXZlIHRvIGFsbG9jYXRlIGEgbmV3IG9uZSBuZXh0IGZyYW1lLgorICAgIC8v
IGJ1ZmZlcnMgdGhhdCB3ZSBmb3VuZCBhcmUgZW1wdHkgZm9yIGtNYXhDb3VudFJlbWFpbnNFbXB0
eSBudW1iZXIgb2YgdGltZXMgY29uc2VjdXRpdmVseSwgb3IKKyAgICAvLyB3ZSBoYXZlIG1vcmUg
dGhhbiBrTWF4RW1wdHlCdWZmZXJDb3VudCBudW1iZXIgb2YgZW1wdHkgYnVmZmVycywgd2Ugd2ls
bCBhY3R1YWxseSBmcmVlIGl0LgorICAgIC8vIFRoYXQgd2F5IHdlIGF2b2lkIHRoZSBzaXR1YXRp
b24gdGhhdCBhIGJ1ZmZlciBqdXN0IGJlY29tZXMgZW1wdHkgYW5kIGdldHMgZnJlZWQgcmlnaHQg
YWZ0ZXIKKyAgICAvLyBhbmQgb25seSB0byBmaW5kIG91dCB0aGF0IHdlIGhhdmUgdG8gYWxsb2Nh
dGUgYSBuZXcgb25lIG5leHQgZnJhbWUuCiAgICAgc3RhdGljIGNvbnN0ZXhwciBpbnQzMl90IGtN
YXhDb3VudFJlbWFpbnNFbXB0eSA9IDQ7CisgICAgc3RhdGljIGNvbnN0ZXhwciBpbnQzMl90IGtN
YXhFbXB0eUJ1ZmZlckNvdW50ICA9IDE2OwogfTsKIHVzaW5nIEJ1ZmZlclBvb2xQb2ludGVyQXJy
YXkgPSBzdGQ6OmFycmF5PHN0ZDo6dW5pcXVlX3B0cjxCdWZmZXJQb29sPiwgVktfTUFYX01FTU9S
WV9UWVBFUz47CiAKQEAgLTg4Nyw2ICs4OTUsNjQgQEAgY2xhc3MgUGFja2VkQ2xlYXJWYWx1ZXNB
cnJheSBmaW5hbAogICAgIGdsOjpBdHRhY2htZW50QXJyYXk8VmtDbGVhclZhbHVlPiBtVmFsdWVz
OwogfTsKIAorLy8gUmVmZXJlbmNlIHRvIGEgcmVuZGVyIHBhc3MgYXR0YWNobWVudCAoY29sb3Ig
b3IgZGVwdGgvc3RlbmNpbCkgYWxvbmdzaWRlIHJlbmRlci1wYXNzLXJlbGF0ZWQKKy8vIHRyYWNr
aW5nIHN1Y2ggYXMgd2hlbiB0aGUgYXR0YWNobWVudCBpcyBsYXN0IHdyaXR0ZW4gdG8gb3IgaW52
YWxpZGF0ZWQuICBUaGlzIGlzIHVzZWQgdG8KKy8vIGRldGVybWluZSBsb2FkT3AgYW5kIHN0b3Jl
T3Agb2YgdGhlIGF0dGFjaG1lbnQsIGFuZCBlbmFibGVzIG9wdGltaXphdGlvbnMgdGhhdCBuZWVk
IHRvIGtub3cKKy8vIGhvdyB0aGUgYXR0YWNobWVudCBoYXMgYmVlbiB1c2VkLgorY2xhc3MgUmVu
ZGVyUGFzc0F0dGFjaG1lbnQgZmluYWwKK3sKKyAgcHVibGljOgorICAgIFJlbmRlclBhc3NBdHRh
Y2htZW50KCk7CisgICAgflJlbmRlclBhc3NBdHRhY2htZW50KCkgPSBkZWZhdWx0OworCisgICAg
dm9pZCBpbml0KEltYWdlSGVscGVyICppbWFnZSwKKyAgICAgICAgICAgICAgZ2w6OkxldmVsSW5k
ZXggbGV2ZWxJbmRleCwKKyAgICAgICAgICAgICAgdWludDMyX3QgbGF5ZXJJbmRleCwKKyAgICAg
ICAgICAgICAgdWludDMyX3QgbGF5ZXJDb3VudCwKKyAgICAgICAgICAgICAgVmtJbWFnZUFzcGVj
dEZsYWdCaXRzIGFzcGVjdCk7CisgICAgdm9pZCByZXNldCgpOworCisgICAgdm9pZCBvbkFjY2Vz
cyhSZXNvdXJjZUFjY2VzcyBhY2Nlc3MsIHVpbnQzMl90IGN1cnJlbnRDbWRDb3VudCk7CisgICAg
dm9pZCBpbnZhbGlkYXRlKGNvbnN0IGdsOjpSZWN0YW5nbGUgJmludmFsaWRhdGVBcmVhLAorICAg
ICAgICAgICAgICAgICAgICBib29sIGlzQXR0YWNobWVudEVuYWJsZWQsCisgICAgICAgICAgICAg
ICAgICAgIHVpbnQzMl90IGN1cnJlbnRDbWRDb3VudCk7CisgICAgdm9pZCBvblJlbmRlckFyZWFH
cm93dGgoQ29udGV4dFZrICpjb250ZXh0VmssIGNvbnN0IGdsOjpSZWN0YW5nbGUgJm5ld1JlbmRl
ckFyZWEpOworICAgIHZvaWQgZmluYWxpemVMb2FkU3RvcmUoQ29udGV4dCAqY29udGV4dCwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IGN1cnJlbnRDbWRDb3VudCwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGJvb2wgaGFzVW5yZXNvbHZlQXR0YWNobWVudCwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgIFJlbmRlclBhc3NMb2FkT3AgKmxvYWRPcCwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgIFJlbmRlclBhc3NTdG9yZU9wICpzdG9yZU9wLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgYm9vbCAqaXNJbnZhbGlkYXRlZE91dCk7CisgICAgdm9pZCByZXN0
b3JlQ29udGVudCgpOworICAgIGJvb2wgaGFzV3JpdGVBY2Nlc3MoKSBjb25zdCB7IHJldHVybiBt
QWNjZXNzID09IFJlc291cmNlQWNjZXNzOjpXcml0ZTsgfQorCisgICAgSW1hZ2VIZWxwZXIgKmdl
dEltYWdlKCkgeyByZXR1cm4gbUltYWdlOyB9CisKKyAgcHJpdmF0ZToKKyAgICBib29sIGhhc1dy
aXRlQWZ0ZXJJbnZhbGlkYXRlKHVpbnQzMl90IGN1cnJlbnRDbWRDb3VudCkgY29uc3Q7CisgICAg
Ym9vbCBpc0ludmFsaWRhdGVkKHVpbnQzMl90IGN1cnJlbnRDbWRDb3VudCkgY29uc3Q7CisgICAg
Ym9vbCBvbkFjY2Vzc0ltcGwoUmVzb3VyY2VBY2Nlc3MgYWNjZXNzLCB1aW50MzJfdCBjdXJyZW50
Q21kQ291bnQpOworCisgICAgLy8gVGhlIGF0dGFjaG1lbnQgaW1hZ2UgaXRzZWxmCisgICAgSW1h
Z2VIZWxwZXIgKm1JbWFnZTsKKyAgICAvLyBUaGUgc3VicmVzb3VyY2UgdXNlZCBpbiB0aGUgcmVu
ZGVyIHBhc3MKKyAgICBnbDo6TGV2ZWxJbmRleCBtTGV2ZWxJbmRleDsKKyAgICB1aW50MzJfdCBt
TGF5ZXJJbmRleDsKKyAgICB1aW50MzJfdCBtTGF5ZXJDb3VudDsKKyAgICBWa0ltYWdlQXNwZWN0
RmxhZ0JpdHMgbUFzcGVjdDsKKyAgICAvLyBUcmFja3MgdGhlIGhpZ2hlc3QgYWNjZXNzIGR1cmlu
ZyB0aGUgZW50aXJlIHJlbmRlciBwYXNzIChXcml0ZSBiZWluZyB0aGUgaGlnaGVzdCksIGV4Y2x1
ZGluZworICAgIC8vIGNsZWFyIHRocm91Z2ggbG9hZE9wLiAgVGhpcyBhbGxvd3MgbG9hZE9wPUNs
ZWFyIHRvIGJlIG9wdGltaXplZCBvdXQgd2hlbiB3ZSBmaW5kIG91dCB0aGF0IHRoZQorICAgIC8v
IGF0dGFjaG1lbnQgaXMgbm90IHVzZWQgaW4gdGhlIHJlbmRlciBwYXNzIGF0IGFsbCBhbmQgc3Rv
cmVPcD1Eb250Q2FyZSwgb3IgdGhhdCBhCisgICAgLy8gbWlkLXJlbmRlci1wYXNzIGNsZWFyIGNv
dWxkIGJlIGhvaXN0ZWQgdG8gbG9hZE9wPUNsZWFyLgorICAgIFJlc291cmNlQWNjZXNzIG1BY2Nl
c3M7CisgICAgLy8gVGhlIGluZGV4IG9mIHRoZSBsYXN0IGRyYXcgY29tbWFuZCBhZnRlciB3aGlj
aCB0aGUgYXR0YWNobWVudCBpcyBpbnZhbGlkYXRlZAorICAgIHVpbnQzMl90IG1JbnZhbGlkYXRl
ZENtZENvdW50OworICAgIC8vIFRoZSBpbmRleCBvZiB0aGUgbGFzdCBkcmF3IGNvbW1hbmQgYWZ0
ZXIgd2hpY2ggdGhlIGF0dGFjaG1lbnQgb3V0cHV0IGlzIGRpc2FibGVkCisgICAgdWludDMyX3Qg
bURpc2FibGVkQ21kQ291bnQ7CisgICAgLy8gVGhlIGFyZWEgdGhhdCBoYXMgYmVlbiBpbnZhbGlk
YXRlZAorICAgIGdsOjpSZWN0YW5nbGUgbUludmFsaWRhdGVBcmVhOworfTsKKwogLy8gU3RvcmVz
IEltYWdlSGVscGVycyBJbiBwYWNrZWQgYXR0YWNobWVudCBpbmRleAogY2xhc3MgUGFja2VkSW1h
Z2VBdHRhY2htZW50QXJyYXkgZmluYWwKIHsKQEAgLTk5OCw4ICsxMDY0LDggQEAgY2xhc3MgQ29t
bWFuZEJ1ZmZlckhlbHBlckNvbW1vbiA6IGFuZ2xlOjpOb25Db3B5YWJsZQogCiAgICAgLy8gVHJh
Y2tzIHJlc291cmNlcyB1c2VkIGluIHRoZSBjb21tYW5kIGJ1ZmZlci4KICAgICAvLyBGb3IgQnVm
ZmVycywgd2UgdHJhY2sgdGhlIHJlYWQvd3JpdGUgYWNjZXNzIHR5cGUgc28gd2UgY2FuIGVuYWJs
ZSBzaW11bHRhbmVvdXMgcmVhZHMuCi0gICAgc3RhdGljIGNvbnN0ZXhwciB1aW50MzJfdCBrRmFz
dE1hcFNpemUgPSAxNjsKLSAgICBhbmdsZTo6RmFzdFVub3JkZXJlZE1hcDxCdWZmZXJTZXJpYWws
IEJ1ZmZlckFjY2Vzcywga0Zhc3RNYXBTaXplPiBtVXNlZEJ1ZmZlcnM7CisgICAgc3RhdGljIGNv
bnN0ZXhwciB1aW50MzJfdCBrRmxhdE1hcFNpemUgPSAxNjsKKyAgICBhbmdsZTo6RmxhdFVub3Jk
ZXJlZE1hcDxCdWZmZXJTZXJpYWwsIEJ1ZmZlckFjY2Vzcywga0ZsYXRNYXBTaXplPiBtVXNlZEJ1
ZmZlcnM7CiB9OwogCiBjbGFzcyBPdXRzaWRlUmVuZGVyUGFzc0NvbW1hbmRCdWZmZXJIZWxwZXIg
ZmluYWwgOiBwdWJsaWMgQ29tbWFuZEJ1ZmZlckhlbHBlckNvbW1vbgpAQCAtMTExMSw3ICsxMTc3
LDcgQEAgY2xhc3MgUmVuZGVyUGFzc0NvbW1hbmRCdWZmZXJIZWxwZXIgZmluYWwgOiBwdWJsaWMg
Q29tbWFuZEJ1ZmZlckhlbHBlckNvbW1vbgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGNvbnN0IGdsOjpSZWN0YW5nbGUgJnJlbmRlckFyZWEsCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgY29uc3QgUmVuZGVyUGFzc0Rlc2MgJnJlbmRlclBhc3NEZXNjLAogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IEF0dGFjaG1lbnRPcHNBcnJheSAm
cmVuZGVyUGFzc0F0dGFjaG1lbnRPcHMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgY29uc3Qgdms6OlBhY2tlZEF0dGFjaG1lbnRDb3VudCBjb2xvckF0dGFjaG1lbnRDb3VudCwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBQYWNrZWRBdHRhY2htZW50
Q291bnQgY29sb3JBdHRhY2htZW50Q291bnQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgY29uc3QgUGFja2VkQXR0YWNobWVudEluZGV4IGRlcHRoU3RlbmNpbEF0dGFjaG1lbnRJ
bmRleCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBQYWNrZWRDbGVh
clZhbHVlc0FycmF5ICZjbGVhclZhbHVlcywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBSZW5kZXJQYXNzQ29tbWFuZEJ1ZmZlciAqKmNvbW1hbmRCdWZmZXJPdXQpOwpAQCAtMTEz
NSwxOSArMTIwMSw2IEBAIGNsYXNzIFJlbmRlclBhc3NDb21tYW5kQnVmZmVySGVscGVyIGZpbmFs
IDogcHVibGljIENvbW1hbmRCdWZmZXJIZWxwZXJDb21tb24KICAgICB2b2lkIGludmFsaWRhdGVS
ZW5kZXJQYXNzU3RlbmNpbEF0dGFjaG1lbnQoY29uc3QgZ2w6OkRlcHRoU3RlbmNpbFN0YXRlICZk
c1N0YXRlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBj
b25zdCBnbDo6UmVjdGFuZ2xlICZpbnZhbGlkYXRlQXJlYSk7CiAKLSAgICBib29sIGhhc1dyaXRl
QWZ0ZXJJbnZhbGlkYXRlKHVpbnQzMl90IGNtZENvdW50SW52YWxpZGF0ZWQsIHVpbnQzMl90IGNt
ZENvdW50RGlzYWJsZWQpCi0gICAgewotICAgICAgICByZXR1cm4gKGNtZENvdW50SW52YWxpZGF0
ZWQgIT0ga0luZmluaXRlQ21kQ291bnQgJiYKLSAgICAgICAgICAgICAgICBzdGQ6Om1pbihjbWRD
b3VudERpc2FibGVkLCBnZXRSZW5kZXJQYXNzV3JpdGVDb21tYW5kQ291bnQoKSkgIT0KLSAgICAg
ICAgICAgICAgICAgICAgY21kQ291bnRJbnZhbGlkYXRlZCk7Ci0gICAgfQotCi0gICAgYm9vbCBp
c0ludmFsaWRhdGVkKHVpbnQzMl90IGNtZENvdW50SW52YWxpZGF0ZWQsIHVpbnQzMl90IGNtZENv
dW50RGlzYWJsZWQpCi0gICAgewotICAgICAgICByZXR1cm4gY21kQ291bnRJbnZhbGlkYXRlZCAh
PSBrSW5maW5pdGVDbWRDb3VudCAmJgotICAgICAgICAgICAgICAgc3RkOjptaW4oY21kQ291bnRE
aXNhYmxlZCwgZ2V0UmVuZGVyUGFzc1dyaXRlQ29tbWFuZENvdW50KCkpID09IGNtZENvdW50SW52
YWxpZGF0ZWQ7Ci0gICAgfQotCiAgICAgdm9pZCB1cGRhdGVSZW5kZXJQYXNzQ29sb3JDbGVhcihQ
YWNrZWRBdHRhY2htZW50SW5kZXggY29sb3JJbmRleCwKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGNvbnN0IFZrQ2xlYXJWYWx1ZSAmY29sb3JDbGVhclZhbHVlKTsKICAgICB2
b2lkIHVwZGF0ZVJlbmRlclBhc3NEZXB0aFN0ZW5jaWxDbGVhcihWa0ltYWdlQXNwZWN0RmxhZ3Mg
YXNwZWN0RmxhZ3MsCkBAIC0xMTgyLDcgKzEyMzUsNyBAQCBjbGFzcyBSZW5kZXJQYXNzQ29tbWFu
ZEJ1ZmZlckhlbHBlciBmaW5hbCA6IHB1YmxpYyBDb21tYW5kQnVmZmVySGVscGVyQ29tbW9uCiAK
ICAgICBib29sIGhhc0RlcHRoU3RlbmNpbFdyaXRlT3JDbGVhcigpIGNvbnN0CiAgICAgewotICAg
ICAgICByZXR1cm4gbURlcHRoQWNjZXNzID09IFJlc291cmNlQWNjZXNzOjpXcml0ZSB8fCBtU3Rl
bmNpbEFjY2VzcyA9PSBSZXNvdXJjZUFjY2Vzczo6V3JpdGUgfHwKKyAgICAgICAgcmV0dXJuIG1E
ZXB0aEF0dGFjaG1lbnQuaGFzV3JpdGVBY2Nlc3MoKSB8fCBtU3RlbmNpbEF0dGFjaG1lbnQuaGFz
V3JpdGVBY2Nlc3MoKSB8fAogICAgICAgICAgICAgICAgbUF0dGFjaG1lbnRPcHNbbURlcHRoU3Rl
bmNpbEF0dGFjaG1lbnRJbmRleF0ubG9hZE9wID09IFZLX0FUVEFDSE1FTlRfTE9BRF9PUF9DTEVB
UiB8fAogICAgICAgICAgICAgICAgbUF0dGFjaG1lbnRPcHNbbURlcHRoU3RlbmNpbEF0dGFjaG1l
bnRJbmRleF0uc3RlbmNpbExvYWRPcCA9PQogICAgICAgICAgICAgICAgICAgIFZLX0FUVEFDSE1F
TlRfTE9BRF9PUF9DTEVBUjsKQEAgLTEyMTMsMTEgKzEyNjYsNiBAQCBjbGFzcyBSZW5kZXJQYXNz
Q29tbWFuZEJ1ZmZlckhlbHBlciBmaW5hbCA6IHB1YmxpYyBDb21tYW5kQnVmZmVySGVscGVyQ29t
bW9uCiAgICAgICAgIC8vIGNvbnNpZGVyZWQgY29udGludW91cyBhbW9uZyBzdWJwYXNzZXMuCiAg
ICAgICAgIHJldHVybiBtUHJldmlvdXNTdWJwYXNzZXNDbWRDb3VudCArIGdldENvbW1hbmRCdWZm
ZXIoKS5nZXRSZW5kZXJQYXNzV3JpdGVDb21tYW5kQ291bnQoKTsKICAgICB9Ci0gICAgYm9vbCBv
bkRlcHRoU3RlbmNpbEFjY2VzcyhSZXNvdXJjZUFjY2VzcyBhY2Nlc3MsCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICB1aW50MzJfdCAqY21kQ291bnRJbnZhbGlkYXRlZCwKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90ICpjbWRDb3VudERpc2FibGVkKTsKLSAgICB2
b2lkIHJlc3RvcmVEZXB0aENvbnRlbnQoKTsKLSAgICB2b2lkIHJlc3RvcmVTdGVuY2lsQ29udGVu
dCgpOwogCiAgICAgLy8gV2UgY2FuJ3QgZGV0ZXJtaW5lIHRoZSBpbWFnZSBsYXlvdXQgYXQgdGhl
IHJlbmRlcnBhc3Mgc3RhcnQgdGltZSBzaW5jZSB0aGVpciBmdWxsIHVzYWdlCiAgICAgLy8gYXJl
bid0IGtub3duIHVudGlsIGxhdGVyIHRpbWUuIFdlIGZpbmFsaXplIHRoZSBsYXlvdXQgd2hlbiBl
aXRoZXIgSW1hZ2VIZWxwZXIgb2JqZWN0IGlzCkBAIC0xMjU5LDIzICsxMzA3LDggQEAgY2xhc3Mg
UmVuZGVyUGFzc0NvbW1hbmRCdWZmZXJIZWxwZXIgZmluYWwgOiBwdWJsaWMgQ29tbWFuZEJ1ZmZl
ckhlbHBlckNvbW1vbgogICAgIGJvb2wgbVJlYmluZFRyYW5zZm9ybUZlZWRiYWNrQnVmZmVyczsK
ICAgICBib29sIG1Jc1RyYW5zZm9ybUZlZWRiYWNrQWN0aXZlVW5wYXVzZWQ7CiAKLSAgICAvLyBT
dGF0ZSB0cmFja2luZyBmb3IgdGhlIG1heGltdW0gKFdyaXRlIGJlZW4gdGhlIGhpZ2hlc3QpIGRl
cHRoIGFjY2VzcyBkdXJpbmcgdGhlIGVudGlyZQotICAgIC8vIHJlbmRlcnBhc3MuIE5vdGUgdGhh
dCB0aGlzIGRvZXMgbm90IGluY2x1ZGUgVktfQVRUQUNITUVOVF9MT0FEX09QX0NMRUFSIHdoaWNo
IGlzIHRyYWNrZWQKLSAgICAvLyBzZXBhcmF0ZWx5LiBUaGlzIGlzIGRvbmUgdGhpcyB3YXkgdG8g
YWxsb3cgY2xlYXIgb3AgdG8gYmVpbmcgb3B0aW1pemVkIG91dCB3aGVuIHdlIGZpbmQgb3V0Ci0g
ICAgLy8gdGhhdCB0aGUgZGVwdGggYnVmZmVyIGlzIG5vdCBiZWluZyB1c2VkIGR1cmluZyB0aGUg
ZW50aXJlIHJlbmRlcnBhc3MgYW5kIHN0b3JlIG9wIGlzCi0gICAgLy8gVktfQVRUQUNITUVOVF9T
VE9SRV9PUF9ET05UQ0FSRS4KLSAgICBSZXNvdXJjZUFjY2VzcyBtRGVwdGhBY2Nlc3M7Ci0gICAg
Ly8gU2ltaWxhciB0cmFja2luZyB0byBtRGVwdGhBY2Nlc3MgYnV0IGZvciB0aGUgc3RlbmNpbCBh
c3BlY3QuCi0gICAgUmVzb3VyY2VBY2Nlc3MgbVN0ZW5jaWxBY2Nlc3M7Ci0KICAgICAvLyBTdGF0
ZSB0cmFja2luZyBmb3Igd2hldGhlciB0byBvcHRpbWl6ZSB0aGUgc3RvcmVPcCB0byBET05UX0NB
UkUKICAgICB1aW50MzJfdCBtUHJldmlvdXNTdWJwYXNzZXNDbWRDb3VudDsKLSAgICB1aW50MzJf
dCBtRGVwdGhDbWRDb3VudEludmFsaWRhdGVkOwotICAgIHVpbnQzMl90IG1EZXB0aENtZENvdW50
RGlzYWJsZWQ7Ci0gICAgdWludDMyX3QgbVN0ZW5jaWxDbWRDb3VudEludmFsaWRhdGVkOwotICAg
IHVpbnQzMl90IG1TdGVuY2lsQ21kQ291bnREaXNhYmxlZDsKLSAgICBnbDo6UmVjdGFuZ2xlIG1E
ZXB0aEludmFsaWRhdGVBcmVhOwotICAgIGdsOjpSZWN0YW5nbGUgbVN0ZW5jaWxJbnZhbGlkYXRl
QXJlYTsKIAogICAgIC8vIEtlZXAgdHJhY2sgb2YgdGhlIGRlcHRoL3N0ZW5jaWwgYXR0YWNobWVu
dCBpbmRleAogICAgIFBhY2tlZEF0dGFjaG1lbnRJbmRleCBtRGVwdGhTdGVuY2lsQXR0YWNobWVu
dEluZGV4OwpAQCAtMTI4MywyMSArMTMxNiwyMiBAQCBjbGFzcyBSZW5kZXJQYXNzQ29tbWFuZEJ1
ZmZlckhlbHBlciBmaW5hbCA6IHB1YmxpYyBDb21tYW5kQnVmZmVySGVscGVyQ29tbW9uCiAgICAg
Ly8gVHJhY2tzIHJlc291cmNlcyB1c2VkIGluIHRoZSBjb21tYW5kIGJ1ZmZlci4KICAgICAvLyBJ
bWFnZXMgaGF2ZSB1bmlxdWUgbGF5b3V0cyB1bmxpa2UgYnVmZmVycyB0aGVyZWZvcmUgd2UgY2Fu
J3Qgc3VwcG9ydCBzaW11bHRhbmVvdXMgcmVhZHMgd2l0aAogICAgIC8vIGRpZmZlcmVudCBsYXlv
dXQuCi0gICAgYW5nbGU6OkZhc3RVbm9yZGVyZWRTZXQ8SW1hZ2VTZXJpYWwsIGtGYXN0TWFwU2l6
ZT4gbVJlbmRlclBhc3NVc2VkSW1hZ2VzOwotCi0gICAgSW1hZ2VIZWxwZXIgKm1EZXB0aFN0ZW5j
aWxJbWFnZTsKLSAgICBJbWFnZUhlbHBlciAqbURlcHRoU3RlbmNpbFJlc29sdmVJbWFnZTsKLSAg
ICBnbDo6TGV2ZWxJbmRleCBtRGVwdGhTdGVuY2lsTGV2ZWxJbmRleDsKLSAgICB1aW50MzJfdCBt
RGVwdGhTdGVuY2lsTGF5ZXJJbmRleDsKLSAgICB1aW50MzJfdCBtRGVwdGhTdGVuY2lsTGF5ZXJD
b3VudDsKKyAgICBhbmdsZTo6RmxhdFVub3JkZXJlZFNldDxJbWFnZVNlcmlhbCwga0ZsYXRNYXBT
aXplPiBtUmVuZGVyUGFzc1VzZWRJbWFnZXM7CiAKICAgICAvLyBBcnJheSBzaXplIG9mIG1Db2xv
ckltYWdlcwogICAgIFBhY2tlZEF0dGFjaG1lbnRDb3VudCBtQ29sb3JJbWFnZXNDb3VudDsKLSAg
ICAvLyBBdHRhY2hlZCByZW5kZXIgdGFyZ2V0IGltYWdlcy4gQ29sb3IgYW5kIGRlcHRoIHJlc29s
dmUgaW1hZ2VzIGFyZSBhbHdheXMgY29tZSBsYXN0LgorICAgIC8vIEF0dGFjaGVkIHJlbmRlciB0
YXJnZXQgaW1hZ2VzLiBDb2xvciBhbmQgZGVwdGggcmVzb2x2ZSBpbWFnZXMgYWx3YXlzIGNvbWUg
bGFzdC4KICAgICBQYWNrZWRJbWFnZUF0dGFjaG1lbnRBcnJheSBtQ29sb3JJbWFnZXM7CiAgICAg
UGFja2VkSW1hZ2VBdHRhY2htZW50QXJyYXkgbUNvbG9yUmVzb2x2ZUltYWdlczsKKworICAgIFJl
bmRlclBhc3NBdHRhY2htZW50IG1EZXB0aEF0dGFjaG1lbnQ7CisgICAgUmVuZGVyUGFzc0F0dGFj
aG1lbnQgbURlcHRoUmVzb2x2ZUF0dGFjaG1lbnQ7CisKKyAgICBSZW5kZXJQYXNzQXR0YWNobWVu
dCBtU3RlbmNpbEF0dGFjaG1lbnQ7CisgICAgUmVuZGVyUGFzc0F0dGFjaG1lbnQgbVN0ZW5jaWxS
ZXNvbHZlQXR0YWNobWVudDsKKwogICAgIC8vIFRoaXMgaXMgbGFzdCByZW5kZXJwYXNzIGJlZm9y
ZSBwcmVzZW50IGFuZCB0aGlzIGlzIHRoZSBpbWFnZSB3aWxsIGJlIHByZXNlbnRlZC4gV2UgY2Fu
IHVzZQotICAgIC8vIGZpbmFsIGxheW91dCBvZiB0aGUgcmVuZGVycGFzcyB0byB0cmFuc2l0IGl0
IHRvIHRoZSBwcmVzZW50YWJsZSBsYXlvdXQKKyAgICAvLyBmaW5hbCBsYXlvdXQgb2YgdGhlIHJl
bmRlcnBhc3MgdG8gdHJhbnNpdGlvbiBpdCB0byB0aGUgcHJlc2VudGFibGUgbGF5b3V0CiAgICAg
SW1hZ2VIZWxwZXIgKm1JbWFnZU9wdGltaXplRm9yUHJlc2VudDsKIH07CiAKQEAgLTE0MzQsNyAr
MTQ2OCw3IEBAIGJvb2wgQ2FuQ29weVdpdGhUcmFuc2ZlcihSZW5kZXJlclZrICpyZW5kZXJlciwK
ICAgICAgICAgICAgICAgICAgICAgICAgICBWa0ltYWdlVGlsaW5nIHNyY1RpbGluZ01vZGUsCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgYW5nbGU6OkZvcm1hdElEIGRzdEZvcm1hdElELAogICAg
ICAgICAgICAgICAgICAgICAgICAgIFZrSW1hZ2VUaWxpbmcgZHN0VGlsaW5nTW9kZSk7Ci0KK2Ns
YXNzIEltYWdlVmlld0hlbHBlcjsKIGNsYXNzIEltYWdlSGVscGVyIGZpbmFsIDogcHVibGljIFJl
c291cmNlLCBwdWJsaWMgYW5nbGU6OlN1YmplY3QKIHsKICAgcHVibGljOgpAQCAtMTU4Nyw2ICsx
NjIxLDcgQEAgY2xhc3MgSW1hZ2VIZWxwZXIgZmluYWwgOiBwdWJsaWMgUmVzb3VyY2UsIHB1Ymxp
YyBhbmdsZTo6U3ViamVjdAogICAgIC8vIFNpbWlsYXIgdG8gcmVsZWFzZUltYWdlLCBidXQgYWxz
byBub3RpZnkgYWxsIGNvbnRleHRzIGluIHRoZSBzYW1lIHNoYXJlIGdyb3VwIHRvIHN0b3AKICAg
ICAvLyBhY2Nlc3NpbmcgdG8gaXQuCiAgICAgdm9pZCByZWxlYXNlSW1hZ2VGcm9tU2hhcmVDb250
ZXh0cyhSZW5kZXJlclZrICpyZW5kZXJlciwgQ29udGV4dFZrICpjb250ZXh0VmspOworICAgIHZv
aWQgY29sbGVjdFZpZXdHYXJiYWdlKFJlbmRlcmVyVmsgKnJlbmRlcmVyLCB2azo6SW1hZ2VWaWV3
SGVscGVyICppbWFnZVZpZXcpOwogICAgIHZvaWQgcmVsZWFzZVN0YWdlZFVwZGF0ZXMoUmVuZGVy
ZXJWayAqcmVuZGVyZXIpOwogCiAgICAgYm9vbCB2YWxpZCgpIGNvbnN0IHsgcmV0dXJuIG1JbWFn
ZS52YWxpZCgpOyB9CkBAIC0xNjA2LDYgKzE2NDEsNyBAQCBjbGFzcyBJbWFnZUhlbHBlciBmaW5h
bCA6IHB1YmxpYyBSZXNvdXJjZSwgcHVibGljIGFuZ2xlOjpTdWJqZWN0CiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIEdMaW50IHNhbXBsZXMsCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGJvb2wgaXNSb2J1c3RSZXNvdXJjZUluaXRFbmFibGVkKTsKICAgICB2b2lkIHJlc2V0SW1h
Z2VXZWFrUmVmZXJlbmNlKCk7CisgICAgdm9pZCByZWxlYXNlSW1hZ2VBbmRWaWV3R2FyYmFnZShS
ZW5kZXJlclZrICpyZW5kZXJlcik7CiAKICAgICBjb25zdCBJbWFnZSAmZ2V0SW1hZ2UoKSBjb25z
dCB7IHJldHVybiBtSW1hZ2U7IH0KICAgICBjb25zdCBEZXZpY2VNZW1vcnkgJmdldERldmljZU1l
bW9yeSgpIGNvbnN0IHsgcmV0dXJuIG1EZXZpY2VNZW1vcnk7IH0KQEAgLTIyOTksNiArMjMzNSw4
IEBAIGNsYXNzIEltYWdlSGVscGVyIGZpbmFsIDogcHVibGljIFJlc291cmNlLCBwdWJsaWMgYW5n
bGU6OlN1YmplY3QKICAgICAvLyBhYm92ZSB3aGljaCB0aGUgY29udGVudHMgYXJlIGNvbnNpZGVy
ZWQgdW5jb25kaXRpb25hbGx5IGRlZmluZWQuCiAgICAgZ2w6OlRleExldmVsQXJyYXk8TGV2ZWxD
b250ZW50RGVmaW5lZE1hc2s+IG1Db250ZW50RGVmaW5lZDsKICAgICBnbDo6VGV4TGV2ZWxBcnJh
eTxMZXZlbENvbnRlbnREZWZpbmVkTWFzaz4gbVN0ZW5jaWxDb250ZW50RGVmaW5lZDsKKworICAg
IHN0ZDo6dmVjdG9yPHZrOjpHYXJiYWdlT2JqZWN0PiBtSW1hZ2VBbmRWaWV3R2FyYmFnZTsKIH07
CiAKIEFOR0xFX0lOTElORSBib29sIFJlbmRlclBhc3NDb21tYW5kQnVmZmVySGVscGVyOjp1c2Vz
SW1hZ2UoY29uc3QgSW1hZ2VIZWxwZXIgJmltYWdlKSBjb25zdApAQCAtMjMzNCwxNSArMjM3Miwx
NCBAQCBlbnVtIGNsYXNzIFNyZ2JEZWNvZGVNb2RlCiAgICAgU3JnYkRlY29kZQogfTsKIAotY2xh
c3MgSW1hZ2VWaWV3SGVscGVyIGZpbmFsIDogcHVibGljIFJlc291cmNlCitjbGFzcyBJbWFnZVZp
ZXdIZWxwZXIgZmluYWwgOiBhbmdsZTo6Tm9uQ29weWFibGUKIHsKICAgcHVibGljOgogICAgIElt
YWdlVmlld0hlbHBlcigpOwogICAgIEltYWdlVmlld0hlbHBlcihJbWFnZVZpZXdIZWxwZXIgJiZv
dGhlcik7Ci0gICAgfkltYWdlVmlld0hlbHBlcigpIG92ZXJyaWRlOworICAgIH5JbWFnZVZpZXdI
ZWxwZXIoKTsKIAogICAgIHZvaWQgaW5pdChSZW5kZXJlclZrICpyZW5kZXJlcik7Ci0gICAgdm9p
ZCByZWxlYXNlKFJlbmRlcmVyVmsgKnJlbmRlcmVyKTsKICAgICB2b2lkIGRlc3Ryb3koVmtEZXZp
Y2UgZGV2aWNlKTsKIAogICAgIGNvbnN0IEltYWdlVmlldyAmZ2V0TGluZWFyUmVhZEltYWdlVmll
dygpIGNvbnN0CkBAIC0yNDQ4LDcgKzI0ODUsNyBAQCBjbGFzcyBJbWFnZVZpZXdIZWxwZXIgZmlu
YWwgOiBwdWJsaWMgUmVzb3VyY2UKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29u
c3QgZ2w6OlNhbXBsZXJTdGF0ZSAmc2FtcGxlclN0YXRlKTsKIAogICAgIC8vIENyZWF0ZXMgYSBz
dG9yYWdlIHZpZXcgd2l0aCBhbGwgbGF5ZXJzIG9mIHRoZSBsZXZlbC4KLSAgICBhbmdsZTo6UmVz
dWx0IGdldExldmVsU3RvcmFnZUltYWdlVmlldyhDb250ZXh0VmsgKmNvbnRleHRWaywKKyAgICBh
bmdsZTo6UmVzdWx0IGdldExldmVsU3RvcmFnZUltYWdlVmlldyhDb250ZXh0ICpjb250ZXh0LAog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdsOjpUZXh0dXJlVHlw
ZSB2aWV3VHlwZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBj
b25zdCBJbWFnZUhlbHBlciAmaW1hZ2UsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgTGV2ZWxJbmRleCBsZXZlbFZrLApAQCAtMjQ1OCw3ICsyNDk1LDcgQEAgY2xh
c3MgSW1hZ2VWaWV3SGVscGVyIGZpbmFsIDogcHVibGljIFJlc291cmNlCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgSW1hZ2VWaWV3ICoqaW1hZ2VWaWV3
T3V0KTsKIAogICAgIC8vIENyZWF0ZXMgYSBzdG9yYWdlIHZpZXcgd2l0aCBhIHNpbmdsZSBsYXll
ciBvZiB0aGUgbGV2ZWwuCi0gICAgYW5nbGU6OlJlc3VsdCBnZXRMZXZlbExheWVyU3RvcmFnZUlt
YWdlVmlldyhDb250ZXh0VmsgKmNvbnRleHRWaywKKyAgICBhbmdsZTo6UmVzdWx0IGdldExldmVs
TGF5ZXJTdG9yYWdlSW1hZ2VWaWV3KENvbnRleHQgKmNvbnRleHQsCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBJbWFnZUhlbHBlciAmaW1hZ2Us
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMZXZlbElu
ZGV4IGxldmVsVmssCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB1aW50MzJfdCBsYXllciwKQEAgLTI0NjcsNyArMjUwNCw3IEBAIGNsYXNzIEltYWdlVmll
d0hlbHBlciBmaW5hbCA6IHB1YmxpYyBSZXNvdXJjZQogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgSW1hZ2VWaWV3ICoqaW1hZ2VWaWV3T3V0KTsK
IAogICAgIC8vIENyZWF0ZXMgYSBkcmF3IHZpZXcgd2l0aCBhIHJhbmdlIG9mIGxheWVycyBvZiB0
aGUgbGV2ZWwuCi0gICAgYW5nbGU6OlJlc3VsdCBnZXRMZXZlbERyYXdJbWFnZVZpZXcoQ29udGV4
dFZrICpjb250ZXh0VmssCisgICAgYW5nbGU6OlJlc3VsdCBnZXRMZXZlbERyYXdJbWFnZVZpZXco
Q29udGV4dCAqY29udGV4dCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBjb25zdCBJbWFnZUhlbHBlciAmaW1hZ2UsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgTGV2ZWxJbmRleCBsZXZlbFZrLAogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHVpbnQzMl90IGxheWVyLApAQCAtMjQ3Niw3ICsyNTEzLDcgQEAgY2xh
c3MgSW1hZ2VWaWV3SGVscGVyIGZpbmFsIDogcHVibGljIFJlc291cmNlCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgSW1hZ2VWaWV3ICoqaW1hZ2VWaWV3T3V0
KTsKIAogICAgIC8vIENyZWF0ZXMgYSBkcmF3IHZpZXcgd2l0aCBhIHNpbmdsZSBsYXllciBvZiB0
aGUgbGV2ZWwuCi0gICAgYW5nbGU6OlJlc3VsdCBnZXRMZXZlbExheWVyRHJhd0ltYWdlVmlldyhD
b250ZXh0VmsgKmNvbnRleHRWaywKKyAgICBhbmdsZTo6UmVzdWx0IGdldExldmVsTGF5ZXJEcmF3
SW1hZ2VWaWV3KENvbnRleHQgKmNvbnRleHQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBjb25zdCBJbWFnZUhlbHBlciAmaW1hZ2UsCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMZXZlbEluZGV4IGxldmVsVmssCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBsYXllciwK
QEAgLTI0OTIsNiArMjUyOSwxMCBAQCBjbGFzcyBJbWFnZVZpZXdIZWxwZXIgZmluYWwgOiBwdWJs
aWMgUmVzb3VyY2UKICAgICAgICAgU3JnYkRlY29kZU1vZGUgc3JnYkRlY29kZU1vZGUsCiAgICAg
ICAgIGdsOjpTcmdiT3ZlcnJpZGUgc3JnYk92ZXJyaWRlTW9kZSkgY29uc3Q7CiAKKyAgICBib29s
IGlzSW1hZ2VWaWV3R2FyYmFnZUVtcHR5KCkgY29uc3Q7CisKKyAgICB2b2lkIHJlbGVhc2UoUmVu
ZGVyZXJWayAqcmVuZGVyZXIsIHN0ZDo6dmVjdG9yPHZrOjpHYXJiYWdlT2JqZWN0PiAmZ2FyYmFn
ZSk7CisKICAgcHJpdmF0ZToKICAgICBJbWFnZVZpZXcgJmdldFJlYWRJbWFnZVZpZXcoKQogICAg
IHsKQEAgLTI2MTEsNyArMjY1Miw3IEBAIGNsYXNzIEJ1ZmZlclZpZXdIZWxwZXIgZmluYWwgOiBw
dWJsaWMgUmVzb3VyY2UKICAgICB2b2lkIHJlbGVhc2UoQ29udGV4dFZrICpjb250ZXh0VmspOwog
ICAgIHZvaWQgZGVzdHJveShWa0RldmljZSBkZXZpY2UpOwogCi0gICAgYW5nbGU6OlJlc3VsdCBn
ZXRWaWV3KENvbnRleHRWayAqY29udGV4dFZrLAorICAgIGFuZ2xlOjpSZXN1bHQgZ2V0VmlldyhD
b250ZXh0ICpjb250ZXh0LAogICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBCdWZmZXJI
ZWxwZXIgJmJ1ZmZlciwKICAgICAgICAgICAgICAgICAgICAgICAgICAgVmtEZXZpY2VTaXplIGJ1
ZmZlck9mZnNldCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgRm9ybWF0ICZmb3Jt
YXQsCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVu
ZGVyZXIvdnVsa2FuL3ZrX3V0aWxzLmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9s
aWJBTkdMRS9yZW5kZXJlci92dWxrYW4vdmtfdXRpbHMuY3BwCmluZGV4IDVkMDViODQ1YWFhMDQ1
NGE0ZmJlMTA2YmUzYTMzN2YxZGQ3MWI3Y2QuLmI4MmUxY2ZiOTI5ZGUzZTA2NjYwZThlYTgwMTc3
YWMzMTdmODJlMWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJB
TkdMRS9yZW5kZXJlci92dWxrYW4vdmtfdXRpbHMuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vdmtfdXRpbHMuY3BwCkBAIC0zNjMs
NyArMzYzLDYgQEAgbmFtZXNwYWNlIHZrCiB7CiBjb25zdCBjaGFyICpnTG9hZGVyTGF5ZXJzUGF0
aEVudiAgID0gIlZLX0xBWUVSX1BBVEgiOwogY29uc3QgY2hhciAqZ0xvYWRlcklDREZpbGVuYW1l
c0VudiA9ICJWS19JQ0RfRklMRU5BTUVTIjsKLWNvbnN0IGNoYXIgKmdBTkdMRVByZWZlcnJlZERl
dmljZSAgPSAiQU5HTEVfUFJFRkVSUkVEX0RFVklDRSI7CiAKIFZrSW1hZ2VBc3BlY3RGbGFncyBH
ZXREZXB0aFN0ZW5jaWxBc3BlY3RGbGFncyhjb25zdCBhbmdsZTo6Rm9ybWF0ICZmb3JtYXQpCiB7
CkBAIC0zODEsNyArMzgwLDcgQEAgVmtJbWFnZUFzcGVjdEZsYWdzIEdldEZvcm1hdEFzcGVjdEZs
YWdzKGNvbnN0IGFuZ2xlOjpGb3JtYXQgJmZvcm1hdCkKIH0KIAogLy8gQ29udGV4dCBpbXBsZW1l
bnRhdGlvbi4KLUNvbnRleHQ6OkNvbnRleHQoUmVuZGVyZXJWayAqcmVuZGVyZXIpIDogbVJlbmRl
cmVyKHJlbmRlcmVyKSB7fQorQ29udGV4dDo6Q29udGV4dChSZW5kZXJlclZrICpyZW5kZXJlcikg
OiBtUmVuZGVyZXIocmVuZGVyZXIpLCBtUGVyZkNvdW50ZXJze30ge30KIAogQ29udGV4dDo6fkNv
bnRleHQoKSB7fQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGli
QU5HTEUvcmVuZGVyZXIvdnVsa2FuL3ZrX3V0aWxzLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL3ZrX3V0aWxzLmgKaW5kZXggYzRiZTY4ZTkx
ZDhjYTZhZjhlZTZiYjEwYmQ4ZjliMWJjNmUxNDNmZS4uNDA3ZThlMGFlNDg5MDY4ZjdhMGFmYTFh
NmI5OTgwMmFmOTJjMmRlMSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3Jj
L2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi92a191dGlscy5oCisrKyBiL1NvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vdmtfdXRpbHMuaApAQCAtMTk2
LDggKzE5NiwxMiBAQCBjbGFzcyBDb250ZXh0IDogYW5nbGU6Ok5vbkNvcHlhYmxlCiAgICAgVmtE
ZXZpY2UgZ2V0RGV2aWNlKCkgY29uc3Q7CiAgICAgUmVuZGVyZXJWayAqZ2V0UmVuZGVyZXIoKSBj
b25zdCB7IHJldHVybiBtUmVuZGVyZXI7IH0KIAorICAgIGNvbnN0IGFuZ2xlOjpWdWxrYW5QZXJm
Q291bnRlcnMgJmdldFBlcmZDb3VudGVycygpIGNvbnN0IHsgcmV0dXJuIG1QZXJmQ291bnRlcnM7
IH0KKyAgICBhbmdsZTo6VnVsa2FuUGVyZkNvdW50ZXJzICZnZXRQZXJmQ291bnRlcnMoKSB7IHJl
dHVybiBtUGVyZkNvdW50ZXJzOyB9CisKICAgcHJvdGVjdGVkOgogICAgIFJlbmRlcmVyVmsgKmNv
bnN0IG1SZW5kZXJlcjsKKyAgICBhbmdsZTo6VnVsa2FuUGVyZkNvdW50ZXJzIG1QZXJmQ291bnRl
cnM7CiB9OwogCiBjbGFzcyBSZW5kZXJQYXNzRGVzYzsKQEAgLTc3Myw2ICs3NzcsNyBAQCBjbGFz
cyBSZWN5Y2xlciBmaW5hbCA6IGFuZ2xlOjpOb25Db3B5YWJsZQogICAgICAgICB7CiAgICAgICAg
ICAgICBvYmplY3QuZGVzdHJveShkZXZpY2UpOwogICAgICAgICB9CisgICAgICAgIG1PYmplY3RG
cmVlTGlzdC5jbGVhcigpOwogICAgIH0KIAogICAgIGJvb2wgZW1wdHkoKSBjb25zdCB7IHJldHVy
biBtT2JqZWN0RnJlZUxpc3QuZW1wdHkoKTsgfQpAQCAtMTI0NSw0MSArMTI1MCw2IEBAIHN0cnVj
dCBSZW5kZXJQYXNzUGVyZkNvdW50ZXJzCiAgICAgdWludDhfdCByZWFkT25seURlcHRoU3RlbmNp
bDsKIH07CiAKLXN0cnVjdCBQZXJmQ291bnRlcnMKLXsKLSAgICB1aW50MzJfdCBwcmltYXJ5QnVm
ZmVyczsKLSAgICB1aW50MzJfdCByZW5kZXJQYXNzZXM7Ci0gICAgdWludDMyX3Qgd3JpdGVEZXNj
cmlwdG9yU2V0czsKLSAgICB1aW50MzJfdCBmbHVzaGVkT3V0c2lkZVJlbmRlclBhc3NDb21tYW5k
QnVmZmVyczsKLSAgICB1aW50MzJfdCByZXNvbHZlSW1hZ2VDb21tYW5kczsKLSAgICB1aW50MzJf
dCBkZXB0aENsZWFyczsKLSAgICB1aW50MzJfdCBkZXB0aExvYWRzOwotICAgIHVpbnQzMl90IGRl
cHRoU3RvcmVzOwotICAgIHVpbnQzMl90IHN0ZW5jaWxDbGVhcnM7Ci0gICAgdWludDMyX3Qgc3Rl
bmNpbExvYWRzOwotICAgIHVpbnQzMl90IHN0ZW5jaWxTdG9yZXM7Ci0gICAgdWludDMyX3QgY29s
b3JBdHRhY2htZW50VW5yZXNvbHZlczsKLSAgICB1aW50MzJfdCBkZXB0aEF0dGFjaG1lbnRVbnJl
c29sdmVzOwotICAgIHVpbnQzMl90IHN0ZW5jaWxBdHRhY2htZW50VW5yZXNvbHZlczsKLSAgICB1
aW50MzJfdCBjb2xvckF0dGFjaG1lbnRSZXNvbHZlczsKLSAgICB1aW50MzJfdCBkZXB0aEF0dGFj
aG1lbnRSZXNvbHZlczsKLSAgICB1aW50MzJfdCBzdGVuY2lsQXR0YWNobWVudFJlc29sdmVzOwot
ICAgIHVpbnQzMl90IHJlYWRPbmx5RGVwdGhTdGVuY2lsUmVuZGVyUGFzc2VzOwotICAgIHVpbnQz
Ml90IGRlc2NyaXB0b3JTZXRBbGxvY2F0aW9uczsKLSAgICB1aW50MzJfdCBkZXNjcmlwdG9yU2V0
Q2FjaGVUb3RhbFNpemU7Ci0gICAgdWludDMyX3QgdW5pZm9ybXNBbmRYZmJEZXNjcmlwdG9yU2V0
Q2FjaGVIaXRzOwotICAgIHVpbnQzMl90IHVuaWZvcm1zQW5kWGZiRGVzY3JpcHRvclNldENhY2hl
TWlzc2VzOwotICAgIHVpbnQzMl90IHVuaWZvcm1zQW5kWGZiRGVzY3JpcHRvclNldENhY2hlVG90
YWxTaXplOwotICAgIHVpbnQzMl90IHRleHR1cmVEZXNjcmlwdG9yU2V0Q2FjaGVIaXRzOwotICAg
IHVpbnQzMl90IHRleHR1cmVEZXNjcmlwdG9yU2V0Q2FjaGVNaXNzZXM7Ci0gICAgdWludDMyX3Qg
dGV4dHVyZURlc2NyaXB0b3JTZXRDYWNoZVRvdGFsU2l6ZTsKLSAgICB1aW50MzJfdCBzaGFkZXJC
dWZmZXJzRGVzY3JpcHRvclNldENhY2hlSGl0czsKLSAgICB1aW50MzJfdCBzaGFkZXJCdWZmZXJz
RGVzY3JpcHRvclNldENhY2hlTWlzc2VzOwotICAgIHVpbnQzMl90IHNoYWRlckJ1ZmZlcnNEZXNj
cmlwdG9yU2V0Q2FjaGVUb3RhbFNpemU7Ci0gICAgdWludDMyX3QgYnVmZmVyc0dob3N0ZWQ7Ci0g
ICAgdWludDMyX3QgdmVydGV4QXJyYXlTeW5jU3RhdGVDYWxsczsKLX07Ci0KIC8vIEEgVnVsa2Fu
IGltYWdlIGxldmVsIGluZGV4LgogdXNpbmcgTGV2ZWxJbmRleCA9IGdsOjpMZXZlbEluZGV4V3Jh
cHBlcjx1aW50MzJfdD47CiAKQEAgLTE0ODgsOSArMTQ1OCw2IEBAIGVudW0gY2xhc3MgUmVuZGVy
UGFzc0Nsb3N1cmVSZWFzb24KICAgICBUZW1wb3JhcnlGb3JJbWFnZUNvcHksCiAgICAgVGVtcG9y
YXJ5Rm9yT3ZlcmxheURyYXcsCiAKLSAgICAvLyBNaXNjCi0gICAgT3ZlcmxheUZvbnRDcmVhdGlv
biwKLQogICAgIEludmFsaWRFbnVtLAogICAgIEVudW1Db3VudCA9IEludmFsaWRFbnVtLAogfTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJl
ci92dWxrYW4vdmtfd3JhcHBlci5oIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFO
R0xFL3JlbmRlcmVyL3Z1bGthbi92a193cmFwcGVyLmgKaW5kZXggZjYxZmUxNmI0NTcyNTEyNjUw
NGEyOWRiODFiZTA4NDc4MWI4NTI1MS4uNGQ4ZDg4NzhhOGIyNDYzYjJjZWVlMDk2MDhiM2I2Y2Mw
MTA3MTk2NiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xF
L3JlbmRlcmVyL3Z1bGthbi92a193cmFwcGVyLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi92a193cmFwcGVyLmgKQEAgLTQxMiw3ICs0
MTIsNiBAQCBjbGFzcyBTZW1hcGhvcmUgZmluYWwgOiBwdWJsaWMgV3JhcHBlZE9iamVjdDxTZW1h
cGhvcmUsIFZrU2VtYXBob3JlPgogICAgIHZvaWQgZGVzdHJveShWa0RldmljZSBkZXZpY2UpOwog
CiAgICAgVmtSZXN1bHQgaW5pdChWa0RldmljZSBkZXZpY2UpOwotICAgIFZrUmVzdWx0IGluaXQo
VmtEZXZpY2UgZGV2aWNlLCBjb25zdCBWa1NlbWFwaG9yZUNyZWF0ZUluZm8gJmNyZWF0ZUluZm8p
OwogICAgIFZrUmVzdWx0IGltcG9ydEZkKFZrRGV2aWNlIGRldmljZSwgY29uc3QgVmtJbXBvcnRT
ZW1hcGhvcmVGZEluZm9LSFIgJmltcG9ydEZkSW5mbykgY29uc3Q7CiB9OwogCkBAIC0xMjczLDEy
ICsxMjcyLDYgQEAgQU5HTEVfSU5MSU5FIFZrUmVzdWx0IFNlbWFwaG9yZTo6aW5pdChWa0Rldmlj
ZSBkZXZpY2UpCiAgICAgcmV0dXJuIHZrQ3JlYXRlU2VtYXBob3JlKGRldmljZSwgJnNlbWFwaG9y
ZUluZm8sIG51bGxwdHIsICZtSGFuZGxlKTsKIH0KIAotQU5HTEVfSU5MSU5FIFZrUmVzdWx0IFNl
bWFwaG9yZTo6aW5pdChWa0RldmljZSBkZXZpY2UsIGNvbnN0IFZrU2VtYXBob3JlQ3JlYXRlSW5m
byAmY3JlYXRlSW5mbykKLXsKLSAgICBBU1NFUlQodmFsaWQoKSk7Ci0gICAgcmV0dXJuIHZrQ3Jl
YXRlU2VtYXBob3JlKGRldmljZSwgJmNyZWF0ZUluZm8sIG51bGxwdHIsICZtSGFuZGxlKTsKLX0K
LQogQU5HTEVfSU5MSU5FIFZrUmVzdWx0IFNlbWFwaG9yZTo6aW1wb3J0RmQoVmtEZXZpY2UgZGV2
aWNlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgVmtJ
bXBvcnRTZW1hcGhvcmVGZEluZm9LSFIgJmltcG9ydEZkSW5mbykgY29uc3QKIHsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS92YWxpZGF0aW9uRUdMLmNw
cCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS92YWxpZGF0aW9uRUdMLmNw
cAppbmRleCA3ZTRiM2FkYjhkYjdlYTMyYzk4MjI4MTU1ZTBhNzAyNzk2ZjBkYTRjLi40NzI0MDVk
NWIyYjQxOGZhZGRmZmRlMWExODllMWQyOTRmMDE1NWUzIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvdmFsaWRhdGlvbkVHTC5jcHAKKysrIGIvU291cmNl
L1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3ZhbGlkYXRpb25FR0wuY3BwCkBAIC0yMCw2
ICsyMCw3IEBACiAjaW5jbHVkZSAibGliQU5HTEUvVGV4dHVyZS5oIgogI2luY2x1ZGUgImxpYkFO
R0xFL1RocmVhZC5oIgogI2luY2x1ZGUgImxpYkFOR0xFL2Zvcm1hdHV0aWxzLmgiCisjaW5jbHVk
ZSAibGliQU5HTEUvcmVuZGVyZXIvRGlzcGxheUltcGwuaCIKIAogI2luY2x1ZGUgPEVHTC9lZ2xl
eHQuaD4KIApAQCAtMjM4NCw2ICsyMzg1LDE2IEBAIGJvb2wgVmFsaWRhdGVDcmVhdGVDb250ZXh0
KGNvbnN0IFZhbGlkYXRpb25Db250ZXh0ICp2YWwsCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBjbGllbnRNYWpvclZlcnNpb24sIGNsaWVudE1pbm9yVmVyc2lvbiwgbWF4Lm1ham9yLCBt
YXgubWlub3IpOwogICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgICAgIH0K
KyAgICAgICAgICAgIGlmICgoYXR0cmlidXRlcy5nZXQoRUdMX0NPTlRFWFRfV0VCR0xfQ09NUEFU
SUJJTElUWV9BTkdMRSwgRUdMX0ZBTFNFKSA9PSBFR0xfVFJVRSkgJiYKKyAgICAgICAgICAgICAg
ICAoY2xpZW50TWlub3JWZXJzaW9uID4gMSkpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAg
ICAgdmFsLT5zZXRFcnJvcihFR0xfQkFEX0FUVFJJQlVURSwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICJSZXF1ZXN0ZWQgR0xFUyB2ZXJzaW9uICglIiBQUkl4UFRSICIuJSIgUFJJeFBU
UgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIikgaXMgZ3JlYXRlciB0aGFuICIKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtYXggc3VwcG9ydGVkIDMuMSBmb3IgV2ViR0wu
IiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsaWVudE1ham9yVmVyc2lvbiwgY2xp
ZW50TWlub3JWZXJzaW9uKTsKKyAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgICAg
ICAgICB9CiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAg
IHZhbC0+c2V0RXJyb3IoRUdMX0JBRF9BVFRSSUJVVEUpOwpAQCAtNTA1OCwxMCArNTA2OSwxMiBA
QCBib29sIFZhbGlkYXRlQ3JlYXRlUGxhdGZvcm1XaW5kb3dTdXJmYWNlRVhUKGNvbnN0IFZhbGlk
YXRpb25Db250ZXh0ICp2YWwsCiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICB9CiAKLSAgICBB
TkdMRV9WQUxJREFUSU9OX1RSWShWYWxpZGF0ZUNvbmZpZyh2YWwsIGRpc3BsYXksIGNvbmZpZ3Vy
YXRpb24pKTsKKyAgICBjb25zdCB2b2lkICphY3R1YWxOYXRpdmVXaW5kb3cgPSBkaXNwbGF5LT5n
ZXRJbXBsZW1lbnRhdGlvbigpLT5pc1gxMSgpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgID8gKnJlaW50ZXJwcmV0X2Nhc3Q8Y29uc3Qgdm9pZCAqY29uc3QgKj4obmF0
aXZlV2luZG93KQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IG5h
dGl2ZVdpbmRvdzsKIAotICAgIHZhbC0+c2V0RXJyb3IoRUdMX0JBRF9ESVNQTEFZLCAiVmFsaWRh
dGVDcmVhdGVQbGF0Zm9ybVdpbmRvd1N1cmZhY2VFWFQgdW5pbXBsZW1lbnRlZC4iKTsKLSAgICBy
ZXR1cm4gZmFsc2U7CisgICAgcmV0dXJuIFZhbGlkYXRlQ3JlYXRlUGxhdGZvcm1XaW5kb3dTdXJm
YWNlKHZhbCwgZGlzcGxheSwgY29uZmlndXJhdGlvbiwgYWN0dWFsTmF0aXZlV2luZG93LAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyaWJ1dGVzKTsK
IH0KIAogYm9vbCBWYWxpZGF0ZUNyZWF0ZVBsYXRmb3JtUGl4bWFwU3VyZmFjZUVYVChjb25zdCBW
YWxpZGF0aW9uQ29udGV4dCAqdmFsLApAQCAtNjIyMSw2ICs2MjM0LDE1IEBAIGJvb2wgVmFsaWRh
dGVIYW5kbGVHUFVTd2l0Y2hBTkdMRShjb25zdCBWYWxpZGF0aW9uQ29udGV4dCAqdmFsLCBjb25z
dCBEaXNwbGF5ICpkCiAgICAgcmV0dXJuIHRydWU7CiB9CiAKK2Jvb2wgVmFsaWRhdGVGb3JjZUdQ
VVN3aXRjaEFOR0xFKGNvbnN0IFZhbGlkYXRpb25Db250ZXh0ICp2YWwsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBjb25zdCBEaXNwbGF5ICpkaXNwbGF5LAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgRUdMaW50IGdwdUlESGlnaCwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIEVHTGludCBncHVJRExvdykKK3sKKyAgICBBTkdMRV9WQUxJREFUSU9O
X1RSWShWYWxpZGF0ZURpc3BsYXkodmFsLCBkaXNwbGF5KSk7CisgICAgcmV0dXJuIHRydWU7Cit9
CisKIGJvb2wgVmFsaWRhdGVHZXRDdXJyZW50RGlzcGxheShjb25zdCBWYWxpZGF0aW9uQ29udGV4
dCAqdmFsKQogewogICAgIHJldHVybiB0cnVlOwpAQCAtNjUxMiw3ICs2NTM0LDEwOSBAQCBib29s
IFZhbGlkYXRlU2V0RGFtYWdlUmVnaW9uS0hSKGNvbnN0IFZhbGlkYXRpb25Db250ZXh0ICp2YWws
CiAgICAgQU5HTEVfVkFMSURBVElPTl9UUlkoVmFsaWRhdGVEaXNwbGF5KHZhbCwgZGlzcGxheSkp
OwogICAgIEFOR0xFX1ZBTElEQVRJT05fVFJZKFZhbGlkYXRlU3VyZmFjZSh2YWwsIGRpc3BsYXks
IHN1cmZhY2UpKTsKIAotICAgIHJldHVybiBmYWxzZTsKKyAgICBpZiAoIShzdXJmYWNlLT5nZXRU
eXBlKCkgJiBFR0xfV0lORE9XX0JJVCkpCisgICAgeworICAgICAgICB2YWwtPnNldEVycm9yKEVH
TF9CQURfTUFUQ0gsICJzdXJmYWNlIGlzIG5vdCBhIHBvc3RhYmxlIHN1cmZhY2UiKTsKKyAgICAg
ICAgcmV0dXJuIGZhbHNlOworICAgIH0KKworICAgIGlmIChzdXJmYWNlICE9IHZhbC0+ZWdsVGhy
ZWFkLT5nZXRDdXJyZW50RHJhd1N1cmZhY2UoKSkKKyAgICB7CisgICAgICAgIHZhbC0+c2V0RXJy
b3IoRUdMX0JBRF9NQVRDSCwKKyAgICAgICAgICAgICAgICAgICAgICAic3VyZmFjZSBpcyBub3Qg
dGhlIGN1cnJlbnQgZHJhdyBzdXJmYWNlIGZvciB0aGUgY2FsbGluZyB0aHJlYWQiKTsKKyAgICAg
ICAgcmV0dXJuIGZhbHNlOworICAgIH0KKworICAgIGlmIChzdXJmYWNlLT5nZXRTd2FwQmVoYXZp
b3IoKSAhPSBFR0xfQlVGRkVSX0RFU1RST1lFRCkKKyAgICB7CisgICAgICAgIHZhbC0+c2V0RXJy
b3IoRUdMX0JBRF9NQVRDSCwgInN1cmZhY2UncyBzd2FwIGJlaGF2aW9yIGlzIG5vdCBFR0xfQlVG
RkVSX0RFU1RST1lFRCIpOworICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorCisgICAgaWYg
KHN1cmZhY2UtPmlzRGFtYWdlUmVnaW9uU2V0KCkpCisgICAgeworICAgICAgICB2YWwtPnNldEVy
cm9yKAorICAgICAgICAgICAgRUdMX0JBRF9BQ0NFU1MsCisgICAgICAgICAgICAiZGFtYWdlIHJl
Z2lvbiBoYXMgYWxyZWFkeSBiZWVuIHNldCBvbiBzdXJmYWNlIHNpbmNlIHRoZSBtb3N0IHJlY2Vu
dCBmcmFtZSBib3VuZGFyeSIpOworICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorCisgICAg
aWYgKCFzdXJmYWNlLT5idWZmZXJBZ2VRdWVyaWVkU2luY2VMYXN0U3dhcCgpKQorICAgIHsKKyAg
ICAgICAgdmFsLT5zZXRFcnJvcihFR0xfQkFEX0FDQ0VTUywKKyAgICAgICAgICAgICAgICAgICAg
ICAiRUdMX0JVRkZFUl9BR0VfS0hSIGF0dHJpYnV0ZSBvZiBzdXJmYWNlIGhhcyBub3QgYmVlbiBx
dWVyaWVkIHNpbmNlIHRoZSBtb3N0ICIKKyAgICAgICAgICAgICAgICAgICAgICAicmVjZW50IGZy
YW1lIGJvdW5kYXJ5Iik7CisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisKKyAgICByZXR1
cm4gdHJ1ZTsKK30KKworYm9vbCBWYWxpZGF0ZVF1ZXJ5RG1hQnVmRm9ybWF0c0VYVChWYWxpZGF0
aW9uQ29udGV4dCBjb25zdCAqdmFsLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBEaXNwbGF5IGNvbnN0ICpkcHksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IEVHTGludCBtYXhfZm9ybWF0cywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Y29uc3QgRUdMaW50ICpmb3JtYXRzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBjb25zdCBFR0xpbnQgKm51bV9mb3JtYXRzKQoreworICAgIEFOR0xFX1ZBTElEQVRJT05fVFJZ
KFZhbGlkYXRlRGlzcGxheSh2YWwsIGRweSkpOworCisgICAgaWYgKCFkcHktPmdldEV4dGVuc2lv
bnMoKS5pbWFnZURtYUJ1ZkltcG9ydE1vZGlmaWVyc0VYVCkKKyAgICB7CisgICAgICAgIHZhbC0+
c2V0RXJyb3IoRUdMX0JBRF9BQ0NFU1MsICJFR0xfRVhUX2RtYV9idWZfaW1wb3J0X21vZGZpZXIg
bm90IHN1cHBvcnRlZCIpOworICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorCisgICAgaWYg
KG1heF9mb3JtYXRzIDwgMCkKKyAgICB7CisgICAgICAgIHZhbC0+c2V0RXJyb3IoRUdMX0JBRF9Q
QVJBTUVURVIsICJtYXhfZm9ybWF0cyBzaG91bGQgbm90IGJlIG5lZ2F0aXZlIik7CisgICAgICAg
IHJldHVybiBmYWxzZTsKKyAgICB9CisKKyAgICBpZiAobWF4X2Zvcm1hdHMgPiAwICYmIGZvcm1h
dHMgPT0gbnVsbHB0cikKKyAgICB7CisgICAgICAgIHZhbC0+c2V0RXJyb3IoRUdMX0JBRF9QQVJB
TUVURVIsICJpZiBtYXhfZm9ybWF0cyBpcyBwb3NpdGl2ZSwgZm9ybWF0cyBzaG91bGQgbm90IGJl
IE5VTEwiKTsKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KKworICAgIHJldHVybiB0cnVl
OworfQorCitib29sIFZhbGlkYXRlUXVlcnlEbWFCdWZNb2RpZmllcnNFWFQoVmFsaWRhdGlvbkNv
bnRleHQgY29uc3QgKnZhbCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBE
aXNwbGF5IGNvbnN0ICpkcHksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
RUdMaW50IGZvcm1hdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFR0xp
bnQgbWF4X21vZGlmaWVycywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBj
b25zdCBFR0x1aW50NjRLSFIgKm1vZGlmaWVycywKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBjb25zdCBFR0xCb29sZWFuICpleHRlcm5hbF9vbmx5LAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IEVHTGludCAqbnVtX21vZGlmaWVycykKK3sK
KyAgICBBTkdMRV9WQUxJREFUSU9OX1RSWShWYWxpZGF0ZURpc3BsYXkodmFsLCBkcHkpKTsKKwor
ICAgIGlmICghZHB5LT5nZXRFeHRlbnNpb25zKCkuaW1hZ2VEbWFCdWZJbXBvcnRNb2RpZmllcnNF
WFQpCisgICAgeworICAgICAgICB2YWwtPnNldEVycm9yKEVHTF9CQURfQUNDRVNTLCAiRUdMX0VY
VF9kbWFfYnVmX2ltcG9ydF9tb2RmaWVyIG5vdCBzdXBwb3J0ZWQiKTsKKyAgICAgICAgcmV0dXJu
IGZhbHNlOworICAgIH0KKworICAgIGlmIChtYXhfbW9kaWZpZXJzIDwgMCkKKyAgICB7CisgICAg
ICAgIHZhbC0+c2V0RXJyb3IoRUdMX0JBRF9QQVJBTUVURVIsICJtYXhfbW9kaWZpZXJzIHNob3Vs
ZCBub3QgYmUgbmVnYXRpdmUiKTsKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KKworICAg
IGlmIChtYXhfbW9kaWZpZXJzID4gMCAmJiBtb2RpZmllcnMgPT0gbnVsbHB0cikKKyAgICB7Cisg
ICAgICAgIHZhbC0+c2V0RXJyb3IoRUdMX0JBRF9QQVJBTUVURVIsCisgICAgICAgICAgICAgICAg
ICAgICAgImlmIG1heF9tb2RpZmllcnMgaXMgcG9zaXRpdmUsIG1vZGlmaWVycyBzaG91bGQgbm90
IGJlIE5VTEwiKTsKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KKworICAgIGlmICghZHB5
LT5zdXBwb3J0c0RtYUJ1ZkZvcm1hdChmb3JtYXQpKQorICAgIHsKKyAgICAgICAgdmFsLT5zZXRF
cnJvcihFR0xfQkFEX1BBUkFNRVRFUiwKKyAgICAgICAgICAgICAgICAgICAgICAiZm9ybWF0IHNo
b3VsZCBiZSBvbmUgb2YgdGhlIGZvcm1hdHMgYWR2ZXJ0aXNlZCBieSBRdWVyeURtYUJ1ZkZvcm1h
dHNFWFQiKTsKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KKyAgICByZXR1cm4gdHJ1ZTsK
IH0KIAogfSAgLy8gbmFtZXNwYWNlIGVnbApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc3JjL2xpYkFOR0xFL3ZhbGlkYXRpb25FR0xfYXV0b2dlbi5oIGIvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3ZhbGlkYXRpb25FR0xfYXV0b2dlbi5oCmluZGV4IDQw
ZWRkNzdhYTQxZTZiYmRmODNiOTI3N2NiYWM5NTNhYWM2YWQxZjcuLjdlYTYyYmM1MzI2Yzg2NWUz
NzdmZTE1OGYxMTJjYjE4ZDc0NWQzMzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FO
R0xFL3NyYy9saWJBTkdMRS92YWxpZGF0aW9uRUdMX2F1dG9nZW4uaAorKysgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvdmFsaWRhdGlvbkVHTF9hdXRvZ2VuLmgKQEAgLTI1
MCw2ICsyNTAsMTAgQEAgYm9vbCBWYWxpZGF0ZVJlYWNxdWlyZUhpZ2hQb3dlckdQVUFOR0xFKGNv
bnN0IFZhbGlkYXRpb25Db250ZXh0ICp2YWwsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgY29uc3QgZWdsOjpEaXNwbGF5ICpkcHlQYWNrZWQsCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZ2w6OkNvbnRleHQgKmN0eFBhY2tlZCk7
CiBib29sIFZhbGlkYXRlSGFuZGxlR1BVU3dpdGNoQU5HTEUoY29uc3QgVmFsaWRhdGlvbkNvbnRl
eHQgKnZhbCwgY29uc3QgZWdsOjpEaXNwbGF5ICpkcHlQYWNrZWQpOworYm9vbCBWYWxpZGF0ZUZv
cmNlR1BVU3dpdGNoQU5HTEUoY29uc3QgVmFsaWRhdGlvbkNvbnRleHQgKnZhbCwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGVnbDo6RGlzcGxheSAqZHB5UGFja2VkLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRUdMaW50IGdwdUlESGlnaCwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVHTGludCBncHVJRExvdyk7CiAKIC8vIEVHTF9B
TkdMRV9wcmVwYXJlX3N3YXBfYnVmZmVycwogYm9vbCBWYWxpZGF0ZVByZXBhcmVTd2FwQnVmZmVy
c0FOR0xFKGNvbnN0IFZhbGlkYXRpb25Db250ZXh0ICp2YWwsCkBAIC0zMzcsNiArMzQxLDIwIEBA
IGJvb2wgVmFsaWRhdGVRdWVyeURpc3BsYXlBdHRyaWJFWFQoY29uc3QgVmFsaWRhdGlvbkNvbnRl
eHQgKnZhbCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRUdMaW50IGF0dHJp
YnV0ZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgRUdMQXR0cmli
ICp2YWx1ZSk7CiAKKy8vIEVHTF9FWFRfaW1hZ2VfZG1hX2J1Zl9pbXBvcnRfbW9kaWZpZXJzCiti
b29sIFZhbGlkYXRlUXVlcnlEbWFCdWZGb3JtYXRzRVhUKGNvbnN0IFZhbGlkYXRpb25Db250ZXh0
ICp2YWwsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGVnbDo6RGlz
cGxheSAqZHB5UGFja2VkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFR0xp
bnQgbWF4X2Zvcm1hdHMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0
IEVHTGludCAqZm9ybWF0cywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29u
c3QgRUdMaW50ICpudW1fZm9ybWF0cyk7Citib29sIFZhbGlkYXRlUXVlcnlEbWFCdWZNb2RpZmll
cnNFWFQoY29uc3QgVmFsaWRhdGlvbkNvbnRleHQgKnZhbCwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBjb25zdCBlZ2w6OkRpc3BsYXkgKmRweVBhY2tlZCwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFR0xpbnQgZm9ybWF0LAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIEVHTGludCBtYXhfbW9kaWZpZXJzLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IEVHTHVpbnQ2NEtIUiAqbW9kaWZpZXJz
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IEVHTEJvb2xlYW4g
KmV4dGVybmFsX29ubHksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29u
c3QgRUdMaW50ICpudW1fbW9kaWZpZXJzKTsKKwogLy8gRUdMX0VYVF9wbGF0Zm9ybV9iYXNlCiBi
b29sIFZhbGlkYXRlQ3JlYXRlUGxhdGZvcm1QaXhtYXBTdXJmYWNlRVhUKGNvbnN0IFZhbGlkYXRp
b25Db250ZXh0ICp2YWwsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGNvbnN0IGVnbDo6RGlzcGxheSAqZHB5UGFja2VkLApkaWZmIC0tZ2l0IGEvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3ZhbGlkYXRpb25FUy5jcHAgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvdmFsaWRhdGlvbkVTLmNwcAppbmRleCBiMGI3MWMw
ZGY3YjE3NDAyZDdlYzFlN2Y5NmZhN2YzMjg1Mjc2ZjgxLi4zN2E5NzkwM2YwYjI4NGNlZTkyY2Iy
YTVmNzA3MDVmODViN2E1OGFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9z
cmMvbGliQU5HTEUvdmFsaWRhdGlvbkVTLmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zcmMvbGliQU5HTEUvdmFsaWRhdGlvbkVTLmNwcApAQCAtNTU5LDYgKzU1OSwzMyBAQCB1bnNp
Z25lZCBpbnQgR2V0U2FtcGxlclBhcmFtZXRlckNvdW50KEdMZW51bSBwbmFtZSkKICAgICByZXR1
cm4gcG5hbWUgPT0gR0xfVEVYVFVSRV9CT1JERVJfQ09MT1IgPyA0IDogMTsKIH0KIAorY29uc3Qg
Y2hhciAqVmFsaWRhdGVQcm9ncmFtRHJhd0FkdmFuY2VkQmxlbmRTdGF0ZShjb25zdCBDb250ZXh0
ICpjb250ZXh0LCBQcm9ncmFtICpwcm9ncmFtKQoreworICAgIGNvbnN0IFN0YXRlICZzdGF0ZSA9
IGNvbnRleHQtPmdldFN0YXRlKCk7CisgICAgY29uc3QgQmxlbmRFcXVhdGlvbkJpdFNldCAmc3Vw
cG9ydGVkQmxlbmRFcXVhdGlvbnMgPQorICAgICAgICBwcm9ncmFtLT5nZXRTdGF0ZSgpLmdldEFk
dmFuY2VkQmxlbmRFcXVhdGlvbnMoKTsKKyAgICBjb25zdCBEcmF3QnVmZmVyTWFzayAmZW5hYmxl
ZERyYXdCdWZmZXJNYXNrID0gc3RhdGUuZ2V0QmxlbmRTdGF0ZUV4dCgpLm1FbmFibGVkTWFzazsK
KworICAgIGZvciAoc2l6ZV90IGJsZW5kRW5hYmxlZEJ1ZmZlckluZGV4IDogZW5hYmxlZERyYXdC
dWZmZXJNYXNrKQorICAgIHsKKyAgICAgICAgY29uc3QgZ2w6OkJsZW5kRXF1YXRpb25UeXBlICZl
bmFibGVkQmxlbmRFcXVhdGlvbiA9IGdsOjpGcm9tR0xlbnVtPGdsOjpCbGVuZEVxdWF0aW9uVHlw
ZT4oCisgICAgICAgICAgICBzdGF0ZS5nZXRCbGVuZFN0YXRlRXh0KCkuZ2V0RXF1YXRpb25Db2xv
ckluZGV4ZWQoYmxlbmRFbmFibGVkQnVmZmVySW5kZXgpKTsKKworICAgICAgICBpZiAoZW5hYmxl
ZEJsZW5kRXF1YXRpb24gPCBnbDo6QmxlbmRFcXVhdGlvblR5cGU6Ok11bHRpcGx5IHx8CisgICAg
ICAgICAgICBlbmFibGVkQmxlbmRFcXVhdGlvbiA+IGdsOjpCbGVuZEVxdWF0aW9uVHlwZTo6SHNs
THVtaW5vc2l0eSkKKyAgICAgICAgeworICAgICAgICAgICAgY29udGludWU7CisgICAgICAgIH0K
KworICAgICAgICBpZiAoIXN1cHBvcnRlZEJsZW5kRXF1YXRpb25zLnRlc3QoZW5hYmxlZEJsZW5k
RXF1YXRpb24pKQorICAgICAgICB7CisgICAgICAgICAgICByZXR1cm4gZ2w6OmVycjo6a0JsZW5k
RXF1YXRpb25Ob3RFbmFibGVkOworICAgICAgICB9CisgICAgfQorCisgICAgcmV0dXJuIG51bGxw
dHI7Cit9CisKIEFOR0xFX0lOTElORSBjb25zdCBjaGFyICpWYWxpZGF0ZVByb2dyYW1EcmF3U3Rh
dGVzKGNvbnN0IENvbnRleHQgKmNvbnRleHQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBFeHRlbnNpb25zICZleHRlbnNpb25zLAogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHJvZ3JhbSAq
cHJvZ3JhbSkKQEAgLTYxNiw3ICs2NDMsMTUgQEAgQU5HTEVfSU5MSU5FIGNvbnN0IGNoYXIgKlZh
bGlkYXRlUHJvZ3JhbURyYXdTdGF0ZXMoY29uc3QgQ29udGV4dCAqY29udGV4dCwKICAgICAgICAg
fQogICAgIH0KIAotICAgIHJldHVybiBudWxscHRyOworICAgIC8vIEVuYWJsZWQgYmxlbmQgZXF1
YXRpb24gdmFsaWRhdGlvbgorICAgIGNvbnN0IGNoYXIgKmVycm9yU3RyaW5nID0gbnVsbHB0cjsK
KworICAgIGlmIChleHRlbnNpb25zLmJsZW5kRXF1YXRpb25BZHZhbmNlZEtIUikKKyAgICB7Cisg
ICAgICAgIGVycm9yU3RyaW5nID0gVmFsaWRhdGVQcm9ncmFtRHJhd0FkdmFuY2VkQmxlbmRTdGF0
ZShjb250ZXh0LCBwcm9ncmFtKTsKKyAgICB9CisKKyAgICByZXR1cm4gZXJyb3JTdHJpbmc7CiB9
CiB9ICAvLyBhbm9ueW1vdXMgbmFtZXNwYWNlCiAKQEAgLTEwMzAsMTggKzEwNjUsMTQgQEAgYm9v
bCBWYWxpZEltYWdlU2l6ZVBhcmFtZXRlcnMoY29uc3QgQ29udGV4dCAqY29udGV4dCwKICAgICBy
ZXR1cm4gdHJ1ZTsKIH0KIAotYm9vbCBWYWxpZENvbXByZXNzZWREaW1lbnNpb24oR0xzaXplaSBz
aXplLCBHTHVpbnQgYmxvY2tTaXplLCBHTGludCBsZXZlbCkKLXsKLSAgICByZXR1cm4gKGxldmVs
ID4gMCkgfHwgKHNpemUgJSBibG9ja1NpemUgPT0gMCk7Ci19Ci0KLWJvb2wgVmFsaWRDb21wcmVz
c2VkQmFzZUxldmVsRm9yV2ViR0woR0xzaXplaSBzaXplLCBHTHVpbnQgYmxvY2tTaXplLCBHTGlu
dCBsZXZlbCkKK2Jvb2wgVmFsaWRDb21wcmVzc2VkQmFzZUxldmVsKEdMc2l6ZWkgc2l6ZSwgR0x1
aW50IGJsb2NrU2l6ZSwgR0xpbnQgbGV2ZWwpCiB7Ci0gICAgLy8gQXZvaWQgQysrIHVuZGVmaW5l
ZCBiZWhhdmlvci4KLSAgICBjb25zdGV4cHIgaW50IG1heFZhbGlkU2hpZnRzID0gMzE7Ci0gICAg
aWYgKGxldmVsID4gbWF4VmFsaWRTaGlmdHMpCi0gICAgICAgIHJldHVybiBmYWxzZTsKLSAgICBy
ZXR1cm4gKChzaXplIDw8IGxldmVsKSAlIGJsb2NrU2l6ZSkgPT0gMDsKKyAgICAvLyBBbHJlYWR5
IGNoZWNrZWQgaW4gVmFsaWRNaXBMZXZlbC4KKyAgICBBU1NFUlQobGV2ZWwgPCAzMik7CisgICAg
Ly8gVGhpcyBmdW5jdGlvbiBpcyB1c2VkIG9ubHkgZm9yIDR4NCBCQyBmb3JtYXRzLgorICAgIEFT
U0VSVChibG9ja1NpemUgPT0gNCk7CisgICAgLy8gVXNlIHRoZSBjb25zdGFudCB2YWx1ZSB0byBh
dm9pZCBkaXZpc2lvbi4KKyAgICByZXR1cm4gKChzaXplIDw8IGxldmVsKSAlIDQpID09IDA7CiB9
CiAKIGJvb2wgVmFsaWRDb21wcmVzc2VkSW1hZ2VTaXplKGNvbnN0IENvbnRleHQgKmNvbnRleHQs
CkBAIC0xMDgxLDI4ICsxMTEyLDI2IEBAIGJvb2wgVmFsaWRDb21wcmVzc2VkSW1hZ2VTaXplKGNv
bnN0IENvbnRleHQgKmNvbnRleHQsCiAKICAgICBpZiAoQ29tcHJlc3NlZFRleHR1cmVGb3JtYXRS
ZXF1aXJlc0V4YWN0U2l6ZShpbnRlcm5hbEZvcm1hdCkpCiAgICAgewotICAgICAgICAvLyBJbiBX
ZWJHTCBjb21wYXRpYmlsaXR5IG1vZGUsIGVuZm9yY2UgdGhhdCB0aGUgYmFzZSBsZXZlbCBpbXBs
aWVkCisgICAgICAgIC8vIEluIFdlYkdMIGNvbXBhdGliaWxpdHkgbW9kZSBhbmQgRDNELCBlbmZv
cmNlIHRoYXQgdGhlIGJhc2UgbGV2ZWwgaW1wbGllZAogICAgICAgICAvLyBieSB0aGUgY29tcHJl
c3NlZCB0ZXh0dXJlJ3MgbWlwIGxldmVsIHdvdWxkIGNvbmZvcm0gdG8gdGhlIGJsb2NrCi0gICAg
ICAgIC8vIHNpemUuIFRoaXMgaXMgbW9yZSBzdHJpY3QgdGhhbiB0aGUgbm9uLVdlYkdMIGNoZWNr
LgotICAgICAgICBpZiAoY29udGV4dC0+aXNXZWJHTCgpKQorICAgICAgICAvLyBzaXplLgorICAg
ICAgICBpZiAoY29udGV4dC0+aXNXZWJHTCgpIHx8IGNvbnRleHQtPmdldExpbWl0YXRpb25zKCku
Y29tcHJlc3NlZEJhc2VNaXBMZXZlbE11bHRpcGxlT2ZGb3VyKQogICAgICAgICB7Ci0gICAgICAg
ICAgICBpZiAoIVZhbGlkQ29tcHJlc3NlZEJhc2VMZXZlbEZvcldlYkdMKHdpZHRoLCBmb3JtYXRJ
bmZvLmNvbXByZXNzZWRCbG9ja1dpZHRoLCBsZXZlbCkgfHwKLSAgICAgICAgICAgICAgICAhVmFs
aWRDb21wcmVzc2VkQmFzZUxldmVsRm9yV2ViR0woaGVpZ2h0LCBmb3JtYXRJbmZvLmNvbXByZXNz
ZWRCbG9ja0hlaWdodCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgbGV2ZWwpIHx8Ci0gICAgICAgICAgICAgICAgIVZhbGlkQ29tcHJlc3NlZEJhc2VM
ZXZlbEZvcldlYkdMKGRlcHRoLCBmb3JtYXRJbmZvLmNvbXByZXNzZWRCbG9ja0RlcHRoLCBsZXZl
bCkpCi0gICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAg
ICAgICAgfQotICAgICAgICB9Ci0gICAgICAgIGVsc2UKLSAgICAgICAgewotICAgICAgICAgICAg
aWYgKCFWYWxpZENvbXByZXNzZWREaW1lbnNpb24od2lkdGgsIGZvcm1hdEluZm8uY29tcHJlc3Nl
ZEJsb2NrV2lkdGgsIGxldmVsKSB8fAotICAgICAgICAgICAgICAgICFWYWxpZENvbXByZXNzZWRE
aW1lbnNpb24oaGVpZ2h0LCBmb3JtYXRJbmZvLmNvbXByZXNzZWRCbG9ja0hlaWdodCwgbGV2ZWwp
IHx8Ci0gICAgICAgICAgICAgICAgIVZhbGlkQ29tcHJlc3NlZERpbWVuc2lvbihkZXB0aCwgZm9y
bWF0SW5mby5jb21wcmVzc2VkQmxvY2tEZXB0aCwgbGV2ZWwpKQorICAgICAgICAgICAgLy8gVGhp
cyBjaGVjayBpcyBwZXJmb3JtZWQgb25seSBmb3IgQkMgZm9ybWF0cy4KKyAgICAgICAgICAgIEFT
U0VSVChmb3JtYXRJbmZvLmNvbXByZXNzZWRCbG9ja0RlcHRoID09IDEpOworICAgICAgICAgICAg
aWYgKCFWYWxpZENvbXByZXNzZWRCYXNlTGV2ZWwod2lkdGgsIGZvcm1hdEluZm8uY29tcHJlc3Nl
ZEJsb2NrV2lkdGgsIGxldmVsKSB8fAorICAgICAgICAgICAgICAgICFWYWxpZENvbXByZXNzZWRC
YXNlTGV2ZWwoaGVpZ2h0LCBmb3JtYXRJbmZvLmNvbXByZXNzZWRCbG9ja0hlaWdodCwgbGV2ZWwp
KQogICAgICAgICAgICAgewogICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAg
ICAgIH0KICAgICAgICAgfQorICAgICAgICAvLyBub24tV2ViR0wgYW5kIG5vbi1EM0QgY2hlY2sg
aXMgbm90IG5lY2Vzc2FyeSBmb3IgdGhlIGZvbGxvd2luZyBmb3JtYXRzCisgICAgICAgIC8vIEZy
b20gRVhUX3RleHR1cmVfY29tcHJlc3Npb25fczN0YyBzcGVjaWZpY2F0aW9uOgorICAgICAgICAv
LyBJZiB0aGUgd2lkdGggb3IgaGVpZ2h0IGlzIG5vdCBhIG11bHRpcGxlIG9mIGZvdXIsIHRoZXJl
IHdpbGwgYmUgNHg0IGJsb2NrcyBhdCB0aGUgZWRnZSBvZgorICAgICAgICAvLyB0aGUgaW1hZ2Ug
dGhhdCBjb250YWluICJleHRyYSIgdGV4ZWxzIHRoYXQgYXJlIG5vdCBwYXJ0IG9mIHRoZSBpbWFn
ZS4gRnJvbQorICAgICAgICAvLyBFWFRfdGV4dHVyZV9jb21wcmVzc2lvbl9icHRjICYgRVhUX3Rl
eHR1cmVfY29tcHJlc3Npb25fcmd0YyBzcGVjaWZpY2F0aW9uOiBJZiBhbgorICAgICAgICAvLyBS
R1RDL0JQVEMgaW1hZ2UgaGFzIGEgd2lkdGggb3IgaGVpZ2h0IHRoYXQgaXMgbm90IGEgbXVsdGlw
bGUgb2YgZm91ciwgdGhlIGRhdGEKKyAgICAgICAgLy8gY29ycmVzcG9uZGluZyB0byB0ZXhlbHMg
b3V0c2lkZSB0aGUgaW1hZ2UgYXJlIGlycmVsZXZhbnQgYW5kIHVuZGVmaW5lZC4KICAgICB9CiAK
ICAgICByZXR1cm4gdHJ1ZTsKQEAgLTQxMDUsNiArNDEzNCwzMCBAQCBjb25zdCBjaGFyICpWYWxp
ZGF0ZURyYXdTdGF0ZXMoY29uc3QgQ29udGV4dCAqY29udGV4dCkKICAgICAgICAgfQogICAgIH0K
IAorICAgIC8vIEFkdmFuY2VkIGJsZW5kIGVxdWF0aW9uIGNhbiBvbmx5IGJlIGVuYWJsZWQgZm9y
IGEgc2luZ2xlIHJlbmRlciB0YXJnZXQuCisgICAgY29uc3QgQmxlbmRTdGF0ZUV4dCAmYmxlbmRT
dGF0ZUV4dCA9IHN0YXRlLmdldEJsZW5kU3RhdGVFeHQoKTsKKyAgICBpZiAoYmxlbmRTdGF0ZUV4
dC5tVXNlc0FkdmFuY2VkQmxlbmRFcXVhdGlvbk1hc2suYW55KCkpCisgICAgeworICAgICAgICBj
b25zdCBzaXplX3QgZHJhd0J1ZmZlckNvdW50ICAgICAgICAgICAgPSBmcmFtZWJ1ZmZlci0+Z2V0
RHJhd2J1ZmZlclN0YXRlQ291bnQoKTsKKyAgICAgICAgdWludDMyX3QgYWR2YW5jZWRCbGVuZFJl
bmRlclRhcmdldENvdW50ID0gMDsKKworICAgICAgICBmb3IgKHNpemVfdCBkcmF3QnVmZmVySW5k
ZXggOiBibGVuZFN0YXRlRXh0Lm1Vc2VzQWR2YW5jZWRCbGVuZEVxdWF0aW9uTWFzaykKKyAgICAg
ICAgeworICAgICAgICAgICAgaWYgKGRyYXdCdWZmZXJJbmRleCA8IGRyYXdCdWZmZXJDb3VudCAm
JgorICAgICAgICAgICAgICAgIGZyYW1lYnVmZmVyLT5nZXREcmF3QnVmZmVyU3RhdGUoZHJhd0J1
ZmZlckluZGV4KSAhPSBHTF9OT05FICYmCisgICAgICAgICAgICAgICAgYmxlbmRTdGF0ZUV4dC5t
RW5hYmxlZE1hc2sudGVzdChkcmF3QnVmZmVySW5kZXgpICYmCisgICAgICAgICAgICAgICAgYmxl
bmRTdGF0ZUV4dC5tVXNlc0FkdmFuY2VkQmxlbmRFcXVhdGlvbk1hc2sudGVzdChkcmF3QnVmZmVy
SW5kZXgpKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICsrYWR2YW5jZWRCbGVuZFJl
bmRlclRhcmdldENvdW50OworICAgICAgICAgICAgfQorICAgICAgICB9CisKKyAgICAgICAgaWYg
KGFkdmFuY2VkQmxlbmRSZW5kZXJUYXJnZXRDb3VudCA+IDEpCisgICAgICAgIHsKKyAgICAgICAg
ICAgIHJldHVybiBrQWR2YW5jZWRCbGVuZEVxdWF0aW9uV2l0aE1SVDsKKyAgICAgICAgfQorICAg
IH0KKwogICAgIGlmIChjb250ZXh0LT5nZXRTdGF0ZUNhY2hlKCkuaGFzQW55RW5hYmxlZENsaWVu
dEF0dHJpYigpKQogICAgIHsKICAgICAgICAgaWYgKGV4dGVuc2lvbnMud2ViZ2xDb21wYXRpYmls
aXR5QU5HTEUgfHwgIXN0YXRlLmFyZUNsaWVudEFycmF5c0VuYWJsZWQoKSkKQEAgLTQxODUsNiAr
NDIzOCwxNCBAQCBjb25zdCBjaGFyICpWYWxpZGF0ZURyYXdTdGF0ZXMoY29uc3QgQ29udGV4dCAq
Y29udGV4dCkKICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGtUZXNzZWxsYXRpb25TaGFkZXJS
ZXF1aXJlc0JvdGhDb250cm9sQW5kRXZhbHVhdGlvbjsKICAgICAgICAgICAgICAgICB9CiAgICAg
ICAgICAgICB9CisKKyAgICAgICAgICAgIGlmIChzdGF0ZS5pc1RyYW5zZm9ybUZlZWRiYWNrQWN0
aXZlKCkpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgaWYgKCFWYWxpZGF0ZVByb2dy
YW1FeGVjdXRhYmxlWEZCQnVmZmVyc1ByZXNlbnQoY29udGV4dCwgZXhlY3V0YWJsZSkpCisgICAg
ICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICByZXR1cm4ga1RyYW5zZm9ybUZlZWRi
YWNrQnVmZmVyTWlzc2luZzsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CiAgICAg
ICAgIH0KIAogICAgICAgICBpZiAocHJvZ3JhbUlzWVVWT3V0cHV0ICE9IGZyYW1lYnVmZmVySXNZ
VVYpCkBAIC04NDQ2LDQgKzg1MDcsMjEgQEAgYm9vbCBWYWxpZGF0ZUludmFsaWRhdGVUZXh0dXJl
QU5HTEUoY29uc3QgQ29udGV4dCAqY29udGV4dCwKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAorYm9v
bCBWYWxpZGF0ZVByb2dyYW1FeGVjdXRhYmxlWEZCQnVmZmVyc1ByZXNlbnQoY29uc3QgQ29udGV4
dCAqY29udGV4dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGNvbnN0IFByb2dyYW1FeGVjdXRhYmxlICpwcm9ncmFtRXhlY3V0YWJsZSkKK3sKKyAgICBz
aXplX3QgcHJvZ3JhbVhmYkNvdW50ID0gcHJvZ3JhbUV4ZWN1dGFibGUtPmdldFRyYW5zZm9ybUZl
ZWRiYWNrQnVmZmVyQ291bnQoKTsKKyAgICBjb25zdCBUcmFuc2Zvcm1GZWVkYmFjayAqdHJhbnNm
b3JtRmVlZGJhY2sgPSBjb250ZXh0LT5nZXRTdGF0ZSgpLmdldEN1cnJlbnRUcmFuc2Zvcm1GZWVk
YmFjaygpOworICAgIGZvciAoc2l6ZV90IHByb2dyYW1YZmJJbmRleCA9IDA7IHByb2dyYW1YZmJJ
bmRleCA8IHByb2dyYW1YZmJDb3VudDsgKytwcm9ncmFtWGZiSW5kZXgpCisgICAgeworICAgICAg
ICBjb25zdCBPZmZzZXRCaW5kaW5nUG9pbnRlcjxCdWZmZXI+ICZidWZmZXIgPQorICAgICAgICAg
ICAgdHJhbnNmb3JtRmVlZGJhY2stPmdldEluZGV4ZWRCdWZmZXIocHJvZ3JhbVhmYkluZGV4KTsK
KyAgICAgICAgaWYgKCFidWZmZXIuZ2V0KCkpCisgICAgICAgIHsKKyAgICAgICAgICAgIHJldHVy
biBmYWxzZTsKKyAgICAgICAgfQorICAgIH0KKworICAgIHJldHVybiB0cnVlOworfQogfSAgLy8g
bmFtZXNwYWNlIGdsCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGli
QU5HTEUvdmFsaWRhdGlvbkVTLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5H
TEUvdmFsaWRhdGlvbkVTLmgKaW5kZXggYTMzZjgzMGMyOGYxOTc1MjhiNmIxOTJhYjdhNmNiYzY4
MmZkOTc5YS4uNTE5MWIwOTY0ZGExN2Y5MzM2MDUyZTMzNmU1ZjhkNmQ0M2MxMTZlMSAxMDA2NDQK
LS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3ZhbGlkYXRpb25FUy5o
CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS92YWxpZGF0aW9uRVMu
aApAQCAtOTE0LDYgKzkxNCw5IEBAIGJvb2wgVmFsaWRhdGVTYW1wbGVNYXNraUJhc2UoY29uc3Qg
Q29udGV4dCAqY29udGV4dCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50IG1h
c2tOdW1iZXIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMYml0ZmllbGQgbWFzayk7
CiAKK2Jvb2wgVmFsaWRhdGVQcm9ncmFtRXhlY3V0YWJsZVhGQkJ1ZmZlcnNQcmVzZW50KGNvbnN0
IENvbnRleHQgKmNvbnRleHQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBjb25zdCBQcm9ncmFtRXhlY3V0YWJsZSAqcHJvZ3JhbUV4ZWN1dGFibGUpOwor
CiAvLyBXZSBzaG91bGQgY2hlY2sgd2l0aCBLaHJvbm9zIGlmIHJldHVybmluZyBJTlZBTElEX0ZS
QU1FQlVGRkVSX09QRVJBVElPTiBpcyBPSyB3aGVuIHF1ZXJ5aW5nCiAvLyBpbXBsZW1lbnRhdGlv
biBmb3JtYXQgaW5mbyBmb3IgaW5jb21wbGV0ZSBmcmFtZWJ1ZmZlcnMuIEl0IHNlZW1zIGxpa2Ug
dGhlc2UgcXVlcmllcyBhcmUKIC8vIGluY29uZ3J1ZW50IHdpdGggdGhlIG90aGVyIGVycm9ycy4K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS92YWxpZGF0
aW9uRVMyLmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS92YWxpZGF0
aW9uRVMyLmNwcAppbmRleCBjNGQxNzY0NmUyMzhiMjMyMDlkOWYzODZiZDRjZWFlNDFkYzNlMWQ5
Li42NDc3NTUzZjNiNjYzOTg2ODQyODVjNjEwMGQ3YWU2OWQ3Y2RmZTZiIDEwMDY0NAotLS0gYS9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvdmFsaWRhdGlvbkVTMi5jcHAKKysr
IGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3ZhbGlkYXRpb25FUzIuY3Bw
CkBAIC0zODExLDYgKzM4MTEsMzMgQEAgc3RhdGljIGJvb2wgVmFsaWRCbGVuZEVxdWF0aW9uTW9k
ZShjb25zdCBDb250ZXh0ICpjb250ZXh0LCBHTGVudW0gbW9kZSkKICAgICB9CiB9CiAKK3N0YXRp
YyBib29sIFZhbGlkQWR2YW5jZWRCbGVuZEVxdWF0aW9uTW9kZShjb25zdCBDb250ZXh0ICpjb250
ZXh0LCBHTGVudW0gbW9kZSkKK3sKKyAgICBzd2l0Y2ggKG1vZGUpCisgICAgeworICAgICAgICBj
YXNlIEdMX01VTFRJUExZX0tIUjoKKyAgICAgICAgY2FzZSBHTF9TQ1JFRU5fS0hSOgorICAgICAg
ICBjYXNlIEdMX09WRVJMQVlfS0hSOgorICAgICAgICBjYXNlIEdMX0RBUktFTl9LSFI6CisgICAg
ICAgIGNhc2UgR0xfTElHSFRFTl9LSFI6CisgICAgICAgIGNhc2UgR0xfQ09MT1JET0RHRV9LSFI6
CisgICAgICAgIGNhc2UgR0xfQ09MT1JCVVJOX0tIUjoKKyAgICAgICAgY2FzZSBHTF9IQVJETElH
SFRfS0hSOgorICAgICAgICBjYXNlIEdMX1NPRlRMSUdIVF9LSFI6CisgICAgICAgIGNhc2UgR0xf
RElGRkVSRU5DRV9LSFI6CisgICAgICAgIGNhc2UgR0xfRVhDTFVTSU9OX0tIUjoKKyAgICAgICAg
Y2FzZSBHTF9IU0xfSFVFX0tIUjoKKyAgICAgICAgY2FzZSBHTF9IU0xfU0FUVVJBVElPTl9LSFI6
CisgICAgICAgIGNhc2UgR0xfSFNMX0NPTE9SX0tIUjoKKyAgICAgICAgY2FzZSBHTF9IU0xfTFVN
SU5PU0lUWV9LSFI6CisgICAgICAgICAgICByZXR1cm4gY29udGV4dC0+Z2V0Q2xpZW50VmVyc2lv
bigpID49IEVTXzNfMiB8fAorICAgICAgICAgICAgICAgICAgIGNvbnRleHQtPmdldEV4dGVuc2lv
bnMoKS5ibGVuZEVxdWF0aW9uQWR2YW5jZWRLSFI7CisKKyAgICAgICAgZGVmYXVsdDoKKyAgICAg
ICAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9Cit9CisKIGJvb2wgVmFsaWRhdGVCbGVuZENvbG9y
KGNvbnN0IENvbnRleHQgKmNvbnRleHQsCiAgICAgICAgICAgICAgICAgICAgICAgICBhbmdsZTo6
RW50cnlQb2ludCBlbnRyeVBvaW50LAogICAgICAgICAgICAgICAgICAgICAgICAgR0xmbG9hdCBy
ZWQsCkBAIC0zODIzLDcgKzM4NTAsNyBAQCBib29sIFZhbGlkYXRlQmxlbmRDb2xvcihjb25zdCBD
b250ZXh0ICpjb250ZXh0LAogCiBib29sIFZhbGlkYXRlQmxlbmRFcXVhdGlvbihjb25zdCBDb250
ZXh0ICpjb250ZXh0LCBhbmdsZTo6RW50cnlQb2ludCBlbnRyeVBvaW50LCBHTGVudW0gbW9kZSkK
IHsKLSAgICBpZiAoIVZhbGlkQmxlbmRFcXVhdGlvbk1vZGUoY29udGV4dCwgbW9kZSkpCisgICAg
aWYgKCFWYWxpZEJsZW5kRXF1YXRpb25Nb2RlKGNvbnRleHQsIG1vZGUpICYmICFWYWxpZEFkdmFu
Y2VkQmxlbmRFcXVhdGlvbk1vZGUoY29udGV4dCwgbW9kZSkpCiAgICAgewogICAgICAgICBjb250
ZXh0LT52YWxpZGF0aW9uRXJyb3IoZW50cnlQb2ludCwgR0xfSU5WQUxJRF9FTlVNLCBrSW52YWxp
ZEJsZW5kRXF1YXRpb24pOwogICAgICAgICByZXR1cm4gZmFsc2U7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvdmFsaWRhdGlvbkVTMy5jcHAgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvdmFsaWRhdGlvbkVTMy5jcHAKaW5kZXgg
MzExOTk3ODhlMzgwODE5NWI5YmE0OTc3NzIyM2VkNmY3Zjg0Yzg1MC4uZmY5MmU1ZjY3ZWU3ZWM0
YTY2MzBkNzJlN2E0YTQ1ZGQ1ZGVhMTE4OSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc3JjL2xpYkFOR0xFL3ZhbGlkYXRpb25FUzMuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL3NyYy9saWJBTkdMRS92YWxpZGF0aW9uRVMzLmNwcApAQCAtMjk3OCwxNyArMjk3
OCwxMCBAQCBib29sIFZhbGlkYXRlQmVnaW5UcmFuc2Zvcm1GZWVkYmFjayhjb25zdCBDb250ZXh0
ICpjb250ZXh0LAogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgfQogCi0gICAgc2l6ZV90IHBy
b2dyYW1YZmJDb3VudCA9IHByb2dyYW1FeGVjdXRhYmxlLT5nZXRUcmFuc2Zvcm1GZWVkYmFja0J1
ZmZlckNvdW50KCk7Ci0gICAgZm9yIChzaXplX3QgcHJvZ3JhbVhmYkluZGV4ID0gMDsgcHJvZ3Jh
bVhmYkluZGV4IDwgcHJvZ3JhbVhmYkNvdW50OyArK3Byb2dyYW1YZmJJbmRleCkKKyAgICBpZiAo
IVZhbGlkYXRlUHJvZ3JhbUV4ZWN1dGFibGVYRkJCdWZmZXJzUHJlc2VudChjb250ZXh0LCBwcm9n
cmFtRXhlY3V0YWJsZSkpCiAgICAgewotICAgICAgICBjb25zdCBPZmZzZXRCaW5kaW5nUG9pbnRl
cjxCdWZmZXI+ICZidWZmZXIgPQotICAgICAgICAgICAgdHJhbnNmb3JtRmVlZGJhY2stPmdldElu
ZGV4ZWRCdWZmZXIocHJvZ3JhbVhmYkluZGV4KTsKLSAgICAgICAgaWYgKCFidWZmZXIuZ2V0KCkp
Ci0gICAgICAgIHsKLSAgICAgICAgICAgIGNvbnRleHQtPnZhbGlkYXRpb25FcnJvcihlbnRyeVBv
aW50LCBHTF9JTlZBTElEX09QRVJBVElPTiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBrVHJhbnNmb3JtRmVlZGJhY2tCdWZmZXJNaXNzaW5nKTsKLSAgICAgICAgICAgIHJl
dHVybiBmYWxzZTsKLSAgICAgICAgfQorICAgICAgICBjb250ZXh0LT52YWxpZGF0aW9uRXJyb3Io
ZW50cnlQb2ludCwgR0xfSU5WQUxJRF9PUEVSQVRJT04sIGtUcmFuc2Zvcm1GZWVkYmFja0J1ZmZl
ck1pc3NpbmcpOworICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgfQogCiAgICAgcmV0dXJuIHRy
dWU7CkBAIC0zNzkyLDcgKzM3ODUsNyBAQCBib29sIFZhbGlkYXRlRHJhd0VsZW1lbnRzSW5zdGFu
Y2VkQmFzZVZlcnRleEJhc2VJbnN0YW5jZUFOR0xFKGNvbnN0IENvbnRleHQgKmNvbgogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBH
THNpemVpIGNvdW50LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBEcmF3RWxlbWVudHNUeXBlIHR5cGUsCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IEdM
dm9pZCAqaW5kaWNlcywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBpbnN0YW5jZUNvdW50cywKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXpl
aSBpbnN0YW5jZUNvdW50LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBHTGludCBiYXNlVmVydGV4LAogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVpbnQgYmFz
ZUluc3RhbmNlKQogewpAQCAtMzgwMiw3ICszNzk1LDcgQEAgYm9vbCBWYWxpZGF0ZURyYXdFbGVt
ZW50c0luc3RhbmNlZEJhc2VWZXJ0ZXhCYXNlSW5zdGFuY2VBTkdMRShjb25zdCBDb250ZXh0ICpj
b24KICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIH0KICAgICBpZiAoIVZhbGlkYXRlRHJhd0Vs
ZW1lbnRzSW5zdGFuY2VkQmFzZShjb250ZXh0LCBlbnRyeVBvaW50LCBtb2RlLCBjb3VudCwgdHlw
ZSwgaW5kaWNlcywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBp
bnN0YW5jZUNvdW50cykpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgaW5zdGFuY2VDb3VudCkpCiAgICAgewogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3ZhbGlkYXRp
b25FU0VYVC5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvdmFsaWRh
dGlvbkVTRVhULmNwcAppbmRleCBkMTQ4ZDZmNjY5NjkzMmRiZThmNTBhYTFkMmVmYmViZDNjODkz
ZTRlLi40MTliNGI1YjIyMzI5YzAzOTY0NWMyNjcwOGNmYjE4YWYxNDU1YTVlIDEwMDY0NAotLS0g
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvdmFsaWRhdGlvbkVTRVhULmNw
cAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvdmFsaWRhdGlvbkVT
RVhULmNwcApAQCAtNjIyLDggKzYyMiwxNCBAQCBib29sIFZhbGlkYXRlRHJhd1JhbmdlRWxlbWVu
dHNCYXNlVmVydGV4T0VTKGNvbnN0IENvbnRleHQgKmNvbnRleHQsCiAvLyBHTF9LSFJfYmxlbmRf
ZXF1YXRpb25fYWR2YW5jZWQKIGJvb2wgVmFsaWRhdGVCbGVuZEJhcnJpZXJLSFIoY29uc3QgQ29u
dGV4dCAqY29udGV4dCwgYW5nbGU6OkVudHJ5UG9pbnQgZW50cnlQb2ludCkKIHsKLSAgICBjb250
ZXh0LT52YWxpZGF0aW9uRXJyb3IoZW50cnlQb2ludCwgR0xfSU5WQUxJRF9PUEVSQVRJT04sIGtF
eHRlbnNpb25Ob3RFbmFibGVkKTsKLSAgICByZXR1cm4gZmFsc2U7CisgICAgY29uc3QgRXh0ZW5z
aW9ucyAmZXh0ZW5zaW9ucyA9IGNvbnRleHQtPmdldEV4dGVuc2lvbnMoKTsKKworICAgIGlmICgh
ZXh0ZW5zaW9ucy5ibGVuZEVxdWF0aW9uQWR2YW5jZWRLSFIpCisgICAgeworICAgICAgICBjb250
ZXh0LT52YWxpZGF0aW9uRXJyb3IoZW50cnlQb2ludCwgR0xfSU5WQUxJRF9FTlVNLCBrQWR2YW5j
ZWRCbGVuZEV4dGVuc2lvbk5vdEVuYWJsZWQpOworICAgIH0KKworICAgIHJldHVybiB0cnVlOwog
fQogCiBib29sIFZhbGlkYXRlQmxlbmRFcXVhdGlvblNlcGFyYXRlaUVYVChjb25zdCBDb250ZXh0
ICpjb250ZXh0LApAQCAtMjY4Niw0ICsyNjkyLDI0OSBAQCBib29sIFZhbGlkYXRlR2V0RnJhbWVi
dWZmZXJQYXJhbWV0ZXJpdk1FU0EoY29uc3QgQ29udGV4dCAqY29udGV4dCwKICAgICByZXR1cm4g
VmFsaWRhdGVHZXRGcmFtZWJ1ZmZlclBhcmFtZXRlcml2QmFzZShjb250ZXh0LCBlbnRyeVBvaW50
LCB0YXJnZXQsIHBuYW1lLCBwYXJhbXMpOwogfQogCisvLyBHTF9BTURfcGVyZm9ybWFuY2VfbW9u
aXRvcgorYm9vbCBWYWxpZGF0ZUJlZ2luUGVyZk1vbml0b3JBTUQoY29uc3QgQ29udGV4dCAqY29u
dGV4dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFuZ2xlOjpFbnRyeVBvaW50
IGVudHJ5UG9pbnQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVpbnQgbW9u
aXRvcikKK3sKKyAgICBpZiAoIWNvbnRleHQtPmdldEV4dGVuc2lvbnMoKS5wZXJmb3JtYW5jZU1v
bml0b3JBTUQpCisgICAgeworICAgICAgICBjb250ZXh0LT52YWxpZGF0aW9uRXJyb3IoZW50cnlQ
b2ludCwgR0xfSU5WQUxJRF9PUEVSQVRJT04sIGtFeHRlbnNpb25Ob3RFbmFibGVkKTsKKyAgICAg
ICAgcmV0dXJuIGZhbHNlOworICAgIH0KKworICAgIFVOSU1QTEVNRU5URUQoKTsKKyAgICByZXR1
cm4gZmFsc2U7Cit9CisKK2Jvb2wgVmFsaWRhdGVEZWxldGVQZXJmTW9uaXRvcnNBTUQoY29uc3Qg
Q29udGV4dCAqY29udGV4dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYW5n
bGU6OkVudHJ5UG9pbnQgZW50cnlQb2ludCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgR0xzaXplaSBuLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25z
dCBHTHVpbnQgKm1vbml0b3JzKQoreworICAgIGlmICghY29udGV4dC0+Z2V0RXh0ZW5zaW9ucygp
LnBlcmZvcm1hbmNlTW9uaXRvckFNRCkKKyAgICB7CisgICAgICAgIGNvbnRleHQtPnZhbGlkYXRp
b25FcnJvcihlbnRyeVBvaW50LCBHTF9JTlZBTElEX09QRVJBVElPTiwga0V4dGVuc2lvbk5vdEVu
YWJsZWQpOworICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorCisgICAgVU5JTVBMRU1FTlRF
RCgpOworICAgIHJldHVybiBmYWxzZTsKK30KKworYm9vbCBWYWxpZGF0ZUVuZFBlcmZNb25pdG9y
QU1EKGNvbnN0IENvbnRleHQgKmNvbnRleHQsIGFuZ2xlOjpFbnRyeVBvaW50IGVudHJ5UG9pbnQs
IEdMdWludCBtb25pdG9yKQoreworICAgIGlmICghY29udGV4dC0+Z2V0RXh0ZW5zaW9ucygpLnBl
cmZvcm1hbmNlTW9uaXRvckFNRCkKKyAgICB7CisgICAgICAgIGNvbnRleHQtPnZhbGlkYXRpb25F
cnJvcihlbnRyeVBvaW50LCBHTF9JTlZBTElEX09QRVJBVElPTiwga0V4dGVuc2lvbk5vdEVuYWJs
ZWQpOworICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorCisgICAgVU5JTVBMRU1FTlRFRCgp
OworICAgIHJldHVybiBmYWxzZTsKK30KKworYm9vbCBWYWxpZGF0ZUdlblBlcmZNb25pdG9yc0FN
RChjb25zdCBDb250ZXh0ICpjb250ZXh0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBhbmdsZTo6RW50cnlQb2ludCBlbnRyeVBvaW50LAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBHTHNpemVpIG4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0
IEdMdWludCAqbW9uaXRvcnMpCit7CisgICAgaWYgKCFjb250ZXh0LT5nZXRFeHRlbnNpb25zKCku
cGVyZm9ybWFuY2VNb25pdG9yQU1EKQorICAgIHsKKyAgICAgICAgY29udGV4dC0+dmFsaWRhdGlv
bkVycm9yKGVudHJ5UG9pbnQsIEdMX0lOVkFMSURfT1BFUkFUSU9OLCBrRXh0ZW5zaW9uTm90RW5h
YmxlZCk7CisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisKKyAgICBVTklNUExFTUVOVEVE
KCk7CisgICAgcmV0dXJuIGZhbHNlOworfQorCitib29sIFZhbGlkYXRlR2V0UGVyZk1vbml0b3JD
b3VudGVyRGF0YUFNRChjb25zdCBDb250ZXh0ICpjb250ZXh0LAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgYW5nbGU6OkVudHJ5UG9pbnQgZW50cnlQb2ludCwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMdWludCBtb25pdG9yLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xlbnVtIHBuYW1lLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBkYXRhU2l6
ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IEdMdWlu
dCAqZGF0YSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0
IEdMaW50ICpieXRlc1dyaXR0ZW4pCit7CisgICAgaWYgKCFjb250ZXh0LT5nZXRFeHRlbnNpb25z
KCkucGVyZm9ybWFuY2VNb25pdG9yQU1EKQorICAgIHsKKyAgICAgICAgY29udGV4dC0+dmFsaWRh
dGlvbkVycm9yKGVudHJ5UG9pbnQsIEdMX0lOVkFMSURfT1BFUkFUSU9OLCBrRXh0ZW5zaW9uTm90
RW5hYmxlZCk7CisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisKKyAgICBpZiAobW9uaXRv
ciAhPSAwKQorICAgIHsKKyAgICAgICAgY29udGV4dC0+dmFsaWRhdGlvbkVycm9yKGVudHJ5UG9p
bnQsIEdMX0lOVkFMSURfVkFMVUUsIGtJbnZhbGlkUGVyZk1vbml0b3IpOworICAgICAgICByZXR1
cm4gZmFsc2U7CisgICAgfQorCisgICAgc3dpdGNoIChwbmFtZSkKKyAgICB7CisgICAgICAgIGNh
c2UgR0xfUEVSRk1PTl9SRVNVTFRfQVZBSUxBQkxFX0FNRDoKKyAgICAgICAgY2FzZSBHTF9QRVJG
TU9OX1JFU1VMVF9TSVpFX0FNRDoKKyAgICAgICAgY2FzZSBHTF9QRVJGTU9OX1JFU1VMVF9BTUQ6
CisgICAgICAgICAgICBicmVhazsKKworICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAgY29u
dGV4dC0+dmFsaWRhdGlvbkVycm9yKGVudHJ5UG9pbnQsIEdMX0lOVkFMSURfRU5VTSwga0ludmFs
aWRQbmFtZSk7CisgICAgICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorCisgICAgcmV0dXJu
IHRydWU7Cit9CisKK2Jvb2wgVmFsaWRhdGVHZXRQZXJmTW9uaXRvckNvdW50ZXJJbmZvQU1EKGNv
bnN0IENvbnRleHQgKmNvbnRleHQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBhbmdsZTo6RW50cnlQb2ludCBlbnRyeVBvaW50LAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50IGdyb3VwLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50IGNvdW50ZXIsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBHTGVudW0gcG5hbWUsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB2b2lkICpkYXRhKQoreworICAgIGlmICgh
Y29udGV4dC0+Z2V0RXh0ZW5zaW9ucygpLnBlcmZvcm1hbmNlTW9uaXRvckFNRCkKKyAgICB7Cisg
ICAgICAgIGNvbnRleHQtPnZhbGlkYXRpb25FcnJvcihlbnRyeVBvaW50LCBHTF9JTlZBTElEX09Q
RVJBVElPTiwga0V4dGVuc2lvbk5vdEVuYWJsZWQpOworICAgICAgICByZXR1cm4gZmFsc2U7Cisg
ICAgfQorCisgICAgY29uc3QgYW5nbGU6OlBlcmZNb25pdG9yQ291bnRlckdyb3VwcyAmZ3JvdXBz
ID0gY29udGV4dC0+Z2V0UGVyZk1vbml0b3JDb3VudGVyR3JvdXBzKCk7CisKKyAgICBpZiAoZ3Jv
dXAgPj0gZ3JvdXBzLnNpemUoKSkKKyAgICB7CisgICAgICAgIGNvbnRleHQtPnZhbGlkYXRpb25F
cnJvcihlbnRyeVBvaW50LCBHTF9JTlZBTElEX1ZBTFVFLCBrSW52YWxpZFBlcmZNb25pdG9yR3Jv
dXApOworICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorCisgICAgaWYgKGNvdW50ZXIgPj0g
Z3JvdXBzW2dyb3VwXS5jb3VudGVycy5zaXplKCkpCisgICAgeworICAgICAgICBjb250ZXh0LT52
YWxpZGF0aW9uRXJyb3IoZW50cnlQb2ludCwgR0xfSU5WQUxJRF9WQUxVRSwga0ludmFsaWRQZXJm
TW9uaXRvckNvdW50ZXIpOworICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorCisgICAgc3dp
dGNoIChwbmFtZSkKKyAgICB7CisgICAgICAgIGNhc2UgR0xfQ09VTlRFUl9UWVBFX0FNRDoKKyAg
ICAgICAgY2FzZSBHTF9DT1VOVEVSX1JBTkdFX0FNRDoKKyAgICAgICAgICAgIGJyZWFrOworCisg
ICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICBjb250ZXh0LT52YWxpZGF0aW9uRXJyb3IoZW50
cnlQb2ludCwgR0xfSU5WQUxJRF9FTlVNLCBrSW52YWxpZFBuYW1lKTsKKyAgICAgICAgICAgIHJl
dHVybiBmYWxzZTsKKyAgICB9CisKKyAgICByZXR1cm4gdHJ1ZTsKK30KKworYm9vbCBWYWxpZGF0
ZUdldFBlcmZNb25pdG9yQ291bnRlclN0cmluZ0FNRChjb25zdCBDb250ZXh0ICpjb250ZXh0LAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbmdsZTo6RW50cnlQ
b2ludCBlbnRyeVBvaW50LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBHTHVpbnQgZ3JvdXAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIEdMdWludCBjb3VudGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBHTHNpemVpIGJ1ZlNpemUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGNvbnN0IEdMc2l6ZWkgKmxlbmd0aCwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgR0xjaGFyICpjb3VudGVyU3RyaW5nKQor
eworICAgIGlmICghY29udGV4dC0+Z2V0RXh0ZW5zaW9ucygpLnBlcmZvcm1hbmNlTW9uaXRvckFN
RCkKKyAgICB7CisgICAgICAgIGNvbnRleHQtPnZhbGlkYXRpb25FcnJvcihlbnRyeVBvaW50LCBH
TF9JTlZBTElEX09QRVJBVElPTiwga0V4dGVuc2lvbk5vdEVuYWJsZWQpOworICAgICAgICByZXR1
cm4gZmFsc2U7CisgICAgfQorCisgICAgY29uc3QgYW5nbGU6OlBlcmZNb25pdG9yQ291bnRlckdy
b3VwcyAmZ3JvdXBzID0gY29udGV4dC0+Z2V0UGVyZk1vbml0b3JDb3VudGVyR3JvdXBzKCk7CisK
KyAgICBpZiAoZ3JvdXAgPj0gZ3JvdXBzLnNpemUoKSkKKyAgICB7CisgICAgICAgIGNvbnRleHQt
PnZhbGlkYXRpb25FcnJvcihlbnRyeVBvaW50LCBHTF9JTlZBTElEX1ZBTFVFLCBrSW52YWxpZFBl
cmZNb25pdG9yR3JvdXApOworICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorCisgICAgaWYg
KGNvdW50ZXIgPj0gZ3JvdXBzW2dyb3VwXS5jb3VudGVycy5zaXplKCkpCisgICAgeworICAgICAg
ICBjb250ZXh0LT52YWxpZGF0aW9uRXJyb3IoZW50cnlQb2ludCwgR0xfSU5WQUxJRF9WQUxVRSwg
a0ludmFsaWRQZXJmTW9uaXRvckNvdW50ZXIpOworICAgICAgICByZXR1cm4gZmFsc2U7CisgICAg
fQorCisgICAgcmV0dXJuIHRydWU7Cit9CisKK2Jvb2wgVmFsaWRhdGVHZXRQZXJmTW9uaXRvckNv
dW50ZXJzQU1EKGNvbnN0IENvbnRleHQgKmNvbnRleHQsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBhbmdsZTo6RW50cnlQb2ludCBlbnRyeVBvaW50LAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50IGdyb3VwLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgR0xpbnQgKm51bUNvdW50ZXJzLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgR0xpbnQgKm1heEFjdGl2
ZUNvdW50ZXJzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXpl
aSBjb3VudGVyU2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNv
bnN0IEdMdWludCAqY291bnRlcnMpCit7CisgICAgaWYgKCFjb250ZXh0LT5nZXRFeHRlbnNpb25z
KCkucGVyZm9ybWFuY2VNb25pdG9yQU1EKQorICAgIHsKKyAgICAgICAgY29udGV4dC0+dmFsaWRh
dGlvbkVycm9yKGVudHJ5UG9pbnQsIEdMX0lOVkFMSURfT1BFUkFUSU9OLCBrRXh0ZW5zaW9uTm90
RW5hYmxlZCk7CisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisKKyAgICBjb25zdCBhbmds
ZTo6UGVyZk1vbml0b3JDb3VudGVyR3JvdXBzICZncm91cHMgPSBjb250ZXh0LT5nZXRQZXJmTW9u
aXRvckNvdW50ZXJHcm91cHMoKTsKKworICAgIGlmIChncm91cCA+PSBncm91cHMuc2l6ZSgpKQor
ICAgIHsKKyAgICAgICAgY29udGV4dC0+dmFsaWRhdGlvbkVycm9yKGVudHJ5UG9pbnQsIEdMX0lO
VkFMSURfVkFMVUUsIGtJbnZhbGlkUGVyZk1vbml0b3JHcm91cCk7CisgICAgICAgIHJldHVybiBm
YWxzZTsKKyAgICB9CisKKyAgICByZXR1cm4gdHJ1ZTsKK30KKworYm9vbCBWYWxpZGF0ZUdldFBl
cmZNb25pdG9yR3JvdXBTdHJpbmdBTUQoY29uc3QgQ29udGV4dCAqY29udGV4dCwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFuZ2xlOjpFbnRyeVBvaW50IGVudHJ5
UG9pbnQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVpbnQg
Z3JvdXAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHNpemVp
IGJ1ZlNpemUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25z
dCBHTHNpemVpICpsZW5ndGgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBjb25zdCBHTGNoYXIgKmdyb3VwU3RyaW5nKQoreworICAgIGlmICghY29udGV4dC0+Z2V0
RXh0ZW5zaW9ucygpLnBlcmZvcm1hbmNlTW9uaXRvckFNRCkKKyAgICB7CisgICAgICAgIGNvbnRl
eHQtPnZhbGlkYXRpb25FcnJvcihlbnRyeVBvaW50LCBHTF9JTlZBTElEX09QRVJBVElPTiwga0V4
dGVuc2lvbk5vdEVuYWJsZWQpOworICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorCisgICAg
Y29uc3QgYW5nbGU6OlBlcmZNb25pdG9yQ291bnRlckdyb3VwcyAmZ3JvdXBzID0gY29udGV4dC0+
Z2V0UGVyZk1vbml0b3JDb3VudGVyR3JvdXBzKCk7CisKKyAgICBpZiAoZ3JvdXAgPj0gZ3JvdXBz
LnNpemUoKSkKKyAgICB7CisgICAgICAgIGNvbnRleHQtPnZhbGlkYXRpb25FcnJvcihlbnRyeVBv
aW50LCBHTF9JTlZBTElEX1ZBTFVFLCBrSW52YWxpZFBlcmZNb25pdG9yR3JvdXApOworICAgICAg
ICByZXR1cm4gZmFsc2U7CisgICAgfQorCisgICAgcmV0dXJuIHRydWU7Cit9CisKK2Jvb2wgVmFs
aWRhdGVHZXRQZXJmTW9uaXRvckdyb3Vwc0FNRChjb25zdCBDb250ZXh0ICpjb250ZXh0LAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFuZ2xlOjpFbnRyeVBvaW50IGVudHJ5
UG9pbnQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgR0xpbnQg
Km51bUdyb3VwcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHNpemVp
IGdyb3Vwc1NpemUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qg
R0x1aW50ICpncm91cHMpCit7CisgICAgaWYgKCFjb250ZXh0LT5nZXRFeHRlbnNpb25zKCkucGVy
Zm9ybWFuY2VNb25pdG9yQU1EKQorICAgIHsKKyAgICAgICAgY29udGV4dC0+dmFsaWRhdGlvbkVy
cm9yKGVudHJ5UG9pbnQsIEdMX0lOVkFMSURfT1BFUkFUSU9OLCBrRXh0ZW5zaW9uTm90RW5hYmxl
ZCk7CisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisKKyAgICByZXR1cm4gdHJ1ZTsKK30K
KworYm9vbCBWYWxpZGF0ZVNlbGVjdFBlcmZNb25pdG9yQ291bnRlcnNBTUQoY29uc3QgQ29udGV4
dCAqY29udGV4dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFu
Z2xlOjpFbnRyeVBvaW50IGVudHJ5UG9pbnQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBHTHVpbnQgbW9uaXRvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIEdMYm9vbGVhbiBlbmFibGUsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBHTHVpbnQgZ3JvdXAsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBHTGludCBudW1Db3VudGVycywKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IEdMdWludCAqY291bnRlckxpc3QpCit7Cisg
ICAgaWYgKCFjb250ZXh0LT5nZXRFeHRlbnNpb25zKCkucGVyZm9ybWFuY2VNb25pdG9yQU1EKQor
ICAgIHsKKyAgICAgICAgY29udGV4dC0+dmFsaWRhdGlvbkVycm9yKGVudHJ5UG9pbnQsIEdMX0lO
VkFMSURfT1BFUkFUSU9OLCBrRXh0ZW5zaW9uTm90RW5hYmxlZCk7CisgICAgICAgIHJldHVybiBm
YWxzZTsKKyAgICB9CisKKyAgICBVTklNUExFTUVOVEVEKCk7CisgICAgcmV0dXJuIGZhbHNlOwor
fQogfSAgLy8gbmFtZXNwYWNlIGdsCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zcmMvbGliQU5HTEUvdmFsaWRhdGlvbkVTRVhUX2F1dG9nZW4uaCBiL1NvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL3NyYy9saWJBTkdMRS92YWxpZGF0aW9uRVNFWFRfYXV0b2dlbi5oCmluZGV4IDVi
NDZlM2Y3Y2RjN2M5YmZhODI5ZDFkMWE3YmY4YTUzYzQ2ZTk1MDUuLmI2YzZiMmJmNmFmMjhlMjIy
NmJkZDA0ZDQ2ZWVmOTEzYmJiZGFkNGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FO
R0xFL3NyYy9saWJBTkdMRS92YWxpZGF0aW9uRVNFWFRfYXV0b2dlbi5oCisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS92YWxpZGF0aW9uRVNFWFRfYXV0b2dlbi5oCkBA
IC0xOCw2ICsxOCw2NyBAQCBuYW1lc3BhY2UgZ2wKIHsKIGNsYXNzIENvbnRleHQ7CiAKKy8vIEdM
X0FNRF9wZXJmb3JtYW5jZV9tb25pdG9yCitib29sIFZhbGlkYXRlQmVnaW5QZXJmTW9uaXRvckFN
RChjb25zdCBDb250ZXh0ICpjb250ZXh0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgYW5nbGU6OkVudHJ5UG9pbnQgZW50cnlQb2ludCwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIEdMdWludCBtb25pdG9yKTsKK2Jvb2wgVmFsaWRhdGVEZWxldGVQZXJmTW9uaXRv
cnNBTUQoY29uc3QgQ29udGV4dCAqY29udGV4dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgYW5nbGU6OkVudHJ5UG9pbnQgZW50cnlQb2ludCwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgR0xzaXplaSBuLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBjb25zdCBHTHVpbnQgKm1vbml0b3JzKTsKK2Jvb2wgVmFsaWRhdGVFbmRQZXJmTW9u
aXRvckFNRChjb25zdCBDb250ZXh0ICpjb250ZXh0LAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGFuZ2xlOjpFbnRyeVBvaW50IGVudHJ5UG9pbnQsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgR0x1aW50IG1vbml0b3IpOworYm9vbCBWYWxpZGF0ZUdlblBlcmZNb25pdG9y
c0FNRChjb25zdCBDb250ZXh0ICpjb250ZXh0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBhbmdsZTo6RW50cnlQb2ludCBlbnRyeVBvaW50LAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBHTHNpemVpIG4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNv
bnN0IEdMdWludCAqbW9uaXRvcnMpOworYm9vbCBWYWxpZGF0ZUdldFBlcmZNb25pdG9yQ291bnRl
ckRhdGFBTUQoY29uc3QgQ29udGV4dCAqY29udGV4dCwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGFuZ2xlOjpFbnRyeVBvaW50IGVudHJ5UG9pbnQsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVpbnQgbW9uaXRvciwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMZW51bSBwbmFtZSwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgZGF0YVNpemUsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBHTHVpbnQgKmRh
dGEsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBHTGlu
dCAqYnl0ZXNXcml0dGVuKTsKK2Jvb2wgVmFsaWRhdGVHZXRQZXJmTW9uaXRvckNvdW50ZXJJbmZv
QU1EKGNvbnN0IENvbnRleHQgKmNvbnRleHQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBhbmdsZTo6RW50cnlQb2ludCBlbnRyeVBvaW50LAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50IGdyb3VwLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50IGNvdW50ZXIsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTGVudW0gcG5hbWUsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB2b2lkICpkYXRhKTsKK2Jvb2wg
VmFsaWRhdGVHZXRQZXJmTW9uaXRvckNvdW50ZXJTdHJpbmdBTUQoY29uc3QgQ29udGV4dCAqY29u
dGV4dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYW5nbGU6
OkVudHJ5UG9pbnQgZW50cnlQb2ludCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgR0x1aW50IGdyb3VwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBHTHVpbnQgY291bnRlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgR0xzaXplaSBidWZTaXplLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBHTHNpemVpICpsZW5ndGgsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IEdMY2hhciAqY291bnRlclN0
cmluZyk7Citib29sIFZhbGlkYXRlR2V0UGVyZk1vbml0b3JDb3VudGVyc0FNRChjb25zdCBDb250
ZXh0ICpjb250ZXh0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYW5n
bGU6OkVudHJ5UG9pbnQgZW50cnlQb2ludCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIEdMdWludCBncm91cCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGNvbnN0IEdMaW50ICpudW1Db3VudGVycywKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGNvbnN0IEdMaW50ICptYXhBY3RpdmVDb3VudGVycywKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgY291bnRlclNpemUsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBHTHVpbnQgKmNvdW50ZXJz
KTsKK2Jvb2wgVmFsaWRhdGVHZXRQZXJmTW9uaXRvckdyb3VwU3RyaW5nQU1EKGNvbnN0IENvbnRl
eHQgKmNvbnRleHQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBh
bmdsZTo6RW50cnlQb2ludCBlbnRyeVBvaW50LAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgR0x1aW50IGdyb3VwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgR0xzaXplaSBidWZTaXplLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgY29uc3QgR0xzaXplaSAqbGVuZ3RoLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgR0xjaGFyICpncm91cFN0cmluZyk7Citi
b29sIFZhbGlkYXRlR2V0UGVyZk1vbml0b3JHcm91cHNBTUQoY29uc3QgQ29udGV4dCAqY29udGV4
dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbmdsZTo6RW50cnlQb2lu
dCBlbnRyeVBvaW50LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0
IEdMaW50ICpudW1Hcm91cHMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
R0xzaXplaSBncm91cHNTaXplLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGNvbnN0IEdMdWludCAqZ3JvdXBzKTsKK2Jvb2wgVmFsaWRhdGVTZWxlY3RQZXJmTW9uaXRvckNv
dW50ZXJzQU1EKGNvbnN0IENvbnRleHQgKmNvbnRleHQsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBhbmdsZTo6RW50cnlQb2ludCBlbnRyeVBvaW50LAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50IG1vbml0b3IsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTGJvb2xlYW4gZW5hYmxlLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50IGdyb3VwLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xpbnQgbnVtQ291bnRl
cnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBHTHVp
bnQgKmNvdW50ZXJMaXN0KTsKKwogLy8gR0xfQU5EUk9JRF9leHRlbnNpb25fcGFja19lczMxYQog
CiAvLyBHTF9BTkdMRV9iYXNlX3ZlcnRleF9iYXNlX2luc3RhbmNlCkBAIC0zNCw3ICs5NSw3IEBA
IGJvb2wgVmFsaWRhdGVEcmF3RWxlbWVudHNJbnN0YW5jZWRCYXNlVmVydGV4QmFzZUluc3RhbmNl
QU5HTEUoY29uc3QgQ29udGV4dCAqY29uCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgY291bnQsCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIERyYXdF
bGVtZW50c1R5cGUgdHlwZVBhY2tlZCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgR0x2b2lkICppbmRpY2VzLAotICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBHTHNpemVpIGluc3RhbmNlQ291bnRzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHNpemVpIGluc3RhbmNlQ291bnQsCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIEdMaW50IGJhc2VWZXJ0ZXgsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMdWludCBiYXNlSW5zdGFuY2UpOwogYm9vbCBW
YWxpZGF0ZU11bHRpRHJhd0FycmF5c0luc3RhbmNlZEJhc2VJbnN0YW5jZUFOR0xFKGNvbnN0IENv
bnRleHQgKmNvbnRleHQsCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
bGliRUdML2VnbF9sb2FkZXJfYXV0b2dlbi5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9z
cmMvbGliRUdML2VnbF9sb2FkZXJfYXV0b2dlbi5jcHAKaW5kZXggNzZhMjg2Nzc5NWFjMmZhYTYw
ZWVhNWY1MTVlZGQ0Nzc2MmVhNGNmNy4uNzFhYjY5ZDRiN2Q0MTY3NmQxNGYwZTViOWNjY2Q1NTI1
NjY5Yjc0ZSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkVHTC9l
Z2xfbG9hZGVyX2F1dG9nZW4uY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9s
aWJFR0wvZWdsX2xvYWRlcl9hdXRvZ2VuLmNwcApAQCAtNjgsNiArNjgsNyBAQCBQRk5FR0xDUkVB
VEVERVZJQ0VBTkdMRVBST0MgbF9FR0xfQ3JlYXRlRGV2aWNlQU5HTEU7CiBQRk5FR0xSRUxFQVNF
REVWSUNFQU5HTEVQUk9DIGxfRUdMX1JlbGVhc2VEZXZpY2VBTkdMRTsKIFBGTkVHTFFVRVJZRElT
UExBWUFUVFJJQkFOR0xFUFJPQyBsX0VHTF9RdWVyeURpc3BsYXlBdHRyaWJBTkdMRTsKIFBGTkVH
TFFVRVJZU1RSSU5HSUFOR0xFUFJPQyBsX0VHTF9RdWVyeVN0cmluZ2lBTkdMRTsKK1BGTkVHTEZP
UkNFR1BVU1dJVENIQU5HTEVQUk9DIGxfRUdMX0ZvcmNlR1BVU3dpdGNoQU5HTEU7CiBQRk5FR0xI
QU5ETEVHUFVTV0lUQ0hBTkdMRVBST0MgbF9FR0xfSGFuZGxlR1BVU3dpdGNoQU5HTEU7CiBQRk5F
R0xSRUFDUVVJUkVISUdIUE9XRVJHUFVBTkdMRVBST0MgbF9FR0xfUmVhY3F1aXJlSGlnaFBvd2Vy
R1BVQU5HTEU7CiBQRk5FR0xSRUxFQVNFSElHSFBPV0VSR1BVQU5HTEVQUk9DIGxfRUdMX1JlbGVh
c2VIaWdoUG93ZXJHUFVBTkdMRTsKQEAgLTg2LDYgKzg3LDggQEAgUEZORUdMR0VUU1lOQ1ZBTFVF
U0NIUk9NSVVNUFJPQyBsX0VHTF9HZXRTeW5jVmFsdWVzQ0hST01JVU07CiBQRk5FR0xRVUVSWURF
VklDRUFUVFJJQkVYVFBST0MgbF9FR0xfUXVlcnlEZXZpY2VBdHRyaWJFWFQ7CiBQRk5FR0xRVUVS
WURFVklDRVNUUklOR0VYVFBST0MgbF9FR0xfUXVlcnlEZXZpY2VTdHJpbmdFWFQ7CiBQRk5FR0xR
VUVSWURJU1BMQVlBVFRSSUJFWFRQUk9DIGxfRUdMX1F1ZXJ5RGlzcGxheUF0dHJpYkVYVDsKK1BG
TkVHTFFVRVJZRE1BQlVGRk9STUFUU0VYVFBST0MgbF9FR0xfUXVlcnlEbWFCdWZGb3JtYXRzRVhU
OworUEZORUdMUVVFUllETUFCVUZNT0RJRklFUlNFWFRQUk9DIGxfRUdMX1F1ZXJ5RG1hQnVmTW9k
aWZpZXJzRVhUOwogUEZORUdMQ1JFQVRFUExBVEZPUk1QSVhNQVBTVVJGQUNFRVhUUFJPQyBsX0VH
TF9DcmVhdGVQbGF0Zm9ybVBpeG1hcFN1cmZhY2VFWFQ7CiBQRk5FR0xDUkVBVEVQTEFURk9STVdJ
TkRPV1NVUkZBQ0VFWFRQUk9DIGxfRUdMX0NyZWF0ZVBsYXRmb3JtV2luZG93U3VyZmFjZUVYVDsK
IFBGTkVHTEdFVFBMQVRGT1JNRElTUExBWUVYVFBST0MgbF9FR0xfR2V0UGxhdGZvcm1EaXNwbGF5
RVhUOwpAQCAtMjExLDYgKzIxNCw4IEBAIHZvaWQgTG9hZEVHTF9FR0woTG9hZFByb2MgbG9hZFBy
b2MpCiAgICAgICAgIGxvYWRQcm9jKCJFR0xfUXVlcnlEaXNwbGF5QXR0cmliQU5HTEUiKSk7CiAg
ICAgbF9FR0xfUXVlcnlTdHJpbmdpQU5HTEUgPQogICAgICAgICByZWludGVycHJldF9jYXN0PFBG
TkVHTFFVRVJZU1RSSU5HSUFOR0xFUFJPQz4obG9hZFByb2MoIkVHTF9RdWVyeVN0cmluZ2lBTkdM
RSIpKTsKKyAgICBsX0VHTF9Gb3JjZUdQVVN3aXRjaEFOR0xFID0KKyAgICAgICAgcmVpbnRlcnBy
ZXRfY2FzdDxQRk5FR0xGT1JDRUdQVVNXSVRDSEFOR0xFUFJPQz4obG9hZFByb2MoIkVHTF9Gb3Jj
ZUdQVVN3aXRjaEFOR0xFIikpOwogICAgIGxfRUdMX0hhbmRsZUdQVVN3aXRjaEFOR0xFID0KICAg
ICAgICAgcmVpbnRlcnByZXRfY2FzdDxQRk5FR0xIQU5ETEVHUFVTV0lUQ0hBTkdMRVBST0M+KGxv
YWRQcm9jKCJFR0xfSGFuZGxlR1BVU3dpdGNoQU5HTEUiKSk7CiAgICAgbF9FR0xfUmVhY3F1aXJl
SGlnaFBvd2VyR1BVQU5HTEUgPSByZWludGVycHJldF9jYXN0PFBGTkVHTFJFQUNRVUlSRUhJR0hQ
T1dFUkdQVUFOR0xFUFJPQz4oCkBAIC0yNDksNiArMjU0LDEwIEBAIHZvaWQgTG9hZEVHTF9FR0wo
TG9hZFByb2MgbG9hZFByb2MpCiAgICAgICAgIHJlaW50ZXJwcmV0X2Nhc3Q8UEZORUdMUVVFUllE
RVZJQ0VTVFJJTkdFWFRQUk9DPihsb2FkUHJvYygiRUdMX1F1ZXJ5RGV2aWNlU3RyaW5nRVhUIikp
OwogICAgIGxfRUdMX1F1ZXJ5RGlzcGxheUF0dHJpYkVYVCA9CiAgICAgICAgIHJlaW50ZXJwcmV0
X2Nhc3Q8UEZORUdMUVVFUllESVNQTEFZQVRUUklCRVhUUFJPQz4obG9hZFByb2MoIkVHTF9RdWVy
eURpc3BsYXlBdHRyaWJFWFQiKSk7CisgICAgbF9FR0xfUXVlcnlEbWFCdWZGb3JtYXRzRVhUID0K
KyAgICAgICAgcmVpbnRlcnByZXRfY2FzdDxQRk5FR0xRVUVSWURNQUJVRkZPUk1BVFNFWFRQUk9D
Pihsb2FkUHJvYygiRUdMX1F1ZXJ5RG1hQnVmRm9ybWF0c0VYVCIpKTsKKyAgICBsX0VHTF9RdWVy
eURtYUJ1Zk1vZGlmaWVyc0VYVCA9IHJlaW50ZXJwcmV0X2Nhc3Q8UEZORUdMUVVFUllETUFCVUZN
T0RJRklFUlNFWFRQUk9DPigKKyAgICAgICAgbG9hZFByb2MoIkVHTF9RdWVyeURtYUJ1Zk1vZGlm
aWVyc0VYVCIpKTsKICAgICBsX0VHTF9DcmVhdGVQbGF0Zm9ybVBpeG1hcFN1cmZhY2VFWFQgPQog
ICAgICAgICByZWludGVycHJldF9jYXN0PFBGTkVHTENSRUFURVBMQVRGT1JNUElYTUFQU1VSRkFD
RUVYVFBST0M+KAogICAgICAgICAgICAgbG9hZFByb2MoIkVHTF9DcmVhdGVQbGF0Zm9ybVBpeG1h
cFN1cmZhY2VFWFQiKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
bGliRUdML2VnbF9sb2FkZXJfYXV0b2dlbi5oIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3Jj
L2xpYkVHTC9lZ2xfbG9hZGVyX2F1dG9nZW4uaAppbmRleCA1MzY1Y2Q3MTY4ZjJjZWQ2OGE1YTZm
MWNkNDE4NTJkMzg1ZGNjNmJiLi45ZDE5ZDVkYjhjNGQ1MTA1MzdiZWU5OTE3YWYyNTg0ZjdlYjMy
MDliIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliRUdML2VnbF9s
b2FkZXJfYXV0b2dlbi5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJFR0wv
ZWdsX2xvYWRlcl9hdXRvZ2VuLmgKQEAgLTczLDYgKzczLDcgQEAKICNkZWZpbmUgRUdMX1JlbGVh
c2VEZXZpY2VBTkdMRSBsX0VHTF9SZWxlYXNlRGV2aWNlQU5HTEUKICNkZWZpbmUgRUdMX1F1ZXJ5
RGlzcGxheUF0dHJpYkFOR0xFIGxfRUdMX1F1ZXJ5RGlzcGxheUF0dHJpYkFOR0xFCiAjZGVmaW5l
IEVHTF9RdWVyeVN0cmluZ2lBTkdMRSBsX0VHTF9RdWVyeVN0cmluZ2lBTkdMRQorI2RlZmluZSBF
R0xfRm9yY2VHUFVTd2l0Y2hBTkdMRSBsX0VHTF9Gb3JjZUdQVVN3aXRjaEFOR0xFCiAjZGVmaW5l
IEVHTF9IYW5kbGVHUFVTd2l0Y2hBTkdMRSBsX0VHTF9IYW5kbGVHUFVTd2l0Y2hBTkdMRQogI2Rl
ZmluZSBFR0xfUmVhY3F1aXJlSGlnaFBvd2VyR1BVQU5HTEUgbF9FR0xfUmVhY3F1aXJlSGlnaFBv
d2VyR1BVQU5HTEUKICNkZWZpbmUgRUdMX1JlbGVhc2VIaWdoUG93ZXJHUFVBTkdMRSBsX0VHTF9S
ZWxlYXNlSGlnaFBvd2VyR1BVQU5HTEUKQEAgLTkxLDYgKzkyLDggQEAKICNkZWZpbmUgRUdMX1F1
ZXJ5RGV2aWNlQXR0cmliRVhUIGxfRUdMX1F1ZXJ5RGV2aWNlQXR0cmliRVhUCiAjZGVmaW5lIEVH
TF9RdWVyeURldmljZVN0cmluZ0VYVCBsX0VHTF9RdWVyeURldmljZVN0cmluZ0VYVAogI2RlZmlu
ZSBFR0xfUXVlcnlEaXNwbGF5QXR0cmliRVhUIGxfRUdMX1F1ZXJ5RGlzcGxheUF0dHJpYkVYVAor
I2RlZmluZSBFR0xfUXVlcnlEbWFCdWZGb3JtYXRzRVhUIGxfRUdMX1F1ZXJ5RG1hQnVmRm9ybWF0
c0VYVAorI2RlZmluZSBFR0xfUXVlcnlEbWFCdWZNb2RpZmllcnNFWFQgbF9FR0xfUXVlcnlEbWFC
dWZNb2RpZmllcnNFWFQKICNkZWZpbmUgRUdMX0NyZWF0ZVBsYXRmb3JtUGl4bWFwU3VyZmFjZUVY
VCBsX0VHTF9DcmVhdGVQbGF0Zm9ybVBpeG1hcFN1cmZhY2VFWFQKICNkZWZpbmUgRUdMX0NyZWF0
ZVBsYXRmb3JtV2luZG93U3VyZmFjZUVYVCBsX0VHTF9DcmVhdGVQbGF0Zm9ybVdpbmRvd1N1cmZh
Y2VFWFQKICNkZWZpbmUgRUdMX0dldFBsYXRmb3JtRGlzcGxheUVYVCBsX0VHTF9HZXRQbGF0Zm9y
bURpc3BsYXlFWFQKQEAgLTE4MSw2ICsxODQsNyBAQCBBTkdMRV9OT19FWFBPUlQgZXh0ZXJuIFBG
TkVHTENSRUFURURFVklDRUFOR0xFUFJPQyBsX0VHTF9DcmVhdGVEZXZpY2VBTkdMRTsKIEFOR0xF
X05PX0VYUE9SVCBleHRlcm4gUEZORUdMUkVMRUFTRURFVklDRUFOR0xFUFJPQyBsX0VHTF9SZWxl
YXNlRGV2aWNlQU5HTEU7CiBBTkdMRV9OT19FWFBPUlQgZXh0ZXJuIFBGTkVHTFFVRVJZRElTUExB
WUFUVFJJQkFOR0xFUFJPQyBsX0VHTF9RdWVyeURpc3BsYXlBdHRyaWJBTkdMRTsKIEFOR0xFX05P
X0VYUE9SVCBleHRlcm4gUEZORUdMUVVFUllTVFJJTkdJQU5HTEVQUk9DIGxfRUdMX1F1ZXJ5U3Ry
aW5naUFOR0xFOworQU5HTEVfTk9fRVhQT1JUIGV4dGVybiBQRk5FR0xGT1JDRUdQVVNXSVRDSEFO
R0xFUFJPQyBsX0VHTF9Gb3JjZUdQVVN3aXRjaEFOR0xFOwogQU5HTEVfTk9fRVhQT1JUIGV4dGVy
biBQRk5FR0xIQU5ETEVHUFVTV0lUQ0hBTkdMRVBST0MgbF9FR0xfSGFuZGxlR1BVU3dpdGNoQU5H
TEU7CiBBTkdMRV9OT19FWFBPUlQgZXh0ZXJuIFBGTkVHTFJFQUNRVUlSRUhJR0hQT1dFUkdQVUFO
R0xFUFJPQyBsX0VHTF9SZWFjcXVpcmVIaWdoUG93ZXJHUFVBTkdMRTsKIEFOR0xFX05PX0VYUE9S
VCBleHRlcm4gUEZORUdMUkVMRUFTRUhJR0hQT1dFUkdQVUFOR0xFUFJPQyBsX0VHTF9SZWxlYXNl
SGlnaFBvd2VyR1BVQU5HTEU7CkBAIC0yMDEsNiArMjA1LDggQEAgQU5HTEVfTk9fRVhQT1JUIGV4
dGVybiBQRk5FR0xHRVRTWU5DVkFMVUVTQ0hST01JVU1QUk9DIGxfRUdMX0dldFN5bmNWYWx1ZXND
SFJPTUkKIEFOR0xFX05PX0VYUE9SVCBleHRlcm4gUEZORUdMUVVFUllERVZJQ0VBVFRSSUJFWFRQ
Uk9DIGxfRUdMX1F1ZXJ5RGV2aWNlQXR0cmliRVhUOwogQU5HTEVfTk9fRVhQT1JUIGV4dGVybiBQ
Rk5FR0xRVUVSWURFVklDRVNUUklOR0VYVFBST0MgbF9FR0xfUXVlcnlEZXZpY2VTdHJpbmdFWFQ7
CiBBTkdMRV9OT19FWFBPUlQgZXh0ZXJuIFBGTkVHTFFVRVJZRElTUExBWUFUVFJJQkVYVFBST0Mg
bF9FR0xfUXVlcnlEaXNwbGF5QXR0cmliRVhUOworQU5HTEVfTk9fRVhQT1JUIGV4dGVybiBQRk5F
R0xRVUVSWURNQUJVRkZPUk1BVFNFWFRQUk9DIGxfRUdMX1F1ZXJ5RG1hQnVmRm9ybWF0c0VYVDsK
K0FOR0xFX05PX0VYUE9SVCBleHRlcm4gUEZORUdMUVVFUllETUFCVUZNT0RJRklFUlNFWFRQUk9D
IGxfRUdMX1F1ZXJ5RG1hQnVmTW9kaWZpZXJzRVhUOwogQU5HTEVfTk9fRVhQT1JUIGV4dGVybiBQ
Rk5FR0xDUkVBVEVQTEFURk9STVBJWE1BUFNVUkZBQ0VFWFRQUk9DCiAgICAgbF9FR0xfQ3JlYXRl
UGxhdGZvcm1QaXhtYXBTdXJmYWNlRVhUOwogQU5HTEVfTk9fRVhQT1JUIGV4dGVybiBQRk5FR0xD
UkVBVEVQTEFURk9STVdJTkRPV1NVUkZBQ0VFWFRQUk9DCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvbGliRUdML2xpYkVHTF9hdXRvZ2VuLmNwcCBiL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3NyYy9saWJFR0wvbGliRUdMX2F1dG9nZW4uY3BwCmluZGV4IGI0ZmUwMzFh
YjU5MGZiYzRiMTg3YzU0NWI5N2ExMWQ0ZTBhMTNjNGUuLmQ5MTc3YmVjYjU1YTY5OTc2MmQ4NDg1
M2ZjNDUzMmVjNzM3NWE4M2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3Ny
Yy9saWJFR0wvbGliRUdMX2F1dG9nZW4uY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy9saWJFR0wvbGliRUdMX2F1dG9nZW4uY3BwCkBAIC01MTQsNiArNTE0LDEyIEBAIHZvaWQg
RUdMQVBJRU5UUlkgZWdsSGFuZGxlR1BVU3dpdGNoQU5HTEUoRUdMRGlzcGxheSBkcHkpCiAgICAg
cmV0dXJuIEVHTF9IYW5kbGVHUFVTd2l0Y2hBTkdMRShkcHkpOwogfQogCit2b2lkIEVHTEFQSUVO
VFJZIGVnbEZvcmNlR1BVU3dpdGNoQU5HTEUoRUdMRGlzcGxheSBkcHksIEVHTGludCBncHVJREhp
Z2gsIEVHTGludCBncHVJRExvdykKK3sKKyAgICBFbnN1cmVFR0xMb2FkZWQoKTsKKyAgICByZXR1
cm4gRUdMX0ZvcmNlR1BVU3dpdGNoQU5HTEUoZHB5LCBncHVJREhpZ2gsIGdwdUlETG93KTsKK30K
KwogLy8gRUdMX0FOR0xFX3ByZXBhcmVfc3dhcF9idWZmZXJzCiBFR0xCb29sZWFuIEVHTEFQSUVO
VFJZIGVnbFByZXBhcmVTd2FwQnVmZmVyc0FOR0xFKEVHTERpc3BsYXkgZHB5LCBFR0xTdXJmYWNl
IHN1cmZhY2UpCiB7CkBAIC02NDQsNiArNjUwLDI4IEBAIEVHTEJvb2xlYW4gRUdMQVBJRU5UUlkg
ZWdsUXVlcnlEaXNwbGF5QXR0cmliRVhUKEVHTERpc3BsYXkgZHB5LCBFR0xpbnQgYXR0cmlidXRl
CiAgICAgcmV0dXJuIEVHTF9RdWVyeURpc3BsYXlBdHRyaWJFWFQoZHB5LCBhdHRyaWJ1dGUsIHZh
bHVlKTsKIH0KIAorLy8gRUdMX0VYVF9pbWFnZV9kbWFfYnVmX2ltcG9ydF9tb2RpZmllcnMKK0VH
TEJvb2xlYW4gRUdMQVBJRU5UUlkgZWdsUXVlcnlEbWFCdWZGb3JtYXRzRVhUKEVHTERpc3BsYXkg
ZHB5LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRUdM
aW50IG1heF9mb3JtYXRzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgRUdMaW50ICpmb3JtYXRzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgRUdMaW50ICpudW1fZm9ybWF0cykKK3sKKyAgICBFbnN1cmVFR0xM
b2FkZWQoKTsKKyAgICByZXR1cm4gRUdMX1F1ZXJ5RG1hQnVmRm9ybWF0c0VYVChkcHksIG1heF9m
b3JtYXRzLCBmb3JtYXRzLCBudW1fZm9ybWF0cyk7Cit9CisKK0VHTEJvb2xlYW4gRUdMQVBJRU5U
UlkgZWdsUXVlcnlEbWFCdWZNb2RpZmllcnNFWFQoRUdMRGlzcGxheSBkcHksCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVHTGludCBmb3JtYXQsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVHTGludCBt
YXhfbW9kaWZpZXJzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBFR0x1aW50NjRLSFIgKm1vZGlmaWVycywKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgRUdMQm9vbGVhbiAqZXh0ZXJuYWxfb25seSwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRUdMaW50ICpu
dW1fbW9kaWZpZXJzKQoreworICAgIEVuc3VyZUVHTExvYWRlZCgpOworICAgIHJldHVybiBFR0xf
UXVlcnlEbWFCdWZNb2RpZmllcnNFWFQoZHB5LCBmb3JtYXQsIG1heF9tb2RpZmllcnMsIG1vZGlm
aWVycywgZXh0ZXJuYWxfb25seSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIG51bV9tb2RpZmllcnMpOworfQorCiAvLyBFR0xfRVhUX3BsYXRmb3JtX2Jhc2UKIEVHTFN1
cmZhY2UgRUdMQVBJRU5UUlkgZWdsQ3JlYXRlUGxhdGZvcm1QaXhtYXBTdXJmYWNlRVhUKEVHTERp
c3BsYXkgZHB5LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgRUdMQ29uZmlnIGNvbmZpZywKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL3NyYy9saWJFR0wvbGliRUdMX2F1dG9nZW4uZGVmIGIvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL2xpYkVHTC9saWJFR0xfYXV0b2dlbi5kZWYKaW5kZXggMzk0YzkzZDE1OWNi
MTAwODNkNjg2ZGJmNTlkMDRjMTIxY2MyMjBiOC4uYWRkMzFmMTZiNTNmYTQxZTVmNjYwMjVjOTM0
OTcxYjFiODFmMjA2MSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xp
YkVHTC9saWJFR0xfYXV0b2dlbi5kZWYKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3Jj
L2xpYkVHTC9saWJFR0xfYXV0b2dlbi5kZWYKQEAgLTkyLDYgKzkyLDcgQEAgRVhQT1JUUwogICAg
IGVnbFF1ZXJ5U3RyaW5naUFOR0xFCiAKICAgICA7IEVHTF9BTkdMRV9wb3dlcl9wcmVmZXJlbmNl
CisgICAgZWdsRm9yY2VHUFVTd2l0Y2hBTkdMRQogICAgIGVnbEhhbmRsZUdQVVN3aXRjaEFOR0xF
CiAgICAgZWdsUmVhY3F1aXJlSGlnaFBvd2VyR1BVQU5HTEUKICAgICBlZ2xSZWxlYXNlSGlnaFBv
d2VyR1BVQU5HTEUKQEAgLTEyOSw2ICsxMzAsMTAgQEAgRVhQT1JUUwogICAgIGVnbFF1ZXJ5RGV2
aWNlU3RyaW5nRVhUCiAgICAgZWdsUXVlcnlEaXNwbGF5QXR0cmliRVhUCiAKKyAgICA7IEVHTF9F
WFRfaW1hZ2VfZG1hX2J1Zl9pbXBvcnRfbW9kaWZpZXJzCisgICAgZWdsUXVlcnlEbWFCdWZGb3Jt
YXRzRVhUCisgICAgZWdsUXVlcnlEbWFCdWZNb2RpZmllcnNFWFQKKwogICAgIDsgRUdMX0VYVF9w
bGF0Zm9ybV9iYXNlCiAgICAgZWdsQ3JlYXRlUGxhdGZvcm1QaXhtYXBTdXJmYWNlRVhUCiAgICAg
ZWdsQ3JlYXRlUGxhdGZvcm1XaW5kb3dTdXJmYWNlRVhUCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvbGliR0xFU3YyL2VnbF9leHRfc3R1YnMuY3BwIGIvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL2xpYkdMRVN2Mi9lZ2xfZXh0X3N0dWJzLmNwcAppbmRleCA1NDlh
YmJiOGI2NTllY2QzNTVlNDlmMjRkNDY4Y2U0NWQ2ZWJmOGU3Li4wYmQ3ZjBmZWE4OTE5ZTQ3ZTkw
YWY2YjY3Mzg1MjJlZTUyZjM3N2UwIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zcmMvbGliR0xFU3YyL2VnbF9leHRfc3R1YnMuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3NyYy9saWJHTEVTdjIvZWdsX2V4dF9zdHVicy5jcHAKQEAgLTE1LDYgKzE1LDcgQEAK
ICNpbmNsdWRlICJsaWJBTkdMRS9UaHJlYWQuaCIKICNpbmNsdWRlICJsaWJBTkdMRS9lbnRyeV9w
b2ludHNfdXRpbHMuaCIKICNpbmNsdWRlICJsaWJBTkdMRS9xdWVyeXV0aWxzLmgiCisjaW5jbHVk
ZSAibGliQU5HTEUvcmVuZGVyZXIvRGlzcGxheUltcGwuaCIKICNpbmNsdWRlICJsaWJBTkdMRS92
YWxpZGF0aW9uRUdMLmgiCiAjaW5jbHVkZSAibGliQU5HTEUvdmFsaWRhdGlvbkVHTF9hdXRvZ2Vu
LmgiCiAjaW5jbHVkZSAibGliR0xFU3YyL2dsb2JhbF9zdGF0ZS5oIgpAQCAtODgsOSArODksMjEg
QEAgRUdMU3VyZmFjZSBDcmVhdGVQbGF0Zm9ybVdpbmRvd1N1cmZhY2VFWFQoVGhyZWFkICp0aHJl
YWQsCiB7CiAgICAgQU5HTEVfRUdMX1RSWV9SRVRVUk4odGhyZWFkLCBkaXNwbGF5LT5wcmVwYXJl
Rm9yQ2FsbCgpLCAiZWdsQ3JlYXRlUGxhdGZvcm1XaW5kb3dTdXJmYWNlRVhUIiwKICAgICAgICAg
ICAgICAgICAgICAgICAgICBHZXREaXNwbGF5SWZWYWxpZChkaXNwbGF5KSwgRUdMX05PX1NVUkZB
Q0UpOwotICAgIHRocmVhZC0+c2V0RXJyb3IoRUdMX0JBRF9ESVNQTEFZLCAiZWdsQ3JlYXRlUGxh
dGZvcm1XaW5kb3dTdXJmYWNlRVhUIiwKLSAgICAgICAgICAgICAgICAgICAgIEdldERpc3BsYXlJ
ZlZhbGlkKGRpc3BsYXkpLCAiQ3JlYXRlUGxhdGZvcm1XaW5kb3dTdXJmYWNlRVhUIHVuaW1wbGVt
ZW50ZWQuIik7Ci0gICAgcmV0dXJuIEVHTF9OT19TVVJGQUNFOworICAgIFN1cmZhY2UgKnN1cmZh
Y2UgPSBudWxscHRyOworCisgICAgLy8gSW4gWDExLCBlZ2xDcmVhdGVQbGF0Zm9ybVdpbmRvd1N1
cmZhY2VFWFQgZXhwZWN0cyB0aGUgbmF0aXZlX3dpbmRvdyBhcmd1bWVudCB0byBiZSBhIHBvaW50
ZXIKKyAgICAvLyB0byBhIFdpbmRvdyB3aGlsZSB0aGUgRUdMTmF0aXZlV2luZG93VHlwZSBmb3Ig
WDExIGlzIGl0cyBhY3R1YWwgdmFsdWUuCisgICAgLy8gaHR0cHM6Ly93d3cua2hyb25vcy5vcmcv
cmVnaXN0cnkvRUdML2V4dGVuc2lvbnMvS0hSL0VHTF9LSFJfcGxhdGZvcm1feDExLnR4dAorICAg
IHZvaWQgKmFjdHVhbE5hdGl2ZVdpbmRvdyA9IGRpc3BsYXktPmdldEltcGxlbWVudGF0aW9uKCkt
PmlzWDExKCkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPyAqcmVpbnRlcnBy
ZXRfY2FzdDx2b2lkICoqPihuYXRpdmVfd2luZG93KQorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICA6IG5hdGl2ZV93aW5kb3c7CisgICAgRUdMTmF0aXZlV2luZG93VHlwZSBuYXRp
dmVXaW5kb3cgPSByZWludGVycHJldF9jYXN0PEVHTE5hdGl2ZVdpbmRvd1R5cGU+KGFjdHVhbE5h
dGl2ZVdpbmRvdyk7CisKKyAgICBBTkdMRV9FR0xfVFJZX1JFVFVSTigKKyAgICAgICAgdGhyZWFk
LCBkaXNwbGF5LT5jcmVhdGVXaW5kb3dTdXJmYWNlKGNvbmZpZ1BhY2tlZCwgbmF0aXZlV2luZG93
LCBhdHRyaWJ1dGVzLCAmc3VyZmFjZSksCisgICAgICAgICJlZ2xQbGF0Zm9ybUNyZWF0ZVdpbmRv
d1N1cmZhY2VFWFQiLCBHZXREaXNwbGF5SWZWYWxpZChkaXNwbGF5KSwgRUdMX05PX1NVUkZBQ0Up
OworCisgICAgcmV0dXJuIHN0YXRpY19jYXN0PEVHTFN1cmZhY2U+KHN1cmZhY2UpOwogfQogCiBF
R0xTdHJlYW1LSFIgQ3JlYXRlU3RyZWFtS0hSKFRocmVhZCAqdGhyZWFkLCBEaXNwbGF5ICpkaXNw
bGF5LCBjb25zdCBBdHRyaWJ1dGVNYXAgJmF0dHJpYnV0ZXMpCkBAIC04MTEsNiArODI0LDE2IEBA
IHZvaWQgSGFuZGxlR1BVU3dpdGNoQU5HTEUoVGhyZWFkICp0aHJlYWQsIERpc3BsYXkgKmRpc3Bs
YXkpCiAgICAgdGhyZWFkLT5zZXRTdWNjZXNzKCk7CiB9CiAKK3ZvaWQgRm9yY2VHUFVTd2l0Y2hB
TkdMRShUaHJlYWQgKnRocmVhZCwgRGlzcGxheSAqZGlzcGxheSwgRUdMaW50IGdwdUlESGlnaCwg
RUdMaW50IGdwdUlETG93KQoreworICAgIEFOR0xFX0VHTF9UUlkodGhyZWFkLCBkaXNwbGF5LT5w
cmVwYXJlRm9yQ2FsbCgpLCAiZWdsRm9yY2VHUFVTd2l0Y2hBTkdMRSIsCisgICAgICAgICAgICAg
ICAgICBHZXREaXNwbGF5SWZWYWxpZChkaXNwbGF5KSk7CisgICAgQU5HTEVfRUdMX1RSWSh0aHJl
YWQsIGRpc3BsYXktPmZvcmNlR1BVU3dpdGNoKGdwdUlESGlnaCwgZ3B1SURMb3cpLCAiZWdsRm9y
Y2VHUFVTd2l0Y2hBTkdMRSIsCisgICAgICAgICAgICAgICAgICBHZXREaXNwbGF5SWZWYWxpZChk
aXNwbGF5KSk7CisKKyAgICB0aHJlYWQtPnNldFN1Y2Nlc3MoKTsKK30KKwogRUdMQm9vbGVhbiBR
dWVyeURpc3BsYXlBdHRyaWJBTkdMRShUaHJlYWQgKnRocmVhZCwKICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgRGlzcGxheSAqZGlzcGxheSwKICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgRUdMaW50IGF0dHJpYnV0ZSwKQEAgLTg4NCw5ICs5MDcsNDIgQEAgRUdM
Qm9vbGVhbiBTZXREYW1hZ2VSZWdpb25LSFIoVGhyZWFkICp0aHJlYWQsCiB7CiAgICAgQU5HTEVf
RUdMX1RSWV9SRVRVUk4odGhyZWFkLCBkaXNwbGF5LT5wcmVwYXJlRm9yQ2FsbCgpLCAiZWdsU2V0
RGFtYWdlUmVnaW9uS0hSIiwKICAgICAgICAgICAgICAgICAgICAgICAgICBHZXREaXNwbGF5SWZW
YWxpZChkaXNwbGF5KSwgRUdMX0ZBTFNFKTsKKyAgICBzdXJmYWNlLT5zZXREYW1hZ2VSZWdpb24o
cmVjdHMsIG5fcmVjdHMpOwogCiAgICAgdGhyZWFkLT5zZXRTdWNjZXNzKCk7CiAgICAgcmV0dXJu
IEVHTF9UUlVFOwogfQogCitFR0xCb29sZWFuIFF1ZXJ5RG1hQnVmRm9ybWF0c0VYVChUaHJlYWQg
KnRocmVhZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVnbDo6RGlzcGxheSAq
ZGlzcGxheSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVHTGludCBtYXhfZm9y
bWF0cywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVHTGludCAqZm9ybWF0cywK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVHTGludCAqbnVtX2Zvcm1hdHMpCit7
CisgICAgQU5HTEVfRUdMX1RSWV9SRVRVUk4odGhyZWFkLCBkaXNwbGF5LT5wcmVwYXJlRm9yQ2Fs
bCgpLCAiZWdsUXVlcnlEbWFCdWZGb3JtYXRzRVhUIiwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICBHZXREaXNwbGF5SWZWYWxpZChkaXNwbGF5KSwgRUdMX0ZBTFNFKTsKKyAgICBBTkdMRV9FR0xf
VFJZX1JFVFVSTih0aHJlYWQsIGRpc3BsYXktPnF1ZXJ5RG1hQnVmRm9ybWF0cyhtYXhfZm9ybWF0
cywgZm9ybWF0cywgbnVtX2Zvcm1hdHMpLAorICAgICAgICAgICAgICAgICAgICAgICAgICJlZ2xR
dWVyeURtYUJ1ZkZvcm1hdHNFWFQiLCBHZXREaXNwbGF5SWZWYWxpZChkaXNwbGF5KSwgRUdMX0ZB
TFNFKTsKKyAgICB0aHJlYWQtPnNldFN1Y2Nlc3MoKTsKKyAgICByZXR1cm4gRUdMX1RSVUU7Cit9
CisKK0VHTEJvb2xlYW4gUXVlcnlEbWFCdWZNb2RpZmllcnNFWFQoVGhyZWFkICp0aHJlYWQsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVnbDo6RGlzcGxheSAqZGlzcGxheSwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRUdMaW50IGZvcm1hdCwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRUdMaW50IG1heF9tb2RpZmllcnMsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVHTHVpbnQ2NEtIUiAqbW9kaWZpZXJzLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFR0xCb29sZWFuICpleHRlcm5hbF9v
bmx5LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFR0xpbnQgKm51bV9tb2Rp
ZmllcnMpCit7CisgICAgQU5HTEVfRUdMX1RSWV9SRVRVUk4odGhyZWFkLCBkaXNwbGF5LT5wcmVw
YXJlRm9yQ2FsbCgpLCAiZWdsUXVlcnlEbWFCdWZNb2RpZmllcnNFWFQiLAorICAgICAgICAgICAg
ICAgICAgICAgICAgIEdldERpc3BsYXlJZlZhbGlkKGRpc3BsYXkpLCBFR0xfRkFMU0UpOworICAg
IEFOR0xFX0VHTF9UUllfUkVUVVJOKHRocmVhZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICBk
aXNwbGF5LT5xdWVyeURtYUJ1Zk1vZGlmaWVycyhmb3JtYXQsIG1heF9tb2RpZmllcnMsIG1vZGlm
aWVycywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBleHRlcm5hbF9vbmx5LCBudW1fbW9kaWZpZXJzKSwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAiZWdsUXVlcnlEbWFCdWZNb2RpZmllcnNFWFQiLCBHZXREaXNwbGF5SWZWYWxpZChkaXNw
bGF5KSwgRUdMX0ZBTFNFKTsKKyAgICB0aHJlYWQtPnNldFN1Y2Nlc3MoKTsKKyAgICByZXR1cm4g
RUdMX1RSVUU7Cit9CisKIH0gIC8vIG5hbWVzcGFjZSBlZ2wKZGlmZiAtLWdpdCBhL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3NyYy9saWJHTEVTdjIvZWdsX2V4dF9zdHVic19hdXRvZ2VuLmggYi9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliR0xFU3YyL2VnbF9leHRfc3R1YnNfYXV0b2dl
bi5oCmluZGV4IDU2MTY5YjMyYzliZTA3N2ZiMWY5NDljYWZkZjhhNDBhMmUxMWIzMjIuLmUyMzQz
MmU0YTMzZGE5MGI3NWIxODRjZTA2Mjg5YjI3YmVkZjRjMWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3NyYy9saWJHTEVTdjIvZWdsX2V4dF9zdHVic19hdXRvZ2VuLmgKKysr
IGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkdMRVN2Mi9lZ2xfZXh0X3N0dWJzX2F1
dG9nZW4uaApAQCAtMTM0LDYgKzEzNCwxOCBAQCBFR0xCb29sZWFuIFF1ZXJ5RGlzcGxheUF0dHJp
YkVYVChUaHJlYWQgKnRocmVhZCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVn
bDo6RGlzcGxheSAqZHB5UGFja2VkLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
RUdMaW50IGF0dHJpYnV0ZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVHTEF0
dHJpYiAqdmFsdWUpOworRUdMQm9vbGVhbiBRdWVyeURtYUJ1ZkZvcm1hdHNFWFQoVGhyZWFkICp0
aHJlYWQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlZ2w6OkRpc3BsYXkgKmRw
eVBhY2tlZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVHTGludCBtYXhfZm9y
bWF0cywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVHTGludCAqZm9ybWF0cywK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVHTGludCAqbnVtX2Zvcm1hdHMpOwor
RUdMQm9vbGVhbiBRdWVyeURtYUJ1Zk1vZGlmaWVyc0VYVChUaHJlYWQgKnRocmVhZCwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZWdsOjpEaXNwbGF5ICpkcHlQYWNrZWQsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVHTGludCBmb3JtYXQsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVHTGludCBtYXhfbW9kaWZpZXJzLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFR0x1aW50NjRLSFIgKm1vZGlmaWVycywKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRUdMQm9vbGVhbiAqZXh0ZXJuYWxfb25s
eSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRUdMaW50ICpudW1fbW9kaWZp
ZXJzKTsKIEVHTEJvb2xlYW4gUXVlcnlTdHJlYW1LSFIoVGhyZWFkICp0aHJlYWQsCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGVnbDo6RGlzcGxheSAqZHB5UGFja2VkLAogICAgICAgICAgICAg
ICAgICAgICAgICAgICBTdHJlYW0gKnN0cmVhbVBhY2tlZCwKQEAgLTIzNCw2ICsyNDYsMTAgQEAg
RUdMQm9vbGVhbiBQcmVwYXJlU3dhcEJ1ZmZlcnNBTkdMRShFR0xEaXNwbGF5IGRweSwgRUdMU3Vy
ZmFjZSBzdXJmYWNlKTsKIHZvaWQgUmVsZWFzZUhpZ2hQb3dlckdQVUFOR0xFKFRocmVhZCAqdGhy
ZWFkLCBlZ2w6OkRpc3BsYXkgKmRweVBhY2tlZCwgZ2w6OkNvbnRleHQgKmN0eFBhY2tlZCk7CiB2
b2lkIFJlYWNxdWlyZUhpZ2hQb3dlckdQVUFOR0xFKFRocmVhZCAqdGhyZWFkLCBlZ2w6OkRpc3Bs
YXkgKmRweVBhY2tlZCwgZ2w6OkNvbnRleHQgKmN0eFBhY2tlZCk7CiB2b2lkIEhhbmRsZUdQVVN3
aXRjaEFOR0xFKFRocmVhZCAqdGhyZWFkLCBlZ2w6OkRpc3BsYXkgKmRweVBhY2tlZCk7Cit2b2lk
IEZvcmNlR1BVU3dpdGNoQU5HTEUoVGhyZWFkICp0aHJlYWQsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgZWdsOjpEaXNwbGF5ICpkcHlQYWNrZWQsCisgICAgICAgICAgICAgICAgICAgICAgICAg
RUdMaW50IGdwdUlESGlnaCwKKyAgICAgICAgICAgICAgICAgICAgICAgICBFR0xpbnQgZ3B1SURM
b3cpOwogRUdMQm9vbGVhbiBRdWVyeURpc3BsYXlBdHRyaWJBTkdMRShUaHJlYWQgKnRocmVhZCwK
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZWdsOjpEaXNwbGF5ICpkcHlQYWNr
ZWQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVHTGludCBhdHRyaWJ1dGUs
CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliR0xFU3YyL2VudHJ5
X3BvaW50c19lZ2xfZXh0X2F1dG9nZW4uY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3Jj
L2xpYkdMRVN2Mi9lbnRyeV9wb2ludHNfZWdsX2V4dF9hdXRvZ2VuLmNwcAppbmRleCBkYzcxNTE0
YzU1YjcyYzNmY2RmMTlmNmJmYjgyZmUwNmZjMGQ0YjlkLi41MDVmYWM3YTUzM2U4MWYwMTFmY2I1
YzUxMjM5NGVhMjdjM2EzY2I4IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9z
cmMvbGliR0xFU3YyL2VudHJ5X3BvaW50c19lZ2xfZXh0X2F1dG9nZW4uY3BwCisrKyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJHTEVTdjIvZW50cnlfcG9pbnRzX2VnbF9leHRfYXV0
b2dlbi5jcHAKQEAgLTM2NCw2ICszNjQsMjMgQEAgdm9pZCBFR0xBUElFTlRSWSBFR0xfSGFuZGxl
R1BVU3dpdGNoQU5HTEUoRUdMRGlzcGxheSBkcHkpCiAgICAgSGFuZGxlR1BVU3dpdGNoQU5HTEUo
dGhyZWFkLCBkcHlQYWNrZWQpOwogfQogCit2b2lkIEVHTEFQSUVOVFJZIEVHTF9Gb3JjZUdQVVN3
aXRjaEFOR0xFKEVHTERpc3BsYXkgZHB5LCBFR0xpbnQgZ3B1SURIaWdoLCBFR0xpbnQgZ3B1SURM
b3cpCit7CisKKyAgICBBTkdMRV9TQ09QRURfR0xPQkFMX0xPQ0soKTsKKyAgICBFR0xfRVZFTlQo
Rm9yY2VHUFVTd2l0Y2hBTkdMRSwgImRweSA9IDB4JTAxNiIgUFJJeFBUUiAiLCBncHVJREhpZ2gg
PSAlZCwgZ3B1SURMb3cgPSAlZCIsCisgICAgICAgICAgICAgICh1aW50cHRyX3QpZHB5LCBncHVJ
REhpZ2gsIGdwdUlETG93KTsKKworICAgIFRocmVhZCAqdGhyZWFkID0gZWdsOjpHZXRDdXJyZW50
VGhyZWFkKCk7CisKKyAgICBlZ2w6OkRpc3BsYXkgKmRweVBhY2tlZCA9IFBhY2tQYXJhbTxlZ2w6
OkRpc3BsYXkgKj4oZHB5KTsKKworICAgIEFOR0xFX0VHTF9WQUxJREFURV9WT0lEKHRocmVhZCwg
Rm9yY2VHUFVTd2l0Y2hBTkdMRSwgR2V0RGlzcGxheUlmVmFsaWQoZHB5UGFja2VkKSwgZHB5UGFj
a2VkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdwdUlESGlnaCwgZ3B1SURMb3cpOwor
CisgICAgRm9yY2VHUFVTd2l0Y2hBTkdMRSh0aHJlYWQsIGRweVBhY2tlZCwgZ3B1SURIaWdoLCBn
cHVJRExvdyk7Cit9CisKIC8vIEVHTF9BTkdMRV9wcmVwYXJlX3N3YXBfYnVmZmVycwogRUdMQm9v
bGVhbiBFR0xBUElFTlRSWSBFR0xfUHJlcGFyZVN3YXBCdWZmZXJzQU5HTEUoRUdMRGlzcGxheSBk
cHksIEVHTFN1cmZhY2Ugc3VyZmFjZSkKIHsKQEAgLTY4MSw2ICs2OTgsNTUgQEAgRUdMQm9vbGVh
biBFR0xBUElFTlRSWSBFR0xfUXVlcnlEaXNwbGF5QXR0cmliRVhUKEVHTERpc3BsYXkgZHB5LCBF
R0xpbnQgYXR0cmlidXQKICAgICByZXR1cm4gUXVlcnlEaXNwbGF5QXR0cmliRVhUKHRocmVhZCwg
ZHB5UGFja2VkLCBhdHRyaWJ1dGUsIHZhbHVlKTsKIH0KIAorLy8gRUdMX0VYVF9pbWFnZV9kbWFf
YnVmX2ltcG9ydF9tb2RpZmllcnMKK0VHTEJvb2xlYW4gRUdMQVBJRU5UUlkgRUdMX1F1ZXJ5RG1h
QnVmRm9ybWF0c0VYVChFR0xEaXNwbGF5IGRweSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBFR0xpbnQgbWF4X2Zvcm1hdHMsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRUdMaW50ICpmb3JtYXRzLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVHTGludCAqbnVt
X2Zvcm1hdHMpCit7CisKKyAgICBBTkdMRV9TQ09QRURfR0xPQkFMX0xPQ0soKTsKKyAgICBFR0xf
RVZFTlQoUXVlcnlEbWFCdWZGb3JtYXRzRVhULAorICAgICAgICAgICAgICAiZHB5ID0gMHglMDE2
IiBQUkl4UFRSICIsIG1heF9mb3JtYXRzID0gJWQsIGZvcm1hdHMgPSAweCUwMTYiIFBSSXhQVFIK
KyAgICAgICAgICAgICAgIiwgbnVtX2Zvcm1hdHMgPSAweCUwMTYiIFBSSXhQVFIgIiIsCisgICAg
ICAgICAgICAgICh1aW50cHRyX3QpZHB5LCBtYXhfZm9ybWF0cywgKHVpbnRwdHJfdClmb3JtYXRz
LCAodWludHB0cl90KW51bV9mb3JtYXRzKTsKKworICAgIFRocmVhZCAqdGhyZWFkID0gZWdsOjpH
ZXRDdXJyZW50VGhyZWFkKCk7CisKKyAgICBlZ2w6OkRpc3BsYXkgKmRweVBhY2tlZCA9IFBhY2tQ
YXJhbTxlZ2w6OkRpc3BsYXkgKj4oZHB5KTsKKworICAgIEFOR0xFX0VHTF9WQUxJREFURSh0aHJl
YWQsIFF1ZXJ5RG1hQnVmRm9ybWF0c0VYVCwgR2V0RGlzcGxheUlmVmFsaWQoZHB5UGFja2VkKSwg
RUdMQm9vbGVhbiwKKyAgICAgICAgICAgICAgICAgICAgICAgZHB5UGFja2VkLCBtYXhfZm9ybWF0
cywgZm9ybWF0cywgbnVtX2Zvcm1hdHMpOworCisgICAgcmV0dXJuIFF1ZXJ5RG1hQnVmRm9ybWF0
c0VYVCh0aHJlYWQsIGRweVBhY2tlZCwgbWF4X2Zvcm1hdHMsIGZvcm1hdHMsIG51bV9mb3JtYXRz
KTsKK30KKworRUdMQm9vbGVhbiBFR0xBUElFTlRSWSBFR0xfUXVlcnlEbWFCdWZNb2RpZmllcnNF
WFQoRUdMRGlzcGxheSBkcHksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBFR0xpbnQgZm9ybWF0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgRUdMaW50IG1heF9tb2RpZmllcnMsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFR0x1aW50NjRLSFIgKm1v
ZGlmaWVycywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIEVHTEJvb2xlYW4gKmV4dGVybmFsX29ubHksCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBFR0xpbnQgKm51bV9tb2RpZmllcnMpCit7CisKKyAg
ICBBTkdMRV9TQ09QRURfR0xPQkFMX0xPQ0soKTsKKyAgICBFR0xfRVZFTlQoUXVlcnlEbWFCdWZN
b2RpZmllcnNFWFQsCisgICAgICAgICAgICAgICJkcHkgPSAweCUwMTYiIFBSSXhQVFIgIiwgZm9y
bWF0ID0gJWQsIG1heF9tb2RpZmllcnMgPSAlZCwgbW9kaWZpZXJzID0gMHglMDE2IiBQUkl4UFRS
CisgICAgICAgICAgICAgICIsIGV4dGVybmFsX29ubHkgPSAweCUwMTYiIFBSSXhQVFIgIiwgbnVt
X21vZGlmaWVycyA9IDB4JTAxNiIgUFJJeFBUUiAiIiwKKyAgICAgICAgICAgICAgKHVpbnRwdHJf
dClkcHksIGZvcm1hdCwgbWF4X21vZGlmaWVycywgKHVpbnRwdHJfdCltb2RpZmllcnMsICh1aW50
cHRyX3QpZXh0ZXJuYWxfb25seSwKKyAgICAgICAgICAgICAgKHVpbnRwdHJfdCludW1fbW9kaWZp
ZXJzKTsKKworICAgIFRocmVhZCAqdGhyZWFkID0gZWdsOjpHZXRDdXJyZW50VGhyZWFkKCk7CisK
KyAgICBlZ2w6OkRpc3BsYXkgKmRweVBhY2tlZCA9IFBhY2tQYXJhbTxlZ2w6OkRpc3BsYXkgKj4o
ZHB5KTsKKworICAgIEFOR0xFX0VHTF9WQUxJREFURSh0aHJlYWQsIFF1ZXJ5RG1hQnVmTW9kaWZp
ZXJzRVhULCBHZXREaXNwbGF5SWZWYWxpZChkcHlQYWNrZWQpLCBFR0xCb29sZWFuLAorICAgICAg
ICAgICAgICAgICAgICAgICBkcHlQYWNrZWQsIGZvcm1hdCwgbWF4X21vZGlmaWVycywgbW9kaWZp
ZXJzLCBleHRlcm5hbF9vbmx5LCBudW1fbW9kaWZpZXJzKTsKKworICAgIHJldHVybiBRdWVyeURt
YUJ1Zk1vZGlmaWVyc0VYVCh0aHJlYWQsIGRweVBhY2tlZCwgZm9ybWF0LCBtYXhfbW9kaWZpZXJz
LCBtb2RpZmllcnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4dGVybmFs
X29ubHksIG51bV9tb2RpZmllcnMpOworfQorCiAvLyBFR0xfRVhUX3BsYXRmb3JtX2Jhc2UKIEVH
TFN1cmZhY2UgRUdMQVBJRU5UUlkgRUdMX0NyZWF0ZVBsYXRmb3JtUGl4bWFwU3VyZmFjZUVYVChF
R0xEaXNwbGF5IGRweSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBFR0xDb25maWcgY29uZmlnLApkaWZmIC0tZ2l0IGEvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL2xpYkdMRVN2Mi9lbnRyeV9wb2ludHNfZWdsX2V4dF9hdXRvZ2Vu
LmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliR0xFU3YyL2VudHJ5X3BvaW50c19l
Z2xfZXh0X2F1dG9nZW4uaAppbmRleCAxZTg5OTc1YThmMWRiMTcyZGY1ZTMxNjU4NjNmYTA1OGU3
Y2MxMjcyLi42ZDk2N2YxYjJmNTAyOTgxMmI5MmE1YTFmNjE5ZWM3ZmRhODNmMmE1IDEwMDY0NAot
LS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliR0xFU3YyL2VudHJ5X3BvaW50c19l
Z2xfZXh0X2F1dG9nZW4uaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliR0xF
U3YyL2VudHJ5X3BvaW50c19lZ2xfZXh0X2F1dG9nZW4uaApAQCAtNzgsNiArNzgsOSBAQCBBTkdM
RV9FWFBPUlQgRUdMQm9vbGVhbiBFR0xBUElFTlRSWSBFR0xfUXVlcnlEaXNwbGF5QXR0cmliQU5H
TEUoRUdMRGlzcGxheSBkcHksCiBBTkdMRV9FWFBPUlQgdm9pZCBFR0xBUElFTlRSWSBFR0xfUmVs
ZWFzZUhpZ2hQb3dlckdQVUFOR0xFKEVHTERpc3BsYXkgZHB5LCBFR0xDb250ZXh0IGN0eCk7CiBB
TkdMRV9FWFBPUlQgdm9pZCBFR0xBUElFTlRSWSBFR0xfUmVhY3F1aXJlSGlnaFBvd2VyR1BVQU5H
TEUoRUdMRGlzcGxheSBkcHksIEVHTENvbnRleHQgY3R4KTsKIEFOR0xFX0VYUE9SVCB2b2lkIEVH
TEFQSUVOVFJZIEVHTF9IYW5kbGVHUFVTd2l0Y2hBTkdMRShFR0xEaXNwbGF5IGRweSk7CitBTkdM
RV9FWFBPUlQgdm9pZCBFR0xBUElFTlRSWSBFR0xfRm9yY2VHUFVTd2l0Y2hBTkdMRShFR0xEaXNw
bGF5IGRweSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIEVHTGludCBncHVJREhpZ2gsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBFR0xpbnQgZ3B1SURMb3cpOwogCiAvLyBFR0xfQU5HTEVf
cHJlcGFyZV9zd2FwX2J1ZmZlcnMKIEFOR0xFX0VYUE9SVCBFR0xCb29sZWFuIEVHTEFQSUVOVFJZ
IEVHTF9QcmVwYXJlU3dhcEJ1ZmZlcnNBTkdMRShFR0xEaXNwbGF5IGRweSwgRUdMU3VyZmFjZSBz
dXJmYWNlKTsKQEAgLTE0OSw2ICsxNTIsMTggQEAgQU5HTEVfRVhQT1JUIEVHTEJvb2xlYW4gRUdM
QVBJRU5UUlkgRUdMX1F1ZXJ5RGlzcGxheUF0dHJpYkVYVChFR0xEaXNwbGF5IGRweSwKICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
RUdMaW50IGF0dHJpYnV0ZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgRUdMQXR0cmliICp2YWx1ZSk7CiAKKy8vIEVHTF9FWFRf
aW1hZ2VfZG1hX2J1Zl9pbXBvcnRfbW9kaWZpZXJzCitBTkdMRV9FWFBPUlQgRUdMQm9vbGVhbiBF
R0xBUElFTlRSWSBFR0xfUXVlcnlEbWFCdWZGb3JtYXRzRVhUKEVHTERpc3BsYXkgZHB5LAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBFR0xpbnQgbWF4X2Zvcm1hdHMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVHTGludCAqZm9ybWF0cywKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRUdMaW50
ICpudW1fZm9ybWF0cyk7CitBTkdMRV9FWFBPUlQgRUdMQm9vbGVhbiBFR0xBUElFTlRSWSBFR0xf
UXVlcnlEbWFCdWZNb2RpZmllcnNFWFQoRUdMRGlzcGxheSBkcHksCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRUdMaW50IGZv
cm1hdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBFR0xpbnQgbWF4X21vZGlmaWVycywKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFR0x1aW50NjRLSFIg
Km1vZGlmaWVycywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBFR0xCb29sZWFuICpleHRlcm5hbF9vbmx5LAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVH
TGludCAqbnVtX21vZGlmaWVycyk7CisKIC8vIEVHTF9FWFRfcGxhdGZvcm1fYmFzZQogQU5HTEVf
RVhQT1JUIEVHTFN1cmZhY2UgRUdMQVBJRU5UUlkgRUdMX0NyZWF0ZVBsYXRmb3JtUGl4bWFwU3Vy
ZmFjZUVYVChFR0xEaXNwbGF5IGRweSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRUdMQ29uZmlnIGNvbmZpZywK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJHTEVTdjIvZW50cnlf
cG9pbnRzX2dsZXNfZXh0X2F1dG9nZW4uY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3Jj
L2xpYkdMRVN2Mi9lbnRyeV9wb2ludHNfZ2xlc19leHRfYXV0b2dlbi5jcHAKaW5kZXggMzgxMGQ5
MmNkNThkMjM5YjdkNDYzMGEwMmYxYTM4NWUzMDUwMzAxMi4uYTIzYzRmYmY1YTEwZDlhNGEzMWQ4
MzIzOGRjMzgyMDM3YWFjOWE1MyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUv
c3JjL2xpYkdMRVN2Mi9lbnRyeV9wb2ludHNfZ2xlc19leHRfYXV0b2dlbi5jcHAKKysrIGIvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkdMRVN2Mi9lbnRyeV9wb2ludHNfZ2xlc19leHRf
YXV0b2dlbi5jcHAKQEAgLTM2LDYgKzM2LDMyMiBAQCB1c2luZyBuYW1lc3BhY2UgZ2w7CiAKIGV4
dGVybiAiQyIgewogCisvLyBHTF9BTURfcGVyZm9ybWFuY2VfbW9uaXRvcgordm9pZCBHTF9BUElF
TlRSWSBHTF9CZWdpblBlcmZNb25pdG9yQU1EKEdMdWludCBtb25pdG9yKQoreworICAgIENvbnRl
eHQgKmNvbnRleHQgPSBHZXRWYWxpZEdsb2JhbENvbnRleHQoKTsKKyAgICBFVkVOVChjb250ZXh0
LCBHTEJlZ2luUGVyZk1vbml0b3JBTUQsICJjb250ZXh0ID0gJWQsIG1vbml0b3IgPSAldSIsIENJ
RChjb250ZXh0KSwgbW9uaXRvcik7CisKKyAgICBpZiAoY29udGV4dCkKKyAgICB7CisgICAgICAg
IHN0ZDo6dW5pcXVlX2xvY2s8YW5nbGU6Okdsb2JhbE11dGV4PiBzaGFyZUNvbnRleHRMb2NrID0g
R2V0Q29udGV4dExvY2soY29udGV4dCk7CisgICAgICAgIGJvb2wgaXNDYWxsVmFsaWQgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID0gKGNvbnRleHQtPnNraXBWYWxpZGF0aW9u
KCkgfHwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBWYWxpZGF0ZUJlZ2luUGVyZk1vbml0
b3JBTUQoCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRleHQsIGFuZ2xlOjpF
bnRyeVBvaW50OjpHTEJlZ2luUGVyZk1vbml0b3JBTUQsIG1vbml0b3IpKTsKKyAgICAgICAgaWYg
KGlzQ2FsbFZhbGlkKQorICAgICAgICB7CisgICAgICAgICAgICBjb250ZXh0LT5iZWdpblBlcmZN
b25pdG9yKG1vbml0b3IpOworICAgICAgICB9CisgICAgICAgIEFOR0xFX0NBUFRVUkUoQmVnaW5Q
ZXJmTW9uaXRvckFNRCwgaXNDYWxsVmFsaWQsIGNvbnRleHQsIG1vbml0b3IpOworICAgIH0KKyAg
ICBlbHNlCisgICAgeworICAgICAgICBHZW5lcmF0ZUNvbnRleHRMb3N0RXJyb3JPbkN1cnJlbnRH
bG9iYWxDb250ZXh0KCk7CisgICAgfQorfQorCit2b2lkIEdMX0FQSUVOVFJZIEdMX0RlbGV0ZVBl
cmZNb25pdG9yc0FNRChHTHNpemVpIG4sIEdMdWludCAqbW9uaXRvcnMpCit7CisgICAgQ29udGV4
dCAqY29udGV4dCA9IEdldFZhbGlkR2xvYmFsQ29udGV4dCgpOworICAgIEVWRU5UKGNvbnRleHQs
IEdMRGVsZXRlUGVyZk1vbml0b3JzQU1ELCAiY29udGV4dCA9ICVkLCBuID0gJWQsIG1vbml0b3Jz
ID0gMHglMDE2IiBQUkl4UFRSICIiLAorICAgICAgICAgIENJRChjb250ZXh0KSwgbiwgKHVpbnRw
dHJfdCltb25pdG9ycyk7CisKKyAgICBpZiAoY29udGV4dCkKKyAgICB7CisgICAgICAgIHN0ZDo6
dW5pcXVlX2xvY2s8YW5nbGU6Okdsb2JhbE11dGV4PiBzaGFyZUNvbnRleHRMb2NrID0gR2V0Q29u
dGV4dExvY2soY29udGV4dCk7CisgICAgICAgIGJvb2wgaXNDYWxsVmFsaWQgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgID0gKGNvbnRleHQtPnNraXBWYWxpZGF0aW9uKCkgfHwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICBWYWxpZGF0ZURlbGV0ZVBlcmZNb25pdG9yc0FN
RCgKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGV4dCwgYW5nbGU6OkVudHJ5
UG9pbnQ6OkdMRGVsZXRlUGVyZk1vbml0b3JzQU1ELCBuLCBtb25pdG9ycykpOworICAgICAgICBp
ZiAoaXNDYWxsVmFsaWQpCisgICAgICAgIHsKKyAgICAgICAgICAgIGNvbnRleHQtPmRlbGV0ZVBl
cmZNb25pdG9ycyhuLCBtb25pdG9ycyk7CisgICAgICAgIH0KKyAgICAgICAgQU5HTEVfQ0FQVFVS
RShEZWxldGVQZXJmTW9uaXRvcnNBTUQsIGlzQ2FsbFZhbGlkLCBjb250ZXh0LCBuLCBtb25pdG9y
cyk7CisgICAgfQorICAgIGVsc2UKKyAgICB7CisgICAgICAgIEdlbmVyYXRlQ29udGV4dExvc3RF
cnJvck9uQ3VycmVudEdsb2JhbENvbnRleHQoKTsKKyAgICB9Cit9CisKK3ZvaWQgR0xfQVBJRU5U
UlkgR0xfRW5kUGVyZk1vbml0b3JBTUQoR0x1aW50IG1vbml0b3IpCit7CisgICAgQ29udGV4dCAq
Y29udGV4dCA9IEdldFZhbGlkR2xvYmFsQ29udGV4dCgpOworICAgIEVWRU5UKGNvbnRleHQsIEdM
RW5kUGVyZk1vbml0b3JBTUQsICJjb250ZXh0ID0gJWQsIG1vbml0b3IgPSAldSIsIENJRChjb250
ZXh0KSwgbW9uaXRvcik7CisKKyAgICBpZiAoY29udGV4dCkKKyAgICB7CisgICAgICAgIHN0ZDo6
dW5pcXVlX2xvY2s8YW5nbGU6Okdsb2JhbE11dGV4PiBzaGFyZUNvbnRleHRMb2NrID0gR2V0Q29u
dGV4dExvY2soY29udGV4dCk7CisgICAgICAgIGJvb2wgaXNDYWxsVmFsaWQgPQorICAgICAgICAg
ICAgKGNvbnRleHQtPnNraXBWYWxpZGF0aW9uKCkgfHwKKyAgICAgICAgICAgICBWYWxpZGF0ZUVu
ZFBlcmZNb25pdG9yQU1EKGNvbnRleHQsIGFuZ2xlOjpFbnRyeVBvaW50OjpHTEVuZFBlcmZNb25p
dG9yQU1ELCBtb25pdG9yKSk7CisgICAgICAgIGlmIChpc0NhbGxWYWxpZCkKKyAgICAgICAgewor
ICAgICAgICAgICAgY29udGV4dC0+ZW5kUGVyZk1vbml0b3IobW9uaXRvcik7CisgICAgICAgIH0K
KyAgICAgICAgQU5HTEVfQ0FQVFVSRShFbmRQZXJmTW9uaXRvckFNRCwgaXNDYWxsVmFsaWQsIGNv
bnRleHQsIG1vbml0b3IpOworICAgIH0KKyAgICBlbHNlCisgICAgeworICAgICAgICBHZW5lcmF0
ZUNvbnRleHRMb3N0RXJyb3JPbkN1cnJlbnRHbG9iYWxDb250ZXh0KCk7CisgICAgfQorfQorCit2
b2lkIEdMX0FQSUVOVFJZIEdMX0dlblBlcmZNb25pdG9yc0FNRChHTHNpemVpIG4sIEdMdWludCAq
bW9uaXRvcnMpCit7CisgICAgQ29udGV4dCAqY29udGV4dCA9IEdldFZhbGlkR2xvYmFsQ29udGV4
dCgpOworICAgIEVWRU5UKGNvbnRleHQsIEdMR2VuUGVyZk1vbml0b3JzQU1ELCAiY29udGV4dCA9
ICVkLCBuID0gJWQsIG1vbml0b3JzID0gMHglMDE2IiBQUkl4UFRSICIiLAorICAgICAgICAgIENJ
RChjb250ZXh0KSwgbiwgKHVpbnRwdHJfdCltb25pdG9ycyk7CisKKyAgICBpZiAoY29udGV4dCkK
KyAgICB7CisgICAgICAgIHN0ZDo6dW5pcXVlX2xvY2s8YW5nbGU6Okdsb2JhbE11dGV4PiBzaGFy
ZUNvbnRleHRMb2NrID0gR2V0Q29udGV4dExvY2soY29udGV4dCk7CisgICAgICAgIGJvb2wgaXND
YWxsVmFsaWQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID0gKGNvbnRleHQt
PnNraXBWYWxpZGF0aW9uKCkgfHwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBWYWxpZGF0
ZUdlblBlcmZNb25pdG9yc0FNRCgKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29u
dGV4dCwgYW5nbGU6OkVudHJ5UG9pbnQ6OkdMR2VuUGVyZk1vbml0b3JzQU1ELCBuLCBtb25pdG9y
cykpOworICAgICAgICBpZiAoaXNDYWxsVmFsaWQpCisgICAgICAgIHsKKyAgICAgICAgICAgIGNv
bnRleHQtPmdlblBlcmZNb25pdG9ycyhuLCBtb25pdG9ycyk7CisgICAgICAgIH0KKyAgICAgICAg
QU5HTEVfQ0FQVFVSRShHZW5QZXJmTW9uaXRvcnNBTUQsIGlzQ2FsbFZhbGlkLCBjb250ZXh0LCBu
LCBtb25pdG9ycyk7CisgICAgfQorICAgIGVsc2UKKyAgICB7CisgICAgICAgIEdlbmVyYXRlQ29u
dGV4dExvc3RFcnJvck9uQ3VycmVudEdsb2JhbENvbnRleHQoKTsKKyAgICB9Cit9CisKK3ZvaWQg
R0xfQVBJRU5UUlkgR0xfR2V0UGVyZk1vbml0b3JDb3VudGVyRGF0YUFNRChHTHVpbnQgbW9uaXRv
ciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTGVu
dW0gcG5hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgR0xzaXplaSBkYXRhU2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBHTHVpbnQgKmRhdGEsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgR0xpbnQgKmJ5dGVzV3JpdHRlbikKK3sKKyAgICBDb250ZXh0
ICpjb250ZXh0ID0gR2V0VmFsaWRHbG9iYWxDb250ZXh0KCk7CisgICAgRVZFTlQoY29udGV4dCwg
R0xHZXRQZXJmTW9uaXRvckNvdW50ZXJEYXRhQU1ELAorICAgICAgICAgICJjb250ZXh0ID0gJWQs
IG1vbml0b3IgPSAldSwgcG5hbWUgPSAlcywgZGF0YVNpemUgPSAlZCwgZGF0YSA9IDB4JTAxNiIg
UFJJeFBUUgorICAgICAgICAgICIsIGJ5dGVzV3JpdHRlbiA9IDB4JTAxNiIgUFJJeFBUUiAiIiwK
KyAgICAgICAgICBDSUQoY29udGV4dCksIG1vbml0b3IsIEdMZW51bVRvU3RyaW5nKEdMZW51bUdy
b3VwOjpEZWZhdWx0R3JvdXAsIHBuYW1lKSwgZGF0YVNpemUsCisgICAgICAgICAgKHVpbnRwdHJf
dClkYXRhLCAodWludHB0cl90KWJ5dGVzV3JpdHRlbik7CisKKyAgICBpZiAoY29udGV4dCkKKyAg
ICB7CisgICAgICAgIHN0ZDo6dW5pcXVlX2xvY2s8YW5nbGU6Okdsb2JhbE11dGV4PiBzaGFyZUNv
bnRleHRMb2NrID0gR2V0Q29udGV4dExvY2soY29udGV4dCk7CisgICAgICAgIGJvb2wgaXNDYWxs
VmFsaWQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID0gKGNvbnRleHQtPnNr
aXBWYWxpZGF0aW9uKCkgfHwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBWYWxpZGF0ZUdl
dFBlcmZNb25pdG9yQ291bnRlckRhdGFBTUQoCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGNvbnRleHQsIGFuZ2xlOjpFbnRyeVBvaW50OjpHTEdldFBlcmZNb25pdG9yQ291bnRlckRh
dGFBTUQsIG1vbml0b3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBuYW1lLCBk
YXRhU2l6ZSwgZGF0YSwgYnl0ZXNXcml0dGVuKSk7CisgICAgICAgIGlmIChpc0NhbGxWYWxpZCkK
KyAgICAgICAgeworICAgICAgICAgICAgY29udGV4dC0+Z2V0UGVyZk1vbml0b3JDb3VudGVyRGF0
YShtb25pdG9yLCBwbmFtZSwgZGF0YVNpemUsIGRhdGEsIGJ5dGVzV3JpdHRlbik7CisgICAgICAg
IH0KKyAgICAgICAgQU5HTEVfQ0FQVFVSRShHZXRQZXJmTW9uaXRvckNvdW50ZXJEYXRhQU1ELCBp
c0NhbGxWYWxpZCwgY29udGV4dCwgbW9uaXRvciwgcG5hbWUsIGRhdGFTaXplLAorICAgICAgICAg
ICAgICAgICAgICAgIGRhdGEsIGJ5dGVzV3JpdHRlbik7CisgICAgfQorICAgIGVsc2UKKyAgICB7
CisgICAgICAgIEdlbmVyYXRlQ29udGV4dExvc3RFcnJvck9uQ3VycmVudEdsb2JhbENvbnRleHQo
KTsKKyAgICB9Cit9CisKK3ZvaWQgR0xfQVBJRU5UUlkgR0xfR2V0UGVyZk1vbml0b3JDb3VudGVy
SW5mb0FNRChHTHVpbnQgZ3JvdXAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgR0x1aW50IGNvdW50ZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgR0xlbnVtIHBuYW1lLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZvaWQgKmRhdGEpCit7CisgICAgQ29udGV4
dCAqY29udGV4dCA9IEdldFZhbGlkR2xvYmFsQ29udGV4dCgpOworICAgIEVWRU5UKGNvbnRleHQs
IEdMR2V0UGVyZk1vbml0b3JDb3VudGVySW5mb0FNRCwKKyAgICAgICAgICAiY29udGV4dCA9ICVk
LCBncm91cCA9ICV1LCBjb3VudGVyID0gJXUsIHBuYW1lID0gJXMsIGRhdGEgPSAweCUwMTYiIFBS
SXhQVFIgIiIsCisgICAgICAgICAgQ0lEKGNvbnRleHQpLCBncm91cCwgY291bnRlciwgR0xlbnVt
VG9TdHJpbmcoR0xlbnVtR3JvdXA6OkRlZmF1bHRHcm91cCwgcG5hbWUpLAorICAgICAgICAgICh1
aW50cHRyX3QpZGF0YSk7CisKKyAgICBpZiAoY29udGV4dCkKKyAgICB7CisgICAgICAgIHN0ZDo6
dW5pcXVlX2xvY2s8YW5nbGU6Okdsb2JhbE11dGV4PiBzaGFyZUNvbnRleHRMb2NrID0gR2V0Q29u
dGV4dExvY2soY29udGV4dCk7CisgICAgICAgIGJvb2wgaXNDYWxsVmFsaWQgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgID0gKGNvbnRleHQtPnNraXBWYWxpZGF0aW9uKCkgfHwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICBWYWxpZGF0ZUdldFBlcmZNb25pdG9yQ291bnRl
ckluZm9BTUQoCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRleHQsIGFuZ2xl
OjpFbnRyeVBvaW50OjpHTEdldFBlcmZNb25pdG9yQ291bnRlckluZm9BTUQsIGdyb3VwLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb3VudGVyLCBwbmFtZSwgZGF0YSkpOworICAg
ICAgICBpZiAoaXNDYWxsVmFsaWQpCisgICAgICAgIHsKKyAgICAgICAgICAgIGNvbnRleHQtPmdl
dFBlcmZNb25pdG9yQ291bnRlckluZm8oZ3JvdXAsIGNvdW50ZXIsIHBuYW1lLCBkYXRhKTsKKyAg
ICAgICAgfQorICAgICAgICBBTkdMRV9DQVBUVVJFKEdldFBlcmZNb25pdG9yQ291bnRlckluZm9B
TUQsIGlzQ2FsbFZhbGlkLCBjb250ZXh0LCBncm91cCwgY291bnRlciwgcG5hbWUsCisgICAgICAg
ICAgICAgICAgICAgICAgZGF0YSk7CisgICAgfQorICAgIGVsc2UKKyAgICB7CisgICAgICAgIEdl
bmVyYXRlQ29udGV4dExvc3RFcnJvck9uQ3VycmVudEdsb2JhbENvbnRleHQoKTsKKyAgICB9Cit9
CisKK3ZvaWQgR0xfQVBJRU5UUlkgR0xfR2V0UGVyZk1vbml0b3JDb3VudGVyU3RyaW5nQU1EKEdM
dWludCBncm91cCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIEdMdWludCBjb3VudGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgR0xzaXplaSBidWZTaXplLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSAqbGVuZ3RoLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xjaGFyICpjb3VudGVy
U3RyaW5nKQoreworICAgIENvbnRleHQgKmNvbnRleHQgPSBHZXRWYWxpZEdsb2JhbENvbnRleHQo
KTsKKyAgICBFVkVOVChjb250ZXh0LCBHTEdldFBlcmZNb25pdG9yQ291bnRlclN0cmluZ0FNRCwK
KyAgICAgICAgICAiY29udGV4dCA9ICVkLCBncm91cCA9ICV1LCBjb3VudGVyID0gJXUsIGJ1ZlNp
emUgPSAlZCwgbGVuZ3RoID0gMHglMDE2IiBQUkl4UFRSCisgICAgICAgICAgIiwgY291bnRlclN0
cmluZyA9IDB4JTAxNiIgUFJJeFBUUiAiIiwKKyAgICAgICAgICBDSUQoY29udGV4dCksIGdyb3Vw
LCBjb3VudGVyLCBidWZTaXplLCAodWludHB0cl90KWxlbmd0aCwgKHVpbnRwdHJfdCljb3VudGVy
U3RyaW5nKTsKKworICAgIGlmIChjb250ZXh0KQorICAgIHsKKyAgICAgICAgc3RkOjp1bmlxdWVf
bG9jazxhbmdsZTo6R2xvYmFsTXV0ZXg+IHNoYXJlQ29udGV4dExvY2sgPSBHZXRDb250ZXh0TG9j
ayhjb250ZXh0KTsKKyAgICAgICAgYm9vbCBpc0NhbGxWYWxpZCAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgPSAoY29udGV4dC0+c2tpcFZhbGlkYXRpb24oKSB8fAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIFZhbGlkYXRlR2V0UGVyZk1vbml0b3JDb3VudGVyU3RyaW5n
QU1EKAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZXh0LCBhbmdsZTo6RW50
cnlQb2ludDo6R0xHZXRQZXJmTW9uaXRvckNvdW50ZXJTdHJpbmdBTUQsIGdyb3VwLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBjb3VudGVyLCBidWZTaXplLCBsZW5ndGgsIGNvdW50
ZXJTdHJpbmcpKTsKKyAgICAgICAgaWYgKGlzQ2FsbFZhbGlkKQorICAgICAgICB7CisgICAgICAg
ICAgICBjb250ZXh0LT5nZXRQZXJmTW9uaXRvckNvdW50ZXJTdHJpbmcoZ3JvdXAsIGNvdW50ZXIs
IGJ1ZlNpemUsIGxlbmd0aCwgY291bnRlclN0cmluZyk7CisgICAgICAgIH0KKyAgICAgICAgQU5H
TEVfQ0FQVFVSRShHZXRQZXJmTW9uaXRvckNvdW50ZXJTdHJpbmdBTUQsIGlzQ2FsbFZhbGlkLCBj
b250ZXh0LCBncm91cCwgY291bnRlciwgYnVmU2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICBs
ZW5ndGgsIGNvdW50ZXJTdHJpbmcpOworICAgIH0KKyAgICBlbHNlCisgICAgeworICAgICAgICBH
ZW5lcmF0ZUNvbnRleHRMb3N0RXJyb3JPbkN1cnJlbnRHbG9iYWxDb250ZXh0KCk7CisgICAgfQor
fQorCit2b2lkIEdMX0FQSUVOVFJZIEdMX0dldFBlcmZNb25pdG9yQ291bnRlcnNBTUQoR0x1aW50
IGdyb3VwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdM
aW50ICpudW1Db3VudGVycywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBHTGludCAqbWF4QWN0aXZlQ291bnRlcnMsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBjb3VudGVyU2l6ZSwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVpbnQgKmNvdW50ZXJzKQorewor
ICAgIENvbnRleHQgKmNvbnRleHQgPSBHZXRWYWxpZEdsb2JhbENvbnRleHQoKTsKKyAgICBFVkVO
VChjb250ZXh0LCBHTEdldFBlcmZNb25pdG9yQ291bnRlcnNBTUQsCisgICAgICAgICAgImNvbnRl
eHQgPSAlZCwgZ3JvdXAgPSAldSwgbnVtQ291bnRlcnMgPSAweCUwMTYiIFBSSXhQVFIKKyAgICAg
ICAgICAiLCBtYXhBY3RpdmVDb3VudGVycyA9IDB4JTAxNiIgUFJJeFBUUiAiLCBjb3VudGVyU2l6
ZSA9ICVkLCBjb3VudGVycyA9IDB4JTAxNiIgUFJJeFBUUiAiIiwKKyAgICAgICAgICBDSUQoY29u
dGV4dCksIGdyb3VwLCAodWludHB0cl90KW51bUNvdW50ZXJzLCAodWludHB0cl90KW1heEFjdGl2
ZUNvdW50ZXJzLCBjb3VudGVyU2l6ZSwKKyAgICAgICAgICAodWludHB0cl90KWNvdW50ZXJzKTsK
KworICAgIGlmIChjb250ZXh0KQorICAgIHsKKyAgICAgICAgc3RkOjp1bmlxdWVfbG9jazxhbmds
ZTo6R2xvYmFsTXV0ZXg+IHNoYXJlQ29udGV4dExvY2sgPSBHZXRDb250ZXh0TG9jayhjb250ZXh0
KTsKKyAgICAgICAgYm9vbCBpc0NhbGxWYWxpZCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgPSAoY29udGV4dC0+c2tpcFZhbGlkYXRpb24oKSB8fAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFZhbGlkYXRlR2V0UGVyZk1vbml0b3JDb3VudGVyc0FNRCgKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgY29udGV4dCwgYW5nbGU6OkVudHJ5UG9pbnQ6OkdMR2V0
UGVyZk1vbml0b3JDb3VudGVyc0FNRCwgZ3JvdXAsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIG51bUNvdW50ZXJzLCBtYXhBY3RpdmVDb3VudGVycywgY291bnRlclNpemUsIGNvdW50
ZXJzKSk7CisgICAgICAgIGlmIChpc0NhbGxWYWxpZCkKKyAgICAgICAgeworICAgICAgICAgICAg
Y29udGV4dC0+Z2V0UGVyZk1vbml0b3JDb3VudGVycyhncm91cCwgbnVtQ291bnRlcnMsIG1heEFj
dGl2ZUNvdW50ZXJzLCBjb3VudGVyU2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgY291bnRlcnMpOworICAgICAgICB9CisgICAgICAgIEFOR0xFX0NBUFRV
UkUoR2V0UGVyZk1vbml0b3JDb3VudGVyc0FNRCwgaXNDYWxsVmFsaWQsIGNvbnRleHQsIGdyb3Vw
LCBudW1Db3VudGVycywKKyAgICAgICAgICAgICAgICAgICAgICBtYXhBY3RpdmVDb3VudGVycywg
Y291bnRlclNpemUsIGNvdW50ZXJzKTsKKyAgICB9CisgICAgZWxzZQorICAgIHsKKyAgICAgICAg
R2VuZXJhdGVDb250ZXh0TG9zdEVycm9yT25DdXJyZW50R2xvYmFsQ29udGV4dCgpOworICAgIH0K
K30KKwordm9pZCBHTF9BUElFTlRSWSBHTF9HZXRQZXJmTW9uaXRvckdyb3VwU3RyaW5nQU1EKEdM
dWludCBncm91cCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBHTHNpemVpIGJ1ZlNpemUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgR0xzaXplaSAqbGVuZ3RoLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIEdMY2hhciAqZ3JvdXBTdHJpbmcpCit7CisgICAgQ29u
dGV4dCAqY29udGV4dCA9IEdldFZhbGlkR2xvYmFsQ29udGV4dCgpOworICAgIEVWRU5UKGNvbnRl
eHQsIEdMR2V0UGVyZk1vbml0b3JHcm91cFN0cmluZ0FNRCwKKyAgICAgICAgICAiY29udGV4dCA9
ICVkLCBncm91cCA9ICV1LCBidWZTaXplID0gJWQsIGxlbmd0aCA9IDB4JTAxNiIgUFJJeFBUUgor
ICAgICAgICAgICIsIGdyb3VwU3RyaW5nID0gMHglMDE2IiBQUkl4UFRSICIiLAorICAgICAgICAg
IENJRChjb250ZXh0KSwgZ3JvdXAsIGJ1ZlNpemUsICh1aW50cHRyX3QpbGVuZ3RoLCAodWludHB0
cl90KWdyb3VwU3RyaW5nKTsKKworICAgIGlmIChjb250ZXh0KQorICAgIHsKKyAgICAgICAgc3Rk
Ojp1bmlxdWVfbG9jazxhbmdsZTo6R2xvYmFsTXV0ZXg+IHNoYXJlQ29udGV4dExvY2sgPSBHZXRD
b250ZXh0TG9jayhjb250ZXh0KTsKKyAgICAgICAgYm9vbCBpc0NhbGxWYWxpZCAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgPSAoY29udGV4dC0+c2tpcFZhbGlkYXRpb24oKSB8
fAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZhbGlkYXRlR2V0UGVyZk1vbml0b3JHcm91
cFN0cmluZ0FNRCgKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGV4dCwgYW5n
bGU6OkVudHJ5UG9pbnQ6OkdMR2V0UGVyZk1vbml0b3JHcm91cFN0cmluZ0FNRCwgZ3JvdXAsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ1ZlNpemUsIGxlbmd0aCwgZ3JvdXBTdHJp
bmcpKTsKKyAgICAgICAgaWYgKGlzQ2FsbFZhbGlkKQorICAgICAgICB7CisgICAgICAgICAgICBj
b250ZXh0LT5nZXRQZXJmTW9uaXRvckdyb3VwU3RyaW5nKGdyb3VwLCBidWZTaXplLCBsZW5ndGgs
IGdyb3VwU3RyaW5nKTsKKyAgICAgICAgfQorICAgICAgICBBTkdMRV9DQVBUVVJFKEdldFBlcmZN
b25pdG9yR3JvdXBTdHJpbmdBTUQsIGlzQ2FsbFZhbGlkLCBjb250ZXh0LCBncm91cCwgYnVmU2l6
ZSwgbGVuZ3RoLAorICAgICAgICAgICAgICAgICAgICAgIGdyb3VwU3RyaW5nKTsKKyAgICB9Cisg
ICAgZWxzZQorICAgIHsKKyAgICAgICAgR2VuZXJhdGVDb250ZXh0TG9zdEVycm9yT25DdXJyZW50
R2xvYmFsQ29udGV4dCgpOworICAgIH0KK30KKwordm9pZCBHTF9BUElFTlRSWSBHTF9HZXRQZXJm
TW9uaXRvckdyb3Vwc0FNRChHTGludCAqbnVtR3JvdXBzLCBHTHNpemVpIGdyb3Vwc1NpemUsIEdM
dWludCAqZ3JvdXBzKQoreworICAgIENvbnRleHQgKmNvbnRleHQgPSBHZXRWYWxpZEdsb2JhbENv
bnRleHQoKTsKKyAgICBFVkVOVChjb250ZXh0LCBHTEdldFBlcmZNb25pdG9yR3JvdXBzQU1ELAor
ICAgICAgICAgICJjb250ZXh0ID0gJWQsIG51bUdyb3VwcyA9IDB4JTAxNiIgUFJJeFBUUiAiLCBn
cm91cHNTaXplID0gJWQsIGdyb3VwcyA9IDB4JTAxNiIgUFJJeFBUUgorICAgICAgICAgICIiLAor
ICAgICAgICAgIENJRChjb250ZXh0KSwgKHVpbnRwdHJfdCludW1Hcm91cHMsIGdyb3Vwc1NpemUs
ICh1aW50cHRyX3QpZ3JvdXBzKTsKKworICAgIGlmIChjb250ZXh0KQorICAgIHsKKyAgICAgICAg
c3RkOjp1bmlxdWVfbG9jazxhbmdsZTo6R2xvYmFsTXV0ZXg+IHNoYXJlQ29udGV4dExvY2sgPSBH
ZXRDb250ZXh0TG9jayhjb250ZXh0KTsKKyAgICAgICAgYm9vbCBpc0NhbGxWYWxpZCA9CisgICAg
ICAgICAgICAoY29udGV4dC0+c2tpcFZhbGlkYXRpb24oKSB8fAorICAgICAgICAgICAgIFZhbGlk
YXRlR2V0UGVyZk1vbml0b3JHcm91cHNBTUQoY29udGV4dCwgYW5nbGU6OkVudHJ5UG9pbnQ6OkdM
R2V0UGVyZk1vbml0b3JHcm91cHNBTUQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBudW1Hcm91cHMsIGdyb3Vwc1NpemUsIGdyb3VwcykpOworICAgICAgICBp
ZiAoaXNDYWxsVmFsaWQpCisgICAgICAgIHsKKyAgICAgICAgICAgIGNvbnRleHQtPmdldFBlcmZN
b25pdG9yR3JvdXBzKG51bUdyb3VwcywgZ3JvdXBzU2l6ZSwgZ3JvdXBzKTsKKyAgICAgICAgfQor
ICAgICAgICBBTkdMRV9DQVBUVVJFKEdldFBlcmZNb25pdG9yR3JvdXBzQU1ELCBpc0NhbGxWYWxp
ZCwgY29udGV4dCwgbnVtR3JvdXBzLCBncm91cHNTaXplLCBncm91cHMpOworICAgIH0KKyAgICBl
bHNlCisgICAgeworICAgICAgICBHZW5lcmF0ZUNvbnRleHRMb3N0RXJyb3JPbkN1cnJlbnRHbG9i
YWxDb250ZXh0KCk7CisgICAgfQorfQorCit2b2lkIEdMX0FQSUVOVFJZIEdMX1NlbGVjdFBlcmZN
b25pdG9yQ291bnRlcnNBTUQoR0x1aW50IG1vbml0b3IsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xib29sZWFuIGVuYWJsZSwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVpbnQgZ3JvdXAsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xpbnQgbnVtQ291
bnRlcnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
R0x1aW50ICpjb3VudGVyTGlzdCkKK3sKKyAgICBDb250ZXh0ICpjb250ZXh0ID0gR2V0VmFsaWRH
bG9iYWxDb250ZXh0KCk7CisgICAgRVZFTlQoY29udGV4dCwgR0xTZWxlY3RQZXJmTW9uaXRvckNv
dW50ZXJzQU1ELAorICAgICAgICAgICJjb250ZXh0ID0gJWQsIG1vbml0b3IgPSAldSwgZW5hYmxl
ID0gJXMsIGdyb3VwID0gJXUsIG51bUNvdW50ZXJzID0gJWQsIGNvdW50ZXJMaXN0ID0gIgorICAg
ICAgICAgICIweCUwMTYiIFBSSXhQVFIgIiIsCisgICAgICAgICAgQ0lEKGNvbnRleHQpLCBtb25p
dG9yLCBHTGJvb2xlYW5Ub1N0cmluZyhlbmFibGUpLCBncm91cCwgbnVtQ291bnRlcnMsCisgICAg
ICAgICAgKHVpbnRwdHJfdCljb3VudGVyTGlzdCk7CisKKyAgICBpZiAoY29udGV4dCkKKyAgICB7
CisgICAgICAgIHN0ZDo6dW5pcXVlX2xvY2s8YW5nbGU6Okdsb2JhbE11dGV4PiBzaGFyZUNvbnRl
eHRMb2NrID0gR2V0Q29udGV4dExvY2soY29udGV4dCk7CisgICAgICAgIGJvb2wgaXNDYWxsVmFs
aWQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID0gKGNvbnRleHQtPnNraXBW
YWxpZGF0aW9uKCkgfHwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBWYWxpZGF0ZVNlbGVj
dFBlcmZNb25pdG9yQ291bnRlcnNBTUQoCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGNvbnRleHQsIGFuZ2xlOjpFbnRyeVBvaW50OjpHTFNlbGVjdFBlcmZNb25pdG9yQ291bnRlcnNB
TUQsIG1vbml0b3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVuYWJsZSwgZ3Jv
dXAsIG51bUNvdW50ZXJzLCBjb3VudGVyTGlzdCkpOworICAgICAgICBpZiAoaXNDYWxsVmFsaWQp
CisgICAgICAgIHsKKyAgICAgICAgICAgIGNvbnRleHQtPnNlbGVjdFBlcmZNb25pdG9yQ291bnRl
cnMobW9uaXRvciwgZW5hYmxlLCBncm91cCwgbnVtQ291bnRlcnMsIGNvdW50ZXJMaXN0KTsKKyAg
ICAgICAgfQorICAgICAgICBBTkdMRV9DQVBUVVJFKFNlbGVjdFBlcmZNb25pdG9yQ291bnRlcnNB
TUQsIGlzQ2FsbFZhbGlkLCBjb250ZXh0LCBtb25pdG9yLCBlbmFibGUsIGdyb3VwLAorICAgICAg
ICAgICAgICAgICAgICAgIG51bUNvdW50ZXJzLCBjb3VudGVyTGlzdCk7CisgICAgfQorICAgIGVs
c2UKKyAgICB7CisgICAgICAgIEdlbmVyYXRlQ29udGV4dExvc3RFcnJvck9uQ3VycmVudEdsb2Jh
bENvbnRleHQoKTsKKyAgICB9Cit9CisKIC8vIEdMX0FORFJPSURfZXh0ZW5zaW9uX3BhY2tfZXMz
MWEKIAogLy8gR0xfQU5HTEVfYmFzZV92ZXJ0ZXhfYmFzZV9pbnN0YW5jZQpAQCAtNzcsMTYgKzM5
MywxNiBAQCB2b2lkIEdMX0FQSUVOVFJZIEdMX0RyYXdFbGVtZW50c0luc3RhbmNlZEJhc2VWZXJ0
ZXhCYXNlSW5zdGFuY2VBTkdMRShHTGVudW0gbW9kZQogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBjb3Vu
dCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIEdMZW51bSB0eXBlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgR0x2b2lkICpp
bmRpY2VzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBpbnN0YW5jZUNvdW50cywKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IEdMc2l6ZWkgaW5zdGFuY2VDb3VudCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMaW50IGJhc2VWZXJ0ZXgsCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBHTHVpbnQgYmFzZUluc3RhbmNlKQogewogICAgIENvbnRleHQgKmNvbnRleHQg
PSBHZXRWYWxpZEdsb2JhbENvbnRleHQoKTsKICAgICBFVkVOVChjb250ZXh0LCBHTERyYXdFbGVt
ZW50c0luc3RhbmNlZEJhc2VWZXJ0ZXhCYXNlSW5zdGFuY2VBTkdMRSwKICAgICAgICAgICAiY29u
dGV4dCA9ICVkLCBtb2RlID0gJXMsIGNvdW50ID0gJWQsIHR5cGUgPSAlcywgaW5kaWNlcyA9IDB4
JTAxNiIgUFJJeFBUUgotICAgICAgICAgICIsIGluc3RhbmNlQ291bnRzID0gJWQsIGJhc2VWZXJ0
ZXggPSAlZCwgYmFzZUluc3RhbmNlID0gJXUiLAorICAgICAgICAgICIsIGluc3RhbmNlQ291bnQg
PSAlZCwgYmFzZVZlcnRleCA9ICVkLCBiYXNlSW5zdGFuY2UgPSAldSIsCiAgICAgICAgICAgQ0lE
KGNvbnRleHQpLCBHTGVudW1Ub1N0cmluZyhHTGVudW1Hcm91cDo6UHJpbWl0aXZlVHlwZSwgbW9k
ZSksIGNvdW50LAotICAgICAgICAgIEdMZW51bVRvU3RyaW5nKEdMZW51bUdyb3VwOjpEcmF3RWxl
bWVudHNUeXBlLCB0eXBlKSwgKHVpbnRwdHJfdClpbmRpY2VzLCBpbnN0YW5jZUNvdW50cywKKyAg
ICAgICAgICBHTGVudW1Ub1N0cmluZyhHTGVudW1Hcm91cDo6RHJhd0VsZW1lbnRzVHlwZSwgdHlw
ZSksICh1aW50cHRyX3QpaW5kaWNlcywgaW5zdGFuY2VDb3VudCwKICAgICAgICAgICBiYXNlVmVy
dGV4LCBiYXNlSW5zdGFuY2UpOwogCiAgICAgaWYgKGNvbnRleHQpCkBAIC05OCwxNCArNDE0LDE0
IEBAIHZvaWQgR0xfQVBJRU5UUlkgR0xfRHJhd0VsZW1lbnRzSW5zdGFuY2VkQmFzZVZlcnRleEJh
c2VJbnN0YW5jZUFOR0xFKEdMZW51bSBtb2RlCiAgICAgICAgICAgICAoY29udGV4dC0+c2tpcFZh
bGlkYXRpb24oKSB8fAogICAgICAgICAgICAgIFZhbGlkYXRlRHJhd0VsZW1lbnRzSW5zdGFuY2Vk
QmFzZVZlcnRleEJhc2VJbnN0YW5jZUFOR0xFKAogICAgICAgICAgICAgICAgICBjb250ZXh0LCBh
bmdsZTo6RW50cnlQb2ludDo6R0xEcmF3RWxlbWVudHNJbnN0YW5jZWRCYXNlVmVydGV4QmFzZUlu
c3RhbmNlQU5HTEUsCi0gICAgICAgICAgICAgICAgIG1vZGVQYWNrZWQsIGNvdW50LCB0eXBlUGFj
a2VkLCBpbmRpY2VzLCBpbnN0YW5jZUNvdW50cywgYmFzZVZlcnRleCwgYmFzZUluc3RhbmNlKSk7
CisgICAgICAgICAgICAgICAgIG1vZGVQYWNrZWQsIGNvdW50LCB0eXBlUGFja2VkLCBpbmRpY2Vz
LCBpbnN0YW5jZUNvdW50LCBiYXNlVmVydGV4LCBiYXNlSW5zdGFuY2UpKTsKICAgICAgICAgaWYg
KGlzQ2FsbFZhbGlkKQogICAgICAgICB7CiAgICAgICAgICAgICBjb250ZXh0LT5kcmF3RWxlbWVu
dHNJbnN0YW5jZWRCYXNlVmVydGV4QmFzZUluc3RhbmNlKAotICAgICAgICAgICAgICAgIG1vZGVQ
YWNrZWQsIGNvdW50LCB0eXBlUGFja2VkLCBpbmRpY2VzLCBpbnN0YW5jZUNvdW50cywgYmFzZVZl
cnRleCwgYmFzZUluc3RhbmNlKTsKKyAgICAgICAgICAgICAgICBtb2RlUGFja2VkLCBjb3VudCwg
dHlwZVBhY2tlZCwgaW5kaWNlcywgaW5zdGFuY2VDb3VudCwgYmFzZVZlcnRleCwgYmFzZUluc3Rh
bmNlKTsKICAgICAgICAgfQogICAgICAgICBBTkdMRV9DQVBUVVJFKERyYXdFbGVtZW50c0luc3Rh
bmNlZEJhc2VWZXJ0ZXhCYXNlSW5zdGFuY2VBTkdMRSwgaXNDYWxsVmFsaWQsIGNvbnRleHQsCi0g
ICAgICAgICAgICAgICAgICAgICAgbW9kZVBhY2tlZCwgY291bnQsIHR5cGVQYWNrZWQsIGluZGlj
ZXMsIGluc3RhbmNlQ291bnRzLCBiYXNlVmVydGV4LAorICAgICAgICAgICAgICAgICAgICAgIG1v
ZGVQYWNrZWQsIGNvdW50LCB0eXBlUGFja2VkLCBpbmRpY2VzLCBpbnN0YW5jZUNvdW50LCBiYXNl
VmVydGV4LAogICAgICAgICAgICAgICAgICAgICAgIGJhc2VJbnN0YW5jZSk7CiAgICAgfQogICAg
IGVsc2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJHTEVTdjIv
ZW50cnlfcG9pbnRzX2dsZXNfZXh0X2F1dG9nZW4uaCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy9saWJHTEVTdjIvZW50cnlfcG9pbnRzX2dsZXNfZXh0X2F1dG9nZW4uaAppbmRleCA3NDBm
NzcwZmU5MzYzYjJiZTQ5MmUxYTM4ZDA5MjBhM2E5Y2E4ZjcwLi4wYTBmYWRlY2RmOTI5ZWE2YzFj
MTVmYzVkZTkxMzVkM2EwMzI0YTFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zcmMvbGliR0xFU3YyL2VudHJ5X3BvaW50c19nbGVzX2V4dF9hdXRvZ2VuLmgKKysrIGIvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkdMRVN2Mi9lbnRyeV9wb2ludHNfZ2xlc19leHRf
YXV0b2dlbi5oCkBAIC0yMCw2ICsyMCw0MyBAQAogCiBleHRlcm4gIkMiIHsKIAorLy8gR0xfQU1E
X3BlcmZvcm1hbmNlX21vbml0b3IKK0FOR0xFX0VYUE9SVCB2b2lkIEdMX0FQSUVOVFJZIEdMX0Jl
Z2luUGVyZk1vbml0b3JBTUQoR0x1aW50IG1vbml0b3IpOworQU5HTEVfRVhQT1JUIHZvaWQgR0xf
QVBJRU5UUlkgR0xfRGVsZXRlUGVyZk1vbml0b3JzQU1EKEdMc2l6ZWkgbiwgR0x1aW50ICptb25p
dG9ycyk7CitBTkdMRV9FWFBPUlQgdm9pZCBHTF9BUElFTlRSWSBHTF9FbmRQZXJmTW9uaXRvckFN
RChHTHVpbnQgbW9uaXRvcik7CitBTkdMRV9FWFBPUlQgdm9pZCBHTF9BUElFTlRSWSBHTF9HZW5Q
ZXJmTW9uaXRvcnNBTUQoR0xzaXplaSBuLCBHTHVpbnQgKm1vbml0b3JzKTsKK0FOR0xFX0VYUE9S
VCB2b2lkIEdMX0FQSUVOVFJZIEdMX0dldFBlcmZNb25pdG9yQ291bnRlckRhdGFBTUQoR0x1aW50
IG1vbml0b3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIEdMZW51bSBwbmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBkYXRhU2l6ZSwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgR0x1aW50ICpkYXRhLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBHTGludCAqYnl0ZXNXcml0dGVuKTsKK0FOR0xFX0VYUE9S
VCB2b2lkIEdMX0FQSUVOVFJZIEdMX0dldFBlcmZNb25pdG9yQ291bnRlckluZm9BTUQoR0x1aW50
IGdyb3VwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBHTHVpbnQgY291bnRlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xlbnVtIHBuYW1lLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2
b2lkICpkYXRhKTsKK0FOR0xFX0VYUE9SVCB2b2lkIEdMX0FQSUVOVFJZIEdMX0dldFBlcmZNb25p
dG9yQ291bnRlclN0cmluZ0FNRChHTHVpbnQgZ3JvdXAsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50IGNvdW50ZXIs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgR0xzaXplaSBidWZTaXplLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgKmxlbmd0aCwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBHTGNoYXIgKmNvdW50ZXJTdHJpbmcpOworQU5HTEVfRVhQT1JUIHZvaWQgR0xfQVBJRU5UUlkg
R0xfR2V0UGVyZk1vbml0b3JDb3VudGVyc0FNRChHTHVpbnQgZ3JvdXAsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMaW50ICpudW1D
b3VudGVycywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgR0xpbnQgKm1heEFjdGl2ZUNvdW50ZXJzLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHNpemVpIGNvdW50ZXJT
aXplLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBHTHVpbnQgKmNvdW50ZXJzKTsKK0FOR0xFX0VYUE9SVCB2b2lkIEdMX0FQSUVOVFJZ
IEdMX0dldFBlcmZNb25pdG9yR3JvdXBTdHJpbmdBTUQoR0x1aW50IGdyb3VwLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHNp
emVpIGJ1ZlNpemUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgKmxlbmd0aCwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xjaGFyICpncm91cFN0
cmluZyk7CitBTkdMRV9FWFBPUlQgdm9pZCBHTF9BUElFTlRSWSBHTF9HZXRQZXJmTW9uaXRvckdy
b3Vwc0FNRChHTGludCAqbnVtR3JvdXBzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBncm91cHNTaXplLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50ICpn
cm91cHMpOworQU5HTEVfRVhQT1JUIHZvaWQgR0xfQVBJRU5UUlkgR0xfU2VsZWN0UGVyZk1vbml0
b3JDb3VudGVyc0FNRChHTHVpbnQgbW9uaXRvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xib29sZWFuIGVuYWJsZSwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgR0x1aW50IGdyb3VwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBHTGludCBudW1Db3VudGVycywKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50ICpj
b3VudGVyTGlzdCk7CisKIC8vIEdMX0FORFJPSURfZXh0ZW5zaW9uX3BhY2tfZXMzMWEKIAogLy8g
R0xfQU5HTEVfYmFzZV92ZXJ0ZXhfYmFzZV9pbnN0YW5jZQpAQCAtMzMsNyArNzAsNyBAQCBHTF9E
cmF3RWxlbWVudHNJbnN0YW5jZWRCYXNlVmVydGV4QmFzZUluc3RhbmNlQU5HTEUoR0xlbnVtIG1v
ZGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
R0xzaXplaSBjb3VudCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBHTGVudW0gdHlwZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBjb25zdCBHTHZvaWQgKmluZGljZXMsCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBpbnN0YW5jZUNv
dW50cywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBHTHNpemVpIGluc3RhbmNlQ291bnQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgR0xpbnQgYmFzZVZlcnRleCwKICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVpbnQgYmFzZUluc3RhbmNlKTsK
IEFOR0xFX0VYUE9SVCB2b2lkIEdMX0FQSUVOVFJZCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9BTkdMRS9zcmMvbGliR0xFU3YyL2xpYkdMRVN2Ml9hdXRvZ2VuLmNwcCBiL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3NyYy9saWJHTEVTdjIvbGliR0xFU3YyX2F1dG9nZW4uY3BwCmluZGV4
IGQyMjRkZGM0ZjUxNjdhYjc5ZDllNTJlM2M2Mjg2ZjhlMWE4YzM3MDguLmUzZTgwOTk1M2ZkNmQw
MjA0MThiYWQxYjI0NTlkN2Q3NjA1M2QwNTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3NyYy9saWJHTEVTdjIvbGliR0xFU3YyX2F1dG9nZW4uY3BwCisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3NyYy9saWJHTEVTdjIvbGliR0xFU3YyX2F1dG9nZW4uY3BwCkBAIC0y
NzEzLDYgKzI3MTMsODUgQEAgdm9pZCBHTF9BUElFTlRSWSBnbFZlcnRleFBvaW50ZXIoR0xpbnQg
c2l6ZSwgR0xlbnVtIHR5cGUsIEdMc2l6ZWkgc3RyaWRlLCBjb25zdAogICAgIHJldHVybiBHTF9W
ZXJ0ZXhQb2ludGVyKHNpemUsIHR5cGUsIHN0cmlkZSwgcG9pbnRlcik7CiB9CiAKKy8vIEdMX0FN
RF9wZXJmb3JtYW5jZV9tb25pdG9yCit2b2lkIEdMX0FQSUVOVFJZIGdsQmVnaW5QZXJmTW9uaXRv
ckFNRChHTHVpbnQgbW9uaXRvcikKK3sKKyAgICByZXR1cm4gR0xfQmVnaW5QZXJmTW9uaXRvckFN
RChtb25pdG9yKTsKK30KKwordm9pZCBHTF9BUElFTlRSWSBnbERlbGV0ZVBlcmZNb25pdG9yc0FN
RChHTHNpemVpIG4sIEdMdWludCAqbW9uaXRvcnMpCit7CisgICAgcmV0dXJuIEdMX0RlbGV0ZVBl
cmZNb25pdG9yc0FNRChuLCBtb25pdG9ycyk7Cit9CisKK3ZvaWQgR0xfQVBJRU5UUlkgZ2xFbmRQ
ZXJmTW9uaXRvckFNRChHTHVpbnQgbW9uaXRvcikKK3sKKyAgICByZXR1cm4gR0xfRW5kUGVyZk1v
bml0b3JBTUQobW9uaXRvcik7Cit9CisKK3ZvaWQgR0xfQVBJRU5UUlkgZ2xHZW5QZXJmTW9uaXRv
cnNBTUQoR0xzaXplaSBuLCBHTHVpbnQgKm1vbml0b3JzKQoreworICAgIHJldHVybiBHTF9HZW5Q
ZXJmTW9uaXRvcnNBTUQobiwgbW9uaXRvcnMpOworfQorCit2b2lkIEdMX0FQSUVOVFJZIGdsR2V0
UGVyZk1vbml0b3JDb3VudGVyRGF0YUFNRChHTHVpbnQgbW9uaXRvciwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMZW51bSBwbmFtZSwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgZGF0YVNpemUs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVpbnQg
KmRhdGEsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBH
TGludCAqYnl0ZXNXcml0dGVuKQoreworICAgIHJldHVybiBHTF9HZXRQZXJmTW9uaXRvckNvdW50
ZXJEYXRhQU1EKG1vbml0b3IsIHBuYW1lLCBkYXRhU2l6ZSwgZGF0YSwgYnl0ZXNXcml0dGVuKTsK
K30KKwordm9pZCBHTF9BUElFTlRSWSBnbEdldFBlcmZNb25pdG9yQ291bnRlckluZm9BTUQoR0x1
aW50IGdyb3VwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgR0x1aW50IGNvdW50ZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBHTGVudW0gcG5hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICB2b2lkICpkYXRhKQoreworICAgIHJldHVybiBHTF9HZXRQZXJmTW9u
aXRvckNvdW50ZXJJbmZvQU1EKGdyb3VwLCBjb3VudGVyLCBwbmFtZSwgZGF0YSk7Cit9CisKK3Zv
aWQgR0xfQVBJRU5UUlkgZ2xHZXRQZXJmTW9uaXRvckNvdW50ZXJTdHJpbmdBTUQoR0x1aW50IGdy
b3VwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBH
THVpbnQgY291bnRlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgR0xzaXplaSBidWZTaXplLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBHTHNpemVpICpsZW5ndGgsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMY2hhciAqY291bnRlclN0cmluZykKK3sK
KyAgICByZXR1cm4gR0xfR2V0UGVyZk1vbml0b3JDb3VudGVyU3RyaW5nQU1EKGdyb3VwLCBjb3Vu
dGVyLCBidWZTaXplLCBsZW5ndGgsIGNvdW50ZXJTdHJpbmcpOworfQorCit2b2lkIEdMX0FQSUVO
VFJZIGdsR2V0UGVyZk1vbml0b3JDb3VudGVyc0FNRChHTHVpbnQgZ3JvdXAsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTGludCAqbnVtQ291bnRlcnMsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTGludCAqbWF4QWN0
aXZlQ291bnRlcnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBHTHNpemVpIGNvdW50ZXJTaXplLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgR0x1aW50ICpjb3VudGVycykKK3sKKyAgICByZXR1cm4gR0xfR2V0UGVyZk1v
bml0b3JDb3VudGVyc0FNRChncm91cCwgbnVtQ291bnRlcnMsIG1heEFjdGl2ZUNvdW50ZXJzLCBj
b3VudGVyU2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb3Vu
dGVycyk7Cit9CisKK3ZvaWQgR0xfQVBJRU5UUlkgZ2xHZXRQZXJmTW9uaXRvckdyb3VwU3RyaW5n
QU1EKEdMdWludCBncm91cCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIEdMc2l6ZWkgYnVmU2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgKmxlbmd0aCwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMY2hhciAqZ3JvdXBTdHJpbmcpCit7CisgICAg
cmV0dXJuIEdMX0dldFBlcmZNb25pdG9yR3JvdXBTdHJpbmdBTUQoZ3JvdXAsIGJ1ZlNpemUsIGxl
bmd0aCwgZ3JvdXBTdHJpbmcpOworfQorCit2b2lkIEdMX0FQSUVOVFJZIGdsR2V0UGVyZk1vbml0
b3JHcm91cHNBTUQoR0xpbnQgKm51bUdyb3VwcywgR0xzaXplaSBncm91cHNTaXplLCBHTHVpbnQg
Kmdyb3VwcykKK3sKKyAgICByZXR1cm4gR0xfR2V0UGVyZk1vbml0b3JHcm91cHNBTUQobnVtR3Jv
dXBzLCBncm91cHNTaXplLCBncm91cHMpOworfQorCit2b2lkIEdMX0FQSUVOVFJZIGdsU2VsZWN0
UGVyZk1vbml0b3JDb3VudGVyc0FNRChHTHVpbnQgbW9uaXRvciwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMYm9vbGVhbiBlbmFibGUsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVpbnQgZ3JvdXAsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTGludCBudW1D
b3VudGVycywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IEdMdWludCAqY291bnRlckxpc3QpCit7CisgICAgcmV0dXJuIEdMX1NlbGVjdFBlcmZNb25pdG9y
Q291bnRlcnNBTUQobW9uaXRvciwgZW5hYmxlLCBncm91cCwgbnVtQ291bnRlcnMsIGNvdW50ZXJM
aXN0KTsKK30KKwogLy8gR0xfQU5EUk9JRF9leHRlbnNpb25fcGFja19lczMxYQogCiAvLyBHTF9B
TkdMRV9iYXNlX3ZlcnRleF9iYXNlX2luc3RhbmNlCkBAIC0yNzI5LDEyICsyODA4LDEyIEBAIHZv
aWQgR0xfQVBJRU5UUlkgZ2xEcmF3RWxlbWVudHNJbnN0YW5jZWRCYXNlVmVydGV4QmFzZUluc3Rh
bmNlQU5HTEUoR0xlbnVtIG1vZGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgY291bnQsCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIEdMZW51bSB0eXBlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBHTHZvaWQgKmluZGljZXMsCi0gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIEdMc2l6ZWkgaW5zdGFuY2VDb3VudHMsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgaW5zdGFu
Y2VDb3VudCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgR0xpbnQgYmFzZVZlcnRleCwKICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50
IGJhc2VJbnN0YW5jZSkKIHsKICAgICByZXR1cm4gR0xfRHJhd0VsZW1lbnRzSW5zdGFuY2VkQmFz
ZVZlcnRleEJhc2VJbnN0YW5jZUFOR0xFKAotICAgICAgICBtb2RlLCBjb3VudCwgdHlwZSwgaW5k
aWNlcywgaW5zdGFuY2VDb3VudHMsIGJhc2VWZXJ0ZXgsIGJhc2VJbnN0YW5jZSk7CisgICAgICAg
IG1vZGUsIGNvdW50LCB0eXBlLCBpbmRpY2VzLCBpbnN0YW5jZUNvdW50LCBiYXNlVmVydGV4LCBi
YXNlSW5zdGFuY2UpOwogfQogCiB2b2lkIEdMX0FQSUVOVFJZIGdsTXVsdGlEcmF3QXJyYXlzSW5z
dGFuY2VkQmFzZUluc3RhbmNlQU5HTEUoR0xlbnVtIG1vZGUsCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliR0xFU3YyL2xpYkdMRVN2Ml9hdXRvZ2VuLmRlZiBiL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJHTEVTdjIvbGliR0xFU3YyX2F1dG9nZW4uZGVm
CmluZGV4IGYxYjNmMjc4MTc1NWNiZGVmZjk4Y2RjMDYyYWEzMWFkODJiNzQ1YmUuLjE5YTNhYWQ1
MTJkMDg2OTA1MWE2MmRhMTZkNmM3MzBiNWZkM2ZhNmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3NyYy9saWJHTEVTdjIvbGliR0xFU3YyX2F1dG9nZW4uZGVmCisrKyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJHTEVTdjIvbGliR0xFU3YyX2F1dG9nZW4uZGVm
CkBAIC00NjAsNiArNDYwLDE5IEBAIEVYUE9SVFMKICAgICBnbFRyYW5zbGF0ZXgKICAgICBnbFZl
cnRleFBvaW50ZXIKIAorICAgIDsgR0xfQU1EX3BlcmZvcm1hbmNlX21vbml0b3IKKyAgICBnbEJl
Z2luUGVyZk1vbml0b3JBTUQKKyAgICBnbERlbGV0ZVBlcmZNb25pdG9yc0FNRAorICAgIGdsRW5k
UGVyZk1vbml0b3JBTUQKKyAgICBnbEdlblBlcmZNb25pdG9yc0FNRAorICAgIGdsR2V0UGVyZk1v
bml0b3JDb3VudGVyRGF0YUFNRAorICAgIGdsR2V0UGVyZk1vbml0b3JDb3VudGVySW5mb0FNRAor
ICAgIGdsR2V0UGVyZk1vbml0b3JDb3VudGVyU3RyaW5nQU1ECisgICAgZ2xHZXRQZXJmTW9uaXRv
ckNvdW50ZXJzQU1ECisgICAgZ2xHZXRQZXJmTW9uaXRvckdyb3VwU3RyaW5nQU1ECisgICAgZ2xH
ZXRQZXJmTW9uaXRvckdyb3Vwc0FNRAorICAgIGdsU2VsZWN0UGVyZk1vbml0b3JDb3VudGVyc0FN
RAorCiAgICAgOyBHTF9BTkRST0lEX2V4dGVuc2lvbl9wYWNrX2VzMzFhCiAKICAgICA7IEdMX0FO
R0xFX2Jhc2VfdmVydGV4X2Jhc2VfaW5zdGFuY2UKQEAgLTEyMjIsNiArMTIzNSw3IEBAIEVYUE9S
VFMKICAgICBFR0xfUXVlcnlTdHJpbmdpQU5HTEUKIAogICAgIDsgRUdMX0FOR0xFX3Bvd2VyX3By
ZWZlcmVuY2UKKyAgICBFR0xfRm9yY2VHUFVTd2l0Y2hBTkdMRQogICAgIEVHTF9IYW5kbGVHUFVT
d2l0Y2hBTkdMRQogICAgIEVHTF9SZWFjcXVpcmVIaWdoUG93ZXJHUFVBTkdMRQogICAgIEVHTF9S
ZWxlYXNlSGlnaFBvd2VyR1BVQU5HTEUKQEAgLTEyNTksNiArMTI3MywxMCBAQCBFWFBPUlRTCiAg
ICAgRUdMX1F1ZXJ5RGV2aWNlU3RyaW5nRVhUCiAgICAgRUdMX1F1ZXJ5RGlzcGxheUF0dHJpYkVY
VAogCisgICAgOyBFR0xfRVhUX2ltYWdlX2RtYV9idWZfaW1wb3J0X21vZGlmaWVycworICAgIEVH
TF9RdWVyeURtYUJ1ZkZvcm1hdHNFWFQKKyAgICBFR0xfUXVlcnlEbWFCdWZNb2RpZmllcnNFWFQK
KwogICAgIDsgRUdMX0VYVF9wbGF0Zm9ybV9iYXNlCiAgICAgRUdMX0NyZWF0ZVBsYXRmb3JtUGl4
bWFwU3VyZmFjZUVYVAogICAgIEVHTF9DcmVhdGVQbGF0Zm9ybVdpbmRvd1N1cmZhY2VFWFQKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJHTEVTdjIvbGliR0xFU3Yy
X25vX2NhcHR1cmVfYXV0b2dlbi5kZWYgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGli
R0xFU3YyL2xpYkdMRVN2Ml9ub19jYXB0dXJlX2F1dG9nZW4uZGVmCmluZGV4IDYwZDFkNTNhYzg4
ZjBkOGRlN2NkNzhjZDMwZjc5Y2Y1MDgyMjk4MjkuLjMzOGMzNWM0NTYyYzNlZWU4ZDEyNmZiZjE0
ODVlNTI1MzdhMzhiNjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9s
aWJHTEVTdjIvbGliR0xFU3YyX25vX2NhcHR1cmVfYXV0b2dlbi5kZWYKKysrIGIvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL2xpYkdMRVN2Mi9saWJHTEVTdjJfbm9fY2FwdHVyZV9hdXRvZ2Vu
LmRlZgpAQCAtNDYwLDYgKzQ2MCwxOSBAQCBFWFBPUlRTCiAgICAgZ2xUcmFuc2xhdGV4CiAgICAg
Z2xWZXJ0ZXhQb2ludGVyCiAKKyAgICA7IEdMX0FNRF9wZXJmb3JtYW5jZV9tb25pdG9yCisgICAg
Z2xCZWdpblBlcmZNb25pdG9yQU1ECisgICAgZ2xEZWxldGVQZXJmTW9uaXRvcnNBTUQKKyAgICBn
bEVuZFBlcmZNb25pdG9yQU1ECisgICAgZ2xHZW5QZXJmTW9uaXRvcnNBTUQKKyAgICBnbEdldFBl
cmZNb25pdG9yQ291bnRlckRhdGFBTUQKKyAgICBnbEdldFBlcmZNb25pdG9yQ291bnRlckluZm9B
TUQKKyAgICBnbEdldFBlcmZNb25pdG9yQ291bnRlclN0cmluZ0FNRAorICAgIGdsR2V0UGVyZk1v
bml0b3JDb3VudGVyc0FNRAorICAgIGdsR2V0UGVyZk1vbml0b3JHcm91cFN0cmluZ0FNRAorICAg
IGdsR2V0UGVyZk1vbml0b3JHcm91cHNBTUQKKyAgICBnbFNlbGVjdFBlcmZNb25pdG9yQ291bnRl
cnNBTUQKKwogICAgIDsgR0xfQU5EUk9JRF9leHRlbnNpb25fcGFja19lczMxYQogCiAgICAgOyBH
TF9BTkdMRV9iYXNlX3ZlcnRleF9iYXNlX2luc3RhbmNlCkBAIC0xMjIyLDYgKzEyMzUsNyBAQCBF
WFBPUlRTCiAgICAgRUdMX1F1ZXJ5U3RyaW5naUFOR0xFCiAKICAgICA7IEVHTF9BTkdMRV9wb3dl
cl9wcmVmZXJlbmNlCisgICAgRUdMX0ZvcmNlR1BVU3dpdGNoQU5HTEUKICAgICBFR0xfSGFuZGxl
R1BVU3dpdGNoQU5HTEUKICAgICBFR0xfUmVhY3F1aXJlSGlnaFBvd2VyR1BVQU5HTEUKICAgICBF
R0xfUmVsZWFzZUhpZ2hQb3dlckdQVUFOR0xFCkBAIC0xMjU5LDYgKzEyNzMsMTAgQEAgRVhQT1JU
UwogICAgIEVHTF9RdWVyeURldmljZVN0cmluZ0VYVAogICAgIEVHTF9RdWVyeURpc3BsYXlBdHRy
aWJFWFQKIAorICAgIDsgRUdMX0VYVF9pbWFnZV9kbWFfYnVmX2ltcG9ydF9tb2RpZmllcnMKKyAg
ICBFR0xfUXVlcnlEbWFCdWZGb3JtYXRzRVhUCisgICAgRUdMX1F1ZXJ5RG1hQnVmTW9kaWZpZXJz
RVhUCisKICAgICA7IEVHTF9FWFRfcGxhdGZvcm1fYmFzZQogICAgIEVHTF9DcmVhdGVQbGF0Zm9y
bVBpeG1hcFN1cmZhY2VFWFQKICAgICBFR0xfQ3JlYXRlUGxhdGZvcm1XaW5kb3dTdXJmYWNlRVhU
CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliR0xFU3YyL2xpYkdM
RVN2Ml93aXRoX2NhcHR1cmVfYXV0b2dlbi5kZWYgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9z
cmMvbGliR0xFU3YyL2xpYkdMRVN2Ml93aXRoX2NhcHR1cmVfYXV0b2dlbi5kZWYKaW5kZXggZTUw
MzBiYWE1YTA4NTg3ZjRhYzkyN2JlODFhMGU3NGNjMDk3Y2U4NS4uZGRiMGM3MGY0MDgzMDdlYzE2
NmE4YWQ5ZjEyNjNhZDc4ZjIyZWY2ZSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvc3JjL2xpYkdMRVN2Mi9saWJHTEVTdjJfd2l0aF9jYXB0dXJlX2F1dG9nZW4uZGVmCisrKyBi
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJHTEVTdjIvbGliR0xFU3YyX3dpdGhfY2Fw
dHVyZV9hdXRvZ2VuLmRlZgpAQCAtNDYwLDYgKzQ2MCwxOSBAQCBFWFBPUlRTCiAgICAgZ2xUcmFu
c2xhdGV4CiAgICAgZ2xWZXJ0ZXhQb2ludGVyCiAKKyAgICA7IEdMX0FNRF9wZXJmb3JtYW5jZV9t
b25pdG9yCisgICAgZ2xCZWdpblBlcmZNb25pdG9yQU1ECisgICAgZ2xEZWxldGVQZXJmTW9uaXRv
cnNBTUQKKyAgICBnbEVuZFBlcmZNb25pdG9yQU1ECisgICAgZ2xHZW5QZXJmTW9uaXRvcnNBTUQK
KyAgICBnbEdldFBlcmZNb25pdG9yQ291bnRlckRhdGFBTUQKKyAgICBnbEdldFBlcmZNb25pdG9y
Q291bnRlckluZm9BTUQKKyAgICBnbEdldFBlcmZNb25pdG9yQ291bnRlclN0cmluZ0FNRAorICAg
IGdsR2V0UGVyZk1vbml0b3JDb3VudGVyc0FNRAorICAgIGdsR2V0UGVyZk1vbml0b3JHcm91cFN0
cmluZ0FNRAorICAgIGdsR2V0UGVyZk1vbml0b3JHcm91cHNBTUQKKyAgICBnbFNlbGVjdFBlcmZN
b25pdG9yQ291bnRlcnNBTUQKKwogICAgIDsgR0xfQU5EUk9JRF9leHRlbnNpb25fcGFja19lczMx
YQogCiAgICAgOyBHTF9BTkdMRV9iYXNlX3ZlcnRleF9iYXNlX2luc3RhbmNlCkBAIC0xMjIyLDYg
KzEyMzUsNyBAQCBFWFBPUlRTCiAgICAgRUdMX1F1ZXJ5U3RyaW5naUFOR0xFCiAKICAgICA7IEVH
TF9BTkdMRV9wb3dlcl9wcmVmZXJlbmNlCisgICAgRUdMX0ZvcmNlR1BVU3dpdGNoQU5HTEUKICAg
ICBFR0xfSGFuZGxlR1BVU3dpdGNoQU5HTEUKICAgICBFR0xfUmVhY3F1aXJlSGlnaFBvd2VyR1BV
QU5HTEUKICAgICBFR0xfUmVsZWFzZUhpZ2hQb3dlckdQVUFOR0xFCkBAIC0xMjU5LDYgKzEyNzMs
MTAgQEAgRVhQT1JUUwogICAgIEVHTF9RdWVyeURldmljZVN0cmluZ0VYVAogICAgIEVHTF9RdWVy
eURpc3BsYXlBdHRyaWJFWFQKIAorICAgIDsgRUdMX0VYVF9pbWFnZV9kbWFfYnVmX2ltcG9ydF9t
b2RpZmllcnMKKyAgICBFR0xfUXVlcnlEbWFCdWZGb3JtYXRzRVhUCisgICAgRUdMX1F1ZXJ5RG1h
QnVmTW9kaWZpZXJzRVhUCisKICAgICA7IEVHTF9FWFRfcGxhdGZvcm1fYmFzZQogICAgIEVHTF9D
cmVhdGVQbGF0Zm9ybVBpeG1hcFN1cmZhY2VFWFQKICAgICBFR0xfQ3JlYXRlUGxhdGZvcm1XaW5k
b3dTdXJmYWNlRVhUCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGli
R0xFU3YyL3Byb2NfdGFibGVfZWdsX2F1dG9nZW4uY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvc3JjL2xpYkdMRVN2Mi9wcm9jX3RhYmxlX2VnbF9hdXRvZ2VuLmNwcAppbmRleCBjOTZlNWIz
NjE1MDBmYWE3MDc1NzEzOTIxZTMwOTZjM2MwZDQwNmNjLi41ZGUzMDY1ZjQ4ODA3M2M3NDkyMjU5
YjdkMGNiZWE1YzkyOWFiMDk1IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9z
cmMvbGliR0xFU3YyL3Byb2NfdGFibGVfZWdsX2F1dG9nZW4uY3BwCisrKyBiL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3NyYy9saWJHTEVTdjIvcHJvY190YWJsZV9lZ2xfYXV0b2dlbi5jcHAKQEAg
LTYyLDYgKzYyLDcgQEAgY29uc3QgUHJvY0VudHJ5IGdfcHJvY1RhYmxlW10gPSB7CiAgICAgeyJl
Z2xEZXN0cm95U3luY0tIUiIsIFAoRUdMX0Rlc3Ryb3lTeW5jS0hSKX0sCiAgICAgeyJlZ2xEdXBO
YXRpdmVGZW5jZUZEQU5EUk9JRCIsIFAoRUdMX0R1cE5hdGl2ZUZlbmNlRkRBTkRST0lEKX0sCiAg
ICAgeyJlZ2xFeHBvcnRWa0ltYWdlQU5HTEUiLCBQKEVHTF9FeHBvcnRWa0ltYWdlQU5HTEUpfSwK
KyAgICB7ImVnbEZvcmNlR1BVU3dpdGNoQU5HTEUiLCBQKEVHTF9Gb3JjZUdQVVN3aXRjaEFOR0xF
KX0sCiAgICAgeyJlZ2xHZXRDb21wb3NpdG9yVGltaW5nQU5EUk9JRCIsIFAoRUdMX0dldENvbXBv
c2l0b3JUaW1pbmdBTkRST0lEKX0sCiAgICAgeyJlZ2xHZXRDb21wb3NpdG9yVGltaW5nU3VwcG9y
dGVkQU5EUk9JRCIsIFAoRUdMX0dldENvbXBvc2l0b3JUaW1pbmdTdXBwb3J0ZWRBTkRST0lEKX0s
CiAgICAgeyJlZ2xHZXRDb25maWdBdHRyaWIiLCBQKEVHTF9HZXRDb25maWdBdHRyaWIpfSwKQEAg
LTEwMSw2ICsxMDIsOCBAQCBjb25zdCBQcm9jRW50cnkgZ19wcm9jVGFibGVbXSA9IHsKICAgICB7
ImVnbFF1ZXJ5RGV2aWNlU3RyaW5nRVhUIiwgUChFR0xfUXVlcnlEZXZpY2VTdHJpbmdFWFQpfSwK
ICAgICB7ImVnbFF1ZXJ5RGlzcGxheUF0dHJpYkFOR0xFIiwgUChFR0xfUXVlcnlEaXNwbGF5QXR0
cmliQU5HTEUpfSwKICAgICB7ImVnbFF1ZXJ5RGlzcGxheUF0dHJpYkVYVCIsIFAoRUdMX1F1ZXJ5
RGlzcGxheUF0dHJpYkVYVCl9LAorICAgIHsiZWdsUXVlcnlEbWFCdWZGb3JtYXRzRVhUIiwgUChF
R0xfUXVlcnlEbWFCdWZGb3JtYXRzRVhUKX0sCisgICAgeyJlZ2xRdWVyeURtYUJ1Zk1vZGlmaWVy
c0VYVCIsIFAoRUdMX1F1ZXJ5RG1hQnVmTW9kaWZpZXJzRVhUKX0sCiAgICAgeyJlZ2xRdWVyeVN0
cmVhbUtIUiIsIFAoRUdMX1F1ZXJ5U3RyZWFtS0hSKX0sCiAgICAgeyJlZ2xRdWVyeVN0cmVhbXU2
NEtIUiIsIFAoRUdMX1F1ZXJ5U3RyZWFtdTY0S0hSKX0sCiAgICAgeyJlZ2xRdWVyeVN0cmluZyIs
IFAoRUdMX1F1ZXJ5U3RyaW5nKX0sCkBAIC0xNDIsNiArMTQ1LDcgQEAgY29uc3QgUHJvY0VudHJ5
IGdfcHJvY1RhYmxlW10gPSB7CiAgICAgeyJnbEFscGhhRnVuYyIsIFAoR0xfQWxwaGFGdW5jKX0s
CiAgICAgeyJnbEFscGhhRnVuY3giLCBQKEdMX0FscGhhRnVuY3gpfSwKICAgICB7ImdsQXR0YWNo
U2hhZGVyIiwgUChHTF9BdHRhY2hTaGFkZXIpfSwKKyAgICB7ImdsQmVnaW5QZXJmTW9uaXRvckFN
RCIsIFAoR0xfQmVnaW5QZXJmTW9uaXRvckFNRCl9LAogICAgIHsiZ2xCZWdpblF1ZXJ5IiwgUChH
TF9CZWdpblF1ZXJ5KX0sCiAgICAgeyJnbEJlZ2luUXVlcnlFWFQiLCBQKEdMX0JlZ2luUXVlcnlF
WFQpfSwKICAgICB7ImdsQmVnaW5UcmFuc2Zvcm1GZWVkYmFjayIsIFAoR0xfQmVnaW5UcmFuc2Zv
cm1GZWVkYmFjayl9LApAQCAtMjYwLDYgKzI2NCw3IEBAIGNvbnN0IFByb2NFbnRyeSBnX3Byb2NU
YWJsZVtdID0gewogICAgIHsiZ2xEZWxldGVGcmFtZWJ1ZmZlcnMiLCBQKEdMX0RlbGV0ZUZyYW1l
YnVmZmVycyl9LAogICAgIHsiZ2xEZWxldGVGcmFtZWJ1ZmZlcnNPRVMiLCBQKEdMX0RlbGV0ZUZy
YW1lYnVmZmVyc09FUyl9LAogICAgIHsiZ2xEZWxldGVNZW1vcnlPYmplY3RzRVhUIiwgUChHTF9E
ZWxldGVNZW1vcnlPYmplY3RzRVhUKX0sCisgICAgeyJnbERlbGV0ZVBlcmZNb25pdG9yc0FNRCIs
IFAoR0xfRGVsZXRlUGVyZk1vbml0b3JzQU1EKX0sCiAgICAgeyJnbERlbGV0ZVByb2dyYW0iLCBQ
KEdMX0RlbGV0ZVByb2dyYW0pfSwKICAgICB7ImdsRGVsZXRlUHJvZ3JhbVBpcGVsaW5lcyIsIFAo
R0xfRGVsZXRlUHJvZ3JhbVBpcGVsaW5lcyl9LAogICAgIHsiZ2xEZWxldGVQcm9ncmFtUGlwZWxp
bmVzRVhUIiwgUChHTF9EZWxldGVQcm9ncmFtUGlwZWxpbmVzRVhUKX0sCkBAIC0zMzMsNiArMzM4
LDcgQEAgY29uc3QgUHJvY0VudHJ5IGdfcHJvY1RhYmxlW10gPSB7CiAgICAgeyJnbEVuYWJsZWki
LCBQKEdMX0VuYWJsZWkpfSwKICAgICB7ImdsRW5hYmxlaUVYVCIsIFAoR0xfRW5hYmxlaUVYVCl9
LAogICAgIHsiZ2xFbmFibGVpT0VTIiwgUChHTF9FbmFibGVpT0VTKX0sCisgICAgeyJnbEVuZFBl
cmZNb25pdG9yQU1EIiwgUChHTF9FbmRQZXJmTW9uaXRvckFNRCl9LAogICAgIHsiZ2xFbmRRdWVy
eSIsIFAoR0xfRW5kUXVlcnkpfSwKICAgICB7ImdsRW5kUXVlcnlFWFQiLCBQKEdMX0VuZFF1ZXJ5
RVhUKX0sCiAgICAgeyJnbEVuZFRyYW5zZm9ybUZlZWRiYWNrIiwgUChHTF9FbmRUcmFuc2Zvcm1G
ZWVkYmFjayl9LApAQCAtMzY3LDYgKzM3Myw3IEBAIGNvbnN0IFByb2NFbnRyeSBnX3Byb2NUYWJs
ZVtdID0gewogICAgIHsiZ2xHZW5GZW5jZXNOViIsIFAoR0xfR2VuRmVuY2VzTlYpfSwKICAgICB7
ImdsR2VuRnJhbWVidWZmZXJzIiwgUChHTF9HZW5GcmFtZWJ1ZmZlcnMpfSwKICAgICB7ImdsR2Vu
RnJhbWVidWZmZXJzT0VTIiwgUChHTF9HZW5GcmFtZWJ1ZmZlcnNPRVMpfSwKKyAgICB7ImdsR2Vu
UGVyZk1vbml0b3JzQU1EIiwgUChHTF9HZW5QZXJmTW9uaXRvcnNBTUQpfSwKICAgICB7ImdsR2Vu
UHJvZ3JhbVBpcGVsaW5lcyIsIFAoR0xfR2VuUHJvZ3JhbVBpcGVsaW5lcyl9LAogICAgIHsiZ2xH
ZW5Qcm9ncmFtUGlwZWxpbmVzRVhUIiwgUChHTF9HZW5Qcm9ncmFtUGlwZWxpbmVzRVhUKX0sCiAg
ICAgeyJnbEdlblF1ZXJpZXMiLCBQKEdMX0dlblF1ZXJpZXMpfSwKQEAgLTQ0NSw2ICs0NTIsMTIg
QEAgY29uc3QgUHJvY0VudHJ5IGdfcHJvY1RhYmxlW10gPSB7CiAgICAgeyJnbEdldE9iamVjdExh
YmVsS0hSIiwgUChHTF9HZXRPYmplY3RMYWJlbEtIUil9LAogICAgIHsiZ2xHZXRPYmplY3RQdHJM
YWJlbCIsIFAoR0xfR2V0T2JqZWN0UHRyTGFiZWwpfSwKICAgICB7ImdsR2V0T2JqZWN0UHRyTGFi
ZWxLSFIiLCBQKEdMX0dldE9iamVjdFB0ckxhYmVsS0hSKX0sCisgICAgeyJnbEdldFBlcmZNb25p
dG9yQ291bnRlckRhdGFBTUQiLCBQKEdMX0dldFBlcmZNb25pdG9yQ291bnRlckRhdGFBTUQpfSwK
KyAgICB7ImdsR2V0UGVyZk1vbml0b3JDb3VudGVySW5mb0FNRCIsIFAoR0xfR2V0UGVyZk1vbml0
b3JDb3VudGVySW5mb0FNRCl9LAorICAgIHsiZ2xHZXRQZXJmTW9uaXRvckNvdW50ZXJTdHJpbmdB
TUQiLCBQKEdMX0dldFBlcmZNb25pdG9yQ291bnRlclN0cmluZ0FNRCl9LAorICAgIHsiZ2xHZXRQ
ZXJmTW9uaXRvckNvdW50ZXJzQU1EIiwgUChHTF9HZXRQZXJmTW9uaXRvckNvdW50ZXJzQU1EKX0s
CisgICAgeyJnbEdldFBlcmZNb25pdG9yR3JvdXBTdHJpbmdBTUQiLCBQKEdMX0dldFBlcmZNb25p
dG9yR3JvdXBTdHJpbmdBTUQpfSwKKyAgICB7ImdsR2V0UGVyZk1vbml0b3JHcm91cHNBTUQiLCBQ
KEdMX0dldFBlcmZNb25pdG9yR3JvdXBzQU1EKX0sCiAgICAgeyJnbEdldFBvaW50ZXJ2IiwgUChH
TF9HZXRQb2ludGVydil9LAogICAgIHsiZ2xHZXRQb2ludGVydktIUiIsIFAoR0xfR2V0UG9pbnRl
cnZLSFIpfSwKICAgICB7ImdsR2V0UG9pbnRlcnZSb2J1c3RBTkdMRVJvYnVzdEFOR0xFIiwgUChH
TF9HZXRQb2ludGVydlJvYnVzdEFOR0xFUm9idXN0QU5HTEUpfSwKQEAgLTc4NCw2ICs3OTcsNyBA
QCBjb25zdCBQcm9jRW50cnkgZ19wcm9jVGFibGVbXSA9IHsKICAgICB7ImdsU2NhbGVmIiwgUChH
TF9TY2FsZWYpfSwKICAgICB7ImdsU2NhbGV4IiwgUChHTF9TY2FsZXgpfSwKICAgICB7ImdsU2Np
c3NvciIsIFAoR0xfU2Npc3Nvcil9LAorICAgIHsiZ2xTZWxlY3RQZXJmTW9uaXRvckNvdW50ZXJz
QU1EIiwgUChHTF9TZWxlY3RQZXJmTW9uaXRvckNvdW50ZXJzQU1EKX0sCiAgICAgeyJnbFNlbWFw
aG9yZVBhcmFtZXRlcnVpNjR2RVhUIiwgUChHTF9TZW1hcGhvcmVQYXJhbWV0ZXJ1aTY0dkVYVCl9
LAogICAgIHsiZ2xTZXRGZW5jZU5WIiwgUChHTF9TZXRGZW5jZU5WKX0sCiAgICAgeyJnbFNoYWRl
TW9kZWwiLCBQKEdMX1NoYWRlTW9kZWwpfSwKQEAgLTkzMiw1ICs5NDYsNSBAQCBjb25zdCBQcm9j
RW50cnkgZ19wcm9jVGFibGVbXSA9IHsKICAgICB7ImdsV2FpdFN5bmMiLCBQKEdMX1dhaXRTeW5j
KX0sCiAgICAgeyJnbFdlaWdodFBvaW50ZXJPRVMiLCBQKEdMX1dlaWdodFBvaW50ZXJPRVMpfX07
CiAKLWNvbnN0IHNpemVfdCBnX251bVByb2NzID0gODk5OworY29uc3Qgc2l6ZV90IGdfbnVtUHJv
Y3MgPSA5MTM7CiB9ICAvLyBuYW1lc3BhY2UgZWdsCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9BTkdMRS9zcmMvdGVzdHMvYW5nbGVfZW5kMmVuZF90ZXN0cy5nbmkgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvYW5nbGVfZW5kMmVuZF90ZXN0cy5nbmkKaW5kZXggYzMz
NjhlNmM5MDYwMTFhMDY0M2U0Mjg3MDRmNDg4NzIwODU5NGNhNC4uOTU3NGM5YjhkMjFhNWExZDgw
ODI0MzU3OWJkZmMyMDBjMmU4OWQ0YiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvc3JjL3Rlc3RzL2FuZ2xlX2VuZDJlbmRfdGVzdHMuZ25pCisrKyBiL1NvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL3NyYy90ZXN0cy9hbmdsZV9lbmQyZW5kX3Rlc3RzLmduaQpAQCAtMTUwLDYgKzE1
MCw3IEBAIGFuZ2xlX2VuZDJlbmRfdGVzdHNfc291cmNlcyA9IFsKICAgImdsX3Rlc3RzL1VucGFj
a1Jvd0xlbmd0aC5jcHAiLAogICAiZ2xfdGVzdHMvVmVydGV4QXR0cmlidXRlVGVzdC5jcHAiLAog
ICAiZ2xfdGVzdHMvVmlld3BvcnRUZXN0LmNwcCIsCisgICJnbF90ZXN0cy9WdWxrYW5QZXJmb3Jt
YW5jZUNvdW50ZXJUZXN0LmNwcCIsCiAgICJnbF90ZXN0cy9XRUJHTFZpZGVvVGV4dHVyZVRlc3Qu
Y3BwIiwKICAgImdsX3Rlc3RzL1dlYkdMQ29tcGF0aWJpbGl0eVRlc3QuY3BwIiwKICAgImdsX3Rl
c3RzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVBdmFpbGFiaWxpdHlUZXN0LmNwcCIsCkBAIC0xODcs
MTAgKzE4OCwxMyBAQCBhbmdsZV9lbmQyZW5kX3Rlc3RzX3NvdXJjZXMgPSBbCiAgICJ0ZXN0X3V0
aWxzL0FOR0xFVGVzdC5oIiwKICAgInRlc3RfdXRpbHMvTXVsdGl2aWV3VGVzdC5jcHAiLAogICAi
dGVzdF91dGlscy9NdWx0aXZpZXdUZXN0LmgiLAorICAidGVzdF91dGlscy9zeXN0ZW1faW5mb191
dGlsLmNwcCIsCisgICJ0ZXN0X3V0aWxzL3N5c3RlbV9pbmZvX3V0aWwuaCIsCiBdCiBhbmdsZV9l
bmQyZW5kX3Rlc3RzX21hY19zb3VyY2VzID0gWwogICAiZWdsX3Rlc3RzL0VHTERldmljZUNHTFRl
c3QuY3BwIiwKICAgImVnbF90ZXN0cy9FR0xJT1N1cmZhY2VDbGllbnRCdWZmZXJUZXN0LmNwcCIs
CisgICJlZ2xfdGVzdHMvRUdMUG93ZXJQcmVmZXJlbmNlVGVzdC5jcHAiLAogICAiZWdsX3Rlc3Rz
L0VHTFN1cmZhY2VUZXN0TWFjLm1tIiwKICAgImdsX3Rlc3RzL0ltYWdlVGVzdE1ldGFsLm1tIiwK
IF0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9hbmdsZV9l
bmQyZW5kX3Rlc3RzX2V4cGVjdGF0aW9ucy50eHQgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9z
cmMvdGVzdHMvYW5nbGVfZW5kMmVuZF90ZXN0c19leHBlY3RhdGlvbnMudHh0CmluZGV4IDA4NmEx
Y2YwOGQ0MmVkOTc1NGU3MjljNzI0ZGFhZTliMDdmZjllNzEuLjgxMGIwZDMzYzhhNzU3YzQ4NWMx
NTdmMDUxNTk2ZWU1NTQ1OWM5MzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy90ZXN0cy9hbmdsZV9lbmQyZW5kX3Rlc3RzX2V4cGVjdGF0aW9ucy50eHQKKysrIGIvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2FuZ2xlX2VuZDJlbmRfdGVzdHNfZXhwZWN0
YXRpb25zLnR4dApAQCAtMTUwLDYgKzE1MCw3IEBACiA2NjQzIE1BQyBBTUQgT1BFTkdMIDogVHJh
bnNmb3JtRmVlZGJhY2tUZXN0LlRyYW5zZm9ybUZlZWRiYWNrUXVlcnlQYXVzZWREcmF3VGhlblJl
c3VtZS8qID0gU0tJUAogNjY0MyBNQUMgQU1EIE9QRU5HTCA6IFRyYW5zZm9ybUZlZWRiYWNrVGVz
dC5UcmFuc2Zvcm1GZWVkYmFja1BhdXNlZERyYXdUaGVuUmVzdW1lLyogPSBTS0lQCiA2NzM4IE1B
QyBBTUQgT1BFTkdMIDogVGV4dHVyZTNEVGVzdEVTMy5QaXhlbFVucGFja1N0YXRlVGV4KiA9IFNL
SVAKKzEyOTY0NjcgTUFDIE9QRU5HTCA6IFZlcnRleEF0dHJpYnV0ZVRlc3RFUzMuZW1wdHlCdWZm
ZXIvKiA9IFNLSVAKIAogLy8gRmFpbHVyZXMgZnJvbSBUcmFuc2Zvcm0gRmVlZGJhY2sgRW5hYmxl
bWVudC4gUGFzc2VzIG9uIEJpZ1N1cgogNjQwNyBNQUMgTlZJRElBIE1FVEFMIDogVHJhbnNmb3Jt
RmVlZGJhY2tUZXN0Lk9wdGltaXplZFZhcnlpbmdzL0VTM19NZXRhbCA9IFNLSVAKQEAgLTE5Miw2
ICsxOTMsMTEgQEAKIDY0MTggTUFDIEFQUExFIE1FVEFMIDogVW5pZm9ybUJsb2NrV2l0aE9uZUxh
cmdlQXJyYXlNZW1iZXJUZXN0Lk1lbWJlclR5cGVJc01hdHJpeEFuZEluc3RhbmNlZC9FUzNfTWV0
YWwgPSBTS0lQCiA2NDE4IE1BQyBBUFBMRSBNRVRBTCA6IFVuaWZvcm1CbG9ja1dpdGhPbmVMYXJn
ZUFycmF5TWVtYmVyVGVzdC5NZW1iZXJUeXBlSXNTdHJ1Y3RBbmRJbnN0YW5jZWRBcnJheS9FUzNf
TWV0YWwgPSBTS0lQCiAKKzcwNzkgTUFDIE1FVEFMIElOVEVMIDogTXVsdGlzYW1wbGVSZXNvbHZl
VGVzdC5SZXNvbHZlRDMyRlM4RjRTYW1wbGVzL0VTM19NZXRhbCA9IFNLSVAKKzcwNzkgTUFDIE1F
VEFMIElOVEVMIDogTXVsdGlzYW1wbGVSZXNvbHZlVGVzdC5SZXNvbHZlRDI0UzhTYW1wbGVzL0VT
M19NZXRhbCA9IFNLSVAKKzcwNzkgTUFDIE1FVEFMIElOVEVMIDogTXVsdGlzYW1wbGVSZXNvbHZl
VGVzdC5SZXNvbHZlRDMyRlNhbXBsZXMvRVMzX01ldGFsID0gU0tJUAorNzA3OSBNQUMgTUVUQUwg
SU5URUwgOiBNdWx0aXNhbXBsZVJlc29sdmVUZXN0LlJlc29sdmVEMjRTYW1wbGVzL0VTM19NZXRh
bCA9IFNLSVAKKzcwNzkgTUFDIE1FVEFMIElOVEVMIDogTXVsdGlzYW1wbGVSZXNvbHZlVGVzdC5S
ZXNvbHZlRDE2U2FtcGxlcy9FUzNfTWV0YWwgPSBTS0lQCiAKIDQ5MDggTUFDIE1FVEFMIElOVEVM
IDogQmxpdEZyYW1lYnVmZmVyVGVzdC5NdWx0aXNhbXBsZURlcHRoLyogPSBTS0lQCiA0OTA4IE1B
QyBNRVRBTCBBTUQgOiBCbGl0RnJhbWVidWZmZXJUZXN0Lk11bHRpc2FtcGxlRGVwdGgvKiA9IFNL
SVAKQEAgLTI1MSwxMSArMjU3LDIxIEBACiAzODQxIFdJTiBEM0QxMSA6IEdMU0xUZXN0X0VTMzEu
Qm9vbEluSW50ZXJmYWNlQmxvY2tzLyogPSBTS0lQCiAvLyBNaXN0cmFuc2xhdGlvbgogNjIxNiBX
SU4gRDNEMTEgOiBHTFNMVGVzdF9FUzMxLlN0b3JhZ2VCdWZmZXJCb29sVmVjdG9yUGFzc2VkVG9G
dW5jdGlvbnMvKiA9IFNLSVAKKy8vIEQzRCBkb2VzIG5vdCBzdXBwb3J0IGNvbXByZXNzZWQgdGV4
dHVyZXMgd2hlcmUgdGhlIGJhc2UgbWlwIGxldmVsIGlzIG5vdCBhIG11bHRpcGxlIG9mIDQKKzQ4
NDEgV0lOIEQzRDkgOiBEWFQxQ29tcHJlc3NlZFRleHR1cmVUZXN0Lk5vbkJsb2NrU2l6ZXNNaXBM
ZXZlbHMvKiA9IFNLSVAKKzQ4NDEgV0lOIEQzRDExIDogRFhUMUNvbXByZXNzZWRUZXh0dXJlVGVz
dC5Ob25CbG9ja1NpemVzTWlwTGV2ZWxzLyogPSBTS0lQCis3MTA5IFdJTiBEM0QxMSA6IENsZWFy
VGVzdFJHQl9FUzMuKi8qID0gU0tJUAorNzExMyBXSU4gRDNEOSA6IEdMU0xUZXN0Lkxvb3BCb2R5
RW5kaW5nSW5CcmFuY2gqLyogPSBTS0lQCiAKIC8vIEFuZHJvaWQKIDYwOTUgQU5EUk9JRCBHTEVT
IDogR0xTTFRlc3RfRVMzLkluaXRHbG9iYWxDb21wbGV4Q29uc3RhbnQvKiA9IFNLSVAKIDYxMTYg
QU5EUk9JRCBHTEVTIDogR0xTTFRlc3RMb29wcy5Gb3JOb0NvbmRpdGlvbi8qID0gU0tJUAogNjIz
NyBBTkRST0lEIEdMRVMgOiBCdWZmZXJEYXRhVGVzdEVTMy5EcmF3V2l0aE5vdENhbGxpbmdCdWZm
ZXJEYXRhLyogPSBTS0lQCis3MDU5IEFORFJPSUQgVlVMS0FOIDogRUdMU3VyZmFjZVRlc3QuUmVz
aXplV2luZG93V2l0aERyYXcvKiA9IFNLSVAKKzcwNTkgQU5EUk9JRCA6IEVHTFJlYWRpbmVzc0No
ZWNrVGVzdC5Jc1J1bm5pbmdPbkFOR0xFLyogPSBTS0lQCis3MDU5IEFORFJPSUQgOiBFR0xSZWFk
aW5lc3NDaGVja1Rlc3QuR2V0UHJvY0FkZHJlc3NOZWdhdGl2ZVRlc3QvKiA9IFNLSVAKKzcwNTkg
QU5EUk9JRCA6IEVHTFJlYWRpbmVzc0NoZWNrVGVzdC5IYXNHZXRQbGF0Zm9ybURpc3BsYXlFWFQv
KiA9IFNLSVAKKzcwNTkgQU5EUk9JRCA6IEVHTENvbnRleHRTaGFyaW5nVGVzdE5vU3luY1RleHR1
cmVVcGxvYWRzLk5vU3luYy8qID0gU0tJUAogCiAvLyBSZWFkaW5nIGJhY2sgdGhlIGNvbnRlbnRz
IG9mIGFuIFJHQlggaW1hZ2UgaW5pdGlhbGl6ZWQgd2l0aCBub24tMjU1IGFscGhhIHJldHVybnMg
dGhlIG9yaWdpbmFsIGFscGhhIChpbnN0ZWFkIG9mIDI1NSkKIDY0NzIgQU5EUk9JRCBHTEVTIDog
SW1hZ2VUZXN0RVMzLlJHQlhBSEJJbXBvcnRUaGVuVXBsb2FkLyogPSBTS0lQCkBAIC0zNzcsNiAr
MzkzLDcgQEAKIDYxNjcgUElYRUw0T1JYTCBHTEVTIDogRGVwdGhTdGVuY2lsVGVzdEVTMy5GcmFt
ZWJ1ZmZlckNsZWFyVGhlblN0ZW5jaWxBdHRhY2hlZFRoZW5TdGVuY2lsVGVzdFN0YXRlLyogPSBT
S0lQCiA2MTY3IFBJWEVMNE9SWEwgR0xFUyA6IERlcHRoU3RlbmNpbFRlc3RFUzMuRnJhbWVidWZm
ZXJDbGVhclRoZW5TdGVuY2lsVGVzdFN0YXRlVGhlblN0ZW5jaWxBdHRhY2hlZC8qID0gU0tJUAog
NjE2NyBQSVhFTDRPUlhMIEdMRVMgOiBEZXB0aFN0ZW5jaWxUZXN0RVMzLlN0ZW5jaWxUZXN0U3Rh
dGVUaGVuRnJhbWVidWZmZXJDbGVhclRoZW5TdGVuY2lsQXR0YWNoZWQvKiA9IFNLSVAKKzEyOTY0
NjcgUElYRUw0T1JYTCBHTEVTIDogVmVydGV4QXR0cmlidXRlVGVzdEVTMy5lbXB0eUJ1ZmZlci8q
ID0gU0tJUAogCiAvLyBJbnRlcm5hbCBkcml2ZXIgZmFpbHVyZXMgb24gYm90aCBHTEVTIGFuZCBW
dWxrYW4KIDM4MzkgTkVYVVM1WCA6IEdMU0xUZXN0X0VTMzEuVHlwZXNVc2VkSW5EaWZmZXJlbnRC
bG9ja1N0b3JhZ2VzLyogPSBTS0lQCkBAIC00MTksNiArNDM2LDkgQEAKIDY5MzEgUElYRUw2IFZV
TEtBTiA6IFRyYW5zZm9ybUZlZWRiYWNrVGVzdElPQmxvY2tzLlNlcGFyYXRlLyogPSBTS0lQCiA2
OTMxIFBJWEVMNiBWVUxLQU4gOiBXZWJHTENvbXBhdGliaWxpdHlUZXN0LkZyYW1lYnVmZmVyRmxv
YXRDb2xvckF0dGFjaG1lbnRNUlQvKiA9IFNLSVAKIDcwMDQgUElYRUw2IFZVTEtBTiA6IEVHTENv
bnRleHRTaGFyaW5nVGVzdE5vU3luY1RleHR1cmVVcGxvYWRzLk5vU3luYy8qID0gU0tJUAorNzA5
NiBQSVhFTDYgVlVMS0FOIDogVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdC5NYXBwaW5nR3B1
UmVhZE9ubHlCdWZmZXJHaG9zdHNCdWZmZXIvKiA9IFNLSVAKKzcwOTYgUElYRUw2IFZVTEtBTiA6
IFZ1bGthblBlcmZvcm1hbmNlQ291bnRlclRlc3QuQ2xlYXJUaGVuU2Npc3NvcmVkRHJhdy8qID0g
U0tJUAorNzA5NiBQSVhFTDYgVlVMS0FOIDogVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdC5S
ZWFkT25seURlcHRoU3RlbmNpbEZlZWRiYWNrTG9vcFVzZXNTaW5nbGVSZW5kZXJQYXNzLyogPSBT
S0lQCiAKIC8vIEFNRCB3aW5kb3dzIGZhaWx1cmVzLiAgVGhlIEdQVSBhbmQgZHJpdmVyIG9uIG91
ciBib3RzIGFyZSB2ZXJ5IG9sZCBhbmQgYnVnZ3kuCiAvLyBodHRwOi8vY3JidWcuY29tLzEyMjQ5
OTYKQEAgLTQ3Niw5ICs0OTYsMTIgQEAKIC8vIEluZGV4ZWQgaW5kaXJlY3QgZHJhdyBvZmZzZXQg
YnVnCiA2NzUxIE1FVEFMIDogTXVsdGlEcmF3SW5kaXJlY3RUZXN0Lk11bHRpRHJhd0VsZW1lbnRz
SW5kaXJlY3QqID0gU0tJUAogNjc1MSBEM0QxMSA6IE11bHRpRHJhd0luZGlyZWN0VGVzdC5NdWx0
aURyYXdFbGVtZW50c0luZGlyZWN0KiA9IFNLSVAKLTY3NTEgTUVUQUwgOiBEcmF3QmFzZVZlcnRl
eEJhc2VJbnN0YW5jZVRlc3QuTXVsdGlEcmF3RWxlbWVudHNJbnN0YW5jZWRCYXNlVmVydGV4QmFz
ZUluc3RhbmNlLyogPSBTS0lQCiA2NzUxIEQzRDExIDogRHJhd0Jhc2VWZXJ0ZXhCYXNlSW5zdGFu
Y2VUZXN0Lk11bHRpRHJhd0VsZW1lbnRzSW5zdGFuY2VkQmFzZVZlcnRleEJhc2VJbnN0YW5jZS8q
ID0gU0tJUAogCisvLyBOb24tc3RhdGljIGRyYXcgYnVnCis2OTYzIE1FVEFMIDogRHJhd0Jhc2VW
ZXJ0ZXhWYXJpYW50c1Rlc3QuRHJhd0VsZW1lbnRzSW5zdGFuY2VkQmFzZVZlcnRleEJhc2VJbnN0
YW5jZS9FUzNfTWV0YWxfX0RZTkFNSUNfRFJBVyA9IFNLSVAKKzY5NjMgTUVUQUwgOiBEcmF3QmFz
ZVZlcnRleFZhcmlhbnRzVGVzdC5EcmF3RWxlbWVudHNJbnN0YW5jZWRCYXNlVmVydGV4QmFzZUlu
c3RhbmNlL0VTM19NZXRhbF9fU1RSRUFNX0RSQVcgPSBTS0lQCisKIC8vIEFTQU4gZmxha2VzIHdp
dGggVnVsa2FuIC8gU3dpZnRTaGFkZXIgLyBBc3luY1F1ZXVlCiA2ODc1IEFTQU4gVlVMS0FOIFNX
SUZUU0hBREVSIDogQ29tcHV0ZVNoYWRlclRlc3QuKi9FUzNfMV9WdWxrYW5fU3dpZnRTaGFkZXJf
QXN5bmNRdWV1ZSA9IFNLSVAKIDY4NzUgU1dJRlRTSEFERVIgOiBUcmFuc2Zvcm1GZWVkYmFja1Rl
c3QuU3Bhbk11bHRpcGxlUmVuZGVyUGFzc2VzLyogPSBTS0lQCkBAIC01MTcsMyArNTQwLDUgQEAK
IC8vIE5WaWRpYSBmYWlscyBuZXcgU3dpenpsZWRDaGFpbmVkQXNzaWduSW5jcmVtZW50IHRlc3Qg
b24gR0wgYW5kIEdMRVMuCiA3MDI5IE5WSURJQSBPUEVOR0wgOiBHTFNMVGVzdC5Td2l6emxlZENo
YWluZWRBc3NpZ25JbmNyZW1lbnQvKiA9IFNLSVAKIDcwMjkgTlZJRElBIEdMRVMgOiBHTFNMVGVz
dC5Td2l6emxlZENoYWluZWRBc3NpZ25JbmNyZW1lbnQvKiA9IFNLSVAKKworNzA4NSA6IFZ1bGth
blBlcmZvcm1hbmNlQ291bnRlclRlc3QuSW52YWxpZGF0ZURyYXdEaXNhYmxlLyogPSBTS0lQCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvYW5nbGVfc3lzdGVt
X2luZm9fdGVzdHNfbWFpbi5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMv
YW5nbGVfc3lzdGVtX2luZm9fdGVzdHNfbWFpbi5jcHAKaW5kZXggNGI2Yjc1ZjU5MDVlODk4OTI3
YjAyNjI4ZDQwOGY4NDczM2MwYWU3Ni4uMTI0MzAzZTUwYjg1ZWNkNTdhMDU4MTUwNzE2MTg5NmU2
ZjQ0YzcwZCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2Fu
Z2xlX3N5c3RlbV9pbmZvX3Rlc3RzX21haW4uY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FO
R0xFL3NyYy90ZXN0cy9hbmdsZV9zeXN0ZW1faW5mb190ZXN0c19tYWluLmNwcApAQCAtNDcsNiAr
NDcsOCBAQCBuYW1lc3BhY2UganMgPSByYXBpZGpzb247CiAKIGJvb2wgZ0ZhaWxlZFRvRmluZEdQ
VTsKIAorY29uc3RleHByIGNoYXIga1JlbmRlclRlc3RPdXRwdXREaXJbXSA9ICItLXJlbmRlci10
ZXN0LW91dHB1dC1kaXI9IjsKKwogaW50IG1haW4oaW50IGFyZ2MsIGNoYXIgKiphcmd2KQogewog
ICAgIGFuZ2xlOjpTeXN0ZW1JbmZvIGluZm87CkBAIC01NCw2ICs1Niw3IEBAIGludCBtYWluKGlu
dCBhcmdjLCBjaGFyICoqYXJndikKICAgICBib29sIHVzZVZ1bGthbiAgICAgID0gZmFsc2U7CiAg
ICAgYm9vbCBsaXN0VGVzdHMgICAgICA9IGZhbHNlOwogICAgIGJvb2wgdXNlU3dpZnRTaGFkZXIg
PSBmYWxzZTsKKyAgICBzdGQ6OnN0cmluZyBvdXRwdXRfZGlyOwogCiAgICAgZm9yIChpbnQgYXJn
ID0gMTsgYXJnIDwgYXJnYzsgKythcmcpCiAgICAgewpAQCAtNjksNiArNzIsMTAgQEAgaW50IG1h
aW4oaW50IGFyZ2MsIGNoYXIgKiphcmd2KQogICAgICAgICB7CiAgICAgICAgICAgICB1c2VTd2lm
dFNoYWRlciA9IHRydWU7CiAgICAgICAgIH0KKyAgICAgICAgZWxzZSBpZiAoc3Ryc3RyKGFyZ3Zb
YXJnXSwga1JlbmRlclRlc3RPdXRwdXREaXIpKQorICAgICAgICB7CisgICAgICAgICAgICBvdXRw
dXRfZGlyID0gYXJndlthcmddICsgc3RybGVuKGtSZW5kZXJUZXN0T3V0cHV0RGlyKTsKKyAgICAg
ICAgfQogICAgIH0KIAogICAgIGlmIChsaXN0VGVzdHMpCkBAIC0xMTYsNiArMTIzLDEwIEBAIGlu
dCBtYWluKGludCBhcmdjLCBjaGFyICoqYXJndikKICAgICBtYWNoaW5lTW9kZWxWZXJzaW9uLlNl
dFN0cmluZyhpbmZvLm1hY2hpbmVNb2RlbFZlcnNpb24uY19zdHIoKSwgYWxsb2NhdG9yKTsKICAg
ICBkb2MuQWRkTWVtYmVyKCJtYWNoaW5lTW9kZWxWZXJzaW9uIiwgbWFjaGluZU1vZGVsVmVyc2lv
biwgYWxsb2NhdG9yKTsKIAorICAgIGpzOjpWYWx1ZSBhbmRyb2lkU2RrTGV2ZWw7CisgICAgYW5k
cm9pZFNka0xldmVsLlNldEludChpbmZvLmFuZHJvaWRTZGtMZXZlbCk7CisgICAgZG9jLkFkZE1l
bWJlcigiYW5kcm9pZFNka0xldmVsIiwgYW5kcm9pZFNka0xldmVsLCBhbGxvY2F0b3IpOworCiAg
ICAganM6OlZhbHVlIGdwdXM7CiAgICAgZ3B1cy5TZXRBcnJheSgpOwogCkBAIC0xNTksNiArMTcw
LDE3IEBAIGludCBtYWluKGludCBhcmdjLCBjaGFyICoqYXJndikKICAgICBjb25zdCBjaGFyICpv
dXRwdXQgPSBidWZmZXIuR2V0U3RyaW5nKCk7CiAgICAgcHJpbnRmKCIlc1xuIiwgb3V0cHV0KTsK
IAorICAgIGlmICghb3V0cHV0X2Rpci5lbXB0eSgpKQorICAgIHsKKyAgICAgICAgc3RkOjpzdHJp
bmcgb3V0cHV0RmlsZSA9IG91dHB1dF9kaXIgKyAiL2FuZ2xlX3N5c3RlbV9pbmZvLmpzb24iOwor
ICAgICAgICBGSUxFICpmcCAgICAgICAgICAgICAgID0gZm9wZW4ob3V0cHV0RmlsZS5jX3N0cigp
LCAidyIpOworICAgICAgICBpZiAoZnApCisgICAgICAgIHsKKyAgICAgICAgICAgIGZ3cml0ZShv
dXRwdXQsIHNpemVvZihjaGFyKSwgc3RybGVuKG91dHB1dCksIGZwKTsKKyAgICAgICAgICAgIGZj
bG9zZShmcCk7CisgICAgICAgIH0KKyAgICB9CisKICAgICB0ZXN0aW5nOjpJbml0R29vZ2xlVGVz
dCgmYXJnYywgYXJndik7CiAgICAgcmV0dXJuIFJVTl9BTExfVEVTVFMoKTsKIH0KZGlmZiAtLWdp
dCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9hbmdsZV91bml0dGVzdHMuZ25p
IGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2FuZ2xlX3VuaXR0ZXN0cy5nbmkK
aW5kZXggZGQ3MGI5ZmI2M2I3ZjMyOTViMGQyNjU0ZjhlZWEwOWQ2NDlkMTJmMy4uMjUyYTIwNzY0
MjY4OTc5NWM5MDQ2NWUxNjg4MzAzZGU5NmNmYWEyYSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvc3JjL3Rlc3RzL2FuZ2xlX3VuaXR0ZXN0cy5nbmkKKysrIGIvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2FuZ2xlX3VuaXR0ZXN0cy5nbmkKQEAgLTEwOCw2ICsx
MDgsNyBAQCBhbmdsZV91bml0dGVzdHNfY29tcGlsZXJfdGVzdHNfc291cmNlcyA9IFsKICAgImNv
bXBpbGVyX3Rlc3RzL0ltbXV0YWJsZVN0cmluZ190ZXN0LmNwcCIsCiAgICJjb21waWxlcl90ZXN0
cy9Jbml0T3V0cHV0VmFyaWFibGVzX3Rlc3QuY3BwIiwKICAgImNvbXBpbGVyX3Rlc3RzL0ludGVy
bU5vZGVfdGVzdC5jcHAiLAorICAiY29tcGlsZXJfdGVzdHMvS0hSX2JsZW5kX2VxdWF0aW9uX2Fk
dmFuY2VkX3Rlc3QuY3BwIiwKICAgImNvbXBpbGVyX3Rlc3RzL05WX2RyYXdfYnVmZmVyc190ZXN0
LmNwcCIsCiAgICJjb21waWxlcl90ZXN0cy9PRVNfc2FtcGxlX3ZhcmlhYmxlc190ZXN0LmNwcCIs
CiAgICJjb21waWxlcl90ZXN0cy9PRVNfc3RhbmRhcmRfZGVyaXZhdGl2ZXNfdGVzdC5jcHAiLApk
aWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2FuZ2xlX3doaXRl
X2JveF90ZXN0cy5nbmkgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvYW5nbGVf
d2hpdGVfYm94X3Rlc3RzLmduaQppbmRleCA2OWI3NjhlNDMzZWU3YTIwMjJkYmFmMmEyMGI3NjYz
MDYyZTJiNGVkLi5iNTQ3NzEzZDQ3ZGQ0NjFiYjlhMmQzMWJjNzU0NmQ2YzRiNTU2MDE3IDEwMDY0
NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvYW5nbGVfd2hpdGVfYm94
X3Rlc3RzLmduaQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvYW5nbGVf
d2hpdGVfYm94X3Rlc3RzLmduaQpAQCAtMjIsNiArMjIsNSBAQCBhbmdsZV93aGl0ZV9ib3hfdGVz
dHNfdnVsa2FuX3NvdXJjZXMgPSBbCiAgICJnbF90ZXN0cy9WdWxrYW5Gb3JtYXRUYWJsZXNUZXN0
LmNwcCIsCiAgICJnbF90ZXN0cy9WdWxrYW5GcmFtZWJ1ZmZlclRlc3QuY3BwIiwKICAgImdsX3Rl
c3RzL1Z1bGthbk11bHRpdGhyZWFkaW5nVGVzdC5jcHAiLAotICAiZ2xfdGVzdHMvVnVsa2FuUGVy
Zm9ybWFuY2VDb3VudGVyVGVzdC5jcHAiLAogICAiZ2xfdGVzdHMvVnVsa2FuVW5pZm9ybVVwZGF0
ZXNUZXN0LmNwcCIsCiBdCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
dGVzdHMvY2FwdHVyZV9yZXBsYXlfdGVzdHMucHkgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9z
cmMvdGVzdHMvY2FwdHVyZV9yZXBsYXlfdGVzdHMucHkKaW5kZXggYTE1MDk4ZTZmY2MxZjhjZDI2
OTYyZDRiOTJlZjliODU5ZmY5MWVjNC4uM2JkNTEwMDM0YTlkOWFiOTBiNjBjMzkxZmFkMzI3NzAy
OWMxZjk4MyAxMDA3NTUKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2Nh
cHR1cmVfcmVwbGF5X3Rlc3RzLnB5CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90
ZXN0cy9jYXB0dXJlX3JlcGxheV90ZXN0cy5weQpAQCAtNDI5LDYgKzQyOSwxMCBAQCBjbGFzcyBU
ZXN0QmF0Y2goKToKICAgICAgICAgICAgICdBTkdMRV9DQVBUVVJFX09VVF9ESVInOiBzZWxmLnRy
YWNlX2ZvbGRlcl9wYXRoLAogICAgICAgICB9CiAKKyAgICAgICAgaWYgYXJncy5leHBvc2Vfbm9u
Y29uZm9ybWFudF9mZWF0dXJlczoKKyAgICAgICAgICAgIGV4dHJhX2VudlsKKyAgICAgICAgICAg
ICAgICAnQU5HTEVfRkVBVFVSRV9PVkVSUklERVNfRU5BQkxFRCddICs9ICc6ZXhwb3NlTm9uQ29u
Zm9ybWFudEV4dGVuc2lvbnNBbmRWZXJzaW9ucycKKwogICAgICAgICBlbnYgPSB7Kipvcy5lbnZp
cm9uLmNvcHkoKSwgKipleHRyYV9lbnZ9CiAKICAgICAgICAgaWYgbm90IHNlbGYuYXJncy5rZWVw
X3RlbXBfZmlsZXM6CkBAIC00OTEsMTEgKzQ5NSwxNyBAQCBjbGFzcyBUZXN0QmF0Y2goKToKICAg
ICAgICAgICAgIHJldHVybiBGYWxzZQogICAgICAgICByZXR1cm4gVHJ1ZQogCi0gICAgZGVmIFJ1
blJlcGxheShzZWxmLCByZXBsYXlfYnVpbGRfZGlyLCByZXBsYXlfZXhlX3BhdGgsIGNoaWxkX3By
b2Nlc3Nlc19tYW5hZ2VyLCB0ZXN0cyk6CisgICAgZGVmIFJ1blJlcGxheShzZWxmLCByZXBsYXlf
YnVpbGRfZGlyLCByZXBsYXlfZXhlX3BhdGgsIGNoaWxkX3Byb2Nlc3Nlc19tYW5hZ2VyLCB0ZXN0
cywKKyAgICAgICAgICAgICAgICAgIGV4cG9zZV9ub25jb25mb3JtYW50X2ZlYXR1cmVzKToKICAg
ICAgICAgZXh0cmFfZW52ID0gewogICAgICAgICAgICAgJ0FOR0xFX0NBUFRVUkVfRU5BQkxFRCc6
ICcwJywKICAgICAgICAgICAgICdBTkdMRV9GRUFUVVJFX09WRVJSSURFU19FTkFCTEVEJzogJ2Vu
YWJsZV9jYXB0dXJlX2xpbWl0cycsCiAgICAgICAgIH0KKworICAgICAgICBpZiBleHBvc2Vfbm9u
Y29uZm9ybWFudF9mZWF0dXJlczoKKyAgICAgICAgICAgIGV4dHJhX2VudlsKKyAgICAgICAgICAg
ICAgICAnQU5HTEVfRkVBVFVSRV9PVkVSUklERVNfRU5BQkxFRCddICs9ICc6ZXhwb3NlTm9uQ29u
Zm9ybWFudEV4dGVuc2lvbnNBbmRWZXJzaW9ucycKKwogICAgICAgICBlbnYgPSB7Kipvcy5lbnZp
cm9uLmNvcHkoKSwgKipleHRyYV9lbnZ9CiAKICAgICAgICAgcnVuX2NtZCA9IEdldFJ1bkNvbW1h
bmQoc2VsZi5hcmdzLCByZXBsYXlfZXhlX3BhdGgpCkBAIC03NDgsNyArNzU4LDcgQEAgZGVmIFJ1
blRlc3RzKGFyZ3MsIHdvcmtlcl9pZCwgam9iX3F1ZXVlLCByZXN1bHRfbGlzdCwgbWVzc2FnZV9x
dWV1ZSwgbG9nZ2VyLCBuaW4KICAgICAgICAgICAgICAgICBsb2dnZXIuaW5mbyhzdHIodGVzdF9i
YXRjaC5HZXRSZXN1bHRzKCkpKQogICAgICAgICAgICAgICAgIGNvbnRpbnVlCiAgICAgICAgICAg
ICB0ZXN0X2JhdGNoLlJ1blJlcGxheShyZXBsYXlfYnVpbGRfZGlyLCByZXBsYXlfZXhlY19wYXRo
LCBjaGlsZF9wcm9jZXNzZXNfbWFuYWdlciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGNvbnRpbnVlZF90ZXN0cykKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNv
bnRpbnVlZF90ZXN0cywgYXJncy5leHBvc2Vfbm9uY29uZm9ybWFudF9mZWF0dXJlcykKICAgICAg
ICAgICAgIHJlc3VsdF9saXN0LmFwcGVuZCh0ZXN0X2JhdGNoLkdldFJlc3VsdHMoKSkKICAgICAg
ICAgICAgIGxvZ2dlci5pbmZvKHN0cih0ZXN0X2JhdGNoLkdldFJlc3VsdHMoKSkpCiAgICAgICAg
IGV4Y2VwdCBLZXlib2FyZEludGVycnVwdDoKQEAgLTExMDcsNiArMTExNywxMSBAQCBpZiBfX25h
bWVfXyA9PSAnX19tYWluX18nOgogICAgICAgICBoZWxwPSdNYXhpbXVtIG51bWJlciBvZiBjb25j
dXJyZW50IG5pbmphIGpvYnMgdG8gcnVuIGF0IG9uY2UuJykKICAgICBwYXJzZXIuYWRkX2FyZ3Vt
ZW50KCctLXh2ZmInLCBhY3Rpb249J3N0b3JlX3RydWUnLCBoZWxwPSdSdW4gd2l0aCB4dmZiLicp
CiAgICAgcGFyc2VyLmFkZF9hcmd1bWVudCgnLS1hc2FuJywgYWN0aW9uPSdzdG9yZV90cnVlJywg
aGVscD0nQnVpbGQgd2l0aCBBU0FOLicpCisgICAgcGFyc2VyLmFkZF9hcmd1bWVudCgKKyAgICAg
ICAgJy1FJywKKyAgICAgICAgJy0tZXhwb3NlLW5vbmNvbmZvcm1hbnQtZmVhdHVyZXMnLAorICAg
ICAgICBhY3Rpb249J3N0b3JlX3RydWUnLAorICAgICAgICBoZWxwPSdFeHBvc2Ugbm9uLWNvbmZv
cm1hbnQgZmVhdHVyZXMgdG8gYWR2ZXJ0aXNlIEdMRVMgMy4yJykKICAgICBwYXJzZXIuYWRkX2Fy
Z3VtZW50KAogICAgICAgICAnLS1zaG93LWNhcHR1cmUtc3Rkb3V0JywgYWN0aW9uPSdzdG9yZV90
cnVlJywgaGVscD0nUHJpbnQgdGVzdCBzdGRvdXQgZHVyaW5nIGNhcHR1cmUuJykKICAgICBwYXJz
ZXIuYWRkX2FyZ3VtZW50KCctLWRlYnVnJywgYWN0aW9uPSdzdG9yZV90cnVlJywgaGVscD0nRGVi
dWcgYnVpbGRzIChkZWZhdWx0IGlzIFJlbGVhc2UpLicpCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvY2FwdHVyZV9yZXBsYXlfdGVzdHMvY2FwdHVyZV9yZXBs
YXlfZXhwZWN0YXRpb25zLnR4dCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9j
YXB0dXJlX3JlcGxheV90ZXN0cy9jYXB0dXJlX3JlcGxheV9leHBlY3RhdGlvbnMudHh0CmluZGV4
IDlmZWQ0NjUxZTRiZTU0MWFjYWY0ZTY1Y2Y0OTFmOWZiMWNmMTYwYzEuLmRhMzM2MzcxZDEyZTA1
MmU4MjI2ZDE2NzRiMzI2ZGIyZDEzMDUxZGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3NyYy90ZXN0cy9jYXB0dXJlX3JlcGxheV90ZXN0cy9jYXB0dXJlX3JlcGxheV9leHBl
Y3RhdGlvbnMudHh0CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9jYXB0
dXJlX3JlcGxheV90ZXN0cy9jYXB0dXJlX3JlcGxheV9leHBlY3RhdGlvbnMudHh0CkBAIC0zMyw5
ICszMyw2IEBACiAKICMgRVMyCiAKLQotNjUzOCA6IEFkZE1vY2tUZXh0dXJlTm9SZW5kZXJUYXJn
ZXRUZXN0Lk5vUHJvZ3JhbU91dHB1dFdvcmthcm91bmQvKiA9IEZMQUtZCi0KIDU4MjIgOiBFeHRl
cm5hbFdyYXBUZXN0LkNsYW1wVG9FZGdlLyogPSBDUkFTSAogNTgyMiA6IEV4dGVybmFsV3JhcFRl
c3QuTWlycm9yZWRSZXBlYXQvKiA9IENSQVNICiA1ODIyIDogRXh0ZXJuYWxXcmFwVGVzdC5Ob1dy
YXAvKiA9IENSQVNICkBAIC00OCw3ICs0NSw2IEBACiAKIDYyODYgOiBJbWFnZVRlc3QuU291cmNl
MkRUYXJnZXQyRC8qID0gRkFJTAogNjI4NiA6IEltYWdlVGVzdC5Tb3VyY2UyRFRhcmdldEV4dGVy
bmFsLyogPSBGQUlMCi02Mjg2IDogSW1hZ2VUZXN0LlNvdXJjZTJEVGFyZ2V0MkRUYXJnZXRUZXh0
dXJlUmVzcGVjaWZ5Q29sb3JzcGFjZS8qID0gRkxBS1kKIDYyODYgOiBJbWFnZVRlc3QuU291cmNl
Q3ViZVRhcmdldDJELyogPSBGQUlMCiA1ODIyIDogSW1hZ2VUZXN0LlNvdXJjZUN1YmVUYXJnZXRF
eHRlcm5hbC8qID0gRkFJTAogCkBAIC02NSw3ICs2MSw2IEBACiA2MTgwIDogUGJ1ZmZlclRlc3Qu
Q2xlYXJpbmcvKiA9IEZBSUwKIDYxODAgOiBQYnVmZmVyVGVzdC5UZXh0dXJlU2l6ZVJlc2V0Lyog
PSBGQUlMCiAKLTYyMjAgOiBUZXh0dXJlMkRUZXN0LkRlZmluZU11bHRpcGxlTGV2ZWxzV2l0aG91
dE1pcG1hcHBpbmcvKiA9IFRJTUVPVVQKIAogNjIyMSA6IFZ1bGthbkV4dGVybmFsSW1hZ2VUZXN0
LlNob3VsZENsZWFyT3BhcXVlRmRXaXRoU2VtYXBob3Jlcy8qID0gVElNRU9VVAogNjIyMSA6IFZ1
bGthbkV4dGVybmFsSW1hZ2VUZXN0LlNob3VsZENsZWFyT3BhcXVlRmRXaXRoU2VtYXBob3Jlc011
dGFibGVOb1N0b3JhZ2UvKiA9IFRJTUVPVVQKQEAgLTg0LDEzICs3OSw2IEBACiAjIEZhaWxzIGJl
Y2F1c2Ugb2YgdW5zdXBwb3J0ZWQgY29tYmluZWQgZGVwdGgvc3RlbmNpbCBHZXRJbWFnZS4KIDQ2
ODggQVNBTiA6IERlcHRoU3RlbmNpbFRlc3QuRGVwdGhPbmx5RW11bGF0ZWRXaXRoUGFja2VkLyog
PSBGQUlMCiAKLSMgZmxha3kgdGVzdAotNjUxMSA6IERyYXdCdWZmZXJzVGVzdC5VbndyaXR0ZW5P
dXRwdXRWYXJpYWJsZXNTaG91bGROb3RDcmFzaC8qID0gRkxBS1kKLTYxODAgOiBXZWJHTENvbXBh
dGliaWxpdHlUZXN0LkRyYXdFbGVtZW50c0J1ZmZlck91dE9mQm91bmRzSW5JbmRleEJ1ZmZlci8q
ID0gRkxBS1kKLTYxODAgOiBJbWFnZVRlc3QuTWlwTGV2ZWxzLyogPSBGTEFLWQotNjM3MyA6IFdl
YkdMQ29tcGF0aWJpbGl0eVRlc3QuRHJhd0FycmF5c0J1ZmZlck91dE9mQm91bmRzTm9uSW5zdGFu
Y2VkLyogPSBGTEFLWQotNjE4MCA6IFdlYkdMQ29tcGF0aWJpbGl0eVRlc3QuRHJhd0VsZW1lbnRz
QnVmZmVyT3V0T2ZCb3VuZHNJblZlcnRleEJ1ZmZlci8qID0gRkxBS1kKLQogIyBTa2lwcGVkIGlu
IGVuZDJlbmQgdGVzdHMKIDYzMzYgOiBHZXRJbWFnZVRlc3QuSW5jb25zaXN0ZW50VGV4dHVyZTJE
LyogPSBOT1RfUlVOCiAKQEAgLTEwOCw5ICs5Niw5IEBACiA2Mjg2IDogSW1hZ2VUZXN0RVMzLlNv
dXJjZVJlbmRlcmJ1ZmZlclRhcmdldFRleHR1cmVFeHRlcm5hbEVTU0wzLyogPSBGQUlMCiA2NTEy
IDogUm9idXN0UmVzb3VyY2VJbml0VGVzdEVTMy5CaW5kVGV4SW1hZ2UvKiA9IEZBSUwKIDYxODAg
V0lOIDogVHJhbnNmb3JtRmVlZGJhY2tUZXN0LkRyYXdXaXRob3V0VHJhbnNmb3JtRmVlZGJhY2tU
aGVuV2l0aC8qID0gRkxBS1kKLTYxODAgOiBUcmFuc2Zvcm1GZWVkYmFja1Rlc3QuVHJhbnNmb3Jt
RmVlZGJhY2tRdWVyeVBhdXNlZERyYXdUaGVuUmVzdW1lLyogPSBGTEFLWQogNjUxMyA6IFRyYW5z
Zm9ybUZlZWRiYWNrVGVzdC5NdWx0aUNvbnRleHQvKiA9IEZMQUtZCi0KKzYxODAgV0lOIDogVHJh
bnNmb3JtRmVlZGJhY2tUZXN0LkJ1ZmZlck91dE9mTWVtb3J5LyogPSBGTEFLWQorNjE4MCA6IFZl
cnRleEF0dHJpYnV0ZVRlc3RFUzMuRHJhd1dpdGhVbmFsaWduZWREYXRhLyogPSBGTEFLWQogCiA2
MTgwIDogVW5pZm9ybUJ1ZmZlclRlc3QuQmxvY2tBcnJheUNvbnRhaW5pbmdBcnJheU9mU3RydWN0
cy8qID0gRkFJTAogNjE4MCA6IFVuaWZvcm1CdWZmZXJUZXN0Lk1hbnlCbG9ja3MvKiA9IEZBSUwK
QEAgLTEyNCwxNSArMTEyLDEyIEBACiA2MzE0IDogRnJhbWVidWZmZXJUZXN0X0VTMy5SZW5kZXJB
bmRJbnZhbGlkYXRlSW1tdXRhYmxlVGV4dHVyZVdpdGhCZXlvbmRNYXhMZXZlbC8qID0gQ1JBU0gK
IDYxODAgOiBJbWFnZVRlc3RFUzMuU291cmNlQ3ViZVRhcmdldEV4dGVybmFsRVNTTDMvKiA9IEZB
SUwKIDYzMzQgOiBNaXBtYXBUZXN0RVMzLkdlbmVyYXRlTWlwbWFwQmFzZUxldmVsT3V0T2ZSYW5n
ZUltbXV0YWJsZVRleHR1cmUvKiA9IENSQVNICi02MzMzIDogVGV4dHVyZTJERmxvYXRUZXN0RVMz
LlRleHR1cmVIYWxmRmxvYXRMaW5lYXJMZWdhY3lUZXN0LyogPSBDUkFTSAotNjMzMyA6IFRleHR1
cmUyREZsb2F0VGVzdEVTMy5UZXh0dXJlSGFsZkZsb2F0U2FtcGxlTGVnYWN5VGVzdC8qID0gQ1JB
U0gKIDYzMzQgOiBUZXh0dXJlMkRUZXN0RVMzLkltbXV0YWJsZVRleHR1cmVCYXNlTGV2ZWxPdXRP
ZlJhbmdlLyogPSBDUkFTSAogNjM5OSA6IFRleHR1cmUyRFRlc3RFUzMuVGV4U3RvcmFnZTJEQ3lj
bGVUaHJvdWdoWXV2U291cmNlc05vRGF0YS8qID0gQ1JBU0gKIDYzMzQgOiBUZXh0dXJlMkRUZXN0
RVMzLlRleHR1cmVCYXNlTGV2ZWxHcmVhdGVyVGhhbk1heExldmVsLyogPSBDUkFTSAogNjM5OSA6
IFRleHR1cmUyRFRlc3RFUzMuVGV4U3RvcmFnZTJEU2ltdWx0YW5lb3VzVXNlT2ZNdWx0aXBsZVl1
dlNvdXJjZXNOb0RhdGEvKiA9IENSQVNICiA2NDAwIDogVGV4dHVyZTJEVGVzdEVTMy5UZXh0dXJl
Q29tcGxldGVuZXNzQ2hhbmdlc1dpdGhCYXNlTGV2ZWwvKiA9IENSQVNICiA2Mzk5IDogVGV4dHVy
ZTJEVGVzdEVTMy5UZXhTdG9yYWdlMkRMYXJnZVl1dlRleHR1cmVDb3VudC8qID0gQ1JBU0gKLTYz
MTQgOiBUZXh0dXJlMkRUZXN0RVMzLlVwZGF0ZVJlbmRlclRhcmdldENhY2hlT25EZXN0cm95VGV4
U3RvcmFnZS8qID0gQ1JBU0gKIDYzMzUgREVCVUcgOiBWdWxrYW5FeHRlcm5hbEltYWdlVGVzdC5T
aG91bGRJbXBvcnRTZW1hcGhvcmVPcGFxdWVGZC8qID0gQ1JBU0gKIAogCkBAIC0xNDQsNyArMTI5
LDcgQEAKIDY1MTAgOiBGZW5jZVN5bmNUZXN0LklzU3luYy8qID0gRkxBS1kKIDY1MTAgOiBGZW5j
ZVN5bmNUZXN0LkVycm9ycy8qID0gRkxBS1kKIDY1MTAgOiBGZW5jZVN5bmNUZXN0Lk11bHRpcGxl
RmVuY2VEcmF3LyogPSBGTEFLWQotNjU0MyA6IEdMU0xUZXN0X0VTMy5Db21wbGV4Q3Jvc3NFeHBy
ZXNzaW9uLyogPSBGTEFLWQorNjUxMCA6IEZlbmNlU3luY1Rlc3QuTnVsbExlbmd0aC8qID0gRkxB
S1kKIAogIyBGYWlscyBhZnRlciByZWNlbnQgY29sb3JzcGFjZSBDTC4KIDY1NzggOiBJbWFnZVRl
c3QuU291cmNlMkRUYXJnZXQyRF9Db2xvcnNwYWNlLyogPSBGQUlMCkBAIC0xNjQsOSArMTQ5LDgg
QEAKIDY1NzggOiBJbWFnZVRlc3RFUzMuU291cmNlQ3ViZVRhcmdldEV4dGVybmFsRVNTTDNfQ29s
b3JzcGFjZS8qID0gRkFJTAogNjU3OCA6IEltYWdlVGVzdEVTMy5Tb3VyY2VSZW5kZXJidWZmZXJU
YXJnZXRUZXh0dXJlRXh0ZXJuYWxFU1NMM19Db2xvcnNwYWNlLyogPSBGQUlMCiAKLTY2MzEgOiBQ
cm9ncmFtQmluYXJ5RVMzVGVzdC5TYXZlQW5kTG9hZERldGFjaGVkU2hhZGVycy8qID0gQ1JBU0gK
IDY2MzEgOiBNdWx0aXRocmVhZGluZ1Rlc3QuTXVsdGlDb250ZXh0Q3JlYXRlQW5kRGVsZXRlUmVz
b3VyY2VzLyogPSBDUkFTSAotNjYzMSA6IE11bHRpdGhyZWFkaW5nVGVzdEVTMy5NdWx0aXRocmVh
ZEZlbmNlRHJhdy8qID0gQ1JBU0gKKzY2MzEgV0lOIDogTXVsdGl0aHJlYWRpbmdUZXN0RVMzLk11
bHRpdGhyZWFkRmVuY2VEcmF3LyogPSBDUkFTSAogNjYzMSBXSU4gOiBNdWx0aXRocmVhZGluZ1Rl
c3RFUzMuTXVsdGl0aHJlYWRGZW5jZVRleEltYWdlLyogPSBDUkFTSAogNjYzMSA6IE11bHRpdGhy
ZWFkaW5nVGVzdC5NdWx0aUNvbnRleHREcmF3V2l0aFN3YXBCdWZmZXJzLyogPSBDUkFTSAogCkBA
IC0xNzksMTkgKzE2Myw3IEBACiAjIEVTM18xIENyYXNoZWQKIDYxODAgOiBFR0xNdWx0aUNvbnRl
eHRUZXN0LkNvbXB1dGVTaGFkZXJPa2F5V2l0aFJlbmRlcmluZy8qID0gQ1JBU0gKIDYxODAgOiBF
R0xNdWx0aUNvbnRleHRUZXN0LlRlc3RDb250ZXh0RGVzdHJveVNpbXBsZS8qID0gQ1JBU0gKLTY2
MTEgOiBUZXh0dXJlTXVsdGlzYW1wbGVBcnJheVdlYkdMVGVzdC5GcmFtZWJ1ZmZlckNvbG9yQ2xl
YXJBbmRCbGl0LyogPSBDUkFTSAotNjYxMSA6IFRleHR1cmVNdWx0aXNhbXBsZUFycmF5V2ViR0xU
ZXN0LkZyYW1lYnVmZmVyQ29tcGxldGVuZXNzLyogPSBDUkFTSAotNjYxMSA6IFRleHR1cmVNdWx0
aXNhbXBsZUFycmF5V2ViR0xUZXN0LkludGVnZXJUZXhlbEZldGNoLyogPSBDUkFTSAotNjYxMSA6
IFRleHR1cmVNdWx0aXNhbXBsZUFycmF5V2ViR0xUZXN0LkludmFsaWRGcmFtZWJ1ZmZlclRleHR1
cmVMYXllci8qID0gQ1JBU0gKLTY2MTEgOiBUZXh0dXJlTXVsdGlzYW1wbGVBcnJheVdlYkdMVGVz
dC5TaW1wbGVUZXhlbEZldGNoLyogPSBDUkFTSAotNjYxMSA6IFRleHR1cmVNdWx0aXNhbXBsZUFy
cmF5V2ViR0xUZXN0LlRleFN0b3JhZ2UzRE11bHRpc2FtcGxlLyogPSBDUkFTSAotNjYxMSA6IFRl
eHR1cmVNdWx0aXNhbXBsZUFycmF5V2ViR0xUZXN0LlRleHR1cmVTaXplSW5TaGFkZXIvKiA9IENS
QVNICi02NjExIDogVGV4dHVyZU11bHRpc2FtcGxlVGVzdC5HZXRUZXhMZXZlbFBhcmFtZXRlci9F
UzNfMSogPSBDUkFTSAotNjYxMSA6IFRleHR1cmVNdWx0aXNhbXBsZVRlc3QuTXVsdGlzYW1wbGVU
YXJnZXRGcmFtZWJ1ZmZlclRleHR1cmUyRC9FUzNfMSogPSBDUkFTSAotNjYxMSA6IFRleHR1cmVN
dWx0aXNhbXBsZVRlc3QuUmVzb2x2ZVRvRGVmYXVsdEZyYW1lYnVmZmVyL0VTM18xKiA9IENSQVNI
Ci02NjExIDogVGV4dHVyZU11bHRpc2FtcGxlVGVzdC5WYWxpZGF0ZVRleHR1cmVTdG9yYWdlTXVs
dGlzYW1wbGVQYXJhbWV0ZXJzL0VTM18xKiA9IENSQVNICiA2NjA1IDogVGV4dHVyZUJ1ZmZlclRl
c3RFUzMxLk1hcFRleHR1cmVCdWZmZXJJbnZhbGlkYXRlVGhlbldyaXRlLyogPSBGQUlMCi02ODk1
IDogQXRvbWljQ291bnRlckJ1ZmZlclRlc3QzMS5BdG9taWNDb3VudGVyQnVmZmVyUmVwZWF0ZWRC
aW5kVW5iaW5kLyogPSBDUkFTSAogCiAjIEVTM18xIGd0ZXN0IHNraXBzCiA2MTgwIDogR0xTTFRl
c3RfRVMzMS5JbnRlcnBvbGF0ZUF0V2l0aFN3aXp6bGUvKiA9IE5PVF9SVU4KQEAgLTIxNCw5ICsx
ODYsOCBAQAogCiA2ODc1IDogVHJhbnNmb3JtRmVlZGJhY2tUZXN0LlNwYW5NdWx0aXBsZVJlbmRl
clBhc3Nlcy8qID0gTk9UX1JVTgogCi0jIFNraXAgY3Jhc2hpbmcgdGVzdHMgYWZ0ZXIgZW5hYmxp
bmcgQU5HTEVfdGV4dHVyZV9tdWx0aXNhbXBsZQotMzU2NSA6IFRleHR1cmVNdWx0aXNhbXBsZVRl
c3QuUmVzb2x2ZVRvRGVmYXVsdEZyYW1lYnVmZmVyLyogPSBDUkFTSAotMzU2NSA6IFRleHR1cmVN
dWx0aXNhbXBsZVRlc3QuR2V0VGV4TGV2ZWxQYXJhbWV0ZXIvKiA9IENSQVNICi0zNTY1IDogVGV4
dHVyZU11bHRpc2FtcGxlVGVzdC5NdWx0aXNhbXBsZVRhcmdldEZyYW1lYnVmZmVyVGV4dHVyZTJE
LyogPSBDUkFTSAotMzU2NSA6IFRleHR1cmVNdWx0aXNhbXBsZVRlc3QuU2ltcGxlVGV4ZWxGZXRj
aC8qID0gQ1JBU0gKLTM1NjUgOiBUZXh0dXJlTXVsdGlzYW1wbGVUZXN0LlZhbGlkYXRlVGV4dHVy
ZVN0b3JhZ2VNdWx0aXNhbXBsZVBhcmFtZXRlcnMvKiA9IENSQVNICisjIEdMRVMgMy4yIHRlc3Rz
IHRoYXQgZmFpbCBiZWNhdXNlIG9mIG1pc3NpbmcgZmVhdHVyZXMKKzUzNjYgOiBHZW9tZXRyeVNo
YWRlclRlc3RFUzMyLk1heEdlb21ldHJ5SW1hZ2VVbmlmb3Jtcy8qID0gQ1JBU0gKKzUzNjYgOiBQ
cm9ncmFtUGlwZWxpbmVUZXN0MzIuTWF4R2VvbWV0cnlJbWFnZVVuaWZvcm1zLyogPSBDUkFTSAor
Cis3MDg4IDogVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdCogPSBTS0lQX0ZPUl9DQVBUVVJF
CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvY29tcGlsZXJf
dGVzdHMvS0hSX2JsZW5kX2VxdWF0aW9uX2FkdmFuY2VkX3Rlc3QuY3BwIGIvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvc3JjL3Rlc3RzL2NvbXBpbGVyX3Rlc3RzL0tIUl9ibGVuZF9lcXVhdGlvbl9h
ZHZhbmNlZF90ZXN0LmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41ZTcyOWI1ZjQyOWUxYTc3MGJmODNmZWYwYmJj
YmFkM2M4M2ZmNTk2Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUv
c3JjL3Rlc3RzL2NvbXBpbGVyX3Rlc3RzL0tIUl9ibGVuZF9lcXVhdGlvbl9hZHZhbmNlZF90ZXN0
LmNwcApAQCAtMCwwICsxLDMyMiBAQAorLy8KKy8vIENvcHlyaWdodCAyMDIxIFRoZSBBTkdMRSBQ
cm9qZWN0IEF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBVc2Ugb2YgdGhpcyBzb3Vy
Y2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCisv
LyBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLy8KKy8vIEtIUl9ibGVuZF9lcXVhdGlvbl9h
ZHZhbmNlZF90ZXN0LmNwcDoKKy8vICAgVGVzdCBmb3IgS0hSX2JsZW5kX2VxdWF0aW9uX2FkdmFu
Y2VkIGFuZCBLSFJfYmxlbmRfZXF1YXRpb25fYWR2YW5jZWRfY29oZXJlbnQKKy8vCisKKyNpbmNs
dWRlICJ0ZXN0cy90ZXN0X3V0aWxzL1NoYWRlckV4dGVuc2lvblRlc3QuaCIKKworI2luY2x1ZGUg
ImNvbW1vbi9QYWNrZWRFbnVtcy5oIgorCituYW1lc3BhY2UKK3sKK2NvbnN0IGNoYXIgRVhUUHJh
Z21hW10gPQorICAgICIjZXh0ZW5zaW9uIEdMX0tIUl9ibGVuZF9lcXVhdGlvbl9hZHZhbmNlZCA6
IHJlcXVpcmVcbiIKKyAgICAiI2V4dGVuc2lvbiBHTF9FWFRfc2hhZGVyX2ZyYW1lYnVmZmVyX2Zl
dGNoX25vbl9jb2hlcmVudCA6IHJlcXVpcmVcbiI7CisKKy8vIFVzZSB0aGUgbXVsdGlwbHkgZXF1
YXRpb24gZm9yIGJsZW5kaW5nCitjb25zdCBjaGFyIEVTU0wzMTBfU2ltcGxlW10gPQorICAgIFIi
KAorICAgIHByZWNpc2lvbiBoaWdocCBmbG9hdDsKKworICAgIGxheW91dCAoYmxlbmRfc3VwcG9y
dF9tdWx0aXBseSkgb3V0OworICAgIGxheW91dCAobG9jYXRpb24gPSAwKSBvdXQgdmVjNCBvQ29s
OworCisgICAgdW5pZm9ybSB2ZWM0IHVTcmNDb2w7CisKKyAgICB2b2lkIG1haW4gKHZvaWQpCisg
ICAgeworICAgICAgICBvQ29sID0gdVNyY0NvbDsKKyAgICB9KSI7CisKK2NvbnN0IGNoYXIgRVNT
TDMxMF9EZWNsYXJlZE11bHRpcGx5U2NyZWVuU2VwYXJhdGVseVtdID0KKyAgICBSIigKKyAgICBw
cmVjaXNpb24gaGlnaHAgZmxvYXQ7CisKKyAgICBsYXlvdXQgKGJsZW5kX3N1cHBvcnRfbXVsdGlw
bHkpIG91dDsKKyAgICBsYXlvdXQgKGJsZW5kX3N1cHBvcnRfc2NyZWVuKSBvdXQ7CisgICAgbGF5
b3V0IChsb2NhdGlvbiA9IDApIG91dCB2ZWM0IG9Db2w7CisKKyAgICB1bmlmb3JtIHZlYzQgdVNy
Y0NvbDsKKworICAgIHZvaWQgbWFpbiAodm9pZCkKKyAgICB7CisgICAgICAgIG9Db2wgPSB1U3Jj
Q29sOworICAgIH0pIjsKKworY29uc3QgY2hhciBFU1NMMzEwX0RlY2xhcmVkTXVsdGlwbHlTY3Jl
ZW5TdWNjZXNzaXZlbHlbXSA9CisgICAgUiIoCisgICAgcHJlY2lzaW9uIGhpZ2hwIGZsb2F0Owor
CisgICAgbGF5b3V0IChibGVuZF9zdXBwb3J0X211bHRpcGx5LCBibGVuZF9zdXBwb3J0X3NjcmVl
bikgb3V0OworICAgIGxheW91dCAobG9jYXRpb24gPSAwKSBvdXQgdmVjNCBvQ29sOworCisgICAg
dW5pZm9ybSB2ZWM0IHVTcmNDb2w7CisKKyAgICB2b2lkIG1haW4gKHZvaWQpCisgICAgeworICAg
ICAgICBvQ29sID0gdVNyY0NvbDsKKyAgICB9KSI7CisKK2NvbnN0IGNoYXIgRVNTTDMxMF9XaXRo
X0ZyYW1lYnVmZmVyRmV0Y2hbXSA9CisgICAgUiIoCisgICAgcHJlY2lzaW9uIGhpZ2hwIGZsb2F0
OworCisgICAgbGF5b3V0IChibGVuZF9zdXBwb3J0X211bHRpcGx5KSBvdXQ7CisgICAgbGF5b3V0
IChsb2NhdGlvbiA9IDAsIG5vbmNvaGVyZW50KSBpbm91dCB2ZWM0IG9Db2w7CisKKyAgICB1bmlm
b3JtIHZlYzQgdVNyY0NvbDsKKworICAgIHZvaWQgbWFpbiAodm9pZCkKKyAgICB7CisgICAgICAg
IG9Db2wgPSBtaXgob0NvbCwgdVNyY0NvbCwgMC41Zik7CisgICAgfSkiOworCitjbGFzcyBLSFJC
bGVuZEVxdWF0aW9uQWR2YW5jZWRUZXN0IDogcHVibGljIHNoOjpTaGFkZXJFeHRlbnNpb25UZXN0
Cit7CisgIHB1YmxpYzoKKyAgICB2b2lkIFNldFVwKCkgb3ZlcnJpZGUKKyAgICB7CisgICAgICAg
IHN0ZDo6bWFwPFNoU2hhZGVyT3V0cHV0LCBzdGQ6OnN0cmluZz4gc2hhZGVyT3V0cHV0TGlzdCA9
IHsKKyAgICAgICAgICAgIHtTSF9HTFNMXzQ1MF9DT1JFX09VVFBVVCwgIlNIX0dMU0xfNDUwX0NP
UkVfT1VUUFVUIn0sCisjaWYgZGVmaW5lZChBTkdMRV9FTkFCTEVfVlVMS0FOKQorICAgICAgICAg
ICAge1NIX1NQSVJWX1ZVTEtBTl9PVVRQVVQsICJTSF9TUElSVl9WVUxLQU5fT1VUUFVUIn0KKyNl
bmRpZgorICAgICAgICB9OworCisgICAgICAgIEluaXRpYWxpemUoc2hhZGVyT3V0cHV0TGlzdCk7
CisgICAgfQorCisgICAgdm9pZCBUZWFyRG93bigpIG92ZXJyaWRlCisgICAgeworICAgICAgICBm
b3IgKGF1dG8gc2hhZGVyT3V0cHV0VHlwZSA6IG1TaGFkZXJPdXRwdXRMaXN0KQorICAgICAgICB7
CisgICAgICAgICAgICBEZXN0cm95Q29tcGlsZXIoc2hhZGVyT3V0cHV0VHlwZS5maXJzdCk7Cisg
ICAgICAgIH0KKyAgICB9CisKKyAgICB2b2lkIEluaXRpYWxpemUoc3RkOjptYXA8U2hTaGFkZXJP
dXRwdXQsIHN0ZDo6c3RyaW5nPiAmc2hhZGVyT3V0cHV0TGlzdCkKKyAgICB7CisgICAgICAgIG1T
aGFkZXJPdXRwdXRMaXN0ID0gc3RkOjptb3ZlKHNoYWRlck91dHB1dExpc3QpOworCisgICAgICAg
IGZvciAoYXV0byBzaGFkZXJPdXRwdXRUeXBlIDogbVNoYWRlck91dHB1dExpc3QpCisgICAgICAg
IHsKKyAgICAgICAgICAgIHNoOjpJbml0QnVpbHRJblJlc291cmNlcygmbVJlc291cmNlTGlzdFtz
aGFkZXJPdXRwdXRUeXBlLmZpcnN0XSk7CisgICAgICAgICAgICBtQ29tcGlsZXJMaXN0W3NoYWRl
ck91dHB1dFR5cGUuZmlyc3RdID0gbnVsbHB0cjsKKyAgICAgICAgfQorICAgIH0KKworICAgIHZv
aWQgRGVzdHJveUNvbXBpbGVyKFNoU2hhZGVyT3V0cHV0IHNoYWRlck91dHB1dFR5cGUpCisgICAg
eworICAgICAgICBpZiAobUNvbXBpbGVyTGlzdFtzaGFkZXJPdXRwdXRUeXBlXSkKKyAgICAgICAg
eworICAgICAgICAgICAgc2g6OkRlc3RydWN0KG1Db21waWxlckxpc3Rbc2hhZGVyT3V0cHV0VHlw
ZV0pOworICAgICAgICAgICAgbUNvbXBpbGVyTGlzdFtzaGFkZXJPdXRwdXRUeXBlXSA9IG51bGxw
dHI7CisgICAgICAgIH0KKyAgICB9CisKKyAgICB2b2lkIEluaXRpYWxpemVDb21waWxlcigpCisg
ICAgeworICAgICAgICBmb3IgKGF1dG8gc2hhZGVyT3V0cHV0VHlwZSA6IG1TaGFkZXJPdXRwdXRM
aXN0KQorICAgICAgICB7CisgICAgICAgICAgICBJbml0aWFsaXplQ29tcGlsZXIoc2hhZGVyT3V0
cHV0VHlwZS5maXJzdCk7CisgICAgICAgIH0KKyAgICB9CisKKyAgICB2b2lkIEluaXRpYWxpemVD
b21waWxlcihTaFNoYWRlck91dHB1dCBzaGFkZXJPdXRwdXRUeXBlKQorICAgIHsKKyAgICAgICAg
RGVzdHJveUNvbXBpbGVyKHNoYWRlck91dHB1dFR5cGUpOworCisgICAgICAgIG1Db21waWxlckxp
c3Rbc2hhZGVyT3V0cHV0VHlwZV0gPQorICAgICAgICAgICAgc2g6OkNvbnN0cnVjdENvbXBpbGVy
KEdMX0ZSQUdNRU5UX1NIQURFUiwgdGVzdGluZzo6Z2V0PDA+KEdldFBhcmFtKCkpLCBzaGFkZXJP
dXRwdXRUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZtUmVzb3VyY2VM
aXN0W3NoYWRlck91dHB1dFR5cGVdKTsKKyAgICAgICAgQVNTRVJUX1RSVUUobUNvbXBpbGVyTGlz
dFtzaGFkZXJPdXRwdXRUeXBlXSAhPSBudWxscHRyKQorICAgICAgICAgICAgPDwgIkNvbXBpbGVy
IGZvciAiIDw8IG1TaGFkZXJPdXRwdXRMaXN0W3NoYWRlck91dHB1dFR5cGVdCisgICAgICAgICAg
ICA8PCAiIGNvdWxkIG5vdCBiZSBjb25zdHJ1Y3RlZC4iOworICAgIH0KKworICAgIHRlc3Rpbmc6
OkFzc2VydGlvblJlc3VsdCBUZXN0U2hhZGVyQ29tcGlsZShTaFNoYWRlck91dHB1dCBzaGFkZXJP
dXRwdXRUeXBlLCBjb25zdCBjaGFyICpwcmFnbWEpCisgICAgeworICAgICAgICBjb25zdCBjaGFy
ICpzaGFkZXJTdHJpbmdzW10gPSB7dGVzdGluZzo6Z2V0PDE+KEdldFBhcmFtKCkpLCBwcmFnbWEs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0aW5nOjpnZXQ8Mj4o
R2V0UGFyYW0oKSl9OworCisgICAgICAgIGJvb2wgc3VjY2VzcyA9IHNoOjpDb21waWxlKG1Db21w
aWxlckxpc3Rbc2hhZGVyT3V0cHV0VHlwZV0sIHNoYWRlclN0cmluZ3MsIDMsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFNIX1ZBUklBQkxFUyB8IFNIX09CSkVDVF9DT0RFKTsK
KyAgICAgICAgaWYgKHN1Y2Nlc3MpCisgICAgICAgIHsKKyAgICAgICAgICAgIHJldHVybiA6OnRl
c3Rpbmc6OkFzc2VydGlvblN1Y2Nlc3MoKQorICAgICAgICAgICAgICAgICAgIDw8ICJDb21waWxh
dGlvbiBzdWNjZXNzKCIgPDwgbVNoYWRlck91dHB1dExpc3Rbc2hhZGVyT3V0cHV0VHlwZV0gPDwg
IikiOworICAgICAgICB9CisgICAgICAgIHJldHVybiA6OnRlc3Rpbmc6OkFzc2VydGlvbkZhaWx1
cmUoKSA8PCBzaDo6R2V0SW5mb0xvZyhtQ29tcGlsZXJMaXN0W3NoYWRlck91dHB1dFR5cGVdKTsK
KyAgICB9CisKKyAgICB2b2lkIFRlc3RTaGFkZXJDb21waWxlKGJvb2wgZXhwZWN0YXRpb24sIGNv
bnN0IGNoYXIgKnByYWdtYSkKKyAgICB7CisgICAgICAgIGZvciAoYXV0byBzaGFkZXJPdXRwdXRU
eXBlIDogbVNoYWRlck91dHB1dExpc3QpCisgICAgICAgIHsKKyAgICAgICAgICAgIGlmIChleHBl
Y3RhdGlvbikKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBFWFBFQ1RfVFJVRShUZXN0
U2hhZGVyQ29tcGlsZShzaGFkZXJPdXRwdXRUeXBlLmZpcnN0LCBwcmFnbWEpKTsKKyAgICAgICAg
ICAgIH0KKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBF
WFBFQ1RfRkFMU0UoVGVzdFNoYWRlckNvbXBpbGUoc2hhZGVyT3V0cHV0VHlwZS5maXJzdCwgcHJh
Z21hKSk7CisgICAgICAgICAgICB9CisgICAgICAgIH0KKyAgICB9CisKKyAgICB2b2lkIFNldEV4
dGVuc2lvbkVuYWJsZShib29sIGVuYWJsZSkKKyAgICB7CisgICAgICAgIGZvciAoYXV0byBzaGFk
ZXJPdXRwdXRUeXBlIDogbVNoYWRlck91dHB1dExpc3QpCisgICAgICAgIHsKKyAgICAgICAgICAg
IG1SZXNvdXJjZUxpc3Rbc2hhZGVyT3V0cHV0VHlwZS5maXJzdF0uS0hSX2JsZW5kX2VxdWF0aW9u
X2FkdmFuY2VkID0gZW5hYmxlOworICAgICAgICAgICAgbVJlc291cmNlTGlzdFtzaGFkZXJPdXRw
dXRUeXBlLmZpcnN0XS5FWFRfc2hhZGVyX2ZyYW1lYnVmZmVyX2ZldGNoX25vbl9jb2hlcmVudCA9
CisgICAgICAgICAgICAgICAgZW5hYmxlOworICAgICAgICB9CisgICAgfQorCisgIHByb3RlY3Rl
ZDoKKyAgICBzdGQ6Om1hcDxTaFNoYWRlck91dHB1dCwgc3RkOjpzdHJpbmc+IG1TaGFkZXJPdXRw
dXRMaXN0OworICAgIHN0ZDo6bWFwPFNoU2hhZGVyT3V0cHV0LCBTaEhhbmRsZT4gbUNvbXBpbGVy
TGlzdDsKKyAgICBzdGQ6Om1hcDxTaFNoYWRlck91dHB1dCwgU2hCdWlsdEluUmVzb3VyY2VzPiBt
UmVzb3VyY2VMaXN0OworfTsKKworY2xhc3MgS0hSQmxlbmRFcXVhdGlvbkFkdmFuY2VkRVMzMTBU
ZXN0IDogcHVibGljIEtIUkJsZW5kRXF1YXRpb25BZHZhbmNlZFRlc3QKK3t9OworCisvLyBFeHRl
bnNpb24gZmxhZyBpcyByZXF1aXJlZCB0byBjb21waWxlIHByb3Blcmx5LiBFeHBlY3QgZmFpbHVy
ZSB3aGVuIGl0IGlzCisvLyBub3QgcHJlc2VudC4KK1RFU1RfUChLSFJCbGVuZEVxdWF0aW9uQWR2
YW5jZWRFUzMxMFRlc3QsIENvbXBpbGVGYWlsc1dpdGhvdXRFeHRlbnNpb24pCit7CisgICAgU2V0
RXh0ZW5zaW9uRW5hYmxlKGZhbHNlKTsKKyAgICBJbml0aWFsaXplQ29tcGlsZXIoKTsKKyAgICBU
ZXN0U2hhZGVyQ29tcGlsZShmYWxzZSwgRVhUUHJhZ21hKTsKK30KKworLy8gRXh0ZW5zaW9uIGRp
cmVjdGl2ZSBpcyByZXF1aXJlZCB0byBjb21waWxlIHByb3Blcmx5LiBFeHBlY3QgZmFpbHVyZSB3
aGVuCisvLyBpdCBpcyBub3QgcHJlc2VudC4KK1RFU1RfUChLSFJCbGVuZEVxdWF0aW9uQWR2YW5j
ZWRFUzMxMFRlc3QsIENvbXBpbGVGYWlsc1dpdGhFeHRlbnNpb25XaXRob3V0UHJhZ21hKQorewor
ICAgIFNldEV4dGVuc2lvbkVuYWJsZSh0cnVlKTsKKyAgICBJbml0aWFsaXplQ29tcGlsZXIoKTsK
KyAgICBUZXN0U2hhZGVyQ29tcGlsZShmYWxzZSwgIiIpOworfQorCitJTlNUQU5USUFURV9URVNU
X1NVSVRFX1AoQ29ycmVjdEVTU0wzMTBTaGFkZXJzLAorICAgICAgICAgICAgICAgICAgICAgICAg
IEtIUkJsZW5kRXF1YXRpb25BZHZhbmNlZEVTMzEwVGVzdCwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICBDb21iaW5lKFZhbHVlcyhTSF9HTEVTM18xX1NQRUMpLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgVmFsdWVzKHNoOjpFU1NMVmVyc2lvbjMxMCksCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBWYWx1ZXMoRVNTTDMxMF9TaW1wbGUsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgRVNTTDMxMF9XaXRoX0ZyYW1lYnVmZmVyRmV0Y2gs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRVNTTDMxMF9EZWNsYXJl
ZE11bHRpcGx5U2NyZWVuU2VwYXJhdGVseSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBFU1NMMzEwX0RlY2xhcmVkTXVsdGlwbHlTY3JlZW5TdWNjZXNzaXZlbHkpKSk7
CisKKyNpZiBkZWZpbmVkKEFOR0xFX0VOQUJMRV9WVUxLQU4pCisKK2NsYXNzIEtIUkJsZW5kRXF1
YXRpb25BZHZhbmNlZFN1Y2Nlc3NUZXN0IDogcHVibGljIEtIUkJsZW5kRXF1YXRpb25BZHZhbmNl
ZFRlc3QKK3sKKyAgcHVibGljOgorICAgIHZvaWQgU2V0VXAoKSBvdmVycmlkZQorICAgIHsKKyAg
ICAgICAgc3RkOjptYXA8U2hTaGFkZXJPdXRwdXQsIHN0ZDo6c3RyaW5nPiBzaGFkZXJPdXRwdXRM
aXN0ID0geworICAgICAgICAgICAge1NIX1NQSVJWX1ZVTEtBTl9PVVRQVVQsICJTSF9TUElSVl9W
VUxLQU5fT1VUUFVUIn19OworCisgICAgICAgIEluaXRpYWxpemUoc2hhZGVyT3V0cHV0TGlzdCk7
CisgICAgfQorfTsKKworY2xhc3MgS0hSQmxlbmRFcXVhdGlvbkFkdmFuY2VkRVMzMTBTdWNjZXNz
VGVzdCA6IHB1YmxpYyBLSFJCbGVuZEVxdWF0aW9uQWR2YW5jZWRTdWNjZXNzVGVzdAore307CisK
Ky8vIFdpdGggZXh0ZW5zaW9uIGZsYWcgYW5kIGV4dGVuc2lvbiBkaXJlY3RpdmUsIGNvbXBpbGlu
ZyBzdWNjZWVkcy4KKy8vIEFsc28gdGVzdCB0aGF0IHRoZSBleHRlbnNpb24gZGlyZWN0aXZlIHN0
YXRlIGlzIHJlc2V0IGNvcnJlY3RseS4KK1RFU1RfUChLSFJCbGVuZEVxdWF0aW9uQWR2YW5jZWRF
UzMxMFN1Y2Nlc3NUZXN0LCBDb21waWxlU3VjY2VlZHNXaXRoRXh0ZW5zaW9uQW5kUHJhZ21hKQor
eworICAgIFNldEV4dGVuc2lvbkVuYWJsZSh0cnVlKTsKKyAgICBJbml0aWFsaXplQ29tcGlsZXIo
KTsKKyAgICBUZXN0U2hhZGVyQ29tcGlsZSh0cnVlLCBFWFRQcmFnbWEpOworICAgIC8vIFRlc3Qg
cmVzZXQgZnVuY3Rpb25hbGl0eS4KKyAgICBUZXN0U2hhZGVyQ29tcGlsZShmYWxzZSwgIiIpOwor
ICAgIFRlc3RTaGFkZXJDb21waWxlKHRydWUsIEVYVFByYWdtYSk7Cit9CisKKy8vIFRoZSBTTCAj
dmVyc2lvbiAxMDAgc2hhZGVycyB0aGF0IGFyZSBjb3JyZWN0IHdvcmsgc2ltaWxhcmx5CisvLyBp
biBib3RoIEdMMiBhbmQgR0wzLCB3aXRoIGFuZCB3aXRob3V0IHRoZSB2ZXJzaW9uIHN0cmluZy4K
K0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChDb3JyZWN0RVNTTDMxMFNoYWRlcnMsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgS0hSQmxlbmRFcXVhdGlvbkFkdmFuY2VkRVMzMTBTdWNjZXNzVGVz
dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICBDb21iaW5lKFZhbHVlcyhTSF9HTEVTM18xX1NQ
RUMpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVmFsdWVzKHNoOjpFU1NMVmVy
c2lvbjMxMCksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWYWx1ZXMoRVNTTDMx
MF9TaW1wbGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRVNTTDMx
MF9XaXRoX0ZyYW1lYnVmZmVyRmV0Y2gsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgRVNTTDMxMF9EZWNsYXJlZE11bHRpcGx5U2NyZWVuU2VwYXJhdGVseSwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFU1NMMzEwX0RlY2xhcmVkTXVsdGlw
bHlTY3JlZW5TdWNjZXNzaXZlbHkpKSk7CisKK2NsYXNzIEtIUkJsZW5kRXF1YXRpb25BZHZhbmNl
ZEVuYWJsZWRMaXN0Q2hlY2tUZXN0IDogcHVibGljIEtIUkJsZW5kRXF1YXRpb25BZHZhbmNlZFRl
c3QKK3sKKyAgcHVibGljOgorICAgIHZvaWQgU2V0VXAoKSBvdmVycmlkZQorICAgIHsKKyAgICAg
ICAgc3RkOjptYXA8U2hTaGFkZXJPdXRwdXQsIHN0ZDo6c3RyaW5nPiBzaGFkZXJPdXRwdXRMaXN0
ID0geworICAgICAgICAgICAge1NIX1NQSVJWX1ZVTEtBTl9PVVRQVVQsICJTSF9TUElSVl9WVUxL
QU5fT1VUUFVUIn19OworCisgICAgICAgIEluaXRpYWxpemUoc2hhZGVyT3V0cHV0TGlzdCk7Cisg
ICAgfQorCisgICAgY29uc3QgU2hIYW5kbGUgJkdldENvbXBpbGVySGFuZGxlKGNvbnN0IFNoU2hh
ZGVyT3V0cHV0IG91dHB1dFR5cGUpIGNvbnN0CisgICAgeworICAgICAgICByZXR1cm4gbUNvbXBp
bGVyTGlzdC5hdChvdXRwdXRUeXBlKTsKKyAgICB9Cit9OworCitjbGFzcyBLSFJCbGVuZEVxdWF0
aW9uQWR2YW5jZWRFbmFibGVkU2VwYXJhdGVseVRlc3QKKyAgICA6IHB1YmxpYyBLSFJCbGVuZEVx
dWF0aW9uQWR2YW5jZWRFbmFibGVkTGlzdENoZWNrVGVzdAore307CisKKy8vIFRlc3QgZm9yIGRl
Y2xhcmluZyBkaWZmZXJlbnQgYmxlbmQgZXF1YXRpb25zIGluIHNlcGFyYXRlIGxheW91dCBkZWNs
YXJhdGlvbnMKK1RFU1RfUChLSFJCbGVuZEVxdWF0aW9uQWR2YW5jZWRFbmFibGVkU2VwYXJhdGVs
eVRlc3QsIERlY2xhcmVkRXF1YXRpb25TZXBhcmF0ZWx5KQoreworICAgIFNldEV4dGVuc2lvbkVu
YWJsZSh0cnVlKTsKKyAgICBJbml0aWFsaXplQ29tcGlsZXIoKTsKKyAgICBUZXN0U2hhZGVyQ29t
cGlsZSh0cnVlLCBFWFRQcmFnbWEpOworCisgICAgY29uc3QgU2hIYW5kbGUgY29tcGlsZXJIYW5k
bGUgPSBHZXRDb21waWxlckhhbmRsZShTSF9TUElSVl9WVUxLQU5fT1VUUFVUKTsKKyAgICBnbDo6
QmxlbmRFcXVhdGlvbkJpdFNldCBlbmFibGVkQmxlbmRFcXVhdGlvbihzaDo6R2V0QWR2YW5jZWRC
bGVuZEVxdWF0aW9ucyhjb21waWxlckhhbmRsZSkpOworICAgIEVYUEVDVF9UUlVFKGVuYWJsZWRC
bGVuZEVxdWF0aW9uLnRlc3QoZ2w6OkJsZW5kRXF1YXRpb25UeXBlOjpNdWx0aXBseSkpOworICAg
IEVYUEVDVF9UUlVFKGVuYWJsZWRCbGVuZEVxdWF0aW9uLnRlc3QoZ2w6OkJsZW5kRXF1YXRpb25U
eXBlOjpTY3JlZW4pKTsKK30KKworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKENvcnJlY3RFU1NM
MzEwU2hhZGVycywKKyAgICAgICAgICAgICAgICAgICAgICAgICBLSFJCbGVuZEVxdWF0aW9uQWR2
YW5jZWRFbmFibGVkU2VwYXJhdGVseVRlc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgQ29t
YmluZShWYWx1ZXMoU0hfR0xFUzNfMV9TUEVDKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFZhbHVlcyhzaDo6RVNTTFZlcnNpb24zMTApLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgVmFsdWVzKEVTU0wzMTBfRGVjbGFyZWRNdWx0aXBseVNjcmVlblNlcGFyYXRl
bHkpKSk7CisKK2NsYXNzIEtIUkJsZW5kRXF1YXRpb25BZHZhbmNlZEVuYWJsZWRTdWNjZXNzaXZl
bHlUZXN0CisgICAgOiBwdWJsaWMgS0hSQmxlbmRFcXVhdGlvbkFkdmFuY2VkRW5hYmxlZExpc3RD
aGVja1Rlc3QKK3t9OworCisvLyBUZXN0IGZvciBkZWNsYXJpbmcgZGlmZmVyZW50IGJsZW5kIGVx
dWF0aW9ucyBpbiB0aGUgc2FtZSBsYXlvdXQgZGVjbGFyYXRpb24KK1RFU1RfUChLSFJCbGVuZEVx
dWF0aW9uQWR2YW5jZWRFbmFibGVkU3VjY2Vzc2l2ZWx5VGVzdCwgRGVjbGFyZWRFcXVhdGlvblN1
Y2Nlc3NpdmVseSkKK3sKKyAgICBTZXRFeHRlbnNpb25FbmFibGUodHJ1ZSk7CisgICAgSW5pdGlh
bGl6ZUNvbXBpbGVyKCk7CisgICAgVGVzdFNoYWRlckNvbXBpbGUodHJ1ZSwgRVhUUHJhZ21hKTsK
KworICAgIGNvbnN0IFNoSGFuZGxlIGNvbXBpbGVySGFuZGxlID0gR2V0Q29tcGlsZXJIYW5kbGUo
U0hfU1BJUlZfVlVMS0FOX09VVFBVVCk7CisgICAgZ2w6OkJsZW5kRXF1YXRpb25CaXRTZXQgZW5h
YmxlZEJsZW5kRXF1YXRpb24oc2g6OkdldEFkdmFuY2VkQmxlbmRFcXVhdGlvbnMoY29tcGlsZXJI
YW5kbGUpKTsKKyAgICBFWFBFQ1RfVFJVRShlbmFibGVkQmxlbmRFcXVhdGlvbi50ZXN0KGdsOjpC
bGVuZEVxdWF0aW9uVHlwZTo6TXVsdGlwbHkpKTsKKyAgICBFWFBFQ1RfVFJVRShlbmFibGVkQmxl
bmRFcXVhdGlvbi50ZXN0KGdsOjpCbGVuZEVxdWF0aW9uVHlwZTo6U2NyZWVuKSk7Cit9CisKK0lO
U1RBTlRJQVRFX1RFU1RfU1VJVEVfUChDb3JyZWN0RVNTTDMxMFNoYWRlcnMsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgS0hSQmxlbmRFcXVhdGlvbkFkdmFuY2VkRW5hYmxlZFN1Y2Nlc3NpdmVs
eVRlc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgQ29tYmluZShWYWx1ZXMoU0hfR0xFUzNf
MV9TUEVDKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZhbHVlcyhzaDo6RVNT
TFZlcnNpb24zMTApLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVmFsdWVzKEVT
U0wzMTBfRGVjbGFyZWRNdWx0aXBseVNjcmVlblN1Y2Nlc3NpdmVseSkpKTsKKworI2VuZGlmCisK
K30gIC8vIGFub255bW91cyBuYW1lc3BhY2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3NyYy90ZXN0cy9kZXFwX3N1cHBvcnQvZGVxcF9lZ2xfVGVzdEV4cGVjdGF0aW9ucyBi
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9kZXFwX3N1cHBvcnQvZGVxcF9lZ2xf
VGVzdEV4cGVjdGF0aW9ucwppbmRleCA1NGRhZTFlYzkwZDc2MWI1ZThkNWFlMzJmMGMzNDMyMGM2
ODZhYmM2Li5kZDhlZjA0NWYyNDVjYTliZTQxNTMxMWU2ZjY4ZDA5ZTIyNTU4NTgwIDEwMDY0NAot
LS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvZGVxcF9zdXBwb3J0L2RlcXBf
ZWdsX1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rl
c3RzL2RlcXBfc3VwcG9ydC9kZXFwX2VnbF9UZXN0RXhwZWN0YXRpb25zCkBAIC0xOSwxMCArMTks
NiBAQAogMzkxNiBEM0Q5IDogZEVRUC1FR0wuZnVuY3Rpb25hbC5yZW5kZXIubXVsdGlfdGhyZWFk
LiogPSBTS0lQCiAzOTE2IEQzRDkgOiBkRVFQLUVHTC5mdW5jdGlvbmFsLmNvbG9yX2NsZWFycy5t
dWx0aV90aHJlYWQuKiA9IFNLSVAKIAotLy8gVGhlc2UgdGVzdHMgcmVxdWlyZSBwaXhtYXAgc3Vy
ZmFjZXMuIE9uIG1hbnkgcGxhdGZvcm1zIHRoZXkgYXJlIHVuc3VwcG9ydGVkLgotMzkxNyBBTkRS
T0lEIFZVTEtBTiA6IGRFUVAtRUdMLmZ1bmN0aW9uYWwucmVuZGVyLm11bHRpX3RocmVhZC4qID0g
RkFJTAotMzkxNyBBTkRST0lEIFZVTEtBTiA6IGRFUVAtRUdMLmZ1bmN0aW9uYWwuY29sb3JfY2xl
YXJzLm11bHRpX3RocmVhZC4qID0gRkFJTAotCiAvLyBkRVFQIGRvZXNuJ3QgaGFuZGxlIGNvbmZp
Z3MgY3JlYXRlZCBmb3IgZXh0ZW5zaW9ucwogMTY2MiBXSU4gOiBkRVFQLUVHTC5mdW5jdGlvbmFs
LmNvbG9yX2NsZWFycy5zaW5nbGVfY29udGV4dC5nbGVzMi5vdGhlciA9IEZBSUwKIDE2NjIgV0lO
IDogZEVRUC1FR0wuZnVuY3Rpb25hbC5jb2xvcl9jbGVhcnMuc2luZ2xlX2NvbnRleHQuZ2xlczMu
b3RoZXIgPSBGQUlMCkBAIC0xMTIsNyArMTA4LDcgQEAKIDY1MzMgQU5EUk9JRCA6IGRFUVAtRUdM
LmZ1bmN0aW9uYWwubmF0aXZlX2NvbG9yX21hcHBpbmcubmF0aXZlX3dpbmRvdy4qID0gU0tJUAog
NjUzMyBBTkRST0lEIDogZEVRUC1FR0wuZnVuY3Rpb25hbC5uYXRpdmVfY29vcmRfbWFwcGluZy5u
YXRpdmVfd2luZG93LiogPSBTS0lQCiAKLS8vIEFuZHJvaWQgVnVsa2FuCisvLyBBbmRyb2lkIFZ1
bGthbiAoc3RpbGwgZmFpbGluZyBNYXJjaCAxNiwgMjAyMikKIDYyNzcgQU5EUk9JRCBWVUxLQU4g
OiBkRVFQLUVHTC5mdW5jdGlvbmFsLmltYWdlLmFwaS5jcmVhdGVfaW1hZ2VfZ2xlczJfYW5kcm9p
ZF9uYXRpdmVfcmdiOCA9IEZBSUwKIDYyNzcgQU5EUk9JRCBWVUxLQU4gOiBkRVFQLUVHTC5mdW5j
dGlvbmFsLmltYWdlLmNyZWF0ZS5nbGVzMl9hbmRyb2lkX25hdGl2ZV9yZ2I4X3JlYWRfcGl4ZWxz
ID0gRkFJTAogNjI3NyBBTkRST0lEIFZVTEtBTiA6IGRFUVAtRUdMLmZ1bmN0aW9uYWwuaW1hZ2Uu
Y3JlYXRlLmdsZXMyX2FuZHJvaWRfbmF0aXZlX3JnYjhfdGV4dHVyZSA9IEZBSUwKQEAgLTEyNCwz
MiArMTIwLDUyIEBACiA2Mjc3IEFORFJPSUQgVlVMS0FOIDogZEVRUC1FR0wuZnVuY3Rpb25hbC5p
bWFnZS5yZW5kZXJfbXVsdGlwbGVfY29udGV4dHMuZ2xlczJfYW5kcm9pZF9uYXRpdmVfcmdiOF9y
ZWFkX3BpeGVscyA9IEZBSUwKIDYyNzcgQU5EUk9JRCBWVUxLQU4gOiBkRVFQLUVHTC5mdW5jdGlv
bmFsLmltYWdlLnJlbmRlcl9tdWx0aXBsZV9jb250ZXh0cy5nbGVzMl9hbmRyb2lkX25hdGl2ZV9y
Z2I4X3RleHR1cmUgPSBGQUlMCiAKLS8vIFBpeGVsIDQgVnVsa2FuCisvLyBQaXhlbCA0IFZ1bGth
biAoc3RpbGwgZmFpbGluZyBNYXJjaCAxNiwgMjAyMikKIDY5NTMgUElYRUw0T1JYTCBWVUxLQU4g
OiBkRVFQLUVHTC5mdW5jdGlvbmFsLmJ1ZmZlcl9hZ2Uubm9fcHJlc2VydmUuKi5vZGRfY2xlYXJf
cmVuZGVyX2V2ZW5fY2xlYXIgPSBGQUlMCis2OTUzIFBJWEVMNE9SWEwgVlVMS0FOIDogZEVRUC1F
R0wuZnVuY3Rpb25hbC5idWZmZXJfYWdlLm5vX3ByZXNlcnZlLioub2RkX2NsZWFyX3JlbmRlcl9l
dmVuX2NsZWFyX2NsZWFyID0gRkFJTAogNjk1MyBQSVhFTDRPUlhMIFZVTEtBTiA6IGRFUVAtRUdM
LmZ1bmN0aW9uYWwuYnVmZmVyX2FnZS5ub19wcmVzZXJ2ZS4qLm9kZF9jbGVhcl9yZW5kZXJfZXZl
bl9jbGVhcl9yZW5kZXIgPSBGQUlMCis2OTUzIFBJWEVMNE9SWEwgVlVMS0FOIDogZEVRUC1FR0wu
ZnVuY3Rpb25hbC5idWZmZXJfYWdlLm5vX3ByZXNlcnZlLioub2RkX2NsZWFyX3JlbmRlcl9ldmVu
X25vbmUgPSBGQUlMCiA2OTUzIFBJWEVMNE9SWEwgVlVMS0FOIDogZEVRUC1FR0wuZnVuY3Rpb25h
bC5idWZmZXJfYWdlLm5vX3ByZXNlcnZlLioub2RkX2NsZWFyX3JlbmRlcl9ldmVuX3JlbmRlciA9
IEZBSUwKIDY5NTMgUElYRUw0T1JYTCBWVUxLQU4gOiBkRVFQLUVHTC5mdW5jdGlvbmFsLmJ1ZmZl
cl9hZ2Uubm9fcHJlc2VydmUuKi5vZGRfY2xlYXJfcmVuZGVyX2V2ZW5fcmVuZGVyX3JlbmRlciA9
IEZBSUwKIDY5NTMgUElYRUw0T1JYTCBWVUxLQU4gOiBkRVFQLUVHTC5mdW5jdGlvbmFsLmJ1ZmZl
cl9hZ2Uubm9fcHJlc2VydmUuKi5vZGRfcmVuZGVyX2NsZWFyX2V2ZW5fY2xlYXIgPSBGQUlMCis2
OTUzIFBJWEVMNE9SWEwgVlVMS0FOIDogZEVRUC1FR0wuZnVuY3Rpb25hbC5idWZmZXJfYWdlLm5v
X3ByZXNlcnZlLioub2RkX3JlbmRlcl9jbGVhcl9ldmVuX2NsZWFyX2NsZWFyID0gRkFJTAogNjk1
MyBQSVhFTDRPUlhMIFZVTEtBTiA6IGRFUVAtRUdMLmZ1bmN0aW9uYWwuYnVmZmVyX2FnZS5ub19w
cmVzZXJ2ZS4qLm9kZF9yZW5kZXJfY2xlYXJfZXZlbl9jbGVhcl9yZW5kZXIgPSBGQUlMCis2OTUz
IFBJWEVMNE9SWEwgVlVMS0FOIDogZEVRUC1FR0wuZnVuY3Rpb25hbC5idWZmZXJfYWdlLm5vX3By
ZXNlcnZlLioub2RkX3JlbmRlcl9jbGVhcl9ldmVuX25vbmUgPSBGQUlMCiA2OTUzIFBJWEVMNE9S
WEwgVlVMS0FOIDogZEVRUC1FR0wuZnVuY3Rpb25hbC5idWZmZXJfYWdlLm5vX3ByZXNlcnZlLiou
b2RkX3JlbmRlcl9jbGVhcl9ldmVuX3JlbmRlciA9IEZBSUwKKzY5NTMgUElYRUw0T1JYTCBWVUxL
QU4gOiBkRVFQLUVHTC5mdW5jdGlvbmFsLmJ1ZmZlcl9hZ2Uubm9fcHJlc2VydmUuKi5vZGRfcmVu
ZGVyX2NsZWFyX2V2ZW5fcmVuZGVyX2NsZWFyID0gRkFJTAogNjk1MyBQSVhFTDRPUlhMIFZVTEtB
TiA6IGRFUVAtRUdMLmZ1bmN0aW9uYWwuYnVmZmVyX2FnZS5ub19wcmVzZXJ2ZS4qLm9kZF9yZW5k
ZXJfY2xlYXJfZXZlbl9yZW5kZXJfcmVuZGVyID0gRkFJTAogNjk1MyBQSVhFTDRPUlhMIFZVTEtB
TiA6IGRFUVAtRUdMLmZ1bmN0aW9uYWwuYnVmZmVyX2FnZS5ub19wcmVzZXJ2ZS4qLm9kZF9yZW5k
ZXJfZXZlbl9jbGVhciA9IEZBSUwKIDY5NTMgUElYRUw0T1JYTCBWVUxLQU4gOiBkRVFQLUVHTC5m
dW5jdGlvbmFsLmJ1ZmZlcl9hZ2Uubm9fcHJlc2VydmUuKi5vZGRfcmVuZGVyX2V2ZW5fbm9uZSA9
IEZBSUwKKzY5NTMgUElYRUw0T1JYTCBWVUxLQU4gOiBkRVFQLUVHTC5mdW5jdGlvbmFsLmJ1ZmZl
cl9hZ2Uubm9fcHJlc2VydmUuKi5vZGRfcmVuZGVyX2V2ZW5fcmVuZGVyID0gRkFJTAorNjk1MyBQ
SVhFTDRPUlhMIFZVTEtBTiA6IGRFUVAtRUdMLmZ1bmN0aW9uYWwuYnVmZmVyX2FnZS5ub19wcmVz
ZXJ2ZS4qLm9kZF9yZW5kZXJfcmVuZGVyX2V2ZW5fY2xlYXJfY2xlYXIgPSBGQUlMCiA2OTUzIFBJ
WEVMNE9SWEwgVlVMS0FOIDogZEVRUC1FR0wuZnVuY3Rpb25hbC5idWZmZXJfYWdlLm5vX3ByZXNl
cnZlLioub2RkX3JlbmRlcl9yZW5kZXJfZXZlbl9ub25lID0gRkFJTAogNjk1MyBQSVhFTDRPUlhM
IFZVTEtBTiA6IGRFUVAtRUdMLmZ1bmN0aW9uYWwuYnVmZmVyX2FnZS5ub19wcmVzZXJ2ZS4qLm9k
ZF9yZW5kZXJfcmVuZGVyX2V2ZW5fcmVuZGVyID0gRkFJTAogNjk1MyBQSVhFTDRPUlhMIFZVTEtB
TiA6IGRFUVAtRUdMLmZ1bmN0aW9uYWwuYnVmZmVyX2FnZS5ub19wcmVzZXJ2ZS4qLm9kZF9yZW5k
ZXJfcmVuZGVyX2V2ZW5fcmVuZGVyX3JlbmRlciA9IEZBSUwKKzY5NTMgUElYRUw0T1JYTCBWVUxL
QU4gOiBkRVFQLUVHTC5mdW5jdGlvbmFsLnBhcnRpYWxfdXBkYXRlLm9kZF9jbGVhcl9yZW5kZXJf
ZXZlbl9jbGVhciA9IEZBSUwKKzY5NTMgUElYRUw0T1JYTCBWVUxLQU4gOiBkRVFQLUVHTC5mdW5j
dGlvbmFsLnBhcnRpYWxfdXBkYXRlLm9kZF9jbGVhcl9yZW5kZXJfZXZlbl9jbGVhcl9jbGVhciA9
IEZBSUwKKzY5NTMgUElYRUw0T1JYTCBWVUxLQU4gOiBkRVFQLUVHTC5mdW5jdGlvbmFsLnBhcnRp
YWxfdXBkYXRlLm9kZF9jbGVhcl9yZW5kZXJfZXZlbl9jbGVhcl9yZW5kZXIgPSBGQUlMCis2OTUz
IFBJWEVMNE9SWEwgVlVMS0FOIDogZEVRUC1FR0wuZnVuY3Rpb25hbC5wYXJ0aWFsX3VwZGF0ZS5v
ZGRfY2xlYXJfcmVuZGVyX2V2ZW5fbm9uZSA9IEZBSUwKKzY5NTMgUElYRUw0T1JYTCBWVUxLQU4g
OiBkRVFQLUVHTC5mdW5jdGlvbmFsLnBhcnRpYWxfdXBkYXRlLm9kZF9jbGVhcl9yZW5kZXJfZXZl
bl9yZW5kZXIgPSBGQUlMCis2OTUzIFBJWEVMNE9SWEwgVlVMS0FOIDogZEVRUC1FR0wuZnVuY3Rp
b25hbC5wYXJ0aWFsX3VwZGF0ZS5vZGRfY2xlYXJfcmVuZGVyX2V2ZW5fcmVuZGVyX3JlbmRlciA9
IEZBSUwKKzY5NTMgUElYRUw0T1JYTCBWVUxLQU4gOiBkRVFQLUVHTC5mdW5jdGlvbmFsLnBhcnRp
YWxfdXBkYXRlLm9kZF9yZW5kZXJfY2xlYXJfZXZlbl9jbGVhciA9IEZBSUwKKzY5NTMgUElYRUw0
T1JYTCBWVUxLQU4gOiBkRVFQLUVHTC5mdW5jdGlvbmFsLnBhcnRpYWxfdXBkYXRlLm9kZF9yZW5k
ZXJfY2xlYXJfZXZlbl9jbGVhcl9jbGVhciA9IEZBSUwKKzY5NTMgUElYRUw0T1JYTCBWVUxLQU4g
OiBkRVFQLUVHTC5mdW5jdGlvbmFsLnBhcnRpYWxfdXBkYXRlLm9kZF9yZW5kZXJfY2xlYXJfZXZl
bl9jbGVhcl9yZW5kZXIgPSBGQUlMCis2OTUzIFBJWEVMNE9SWEwgVlVMS0FOIDogZEVRUC1FR0wu
ZnVuY3Rpb25hbC5wYXJ0aWFsX3VwZGF0ZS5vZGRfcmVuZGVyX2NsZWFyX2V2ZW5fbm9uZSA9IEZB
SUwKKzY5NTMgUElYRUw0T1JYTCBWVUxLQU4gOiBkRVFQLUVHTC5mdW5jdGlvbmFsLnBhcnRpYWxf
dXBkYXRlLm9kZF9yZW5kZXJfY2xlYXJfZXZlbl9yZW5kZXIgPSBGQUlMCis2OTUzIFBJWEVMNE9S
WEwgVlVMS0FOIDogZEVRUC1FR0wuZnVuY3Rpb25hbC5wYXJ0aWFsX3VwZGF0ZS5vZGRfcmVuZGVy
X2NsZWFyX2V2ZW5fcmVuZGVyX2NsZWFyID0gRkFJTAorNjk1MyBQSVhFTDRPUlhMIFZVTEtBTiA6
IGRFUVAtRUdMLmZ1bmN0aW9uYWwucGFydGlhbF91cGRhdGUub2RkX3JlbmRlcl9jbGVhcl9ldmVu
X3JlbmRlcl9yZW5kZXIgPSBGQUlMCis2OTUzIFBJWEVMNE9SWEwgVlVMS0FOIDogZEVRUC1FR0wu
ZnVuY3Rpb25hbC5wYXJ0aWFsX3VwZGF0ZS5vZGRfcmVuZGVyX2V2ZW5fY2xlYXIgPSBGQUlMCis2
OTUzIFBJWEVMNE9SWEwgVlVMS0FOIDogZEVRUC1FR0wuZnVuY3Rpb25hbC5wYXJ0aWFsX3VwZGF0
ZS5vZGRfcmVuZGVyX2V2ZW5fbm9uZSA9IEZBSUwKKzY5NTMgUElYRUw0T1JYTCBWVUxLQU4gOiBk
RVFQLUVHTC5mdW5jdGlvbmFsLnBhcnRpYWxfdXBkYXRlLm9kZF9yZW5kZXJfZXZlbl9yZW5kZXIg
PSBGQUlMCis2OTUzIFBJWEVMNE9SWEwgVlVMS0FOIDogZEVRUC1FR0wuZnVuY3Rpb25hbC5wYXJ0
aWFsX3VwZGF0ZS5vZGRfcmVuZGVyX3JlbmRlcl9ldmVuX2NsZWFyX2NsZWFyID0gRkFJTAorNjk1
MyBQSVhFTDRPUlhMIFZVTEtBTiA6IGRFUVAtRUdMLmZ1bmN0aW9uYWwucGFydGlhbF91cGRhdGUu
b2RkX3JlbmRlcl9yZW5kZXJfZXZlbl9ub25lID0gRkFJTAorNjk1MyBQSVhFTDRPUlhMIFZVTEtB
TiA6IGRFUVAtRUdMLmZ1bmN0aW9uYWwucGFydGlhbF91cGRhdGUub2RkX3JlbmRlcl9yZW5kZXJf
ZXZlbl9yZW5kZXIgPSBGQUlMCis2OTUzIFBJWEVMNE9SWEwgVlVMS0FOIDogZEVRUC1FR0wuZnVu
Y3Rpb25hbC5wYXJ0aWFsX3VwZGF0ZS5vZGRfcmVuZGVyX3JlbmRlcl9ldmVuX3JlbmRlcl9yZW5k
ZXIgPSBGQUlMCiAKIC8vIFBpeGVsIDYgVnVsa2FuCiA2OTAwIFBJWEVMNiBWVUxLQU4gOiBkRVFQ
LUVHTC5mdW5jdGlvbmFsLmdldF9wcm9jX2FkZHJlc3MuZXh0ZW5zaW9uLmVnbF9leHRfaW1hZ2Vf
ZG1hX2J1Zl9pbXBvcnRfbW9kaWZpZXJzID0gRkFJTAogNjg5OSBQSVhFTDYgVlVMS0FOIDogZEVR
UC1FR0wuZnVuY3Rpb25hbC5xdWVyeV9jb250ZXh0LioucmdiODg4X3dpbmRvdyA9IEZBSUwKIAot
Ly8gUm9idXN0bmVzcyBmYWlsdXJlcyBvbiBtdWx0aXBsZSBwbGF0Zm9ybXMKLTY3MDcgTlZJRElB
IDogZEVRUC1FR0wuZnVuY3Rpb25hbC5yb2J1c3RuZXNzLnJlc2V0X2NvbnRleHQuc2hhZGVycy5v
dXRfb2ZfYm91bmRzLnJlc2V0X3N0YXR1cy5yZWFkcy51bmlmb3JtX2Jsb2NrLmNvbXB1dGUgPSBT
S0lQCi02NzA3IE5WSURJQSA6IGRFUVAtRUdMLmZ1bmN0aW9uYWwucm9idXN0bmVzcy5yZXNldF9j
b250ZXh0LnNoYWRlcnMub3V0X29mX2JvdW5kcy5yZXNldF9zdGF0dXMud3JpdGVzLnVuaWZvcm1f
YmxvY2suY29tcHV0ZSA9IFNLSVAKLQotMzcxMSA6IGRFUVAtRUdMLmZ1bmN0aW9uYWwucm9idXN0
bmVzcy5yZXNldF9jb250ZXh0LnNoYWRlcnMub3V0X29mX2JvdW5kcy5yZXNldF9zdGF0dXMucmVh
ZHMuKiA9IEZBSUwKLTM3MTEgOiBkRVFQLUVHTC5mdW5jdGlvbmFsLnJvYnVzdG5lc3MucmVzZXRf
Y29udGV4dC5zaGFkZXJzLm91dF9vZl9ib3VuZHMucmVzZXRfc3RhdHVzLndyaXRlcy4qID0gRkFJ
TAotCiAvLyBFUyAxIHRlc3RzCiAyMzA2IFdJTiA6IGRFUVAtRUdMLmZ1bmN0aW9uYWwuY29sb3Jf
Y2xlYXJzLnNpbmdsZV9jb250ZXh0LmdsZXMxKiA9IEZBSUwKIDIzMDYgV0lOIDogZEVRUC1FR0wu
ZnVuY3Rpb25hbC5jb2xvcl9jbGVhcnMubXVsdGlfY29udGV4dC5nbGVzMSogPSBGQUlMCmRpZmYg
LS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvZGVxcF9zdXBwb3J0L2Rl
cXBfZ2xlczJfVGVzdEV4cGVjdGF0aW9ucyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90
ZXN0cy9kZXFwX3N1cHBvcnQvZGVxcF9nbGVzMl9UZXN0RXhwZWN0YXRpb25zCmluZGV4IDhjNjQ0
Mzc1MTY5MDk2ZTM1MDE0NDk2MjdmMzNkODgxYTMyZTlmMDMuLmE1NjVmNzk4ZDQ0MmFkNWJlMjdm
NmJiZDE0NzU2NDNlMzNhMjYwMWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy90ZXN0cy9kZXFwX3N1cHBvcnQvZGVxcF9nbGVzMl9UZXN0RXhwZWN0YXRpb25zCisrKyBi
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9kZXFwX3N1cHBvcnQvZGVxcF9nbGVz
Ml9UZXN0RXhwZWN0YXRpb25zCkBAIC0yMTIsMTIgKzIxMiw2IEBACiA1MTcyIE1BQyBPUEVOR0wg
QU1EIDogZEVRUC1HTEVTMi5mdW5jdGlvbmFsLnNoYWRlcnMuZnJhZ2RhdGEuKiA9IEZBSUwKIDUx
NzIgTUFDIE9QRU5HTCBBTUQgOiBkRVFQLUdMRVMyLmZ1bmN0aW9uYWwuZnJhZ21lbnRfb3BzLmJs
ZW5kLmVxdWF0aW9uX3NyY19mdW5jX2RzdF9mdW5jLiogPSBGQUlMCiAKLS8vIEFuZHJvaWQgR0xF
UyBiYWNrZW5kIG9ubHkgZmFpbHVyZXMKLTI2MzEgR0xFUyBBTkRST0lEIDogZEVRUC1HTEVTMi5m
dW5jdGlvbmFsLnNoYWRlcnMub3BlcmF0b3Iuc2VxdWVuY2Uuc2lkZV9lZmZlY3RzLmFmZmVjdF8q
ID0gRkFJTAotLy8gVE9ETzogdW5jb21tZW50IHRoaXMgd2hlbiBhbmdsZWJ1Zy5jb20vNTY2NSBp
cyBmaXhlZAotLy8yNjMwIEdMRVMgQU5EUk9JRCA6IGRFUVAtR0xFUzIuZnVuY3Rpb25hbC5zaGFk
ZXJzLnN0cnVjdC51bmlmb3JtLnNhbXBsZXJfaW5fYXJyYXlfZnVuY3Rpb25fYXJnXyogPSBGQUlM
Ci0vLzI2MzAgR0xFUyBBTkRST0lEIDogZEVRUC1HTEVTMi5mdW5jdGlvbmFsLnNoYWRlcnMuc3Ry
dWN0LnVuaWZvcm0uc2FtcGxlcl9pbl9mdW5jdGlvbl9hcmdfKiA9IEZBSUwKLQogLy8gRDNEMTEg
QU1EIGFscmVhZHkgY292ZXJlZCBieSBMaW5lIDE0OAogMzI0MyBEM0QxMSBJTlRFTCA6IGRFUVAt
R0xFUzIuZnVuY3Rpb25hbC50ZXh0dXJlLm1pcG1hcC5jdWJlLmJhc2ljLmxpbmVhcl9uZWFyZXN0
ID0gRkFJTAogMzI0MyBEM0QxMSBJTlRFTCA6IGRFUVAtR0xFUzIuZnVuY3Rpb25hbC50ZXh0dXJl
Lm1pcG1hcC5jdWJlLmJhc2ljLmxpbmVhcl9saW5lYXIgPSBGQUlMCkBAIC0yNDQsMTEgKzIzOCw2
IEBACiAzMjQwIEQzRDExIDogZEVRUC1HTEVTMi5mdW5jdGlvbmFsLnRleHR1cmUudmVydGV4LmN1
YmUud3JhcC5taXJyb3JfcmVwZWF0ID0gRkFJTAogMzI0MCBEM0QxMSA6IGRFUVAtR0xFUzIuZnVu
Y3Rpb25hbC50ZXh0dXJlLnZlcnRleC5jdWJlLndyYXAubWlycm9yX21pcnJvciA9IEZBSUwKIAot
Ly8gQWRyZW5vIGxpbmUgcmFzdGVyaXphdGlvbiBpcyBub3QgY29uZm9ybWFudC4KLTI4MzAgVlVM
S0FOIEFORFJPSUQgOiBkRVFQLUdMRVMyLmZ1bmN0aW9uYWwucmFzdGVyaXphdGlvbi5wcmltaXRp
dmVzLmxpbmVfbG9vcCA9IEZBSUwKLTI4MzAgVlVMS0FOIEFORFJPSUQgOiBkRVFQLUdMRVMyLmZ1
bmN0aW9uYWwucmFzdGVyaXphdGlvbi5wcmltaXRpdmVzLmxpbmVfc3RyaXAgPSBGQUlMCi0yODMw
IFZVTEtBTiBBTkRST0lEIDogZEVRUC1HTEVTMi5mdW5jdGlvbmFsLnJhc3Rlcml6YXRpb24ucHJp
bWl0aXZlcy5saW5lcyA9IEZBSUwKLQogLy8gVGhlc2UgdGVzdHMgYWxzbyBmYWlsIG9uIEFNRCB3
aW5kb3dzIGRyaXZlciBhcyBpdCBpcyBub3QgYWxsb3dlZCB0byB1c2UgZW11bGF0aW9uIGR1ZSB0
byBlcnJvcnMuCiAzMjQzIFZVTEtBTiBXSU4gQU1EIDogZEVRUC1HTEVTMi5mdW5jdGlvbmFsLnNo
YWRlcnMudGV4dHVyZV9mdW5jdGlvbnMudmVydGV4LnRleHR1cmVjdWJlbG9kID0gRkFJTAogMzI0
MyBWVUxLQU4gV0lOIEFNRCA6IGRFUVAtR0xFUzIuZnVuY3Rpb25hbC50ZXh0dXJlLm1pcG1hcC5j
dWJlLmJhc2ljLmxpbmVhcl9uZWFyZXN0ID0gRkFJTApAQCAtMzY0LDE2ICszNTMsNiBAQAogLy8g
VGVzdCBidWcgLSBmYWlscyBpbiBBU0FOLgogNjY3OCBBU0FOIDogZEVRUC1HTEVTMi5mdW5jdGlv
bmFsLm5lZ2F0aXZlX2FwaS50ZXh0dXJlLmNvbXByZXNzZWR0ZXhzdWJpbWFnZTJkKiA9IFNLSVAK
IAotLy8gVnVsa2FuCi00OTQ0IFZVTEtBTiBBTkRST0lEIDogZEVRUC1HTEVTMi5mdW5jdGlvbmFs
LmZiby5yZW5kZXIucmVjcmVhdGVfY29sb3JidWZmZXIucmViaW5kX3Jib19yZ2JhNCA9IEZBSUwK
LTQ5NDQgVlVMS0FOIEFORFJPSUQgOiBkRVFQLUdMRVMyLmZ1bmN0aW9uYWwuZmJvLnJlbmRlci5y
ZWNyZWF0ZV9jb2xvcmJ1ZmZlci5yZWJpbmRfcmJvX3JnYmE0X3N0ZW5jaWxfaW5kZXg4ID0gRkFJ
TAotNDk0NCBWVUxLQU4gQU5EUk9JRCA6IGRFUVAtR0xFUzIuZnVuY3Rpb25hbC5mYm8ucmVuZGVy
LnJlY3JlYXRlX2NvbG9yYnVmZmVyLm5vX3JlYmluZF9yYm9fcmdiYTQgPSBGQUlMCi00OTQ0IFZV
TEtBTiBBTkRST0lEIDogZEVRUC1HTEVTMi5mdW5jdGlvbmFsLmZiby5yZW5kZXIucmVjcmVhdGVf
Y29sb3JidWZmZXIubm9fcmViaW5kX3Jib19yZ2JhNF9zdGVuY2lsX2luZGV4OCA9IEZBSUwKLTQ5
NDQgVlVMS0FOIEFORFJPSUQgOiBkRVFQLUdMRVMyLmZ1bmN0aW9uYWwuZmJvLnJlbmRlci5yZWNy
ZWF0ZV9kZXB0aGJ1ZmZlci5yZWJpbmRfcmJvX3JnYmE0X2RlcHRoX2NvbXBvbmVudDE2ID0gRkFJ
TAotNDk0NCBWVUxLQU4gQU5EUk9JRCA6IGRFUVAtR0xFUzIuZnVuY3Rpb25hbC5mYm8ucmVuZGVy
LnJlY3JlYXRlX2RlcHRoYnVmZmVyLm5vX3JlYmluZF9yYm9fcmdiYTRfZGVwdGhfY29tcG9uZW50
MTYgPSBGQUlMCi00OTQ0IFZVTEtBTiBBTkRST0lEIDogZEVRUC1HTEVTMi5mdW5jdGlvbmFsLmZi
by5yZW5kZXIucmVjcmVhdGVfc3RlbmNpbGJ1ZmZlci5yZWJpbmRfcmJvX3JnYmE0X3N0ZW5jaWxf
aW5kZXg4ID0gRkFJTAotNDk0NCBWVUxLQU4gQU5EUk9JRCA6IGRFUVAtR0xFUzIuZnVuY3Rpb25h
bC5mYm8ucmVuZGVyLnJlY3JlYXRlX3N0ZW5jaWxidWZmZXIubm9fcmViaW5kX3Jib19yZ2JhNF9z
dGVuY2lsX2luZGV4OCA9IEZBSUwKLQogLy8gUGl4ZWwgNCB0ZXN0IGV4cGVjdGF0aW9ucy4KIDU5
OTAgUElYRUw0T1JYTCBWVUxLQU4gOiBkRVFQLUdMRVMyLmZ1bmN0aW9uYWwuYXR0cmlidXRlX2xv
Y2F0aW9uLmJpbmQuZmxvYXQgPSBTS0lQCiA1OTkwIFBJWEVMNE9SWEwgVlVMS0FOIDogZEVRUC1H
TEVTMi5mdW5jdGlvbmFsLmNsaXBwaW5nLnRyaWFuZ2xlX3ZlcnRleC5jbGlwX3RocmVlLmNsaXBf
bmVnX3hfbmVnX3pfYW5kX3Bvc194X25lZ195X3Bvc196X2FuZF9wb3NfeF9wb3NfeV9wb3NfeiA9
IFNLSVAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9kZXFw
X3N1cHBvcnQvZGVxcF9nbGVzMzFfVGVzdEV4cGVjdGF0aW9ucyBiL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3NyYy90ZXN0cy9kZXFwX3N1cHBvcnQvZGVxcF9nbGVzMzFfVGVzdEV4cGVjdGF0aW9u
cwppbmRleCA5ZmE2ZDJmOGE4NjNmMjUyMzdjMDNlOTI4MGJmZWQxYzRkNGQ1MjI5Li4zMDc5MDM0
ZjA5YzllOWY2MDM0ZmUyOTcwMDgwNjZhMGNhNTc5ZDIzIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvZGVxcF9zdXBwb3J0L2RlcXBfZ2xlczMxX1Rlc3RFeHBl
Y3RhdGlvbnMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2RlcXBfc3Vw
cG9ydC9kZXFwX2dsZXMzMV9UZXN0RXhwZWN0YXRpb25zCkBAIC0xNjMsOSArMTYzLDYgQEAKIC8v
IENhbm5vdCBjcmVhdGUgMkQgKGFycmF5KSB2aWV3IG9mIDNEIHRleHR1cmUuICBUaGVzZSBmYWls
IHdpdGggdmFsaWRhdGlvbiBlcnJvcnMsIGFuZCBjYXVzZSBhIGNyYXNoIGluIHN5bmN2YWwuCiAz
ODg2IFZVTEtBTiA6IGRFUVAtR0xFUzMxLmZ1bmN0aW9uYWwuaW1hZ2VfbG9hZF9zdG9yZS4zZC4q
c2luZ2xlX2xheWVyID0gU0tJUAogCi0vLyBHZW9tZXRyeSBzaGFkZXIgc3VwcG9ydDoKLTU0MzAg
VlVMS0FOIDogZEVRUC1HTEVTMzEuZnVuY3Rpb25hbC5nZW9tZXRyeV9zaGFkaW5nLnF1ZXJ5LnBy
aW1pdGl2ZXNfZ2VuZXJhdGVkXyogPSBGQUlMCi0KIC8vIEZyYW1lYnVmZmVyIGZldGNoIGltcGxl
bWVudGF0aW9uIGJ1ZwogNjkwOSBWVUxLQU4gOiBkRVFQLUdMRVMzMS5mdW5jdGlvbmFsLnNoYWRl
cnMuZnJhbWVidWZmZXJfZmV0Y2guYmFzaWMuZnJhbWVidWZmZXJfdGV4dHVyZV9sYXllciA9IFNL
SVAKIApAQCAtMTk1LDggKzE5Miw2IEBACiA0MDgwIEFORFJPSUQgVlVMS0FOIDogZEVRUC1HTEVT
MzEuZnVuY3Rpb25hbC5zdGVuY2lsX3RleHR1cmluZy5taXNjLmJhc2VfbGV2ZWwgPSBTS0lQCiAK
IC8vIEZhaWwgb24gdGVzdHMgdGhhdCB1c2UgYW4gdW5zdXBwb3J0ZWQgZXh0ZW5zaW9uIQotNDM3
MSBWVUxLQU4gQU5EUk9JRCA6IGRFUVAtR0xFUzMxLmZ1bmN0aW9uYWwuc2hhZGVycy5pbXBsaWNp
dF9jb252ZXJzaW9ucy5lczMxLmFyaXRobWV0aWMuaW5wdXRfYmVmb3JlX2xpdGVyYWwuYWRkLmlu
dF90b192ZWMzX3ZlcnRleCA9IEZBSUwKLTQzNzEgVlVMS0FOIEFORFJPSUQgOiBkRVFQLUdMRVMz
MS5mdW5jdGlvbmFsLnNoYWRlcnMuaW1wbGljaXRfY29udmVyc2lvbnMuZXMzMS5hcml0aG1ldGlj
LmlucHV0X2JlZm9yZV9saXRlcmFsLmFkZC5pbnRfdG9fdXZlYzNfdmVydGV4ID0gRkFJTAogNDM3
MSBTV0lGVFNIQURFUiA6IGRFUVAtR0xFUzMxLmZ1bmN0aW9uYWwuc2hhZGVycy5pbXBsaWNpdF9j
b252ZXJzaW9ucy4qID0gRkFJTAogCiAvLyBEZXNrdG9wIGNhcmRzIHdpdGhvdXQgbmF0aXZlIGV0
YyBzdXBwb3J0LCBhbmdsZSBlbXVsYXRlZCBmb3JtYXQgZmFpbHMKQEAgLTIxMSwxMyArMjA2LDcg
QEAKIDUyNzcgVlVMS0FOIEFORFJPSUQgOiBkRVFQLUdMRVMzMS5mdW5jdGlvbmFsLmNvcHlfaW1h
Z2Uubm9uX2NvbXByZXNzZWQudmlld2NsYXNzXzMyX2JpdHMucmdiYThfc25vcm1fcmdiMTBfYTIq
ID0gRkFJTAogNTI3NyBWVUxLQU4gQU5EUk9JRCA6IGRFUVAtR0xFUzMxLmZ1bmN0aW9uYWwuY29w
eV9pbWFnZS5ub25fY29tcHJlc3NlZC52aWV3Y2xhc3NfMzJfYml0cy5yZ2JhOF9zbm9ybV9yZ2I5
X2U1KiA9IEZBSUwKIAotLy8gQ2Fubm90IHN1cHBvcnQgYSBzZXBlcmF0ZSBzZXQgb2YgZnJhZ21l
bnQgc2hhZGVyIGlucHV0IHdoZW4gcGVyLXNhbXBsZSBzaGFkaW5nOgotMzU4OCBWVUxLQU4gQU5E
Uk9JRCA6IGRFUVAtR0xFUzMxLmZ1bmN0aW9uYWwuc2hhZGVycy5zYW1wbGVfdmFyaWFibGVzLnNh
bXBsZV9wb3MuY29ycmVjdG5lc3MubXVsdGlzYW1wbGVfKl8xID0gRkFJTAotMzU4OCBWVUxLQU4g
QU5EUk9JRCA6IGRFUVAtR0xFUzMxLmZ1bmN0aW9uYWwuc2hhZGVycy5zYW1wbGVfdmFyaWFibGVz
LnNhbXBsZV9wb3MuY29ycmVjdG5lc3MubXVsdGlzYW1wbGVfKl8yID0gRkFJTAotMzU4OCBWVUxL
QU4gQU5EUk9JRCA6IGRFUVAtR0xFUzMxLmZ1bmN0aW9uYWwuc2hhZGVycy5zYW1wbGVfdmFyaWFi
bGVzLnNhbXBsZV9wb3MuY29ycmVjdG5lc3MubXVsdGlzYW1wbGVfKl80ID0gRkFJTAotCiAvLyBX
aGVuIEFOR0xFIGFsbG93cyBub24tY29uZm9ybWFudCBmZWF0dXJlcywgaW1hZ2VBdG9taWNFeGNo
YW5nZSB3aXRoIHIzMmYgZmFpbHMKLTU1MDMgVlVMS0FOIEFORFJPSUQgOiBkRVFQLUdMRVMzMS5m
dW5jdGlvbmFsLmltYWdlX2xvYWRfc3RvcmUuKi5hdG9taWMuZXhjaGFuZ2VfcjMyZiogPSBGQUlM
CiA1NTAzIFNXSUZUU0hBREVSIDogZEVRUC1HTEVTMzEuZnVuY3Rpb25hbC5pbWFnZV9sb2FkX3N0
b3JlLiouYXRvbWljLmV4Y2hhbmdlX3IzMmYqID0gU0tJUAogCiAvLyBOVklESUEgZmFpbHVyZXMg
b24gb2xkZXIgZHJpdmVycwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3Jj
L3Rlc3RzL2RlcXBfc3VwcG9ydC9kZXFwX2dsZXMzX1Rlc3RFeHBlY3RhdGlvbnMgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvZGVxcF9zdXBwb3J0L2RlcXBfZ2xlczNfVGVzdEV4
cGVjdGF0aW9ucwppbmRleCAwZDRiNDU5NDFjNzFkN2VkZGFkYWYzYzc1YjBlMGVlODJmNWYwYzY5
Li5hOWEzZmNjNjQ1MzcyNDFiMGRjMjRmODg5ZDc5NWEwOGM5NjA1ZTZiIDEwMDY0NAotLS0gYS9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvZGVxcF9zdXBwb3J0L2RlcXBfZ2xlczNf
VGVzdEV4cGVjdGF0aW9ucworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMv
ZGVxcF9zdXBwb3J0L2RlcXBfZ2xlczNfVGVzdEV4cGVjdGF0aW9ucwpAQCAtNTExLDE4ICs1MTEs
MTEgQEAKIC8vIEdlbmVyYWwgVnVsa2FuIGZhaWx1cmVzCiAKIC8vIFRlc3RzIGZhaWxpbmcgZHVl
IHRvIHRoZSAiZmxhdCIgcXVhbGlmaWVyIGluIHRoZSBzaGFkZXI6Ci0zNjc3IFZVTEtBTiBOT1NB
TiA6IGRFUVAtR0xFUzMuZnVuY3Rpb25hbC5mcmFnbWVudF9vdXQuYmFzaWMuaW50LiogPSBGQUlM
Ci0zNjc3IFZVTEtBTiBOT1NBTiA6IGRFUVAtR0xFUzMuZnVuY3Rpb25hbC5mcmFnbWVudF9vdXQu
YmFzaWMudWludC4qID0gRkFJTAotMzY3NyBWVUxLQU4gTk9TQU4gOiBkRVFQLUdMRVMzLmZ1bmN0
aW9uYWwuZnJhZ21lbnRfb3V0LmFycmF5LmludCogPSBGQUlMCi0zNjc3IFZVTEtBTiBOT1NBTiA6
IGRFUVAtR0xFUzMuZnVuY3Rpb25hbC5mcmFnbWVudF9vdXQuYXJyYXkudWludCogPSBGQUlMCi0z
Njc3IFZVTEtBTiBOT1NBTiA6IGRFUVAtR0xFUzMuZnVuY3Rpb25hbC5mcmFnbWVudF9vdXQucmFu
ZG9tLiogPSBGQUlMCi0KLS8vIE5WSURJQSBEZXB0aC9TdGVuY2lsIHRleHR1cmVzOgotLy8gRmFp
bHMgb24gUXVhZHJvIFA0MDAsIGRyaXZlciA0MTguNTYsIExpbnV4Ci0zOTcwIFZVTEtBTiBOVklE
SUEgTElOVVggOiBkRVFQLUdMRVMzLmZ1bmN0aW9uYWwuZmJvLmRlcHRoLmRlcHRoX3dyaXRlX2Ns
YW1wLmRlcHRoX2NvbXBvbmVudDMyZiA9IEZBSUwKLTM5NzAgVlVMS0FOIE5WSURJQSBMSU5VWCA6
IGRFUVAtR0xFUzMuZnVuY3Rpb25hbC5mYm8uZGVwdGguZGVwdGhfd3JpdGVfY2xhbXAuZGVwdGgz
MmZfc3RlbmNpbDggPSBGQUlMCi0zOTcwIFZVTEtBTiBOVklESUEgTElOVVggOiBkRVFQLUdMRVMz
LmZ1bmN0aW9uYWwuZmJvLmRlcHRoLmRlcHRoX3Rlc3RfY2xhbXAuZGVwdGhfY29tcG9uZW50MzJm
ID0gRkFJTAotMzk3MCBWVUxLQU4gTlZJRElBIExJTlVYIDogZEVRUC1HTEVTMy5mdW5jdGlvbmFs
LmZiby5kZXB0aC5kZXB0aF90ZXN0X2NsYW1wLmRlcHRoMzJmX3N0ZW5jaWw4ID0gRkFJTAorMzY3
NyBWVUxLQU4gTlZJRElBIE5PU0FOIDogZEVRUC1HTEVTMy5mdW5jdGlvbmFsLmZyYWdtZW50X291
dC5iYXNpYy5pbnQuKiA9IEZBSUwKKzM2NzcgVlVMS0FOIE5WSURJQSBOT1NBTiA6IGRFUVAtR0xF
UzMuZnVuY3Rpb25hbC5mcmFnbWVudF9vdXQuYmFzaWMudWludC4qID0gRkFJTAorMzY3NyBWVUxL
QU4gTlZJRElBIE5PU0FOIDogZEVRUC1HTEVTMy5mdW5jdGlvbmFsLmZyYWdtZW50X291dC5hcnJh
eS5pbnQqID0gRkFJTAorMzY3NyBWVUxLQU4gTlZJRElBIE5PU0FOIDogZEVRUC1HTEVTMy5mdW5j
dGlvbmFsLmZyYWdtZW50X291dC5hcnJheS51aW50KiA9IEZBSUwKKzM2NzcgVlVMS0FOIE5WSURJ
QSBOT1NBTiA6IGRFUVAtR0xFUzMuZnVuY3Rpb25hbC5mcmFnbWVudF9vdXQucmFuZG9tLiogPSBG
QUlMCiAKIC8vIFRyYW5zZm9ybSBGZWVkYmFjawogNDY2NiBWVUxLQU4gTlZJRElBIDogZEVRUC1H
TEVTMy5mdW5jdGlvbmFsLnRyYW5zZm9ybV9mZWVkYmFjay5hcnJheV9lbGVtZW50LmludGVybGVh
dmVkLiogPSBTS0lQCkBAIC01MzAsNyArNTIzLDcgQEAKIDQ2NjYgVlVMS0FOIE5WSURJQSA6IGRF
UVAtR0xFUzMuZnVuY3Rpb25hbC50cmFuc2Zvcm1fZmVlZGJhY2sucmFuZG9tLiogPSBTS0lQCiAK
IC8vIEZsYXQgc2hhZGluZzoKLTM0MzAgVlVMS0FOIDogZEVRUC1HTEVTMy5mdW5jdGlvbmFsLnJh
c3Rlcml6YXRpb24uZmxhdHNoYWRpbmcuKiA9IEZBSUwKKzM0MzAgVlVMS0FOIE5WSURJQSA6IGRF
UVAtR0xFUzMuZnVuY3Rpb25hbC5yYXN0ZXJpemF0aW9uLmZsYXRzaGFkaW5nLiogPSBGQUlMCiAK
IC8vIE1pc2MgdW5pbXBsZW1lbnRlZDoKIApAQCAtNTM5LDE3ICs1MzIsNyBAQAogLy8gRmFpbHMg
b24gNDMxLjAyIE5WSURJQSBkcml2ZXIKIDM3NDggVlVMS0FOIFdJTiBOVklESUEgOiBkRVFQLUdM
RVMzLmZ1bmN0aW9uYWwuZmJvLmNvbG9yLnJlcGVhdGVkX2NsZWFyLnNhbXBsZS50ZXgyZC4qID0g
RkFJTAogCi0vLyBBbmRyb2lkIFZ1bGthbiBmYWlsdXJlcwotMzMwNiBBTkRST0lEIFZVTEtBTiA6
IGRFUVAtR0xFUzMuZnVuY3Rpb25hbC5wb2x5Z29uX29mZnNldC4qID0gRkFJTAotMjgzMCBBTkRS
T0lEIFZVTEtBTiA6IGRFUVAtR0xFUzMuZnVuY3Rpb25hbC5yYXN0ZXJpemF0aW9uLmZiby5yYm9f
c2luZ2xlc2FtcGxlLnByaW1pdGl2ZXMubGluZXMgPSBGQUlMCi0yODMwIEFORFJPSUQgVlVMS0FO
IDogZEVRUC1HTEVTMy5mdW5jdGlvbmFsLnJhc3Rlcml6YXRpb24uZmJvLnRleHR1cmVfMmQucHJp
bWl0aXZlcy5saW5lcyA9IEZBSUwKLTI4MzAgQU5EUk9JRCBWVUxLQU4gOiBkRVFQLUdMRVMzLmZ1
bmN0aW9uYWwucmFzdGVyaXphdGlvbi5wcmltaXRpdmVzLmxpbmUqID0gRkFJTAotMjgwOCBBTkRS
T0lEIFZVTEtBTiA6IGRFUVAtR0xFUzMuZnVuY3Rpb25hbC5zaGFkZXJzLmJ1aWx0aW5fdmFyaWFi
bGUuZnJhZ2Nvb3JkX3cgPSBGQUlMCi0KLS8vIEZpeGVkIGluIGxhdGVyIGRyaXZlciB2ZXJzaW9u
cy4KLTI3MjcgVlVMS0FOIEFORFJPSUQgOiBkRVFQLUdMRVMzLmZ1bmN0aW9uYWwuc2hhZGVycy5i
dWlsdGluX3ZhcmlhYmxlLnBvaW50Y29vcmQgPSBGQUlMCi0KLS8vIEZhaWxzIG9ubHkgd2l0aCBT
d2lmdFNoYWRlcjoKKy8vRmFpbHMgb25seSB3aXRoIFN3aWZ0U2hhZGVyOgogCiAvLyBUaGVzZSBv
bmx5IGZhaWwgZm9yIGEgNTY1IGNvbmZpZwogNDAxNiBTV0lGVFNIQURFUiA6IGRFUVAtR0xFUzMu
ZnVuY3Rpb25hbC5mcmFnbWVudF9vcHMuaW50ZXJhY3Rpb24uYmFzaWNfc2hhZGVyLjI3ID0gRkFJ
TApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2RlcXBfc3Vw
cG9ydC9kZXFwX2dsZXMzX3JvdGF0ZV9UZXN0RXhwZWN0YXRpb25zIGIvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL3Rlc3RzL2RlcXBfc3VwcG9ydC9kZXFwX2dsZXMzX3JvdGF0ZV9UZXN0RXhw
ZWN0YXRpb25zCmluZGV4IDUwODQ4Y2I5ZDUzMzNkZjE3NGNiYTNjZDk0MzZkZjU2MDE4ZjQwN2Yu
Ljg1ODZhNDcwMGQyYmEyNGJjZmE5OWEyZWFlMWRjMmEyNjBjYjMwMTEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9kZXFwX3N1cHBvcnQvZGVxcF9nbGVzM19y
b3RhdGVfVGVzdEV4cGVjdGF0aW9ucworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
dGVzdHMvZGVxcF9zdXBwb3J0L2RlcXBfZ2xlczNfcm90YXRlX1Rlc3RFeHBlY3RhdGlvbnMKQEAg
LTYsMTggKzYsNSBAQAogCiAvLyBPbmx5IHRlc3RlZCBvbiBWdWxrYW4gY3VycmVudGx5CiAKLS8v
IEZsYXQgc2hhZGluZzoKKy8vIEZsYXQgc2hhZGluZyAoc3RpbGwgZmFpbGluZyBNYXJjaCAxNiwg
MjAyMik6CiAzNDMwIFZVTEtBTiA6IGRFUVAtR0xFUzMuZnVuY3Rpb25hbC5yYXN0ZXJpemF0aW9u
LmZsYXRzaGFkaW5nLiogPSBGQUlMCi0KLS8vIEFuZHJvaWQgVnVsa2FuIGZhaWx1cmVzCi0yODMw
IEFORFJPSUQgVlVMS0FOIDogZEVRUC1HTEVTMy5mdW5jdGlvbmFsLnJhc3Rlcml6YXRpb24uZmJv
LnJib19zaW5nbGVzYW1wbGUucHJpbWl0aXZlcy5saW5lcyA9IEZBSUwKLTI4MzAgQU5EUk9JRCBW
VUxLQU4gOiBkRVFQLUdMRVMzLmZ1bmN0aW9uYWwucmFzdGVyaXphdGlvbi5mYm8udGV4dHVyZV8y
ZC5wcmltaXRpdmVzLmxpbmVzID0gRkFJTAotMjgzMCBBTkRST0lEIFZVTEtBTiA6IGRFUVAtR0xF
UzMuZnVuY3Rpb25hbC5yYXN0ZXJpemF0aW9uLnByaW1pdGl2ZXMubGluZSogPSBGQUlMCi0yODA4
IEFORFJPSUQgVlVMS0FOIDogZEVRUC1HTEVTMy5mdW5jdGlvbmFsLnNoYWRlcnMuYnVpbHRpbl92
YXJpYWJsZS5mcmFnY29vcmRfdyA9IEZBSUwKLQotMTYxNTQwOTk5IFBJWEVMMk9SWEwgVlVMS0FO
IDogZEVRUC1HTEVTMy5mdW5jdGlvbmFsLmNvbG9yX2NsZWFyLm1hc2tlZF9yZ2IgPSBGQUlMCi0x
NjE1NDA5OTkgUElYRUwyT1JYTCBWVUxLQU4gOiBkRVFQLUdMRVMzLmZ1bmN0aW9uYWwuY29sb3Jf
Y2xlYXIubWFza2VkX3JnYmEgPSBGQUlMCi0xNjE1NDA5OTkgUElYRUwyT1JYTCBWVUxLQU4gOiBk
RVFQLUdMRVMzLmZ1bmN0aW9uYWwuZGVwdGhfc3RlbmNpbF9jbGVhci5kZXB0aF9zdGVuY2lsX21h
c2tlZCA9IEZBSUwKLQotLy8gRml4ZWQgaW4gbGF0ZXIgZHJpdmVyIHZlcnNpb25zLgotMjcyNyBW
VUxLQU4gQU5EUk9JRCA6IGRFUVAtR0xFUzMuZnVuY3Rpb25hbC5zaGFkZXJzLmJ1aWx0aW5fdmFy
aWFibGUucG9pbnRjb29yZCA9IEZBSUwKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FO
R0xFL3NyYy90ZXN0cy9kZXFwX3N1cHBvcnQvZGVxcF9raHJfZ2xlczJfVGVzdEV4cGVjdGF0aW9u
cyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9kZXFwX3N1cHBvcnQvZGVxcF9r
aHJfZ2xlczJfVGVzdEV4cGVjdGF0aW9ucwppbmRleCBkNTY3NDAwMDI0YTg2Mjc5M2Y2N2RkY2Q4
NjdiZmU5ZDU1NjAyZjZjLi5hYzA3MmQ3Mzc5MjExYjlkYzEzM2M3ZDljZDYyNGQwNzY2YmY0YmQw
IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvZGVxcF9zdXBw
b3J0L2RlcXBfa2hyX2dsZXMyX1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL3Rlc3RzL2RlcXBfc3VwcG9ydC9kZXFwX2tocl9nbGVzMl9UZXN0RXhwZWN0
YXRpb25zCkBAIC00LDkgKzQsNiBAQAogCiAvLyBTZWUgUkVBRE1FLm1kIGZvciBmb3JtYXQuCiAK
LS8vIERlcHRoL3N0ZW5jaWwgcmVsYXRlZCBmYWlsdXJlcy4KLTM0NTcgVlVMS0FOIDogS0hSLUdM
RVMyLmNvcmUuaW50ZXJuYWxmb3JtYXQudGV4dHVyZTJkLmRlcHRoX3N0ZW5jaWxfdW5zaWduZWRf
aW50XzI0XzhfZGVwdGhfc3RlbmNpbCA9IEZBSUwKLQogNjY3OCBVQlNBTiA6IEtIUi1HTEVTMi5j
b3JlLmludGVybmFsZm9ybWF0LnRleHR1cmUyZC5yZ2JfaGFsZl9mbG9hdF9vZXNfcmdiID0gU0tJ
UAogNjY3OCBVQlNBTiA6IEtIUi1HTEVTMi5jb3JlLmludGVybmFsZm9ybWF0LnRleHR1cmUyZC5y
Z2JfaGFsZl9mbG9hdF9vZXNfcmdiX2xpbmVhciA9IFNLSVAKIDY2NzggVUJTQU4gOiBLSFItR0xF
UzIuY29yZS5pbnRlcm5hbGZvcm1hdC50ZXh0dXJlMmQucmdiYV9oYWxmX2Zsb2F0X29lc19yZ2Jh
ID0gU0tJUApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2Rl
cXBfc3VwcG9ydC9kZXFwX2tocl9nbGVzMzFfVGVzdEV4cGVjdGF0aW9ucyBiL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9kZXFwX3N1cHBvcnQvZGVxcF9raHJfZ2xlczMxX1Rlc3RF
eHBlY3RhdGlvbnMKaW5kZXggZTliOTAxYTU5ZmI1OTJkMjNjMTZjOTQ2MTAwOTgxNTAzZTE5MDI3
MS4uZGZiZDY0OGM1ZTU4MGI1NjlmMjVhMGExMTRkZGQ4ZDlkMDFhMmJmZCAxMDA2NDQKLS0tIGEv
U291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2RlcXBfc3VwcG9ydC9kZXFwX2tocl9n
bGVzMzFfVGVzdEV4cGVjdGF0aW9ucworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
dGVzdHMvZGVxcF9zdXBwb3J0L2RlcXBfa2hyX2dsZXMzMV9UZXN0RXhwZWN0YXRpb25zCkBAIC0x
NiwyMyArMTYsMjIgQEAKIC8vLy8gR2VuZXJhbCBWdWxrYW4gZXhwZWN0YXRpb25zCiAvLy8vCiAK
LS8vIEZyYW1lYnVmZmVyIHdpdGhvdXQgYXR0YWNobWVudHM6Ci0zNTc5IFZVTEtBTiA6IEtIUi1H
TEVTMzEuY29yZS5mcmFtZWJ1ZmZlcl9ub19hdHRhY2htZW50cy5hcGkgPSBGQUlMCi0KLS8vIEJs
ZW5kIGVxdWF0aW9uczoKLTM1ODYgVlVMS0FOIDogS0hSLUdMRVMzMS5jb3JlLmJsZW5kX2VxdWF0
aW9uX2FkdmFuY2VkLiogPSBTS0lQCi0KIC8vIE5vIGtub3duIGltcGxlbWVudGF0aW9uIHN1cHBv
cnRzIFNUT1JBR0VfVEVYRUxfQlVGRkVSIHN1cHBvcnQgZm9yIFJHQjMyIGZvcm1hdHMKIDM1NzMg
VlVMS0FOIDogS0hSLUdMRVMzMS5jb3JlLnRleHR1cmVfYnVmZmVyLnRleHR1cmVfYnVmZmVyX3Rl
eHR1cmVfYnVmZmVyX3JhbmdlID0gU0tJUAogCiAvLyBHZW9tZXRyeSBzaGFkZXIgc3VwcG9ydCAo
Y29uZGl0aW9uZWQgdG8gd2luZG93cyBhcyB0aGF0J3Mgb3VyIG9ubHkgYm90IGNhcGFibGUgb2Yg
cnVubmluZyB0aGVzZQogLy8gdGVzdHMpCiAvLyBXcm9uZyByZXN1bHRzCi01NTc5IFZVTEtBTiA6
IEtIUi1HTEVTMzEuY29yZS5nZW9tZXRyeV9zaGFkZXIuYWRqYWNlbmN5LmFkamFjZW5jeV9pbmRp
Y2VkX3RyaWFuZ2xlX3N0cmlwID0gRkFJTAotNTU3OSBWVUxLQU4gOiBLSFItR0xFUzMxLmNvcmUu
Z2VvbWV0cnlfc2hhZGVyLmFkamFjZW5jeS5hZGphY2VuY3lfbm9uX2luZGljZWRfdHJpYW5nbGVf
c3RyaXAgPSBGQUlMCi01NTc5IFZVTEtBTiA6IEtIUi1HTEVTMzEuY29yZS5nZW9tZXRyeV9zaGFk
ZXIucmVuZGVyaW5nLnJlbmRlcmluZy50cmlhbmdsZXNfaW5wdXRfbGluZV9zdHJpcF9vdXRwdXRf
dHJpYW5nbGVfKl9kcmF3Y2FsbCA9IEZBSUwKLTU1NzkgVlVMS0FOIDogS0hSLUdMRVMzMS5jb3Jl
Lmdlb21ldHJ5X3NoYWRlci5yZW5kZXJpbmcucmVuZGVyaW5nLnRyaWFuZ2xlc19pbnB1dF90cmlh
bmdsZV9zdHJpcF9vdXRwdXRfdHJpYW5nbGVfKl9kcmF3Y2FsbCA9IEZBSUwKLTU1NzkgVlVMS0FO
IDogS0hSLUdMRVMzMS5jb3JlLmdlb21ldHJ5X3NoYWRlci5yZW5kZXJpbmcucmVuZGVyaW5nLnRy
aWFuZ2xlc193aXRoX2FkamFjZW5jeV9pbnB1dF8qX3N0cmlwX291dHB1dF90cmlhbmdsZV9zdHJp
cF9hZGphY2VuY3lfZHJhd2NhbGwgPSBGQUlMCis1NTc5IFZVTEtBTiBXSU4gOiBLSFItR0xFUzMx
LmNvcmUuZ2VvbWV0cnlfc2hhZGVyLmFkamFjZW5jeS5hZGphY2VuY3lfaW5kaWNlZF90cmlhbmds
ZV9zdHJpcCA9IEZBSUwKKzU1NzkgVlVMS0FOIFdJTiA6IEtIUi1HTEVTMzEuY29yZS5nZW9tZXRy
eV9zaGFkZXIuYWRqYWNlbmN5LmFkamFjZW5jeV9ub25faW5kaWNlZF90cmlhbmdsZV9zdHJpcCA9
IEZBSUwKKzU1NzkgVlVMS0FOIFdJTiA6IEtIUi1HTEVTMzEuY29yZS5nZW9tZXRyeV9zaGFkZXIu
cmVuZGVyaW5nLnJlbmRlcmluZy50cmlhbmdsZXNfaW5wdXRfbGluZV9zdHJpcF9vdXRwdXRfdHJp
YW5nbGVfKl9kcmF3Y2FsbCA9IEZBSUwKKzU1NzkgVlVMS0FOIFdJTiA6IEtIUi1HTEVTMzEuY29y
ZS5nZW9tZXRyeV9zaGFkZXIucmVuZGVyaW5nLnJlbmRlcmluZy50cmlhbmdsZXNfaW5wdXRfdHJp
YW5nbGVfc3RyaXBfb3V0cHV0X3RyaWFuZ2xlXypfZHJhd2NhbGwgPSBGQUlMCis1NTc5IFZVTEtB
TiBXSU4gOiBLSFItR0xFUzMxLmNvcmUuZ2VvbWV0cnlfc2hhZGVyLnJlbmRlcmluZy5yZW5kZXJp
bmcudHJpYW5nbGVzX3dpdGhfYWRqYWNlbmN5X2lucHV0Xypfc3RyaXBfb3V0cHV0X3RyaWFuZ2xl
X3N0cmlwX2FkamFjZW5jeV9kcmF3Y2FsbCA9IEZBSUwKKzU1NzkgVlVMS0FOIExJTlVYIDogS0hS
LUdMRVMzMS5jb3JlLmdlb21ldHJ5X3NoYWRlci5hZGphY2VuY3kuYWRqYWNlbmN5X2luZGljZWRf
dHJpYW5nbGVfc3RyaXAgPSBGQUlMCis1NTc5IFZVTEtBTiBMSU5VWCA6IEtIUi1HTEVTMzEuY29y
ZS5nZW9tZXRyeV9zaGFkZXIuYWRqYWNlbmN5LmFkamFjZW5jeV9ub25faW5kaWNlZF90cmlhbmds
ZV9zdHJpcCA9IEZBSUwKKzU1NzkgVlVMS0FOIExJTlVYIDogS0hSLUdMRVMzMS5jb3JlLmdlb21l
dHJ5X3NoYWRlci5yZW5kZXJpbmcucmVuZGVyaW5nLnRyaWFuZ2xlc19pbnB1dF9saW5lX3N0cmlw
X291dHB1dF90cmlhbmdsZV8qX2RyYXdjYWxsID0gRkFJTAorNTU3OSBWVUxLQU4gTElOVVggOiBL
SFItR0xFUzMxLmNvcmUuZ2VvbWV0cnlfc2hhZGVyLnJlbmRlcmluZy5yZW5kZXJpbmcudHJpYW5n
bGVzX2lucHV0X3RyaWFuZ2xlX3N0cmlwX291dHB1dF90cmlhbmdsZV8qX2RyYXdjYWxsID0gRkFJ
TAorNTU3OSBWVUxLQU4gTElOVVggOiBLSFItR0xFUzMxLmNvcmUuZ2VvbWV0cnlfc2hhZGVyLnJl
bmRlcmluZy5yZW5kZXJpbmcudHJpYW5nbGVzX3dpdGhfYWRqYWNlbmN5X2lucHV0Xypfc3RyaXBf
b3V0cHV0X3RyaWFuZ2xlX3N0cmlwX2FkamFjZW5jeV9kcmF3Y2FsbCA9IEZBSUwKIC8vIEZhaWx1
cmVzIG9uIHdpbmRvd3MgbnZpZGlhCiA1NTc5IFZVTEtBTiBOVklESUEgOiBLSFItR0xFUzMxLmNv
cmUuZ2VvbWV0cnlfc2hhZGVyLmxpbWl0cy5tYXhfaW52b2NhdGlvbnMgPSBGQUlMCiAKQEAgLTU5
LDkgKzU4LDYgQEAKIDQ3MjMgVlVMS0FOIE5WSURJQSA6IEtIUi1HTEVTMzEuY29yZS5zaGFkZXJf
aW1hZ2Vfc2l6ZS5hZHZhbmNlZC1ub25NUy12cy11aW50ID0gU0tJUAogNDcyMyBWVUxLQU4gTlZJ
RElBIDogS0hSLUdMRVMzMS5jb3JlLnByb2dyYW1faW50ZXJmYWNlX3F1ZXJ5LnRyYW5zZm9ybS1m
ZWVkYmFjay10eXBlcyA9IFNLSVAKIAotLy8gTmV3IGZhaWx1cmVzIHdpdGggbGF0ZXN0IGRFUVAg
cm9sbCAoMjAyMS0wMy0wNSkKLTU3MjIgVlVMS0FOIDogS0hSLUdMRVMzMS5jb3JlLmZyYW1lYnVm
ZmVyX2NvbXBsZXRlbmVzcy5yYm9fYW5kX3RleHR1cmVfZXhwZWN0X3plcm9fbnVtc2FtcGxlcyA9
IEZBSUwKLQogLy8gTmV3bHktYWRkZWQgZEVRUCB0ZXN0cyB0aGF0IGFyZSBmYWlsaW5nCiA2NDQx
IFZVTEtBTiA6IEtIUi1HTEVTMzEuY29yZS5jb21wcmVzc2VkKiA9IFNLSVAKIApkaWZmIC0tZ2l0
IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2RlcXBfc3VwcG9ydC9kZXFwX2to
cl9nbGVzMzJfVGVzdEV4cGVjdGF0aW9ucyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90
ZXN0cy9kZXFwX3N1cHBvcnQvZGVxcF9raHJfZ2xlczMyX1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXgg
N2MxMWI4Njc3NWVhMGUxOGIxNTYzNGNiNmY5NzNjYWVmNDY2YTU4Yi4uNGRhMTE4Njg4MTk3NTM0
ZGFhYTY1M2VhZWZjZjRmOWUwMjk1OTg1YyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc3JjL3Rlc3RzL2RlcXBfc3VwcG9ydC9kZXFwX2tocl9nbGVzMzJfVGVzdEV4cGVjdGF0
aW9ucworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvZGVxcF9zdXBwb3J0
L2RlcXBfa2hyX2dsZXMzMl9UZXN0RXhwZWN0YXRpb25zCkBAIC05LDcgKzksNiBAQAogLy8gR2Vv
bWV0cnkgc2hhZGVyIHN1cHBvcnQgKGNvbmRpdGlvbmVkIHRvIHdpbmRvd3MgYXMgdGhhdCdzIG91
ciBvbmx5IGJvdCBjYXBhYmxlIG9mIHJ1bm5pbmcgdGhlc2UKIC8vIHRlc3RzKQogLy8gQVBJIHZh
bGlkYXRpb24gYnVncwotNTU3OSBWVUxLQU4gV0lOIDogS0hSLUdMRVMzMi5jb3JlLmdlb21ldHJ5
X3NoYWRlci5xdWFsaWZpZXJzLmZsYXRfaW50ZXJwb2xhdGlvbiA9IEZBSUwKIC8vIFdyb25nIHJl
c3VsdHMKIDU1NzkgVlVMS0FOIFdJTiA6IEtIUi1HTEVTMzIuY29yZS5nZW9tZXRyeV9zaGFkZXIu
YWRqYWNlbmN5LmFkamFjZW5jeV9pbmRpY2VkX3RyaWFuZ2xlX3N0cmlwID0gRkFJTAogNTU3OSBW
VUxLQU4gV0lOIDogS0hSLUdMRVMzMi5jb3JlLmdlb21ldHJ5X3NoYWRlci5hZGphY2VuY3kuYWRq
YWNlbmN5X25vbl9pbmRpY2VkX3RyaWFuZ2xlX3N0cmlwID0gRkFJTApAQCAtODcsNjAgKzg2LDE2
IEBACiAzNTc3IFZVTEtBTiA6IEtIUi1HTEVTMzIuY29yZS5ncHVfc2hhZGVyNS4qY2xhbXAqX2Jv
cmRlciA9IFNLSVAKIDM1NzcgVlVMS0FOIDogS0hSLUdMRVMzMi5jb3JlLmdwdV9zaGFkZXI1Lipj
bGFtcCpfZWRnZSA9IFNLSVAKIAotLy8gVmFsaWRhdGlvbiBlcnJvciBmcm9tIEVYVF9ncHVfc2hh
ZGVyNQotNTM2MSBWVUxLQU4gOiBLSFItR0xFUzMyLmNvcmUuZ3B1X3NoYWRlcjUucHJlY2lzZV9x
dWFsaWZpZXIgPSBGQUlMCi0KIC8vIE5vIGtub3duIGltcGxlbWVudGF0aW9uIHN1cHBvcnRzIFNU
T1JBR0VfVEVYRUxfQlVGRkVSIHN1cHBvcnQgZm9yIFJHQjMyIGZvcm1hdHMKIDM1NzMgVlVMS0FO
IDogS0hSLUdMRVMzMi5jb3JlLnRleHR1cmVfYnVmZmVyLnRleHR1cmVfYnVmZmVyX3RleHR1cmVf
YnVmZmVyX3JhbmdlID0gU0tJUAogCi0vLyBJbmNvcnJlY3QgZGVwZW5kZW5jeSB0byBWS19FWFRf
c2hhZGVyX2F0b21pY19mbG9hdAotNTM0MiBWVUxLQU4gOiBLSFItR0xFUzMyLmNvcmUudGV4dHVy
ZV9idWZmZXIudGV4dHVyZV9idWZmZXJfYXRvbWljX2Z1bmN0aW9ucyA9IEZBSUwKLQogLy8gRGVz
a3RvcCBjYXJkcyB3aXRob3V0IG5hdGl2ZSBldGMgc3VwcG9ydAogNTI3NiBBTUQgVlVMS0FOIExJ
TlVYIDogS0hSLUdMRVMzMi5jb3JlLnRleHR1cmVfY3ViZV9tYXBfYXJyYXkuZXRjMl90ZXh0dXJl
ID0gRkFJTAogNTI3NiBBTUQgVlVMS0FOIFdJTiA6IEtIUi1HTEVTMzIuY29yZS50ZXh0dXJlX2N1
YmVfbWFwX2FycmF5LmV0YzJfdGV4dHVyZSA9IEZBSUwKIDUyNzYgTlZJRElBIFZVTEtBTiA6IEtI
Ui1HTEVTMzIuY29yZS50ZXh0dXJlX2N1YmVfbWFwX2FycmF5LmV0YzJfdGV4dHVyZSA9IEZBSUwK
IAotLy8gTmV3IGZhaWx1cmVzIHdpdGggbGF0ZXN0IGRFUVAgcm9sbCAoMjAyMS0wMy0wNSkKLTU3
MjIgVlVMS0FOIDogS0hSLUdMRVMzMi5jb3JlLmZyYW1lYnVmZmVyX2NvbXBsZXRlbmVzcy5yYm9f
YW5kX3RleHR1cmVfZXhwZWN0X3plcm9fbnVtc2FtcGxlcyA9IEZBSUwKLQogLy8gTmV3bHktYWRk
ZWQgZEVRUCB0ZXN0cyB0aGF0IGFyZSBmYWlsaW5nICgyMDIxLTA5LTI3KQogNjQ0MSBWVUxLQU4g
OiBLSFItR0xFUzMyLmNvcmUuY29tcHJlc3NlZCogPSBTS0lQCiAKLS8vIEFuZHJvaWQgZmFpbHVy
ZXMKLQotLy8gRHluYW1pYyBpbmRleGluZyBmZWF0dXJlcyBub3Qgc3VwcG9ydGVkIG9uIFF1YWxj
b21tCi01NDM1IFZVTEtBTiBBTkRST0lEIDogS0hSLUdMRVMzMi5jb3JlLmdwdV9zaGFkZXI1Lmlt
YWdlc19hcnJheV9pbmRleGluZyA9IEZBSUwKLQotLy8gVGV4dHVyZSBidWZmZXIgZmFpbHVyZXMK
LTUzOTIgVlVMS0FOIEFORFJPSUQgOiBLSFItR0xFUzMyLmNvcmUudGV4dHVyZV9idWZmZXIudGV4
dHVyZV9idWZmZXJfYWN0aXZlX3VuaWZvcm1fdmFsaWRhdGlvbl9jb21wdXRlX3NoYWRlciA9IEZB
SUwKLTUzOTIgVlVMS0FOIEFORFJPSUQgOiBLSFItR0xFUzMyLmNvcmUudGV4dHVyZV9idWZmZXIu
dGV4dHVyZV9idWZmZXJfYWN0aXZlX3VuaWZvcm1fdmFsaWRhdGlvbl9mcmFnbWVudF9zaGFkZXIg
PSBGQUlMCi01MzkyIFZVTEtBTiBBTkRST0lEIDogS0hSLUdMRVMzMi5jb3JlLnRleHR1cmVfYnVm
ZmVyLnRleHR1cmVfYnVmZmVyX2NvbnZfaW50X3RvX2Zsb2F0ID0gRkFJTAotNTM5MiBWVUxLQU4g
QU5EUk9JRCA6IEtIUi1HTEVTMzIuY29yZS50ZXh0dXJlX2J1ZmZlci50ZXh0dXJlX2J1ZmZlcl9l
cnJvcnMgPSBGQUlMCi01MzkyIFZVTEtBTiBBTkRST0lEIDogS0hSLUdMRVMzMi5jb3JlLnRleHR1
cmVfYnVmZmVyLnRleHR1cmVfYnVmZmVyX21heF9zaXplID0gRkFJTAotNTM5MiBWVUxLQU4gQU5E
Uk9JRCA6IEtIUi1HTEVTMzIuY29yZS50ZXh0dXJlX2J1ZmZlci50ZXh0dXJlX2J1ZmZlcl9vcGVy
YXRpb25zX2J1ZmZlcl9sb2FkID0gRkFJTAotNTM5MiBWVUxLQU4gQU5EUk9JRCA6IEtIUi1HTEVT
MzIuY29yZS50ZXh0dXJlX2J1ZmZlci50ZXh0dXJlX2J1ZmZlcl9vcGVyYXRpb25zX2NwdV93cml0
ZXMgPSBGQUlMCi01MzkyIFZVTEtBTiBBTkRST0lEIDogS0hSLUdMRVMzMi5jb3JlLnRleHR1cmVf
YnVmZmVyLnRleHR1cmVfYnVmZmVyX29wZXJhdGlvbnNfZnJhbWVidWZmZXJfcmVhZGJhY2sgPSBG
QUlMCi01MzkyIFZVTEtBTiBBTkRST0lEIDogS0hSLUdMRVMzMi5jb3JlLnRleHR1cmVfYnVmZmVy
LnRleHR1cmVfYnVmZmVyX29wZXJhdGlvbnNfaW1hZ2Vfc3RvcmUgPSBGQUlMCi01MzkyIFZVTEtB
TiBBTkRST0lEIDogS0hSLUdMRVMzMi5jb3JlLnRleHR1cmVfYnVmZmVyLnRleHR1cmVfYnVmZmVy
X29wZXJhdGlvbnNfc3Nib193cml0ZXMgPSBGQUlMCi01MzkyIFZVTEtBTiBBTkRST0lEIDogS0hS
LUdMRVMzMi5jb3JlLnRleHR1cmVfYnVmZmVyLnRleHR1cmVfYnVmZmVyX29wZXJhdGlvbnNfdHJh
bnNmb3JtX2ZlZWRiYWNrID0gRkFJTAotNTM5MiBWVUxLQU4gQU5EUk9JRCA6IEtIUi1HTEVTMzIu
Y29yZS50ZXh0dXJlX2J1ZmZlci50ZXh0dXJlX2J1ZmZlcl9wYXJhbWV0ZXJzID0gRkFJTAotCi0v
LyBDdWJlIG1hcCBhcnJheSBmYWlsdXJlcwotNTM5MyBWVUxLQU4gQU5EUk9JRCA6IEtIUi1HTEVT
MzIuY29yZS50ZXh0dXJlX2N1YmVfbWFwX2FycmF5LmV0YzJfdGV4dHVyZSA9IEZBSUwKLTUzOTMg
VlVMS0FOIEFORFJPSUQgOiBLSFItR0xFUzMyLmNvcmUudGV4dHVyZV9jdWJlX21hcF9hcnJheS5n
ZW5lcmF0ZV9taXBfbWFwX2ZpbHRlcmFibGVfaW50ZXJuYWxmb3JtYXRfaW1tdXRhYmxlID0gRkFJ
TAotNTM5MyBWVUxLQU4gQU5EUk9JRCA6IEtIUi1HTEVTMzIuY29yZS50ZXh0dXJlX2N1YmVfbWFw
X2FycmF5LmdlbmVyYXRlX21pcF9tYXBfZmlsdGVyYWJsZV9pbnRlcm5hbGZvcm1hdF9tdXRhYmxl
ID0gRkFJTAotNTM5MyBWVUxLQU4gQU5EUk9JRCA6IEtIUi1HTEVTMzIuY29yZS50ZXh0dXJlX2N1
YmVfbWFwX2FycmF5LmdlbmVyYXRlX21pcF9tYXBfbm9uX2ZpbHRlcmFibGVfaW1tdXRhYmxlX3N0
b3JhZ2UgPSBGQUlMCi01MzkzIFZVTEtBTiBBTkRST0lEIDogS0hSLUdMRVMzMi5jb3JlLnRleHR1
cmVfY3ViZV9tYXBfYXJyYXkuZ2VuZXJhdGVfbWlwX21hcF9ub25fZmlsdGVyYWJsZV9tdXRhYmxl
X3N0b3JhZ2UgPSBGQUlMCi01MzkzIFZVTEtBTiBBTkRST0lEIDogS0hSLUdMRVMzMi5jb3JlLnRl
eHR1cmVfY3ViZV9tYXBfYXJyYXkuZ2V0dGVyX2NhbGxzID0gRkFJTAotNTM5MyBWVUxLQU4gQU5E
Uk9JRCA6IEtIUi1HTEVTMzIuY29yZS50ZXh0dXJlX2N1YmVfbWFwX2FycmF5LmltYWdlX29wX2Nv
bXB1dGVfc2ggPSBGQUlMCi01MzkzIFZVTEtBTiBBTkRST0lEIDogS0hSLUdMRVMzMi5jb3JlLnRl
eHR1cmVfY3ViZV9tYXBfYXJyYXkuc3RlbmNpbF9hdHRhY2htZW50c19pbW11dGFibGVfbm9ubGF5
ZXJlZCA9IEZBSUwKLTUzOTMgVlVMS0FOIEFORFJPSUQgOiBLSFItR0xFUzMyLmNvcmUudGV4dHVy
ZV9jdWJlX21hcF9hcnJheS5zdGVuY2lsX2F0dGFjaG1lbnRzX211dGFibGVfbm9ubGF5ZXJlZCA9
IEZBSUwKLTUzOTMgVlVMS0FOIEFORFJPSUQgOiBLSFItR0xFUzMyLmNvcmUudGV4dHVyZV9jdWJl
X21hcF9hcnJheS5zdWJpbWFnZTNEID0gRkFJTAotNTM5MyBWVUxLQU4gQU5EUk9JRCA6IEtIUi1H
TEVTMzIuY29yZS50ZXh0dXJlX2N1YmVfbWFwX2FycmF5LnRleDNEX3ZhbGlkYXRpb24gPSBGQUlM
Ci01MzkzIFZVTEtBTiBBTkRST0lEIDogS0hSLUdMRVMzMi5jb3JlLnRleHR1cmVfY3ViZV9tYXBf
YXJyYXkudGV4dHVyZV9zaXplX2NvbXB1dGVfc2ggPSBGQUlMCi01MzkzIFZVTEtBTiBBTkRST0lE
IDogS0hSLUdMRVMzMi5jb3JlLnRleHR1cmVfY3ViZV9tYXBfYXJyYXkudGV4dHVyZV9zaXplX2Zy
YWdtZW50X3NoID0gRkFJTAotNTM5MyBWVUxLQU4gQU5EUk9JRCA6IEtIUi1HTEVTMzIuY29yZS50
ZXh0dXJlX2N1YmVfbWFwX2FycmF5LnRleHR1cmVfc2l6ZV92ZXJ0ZXhfc2ggPSBGQUlMCi0KIC8v
IFBpeGVsIDQgZXhwZWN0YXRpb25zLgogNTk5MCBQSVhFTDRPUlhMIFZVTEtBTiA6IEtIUi1HTEVT
MzIuY29yZS5kcmF3X2J1ZmZlcnNfaW5kZXhlZC5jb2xvcl9tYXNrcyA9IFNLSVAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9kZXFwX3N1cHBvcnQvZGVxcF9r
aHJfZ2xlczNfVGVzdEV4cGVjdGF0aW9ucyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90
ZXN0cy9kZXFwX3N1cHBvcnQvZGVxcF9raHJfZ2xlczNfVGVzdEV4cGVjdGF0aW9ucwppbmRleCAw
ZDQ4ZWZjZDVmZWZjMmVmMWQ3YjU0N2QwZjQ3NjA5NDhkZmE1YmUxLi4zMjA0OGFjOTQ5N2I5ZGU3
ZWIzMzBhYTQwYTkxZmQzNGI2MDUyMzNmIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9zcmMvdGVzdHMvZGVxcF9zdXBwb3J0L2RlcXBfa2hyX2dsZXMzX1Rlc3RFeHBlY3RhdGlv
bnMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2RlcXBfc3VwcG9ydC9k
ZXFwX2tocl9nbGVzM19UZXN0RXhwZWN0YXRpb25zCkBAIC03LDI4ICs3LDExIEBACiAvLyBGb3Ig
bm93IHdlIG9ubHkgbG9nIFZ1bGthbiB0ZXN0IGV4cGVjdGF0aW9ucy4gTW9yZSBiYWNrLWVuZHMg
Y2FuIGZvbGxvdyBhcyB3ZSBuZWVkIHRoZW0uCiAKIC8vIERlcHRoL3N0ZW5jaWwgcmVsYXRlZCBm
YWlsdXJlcyBkdWUgdG8gVnVsa2FuIGRyaXZlciBidWdzLgotMzY4MyBWVUxLQU4gQU5EUk9JRCA6
IEtIUi1HTEVTMy5wYWNrZWRfZGVwdGhfc3RlbmNpbC4qLmRlcHRoMjRfc3RlbmNpbDggPSBGQUlM
Ci0zNjgzIFZVTEtBTiBBTkRST0lEIDogS0hSLUdMRVMzLnBhY2tlZF9kZXB0aF9zdGVuY2lsLiou
ZGVwdGgzMmZfc3RlbmNpbDggPSBGQUlMCi0KLS8vIGdsQ29weVRleEltYWdlIGZyb20gM0QgdGV4
dHVyZXMgaXMgZmFpbGluZyBhbmQgZ2V0dGluZyB0aGUgZm9sbG93aW5nIFZ1bGthbiBWYWxpZGF0
aW9uIGVycm9yczoKLS8vCi0vLyAgSW1hZ2VWaWV3IG11c3Qgbm90IGJlIGEgMkQgb3IgMkRBcnJh
eSB2aWV3IG9mIGEgM0QgaW1hZ2UuIFRoZSBWdWxrYW4gc3BlYyBzdGF0ZXM6Ci0vLyAgaW1hZ2VW
aWV3IG11c3Qgbm90IGJlIDJEIG9yIDJEIGFycmF5IGltYWdlIHZpZXcgY3JlYXRlZCBmcm9tIGEg
M0QgaW1hZ2UKLS8vCi0zODM2IFZVTEtBTiBOT1NBTiA6IEtIUi1HTEVTMy5jb3B5X3RleF9pbWFn
ZV9jb252ZXJzaW9ucy5yZXF1aXJlZC50ZXh0dXJlM2RfdGV4dHVyZTJkID0gRkFJTAotMzgzNiBW
VUxLQU4gTk9TQU4gOiBLSFItR0xFUzMuY29weV90ZXhfaW1hZ2VfY29udmVyc2lvbnMucmVxdWly
ZWQudGV4dHVyZTNkX2N1YmVtYXBfbmVneCA9IEZBSUwKLTM4MzYgVlVMS0FOIE5PU0FOIDogS0hS
LUdMRVMzLmNvcHlfdGV4X2ltYWdlX2NvbnZlcnNpb25zLnJlcXVpcmVkLnRleHR1cmUzZF9jdWJl
bWFwX25lZ3kgPSBGQUlMCi0zODM2IFZVTEtBTiBOT1NBTiA6IEtIUi1HTEVTMy5jb3B5X3RleF9p
bWFnZV9jb252ZXJzaW9ucy5yZXF1aXJlZC50ZXh0dXJlM2RfY3ViZW1hcF9uZWd6ID0gRkFJTAot
MzgzNiBWVUxLQU4gTk9TQU4gOiBLSFItR0xFUzMuY29weV90ZXhfaW1hZ2VfY29udmVyc2lvbnMu
cmVxdWlyZWQudGV4dHVyZTNkX2N1YmVtYXBfcG9zeCA9IEZBSUwKLTM4MzYgVlVMS0FOIE5PU0FO
IDogS0hSLUdMRVMzLmNvcHlfdGV4X2ltYWdlX2NvbnZlcnNpb25zLnJlcXVpcmVkLnRleHR1cmUz
ZF9jdWJlbWFwX3Bvc3kgPSBGQUlMCi0zODM2IFZVTEtBTiBOT1NBTiA6IEtIUi1HTEVTMy5jb3B5
X3RleF9pbWFnZV9jb252ZXJzaW9ucy5yZXF1aXJlZC50ZXh0dXJlM2RfY3ViZW1hcF9wb3N6ID0g
RkFJTAorMzY4MyBWVUxLQU4gQU5EUk9JRCA6IEtIUi1HTEVTMy5wYWNrZWRfZGVwdGhfc3RlbmNp
bC5jbGVhcl9idWZmZXIuZGVwdGgzMmZfc3RlbmNpbDggPSBGQUlMCiAKIC8vIFRlc3QgYnVnIC0g
ZmFpbHMgaW4gQVNBTgogNjY3OCA6IEtIUi1HTEVTMy5wYWNrZWRfcGl4ZWxzLnZhcmllZF9yZWN0
YW5nbGUuKiA9IFNLSVAKIAotLy8gTmV3IGZhaWx1cmVzIHdpdGggbGF0ZXN0IGRFUVAgcm9sbCAo
MjAyMS0wMy0wNSkKLTU3MjIgVlVMS0FOIDogS0hSLUdMRVMzLmZyYW1lYnVmZmVyX2NvbXBsZXRl
bmVzcy5yYm9fYW5kX3RleHR1cmVfZXhwZWN0X3plcm9fbnVtc2FtcGxlcyA9IEZBSUwKLQogNTk3
NiBMSU5VWCBWVUxLQU4gTlZJRElBIDogS0hSLUdMRVMzLnNoYWRlcnMuaW5kZXhpbmcudG1wX2Fy
cmF5LnZlcnRleGlkID0gRkFJTAogCiAvLyBGYWlscyBvbmx5IHdpdGggU3dpZnRTaGFkZXI6CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvZGVxcF9zdXBwb3J0
L3RjdUFOR0xFTmF0aXZlRGlzcGxheUZhY3RvcnkuY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvc3JjL3Rlc3RzL2RlcXBfc3VwcG9ydC90Y3VBTkdMRU5hdGl2ZURpc3BsYXlGYWN0b3J5LmNw
cAppbmRleCA0MTk2NTA2ZWQwZTlmNGVkZjFiMWRjOGExZDEzMTgwYmFkY2FjMzk0Li4wYzcxOWI4
NThhNjYwNWQ5NjVkMzg0MGE1ZDg4N2EwOWVmMmE3YmI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvZGVxcF9zdXBwb3J0L3RjdUFOR0xFTmF0aXZlRGlzcGxh
eUZhY3RvcnkuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9kZXFw
X3N1cHBvcnQvdGN1QU5HTEVOYXRpdmVEaXNwbGF5RmFjdG9yeS5jcHAKQEAgLTgzLDcgKzgzLDgg
QEAgY29uc3RleHByIGVnbHU6Ok5hdGl2ZVdpbmRvdzo6Q2FwYWJpbGl0eSBrV2luZG93Q2FwYWJp
bGl0aWVzID0KICAgICAgICAgZWdsdTo6TmF0aXZlV2luZG93OjpDQVBBQklMSVRZX0dFVF9TQ1JF
RU5fU0laRSB8CiAgICAgICAgIGVnbHU6Ok5hdGl2ZVdpbmRvdzo6Q0FQQUJJTElUWV9SRUFEX1ND
UkVFTl9QSVhFTFMgfAogICAgICAgICBlZ2x1OjpOYXRpdmVXaW5kb3c6OkNBUEFCSUxJVFlfU0VU
X1NVUkZBQ0VfU0laRSB8Ci0gICAgICAgIGVnbHU6Ok5hdGl2ZVdpbmRvdzo6Q0FQQUJJTElUWV9D
SEFOR0VfVklTSUJJTElUWSk7CisgICAgICAgIGVnbHU6Ok5hdGl2ZVdpbmRvdzo6Q0FQQUJJTElU
WV9DSEFOR0VfVklTSUJJTElUWSB8CisgICAgICAgIGVnbHU6Ok5hdGl2ZVdpbmRvdzo6Q0FQQUJJ
TElUWV9DUkVBVEVfU1VSRkFDRV9QTEFURk9STV9FWFRFTlNJT04pOwogCiBjbGFzcyBBTkdMRU5h
dGl2ZURpc3BsYXkgOiBwdWJsaWMgZWdsdTo6TmF0aXZlRGlzcGxheQogewpAQCAtMTY5LDYgKzE3
MCw3IEBAIGNsYXNzIE5hdGl2ZVdpbmRvdyA6IHB1YmxpYyBlZ2x1OjpOYXRpdmVXaW5kb3cKICAg
ICB+TmF0aXZlV2luZG93KCkgb3ZlcnJpZGU7CiAKICAgICBlZ2x3OjpFR0xOYXRpdmVXaW5kb3dU
eXBlIGdldExlZ2FjeU5hdGl2ZSgpIG92ZXJyaWRlOworICAgIHZvaWQgKmdldFBsYXRmb3JtRXh0
ZW5zaW9uKCkgb3ZlcnJpZGU7CiAgICAgSVZlYzIgZ2V0U3VyZmFjZVNpemUoKSBjb25zdCBvdmVy
cmlkZTsKICAgICBJVmVjMiBnZXRTY3JlZW5TaXplKCkgY29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4g
Z2V0U3VyZmFjZVNpemUoKTsgfQogICAgIHZvaWQgcHJvY2Vzc0V2ZW50cygpIG92ZXJyaWRlOwpA
QCAtMzM3LDYgKzMzOSwxMSBAQCBlZ2x3OjpFR0xOYXRpdmVXaW5kb3dUeXBlIE5hdGl2ZVdpbmRv
dzo6Z2V0TGVnYWN5TmF0aXZlKCkKICAgICByZXR1cm4gcmVpbnRlcnByZXRfY2FzdDxlZ2x3OjpF
R0xOYXRpdmVXaW5kb3dUeXBlPihtV2luZG93LT5nZXROYXRpdmVXaW5kb3coKSk7CiB9CiAKK3Zv
aWQgKk5hdGl2ZVdpbmRvdzo6Z2V0UGxhdGZvcm1FeHRlbnNpb24oKQoreworICAgIHJldHVybiBt
V2luZG93LT5nZXRQbGF0Zm9ybUV4dGVuc2lvbigpOworfQorCiBJVmVjMiBOYXRpdmVXaW5kb3c6
OmdldFN1cmZhY2VTaXplKCkgY29uc3QKIHsKICAgICBpbnQgd2lkdGggID0gbVdpbmRvdy0+Z2V0
V2lkdGgoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9l
Z2xfdGVzdHMvRUdMQnVmZmVyQWdlVGVzdC5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9z
cmMvdGVzdHMvZWdsX3Rlc3RzL0VHTEJ1ZmZlckFnZVRlc3QuY3BwCmluZGV4IGUzNTU2N2E5NzJk
MzdjZjZlNWUwMmVhZmJhZDRhN2NjYjljOWM3N2MuLjI2NDc2OGIyMzFiMWY2M2JjYjNlMTAwNTk4
OWMzMDI2NWE1YjRhMjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90
ZXN0cy9lZ2xfdGVzdHMvRUdMQnVmZmVyQWdlVGVzdC5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL3Rlc3RzL2VnbF90ZXN0cy9FR0xCdWZmZXJBZ2VUZXN0LmNwcApAQCAtOTYs
MTQgKzk2LDYgQEAgY2xhc3MgRUdMQnVmZmVyQWdlVGVzdCA6IHB1YmxpYyBBTkdMRVRlc3QKICAg
ICAgICAgcmV0dXJuIGFnZTsKICAgICB9CiAKLSAgICBFR0xpbnQgcXVlcnlTd2FwQmVoYXZpb3Io
RUdMU3VyZmFjZSBzdXJmYWNlKSBjb25zdAotICAgIHsKLSAgICAgICAgRUdMaW50IHN3YXBCZWhh
dmlvciA9IEVHTF9OT05FOwotICAgICAgICBib29sIHJlc3VsdCAgICAgICAgID0gZWdsUXVlcnlT
dXJmYWNlKG1EaXNwbGF5LCBzdXJmYWNlLCBFR0xfU1dBUF9CRUhBVklPUiwgJnN3YXBCZWhhdmlv
cik7Ci0gICAgICAgIEVYUEVDVF9UUlVFKHJlc3VsdCk7Ci0gICAgICAgIHJldHVybiBzd2FwQmVo
YXZpb3I7Ci0gICAgfQotCiAgICAgRUdMRGlzcGxheSBtRGlzcGxheSAgICAgID0gRUdMX05PX0RJ
U1BMQVk7CiAgICAgRUdMaW50IG1NYWpvclZlcnNpb24gICAgID0gMDsKICAgICBjb25zdCBFR0xp
bnQga1dpZHRoICAgICAgPSA2NDsKQEAgLTE1MywxNiArMTQ1LDcgQEAgVEVTVF9QKEVHTEJ1ZmZl
ckFnZVRlc3QsIFF1ZXJ5QnVmZmVyQWdlKQogICAgICAgICBBU1NFUlRfRUdMX1NVQ0NFU1MoKSA8
PCAiZWdsU3dhcEJ1ZmZlcnMgZmFpbGVkLiI7CiAgICAgfQogCi0gICAgLy8gSWYgc3dhcCBiZWhh
dmlvciBpcyBFR0xfQlVGRkVSX0RFU1RST1lFRCwgYWdlIHNob3VsZCBiZSAwLgotICAgIEVHTGlu
dCBzd2FwQmVoYXZpb3IgPSBxdWVyeVN3YXBCZWhhdmlvcihzdXJmYWNlKTsKLSAgICBpZiAoc3dh
cEJlaGF2aW9yID09IEVHTF9CVUZGRVJfREVTVFJPWUVEKQotICAgIHsKLSAgICAgICAgRVhQRUNU
X0VRKGV4cGVjdGVkQWdlLCAwKTsKLSAgICB9Ci0gICAgZWxzZQotICAgIHsKLSAgICAgICAgRVhQ
RUNUX0dUKGV4cGVjdGVkQWdlLCAwKTsKLSAgICB9CisgICAgRVhQRUNUX0dUKGV4cGVjdGVkQWdl
LCAwKTsKIAogICAgIEVYUEVDVF9UUlVFKGVnbE1ha2VDdXJyZW50KG1EaXNwbGF5LCBFR0xfTk9f
U1VSRkFDRSwgRUdMX05PX1NVUkZBQ0UsIGNvbnRleHQpKTsKICAgICBBU1NFUlRfRUdMX1NVQ0NF
U1MoKSA8PCAiZWdsTWFrZUN1cnJlbnQgLSB1bmN1cnJlbnQgZmFpbGVkLiI7CkBAIC0yMzEsMTYg
KzIxNCw3IEBAIFRFU1RfUChFR0xCdWZmZXJBZ2VUZXN0LCBWZXJpZnlDb250ZW50cykKICAgICAg
ICAgQVNTRVJUX0VHTF9TVUNDRVNTKCkgPDwgImVnbFN3YXBCdWZmZXJzIGZhaWxlZC4iOwogICAg
IH0KIAotICAgIC8vIElmIHN3YXAgYmVoYXZpb3IgaXMgRUdMX0JVRkZFUl9ERVNUUk9ZRUQsIGFn
ZSBzaG91bGQgYmUgMC4KLSAgICBFR0xpbnQgc3dhcEJlaGF2aW9yID0gcXVlcnlTd2FwQmVoYXZp
b3Ioc3VyZmFjZSk7Ci0gICAgaWYgKHN3YXBCZWhhdmlvciA9PSBFR0xfQlVGRkVSX0RFU1RST1lF
RCkKLSAgICB7Ci0gICAgICAgIEVYUEVDVF9FUShhZ2UsIDApOwotICAgIH0KLSAgICBlbHNlCi0g
ICAgewotICAgICAgICBFWFBFQ1RfR1QoYWdlLCAwKTsKLSAgICB9CisgICAgRVhQRUNUX0dUKGFn
ZSwgMCk7CiAKICAgICBFWFBFQ1RfVFJVRShlZ2xNYWtlQ3VycmVudChtRGlzcGxheSwgRUdMX05P
X1NVUkZBQ0UsIEVHTF9OT19TVVJGQUNFLCBjb250ZXh0KSk7CiAgICAgQVNTRVJUX0VHTF9TVUND
RVNTKCkgPDwgImVnbE1ha2VDdXJyZW50IC0gdW5jdXJyZW50IGZhaWxlZC4iOwpAQCAtMzc3LDQg
KzM1MSw0IEBAIEFOR0xFX0lOU1RBTlRJQVRFX1RFU1QoRUdMQnVmZmVyQWdlVGVzdCwKICAgICAg
ICAgICAgICAgICAgICAgICAgV2l0aE5vRml4dHVyZShFUzJfT1BFTkdMKCkpLAogICAgICAgICAg
ICAgICAgICAgICAgICBXaXRoTm9GaXh0dXJlKEVTM19PUEVOR0woKSksCiAgICAgICAgICAgICAg
ICAgICAgICAgIFdpdGhOb0ZpeHR1cmUoRVMyX1ZVTEtBTigpKSwKLSAgICAgICAgICAgICAgICAg
ICAgICAgV2l0aE5vRml4dHVyZShFUzNfVlVMS0FOKCkpKTsKXCBObyBuZXdsaW5lIGF0IGVuZCBv
ZiBmaWxlCisgICAgICAgICAgICAgICAgICAgICAgIFdpdGhOb0ZpeHR1cmUoRVMzX1ZVTEtBTigp
KSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvZWdsX3Rl
c3RzL0VHTERpc3BsYXlTZWxlY3Rpb25UZXN0LmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy90ZXN0cy9lZ2xfdGVzdHMvRUdMRGlzcGxheVNlbGVjdGlvblRlc3QuY3BwCmluZGV4IDky
ZjkyOGY0NjFhMGM0ZDQ0MTU3MzFkOGU5MWZiOGNiZWQ4ZGExOTMuLjRiZDRjNjFhNzRmY2I4OGIw
NWE0ZjVjZTY1NTYyZTg4MjZjMjUxNzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FO
R0xFL3NyYy90ZXN0cy9lZ2xfdGVzdHMvRUdMRGlzcGxheVNlbGVjdGlvblRlc3QuY3BwCisrKyBi
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9lZ2xfdGVzdHMvRUdMRGlzcGxheVNl
bGVjdGlvblRlc3QuY3BwCkBAIC0xNCw2ICsxNCw3IEBACiAjaW5jbHVkZSAiY29tbW9uL3N0cmlu
Z191dGlscy5oIgogI2luY2x1ZGUgImdwdV9pbmZvX3V0aWwvU3lzdGVtSW5mby5oIgogI2luY2x1
ZGUgInRlc3RfdXRpbHMvQU5HTEVUZXN0LmgiCisjaW5jbHVkZSAidGVzdF91dGlscy9zeXN0ZW1f
aW5mb191dGlsLmgiCiAjaW5jbHVkZSAidXRpbC9PU1dpbmRvdy5oIgogCiB1c2luZyBuYW1lc3Bh
Y2UgYW5nbGU7CkBAIC0yNSw1MSArMjYsMTUgQEAgY2xhc3MgRUdMRGlzcGxheVNlbGVjdGlvblRl
c3QgOiBwdWJsaWMgQU5HTEVUZXN0CiAKICAgcHJvdGVjdGVkOgogICAgIC8vIFJldHVybnMgdGhl
IGluZGV4IG9mIHRoZSBsb3cgb3IgaGlnaCBwb3dlciBHUFUgaW4gU3lzdGVtSW5mbyBkZXBlbmRp
bmcgb24gdGhlIGFyZ3VtZW50LgotICAgIGludCBmaW5kR1BVKGJvb2wgbG93UG93ZXIpCisgICAg
aW50IGZpbmRHUFUoYm9vbCBsb3dQb3dlcikgY29uc3QKICAgICB7Ci0gICAgICAgIGlmIChtU3lz
dGVtSW5mby5ncHVzLnNpemUoKSA8IDIpCi0gICAgICAgIHsKLSAgICAgICAgICAgIHJldHVybiAw
OwotICAgICAgICB9Ci0gICAgICAgIGZvciAoaW50IGkgPSAwOyBpIDwgc3RhdGljX2Nhc3Q8aW50
PihtU3lzdGVtSW5mby5ncHVzLnNpemUoKSk7ICsraSkKLSAgICAgICAgewotICAgICAgICAgICAg
aWYgKGxvd1Bvd2VyICYmIElzSW50ZWwobVN5c3RlbUluZm8uZ3B1c1tpXS52ZW5kb3JJZCkpCi0g
ICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgcmV0dXJuIGk7Ci0gICAgICAgICAgICB9Ci0g
ICAgICAgICAgICAvLyBSZXR1cm4gdGhlIGhpZ2ggcG93ZXIgR1BVLCBpLmUgYW55IG5vbi1pbnRl
bCBHUFUKLSAgICAgICAgICAgIGVsc2UgaWYgKCFsb3dQb3dlciAmJiAhSXNJbnRlbChtU3lzdGVt
SW5mby5ncHVzW2ldLnZlbmRvcklkKSkKLSAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICBy
ZXR1cm4gaTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgfQotICAgICAgICAvLyBDYW4ndCBmaW5k
IEdQVQotICAgICAgICBBU1NFUlQoZmFsc2UpOwotICAgICAgICByZXR1cm4gMDsKKyAgICAgICAg
aWYgKGxvd1Bvd2VyKQorICAgICAgICAgICAgcmV0dXJuIEZpbmRMb3dQb3dlckdQVShtU3lzdGVt
SW5mbyk7CisgICAgICAgIHJldHVybiBGaW5kSGlnaFBvd2VyR1BVKG1TeXN0ZW1JbmZvKTsKICAg
ICB9CiAKICAgICAvLyBSZXR1cm5zIHRoZSBpbmRleCBvZiB0aGUgYWN0aXZlIEdQVSBpbiBTeXN0
ZW1JbmZvIGJhc2VkIG9uIHRoZSByZW5kZXJlciBzdHJpbmcuCi0gICAgaW50IGZpbmRBY3RpdmVH
UFUoKQotICAgIHsKLSAgICAgICAgY2hhciAqcmVuZGVyZXIgPSAoY2hhciAqKWdsR2V0U3RyaW5n
KEdMX1JFTkRFUkVSKTsKLSAgICAgICAgc3RkOjpzdHJpbmcgcmVuZGVyZXJTdHJpbmcocmVuZGVy
ZXIpOwotICAgICAgICBmb3IgKGludCBpID0gMDsgaSA8IHN0YXRpY19jYXN0PGludD4obVN5c3Rl
bUluZm8uZ3B1cy5zaXplKCkpOyArK2kpCi0gICAgICAgIHsKLSAgICAgICAgICAgIHN0ZDo6dmVj
dG9yPHN0ZDo6c3RyaW5nPiB2ZW5kb3JUb2tlbnM7Ci0gICAgICAgICAgICBhbmdsZTo6U3BsaXRT
dHJpbmdBbG9uZ1doaXRlc3BhY2UoVmVuZG9yTmFtZShtU3lzdGVtSW5mby5ncHVzW2ldLnZlbmRv
cklkKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmdmVu
ZG9yVG9rZW5zKTsKLSAgICAgICAgICAgIGZvciAoc3RkOjpzdHJpbmcgJnRva2VuIDogdmVuZG9y
VG9rZW5zKQotICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIGlmIChyZW5kZXJlclN0cmlu
Zy5maW5kKHRva2VuKSAhPSBzdGQ6OnN0cmluZzo6bnBvcykKLSAgICAgICAgICAgICAgICB7Ci0g
ICAgICAgICAgICAgICAgICAgIHJldHVybiBpOwotICAgICAgICAgICAgICAgIH0KLSAgICAgICAg
ICAgIH0KLSAgICAgICAgfQotICAgICAgICAvLyBDYW4ndCBmaW5kIGFjdGl2ZSBHUFUKLSAgICAg
ICAgQVNTRVJUKGZhbHNlKTsKLSAgICAgICAgcmV0dXJuIDA7Ci0gICAgfQorICAgIGludCBmaW5k
QWN0aXZlR1BVKCkgY29uc3QgeyByZXR1cm4gRmluZEFjdGl2ZU9wZW5HTEdQVShtU3lzdGVtSW5m
byk7IH0KIAogICAgIFN5c3RlbUluZm8gbVN5c3RlbUluZm87CiB9OwpAQCAtNTEyLDggKzQ3Nyw5
IEBAIGNsYXNzIEVHTERpc3BsYXlTZWxlY3Rpb25UZXN0RGV2aWNlSWQgOiBwdWJsaWMgRUdMRGlz
cGxheVNlbGVjdGlvblRlc3ROb0ZpeHR1cmUKICAgcHJvdGVjdGVkOgogICAgIHZvaWQgaW5pdGlh
bGl6ZURpc3BsYXlXaXRoRGV2aWNlSWQoRUdMRGlzcGxheSAqZGlzcGxheSwgdWludDY0X3QgZGV2
aWNlSWQpCiAgICAgewotICAgICAgICBHTGVudW0gcGxhdGZvcm1UeXBlID0gR2V0UGFyYW0oKS5n
ZXRSZW5kZXJlcigpOwotICAgICAgICBHTGVudW0gZGV2aWNlVHlwZSAgID0gR2V0UGFyYW0oKS5n
ZXREZXZpY2VUeXBlKCk7CisgICAgICAgIEdMZW51bSBwbGF0Zm9ybVR5cGUgICAgICAgICAgPSBH
ZXRQYXJhbSgpLmdldFJlbmRlcmVyKCk7CisgICAgICAgIEdMZW51bSBkZXZpY2VUeXBlICAgICAg
ICAgICAgPSBHZXRQYXJhbSgpLmdldERldmljZVR5cGUoKTsKKyAgICAgICAgR0xpbnQgZGlzcGxh
eVBvd2VyUHJlZmVyZW5jZSA9IEdldFBhcmFtKCkuZWdsUGFyYW1ldGVycy5kaXNwbGF5UG93ZXJQ
cmVmZXJlbmNlOwogCiAgICAgICAgIEVHTEF0dHJpYiBoaWdoID0gKChkZXZpY2VJZCA+PiAzMikg
JiAweEZGRkZGRkZGKTsKICAgICAgICAgRUdMQXR0cmliIGxvdyAgPSAoZGV2aWNlSWQgJiAweEZG
RkZGRkZGKTsKQEAgLTUzMSw2ICs0OTcsMTEgQEAgY2xhc3MgRUdMRGlzcGxheVNlbGVjdGlvblRl
c3REZXZpY2VJZCA6IHB1YmxpYyBFR0xEaXNwbGF5U2VsZWN0aW9uVGVzdE5vRml4dHVyZQogICAg
ICAgICBkaXNwbGF5QXR0cmlidXRlcy5wdXNoX2JhY2soaGlnaCk7CiAgICAgICAgIGRpc3BsYXlB
dHRyaWJ1dGVzLnB1c2hfYmFjayhFR0xfUExBVEZPUk1fQU5HTEVfREVWSUNFX0lEX0xPV19BTkdM
RSk7CiAgICAgICAgIGRpc3BsYXlBdHRyaWJ1dGVzLnB1c2hfYmFjayhsb3cpOworICAgICAgICBp
ZiAoZGlzcGxheVBvd2VyUHJlZmVyZW5jZSAhPSBFR0xfRE9OVF9DQVJFKQorICAgICAgICB7Cisg
ICAgICAgICAgICBkaXNwbGF5QXR0cmlidXRlcy5wdXNoX2JhY2soRUdMX1BPV0VSX1BSRUZFUkVO
Q0VfQU5HTEUpOworICAgICAgICAgICAgZGlzcGxheUF0dHJpYnV0ZXMucHVzaF9iYWNrKGRpc3Bs
YXlQb3dlclByZWZlcmVuY2UpOworICAgICAgICB9CiAgICAgICAgIGRpc3BsYXlBdHRyaWJ1dGVz
LnB1c2hfYmFjayhFR0xfTk9ORSk7CiAKICAgICAgICAgKmRpc3BsYXkgPSBlZ2xHZXRQbGF0Zm9y
bURpc3BsYXlFWFQoRUdMX1BMQVRGT1JNX0FOR0xFX0FOR0xFLApAQCAtNTQ5LDYgKzUyMCw4IEBA
IGNsYXNzIEVHTERpc3BsYXlTZWxlY3Rpb25UZXN0RGV2aWNlSWQgOiBwdWJsaWMgRUdMRGlzcGxh
eVNlbGVjdGlvblRlc3ROb0ZpeHR1cmUKIFRFU1RfUChFR0xEaXNwbGF5U2VsZWN0aW9uVGVzdERl
dmljZUlkLCBEZXZpY2VJZCkKIHsKICAgICBBTkdMRV9TS0lQX1RFU1RfSUYoIUlzRUdMQ2xpZW50
RXh0ZW5zaW9uRW5hYmxlZCgiRUdMX0FOR0xFX3BsYXRmb3JtX2FuZ2xlX2RldmljZV9pZCIpKTsK
KyAgICBBTkdMRV9TS0lQX1RFU1RfSUYoIUlzRUdMQ2xpZW50RXh0ZW5zaW9uRW5hYmxlZCgiRUdM
X0FOR0xFX2Rpc3BsYXlfcG93ZXJfcHJlZmVyZW5jZSIpICYmCisgICAgICAgICAgICAgICAgICAg
ICAgIEdldFBhcmFtKCkuZWdsUGFyYW1ldGVycy5kaXNwbGF5UG93ZXJQcmVmZXJlbmNlICE9IEVH
TF9ET05UX0NBUkUpOwogCiAgICAgaW5pdGlhbGl6ZVdpbmRvdygpOwogCkBAIC01NzIsNiArNTQ1
LDQwIEBAIFRFU1RfUChFR0xEaXNwbGF5U2VsZWN0aW9uVGVzdERldmljZUlkLCBEZXZpY2VJZCkK
ICAgICB0ZXJtaW5hdGVXaW5kb3coKTsKIH0KIAorVEVTVF9QKEVHTERpc3BsYXlTZWxlY3Rpb25U
ZXN0RGV2aWNlSWQsIERldmljZUlkQ29uY3VycmVudGx5KQoreworICAgIEFOR0xFX1NLSVBfVEVT
VF9JRighSXNFR0xDbGllbnRFeHRlbnNpb25FbmFibGVkKCJFR0xfQU5HTEVfcGxhdGZvcm1fYW5n
bGVfZGV2aWNlX2lkIikpOworICAgIEFOR0xFX1NLSVBfVEVTVF9JRighSXNFR0xDbGllbnRFeHRl
bnNpb25FbmFibGVkKCJFR0xfQU5HTEVfZGlzcGxheV9wb3dlcl9wcmVmZXJlbmNlIikgJiYKKyAg
ICAgICAgICAgICAgICAgICAgICAgR2V0UGFyYW0oKS5lZ2xQYXJhbWV0ZXJzLmRpc3BsYXlQb3dl
clByZWZlcmVuY2UgIT0gRUdMX0RPTlRfQ0FSRSk7CisKKyAgICBpbml0aWFsaXplV2luZG93KCk7
CisgICAgc3RydWN0IENvbnRleHRGb3JEZXZpY2UKKyAgICB7CisgICAgICAgIEVHTERpc3BsYXkg
ZGlzcGxheXt9OworICAgICAgICBFR0xDb250ZXh0IGNvbnRleHR7fTsKKyAgICB9OworICAgIHN0
ZDo6dmVjdG9yPENvbnRleHRGb3JEZXZpY2U+IGNvbnRleHRzKG1TeXN0ZW1JbmZvLmdwdXMuc2l6
ZSgpKTsKKworICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgY29udGV4dHMuc2l6ZSgpOyBpKysp
CisgICAgeworICAgICAgICBhdXRvICZkaXNwbGF5ID0gY29udGV4dHNbaV0uZGlzcGxheTsKKyAg
ICAgICAgYXV0byAmY29udGV4dCA9IGNvbnRleHRzW2ldLmNvbnRleHQ7CisgICAgICAgIGluaXRp
YWxpemVEaXNwbGF5V2l0aERldmljZUlkKCZkaXNwbGF5LCBtU3lzdGVtSW5mby5ncHVzW2ldLnN5
c3RlbURldmljZUlkKTsKKyAgICAgICAgaW5pdGlhbGl6ZUNvbnRleHRGb3JEaXNwbGF5KGRpc3Bs
YXksICZjb250ZXh0KTsKKyAgICAgICAgZWdsTWFrZUN1cnJlbnQoZGlzcGxheSwgRUdMX05PX1NV
UkZBQ0UsIEVHTF9OT19TVVJGQUNFLCBjb250ZXh0KTsKKyAgICAgICAgQVNTRVJUX0VRKHN0YXRp
Y19jYXN0PGludD4oaSksIGZpbmRBY3RpdmVHUFUoKSk7CisgICAgfQorICAgIGZvciAoYXV0byAm
Y29udGV4dCA6IGNvbnRleHRzKQorICAgIHsKKyAgICAgICAgLy8gVGVybWluYXRlIHRoZSBkaXNw
bGF5cworICAgICAgICB0ZXJtaW5hdGVDb250ZXh0KGNvbnRleHQuZGlzcGxheSwgY29udGV4dC5j
b250ZXh0KTsKKyAgICAgICAgZWdsTWFrZUN1cnJlbnQoY29udGV4dC5kaXNwbGF5LCBFR0xfTk9f
U1VSRkFDRSwgRUdMX05PX1NVUkZBQ0UsIEVHTF9OT19DT05URVhUKTsKKyAgICAgICAgdGVybWlu
YXRlRGlzcGxheShjb250ZXh0LmRpc3BsYXkpOworICAgIH0KKworICAgIHRlcm1pbmF0ZVdpbmRv
dygpOworfQorCiBHVEVTVF9BTExPV19VTklOU1RBTlRJQVRFRF9QQVJBTUVURVJJWkVEX1RFU1Qo
RUdMRGlzcGxheVNlbGVjdGlvblRlc3QpOwogQU5HTEVfSU5TVEFOVElBVEVfVEVTVChFR0xEaXNw
bGF5U2VsZWN0aW9uVGVzdCwKICAgICAgICAgICAgICAgICAgICAgICAgV2l0aExvd1Bvd2VyR1BV
KEVTMl9NRVRBTCgpKSwKQEAgLTU4OSw0ICs1OTYsOCBAQCBBTkdMRV9JTlNUQU5USUFURV9URVNU
KEVHTERpc3BsYXlTZWxlY3Rpb25UZXN0RGV2aWNlSWQsCiAgICAgICAgICAgICAgICAgICAgICAg
IFdpdGhOb0ZpeHR1cmUoRVMyX0QzRDExKCkpLAogICAgICAgICAgICAgICAgICAgICAgICBXaXRo
Tm9GaXh0dXJlKEVTM19EM0QxMSgpKSwKICAgICAgICAgICAgICAgICAgICAgICAgV2l0aE5vRml4
dHVyZShFUzJfTUVUQUwoKSksCi0gICAgICAgICAgICAgICAgICAgICAgIFdpdGhOb0ZpeHR1cmUo
RVMzX01FVEFMKCkpKTsKKyAgICAgICAgICAgICAgICAgICAgICAgV2l0aE5vRml4dHVyZShFUzNf
TUVUQUwoKSksCisgICAgICAgICAgICAgICAgICAgICAgIFdpdGhOb0ZpeHR1cmUoV2l0aExvd1Bv
d2VyR1BVKEVTMl9NRVRBTCgpKSksCisgICAgICAgICAgICAgICAgICAgICAgIFdpdGhOb0ZpeHR1
cmUoV2l0aExvd1Bvd2VyR1BVKEVTM19NRVRBTCgpKSksCisgICAgICAgICAgICAgICAgICAgICAg
IFdpdGhOb0ZpeHR1cmUoV2l0aEhpZ2hQb3dlckdQVShFUzJfTUVUQUwoKSkpLAorICAgICAgICAg
ICAgICAgICAgICAgICBXaXRoTm9GaXh0dXJlKFdpdGhIaWdoUG93ZXJHUFUoRVMzX01FVEFMKCkp
KSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvZWdsX3Rl
c3RzL0VHTFBvd2VyUHJlZmVyZW5jZVRlc3QuY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUv
c3JjL3Rlc3RzL2VnbF90ZXN0cy9FR0xQb3dlclByZWZlcmVuY2VUZXN0LmNwcApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li5kNjkzY2I0Yzg0NjY5NTA3MTZjN2EyNmEzNTRmNTZlYjc3NWMwMjUxCi0tLSAvZGV2L251bGwK
KysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2VnbF90ZXN0cy9FR0xQb3dl
clByZWZlcmVuY2VUZXN0LmNwcApAQCAtMCwwICsxLDkzIEBACisvLworLy8gQ29weXJpZ2h0IDIw
MjIgVGhlIEFOR0xFIFByb2plY3QgQXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFVz
ZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlIGxpY2Vuc2Ug
dGhhdCBjYW4gYmUKKy8vIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvLworLy8gRUdMUG93
ZXJQcmVmZXJlbmNlVGVzdC5jcHA6CisvLyAgIENoZWNrcyB0aGUgaW1wbGVtZW50YXRpb24gb2Yg
RUdMX0FOR0xFX3Bvd2VyX3ByZWZlcmVuY2UuCisvLworCisjaW5jbHVkZSA8Z3Rlc3QvZ3Rlc3Qu
aD4KKyNpbmNsdWRlIDx0dXBsZT4KKworI2luY2x1ZGUgImNvbW1vbi9kZWJ1Zy5oIgorI2luY2x1
ZGUgImNvbW1vbi9zdHJpbmdfdXRpbHMuaCIKKyNpbmNsdWRlICJncHVfaW5mb191dGlsL1N5c3Rl
bUluZm8uaCIKKyNpbmNsdWRlICJ0ZXN0X3V0aWxzL0FOR0xFVGVzdC5oIgorI2luY2x1ZGUgInRl
c3RfdXRpbHMvYW5nbGVfdGVzdF9wbGF0Zm9ybS5oIgorI2luY2x1ZGUgInRlc3RfdXRpbHMvc3lz
dGVtX2luZm9fdXRpbC5oIgorI2luY2x1ZGUgInV0aWwvT1NXaW5kb3cuaCIKKwordXNpbmcgbmFt
ZXNwYWNlIGFuZ2xlOworbmFtZXNwYWNlCit7CisvLyBUT0RPKGFuZ2xlYnVnLmNvbS83MDkzKTog
SW1wbGVtZW50IGJ1bmRsaW5nIG9mIEluZm8ucGxpc3QgdG8gYW5nbGVfZW5kMmVuZF90ZXN0cwor
Ly8gSW4gdGhlIG1lYW4gdGltZSwgY2hhbmdlIHRoaXMgbWFudWFsbHkgdG8gdHJ1ZSBhbmQgY3Ag
c3JjL3Rlc3RzL2VuZDJlbmRfdGVzdHMvbWFjL0luZm8ucGxpc3QKKy8vIG91dC9EZWJ1Zy8KK2Nv
bnN0IGJvb2wgdGVzdFJ1bm5lclN1cHBvcnRzQXV0b21hdGljR3JhcGhpY3NTd2l0Y2hpbmcgPSBm
YWxzZTsKK30gIC8vIG5hbWVzcGFjZQorY2xhc3MgRUdMUG93ZXJQcmVmZXJlbmNlVGVzdCA6IHB1
YmxpYyBBTkdMRVRlc3QKK3sKKyAgcHVibGljOgorICAgIHZvaWQgdGVzdFNldFVwKCkgb3ZlcnJp
ZGUgeyAodm9pZClHZXRTeXN0ZW1JbmZvKCZtU3lzdGVtSW5mbyk7IH0KKworICBwcm90ZWN0ZWQ6
CisgICAgYXV0byBnZXRHcHVJZFBhcnRzKHNpemVfdCBncHVJbmRleCkgY29uc3QKKyAgICB7Cisg
ICAgICAgIHVpbnQ2NF90IGRldmljZUlkID0gbVN5c3RlbUluZm8uZ3B1c1tncHVJbmRleF0uc3lz
dGVtRGV2aWNlSWQ7CisgICAgICAgIHJldHVybiBzdGQ6Om1ha2VfdHVwbGUoR2V0U3lzdGVtRGV2
aWNlSWRIaWdoUGFydChkZXZpY2VJZCksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
R2V0U3lzdGVtRGV2aWNlSWRMb3dQYXJ0KGRldmljZUlkKSk7CisgICAgfQorCisgICAgRUdMRGlz
cGxheSBnZXREaXNwbGF5KCkgY29uc3QgeyByZXR1cm4gZ2V0RUdMV2luZG93KCktPmdldERpc3Bs
YXkoKTsgfQorCisgICAgU3lzdGVtSW5mbyBtU3lzdGVtSW5mbzsKK307CisKK1RFU1RfUChFR0xQ
b3dlclByZWZlcmVuY2VUZXN0LCBGb3JjZUdQVVN3aXRjaCkKK3sKKyAgICBBTkdMRV9TS0lQX1RF
U1RfSUYoIXRlc3RSdW5uZXJTdXBwb3J0c0F1dG9tYXRpY0dyYXBoaWNzU3dpdGNoaW5nKTsKKyAg
ICBBTkdMRV9TS0lQX1RFU1RfSUYoIUlzRUdMRGlzcGxheUV4dGVuc2lvbkVuYWJsZWQoZ2V0RGlz
cGxheSgpLCAiRUdMX0FOR0xFX3Bvd2VyX3ByZWZlcmVuY2UiKSk7CisgICAgc2l6ZV90IGxvd1Bv
d2VyICAgPSBGaW5kTG93UG93ZXJHUFUobVN5c3RlbUluZm8pOworICAgIHNpemVfdCBoaWdoUG93
ZXIgID0gRmluZEhpZ2hQb3dlckdQVShtU3lzdGVtSW5mbyk7CisgICAgc2l6ZV90IGluaXRpYWxH
UFUgPSBGaW5kQWN0aXZlT3BlbkdMR1BVKG1TeXN0ZW1JbmZvKTsKKyAgICBBU1NFUlRfVFJVRShs
b3dQb3dlciA9PSBpbml0aWFsR1BVIHx8IGhpZ2hQb3dlciA9PSBpbml0aWFsR1BVKTsKKworICAg
IEVHTGludCBoaSA9IDA7CisgICAgRUdMaW50IGxvID0gMDsKKworICAgIGZvciAoaW50IGkgPSAw
OyBpIDwgNTsgKytpKQorICAgIHsKKyAgICAgICAgc3RkOjp0aWUoaGksIGxvKSA9IGdldEdwdUlk
UGFydHMobG93UG93ZXIpOworICAgICAgICBlZ2xGb3JjZUdQVVN3aXRjaEFOR0xFKGdldERpc3Bs
YXkoKSwgaGksIGxvKTsKKyAgICAgICAgRVhQRUNUX0VRKGxvd1Bvd2VyLCBGaW5kQWN0aXZlT3Bl
bkdMR1BVKG1TeXN0ZW1JbmZvKSk7CisgICAgICAgIHN0ZDo6dGllKGhpLCBsbykgPSBnZXRHcHVJ
ZFBhcnRzKGhpZ2hQb3dlcik7CisgICAgICAgIGVnbEZvcmNlR1BVU3dpdGNoQU5HTEUoZ2V0RGlz
cGxheSgpLCBoaSwgbG8pOworICAgICAgICBFWFBFQ1RfRVEoaGlnaFBvd2VyLCBGaW5kQWN0aXZl
T3BlbkdMR1BVKG1TeXN0ZW1JbmZvKSk7CisgICAgfQorfQorCitURVNUX1AoRUdMUG93ZXJQcmVm
ZXJlbmNlVGVzdCwgSGFuZGxlR1BVU3dpdGNoQWZ0ZXJGb3JjZUdQVVN3aXRjaCkKK3sKKyAgICBB
TkdMRV9TS0lQX1RFU1RfSUYoIXRlc3RSdW5uZXJTdXBwb3J0c0F1dG9tYXRpY0dyYXBoaWNzU3dp
dGNoaW5nKTsKKyAgICBBTkdMRV9TS0lQX1RFU1RfSUYoIUlzRUdMRGlzcGxheUV4dGVuc2lvbkVu
YWJsZWQoZ2V0RGlzcGxheSgpLCAiRUdMX0FOR0xFX3Bvd2VyX3ByZWZlcmVuY2UiKSk7CisgICAg
c2l6ZV90IGluaXRpYWxHUFUgPSBGaW5kQWN0aXZlT3BlbkdMR1BVKG1TeXN0ZW1JbmZvKTsKKyAg
ICBzaXplX3QgY2hhbmdlZEdQVSA9IEZpbmRMb3dQb3dlckdQVShtU3lzdGVtSW5mbyk7CisgICAg
aWYgKGluaXRpYWxHUFUgPT0gY2hhbmdlZEdQVSkKKyAgICB7CisgICAgICAgIGNoYW5nZWRHUFUg
PSBGaW5kSGlnaFBvd2VyR1BVKG1TeXN0ZW1JbmZvKTsKKyAgICB9CisgICAgRUdMaW50IGhpID0g
MDsKKyAgICBFR0xpbnQgbG8gPSAwOworICAgIGZvciAoaW50IGkgPSAwOyBpIDwgNTsgKytpKQor
ICAgIHsKKyAgICAgICAgc3RkOjp0aWUoaGksIGxvKSA9IGdldEdwdUlkUGFydHMoY2hhbmdlZEdQ
VSk7CisgICAgICAgIGVnbEZvcmNlR1BVU3dpdGNoQU5HTEUoZ2V0RGlzcGxheSgpLCBoaSwgbG8p
OworICAgICAgICBBU1NFUlRfRVEoY2hhbmdlZEdQVSwgRmluZEFjdGl2ZU9wZW5HTEdQVShtU3lz
dGVtSW5mbykpOworICAgICAgICBlZ2xIYW5kbGVHUFVTd2l0Y2hBTkdMRShnZXREaXNwbGF5KCkp
OworICAgICAgICBBU1NFUlRfRVEoaW5pdGlhbEdQVSwgRmluZEFjdGl2ZU9wZW5HTEdQVShtU3lz
dGVtSW5mbykpOworICAgIH0KK30KKworR1RFU1RfQUxMT1dfVU5JTlNUQU5USUFURURfUEFSQU1F
VEVSSVpFRF9URVNUKEVHTFBvd2VyUHJlZmVyZW5jZVRlc3QpOworQU5HTEVfSU5TVEFOVElBVEVf
VEVTVChFR0xQb3dlclByZWZlcmVuY2VUZXN0LCBFUzJfT1BFTkdMKCksIEVTM19PUEVOR0woKSk7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvZWdsX3Rlc3Rz
L0VHTFN1cmZhY2VUZXN0LmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9l
Z2xfdGVzdHMvRUdMU3VyZmFjZVRlc3QuY3BwCmluZGV4IDdhOWI3NDUwOGNlYzdkMGUxY2YwN2Ni
MzY0MDYzYmI5NjQ5NWQwNmYuLjc3MGVlYjMwNWRjYWZmNmM1Nzg4NjM1YTE3NzExMDJmMTFjNjYw
OGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9lZ2xfdGVz
dHMvRUdMU3VyZmFjZVRlc3QuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90
ZXN0cy9lZ2xfdGVzdHMvRUdMU3VyZmFjZVRlc3QuY3BwCkBAIC05MjcsMTQgKzkyNywxNCBAQCBU
RVNUX1AoRUdMU3VyZmFjZVRlc3QzLCBNYWtlQ3VycmVudERpZmZlcmVudFN1cmZhY2VzKQogICAg
IC8vIE11c3QgYmUgYWZ0ZXIgdGhlIGVnbE1ha2VDdXJyZW50KCkgc28gdGhlIHJlbmRlcmVyIHN0
cmluZyBpcyBpbml0aWFsaXplZC4KICAgICBBTkdMRV9TS0lQX1RFU1RfSUYoSXNPcGVuR0xFUygp
ICYmIElzQW5kcm9pZCgpKTsKIAotICAgIGdsQ2xlYXJDb2xvcihHTENvbG9yOjpyZWQuUiwgR0xD
b2xvcjo6cmVkLkcsIEdMQ29sb3I6OnJlZC5CLCBHTENvbG9yOjpyZWQuQSk7CisgICAgZ2xDbGVh
ckNvbG9yKGtGbG9hdFJlZC5SLCBrRmxvYXRSZWQuRywga0Zsb2F0UmVkLkIsIGtGbG9hdFJlZC5B
KTsKICAgICBnbENsZWFyKEdMX0NPTE9SX0JVRkZFUl9CSVQpOwogICAgIEFTU0VSVF9HTF9OT19F
UlJPUigpOwogICAgIEVYUEVDVF9QSVhFTF9DT0xPUl9FUSgwLCAwLCBHTENvbG9yOjpyZWQpOwog
CiAgICAgLy8gVXNlIGRpZmZlcmVudCBzdXJmYWNlcyBmb3IgZHJhdyBhbmQgcmVhZCwgcmVhZCBz
aG91bGQgc3RheSB0aGUgc2FtZQogICAgIEVYUEVDVF9FR0xfVFJVRShlZ2xNYWtlQ3VycmVudCht
RGlzcGxheSwgc2Vjb25kUGJ1ZmZlclN1cmZhY2UsIGZpcnN0UGJ1ZmZlclN1cmZhY2UsIG1Db250
ZXh0KSk7Ci0gICAgZ2xDbGVhckNvbG9yKEdMQ29sb3I6OmJsdWUuUiwgR0xDb2xvcjo6Ymx1ZS5H
LCBHTENvbG9yOjpibHVlLkIsIEdMQ29sb3I6OmJsdWUuQSk7CisgICAgZ2xDbGVhckNvbG9yKGtG
bG9hdEJsdWUuUiwga0Zsb2F0Qmx1ZS5HLCBrRmxvYXRCbHVlLkIsIGtGbG9hdEJsdWUuQSk7CiAg
ICAgZ2xDbGVhcihHTF9DT0xPUl9CVUZGRVJfQklUKTsKICAgICBBU1NFUlRfR0xfTk9fRVJST1Io
KTsKICAgICBFWFBFQ1RfUElYRUxfQ09MT1JfRVEoMCwgMCwgR0xDb2xvcjo6cmVkKTsKQEAgLTEy
NTYsNyArMTI1Niw3IEBAIFRFU1RfUChFR0xTdXJmYWNlVGVzdDMsIEJsaXRCZXR3ZWVuU3VyZmFj
ZXMpCiAgICAgLy8gTXVzdCBiZSBhZnRlciB0aGUgZWdsTWFrZUN1cnJlbnQoKSBzbyB0aGUgcmVu
ZGVyZXIgc3RyaW5nIGlzIGluaXRpYWxpemVkLgogICAgIEFOR0xFX1NLSVBfVEVTVF9JRihJc09w
ZW5HTEVTKCkgJiYgKElzQW5kcm9pZCgpIHx8IElzV2luZG93cygpKSk7CiAKLSAgICBnbENsZWFy
Q29sb3IoR0xDb2xvcjo6cmVkLlIsIEdMQ29sb3I6OnJlZC5HLCBHTENvbG9yOjpyZWQuQiwgR0xD
b2xvcjo6cmVkLkEpOworICAgIGdsQ2xlYXJDb2xvcihrRmxvYXRSZWQuUiwga0Zsb2F0UmVkLkcs
IGtGbG9hdFJlZC5CLCBrRmxvYXRSZWQuQSk7CiAgICAgZ2xDbGVhcihHTF9DT0xPUl9CVUZGRVJf
QklUKTsKICAgICBBU1NFUlRfR0xfTk9fRVJST1IoKTsKIApAQCAtMTMwNiwxNCArMTMwNiwxNCBA
QCBURVNUX1AoRUdMU3VyZmFjZVRlc3QzLCBCbGl0QmV0d2VlblN1cmZhY2VzV2l0aERlZmVycmVk
Q2xlYXIpCiAgICAgLy8gTXVzdCBiZSBhZnRlciB0aGUgZWdsTWFrZUN1cnJlbnQoKSBzbyB0aGUg
cmVuZGVyZXIgc3RyaW5nIGlzIGluaXRpYWxpemVkLgogICAgIEFOR0xFX1NLSVBfVEVTVF9JRihJ
c09wZW5HTEVTKCkgJiYgKElzQW5kcm9pZCgpIHx8IElzV2luZG93cygpKSk7CiAKLSAgICBnbENs
ZWFyQ29sb3IoR0xDb2xvcjo6cmVkLlIsIEdMQ29sb3I6OnJlZC5HLCBHTENvbG9yOjpyZWQuQiwg
R0xDb2xvcjo6cmVkLkEpOworICAgIGdsQ2xlYXJDb2xvcihrRmxvYXRSZWQuUiwga0Zsb2F0UmVk
LkcsIGtGbG9hdFJlZC5CLCBrRmxvYXRSZWQuQSk7CiAgICAgZ2xDbGVhcihHTF9DT0xPUl9CVUZG
RVJfQklUKTsKICAgICBBU1NFUlRfR0xfTk9fRVJST1IoKTsKICAgICAvLyBGb3JjZSB0aGUgY2xl
YXIgdG8gYmUgZmx1c2hlZAogICAgIEVYUEVDVF9QSVhFTF9DT0xPUl9FUSgzMiwgMzIsIEdMQ29s
b3I6OnJlZCk7CiAKICAgICAvLyBDbGVhciB0byBncmVlbiwgYnV0IGRvbid0IHJlYWQgaXQgYmFj
ayBzbyB0aGUgY2xlYXIgaXMgZGVmZXJyZWQuCi0gICAgZ2xDbGVhckNvbG9yKEdMQ29sb3I6Omdy
ZWVuLlIsIEdMQ29sb3I6OmdyZWVuLkcsIEdMQ29sb3I6OmdyZWVuLkIsIEdMQ29sb3I6OmdyZWVu
LkEpOworICAgIGdsQ2xlYXJDb2xvcihrRmxvYXRHcmVlbi5SLCBrRmxvYXRHcmVlbi5HLCBrRmxv
YXRHcmVlbi5CLCBrRmxvYXRHcmVlbi5BKTsKICAgICBnbENsZWFyKEdMX0NPTE9SX0JVRkZFUl9C
SVQpOwogICAgIEFTU0VSVF9HTF9OT19FUlJPUigpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvZW5kMmVuZF90ZXN0cy9tYWMvSW5mby5wbGlzdCBiL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9lbmQyZW5kX3Rlc3RzL21hYy9JbmZvLnBs
aXN0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjc5OTRhZjAzNzcyM2QxMTNmNTBmZTFiZWEzYjU3N2NhMTIyY2Q1ZWUK
LS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvZW5k
MmVuZF90ZXN0cy9tYWMvSW5mby5wbGlzdApAQCAtMCwwICsxLDEyIEBACis8P3htbCB2ZXJzaW9u
PSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPCFET0NUWVBFIHBsaXN0IFBVQkxJQyAiLS8vQXBw
bGUvL0RURCBQTElTVCAxLjAvL0VOIiAiaHR0cDovL3d3dy5hcHBsZS5jb20vRFREcy9Qcm9wZXJ0
eUxpc3QtMS4wLmR0ZCI+Cis8cGxpc3QgdmVyc2lvbj0iMS4wIj4KKzxkaWN0PgorCTxrZXk+Q0ZC
dW5kbGVOYW1lPC9rZXk+CisJPHN0cmluZz5hbmdsZV9lbmQyZW5kX3Rlc3RzPC9zdHJpbmc+CisJ
PGtleT5DRkJ1bmRsZUlkZW50aWZpZXI8L2tleT4KKwk8c3RyaW5nPm9yZy5jaHJvbWl1bS5hbmds
ZS5hbmdsZV9lbmQyZW5kX3Rlc3RzPC9zdHJpbmc+CisJPGtleT5OU1N1cHBvcnRzQXV0b21hdGlj
R3JhcGhpY3NTd2l0Y2hpbmc8L2tleT4KKwk8dHJ1ZS8+Cis8L2RpY3Q+Cis8L3BsaXN0PgpkaWZm
IC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2dsX3Rlc3RzL0NsZWFy
VGVzdC5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvZ2xfdGVzdHMvQ2xl
YXJUZXN0LmNwcAppbmRleCA0NTMwNGRhOWJkNzEzNzdhNzBmODk1OTA0MjA4Y2RlYzU1MTVkNDNh
Li5hNzgxNjJmYzdmYTIzOTFiYTRhNzI4OGE1YzZkYjc1YTcxYzg2N2NkIDEwMDY0NAotLS0gYS9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvZ2xfdGVzdHMvQ2xlYXJUZXN0LmNwcAor
KysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvZ2xfdGVzdHMvQ2xlYXJUZXN0
LmNwcApAQCAtMTEzLDYgKzExMyw5IEBAIGNsYXNzIENsZWFyVGVzdFJHQiA6IHB1YmxpYyBBTkdM
RVRlc3QKICAgICB9CiB9OwogCitjbGFzcyBDbGVhclRlc3RSR0JfRVMzIDogcHVibGljIENsZWFy
VGVzdFJHQgore307CisKIC8vIEVhY2ggaW50IHBhcmFtZXRlciBjYW4gaGF2ZSB0aHJlZSB2YWx1
ZXM6IGRvbid0IGNsZWFyLCBjbGVhciwgb3IgbWFza2VkIGNsZWFyLiAgVGhlIGJvb2wKIC8vIHBh
cmFtZXRlciBjb250cm9scyBzY2lzc29yLgogdXNpbmcgTWFza2VkU2Npc3NvcmVkQ2xlYXJWYXJp
YXRpb25zVGVzdFBhcmFtcyA9CkBAIC0zNDYsNyArMzQ5LDcgQEAgVEVTVF9QKENsZWFyVGVzdFJH
QiwgRGVmYXVsdEZyYW1lYnVmZmVyUkdCKQogCiAvLyBJbnZhbGlkYXRlIHRoZSBSR0IgZGVmYXVs
dCBmcmFtZWJ1ZmZlciBhbmQgdmVyaWZ5IHRoYXQgdGhlIGFscGhhIGNoYW5uZWwgaXMgbm90IGNs
ZWFyZWQsIGFuZAogLy8gc3RheXMgc2V0IGFmdGVyIGRyYXdpbmcuCi1URVNUX1AoQ2xlYXJUZXN0
UkdCLCBJbnZhbGlkYXRlRGVmYXVsdEZyYW1lYnVmZmVyUkdCKQorVEVTVF9QKENsZWFyVGVzdFJH
Ql9FUzMsIEludmFsaWRhdGVEZWZhdWx0RnJhbWVidWZmZXJSR0IpCiB7CiAgICAgQU5HTEVfR0xf
UFJPR1JBTShibHVlUHJvZ3JhbSwgZXNzbDFfc2hhZGVyczo6dnM6OlNpbXBsZSgpLCBlc3NsMV9z
aGFkZXJzOjpmczo6Qmx1ZSgpKTsKIApAQCAtMzU4LDkgKzM2MSw2IEBAIFRFU1RfUChDbGVhclRl
c3RSR0IsIEludmFsaWRhdGVEZWZhdWx0RnJhbWVidWZmZXJSR0IpCiAgICAgRUdMaW50IGJhY2ti
dWZmZXJBbHBoYUJpdHMgPSAwOwogICAgIGVnbEdldENvbmZpZ0F0dHJpYihkaXNwbGF5LCBjb25m
aWcsIEVHTF9BTFBIQV9TSVpFLCAmYmFja2J1ZmZlckFscGhhQml0cyk7CiAgICAgQU5HTEVfU0tJ
UF9URVNUX0lGKGJhY2tidWZmZXJBbHBoYUJpdHMgIT0gMCk7Ci0gICAgLy8gZ2xJbnZhbGlkYXRl
RnJhbWVidWZmZXIoKSBpc24ndCBzdXBwb3J0ZWQgd2l0aCBHTEVTIDIuMAotICAgIEFOR0xFX1NL
SVBfVEVTVF9JRihnZXRDbGllbnRNYWpvclZlcnNpb24oKSA8IDMpOwotICAgIEFOR0xFX1NLSVBf
VEVTVF9JRihJc0QzRDExKCkpOwogCiAgICAgZ2xDbGVhckNvbG9yKDAuMGYsIDAuMGYsIDAuMGYs
IDAuMGYpOwogICAgIGdsQ2xlYXIoR0xfQ09MT1JfQlVGRkVSX0JJVCk7CkBAIC0zODAsOCArMzgw
LDQwIEBAIFRFU1RfUChDbGVhclRlc3RSR0IsIEludmFsaWRhdGVEZWZhdWx0RnJhbWVidWZmZXJS
R0IpCiAgICAgRVhQRUNUX1BJWEVMX0NPTE9SX0VRKDAsIDAsIEdMQ29sb3I6OmJsdWUpOwogfQog
CisvLyBJbnZhbGlkYXRlIGFuIFJHQiB1c2VyIGZyYW1lYnVmZmVyIGFuZCB2ZXJpZnkgdGhhdCB0
aGUgYWxwaGEgY2hhbm5lbCBpcyBub3QgY2xlYXJlZCwgYW5kCisvLyBzdGF5cyBzZXQgYWZ0ZXIg
ZHJhd2luZy4KK1RFU1RfUChDbGVhclRlc3RSR0JfRVMzLCBJbnZhbGlkYXRlVXNlckZyYW1lYnVm
ZmVyUkdCKQoreworICAgIEFOR0xFX0dMX1BST0dSQU0oYmx1ZVByb2dyYW0sIGVzc2wxX3NoYWRl
cnM6OnZzOjpTaW1wbGUoKSwgZXNzbDFfc2hhZGVyczo6ZnM6OkJsdWUoKSk7CisKKyAgICBHTFRl
eHR1cmUgdGV4dHVyZTsKKyAgICBnbEJpbmRUZXh0dXJlKEdMX1RFWFRVUkVfMkQsIHRleHR1cmUp
OworICAgIGdsVGV4SW1hZ2UyRChHTF9URVhUVVJFXzJELCAwLCBHTF9SR0IsIGdldFdpbmRvd1dp
ZHRoKCksIGdldFdpbmRvd0hlaWdodCgpLCAwLCBHTF9SR0IsCisgICAgICAgICAgICAgICAgIEdM
X1VOU0lHTkVEX0JZVEUsIG51bGxwdHIpOworCisgICAgR0xGcmFtZWJ1ZmZlciBmYm87CisgICAg
Z2xCaW5kRnJhbWVidWZmZXIoR0xfRlJBTUVCVUZGRVIsIGZibyk7CisgICAgZ2xGcmFtZWJ1ZmZl
clRleHR1cmUyRChHTF9GUkFNRUJVRkZFUiwgR0xfQ09MT1JfQVRUQUNITUVOVDAsIEdMX1RFWFRV
UkVfMkQsIHRleHR1cmUsIDApOworICAgIEVYUEVDVF9HTF9GUkFNRUJVRkZFUl9DT01QTEVURShH
TF9GUkFNRUJVRkZFUik7CisgICAgQVNTRVJUX0dMX05PX0VSUk9SKCk7CisKKyAgICBnbENsZWFy
Q29sb3IoMC4wZiwgMC4wZiwgMC4wZiwgMC4wZik7CisgICAgZ2xDbGVhcihHTF9DT0xPUl9CVUZG
RVJfQklUKTsKKyAgICAvLyBWZXJpZnkgdGhhdCBjbGVhcmluZyBhbHBoYSBpcyBpbmVmZmVjdGl2
ZSBvbiBhbiBSR0IgZm9ybWF0LgorICAgIEVYUEVDVF9QSVhFTF9DT0xPUl9FUSgwLCAwLCBHTENv
bG9yOjpibGFjayk7CisKKyAgICAvLyBJbnZhbGlkYXRlIHRoZSBmcmFtZWJ1ZmZlciBjb250ZW50
cy4KKyAgICBjb25zdCBHTGVudW0gZGlzY2FyZHNbXSA9IHtHTF9DT0xPUl9BVFRBQ0hNRU5UMH07
CisgICAgZ2xJbnZhbGlkYXRlRnJhbWVidWZmZXIoR0xfRlJBTUVCVUZGRVIsIDEsIGRpc2NhcmRz
KTsKKworICAgIC8vIFdpdGhvdXQgYW4gZXhwbGljaXQgY2xlYXIsIGRyYXcgYmx1ZSBhbmQgbWFr
ZSBzdXJlIGFscGhhIGlzIHVuYWZmZWN0ZWQuICBJZiBSR0IgaXMgZW11YWx0ZWQKKyAgICAvLyB3
aXRoIFJHQkEsIHRoZSBwcmV2aW91cyBpbnZhbGlkYXRlIHNob3VsZG4ndCBhZmZlY3QgdGhlIGFs
cGhhIHZhbHVlLgorICAgIGRyYXdRdWFkKGJsdWVQcm9ncmFtLCBlc3NsMV9zaGFkZXJzOjpQb3Np
dGlvbkF0dHJpYigpLCAwLjVmKTsKKyAgICBFWFBFQ1RfUElYRUxfQ09MT1JfRVEoMCwgMCwgR0xD
b2xvcjo6Ymx1ZSk7Cit9CisKIC8vIERyYXcgd2l0aCBhIHNoYWRlciB0aGF0IG91dHB1dHMgYWxw
aGE9MC41LiBSZWFkYmFjayBhbmQgZW5zdXJlIHRoYXQgYWxwaGE9MS4KLVRFU1RfUChDbGVhclRl
c3RSR0IsIFNoYWRlck91dHB1dHNBbHBoYVZlcmlmeVJlYWRpbmdBbHBoYUlzT25lKQorVEVTVF9Q
KENsZWFyVGVzdFJHQl9FUzMsIFNoYWRlck91dHB1dHNBbHBoYVZlcmlmeVJlYWRpbmdBbHBoYUlz
T25lKQogewogICAgIEFOR0xFX0dMX1BST0dSQU0oYmx1ZVByb2dyYW0sIGVzc2wxX3NoYWRlcnM6
OnZzOjpTaW1wbGUoKSwgZXNzbDFfc2hhZGVyczo6ZnM6OlVuaWZvcm1Db2xvcigpKTsKICAgICBn
bFVzZVByb2dyYW0oYmx1ZVByb2dyYW0pOwpAQCAtMzk0LDkgKzQyNiw2IEBAIFRFU1RfUChDbGVh
clRlc3RSR0IsIFNoYWRlck91dHB1dHNBbHBoYVZlcmlmeVJlYWRpbmdBbHBoYUlzT25lKQogICAg
IEVHTGludCBiYWNrYnVmZmVyQWxwaGFCaXRzID0gMDsKICAgICBlZ2xHZXRDb25maWdBdHRyaWIo
ZGlzcGxheSwgY29uZmlnLCBFR0xfQUxQSEFfU0laRSwgJmJhY2tidWZmZXJBbHBoYUJpdHMpOwog
ICAgIEFOR0xFX1NLSVBfVEVTVF9JRihiYWNrYnVmZmVyQWxwaGFCaXRzICE9IDApOwotICAgIC8v
IGdsSW52YWxpZGF0ZUZyYW1lYnVmZmVyKCkgaXNuJ3Qgc3VwcG9ydGVkIHdpdGggR0xFUyAyLjAK
LSAgICBBTkdMRV9TS0lQX1RFU1RfSUYoZ2V0Q2xpZW50TWFqb3JWZXJzaW9uKCkgPCAzKTsKLSAg
ICBBTkdMRV9TS0lQX1RFU1RfSUYoSXNEM0QxMSgpKTsKIAogICAgIGdsQ2xlYXJDb2xvcigwLjBm
LCAwLjBmLCAwLjBmLCAwLjBmKTsKICAgICBnbENsZWFyKEdMX0NPTE9SX0JVRkZFUl9CSVQpOwpA
QCAtMjY1Miw0ICsyNjgxLDcgQEAgQU5HTEVfSU5TVEFOVElBVEVfVEVTVChDbGVhclRlc3RSR0Is
CiAgICAgICAgICAgICAgICAgICAgICAgIEVTMl9NRVRBTCgpLAogICAgICAgICAgICAgICAgICAg
ICAgICBFUzNfTUVUQUwoKSk7CiAKK0dURVNUX0FMTE9XX1VOSU5TVEFOVElBVEVEX1BBUkFNRVRF
UklaRURfVEVTVChDbGVhclRlc3RSR0JfRVMzKTsKK0FOR0xFX0lOU1RBTlRJQVRFX1RFU1QoQ2xl
YXJUZXN0UkdCX0VTMywgRVMzX0QzRDExKCksIEVTM19WVUxLQU4oKSwgRVMzX01FVEFMKCkpOwor
CiB9ICAvLyBhbm9ueW1vdXMgbmFtZXNwYWNlCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvdGVzdHMvZ2xfdGVzdHMvRFhUMUNvbXByZXNzZWRUZXh0dXJlVGVzdC5jcHAg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvZ2xfdGVzdHMvRFhUMUNvbXByZXNz
ZWRUZXh0dXJlVGVzdC5jcHAKaW5kZXggZWU1YWM0ZTYxMzMzYTM0N2M5NGRhZGY0NjMwZDJjZDcy
NjI3NWQ2Zi4uYWM4MmEzOGY0YTgyYjRmZTFkOWFiNTExOGI1NWJlMDcwMjI0Mzg2ZSAxMDA2NDQK
LS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2dsX3Rlc3RzL0RYVDFDb21w
cmVzc2VkVGV4dHVyZVRlc3QuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90
ZXN0cy9nbF90ZXN0cy9EWFQxQ29tcHJlc3NlZFRleHR1cmVUZXN0LmNwcApAQCAtMjE2LDYgKzIx
NiwzOSBAQCBURVNUX1AoRFhUMUNvbXByZXNzZWRUZXh0dXJlVGVzdCwgQ29tcHJlc3NlZFRleFN0
b3JhZ2UpCiAgICAgRVhQRUNUX0dMX05PX0VSUk9SKCk7CiB9CiAKKy8vIFRlc3QgdmFsaWRhdGlv
biBvZiBub24gYmxvY2sgc2l6ZXMsIHdpZHRoIDY3MiBhbmQgaGVpZ2h0IDExNCBhbmQgbXVsdGlw
bGUgbWlwIGxldmVscworVEVTVF9QKERYVDFDb21wcmVzc2VkVGV4dHVyZVRlc3QsIE5vbkJsb2Nr
U2l6ZXNNaXBMZXZlbHMpCit7CisgICAgQU5HTEVfU0tJUF9URVNUX0lGKCFJc0dMRXh0ZW5zaW9u
RW5hYmxlZCgiR0xfRVhUX3RleHR1cmVfY29tcHJlc3Npb25fZHh0MSIpKTsKKworICAgIEdMVGV4
dHVyZSB0ZXh0dXJlOworICAgIGdsQmluZFRleHR1cmUoR0xfVEVYVFVSRV8yRCwgdGV4dHVyZS5n
ZXQoKSk7CisKKyAgICBjb25zdGV4cHIgR0x1aW50IGtXaWR0aCAgPSA2NzQ7CisgICAgY29uc3Rl
eHByIEdMdWludCBrSGVpZ2h0ID0gMTE0OworCisgICAgLy8gRnJvbSBFWFRfdGV4dHVyZV9jb21w
cmVzc2lvbl9zM3RjIHNwZWNpZmljYXRpb25zOgorICAgIC8vIFdoZW4gYW4gUzNUQyBpbWFnZSB3
aXRoIGEgd2lkdGggb2YgPHc+LCBoZWlnaHQgb2YgPGg+LCBhbmQgYmxvY2sgc2l6ZSBvZgorICAg
IC8vIDxibG9ja3NpemU+ICg4IG9yIDE2IGJ5dGVzKSBpcyBkZWNvZGVkLCB0aGUgY29ycmVzcG9u
ZGluZyBpbWFnZSBzaXplIChpbgorICAgIC8vIGJ5dGVzKSBpczoKKyAgICAvLyAgICAgY2VpbCg8
dz4vNCkgKiBjZWlsKDxoPi80KSAqIGJsb2Nrc2l6ZS4KKyAgICBjb25zdGV4cHIgR0x1aW50IGtJ
bWFnZVNpemUgPSAoKGtXaWR0aCArIDMpIC8gNCkgKiAoKGtIZWlnaHQgKyAzKSAvIDQpICogODsK
KworICAgIGdsQ29tcHJlc3NlZFRleEltYWdlMkQoR0xfVEVYVFVSRV8yRCwgMCwgR0xfQ09NUFJF
U1NFRF9SR0JBX1MzVENfRFhUMV9FWFQsIGtXaWR0aCwga0hlaWdodCwgMCwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGtJbWFnZVNpemUsIG51bGxwdHIpOworICAgIEFTU0VSVF9HTF9OT19F
UlJPUigpOworCisgICAgY29uc3RleHByIEdMdWludCBrSW1hZ2VTaXplMSA9ICgoa1dpZHRoIC8g
MiArIDMpIC8gNCkgKiAoKGtIZWlnaHQgLyAyICsgMykgLyA0KSAqIDg7CisgICAgZ2xDb21wcmVz
c2VkVGV4SW1hZ2UyRChHTF9URVhUVVJFXzJELCAxLCBHTF9DT01QUkVTU0VEX1JHQkFfUzNUQ19E
WFQxX0VYVCwga1dpZHRoIC8gMiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGtIZWlnaHQg
LyAyLCAwLCBrSW1hZ2VTaXplMSwgbnVsbHB0cik7CisgICAgQVNTRVJUX0dMX05PX0VSUk9SKCk7
CisKKyAgICBjb25zdGV4cHIgR0x1aW50IGtJbWFnZVNpemUyID0gKChrV2lkdGggLyA0ICsgMykg
LyA0KSAqICgoa0hlaWdodCAvIDQgKyAzKSAvIDQpICogODsKKyAgICBnbENvbXByZXNzZWRUZXhJ
bWFnZTJEKEdMX1RFWFRVUkVfMkQsIDEsIEdMX0NPTVBSRVNTRURfUkdCQV9TM1RDX0RYVDFfRVhU
LCBrV2lkdGggLyA0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAga0hlaWdodCAvIDQsIDAs
IGtJbWFnZVNpemUyLCBudWxscHRyKTsKKyAgICBBU1NFUlRfR0xfTk9fRVJST1IoKTsKK30KKwog
Ly8gVGVzdCB2YWxpZGF0aW9uIG9mIGdsQ29tcHJlc3NlZFRleFN1YkltYWdlMkQgd2l0aCBEWFQg
Zm9ybWF0cwogVEVTVF9QKERYVDFDb21wcmVzc2VkVGV4dHVyZVRlc3QsIENvbXByZXNzZWRUZXhT
dWJJbWFnZVZhbGlkYXRpb24pCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zcmMvdGVzdHMvZ2xfdGVzdHMvRHJhd0Jhc2VWZXJ0ZXhCYXNlSW5zdGFuY2VUZXN0LmNwcCBi
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9nbF90ZXN0cy9EcmF3QmFzZVZlcnRl
eEJhc2VJbnN0YW5jZVRlc3QuY3BwCmluZGV4IDFhY2ZmYTFmYjYzOWMxMDAxYjAyOGQ1YjgyMjlm
YmU5NDM1ZWRjZGIuLmMwMzk1OWRkN2RiYjYyOWVjZjgwOTYwZTkyYzE3NDc3OGUxMzM0MDggMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9nbF90ZXN0cy9EcmF3
QmFzZVZlcnRleEJhc2VJbnN0YW5jZVRlc3QuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FO
R0xFL3NyYy90ZXN0cy9nbF90ZXN0cy9EcmF3QmFzZVZlcnRleEJhc2VJbnN0YW5jZVRlc3QuY3Bw
CkBAIC02ODksMTAgKzY4OSw3IEBAIFRFU1RfUChEcmF3QmFzZVZlcnRleEJhc2VJbnN0YW5jZVRl
c3QsIE11bHRpRHJhd0VsZW1lbnRzSW5zdGFuY2VkQmFzZVZlcnRleEJhc2VJCiB9CiAKIGNvbnN0
IGFuZ2xlOjpQbGF0Zm9ybVBhcmFtZXRlcnMgcGxhdGZvcm1zW10gPSB7Ci0gICAgRVMzX0QzRDEx
KCksCi0gICAgRVMzX09QRU5HTCgpLAotICAgIEVTM19PUEVOR0xFUygpLAotICAgIEVTM19WVUxL
QU4oKSwKKyAgICBFUzNfRDNEMTEoKSwgRVMzX01FVEFMKCksIEVTM19PUEVOR0woKSwgRVMzX09Q
RU5HTEVTKCksIEVTM19WVUxLQU4oKSwKIH07CiAKIEdURVNUX0FMTE9XX1VOSU5TVEFOVElBVEVE
X1BBUkFNRVRFUklaRURfVEVTVChEcmF3QmFzZVZlcnRleEJhc2VJbnN0YW5jZVRlc3QpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2dsX3Rlc3RzL0RyYXdC
YXNlVmVydGV4VmFyaWFudHNUZXN0LmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90
ZXN0cy9nbF90ZXN0cy9EcmF3QmFzZVZlcnRleFZhcmlhbnRzVGVzdC5jcHAKaW5kZXggYjYwM2Ex
YjY1ZWIyYzFmMDgyMTQ0YTM1MGE5ODY1MWY3ZjRiMTU0Ni4uMDg0NmJkN2QyNTllOGZkOTI3NDcw
YjRlNzMxYzlmNzNiYzQyYWY5OSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUv
c3JjL3Rlc3RzL2dsX3Rlc3RzL0RyYXdCYXNlVmVydGV4VmFyaWFudHNUZXN0LmNwcAorKysgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvZ2xfdGVzdHMvRHJhd0Jhc2VWZXJ0ZXhW
YXJpYW50c1Rlc3QuY3BwCkBAIC00NDQsNiArNDQ0LDcgQEAgQU5HTEVfSU5TVEFOVElBVEVfVEVT
VF9DT01CSU5FXzEoRHJhd0Jhc2VWZXJ0ZXhWYXJpYW50c1Rlc3QsCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBEcmF3QmFzZVZlcnRleFZhcmlhbnRzVGVzdFByaW50LAogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVzdGluZzo6VmFsdWVzSW4oa0J1ZmZlckRhdGFV
c2FnZSksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFUzNfRDNEMTEoKSwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVTM19NRVRBTCgpLAogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgRVMzX09QRU5HTCgpLAogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgRVMzX09QRU5HTEVTKCksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBFUzNfVlVMS0FOKCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUv
c3JjL3Rlc3RzL2dsX3Rlc3RzL0RyYXdFbGVtZW50c1Rlc3QuY3BwIGIvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL3Rlc3RzL2dsX3Rlc3RzL0RyYXdFbGVtZW50c1Rlc3QuY3BwCmluZGV4IDk5
MWI5ZjUwYjY0ODdjOTU4Y2Q4ZTA1ZWIyZmIzOTVhNDBiZjk4NDUuLjQzNWM2MjkzYjAyNThhYWY0
ZGNkNTE5MDkwOWU2ODQ4ZTIxNjdkY2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FO
R0xFL3NyYy90ZXN0cy9nbF90ZXN0cy9EcmF3RWxlbWVudHNUZXN0LmNwcAorKysgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvZ2xfdGVzdHMvRHJhd0VsZW1lbnRzVGVzdC5jcHAK
QEAgLTE1Miw2ICsxNTIsMTE5IEBAIFRFU1RfUChEcmF3RWxlbWVudHNUZXN0LCBEZWxldGVWZXJ0
ZXhBcnJheUFuZFVwbG9hZEluZGV4KQogICAgIEFTU0VSVF9HTF9OT19FUlJPUigpOwogfQogCisv
LyBUZXN0IFZBTyBzd2l0Y2ggaXMgaGFuZGxpbmcgY2FjaGVkIGVsZW1lbnQgYXJyYXkgYnVmZmVy
IHByb3Blcmx5IGFsb25nIHdpdGggbGluZSBsb29wIG1vZGUKKy8vIHN3aXRjaC4KK1RFU1RfUChE
cmF3RWxlbWVudHNUZXN0LCBMaW5lTG9vcFRyaWFuZ2xlcykKK3sKKyAgICBjb25zdCBhdXRvICZ2
ZXJ0aWNlcyAgICAgICAgICAgICAgICAgICAgPSBHZXRJbmRleGVkUXVhZFZlcnRpY2VzKCk7Cisg
ICAgY29uc3RleHByIHN0ZDo6YXJyYXk8R0x1aW50LCA2PiBpbmRpY2VzID0ge3swLCAxLCAyLCAw
LCAyLCAzfX07CisKKyAgICBBTkdMRV9HTF9QUk9HUkFNKHByb2dyYW1EcmF3UmVkLCBlc3NsM19z
aGFkZXJzOjp2czo6U2ltcGxlKCksIGVzc2wzX3NoYWRlcnM6OmZzOjpSZWQoKSk7CisgICAgQU5H
TEVfR0xfUFJPR1JBTShwcm9ncmFtRHJhd0JsdWUsIGVzc2wzX3NoYWRlcnM6OnZzOjpTaW1wbGUo
KSwgZXNzbDNfc2hhZGVyczo6ZnM6OkJsdWUoKSk7CisKKyAgICBnbFVzZVByb2dyYW0ocHJvZ3Jh
bURyYXdSZWQpOworICAgIEdMaW50IHBvc0xvY2F0aW9uID0gZ2xHZXRBdHRyaWJMb2NhdGlvbihw
cm9ncmFtRHJhd1JlZCwgZXNzbDNfc2hhZGVyczo6UG9zaXRpb25BdHRyaWIoKSk7CisgICAgQVNT
RVJUX05FKC0xLCBwb3NMb2NhdGlvbik7CisKKyAgICBHTFZlcnRleEFycmF5IHZlcnRleEFycmF5
WzJdOworICAgIEdMQnVmZmVyIHZlcnRleEJ1ZmZlclsyXTsKKworICAgIGdsQmluZFZlcnRleEFy
cmF5KHZlcnRleEFycmF5WzBdKTsKKworICAgIEdMQnVmZmVyIGluZGV4QnVmZmVyOworICAgIGds
QmluZEJ1ZmZlcihHTF9FTEVNRU5UX0FSUkFZX0JVRkZFUiwgaW5kZXhCdWZmZXIpOworICAgIGds
QnVmZmVyRGF0YShHTF9FTEVNRU5UX0FSUkFZX0JVRkZFUiwgc2l6ZW9mKGluZGljZXNbMF0pICog
aW5kaWNlcy5zaXplKCksIGluZGljZXMuZGF0YSgpLAorICAgICAgICAgICAgICAgICBHTF9TVEFU
SUNfRFJBVyk7CisKKyAgICBmb3IgKGludCBpID0gMDsgaSA8IDI7IGkrKykKKyAgICB7CisgICAg
ICAgIGdsQmluZFZlcnRleEFycmF5KHZlcnRleEFycmF5W2ldKTsKKyAgICAgICAgZ2xCaW5kQnVm
ZmVyKEdMX0FSUkFZX0JVRkZFUiwgdmVydGV4QnVmZmVyW2ldKTsKKyAgICAgICAgZ2xCdWZmZXJE
YXRhKEdMX0FSUkFZX0JVRkZFUiwgc2l6ZW9mKHZlcnRpY2VzWzBdKSAqIHZlcnRpY2VzLnNpemUo
KSwgdmVydGljZXMuZGF0YSgpLAorICAgICAgICAgICAgICAgICAgICAgR0xfU1RBVElDX0RSQVcp
OworICAgICAgICBnbFZlcnRleEF0dHJpYlBvaW50ZXIocG9zTG9jYXRpb24sIDMsIEdMX0ZMT0FU
LCBHTF9GQUxTRSwgMCwgMCk7CisgICAgICAgIGdsRW5hYmxlVmVydGV4QXR0cmliQXJyYXkocG9z
TG9jYXRpb24pOworICAgICAgICBnbEJpbmRCdWZmZXIoR0xfRUxFTUVOVF9BUlJBWV9CVUZGRVIs
IGluZGV4QnVmZmVyKTsKKyAgICB9CisKKyAgICAvLyBGaXJzdCBkcmF3IHdpdGggVkFPMCBhbmQg
bGluZSBsb29wIG1vZGUKKyAgICBnbEJpbmRWZXJ0ZXhBcnJheSh2ZXJ0ZXhBcnJheVswXSk7Cisg
ICAgZ2xEcmF3QXJyYXlzKEdMX0xJTkVfTE9PUCwgMCwgNCk7CisKKyAgICAvLyBTd2l0Y2ggdG8g
VkFPMSBhbmQgZHJhdyB3aXRoIHRyaWFuZ2xlIG1vZGUuCisgICAgZ2xCaW5kVmVydGV4QXJyYXko
dmVydGV4QXJyYXlbMV0pOworICAgIGdsQmluZEJ1ZmZlcihHTF9FTEVNRU5UX0FSUkFZX0JVRkZF
UiwgaW5kZXhCdWZmZXIpOworICAgIGdsRHJhd0VsZW1lbnRzKEdMX1RSSUFOR0xFUywgNiwgR0xf
VU5TSUdORURfSU5ULCBudWxscHRyKTsKKworICAgIEVYUEVDVF9QSVhFTF9DT0xPUl9FUSgwLCAw
LCBHTENvbG9yOjpyZWQpOworICAgIEVYUEVDVF9QSVhFTF9DT0xPUl9FUShnZXRXaW5kb3dXaWR0
aCgpIC0gMSwgMCwgR0xDb2xvcjo6cmVkKTsKKyAgICBFWFBFQ1RfUElYRUxfQ09MT1JfRVEoMCwg
Z2V0V2luZG93SGVpZ2h0KCkgLSAxLCBHTENvbG9yOjpyZWQpOworICAgIEVYUEVDVF9QSVhFTF9D
T0xPUl9FUShnZXRXaW5kb3dXaWR0aCgpIC0gMSwgZ2V0V2luZG93SGVpZ2h0KCkgLSAxLCBHTENv
bG9yOjpyZWQpOworCisgICAgLy8gU3dpdGNoIGJhY2sgdG8gVkFPMCBhbmQgZHJhdyB3aXRoIHRy
aWFuZ2xlIG1vZGUuCisgICAgZ2xVc2VQcm9ncmFtKHByb2dyYW1EcmF3Qmx1ZSk7CisgICAgZ2xC
aW5kVmVydGV4QXJyYXkodmVydGV4QXJyYXlbMF0pOworICAgIGdsQmluZEJ1ZmZlcihHTF9FTEVN
RU5UX0FSUkFZX0JVRkZFUiwgaW5kZXhCdWZmZXIpOworICAgIGdsRHJhd0VsZW1lbnRzKEdMX1RS
SUFOR0xFUywgNiwgR0xfVU5TSUdORURfSU5ULCBudWxscHRyKTsKKworICAgIEVYUEVDVF9QSVhF
TF9DT0xPUl9FUSgwLCAwLCBHTENvbG9yOjpibHVlKTsKKyAgICBFWFBFQ1RfUElYRUxfQ09MT1Jf
RVEoZ2V0V2luZG93V2lkdGgoKSAtIDEsIDAsIEdMQ29sb3I6OmJsdWUpOworICAgIEVYUEVDVF9Q
SVhFTF9DT0xPUl9FUSgwLCBnZXRXaW5kb3dIZWlnaHQoKSAtIDEsIEdMQ29sb3I6OmJsdWUpOwor
ICAgIEVYUEVDVF9QSVhFTF9DT0xPUl9FUShnZXRXaW5kb3dXaWR0aCgpIC0gMSwgZ2V0V2luZG93
SGVpZ2h0KCkgLSAxLCBHTENvbG9yOjpibHVlKTsKKyAgICBBU1NFUlRfR0xfTk9fRVJST1IoKTsK
K30KKworLy8gUmVncmVzc2lvbiB0ZXN0IGZvciB1c2luZyB0d28gVkFPcywgb25lIHRvIGRyYXcg
b25seSBHTF9MSU5FX0xPT1BzLCBhbmQKKy8vIGFub3RoZXIgdG8gZHJhdyBpbmRleGVkIHRyaWFu
Z2xlcy4KK1RFU1RfUChEcmF3RWxlbWVudHNUZXN0LCBMaW5lTG9vcFRyaWFuZ2xlczIpCit7Cisg
ICAgY29uc3QgYXV0byAmdmVydGljZXMgICAgICAgICAgICAgICAgICAgID0gR2V0SW5kZXhlZFF1
YWRWZXJ0aWNlcygpOworICAgIGNvbnN0ZXhwciBzdGQ6OmFycmF5PEdMdWludCwgNj4gaW5kaWNl
cyA9IHt7MCwgMSwgMiwgMCwgMiwgM319OworCisgICAgQU5HTEVfR0xfUFJPR1JBTShwcm9ncmFt
RHJhd1JlZCwgZXNzbDNfc2hhZGVyczo6dnM6OlNpbXBsZSgpLCBlc3NsM19zaGFkZXJzOjpmczo6
UmVkKCkpOworCisgICAgZ2xVc2VQcm9ncmFtKHByb2dyYW1EcmF3UmVkKTsKKyAgICBHTGludCBw
b3NMb2NhdGlvbiA9IGdsR2V0QXR0cmliTG9jYXRpb24ocHJvZ3JhbURyYXdSZWQsIGVzc2wzX3No
YWRlcnM6OlBvc2l0aW9uQXR0cmliKCkpOworICAgIEFTU0VSVF9ORSgtMSwgcG9zTG9jYXRpb24p
OworCisgICAgR0xWZXJ0ZXhBcnJheSB2ZXJ0ZXhBcnJheVsyXTsKKyAgICBHTEJ1ZmZlciB2ZXJ0
ZXhCdWZmZXJbMl07CisKKyAgICBHTEJ1ZmZlciBpbmRleEJ1ZmZlcjsKKyAgICBnbEJpbmRCdWZm
ZXIoR0xfRUxFTUVOVF9BUlJBWV9CVUZGRVIsIGluZGV4QnVmZmVyKTsKKyAgICBnbEJ1ZmZlckRh
dGEoR0xfRUxFTUVOVF9BUlJBWV9CVUZGRVIsIHNpemVvZihpbmRpY2VzWzBdKSAqIGluZGljZXMu
c2l6ZSgpLCBpbmRpY2VzLmRhdGEoKSwKKyAgICAgICAgICAgICAgICAgR0xfU1RBVElDX0RSQVcp
OworCisgICAgZm9yIChpbnQgaSA9IDA7IGkgPCAyOyBpKyspCisgICAgeworICAgICAgICBnbEJp
bmRWZXJ0ZXhBcnJheSh2ZXJ0ZXhBcnJheVtpXSk7CisgICAgICAgIGdsQmluZEJ1ZmZlcihHTF9B
UlJBWV9CVUZGRVIsIHZlcnRleEJ1ZmZlcltpXSk7CisgICAgICAgIGdsQnVmZmVyRGF0YShHTF9B
UlJBWV9CVUZGRVIsIHNpemVvZih2ZXJ0aWNlc1swXSkgKiB2ZXJ0aWNlcy5zaXplKCksIHZlcnRp
Y2VzLmRhdGEoKSwKKyAgICAgICAgICAgICAgICAgICAgIEdMX1NUQVRJQ19EUkFXKTsKKyAgICAg
ICAgZ2xWZXJ0ZXhBdHRyaWJQb2ludGVyKHBvc0xvY2F0aW9uLCAzLCBHTF9GTE9BVCwgR0xfRkFM
U0UsIDAsIDApOworICAgICAgICBnbEVuYWJsZVZlcnRleEF0dHJpYkFycmF5KHBvc0xvY2F0aW9u
KTsKKyAgICAgICAgaWYgKGkgIT0gMCkKKyAgICAgICAgICAgIGdsQmluZEJ1ZmZlcihHTF9FTEVN
RU5UX0FSUkFZX0JVRkZFUiwgaW5kZXhCdWZmZXIpOworICAgIH0KKworICAgIC8vIEZpcnN0IGRy
YXcgd2l0aCBWQU8wIGFuZCBsaW5lIGxvb3AgbW9kZQorICAgIGdsQmluZFZlcnRleEFycmF5KHZl
cnRleEFycmF5WzBdKTsKKyAgICBnbERyYXdBcnJheXMoR0xfTElORV9MT09QLCAwLCA0KTsKKwor
ICAgIC8vIFN3aXRjaCB0byBWQU8xIGFuZCBkcmF3IHNvbWUgaW5kZXhlZCB0cmlhbmdsZXMKKyAg
ICBnbEJpbmRWZXJ0ZXhBcnJheSh2ZXJ0ZXhBcnJheVsxXSk7CisgICAgZ2xCaW5kQnVmZmVyKEdM
X0VMRU1FTlRfQVJSQVlfQlVGRkVSLCBpbmRleEJ1ZmZlcik7CisgICAgZ2xEcmF3RWxlbWVudHMo
R0xfVFJJQU5HTEVTLCA2LCBHTF9VTlNJR05FRF9JTlQsIG51bGxwdHIpOworCisgICAgLy8gU3dp
dGNoIGJhY2sgdG8gVkFPMCBhbmQgZG8gYW5vdGhlciBsaW5lIGxvb3AKKyAgICBnbEJpbmRWZXJ0
ZXhBcnJheSh2ZXJ0ZXhBcnJheVswXSk7CisKKyAgICAvLyBXb3VsZCBjcmFzaCBpZiB0aGUgaW5k
ZXggYnVmZmVyIGRpcnR5IGJpdCBnb3QgZXJyYW50bHkgc2V0IG9uIFZBTzAuCisgICAgZ2xEcmF3
QXJyYXlzKEdMX0xJTkVfTE9PUCwgMCwgNCk7CisKKyAgICBBU1NFUlRfR0xfTk9fRVJST1IoKTsK
K30KKwogLy8gVGVzdCBhIHN0YXRlIGRlc3luYyB0aGF0IGNhbiBvY2N1ciB3aGVuIHVzaW5nIGEg
c3RyZWFtaW5nIGluZGV4IGJ1ZmZlciBpbiBHTCBpbiBjb25jZXJ0IHdpdGgKIC8vIGRlbGV0aW5n
IHRoZSBhcHBsaWVkIGluZGV4IGJ1ZmZlci4KIFRFU1RfUChEcmF3RWxlbWVudHNUZXN0LCBEZWxl
dGluZ0FmdGVyU3RyZWFtaW5nSW5kZXhlcykKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3NyYy90ZXN0cy9nbF90ZXN0cy9GZW5jZVN5bmNUZXN0cy5jcHAgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvZ2xfdGVzdHMvRmVuY2VTeW5jVGVzdHMuY3BwCmluZGV4
IGYwYTIzMTRkYzI0MWUxNDQ4YzZkN2ZjZWY5YjExZmFiYzNjODhhZWQuLjQxOGY2YzI0MmM1MDZm
YzYzOTI2YmQ3NmY4YmE1ZWQxMmIxZjQzYjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3NyYy90ZXN0cy9nbF90ZXN0cy9GZW5jZVN5bmNUZXN0cy5jcHAKKysrIGIvU291cmNl
L1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2dsX3Rlc3RzL0ZlbmNlU3luY1Rlc3RzLmNwcApA
QCAtMjI3LDYgKzIyNywxNiBAQCBURVNUX1AoRmVuY2VTeW5jVGVzdCwgQmFzaWNRdWVyaWVzKQog
ICAgIEVYUEVDVF9FUSgwLCB2YWx1ZSk7CiB9CiAKKy8vIFRlc3QgdXNhZ2Ugb2YgZ2xHZXRTeW5j
aXYgd2l0aCBudWxscHRyIGFzIGxlbmd0aAorVEVTVF9QKEZlbmNlU3luY1Rlc3QsIE51bGxMZW5n
dGgpCit7CisgICAgR0xpbnQgdmFsdWUgPSAwOworICAgIEdMc3luYyBzeW5jID0gZ2xGZW5jZVN5
bmMoR0xfU1lOQ19HUFVfQ09NTUFORFNfQ09NUExFVEUsIDApOworICAgIGdsR2V0U3luY2l2KHN5
bmMsIEdMX1NZTkNfU1RBVFVTLCAxLCBudWxscHRyLCAmdmFsdWUpOworICAgIGdsRGVsZXRlU3lu
YyhzeW5jKTsKKyAgICBFWFBFQ1RfR0xfTk9fRVJST1IoKTsKK30KKwogLy8gVGVzdCB0aGF0IGJh
c2ljIHVzYWdlIHdvcmtzIGFuZCBkb2Vzbid0IGdlbmVyYXRlIGVycm9ycyBvciBjcmFzaAogVEVT
VF9QKEZlbmNlU3luY1Rlc3QsIEJhc2ljT3BlcmF0aW9ucykKIHsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9nbF90ZXN0cy9GcmFtZWJ1ZmZlclRlc3QuY3Bw
IGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2dsX3Rlc3RzL0ZyYW1lYnVmZmVy
VGVzdC5jcHAKaW5kZXggOGFiZDQ3ZjEwNjI5ZDE3OTM1ZDdlODRlMDEwMWY2OWRkMjhlNjE4NS4u
ZDQyMWNjMTE4Mzg4NjI2ZjI0ZDc1ZWQ0ODMwMGE5OTA4MDc3ZmQ4MiAxMDA2NDQKLS0tIGEvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2dsX3Rlc3RzL0ZyYW1lYnVmZmVyVGVzdC5j
cHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2dsX3Rlc3RzL0ZyYW1l
YnVmZmVyVGVzdC5jcHAKQEAgLTQxMTksNiArNDExOSw1NyBAQCBURVNUX1AoRnJhbWVidWZmZXJU
ZXN0X0VTMywgQmluZFJlbmRlcmJ1ZmZlclRoZW5Nb2RpZnlTaXplKQogICAgIEFTU0VSVF9HTF9O
T19FUlJPUigpOwogfQogCisvLyBUZXN0cyByZWRlZmluaW5nIGEgbGF5ZXJlZCBmcmFtZWJ1ZmZl
ciBhdHRhY2htZW50LgorVEVTVF9QKEZyYW1lYnVmZmVyVGVzdF9FUzMsIFJlZGVmaW5lTGF5ZXJB
dHRhY2htZW50KQoreworICAgIEdMVGV4dHVyZSB0ZXh0dXJlOworICAgIGdsQmluZFRleHR1cmUo
R0xfVEVYVFVSRV8zRCwgdGV4dHVyZSk7CisgICAgc3RkOjp2ZWN0b3I8dWludDhfdD4gaW1nRGF0
YSgyMDQ4MCwgMCk7CisgICAgZ2xUZXhJbWFnZTNEKEdMX1RFWFRVUkVfM0QsIDAsIEdMX1I4LCA4
LCA4LCA4LCAwLCBHTF9SRUQsIEdMX1VOU0lHTkVEX0JZVEUsIGltZ0RhdGEuZGF0YSgpKTsKKwor
ICAgIEdMRnJhbWVidWZmZXIgZmJvOworICAgIGdsQmluZEZyYW1lYnVmZmVyKEdMX0ZSQU1FQlVG
RkVSLCBmYm8pOworICAgIGdsRnJhbWVidWZmZXJUZXh0dXJlTGF5ZXIoR0xfRlJBTUVCVUZGRVIs
IEdMX0NPTE9SX0FUVEFDSE1FTlQwLCB0ZXh0dXJlLCAwLCA4KTsKKyAgICBnbEdlbmVyYXRlTWlw
bWFwKEdMX1RFWFRVUkVfM0QpOworCisgICAgZ2xUZXhJbWFnZTNEKEdMX1RFWFRVUkVfM0QsIDAs
IEdMX1I4VUksIDE2LCAxNiwgMTYsIDAsIEdMX1JFRF9JTlRFR0VSLCBHTF9VTlNJR05FRF9CWVRF
LAorICAgICAgICAgICAgICAgICBpbWdEYXRhLmRhdGEoKSk7CisgICAgZ2xDb3B5VGV4U3ViSW1h
Z2UzRChHTF9URVhUVVJFXzNELCAwLCAwLCAwLCAyLCAyLCAxNSwgMTYsIDE2KTsKKyAgICBBU1NF
UlRfR0xfTk9fRVJST1IoKTsKK30KKworLy8gQ292ZXJzIGEgYnVnIHdoZW4gY2hhbmdpbmcgYSBi
YXNlIGxldmVsIG9mIGEgdGV4dHVyZSBib3VuZCB0byBhIEZCTy4KK1RFU1RfUChGcmFtZWJ1ZmZl
clRlc3RfRVMzLCBSZWF0dGFjaFRvSW52YWxpZEJhc2VMZXZlbCkKK3sKKyAgICBBTkdMRV9HTF9Q
Uk9HUkFNKHRlc3RQcm9ncmFtLCBlc3NsMV9zaGFkZXJzOjp2czo6VGV4dHVyZTJEKCksIGVzc2wx
X3NoYWRlcnM6OmZzOjpUZXh0dXJlMkQoKSk7CisgICAgZ2xVc2VQcm9ncmFtKHRlc3RQcm9ncmFt
KTsKKworICAgIEdMVGV4dHVyZSB0ZXg7CisgICAgZ2xCaW5kVGV4dHVyZShHTF9URVhUVVJFXzJE
LCB0ZXgpOworICAgIGdsVGV4UGFyYW1ldGVyaShHTF9URVhUVVJFXzJELCBHTF9URVhUVVJFX01J
Tl9GSUxURVIsIEdMX0xJTkVBUik7CisKKyAgICBmb3IgKGludCBtaXAgPSAwOyBtaXAgPD0gMjsg
KyttaXApCisgICAgeworICAgICAgICBpbnQgc2l6ZSA9IDEwID4+IG1pcDsKKyAgICAgICAgZ2xU
ZXhJbWFnZTJEKEdMX1RFWFRVUkVfMkQsIG1pcCwgR0xfUkdCQTgsIHNpemUsIHNpemUsIDAsIEdM
X1JHQkEsIEdMX1VOU0lHTkVEX0JZVEUsCisgICAgICAgICAgICAgICAgICAgICBudWxscHRyKTsK
KyAgICB9CisKKyAgICBHTEZyYW1lYnVmZmVyIGZiOworICAgIGdsQmluZEZyYW1lYnVmZmVyKEdM
X0ZSQU1FQlVGRkVSLCBmYik7CisgICAgZ2xGcmFtZWJ1ZmZlclRleHR1cmUyRChHTF9GUkFNRUJV
RkZFUiwgR0xfQ09MT1JfQVRUQUNITUVOVDAsIEdMX1RFWFRVUkVfMkQsIHRleCwgMSk7CisgICAg
RVhQRUNUX0dMX05PX0VSUk9SKCk7CisKKyAgICAvLyBTZXQgYmFzZSBsZXZlbCAxIGFuZCBkcmF3
LgorICAgIGdsVGV4UGFyYW1ldGVyaShHTF9URVhUVVJFXzJELCBHTF9URVhUVVJFX0JBU0VfTEVW
RUwsIDEpOworICAgIGdsRHJhd0FycmF5cyhHTF9QT0lOVFMsIDAsIDEpOworICAgIEVYUEVDVF9H
TF9OT19FUlJPUigpOworICAgIC8vIFNldCBiYXNlIGxldmVsIDAuIFRoZSBGQk8gaXMgaW5jb21w
bGV0ZSBiZWNhdXNlIHRoZSBGQk8gYXR0YWNobWVudCBiaW5kcyB0byBsZXZlbCAxLgorICAgIGds
VGV4UGFyYW1ldGVyaShHTF9URVhUVVJFXzJELCBHTF9URVhUVVJFX0JBU0VfTEVWRUwsIDApOwor
ICAgIGdsRHJhd0FycmF5cyhHTF9QT0lOVFMsIDAsIDEpOworICAgIEVYUEVDVF9HTF9FUlJPUihH
TF9JTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTik7Cit9CisKIEFOR0xFX0lOU1RBTlRJQVRF
X1RFU1RfRVMyKEFkZE1vY2tUZXh0dXJlTm9SZW5kZXJUYXJnZXRUZXN0KTsKIEFOR0xFX0lOU1RB
TlRJQVRFX1RFU1RfRVMyKEZyYW1lYnVmZmVyVGVzdCk7CiBBTkdMRV9JTlNUQU5USUFURV9URVNU
X0VTMl9BTkRfRVMzKEZyYW1lYnVmZmVyRm9ybWF0c1Rlc3QpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2dsX3Rlc3RzL0dMU0xUZXN0LmNwcCBiL1NvdXJj
ZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9nbF90ZXN0cy9HTFNMVGVzdC5jcHAKaW5kZXgg
OWJmZTI4MjlkZDg3NzAyMDM4ZTdiNTZmYTJjY2YzMGQ3ZWQ4NjFkOS4uM2QxZTNlMjZhMDhhMmNj
OTQ5MzZmZDAyZjc0YjE3NjkzNTVjMDY5OSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc3JjL3Rlc3RzL2dsX3Rlc3RzL0dMU0xUZXN0LmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9BTkdMRS9zcmMvdGVzdHMvZ2xfdGVzdHMvR0xTTFRlc3QuY3BwCkBAIC0zMTQ1LDEwICsz
MTQ1LDEwIEBAIHZvaWQgbWFpbigpCiAKICAgICBtYXQzeDIgbSA9IG1hdDN4MihpdmVjMihpKSwg
dXZlYzIodSksIGJ2ZWMyKGIpKTsKIAotICAgIGNvbG9yID0gdmVjNChtaVswXVswXSA9PSBmbG9h
dChpKSA/IDEgOiAwLAotICAgICAgICAgICAgICAgICBtdVsyXVsyXSA9PSBmbG9hdCh1KSA/IDEg
OiAwLAotICAgICAgICAgICAgICAgICBtYlsxXVsxXSA9PSBmbG9hdChiKSA/IDEgOiAwLAotICAg
ICAgICAgICAgICAgICBtWzBdWzFdID09IGZsb2F0KGkpICYmIG1bMV1bMF0gPT0gZmxvYXQodSkg
JiYgbVsyXVswXSA9PSBmbG9hdChiKSA/IDEgOiAwKTsKKyAgICBjb2xvciA9IHZlYzQobWlbMF1b
MF0gPT0gLTEyMy4wID8gMSA6IDAsCisgICAgICAgICAgICAgICAgIG11WzJdWzJdID09IDQ1Ni4w
ID8gMSA6IDAsCisgICAgICAgICAgICAgICAgIG1iWzFdWzFdID09IDEuMCA/IDEgOiAwLAorICAg
ICAgICAgICAgICAgICBtWzBdWzFdID09IC0xMjMuMCAmJiBtWzFdWzBdID09IDQ1Ni4wICYmIG1b
Ml1bMF0gPT0gMS4wID8gMSA6IDApOwogfSkiOwogCiAgICAgQU5HTEVfR0xfUFJPR1JBTShwcm9n
cmFtLCBlc3NsM19zaGFkZXJzOjp2czo6U2ltcGxlKCksIGtGUyk7CkBAIC0zMTg3LDkgKzMxODcs
OSBAQCB2b2lkIG1haW4oKQogICAgIHZlYzMgdjMgPSB2ZWMzKGIsIHUpOwogICAgIHZlYzQgdjQg
PSB2ZWM0KGksIHUpOwogCi0gICAgY29sb3IgPSB2ZWM0KHYyLnggPT0gZmxvYXQoaS54KSAmJiB2
Mi55ID09IGZsb2F0KGIueCkgPyAxIDogMCwKLSAgICAgICAgICAgICAgICAgdjMueCA9PSBmbG9h
dChiLngpICYmIHYzLnkgPT0gZmxvYXQoYi55KSAmJiB2My56ID09IGZsb2F0KHUueCkgPyAxIDog
MCwKLSAgICAgICAgICAgICAgICAgdjQueCA9PSBmbG9hdChpLngpICYmIHY0LnkgPT0gZmxvYXQo
aS55KSAmJiB2NC56ID09IGZsb2F0KHUueCkgJiYgdjQudyA9PSBmbG9hdCh1LnkpID8gMSA6IDAs
CisgICAgY29sb3IgPSB2ZWM0KHYyLnggPT0gLTEyMy4wICYmIHYyLnkgPT0gMS4wID8gMSA6IDAs
CisgICAgICAgICAgICAgICAgIHYzLnggPT0gMS4wICYmIHYzLnkgPT0gMC4wICYmIHYzLnogPT0g
NDU2LjAgPyAxIDogMCwKKyAgICAgICAgICAgICAgICAgdjQueCA9PSAtMTIzLjAgJiYgdjQueSA9
PSAtMjMuMCAmJiB2NC56ID09IDQ1Ni4wICYmIHY0LncgPT0gNzYuMCA/IDEgOiAwLAogICAgICAg
ICAgICAgICAgICAxKTsKIH0pIjsKIApAQCAtMTQ5OTcsNiArMTQ5OTcsMTEwIEBAIHZvaWQgbWFp
bigpIHsKICAgICBnbEdldFNoYWRlcml2KHNoYWRlciwgR0xfQ09NUElMRV9TVEFUVVMsICZjb21w
aWxlUmVzdWx0KTsKICAgICBFWFBFQ1RfTkUoY29tcGlsZVJlc3VsdCwgMCk7CiB9CisKKy8vIFRl
c3QgdGhhdCBsb29wIGJvZHkgZW5kaW5nIGluIGEgYnJhbmNoIGRvZXNuJ3QgZmFpbCBjb21waWxh
dGlvbgorVEVTVF9QKEdMU0xUZXN0LCBMb29wQm9keUVuZGluZ0luQnJhbmNoMSkKK3sKKyAgICBj
b25zdGV4cHIgY2hhciBrRlNbXSA9IFIiKHZvaWQgbWFpbigpe2ZvcihpbnQgYSxpOztnbF9GcmFn
Q29vcmQpY29udGludWU7fSkiOworCisgICAgR0x1aW50IHNoYWRlciA9IGdsQ3JlYXRlU2hhZGVy
KEdMX0ZSQUdNRU5UX1NIQURFUik7CisKKyAgICBjb25zdCBjaGFyICpzb3VyY2VBcnJheVsxXSA9
IHtrRlN9OworICAgIEdMaW50IGxlbmd0aHNbMV0gICAgICAgICAgID0ge3N0YXRpY19jYXN0PEdM
aW50PihzaXplb2Yoa0ZTKSAtIDEpfTsKKyAgICBnbFNoYWRlclNvdXJjZShzaGFkZXIsIDEsIHNv
dXJjZUFycmF5LCBsZW5ndGhzKTsKKyAgICBnbENvbXBpbGVTaGFkZXIoc2hhZGVyKTsKKworICAg
IEdMaW50IGNvbXBpbGVSZXN1bHQ7CisgICAgZ2xHZXRTaGFkZXJpdihzaGFkZXIsIEdMX0NPTVBJ
TEVfU1RBVFVTLCAmY29tcGlsZVJlc3VsdCk7CisgICAgRVhQRUNUX05FKGNvbXBpbGVSZXN1bHQs
IDApOworfQorCisvLyBUZXN0IHRoYXQgbG9vcCBib2R5IGVuZGluZyBpbiBhIGJyYW5jaCBkb2Vz
bid0IGZhaWwgY29tcGlsYXRpb24KK1RFU1RfUChHTFNMVGVzdCwgTG9vcEJvZHlFbmRpbmdJbkJy
YW5jaDIpCit7CisgICAgY29uc3RleHByIGNoYXIga0ZTW10gPQorICAgICAgICBSIih2b2lkIG1h
aW4oKXtmb3IoaW50IGEsaTtib29sKGdsX0ZyYWdDb29yZC54KTtnbF9GcmFnQ29vcmQpe2NvbnRp
bnVlO319KSI7CisKKyAgICBHTHVpbnQgc2hhZGVyID0gZ2xDcmVhdGVTaGFkZXIoR0xfRlJBR01F
TlRfU0hBREVSKTsKKworICAgIGNvbnN0IGNoYXIgKnNvdXJjZUFycmF5WzFdID0ge2tGU307Cisg
ICAgR0xpbnQgbGVuZ3Roc1sxXSAgICAgICAgICAgPSB7c3RhdGljX2Nhc3Q8R0xpbnQ+KHNpemVv
ZihrRlMpIC0gMSl9OworICAgIGdsU2hhZGVyU291cmNlKHNoYWRlciwgMSwgc291cmNlQXJyYXks
IGxlbmd0aHMpOworICAgIGdsQ29tcGlsZVNoYWRlcihzaGFkZXIpOworCisgICAgR0xpbnQgY29t
cGlsZVJlc3VsdDsKKyAgICBnbEdldFNoYWRlcml2KHNoYWRlciwgR0xfQ09NUElMRV9TVEFUVVMs
ICZjb21waWxlUmVzdWx0KTsKKyAgICBFWFBFQ1RfTkUoY29tcGlsZVJlc3VsdCwgMCk7Cit9CisK
Ky8vIFRlc3QgdGhhdCBsb29wIGJvZHkgZW5kaW5nIGluIGEgYnJhbmNoIGRvZXNuJ3QgZmFpbCBj
b21waWxhdGlvbgorVEVTVF9QKEdMU0xUZXN0LCBMb29wQm9keUVuZGluZ0luQnJhbmNoMykKK3sK
KyAgICBjb25zdGV4cHIgY2hhciBrRlNbXSA9IFIiKHZvaWQgbWFpbigpe2ZvcihpbnQgYSxpOztn
bF9GcmFnQ29vcmQpe3tjb250aW51ZTt9fX0pIjsKKworICAgIEdMdWludCBzaGFkZXIgPSBnbENy
ZWF0ZVNoYWRlcihHTF9GUkFHTUVOVF9TSEFERVIpOworCisgICAgY29uc3QgY2hhciAqc291cmNl
QXJyYXlbMV0gPSB7a0ZTfTsKKyAgICBHTGludCBsZW5ndGhzWzFdICAgICAgICAgICA9IHtzdGF0
aWNfY2FzdDxHTGludD4oc2l6ZW9mKGtGUykgLSAxKX07CisgICAgZ2xTaGFkZXJTb3VyY2Uoc2hh
ZGVyLCAxLCBzb3VyY2VBcnJheSwgbGVuZ3Rocyk7CisgICAgZ2xDb21waWxlU2hhZGVyKHNoYWRl
cik7CisKKyAgICBHTGludCBjb21waWxlUmVzdWx0OworICAgIGdsR2V0U2hhZGVyaXYoc2hhZGVy
LCBHTF9DT01QSUxFX1NUQVRVUywgJmNvbXBpbGVSZXN1bHQpOworICAgIEVYUEVDVF9ORShjb21w
aWxlUmVzdWx0LCAwKTsKK30KKworLy8gVGVzdCB0aGF0IGxvb3AgYm9keSBlbmRpbmcgaW4gYSBi
cmFuY2ggZG9lc24ndCBmYWlsIGNvbXBpbGF0aW9uCitURVNUX1AoR0xTTFRlc3QsIExvb3BCb2R5
RW5kaW5nSW5CcmFuY2g0KQoreworICAgIGNvbnN0ZXhwciBjaGFyIGtGU1tdID0gUiIodm9pZCBt
YWluKCl7Zm9yKGludCBhLGk7O2dsX0ZyYWdDb29yZCl7e2NvbnRpbnVlO317fXt9e3t9e319fX0p
IjsKKworICAgIEdMdWludCBzaGFkZXIgPSBnbENyZWF0ZVNoYWRlcihHTF9GUkFHTUVOVF9TSEFE
RVIpOworCisgICAgY29uc3QgY2hhciAqc291cmNlQXJyYXlbMV0gPSB7a0ZTfTsKKyAgICBHTGlu
dCBsZW5ndGhzWzFdICAgICAgICAgICA9IHtzdGF0aWNfY2FzdDxHTGludD4oc2l6ZW9mKGtGUykg
LSAxKX07CisgICAgZ2xTaGFkZXJTb3VyY2Uoc2hhZGVyLCAxLCBzb3VyY2VBcnJheSwgbGVuZ3Ro
cyk7CisgICAgZ2xDb21waWxlU2hhZGVyKHNoYWRlcik7CisKKyAgICBHTGludCBjb21waWxlUmVz
dWx0OworICAgIGdsR2V0U2hhZGVyaXYoc2hhZGVyLCBHTF9DT01QSUxFX1NUQVRVUywgJmNvbXBp
bGVSZXN1bHQpOworICAgIEVYUEVDVF9ORShjb21waWxlUmVzdWx0LCAwKTsKK30KKworLy8gVGVz
dCB0aGF0IGxvb3AgYm9keSBlbmRpbmcgaW4gYSBicmFuY2ggZG9lc24ndCBmYWlsIGNvbXBpbGF0
aW9uCitURVNUX1AoR0xTTFRlc3QsIExvb3BCb2R5RW5kaW5nSW5CcmFuY2g1KQoreworICAgIGNv
bnN0ZXhwciBjaGFyIGtGU1tdID0gUiIodm9pZCBtYWluKCl7d2hpbGUoYm9vbChnbF9GcmFnQ29v
cmQueCkpe3tjb250aW51ZTt7fX17fX19KSI7CisKKyAgICBHTHVpbnQgc2hhZGVyID0gZ2xDcmVh
dGVTaGFkZXIoR0xfRlJBR01FTlRfU0hBREVSKTsKKworICAgIGNvbnN0IGNoYXIgKnNvdXJjZUFy
cmF5WzFdID0ge2tGU307CisgICAgR0xpbnQgbGVuZ3Roc1sxXSAgICAgICAgICAgPSB7c3RhdGlj
X2Nhc3Q8R0xpbnQ+KHNpemVvZihrRlMpIC0gMSl9OworICAgIGdsU2hhZGVyU291cmNlKHNoYWRl
ciwgMSwgc291cmNlQXJyYXksIGxlbmd0aHMpOworICAgIGdsQ29tcGlsZVNoYWRlcihzaGFkZXIp
OworCisgICAgR0xpbnQgY29tcGlsZVJlc3VsdDsKKyAgICBnbEdldFNoYWRlcml2KHNoYWRlciwg
R0xfQ09NUElMRV9TVEFUVVMsICZjb21waWxlUmVzdWx0KTsKKyAgICBFWFBFQ1RfTkUoY29tcGls
ZVJlc3VsdCwgMCk7Cit9CisKKy8vIFRlc3QgdGhhdCBsb29wIGJvZHkgZW5kaW5nIGluIGEgYnJh
bmNoIGRvZXNuJ3QgZmFpbCBjb21waWxhdGlvbgorVEVTVF9QKEdMU0xUZXN0LCBMb29wQm9keUVu
ZGluZ0luQnJhbmNoNikKK3sKKyAgICBjb25zdGV4cHIgY2hhciBrRlNbXSA9IFIiKHZvaWQgbWFp
bigpe2Rve3tjb250aW51ZTt7fX17fX13aGlsZShib29sKGdsX0ZyYWdDb29yZC54KSk7fSkiOwor
CisgICAgR0x1aW50IHNoYWRlciA9IGdsQ3JlYXRlU2hhZGVyKEdMX0ZSQUdNRU5UX1NIQURFUik7
CisKKyAgICBjb25zdCBjaGFyICpzb3VyY2VBcnJheVsxXSA9IHtrRlN9OworICAgIEdMaW50IGxl
bmd0aHNbMV0gICAgICAgICAgID0ge3N0YXRpY19jYXN0PEdMaW50PihzaXplb2Yoa0ZTKSAtIDEp
fTsKKyAgICBnbFNoYWRlclNvdXJjZShzaGFkZXIsIDEsIHNvdXJjZUFycmF5LCBsZW5ndGhzKTsK
KyAgICBnbENvbXBpbGVTaGFkZXIoc2hhZGVyKTsKKworICAgIEdMaW50IGNvbXBpbGVSZXN1bHQ7
CisgICAgZ2xHZXRTaGFkZXJpdihzaGFkZXIsIEdMX0NPTVBJTEVfU1RBVFVTLCAmY29tcGlsZVJl
c3VsdCk7CisgICAgRVhQRUNUX05FKGNvbXBpbGVSZXN1bHQsIDApOworfQorCiB9ICAvLyBhbm9u
eW1vdXMgbmFtZXNwYWNlCiAKIEFOR0xFX0lOU1RBTlRJQVRFX1RFU1RfRVMyX0FORF9FUzNfQU5E
KEdMU0xUZXN0LCBXaXRoR2xzbGFuZyhFUzJfVlVMS0FOKCkpKTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9nbF90ZXN0cy9JbmRleEJ1ZmZlck9mZnNldFRl
c3QuY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2dsX3Rlc3RzL0luZGV4
QnVmZmVyT2Zmc2V0VGVzdC5jcHAKaW5kZXggOThjOTM0ZmRkNThjOTQxM2VlM2NmYzZkNWFkZGQx
Yzc0NmU5YmU3MC4uNTdjZTdmMmJhMTIzMDk3MWVkZjg3NDMxZDYxOWJiNDkzZTUxMThiNiAxMDA2
NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2dsX3Rlc3RzL0luZGV4
QnVmZmVyT2Zmc2V0VGVzdC5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rl
c3RzL2dsX3Rlc3RzL0luZGV4QnVmZmVyT2Zmc2V0VGVzdC5jcHAKQEAgLTQzMyw2ICs0MzMsMTEz
IEBAIFRFU1RfUChJbmRleEJ1ZmZlck9mZnNldFRlc3QsIERyYXdBdERpZmZlcmVudE9mZnNldEFs
aWdubWVudHMpCiAgICAgRVhQRUNUX0dMX05PX0VSUk9SKCk7CiB9CiAKKy8vIERyYXcgd2l0aCB0
aGUgc2FtZSBlbGVtZW50IGJ1ZmZlciwgYnV0IHdpdGggdHdvIGRpZmZlcmVudCB0eXBlcyBvZiBk
YXRhLgorVEVTVF9QKEluZGV4QnVmZmVyT2Zmc2V0VGVzdCwgRHJhd1dpdGhTYW1lQnVmZmVyQnV0
RGlmZmVyZW50VHlwZXMpCit7CisgICAgR0x1Ynl0ZSBpbmRleERhdGE4W10gICA9IHswLCAxLCAy
fTsKKyAgICBHTHVzaG9ydCBpbmRleERhdGExNltdID0gezEsIDIsIDN9OworICAgIGdsQ2xlYXJD
b2xvcigwLjBmLCAwLjBmLCAwLjBmLCAxLjBmKTsKKyAgICBnbENsZWFyKEdMX0NPTE9SX0JVRkZF
Ul9CSVQpOworCisgICAgZ2xVc2VQcm9ncmFtKG1Qcm9ncmFtKTsKKyAgICBnbFVuaWZvcm00Ziht
Q29sb3JVbmlmb3JtTG9jYXRpb24sIDEuMGYsIDAuMGYsIDAuMGYsIDEuMGYpOworCisgICAgZ2xC
aW5kQnVmZmVyKEdMX0FSUkFZX0JVRkZFUiwgbVZlcnRleEJ1ZmZlcik7CisgICAgZ2xWZXJ0ZXhB
dHRyaWJQb2ludGVyKG1Qb3NpdGlvbkF0dHJpYnV0ZUxvY2F0aW9uLCAyLCBHTF9GTE9BVCwgR0xf
RkFMU0UsIDAsIDApOworICAgIGdsRW5hYmxlVmVydGV4QXR0cmliQXJyYXkobVBvc2l0aW9uQXR0
cmlidXRlTG9jYXRpb24pOworCisgICAgLy8gQ3JlYXRlIGVsZW1lbnQgYnVmZmVyIGFuZCBmaWxs
IG9mZnNldCAwIHdpdGggZGF0YSBmcm9tIGluZGV4RGF0YTggYW5kIG9mZnNldCA1MTIgd2l0aCBk
YXRhCisgICAgLy8gZnJvbSBpbmRleERhdGExNgorICAgIEdMQnVmZmVyIGJ1ZmZlcjsKKyAgICBn
bEJpbmRCdWZmZXIoR0xfRUxFTUVOVF9BUlJBWV9CVUZGRVIsIGJ1ZmZlcik7CisgICAgZ2xCdWZm
ZXJEYXRhKEdMX0VMRU1FTlRfQVJSQVlfQlVGRkVSLCA0MDk2LCBudWxscHRyLCBHTF9EWU5BTUlD
X0RSQVcpOworICAgIGdsQnVmZmVyU3ViRGF0YShHTF9FTEVNRU5UX0FSUkFZX0JVRkZFUiwgMCwg
c2l6ZW9mKGluZGV4RGF0YTgpLCBpbmRleERhdGE4KTsKKyAgICBnbEJ1ZmZlclN1YkRhdGEoR0xf
RUxFTUVOVF9BUlJBWV9CVUZGRVIsIDUxMiwgc2l6ZW9mKGluZGV4RGF0YTE2KSwgaW5kZXhEYXRh
MTYpOworCisgICAgLy8gRHJhdyB3aXRoIDggYml0IGluZGV4IGRhdGEKKyAgICBnbERyYXdFbGVt
ZW50cyhHTF9UUklBTkdMRVMsIDMsIEdMX1VOU0lHTkVEX0JZVEUsIHJlaW50ZXJwcmV0X2Nhc3Q8
dm9pZCAqPigwKSk7CisgICAgLy8gRHJhdyB3aXRoIDE2IGJpdHMgaW5kZXggYnVmZmVyCisgICAg
Z2xEcmF3RWxlbWVudHMoR0xfVFJJQU5HTEVTLCAzLCBHTF9VTlNJR05FRF9TSE9SVCwgcmVpbnRl
cnByZXRfY2FzdDx2b2lkICo+KDUxMikpOworCisgICAgLy8gQ2hlY2sgdGhlIHVwcGVyIGxlZnQg
dHJpYW5nbGUKKyAgICBFWFBFQ1RfUElYRUxfQ09MT1JfRVEoMCwgZ2V0V2luZG93SGVpZ2h0KCkg
LyA0LCBHTENvbG9yOjpyZWQpOworICAgIC8vIENoZWNrIHRoZSBkb3duIHJpZ2h0IHRyaWFuZ2xl
CisgICAgRVhQRUNUX1BJWEVMX0NPTE9SX0VRKGdldFdpbmRvd1dpZHRoKCkgLSAxLCBnZXRXaW5k
b3dIZWlnaHQoKSAtIDEsIEdMQ29sb3I6OnJlZCk7CisKKyAgICBFWFBFQ1RfR0xfTk9fRVJST1Io
KTsKK30KKworLy8gRHJhdyB3aXRoIEdMX0xJTkVfTE9PUCBhbmQgZm9sbG93ZWQgYnkgR0xfVFJJ
QU5HTEVTLCBhbGwgdXNpbmcgdGhlIHNhbWUgZWxlbWVudCBidWZmZXIuCitURVNUX1AoSW5kZXhC
dWZmZXJPZmZzZXRUZXN0LCBEcmF3V2l0aFNhbWVCdWZmZXJCdXREaWZmZXJlbnRNb2RlcykKK3sK
KyAgICBHTHVzaG9ydCBpbmRleERhdGFMaW5lTG9vcFtdID0gezAsIDEsIDJ9OworICAgIEdMdXNo
b3J0IGluZGV4RGF0YVRyaWFuZ2xlW10gPSB7MSwgMiwgM307CisgICAgZ2xDbGVhckNvbG9yKDAu
MGYsIDAuMGYsIDAuMGYsIDEuMGYpOworICAgIGdsQ2xlYXIoR0xfQ09MT1JfQlVGRkVSX0JJVCk7
CisKKyAgICBnbFVzZVByb2dyYW0obVByb2dyYW0pOworICAgIGdsVW5pZm9ybTRmKG1Db2xvclVu
aWZvcm1Mb2NhdGlvbiwgMS4wZiwgMC4wZiwgMC4wZiwgMS4wZik7CisKKyAgICBnbEJpbmRCdWZm
ZXIoR0xfQVJSQVlfQlVGRkVSLCBtVmVydGV4QnVmZmVyKTsKKyAgICBnbFZlcnRleEF0dHJpYlBv
aW50ZXIobVBvc2l0aW9uQXR0cmlidXRlTG9jYXRpb24sIDIsIEdMX0ZMT0FULCBHTF9GQUxTRSwg
MCwgMCk7CisgICAgZ2xFbmFibGVWZXJ0ZXhBdHRyaWJBcnJheShtUG9zaXRpb25BdHRyaWJ1dGVM
b2NhdGlvbik7CisKKyAgICAvLyBDcmVhdGUgZWxlbWVudCBidWZmZXIgYW5kIGZpbGwgb2Zmc2V0
IDAgd2l0aCBkYXRhIGZyb20gaW5kZXhEYXRhOCBhbmQgb2Zmc2V0IDUxMiB3aXRoIGRhdGEKKyAg
ICAvLyBmcm9tIGluZGV4RGF0YTE2CisgICAgR0xCdWZmZXIgYnVmZmVyOworICAgIGdsQmluZEJ1
ZmZlcihHTF9FTEVNRU5UX0FSUkFZX0JVRkZFUiwgYnVmZmVyKTsKKyAgICBnbEJ1ZmZlckRhdGEo
R0xfRUxFTUVOVF9BUlJBWV9CVUZGRVIsIDQwOTYsIG51bGxwdHIsIEdMX0RZTkFNSUNfRFJBVyk7
CisgICAgZ2xCdWZmZXJTdWJEYXRhKEdMX0VMRU1FTlRfQVJSQVlfQlVGRkVSLCAwLCBzaXplb2Yo
aW5kZXhEYXRhTGluZUxvb3ApLCBpbmRleERhdGFMaW5lTG9vcCk7CisgICAgZ2xCdWZmZXJTdWJE
YXRhKEdMX0VMRU1FTlRfQVJSQVlfQlVGRkVSLCA1MTIsIHNpemVvZihpbmRleERhdGFUcmlhbmds
ZSksIGluZGV4RGF0YVRyaWFuZ2xlKTsKKworICAgIC8vIERyYXcgbGluZSBsb29wCisgICAgZ2xE
cmF3RWxlbWVudHMoR0xfTElORV9MT09QLCAzLCBHTF9VTlNJR05FRF9TSE9SVCwgMCk7CisgICAg
Ly8gRHJhdyB0cmlhbmdsZQorICAgIGdsRHJhd0VsZW1lbnRzKEdMX1RSSUFOR0xFUywgMywgR0xf
VU5TSUdORURfU0hPUlQsIHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCAqPig1MTIpKTsKKworICAgIC8v
IENoZWNrIHRoZSBkb3duIHJpZ2h0IHRyaWFuZ2xlCisgICAgRVhQRUNUX1BJWEVMX0NPTE9SX0VR
KGdldFdpbmRvd1dpZHRoKCkgLSAxLCBnZXRXaW5kb3dIZWlnaHQoKSAtIDEsIEdMQ29sb3I6OnJl
ZCk7CisKKyAgICBFWFBFQ1RfR0xfTk9fRVJST1IoKTsKK30KKworLy8gRHJhdyB3aXRoIEdMX0xJ
TkVfTE9PUCBhbmQgZm9sbG93ZWQgYnkgR0xfVFJJQU5HTEVTLCBhbGwgdXNpbmcgdGhlIHNhbWUg
ZWxlbWVudCBidWZmZXIuCitURVNUX1AoSW5kZXhCdWZmZXJPZmZzZXRUZXN0LCBEcmF3QXJyYXlz
TGluZUxvb3BGb2xsb3dlZEJ5RHJhd0VsZW1lbnRzVHJpYW5nbGUpCit7CisgICAgR0x1aW50IGlu
ZGV4RGF0YUxpbmVMb29wW10gPSB7MCwgMSwgMn07CisgICAgR0x1aW50IGluZGV4RGF0YVRyaWFu
Z2xlW10gPSB7MSwgMiwgM307CisgICAgZ2xDbGVhckNvbG9yKDAuMGYsIDAuMGYsIDAuMGYsIDEu
MGYpOworICAgIGdsQ2xlYXIoR0xfQ09MT1JfQlVGRkVSX0JJVCk7CisKKyAgICBnbFVzZVByb2dy
YW0obVByb2dyYW0pOworICAgIGdsVW5pZm9ybTRmKG1Db2xvclVuaWZvcm1Mb2NhdGlvbiwgMS4w
ZiwgMC4wZiwgMC4wZiwgMS4wZik7CisKKyAgICBnbEJpbmRCdWZmZXIoR0xfQVJSQVlfQlVGRkVS
LCBtVmVydGV4QnVmZmVyKTsKKyAgICBnbFZlcnRleEF0dHJpYlBvaW50ZXIobVBvc2l0aW9uQXR0
cmlidXRlTG9jYXRpb24sIDIsIEdMX0ZMT0FULCBHTF9GQUxTRSwgMCwgMCk7CisgICAgZ2xFbmFi
bGVWZXJ0ZXhBdHRyaWJBcnJheShtUG9zaXRpb25BdHRyaWJ1dGVMb2NhdGlvbik7CisKKyAgICAv
LyBDcmVhdGUgZWxlbWVudCBidWZmZXIgYW5kIGZpbGwgb2Zmc2V0IDAgd2l0aCBkYXRhIGZyb20g
aW5kZXhEYXRhTGluZUxvb3AgYW5kIG9mZnNldCA1MTIgd2l0aAorICAgIC8vIGRhdGEgZnJvbSBp
bmRleERhdGFUcmlhbmdsZQorICAgIEdMQnVmZmVyIGJ1ZmZlcjsKKyAgICBnbEJpbmRCdWZmZXIo
R0xfRUxFTUVOVF9BUlJBWV9CVUZGRVIsIGJ1ZmZlcik7CisgICAgZ2xCdWZmZXJEYXRhKEdMX0VM
RU1FTlRfQVJSQVlfQlVGRkVSLCA0MDk2LCBudWxscHRyLCBHTF9EWU5BTUlDX0RSQVcpOworICAg
IGdsQnVmZmVyU3ViRGF0YShHTF9FTEVNRU5UX0FSUkFZX0JVRkZFUiwgMCwgc2l6ZW9mKGluZGV4
RGF0YUxpbmVMb29wKSwgaW5kZXhEYXRhTGluZUxvb3ApOworICAgIGdsQnVmZmVyU3ViRGF0YShH
TF9FTEVNRU5UX0FSUkFZX0JVRkZFUiwgNTEyLCBzaXplb2YoaW5kZXhEYXRhVHJpYW5nbGUpLCBp
bmRleERhdGFUcmlhbmdsZSk7CisKKyAgICAvLyBGaXJzdCBjYWxsIGRyYXdFbGVtZW50cyB3aXRo
IHRoZSBzYW1lIHByaW1pdGl2ZSBhbmQgdHlwZSBhcyB0aGUgZmluYWwgZHJhd0VsZW1lbnQgY2Fs
bC4KKyAgICBnbERyYXdFbGVtZW50cyhHTF9UUklBTkdMRVMsIDMsIEdMX1VOU0lHTkVEX0lOVCwg
cmVpbnRlcnByZXRfY2FzdDx2b2lkICo+KDApKTsKKyAgICAvLyBUaGVuIGRyYXdBcnJheSB3aXRo
IGxpbmUgbG9vcCB0byB0cmlnZ2VyIHRoZSBzcGVjaWFsIGhhbmRsaW5nIG9mIGxpbmUgbG9vcC4K
KyAgICBnbERyYXdBcnJheXMoR0xfTElORV9MT09QLCAwLCAzKTsKKyAgICAvLyBGaW5hbGx5IGRy
YXdFbGVtZW50cyB3aXRoIHRyaWFuZ2xlIGFuZCBzYW1lIHR5cGUgdG8gZW5zdXJlIHRoZSBlbGVt
ZW50IGJ1ZmZlciBzdGF0ZSB0aGF0IHdhcworICAgIC8vIG1vZGlmaWVkIGJ5IGxpbmUgbG9vcCBk
cmF3IGNhbGwgZ2V0cyByZXN0b3JlZCBwcm9wZXJseS4KKyAgICBnbERyYXdFbGVtZW50cyhHTF9U
UklBTkdMRVMsIDMsIEdMX1VOU0lHTkVEX0lOVCwgcmVpbnRlcnByZXRfY2FzdDx2b2lkICo+KDUx
MikpOworCisgICAgLy8gQ2hlY2sgdGhlIGRvd24gcmlnaHQgdHJpYW5nbGUKKyAgICBFWFBFQ1Rf
UElYRUxfQ09MT1JfRVEoZ2V0V2luZG93V2lkdGgoKSAtIDEsIGdldFdpbmRvd0hlaWdodCgpIC0g
MSwgR0xDb2xvcjo6cmVkKTsKKworICAgIEVYUEVDVF9HTF9OT19FUlJPUigpOworfQorCiAvLyBV
c2VzIGluZGV4IGJ1ZmZlciBvZmZzZXQgYW5kIDIgZHJhd0VsZW1lbnQgY2FsbHMgb25lIG9mIHRo
ZSBvdGhlciB3aXRoIGRpZmZlcmVudCBjb3VudHMsCiAvLyBtYWtlcyBzdXJlIHRoZSBzZWNvbmQg
ZHJhd0VsZW1lbnQgY2FsbCB3aWxsIGhhdmUgaXRzIGRhdGEgYXZhaWxhYmxlLgogVEVTVF9QKElu
ZGV4QnVmZmVyT2Zmc2V0VGVzdCwgRHJhd1dpdGhEaWZmZXJlbnRDb3VudHNTYW1lT2Zmc2V0KQpk
aWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2dsX3Rlc3RzL01l
bW9yeUJhcnJpZXJUZXN0LmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9n
bF90ZXN0cy9NZW1vcnlCYXJyaWVyVGVzdC5jcHAKaW5kZXggOGVlZGQ3MDVlMzYxYTQ2MWE5M2Uw
NzQ5MmZmZTllZjdiN2E1NDI0Yi4uODIyMWM2OTk5MWVkOGNkNTQ5YzYxYmNkNGVjYWYwZjBmM2Zj
NDI2YiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2dsX3Rl
c3RzL01lbW9yeUJhcnJpZXJUZXN0LmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9z
cmMvdGVzdHMvZ2xfdGVzdHMvTWVtb3J5QmFycmllclRlc3QuY3BwCkBAIC02MSw2ICs2MSw1NiBA
QCBlbnVtIGNsYXNzIE5vb3BPcAogdXNpbmcgTWVtb3J5QmFycmllclZhcmlhdGlvbnNUZXN0UGFy
YW1zID0KICAgICBzdGQ6OnR1cGxlPGFuZ2xlOjpQbGF0Zm9ybVBhcmFtZXRlcnMsIFNoYWRlcldy
aXRlUGlwZWxpbmUsIFdyaXRlUmVzb3VyY2UsIE5vb3BPcCwgTm9vcE9wPjsKIAorc3RkOjpvc3Ry
ZWFtICZvcGVyYXRvcjw8KHN0ZDo6b3N0cmVhbSAmb3V0LCBXcml0ZVJlc291cmNlIHdyaXRlUmVz
b3VyY2UpCit7CisgICAgc3dpdGNoICh3cml0ZVJlc291cmNlKQorICAgIHsKKyAgICAgICAgY2Fz
ZSBXcml0ZVJlc291cmNlOjpJbWFnZToKKyAgICAgICAgICAgIG91dCA8PCAiaW1hZ2UiOworICAg
ICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgV3JpdGVSZXNvdXJjZTo6QnVmZmVyOgorICAg
ICAgICAgICAgb3V0IDw8ICJidWZmZXIiOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNh
c2UgV3JpdGVSZXNvdXJjZTo6SW1hZ2VCdWZmZXI6CisgICAgICAgICAgICBvdXQgPDwgImltYWdl
YnVmZmVyIjsKKyAgICAgICAgICAgIGJyZWFrOworICAgIH0KKworICAgIHJldHVybiBvdXQ7Cit9
CisKK3N0ZDo6b3N0cmVhbSAmb3BlcmF0b3I8PChzdGQ6Om9zdHJlYW0gJm91dCwgU2hhZGVyV3Jp
dGVQaXBlbGluZSB3cml0ZVBpcGVsaW5lKQoreworICAgIGlmICh3cml0ZVBpcGVsaW5lID09IFNo
YWRlcldyaXRlUGlwZWxpbmU6OkdyYXBoaWNzKQorICAgIHsKKyAgICAgICAgb3V0IDw8ICJncmFw
aGljcyI7CisgICAgfQorICAgIGVsc2UKKyAgICB7CisgICAgICAgIG91dCA8PCAiY29tcHV0ZSI7
CisgICAgfQorCisgICAgcmV0dXJuIG91dDsKK30KKworc3RkOjpvc3RyZWFtICZvcGVyYXRvcjw8
KHN0ZDo6b3N0cmVhbSAmb3V0LCBOb29wT3Agbm9vcCkKK3sKKyAgICBzd2l0Y2ggKG5vb3ApCisg
ICAgeworICAgICAgICBjYXNlIE5vb3BPcDo6RHJhdzoKKyAgICAgICAgICAgIG91dCA8PCAiTm9v
cERyYXciOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgTm9vcE9wOjpEaXNwYXRj
aDoKKyAgICAgICAgICAgIG91dCA8PCAiTm9vcERpc3BhdGNoIjsKKyAgICAgICAgICAgIGJyZWFr
OworICAgICAgICBjYXNlIE5vb3BPcDo6Tm9uZToKKyAgICAgICAgICAgIG91dCA8PCAiTm9vcE5v
bmUiOworICAgICAgICAgICAgYnJlYWs7CisgICAgfQorCisgICAgcmV0dXJuIG91dDsKK30KKwog
dm9pZCBQYXJzZU1lbW9yeUJhcnJpZXJWYXJpYXRpb25zVGVzdFBhcmFtcyhjb25zdCBNZW1vcnlC
YXJyaWVyVmFyaWF0aW9uc1Rlc3RQYXJhbXMgJnBhcmFtcywKICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgU2hhZGVyV3JpdGVQaXBlbGluZSAqd3JpdGVQaXBlbGlu
ZU91dCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgV3JpdGVS
ZXNvdXJjZSAqd3JpdGVSZXNvdXJjZU91dCwKQEAgLTg5LDQ4ICsxMzksMTYgQEAgc3RkOjpzdHJp
bmcgTWVtb3J5QmFycmllclZhcmlhdGlvbnNUZXN0UHJpbnQoCiAgICAgUGFyc2VNZW1vcnlCYXJy
aWVyVmFyaWF0aW9uc1Rlc3RQYXJhbXMocGFyYW1zLCAmd3JpdGVQaXBlbGluZSwgJndyaXRlUmVz
b3VyY2UsICZwcmVCYXJyaWVyT3AsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgJnBvc3RCYXJyaWVyT3ApOwogCi0gICAgb3V0IDw8ICJfIjsKKyAgICBvdXQgPDwg
Il9fIiA8PCB3cml0ZVBpcGVsaW5lIDw8ICJfIiA8PCB3cml0ZVJlc291cmNlOwogCi0gICAgaWYg
KHdyaXRlUGlwZWxpbmUgPT0gU2hhZGVyV3JpdGVQaXBlbGluZTo6R3JhcGhpY3MpCisgICAgaWYg
KHByZUJhcnJpZXJPcCAhPSBOb29wT3A6Ok5vbmUpCiAgICAgewotICAgICAgICBvdXQgPDwgIl9n
cmFwaGljcyI7CisgICAgICAgIG91dCA8PCAiX3ByZWJhcnJpZXIiIDw8IHByZUJhcnJpZXJPcDsK
ICAgICB9Ci0gICAgZWxzZQorICAgIGlmIChwb3N0QmFycmllck9wICE9IE5vb3BPcDo6Tm9uZSkK
ICAgICB7Ci0gICAgICAgIG91dCA8PCAiX2NvbXB1dGUiOworICAgICAgICBvdXQgPDwgIl9wb3N0
YmFycmllciIgPDwgcG9zdEJhcnJpZXJPcDsKICAgICB9Ci0KLSAgICBzd2l0Y2ggKHdyaXRlUmVz
b3VyY2UpCi0gICAgewotICAgICAgICBjYXNlIFdyaXRlUmVzb3VyY2U6OkltYWdlOgotICAgICAg
ICAgICAgb3V0IDw8ICJfaW1hZ2UiOwotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIGNhc2Ug
V3JpdGVSZXNvdXJjZTo6QnVmZmVyOgotICAgICAgICAgICAgb3V0IDw8ICJfYnVmZmVyIjsKLSAg
ICAgICAgICAgIGJyZWFrOwotICAgICAgICBjYXNlIFdyaXRlUmVzb3VyY2U6OkltYWdlQnVmZmVy
OgotICAgICAgICAgICAgb3V0IDw8ICJfaW1hZ2VidWZmZXIiOwotICAgICAgICAgICAgYnJlYWs7
Ci0gICAgfQotCi0gICAgaWYgKHByZUJhcnJpZXJPcCA9PSBOb29wT3A6OkRyYXcpCi0gICAgewot
ICAgICAgICBvdXQgPDwgIl9wcmViYXJyaWVyTm9vcERyYXciOwotICAgIH0KLSAgICBlbHNlIGlm
IChwcmVCYXJyaWVyT3AgPT0gTm9vcE9wOjpEaXNwYXRjaCkKLSAgICB7Ci0gICAgICAgIG91dCA8
PCAiX3ByZWJhcnJpZXJOb29wRGlzcGF0Y2giOwotICAgIH0KLQotICAgIGlmIChwb3N0QmFycmll
ck9wID09IE5vb3BPcDo6RHJhdykKLSAgICB7Ci0gICAgICAgIG91dCA8PCAiX3Bvc3RiYXJyaWVy
Tm9vcERyYXciOwotICAgIH0KLSAgICBlbHNlIGlmIChwb3N0QmFycmllck9wID09IE5vb3BPcDo6
RGlzcGF0Y2gpCi0gICAgewotICAgICAgICBvdXQgPDwgIl9wb3N0YmFycmllck5vb3BEaXNwYXRj
aCI7Ci0gICAgfQotCiAgICAgcmV0dXJuIG91dC5zdHIoKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2dsX3Rlc3RzL011bHRpc2FtcGxlVGVzdC5j
cHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvZ2xfdGVzdHMvTXVsdGlzYW1w
bGVUZXN0LmNwcAppbmRleCA5OTA0MzAwMTc5MmZmNTg0NWY5YmNkYjQ0MDFkYjM0ZmUyNTBlMWEz
Li4wNmQ3YjZlMGY4YTBiNjVlZGYzZWRkOTdiZGU4ZWY3MjJlNzJlY2Q4IDEwMDY0NAotLS0gYS9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvZ2xfdGVzdHMvTXVsdGlzYW1wbGVUZXN0
LmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvZ2xfdGVzdHMvTXVs
dGlzYW1wbGVUZXN0LmNwcApAQCAtNDg2LDYgKzQ4Niw2MTYgQEAgVEVTVF9QKE11bHRpc2FtcGxl
VGVzdEVTMywgUmVzb2x2ZVRvRkJPKQogICAgIEVYUEVDVF9QSVhFTF9DT0xPUl9ORUFSKGtXaW5k
b3dXaWR0aCAvIDIsIGtXaW5kb3dIZWlnaHQgLyAyLCBrUmVzdWx0LCAxKTsKIH0KIAorY2xhc3Mg
TXVsdGlzYW1wbGVSZXNvbHZlVGVzdCA6IHB1YmxpYyBBTkdMRVRlc3QKK3sKKyAgcHJvdGVjdGVk
OgorICAgIHN0YXRpYyBjb25zdCBHTENvbG9yIGtFWFBFQ1RFRF9SODsKKyAgICBzdGF0aWMgY29u
c3QgR0xDb2xvciBrRVhQRUNURURfUkc4OworICAgIHN0YXRpYyBjb25zdCBHTENvbG9yIGtFWFBF
Q1RFRF9SR0I4OworICAgIHN0YXRpYyBjb25zdCBHTENvbG9yIGtFWFBFQ1RFRF9SR0JBODsKKyAg
ICBzdGF0aWMgY29uc3QgR0xDb2xvcjMyRiBrRVhQRUNURURfUkY7CisgICAgc3RhdGljIGNvbnN0
IEdMQ29sb3IzMkYga0VYUEVDVEVEX1JHRjsKKyAgICBzdGF0aWMgY29uc3QgR0xDb2xvcjMyRiBr
RVhQRUNURURfUkdCRjsKKyAgICBzdGF0aWMgY29uc3QgR0xDb2xvcjMyRiBrRVhQRUNURURfUkdC
QUY7CisgICAgc3RhdGljIGNvbnN0ZXhwciBHTGludCBrV2lkdGggID0gMTM7CisgICAgc3RhdGlj
IGNvbnN0ZXhwciBHTGludCBrSGVpZ2h0ID0gMTE7CisKKyAgICBNdWx0aXNhbXBsZVJlc29sdmVU
ZXN0KCkge30KKworICAgIHN0cnVjdCBHTFJlc291cmNlcworICAgIHsKKyAgICAgICAgR0xGcmFt
ZWJ1ZmZlciBmYjsKKyAgICAgICAgR0xSZW5kZXJidWZmZXIgcmI7CisgICAgfTsKKworICAgIHZv
aWQgcmVzb2x2ZVRvRkJPKEdMZW51bSBmb3JtYXQsCisgICAgICAgICAgICAgICAgICAgICAgR0xp
bnQgc2FtcGxlcywKKyAgICAgICAgICAgICAgICAgICAgICBHTGludCB3aWR0aCwKKyAgICAgICAg
ICAgICAgICAgICAgICBHTGludCBoZWlnaHQsCisgICAgICAgICAgICAgICAgICAgICAgR0xSZXNv
dXJjZXMgJnJlc291cmNlcykKKyAgICB7CisgICAgICAgIGNvbnN0ZXhwciBjaGFyIGtWU1tdID0g
UiIoI3ZlcnNpb24gMzAwIGVzCisgICAgICAgIGxheW91dChsb2NhdGlvbiA9IDApIGluIHZlYzQg
cG9zaXRpb247CisgICAgICAgIHZvaWQgbWFpbigpIHsKKyAgICAgICAgICAgZ2xfUG9zaXRpb24g
PSBwb3NpdGlvbjsKKyAgICAgICAgfQorICAgICAgICApIjsKKworICAgICAgICBjb25zdGV4cHIg
Y2hhciBrRlNbXSA9IFIiKCN2ZXJzaW9uIDMwMCBlcworICAgICAgICBwcmVjaXNpb24gaGlnaHAg
ZmxvYXQ7CisgICAgICAgIG91dCB2ZWM0IGNvbG9yOworICAgICAgICB2b2lkIG1haW4oKSB7Cisg
ICAgICAgICAgIGNvbG9yID0gdmVjNCgwLjUsIDAuNiwgMC43LCAwLjgpOworICAgICAgICB9Cisg
ICAgICAgICkiOworCisgICAgICAgIEFOR0xFX0dMX1BST0dSQU0ocHJvZ3JhbSwga1ZTLCBrRlMp
OworCisgICAgICAgIC8vIE1ha2Ugc2FtcGxlcyA9IDQgbXVsdGktc2FtcGxlIGZyYW1lYnVmZmVy
LgorICAgICAgICBHTEZyYW1lYnVmZmVyIGZiMDsKKyAgICAgICAgZ2xCaW5kRnJhbWVidWZmZXIo
R0xfRlJBTUVCVUZGRVIsIGZiMCk7CisKKyAgICAgICAgR0xSZW5kZXJidWZmZXIgcmIwOworICAg
ICAgICBnbEJpbmRSZW5kZXJidWZmZXIoR0xfUkVOREVSQlVGRkVSLCByYjApOworICAgICAgICBn
bFJlbmRlcmJ1ZmZlclN0b3JhZ2VNdWx0aXNhbXBsZShHTF9SRU5ERVJCVUZGRVIsIHNhbXBsZXMs
IGZvcm1hdCwgd2lkdGgsIGhlaWdodCk7CisgICAgICAgIGdsRnJhbWVidWZmZXJSZW5kZXJidWZm
ZXIoR0xfRlJBTUVCVUZGRVIsIEdMX0NPTE9SX0FUVEFDSE1FTlQwLCBHTF9SRU5ERVJCVUZGRVIs
IHJiMCk7CisgICAgICAgIEVYUEVDVF9HTF9GUkFNRUJVRkZFUl9DT01QTEVURShHTF9GUkFNRUJV
RkZFUik7CisKKyAgICAgICAgLy8gTWFrZSBzYW1wbGVzID0gMCBtdWx0aS1zYW1wbGUgZnJhbWVi
dWZmZXIuCisgICAgICAgIGdsQmluZEZyYW1lYnVmZmVyKEdMX0ZSQU1FQlVGRkVSLCByZXNvdXJj
ZXMuZmIpOworCisgICAgICAgIGdsQmluZFJlbmRlcmJ1ZmZlcihHTF9SRU5ERVJCVUZGRVIsIHJl
c291cmNlcy5yYik7CisgICAgICAgIGdsUmVuZGVyYnVmZmVyU3RvcmFnZU11bHRpc2FtcGxlKEdM
X1JFTkRFUkJVRkZFUiwgMCwgZm9ybWF0LCB3aWR0aCwgaGVpZ2h0KTsKKyAgICAgICAgZ2xGcmFt
ZWJ1ZmZlclJlbmRlcmJ1ZmZlcihHTF9GUkFNRUJVRkZFUiwgR0xfQ09MT1JfQVRUQUNITUVOVDAs
IEdMX1JFTkRFUkJVRkZFUiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNv
dXJjZXMucmIpOworICAgICAgICBFWFBFQ1RfR0xfRlJBTUVCVUZGRVJfQ09NUExFVEUoR0xfRlJB
TUVCVUZGRVIpOworCisgICAgICAgIC8vIERyYXcgcXVhZCB0byBmYjAuCisgICAgICAgIGdsQmlu
ZEZyYW1lYnVmZmVyKEdMX0ZSQU1FQlVGRkVSLCBmYjApOworICAgICAgICBnbFZpZXdwb3J0KDAs
IDAsIHdpZHRoLCBoZWlnaHQpOworICAgICAgICBnbFVzZVByb2dyYW0ocHJvZ3JhbSk7CisgICAg
ICAgIEdMQnVmZmVyIGJ1ZjsKKyAgICAgICAgZ2xCaW5kQnVmZmVyKEdMX0FSUkFZX0JVRkZFUiwg
YnVmKTsKKworICAgICAgICBjb25zdGV4cHIgZmxvYXQgdmVydGljZXNbXSA9IHsKKyAgICAgICAg
ICAgIC0xLjBmLCAtMS4wZiwgMS4wZiwgLTEuMGYsIC0xLjBmLCAxLjBmLCAtMS4wZiwgMS4wZiwg
MS4wZiwgLTEuMGYsIDEuMGYsIDEuMGYsCisgICAgICAgIH07CisgICAgICAgIGdsQnVmZmVyRGF0
YShHTF9BUlJBWV9CVUZGRVIsIHNpemVvZih2ZXJ0aWNlcyksIHZlcnRpY2VzLCBHTF9TVEFUSUNf
RFJBVyk7CisgICAgICAgIGdsRW5hYmxlVmVydGV4QXR0cmliQXJyYXkoMCk7CisgICAgICAgIGds
VmVydGV4QXR0cmliUG9pbnRlcigwLCAyLCBHTF9GTE9BVCwgR0xfRkFMU0UsIDAsIG51bGxwdHIp
OworICAgICAgICBnbERyYXdBcnJheXMoR0xfVFJJQU5HTEVTLCAwLCA2KTsKKworICAgICAgICAv
LyBCbGl0IGZiMCB0byBmYjEuCisgICAgICAgIGdsQmluZEZyYW1lYnVmZmVyKEdMX1JFQURfRlJB
TUVCVUZGRVIsIGZiMCk7CisgICAgICAgIGdsQmluZEZyYW1lYnVmZmVyKEdMX0RSQVdfRlJBTUVC
VUZGRVIsIHJlc291cmNlcy5mYik7CisgICAgICAgIGdsQmxpdEZyYW1lYnVmZmVyKDAsIDAsIHdp
ZHRoLCBoZWlnaHQsIDAsIDAsIHdpZHRoLCBoZWlnaHQsIEdMX0NPTE9SX0JVRkZFUl9CSVQsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgIEdMX05FQVJFU1QpOworICAgICAgICBBU1NFUlRfR0xf
Tk9fRVJST1IoKTsKKworICAgICAgICAvLyBQcmVwIGZvciByZWFkIHBpeGVscy4KKyAgICAgICAg
Z2xCaW5kRnJhbWVidWZmZXIoR0xfUkVBRF9GUkFNRUJVRkZFUiwgcmVzb3VyY2VzLmZiKTsKKyAg
ICB9CisKKyAgICB2b2lkIHRlc3RSZXNvbHZlVG9VTm9ybUZCTyhHTGVudW0gZm9ybWF0LAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IEdMQ29sb3IgJmV4cGVjdGVkX2NvbG9y
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMaW50IHNhbXBsZXMsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgR0xpbnQgd2lkdGgsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgR0xpbnQgaGVpZ2h0KQorICAgIHsKKyAgICAgICAgR0xSZXNvdXJjZXMgcmVz
b3VyY2VzOworICAgICAgICByZXNvbHZlVG9GQk8oZm9ybWF0LCBzYW1wbGVzLCB3aWR0aCwgaGVp
Z2h0LCByZXNvdXJjZXMpOworCisgICAgICAgIC8vIENoZWNrIHRoZSByZXN1bHRzCisgICAgICAg
IGZvciAoR0xpbnQgeSA9IDA7IHkgPCBrSGVpZ2h0OyArK3kpCisgICAgICAgIHsKKyAgICAgICAg
ICAgIGZvciAoR0xpbnQgeCA9IDA7IHggPCBrV2lkdGg7ICsreCkKKyAgICAgICAgICAgIHsKKyAg
ICAgICAgICAgICAgICBFWFBFQ1RfUElYRUxfQ09MT1JfTkVBUih4LCB5LCBleHBlY3RlZF9jb2xv
ciwgMik7CisgICAgICAgICAgICB9CisgICAgICAgIH0KKyAgICAgICAgQVNTRVJUX0dMX05PX0VS
Uk9SKCk7CisgICAgfQorCisgICAgdm9pZCB0ZXN0UmVzb2x2ZVRvSGFsZkZCTyhHTGVudW0gZm9y
bWF0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgR0xDb2xvcjMyRiAmZXhw
ZWN0ZWRfY29sb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTGludCBzYW1wbGVz
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xpbnQgd2lkdGgsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBHTGludCBoZWlnaHQpCisgICAgeworICAgICAgICBpZiAoIUlz
R0xFeHRlbnNpb25FbmFibGVkKCJHTF9FWFRfY29sb3JfYnVmZmVyX2hhbGZfZmxvYXQiKSkKKyAg
ICAgICAgeworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CisKKyAgICAgICAgR0xSZXNv
dXJjZXMgcmVzb3VyY2VzOworICAgICAgICByZXNvbHZlVG9GQk8oZm9ybWF0LCBzYW1wbGVzLCB3
aWR0aCwgaGVpZ2h0LCByZXNvdXJjZXMpOworCisgICAgICAgIC8vIENoZWNrIHRoZSByZXN1bHRz
CisgICAgICAgIGZvciAoR0xpbnQgeSA9IDA7IHkgPCBrSGVpZ2h0OyArK3kpCisgICAgICAgIHsK
KyAgICAgICAgICAgIGZvciAoR0xpbnQgeCA9IDA7IHggPCBrV2lkdGg7ICsreCkKKyAgICAgICAg
ICAgIHsKKyAgICAgICAgICAgICAgICBFWFBFQ1RfUElYRUxfQ09MT1IzMkZfTkVBUih4LCB5LCBl
eHBlY3RlZF9jb2xvciwgMi4wZiAvIDI1NS4wZik7CisgICAgICAgICAgICB9CisgICAgICAgIH0K
KyAgICAgICAgQVNTRVJUX0dMX05PX0VSUk9SKCk7CisgICAgfQorCisgICAgdm9pZCB0ZXN0UmVz
b2x2ZVRvRmxvYXRGQk8oR0xlbnVtIGZvcm1hdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBjb25zdCBHTENvbG9yMzJGICZleHBlY3RlZF9jb2xvciwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBHTGludCBzYW1wbGVzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIEdMaW50IHdpZHRoLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMaW50IGhl
aWdodCkKKyAgICB7CisgICAgICAgIGlmICghSXNHTEV4dGVuc2lvbkVuYWJsZWQoIkdMX0NIUk9N
SVVNX2NvbG9yX2J1ZmZlcl9mbG9hdF9yZ2JhIikpCisgICAgICAgIHsKKyAgICAgICAgICAgIHJl
dHVybjsKKyAgICAgICAgfQorCisgICAgICAgIEdMUmVzb3VyY2VzIHJlc291cmNlczsKKyAgICAg
ICAgcmVzb2x2ZVRvRkJPKGZvcm1hdCwgc2FtcGxlcywgd2lkdGgsIGhlaWdodCwgcmVzb3VyY2Vz
KTsKKworICAgICAgICAvLyBDaGVjayB0aGUgcmVzdWx0cworICAgICAgICBmb3IgKEdMaW50IHkg
PSAwOyB5IDwga0hlaWdodDsgKyt5KQorICAgICAgICB7CisgICAgICAgICAgICBmb3IgKEdMaW50
IHggPSAwOyB4IDwga1dpZHRoOyArK3gpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAg
RVhQRUNUX1BJWEVMX0NPTE9SMzJGX05FQVIoeCwgeSwgZXhwZWN0ZWRfY29sb3IsIDIuMGYgLyAy
NTUuMGYpOworICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgICAgIEFTU0VSVF9HTF9OT19F
UlJPUigpOworICAgIH0KKworICAgIHZvaWQgdGVzdFJlc29sdmVUb1JHQkZsb2F0RkJPKEdMZW51
bSBmb3JtYXQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgR0xDb2xv
cjMyRiAmZXhwZWN0ZWRfY29sb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
R0xpbnQgc2FtcGxlcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTGludCB3
aWR0aCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTGludCBoZWlnaHQpCisg
ICAgeworICAgICAgICBpZiAoIUlzR0xFeHRlbnNpb25FbmFibGVkKCJHTF9DSFJPTUlVTV9jb2xv
cl9idWZmZXJfZmxvYXRfcmdiIikpCisgICAgICAgIHsKKyAgICAgICAgICAgIHJldHVybjsKKyAg
ICAgICAgfQorCisgICAgICAgIEdMUmVzb3VyY2VzIHJlc291cmNlczsKKyAgICAgICAgcmVzb2x2
ZVRvRkJPKGZvcm1hdCwgc2FtcGxlcywgd2lkdGgsIGhlaWdodCwgcmVzb3VyY2VzKTsKKworICAg
ICAgICAvLyBDaGVjayB0aGUgcmVzdWx0cworICAgICAgICBmb3IgKEdMaW50IHkgPSAwOyB5IDwg
a0hlaWdodDsgKyt5KQorICAgICAgICB7CisgICAgICAgICAgICBmb3IgKEdMaW50IHggPSAwOyB4
IDwga1dpZHRoOyArK3gpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgRVhQRUNUX1BJ
WEVMX0NPTE9SMzJGX05FQVIoeCwgeSwgZXhwZWN0ZWRfY29sb3IsIDIuMGYgLyAyNTUuMGYpOwor
ICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgICAgIEFTU0VSVF9HTF9OT19FUlJPUigpOwor
ICAgIH0KKworICAgIHZvaWQgcGVlbERlcHRoKEdMaW50IGNvbG9yTG9jKQorICAgIHsKKyAgICAg
ICAgLy8gRHJhdyBmdWxsIHF1YWRzIGZyb20gZnJvbnQgdG8gYmFjayBhbmQgaW5jcmVhc2luZyBk
ZXB0aHMKKyAgICAgICAgLy8gd2l0aCBkZXB0aCB0ZXN0ID0gbGVzcy4KKyAgICAgICAgZ2xEZXB0
aE1hc2soR0xfRkFMU0UpOworICAgICAgICBjb25zdGV4cHIgaW50IHN0ZXBzID0gNjQ7CisgICAg
ICAgIGZvciAoaW50IGkgPSAwOyBpIDwgc3RlcHM7ICsraSkKKyAgICAgICAgeworICAgICAgICAg
ICAgZmxvYXQgbCA9IGZsb2F0KGkpIC8gZmxvYXQoc3RlcHMpOworICAgICAgICAgICAgZmxvYXQg
YyA9IGw7CisgICAgICAgICAgICBmbG9hdCB6ID0gYyAqIDIuMGYgLSAxLjBmOworICAgICAgICAg
ICAgZ2xWZXJ0ZXhBdHRyaWI0ZigxLCAwLCAwLCB6LCAwKTsKKyAgICAgICAgICAgIGdsVW5pZm9y
bTRmKGNvbG9yTG9jLCBjLCBjLCBjLCBjKTsKKyAgICAgICAgICAgIGdsRHJhd0FycmF5cyhHTF9U
UklBTkdMRVMsIDAsIDYpOworICAgICAgICB9CisgICAgICAgIGdsRGVwdGhNYXNrKEdMX1RSVUUp
OworICAgIH0KKworICAgIHZvaWQgdGVzdFJlc29sdmVEZXB0aFRvRkJPKEdMZW51bSBmb3JtYXQs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xlbnVtIGF0dGFjaG1lbnQsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xpbnQgc2FtcGxlcywKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBHTGludCB3aWR0aCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBHTGludCBoZWlnaHQpCisgICAgeworICAgICAgICBjb25zdGV4cHIgY2hhciBrVlNbXSA9
IFIiKCN2ZXJzaW9uIDMwMCBlcworICAgICAgICBsYXlvdXQobG9jYXRpb24gPSAwKSBpbiB2ZWM0
IHBvc2l0aW9uOworICAgICAgICB2b2lkIG1haW4oKSB7CisgICAgICAgICAgIGdsX1Bvc2l0aW9u
ID0gcG9zaXRpb247CisgICAgICAgIH0KKyAgICAgICAgKSI7CisKKyAgICAgICAgY29uc3RleHBy
IGNoYXIga0ZTW10gPSBSIigjdmVyc2lvbiAzMDAgZXMKKyAgICAgICAgcHJlY2lzaW9uIGhpZ2hw
IGZsb2F0OworICAgICAgICBvdXQgdmVjNCBjb2xvcjsKKyAgICAgICAgdm9pZCBtYWluKCkgewor
ICAgICAgICAgICBjb2xvciA9IHZlYzQoMC41LCAwLjYsIDAuNywgMC44KTsKKyAgICAgICAgfQor
ICAgICAgICApIjsKKworICAgICAgICBjb25zdGV4cHIgY2hhciBrRGVwdGhWU1tdID0gUiIoI3Zl
cnNpb24gMzAwIGVzCisgICAgICAgIGxheW91dChsb2NhdGlvbiA9IDApIGluIHZlYzQgcG9zaXRp
b247CisgICAgICAgIGxheW91dChsb2NhdGlvbiA9IDEpIGluIHZlYzQgb2Zmc2V0OworICAgICAg
ICB2b2lkIG1haW4oKSB7CisgICAgICAgICAgIGdsX1Bvc2l0aW9uID0gcG9zaXRpb24gKyBvZmZz
ZXQ7CisgICAgICAgIH0KKyAgICAgICAgKSI7CisKKyAgICAgICAgY29uc3RleHByIGNoYXIga0Rl
cHRoRlNbXSA9IFIiKCN2ZXJzaW9uIDMwMCBlcworICAgICAgICBwcmVjaXNpb24gaGlnaHAgZmxv
YXQ7CisgICAgICAgIHVuaWZvcm0gdmVjNCBjb2xvcjsKKyAgICAgICAgb3V0IHZlYzQgb3V0Q29s
b3I7CisgICAgICAgIHZvaWQgbWFpbigpIHsKKyAgICAgICAgICAgb3V0Q29sb3IgPSBjb2xvcjsK
KyAgICAgICAgfQorICAgICAgICApIjsKKworICAgICAgICBBTkdMRV9HTF9QUk9HUkFNKHByb2dy
YW0sIGtWUywga0ZTKTsKKyAgICAgICAgQU5HTEVfR0xfUFJPR1JBTShkZXB0aFByb2dyYW0sIGtE
ZXB0aFZTLCBrRGVwdGhGUyk7CisKKyAgICAgICAgLy8gTWFrZSBzYW1wbGVzID0gNCBtdWx0aS1z
YW1wbGUgZnJhbWVidWZmZXIuCisgICAgICAgIEdMRnJhbWVidWZmZXIgZmIwOworICAgICAgICBn
bEJpbmRGcmFtZWJ1ZmZlcihHTF9GUkFNRUJVRkZFUiwgZmIwKTsKKworICAgICAgICBHTFJlbmRl
cmJ1ZmZlciByYjA7CisgICAgICAgIGdsQmluZFJlbmRlcmJ1ZmZlcihHTF9SRU5ERVJCVUZGRVIs
IHJiMCk7CisgICAgICAgIGdsUmVuZGVyYnVmZmVyU3RvcmFnZU11bHRpc2FtcGxlKEdMX1JFTkRF
UkJVRkZFUiwgc2FtcGxlcywgR0xfUkdCQTgsIHdpZHRoLCBoZWlnaHQpOworICAgICAgICBnbEZy
YW1lYnVmZmVyUmVuZGVyYnVmZmVyKEdMX0ZSQU1FQlVGRkVSLCBHTF9DT0xPUl9BVFRBQ0hNRU5U
MCwgR0xfUkVOREVSQlVGRkVSLCByYjApOworCisgICAgICAgIEdMUmVuZGVyYnVmZmVyIGRiMDsK
KyAgICAgICAgZ2xCaW5kUmVuZGVyYnVmZmVyKEdMX1JFTkRFUkJVRkZFUiwgZGIwKTsKKyAgICAg
ICAgZ2xSZW5kZXJidWZmZXJTdG9yYWdlTXVsdGlzYW1wbGUoR0xfUkVOREVSQlVGRkVSLCBzYW1w
bGVzLCBmb3JtYXQsIHdpZHRoLCBoZWlnaHQpOworICAgICAgICBnbEZyYW1lYnVmZmVyUmVuZGVy
YnVmZmVyKEdMX0ZSQU1FQlVGRkVSLCBhdHRhY2htZW50LCBHTF9SRU5ERVJCVUZGRVIsIGRiMCk7
CisKKyAgICAgICAgRVhQRUNUX0dMX0ZSQU1FQlVGRkVSX0NPTVBMRVRFKEdMX0ZSQU1FQlVGRkVS
KTsKKworICAgICAgICAvLyBNYWtlIHNhbXBsZXMgPSAwIG11bHRpLXNhbXBsZSBmcmFtZWJ1ZmZl
ci4KKyAgICAgICAgR0xGcmFtZWJ1ZmZlciBmYjE7CisgICAgICAgIGdsQmluZEZyYW1lYnVmZmVy
KEdMX0ZSQU1FQlVGRkVSLCBmYjEpOworCisgICAgICAgIEdMUmVuZGVyYnVmZmVyIHJiMTsKKyAg
ICAgICAgZ2xCaW5kUmVuZGVyYnVmZmVyKEdMX1JFTkRFUkJVRkZFUiwgcmIxKTsKKyAgICAgICAg
Z2xSZW5kZXJidWZmZXJTdG9yYWdlKEdMX1JFTkRFUkJVRkZFUiwgR0xfUkdCQTgsIHdpZHRoLCBo
ZWlnaHQpOworICAgICAgICBnbEZyYW1lYnVmZmVyUmVuZGVyYnVmZmVyKEdMX0ZSQU1FQlVGRkVS
LCBHTF9DT0xPUl9BVFRBQ0hNRU5UMCwgR0xfUkVOREVSQlVGRkVSLCByYjEpOworICAgICAgICBF
WFBFQ1RfR0xfRlJBTUVCVUZGRVJfQ09NUExFVEUoR0xfRlJBTUVCVUZGRVIpOworCisgICAgICAg
IEdMUmVuZGVyYnVmZmVyIGRiMTsKKyAgICAgICAgZ2xCaW5kUmVuZGVyYnVmZmVyKEdMX1JFTkRF
UkJVRkZFUiwgZGIxKTsKKyAgICAgICAgZ2xSZW5kZXJidWZmZXJTdG9yYWdlKEdMX1JFTkRFUkJV
RkZFUiwgZm9ybWF0LCB3aWR0aCwgaGVpZ2h0KTsKKyAgICAgICAgZ2xGcmFtZWJ1ZmZlclJlbmRl
cmJ1ZmZlcihHTF9GUkFNRUJVRkZFUiwgYXR0YWNobWVudCwgR0xfUkVOREVSQlVGRkVSLCBkYjEp
OworCisgICAgICAgIEVYUEVDVF9HTF9GUkFNRUJVRkZFUl9DT01QTEVURShHTF9GUkFNRUJVRkZF
Uik7CisKKyAgICAgICAgLy8gRHJhdyBxdWFkIHRvIGZiMC4KKyAgICAgICAgZ2xCaW5kRnJhbWVi
dWZmZXIoR0xfRlJBTUVCVUZGRVIsIGZiMCk7CisgICAgICAgIGdsVmlld3BvcnQoMCwgMCwgd2lk
dGgsIGhlaWdodCk7CisgICAgICAgIGdsQ2xlYXJDb2xvcigxLCAxLCAxLCAxKTsKKyAgICAgICAg
Z2xVc2VQcm9ncmFtKHByb2dyYW0pOworCisgICAgICAgIEdMVmVydGV4QXJyYXkgdmEwOworICAg
ICAgICBnbEJpbmRWZXJ0ZXhBcnJheSh2YTApOworCisgICAgICAgIEdMQnVmZmVyIGJ1ZjA7Cisg
ICAgICAgIGdsQmluZEJ1ZmZlcihHTF9BUlJBWV9CVUZGRVIsIGJ1ZjApOworCisgICAgICAgIC8v
IGNsYW5nLWZvcm1hdCBvZmYKKyAgICAgICAgY29uc3RleHByIGZsb2F0IHZlcnRpY2VzW10gPSB7
CisgICAgICAgICAgICAtMS4wZiwgLTEuMGYsIC0xLjAsCisgICAgICAgICAgICAgMS4wZiwgLTEu
MGYsICAwLjAsCisgICAgICAgICAgICAtMS4wZiwgIDEuMGYsICAwLjAsCisgICAgICAgICAgICAt
MS4wZiwgIDEuMGYsICAwLjAsCisgICAgICAgICAgICAgMS4wZiwgLTEuMGYsICAwLjAsCisgICAg
ICAgICAgICAgMS4wZiwgIDEuMGYsICAxLjAsCisgICAgICAgIH07CisgICAgICAgIC8vIGNsYW5n
LWZvcm1hdCBvbgorCisgICAgICAgIGdsQnVmZmVyRGF0YShHTF9BUlJBWV9CVUZGRVIsIHNpemVv
Zih2ZXJ0aWNlcyksIHZlcnRpY2VzLCBHTF9TVEFUSUNfRFJBVyk7CisgICAgICAgIGdsRW5hYmxl
VmVydGV4QXR0cmliQXJyYXkoMCk7CisgICAgICAgIGdsVmVydGV4QXR0cmliUG9pbnRlcigwLCAz
LCBHTF9GTE9BVCwgR0xfRkFMU0UsIDAsIG51bGxwdHIpOworICAgICAgICBnbEVuYWJsZShHTF9E
RVBUSF9URVNUKTsKKyAgICAgICAgZ2xEZXB0aEZ1bmMoR0xfQUxXQVlTKTsKKyAgICAgICAgZ2xE
cmF3QXJyYXlzKEdMX1RSSUFOR0xFUywgMCwgNik7CisKKyAgICAgICAgLy8gQmxpdCBmYjAgdG8g
ZmIxLgorICAgICAgICBnbEJpbmRGcmFtZWJ1ZmZlcihHTF9SRUFEX0ZSQU1FQlVGRkVSLCBmYjAp
OworICAgICAgICBnbEJpbmRGcmFtZWJ1ZmZlcihHTF9EUkFXX0ZSQU1FQlVGRkVSLCBmYjEpOwor
ICAgICAgICBnbEJsaXRGcmFtZWJ1ZmZlcigwLCAwLCB3aWR0aCwgaGVpZ2h0LCAwLCAwLCB3aWR0
aCwgaGVpZ2h0LCBHTF9ERVBUSF9CVUZGRVJfQklULAorICAgICAgICAgICAgICAgICAgICAgICAg
ICBHTF9ORUFSRVNUKTsKKyAgICAgICAgQVNTRVJUX0dMX05PX0VSUk9SKCk7CisKKyAgICAgICAg
R0xWZXJ0ZXhBcnJheSB2YTE7CisgICAgICAgIGdsQmluZFZlcnRleEFycmF5KHZhMSk7CisKKyAg
ICAgICAgLy8gY2xhbmctZm9ybWF0IG9mZgorICAgICAgICBjb25zdGV4cHIgZmxvYXQgZGVwdGhW
ZXJ0aWNlc1tdID0geworICAgICAgICAgICAgLTEuMGYsIC0xLjBmLAorICAgICAgICAgICAgIDEu
MGYsIC0xLjBmLAorICAgICAgICAgICAgLTEuMGYsICAxLjBmLAorICAgICAgICAgICAgLTEuMGYs
ICAxLjBmLAorICAgICAgICAgICAgIDEuMGYsIC0xLjBmLAorICAgICAgICAgICAgIDEuMGYsICAx
LjBmLAorICAgICAgICB9OworICAgICAgICAvLyBjbGFuZy1mb3JtYXQgb24KKworICAgICAgICBH
TEJ1ZmZlciBidWYxOworICAgICAgICBnbEJpbmRCdWZmZXIoR0xfQVJSQVlfQlVGRkVSLCBidWYx
KTsKKyAgICAgICAgZ2xCdWZmZXJEYXRhKEdMX0FSUkFZX0JVRkZFUiwgc2l6ZW9mKGRlcHRoVmVy
dGljZXMpLCBkZXB0aFZlcnRpY2VzLCBHTF9TVEFUSUNfRFJBVyk7CisgICAgICAgIGdsRW5hYmxl
VmVydGV4QXR0cmliQXJyYXkoMCk7CisgICAgICAgIGdsVmVydGV4QXR0cmliUG9pbnRlcigwLCAy
LCBHTF9GTE9BVCwgR0xfRkFMU0UsIDAsIG51bGxwdHIpOworCisgICAgICAgIGdsVXNlUHJvZ3Jh
bShkZXB0aFByb2dyYW0pOworICAgICAgICBHTGludCBjb2xvckxvYyA9IGdsR2V0VW5pZm9ybUxv
Y2F0aW9uKGRlcHRoUHJvZ3JhbSwgImNvbG9yIik7CisKKyAgICAgICAgLy8gRXh0cmFjdCB0aGUg
ZGVwdGggcmVzdWx0cy4KKyAgICAgICAgZ2xCaW5kRnJhbWVidWZmZXIoR0xfRlJBTUVCVUZGRVIs
IGZiMSk7CisgICAgICAgIGdsQ2xlYXIoR0xfQ09MT1JfQlVGRkVSX0JJVCk7CisgICAgICAgIGds
RGVwdGhGdW5jKEdMX0xFU1MpOworICAgICAgICBwZWVsRGVwdGgoY29sb3JMb2MpOworICAgICAg
ICBzdGQ6OnZlY3RvcjxHTENvbG9yPiBhY3R1YWwod2lkdGggKiBoZWlnaHQpOworICAgICAgICBn
bFJlYWRQaXhlbHMoMCwgMCwgd2lkdGgsIGhlaWdodCwgR0xfUkdCQSwgR0xfVU5TSUdORURfQllU
RSwgYWN0dWFsLmRhdGEoKSk7CisKKyAgICAgICAgLy8gUmVuZGVyIHdoYXQgc2hvdWxkIGJlIGEg
c2ltaWxhciByZXN1bHQgdG8gdGhlIG5vbi1tdWx0aS1zYW1wbGVkIGZiCisgICAgICAgIGdsQmlu
ZFZlcnRleEFycmF5KHZhMCk7CisgICAgICAgIGdsRGVwdGhGdW5jKEdMX0FMV0FZUyk7CisgICAg
ICAgIGdsVXNlUHJvZ3JhbShwcm9ncmFtKTsKKyAgICAgICAgZ2xEcmF3QXJyYXlzKEdMX1RSSUFO
R0xFUywgMCwgNik7CisKKyAgICAgICAgLy8gRXh0cmFjdCB0aGUgZXhwZWN0ZWQgZGVwdGggcmVz
dWx0cy4KKyAgICAgICAgZ2xCaW5kVmVydGV4QXJyYXkodmExKTsKKyAgICAgICAgZ2xVc2VQcm9n
cmFtKGRlcHRoUHJvZ3JhbSk7CisgICAgICAgIGdsQ2xlYXIoR0xfQ09MT1JfQlVGRkVSX0JJVCk7
CisgICAgICAgIGdsRGVwdGhGdW5jKEdMX0xFU1MpOworICAgICAgICBwZWVsRGVwdGgoY29sb3JM
b2MpOworICAgICAgICBzdGQ6OnZlY3RvcjxHTENvbG9yPiBleHBlY3RlZCh3aWR0aCAqIGhlaWdo
dCk7CisgICAgICAgIGdsUmVhZFBpeGVscygwLCAwLCB3aWR0aCwgaGVpZ2h0LCBHTF9SR0JBLCBH
TF9VTlNJR05FRF9CWVRFLCBleHBlY3RlZC5kYXRhKCkpOworCisgICAgICAgIGZvciAoc2l6ZV90
IGkgPSAwOyBpIDwgZXhwZWN0ZWQuc2l6ZSgpOyArK2kpCisgICAgICAgIHsKKyAgICAgICAgICAg
IEVYUEVDVF9ORUFSKGV4cGVjdGVkW2ldLlIsIGFjdHVhbFtpXS5SLCA4KQorICAgICAgICAgICAg
ICAgIDw8ICJhdCAiIDw8IChpICUgd2lkdGgpIDw8ICIsIiA8PCAoaSAvIHdpZHRoKTsKKyAgICAg
ICAgfQorCisgICAgICAgIC8vIFZlcmlmeSB3ZSByZWFkIHRoZSBkZXB0aCBidWZmZXIuCisgICAg
ICAgIGNvbnN0IEdMaW50IG1pbkRpbWVuc2lvbiA9IHN0ZDo6bWluKHdpZHRoLCBoZWlnaHQpOwor
ICAgICAgICBmb3IgKEdMaW50IGkgPSAxOyBpIDwgbWluRGltZW5zaW9uOyArK2kpCisgICAgICAg
IHsKKyAgICAgICAgICAgIGNvbnN0IEdMQ29sb3IgJmMxID0gZXhwZWN0ZWRbaSAtIDFdOworICAg
ICAgICAgICAgY29uc3QgR0xDb2xvciAmYzIgPSBleHBlY3RlZFtpICogd2lkdGggKyBpXTsKKyAg
ICAgICAgICAgIEVYUEVDVF9MVChjMS5SLCBjMi5SKTsKKyAgICAgICAgfQorICAgICAgICBBU1NF
UlRfR0xfTk9fRVJST1IoKTsKKyAgICB9Cit9OworCisvLyBUaGVzZSBjb2xvcnMgbWF0Y2ggdGhl
IHNoYWRlciBpbiByZXNvbHZlVG9GQk8gd2hpY2ggcmV0dXJucyAoMC41LCAwLjYsIDAuNywgMC44
KS4KK2NvbnN0IEdMQ29sb3IgTXVsdGlzYW1wbGVSZXNvbHZlVGVzdDo6a0VYUEVDVEVEX1I4KDEy
OCwgMCwgMCwgMjU1KTsKK2NvbnN0IEdMQ29sb3IgTXVsdGlzYW1wbGVSZXNvbHZlVGVzdDo6a0VY
UEVDVEVEX1JHOCgxMjgsIDE1MywgMCwgMjU1KTsKK2NvbnN0IEdMQ29sb3IgTXVsdGlzYW1wbGVS
ZXNvbHZlVGVzdDo6a0VYUEVDVEVEX1JHQjgoMTI4LCAxNTMsIDE3OCwgMjU1KTsKK2NvbnN0IEdM
Q29sb3IgTXVsdGlzYW1wbGVSZXNvbHZlVGVzdDo6a0VYUEVDVEVEX1JHQkE4KDEyOCwgMTUzLCAx
NzgsIDIwNCk7Citjb25zdCBHTENvbG9yMzJGIE11bHRpc2FtcGxlUmVzb2x2ZVRlc3Q6OmtFWFBF
Q1RFRF9SRigwLjVmLCAwLjBmLCAwLjBmLCAxLjBmKTsKK2NvbnN0IEdMQ29sb3IzMkYgTXVsdGlz
YW1wbGVSZXNvbHZlVGVzdDo6a0VYUEVDVEVEX1JHRigwLjVmLCAwLjZmLCAwLjBmLCAxLjBmKTsK
K2NvbnN0IEdMQ29sb3IzMkYgTXVsdGlzYW1wbGVSZXNvbHZlVGVzdDo6a0VYUEVDVEVEX1JHQkYo
MC41ZiwgMC42ZiwgMC43ZiwgMS4wZik7Citjb25zdCBHTENvbG9yMzJGIE11bHRpc2FtcGxlUmVz
b2x2ZVRlc3Q6OmtFWFBFQ1RFRF9SR0JBRigwLjVmLCAwLjZmLCAwLjdmLCAwLjhmKTsKKworLy8g
VGVzdCB3ZSBjYW4gcmVuZGVyIHRvIGFuZCByZXNvbHZlIGFuIFJHQkE4IHJlbmRlcmJ1ZmZlcgor
VEVTVF9QKE11bHRpc2FtcGxlUmVzb2x2ZVRlc3QsIFJlc29sdmVSR0JBOFRvRkJPNFNhbXBsZXMp
Cit7CisgICAgdGVzdFJlc29sdmVUb1VOb3JtRkJPKEdMX1JHQkE4LCBrRVhQRUNURURfUkdCQTgs
IDQsIGtXaWR0aCwga0hlaWdodCk7Cit9CisKKy8vIFRlc3Qgd2UgY2FuIHJlbmRlciB0byBhbmQg
cmVzb2x2ZSBhbiBSR0I4IHJlbmRlcmJ1ZmZlcgorVEVTVF9QKE11bHRpc2FtcGxlUmVzb2x2ZVRl
c3QsIFJlc29sdmVSR0I4VG9GQk80U2FtcGxlcykKK3sKKyAgICB0ZXN0UmVzb2x2ZVRvVU5vcm1G
Qk8oR0xfUkdCOCwga0VYUEVDVEVEX1JHQjgsIDQsIGtXaWR0aCwga0hlaWdodCk7Cit9CisKKy8v
IFRlc3Qgd2UgY2FuIHJlbmRlciB0byBhbmQgcmVzb2x2ZSBhbiBSRzggcmVuZGVyYnVmZmVyCitU
RVNUX1AoTXVsdGlzYW1wbGVSZXNvbHZlVGVzdCwgUmVzb2x2ZVJHOFRvRkJPNFNhbXBsZXMpCit7
CisgICAgdGVzdFJlc29sdmVUb1VOb3JtRkJPKEdMX1JHOCwga0VYUEVDVEVEX1JHOCwgNCwga1dp
ZHRoLCBrSGVpZ2h0KTsKK30KKworLy8gVGVzdCB3ZSBjYW4gcmVuZGVyIHRvIGFuZCByZXNvbHZl
IGFuIFI4IHJlbmRlcmJ1ZmZlcgorVEVTVF9QKE11bHRpc2FtcGxlUmVzb2x2ZVRlc3QsIFJlc29s
dmVSOFRvRkJPNFNhbXBsZXMpCit7CisgICAgdGVzdFJlc29sdmVUb1VOb3JtRkJPKEdMX1I4LCBr
RVhQRUNURURfUjgsIDQsIGtXaWR0aCwga0hlaWdodCk7Cit9CisKKy8vIFRlc3Qgd2UgY2FuIHJl
bmRlciB0byBhbmQgcmVzb2x2ZSBhbiBSMTZGIHJlbmRlcmJ1ZmZlcgorVEVTVF9QKE11bHRpc2Ft
cGxlUmVzb2x2ZVRlc3QsIFJlc29sdmVSMTZGVG9GQk80U2FtcGxlcykKK3sKKyAgICB0ZXN0UmVz
b2x2ZVRvSGFsZkZCTyhHTF9SMTZGLCBrRVhQRUNURURfUkYsIDQsIGtXaWR0aCwga0hlaWdodCk7
Cit9CisKKy8vIFRlc3Qgd2UgY2FuIHJlbmRlciB0byBhbmQgcmVzb2x2ZSBhbiBSRzE2RiByZW5k
ZXJidWZmZXIKK1RFU1RfUChNdWx0aXNhbXBsZVJlc29sdmVUZXN0LCBSZXNvbHZlUkcxNkZUb0ZC
TzRTYW1wbGVzKQoreworICAgIHRlc3RSZXNvbHZlVG9IYWxmRkJPKEdMX1JHMTZGLCBrRVhQRUNU
RURfUkdGLCA0LCBrV2lkdGgsIGtIZWlnaHQpOworfQorCisvLyBUZXN0IHdlIGNhbiByZW5kZXIg
dG8gYW5kIHJlc29sdmUgYW4gUkdCMTZGIHJlbmRlcmJ1ZmZlcgorVEVTVF9QKE11bHRpc2FtcGxl
UmVzb2x2ZVRlc3QsIFJlc29sdmVSR0IxNkZUb0ZCTzRTYW1wbGVzKQoreworICAgIHRlc3RSZXNv
bHZlVG9IYWxmRkJPKEdMX1JHQjE2Riwga0VYUEVDVEVEX1JHQkYsIDQsIGtXaWR0aCwga0hlaWdo
dCk7Cit9CisKKy8vIFRlc3Qgd2UgY2FuIHJlbmRlciB0byBhbmQgcmVzb2x2ZSBhbiBSR0JBMTZG
IHJlbmRlcmJ1ZmZlcgorVEVTVF9QKE11bHRpc2FtcGxlUmVzb2x2ZVRlc3QsIFJlc29sdmVSR0JB
MTZGVG9GQk80U2FtcGxlcykKK3sKKyAgICB0ZXN0UmVzb2x2ZVRvSGFsZkZCTyhHTF9SR0JBMTZG
LCBrRVhQRUNURURfUkdCQUYsIDQsIGtXaWR0aCwga0hlaWdodCk7Cit9CisKKy8vIFRlc3Qgd2Ug
Y2FuIHJlbmRlciB0byBhbmQgcmVzb2x2ZSBhbiBSMzJGIHJlbmRlcmJ1ZmZlcgorVEVTVF9QKE11
bHRpc2FtcGxlUmVzb2x2ZVRlc3QsIFJlc29sdmVSMzJGVG9GQk80U2FtcGxlcykKK3sKKyAgICB0
ZXN0UmVzb2x2ZVRvRmxvYXRGQk8oR0xfUjMyRiwga0VYUEVDVEVEX1JGLCA0LCBrV2lkdGgsIGtI
ZWlnaHQpOworfQorCisvLyBUZXN0IHdlIGNhbiByZW5kZXIgdG8gYW5kIHJlc29sdmUgYW4gUkcz
MkYgcmVuZGVyYnVmZmVyCitURVNUX1AoTXVsdGlzYW1wbGVSZXNvbHZlVGVzdCwgUmVzb2x2ZVJH
MzJGVG9GQk80U2FtcGxlcykKK3sKKyAgICB0ZXN0UmVzb2x2ZVRvRmxvYXRGQk8oR0xfUkczMkYs
IGtFWFBFQ1RFRF9SR0YsIDQsIGtXaWR0aCwga0hlaWdodCk7Cit9CisKKy8vIFRlc3Qgd2UgY2Fu
IHJlbmRlciB0byBhbmQgcmVzb2x2ZSBhbiBSR0IzMkYgcmVuZGVyYnVmZmVyCitURVNUX1AoTXVs
dGlzYW1wbGVSZXNvbHZlVGVzdCwgUmVzb2x2ZVJHQjMyRlRvRkJPNFNhbXBsZXMpCit7CisgICAg
dGVzdFJlc29sdmVUb1JHQkZsb2F0RkJPKEdMX1JHQjMyRiwga0VYUEVDVEVEX1JHQkYsIDQsIGtX
aWR0aCwga0hlaWdodCk7Cit9CisKKy8vIFRlc3Qgd2UgY2FuIHJlbmRlciB0byBhbmQgcmVzb2x2
ZSBhbiBSR0JBMzJGIHJlbmRlcmJ1ZmZlcgorVEVTVF9QKE11bHRpc2FtcGxlUmVzb2x2ZVRlc3Qs
IFJlc29sdmVSR0JBMzJGVG9GQk80U2FtcGxlcykKK3sKKyAgICB0ZXN0UmVzb2x2ZVRvRmxvYXRG
Qk8oR0xfUkdCQTMyRiwga0VYUEVDVEVEX1JHQkFGLCA0LCBrV2lkdGgsIGtIZWlnaHQpOworfQor
CitURVNUX1AoTXVsdGlzYW1wbGVSZXNvbHZlVGVzdCwgUmVzb2x2ZUQzMkZTOEY0U2FtcGxlcykK
K3sKKyAgICB0ZXN0UmVzb2x2ZURlcHRoVG9GQk8oR0xfREVQVEgzMkZfU1RFTkNJTDgsIEdMX0RF
UFRIX1NURU5DSUxfQVRUQUNITUVOVCwgNCwga1dpZHRoLCBrSGVpZ2h0KTsKK30KKworVEVTVF9Q
KE11bHRpc2FtcGxlUmVzb2x2ZVRlc3QsIFJlc29sdmVEMjRTOFNhbXBsZXMpCit7CisgICAgdGVz
dFJlc29sdmVEZXB0aFRvRkJPKEdMX0RFUFRIMjRfU1RFTkNJTDgsIEdMX0RFUFRIX1NURU5DSUxf
QVRUQUNITUVOVCwgNCwga1dpZHRoLCBrSGVpZ2h0KTsKK30KKworVEVTVF9QKE11bHRpc2FtcGxl
UmVzb2x2ZVRlc3QsIFJlc29sdmVEMzJGU2FtcGxlcykKK3sKKyAgICB0ZXN0UmVzb2x2ZURlcHRo
VG9GQk8oR0xfREVQVEhfQ09NUE9ORU5UMzJGLCBHTF9ERVBUSF9BVFRBQ0hNRU5ULCA0LCBrV2lk
dGgsIGtIZWlnaHQpOworfQorCitURVNUX1AoTXVsdGlzYW1wbGVSZXNvbHZlVGVzdCwgUmVzb2x2
ZUQyNFNhbXBsZXMpCit7CisgICAgdGVzdFJlc29sdmVEZXB0aFRvRkJPKEdMX0RFUFRIX0NPTVBP
TkVOVDI0LCBHTF9ERVBUSF9BVFRBQ0hNRU5ULCA0LCBrV2lkdGgsIGtIZWlnaHQpOworfQorCitU
RVNUX1AoTXVsdGlzYW1wbGVSZXNvbHZlVGVzdCwgUmVzb2x2ZUQxNlNhbXBsZXMpCit7CisgICAg
dGVzdFJlc29sdmVEZXB0aFRvRkJPKEdMX0RFUFRIX0NPTVBPTkVOVDE2LCBHTF9ERVBUSF9BVFRB
Q0hNRU5ULCA0LCBrV2lkdGgsIGtIZWlnaHQpOworfQorCit2b2lkIGRyYXdSZWN0QW5kQmxpdChH
THVpbnQgbXNGcmFtZWJ1ZmZlciwKKyAgICAgICAgICAgICAgICAgICAgIEdMdWludCByZXNvbHZl
RnJhbWVidWZmZXIsCisgICAgICAgICAgICAgICAgICAgICBHTGludCB3aWR0aCwKKyAgICAgICAg
ICAgICAgICAgICAgIEdMaW50IGhlaWdodCwKKyAgICAgICAgICAgICAgICAgICAgIEdMaW50IG1h
dExvYywKKyAgICAgICAgICAgICAgICAgICAgIEdMaW50IGNvbG9yTG9jLAorICAgICAgICAgICAg
ICAgICAgICAgZmxvYXQgeCwKKyAgICAgICAgICAgICAgICAgICAgIGZsb2F0IHksCisgICAgICAg
ICAgICAgICAgICAgICBmbG9hdCB3LAorICAgICAgICAgICAgICAgICAgICAgZmxvYXQgaCwKKyAg
ICAgICAgICAgICAgICAgICAgIGNvbnN0IEdMQ29sb3IgJmNvbG9yKQoreworICAgIGdsQmluZEZy
YW1lYnVmZmVyKEdMX0ZSQU1FQlVGRkVSLCBtc0ZyYW1lYnVmZmVyKTsKKyAgICBmbG9hdCBtYXRy
aXhbMTZdID0geworICAgICAgICB3LCAwLCAwLCAwLCAwLCBoLCAwLCAwLCAwLCAwLCAxLCAwLCB4
LCB5LCAwLCAxLAorICAgIH07CisgICAgZ2xVbmlmb3JtTWF0cml4NGZ2KG1hdExvYywgMSwgZmFs
c2UsIG1hdHJpeCk7CisgICAgYW5nbGU6OlZlY3RvcjQgYyhjb2xvci50b05vcm1hbGl6ZWRWZWN0
b3IoKSk7CisgICAgZ2xVbmlmb3JtNGYoY29sb3JMb2MsIGNbMF0sIGNbMV0sIGNbMl0sIGNbM10p
OworICAgIGdsRHJhd0FycmF5cyhHTF9UUklBTkdMRVMsIDAsIDYpOworCisgICAgZ2xCaW5kRnJh
bWVidWZmZXIoR0xfRFJBV19GUkFNRUJVRkZFUiwgcmVzb2x2ZUZyYW1lYnVmZmVyKTsKKyAgICBn
bEJsaXRGcmFtZWJ1ZmZlcigwLCAwLCB3aWR0aCwgaGVpZ2h0LCAwLCAwLCB3aWR0aCwgaGVpZ2h0
LCBHTF9DT0xPUl9CVUZGRVJfQklULCBHTF9ORUFSRVNUKTsKK30KKworLy8gVGVzdHMgaWYgd2Ug
cmVzb2x2ZShibGl0KSBhIG11bHRpc2FtcGxlIHJlbmRlcmJ1ZmZlciB0aGF0IGl0CisvLyBkb2Vz
IG5vdCBsb3NlIGl0cyBjb250ZW50cy4KK1RFU1RfUChNdWx0aXNhbXBsZVJlc29sdmVUZXN0LCBE
cmF3QW5kUmVzb2x2ZU11bHRpcGxlVGltZXMpCit7CisgICAgY29uc3RleHByIEdMaW50IHNhbXBs
ZXMgPSA0OworICAgIGNvbnN0ZXhwciBHTGVudW0gZm9ybWF0ID0gR0xfUkdCQTg7CisgICAgY29u
c3RleHByIEdMaW50IHdpZHRoICAgPSAxNjsKKyAgICBjb25zdGV4cHIgR0xpbnQgaGVpZ2h0ICA9
IDE2OworCisgICAgY29uc3RleHByIGNoYXIga1ZTW10gPSBSIigjdmVyc2lvbiAzMDAgZXMKKyAg
ICBsYXlvdXQobG9jYXRpb24gPSAwKSBpbiB2ZWM0IHBvc2l0aW9uOworICAgIHVuaWZvcm0gbWF0
NCBtYXQ7CisgICAgdm9pZCBtYWluKCkgeworICAgICAgIGdsX1Bvc2l0aW9uID0gbWF0ICogcG9z
aXRpb247CisgICAgfQorICAgICkiOworCisgICAgY29uc3RleHByIGNoYXIga0ZTW10gPSBSIigj
dmVyc2lvbiAzMDAgZXMKKyAgICBwcmVjaXNpb24gaGlnaHAgZmxvYXQ7CisgICAgdW5pZm9ybSB2
ZWM0IGNvbG9yOworICAgIG91dCB2ZWM0IG91dENvbG9yOworICAgIHZvaWQgbWFpbigpIHsKKyAg
ICAgICBvdXRDb2xvciA9IGNvbG9yOworICAgIH0KKyAgICApIjsKKworICAgIGdsVmlld3BvcnQo
MCwgMCwgd2lkdGgsIGhlaWdodCk7CisKKyAgICBBTkdMRV9HTF9QUk9HUkFNKHByb2dyYW0sIGtW
Uywga0ZTKTsKKyAgICBHTGludCBtYXRMb2MgICA9IGdsR2V0VW5pZm9ybUxvY2F0aW9uKHByb2dy
YW0sICJtYXQiKTsKKyAgICBHTGludCBjb2xvckxvYyA9IGdsR2V0VW5pZm9ybUxvY2F0aW9uKHBy
b2dyYW0sICJjb2xvciIpOworICAgIGdsVXNlUHJvZ3JhbShwcm9ncmFtKTsKKworICAgIEdMQnVm
ZmVyIGJ1ZjsKKyAgICBnbEJpbmRCdWZmZXIoR0xfQVJSQVlfQlVGRkVSLCBidWYpOworCisgICAg
Y29uc3RleHByIGZsb2F0IHZlcnRpY2VzW10gPSB7CisgICAgICAgIDAuMGYsIDAuMGYsIDEuMGYs
IDAuMGYsIDAuMGYsIDEuMGYsIDAuMGYsIDEuMGYsIDEuMGYsIDAuMGYsIDEuMGYsIDEuMGYsCisg
ICAgfTsKKyAgICBnbEJ1ZmZlckRhdGEoR0xfQVJSQVlfQlVGRkVSLCBzaXplb2YodmVydGljZXMp
LCB2ZXJ0aWNlcywgR0xfU1RBVElDX0RSQVcpOworICAgIGdsRW5hYmxlVmVydGV4QXR0cmliQXJy
YXkoMCk7CisgICAgZ2xWZXJ0ZXhBdHRyaWJQb2ludGVyKDAsIDIsIEdMX0ZMT0FULCBHTF9GQUxT
RSwgMCwgbnVsbHB0cik7CisKKyAgICAvLyBNYWtlIHNhbXBsZXMgPSA0IG11bHRpLXNhbXBsZSBm
cmFtZWJ1ZmZlci4KKyAgICBHTEZyYW1lYnVmZmVyIG1zRkI7CisgICAgZ2xCaW5kRnJhbWVidWZm
ZXIoR0xfRlJBTUVCVUZGRVIsIG1zRkIpOworCisgICAgR0xSZW5kZXJidWZmZXIgbXNSQjsKKyAg
ICBnbEJpbmRSZW5kZXJidWZmZXIoR0xfUkVOREVSQlVGRkVSLCBtc1JCKTsKKyAgICBnbFJlbmRl
cmJ1ZmZlclN0b3JhZ2VNdWx0aXNhbXBsZShHTF9SRU5ERVJCVUZGRVIsIHNhbXBsZXMsIGZvcm1h
dCwgd2lkdGgsIGhlaWdodCk7CisgICAgZ2xGcmFtZWJ1ZmZlclJlbmRlcmJ1ZmZlcihHTF9GUkFN
RUJVRkZFUiwgR0xfQ09MT1JfQVRUQUNITUVOVDAsIEdMX1JFTkRFUkJVRkZFUiwgbXNSQik7Cisg
ICAgRVhQRUNUX0dMX0ZSQU1FQlVGRkVSX0NPTVBMRVRFKEdMX0ZSQU1FQlVGRkVSKTsKKworICAg
IC8vIE1ha2Ugbm9uLW11bHRpLXNhbXBsZSBmcmFtZWJ1ZmZlci4KKyAgICBHTEZyYW1lYnVmZmVy
IGRyYXdGQjsKKyAgICBnbEJpbmRGcmFtZWJ1ZmZlcihHTF9GUkFNRUJVRkZFUiwgZHJhd0ZCKTsK
KworICAgIEdMUmVuZGVyYnVmZmVyIGRyYXdSQjsKKyAgICBnbEJpbmRSZW5kZXJidWZmZXIoR0xf
UkVOREVSQlVGRkVSLCBkcmF3UkIpOworICAgIGdsUmVuZGVyYnVmZmVyU3RvcmFnZShHTF9SRU5E
RVJCVUZGRVIsIGZvcm1hdCwgd2lkdGgsIGhlaWdodCk7CisgICAgZ2xGcmFtZWJ1ZmZlclJlbmRl
cmJ1ZmZlcihHTF9GUkFNRUJVRkZFUiwgR0xfQ09MT1JfQVRUQUNITUVOVDAsIEdMX1JFTkRFUkJV
RkZFUiwgZHJhd1JCKTsKKyAgICBFWFBFQ1RfR0xfRlJBTUVCVUZGRVJfQ09NUExFVEUoR0xfRlJB
TUVCVUZGRVIpOworCisgICAgZHJhd1JlY3RBbmRCbGl0KG1zRkIsIGRyYXdGQiwgd2lkdGgsIGhl
aWdodCwgbWF0TG9jLCBjb2xvckxvYywgLTEsIC0xLCAyLCAyLCBHTENvbG9yOjpyZWQpOworICAg
IGRyYXdSZWN0QW5kQmxpdChtc0ZCLCBkcmF3RkIsIHdpZHRoLCBoZWlnaHQsIG1hdExvYywgY29s
b3JMb2MsIDAsIC0xLCAxLCAxLCBHTENvbG9yOjpncmVlbik7CisgICAgZHJhd1JlY3RBbmRCbGl0
KG1zRkIsIGRyYXdGQiwgd2lkdGgsIGhlaWdodCwgbWF0TG9jLCBjb2xvckxvYywgLTEsIDAsIDEs
IDEsIEdMQ29sb3I6OmJsdWUpOworICAgIGRyYXdSZWN0QW5kQmxpdChtc0ZCLCBkcmF3RkIsIHdp
ZHRoLCBoZWlnaHQsIG1hdExvYywgY29sb3JMb2MsIDAsIDAsIDEsIDEsIEdMQ29sb3I6OnllbGxv
dyk7CisgICAgZ2xFbmFibGUoR0xfQkxFTkQpOworICAgIGdsQmxlbmRGdW5jKEdMX09ORSwgR0xf
T05FKTsKKyAgICBkcmF3UmVjdEFuZEJsaXQobXNGQiwgZHJhd0ZCLCB3aWR0aCwgaGVpZ2h0LCBt
YXRMb2MsIGNvbG9yTG9jLCAtMC41LCAtMC41LCAxLCAxLAorICAgICAgICAgICAgICAgICAgICBH
TENvbG9yKDB4ODAsIDB4ODAsIDB4ODAsIDB4ODApKTsKKyAgICBnbERpc2FibGUoR0xfQkxFTkQp
OworICAgIEFTU0VSVF9HTF9OT19FUlJPUigpOworCisgICAgLyoKKyAgICAgICBleHBlY3RlZAor
ICAgICAgICstLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tKworICAgICAgIHwgYmx1ZSAgICAg
ICAgfCAgICAgICB5ZWxsb3cgfAorICAgICAgIHwgICArLS0tLS0tLS0tKy0tLS0tLS0tLS0rICAg
fAorICAgICAgIHwgICB8LjUsLjUsMSwxfCAxLDEsLjUsMSB8ICAgfAorICAgICAgICstLS0rLS0t
LS0tLS0tKy0tLS0tLS0tLS0rLS0tKworICAgICAgIHwgICB8MSwuNSwuNSwxfCAuNSwxLC41LDF8
ICAgfAorICAgICAgIHwgICArLS0tLS0tLS0tKy0tLS0tLS0tLS0rICAgfAorICAgICAgIHwgcmVk
ICAgICAgICAgfCAgICAgICAgZ3JlZW4gfAorICAgICAgICstLS0tLS0tLS0tLS0tKy0tLS0tLS0t
LS0tLS0tKworICAgICAgMCwwCisgICAgKi8KKworICAgIGdsQmluZEZyYW1lYnVmZmVyKEdMX0ZS
QU1FQlVGRkVSLCBkcmF3RkIpOworICAgIEVYUEVDVF9QSVhFTF9SRUNUX0VRKDAsIDAsIHdpZHRo
IC8gMiwgaGVpZ2h0IC8gNCwgR0xDb2xvcjo6cmVkKTsKKyAgICBFWFBFQ1RfUElYRUxfUkVDVF9F
USh3aWR0aCAvIDIsIDAsIHdpZHRoIC8gMiwgaGVpZ2h0IC8gNCwgR0xDb2xvcjo6Z3JlZW4pOwor
ICAgIEVYUEVDVF9QSVhFTF9SRUNUX0VRKDAsIGhlaWdodCAqIDMgLyA0LCB3aWR0aCAvIDIsIGhl
aWdodCAvIDQsIEdMQ29sb3I6OmJsdWUpOworICAgIEVYUEVDVF9QSVhFTF9SRUNUX0VRKHdpZHRo
IC8gMiwgaGVpZ2h0ICogMyAvIDQsIHdpZHRoIC8gMiwgaGVpZ2h0IC8gNCwgR0xDb2xvcjo6eWVs
bG93KTsKKworICAgIEVYUEVDVF9QSVhFTF9SRUNUX0VRKHdpZHRoIC8gNCwgaGVpZ2h0IC8gNCwg
d2lkdGggLyA0LCBoZWlnaHQgLyA0LCBHTENvbG9yKDI1NSwgMTI4LCAxMjgsIDI1NSkpOworICAg
IEVYUEVDVF9QSVhFTF9SRUNUX0VRKHdpZHRoIC8gMiwgaGVpZ2h0IC8gNCwgd2lkdGggLyA0LCBo
ZWlnaHQgLyA0LCBHTENvbG9yKDEyOCwgMjU1LCAxMjgsIDI1NSkpOworICAgIEVYUEVDVF9QSVhF
TF9SRUNUX0VRKHdpZHRoIC8gNCwgaGVpZ2h0IC8gMiwgd2lkdGggLyA0LCBoZWlnaHQgLyA0LCBH
TENvbG9yKDEyOCwgMTI4LCAyNTUsIDI1NSkpOworICAgIEVYUEVDVF9QSVhFTF9SRUNUX0VRKHdp
ZHRoIC8gMiwgaGVpZ2h0IC8gMiwgd2lkdGggLyA0LCBoZWlnaHQgLyA0LCBHTENvbG9yKDI1NSwg
MjU1LCAxMjgsIDI1NSkpOworfQorCiBBTkdMRV9JTlNUQU5USUFURV9URVNUX0NPTUJJTkVfMShN
dWx0aXNhbXBsZVRlc3QsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQcmludFRv
U3RyaW5nUGFyYW1OYW1lLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVzdGlu
Zzo6VmFsdWVzKGZhbHNlKSwKQEAgLTUyNSw0ICsxMTM1LDcgQEAgQU5HTEVfSU5TVEFOVElBVEVf
VEVTVF9DT01CSU5FXzEoTXVsdGlzYW1wbGVUZXN0RVMzLAogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgV2l0aE5vRml4dHVyZShFUzNfVlVMS0FOKCkpLAogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgV2l0aE5vRml4dHVyZShFUzMxX1ZVTEtBTigpKSwKICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFdpdGhOb0ZpeHR1cmUoRVMzX01FVEFMKCkpKTsKKwor
QU5HTEVfSU5TVEFOVElBVEVfVEVTVF9FUzMoTXVsdGlzYW1wbGVSZXNvbHZlVGVzdCk7CisKIH0g
IC8vIGFub255bW91cyBuYW1lc3BhY2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FO
R0xFL3NyYy90ZXN0cy9nbF90ZXN0cy9PYmplY3RBbGxvY2F0aW9uVGVzdC5jcHAgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvZ2xfdGVzdHMvT2JqZWN0QWxsb2NhdGlvblRlc3Qu
Y3BwCmluZGV4IDYwYzUxMjczNWE5OTdkMTVkNWUyMmNhY2Y2ZWI4YjY0NWVkOThlYjQuLjJlNzQ1
MGZhNWMyNGUxOTlmMjZhOGY3YTA4YTA2MDM1OTBlZjU2ZmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9nbF90ZXN0cy9PYmplY3RBbGxvY2F0aW9uVGVzdC5j
cHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2dsX3Rlc3RzL09iamVj
dEFsbG9jYXRpb25UZXN0LmNwcApAQCAtNjgsNiArNjgsNDggQEAgVEVTVF9QKE9iamVjdEFsbG9j
YXRpb25UZXN0LCBCaW5kUmVuZGVyYnVmZmVyKQogICAgIEVYUEVDVF9HTF9OT19FUlJPUigpOwog
fQogCisvLyBSZW5kZXJidWZmZXJzIGNhbiBiZSBjcmVhdGVkIG9uIHRoZSBmbHkgYnkgY2FsbGlu
ZyBnbEJpbmRSZW5kZXJidWZmZXIsCisvLyBzby8vIGNoZWNrIHRoYXQgdGhlIGNhbGwgZG9lc24n
dCBmYWlsIHRoYXQgdGhlIHJlbmRlcmJ1ZmZlciBpcyBhbHNvIGRlbGV0ZWQKK1RFU1RfUChPYmpl
Y3RBbGxvY2F0aW9uVGVzdCwgQmluZFJlbmRlcmJ1ZmZlckJlZm9yZUdlbkFuZERlbGV0ZSkKK3sK
KyAgICBHTHVpbnQgcmJJZCA9IDE7CisgICAgZ2xCaW5kUmVuZGVyYnVmZmVyKEdMX1JFTkRFUkJV
RkZFUiwgcmJJZCk7CisgICAgRVhQRUNUX0dMX05PX0VSUk9SKCk7CisKKyAgICAvLyBTd2FwIG5v
dyB0byB0cmlnZ2VyIHRoZSBzZXJpYWxpemF0aW9uIG9mIHRoZSByZW5kZXJidWZmZXIgdGhhdAor
ICAgIC8vIHdhcyBpbml0aWFsaXplZCB3aXRoIHRoZSBkZWZhdWx0IHZhbHVlcworICAgIHN3YXBC
dWZmZXJzKCk7CisKKyAgICBnbERlbGV0ZVJlbmRlcmJ1ZmZlcnMoMSwgJnJiSWQpOworICAgIEVY
UEVDVF9HTF9OT19FUlJPUigpOworfQorCisvLyBCdWZmZXJzIGNhbiBiZSBjcmVhdGVkIG9uIHRo
ZSBmbHkgYnkgY2FsbGluZyBnbEJpbmRCdWZmZXIsIHNvCisvLyBjaGVjayB0aGF0IHRoZSBjYWxs
IGRvZXNuJ3QgZmFpbCB0aGF0IHRoZSBidWZmZXIgaXMgYWxzbyBkZWxldGVkCitURVNUX1AoT2Jq
ZWN0QWxsb2NhdGlvblRlc3QsIEJpbmRCdWZmZXJCZWZvcmVHZW5BbmREZWxldGUpCit7CisgICAg
R0x1aW50IGlkID0gMTsKKyAgICBnbEJpbmRCdWZmZXIoR0xfQVJSQVlfQlVGRkVSLCBpZCk7Cisg
ICAgRVhQRUNUX0dMX05PX0VSUk9SKCk7CisgICAgLy8gdHJpZ2dlciBzZXJpYWxpemF0aW9uIHRv
IGNhcHR1cmUgdGhlIGNyZWF0ZWQgYnVmZmVyIElECisgICAgc3dhcEJ1ZmZlcnMoKTsKKyAgICBn
bERlbGV0ZUJ1ZmZlcnMoMSwgJmlkKTsKKyAgICBFWFBFQ1RfR0xfTk9fRVJST1IoKTsKK30KKwor
Ly8gVGV4dHVyZXMgY2FuIGJlIGNyZWF0ZWQgb24gdGhlIGZseSBieSBjYWxsaW5nIGdsQmluZFRl
eHR1cmUsIHNvCisvLyBjaGVjayB0aGF0IHRoZSBjYWxsIGRvZXNuJ3QgZmFpbCB0aGF0IHRoZSB0
ZXh0dXJlIGlzIGFsc28gZGVsZXRlZAorVEVTVF9QKE9iamVjdEFsbG9jYXRpb25UZXN0LCBCaW5k
VGV4dHVyZUJlZm9yZUdlbkFuZERlbGV0ZSkKK3sKKyAgICBHTHVpbnQgaWQgPSAxOworICAgIGds
QmluZFRleHR1cmUoR0xfVEVYVFVSRV8yRCwgaWQpOworICAgIEVYUEVDVF9HTF9OT19FUlJPUigp
OworICAgIC8vIHRyaWdnZXIgc2VyaWFsaXphdGlvbiB0byBjYXB0dXJlIHRoZSBjcmVhdGVkIHRl
eHR1cmUgSUQKKyAgICBzd2FwQnVmZmVycygpOworICAgIGdsRGVsZXRlVGV4dHVyZXMoMSwgJmlk
KTsKKyAgICBFWFBFQ1RfR0xfTk9fRVJST1IoKTsKK30KKwogfSAgLy8gYW5vbnltb3VzIG5hbWVz
cGFjZQogCiBHVEVTVF9BTExPV19VTklOU1RBTlRJQVRFRF9QQVJBTUVURVJJWkVEX1RFU1QoT2Jq
ZWN0QWxsb2NhdGlvblRlc3QpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUv
c3JjL3Rlc3RzL2dsX3Rlc3RzL09jY2x1c2lvblF1ZXJpZXNUZXN0LmNwcCBiL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9nbF90ZXN0cy9PY2NsdXNpb25RdWVyaWVzVGVzdC5jcHAK
aW5kZXggNTBjN2E4ZjRmZjkyYjRlOGVkMTI3MjIyOWE4NzIxZmIyMThmMDdmNy4uOTUzYmViYWI0
MTkyNWQxNGQ2MmQ2YWZmOWE4MGRlZTAxYzY0MjBiZSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvc3JjL3Rlc3RzL2dsX3Rlc3RzL09jY2x1c2lvblF1ZXJpZXNUZXN0LmNwcAor
KysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvZ2xfdGVzdHMvT2NjbHVzaW9u
UXVlcmllc1Rlc3QuY3BwCkBAIC03OTMsNiArNzkzLDggQEAgVEVTVF9QKE9jY2x1c2lvblF1ZXJp
ZXNOb1N1cmZhY2VUZXN0RVMzLCBTd2l0Y2hpbmdDb250ZXh0c1dpdGhRdWVyeSkKICAgICAgICAg
RUdMX05PTkUsCiAgICAgfTsKIAorICAgIC8vIFRoZSBmb2xsb3dpbmcgR0wgb2JqZWN0cyBhcmUg
aW1wbGljaXRseSBkZWxldGVkIGluCisgICAgLy8gQ29udGV4dEluZm8ncyBkZXN0cnVjdG9yIGJl
Zm9yZSB0aGUgRUdMQ29udGV4dCBpcyBtYW51YWxseSBkZXN0cm95ZWQKICAgICBzdHJ1Y3QgQ29u
dGV4dEluZm8KICAgICB7CiAgICAgICAgIEVHTENvbnRleHQgY29udGV4dDsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9nbF90ZXN0cy9Qcm9ncmFtQmluYXJ5
VGVzdC5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvZ2xfdGVzdHMvUHJv
Z3JhbUJpbmFyeVRlc3QuY3BwCmluZGV4IGY4OWFiYjgyNWE2NWY2ZDFmZTI0YjA1MmQyNjg4N2Zk
ZmYzMGRiMTYuLjQ1OGI1MmJkZWI2NTc2YTk3Y2U2NTA1MmQ5Yjg3ZDMxNGIyNGE3ZDQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9nbF90ZXN0cy9Qcm9ncmFt
QmluYXJ5VGVzdC5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2ds
X3Rlc3RzL1Byb2dyYW1CaW5hcnlUZXN0LmNwcApAQCAtNTE5LDYgKzUxOSwxMCBAQCBURVNUX1Ao
UHJvZ3JhbUJpbmFyeUVTM1Rlc3QsIFRlc3RBcnJheU9mU3RydWN0VW5pZm9ybSkKIC8vIGRyYXdp
bmcgd29ya3MuCiBURVNUX1AoUHJvZ3JhbUJpbmFyeUVTM1Rlc3QsIFNhdmVBbmRMb2FkRGV0YWNo
ZWRTaGFkZXJzKQogeworICAgIEdMaW50IGJpbmFyeUZvcm1hdENvdW50ID0gMDsKKyAgICBnbEdl
dEludGVnZXJ2KEdMX05VTV9QUk9HUkFNX0JJTkFSWV9GT1JNQVRTLCAmYmluYXJ5Rm9ybWF0Q291
bnQpOworICAgIEFOR0xFX1NLSVBfVEVTVF9JRihiaW5hcnlGb3JtYXRDb3VudCA9PSAwKTsKKwog
ICAgIC8vIFdlIHVzZSBzaGFkZXJzIHdpdGggdGhlICJmbGF0IiBxdWFsaWZpZXIsIHRvIGVuc3Vy
ZSB0aGF0ICJmbGF0IiBiZWhhdmVzCiAgICAgLy8gYWNyb3NzIHNhdmUvbG9hZC4gVGhpcyBpcyBw
cmltYXJpbHkgdG8gY2F0Y2ggcG9zc2libGUgYnVncyBpbiB0aGUgTWV0YWwKICAgICAvLyBiYWNr
ZW5kLCB3aGVyZSBpdCBuZWVkcyB0byBkZXRlY3QgImZsYXQiIGF0IHNoYWRlciBsaW5rIHRpbWUg
YW5kCkBAIC05MzQsNyArOTM4LDggQEAgVEVTVF9QKFByb2dyYW1CaW5hcnlUZXN0LCBTUkdCRGVj
b2RlV2l0aFNhbXBsZXJBbmRUZXhlbEZldGNoVGVzdCkKIH0KIAogR1RFU1RfQUxMT1dfVU5JTlNU
QU5USUFURURfUEFSQU1FVEVSSVpFRF9URVNUKFByb2dyYW1CaW5hcnlFUzNUZXN0KTsKLUFOR0xF
X0lOU1RBTlRJQVRFX1RFU1RfRVMzKFByb2dyYW1CaW5hcnlFUzNUZXN0KTsKK0FOR0xFX0lOU1RB
TlRJQVRFX1RFU1RfRVMzX0FORChQcm9ncmFtQmluYXJ5RVMzVGVzdCwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBXaXRoQ3JlYXRlVnVsa2FuUGlwZWxpbmVEdXJpbmdMaW5rKEVTM19W
VUxLQU4oKSkpOwogCiBjbGFzcyBQcm9ncmFtQmluYXJ5RVMzMVRlc3QgOiBwdWJsaWMgQU5HTEVU
ZXN0CiB7CkBAIC0xMTY5LDcgKzExNzQsOCBAQCBURVNUX1AoUHJvZ3JhbUJpbmFyeUVTMzFUZXN0
LCBJbWFnZVRleHR1cmVCaW5kaW5nKQogfQogCiBHVEVTVF9BTExPV19VTklOU1RBTlRJQVRFRF9Q
QVJBTUVURVJJWkVEX1RFU1QoUHJvZ3JhbUJpbmFyeUVTMzFUZXN0KTsKLUFOR0xFX0lOU1RBTlRJ
QVRFX1RFU1RfRVMzMShQcm9ncmFtQmluYXJ5RVMzMVRlc3QpOworQU5HTEVfSU5TVEFOVElBVEVf
VEVTVF9FUzMxX0FORChQcm9ncmFtQmluYXJ5RVMzMVRlc3QsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFdpdGhDcmVhdGVWdWxrYW5QaXBlbGluZUR1cmluZ0xpbmsoRVMzMV9WVUxL
QU4oKSkpOwogCiBjbGFzcyBQcm9ncmFtQmluYXJ5VHJhbnNmb3JtRmVlZGJhY2tUZXN0IDogcHVi
bGljIEFOR0xFVGVzdAogewpAQCAtMTI4MSw3ICsxMjg3LDggQEAgVEVTVF9QKFByb2dyYW1CaW5h
cnlUcmFuc2Zvcm1GZWVkYmFja1Rlc3QsIEdldFRyYW5zZm9ybUZlZWRiYWNrVmFyeWluZykKIH0K
IAogR1RFU1RfQUxMT1dfVU5JTlNUQU5USUFURURfUEFSQU1FVEVSSVpFRF9URVNUKFByb2dyYW1C
aW5hcnlUcmFuc2Zvcm1GZWVkYmFja1Rlc3QpOwotQU5HTEVfSU5TVEFOVElBVEVfVEVTVF9FUzMo
UHJvZ3JhbUJpbmFyeVRyYW5zZm9ybUZlZWRiYWNrVGVzdCk7CitBTkdMRV9JTlNUQU5USUFURV9U
RVNUX0VTM19BTkQoUHJvZ3JhbUJpbmFyeVRyYW5zZm9ybUZlZWRiYWNrVGVzdCwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBXaXRoQ3JlYXRlVnVsa2FuUGlwZWxpbmVEdXJpbmdMaW5r
KEVTM19WVUxLQU4oKSkpOwogCiAvLyBGb3IgdGhlIFByb2dyYW1CaW5hcmllc0Fjcm9zc1BsYXRm
b3JtcyB0ZXN0cywgd2UgbmVlZCB0d28gc2V0cyBvZiBwYXJhbXM6CiAvLyAtIGEgc2V0IHRvIHNh
dmUgdGhlIHByb2dyYW0gYmluYXJ5CkBAIC0xNTE4LDYgKzE1MjUsMTEgQEAgQU5HTEVfSU5TVEFO
VElBVEVfVEVTVChQcm9ncmFtQmluYXJpZXNBY3Jvc3NQbGF0Zm9ybXMsCiAgICAgICAgICAgICAg
ICAgICAgICAgIFBsYXRmb3Jtc1dpdGhMaW5rUmVzdWx0KEVTMl9EM0QxMSgpLCAgICAgICAgIEVT
Ml9EM0Q5KCksICAgICAgICAgICAgIGZhbHNlICAgICAgICApLCAvLyBTd2l0Y2hpbmcgZnJvbSBE
M0QxMSB0byBEM0Q5IHNob3VsZG4ndCB3b3JrCiAgICAgICAgICAgICAgICAgICAgICAgIFBsYXRm
b3Jtc1dpdGhMaW5rUmVzdWx0KEVTMl9EM0Q5KCksICAgICAgICAgIEVTMl9EM0QxMSgpLCAgICAg
ICAgICAgIGZhbHNlICAgICAgICApLCAvLyBTd2l0Y2hpbmcgZnJvbSBEM0Q5IHRvIEQzRDExIHNo
b3VsZG4ndCB3b3JrCiAgICAgICAgICAgICAgICAgICAgICAgIFBsYXRmb3Jtc1dpdGhMaW5rUmVz
dWx0KEVTMl9EM0QxMSgpLCAgICAgICAgIEVTM19EM0QxMSgpLCAgICAgICAgICAgIGZhbHNlICAg
ICAgICApLCAvLyBTd2l0Y2hpbmcgdG8gbmV3ZXIgY2xpZW50IHZlcnNpb24gc2hvdWxkbid0IHdv
cmsKKyAgICAgICAgICAgICAgICAgICAgICAgUGxhdGZvcm1zV2l0aExpbmtSZXN1bHQoRVMyX1ZV
TEtBTigpLCAgICAgICAgRVMyX1ZVTEtBTigpLCAgICAgICAgICAgdHJ1ZSAgICAgICAgICksIC8v
IExvYWRpbmcgKyByZWxvYWRpbmcgYmluYXJ5IHNob3VsZCB3b3JrCisgICAgICAgICAgICAgICAg
ICAgICAgIFBsYXRmb3Jtc1dpdGhMaW5rUmVzdWx0KEVTM19WVUxLQU4oKSwgICAgICAgIEVTM19W
VUxLQU4oKSwgICAgICAgICAgIHRydWUgICAgICAgICApLCAvLyBMb2FkaW5nICsgcmVsb2FkaW5n
IGJpbmFyeSBzaG91bGQgd29yaworICAgICAgICAgICAgICAgICAgICAgICBQbGF0Zm9ybXNXaXRo
TGlua1Jlc3VsdChFUzMxX1ZVTEtBTigpLCAgICAgICBFUzMxX1ZVTEtBTigpLCAgICAgICAgICB0
cnVlICAgICAgICAgKSwgLy8gTG9hZGluZyArIHJlbG9hZGluZyBiaW5hcnkgc2hvdWxkIHdvcmsK
ICAgICAgICAgICAgICAgICAgICAgICAgUGxhdGZvcm1zV2l0aExpbmtSZXN1bHQoRVMzX1ZVTEtB
TigpLCAgICAgICAgRVMzMV9WVUxLQU4oKSwgICAgICAgICAgZmFsc2UgICAgICAgICksIC8vIFN3
aXRjaGluZyB0byBuZXdlciBjbGllbnQgdmVyc2lvbiBzaG91bGRuJ3Qgd29yayB3aXRoIFZ1bGth
bgorICAgICAgICAgICAgICAgICAgICAgICBQbGF0Zm9ybXNXaXRoTGlua1Jlc3VsdChXaXRoQ3Jl
YXRlVnVsa2FuUGlwZWxpbmVEdXJpbmdMaW5rKEVTMl9WVUxLQU4oKSksICAgICAgICBXaXRoQ3Jl
YXRlVnVsa2FuUGlwZWxpbmVEdXJpbmdMaW5rKEVTMl9WVUxLQU4oKSksICAgICAgICAgICB0cnVl
ICAgICAgICAgKSwgLy8gTG9hZGluZyArIHJlbG9hZGluZyBiaW5hcnkgd2l0aCBjb21waWxpbmcg
c2hhZGVycyBhdCBsaW5rIHRpbWUgc2hvdWxkIHdvcmsKKyAgICAgICAgICAgICAgICAgICAgICAg
UGxhdGZvcm1zV2l0aExpbmtSZXN1bHQoV2l0aENyZWF0ZVZ1bGthblBpcGVsaW5lRHVyaW5nTGlu
ayhFUzNfVlVMS0FOKCkpLCAgICAgICAgV2l0aENyZWF0ZVZ1bGthblBpcGVsaW5lRHVyaW5nTGlu
ayhFUzNfVlVMS0FOKCkpLCAgICAgICAgICAgdHJ1ZSAgICAgICAgICksIC8vIExvYWRpbmcgKyBy
ZWxvYWRpbmcgYmluYXJ5IHdpdGggY29tcGlsaW5nIHNoYWRlcnMgYXQgbGluayB0aW1lIHNob3Vs
ZCB3b3JrCiAgICAgICAgICAgICAgICAgICAgICAgICk7CiAvLyBjbGFuZy1mb3JtYXQgb24KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9nbF90ZXN0cy9Qcm9n
cmFtUGlwZWxpbmVUZXN0LmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9n
bF90ZXN0cy9Qcm9ncmFtUGlwZWxpbmVUZXN0LmNwcApvbGQgbW9kZSAxMDA3NTUKbmV3IG1vZGUg
MTAwNjQ0CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvZ2xf
dGVzdHMvU3RhdGVDaGFuZ2VUZXN0LmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90
ZXN0cy9nbF90ZXN0cy9TdGF0ZUNoYW5nZVRlc3QuY3BwCmluZGV4IGVjYjc4ZGQxODVjYWFhYTc3
YzNmYzlmNjc1ODkxYWZjYjhlMmZhNzguLjg4MGJlZmE2MDAyMGUzNWI4MzVjODAyZTNkYTA5MDY3
MTk4NGFkZDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9n
bF90ZXN0cy9TdGF0ZUNoYW5nZVRlc3QuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy90ZXN0cy9nbF90ZXN0cy9TdGF0ZUNoYW5nZVRlc3QuY3BwCkBAIC02MjMyLDcgKzYyMzIs
NyBAQCB2b2lkIFNpbXBsZVN0YXRlQ2hhbmdlVGVzdDo6ZHJhd1RvRmJvV2l0aEN1bGxpbmcoY29u
c3QgR0xlbnVtIGZyb250RmFjZSwgYm9vbCBlYQogCiAgICAgLy8gQ2xlYXIgdGhlIHN1cmZhY2Ug
RkJPIHRvIGluaXRpYWxpemUgaXQgdG8gYSBrbm93biB2YWx1ZQogICAgIGdsQmluZEZyYW1lYnVm
ZmVyKEdMX0ZSQU1FQlVGRkVSLCAwKTsKLSAgICBnbENsZWFyQ29sb3IoR0xDb2xvcjo6cmVkLlIs
IEdMQ29sb3I6OnJlZC5HLCBHTENvbG9yOjpyZWQuQiwgR0xDb2xvcjo6cmVkLkEpOworICAgIGds
Q2xlYXJDb2xvcihrRmxvYXRSZWQuUiwga0Zsb2F0UmVkLkcsIGtGbG9hdFJlZC5CLCBrRmxvYXRS
ZWQuQSk7CiAgICAgZ2xDbGVhcihHTF9DT0xPUl9CVUZGRVJfQklUKTsKICAgICBBU1NFUlRfR0xf
Tk9fRVJST1IoKTsKICAgICBFWFBFQ1RfUElYRUxfQ09MT1JfRVEoMCwgMCwgR0xDb2xvcjo6cmVk
KTsKQEAgLTY0NjIsNyArNjQ2Miw3IEBAIFRFU1RfUChTaW1wbGVTdGF0ZUNoYW5nZVRlc3QsIERy
YXdBcnJheXNXaXRoWmVyb1NpemVkRWxlbWVudEFycmF5QnVmZmVyKQogLy8gVmFsaWRhdGVzIEdM
X1JBU1RFUklaRVJfRElTQ0FSRCBzdGF0ZSBpcyB0cmFja2VkIGNvcnJlY3RseQogVEVTVF9QKFNp
bXBsZVN0YXRlQ2hhbmdlVGVzdEVTMywgUmFzdGVyaXplckRpc2NhcmRTdGF0ZSkKIHsKLSAgICBn
bENsZWFyQ29sb3IoR0xDb2xvcjo6cmVkLlIsIEdMQ29sb3I6OnJlZC5HLCBHTENvbG9yOjpyZWQu
QiwgR0xDb2xvcjo6cmVkLkEpOworICAgIGdsQ2xlYXJDb2xvcihrRmxvYXRSZWQuUiwga0Zsb2F0
UmVkLkcsIGtGbG9hdFJlZC5CLCBrRmxvYXRSZWQuQSk7CiAgICAgZ2xDbGVhcihHTF9DT0xPUl9C
VUZGRVJfQklUKTsKICAgICBBU1NFUlRfR0xfTk9fRVJST1IoKTsKICAgICBFWFBFQ1RfUElYRUxf
Q09MT1JfRVEoMCwgMCwgR0xDb2xvcjo6cmVkKTsKQEAgLTY0OTIsNiArNjQ5MiwxNjIgQEAgVEVT
VF9QKFNpbXBsZVN0YXRlQ2hhbmdlVGVzdEVTMywgUmFzdGVyaXplckRpc2NhcmRTdGF0ZSkKICAg
ICBFWFBFQ1RfUElYRUxfQ09MT1JfRVEoMCwgMCwgR0xDb2xvcjo6Z3JlZW4pOwogfQogCisvLyBU
ZXN0IHRoYXQgZWFybHkgcmV0dXJuIG9uIGJpbmRpbmcgdGhlIHNhbWUgdGV4dHVyZSBpcyBmdW5j
dGlvbmFsCitURVNUX1AoU2ltcGxlU3RhdGVDaGFuZ2VUZXN0RVMzLCBCaW5kaW5nU2FtZVRleHR1
cmUpCit7CisgICAgLy8gQ3JlYXRlIHR3byAxeDEgdGV4dHVyZXMKKyAgICBjb25zdGV4cHIgR0xz
aXplaSBrU2l6ZSAgICAgICAgICAgPSAyOworICAgIHN0ZDo6YXJyYXk8R0xDb2xvciwga1NpemU+
IGNvbG9ycyA9IHtHTENvbG9yOjp5ZWxsb3csIEdMQ29sb3I6OmN5YW59OworCisgICAgR0xUZXh0
dXJlIHRleFtrU2l6ZV07CisgICAgLy8gQmluZCB0ZXh0dXJlIDAgYW5kIDEgdG8gYWN0aXZlIHRl
eHR1cmVzIDAgYW5kIDEgYW5kIHNldCBkYXRhCisgICAgZ2xBY3RpdmVUZXh0dXJlKEdMX1RFWFRV
UkUwKTsKKyAgICBnbEJpbmRUZXh0dXJlKEdMX1RFWFRVUkVfMkQsIHRleFswXSk7CisgICAgZ2xU
ZXhJbWFnZTJEKEdMX1RFWFRVUkVfMkQsIDAsIEdMX1JHQkEsIDEsIDEsIDAsIEdMX1JHQkEsIEdM
X1VOU0lHTkVEX0JZVEUsIGNvbG9yc1swXS5kYXRhKCkpOworCisgICAgZ2xBY3RpdmVUZXh0dXJl
KEdMX1RFWFRVUkUxKTsKKyAgICBnbEJpbmRUZXh0dXJlKEdMX1RFWFRVUkVfMkQsIHRleFsxXSk7
CisgICAgZ2xUZXhJbWFnZTJEKEdMX1RFWFRVUkVfMkQsIDAsIEdMX1JHQkEsIDEsIDEsIDAsIEdM
X1JHQkEsIEdMX1VOU0lHTkVEX0JZVEUsIGNvbG9yc1sxXS5kYXRhKCkpOworCisgICAgLy8gQ3Jl
YXRlIHNpbXBsZSBwcm9ncmFtIGFuZCBxdWVyeSBzYW1wbGVyIGxvY2F0aW9uCisgICAgQU5HTEVf
R0xfUFJPR1JBTShwcm9ncmFtLCBlc3NsMV9zaGFkZXJzOjp2czo6VGV4dHVyZTJEKCksIGVzc2wx
X3NoYWRlcnM6OmZzOjpUZXh0dXJlMkQoKSk7CisgICAgQVNTRVJUKHByb2dyYW0udmFsaWQoKSk7
CisgICAgZ2xVc2VQcm9ncmFtKHByb2dyYW0pOworICAgIEdMaW50IHRleHR1cmVMb2NhdGlvbiA9
IGdsR2V0VW5pZm9ybUxvY2F0aW9uKHByb2dyYW0sIGVzc2wxX3NoYWRlcnM6OlRleHR1cmUyRFVu
aWZvcm0oKSk7CisgICAgQVNTRVJUX05FKC0xLCB0ZXh0dXJlTG9jYXRpb24pOworCisgICAgLy8g
RHJhdyB1c2luZyBhY3RpdmUgdGV4dHVyZSAwLgorICAgIGdsQWN0aXZlVGV4dHVyZShHTF9URVhU
VVJFMCk7CisgICAgZ2xVbmlmb3JtMWkodGV4dHVyZUxvY2F0aW9uLCAwKTsKKyAgICBnbEJpbmRU
ZXh0dXJlKEdMX1RFWFRVUkVfMkQsIHRleFswXSk7CisgICAgZHJhd1F1YWQocHJvZ3JhbSwgZXNz
bDFfc2hhZGVyczo6UG9zaXRpb25BdHRyaWIoKSwgMC41Zik7CisgICAgQVNTRVJUX0dMX05PX0VS
Uk9SKCk7CisgICAgRVhQRUNUX1BJWEVMX0NPTE9SX0VRKDAsIDAsIGNvbG9yc1swXSk7CisKKyAg
ICAvLyBEcmF3IHVzaW5nIGFjdGl2ZSB0ZXh0dXJlIDEuCisgICAgZ2xBY3RpdmVUZXh0dXJlKEdM
X1RFWFRVUkUxKTsKKyAgICBnbFVuaWZvcm0xaSh0ZXh0dXJlTG9jYXRpb24sIDEpOworICAgIGds
QmluZFRleHR1cmUoR0xfVEVYVFVSRV8yRCwgdGV4WzFdKTsKKyAgICBkcmF3UXVhZChwcm9ncmFt
LCBlc3NsMV9zaGFkZXJzOjpQb3NpdGlvbkF0dHJpYigpLCAwLjVmKTsKKyAgICBBU1NFUlRfR0xf
Tk9fRVJST1IoKTsKKyAgICBFWFBFQ1RfUElYRUxfQ09MT1JfRVEoMCwgMCwgY29sb3JzWzFdKTsK
KworICAgIC8vIFJlYmluZCB0aGUgc2FtZSB0ZXh0dXJlIHRvIHRleHR1cmUgdW5pdCAxIGFuZCBl
eHBlY3Qgc2FtZSBjb2xvcgorICAgIGdsQmluZFRleHR1cmUoR0xfVEVYVFVSRV8yRCwgdGV4WzFd
KTsKKyAgICBnbFVuaWZvcm0xaSh0ZXh0dXJlTG9jYXRpb24sIDEpOworICAgIGRyYXdRdWFkKHBy
b2dyYW0sIGVzc2wxX3NoYWRlcnM6OlBvc2l0aW9uQXR0cmliKCksIDAuNWYpOworICAgIEFTU0VS
VF9HTF9OT19FUlJPUigpOworICAgIEVYUEVDVF9QSVhFTF9DT0xPUl9FUSgwLCAwLCBjb2xvcnNb
MV0pOworCisgICAgLy8gUmViaW5kIHRoZSBzYW1lIHRleHR1cmUgdG8gdGV4dHVyZSB1bml0IDAg
YW5kIGV4cGVjdCBzYW1lIGNvbG9yCisgICAgZ2xBY3RpdmVUZXh0dXJlKEdMX1RFWFRVUkUwKTsK
KyAgICBnbFVuaWZvcm0xaSh0ZXh0dXJlTG9jYXRpb24sIDApOworICAgIGdsQmluZFRleHR1cmUo
R0xfVEVYVFVSRV8yRCwgdGV4WzBdKTsKKyAgICBkcmF3UXVhZChwcm9ncmFtLCBlc3NsMV9zaGFk
ZXJzOjpQb3NpdGlvbkF0dHJpYigpLCAwLjVmKTsKKyAgICBBU1NFUlRfR0xfTk9fRVJST1IoKTsK
KyAgICBFWFBFQ1RfUElYRUxfQ09MT1JfRVEoMCwgMCwgY29sb3JzWzBdKTsKK30KKworLy8gVGVz
dCB0aGF0IGVhcmx5IHJldHVybiBvbiBiaW5kaW5nIHRoZSBzYW1lIHNhbXBsZXIgaXMgZnVuY3Rp
b25hbAorVEVTVF9QKFNpbXBsZVN0YXRlQ2hhbmdlVGVzdEVTMywgQmluZGluZ1NhbWVTYW1wbGVy
KQoreworICAgIC8vIENyZWF0ZSAyIHNhbXBsZXJzIHdpdGggZGlmZmVyZW50IGZpbHRlcmluZy4K
KyAgICBjb25zdGV4cHIgR0xzaXplaSBrTnVtU2FtcGxlcnMgPSAyOworICAgIEdMU2FtcGxlciBz
YW1wbGVyc1trTnVtU2FtcGxlcnNdOworCisgICAgLy8gSW5pdCBzYW1wbGVyMAorICAgIGdsQmlu
ZFNhbXBsZXIoMCwgc2FtcGxlcnNbMF0pOworICAgIGdsU2FtcGxlclBhcmFtZXRlcmkoc2FtcGxl
cnNbMF0sIEdMX1RFWFRVUkVfTUlOX0ZJTFRFUiwgR0xfTkVBUkVTVCk7CisgICAgZ2xTYW1wbGVy
UGFyYW1ldGVyaShzYW1wbGVyc1swXSwgR0xfVEVYVFVSRV9NQUdfRklMVEVSLCBHTF9ORUFSRVNU
KTsKKyAgICBBU1NFUlRfR0xfTk9fRVJST1IoKTsKKworICAgIC8vIEluaXQgc2FtcGxlcjEKKyAg
ICBnbEJpbmRTYW1wbGVyKDEsIHNhbXBsZXJzWzFdKTsKKyAgICBnbFNhbXBsZXJQYXJhbWV0ZXJp
KHNhbXBsZXJzWzFdLCBHTF9URVhUVVJFX01JTl9GSUxURVIsIEdMX0xJTkVBUik7CisgICAgZ2xT
YW1wbGVyUGFyYW1ldGVyaShzYW1wbGVyc1sxXSwgR0xfVEVYVFVSRV9NQUdfRklMVEVSLCBHTF9M
SU5FQVIpOworICAgIEFTU0VSVF9HTF9OT19FUlJPUigpOworCisgICAgLy8gQ3JlYXRlIGEgc2lt
cGxlIDJ4MSB0ZXh0dXJlIHdpdGggYmxhY2sgYW5kIHdoaXRlIGNvbG9ycworICAgIHN0ZDo6YXJy
YXk8R0xDb2xvciwgMj4gY29sb3JzID0ge3tHTENvbG9yOjpibGFjaywgR0xDb2xvcjo6d2hpdGV9
fTsKKworICAgIEdMVGV4dHVyZSB0ZXg7CisgICAgLy8gQmluZCB0aGUgc2FtZSB0ZXh0dXJlIHRv
IHRleHR1cmUgdW5pdHMgMCBhbmQgMQorICAgIGdsQWN0aXZlVGV4dHVyZShHTF9URVhUVVJFMCk7
CisgICAgZ2xCaW5kVGV4dHVyZShHTF9URVhUVVJFXzJELCB0ZXgpOworICAgIGdsQWN0aXZlVGV4
dHVyZShHTF9URVhUVVJFMSk7CisgICAgZ2xCaW5kVGV4dHVyZShHTF9URVhUVVJFXzJELCB0ZXgp
OworICAgIGdsVGV4SW1hZ2UyRChHTF9URVhUVVJFXzJELCAwLCBHTF9SR0JBLCAyLCAxLCAwLCBH
TF9SR0JBLCBHTF9VTlNJR05FRF9CWVRFLCBjb2xvcnMuZGF0YSgpKTsKKworICAgIC8vIENyZWF0
ZSBhIHByb2dyYW0gdGhhdCB1c2VzIDIgc2FtcGxlcnMuCisgICAgY29uc3RleHByIGNoYXIga0ZT
W10gPSBSIihwcmVjaXNpb24gbWVkaXVtcCBmbG9hdDsKK3ZhcnlpbmcgdmVjMiB2X3RleENvb3Jk
OwordW5pZm9ybSBzYW1wbGVyMkQgYmFzZVNhbXBsZXI7Cit1bmlmb3JtIHNhbXBsZXIyRCBvdmVy
cmlkZVNhbXBsZXI7Cit2b2lkIG1haW4oKQoreworICAgIGdsX0ZyYWdDb2xvciA9IHRleHR1cmUy
RChiYXNlU2FtcGxlciwgdl90ZXhDb29yZCk7CisgICAgZ2xfRnJhZ0NvbG9yID0gdGV4dHVyZTJE
KG92ZXJyaWRlU2FtcGxlciwgdl90ZXhDb29yZCk7Cit9KSI7CisgICAgQU5HTEVfR0xfUFJPR1JB
TShwcm9ncmFtLCBlc3NsMV9zaGFkZXJzOjp2czo6VGV4dHVyZTJEKCksIGtGUyk7CisgICAgZ2xV
c2VQcm9ncmFtKHByb2dyYW0pOworICAgIEdMaW50IGJhc2VTYW1wbGVyTG9jICAgICA9IGdsR2V0
VW5pZm9ybUxvY2F0aW9uKHByb2dyYW0sICJiYXNlU2FtcGxlciIpOworICAgIEdMaW50IG92ZXJy
aWRlU2FtcGxlckxvYyA9IGdsR2V0VW5pZm9ybUxvY2F0aW9uKHByb2dyYW0sICJvdmVycmlkZVNh
bXBsZXIiKTsKKworICAgIC8vIEJpbmQgc2FtcGxlcnMgdG8gdGV4dHVyZSB1bml0cyAwIGFuZCAx
CisgICAgZ2xCaW5kU2FtcGxlcigwLCBzYW1wbGVyc1swXSk7CisgICAgZ2xCaW5kU2FtcGxlcigx
LCBzYW1wbGVyc1sxXSk7CisgICAgZ2xVbmlmb3JtMWkoYmFzZVNhbXBsZXJMb2MsIDApOworICAg
IGdsVW5pZm9ybTFpKG92ZXJyaWRlU2FtcGxlckxvYywgMSk7CisgICAgZHJhd1F1YWQocHJvZ3Jh
bSwgc3RkOjpzdHJpbmcoZXNzbDFfc2hhZGVyczo6UG9zaXRpb25BdHRyaWIoKSksIDAuNWYpOwor
ICAgIEFTU0VSVF9HTF9OT19FUlJPUigpOworICAgIC8vIEEgZ3JhZGllbnQgc2hvdWxkIGhhdmUg
YmVlbiByZW5kZXJlZCBzaW5jZSAib3ZlcnJpZGVTYW1wbGVyIiBoYXMgbGluZWFyIGZpbHRlciwK
KyAgICAvLyB3ZSBzaG91bGQgbm90IGV4cGVjdCBhIHNvbGlkIGJsYWNrIG9yIHdoaXRlIGNvbG9y
LgorICAgIEVYUEVDVF9ORShhbmdsZTo6UmVhZENvbG9yKGdldFdpbmRvd1dpZHRoKCkgLyAyLCBn
ZXRXaW5kb3dIZWlnaHQoKSAvIDIpLCBHTENvbG9yOjpibGFjayk7CisgICAgRVhQRUNUX05FKGFu
Z2xlOjpSZWFkQ29sb3IoZ2V0V2luZG93V2lkdGgoKSAvIDIsIGdldFdpbmRvd0hlaWdodCgpIC8g
MiksIEdMQ29sb3I6OndoaXRlKTsKKworICAgIC8vIFN3aXRjaCBzYW1wbGVyIGJpbmRpbmdzCisg
ICAgZ2xCaW5kU2FtcGxlcigxLCBzYW1wbGVyc1swXSk7CisgICAgZ2xCaW5kU2FtcGxlcigwLCBz
YW1wbGVyc1sxXSk7CisgICAgZHJhd1F1YWQocHJvZ3JhbSwgc3RkOjpzdHJpbmcoZXNzbDFfc2hh
ZGVyczo6UG9zaXRpb25BdHRyaWIoKSksIDAuNWYpOworICAgIEFTU0VSVF9HTF9OT19FUlJPUigp
OworICAgIC8vIE5vdyB0aGF0ICJvdmVycmlkZVNhbXBsZXIiIGhhcyBuZWFyZXN0IGZpbHRlciBl
eHBlY3Qgc29saWQgY29sb3JzLgorICAgIEVYUEVDVF9QSVhFTF9DT0xPUl9FUSgwLCAwLCBHTENv
bG9yOjpibGFjayk7CisgICAgRVhQRUNUX1BJWEVMX0NPTE9SX0VRKGdldFdpbmRvd1dpZHRoKCkg
LyAyLCAwLCBHTENvbG9yOjp3aGl0ZSk7CisKKyAgICAvLyBSZWJpbmQgdGhlIHNhbWUgc2FtcGxl
cnMgYWdhaW4gYW5kIGV4cGVjdCBzYW1lIG91dHB1dAorICAgIGdsQmluZFNhbXBsZXIoMSwgc2Ft
cGxlcnNbMF0pOworICAgIGdsQmluZFNhbXBsZXIoMCwgc2FtcGxlcnNbMV0pOworICAgIGRyYXdR
dWFkKHByb2dyYW0sIHN0ZDo6c3RyaW5nKGVzc2wxX3NoYWRlcnM6OlBvc2l0aW9uQXR0cmliKCkp
LCAwLjVmKTsKKyAgICBBU1NFUlRfR0xfTk9fRVJST1IoKTsKKyAgICBFWFBFQ1RfUElYRUxfQ09M
T1JfRVEoMCwgMCwgR0xDb2xvcjo6YmxhY2spOworICAgIEVYUEVDVF9QSVhFTF9DT0xPUl9FUShn
ZXRXaW5kb3dXaWR0aCgpIC8gMiwgMCwgR0xDb2xvcjo6d2hpdGUpOworfQorCisvLyBUZXN0IHRo
YXQgZWFybHkgcmV0dXJuIG9uIGJpbmRpbmcgdGhlIHNhbWUgYnVmZmVyIGlzIGZ1bmN0aW9uYWwK
K1RFU1RfUChTaW1wbGVTdGF0ZUNoYW5nZVRlc3RFUzMsIEJpbmRpbmdTYW1lQnVmZmVyKQorewor
ICAgIEdMdXNob3J0IGluZGV4RGF0YVtdID0gezAsIDEsIDIsIDN9OworCisgICAgR0xCdWZmZXIg
ZWxlbWVudEFycmF5QnVmZmVyOworICAgIGdsQmluZEJ1ZmZlcihHTF9FTEVNRU5UX0FSUkFZX0JV
RkZFUiwgZWxlbWVudEFycmF5QnVmZmVyKTsKKyAgICBnbEJ1ZmZlckRhdGEoR0xfRUxFTUVOVF9B
UlJBWV9CVUZGRVIsIHNpemVvZihpbmRleERhdGEpLCBpbmRleERhdGEsIEdMX1NUQVRJQ19EUkFX
KTsKKworICAgIEFOR0xFX0dMX1BST0dSQU0ocHJvZ3JhbSwgZXNzbDFfc2hhZGVyczo6dnM6Olpl
cm8oKSwgZXNzbDFfc2hhZGVyczo6ZnM6OlJlZCgpKTsKKyAgICBnbFVzZVByb2dyYW0ocHJvZ3Jh
bSk7CisKKyAgICBnbERyYXdFbGVtZW50cyhHTF9QT0lOVFMsIDQsIEdMX1VOU0lHTkVEX1NIT1JU
LCAwKTsKKworICAgIHN0ZDo6dmVjdG9yPEdMQ29sb3I+IGNvbG9yczAoa1dpbmRvd1NpemUgKiBr
V2luZG93U2l6ZSk7CisgICAgZ2xSZWFkUGl4ZWxzKDAsIDAsIGtXaW5kb3dTaXplLCBrV2luZG93
U2l6ZSwgR0xfUkdCQSwgR0xfVU5TSUdORURfQllURSwgY29sb3JzMC5kYXRhKCkpOworCisgICAg
Z2xCaW5kQnVmZmVyKEdMX0VMRU1FTlRfQVJSQVlfQlVGRkVSLCBlbGVtZW50QXJyYXlCdWZmZXIp
OworICAgIGdsRHJhd0VsZW1lbnRzKEdMX1BPSU5UUywgNCwgR0xfVU5TSUdORURfU0hPUlQsIDAp
OworICAgIHN0ZDo6dmVjdG9yPEdMQ29sb3I+IGNvbG9yczEoa1dpbmRvd1NpemUgKiBrV2luZG93
U2l6ZSk7CisgICAgZ2xSZWFkUGl4ZWxzKDAsIDAsIGtXaW5kb3dTaXplLCBrV2luZG93U2l6ZSwg
R0xfUkdCQSwgR0xfVU5TSUdORURfQllURSwgY29sb3JzMS5kYXRhKCkpOworCisgICAgRVhQRUNU
X0VRKGNvbG9yczAsIGNvbG9yczEpOworfQorCiBjbGFzcyBJbWFnZVJlc3BlY2lmaWNhdGlvblRl
c3QgOiBwdWJsaWMgQU5HTEVUZXN0CiB7CiAgIHByb3RlY3RlZDoKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9nbF90ZXN0cy9UcmFuc2Zvcm1GZWVkYmFja1Rl
c3QuY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2dsX3Rlc3RzL1RyYW5z
Zm9ybUZlZWRiYWNrVGVzdC5jcHAKaW5kZXggNWZhODYzOWEwNTczMGZmYTE5MTY3ODkwNmMyYzhm
MWIzOWRhMjg4MC4uYzBlMzc3ODFjZThiNGYyNzRiNjJkZWRkZGRlYmUyODc5YzRmNjUxMiAxMDA2
NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2dsX3Rlc3RzL1RyYW5z
Zm9ybUZlZWRiYWNrVGVzdC5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rl
c3RzL2dsX3Rlc3RzL1RyYW5zZm9ybUZlZWRiYWNrVGVzdC5jcHAKQEAgLTM5NzgsNiArMzk3OCw0
NCBAQCB2b2lkIG1haW4gKHZvaWQpCiAgICAgRVhQRUNUX0dMX05PX0VSUk9SKCk7CiB9CiAKKy8v
IFRlc3RzIHRoYXQgd2UgZG9uJ3QgcHJvZHVjZSB1bmRlZmluZWQgYmVoYXZpb3VyIHdoZW4gZGVs
ZXRpbmcgYSBjdXJyZW50IFhGQiBidWZmZXIuCitURVNUX1AoVHJhbnNmb3JtRmVlZGJhY2tUZXN0
LCBEZWxldGVUcmFuc2Zvcm1GZWVkYmFja0J1ZmZlcikKK3sKKyAgICBBTkdMRV9HTF9QUk9HUkFN
X1RSQU5TRk9STV9GRUVEQkFDSyh0ZXN0UHJvZ3JhbSwgZXNzbDFfc2hhZGVyczo6dnM6OlNpbXBs
ZSgpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVzc2wxX3NoYWRl
cnM6OmZzOjpHcmVlbigpLCB7ImdsX1Bvc2l0aW9uIn0sCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgR0xfSU5URVJMRUFWRURfQVRUUklCUyk7CisgICAgZ2xVc2VQcm9n
cmFtKHRlc3RQcm9ncmFtKTsKKworICAgIEdMQnVmZmVyIGJ1ZjsKKyAgICBnbEJpbmRCdWZmZXIo
R0xfUElYRUxfVU5QQUNLX0JVRkZFUiwgYnVmKTsKKyAgICBzdGQ6OnZlY3Rvcjx1aW50OF90PiBi
dWZEYXRhKDEwMDAwMCwgMCk7CisgICAgZ2xCdWZmZXJEYXRhKEdMX1BJWEVMX1VOUEFDS19CVUZG
RVIsIGJ1ZkRhdGEuc2l6ZSgpLCBidWZEYXRhLmRhdGEoKSwgR0xfRFlOQU1JQ19DT1BZKTsKKyAg
ICBnbEJpbmRCdWZmZXJCYXNlKEdMX1RSQU5TRk9STV9GRUVEQkFDS19CVUZGRVIsIDAsIGJ1Zik7
CisgICAgZ2xCZWdpblRyYW5zZm9ybUZlZWRiYWNrKEdMX1BPSU5UUyk7CisgICAgZ2xCaW5kQnVm
ZmVyKEdMX1BJWEVMX1VOUEFDS19CVUZGRVIsIDApOworICAgIGJ1Zi5yZXNldCgpOworICAgIGds
RHJhd0FycmF5cyhHTF9QT0lOVFMsIDAsIDEpOworfQorCisvLyBTYW1lIGFzIHRoZSBhYm92ZSwg
d2l0aCBhIHBhdXNlZCB0cmFuc2Zvcm0gZmVlZGJhY2suCitURVNUX1AoVHJhbnNmb3JtRmVlZGJh
Y2tUZXN0LCBEZWxldGVQYXVzZWRUcmFuc2Zvcm1GZWVkYmFja0J1ZmZlcikKK3sKKyAgICBBTkdM
RV9HTF9QUk9HUkFNX1RSQU5TRk9STV9GRUVEQkFDSyh0ZXN0UHJvZ3JhbSwgZXNzbDFfc2hhZGVy
czo6dnM6OlNpbXBsZSgpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGVzc2wxX3NoYWRlcnM6OmZzOjpHcmVlbigpLCB7ImdsX1Bvc2l0aW9uIn0sCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xfSU5URVJMRUFWRURfQVRUUklCUyk7Cisg
ICAgZ2xVc2VQcm9ncmFtKHRlc3RQcm9ncmFtKTsKKworICAgIEdMQnVmZmVyIGJ1ZmZlcjsKKyAg
ICBnbEJpbmRCdWZmZXIoR0xfUElYRUxfVU5QQUNLX0JVRkZFUiwgYnVmZmVyKTsKKyAgICBnbEJ1
ZmZlckRhdGEoR0xfUElYRUxfVU5QQUNLX0JVRkZFUiwgMywgbnVsbHB0ciwgR0xfU1RBVElDX0RS
QVcpOworICAgIGdsQmluZEJ1ZmZlckJhc2UoR0xfVFJBTlNGT1JNX0ZFRURCQUNLX0JVRkZFUiwg
MCwgYnVmZmVyKTsKKworICAgIGdsQmVnaW5UcmFuc2Zvcm1GZWVkYmFjayhHTF9QT0lOVFMpOwor
ICAgIGdsUGF1c2VUcmFuc2Zvcm1GZWVkYmFjaygpOworICAgIGJ1ZmZlci5yZXNldCgpOworICAg
IGdsRHJhd0FycmF5cyhHTF9QT0lOVFMsIDAsIDEpOworfQorCiBHVEVTVF9BTExPV19VTklOU1RB
TlRJQVRFRF9QQVJBTUVURVJJWkVEX1RFU1QoVHJhbnNmb3JtRmVlZGJhY2tUZXN0KTsKIEFOR0xF
X0lOU1RBTlRJQVRFX1RFU1RfRVMzKFRyYW5zZm9ybUZlZWRiYWNrVGVzdCk7CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9nbF90ZXN0cy9WZXJ0ZXhBdHRy
aWJ1dGVUZXN0LmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9nbF90ZXN0
cy9WZXJ0ZXhBdHRyaWJ1dGVUZXN0LmNwcAppbmRleCA2ZGNmMDk2MjE0OWMwZDA3M2FhN2YzZmFm
MTMwZDFkZWU2OTNlZjE0Li45NjMzYmQ1YTNmMGJiNGMxNzdmM2E3NTg1MmE3NWVjZjEzOWViZmRl
IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvZ2xfdGVzdHMv
VmVydGV4QXR0cmlidXRlVGVzdC5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3Jj
L3Rlc3RzL2dsX3Rlc3RzL1ZlcnRleEF0dHJpYnV0ZVRlc3QuY3BwCkBAIC0xNzI3LDYgKzE3Mjcs
NzggQEAgdm9pZCBtYWluKCkKICAgICBFWFBFQ1RfUElYRUxfQ09MT1JfRVEoMCwgMCwgR0xDb2xv
cjo6eWVsbG93KTsKIH0KIAorLy8gVGVzdHMgdGhhdCB3ZSBkbyBub3QgZ2VuZXJhdGUgYSBTSUdC
VVMgZXJyb3Igb24gYXJtIHdoZW4gdHJhbnNsYXRpbmcgdW5hbGlnbmVkIGRhdGEuCisvLyBHTF9S
RzMyX1NOT1JNX0FOR0xFWCBpcyB1c2VkIHdoZW4gdXNpbmcgZ2xWZXJ0ZXhBdHRyaWJQb2ludGVy
IHdpdGggY2VydGFpbiBwYXJhbWV0ZXJzLgorVEVTVF9QKFZlcnRleEF0dHJpYnV0ZVRlc3RFUzMs
IERyYXdXaXRoVW5hbGlnbmVkRGF0YSkKK3sKKyAgICAvLyBodHRwOi8vYW5nbGVidWcuY29tLzcw
NjgKKyAgICBBTkdMRV9TS0lQX1RFU1RfSUYoSXNPU1goKSk7CisKKyAgICBjb25zdGV4cHIgY2hh
ciBrVlNbXSA9IFIiKCN2ZXJzaW9uIDMwMCBlcworcHJlY2lzaW9uIGhpZ2hwIGZsb2F0OworaW4g
aGlnaHAgdmVjNCBhX3Bvc2l0aW9uOworaW4gaGlnaHAgaXZlYzIgYV9Db2xvclRlc3Q7CitvdXQg
aGlnaHAgdmVjMiB2X2NvbG9yVGVzdDsKKwordm9pZCBtYWluKCkgeworICAgIHZfY29sb3JUZXN0
ID0gdmVjMihhX0NvbG9yVGVzdCk7CisgICAgZ2xfUG9zaXRpb24gPSBhX3Bvc2l0aW9uOworfSki
OworCisgICAgY29uc3RleHByIGNoYXIga0ZTW10gPSBSIigjdmVyc2lvbiAzMDAgZXMKK3ByZWNp
c2lvbiBoaWdocCBmbG9hdDsKK2luIGhpZ2hwIHZlYzIgdl9jb2xvclRlc3Q7CitvdXQgdmVjNCBm
cmFnQ29sb3I7CisKK3ZvaWQgbWFpbigpIHsKKyAgICBpZih2X2NvbG9yVGVzdC54ID4gMC41KSB7
CisgICAgICAgIGZyYWdDb2xvciA9IHZlYzQoMC4wLCAxLjAsIDAuMCwgMS4wKTsKKyAgICB9IGVs
c2UgeworICAgICAgICBmcmFnQ29sb3IgPSB2ZWM0KDEuMCwgMC4wLCAwLjAsIDEuMCk7CisgICAg
fQorfSkiOworCisgICAgQU5HTEVfR0xfUFJPR1JBTShwcm9ncmFtLCBrVlMsIGtGUyk7CisgICAg
Z2xCaW5kQXR0cmliTG9jYXRpb24ocHJvZ3JhbSwgMCwgImFfcG9zaXRpb24iKTsKKyAgICBnbEJp
bmRBdHRyaWJMb2NhdGlvbihwcm9ncmFtLCAxLCAiYV9Db2xvclRlc3QiKTsKKyAgICBnbExpbmtQ
cm9ncmFtKHByb2dyYW0pOworICAgIGdsVXNlUHJvZ3JhbShwcm9ncmFtKTsKKyAgICBBU1NFUlRf
R0xfTk9fRVJST1IoKTsKKworICAgIGNvbnN0ZXhwciBzaXplX3Qga0RhdGFTaXplID0gMTI7CisK
KyAgICAvLyBJbml0aWFsaXplIHZlcnRleCBhdHRyaWJ1dGUgZGF0YSB3aXRoIDF1MzJzLCBidXQg
c2hpZnRlZCByaWdodCBieSBhIHZhcmlhYmxlIG51bWJlciBvZiBieXRlcworICAgIEdMdWJ5dGUg
Y29sb3JUZXN0RGF0YVsoa0RhdGFTaXplICsgMSkgKiBzaXplb2YoR0x1aW50KV07CisKKyAgICBm
b3IgKHNpemVfdCBvZmZzZXQgPSAwOyBvZmZzZXQgPCBzaXplb2YoR0x1aW50KTsgb2Zmc2V0Kysp
CisgICAgeworICAgICAgICBmb3IgKHNpemVfdCBkYXRhSW5kZXggPSAwOyBkYXRhSW5kZXggPCBr
RGF0YVNpemUgKiBzaXplb2YoR0x1aW50KTsgZGF0YUluZGV4KyspCisgICAgICAgIHsKKyAgICAg
ICAgICAgIGlmIChkYXRhSW5kZXggJSBzaXplb2YoR0x1aW50KSA9PSBzaXplb2YoR0x1aW50KSAt
IDEpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgY29sb3JUZXN0RGF0YVtkYXRhSW5k
ZXggKyBvZmZzZXRdID0gMTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGVsc2UKKyAgICAg
ICAgICAgIHsKKworICAgICAgICAgICAgICAgIGNvbG9yVGVzdERhdGFbZGF0YUluZGV4ICsgb2Zm
c2V0XSA9IDA7CisgICAgICAgICAgICB9CisgICAgICAgIH0KKworICAgICAgICBHTHVieXRlICpv
ZmZzZXRQdHIgPSAmY29sb3JUZXN0RGF0YVtvZmZzZXRdOworICAgICAgICBnbFZlcnRleEF0dHJp
YlBvaW50ZXIoMSwgMiwgR0xfSU5ULCBHTF9UUlVFLCBzaXplb2YoR0x1aW50KSwgb2Zmc2V0UHRy
KTsKKworICAgICAgICBnbEJpbmRCdWZmZXIoR0xfQVJSQVlfQlVGRkVSLCAwKTsKKyAgICAgICAg
Z2xFbmFibGVWZXJ0ZXhBdHRyaWJBcnJheSgxKTsKKworICAgICAgICBkcmF3SW5kZXhlZFF1YWQo
cHJvZ3JhbSwgImFfcG9zaXRpb24iLCAwLjVmLCAxLjBmLCBmYWxzZSwgdHJ1ZSk7CisKKyAgICAg
ICAgLy8gVmVyaWZ5IGdyZWVuIHdhcyBkcmF3bi4KKyAgICAgICAgRVhQRUNUX1BJWEVMX0NPTE9S
X0VRKGdldFdpbmRvd1dpZHRoKCkgLSAxLCBnZXRXaW5kb3dIZWlnaHQoKSAtIDEsIEdMQ29sb3I6
OmdyZWVuKTsKKyAgICAgICAgQVNTRVJUX0dMX05PX0VSUk9SKCk7CisgICAgfQorfQorCiAvLyBU
ZXN0cyB0aGF0IHJlbmRlcmluZyBpcyBmaW5lIGlmIEdMX0FOR0xFX3JlbGF4ZWRfdmVydGV4X2F0
dHJpYnV0ZV90eXBlIGlzIGVuYWJsZWQKIC8vIGFuZCBtaXNtYXRjaGVkIGludGVnZXIgc2lnbmVk
bmVzcyBiZXR3ZWVuIHRoZSBwcm9ncmFtJ3MgYXR0cmlidXRlIHR5cGUgYW5kIHRoZQogLy8gYXR0
cmlidXRlIHR5cGUgc3BlY2lmaWVkIGJ5IFZlcnRleEF0dHJpYklQb2ludGVyIGFyZSB1c2VkLgpA
QCAtMzk3NCw2ICs0MDQ2LDg1IEBAIFRFU1RfUChWZXJ0ZXhBdHRyaWJ1dGVUZXN0RVMzLCBFbXB0
eUFycmF5QnVmZmVyKQogICAgIHN3YXBCdWZmZXJzKCk7CiB9CiAKKy8vIFNldCBhbiBhdHRyaWIg
cG9pbnRlciBhbmQgZGVsZXRlIGl0J3MgYnVmZmVyIGFmdGVyIHVzYWdlLCB3aGlsZSBrZWVwaW5n
IHRoZSB2ZXJ0ZXggYXJyYXkuCisvLyBUaGlzIHdpbGwgY2F1c2UgTUVDIHRvIGNhcHR1cmUgYW4g
aW52YWxpZCBhdHRyaWJ1dGUgcG9pbnRlciBhbmQgYWxzbyB0cmlnZ2VyCisvLyAiQ2xpZW50IGRh
dGEgY2Fubm90IGJlIHVzZWQgd2l0aCBhIG5vbi1kZWZhdWx0IHZlcnRleCBhcnJheSBvYmplY3Qu
IgorVEVTVF9QKFZlcnRleEF0dHJpYnV0ZVRlc3RFUzMsIEludmFsaWRBdHRyaWJQb2ludGVyKQor
eworICAgIEdMVmVydGV4QXJyYXkgdmVydGV4QXJyYXk7CisgICAgZ2xCaW5kVmVydGV4QXJyYXko
dmVydGV4QXJyYXkpOworCisgICAgc3RkOjphcnJheTxHTGJ5dGUsIDEyPiB2ZXJ0ZXhEYXRhID0g
ezEsIDIsIDMsIDQsIDUsIDYsIDcsIDgsIDksIDEwLCAxMSwgMTJ9OworCisgICAgeworICAgICAg
ICBHTEJ1ZmZlciB0b0JlRGVsZXRlZEFycmF5QnVmZmVyOworICAgICAgICBnbEJpbmRCdWZmZXIo
R0xfQVJSQVlfQlVGRkVSLCB0b0JlRGVsZXRlZEFycmF5QnVmZmVyKTsKKworICAgICAgICBnbEJ1
ZmZlckRhdGEoR0xfQVJSQVlfQlVGRkVSLCB2ZXJ0ZXhEYXRhLnNpemUoKSwgdmVydGV4RGF0YS5k
YXRhKCksIEdMX0RZTkFNSUNfRFJBVyk7CisKKyAgICAgICAgZ2xFbmFibGVWZXJ0ZXhBdHRyaWJB
cnJheSgwKTsKKyAgICAgICAgZ2xFbmFibGVWZXJ0ZXhBdHRyaWJBcnJheSgxKTsKKworICAgICAg
ICBnbFZlcnRleEF0dHJpYlBvaW50ZXIoMCwgMywgR0xfRkxPQVQsIEdMX0ZBTFNFLCA2LCBudWxs
cHRyKTsKKyAgICAgICAgZ2xWZXJ0ZXhBdHRyaWJQb2ludGVyKDEsIDMsIEdMX0ZMT0FULCBHTF9G
QUxTRSwgNiwgcmVpbnRlcnByZXRfY2FzdDxjb25zdCB2b2lkICo+KDYpKTsKKworICAgICAgICBn
bEJpbmRCdWZmZXIoR0xfQVJSQVlfQlVGRkVSLCAwKTsKKyAgICAgICAgZ2xEaXNhYmxlVmVydGV4
QXR0cmliQXJyYXkoMCk7CisgICAgICAgIGdsRGlzYWJsZVZlcnRleEF0dHJpYkFycmF5KDEpOwor
CisgICAgICAgIEVYUEVDVF9HTF9OT19FUlJPUigpOworICAgIH0KKworICAgIC8vIFNldCBhbiBh
dHRyaWIgcG9pbnRlciB0aGF0IHdpbGwgYmUgYWN0dWFsbHkgcGlja2VkIHVwIGJ5IE1FQywgc2lu
Y2UgdGhlIGJ1ZmZlciB3aWxsIGJlIGtlcHQuCisgICAgZ2xFbmFibGVWZXJ0ZXhBdHRyaWJBcnJh
eSgwKTsKKworICAgIEdMQnVmZmVyIGFycmF5QnVmZmVyOworICAgIGdsQmluZEJ1ZmZlcihHTF9B
UlJBWV9CVUZGRVIsIGFycmF5QnVmZmVyKTsKKworICAgIGdsQnVmZmVyRGF0YShHTF9BUlJBWV9C
VUZGRVIsIHZlcnRleERhdGEuc2l6ZSgpLCB2ZXJ0ZXhEYXRhLmRhdGEoKSwgR0xfRFlOQU1JQ19E
UkFXKTsKKworICAgIGdsVmVydGV4QXR0cmliUG9pbnRlcigwLCAzLCBHTF9GTE9BVCwgR0xfRkFM
U0UsIDMsIHJlaW50ZXJwcmV0X2Nhc3Q8Y29uc3Qgdm9pZCAqPigzKSk7CisKKyAgICBFWFBFQ1Rf
R0xfTk9fRVJST1IoKTsKKworICAgIC8vIFN3YXAgYSBmcmFtZSBmb3IgTUVDCisgICAgc3dhcEJ1
ZmZlcnMoKTsKKworICAgIGdsQmluZEJ1ZmZlcihHTF9BUlJBWV9CVUZGRVIsIDApOworICAgIGds
RW5hYmxlVmVydGV4QXR0cmliQXJyYXkoMCk7Cit9CisKKy8vIFRlc3QgYmluZCBhbiBlbXB0eSBi
dWZmZXIgZm9yIHZlcnRleCBhdHRyaWJ1dGUgZG9lcyBub3QgY3Jhc2gKK1RFU1RfUChWZXJ0ZXhB
dHRyaWJ1dGVUZXN0RVMzLCBlbXB0eUJ1ZmZlcikKK3sKKyAgICBjb25zdGV4cHIgY2hhciB2czJb
XSA9CisgICAgICAgIFIiKCN2ZXJzaW9uIDMwMCBlcworICAgICAgICAgICAgaW4gdXZlYzQgYXR0
cjA7CisgICAgICAgICAgICB2b2lkIG1haW4oKQorICAgICAgICAgICAgeworICAgICAgICAgICAg
ICAgIGdsX1Bvc2l0aW9uID0gdmVjNChhdHRyMC54LCAwLjAsIDAuMCwgMC4wKTsKKyAgICAgICAg
ICAgIH0pIjsKKyAgICBjb25zdGV4cHIgY2hhciBmc1tdID0KKyAgICAgICAgUiIoI3ZlcnNpb24g
MzAwIGVzCisgICAgICAgICAgICBwcmVjaXNpb24gaGlnaHAgZmxvYXQ7CisgICAgICAgICAgICBv
dXQgdmVjNCBjb2xvcjsKKyAgICAgICAgICAgIHZvaWQgbWFpbigpCisgICAgICAgICAgICB7Cisg
ICAgICAgICAgICAgICAgY29sb3IgPSB2ZWM0KDEuMCwgMC4wLCAwLjAsIDEuMCk7CisgICAgICAg
ICAgICB9KSI7CisgICAgR0x1aW50IHByb2dyYW0yID0gQ29tcGlsZVByb2dyYW0odnMyLCBmcyk7
CisgICAgR0x1aW50IGJ1ZjsKKyAgICBnbEdlbkJ1ZmZlcnMoMSwgJmJ1Zik7CisgICAgZ2xCaW5k
QnVmZmVyKEdMX0FSUkFZX0JVRkZFUiwgYnVmKTsKKyAgICBnbEVuYWJsZVZlcnRleEF0dHJpYkFy
cmF5KDApOworICAgIGdsVmVydGV4QXR0cmliSVBvaW50ZXIoMCwgNCwgR0xfVU5TSUdORURfQllU
RSwgMCwgMCk7CisgICAgZ2xWZXJ0ZXhBdHRyaWJEaXZpc29yKDAsIDIpOworICAgIGdsVXNlUHJv
Z3JhbShwcm9ncmFtMik7CisgICAgZ2xEcmF3QXJyYXlzKEdMX1BPSU5UUywgMCwgMSk7CisKKyAg
ICBzd2FwQnVmZmVycygpOworfQorCiAvLyBWQU8gZW11bGF0aW9uIGZhaWxzIG9uIE1hYyBidXQg
aXMgbm90IHVzZWQgb24gTWFjIGluIHRoZSB3aWxkLiBodHRwOi8vYW5nbGVidWcuY29tLzU1NzcK
ICNpZiAhZGVmaW5lZChfX0FQUExFX18pCiAjICAgIGRlZmluZSBFTVVMQVRFRF9WQU9fQ09ORklH
UyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKZGlmZiAtLWdpdCBh
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9nbF90ZXN0cy9WdWxrYW5QZXJmb3Jt
YW5jZUNvdW50ZXJUZXN0LmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9n
bF90ZXN0cy9WdWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJUZXN0LmNwcAppbmRleCBhYTg2NDI0M2Mw
ZDg1MDA2YzczNzlmOTI4ZmNmZTc3ZTFkNGE3NTlmLi43NmM1NGUxNGZiMTc4ZTJhZGZkNzFhZmVl
NzUzMWI3MDM1YThiNGYzIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
dGVzdHMvZ2xfdGVzdHMvVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdC5jcHAKKysrIGIvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2dsX3Rlc3RzL1Z1bGthblBlcmZvcm1hbmNl
Q291bnRlclRlc3QuY3BwCkBAIC0xNiwxMSArMTYsOSBAQAogLy8gQnV0ICdOb25lJyBpcyBhbHNv
IGRlZmluZWQgYXMgYSBudW1lcmljIGNvbnN0YW50IDBMIGluIDxYMTEvWC5oPi4KIC8vIFNvIHdl
IG5lZWQgdG8gaW5jbHVkZSBBTkdMRVRlc3QuaCBmaXJzdCB0byBhdm9pZCB0aGlzIGNvbmZsaWN0
LgogCi0jaW5jbHVkZSAibGliQU5HTEUvQ29udGV4dC5oIgotI2luY2x1ZGUgImxpYkFOR0xFL2Fu
Z2xldHlwZXMuaCIKLSNpbmNsdWRlICJsaWJBTkdMRS9yZW5kZXJlci92dWxrYW4vQ29udGV4dFZr
LmgiCiAjaW5jbHVkZSAidGVzdF91dGlscy9nbF9yYWlpLmgiCiAjaW5jbHVkZSAidXRpbC9yYW5k
b21fdXRpbHMuaCIKKyNpbmNsdWRlICJ1dGlsL3NoYWRlcl91dGlscy5oIgogCiB1c2luZyBuYW1l
c3BhY2UgYW5nbGU7CiAKQEAgLTQxLDE2ICszOSw2IEBAIGNsYXNzIFZ1bGthblBlcmZvcm1hbmNl
Q291bnRlclRlc3QgOiBwdWJsaWMgQU5HTEVUZXN0CiAgICAgICAgIHNldENvbmZpZ1N0ZW5jaWxC
aXRzKDgpOwogICAgIH0KIAotICAgIGNvbnN0IHJ4Ojp2azo6UGVyZkNvdW50ZXJzICZoYWNrQU5H
TEUoKSBjb25zdAotICAgIHsKLSAgICAgICAgLy8gSGFjayB0aGUgYW5nbGUhCi0gICAgICAgIGNv
bnN0IGdsOjpDb250ZXh0ICpjb250ZXh0ID0gc3RhdGljX2Nhc3Q8Y29uc3QgZ2w6OkNvbnRleHQg
Kj4oZ2V0RUdMV2luZG93KCktPmdldENvbnRleHQoKSk7Ci0gICAgICAgIHJ4OjpDb250ZXh0Vmsg
KmNvbnRleHRWayAgID0gcng6OkdldEltcGxBczxyeDo6Q29udGV4dFZrPihjb250ZXh0KTsKLSAg
ICAgICAgLy8gVGhpcyB3aWxsIGJlIGltcGxpY2l0bHkgY2FsbGVkIHdoZW4gdXNpbmcgdGhlIGV4
dGVuc2lvbi4KLSAgICAgICAgY29udGV4dFZrLT5zeW5jT2JqZWN0UGVyZkNvdW50ZXJzKCk7Ci0g
ICAgICAgIHJldHVybiBjb250ZXh0VmstPmdldFBlcmZDb3VudGVycygpOwotICAgIH0KLQogICAg
IHN0YXRpYyBjb25zdGV4cHIgR0xzaXplaSBrSW52YWxpZGF0ZVRlc3RTaXplID0gMTY7CiAKICAg
ICB2b2lkIHNldHVwQ2xlYXJBbmREcmF3Rm9ySW52YWxpZGF0ZVRlc3QoR0xQcm9ncmFtICpwcm9n
cmFtLApAQCAtODgsNyArNzYsNyBAQCBjbGFzcyBWdWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJUZXN0
IDogcHVibGljIEFOR0xFVGVzdAogICAgICAgICBBU1NFUlRfR0xfTk9fRVJST1IoKTsKICAgICB9
CiAKLSAgICB2b2lkIHNldEV4cGVjdGVkQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChjb25zdCBy
eDo6dms6OlBlcmZDb3VudGVycyAmY291bnRlcnMsCisgICAgdm9pZCBzZXRFeHBlY3RlZENvdW50
ZXJzRm9ySW52YWxpZGF0ZVRlc3QoY29uc3QgYW5nbGU6OlZ1bGthblBlcmZDb3VudGVycyAmY291
bnRlcnMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWlu
dDMyX3QgaW5jcmVtZW50YWxSZW5kZXJQYXNzZXMsCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgaW5jcmVtZW50YWxEZXB0aENsZWFycywKICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBpbmNy
ZW1lbnRhbERlcHRoTG9hZHMsCkBAIC05Niw3ICs4NCw3IEBAIGNsYXNzIFZ1bGthblBlcmZvcm1h
bmNlQ291bnRlclRlc3QgOiBwdWJsaWMgQU5HTEVUZXN0CiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgaW5jcmVtZW50YWxTdGVuY2lsQ2xlYXJz
LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90
IGluY3JlbWVudGFsU3RlbmNpbExvYWRzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHVpbnQzMl90IGluY3JlbWVudGFsU3RlbmNpbFN0b3JlcywKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByeDo6dms6OlBlcmZDb3Vu
dGVycyAqZXhwZWN0ZWQpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgYW5nbGU6OlZ1bGthblBlcmZDb3VudGVycyAqZXhwZWN0ZWQpCiAgICAgewogICAgICAg
ICBleHBlY3RlZC0+cmVuZGVyUGFzc2VzICA9IGNvdW50ZXJzLnJlbmRlclBhc3NlcyArIGluY3Jl
bWVudGFsUmVuZGVyUGFzc2VzOwogICAgICAgICBleHBlY3RlZC0+ZGVwdGhDbGVhcnMgICA9IGNv
dW50ZXJzLmRlcHRoQ2xlYXJzICsgaW5jcmVtZW50YWxEZXB0aENsZWFyczsKQEAgLTEwNyw4ICs5
NSw4IEBAIGNsYXNzIFZ1bGthblBlcmZvcm1hbmNlQ291bnRlclRlc3QgOiBwdWJsaWMgQU5HTEVU
ZXN0CiAgICAgICAgIGV4cGVjdGVkLT5zdGVuY2lsU3RvcmVzID0gY291bnRlcnMuc3RlbmNpbFN0
b3JlcyArIGluY3JlbWVudGFsU3RlbmNpbFN0b3JlczsKICAgICB9CiAKLSAgICB2b2lkIGNvbXBh
cmVEZXB0aFN0ZW5jaWxDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGNvbnN0IHJ4Ojp2azo6UGVy
ZkNvdW50ZXJzICZjb3VudGVycywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGNvbnN0IHJ4Ojp2azo6UGVyZkNvdW50ZXJzICZleHBlY3RlZCkK
KyAgICB2b2lkIGNvbXBhcmVEZXB0aFN0ZW5jaWxDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGNv
bnN0IGFuZ2xlOjpWdWxrYW5QZXJmQ291bnRlcnMgJmNvdW50ZXJzLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgYW5nbGU6OlZ1bGth
blBlcmZDb3VudGVycyAmZXhwZWN0ZWQpCiAgICAgewogICAgICAgICBFWFBFQ1RfRVEoZXhwZWN0
ZWQuZGVwdGhDbGVhcnMsIGNvdW50ZXJzLmRlcHRoQ2xlYXJzKTsKICAgICAgICAgRVhQRUNUX0VR
KGV4cGVjdGVkLmRlcHRoTG9hZHMsIGNvdW50ZXJzLmRlcHRoTG9hZHMpOwpAQCAtMTE4LDMwICsx
MDYsMzAgQEAgY2xhc3MgVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdCA6IHB1YmxpYyBBTkdM
RVRlc3QKICAgICAgICAgRVhQRUNUX0VRKGV4cGVjdGVkLnN0ZW5jaWxTdG9yZXMsIGNvdW50ZXJz
LnN0ZW5jaWxTdG9yZXMpOwogICAgIH0KIAotICAgIHZvaWQgc2V0QW5kSW5jcmVtZW50TG9hZENv
dW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoY29uc3Qgcng6OnZrOjpQZXJmQ291bnRlcnMgJmNvdW50
ZXJzLAorICAgIHZvaWQgc2V0QW5kSW5jcmVtZW50TG9hZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRl
c3QoY29uc3QgYW5nbGU6OlZ1bGthblBlcmZDb3VudGVycyAmY291bnRlcnMsCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBpbmNy
ZW1lbnRhbERlcHRoTG9hZHMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICB1aW50MzJfdCBpbmNyZW1lbnRhbFN0ZW5jaWxMb2FkcywKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJ4Ojp2azo6
UGVyZkNvdW50ZXJzICpleHBlY3RlZCkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGFuZ2xlOjpWdWxrYW5QZXJmQ291bnRlcnMgKmV4cGVjdGVk
KQogICAgIHsKICAgICAgICAgZXhwZWN0ZWQtPmRlcHRoTG9hZHMgICA9IGNvdW50ZXJzLmRlcHRo
TG9hZHMgKyBpbmNyZW1lbnRhbERlcHRoTG9hZHM7CiAgICAgICAgIGV4cGVjdGVkLT5zdGVuY2ls
TG9hZHMgPSBjb3VudGVycy5zdGVuY2lsTG9hZHMgKyBpbmNyZW1lbnRhbFN0ZW5jaWxMb2FkczsK
ICAgICB9CiAKLSAgICB2b2lkIGNvbXBhcmVMb2FkQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChj
b25zdCByeDo6dms6OlBlcmZDb3VudGVycyAmY291bnRlcnMsCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgcng6OnZrOjpQZXJmQ291bnRlcnMgJmV4
cGVjdGVkKQorICAgIHZvaWQgY29tcGFyZUxvYWRDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGNv
bnN0IGFuZ2xlOjpWdWxrYW5QZXJmQ291bnRlcnMgJmNvdW50ZXJzLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGFuZ2xlOjpWdWxrYW5QZXJmQ291
bnRlcnMgJmV4cGVjdGVkKQogICAgIHsKICAgICAgICAgRVhQRUNUX0VRKGV4cGVjdGVkLmRlcHRo
TG9hZHMsIGNvdW50ZXJzLmRlcHRoTG9hZHMpOwogICAgICAgICBFWFBFQ1RfRVEoZXhwZWN0ZWQu
c3RlbmNpbExvYWRzLCBjb3VudGVycy5zdGVuY2lsTG9hZHMpOwogICAgIH0KIAotICAgIHZvaWQg
c2V0RXhwZWN0ZWRDb3VudGVyc0ZvclVucmVzb2x2ZVJlc29sdmVUZXN0KGNvbnN0IHJ4Ojp2azo6
UGVyZkNvdW50ZXJzICZjb3VudGVycywKKyAgICB2b2lkIHNldEV4cGVjdGVkQ291bnRlcnNGb3JV
bnJlc29sdmVSZXNvbHZlVGVzdChjb25zdCBhbmdsZTo6VnVsa2FuUGVyZkNvdW50ZXJzICZjb3Vu
dGVycywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICB1aW50MzJfdCBpbmNyZW1lbnRhbENvbG9yQXR0YWNobWVudFVucmVzb2x2ZXMsCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgaW5j
cmVtZW50YWxEZXB0aEF0dGFjaG1lbnRVbnJlc29sdmVzLAogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IGluY3JlbWVudGFsU3RlbmNp
bEF0dGFjaG1lbnRVbnJlc29sdmVzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IGluY3JlbWVudGFsQ29sb3JBdHRhY2htZW50UmVz
b2x2ZXMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgdWludDMyX3QgaW5jcmVtZW50YWxEZXB0aEF0dGFjaG1lbnRSZXNvbHZlcywKICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBpbmNy
ZW1lbnRhbFN0ZW5jaWxBdHRhY2htZW50UmVzb2x2ZXMsCi0gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcng6OnZrOjpQZXJmQ291bnRlcnMgKmV4cGVj
dGVkKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGFuZ2xlOjpWdWxrYW5QZXJmQ291bnRlcnMgKmV4cGVjdGVkKQogICAgIHsKICAgICAgICAgZXhw
ZWN0ZWQtPmNvbG9yQXR0YWNobWVudFVucmVzb2x2ZXMgPQogICAgICAgICAgICAgY291bnRlcnMu
Y29sb3JBdHRhY2htZW50VW5yZXNvbHZlcyArIGluY3JlbWVudGFsQ29sb3JBdHRhY2htZW50VW5y
ZXNvbHZlczsKQEAgLTE1Nyw4ICsxNDUsOCBAQCBjbGFzcyBWdWxrYW5QZXJmb3JtYW5jZUNvdW50
ZXJUZXN0IDogcHVibGljIEFOR0xFVGVzdAogICAgICAgICAgICAgY291bnRlcnMuc3RlbmNpbEF0
dGFjaG1lbnRSZXNvbHZlcyArIGluY3JlbWVudGFsU3RlbmNpbEF0dGFjaG1lbnRSZXNvbHZlczsK
ICAgICB9CiAKLSAgICB2b2lkIGNvbXBhcmVDb3VudGVyc0ZvclVucmVzb2x2ZVJlc29sdmVUZXN0
KGNvbnN0IHJ4Ojp2azo6UGVyZkNvdW50ZXJzICZjb3VudGVycywKLSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHJ4Ojp2azo6UGVyZkNvdW50ZXJz
ICZleHBlY3RlZCkKKyAgICB2b2lkIGNvbXBhcmVDb3VudGVyc0ZvclVucmVzb2x2ZVJlc29sdmVU
ZXN0KGNvbnN0IGFuZ2xlOjpWdWxrYW5QZXJmQ291bnRlcnMgJmNvdW50ZXJzLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgYW5nbGU6OlZ1bGth
blBlcmZDb3VudGVycyAmZXhwZWN0ZWQpCiAgICAgewogICAgICAgICBFWFBFQ1RfRVEoZXhwZWN0
ZWQuY29sb3JBdHRhY2htZW50VW5yZXNvbHZlcywgY291bnRlcnMuY29sb3JBdHRhY2htZW50VW5y
ZXNvbHZlcyk7CiAgICAgICAgIEVYUEVDVF9FUShleHBlY3RlZC5kZXB0aEF0dGFjaG1lbnRVbnJl
c29sdmVzLCBjb3VudGVycy5kZXB0aEF0dGFjaG1lbnRVbnJlc29sdmVzKTsKQEAgLTE3Miw2ICsx
NjAsMTggQEAgY2xhc3MgVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdCA6IHB1YmxpYyBBTkdM
RVRlc3QKICAgICAgICAgRVhQRUNUX0VRKGV4cGVjdGVkLmRlcHRoQXR0YWNobWVudFJlc29sdmVz
LCBjb3VudGVycy5kZXB0aEF0dGFjaG1lbnRSZXNvbHZlcyk7CiAgICAgICAgIEVYUEVDVF9FUShl
eHBlY3RlZC5zdGVuY2lsQXR0YWNobWVudFJlc29sdmVzLCBjb3VudGVycy5zdGVuY2lsQXR0YWNo
bWVudFJlc29sdmVzKTsKICAgICB9CisKKyAgICBhbmdsZTo6VnVsa2FuUGVyZkNvdW50ZXJzIGdl
dFBlcmZDb3VudGVycygpCisgICAgeworICAgICAgICBpZiAobUluZGV4TWFwLmVtcHR5KCkpCisg
ICAgICAgIHsKKyAgICAgICAgICAgIG1JbmRleE1hcCA9IEJ1aWxkQ291bnRlck5hbWVUb0luZGV4
TWFwKCk7CisgICAgICAgIH0KKworICAgICAgICByZXR1cm4gR2V0UGVyZkNvdW50ZXJzKG1JbmRl
eE1hcCk7CisgICAgfQorCisgICAgQ291bnRlck5hbWVUb0luZGV4TWFwIG1JbmRleE1hcDsKIH07
CiAKIGNsYXNzIFZ1bGthblBlcmZvcm1hbmNlQ291bnRlclRlc3RfRVMzMSA6IHB1YmxpYyBWdWxr
YW5QZXJmb3JtYW5jZUNvdW50ZXJUZXN0CkBAIC0xOTAsNyArMTkwLDcgQEAgY2xhc3MgVnVsa2Fu
UGVyZm9ybWFuY2VDb3VudGVyVGVzdF9NU0FBIDogcHVibGljIFZ1bGthblBlcmZvcm1hbmNlQ291
bnRlclRlc3QKIC8vIFRlc3RzIHRoYXQgdGV4dHVyZSB1cGRhdGVzIHRvIHVudXNlZCB0ZXh0dXJl
cyBkb24ndCBicmVhayB0aGUgUlAuCiBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVz
dCwgTmV3VGV4dHVyZURvZXNOb3RCcmVha1JlbmRlclBhc3MpCiB7Ci0gICAgY29uc3Qgcng6OnZr
OjpQZXJmQ291bnRlcnMgJmNvdW50ZXJzID0gaGFja0FOR0xFKCk7CisgICAgQU5HTEVfU0tJUF9U
RVNUX0lGKCFJc0dMRXh0ZW5zaW9uRW5hYmxlZChrUGVyZk1vbml0b3JFeHRlbnNpb25OYW1lKSk7
CiAKICAgICBHTENvbG9yIGtJbml0aWFsRGF0YVs0XSA9IHtHTENvbG9yOjpyZWQsIEdMQ29sb3I6
OmJsdWUsIEdMQ29sb3I6OmdyZWVuLCBHTENvbG9yOjp5ZWxsb3d9OwogCkBAIC0yMjAsNyArMjIw
LDggQEAgVEVTVF9QKFZ1bGthblBlcmZvcm1hbmNlQ291bnRlclRlc3QsIE5ld1RleHR1cmVEb2Vz
Tm90QnJlYWtSZW5kZXJQYXNzKQogCiAgICAgZ2xEcmF3QXJyYXlzKEdMX1RSSUFOR0xFUywgMCwg
Nik7CiAgICAgQVNTRVJUX0dMX05PX0VSUk9SKCk7Ci0gICAgdWludDMyX3QgZXhwZWN0ZWRSZW5k
ZXJQYXNzQ291bnQgPSBjb3VudGVycy5yZW5kZXJQYXNzZXM7CisKKyAgICB1aW50MzJfdCBleHBl
Y3RlZFJlbmRlclBhc3NDb3VudCA9IGdldFBlcmZDb3VudGVycygpLnJlbmRlclBhc3NlczsKIAog
ICAgIC8vIFN0ZXAgMjogSW50cm9kdWNlIGEgbmV3IDJEIFRleHR1cmUgd2l0aCB0aGUgc2FtZSBQ
cm9ncmFtIGFuZCBGcmFtZWJ1ZmZlci4KICAgICBHTFRleHR1cmUgbmV3VGV4dHVyZTsKQEAgLTIz
MiwxNCArMjMzLDgwIEBAIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJUZXN0LCBOZXdU
ZXh0dXJlRG9lc05vdEJyZWFrUmVuZGVyUGFzcykKICAgICBnbERyYXdBcnJheXMoR0xfVFJJQU5H
TEVTLCAwLCA2KTsKICAgICBBU1NFUlRfR0xfTk9fRVJST1IoKTsKIAotICAgIHVpbnQzMl90IGFj
dHVhbFJlbmRlclBhc3NDb3VudCA9IGNvdW50ZXJzLnJlbmRlclBhc3NlczsKKyAgICB1aW50MzJf
dCBhY3R1YWxSZW5kZXJQYXNzQ291bnQgPSBnZXRQZXJmQ291bnRlcnMoKS5yZW5kZXJQYXNzZXM7
CiAgICAgRVhQRUNUX0VRKGV4cGVjdGVkUmVuZGVyUGFzc0NvdW50LCBhY3R1YWxSZW5kZXJQYXNz
Q291bnQpOwogfQogCisvLyBUZXN0cyB0aGF0IHN1Ym1pdHRpbmcgdGhlIG91dHNpZGUgY29tbWFu
ZCBidWZmZXIgZHVlIHRvIHRleHR1cmUgdXBsb2FkIHNpemUgZG9lcyBub3QgYnJlYWsgdGhlCisv
LyBjdXJyZW50IHJlbmRlciBwYXNzLgorVEVTVF9QKFZ1bGthblBlcmZvcm1hbmNlQ291bnRlclRl
c3QsIFN1Ym1pdHRpbmdPdXRzaWRlQ29tbWFuZEJ1ZmZlckRvZXNOb3RCcmVha1JlbmRlclBhc3Mp
Cit7CisgICAgLy8gaHR0cDovL2FuZ2xlYnVnLmNvbS82MzU0CisKKyAgICBzaXplX3Qga01heEJ1
ZmZlclRvSW1hZ2VDb3B5U2l6ZSAgPSAxIDw8IDI4OworICAgIHVpbnQzMl90IGtOdW1TdWJtaXRz
ICAgICAgICAgICAgICA9IDI7CisgICAgdWludDMyX3QgZXhwZWN0ZWRSZW5kZXJQYXNzQ291bnQg
ID0gZ2V0UGVyZkNvdW50ZXJzKCkucmVuZGVyUGFzc2VzICsgMTsKKyAgICB1aW50MzJfdCBleHBl
Y3RlZFN1Ym1pdEZyYW1lQ291bnQgPSBnZXRQZXJmQ291bnRlcnMoKS5zdWJtaXR0ZWRGcmFtZXMg
KyBrTnVtU3VibWl0czsKKworICAgIC8vIFN0ZXAgMTogU2V0IHVwIGEgc2ltcGxlIDJEIHRleHR1
cmUuCisgICAgR0xUZXh0dXJlIHRleHR1cmU7CisgICAgR0xzaXplaSB0ZXhEaW0gICAgICAgICA9
IDI1NjsKKyAgICB1aW50MzJfdCBwaXhlbFNpemVSR0JBID0gNDsKKyAgICB1aW50MzJfdCB0ZXh0
dXJlU2l6ZSAgID0gdGV4RGltICogdGV4RGltICogcGl4ZWxTaXplUkdCQTsKKyAgICBzdGQ6OnZl
Y3RvcjxHTENvbG9yPiBrSW5pdGlhbERhdGEodGV4RGltICogdGV4RGltLCBHTENvbG9yOjpncmVl
bik7CisKKyAgICBnbEJpbmRUZXh0dXJlKEdMX1RFWFRVUkVfMkQsIHRleHR1cmUpOworICAgIGds
VGV4SW1hZ2UyRChHTF9URVhUVVJFXzJELCAwLCBHTF9SR0JBLCB0ZXhEaW0sIHRleERpbSwgMCwg
R0xfUkdCQSwgR0xfVU5TSUdORURfQllURSwKKyAgICAgICAgICAgICAgICAga0luaXRpYWxEYXRh
LmRhdGEoKSk7CisgICAgZ2xUZXhQYXJhbWV0ZXJpKEdMX1RFWFRVUkVfMkQsIEdMX1RFWFRVUkVf
TUlOX0ZJTFRFUiwgR0xfTkVBUkVTVCk7CisgICAgZ2xUZXhQYXJhbWV0ZXJpKEdMX1RFWFRVUkVf
MkQsIEdMX1RFWFRVUkVfTUFHX0ZJTFRFUiwgR0xfTkVBUkVTVCk7CisKKyAgICBhdXRvIHF1YWRW
ZXJ0cyA9IEdldFF1YWRWZXJ0aWNlcygpOworCisgICAgR0xCdWZmZXIgdmVydGV4QnVmZmVyOwor
ICAgIGdsQmluZEJ1ZmZlcihHTF9BUlJBWV9CVUZGRVIsIHZlcnRleEJ1ZmZlcik7CisgICAgZ2xC
dWZmZXJEYXRhKEdMX0FSUkFZX0JVRkZFUiwgcXVhZFZlcnRzLnNpemUoKSAqIHNpemVvZihxdWFk
VmVydHNbMF0pLCBxdWFkVmVydHMuZGF0YSgpLAorICAgICAgICAgICAgICAgICBHTF9TVEFUSUNf
RFJBVyk7CisKKyAgICBBTkdMRV9HTF9QUk9HUkFNKHByb2dyYW0sIGVzc2wxX3NoYWRlcnM6OnZz
OjpUZXh0dXJlMkQoKSwgZXNzbDFfc2hhZGVyczo6ZnM6OlRleHR1cmUyRCgpKTsKKyAgICBnbFVz
ZVByb2dyYW0ocHJvZ3JhbSk7CisKKyAgICBHTGludCBwb3NMb2MgPSBnbEdldEF0dHJpYkxvY2F0
aW9uKHByb2dyYW0sIGVzc2wxX3NoYWRlcnM6OlBvc2l0aW9uQXR0cmliKCkpOworICAgIEFTU0VS
VF9ORSgtMSwgcG9zTG9jKTsKKworICAgIGdsVmVydGV4QXR0cmliUG9pbnRlcihwb3NMb2MsIDMs
IEdMX0ZMT0FULCBHTF9GQUxTRSwgMCwgbnVsbHB0cik7CisgICAgZ2xFbmFibGVWZXJ0ZXhBdHRy
aWJBcnJheShwb3NMb2MpOworICAgIEFTU0VSVF9HTF9OT19FUlJPUigpOworCisgICAgZ2xEcmF3
QXJyYXlzKEdMX1RSSUFOR0xFUywgMCwgNik7CisgICAgQVNTRVJUX0dMX05PX0VSUk9SKCk7CisK
KyAgICAvLyBTdGVwIDI6IExvYWQgYSBuZXcgMkQgVGV4dHVyZSBtdWx0aXBsZSB0aW1lcyB3aXRo
IHRoZSBzYW1lIFByb2dyYW0gYW5kIEZyYW1lYnVmZmVyLiBUaGUgdG90YWwKKyAgICAvLyBzaXpl
IG9mIHRoZSBsb2FkZWQgdGV4dHVyZXMgbXVzdCBleGNlZWQgdGhlIHRocmVzaG9sZCB0byBzdWJt
aXQgdGhlIG91dHNpZGUgY29tbWFuZCBidWZmZXIuCisgICAgYXV0byBtYXhMb2FkQ291bnQgPQor
ICAgICAgICBzdGF0aWNfY2FzdDxzaXplX3Q+KChrTWF4QnVmZmVyVG9JbWFnZUNvcHlTaXplIC8g
dGV4dHVyZVNpemUpICoga051bVN1Ym1pdHMgKyAxKTsKKyAgICBmb3IgKHNpemVfdCBsb2FkQ291
bnQgPSAwOyBsb2FkQ291bnQgPCBtYXhMb2FkQ291bnQ7IGxvYWRDb3VudCsrKQorICAgIHsKKyAg
ICAgICAgR0xUZXh0dXJlIG5ld1RleHR1cmU7CisgICAgICAgIGdsQmluZFRleHR1cmUoR0xfVEVY
VFVSRV8yRCwgbmV3VGV4dHVyZSk7CisgICAgICAgIGdsVGV4SW1hZ2UyRChHTF9URVhUVVJFXzJE
LCAwLCBHTF9SR0JBLCB0ZXhEaW0sIHRleERpbSwgMCwgR0xfUkdCQSwgR0xfVU5TSUdORURfQllU
RSwKKyAgICAgICAgICAgICAgICAgICAgIGtJbml0aWFsRGF0YS5kYXRhKCkpOworICAgICAgICBn
bFRleFBhcmFtZXRlcmkoR0xfVEVYVFVSRV8yRCwgR0xfVEVYVFVSRV9NSU5fRklMVEVSLCBHTF9O
RUFSRVNUKTsKKyAgICAgICAgZ2xUZXhQYXJhbWV0ZXJpKEdMX1RFWFRVUkVfMkQsIEdMX1RFWFRV
UkVfTUFHX0ZJTFRFUiwgR0xfTkVBUkVTVCk7CisKKyAgICAgICAgZ2xEcmF3QXJyYXlzKEdMX1RS
SUFOR0xFUywgMCwgNik7CisgICAgICAgIEFTU0VSVF9HTF9OT19FUlJPUigpOworICAgIH0KKwor
ICAgIC8vIFZlcmlmeSByZW5kZXIgcGFzcyBhbmQgc3VibWl0dGVkIGZyYW1lIGNvdW50cy4KKyAg
ICBFWFBFQ1RfRVEoZ2V0UGVyZkNvdW50ZXJzKCkucmVuZGVyUGFzc2VzLCBleHBlY3RlZFJlbmRl
clBhc3NDb3VudCk7CisgICAgRVhQRUNUX0VRKGdldFBlcmZDb3VudGVycygpLnN1Ym1pdHRlZEZy
YW1lcywgZXhwZWN0ZWRTdWJtaXRGcmFtZUNvdW50KTsKK30KKwogLy8gVGVzdHMgdGhhdCBSR0Ig
dGV4dHVyZSBzaG91bGQgbm90IGJyZWFrIHJlbmRlcnBhc3MuCiBURVNUX1AoVnVsa2FuUGVyZm9y
bWFuY2VDb3VudGVyVGVzdCwgU2FtcGxlRnJvbVJHQlRleHR1cmVEb2VzTm90QnJlYWtSZW5kZXJQ
YXNzKQogewotICAgIGNvbnN0IHJ4Ojp2azo6UGVyZkNvdW50ZXJzICZjb3VudGVycyA9IGhhY2tB
TkdMRSgpOworICAgIEFOR0xFX1NLSVBfVEVTVF9JRighSXNHTEV4dGVuc2lvbkVuYWJsZWQoa1Bl
cmZNb25pdG9yRXh0ZW5zaW9uTmFtZSkpOwogCiAgICAgQU5HTEVfR0xfUFJPR1JBTShwcm9ncmFt
LCBlc3NsMV9zaGFkZXJzOjp2czo6VGV4dHVyZTJEKCksIGVzc2wxX3NoYWRlcnM6OmZzOjpUZXh0
dXJlMkQoKSk7CiAgICAgZ2xVc2VQcm9ncmFtKHByb2dyYW0pOwpAQCAtMjYyLDcgKzMyOSw3IEBA
IFRFU1RfUChWdWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJUZXN0LCBTYW1wbGVGcm9tUkdCVGV4dHVy
ZURvZXNOb3RCcmVha1JlbmRlclBhc3MpCiAgICAgZ2xUZXhQYXJhbWV0ZXJpKEdMX1RFWFRVUkVf
MkQsIEdMX1RFWFRVUkVfTUlOX0ZJTFRFUiwgR0xfTElORUFSX01JUE1BUF9MSU5FQVIpOwogICAg
IGdsVGV4UGFyYW1ldGVyaShHTF9URVhUVVJFXzJELCBHTF9URVhUVVJFX01BR19GSUxURVIsIEdM
X0xJTkVBUik7CiAKLSAgICB1aW50MzJfdCBleHBlY3RlZFJlbmRlclBhc3NDb3VudCA9IGNvdW50
ZXJzLnJlbmRlclBhc3NlcyArIDE7CisgICAgdWludDMyX3QgZXhwZWN0ZWRSZW5kZXJQYXNzQ291
bnQgPSBnZXRQZXJmQ291bnRlcnMoKS5yZW5kZXJQYXNzZXMgKyAxOwogCiAgICAgLy8gRmlyc3Qg
ZHJhdyB3aXRoIHRleHR1cmVSR0JBIHdoaWNoIHNob3VsZCBzdGFydCB0aGUgcmVuZGVycGFzcwog
ICAgIGdsQ2xlYXIoR0xfQ09MT1JfQlVGRkVSX0JJVCB8IEdMX0RFUFRIX0JVRkZFUl9CSVQpOwpA
QCAtMjc1LDE0ICszNDIsMTQgQEAgVEVTVF9QKFZ1bGthblBlcmZvcm1hbmNlQ291bnRlclRlc3Qs
IFNhbXBsZUZyb21SR0JUZXh0dXJlRG9lc05vdEJyZWFrUmVuZGVyUGFzcykKICAgICBkcmF3UXVh
ZChwcm9ncmFtLCBlc3NsMV9zaGFkZXJzOjpQb3NpdGlvbkF0dHJpYigpLCAwLjVmKTsKICAgICBB
U1NFUlRfR0xfTk9fRVJST1IoKTsKIAotICAgIHVpbnQzMl90IGFjdHVhbFJlbmRlclBhc3NDb3Vu
dCA9IGNvdW50ZXJzLnJlbmRlclBhc3NlczsKKyAgICB1aW50MzJfdCBhY3R1YWxSZW5kZXJQYXNz
Q291bnQgPSBnZXRQZXJmQ291bnRlcnMoKS5yZW5kZXJQYXNzZXM7CiAgICAgRVhQRUNUX0VRKGV4
cGVjdGVkUmVuZGVyUGFzc0NvdW50LCBhY3R1YWxSZW5kZXJQYXNzQ291bnQpOwogfQogCiAvLyBU
ZXN0cyB0aGF0IFJHQiB0ZXh0dXJlIHNob3VsZCBub3QgYnJlYWsgcmVuZGVycGFzcy4KLVRFU1Rf
UChWdWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJUZXN0LCByZW5kZXJUb1JHQlRleHR1cmVEb2VzTm90
QnJlYWtSZW5kZXJQYXNzKQorVEVTVF9QKFZ1bGthblBlcmZvcm1hbmNlQ291bnRlclRlc3QsIFJl
bmRlclRvUkdCVGV4dHVyZURvZXNOb3RCcmVha1JlbmRlclBhc3MpCiB7Ci0gICAgY29uc3Qgcng6
OnZrOjpQZXJmQ291bnRlcnMgJmNvdW50ZXJzID0gaGFja0FOR0xFKCk7CisgICAgQU5HTEVfU0tJ
UF9URVNUX0lGKCFJc0dMRXh0ZW5zaW9uRW5hYmxlZChrUGVyZk1vbml0b3JFeHRlbnNpb25OYW1l
KSk7CiAKICAgICBBTkdMRV9HTF9QUk9HUkFNKHByb2dyYW0sIGVzc2wxX3NoYWRlcnM6OnZzOjpQ
YXNzdGhyb3VnaCgpLCBlc3NsMV9zaGFkZXJzOjpmczo6VW5pZm9ybUNvbG9yKCkpOwogICAgIGds
VXNlUHJvZ3JhbShwcm9ncmFtKTsKQEAgLTMwNCw3ICszNzEsNyBAQCBURVNUX1AoVnVsa2FuUGVy
Zm9ybWFuY2VDb3VudGVyVGVzdCwgcmVuZGVyVG9SR0JUZXh0dXJlRG9lc05vdEJyZWFrUmVuZGVy
UGFzcykKICAgICBBU1NFUlRfR0xfRlJBTUVCVUZGRVJfQ09NUExFVEUoR0xfRlJBTUVCVUZGRVIp
OwogICAgIEFTU0VSVF9HTF9OT19FUlJPUigpOwogCi0gICAgdWludDMyX3QgZXhwZWN0ZWRSZW5k
ZXJQYXNzQ291bnQgPSBjb3VudGVycy5yZW5kZXJQYXNzZXMgKyAxOworICAgIHVpbnQzMl90IGV4
cGVjdGVkUmVuZGVyUGFzc0NvdW50ID0gZ2V0UGVyZkNvdW50ZXJzKCkucmVuZGVyUGFzc2VzICsg
MTsKIAogICAgIC8vIERyYXcgaW50byBGQk8KICAgICBnbEJpbmRGcmFtZWJ1ZmZlcihHTF9GUkFN
RUJVRkZFUiwgZnJhbWVidWZmZXIpOwpAQCAtMzE0LDE0ICszODEsMTQgQEAgVEVTVF9QKFZ1bGth
blBlcmZvcm1hbmNlQ291bnRlclRlc3QsIHJlbmRlclRvUkdCVGV4dHVyZURvZXNOb3RCcmVha1Jl
bmRlclBhc3MpCiAgICAgZ2xVbmlmb3JtNGZ2KGNvbG9yVW5pZm9ybUxvY2F0aW9uLCAxLCBHTENv
bG9yOjpibHVlLnRvTm9ybWFsaXplZFZlY3RvcigpLmRhdGEoKSk7CiAgICAgZHJhd1F1YWQocHJv
Z3JhbSwgZXNzbDFfc2hhZGVyczo6UG9zaXRpb25BdHRyaWIoKSwgMC41Zik7CiAKLSAgICB1aW50
MzJfdCBhY3R1YWxSZW5kZXJQYXNzQ291bnQgPSBjb3VudGVycy5yZW5kZXJQYXNzZXM7CisgICAg
dWludDMyX3QgYWN0dWFsUmVuZGVyUGFzc0NvdW50ID0gZ2V0UGVyZkNvdW50ZXJzKCkucmVuZGVy
UGFzc2VzOwogICAgIEVYUEVDVF9FUShleHBlY3RlZFJlbmRlclBhc3NDb3VudCwgYWN0dWFsUmVu
ZGVyUGFzc0NvdW50KTsKIH0KIAogLy8gVGVzdHMgdGhhdCBjaGFuZ2luZyBhIFRleHR1cmUncyBt
YXggbGV2ZWwgaGl0cyB0aGUgZGVzY3JpcHRvciBzZXQgY2FjaGUuCiBURVNUX1AoVnVsa2FuUGVy
Zm9ybWFuY2VDb3VudGVyVGVzdCwgQ2hhbmdpbmdNYXhMZXZlbEhpdHNEZXNjcmlwdG9yQ2FjaGUp
CiB7Ci0gICAgY29uc3Qgcng6OnZrOjpQZXJmQ291bnRlcnMgJmNvdW50ZXJzID0gaGFja0FOR0xF
KCk7CisgICAgQU5HTEVfU0tJUF9URVNUX0lGKCFJc0dMRXh0ZW5zaW9uRW5hYmxlZChrUGVyZk1v
bml0b3JFeHRlbnNpb25OYW1lKSk7CiAKICAgICBHTENvbG9yIGtJbml0aWFsRGF0YVs0XSA9IHtH
TENvbG9yOjpyZWQsIEdMQ29sb3I6OmJsdWUsIEdMQ29sb3I6OmdyZWVuLCBHTENvbG9yOjp5ZWxs
b3d9OwogCkBAIC0zNTksMjAgKzQyNiwyMiBAQCBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VDb3Vu
dGVyVGVzdCwgQ2hhbmdpbmdNYXhMZXZlbEhpdHNEZXNjcmlwdG9yQ2FjaGUpCiAgICAgZ2xEcmF3
QXJyYXlzKEdMX1RSSUFOR0xFUywgMCwgNik7CiAgICAgQVNTRVJUX0dMX05PX0VSUk9SKCk7CiAK
LSAgICB1aW50MzJfdCBleHBlY3RlZFdyaXRlRGVzY3JpcHRvclNldENvdW50ID0gY291bnRlcnMu
d3JpdGVEZXNjcmlwdG9yU2V0czsKKyAgICB1aW50MzJfdCBleHBlY3RlZFdyaXRlRGVzY3JpcHRv
clNldENvdW50ID0gZ2V0UGVyZkNvdW50ZXJzKCkud3JpdGVEZXNjcmlwdG9yU2V0czsKIAogICAg
IC8vIFN0ZXAgMzogQ2hhbmdlIG1heCBsZXZlbCBiYWNrIHRvIG9yaWdpbmFsIHZhbHVlIGFuZCB2
ZXJpZnkgd2UgaGl0IHRoZSBjYWNoZS4KICAgICBnbFRleFBhcmFtZXRlcmkoR0xfVEVYVFVSRV8y
RCwgR0xfVEVYVFVSRV9NQVhfTEVWRUwsIDEpOwogICAgIGdsRHJhd0FycmF5cyhHTF9UUklBTkdM
RVMsIDAsIDYpOwogICAgIEFTU0VSVF9HTF9OT19FUlJPUigpOwogCi0gICAgdWludDMyX3QgYWN0
dWFsV3JpdGVEZXNjcmlwdG9yU2V0Q291bnQgPSBjb3VudGVycy53cml0ZURlc2NyaXB0b3JTZXRz
OworICAgIHVpbnQzMl90IGFjdHVhbFdyaXRlRGVzY3JpcHRvclNldENvdW50ID0gZ2V0UGVyZkNv
dW50ZXJzKCkud3JpdGVEZXNjcmlwdG9yU2V0czsKICAgICBFWFBFQ1RfRVEoZXhwZWN0ZWRXcml0
ZURlc2NyaXB0b3JTZXRDb3VudCwgYWN0dWFsV3JpdGVEZXNjcmlwdG9yU2V0Q291bnQpOwogfQog
CiAvLyBUZXN0cyB0aGF0IHR3byBnbENvcHlCdWZmZXJTdWJEYXRhIGNvbW1hbmRzIGNhbiBzaGFy
ZSBhIGJhcnJpZXIuCiBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdCwgSW5kZXBl
bmRlbnRCdWZmZXJDb3BpZXNTaGFyZVNpbmdsZUJhcnJpZXIpCiB7CisgICAgQU5HTEVfU0tJUF9U
RVNUX0lGKCFJc0dMRXh0ZW5zaW9uRW5hYmxlZChrUGVyZk1vbml0b3JFeHRlbnNpb25OYW1lKSk7
CisKICAgICBjb25zdGV4cHIgR0xpbnQgc3JjRGF0YUFbXSA9IHsxLCAyLCAzLCA0fTsKICAgICBj
b25zdGV4cHIgR0xpbnQgc3JjRGF0YUJbXSA9IHs1LCA2LCA3LCA4fTsKIApAQCAtMzk0LDggKzQ2
Myw3IEBAIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJUZXN0LCBJbmRlcGVuZGVudEJ1
ZmZlckNvcGllc1NoYXJlU2luZ2xlQmFycmllcikKICAgICBnbEJ1ZmZlckRhdGEoR0xfQ09QWV9X
UklURV9CVUZGRVIsIHNpemVvZihzcmNEYXRhQlswXSkgKiAyLCBudWxscHRyLCBHTF9TVEFUSUNf
Q09QWSk7CiAKICAgICAvLyBXZSBleHBlY3QgdGhhdCBBTkdMRSBnZW5lcmF0ZSB6ZXJvIGFkZGl0
aW9uYWwgY29tbWFuZCBidWZmZXJzLgotICAgIGNvbnN0IHJ4Ojp2azo6UGVyZkNvdW50ZXJzICZj
b3VudGVycyA9IGhhY2tBTkdMRSgpOwotICAgIHVpbnQzMl90IGV4cGVjdGVkRmx1c2hDb3VudCAg
ICAgICAgICA9IGNvdW50ZXJzLmZsdXNoZWRPdXRzaWRlUmVuZGVyUGFzc0NvbW1hbmRCdWZmZXJz
OworICAgIHVpbnQzMl90IGV4cGVjdGVkRmx1c2hDb3VudCA9IGdldFBlcmZDb3VudGVycygpLmZs
dXNoZWRPdXRzaWRlUmVuZGVyUGFzc0NvbW1hbmRCdWZmZXJzOwogCiAgICAgLy8gU3RlcCAyOiBE
byB0aGUgdHdvIGNvcGllcy4KICAgICBnbEJpbmRCdWZmZXIoR0xfQ09QWV9SRUFEX0JVRkZFUiwg
c3JjQSk7CkBAIC00MTAsNyArNDc4LDcgQEAgVEVTVF9QKFZ1bGthblBlcmZvcm1hbmNlQ291bnRl
clRlc3QsIEluZGVwZW5kZW50QnVmZmVyQ29waWVzU2hhcmVTaW5nbGVCYXJyaWVyKQogCiAgICAg
QVNTRVJUX0dMX05PX0VSUk9SKCk7CiAKLSAgICB1aW50MzJfdCBhY3R1YWxGbHVzaENvdW50ID0g
Y291bnRlcnMuZmx1c2hlZE91dHNpZGVSZW5kZXJQYXNzQ29tbWFuZEJ1ZmZlcnM7CisgICAgdWlu
dDMyX3QgYWN0dWFsRmx1c2hDb3VudCA9IGdldFBlcmZDb3VudGVycygpLmZsdXNoZWRPdXRzaWRl
UmVuZGVyUGFzc0NvbW1hbmRCdWZmZXJzOwogICAgIEVYUEVDVF9FUShleHBlY3RlZEZsdXNoQ291
bnQsIGFjdHVhbEZsdXNoQ291bnQpOwogfQogCkBAIC00MTgsNiArNDg2LDggQEAgVEVTVF9QKFZ1
bGthblBlcmZvcm1hbmNlQ291bnRlclRlc3QsIEluZGVwZW5kZW50QnVmZmVyQ29waWVzU2hhcmVT
aW5nbGVCYXJyaWVyKQogLy8gdXNlZAogVEVTVF9QKFZ1bGthblBlcmZvcm1hbmNlQ291bnRlclRl
c3RfRVMzMSwgTXVsdGlzYW1wbGVSZXNvbHZlV2l0aEJsaXQpCiB7CisgICAgQU5HTEVfU0tJUF9U
RVNUX0lGKCFJc0dMRXh0ZW5zaW9uRW5hYmxlZChrUGVyZk1vbml0b3JFeHRlbnNpb25OYW1lKSk7
CisKICAgICBjb25zdGV4cHIgaW50IGtTaXplID0gMTY7CiAgICAgZ2xWaWV3cG9ydCgwLCAwLCBr
U2l6ZSwga1NpemUpOwogCkBAIC00NTUsOCArNTI1LDcgQEAgVEVTVF9QKFZ1bGthblBlcmZvcm1h
bmNlQ291bnRlclRlc3RfRVMzMSwgTXVsdGlzYW1wbGVSZXNvbHZlV2l0aEJsaXQpCiAgICAgZ2xC
bGl0RnJhbWVidWZmZXIoMCwgMCwga1NpemUsIGtTaXplLCAwLCAwLCBrU2l6ZSwga1NpemUsIEdM
X0NPTE9SX0JVRkZFUl9CSVQsIEdMX05FQVJFU1QpOwogICAgIEFTU0VSVF9HTF9OT19FUlJPUigp
OwogCi0gICAgY29uc3Qgcng6OnZrOjpQZXJmQ291bnRlcnMgJmNvdW50ZXJzID0gaGFja0FOR0xF
KCk7Ci0gICAgRVhQRUNUX0VRKGNvdW50ZXJzLnJlc29sdmVJbWFnZUNvbW1hbmRzLCAwdSk7Cisg
ICAgRVhQRUNUX0VRKGdldFBlcmZDb3VudGVycygpLnJlc29sdmVJbWFnZUNvbW1hbmRzLCAwdSk7
CiAKICAgICBnbEJpbmRGcmFtZWJ1ZmZlcihHTF9SRUFEX0ZSQU1FQlVGRkVSLCByZXNvbHZlRkJP
KTsKICAgICBjb25zdGV4cHIgdWludDhfdCBrSGFsZlBpeGVsR3JhZGllbnQgPSAyNTYgLyBrU2l6
ZSAvIDI7CkBAIC00NzAsNyArNTM5LDcgQEAgVEVTVF9QKFZ1bGthblBlcmZvcm1hbmNlQ291bnRl
clRlc3RfRVMzMSwgTXVsdGlzYW1wbGVSZXNvbHZlV2l0aEJsaXQpCiAvLyBFbnN1cmVzIGEgcmVh
ZC1vbmx5IGRlcHRoLXN0ZW5jaWwgZmVlZGJhY2sgbG9vcCB3b3JrcyBpbiBhIHNpbmdsZSBSZW5k
ZXJQYXNzLgogVEVTVF9QKFZ1bGthblBlcmZvcm1hbmNlQ291bnRlclRlc3QsIFJlYWRPbmx5RGVw
dGhTdGVuY2lsRmVlZGJhY2tMb29wVXNlc1NpbmdsZVJlbmRlclBhc3MpCiB7Ci0gICAgY29uc3Qg
cng6OnZrOjpQZXJmQ291bnRlcnMgJmNvdW50ZXJzID0gaGFja0FOR0xFKCk7CisgICAgQU5HTEVf
U0tJUF9URVNUX0lGKCFJc0dMRXh0ZW5zaW9uRW5hYmxlZChrUGVyZk1vbml0b3JFeHRlbnNpb25O
YW1lKSk7CiAKICAgICBjb25zdGV4cHIgR0xzaXplaSBrU2l6ZSA9IDQ7CiAKQEAgLTUxMiw3ICs1
ODEsNyBAQCBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdCwgUmVhZE9ubHlEZXB0
aFN0ZW5jaWxGZWVkYmFja0xvb3BVc2VzU2luZ2xlUgogICAgIGdsRHJhd0FycmF5cyhHTF9UUklB
TkdMRVMsIDAsIDYpOwogICAgIEFTU0VSVF9HTF9OT19FUlJPUigpOwogCi0gICAgdWludDMyX3Qg
ZXhwZWN0ZWRSZW5kZXJQYXNzQ291bnQgPSBjb3VudGVycy5yZW5kZXJQYXNzZXMgKyAxOworICAg
IHVpbnQzMl90IGV4cGVjdGVkUmVuZGVyUGFzc0NvdW50ID0gZ2V0UGVyZkNvdW50ZXJzKCkucmVu
ZGVyUGFzc2VzICsgMTsKIAogICAgIC8vIFN0YXJ0IG5ldyBSZW5kZXJQYXNzIHdpdGggZGVwdGgg
d3JpdGUgZGlzYWJsZWQgYW5kIG5vIGxvb3AuCiAgICAgZ2xCaW5kRnJhbWVidWZmZXIoR0xfRlJB
TUVCVUZGRVIsIGRlcHRoQW5kQ29sb3JGQk8pOwpAQCAtNTQ1LDcgKzYxNCw3IEBAIFRFU1RfUChW
dWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJUZXN0LCBSZWFkT25seURlcHRoU3RlbmNpbEZlZWRiYWNr
TG9vcFVzZXNTaW5nbGVSCiAgICAgZ2xEcmF3QXJyYXlzKEdMX1RSSUFOR0xFUywgMCwgNik7CiAg
ICAgQVNTRVJUX0dMX05PX0VSUk9SKCk7CiAKLSAgICB1aW50MzJfdCBhY3R1YWxSZW5kZXJQYXNz
Q291bnQgPSBjb3VudGVycy5yZW5kZXJQYXNzZXM7CisgICAgdWludDMyX3QgYWN0dWFsUmVuZGVy
UGFzc0NvdW50ID0gZ2V0UGVyZkNvdW50ZXJzKCkucmVuZGVyUGFzc2VzOwogICAgIEVYUEVDVF9F
UShleHBlY3RlZFJlbmRlclBhc3NDb3VudCwgYWN0dWFsUmVuZGVyUGFzc0NvdW50KTsKIAogICAg
IC8vIERvIGEgZmluYWwgd3JpdGUgdG8gZGVwdGggdG8gbWFrZSBzdXJlIHdlIGNhbiBzd2l0Y2gg
b3V0IG9mIHJlYWQtb25seSBtb2RlLgpAQCAtNTYwLDExICs2MjksMTIgQEAgVEVTVF9QKFZ1bGth
blBlcmZvcm1hbmNlQ291bnRlclRlc3QsIFJlYWRPbmx5RGVwdGhTdGVuY2lsRmVlZGJhY2tMb29w
VXNlc1NpbmdsZVIKIC8vIC0gU2NlbmFyaW86IGludmFsaWRhdGUsIGRpc2FibGUsIGRyYXcKIFRF
U1RfUChWdWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJUZXN0LCBJbnZhbGlkYXRlRGlzYWJsZURyYXcp
CiB7Ci0gICAgY29uc3Qgcng6OnZrOjpQZXJmQ291bnRlcnMgJmNvdW50ZXJzID0gaGFja0FOR0xF
KCk7Ci0gICAgcng6OnZrOjpQZXJmQ291bnRlcnMgZXhwZWN0ZWQ7CisgICAgQU5HTEVfU0tJUF9U
RVNUX0lGKCFJc0dMRXh0ZW5zaW9uRW5hYmxlZChrUGVyZk1vbml0b3JFeHRlbnNpb25OYW1lKSk7
CisKKyAgICBhbmdsZTo6VnVsa2FuUGVyZkNvdW50ZXJzIGV4cGVjdGVkOwogCiAgICAgLy8gRXhw
ZWN0IHJwQ291bnQrMSwgZGVwdGgoQ2xlYXJzKzEsIExvYWRzKzAsIFN0b3JlcyswKSwgc3RlbmNp
bChDbGVhcnMrMCwgTG9hZCswLCBTdG9yZXMrMCkKLSAgICBzZXRFeHBlY3RlZENvdW50ZXJzRm9y
SW52YWxpZGF0ZVRlc3QoY291bnRlcnMsIDEsIDEsIDAsIDAsIDAsIDAsIDAsICZleHBlY3RlZCk7
CisgICAgc2V0RXhwZWN0ZWRDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGdldFBlcmZDb3VudGVy
cygpLCAxLCAxLCAwLCAwLCAwLCAwLCAwLCAmZXhwZWN0ZWQpOwogCiAgICAgQU5HTEVfR0xfUFJP
R1JBTShwcm9ncmFtLCBlc3NsMV9zaGFkZXJzOjp2czo6U2ltcGxlKCksIGVzc2wxX3NoYWRlcnM6
OmZzOjpSZWQoKSk7CiAgICAgR0xGcmFtZWJ1ZmZlciBmcmFtZWJ1ZmZlcjsKQEAgLTU4OCwxOCAr
NjU4LDE4IEBAIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJUZXN0LCBJbnZhbGlkYXRl
RGlzYWJsZURyYXcpCiAgICAgQVNTRVJUX0dMX05PX0VSUk9SKCk7CiAKICAgICAvLyBFbnN1cmUg
dGhhdCB0aGUgcmVuZGVyIHBhc3Mgd2Fzbid0IGJyb2tlbgotICAgIEVYUEVDVF9FUShleHBlY3Rl
ZC5yZW5kZXJQYXNzZXMsIGNvdW50ZXJzLnJlbmRlclBhc3Nlcyk7CisgICAgRVhQRUNUX0VRKGV4
cGVjdGVkLnJlbmRlclBhc3NlcywgZ2V0UGVyZkNvdW50ZXJzKCkucmVuZGVyUGFzc2VzKTsKIAog
ICAgIC8vIFVzZSBzd2FwQnVmZmVycyBhbmQgdGhlbiBjaGVjayBob3cgbWFueSBsb2FkcyBhbmQg
c3RvcmVzIHdlcmUgYWN0dWFsbHkgZG9uZQogICAgIHN3YXBCdWZmZXJzKCk7Ci0gICAgY29tcGFy
ZURlcHRoU3RlbmNpbENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoY291bnRlcnMsIGV4cGVjdGVk
KTsKKyAgICBjb21wYXJlRGVwdGhTdGVuY2lsQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChnZXRQ
ZXJmQ291bnRlcnMoKSwgZXhwZWN0ZWQpOwogCiAgICAgLy8gU3RhcnQgYW5kIGVuZCBhbm90aGVy
IHJlbmRlciBwYXNzLCB0byBjaGVjayB0aGF0IHRoZSBsb2FkIG9wcyBhcmUgYXMgZXhwZWN0ZWQK
LSAgICBzZXRBbmRJbmNyZW1lbnRMb2FkQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChjb3VudGVy
cywgMCwgMCwgJmV4cGVjdGVkKTsKKyAgICBzZXRBbmRJbmNyZW1lbnRMb2FkQ291bnRlcnNGb3JJ
bnZhbGlkYXRlVGVzdChnZXRQZXJmQ291bnRlcnMoKSwgMCwgMCwgJmV4cGVjdGVkKTsKICAgICBk
cmF3UXVhZChwcm9ncmFtLCBlc3NsMV9zaGFkZXJzOjpQb3NpdGlvbkF0dHJpYigpLCAwLjVmKTsK
ICAgICBBU1NFUlRfR0xfTk9fRVJST1IoKTsKICAgICBzd2FwQnVmZmVycygpOwotICAgIGNvbXBh
cmVMb2FkQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChjb3VudGVycywgZXhwZWN0ZWQpOworICAg
IGNvbXBhcmVMb2FkQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChnZXRQZXJmQ291bnRlcnMoKSwg
ZXhwZWN0ZWQpOwogfQogCiAvLyBUZXN0cyB0aGF0IGFsdGVybmF0aXZlIFBVQkcgTU9CSUxFIGNh
c2UgZG9lcyBub3QgYnJlYWsgcmVuZGVyIHBhc3MsIGFuZCB0aGF0IGNvdW50cyBhcmUgY29ycmVj
dDoKQEAgLTYwNywxMSArNjc3LDEyIEBAIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJU
ZXN0LCBJbnZhbGlkYXRlRGlzYWJsZURyYXcpCiAvLyAtIFNjZW5hcmlvOiBkaXNhYmxlLCBpbnZh
bGlkYXRlLCBkcmF3CiBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdCwgRGlzYWJs
ZUludmFsaWRhdGVEcmF3KQogewotICAgIGNvbnN0IHJ4Ojp2azo6UGVyZkNvdW50ZXJzICZjb3Vu
dGVycyA9IGhhY2tBTkdMRSgpOwotICAgIHJ4Ojp2azo6UGVyZkNvdW50ZXJzIGV4cGVjdGVkOwor
ICAgIEFOR0xFX1NLSVBfVEVTVF9JRighSXNHTEV4dGVuc2lvbkVuYWJsZWQoa1BlcmZNb25pdG9y
RXh0ZW5zaW9uTmFtZSkpOworCisgICAgYW5nbGU6OlZ1bGthblBlcmZDb3VudGVycyBleHBlY3Rl
ZDsKIAogICAgIC8vIEV4cGVjdCBycENvdW50KzEsIGRlcHRoKENsZWFycysxLCBMb2FkcyswLCBT
dG9yZXMrMCksIHN0ZW5jaWwoQ2xlYXJzKzAsIExvYWQrMCwgU3RvcmVzKzApCi0gICAgc2V0RXhw
ZWN0ZWRDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGNvdW50ZXJzLCAxLCAxLCAwLCAwLCAwLCAw
LCAwLCAmZXhwZWN0ZWQpOworICAgIHNldEV4cGVjdGVkQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVz
dChnZXRQZXJmQ291bnRlcnMoKSwgMSwgMSwgMCwgMCwgMCwgMCwgMCwgJmV4cGVjdGVkKTsKIAog
ICAgIEFOR0xFX0dMX1BST0dSQU0ocHJvZ3JhbSwgZXNzbDFfc2hhZGVyczo6dnM6OlNpbXBsZSgp
LCBlc3NsMV9zaGFkZXJzOjpmczo6UmVkKCkpOwogICAgIEdMRnJhbWVidWZmZXIgZnJhbWVidWZm
ZXI7CkBAIC02MzUsMTggKzcwNiwxOCBAQCBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVy
VGVzdCwgRGlzYWJsZUludmFsaWRhdGVEcmF3KQogICAgIEFTU0VSVF9HTF9OT19FUlJPUigpOwog
CiAgICAgLy8gRW5zdXJlIHRoYXQgdGhlIHJlbmRlciBwYXNzIHdhc24ndCBicm9rZW4KLSAgICBF
WFBFQ1RfRVEoZXhwZWN0ZWQucmVuZGVyUGFzc2VzLCBjb3VudGVycy5yZW5kZXJQYXNzZXMpOwor
ICAgIEVYUEVDVF9FUShleHBlY3RlZC5yZW5kZXJQYXNzZXMsIGdldFBlcmZDb3VudGVycygpLnJl
bmRlclBhc3Nlcyk7CiAKICAgICAvLyBVc2Ugc3dhcEJ1ZmZlcnMgYW5kIHRoZW4gY2hlY2sgaG93
IG1hbnkgbG9hZHMgYW5kIHN0b3JlcyB3ZXJlIGFjdHVhbGx5IGRvbmUKICAgICBzd2FwQnVmZmVy
cygpOwotICAgIGNvbXBhcmVEZXB0aFN0ZW5jaWxDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGNv
dW50ZXJzLCBleHBlY3RlZCk7CisgICAgY29tcGFyZURlcHRoU3RlbmNpbENvdW50ZXJzRm9ySW52
YWxpZGF0ZVRlc3QoZ2V0UGVyZkNvdW50ZXJzKCksIGV4cGVjdGVkKTsKIAogICAgIC8vIFN0YXJ0
IGFuZCBlbmQgYW5vdGhlciByZW5kZXIgcGFzcywgdG8gY2hlY2sgdGhhdCB0aGUgbG9hZCBvcHMg
YXJlIGFzIGV4cGVjdGVkCi0gICAgc2V0QW5kSW5jcmVtZW50TG9hZENvdW50ZXJzRm9ySW52YWxp
ZGF0ZVRlc3QoY291bnRlcnMsIDAsIDAsICZleHBlY3RlZCk7CisgICAgc2V0QW5kSW5jcmVtZW50
TG9hZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoZ2V0UGVyZkNvdW50ZXJzKCksIDAsIDAsICZl
eHBlY3RlZCk7CiAgICAgZHJhd1F1YWQocHJvZ3JhbSwgZXNzbDFfc2hhZGVyczo6UG9zaXRpb25B
dHRyaWIoKSwgMC41Zik7CiAgICAgQVNTRVJUX0dMX05PX0VSUk9SKCk7CiAgICAgc3dhcEJ1ZmZl
cnMoKTsKLSAgICBjb21wYXJlTG9hZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoY291bnRlcnMs
IGV4cGVjdGVkKTsKKyAgICBjb21wYXJlTG9hZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoZ2V0
UGVyZkNvdW50ZXJzKCksIGV4cGVjdGVkKTsKIH0KIAogLy8gVGVzdHMgdGhhdCBhbm90aGVyIGNh
c2UgZG9lcyBub3QgYnJlYWsgcmVuZGVyIHBhc3MsIGFuZCB0aGF0IGNvdW50cyBhcmUgY29ycmVj
dDoKQEAgLTY1NCwxMSArNzI1LDEyIEBAIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJU
ZXN0LCBEaXNhYmxlSW52YWxpZGF0ZURyYXcpCiAvLyAtIFNjZW5hcmlvOiBkaXNhYmxlLCBkcmF3
LCBpbnZhbGlkYXRlLCBlbmFibGUKIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJUZXN0
LCBEaXNhYmxlRHJhd0ludmFsaWRhdGVFbmFibGUpCiB7Ci0gICAgY29uc3Qgcng6OnZrOjpQZXJm
Q291bnRlcnMgJmNvdW50ZXJzID0gaGFja0FOR0xFKCk7Ci0gICAgcng6OnZrOjpQZXJmQ291bnRl
cnMgZXhwZWN0ZWQ7CisgICAgQU5HTEVfU0tJUF9URVNUX0lGKCFJc0dMRXh0ZW5zaW9uRW5hYmxl
ZChrUGVyZk1vbml0b3JFeHRlbnNpb25OYW1lKSk7CisKKyAgICBhbmdsZTo6VnVsa2FuUGVyZkNv
dW50ZXJzIGV4cGVjdGVkOwogCiAgICAgLy8gRXhwZWN0IHJwQ291bnQrMSwgZGVwdGgoQ2xlYXJz
KzEsIExvYWRzKzAsIFN0b3JlcyswKSwgc3RlbmNpbChDbGVhcnMrMCwgTG9hZCswLCBTdG9yZXMr
MCkKLSAgICBzZXRFeHBlY3RlZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoY291bnRlcnMsIDEs
IDEsIDAsIDAsIDAsIDAsIDAsICZleHBlY3RlZCk7CisgICAgc2V0RXhwZWN0ZWRDb3VudGVyc0Zv
ckludmFsaWRhdGVUZXN0KGdldFBlcmZDb3VudGVycygpLCAxLCAxLCAwLCAwLCAwLCAwLCAwLCAm
ZXhwZWN0ZWQpOwogCiAgICAgQU5HTEVfR0xfUFJPR1JBTShwcm9ncmFtLCBlc3NsMV9zaGFkZXJz
Ojp2czo6U2ltcGxlKCksIGVzc2wxX3NoYWRlcnM6OmZzOjpSZWQoKSk7CiAgICAgR0xGcmFtZWJ1
ZmZlciBmcmFtZWJ1ZmZlcjsKQEAgLTY5MCwyMSArNzYyLDIxIEBAIFRFU1RfUChWdWxrYW5QZXJm
b3JtYW5jZUNvdW50ZXJUZXN0LCBEaXNhYmxlRHJhd0ludmFsaWRhdGVFbmFibGUpCiAgICAgLy8g
ZGlydHkgYml0IHRvIGJlIHByb2Nlc3NlZAogCiAgICAgLy8gRW5zdXJlIHRoYXQgdGhlIHJlbmRl
ciBwYXNzIHdhc24ndCBicm9rZW4KLSAgICBFWFBFQ1RfRVEoZXhwZWN0ZWQucmVuZGVyUGFzc2Vz
LCBjb3VudGVycy5yZW5kZXJQYXNzZXMpOworICAgIEVYUEVDVF9FUShleHBlY3RlZC5yZW5kZXJQ
YXNzZXMsIGdldFBlcmZDb3VudGVycygpLnJlbmRlclBhc3Nlcyk7CiAKICAgICAvLyBCcmVhayB0
aGUgcmVuZGVyIHBhc3MgYnkgcmVhZGluZyBiYWNrIGEgcGl4ZWwuCiAgICAgRVhQRUNUX1BJWEVM
X0NPTE9SX0VRKDAsIDAsIEdMQ29sb3I6OnJlZCk7CiAKICAgICAvLyBVc2Ugc3dhcEJ1ZmZlcnMg
YW5kIHRoZW4gY2hlY2sgaG93IG1hbnkgbG9hZHMgYW5kIHN0b3JlcyB3ZXJlIGFjdHVhbGx5IGRv
bmUKICAgICBzd2FwQnVmZmVycygpOwotICAgIGNvbXBhcmVEZXB0aFN0ZW5jaWxDb3VudGVyc0Zv
ckludmFsaWRhdGVUZXN0KGNvdW50ZXJzLCBleHBlY3RlZCk7CisgICAgY29tcGFyZURlcHRoU3Rl
bmNpbENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoZ2V0UGVyZkNvdW50ZXJzKCksIGV4cGVjdGVk
KTsKIAogICAgIC8vIFN0YXJ0IGFuZCBlbmQgYW5vdGhlciByZW5kZXIgcGFzcywgdG8gY2hlY2sg
dGhhdCB0aGUgbG9hZCBvcHMgYXJlIGFzIGV4cGVjdGVkCi0gICAgc2V0QW5kSW5jcmVtZW50TG9h
ZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoY291bnRlcnMsIDAsIDAsICZleHBlY3RlZCk7Cisg
ICAgc2V0QW5kSW5jcmVtZW50TG9hZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoZ2V0UGVyZkNv
dW50ZXJzKCksIDAsIDAsICZleHBlY3RlZCk7CiAgICAgZHJhd1F1YWQocHJvZ3JhbSwgZXNzbDFf
c2hhZGVyczo6UG9zaXRpb25BdHRyaWIoKSwgMC41Zik7CiAgICAgQVNTRVJUX0dMX05PX0VSUk9S
KCk7CiAgICAgc3dhcEJ1ZmZlcnMoKTsKLSAgICBjb21wYXJlTG9hZENvdW50ZXJzRm9ySW52YWxp
ZGF0ZVRlc3QoY291bnRlcnMsIGV4cGVjdGVkKTsKKyAgICBjb21wYXJlTG9hZENvdW50ZXJzRm9y
SW52YWxpZGF0ZVRlc3QoZ2V0UGVyZkNvdW50ZXJzKCksIGV4cGVjdGVkKTsKIH0KIAogLy8gVGVz
dHMgdGhhdCBjb21tb24gVFJleCBjYXNlIGRvZXMgbm90IGJyZWFrIHJlbmRlciBwYXNzLCBhbmQg
dGhhdCBjb3VudHMgYXJlIGNvcnJlY3Q6CkBAIC03MTIsMTEgKzc4NCwxMiBAQCBURVNUX1AoVnVs
a2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdCwgRGlzYWJsZURyYXdJbnZhbGlkYXRlRW5hYmxlKQog
Ly8gLSBTY2VuYXJpbzogaW52YWxpZGF0ZQogVEVTVF9QKFZ1bGthblBlcmZvcm1hbmNlQ291bnRl
clRlc3QsIEludmFsaWRhdGUpCiB7Ci0gICAgY29uc3Qgcng6OnZrOjpQZXJmQ291bnRlcnMgJmNv
dW50ZXJzID0gaGFja0FOR0xFKCk7Ci0gICAgcng6OnZrOjpQZXJmQ291bnRlcnMgZXhwZWN0ZWQ7
CisgICAgQU5HTEVfU0tJUF9URVNUX0lGKCFJc0dMRXh0ZW5zaW9uRW5hYmxlZChrUGVyZk1vbml0
b3JFeHRlbnNpb25OYW1lKSk7CisKKyAgICBhbmdsZTo6VnVsa2FuUGVyZkNvdW50ZXJzIGV4cGVj
dGVkOwogCiAgICAgLy8gRXhwZWN0IHJwQ291bnQrMSwgZGVwdGgoQ2xlYXJzKzEsIExvYWRzKzAs
IFN0b3JlcyswKSwgc3RlbmNpbChDbGVhcnMrMCwgTG9hZCswLCBTdG9yZXMrMCkKLSAgICBzZXRF
eHBlY3RlZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoY291bnRlcnMsIDEsIDEsIDAsIDAsIDAs
IDAsIDAsICZleHBlY3RlZCk7CisgICAgc2V0RXhwZWN0ZWRDb3VudGVyc0ZvckludmFsaWRhdGVU
ZXN0KGdldFBlcmZDb3VudGVycygpLCAxLCAxLCAwLCAwLCAwLCAwLCAwLCAmZXhwZWN0ZWQpOwog
CiAgICAgQU5HTEVfR0xfUFJPR1JBTShwcm9ncmFtLCBlc3NsMV9zaGFkZXJzOjp2czo6U2ltcGxl
KCksIGVzc2wxX3NoYWRlcnM6OmZzOjpSZWQoKSk7CiAgICAgR0xGcmFtZWJ1ZmZlciBmcmFtZWJ1
ZmZlcjsKQEAgLTczMiwyOSArODA1LDMwIEBAIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5jZUNvdW50
ZXJUZXN0LCBJbnZhbGlkYXRlKQogICAgIEFTU0VSVF9HTF9OT19FUlJPUigpOwogCiAgICAgLy8g
RW5zdXJlIHRoYXQgdGhlIHJlbmRlciBwYXNzIHdhc24ndCBicm9rZW4KLSAgICBFWFBFQ1RfRVEo
ZXhwZWN0ZWQucmVuZGVyUGFzc2VzLCBjb3VudGVycy5yZW5kZXJQYXNzZXMpOworICAgIEVYUEVD
VF9FUShleHBlY3RlZC5yZW5kZXJQYXNzZXMsIGdldFBlcmZDb3VudGVycygpLnJlbmRlclBhc3Nl
cyk7CiAKICAgICAvLyBVc2Ugc3dhcEJ1ZmZlcnMgYW5kIHRoZW4gY2hlY2sgaG93IG1hbnkgbG9h
ZHMgYW5kIHN0b3JlcyB3ZXJlIGFjdHVhbGx5IGRvbmUKICAgICBzd2FwQnVmZmVycygpOwotICAg
IGNvbXBhcmVEZXB0aFN0ZW5jaWxDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGNvdW50ZXJzLCBl
eHBlY3RlZCk7CisgICAgY29tcGFyZURlcHRoU3RlbmNpbENvdW50ZXJzRm9ySW52YWxpZGF0ZVRl
c3QoZ2V0UGVyZkNvdW50ZXJzKCksIGV4cGVjdGVkKTsKIAogICAgIC8vIFN0YXJ0IGFuZCBlbmQg
YW5vdGhlciByZW5kZXIgcGFzcywgdG8gY2hlY2sgdGhhdCB0aGUgbG9hZCBvcHMgYXJlIGFzIGV4
cGVjdGVkCi0gICAgc2V0QW5kSW5jcmVtZW50TG9hZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3Qo
Y291bnRlcnMsIDAsIDAsICZleHBlY3RlZCk7CisgICAgc2V0QW5kSW5jcmVtZW50TG9hZENvdW50
ZXJzRm9ySW52YWxpZGF0ZVRlc3QoZ2V0UGVyZkNvdW50ZXJzKCksIDAsIDAsICZleHBlY3RlZCk7
CiAgICAgZHJhd1F1YWQocHJvZ3JhbSwgZXNzbDFfc2hhZGVyczo6UG9zaXRpb25BdHRyaWIoKSwg
MC41Zik7CiAgICAgQVNTRVJUX0dMX05PX0VSUk9SKCk7CiAgICAgc3dhcEJ1ZmZlcnMoKTsKLSAg
ICBjb21wYXJlTG9hZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoY291bnRlcnMsIGV4cGVjdGVk
KTsKKyAgICBjb21wYXJlTG9hZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoZ2V0UGVyZkNvdW50
ZXJzKCksIGV4cGVjdGVkKTsKIH0KIAogLy8gU2ltaWxhciB0byBJbnZhbGlkYXRlLCBidXQgdXNl
cyBnbEludmFsaWRhdGVTdWJGcmFtZWJ1ZmZlciBzdWNoIHRoYXQgdGhlIGdpdmVuIGFyZWEgY292
ZXJzIHRoZQogLy8gd2hvbGUgZnJhbWVidWZmZXIuCiBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VD
b3VudGVyVGVzdCwgSW52YWxpZGF0ZVN1YikKIHsKLSAgICBjb25zdCByeDo6dms6OlBlcmZDb3Vu
dGVycyAmY291bnRlcnMgPSBoYWNrQU5HTEUoKTsKLSAgICByeDo6dms6OlBlcmZDb3VudGVycyBl
eHBlY3RlZDsKKyAgICBBTkdMRV9TS0lQX1RFU1RfSUYoIUlzR0xFeHRlbnNpb25FbmFibGVkKGtQ
ZXJmTW9uaXRvckV4dGVuc2lvbk5hbWUpKTsKKworICAgIGFuZ2xlOjpWdWxrYW5QZXJmQ291bnRl
cnMgZXhwZWN0ZWQ7CiAKICAgICAvLyBFeHBlY3QgcnBDb3VudCsxLCBkZXB0aChDbGVhcnMrMSwg
TG9hZHMrMCwgU3RvcmVzKzApLCBzdGVuY2lsKENsZWFycyswLCBMb2FkKzAsIFN0b3JlcyswKQot
ICAgIHNldEV4cGVjdGVkQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChjb3VudGVycywgMSwgMSwg
MCwgMCwgMCwgMCwgMCwgJmV4cGVjdGVkKTsKKyAgICBzZXRFeHBlY3RlZENvdW50ZXJzRm9ySW52
YWxpZGF0ZVRlc3QoZ2V0UGVyZkNvdW50ZXJzKCksIDEsIDEsIDAsIDAsIDAsIDAsIDAsICZleHBl
Y3RlZCk7CiAKICAgICBBTkdMRV9HTF9QUk9HUkFNKHByb2dyYW0sIGVzc2wxX3NoYWRlcnM6OnZz
OjpTaW1wbGUoKSwgZXNzbDFfc2hhZGVyczo6ZnM6OlJlZCgpKTsKICAgICBHTEZyYW1lYnVmZmVy
IGZyYW1lYnVmZmVyOwpAQCAtNzcxLDE4ICs4NDUsMTggQEAgVEVTVF9QKFZ1bGthblBlcmZvcm1h
bmNlQ291bnRlclRlc3QsIEludmFsaWRhdGVTdWIpCiAgICAgQVNTRVJUX0dMX05PX0VSUk9SKCk7
CiAKICAgICAvLyBFbnN1cmUgdGhhdCB0aGUgcmVuZGVyIHBhc3Mgd2Fzbid0IGJyb2tlbgotICAg
IEVYUEVDVF9FUShleHBlY3RlZC5yZW5kZXJQYXNzZXMsIGNvdW50ZXJzLnJlbmRlclBhc3Nlcyk7
CisgICAgRVhQRUNUX0VRKGV4cGVjdGVkLnJlbmRlclBhc3NlcywgZ2V0UGVyZkNvdW50ZXJzKCku
cmVuZGVyUGFzc2VzKTsKIAogICAgIC8vIFVzZSBzd2FwQnVmZmVycyBhbmQgdGhlbiBjaGVjayBo
b3cgbWFueSBsb2FkcyBhbmQgc3RvcmVzIHdlcmUgYWN0dWFsbHkgZG9uZQogICAgIHN3YXBCdWZm
ZXJzKCk7Ci0gICAgY29tcGFyZURlcHRoU3RlbmNpbENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3Qo
Y291bnRlcnMsIGV4cGVjdGVkKTsKKyAgICBjb21wYXJlRGVwdGhTdGVuY2lsQ291bnRlcnNGb3JJ
bnZhbGlkYXRlVGVzdChnZXRQZXJmQ291bnRlcnMoKSwgZXhwZWN0ZWQpOwogCiAgICAgLy8gU3Rh
cnQgYW5kIGVuZCBhbm90aGVyIHJlbmRlciBwYXNzLCB0byBjaGVjayB0aGF0IHRoZSBsb2FkIG9w
cyBhcmUgYXMgZXhwZWN0ZWQKLSAgICBzZXRBbmRJbmNyZW1lbnRMb2FkQ291bnRlcnNGb3JJbnZh
bGlkYXRlVGVzdChjb3VudGVycywgMCwgMCwgJmV4cGVjdGVkKTsKKyAgICBzZXRBbmRJbmNyZW1l
bnRMb2FkQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChnZXRQZXJmQ291bnRlcnMoKSwgMCwgMCwg
JmV4cGVjdGVkKTsKICAgICBkcmF3UXVhZChwcm9ncmFtLCBlc3NsMV9zaGFkZXJzOjpQb3NpdGlv
bkF0dHJpYigpLCAwLjVmKTsKICAgICBBU1NFUlRfR0xfTk9fRVJST1IoKTsKICAgICBzd2FwQnVm
ZmVycygpOwotICAgIGNvbXBhcmVMb2FkQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChjb3VudGVy
cywgZXhwZWN0ZWQpOworICAgIGNvbXBhcmVMb2FkQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChn
ZXRQZXJmQ291bnRlcnMoKSwgZXhwZWN0ZWQpOwogfQogCiAvLyBUZXN0cyB0aGF0IGFub3RoZXIg
Y2FzZSBkb2VzIG5vdCBicmVhayByZW5kZXIgcGFzcywgYW5kIHRoYXQgY291bnRzIGFyZSBjb3Jy
ZWN0OgpAQCAtNzkwLDExICs4NjQsMTIgQEAgVEVTVF9QKFZ1bGthblBlcmZvcm1hbmNlQ291bnRl
clRlc3QsIEludmFsaWRhdGVTdWIpCiAvLyAtIFNjZW5hcmlvOiBpbnZhbGlkYXRlLCBkcmF3CiBU
RVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdCwgSW52YWxpZGF0ZURyYXcpCiB7Ci0g
ICAgY29uc3Qgcng6OnZrOjpQZXJmQ291bnRlcnMgJmNvdW50ZXJzID0gaGFja0FOR0xFKCk7Ci0g
ICAgcng6OnZrOjpQZXJmQ291bnRlcnMgZXhwZWN0ZWQ7CisgICAgQU5HTEVfU0tJUF9URVNUX0lG
KCFJc0dMRXh0ZW5zaW9uRW5hYmxlZChrUGVyZk1vbml0b3JFeHRlbnNpb25OYW1lKSk7CisKKyAg
ICBhbmdsZTo6VnVsa2FuUGVyZkNvdW50ZXJzIGV4cGVjdGVkOwogCiAgICAgLy8gRXhwZWN0IHJw
Q291bnQrMSwgZGVwdGgoQ2xlYXJzKzEsIExvYWRzKzAsIFN0b3JlcysxKSwgc3RlbmNpbChDbGVh
cnMrMCwgTG9hZCswLCBTdG9yZXMrMCkKLSAgICBzZXRFeHBlY3RlZENvdW50ZXJzRm9ySW52YWxp
ZGF0ZVRlc3QoY291bnRlcnMsIDEsIDEsIDAsIDEsIDAsIDAsIDAsICZleHBlY3RlZCk7CisgICAg
c2V0RXhwZWN0ZWRDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGdldFBlcmZDb3VudGVycygpLCAx
LCAxLCAwLCAxLCAwLCAwLCAwLCAmZXhwZWN0ZWQpOwogCiAgICAgQU5HTEVfR0xfUFJPR1JBTShw
cm9ncmFtLCBlc3NsMV9zaGFkZXJzOjp2czo6U2ltcGxlKCksIGVzc2wxX3NoYWRlcnM6OmZzOjpS
ZWQoKSk7CiAgICAgR0xGcmFtZWJ1ZmZlciBmcmFtZWJ1ZmZlcjsKQEAgLTgxNCwxOCArODg5LDE4
IEBAIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJUZXN0LCBJbnZhbGlkYXRlRHJhdykK
ICAgICBBU1NFUlRfR0xfTk9fRVJST1IoKTsKIAogICAgIC8vIEVuc3VyZSB0aGF0IHRoZSByZW5k
ZXIgcGFzcyB3YXNuJ3QgYnJva2VuCi0gICAgRVhQRUNUX0VRKGV4cGVjdGVkLnJlbmRlclBhc3Nl
cywgY291bnRlcnMucmVuZGVyUGFzc2VzKTsKKyAgICBFWFBFQ1RfRVEoZXhwZWN0ZWQucmVuZGVy
UGFzc2VzLCBnZXRQZXJmQ291bnRlcnMoKS5yZW5kZXJQYXNzZXMpOwogCiAgICAgLy8gVXNlIHN3
YXBCdWZmZXJzIGFuZCB0aGVuIGNoZWNrIGhvdyBtYW55IGxvYWRzIGFuZCBzdG9yZXMgd2VyZSBh
Y3R1YWxseSBkb25lCiAgICAgc3dhcEJ1ZmZlcnMoKTsKLSAgICBjb21wYXJlRGVwdGhTdGVuY2ls
Q291bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChjb3VudGVycywgZXhwZWN0ZWQpOworICAgIGNvbXBh
cmVEZXB0aFN0ZW5jaWxDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGdldFBlcmZDb3VudGVycygp
LCBleHBlY3RlZCk7CiAKICAgICAvLyBTdGFydCBhbmQgZW5kIGFub3RoZXIgcmVuZGVyIHBhc3Ms
IHRvIGNoZWNrIHRoYXQgdGhlIGxvYWQgb3BzIGFyZSBhcyBleHBlY3RlZAotICAgIHNldEFuZElu
Y3JlbWVudExvYWRDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGNvdW50ZXJzLCAxLCAwLCAmZXhw
ZWN0ZWQpOworICAgIHNldEFuZEluY3JlbWVudExvYWRDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0
KGdldFBlcmZDb3VudGVycygpLCAxLCAwLCAmZXhwZWN0ZWQpOwogICAgIGRyYXdRdWFkKHByb2dy
YW0sIGVzc2wxX3NoYWRlcnM6OlBvc2l0aW9uQXR0cmliKCksIDAuNWYpOwogICAgIEFTU0VSVF9H
TF9OT19FUlJPUigpOwogICAgIHN3YXBCdWZmZXJzKCk7Ci0gICAgY29tcGFyZUxvYWRDb3VudGVy
c0ZvckludmFsaWRhdGVUZXN0KGNvdW50ZXJzLCBleHBlY3RlZCk7CisgICAgY29tcGFyZUxvYWRD
b3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGdldFBlcmZDb3VudGVycygpLCBleHBlY3RlZCk7CiB9
CiAKIC8vIFRlc3RzIHRoYXQgYW5vdGhlciBjYXNlIGRvZXMgbm90IGJyZWFrIHJlbmRlciBwYXNz
LCBhbmQgdGhhdCBjb3VudHMgYXJlIGNvcnJlY3Q6CkBAIC04MzMsMTQgKzkwOCwxNSBAQCBURVNU
X1AoVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdCwgSW52YWxpZGF0ZURyYXcpCiAvLyAtIFNj
ZW5hcmlvOiBpbnZhbGlkYXRlLCBkcmF3LCBkaXNhYmxlCiBURVNUX1AoVnVsa2FuUGVyZm9ybWFu
Y2VDb3VudGVyVGVzdCwgSW52YWxpZGF0ZURyYXdEaXNhYmxlKQogeworICAgIEFOR0xFX1NLSVBf
VEVTVF9JRighSXNHTEV4dGVuc2lvbkVuYWJsZWQoa1BlcmZNb25pdG9yRXh0ZW5zaW9uTmFtZSkp
OworCiAgICAgLy8gaHR0cDovL2FuZ2xlYnVnLmNvbS82ODU3CiAgICAgQU5HTEVfU0tJUF9URVNU
X0lGKElzTGludXgoKSAmJiBJc0FNRCgpICYmIElzVnVsa2FuKCkpOwogCi0gICAgY29uc3Qgcng6
OnZrOjpQZXJmQ291bnRlcnMgJmNvdW50ZXJzID0gaGFja0FOR0xFKCk7Ci0gICAgcng6OnZrOjpQ
ZXJmQ291bnRlcnMgZXhwZWN0ZWQ7CisgICAgYW5nbGU6OlZ1bGthblBlcmZDb3VudGVycyBleHBl
Y3RlZDsKIAogICAgIC8vIEV4cGVjdCBycENvdW50KzEsIGRlcHRoKENsZWFycysxLCBMb2Fkcysw
LCBTdG9yZXMrMSksIHN0ZW5jaWwoQ2xlYXJzKzAsIExvYWQrMCwgU3RvcmVzKzApCi0gICAgc2V0
RXhwZWN0ZWRDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGNvdW50ZXJzLCAxLCAxLCAwLCAxLCAw
LCAwLCAwLCAmZXhwZWN0ZWQpOworICAgIHNldEV4cGVjdGVkQ291bnRlcnNGb3JJbnZhbGlkYXRl
VGVzdChnZXRQZXJmQ291bnRlcnMoKSwgMSwgMSwgMCwgMSwgMCwgMCwgMCwgJmV4cGVjdGVkKTsK
IAogICAgIEFOR0xFX0dMX1BST0dSQU0ocHJvZ3JhbSwgZXNzbDFfc2hhZGVyczo6dnM6OlNpbXBs
ZSgpLCBlc3NsMV9zaGFkZXJzOjpmczo6UmVkKCkpOwogICAgIEdMRnJhbWVidWZmZXIgZnJhbWVi
dWZmZXI7CkBAIC04NjcsMTggKzk0MywxOCBAQCBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VDb3Vu
dGVyVGVzdCwgSW52YWxpZGF0ZURyYXdEaXNhYmxlKQogICAgIEFTU0VSVF9HTF9OT19FUlJPUigp
OwogCiAgICAgLy8gRW5zdXJlIHRoYXQgdGhlIHJlbmRlciBwYXNzIHdhc24ndCBicm9rZW4KLSAg
ICBFWFBFQ1RfRVEoZXhwZWN0ZWQucmVuZGVyUGFzc2VzLCBjb3VudGVycy5yZW5kZXJQYXNzZXMp
OworICAgIEVYUEVDVF9FUShleHBlY3RlZC5yZW5kZXJQYXNzZXMsIGdldFBlcmZDb3VudGVycygp
LnJlbmRlclBhc3Nlcyk7CiAKICAgICAvLyBVc2Ugc3dhcEJ1ZmZlcnMgYW5kIHRoZW4gY2hlY2sg
aG93IG1hbnkgbG9hZHMgYW5kIHN0b3JlcyB3ZXJlIGFjdHVhbGx5IGRvbmUKICAgICBzd2FwQnVm
ZmVycygpOwotICAgIGNvbXBhcmVEZXB0aFN0ZW5jaWxDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0
KGNvdW50ZXJzLCBleHBlY3RlZCk7CisgICAgY29tcGFyZURlcHRoU3RlbmNpbENvdW50ZXJzRm9y
SW52YWxpZGF0ZVRlc3QoZ2V0UGVyZkNvdW50ZXJzKCksIGV4cGVjdGVkKTsKIAogICAgIC8vIFN0
YXJ0IGFuZCBlbmQgYW5vdGhlciByZW5kZXIgcGFzcywgdG8gY2hlY2sgdGhhdCB0aGUgbG9hZCBv
cHMgYXJlIGFzIGV4cGVjdGVkCi0gICAgc2V0QW5kSW5jcmVtZW50TG9hZENvdW50ZXJzRm9ySW52
YWxpZGF0ZVRlc3QoY291bnRlcnMsIDEsIDEsICZleHBlY3RlZCk7CisgICAgc2V0QW5kSW5jcmVt
ZW50TG9hZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoZ2V0UGVyZkNvdW50ZXJzKCksIDEsIDEs
ICZleHBlY3RlZCk7CiAgICAgZHJhd1F1YWQocHJvZ3JhbSwgZXNzbDFfc2hhZGVyczo6UG9zaXRp
b25BdHRyaWIoKSwgMC41Zik7CiAgICAgQVNTRVJUX0dMX05PX0VSUk9SKCk7CiAgICAgc3dhcEJ1
ZmZlcnMoKTsKLSAgICBjb21wYXJlTG9hZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoY291bnRl
cnMsIGV4cGVjdGVkKTsKKyAgICBjb21wYXJlTG9hZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3Qo
Z2V0UGVyZkNvdW50ZXJzKCksIGV4cGVjdGVkKTsKIH0KIAogLy8gVGVzdHMgdGhhdCBhbm90aGVy
IGNhc2UgZG9lcyBub3QgYnJlYWsgcmVuZGVyIHBhc3MsIGFuZCB0aGF0IGNvdW50cyBhcmUgY29y
cmVjdDoKQEAgLTg4NiwxMSArOTYyLDExIEBAIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5jZUNvdW50
ZXJUZXN0LCBJbnZhbGlkYXRlRHJhd0Rpc2FibGUpCiAvLyAtIFNjZW5hcmlvOiBpbnZhbGlkYXRl
LCBkaXNhYmxlLCBkcmF3LCBlbmFibGUKIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJU
ZXN0LCBJbnZhbGlkYXRlRGlzYWJsZURyYXdFbmFibGUpCiB7Ci0gICAgY29uc3Qgcng6OnZrOjpQ
ZXJmQ291bnRlcnMgJmNvdW50ZXJzID0gaGFja0FOR0xFKCk7Ci0gICAgcng6OnZrOjpQZXJmQ291
bnRlcnMgZXhwZWN0ZWQ7CisgICAgQU5HTEVfU0tJUF9URVNUX0lGKCFJc0dMRXh0ZW5zaW9uRW5h
YmxlZChrUGVyZk1vbml0b3JFeHRlbnNpb25OYW1lKSk7CisgICAgYW5nbGU6OlZ1bGthblBlcmZD
b3VudGVycyBleHBlY3RlZDsKIAogICAgIC8vIEV4cGVjdCBycENvdW50KzEsIGRlcHRoKENsZWFy
cysxLCBMb2FkcyswLCBTdG9yZXMrMCksIHN0ZW5jaWwoQ2xlYXJzKzAsIExvYWQrMCwgU3RvcmVz
KzApCi0gICAgc2V0RXhwZWN0ZWRDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGNvdW50ZXJzLCAx
LCAxLCAwLCAwLCAwLCAwLCAwLCAmZXhwZWN0ZWQpOworICAgIHNldEV4cGVjdGVkQ291bnRlcnNG
b3JJbnZhbGlkYXRlVGVzdChnZXRQZXJmQ291bnRlcnMoKSwgMSwgMSwgMCwgMCwgMCwgMCwgMCwg
JmV4cGVjdGVkKTsKIAogICAgIEFOR0xFX0dMX1BST0dSQU0ocHJvZ3JhbSwgZXNzbDFfc2hhZGVy
czo6dnM6OlNpbXBsZSgpLCBlc3NsMV9zaGFkZXJzOjpmczo6UmVkKCkpOwogICAgIEdMRnJhbWVi
dWZmZXIgZnJhbWVidWZmZXI7CkBAIC05MjAsMTggKzk5NiwxOCBAQCBURVNUX1AoVnVsa2FuUGVy
Zm9ybWFuY2VDb3VudGVyVGVzdCwgSW52YWxpZGF0ZURpc2FibGVEcmF3RW5hYmxlKQogICAgIC8v
IGRpcnR5IGJpdCB0byBiZSBwcm9jZXNzZWQKIAogICAgIC8vIEVuc3VyZSB0aGF0IHRoZSByZW5k
ZXIgcGFzcyB3YXNuJ3QgYnJva2VuCi0gICAgRVhQRUNUX0VRKGV4cGVjdGVkLnJlbmRlclBhc3Nl
cywgY291bnRlcnMucmVuZGVyUGFzc2VzKTsKKyAgICBFWFBFQ1RfRVEoZXhwZWN0ZWQucmVuZGVy
UGFzc2VzLCBnZXRQZXJmQ291bnRlcnMoKS5yZW5kZXJQYXNzZXMpOwogCiAgICAgLy8gVXNlIHN3
YXBCdWZmZXJzIGFuZCB0aGVuIGNoZWNrIGhvdyBtYW55IGxvYWRzIGFuZCBzdG9yZXMgd2VyZSBh
Y3R1YWxseSBkb25lCiAgICAgc3dhcEJ1ZmZlcnMoKTsKLSAgICBjb21wYXJlRGVwdGhTdGVuY2ls
Q291bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChjb3VudGVycywgZXhwZWN0ZWQpOworICAgIGNvbXBh
cmVEZXB0aFN0ZW5jaWxDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGdldFBlcmZDb3VudGVycygp
LCBleHBlY3RlZCk7CiAKICAgICAvLyBTdGFydCBhbmQgZW5kIGFub3RoZXIgcmVuZGVyIHBhc3Ms
IHRvIGNoZWNrIHRoYXQgdGhlIGxvYWQgb3BzIGFyZSBhcyBleHBlY3RlZAotICAgIHNldEFuZElu
Y3JlbWVudExvYWRDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGNvdW50ZXJzLCAwLCAwLCAmZXhw
ZWN0ZWQpOworICAgIHNldEFuZEluY3JlbWVudExvYWRDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0
KGdldFBlcmZDb3VudGVycygpLCAwLCAwLCAmZXhwZWN0ZWQpOwogICAgIGRyYXdRdWFkKHByb2dy
YW0sIGVzc2wxX3NoYWRlcnM6OlBvc2l0aW9uQXR0cmliKCksIDAuNWYpOwogICAgIEFTU0VSVF9H
TF9OT19FUlJPUigpOwogICAgIHN3YXBCdWZmZXJzKCk7Ci0gICAgY29tcGFyZUxvYWRDb3VudGVy
c0ZvckludmFsaWRhdGVUZXN0KGNvdW50ZXJzLCBleHBlY3RlZCk7CisgICAgY29tcGFyZUxvYWRD
b3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGdldFBlcmZDb3VudGVycygpLCBleHBlY3RlZCk7CiB9
CiAKIC8vIFRlc3RzIHRoYXQgYW5vdGhlciBjYXNlIGRvZXMgbm90IGJyZWFrIHJlbmRlciBwYXNz
LCBhbmQgdGhhdCBjb3VudHMgYXJlIGNvcnJlY3Q6CkBAIC05MzksMTEgKzEwMTUsMTEgQEAgVEVT
VF9QKFZ1bGthblBlcmZvcm1hbmNlQ291bnRlclRlc3QsIEludmFsaWRhdGVEaXNhYmxlRHJhd0Vu
YWJsZSkKIC8vIC0gU2NlbmFyaW86IGludmFsaWRhdGUsIGRpc2FibGUsIGRyYXcsIGVuYWJsZSwg
ZHJhdwogVEVTVF9QKFZ1bGthblBlcmZvcm1hbmNlQ291bnRlclRlc3QsIEludmFsaWRhdGVEaXNh
YmxlRHJhd0VuYWJsZURyYXcpCiB7Ci0gICAgY29uc3Qgcng6OnZrOjpQZXJmQ291bnRlcnMgJmNv
dW50ZXJzID0gaGFja0FOR0xFKCk7Ci0gICAgcng6OnZrOjpQZXJmQ291bnRlcnMgZXhwZWN0ZWQ7
CisgICAgQU5HTEVfU0tJUF9URVNUX0lGKCFJc0dMRXh0ZW5zaW9uRW5hYmxlZChrUGVyZk1vbml0
b3JFeHRlbnNpb25OYW1lKSk7CisgICAgYW5nbGU6OlZ1bGthblBlcmZDb3VudGVycyBleHBlY3Rl
ZDsKIAogICAgIC8vIEV4cGVjdCBycENvdW50KzEsIGRlcHRoKENsZWFycysxLCBMb2FkcyswLCBT
dG9yZXMrMSksIHN0ZW5jaWwoQ2xlYXJzKzAsIExvYWQrMCwgU3RvcmVzKzApCi0gICAgc2V0RXhw
ZWN0ZWRDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGNvdW50ZXJzLCAxLCAxLCAwLCAxLCAwLCAw
LCAwLCAmZXhwZWN0ZWQpOworICAgIHNldEV4cGVjdGVkQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVz
dChnZXRQZXJmQ291bnRlcnMoKSwgMSwgMSwgMCwgMSwgMCwgMCwgMCwgJmV4cGVjdGVkKTsKIAog
ICAgIEFOR0xFX0dMX1BST0dSQU0ocHJvZ3JhbSwgZXNzbDFfc2hhZGVyczo6dnM6OlNpbXBsZSgp
LCBlc3NsMV9zaGFkZXJzOjpmczo6UmVkKCkpOwogICAgIEdMRnJhbWVidWZmZXIgZnJhbWVidWZm
ZXI7CkBAIC05NzUsMTggKzEwNTEsMTggQEAgVEVTVF9QKFZ1bGthblBlcmZvcm1hbmNlQ291bnRl
clRlc3QsIEludmFsaWRhdGVEaXNhYmxlRHJhd0VuYWJsZURyYXcpCiAgICAgQVNTRVJUX0dMX05P
X0VSUk9SKCk7CiAKICAgICAvLyBFbnN1cmUgdGhhdCB0aGUgcmVuZGVyIHBhc3Mgd2Fzbid0IGJy
b2tlbgotICAgIEVYUEVDVF9FUShleHBlY3RlZC5yZW5kZXJQYXNzZXMsIGNvdW50ZXJzLnJlbmRl
clBhc3Nlcyk7CisgICAgRVhQRUNUX0VRKGV4cGVjdGVkLnJlbmRlclBhc3NlcywgZ2V0UGVyZkNv
dW50ZXJzKCkucmVuZGVyUGFzc2VzKTsKIAogICAgIC8vIFVzZSBzd2FwQnVmZmVycyBhbmQgdGhl
biBjaGVjayBob3cgbWFueSBsb2FkcyBhbmQgc3RvcmVzIHdlcmUgYWN0dWFsbHkgZG9uZQogICAg
IHN3YXBCdWZmZXJzKCk7Ci0gICAgY29tcGFyZURlcHRoU3RlbmNpbENvdW50ZXJzRm9ySW52YWxp
ZGF0ZVRlc3QoY291bnRlcnMsIGV4cGVjdGVkKTsKKyAgICBjb21wYXJlRGVwdGhTdGVuY2lsQ291
bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChnZXRQZXJmQ291bnRlcnMoKSwgZXhwZWN0ZWQpOwogCiAg
ICAgLy8gU3RhcnQgYW5kIGVuZCBhbm90aGVyIHJlbmRlciBwYXNzLCB0byBjaGVjayB0aGF0IHRo
ZSBsb2FkIG9wcyBhcmUgYXMgZXhwZWN0ZWQKLSAgICBzZXRBbmRJbmNyZW1lbnRMb2FkQ291bnRl
cnNGb3JJbnZhbGlkYXRlVGVzdChjb3VudGVycywgMSwgMSwgJmV4cGVjdGVkKTsKKyAgICBzZXRB
bmRJbmNyZW1lbnRMb2FkQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChnZXRQZXJmQ291bnRlcnMo
KSwgMSwgMSwgJmV4cGVjdGVkKTsKICAgICBkcmF3UXVhZChwcm9ncmFtLCBlc3NsMV9zaGFkZXJz
OjpQb3NpdGlvbkF0dHJpYigpLCAwLjVmKTsKICAgICBBU1NFUlRfR0xfTk9fRVJST1IoKTsKICAg
ICBzd2FwQnVmZmVycygpOwotICAgIGNvbXBhcmVMb2FkQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVz
dChjb3VudGVycywgZXhwZWN0ZWQpOworICAgIGNvbXBhcmVMb2FkQ291bnRlcnNGb3JJbnZhbGlk
YXRlVGVzdChnZXRQZXJmQ291bnRlcnMoKSwgZXhwZWN0ZWQpOwogfQogCiAvLyBUZXN0cyB0aGF0
IGFub3RoZXIgY2FzZSBkb2VzIG5vdCBicmVhayByZW5kZXIgcGFzcywgYW5kIHRoYXQgY291bnRz
IGFyZSBjb3JyZWN0OgpAQCAtOTk0LDExICsxMDcwLDExIEBAIFRFU1RfUChWdWxrYW5QZXJmb3Jt
YW5jZUNvdW50ZXJUZXN0LCBJbnZhbGlkYXRlRGlzYWJsZURyYXdFbmFibGVEcmF3KQogLy8gLSBT
Y2VuYXJpbzogaW52YWxpZGF0ZSwgZHJhdywgZGlzYWJsZSwgZW5hYmxlCiBURVNUX1AoVnVsa2Fu
UGVyZm9ybWFuY2VDb3VudGVyVGVzdCwgSW52YWxpZGF0ZURyYXdEaXNhYmxlRW5hYmxlKQogewot
ICAgIGNvbnN0IHJ4Ojp2azo6UGVyZkNvdW50ZXJzICZjb3VudGVycyA9IGhhY2tBTkdMRSgpOwot
ICAgIHJ4Ojp2azo6UGVyZkNvdW50ZXJzIGV4cGVjdGVkOworICAgIEFOR0xFX1NLSVBfVEVTVF9J
RighSXNHTEV4dGVuc2lvbkVuYWJsZWQoa1BlcmZNb25pdG9yRXh0ZW5zaW9uTmFtZSkpOworICAg
IGFuZ2xlOjpWdWxrYW5QZXJmQ291bnRlcnMgZXhwZWN0ZWQ7CiAKICAgICAvLyBFeHBlY3QgcnBD
b3VudCsxLCBkZXB0aChDbGVhcnMrMSwgTG9hZHMrMCwgU3RvcmVzKzEpLCBzdGVuY2lsKENsZWFy
cyswLCBMb2FkKzAsIFN0b3JlcyswKQotICAgIHNldEV4cGVjdGVkQ291bnRlcnNGb3JJbnZhbGlk
YXRlVGVzdChjb3VudGVycywgMSwgMSwgMCwgMSwgMCwgMCwgMCwgJmV4cGVjdGVkKTsKKyAgICBz
ZXRFeHBlY3RlZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoZ2V0UGVyZkNvdW50ZXJzKCksIDEs
IDEsIDAsIDEsIDAsIDAsIDAsICZleHBlY3RlZCk7CiAKICAgICBBTkdMRV9HTF9QUk9HUkFNKHBy
b2dyYW0sIGVzc2wxX3NoYWRlcnM6OnZzOjpTaW1wbGUoKSwgZXNzbDFfc2hhZGVyczo6ZnM6OlJl
ZCgpKTsKICAgICBHTEZyYW1lYnVmZmVyIGZyYW1lYnVmZmVyOwpAQCAtMTAzMSwxOCArMTEwNywx
OCBAQCBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdCwgSW52YWxpZGF0ZURyYXdE
aXNhYmxlRW5hYmxlKQogICAgIC8vIGRpcnR5IGJpdCB0byBiZSBwcm9jZXNzZWQKIAogICAgIC8v
IEVuc3VyZSB0aGF0IHRoZSByZW5kZXIgcGFzcyB3YXNuJ3QgYnJva2VuCi0gICAgRVhQRUNUX0VR
KGV4cGVjdGVkLnJlbmRlclBhc3NlcywgY291bnRlcnMucmVuZGVyUGFzc2VzKTsKKyAgICBFWFBF
Q1RfRVEoZXhwZWN0ZWQucmVuZGVyUGFzc2VzLCBnZXRQZXJmQ291bnRlcnMoKS5yZW5kZXJQYXNz
ZXMpOwogCiAgICAgLy8gVXNlIHN3YXBCdWZmZXJzIGFuZCB0aGVuIGNoZWNrIGhvdyBtYW55IGxv
YWRzIGFuZCBzdG9yZXMgd2VyZSBhY3R1YWxseSBkb25lCiAgICAgc3dhcEJ1ZmZlcnMoKTsKLSAg
ICBjb21wYXJlRGVwdGhTdGVuY2lsQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChjb3VudGVycywg
ZXhwZWN0ZWQpOworICAgIGNvbXBhcmVEZXB0aFN0ZW5jaWxDb3VudGVyc0ZvckludmFsaWRhdGVU
ZXN0KGdldFBlcmZDb3VudGVycygpLCBleHBlY3RlZCk7CiAKICAgICAvLyBTdGFydCBhbmQgZW5k
IGFub3RoZXIgcmVuZGVyIHBhc3MsIHRvIGNoZWNrIHRoYXQgdGhlIGxvYWQgb3BzIGFyZSBhcyBl
eHBlY3RlZAotICAgIHNldEFuZEluY3JlbWVudExvYWRDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0
KGNvdW50ZXJzLCAxLCAxLCAmZXhwZWN0ZWQpOworICAgIHNldEFuZEluY3JlbWVudExvYWRDb3Vu
dGVyc0ZvckludmFsaWRhdGVUZXN0KGdldFBlcmZDb3VudGVycygpLCAxLCAxLCAmZXhwZWN0ZWQp
OwogICAgIGRyYXdRdWFkKHByb2dyYW0sIGVzc2wxX3NoYWRlcnM6OlBvc2l0aW9uQXR0cmliKCks
IDAuNWYpOwogICAgIEFTU0VSVF9HTF9OT19FUlJPUigpOwogICAgIHN3YXBCdWZmZXJzKCk7Ci0g
ICAgY29tcGFyZUxvYWRDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGNvdW50ZXJzLCBleHBlY3Rl
ZCk7CisgICAgY29tcGFyZUxvYWRDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGdldFBlcmZDb3Vu
dGVycygpLCBleHBlY3RlZCk7CiB9CiAKIC8vIFRlc3RzIHRoYXQgYW5vdGhlciBjYXNlIGRvZXMg
bm90IGJyZWFrIHJlbmRlciBwYXNzLCBhbmQgdGhhdCBjb3VudHMgYXJlIGNvcnJlY3Q6CkBAIC0x
MDUwLDExICsxMTI2LDExIEBAIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJUZXN0LCBJ
bnZhbGlkYXRlRHJhd0Rpc2FibGVFbmFibGUpCiAvLyAtIFNjZW5hcmlvOiBpbnZhbGlkYXRlLCBk
cmF3LCBkaXNhYmxlLCBlbmFibGUsIGludmFsaWRhdGUKIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5j
ZUNvdW50ZXJUZXN0LCBJbnZhbGlkYXRlRHJhd0Rpc2FibGVFbmFibGVJbnZhbGlkYXRlKQogewot
ICAgIGNvbnN0IHJ4Ojp2azo6UGVyZkNvdW50ZXJzICZjb3VudGVycyA9IGhhY2tBTkdMRSgpOwot
ICAgIHJ4Ojp2azo6UGVyZkNvdW50ZXJzIGV4cGVjdGVkOworICAgIEFOR0xFX1NLSVBfVEVTVF9J
RighSXNHTEV4dGVuc2lvbkVuYWJsZWQoa1BlcmZNb25pdG9yRXh0ZW5zaW9uTmFtZSkpOworICAg
IGFuZ2xlOjpWdWxrYW5QZXJmQ291bnRlcnMgZXhwZWN0ZWQ7CiAKICAgICAvLyBFeHBlY3QgcnBD
b3VudCsxLCBkZXB0aChDbGVhcnMrMSwgTG9hZHMrMCwgU3RvcmVzKzApLCBzdGVuY2lsKENsZWFy
cyswLCBMb2FkKzAsIFN0b3JlcyswKQotICAgIHNldEV4cGVjdGVkQ291bnRlcnNGb3JJbnZhbGlk
YXRlVGVzdChjb3VudGVycywgMSwgMSwgMCwgMCwgMCwgMCwgMCwgJmV4cGVjdGVkKTsKKyAgICBz
ZXRFeHBlY3RlZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoZ2V0UGVyZkNvdW50ZXJzKCksIDEs
IDEsIDAsIDAsIDAsIDAsIDAsICZleHBlY3RlZCk7CiAKICAgICBBTkdMRV9HTF9QUk9HUkFNKHBy
b2dyYW0sIGVzc2wxX3NoYWRlcnM6OnZzOjpTaW1wbGUoKSwgZXNzbDFfc2hhZGVyczo6ZnM6OlJl
ZCgpKTsKICAgICBHTEZyYW1lYnVmZmVyIGZyYW1lYnVmZmVyOwpAQCAtMTA4OSwxOCArMTE2NSwx
OCBAQCBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdCwgSW52YWxpZGF0ZURyYXdE
aXNhYmxlRW5hYmxlSW52YWxpZGF0ZSkKICAgICBBU1NFUlRfR0xfTk9fRVJST1IoKTsKIAogICAg
IC8vIEVuc3VyZSB0aGF0IHRoZSByZW5kZXIgcGFzcyB3YXNuJ3QgYnJva2VuCi0gICAgRVhQRUNU
X0VRKGV4cGVjdGVkLnJlbmRlclBhc3NlcywgY291bnRlcnMucmVuZGVyUGFzc2VzKTsKKyAgICBF
WFBFQ1RfRVEoZXhwZWN0ZWQucmVuZGVyUGFzc2VzLCBnZXRQZXJmQ291bnRlcnMoKS5yZW5kZXJQ
YXNzZXMpOwogCiAgICAgLy8gVXNlIHN3YXBCdWZmZXJzIGFuZCB0aGVuIGNoZWNrIGhvdyBtYW55
IGxvYWRzIGFuZCBzdG9yZXMgd2VyZSBhY3R1YWxseSBkb25lCiAgICAgc3dhcEJ1ZmZlcnMoKTsK
LSAgICBjb21wYXJlRGVwdGhTdGVuY2lsQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChjb3VudGVy
cywgZXhwZWN0ZWQpOworICAgIGNvbXBhcmVEZXB0aFN0ZW5jaWxDb3VudGVyc0ZvckludmFsaWRh
dGVUZXN0KGdldFBlcmZDb3VudGVycygpLCBleHBlY3RlZCk7CiAKICAgICAvLyBTdGFydCBhbmQg
ZW5kIGFub3RoZXIgcmVuZGVyIHBhc3MsIHRvIGNoZWNrIHRoYXQgdGhlIGxvYWQgb3BzIGFyZSBh
cyBleHBlY3RlZAotICAgIHNldEFuZEluY3JlbWVudExvYWRDb3VudGVyc0ZvckludmFsaWRhdGVU
ZXN0KGNvdW50ZXJzLCAwLCAwLCAmZXhwZWN0ZWQpOworICAgIHNldEFuZEluY3JlbWVudExvYWRD
b3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGdldFBlcmZDb3VudGVycygpLCAwLCAwLCAmZXhwZWN0
ZWQpOwogICAgIGRyYXdRdWFkKHByb2dyYW0sIGVzc2wxX3NoYWRlcnM6OlBvc2l0aW9uQXR0cmli
KCksIDAuNWYpOwogICAgIEFTU0VSVF9HTF9OT19FUlJPUigpOwogICAgIHN3YXBCdWZmZXJzKCk7
Ci0gICAgY29tcGFyZUxvYWRDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGNvdW50ZXJzLCBleHBl
Y3RlZCk7CisgICAgY29tcGFyZUxvYWRDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGdldFBlcmZD
b3VudGVycygpLCBleHBlY3RlZCk7CiB9CiAKIC8vIFRlc3RzIHRoYXQgYW5vdGhlciBjYXNlIGRv
ZXMgbm90IGJyZWFrIHJlbmRlciBwYXNzLCBhbmQgdGhhdCBjb3VudHMgYXJlIGNvcnJlY3Q6CkBA
IC0xMTA4LDExICsxMTg0LDExIEBAIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJUZXN0
LCBJbnZhbGlkYXRlRHJhd0Rpc2FibGVFbmFibGVJbnZhbGlkYXRlKQogLy8gLSBTY2VuYXJpbzog
aW52YWxpZGF0ZSwgZHJhdywgZGlzYWJsZSwgZW5hYmxlLCBpbnZhbGlkYXRlLCBkcmF3CiBURVNU
X1AoVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdCwgSW52YWxpZGF0ZURyYXdEaXNhYmxlRW5h
YmxlSW52YWxpZGF0ZURyYXcpCiB7Ci0gICAgY29uc3Qgcng6OnZrOjpQZXJmQ291bnRlcnMgJmNv
dW50ZXJzID0gaGFja0FOR0xFKCk7Ci0gICAgcng6OnZrOjpQZXJmQ291bnRlcnMgZXhwZWN0ZWQ7
CisgICAgQU5HTEVfU0tJUF9URVNUX0lGKCFJc0dMRXh0ZW5zaW9uRW5hYmxlZChrUGVyZk1vbml0
b3JFeHRlbnNpb25OYW1lKSk7CisgICAgYW5nbGU6OlZ1bGthblBlcmZDb3VudGVycyBleHBlY3Rl
ZDsKIAogICAgIC8vIEV4cGVjdCBycENvdW50KzEsIGRlcHRoKENsZWFycysxLCBMb2FkcyswLCBT
dG9yZXMrMSksIHN0ZW5jaWwoQ2xlYXJzKzAsIExvYWQrMCwgU3RvcmVzKzApCi0gICAgc2V0RXhw
ZWN0ZWRDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGNvdW50ZXJzLCAxLCAxLCAwLCAxLCAwLCAw
LCAwLCAmZXhwZWN0ZWQpOworICAgIHNldEV4cGVjdGVkQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVz
dChnZXRQZXJmQ291bnRlcnMoKSwgMSwgMSwgMCwgMSwgMCwgMCwgMCwgJmV4cGVjdGVkKTsKIAog
ICAgIEFOR0xFX0dMX1BST0dSQU0ocHJvZ3JhbSwgZXNzbDFfc2hhZGVyczo6dnM6OlNpbXBsZSgp
LCBlc3NsMV9zaGFkZXJzOjpmczo6UmVkKCkpOwogICAgIEdMRnJhbWVidWZmZXIgZnJhbWVidWZm
ZXI7CkBAIC0xMTUxLDE4ICsxMjI3LDE4IEBAIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5jZUNvdW50
ZXJUZXN0LCBJbnZhbGlkYXRlRHJhd0Rpc2FibGVFbmFibGVJbnZhbGlkYXRlRHJhdykKICAgICBB
U1NFUlRfR0xfTk9fRVJST1IoKTsKIAogICAgIC8vIEVuc3VyZSB0aGF0IHRoZSByZW5kZXIgcGFz
cyB3YXNuJ3QgYnJva2VuCi0gICAgRVhQRUNUX0VRKGV4cGVjdGVkLnJlbmRlclBhc3NlcywgY291
bnRlcnMucmVuZGVyUGFzc2VzKTsKKyAgICBFWFBFQ1RfRVEoZXhwZWN0ZWQucmVuZGVyUGFzc2Vz
LCBnZXRQZXJmQ291bnRlcnMoKS5yZW5kZXJQYXNzZXMpOwogCiAgICAgLy8gVXNlIHN3YXBCdWZm
ZXJzIGFuZCB0aGVuIGNoZWNrIGhvdyBtYW55IGxvYWRzIGFuZCBzdG9yZXMgd2VyZSBhY3R1YWxs
eSBkb25lCiAgICAgc3dhcEJ1ZmZlcnMoKTsKLSAgICBjb21wYXJlRGVwdGhTdGVuY2lsQ291bnRl
cnNGb3JJbnZhbGlkYXRlVGVzdChjb3VudGVycywgZXhwZWN0ZWQpOworICAgIGNvbXBhcmVEZXB0
aFN0ZW5jaWxDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGdldFBlcmZDb3VudGVycygpLCBleHBl
Y3RlZCk7CiAKICAgICAvLyBTdGFydCBhbmQgZW5kIGFub3RoZXIgcmVuZGVyIHBhc3MsIHRvIGNo
ZWNrIHRoYXQgdGhlIGxvYWQgb3BzIGFyZSBhcyBleHBlY3RlZAotICAgIHNldEFuZEluY3JlbWVu
dExvYWRDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGNvdW50ZXJzLCAxLCAwLCAmZXhwZWN0ZWQp
OworICAgIHNldEFuZEluY3JlbWVudExvYWRDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGdldFBl
cmZDb3VudGVycygpLCAxLCAwLCAmZXhwZWN0ZWQpOwogICAgIGRyYXdRdWFkKHByb2dyYW0sIGVz
c2wxX3NoYWRlcnM6OlBvc2l0aW9uQXR0cmliKCksIDAuNWYpOwogICAgIEFTU0VSVF9HTF9OT19F
UlJPUigpOwogICAgIHN3YXBCdWZmZXJzKCk7Ci0gICAgY29tcGFyZUxvYWRDb3VudGVyc0Zvcklu
dmFsaWRhdGVUZXN0KGNvdW50ZXJzLCBleHBlY3RlZCk7CisgICAgY29tcGFyZUxvYWRDb3VudGVy
c0ZvckludmFsaWRhdGVUZXN0KGdldFBlcmZDb3VudGVycygpLCBleHBlY3RlZCk7CiB9CiAKIC8v
IFRlc3RzIHRoYXQgYW5vdGhlciBjb21tb24gKGRFUVApIGNhc2UgZG9lcyBub3QgYnJlYWsgcmVu
ZGVyIHBhc3MsIGFuZCB0aGF0IGNvdW50cyBhcmUgY29ycmVjdDoKQEAgLTExNzAsMTEgKzEyNDYs
MTEgQEAgVEVTVF9QKFZ1bGthblBlcmZvcm1hbmNlQ291bnRlclRlc3QsIEludmFsaWRhdGVEcmF3
RGlzYWJsZUVuYWJsZUludmFsaWRhdGVEcmF3KQogLy8gLSBTY2VuYXJpbzogaW52YWxpZGF0ZSwg
ZGlzYWJsZSwgZW5hYmxlLCBkcmF3CiBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVz
dCwgSW52YWxpZGF0ZURpc2FibGVFbmFibGVEcmF3KQogewotICAgIGNvbnN0IHJ4Ojp2azo6UGVy
ZkNvdW50ZXJzICZjb3VudGVycyA9IGhhY2tBTkdMRSgpOwotICAgIHJ4Ojp2azo6UGVyZkNvdW50
ZXJzIGV4cGVjdGVkOworICAgIEFOR0xFX1NLSVBfVEVTVF9JRighSXNHTEV4dGVuc2lvbkVuYWJs
ZWQoa1BlcmZNb25pdG9yRXh0ZW5zaW9uTmFtZSkpOworICAgIGFuZ2xlOjpWdWxrYW5QZXJmQ291
bnRlcnMgZXhwZWN0ZWQ7CiAKICAgICAvLyBFeHBlY3QgcnBDb3VudCsxLCBkZXB0aChDbGVhcnMr
MSwgTG9hZHMrMCwgU3RvcmVzKzEpLCBzdGVuY2lsKENsZWFycyswLCBMb2FkKzAsIFN0b3Jlcysw
KQotICAgIHNldEV4cGVjdGVkQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChjb3VudGVycywgMSwg
MSwgMCwgMSwgMCwgMCwgMCwgJmV4cGVjdGVkKTsKKyAgICBzZXRFeHBlY3RlZENvdW50ZXJzRm9y
SW52YWxpZGF0ZVRlc3QoZ2V0UGVyZkNvdW50ZXJzKCksIDEsIDEsIDAsIDEsIDAsIDAsIDAsICZl
eHBlY3RlZCk7CiAKICAgICBBTkdMRV9HTF9QUk9HUkFNKHByb2dyYW0sIGVzc2wxX3NoYWRlcnM6
OnZzOjpTaW1wbGUoKSwgZXNzbDFfc2hhZGVyczo6ZnM6OlJlZCgpKTsKICAgICBHTEZyYW1lYnVm
ZmVyIGZyYW1lYnVmZmVyOwpAQCAtMTIwNSwyOCArMTI4MSwyOCBAQCBURVNUX1AoVnVsa2FuUGVy
Zm9ybWFuY2VDb3VudGVyVGVzdCwgSW52YWxpZGF0ZURpc2FibGVFbmFibGVEcmF3KQogICAgIEFT
U0VSVF9HTF9OT19FUlJPUigpOwogCiAgICAgLy8gRW5zdXJlIHRoYXQgdGhlIHJlbmRlciBwYXNz
IHdhc24ndCBicm9rZW4KLSAgICBFWFBFQ1RfRVEoZXhwZWN0ZWQucmVuZGVyUGFzc2VzLCBjb3Vu
dGVycy5yZW5kZXJQYXNzZXMpOworICAgIEVYUEVDVF9FUShleHBlY3RlZC5yZW5kZXJQYXNzZXMs
IGdldFBlcmZDb3VudGVycygpLnJlbmRlclBhc3Nlcyk7CiAKICAgICAvLyBVc2Ugc3dhcEJ1ZmZl
cnMgYW5kIHRoZW4gY2hlY2sgaG93IG1hbnkgbG9hZHMgYW5kIHN0b3JlcyB3ZXJlIGFjdHVhbGx5
IGRvbmUKICAgICBzd2FwQnVmZmVycygpOwotICAgIGNvbXBhcmVEZXB0aFN0ZW5jaWxDb3VudGVy
c0ZvckludmFsaWRhdGVUZXN0KGNvdW50ZXJzLCBleHBlY3RlZCk7CisgICAgY29tcGFyZURlcHRo
U3RlbmNpbENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoZ2V0UGVyZkNvdW50ZXJzKCksIGV4cGVj
dGVkKTsKIAogICAgIC8vIFN0YXJ0IGFuZCBlbmQgYW5vdGhlciByZW5kZXIgcGFzcywgdG8gY2hl
Y2sgdGhhdCB0aGUgbG9hZCBvcHMgYXJlIGFzIGV4cGVjdGVkCi0gICAgc2V0QW5kSW5jcmVtZW50
TG9hZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoY291bnRlcnMsIDEsIDEsICZleHBlY3RlZCk7
CisgICAgc2V0QW5kSW5jcmVtZW50TG9hZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoZ2V0UGVy
ZkNvdW50ZXJzKCksIDEsIDEsICZleHBlY3RlZCk7CiAgICAgZHJhd1F1YWQocHJvZ3JhbSwgZXNz
bDFfc2hhZGVyczo6UG9zaXRpb25BdHRyaWIoKSwgMC41Zik7CiAgICAgQVNTRVJUX0dMX05PX0VS
Uk9SKCk7CiAgICAgc3dhcEJ1ZmZlcnMoKTsKLSAgICBjb21wYXJlTG9hZENvdW50ZXJzRm9ySW52
YWxpZGF0ZVRlc3QoY291bnRlcnMsIGV4cGVjdGVkKTsKKyAgICBjb21wYXJlTG9hZENvdW50ZXJz
Rm9ySW52YWxpZGF0ZVRlc3QoZ2V0UGVyZkNvdW50ZXJzKCksIGV4cGVjdGVkKTsKIH0KIAogLy8g
VGVzdHMgdGhhdCBhbiBpbiByZW5kZXJwYXNzIGNsZWFyIGFmdGVyIGludmFsaWRhdGUga2VlcHMg
Y29udGVudCBzdG9yZWQuCiBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdCwgSW52
YWxpZGF0ZUFuZENsZWFyKQogewotICAgIGNvbnN0IHJ4Ojp2azo6UGVyZkNvdW50ZXJzICZjb3Vu
dGVycyA9IGhhY2tBTkdMRSgpOwotICAgIHJ4Ojp2azo6UGVyZkNvdW50ZXJzIGV4cGVjdGVkOwor
ICAgIEFOR0xFX1NLSVBfVEVTVF9JRighSXNHTEV4dGVuc2lvbkVuYWJsZWQoa1BlcmZNb25pdG9y
RXh0ZW5zaW9uTmFtZSkpOworICAgIGFuZ2xlOjpWdWxrYW5QZXJmQ291bnRlcnMgZXhwZWN0ZWQ7
CiAKICAgICAvLyBFeHBlY3QgcnBDb3VudCsxLCBkZXB0aChDbGVhcnMrMSwgTG9hZHMrMCwgU3Rv
cmVzKzEpLCBzdGVuY2lsKENsZWFycyswLCBMb2FkKzAsIFN0b3JlcyswKQotICAgIHNldEV4cGVj
dGVkQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChjb3VudGVycywgMSwgMSwgMCwgMSwgMCwgMCwg
MCwgJmV4cGVjdGVkKTsKKyAgICBzZXRFeHBlY3RlZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3Qo
Z2V0UGVyZkNvdW50ZXJzKCksIDEsIDEsIDAsIDEsIDAsIDAsIDAsICZleHBlY3RlZCk7CiAKICAg
ICBBTkdMRV9HTF9QUk9HUkFNKHByb2dyYW0sIGVzc2wxX3NoYWRlcnM6OnZzOjpTaW1wbGUoKSwg
ZXNzbDFfc2hhZGVyczo6ZnM6OlJlZCgpKTsKICAgICBHTEZyYW1lYnVmZmVyIGZyYW1lYnVmZmVy
OwpAQCAtMTI1MCwxMCArMTMyNiwxMCBAQCBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVy
VGVzdCwgSW52YWxpZGF0ZUFuZENsZWFyKQogCiAgICAgLy8gVXNlIHN3YXBCdWZmZXJzIGFuZCB0
aGVuIGNoZWNrIGhvdyBtYW55IGxvYWRzIGFuZCBzdG9yZXMgd2VyZSBhY3R1YWxseSBkb25lCiAg
ICAgc3dhcEJ1ZmZlcnMoKTsKLSAgICBjb21wYXJlRGVwdGhTdGVuY2lsQ291bnRlcnNGb3JJbnZh
bGlkYXRlVGVzdChjb3VudGVycywgZXhwZWN0ZWQpOworICAgIGNvbXBhcmVEZXB0aFN0ZW5jaWxD
b3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGdldFBlcmZDb3VudGVycygpLCBleHBlY3RlZCk7CiAK
ICAgICAvLyBFeHBlY3QgcnBDb3VudCsxLCBkZXB0aChDbGVhcnMrMCwgTG9hZHMrMSwgU3RvcmVz
KzEpLCBzdGVuY2lsKENsZWFycyswLCBMb2FkKzAsIFN0b3JlcyswKQotICAgIHNldEV4cGVjdGVk
Q291bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChjb3VudGVycywgMCwgMCwgMSwgMSwgMCwgMCwgMCwg
JmV4cGVjdGVkKTsKKyAgICBzZXRFeHBlY3RlZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoZ2V0
UGVyZkNvdW50ZXJzKCksIDAsIDAsIDEsIDEsIDAsIDAsIDAsICZleHBlY3RlZCk7CiAKICAgICAv
LyBCaW5kIEZCTyBhZ2FpbiBhbmQgdHJ5IHRvIHVzZSB0aGUgZGVwdGggYnVmZmVyIHdpdGhvdXQg
Y2xlYXIuIFRoaXMgc2hvdWxkIHJlc3VsdCBpbgogICAgIC8vIGxvYWRPcD1MT0FEIGFuZCBTdG9y
ZU9QPVNUT1JFCkBAIC0xMjY1LDE4ICsxMzQxLDE4IEBAIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5j
ZUNvdW50ZXJUZXN0LCBJbnZhbGlkYXRlQW5kQ2xlYXIpCiAgICAgLy8gU2hvdWxkIHBhc3MgZGVw
dGggdGVzdDogKDAuNSsxLjApLzIuMD0wLjc1IDwgMS4wCiAgICAgZHJhd1F1YWQoYmx1ZVByb2dy
YW0sIGVzc2wxX3NoYWRlcnM6OlBvc2l0aW9uQXR0cmliKCksIDAuNWYpOwogICAgIEVYUEVDVF9Q
SVhFTF9DT0xPUl9FUShrSW52YWxpZGF0ZVRlc3RTaXplIC8gMiwga0ludmFsaWRhdGVUZXN0U2l6
ZSAvIDIsIEdMQ29sb3I6OmJsdWUpOwotICAgIGNvbXBhcmVEZXB0aFN0ZW5jaWxDb3VudGVyc0Zv
ckludmFsaWRhdGVUZXN0KGNvdW50ZXJzLCBleHBlY3RlZCk7CisgICAgY29tcGFyZURlcHRoU3Rl
bmNpbENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoZ2V0UGVyZkNvdW50ZXJzKCksIGV4cGVjdGVk
KTsKIH0KIAogLy8gVGVzdHMgdGhhdCB0aGUgZHJhdyBwYXRoIGZvciBjbGVhciBhZnRlciBpbnZh
bGlkYXRlIGFuZCBkaXNhYmxpbmcgZGVwdGgvc3RlbmNpbCB0ZXN0IGtlZXBzCiAvLyBjb250ZW50
IHN0b3JlZC4KIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJUZXN0LCBJbnZhbGlkYXRl
QW5kTWFza2VkQ2xlYXIpCiB7Ci0gICAgY29uc3Qgcng6OnZrOjpQZXJmQ291bnRlcnMgJmNvdW50
ZXJzID0gaGFja0FOR0xFKCk7Ci0gICAgcng6OnZrOjpQZXJmQ291bnRlcnMgZXhwZWN0ZWQ7Cisg
ICAgQU5HTEVfU0tJUF9URVNUX0lGKCFJc0dMRXh0ZW5zaW9uRW5hYmxlZChrUGVyZk1vbml0b3JF
eHRlbnNpb25OYW1lKSk7CisgICAgYW5nbGU6OlZ1bGthblBlcmZDb3VudGVycyBleHBlY3RlZDsK
IAogICAgIC8vIEV4cGVjdCBycENvdW50KzEsIGRlcHRoKENsZWFycysxLCBMb2FkcyswLCBTdG9y
ZXMrMSksIHN0ZW5jaWwoQ2xlYXJzKzEsIExvYWQrMCwgU3RvcmVzKzEpCi0gICAgc2V0RXhwZWN0
ZWRDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGNvdW50ZXJzLCAxLCAxLCAwLCAxLCAxLCAwLCAx
LCAmZXhwZWN0ZWQpOworICAgIHNldEV4cGVjdGVkQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChn
ZXRQZXJmQ291bnRlcnMoKSwgMSwgMSwgMCwgMSwgMSwgMCwgMSwgJmV4cGVjdGVkKTsKIAogICAg
IEFOR0xFX0dMX1BST0dSQU0ocHJvZ3JhbSwgZXNzbDFfc2hhZGVyczo6dnM6OlNpbXBsZSgpLCBl
c3NsMV9zaGFkZXJzOjpmczo6UmVkKCkpOwogICAgIEdMRnJhbWVidWZmZXIgZnJhbWVidWZmZXI7
CkBAIC0xMzA4LDEwICsxMzg0LDEwIEBAIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJU
ZXN0LCBJbnZhbGlkYXRlQW5kTWFza2VkQ2xlYXIpCiAKICAgICAvLyBVc2Ugc3dhcEJ1ZmZlcnMg
YW5kIHRoZW4gY2hlY2sgaG93IG1hbnkgbG9hZHMgYW5kIHN0b3JlcyB3ZXJlIGFjdHVhbGx5IGRv
bmUKICAgICBzd2FwQnVmZmVycygpOwotICAgIGNvbXBhcmVEZXB0aFN0ZW5jaWxDb3VudGVyc0Zv
ckludmFsaWRhdGVUZXN0KGNvdW50ZXJzLCBleHBlY3RlZCk7CisgICAgY29tcGFyZURlcHRoU3Rl
bmNpbENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoZ2V0UGVyZkNvdW50ZXJzKCksIGV4cGVjdGVk
KTsKIAogICAgIC8vIEV4cGVjdCBycENvdW50KzEsIGRlcHRoKENsZWFycyswLCBMb2FkcysxLCBT
dG9yZXMrMSksIHN0ZW5jaWwoQ2xlYXJzKzAsIExvYWQrMSwgU3RvcmVzKzEpCi0gICAgc2V0RXhw
ZWN0ZWRDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGNvdW50ZXJzLCAwLCAwLCAxLCAxLCAwLCAx
LCAxLCAmZXhwZWN0ZWQpOworICAgIHNldEV4cGVjdGVkQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVz
dChnZXRQZXJmQ291bnRlcnMoKSwgMCwgMCwgMSwgMSwgMCwgMSwgMSwgJmV4cGVjdGVkKTsKIAog
ICAgIC8vIEJpbmQgRkJPIGFnYWluIGFuZCB0cnkgdG8gdXNlIHRoZSBkZXB0aCBidWZmZXIgd2l0
aG91dCBjbGVhci4gVGhpcyBzaG91bGQgcmVzdWx0IGluCiAgICAgLy8gbG9hZE9wPUxPQUQgYW5k
IFN0b3JlT1A9U1RPUkUKQEAgLTEzMjUsNyArMTQwMSw3IEBAIFRFU1RfUChWdWxrYW5QZXJmb3Jt
YW5jZUNvdW50ZXJUZXN0LCBJbnZhbGlkYXRlQW5kTWFza2VkQ2xlYXIpCiAgICAgQU5HTEVfR0xf
UFJPR1JBTShibHVlUHJvZ3JhbSwgZXNzbDFfc2hhZGVyczo6dnM6OlNpbXBsZSgpLCBlc3NsMV9z
aGFkZXJzOjpmczo6Qmx1ZSgpKTsKICAgICBkcmF3UXVhZChibHVlUHJvZ3JhbSwgZXNzbDFfc2hh
ZGVyczo6UG9zaXRpb25BdHRyaWIoKSwgMC45NWYpOwogICAgIEVYUEVDVF9QSVhFTF9DT0xPUl9F
UShrSW52YWxpZGF0ZVRlc3RTaXplIC8gMiwga0ludmFsaWRhdGVUZXN0U2l6ZSAvIDIsIEdMQ29s
b3I6OmJsdWUpOwotICAgIGNvbXBhcmVEZXB0aFN0ZW5jaWxDb3VudGVyc0ZvckludmFsaWRhdGVU
ZXN0KGNvdW50ZXJzLCBleHBlY3RlZCk7CisgICAgY29tcGFyZURlcHRoU3RlbmNpbENvdW50ZXJz
Rm9ySW52YWxpZGF0ZVRlc3QoZ2V0UGVyZkNvdW50ZXJzKCksIGV4cGVjdGVkKTsKIH0KIAogLy8g
VGVzdHMgd2hldGhlciBkZXB0aC1zdGVuY2lsIENvbnRlbnREZWZpbmVkIHdpbGwgYmUgY29ycmVj
dCB3aGVuOgpAQCAtMTMzMywxMSArMTQwOSwxMSBAQCBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VD
b3VudGVyVGVzdCwgSW52YWxpZGF0ZUFuZE1hc2tlZENsZWFyKQogLy8gLSBTY2VuYXJpbzogaW52
YWxpZGF0ZSwgZGV0YWNoIEQvUyB0ZXh0dXJlIGFuZCBtb2RpZnkgaXQsIGF0dGFjaCBEL1MgdGV4
dHVyZSwgZHJhdyB3aXRoIGJsZW5kCiBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVz
dCwgSW52YWxpZGF0ZURldGFjaE1vZGlmeVRleEF0dGFjaERyYXdXaXRoQmxlbmQpCiB7Ci0gICAg
Y29uc3Qgcng6OnZrOjpQZXJmQ291bnRlcnMgJmNvdW50ZXJzID0gaGFja0FOR0xFKCk7Ci0gICAg
cng6OnZrOjpQZXJmQ291bnRlcnMgZXhwZWN0ZWQ7CisgICAgQU5HTEVfU0tJUF9URVNUX0lGKCFJ
c0dMRXh0ZW5zaW9uRW5hYmxlZChrUGVyZk1vbml0b3JFeHRlbnNpb25OYW1lKSk7CisgICAgYW5n
bGU6OlZ1bGthblBlcmZDb3VudGVycyBleHBlY3RlZDsKIAogICAgIC8vIEV4cGVjdCBycENvdW50
KzEsIGRlcHRoKENsZWFycysxLCBMb2FkcyswLCBTdG9yZXMrMSksIHN0ZW5jaWwoQ2xlYXJzKzAs
IExvYWQrMCwgU3RvcmVzKzEpCi0gICAgc2V0RXhwZWN0ZWRDb3VudGVyc0ZvckludmFsaWRhdGVU
ZXN0KGNvdW50ZXJzLCAxLCAxLCAwLCAwLCAwLCAwLCAwLCAmZXhwZWN0ZWQpOworICAgIHNldEV4
cGVjdGVkQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChnZXRQZXJmQ291bnRlcnMoKSwgMSwgMSwg
MCwgMCwgMCwgMCwgMCwgJmV4cGVjdGVkKTsKIAogICAgIEFOR0xFX0dMX1BST0dSQU0ocmVkUHJv
Z3JhbSwgZXNzbDFfc2hhZGVyczo6dnM6OlNpbXBsZSgpLCBlc3NsMV9zaGFkZXJzOjpmczo6UmVk
KCkpOwogICAgIEFOR0xFX0dMX1BST0dSQU0oZ3JlZW5Qcm9ncmFtLCBlc3NsMV9zaGFkZXJzOjp2
czo6U2ltcGxlKCksIGVzc2wxX3NoYWRlcnM6OmZzOjpHcmVlbigpKTsKQEAgLTEzNzMsOSArMTQ0
OSw5IEBAIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJUZXN0LCBJbnZhbGlkYXRlRGV0
YWNoTW9kaWZ5VGV4QXR0YWNoRHJhd1dpdGhCbGVuCiAgICAgQVNTRVJUX0dMX05PX0VSUk9SKCk7
CiAKICAgICAvLyBDaGVjayBmb3IgdGhlIGV4cGVjdGVkIG51bWJlciBvZiByZW5kZXIgcGFzc2Vz
LCBleHBlY3RlZCBjb2xvciwgYW5kIG90aGVyIGV4cGVjdGVkIGNvdW50ZXJzCi0gICAgRVhQRUNU
X0VRKGV4cGVjdGVkLnJlbmRlclBhc3NlcywgY291bnRlcnMucmVuZGVyUGFzc2VzKTsKKyAgICBF
WFBFQ1RfRVEoZXhwZWN0ZWQucmVuZGVyUGFzc2VzLCBnZXRQZXJmQ291bnRlcnMoKS5yZW5kZXJQ
YXNzZXMpOwogICAgIEVYUEVDVF9QSVhFTF9DT0xPUl9FUSgwLCAwLCBHTENvbG9yOjpyZWQpOwot
ICAgIGNvbXBhcmVEZXB0aFN0ZW5jaWxDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGNvdW50ZXJz
LCBleHBlY3RlZCk7CisgICAgY29tcGFyZURlcHRoU3RlbmNpbENvdW50ZXJzRm9ySW52YWxpZGF0
ZVRlc3QoZ2V0UGVyZkNvdW50ZXJzKCksIGV4cGVjdGVkKTsKIAogICAgIC8vIERldGFjaCBkZXB0
aC1zdGVuY2lsIGF0dGFjaG1lbnQKICAgICBnbEZyYW1lYnVmZmVyVGV4dHVyZTJEKEdMX0ZSQU1F
QlVGRkVSLCBHTF9ERVBUSF9TVEVOQ0lMX0FUVEFDSE1FTlQsIEdMX1RFWFRVUkVfMkQsIDAsIDAp
OwpAQCAtMTM5NywyNCArMTQ3MywyNCBAQCBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVy
VGVzdCwgSW52YWxpZGF0ZURldGFjaE1vZGlmeVRleEF0dGFjaERyYXdXaXRoQmxlbgogICAgIC8v
IERyYXcgYWdhaW4sIHNob3dpbmcgdGhhdCB0aGUgbW9kaWZpZWQgZGVwdGgtc3RlbmNpbCB2YWx1
ZSBwcmV2ZW50cyBhIG5ldyBjb2xvciB2YWx1ZQogICAgIC8vCiAgICAgLy8gRXhwZWN0IHJwQ291
bnQrMSwgZGVwdGgoQ2xlYXJzKzAsIExvYWRzKzEsIFN0b3JlcysxKSwgc3RlbmNpbChDbGVhcnMr
MCwgTG9hZCsxLCBTdG9yZXMrMSkKLSAgICBzZXRFeHBlY3RlZENvdW50ZXJzRm9ySW52YWxpZGF0
ZVRlc3QoY291bnRlcnMsIDEsIDAsIDEsIDEsIDAsIDEsIDEsICZleHBlY3RlZCk7CisgICAgc2V0
RXhwZWN0ZWRDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGdldFBlcmZDb3VudGVycygpLCAxLCAw
LCAxLCAxLCAwLCAxLCAxLCAmZXhwZWN0ZWQpOwogICAgIGRyYXdRdWFkKGdyZWVuUHJvZ3JhbSwg
ZXNzbDFfc2hhZGVyczo6UG9zaXRpb25BdHRyaWIoKSwgMC41Zik7CiAgICAgQVNTRVJUX0dMX05P
X0VSUk9SKCk7CiAgICAgLy8gQ2hlY2sgZm9yIHRoZSBleHBlY3RlZCBudW1iZXIgb2YgcmVuZGVy
IHBhc3NlcywgZXhwZWN0ZWQgY29sb3IsIGFuZCBvdGhlciBleHBlY3RlZCBjb3VudGVycwotICAg
IEVYUEVDVF9FUShleHBlY3RlZC5yZW5kZXJQYXNzZXMsIGNvdW50ZXJzLnJlbmRlclBhc3Nlcyk7
CisgICAgRVhQRUNUX0VRKGV4cGVjdGVkLnJlbmRlclBhc3NlcywgZ2V0UGVyZkNvdW50ZXJzKCku
cmVuZGVyUGFzc2VzKTsKICAgICBFWFBFQ1RfUElYRUxfQ09MT1JfRVEoMCwgMCwgR0xDb2xvcjo6
cmVkKTsKLSAgICBjb21wYXJlRGVwdGhTdGVuY2lsQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChj
b3VudGVycywgZXhwZWN0ZWQpOworICAgIGNvbXBhcmVEZXB0aFN0ZW5jaWxDb3VudGVyc0Zvcklu
dmFsaWRhdGVUZXN0KGdldFBlcmZDb3VudGVycygpLCBleHBlY3RlZCk7CiAKICAgICAvLyBEcmF3
IGFnYWluLCB1c2luZyBhIGRpZmZlcmVudCBkZXB0aCB2YWx1ZSwgc28gdGhhdCB0aGUgZHJhd2lu
ZyB0YWtlcyBwbGFjZQogICAgIC8vCiAgICAgLy8gRXhwZWN0IHJwQ291bnQrMSwgZGVwdGgoQ2xl
YXJzKzAsIExvYWRzKzEsIFN0b3JlcysxKSwgc3RlbmNpbChDbGVhcnMrMCwgTG9hZCsxLCBTdG9y
ZXMrMSkKLSAgICBzZXRFeHBlY3RlZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoY291bnRlcnMs
IDEsIDAsIDEsIDEsIDAsIDEsIDEsICZleHBlY3RlZCk7CisgICAgc2V0RXhwZWN0ZWRDb3VudGVy
c0ZvckludmFsaWRhdGVUZXN0KGdldFBlcmZDb3VudGVycygpLCAxLCAwLCAxLCAxLCAwLCAxLCAx
LCAmZXhwZWN0ZWQpOwogICAgIGRyYXdRdWFkKGdyZWVuUHJvZ3JhbSwgZXNzbDFfc2hhZGVyczo6
UG9zaXRpb25BdHRyaWIoKSwgMC4yZik7CiAgICAgQVNTRVJUX0dMX05PX0VSUk9SKCk7CiAgICAg
Ly8gQ2hlY2sgZm9yIHRoZSBleHBlY3RlZCBudW1iZXIgb2YgcmVuZGVyIHBhc3NlcywgZXhwZWN0
ZWQgY29sb3IsIGFuZCBvdGhlciBleHBlY3RlZCBjb3VudGVycwotICAgIEVYUEVDVF9FUShleHBl
Y3RlZC5yZW5kZXJQYXNzZXMsIGNvdW50ZXJzLnJlbmRlclBhc3Nlcyk7CisgICAgRVhQRUNUX0VR
KGV4cGVjdGVkLnJlbmRlclBhc3NlcywgZ2V0UGVyZkNvdW50ZXJzKCkucmVuZGVyUGFzc2VzKTsK
ICAgICBFWFBFQ1RfUElYRUxfQ09MT1JfRVEoMCwgMCwgR0xDb2xvcjo6Z3JlZW4pOwotICAgIGNv
bXBhcmVEZXB0aFN0ZW5jaWxDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGNvdW50ZXJzLCBleHBl
Y3RlZCk7CisgICAgY29tcGFyZURlcHRoU3RlbmNpbENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3Qo
Z2V0UGVyZkNvdW50ZXJzKCksIGV4cGVjdGVkKTsKIH0KIAogLy8gVGVzdHMgdGhhdCBhIEdMUmVu
ZGVyYnVmZmVyIGNhbiBiZSBkZWxldGVkIGJlZm9yZSB0aGUgcmVuZGVyIHBhc3MgZW5kcywgYW5k
IHRoYXQgZXZlcnl0aGluZwpAQCAtMTQyMywxMSArMTQ5OSwxMSBAQCBURVNUX1AoVnVsa2FuUGVy
Zm9ybWFuY2VDb3VudGVyVGVzdCwgSW52YWxpZGF0ZURldGFjaE1vZGlmeVRleEF0dGFjaERyYXdX
aXRoQmxlbgogLy8gLSBTY2VuYXJpbzogaW52YWxpZGF0ZQogVEVTVF9QKFZ1bGthblBlcmZvcm1h
bmNlQ291bnRlclRlc3QsIEludmFsaWRhdGVEcmF3QW5kRGVsZXRlUmVuZGVyYnVmZmVyKQogewot
ICAgIGNvbnN0IHJ4Ojp2azo6UGVyZkNvdW50ZXJzICZjb3VudGVycyA9IGhhY2tBTkdMRSgpOwot
ICAgIHJ4Ojp2azo6UGVyZkNvdW50ZXJzIGV4cGVjdGVkOworICAgIEFOR0xFX1NLSVBfVEVTVF9J
RighSXNHTEV4dGVuc2lvbkVuYWJsZWQoa1BlcmZNb25pdG9yRXh0ZW5zaW9uTmFtZSkpOworICAg
IGFuZ2xlOjpWdWxrYW5QZXJmQ291bnRlcnMgZXhwZWN0ZWQ7CiAKICAgICAvLyBFeHBlY3QgcnBD
b3VudCsxLCBkZXB0aChDbGVhcnMrMSwgTG9hZHMrMCwgU3RvcmVzKzEpLCBzdGVuY2lsKENsZWFy
cyswLCBMb2FkKzAsIFN0b3JlcyswKQotICAgIHNldEV4cGVjdGVkQ291bnRlcnNGb3JJbnZhbGlk
YXRlVGVzdChjb3VudGVycywgMSwgMSwgMCwgMSwgMCwgMCwgMCwgJmV4cGVjdGVkKTsKKyAgICBz
ZXRFeHBlY3RlZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoZ2V0UGVyZkNvdW50ZXJzKCksIDEs
IDEsIDAsIDEsIDAsIDAsIDAsICZleHBlY3RlZCk7CiAKICAgICBBTkdMRV9HTF9QUk9HUkFNKHBy
b2dyYW0sIGVzc2wxX3NoYWRlcnM6OnZzOjpTaW1wbGUoKSwgZXNzbDFfc2hhZGVyczo6ZnM6OlJl
ZCgpKTsKICAgICBHTEZyYW1lYnVmZmVyIGZyYW1lYnVmZmVyOwpAQCAtMTQ0OCwyNyArMTUyNCwy
NyBAQCBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdCwgSW52YWxpZGF0ZURyYXdB
bmREZWxldGVSZW5kZXJidWZmZXIpCiAgICAgICAgIEFTU0VSVF9HTF9OT19FUlJPUigpOwogCiAg
ICAgICAgIC8vIEVuc3VyZSB0aGF0IHRoZSByZW5kZXIgcGFzcyB3YXNuJ3QgYnJva2VuCi0gICAg
ICAgIEVYUEVDVF9FUShleHBlY3RlZC5yZW5kZXJQYXNzZXMsIGNvdW50ZXJzLnJlbmRlclBhc3Nl
cyk7CisgICAgICAgIEVYUEVDVF9FUShleHBlY3RlZC5yZW5kZXJQYXNzZXMsIGdldFBlcmZDb3Vu
dGVycygpLnJlbmRlclBhc3Nlcyk7CiAgICAgfQogCiAgICAgLy8gVGhlIHJlbmRlcmJ1ZmZlciBz
aG91bGQgbm93IGJlIGRlbGV0ZWQuCiAKICAgICAvLyBVc2Ugc3dhcEJ1ZmZlcnMgYW5kIHRoZW4g
Y2hlY2sgaG93IG1hbnkgbG9hZHMgYW5kIHN0b3JlcyB3ZXJlIGFjdHVhbGx5IGRvbmUKICAgICBz
d2FwQnVmZmVycygpOwotICAgIGNvbXBhcmVEZXB0aFN0ZW5jaWxDb3VudGVyc0ZvckludmFsaWRh
dGVUZXN0KGNvdW50ZXJzLCBleHBlY3RlZCk7CisgICAgY29tcGFyZURlcHRoU3RlbmNpbENvdW50
ZXJzRm9ySW52YWxpZGF0ZVRlc3QoZ2V0UGVyZkNvdW50ZXJzKCksIGV4cGVjdGVkKTsKIAogICAg
IC8vIFN0YXJ0IGFuZCBlbmQgYW5vdGhlciByZW5kZXIgcGFzcywgdG8gY2hlY2sgdGhhdCB0aGUg
bG9hZCBvcHMgYXJlIGFzIGV4cGVjdGVkCi0gICAgc2V0QW5kSW5jcmVtZW50TG9hZENvdW50ZXJz
Rm9ySW52YWxpZGF0ZVRlc3QoY291bnRlcnMsIDAsIDAsICZleHBlY3RlZCk7CisgICAgc2V0QW5k
SW5jcmVtZW50TG9hZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoZ2V0UGVyZkNvdW50ZXJzKCks
IDAsIDAsICZleHBlY3RlZCk7CiAgICAgZHJhd1F1YWQocHJvZ3JhbSwgZXNzbDFfc2hhZGVyczo6
UG9zaXRpb25BdHRyaWIoKSwgMC41Zik7CiAgICAgQVNTRVJUX0dMX05PX0VSUk9SKCk7CiAgICAg
c3dhcEJ1ZmZlcnMoKTsKLSAgICBjb21wYXJlTG9hZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3Qo
Y291bnRlcnMsIGV4cGVjdGVkKTsKKyAgICBjb21wYXJlTG9hZENvdW50ZXJzRm9ySW52YWxpZGF0
ZVRlc3QoZ2V0UGVyZkNvdW50ZXJzKCksIGV4cGVjdGVkKTsKIH0KIAogLy8gVGVzdHMgdGhhdCBl
dmVuIGlmIHRoZSBhcHAgY2xlYXJzIGRlcHRoLCBpdCBzaG91bGQgYmUgaW52YWxpZGF0ZWQgaWYg
dGhlcmUgaXMgbm8gcmVhZC4KIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJUZXN0LCBT
d2FwU2hvdWxkSW52YWxpZGF0ZURlcHRoQWZ0ZXJDbGVhcikKIHsKLSAgICBjb25zdCByeDo6dms6
OlBlcmZDb3VudGVycyAmY291bnRlcnMgPSBoYWNrQU5HTEUoKTsKKyAgICBBTkdMRV9TS0lQX1RF
U1RfSUYoIUlzR0xFeHRlbnNpb25FbmFibGVkKGtQZXJmTW9uaXRvckV4dGVuc2lvbk5hbWUpKTsK
IAogICAgIEFOR0xFX0dMX1BST0dSQU0ocmVkUHJvZ3JhbSwgZXNzbDFfc2hhZGVyczo6dnM6OlNp
bXBsZSgpLCBlc3NsMV9zaGFkZXJzOjpmczo6UmVkKCkpOwogCkBAIC0xNDgyLDE4ICsxNTU4LDE4
IEBAIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJUZXN0LCBTd2FwU2hvdWxkSW52YWxp
ZGF0ZURlcHRoQWZ0ZXJDbGVhcikKICAgICBkcmF3UXVhZChyZWRQcm9ncmFtLCBlc3NsMV9zaGFk
ZXJzOjpQb3NpdGlvbkF0dHJpYigpLCAwLjVmKTsKICAgICBBU1NFUlRfR0xfTk9fRVJST1IoKTsK
IAotICAgIHVpbnQzMl90IGV4cGVjdGVkRGVwdGhDbGVhcnMgPSBjb3VudGVycy5kZXB0aENsZWFy
czsKKyAgICB1aW50MzJfdCBleHBlY3RlZERlcHRoQ2xlYXJzID0gZ2V0UGVyZkNvdW50ZXJzKCku
ZGVwdGhDbGVhcnM7CiAKICAgICBzd2FwQnVmZmVycygpOwogCi0gICAgdWludDMyX3QgYWN0dWFs
RGVwdGhDbGVhcnMgPSBjb3VudGVycy5kZXB0aENsZWFyczsKKyAgICB1aW50MzJfdCBhY3R1YWxE
ZXB0aENsZWFycyA9IGdldFBlcmZDb3VudGVycygpLmRlcHRoQ2xlYXJzOwogICAgIEVYUEVDVF9F
UShleHBlY3RlZERlcHRoQ2xlYXJzLCBhY3R1YWxEZXB0aENsZWFycyk7CiB9CiAKIC8vIFRlc3Rz
IHRoYXQgbWFza2VkIGNvbG9yIGNsZWFycyBkb24ndCBicmVhayB0aGUgUlAuCiBURVNUX1AoVnVs
a2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdCwgTWFza2VkQ29sb3JDbGVhckRvZXNOb3RCcmVha1Jl
bmRlclBhc3MpCiB7Ci0gICAgY29uc3Qgcng6OnZrOjpQZXJmQ291bnRlcnMgJmNvdW50ZXJzID0g
aGFja0FOR0xFKCk7CisgICAgQU5HTEVfU0tJUF9URVNUX0lGKCFJc0dMRXh0ZW5zaW9uRW5hYmxl
ZChrUGVyZk1vbml0b3JFeHRlbnNpb25OYW1lKSk7CiAKICAgICBHTFRleHR1cmUgdGV4dHVyZTsK
ICAgICBnbEJpbmRUZXh0dXJlKEdMX1RFWFRVUkVfMkQsIHRleHR1cmUpOwpAQCAtMTUwNSw3ICsx
NTgxLDcgQEAgVEVTVF9QKFZ1bGthblBlcmZvcm1hbmNlQ291bnRlclRlc3QsIE1hc2tlZENvbG9y
Q2xlYXJEb2VzTm90QnJlYWtSZW5kZXJQYXNzKQogICAgIEFTU0VSVF9HTF9GUkFNRUJVRkZFUl9D
T01QTEVURShHTF9GUkFNRUJVRkZFUik7CiAgICAgQVNTRVJUX0dMX05PX0VSUk9SKCk7CiAKLSAg
ICB1aW50MzJfdCBleHBlY3RlZFJlbmRlclBhc3NDb3VudCA9IGNvdW50ZXJzLnJlbmRlclBhc3Nl
cyArIDE7CisgICAgdWludDMyX3QgZXhwZWN0ZWRSZW5kZXJQYXNzQ291bnQgPSBnZXRQZXJmQ291
bnRlcnMoKS5yZW5kZXJQYXNzZXMgKyAxOwogCiAgICAgLy8gTWFzayBjb2xvciBjaGFubmVscyBh
bmQgY2xlYXIgdGhlIGZyYW1lYnVmZmVyIG11bHRpcGxlIHRpbWVzLgogICAgIGdsQ2xlYXJDb2xv
cigwLjI1ZiwgMC4yNWYsIDAuMjVmLCAwLjI1Zik7CkBAIC0xNTI0LDcgKzE2MDAsNyBAQCBURVNU
X1AoVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdCwgTWFza2VkQ29sb3JDbGVhckRvZXNOb3RC
cmVha1JlbmRlclBhc3MpCiAgICAgZ2xDb2xvck1hc2soR0xfRkFMU0UsIEdMX0ZBTFNFLCBHTF9G
QUxTRSwgR0xfVFJVRSk7CiAgICAgZ2xDbGVhcihHTF9DT0xPUl9CVUZGRVJfQklUKTsKIAotICAg
IHVpbnQzMl90IGFjdHVhbFJlbmRlclBhc3NDb3VudCA9IGNvdW50ZXJzLnJlbmRlclBhc3NlczsK
KyAgICB1aW50MzJfdCBhY3R1YWxSZW5kZXJQYXNzQ291bnQgPSBnZXRQZXJmQ291bnRlcnMoKS5y
ZW5kZXJQYXNzZXM7CiAgICAgRVhQRUNUX0VRKGV4cGVjdGVkUmVuZGVyUGFzc0NvdW50LCBhY3R1
YWxSZW5kZXJQYXNzQ291bnQpOwogCiAgICAgRVhQRUNUX1BJWEVMX05FQVIoMCwgMCwgNjMsIDEy
NywgMjU1LCAxOTEsIDEpOwpAQCAtMTUzMyw3ICsxNjA5LDcgQEAgVEVTVF9QKFZ1bGthblBlcmZv
cm1hbmNlQ291bnRlclRlc3QsIE1hc2tlZENvbG9yQ2xlYXJEb2VzTm90QnJlYWtSZW5kZXJQYXNz
KQogLy8gVGVzdHMgdGhhdCBtYXNrZWQgY29sb3IvZGVwdGgvc3RlbmNpbCBjbGVhcnMgZG9uJ3Qg
YnJlYWsgdGhlIFJQLgogVEVTVF9QKFZ1bGthblBlcmZvcm1hbmNlQ291bnRlclRlc3QsIE1hc2tl
ZENsZWFyRG9lc05vdEJyZWFrUmVuZGVyUGFzcykKIHsKLSAgICBjb25zdCByeDo6dms6OlBlcmZD
b3VudGVycyAmY291bnRlcnMgPSBoYWNrQU5HTEUoKTsKKyAgICBBTkdMRV9TS0lQX1RFU1RfSUYo
IUlzR0xFeHRlbnNpb25FbmFibGVkKGtQZXJmTW9uaXRvckV4dGVuc2lvbk5hbWUpKTsKIAogICAg
IGNvbnN0ZXhwciBHTHNpemVpIGtTaXplID0gNjQ7CiAKQEAgLTE1NTMsNyArMTYyOSw3IEBAIFRF
U1RfUChWdWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJUZXN0LCBNYXNrZWRDbGVhckRvZXNOb3RCcmVh
a1JlbmRlclBhc3MpCiAgICAgQVNTRVJUX0dMX0ZSQU1FQlVGRkVSX0NPTVBMRVRFKEdMX0ZSQU1F
QlVGRkVSKTsKICAgICBBU1NFUlRfR0xfTk9fRVJST1IoKTsKIAotICAgIHVpbnQzMl90IGV4cGVj
dGVkUmVuZGVyUGFzc0NvdW50ID0gY291bnRlcnMucmVuZGVyUGFzc2VzICsgMTsKKyAgICB1aW50
MzJfdCBleHBlY3RlZFJlbmRlclBhc3NDb3VudCA9IGdldFBlcmZDb3VudGVycygpLnJlbmRlclBh
c3NlcyArIDE7CiAKICAgICBnbEVuYWJsZShHTF9ERVBUSF9URVNUKTsKICAgICBnbEVuYWJsZShH
TF9TVEVOQ0lMX1RFU1QpOwpAQCAtMTU4Miw3ICsxNjU4LDcgQEAgVEVTVF9QKFZ1bGthblBlcmZv
cm1hbmNlQ291bnRlclRlc3QsIE1hc2tlZENsZWFyRG9lc05vdEJyZWFrUmVuZGVyUGFzcykKICAg
ICBnbENsZWFyKEdMX0NPTE9SX0JVRkZFUl9CSVQgfCBHTF9ERVBUSF9CVUZGRVJfQklUIHwgR0xf
U1RFTkNJTF9CVUZGRVJfQklUKTsKIAogICAgIC8vIE1ha2Ugc3VyZSB0aGUgcmVuZGVyIHBhc3Mg
d2Fzbid0IGJyb2tlbi4KLSAgICBFWFBFQ1RfRVEoZXhwZWN0ZWRSZW5kZXJQYXNzQ291bnQsIGNv
dW50ZXJzLnJlbmRlclBhc3Nlcyk7CisgICAgRVhQRUNUX0VRKGV4cGVjdGVkUmVuZGVyUGFzc0Nv
dW50LCBnZXRQZXJmQ291bnRlcnMoKS5yZW5kZXJQYXNzZXMpOwogCiAgICAgLy8gVmVyaWZ5IHRo
YXQgY2xlYXIgd2FzIGRvbmUgY29ycmVjdGx5LgogICAgIEVYUEVDVF9QSVhFTF9DT0xPUl9FUSgw
LCAwLCBHTENvbG9yOjp5ZWxsb3cpOwpAQCAtMTYxNCwxMSArMTY5MCwxMSBAQCBURVNUX1AoVnVs
a2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdCwgTWFza2VkQ2xlYXJEb2VzTm90QnJlYWtSZW5kZXJQ
YXNzKQogLy8gVGVzdHMgdGhhdCBjbGVhciBmb2xsb3dlZCBieSBzY2lzc29yZWQgZHJhdyB1c2Vz
IGxvYWRPcCB0byBjbGVhci4KIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJUZXN0LCBD
bGVhclRoZW5TY2lzc29yZWREcmF3KQogewotICAgIGNvbnN0IHJ4Ojp2azo6UGVyZkNvdW50ZXJz
ICZjb3VudGVycyA9IGhhY2tBTkdMRSgpOworICAgIEFOR0xFX1NLSVBfVEVTVF9JRighSXNHTEV4
dGVuc2lvbkVuYWJsZWQoa1BlcmZNb25pdG9yRXh0ZW5zaW9uTmFtZSkpOwogCi0gICAgdWludDMy
X3QgZXhwZWN0ZWRSZW5kZXJQYXNzQ291bnQgPSBjb3VudGVycy5yZW5kZXJQYXNzZXMgKyAxOwot
ICAgIHVpbnQzMl90IGV4cGVjdGVkRGVwdGhDbGVhcnMgICAgID0gY291bnRlcnMuZGVwdGhDbGVh
cnMgKyAxOwotICAgIHVpbnQzMl90IGV4cGVjdGVkU3RlbmNpbENsZWFycyAgID0gY291bnRlcnMu
c3RlbmNpbENsZWFycyArIDE7CisgICAgdWludDMyX3QgZXhwZWN0ZWRSZW5kZXJQYXNzQ291bnQg
PSBnZXRQZXJmQ291bnRlcnMoKS5yZW5kZXJQYXNzZXMgKyAxOworICAgIHVpbnQzMl90IGV4cGVj
dGVkRGVwdGhDbGVhcnMgICAgID0gZ2V0UGVyZkNvdW50ZXJzKCkuZGVwdGhDbGVhcnMgKyAxOwor
ICAgIHVpbnQzMl90IGV4cGVjdGVkU3RlbmNpbENsZWFycyAgID0gZ2V0UGVyZkNvdW50ZXJzKCku
c3RlbmNpbENsZWFycyArIDE7CiAKICAgICBjb25zdGV4cHIgR0xzaXplaSBrU2l6ZSA9IDY0Owog
CkBAIC0xNjY4LDkgKzE3NDQsOSBAQCBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVz
dCwgQ2xlYXJUaGVuU2Npc3NvcmVkRHJhdykKICAgICBBU1NFUlRfR0xfTk9fRVJST1IoKTsKIAog
ICAgIC8vIE1ha2Ugc3VyZSBhIHNpbmdsZSByZW5kZXIgcGFzcyB3YXMgdXNlZCBhbmQgZGVwdGgv
c3RlbmNpbCBjbGVhciB1c2VkIGxvYWRPcD1DTEVBUi4KLSAgICBFWFBFQ1RfRVEoZXhwZWN0ZWRS
ZW5kZXJQYXNzQ291bnQsIGNvdW50ZXJzLnJlbmRlclBhc3Nlcyk7Ci0gICAgRVhQRUNUX0VRKGV4
cGVjdGVkRGVwdGhDbGVhcnMsIGNvdW50ZXJzLmRlcHRoQ2xlYXJzKTsKLSAgICBFWFBFQ1RfRVEo
ZXhwZWN0ZWRTdGVuY2lsQ2xlYXJzLCBjb3VudGVycy5zdGVuY2lsQ2xlYXJzKTsKKyAgICBFWFBF
Q1RfRVEoZXhwZWN0ZWRSZW5kZXJQYXNzQ291bnQsIGdldFBlcmZDb3VudGVycygpLnJlbmRlclBh
c3Nlcyk7CisgICAgRVhQRUNUX0VRKGV4cGVjdGVkRGVwdGhDbGVhcnMsIGdldFBlcmZDb3VudGVy
cygpLmRlcHRoQ2xlYXJzKTsKKyAgICBFWFBFQ1RfRVEoZXhwZWN0ZWRTdGVuY2lsQ2xlYXJzLCBn
ZXRQZXJmQ291bnRlcnMoKS5zdGVuY2lsQ2xlYXJzKTsKIAogICAgIC8vIFZlcmlmeSBjb3JyZWN0
bmVzcy4KICAgICBFWFBFQ1RfUElYRUxfQ09MT1JfRVEoMCwgMCwgR0xDb2xvcjo6Z3JlZW4pOwpA
QCAtMTY4Nyw3ICsxNzYzLDcgQEAgVEVTVF9QKFZ1bGthblBlcmZvcm1hbmNlQ291bnRlclRlc3Qs
IENsZWFyVGhlblNjaXNzb3JlZERyYXcpCiAvLyBUZXN0cyB0aGF0IHNjaXNzb3JlZCBjbGVhcnMg
ZG9uJ3QgYnJlYWsgdGhlIFJQLgogVEVTVF9QKFZ1bGthblBlcmZvcm1hbmNlQ291bnRlclRlc3Qs
IFNjaXNzb3JlZENsZWFyRG9lc05vdEJyZWFrUmVuZGVyUGFzcykKIHsKLSAgICBjb25zdCByeDo6
dms6OlBlcmZDb3VudGVycyAmY291bnRlcnMgPSBoYWNrQU5HTEUoKTsKKyAgICBBTkdMRV9TS0lQ
X1RFU1RfSUYoIUlzR0xFeHRlbnNpb25FbmFibGVkKGtQZXJmTW9uaXRvckV4dGVuc2lvbk5hbWUp
KTsKIAogICAgIGNvbnN0ZXhwciBHTHNpemVpIGtTaXplID0gNjQ7CiAKQEAgLTE3MDcsNyArMTc4
Myw3IEBAIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJUZXN0LCBTY2lzc29yZWRDbGVh
ckRvZXNOb3RCcmVha1JlbmRlclBhc3MpCiAgICAgQVNTRVJUX0dMX0ZSQU1FQlVGRkVSX0NPTVBM
RVRFKEdMX0ZSQU1FQlVGRkVSKTsKICAgICBBU1NFUlRfR0xfTk9fRVJST1IoKTsKIAotICAgIHVp
bnQzMl90IGV4cGVjdGVkUmVuZGVyUGFzc0NvdW50ID0gY291bnRlcnMucmVuZGVyUGFzc2VzICsg
MTsKKyAgICB1aW50MzJfdCBleHBlY3RlZFJlbmRlclBhc3NDb3VudCA9IGdldFBlcmZDb3VudGVy
cygpLnJlbmRlclBhc3NlcyArIDE7CiAKICAgICBnbEVuYWJsZShHTF9ERVBUSF9URVNUKTsKICAg
ICBnbEVuYWJsZShHTF9TVEVOQ0lMX1RFU1QpOwpAQCAtMTczNiw3ICsxODEyLDcgQEAgVEVTVF9Q
KFZ1bGthblBlcmZvcm1hbmNlQ291bnRlclRlc3QsIFNjaXNzb3JlZENsZWFyRG9lc05vdEJyZWFr
UmVuZGVyUGFzcykKICAgICBnbENsZWFyKEdMX0NPTE9SX0JVRkZFUl9CSVQgfCBHTF9ERVBUSF9C
VUZGRVJfQklUIHwgR0xfU1RFTkNJTF9CVUZGRVJfQklUKTsKIAogICAgIC8vIE1ha2Ugc3VyZSB0
aGUgcmVuZGVyIHBhc3Mgd2Fzbid0IGJyb2tlbi4KLSAgICBFWFBFQ1RfRVEoZXhwZWN0ZWRSZW5k
ZXJQYXNzQ291bnQsIGNvdW50ZXJzLnJlbmRlclBhc3Nlcyk7CisgICAgRVhQRUNUX0VRKGV4cGVj
dGVkUmVuZGVyUGFzc0NvdW50LCBnZXRQZXJmQ291bnRlcnMoKS5yZW5kZXJQYXNzZXMpOwogCiAg
ICAgLy8gVmVyaWZ5IHRoYXQgY2xlYXIgd2FzIGRvbmUgY29ycmVjdGx5LgogICAgIEVYUEVDVF9Q
SVhFTF9DT0xPUl9FUSgwLCAwLCBHTENvbG9yOjpyZWQpOwpAQCAtMTc4NSw3ICsxODYxLDcgQEAg
VEVTVF9QKFZ1bGthblBlcmZvcm1hbmNlQ291bnRlclRlc3QsIFNjaXNzb3JlZENsZWFyRG9lc05v
dEJyZWFrUmVuZGVyUGFzcykKIC8vIFRlc3RzIHRoYXQgZHJhdyBidWZmZXIgY2hhbmdlIHdpdGgg
YWxsIGNvbG9yIGNoYW5uZWwgbWFzayBvZmYgc2hvdWxkIG5vdCBicmVhayByZW5kZXJwYXNzCiBU
RVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdCwgRHJhd2J1ZmZlckNoYW5nZVdpdGhB
bGxDb2xvck1hc2tEaXNhYmxlZCkKIHsKLSAgICBjb25zdCByeDo6dms6OlBlcmZDb3VudGVycyAm
Y291bnRlcnMgPSBoYWNrQU5HTEUoKTsKKyAgICBBTkdMRV9TS0lQX1RFU1RfSUYoIUlzR0xFeHRl
bnNpb25FbmFibGVkKGtQZXJmTW9uaXRvckV4dGVuc2lvbk5hbWUpKTsKIAogICAgIEFOR0xFX0dM
X1BST0dSQU0ocHJvZ3JhbSwgZXNzbDFfc2hhZGVyczo6dnM6OlBhc3N0aHJvdWdoKCksIGVzc2wx
X3NoYWRlcnM6OmZzOjpVbmlmb3JtQ29sb3IoKSk7CiAgICAgZ2xVc2VQcm9ncmFtKHByb2dyYW0p
OwpAQCAtMTgxNCw3ICsxODkwLDcgQEAgVEVTVF9QKFZ1bGthblBlcmZvcm1hbmNlQ291bnRlclRl
c3QsIERyYXdidWZmZXJDaGFuZ2VXaXRoQWxsQ29sb3JNYXNrRGlzYWJsZWQpCiAgICAgQVNTRVJU
X0dMX0ZSQU1FQlVGRkVSX0NPTVBMRVRFKEdMX0ZSQU1FQlVGRkVSKTsKICAgICBBU1NFUlRfR0xf
Tk9fRVJST1IoKTsKIAotICAgIHVpbnQzMl90IGV4cGVjdGVkUmVuZGVyUGFzc0NvdW50ID0gY291
bnRlcnMucmVuZGVyUGFzc2VzICsgMTsKKyAgICB1aW50MzJfdCBleHBlY3RlZFJlbmRlclBhc3ND
b3VudCA9IGdldFBlcmZDb3VudGVycygpLnJlbmRlclBhc3NlcyArIDE7CiAKICAgICAvLyBEcmF3
IGludG8gRkJPCiAgICAgZ2xCaW5kRnJhbWVidWZmZXIoR0xfRlJBTUVCVUZGRVIsIGZyYW1lYnVm
ZmVyKTsKQEAgLTE4MzcsMTUgKzE5MTMsMTUgQEAgVEVTVF9QKFZ1bGthblBlcmZvcm1hbmNlQ291
bnRlclRlc3QsIERyYXdidWZmZXJDaGFuZ2VXaXRoQWxsQ29sb3JNYXNrRGlzYWJsZWQpCiAgICAg
Z2xVbmlmb3JtNGZ2KGNvbG9yVW5pZm9ybUxvY2F0aW9uLCAxLCBHTENvbG9yOjpyZWQudG9Ob3Jt
YWxpemVkVmVjdG9yKCkuZGF0YSgpKTsKICAgICBkcmF3UXVhZChwcm9ncmFtLCBlc3NsMV9zaGFk
ZXJzOjpQb3NpdGlvbkF0dHJpYigpLCAwLjdmKTsKIAotICAgIHVpbnQzMl90IGFjdHVhbFJlbmRl
clBhc3NDb3VudCA9IGNvdW50ZXJzLnJlbmRlclBhc3NlczsKKyAgICB1aW50MzJfdCBhY3R1YWxS
ZW5kZXJQYXNzQ291bnQgPSBnZXRQZXJmQ291bnRlcnMoKS5yZW5kZXJQYXNzZXM7CiAgICAgRVhQ
RUNUX0VRKGV4cGVjdGVkUmVuZGVyUGFzc0NvdW50LCBhY3R1YWxSZW5kZXJQYXNzQ291bnQpOwog
fQogCiAvLyBUZXN0cyB0aGUgb3B0aW1pemF0aW9uIHRoYXQgYSBnbEZsdXNoIGNhbGwgaXNzdWVk
IGluc2lkZSBhIHJlbmRlcnBhc3Mgd2lsbCBiZSBza2lwcGVkLgogVEVTVF9QKFZ1bGthblBlcmZv
cm1hbmNlQ291bnRlclRlc3QsIEluUmVuZGVycGFzc0ZsdXNoU2hvdWxkTm90QnJlYWtSZW5kZXJw
YXNzKQogewotICAgIGNvbnN0IHJ4Ojp2azo6UGVyZkNvdW50ZXJzICZjb3VudGVycyA9IGhhY2tB
TkdMRSgpOwotICAgIHVpbnQzMl90IGV4cGVjdGVkUmVuZGVyUGFzc0NvdW50ICAgICA9IGNvdW50
ZXJzLnJlbmRlclBhc3NlcyArIDE7CisgICAgQU5HTEVfU0tJUF9URVNUX0lGKCFJc0dMRXh0ZW5z
aW9uRW5hYmxlZChrUGVyZk1vbml0b3JFeHRlbnNpb25OYW1lKSk7CisgICAgdWludDMyX3QgZXhw
ZWN0ZWRSZW5kZXJQYXNzQ291bnQgPSBnZXRQZXJmQ291bnRlcnMoKS5yZW5kZXJQYXNzZXMgKyAx
OwogCiAgICAgR0xUZXh0dXJlIHRleHR1cmU7CiAgICAgZ2xCaW5kVGV4dHVyZShHTF9URVhUVVJF
XzJELCB0ZXh0dXJlKTsKQEAgLTE4NjQsMjEgKzE5NDAsMjIgQEAgVEVTVF9QKFZ1bGthblBlcmZv
cm1hbmNlQ291bnRlclRlc3QsIEluUmVuZGVycGFzc0ZsdXNoU2hvdWxkTm90QnJlYWtSZW5kZXJw
YXNzKQogICAgIGRyYXdRdWFkKGdyZWVuUHJvZ3JhbSwgZXNzbDFfc2hhZGVyczo6UG9zaXRpb25B
dHRyaWIoKSwgMC41Zik7CiAgICAgQVNTRVJUX0dMX05PX0VSUk9SKCk7CiAKLSAgICB1aW50MzJf
dCBhY3R1YWxSZW5kZXJQYXNzQ291bnQgPSBjb3VudGVycy5yZW5kZXJQYXNzZXM7CisgICAgdWlu
dDMyX3QgYWN0dWFsUmVuZGVyUGFzc0NvdW50ID0gZ2V0UGVyZkNvdW50ZXJzKCkucmVuZGVyUGFz
c2VzOwogICAgIEVYUEVDVF9FUShleHBlY3RlZFJlbmRlclBhc3NDb3VudCwgYWN0dWFsUmVuZGVy
UGFzc0NvdW50KTsKIH0KIAogLy8gVGVzdHMgdGhhdCBkZXB0aC9zdGVuY2lsIHRleHR1cmUgY2xl
YXIvbG9hZCB3b3JrcyBjb3JyZWN0bHkuCiBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVy
VGVzdCwgRGVwdGhTdGVuY2lsVGV4dHVyZUNsZWFyQW5kTG9hZCkKIHsKKyAgICBBTkdMRV9TS0lQ
X1RFU1RfSUYoIUlzR0xFeHRlbnNpb25FbmFibGVkKGtQZXJmTW9uaXRvckV4dGVuc2lvbk5hbWUp
KTsKKwogICAgIC8vIFRPRE86IGh0dHA6Ly9hbmdsZWJ1Zy5jb20vNTMyOSBGbGFreSB0ZXN0CiAg
ICAgQU5HTEVfU0tJUF9URVNUX0lGKElzV2luZG93cygpICYmIElzQU1EKCkgJiYgSXNWdWxrYW4o
KSk7CiAKLSAgICBjb25zdCByeDo6dms6OlBlcmZDb3VudGVycyAmY291bnRlcnMgPSBoYWNrQU5H
TEUoKTsKLSAgICB1aW50MzJfdCBleHBlY3RlZERlcHRoQ2xlYXJDb3VudCAgICAgPSBjb3VudGVy
cy5kZXB0aENsZWFycyArIDE7Ci0gICAgdWludDMyX3QgZXhwZWN0ZWREZXB0aExvYWRDb3VudCAg
ICAgID0gY291bnRlcnMuZGVwdGhMb2FkcyArIDM7Ci0gICAgdWludDMyX3QgZXhwZWN0ZWRTdGVu
Y2lsQ2xlYXJDb3VudCAgID0gY291bnRlcnMuc3RlbmNpbENsZWFycyArIDE7Ci0gICAgdWludDMy
X3QgZXhwZWN0ZWRTdGVuY2lsTG9hZENvdW50ICAgID0gY291bnRlcnMuc3RlbmNpbExvYWRzICsg
MzsKKyAgICB1aW50MzJfdCBleHBlY3RlZERlcHRoQ2xlYXJDb3VudCAgID0gZ2V0UGVyZkNvdW50
ZXJzKCkuZGVwdGhDbGVhcnMgKyAxOworICAgIHVpbnQzMl90IGV4cGVjdGVkRGVwdGhMb2FkQ291
bnQgICAgPSBnZXRQZXJmQ291bnRlcnMoKS5kZXB0aExvYWRzICsgMzsKKyAgICB1aW50MzJfdCBl
eHBlY3RlZFN0ZW5jaWxDbGVhckNvdW50ID0gZ2V0UGVyZkNvdW50ZXJzKCkuc3RlbmNpbENsZWFy
cyArIDE7CisgICAgdWludDMyX3QgZXhwZWN0ZWRTdGVuY2lsTG9hZENvdW50ICA9IGdldFBlcmZD
b3VudGVycygpLnN0ZW5jaWxMb2FkcyArIDM7CiAKICAgICBjb25zdGV4cHIgR0xzaXplaSBrU2l6
ZSA9IDY7CiAKQEAgLTE5NjQsMTAgKzIwNDEsMTAgQEAgVEVTVF9QKFZ1bGthblBlcmZvcm1hbmNl
Q291bnRlclRlc3QsIERlcHRoU3RlbmNpbFRleHR1cmVDbGVhckFuZExvYWQpCiAgICAgQVNTRVJU
X0dMX05PX0VSUk9SKCk7CiAKICAgICAvLyBWZXJpZnkgdGhlIGNvdW50ZXJzCi0gICAgRVhQRUNU
X0VRKGNvdW50ZXJzLmRlcHRoQ2xlYXJzLCBleHBlY3RlZERlcHRoQ2xlYXJDb3VudCk7Ci0gICAg
RVhQRUNUX0VRKGNvdW50ZXJzLmRlcHRoTG9hZHMsIGV4cGVjdGVkRGVwdGhMb2FkQ291bnQpOwot
ICAgIEVYUEVDVF9FUShjb3VudGVycy5zdGVuY2lsQ2xlYXJzLCBleHBlY3RlZFN0ZW5jaWxDbGVh
ckNvdW50KTsKLSAgICBFWFBFQ1RfRVEoY291bnRlcnMuc3RlbmNpbExvYWRzLCBleHBlY3RlZFN0
ZW5jaWxMb2FkQ291bnQpOworICAgIEVYUEVDVF9FUShnZXRQZXJmQ291bnRlcnMoKS5kZXB0aENs
ZWFycywgZXhwZWN0ZWREZXB0aENsZWFyQ291bnQpOworICAgIEVYUEVDVF9FUShnZXRQZXJmQ291
bnRlcnMoKS5kZXB0aExvYWRzLCBleHBlY3RlZERlcHRoTG9hZENvdW50KTsKKyAgICBFWFBFQ1Rf
RVEoZ2V0UGVyZkNvdW50ZXJzKCkuc3RlbmNpbENsZWFycywgZXhwZWN0ZWRTdGVuY2lsQ2xlYXJD
b3VudCk7CisgICAgRVhQRUNUX0VRKGdldFBlcmZDb3VudGVycygpLnN0ZW5jaWxMb2FkcywgZXhw
ZWN0ZWRTdGVuY2lsTG9hZENvdW50KTsKIAogICAgIC8vIFZlcmlmeSB0aGF0IGNvcGllcyB3ZXJl
IGRvbmUgY29ycmVjdGx5LgogICAgIEdMRnJhbWVidWZmZXIgdmVyaWZ5RkJPOwpAQCAtMTk4Mywx
NiArMjA2MCwxNyBAQCBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdCwgRGVwdGhT
dGVuY2lsVGV4dHVyZUNsZWFyQW5kTG9hZCkKIC8vIFRlc3RzIHRoYXQgbXVsdGlzYW1wbGVkLXJl
bmRlci10by10ZXh0dXJlIGRlcHRoL3N0ZW5jaWwgdGV4dHVyZXMgZG9uJ3QgZXZlciBsb2FkIGRh
dGEuCiBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdCwgUmVuZGVyVG9UZXh0dXJl
RGVwdGhTdGVuY2lsVGV4dHVyZVNob3VsZE5vdExvYWQpCiB7CisgICAgQU5HTEVfU0tJUF9URVNU
X0lGKCFJc0dMRXh0ZW5zaW9uRW5hYmxlZChrUGVyZk1vbml0b3JFeHRlbnNpb25OYW1lKSk7CisK
ICAgICAvLyBodHRwOi8vYW5nbGVidWcuY29tLzUwODMKICAgICBBTkdMRV9TS0lQX1RFU1RfSUYo
SXNXaW5kb3dzKCkgJiYgSXNBTUQoKSAmJiBJc1Z1bGthbigpKTsKIAogICAgIEFOR0xFX1NLSVBf
VEVTVF9JRighRW5zdXJlR0xFeHRlbnNpb25FbmFibGVkKCJHTF9FWFRfbXVsdGlzYW1wbGVkX3Jl
bmRlcl90b190ZXh0dXJlMiIpKTsKIAotICAgIGNvbnN0IHJ4Ojp2azo6UGVyZkNvdW50ZXJzICZj
b3VudGVycyA9IGhhY2tBTkdMRSgpOwotICAgIHVpbnQzMl90IGV4cGVjdGVkRGVwdGhDbGVhckNv
dW50ICAgICA9IGNvdW50ZXJzLmRlcHRoQ2xlYXJzICsgMTsKLSAgICB1aW50MzJfdCBleHBlY3Rl
ZERlcHRoTG9hZENvdW50ICAgICAgPSBjb3VudGVycy5kZXB0aExvYWRzOwotICAgIHVpbnQzMl90
IGV4cGVjdGVkU3RlbmNpbENsZWFyQ291bnQgICA9IGNvdW50ZXJzLnN0ZW5jaWxDbGVhcnMgKyAx
OwotICAgIHVpbnQzMl90IGV4cGVjdGVkU3RlbmNpbExvYWRDb3VudCAgICA9IGNvdW50ZXJzLnN0
ZW5jaWxMb2FkczsKKyAgICB1aW50MzJfdCBleHBlY3RlZERlcHRoQ2xlYXJDb3VudCAgID0gZ2V0
UGVyZkNvdW50ZXJzKCkuZGVwdGhDbGVhcnMgKyAxOworICAgIHVpbnQzMl90IGV4cGVjdGVkRGVw
dGhMb2FkQ291bnQgICAgPSBnZXRQZXJmQ291bnRlcnMoKS5kZXB0aExvYWRzOworICAgIHVpbnQz
Ml90IGV4cGVjdGVkU3RlbmNpbENsZWFyQ291bnQgPSBnZXRQZXJmQ291bnRlcnMoKS5zdGVuY2ls
Q2xlYXJzICsgMTsKKyAgICB1aW50MzJfdCBleHBlY3RlZFN0ZW5jaWxMb2FkQ291bnQgID0gZ2V0
UGVyZkNvdW50ZXJzKCkuc3RlbmNpbExvYWRzOwogCiAgICAgY29uc3RleHByIEdMc2l6ZWkga1Np
emUgPSA2OwogCkBAIC0yMDc5LDEwICsyMTU3LDEwIEBAIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5j
ZUNvdW50ZXJUZXN0LCBSZW5kZXJUb1RleHR1cmVEZXB0aFN0ZW5jaWxUZXh0dXJlU2hvdWxkTm90
CiAgICAgQVNTRVJUX0dMX05PX0VSUk9SKCk7CiAKICAgICAvLyBWZXJpZnkgdGhlIGNvdW50ZXJz
Ci0gICAgRVhQRUNUX0VRKGNvdW50ZXJzLmRlcHRoQ2xlYXJzLCBleHBlY3RlZERlcHRoQ2xlYXJD
b3VudCk7Ci0gICAgRVhQRUNUX0VRKGNvdW50ZXJzLmRlcHRoTG9hZHMsIGV4cGVjdGVkRGVwdGhM
b2FkQ291bnQpOwotICAgIEVYUEVDVF9FUShjb3VudGVycy5zdGVuY2lsQ2xlYXJzLCBleHBlY3Rl
ZFN0ZW5jaWxDbGVhckNvdW50KTsKLSAgICBFWFBFQ1RfRVEoY291bnRlcnMuc3RlbmNpbExvYWRz
LCBleHBlY3RlZFN0ZW5jaWxMb2FkQ291bnQpOworICAgIEVYUEVDVF9FUShnZXRQZXJmQ291bnRl
cnMoKS5kZXB0aENsZWFycywgZXhwZWN0ZWREZXB0aENsZWFyQ291bnQpOworICAgIEVYUEVDVF9F
UShnZXRQZXJmQ291bnRlcnMoKS5kZXB0aExvYWRzLCBleHBlY3RlZERlcHRoTG9hZENvdW50KTsK
KyAgICBFWFBFQ1RfRVEoZ2V0UGVyZkNvdW50ZXJzKCkuc3RlbmNpbENsZWFycywgZXhwZWN0ZWRT
dGVuY2lsQ2xlYXJDb3VudCk7CisgICAgRVhQRUNUX0VRKGdldFBlcmZDb3VudGVycygpLnN0ZW5j
aWxMb2FkcywgZXhwZWN0ZWRTdGVuY2lsTG9hZENvdW50KTsKIAogICAgIC8vIFZlcmlmeSB0aGF0
IGNvcGllcyB3ZXJlIGRvbmUgY29ycmVjdGx5LiAgT25seSB0aGUgZmlyc3QgY29weSBjYW4gYmUg
dmVyaWZpZWQgYmVjYXVzZSB0aGUKICAgICAvLyBjb250ZW50cyBvZiB0aGUgZGVwdGgvc3RlbmNp
bCBidWZmZXIgaXMgdW5kZWZpbmVkIGFmdGVyIHRoZSBmaXJzdCByZW5kZXIgcGFzcyBicmVhaywg
bWVhbmluZwpAQCAtMjExMCw5ICsyMTg4LDkgQEAgVEVTVF9QKFZ1bGthblBlcmZvcm1hbmNlQ291
bnRlclRlc3QsIFJlbmRlclRvVGV4dHVyZURlcHRoU3RlbmNpbFJlbmRlcmJ1ZmZlclNob3UKICAg
ICBBTkdMRV9TS0lQX1RFU1RfSUYoSXNXaW5kb3dzNygpICYmIElzTlZJRElBKCkgJiYgSXNWdWxr
YW4oKSk7CiAKICAgICBBTkdMRV9TS0lQX1RFU1RfSUYoIUVuc3VyZUdMRXh0ZW5zaW9uRW5hYmxl
ZCgiR0xfRVhUX211bHRpc2FtcGxlZF9yZW5kZXJfdG9fdGV4dHVyZSIpKTsKKyAgICBBTkdMRV9T
S0lQX1RFU1RfSUYoIUlzR0xFeHRlbnNpb25FbmFibGVkKGtQZXJmTW9uaXRvckV4dGVuc2lvbk5h
bWUpKTsKIAotICAgIGNvbnN0IHJ4Ojp2azo6UGVyZkNvdW50ZXJzICZjb3VudGVycyA9IGhhY2tB
TkdMRSgpOwotICAgIHJ4Ojp2azo6UGVyZkNvdW50ZXJzIGV4cGVjdGVkOworICAgIGFuZ2xlOjpW
dWxrYW5QZXJmQ291bnRlcnMgZXhwZWN0ZWQ7CiAKICAgICAvLyBUaGlzIHRlc3QgY3JlYXRlcyA0
IHJlbmRlciBwYXNzZXMuIEluIHRoZSBmaXJzdCByZW5kZXIgcGFzcywgY29sb3IsIGRlcHRoIGFu
ZCBzdGVuY2lsIGFyZQogICAgIC8vIGNsZWFyZWQuICBJbiB0aGUgZm9sbG93aW5nIHJlbmRlciBw
YXNzZXMsIHRoZXkgbXVzdCBiZSBsb2FkZWQuICBIb3dldmVyLCBnaXZlbiB0aGF0IHRoZQpAQCAt
MjEyMSwxMCArMjE5OSwxMCBAQCBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdCwg
UmVuZGVyVG9UZXh0dXJlRGVwdGhTdGVuY2lsUmVuZGVyYnVmZmVyU2hvdQogCiAgICAgLy8gRXhw
ZWN0IHJwQ291bnQrNCwgZGVwdGgoQ2xlYXJzKzEsIExvYWRzKzMsIFN0b3JlcyszKSwgc3RlbmNp
bChDbGVhcnMrMSwgTG9hZCszLCBTdG9yZXMrMykuCiAgICAgLy8gTm90ZSB0aGF0IHRoZSBMb2Fk
cyBhbmQgU3RvcmVzIGFyZSBmcm9tIHRoZSByZXNvbHZlIGF0dGFjaG1lbnRzLgotICAgIHNldEV4
cGVjdGVkQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChjb3VudGVycywgNCwgMSwgMywgMywgMSwg
MywgMywgJmV4cGVjdGVkKTsKKyAgICBzZXRFeHBlY3RlZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRl
c3QoZ2V0UGVyZkNvdW50ZXJzKCksIDQsIDEsIDMsIDMsIDEsIDMsIDMsICZleHBlY3RlZCk7CiAK
ICAgICAvLyBBZGRpdGlvbmFsbHksIGV4cGVjdCA0IHJlc29sdmVzIGFuZCAzIHVucmVzb2x2ZXMu
Ci0gICAgc2V0RXhwZWN0ZWRDb3VudGVyc0ZvclVucmVzb2x2ZVJlc29sdmVUZXN0KGNvdW50ZXJz
LCAzLCAzLCAzLCA0LCA0LCA0LCAmZXhwZWN0ZWQpOworICAgIHNldEV4cGVjdGVkQ291bnRlcnNG
b3JVbnJlc29sdmVSZXNvbHZlVGVzdChnZXRQZXJmQ291bnRlcnMoKSwgMywgMywgMywgNCwgNCwg
NCwgJmV4cGVjdGVkKTsKIAogICAgIGNvbnN0ZXhwciBHTHNpemVpIGtTaXplID0gNjsKIApAQCAt
MjIxMCw4ICsyMjg4LDggQEAgVEVTVF9QKFZ1bGthblBlcmZvcm1hbmNlQ291bnRlclRlc3QsIFJl
bmRlclRvVGV4dHVyZURlcHRoU3RlbmNpbFJlbmRlcmJ1ZmZlclNob3UKICAgICBBU1NFUlRfR0xf
Tk9fRVJST1IoKTsKIAogICAgIC8vIFZlcmlmeSB0aGUgY291bnRlcnMKLSAgICBjb21wYXJlTG9h
ZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoY291bnRlcnMsIGV4cGVjdGVkKTsKLSAgICBjb21w
YXJlQ291bnRlcnNGb3JVbnJlc29sdmVSZXNvbHZlVGVzdChjb3VudGVycywgZXhwZWN0ZWQpOwor
ICAgIGNvbXBhcmVMb2FkQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChnZXRQZXJmQ291bnRlcnMo
KSwgZXhwZWN0ZWQpOworICAgIGNvbXBhcmVDb3VudGVyc0ZvclVucmVzb2x2ZVJlc29sdmVUZXN0
KGdldFBlcmZDb3VudGVycygpLCBleHBlY3RlZCk7CiAKICAgICAvLyBWZXJpZnkgdGhhdCBjb3Bp
ZXMgd2VyZSBkb25lIGNvcnJlY3RseS4KICAgICBHTEZyYW1lYnVmZmVyIHZlcmlmeUZCTzsKQEAg
LTIyMzMsOCArMjMxMSw5IEBAIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJUZXN0LCBS
ZW5kZXJUb1RleHR1cmVJbnZhbGlkYXRlKQogCiAgICAgQU5HTEVfU0tJUF9URVNUX0lGKCFFbnN1
cmVHTEV4dGVuc2lvbkVuYWJsZWQoIkdMX0VYVF9tdWx0aXNhbXBsZWRfcmVuZGVyX3RvX3RleHR1
cmUiKSk7CiAKLSAgICBjb25zdCByeDo6dms6OlBlcmZDb3VudGVycyAmY291bnRlcnMgPSBoYWNr
QU5HTEUoKTsKLSAgICByeDo6dms6OlBlcmZDb3VudGVycyBleHBlY3RlZDsKKyAgICBBTkdMRV9T
S0lQX1RFU1RfSUYoIUlzR0xFeHRlbnNpb25FbmFibGVkKGtQZXJmTW9uaXRvckV4dGVuc2lvbk5h
bWUpKTsKKworICAgIGFuZ2xlOjpWdWxrYW5QZXJmQ291bnRlcnMgZXhwZWN0ZWQ7CiAKICAgICAv
LyBUaGlzIHRlc3QgY3JlYXRlcyA0IHJlbmRlciBwYXNzZXMuIEluIHRoZSBmaXJzdCByZW5kZXIg
cGFzcywgY29sb3IsIGRlcHRoIGFuZCBzdGVuY2lsIGFyZQogICAgIC8vIGNsZWFyZWQuICBBZnRl
ciBldmVyeSByZW5kZXIgcGFzcywgdGhlIGF0dGFjaG1lbnRzIGFyZSBpbnZhbGlkYXRlZC4gIElu
IHRoZSBmb2xsb3dpbmcgcmVuZGVyCkBAIC0yMjQzLDEwICsyMzIyLDEwIEBAIFRFU1RfUChWdWxr
YW5QZXJmb3JtYW5jZUNvdW50ZXJUZXN0LCBSZW5kZXJUb1RleHR1cmVJbnZhbGlkYXRlKQogICAg
IC8vIHNob3VsZCByZXNvbHZlIHRoZSBhdHRhY2htZW50cy4KIAogICAgIC8vIEV4cGVjdCBycENv
dW50KzQsIGRlcHRoKENsZWFycysxLCBMb2FkcyswLCBTdG9yZXMrMCksIHN0ZW5jaWwoQ2xlYXJz
KzEsIExvYWQrMCwgU3RvcmVzKzApCi0gICAgc2V0RXhwZWN0ZWRDb3VudGVyc0ZvckludmFsaWRh
dGVUZXN0KGNvdW50ZXJzLCA0LCAxLCAwLCAwLCAxLCAwLCAwLCAmZXhwZWN0ZWQpOworICAgIHNl
dEV4cGVjdGVkQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChnZXRQZXJmQ291bnRlcnMoKSwgNCwg
MSwgMCwgMCwgMSwgMCwgMCwgJmV4cGVjdGVkKTsKIAogICAgIC8vIEFkZGl0aW9uYWxseSwgZXhw
ZWN0IG5vIHJlc29sdmUgYW5kIHVucmVzb2x2ZS4KLSAgICBzZXRFeHBlY3RlZENvdW50ZXJzRm9y
VW5yZXNvbHZlUmVzb2x2ZVRlc3QoY291bnRlcnMsIDAsIDAsIDAsIDAsIDAsIDAsICZleHBlY3Rl
ZCk7CisgICAgc2V0RXhwZWN0ZWRDb3VudGVyc0ZvclVucmVzb2x2ZVJlc29sdmVUZXN0KGdldFBl
cmZDb3VudGVycygpLCAwLCAwLCAwLCAwLCAwLCAwLCAmZXhwZWN0ZWQpOwogCiAgICAgY29uc3Rl
eHByIEdMc2l6ZWkga1NpemUgPSA2OwogCkBAIC0yMzQ1LDggKzI0MjQsOCBAQCBURVNUX1AoVnVs
a2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdCwgUmVuZGVyVG9UZXh0dXJlSW52YWxpZGF0ZSkKICAg
ICBBU1NFUlRfR0xfTk9fRVJST1IoKTsKIAogICAgIC8vIFZlcmlmeSB0aGUgY291bnRlcnMKLSAg
ICBjb21wYXJlTG9hZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoY291bnRlcnMsIGV4cGVjdGVk
KTsKLSAgICBjb21wYXJlQ291bnRlcnNGb3JVbnJlc29sdmVSZXNvbHZlVGVzdChjb3VudGVycywg
ZXhwZWN0ZWQpOworICAgIGNvbXBhcmVMb2FkQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChnZXRQ
ZXJmQ291bnRlcnMoKSwgZXhwZWN0ZWQpOworICAgIGNvbXBhcmVDb3VudGVyc0ZvclVucmVzb2x2
ZVJlc29sdmVUZXN0KGdldFBlcmZDb3VudGVycygpLCBleHBlY3RlZCk7CiB9CiAKIC8vIFRlc3Rz
IGNvdW50ZXJzIHdoZW4gdW5pbml0aWFsaXplZCBtdWx0aXNhbXBsZWQtcmVuZGVyLXRvLXRleHR1
cmUgZGVwdGgvc3RlbmNpbCByZW5kZXJidWZmZXJzIGFyZQpAQCAtMjM1OCwxNCArMjQzNywxNCBA
QCBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdCwgUmVuZGVyVG9UZXh0dXJlVW5p
bml0aWFsaXplZEFuZFVudXNlZERlcHRoUwogCiAgICAgQU5HTEVfU0tJUF9URVNUX0lGKCFFbnN1
cmVHTEV4dGVuc2lvbkVuYWJsZWQoIkdMX0VYVF9tdWx0aXNhbXBsZWRfcmVuZGVyX3RvX3RleHR1
cmUiKSk7CiAKLSAgICBjb25zdCByeDo6dms6OlBlcmZDb3VudGVycyAmY291bnRlcnMgPSBoYWNr
QU5HTEUoKTsKLSAgICByeDo6dms6OlBlcmZDb3VudGVycyBleHBlY3RlZDsKKyAgICBBTkdMRV9T
S0lQX1RFU1RfSUYoIUlzR0xFeHRlbnNpb25FbmFibGVkKGtQZXJmTW9uaXRvckV4dGVuc2lvbk5h
bWUpKTsKKyAgICBhbmdsZTo6VnVsa2FuUGVyZkNvdW50ZXJzIGV4cGVjdGVkOwogCiAgICAgLy8g
RXhwZWN0IHJwQ291bnQrMSwgbm8gZGVwdGgvc3RlbmNpbCBjbGVhciwgbG9hZCBvciBzdG9yZS4K
LSAgICBzZXRFeHBlY3RlZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoY291bnRlcnMsIDEsIDAs
IDAsIDAsIDAsIDAsIDAsICZleHBlY3RlZCk7CisgICAgc2V0RXhwZWN0ZWRDb3VudGVyc0Zvcklu
dmFsaWRhdGVUZXN0KGdldFBlcmZDb3VudGVycygpLCAxLCAwLCAwLCAwLCAwLCAwLCAwLCAmZXhw
ZWN0ZWQpOwogCiAgICAgLy8gQWRkaXRpb25hbGx5LCBleHBlY3Qgb25seSBjb2xvciByZXNvbHZl
LgotICAgIHNldEV4cGVjdGVkQ291bnRlcnNGb3JVbnJlc29sdmVSZXNvbHZlVGVzdChjb3VudGVy
cywgMCwgMCwgMCwgMSwgMCwgMCwgJmV4cGVjdGVkKTsKKyAgICBzZXRFeHBlY3RlZENvdW50ZXJz
Rm9yVW5yZXNvbHZlUmVzb2x2ZVRlc3QoZ2V0UGVyZkNvdW50ZXJzKCksIDAsIDAsIDAsIDEsIDAs
IDAsICZleHBlY3RlZCk7CiAKICAgICBjb25zdGV4cHIgR0xzaXplaSBrU2l6ZSA9IDY7CiAKQEAg
LTI0MTcsMjAgKzI0OTYsMjAgQEAgVEVTVF9QKFZ1bGthblBlcmZvcm1hbmNlQ291bnRlclRlc3Qs
IFJlbmRlclRvVGV4dHVyZVVuaW5pdGlhbGl6ZWRBbmRVbnVzZWREZXB0aFMKICAgICBBU1NFUlRf
R0xfTk9fRVJST1IoKTsKIAogICAgIC8vIFZlcmlmeSB0aGUgY291bnRlcnMKLSAgICBjb21wYXJl
TG9hZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoY291bnRlcnMsIGV4cGVjdGVkKTsKLSAgICBj
b21wYXJlQ291bnRlcnNGb3JVbnJlc29sdmVSZXNvbHZlVGVzdChjb3VudGVycywgZXhwZWN0ZWQp
OworICAgIGNvbXBhcmVMb2FkQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChnZXRQZXJmQ291bnRl
cnMoKSwgZXhwZWN0ZWQpOworICAgIGNvbXBhcmVDb3VudGVyc0ZvclVucmVzb2x2ZVJlc29sdmVU
ZXN0KGdldFBlcmZDb3VudGVycygpLCBleHBlY3RlZCk7CiB9CiAKIC8vIEVuc3VyZXMgd2UgdXNl
IHJlYWQtb25seSBkZXB0aCBsYXlvdXQgd2hlbiB0aGVyZSBpcyBubyB3cml0ZQogVEVTVF9QKFZ1
bGthblBlcmZvcm1hbmNlQ291bnRlclRlc3QsIFJlYWRPbmx5RGVwdGhCdWZmZXJMYXlvdXQpCiB7
Ci0gICAgY29uc3Qgcng6OnZrOjpQZXJmQ291bnRlcnMgJmNvdW50ZXJzID0gaGFja0FOR0xFKCk7
CisgICAgQU5HTEVfU0tJUF9URVNUX0lGKCFJc0dMRXh0ZW5zaW9uRW5hYmxlZChrUGVyZk1vbml0
b3JFeHRlbnNpb25OYW1lKSk7CiAKICAgICBjb25zdGV4cHIgR0xzaXplaSBrU2l6ZSA9IDY0Owog
CiAgICAgLy8gQ3JlYXRlIGRlcHRoIG9ubHkgRkJPIGFuZCBmaWxsIGRlcHRoIHRleHR1cmUgdG8g
bGVmdEhhbGY9MC4wIGFuZCByaWdodEhhbGY9MS4wLiBUaGlzIHNob3VsZAogICAgIC8vIHVzZSB3
cml0ZWFibGUgbGF5b3V0Ci0gICAgdWludDMyX3QgZXhwZWN0ZWRSZWFkT25seURlcHRoU3RlbmNp
bENvdW50ID0gY291bnRlcnMucmVhZE9ubHlEZXB0aFN0ZW5jaWxSZW5kZXJQYXNzZXM7CisgICAg
dWludDMyX3QgZXhwZWN0ZWRSZWFkT25seURlcHRoU3RlbmNpbENvdW50ID0gZ2V0UGVyZkNvdW50
ZXJzKCkucmVhZE9ubHlEZXB0aFN0ZW5jaWxSZW5kZXJQYXNzZXM7CiAgICAgR0xUZXh0dXJlIGRl
cHRoVGV4dHVyZTsKICAgICBnbEJpbmRUZXh0dXJlKEdMX1RFWFRVUkVfMkQsIGRlcHRoVGV4dHVy
ZSk7CiAgICAgZ2xUZXhJbWFnZTJEKEdMX1RFWFRVUkVfMkQsIDAsIEdMX0RFUFRIX0NPTVBPTkVO
VDE2LCBrU2l6ZSwga1NpemUsIDAsIEdMX0RFUFRIX0NPTVBPTkVOVCwKQEAgLTI0NTgsMTEgKzI1
MzcsMTEgQEAgVEVTVF9QKFZ1bGthblBlcmZvcm1hbmNlQ291bnRlclRlc3QsIFJlYWRPbmx5RGVw
dGhCdWZmZXJMYXlvdXQpCiAgICAgLy8gaGVyZSB0byBlbmQgdGhlIHJlbmRlcnBhc3MuCiAgICAg
Z2xGaW5pc2goKTsKIAotICAgIHVpbnQzMl90IGFjdHVhbFJlYWRPbmx5RGVwdGhTdGVuY2lsQ291
bnQgPSBjb3VudGVycy5yZWFkT25seURlcHRoU3RlbmNpbFJlbmRlclBhc3NlczsKKyAgICB1aW50
MzJfdCBhY3R1YWxSZWFkT25seURlcHRoU3RlbmNpbENvdW50ID0gZ2V0UGVyZkNvdW50ZXJzKCku
cmVhZE9ubHlEZXB0aFN0ZW5jaWxSZW5kZXJQYXNzZXM7CiAgICAgRVhQRUNUX0VRKGV4cGVjdGVk
UmVhZE9ubHlEZXB0aFN0ZW5jaWxDb3VudCwgYWN0dWFsUmVhZE9ubHlEZXB0aFN0ZW5jaWxDb3Vu
dCk7CiAKICAgICAvLyBDcmVhdGUgYSBjb2xvcitkZXB0aCBGQk8gYW5kIHVzZSBkZXB0aCBhcyBy
ZWFkIG9ubHkuIFRoaXMgc2hvdWxkIHVzZSByZWFkIG9ubHkgbGF5b3V0Ci0gICAgZXhwZWN0ZWRS
ZWFkT25seURlcHRoU3RlbmNpbENvdW50ID0gY291bnRlcnMucmVhZE9ubHlEZXB0aFN0ZW5jaWxS
ZW5kZXJQYXNzZXMgKyAxOworICAgIGV4cGVjdGVkUmVhZE9ubHlEZXB0aFN0ZW5jaWxDb3VudCA9
IGdldFBlcmZDb3VudGVycygpLnJlYWRPbmx5RGVwdGhTdGVuY2lsUmVuZGVyUGFzc2VzICsgMTsK
ICAgICBHTFRleHR1cmUgY29sb3JUZXh0dXJlOwogICAgIGdsQmluZFRleHR1cmUoR0xfVEVYVFVS
RV8yRCwgY29sb3JUZXh0dXJlKTsKICAgICBnbFRleEltYWdlMkQoR0xfVEVYVFVSRV8yRCwgMCwg
R0xfUkdCQSwga1NpemUsIGtTaXplLCAwLCBHTF9SR0JBLCBHTF9VTlNJR05FRF9CWVRFLCBudWxs
cHRyKTsKQEAgLTI0NzYsNyArMjU1NSw4IEBAIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5jZUNvdW50
ZXJUZXN0LCBSZWFkT25seURlcHRoQnVmZmVyTGF5b3V0KQogICAgIGdsRW5hYmxlKEdMX0RFUFRI
X1RFU1QpOwogICAgIGdsRGVwdGhGdW5jKEdMX0xFU1MpOwogICAgIGdsRGVwdGhNYXNrKEdMX0ZB
TFNFKTsKLSAgICBHTGZsb2F0ICpjbGVhckNvbG9yID0gR0xDb2xvcjo6Ymx1ZS50b05vcm1hbGl6
ZWRWZWN0b3IoKS5kYXRhKCk7CisKKyAgICBhbmdsZTo6VmVjdG9yNCBjbGVhckNvbG9yID0gR0xD
b2xvcjo6Ymx1ZS50b05vcm1hbGl6ZWRWZWN0b3IoKTsKICAgICBnbENsZWFyQ29sb3IoY2xlYXJD
b2xvclswXSwgY2xlYXJDb2xvclsxXSwgY2xlYXJDb2xvclsyXSwgY2xlYXJDb2xvclszXSk7CiAg
ICAgZ2xDbGVhcihHTF9DT0xPUl9CVUZGRVJfQklUKTsKICAgICBkcmF3UXVhZChyZWRQcm9ncmFt
LCBlc3NsMV9zaGFkZXJzOjpQb3NpdGlvbkF0dHJpYigpLCAwLjVmKTsKQEAgLTI0ODQsNyArMjU2
NCw3IEBAIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJUZXN0LCBSZWFkT25seURlcHRo
QnVmZmVyTGF5b3V0KQogICAgIC8vIFRoZSBwaXhlbCBjaGVjayB3aWxsIGVuZCByZW5kZXJwYXNz
LgogICAgIEVYUEVDVF9QSVhFTF9DT0xPUl9FUSgxLCAxLCBHTENvbG9yOjpibHVlKTsKICAgICBF
WFBFQ1RfUElYRUxfQ09MT1JfRVEoMSArIGtTaXplIC8gMiwgMSwgR0xDb2xvcjo6cmVkKTsKLSAg
ICBhY3R1YWxSZWFkT25seURlcHRoU3RlbmNpbENvdW50ID0gY291bnRlcnMucmVhZE9ubHlEZXB0
aFN0ZW5jaWxSZW5kZXJQYXNzZXM7CisgICAgYWN0dWFsUmVhZE9ubHlEZXB0aFN0ZW5jaWxDb3Vu
dCA9IGdldFBlcmZDb3VudGVycygpLnJlYWRPbmx5RGVwdGhTdGVuY2lsUmVuZGVyUGFzc2VzOwog
ICAgIEVYUEVDVF9FUShleHBlY3RlZFJlYWRPbmx5RGVwdGhTdGVuY2lsQ291bnQsIGFjdHVhbFJl
YWRPbmx5RGVwdGhTdGVuY2lsQ291bnQpOwogfQogCkBAIC0yNDkyLDExICsyNTcyLDExIEBAIFRF
U1RfUChWdWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJUZXN0LCBSZWFkT25seURlcHRoQnVmZmVyTGF5
b3V0KQogLy8gaW52YWxpZGF0ZSkKIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJUZXN0
LCBSZW5kZXJQYXNzQWZ0ZXJSZW5kZXJQYXNzV2l0aG91dERlcHRoU3RlbmNpbFdyaXRlKQogewot
ICAgIGNvbnN0IHJ4Ojp2azo6UGVyZkNvdW50ZXJzICZjb3VudGVycyA9IGhhY2tBTkdMRSgpOwot
ICAgIHJ4Ojp2azo6UGVyZkNvdW50ZXJzIGV4cGVjdGVkOworICAgIEFOR0xFX1NLSVBfVEVTVF9J
RighSXNHTEV4dGVuc2lvbkVuYWJsZWQoa1BlcmZNb25pdG9yRXh0ZW5zaW9uTmFtZSkpOworICAg
IGFuZ2xlOjpWdWxrYW5QZXJmQ291bnRlcnMgZXhwZWN0ZWQ7CiAKICAgICAvLyBFeHBlY3QgcnBD
b3VudCsxLCBkZXB0aChDbGVhcnMrMCwgTG9hZHMrMCwgU3RvcmVzKzApLCBzdGVuY2lsKENsZWFy
cyswLCBMb2FkKzAsIFN0b3JlcyswKQotICAgIHNldEV4cGVjdGVkQ291bnRlcnNGb3JJbnZhbGlk
YXRlVGVzdChjb3VudGVycywgMSwgMCwgMCwgMCwgMCwgMCwgMCwgJmV4cGVjdGVkKTsKKyAgICBz
ZXRFeHBlY3RlZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoZ2V0UGVyZkNvdW50ZXJzKCksIDEs
IDAsIDAsIDAsIDAsIDAsIDAsICZleHBlY3RlZCk7CiAKICAgICBjb25zdGV4cHIgR0xzaXplaSBr
U2l6ZSA9IDY0OwogCkBAIC0yNTMxLDEwICsyNjExLDEwIEBAIFRFU1RfUChWdWxrYW5QZXJmb3Jt
YW5jZUNvdW50ZXJUZXN0LCBSZW5kZXJQYXNzQWZ0ZXJSZW5kZXJQYXNzV2l0aG91dERlcHRoU3Rl
bmNpCiAKICAgICAvLyBCcmVhayB0aGUgcmVuZGVyIHBhc3MgYW5kIGVuc3VyZSBubyBkZXB0aC9z
dGVuY2lsIGxvYWQvc3RvcmUgd2FzIGRvbmUuCiAgICAgc3dhcEJ1ZmZlcnMoKTsKLSAgICBjb21w
YXJlRGVwdGhTdGVuY2lsQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChjb3VudGVycywgZXhwZWN0
ZWQpOworICAgIGNvbXBhcmVEZXB0aFN0ZW5jaWxDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGdl
dFBlcmZDb3VudGVycygpLCBleHBlY3RlZCk7CiAKICAgICAvLyBFeHBlY3QgcnBDb3VudCsxLCBk
ZXB0aChDbGVhcnMrMCwgTG9hZHMrMCwgU3RvcmVzKzApLCBzdGVuY2lsKENsZWFycyswLCBMb2Fk
KzAsIFN0b3JlcyswKQotICAgIHNldEV4cGVjdGVkQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChj
b3VudGVycywgMSwgMCwgMCwgMCwgMCwgMCwgMCwgJmV4cGVjdGVkKTsKKyAgICBzZXRFeHBlY3Rl
ZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoZ2V0UGVyZkNvdW50ZXJzKCksIDEsIDAsIDAsIDAs
IDAsIDAsIDAsICZleHBlY3RlZCk7CiAKICAgICAvLyBEcmF3IGFnYWluIHdpdGggc2ltaWxhciBj
b25kaXRpb25zLCBhbmQgYWdhaW4gbWFrZSBzdXJlIG5vIGxvYWQvc3RvcmUgaXMgZG9uZS4KICAg
ICBnbFVuaWZvcm00Zihjb2xvclVuaWZvcm1Mb2NhdGlvbiwgMC4wZiwgMS4wZiwgMC4wZiwgMS4w
Zik7CkBAIC0yNTQyLDcgKzI2MjIsNyBAQCBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVy
VGVzdCwgUmVuZGVyUGFzc0FmdGVyUmVuZGVyUGFzc1dpdGhvdXREZXB0aFN0ZW5jaQogCiAgICAg
Ly8gQnJlYWsgdGhlIHJlbmRlciBwYXNzIGFuZCBlbnN1cmUgbm8gZGVwdGgvc3RlbmNpbCBsb2Fk
L3N0b3JlIHdhcyBkb25lLgogICAgIHN3YXBCdWZmZXJzKCk7Ci0gICAgY29tcGFyZURlcHRoU3Rl
bmNpbENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoY291bnRlcnMsIGV4cGVjdGVkKTsKKyAgICBj
b21wYXJlRGVwdGhTdGVuY2lsQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChnZXRQZXJmQ291bnRl
cnMoKSwgZXhwZWN0ZWQpOwogCiAgICAgRVhQRUNUX1BJWEVMX0NPTE9SX0VRKDAsIDAsIEdMQ29s
b3I6OmdyZWVuKTsKIH0KQEAgLTI1NTEsOCArMjYzMSw4IEBAIFRFU1RfUChWdWxrYW5QZXJmb3Jt
YW5jZUNvdW50ZXJUZXN0LCBSZW5kZXJQYXNzQWZ0ZXJSZW5kZXJQYXNzV2l0aG91dERlcHRoU3Rl
bmNpCiAvLyBldGMpIGRvbid0IGJyZWFrIHRoZSByZW5kZXIgcGFzcy4KIFRFU1RfUChWdWxrYW5Q
ZXJmb3JtYW5jZUNvdW50ZXJUZXN0LCBDbGVhckFmdGVyQ2xlYXJEb2VzTm90QnJlYWtSZW5kZXJQ
YXNzKQogewotICAgIGNvbnN0IHJ4Ojp2azo6UGVyZkNvdW50ZXJzICZjb3VudGVycyA9IGhhY2tB
TkdMRSgpOwotICAgIHVpbnQzMl90IGV4cGVjdGVkUmVuZGVyUGFzc0NvdW50ICAgICA9IGNvdW50
ZXJzLnJlbmRlclBhc3NlcyArIDE7CisgICAgQU5HTEVfU0tJUF9URVNUX0lGKCFJc0dMRXh0ZW5z
aW9uRW5hYmxlZChrUGVyZk1vbml0b3JFeHRlbnNpb25OYW1lKSk7CisgICAgdWludDMyX3QgZXhw
ZWN0ZWRSZW5kZXJQYXNzQ291bnQgPSBnZXRQZXJmQ291bnRlcnMoKS5yZW5kZXJQYXNzZXMgKyAx
OwogCiAgICAgY29uc3RleHByIEdMc2l6ZWkga1NpemUgPSA2OwogCkBAIC0yNjE1LDcgKzI2OTUs
NyBAQCBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdCwgQ2xlYXJBZnRlckNsZWFy
RG9lc05vdEJyZWFrUmVuZGVyUGFzcykKICAgICBnbENsZWFyKEdMX0NPTE9SX0JVRkZFUl9CSVQg
fCBHTF9ERVBUSF9CVUZGRVJfQklUIHwgR0xfU1RFTkNJTF9CVUZGRVJfQklUKTsKIAogICAgIC8v
IFZlcmlmeSByZW5kZXIgcGFzcyBjb3VudC4KLSAgICBFWFBFQ1RfRVEoY291bnRlcnMucmVuZGVy
UGFzc2VzLCBleHBlY3RlZFJlbmRlclBhc3NDb3VudCk7CisgICAgRVhQRUNUX0VRKGdldFBlcmZD
b3VudGVycygpLnJlbmRlclBhc3NlcywgZXhwZWN0ZWRSZW5kZXJQYXNzQ291bnQpOwogCiAgICAg
Ly8gTWFrZSBzdXJlIHRoZSByZXN1bHQgaXMgY29ycmVjdC4gIFRoZSBib3JkZXIgb2YgdGhlIGlt
YWdlIHNob3VsZCBiZSBibHVlIHdpdGggZGVwdGggMC4zZiBhbmQKICAgICAvLyBzdGVuY2lsIDB4
NDQuICBUaGUgY2VudGVyIGlzIHJlZCB3aXRoIGRlcHRoIDEuMGYgYW5kIHN0ZW5jaWwgMHg1NS4K
QEAgLTI2OTUsNiArMjc3NSw4IEBAIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJUZXN0
LCBDbGVhckFmdGVyQ2xlYXJEb2VzTm90QnJlYWtSZW5kZXJQYXNzKQogLy8gRW5zdXJlcyB0aGF0
IGNoYW5naW5nIHRoZSBzY2lzc29yIHNpemUgZG9lc24ndCBicmVhayB0aGUgcmVuZGVyIHBhc3Mu
CiBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdCwgU2Npc3NvckRvZXNOb3RCcmVh
a1JlbmRlclBhc3MpCiB7CisgICAgQU5HTEVfU0tJUF9URVNUX0lGKCFJc0dMRXh0ZW5zaW9uRW5h
YmxlZChrUGVyZk1vbml0b3JFeHRlbnNpb25OYW1lKSk7CisKICAgICBjb25zdGV4cHIgR0xzaXpl
aSBrU2l6ZSA9IDE2OwogCiAgICAgLy8gQ3JlYXRlIGEgZnJhbWVidWZmZXIgd2l0aCBhIGNvbG9y
IGF0dGFjaG1lbnQuCkBAIC0yNzEzLDggKzI3OTUsNyBAQCBURVNUX1AoVnVsa2FuUGVyZm9ybWFu
Y2VDb3VudGVyVGVzdCwgU2Npc3NvckRvZXNOb3RCcmVha1JlbmRlclBhc3MpCiAgICAgZ2xDbGVh
cihHTF9DT0xPUl9CVUZGRVJfQklUKTsKICAgICBFWFBFQ1RfUElYRUxfQ09MT1JfRVEoMCwgMCwg
R0xDb2xvcjo6YmxhY2spOwogCi0gICAgY29uc3Qgcng6OnZrOjpQZXJmQ291bnRlcnMgJmNvdW50
ZXJzID0gaGFja0FOR0xFKCk7Ci0gICAgdWludDMyX3QgZXhwZWN0ZWRSZW5kZXJQYXNzQ291bnQg
ICAgID0gY291bnRlcnMucmVuZGVyUGFzc2VzICsgMTsKKyAgICB1aW50MzJfdCBleHBlY3RlZFJl
bmRlclBhc3NDb3VudCA9IGdldFBlcmZDb3VudGVycygpLnJlbmRlclBhc3NlcyArIDE7CiAKICAg
ICAvLyBUaGlzIHRlc3Qgc3RhcnRzIHdpdGggYSBzbWFsbCBzY2lzc29yIGFuZCBncmFkdWFsbHkg
Z3Jvd3MgaXQgYW5kIGlzc3VlcyBkcmF3IGNhbGxzIGFuZAogICAgIC8vIHZhcmlvdXMga2luZHMg
b2YgY2xlYXJzOgpAQCAtMjgzOCw3ICsyOTE5LDcgQEAgVEVTVF9QKFZ1bGthblBlcmZvcm1hbmNl
Q291bnRlclRlc3QsIFNjaXNzb3JEb2VzTm90QnJlYWtSZW5kZXJQYXNzKQogICAgIEFTU0VSVF9H
TF9OT19FUlJPUigpOwogCiAgICAgLy8gVmVyaWZ5IHJlbmRlciBwYXNzIGNvdW50LgotICAgIEVY
UEVDVF9FUShjb3VudGVycy5yZW5kZXJQYXNzZXMsIGV4cGVjdGVkUmVuZGVyUGFzc0NvdW50KTsK
KyAgICBFWFBFQ1RfRVEoZ2V0UGVyZkNvdW50ZXJzKCkucmVuZGVyUGFzc2VzLCBleHBlY3RlZFJl
bmRlclBhc3NDb3VudCk7CiAKICAgICAvLyBNYWtlIHN1cmUgdGhlIHJlc3VsdCBpcyBjb3JyZWN0
OgogICAgIC8vCkBAIC0yOTQwLDYgKzMwMjEsOCBAQCBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VD
b3VudGVyVGVzdCwgU2Npc3NvckRvZXNOb3RCcmVha1JlbmRlclBhc3MpCiAvLyBUZXN0cyB0aGF0
IGNoYW5naW5nIFVCTyBiaW5kaW5ncyBkb2VzIG5vdCBhbGxvY2F0ZSBuZXcgZGVzY3JpcHRvciBz
ZXRzLgogVEVTVF9QKFZ1bGthblBlcmZvcm1hbmNlQ291bnRlclRlc3QsIENoYW5naW5nVUJPc0hp
dHNEZXNjcmlwdG9yU2V0Q2FjaGUpCiB7CisgICAgQU5HTEVfU0tJUF9URVNUX0lGKCFJc0dMRXh0
ZW5zaW9uRW5hYmxlZChrUGVyZk1vbml0b3JFeHRlbnNpb25OYW1lKSk7CisKICAgICAvLyBTZXQg
dXAgdHdvIFVCT3MsIG9uZSBmaWxsZWQgd2l0aCAiMSIgYW5kIHRoZSBzZWNvbmQgd2l0aCAiMiIu
CiAgICAgY29uc3RleHByIEdMc2l6ZWkga0NvdW50ID0gNjQ7CiAgICAgc3RkOjp2ZWN0b3I8R0xp
bnQ+IGRhdGExKGtDb3VudCwgMSk7CkBAIC0zMDM3LDcgKzMxMjAsNyBAQCB2b2lkIG1haW4oKQog
ICAgICAgICAvLyBDYXB0dXJlIHRoZSBhbGxvY2F0aW9ucyBjb3VudGVyIGFmdGVyIHRoZSBmaXJz
dCBydW4uCiAgICAgICAgIGlmIChpdGVyYXRpb24gPT0gMCkKICAgICAgICAgewotICAgICAgICAg
ICAgZGVzY3JpcHRvclNldEFsbG9jYXRpb25zQmVmb3JlID0gaGFja0FOR0xFKCkuZGVzY3JpcHRv
clNldEFsbG9jYXRpb25zOworICAgICAgICAgICAgZGVzY3JpcHRvclNldEFsbG9jYXRpb25zQmVm
b3JlID0gZ2V0UGVyZkNvdW50ZXJzKCkuZGVzY3JpcHRvclNldEFsbG9jYXRpb25zOwogICAgICAg
ICB9CiAgICAgfQogCkBAIC0zMDU5LDcgKzMxNDIsNyBAQCB2b2lkIG1haW4oKQogICAgIEVYUEVD
VF9FUShleHBlY3RlZERhdGEsIGFjdHVhbERhdGEpOwogCiAgICAgLy8gQ2hlY2sgZm9yIHVubmVj
ZXNzYXJ5IGRlc2NyaXB0b3Igc2V0IGFsbG9jYXRpb25zLgotICAgIHVpbnQzMl90IGRlc2NyaXB0
b3JTZXRBbGxvY2F0aW9uc0FmdGVyID0gaGFja0FOR0xFKCkuZGVzY3JpcHRvclNldEFsbG9jYXRp
b25zOworICAgIHVpbnQzMl90IGRlc2NyaXB0b3JTZXRBbGxvY2F0aW9uc0FmdGVyID0gZ2V0UGVy
ZkNvdW50ZXJzKCkuZGVzY3JpcHRvclNldEFsbG9jYXRpb25zOwogICAgIEVYUEVDVF9FUShkZXNj
cmlwdG9yU2V0QWxsb2NhdGlvbnNBZnRlciwgMHUpOwogfQogCkBAIC0zMDY3LDcgKzMxNTAsNyBA
QCB2b2lkIG1haW4oKQogLy8gd2FpdGluZyBmb3IgdGhlIEdQVSBhY2Nlc3MgdG8gY29tcGxldGUg
YmVmb3JlIHJldHVybmluZyBhIHBvaW50ZXIgdG8gdGhlIGJ1ZmZlci4KIFRFU1RfUChWdWxrYW5Q
ZXJmb3JtYW5jZUNvdW50ZXJUZXN0LCBNYXBwaW5nR3B1UmVhZE9ubHlCdWZmZXJHaG9zdHNCdWZm
ZXIpCiB7Ci0gICAgY29uc3Qgcng6OnZrOjpQZXJmQ291bnRlcnMgJmNvdW50ZXJzID0gaGFja0FO
R0xFKCk7CisgICAgQU5HTEVfU0tJUF9URVNUX0lGKCFJc0dMRXh0ZW5zaW9uRW5hYmxlZChrUGVy
Zk1vbml0b3JFeHRlbnNpb25OYW1lKSk7CiAKICAgICAvLyAxLiBDcmVhdGUgYSBidWZmZXIsIG1h
cCBpdCwgZmlsbCBpdCB3aXRoIHJlZAogICAgIC8vIDIuIERyYXcgd2l0aCBidWZmZXIgKEdQVSBy
ZWFkLW9ubHkpCkBAIC0zMTI5LDggKzMyMTIsOCBAQCB2b2lkIG1haW4oKQogICAgIHZvaWQgKm1h
cHBlZEJ1ZmZlciA9CiAgICAgICAgIGdsTWFwQnVmZmVyUmFuZ2UoR0xfVU5JRk9STV9CVUZGRVIs
IDAsIHNpemVvZihrSW5pdGlhbERhdGEpLCBHTF9NQVBfV1JJVEVfQklUKTsKICAgICAvLyAncmVu
ZGVyUGFzc2VzID09IDAnIGhlcmUgbWVhbnMgdGhlIHJlbmRlciBwYXNzIHdhcyBicm9rZW4gYW5k
IGEgbmV3IG9uZSB3YXMgc3RhcnRlZC4KLSAgICBBU1NFUlRfRVEoY291bnRlcnMucmVuZGVyUGFz
c2VzLCAxdSk7Ci0gICAgQVNTRVJUX0VRKGNvdW50ZXJzLmJ1ZmZlcnNHaG9zdGVkLCAxdSk7Cisg
ICAgQVNTRVJUX0VRKGdldFBlcmZDb3VudGVycygpLnJlbmRlclBhc3NlcywgMXUpOworICAgIEFT
U0VSVF9FUShnZXRQZXJmQ291bnRlcnMoKS5idWZmZXJzR2hvc3RlZCwgMXUpOwogCiAgICAgbWVt
Y3B5KG1hcHBlZEJ1ZmZlciwga1VwZGF0ZURhdGExLmRhdGEoKSwgc2l6ZW9mKGtJbml0aWFsRGF0
YSkpOwogCkBAIC0zMTQzLDEyICszMjI2LDEyIEBAIHZvaWQgbWFpbigpCiAKICAgICBkcmF3UXVh
ZCh2ZXJpZnlVYm8sIGVzc2wzX3NoYWRlcnM6OlBvc2l0aW9uQXR0cmliKCksIDAuNSk7CiAgICAg
QVNTRVJUX0dMX05PX0VSUk9SKCk7Ci0gICAgQVNTRVJUX0VRKGNvdW50ZXJzLnJlbmRlclBhc3Nl
cywgMXUpOworICAgIEFTU0VSVF9FUShnZXRQZXJmQ291bnRlcnMoKS5yZW5kZXJQYXNzZXMsIDF1
KTsKIAogICAgIC8vIFVwZGF0ZSB0aGUgYnVmZmVyIHdpdGggZ2xCdWZmZXJTdWJEYXRhCiAgICAg
Z2xCdWZmZXJTdWJEYXRhKEdMX1VOSUZPUk1fQlVGRkVSLCAwLCBzaXplb2Yoa1VwZGF0ZURhdGEy
KSwga1VwZGF0ZURhdGEyLmRhdGEoKSk7CiAgICAgQVNTRVJUX0dMX05PX0VSUk9SKCk7Ci0gICAg
QVNTRVJUX0VRKGNvdW50ZXJzLnJlbmRlclBhc3NlcywgMXUpOworICAgIEFTU0VSVF9FUShnZXRQ
ZXJmQ291bnRlcnMoKS5yZW5kZXJQYXNzZXMsIDF1KTsKIAogICAgIC8vIFZlcmlmeSB0aGF0IHRo
ZSBidWZmZXIgaGFzIHRoZSB1cGRhdGVkIHZhbHVlLgogICAgIGdsVW5pZm9ybTF1aShleHBlY3RM
b2MsIGtVcGRhdGVEYXRhMlswXS5hc1VpbnQoKSk7CkBAIC0zMTU2LDcgKzMyMzksNyBAQCB2b2lk
IG1haW4oKQogCiAgICAgZHJhd1F1YWQodmVyaWZ5VWJvLCBlc3NsM19zaGFkZXJzOjpQb3NpdGlv
bkF0dHJpYigpLCAwLjUpOwogICAgIEFTU0VSVF9HTF9OT19FUlJPUigpOwotICAgIEFTU0VSVF9F
UShjb3VudGVycy5yZW5kZXJQYXNzZXMsIDF1KTsKKyAgICBBU1NFUlRfRVEoZ2V0UGVyZkNvdW50
ZXJzKCkucmVuZGVyUGFzc2VzLCAxdSk7CiAKICAgICBFWFBFQ1RfUElYRUxfQ09MT1JfRVEoMCwg
MCwgR0xDb2xvcjo6Y3lhbik7CiB9CkBAIC0zMTY0LDYgKzMyNDcsOCBAQCB2b2lkIG1haW4oKQog
Ly8gVmVyaWZpZXMgdGhhdCBCdWZmZXJTdWJEYXRhIGNhbGxzIGRvbid0IHRyaWdnZXIgc3RhdGUg
dXBkYXRlcyBmb3Igbm9uLXRyYW5zbGF0ZWQgZm9ybWF0cy4KIFRFU1RfUChWdWxrYW5QZXJmb3Jt
YW5jZUNvdW50ZXJUZXN0LCBCdWZmZXJTdWJEYXRhU2hvdWxkTm90VHJpZ2dlclN5bmNTdGF0ZSkK
IHsKKyAgICBBTkdMRV9TS0lQX1RFU1RfSUYoIUlzR0xFeHRlbnNpb25FbmFibGVkKGtQZXJmTW9u
aXRvckV4dGVuc2lvbk5hbWUpKTsKKwogICAgIEFOR0xFX0dMX1BST0dSQU0odGVzdFByb2dyYW0s
IGVzc2wxX3NoYWRlcnM6OnZzOjpTaW1wbGUoKSwgZXNzbDFfc2hhZGVyczo6ZnM6OkdyZWVuKCkp
OwogICAgIGdsVXNlUHJvZ3JhbSh0ZXN0UHJvZ3JhbSk7CiAKQEAgLTMxNzgsNyArMzI2Myw3IEBA
IFRFU1RfUChWdWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJUZXN0LCBCdWZmZXJTdWJEYXRhU2hvdWxk
Tm90VHJpZ2dlclN5bmNTdGF0ZSkKICAgICBBU1NFUlRfR0xfTk9fRVJST1IoKTsKICAgICBFWFBF
Q1RfUElYRUxfQ09MT1JfRVEoMCwgMCwgR0xDb2xvcjo6Z3JlZW4pOwogCi0gICAgRVhQRUNUX0VR
KGhhY2tBTkdMRSgpLnZlcnRleEFycmF5U3luY1N0YXRlQ2FsbHMsIDF1KTsKKyAgICBFWFBFQ1Rf
RVEoZ2V0UGVyZkNvdW50ZXJzKCkudmVydGV4QXJyYXlTeW5jU3RhdGVDYWxscywgMXUpOwogCiAg
ICAgY29uc3Qgc3RkOjphcnJheTxWZWN0b3IzLCA2PiAmcXVhZFZlcnRpY2VzID0gR2V0UXVhZFZl
cnRpY2VzKCk7CiAgICAgc2l6ZV90IGJ1ZmZlclNpemUgICAgICAgICAgICAgICAgICAgICAgICAg
ID0gc2l6ZW9mKHF1YWRWZXJ0aWNlc1swXSkgKiBxdWFkVmVydGljZXMuc2l6ZSgpOwpAQCAtMzE4
OSw3ICszMjc0LDcgQEAgVEVTVF9QKFZ1bGthblBlcmZvcm1hbmNlQ291bnRlclRlc3QsIEJ1ZmZl
clN1YkRhdGFTaG91bGROb3RUcmlnZ2VyU3luY1N0YXRlKQogICAgIEFTU0VSVF9HTF9OT19FUlJP
UigpOwogICAgIEVYUEVDVF9QSVhFTF9DT0xPUl9FUSgwLCAwLCBHTENvbG9yOjpncmVlbik7CiAK
LSAgICBFWFBFQ1RfRVEoaGFja0FOR0xFKCkudmVydGV4QXJyYXlTeW5jU3RhdGVDYWxscywgMXUp
OworICAgIEVYUEVDVF9FUShnZXRQZXJmQ291bnRlcnMoKS52ZXJ0ZXhBcnJheVN5bmNTdGF0ZUNh
bGxzLCAxdSk7CiAKICAgICAvLyBWZXJpZnkgdGhlIEJ1ZmZlckRhdGEgd2l0aCBhIHdob2xlIGJ1
ZmZlciBzaXplIGlzIHRyZWF0ZWQgbGlrZSB0aGUgU3ViRGF0YSBjYWxsLgogICAgIGdsQnVmZmVy
RGF0YShHTF9BUlJBWV9CVUZGRVIsIHNpemVvZihxdWFkVmVydGljZXNbMF0pICogcXVhZFZlcnRp
Y2VzLnNpemUoKSwKQEAgLTMxOTgsMTcgKzMyODMsMTcgQEAgVEVTVF9QKFZ1bGthblBlcmZvcm1h
bmNlQ291bnRlclRlc3QsIEJ1ZmZlclN1YkRhdGFTaG91bGROb3RUcmlnZ2VyU3luY1N0YXRlKQog
ICAgIEFTU0VSVF9HTF9OT19FUlJPUigpOwogICAgIEVYUEVDVF9QSVhFTF9DT0xPUl9FUSgwLCAw
LCBHTENvbG9yOjpncmVlbik7CiAKLSAgICBFWFBFQ1RfRVEoaGFja0FOR0xFKCkudmVydGV4QXJy
YXlTeW5jU3RhdGVDYWxscywgMXUpOworICAgIEVYUEVDVF9FUShnZXRQZXJmQ291bnRlcnMoKS52
ZXJ0ZXhBcnJheVN5bmNTdGF0ZUNhbGxzLCAxdSk7CiB9CiAKIC8vIFZlcmlmaWVzIHRoYXQgcmVu
ZGVyaW5nIHRvIGJhY2tidWZmZXIgZGlzY2FyZHMgZGVwdGgvc3RlbmNpbC4KIFRFU1RfUChWdWxr
YW5QZXJmb3JtYW5jZUNvdW50ZXJUZXN0LCBTd2FwU2hvdWxkSW52YWxpZGF0ZURlcHRoU3RlbmNp
bCkKIHsKLSAgICBjb25zdCByeDo6dms6OlBlcmZDb3VudGVycyAmY291bnRlcnMgPSBoYWNrQU5H
TEUoKTsKLSAgICByeDo6dms6OlBlcmZDb3VudGVycyBleHBlY3RlZDsKKyAgICBBTkdMRV9TS0lQ
X1RFU1RfSUYoIUlzR0xFeHRlbnNpb25FbmFibGVkKGtQZXJmTW9uaXRvckV4dGVuc2lvbk5hbWUp
KTsKKyAgICBhbmdsZTo6VnVsa2FuUGVyZkNvdW50ZXJzIGV4cGVjdGVkOwogCiAgICAgLy8gRXhw
ZWN0IHJwQ291bnQrMSwgZGVwdGgoQ2xlYXJzKzEsIExvYWRzKzAsIFN0b3JlcyswKSwgc3RlbmNp
bChDbGVhcnMrMSwgTG9hZCswLCBTdG9yZXMrMCkKLSAgICBzZXRFeHBlY3RlZENvdW50ZXJzRm9y
SW52YWxpZGF0ZVRlc3QoY291bnRlcnMsIDEsIDEsIDAsIDAsIDEsIDAsIDAsICZleHBlY3RlZCk7
CisgICAgc2V0RXhwZWN0ZWRDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGdldFBlcmZDb3VudGVy
cygpLCAxLCAxLCAwLCAwLCAxLCAwLCAwLCAmZXhwZWN0ZWQpOwogCiAgICAgLy8gQ2xlYXIgdG8g
dmVyaWZ5IHRoYXQgX3NvbWVfIGNvdW50ZXJzIGRpZCBjaGFuZ2UgKGFzIG9wcG9zZWQgdG8gZm9y
IGV4YW1wbGUgYWxsIGJlaW5nIHJlc2V0IG9uCiAgICAgLy8gc3dhcCkKQEAgLTMyMjcsMTcgKzMz
MTIsMTcgQEAgVEVTVF9QKFZ1bGthblBlcmZvcm1hbmNlQ291bnRlclRlc3QsIFN3YXBTaG91bGRJ
bnZhbGlkYXRlRGVwdGhTdGVuY2lsKQogCiAgICAgLy8gU3dhcCBidWZmZXJzIHRvIGltcGxpY2l0
ZWx5IHJlc29sdmUKICAgICBzd2FwQnVmZmVycygpOwotICAgIGNvbXBhcmVEZXB0aFN0ZW5jaWxD
b3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGNvdW50ZXJzLCBleHBlY3RlZCk7CisgICAgY29tcGFy
ZURlcHRoU3RlbmNpbENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoZ2V0UGVyZkNvdW50ZXJzKCks
IGV4cGVjdGVkKTsKIH0KIAogLy8gVmVyaWZpZXMgdGhhdCByZW5kZXJpbmcgdG8gTVNBQSBiYWNr
YnVmZmVyIGRpc2NhcmRzIGRlcHRoL3N0ZW5jaWwuCiBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VD
b3VudGVyVGVzdF9NU0FBLCBTd2FwU2hvdWxkSW52YWxpZGF0ZURlcHRoU3RlbmNpbCkKIHsKLSAg
ICBjb25zdCByeDo6dms6OlBlcmZDb3VudGVycyAmY291bnRlcnMgPSBoYWNrQU5HTEUoKTsKLSAg
ICByeDo6dms6OlBlcmZDb3VudGVycyBleHBlY3RlZDsKKyAgICBBTkdMRV9TS0lQX1RFU1RfSUYo
IUlzR0xFeHRlbnNpb25FbmFibGVkKGtQZXJmTW9uaXRvckV4dGVuc2lvbk5hbWUpKTsKKyAgICBh
bmdsZTo6VnVsa2FuUGVyZkNvdW50ZXJzIGV4cGVjdGVkOwogCiAgICAgLy8gRXhwZWN0IHJwQ291
bnQrMSwgZGVwdGgoQ2xlYXJzKzEsIExvYWRzKzAsIFN0b3JlcyswKSwgc3RlbmNpbChDbGVhcnMr
MSwgTG9hZCswLCBTdG9yZXMrMCkKLSAgICBzZXRFeHBlY3RlZENvdW50ZXJzRm9ySW52YWxpZGF0
ZVRlc3QoY291bnRlcnMsIDEsIDEsIDAsIDAsIDEsIDAsIDAsICZleHBlY3RlZCk7CisgICAgc2V0
RXhwZWN0ZWRDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGdldFBlcmZDb3VudGVycygpLCAxLCAx
LCAwLCAwLCAxLCAwLCAwLCAmZXhwZWN0ZWQpOwogCiAgICAgLy8gQ2xlYXIgdG8gdmVyaWZ5IHRo
YXQgX3NvbWVfIGNvdW50ZXJzIGRpZCBjaGFuZ2UgKGFzIG9wcG9zZWQgdG8gZm9yIGV4YW1wbGUg
YWxsIGJlaW5nIHJlc2V0IG9uCiAgICAgLy8gc3dhcCkKQEAgLTMyNTYsMTIgKzMzNDEsMTQgQEAg
VEVTVF9QKFZ1bGthblBlcmZvcm1hbmNlQ291bnRlclRlc3RfTVNBQSwgU3dhcFNob3VsZEludmFs
aWRhdGVEZXB0aFN0ZW5jaWwpCiAKICAgICAvLyBTd2FwIGJ1ZmZlcnMgdG8gaW1wbGljaXRlbHkg
cmVzb2x2ZQogICAgIHN3YXBCdWZmZXJzKCk7Ci0gICAgY29tcGFyZURlcHRoU3RlbmNpbENvdW50
ZXJzRm9ySW52YWxpZGF0ZVRlc3QoY291bnRlcnMsIGV4cGVjdGVkKTsKKyAgICBjb21wYXJlRGVw
dGhTdGVuY2lsQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChnZXRQZXJmQ291bnRlcnMoKSwgZXhw
ZWN0ZWQpOwogfQogCiAvLyBUZXN0cyB0aGF0IHVuaWZvcm0gdXBkYXRlcyBldmVudHVhbGx5IHN0
b3AgdXBkYXRpbmcgZGVzY3JpcHRvciBzZXRzLgogVEVTVF9QKFZ1bGthblBlcmZvcm1hbmNlQ291
bnRlclRlc3QsIFVuaWZvcm1VcGRhdGVzSGl0RGVzY3JpcHRvclNldENhY2hlKQogeworICAgIEFO
R0xFX1NLSVBfVEVTVF9JRighSXNHTEV4dGVuc2lvbkVuYWJsZWQoa1BlcmZNb25pdG9yRXh0ZW5z
aW9uTmFtZSkpOworCiAgICAgQU5HTEVfR0xfUFJPR1JBTSh0ZXN0UHJvZ3JhbSwgZXNzbDFfc2hh
ZGVyczo6dnM6OlNpbXBsZSgpLCBlc3NsMV9zaGFkZXJzOjpmczo6VW5pZm9ybUNvbG9yKCkpOwog
ICAgIGdsVXNlUHJvZ3JhbSh0ZXN0UHJvZ3JhbSk7CiAgICAgR0xpbnQgcG9zTG9jID0gZ2xHZXRB
dHRyaWJMb2NhdGlvbih0ZXN0UHJvZ3JhbSwgZXNzbDFfc2hhZGVyczo6UG9zaXRpb25BdHRyaWIo
KSk7CkBAIC0zMjk4LDcgKzMzODUsNyBAQCBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVy
VGVzdCwgVW5pZm9ybVVwZGF0ZXNIaXREZXNjcmlwdG9yU2V0Q2FjaGUpCiAKICAgICBBU1NFUlRf
R0xfTk9fRVJST1IoKTsKIAotICAgIHVpbnQzMl90IGV4cGVjdGVkQ2FjaGVNaXNzZXMgPSBoYWNr
QU5HTEUoKS51bmlmb3Jtc0FuZFhmYkRlc2NyaXB0b3JTZXRDYWNoZU1pc3NlczsKKyAgICB1aW50
MzJfdCBleHBlY3RlZENhY2hlTWlzc2VzID0gZ2V0UGVyZkNvdW50ZXJzKCkudW5pZm9ybXNBbmRY
ZmJEZXNjcmlwdG9yU2V0Q2FjaGVNaXNzZXM7CiAgICAgRVhQRUNUX0dUKGV4cGVjdGVkQ2FjaGVN
aXNzZXMsIDB1KTsKIAogICAgIC8vIFNlY29uZCBwYXNzOiBlbnN1cmUgYWxsIHRoZSB1bmlmb3Jt
cyBhcmUgY2FjaGVkLgpAQCAtMzMxNSwxMiArMzQwMiwxMiBAQCBURVNUX1AoVnVsa2FuUGVyZm9y
bWFuY2VDb3VudGVyVGVzdCwgVW5pZm9ybVVwZGF0ZXNIaXREZXNjcmlwdG9yU2V0Q2FjaGUpCiAK
ICAgICBBU1NFUlRfR0xfTk9fRVJST1IoKTsKIAotICAgIHVpbnQzMl90IGFjdHVhbENhY2hlTWlz
c2VzID0gaGFja0FOR0xFKCkudW5pZm9ybXNBbmRYZmJEZXNjcmlwdG9yU2V0Q2FjaGVNaXNzZXM7
CisgICAgdWludDMyX3QgYWN0dWFsQ2FjaGVNaXNzZXMgPSBnZXRQZXJmQ291bnRlcnMoKS51bmlm
b3Jtc0FuZFhmYkRlc2NyaXB0b3JTZXRDYWNoZU1pc3NlczsKICAgICBFWFBFQ1RfRVEoZXhwZWN0
ZWRDYWNoZU1pc3NlcywgYWN0dWFsQ2FjaGVNaXNzZXMpOwogfQogCi1BTkdMRV9JTlNUQU5USUFU
RV9URVNUKFZ1bGthblBlcmZvcm1hbmNlQ291bnRlclRlc3QsIEVTM19WVUxLQU4oKSk7Ci1BTkdM
RV9JTlNUQU5USUFURV9URVNUKFZ1bGthblBlcmZvcm1hbmNlQ291bnRlclRlc3RfRVMzMSwgRVMz
MV9WVUxLQU4oKSk7Ci1BTkdMRV9JTlNUQU5USUFURV9URVNUKFZ1bGthblBlcmZvcm1hbmNlQ291
bnRlclRlc3RfTVNBQSwgRVMzX1ZVTEtBTigpKTsKK0FOR0xFX0lOU1RBTlRJQVRFX1RFU1QoVnVs
a2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdCwgRVMzX1ZVTEtBTigpLCBFUzNfVlVMS0FOX1NXSUZU
U0hBREVSKCkpOworQU5HTEVfSU5TVEFOVElBVEVfVEVTVChWdWxrYW5QZXJmb3JtYW5jZUNvdW50
ZXJUZXN0X0VTMzEsIEVTMzFfVlVMS0FOKCksIEVTMzFfVlVMS0FOX1NXSUZUU0hBREVSKCkpOwor
QU5HTEVfSU5TVEFOVElBVEVfVEVTVChWdWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJUZXN0X01TQUEs
IEVTM19WVUxLQU4oKSwgRVMzX1ZVTEtBTl9TV0lGVFNIQURFUigpKTsKIAogfSAgLy8gYW5vbnlt
b3VzIG5hbWVzcGFjZQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rl
c3RzL3BlcmZfdGVzdHMvQU5HTEVQZXJmVGVzdC5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zcmMvdGVzdHMvcGVyZl90ZXN0cy9BTkdMRVBlcmZUZXN0LmNwcAppbmRleCA4YWU1NzU0MjEw
NzhmMGYxOTc2MDdkYWViN2M0Y2E2MDE5MjZjZjIzLi5kNjI2ODBkN2UwYzMxMjE5MWM3MTg5ODM2
ZjYyMDdkZGEwOTdkY2Q5IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
dGVzdHMvcGVyZl90ZXN0cy9BTkdMRVBlcmZUZXN0LmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvdGVzdHMvcGVyZl90ZXN0cy9BTkdMRVBlcmZUZXN0LmNwcApAQCAtMTMsNiAr
MTMsNyBAQAogI2luY2x1ZGUgImNvbW1vbi9kZWJ1Zy5oIgogI2luY2x1ZGUgImNvbW1vbi9tYXRo
dXRpbC5oIgogI2luY2x1ZGUgImNvbW1vbi9wbGF0Zm9ybS5oIgorI2luY2x1ZGUgImNvbW1vbi9z
dHJpbmdfdXRpbHMuaCIKICNpbmNsdWRlICJjb21tb24vc3lzdGVtX3V0aWxzLmgiCiAjaW5jbHVk
ZSAiY29tbW9uL3V0aWxpdGllcy5oIgogI2luY2x1ZGUgInRlc3RfdXRpbHMvcnVubmVyL1Rlc3RT
dWl0ZS5oIgpAQCAtMjUsNiArMjYsNyBAQAogI2luY2x1ZGUgPGNtYXRoPgogI2luY2x1ZGUgPGZz
dHJlYW0+CiAjaW5jbHVkZSA8aW9zdHJlYW0+CisjaW5jbHVkZSA8bnVtZXJpYz4KICNpbmNsdWRl
IDxzc3RyZWFtPgogCiAjaW5jbHVkZSA8cmFwaWRqc29uL2RvY3VtZW50Lmg+CkBAIC00NSw2ICs0
Nyw4IEBAIGNvbnN0ZXhwciBzaXplX3Qga0luaXRpYWxUcmFjZUV2ZW50QnVmZmVyU2l6ZSA9IDUw
MDAwOwogY29uc3RleHByIGRvdWJsZSBrTWlsbGlTZWNvbmRzUGVyU2Vjb25kICAgICAgID0gMWUz
OwogY29uc3RleHByIGRvdWJsZSBrTWljcm9TZWNvbmRzUGVyU2Vjb25kICAgICAgID0gMWU2Owog
Y29uc3RleHByIGRvdWJsZSBrTmFub1NlY29uZHNQZXJTZWNvbmQgICAgICAgID0gMWU5OworY29u
c3RleHByIGNoYXIga1BlYWtNZW1vcnlNZXRyaWNbXSAgICAgICAgICAgID0gIi5wZWFrX21lbW9y
eSI7Citjb25zdGV4cHIgY2hhciBrTWVkaWFuTWVtb3J5TWV0cmljW10gICAgICAgICAgPSAiLm1l
ZGlhbl9tZW1vcnkiOwogCiBzdHJ1Y3QgVHJhY2VDYXRlZ29yeQogewpAQCAtMjE3LDEyICsyMjEs
OSBAQCBBTkdMRV9NQVlCRV9VTlVTRUQgdm9pZCBLSFJPTk9TX0FQSUVOVFJZIFBlcmZUZXN0RGVi
dWdDYWxsYmFjayhHTGVudW0gc291cmNlLAogCiBkb3VibGUgQ29tcHV0ZU1lYW4oY29uc3Qgc3Rk
Ojp2ZWN0b3I8ZG91YmxlPiAmdmFsdWVzKQogewotICAgIGRvdWJsZSBtZWFuID0gMDsKLSAgICBm
b3IgKGRvdWJsZSB2YWx1ZSA6IHZhbHVlcykKLSAgICB7Ci0gICAgICAgIG1lYW4gKz0gdmFsdWU7
Ci0gICAgfQotICAgIG1lYW4gLz0gc3RhdGljX2Nhc3Q8ZG91YmxlPih2YWx1ZXMuc2l6ZSgpKTsK
KyAgICBkb3VibGUgc3VtID0gc3RkOjphY2N1bXVsYXRlKHZhbHVlcy5iZWdpbigpLCB2YWx1ZXMu
ZW5kKCksIDAuMCk7CisKKyAgICBkb3VibGUgbWVhbiA9IHN1bSAvIHN0YXRpY19jYXN0PGRvdWJs
ZT4odmFsdWVzLnNpemUoKSk7CiAgICAgcmV0dXJuIG1lYW47CiB9CiB9ICAvLyBhbm9ueW1vdXMg
bmFtZXNwYWNlCkBAIC0yOTcsNyArMjk4LDcgQEAgdm9pZCBBTkdMRVBlcmZUZXN0OjpydW4oKQog
ICAgIGZvciAodWludDMyX3QgdHJpYWwgPSAwOyB0cmlhbCA8IG51bVRyaWFsczsgKyt0cmlhbCkK
ICAgICB7CiAgICAgICAgIGRvUnVuTG9vcChnTWF4VHJpYWxUaW1lU2Vjb25kcywgbVN0ZXBzVG9S
dW4sIFJ1bkxvb3BQb2xpY3k6OlJ1bkNvbnRpbnVvdXNseSk7Ci0gICAgICAgIHByaW50UmVzdWx0
cygpOworICAgICAgICBwcm9jZXNzUmVzdWx0cygpOwogICAgICAgICBpZiAoZ1ZlcmJvc2VMb2dn
aW5nKQogICAgICAgICB7CiAgICAgICAgICAgICBkb3VibGUgdHJpYWxUaW1lID0gbVRpbWVyLmdl
dEVsYXBzZWRXYWxsQ2xvY2tUaW1lKCk7CkBAIC0zODgsODYgKzM4OSwxMzYgQEAgdm9pZCBBTkdM
RVBlcmZUZXN0OjpTZXRVcCgpIHt9CiAKIHZvaWQgQU5HTEVQZXJmVGVzdDo6VGVhckRvd24oKSB7
fQogCi1kb3VibGUgQU5HTEVQZXJmVGVzdDo6cHJpbnRSZXN1bHRzKCkKK3ZvaWQgQU5HTEVQZXJm
VGVzdDo6cHJvY2Vzc1Jlc3VsdHMoKQogewotICAgIC8vIEdldCBjcHUgdGltZSBmaXJzdCwgc28g
aXQgZG9lc24ndCBpbmNsdWRlIHRoZSBjcHUgdGltZSBvZiBnZXR0aW5nIHRoZQotICAgIC8vIHdh
bGwgdGltZS4gV2Ugd2FudCBjcHUgdGltZSB0byBiZSBtb3JlIGFjY3VyYXRlLgotICAgIGRvdWJs
ZSBlbGFwc2VkVGltZVNlY29uZHNbM10gPSB7Ci0gICAgICAgIG1UaW1lci5nZXRFbGFwc2VkQ3B1
VGltZSgpLAotICAgICAgICBtVGltZXIuZ2V0RWxhcHNlZFdhbGxDbG9ja1RpbWUoKSwKLSAgICAg
ICAgbUdQVVRpbWVOcyAqIDFlLTksCi0gICAgfTsKLQotICAgIGNvbnN0IGNoYXIgKmNsb2NrTmFt
ZXNbM10gPSB7Ci0gICAgICAgICIuY3B1X3RpbWUiLAotICAgICAgICAiLndhbGxfdGltZSIsCi0g
ICAgICAgICIuZ3B1X3RpbWUiLAotICAgIH07Ci0KLSAgICAvLyBJZiBtZWFzdXJlZCBncHUgdGlt
ZSBpcyBub24temVybywgcHJpbnQgdGhhdCB0b28uCi0gICAgc2l6ZV90IGNsb2Nrc1RvT3V0cHV0
ID0gbUdQVVRpbWVOcyA+IDAgPyAzIDogMjsKLQotICAgIGRvdWJsZSByZXRWYWx1ZSA9IDAuMDsK
LSAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IGNsb2Nrc1RvT3V0cHV0OyArK2kpCi0gICAgewot
ICAgICAgICBkb3VibGUgc2Vjb25kc1BlclN0ZXAgPQotICAgICAgICAgICAgZWxhcHNlZFRpbWVT
ZWNvbmRzW2ldIC8gc3RhdGljX2Nhc3Q8ZG91YmxlPihtVHJpYWxOdW1TdGVwc1BlcmZvcm1lZCk7
Ci0gICAgICAgIGRvdWJsZSBzZWNvbmRzUGVySXRlcmF0aW9uID0gc2Vjb25kc1BlclN0ZXAgLyBz
dGF0aWNfY2FzdDxkb3VibGU+KG1JdGVyYXRpb25zUGVyU3RlcCk7Ci0KLSAgICAgICAgcGVyZl90
ZXN0OjpNZXRyaWNJbmZvIG1ldHJpY0luZm87Ci0gICAgICAgIHN0ZDo6c3RyaW5nIHVuaXRzOwot
ICAgICAgICAvLyBMYXppbHkgcmVnaXN0ZXIgdGhlIG1ldHJpYywgcmUtdXNpbmcgdGhlIGV4aXN0
aW5nIHVuaXRzIGlmIGl0IGlzCi0gICAgICAgIC8vIGFscmVhZHkgcmVnaXN0ZXJlZC4KLSAgICAg
ICAgaWYgKCFtUmVwb3J0ZXItPkdldE1ldHJpY0luZm8oY2xvY2tOYW1lc1tpXSwgJm1ldHJpY0lu
Zm8pKQotICAgICAgICB7Ci0gICAgICAgICAgICBwcmludGYoIlNlY29uZHMgcGVyIGl0ZXJhdGlv
bjogJWxmXG4iLCBzZWNvbmRzUGVySXRlcmF0aW9uKTsKLSAgICAgICAgICAgIHVuaXRzID0gc2Vj
b25kc1Blckl0ZXJhdGlvbiA+IDFlLTMgPyAidXMiIDogIm5zIjsKLSAgICAgICAgICAgIG1SZXBv
cnRlci0+UmVnaXN0ZXJJbXBvcnRhbnRNZXRyaWMoY2xvY2tOYW1lc1tpXSwgdW5pdHMpOwotICAg
ICAgICB9Ci0gICAgICAgIGVsc2UKKyAgICBwcm9jZXNzQ2xvY2tSZXN1bHQoIi5jcHVfdGltZSIs
IG1UaW1lci5nZXRFbGFwc2VkQ3B1VGltZSgpKTsKKyAgICBwcm9jZXNzQ2xvY2tSZXN1bHQoIi53
YWxsX3RpbWUiLCBtVGltZXIuZ2V0RWxhcHNlZFdhbGxDbG9ja1RpbWUoKSk7CisKKyAgICBpZiAo
bUdQVVRpbWVOcyA+IDApCisgICAgeworICAgICAgICBwcm9jZXNzQ2xvY2tSZXN1bHQoIi5ncHVf
dGltZSIsIG1HUFVUaW1lTnMgKiAxZS05KTsKKyAgICB9CisKKyAgICBpZiAoZ1ZlcmJvc2VMb2dn
aW5nKQorICAgIHsKKyAgICAgICAgZG91YmxlIGZwcyA9IHN0YXRpY19jYXN0PGRvdWJsZT4obVRy
aWFsTnVtU3RlcHNQZXJmb3JtZWQgKiBtSXRlcmF0aW9uc1BlclN0ZXApIC8KKyAgICAgICAgICAg
ICAgICAgICAgIG1UaW1lci5nZXRFbGFwc2VkV2FsbENsb2NrVGltZSgpOworICAgICAgICBwcmlu
dGYoIlJhbiAlMC4ybGYgaXRlcmF0aW9ucyBwZXIgc2Vjb25kXG4iLCBmcHMpOworICAgIH0KKwor
ICAgIGlmIChnQ2FsaWJyYXRpb24pCisgICAgeworICAgICAgICBtUmVwb3J0ZXItPkFkZFJlc3Vs
dCgiLnN0ZXBzX3RvX3J1biIsIHN0YXRpY19jYXN0PHNpemVfdD4obVN0ZXBzVG9SdW4pKTsKKyAg
ICB9CisgICAgZWxzZQorICAgIHsKKyAgICAgICAgbVJlcG9ydGVyLT5BZGRSZXN1bHQoIi50cmlh
bF9zdGVwcyIsIHN0YXRpY19jYXN0PHNpemVfdD4obVRyaWFsTnVtU3RlcHNQZXJmb3JtZWQpKTsK
KyAgICAgICAgbVJlcG9ydGVyLT5BZGRSZXN1bHQoIi50b3RhbF9zdGVwcyIsIHN0YXRpY19jYXN0
PHNpemVfdD4obVRvdGFsTnVtU3RlcHNQZXJmb3JtZWQpKTsKKyAgICB9CisKKyAgICBpZiAoIW1Q
cm9jZXNzTWVtb3J5VXNhZ2VLQlNhbXBsZXMuZW1wdHkoKSkKKyAgICB7CisgICAgICAgIHN0ZDo6
c29ydChtUHJvY2Vzc01lbW9yeVVzYWdlS0JTYW1wbGVzLmJlZ2luKCksIG1Qcm9jZXNzTWVtb3J5
VXNhZ2VLQlNhbXBsZXMuZW5kKCkpOworCisgICAgICAgIC8vIENvbXB1dGUgbWVkaWFuLgorICAg
ICAgICBzaXplX3QgbWVkaWFuSW5kZXggICAgICA9IG1Qcm9jZXNzTWVtb3J5VXNhZ2VLQlNhbXBs
ZXMuc2l6ZSgpIC8gMjsKKyAgICAgICAgdWludDY0X3QgbWVkaWFuTWVtb3J5S0IgPSBtUHJvY2Vz
c01lbW9yeVVzYWdlS0JTYW1wbGVzW21lZGlhbkluZGV4XTsKKyAgICAgICAgYXV0byBwZWFrTWVt
b3J5SXRlcmF0b3IgPSBzdGQ6Om1heF9lbGVtZW50KG1Qcm9jZXNzTWVtb3J5VXNhZ2VLQlNhbXBs
ZXMuYmVnaW4oKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIG1Qcm9jZXNzTWVtb3J5VXNhZ2VLQlNhbXBsZXMuZW5kKCkpOworICAgICAgICB1aW50
NjRfdCBwZWFrTWVtb3J5S0IgICA9ICpwZWFrTWVtb3J5SXRlcmF0b3I7CisKKyAgICAgICAgcHJv
Y2Vzc01lbW9yeVJlc3VsdChrTWVkaWFuTWVtb3J5TWV0cmljLCBtZWRpYW5NZW1vcnlLQik7Cisg
ICAgICAgIHByb2Nlc3NNZW1vcnlSZXN1bHQoa1BlYWtNZW1vcnlNZXRyaWMsIHBlYWtNZW1vcnlL
Qik7CisgICAgfQorCisgICAgZm9yIChjb25zdCBhdXRvICZpdGVyIDogbVBlcmZDb3VudGVySW5m
bykKKyAgICB7CisgICAgICAgIGNvbnN0IHN0ZDo6c3RyaW5nICZjb3VudGVyTmFtZSA9IGl0ZXIu
c2Vjb25kLm5hbWU7CisgICAgICAgIHN0ZDo6dmVjdG9yPEdMdWludD4gc2FtcGxlcyAgICA9IGl0
ZXIuc2Vjb25kLnNhbXBsZXM7CisKKyAgICAgICAgc2l6ZV90IG1pZHBvaW50ID0gc2FtcGxlcy5z
aXplKCkgPj4gMTsKKyAgICAgICAgc3RkOjpudGhfZWxlbWVudChzYW1wbGVzLmJlZ2luKCksIHNh
bXBsZXMuYmVnaW4oKSArIG1pZHBvaW50LCBzYW1wbGVzLmVuZCgpKTsKKwogICAgICAgICB7Ci0g
ICAgICAgICAgICB1bml0cyA9IG1ldHJpY0luZm8udW5pdHM7CisgICAgICAgICAgICBzdGQ6OnN0
cmluZ3N0cmVhbSBtZWRpYW5TdHI7CisgICAgICAgICAgICBtZWRpYW5TdHIgPDwgIi4iIDw8IGNv
dW50ZXJOYW1lIDw8ICJfbWVkaWFuIjsKKyAgICAgICAgICAgIHN0ZDo6c3RyaW5nIG1lZGlhbk5h
bWUgPSBtZWRpYW5TdHIuc3RyKCk7CisKKyAgICAgICAgICAgIG1SZXBvcnRlci0+QWRkUmVzdWx0
KG1lZGlhbk5hbWUsIHN0YXRpY19jYXN0PHNpemVfdD4oc2FtcGxlc1ttaWRwb2ludF0pKTsKICAg
ICAgICAgfQogCi0gICAgICAgIGlmICh1bml0cyA9PSAibXMiKQogICAgICAgICB7Ci0gICAgICAg
ICAgICByZXRWYWx1ZSA9IHNlY29uZHNQZXJJdGVyYXRpb24gKiBrTWlsbGlTZWNvbmRzUGVyU2Vj
b25kOworICAgICAgICAgICAgc3RkOjpzdHJpbmcgbWVhc3VyZW1lbnQgPSBtTmFtZSArIG1CYWNr
ZW5kICsgIi4iICsgY291bnRlck5hbWUgKyAiX21lZGlhbiI7CisgICAgICAgICAgICBUZXN0U3Vp
dGU6OkdldEluc3RhbmNlKCktPmFkZEhpc3RvZ3JhbVNhbXBsZShtZWFzdXJlbWVudCwgbVN0b3J5
LCBzYW1wbGVzW21pZHBvaW50XSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICJjb3VudCIpOwogICAgICAgICB9Ci0gICAgICAgIGVsc2Ug
aWYgKHVuaXRzID09ICJ1cyIpCisKKyAgICAgICAgY29uc3QgYXV0byAmbWF4SXQgPSBzdGQ6Om1h
eF9lbGVtZW50KHNhbXBsZXMuYmVnaW4oKSwgc2FtcGxlcy5lbmQoKSk7CisKICAgICAgICAgewot
ICAgICAgICAgICAgcmV0VmFsdWUgPSBzZWNvbmRzUGVySXRlcmF0aW9uICoga01pY3JvU2Vjb25k
c1BlclNlY29uZDsKKyAgICAgICAgICAgIHN0ZDo6c3RyaW5nc3RyZWFtIG1heFN0cjsKKyAgICAg
ICAgICAgIG1heFN0ciA8PCAiLiIgPDwgY291bnRlck5hbWUgPDwgIl9tYXgiOworICAgICAgICAg
ICAgc3RkOjpzdHJpbmcgbWF4TmFtZSA9IG1heFN0ci5zdHIoKTsKKyAgICAgICAgICAgIG1SZXBv
cnRlci0+QWRkUmVzdWx0KG1heE5hbWUsIHN0YXRpY19jYXN0PHNpemVfdD4oKm1heEl0KSk7CiAg
ICAgICAgIH0KLSAgICAgICAgZWxzZQorCiAgICAgICAgIHsKLSAgICAgICAgICAgIHJldFZhbHVl
ID0gc2Vjb25kc1Blckl0ZXJhdGlvbiAqIGtOYW5vU2Vjb25kc1BlclNlY29uZDsKKyAgICAgICAg
ICAgIHN0ZDo6c3RyaW5nIG1lYXN1cmVtZW50ID0gbU5hbWUgKyBtQmFja2VuZCArICIuIiArIGNv
dW50ZXJOYW1lICsgIl9tYXgiOworICAgICAgICAgICAgVGVzdFN1aXRlOjpHZXRJbnN0YW5jZSgp
LT5hZGRIaXN0b2dyYW1TYW1wbGUobWVhc3VyZW1lbnQsIG1TdG9yeSwgKm1heEl0LCAiY291bnQi
KTsKICAgICAgICAgfQotICAgICAgICBtUmVwb3J0ZXItPkFkZFJlc3VsdChjbG9ja05hbWVzW2ld
LCByZXRWYWx1ZSk7CiAgICAgfQorfQogCi0gICAgaWYgKGdWZXJib3NlTG9nZ2luZykKK3ZvaWQg
QU5HTEVQZXJmVGVzdDo6cHJvY2Vzc0Nsb2NrUmVzdWx0KGNvbnN0IGNoYXIgKm1ldHJpYywgZG91
YmxlIHJlc3VsdFNlY29uZHMpCit7CisgICAgZG91YmxlIHNlY29uZHNQZXJTdGVwICAgICAgPSBy
ZXN1bHRTZWNvbmRzIC8gc3RhdGljX2Nhc3Q8ZG91YmxlPihtVHJpYWxOdW1TdGVwc1BlcmZvcm1l
ZCk7CisgICAgZG91YmxlIHNlY29uZHNQZXJJdGVyYXRpb24gPSBzZWNvbmRzUGVyU3RlcCAvIHN0
YXRpY19jYXN0PGRvdWJsZT4obUl0ZXJhdGlvbnNQZXJTdGVwKTsKKworICAgIHBlcmZfdGVzdDo6
TWV0cmljSW5mbyBtZXRyaWNJbmZvOworICAgIHN0ZDo6c3RyaW5nIHVuaXRzOworICAgIGJvb2wg
Zm91bmRNZXRyaWMgPSBtUmVwb3J0ZXItPkdldE1ldHJpY0luZm8obWV0cmljLCAmbWV0cmljSW5m
byk7CisgICAgaWYgKCFmb3VuZE1ldHJpYykKICAgICB7Ci0gICAgICAgIGRvdWJsZSBmcHMgPSBz
dGF0aWNfY2FzdDxkb3VibGU+KG1UcmlhbE51bVN0ZXBzUGVyZm9ybWVkICogbUl0ZXJhdGlvbnNQ
ZXJTdGVwKSAvCi0gICAgICAgICAgICAgICAgICAgICBlbGFwc2VkVGltZVNlY29uZHNbMF07Ci0g
ICAgICAgIHByaW50ZigiUmFuICUwLjJsZiBpdGVyYXRpb25zIHBlciBzZWNvbmRcbiIsIGZwcyk7
CisgICAgICAgIGZwcmludGYoc3RkZXJyLCAiRXJyb3IgZ2V0dGluZyBtZXRyaWMgaW5mbyBmb3Ig
JXMuXG4iLCBtZXRyaWMpOworICAgICAgICByZXR1cm47CiAgICAgfQorICAgIHVuaXRzID0gbWV0
cmljSW5mby51bml0czsKIAotICAgIGlmIChnQ2FsaWJyYXRpb24pCisgICAgZG91YmxlIHJlc3Vs
dDsKKworICAgIGlmICh1bml0cyA9PSAibXMiKQogICAgIHsKLSAgICAgICAgbVJlcG9ydGVyLT5B
ZGRSZXN1bHQoIi5zdGVwc190b19ydW4iLCBzdGF0aWNfY2FzdDxzaXplX3Q+KG1TdGVwc1RvUnVu
KSk7CisgICAgICAgIHJlc3VsdCA9IHNlY29uZHNQZXJJdGVyYXRpb24gKiBrTWlsbGlTZWNvbmRz
UGVyU2Vjb25kOworICAgIH0KKyAgICBlbHNlIGlmICh1bml0cyA9PSAidXMiKQorICAgIHsKKyAg
ICAgICAgcmVzdWx0ID0gc2Vjb25kc1Blckl0ZXJhdGlvbiAqIGtNaWNyb1NlY29uZHNQZXJTZWNv
bmQ7CiAgICAgfQogICAgIGVsc2UKICAgICB7Ci0gICAgICAgIG1SZXBvcnRlci0+QWRkUmVzdWx0
KCIudHJpYWxfc3RlcHMiLCBzdGF0aWNfY2FzdDxzaXplX3Q+KG1UcmlhbE51bVN0ZXBzUGVyZm9y
bWVkKSk7Ci0gICAgICAgIG1SZXBvcnRlci0+QWRkUmVzdWx0KCIudG90YWxfc3RlcHMiLCBzdGF0
aWNfY2FzdDxzaXplX3Q+KG1Ub3RhbE51bVN0ZXBzUGVyZm9ybWVkKSk7CisgICAgICAgIHJlc3Vs
dCA9IHNlY29uZHNQZXJJdGVyYXRpb24gKiBrTmFub1NlY29uZHNQZXJTZWNvbmQ7CiAgICAgfQor
ICAgIG1SZXBvcnRlci0+QWRkUmVzdWx0KG1ldHJpYywgcmVzdWx0KTsKIAogICAgIC8vIE91dHB1
dCBoaXN0b2dyYW0gSlNPTiBzZXQgZm9ybWF0IGlmIGVuYWJsZWQuCi0gICAgZG91YmxlIHNlY29u
ZHNQZXJTdGVwID0gZWxhcHNlZFRpbWVTZWNvbmRzWzBdIC8gc3RhdGljX2Nhc3Q8ZG91YmxlPiht
VHJpYWxOdW1TdGVwc1BlcmZvcm1lZCk7Ci0gICAgZG91YmxlIHNlY29uZHNQZXJJdGVyYXRpb24g
PSBzZWNvbmRzUGVyU3RlcCAvIHN0YXRpY19jYXN0PGRvdWJsZT4obUl0ZXJhdGlvbnNQZXJTdGVw
KTsKLSAgICBUZXN0U3VpdGU6OkdldEluc3RhbmNlKCktPmFkZEhpc3RvZ3JhbVNhbXBsZShtTmFt
ZSArIG1CYWNrZW5kLCBtU3RvcnksCisgICAgVGVzdFN1aXRlOjpHZXRJbnN0YW5jZSgpLT5hZGRI
aXN0b2dyYW1TYW1wbGUobU5hbWUgKyBtQmFja2VuZCArIG1ldHJpYywgbVN0b3J5LAogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlY29uZHNQZXJJdGVy
YXRpb24gKiBrTWlsbGlTZWNvbmRzUGVyU2Vjb25kLAogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICJtc0Jlc3RGaXRGb3JtYXRfc21hbGxlcklzQmV0dGVy
Iik7Ci0gICAgcmV0dXJuIHJldFZhbHVlOworfQorCit2b2lkIEFOR0xFUGVyZlRlc3Q6OnByb2Nl
c3NNZW1vcnlSZXN1bHQoY29uc3QgY2hhciAqbWV0cmljLCB1aW50NjRfdCByZXN1bHRLQikKK3sK
KyAgICBwZXJmX3Rlc3Q6Ok1ldHJpY0luZm8gbWV0cmljSW5mbzsKKyAgICBpZiAoIW1SZXBvcnRl
ci0+R2V0TWV0cmljSW5mbyhtZXRyaWMsICZtZXRyaWNJbmZvKSkKKyAgICB7CisgICAgICAgIG1S
ZXBvcnRlci0+UmVnaXN0ZXJJbXBvcnRhbnRNZXRyaWMobWV0cmljLCAic2l6ZUluQnl0ZXMiKTsK
KyAgICB9CisKKyAgICBtUmVwb3J0ZXItPkFkZFJlc3VsdChtZXRyaWMsIHN0YXRpY19jYXN0PHNp
emVfdD4ocmVzdWx0S0IgKiAxMDAwKSk7CisKKyAgICBUZXN0U3VpdGU6OkdldEluc3RhbmNlKCkt
PmFkZEhpc3RvZ3JhbVNhbXBsZShtTmFtZSArIG1CYWNrZW5kICsgbWV0cmljLCBtU3RvcnksCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGljX2Nh
c3Q8ZG91YmxlPihyZXN1bHRLQikgKiAxMDAwLjAsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgInNpemVJbkJ5dGVzX3NtYWxsZXJJc0JldHRlciIpOwog
fQogCiBkb3VibGUgQU5HTEVQZXJmVGVzdDo6bm9ybWFsaXplZFRpbWUoc2l6ZV90IHZhbHVlKSBj
b25zdApAQCAtNTQwLDcgKzU5MSw3IEBAIHZvaWQgQU5HTEVQZXJmVGVzdDo6Y2FsaWJyYXRlU3Rl
cHNUb1J1bihSdW5Mb29wUG9saWN5IHBvbGljeSkKICAgICAvLyBDYWxpYnJhdGlvbiBhbGxvd3Mg
dGhlIHBlcmYgdGVzdCBydW5uZXIgc2NyaXB0IHRvIHNhdmUgc29tZSB0aW1lLgogICAgIGlmIChn
Q2FsaWJyYXRpb24pCiAgICAgewotICAgICAgICBwcmludFJlc3VsdHMoKTsKKyAgICAgICAgcHJv
Y2Vzc1Jlc3VsdHMoKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KIH0KQEAgLTgzNSw2ICs4ODYs
OCBAQCB2b2lkIEFOR0xFUmVuZGVyVGVzdDo6U2V0VXAoKQogICAgICAgICAvLyBiZXR3ZWVuIGNh
bGlicmF0aW9uIG1lYXN1cmVtZW50cy4KICAgICAgICAgY2FsaWJyYXRlU3RlcHNUb1J1bihSdW5M
b29wUG9saWN5OjpGaW5pc2hFdmVyeVN0ZXApOwogICAgIH0KKworICAgIGluaXRQZXJmQ291bnRl
cnMoKTsKIH0KIAogdm9pZCBBTkdMRVJlbmRlclRlc3Q6OlRlYXJEb3duKCkKQEAgLTg2NSw2ICs5
MTgsNzMgQEAgdm9pZCBBTkdMRVJlbmRlclRlc3Q6OlRlYXJEb3duKCkKICAgICBBTkdMRVBlcmZU
ZXN0OjpUZWFyRG93bigpOwogfQogCit2b2lkIEFOR0xFUmVuZGVyVGVzdDo6aW5pdFBlcmZDb3Vu
dGVycygpCit7CisgICAgaWYgKCFnUGVyZkNvdW50ZXJzKQorICAgIHsKKyAgICAgICAgcmV0dXJu
OworICAgIH0KKworICAgIGlmICghSXNHTEV4dGVuc2lvbkVuYWJsZWQoa1BlcmZNb25pdG9yRXh0
ZW5zaW9uTmFtZSkpCisgICAgeworICAgICAgICBmcHJpbnRmKHN0ZGVyciwgIkNhbm5vdCByZXBv
cnQgcGVyZiBtZXRyaWNzIGJlY2F1c2UgJXMgaXMgbm90IGF2YWlsYWJsZS5cbiIsCisgICAgICAg
ICAgICAgICAga1BlcmZNb25pdG9yRXh0ZW5zaW9uTmFtZSk7CisgICAgICAgIHJldHVybjsKKyAg
ICB9CisKKyAgICBDb3VudGVyTmFtZVRvSW5kZXhNYXAgaW5kZXhNYXAgPSBCdWlsZENvdW50ZXJO
YW1lVG9JbmRleE1hcCgpOworCisgICAgc3RkOjp2ZWN0b3I8c3RkOjpzdHJpbmc+IGNvdW50ZXJz
ID0KKyAgICAgICAgYW5nbGU6OlNwbGl0U3RyaW5nKGdQZXJmQ291bnRlcnMsICI6IiwgYW5nbGU6
OldoaXRlc3BhY2VIYW5kbGluZzo6VFJJTV9XSElURVNQQUNFLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgYW5nbGU6OlNwbGl0UmVzdWx0OjpTUExJVF9XQU5UX05PTkVNUFRZKTsKKyAgICBm
b3IgKGNvbnN0IHN0ZDo6c3RyaW5nICZjb3VudGVyIDogY291bnRlcnMpCisgICAgeworICAgICAg
ICBhdXRvIGl0ZXIgPSBpbmRleE1hcC5maW5kKGNvdW50ZXIpOworICAgICAgICBpZiAoaXRlciA9
PSBpbmRleE1hcC5lbmQoKSkKKyAgICAgICAgeworICAgICAgICAgICAgZnByaW50ZihzdGRlcnIs
ICJDb3VudGVyICclcycgbm90IGluIGxpc3Qgb2YgYXZhaWxhYmxlIHBlcmYgY291bnRlcnMuXG4i
LAorICAgICAgICAgICAgICAgICAgICBjb3VudGVyLmNfc3RyKCkpOworICAgICAgICB9CisgICAg
ICAgIGVsc2UKKyAgICAgICAgeworICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIHN0ZDo6
c3RyaW5nc3RyZWFtIG1lZGlhblN0cjsKKyAgICAgICAgICAgICAgICBtZWRpYW5TdHIgPDwgJy4n
IDw8IGNvdW50ZXIgPDwgIl9tZWRpYW4iOworICAgICAgICAgICAgICAgIHN0ZDo6c3RyaW5nIG1l
ZGlhbk5hbWUgPSBtZWRpYW5TdHIuc3RyKCk7CisgICAgICAgICAgICAgICAgbVJlcG9ydGVyLT5S
ZWdpc3RlckltcG9ydGFudE1ldHJpYyhtZWRpYW5OYW1lLCAiY291bnQiKTsKKyAgICAgICAgICAg
IH0KKworICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIHN0ZDo6c3RyaW5nc3RyZWFtIG1h
eFN0cjsKKyAgICAgICAgICAgICAgICBtYXhTdHIgPDwgJy4nIDw8IGNvdW50ZXIgPDwgIl9tYXgi
OworICAgICAgICAgICAgICAgIHN0ZDo6c3RyaW5nIG1heE5hbWUgPSBtYXhTdHIuc3RyKCk7Cisg
ICAgICAgICAgICAgICAgbVJlcG9ydGVyLT5SZWdpc3RlckltcG9ydGFudE1ldHJpYyhtYXhOYW1l
LCAiY291bnQiKTsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgR0x1aW50IGluZGV4ICAg
ICAgICAgICAgPSBpbmRleE1hcFtjb3VudGVyXTsKKyAgICAgICAgICAgIG1QZXJmQ291bnRlcklu
Zm9baW5kZXhdID0ge2NvdW50ZXIsIHt9fTsKKyAgICAgICAgfQorICAgIH0KK30KKwordm9pZCBB
TkdMRVJlbmRlclRlc3Q6OnVwZGF0ZVBlcmZDb3VudGVycygpCit7CisgICAgaWYgKG1QZXJmQ291
bnRlckluZm8uZW1wdHkoKSkKKyAgICB7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBz
dGQ6OnZlY3RvcjxQZXJmTW9uaXRvclRyaXBsZXQ+IHBlcmZEYXRhID0gR2V0UGVyZk1vbml0b3JU
cmlwbGV0cygpOworICAgIEFTU0VSVCghcGVyZkRhdGEuZW1wdHkoKSk7CisKKyAgICBmb3IgKGF1
dG8gJml0ZXIgOiBtUGVyZkNvdW50ZXJJbmZvKQorICAgIHsKKyAgICAgICAgdWludDMyX3QgY291
bnRlciAgICAgICAgICAgICA9IGl0ZXIuZmlyc3Q7CisgICAgICAgIHN0ZDo6dmVjdG9yPEdMdWlu
dD4gJnNhbXBsZXMgPSBpdGVyLnNlY29uZC5zYW1wbGVzOworICAgICAgICBzYW1wbGVzLnB1c2hf
YmFjayhwZXJmRGF0YVtjb3VudGVyXS52YWx1ZSk7CisgICAgfQorfQorCiB2b2lkIEFOR0xFUmVu
ZGVyVGVzdDo6YmVnaW5JbnRlcm5hbFRyYWNlRXZlbnQoY29uc3QgY2hhciAqbmFtZSkKIHsKICAg
ICBpZiAoZ0VuYWJsZVRyYWNlKQpAQCAtOTMzLDYgKzEwNTMsNyBAQCB2b2lkIEFOR0xFUmVuZGVy
VGVzdDo6c3RlcCgpCiAgICAgICAgIC8vIGNvbW1hbmQgcXVldWVzLgogICAgICAgICBpZiAobVN3
YXBFbmFibGVkKQogICAgICAgICB7CisgICAgICAgICAgICB1cGRhdGVQZXJmQ291bnRlcnMoKTsK
ICAgICAgICAgICAgIG1HTFdpbmRvdy0+c3dhcCgpOwogICAgICAgICB9CiAgICAgICAgIG1PU1dp
bmRvdy0+bWVzc2FnZUxvb3AoKTsKQEAgLTk0Myw2ICsxMDY0LDEzIEBAIHZvaWQgQU5HTEVSZW5k
ZXJUZXN0OjpzdGVwKCkKICAgICAgICAgICAgIEVYUEVDVF9FUShzdGF0aWNfY2FzdDxHTGVudW0+
KEdMX05PX0VSUk9SKSwgZ2xHZXRFcnJvcigpKTsKICAgICAgICAgfQogI2VuZGlmICAvLyBkZWZp
bmVkKEFOR0xFX0VOQUJMRV9BU1NFUlRTKQorCisgICAgICAgIC8vIFNhbXBsZSBzeXN0ZW0gbWVt
b3J5CisgICAgICAgIHVpbnQ2NF90IHByb2Nlc3NNZW1vcnlVc2FnZUtCID0gR2V0UHJvY2Vzc01l
bW9yeVVzYWdlS0IoKTsKKyAgICAgICAgaWYgKHByb2Nlc3NNZW1vcnlVc2FnZUtCKQorICAgICAg
ICB7CisgICAgICAgICAgICBtUHJvY2Vzc01lbW9yeVVzYWdlS0JTYW1wbGVzLnB1c2hfYmFjayhw
cm9jZXNzTWVtb3J5VXNhZ2VLQik7CisgICAgICAgIH0KICAgICB9CiAKICAgICBlbmRJbnRlcm5h
bFRyYWNlRXZlbnQoInN0ZXAiKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy90ZXN0cy9wZXJmX3Rlc3RzL0FOR0xFUGVyZlRlc3QuaCBiL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3NyYy90ZXN0cy9wZXJmX3Rlc3RzL0FOR0xFUGVyZlRlc3QuaAppbmRleCAzMDkzZGQ0
ODU4ZThiNDgzNDc0YzFhZDNjNDNjYmRlOTdjMTdhZjIyLi5hMWIxZjY5MTlkMWZmYWMzYWZlNGEx
N2MyNWRiZWM4NjJmNDk5OTMwIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9z
cmMvdGVzdHMvcGVyZl90ZXN0cy9BTkdMRVBlcmZUZXN0LmgKKysrIGIvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL3Rlc3RzL3BlcmZfdGVzdHMvQU5HTEVQZXJmVGVzdC5oCkBAIC0xMDYsOSAr
MTA2LDEyIEBAIGNsYXNzIEFOR0xFUGVyZlRlc3QgOiBwdWJsaWMgdGVzdGluZzo6VGVzdCwgYW5n
bGU6Ok5vbkNvcHlhYmxlCiAgICAgdmlydHVhbCB2b2lkIHNhdmVTY3JlZW5zaG90KGNvbnN0IHN0
ZDo6c3RyaW5nICZzY3JlZW5zaG90TmFtZSkge30KICAgICB2aXJ0dWFsIHZvaWQgY29tcHV0ZUdQ
VVRpbWUoKSB7fQogCi0gICAgZG91YmxlIHByaW50UmVzdWx0cygpOwogICAgIHZvaWQgY2FsaWJy
YXRlU3RlcHNUb1J1bihSdW5Mb29wUG9saWN5IHBvbGljeSk7CiAKKyAgICB2b2lkIHByb2Nlc3NS
ZXN1bHRzKCk7CisgICAgdm9pZCBwcm9jZXNzQ2xvY2tSZXN1bHQoY29uc3QgY2hhciAqbWV0cmlj
LCBkb3VibGUgcmVzdWx0U2Vjb25kcyk7CisgICAgdm9pZCBwcm9jZXNzTWVtb3J5UmVzdWx0KGNv
bnN0IGNoYXIgKm1ldHJpYywgdWludDY0X3QgcmVzdWx0S0IpOworCiAgICAgc3RkOjpzdHJpbmcg
bU5hbWU7CiAgICAgc3RkOjpzdHJpbmcgbUJhY2tlbmQ7CiAgICAgc3RkOjpzdHJpbmcgbVN0b3J5
OwpAQCAtMTIyLDYgKzEyNSwxNCBAQCBjbGFzcyBBTkdMRVBlcmZUZXN0IDogcHVibGljIHRlc3Rp
bmc6OlRlc3QsIGFuZ2xlOjpOb25Db3B5YWJsZQogICAgIGludCBtSXRlcmF0aW9uc1BlclN0ZXA7
CiAgICAgYm9vbCBtUnVubmluZzsKICAgICBzdGQ6OnZlY3Rvcjxkb3VibGU+IG1UZXN0VHJpYWxS
ZXN1bHRzOworCisgICAgc3RydWN0IENvdW50ZXJJbmZvCisgICAgeworICAgICAgICBzdGQ6OnN0
cmluZyBuYW1lOworICAgICAgICBzdGQ6OnZlY3RvcjxHTHVpbnQ+IHNhbXBsZXM7CisgICAgfTsK
KyAgICBhbmdsZTo6SGFzaE1hcDxHTHVpbnQsIENvdW50ZXJJbmZvPiBtUGVyZkNvdW50ZXJJbmZv
OworICAgIHN0ZDo6dmVjdG9yPHVpbnQ2NF90PiBtUHJvY2Vzc01lbW9yeVVzYWdlS0JTYW1wbGVz
OwogfTsKIAogZW51bSBjbGFzcyBTdXJmYWNlVHlwZQpAQCAtMTkwLDYgKzIwMSw3IEBAIGNsYXNz
IEFOR0xFUmVuZGVyVGVzdCA6IHB1YmxpYyBBTkdMRVBlcmZUZXN0CiAgICAgdm9pZCBlbmRHTFRy
YWNlRXZlbnQoY29uc3QgY2hhciAqbmFtZSwgZG91YmxlIGhvc3RUaW1lU2VjKTsKIAogICAgIHZv
aWQgZGlzYWJsZVRlc3RIYXJuZXNzU3dhcCgpIHsgbVN3YXBFbmFibGVkID0gZmFsc2U7IH0KKyAg
ICB2b2lkIHVwZGF0ZVBlcmZDb3VudGVycygpOwogCiAgICAgYm9vbCBtSXNUaW1lc3RhbXBRdWVy
eUF2YWlsYWJsZTsKIApAQCAtMjA0LDYgKzIxNiw4IEBAIGNsYXNzIEFOR0xFUmVuZGVyVGVzdCA6
IHB1YmxpYyBBTkdMRVBlcmZUZXN0CiAKICAgICBib29sIGFyZUV4dGVuc2lvblByZXJlcXVpc2l0
ZXNGdWxmaWxsZWQoKSBjb25zdDsKIAorICAgIHZvaWQgaW5pdFBlcmZDb3VudGVycygpOworCiAg
ICAgR0xXaW5kb3dCYXNlICptR0xXaW5kb3c7CiAgICAgT1NXaW5kb3cgKm1PU1dpbmRvdzsKICAg
ICBzdGQ6OnZlY3Rvcjxjb25zdCBjaGFyICo+IG1FeHRlbnNpb25QcmVyZXF1aXNpdGVzOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL3BlcmZfdGVzdHMvQU5H
TEVQZXJmVGVzdEFyZ3MuY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL3Bl
cmZfdGVzdHMvQU5HTEVQZXJmVGVzdEFyZ3MuY3BwCmluZGV4IDMxM2FiMmM2MjY3MjI5ZjczNzE4
OTIyOGYzNDVjNDczOTRkZDM5MTMuLmFmMjc0NjRiNzkyNWUzNWMzNDA5YWFmZGIxODg2NjcxNTEy
MmVmNDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9wZXJm
X3Rlc3RzL0FOR0xFUGVyZlRlc3RBcmdzLmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zcmMvdGVzdHMvcGVyZl90ZXN0cy9BTkdMRVBlcmZUZXN0QXJncy5jcHAKQEAgLTI5LDYgKzI5
LDcgQEAgYm9vbCBnRW5hYmxlQWxsVHJhY2VUZXN0cyAgICAgID0gZmFsc2U7CiBib29sIGdSZXRy
YWNlTW9kZSAgICAgICAgICAgICAgPSBmYWxzZTsKIGJvb2wgZ01pbmltaXplR1BVV29yayAgICAg
ICAgICA9IGZhbHNlOwogYm9vbCBnVHJhY2VUZXN0VmFsaWRhdGlvbiAgICAgID0gZmFsc2U7Citj
b25zdCBjaGFyICpnUGVyZkNvdW50ZXJzICAgICAgPSBudWxscHRyOwogCiAvLyBEZWZhdWx0IHRv
IHRocmVlIHdhcm11cCBsb29wcy4gVGhlcmUncyBubyBzY2llbmNlIHRvIHRoaXMuIE1vcmUgdGhh
biB0d28gbG9vcHMgd2FzIGV4cGVyaW1lbnRhbGx5CiAvLyBoZWxwZnVsIG9uIGEgV2luZG93cyBO
VklESUEgc2V0dXAgd2hlbiB0ZXN0aW5nIHdpdGggVnVsa2FuIGFuZCBuYXRpdmUgdHJhY2UgdGVz
dHMuCkBAIC0xNzEsNSArMTcyLDEwIEBAIHZvaWQgQU5HTEVQcm9jZXNzUGVyZlRlc3RBcmdzKGlu
dCAqYXJnYywgY2hhciAqKmFyZ3YpCiAgICAgICAgICAgICBnVGVzdFRyaWFscyAgICAgICAgICA9
IDE7CiAgICAgICAgICAgICBnTWF4VHJpYWxUaW1lU2Vjb25kcyA9IDYwMC4wOwogICAgICAgICB9
CisgICAgICAgIGVsc2UgaWYgKHN0cmNtcCgiLS1wZXJmLWNvdW50ZXJzIiwgYXJndlthcmdJbmRl
eF0pID09IDAgJiYgYXJnSW5kZXggPCAqYXJnYyAtIDEpCisgICAgICAgIHsKKyAgICAgICAgICAg
IGdQZXJmQ291bnRlcnMgPSBhcmd2W2FyZ0luZGV4ICsgMV07CisgICAgICAgICAgICBhcmdJbmRl
eCsrOworICAgICAgICB9CiAgICAgfQogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc3JjL3Rlc3RzL3BlcmZfdGVzdHMvQU5HTEVQZXJmVGVzdEFyZ3MuaCBiL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9wZXJmX3Rlc3RzL0FOR0xFUGVyZlRlc3RBcmdzLmgK
aW5kZXggOTFkOGM1MTBiZjljZTQ0YTNjMDUzYWQ1ODZhYzliODk0Zjc3YzcxZi4uM2M3MTczNjhh
NWMyYjQ4NDFmMjVkM2E1ZDFlNGNiNGJhODcyYTRmYSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvc3JjL3Rlc3RzL3BlcmZfdGVzdHMvQU5HTEVQZXJmVGVzdEFyZ3MuaAorKysg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvcGVyZl90ZXN0cy9BTkdMRVBlcmZU
ZXN0QXJncy5oCkBAIC0zMSw2ICszMSw3IEBAIGV4dGVybiBib29sIGdFbmFibGVBbGxUcmFjZVRl
c3RzOwogZXh0ZXJuIGJvb2wgZ1JldHJhY2VNb2RlOwogZXh0ZXJuIGJvb2wgZ01pbmltaXplR1BV
V29yazsKIGV4dGVybiBib29sIGdUcmFjZVRlc3RWYWxpZGF0aW9uOworZXh0ZXJuIGNvbnN0IGNo
YXIgKmdQZXJmQ291bnRlcnM7CiAKIGlubGluZSBib29sIE9uZUZyYW1lKCkKIHsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9wZXJmX3Rlc3RzL0NsZWFyUGVy
Zi5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvcGVyZl90ZXN0cy9DbGVh
clBlcmYuY3BwCmluZGV4IGNhMWRiNzZkZDVjNWZkM2FiZGQ2N2VkOGYyNjdkN2FkNjFjZjY1M2Uu
LjBkNzM4MjAzZWM1M2E2NDg5MGMxZGQzODVhM2IyZGUxYzNjNGYyODEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9wZXJmX3Rlc3RzL0NsZWFyUGVyZi5jcHAK
KysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL3BlcmZfdGVzdHMvQ2xlYXJQ
ZXJmLmNwcApAQCAtMTMsNyArMTMsOSBAQAogI2luY2x1ZGUgPHJhbmRvbT4KICNpbmNsdWRlIDxz
c3RyZWFtPgogCisjaW5jbHVkZSAidGVzdF91dGlscy9BTkdMRVRlc3QuaCIKICNpbmNsdWRlICJ0
ZXN0X3V0aWxzL2dsX3JhaWkuaCIKKyNpbmNsdWRlICJ1dGlsL3JhbmRvbV91dGlscy5oIgogI2lu
Y2x1ZGUgInV0aWwvc2hhZGVyX3V0aWxzLmgiCiAKIHVzaW5nIG5hbWVzcGFjZSBhbmdsZTsKQEAg
LTI5LDEwICszMSwxMSBAQCBzdHJ1Y3QgQ2xlYXJQYXJhbXMgZmluYWwgOiBwdWJsaWMgUmVuZGVy
VGVzdFBhcmFtcwogICAgICAgICBpdGVyYXRpb25zUGVyU3RlcCA9IGtJdGVyYXRpb25zUGVyU3Rl
cDsKICAgICAgICAgdHJhY2tHcHVUaW1lICAgICAgPSB0cnVlOwogCi0gICAgICAgIGZib1NpemUg
ICAgID0gMjA0ODsKLSAgICAgICAgdGV4dHVyZVNpemUgPSAxNjsKKyAgICAgICAgZmJvU2l6ZSA9
IDIwNDg7CiAKICAgICAgICAgaW50ZXJuYWxGb3JtYXQgPSBHTF9SR0JBODsKKworICAgICAgICBz
Y2lzc29yZWRDbGVhciA9IGZhbHNlOwogICAgIH0KIAogICAgIHN0ZDo6c3RyaW5nIHN0b3J5KCkg
Y29uc3Qgb3ZlcnJpZGU7CkBAIC00MSw2ICs0NCw4IEBAIHN0cnVjdCBDbGVhclBhcmFtcyBmaW5h
bCA6IHB1YmxpYyBSZW5kZXJUZXN0UGFyYW1zCiAgICAgR0xzaXplaSB0ZXh0dXJlU2l6ZTsKIAog
ICAgIEdMZW51bSBpbnRlcm5hbEZvcm1hdDsKKworICAgIGJvb2wgc2Npc3NvcmVkQ2xlYXI7CiB9
OwogCiBzdGQ6Om9zdHJlYW0gJm9wZXJhdG9yPDwoc3RkOjpvc3RyZWFtICZvcywgY29uc3QgQ2xl
YXJQYXJhbXMgJnBhcmFtcykKQEAgLTYwLDYgKzY1LDExIEBAIHN0ZDo6c3RyaW5nIENsZWFyUGFy
YW1zOjpzdG9yeSgpIGNvbnN0CiAgICAgICAgIHN0cnN0ciA8PCAiX3JnYiI7CiAgICAgfQogCisg
ICAgaWYgKHNjaXNzb3JlZENsZWFyKQorICAgIHsKKyAgICAgICAgc3Ryc3RyIDw8ICJfc2Npc3Nv
cmVkQ2xlYXIiOworICAgIH0KKwogICAgIHJldHVybiBzdHJzdHIuc3RyKCk7CiB9CiAKQEAgLTEy
OSw4ICsxMzksNiBAQCB2b2lkIENsZWFyQmVuY2htYXJrOjpkcmF3QmVuY2htYXJrKCkKIHsKICAg
ICBjb25zdCBhdXRvICZwYXJhbXMgPSBHZXRQYXJhbSgpOwogCi0gICAgc3RkOjp2ZWN0b3I8Zmxv
YXQ+IHRleHR1cmVEYXRhKHBhcmFtcy50ZXh0dXJlU2l6ZSAqIHBhcmFtcy50ZXh0dXJlU2l6ZSAq
IDQsIDAuNSk7Ci0KICAgICBHTFJlbmRlcmJ1ZmZlciBjb2xvclJibzsKICAgICBnbEJpbmRSZW5k
ZXJidWZmZXIoR0xfUkVOREVSQlVGRkVSLCBjb2xvclJibyk7CiAgICAgZ2xSZW5kZXJidWZmZXJT
dG9yYWdlKEdMX1JFTkRFUkJVRkZFUiwgcGFyYW1zLmludGVybmFsRm9ybWF0LCBwYXJhbXMuZmJv
U2l6ZSwgcGFyYW1zLmZib1NpemUpOwpAQCAtMTQ0LDE0ICsxNTIsNDIgQEAgdm9pZCBDbGVhckJl
bmNobWFyazo6ZHJhd0JlbmNobWFyaygpCiAgICAgZ2xGcmFtZWJ1ZmZlclJlbmRlcmJ1ZmZlcihH
TF9GUkFNRUJVRkZFUiwgR0xfQ09MT1JfQVRUQUNITUVOVDAsIEdMX1JFTkRFUkJVRkZFUiwgY29s
b3JSYm8pOwogICAgIGdsRnJhbWVidWZmZXJSZW5kZXJidWZmZXIoR0xfRlJBTUVCVUZGRVIsIEdM
X0RFUFRIX0FUVEFDSE1FTlQsIEdMX1JFTkRFUkJVRkZFUiwgZGVwdGhSYm8pOwogCisgICAgZ2xW
aWV3cG9ydCgwLCAwLCBwYXJhbXMuZmJvU2l6ZSwgcGFyYW1zLmZib1NpemUpOworICAgIGdsRGlz
YWJsZShHTF9TQ0lTU09SX1RFU1QpOworCiAgICAgc3RhcnRHcHVUaW1lcigpOwotICAgIGZvciAo
c2l6ZV90IGl0ID0gMDsgaXQgPCBwYXJhbXMuaXRlcmF0aW9uc1BlclN0ZXA7ICsraXQpCisKKyAg
ICBpZiAocGFyYW1zLnNjaXNzb3JlZENsZWFyKQogICAgIHsKLSAgICAgICAgZmxvYXQgY2xlYXJW
YWx1ZSA9IChpdCAlIDIpICogMC41ZiArIDAuMmY7Ci0gICAgICAgIGdsQ2xlYXJDb2xvcihjbGVh
clZhbHVlLCBjbGVhclZhbHVlLCBjbGVhclZhbHVlLCBjbGVhclZhbHVlKTsKLSAgICAgICAgZ2xD
bGVhcihHTF9DT0xPUl9CVUZGRVJfQklUIHwgR0xfREVQVEhfQlVGRkVSX0JJVCk7Ci0gICAgICAg
IGdsRHJhd0FycmF5cyhHTF9UUklBTkdMRVMsIDAsIDMpOworICAgICAgICBhbmdsZTo6Uk5HIHJu
ZzsKKyAgICAgICAgY29uc3QgR0x1aW50IHdpZHRoICA9IHBhcmFtcy5mYm9TaXplOworICAgICAg
ICBjb25zdCBHTHVpbnQgaGVpZ2h0ID0gcGFyYW1zLmZib1NpemU7CisgICAgICAgIGZvciAoR0x1
aW50IGluZGV4ID0gMDsgaW5kZXggPCAod2lkdGggLSAxKSAvIDI7IGluZGV4KyspCisgICAgICAg
IHsKKyAgICAgICAgICAgIC8vIERvIHRoZSBmaXJzdCBjbGVhciB3aXRob3V0IHRoZSBzY2lzc29y
LgorICAgICAgICAgICAgaWYgKGluZGV4ID4gMCkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAg
ICAgICBnbEVuYWJsZShHTF9TQ0lTU09SX1RFU1QpOworICAgICAgICAgICAgICAgIGdsU2Npc3Nv
cihpbmRleCwgaW5kZXgsIHdpZHRoIC0gKGluZGV4ICogMiksIGhlaWdodCAtIChpbmRleCAqIDIp
KTsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgR0xDb2xvciBjb2xvciAgICAgID0gUmFu
ZG9tQ29sb3IoJnJuZyk7CisgICAgICAgICAgICBWZWN0b3I0IGZsb2F0Q29sb3IgPSBjb2xvci50
b05vcm1hbGl6ZWRWZWN0b3IoKTsKKyAgICAgICAgICAgIGdsQ2xlYXJDb2xvcihmbG9hdENvbG9y
WzBdLCBmbG9hdENvbG9yWzFdLCBmbG9hdENvbG9yWzJdLCBmbG9hdENvbG9yWzNdKTsKKyAgICAg
ICAgICAgIGdsQ2xlYXIoR0xfQ09MT1JfQlVGRkVSX0JJVCk7CisgICAgICAgIH0KICAgICB9Cisg
ICAgZWxzZQorICAgIHsKKyAgICAgICAgZm9yIChzaXplX3QgaXQgPSAwOyBpdCA8IHBhcmFtcy5p
dGVyYXRpb25zUGVyU3RlcDsgKytpdCkKKyAgICAgICAgeworICAgICAgICAgICAgZmxvYXQgY2xl
YXJWYWx1ZSA9IChpdCAlIDIpICogMC41ZiArIDAuMmY7CisgICAgICAgICAgICBnbENsZWFyQ29s
b3IoY2xlYXJWYWx1ZSwgY2xlYXJWYWx1ZSwgY2xlYXJWYWx1ZSwgY2xlYXJWYWx1ZSk7CisgICAg
ICAgICAgICBnbENsZWFyKEdMX0NPTE9SX0JVRkZFUl9CSVQgfCBHTF9ERVBUSF9CVUZGRVJfQklU
KTsKKyAgICAgICAgICAgIGdsRHJhd0FycmF5cyhHTF9UUklBTkdMRVMsIDAsIDMpOworICAgICAg
ICB9CisgICAgfQorCiAgICAgc3RvcEdwdVRpbWVyKCk7CiAKICAgICBBU1NFUlRfR0xfTk9fRVJS
T1IoKTsKQEAgLTE3MSw3ICsyMDcsNyBAQCBDbGVhclBhcmFtcyBPcGVuR0xPckdMRVNQYXJhbXMo
KQogICAgIHJldHVybiBwYXJhbXM7CiB9CiAKLUNsZWFyUGFyYW1zIFZ1bGthblBhcmFtcyhib29s
IGVtdWxhdGVkRm9ybWF0KQorQ2xlYXJQYXJhbXMgVnVsa2FuUGFyYW1zKGJvb2wgZW11bGF0ZWRG
b3JtYXQsIGJvb2wgc2Npc3NvcmVkQ2xlYXIpCiB7CiAgICAgQ2xlYXJQYXJhbXMgcGFyYW1zOwog
ICAgIHBhcmFtcy5lZ2xQYXJhbWV0ZXJzID0gZWdsX3BsYXRmb3JtOjpWVUxLQU4oKTsKQEAgLTE3
OSw2ICsyMTUsNyBAQCBDbGVhclBhcmFtcyBWdWxrYW5QYXJhbXMoYm9vbCBlbXVsYXRlZEZvcm1h
dCkKICAgICB7CiAgICAgICAgIHBhcmFtcy5pbnRlcm5hbEZvcm1hdCA9IEdMX1JHQjg7CiAgICAg
fQorICAgIHBhcmFtcy5zY2lzc29yZWRDbGVhciA9IHNjaXNzb3JlZENsZWFyOwogICAgIHJldHVy
biBwYXJhbXM7CiB9CiAKQEAgLTE5Miw1ICsyMjksNiBAQCBURVNUX1AoQ2xlYXJCZW5jaG1hcmss
IFJ1bikKIEFOR0xFX0lOU1RBTlRJQVRFX1RFU1QoQ2xlYXJCZW5jaG1hcmssCiAgICAgICAgICAg
ICAgICAgICAgICAgIEQzRDExUGFyYW1zKCksCiAgICAgICAgICAgICAgICAgICAgICAgIE9wZW5H
TE9yR0xFU1BhcmFtcygpLAotICAgICAgICAgICAgICAgICAgICAgICBWdWxrYW5QYXJhbXMoZmFs
c2UpLAotICAgICAgICAgICAgICAgICAgICAgICBWdWxrYW5QYXJhbXModHJ1ZSkpOworICAgICAg
ICAgICAgICAgICAgICAgICBWdWxrYW5QYXJhbXMoZmFsc2UsIGZhbHNlKSwKKyAgICAgICAgICAg
ICAgICAgICAgICAgVnVsa2FuUGFyYW1zKHRydWUsIGZhbHNlKSwKKyAgICAgICAgICAgICAgICAg
ICAgICAgVnVsa2FuUGFyYW1zKGZhbHNlLCB0cnVlKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvcGVyZl90ZXN0cy9SRUFETUUubWQgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvcGVyZl90ZXN0cy9SRUFETUUubWQKaW5kZXggMjVjYjVi
NGU0Y2I1ZWJhOTc2Y2EzZWYwZTYyYzY2NWU3ZjMwODI4OS4uZjBkMWJhOTljZGIxMDNhYjAxNmJk
YWYxNzA0YTY5Mzc4N2Q2MTdiMiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUv
c3JjL3Rlc3RzL3BlcmZfdGVzdHMvUkVBRE1FLm1kCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FO
R0xFL3NyYy90ZXN0cy9wZXJmX3Rlc3RzL1JFQURNRS5tZApAQCAtNDIsNiArNDIsNyBAQCBTZXZl
cmFsIGNvbW1hbmQtbGluZSBhcmd1bWVudHMgY29udHJvbCBob3cgdGhlIHRlc3RzIHJ1bjoKICog
YC0tZW5hYmxlLWFsbC10cmFjZS10ZXN0c2A6IE9mZnNjcmVlbiBhbmQgdnN5bmMtbGltaXRlZCB0
cmFjZSB0ZXN0cyBhcmUgZGlzYWJsZWQgYnkgZGVmYXVsdCB0byByZWR1Y2UgdGVzdCB0aW1lLgog
KiBgLS1taW5pbWl6ZS1ncHUtd29ya2A6IE1vZGlmeSBBUEkgY2FsbHMgc28gdGhhdCBHUFUgd29y
ayBpcyByZWR1Y2VkIHRvIG1pbmltdW0uCiAqIGAtLXZhbGlkYXRpb25gOiBFbmFibGUgc2VyaWFs
aXphdGlvbiB2YWxpZGF0aW9uIGluIHRoZSB0cmFjZSB0ZXN0cy4gTm9ybWFsbHkgdXNlZCB3aXRo
IFN3aWZ0U2hhZGVyIGFuZCByZXRyYWNpbmcuCisqIGAtLXBlcmYtY291bnRlcnNgOiBBZGRpdGlv
bmFsIHBlcmZvcm1hbmNlIGNvdW50ZXJzIHRvIGluY2x1ZGUgaW4gdGhlIHJlc3VsdCBvdXRwdXQu
IFNlcGFyYXRlIG11bHRpcGxlIGVudHJpZXMgd2l0aCBjb2xvbnM6ICc6Jy4KIAogRm9yIGV4YW1w
bGUsIGZvciBhbiBlbmRsZXNzIHJ1biB3aXRoIG5vIHdhcm11cCwgcnVuOgogCkBAIC03NCwzICs3
NSwxNyBAQCBUaGUgY29tbWFuZCBsaW5lIGFyZ3VtZW50cyBpbXBsZW1lbnRhdGlvbnMgYXJlIGxv
Y2F0ZWQgaW4gW2BBTkdMRVBlcmZUZXN0QXJncy5jcAogKiBbYFRyYWNlUGVyZlRlc3RgXShUcmFj
ZVBlcmZUZXN0LmNwcCk6IFJ1bnMgcmVwbGF5cyBvZiByZXN0cmljdGVkIHRyYWNlcywgbm90IGF2
YWlsYWJsZSBwdWJsaWNseS4gVG8gZW5hYmxlLCByZWFkIG1vcmUgaW4gW2BSZXN0cmljdGVkVHJh
Y2VUZXN0c2BdKC4uL3Jlc3RyaWN0ZWRfdHJhY2VzL1JFQURNRS5tZCkKIAogTWFueSBvdGhlciB0
ZXN0cyBjYW4gYmUgZm91bmQgdGhhdCBoYXZlIGRvY3VtZW50YXRpb24gaW4gdGhlaXIgY2xhc3Nl
cy4KKworIyMgVW5kZXJzdGFuZGluZyB0aGUgTWV0cmljcworCisqIGBjcHVfdGltZWA6IEFtb3Vu
dCBvZiBDUFUgdGltZSBjb25zdW1lZCBieSBhbiBpdGVyYXRpb24gb2YgdGhlIHRlc3QuIFRoaXMg
aXMgYmFja2VkIGJ5CitgR2V0UHJvY2Vzc1RpbWVzYCBvbiBXaW5kb3dzLCBgZ2V0cnVzYWdlYCBv
biBMaW51eC9BbmRyb2lkLCBhbmQgYHp4X29iamVjdF9nZXRfaW5mb2Agb24gRnVjaHNpYS4KKyAg
KiBUaGlzIHZhbHVlIG1heSBzb21ldGltZXMgYmUgbGFyZ2VyIHRoYW4gYHdhbGxfdGltZWAuIFRo
YXQgaXMgYmVjYXVzZSB3ZSBhcmUgc3VtbWluZyB1cCB0aGUgdGltZQorb24gYWxsIENQVSB0aHJl
YWRzIGZvciB0aGUgdGVzdC4KKyogYHdhbGxfdGltZWA6IFdhbGwgdGltZSB0YWtlbiB0byBydW4g
YSBzaW5nbGUgaXRlcmF0aW9uLCBjYWxjdWxhdGVkIGJ5IGRpdmlkaW5nIHRoZSB0b3RhbCB3YWxs
CitjbG9jayB0aW1lIGJ5IHRoZSBudW1iZXIgb2YgdGVzdCBpdGVyYXRpb25zLgorICAqIEZvciB0
cmFjZSB0ZXN0cywgZWFjaCByZW5kZXJlZCBmcmFtZSBpcyBhbiBpdGVyYXRpb24uCisqIGBncHVf
dGltZWA6IEVzdGltYXRlZCBHUFUgZWxhcHNlZCB0aW1lIHBlciB0ZXN0IGl0ZXJhdGlvbi4gV2Ug
Y29tcHV0ZSB0aGUgZXN0aW1hdGUgdXNpbmcgR0xFUworW3RpbWVzdGFtcCBxdWVyaWVzXShodHRw
czovL3d3dy5raHJvbm9zLm9yZy9yZWdpc3RyeS9PcGVuR0wvZXh0ZW5zaW9ucy9FWFQvRVhUX2Rp
c2pvaW50X3RpbWVyX3F1ZXJ5LnR4dCkKK2F0IHRoZSBiZWdpbm5pbmcgYW5kIGVuZGluZyBvZiBl
YWNoIHRlc3QgbG9vcC4KKyAgKiBGb3IgdHJhY2UgdGVzdHMsIHRoaXMgbWV0cmljIGlzIG9ubHkg
ZW5hYmxlZCBpbiBgdnN5bmNgIG1vZGUuClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZm
IC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL3BlcmZfdGVzdHMvVHJh
Y2VQZXJmVGVzdC5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvcGVyZl90
ZXN0cy9UcmFjZVBlcmZUZXN0LmNwcAppbmRleCAwMDEwZDczZDVmOWFjODQwMzBiZDc0NDRkNzE0
ZTVjYzllMzg5ZGJkLi5iNzY0MjJjNzg1OWYyOGQxOTEzNDc5MWYwMDEwZDhiMzIwMjI0MGNmIDEw
MDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvcGVyZl90ZXN0cy9U
cmFjZVBlcmZUZXN0LmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMv
cGVyZl90ZXN0cy9UcmFjZVBlcmZUZXN0LmNwcApAQCAtMTE5MSw2ICsxMTkxLDE4IEBAIFRyYWNl
UGVyZlRlc3Q6OlRyYWNlUGVyZlRlc3QoY29uc3QgVHJhY2VQZXJmUGFyYW1zICZwYXJhbXMpCiAg
ICAgICAgIH0KICAgICB9CiAKKyAgICBpZiAodHJhY2VOYW1lSXMoInJlYWxfcmFjaW5nMyIpKQor
ICAgIHsKKyAgICAgICAgYWRkRXh0ZW5zaW9uUHJlcmVxdWlzaXRlKCJHTF9FWFRfc2hhZGVyX2Zy
YW1lYnVmZmVyX2ZldGNoIik7CisgICAgfQorCisgICAgaWYgKHRyYWNlTmFtZUlzKCJibGFkZV9h
bmRfc291bF9yZXZvbHV0aW9uIikpCisgICAgeworICAgICAgICBhZGRFeHRlbnNpb25QcmVyZXF1
aXNpdGUoIkdMX0VYVF90ZXh0dXJlX2J1ZmZlciIpOworICAgICAgICBhZGRFeHRlbnNpb25QcmVy
ZXF1aXNpdGUoIkdMX0VYVF9zaGFkZXJfZnJhbWVidWZmZXJfZmV0Y2giKTsKKyAgICAgICAgYWRk
RXh0ZW5zaW9uUHJlcmVxdWlzaXRlKCJHTF9LSFJfdGV4dHVyZV9jb21wcmVzc2lvbl9hc3RjX2xk
ciIpOworICAgIH0KKwogICAgIEFTU0VSVChtUGFyYW1zLnN1cmZhY2VUeXBlID09IFN1cmZhY2VU
eXBlOjpXaW5kb3cgfHwgZ0VuYWJsZUFsbFRyYWNlVGVzdHMpOwogICAgIEFTU0VSVChtUGFyYW1z
LmVnbFBhcmFtZXRlcnMuZGV2aWNlVHlwZSA9PSBFR0xfUExBVEZPUk1fQU5HTEVfREVWSUNFX1RZ
UEVfSEFSRFdBUkVfQU5HTEUgfHwKICAgICAgICAgICAgZ0VuYWJsZUFsbFRyYWNlVGVzdHMpOwpA
QCAtMTQwNiw2ICsxNDE4LDggQEAgdm9pZCBUcmFjZVBlcmZUZXN0OjpkcmF3QmVuY2htYXJrKCkK
ICAgICBtVHJhY2VMaWJyYXJ5LT5yZXBsYXlGcmFtZShtQ3VycmVudEZyYW1lKTsKICAgICBzdG9w
R3B1VGltZXIoKTsKIAorICAgIHVwZGF0ZVBlcmZDb3VudGVycygpOworCiAgICAgaWYgKG1QYXJh
bXMuc3VyZmFjZVR5cGUgPT0gU3VyZmFjZVR5cGU6Ok9mZnNjcmVlbikKICAgICB7CiAgICAgICAg
IGlmIChnTWluaW1pemVHUFVXb3JrKQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvc3JjL3Rlc3RzL3Jlc3RyaWN0ZWRfdHJhY2VzL3Jlc3RyaWN0ZWRfdHJhY2VfZ29sZF90ZXN0
cy5weSBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9yZXN0cmljdGVkX3RyYWNl
cy9yZXN0cmljdGVkX3RyYWNlX2dvbGRfdGVzdHMucHkKaW5kZXggMmIwNWU4MWEzZTgyYTFlNmJh
ZWQxNGYwMDhiMWNhMWE0YjdmMTQ4ZS4uZDM4NjVjYjQ4ZWMxOTZlMmY1MzM0NWEzOTBmMTMwMDI2
YjMxOGNjMCAxMDA3NTUKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL3Jl
c3RyaWN0ZWRfdHJhY2VzL3Jlc3RyaWN0ZWRfdHJhY2VfZ29sZF90ZXN0cy5weQorKysgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvcmVzdHJpY3RlZF90cmFjZXMvcmVzdHJpY3Rl
ZF90cmFjZV9nb2xkX3Rlc3RzLnB5CkBAIC0xNjQsNTUgKzE2NCwxNyBAQCBkZWYgZ2V0X3NraWFf
Z29sZF9rZXlzKGFyZ3MsIGVudik6CiAgICAgICAgIGxvZ2dpbmcuZXhjZXB0aW9uKCdnZXRfc2tp
YV9nb2xkX2tleXMgbWF5IG9ubHkgYmUgY2FsbGVkIG9uY2UnKQogICAgIGdldF9za2lhX2dvbGRf
a2V5cy5jYWxsZWQgPSBUcnVlCiAKLSAgICBjbGFzcyBGaWx0ZXI6Ci0KLSAgICAgICAgZGVmIF9f
aW5pdF9fKHNlbGYpOgotICAgICAgICAgICAgc2VsZi5hY2NlcHRpbmdfbGluZXMgPSBUcnVlCi0g
ICAgICAgICAgICBzZWxmLmRvbmVfYWNjZXB0aW5nX2xpbmVzID0gRmFsc2UKLSAgICAgICAgICAg
IHNlbGYuYW5kcm9pZF9wcmVmaXggPSByZS5jb21waWxlKEFORFJPSURfTE9HR0lOR19QUkVGSVgp
Ci0gICAgICAgICAgICBzZWxmLmxpbmVzID0gW10KLSAgICAgICAgICAgIHNlbGYuaXNfYW5kcm9p
ZCA9IEZhbHNlCi0KLSAgICAgICAgZGVmIGFwcGVuZChzZWxmLCBsaW5lKToKLSAgICAgICAgICAg
IGlmIHNlbGYuZG9uZV9hY2NlcHRpbmdfbGluZXM6Ci0gICAgICAgICAgICAgICAgcmV0dXJuCi0g
ICAgICAgICAgICBpZiAnQWRkaXRpb25hbCB0ZXN0IGVudmlyb25tZW50JyBpbiBsaW5lIG9yICdh
bmRyb2lkL3Rlc3RfcnVubmVyLnB5JyBpbiBsaW5lOgotICAgICAgICAgICAgICAgIHNlbGYuYWNj
ZXB0aW5nX2xpbmVzID0gRmFsc2UKLSAgICAgICAgICAgICAgICBzZWxmLmlzX2FuZHJvaWQgPSBU
cnVlCi0gICAgICAgICAgICBpZiBBTkRST0lEX0JFR0lOX1NZU1RFTV9JTkZPIGluIGxpbmU6Ci0g
ICAgICAgICAgICAgICAgc2VsZi5hY2NlcHRpbmdfbGluZXMgPSBUcnVlCi0gICAgICAgICAgICAg
ICAgcmV0dXJuCi0gICAgICAgICAgICBpZiBub3Qgc2VsZi5hY2NlcHRpbmdfbGluZXM6Ci0gICAg
ICAgICAgICAgICAgcmV0dXJuCi0KLSAgICAgICAgICAgIGlmIHNlbGYuaXNfYW5kcm9pZDoKLSAg
ICAgICAgICAgICAgICBsaW5lID0gc2VsZi5hbmRyb2lkX3ByZWZpeC5zdWIoJycsIGxpbmUpCi0K
LSAgICAgICAgICAgIGlmIGxpbmVbMF0gPT0gJ30nOgotICAgICAgICAgICAgICAgIHNlbGYuZG9u
ZV9hY2NlcHRpbmdfbGluZXMgPSBUcnVlCi0KLSAgICAgICAgICAgIHNlbGYubGluZXMuYXBwZW5k
KGxpbmUpCi0KLSAgICAgICAgZGVmIGdldChzZWxmKToKLSAgICAgICAgICAgIHJldHVybiBzZWxm
LmxpbmVzCi0KLSAgICB3aXRoIGNvbW1vbi50ZW1wb3JhcnlfZmlsZSgpIGFzIHRlbXBmaWxlX3Bh
dGg6CisgICAgd2l0aCB0ZW1wb3JhcnlfZGlyKCkgYXMgdGVtcF9kaXI6CiAgICAgICAgIGJpbmFy
eSA9IGdldF9iaW5hcnlfbmFtZSgnYW5nbGVfc3lzdGVtX2luZm9fdGVzdCcpCi0gICAgICAgIHN5
c2luZm9fYXJncyA9IFtiaW5hcnksICctLXZ1bGthbicsICctdiddCisgICAgICAgIHN5c2luZm9f
YXJncyA9IFtiaW5hcnksICctLXZ1bGthbicsICctdicsICctLXJlbmRlci10ZXN0LW91dHB1dC1k
aXI9JyArIHRlbXBfZGlyXQogICAgICAgICBpZiBhcmdzLnN3aWZ0c2hhZGVyOgogICAgICAgICAg
ICAgc3lzaW5mb19hcmdzLmFwcGVuZCgnLS1zd2lmdHNoYWRlcicpCisgICAgICAgIHRlbXBmaWxl
X3BhdGggPSBvcy5wYXRoLmpvaW4odGVtcF9kaXIsICdzdGRvdXQnKQogICAgICAgICBpZiBydW5f
d3JhcHBlcihhcmdzLCBzeXNpbmZvX2FyZ3MsIGVudiwgdGVtcGZpbGVfcGF0aCk6CiAgICAgICAg
ICAgICByYWlzZSBFeGNlcHRpb24oJ0Vycm9yIGdldHRpbmcgc3lzdGVtIGluZm8uJykKIAotICAg
ICAgICBmaWx0ZXIgPSBGaWx0ZXIoKQotCi0gICAgICAgIHdpdGggb3Blbih0ZW1wZmlsZV9wYXRo
KSBhcyBmOgotICAgICAgICAgICAgZm9yIGxpbmUgaW4gZjoKLSAgICAgICAgICAgICAgICBmaWx0
ZXIuYXBwZW5kKGxpbmUpCi0KLSAgICAgICAgc3RyID0gJycuam9pbihmaWx0ZXIuZ2V0KCkpCi0g
ICAgICAgIGxvZ2dpbmcuaW5mbyhzdHIpCi0gICAgICAgIGpzb25fZGF0YSA9IGpzb24ubG9hZHMo
c3RyKQorICAgICAgICB3aXRoIG9wZW4ob3MucGF0aC5qb2luKHRlbXBfZGlyLCAnYW5nbGVfc3lz
dGVtX2luZm8uanNvbicpKSBhcyBmOgorICAgICAgICAgICAganNvbl9kYXRhID0ganNvbi5sb2Fk
KGYpCiAKICAgICBpZiBsZW4oanNvbl9kYXRhLmdldCgnZ3B1cycsIFtdKSkgPT0gMCBvciBub3Qg
J2FjdGl2ZUdQVUluZGV4JyBpbiBqc29uX2RhdGE6CiAgICAgICAgIHJhaXNlIEV4Y2VwdGlvbign
RXJyb3IgZ2V0dGluZyBzeXN0ZW0gaW5mby4nKQpAQCAtMzY5LDcgKzMzMSw3IEBAIGRlZiBfcnVu
X3Rlc3RzKGFyZ3MsIHRlc3RzLCBleHRyYV9mbGFncywgZW52LCBzY3JlZW5zaG90X2RpciwgcmVz
dWx0cywgdGVzdF9yZXN1CiAKICAgICAgICAgICAgICAgICAgICAgZ3Rlc3RfZmlsdGVyID0gX2dl
dF9ndGVzdF9maWx0ZXJfZm9yX2JhdGNoKGFyZ3MsIGJhdGNoKQogICAgICAgICAgICAgICAgICAg
ICBjbWQgPSBbCi0gICAgICAgICAgICAgICAgICAgICAgICBhcmdzLnRlc3Rfc3VpdGUsCisgICAg
ICAgICAgICAgICAgICAgICAgICBnZXRfYmluYXJ5X25hbWUoYXJncy50ZXN0X3N1aXRlKSwKICAg
ICAgICAgICAgICAgICAgICAgICAgIGd0ZXN0X2ZpbHRlciwKICAgICAgICAgICAgICAgICAgICAg
ICAgICctLXJlbmRlci10ZXN0LW91dHB1dC1kaXI9JXMnICUgc2NyZWVuc2hvdF9kaXIsCiAgICAg
ICAgICAgICAgICAgICAgICAgICAnLS1vbmUtZnJhbWUtb25seScsCkBAIC00NzksMTEgKzQ0MSw2
IEBAIGRlZiBtYWluKCk6CiAgICAgcmMgPSAwCiAKICAgICB0cnk6Ci0gICAgICAgIGlmIElzV2lu
ZG93cygpOgotICAgICAgICAgICAgYXJncy50ZXN0X3N1aXRlID0gJy5cXCVzLmV4ZScgJSBhcmdz
LnRlc3Rfc3VpdGUKLSAgICAgICAgZWxzZToKLSAgICAgICAgICAgIGFyZ3MudGVzdF9zdWl0ZSA9
ICcuLyVzJyAlIGFyZ3MudGVzdF9zdWl0ZQotCiAgICAgICAgICMgcmVhZCB0ZXN0IHNldAogICAg
ICAgICBqc29uX25hbWUgPSBvcy5wYXRoLmpvaW4oQU5HTEVfU1JDX0RJUiwgJ3NyYycsICd0ZXN0
cycsICdyZXN0cmljdGVkX3RyYWNlcycsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAncmVzdHJpY3RlZF90cmFjZXMuanNvbicpCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvdGVzdHMvcmVzdHJpY3RlZF90cmFjZXMvcmVzdHJpY3RlZF90cmFjZXMuanNv
biBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9yZXN0cmljdGVkX3RyYWNlcy9y
ZXN0cmljdGVkX3RyYWNlcy5qc29uCmluZGV4IGVjYzMwOWVhZGIzOWY3NTM2YzA0OTk0YWY2OWFk
NTA2ODRkMDI4YmYuLjUxMDIwZmYzZDY3MTkzYjgyOWRlNDgyNDdhNzg1NmIzOTQ3MjM0MzggMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9yZXN0cmljdGVkX3Ry
YWNlcy9yZXN0cmljdGVkX3RyYWNlcy5qc29uCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy90ZXN0cy9yZXN0cmljdGVkX3RyYWNlcy9yZXN0cmljdGVkX3RyYWNlcy5qc29uCkBAIC0x
OSw2ICsxOSw3IEBACiAgICAgImF6dGVjX3J1aW5zIDUiLAogICAgICJiYWRsYW5kIDUiLAogICAg
ICJiZWFjaF9idWdneV9yYWNpbmcgNSIsCisgICAgImJsYWRlX2FuZF9zb3VsX3Jldm9sdXRpb24g
MSIsCiAgICAgImJsb2NrbWFuX2dvIDUiLAogICAgICJicmF3bF9zdGFycyA1IiwKICAgICAiYnJp
Y2tzX2JyZWFrZXJfcXVlc3QgNSIsCkBAIC0yOCw2ICsyOSw3IEBACiAgICAgImNhbmR5X2NydXNo
XzUwMCA1IiwKICAgICAiY2FuZHlfY3J1c2hfc29kYV9zYWdhIDUiLAogICAgICJjYXJfcGFya2lu
Z19tdWx0aXBsYXllciA1IiwKKyAgICAiY2FzdGxldmFuaWFfc290biAxIiwKICAgICAiY2xhc2hf
b2ZfY2xhbnMgNSIsCiAgICAgImNsYXNoX3JveWFsZSA1IiwKICAgICAiY29kX21vYmlsZSA1IiwK
QEAgLTUxLDYgKzUzLDkgQEAKICAgICAiZmF0ZV9ncmFuZF9vcmRlciA1IiwKICAgICAiZmlmYV9t
b2JpbGUgNSIsCiAgICAgImZpbmFsX2ZhbnRhc3kgNSIsCisgICAgImZpbmFsX2ZhbnRhc3lfYnJh
dmVfZXh2aXVzIDEiLAorICAgICJmaXJlX2VtYmxlbV9oZXJvZXMgMSIsCisgICAgImZpdmVfbmln
aHRzX2F0X2ZyZWRkeXMgMSIsCiAgICAgImZyZWVfZmlyZSA1IiwKICAgICAiZ2FyZGVuc2NhcGVz
IDUiLAogICAgICJnZW5zaGluX2ltcGFjdCA1IiwKQEAgLTEwMCw2ICsxMDUsNyBAQAogICAgICJy
ZWFsX2NvbW1hbmRvX3NlY3JldF9taXNzaW9uIDUiLAogICAgICJyZWFsX2NyaWNrZXRfMjAgNSIs
CiAgICAgInJlYWxfZ2FuZ3N0ZXJfY3JpbWUgNSIsCisgICAgInJlYWxfcmFjaW5nMyAxIiwKICAg
ICAicmVzcGF3bmFibGVzIDEiLAogICAgICJyaXNlX29mX2tpbmdkb21zIDUiLAogICAgICJyb21h
bmNpbmdfc2FnYSA1IiwKQEAgLTExMSw2ICsxMTcsNyBAQAogICAgICJzbGluZ3Nob3RfdGVzdDEg
NSIsCiAgICAgInNsaW5nc2hvdF90ZXN0MiA1IiwKICAgICAic25pcGVyXzNkIDUiLAorICAgICJz
b2xhcl9zbWFzaCAyIiwKICAgICAic29uaWNfdGhlX2hlZGdlaG9nIDUiLAogICAgICJzdGFuZG9m
Zl8yIDUiLAogICAgICJzdGF0ZV9vZl9zdXJ2aXZhbCAxIiwKZGlmZiAtLWdpdCBhL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9yZXN0cmljdGVkX3RyYWNlcy90cmFjZV9lZ2xfbG9h
ZGVyX2F1dG9nZW4uY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL3Jlc3Ry
aWN0ZWRfdHJhY2VzL3RyYWNlX2VnbF9sb2FkZXJfYXV0b2dlbi5jcHAKaW5kZXggZWUyZmUwODI2
NjMxNDJmNjU0NmVjYzVjYmJmNjQ2ZjQ4MjdjY2E1Yi4uODQ2NzBkMGNhMzE1OTMyZDEwMjRhMjMw
M2E0ZWFjYjIwNjNmODU2OCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3Jj
L3Rlc3RzL3Jlc3RyaWN0ZWRfdHJhY2VzL3RyYWNlX2VnbF9sb2FkZXJfYXV0b2dlbi5jcHAKKysr
IGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL3Jlc3RyaWN0ZWRfdHJhY2VzL3Ry
YWNlX2VnbF9sb2FkZXJfYXV0b2dlbi5jcHAKQEAgLTcyLDYgKzcyLDcgQEAgQU5HTEVfVFJBQ0Vf
TE9BREVSX0VYUE9SVCBQRk5FR0xDUkVBVEVERVZJQ0VBTkdMRVBST0MgdF9lZ2xDcmVhdGVEZXZp
Y2VBTkdMRTsKIEFOR0xFX1RSQUNFX0xPQURFUl9FWFBPUlQgUEZORUdMUkVMRUFTRURFVklDRUFO
R0xFUFJPQyB0X2VnbFJlbGVhc2VEZXZpY2VBTkdMRTsKIEFOR0xFX1RSQUNFX0xPQURFUl9FWFBP
UlQgUEZORUdMUVVFUllESVNQTEFZQVRUUklCQU5HTEVQUk9DIHRfZWdsUXVlcnlEaXNwbGF5QXR0
cmliQU5HTEU7CiBBTkdMRV9UUkFDRV9MT0FERVJfRVhQT1JUIFBGTkVHTFFVRVJZU1RSSU5HSUFO
R0xFUFJPQyB0X2VnbFF1ZXJ5U3RyaW5naUFOR0xFOworQU5HTEVfVFJBQ0VfTE9BREVSX0VYUE9S
VCBQRk5FR0xGT1JDRUdQVVNXSVRDSEFOR0xFUFJPQyB0X2VnbEZvcmNlR1BVU3dpdGNoQU5HTEU7
CiBBTkdMRV9UUkFDRV9MT0FERVJfRVhQT1JUIFBGTkVHTEhBTkRMRUdQVVNXSVRDSEFOR0xFUFJP
QyB0X2VnbEhhbmRsZUdQVVN3aXRjaEFOR0xFOwogQU5HTEVfVFJBQ0VfTE9BREVSX0VYUE9SVCBQ
Rk5FR0xSRUFDUVVJUkVISUdIUE9XRVJHUFVBTkdMRVBST0MgdF9lZ2xSZWFjcXVpcmVIaWdoUG93
ZXJHUFVBTkdMRTsKIEFOR0xFX1RSQUNFX0xPQURFUl9FWFBPUlQgUEZORUdMUkVMRUFTRUhJR0hQ
T1dFUkdQVUFOR0xFUFJPQyB0X2VnbFJlbGVhc2VIaWdoUG93ZXJHUFVBTkdMRTsKQEAgLTkyLDYg
KzkzLDggQEAgQU5HTEVfVFJBQ0VfTE9BREVSX0VYUE9SVCBQRk5FR0xHRVRTWU5DVkFMVUVTQ0hS
T01JVU1QUk9DIHRfZWdsR2V0U3luY1ZhbHVlc0NIUk8KIEFOR0xFX1RSQUNFX0xPQURFUl9FWFBP
UlQgUEZORUdMUVVFUllERVZJQ0VBVFRSSUJFWFRQUk9DIHRfZWdsUXVlcnlEZXZpY2VBdHRyaWJF
WFQ7CiBBTkdMRV9UUkFDRV9MT0FERVJfRVhQT1JUIFBGTkVHTFFVRVJZREVWSUNFU1RSSU5HRVhU
UFJPQyB0X2VnbFF1ZXJ5RGV2aWNlU3RyaW5nRVhUOwogQU5HTEVfVFJBQ0VfTE9BREVSX0VYUE9S
VCBQRk5FR0xRVUVSWURJU1BMQVlBVFRSSUJFWFRQUk9DIHRfZWdsUXVlcnlEaXNwbGF5QXR0cmli
RVhUOworQU5HTEVfVFJBQ0VfTE9BREVSX0VYUE9SVCBQRk5FR0xRVUVSWURNQUJVRkZPUk1BVFNF
WFRQUk9DIHRfZWdsUXVlcnlEbWFCdWZGb3JtYXRzRVhUOworQU5HTEVfVFJBQ0VfTE9BREVSX0VY
UE9SVCBQRk5FR0xRVUVSWURNQUJVRk1PRElGSUVSU0VYVFBST0MgdF9lZ2xRdWVyeURtYUJ1Zk1v
ZGlmaWVyc0VYVDsKIEFOR0xFX1RSQUNFX0xPQURFUl9FWFBPUlQgUEZORUdMQ1JFQVRFUExBVEZP
Uk1QSVhNQVBTVVJGQUNFRVhUUFJPQwogICAgIHRfZWdsQ3JlYXRlUGxhdGZvcm1QaXhtYXBTdXJm
YWNlRVhUOwogQU5HTEVfVFJBQ0VfTE9BREVSX0VYUE9SVCBQRk5FR0xDUkVBVEVQTEFURk9STVdJ
TkRPV1NVUkZBQ0VFWFRQUk9DCkBAIC0yMTcsNiArMjIwLDggQEAgdm9pZCBMb2FkRUdMKExvYWRQ
cm9jIGxvYWRQcm9jKQogICAgICAgICByZWludGVycHJldF9jYXN0PFBGTkVHTFFVRVJZRElTUExB
WUFUVFJJQkFOR0xFUFJPQz4obG9hZFByb2MoImVnbFF1ZXJ5RGlzcGxheUF0dHJpYkFOR0xFIikp
OwogICAgIHRfZWdsUXVlcnlTdHJpbmdpQU5HTEUgPQogICAgICAgICByZWludGVycHJldF9jYXN0
PFBGTkVHTFFVRVJZU1RSSU5HSUFOR0xFUFJPQz4obG9hZFByb2MoImVnbFF1ZXJ5U3RyaW5naUFO
R0xFIikpOworICAgIHRfZWdsRm9yY2VHUFVTd2l0Y2hBTkdMRSA9CisgICAgICAgIHJlaW50ZXJw
cmV0X2Nhc3Q8UEZORUdMRk9SQ0VHUFVTV0lUQ0hBTkdMRVBST0M+KGxvYWRQcm9jKCJlZ2xGb3Jj
ZUdQVVN3aXRjaEFOR0xFIikpOwogICAgIHRfZWdsSGFuZGxlR1BVU3dpdGNoQU5HTEUgPQogICAg
ICAgICByZWludGVycHJldF9jYXN0PFBGTkVHTEhBTkRMRUdQVVNXSVRDSEFOR0xFUFJPQz4obG9h
ZFByb2MoImVnbEhhbmRsZUdQVVN3aXRjaEFOR0xFIikpOwogICAgIHRfZWdsUmVhY3F1aXJlSGln
aFBvd2VyR1BVQU5HTEUgPSByZWludGVycHJldF9jYXN0PFBGTkVHTFJFQUNRVUlSRUhJR0hQT1dF
UkdQVUFOR0xFUFJPQz4oCkBAIC0yNTUsNiArMjYwLDEwIEBAIHZvaWQgTG9hZEVHTChMb2FkUHJv
YyBsb2FkUHJvYykKICAgICAgICAgcmVpbnRlcnByZXRfY2FzdDxQRk5FR0xRVUVSWURFVklDRVNU
UklOR0VYVFBST0M+KGxvYWRQcm9jKCJlZ2xRdWVyeURldmljZVN0cmluZ0VYVCIpKTsKICAgICB0
X2VnbFF1ZXJ5RGlzcGxheUF0dHJpYkVYVCA9CiAgICAgICAgIHJlaW50ZXJwcmV0X2Nhc3Q8UEZO
RUdMUVVFUllESVNQTEFZQVRUUklCRVhUUFJPQz4obG9hZFByb2MoImVnbFF1ZXJ5RGlzcGxheUF0
dHJpYkVYVCIpKTsKKyAgICB0X2VnbFF1ZXJ5RG1hQnVmRm9ybWF0c0VYVCA9CisgICAgICAgIHJl
aW50ZXJwcmV0X2Nhc3Q8UEZORUdMUVVFUllETUFCVUZGT1JNQVRTRVhUUFJPQz4obG9hZFByb2Mo
ImVnbFF1ZXJ5RG1hQnVmRm9ybWF0c0VYVCIpKTsKKyAgICB0X2VnbFF1ZXJ5RG1hQnVmTW9kaWZp
ZXJzRVhUID0KKyAgICAgICAgcmVpbnRlcnByZXRfY2FzdDxQRk5FR0xRVUVSWURNQUJVRk1PRElG
SUVSU0VYVFBST0M+KGxvYWRQcm9jKCJlZ2xRdWVyeURtYUJ1Zk1vZGlmaWVyc0VYVCIpKTsKICAg
ICB0X2VnbENyZWF0ZVBsYXRmb3JtUGl4bWFwU3VyZmFjZUVYVCA9CiAgICAgICAgIHJlaW50ZXJw
cmV0X2Nhc3Q8UEZORUdMQ1JFQVRFUExBVEZPUk1QSVhNQVBTVVJGQUNFRVhUUFJPQz4oCiAgICAg
ICAgICAgICBsb2FkUHJvYygiZWdsQ3JlYXRlUGxhdGZvcm1QaXhtYXBTdXJmYWNlRVhUIikpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL3Jlc3RyaWN0ZWRf
dHJhY2VzL3RyYWNlX2VnbF9sb2FkZXJfYXV0b2dlbi5oIGIvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvc3JjL3Rlc3RzL3Jlc3RyaWN0ZWRfdHJhY2VzL3RyYWNlX2VnbF9sb2FkZXJfYXV0b2dlbi5o
CmluZGV4IGVjNzRhOGIwZDM3ZmRhNTg4YTg1YWVjNzk1ZjNmZjNjZTAzYjM3MTYuLmMxZmEzYjUw
MDE4Yjg2N2JiZDQ5NzIzOTc0ZTJhMThmZjFjODViZjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9yZXN0cmljdGVkX3RyYWNlcy90cmFjZV9lZ2xfbG9hZGVy
X2F1dG9nZW4uaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvcmVzdHJp
Y3RlZF90cmFjZXMvdHJhY2VfZWdsX2xvYWRlcl9hdXRvZ2VuLmgKQEAgLTc0LDYgKzc0LDcgQEAK
ICNkZWZpbmUgZWdsUmVsZWFzZURldmljZUFOR0xFIHRfZWdsUmVsZWFzZURldmljZUFOR0xFCiAj
ZGVmaW5lIGVnbFF1ZXJ5RGlzcGxheUF0dHJpYkFOR0xFIHRfZWdsUXVlcnlEaXNwbGF5QXR0cmli
QU5HTEUKICNkZWZpbmUgZWdsUXVlcnlTdHJpbmdpQU5HTEUgdF9lZ2xRdWVyeVN0cmluZ2lBTkdM
RQorI2RlZmluZSBlZ2xGb3JjZUdQVVN3aXRjaEFOR0xFIHRfZWdsRm9yY2VHUFVTd2l0Y2hBTkdM
RQogI2RlZmluZSBlZ2xIYW5kbGVHUFVTd2l0Y2hBTkdMRSB0X2VnbEhhbmRsZUdQVVN3aXRjaEFO
R0xFCiAjZGVmaW5lIGVnbFJlYWNxdWlyZUhpZ2hQb3dlckdQVUFOR0xFIHRfZWdsUmVhY3F1aXJl
SGlnaFBvd2VyR1BVQU5HTEUKICNkZWZpbmUgZWdsUmVsZWFzZUhpZ2hQb3dlckdQVUFOR0xFIHRf
ZWdsUmVsZWFzZUhpZ2hQb3dlckdQVUFOR0xFCkBAIC05Miw2ICs5Myw4IEBACiAjZGVmaW5lIGVn
bFF1ZXJ5RGV2aWNlQXR0cmliRVhUIHRfZWdsUXVlcnlEZXZpY2VBdHRyaWJFWFQKICNkZWZpbmUg
ZWdsUXVlcnlEZXZpY2VTdHJpbmdFWFQgdF9lZ2xRdWVyeURldmljZVN0cmluZ0VYVAogI2RlZmlu
ZSBlZ2xRdWVyeURpc3BsYXlBdHRyaWJFWFQgdF9lZ2xRdWVyeURpc3BsYXlBdHRyaWJFWFQKKyNk
ZWZpbmUgZWdsUXVlcnlEbWFCdWZGb3JtYXRzRVhUIHRfZWdsUXVlcnlEbWFCdWZGb3JtYXRzRVhU
CisjZGVmaW5lIGVnbFF1ZXJ5RG1hQnVmTW9kaWZpZXJzRVhUIHRfZWdsUXVlcnlEbWFCdWZNb2Rp
ZmllcnNFWFQKICNkZWZpbmUgZWdsQ3JlYXRlUGxhdGZvcm1QaXhtYXBTdXJmYWNlRVhUIHRfZWds
Q3JlYXRlUGxhdGZvcm1QaXhtYXBTdXJmYWNlRVhUCiAjZGVmaW5lIGVnbENyZWF0ZVBsYXRmb3Jt
V2luZG93U3VyZmFjZUVYVCB0X2VnbENyZWF0ZVBsYXRmb3JtV2luZG93U3VyZmFjZUVYVAogI2Rl
ZmluZSBlZ2xHZXRQbGF0Zm9ybURpc3BsYXlFWFQgdF9lZ2xHZXRQbGF0Zm9ybURpc3BsYXlFWFQK
QEAgLTE4Nyw2ICsxOTAsNyBAQCBBTkdMRV9UUkFDRV9MT0FERVJfRVhQT1JUIGV4dGVybiBQRk5F
R0xDUkVBVEVERVZJQ0VBTkdMRVBST0MgdF9lZ2xDcmVhdGVEZXZpY2VBTgogQU5HTEVfVFJBQ0Vf
TE9BREVSX0VYUE9SVCBleHRlcm4gUEZORUdMUkVMRUFTRURFVklDRUFOR0xFUFJPQyB0X2VnbFJl
bGVhc2VEZXZpY2VBTkdMRTsKIEFOR0xFX1RSQUNFX0xPQURFUl9FWFBPUlQgZXh0ZXJuIFBGTkVH
TFFVRVJZRElTUExBWUFUVFJJQkFOR0xFUFJPQyB0X2VnbFF1ZXJ5RGlzcGxheUF0dHJpYkFOR0xF
OwogQU5HTEVfVFJBQ0VfTE9BREVSX0VYUE9SVCBleHRlcm4gUEZORUdMUVVFUllTVFJJTkdJQU5H
TEVQUk9DIHRfZWdsUXVlcnlTdHJpbmdpQU5HTEU7CitBTkdMRV9UUkFDRV9MT0FERVJfRVhQT1JU
IGV4dGVybiBQRk5FR0xGT1JDRUdQVVNXSVRDSEFOR0xFUFJPQyB0X2VnbEZvcmNlR1BVU3dpdGNo
QU5HTEU7CiBBTkdMRV9UUkFDRV9MT0FERVJfRVhQT1JUIGV4dGVybiBQRk5FR0xIQU5ETEVHUFVT
V0lUQ0hBTkdMRVBST0MgdF9lZ2xIYW5kbGVHUFVTd2l0Y2hBTkdMRTsKIEFOR0xFX1RSQUNFX0xP
QURFUl9FWFBPUlQgZXh0ZXJuIFBGTkVHTFJFQUNRVUlSRUhJR0hQT1dFUkdQVUFOR0xFUFJPQwog
ICAgIHRfZWdsUmVhY3F1aXJlSGlnaFBvd2VyR1BVQU5HTEU7CkBAIC0yMDksNiArMjEzLDggQEAg
QU5HTEVfVFJBQ0VfTE9BREVSX0VYUE9SVCBleHRlcm4gUEZORUdMR0VUU1lOQ1ZBTFVFU0NIUk9N
SVVNUFJPQyB0X2VnbEdldFN5bmNWYWwKIEFOR0xFX1RSQUNFX0xPQURFUl9FWFBPUlQgZXh0ZXJu
IFBGTkVHTFFVRVJZREVWSUNFQVRUUklCRVhUUFJPQyB0X2VnbFF1ZXJ5RGV2aWNlQXR0cmliRVhU
OwogQU5HTEVfVFJBQ0VfTE9BREVSX0VYUE9SVCBleHRlcm4gUEZORUdMUVVFUllERVZJQ0VTVFJJ
TkdFWFRQUk9DIHRfZWdsUXVlcnlEZXZpY2VTdHJpbmdFWFQ7CiBBTkdMRV9UUkFDRV9MT0FERVJf
RVhQT1JUIGV4dGVybiBQRk5FR0xRVUVSWURJU1BMQVlBVFRSSUJFWFRQUk9DIHRfZWdsUXVlcnlE
aXNwbGF5QXR0cmliRVhUOworQU5HTEVfVFJBQ0VfTE9BREVSX0VYUE9SVCBleHRlcm4gUEZORUdM
UVVFUllETUFCVUZGT1JNQVRTRVhUUFJPQyB0X2VnbFF1ZXJ5RG1hQnVmRm9ybWF0c0VYVDsKK0FO
R0xFX1RSQUNFX0xPQURFUl9FWFBPUlQgZXh0ZXJuIFBGTkVHTFFVRVJZRE1BQlVGTU9ESUZJRVJT
RVhUUFJPQyB0X2VnbFF1ZXJ5RG1hQnVmTW9kaWZpZXJzRVhUOwogQU5HTEVfVFJBQ0VfTE9BREVS
X0VYUE9SVCBleHRlcm4gUEZORUdMQ1JFQVRFUExBVEZPUk1QSVhNQVBTVVJGQUNFRVhUUFJPQwog
ICAgIHRfZWdsQ3JlYXRlUGxhdGZvcm1QaXhtYXBTdXJmYWNlRVhUOwogQU5HTEVfVFJBQ0VfTE9B
REVSX0VYUE9SVCBleHRlcm4gUEZORUdMQ1JFQVRFUExBVEZPUk1XSU5ET1dTVVJGQUNFRVhUUFJP
QwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL3Jlc3RyaWN0
ZWRfdHJhY2VzL3RyYWNlX2dsZXNfbG9hZGVyX2F1dG9nZW4uY3BwIGIvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL3Rlc3RzL3Jlc3RyaWN0ZWRfdHJhY2VzL3RyYWNlX2dsZXNfbG9hZGVyX2F1
dG9nZW4uY3BwCmluZGV4IDlhMzM3NWNmMWE5MWRmNDA5ZjRkNTg3YmY5Y2YwZWUzYTBmNmY1N2Mu
LmJmZWZiODJjMWRlMGY5YzA0ZGQwYzZhNDdiMDE1OTA0Y2FkYjg0ZTggMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9yZXN0cmljdGVkX3RyYWNlcy90cmFjZV9n
bGVzX2xvYWRlcl9hdXRvZ2VuLmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
dGVzdHMvcmVzdHJpY3RlZF90cmFjZXMvdHJhY2VfZ2xlc19sb2FkZXJfYXV0b2dlbi5jcHAKQEAg
LTQ1Niw2ICs0NTYsMTggQEAgQU5HTEVfVFJBQ0VfTE9BREVSX0VYUE9SVCBQRk5HTEdFVFNBTVBM
RVJQQVJBTUVURVJJVUlWUFJPQyB0X2dsR2V0U2FtcGxlclBhcmFtZXQKIEFOR0xFX1RSQUNFX0xP
QURFUl9FWFBPUlQgUEZOR0xURVhCVUZGRVJQUk9DIHRfZ2xUZXhCdWZmZXI7CiBBTkdMRV9UUkFD
RV9MT0FERVJfRVhQT1JUIFBGTkdMVEVYQlVGRkVSUkFOR0VQUk9DIHRfZ2xUZXhCdWZmZXJSYW5n
ZTsKIEFOR0xFX1RSQUNFX0xPQURFUl9FWFBPUlQgUEZOR0xURVhTVE9SQUdFM0RNVUxUSVNBTVBM
RVBST0MgdF9nbFRleFN0b3JhZ2UzRE11bHRpc2FtcGxlOworQU5HTEVfVFJBQ0VfTE9BREVSX0VY
UE9SVCBQRk5HTEJFR0lOUEVSRk1PTklUT1JBTURQUk9DIHRfZ2xCZWdpblBlcmZNb25pdG9yQU1E
OworQU5HTEVfVFJBQ0VfTE9BREVSX0VYUE9SVCBQRk5HTERFTEVURVBFUkZNT05JVE9SU0FNRFBS
T0MgdF9nbERlbGV0ZVBlcmZNb25pdG9yc0FNRDsKK0FOR0xFX1RSQUNFX0xPQURFUl9FWFBPUlQg
UEZOR0xFTkRQRVJGTU9OSVRPUkFNRFBST0MgdF9nbEVuZFBlcmZNb25pdG9yQU1EOworQU5HTEVf
VFJBQ0VfTE9BREVSX0VYUE9SVCBQRk5HTEdFTlBFUkZNT05JVE9SU0FNRFBST0MgdF9nbEdlblBl
cmZNb25pdG9yc0FNRDsKK0FOR0xFX1RSQUNFX0xPQURFUl9FWFBPUlQgUEZOR0xHRVRQRVJGTU9O
SVRPUkNPVU5URVJEQVRBQU1EUFJPQyB0X2dsR2V0UGVyZk1vbml0b3JDb3VudGVyRGF0YUFNRDsK
K0FOR0xFX1RSQUNFX0xPQURFUl9FWFBPUlQgUEZOR0xHRVRQRVJGTU9OSVRPUkNPVU5URVJJTkZP
QU1EUFJPQyB0X2dsR2V0UGVyZk1vbml0b3JDb3VudGVySW5mb0FNRDsKK0FOR0xFX1RSQUNFX0xP
QURFUl9FWFBPUlQgUEZOR0xHRVRQRVJGTU9OSVRPUkNPVU5URVJTVFJJTkdBTURQUk9DCisgICAg
dF9nbEdldFBlcmZNb25pdG9yQ291bnRlclN0cmluZ0FNRDsKK0FOR0xFX1RSQUNFX0xPQURFUl9F
WFBPUlQgUEZOR0xHRVRQRVJGTU9OSVRPUkNPVU5URVJTQU1EUFJPQyB0X2dsR2V0UGVyZk1vbml0
b3JDb3VudGVyc0FNRDsKK0FOR0xFX1RSQUNFX0xPQURFUl9FWFBPUlQgUEZOR0xHRVRQRVJGTU9O
SVRPUkdST1VQU1RSSU5HQU1EUFJPQyB0X2dsR2V0UGVyZk1vbml0b3JHcm91cFN0cmluZ0FNRDsK
K0FOR0xFX1RSQUNFX0xPQURFUl9FWFBPUlQgUEZOR0xHRVRQRVJGTU9OSVRPUkdST1VQU0FNRFBS
T0MgdF9nbEdldFBlcmZNb25pdG9yR3JvdXBzQU1EOworQU5HTEVfVFJBQ0VfTE9BREVSX0VYUE9S
VCBQRk5HTFNFTEVDVFBFUkZNT05JVE9SQ09VTlRFUlNBTURQUk9DIHRfZ2xTZWxlY3RQZXJmTW9u
aXRvckNvdW50ZXJzQU1EOwogQU5HTEVfVFJBQ0VfTE9BREVSX0VYUE9SVCBQRk5HTERSQVdBUlJB
WVNJTlNUQU5DRURCQVNFSU5TVEFOQ0VBTkdMRVBST0MKICAgICB0X2dsRHJhd0FycmF5c0luc3Rh
bmNlZEJhc2VJbnN0YW5jZUFOR0xFOwogQU5HTEVfVFJBQ0VfTE9BREVSX0VYUE9SVCBQRk5HTERS
QVdFTEVNRU5UU0lOU1RBTkNFREJBU0VWRVJURVhCQVNFSU5TVEFOQ0VBTkdMRVBST0MKQEAgLTE0
OTEsNiArMTUwMywyOCBAQCB2b2lkIExvYWRHTEVTKExvYWRQcm9jIGxvYWRQcm9jKQogICAgIHRf
Z2xUZXhCdWZmZXJSYW5nZSA9IHJlaW50ZXJwcmV0X2Nhc3Q8UEZOR0xURVhCVUZGRVJSQU5HRVBS
T0M+KGxvYWRQcm9jKCJnbFRleEJ1ZmZlclJhbmdlIikpOwogICAgIHRfZ2xUZXhTdG9yYWdlM0RN
dWx0aXNhbXBsZSA9CiAgICAgICAgIHJlaW50ZXJwcmV0X2Nhc3Q8UEZOR0xURVhTVE9SQUdFM0RN
VUxUSVNBTVBMRVBST0M+KGxvYWRQcm9jKCJnbFRleFN0b3JhZ2UzRE11bHRpc2FtcGxlIikpOwor
ICAgIHRfZ2xCZWdpblBlcmZNb25pdG9yQU1EID0KKyAgICAgICAgcmVpbnRlcnByZXRfY2FzdDxQ
Rk5HTEJFR0lOUEVSRk1PTklUT1JBTURQUk9DPihsb2FkUHJvYygiZ2xCZWdpblBlcmZNb25pdG9y
QU1EIikpOworICAgIHRfZ2xEZWxldGVQZXJmTW9uaXRvcnNBTUQgPQorICAgICAgICByZWludGVy
cHJldF9jYXN0PFBGTkdMREVMRVRFUEVSRk1PTklUT1JTQU1EUFJPQz4obG9hZFByb2MoImdsRGVs
ZXRlUGVyZk1vbml0b3JzQU1EIikpOworICAgIHRfZ2xFbmRQZXJmTW9uaXRvckFNRCA9CisgICAg
ICAgIHJlaW50ZXJwcmV0X2Nhc3Q8UEZOR0xFTkRQRVJGTU9OSVRPUkFNRFBST0M+KGxvYWRQcm9j
KCJnbEVuZFBlcmZNb25pdG9yQU1EIikpOworICAgIHRfZ2xHZW5QZXJmTW9uaXRvcnNBTUQgPQor
ICAgICAgICByZWludGVycHJldF9jYXN0PFBGTkdMR0VOUEVSRk1PTklUT1JTQU1EUFJPQz4obG9h
ZFByb2MoImdsR2VuUGVyZk1vbml0b3JzQU1EIikpOworICAgIHRfZ2xHZXRQZXJmTW9uaXRvckNv
dW50ZXJEYXRhQU1EID0gcmVpbnRlcnByZXRfY2FzdDxQRk5HTEdFVFBFUkZNT05JVE9SQ09VTlRF
UkRBVEFBTURQUk9DPigKKyAgICAgICAgbG9hZFByb2MoImdsR2V0UGVyZk1vbml0b3JDb3VudGVy
RGF0YUFNRCIpKTsKKyAgICB0X2dsR2V0UGVyZk1vbml0b3JDb3VudGVySW5mb0FNRCA9IHJlaW50
ZXJwcmV0X2Nhc3Q8UEZOR0xHRVRQRVJGTU9OSVRPUkNPVU5URVJJTkZPQU1EUFJPQz4oCisgICAg
ICAgIGxvYWRQcm9jKCJnbEdldFBlcmZNb25pdG9yQ291bnRlckluZm9BTUQiKSk7CisgICAgdF9n
bEdldFBlcmZNb25pdG9yQ291bnRlclN0cmluZ0FNRCA9IHJlaW50ZXJwcmV0X2Nhc3Q8UEZOR0xH
RVRQRVJGTU9OSVRPUkNPVU5URVJTVFJJTkdBTURQUk9DPigKKyAgICAgICAgbG9hZFByb2MoImds
R2V0UGVyZk1vbml0b3JDb3VudGVyU3RyaW5nQU1EIikpOworICAgIHRfZ2xHZXRQZXJmTW9uaXRv
ckNvdW50ZXJzQU1EID0gcmVpbnRlcnByZXRfY2FzdDxQRk5HTEdFVFBFUkZNT05JVE9SQ09VTlRF
UlNBTURQUk9DPigKKyAgICAgICAgbG9hZFByb2MoImdsR2V0UGVyZk1vbml0b3JDb3VudGVyc0FN
RCIpKTsKKyAgICB0X2dsR2V0UGVyZk1vbml0b3JHcm91cFN0cmluZ0FNRCA9IHJlaW50ZXJwcmV0
X2Nhc3Q8UEZOR0xHRVRQRVJGTU9OSVRPUkdST1VQU1RSSU5HQU1EUFJPQz4oCisgICAgICAgIGxv
YWRQcm9jKCJnbEdldFBlcmZNb25pdG9yR3JvdXBTdHJpbmdBTUQiKSk7CisgICAgdF9nbEdldFBl
cmZNb25pdG9yR3JvdXBzQU1EID0KKyAgICAgICAgcmVpbnRlcnByZXRfY2FzdDxQRk5HTEdFVFBF
UkZNT05JVE9SR1JPVVBTQU1EUFJPQz4obG9hZFByb2MoImdsR2V0UGVyZk1vbml0b3JHcm91cHNB
TUQiKSk7CisgICAgdF9nbFNlbGVjdFBlcmZNb25pdG9yQ291bnRlcnNBTUQgPSByZWludGVycHJl
dF9jYXN0PFBGTkdMU0VMRUNUUEVSRk1PTklUT1JDT1VOVEVSU0FNRFBST0M+KAorICAgICAgICBs
b2FkUHJvYygiZ2xTZWxlY3RQZXJmTW9uaXRvckNvdW50ZXJzQU1EIikpOwogICAgIHRfZ2xEcmF3
QXJyYXlzSW5zdGFuY2VkQmFzZUluc3RhbmNlQU5HTEUgPQogICAgICAgICByZWludGVycHJldF9j
YXN0PFBGTkdMRFJBV0FSUkFZU0lOU1RBTkNFREJBU0VJTlNUQU5DRUFOR0xFUFJPQz4oCiAgICAg
ICAgICAgICBsb2FkUHJvYygiZ2xEcmF3QXJyYXlzSW5zdGFuY2VkQmFzZUluc3RhbmNlQU5HTEUi
KSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvcmVzdHJp
Y3RlZF90cmFjZXMvdHJhY2VfZ2xlc19sb2FkZXJfYXV0b2dlbi5oIGIvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL3Rlc3RzL3Jlc3RyaWN0ZWRfdHJhY2VzL3RyYWNlX2dsZXNfbG9hZGVyX2F1
dG9nZW4uaAppbmRleCBhMDY3YWEzNmM2YjU5NjllM2YzNjQ5YTMwMTFiMjg0MzA1NTdhNTI1Li4w
MmUwY2M2YzI4ZDU5NDhmYjU1MjU1ZmY3NzBiODJiMjMwZDNjOGJkIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvcmVzdHJpY3RlZF90cmFjZXMvdHJhY2VfZ2xl
c19sb2FkZXJfYXV0b2dlbi5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0
cy9yZXN0cmljdGVkX3RyYWNlcy90cmFjZV9nbGVzX2xvYWRlcl9hdXRvZ2VuLmgKQEAgLTQ2MSw2
ICs0NjEsMTcgQEAKICNkZWZpbmUgZ2xUZXhCdWZmZXIgdF9nbFRleEJ1ZmZlcgogI2RlZmluZSBn
bFRleEJ1ZmZlclJhbmdlIHRfZ2xUZXhCdWZmZXJSYW5nZQogI2RlZmluZSBnbFRleFN0b3JhZ2Uz
RE11bHRpc2FtcGxlIHRfZ2xUZXhTdG9yYWdlM0RNdWx0aXNhbXBsZQorI2RlZmluZSBnbEJlZ2lu
UGVyZk1vbml0b3JBTUQgdF9nbEJlZ2luUGVyZk1vbml0b3JBTUQKKyNkZWZpbmUgZ2xEZWxldGVQ
ZXJmTW9uaXRvcnNBTUQgdF9nbERlbGV0ZVBlcmZNb25pdG9yc0FNRAorI2RlZmluZSBnbEVuZFBl
cmZNb25pdG9yQU1EIHRfZ2xFbmRQZXJmTW9uaXRvckFNRAorI2RlZmluZSBnbEdlblBlcmZNb25p
dG9yc0FNRCB0X2dsR2VuUGVyZk1vbml0b3JzQU1ECisjZGVmaW5lIGdsR2V0UGVyZk1vbml0b3JD
b3VudGVyRGF0YUFNRCB0X2dsR2V0UGVyZk1vbml0b3JDb3VudGVyRGF0YUFNRAorI2RlZmluZSBn
bEdldFBlcmZNb25pdG9yQ291bnRlckluZm9BTUQgdF9nbEdldFBlcmZNb25pdG9yQ291bnRlcklu
Zm9BTUQKKyNkZWZpbmUgZ2xHZXRQZXJmTW9uaXRvckNvdW50ZXJTdHJpbmdBTUQgdF9nbEdldFBl
cmZNb25pdG9yQ291bnRlclN0cmluZ0FNRAorI2RlZmluZSBnbEdldFBlcmZNb25pdG9yQ291bnRl
cnNBTUQgdF9nbEdldFBlcmZNb25pdG9yQ291bnRlcnNBTUQKKyNkZWZpbmUgZ2xHZXRQZXJmTW9u
aXRvckdyb3VwU3RyaW5nQU1EIHRfZ2xHZXRQZXJmTW9uaXRvckdyb3VwU3RyaW5nQU1ECisjZGVm
aW5lIGdsR2V0UGVyZk1vbml0b3JHcm91cHNBTUQgdF9nbEdldFBlcmZNb25pdG9yR3JvdXBzQU1E
CisjZGVmaW5lIGdsU2VsZWN0UGVyZk1vbml0b3JDb3VudGVyc0FNRCB0X2dsU2VsZWN0UGVyZk1v
bml0b3JDb3VudGVyc0FNRAogI2RlZmluZSBnbERyYXdBcnJheXNJbnN0YW5jZWRCYXNlSW5zdGFu
Y2VBTkdMRSB0X2dsRHJhd0FycmF5c0luc3RhbmNlZEJhc2VJbnN0YW5jZUFOR0xFCiAjZGVmaW5l
IGdsRHJhd0VsZW1lbnRzSW5zdGFuY2VkQmFzZVZlcnRleEJhc2VJbnN0YW5jZUFOR0xFIFwKICAg
ICB0X2dsRHJhd0VsZW1lbnRzSW5zdGFuY2VkQmFzZVZlcnRleEJhc2VJbnN0YW5jZUFOR0xFCkBA
IC0xMjYxLDYgKzEyNzIsMjIgQEAgQU5HTEVfVFJBQ0VfTE9BREVSX0VYUE9SVCBleHRlcm4gUEZO
R0xHRVRTQU1QTEVSUEFSQU1FVEVSSVVJVlBST0MgdF9nbEdldFNhbXBsZXIKIEFOR0xFX1RSQUNF
X0xPQURFUl9FWFBPUlQgZXh0ZXJuIFBGTkdMVEVYQlVGRkVSUFJPQyB0X2dsVGV4QnVmZmVyOwog
QU5HTEVfVFJBQ0VfTE9BREVSX0VYUE9SVCBleHRlcm4gUEZOR0xURVhCVUZGRVJSQU5HRVBST0Mg
dF9nbFRleEJ1ZmZlclJhbmdlOwogQU5HTEVfVFJBQ0VfTE9BREVSX0VYUE9SVCBleHRlcm4gUEZO
R0xURVhTVE9SQUdFM0RNVUxUSVNBTVBMRVBST0MgdF9nbFRleFN0b3JhZ2UzRE11bHRpc2FtcGxl
OworQU5HTEVfVFJBQ0VfTE9BREVSX0VYUE9SVCBleHRlcm4gUEZOR0xCRUdJTlBFUkZNT05JVE9S
QU1EUFJPQyB0X2dsQmVnaW5QZXJmTW9uaXRvckFNRDsKK0FOR0xFX1RSQUNFX0xPQURFUl9FWFBP
UlQgZXh0ZXJuIFBGTkdMREVMRVRFUEVSRk1PTklUT1JTQU1EUFJPQyB0X2dsRGVsZXRlUGVyZk1v
bml0b3JzQU1EOworQU5HTEVfVFJBQ0VfTE9BREVSX0VYUE9SVCBleHRlcm4gUEZOR0xFTkRQRVJG
TU9OSVRPUkFNRFBST0MgdF9nbEVuZFBlcmZNb25pdG9yQU1EOworQU5HTEVfVFJBQ0VfTE9BREVS
X0VYUE9SVCBleHRlcm4gUEZOR0xHRU5QRVJGTU9OSVRPUlNBTURQUk9DIHRfZ2xHZW5QZXJmTW9u
aXRvcnNBTUQ7CitBTkdMRV9UUkFDRV9MT0FERVJfRVhQT1JUIGV4dGVybiBQRk5HTEdFVFBFUkZN
T05JVE9SQ09VTlRFUkRBVEFBTURQUk9DCisgICAgdF9nbEdldFBlcmZNb25pdG9yQ291bnRlckRh
dGFBTUQ7CitBTkdMRV9UUkFDRV9MT0FERVJfRVhQT1JUIGV4dGVybiBQRk5HTEdFVFBFUkZNT05J
VE9SQ09VTlRFUklORk9BTURQUk9DCisgICAgdF9nbEdldFBlcmZNb25pdG9yQ291bnRlckluZm9B
TUQ7CitBTkdMRV9UUkFDRV9MT0FERVJfRVhQT1JUIGV4dGVybiBQRk5HTEdFVFBFUkZNT05JVE9S
Q09VTlRFUlNUUklOR0FNRFBST0MKKyAgICB0X2dsR2V0UGVyZk1vbml0b3JDb3VudGVyU3RyaW5n
QU1EOworQU5HTEVfVFJBQ0VfTE9BREVSX0VYUE9SVCBleHRlcm4gUEZOR0xHRVRQRVJGTU9OSVRP
UkNPVU5URVJTQU1EUFJPQyB0X2dsR2V0UGVyZk1vbml0b3JDb3VudGVyc0FNRDsKK0FOR0xFX1RS
QUNFX0xPQURFUl9FWFBPUlQgZXh0ZXJuIFBGTkdMR0VUUEVSRk1PTklUT1JHUk9VUFNUUklOR0FN
RFBST0MKKyAgICB0X2dsR2V0UGVyZk1vbml0b3JHcm91cFN0cmluZ0FNRDsKK0FOR0xFX1RSQUNF
X0xPQURFUl9FWFBPUlQgZXh0ZXJuIFBGTkdMR0VUUEVSRk1PTklUT1JHUk9VUFNBTURQUk9DIHRf
Z2xHZXRQZXJmTW9uaXRvckdyb3Vwc0FNRDsKK0FOR0xFX1RSQUNFX0xPQURFUl9FWFBPUlQgZXh0
ZXJuIFBGTkdMU0VMRUNUUEVSRk1PTklUT1JDT1VOVEVSU0FNRFBST0MKKyAgICB0X2dsU2VsZWN0
UGVyZk1vbml0b3JDb3VudGVyc0FNRDsKIEFOR0xFX1RSQUNFX0xPQURFUl9FWFBPUlQgZXh0ZXJu
IFBGTkdMRFJBV0FSUkFZU0lOU1RBTkNFREJBU0VJTlNUQU5DRUFOR0xFUFJPQwogICAgIHRfZ2xE
cmF3QXJyYXlzSW5zdGFuY2VkQmFzZUluc3RhbmNlQU5HTEU7CiBBTkdMRV9UUkFDRV9MT0FERVJf
RVhQT1JUIGV4dGVybiBQRk5HTERSQVdFTEVNRU5UU0lOU1RBTkNFREJBU0VWRVJURVhCQVNFSU5T
VEFOQ0VBTkdMRVBST0MKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90
ZXN0cy9ydW5fcGVyZl90ZXN0cy5weSBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0
cy9ydW5fcGVyZl90ZXN0cy5weQppbmRleCAxNTljYmVjYWZjZDczODAyY2JlNWE1YzgzZjk4NDBh
MjM5ZjgyMTkzLi42OTNlNGM4ODAwNzIyMWRkYzEyYmQ3MGFhZTY1OTU2ZTYxMzJmYzlmIDEwMDc1
NQotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvcnVuX3BlcmZfdGVzdHMu
cHkKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL3J1bl9wZXJmX3Rlc3Rz
LnB5CkBAIC03OCw3ICs3OCw3IEBAIGRlZiBfcG9wZW4oKmFyZ3MsICoqa3dhcmdzKToKIGRlZiBy
dW5fY29tbWFuZF93aXRoX291dHB1dChhcmd2LCBzdGRvdXRmaWxlLCBlbnY9Tm9uZSwgY3dkPU5v
bmUsIGxvZz1UcnVlKToKICAgICBhc3NlcnQgc3Rkb3V0ZmlsZQogICAgIHdpdGggaW8ub3Blbihz
dGRvdXRmaWxlLCAnd2InKSBhcyB3cml0ZXIsIFwKLSAgICAgICAgICBpby5vcGVuKHN0ZG91dGZp
bGUsICdyYicsIDEpIGFzIHJlYWRlcjoKKyAgICAgICAgICBpby5vcGVuKHN0ZG91dGZpbGUsICdy
YicpIGFzIHJlYWRlcjoKICAgICAgICAgcHJvY2VzcyA9IF9wb3Blbihhcmd2LCBlbnY9ZW52LCBj
d2Q9Y3dkLCBzdGRvdXQ9d3JpdGVyLCBzdGRlcnI9c3VicHJvY2Vzcy5TVERPVVQpCiAgICAgICAg
IHRlc3RfZW52LmZvcndhcmRfc2lnbmFscyhbcHJvY2Vzc10pCiAgICAgICAgIHdoaWxlIHByb2Nl
c3MucG9sbCgpIGlzIE5vbmU6CkBAIC05OSw3ICs5OSw4IEBAIGRlZiBfcnVuX2FuZF9nZXRfb3V0
cHV0KGFyZ3MsIGNtZCwgZW52KToKICAgICAgICAgaWYgYXJncy54dmZiOgogICAgICAgICAgICAg
ZXhpdF9jb2RlID0geHZmYi5ydW5fZXhlY3V0YWJsZShjbWQsIGVudiwgc3Rkb3V0ZmlsZT10ZW1w
ZmlsZV9wYXRoKQogICAgICAgICBlbHNlOgotICAgICAgICAgICAgZXhpdF9jb2RlID0gcnVuX2Nv
bW1hbmRfd2l0aF9vdXRwdXQoY21kLCBlbnY9ZW52LCBzdGRvdXRmaWxlPXRlbXBmaWxlX3BhdGgs
IGxvZz1UcnVlKQorICAgICAgICAgICAgZXhpdF9jb2RlID0gcnVuX2NvbW1hbmRfd2l0aF9vdXRw
dXQoCisgICAgICAgICAgICAgICAgY21kLCBlbnY9ZW52LCBzdGRvdXRmaWxlPXRlbXBmaWxlX3Bh
dGgsIGxvZz1hcmdzLnNob3dfdGVzdF9zdGRvdXQpCiAgICAgICAgIHdpdGggb3Blbih0ZW1wZmls
ZV9wYXRoKSBhcyBmOgogICAgICAgICAgICAgZm9yIGxpbmUgaW4gZjoKICAgICAgICAgICAgICAg
ICBsaW5lcy5hcHBlbmQobGluZS5zdHJpcCgpKQpAQCAtMzAwLDYgKzMwMSwxMCBAQCBkZWYgbWFp
bigpOgogICAgICAgICAlIERFRkFVTFRfQ0FMSUJSQVRJT05fVElNRSwKICAgICAgICAgdHlwZT1p
bnQsCiAgICAgICAgIGRlZmF1bHQ9REVGQVVMVF9DQUxJQlJBVElPTl9USU1FKQorICAgIHBhcnNl
ci5hZGRfYXJndW1lbnQoCisgICAgICAgICctLXNob3ctdGVzdC1zdGRvdXQnLCBoZWxwPSdQcmlu
dHMgYWxsIHRlc3Qgc3Rkb3V0IGR1cmluZyBleGVjdXRpb24uJywgYWN0aW9uPSdzdG9yZV90cnVl
JykKKyAgICBwYXJzZXIuYWRkX2FyZ3VtZW50KAorICAgICAgICAnLS1wZXJmLWNvdW50ZXJzJywg
aGVscD0nQ29sb24tc2VwYXJhdGVkIGxpc3Qgb2YgZXh0cmEgcGVyZiBjb3VudGVyIG1ldHJpY3Mu
JykKIAogICAgIGFyZ3MsIGV4dHJhX2ZsYWdzID0gcGFyc2VyLnBhcnNlX2tub3duX2FyZ3MoKQog
CkBAIC00MDQsMTAgKzQwOSwxNSBAQCBkZWYgbWFpbigpOgogICAgICAgICAgICAgICAgICctLXRy
aWFscycsCiAgICAgICAgICAgICAgICAgc3RyKGFyZ3MudHJpYWxzX3Blcl9zYW1wbGUpLAogICAg
ICAgICAgICAgXQorCiAgICAgICAgICAgICBpZiBhcmdzLnNtb2tlX3Rlc3RfbW9kZToKICAgICAg
ICAgICAgICAgICBjbWRfcnVuICs9IFsnLS1uby13YXJtdXAnXQogICAgICAgICAgICAgZWxzZToK
ICAgICAgICAgICAgICAgICBjbWRfcnVuICs9IFsnLS13YXJtdXAtbG9vcHMnLCBzdHIoYXJncy53
YXJtdXBfbG9vcHMpXQorCisgICAgICAgICAgICBpZiBhcmdzLnBlcmZfY291bnRlcnM6CisgICAg
ICAgICAgICAgICAgY21kX3J1biArPSBbJy0tcGVyZi1jb3VudGVycycsIGFyZ3MucGVyZl9jb3Vu
dGVyc10KKwogICAgICAgICAgICAgd2l0aCBjb21tb24udGVtcG9yYXJ5X2ZpbGUoKSBhcyBoaXN0
b2dyYW1fZmlsZV9wYXRoOgogICAgICAgICAgICAgICAgIGNtZF9ydW4gKz0gWyctLWlzb2xhdGVk
LXNjcmlwdC10ZXN0LXBlcmYtb3V0cHV0PSVzJyAlIGhpc3RvZ3JhbV9maWxlX3BhdGhdCiAgICAg
ICAgICAgICAgICAgZXhpdF9jb2RlLCBvdXRwdXQgPSBfcnVuX2FuZF9nZXRfb3V0cHV0KGFyZ3Ms
IGNtZF9ydW4sIGVudikKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90
ZXN0cy90ZXN0X3V0aWxzL1Z1bGthbkhlbHBlci5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zcmMvdGVzdHMvdGVzdF91dGlscy9WdWxrYW5IZWxwZXIuY3BwCmluZGV4IGM4N2NlZDU3ZTgy
OGQ1MmM1MGQ4Y2EwM2I4YjhmNDRkNjk2ZDc4ZTUuLmRiZDI1OTBhNDNlZjZlZTE4NmEwMzU2Yzg0
YzYxYWMzYTU1YWQ0NGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90
ZXN0cy90ZXN0X3V0aWxzL1Z1bGthbkhlbHBlci5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc3JjL3Rlc3RzL3Rlc3RfdXRpbHMvVnVsa2FuSGVscGVyLmNwcApAQCAtMjI1LDcgKzIy
NSw3IEBAIHZvaWQgVnVsa2FuSGVscGVyOjppbml0aWFsaXplKGJvb2wgdXNlU3dpZnRzaGFkZXIs
IGJvb2wgZW5hYmxlVmFsaWRhdGlvbkxheWVycykKICAgICAgICAgLyogLmFwcGxpY2F0aW9uVmVy
c2lvbiA9ICovIDEsCiAgICAgICAgIC8qIC5wRW5naW5lTmFtZSA9ICovIG51bGxwdHIsCiAgICAg
ICAgIC8qIC5lbmdpbmVWZXJzaW9uID0gKi8gMCwKLSAgICAgICAgLyogLmFwaVZlcnNpb24gPSAq
LyBWS19BUElfVkVSU0lPTl8xXzAsCisgICAgICAgIC8qIC5hcGlWZXJzaW9uID0gKi8gVktfQVBJ
X1ZFUlNJT05fMV8xLAogICAgIH07CiAKICAgICB1aW50MzJfdCBlbmFibGVkSW5zdGFuY2VFeHRl
bnNpb25Db3VudCA9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVz
dHMvdGVzdF91dGlscy9hbmdsZV90ZXN0X2NvbmZpZ3MuY3BwIGIvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc3JjL3Rlc3RzL3Rlc3RfdXRpbHMvYW5nbGVfdGVzdF9jb25maWdzLmNwcAppbmRleCAx
MTQ0ZmYxMzg2Zjc0NjA0OTNiODhlNTFiNjViMTNkN2NiYjEzNTZjLi43ODYxNzA5OTBmNzg3MzZl
MTVmNDIyMTJhZTYwYWE0NzU0Y2U1MDQ4IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9zcmMvdGVzdHMvdGVzdF91dGlscy9hbmdsZV90ZXN0X2NvbmZpZ3MuY3BwCisrKyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy90ZXN0X3V0aWxzL2FuZ2xlX3Rlc3RfY29u
Zmlncy5jcHAKQEAgLTMzMSw2ICszMzEsMTEgQEAgc3RkOjpvc3RyZWFtICZvcGVyYXRvcjw8KHN0
ZDo6b3N0cmVhbSAmc3RyZWFtLCBjb25zdCBQbGF0Zm9ybVBhcmFtZXRlcnMgJnBwKQogICAgICAg
ICBzdHJlYW0gPDwgIl9WdWxrYW5Gb3JjZVN1Ym1pdEltbXV0YWJsZVRleHR1cmVVcGRhdGVzIjsK
ICAgICB9CiAKKyAgICBpZiAocHAuZWdsUGFyYW1ldGVycy5jcmVhdGVQaXBlbGluZUR1cmluZ0xp
bmsgPT0gRUdMX1RSVUUpCisgICAgeworICAgICAgICBzdHJlYW0gPDwgIl9DcmVhdGVQaXBlbGlu
ZUR1cmluZ0xpbmsiOworICAgIH0KKwogICAgIHJldHVybiBzdHJlYW07CiB9CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy90ZXN0X3V0aWxzL2FuZ2xlX3Rl
c3RfY29uZmlncy5oIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL3Rlc3RfdXRp
bHMvYW5nbGVfdGVzdF9jb25maWdzLmgKaW5kZXggN2VlZDY1ZGNhYTkyNTA1NTkwMGQyYWU5Zjg2
MDA4MmJlYmIxN2ZkOC4uY2RjNWQ3NmY4ZjRlMGRkZmFjYzViNWMwYTFiOWViYmM2MWRjZWI1NCAx
MDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL3Rlc3RfdXRpbHMv
YW5nbGVfdGVzdF9jb25maWdzLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rl
c3RzL3Rlc3RfdXRpbHMvYW5nbGVfdGVzdF9jb25maWdzLmgKQEAgLTM0OSw2ICszNDksMTMgQEAg
aW5saW5lIFBsYXRmb3JtUGFyYW1ldGVycyBXaXRoRm9yY2VTdWJtaXRJbW11dGFibGVUZXh0dXJl
VXBkYXRlcyhjb25zdCBQbGF0Zm9ybVAKICAgICAgICAgRUdMX1RSVUU7CiAgICAgcmV0dXJuIHdp
dGhGb3JjZVN1Ym1pdEltbXV0YWJsZVRleHR1cmVVcGRhdGVzOwogfQorCitpbmxpbmUgUGxhdGZv
cm1QYXJhbWV0ZXJzIFdpdGhDcmVhdGVWdWxrYW5QaXBlbGluZUR1cmluZ0xpbmsoY29uc3QgUGxh
dGZvcm1QYXJhbWV0ZXJzICZwYXJhbXMpCit7CisgICAgUGxhdGZvcm1QYXJhbWV0ZXJzIHdpdGhD
cmVhdGVWdWxrYW5QaXBlbGluZUR1cmluZ0xpbmsgICAgICAgICAgICAgICAgICAgICA9IHBhcmFt
czsKKyAgICB3aXRoQ3JlYXRlVnVsa2FuUGlwZWxpbmVEdXJpbmdMaW5rLmVnbFBhcmFtZXRlcnMu
Y3JlYXRlUGlwZWxpbmVEdXJpbmdMaW5rID0gRUdMX1RSVUU7CisgICAgcmV0dXJuIHdpdGhDcmVh
dGVWdWxrYW5QaXBlbGluZUR1cmluZ0xpbms7Cit9CiB9ICAvLyBuYW1lc3BhY2UgYW5nbGUKIAog
I2VuZGlmICAvLyBBTkdMRV9URVNUX0NPTkZJR1NfSF8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy90ZXN0X3V0aWxzL3J1bm5lci9IaXN0b2dyYW1Xcml0ZXIu
Y3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL3Rlc3RfdXRpbHMvcnVubmVy
L0hpc3RvZ3JhbVdyaXRlci5jcHAKaW5kZXggMTQwNzRiNGM0M2QxMTMxZGM0MWQ5OTMxNmNiYzdk
YTUzMzFjYWFjNS4uOWRjY2I5MGE1MTM4ZjZjNDQ2ZGI3ZGYzOGZlNDE3NzRkYzU4OTBjZCAxMDA2
NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL3Rlc3RfdXRpbHMvcnVu
bmVyL0hpc3RvZ3JhbVdyaXRlci5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3Jj
L3Rlc3RzL3Rlc3RfdXRpbHMvcnVubmVyL0hpc3RvZ3JhbVdyaXRlci5jcHAKQEAgLTM0LDExICsz
NCw2NyBAQCBuYW1lc3BhY2UgYW5nbGUKIHsKIG5hbWVzcGFjZQogewotc3RkOjpzdHJpbmcgR2V0
VW5pdEFuZERpcmVjdGlvbihwcm90bzo6VW5pdEFuZERpcmVjdGlvbiB1bml0KQorc3RkOjpzdHJp
bmcgVW5pdEFuZERpcmVjdGlvblRvU3RyaW5nKHByb3RvOjpVbml0QW5kRGlyZWN0aW9uIHVuaXQp
CiB7Ci0gICAgQVNTRVJUKHVuaXQuaW1wcm92ZW1lbnRfZGlyZWN0aW9uKCkgPT0gcHJvdG86OlNN
QUxMRVJfSVNfQkVUVEVSKTsKLSAgICBBU1NFUlQodW5pdC51bml0KCkgPT0gcHJvdG86Ok1TX0JF
U1RfRklUX0ZPUk1BVCk7Ci0gICAgcmV0dXJuICJtc0Jlc3RGaXRGb3JtYXRfc21hbGxlcklzQmV0
dGVyIjsKKyAgICBzdGQ6OnN0cmluZ3N0cmVhbSBzdHJzdHI7CisKKyAgICBzd2l0Y2ggKHVuaXQu
dW5pdCgpKQorICAgIHsKKyAgICAgICAgY2FzZSBwcm90bzo6TVNfQkVTVF9GSVRfRk9STUFUOgor
ICAgICAgICAgICAgc3Ryc3RyIDw8ICJtc0Jlc3RGaXRGb3JtYXQiOworICAgICAgICAgICAgYnJl
YWs7CisgICAgICAgIGNhc2UgcHJvdG86OkNPVU5UOgorICAgICAgICAgICAgc3Ryc3RyIDw8ICJj
b3VudCI7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSBwcm90bzo6U0laRV9JTl9C
WVRFUzoKKyAgICAgICAgICAgIHN0cnN0ciA8PCAic2l6ZUluQnl0ZXMiOworICAgICAgICAgICAg
YnJlYWs7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICBVTlJFQUNIQUJMRSgpOworICAg
ICAgICAgICAgc3Ryc3RyIDw8ICJlcnJvciI7CisgICAgICAgICAgICBicmVhazsKKyAgICB9CisK
KyAgICBzd2l0Y2ggKHVuaXQuaW1wcm92ZW1lbnRfZGlyZWN0aW9uKCkpCisgICAgeworICAgICAg
ICBjYXNlIHByb3RvOjpOT1RfU1BFQ0lGSUVEOgorICAgICAgICAgICAgYnJlYWs7CisgICAgICAg
IGNhc2UgcHJvdG86OlNNQUxMRVJfSVNfQkVUVEVSOgorICAgICAgICAgICAgc3Ryc3RyIDw8ICJf
c21hbGxlcklzQmV0dGVyIjsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBkZWZhdWx0Ogor
ICAgICAgICAgICAgVU5SRUFDSEFCTEUoKTsKKyAgICAgICAgICAgIGJyZWFrOworICAgIH0KKwor
ICAgIHJldHVybiBzdHJzdHIuc3RyKCk7Cit9CisKK3Byb3RvOjpVbml0QW5kRGlyZWN0aW9uIFN0
cmluZ1RvVW5pdEFuZERpcmVjdGlvbihjb25zdCBzdGQ6OnN0cmluZyAmc3RyKQoreworICAgIHBy
b3RvOjpVbml0QW5kRGlyZWN0aW9uIHVuaXRBbmREaXJlY3Rpb247CisKKyAgICBpZiAoc3RyID09
ICJjb3VudCIpCisgICAgeworICAgICAgICB1bml0QW5kRGlyZWN0aW9uLnNldF9pbXByb3ZlbWVu
dF9kaXJlY3Rpb24ocHJvdG86Ok5PVF9TUEVDSUZJRUQpOworICAgICAgICB1bml0QW5kRGlyZWN0
aW9uLnNldF91bml0KHByb3RvOjpDT1VOVCk7CisgICAgfQorICAgIGVsc2UgaWYgKHN0ciA9PSAi
bXNCZXN0Rml0Rm9ybWF0X3NtYWxsZXJJc0JldHRlciIpCisgICAgeworICAgICAgICB1bml0QW5k
RGlyZWN0aW9uLnNldF9pbXByb3ZlbWVudF9kaXJlY3Rpb24ocHJvdG86OlNNQUxMRVJfSVNfQkVU
VEVSKTsKKyAgICAgICAgdW5pdEFuZERpcmVjdGlvbi5zZXRfdW5pdChwcm90bzo6TVNfQkVTVF9G
SVRfRk9STUFUKTsKKyAgICB9CisgICAgZWxzZSBpZiAoc3RyID09ICJzaXplSW5CeXRlc19zbWFs
bGVySXNCZXR0ZXIiKQorICAgIHsKKyAgICAgICAgdW5pdEFuZERpcmVjdGlvbi5zZXRfaW1wcm92
ZW1lbnRfZGlyZWN0aW9uKHByb3RvOjpTTUFMTEVSX0lTX0JFVFRFUik7CisgICAgICAgIHVuaXRB
bmREaXJlY3Rpb24uc2V0X3VuaXQocHJvdG86OlNJWkVfSU5fQllURVMpOworICAgIH0KKyAgICBl
bHNlCisgICAgeworICAgICAgICBVTlJFQUNIQUJMRSgpOworICAgIH0KKworICAgIHJldHVybiB1
bml0QW5kRGlyZWN0aW9uOwogfQogfSAgLy8gbmFtZXNwYWNlCiAKQEAgLTU0LDkgKzExMCw3IEBA
IHZvaWQgSGlzdG9ncmFtV3JpdGVyOjphZGRTYW1wbGUoY29uc3Qgc3RkOjpzdHJpbmcgJm1lYXN1
cmVtZW50LAogICAgIHN0ZDo6c3RyaW5nIG1lYXN1cmVtZW50QW5kU3RvcnkgPSBtZWFzdXJlbWVu
dCArIHN0b3J5OwogICAgIGlmIChtSGlzdG9ncmFtcy5jb3VudChtZWFzdXJlbWVudEFuZFN0b3J5
KSA9PSAwKQogICAgIHsKLSAgICAgICAgcHJvdG86OlVuaXRBbmREaXJlY3Rpb24gdW5pdEFuZERp
cmVjdGlvbjsKLSAgICAgICAgdW5pdEFuZERpcmVjdGlvbi5zZXRfaW1wcm92ZW1lbnRfZGlyZWN0
aW9uKHByb3RvOjpTTUFMTEVSX0lTX0JFVFRFUik7Ci0gICAgICAgIHVuaXRBbmREaXJlY3Rpb24u
c2V0X3VuaXQocHJvdG86Ok1TX0JFU1RfRklUX0ZPUk1BVCk7CisgICAgICAgIHByb3RvOjpVbml0
QW5kRGlyZWN0aW9uIHVuaXRBbmREaXJlY3Rpb24gPSBTdHJpbmdUb1VuaXRBbmREaXJlY3Rpb24o
dW5pdHMpOwogCiAgICAgICAgIHN0ZDo6dW5pcXVlX3B0cjxjYXRhcHVsdDo6SGlzdG9ncmFtQnVp
bGRlcj4gYnVpbGRlciA9CiAgICAgICAgICAgICBzdGQ6Om1ha2VfdW5pcXVlPGNhdGFwdWx0OjpI
aXN0b2dyYW1CdWlsZGVyPihtZWFzdXJlbWVudCwgdW5pdEFuZERpcmVjdGlvbik7CkBAIC0xMDIs
NyArMTU2LDcgQEAgdm9pZCBIaXN0b2dyYW1Xcml0ZXI6OmdldEFzSlNPTihqczo6RG9jdW1lbnQg
KmRvYykgY29uc3QKICAgICAgICAganM6OlZhbHVlIGRlc2NyaXB0aW9uKGhpc3RvZ3JhbS5kZXNj
cmlwdGlvbigpLCBhbGxvY2F0b3IpOwogICAgICAgICBvYmouQWRkTWVtYmVyKCJkZXNjcmlwdGlv
biIsIGRlc2NyaXB0aW9uLCBhbGxvY2F0b3IpOwogCi0gICAgICAgIGpzOjpWYWx1ZSB1bml0QW5k
RGlyZWN0aW9uKEdldFVuaXRBbmREaXJlY3Rpb24oaGlzdG9ncmFtLnVuaXQoKSksIGFsbG9jYXRv
cik7CisgICAgICAgIGpzOjpWYWx1ZSB1bml0QW5kRGlyZWN0aW9uKFVuaXRBbmREaXJlY3Rpb25U
b1N0cmluZyhoaXN0b2dyYW0udW5pdCgpKSwgYWxsb2NhdG9yKTsKICAgICAgICAgb2JqLkFkZE1l
bWJlcigidW5pdCIsIHVuaXRBbmREaXJlY3Rpb24sIGFsbG9jYXRvcik7CiAKICAgICAgICAgaWYg
KGhpc3RvZ3JhbS5oYXNfZGlhZ25vc3RpY3MoKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL3NyYy90ZXN0cy90ZXN0X3V0aWxzL3N5c3RlbV9pbmZvX3V0aWwuY3BwIGIvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL3Rlc3RfdXRpbHMvc3lzdGVtX2luZm9fdXRp
bC5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uYjQ0M2FiZjYxYzZkZTNiODRmNmNhNTgwZDE3YjFmZTI1MTY2OWM2
NQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy90
ZXN0X3V0aWxzL3N5c3RlbV9pbmZvX3V0aWwuY3BwCkBAIC0wLDAgKzEsNzYgQEAKKy8vCisvLyBD
b3B5cmlnaHQgMjAyMiBUaGUgQU5HTEUgUHJvamVjdCBBdXRob3JzLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgorLy8gVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5
bGUgbGljZW5zZSB0aGF0IGNhbiBiZQorLy8gZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8v
CisvLyBzeXN0ZW1faW5mb191dGlsLmg6CisvLyAgIEltcGxlbWVudGF0aW9uIG9mIGNvbW1vbiB0
ZXN0IHV0aWxpdGllcyBmb3Igb3BlcmF0aW5nIHdpdGggU3lzdGVtSW5mby4KKy8vCisKKyNpbmNs
dWRlICJzeXN0ZW1faW5mb191dGlsLmgiCisKKyNpbmNsdWRlICJjb21tb24vZGVidWcuaCIKKyNp
bmNsdWRlICJjb21tb24vc3RyaW5nX3V0aWxzLmgiCisjaW5jbHVkZSAiZ3B1X2luZm9fdXRpbC9T
eXN0ZW1JbmZvLmgiCisjaW5jbHVkZSAidXRpbC91dGlsX2dsLmgiCisKK3VzaW5nIG5hbWVzcGFj
ZSBhbmdsZTsKKworbmFtZXNwYWNlCit7CisKK3NpemVfdCBmaW5kR1BVKGNvbnN0IFN5c3RlbUlu
Zm8gJnN5c3RlbUluZm8sIGJvb2wgbG93UG93ZXIpCit7CisgICAgaWYgKHN5c3RlbUluZm8uZ3B1
cy5zaXplKCkgPCAyKQorICAgIHsKKyAgICAgICAgcmV0dXJuIDA7CisgICAgfQorICAgIGZvciAo
c2l6ZV90IGkgPSAwOyBpIDwgc3lzdGVtSW5mby5ncHVzLnNpemUoKTsgKytpKQorICAgIHsKKyAg
ICAgICAgaWYgKGxvd1Bvd2VyICYmIElzSW50ZWwoc3lzdGVtSW5mby5ncHVzW2ldLnZlbmRvcklk
KSkKKyAgICAgICAgeworICAgICAgICAgICAgcmV0dXJuIGk7CisgICAgICAgIH0KKyAgICAgICAg
Ly8gUmV0dXJuIHRoZSBoaWdoIHBvd2VyIEdQVSwgaS5lIGFueSBub24taW50ZWwgR1BVCisgICAg
ICAgIGVsc2UgaWYgKCFsb3dQb3dlciAmJiAhSXNJbnRlbChzeXN0ZW1JbmZvLmdwdXNbaV0udmVu
ZG9ySWQpKQorICAgICAgICB7CisgICAgICAgICAgICByZXR1cm4gaTsKKyAgICAgICAgfQorICAg
IH0KKyAgICAvLyBDYW4ndCBmaW5kIEdQVQorICAgIEFTU0VSVChmYWxzZSk7CisgICAgcmV0dXJu
IDA7Cit9CisKK30gIC8vIG5hbWVzcGFjZQorCitzaXplX3QgRmluZExvd1Bvd2VyR1BVKGNvbnN0
IFN5c3RlbUluZm8gJnN5c3RlbUluZm8pCit7CisgICAgcmV0dXJuIGZpbmRHUFUoc3lzdGVtSW5m
bywgdHJ1ZSk7Cit9CisKK3NpemVfdCBGaW5kSGlnaFBvd2VyR1BVKGNvbnN0IFN5c3RlbUluZm8g
JnN5c3RlbUluZm8pCit7CisgICAgcmV0dXJuIGZpbmRHUFUoc3lzdGVtSW5mbywgZmFsc2UpOwor
fQorCitzaXplX3QgRmluZEFjdGl2ZU9wZW5HTEdQVShjb25zdCBTeXN0ZW1JbmZvICZzeXN0ZW1J
bmZvKQoreworICAgIGNoYXIgKnJlbmRlcmVyID0gKGNoYXIgKilnbEdldFN0cmluZyhHTF9SRU5E
RVJFUik7CisgICAgc3RkOjpzdHJpbmcgcmVuZGVyZXJTdHJpbmcocmVuZGVyZXIpOworICAgIGZv
ciAoc2l6ZV90IGkgPSAwOyBpIDwgc3lzdGVtSW5mby5ncHVzLnNpemUoKTsgKytpKQorICAgIHsK
KyAgICAgICAgc3RkOjp2ZWN0b3I8c3RkOjpzdHJpbmc+IHZlbmRvclRva2VuczsKKyAgICAgICAg
YW5nbGU6OlNwbGl0U3RyaW5nQWxvbmdXaGl0ZXNwYWNlKFZlbmRvck5hbWUoc3lzdGVtSW5mby5n
cHVzW2ldLnZlbmRvcklkKSwgJnZlbmRvclRva2Vucyk7CisgICAgICAgIGZvciAoc3RkOjpzdHJp
bmcgJnRva2VuIDogdmVuZG9yVG9rZW5zKQorICAgICAgICB7CisgICAgICAgICAgICBpZiAocmVu
ZGVyZXJTdHJpbmcuZmluZCh0b2tlbikgIT0gc3RkOjpzdHJpbmc6Om5wb3MpCisgICAgICAgICAg
ICB7CisgICAgICAgICAgICAgICAgcmV0dXJuIGk7CisgICAgICAgICAgICB9CisgICAgICAgIH0K
KyAgICB9CisgICAgLy8gQ2FuJ3QgZmluZCBhY3RpdmUgR1BVCisgICAgQVNTRVJUKGZhbHNlKTsK
KyAgICByZXR1cm4gMDsKK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3Ny
Yy90ZXN0cy90ZXN0X3V0aWxzL3N5c3RlbV9pbmZvX3V0aWwuaCBiL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3NyYy90ZXN0cy90ZXN0X3V0aWxzL3N5c3RlbV9pbmZvX3V0aWwuaApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li42OTgzZjUyYWI1MDJhZTdiZWJiMjU1YzI4ZWM2ZmM2ZDM3MDJlNjcyCi0tLSAvZGV2L251bGwK
KysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL3Rlc3RfdXRpbHMvc3lzdGVt
X2luZm9fdXRpbC5oCkBAIC0wLDAgKzEsMjkgQEAKKy8vCisvLyBDb3B5cmlnaHQgMjAyMiBUaGUg
QU5HTEUgUHJvamVjdCBBdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVXNlIG9mIHRo
aXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUgbGljZW5zZSB0aGF0IGNh
biBiZQorLy8gZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8vCisvLyBzeXN0ZW1faW5mb191
dGlsLmg6CisvLyAgIEltcGxlbWVudGF0aW9uIG9mIGNvbW1vbiB0ZXN0IHV0aWxpdGllcyBmb3Ig
b3BlcmF0aW5nIHdpdGggU3lzdGVtSW5mby4KKy8vCisKKyNpZm5kZWYgQU5HTEVfVEVTVFNfU1lT
VEVNX0lORk9fVVRJTF9IXworI2RlZmluZSBBTkdMRV9URVNUU19TWVNURU1fSU5GT19VVElMX0hf
CisKKyNpbmNsdWRlIDxzdGRkZWYuaD4KKworbmFtZXNwYWNlIGFuZ2xlCit7CitzdHJ1Y3QgU3lz
dGVtSW5mbzsKK30gIC8vIG5hbWVzcGFjZSBhbmdsZQorCisvLyBSZXR1cm5zIHRoZSBpbmRleCBv
ZiB0aGUgbG93IHBvd2VyIEdQVSBpbiBTeXN0ZW1JbmZvLgorc2l6ZV90IEZpbmRMb3dQb3dlckdQ
VShjb25zdCBhbmdsZTo6U3lzdGVtSW5mbyAmKTsKKworLy8gUmV0dXJucyB0aGUgaW5kZXggb2Yg
dGhlIGhpZ2ggcG93ZXIgR1BVIGluIFN5c3RlbUluZm8uCitzaXplX3QgRmluZEhpZ2hQb3dlckdQ
VShjb25zdCBhbmdsZTo6U3lzdGVtSW5mbyAmKTsKKworLy8gUmV0dXJucyB0aGUgaW5kZXggb2Yg
dGhlIEdQVSBpbiBTeXN0ZW1JbmZvIGJhc2VkIG9uIHRoZSBPcGVuR0wgcmVuZGVyZXIgc3RyaW5n
Lgorc2l6ZV90IEZpbmRBY3RpdmVPcGVuR0xHUFUoY29uc3QgYW5nbGU6OlN5c3RlbUluZm8gJik7
CisKKyNlbmRpZiAgLy8gQU5HTEVfVEVTVFNfU1lTVEVNX0lORk9fVVRJTF9IXwpkaWZmIC0tZ2l0
IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3RoaXJkX3BhcnR5L3ZvbGsvQlVJTEQuZ24g
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGhpcmRfcGFydHkvdm9say9CVUlMRC5nbgpp
bmRleCAxNDgxYWQ0MjI1Y2Y5ZThmZDNjODllNTU0NzEzN2UwMWY1YTVkNjQ1Li5lYzQ2NTc2YjQy
MDYyYjJmM2U1NjZmYTY3YmUxNDE5NWJhMjY1YWE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9BTkdMRS9zcmMvdGhpcmRfcGFydHkvdm9say9CVUlMRC5nbgorKysgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvdGhpcmRfcGFydHkvdm9say9CVUlMRC5nbgpAQCAtMTYsNCArMTYs
NyBAQCBzb3VyY2Vfc2V0KCJ2b2xrIikgewogICBwdWJsaWNfY29uZmlncyA9IFsgIjp2b2xrX2Nv
bmZpZyIgXQogICBjb25maWdzICs9IFsgIiRhbmdsZV9yb290OmFuZ2xlX25vX2NmaV9pY2FsbCIg
XQogICBwdWJsaWNfZGVwcyA9IFsgIiRhbmdsZV92dWxrYW5faGVhZGVyc19kaXI6dnVsa2FuX2hl
YWRlcnMiIF0KKyAgaWYgKGFuZ2xlX3VzZV93YXlsYW5kKSB7CisgICAgaW5jbHVkZV9kaXJzID0g
WyAiJGFuZ2xlX3dheWxhbmRfZGlyL3NyYyIgXQorICB9CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS90b29scy9hbmdsZV90b29scy5weSBiL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3Rvb2xzL2FuZ2xlX3Rvb2xzLnB5CmluZGV4IGY0ZDE0YzRjYWM2YjUyYzI3OTZmMDBk
MzI5ZTg1NDNhMGE4ZGIxNWUuLjg1N2QwYjI4MmEyMmE2MjI4Y2ExNzBlYTk2OTBjMjIwNDhiZWU1
NzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3Rvb2xzL2FuZ2xlX3Rvb2xz
LnB5CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3Rvb2xzL2FuZ2xlX3Rvb2xzLnB5CkBA
IC0xLDQgKzEsNCBAQAotIyEvdXNyL2Jpbi9weXRob24yCisjIS91c3IvYmluL3B5dGhvbjMKICMK
ICMgQ29weXJpZ2h0IDIwMTkgVGhlIEFOR0xFIFByb2plY3QgQXV0aG9ycy4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KICMgVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qt
c3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvdG9vbHMvZmxleC1iaXNvbi91cGRhdGVfZmxleF9iaXNvbl9iaW5hcmllcy5weSBiL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL3Rvb2xzL2ZsZXgtYmlzb24vdXBkYXRlX2ZsZXhfYmlzb25f
YmluYXJpZXMucHkKaW5kZXggOTljMDAyYjA0ZTc4OTMyMzhiNDA4ZWVmZWYzZDNjN2Q4NzE1NmZi
Yi4uZGQ5NWQ0NzNiY2RjZDk1ZjVlNWIwNzFiZWIzOTM1ZDUzNzIwYmRkYyAxMDA3NTUKLS0tIGEv
U291cmNlL1RoaXJkUGFydHkvQU5HTEUvdG9vbHMvZmxleC1iaXNvbi91cGRhdGVfZmxleF9iaXNv
bl9iaW5hcmllcy5weQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS90b29scy9mbGV4LWJp
c29uL3VwZGF0ZV9mbGV4X2Jpc29uX2JpbmFyaWVzLnB5CkBAIC0xLDQgKzEsNCBAQAotIyEvdXNy
L2Jpbi9weXRob24yCisjIS91c3IvYmluL3B5dGhvbjMKICMKICMgQ29weXJpZ2h0IDIwMTkgVGhl
IEFOR0xFIFByb2plY3QgQXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICMgVXNlIG9mIHRo
aXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUgbGljZW5zZSB0aGF0IGNh
biBiZQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvdG9vbHMvZ2xzbGFuZy91
cGRhdGVfZ2xzbGFuZ19iaW5hcnkucHkgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS90b29scy9n
bHNsYW5nL3VwZGF0ZV9nbHNsYW5nX2JpbmFyeS5weQppbmRleCAxZTJiYjUyNTYxYjJiNTY4MDc3
NmZiMDBlM2FkOWU1YWM3ZGRjN2E2Li45OWNiMmEwY2JkODQxYTUwODM0ZWVkYTMxMDZiZTJjNDgw
OGZjNzA3IDEwMDc1NQotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS90b29scy9nbHNsYW5n
L3VwZGF0ZV9nbHNsYW5nX2JpbmFyeS5weQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS90
b29scy9nbHNsYW5nL3VwZGF0ZV9nbHNsYW5nX2JpbmFyeS5weQpAQCAtMSw0ICsxLDQgQEAKLSMh
L3Vzci9iaW4vcHl0aG9uMgorIyEvdXNyL2Jpbi9weXRob24zCiAjCiAjIENvcHlyaWdodCAyMDE5
IFRoZSBBTkdMRSBQcm9qZWN0IEF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAjIFVzZSBv
ZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlIGxpY2Vuc2UgdGhh
dCBjYW4gYmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3V0aWwvRUdMUGxh
dGZvcm1QYXJhbWV0ZXJzLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS91dGlsL0VHTFBsYXRm
b3JtUGFyYW1ldGVycy5oCmluZGV4IDdjMTIyYzA1NTk4NDdhMTQxYjFkYjRkMTRhOWE0MmU0NzIw
NTE2OTAuLmM3ZTJhZWE2M2M5NzUwZTJjYWJmMTc3YTVhYjQ3MzFiZjlmMjRhNDUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3V0aWwvRUdMUGxhdGZvcm1QYXJhbWV0ZXJzLmgK
KysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvdXRpbC9FR0xQbGF0Zm9ybVBhcmFtZXRlcnMu
aApAQCAtNTgsMTcgKzU4LDE4IEBAIHN0cnVjdCBFR0xQbGF0Zm9ybVBhcmFtZXRlcnMKIAogICAg
IGF1dG8gdGllKCkgY29uc3QKICAgICB7Ci0gICAgICAgIHJldHVybiBzdGQ6OnRpZSgKLSAgICAg
ICAgICAgIHJlbmRlcmVyLCBtYWpvclZlcnNpb24sIG1pbm9yVmVyc2lvbiwgZGV2aWNlVHlwZSwg
cHJlc2VudFBhdGgsIGRlYnVnTGF5ZXJzRW5hYmxlZCwKLSAgICAgICAgICAgIHRyYW5zZm9ybUZl
ZWRiYWNrRmVhdHVyZSwgYWxsb2NhdGVOb25aZXJvTWVtb3J5RmVhdHVyZSwKLSAgICAgICAgICAg
IGVtdWxhdGVDb3B5VGV4SW1hZ2UyREZyb21SZW5kZXJidWZmZXJzLCBzaGFkZXJTdGVuY2lsT3V0
cHV0RmVhdHVyZSwKLSAgICAgICAgICAgIGdlbk11bHRpcGxlTWlwc1BlclBhc3NGZWF0dXJlLCBw
bGF0Zm9ybU1ldGhvZHMsIHJvYnVzdG5lc3MsIGVtdWxhdGVkUHJlcm90YXRpb24sCi0gICAgICAg
ICAgICBhc3luY0NvbW1hbmRRdWV1ZUZlYXR1cmVWdWxrYW4sIGhhc0V4cGxpY2l0TWVtQmFycmll
ckZlYXR1cmVNdGwsCi0gICAgICAgICAgICBoYXNDaGVhcFJlbmRlclBhc3NGZWF0dXJlTXRsLCBm
b3JjZUJ1ZmZlckdQVVN0b3JhZ2VGZWF0dXJlTXRsLAotICAgICAgICAgICAgc3VwcG9ydHNWdWxr
YW5WaWV3cG9ydEZsaXAsIHN1cHBvcnRzVnVsa2FuTXVsdGlEcmF3SW5kaXJlY3QsCi0gICAgICAg
ICAgICBXaXRoVnVsa2FuUHJlZmVyQ1BVRm9yQnVmZmVyU3ViRGF0YSwgZW11bGF0ZWRWQU9zLCBn
ZW5lcmF0ZVNQSVJWVGhyb3VnaEdsc2xhbmcsCi0gICAgICAgICAgICBjYXB0dXJlTGltaXRzLCBm
b3JjZVJvYnVzdFJlc291cmNlSW5pdCwgZGlyZWN0TWV0YWxHZW5lcmF0aW9uLCBmb3JjZUluaXRT
aGFkZXJWYXJpYWJsZXMsCi0gICAgICAgICAgICBmb3JjZVZ1bGthbkZhbGxiYWNrRm9ybWF0LCBk
aXNwbGF5UG93ZXJQcmVmZXJlbmNlLCBmb3JjZVN1Ym1pdEltbXV0YWJsZVRleHR1cmVVcGRhdGVz
KTsKKyAgICAgICAgcmV0dXJuIHN0ZDo6dGllKHJlbmRlcmVyLCBtYWpvclZlcnNpb24sIG1pbm9y
VmVyc2lvbiwgZGV2aWNlVHlwZSwgcHJlc2VudFBhdGgsCisgICAgICAgICAgICAgICAgICAgICAg
ICBkZWJ1Z0xheWVyc0VuYWJsZWQsIHRyYW5zZm9ybUZlZWRiYWNrRmVhdHVyZSwgYWxsb2NhdGVO
b25aZXJvTWVtb3J5RmVhdHVyZSwKKyAgICAgICAgICAgICAgICAgICAgICAgIGVtdWxhdGVDb3B5
VGV4SW1hZ2UyREZyb21SZW5kZXJidWZmZXJzLCBzaGFkZXJTdGVuY2lsT3V0cHV0RmVhdHVyZSwK
KyAgICAgICAgICAgICAgICAgICAgICAgIGdlbk11bHRpcGxlTWlwc1BlclBhc3NGZWF0dXJlLCBw
bGF0Zm9ybU1ldGhvZHMsIHJvYnVzdG5lc3MsCisgICAgICAgICAgICAgICAgICAgICAgICBlbXVs
YXRlZFByZXJvdGF0aW9uLCBhc3luY0NvbW1hbmRRdWV1ZUZlYXR1cmVWdWxrYW4sCisgICAgICAg
ICAgICAgICAgICAgICAgICBoYXNFeHBsaWNpdE1lbUJhcnJpZXJGZWF0dXJlTXRsLCBoYXNDaGVh
cFJlbmRlclBhc3NGZWF0dXJlTXRsLAorICAgICAgICAgICAgICAgICAgICAgICAgZm9yY2VCdWZm
ZXJHUFVTdG9yYWdlRmVhdHVyZU10bCwgc3VwcG9ydHNWdWxrYW5WaWV3cG9ydEZsaXAsCisgICAg
ICAgICAgICAgICAgICAgICAgICBzdXBwb3J0c1Z1bGthbk11bHRpRHJhd0luZGlyZWN0LCBXaXRo
VnVsa2FuUHJlZmVyQ1BVRm9yQnVmZmVyU3ViRGF0YSwKKyAgICAgICAgICAgICAgICAgICAgICAg
IGVtdWxhdGVkVkFPcywgZ2VuZXJhdGVTUElSVlRocm91Z2hHbHNsYW5nLCBjYXB0dXJlTGltaXRz
LAorICAgICAgICAgICAgICAgICAgICAgICAgZm9yY2VSb2J1c3RSZXNvdXJjZUluaXQsIGRpcmVj
dE1ldGFsR2VuZXJhdGlvbiwgZm9yY2VJbml0U2hhZGVyVmFyaWFibGVzLAorICAgICAgICAgICAg
ICAgICAgICAgICAgZm9yY2VWdWxrYW5GYWxsYmFja0Zvcm1hdCwgZGlzcGxheVBvd2VyUHJlZmVy
ZW5jZSwKKyAgICAgICAgICAgICAgICAgICAgICAgIGZvcmNlU3VibWl0SW1tdXRhYmxlVGV4dHVy
ZVVwZGF0ZXMsIGNyZWF0ZVBpcGVsaW5lRHVyaW5nTGluayk7CiAgICAgfQogCiAgICAgRUdMaW50
IHJlbmRlcmVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID0gRUdMX1BMQVRGT1JNX0FO
R0xFX1RZUEVfREVGQVVMVF9BTkdMRTsKQEAgLTEwMCw2ICsxMDEsNyBAQCBzdHJ1Y3QgRUdMUGxh
dGZvcm1QYXJhbWV0ZXJzCiAgICAgRUdMaW50IGZvcmNlVnVsa2FuRmFsbGJhY2tGb3JtYXQgICAg
ICAgICAgICAgID0gRUdMX0RPTlRfQ0FSRTsKICAgICBFR0xpbnQgZGlzcGxheVBvd2VyUHJlZmVy
ZW5jZSAgICAgICAgICAgICAgICAgPSBFR0xfRE9OVF9DQVJFOwogICAgIEVHTGludCBmb3JjZVN1
Ym1pdEltbXV0YWJsZVRleHR1cmVVcGRhdGVzICAgICA9IEVHTF9ET05UX0NBUkU7CisgICAgRUdM
aW50IGNyZWF0ZVBpcGVsaW5lRHVyaW5nTGluayAgICAgICAgICAgICAgID0gRUdMX0RPTlRfQ0FS
RTsKIAogICAgIGFuZ2xlOjpQbGF0Zm9ybU1ldGhvZHMgKnBsYXRmb3JtTWV0aG9kcyA9IG51bGxw
dHI7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvdXRpbC9FR0xXaW5k
b3cuY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvdXRpbC9FR0xXaW5kb3cuY3BwCmluZGV4
IGQ5ZTg5NjM2ZTBiNjIyNTM1Zjk2NTc5MGY2ODYwYTVjY2IzOWVkOTEuLjFiYjc3YjIzYzg5ZDMz
ZjA4OGM4YmRhYmUwNTViNzVjNDUyODY3MTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3V0aWwvRUdMV2luZG93LmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS91
dGlsL0VHTFdpbmRvdy5jcHAKQEAgLTMzOCw2ICszMzgsMTEgQEAgYm9vbCBFR0xXaW5kb3c6Omlu
aXRpYWxpemVEaXNwbGF5KE9TV2luZG93ICpvc1dpbmRvdywKICAgICAgICAgZW5hYmxlZEZlYXR1
cmVPdmVycmlkZXMucHVzaF9iYWNrKCJmb3JjZVN1Ym1pdEltbXV0YWJsZVRleHR1cmVVcGRhdGVz
Iik7CiAgICAgfQogCisgICAgaWYgKHBhcmFtcy5jcmVhdGVQaXBlbGluZUR1cmluZ0xpbmsgPT0g
RUdMX1RSVUUpCisgICAgeworICAgICAgICBlbmFibGVkRmVhdHVyZU92ZXJyaWRlcy5wdXNoX2Jh
Y2soImNyZWF0ZVBpcGVsaW5lRHVyaW5nTGluayIpOworICAgIH0KKwogICAgIGNvbnN0IGJvb2wg
aGFzRmVhdHVyZUNvbnRyb2xBTkdMRSA9CiAgICAgICAgIHN0cnN0cihleHRlbnNpb25TdHJpbmcs
ICJFR0xfQU5HTEVfZmVhdHVyZV9jb250cm9sIikgIT0gbnVsbHB0cjsKIApkaWZmIC0tZ2l0IGEv
U291cmNlL1RoaXJkUGFydHkvQU5HTEUvdXRpbC9PU1dpbmRvdy5jcHAgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9BTkdMRS91dGlsL09TV2luZG93LmNwcAppbmRleCA1ZGNlMmE5MTQ4ZDEwZGY1ZDZlZDE2
YWI3MzczZTY4YmI0ZDJjOTQ2Li43NzRiMmYyNTQ2NzVlMWNkYWYyY2ZjNjBhYjgzNjE3YzRkOWNl
MTlhIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS91dGlsL09TV2luZG93LmNw
cAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS91dGlsL09TV2luZG93LmNwcApAQCAtMzg5
LDYgKzM4OSwxMSBAQCBib29sIE9TV2luZG93Ojp0YWtlU2NyZWVuc2hvdCh1aW50OF90ICpwaXhl
bERhdGEpCiAgICAgcmV0dXJuIGZhbHNlOwogfQogCit2b2lkICpPU1dpbmRvdzo6Z2V0UGxhdGZv
cm1FeHRlbnNpb24oKQoreworICAgIHJldHVybiByZWludGVycHJldF9jYXN0PHZvaWQgKj4oZ2V0
TmF0aXZlV2luZG93KCkpOworfQorCiBib29sIE9TV2luZG93Ojpwb3BFdmVudChFdmVudCAqZXZl
bnQpCiB7CiAgICAgaWYgKG1FdmVudHMuc2l6ZSgpID4gMCAmJiBldmVudCkKZGlmZiAtLWdpdCBh
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3V0aWwvT1NXaW5kb3cuaCBiL1NvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL3V0aWwvT1NXaW5kb3cuaAppbmRleCA2MmU4MGMyMjJjZDQyODIzMDM1MDZhNDVi
NWRhNDgxNGUyODBkMmQ3Li40NTI5MDQzZTgxYTFlNDhkNTM2YTg5N2M0YjgwOGYzNmMxNjg4YTQ4
IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS91dGlsL09TV2luZG93LmgKKysr
IGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvdXRpbC9PU1dpbmRvdy5oCkBAIC00Niw3ICs0Niwx
MSBAQCBjbGFzcyBBTkdMRV9VVElMX0VYUE9SVCBPU1dpbmRvdwogICAgIC8vIG11bHRpcGxlIEVH
TFN1cmZhY2VzLgogICAgIHZpcnR1YWwgdm9pZCByZXNldE5hdGl2ZVdpbmRvdygpID0gMDsKIAot
ICAgIHZpcnR1YWwgRUdMTmF0aXZlV2luZG93VHlwZSBnZXROYXRpdmVXaW5kb3coKSBjb25zdCAg
ID0gMDsKKyAgICB2aXJ0dWFsIEVHTE5hdGl2ZVdpbmRvd1R5cGUgZ2V0TmF0aXZlV2luZG93KCkg
Y29uc3QgPSAwOworCisgICAgLy8gUmV0dXJucyBhIG5hdGl2ZSBwb2ludGVyIHRoYXQgY2FuIGJl
IHVzZWQgZm9yIGVnbENyZWF0ZVBsYXRmb3JtV2luZG93U3VyZmFjZUVYVCgpLgorICAgIHZpcnR1
YWwgdm9pZCAqZ2V0UGxhdGZvcm1FeHRlbnNpb24oKTsKKwogICAgIHZpcnR1YWwgRUdMTmF0aXZl
RGlzcGxheVR5cGUgZ2V0TmF0aXZlRGlzcGxheSgpIGNvbnN0ID0gMDsKIAogICAgIHZpcnR1YWwg
dm9pZCBtZXNzYWdlTG9vcCgpID0gMDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FO
R0xFL3V0aWwvZWdsX2xvYWRlcl9hdXRvZ2VuLmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3V0aWwvZWdsX2xvYWRlcl9hdXRvZ2VuLmNwcAppbmRleCBmZGExODRjMWVkYmM3OGViNWFjYzUy
ZTM2Y2MyYzE1ODRlNzkwMmJkLi5mOWUzNzU1ZGNmZDZhZTc4M2RlMWU3ODcwYTNmODVmMjI2NzY1
MWJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS91dGlsL2VnbF9sb2FkZXJf
YXV0b2dlbi5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvdXRpbC9lZ2xfbG9hZGVy
X2F1dG9nZW4uY3BwCkBAIC03MCw2ICs3MCw3IEBAIEFOR0xFX1VUSUxfRVhQT1JUIFBGTkVHTENS
RUFURURFVklDRUFOR0xFUFJPQyBsX2VnbENyZWF0ZURldmljZUFOR0xFOwogQU5HTEVfVVRJTF9F
WFBPUlQgUEZORUdMUkVMRUFTRURFVklDRUFOR0xFUFJPQyBsX2VnbFJlbGVhc2VEZXZpY2VBTkdM
RTsKIEFOR0xFX1VUSUxfRVhQT1JUIFBGTkVHTFFVRVJZRElTUExBWUFUVFJJQkFOR0xFUFJPQyBs
X2VnbFF1ZXJ5RGlzcGxheUF0dHJpYkFOR0xFOwogQU5HTEVfVVRJTF9FWFBPUlQgUEZORUdMUVVF
UllTVFJJTkdJQU5HTEVQUk9DIGxfZWdsUXVlcnlTdHJpbmdpQU5HTEU7CitBTkdMRV9VVElMX0VY
UE9SVCBQRk5FR0xGT1JDRUdQVVNXSVRDSEFOR0xFUFJPQyBsX2VnbEZvcmNlR1BVU3dpdGNoQU5H
TEU7CiBBTkdMRV9VVElMX0VYUE9SVCBQRk5FR0xIQU5ETEVHUFVTV0lUQ0hBTkdMRVBST0MgbF9l
Z2xIYW5kbGVHUFVTd2l0Y2hBTkdMRTsKIEFOR0xFX1VUSUxfRVhQT1JUIFBGTkVHTFJFQUNRVUlS
RUhJR0hQT1dFUkdQVUFOR0xFUFJPQyBsX2VnbFJlYWNxdWlyZUhpZ2hQb3dlckdQVUFOR0xFOwog
QU5HTEVfVVRJTF9FWFBPUlQgUEZORUdMUkVMRUFTRUhJR0hQT1dFUkdQVUFOR0xFUFJPQyBsX2Vn
bFJlbGVhc2VIaWdoUG93ZXJHUFVBTkdMRTsKQEAgLTg5LDYgKzkwLDggQEAgQU5HTEVfVVRJTF9F
WFBPUlQgUEZORUdMR0VUU1lOQ1ZBTFVFU0NIUk9NSVVNUFJPQyBsX2VnbEdldFN5bmNWYWx1ZXND
SFJPTUlVTTsKIEFOR0xFX1VUSUxfRVhQT1JUIFBGTkVHTFFVRVJZREVWSUNFQVRUUklCRVhUUFJP
QyBsX2VnbFF1ZXJ5RGV2aWNlQXR0cmliRVhUOwogQU5HTEVfVVRJTF9FWFBPUlQgUEZORUdMUVVF
UllERVZJQ0VTVFJJTkdFWFRQUk9DIGxfZWdsUXVlcnlEZXZpY2VTdHJpbmdFWFQ7CiBBTkdMRV9V
VElMX0VYUE9SVCBQRk5FR0xRVUVSWURJU1BMQVlBVFRSSUJFWFRQUk9DIGxfZWdsUXVlcnlEaXNw
bGF5QXR0cmliRVhUOworQU5HTEVfVVRJTF9FWFBPUlQgUEZORUdMUVVFUllETUFCVUZGT1JNQVRT
RVhUUFJPQyBsX2VnbFF1ZXJ5RG1hQnVmRm9ybWF0c0VYVDsKK0FOR0xFX1VUSUxfRVhQT1JUIFBG
TkVHTFFVRVJZRE1BQlVGTU9ESUZJRVJTRVhUUFJPQyBsX2VnbFF1ZXJ5RG1hQnVmTW9kaWZpZXJz
RVhUOwogQU5HTEVfVVRJTF9FWFBPUlQgUEZORUdMQ1JFQVRFUExBVEZPUk1QSVhNQVBTVVJGQUNF
RVhUUFJPQyBsX2VnbENyZWF0ZVBsYXRmb3JtUGl4bWFwU3VyZmFjZUVYVDsKIEFOR0xFX1VUSUxf
RVhQT1JUIFBGTkVHTENSRUFURVBMQVRGT1JNV0lORE9XU1VSRkFDRUVYVFBST0MgbF9lZ2xDcmVh
dGVQbGF0Zm9ybVdpbmRvd1N1cmZhY2VFWFQ7CiBBTkdMRV9VVElMX0VYUE9SVCBQRk5FR0xHRVRQ
TEFURk9STURJU1BMQVlFWFRQUk9DIGxfZWdsR2V0UGxhdGZvcm1EaXNwbGF5RVhUOwpAQCAtMjEy
LDYgKzIxNSw4IEBAIHZvaWQgTG9hZEVHTChMb2FkUHJvYyBsb2FkUHJvYykKICAgICAgICAgcmVp
bnRlcnByZXRfY2FzdDxQRk5FR0xRVUVSWURJU1BMQVlBVFRSSUJBTkdMRVBST0M+KGxvYWRQcm9j
KCJlZ2xRdWVyeURpc3BsYXlBdHRyaWJBTkdMRSIpKTsKICAgICBsX2VnbFF1ZXJ5U3RyaW5naUFO
R0xFID0KICAgICAgICAgcmVpbnRlcnByZXRfY2FzdDxQRk5FR0xRVUVSWVNUUklOR0lBTkdMRVBS
T0M+KGxvYWRQcm9jKCJlZ2xRdWVyeVN0cmluZ2lBTkdMRSIpKTsKKyAgICBsX2VnbEZvcmNlR1BV
U3dpdGNoQU5HTEUgPQorICAgICAgICByZWludGVycHJldF9jYXN0PFBGTkVHTEZPUkNFR1BVU1dJ
VENIQU5HTEVQUk9DPihsb2FkUHJvYygiZWdsRm9yY2VHUFVTd2l0Y2hBTkdMRSIpKTsKICAgICBs
X2VnbEhhbmRsZUdQVVN3aXRjaEFOR0xFID0KICAgICAgICAgcmVpbnRlcnByZXRfY2FzdDxQRk5F
R0xIQU5ETEVHUFVTV0lUQ0hBTkdMRVBST0M+KGxvYWRQcm9jKCJlZ2xIYW5kbGVHUFVTd2l0Y2hB
TkdMRSIpKTsKICAgICBsX2VnbFJlYWNxdWlyZUhpZ2hQb3dlckdQVUFOR0xFID0gcmVpbnRlcnBy
ZXRfY2FzdDxQRk5FR0xSRUFDUVVJUkVISUdIUE9XRVJHUFVBTkdMRVBST0M+KApAQCAtMjUwLDYg
KzI1NSwxMCBAQCB2b2lkIExvYWRFR0woTG9hZFByb2MgbG9hZFByb2MpCiAgICAgICAgIHJlaW50
ZXJwcmV0X2Nhc3Q8UEZORUdMUVVFUllERVZJQ0VTVFJJTkdFWFRQUk9DPihsb2FkUHJvYygiZWds
UXVlcnlEZXZpY2VTdHJpbmdFWFQiKSk7CiAgICAgbF9lZ2xRdWVyeURpc3BsYXlBdHRyaWJFWFQg
PQogICAgICAgICByZWludGVycHJldF9jYXN0PFBGTkVHTFFVRVJZRElTUExBWUFUVFJJQkVYVFBS
T0M+KGxvYWRQcm9jKCJlZ2xRdWVyeURpc3BsYXlBdHRyaWJFWFQiKSk7CisgICAgbF9lZ2xRdWVy
eURtYUJ1ZkZvcm1hdHNFWFQgPQorICAgICAgICByZWludGVycHJldF9jYXN0PFBGTkVHTFFVRVJZ
RE1BQlVGRk9STUFUU0VYVFBST0M+KGxvYWRQcm9jKCJlZ2xRdWVyeURtYUJ1ZkZvcm1hdHNFWFQi
KSk7CisgICAgbF9lZ2xRdWVyeURtYUJ1Zk1vZGlmaWVyc0VYVCA9CisgICAgICAgIHJlaW50ZXJw
cmV0X2Nhc3Q8UEZORUdMUVVFUllETUFCVUZNT0RJRklFUlNFWFRQUk9DPihsb2FkUHJvYygiZWds
UXVlcnlEbWFCdWZNb2RpZmllcnNFWFQiKSk7CiAgICAgbF9lZ2xDcmVhdGVQbGF0Zm9ybVBpeG1h
cFN1cmZhY2VFWFQgPQogICAgICAgICByZWludGVycHJldF9jYXN0PFBGTkVHTENSRUFURVBMQVRG
T1JNUElYTUFQU1VSRkFDRUVYVFBST0M+KAogICAgICAgICAgICAgbG9hZFByb2MoImVnbENyZWF0
ZVBsYXRmb3JtUGl4bWFwU3VyZmFjZUVYVCIpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL3V0aWwvZWdsX2xvYWRlcl9hdXRvZ2VuLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS91dGlsL2VnbF9sb2FkZXJfYXV0b2dlbi5oCmluZGV4IGE3MDFiOWQxMmZlMWVlNzczNDhm
MmE0ZGRkNGY0NmQ4NjA3MWZkZTMuLmZkNmJkNzRlY2Y4ZmRjYTZiMDIxNzQyYjYyODYwZDUzMDdh
MTViOGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3V0aWwvZWdsX2xvYWRl
cl9hdXRvZ2VuLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvdXRpbC9lZ2xfbG9hZGVy
X2F1dG9nZW4uaApAQCAtNzQsNiArNzQsNyBAQAogI2RlZmluZSBlZ2xSZWxlYXNlRGV2aWNlQU5H
TEUgbF9lZ2xSZWxlYXNlRGV2aWNlQU5HTEUKICNkZWZpbmUgZWdsUXVlcnlEaXNwbGF5QXR0cmli
QU5HTEUgbF9lZ2xRdWVyeURpc3BsYXlBdHRyaWJBTkdMRQogI2RlZmluZSBlZ2xRdWVyeVN0cmlu
Z2lBTkdMRSBsX2VnbFF1ZXJ5U3RyaW5naUFOR0xFCisjZGVmaW5lIGVnbEZvcmNlR1BVU3dpdGNo
QU5HTEUgbF9lZ2xGb3JjZUdQVVN3aXRjaEFOR0xFCiAjZGVmaW5lIGVnbEhhbmRsZUdQVVN3aXRj
aEFOR0xFIGxfZWdsSGFuZGxlR1BVU3dpdGNoQU5HTEUKICNkZWZpbmUgZWdsUmVhY3F1aXJlSGln
aFBvd2VyR1BVQU5HTEUgbF9lZ2xSZWFjcXVpcmVIaWdoUG93ZXJHUFVBTkdMRQogI2RlZmluZSBl
Z2xSZWxlYXNlSGlnaFBvd2VyR1BVQU5HTEUgbF9lZ2xSZWxlYXNlSGlnaFBvd2VyR1BVQU5HTEUK
QEAgLTkyLDYgKzkzLDggQEAKICNkZWZpbmUgZWdsUXVlcnlEZXZpY2VBdHRyaWJFWFQgbF9lZ2xR
dWVyeURldmljZUF0dHJpYkVYVAogI2RlZmluZSBlZ2xRdWVyeURldmljZVN0cmluZ0VYVCBsX2Vn
bFF1ZXJ5RGV2aWNlU3RyaW5nRVhUCiAjZGVmaW5lIGVnbFF1ZXJ5RGlzcGxheUF0dHJpYkVYVCBs
X2VnbFF1ZXJ5RGlzcGxheUF0dHJpYkVYVAorI2RlZmluZSBlZ2xRdWVyeURtYUJ1ZkZvcm1hdHNF
WFQgbF9lZ2xRdWVyeURtYUJ1ZkZvcm1hdHNFWFQKKyNkZWZpbmUgZWdsUXVlcnlEbWFCdWZNb2Rp
ZmllcnNFWFQgbF9lZ2xRdWVyeURtYUJ1Zk1vZGlmaWVyc0VYVAogI2RlZmluZSBlZ2xDcmVhdGVQ
bGF0Zm9ybVBpeG1hcFN1cmZhY2VFWFQgbF9lZ2xDcmVhdGVQbGF0Zm9ybVBpeG1hcFN1cmZhY2VF
WFQKICNkZWZpbmUgZWdsQ3JlYXRlUGxhdGZvcm1XaW5kb3dTdXJmYWNlRVhUIGxfZWdsQ3JlYXRl
UGxhdGZvcm1XaW5kb3dTdXJmYWNlRVhUCiAjZGVmaW5lIGVnbEdldFBsYXRmb3JtRGlzcGxheUVY
VCBsX2VnbEdldFBsYXRmb3JtRGlzcGxheUVYVApAQCAtMTgyLDYgKzE4NSw3IEBAIEFOR0xFX1VU
SUxfRVhQT1JUIGV4dGVybiBQRk5FR0xDUkVBVEVERVZJQ0VBTkdMRVBST0MgbF9lZ2xDcmVhdGVE
ZXZpY2VBTkdMRTsKIEFOR0xFX1VUSUxfRVhQT1JUIGV4dGVybiBQRk5FR0xSRUxFQVNFREVWSUNF
QU5HTEVQUk9DIGxfZWdsUmVsZWFzZURldmljZUFOR0xFOwogQU5HTEVfVVRJTF9FWFBPUlQgZXh0
ZXJuIFBGTkVHTFFVRVJZRElTUExBWUFUVFJJQkFOR0xFUFJPQyBsX2VnbFF1ZXJ5RGlzcGxheUF0
dHJpYkFOR0xFOwogQU5HTEVfVVRJTF9FWFBPUlQgZXh0ZXJuIFBGTkVHTFFVRVJZU1RSSU5HSUFO
R0xFUFJPQyBsX2VnbFF1ZXJ5U3RyaW5naUFOR0xFOworQU5HTEVfVVRJTF9FWFBPUlQgZXh0ZXJu
IFBGTkVHTEZPUkNFR1BVU1dJVENIQU5HTEVQUk9DIGxfZWdsRm9yY2VHUFVTd2l0Y2hBTkdMRTsK
IEFOR0xFX1VUSUxfRVhQT1JUIGV4dGVybiBQRk5FR0xIQU5ETEVHUFVTV0lUQ0hBTkdMRVBST0Mg
bF9lZ2xIYW5kbGVHUFVTd2l0Y2hBTkdMRTsKIEFOR0xFX1VUSUxfRVhQT1JUIGV4dGVybiBQRk5F
R0xSRUFDUVVJUkVISUdIUE9XRVJHUFVBTkdMRVBST0MgbF9lZ2xSZWFjcXVpcmVIaWdoUG93ZXJH
UFVBTkdMRTsKIEFOR0xFX1VUSUxfRVhQT1JUIGV4dGVybiBQRk5FR0xSRUxFQVNFSElHSFBPV0VS
R1BVQU5HTEVQUk9DIGxfZWdsUmVsZWFzZUhpZ2hQb3dlckdQVUFOR0xFOwpAQCAtMjAyLDYgKzIw
Niw4IEBAIEFOR0xFX1VUSUxfRVhQT1JUIGV4dGVybiBQRk5FR0xHRVRTWU5DVkFMVUVTQ0hST01J
VU1QUk9DIGxfZWdsR2V0U3luY1ZhbHVlc0NIUk9NCiBBTkdMRV9VVElMX0VYUE9SVCBleHRlcm4g
UEZORUdMUVVFUllERVZJQ0VBVFRSSUJFWFRQUk9DIGxfZWdsUXVlcnlEZXZpY2VBdHRyaWJFWFQ7
CiBBTkdMRV9VVElMX0VYUE9SVCBleHRlcm4gUEZORUdMUVVFUllERVZJQ0VTVFJJTkdFWFRQUk9D
IGxfZWdsUXVlcnlEZXZpY2VTdHJpbmdFWFQ7CiBBTkdMRV9VVElMX0VYUE9SVCBleHRlcm4gUEZO
RUdMUVVFUllESVNQTEFZQVRUUklCRVhUUFJPQyBsX2VnbFF1ZXJ5RGlzcGxheUF0dHJpYkVYVDsK
K0FOR0xFX1VUSUxfRVhQT1JUIGV4dGVybiBQRk5FR0xRVUVSWURNQUJVRkZPUk1BVFNFWFRQUk9D
IGxfZWdsUXVlcnlEbWFCdWZGb3JtYXRzRVhUOworQU5HTEVfVVRJTF9FWFBPUlQgZXh0ZXJuIFBG
TkVHTFFVRVJZRE1BQlVGTU9ESUZJRVJTRVhUUFJPQyBsX2VnbFF1ZXJ5RG1hQnVmTW9kaWZpZXJz
RVhUOwogQU5HTEVfVVRJTF9FWFBPUlQgZXh0ZXJuIFBGTkVHTENSRUFURVBMQVRGT1JNUElYTUFQ
U1VSRkFDRUVYVFBST0MKICAgICBsX2VnbENyZWF0ZVBsYXRmb3JtUGl4bWFwU3VyZmFjZUVYVDsK
IEFOR0xFX1VUSUxfRVhQT1JUIGV4dGVybiBQRk5FR0xDUkVBVEVQTEFURk9STVdJTkRPV1NVUkZB
Q0VFWFRQUk9DCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS91dGlsL2dsZXNf
bG9hZGVyX2F1dG9nZW4uY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvdXRpbC9nbGVzX2xv
YWRlcl9hdXRvZ2VuLmNwcAppbmRleCA5ZjFjODRhM2FlMmYzZWQzNGVkNTc5NDdlODhmYjFkYjQ5
YTUzYzQ3Li42ZGQwMjRiYTNmNGFlNzVmNWIyNDUzOGViZDUzNDFjMGU4ZjBkZjk4IDEwMDY0NAot
LS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS91dGlsL2dsZXNfbG9hZGVyX2F1dG9nZW4uY3Bw
CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3V0aWwvZ2xlc19sb2FkZXJfYXV0b2dlbi5j
cHAKQEAgLTQ1NCw2ICs0NTQsMTcgQEAgQU5HTEVfVVRJTF9FWFBPUlQgUEZOR0xHRVRTQU1QTEVS
UEFSQU1FVEVSSVVJVlBST0MgbF9nbEdldFNhbXBsZXJQYXJhbWV0ZXJJdWl2OwogQU5HTEVfVVRJ
TF9FWFBPUlQgUEZOR0xURVhCVUZGRVJQUk9DIGxfZ2xUZXhCdWZmZXI7CiBBTkdMRV9VVElMX0VY
UE9SVCBQRk5HTFRFWEJVRkZFUlJBTkdFUFJPQyBsX2dsVGV4QnVmZmVyUmFuZ2U7CiBBTkdMRV9V
VElMX0VYUE9SVCBQRk5HTFRFWFNUT1JBR0UzRE1VTFRJU0FNUExFUFJPQyBsX2dsVGV4U3RvcmFn
ZTNETXVsdGlzYW1wbGU7CitBTkdMRV9VVElMX0VYUE9SVCBQRk5HTEJFR0lOUEVSRk1PTklUT1JB
TURQUk9DIGxfZ2xCZWdpblBlcmZNb25pdG9yQU1EOworQU5HTEVfVVRJTF9FWFBPUlQgUEZOR0xE
RUxFVEVQRVJGTU9OSVRPUlNBTURQUk9DIGxfZ2xEZWxldGVQZXJmTW9uaXRvcnNBTUQ7CitBTkdM
RV9VVElMX0VYUE9SVCBQRk5HTEVORFBFUkZNT05JVE9SQU1EUFJPQyBsX2dsRW5kUGVyZk1vbml0
b3JBTUQ7CitBTkdMRV9VVElMX0VYUE9SVCBQRk5HTEdFTlBFUkZNT05JVE9SU0FNRFBST0MgbF9n
bEdlblBlcmZNb25pdG9yc0FNRDsKK0FOR0xFX1VUSUxfRVhQT1JUIFBGTkdMR0VUUEVSRk1PTklU
T1JDT1VOVEVSREFUQUFNRFBST0MgbF9nbEdldFBlcmZNb25pdG9yQ291bnRlckRhdGFBTUQ7CitB
TkdMRV9VVElMX0VYUE9SVCBQRk5HTEdFVFBFUkZNT05JVE9SQ09VTlRFUklORk9BTURQUk9DIGxf
Z2xHZXRQZXJmTW9uaXRvckNvdW50ZXJJbmZvQU1EOworQU5HTEVfVVRJTF9FWFBPUlQgUEZOR0xH
RVRQRVJGTU9OSVRPUkNPVU5URVJTVFJJTkdBTURQUk9DIGxfZ2xHZXRQZXJmTW9uaXRvckNvdW50
ZXJTdHJpbmdBTUQ7CitBTkdMRV9VVElMX0VYUE9SVCBQRk5HTEdFVFBFUkZNT05JVE9SQ09VTlRF
UlNBTURQUk9DIGxfZ2xHZXRQZXJmTW9uaXRvckNvdW50ZXJzQU1EOworQU5HTEVfVVRJTF9FWFBP
UlQgUEZOR0xHRVRQRVJGTU9OSVRPUkdST1VQU1RSSU5HQU1EUFJPQyBsX2dsR2V0UGVyZk1vbml0
b3JHcm91cFN0cmluZ0FNRDsKK0FOR0xFX1VUSUxfRVhQT1JUIFBGTkdMR0VUUEVSRk1PTklUT1JH
Uk9VUFNBTURQUk9DIGxfZ2xHZXRQZXJmTW9uaXRvckdyb3Vwc0FNRDsKK0FOR0xFX1VUSUxfRVhQ
T1JUIFBGTkdMU0VMRUNUUEVSRk1PTklUT1JDT1VOVEVSU0FNRFBST0MgbF9nbFNlbGVjdFBlcmZN
b25pdG9yQ291bnRlcnNBTUQ7CiBBTkdMRV9VVElMX0VYUE9SVCBQRk5HTERSQVdBUlJBWVNJTlNU
QU5DRURCQVNFSU5TVEFOQ0VBTkdMRVBST0MKICAgICBsX2dsRHJhd0FycmF5c0luc3RhbmNlZEJh
c2VJbnN0YW5jZUFOR0xFOwogQU5HTEVfVVRJTF9FWFBPUlQgUEZOR0xEUkFXRUxFTUVOVFNJTlNU
QU5DRURCQVNFVkVSVEVYQkFTRUlOU1RBTkNFQU5HTEVQUk9DCkBAIC0xNDYxLDYgKzE0NzIsMjgg
QEAgdm9pZCBMb2FkR0xFUyhMb2FkUHJvYyBsb2FkUHJvYykKICAgICBsX2dsVGV4QnVmZmVyUmFu
Z2UgPSByZWludGVycHJldF9jYXN0PFBGTkdMVEVYQlVGRkVSUkFOR0VQUk9DPihsb2FkUHJvYygi
Z2xUZXhCdWZmZXJSYW5nZSIpKTsKICAgICBsX2dsVGV4U3RvcmFnZTNETXVsdGlzYW1wbGUgPQog
ICAgICAgICByZWludGVycHJldF9jYXN0PFBGTkdMVEVYU1RPUkFHRTNETVVMVElTQU1QTEVQUk9D
Pihsb2FkUHJvYygiZ2xUZXhTdG9yYWdlM0RNdWx0aXNhbXBsZSIpKTsKKyAgICBsX2dsQmVnaW5Q
ZXJmTW9uaXRvckFNRCA9CisgICAgICAgIHJlaW50ZXJwcmV0X2Nhc3Q8UEZOR0xCRUdJTlBFUkZN
T05JVE9SQU1EUFJPQz4obG9hZFByb2MoImdsQmVnaW5QZXJmTW9uaXRvckFNRCIpKTsKKyAgICBs
X2dsRGVsZXRlUGVyZk1vbml0b3JzQU1EID0KKyAgICAgICAgcmVpbnRlcnByZXRfY2FzdDxQRk5H
TERFTEVURVBFUkZNT05JVE9SU0FNRFBST0M+KGxvYWRQcm9jKCJnbERlbGV0ZVBlcmZNb25pdG9y
c0FNRCIpKTsKKyAgICBsX2dsRW5kUGVyZk1vbml0b3JBTUQgPQorICAgICAgICByZWludGVycHJl
dF9jYXN0PFBGTkdMRU5EUEVSRk1PTklUT1JBTURQUk9DPihsb2FkUHJvYygiZ2xFbmRQZXJmTW9u
aXRvckFNRCIpKTsKKyAgICBsX2dsR2VuUGVyZk1vbml0b3JzQU1EID0KKyAgICAgICAgcmVpbnRl
cnByZXRfY2FzdDxQRk5HTEdFTlBFUkZNT05JVE9SU0FNRFBST0M+KGxvYWRQcm9jKCJnbEdlblBl
cmZNb25pdG9yc0FNRCIpKTsKKyAgICBsX2dsR2V0UGVyZk1vbml0b3JDb3VudGVyRGF0YUFNRCA9
IHJlaW50ZXJwcmV0X2Nhc3Q8UEZOR0xHRVRQRVJGTU9OSVRPUkNPVU5URVJEQVRBQU1EUFJPQz4o
CisgICAgICAgIGxvYWRQcm9jKCJnbEdldFBlcmZNb25pdG9yQ291bnRlckRhdGFBTUQiKSk7Cisg
ICAgbF9nbEdldFBlcmZNb25pdG9yQ291bnRlckluZm9BTUQgPSByZWludGVycHJldF9jYXN0PFBG
TkdMR0VUUEVSRk1PTklUT1JDT1VOVEVSSU5GT0FNRFBST0M+KAorICAgICAgICBsb2FkUHJvYygi
Z2xHZXRQZXJmTW9uaXRvckNvdW50ZXJJbmZvQU1EIikpOworICAgIGxfZ2xHZXRQZXJmTW9uaXRv
ckNvdW50ZXJTdHJpbmdBTUQgPSByZWludGVycHJldF9jYXN0PFBGTkdMR0VUUEVSRk1PTklUT1JD
T1VOVEVSU1RSSU5HQU1EUFJPQz4oCisgICAgICAgIGxvYWRQcm9jKCJnbEdldFBlcmZNb25pdG9y
Q291bnRlclN0cmluZ0FNRCIpKTsKKyAgICBsX2dsR2V0UGVyZk1vbml0b3JDb3VudGVyc0FNRCA9
IHJlaW50ZXJwcmV0X2Nhc3Q8UEZOR0xHRVRQRVJGTU9OSVRPUkNPVU5URVJTQU1EUFJPQz4oCisg
ICAgICAgIGxvYWRQcm9jKCJnbEdldFBlcmZNb25pdG9yQ291bnRlcnNBTUQiKSk7CisgICAgbF9n
bEdldFBlcmZNb25pdG9yR3JvdXBTdHJpbmdBTUQgPSByZWludGVycHJldF9jYXN0PFBGTkdMR0VU
UEVSRk1PTklUT1JHUk9VUFNUUklOR0FNRFBST0M+KAorICAgICAgICBsb2FkUHJvYygiZ2xHZXRQ
ZXJmTW9uaXRvckdyb3VwU3RyaW5nQU1EIikpOworICAgIGxfZ2xHZXRQZXJmTW9uaXRvckdyb3Vw
c0FNRCA9CisgICAgICAgIHJlaW50ZXJwcmV0X2Nhc3Q8UEZOR0xHRVRQRVJGTU9OSVRPUkdST1VQ
U0FNRFBST0M+KGxvYWRQcm9jKCJnbEdldFBlcmZNb25pdG9yR3JvdXBzQU1EIikpOworICAgIGxf
Z2xTZWxlY3RQZXJmTW9uaXRvckNvdW50ZXJzQU1EID0gcmVpbnRlcnByZXRfY2FzdDxQRk5HTFNF
TEVDVFBFUkZNT05JVE9SQ09VTlRFUlNBTURQUk9DPigKKyAgICAgICAgbG9hZFByb2MoImdsU2Vs
ZWN0UGVyZk1vbml0b3JDb3VudGVyc0FNRCIpKTsKICAgICBsX2dsRHJhd0FycmF5c0luc3RhbmNl
ZEJhc2VJbnN0YW5jZUFOR0xFID0KICAgICAgICAgcmVpbnRlcnByZXRfY2FzdDxQRk5HTERSQVdB
UlJBWVNJTlNUQU5DRURCQVNFSU5TVEFOQ0VBTkdMRVBST0M+KAogICAgICAgICAgICAgbG9hZFBy
b2MoImdsRHJhd0FycmF5c0luc3RhbmNlZEJhc2VJbnN0YW5jZUFOR0xFIikpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvdXRpbC9nbGVzX2xvYWRlcl9hdXRvZ2VuLmggYi9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS91dGlsL2dsZXNfbG9hZGVyX2F1dG9nZW4uaAppbmRleCA2
ZDY0OTBjMTE5MDJkODdhNWZiYzYwNWE3ZTkxNDY5ZmRhNTBkYThiLi5iYzlkNWI0MjhiYjM5YzQ0
ZjYxYTViODhhMmQ1MGM1M2NiOWIwNmRiIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS91dGlsL2dsZXNfbG9hZGVyX2F1dG9nZW4uaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS91dGlsL2dsZXNfbG9hZGVyX2F1dG9nZW4uaApAQCAtNDYxLDYgKzQ2MSwxNyBAQAogI2Rl
ZmluZSBnbFRleEJ1ZmZlciBsX2dsVGV4QnVmZmVyCiAjZGVmaW5lIGdsVGV4QnVmZmVyUmFuZ2Ug
bF9nbFRleEJ1ZmZlclJhbmdlCiAjZGVmaW5lIGdsVGV4U3RvcmFnZTNETXVsdGlzYW1wbGUgbF9n
bFRleFN0b3JhZ2UzRE11bHRpc2FtcGxlCisjZGVmaW5lIGdsQmVnaW5QZXJmTW9uaXRvckFNRCBs
X2dsQmVnaW5QZXJmTW9uaXRvckFNRAorI2RlZmluZSBnbERlbGV0ZVBlcmZNb25pdG9yc0FNRCBs
X2dsRGVsZXRlUGVyZk1vbml0b3JzQU1ECisjZGVmaW5lIGdsRW5kUGVyZk1vbml0b3JBTUQgbF9n
bEVuZFBlcmZNb25pdG9yQU1ECisjZGVmaW5lIGdsR2VuUGVyZk1vbml0b3JzQU1EIGxfZ2xHZW5Q
ZXJmTW9uaXRvcnNBTUQKKyNkZWZpbmUgZ2xHZXRQZXJmTW9uaXRvckNvdW50ZXJEYXRhQU1EIGxf
Z2xHZXRQZXJmTW9uaXRvckNvdW50ZXJEYXRhQU1ECisjZGVmaW5lIGdsR2V0UGVyZk1vbml0b3JD
b3VudGVySW5mb0FNRCBsX2dsR2V0UGVyZk1vbml0b3JDb3VudGVySW5mb0FNRAorI2RlZmluZSBn
bEdldFBlcmZNb25pdG9yQ291bnRlclN0cmluZ0FNRCBsX2dsR2V0UGVyZk1vbml0b3JDb3VudGVy
U3RyaW5nQU1ECisjZGVmaW5lIGdsR2V0UGVyZk1vbml0b3JDb3VudGVyc0FNRCBsX2dsR2V0UGVy
Zk1vbml0b3JDb3VudGVyc0FNRAorI2RlZmluZSBnbEdldFBlcmZNb25pdG9yR3JvdXBTdHJpbmdB
TUQgbF9nbEdldFBlcmZNb25pdG9yR3JvdXBTdHJpbmdBTUQKKyNkZWZpbmUgZ2xHZXRQZXJmTW9u
aXRvckdyb3Vwc0FNRCBsX2dsR2V0UGVyZk1vbml0b3JHcm91cHNBTUQKKyNkZWZpbmUgZ2xTZWxl
Y3RQZXJmTW9uaXRvckNvdW50ZXJzQU1EIGxfZ2xTZWxlY3RQZXJmTW9uaXRvckNvdW50ZXJzQU1E
CiAjZGVmaW5lIGdsRHJhd0FycmF5c0luc3RhbmNlZEJhc2VJbnN0YW5jZUFOR0xFIGxfZ2xEcmF3
QXJyYXlzSW5zdGFuY2VkQmFzZUluc3RhbmNlQU5HTEUKICNkZWZpbmUgZ2xEcmF3RWxlbWVudHNJ
bnN0YW5jZWRCYXNlVmVydGV4QmFzZUluc3RhbmNlQU5HTEUgXAogICAgIGxfZ2xEcmF3RWxlbWVu
dHNJbnN0YW5jZWRCYXNlVmVydGV4QmFzZUluc3RhbmNlQU5HTEUKQEAgLTEyNTgsNiArMTI2OSwx
NyBAQCBBTkdMRV9VVElMX0VYUE9SVCBleHRlcm4gUEZOR0xHRVRTQU1QTEVSUEFSQU1FVEVSSVVJ
VlBST0MgbF9nbEdldFNhbXBsZXJQYXJhbWV0ZQogQU5HTEVfVVRJTF9FWFBPUlQgZXh0ZXJuIFBG
TkdMVEVYQlVGRkVSUFJPQyBsX2dsVGV4QnVmZmVyOwogQU5HTEVfVVRJTF9FWFBPUlQgZXh0ZXJu
IFBGTkdMVEVYQlVGRkVSUkFOR0VQUk9DIGxfZ2xUZXhCdWZmZXJSYW5nZTsKIEFOR0xFX1VUSUxf
RVhQT1JUIGV4dGVybiBQRk5HTFRFWFNUT1JBR0UzRE1VTFRJU0FNUExFUFJPQyBsX2dsVGV4U3Rv
cmFnZTNETXVsdGlzYW1wbGU7CitBTkdMRV9VVElMX0VYUE9SVCBleHRlcm4gUEZOR0xCRUdJTlBF
UkZNT05JVE9SQU1EUFJPQyBsX2dsQmVnaW5QZXJmTW9uaXRvckFNRDsKK0FOR0xFX1VUSUxfRVhQ
T1JUIGV4dGVybiBQRk5HTERFTEVURVBFUkZNT05JVE9SU0FNRFBST0MgbF9nbERlbGV0ZVBlcmZN
b25pdG9yc0FNRDsKK0FOR0xFX1VUSUxfRVhQT1JUIGV4dGVybiBQRk5HTEVORFBFUkZNT05JVE9S
QU1EUFJPQyBsX2dsRW5kUGVyZk1vbml0b3JBTUQ7CitBTkdMRV9VVElMX0VYUE9SVCBleHRlcm4g
UEZOR0xHRU5QRVJGTU9OSVRPUlNBTURQUk9DIGxfZ2xHZW5QZXJmTW9uaXRvcnNBTUQ7CitBTkdM
RV9VVElMX0VYUE9SVCBleHRlcm4gUEZOR0xHRVRQRVJGTU9OSVRPUkNPVU5URVJEQVRBQU1EUFJP
QyBsX2dsR2V0UGVyZk1vbml0b3JDb3VudGVyRGF0YUFNRDsKK0FOR0xFX1VUSUxfRVhQT1JUIGV4
dGVybiBQRk5HTEdFVFBFUkZNT05JVE9SQ09VTlRFUklORk9BTURQUk9DIGxfZ2xHZXRQZXJmTW9u
aXRvckNvdW50ZXJJbmZvQU1EOworQU5HTEVfVVRJTF9FWFBPUlQgZXh0ZXJuIFBGTkdMR0VUUEVS
Rk1PTklUT1JDT1VOVEVSU1RSSU5HQU1EUFJPQyBsX2dsR2V0UGVyZk1vbml0b3JDb3VudGVyU3Ry
aW5nQU1EOworQU5HTEVfVVRJTF9FWFBPUlQgZXh0ZXJuIFBGTkdMR0VUUEVSRk1PTklUT1JDT1VO
VEVSU0FNRFBST0MgbF9nbEdldFBlcmZNb25pdG9yQ291bnRlcnNBTUQ7CitBTkdMRV9VVElMX0VY
UE9SVCBleHRlcm4gUEZOR0xHRVRQRVJGTU9OSVRPUkdST1VQU1RSSU5HQU1EUFJPQyBsX2dsR2V0
UGVyZk1vbml0b3JHcm91cFN0cmluZ0FNRDsKK0FOR0xFX1VUSUxfRVhQT1JUIGV4dGVybiBQRk5H
TEdFVFBFUkZNT05JVE9SR1JPVVBTQU1EUFJPQyBsX2dsR2V0UGVyZk1vbml0b3JHcm91cHNBTUQ7
CitBTkdMRV9VVElMX0VYUE9SVCBleHRlcm4gUEZOR0xTRUxFQ1RQRVJGTU9OSVRPUkNPVU5URVJT
QU1EUFJPQyBsX2dsU2VsZWN0UGVyZk1vbml0b3JDb3VudGVyc0FNRDsKIEFOR0xFX1VUSUxfRVhQ
T1JUIGV4dGVybiBQRk5HTERSQVdBUlJBWVNJTlNUQU5DRURCQVNFSU5TVEFOQ0VBTkdMRVBST0MK
ICAgICBsX2dsRHJhd0FycmF5c0luc3RhbmNlZEJhc2VJbnN0YW5jZUFOR0xFOwogQU5HTEVfVVRJ
TF9FWFBPUlQgZXh0ZXJuIFBGTkdMRFJBV0VMRU1FTlRTSU5TVEFOQ0VEQkFTRVZFUlRFWEJBU0VJ
TlNUQU5DRUFOR0xFUFJPQwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvdXRp
bC9zaGFkZXJfdXRpbHMuY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvdXRpbC9zaGFkZXJf
dXRpbHMuY3BwCmluZGV4IGFmYzQxZDFkODMxZWUxYjE5MjM4N2Y1ZWM2NDA3ZDY0N2JkOWRmMTku
LjQ0NzNhMTM4YmYwZGFkNTMxMzkwNTk5ZjAzNzIyZTdiY2E3YjFkMzQgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL3V0aWwvc2hhZGVyX3V0aWxzLmNwcAorKysgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS91dGlsL3NoYWRlcl91dGlscy5jcHAKQEAgLTEzNSw2ICsxMzUsMjgg
QEAgdm9pZCBLSFJPTk9TX0FQSUVOVFJZIERlYnVnTWVzc2FnZUNhbGxiYWNrKEdMZW51bSBzb3Vy
Y2UsCiAgICAgICAgIGNhbGxiYWNrQ2hhaW4oc291cmNlLCB0eXBlLCBpZCwgc2V2ZXJpdHksIGxl
bmd0aCwgbWVzc2FnZSwgZ0NhbGxiYWNrQ2hhaW5Vc2VyUGFyYW0pOwogICAgIH0KIH0KKwordm9p
ZCBHZXRQZXJmQ291bnRlclZhbHVlKGNvbnN0IENvdW50ZXJOYW1lVG9JbmRleE1hcCAmY291bnRl
ckluZGV4TWFwLAorICAgICAgICAgICAgICAgICAgICAgICAgIHN0ZDo6dmVjdG9yPGFuZ2xlOjpQ
ZXJmTW9uaXRvclRyaXBsZXQ+ICZ0cmlwbGV0cywKKyAgICAgICAgICAgICAgICAgICAgICAgICBj
b25zdCBjaGFyICpuYW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgIEdMdWludCAqY291bnRl
ck91dCkKK3sKKyAgICBhdXRvIGl0ZXIgPSBjb3VudGVySW5kZXhNYXAuZmluZChuYW1lKTsKKyAg
ICBBU1NFUlQoaXRlciAhPSBjb3VudGVySW5kZXhNYXAuZW5kKCkpOworICAgIEdMdWludCBjb3Vu
dGVySW5kZXggPSBpdGVyLT5zZWNvbmQ7CisKKyAgICBmb3IgKGNvbnN0IGFuZ2xlOjpQZXJmTW9u
aXRvclRyaXBsZXQgJnRyaXBsZXQgOiB0cmlwbGV0cykKKyAgICB7CisgICAgICAgIEFTU0VSVCh0
cmlwbGV0Lmdyb3VwID09IDApOworICAgICAgICBpZiAodHJpcGxldC5jb3VudGVyID09IGNvdW50
ZXJJbmRleCkKKyAgICAgICAgeworICAgICAgICAgICAgKmNvdW50ZXJPdXQgPSB0cmlwbGV0LnZh
bHVlOworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CisgICAgfQorCisgICAgVU5SRUFD
SEFCTEUoKTsKK30KIH0gIC8vIG5hbWVzcGFjZQogCiBHTHVpbnQgQ29tcGlsZVNoYWRlcihHTGVu
dW0gdHlwZSwgY29uc3QgY2hhciAqc291cmNlKQpAQCAtMzcyLDYgKzM5NCw5OCBAQCB2b2lkIEVu
YWJsZURlYnVnQ2FsbGJhY2soR0xERUJVR1BST0MgY2FsbGJhY2tDaGFpbiwgY29uc3Qgdm9pZCAq
dXNlclBhcmFtKQogICAgIGdsRGVidWdNZXNzYWdlQ2FsbGJhY2tLSFIoRGVidWdNZXNzYWdlQ2Fs
bGJhY2ssIHJlaW50ZXJwcmV0X2Nhc3Q8Y29uc3Qgdm9pZCAqPihjYWxsYmFja0NoYWluKSk7CiB9
CiAKK0NvdW50ZXJOYW1lVG9JbmRleE1hcCBCdWlsZENvdW50ZXJOYW1lVG9JbmRleE1hcCgpCit7
CisgICAgR0xpbnQgbnVtQ291bnRlcnMgPSAwOworICAgIGdsR2V0UGVyZk1vbml0b3JDb3VudGVy
c0FNRCgwLCAmbnVtQ291bnRlcnMsIG51bGxwdHIsIDAsIG51bGxwdHIpOworICAgIGlmIChnbEdl
dEVycm9yKCkgIT0gR0xfTk9fRVJST1IpCisgICAgeworICAgICAgICByZXR1cm4ge307CisgICAg
fQorCisgICAgc3RkOjp2ZWN0b3I8R0x1aW50PiBjb3VudGVySW5kZXhlcyhudW1Db3VudGVycywg
MCk7CisgICAgZ2xHZXRQZXJmTW9uaXRvckNvdW50ZXJzQU1EKDAsIG51bGxwdHIsIG51bGxwdHIs
IG51bUNvdW50ZXJzLCBjb3VudGVySW5kZXhlcy5kYXRhKCkpOworICAgIGlmIChnbEdldEVycm9y
KCkgIT0gR0xfTk9fRVJST1IpCisgICAgeworICAgICAgICByZXR1cm4ge307CisgICAgfQorCisg
ICAgQ291bnRlck5hbWVUb0luZGV4TWFwIGluZGV4TWFwOworCisgICAgZm9yIChHTHVpbnQgY291
bnRlckluZGV4IDogY291bnRlckluZGV4ZXMpCisgICAgeworICAgICAgICBzdGF0aWMgY29uc3Rl
eHByIHNpemVfdCBrQnVmU2l6ZSA9IDEwMDA7CisgICAgICAgIGNoYXIgYnVmZmVyW2tCdWZTaXpl
XSAgICAgICAgICAgID0ge307CisgICAgICAgIGdsR2V0UGVyZk1vbml0b3JDb3VudGVyU3RyaW5n
QU1EKDAsIGNvdW50ZXJJbmRleCwga0J1ZlNpemUsIG51bGxwdHIsIGJ1ZmZlcik7CisgICAgICAg
IGlmIChnbEdldEVycm9yKCkgIT0gR0xfTk9fRVJST1IpCisgICAgICAgIHsKKyAgICAgICAgICAg
IHJldHVybiB7fTsKKyAgICAgICAgfQorCisgICAgICAgIGluZGV4TWFwW2J1ZmZlcl0gPSBjb3Vu
dGVySW5kZXg7CisgICAgfQorCisgICAgcmV0dXJuIGluZGV4TWFwOworfQorCitzdGQ6OnZlY3Rv
cjxhbmdsZTo6UGVyZk1vbml0b3JUcmlwbGV0PiBHZXRQZXJmTW9uaXRvclRyaXBsZXRzKCkKK3sK
KyAgICBHTHVpbnQgcmVzdWx0U2l6ZSA9IDA7CisgICAgZ2xHZXRQZXJmTW9uaXRvckNvdW50ZXJE
YXRhQU1EKDAsIEdMX1BFUkZNT05fUkVTVUxUX1NJWkVfQU1ELCBzaXplb2YoR0x1aW50KSwgJnJl
c3VsdFNpemUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG51bGxwdHIpOwor
ICAgIGlmIChnbEdldEVycm9yKCkgIT0gR0xfTk9fRVJST1IgfHwgcmVzdWx0U2l6ZSA9PSAwKQor
ICAgIHsKKyAgICAgICAgcmV0dXJuIHt9OworICAgIH0KKworICAgIHN0ZDo6dmVjdG9yPGFuZ2xl
OjpQZXJmTW9uaXRvclRyaXBsZXQ+IHBlcmZSZXN1bHRzKHJlc3VsdFNpemUgLworICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVvZihhbmds
ZTo6UGVyZk1vbml0b3JUcmlwbGV0KSk7CisgICAgZ2xHZXRQZXJmTW9uaXRvckNvdW50ZXJEYXRh
QU1EKAorICAgICAgICAwLCBHTF9QRVJGTU9OX1JFU1VMVF9BTUQsIHN0YXRpY19jYXN0PEdMc2l6
ZWk+KHBlcmZSZXN1bHRzLnNpemUoKSAqIHNpemVvZihwZXJmUmVzdWx0c1swXSkpLAorICAgICAg
ICAmcGVyZlJlc3VsdHMuZGF0YSgpLT5ncm91cCwgbnVsbHB0cik7CisKKyAgICBpZiAoZ2xHZXRF
cnJvcigpICE9IEdMX05PX0VSUk9SKQorICAgIHsKKyAgICAgICAgcmV0dXJuIHt9OworICAgIH0K
KworICAgIHJldHVybiBwZXJmUmVzdWx0czsKK30KKworYW5nbGU6OlZ1bGthblBlcmZDb3VudGVy
cyBHZXRQZXJmQ291bnRlcnMoY29uc3QgQ291bnRlck5hbWVUb0luZGV4TWFwICZpbmRleE1hcCkK
K3sKKyAgICBzdGQ6OnZlY3RvcjxhbmdsZTo6UGVyZk1vbml0b3JUcmlwbGV0PiBwZXJmUmVzdWx0
cyA9IEdldFBlcmZNb25pdG9yVHJpcGxldHMoKTsKKworICAgIGFuZ2xlOjpWdWxrYW5QZXJmQ291
bnRlcnMgY291bnRlcnM7CisKKyNkZWZpbmUgQU5HTEVfVU5QQUNLX1BFUkZfQ09VTlRFUihDT1VO
VEVSKSBcCisgICAgR2V0UGVyZkNvdW50ZXJWYWx1ZShpbmRleE1hcCwgcGVyZlJlc3VsdHMsICND
T1VOVEVSLCAmY291bnRlcnMuQ09VTlRFUik7CisKKyAgICBBTkdMRV9WS19QRVJGX0NPVU5URVJT
X1goQU5HTEVfVU5QQUNLX1BFUkZfQ09VTlRFUikKKworI3VuZGVmIEFOR0xFX1VOUEFDS19QRVJG
X0NPVU5URVIKKworICAgIHJldHVybiBjb3VudGVyczsKK30KKworQ291bnRlck5hbWVUb0luZGV4
TWFwIEJ1aWxkQ291bnRlck5hbWVUb1ZhbHVlTWFwKCkKK3sKKyAgICBDb3VudGVyTmFtZVRvSW5k
ZXhNYXAgaW5kZXhNYXAgICAgICAgICAgICAgICAgICAgICA9IEJ1aWxkQ291bnRlck5hbWVUb0lu
ZGV4TWFwKCk7CisgICAgc3RkOjp2ZWN0b3I8YW5nbGU6OlBlcmZNb25pdG9yVHJpcGxldD4gcGVy
ZlJlc3VsdHMgPSBHZXRQZXJmTW9uaXRvclRyaXBsZXRzKCk7CisKKyAgICBDb3VudGVyTmFtZVRv
VmFsdWVNYXAgdmFsdWVNYXA7CisKKyAgICBmb3IgKGNvbnN0IGF1dG8gJml0ZXIgOiBpbmRleE1h
cCkKKyAgICB7CisgICAgICAgIGNvbnN0IHN0ZDo6c3RyaW5nICZuYW1lID0gaXRlci5maXJzdDsK
KyAgICAgICAgR0x1aW50IGluZGV4ICAgICAgICAgICAgPSBpdGVyLnNlY29uZDsKKworICAgICAg
ICB2YWx1ZU1hcFtuYW1lXSA9IHBlcmZSZXN1bHRzW2luZGV4XS52YWx1ZTsKKyAgICB9CisKKyAg
ICByZXR1cm4gdmFsdWVNYXA7Cit9CisKIG5hbWVzcGFjZSBhbmdsZQogewogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS91dGlsL3NoYWRlcl91dGlscy5oIGIvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvdXRpbC9zaGFkZXJfdXRpbHMuaAppbmRleCBlMmVmY2M3YWE0MTk2NDkx
MjI3NTE5NGE0YmFhMTZlYjg0N2ViNTMyLi5kNDkwYjE3NDE4OTZjMmJiY2IwY2RiNGQ5OGNmODdi
YzE2MWMwNGJiIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS91dGlsL3NoYWRl
cl91dGlscy5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3V0aWwvc2hhZGVyX3V0aWxz
LmgKQEAgLTgsOSArOCwxMSBAQAogI2RlZmluZSBTQU1QTEVfVVRJTF9TSEFERVJfVVRJTFNfSAog
CiAjaW5jbHVkZSA8ZnVuY3Rpb25hbD4KKyNpbmNsdWRlIDxtYXA+CiAjaW5jbHVkZSA8c3RyaW5n
PgogI2luY2x1ZGUgPHZlY3Rvcj4KIAorI2luY2x1ZGUgImNvbW1vbi9hbmdsZXV0aWxzLmgiCiAj
aW5jbHVkZSAidXRpbC91dGlsX2V4cG9ydC5oIgogI2luY2x1ZGUgInV0aWwvdXRpbF9nbC5oIgog
CkBAIC01MSw2ICs1MywxNCBAQCBBTkdMRV9VVElMX0VYUE9SVCBHTHVpbnQgTG9hZEJpbmFyeVBy
b2dyYW1FUzMoY29uc3Qgc3RkOjp2ZWN0b3I8dWludDhfdD4gJmJpbmFyeQogCiBBTkdMRV9VVElM
X0VYUE9SVCB2b2lkIEVuYWJsZURlYnVnQ2FsbGJhY2soR0xERUJVR1BST0MgY2FsbGJhY2tDaGFp
biwgY29uc3Qgdm9pZCAqdXNlclBhcmFtKTsKIAordXNpbmcgQ291bnRlck5hbWVUb0luZGV4TWFw
ID0gc3RkOjptYXA8c3RkOjpzdHJpbmcsIEdMdWludD47Cit1c2luZyBDb3VudGVyTmFtZVRvVmFs
dWVNYXAgPSBzdGQ6Om1hcDxzdGQ6OnN0cmluZywgR0x1aW50PjsKKworQU5HTEVfVVRJTF9FWFBP
UlQgQ291bnRlck5hbWVUb0luZGV4TWFwIEJ1aWxkQ291bnRlck5hbWVUb0luZGV4TWFwKCk7CitB
TkdMRV9VVElMX0VYUE9SVCBhbmdsZTo6VnVsa2FuUGVyZkNvdW50ZXJzIEdldFBlcmZDb3VudGVy
cyhjb25zdCBDb3VudGVyTmFtZVRvSW5kZXhNYXAgJmluZGV4TWFwKTsKK0FOR0xFX1VUSUxfRVhQ
T1JUIENvdW50ZXJOYW1lVG9WYWx1ZU1hcCBCdWlsZENvdW50ZXJOYW1lVG9WYWx1ZU1hcCgpOwor
QU5HTEVfVVRJTF9FWFBPUlQgc3RkOjp2ZWN0b3I8YW5nbGU6OlBlcmZNb25pdG9yVHJpcGxldD4g
R2V0UGVyZk1vbml0b3JUcmlwbGV0cygpOworCiBuYW1lc3BhY2UgYW5nbGUKIHsKIApkaWZmIC0t
Z2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvdXRpbC94MTEvWDExV2luZG93LmNwcCBiL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL3V0aWwveDExL1gxMVdpbmRvdy5jcHAKaW5kZXggNzQ5ZmY0
ZjhiODc4YzMyNmM3ZjRkNmQxZmI5NGE4ZDNjMzRlNDc0MC4uOGNkYjQ0ODk2ODUzZjhjNjcxYjhk
YjQwZDY3Y2JiM2M5ZWQ1MjgxMyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUv
dXRpbC94MTEvWDExV2luZG93LmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS91dGls
L3gxMS9YMTFXaW5kb3cuY3BwCkBAIC0zOTYsNiArMzk2LDEyIEBAIEVHTE5hdGl2ZVdpbmRvd1R5
cGUgWDExV2luZG93OjpnZXROYXRpdmVXaW5kb3coKSBjb25zdAogICAgIHJldHVybiBtV2luZG93
OwogfQogCit2b2lkICpYMTFXaW5kb3c6OmdldFBsYXRmb3JtRXh0ZW5zaW9uKCkKK3sKKyAgICAv
LyBYMTEgbmF0aXZlIHdpbmRvdyBmb3IgZWdsQ3JlYXRlU3VyZmFjZVBsYXRmb3JtRVhUIGlzIFdp
bmRvdyoKKyAgICByZXR1cm4gJm1XaW5kb3c7Cit9CisKIEVHTE5hdGl2ZURpc3BsYXlUeXBlIFgx
MVdpbmRvdzo6Z2V0TmF0aXZlRGlzcGxheSgpIGNvbnN0CiB7CiAgICAgcmV0dXJuIHJlaW50ZXJw
cmV0X2Nhc3Q8RUdMTmF0aXZlRGlzcGxheVR5cGU+KG1EaXNwbGF5KTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL3V0aWwveDExL1gxMVdpbmRvdy5oIGIvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvdXRpbC94MTEvWDExV2luZG93LmgKaW5kZXggMzgwM2M5OWZlNmI2NTM2ODQ2
YTljNzM5MjI0OTgwNGU5ZTk5MGFmNy4uMGI1MDJlNGYzZGMyZmU4ODMyODQ2ZGE0MzgwMWE4ZmJl
Zjc3ZTFhNiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvdXRpbC94MTEvWDEx
V2luZG93LmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvdXRpbC94MTEvWDExV2luZG93
LmgKQEAgLTI5LDYgKzI5LDcgQEAgY2xhc3MgQU5HTEVfVVRJTF9FWFBPUlQgWDExV2luZG93IDog
cHVibGljIE9TV2luZG93CiAKICAgICB2b2lkIHJlc2V0TmF0aXZlV2luZG93KCkgb3ZlcnJpZGU7
CiAgICAgRUdMTmF0aXZlV2luZG93VHlwZSBnZXROYXRpdmVXaW5kb3coKSBjb25zdCBvdmVycmlk
ZTsKKyAgICB2b2lkICpnZXRQbGF0Zm9ybUV4dGVuc2lvbigpIG92ZXJyaWRlOwogICAgIEVHTE5h
dGl2ZURpc3BsYXlUeXBlIGdldE5hdGl2ZURpc3BsYXkoKSBjb25zdCBvdmVycmlkZTsKIAogICAg
IHZvaWQgbWVzc2FnZUxvb3AoKSBvdmVycmlkZTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>455441</attachid>
            <date>2022-03-22 15:45:29 -0700</date>
            <delta_ts>2022-03-23 12:18:00 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-238171-20220322154527.patch</filename>
            <type>text/plain</type>
            <size>2150190</size>
            <attacher name="Kenneth Russell">kbr</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkxNjI5CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9DaGFuZ2VMb2cgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9DaGFuZ2VMb2cKaW5k
ZXggZmRlN2Q0Yzg0YzBjYzgzMzk2NWJmYjc3ZTNlYzZkNTRkNzZhNGI5My4uNjQ2MTMwNzYzZWFj
ZWFkNmMzOTg3ZTM2YmNiZjI3ODQ2YzQ5NGQ3MiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0NoYW5nZUxv
ZwpAQCAtMSwzICsxLDE5IEBACisyMDIyLTAzLTIyICBLZW5uZXRoIFJ1c3NlbGwgIDxrYnJAY2hy
b21pdW0ub3JnPgorCisgICAgICAgIFJvbGwgQU5HTEUgdG8gMjAyMi0wMy0yMiAoZTdmMjk0NDBm
MDI1MTQxMjZmMzAzNTBkY2Q3MTMyYjY4Zjc5NTRkNykKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzODE3MQorCisgICAgICAgIExhcmdlIGF1dG9nZW5l
cmF0ZWQgQ2hhbmdlTG9nIGVsaWRlZC4KKworICAgICAgICBUZXN0ZWQgbG9jYWxseSB3aXRoIE1p
bmlicm93c2VyIG9uIE0xLCB3aXRoIHRlc3QgY2FzZXMgZnJvbSB0aGUKKyAgICAgICAgZm9sbG93
aW5nIHJlY2VudCBidWdzOgorICAgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0yMzcwMDYKKyAgICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MjM3OTA2CisgICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTIzODAyMgorICAgICAgICBhbmQgY29uZmlybWVkIGFsbCByZW5kZXIgY29y
cmVjdGx5LgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCiAyMDIyLTAz
LTIxICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CiAKICAgICAg
ICAgRHVzdCBvZmYgTWFjIENNYWtlIGJ1aWxkCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS8uZ2l0aWdub3JlIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvLmdpdGlnbm9yZQpp
bmRleCBmZGFiYjM5MWZjNmU5ZmEyZjRhZDgwN2ZmOTk1MTgwNGQ3NTc0MDkzLi5hZmVjYTFkNTgy
MWQyMGM1MGJjZWZhMzNjMzdhZTRjMjgzODIzYmYxIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9BTkdMRS8uZ2l0aWdub3JlCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFLy5naXRp
Z25vcmUKQEAgLTcyLDYgKzcyLDcgQEAgdGhpcmRfcGFydHkvcjgvKi5qYXIKIC90aGlyZF9wYXJ0
eS9WSy1HTC1DVFMvc3JjCiAvdGhpcmRfcGFydHkvdnVsa2FuLWRlcHMKIC90aGlyZF9wYXJ0eS92
dWxrYW5fbWVtb3J5X2FsbG9jYXRvcgorL3RoaXJkX3BhcnR5L3dheWxhbmQKIC90aGlyZF9wYXJ0
eS96bGliCiAvdG9vbHMvYW5kcm9pZC9lcnJvcnByb25lX3BsdWdpbgogL3Rvb2xzL2NsYW5nCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9BTkdMRS5wbGlzdCBiL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL0FOR0xFLnBsaXN0CmluZGV4IDVlY2I0YmMxMDc2OWNiYWMwM2I2ZDIz
ZDVmYzQyNjBiZmE4ZmZmZmUuLjkyMzM0YzRjMmE2YjFiOGY4MDg1YjM0YmIwMmQ3ODY3MTNhMWE4
NTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0FOR0xFLnBsaXN0CisrKyBi
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0FOR0xFLnBsaXN0CkBAIC02LDEzICs2LDEzIEBACiAJ
CTxrZXk+T3BlblNvdXJjZVByb2plY3Q8L2tleT4KIAkJPHN0cmluZz5BTkdMRTwvc3RyaW5nPgog
CQk8a2V5Pk9wZW5Tb3VyY2VWZXJzaW9uPC9rZXk+Ci0JCTxzdHJpbmc+NzhjNjRkZDc0ZWU1MjM3
ZTY2NzJhNDI4ZDM4MmE4N2M5ODY1MmZlYjwvc3RyaW5nPgorCQk8c3RyaW5nPmU3ZjI5NDQwZjAy
NTE0MTI2ZjMwMzUwZGNkNzEzMmI2OGY3OTU0ZDc8L3N0cmluZz4KIAkJPGtleT5PcGVuU291cmNl
V2Vic2l0ZVVSTDwva2V5PgogCQk8c3RyaW5nPmh0dHA6Ly9jb2RlLmdvb2dsZS5jb20vcC9hbmds
ZXByb2plY3QvPC9zdHJpbmc+CiAJCTxrZXk+T3BlblNvdXJjZVNDTTwva2V5PgotCQk8c3RyaW5n
PmdpdCBjbG9uZSBodHRwczovL2Nocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vYW5nbGUvYW5nbGUg
JmFtcDsmYW1wOyBjZCBhbmdsZSAmYW1wOyZhbXA7IGdpdCBjaGVja291dCA3OGM2NGRkNzRlZTUy
MzdlNjY3MmE0MjhkMzgyYTg3Yzk4NjUyZmViPC9zdHJpbmc+CisJCTxzdHJpbmc+Z2l0IGNsb25l
IGh0dHBzOi8vY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9hbmdsZS9hbmdsZSAmYW1wOyZhbXA7
IGNkIGFuZ2xlICZhbXA7JmFtcDsgZ2l0IGNoZWNrb3V0IGU3ZjI5NDQwZjAyNTE0MTI2ZjMwMzUw
ZGNkNzEzMmI2OGY3OTU0ZDc8L3N0cmluZz4KIAkJPGtleT5PcGVuU291cmNlSW1wb3J0RGF0ZTwv
a2V5PgotCQk8c3RyaW5nPjIwMjItMDItMTg8L3N0cmluZz4KKwkJPHN0cmluZz4yMDIyLTAzLTIy
PC9zdHJpbmc+CiAJCTxrZXk+T3BlblNvdXJjZUxpY2Vuc2U8L2tleT4KIAkJPHN0cmluZz5CU0Q8
L3N0cmluZz4KIAkJPGtleT5PcGVuU291cmNlTGljZW5zZUZpbGU8L2tleT4KZGlmZiAtLWdpdCBh
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0FOR0xFLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2og
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9BTkdMRS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
CmluZGV4IDIxNDczMTBmNzUxZDJlNDllOTRmZjE2NThhMGRlMjFjYjc2MzZjZDMuLmM5Y2RiNjc0
MDA0MjQyYzgzNGY0NDM1MWQzNzM0MGU5ZWNjNjcxYmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL0FOR0xFLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNl
L1RoaXJkUGFydHkvQU5HTEUvQU5HTEUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMzU1
LDYgKzM1NSw3IEBACiAJCTMxQ0RGRkZEMjQ5MTg0QjAwMDQ4NkYyNyAvKiBpbWFnZWZvcm1hdHMu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDQ0Q1OThC
MjI4NEZDNDAwMDE4RjJEOCAvKiBpbWFnZWZvcm1hdHMuaCAqLzsgfTsKIAkJMzFDREZGRkUyNDkx
ODRCMDAwNDg2RjI3IC8qIGNvcHlpbWFnZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gNUNDRDU5ODYyMjg0RkM0MDAwMThGMkQ4IC8qIGNvcHlpbWFnZS5o
ICovOyB9OwogCQkzMUNERkZGRjI0OTE4NEIwMDA0ODZGMjcgLyogZ2VuZXJhdGVtaXAuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDQ0Q1OThDMjI4NEZD
NDAwMDE4RjJEOCAvKiBnZW5lcmF0ZW1pcC5oICovOyB9OworCQk2RTI3OTI1OTI3RUE0M0Y1MDBC
MUJBODYgLyogQmFzZVR5cGVzLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDZFMjc5MjU4MjdFQTQzRjUwMEIxQkE4NiAvKiBCYXNlVHlwZXMuY3BwICov
OyB9OwogCQk3QjE5NTk5MzI2QzNDMjIwMDBDMDkzMjIgLyogYW5kcm9pZF91dGlsLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMzAzMDc5RjIzMDYyNUM2
MDAyREE5NzIgLyogYW5kcm9pZF91dGlsLmggKi87IH07CiAJCTdCMTk1OTk0MjZDM0MyMjAwMEMw
OTMyMiAvKiBhbmRyb2lkX3V0aWwuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gQTMwMzA3OUUyMzA2MjVDNjAwMkRBOTcyIC8qIGFuZHJvaWRfdXRpbC5j
cHAgKi87IH07CiAJCTdCMTk1OTk1MjZDM0M2NEUwMEMwOTMyMiAvKiB4eGhhc2guYyBpbiBTb3Vy
Y2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDQ0Q1OTRFMjI4NEVDRDEw
MDE4RjJEOCAvKiB4eGhhc2guYyAqLzsgfTsKQEAgLTEzNzIsNiArMTM3Myw3IEBACiAJCTVDQ0Q4
MTlGMURCRkVBNUMwMDYwNjZCOCAvKiBRdWFsaWZpZXJUeXBlcy5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBRdWFsaWZpZXJUeXBlcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQk1RDdDNTlDNjEyMDhDNjhCMDAxQzg3M0UgLyogQmFzZS54Y2NvbmZpZyAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHRleHQueGNjb25maWc7IHBhdGggPSBCYXNlLnhjY29uZmlnOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQk1RDdDNTlDNzEyMDhDNjhCMDAxQzg3M0UgLyogRGVidWdSZWxlYXNlLnhj
Y29uZmlnICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gdGV4dC54Y2NvbmZpZzsgcGF0aCA9IERlYnVnUmVsZWFzZS54Y2Nv
bmZpZzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNkUyNzkyNTgyN0VBNDNGNTAwQjFC
QTg2IC8qIEJhc2VUeXBlcy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBCYXNlVHlwZXMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk2RTMxQTBBMTIz
NEVFRUQ0MDBDODQ3ODQgLyogRGV2aWNlQ0dMLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IERldmljZUNHTC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTZFMzFBMEEyMjM0RUVFRDQwMEM4NDc4NCAvKiBEZXZpY2VDR0wuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gRGV2aWNlQ0dMLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTZFMzNFOEU3MjREMEQxOTYwMDIzMDlBQyAvKiBCdWZmZXJJbXBsLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEJ1ZmZlckltcGwuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwpAQCAtMTc4NSw2ICsxNzg3LDcgQEAKIAkJCQk1QzU1RDZFQTIyODI2Qzk4
MDBCNUJBMkMgLyogdHJlZXV0aWwgKi8sCiAJCQkJNUMxREJCRkIxQjA0Mzc1RjAwMjM1NTUyIC8q
IEFTVE1ldGFkYXRhSExTTC5jcHAgKi8sCiAJCQkJNUMxREJCRkMxQjA0Mzc1RjAwMjM1NTUyIC8q
IEFTVE1ldGFkYXRhSExTTC5oICovLAorCQkJCTZFMjc5MjU4MjdFQTQzRjUwMEIxQkE4NiAvKiBC
YXNlVHlwZXMuY3BwICovLAogCQkJCTMxMDEyREEwMThCOTdCOUIwMDM5MDYyRiAvKiBCYXNlVHlw
ZXMuaCAqLywKIAkJCQk1QzFEQkJGRDFCMDQzNzVGMDAyMzU1NTIgLyogYmxvY2tsYXlvdXQuY3Bw
ICovLAogCQkJCTVDMURCQkZFMUIwNDM3NUYwMDIzNTU1MiAvKiBibG9ja2xheW91dC5oICovLApA
QCAtMzY1MCw2ICszNjUzLDcgQEAKIAkJCQlERjgzRTIyNDI2MzlGQzc0MDAwODI1RUYgLyogYW5n
bGV1dGlscy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlERjgzRTIzNzI2MzlGQ0Q1MDAwODI1RUYg
LyogQXN0SGVscGVycy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlERjgzRTMzMzI2MzlGRTE4MDAw
ODI1RUYgLyogQXR0cmlidXRlTWFwLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTZFMjc5MjU5MjdF
QTQzRjUwMEIxQkE4NiAvKiBCYXNlVHlwZXMuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJREY4M0Uz
NTkyNjM5RkU5MjAwMDgyNUVGIC8qIEJsaXRHTC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlERjgz
RTJFQTI2MzlGRTE3MDAwODI1RUYgLyogQmxvYkNhY2hlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJ
CURGODNFMkJDMjYzOUZEODMwMDA4MjVFRiAvKiBibG9ja2xheW91dC5jcHAgaW4gU291cmNlcyAq
LywKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0FVVEhPUlMgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9BVVRIT1JTCmluZGV4IGZiZjA5YjRiNzdmODg2YmUwYmU3MDU3Y2Vh
MTk0ZWQ0ZGQxN2QzNDguLmYxNDM0Zjc4YzhiZTY0NTUwN2FhYzllY2Q4YjE1NzNjMzM5Mjc3NGQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0FVVEhPUlMKKysrIGIvU291cmNl
L1RoaXJkUGFydHkvQU5HTEUvQVVUSE9SUwpAQCAtNTQsNiArNTQsNyBAQCBCb3lpbmcgTHUKIEFp
dG9yIE1vcmVubwogWXVyaSBPJ0Rvbm5lbGwKIEpvc2ggU29yZWYKK01hIEFpZ3VvCiBNYWtzIE5h
dW1vdgogSmlueW91bmcgSHVyCiBTZWJhc3RpYW4gQmVyZ3N0ZWluCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9CVUlMRC5nbiBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0JV
SUxELmduCmluZGV4IGY1MzY0ODc1YTFmYWZmYjg1YzczYWVjNWViMTNhYjMxNWRkNjY5MDAuLmFh
ZGYxYjFjYWZlMWQyMzFjZmM5ZTVmNmQ0NjJiNGU4MGNlMDVjNTAgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9UaGlyZFBhcnR5L0FOR0xFL0JVSUxELmduCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L0JVSUxELmduCkBAIC03NDUsNiArNzQ1LDEwIEBAIGNvbmZpZygiYW5nbGVfYmFja2VuZF9jb25m
aWciKSB7CiAgICAgZGVmaW5lcyArPSBbICJBTkdMRV9FWFBPU0VfTk9OX0NPTkZPUk1BTlRfRVhU
RU5TSU9OU19BTkRfVkVSU0lPTlMiIF0KICAgfQogCisgIGlmIChhbmdsZV91c2Vfc3BpcnZfZ2Vu
X3Rocm91Z2hfZ2xzbGFuZykgeworICAgIGRlZmluZXMgKz0gWyAiQU5HTEVfVVNFX1NQSVJWX0dF
TkVSQVRJT05fVEhST1VHSF9HTFNMQU5HIiBdCisgIH0KKwogICBjb25maWdzID0gW10KIAogICBp
ZiAoYW5nbGVfZW5hYmxlX2QzZDExKSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9Db21waWxlci5jbWFrZSBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0NvbXBpbGVyLmNt
YWtlCmluZGV4IGNkMjdmYjcwYTgwNzA4MGEyN2MxZGU0YWJlMTlmMTUwNWQ4ZmVlNDcuLjllZDg1
MTczZTQwZDg3NzMwMWY1NzYzZWY0NTIxNGQ2ODY3MjYzZDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL0NvbXBpbGVyLmNtYWtlCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FO
R0xFL0NvbXBpbGVyLmNtYWtlCkBAIC0yNyw2ICsyNyw3IEBAIHNldChhbmdsZV90cmFuc2xhdG9y
X3NvdXJjZXMKICAgICAiaW5jbHVkZS9HTEVTMy9nbDNwbGF0Zm9ybS5oIgogICAgICJpbmNsdWRl
L0tIUi9raHJwbGF0Zm9ybS5oIgogICAgICJpbmNsdWRlL2FuZ2xlX2dsLmgiCisgICAgInNyYy9j
b21waWxlci90cmFuc2xhdG9yL0Jhc2VUeXBlcy5jcHAiCiAgICAgInNyYy9jb21waWxlci90cmFu
c2xhdG9yL0Jhc2VUeXBlcy5oIgogICAgICJzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9CdWlsdElu
RnVuY3Rpb25FbXVsYXRvci5jcHAiCiAgICAgInNyYy9jb21waWxlci90cmFuc2xhdG9yL0J1aWx0
SW5GdW5jdGlvbkVtdWxhdG9yLmgiCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9ERVBTIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvREVQUwppbmRleCAyYzkzOGIzMTZkNzAx
YTAwMDFmNjFkZjAxNjI4NTE0M2RiNTFiMmZjLi42OThhNzkxZTI0MTY4NmMzYjYxY2M0M2Q0N2Ez
MDIwNTgyNzk4YzVmIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9ERVBTCisr
KyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0RFUFMKQEAgLTM0LDEzICszNCwxMyBAQCB2YXJz
ID0gewogICAnY2hlY2tvdXRfYW5kcm9pZF9uYXRpdmVfc3VwcG9ydCc6ICdjaGVja291dF9hbmRy
b2lkIG9yIGNoZWNrb3V0X2Nocm9tZW9zJywKIAogICAjIFZlcnNpb24gb2YgQ2hyb21pdW0gb3Vy
IENocm9taXVtLWJhc2VkIERFUFMgYXJlIG1pcnJvcmVkIGZyb20uCi0gICdjaHJvbWl1bV9yZXZp
c2lvbic6ICc2NTk0YThkMWU2Y2ZkMDcwNjI3MDBjNmE1OTgzZTgxNmYyNmFjNDU1JywKKyAgJ2No
cm9taXVtX3JldmlzaW9uJzogJzNlNDk2MzcwMmUwMjI4Y2NmZmRmMTllMzhkYTdlODQwYTg4ZDU5
ZDUnLAogICAjIFdlIG5ldmVyIHdhbnQgdG8gY2hlY2tvdXQgY2hyb21pdW0sCiAgICMgYnV0IG5l
ZWQgYSBkdW1teSBERVBTIGVudHJ5IGZvciB0aGUgYXV0b3JvbGxlcgogICAnZHVtbXlfY2hlY2tv
dXRfY2hyb21pdW0nOiBGYWxzZSwKIAogICAjIEN1cnJlbnQgcmV2aXNpb24gb2YgVkstR0wtQ1RT
IChhLmsuYSBkRVFQKS4KLSAgJ3ZrX2dsX2N0c19yZXZpc2lvbic6ICdkMzIxYzdlYzg0ZGViZmJh
MGEzODY4MDQ5YzUxYTgyNDE5ZjcyMzc5JywKKyAgJ3ZrX2dsX2N0c19yZXZpc2lvbic6ICc4MjNk
NDljZjVmNWU1NjIyZTFmYWRlNDQyNGU5MmVjMmY2MWI4MWE2JywKIAogICAjIEN1cnJlbnQgcmV2
aXNpb24gb2YgZ29vZ2xldGVzdC4KICAgIyBOb3RlOiB0aGlzIGRlcCBjYW5ub3QgYmUgYXV0by1y
b2xsZWQgYi9jIG9mIG5lc3RpbmcuCkBAIC03OSwxMiArNzksMTIgQEAgdmFycyA9IHsKICAgIyBU
aHJlZSBsaW5lcyBvZiBub24tY2hhbmdpbmcgY29tbWVudHMgc28gdGhhdAogICAjIHRoZSBjb21t
aXQgcXVldWUgY2FuIGhhbmRsZSBDTHMgcm9sbGluZyBjYXRhcHVsdAogICAjIGFuZCB3aGF0ZXZl
ciBlbHNlIHdpdGhvdXQgaW50ZXJmZXJlbmNlIGZyb20gZWFjaCBvdGhlci4KLSAgJ2NhdGFwdWx0
X3JldmlzaW9uJzogJzkxOTg2YjFmZGJmMDRmODYzNDczZTVkMzgwNDZkZjQ2YTAyNjM5ZTYnLAor
ICAnY2F0YXB1bHRfcmV2aXNpb24nOiAnMzg5ZjMzYmI0MGEzMzQ1YjczYTY4NjEzMTc4Yzc4OTQ3
NmNlYWVjZicsCiAKICAgIyBUaHJlZSBsaW5lcyBvZiBub24tY2hhbmdpbmcgY29tbWVudHMgc28g
dGhhdAogICAjIHRoZSBjb21taXQgcXVldWUgY2FuIGhhbmRsZSBDTHMgcm9sbGluZyBsdWNpLWdv
CiAgICMgYW5kIHdoYXRldmVyIGVsc2Ugd2l0aG91dCBpbnRlcmZlcmVuY2UgZnJvbSBlYWNoIG90
aGVyLgotICAnbHVjaV9nbyc6ICdnaXRfcmV2aXNpb246NTgyZTgyOGM1YThhYWY1Y2RkMGFkMWQ1
NDY1ZmI5MDkyYjcxZWFiOCcsCisgICdsdWNpX2dvJzogJ2dpdF9yZXZpc2lvbjpjYjQyNGU3MGU3
NTEzNjczNmE4NjM1OWVmMDcwYWE5NjQyNWZlN2EzJywKIAogICAjIFRocmVlIGxpbmVzIG9mIG5v
bi1jaGFuZ2luZyBjb21tZW50cyBzbyB0aGF0CiAgICMgdGhlIGNvbW1pdCBxdWV1ZSBjYW4gaGFu
ZGxlIENMcyByb2xsaW5nIGFuZHJvaWRfc2RrX2J1aWxkLXRvb2xzX3ZlcnNpb24KQEAgLTExOSwx
MiArMTE5LDEyIEBAIHZhcnMgPSB7CiBkZXBzID0gewogCiAgICdidWlsZCc6IHsKLSAgICAndXJs
JzogJ3tjaHJvbWl1bV9naXR9L2Nocm9taXVtL3NyYy9idWlsZC5naXRAMmZiNDQwMjVhYjE0MTUw
NmIyMTY4YWFiNDk4YjY5Yjc4MzUyNjIxMScsCisgICAgJ3VybCc6ICd7Y2hyb21pdW1fZ2l0fS9j
aHJvbWl1bS9zcmMvYnVpbGQuZ2l0QDhmNzVlN2RlNTU4ODJlMzA5Yzk4MmU4ZDIwM2Y3YWQwZjM1
NGUxMGUnLAogICAgICdjb25kaXRpb24nOiAnbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLAogICB9
LAogCiAgICdidWlsZHRvb2xzJzogewotICAgICd1cmwnOiAne2Nocm9taXVtX2dpdH0vY2hyb21p
dW0vc3JjL2J1aWxkdG9vbHMuZ2l0QDkzYzE1NTI5YzMyM2M2Y2MxMjUxNmVmOWNhYWM3ZmQ4MTVl
ZTdjODInLAorICAgICd1cmwnOiAne2Nocm9taXVtX2dpdH0vY2hyb21pdW0vc3JjL2J1aWxkdG9v
bHMuZ2l0QGQ4YzM3NTQyNmQ4ZjdmNDE0N2Y3ZDQxMDliYjYzYzEyNjU1ZmI4ZDYnLAogICAgICdj
b25kaXRpb24nOiAnbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLAogICB9LAogCkBAIC0xMzcsNyAr
MTM3LDcgQEAgZGVwcyA9IHsKICAgICAncGFja2FnZXMnOiBbCiAgICAgICB7CiAgICAgICAgICdw
YWNrYWdlJzogJ2duL2duL2xpbnV4LWFtZDY0JywKLSAgICAgICAgJ3ZlcnNpb24nOiAnZ2l0X3Jl
dmlzaW9uOjA3MjVkNzgyNzU3NWIyMzk1OTRmYmM4ZmQ1MTkyODczYTFkNjJmNDQnLAorICAgICAg
ICAndmVyc2lvbic6ICdnaXRfcmV2aXNpb246YmQ5OWRiZjk4Y2JkZWZlMThhNDEyODE4OTY2NWM1
NzYxMjYzYmNmYicsCiAgICAgICB9CiAgICAgXSwKICAgICAnZGVwX3R5cGUnOiAnY2lwZCcsCkBA
IC0xNDgsNyArMTQ4LDcgQEAgZGVwcyA9IHsKICAgICAncGFja2FnZXMnOiBbCiAgICAgICB7CiAg
ICAgICAgICdwYWNrYWdlJzogJ2duL2duL21hYy0ke3thcmNofX0nLAotICAgICAgICAndmVyc2lv
bic6ICdnaXRfcmV2aXNpb246MDcyNWQ3ODI3NTc1YjIzOTU5NGZiYzhmZDUxOTI4NzNhMWQ2MmY0
NCcsCisgICAgICAgICd2ZXJzaW9uJzogJ2dpdF9yZXZpc2lvbjpiZDk5ZGJmOThjYmRlZmUxOGE0
MTI4MTg5NjY1YzU3NjEyNjNiY2ZiJywKICAgICAgIH0KICAgICBdLAogICAgICdkZXBfdHlwZSc6
ICdjaXBkJywKQEAgLTE2MSwxMiArMTYxLDEyIEBAIGRlcHMgPSB7CiAgIH0sCiAKICAgJ2J1aWxk
dG9vbHMvdGhpcmRfcGFydHkvbGliYysrYWJpL3RydW5rJzogewotICAgICd1cmwnOiAne2Nocm9t
aXVtX2dpdH0vZXh0ZXJuYWwvZ2l0aHViLmNvbS9sbHZtL2xsdm0tcHJvamVjdC9saWJjeHhhYmku
Z2l0QDczOGRjMTAwYzYxODkwNzQ0ZjllNzhjYWMyN2M3MWQwYTIxOTA3ODEnLAorICAgICd1cmwn
OiAne2Nocm9taXVtX2dpdH0vZXh0ZXJuYWwvZ2l0aHViLmNvbS9sbHZtL2xsdm0tcHJvamVjdC9s
aWJjeHhhYmkuZ2l0QDkzYjhkY2Q1N2JkOGViZTIwMWVjMjRmNzI1NzMzOTk4OGVkMmVmN2MnLAog
ICAgICdjb25kaXRpb24nOiAnbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLAogICB9LAogCiAgICdi
dWlsZHRvb2xzL3RoaXJkX3BhcnR5L2xpYnVud2luZC90cnVuayc6IHsKLSAgICAndXJsJzogJ3tj
aHJvbWl1bV9naXR9L2V4dGVybmFsL2dpdGh1Yi5jb20vbGx2bS9sbHZtLXByb2plY3QvbGlidW53
aW5kLmdpdEA3NTM5NjIyMDQzMzY1MmE2OThiMDVjNWZiNjQ4ZmUxZjVlMWQ3YTI3JywKKyAgICAn
dXJsJzogJ3tjaHJvbWl1bV9naXR9L2V4dGVybmFsL2dpdGh1Yi5jb20vbGx2bS9sbHZtLXByb2pl
Y3QvbGlidW53aW5kLmdpdEBkMWM3ZjkyYjhiMGJmZjhkOWY3MTBjYTQwZTQ0NTYzYTYzZGIzNzZl
JywKICAgICAnY29uZGl0aW9uJzogJ25vdCBidWlsZF93aXRoX2Nocm9taXVtJywKICAgfSwKIApA
QCAtMTc0LDcgKzE3NCw3IEBAIGRlcHMgPSB7CiAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgewog
ICAgICAgICAncGFja2FnZSc6ICdnbi9nbi93aW5kb3dzLWFtZDY0JywKLSAgICAgICAgJ3ZlcnNp
b24nOiAnZ2l0X3JldmlzaW9uOjA3MjVkNzgyNzU3NWIyMzk1OTRmYmM4ZmQ1MTkyODczYTFkNjJm
NDQnLAorICAgICAgICAndmVyc2lvbic6ICdnaXRfcmV2aXNpb246YmQ5OWRiZjk4Y2JkZWZlMThh
NDEyODE4OTY2NWM1NzYxMjYzYmNmYicsCiAgICAgICB9CiAgICAgXSwKICAgICAnZGVwX3R5cGUn
OiAnY2lwZCcsCkBAIC0xODIsMTcgKzE4MiwxNyBAQCBkZXBzID0gewogICB9LAogCiAgICd0ZXN0
aW5nJzogewotICAgICd1cmwnOiAne2Nocm9taXVtX2dpdH0vY2hyb21pdW0vc3JjL3Rlc3RpbmdA
YWE1NTUyZjUxNjlkZGMxYTBhOThmNmQ3Zjk4ZTE2N2ZiNDZjMWMwYycsCisgICAgJ3VybCc6ICd7
Y2hyb21pdW1fZ2l0fS9jaHJvbWl1bS9zcmMvdGVzdGluZ0A1NWYxZGMyZDI3Y2Q2ZDVmOGNkYzQx
ODJlYzMwZjUwOTZkZWRiZjUxJywKICAgICAnY29uZGl0aW9uJzogJ25vdCBidWlsZF93aXRoX2No
cm9taXVtJywKICAgfSwKIAogICAndGhpcmRfcGFydHkvYWJzZWlsLWNwcCc6IHsKLSAgICAndXJs
JzogJ3tjaHJvbWl1bV9naXR9L2Nocm9taXVtL3NyYy90aGlyZF9wYXJ0eS9hYnNlaWwtY3BwQGFk
MDAyZjYwNTE2MWMyOTU2MDg2ZWVlM2UwZGJlNjA5YzE1MzRmMTAnLAorICAgICd1cmwnOiAne2No
cm9taXVtX2dpdH0vY2hyb21pdW0vc3JjL3RoaXJkX3BhcnR5L2Fic2VpbC1jcHBAYTQyOTc0OTNk
ODYwMjJiOTFjOTNmN2MxZGUyOWU5YWQwYTBlMjQ4OScsCiAgICAgJ2NvbmRpdGlvbic6ICdub3Qg
YnVpbGRfd2l0aF9jaHJvbWl1bScsCiAgIH0sCiAKICAgJ3RoaXJkX3BhcnR5L2FuZHJvaWRfYnVp
bGRfdG9vbHMnOiB7Ci0gICAgJ3VybCc6ICd7Y2hyb21pdW1fZ2l0fS9jaHJvbWl1bS9zcmMvdGhp
cmRfcGFydHkvYW5kcm9pZF9idWlsZF90b29sc0A2ZjlkMDM4NmJlMGNiNTQyZDQ1ZjhiYWEzZmRj
ZGI4NGMxOTg5YjVhJywKKyAgICAndXJsJzogJ3tjaHJvbWl1bV9naXR9L2Nocm9taXVtL3NyYy90
aGlyZF9wYXJ0eS9hbmRyb2lkX2J1aWxkX3Rvb2xzQDI5NzY2YjVkNjQxMDhkYmJkNDBiZTAwMTY3
YzdiODcyOGM0MjUyOTknLAogICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQg
bm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLAogICB9LAogCkBAIC0yMDAsNyArMjAwLDcgQEAgZGVw
cyA9IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAgICB7CiAgICAgICAgICAgICAgICdw
YWNrYWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfYnVpbGRfdG9vbHMvYWFwdDIn
LAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd5UUlmNUV2Xy1xOXU2UHJfYTBBUGQxZEhjSW1K
U21vdFZBRHc0UGoxNTFRQycsCisgICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3dpY241Q2UxYXk2
aXZiWjFHTkZGMGdSU1MzTll2XzdoSlRQdFZnYTNPLVFDJywKICAgICAgICAgICB9LAogICAgICAg
XSwKICAgICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dp
dGhfY2hyb21pdW0nLApAQCAtMjIyLDcgKzIyMiw3IEBAIGRlcHMgPSB7CiAgICAgICAncGFja2Fn
ZXMnOiBbCiAgICAgICAgICAgewogICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0v
dGhpcmRfcGFydHkvYW5kcm9pZF9idWlsZF90b29scy9idW5kbGV0b29sJywKLSAgICAgICAgICAg
ICAgICd2ZXJzaW9uJzogJzJaY0xWRHh5UndwOEZ6cGVZTHRMVDBUZlNSd2VaeHZ3aDEtS3gxalpf
Rm9DJywKKyAgICAgICAgICAgICAgICd2ZXJzaW9uJzogJ0xvbGRpUURwWjB1VGRBbTVFUGdaOGhC
SjNMYTJLbFRXTHVhUnhFN2VEaWdDJywKICAgICAgICAgICB9LAogICAgICAgXSwKICAgICAgICdj
b25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0n
LApAQCAtMjMwLDcgKzIzMCw3IEBAIGRlcHMgPSB7CiAgIH0sCiAKICAgJ3RoaXJkX3BhcnR5L2Fu
ZHJvaWRfZGVwcyc6IHsKLSAgICAndXJsJzogJ3tjaHJvbWl1bV9naXR9L2Nocm9taXVtL3NyYy90
aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHNANGM3M2E3YWU3NGMyZGU1YWE5YTgxOTgzODk5MzkxMzY3
ZjU1NTU5MycsCisgICAgJ3VybCc6ICd7Y2hyb21pdW1fZ2l0fS9jaHJvbWl1bS9zcmMvdGhpcmRf
cGFydHkvYW5kcm9pZF9kZXBzQGJlMDczMWYzOWVmNWJiNzEyOGVmZjhkMDlkYTkwY2Q5ZTcwOGMz
YjQnLAogICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dp
dGhfY2hyb21pdW0nLAogICB9LAogCkBAIC0yNDUsNyArMjQ1LDcgQEAgZGVwcyA9IHsKICAgfSwK
IAogICAndGhpcmRfcGFydHkvYW5kcm9pZF9zZGsnOiB7Ci0gICAgJ3VybCc6ICd7Y2hyb21pdW1f
Z2l0fS9jaHJvbWl1bS9zcmMvdGhpcmRfcGFydHkvYW5kcm9pZF9zZGtANGE2ZDUzYjhmNzQxNjYw
MmU2YWViZjVkZDRiZTUyMTRiOTMyODRiYicsCisgICAgJ3VybCc6ICd7Y2hyb21pdW1fZ2l0fS9j
aHJvbWl1bS9zcmMvdGhpcmRfcGFydHkvYW5kcm9pZF9zZGtANWYxMDlmM2M0MTkxZjk5Y2FmYzAz
ZTBkYmNkNTk0Njg1OTQzMDE3NCcsCiAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lk
IGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCiAgIH0sCiAKQEAgLTMzMiw3ICszMzIsNyBA
QCBkZXBzID0gewogICB9LAogCiAgICd0aGlyZF9wYXJ0eS9kZXBvdF90b29scyc6IHsKLSAgICAn
dXJsJzogJ3tjaHJvbWl1bV9naXR9L2Nocm9taXVtL3Rvb2xzL2RlcG90X3Rvb2xzLmdpdEA5ODhj
MGFmNWJlZDA1ZTk3ZDM1MTI5N2VkOWYzMjIxYmZlNDJhMjA1JywKKyAgICAndXJsJzogJ3tjaHJv
bWl1bV9naXR9L2Nocm9taXVtL3Rvb2xzL2RlcG90X3Rvb2xzLmdpdEA3Njk3OWRhZTU2YzA4ZDI0
YjA5MjM0N2ExYmRkMmFiZTQ3NDU1NWEzJywKICAgICAnY29uZGl0aW9uJzogJ25vdCBidWlsZF93
aXRoX2Nocm9taXVtJywKICAgfSwKIApAQCAtMzcxLDcgKzM3MSw3IEBAIGRlcHMgPSB7CiAKICAg
IyBsaWJqcGVnX3R1cmJvIGlzIHVzZWQgYnkgZ2xtYXJrMi4KICAgJ3RoaXJkX3BhcnR5L2xpYmpw
ZWdfdHVyYm8nOiB7Ci0gICAgJ3VybCc6ICd7Y2hyb21pdW1fZ2l0fS9jaHJvbWl1bS9kZXBzL2xp
YmpwZWdfdHVyYm8uZ2l0QDAyOTU5YzNlZTE3YWJhY2ZkMTMzOWVjMjJlYTkzMzAxMjkyZmZkNTYn
LAorICAgICd1cmwnOiAne2Nocm9taXVtX2dpdH0vY2hyb21pdW0vZGVwcy9saWJqcGVnX3R1cmJv
LmdpdEAyMmYxYTIyYzk5ZTlkZGU4Y2QzYzcyZWFkMzMzZjQyNWM1YTdhYTc3JywKICAgICAnY29u
ZGl0aW9uJzogJ25vdCBidWlsZF93aXRoX2Nocm9taXVtJywKICAgfSwKIApAQCAtNDM5LDcgKzQz
OSw3IEBAIGRlcHMgPSB7CiAgIH0sCiAKICAgJ3RoaXJkX3BhcnR5L3Byb3RvYnVmJzogewotICAg
ICd1cmwnOiAne2Nocm9taXVtX2dpdH0vY2hyb21pdW0vc3JjL3RoaXJkX3BhcnR5L3Byb3RvYnVm
QGQyOWQ2ODljMWQ5NDQ2ZTA2MjNhZjk2OTNmZTE5NDVlY2ZhYjljNDUnLAorICAgICd1cmwnOiAn
e2Nocm9taXVtX2dpdH0vY2hyb21pdW0vc3JjL3RoaXJkX3BhcnR5L3Byb3RvYnVmQDcxZDc4ZGI4
ZGVmMDgzM2NmMTcxNzhkNTRmZTYzYjIwYjk3ZTgwY2UnLAogICAgICdjb25kaXRpb24nOiAnbm90
IGJ1aWxkX3dpdGhfY2hyb21pdW0nLAogICB9LAogCkBAIC00NzQsNyArNDc0LDcgQEAgZGVwcyA9
IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAgICB7CiAgICAgICAgICAgICAgICdwYWNr
YWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L3I4JywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24n
OiAnY0V2MXl5ZnhmbVBfTWFackcyMmNSN1lQYzdoZWhnSEFaZDgybFJ4MERGQUMnLAorICAgICAg
ICAgICAgICAndmVyc2lvbic6ICdvdm96ZVJTRERmRVJuRUZwRG9fV1M2T1lPY0VGN29UMUp6R3hD
U2YtZzBrQycsCiAgICAgICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2No
ZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTQ5Niw3ICs0
OTYsNyBAQCBkZXBzID0gewogICB9LAogCiAgICd0aGlyZF9wYXJ0eS9Td2lmdFNoYWRlcic6IHsK
LSAgICAndXJsJzogJ3tzd2lmdHNoYWRlcl9naXR9L1N3aWZ0U2hhZGVyQGI0YTU2YTg5MzQ5NmNi
ZDNmYTUwNTgwYTMwOTg5YTkwMjI2Y2Y5NzgnLAorICAgICd1cmwnOiAne3N3aWZ0c2hhZGVyX2dp
dH0vU3dpZnRTaGFkZXJANTdlY2E5ZGY1ZGM1NmQyOTBmNjYyYWNlNzQ4MWVkNzU4NjE4ZDU1OScs
CiAgICAgJ2NvbmRpdGlvbic6ICdub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCiAgIH0sCiAKQEAg
LTUwNCw3ICs1MDQsNyBAQCBkZXBzID0gewogICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAg
IHsKICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvdHVyYmlu
ZScsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ1ZobWZJUHVTREhIZWlsbkE3V0MwTWhSOVNo
Wk5GMjV0QTBUZTRSWUlaRzhDJywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAnR285SjNNejVh
bmtaQWd4bW41R3hlWEtkRURWNzN6YVpwMm9qTmZHQzFSUUMnLAogICAgICAgICAgIH0sCiAgICAg
ICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRf
d2l0aF9jaHJvbWl1bScsCkBAIC01MTYsNyArNTE2LDcgQEAgZGVwcyA9IHsKICAgfSwKIAogICAn
dGhpcmRfcGFydHkvdnVsa2FuLWRlcHMnOiB7Ci0gICAgJ3VybCc6ICd7Y2hyb21pdW1fZ2l0fS92
dWxrYW4tZGVwc0A0ZDlmZTZiZjFmMGM2ZTM2NTI0NTM3OWFlODhiYWM3OTY2ZTkxMTdhJywKKyAg
ICAndXJsJzogJ3tjaHJvbWl1bV9naXR9L3Z1bGthbi1kZXBzQGM0MTA5NDExZDNmMzY2MzUzODk4
YWVkNjMxNTZhZGEyZmE1NjI4MTcnLAogICAgICdjb25kaXRpb24nOiAnbm90IGJ1aWxkX3dpdGhf
Y2hyb21pdW0nLAogICB9LAogCkBAIC01MjUsOCArNTI1LDEzIEBAIGRlcHMgPSB7CiAgICAgJ2Nv
bmRpdGlvbic6ICdub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCiAgIH0sCiAKKyAgJ3RoaXJkX3Bh
cnR5L3dheWxhbmQnOiB7CisgICAgJ3VybCc6ICd7Y2hyb21pdW1fZ2l0fS9leHRlcm5hbC9hbm9u
Z2l0LmZyZWVkZXNrdG9wLm9yZy9naXQvd2F5bGFuZC93YXlsYW5kQHVwc3RyZWFtLzEuMjAuMCcs
CisgICAgJ2NvbmRpdGlvbic6ICdub3QgYnVpbGRfd2l0aF9jaHJvbWl1bSBhbmQgaG9zdF9vcyA9
PSAibGludXgiJworICB9LAorCiAgICd0aGlyZF9wYXJ0eS96bGliJzogewotICAgICd1cmwnOiAn
e2Nocm9taXVtX2dpdH0vY2hyb21pdW0vc3JjL3RoaXJkX3BhcnR5L3psaWJAMzFlNWFkMWM0MjFk
YjFiZjExNmQ5ZjE5YWEyNjc3ZmVkNTQ0MzQzYScsCisgICAgJ3VybCc6ICd7Y2hyb21pdW1fZ2l0
fS9jaHJvbWl1bS9zcmMvdGhpcmRfcGFydHkvemxpYkA5MjNmNWViNGJmYTQwM2QwZjE0ZDljYmNh
MmNkZjdmYTc0MTZlZTY3JywKICAgICAnY29uZGl0aW9uJzogJ25vdCBidWlsZF93aXRoX2Nocm9t
aXVtJywKICAgfSwKIApAQCAtNTM2LDcgKzU0MSw3IEBAIGRlcHMgPSB7CiAgIH0sCiAKICAgJ3Rv
b2xzL2NsYW5nJzogewotICAgICd1cmwnOiAne2Nocm9taXVtX2dpdH0vY2hyb21pdW0vc3JjL3Rv
b2xzL2NsYW5nLmdpdEAzNzMwMDI2NjIwZjZkZTJkMjZjMmFkM2YzNWUyMWU2OTgyMTAxZTVkJywK
KyAgICAndXJsJzogJ3tjaHJvbWl1bV9naXR9L2Nocm9taXVtL3NyYy90b29scy9jbGFuZy5naXRA
YTE1YzJkZmEzNTE3N2RjMjE1NzdhMTc2MGU4ZjRjMGMxZTg1NGRhNicsCiAgICAgJ2NvbmRpdGlv
bic6ICdub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCiAgIH0sCiAKQEAgLTU2Nyw3ICs1NzIsNyBA
QCBkZXBzID0gewogICB9LAogCiAgICd0b29scy9tYic6IHsKLSAgICAndXJsJzogJ3tjaHJvbWl1
bV9naXR9L2Nocm9taXVtL3NyYy90b29scy9tYkA2OTYzNWIyYTFiZTJjYTAzZDA3MjEwOGI0ZDMx
YzkxY2YxM2M5MmM4JywKKyAgICAndXJsJzogJ3tjaHJvbWl1bV9naXR9L2Nocm9taXVtL3NyYy90
b29scy9tYkBlNmYxNTlkZjYwZDE3ODhmOWE1ZWRmOGNhMzJlNDU2ZjBjNzI5NDliJywKICAgICAn
Y29uZGl0aW9uJzogJ25vdCBidWlsZF93aXRoX2Nocm9taXVtJywKICAgfSwKIApAQCAtNTc3LDEy
ICs1ODIsMTIgQEAgZGVwcyA9IHsKICAgfSwKIAogICAndG9vbHMvbWVtb3J5JzogewotICAgICd1
cmwnOiAne2Nocm9taXVtX2dpdH0vY2hyb21pdW0vc3JjL3Rvb2xzL21lbW9yeUA0ZDEzMWMyMGRh
MzRhMDNmY2RlMjU2ZWQzMWEyMzExNWIxNzFjMTcyJywKKyAgICAndXJsJzogJ3tjaHJvbWl1bV9n
aXR9L2Nocm9taXVtL3NyYy90b29scy9tZW1vcnlAOGEzNDBiNjRkY2U0YjU3ODQ5NDg4MWExMTEy
Y2ZhMTFiNzIzMzBlMicsCiAgICAgJ2NvbmRpdGlvbic6ICdub3QgYnVpbGRfd2l0aF9jaHJvbWl1
bScsCiAgIH0sCiAKICAgJ3Rvb2xzL3BlcmYnOiB7Ci0gICAgJ3VybCc6ICd7Y2hyb21pdW1fZ2l0
fS9jaHJvbWl1bS9zcmMvdG9vbHMvcGVyZkAxNmE0NmNlNmQyNmFlYTNhNzM4OWI1ZjAzOTVlOGUx
OTNkNjQxMTdmJywKKyAgICAndXJsJzogJ3tjaHJvbWl1bV9naXR9L2Nocm9taXVtL3NyYy90b29s
cy9wZXJmQDQ2ZmE5YjQ3NjVjNjFiZGZmM2UxNDdjZDY4YWNjYWJjNGQxZmUwZGInLAogICAgICdj
b25kaXRpb24nOiAnbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLAogICB9LAogCkBAIC02MDAsNyAr
NjA1LDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAgewogICAgICAg
ICAgICdwYWNrYWdlJzogJ3NraWEvdG9vbHMvZ29sZGN0bC9saW51eC1hbWQ2NCcsCi0gICAgICAg
ICAgJ3ZlcnNpb24nOiAnbmpHenpWeVlQU0FfXzN0U2hzR3hzdmg4azVrSmZMOVYwd3ZMdGhYU1VW
NEMnLAorICAgICAgICAgICd2ZXJzaW9uJzogJ2lxdHoycHJuOUNVdjZBOEtDY3hKemFkbVBFRExZ
MUZQUC1iMllxSUZRMWNDJywKICAgICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnZGVwX3R5cGUn
OiAnY2lwZCcsCkBAIC02MTEsNyArNjE2LDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNrYWdlcyc6
IFsKICAgICAgICAgewogICAgICAgICAgICdwYWNrYWdlJzogJ3NraWEvdG9vbHMvZ29sZGN0bC93
aW5kb3dzLWFtZDY0JywKLSAgICAgICAgICAndmVyc2lvbic6ICdrOHRUSERUMkhRSFFGRDdUUGpS
cmRNSEdBQk44WWJ4UDFHWHNKbm1TOUpJQycsCisgICAgICAgICAgJ3ZlcnNpb24nOiAnRWJWUVhh
MXUwaGJaOHB4YjBJbDZSYmMxRXJIcElOXy1rTVZPekJYTVF5b0MnLAogICAgICAgICB9LAogICAg
ICAgXSwKICAgICAgICdkZXBfdHlwZSc6ICdjaXBkJywKQEAgLTYyMiw3ICs2MjcsNyBAQCBkZXBz
ID0gewogICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICB7CiAgICAgICAgICAgJ3BhY2thZ2Un
OiAnc2tpYS90b29scy9nb2xkY3RsL21hYy1hbWQ2NCcsCi0gICAgICAgICAgJ3ZlcnNpb24nOiAn
aE8wT1Q3R3JCYW4wZGVETF9wYjBMRk1MOXVlV3JiZER0ekNVLWF3di04SUMnLAorICAgICAgICAg
ICd2ZXJzaW9uJzogJ1k0bDE0TEJxQ3NUOUVoZmZQSU90c285VlNwd3FRRTlXY2NqWmREQlptTG9D
JywKICAgICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnZGVwX3R5cGUnOiAnY2lwZCcsCkBAIC02
MzMsNyArNjM4LDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAgewog
ICAgICAgICAgICdwYWNrYWdlJzogJ3NraWEvdG9vbHMvZ29sZGN0bC9tYWMtYXJtNjQnLAotICAg
ICAgICAgICd2ZXJzaW9uJzogJ2lHNV84RnIxWjYtN2hXVUlhaUF5X0JkcUVxWnp0aU8xaHNVa0c4
S0RfY3NDJywKKyAgICAgICAgICAndmVyc2lvbic6ICdJTkVxYzhKSV9tdHd3X1gwU2hPbERrRjNT
OE9HNHRqRjROa2VpMEs3Y2k4QycsCiAgICAgICAgIH0sCiAgICAgICBdLAogICAgICAgJ2RlcF90
eXBlJzogJ2NpcGQnLApAQCAtNzU2LDYgKzc2MSwxNiBAQCBkZXBzID0gewogICAgICAgJ2RlcF90
eXBlJzogJ2NpcGQnLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmdsZV9yZXN0cmlj
dGVkX3RyYWNlcycsCiAgIH0sCisgICdzcmMvdGVzdHMvcmVzdHJpY3RlZF90cmFjZXMvYmxhZGVf
YW5kX3NvdWxfcmV2b2x1dGlvbic6IHsKKyAgICAgICdwYWNrYWdlcyc6IFsKKyAgICAgICAgewor
ICAgICAgICAgICAgJ3BhY2thZ2UnOiAnYW5nbGUvdHJhY2VzL2JsYWRlX2FuZF9zb3VsX3Jldm9s
dXRpb24nLAorICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoxJywKKyAgICAgICAgfSwK
KyAgICAgIF0sCisgICAgICAnZGVwX3R5cGUnOiAnY2lwZCcsCisgICAgICAnY29uZGl0aW9uJzog
J2NoZWNrb3V0X2FuZ2xlX3Jlc3RyaWN0ZWRfdHJhY2VzJywKKyAgfSwKICAgJ3NyYy90ZXN0cy9y
ZXN0cmljdGVkX3RyYWNlcy9ibG9ja21hbl9nbyc6IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAg
ICAgICAgewpAQCAtODQ2LDYgKzg2MSwxNiBAQCBkZXBzID0gewogICAgICAgJ2RlcF90eXBlJzog
J2NpcGQnLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmdsZV9yZXN0cmljdGVkX3Ry
YWNlcycsCiAgIH0sCisgICdzcmMvdGVzdHMvcmVzdHJpY3RlZF90cmFjZXMvY2FzdGxldmFuaWFf
c290bic6IHsKKyAgICAgICdwYWNrYWdlcyc6IFsKKyAgICAgICAgeworICAgICAgICAgICAgJ3Bh
Y2thZ2UnOiAnYW5nbGUvdHJhY2VzL2Nhc3RsZXZhbmlhX3NvdG4nLAorICAgICAgICAgICAgJ3Zl
cnNpb24nOiAndmVyc2lvbjoxJywKKyAgICAgICAgfSwKKyAgICAgIF0sCisgICAgICAnZGVwX3R5
cGUnOiAnY2lwZCcsCisgICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZ2xlX3Jlc3RyaWN0
ZWRfdHJhY2VzJywKKyAgfSwKICAgJ3NyYy90ZXN0cy9yZXN0cmljdGVkX3RyYWNlcy9jbGFzaF9v
Zl9jbGFucyc6IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAgewpAQCAtMTA3Niw2ICsx
MTAxLDM2IEBAIGRlcHMgPSB7CiAgICAgICAnZGVwX3R5cGUnOiAnY2lwZCcsCiAgICAgICAnY29u
ZGl0aW9uJzogJ2NoZWNrb3V0X2FuZ2xlX3Jlc3RyaWN0ZWRfdHJhY2VzJywKICAgfSwKKyAgJ3Ny
Yy90ZXN0cy9yZXN0cmljdGVkX3RyYWNlcy9maW5hbF9mYW50YXN5X2JyYXZlX2V4dml1cyc6IHsK
KyAgICAgICdwYWNrYWdlcyc6IFsKKyAgICAgICAgeworICAgICAgICAgICAgJ3BhY2thZ2UnOiAn
YW5nbGUvdHJhY2VzL2ZpbmFsX2ZhbnRhc3lfYnJhdmVfZXh2aXVzJywKKyAgICAgICAgICAgICd2
ZXJzaW9uJzogJ3ZlcnNpb246MScsCisgICAgICAgIH0sCisgICAgICBdLAorICAgICAgJ2RlcF90
eXBlJzogJ2NpcGQnLAorICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmdsZV9yZXN0cmlj
dGVkX3RyYWNlcycsCisgIH0sCisgICdzcmMvdGVzdHMvcmVzdHJpY3RlZF90cmFjZXMvZmlyZV9l
bWJsZW1faGVyb2VzJzogeworICAgICAgJ3BhY2thZ2VzJzogWworICAgICAgICB7CisgICAgICAg
ICAgICAncGFja2FnZSc6ICdhbmdsZS90cmFjZXMvZmlyZV9lbWJsZW1faGVyb2VzJywKKyAgICAg
ICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MScsCisgICAgICAgIH0sCisgICAgICBdLAorICAg
ICAgJ2RlcF90eXBlJzogJ2NpcGQnLAorICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmds
ZV9yZXN0cmljdGVkX3RyYWNlcycsCisgIH0sCisgICdzcmMvdGVzdHMvcmVzdHJpY3RlZF90cmFj
ZXMvZml2ZV9uaWdodHNfYXRfZnJlZGR5cyc6IHsKKyAgICAgICdwYWNrYWdlcyc6IFsKKyAgICAg
ICAgeworICAgICAgICAgICAgJ3BhY2thZ2UnOiAnYW5nbGUvdHJhY2VzL2ZpdmVfbmlnaHRzX2F0
X2ZyZWRkeXMnLAorICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoxJywKKyAgICAgICAg
fSwKKyAgICAgIF0sCisgICAgICAnZGVwX3R5cGUnOiAnY2lwZCcsCisgICAgICAnY29uZGl0aW9u
JzogJ2NoZWNrb3V0X2FuZ2xlX3Jlc3RyaWN0ZWRfdHJhY2VzJywKKyAgfSwKICAgJ3NyYy90ZXN0
cy9yZXN0cmljdGVkX3RyYWNlcy9mcmVlX2ZpcmUnOiB7CiAgICAgICAncGFja2FnZXMnOiBbCiAg
ICAgICAgIHsKQEAgLTE1NjYsNiArMTYyMSwxNiBAQCBkZXBzID0gewogICAgICAgJ2RlcF90eXBl
JzogJ2NpcGQnLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmdsZV9yZXN0cmljdGVk
X3RyYWNlcycsCiAgIH0sCisgICdzcmMvdGVzdHMvcmVzdHJpY3RlZF90cmFjZXMvcmVhbF9yYWNp
bmczJzogeworICAgICAgJ3BhY2thZ2VzJzogWworICAgICAgICB7CisgICAgICAgICAgICAncGFj
a2FnZSc6ICdhbmdsZS90cmFjZXMvcmVhbF9yYWNpbmczJywKKyAgICAgICAgICAgICd2ZXJzaW9u
JzogJ3ZlcnNpb246MScsCisgICAgICAgIH0sCisgICAgICBdLAorICAgICAgJ2RlcF90eXBlJzog
J2NpcGQnLAorICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmdsZV9yZXN0cmljdGVkX3Ry
YWNlcycsCisgIH0sCiAgICdzcmMvdGVzdHMvcmVzdHJpY3RlZF90cmFjZXMvcmVzcGF3bmFibGVz
JzogewogICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICB7CkBAIC0xNjc2LDYgKzE3NDEsMTYg
QEAgZGVwcyA9IHsKICAgICAgICdkZXBfdHlwZSc6ICdjaXBkJywKICAgICAgICdjb25kaXRpb24n
OiAnY2hlY2tvdXRfYW5nbGVfcmVzdHJpY3RlZF90cmFjZXMnLAogICB9LAorICAnc3JjL3Rlc3Rz
L3Jlc3RyaWN0ZWRfdHJhY2VzL3NvbGFyX3NtYXNoJzogeworICAgICAgJ3BhY2thZ2VzJzogWwor
ICAgICAgICB7CisgICAgICAgICAgICAncGFja2FnZSc6ICdhbmdsZS90cmFjZXMvc29sYXJfc21h
c2gnLAorICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyJywKKyAgICAgICAgfSwKKyAg
ICAgIF0sCisgICAgICAnZGVwX3R5cGUnOiAnY2lwZCcsCisgICAgICAnY29uZGl0aW9uJzogJ2No
ZWNrb3V0X2FuZ2xlX3Jlc3RyaWN0ZWRfdHJhY2VzJywKKyAgfSwKICAgJ3NyYy90ZXN0cy9yZXN0
cmljdGVkX3RyYWNlcy9zb25pY190aGVfaGVkZ2Vob2cnOiB7CiAgICAgICAncGFja2FnZXMnOiBb
CiAgICAgICAgIHsKQEAgLTE5MDQsNyArMTk3OSw3IEBAIGRlcHMgPSB7CiAgICAgICAncGFja2Fn
ZXMnOiBbCiAgICAgICAgICAgewogICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90
aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9hbmRyb2lkX2FyY2hfY29yZV9jb21tb24nLAot
ICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMS4xLjEuY3IwJywKKyAgICAgICAg
ICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDEuMS4xLmNyMScsCiAgICAgICAgICAgfSwKICAg
ICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWls
ZF93aXRoX2Nocm9taXVtJywKQEAgLTE5MTUsNyArMTk5MCw3IEBAIGRlcHMgPSB7CiAgICAgICAn
cGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJv
bWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9hbmRyb2lkX2FyY2hfY29yZV9ydW50
aW1lJywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDEuMS4xLmNyMCcsCisg
ICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxLjEuMS5jcjEnLAogICAgICAgICAg
IH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBu
b3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0xOTI2LDcgKzIwMDEsNyBAQCBkZXBzID0gewog
ICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2Un
OiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvYW5kcm9pZF9hcmNoX2xp
ZmVjeWNsZV9jb21tb24nLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMS4x
LjEuY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDEuMS4xLmNyMScs
CiAgICAgICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2Fu
ZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTE5MzcsNyArMjAxMiw3IEBA
IGRlcHMgPSB7CiAgICAgICAncGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAgICAgICAg
ICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9hbmRy
b2lkX2FyY2hfbGlmZWN5Y2xlX2NvbW1vbl9qYXZhOCcsCi0gICAgICAgICAgICAgICd2ZXJzaW9u
JzogJ3ZlcnNpb246MkAxLjEuMS5jcjAnLAorICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJz
aW9uOjJAMS4xLjEuY3IxJywKICAgICAgICAgICB9LAogICAgICAgXSwKICAgICAgICdjb25kaXRp
b24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLApAQCAt
MTk0OCw3ICsyMDIzLDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAg
ICB7CiAgICAgICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJv
aWRfZGVwcy9saWJzL2FuZHJvaWRfYXJjaF9saWZlY3ljbGVfbGl2ZWRhdGEnLAotICAgICAgICAg
ICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMS4xLjEuY3IwJywKKyAgICAgICAgICAgICAgJ3Zl
cnNpb24nOiAndmVyc2lvbjoyQDEuMS4xLmNyMScsCiAgICAgICAgICAgfSwKICAgICAgIF0sCiAg
ICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2No
cm9taXVtJywKQEAgLTE5NTksNyArMjAzNCw3IEBAIGRlcHMgPSB7CiAgICAgICAncGFja2FnZXMn
OiBbCiAgICAgICAgICAgewogICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGly
ZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9hbmRyb2lkX2FyY2hfbGlmZWN5Y2xlX2xpdmVkYXRh
X2NvcmUnLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMS4xLjEuY3IwJywK
KyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDEuMS4xLmNyMScsCiAgICAgICAg
ICAgfSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5k
IG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTE5NzAsNyArMjA0NSw3IEBAIGRlcHMgPSB7
CiAgICAgICAncGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAgICAgICAgICAncGFja2Fn
ZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9hbmRyb2lkX2FyY2hf
bGlmZWN5Y2xlX3J1bnRpbWUnLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJA
MS4xLjEuY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDEuMS4xLmNy
MScsCiAgICAgICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0
X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTE5ODEsMjkgKzIwNTYs
NyBAQCBkZXBzID0gewogICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAg
ICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMv
YW5kcm9pZF9hcmNoX2xpZmVjeWNsZV92aWV3bW9kZWwnLAotICAgICAgICAgICAgICAndmVyc2lv
bic6ICd2ZXJzaW9uOjJAMS4xLjEuY3IwJywKLSAgICAgICAgICB9LAotICAgICAgXSwKLSAgICAg
ICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21p
dW0nLAotICAgICAgJ2RlcF90eXBlJzogJ2NpcGQnLAotICB9LAotCi0gICd0aGlyZF9wYXJ0eS9h
bmRyb2lkX2RlcHMvbGlicy9iYWNrcG9ydF91dGlsX2NvbmN1cnJlbnRfYmFja3BvcnRfdXRpbF9j
b25jdXJyZW50JzogewotICAgICAgJ3BhY2thZ2VzJzogWwotICAgICAgICAgIHsKLSAgICAgICAg
ICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMv
YmFja3BvcnRfdXRpbF9jb25jdXJyZW50X2JhY2twb3J0X3V0aWxfY29uY3VycmVudCcsCi0gICAg
ICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAzLjEuY3IwJywKLSAgICAgICAgICB9LAot
ICAgICAgXSwKLSAgICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1
aWxkX3dpdGhfY2hyb21pdW0nLAotICAgICAgJ2RlcF90eXBlJzogJ2NpcGQnLAotICB9LAotCi0g
ICd0aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9jbGFzc3dvcmxkc19jbGFzc3dvcmxkcyc6
IHsKLSAgICAgICdwYWNrYWdlcyc6IFsKLSAgICAgICAgICB7Ci0gICAgICAgICAgICAgICdwYWNr
YWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL2NsYXNzd29ybGRz
X2NsYXNzd29ybGRzJywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDEuMS1h
bHBoYS0yLmNyMCcsCisgICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxLjEuMS5j
cjEnLAogICAgICAgICAgIH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291
dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0yMDE0LDcgKzIwNjcs
NyBAQCBkZXBzID0gewogICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAg
ICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMv
Y29tX2FuZHJvaWRfc3VwcG9ydF9hbmltYXRlZF92ZWN0b3JfZHJhd2FibGUnLAotICAgICAgICAg
ICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMjguMC4wLmNyMCcsCisgICAgICAgICAgICAgICd2
ZXJzaW9uJzogJ3ZlcnNpb246MkAyOC4wLjAuY3IxJywKICAgICAgICAgICB9LAogICAgICAgXSwK
ICAgICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhf
Y2hyb21pdW0nLApAQCAtMjAyNSw3ICsyMDc4LDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNrYWdl
cyc6IFsKICAgICAgICAgICB7CiAgICAgICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3Ro
aXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL2NvbV9hbmRyb2lkX3N1cHBvcnRfYXBwY29tcGF0
X3Y3JywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDI4LjAuMC5jcjAnLAor
ICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMjguMC4wLmNyMScsCiAgICAgICAg
ICAgfSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5k
IG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTIwMzYsNyArMjA4OSw3IEBAIGRlcHMgPSB7
CiAgICAgICAncGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAgICAgICAgICAncGFja2Fn
ZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9jb21fYW5kcm9pZF9z
dXBwb3J0X2FzeW5jbGF5b3V0aW5mbGF0ZXInLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2
ZXJzaW9uOjJAMjguMC4wLmNyMCcsCisgICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246
MkAyOC4wLjAuY3IxJywKICAgICAgICAgICB9LAogICAgICAgXSwKICAgICAgICdjb25kaXRpb24n
OiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLApAQCAtMjA0
Nyw3ICsyMTAwLDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAgICB7
CiAgICAgICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRf
ZGVwcy9saWJzL2NvbV9hbmRyb2lkX3N1cHBvcnRfY2FyZHZpZXdfdjcnLAotICAgICAgICAgICAg
ICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMjguMC4wLmNyMCcsCisgICAgICAgICAgICAgICd2ZXJz
aW9uJzogJ3ZlcnNpb246MkAyOC4wLjAuY3IxJywKICAgICAgICAgICB9LAogICAgICAgXSwKICAg
ICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hy
b21pdW0nLApAQCAtMjA1OCw3ICsyMTExLDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNrYWdlcyc6
IFsKICAgICAgICAgICB7CiAgICAgICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3RoaXJk
X3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL2NvbV9hbmRyb2lkX3N1cHBvcnRfY29sbGVjdGlvbnMn
LAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMjguMC4wLmNyMCcsCisgICAg
ICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAyOC4wLjAuY3IxJywKICAgICAgICAgICB9
LAogICAgICAgXSwKICAgICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90
IGJ1aWxkX3dpdGhfY2hyb21pdW0nLApAQCAtMjA2OSw3ICsyMTIyLDcgQEAgZGVwcyA9IHsKICAg
ICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAgICB7CiAgICAgICAgICAgICAgICdwYWNrYWdlJzog
J2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL2NvbV9hbmRyb2lkX3N1cHBv
cnRfY29vcmRpbmF0b3JsYXlvdXQnLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9u
OjJAMjguMC4wLmNyMCcsCisgICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAyOC4w
LjAuY3IxJywKICAgICAgICAgICB9LAogICAgICAgXSwKICAgICAgICdjb25kaXRpb24nOiAnY2hl
Y2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLApAQCAtMjA4MCw3ICsy
MTMzLDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAgICB7CiAgICAg
ICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9s
aWJzL2NvbV9hbmRyb2lkX3N1cHBvcnRfY3Vyc29yYWRhcHRlcicsCi0gICAgICAgICAgICAgICd2
ZXJzaW9uJzogJ3ZlcnNpb246MkAyOC4wLjAuY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24n
OiAndmVyc2lvbjoyQDI4LjAuMC5jcjEnLAogICAgICAgICAgIH0sCiAgICAgICBdLAogICAgICAg
J2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1
bScsCkBAIC0yMDkxLDcgKzIxNDQsNyBAQCBkZXBzID0gewogICAgICAgJ3BhY2thZ2VzJzogWwog
ICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFy
dHkvYW5kcm9pZF9kZXBzL2xpYnMvY29tX2FuZHJvaWRfc3VwcG9ydF9jdXN0b212aWV3JywKLSAg
ICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDI4LjAuMC5jcjAnLAorICAgICAgICAg
ICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMjguMC4wLmNyMScsCiAgICAgICAgICAgfSwKICAg
ICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWls
ZF93aXRoX2Nocm9taXVtJywKQEAgLTIxMDIsNyArMjE1NSw3IEBAIGRlcHMgPSB7CiAgICAgICAn
cGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJv
bWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9jb21fYW5kcm9pZF9zdXBwb3J0X2Rl
c2lnbicsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAyOC4wLjAuY3IwJywK
KyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDI4LjAuMC5jcjEnLAogICAgICAg
ICAgIH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFu
ZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0yMTEzLDcgKzIxNjYsNyBAQCBkZXBzID0g
ewogICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3BhY2th
Z2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvY29tX2FuZHJvaWRf
c3VwcG9ydF9kb2N1bWVudGZpbGUnLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9u
OjJAMjguMC4wLmNyMCcsCisgICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAyOC4w
LjAuY3IxJywKICAgICAgICAgICB9LAogICAgICAgXSwKICAgICAgICdjb25kaXRpb24nOiAnY2hl
Y2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLApAQCAtMjEyNCw3ICsy
MTc3LDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAgICB7CiAgICAg
ICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9s
aWJzL2NvbV9hbmRyb2lkX3N1cHBvcnRfZHJhd2VybGF5b3V0JywKLSAgICAgICAgICAgICAgJ3Zl
cnNpb24nOiAndmVyc2lvbjoyQDI4LjAuMC5jcjAnLAorICAgICAgICAgICAgICAndmVyc2lvbic6
ICd2ZXJzaW9uOjJAMjguMC4wLmNyMScsCiAgICAgICAgICAgfSwKICAgICAgIF0sCiAgICAgICAn
Y29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVt
JywKQEAgLTIxMzUsNyArMjE4OCw3IEBAIGRlcHMgPSB7CiAgICAgICAncGFja2FnZXMnOiBbCiAg
ICAgICAgICAgewogICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0
eS9hbmRyb2lkX2RlcHMvbGlicy9jb21fYW5kcm9pZF9zdXBwb3J0X2ludGVycG9sYXRvcicsCi0g
ICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAyOC4wLjAuY3IwJywKKyAgICAgICAg
ICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDI4LjAuMC5jcjEnLAogICAgICAgICAgIH0sCiAg
ICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVp
bGRfd2l0aF9jaHJvbWl1bScsCkBAIC0yMTQ2LDcgKzIxOTksNyBAQCBkZXBzID0gewogICAgICAg
J3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hy
b21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvY29tX2FuZHJvaWRfc3VwcG9ydF9s
b2FkZXInLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMjguMC4wLmNyMCcs
CisgICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAyOC4wLjAuY3IxJywKICAgICAg
ICAgICB9LAogICAgICAgXSwKICAgICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBh
bmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLApAQCAtMjE1Nyw3ICsyMjEwLDcgQEAgZGVwcyA9
IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAgICB7CiAgICAgICAgICAgICAgICdwYWNr
YWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL2NvbV9hbmRyb2lk
X3N1cHBvcnRfbG9jYWxicm9hZGNhc3RtYW5hZ2VyJywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24n
OiAndmVyc2lvbjoyQDI4LjAuMC5jcjAnLAorICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJz
aW9uOjJAMjguMC4wLmNyMScsCiAgICAgICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0
aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAg
LTIxNjgsNyArMjIyMSw3IEBAIGRlcHMgPSB7CiAgICAgICAncGFja2FnZXMnOiBbCiAgICAgICAg
ICAgewogICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRy
b2lkX2RlcHMvbGlicy9jb21fYW5kcm9pZF9zdXBwb3J0X211bHRpZGV4JywKLSAgICAgICAgICAg
ICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDEuMC4wLmNyMCcsCisgICAgICAgICAgICAgICd2ZXJz
aW9uJzogJ3ZlcnNpb246MkAxLjAuMC5jcjEnLAogICAgICAgICAgIH0sCiAgICAgICBdLAogICAg
ICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJv
bWl1bScsCkBAIC0yMTc5LDcgKzIyMzIsNyBAQCBkZXBzID0gewogICAgICAgJ3BhY2thZ2VzJzog
WwogICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRf
cGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvY29tX2FuZHJvaWRfc3VwcG9ydF9wcmludCcsCi0gICAg
ICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAyOC4wLjAuY3IwJywKKyAgICAgICAgICAg
ICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDI4LjAuMC5jcjEnLAogICAgICAgICAgIH0sCiAgICAg
ICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRf
d2l0aF9jaHJvbWl1bScsCkBAIC0yMTkwLDcgKzIyNDMsNyBAQCBkZXBzID0gewogICAgICAgJ3Bh
Y2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21p
dW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvY29tX2FuZHJvaWRfc3VwcG9ydF9yZWN5
Y2xlcnZpZXdfdjcnLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMjguMC4w
LmNyMCcsCisgICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAyOC4wLjAuY3IxJywK
ICAgICAgICAgICB9LAogICAgICAgXSwKICAgICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5k
cm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLApAQCAtMjIwMSw3ICsyMjU0LDcgQEAg
ZGVwcyA9IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAgICB7CiAgICAgICAgICAgICAg
ICdwYWNrYWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL2NvbV9h
bmRyb2lkX3N1cHBvcnRfc2xpZGluZ3BhbmVsYXlvdXQnLAotICAgICAgICAgICAgICAndmVyc2lv
bic6ICd2ZXJzaW9uOjJAMjguMC4wLmNyMCcsCisgICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3Zl
cnNpb246MkAyOC4wLjAuY3IxJywKICAgICAgICAgICB9LAogICAgICAgXSwKICAgICAgICdjb25k
aXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLApA
QCAtMjIxMiw3ICsyMjY1LDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAg
ICAgICB7CiAgICAgICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2Fu
ZHJvaWRfZGVwcy9saWJzL2NvbV9hbmRyb2lkX3N1cHBvcnRfc3VwcG9ydF9hbm5vdGF0aW9ucycs
Ci0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAyOC4wLjAuY3IwJywKKyAgICAg
ICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDI4LjAuMC5jcjEnLAogICAgICAgICAgIH0s
CiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3Qg
YnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0yMjIzLDcgKzIyNzYsNyBAQCBkZXBzID0gewogICAg
ICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAn
Y2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvY29tX2FuZHJvaWRfc3VwcG9y
dF9zdXBwb3J0X2NvbXBhdCcsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAy
OC4wLjAuY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDI4LjAuMC5j
cjEnLAogICAgICAgICAgIH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291
dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0yMjM0LDcgKzIyODcs
NyBAQCBkZXBzID0gewogICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAg
ICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMv
Y29tX2FuZHJvaWRfc3VwcG9ydF9zdXBwb3J0X2NvcmVfdWknLAotICAgICAgICAgICAgICAndmVy
c2lvbic6ICd2ZXJzaW9uOjJAMjguMC4wLmNyMCcsCisgICAgICAgICAgICAgICd2ZXJzaW9uJzog
J3ZlcnNpb246MkAyOC4wLjAuY3IxJywKICAgICAgICAgICB9LAogICAgICAgXSwKICAgICAgICdj
b25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0n
LApAQCAtMjI0NSw3ICsyMjk4LDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAg
ICAgICAgICB7CiAgICAgICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5
L2FuZHJvaWRfZGVwcy9saWJzL2NvbV9hbmRyb2lkX3N1cHBvcnRfc3VwcG9ydF9jb3JlX3V0aWxz
JywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDI4LjAuMC5jcjAnLAorICAg
ICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMjguMC4wLmNyMScsCiAgICAgICAgICAg
fSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5v
dCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTIyNTYsNyArMjMwOSw3IEBAIGRlcHMgPSB7CiAg
ICAgICAncGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAgICAgICAgICAncGFja2FnZSc6
ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9jb21fYW5kcm9pZF9zdXBw
b3J0X3N1cHBvcnRfZnJhZ21lbnQnLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9u
OjJAMjguMC4wLmNyMCcsCisgICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAyOC4w
LjAuY3IxJywKICAgICAgICAgICB9LAogICAgICAgXSwKICAgICAgICdjb25kaXRpb24nOiAnY2hl
Y2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLApAQCAtMjI2Nyw3ICsy
MzIwLDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAgICB7CiAgICAg
ICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9s
aWJzL2NvbV9hbmRyb2lkX3N1cHBvcnRfc3VwcG9ydF9tZWRpYV9jb21wYXQnLAotICAgICAgICAg
ICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMjguMC4wLmNyMCcsCisgICAgICAgICAgICAgICd2
ZXJzaW9uJzogJ3ZlcnNpb246MkAyOC4wLjAuY3IxJywKICAgICAgICAgICB9LAogICAgICAgXSwK
ICAgICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhf
Y2hyb21pdW0nLApAQCAtMjI3OCw3ICsyMzMxLDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNrYWdl
cyc6IFsKICAgICAgICAgICB7CiAgICAgICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3Ro
aXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL2NvbV9hbmRyb2lkX3N1cHBvcnRfc3VwcG9ydF92
NCcsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAyOC4wLjAuY3IwJywKKyAg
ICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDI4LjAuMC5jcjEnLAogICAgICAgICAg
IH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBu
b3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0yMjg5LDcgKzIzNDIsNyBAQCBkZXBzID0gewog
ICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2Un
OiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvY29tX2FuZHJvaWRfc3Vw
cG9ydF9zdXBwb3J0X3ZlY3Rvcl9kcmF3YWJsZScsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzog
J3ZlcnNpb246MkAyOC4wLjAuY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lv
bjoyQDI4LjAuMC5jcjEnLAogICAgICAgICAgIH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlv
bic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0y
MzAwLDcgKzIzNTMsNyBAQCBkZXBzID0gewogICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAg
IHsKICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9p
ZF9kZXBzL2xpYnMvY29tX2FuZHJvaWRfc3VwcG9ydF9zd2lwZXJlZnJlc2hsYXlvdXQnLAotICAg
ICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMjguMC4wLmNyMCcsCisgICAgICAgICAg
ICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAyOC4wLjAuY3IxJywKICAgICAgICAgICB9LAogICAg
ICAgXSwKICAgICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxk
X3dpdGhfY2hyb21pdW0nLApAQCAtMjMxMSw3ICsyMzY0LDcgQEAgZGVwcyA9IHsKICAgICAgICdw
YWNrYWdlcyc6IFsKICAgICAgICAgICB7CiAgICAgICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9t
aXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL2NvbV9hbmRyb2lkX3N1cHBvcnRfdHJh
bnNpdGlvbicsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAyOC4wLjAuY3Iw
JywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDI4LjAuMC5jcjEnLAogICAg
ICAgICAgIH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lk
IGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0yMzIyLDcgKzIzNzUsNyBAQCBkZXBz
ID0gewogICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3Bh
Y2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvY29tX2FuZHJv
aWRfc3VwcG9ydF92ZXJzaW9uZWRwYXJjZWxhYmxlJywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24n
OiAndmVyc2lvbjoyQDI4LjAuMC5jcjAnLAorICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJz
aW9uOjJAMjguMC4wLmNyMScsCiAgICAgICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0
aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAg
LTIzMzMsNyArMjM4Niw3IEBAIGRlcHMgPSB7CiAgICAgICAncGFja2FnZXMnOiBbCiAgICAgICAg
ICAgewogICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRy
b2lkX2RlcHMvbGlicy9jb21fYW5kcm9pZF9zdXBwb3J0X3ZpZXdwYWdlcicsCi0gICAgICAgICAg
ICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAyOC4wLjAuY3IwJywKKyAgICAgICAgICAgICAgJ3Zl
cnNpb24nOiAndmVyc2lvbjoyQDI4LjAuMC5jcjEnLAogICAgICAgICAgIH0sCiAgICAgICBdLAog
ICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9j
aHJvbWl1bScsCkBAIC0yMzQ0LDcgKzIzOTcsNyBAQCBkZXBzID0gewogICAgICAgJ3BhY2thZ2Vz
JzogWwogICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhp
cmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvY29tX2FuZHJvaWRfdG9vbHNfY29tbW9uJywKLSAg
ICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDMwLjIuMC1iZXRhMDEuY3IwJywKKyAg
ICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDMwLjIuMC1iZXRhMDEuY3IxJywKICAg
ICAgICAgICB9LAogICAgICAgXSwKICAgICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9p
ZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLApAQCAtMjM3Nyw3ICsyNDMwLDcgQEAgZGVw
cyA9IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAgICB7CiAgICAgICAgICAgICAgICdw
YWNrYWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL2NvbV9hbmRy
b2lkX3Rvb2xzX2xheW91dGxpYl9sYXlvdXRsaWJfYXBpJywKLSAgICAgICAgICAgICAgJ3ZlcnNp
b24nOiAndmVyc2lvbjoyQDMwLjIuMC1iZXRhMDEuY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNp
b24nOiAndmVyc2lvbjoyQDMwLjIuMC1iZXRhMDEuY3IxJywKICAgICAgICAgICB9LAogICAgICAg
XSwKICAgICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dp
dGhfY2hyb21pdW0nLApAQCAtMjM4OCw3ICsyNDQxLDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNr
YWdlcyc6IFsKICAgICAgICAgICB7CiAgICAgICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVt
L3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL2NvbV9hbmRyb2lkX3Rvb2xzX3Nka19jb21t
b24nLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMzAuMi4wLWJldGEwMS5j
cjAnLAorICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMzAuMi4wLWJldGEwMS5j
cjEnLAogICAgICAgICAgIH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291
dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0yMzk5LDcgKzI0NTIs
NyBAQCBkZXBzID0gewogICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAg
ICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMv
Y29tX2dpdGh1Yl9iZW5fbWFuZXNfY2FmZmVpbmVfY2FmZmVpbmUnLAotICAgICAgICAgICAgICAn
dmVyc2lvbic6ICd2ZXJzaW9uOjJAMi44LjguY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24n
OiAndmVyc2lvbjoyQDIuOC44LmNyMScsCiAgICAgICAgICAgfSwKICAgICAgIF0sCiAgICAgICAn
Y29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVt
JywKQEAgLTI0MTAsNyArMjQ2Myw3IEBAIGRlcHMgPSB7CiAgICAgICAncGFja2FnZXMnOiBbCiAg
ICAgICAgICAgewogICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0
eS9hbmRyb2lkX2RlcHMvbGlicy9jb21fZ2l0aHViX2tldmluc3Rlcm5fc29mdHdhcmVfYW5kX2Fs
Z29yaXRobXMnLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMS4wLmNyMCcs
CisgICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxLjAuY3IxJywKICAgICAgICAg
ICB9LAogICAgICAgXSwKICAgICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQg
bm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLApAQCAtMjQyMSw3ICsyNDc0LDcgQEAgZGVwcyA9IHsK
ICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAgICB7CiAgICAgICAgICAgICAgICdwYWNrYWdl
JzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL2NvbV9nb29nbGVfYW5k
cm9pZF9kYXRhdHJhbnNwb3J0X3RyYW5zcG9ydF9hcGknLAotICAgICAgICAgICAgICAndmVyc2lv
bic6ICd2ZXJzaW9uOjJAMi4yLjEuY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVy
c2lvbjoyQDIuMi4xLmNyMScsCiAgICAgICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0
aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAg
LTI0MzIsNyArMjQ4NSw3IEBAIGRlcHMgPSB7CiAgICAgICAncGFja2FnZXMnOiBbCiAgICAgICAg
ICAgewogICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRy
b2lkX2RlcHMvbGlicy9jb21fZ29vZ2xlX2FuZHJvaWRfZ21zX3BsYXlfc2VydmljZXNfYXV0aCcs
Ci0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxNy4wLjAuY3IwJywKKyAgICAg
ICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDE3LjAuMC5jcjEnLAogICAgICAgICAgIH0s
CiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3Qg
YnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0yNDQzLDcgKzI0OTYsNyBAQCBkZXBzID0gewogICAg
ICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAn
Y2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvY29tX2dvb2dsZV9hbmRyb2lk
X2dtc19wbGF5X3NlcnZpY2VzX2F1dGhfYXBpX3Bob25lJywKLSAgICAgICAgICAgICAgJ3ZlcnNp
b24nOiAndmVyc2lvbjoyQDE3LjUuMC5jcjAnLAorICAgICAgICAgICAgICAndmVyc2lvbic6ICd2
ZXJzaW9uOjJAMTcuNS4wLmNyMScsCiAgICAgICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnY29u
ZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywK
QEAgLTI0NTQsNyArMjUwNyw3IEBAIGRlcHMgPSB7CiAgICAgICAncGFja2FnZXMnOiBbCiAgICAg
ICAgICAgewogICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9h
bmRyb2lkX2RlcHMvbGlicy9jb21fZ29vZ2xlX2FuZHJvaWRfZ21zX3BsYXlfc2VydmljZXNfYXV0
aF9iYXNlJywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDE3LjAuMC5jcjAn
LAorICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMTcuMC4wLmNyMScsCiAgICAg
ICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQg
YW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTI0NjUsNyArMjUxOCw3IEBAIGRlcHMg
PSB7CiAgICAgICAncGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAgICAgICAgICAncGFj
a2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9jb21fZ29vZ2xl
X2FuZHJvaWRfZ21zX3BsYXlfc2VydmljZXNfYmFzZScsCi0gICAgICAgICAgICAgICd2ZXJzaW9u
JzogJ3ZlcnNpb246MkAxNy41LjAuY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVy
c2lvbjoyQDE3LjUuMC5jcjEnLAogICAgICAgICAgIH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRp
dGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBA
IC0yNDc2LDcgKzI1MjksNyBAQCBkZXBzID0gewogICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAg
ICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5k
cm9pZF9kZXBzL2xpYnMvY29tX2dvb2dsZV9hbmRyb2lkX2dtc19wbGF5X3NlcnZpY2VzX2Jhc2Vt
ZW50JywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDE3LjUuMC5jcjAnLAor
ICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMTcuNS4wLmNyMScsCiAgICAgICAg
ICAgfSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5k
IG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTI0ODcsNyArMjU0MCw3IEBAIGRlcHMgPSB7
CiAgICAgICAncGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAgICAgICAgICAncGFja2Fn
ZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9jb21fZ29vZ2xlX2Fu
ZHJvaWRfZ21zX3BsYXlfc2VydmljZXNfY2FzdCcsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzog
J3ZlcnNpb246MkAxNy4wLjAuY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lv
bjoyQDE3LjAuMC5jcjEnLAogICAgICAgICAgIH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlv
bic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0y
NDk4LDcgKzI1NTEsNyBAQCBkZXBzID0gewogICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAg
IHsKICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9p
ZF9kZXBzL2xpYnMvY29tX2dvb2dsZV9hbmRyb2lkX2dtc19wbGF5X3NlcnZpY2VzX2Nhc3RfZnJh
bWV3b3JrJywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDE3LjAuMC5jcjAn
LAorICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMTcuMC4wLmNyMScsCiAgICAg
ICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQg
YW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTI1MDksNyArMjU2Miw3IEBAIGRlcHMg
PSB7CiAgICAgICAncGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAgICAgICAgICAncGFj
a2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9jb21fZ29vZ2xl
X2FuZHJvaWRfZ21zX3BsYXlfc2VydmljZXNfY2xlYXJjdXQnLAotICAgICAgICAgICAgICAndmVy
c2lvbic6ICd2ZXJzaW9uOjJAMTcuMC4wLmNyMCcsCisgICAgICAgICAgICAgICd2ZXJzaW9uJzog
J3ZlcnNpb246MkAxNy4wLjAuY3IxJywKICAgICAgICAgICB9LAogICAgICAgXSwKICAgICAgICdj
b25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0n
LApAQCAtMjUyMCw3ICsyNTczLDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAg
ICAgICAgICB7CiAgICAgICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5
L2FuZHJvaWRfZGVwcy9saWJzL2NvbV9nb29nbGVfYW5kcm9pZF9nbXNfcGxheV9zZXJ2aWNlc19j
bG91ZF9tZXNzYWdpbmcnLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMTYu
MC4wLmNyMCcsCisgICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxNi4wLjAuY3Ix
JywKICAgICAgICAgICB9LAogICAgICAgXSwKICAgICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRf
YW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLApAQCAtMjUzMSw3ICsyNTg0LDcg
QEAgZGVwcyA9IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAgICB7CiAgICAgICAgICAg
ICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL2Nv
bV9nb29nbGVfYW5kcm9pZF9nbXNfcGxheV9zZXJ2aWNlc19maWRvJywKLSAgICAgICAgICAgICAg
J3ZlcnNpb24nOiAndmVyc2lvbjoyQDE5LjAuMC1iZXRhLmNyMCcsCisgICAgICAgICAgICAgICd2
ZXJzaW9uJzogJ3ZlcnNpb246MkAxOS4wLjAtYmV0YS5jcjEnLAogICAgICAgICAgIH0sCiAgICAg
ICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRf
d2l0aF9jaHJvbWl1bScsCkBAIC0yNTQyLDcgKzI1OTUsNyBAQCBkZXBzID0gewogICAgICAgJ3Bh
Y2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21p
dW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvY29tX2dvb2dsZV9hbmRyb2lkX2dtc19w
bGF5X3NlcnZpY2VzX2ZsYWdzJywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoy
QDE3LjAuMC5jcjAnLAorICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMTcuMC4w
LmNyMScsCiAgICAgICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNr
b3V0X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTI1NTMsNyArMjYw
Niw3IEBAIGRlcHMgPSB7CiAgICAgICAncGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAg
ICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGli
cy9jb21fZ29vZ2xlX2FuZHJvaWRfZ21zX3BsYXlfc2VydmljZXNfZ2NtJywKLSAgICAgICAgICAg
ICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDE3LjAuMC5jcjAnLAorICAgICAgICAgICAgICAndmVy
c2lvbic6ICd2ZXJzaW9uOjJAMTcuMC4wLmNyMScsCiAgICAgICAgICAgfSwKICAgICAgIF0sCiAg
ICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2No
cm9taXVtJywKQEAgLTI1NjQsNyArMjYxNyw3IEBAIGRlcHMgPSB7CiAgICAgICAncGFja2FnZXMn
OiBbCiAgICAgICAgICAgewogICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGly
ZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9jb21fZ29vZ2xlX2FuZHJvaWRfZ21zX3BsYXlfc2Vy
dmljZXNfaWlkJywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDE3LjAuMC5j
cjAnLAorICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMTcuMC4wLmNyMScsCiAg
ICAgICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJv
aWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTI1NzUsNyArMjYyOCw3IEBAIGRl
cHMgPSB7CiAgICAgICAncGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAgICAgICAgICAn
cGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9jb21fZ29v
Z2xlX2FuZHJvaWRfZ21zX3BsYXlfc2VydmljZXNfaW5zdGFudGFwcHMnLAotICAgICAgICAgICAg
ICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMTcuMC4wLmNyMCcsCisgICAgICAgICAgICAgICd2ZXJz
aW9uJzogJ3ZlcnNpb246MkAxNy4wLjAuY3IxJywKICAgICAgICAgICB9LAogICAgICAgXSwKICAg
ICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hy
b21pdW0nLApAQCAtMjU4Niw3ICsyNjM5LDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNrYWdlcyc6
IFsKICAgICAgICAgICB7CiAgICAgICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3RoaXJk
X3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL2NvbV9nb29nbGVfYW5kcm9pZF9nbXNfcGxheV9zZXJ2
aWNlc19sb2NhdGlvbicsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxNy4w
LjAuY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDE3LjAuMC5jcjEn
LAogICAgICAgICAgIH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9h
bmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0yNTk3LDcgKzI2NTAsNyBA
QCBkZXBzID0gewogICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAgICAg
ICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvY29t
X2dvb2dsZV9hbmRyb2lkX2dtc19wbGF5X3NlcnZpY2VzX3BoZW5vdHlwZScsCi0gICAgICAgICAg
ICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxNy4wLjAuY3IwJywKKyAgICAgICAgICAgICAgJ3Zl
cnNpb24nOiAndmVyc2lvbjoyQDE3LjAuMC5jcjEnLAogICAgICAgICAgIH0sCiAgICAgICBdLAog
ICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9j
aHJvbWl1bScsCkBAIC0yNjA4LDcgKzI2NjEsNyBAQCBkZXBzID0gewogICAgICAgJ3BhY2thZ2Vz
JzogWwogICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhp
cmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvY29tX2dvb2dsZV9hbmRyb2lkX2dtc19wbGF5X3Nl
cnZpY2VzX3BsYWNlc19wbGFjZXJlcG9ydCcsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3Zl
cnNpb246MkAxNy4wLjAuY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoy
QDE3LjAuMC5jcjEnLAogICAgICAgICAgIH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6
ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0yNjE5
LDcgKzI2NzIsNyBAQCBkZXBzID0gewogICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsK
ICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9k
ZXBzL2xpYnMvY29tX2dvb2dsZV9hbmRyb2lkX2dtc19wbGF5X3NlcnZpY2VzX3N0YXRzJywKLSAg
ICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDE3LjAuMC5jcjAnLAorICAgICAgICAg
ICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMTcuMC4wLmNyMScsCiAgICAgICAgICAgfSwKICAg
ICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWls
ZF93aXRoX2Nocm9taXVtJywKQEAgLTI2MzAsNyArMjY4Myw3IEBAIGRlcHMgPSB7CiAgICAgICAn
cGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJv
bWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9jb21fZ29vZ2xlX2FuZHJvaWRfZ21z
X3BsYXlfc2VydmljZXNfdGFza3MnLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9u
OjJAMTcuMi4wLmNyMCcsCisgICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxNy4y
LjAuY3IxJywKICAgICAgICAgICB9LAogICAgICAgXSwKICAgICAgICdjb25kaXRpb24nOiAnY2hl
Y2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLApAQCAtMjY0MSw3ICsy
Njk0LDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAgICB7CiAgICAg
ICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9s
aWJzL2NvbV9nb29nbGVfYW5kcm9pZF9nbXNfcGxheV9zZXJ2aWNlc192aXNpb24nLAotICAgICAg
ICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMTguMC4wLmNyMCcsCisgICAgICAgICAgICAg
ICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxOC4wLjAuY3IxJywKICAgICAgICAgICB9LAogICAgICAg
XSwKICAgICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dp
dGhfY2hyb21pdW0nLApAQCAtMjY1Miw3ICsyNzA1LDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNr
YWdlcyc6IFsKICAgICAgICAgICB7CiAgICAgICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVt
L3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL2NvbV9nb29nbGVfYW5kcm9pZF9nbXNfcGxh
eV9zZXJ2aWNlc192aXNpb25fY29tbW9uJywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVy
c2lvbjoyQDE4LjAuMC5jcjAnLAorICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJA
MTguMC4wLmNyMScsCiAgICAgICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzog
J2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTI2NjMs
NyArMjcxNiw3IEBAIGRlcHMgPSB7CiAgICAgICAncGFja2FnZXMnOiBbCiAgICAgICAgICAgewog
ICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2Rl
cHMvbGlicy9jb21fZ29vZ2xlX2FuZHJvaWRfbWF0ZXJpYWxfbWF0ZXJpYWwnLAotICAgICAgICAg
ICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMS42LjAtYWxwaGEwMS5jcjAnLAorICAgICAgICAg
ICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMS42LjAtYWxwaGEwMS5jcjEnLAogICAgICAgICAg
IH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBu
b3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0yNjc0LDcgKzI3MjcsNyBAQCBkZXBzID0gewog
ICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2Un
OiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvY29tX2dvb2dsZV9hbmRy
b2lkX3BsYXlfY29yZScsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxLjEw
LjAuY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDEuMTAuMC5jcjEn
LAogICAgICAgICAgIH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9h
bmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0yNjg1LDcgKzI3MzgsNyBA
QCBkZXBzID0gewogICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAgICAg
ICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvY29t
X2dvb2dsZV9hdXRvX2F1dG9fY29tbW9uJywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVy
c2lvbjoyQDEuMS4yLmNyMCcsCisgICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAx
LjIuMS5jcjEnLAogICAgICAgICAgIH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdj
aGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0yNjk2LDcg
KzI3NDksNyBAQCBkZXBzID0gewogICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAg
ICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBz
L2xpYnMvY29tX2dvb2dsZV9hdXRvX3NlcnZpY2VfYXV0b19zZXJ2aWNlJywKLSAgICAgICAgICAg
ICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDEuMC1yYzYuY3IwJywKKyAgICAgICAgICAgICAgJ3Zl
cnNpb24nOiAndmVyc2lvbjoyQDEuMC1yYzYuY3IxJywKICAgICAgICAgICB9LAogICAgICAgXSwK
ICAgICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhf
Y2hyb21pdW0nLApAQCAtMjcwNyw3ICsyNzYwLDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNrYWdl
cyc6IFsKICAgICAgICAgICB7CiAgICAgICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3Ro
aXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL2NvbV9nb29nbGVfYXV0b19zZXJ2aWNlX2F1dG9f
c2VydmljZV9hbm5vdGF0aW9ucycsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246
MkAxLjAtcmM2LmNyMCcsCisgICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxLjAt
cmM2LmNyMScsCiAgICAgICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2No
ZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTI3MTgsMTgg
KzI3NzEsNyBAQCBkZXBzID0gewogICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAg
ICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBz
L2xpYnMvY29tX2dvb2dsZV9hdXRvX3ZhbHVlX2F1dG9fdmFsdWVfYW5ub3RhdGlvbnMnLAotICAg
ICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMS43LmNyMCcsCi0gICAgICAgICAgfSwK
LSAgICAgIF0sCi0gICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBi
dWlsZF93aXRoX2Nocm9taXVtJywKLSAgICAgICdkZXBfdHlwZSc6ICdjaXBkJywKLSAgfSwKLQot
ICAndGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvY29tX2dvb2dsZV9jb2RlX2ZpbmRidWdz
X2pmb3JtYXRzdHJpbmcnOiB7Ci0gICAgICAncGFja2FnZXMnOiBbCi0gICAgICAgICAgewotICAg
ICAgICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMv
bGlicy9jb21fZ29vZ2xlX2NvZGVfZmluZGJ1Z3NfamZvcm1hdHN0cmluZycsCi0gICAgICAgICAg
ICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAzLjAuMC5jcjAnLAorICAgICAgICAgICAgICAndmVy
c2lvbic6ICd2ZXJzaW9uOjJAMS45LmNyMScsCiAgICAgICAgICAgfSwKICAgICAgIF0sCiAgICAg
ICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9t
aXVtJywKQEAgLTI3NDAsNyArMjc4Miw3IEBAIGRlcHMgPSB7CiAgICAgICAncGFja2FnZXMnOiBb
CiAgICAgICAgICAgewogICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9w
YXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9jb21fZ29vZ2xlX2NvZGVfZmluZGJ1Z3NfanNyMzA1JywK
LSAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDMuMC4yLmNyMCcsCisgICAgICAg
ICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAzLjAuMi5jcjEnLAogICAgICAgICAgIH0sCiAg
ICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVp
bGRfd2l0aF9jaHJvbWl1bScsCkBAIC0yNzUxLDcgKzI3OTMsNyBAQCBkZXBzID0gewogICAgICAg
J3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hy
b21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvY29tX2dvb2dsZV9jb2RlX2dzb25f
Z3NvbicsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAyLjguMC5jcjAnLAor
ICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMi44LjAuY3IxJywKICAgICAgICAg
ICB9LAogICAgICAgXSwKICAgICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQg
bm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLApAQCAtMjc2Miw3ICsyODA0LDcgQEAgZGVwcyA9IHsK
ICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAgICB7CiAgICAgICAgICAgICAgICdwYWNrYWdl
JzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL2NvbV9nb29nbGVfZGFn
Z2VyX2RhZ2dlcicsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAyLjMwLmNy
MCcsCisgICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAyLjMwLmNyMScsCiAgICAg
ICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQg
YW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTI3NzMsNyArMjgxNSw3IEBAIGRlcHMg
PSB7CiAgICAgICAncGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAgICAgICAgICAncGFj
a2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9jb21fZ29vZ2xl
X2RhZ2dlcl9kYWdnZXJfY29tcGlsZXInLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJz
aW9uOjJAMi4zMC5jcjAnLAorICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMi4z
MC5jcjEnLAogICAgICAgICAgIH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVj
a291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0yNzg0LDcgKzI4
MjYsNyBAQCBkZXBzID0gewogICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAg
ICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xp
YnMvY29tX2dvb2dsZV9kYWdnZXJfZGFnZ2VyX3Byb2R1Y2VycycsCi0gICAgICAgICAgICAgICd2
ZXJzaW9uJzogJ3ZlcnNpb246MkAyLjMwLmNyMCcsCisgICAgICAgICAgICAgICd2ZXJzaW9uJzog
J3ZlcnNpb246MkAyLjMwLmNyMScsCiAgICAgICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnY29u
ZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywK
QEAgLTI3OTUsNyArMjgzNyw3IEBAIGRlcHMgPSB7CiAgICAgICAncGFja2FnZXMnOiBbCiAgICAg
ICAgICAgewogICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9h
bmRyb2lkX2RlcHMvbGlicy9jb21fZ29vZ2xlX2RhZ2dlcl9kYWdnZXJfc3BpJywKLSAgICAgICAg
ICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDIuMzAuY3IwJywKKyAgICAgICAgICAgICAgJ3Zl
cnNpb24nOiAndmVyc2lvbjoyQDIuMzAuY3IxJywKICAgICAgICAgICB9LAogICAgICAgXSwKICAg
ICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hy
b21pdW0nLApAQCAtMjgwNiw3ICsyODQ4LDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNrYWdlcyc6
IFsKICAgICAgICAgICB7CiAgICAgICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3RoaXJk
X3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL2NvbV9nb29nbGVfZXJyb3Jwcm9uZV9lcnJvcl9wcm9u
ZV9hbm5vdGF0aW9uJywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDIuMTAu
MC5jcjAnLAorICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMi4xMS4wLmNyMScs
CiAgICAgICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2Fu
ZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTI4MTcsNyArMjg1OSw3IEBA
IGRlcHMgPSB7CiAgICAgICAncGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAgICAgICAg
ICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9jb21f
Z29vZ2xlX2Vycm9ycHJvbmVfZXJyb3JfcHJvbmVfYW5ub3RhdGlvbnMnLAotICAgICAgICAgICAg
ICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMi4xMC4wLmNyMCcsCisgICAgICAgICAgICAgICd2ZXJz
aW9uJzogJ3ZlcnNpb246MkAyLjExLjAuY3IxJywKICAgICAgICAgICB9LAogICAgICAgXSwKICAg
ICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hy
b21pdW0nLApAQCAtMjgyOCw3ICsyODcwLDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNrYWdlcyc6
IFsKICAgICAgICAgICB7CiAgICAgICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3RoaXJk
X3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL2NvbV9nb29nbGVfZXJyb3Jwcm9uZV9lcnJvcl9wcm9u
ZV9jaGVja19hcGknLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMi4xMC4w
LmNyMCcsCisgICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAyLjExLjAuY3IxJywK
ICAgICAgICAgICB9LAogICAgICAgXSwKICAgICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5k
cm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLApAQCAtMjgzOSw3ICsyODgxLDcgQEAg
ZGVwcyA9IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAgICB7CiAgICAgICAgICAgICAg
ICdwYWNrYWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL2NvbV9n
b29nbGVfZXJyb3Jwcm9uZV9lcnJvcl9wcm9uZV9jb3JlJywKLSAgICAgICAgICAgICAgJ3ZlcnNp
b24nOiAndmVyc2lvbjoyQDIuMTAuMC5jcjAnLAorICAgICAgICAgICAgICAndmVyc2lvbic6ICd2
ZXJzaW9uOjJAMi4xMS4wLmNyMScsCiAgICAgICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnY29u
ZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywK
QEAgLTI4NTAsNyArMjg5Miw3IEBAIGRlcHMgPSB7CiAgICAgICAncGFja2FnZXMnOiBbCiAgICAg
ICAgICAgewogICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9h
bmRyb2lkX2RlcHMvbGlicy9jb21fZ29vZ2xlX2Vycm9ycHJvbmVfZXJyb3JfcHJvbmVfdHlwZV9h
bm5vdGF0aW9ucycsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAyLjEwLjAu
Y3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDIuMTEuMC5jcjEnLAog
ICAgICAgICAgIH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRy
b2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0yODYxLDcgKzI5MDMsNyBAQCBk
ZXBzID0gewogICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAgICAgICAg
J3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvY29tX2dv
b2dsZV9lcnJvcnByb25lX2phdmFjJywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lv
bjoyQDkrMTgxLXI0MTczLTEuY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lv
bjoyQDkrMTgxLXI0MTczLTEuY3IxJywKICAgICAgICAgICB9LAogICAgICAgXSwKICAgICAgICdj
b25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0n
LApAQCAtMjg3Miw3ICsyOTE0LDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAg
ICAgICAgICB7CiAgICAgICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5
L2FuZHJvaWRfZGVwcy9saWJzL2NvbV9nb29nbGVfZXJyb3Jwcm9uZV9qYXZhY19zaGFkZWQnLAot
ICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAOS1kZXYtcjQwMjMtMy5jcjAnLAor
ICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAOS1kZXYtcjQwMjMtMy5jcjEnLAog
ICAgICAgICAgIH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRy
b2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0yODgzLDcgKzI5MjUsNyBAQCBk
ZXBzID0gewogICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAgICAgICAg
J3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvY29tX2dv
b2dsZV9maXJlYmFzZV9maXJlYmFzZV9hbm5vdGF0aW9ucycsCi0gICAgICAgICAgICAgICd2ZXJz
aW9uJzogJ3ZlcnNpb246MkAxNi4wLjAuY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAn
dmVyc2lvbjoyQDE2LjAuMC5jcjEnLAogICAgICAgICAgIH0sCiAgICAgICBdLAogICAgICAgJ2Nv
bmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScs
CkBAIC0yODk0LDcgKzI5MzYsNyBAQCBkZXBzID0gewogICAgICAgJ3BhY2thZ2VzJzogWwogICAg
ICAgICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkv
YW5kcm9pZF9kZXBzL2xpYnMvY29tX2dvb2dsZV9maXJlYmFzZV9maXJlYmFzZV9jb21tb24nLAot
ICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMTkuNS4wLmNyMCcsCisgICAgICAg
ICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxOS41LjAuY3IxJywKICAgICAgICAgICB9LAog
ICAgICAgXSwKICAgICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1
aWxkX3dpdGhfY2hyb21pdW0nLApAQCAtMjkwNSw3ICsyOTQ3LDcgQEAgZGVwcyA9IHsKICAgICAg
ICdwYWNrYWdlcyc6IFsKICAgICAgICAgICB7CiAgICAgICAgICAgICAgICdwYWNrYWdlJzogJ2No
cm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL2NvbV9nb29nbGVfZmlyZWJhc2Vf
ZmlyZWJhc2VfY29tcG9uZW50cycsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246
MkAxNi4xLjAuY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDE2LjEu
MC5jcjEnLAogICAgICAgICAgIH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVj
a291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0yOTE2LDcgKzI5
NTgsNyBAQCBkZXBzID0gewogICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAg
ICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xp
YnMvY29tX2dvb2dsZV9maXJlYmFzZV9maXJlYmFzZV9lbmNvZGVycycsCi0gICAgICAgICAgICAg
ICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxNi4xLjAuY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNp
b24nOiAndmVyc2lvbjoyQDE2LjEuMC5jcjEnLAogICAgICAgICAgIH0sCiAgICAgICBdLAogICAg
ICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJv
bWl1bScsCkBAIC0yOTI3LDcgKzI5NjksNyBAQCBkZXBzID0gewogICAgICAgJ3BhY2thZ2VzJzog
WwogICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRf
cGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvY29tX2dvb2dsZV9maXJlYmFzZV9maXJlYmFzZV9lbmNv
ZGVyc19qc29uJywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDE3LjEuMC5j
cjAnLAorICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMTcuMS4wLmNyMScsCiAg
ICAgICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJv
aWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTI5MzgsNyArMjk4MCw3IEBAIGRl
cHMgPSB7CiAgICAgICAncGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAgICAgICAgICAn
cGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9jb21fZ29v
Z2xlX2ZpcmViYXNlX2ZpcmViYXNlX2lpZCcsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3Zl
cnNpb246MkAyMS4wLjEuY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoy
QDIxLjAuMS5jcjEnLAogICAgICAgICAgIH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6
ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0yOTQ5
LDcgKzI5OTEsNyBAQCBkZXBzID0gewogICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsK
ICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9k
ZXBzL2xpYnMvY29tX2dvb2dsZV9maXJlYmFzZV9maXJlYmFzZV9paWRfaW50ZXJvcCcsCi0gICAg
ICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxNy4wLjAuY3IwJywKKyAgICAgICAgICAg
ICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDE3LjAuMC5jcjEnLAogICAgICAgICAgIH0sCiAgICAg
ICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRf
d2l0aF9jaHJvbWl1bScsCkBAIC0yOTYwLDcgKzMwMDIsNyBAQCBkZXBzID0gewogICAgICAgJ3Bh
Y2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21p
dW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvY29tX2dvb2dsZV9maXJlYmFzZV9maXJl
YmFzZV9pbnN0YWxsYXRpb25zJywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoy
QDE2LjMuNS5jcjAnLAorICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMTYuMy41
LmNyMScsCiAgICAgICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNr
b3V0X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTI5NzEsNyArMzAx
Myw3IEBAIGRlcHMgPSB7CiAgICAgICAncGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAg
ICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGli
cy9jb21fZ29vZ2xlX2ZpcmViYXNlX2ZpcmViYXNlX2luc3RhbGxhdGlvbnNfaW50ZXJvcCcsCi0g
ICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxNi4wLjEuY3IwJywKKyAgICAgICAg
ICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDE2LjAuMS5jcjEnLAogICAgICAgICAgIH0sCiAg
ICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVp
bGRfd2l0aF9jaHJvbWl1bScsCkBAIC0yOTgyLDcgKzMwMjQsNyBAQCBkZXBzID0gewogICAgICAg
J3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hy
b21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvY29tX2dvb2dsZV9maXJlYmFzZV9m
aXJlYmFzZV9tZWFzdXJlbWVudF9jb25uZWN0b3InLAotICAgICAgICAgICAgICAndmVyc2lvbic6
ICd2ZXJzaW9uOjJAMTguMC4wLmNyMCcsCisgICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNp
b246MkAxOC4wLjAuY3IxJywKICAgICAgICAgICB9LAogICAgICAgXSwKICAgICAgICdjb25kaXRp
b24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLApAQCAt
Mjk5Myw3ICszMDM1LDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAg
ICB7CiAgICAgICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJv
aWRfZGVwcy9saWJzL2NvbV9nb29nbGVfZmlyZWJhc2VfZmlyZWJhc2VfbWVzc2FnaW5nJywKLSAg
ICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDIxLjAuMS5jcjAnLAorICAgICAgICAg
ICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMjEuMC4xLmNyMScsCiAgICAgICAgICAgfSwKICAg
ICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWls
ZF93aXRoX2Nocm9taXVtJywKQEAgLTMwMDQsNyArMzA0Niw3IEBAIGRlcHMgPSB7CiAgICAgICAn
cGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJv
bWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9jb21fZ29vZ2xlX2ZsYXRidWZmZXJz
X2ZsYXRidWZmZXJzX2phdmEnLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJA
Mi4wLjMuY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDIuMC4zLmNy
MScsCiAgICAgICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0
X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTMwMTUsNyArMzA1Nyw3
IEBAIGRlcHMgPSB7CiAgICAgICAncGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAgICAg
ICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9j
b21fZ29vZ2xlX2dvb2dsZWphdmFmb3JtYXRfZ29vZ2xlX2phdmFfZm9ybWF0JywKLSAgICAgICAg
ICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDEuNS5jcjAnLAorICAgICAgICAgICAgICAndmVy
c2lvbic6ICd2ZXJzaW9uOjJAMS41LmNyMScsCiAgICAgICAgICAgfSwKICAgICAgIF0sCiAgICAg
ICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9t
aXVtJywKQEAgLTMwMjYsNyArMzA2OCw3IEBAIGRlcHMgPSB7CiAgICAgICAncGFja2FnZXMnOiBb
CiAgICAgICAgICAgewogICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9w
YXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9jb21fZ29vZ2xlX2d1YXZhX2ZhaWx1cmVhY2Nlc3MnLAot
ICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMS4wLjEuY3IwJywKKyAgICAgICAg
ICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDEuMC4xLmNyMScsCiAgICAgICAgICAgfSwKICAg
ICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWls
ZF93aXRoX2Nocm9taXVtJywKQEAgLTMwMzcsNyArMzA3OSw3IEBAIGRlcHMgPSB7CiAgICAgICAn
cGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJv
bWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9jb21fZ29vZ2xlX2d1YXZhX2d1YXZh
JywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDMxLjAtanJlLmNyMCcsCisg
ICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAzMS4wLjEtanJlLmNyMScsCiAgICAg
ICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQg
YW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTMwNDgsNyArMzA5MCw3IEBAIGRlcHMg
PSB7CiAgICAgICAncGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAgICAgICAgICAncGFj
a2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9jb21fZ29vZ2xl
X2d1YXZhX2d1YXZhX2FuZHJvaWQnLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9u
OjJAMzEuMC1hbmRyb2lkLmNyMCcsCisgICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246
MkAzMS4wLWFuZHJvaWQuY3IxJywKICAgICAgICAgICB9LAogICAgICAgXSwKICAgICAgICdjb25k
aXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLApA
QCAtMzA1OSw3ICszMTAxLDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAg
ICAgICB7CiAgICAgICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2Fu
ZHJvaWRfZGVwcy9saWJzL2NvbV9nb29nbGVfZ3VhdmFfbGlzdGVuYWJsZWZ1dHVyZScsCi0gICAg
ICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxLjAuY3IwJywKKyAgICAgICAgICAgICAg
J3ZlcnNpb24nOiAndmVyc2lvbjoyQDEuMC5jcjEnLAogICAgICAgICAgIH0sCiAgICAgICBdLAog
ICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9j
aHJvbWl1bScsCkBAIC0zMDcwLDcgKzMxMTIsNyBAQCBkZXBzID0gewogICAgICAgJ3BhY2thZ2Vz
JzogWwogICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhp
cmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvY29tX2dvb2dsZV9qMm9iamNfajJvYmpjX2Fubm90
YXRpb25zJywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDEuMy5jcjAnLAor
ICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMS4zLmNyMScsCiAgICAgICAgICAg
fSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5v
dCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTMwODEsNyArMzEyMyw3IEBAIGRlcHMgPSB7CiAg
ICAgICAncGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAgICAgICAgICAncGFja2FnZSc6
ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9jb21fZ29vZ2xlX3Byb3Rv
YnVmX3Byb3RvYnVmX2phdmEnLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJA
My40LjAuY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDMuMTkuMi5j
cjEnLAogICAgICAgICAgIH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291
dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0zMDkyLDcgKzMxMzQs
NyBAQCBkZXBzID0gewogICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAg
ICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMv
Y29tX2dvb2dsZV9wcm90b2J1Zl9wcm90b2J1Zl9qYXZhbGl0ZScsCi0gICAgICAgICAgICAgICd2
ZXJzaW9uJzogJ3ZlcnNpb246MkAzLjE5LjMuY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24n
OiAndmVyc2lvbjoyQDMuMTkuMy5jcjEnLAogICAgICAgICAgIH0sCiAgICAgICBdLAogICAgICAg
J2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1
bScsCkBAIC0zMTAzLDcgKzMxNDUsNyBAQCBkZXBzID0gewogICAgICAgJ3BhY2thZ2VzJzogWwog
ICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFy
dHkvYW5kcm9pZF9kZXBzL2xpYnMvY29tX2dvb2dsZWNvZGVfamF2YV9kaWZmX3V0aWxzX2RpZmZ1
dGlscycsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxLjMuMC5jcjAnLAor
ICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMS4zLjAuY3IxJywKICAgICAgICAg
ICB9LAogICAgICAgXSwKICAgICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQg
bm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLApAQCAtMzExNCw3ICszMTU2LDcgQEAgZGVwcyA9IHsK
ICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAgICB7CiAgICAgICAgICAgICAgICdwYWNrYWdl
JzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL2NvbV9zcXVhcmV1cF9q
YXZhcG9ldCcsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxLjEzLjAuY3Iw
JywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDEuMTMuMC5jcjEnLAogICAg
ICAgICAgIH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lk
IGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0zMTI1LDcgKzMxNjcsNyBAQCBkZXBz
ID0gewogICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3Bh
Y2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvY29tX3NxdWFy
ZXVwX2phdmF3cml0ZXInLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMi4x
LjEuY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDIuMS4xLmNyMScs
CiAgICAgICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2Fu
ZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTMxMzYsNyArMzE3OCw3IEBA
IGRlcHMgPSB7CiAgICAgICAncGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAgICAgICAg
ICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9pb19n
aXRodWJfamF2YV9kaWZmX3V0aWxzX2phdmFfZGlmZl91dGlscycsCi0gICAgICAgICAgICAgICd2
ZXJzaW9uJzogJ3ZlcnNpb246MkA0LjAuY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAn
dmVyc2lvbjoyQDQuMC5jcjEnLAogICAgICAgICAgIH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRp
dGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBA
IC0zMTQ3LDcgKzMxODksNyBAQCBkZXBzID0gewogICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAg
ICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5k
cm9pZF9kZXBzL2xpYnMvamF2YXhfYW5ub3RhdGlvbl9qYXZheF9hbm5vdGF0aW9uX2FwaScsCi0g
ICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxLjMuMi5jcjAnLAorICAgICAgICAg
ICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMS4zLjIuY3IxJywKICAgICAgICAgICB9LAogICAg
ICAgXSwKICAgICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxk
X3dpdGhfY2hyb21pdW0nLApAQCAtMzE1OCw3ICszMjAwLDcgQEAgZGVwcyA9IHsKICAgICAgICdw
YWNrYWdlcyc6IFsKICAgICAgICAgICB7CiAgICAgICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9t
aXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL2phdmF4X2Fubm90YXRpb25fanNyMjUw
X2FwaScsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxLjAuY3IwJywKKyAg
ICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDEuMC5jcjEnLAogICAgICAgICAgIH0s
CiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3Qg
YnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0zMTY5LDI5ICszMjExLDcgQEAgZGVwcyA9IHsKICAg
ICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAgICB7CiAgICAgICAgICAgICAgICdwYWNrYWdlJzog
J2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL2phdmF4X2luamVjdF9qYXZh
eF9pbmplY3QnLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMS5jcjAnLAot
ICAgICAgICAgIH0sCi0gICAgICBdLAotICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRy
b2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCi0gICAgICAnZGVwX3R5cGUnOiAnY2lw
ZCcsCi0gIH0sCi0KLSAgJ3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL25la29odG1sX25l
a29odG1sJzogewotICAgICAgJ3BhY2thZ2VzJzogWwotICAgICAgICAgIHsKLSAgICAgICAgICAg
ICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvbmVr
b2h0bWxfbmVrb2h0bWwnLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMS45
LjYuMi5jcjAnLAotICAgICAgICAgIH0sCi0gICAgICBdLAotICAgICAgJ2NvbmRpdGlvbic6ICdj
aGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCi0gICAgICAnZGVw
X3R5cGUnOiAnY2lwZCcsCi0gIH0sCi0KLSAgJ3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJz
L25la29odG1sX3hlcmNlc21pbmltYWwnOiB7Ci0gICAgICAncGFja2FnZXMnOiBbCi0gICAgICAg
ICAgewotICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRy
b2lkX2RlcHMvbGlicy9uZWtvaHRtbF94ZXJjZXNtaW5pbWFsJywKLSAgICAgICAgICAgICAgJ3Zl
cnNpb24nOiAndmVyc2lvbjoyQDEuOS42LjIuY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24n
OiAndmVyc2lvbjoyQDEuY3IxJywKICAgICAgICAgICB9LAogICAgICAgXSwKICAgICAgICdjb25k
aXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLApA
QCAtMzIwMiw3ICszMjIyLDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAg
ICAgICB7CiAgICAgICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2Fu
ZHJvaWRfZGVwcy9saWJzL25ldF9sdGd0X2dyYWRsZV9pbmNhcF9pbmNhcCcsCi0gICAgICAgICAg
ICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAwLjIuY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNp
b24nOiAndmVyc2lvbjoyQDAuMi5jcjEnLAogICAgICAgICAgIH0sCiAgICAgICBdLAogICAgICAg
J2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1
bScsCkBAIC0zMjEzLDE4MyArMzIzMyw3IEBAIGRlcHMgPSB7CiAgICAgICAncGFja2FnZXMnOiBb
CiAgICAgICAgICAgewogICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9w
YXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9uZXRfc2Zfa3htbF9reG1sMicsCi0gICAgICAgICAgICAg
ICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAyLjMuMC5jcjAnLAotICAgICAgICAgIH0sCi0gICAgICBd
LAotICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0
aF9jaHJvbWl1bScsCi0gICAgICAnZGVwX3R5cGUnOiAnY2lwZCcsCi0gIH0sCi0KLSAgJ3RoaXJk
X3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL29yZ19hcGFjaGVfYW50X2FudCc6IHsKLSAgICAgICdw
YWNrYWdlcyc6IFsKLSAgICAgICAgICB7Ci0gICAgICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9t
aXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL29yZ19hcGFjaGVfYW50X2FudCcsCi0g
ICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxLjguMC5jcjAnLAotICAgICAgICAg
IH0sCi0gICAgICBdLAotICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBu
b3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCi0gICAgICAnZGVwX3R5cGUnOiAnY2lwZCcsCi0gIH0s
Ci0KLSAgJ3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL29yZ19hcGFjaGVfYW50X2FudF9s
YXVuY2hlcic6IHsKLSAgICAgICdwYWNrYWdlcyc6IFsKLSAgICAgICAgICB7Ci0gICAgICAgICAg
ICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL29y
Z19hcGFjaGVfYW50X2FudF9sYXVuY2hlcicsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3Zl
cnNpb246MkAxLjguMC5jcjAnLAotICAgICAgICAgIH0sCi0gICAgICBdLAotICAgICAgJ2NvbmRp
dGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCi0g
ICAgICAnZGVwX3R5cGUnOiAnY2lwZCcsCi0gIH0sCi0KLSAgJ3RoaXJkX3BhcnR5L2FuZHJvaWRf
ZGVwcy9saWJzL29yZ19hcGFjaGVfbWF2ZW5fbWF2ZW5fYW50X3Rhc2tzJzogewotICAgICAgJ3Bh
Y2thZ2VzJzogWwotICAgICAgICAgIHsKLSAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21p
dW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvb3JnX2FwYWNoZV9tYXZlbl9tYXZlbl9h
bnRfdGFza3MnLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMi4xLjMuY3Iw
JywKLSAgICAgICAgICB9LAotICAgICAgXSwKLSAgICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRf
YW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLAotICAgICAgJ2RlcF90eXBlJzog
J2NpcGQnLAotICB9LAotCi0gICd0aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9vcmdfYXBh
Y2hlX21hdmVuX21hdmVuX2FydGlmYWN0JzogewotICAgICAgJ3BhY2thZ2VzJzogWwotICAgICAg
ICAgIHsKLSAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5k
cm9pZF9kZXBzL2xpYnMvb3JnX2FwYWNoZV9tYXZlbl9tYXZlbl9hcnRpZmFjdCcsCi0gICAgICAg
ICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAyLjIuMS5jcjAnLAotICAgICAgICAgIH0sCi0g
ICAgICBdLAotICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVp
bGRfd2l0aF9jaHJvbWl1bScsCi0gICAgICAnZGVwX3R5cGUnOiAnY2lwZCcsCi0gIH0sCi0KLSAg
J3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL29yZ19hcGFjaGVfbWF2ZW5fbWF2ZW5fYXJ0
aWZhY3RfbWFuYWdlcic6IHsKLSAgICAgICdwYWNrYWdlcyc6IFsKLSAgICAgICAgICB7Ci0gICAg
ICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9s
aWJzL29yZ19hcGFjaGVfbWF2ZW5fbWF2ZW5fYXJ0aWZhY3RfbWFuYWdlcicsCi0gICAgICAgICAg
ICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAyLjIuMS5jcjAnLAotICAgICAgICAgIH0sCi0gICAg
ICBdLAotICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRf
d2l0aF9jaHJvbWl1bScsCi0gICAgICAnZGVwX3R5cGUnOiAnY2lwZCcsCi0gIH0sCi0KLSAgJ3Ro
aXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL29yZ19hcGFjaGVfbWF2ZW5fbWF2ZW5fZXJyb3Jf
ZGlhZ25vc3RpY3MnOiB7Ci0gICAgICAncGFja2FnZXMnOiBbCi0gICAgICAgICAgewotICAgICAg
ICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGli
cy9vcmdfYXBhY2hlX21hdmVuX21hdmVuX2Vycm9yX2RpYWdub3N0aWNzJywKLSAgICAgICAgICAg
ICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDIuMi4xLmNyMCcsCi0gICAgICAgICAgfSwKLSAgICAg
IF0sCi0gICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93
aXRoX2Nocm9taXVtJywKLSAgICAgICdkZXBfdHlwZSc6ICdjaXBkJywKLSAgfSwKLQotICAndGhp
cmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvb3JnX2FwYWNoZV9tYXZlbl9tYXZlbl9tb2RlbCc6
IHsKLSAgICAgICdwYWNrYWdlcyc6IFsKLSAgICAgICAgICB7Ci0gICAgICAgICAgICAgICdwYWNr
YWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL29yZ19hcGFjaGVf
bWF2ZW5fbWF2ZW5fbW9kZWwnLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJA
Mi4yLjEuY3IwJywKLSAgICAgICAgICB9LAotICAgICAgXSwKLSAgICAgICdjb25kaXRpb24nOiAn
Y2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLAotICAgICAgJ2Rl
cF90eXBlJzogJ2NpcGQnLAotICB9LAotCi0gICd0aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGli
cy9vcmdfYXBhY2hlX21hdmVuX21hdmVuX3BsdWdpbl9yZWdpc3RyeSc6IHsKLSAgICAgICdwYWNr
YWdlcyc6IFsKLSAgICAgICAgICB7Ci0gICAgICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVt
L3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL29yZ19hcGFjaGVfbWF2ZW5fbWF2ZW5fcGx1
Z2luX3JlZ2lzdHJ5JywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDIuMi4x
LmNyMCcsCi0gICAgICAgICAgfSwKLSAgICAgIF0sCi0gICAgICAnY29uZGl0aW9uJzogJ2NoZWNr
b3V0X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKLSAgICAgICdkZXBfdHlw
ZSc6ICdjaXBkJywKLSAgfSwKLQotICAndGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvb3Jn
X2FwYWNoZV9tYXZlbl9tYXZlbl9wcm9maWxlJzogewotICAgICAgJ3BhY2thZ2VzJzogWwotICAg
ICAgICAgIHsKLSAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkv
YW5kcm9pZF9kZXBzL2xpYnMvb3JnX2FwYWNoZV9tYXZlbl9tYXZlbl9wcm9maWxlJywKLSAgICAg
ICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDIuMi4xLmNyMCcsCi0gICAgICAgICAgfSwK
LSAgICAgIF0sCi0gICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBi
dWlsZF93aXRoX2Nocm9taXVtJywKLSAgICAgICdkZXBfdHlwZSc6ICdjaXBkJywKLSAgfSwKLQot
ICAndGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvb3JnX2FwYWNoZV9tYXZlbl9tYXZlbl9w
cm9qZWN0JzogewotICAgICAgJ3BhY2thZ2VzJzogWwotICAgICAgICAgIHsKLSAgICAgICAgICAg
ICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvb3Jn
X2FwYWNoZV9tYXZlbl9tYXZlbl9wcm9qZWN0JywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAn
dmVyc2lvbjoyQDIuMi4xLmNyMCcsCi0gICAgICAgICAgfSwKLSAgICAgIF0sCi0gICAgICAnY29u
ZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywK
LSAgICAgICdkZXBfdHlwZSc6ICdjaXBkJywKLSAgfSwKLQotICAndGhpcmRfcGFydHkvYW5kcm9p
ZF9kZXBzL2xpYnMvb3JnX2FwYWNoZV9tYXZlbl9tYXZlbl9yZXBvc2l0b3J5X21ldGFkYXRhJzog
ewotICAgICAgJ3BhY2thZ2VzJzogWwotICAgICAgICAgIHsKLSAgICAgICAgICAgICAgJ3BhY2th
Z2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvb3JnX2FwYWNoZV9t
YXZlbl9tYXZlbl9yZXBvc2l0b3J5X21ldGFkYXRhJywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24n
OiAndmVyc2lvbjoyQDIuMi4xLmNyMCcsCi0gICAgICAgICAgfSwKLSAgICAgIF0sCi0gICAgICAn
Y29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVt
JywKLSAgICAgICdkZXBfdHlwZSc6ICdjaXBkJywKLSAgfSwKLQotICAndGhpcmRfcGFydHkvYW5k
cm9pZF9kZXBzL2xpYnMvb3JnX2FwYWNoZV9tYXZlbl9tYXZlbl9zZXR0aW5ncyc6IHsKLSAgICAg
ICdwYWNrYWdlcyc6IFsKLSAgICAgICAgICB7Ci0gICAgICAgICAgICAgICdwYWNrYWdlJzogJ2No
cm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL29yZ19hcGFjaGVfbWF2ZW5fbWF2
ZW5fc2V0dGluZ3MnLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMi4yLjEu
Y3IwJywKLSAgICAgICAgICB9LAotICAgICAgXSwKLSAgICAgICdjb25kaXRpb24nOiAnY2hlY2tv
dXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLAotICAgICAgJ2RlcF90eXBl
JzogJ2NpcGQnLAotICB9LAotCi0gICd0aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9vcmdf
YXBhY2hlX21hdmVuX3dhZ29uX3dhZ29uX2ZpbGUnOiB7Ci0gICAgICAncGFja2FnZXMnOiBbCi0g
ICAgICAgICAgewotICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0
eS9hbmRyb2lkX2RlcHMvbGlicy9vcmdfYXBhY2hlX21hdmVuX3dhZ29uX3dhZ29uX2ZpbGUnLAot
ICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMS4wLWJldGEtNi5jcjAnLAotICAg
ICAgICAgIH0sCi0gICAgICBdLAotICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lk
IGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCi0gICAgICAnZGVwX3R5cGUnOiAnY2lwZCcs
Ci0gIH0sCi0KLSAgJ3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL29yZ19hcGFjaGVfbWF2
ZW5fd2Fnb25fd2Fnb25faHR0cF9saWdodHdlaWdodCc6IHsKLSAgICAgICdwYWNrYWdlcyc6IFsK
LSAgICAgICAgICB7Ci0gICAgICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3RoaXJkX3Bh
cnR5L2FuZHJvaWRfZGVwcy9saWJzL29yZ19hcGFjaGVfbWF2ZW5fd2Fnb25fd2Fnb25faHR0cF9s
aWdodHdlaWdodCcsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxLjAtYmV0
YS02LmNyMCcsCi0gICAgICAgICAgfSwKLSAgICAgIF0sCi0gICAgICAnY29uZGl0aW9uJzogJ2No
ZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKLSAgICAgICdkZXBf
dHlwZSc6ICdjaXBkJywKLSAgfSwKLQotICAndGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMv
b3JnX2FwYWNoZV9tYXZlbl93YWdvbl93YWdvbl9odHRwX3NoYXJlZCc6IHsKLSAgICAgICdwYWNr
YWdlcyc6IFsKLSAgICAgICAgICB7Ci0gICAgICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVt
L3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL29yZ19hcGFjaGVfbWF2ZW5fd2Fnb25fd2Fn
b25faHR0cF9zaGFyZWQnLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMS4w
LWJldGEtNi5jcjAnLAotICAgICAgICAgIH0sCi0gICAgICBdLAotICAgICAgJ2NvbmRpdGlvbic6
ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCi0gICAgICAn
ZGVwX3R5cGUnOiAnY2lwZCcsCi0gIH0sCi0KLSAgJ3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9s
aWJzL29yZ19hcGFjaGVfbWF2ZW5fd2Fnb25fd2Fnb25fcHJvdmlkZXJfYXBpJzogewotICAgICAg
J3BhY2thZ2VzJzogWwotICAgICAgICAgIHsKLSAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hy
b21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvb3JnX2FwYWNoZV9tYXZlbl93YWdv
bl93YWdvbl9wcm92aWRlcl9hcGknLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9u
OjJAMS4wLWJldGEtNi5jcjAnLAorICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJA
Mi4zLjAuY3IxJywKICAgICAgICAgICB9LAogICAgICAgXSwKICAgICAgICdjb25kaXRpb24nOiAn
Y2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLApAQCAtMzQwMCw3
ICszMjQ0LDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAgICB7CiAg
ICAgICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVw
cy9saWJzL29yZ19jY2lsX2Nvd2FuX3RhZ3NvdXBfdGFnc291cCcsCi0gICAgICAgICAgICAgICd2
ZXJzaW9uJzogJ3ZlcnNpb246MkAxLjIuMS5jcjAnLAorICAgICAgICAgICAgICAndmVyc2lvbic6
ICd2ZXJzaW9uOjJAMS4yLjEuY3IxJywKICAgICAgICAgICB9LAogICAgICAgXSwKICAgICAgICdj
b25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0n
LApAQCAtMzQxMSw3ICszMjU1LDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAg
ICAgICAgICB7CiAgICAgICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5
L2FuZHJvaWRfZGVwcy9saWJzL29yZ19jaGVja2VyZnJhbWV3b3JrX2NoZWNrZXJfY29tcGF0X3F1
YWwnLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMi41LjUuY3IwJywKKyAg
ICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDIuNS41LmNyMScsCiAgICAgICAgICAg
fSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5v
dCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTM0MjIsNyArMzI2Niw3IEBAIGRlcHMgPSB7CiAg
ICAgICAncGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAgICAgICAgICAncGFja2FnZSc6
ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9vcmdfY2hlY2tlcmZyYW1l
d29ya19jaGVja2VyX3F1YWwnLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJA
My4xMi4wLmNyMCcsCisgICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAzLjEyLjAu
Y3IxJywKICAgICAgICAgICB9LAogICAgICAgXSwKICAgICAgICdjb25kaXRpb24nOiAnY2hlY2tv
dXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLApAQCAtMzQzMyw3ICszMjc3
LDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAgICB7CiAgICAgICAg
ICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJz
L29yZ19jaGVja2VyZnJhbWV3b3JrX2RhdGFmbG93X2Vycm9ycHJvbmUnLAotICAgICAgICAgICAg
ICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMy4xNS4wLmNyMCcsCisgICAgICAgICAgICAgICd2ZXJz
aW9uJzogJ3ZlcnNpb246MkAzLjE1LjAuY3IxJywKICAgICAgICAgICB9LAogICAgICAgXSwKICAg
ICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hy
b21pdW0nLApAQCAtMzQ0NCw0MCArMzI4OCw3IEBAIGRlcHMgPSB7CiAgICAgICAncGFja2FnZXMn
OiBbCiAgICAgICAgICAgewogICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGly
ZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9vcmdfY29kZWhhdXNfbW9qb19hbmltYWxfc25pZmZl
cl9hbm5vdGF0aW9ucycsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxLjE3
LmNyMCcsCi0gICAgICAgICAgfSwKLSAgICAgIF0sCi0gICAgICAnY29uZGl0aW9uJzogJ2NoZWNr
b3V0X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKLSAgICAgICdkZXBfdHlw
ZSc6ICdjaXBkJywKLSAgfSwKLQotICAndGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvb3Jn
X2NvZGVoYXVzX3BsZXh1c19wbGV4dXNfY29udGFpbmVyX2RlZmF1bHQnOiB7Ci0gICAgICAncGFj
a2FnZXMnOiBbCi0gICAgICAgICAgewotICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1
bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9vcmdfY29kZWhhdXNfcGxleHVzX3BsZXh1
c19jb250YWluZXJfZGVmYXVsdCcsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246
MkAxLjAtYWxwaGEtOS1zdGFibGUtMS5jcjAnLAotICAgICAgICAgIH0sCi0gICAgICBdLAotICAg
ICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJv
bWl1bScsCi0gICAgICAnZGVwX3R5cGUnOiAnY2lwZCcsCi0gIH0sCi0KLSAgJ3RoaXJkX3BhcnR5
L2FuZHJvaWRfZGVwcy9saWJzL29yZ19jb2RlaGF1c19wbGV4dXNfcGxleHVzX2ludGVycG9sYXRp
b24nOiB7Ci0gICAgICAncGFja2FnZXMnOiBbCi0gICAgICAgICAgewotICAgICAgICAgICAgICAn
cGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9vcmdfY29k
ZWhhdXNfcGxleHVzX3BsZXh1c19pbnRlcnBvbGF0aW9uJywKLSAgICAgICAgICAgICAgJ3ZlcnNp
b24nOiAndmVyc2lvbjoyQDEuMTEuY3IwJywKLSAgICAgICAgICB9LAotICAgICAgXSwKLSAgICAg
ICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21p
dW0nLAotICAgICAgJ2RlcF90eXBlJzogJ2NpcGQnLAotICB9LAotCi0gICd0aGlyZF9wYXJ0eS9h
bmRyb2lkX2RlcHMvbGlicy9vcmdfY29kZWhhdXNfcGxleHVzX3BsZXh1c191dGlscyc6IHsKLSAg
ICAgICdwYWNrYWdlcyc6IFsKLSAgICAgICAgICB7Ci0gICAgICAgICAgICAgICdwYWNrYWdlJzog
J2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL29yZ19jb2RlaGF1c19wbGV4
dXNfcGxleHVzX3V0aWxzJywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDEu
NS4xNS5jcjAnLAorICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMS4xNy5jcjEn
LAogICAgICAgICAgIH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9h
bmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0zNDg4LDcgKzMyOTksNyBA
QCBkZXBzID0gewogICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAgICAg
ICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvb3Jn
X2VjbGlwc2VfamdpdF9vcmdfZWNsaXBzZV9qZ2l0JywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24n
OiAndmVyc2lvbjoyQDQuNC4xLjIwMTYwNzE1MDQ1NS1yLmNyMCcsCisgICAgICAgICAgICAgICd2
ZXJzaW9uJzogJ3ZlcnNpb246MkA0LjQuMS4yMDE2MDcxNTA0NTUtci5jcjEnLAogICAgICAgICAg
IH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBu
b3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0zNDk5LDcgKzMzMTAsNyBAQCBkZXBzID0gewog
ICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2Un
OiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvb3JnX2pldGJyYWluc19h
bm5vdGF0aW9ucycsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxMy4wLmNy
MCcsCisgICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxMy4wLmNyMScsCiAgICAg
ICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQg
YW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTM1MTAsNyArMzMyMSw3IEBAIGRlcHMg
PSB7CiAgICAgICAncGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAgICAgICAgICAncGFj
a2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9vcmdfamV0YnJh
aW5zX2tvdGxpbl9rb3RsaW5fc3RkbGliJywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVy
c2lvbjoyQDEuNi4xMC5jcjAnLAorICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJA
MS42LjEwLmNyMScsCiAgICAgICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzog
J2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTM1MjEs
NyArMzMzMiw3IEBAIGRlcHMgPSB7CiAgICAgICAncGFja2FnZXMnOiBbCiAgICAgICAgICAgewog
ICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2Rl
cHMvbGlicy9vcmdfamV0YnJhaW5zX2tvdGxpbl9rb3RsaW5fc3RkbGliX2NvbW1vbicsCi0gICAg
ICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxLjYuMTAuY3IwJywKKyAgICAgICAgICAg
ICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDEuNi4xMC5jcjEnLAogICAgICAgICAgIH0sCiAgICAg
ICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRf
d2l0aF9jaHJvbWl1bScsCkBAIC0zNTMyLDcgKzMzNDMsNyBAQCBkZXBzID0gewogICAgICAgJ3Bh
Y2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21p
dW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvb3JnX2pldGJyYWluc19rb3RsaW5fa290
bGluX3N0ZGxpYl9qZGs3JywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDEu
NS4wLmNyMCcsCisgICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxLjUuMC5jcjEn
LAogICAgICAgICAgIH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9h
bmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0zNTQzLDcgKzMzNTQsNyBA
QCBkZXBzID0gewogICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAgICAg
ICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvb3Jn
X2pldGJyYWluc19rb3RsaW5fa290bGluX3N0ZGxpYl9qZGs4JywKLSAgICAgICAgICAgICAgJ3Zl
cnNpb24nOiAndmVyc2lvbjoyQDEuNS4wLmNyMCcsCisgICAgICAgICAgICAgICd2ZXJzaW9uJzog
J3ZlcnNpb246MkAxLjUuMC5jcjEnLAogICAgICAgICAgIH0sCiAgICAgICBdLAogICAgICAgJ2Nv
bmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScs
CkBAIC0zNTU0LDcgKzMzNjUsNyBAQCBkZXBzID0gewogICAgICAgJ3BhY2thZ2VzJzogWwogICAg
ICAgICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkv
YW5kcm9pZF9kZXBzL2xpYnMvb3JnX2pldGJyYWluc19rb3RsaW54X2tvdGxpbnhfY29yb3V0aW5l
c19hbmRyb2lkJywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDEuNS4wLmNy
MCcsCisgICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxLjUuMC5jcjEnLAogICAg
ICAgICAgIH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lk
IGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0zNTY1LDcgKzMzNzYsNyBAQCBkZXBz
ID0gewogICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3Bh
Y2thZ2UnOiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvb3JnX2pldGJy
YWluc19rb3RsaW54X2tvdGxpbnhfY29yb3V0aW5lc19jb3JlX2p2bScsCi0gICAgICAgICAgICAg
ICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAxLjUuMC5jcjAnLAorICAgICAgICAgICAgICAndmVyc2lv
bic6ICd2ZXJzaW9uOjJAMS41LjAuY3IxJywKICAgICAgICAgICB9LAogICAgICAgXSwKICAgICAg
ICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21p
dW0nLApAQCAtMzU3Niw3ICszMzg3LDcgQEAgZGVwcyA9IHsKICAgICAgICdwYWNrYWdlcyc6IFsK
ICAgICAgICAgICB7CiAgICAgICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3RoaXJkX3Bh
cnR5L2FuZHJvaWRfZGVwcy9saWJzL29yZ19qZXRicmFpbnNfa290bGlueF9rb3RsaW54X21ldGFk
YXRhX2p2bScsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAwLjEuMC5jcjAn
LAorICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMC4xLjAuY3IxJywKICAgICAg
ICAgICB9LAogICAgICAgXSwKICAgICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBh
bmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLApAQCAtMzU4Nyw3ICszMzk4LDcgQEAgZGVwcyA9
IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAgICB7CiAgICAgICAgICAgICAgICdwYWNr
YWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL29yZ19vdzJfYXNt
X2FzbScsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkA3LjAuY3IwJywKKyAg
ICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDkuMi5jcjEnLAogICAgICAgICAgIH0s
CiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3Qg
YnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0zNTk4LDcgKzM0MDksNyBAQCBkZXBzID0gewogICAg
ICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAn
Y2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvb3JnX293Ml9hc21fYXNtX2Fu
YWx5c2lzJywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDcuMC5jcjAnLAor
ICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAOS4yLmNyMScsCiAgICAgICAgICAg
fSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5v
dCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTM2MDksNyArMzQyMCw3IEBAIGRlcHMgPSB7CiAg
ICAgICAncGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAgICAgICAgICAncGFja2FnZSc6
ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9vcmdfb3cyX2FzbV9hc21f
Y29tbW9ucycsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkA3LjAuY3IwJywK
KyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDkuMi5jcjEnLAogICAgICAgICAg
IH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBu
b3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0zNjIwLDcgKzM0MzEsNyBAQCBkZXBzID0gewog
ICAgICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2Un
OiAnY2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvb3JnX293Ml9hc21fYXNt
X3RyZWUnLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJANy4wLmNyMCcsCisg
ICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkA5LjIuY3IxJywKICAgICAgICAgICB9
LAogICAgICAgXSwKICAgICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90
IGJ1aWxkX3dpdGhfY2hyb21pdW0nLApAQCAtMzYzMSw3ICszNDQyLDcgQEAgZGVwcyA9IHsKICAg
ICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAgICB7CiAgICAgICAgICAgICAgICdwYWNrYWdlJzog
J2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL29yZ19vdzJfYXNtX2FzbV91
dGlsJywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDcuMC5jcjAnLAorICAg
ICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAOS4yLmNyMScsCiAgICAgICAgICAgfSwK
ICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBi
dWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTM2NDIsNyArMzQ1Myw3IEBAIGRlcHMgPSB7CiAgICAg
ICAncGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAgICAgICAgICAncGFja2FnZSc6ICdj
aHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9vcmdfcGNvbGxlY3Rpb25zX3Bj
b2xsZWN0aW9ucycsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkAyLjEuMi5j
cjAnLAorICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJAMy4xLjQuY3IxJywKICAg
ICAgICAgICB9LAogICAgICAgXSwKICAgICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9p
ZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLApAQCAtMzY1Myw3ICszNDY0LDcgQEAgZGVw
cyA9IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAgICB7CiAgICAgICAgICAgICAgICdw
YWNrYWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL29yZ19yb2Jv
bGVjdHJpY19hbm5vdGF0aW9ucycsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246
MkA0LjMuMS5jcjAnLAorICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJANC43LjMu
Y3IxJywKICAgICAgICAgICB9LAogICAgICAgXSwKICAgICAgICdjb25kaXRpb24nOiAnY2hlY2tv
dXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLApAQCAtMzY2NCw3ICszNDc1
LDE4IEBAIGRlcHMgPSB7CiAgICAgICAncGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAg
ICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGli
cy9vcmdfcm9ib2xlY3RyaWNfanVuaXQnLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJz
aW9uOjJANC4zLjEuY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDQu
Ny4zLmNyMScsCisgICAgICAgICAgfSwKKyAgICAgIF0sCisgICAgICAnY29uZGl0aW9uJzogJ2No
ZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKKyAgICAgICdkZXBf
dHlwZSc6ICdjaXBkJywKKyAgfSwKKworICAndGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMv
b3JnX3JvYm9sZWN0cmljX25hdGl2ZXJ1bnRpbWUnOiB7CisgICAgICAncGFja2FnZXMnOiBbCisg
ICAgICAgICAgeworICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0
eS9hbmRyb2lkX2RlcHMvbGlicy9vcmdfcm9ib2xlY3RyaWNfbmF0aXZlcnVudGltZScsCisgICAg
ICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkA0LjcuMy5jcjEnLAogICAgICAgICAgIH0s
CiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3Qg
YnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0zNjc1LDcgKzM0OTcsNyBAQCBkZXBzID0gewogICAg
ICAgJ3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAn
Y2hyb21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvb3JnX3JvYm9sZWN0cmljX3Bs
dWdpbmFwaScsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkA0LjMuMS5jcjAn
LAorICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJANC43LjMuY3IxJywKICAgICAg
ICAgICB9LAogICAgICAgXSwKICAgICAgICdjb25kaXRpb24nOiAnY2hlY2tvdXRfYW5kcm9pZCBh
bmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLApAQCAtMzY4Niw3ICszNTA4LDcgQEAgZGVwcyA9
IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAgICB7CiAgICAgICAgICAgICAgICdwYWNr
YWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL29yZ19yb2JvbGVj
dHJpY19wbHVnaW5zX21hdmVuX2RlcGVuZGVuY3lfcmVzb2x2ZXInLAotICAgICAgICAgICAgICAn
dmVyc2lvbic6ICd2ZXJzaW9uOjJANC4zLjEuY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24n
OiAndmVyc2lvbjoyQDQuNy4zLmNyMScsCiAgICAgICAgICAgfSwKICAgICAgIF0sCiAgICAgICAn
Y29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVt
JywKQEAgLTM2OTcsNyArMzUxOSw3IEBAIGRlcHMgPSB7CiAgICAgICAncGFja2FnZXMnOiBbCiAg
ICAgICAgICAgewogICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0
eS9hbmRyb2lkX2RlcHMvbGlicy9vcmdfcm9ib2xlY3RyaWNfcmVzb3VyY2VzJywKLSAgICAgICAg
ICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDQuMy4xLmNyMCcsCisgICAgICAgICAgICAgICd2
ZXJzaW9uJzogJ3ZlcnNpb246MkA0LjcuMy5jcjEnLAogICAgICAgICAgIH0sCiAgICAgICBdLAog
ICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9j
aHJvbWl1bScsCkBAIC0zNzA4LDcgKzM1MzAsNyBAQCBkZXBzID0gewogICAgICAgJ3BhY2thZ2Vz
JzogWwogICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hyb21pdW0vdGhp
cmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvb3JnX3JvYm9sZWN0cmljX3JvYm9sZWN0cmljJywK
LSAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDQuMy4xLmNyMCcsCisgICAgICAg
ICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkA0LjcuMy5jcjEnLAogICAgICAgICAgIH0sCiAg
ICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVp
bGRfd2l0aF9jaHJvbWl1bScsCkBAIC0zNzE5LDcgKzM1NDEsNyBAQCBkZXBzID0gewogICAgICAg
J3BhY2thZ2VzJzogWwogICAgICAgICAgIHsKICAgICAgICAgICAgICAgJ3BhY2thZ2UnOiAnY2hy
b21pdW0vdGhpcmRfcGFydHkvYW5kcm9pZF9kZXBzL2xpYnMvb3JnX3JvYm9sZWN0cmljX3NhbmRi
b3gnLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJANC4zLjEuY3IwJywKKyAg
ICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDQuNy4zLmNyMScsCiAgICAgICAgICAg
fSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5v
dCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTM3MzAsNyArMzU1Miw3IEBAIGRlcHMgPSB7CiAg
ICAgICAncGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAgICAgICAgICAncGFja2FnZSc6
ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9vcmdfcm9ib2xlY3RyaWNf
c2hhZG93YXBpJywKLSAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDQuMy4xLmNy
MCcsCisgICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3ZlcnNpb246MkA0LjcuMy5jcjEnLAogICAg
ICAgICAgIH0sCiAgICAgICBdLAogICAgICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lk
IGFuZCBub3QgYnVpbGRfd2l0aF9jaHJvbWl1bScsCkBAIC0zNzQxLDcgKzM1NjMsMTggQEAgZGVw
cyA9IHsKICAgICAgICdwYWNrYWdlcyc6IFsKICAgICAgICAgICB7CiAgICAgICAgICAgICAgICdw
YWNrYWdlJzogJ2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL29yZ19yb2Jv
bGVjdHJpY19zaGFkb3dzX2ZyYW1ld29yaycsCi0gICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3Zl
cnNpb246MkA0LjMuMS5jcjAnLAorICAgICAgICAgICAgICAndmVyc2lvbic6ICd2ZXJzaW9uOjJA
NC43LjMuY3IxJywKKyAgICAgICAgICB9LAorICAgICAgXSwKKyAgICAgICdjb25kaXRpb24nOiAn
Y2hlY2tvdXRfYW5kcm9pZCBhbmQgbm90IGJ1aWxkX3dpdGhfY2hyb21pdW0nLAorICAgICAgJ2Rl
cF90eXBlJzogJ2NpcGQnLAorICB9LAorCisgICd0aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGli
cy9vcmdfcm9ib2xlY3RyaWNfc2hhZG93c19tdWx0aWRleCc6IHsKKyAgICAgICdwYWNrYWdlcyc6
IFsKKyAgICAgICAgICB7CisgICAgICAgICAgICAgICdwYWNrYWdlJzogJ2Nocm9taXVtL3RoaXJk
X3BhcnR5L2FuZHJvaWRfZGVwcy9saWJzL29yZ19yb2JvbGVjdHJpY19zaGFkb3dzX211bHRpZGV4
JywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDQuNy4zLmNyMScsCiAgICAg
ICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzogJ2NoZWNrb3V0X2FuZHJvaWQg
YW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTM3NTIsNyArMzU4NSw3IEBAIGRlcHMg
PSB7CiAgICAgICAncGFja2FnZXMnOiBbCiAgICAgICAgICAgewogICAgICAgICAgICAgICAncGFj
a2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2RlcHMvbGlicy9vcmdfcm9ib2xl
Y3RyaWNfc2hhZG93c19wbGF5c2VydmljZXMnLAotICAgICAgICAgICAgICAndmVyc2lvbic6ICd2
ZXJzaW9uOjJANC4zLjEuY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoy
QDQuNy4zLmNyMScsCiAgICAgICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9uJzog
J2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTM3NjMs
NyArMzU5Niw3IEBAIGRlcHMgPSB7CiAgICAgICAncGFja2FnZXMnOiBbCiAgICAgICAgICAgewog
ICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lkX2Rl
cHMvbGlicy9vcmdfcm9ib2xlY3RyaWNfdXRpbHMnLAotICAgICAgICAgICAgICAndmVyc2lvbic6
ICd2ZXJzaW9uOjJANC4zLjEuY3IwJywKKyAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAndmVyc2lv
bjoyQDQuNy4zLmNyMScsCiAgICAgICAgICAgfSwKICAgICAgIF0sCiAgICAgICAnY29uZGl0aW9u
JzogJ2NoZWNrb3V0X2FuZHJvaWQgYW5kIG5vdCBidWlsZF93aXRoX2Nocm9taXVtJywKQEAgLTM3
NzQsNyArMzYwNyw3IEBAIGRlcHMgPSB7CiAgICAgICAncGFja2FnZXMnOiBbCiAgICAgICAgICAg
ewogICAgICAgICAgICAgICAncGFja2FnZSc6ICdjaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmRyb2lk
X2RlcHMvbGlicy9vcmdfcm9ib2xlY3RyaWNfdXRpbHNfcmVmbGVjdG9yJywKLSAgICAgICAgICAg
ICAgJ3ZlcnNpb24nOiAndmVyc2lvbjoyQDQuMy4xLmNyMCcsCisgICAgICAgICAgICAgICd2ZXJz
aW9uJzogJ3ZlcnNpb246MkA0LjcuMy5jcjEnLAogICAgICAgICAgIH0sCiAgICAgICBdLAogICAg
ICAgJ2NvbmRpdGlvbic6ICdjaGVja291dF9hbmRyb2lkIGFuZCBub3QgYnVpbGRfd2l0aF9jaHJv
bWl1bScsCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9HTEVTdjIuY21ha2Ug
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9HTEVTdjIuY21ha2UKaW5kZXggNmYxMmNlZjJhZmQ3
NWFlYzQ5ZGUxYWQ5MjNlOWI4NmU4NDAxYTEwYS4uYzFhYTJmNGRlODY5NTA1ODgzNTIzNTcxNmU3
MDFiMjNmMTZjNjM4NyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvR0xFU3Yy
LmNtYWtlCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0dMRVN2Mi5jbWFrZQpAQCAtMTAy
LDcgKzEwMiw3IEBAIGlmKGlzX2xpbnV4IE9SIGlzX2Nocm9tZW9zIE9SIGlzX2FuZHJvaWQgT1Ig
aXNfZnVjaHNpYSkKIGVuZGlmKCkKIAogCi1pZiAoQVBQTEUpCitpZihpc19hcHBsZSkKICAgICBs
aXN0KEFQUEVORCBsaWJhbmdsZV9jb21tb25fc291cmNlcwogICAgICAgICAic3JjL2NvbW1vbi9h
cHBsZS9Tb2Z0TGlua2luZy5oIgogICAgICAgICAic3JjL2NvbW1vbi9hcHBsZS9hcHBsZV9wbGF0
Zm9ybS5oIgpAQCAtNDQ5LDcgKzQ0OSw2IEBAIHNldChsaWJhbmdsZV9zb3VyY2VzCiAgICAgInNy
Yy9saWJBTkdMRS9yZW5kZXJlci9Qcm9ncmFtUGlwZWxpbmVJbXBsLmNwcCIKICAgICAic3JjL2xp
YkFOR0xFL3JlbmRlcmVyL1F1ZXJ5SW1wbC5jcHAiCiAgICAgInNyYy9saWJBTkdMRS9yZW5kZXJl
ci9TaGFkZXJJbXBsLmNwcCIKLSAgICAic3JjL2xpYkFOR0xFL3JlbmRlcmVyL1NoYWRlckludGVy
ZmFjZVZhcmlhYmxlSW5mb01hcC5jcHAiCiAgICAgInNyYy9saWJBTkdMRS9yZW5kZXJlci9TdXJm
YWNlSW1wbC5jcHAiCiAgICAgInNyYy9saWJBTkdMRS9yZW5kZXJlci9UZXh0dXJlSW1wbC5jcHAi
CiAgICAgInNyYy9saWJBTkdMRS9yZW5kZXJlci9kcml2ZXJfdXRpbHMuY3BwIgpkaWZmIC0tZ2l0
IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvTWV0YWwuY21ha2UgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9NZXRhbC5jbWFrZQppbmRleCBmMDRmMTYxNzVmYjJkNzJhMGIyYTQ4MmY0MWNlNmI4
MGFjNjcwMjAyLi5jYzU1ZWI3NjAyZjRjYjI2MGVhOTUwMjI3ZDY2ZGE5YTEwMWM0OWFiIDEwMDY0
NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9NZXRhbC5jbWFrZQorKysgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9NZXRhbC5jbWFrZQpAQCAtNzAsNiArNzAsOCBAQCBzZXQoX21ldGFs
X2JhY2tlbmRfc291cmNlcwogICAgICJzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX2Zv
cm1hdF91dGlscy5tbSIKICAgICAic3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF9nbHNs
YW5nX210bF91dGlscy5oIgogICAgICJzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX2ds
c2xhbmdfbXRsX3V0aWxzLm1tIgorICAgICJzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRs
X2dsc2xhbmdfdXRpbHMuaCIKKyAgICAic3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF9n
bHNsYW5nX3V0aWxzLm1tIgogICAgICJzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX29j
Y2x1c2lvbl9xdWVyeV9wb29sLmgiCiAgICAgInNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9t
dGxfb2NjbHVzaW9uX3F1ZXJ5X3Bvb2wubW0iCiAgICAgInNyYy9saWJBTkdMRS9yZW5kZXJlci9t
ZXRhbC9tdGxfcmVuZGVyX3V0aWxzLmgiCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9PV05FUlMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9PV05FUlMKaW5kZXggZjhlODVj
NzYyYzQxYWU3OTg4ODRjNWNjMGU1YzNmYjBmNjFlZjc1Yi4uOGExNTNmOTM5MGZjMTRkODFlNGVi
MmM4NjE5ZTYxYjA3M2RlMzk0ZCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUv
T1dORVJTCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL09XTkVSUwpAQCAtMTEsMTUgKzEx
LDIxIEBAIHN5b3Vzc2VmaUBjaHJvbWl1bS5vcmcKIHlub3Zpa292QGNocm9taXVtLm9yZwogCiAj
IEBnb29nbGUuY29tIGVtYWlsIGFkZHJlc3NlczoKK2FiZG9scmFzaGlkaUBnb29nbGUuY29tCiBj
Y2xhb0Bnb29nbGUuY29tCitjaHJpc2ZvcmJlc0Bnb29nbGUuY29tCiBjbm9ydGhyb3BAZ29vZ2xl
LmNvbQogZ2VvZmZsYW5nQGdvb2dsZS5jb20KIGlhbmVsbGlvdHRAZ29vZ2xlLmNvbQogam1hZGls
bEBnb29nbGUuY29tCiBqb25haHJAZ29vZ2xlLmNvbQorbGZ5QGdvb2dsZS5jb20KK3JvbWFubEBn
b29nbGUuY29tCiBzeW91c3NlZmlAZ29vZ2xlLmNvbQogdGltdnBAZ29vZ2xlLmNvbQordmFudGFi
bGFja0Bnb29nbGUuY29tCiB5bm92aWtvdkBnb29nbGUuY29tCit5dXhpbmh1QGdvb2dsZS5jb20K
IAogIyBUaGUgYXV0by1yb2xsZXIgY2FuIGFsc28gbW9kaWZ5IGF1dG9nZW5lcmF0ZWQgZmlsZXMs
IHNvIHdlIGdpdmUgaXQgb3duZXJzaGlwCiAjIG92ZXIgYWxsIEFOR0xFIGZpbGVzLgpkaWZmIC0t
Z2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvUkVBRE1FLm1kIGIvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvUkVBRE1FLm1kCmluZGV4IDM3ZjcwN2U1MTk0YmM0ZmJjMThhYjliZDdjNzIzYzkx
ZjU4NGU1ZWQuLjQzOTI3OWY5MDZlYWZhOTI1ZmZjZjU5MTc2NDkxMWUyNTYzNjE1MmIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL1JFQURNRS5tZAorKysgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9SRUFETUUubWQKQEAgLTM1LDcgKzM1LDcgQEAgQU5HTEUgaGFzIHJlY2Vp
dmVkIHRoZSBmb2xsb3dpbmcgY2VydGlmaWNhdGlvbnMgd2l0aCB0aGUgVnVsa2FuIGJhY2tlbmQ6
CiAqIE9wZW5HTCBFUyAzLjA6IEFOR0xFIDIuMS4wLmYxOGZmOTQ3MzYwZCAoRmViLCAyMDIwKQog
KiBPcGVuR0wgRVMgMy4xOiBBTkdMRSAyLjEuMC5mNWRhY2UwZjFlNTcgKEp1bCwgMjAyMCkKIAot
QU5HTEUgYWxzbyBwcm92aWRlcyBhbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgRUdMIDEuNCBzcGVj
aWZpY2F0aW9uLgorQU5HTEUgYWxzbyBwcm92aWRlcyBhbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUg
RUdMIDEuNSBzcGVjaWZpY2F0aW9uLgogCiBBTkdMRSBpcyB1c2VkIGFzIHRoZSBkZWZhdWx0IFdl
YkdMIGJhY2tlbmQgZm9yIGJvdGggR29vZ2xlIENocm9tZSBhbmQgTW96aWxsYSBGaXJlZm94IG9u
IFdpbmRvd3MKIHBsYXRmb3Jtcy4gQ2hyb21lIHVzZXMgQU5HTEUgZm9yIGFsbCBncmFwaGljcyBy
ZW5kZXJpbmcgb24gV2luZG93cywgaW5jbHVkaW5nIHRoZSBhY2NlbGVyYXRlZApkaWZmIC0tZ2l0
IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvV0FUQ0hMSVNUUyBiL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL1dBVENITElTVFMKaW5kZXggY2Q4MTQ3NWE3N2ZiYTc4NDYwNzNmMjNjMDhlYjAxYTdm
ZTY5MjEyOS4uNDdjOTgwM2FhN2Y3MzhmZDI5ZjgxY2FlMDdiYTRhODc2YmEyNDM1OCAxMDA2NDQK
LS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvV0FUQ0hMSVNUUworKysgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9XQVRDSExJU1RTCkBAIC0yMCw3ICsyMCw2IEBACiAgICMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIwogICAnV0FUQ0hMSVNUUyc6IHsKICAgICAndnVsa2FuJzogWydjY2xhbythbmds
ZVdhdGNoVmtAZ29vZ2xlLmNvbScsCi0gICAgICAgICAgICAgICAnam1hZGlsbCt3YXRjaEBjaHJv
bWl1bS5vcmcnLAotICAgICAgICAgICAgICAgJ3RpbXZwK2FuZ2xlV2F0Y2hWa0Bnb29nbGUuY29t
J10sCisgICAgICAgICAgICAgICAnam1hZGlsbCt3YXRjaEBjaHJvbWl1bS5vcmcnXSwKICAgfSwK
IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL2J1aWxkX292ZXJyaWRlcy92
dWxrYW5fY29tbW9uLmduaSBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL2J1aWxkX292ZXJyaWRl
cy92dWxrYW5fY29tbW9uLmduaQppbmRleCA2MjlhMDMyMmM4ZDMzOWFjMjlmYzE3ZDBmODFjNWY4
NjNlN2ZhNzE5Li42MWNjZjczYWRkYTM1OGNlZWJmZWZkNWNkZWY3YjBjZTk4YjNmNzVjIDEwMDY0
NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9idWlsZF9vdmVycmlkZXMvdnVsa2FuX2Nv
bW1vbi5nbmkKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvYnVpbGRfb3ZlcnJpZGVzL3Z1
bGthbl9jb21tb24uZ25pCkBAIC0xMCwzICsxMCw0IEBAIHZ1bGthbl9kYXRhX3N1YmRpciA9IGFu
Z2xlX2RhdGFfZGlyCiB2dWxrYW5fZ2VuX3N1YmRpciA9ICJhbmdsZS92dWxrYW4iCiAKIHZ1bGth
bl91c2VfeDExID0gYW5nbGVfdXNlX3gxMQordnVsa2FuX3VzZV93YXlsYW5kID0gYW5nbGVfdXNl
X3dheWxhbmQKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL2NoYW5nZXMuZGlm
ZiBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL2NoYW5nZXMuZGlmZgppbmRleCAwNTk1MDRmZTFh
OGY0N2RkYWU2ZmZjNWJkNmJhNGU0ZDk4YjNlMjhhLi43ZGY5OGJlNzNmNGM0MjM0YzcxMzI1YzFm
MzVhMDA4ZjZlOGIxZjM5IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9jaGFu
Z2VzLmRpZmYKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvY2hhbmdlcy5kaWZmCkBAIC0x
LDUgKzEsNSBAQAogZGlmZiAtLWdpdCBhLy5naXRpZ25vcmUgYi8uZ2l0aWdub3JlCi1pbmRleCA1
NTAyY2NhLi5mZGFiYjM5IDEwMDY0NAoraW5kZXggYmExOTM4OWRjLi5hZmVjYTFkNTggMTAwNjQ0
CiAtLS0gYS8uZ2l0aWdub3JlCiArKysgYi8uZ2l0aWdub3JlCiBAQCAtNjMsNiArNjMsNyBAQApA
QCAtMTAsOCArMTAsMTkzNjAgQEAgaW5kZXggNTUwMmNjYS4uZmRhYmIzOSAxMDA2NDQKICAvdGhp
cmRfcGFydHkvcmFwaWRqc29uL3NyYwogIC90aGlyZF9wYXJ0eS9yZXF1ZXN0cy9zcmMKICAvdGhp
cmRfcGFydHkvc2l4CitkaWZmIC0tZ2l0IGEvQ2hhbmdlTG9nLTIwMjItMDItMjIgYi9DaGFuZ2VM
b2ctMjAyMi0wMi0yMgorbmV3IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4IDAwMDAwMDAwMC4uY2E2
NzAyNmJjCistLS0gL2Rldi9udWxsCisrKysgYi9DaGFuZ2VMb2ctMjAyMi0wMi0yMgorQEAgLTAs
MCArMSwxOTI3OCBAQAorKzIwMjItMDItMTggIFJvYmVydCBKZW5uZXIgIDxKZW5uZXJAYXBwbGUu
Y29tPgorKworKyAgICAgICAgVW5yZXZpZXdlZCwgcmV2ZXJ0aW5nIHIyOTAxNDkuCisrCisrICAg
ICAgICBCcm9rZSBEZWJ1ZyBCdWlsZHMuCisrCisrICAgICAgICBSZXZlcnRlZCBjaGFuZ2VzZXQ6
CisrCisrICAgICAgICAiR2VuZXJhdGUgY29tcGlsZV9jb21tYW5kcy5qc29uIG9uIG1hY09TIEJ1
aWxkcyIKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MzU2ODYKKysgICAgICAgIGh0dHBzOi8vY29tbWl0cy53ZWJraXQub3JnL3IyOTAxNDkKKysKKysy
MDIyLTAyLTE4ICBCcmFuZG9uIFN0ZXdhcnQgIDxicmFuZG9uc3Rld2FydEBhcHBsZS5jb20+Cisr
CisrICAgICAgICBHZW5lcmF0ZSBjb21waWxlX2NvbW1hbmRzLmpzb24gb24gbWFjT1MgQnVpbGRz
CisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM1Njg2
CisrCisrICAgICAgICBSZXZpZXdlZCBieSBTYWFtIEJhcmF0aS4KKysKKysgICAgICAgIEFkZCBz
dXBwb3J0IGZvciBnZW5lcmF0aW5nIGNvbXBpbGVfY29tbWFuZHMuanNvbiBmaWxlIHRvIFdlYktp
dC4KKysgICAgICAgIAorKyAgICAgICAgY29tcGlsZV9jb21tYW5kcy5qc29uIGNhbiBiZSB1c2Vk
IGJ5IHRvb2xzIGxpa2UgY2xhbmdkIHRvIHByb3ZpZGUgY29kZSBjb21wbGV0ZSwKKysgICAgICAg
IHJlZmFjdG9yaW5nLCBmb3JtYXR0aW5nLCBhbmQgY3Jvc3MgcmVmZXJlbmNlcy4KKysKKysgICAg
ICAgIFN0ZXBzIHRvIGdlbmVyYXRlIHRoZSBjb21waWxlIGNvbW1hbmRzIGZpbGU6CisrICAgICAg
ICBtYWtlIHIgRVhQT1JUX0NPTVBJTEVfQ09NTUFORFM9WUVTCisrICAgICAgICBnZW5lcmF0ZS1j
b21waWxlLWNvbW1hbmRzIFdlYktpdEJ1aWxkL1JlbGVhc2UKKysKKysgICAgICAgICogQ29uZmln
dXJhdGlvbnMvRGVidWdSZWxlYXNlLnhjY29uZmlnOgorKworKzIwMjItMDItMTggIFNhYW0gQmFy
YXRpICA8c2JhcmF0aUBhcHBsZS5jb20+CisrCisrICAgICAgICBSZW1vdmUgQU5HTEUtc3RhdGlj
LnhjY29uZmlnCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MjM2ODI3CisrCisrICAgICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisrCisrICAg
ICAgICBJdCB3YXMgdW51c2VkLgorKworKyAgICAgICAgKiBBTkdMRS54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qOgorKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9BTkdMRS1zdGF0aWMueGNjb25m
aWc6IFJlbW92ZWQuCisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWc6Cisr
CisrMjAyMi0wMi0xOCAgQWRyaWFuIFBlcmV6IGRlIENhc3RybyAgPGFwZXJlekBpZ2FsaWEuY29t
PgorKworKyAgICAgICAgW0NNYWtlXSBDYW5ub3QgZmluZCBPcGVuR0wgd2hlbiBzeXN0ZW0gcHJv
dmlkZXMgb3BlbmdsLnBjIGluc3RlYWQgb2YgZ2wucGMKKysgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzY1OTIKKysKKysgICAgICAgIFJldmlld2VkIGJ5
IE1pY2hhZWwgQ2F0YW56YXJvLgorKworKyAgICAgICAgKiBQbGF0Zm9ybUdUSy5jbWFrZTogVXNl
IHRoZSBPcGVuR0w6Ok9wZW5HTCBpbXBvcnRlZCB0YXJnZXQgaW5zdGVhZCBvZiB0aGUKKysgICAg
ICAgIE9QRU5HTF9MSUJSQVJJRVMgdmFyaWFibGUuCisrICAgICAgICAqIFBsYXRmb3JtV1BFLmNt
YWtlOiBSZW1vdmUgbGlua2luZyBhZ2FpbnQgT3BlbkdMIGxpYnJhcmllczsgdGhlIFdQRSBwb3J0
IGlzIG5vdAorKyAgICAgICAgc3VwcG9zZWQgdG8gbGluayB0byBhbnkgb2YgdGhlbSBkaXJlY3Rs
eS4KKysKKysyMDIyLTAyLTE4ICBaYW4gRG9iZXJzZWsgIDx6ZG9iZXJzZWtAaWdhbGlhLmNvbT4K
KysKKysgICAgICAgIFtHVEtdW1dQRV0gRG9uJ3QgdXNlIEFOR0xFJ3MgR0JNLWJhc2VkIGRpc3Bs
YXkKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzY3
NzIKKysKKysgICAgICAgIFJldmlld2VkIGJ5IEFsZWphbmRybyBHLiBDYXN0cm8uCisrCisrICAg
ICAgICBXaXRoIERpc3BsYXlHYm0gZnVuY3Rpb25hbGl0eSBub3QgbmVjZXNzYXJ5IGFueW1vcmUs
IHdlIGNhbiBzdG9wCisrICAgICAgICBidWlsZGluZyB0aGUgYXNzb2NpYXRlZCBjb2RlIGFuZCBs
aW5raW5nIGFnYWluc3QgbGliZ2JtIGFuZCBsaWJkcm0gYXQKKysgICAgICAgIHRoZSBBTkdMRSBs
ZXZlbC4gVGhlc2UgdHdvIGxpYnJhcmllcyBhcmUgc3RpbGwgZGVwZW5kZW5jaWVzIHRoYXQgaGF2
ZQorKyAgICAgICAgc2luY2UgYmVjb21lIG5lY2Vzc2FyeSBpbiBXZWJDb3JlLgorKworKyAgICAg
ICAgKiBDTWFrZUxpc3RzLnR4dDoKKysgICAgICAgICogUGxhdGZvcm1HVEsuY21ha2U6CisrICAg
ICAgICAqIFBsYXRmb3JtV1BFLmNtYWtlOgorKworKzIwMjItMDItMTggIFNhYW0gQmFyYXRpICA8
c2JhcmF0aUBhcHBsZS5jb20+CisrCisrICAgICAgICBBZGQgTENfU09VUkNFX1ZFUlNJT04gdG8g
Y29tcGlsZSB0YXJnZXRzCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MjM2NzIwCisrICAgICAgICA8cmRhcjovLzg0OTg0MTQwPgorKworKyAgICAgICAg
UmV2aWV3ZWQgYnkgTWljaGFlbCBTYWJvZmYuCisrCisrICAgICAgICAqIENvbmZpZ3VyYXRpb25z
L0Jhc2UueGNjb25maWc6CisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL1ZlcnNpb24ueGNjb25m
aWc6CisrCisrMjAyMi0wMi0xNyAgS3lsZSBQaWRkaW5ndG9uICA8a3BpZGRpbmd0b25AYXBwbGUu
Y29tPgorKworKyAgICAgICAgTWV0YWwgQU5HTEU6IHZlcnRleCBhcnJheSBkb2VzIG5vdCBjb3Jy
ZWN0bHkgb2JzZXJ2ZSBjb250ZW50cyBvZiBkYXRhIGJ1ZmZlcnMKKysgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzY3MzMKKysgICAgICAgIDxyZGFyOi8v
cHJvYmxlbS84ODcxMzMwMj4KKysgICAgICAgIDxyZGFyOi8vcHJvYmxlbS84ODQ5OTA3Mz4KKysK
KysgICAgICAgIFJldmlld2VkIGJ5IERlYW4gSmFja3Nvbi4KKysKKysgICAgICAgIFNpbWlsYXIg
dG8gcHJldmlvdXMgYnVnICgyMzY0MjcpLCB3ZSB3ZXJlIG5vdCBjb3JyZWN0bHkgb2JzZXJ2aW5n
IGNoYW5nZXMgdG8gdGhlCisrICAgICAgICB2ZXJ0ZXggYnVmZmVyIGRhdGEuIFRoaXMgY2F1c2Vk
IHVzIHRvIG1pc3MgcmViaW5kaW5nIHZlcnRleCBidWZmZXJzCisrICAgICAgICB3aGVuIGRhdGEg
d2FzIHVwZGF0ZWQgd2l0aG91dCBjYXVzaW5nIGNvbnZlcnNpb24KKysKKysgICAgICAgICogc3Jj
L2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL1ZlcnRleEFycmF5TXRsLmg6CisrICAgICAgICAqIHNy
Yy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9WZXJ0ZXhBcnJheU10bC5tbToKKysgICAgICAgIChy
eDo6VmVydGV4QXJyYXlNdGw6OnN5bmNTdGF0ZSk6CisrICAgICAgICAocng6OlZlcnRleEFycmF5
TXRsOjpzZXR1cERyYXcpOgorKyAgICAgICAgKHJ4OjpWZXJ0ZXhBcnJheU10bDo6c3luY0RpcnR5
QXR0cmliKToKKysKKysyMDIyLTAyLTE3ICBBZHJpYW4gUGVyZXogZGUgQ2FzdHJvICA8YXBlcmV6
QGlnYWxpYS5jb20+CisrCisrICAgICAgICBbR1RLXSBCdWlsZCBicm9rZW4gd2l0aCBFTkFCTEVf
WDExX1RBUkdFVD1PRkYgYW5kIG5vIFgxMSBoZWFkZXJzIHByZXNlbnQKKysgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzY3NzAKKysKKysgICAgICAgIFJl
dmlld2VkIGJ5IEFsZWphbmRybyBHLiBDYXN0cm8uCisrCisrICAgICAgICAqIFBsYXRmb3JtR1RL
LmNtYWtlOiBUaGUgVVNFX1NZU1RFTV9FR0wgZGVmaW5pdGlvbiBkZXRhY2hlcyB0aGUgdHlwZSBk
ZWZpbml0aW9ucworKyAgICAgICAgZnJvbSB0aGUgRUdMIGhlYWRlcnMgZ2VuZXJpYyBhbmQgcHJl
dmVudHMgQU5HTEUncyBoZWFkZXJzIGZyb20gaW5jbHVkaW5nIHN5c3RlbSBYMTEKKysgICAgICAg
IG9yIFdheWxhbmQgaGVhZGVycyBmcm9tIHRoZSBzeXN0ZW0sIHNvIGFwcGx5IGl0IGFsd2F5cyBp
bmRlcGVuZGVudGx5IG9mIHdoZXRoZXIgdGhlCisrICAgICAgICBVU0VfQU5HTEVfe0VHTCxXRUJH
TH0gb3B0aW9ucyBhcmUgZW5hYmxlZC4gV2hpbGUgYXQgaXQsIGZpeCBhIG1pc3NpbmcgZG9sbGFy
IHNpZ24gaW4KKysgICAgICAgIHRoZSBleHBhbnNpb24gb2YgdGhlICR7R0JNX0lOQ0xVREVfRElS
fSB2YXJpYWJsZS4KKysKKysyMDIyLTAyLTE3ICBLaW1tbyBLaW5udW5lbiAgPGtraW5udW5lbkBh
cHBsZS5jb20+CisrCisrICAgICAgICBSRUdSRVNTSU9OIChpT1MgMTUuNGIzKTogQ2F0YXN0cm9w
aGljICgyMHgpIHBlcmZvcm1hbmNlIHJlZ3Jlc3Npb24gaW4gdGV4SW1hZ2UyRCBmcm9tIG1wNCB2
aWRlbworKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIz
NjY5OQorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIuCisrCisrICAgICAgICBE
aXNhYmxlIHRoZSB2YWxpZGF0aW9uIGZvciBJT1N1cmZhY2UgcGl4ZWwgZm9ybWF0cy4KKysgICAg
ICAgIFdlIG1pZ2h0IHBhc3Mgbm9uLXB1YmxpYyBmb3JtYXRzIHRoYXQgZG8gbm90IGhhdmUgc2Vu
c2libGUgSU9TdXJmYWNlR2V0Qnl0ZXNQZXJFbGVtZW50T2ZQbGFuZQorKyAgICAgICAgdG8gdmVy
aWZ5IHdpdGggdGhpcyBsb2dpYy4KKysKKysgICAgICAgIFdpbGwgYWRkIHRlc3QgaW4gYnVnIDIz
Njc1OS4KKysKKysgICAgICAgIFByZXZpb3VzIGJ1Z3Mgb2YgdGhlIHNhbWU6CisrICAgICAgICBF
QUdMOgorKyAgICAgICAgVGV4dHVyZXMgRmFpbCB0byBSZW5kZXIgaW4gV2ViR0wgZnJvbSBITFMg
U3RyZWFtIG9uIGlQaG9uZSAxMiBbaU9TIDE0LjJdCisrICAgICAgICBidWcgMjE4NjM3LCByMjcz
NTgyLCAyMzQ2MzJAbWFpbgorKyAgICAgICAgQ0dMOgorKyAgICAgICAgUkVHUkVTU0lPTihTYWZh
cmkgMTUsIEJpZ1N1cik6IFBvb3IgdmlkZW8gdGV4dHVyZSB1cGxvYWQgcGVyZm9ybWFuY2Ugd2l0
aCBNYWNCb29rIE0xLCBBTkdMRSBPcGVuR0wgYmFja2VuZAorKyAgICAgICAgYnVnIDIzMjIzNSwg
cjI4Njk2MCwgMjQ1MTgzQG1haW4KKysKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVy
L21ldGFsL0lPU3VyZmFjZVN1cmZhY2VNdGwubW06CisrICAgICAgICAocng6OklPU3VyZmFjZVN1
cmZhY2VNdGw6OlZhbGlkYXRlQXR0cmlidXRlcyk6CisrCisrMjAyMi0wMi0xNyAgQ29tbWl0IFF1
ZXVlICA8Y29tbWl0LXF1ZXVlQHdlYmtpdC5vcmc+CisrCisrICAgICAgICBVbnJldmlld2VkLCBy
ZXZlcnRpbmcgcjI4OTk0OS4KKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0yMzY3NTcKKysKKysgICAgICAgIEJyZWFrcyBXUEUgYnVpbGRzIHdpdGggLURV
U0VfQU5HTEVfV0VCR0w9T04KKysKKysgICAgICAgIFJldmVydGVkIGNoYW5nZXNldDoKKysKKysg
ICAgICAgICJbQ01ha2VdIENhbm5vdCBmaW5kIE9wZW5HTCB3aGVuIHN5c3RlbSBwcm92aWRlcyBv
cGVuZ2wucGMKKysgICAgICAgIGluc3RlYWQgb2YgZ2wucGMiCisrICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM2NTkyCisrICAgICAgICBodHRwczovL2Nv
bW1pdHMud2Via2l0Lm9yZy9yMjg5OTQ5CisrCisrMjAyMi0wMi0xNiAgQWRyaWFuIFBlcmV6IGRl
IENhc3RybyAgPGFwZXJlekBpZ2FsaWEuY29tPgorKworKyAgICAgICAgW0NNYWtlXSBDYW5ub3Qg
ZmluZCBPcGVuR0wgd2hlbiBzeXN0ZW0gcHJvdmlkZXMgb3BlbmdsLnBjIGluc3RlYWQgb2YgZ2wu
cGMKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzY1
OTIKKysKKysgICAgICAgIFJldmlld2VkIGJ5IERvbiBPbG1zdGVhZC4KKysKKysgICAgICAgICog
UGxhdGZvcm1HVEsuY21ha2U6IFVzZSB0aGUgT3BlbkdMOjpPcGVuR0wgaW1wb3J0ZWQgdGFyZ2V0
IGluc3RlYWQgb2YgdGhlCisrICAgICAgICBPUEVOR0xfTElCUkFSSUVTIHZhcmlhYmxlLgorKyAg
ICAgICAgKiBQbGF0Zm9ybVdQRS5jbWFrZTogRGl0dG8sIHBsdXMgcmVwbGFjZSBhIHNwdXJpb3Vz
IHVzZSBvZiBPUEVOR0xFU19MSUJSQVJJRVMKKysgICAgICAgIHdpdGggdGhlIE9wZW5HTDo6R0xF
UyB0YXJnZXQuCisrCisrMjAyMi0wMi0xMSAgS3lsZSBQaWRkaW5ndG9uICA8a3BpZGRpbmd0b25A
YXBwbGUuY29tPgorKworKyAgICAgICAgQ29jb2EyZC1IVExNNSBnYW1lIGFwZXBhcnMgdG8gdXNl
IHdyb25nIHZlcnRleCBidWZmZXIgZGF0YQorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTIzNjQyNworKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzg3MTM2
MzQ1PgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgS2ltbW8gS2lubnVuZW4uCisrCisrICAgICAg
ICBSZW5kZXIgZW5jb2RlciBhcHBlYXJzIHRvIGNhcnJ5IHN0YWxlIHN0YXRlIHdoZW4gYSB2ZXJ0
ZXggYXJyYXkncyBlbGVtZW50CisrICAgICAgICBidWZmZXIgaXMgdXBkYXRlZCwgYnV0IG5vIG90
aGVyIHBhcnRzIG9mIHRoZSBidWZmZXIgYXJlIHVwZGF0ZWQuIFJlYXNzaWduCisrICAgICAgICB2
ZXJ0ZXggYnVmZmVyIGJpbmRpbmdzIGluIHRoaXMgY2FzZSwgd2hpY2ggY2xlYXJzIHVwIGNvcnJ1
cHRpb24KKysgICAgICAgIChTcXVpc2hlZCByZW5kZXJpbmcgZWxlbWVudHMsIGluY29ycmVjdCBV
VidzKQorKworKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvVmVydGV4QXJy
YXlNdGwuaDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL1ZlcnRleEFy
cmF5TXRsLm1tOgorKyAgICAgICAgKHJ4OjpWZXJ0ZXhBcnJheU10bDo6c3luY1N0YXRlKToKKysg
ICAgICAgIChyeDo6VmVydGV4QXJyYXlNdGw6OnNldHVwRHJhdyk6CisrCisrMjAyMi0wMi0wMyAg
TWljaGFlbCBTYWJvZmYgIDxtc2Fib2ZmQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFdlYktpdCBw
cm9qZWN0cyBoYXZlIGluY29ycmVjdCBpbnN0YWxsIG5hbWUgZm9yIHRoZSBmcmFtZXdvcmtzIGZv
ciBDYXRhbHlzdCBidWlsZHMgd2l0aCB0aGUgc3lzdGVtIGNvbnRlbnQgcGF0aAorKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzNjEwNQorKworKyAgICAg
ICAgUmV2aWV3ZWQgYnkgU2FhbSBCYXJhdGkuCisrCisrICAgICAgICBVcGRhdGVkIERZTElCX0lO
U1RBTExfTkFNRV9CQVNFIGZvciBDYXRhbHlzdCBidWlsZHMgdG8gbm90IHVzZSB0aGUgc3lzdGVt
IGNvbnRlbnQgcGF0aCBwcmVmaXguCisrCisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0FOR0xF
LWR5bmFtaWMueGNjb25maWc6CisrCisrMjAyMi0wMS0xOCAgQWxleCBDaHJpc3RlbnNlbiAgPGFj
aHJpc3RlbnNlbkB3ZWJraXQub3JnPgorKworKyAgICAgICAgVXNlIGMrKzJhIGluc3RlYWQgb2Yg
Z251KysyYSBmb3IgQ29jb2EgYnVpbGRzCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MjM0OTM2CisrCisrICAgICAgICBSZXZpZXdlZCBieSBTYW0gV2Vp
bmlnLgorKworKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnOgorKworKzIw
MjItMDEtMTcgIERhdmlkIEtpbHplciAgPGRka2lsemVyQGFwcGxlLmNvbT4KKysKKysgICAgICAg
IFJFR1JFU1NJT04gKHIyNDk4MjMpOiBnbDo6Q29udGV4dDo6b25Qcm9ncmFtTGluaygpIGxlYWtz
IGdsOjpGcmFtZWJ1ZmZlciBvYmplY3QgZHVlIGVhcmx5IHJldHVybiB3aGVuIGFuIGVycm9yIG9j
Y3VycyBpbiBBTkdMRV9UUlkoKSBtYWNybworKyAgICAgICAgPGh0dHBzOi8vd2Via2l0Lm9yZy9i
LzIzNTI4ND4KKysgICAgICAgIDxyZGFyOi8vcHJvYmxlbS84NzY1Njc0Nz4KKysKKysgICAgICAg
IFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgorKworKyAgICAgICAgKiBzcmMvbGliQU5HTEUvQ29u
dGV4dC5jcHA6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnNldERlZmF1bHRGcmFtZWJ1ZmZlcik6
CisrICAgICAgICAtIFVzZSBzdGQ6OnVuaXF1ZV9wdHI8PiB0byBzdG9yZSBnbDo6RnJhbWVidWZm
ZXIgc28gdGhlIG9iamVjdAorKyAgICAgICAgICBpcyByZWxlYXNlZCBvbiBlYXJseSByZXR1cm4u
CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9TdXJmYWNlLmNwcDoKKysgICAgICAgIChlZ2w6OlN1
cmZhY2U6OmNyZWF0ZURlZmF1bHRGcmFtZWJ1ZmZlcik6CisrICAgICAgICAtIFVwZGF0ZSB0byBy
ZXR1cm4gc3RkOjp1bmlxdWVfcHRyPGdsOjpGcmFtZWJ1ZmZlcj4uCisrICAgICAgICAqIHNyYy9s
aWJBTkdMRS9TdXJmYWNlLmg6CisrICAgICAgICAoZWdsOjpTdXJmYWNlOjpjcmVhdGVEZWZhdWx0
RnJhbWVidWZmZXIpOgorKyAgICAgICAgLSBVcGRhdGUgZGVjbGFyYXRpb24gdG8gcmV0dXJuIHN0
ZDo6dW5pcXVlX3B0cjxnbDo6RnJhbWVidWZmZXI+LgorKyAgICAgICAgKGVnbDo6U3VyZmFjZTo6
Y3JlYXRlRGVmYXVsdEZyYW1lYnVmZmVyKTogRGVsZXRlLgorKyAgICAgICAgLSBSZW1vdmUgdGhl
IHNlY29uZCwgcHJvdGVjdGVkIG1ldGhvZCB0aGF0IGlzIGN1cnJlbnRseQorKyAgICAgICAgICB1
bmltcGxlbWVudGVkLgorKworKzIwMjItMDEtMTcgIERhdmlkIEtpbHplciAgPGRka2lsemVyQGFw
cGxlLmNvbT4KKysKKysgICAgICAgIFJFR1JFU1NJT04gKHIyODY2MDMpOiByeDo6UHJvZ3JhbU10
bDo6Z2V0U3BlY2lhbGl6ZWRTaGFkZXIoKSBsZWFrcyBNVExGdW5jdGlvbkNvbnN0YW50VmFsdWVz
IG9iamVjdCBkdWUgZWFybHkgcmV0dXJuIHdoZW4gYW4gZXJyb3Igb2NjdXJzIGluIEFOR0xFX1RS
WSgpIG1hY3JvCisrICAgICAgICA8aHR0cHM6Ly93ZWJraXQub3JnL2IvMjM1MjgxPgorKyAgICAg
ICAgPHJkYXI6Ly9wcm9ibGVtLzg3NjU2Mzg3PgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGFy
aW4gQWRsZXIuCisrCisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9Qcm9n
cmFtTXRsLm1tOgorKyAgICAgICAgKHJ4OjpQcm9ncmFtTXRsOjpnZXRTcGVjaWFsaXplZFNoYWRl
cik6CisrICAgICAgICAtIFVzZSBtdGw6OkF1dG9PYmpDT2JqPD4gdG8gcmVsZWFzZSBNVExGdW5j
dGlvbkNvbnN0YW50VmFsdWVzCisrICAgICAgICAgIG9iamVjdCBvbiBlYXJseSByZXR1cm4uCisr
CisrMjAyMi0wMS0xNyAgRGF2aWQgS2lsemVyICA8ZGRraWx6ZXJAYXBwbGUuY29tPgorKworKyAg
ICAgICAgRm9sbG93LXVwOiBSRUdSRVNTSU9OIChyMjg2NjAzKTogTGVhayBvZiB0aHJlZSBOU011
dGFibGVEaWN0aW9uYXJ5IG9iamVjdHMgZWFjaCB0aW1lIHJ4OjpEaXNwbGF5TXRsOjpnZXRNZXRh
bERldmljZU1hdGNoaW5nQXR0cmlidXRlKCkgaXMgY2FsbGVkCisrICAgICAgICA8aHR0cHM6Ly93
ZWJraXQub3JnL2IvMjM1Mjc4PgorKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzg3NjUzODEyPgor
KworKyAgICAgICAgVW5yZXZpZXdlZCBmb2xsb3ctdXAgZml4IGZyb20gQnVnIDIzNTI4MSwgQ29t
bWVudCAjNS4KKysKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL0Rpc3Bs
YXlNdGwubW06CisrICAgICAgICAocng6OkRpc3BsYXlNdGw6OmdldE1ldGFsRGV2aWNlTWF0Y2hp
bmdBdHRyaWJ1dGUpOgorKyAgICAgICAgLSBSZW1vdmUgdW5uZWVkZWQgY2FsbHMgdG8gLmdldCgp
LgorKworKzIwMjItMDEtMTYgIERhdmlkIEtpbHplciAgPGRka2lsemVyQGFwcGxlLmNvbT4KKysK
KysgICAgICAgIFJFR1JFU1NJT04gKHIyODY2MDMpOiBMZWFrIG9mIHRocmVlIE5TTXV0YWJsZURp
Y3Rpb25hcnkgb2JqZWN0cyBlYWNoIHRpbWUgcng6OkRpc3BsYXlNdGw6OmdldE1ldGFsRGV2aWNl
TWF0Y2hpbmdBdHRyaWJ1dGUoKSBpcyBjYWxsZWQKKysgICAgICAgIDxodHRwczovL3dlYmtpdC5v
cmcvYi8yMzUyNzg+CisrICAgICAgICA8cmRhcjovL3Byb2JsZW0vODc2NTM4MTI+CisrCisrICAg
ICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KKysKKysgICAgICAgICogc3JjL2xpYkFOR0xF
L3JlbmRlcmVyL21ldGFsL0Rpc3BsYXlNdGwubW06CisrICAgICAgICAocng6OkRpc3BsYXlNdGw6
OmdldE1ldGFsRGV2aWNlTWF0Y2hpbmdBdHRyaWJ1dGUpOgorKyAgICAgICAgLSBNYWtlIHVzZSBv
ZiBtdGw6OmFkb3B0T2JqQ09iajw+IHNvIHRoZXNlIG9iamVjdHMgYXJlIHJlbGFzZWVkCisrICAg
ICAgICAgIHdoZW4gdGhlIG1ldGhvZCByZXR1cm5zLgorKworKzIwMjItMDEtMTQgIEt5bGUgUGlk
ZGluZ3RvbiAgPGtwaWRkaW5ndG9uQGFwcGxlLmNvbT4KKysKKysgICAgICAgIEFOR0xFOiBTdXBw
b3J0czMyQml0RmxvYXRGaWx0ZXJpbmcgaXMgbm90IHN1cHBvcnRlZCBvbiBUVk9TCisrICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM1MjM5CisrICAgICAg
ICAKKysgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgorKworKyAgICAgICAgPHJkYXI6
Ly84NjQ1NzA4MT4KKysgICAgICAgIEJyb2tlIGFuIGludGVybmFsIGJ1aWxkLiBDYXVzZWQgYnkg
aHR0cHM6Ly90cmFjLndlYmtpdC5vcmcvY2hhbmdlc2V0LzI4NjMyMy93ZWJraXQKKysKKysgICAg
ICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL0Rpc3BsYXlNdGwubW06CisrICAgICAg
ICAocng6OkRpc3BsYXlNdGw6OnN1cHBvcnRzMzJCaXRGbG9hdEZpbHRlcmluZyBjb25zdCk6Cisr
CisrMjAyMi0wMS0xMiAgQ2hyaXMgTG9yZCAgPGNsb3JkQGlnYWxpYS5jb20+CisrCisrICAgICAg
ICBbV1BFXSBFbmFibGUgV2ViR0wgQU5HTEUgc3VwcG9ydAorKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzNTA2NAorKworKyAgICAgICAgUmV2aWV3ZWQg
YnkgQWxlamFuZHJvIEcuIENhc3Ryby4KKysKKysgICAgICAgIEVuYWJsZSBidWlsZGluZyBvbiBX
UEUgKG1vc3RseSBjb3B5aW5nIHRoZSBHVEsgYnVpbGQgZmlsZSkuCisrCisrICAgICAgICAqIFBs
YXRmb3JtV1BFLmNtYWtlOgorKworKzIwMjItMDEtMTEgIEt5bGUgUGlkZGluZ3RvbiAgPGtwaWRk
aW5ndG9uQGFwcGxlLmNvbT4KKysKKysgICAgICAgIEFOR0xFOiBBU1RDLUhEUiBpcyBub3QgYXZh
aWxhYmxlIG9uIFRWT1MKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0yMzUwNzYKKysKKysgICAgICAgIFJldmlld2VkIGJ5IERlYW4gSmFja3Nvbi4KKysK
KysgICAgICAgIDxyZGFyOi8vODczODQwMzg+CisrICAgICAgICBUaGlzIGlzIGEgZm9sbG93IG9u
IHBhdGNoIHRvIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzQxNjQs
CisrICAgICAgICBBU1RDLUhEUiBpcyBvbmx5IGF2YWlsYWJsZSBvbiBtYWNPUyBhbmQgaU9TLCBu
b3QgdHZPUyBvciB3YXRjaE9TCQorKwlUaGlzIHBhdGNoIGZpeGVzIGFuIGludGVybmFsIGJ1aWxk
LgorKworKyAgICAgICAgKiBzY3JpcHRzL2NvZGVfZ2VuZXJhdGlvbl9oYXNoZXMvTWV0YWxfZm9y
bWF0X3RhYmxlLmpzb246CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9n
ZW5fbXRsX2Zvcm1hdF90YWJsZS5weToKKysgICAgICAgIChnZW5faW1hZ2VfbWFwX3N3aXRjaF9h
c3RjX2Nhc2VfdHZfd2F0Y2hvcyk6CisrICAgICAgICAoZ2VuX2ltYWdlX21hcF9zd2l0Y2hfc3Ry
aW5nKToKKysgICAgICAgIChnZW5faW1hZ2VfbXRsX3RvX2FuZ2xlX3N3aXRjaF9zdHJpbmcpOgor
KyAgICAgICAgKGdlbl9pbWFnZV9tYXBfc3dpdGNoX2FzdGNfY2FzZV93YXRjaG9zKTogRGVsZXRl
ZC4KKysgICAgICAgIChnZW5faW1hZ2VfbWFwX3N3aXRjaF9hc3RjX2Nhc2Vfd2F0Y2hvcy5nZW5f
Zm9ybWF0X2Fzc2lnbl9jb2RlKTogRGVsZXRlZC4KKysgICAgICAgICogc3JjL2xpYkFOR0xFL3Jl
bmRlcmVyL21ldGFsL210bF9mb3JtYXRfdGFibGVfYXV0b2dlbi5tbToKKysgICAgICAgIChyeDo6
bXRsOjpGb3JtYXQ6Ok1ldGFsVG9BbmdsZUZvcm1hdElEKToKKysgICAgICAgIChyeDo6bXRsOjpG
b3JtYXQ6OmluaXQpOgorKworKzIwMjItMDEtMTAgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0
ZW5zZW5Ad2Via2l0Lm9yZz4KKysKKysgICAgICAgIFN0YXJ0IHVzaW5nIEMrKzIwCisrICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMzOTYzCisrCisrICAg
ICAgICBSZXZpZXdlZCBieSBZdXN1a2UgU3V6dWtpLgorKworKyAgICAgICAgKiBDb25maWd1cmF0
aW9ucy9CYXNlLnhjY29uZmlnOgorKworKzIwMjItMDEtMDkgIFNhbSBXZWluaWcgIDx3ZWluaWdA
YXBwbGUuY29tPgorKworKyAgICAgICAgUmVtb3ZlIHN1cHBvcnQgZm9yIERpcmVjdDJECisrICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM0OTk5CisrCisr
ICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KKysKKysgICAgICAgIERpcmVjdDJEIGFu
ZCBGVFcgaGF2ZSBub3QgYmVlbiBidWlsZGluZyBmb3Igb3ZlciBhIHllYXIuIEl0IGlzCisrICAg
ICAgICB0aW1lIHRvIHJlbW92ZSB0aGVtLgorKworKyAgICAgICAgKiBQbGF0Zm9ybUZUVy5jbWFr
ZTogUmVtb3ZlZC4KKysKKysyMDIyLTAxLTA3ICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVu
c2VuQHdlYmtpdC5vcmc+CisrCisrICAgICAgICBVbnJldmlld2VkLCByZXZlcnRpbmcgcjI4NzY5
OC4KKysKKysgICAgICAgIEJyb2tlIGFuIGludGVybmFsIGJ1aWxkCisrCisrICAgICAgICBSZXZl
cnRlZCBjaGFuZ2VzZXQ6CisrCisrICAgICAgICAiU3RhcnQgdXNpbmcgQysrMjAiCisrICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMzOTYzCisrICAgICAg
ICBodHRwczovL2NvbW1pdHMud2Via2l0Lm9yZy9yMjg3Njk4CisrCisrMjAyMi0wMS0wNiAgQWxl
eCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgorKworKyAgICAgICAgU3Rh
cnQgdXNpbmcgQysrMjAKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0yMzM5NjMKKysKKysgICAgICAgIFJldmlld2VkIGJ5IFl1c3VrZSBTdXp1a2kuCisr
CisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWc6CisrCisrMjAyMi0wMS0w
NSAgS3lsZSBQaWRkaW5ndG9uICA8a3BpZGRpbmd0b25AYXBwbGUuY29tPgorKworKyAgICAgICAg
Um9sbCBBTkdMRSB0byBhYWJmZTg3NDdkIDEyLTE3LTIwMjEKKysgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzQ1MjMKKysKKysgICAgICAgIFJldmlld2Vk
IGJ5IEtlbm5ldGggUnVzc2VsbC4KKysKKysgICAgICAgIFRoZSBjaGFuZ2Vsb2cgaGFzIGJlZW4g
cmVtb3ZlZCB0byBpbXByb3ZlIHJlYWRhYmlsaXR5LgorKyAgICAgICAgVGhlIGZvbGxvd2luZyBB
TkdMRSBjb21taXRzIHdlcmUgbWVyZ2VkOiAKKysKKysgICAgICAgIGFhYmZlODc0NyBNZXRhbDog
VXNlIHRoZSBjb250ZXh0IGRldmljZSB0byBUZXh0dXJlOjpyZXNpemUKKysgICAgICAgIDM0ZWE4
MTExMSBSZWxhbmQgIlZ1bGthbjogRG9uJ3QgZXhwb3NlIE1TUlRUIG9uIFN3aWZ0U2hhZGVyIgor
KyAgICAgICAgNjI0ZTNjM2Q1IEZpeCBkYW5nZXJvdXMgdXNlIG9mIEF1dG9PYmpDUHRyIGFmdGVy
IG93bmVyc2hpcCBpZGVudGl0eSBjaGFuZ2UKKysgICAgICAgIDRhMTQ4ZTlkOSBSZXZlcnQgIlZ1
bGthbjogU3VwcHJlc3MgVlVJRC12a0NtZERyYXctYmxlbmRFbmFibGUiCisrICAgICAgICBlZGUw
YjhiNzEgQXZvaWQgQU5HTEVfTVRMX0FVVE9SRUxFQVNFIGluc2lkZSBBU1NFUlQsIGl0IGxlYWtz
IG9uIFJlbGVhc2UKKysgICAgICAgIGNiNGY0NDFjOCBSb2xsIHZ1bGthbi1kZXBzIGZyb20gMzlm
M2ExOGJkZmJlIHRvIDU1NjgwNDhkMjA1ZSAoOCByZXZpc2lvbnMpCisrICAgICAgICAyZjc4YjQ4
ZGIgUm9sbCBDaHJvbWl1bSBmcm9tIDE0Y2E3NWQyNTRhNSB0byA4MWRlY2I3MjUwZTEgKDE5MSBy
ZXZpc2lvbnMpCisrICAgICAgICAwMDEyMjFmMGUgTWV0YWw6IHVwc3RyZWFtIGZpeCBmcm9tIFdl
YktpdCBmb3IgdGV4dHVyZSBsZWFrLgorKyAgICAgICAgZGNhNDM0YmRjIFJvbGwgQ2hyb21pdW0g
ZnJvbSAzZjZjODhmNTU4MWEgdG8gMTRjYTc1ZDI1NGE1ICg0MDEgcmV2aXNpb25zKQorKyAgICAg
ICAgYjlmMmQ5Y2MxIFVzZSB0ZXh0IGV4cGVjdGF0aW9ucyB0byBza2lwIGEgdGVzdAorKyAgICAg
ICAgNmM4OTRlODI5IFZ1bGthbjogUmVwbGFjZSBCdWZmZXJWazo6Z2V0QnVmZmVyQW5kT2Zmc2V0
KCkgd2l0aCBnZXRCdWZmZXIoKQorKyAgICAgICAgZjI3MzZmNmRjIFRlc3RzOiBBZGQgTXkgVGFs
a2luZyBUb20gRnJpZW5kcyB0cmFjZS4KKysgICAgICAgIGE5M2EzOTMwYiBWdWxrYW46IFRyYWNr
IGVuYWJsZWQgaW4gVmVydGV4QXJyYXkKKysgICAgICAgIDgzYTY3MGFiMCBWdWxrYW46IEltcGxl
bWVudCBCdWZmZXJQb29sIHVzaW5nIFZNQSdzIHZpcnR1YWwgYWxsb2NhdG9yCisrICAgICAgICA4
MzY3OTcxNjYgVnVsa2FuOiBEaXJ0eSB2ZXJ0ZXggYnVmZmVycyBpZiBkZWZhdWx0IGF0dHJpYiB2
YWx1ZXMgY2hhbmdlZAorKyAgICAgICAgNTQzZjU3NTBmIChvcmlnaW4vY2hyb21pdW0vNDc3MSkg
VnVsa2FuOiBEaXNhYmxlIHByb3RlY3RlZCBtZW1vcnkgZm9yIEFSTQorKyAgICAgICAgYzc0NDZh
YzQyIEFkZCBzdXBwb3J0IGZvciBHTF9NRVNBX2ZyYW1lYnVmZmVyX2ZsaXBfeSAxLyoKKysgICAg
ICAgIDYwMzgzYjQxZSBUZXN0czogQWRkIERvdGEgVW5kZXJsb3JkcyB0cmFjZS4KKysgICAgICAg
IGYyNjY4N2EwMyBUZXN0czogQWRkIE15IFRhbGtpbmcgVG9tIDIgdHJhY2UuCisrICAgICAgICA0
MzhkZTE3ZWUgUm9sbCB2dWxrYW4tZGVwcyBmcm9tIGE4MjIxZWVkNTk3MCB0byAzOWYzYTE4YmRm
YmUgKDUgcmV2aXNpb25zKQorKyAgICAgICAgZTc0MTNhZGZmIHN5c3RlbV91dGlsc19wb3NpeDog
Q2hlY2sgZm9yIFNFR1ZfTUFQRVJSIHNpX2NvZGUuCisrICAgICAgICA2ZTVmZDgxNjUgU3VwcG9y
dCBtb3JlIEltYWdlTGF5b3V0IGluIENvbnZlcnRJbWFnZUxheW91dFRvR0xJbWFnZUxheW91dAor
KyAgICAgICAgYjI2YmIxM2FiIE1ldGFsOiBSZW1vdmUgcmVmZXJlbmNlcyB0byB4ZmJBY3RpdmVV
bnBhdXNlZCB1bmlmb3JtCisrICAgICAgICBiYjViYWIwMzEgUm9sbCBDaHJvbWl1bSBmcm9tIDJk
YWUwN2VlYjE2MyB0byAzZjZjODhmNTU4MWEgKDQxNCByZXZpc2lvbnMpCisrICAgICAgICBjNGQ0
MzRiOTEgTWV0YWw6IEVuYWJsZSBPRVNfZmJvX3JlbmRlcl9taXBtYXAKKysgICAgICAgIDY3MDY3
OTkxOCBNZXRhbDogRml4IFdlYmtpdCB3YXJuaW5ncyBpbiBBTkdMRSBidWlsZAorKyAgICAgICAg
YmRhNDkzMjU4IEFkZCBndWFyZHMgZm9yIDY0IGJpdCB0eXBlcyBvbiAzMmJpdCBzeXN0ZW1zCisr
ICAgICAgICBlN2M5ZGJiODggU2tpcCBTaW1wbGVTdGF0ZUNoYW5nZVRlc3RFUzMuT3V0T2ZCb3Vu
ZHNCeXRlQXR0cmlidXRlIG9uIFBpeGVsNCBHTEVTCisrICAgICAgICA4OWUxMTg3OGIgVnVsa2Fu
OiBGaXggdGhlIFVBRiBpc3N1ZSB3aXRoIEJ1ZmZlckRhdGEKKysgICAgICAgIGVlMWQzY2Y3NCBN
ZXRhbDogSW50ZWdyYXRlIE1ldGFsIEJpbmFyeSBTaGFkZXIgZ2VuZXJhdGlvbgorKyAgICAgICAg
M2U3ZTI3NThmIE1ldGFsOiBGaXggbWFjT1MgQU5HTEUgYnVpbGQgb24gQ2F0YWxpbmEgKDEwLjE1
KSBTREsKKysgICAgICAgIDA1YTQ0ZGQyNCBWdWxrYW46IFNldCBjb250ZW50IHVuZGVmaW5lZCBv
biBlZ2xTd2FwQnVmZmVycworKyAgICAgICAgMjZmYTBmZTY4IFRlc3RzOiBBZGQgQXNwaGFsdCA5
IHRyYWNlCisrICAgICAgICA1Mjc1ZjQ4N2UgVnVsa2FuOiBEaXNhYmxlIGFzeW5jIGNvbW1hbmQg
cXVldWUgd2l0aCBWdWxrYW4gU0NCcworKyAgICAgICAgZmViNTk5YWQ4IEludmFsaWRhdGUgRUdM
IGhhbmRsZXMgZHVyaW5nIGVnbFRlcm1pbmF0ZQorKyAgICAgICAgMzJlMjNiYjlkIEV4cGFuZCBX
ZWJHTENvbXByZXNzZWRUZXh0dXJlQXZhaWxhYmlsaXR5VGVzdAorKyAgICAgICAgZDZiOWEyNTk3
IGVuZDJlbmRfdGVzdHM6IEFkZCBTd1MgKyBBc3luY1F1ZXVlIHRlc3RpbmcuCisrICAgICAgICBh
MGViNjE0NmMgVXBkYXRlIHdhcm5pbmcgbWVzc2FnZSBmb3IgaW52YWxpZCBpbmNsdWRlCisrICAg
ICAgICBjYWM4MWYwNzcgUmV0dXJuIGZ1bGwgZXJyb3IgaW5mbyB3aGVuIG9wZW5pbmcgYSBsaWJy
YXJ5IHdpdGggZGxvcGVuCisrICAgICAgICA5MGMzMDM4ZTUgVnVsa2FuOiBGaXggZGVzYyBzZXQg
dXBkYXRlcyB3aXRoIFZ1bGthbiBTQ0JzCisrICAgICAgICA4NDE5ZjRmY2QgUm9sbCB2dWxrYW4t
ZGVwcyBmcm9tIGMwMzg5MDA3Njk1NCB0byBhODIyMWVlZDU5NzAgKDIgcmV2aXNpb25zKQorKyAg
ICAgICAgZGIzNjdiZDcxIFJvbGwgQ2hyb21pdW0gZnJvbSAwYzBhMzY1NDY5NGYgdG8gMmRhZTA3
ZWViMTYzICg0NTAgcmV2aXNpb25zKQorKyAgICAgICAgYmZjN2YwOWFlIFJldmVydCAiVXBncmFk
ZSByZXN0cmljdGVkIHRyYWNlcyB0byBuZXcgdHJhY2UgZm9ybWF0LiIKKysgICAgICAgIDgwMGM2
OTcxYyBNb2RpZmllZCBidWZmZXIgZmFsbGJhY2sgZm9ybWF0IHRvIHNtYWxsZXIgc3RvcmFnZSBm
b3JtYXQKKysgICAgICAgIDcwOWQ4NzI3OCBSZXZlcnQgIlRyYWNlIFRlc3RzOiBSZW1vdmUgYXV0
by1nZW5lcmF0ZWQgY29kZS4iCisrICAgICAgICAzZGE1NDI1MGIgU2tpcCBNdWx0aXRocmVhZGlu
Z1Rlc3QuTXVsdGlDb250ZXh0RHJhd1dpdGhTd2FwQnVmZmVycworKyAgICAgICAgN2YxYTBmODli
IFN3aXRjaCB0byBub24tZGVwcmVjYXRlZCBiYmFnZW50LCByZW1vdmUgZGVmdW5jdCBleHBlcmlt
ZW50cy4KKysgICAgICAgIDlkNDlkODQzOCBBZGQgV2ViR0xDb21wcmVzc2VkVGV4dHVyZUF2YWls
YWJpbGl0eVRlc3QKKysJCisrMjAyMi0wMS0wNSAgTWljaGFlbCBTYWJvZmYgIDxtc2Fib2ZmQGFw
cGxlLmNvbT4KKysKKysgICAgICAgIFJFR1JFU1NJT04gKHIyODczODIpOiBsaWJBTkdMRSBpcyBi
dWlsdCBpbnRvIGEgd3JvbmcgbG9jYXRpb24gb24gaU9TCisrICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM0ODU3CisrCisrICAgICAgICBSZXZpZXdlZCBi
eSBTYWFtIEJhcmF0aS4KKysKKysgICAgICAgIFJldmVydGVkIHRvIHRoZSBwcmlvciBsb2dpYyB0
byBjb21wdXRlIElOU1RBTExfUEFUSC4gIFRoZW4gYWRkZWQgYW4gb3B0aW9uYWwgcHJlZml4Cisr
ICAgICAgICBmb3IgdGhlIGFsdGVybmF0ZSByb290IGZyYW1ld29yayBsb2NhdGlvbi4KKysKKysg
ICAgICAgICogQ29uZmlndXJhdGlvbnMvQU5HTEUtZHluYW1pYy54Y2NvbmZpZzoKKysKKysyMDIx
LTEyLTIyICBNaWNoYWVsIFNhYm9mZiAgPG1zYWJvZmZAYXBwbGUuY29tPgorKworKyAgICAgICAg
Rml4IFdlYktpdCBCdWlsZCBpc3N1ZXMgd2hlbiB1c2luZyBzeXN0ZW0gY29udGVudCBwYXRoCisr
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM0NjI0Cisr
CisrICAgICAgICBSZXZpZXdlZCBieSBGaWxpcCBQaXpsby4KKysKKysgICAgICAgIENoYW5nZWQg
SU5TVEFMTF9QQVRIIG9uIG1hY09TIGJ1aWxkcyB0byB1c2UgYSBmdWxseSBxdWFsaWZpZWQgLi4u
L1dlYkNvcmUuZnJhbWV3b3JrL1ZlcnNpb25zL0EvRnJhbWV3b3Jrcy4KKysgICAgICAgIERlbGV0
ZWQgdW51c2VkIGNyZWF0ZS1zeW1saW5rLXRvLWFsdHJvb3Quc2ggc2NyaXB0LgorKworKyAgICAg
ICAgKiBDb25maWd1cmF0aW9ucy9BTkdMRS1keW5hbWljLnhjY29uZmlnOgorKyAgICAgICAgKiBz
Y3JpcHRzL2NyZWF0ZS1zeW1saW5rLXRvLWFsdHJvb3Quc2g6IFJlbW92ZWQuCisrCisrMjAyMS0x
Mi0yMSAgTWljaGFlbCBTYWJvZmYgIDxtc2Fib2ZmQGFwcGxlLmNvbT4KKysKKysgICAgICAgIEZp
eCBzeW1saW5rcyBmb3IgYWx0ZXJuYXRlIHJvb3QgZnJhbWV3b3JrIGxvY2F0aW9ucworKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzNDU2NworKworKyAg
ICAgICAgUmV2aWV3ZWQgYnkgRmlsaXAgUGl6bG8uCisrCisrICAgICAgICBFbGltaW5hdGVkIHRo
ZSBjcmVhdGlvbiBvZiBzeW1saW5rcyBmb3IgQU5HTEUgYXMgaXQgaXMgdW5kZXIgV2ViQ29yZS4K
KysKKysgICAgICAgICogQU5HTEUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKysgICAgICAg
ICogQ29uZmlndXJhdGlvbnMvQU5HTEUtZHluYW1pYy54Y2NvbmZpZzoKKysKKysyMDIxLTEyLTIx
ICBBcmNhZHkgR29sZG1pbnRzLU9ybG92ICA8YWdvbGRtaW50c0BpZ2FsaWEuY29tPgorKworKyAg
ICAgICAgW0dUS10gYnVpbGQgZmFpbHMgd2l0aCB1bmRlZmluZWQgc3ltYm9sIGluIEFOR0xFIGlm
IFVTRV9BTkdMRV9XRUJHTCBpcyBlbmFibGVkLgorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIzNDIzOQorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgS2Vu
bmV0aCBSdXNzZWxsLgorKworKyAgICAgICAgQWRkIGEgbmV3IGxpbnV4LmNtYWtlIGZpbGUgdGhh
dCBkZWZpbmVzIGFuZ2xlX2RtYV9idWZfc291cmNlcy4KKysgICAgICAgIFRoaXMgbGlzdCBnZXRz
IGFwcGVuZGVkIGl0IGludG8gQU5HTEVfU09VUkNFUyBpbiBQbGF0Zm9ybUdUSy5jbWFrZS4KKysK
KysgICAgICAgICogbGludXguY21ha2U6IEFkZGVkLiBNYW51YWwgdHJhbnNsYXRpb24gb2Ygc3Jj
L2NvbW1vbi9saW51eC9CVUlMRC5nbi4KKysgICAgICAgICogUGxhdGZvcm1HVEsuY21ha2U6Cisr
CisrMjAyMS0xMi0xNyAgRnVqaWkgSGlyb25vcmkgIDxIaXJvbm9yaS5GdWppaUBzb255LmNvbT4K
KysKKysgICAgICAgIFtBTkdMRV0gIldBUk46IGRyaXZlcl91dGlscy5jcHA6MTY5IChyeDo6R2V0
VmVuZG9yU3RyaW5nKTohIFVuaW1wbGVtZW50ZWQ6IHJ4OjpHZXRWZW5kb3JTdHJpbmciIG9uIFdp
bkNhaXJvIGRlYnVnIHRlc3RpbmcgYm90CisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MjM0MzcxCisrCisrICAgICAgICBSZXZpZXdlZCBieSBLZW5uZXRo
IFJ1c3NlbGwuCisrCisrICAgICAgICBBZnRlciByMjg2NjAzIHVwZGF0ZWQgQU5HTEUsIFdpbkNh
aXJvIGRlYnVnIHRlc3RpbmcgYm90IHdhcworKyAgICAgICAgb2JzZXJ2aW5nIGFubm95aW5nIHdh
cm5pbmcgbWVzc2FnZSBmb3IgYWxsIFdlYkdMIHRlc3N0cy4KKysgICAgICAgID4gV0FSTjogZHJp
dmVyX3V0aWxzLmNwcDoxNjkgKHJ4OjpHZXRWZW5kb3JTdHJpbmcpOiAJISBVbmltcGxlbWVudGVk
OiByeDo6R2V0VmVuZG9yU3RyaW5nKC4uXC4uXFNvdXJjZVxUaGlyZFBhcnR5XEFOR0xFXHNyY1xs
aWJBTkdMRVxyZW5kZXJlclxkcml2ZXJfdXRpbHMuY3BwOjE2OSkKKysKKysgICAgICAgIFRoZSB2
ZW5kb3IgSUQgd2FzIDB4MTQxNCAoTWljcm9zb2Z0KS4KKysgICAgICAgIDxodHRwczovL3BjaXNp
Zy5jb20vbWVtYmVyc2hpcC9tZW1iZXItY29tcGFuaWVzPgorKworKyAgICAgICAgKiBzcmMvbGli
QU5HTEUvcmVuZGVyZXIvZHJpdmVyX3V0aWxzLmNwcDoKKysgICAgICAgIChyeDo6R2V0VmVuZG9y
U3RyaW5nKTogQWRkZWQgbW9yZSB2ZW5kb3Igc3RyaW5ncyBmb3IgdmVuZG9yIElEcy4KKysgICAg
ICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2RyaXZlcl91dGlscy5oOiBBZGRlZCBWRU5ET1Jf
SURfTUlDUk9TT0ZULgorKworKzIwMjEtMTItMTcgIEtpbW1vIEtpbm51bmVuICA8a2tpbm51bmVu
QGFwcGxlLmNvbT4KKysKKysgICAgICAgIFJFR1JFU1NJT04gKHIyODcwNjgpOiBbbWFjT1MgYXJt
NjRdIFRlc3RXZWJLaXRBUEkuR3JhcGhpY3NDb250ZXh0R0xDb2NvYVRlc3QuVW5yZWN5Y2xlZERp
c3BsYXlCdWZmZXJzTm9MZWFrcyBpcyBmYWlsaW5nCisrICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM0MzU2CisrICAgICAgICA8cmRhcjovL3Byb2JsZW0v
ODY1MzM4OTI+CisrCisrICAgICAgICBSZXZpZXdlZCBieSBBbnR0aSBLb2l2aXN0by4KKysKKysg
ICAgICAgIEF2b2lkIGxlYWtpbmcgTVRMVGV4dHVyZSBpbnN0YW5jZXMgZm9yIHJlbmRlciB0YXJn
ZXRzLiBMZWFrIHdvdWxkIGhhcHBlbiB0aHJvdWdoCisrICAgICAgICB0ZW1wb3JhcnkgcmVuZGVy
IHBhc3MgZGVzY3JpcHRvciB0aGF0IHdvdWxkIHJlZiB0aGUgcmVuZGVyIHRhcmdldCB0ZXh0dXJl
LgorKyAgICAgICAgVGhlIGRlc2NyaXB0b3Igd2FzIGNyZWF0ZWQgd2l0aG91dCBhdXRvcmVsZWFz
ZXBvb2wgaW4gY2FsbCBzdGFjay4KKysgICAgICAgIEFsc28gZml4ZXMgdGhlIGVycm9yIHN0cmlu
ZyBsZWFrcy4KKysKKysgICAgICAgIFVucmVjeWNsZWREaXNwbGF5QnVmZmVyc05vTGVha3Mgd291
bGQgcmVwb3J0IGxlYWtzIG9mIGlvc3VyZmFjZS1iYWNrZWQKKysgICAgICAgIEdyYXBoaWNzQ29u
dGV4dEdMIGRlZmF1bHQgZnJhbWVidWZmZXIgYm91bmQgdGV4dHVyZXMgaWYgZ2xDbGVhciB3YXMg
Y2FsbGVkLgorKworKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvQ29udGV4
dE10bC5tbToKKysgICAgICAgIChyeDo6Q29udGV4dE10bDo6Z2V0UmVuZGVyUGFzc0NvbW1hbmRF
bmNvZGVyKToKKysKKysyMDIxLTEyLTE2ICBKb2huIEN1bm5pbmdoYW0gIDxqb2huY3VubmluZ2hh
bUBhcHBsZS5jb20+CisrCisrICAgICAgICBBZGQgc3VwcG9ydCB0byBhdHRyaWJ1dGUgb3duZXJz
aGlwIG9mIEFOR0xFIE1ldGFsJ3MgcmVzb3VyY2VzCisrICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMzOTQxCisrCisrICAgICAgICBSZXZpZXdlZCBieSBL
aW1tbyBLaW5udW5lbi4KKysKKysgICAgICAgIEFkZCBTUEkgdG8gbXRsX3Jlc291cmNlX3NwaS5o
IHRvIGF0dHJpYnV0ZSBtZW1vcnkgdG8gYW5vdGhlciB0YXNrLgorKworKyAgICAgICAgKiBDb25m
aWd1cmF0aW9ucy9BTkdMRS1keW5hbWljLnhjY29uZmlnOgorKyAgICAgICAgKiBDb25maWd1cmF0
aW9ucy9BTkdMRS1zdGF0aWMueGNjb25maWc6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5k
ZXJlci9tZXRhbC9tdGxfcmVzb3VyY2Vfc3BpLmg6CisrICAgICAgICAocng6Om10bDo6c2V0T3du
ZXJXaXRoSWRlbnRpdHkpOgorKworKzIwMjEtMTItMTYgIE1pY2hhZWwgU2Fib2ZmICA8bXNhYm9m
ZkBhcHBsZS5jb20+CisrCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MjM0MTczCisrICAgICAgICBVcGRhdGUgSW5zdGFsbCBQYXRocyBmb3IgYnVpbGQg
c3lzdGVtIGNoYW5nZXMKKysKKysgICAgICAgIFJldmlld2VkIGJ5IEZpbGlwIFBpemxvLgorKwor
KyAgICAgICAgQWRkZWQgYnVpbGQgdmFyaWFibGVzIGFuZCBidWlsZCBzdGVwIHRvIGNyZWF0ZSBz
eW1saW5rcyBwb2ludGluZyB0byB0aGUgYWx0ZXJuYXRlCisrICAgICAgICBidWlsZCBsb2NhdGlv
bnMgZnJvbSB0aGUgY3VycmVudCBmcmFtZXdvcmsgaW5zdGFsbCBsb2NhdGlvbi4KKysKKysgICAg
ICAgICogQU5HTEUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKysgICAgICAgICogQ29uZmln
dXJhdGlvbnMvQU5HTEUtZHluYW1pYy54Y2NvbmZpZzoKKysgICAgICAgICogc2NyaXB0cy9jcmVh
dGUtc3ltbGluay10by1hbHRyb290LnNoOiBBZGRlZC4KKysKKysyMDIxLTEyLTE1ICBEZWFuIEph
Y2tzb24gIDxkaW5vQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFtBTkdMRV0gY2xhbmcgd2l0aCAt
V3Vua25vd24td2FybmluZy1vcHRpb24gd2lsbCBmYWlsIG9uIC1Xd2Vhay10ZW1wbGF0ZS12dGFi
bGVzCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMz
ODM3CisrICAgICAgICA8cmRhcjovL3Byb2JsZW0vODYzMzU4MTk+CisrCisrICAgICAgICBSZXZp
ZXdlZCBieSBBbnRvaW5lIFF1aW50LgorKworKyAgICAgICAgVHVybiBvZmYgdW5rbm93bi13YXJu
aW5nLW9wdGlvbiBvbiBBcHBsZSBidWlsZHMuIFRoaXMgc2hvdWxkbid0IG5lZWQgdG8gYmUKKysg
ICAgICAgIHVwc3RyZWFtZWQgLSB0aGUgWGNvZGUgY29uZmlndXJhdGlvbnMgZm9yIEFOR0xFIGFy
ZSBzcGVjaWZpYyB0byBXZWJLaXQuCisrCisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0Jhc2Uu
eGNjb25maWc6CisrCisrMjAyMS0xMi0xNSAgQ2hyaXMgTG9yZCAgPGNsb3JkQGlnYWxpYS5jb20+
CisrCisrICAgICAgICBbR1RLXSBVc2UgbGliZ2JtIGFuZCB0aGUgQU5HTEUgZ2JtIGJhY2tlbmQg
dG8gZml4IGluaXRpYWxpc2F0aW9uCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MjM0MjkzCisrCisrICAgICAgICBSZXZpZXdlZCBieSBEb24gT2xtc3Rl
YWQuCisrCisrICAgICAgICBVc2UgR0JNIGJhY2tlbmQgZm9yIEdUSyBwbGF0Zm9ybS4KKysKKysg
ICAgICAgICogQ01ha2VMaXN0cy50eHQ6CisrICAgICAgICAqIEdMLmNtYWtlOgorKyAgICAgICAg
KiBQbGF0Zm9ybUdUSy5jbWFrZToKKysKKysyMDIxLTEyLTE1ICBLeWxlIFBpZGRpbmd0b24gIDxr
cGlkZGluZ3RvbkBhcHBsZS5jb20+CisrCisrICAgICAgICBbQU5HTEVdIFJvbGwgQU5HTEUgdG8g
MTItMTQtMjAyMSAoNWVlN2RmYmQ1YTMpCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MjM0MzE3CisrCisrICAgICAgICBSZXZpZXdlZCBieSBLZW5uZXRo
IFJ1c3NlbGwuCisrCisrICAgICAgICBSb2xsIEFOR0xFIHRvIDEyLTE0LTIwMjEgdG8gaW5jbHVk
ZSBuZXcgbWVtb3J5LWF0dHJpYnV0aW9uCisrICAgICAgICBNZXRhbCBkZXZpY2UsIG1lcmdlIHVw
IGZpeGVzLCBFQUMvIEFTVEMgc3VwcG9ydCBvbiBNMQorKworKyAgICAgICAgVGhlIGNoYW5nZWxv
ZyBoYXMgYmVlbiByZW1vdmVkIHRvIHByb21vdGUgcmVhZGFiaWxpdHkgICAgICAgCisrCisrMjAy
MS0xMi0xMyAgQWxlamFuZHJvIEcuIENhc3RybyAgPGFsZXhAaWdhbGlhLmNvbT4KKysKKysgICAg
ICAgIFtHVEtdIEZpeCBBTkdMRSBjb21waWxhdGlvbgorKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMzMyNworKworKyAgICAgICAgUmV2aWV3ZWQgYnkg
S2VubmV0aCBSdXNzZWxsLgorKworKyAgICAgICAgVGhlcmUgaXMgYSBkZWZpbmUgd2l0aCBhIHR5
cG8gaW4gdGhlIG5hbWUgYW5kIGFjdGl2YXRpbmcgRUdMIGFuZAorKyAgICAgICAgWDExIGRvZXMg
bm90IHdvcmsgYXQgdGhlIHNhbWUgdGltZS4KKysKKysgICAgICAgICogUGxhdGZvcm1HVEsuY21h
a2U6CisrCisrMjAyMS0xMi0xMyAgS3lsZSBQaWRkaW5ndG9uICA8a3BpZGRpbmd0b25AYXBwbGUu
Y29tPgorKworKyAgICAgICAgW01hY0NhdGFseXN0XSBmaXggaU9TTWFjIGFmdGVyIHJlZmFjdG9y
IGluIHIyODY4OTkKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMzQyNTAKKysKKysgICAgICAgIFJldmlld2VkIGJ5IERlYW4gSmFja3Nvbi4KKysKKysg
ICAgICAgIEFsc28gaW5jbHVkZXMgYSBsb25nZXIgdGVybSBmaXggZm9yIAorKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMzk3NworKworKyAgICAgICAg
VGVzdGVkIGJ1aWxkcyBvbiBtYWMsIGlPUywgVFYgU0RLcywgcGx1cyBpT1NNYWMKKysKKysgICAg
ICAgICogc3JjL2NvbW1vbi9wbGF0Zm9ybS5oOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVu
ZGVyZXIvbWV0YWwvZ2VuX210bF9mb3JtYXRfdGFibGUucHk6CisrICAgICAgICAoZ2VuX2ltYWdl
X21hcF9zd2l0Y2hfc3RyaW5nKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21l
dGFsL210bF9mb3JtYXRfdGFibGVfYXV0b2dlbi5tbToKKysgICAgICAgIChyeDo6bXRsOjpGb3Jt
YXQ6OmluaXQpOgorKworKzIwMjEtMTItMTMgIEtpbW1vIEtpbm51bmVuICA8a2tpbm51bmVuQGFw
cGxlLmNvbT4KKysKKysgICAgICAgIFJFR1JFU1NJT04oU2FmYXJpIDE1LCBCaWdTdXIpOiBQb29y
IHZpZGVvIHRleHR1cmUgdXBsb2FkIHBlcmZvcm1hbmNlIHdpdGggTWFjQm9vayBNMSwgQU5HTEUg
T3BlbkdMIGJhY2tlbmQgCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MjMyMjM1CisrICAgICAgICA8cmRhcjovL3Byb2JsZW0vODQ4Nzg4MTU+CisrICAg
ICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisrCisrICAgICAgICBSZW1vdmUgdmFsaWRh
dGlvbiBmb3IgSU9TdXJmYWNlIGVsZW1lbnQgc2l6ZSB3aGVuIGEgSU9TdXJmYWNlIGlzIGJvdW5k
CisrICAgICAgICB0byBhIHBidWZmZXIuIFRoZSBJT1N1cmZhY2VHZXRCeXRlc1BlckVsZW1lbnRP
ZlBsYW5lIGlzIG5vdCB2YWxpZCBmb3Igc29tZSBpbnRlcm5hbCBmb3JtYXRzCisrICAgICAgICB0
aGF0IG1pZ2h0IGJlIGNvbXByZXNzZWQuCisrCisrICAgICAgICBXaWxsIGFkZCBhIFdlYktpdCBs
ZXZlbCB0ZXN0IGluIHN1YnNlcXVlbnQgZml4LgorKyAgICAgICAgV2lsbCBhZGQgYW4gQU5HTEUg
bGV2ZWwgdGVzdCBkdXJpbmcgdXBzdHJlYW1pbmcgb2YgdGhlIHBhdGNoLgorKworKyAgICAgICAg
U2FtZSBhcyAiVGV4dHVyZXMgRmFpbCB0byBSZW5kZXIgaW4gV2ViR0wgZnJvbSBITFMgU3RyZWFt
IG9uIGlQaG9uZSAxMiBbaU9TIDE0LjJdIgorKyAgICAgICAgYnV0IHRoaXMgdGltZSBmb3IgQ0dM
LgorKyAgICAgICAgaHR0cHM6Ly93ZWJraXQub3JnL2IvMjE4NjM3ICByZGFyOi8vcHJvYmxlbS83
MTEwMjEyNgorKworKyAgICAgICAgUmVtb3ZlIGluY29ycmVjdCB2YWxpZGF0aW9uIHRoYXQgSU9T
dXJmYWNlIHBpeGVsIGZvcm1hdCBtYXRjaGVzCisrICAgICAgICB0aGUgcGl4ZWwgZm9ybWF0IG9m
IHRoZSB0ZXh0dXJlIGltYWdlIGJlaW5nIHNwZWNpZmllZC4KKysKKysgICAgICAgIFRoZSAiRWxl
bWVudCIgaW4gSU9TdXJmYWNlIGlzIGEgYmxvY2sgb2YgcGl4ZWxzLCB3aGlsZSB0aGUgdmFsaWRh
dGlvbiBhc3N1bWVkCisrICAgICAgICBpdCBtZWFucyBvbmUgcGl4ZWwuIFRoZSB2YWxpZGF0aW9u
IGZhaWxlZCBmb3IgYSBjb21wcmVzc2VkIGZvcm1hdC4KKysKKysgICAgICAgIEN1cnJlbnRseSB3
ZSBtYXAgbm9uLXB1YmxpYyBZVVYgZm9ybWF0cywgdG8gd2hpY2ggdGhlcmUgaXMgbm8gZWxlcXVl
bnQgd2F5CisrICAgICAgICBvZiBpbXBsZW1lbnRpbmcgdGhlIHZhbGlkYXRpb24uCisrCisrCisr
ICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvSU9TdXJmYWNlU3VyZmFjZUNH
TC5jcHA6CisrICAgICAgICAocng6OklPU3VyZmFjZVN1cmZhY2VDR0w6OnZhbGlkYXRlQXR0cmli
dXRlcyk6CisrCisrMjAyMS0xMi0xMCAgS3lsZSBQaWRkaW5ndG9uICA8a3BpZGRpbmd0b25AYXBw
bGUuY29tPgorKworKyAgICAgICAgW0FOR0xFXSBBU1RDLUhEUiBpcyB1bmF2YWlsYWJsZSBvbiBz
b21lIHBsYXRmb3JtcworKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIzNDE2NAorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgS2VubmV0aCBSdXNzZWxsLgor
KworKyAgICAgICAgVXBkYXRlIGF1dG9nZW5lcmF0ZWQgZm9ybWF0IHRhYmxlIHRvIGF2b2lkIHVz
aW5nIEFTVENfSERSIG9uCisrICAgICAgICBwbGF0Zm9ybXMgdGhhdCBkb24ndCBoYXZlIHRoZSBl
bnVtLiAKKysKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL2dlbl9tdGxf
Zm9ybWF0X3RhYmxlLnB5OgorKyAgICAgICAgKGdlbl9pbWFnZV9tYXBfc3dpdGNoX2FzdGNfY2Fz
ZV9pb3NtYWMpOgorKyAgICAgICAgKGdlbl9pbWFnZV9tYXBfc3dpdGNoX2FzdGNfY2FzZV90dm9z
KToKKysgICAgICAgIChnZW5faW1hZ2VfbWFwX3N3aXRjaF9hc3RjX2Nhc2VfdHZvcy5nZW5fZm9y
bWF0X2Fzc2lnbl9jb2RlKToKKysgICAgICAgIChnZW5faW1hZ2VfbWFwX3N3aXRjaF9zdHJpbmcp
OgorKyAgICAgICAgKGdlbl9pbWFnZV9tdGxfdG9fYW5nbGVfc3dpdGNoX3N0cmluZyk6CisrICAg
ICAgICAoZ2VuX210bF9mb3JtYXRfY2Fwc19pbml0X3N0cmluZyk6CisrICAgICAgICAoZ2VuX2lt
YWdlX21hcF9zd2l0Y2hfYXN0Y19jYXNlKTogRGVsZXRlZC4KKysgICAgICAgIChnZW5faW1hZ2Vf
bWFwX3N3aXRjaF9hc3RjX2Nhc2UuZ2VuX2Zvcm1hdF9hc3NpZ25fY29kZSk6IERlbGV0ZWQuCisr
ICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9tdGxfZm9ybWF0X21hcC5qc29u
OgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX2Zvcm1hdF90YWJs
ZV9hdXRvZ2VuLm1tOgorKyAgICAgICAgKHJ4OjptdGw6OkZvcm1hdDo6TWV0YWxUb0FuZ2xlRm9y
bWF0SUQpOgorKyAgICAgICAgKHJ4OjptdGw6OkZvcm1hdDo6aW5pdCk6CisrICAgICAgICAocng6
Om10bDo6Rm9ybWF0VGFibGU6OmluaXROYXRpdmVGb3JtYXRDYXBzQXV0b2dlbik6CisrCisrMjAy
MS0xMi0xMCAgTWljaGFlbCBTYWJvZmYgIDxtc2Fib2ZmQGFwcGxlLmNvbT4KKysKKysgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzQxNzMKKysgICAgICAg
IFVwZGF0ZSBJbnN0YWxsIFBhdGhzIGZvciBidWlsZCBzeXN0ZW0gY2hhbmdlcworKworKyAgICAg
ICAgUmV2aWV3ZWQgYnkgWXVzdWtlIFN1enVraS4KKysKKysgICAgICAgIFVwZGF0ZWQgaW5zdGFs
bCBwYXRocyBmb3IgY2hhbmdlcyBpbiB0aGUgYnVpbGQgc3lzdGVtIHRoYXQgdXNlIGEgc3lzdGVt
IHBhdGggcHJlZml4LgorKworKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9BTkdMRS1keW5hbWlj
LnhjY29uZmlnOgorKworKzIwMjEtMTItMDkgIERlYW4gSmFja3NvbiAgPGRpbm9AYXBwbGUuY29t
PgorKworKyAgICAgICAgW0FOR0xFXSBDb2RlIGdlbmVyYXRpb24gaGFwcGVucyBvbiBlYWNoIGJ1
aWxkIGFuZCBwcm9kdWNlcyBTQ00gZGlmZnMKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0yMzQwMjUKKysKKysgICAgICAgIFJldmlld2VkIGJ5IEtpbW1v
IEtpbm51bmVuLgorKworKyAgICAgICAgVGVtcG9yYXJpbHkgcmVtb3ZlIHRoZSBidWlsZCBwaGFz
ZSB0aGF0IGdlbmVyYXRlcyB0aGUKKysgICAgICAgIG10bF9kZWZhdWx0X3NoYWRlcnNfc3JjX2F1
dG9nZW4gZmlsZXMgYmVjYXVzZSB0aGV5IGFyZSBwcm9kdWNpbmcKKysgICAgICAgIGRpZmZzLgor
KworKyAgICAgICAgV2UgZWl0aGVyIG5lZWQgdG8gZ2VuZXJhdGUgdGhlc2UgbWFudWFsbHksIG9y
IGZpeCB0aGUgWGNvZGUgcHJvamVjdAorKyAgICAgICAgdG8gZ2VuZXJhdGUgdGhlbSBpbnRvIERl
cml2ZWQgU291cmNlcyBzbyB0aGV5IGRvbid0IGFwcGVhciBpbiBvdXIKKysgICAgICAgIHJlcG9z
aXRvcnkuCisrCisrICAgICAgICAqIEFOR0xFLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6Cisr
CisrMjAyMS0xMi0wOCAgS3lsZSBQaWRkaW5ndG9uICA8a3BpZGRpbmd0b25AYXBwbGUuY29tPgor
KworKyAgICAgICAgVXBkYXRlIEFOR0xFIGNoYW5nZXMuZGlmZiB3aXRoIG5ldyByb2xsLgorKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMzk1MgorKwor
KyAgICAgICAgUmV2aWV3ZWQgYnkgS2VubmV0aCBSdXNzZWxsLgorKworKyAgICAgICAgKiBjaGFu
Z2VzLmRpZmY6CisrCisrMjAyMS0xMi0wOCAgQWRyaWFuIFBlcmV6IGRlIENhc3RybyAgPGFwZXJl
ekBpZ2FsaWEuY29tPgorKworKyAgICAgICAgQXZvaWQgbm9pc3kgV2NvbW1lbnQgd2FybmluZ3Mg
YWZ0ZXIgQU5HTEUgdXBkYXRlIGluIHIyODY2MDMKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzM5NjQKKysgICAgICAgIDxyZGFyOi8vcHJvYmxlbS84
NjE4NjQ1NT4KKysKKysgICAgICAgIFJldmlld2VkIGJ5IE1pY2hhZWwgQ2F0YW56YXJvLgorKwor
KyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDogUGFzcyBhbHNvIC1Xbm8tY29tbWVudCB3aGVuIGJ1
aWxkaW5nIHdpdGggR0NDIG9yIENsYW5nOyBhcnJhbmdlIHRvCisrICAgICAgICBzZXQgY29tcGls
ZXIgZmxhZ3MgZm9yIGFueSBvZiB0aGUgQU5HTEUgbGlicmFyeSB0YXJnZXRzIGluc3RlYWQgb2Yg
b25seSBmb3IgbGliQU5HTEUuCisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL3Ry
ZWVfdXRpbC9JbnRlcm1UcmF2ZXJzZS5oOiBSZXZlcnQgY2hhbmdlIGZyb20gMjMzOTY0IHRvCisr
ICAgICAgICBhdm9pZCBoYXZpbmcgZGlmZmVyZW5jZXMgd2l0aCB0aGUgdXBzdHJlYW0gdmVyc2lv
biBvZiB0aGUgZmlsZS4KKysKKysyMDIxLTEyLTA3ICBNeWxlcyBDLiBNYXhmaWVsZCAgPG1tYXhm
aWVsZEBhcHBsZS5jb20+CisrCisrICAgICAgICBbTWFjQ2F0YWx5c3RdIEZpeCBidWlsZCBhZnRl
ciByMjg2NjAzCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MjMzOTc3CisrCisrICAgICAgICBVbnJldmlld2VkLgorKworKyAgICAgICAgUHJldmlvdXNs
eSwgVEFSR0VUX09TX0lPUyBhbmQgVEFSR0VUX09TX01BQ0NBVEFMWVNUIHdlcmUgbmV2ZXIgb24g
YXQgdGhlIHNhbWUgdGltZS4KKysgICAgICAgIE5vdywgdGhleSdyZSBvbiBhdCB0aGUgc2FtZSB0
aW1lLCBhbmQgQU5HTEUgZG9lc24ndCBleHBlY3QgdGhhdC4gVGhpcyBwYXRjaCB0dXJucworKyAg
ICAgICAgb2ZmIFRBUkdFVF9PU19JT1Mgd2hlbiBUQVJHRVRfT1NfTUFDQ0FUQUxZU1QgaXMgb24s
IGp1c3QgdG8gZ2V0IEFOR0xFIHRvIGJ1aWxkLgorKyAgICAgICAgVGhlIGxvbmctdGVybSBmaXgg
aXMgdG8gZWl0aGVyIHVwZGF0ZSBhbGwgdGhlIHNpdGVzIHRvIHVzZSBjb3JyZWN0IG1hY3Jvcywg
b3IgdG8KKysgICAgICAgIHVzZSB0aGUgQU5HTEVfUExBVEZPUk1fKiBkZWZpbmVzIGluc3RlYWQu
CisrCisrICAgICAgICAqIHNyYy9jb21tb24vcGxhdGZvcm0uaDoKKysKKysyMDIxLTEyLTA3ICBZ
dXN1a2UgU3V6dWtpICA8eXN1enVraUBhcHBsZS5jb20+CisrCisrICAgICAgICBVbnJldmlld2Vk
LCB0aGVzZSBmaWxlcyBhcmUgbW9kaWZpZWQgYWZ0ZXIgYnVpbGRpbmcgQU5HTEUKKysgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjA4OTYKKysgICAgICAg
IDxyZGFyOi8vcHJvYmxlbS83MzUzOTY4Mj4KKysKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3Jl
bmRlcmVyL21ldGFsL3NoYWRlcnMvbXRsX2RlZmF1bHRfc2hhZGVyc19zcmNfYXV0b2dlbi5pbmM6
CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9zaGFkZXJzL210bF9kZWZh
dWx0X3NoYWRlcnNfc3JjX2F1dG9nZW4ubWV0YWw6CisrCisrMjAyMS0xMi0wNyAgTGF1cm8gTW91
cmEgIDxsbW91cmFAaWdhbGlhLmNvbT4KKysKKysgICAgICAgIEF2b2lkIG5vaXN5IFdjb21tZW50
IHdhcm5pbmdzIGFmdGVyIEFOR0xFIHVwZGF0ZSBpbiByMjg2NjAzCisrICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMzOTY0CisrCisrICAgICAgICBVbnJl
dmlld2VkIHdhcm5pbmcgcmVtb3ZhbC4KKysKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5z
bGF0b3IvdHJlZV91dGlsL0ludGVybVRyYXZlcnNlLmg6CisrCisrMjAyMS0xMi0wNyAgS3lsZSBQ
aWRkaW5ndG9uICA8a3BpZGRpbmd0b25AYXBwbGUuY29tPgorKyAgICAgICAgCisrICAgICAgICBS
b2xsIEFOR0xFIHRvIGluY2x1ZGUgdXBzdHJlYW1lZCBNZXRhbCBiYWNrZW5kCisrICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIwODk2CisrICAgICAgICA8
cmRhcjovL3Byb2JsZW0vNzM1Mzk2ODI+CisrCisrICAgICAgICBSZXZpZXdlZCBieSBLZW4gUnVz
c2VsbCBhbmQgRGVhbiBKYWNrc29uLgorKworKyAgICAgICAgVXBkYXRlIEFOR0xFIHRvIGNlODU0
NjMyNjkwZTUwNTU1MTQxNGY4MGQwMWQ4NjRkZjYxMTg4ODIKKysgICAgICAgIAorKyAgICAgICAg
VGhlIGNoYW5nZWxvZyBoYXMgYmVlbiBpbnRlbnRpb25hbGx5IGRlbGV0ZWQgdG8gcHJlc2VydmUK
KysgICAgICAgIHJlYWRhYmlsaXR5CisrICAgICAgIAorKyAgICAgICAgVGhlIGZvbGxvd2luZyBh
ZGRpdGlvbmFsIGNoYW5nZXMgd2VyZSBtYWRlIGluIHRoZSBtZXJnZXVwLgorKworKyAgICAgICAg
VXBkYXRlIFNoYWRlck10bCBnZXQgZGVidWcgaW5mbyB0byByZXR1cm4gdHJhbnNsYXRlZCBzb3Vy
Y2UuCisrICAgICAgICAKKysgICAgICAgIEZpeCBjcmFzaGVzIGluIHdlYmdsLzIuMC55L2NvbmZv
cm1hbmNlL2V4dGVuc2lvbnMvd2ViZ2wtY29tcHJlc3NlZC10ZXh0dXJlLXMzdGMtc3JnYi5odG1s
CisrICAgICAgICBGaXggYW5nbGUtaW5zdGFuY2VkLWFycmF5cy1vdXQtb2YtYm91bmRzLmh0bWwK
KysgICAgICAgIFNraXAgYWRkaXRpb25hbCB2YWxpZGF0aW9uIHdoZW4gcHJpbWl0aXZlIGNvdW50
IGluIGRyYXdBcnJheXNJbnN0YW5jZWQgaXMgemVybworKworKworKyAgICAgICAgRml4IENsZWFy
LUludmFsaWRhdGUtUmVuZGVyIGJ1ZyBmb3IgbXVsdGlzYW1wbGUgYXR0YWNobWVudHMuIAorKyAg
ICAgICAgQ2xlYXJpbmcgYSBtdWx0aXNhbXBsZSB0ZXh0dXJlLCBhbmQgdGhlbiBpbnZhbGlkYXRp
bmcgdGhlIHJlbmRlciBwYXNzIHdvdWxkIGxlYWQKKysgICAgICAgIHRvIHRoZSBuZXh0IHBhc3Mg
bm90IGxvYWRpbmcgdGhlIGNsZWFyZWQgdGV4dHVyZS4KKysKKysgICAgICAgIEZpeCBleHBvcnRz
IGFuZCBpbmNsdWRlcyBmb3IgZWdsX2F1dG9nZW4uaCBmaWxlcy4KKysKKysgICAgICAgIEZpeCB3
ZWJnbC8yLjAuMC9kZXFwL2Z1bmN0aW9uYWwvZ2xlczMvZmJvaW52YWxpZGF0ZS9kZWZhdWx0Lmh0
bWwgCisrICAgICAgICBBZGQgc3luY2hyb25pemF0aW9uIHdoZW4gcmVhZGluZyBwaXhlbHMgYmFj
ayBmcm9tIHNoYXJlZCBmcmFtZWJ1ZmZlcnMKKysKKysyMDIxLTExLTMwICBLeWxlIFBpZGRpbmd0
b24gIDxrcGlkZGluZ3RvbkBhcHBsZS5jb20+CisrCisrICAgICAgICBIYXJkd2FyZSBQQ0YgZmls
dGVyaW5nIGRvZXMgbm90IHdvcmsgb24gaU9TIDE1IHdoZW4gdXNpbmcgV2ViR0wyCisrICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMyMDcxCisrCisrCUxv
d2VyIHJlc3RyaWN0aW9ucyBvbiBzYW1wbGluZyBEMzJGIGZvcm1hdHMsIGFuZCBhbGxvdyBmaWx0
ZXJpbmcKKysJb2YgRGVwdGgxNkYgb24gaU9TIGhhcmR3YXJlLCBhcyBpdCB3YXMgcHJldmlvdXNs
eSByZXN0cmljdGVkLgorKwkKKysgICAgICAgIFJldmlld2VkIGJ5IEtlbm5ldGggUnVzc2VsbC4K
KysKKysgICAgICAgICogaW5jbHVkZS9wbGF0Zm9ybS9GZWF0dXJlc010bC5oOgorKyAgICAgICAg
KiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvRGlzcGxheU10bC5oOgorKyAgICAgICAgKiBz
cmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvRGlzcGxheU10bC5tbToKKysgICAgICAgIChyeDo6
RGlzcGxheU10bDo6aW5pdGlhbGl6ZUZlYXR1cmVzKToKKysgICAgICAgIChyeDo6RGlzcGxheU10
bDo6c3VwcG9ydHMzMkJpdEZsb2F0RmlsdGVyaW5nIGNvbnN0KToKKysgICAgICAgIChyeDo6RGlz
cGxheU10bDo6c3VwcG9ydHNEZXB0aDI0U3RlbmNpbDhQaXhlbEZvcm1hdCBjb25zdCk6CisrICAg
ICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9UZXh0dXJlTXRsLm1tOgorKyAgICAg
ICAgKHJ4OjpUZXh0dXJlTXRsOjplbnN1cmVTYW1wbGVyU3RhdGVDcmVhdGVkKToKKysgICAgICAg
ICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF9mb3JtYXRfbWFwLmpzb246CisrICAg
ICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9tdGxfZm9ybWF0X3RhYmxlX2F1dG9n
ZW4ubW06CisrICAgICAgICAocng6Om10bDo6Rm9ybWF0VGFibGU6OmluaXROYXRpdmVGb3JtYXRD
YXBzQXV0b2dlbik6CisrCisrMjAyMS0xMS0xNyAgRGVhbiBKYWNrc29uICA8ZGlub0BhcHBsZS5j
b20+CisrCisrICAgICAgICBBTkdMRSBidWlsZCBmYWlsdXJlIC0gc3ByaW50ZiBpcyBkZXByZWNh
dGVkCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMz
Mjc5CisrCisrICAgICAgICBSZXZpZXdlZCBieSBXZW5zb24gSHNpZWguCisrCisrICAgICAgICBS
ZXBsYWNlIHNwcmludGYgd2l0aCBzbnByaW50Zi4KKysKKysgICAgICAgICogc3JjL2NvbXBpbGVy
L3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0L0lkR2VuLmNwcDoKKysgICAgICAgIChJ
ZEdlbjo6Y3JlYXRlTmV3TmFtZSk6CisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9y
L1RyYW5zbGF0b3JNZXRhbERpcmVjdC9Nb2RpZnlTdHJ1Y3QuY3BwOgorKyAgICAgICAgKiBzcmMv
Y29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QvU3ltYm9sRW52LmNwcDoK
KysgICAgICAgIChTeW1ib2xFbnY6OlRlbXBsYXRlTmFtZTo6ZnVsbE5hbWUgY29uc3QpOgorKwor
KzIwMjEtMTEtMDYgIERhdmlkIEtpbHplciAgPGRka2lsemVyQGFwcGxlLmNvbT4KKysKKysgICAg
ICAgIFJlbW92ZSBlbXB0eSBkaXJlY3RvcmllcyBmcm9tIGZyb20gc3ZuLndlYmtpdC5vcmcgcmVw
b3NpdG9yeSBhcyBvZiByMjg1MzU3CisrICAgICAgICA8aHR0cHM6Ly93ZWJraXQub3JnL2IvMjMy
NzczPgorKworKyAgICAgICAgVW5yZXZpZXdlZCBjbGVhbiB1cC4KKysKKysgICAgICAgICogc3Jj
L2lkOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvc2hh
ZGVycy9jb21waWxlZDogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL3Rlc3RzL3BlcmZfdGVzdHMv
cmVzdHJpY3RlZF90cmFjZXM6IFJlbW92ZWQuCisrCisrMjAyMS0xMS0wMyAgS3lsZSBQaWRkaW5n
dG9uICA8a3BpZGRpbmd0b25AYXBwbGUuY29tPgorKworKyAgICAgICAgUkVHUkVTU0lPTiAoaU9T
IDE1KTogVGFiIGNyYXNoZXMgd2hlbiB0cnlpbmcgdG8gcmVuZGVyIFByb2plY3RvciBzdG9yaWVz
CisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMxNjA3
CisrCisrCVJld29yayB2ZXJ0ZXggYnVmZmVyIGNhY2hpbmcgdG8gYWxsb3cgdXMgdG8gcmV1c2Ug
cGFydHMKKysJb2YgY29udmVydGVkIGJ1ZmZlcnMuIFRoaXMgZHJhbWF0aWNhbGx5IGRyb3BzIHRo
ZSBtZW1vcnkgdXNhZ2UgCisrCW9mIHRoaXMgdGFiIGZyb20gNC41IGdiIHRvIHJvdWdobHkgMS4z
Z2IKKysKKysgICAgICAgIFJldmlld2VkIGJ5IERlYW4gSmFja3Nvbi4KKysKKysgICAgICAgICog
c3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL0J1ZmZlck10bC5tbToKKysgICAgICAgIChyeDo6
QnVmZmVyTXRsOjpnZXRWZXJ0ZXhDb252ZXJzaW9uQnVmZmVyKToKKysgICAgICAgICogc3JjL2xp
YkFOR0xFL3JlbmRlcmVyL21ldGFsL1ZlcnRleEFycmF5TXRsLm1tOgorKyAgICAgICAgKHJ4OjpW
ZXJ0ZXhBcnJheU10bDo6Y29udmVydFZlcnRleEJ1ZmZlcik6CisrICAgICAgICAocng6OlZlcnRl
eEFycmF5TXRsOjpjb252ZXJ0VmVydGV4QnVmZmVyQ1BVKToKKysgICAgICAgIChyeDo6VmVydGV4
QXJyYXlNdGw6OmNvbnZlcnRWZXJ0ZXhCdWZmZXJHUFUpOgorKworKzIwMjEtMTEtMDEgIERhdmlk
IEtpbHplciAgPGRka2lsemVyQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFtBTkdMRV0gRW5hYmxl
IC1XZm9ybWF0PTIgd2FybmluZ3MKKysgICAgICAgIDxodHRwczovL3dlYmtpdC5vcmcvYi8yMzIz
NTg+CisrICAgICAgICA8cmRhcjovL3Byb2JsZW0vODQ1Njg5MzU+CisrCisrICAgICAgICBSZXZp
ZXdlZCBieSBLaW1tbyBLaW5udW5lbi4KKysKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMvQmFz
ZS54Y2NvbmZpZzoKKysgICAgICAgIChXQVJOSU5HX0NGTEFHUyk6CisrICAgICAgICAtIEFkZCAt
V2Zvcm1hdD0yIHN3aXRjaCwgd2hpY2ggaW5jbHVkZXMgLVdmb3JtYXQtbm9ubGl0ZXJhbC4KKysg
ICAgICAgICogc3JjL2NvbW1vbi9hbmdsZXV0aWxzLmg6CisrICAgICAgICAoRm9ybWF0U3RyaW5n
SW50b1ZlY3Rvcik6CisrICAgICAgICAtIE1vdmUgYmVsb3cgZGVmaW5pdGlvbiBvZiBBTkdMRV9G
T1JNQVRfUFJJTlRGKCkgYW5kIGFkZCBtYWNybworKyAgICAgICAgICB0byB0aGUgZnVuY3Rpb24g
ZGVjbGFyYXRpb24gdG8gZml4IC1XZm9ybWF0LW5vbmxpdGVyYWwKKysgICAgICAgICAgd2Fybmlu
Zy4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvQ29tbW9uLmg6CisrICAgICAg
ICAoc2g6OnN0cik6CisrICAgICAgICAtIE1ha2UgYGZvcm1hdFN0cmAgYSBjb25zdGV4cHIgdG8g
Zml4IC1XZm9ybWF0LW5vbmxpdGVyYWwKKysgICAgICAgICAgd2FybmluZy4KKysKKysyMDIxLTEw
LTI3ICBLaW1tbyBLaW5udW5lbiAgPGtraW5udW5lbkBhcHBsZS5jb20+CisrCisrICAgICAgICBS
RUdSRVNTSU9OIChTYWZhcmkgMTUpOiBQb29yIFdlYkdMIHBlcmZvcm1hbmNlIG9uIGh0dHBzOi8v
ZG93bmxvYWRzLnNjaXJyYS5jb20vbGFicy9wYXJ0aWNsZXMKKysgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzA3NDkKKysgICAgICAgIDxyZGFyOi8vcHJv
YmxlbS84MzU3NjI3MT4KKysKKysgICAgICAgIFJldmlld2VkIGJ5IEtlbm5ldGggUnVzc2VsbC4K
KysKKysgICAgICAgIFRoZSBzaXRlIHdvdWxkIGRyYXcgaW5kZXhlZCBwZXIgZnJhbWUgd2l0aCBl
YWNoIGZyYW1lIGluY3JlYXNpbmcgdGhlIHNpemUgb2YgdGhlIGRyYXcuCisrICAgICAgICBUaGlz
IHdvdWxkIGNhdXNlIGluZGV4IGJ1ZmZlciByYW5nZSBjYWNoZSB1cGRhdGUgZm9yIGVhY2ggZHJh
dy4KKysgICAgICAgIFJhbmdlIGNvbXB1dGF0aW9uIG5lZWRzIHRvIGxvb2sgaW5zaWRlIHRoZSBp
bmRleCBidWZmZXIuCisrICAgICAgICBNYXBwaW5nIHRoZSBpbmRleCBidWZmZXIgZm9yIHJlYWQg
d291bGQgY2F1c2UgY29tbWFuZCBidWZmZXIgZmx1c2ggZm9yIGVhY2ggY29tcHV0YXRpb24sCisr
ICAgICAgICBzaW5jZSBwcmV2aW91cyBmcmFtZSB3b3VsZCBoYXZlIHVzZWQgdGhlIGluZGV4IGJ1
ZmZlciBmb3IgcmVhZGluZy4gVGhpcyB3b3VsZCBjYXVzZQorKyAgICAgICAgcGVyZm9ybWFuY2Ug
ZGVncmFkYXRpb24gZm9yIHRoZSBkdXJhdGlvbiB3aGVyZSB0aGUgcmFuZ2UgY2FjaGUgd291bGQg
bmVlZCB1cGRhdGUuCisrCisrICAgICAgICBTaW5jZSB0aGUgYnVmZmVyIGlzIHJlYWQgYnkgdGhl
IGRyYXcgYnV0IG5vdCB3cml0dGVuLCB0aGUgbWFwIHNob3VsZCBiZSBhIG5vLW9wLgorKyAgICAg
ICAgQ29uc3VsdCB0aGUgIkNQVSBtZW1vcnkgbmVlZHMgc3luY2hyb25pemluZyIgZmxhZyBvZiB0
aGUgbXRsOjpSZXNvdXJjZSB3aGVuCisrICAgICAgICBtYXBwaW5nLiBPbmx5IHN5bmNocm9uaXpl
IHdpdGggR1BVIGlmIHRoZSBtZW1vcnkgbmVlZHMgc3luY2hyb25pemluZy4KKysKKysgICAgICAg
ICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF9yZXNvdXJjZXMubW06CisrICAgICAg
ICAocng6Om10bDo6QnVmZmVyOjptYXBXaXRoT3B0KToKKysKKysyMDIxLTEwLTI1ICBLeWxlIFBp
ZGRpbmd0b24gIDxrcGlkZGluZ3RvbkBhcHBsZS5jb20+CisrCisrICAgICAgICBSRUdSRVNTSU9O
IChpT1MgMTUpLCBzYWZhcmk2MDQuMTogQ291bGQgbm90IGxpbmsgdGhlIHNoYWRlciBwcm9ncmFt
CisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMxNDc1
CisrCisrICAgICAgICBSZW5hbWluZyByZWdleCBpbmNvcnJlY3RseSBzdWJzdGl0dXRlZCBhbiBh
dHRyaWJ1dGUuIAorKyAgICAgICAgVXBkYXRlIHRvIHJlcXVpcmUgZXhhY3QgYXR0cmlidXRlIG1h
dGNoCisrCisrICAgICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24KKysKKysgICAgICAgICog
c3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF9nbHNsYW5nX210bF91dGlscy5tbToKKysg
ICAgICAgIChyeDo6bXRsOjp1cGRhdGVTaGFkZXJBdHRyaWJ1dGVzKToKKysKKysyMDIxLTEwLTE1
ICBSb3NzIEtpcnNsaW5nICA8cm9zcy5raXJzbGluZ0Bzb255LmNvbT4KKysKKysgICAgICAgIFJl
YWxpemUgTWFjIENNYWtlIGJ1aWxkIG9mIFdlYkNvcmUgYW5kIFdlYktpdAorKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMTc0OQorKworKyAgICAgICAg
UmV2aWV3ZWQgYnkgQWxleCBDaHJpc3RlbnNlbi4KKysKKysgICAgICAgICogQ29tcGlsZXIuY21h
a2U6CisrCisrMjAyMS0xMC0xNSAgS3lsZSBQaWRkaW5ndG9uICA8a3BpZGRpbmd0b25AYXBwbGUu
Y29tPgorKworKyAgICAgICAgUkVHUkVTU0lPTiAocjI4MzY2Nyk6IHdlYmdsLzIuMC4wL2RlcXAv
ZnVuY3Rpb25hbC9nbGVzMy9saWZldGltZS5odG1sIGZhaWxzCisrICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMxNjgyCisrCisrICAgICAgICBUcmFuc2Zv
cm0gZmVlZGJhY2sgc2hvdWxkIGF2b2lkIGFwcGVuZGluZyBfdSBmb3IgCisrICAgICAgICBidWls
dGluIG91dHB1dCB2YXJpYWJsZXMuCisrCisrICAgICAgICBSZXZpZXdlZCBieSBLaW1tbyBLaW5u
dW5lbi4KKysKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF9nbHNs
YW5nX210bF91dGlscy5tbToKKysgICAgICAgIChyeDo6bXRsOjpHZW5lcmF0ZVRyYW5zZm9ybUZl
ZWRiYWNrVmFyeWluZ091dHB1dCk6CisrCisrMjAyMS0xMC0xNCAgS3lsZSBQaWRkaW5ndG9uICA8
a3BpZGRpbmd0b25AYXBwbGUuY29tPgorKworKyAgICAgICAgaHR0cHM6Ly90YW5raW9ubGluZS5j
b20vcGxheS8gaHRtbDUgZW5naW5lIG5vdCB3b3JraW5nOiBjcmFzaGVzLiAoTWV0YWwgc2hhZGVy
IG5vdCB3b3JraW5nKQorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIzMTQ5MAorKworKyAgICAgICAgQWRkIGFyZ3VtZW50IHRvIFJlbW92ZUluYWN0aXZl
SW50ZXJmYWNlVmFyaWFibGVzIHRvIGtlZXAKKysgICAgICAgIG91dHB1dCBmcmFnbWVudCB2YXJp
YWJsZXMsIGV2ZW4gaWYgdGhleSBhcmUKKysgICAgICAgIEFkZCBhIG5ldyB0ZXN0IHRvICB2ZXJp
ZnkgdGhhdCB0aGlzIHByb2JsZW0gaXMgZml4ZWQuIAorKworKyAgICAgICAgUmV2aWV3ZWQgYnkg
S2VubmV0aCBSdXNzZWxsLgorKworKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9U
cmFuc2xhdG9yTWV0YWxEaXJlY3QuY3BwOgorKyAgICAgICAgKHNoOjpUcmFuc2xhdG9yTWV0YWxE
aXJlY3Q6OnRyYW5zbGF0ZUltcGwpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRv
ci9UcmFuc2xhdG9yVnVsa2FuLmNwcDoKKysgICAgICAgIChzaDo6VHJhbnNsYXRvclZ1bGthbjo6
dHJhbnNsYXRlSW1wbCk6CisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL3RyZWVf
b3BzL1JlbW92ZUluYWN0aXZlSW50ZXJmYWNlVmFyaWFibGVzLmNwcDoKKysgICAgICAgIChzaDo6
UmVtb3ZlSW5hY3RpdmVJbnRlcmZhY2VWYXJpYWJsZXMpOgorKyAgICAgICAgKiBzcmMvY29tcGls
ZXIvdHJhbnNsYXRvci90cmVlX29wcy9SZW1vdmVJbmFjdGl2ZUludGVyZmFjZVZhcmlhYmxlcy5o
OgorKworKzIwMjEtMTAtMTQgIE15bGVzIEMuIE1heGZpZWxkICA8bW1heGZpZWxkQGFwcGxlLmNv
bT4KKysKKysgICAgICAgIEFsbCB0aGUgU0RLVmFyaWFudC54Y2NvbmZpZyBmaWxlcyBzaG91bGQg
bWF0Y2gKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MzE2NjMKKysKKysgICAgICAgIFJldmlld2VkIGJ5IFlvdWVubiBGYWJsZXQuCisrCisrICAgICAg
ICAqIENvbmZpZ3VyYXRpb25zL1NES1ZhcmlhbnQueGNjb25maWc6CisrCisrMjAyMS0xMC0xMyAg
S3lsZSBQaWRkaW5ndG9uICA8a3BpZGRpbmd0b25AYXBwbGUuY29tPgorKworKyAgICAgICAgVXBz
dHJlYW0gQU5HTEU6IFByaW1pdGl2ZVJlc3RhcnQgdGVzdHMgZmFpbCBkdWUgdG8gaW5jb3JyZWN0
IGRyYXcgY29tbWFuZHMKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0yMzE2MjYKKysgICAgICAgIDxyZGFyOi9wcm9ibGVtLzg0MTY3MjQxPgorKyAgIAor
KyAgICAgICAgUHJpbWl0aXZlIHJlc3RhcnQgZHJhdyBjb21tYW5kcyB3ZXJlIGJlaW5nIGVuY29k
ZWQKKysgICAgICAgIGluY29ycmVjdGx5LiBTaW5nbGUgZWxlbWVudCByYW5nZXMgd2VyZSBiZWlu
ZyBkaXNyZWdhcmRlZCwKKysgICAgICAgIGFuZCBhIG1heGltdW0gZHJhdyBzaXplIHdhcyBub3Qg
YmVpbmcgZW5mb3JjZWQgd2hlbiB0aGUKKysgICAgICAgIGluZGV4IGJ1ZmZlciB3YXMgYWxpYXNl
ZCAvIHJldXNlZC4KKysKKysgICAgICAgIENoZXJyeS1waWNrIGZyb20gdXBzdHJlYW0gYW5nbGVi
dWcuY29tLzY1MzUKKysgICAgCisrICAgICAgICBSZXZpZXdlZCBieSBLZW5uZXRoIFJ1c3NlbGwu
CisrCisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9WZXJ0ZXhBcnJheU10
bC5tbToKKysgICAgICAgIChyeDo6VmVydGV4QXJyYXlNdGw6OmdldERyYXdJbmRpY2VzKToKKysK
KysyMDIxLTEwLTEyICBBbGV4ZXkgUHJvc2t1cnlha292ICA8YXBAYXBwbGUuY29tPgorKworKyAg
ICAgICAgSW52b2tlIFRoaXJkUGFydHkgYnVpbGQgc2NyaXB0cyB3aXRoIHB5dGhvbjMgZXhwbGlj
aXRseQorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIz
MTYwNQorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGVhbiBKYWNrc29uLgorKworKyAgICAgICAg
KiBBTkdMRS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorKyAgICAgICAgKiBhZGp1c3QtYW5n
bGUtaW5jbHVkZS1wYXRocy5weToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21l
dGFsL3NoYWRlcnMvY3JlYXRlX210bF9pbnRlcm5hbF9zaGFkZXJzLnB5OgorKworKzIwMjEtMTAt
MDYgIEt5bGUgUGlkZGluZ3RvbiAgPGtwaWRkaW5ndG9uQGFwcGxlLmNvbT4KKysKKysgICAgICAg
IFNoYWRlcnRveSAidHJ1Y2hldCBkaXN0cmljdCIgZmFpbHMgdG8gY29tcGlsZSB3aXRoIGVycm9y
OiBJbnRlcm5hbCBlcnJvciBjb21waWxpbmcgc2hhZGVyIHdpdGggTWV0YWwgYmFja2VuZCIKKysg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjkzNzgKKysg
ICAgICAgIDxyZGFyOi8vcHJvYmxlbS84MjI5OTA1Mz4KKysKKysgICAgICAgIFJldmlld2VkIGJ5
IEtlbm5ldGggUnVzc2VsbC4KKysKKysgICAgICAgIENoYW5nZSBUcmFuc2xhdG9yTWV0YWxEaXJl
Y3QgdG8gcHJlZml4ICdfdScgdG8gYWxsIHVzZXIgZGVmaW5lZCB2YXJpYWJsZXMuCisrICAgICAg
ICBDbGVhbiB1cCBidWlsdGlucyBsaWtlIHNhbXBsZXJzIGFuZCBBTkdMRSBzdHJ1Y3RzIHRoYXQg
d2VyZSBiZWluZworKyAgICAgICAgYWNjaWRlbnRseSBwcm9tb3RlZCB0byB1c2VyRGVmaW5lZCB2
YXJpYWJsZXMuCisrCisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL1RyYW5zbGF0
b3JNZXRhbERpcmVjdC5jcHA6CisrICAgICAgICAoc2g6OkdldE1zbEtleXdvcmRzKToKKysgICAg
ICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0L05hbWUu
Y3BwOgorKyAgICAgICAgKE5hbWU6OmVtaXQgY29uc3QpOgorKyAgICAgICAgKiBzcmMvY29tcGls
ZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QvU3ltYm9sRW52LmNwcDoKKysgICAg
ICAgIChTeW1ib2xFbnY6OmdldFRleHR1cmVFbnYpOgorKyAgICAgICAgKFN5bWJvbEVudjo6Z2V0
U2FtcGxlclN0cnVjdCk6CisrICAgICAgICAoc2g6OkdldFRleHR1cmVUeXBlTmFtZSk6CisrICAg
ICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9tdGxfZ2xzbGFuZ19tdGxfdXRpbHMu
bW06CisrICAgICAgICAocng6Om10bDo6R2VuZXJhdGVUcmFuc2Zvcm1GZWVkYmFja1ZhcnlpbmdP
dXRwdXQpOgorKworKzIwMjEtMDktMjggIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5A
d2Via2l0Lm9yZz4KKysKKysgICAgICAgIE1vc3RseSBmaXggTWFjIENNYWtlIGJ1aWxkCisrICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMwODY4CisrCisr
ICAgICAgICBSZXZpZXdlZCBieSBEb24gT2xtc3RlYWQuCisrCisrICAgICAgICAqIENvbXBpbGVy
LmNtYWtlOgorKyAgICAgICAgKiBNZXRhbC5jbWFrZToKKysKKysyMDIxLTA5LTIzICBLeWxlIFBp
ZGRpbmd0b24gIDxrcGlkZGluZ3RvbkBhcHBsZS5jb20+CisrCisrICAgICAgICBbV2ViR0wyLCBT
YWZhcmkgMTUgLSBpT1MxNV0gUHJvYmxlbXMgd2l0aCBkcmF3RWxlbWVudHMgaW4gc29tZSBjb25k
aXRpb25zCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MjMwMTA3CisrCisrICAgICAgICBJbmRleCBidWZmZXIgcmV3cml0ZSB3YXMgZGlzcGF0Y2hpbmcg
dG9vIG1hbnkgdGhyZWFkcy4gCisrICAgICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisr
CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9Qcm92b2tpbmdWZXJ0ZXhI
ZWxwZXIubW06CisrICAgICAgICAocng6OlByb3Zva2luZ1ZlcnRleEhlbHBlcjo6cHJlY29uZGl0
aW9uSW5kZXhCdWZmZXIpOgorKworKzIwMjEtMDktMjAgIEtpbW1vIEtpbm51bmVuICA8a2tpbm51
bmVuQGFwcGxlLmNvbT4KKysKKysgICAgICAgIEFOR0xFIE1ldGFsOiBzaW5nbGUtY29tcG9uZW50
IHN3aXp6bGVzIGRvIG5vdCBjb21waWxlCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MjMwNDcyCisrICAgICAgICA8cmRhcjovL3Byb2JsZW0vODMzMTA3
ODA+CisrCisrICAgICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisrCisrICAgICAgICBG
aXggbWV0YWwgY29tcGlsZXIgY29tcGlsZSBlcnJvcnMgd2hlbiB1c2luZyAKKysgICAgICAgIHNp
bmdsZSB2YWx1ZSBzd2l6bGVzIChnbHNsdmFyaWFibGUucikgaW4gcG9zaXRpb24gd2hlcmUgbHZh
bHVlcyB3b3VsZAorKyAgICAgICAgYmUgbmVlZGVkLiBVc2UgdGhlIHZhcmlhYmxlIGluc3RlYWQg
b2Ygc2luZ2xlIGVsZW1lbnQgYXJyYXkgCisrICAgICAgICAoY29weS1wYXN0ZSB0eXBvKS4KKysK
KysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0
L1Byb2dyYW1QcmVsdWRlLmNwcDoKKysKKysyMDIxLTA5LTE2ICBLeWxlIFBpZGRpbmd0b24gIDxr
cGlkZGluZ3RvbkBhcHBsZS5jb20+CisrCisrICAgICAgICB3ZWJnbC8yLjAueS9jb25mb3JtYW5j
ZS9leHRlbnNpb25zL3dlYmdsLWNvbXByZXNzZWQtdGV4dHVyZS1zM3RjLXNyZ2IuaHRtbCBmYWls
cyBvbiBJbnRlbCtBTUQgTWV0YWwKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0yMjk5NDEKKysKKysgICAgICAgIFplcm8taW5pdGlhbGl6ZSBjb21wcmVz
c2VkIHRleHR1cmVzIGV4cGxpY2l0bHksIGFzIHRoZXkgYXJlbid0IGltcGxpY2l0bHkgaW5pdGFs
aXplZCBpbiBNZXRhbC4KKysgICAgICAgIFJldmlld2VkIGJ5IEtlbm5ldGggUnVzc2VsbCA8a2Jy
QGNocm9taXVtLm9yZz4uCisrCisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRh
bC9tdGxfdXRpbHMuaDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210
bF91dGlscy5tbToKKysgICAgICAgIChyeDo6bXRsOjpHZXRDb21wcmVzc2VkQnVmZmVyRm9yVGV4
dHVyZVdpdGhGb3JtYXQpOgorKyAgICAgICAgKHJ4OjptdGw6OkluaXRpYWxpemVDb21wcmVzc2Vk
VGV4dHVyZUNvbnRlbnRzKToKKysgICAgICAgIChyeDo6bXRsOjpJbml0aWFsaXplVGV4dHVyZUNv
bnRlbnRzKToKKysKKysyMDIxLTA4LTMxICBLaW1tbyBLaW5udW5lbiAgPGtraW5udW5lbkBhcHBs
ZS5jb20+CisrCisrICAgICAgICB3ZWJnbC8xLjAueC9jb25mb3JtYW5jZS9nbHNsL21pc2MvZnJh
Z2NvbG9yLWZyYWdkYXRhLWludmFyaWFudC5odG1sIGZhaWxzCisrICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIzMzE3CisrICAgICAgICA8cmRhcjovL3By
b2JsZW0vNzU3NzI2NTk+CisrCisrICAgICAgICBSZXZpZXdlZCBieSBLZW5uZXRoIFJ1c3NlbGwu
CisrCisrICAgICAgICBUaGUgcGFyc2VyIG1haW50YWlucyBpbnZhcmlhbmNlIG1ldGFkYXRhIGZv
ciBlYWNoIGlucHV0IGFuZCBvdXRwdXQKKysgICAgICAgIHdpdGggdGhlIGhlbHAgb2YgdGhlIHN5
bWJvbCB0YWJsZSwgZHVyaW5nIHBhcnNpbmcuCisrCisrICAgICAgICBVc2UgdGhpcyBtZXRhZGF0
YSB0aHJvdWdoIHRoZSBjb2xsZWN0aW9uIHBoYXNlIGRvbmUgYnkgQ29sbGVjdFZhcmlhYmxlcwor
KyAgICAgICAgc2VjdGlvbiBvZiBzaGFkZXIgY29tcGlsYXRpb24uCisrCisrICAgICAgICBSZW1v
dmUgdGhlIG1hbnVhbCB0cmVlIHJld3JpdGUgc2VjdGlvbiB0aGF0IGNvbGxlY3RlZCB0aGUgaW52
YXJpYW5jZQorKyAgICAgICAgaW5mb3JtYXRpb24uIFRoZSBpbXBsZW1lbnRhdGlvbiBoYWQgZm9s
bG93aW5nIHByb2JsZW1zOgorKyAgICAgICAgMSkgSXQgd291bGQgZGVjbGFyZSB0aGUgdmFyaWFi
bGVzIHByZXNlbnQuIFRoaXMgd291bGQgZmFpbCB0aGUgdGVzdCBjYXNlCisrICAgICAgICBmaXhl
ZCBoZXJlLCBkdWUgdG8gdGhlIHRlc3QgY2FzZSB1c2luZyBpbnZhcmlhbnQgZGVjbGFyYXRpb25z
IHRvIGJvdGgKKysgICAgICAgIEZyYWdDb2xvciBhbmQgRnJhZ0RhdGEsIHdoaWNoIHdvdWxkIGNh
dXNlIGJvdGggdG8gYmUgcHJlc2VudCBhcyBvdXRwdXRzCisrICAgICAgICB0byB0aGUgTVNMLgor
KyAgICAgICAgMikgSXQgd291bGQgb3BlcmF0ZSBvbiByZXdyaXR0ZW4gdmFyaWFibGVzLiBGb3Ig
ZXhhbXBsZSwgRnJhZ0Nvb3JkIHdvdWxkCisrICAgICAgICBiZSByZXBsYWNlZCB3aXRoIGRpZmZl
cmVudCB2YXJpYWJsZSwgY2F1c2luZyB0aGUgaW52YXJpYW5jZSBiZSBtYXJrZWQKKysgICAgICAg
IGJhc2VkIG9uIHRoZSByZXdyaXR0ZW4gbmFtZSBidXQgdGhlIGxhdGVyIGxvb2t1cCBpbnRlbmRl
ZCB0byBiZSBkb25lCisrICAgICAgICB3aXRoIHRoZSBvcmlnaW5hbCBuYW1lLgorKworKyAgICAg
ICAgUmVtb3ZlIGxvZ2ljIHRvIG1hcmsgRnJhZ0Nvb3JkIGFzIGludmFyaWFudCwgYXMgTVNMIHNw
ZWNpZmljYXRpb24gZXhwbGljaXRseQorKyAgICAgICAgc2F5cyB0aGF0IG9ubHkgdGhlIHZlcnRl
eCBbW3Bvc2l0aW9uXV0gb3V0cHV0IGNhbiBiZSBtYXJrZWQgYXMgW1tpbnZhcmlhbnRdXS4KKysg
ICAgICAgIEFzIG5vdGVkIGFib3ZlLCB0aGlzIG5ldmVyIHdvcmtlZC4KKysKKysgICAgICAgIEZp
eCBjYXNlcyB3aGVyZSB0aGUgdHJlZSByZXdyaXRlcnMgYXNzdW1lIHRoYXQgYWxsIHZhcmlhYmxl
IHJlZmVyZW5jZXMgYXJlCisrICAgICAgICBkb25lIHdpdGhpbiBmdW5jdGlvbnMuIFRoZSBnbG9i
YWwgcXVhbGlmaWVyIGRlY2xhcmF0aW9ucyBhcmUgbm93IGxlZnQKKysgICAgICAgIGluIHRoZSB0
cmVlIGFuZCBhcyBzdWNoIGNhbiByZWZlciB0byB2YXJpYWJsZXMgYnV0IGRvIG5vdCBiZWxvbmcg
dG8gYW55CisrICAgICAgICBmdW5jdGlvbi4KKysKKysgICAgICAgIEZpeGVzOgorKyAgICAgICAg
d2ViZ2wvMS4wLngvY29uZm9ybWFuY2UvZ2xzbC9taXNjL2ZyYWdjb2xvci1mcmFnZGF0YS1pbnZh
cmlhbnQuaHRtbAorKyAgICAgICAgd2ViZ2wvMi4wLnkvY29uZm9ybWFuY2UvZ2xzbC9taXNjL2Zy
YWdjb2xvci1mcmFnZGF0YS1pbnZhcmlhbnQuaHRtbAorKworKyAgICAgICAgKiBBTkdMRS54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRv
ci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QuY3BwOgorKyAgICAgICAgKHNoOjpUcmFuc2xhdG9yTWV0
YWxEaXJlY3Q6OnRyYW5zbGF0ZUltcGwpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNs
YXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QvRGlzY292ZXJEZXBlbmRlbnRGdW5jdGlvbnMuY3Bw
OgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJl
Y3QvRW1pdE1ldGFsLmNwcDoKKysgICAgICAgIChHZW5NZXRhbFRyYXZlcnNlcjo6R2VuTWV0YWxU
cmF2ZXJzZXIpOgorKyAgICAgICAgKEdlbk1ldGFsVHJhdmVyc2VyOjplbWl0UG9zdFF1YWxpZmll
cik6CisrICAgICAgICAoR2VuTWV0YWxUcmF2ZXJzZXI6OnZpc2l0R2xvYmFsUXVhbGlmaWVyRGVj
bGFyYXRpb24pOgorKyAgICAgICAgKHNoOjpFbWl0TWV0YWwpOgorKyAgICAgICAgKiBzcmMvY29t
cGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QvRW1pdE1ldGFsLmg6CisrICAg
ICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC9SZXdy
aXRlR2xvYmFsUXVhbGlmaWVyRGVjbHMuY3BwOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvY29t
cGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QvUmV3cml0ZUdsb2JhbFF1YWxp
ZmllckRlY2xzLmg6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9y
L1RyYW5zbGF0b3JNZXRhbERpcmVjdC9SZXdyaXRlUGlwZWxpbmVzLmNwcDoKKysgICAgICAgIChz
aDo6SXNWYXJpYWJsZUludmFyaWFudCk6CisrICAgICAgICAoc2g6OkdlbmVyYXRlUGlwZWxpbmVT
dHJ1Y3Q6OkV4ZWMpOgorKyAgICAgICAgKHNoOjpHZW5lcmF0ZVBpcGVsaW5lU3RydWN0OjpHZW5l
cmF0ZVBpcGVsaW5lU3RydWN0KToKKysgICAgICAgIChzaDo6R2VuZXJhdGVQaXBlbGluZVN0cnVj
dDo6Y3JlYXRlSW50ZXJuYWxQaXBlbGluZVN0cnVjdCk6CisrICAgICAgICAoc2g6OlVwZGF0ZVBp
cGVsaW5lU3ltYm9scyk6CisrICAgICAgICAoc2g6OlJld3JpdGVQaXBlbGluZSk6CisrICAgICAg
ICAoc2g6OlJld3JpdGVQaXBlbGluZXMpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNs
YXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QvUmV3cml0ZVBpcGVsaW5lcy5oOgorKyAgICAgICAg
KiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QvU2VwYXJhdGVD
b21wb3VuZEV4cHJlc3Npb25zLmNwcDoKKysKKysyMDIxLTA4LTI1ICBLaW1tbyBLaW5udW5lbiAg
PGtraW5udW5lbkBhcHBsZS5jb20+CisrCisrICAgICAgICBBTkdMRSBNZXRhbCBpbmRleCBidWZm
ZXIgcmVzdGFydCByYW5nZSBjYWNoZSBpcyBjb3VsZCBiZSBtYWludGFpbmVkIG1vcmUgY29uc2lz
dGVudGx5CisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MjI3NDUxCisrCisrICAgICAgICBSZXZpZXdlZCBieSBLZW5uZXRoIFJ1c3NlbGwuCisrCisrICAg
ICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9CdWZmZXJNdGwuaDoKKysgICAgICAg
IChyeDo6QnVmZmVyTXRsOjpSZXN0YXJ0UmFuZ2VDYWNoZTo6UmVzdGFydFJhbmdlQ2FjaGUpOgor
KyAgICAgICAgQWRkIG9wdGlvbmFsPFJlc3RhcnRSYW5nZUNhY2hlPiB3aGljaCBjb250YWlucyB0
aGUgcmFuZ2VzIGFuZAorKyAgICAgICAgdGhlIGluZGV4IHR5cGUgdXNlZCB0byBidWlsZCB0aGUg
cmFuZ2VzLgorKworKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvQnVmZmVy
TXRsLm1tOgorKyAgICAgICAgKHJ4OjpCdWZmZXJNdGw6Om1hcmtDb252ZXJzaW9uQnVmZmVyc0Rp
cnR5KToKKysgICAgICAgIChyeDo6QnVmZmVyTXRsOjpjbGVhckNvbnZlcnNpb25CdWZmZXJzKToK
KysgICAgICAgIEludmFsaWRhdGUgdGhlIHJhbmdlIGNhY2hlIHdoZW4gY2xlYXJpbmcgY29udmVy
c2lvbiBidWZmZXJzLgorKyAgICAgICAgT3RoZXJ3aXNlIHRoZSBjYWNoZSB3b3VsZCBiZSBsZWZ0
IGluIGluY29uc2lzdGVudCBzdGF0ZSB2cy4KKysgICAgICAgIHRoZSBjb250ZW50cyBvZiB0aGUg
aW5kZXggYnVmZmVyIGluIGNhc2VzIG9mIGNvZGUgbGlrZToKKysgICAgICAgIEJ1ZmZlck10bDo6
c2V0RGF0YUltcGwoKSAuLi4KKysgICAgICAgICAgIGlmICguLi4pIHsKKysgICAgICAgICAgICAg
ICBtYXJrQ29udmVyc2lvbkJ1ZmZlckRpcnR5KCk7CisrICAgICAgICAgICB9IGVsc2UgeworKyAg
ICAgICAgICAgICAgIGNsZWFyQ29udmVyc2lvbkJ1ZmZlcnMoKTsKKysgICAgICAgICAgIH0KKysg
ICAgICAgIChyeDo6QnVmZmVyTXRsOjpnZXRSZXN0YXJ0SW5kaWNlcyk6CisrCisrMjAyMS0wOC0y
NCAgS2ltbW8gS2lubnVuZW4gIDxra2lubnVuZW5AYXBwbGUuY29tPgorKworKyAgICAgICAgQU5H
TEUgTWV0YWwgaW5maW5pdGllcyBhbmQgTmFOcyBnZW5lcmF0ZWQgd2l0aCBpbmNvcnJlY3Qgc3lu
dGF4CisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI5
NDM5CisrICAgICAgICA8cmRhcjovLzgxMDMzMzY2PgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkg
RGVhbiBKYWNrc29uLgorKworKyAgICAgICAgR2VuZXJhdGUgTmFOIGFuZCBpbmZpbml0eSBjb25z
dGFudCB2YWx1ZXMgY29ycmVjdGx5LgorKyAgICAgICAgQW4gZWxzZSB3YXMgbWlzc2luZyBmcm9t
IGlmLWJsb2NrLCBjYXVzaW5nIGRvdWJsZSBwcm9jZXNzaW5nLgorKworKyAgICAgICAgKiBzcmMv
Y29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QvRW1pdE1ldGFsLmNwcDoK
KysgICAgICAgIChHZW5NZXRhbFRyYXZlcnNlcjo6ZW1pdFNpbmdsZUNvbnN0YW50KToKKysgICAg
ICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF91dGlscy5tbToKKysgICAgICAg
IChyeDo6bXRsOjpDcmVhdGVTaGFkZXJMaWJyYXJ5KToKKysKKysyMDIxLTA4LTE3ICBEYXZpZCBL
aWx6ZXIgIDxkZGtpbHplckBhcHBsZS5jb20+CisrCisrICAgICAgICBbTWV0YWwgQU5HTEVdIEZp
eCBvdmVyLWF1dG9yZWxlYXNlIG9mIHJ4OjpEaXNwbGF5TXRsOjpnZXRNZXRhbERldmljZU1hdGNo
aW5nQXR0cmlidXRlKCkgYW5kIHZhcmlvdXMgT2JqZWN0aXZlLUMgbGVha3MKKysgICAgICAgIDxo
dHRwczovL3dlYmtpdC5vcmcvYi8yMjkxMjg+CisrICAgICAgICA8cmRhcjovL3Byb2JsZW0vODE5
NjQwMDc+CisrCisrICAgICAgICBSZXZpZXdlZCBieSBBbGV4IENocmlzdGVuc2VuLgorKworKyAg
ICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvRGlzcGxheU10bC5oOgorKyAgICAg
ICAgKHJ4OjpEaXNwbGF5TXRsOjpnZXRNZXRhbERldmljZU1hdGNoaW5nQXR0cmlidXRlKToKKysg
ICAgICAgIC0gQ2hhbmdlIHRvIHJldHVybiBtdGw6OkF1dG9PYmpDUHRyPD4gdG8gbWFrZSBvd25l
cnNoaXAgY2xlYXIuCisrICAgICAgICAocng6OkRpc3BsYXlNdGw6Om1NZXRhbERldmljZSk6Cisr
ICAgICAgICAtIE5vIG5lZWQgdG8gaW5pdGlhbGl6ZSB0byBuaWwuCisrCisrICAgICAgICAqIHNy
Yy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9EaXNwbGF5TXRsLm1tOgorKyAgICAgICAgKHJ4OjpE
aXNwbGF5TXRsOjppbml0aWFsaXplSW1wbCk6CisrICAgICAgICAtIFVwZGF0ZSBmb3IgY2hhbmdl
cyB0byBnZXRNZXRhbERldmljZU1hdGNoaW5nQXR0cmlidXRlKCkuCisrICAgICAgICAocng6OkRp
c3BsYXlNdGw6OmdldE1ldGFsRGV2aWNlTWF0Y2hpbmdBdHRyaWJ1dGUpOgorKyAgICAgICAgLSBD
aGFuZ2UgdG8gcmV0dXJuIG10bDo6QXV0b09iakNQdHI8PiB0byBtYWtlIG93bmVyc2hpcCBjbGVh
ci4KKysgICAgICAgIC0gRml4IGxlYWsgb2YgYGRldmljZUxpc3RgLCBgZXh0ZXJuYWxHUFVzYCwg
YGludGVncmF0ZWRHUFVzYCwgYW5kCisrICAgICAgICAgIGBkaXNjcmV0ZUdQVXNgLgorKyAgICAg
ICAgLSBVc2UgbXRsOjphZG9wdE9iakNPYmo8PigpIHRvIHByZXZlbnQgbGVhayBvZgorKyAgICAg
ICAgICBNVExDcmVhdGVTeXN0ZW1EZWZhdWx0RGV2aWNlKCkuCisrCisrICAgICAgICAqIHNyYy9s
aWJBTkdMRS9yZW5kZXJlci9tZXRhbC9JT1N1cmZhY2VTdXJmYWNlTXRsLm1tOgorKyAgICAgICAg
LSBGaXggbGVhayBvZiBgY2FwdHVyZURlc2NyaXB0b3JgIGluIHR3byBkaWZmZXJlbnQgaWYgYmxv
Y2tzLgorKworKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvUHJvZ3JhbU10
bC5tbToKKysgICAgICAgIC0gRml4IGxlYWsgb2YgYGZ1bmNDb25zdGFudHNgIGluIGVhcmx5IHJl
dHVybiBvbiBlcnJvciBwYXRoLgorKworKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIv
bWV0YWwvUHJvdm9raW5nVmVydGV4SGVscGVyLm1tOgorKyAgICAgICAgKHJ4OjpQcm92b2tpbmdW
ZXJ0ZXhIZWxwZXI6OmdldFNwZWNpYWxpemVkU2hhZGVyKToKKysgICAgICAgIC0gRml4IGxlYWsg
b2YgYGZjVmFsdWVzYC4KKysKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFs
L1N1cmZhY2VNdGwubW06CisrICAgICAgICAtIEZpeCBsZWFrIG9mIGBjYXB0dXJlRGVzY3JpcHRv
cmAgaW4gdHdvIGRpZmZlcmVudCBpZiBibG9ja3MuCisrCisrICAgICAgICAqIHNyYy9saWJBTkdM
RS9yZW5kZXJlci9tZXRhbC9tdGxfY29tbW9uLmg6CisrICAgICAgICAocng6Om10bDo6V3JhcHBl
ZE9iamVjdDo6cmV0YWluQXNzaWduKToKKysgICAgICAgIC0gTW92ZSBzdGF0ZW1lbnQgaW5zaWRl
ICNpZi8jZW5kaWYgdGhhdCBpc24ndCBuZWVkZWQgZm9yIEFSQy4KKysgICAgICAgIChyeDo6bXRs
OjpXcmFwcGVkT2JqZWN0Ojp1bnJldGFpbkFzc2lnbik6IEFkZC4KKysgICAgICAgIChyeDo6bXRs
OjpBdXRvT2JqQ1B0cjo6QXV0b09iakNQdHIpOiBBZGQuCisrICAgICAgICAocng6Om10bDo6YWRv
cHRPYmpDT2JqKTogQWRkLgorKyAgICAgICAgLSBBZGQgYSBoZWxwZXIgbWV0aG9kIHRvIGFkb3B0
IGFuIE9iamVjdGl2ZS1DIG9iamVjdCB0bworKyAgICAgICAgICBlbGltaW5hdGUgdGhlIG5lZWQg
dG8gYXV0b3JlbGVhc2UgYSArMSByZXRhaW5lZCBvYmplY3QgYmVmb3JlCisrICAgICAgICAgIGFu
IG10bDo6QXV0b09iakNQdHI8PiBvYmplY3Qgd3JhcHMgaXQuICBNb2RlbGVkIGFmdGVyCisrICAg
ICAgICAgIFdURjo6UmV0YWluUHRyPD4gaW4gV2ViS2l0LgorKworKyAgICAgICAgKiBzcmMvbGli
QU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX3N0YXRlX2NhY2hlLm1tOgorKyAgICAgICAgKHJ4Ojpt
dGw6OlJlbmRlclBpcGVsaW5lQ2FjaGU6OmNyZWF0ZVJlbmRlclBpcGVsaW5lU3RhdGUpOgorKyAg
ICAgICAgKHJ4OjptdGw6OlByb3Zva2luZ1ZlcnRleENvbXB1dGVQaXBlbGluZUNhY2hlOjpjcmVh
dGVDb21wdXRlUGlwZWxpbmVTdGF0ZSk6CisrICAgICAgICAtIFVzZSBhZG9wdE9iakNPYmo8Pigp
IHRvIGZpeCBwb3RlbnRpYWwgbGVhayBvbiB0aGUgZWFybHkgcmV0dXJuCisrICAgICAgICAgIHBh
dGggc2luY2UgdGhlc2UgbWV0aG9kcyByZXR1cm4gYW4gbXRsOjpBdXRvT2JqQ1B0cjw+LgorKwor
KzIwMjEtMDgtMTYgIERhdmlkIEtpbHplciAgPGRka2lsemVyQGFwcGxlLmNvbT4KKysKKysgICAg
ICAgICJtYWtlIGFuYWx5emUiIHNob3VsZCBydW4gY2xhbmcgc3RhdGljIGFuYWx5emVyIGluIGRl
ZXAgbW9kZQorKyAgICAgICAgPGh0dHBzOi8vd2Via2l0Lm9yZy9iLzIyOTEyNz4KKysgICAgICAg
IDxyZGFyOi8vcHJvYmxlbS84MTk2MDU4Nz4KKysKKysgICAgICAgIFJldmlld2VkIGJ5IEFsZXhl
eSBQcm9za3VyeWFrb3YuCisrCisrICAgICAgICAqIEFOR0xFLnhjb2RlcHJvai9wcm9qZWN0LnBi
eHByb2o6CisrICAgICAgICAtIFRyZWF0ICJhbmFseXplIiB0aGUgc2FtZSBhcyAiYnVpbGQiIGZv
ciAiQUNUSU9OIiBlbnZpcm9ubWVudAorKyAgICAgICAgICB2YXJpYWJsZS4KKysKKysyMDIxLTA4
LTEyICBLaW1tbyBLaW5udW5lbiAgPGtraW5udW5lbkBhcHBsZS5jb20+CisrCisrICAgICAgICBB
TkdMRSBDb2NvYSBjb21waWxlcyBjb250ZW50cyBvZiBDb250ZXh0RUFHTCBvbiBtYWMKKysgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjg5ODcKKysKKysg
ICAgICAgIFJldmlld2VkIGJ5IEtlbm5ldGggUnVzc2VsbC4KKysKKysgICAgICAgIEFkZCBpbmNs
dWRlIGd1YXJkcyB0aGF0IGFyZSBjb25zaXN0ZW50IHdpdGggb3RoZXIgRUFHTCBmaWxlcy4KKysK
KysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvQ29udGV4dEVBR0wuY3Bw
OgorKworKzIwMjEtMDgtMTIgIEtpbW1vIEtpbm51bmVuICA8a2tpbm51bmVuQGFwcGxlLmNvbT4K
KysKKysgICAgICAgIEFOR0xFIENvY29hIGNvbXBpbGVzIHBhcnRzIG9mIEhMU0wgdHJhbnNsYXRv
ciwgdnVsa2FuIHRyYW5zbGF0b3IsIGxpYmdsIGFwaSwgY2FwdHVyZSByZWR1bmRhbnRseQorKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyODk4NgorKwor
KyAgICAgICAgUmV2aWV3ZWQgYnkgS2VubmV0aCBSdXNzZWxsLgorKworKyAgICAgICAgUmVtb3Zl
IGZvbGxvd2luZyBmcm9tIEFOR0xFIChkeW5hbWljKSB0YXJnZXQ6CisrICAgICAgICAtIEhMU0wg
dHJhbnNsYXRvciBhbmQgdHJlZSBvcHMgdXNlZCBvbmx5IGJ5IGl0CisrICAgICAgICAtIFZ1bGth
biB0cmFuc2xhdG9yIG91dHB1dAorKyAgICAgICAgLSBsaWJnbCBBUEkgdmFsaWRhdGlvbiBpbXBs
ZW1lbnRhdGlvbgorKyAgICAgICAgLSBBUEkgdHJhY2UgY2FwdHVyZSBpbXBsZW1lbnRhdGlvbiAo
d2FzIG9ubHkgcGFydGlhbGx5IGNvbXBpbGVkKQorKworKyAgICAgICAgVGhlIGZlYXR1cmVzIGFy
ZSBub3QgcGFydCBvZiBDb2NvYSB1c2Ugb2YgQU5HTEUsIGFuZCBzaG91bGQKKysgICAgICAgIG5v
dCBiZSBjb21waWxlZCBhcyBzdWNoLgorKyAgICAgICAgRG9lcyBub3QgYWZmZWN0IHRoZSBiaW5h
cnkgc2l6ZSBtb3JlIHRoYW4gZmV3IGtpbG9ieXRlcy4KKysKKysgICAgICAgICogQU5HTEUueGNv
ZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMvQU5HTEUt
ZHluYW1pYy54Y2NvbmZpZzoKKysKKysyMDIxLTA4LTExICBLeWxlIFBpZGRpbmd0b24gIDxrcGlk
ZGluZ3RvbkBhcHBsZS5jb20+CisrCisrICAgICAgICBBdm9pZCBpbmZpbml0ZSByZWN1cnNpb24g
d2hlbiBjb21tYW5kIGJ1ZmZlciBjcmVhdGlvbiBmYWlscworKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyODk3OAorKyAgICAgICAgPHJkYXI6Ly83OTIy
NDgyND4KKysgCisrICAgICAgICBSZXZpZXdlZCBieSBLZW5uZXRoIFJ1c3NlbGwuCisrIAorKyAg
ICAgICAgSW4gY2FzZXMgd2hlcmUgdGhlIE1UTENvbW1hbmRCdWZmZXIgaXMgbm90IGEgdmFsaWQg
bWV0YWwgb2JqZWN0LAorKyAgICAgICAgd2UgY2FuIGVuZCB1cCBpbiBhbiBpbmZpbml0ZSByZWN1
cnNpdmUgbG9vcCBkdXJpbmcgZHJhdyBjYWxsIHNldHVwLiBSZWZhY3RvciBzZXR1cERyYXcgdG8g
dGFrZSBubyBtb3JlIHRoYW4gdHdvIGF0dGVtcHRzIHRocm91Z2ggdGhlIHNldHVwIGZ1bmN0aW9u
LiAKKysKKysgICAgICAgIFRlc3Rpbmc6IFJhbiBXZWJHTCB0ZXN0cywgdXNlIGNhc2Ugc2FtcGxl
cy4gU2V0IHVwIHN5bnRoZXRpYyAKKysgICAgICAgIHJlcHJvIGZvcmNpbmcgYmFpbCBvdXQgcGF0
aCwgc2F3IFdlYkdMIGNvbnRlbnQgZmFpbCB0byByZW5kZXIgCisrICAgICAgICBpbnN0ZWFkIG9m
IGEgd2ViIHByb2Nlc3MgY3Jhc2guCisrCisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJl
ci9tZXRhbC9Db250ZXh0TXRsLmg6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9t
ZXRhbC9Db250ZXh0TXRsLm1tOgorKyAgICAgICAgKHJ4OjpDb250ZXh0TXRsOjpzZXR1cERyYXcp
OgorKyAgICAgICAgKHJ4OjpDb250ZXh0TXRsOjpzZXR1cERyYXdJbXBsKToKKysKKysyMDIxLTA4
LTExICBLaW1tbyBLaW5udW5lbiAgPGtraW5udW5lbkBhcHBsZS5jb20+CisrCisrICAgICAgICBD
aGVycnktcGljayBBTkdMRTogUmV2aXNlIFdlYkdMJ3Mgc2hhZGVyU291cmNlIHZhbGlkYXRpb24K
KysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjg5NTEK
KysKKysgICAgICAgIFJldmlld2VkIGJ5IEtlbm5ldGggUnVzc2VsbC4KKysKKysgICAgICAgIENo
ZXJyeS1waWNrIEFOR0xFIGNvbW1pdDogYjRmZDQ2Mjg4YWE2NWQ2MWRjOWM3MTQwYzdkMWNkYmEz
ZjRjZGY5YQorKyAgICAgICAgRnJvbTogS2VubmV0aCBSdXNzZWxsIDxrYnJAY2hyb21pdW0ub3Jn
PgorKyAgICAgICAgRGF0ZTogV2VkLCAyNyBKYW4gMjAyMSAxNTo1Njo1OCAtMDgwMAorKyAgICAg
ICAgUmV2aXNlIFdlYkdMJ3Mgc2hhZGVyU291cmNlIHZhbGlkYXRpb24uCisrCisrICAgICAgICBQ
ZXIgZGlzY3Vzc2lvbiBpbiB0aGUgV2ViR0wgd29ya2luZyBncm91cCwgc2hhZGVyU291cmNlIG5v
IGxvbmdlcgorKyAgICAgICAgZ2VuZXJhdGVzIElOVkFMSURfVkFMVUUgZm9yIHNvdXJjZXMgY29u
dGFpbmluZyBjaGFyYWN0ZXJzIG91dHNpZGUgdGhlCisrICAgICAgICBFU1NMIGNoYXJhY3RlciBz
ZXQuIENvbXBpbGF0aW9uIGFuZC9vciBsaW5raW5nIGlzIHN0aWxsIHNwZWNpZmllZCB0bworKyAg
ICAgICAgZmFpbCB3aGVuIGlsbGVnYWwgY29uc3RydWN0cyBhcmUgdXNlZC4KKysKKysgICAgICAg
IFdpdGggdGhpcyBjaGFuZ2UsIGh0dHBzOi8vZ2l0aHViLmNvbS9LaHJvbm9zR3JvdXAvV2ViR0wv
cHVsbC8zMjA2CisrICAgICAgICBwYXNzZXMgd2l0aCB0aGUgcGFzc3Rocm91Z2ggY29tbWFuZCBk
ZWNvZGVyLgorKworKyAgICAgICAgUmV2aXNlIFdlYkdMIGNvbXBhdGliaWxpdHkgdGVzdHMgdG8g
Zm9sbG93IHRoZSBuZXcgcnVsZXMuCisrCisrICAgICAgICAqIHNyYy9saWJBTkdMRS92YWxpZGF0
aW9uRVMyLmNwcDoKKysgICAgICAgIChnbDo6VmFsaWRhdGVTaGFkZXJTb3VyY2UpOgorKyAgICAg
ICAgKiBzcmMvdGVzdHMvZ2xfdGVzdHMvV2ViR0xDb21wYXRpYmlsaXR5VGVzdC5jcHA6CisrCisr
MjAyMS0wNy0yMyAgRGVhbiBKYWNrc29uICA8ZGlub0BhcHBsZS5jb20+CisrCisrICAgICAgICAz
LjUgTUIgc3lzdGVtLXdpZGUgZm9vdHByaW50IGltcGFjdCBkdWUgdG8gdGhyZWFkLWxvY2FscyBp
biBsaWJBTkdMRQorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTIyODI0MAorKyAgICAgICAgcmRhcjovLzc5NTA0NzgzCisrCisrICAgICAgICBSZXZpZXdl
ZCBieSBLZW4gUnVzc2VsbCBhbmQgR2VvZmYgR2FyZW4uCisrCisrICAgICAgICBBcHBsZSdzIGR5
bGQgaGFzIGEgYnVnIHdoZXJlIHRocmVhZF9sb2NhbCB2YXJpYWJsZXMgYXJlIGRpcnRpZWQgb24K
KysgICAgICAgIHByb2Nlc3MgbGF1bmNoLCBjYXVzaW5nIGEgbWVtb3J5IHJlZ3Jlc3Npb24uIFdv
cmsgYXJvdW5kIHRoaXMKKysgICAgICAgIHRlbXBvcmFyaWx5IGluIEFOR0xFIGJ5IHVzaW5nIHB0
aHJlYWQgdGhyZWFkIGxvY2FsIHN0b3JhZ2UuCisrCisrICAgICAgICBJIGRvbid0IGV4cGVjdCB0
aGlzIHRvIGJlIHVwc3RyZWFtZWQgdG8gQU5HTEUgdW5sZXNzIHRoZXkKKysgICAgICAgIHdhbnQg
aXQuIElmIGl0IGlzbid0LCB0aGlzIHBhdGNoIHdpbGwgaGF2ZSB0byBiZSBhcHBsaWVkIHVudGls
CisrICAgICAgICB0aGUgZHlsZCBidWcgaXMgZml4ZWQuCisrCisrICAgICAgICAqIHNyYy9saWJB
TkdMRS9Db250ZXh0LmNwcDogSW1wbGVtZW50IHNvbWUgbWV0aG9kcyB0byBnZXQvc2V0IHdoYXQg
d2FzCisrICAgICAgICB0aGUgZ2xvYmFsIHZhcmlhYmxlIGdDdXJyZW50VmFsaWRDb250ZXh0Lgor
KyAgICAgICAgKGdsOjpHZXRDdXJyZW50VmFsaWRDb250ZXh0VExTSW5kZXgpOgorKyAgICAgICAg
KGdsOjpHZXRDdXJyZW50VmFsaWRDb250ZXh0VExTKToKKysgICAgICAgIChnbDo6U2V0Q3VycmVu
dFZhbGlkQ29udGV4dFRMUyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnNldENvbnRleHRMb3N0
KToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL0NvbnRleHQuaDoKKysgICAgICAgICogc3JjL2xp
YkdMRVN2Mi9nbG9iYWxfc3RhdGUuY3BwOiBEaXR0bywgYnV0IGZvciBnQ3VycmVudFRocmVhZC4K
KysgICAgICAgIChlZ2w6OkdldEN1cnJlbnRUaHJlYWRUTFNJbmRleCk6CisrICAgICAgICAoZWds
OjpHZXRDdXJyZW50VGhyZWFkVExTKToKKysgICAgICAgIChlZ2w6OlNldEN1cnJlbnRUaHJlYWRU
TFMpOgorKyAgICAgICAgKGVnbDo6R2V0Q3VycmVudFRocmVhZCk6CisrICAgICAgICAoZWdsOjpT
ZXRDb250ZXh0Q3VycmVudCk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvZ2xvYmFsX3N0YXRl
Lmg6CisrICAgICAgICAoZ2w6OkdldEdsb2JhbENvbnRleHQpOgorKyAgICAgICAgKGdsOjpHZXRW
YWxpZEdsb2JhbENvbnRleHQpOgorKworKzIwMjEtMDctMTYgIEt5bGUgUGlkZGluZ3RvbiAgPGtw
aWRkaW5ndG9uQGFwcGxlLmNvbT4KKysKKysgICAgICAgIEJ1aWxkIERlZmF1bHQgTWV0YWwgbGli
cmFyeSBvZmZsaW5lCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjI3MzMzCisrCisrICAgICAgICA8cmRhcjovLzc5OTIzMzcxPgorKworKyAgICAgICAg
VGhpcyBwYXRjaCBjb21waWxlcyBhbmQgY3JlYXRlcyBhIE1ldGFsIGxpYnJhcnkgYXQgYnVpbGQg
dGltZSwgc3RvcmluZworKyAgICAgICAgdGhlIGxpYnJhcnkgYXMgYSBjb21waWxlZCBiaW5hcnkg
ZmlsZS4gVGhpcyBsaWJyYXJ5IGlzIGJha2VkIGludG8gdGhlIGR5bGliLAorKyAgICAgICAgYW5k
IGlzIGxvYWRlZCBhdCBjb250ZXh0IGNyZWF0aW9uIHRpbWUuCisrCisrICAgICAgICBVbmxpa2Ug
dGhlIHByZXZpb3VzIHZlcnNpb24gb2YgdGhpcyBwYXRjaCwgdGhpcyBwYXRjaCBkb2VzIG5vdCBz
YXZlIG9yIHN0b3JlIHRoZSAubWV0YWxsaWIgb24gZGlzaywgYnV0IHJhdGhlcgorKyAgICAgICAg
YmFrZXMgaXQgaW50byBhIGJpbmFyeS4KKysKKysgICAgICAgIEZpeGVkIGludGVybmFsIGJ1aWxk
IGJyZWFrcyBieSBza2lwcGluZyBNZXRhbGxpYiBiYWtlIHNjcmlwdC4KKysKKysgICAgICAgIFJl
dmlld2VkIGJ5IEtlbm5ldGggUnVzc2VsbC4KKysKKysgICAgICAgICogQU5HTEUueGNvZGVwcm9q
L3Byb2plY3QucGJ4cHJvajoKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMvQU5HTEUtZHluYW1p
Yy54Y2NvbmZpZzoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL0Rpc3Bs
YXlNdGwubW06CisrICAgICAgICAocng6OkRpc3BsYXlNdGw6OmluaXRpYWxpemVTaGFkZXJMaWJy
YXJ5KToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF91dGlscy5o
OgorKworKzIwMjEtMDctMTYgIFRydWl0dCBTYXZlbGwgIDx0c2F2ZWxsQGFwcGxlLmNvbT4KKysK
KysgICAgICAgIFVucmV2aWV3ZWQsIHJldmVydGluZyByMjc5OTgwLgorKworKyAgICAgICAgQnJv
a2UgSW50ZXJuYWwgQnVpbGRzCisrCisrICAgICAgICBSZXZlcnRlZCBjaGFuZ2VzZXQ6CisrCisr
ICAgICAgICAiQnVpbGQgRGVmYXVsdCBNZXRhbCBsaWJyYXJ5IG9mZmxpbmUiCisrICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI3MzMzCisrICAgICAgICBo
dHRwczovL2NvbW1pdHMud2Via2l0Lm9yZy9yMjc5OTgwCisrCisrMjAyMS0wNy0xNiAgS3lsZSBQ
aWRkaW5ndG9uICA8a3BpZGRpbmd0b25AYXBwbGUuY29tPgorKworKyAgICAgICAgQnVpbGQgRGVm
YXVsdCBNZXRhbCBsaWJyYXJ5IG9mZmxpbmUKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0yMjczMzMKKysKKysgICAgICAgIDxyZGFyOi8vNzk5MjMzNzE+
CisrCisrICAgICAgICBUaGlzIHBhdGNoIGNvbXBpbGVzIGFuZCBjcmVhdGVzIGEgTWV0YWwgbGli
cmFyeSBhdCBidWlsZCB0aW1lLCBzdG9yaW5nCisrICAgICAgICB0aGUgbGlicmFyeSBhcyBhIGNv
bXBpbGVkIGJpbmFyeSBmaWxlLiBUaGlzIGxpYnJhcnkgaXMgYmFrZWQgaW50byB0aGUgZHlsaWIs
IAorKyAgICAgICAgYW5kIGlzIGxvYWRlZCBhdCBjb250ZXh0IGNyZWF0aW9uIHRpbWUuCisrCisr
ICAgICAgICBVbmxpa2UgdGhlIHByZXZpb3VzIHZlcnNpb24gb2YgdGhpcyBwYXRjaCwgdGhpcyBw
YXRjaCBkb2VzIG5vdCBzYXZlIG9yIHN0b3JlIHRoZSAubWV0YWxsaWIgb24gZGlzaywgYnV0IHJh
dGhlcgorKyAgICAgICAgYmFrZXMgaXQgaW50byBhIGJpbmFyeS4KKysgICAgICAgIAorKyAgICAg
ICAgUmV2aWV3ZWQgYnkgS2VubmV0aCBSdXNzZWxsLgorKworKyAgICAgICAgKiBBTkdMRS54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qOgorKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9BTkdMRS1k
eW5hbWljLnhjY29uZmlnOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwv
RGlzcGxheU10bC5tbToKKysgICAgICAgIChyeDo6RGlzcGxheU10bDo6aW5pdGlhbGl6ZVNoYWRl
ckxpYnJhcnkpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX3V0
aWxzLmg6CisrCisrMjAyMS0wNy0xNSAgS3lsZSBQaWRkaW5ndG9uICA8a3BpZGRpbmd0b25AYXBw
bGUuY29tPgorKworKyAgICAgICAgV2ViR0wyIGRlbW8gZG9lc24ndCB3b3JrIGR1ZSB0byBmYWls
aW5nIGNvbXBpbGF0aW9uIHRvIG1ldGFsIGJhY2tlbmQKKysgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjY4NjUKKysJCisrICAgICAgICBGaXggdHJhbnNs
YXRpb24gb2Ygc3RydWN0LWFycmF5cyB0byBjb250YWluIHRoZSBhcnJheSB0eXBlIGFzIHdlbGwu
CisrICAgICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisrCisrICAgICAgICAqIHNyYy9j
b21waWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC9TZXBhcmF0ZUNvbXBvdW5k
U3RydWN0RGVjbGFyYXRpb25zLmNwcDoKKysKKysyMDIxLTA3LTEzICBLeWxlIFBpZGRpbmd0b24g
IDxrcGlkZGluZ3RvbkBhcHBsZS5jb20+CisrCisrICAgICAgICByQUYgZHJpdmVuIFdlYkdMIHN1
Ym1pdHMgZXhjZXNzaXZlIGFtb3VudCBvZiBHUFUgd29yayB3aGVuIGZyYW1lcyBhcmUgc2xvdwor
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNzA1OQor
KworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGVhbiBKYWNrc29uLgorKworKyAgICAgICAgQWR2ZXJ0
aXNlIEdMX0FSQl9zeW5jIGZvciB0aGUgTWV0YWwgYmFja2VuZC4KKysgICAgU2luY2UgR0xfQVJC
X3N5bmMgaXMgY29yZSBpbiBPcGVuR0wgRVMgMy4wIGFuZCB0aGUgTWV0YWwgYmFja2VuZCBhZHZl
cnRpc2VzIE9wZW5HTCBFUyAzLjAsCisrICAgIHRoZSBBUEkgbXVzdCBiZSB3b3JraW5nIGFscmVh
ZHkuCisrCisrICAgICAgICBMaW1pdCBpbi1mbGlnaHQgV2ViR0wgZnJhbWVzIHRvIHRocmVlIGZy
YW1lcy4gRG8gbm90IGNvbnRpbnVlIHByZXBhcmF0aW9uIGZvciBkaXNwbGF5CisrICAgIHVudGls
IHRoZSBjb21tYW5kcyBmb3IgdGhlIG9sZGVzdCBmcmFtZSBoYXZlIGJlZW4gZXhlY3V0ZWQgYnkg
dGhlIEdQVS4KKysKKysgICAgICAgIFRoaXMgbGltaXRzIHRoZSBpbXBhY3Qgc2xvdyBmcmFtZXMg
aGF2ZSwgZXNwZWNpYWxseSBpbiB0aGUKKysgICAgY2FzZSB3aGVyZSB0aGUgY29tcG9zaXRvciBz
a2lwIGZyYW1lcyBhbmQgV2ViS2l0IHdvdWxkIGlzc3VlIGEgbmV3IHNsb3cgZnJhbWUKKysgICAg
b24gdG9wIG9mIHRoZSBza2lwcGVkIGZyYW1lLgorKworKwlBbiBhZGRpdGlvbmFsIGNoYW5nZSBl
bnN1cmVzIHRoYXQgTnZpZGlhIGNvbmZpZ3MsIHdoaWNoIGRvIG5vdCBzdXBwb3J0IE1UTEV2ZW50
cworKwl0byBhIGxldmVsIG9mIGNvbmZvcm1hbmNlIHJlcXVpcmVkIChTZWUgaHR0cDovL2NyYnVn
LmNvbS8xMTM2NjczKSwgY29udGludWUgdG8gcnVuLiBUaGUgbW9yZSBwb3dlcmZ1bCBlR1BVcyB3
aWxsIG5vdCBleHBlcmllbmNlIHRocm90dGxpbmcgdG8gdGhlIHNhbWUgbGV2ZWwgYXMgaW50ZWdy
YXRlZCBHUFVTLgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvRGlzcGxh
eU10bC5tbToKKysgICAgICAgIChyeDo6RGlzcGxheU10bDo6aW5pdGlhbGl6ZUV4dGVuc2lvbnMg
Y29uc3QpOgorKworKzIwMjEtMDctMDcgIEt5bGUgUGlkZGluZ3RvbiAgPGtwaWRkaW5ndG9uQGFw
cGxlLmNvbT4KKysKKysgICAgICAgIFdlYkdMIHNoYWRlciBsaW5rIGVycm9yIGluIGlPUyAxNSBi
ZXRhOiAiSW50ZXJuYWwgZXJyb3IgY29tcGlsaW5nIHNoYWRlciB3aXRoIE1ldGFsIGJhY2tlbmQi
CisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI3NzIz
CisrCisrICAgICAgICBUaGUgc2VxdWVuY2Ugb3BlcmF0b3IgY2FuIGJlIHVzZWQgdG8gY29tYmlu
ZSBzdGF0ZW1lbnRzLiBPdXIgaW5pdGlhbAorKyAgICAgICAgbG9naWMgZGlkIG5vdCBhY2NvdW50
IGZvciB0aGlzLiAKKysgICAgICAgIFJldmlld2VkIGJ5IERlYW4gSmFja3Nvbi4KKysKKysgICAg
ICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0L1NlcGFy
YXRlQ29tcG91bmRFeHByZXNzaW9ucy5jcHA6CisrICAgICAgICAoc2g6OlNlcGFyYXRvcjo6aXNT
dGFuZGFsb25lRXhwcik6CisrCisrMjAyMS0wNy0wNiAgS3lsZSBQaWRkaW5ndG9uICA8a3BpZGRp
bmd0b25AYXBwbGUuY29tPgorKworKyAgICAgICAgUkVHUkVTU0lPTiAocjI3OTQ2Nik6ICBbQmln
IFN1cl0gd2ViZ2wvMS4wLjMvY29uZm9ybWFuY2UgJiB3ZWJnbC8yLjAuMC9jb25mb3JtYW5jZSBh
cmUgZmFpbGluZworKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTIyNzU5NgorKyAgICAgICAgUHJvdmlkZSBJbnRlbCB3b3JrYXJvdW5kIGZvciBCaWcgU3Vy
IHN5c3RlbXMuIEF0YW4gYW5kIGludmFyaWFudCBoYXZlIAorKyAgICAgICAgaXNzdWVzIG9uIG9s
ZGVyIHN5c3RlbXMsIGFuZCByZXF1aXJlIHVzIHRvIGRpc2FibGUgZmFzdG1hdGggdG8gcHJvZHVj
ZSBjb3JyZWN0IHJlc3VsdHMuIAorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgS2VubmV0aCBSdXNz
ZWxsLgorKworKyAgICAgICAgKiBpbmNsdWRlL3BsYXRmb3JtL0ZlYXR1cmVzTXRsLmg6CisrICAg
ICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC5oOgor
KyAgICAgICAgKHNoOjpUcmFuc2xhdG9yTWV0YWxSZWZsZWN0aW9uOjpyZXNldCk6CisrICAgICAg
ICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC9FbWl0TWV0
YWwuY3BwOgorKyAgICAgICAgKEdlbk1ldGFsVHJhdmVyc2VyOjplbWl0UG9zdFF1YWxpZmllcik6
CisrICAgICAgICAoR2VuTWV0YWxUcmF2ZXJzZXI6OnZpc2l0VW5hcnkpOgorKyAgICAgICAgKEdl
bk1ldGFsVHJhdmVyc2VyOjp2aXNpdEFnZ3JlZ2F0ZSk6CisrICAgICAgICAqIHNyYy9saWJBTkdM
RS9yZW5kZXJlci9tZXRhbC9EaXNwbGF5TXRsLm1tOgorKyAgICAgICAgKHJ4OjpEaXNwbGF5TXRs
Ojppbml0aWFsaXplRmVhdHVyZXMpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIv
bWV0YWwvUHJvZ3JhbU10bC5oOgorKyAgICAgICAgKHJ4OjpQcm9ncmFtTXRsOjpnZXRUcmFuc2xh
dGVkU2hhZGVySW5mbyBjb25zdCk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9t
ZXRhbC9Qcm9ncmFtTXRsLm1tOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0
YWwvbXRsX2dsc2xhbmdfbXRsX3V0aWxzLmg6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5k
ZXJlci9tZXRhbC9tdGxfZ2xzbGFuZ19tdGxfdXRpbHMubW06CisrICAgICAgICAocng6Om10bDo6
R2xzbGFuZ0dldE1TTCk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9t
dGxfcmVuZGVyX3V0aWxzLmg6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRh
bC9tdGxfcmVuZGVyX3V0aWxzLm1tOgorKyAgICAgICAgKHJ4OjptdGw6OlRyYW5zZm9ybUZlZWRi
YWNrVXRpbHM6OmNyZWF0ZU1zbFhmYkxpYnJhcnkpOgorKyAgICAgICAgKHJ4OjptdGw6OlRyYW5z
Zm9ybUZlZWRiYWNrVXRpbHM6OmdldFRyYW5zZm9ybUZlZWRiYWNrUmVuZGVyUGlwZWxpbmUpOgor
KyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX3V0aWxzLmg6CisrICAg
ICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9tdGxfdXRpbHMubW06CisrICAgICAg
ICAocng6Om10bDo6Q3JlYXRlU2hhZGVyTGlicmFyeSk6CisrCisrMjAyMS0wNy0wMSAgQmVuIE5o
YW0gIDxuaGFtQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFVucmV2aWV3ZWQsIHJldmVydGluZyBy
Mjc5MTcyLgorKworKyAgICAgICAgQnJva2UgV2ViR0wgY29udGV4dCBjb25zdHJ1Y3Rpb24gb24g
c29tZSBkZXZpY2VzLgorKworKyAgICAgICAgUmV2ZXJ0ZWQgY2hhbmdlc2V0OgorKworKyAgICAg
ICAgInJBRiBkcml2ZW4gV2ViR0wgc3VibWl0cyBleGNlc3NpdmUgYW1vdW50IG9mIEdQVSB3b3Jr
IHdoZW4gZnJhbWVzIGFyZSBzbG93IgorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIyNzA1OQorKyAgICAgICAgaHR0cHM6Ly9jb21taXRzLndlYmtpdC5v
cmcvcjI3OTE3MgorKworKzIwMjEtMDctMDEgIEt5bGUgUGlkZGluZ3RvbiAgPGtwaWRkaW5ndG9u
QGFwcGxlLmNvbT4KKysKKysgICAgICAgIEJhYnlsb25KUyBVbmRlciB3YXRlciBkZW1vIGlzIHNs
b3dlciB0aGFuIGl0IHNob3VsZCBiZSBvbiBJbnRlbAorKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNzIyNgorKworKyAgICAgICAgUmVtb3ZlIGZhc3RN
YXRoIHJlc3RyaWN0aW9uIG9uIEludGVsCisrICAgICAgICBSZW1vdmluZyBmYXN0bWF0aCBpbiBh
bGwgc2NlbmFyaW9zIGxlYWRzIHRvIHVuYWNjZXB0YWJsZSBwZXJmb3JtYW5jZSBvbiBpbnRlZ3Jh
dGVkIGdyYXBoaWNzCisrICAgICAgICBDdXJyZW50bHksIHdlYmdsIGNvbmZvcm1hbmNlIHRlc3Rz
IGFuZCB0aGUgU2FmYXJpIHRlc3RzIGRvbid0IGhhdmUgYW55IGludmFyaWFuY2UgdGVzdHMgdGhh
dCBzaG93IGludmFyaWFuY2UgaXNzdWVzLiBkZVFQIHRlc3RzIGFyZSBzaW1pbGFybHkgcGFzc2lu
Zy4KKysgICAgICAgIEluIE1ldGFsLUFOR0xFLCBnbF9wb3NpdGlvbiBhbmQgZ2xfZnJhZ2Nvb3Jk
IGFyZSB2YWxpZCBhdHRyaWJ1dGVzIHRvIGJlIG1hcmtlZCBhcyBpbnZhcmlhbnQuIEFsbCBvdGhl
cnMgd2lsbCBiZSBpZ25vcmVkLgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgS2VubmV0aCBSdXNz
ZWxsLgorKworKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0
YWxEaXJlY3QvRW1pdE1ldGFsLmNwcDoKKysgICAgICAgIChHZW5NZXRhbFRyYXZlcnNlcjo6ZW1p
dFBvc3RRdWFsaWZpZXIpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwv
bXRsX3V0aWxzLm1tOgorKyAgICAgICAgKHJ4OjptdGw6OkNyZWF0ZVNoYWRlckxpYnJhcnkpOgor
KworKzIwMjEtMDYtMzAgIEtpbW1vIEtpbm51bmVuICA8a2tpbm51bmVuQGFwcGxlLmNvbT4KKysK
KysgICAgICAgIEFTU0VSVCBpbiAgd2ViZ2wvMS4wLngvY29uZm9ybWFuY2UvZ2xzbC9taXNjL3Vu
aW5pdGlhbGl6ZWQtbG9jYWwtZ2xvYmFsLXZhcmlhYmxlcy5odG1sICAgSWRHZW4gQVNTRVJUKCpi
YXNlICE9ICdfJyk7CisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjI3NDgyCisrCisrICAgICAgICBSZXZpZXdlZCBieSBLZW5uZXRoIFJ1c3NlbGwuCisr
CisrICAgICAgICBHaXZlIHVubmFtZWQgc3RydWN0cyBub3JtYWwgIl88bnVtYmVyPiIgbmFtZS4K
KysgICAgICAgIFRoZSBvcmlnaW5hbCBjb2RlIHRob3VnaHQgaXQgZ2F2ZSAiQU5HTEVfX3VubmFt
ZWQ8bnVtYmVyPiIsIGJ1dCBpbiByZWFsaXR5IGl0CisrICAgICAgICBnYXZlICJfX3VubmFtZWQ8
bnVtYmVyPiIuCisrICAgICAgICBTaW5jZSBvdGhlciBjb25zdHJ1Y3RzIGFscmVhZHkgY3JlYXRl
IG5hbWVzIG9mIGZvcm0gIl88bnVtYmVyPiIsIGl0IGlzIHVud2FycmFudGVkIHRvCisrICAgICAg
ICBzcGVjaWFsIGNhc2UgdGhpcyBwYXJ0aWN1bGFyIGNhc2UgdG8gZ2l2ZSAiX3VubmFtZWQ8bnVt
YmVyPiIgb3IgIkFOR0xFX3VubmFtZWQ8bnVtYmVyIiBvcgorKyAgICAgICAgIkFOR0xFXzxudW1i
ZXI+Ii4KKysKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1l
dGFsRGlyZWN0L1NlcGFyYXRlQ29tcG91bmRTdHJ1Y3REZWNsYXJhdGlvbnMuY3BwOgorKyAgICAg
ICAgKiBzcmMvdGVzdHMvY29tcGlsZXJfdGVzdHMvTVNMT3V0cHV0X3Rlc3QuY3BwOgorKyAgICAg
ICAgKFRFU1RfRik6CisrCisrMjAyMS0wNi0yOSAgS2ltbW8gS2lubnVuZW4gIDxra2lubnVuZW5A
YXBwbGUuY29tPgorKworKyAgICAgICAgQU5HTEUgTWV0YWwgcHJpbWl0aXZlIHJlc3RhcnQgcmFu
Z2UgY29tcHV0YXRpb24gY291bGQgaW5kZXggd2l0aCBzaXplX3QKKysgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjc0NDkKKysKKysgICAgICAgIFJldmll
d2VkIGJ5IEtlbm5ldGggUnVzc2VsbC4KKysKKysgICAgICAgIE1ha2UgdGhlIGBjYWxjdWxhdGVS
ZXN0YXJ0UmFuZ2VzKClgIGEgYml0IHNpbXBsZXIgaW4gb3JkZXIKKysgICAgICAgIGZvciBpdCB0
byBiZSBlYXNpZXIgdG8gdW5kZXJzdGFuZC4KKysKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3Jl
bmRlcmVyL21ldGFsL0J1ZmZlck10bC5oOgorKyAgICAgICAgKHJ4OjpJbmRleFJhbmdlOjpJbmRl
eFJhbmdlKToKKysgICAgICAgIEFkZCBkb2N1bWVudGF0aW9uIHdoYXQgdGhlIG10bDo6SW5kZXhS
YW5nZSBpcy4KKysgICAgICAgIEFkZCBjb25zdHJ1Y3RvciBzbyB0aGF0IGBzdGQ6OnZlY3Rvcjo6
ZW1wbGFjZV9iYWNrKClgIHdvcmtzLgorKworKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVy
ZXIvbWV0YWwvQnVmZmVyTXRsLm1tOgorKyAgICAgICAgKHJ4OjpjYWxjdWxhdGVSZXN0YXJ0UmFu
Z2VzKToKKysgICAgICAgIEluZGV4IHdpdGggc2l6ZV90IHRvIG1ha2UgaXQgc2ltcGxlciB0byB1
bmRlcnN0YW5kIGlmIHRoZSBpbmRleAorKyAgICAgICAgb3ZlcmZsb3dzIG9yIG5vdC4KKysgICAg
ICAgIFVzZSByZWludGVycHJldF9jYXN0IGluIG9yZGVyIHRvIG5vdCBhY2NpZGVudGFsbHkgY2Fz
dCBhd2F5CisrICAgICAgICBjb25zdCBmcm9tIGBtdGw6OkJ1ZmZlclJlZjo6bWFwUmVhZE9ubHko
KWAuCisrICAgICAgICBTa2lwIHRoZSBub24tbWFya2VyIGVsZW1lbnRzIHdpdGggYGNvbnRpbnVl
YCB0byBhdm9pZCBkZWVwIG5lc3RpbmcuCisrICAgICAgICBHaXZlIGEgbmFtZSB0byB0aGUgcmVz
dGFydCByYW5nZSBtYXJrZXIgdmFsdWUuCisrICAgICAgICBSZW1vdmUgaW50ZXJtZWRpYXRlIHZh
cmlhYmxlIGB2YWx1ZSA9IGJ1ZmZlckRhdGFbaV1gIGFzIGl0IGlzIG5ldmVyCisrICAgICAgICB1
c2VkIG1vcmUgdGhhbiBvbmNlLiBUaGlzIHNpbXBsaWZpZXMgdGhlIGNvZGUgYXMgdGhlIGRvLXdo
aWxlIGxvb3AKKysgICAgICAgIGRvZXMgbm90IG5lZWQgdG8gY2hlY2sgdGhlIGlmIGNvbmRpdGlv
biBhcyB0aGUgbG9vcCBlbmRpbmcgY29uZGl0aW9uCisrICAgICAgICBhbHJlYWR5IGNoZWNrcy4K
KysgICAgICAgIE1ha2UgdGhlIGFycmF5IGEgcmV0dXJuZWQgcmVzdWx0IGluc3RlYWQgb2Ygb3V0
IHZhcmlhYmxlLgorKworKyAgICAgICAgKHJ4OjpCdWZmZXJNdGw6OmdldFJlc3RhcnRJbmRpY2Vz
KToKKysKKysyMDIxLTA2LTI5ICBLaW1tbyBLaW5udW5lbiAgPGtraW5udW5lbkBhcHBsZS5jb20+
CisrCisrICAgICAgICBBTkdMRSBNZXRhbCBwcmltaXRpdmUgcmVzdGFydCByYW5nZSBjb21wdXRh
dGlvbiBzaG91bGQgbm90IGJlIGRvbmUgdW5sZXNzIHByaW1pdGl2ZSByZXN0YXJ0IGlzIGVuYWJs
ZWQKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjc0
NTIKKysKKysgICAgICAgIFJldmlld2VkIGJ5IEtlbm5ldGggUnVzc2VsbC4KKysKKysgICAgICAg
IFByaW1pdGl2ZSByZXN0YXJ0IG5lZWRzIHRvIHNjYW4gdGhlIHdob2xlIGluZGV4IGJ1ZmZlciBm
b3IgdmFsdWVzLgorKyAgICAgICAgVGhpcyBzaG91bGQgbm90IGJlIGRvbmUgdW5sZXNzIG5lZWRl
ZC4KKysKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL1ZlcnRleEFycmF5
TXRsLm1tOgorKyAgICAgICAgKHJ4OjpWZXJ0ZXhBcnJheU10bDo6Z2V0RHJhd0luZGljZXMpOgor
KyAgICAgICAgRmlyc3QgY2hlY2sgZm9yIHByaW1pdGl2ZSByZXN0YXJ0IGVuYWJsZWRuZXNzLgor
KyAgICAgICAgQ29tcHV0ZSB0aGUgcHJpbWl0aXZlIHJlc3RhcnQgdmFsdWVzIGFmdGVyIHRoaXMu
CisrICAgICAgICBUaGUgYWxnb3JpdG0gc2hvdWxkIHN1Y2NlZWQgd2hlbiB0aGUgY291bnQgb2Yg
cHJpbWl0aXZlCisrICAgICAgICByZXN0YXJ0IHJhbmdlcyBpcyB6ZXJvLCBhbmQgaXQgZG9lcyBu
b3QgZG8gbXVjaCBvZiB3b3JrLgorKyAgICAgICAgVXNlIHRoZSByZXN0YXJ0IHJhbmdlIHZlY3Rv
ciBhcyByZWZlcmVuY2UsIHNvIHRoYXQgbm8gY29weQorKyAgICAgICAgd291bGQgYmUgZG9uZS4K
KysgICAgICAgIEFkZCBzcGFjZXMgdGhlIGlmIHN0YXRlbWVudHMsIGNvbW1lbnRzIGFuZCByZWZl
cmVuY2VzLgorKyAgICAgICAgTW92ZSB0aGUgZWxzZSBhcm0gb2YgdGhlIGlmIHN0YXRlbWVudCB3
aXRoIHJldHVybiBzdGF0ZW1lbnQKKysgICAgICAgIHRvIGJvZHkgb2YgdGhlIGZ1bmN0aW9uIHRv
IHJlZHVjZSBuZXN0aW5nLgorKworKzIwMjEtMDYtMjggIEtpbW1vIEtpbm51bmVuICA8a2tpbm51
bmVuQGFwcGxlLmNvbT4KKysKKysgICAgICAgIGlQaG9uZSA2UyAtIGlPUyAxNS4wIC0gdW5hYmxl
IHRvIHJldHJpZXZlIFdlYkdMMiBjb250ZXh0CisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI2OTc1CisrICAgICAgICByZGFyOi8vNzg5NjY1NjMKKysK
KysgICAgICAgIFJldmlld2VkIGJ5IEtlbm5ldGggUnVzc2VsbC4KKysKKysgICAgICAgIExpbWl0
IHRoZSBPcGVuR0wgRVMgMy4wIGNvbnRleHRzIHRvIGlPUyBHUFUgRmFtaWx5IDMsIG5vdAorKyAg
ICAgICAgNC4KKysKKysgICAgICAgIFRoZSBsaW1pdCB3YXMgbW9zdCBsaWtlbHkgYWRkZWQgdG8g
Z3VhcmQgc2FtcGxlX2NvbXBhcmUKKysgICAgICAgIGxvZF9vcHRpb25zIHByb3BlcnRpZXMgLmxv
ZCBhbmQgLmdyYWRpZW50LiBIb3dldmVyLCB0aGVzZQorKyAgICAgICAgYXJlIGFsd2F5cyBzdXBw
b3J0ZWQgb24gaU9TLgorKworKyAgICAgICAgQ3VycmVudGx5IHRoZXJlIGlzIGFscmVhZHkgRVMg
My4wIGZlYXR1cmVzIGltcGxlbWVudGVkCisrICAgICAgICBpbiBBTkdMRSB0aGF0IGFyZSBndWFy
ZGVkIGJ5IGlPUyBHUFUgRmFtaWx5IDMuCisrCisrICAgICAgICBGaXhlcyBXZWJHTCAyLjAgdG8g
d29yayBvbiBpUGhvbmU2cyBhbmQgc2ltaWxhcgorKyAgICAgICAgZGV2aWNlcyAgKEE5LCBBOVgp
LgorKworKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvRGlzcGxheU10bC5t
bToKKysgICAgICAgIChyeDo6RGlzcGxheU10bDo6Z2V0TWF4U3VwcG9ydGVkRVNWZXJzaW9uIGNv
bnN0KToKKysKKysyMDIxLTA2LTI4ICBLaW1tbyBLaW5udW5lbiAgPGtraW5udW5lbkBhcHBsZS5j
b20+CisrCisrICAgICAgICBBTkdMRSBNZXRhbCBpbmRleCBidWZmZXIgbGVmdCBtYXBwZWQgd2hl
biBidWlsZGluZyBwcmltaXRpdmUgcmVzdGFydCByYW5nZXMKKysgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjczNzEKKysKKysgICAgICAgIFJldmlld2Vk
IGJ5IEtlbm5ldGggUnVzc2VsbC4KKysKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVy
L21ldGFsL0J1ZmZlck10bC5tbToKKysgICAgICAgIChyeDo6Y2FsY3VsYXRlUmVzdGFydFJhbmdl
cyk6CisrICAgICAgICBBZGQgdW5tYXAuCisrCisrMjAyMS0wNi0yNSAgTXlsZXMgQy4gTWF4Zmll
bGQgIDxtbWF4ZmllbGRAYXBwbGUuY29tPgorKworKyAgICAgICAgW21hY09TXSBXZWJHTCBjb250
ZW50IGlzIHVuYWJsZSB0byB1c2UgdGhlIGRpc2NyZXRlIEdQVQorKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNzQwOAorKyAgICAgICAgPHJkYXI6Ly9w
cm9ibGVtLzc5MjE2NTA2PgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGVhbiBKYWNrc29uLgor
KworKyAgICAgICAgVGhlcmUgYXBwZWFycyB0byBiZSBhIGtleSBjb2xsaXNpb246CisrCisrICAg
ICAgICBTb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9pbmNsdWRlL3BsYXRmb3JtL1BsYXRmb3JtTWV0
aG9kcy5oOiNkZWZpbmUgRUdMX1BMQVRGT1JNX0FOR0xFX1BMQVRGT1JNX01FVEhPRFNfQU5HTEVY
IDB4MzQ4MgorKyAgICAgICAgU291cmNlL1RoaXJkUGFydHkvQU5HTEUvaW5jbHVkZS9FR0wvZWds
ZXh0X2FuZ2xlLmg6I2RlZmluZSBFR0xfUE9XRVJfUFJFRkVSRU5DRV9BTkdMRSAweDM0ODIKKysK
KysgICAgICAgIEJvdGggdGhlc2Uga2V5cyBzZWVtIHRvIGJlIGFjY2VwdGVkIGJ5IEVHTF9HZXRQ
bGF0Zm9ybURpc3BsYXlFWFQoKS4KKysKKysgICAgICAgIFRoaXMgcGF0Y2gganVzdCBjaGFuZ2Vz
IHRoZSB2YWx1ZSBvZiBvbmUgb2YgdGhlbSB0byBhIHZhbHVlIEkgcGlja2VkIG91dCBvZiBhIGhh
dCwganVzdCBzbyB0aGV5IGRvbid0IGNvbmZsaWN0LgorKyAgICAgICAgV2Ugc2hvdWxkIHdvcmsg
d2l0aCB1cHN0cmVhbSB0byBlaXRoZXI6CisrICAgICAgICBBKSBGaW5kIGEgYmV0dGVyIHNvbHV0
aW9uIChtYXliZSBkaXNhbWJpZ3VhdGUgdGhlc2UgdmFsdWVzIGJhc2VkIG9uIHdoaWNoIGZ1bmN0
aW9uIGlzIGFjY2VwdGluZyB0aGVtKSwgb3IKKysgICAgICAgIEIpIE1ha2UgYSByb2J1c3Qgd2F5
IHRvIG1ha2Ugc3VyZSBrZXlzIGRvbid0IGNvbGxpZGUgaW4gdGhlIGZ1dHVyZS4KKysKKysgICAg
ICAgICogaW5jbHVkZS9wbGF0Zm9ybS9QbGF0Zm9ybU1ldGhvZHMuaDoKKysKKysyMDIxLTA2LTI0
ICBKb2huIEN1bm5pbmdoYW0gIDxqb2huY3VubmluZ2hhbUBhcHBsZS5jb20+CisrCisrICAgICAg
ICBbQU5HTEUgTWV0YWxdIC0gU2V0IGJhcnJpZXJzIG9uIHRyYW5zZm9ybSBmZWVkYmFjayBidWZm
ZXJzIG9ubHkgdXAgdG8gdGhlIGluIHVzZSBidWZmZXIgY291bnQKKysgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjcyNzIKKysgICAgICAgIDxyZGFyOi8v
Nzk1ODc4NjE+CisrCisrICAgICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisrCisrICAg
ICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9Db250ZXh0TXRsLm1tOgorKyAgICAg
ICAgKHJ4OjpDb250ZXh0TXRsOjpvbkVuZFRyYW5zZm9ybUZlZWRiYWNrKToKKysKKysyMDIxLTA2
LTIzICBLeWxlIFBpZGRpbmd0b24gIDxrcGlkZGluZ3RvbkBhcHBsZS5jb20+CisrCisrICAgICAg
ICBGaXggaW5jb3JyZWN0IGluZGV4aW5nIC8gb3V0IG9mIGJvdW5kcyBhY2Nlc3MgaW4gZ2V0UmVz
dGFydEluZGljZXMKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMjcyNzQKKysgICAgICAgIDxyZGFyOi8vNzkyNDQ3ODk+CisrCisrICAgICAgICBJbiB0
aGUgY2FzZSB3aGVyZSBhIHJlc3RhcnQgaW5kZXggaXMgcHJlc2VudCBpbiB0aGUgbGFzdCBlbGVt
ZW50IG9mIGFuIGluZGV4IGFycmF5LCB3ZSBjYW4gYWNjaWRlbnRseQorKyAgICAgICAgYWNjZXNz
IG91dCBvZiBib3VuZHMuIEZpeCB0aGlzIGJ5IGNoZWNraW5nIGJvdW5kYXJpZXMsIGFuZCBmaXhp
bmcgb3RoZXIgaW5kZXhpbmcgZXJyb3JzCisrCisrICAgICAgICBUZXN0czogUmFuIGRlcXAvZnVu
Y3Rpb25hbC9nbGVzMy9wcmltaXRpdmVyZXN0YXJ0IHN1aXRlLiBQYXNzZWQgOCB0ZXN0cy4KKysK
KysgICAgICAgIFJldmlld2VkIGJ5IERlYW4gSmFja3Nvbi4KKysKKysgICAgICAgICogc3JjL2xp
YkFOR0xFL3JlbmRlcmVyL21ldGFsL0J1ZmZlck10bC5tbToKKysgICAgICAgIChyeDo6Y2FsY3Vs
YXRlUmVzdGFydFJhbmdlcyk6CisrCisrMjAyMS0wNi0yMyAgS3lsZSBQaWRkaW5ndG9uICA8a3Bp
ZGRpbmd0b25AYXBwbGUuY29tPgorKworKyAgICAgICAgR3VhcmQgYWdhaW5zdCBjb21waWxlIGZh
aWx1cmVzIG9mIHRoZSBkZWZhdWx0IGxpYnJhcmllcworKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNzIzOQorKyAgICAgICAgPHJkYXI6Ly83OTAzNzYy
Mz4KKysKKysgICAgICAgIFVuZGVyIGNlcnRhaW4gZXZlbnRzIChIaWdoIG1lbW9yeSB1c2FnZSks
IHRoZSBNVExDb21waWxlclNlcnZpY2UgY2FuIGZhaWwgd2hlbiBjcmVhdGluZyB0aGUgZGVmYXVs
dCBsaWJyYXJ5LgorKyAgICAgICAgR3VhcmQgYWdhaW5zdCBuaWwgcGlwZWxpbmVzIGJ5IGZhaWxp
bmcgR0wgY2FsbHMgaW5zdGVhZCwgaWYgdGhpcyBoYXBwZW5zLiBXaGlsZSB0aGlzIGNhbiBjcmVh
dGUgcmVuZGVyaW5nIGFydGlmYWN0cworKyAgICAgICAgZHVlIHRvIG1pc3NpbmcgYmxpdHMgLyBj
b252ZXJzaW9ucywgdGhpcyBjYW4gYXQgbGVhc3QgYXZvaWQgY3Jhc2hpbmcgdGhlIHByb2Nlc3Mu
CisrCisrICAgICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisrCisrICAgICAgICAqIHNy
Yy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9tdGxfcmVuZGVyX3V0aWxzLmg6CisrICAgICAgICAq
IHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9tdGxfcmVuZGVyX3V0aWxzLm1tOgorKyAgICAg
ICAgKHJ4OjptdGw6OkNsZWFyVXRpbHM6OnNldHVwQ2xlYXJXaXRoRHJhdyk6CisrICAgICAgICAo
cng6Om10bDo6Q2xlYXJVdGlsczo6Y2xlYXJXaXRoRHJhdyk6CisrICAgICAgICAocng6Om10bDo6
Q29sb3JCbGl0VXRpbHM6OnNldHVwQ29sb3JCbGl0V2l0aERyYXcpOgorKyAgICAgICAgKHJ4Ojpt
dGw6OkNvbG9yQmxpdFV0aWxzOjpibGl0Q29sb3JXaXRoRHJhdyk6CisrICAgICAgICAocng6Om10
bDo6RGVwdGhTdGVuY2lsQmxpdFV0aWxzOjpzZXR1cERlcHRoU3RlbmNpbEJsaXRXaXRoRHJhdyk6
CisrICAgICAgICAocng6Om10bDo6RGVwdGhTdGVuY2lsQmxpdFV0aWxzOjpibGl0RGVwdGhTdGVu
Y2lsV2l0aERyYXcpOgorKyAgICAgICAgKHJ4OjptdGw6OlZlcnRleEZvcm1hdENvbnZlcnNpb25V
dGlsczo6c2V0dXBDb21tb25Db252ZXJ0VmVydGV4Rm9ybWF0VG9GbG9hdCk6CisrICAgICAgICAo
cng6Om10bDo6VmVydGV4Rm9ybWF0Q29udmVyc2lvblV0aWxzOjpleHBhbmRWZXJ0ZXhGb3JtYXRD
b21wb25lbnRzVlMpOgorKyAgICAgICAgKHJ4OjptdGw6OlZlcnRleEZvcm1hdENvbnZlcnNpb25V
dGlsczo6c2V0dXBDb21tb25FeHBhbmRWZXJ0ZXhGb3JtYXRDb21wb25lbnRzKToKKysKKysyMDIx
LTA2LTIzICBLaW1tbyBLaW5udW5lbiAgPGtraW5udW5lbkBhcHBsZS5jb20+CisrCisrICAgICAg
ICByQUYgZHJpdmVuIFdlYkdMIHN1Ym1pdHMgZXhjZXNzaXZlIGFtb3VudCBvZiBHUFUgd29yayB3
aGVuIGZyYW1lcyBhcmUgc2xvdworKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTIyNzA1OQorKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzc5Mzg1ODU4Pgor
KworKyAgICAgICAgUmV2aWV3ZWQgYnkgS2VubmV0aCBSdXNzZWxsLgorKworKyAgICAgICAgQWR2
ZXJ0aXNlIEdMX0FSQl9zeW5jIGZvciB0aGUgTWV0YWwgYmFja2VuZC4KKysgICAgICAgIFNpbmNl
IEdMX0FSQl9zeW5jIGlzIGNvcmUgaW4gT3BlbkdMIEVTIDMuMCBhbmQgdGhlIE1ldGFsIGJhY2tl
bmQgYWR2ZXJ0aXNlcyBPcGVuR0wgRVMgMy4wLAorKyAgICAgICAgdGhlIEFQSSBtdXN0IGJlIHdv
cmtpbmcgYWxyZWFkeS4KKysKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFs
L0Rpc3BsYXlNdGwubW06CisrICAgICAgICAocng6OkRpc3BsYXlNdGw6OmluaXRpYWxpemVFeHRl
bnNpb25zIGNvbnN0KToKKysKKysyMDIxLTA2LTIyICBEZWFuIEphY2tzb24gIDxkaW5vQGFwcGxl
LmNvbT4KKysKKysgICAgICAgIFtBTkdMRV0gU3VwcG9ydCBpbXBvcnRpbmcgZXh0ZXJuYWwgTVRM
VGV4dHVyZXMKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0yMjY2OTAKKysKKysgICAgICAgIFJldmlld2VkIGJ5IFRpbSBIb3J0b24uCisrCisrICAgICAg
ICBTdXBwb3J0IE1UTFRleHR1cmVzIGFzIEdMIHRleHR1cmVzLgorKyAgICAgICAgTWVyZ2UgaHR0
cHM6Ly9jaHJvbWl1bS1yZXZpZXcuZ29vZ2xlc291cmNlLmNvbS9jL2FuZ2xlL2FuZ2xlLysvMjgy
MDE3OAorKworKyAgICAgICAgKiBBTkdMRS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorKyAg
ICAgICAgKiBleHRlbnNpb25zL0VHTF9BTkdMRV9tZXRhbF90ZXh0dXJlX2NsaWVudF9idWZmZXIu
dHh0OiBBZGRlZC4KKysgICAgICAgICogaW5jbHVkZS9FR0wvZWdsZXh0X2FuZ2xlLmg6CisrICAg
ICAgICAqIHNyYy9jb21tb24vdXRpbGl0aWVzLmNwcDoKKysgICAgICAgIChlZ2w6OklzRXh0ZXJu
YWxJbWFnZVRhcmdldCk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9DYXBzLmNwcDoKKysgICAg
ICAgIChlZ2w6OkRpc3BsYXlFeHRlbnNpb25zOjpnZXRTdHJpbmdzIGNvbnN0KToKKysgICAgICAg
ICogc3JjL2xpYkFOR0xFL0NhcHMuaDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVy
L21ldGFsL0JVSUxELmduOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwv
RGlzcGxheU10bC5oOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvRGlz
cGxheU10bC5tbToKKysgICAgICAgIChyeDo6RGlzcGxheU10bDo6Y3JlYXRlSW1hZ2UpOgorKyAg
ICAgICAgKHJ4OjpEaXNwbGF5TXRsOjpjcmVhdGVFeHRlcm5hbEltYWdlU2libGluZyk6CisrICAg
ICAgICAocng6OkRpc3BsYXlNdGw6OmdlbmVyYXRlRXh0ZW5zaW9ucyBjb25zdCk6CisrICAgICAg
ICAocng6OkRpc3BsYXlNdGw6OnZhbGlkYXRlSW1hZ2VDbGllbnRCdWZmZXIgY29uc3QpOgorKyAg
ICAgICAgKHJ4OjpEaXNwbGF5TXRsOjppbml0aWFsaXplRXh0ZW5zaW9ucyBjb25zdCk6CisrICAg
ICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9JbWFnZU10bC5oOiBBZGRlZC4KKysg
ICAgICAgIChyeDo6VGV4dHVyZUltYWdlU2libGluZ010bDo6Z2V0VGV4dHVyZSBjb25zdCk6Cisr
ICAgICAgICAocng6OlRleHR1cmVJbWFnZVNpYmxpbmdNdGw6OmdldEZvcm1hdE10bCBjb25zdCk6
CisrICAgICAgICAocng6OkltYWdlTXRsOjpnZXRUZXh0dXJlIGNvbnN0KToKKysgICAgICAgIChy
eDo6SW1hZ2VNdGw6OmdldEltYWdlVGV4dHVyZVR5cGUgY29uc3QpOgorKyAgICAgICAgKHJ4OjpJ
bWFnZU10bDo6Z2V0SW1hZ2VMZXZlbCBjb25zdCk6CisrICAgICAgICAocng6OkltYWdlTXRsOjpn
ZXRJbWFnZUxheWVyIGNvbnN0KToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21l
dGFsL0ltYWdlTXRsLm1tOiBBZGRlZC4KKysgICAgICAgIChyeDo6VGV4dHVyZUltYWdlU2libGlu
Z010bDo6VGV4dHVyZUltYWdlU2libGluZ010bCk6CisrICAgICAgICAocng6OlRleHR1cmVJbWFn
ZVNpYmxpbmdNdGw6On5UZXh0dXJlSW1hZ2VTaWJsaW5nTXRsKToKKysgICAgICAgIChyeDo6VGV4
dHVyZUltYWdlU2libGluZ010bDo6VmFsaWRhdGVDbGllbnRCdWZmZXIpOgorKyAgICAgICAgKHJ4
OjpUZXh0dXJlSW1hZ2VTaWJsaW5nTXRsOjppbml0aWFsaXplKToKKysgICAgICAgIChyeDo6VGV4
dHVyZUltYWdlU2libGluZ010bDo6aW5pdEltcGwpOgorKyAgICAgICAgKHJ4OjpUZXh0dXJlSW1h
Z2VTaWJsaW5nTXRsOjpvbkRlc3Ryb3kpOgorKyAgICAgICAgKHJ4OjpUZXh0dXJlSW1hZ2VTaWJs
aW5nTXRsOjpnZXRGb3JtYXQgY29uc3QpOgorKyAgICAgICAgKHJ4OjpUZXh0dXJlSW1hZ2VTaWJs
aW5nTXRsOjppc1JlbmRlcmFibGUgY29uc3QpOgorKyAgICAgICAgKHJ4OjpUZXh0dXJlSW1hZ2VT
aWJsaW5nTXRsOjppc1RleHR1cmFibGUgY29uc3QpOgorKyAgICAgICAgKHJ4OjpUZXh0dXJlSW1h
Z2VTaWJsaW5nTXRsOjpnZXRTaXplIGNvbnN0KToKKysgICAgICAgIChyeDo6VGV4dHVyZUltYWdl
U2libGluZ010bDo6Z2V0U2FtcGxlcyBjb25zdCk6CisrICAgICAgICAocng6OkltYWdlTXRsOjpJ
bWFnZU10bCk6CisrICAgICAgICAocng6OkltYWdlTXRsOjp+SW1hZ2VNdGwpOgorKyAgICAgICAg
KHJ4OjpJbWFnZU10bDo6b25EZXN0cm95KToKKysgICAgICAgIChyeDo6SW1hZ2VNdGw6OmluaXRp
YWxpemUpOgorKyAgICAgICAgKHJ4OjpJbWFnZU10bDo6b3JwaGFuKToKKysgICAgICAgICogc3Jj
L2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL1JlbmRlckJ1ZmZlck10bC5tbToKKysgICAgICAgIChy
eDo6UmVuZGVyYnVmZmVyTXRsOjpzZXRTdG9yYWdlRUdMSW1hZ2VUYXJnZXQpOgorKyAgICAgICAg
KiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvVGV4dHVyZU10bC5tbToKKysgICAgICAgIChy
eDo6VGV4dHVyZU10bDo6c2V0RUdMSW1hZ2VUYXJnZXQpOgorKyAgICAgICAgKiBzcmMvbGliQU5H
TEUvcmVuZGVyZXIvbWV0YWwvZ2VuX210bF9mb3JtYXRfdGFibGUucHk6CisrICAgICAgICAoZ2Vu
X2ltYWdlX21hcF9zd2l0Y2hfbWFjX2Nhc2UuZ2VuX2Zvcm1hdF9hc3NpZ25fY29kZSk6CisrICAg
ICAgICAoZ2VuX2ltYWdlX210bF90b19hbmdsZV9zd2l0Y2hfc3RyaW5nKToKKysgICAgICAgICht
YWluKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF9jb21tb24u
aDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF9mb3JtYXRfdGFi
bGVfYXV0b2dlbi5tbToKKysgICAgICAgIChyeDo6bXRsOjpGb3JtYXQ6Ok1ldGFsVG9BbmdsZUZv
cm1hdElEKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF9mb3Jt
YXRfdXRpbHMuaDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3ZhbGlkYXRpb25FR0wuY3BwOgor
KyAgICAgICAgKGVnbDo6VmFsaWRhdGVDcmVhdGVJbWFnZSk6CisrICAgICAgICAqIHNyYy90ZXN0
cy9CVUlMRC5nbjoKKysgICAgICAgICogc3JjL3Rlc3RzL2dsX3Rlc3RzL0ltYWdlVGVzdC5jcHA6
CisrICAgICAgICAoYW5nbGU6OlRFU1RfUCk6CisrICAgICAgICAqIHNyYy90ZXN0cy9nbF90ZXN0
cy9JbWFnZVRlc3RNZXRhbC5tbTogQWRkZWQuCisrICAgICAgICAoYW5nbGU6OlNjb3BlTWV0YWxU
ZXh0dXJlUmVmOjpTY29wZU1ldGFsVGV4dHVyZVJlZik6CisrICAgICAgICAoYW5nbGU6OlNjb3Bl
TWV0YWxUZXh0dXJlUmVmOjp+U2NvcGVNZXRhbFRleHR1cmVSZWYpOgorKyAgICAgICAgKGFuZ2xl
OjpTY29wZU1ldGFsVGV4dHVyZVJlZjo6Z2V0IGNvbnN0KToKKysgICAgICAgIChhbmdsZTo6U2Nv
cGVNZXRhbFRleHR1cmVSZWY6Om9wZXJhdG9yIGlkPE1UTFRleHR1cmU+IGNvbnN0KToKKysgICAg
ICAgIChhbmdsZTo6U2NvcGVNZXRhbFRleHR1cmVSZWY6Om9wZXJhdG9yPSk6CisrICAgICAgICAo
YW5nbGU6OlNjb3BlTWV0YWxUZXh0dXJlUmVmOjpyZWxlYXNlKToKKysgICAgICAgIChhbmdsZTo6
Q3JlYXRlTWV0YWxUZXh0dXJlMkQpOgorKyAgICAgICAgKGFuZ2xlOjpJbWFnZVRlc3RNZXRhbDo6
SW1hZ2VUZXN0TWV0YWwpOgorKyAgICAgICAgKGFuZ2xlOjpJbWFnZVRlc3RNZXRhbDo6Z2V0TXRs
RGV2aWNlKToKKysgICAgICAgIChhbmdsZTo6SW1hZ2VUZXN0TWV0YWw6OmNyZWF0ZU10bFRleHR1
cmUyRCk6CisrICAgICAgICAoYW5nbGU6OkltYWdlVGVzdE1ldGFsOjp2ZXJpZnlSZXN1bHRzVGV4
dHVyZSk6CisrICAgICAgICAoYW5nbGU6OkltYWdlVGVzdE1ldGFsOjp2ZXJpZnlSZXN1bHRzMkQp
OgorKyAgICAgICAgKGFuZ2xlOjpJbWFnZVRlc3RNZXRhbDo6cmVpbnRlcnByZXRIZWxwZXIpOgor
KyAgICAgICAgKGFuZ2xlOjpJbWFnZVRlc3RNZXRhbDo6aGFzSW1hZ2VOYXRpdmVNZXRhbFRleHR1
cmVFeHQgY29uc3QpOgorKyAgICAgICAgKGFuZ2xlOjpJbWFnZVRlc3RNZXRhbDo6aGFzT0VTRXh0
IGNvbnN0KToKKysgICAgICAgIChhbmdsZTo6SW1hZ2VUZXN0TWV0YWw6Omhhc0Jhc2VFeHQgY29u
c3QpOgorKyAgICAgICAgKGFuZ2xlOjpJbWFnZVRlc3RNZXRhbDo6c291cmNlTWV0YWxUYXJnZXQy
RF9oZWxwZXIpOgorKyAgICAgICAgKGFuZ2xlOjpURVNUX1ApOgorKworKzIwMjEtMDYtMTcgIEt5
bGUgUGlkZGluZ3RvbiAgPGtwaWRkaW5ndG9uQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFtNZXRh
bCBBTkdMRV0gU2hhZGVycyB3aXRoIHJlc2VydmVkIG1ldGFsIGtleXdvcmRzIGRvIG5vdCB0cmFu
c2xhdGUsIG5vciBkbyBzaGFkZXJzIHdpdGggc3RydWN0IGFuZCB2YXJpYWJsZSBuYW1lcyB0aGF0
IGFyZSB0aGUgc2FtZSBleGNlcHQgcHJlZml4ZWQgYnkgYW4gdW5kZXJzY29yZQorKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNjY2MAorKworKyAgICAg
ICAgRml4IGtleXdvcmQgdHJhbnNsYXRpb24gcHJvYmxlbSBieSBjb3JyZWN0aW5nIHN5bWJvbCBz
cGFjZS4gVGhpcyBhdm9pZHMgcmVuYW1pbmcgc3RydWN0cyB1bm5lY2Vzc2FyaWx5IAorKworKyAg
ICAgICAgUmV2aWV3ZWQgYnkgRGVhbiBKYWNrc29uLgorKworKyAgICAgICAgKiBzcmMvY29tcGls
ZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QvUmV3cml0ZUtleXdvcmRzLmNwcDoK
KysgICAgICAgIChzaDo6UmV3cml0ZXI6OmNyZWF0ZVJlbmFtZWQpOgorKworKzIwMjEtMDYtMTYg
IEtpbW1vIEtpbm51bmVuICA8a2tpbm51bmVuQGFwcGxlLmNvbT4KKysKKysgICAgICAgIEFOR0xF
IE1ldGFsIGdsIHN5bmMgb2JqZWN0cyBkbyBub3Qgd29yayBpbiBjYXNlIG9mIGxpc3RlbmVyIGJl
aW5nIG5lZWRlZAorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTIyNzAyNAorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgUGVyIEFybmUgVm9sbGFuLgorKwor
KyAgICAgICAgQWRkIGFuIGFzc2VydCB0byBub3RpY2Ugd2hlbiBNVExTaGFyZWRFdmVudExpc3Rl
bmVyIGluc3RhbnRpYXRpb24KKysgICAgICAgIGZhaWxzLiBXaXRob3V0IHRoaXMsIHRoZSBmZW5j
ZSBpbXBsZW1lbnRhdGlvbiB3b3VsZCBub3Qgc2lnbmFsCisrICAgICAgICB0aGUgY29tcGxldGlv
biB1bnRpbCB0aGUgdGltZW91dCB3b3VsZCBwYXNzLgorKworKyAgICAgICAgKiBzcmMvbGliQU5H
TEUvcmVuZGVyZXIvbWV0YWwvRGlzcGxheU10bC5tbToKKysgICAgICAgIChyeDo6RGlzcGxheU10
bDo6Z2V0T3JDcmVhdGVTaGFyZWRFdmVudExpc3RlbmVyKToKKysKKysyMDIxLTA2LTE2ICBLaW1t
byBLaW5udW5lbiAgPGtraW5udW5lbkBhcHBsZS5jb20+CisrCisrICAgICAgICBBTkdMRSBNZXRh
bCBBdXRvT2JqQ1B0ciA9PSBudWxscHRyIGNvbXBhcmlzb24gaXMgaW52ZXJ0ZWQKKysgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjcwMjYKKysKKysgICAg
ICAgIFJldmlld2VkIGJ5IEFuZGVycyBDYXJsc3Nvbi4KKysKKysgICAgICAgIE1ha2UgaXQgbW9y
ZSBjb3JyZWN0IGFuZCBhZGQgIT0gbnVsbHB0ciB2YXJpYW50IGZvcgorKyAgICAgICAgY29uc2lz
dGVuY3kuCisrCisrICAgICAgICBVc2Ugc3RkOjpudWxscHRyX3QgaW5zdGVhZCBvZiBjb25zdCBz
dGQ6Om51bGxwdHJfdCAmCisrICAgICAgICBpbiBhbGwgZnVuY3Rpb25zIGZvciBjb25zaXN0ZW5j
eS4KKysKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF9jb21tb24u
aDoKKysgICAgICAgIChyeDo6bXRsOjpBdXRvT2JqQ1B0cjo6b3BlcmF0b3I9PSBjb25zdCk6Cisr
ICAgICAgICAocng6Om10bDo6QXV0b09iakNQdHI6Om9wZXJhdG9yIT0gY29uc3QpOgorKworKzIw
MjEtMDYtMTUgIEt5bGUgUGlkZGluZ3RvbiAgPGtwaWRkaW5ndG9uQGFwcGxlLmNvbT4KKysKKysg
ICAgICAgIFRlbnNvcmZsb3cuanMgQnJva2VuIGluIFNhZmFyaSAxNQorKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNjk1MworKworKyAgICAgICAgVGVu
c29yZmxvdyBzaGFkZXJzIHVzZSBhICdOQU4nIHVuaWZvcm0uIFRoaXMgaXMgYSByZXNlcnZlZCBr
ZXl3b3JkCisrICAgICAgICBpbiBtZXRhbC4gQWRkIE5BTiB0byB0aGUgcmVzZXJ2ZWQgbGlzdC4K
KysKKysgICAgICAgICdpbmYnIGNvbnN0YW50cyBuZWVkIHRvIGJlIHJlcGxhY2VkIHdpdGggSU5G
SU5JVFksIG11Y2ggbGlrZSBuYW4gY29uc3RhbnRzIG5lZWQgdG8gYmUgcmVwbGFjZWQgd2l0aCBO
QU4KKysgICAgICAgIFJldmlld2VkIGJ5IEtlbm5ldGggUnVzc2VsbC4KKysKKysgICAgICAgICog
c3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0LmNwcDoKKysgICAg
ICAgIChzaDo6R2V0TXNsS2V5d29yZHMpOgorKworKzIwMjEtMDYtMTUgIEFsZXggQ2hyaXN0ZW5z
ZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KKysKKysgICAgICAgIEZpeCB0eXBvIGluIHIy
NzYzMTgKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MjcwNDEKKysgICAgICAgIDxyZGFyOi8vNzYyODQ4ODk+CisrCisrICAgICAgICBSZXZpZXdlZCBi
eSBDaHJpcyBEdW1lei4KKysKKysgICAgICAgIEAgdXNlcyB0aGUgc3RyaW5nIEAoRFlMSUJfSU5T
VEFMTF9OQU1FX0JBU0UpCisrICAgICAgICAkIHVzZXMgdGhlIHZhbHVlIG9mIHRoZSBlbnZpcm9u
bWVudCB2YXJpYWJsZS4KKysgICAgICAgIFRoaXMgdHVybnMgb3V0IHRvIGJlIGFuIGltcG9ydGFu
dCBkaWZmZXJlbmNlLgorKworKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9BTkdMRS1keW5hbWlj
LnhjY29uZmlnOgorKworKzIwMjEtMDYtMTEgIEVsZW5pIE1hcmlhIFN0ZWEgIDxlc3RlYUBpZ2Fs
aWEuY29tPgorKworKyAgICAgICAgQU5HTEUgRUdMIGFuZCBHTEVTIGxpYnJhcmllcyBzaG91bGQg
bGluayB3aXRoIGxpYiBkbC4KKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0yMjY5MjAKKysKKysgICAgICAgIFJldmlld2VkIGJ5IEtlbm5ldGggUnVzc2Vs
bC4KKysKKysgICAgICAgIEdMRVMgYW5kIEVHTCB0aGF0IGFyZSBnZW5lcmF0ZWQgZnJvbSBBTkdM
RSBzaG91bGQgbGluaworKyAgICAgICAgd2l0aCBsaWJkbCBiZWNhdXNlIHRoZXkgdXNlIGRsc3lt
IGFuZCBkbG9wZW4uIEFsc28sCisrICAgICAgICB3aXRoIHRoZSB1cGRhdGVkIENNYWtlTGlzdHMu
dHh0IHdlIGNhbiBzYWZlbHkgbGluayB3aXRoIGxpYkVHTAorKyAgICAgICAgd2hlbiBVU0VfQU5H
TEVfV0VCR0wgaXMgc2V0IGJlY2F1c2UgdGhlIHN5bWJvbHMgb2YgRUdMIGFyZSBub3cKKysgICAg
ICAgIGZvdW5kLgorKworKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDoKKysKKysyMDIxLTA2LTEw
ICBEb24gT2xtc3RlYWQgIDxkb24ub2xtc3RlYWRAc29ueS5jb20+CisrCisrICAgICAgICBbQ01h
a2VdIE1ha2UgQU5HTEUgbGlicmFyeSB0eXBlcyBjb25maWd1cmFibGUKKysgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjY4NDAKKysKKysgICAgICAgIFJl
dmlld2VkIGJ5IEtlbm5ldGggUnVzc2VsbC4KKysKKysgICAgICAgIFRoZSB0eXBlIGZvciBBTkdM
RSdzIGxpYnJhcmllcyB3YXMgYmVpbmcgaGFyZCBjb2RlZC4gTm93IHRoZSBsaWJyYXJpZXMgY2Fu
IGJlIHNldCBieQorKyAgICAgICAgc3BlY2lmeWluZyB0aGUgX0xJQlJBUllfVFlQRSB3aGljaCBk
ZWZhdWx0cyB0byBTVEFUSUMuIFdpbmRvd3MgcGxhdGZvcm1zIG92ZXJyaWRlIHRoaXMKKysgICAg
ICAgIGFuZCB1c2UgU0hBUkVEIGxpYnJhcmllcy4KKysKKysgICAgICAgIEFkZGl0aW9uYWxseSBt
YWtlIGNvbXBpbGluZyBBTkdMRSdzIEVHTCBsaWJyYXJ5IGNvbnRpbmdlbnQgb24gVVNFX0FOR0xF
X0VHTCBiZWluZyBlbmFibGVkCisrICAgICAgICBzaW5jZSBpdHMgbm90IHVzZWQgb3RoZXJ3aXNl
LgorKworKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDoKKysgICAgICAgICogUGxhdGZvcm1GVFcu
Y21ha2U6CisrICAgICAgICAqIFBsYXRmb3JtV2luLmNtYWtlOgorKworKzIwMjEtMDYtMDIgIEt5
bGUgUGlkZGluZ3RvbiAgPGtwaWRkaW5ndG9uQGFwcGxlLmNvbT4KKysKKysgICAgICAgIEFkZCAn
bWl4JyBvdmVycmlkZSB3aXRoIGJvb2wtdmVjdG9ycyB0byBNU0wgdHJhbnNsYXRvcgorKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNjM2NgorKworKyAg
ICAgICAgUmV2aWV3ZWQgYnkgRGVhbiBKYWNrc29uLgorKworKyAgICAgICAgQWRkIGluICdtaXgn
IG92ZXJyaWRlcywgYW5kIGxvZ2ljIGZvciBzZWxlY3RpbmcgbWl4IHdpdGggYm9vbCB3aGVuIG5l
Y2Vzc2FyeS4KKysKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRv
ck1ldGFsRGlyZWN0L0VtaXRNZXRhbC5jcHA6CisrICAgICAgICAoR2V0T3BlcmF0b3JTdHJpbmcp
OgorKyAgICAgICAgKEdlbk1ldGFsVHJhdmVyc2VyOjp2aXNpdEFnZ3JlZ2F0ZSk6CisrICAgICAg
ICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC9Qcm9ncmFt
UHJlbHVkZS5jcHA6CisrCisrMjAyMS0wNi0wMSAgS3lsZSBQaWRkaW5ndG9uICA8a3BpZGRpbmd0
b25AYXBwbGUuY29tPgorKworKyAgICAgICAgW01ldGFsIEFOR0xFXSB0cmFuc2Zvcm1GZWVkYmFj
ayBzYW1wbGVzIG9uIHdlYmdsc2FtcGxlcy5vcmcgZG8gbm90IHJlbmRlciBjb3JyZWN0bHkKKysg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjYyODUKKysg
ICAgICAgIDxyZGFyOi8vNzg1MjQ3NzM+CisrCisrICAgICAgICBSZXZpZXdlZCBieSBEZWFuIEph
Y2tzb24uCisrCisrICAgICAgICBNZXRhbCBBTkdMRSBkb2VzIG5vdCByZW5kZXIgdGhlc2Ugc2Ft
cGxlcyBjb3JyZWN0bHksIGZvciBhIG51bWJlciBvZiByZWFzb25zLiAKKysgICAgICAgIEZvciB0
cmFuc2Zvcm1fZmVlZGJhY2tfaW50ZXJsZWF2ZWQgYW5kIHNlcGVyYXRlZCwgV2UgbmVlZCB0byBz
dGFydCBhIG5ldyByZW5kZXJFbmNvZGVyIHRvIGdldCB0aGUgcmVzdWx0cyBmcm9tIHRoZSB0cmFu
c2Zvcm0gZmVlZGJhY2suIAorKyAgICAgICAgZm9yIHRyYW5zZm9ybV9mZWVkYmFjay1zZXBlcmF0
ZWRfMiwgd2UgbmVlZCB0byBpbnZhbGlkYXRlIHRoZSBjdXJyZW50IHJlbmRlciBwYXNzIGRlc2Ny
aXB0b3IgaW4gb3JkZXIgdG8gc3dpdGNoIHRvIHRoZSByYXN0ZXJpemVyLWVuYWJsZWQgdmVyc2lv
biBvZiB0aGUgc2hhZGVyLgorKyAgICAgICAgVGVzdGluZzogUmFuIGFsbCB0cmFuc2Zvcm0gZmVl
ZGJhY2sgdGVzdHMgZnJvbSBkZXFwIHN1aXRlIHRvIGVuc3VyZSBubyByZWdyZXNzaW9ucyBhcmUg
cHJlc2VudC4KKysKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL0NvbnRl
eHRNdGwuaDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL0NvbnRleHRN
dGwubW06CisrICAgICAgICAocng6OkNvbnRleHRNdGw6OmRyYXdUcmlGYW5BcnJheXNXaXRoQmFz
ZVZlcnRleCk6CisrICAgICAgICAocng6OkNvbnRleHRNdGw6OmRyYXdBcnJheXNJbXBsKToKKysg
ICAgICAgIChyeDo6Q29udGV4dE10bDo6ZHJhd1RyaUZhbkVsZW1lbnRzKToKKysgICAgICAgIChy
eDo6Q29udGV4dE10bDo6cHJlcGFyZUZvclRyYW5zZm9ybUZlZWRiYWNrUGFzc1R3byk6CisrICAg
ICAgICAocng6OkNvbnRleHRNdGw6OmRyYXdMaW5lTG9vcEVsZW1lbnRzKToKKysgICAgICAgIChy
eDo6Q29udGV4dE10bDo6ZHJhd0VsZW1lbnRzSW1wbCk6CisrICAgICAgICAocng6OkNvbnRleHRN
dGw6Om9uRW5kVHJhbnNmb3JtRmVlZGJhY2spOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVu
ZGVyZXIvbWV0YWwvVHJhbnNmb3JtRmVlZGJhY2tNdGwubW06CisrICAgICAgICAocng6OlRyYW5z
Zm9ybUZlZWRiYWNrTXRsOjplbmQpOgorKworKzIwMjEtMDYtMDEgIEtpbW1vIEtpbm51bmVuICA8
a2tpbm51bmVuQGFwcGxlLmNvbT4KKysKKysgICAgICAgIEFOR0xFIE1ldGFsIHRyYW5zbGF0b3Ig
cHJlLXJvdGF0aW9uIGNvZGUgaXMgdW51c2VkIGFuZCBpdCBhc3NlcnRzIHdoZW4gdXNlZAorKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNjI2MgorKwor
KyAgICAgICAgUmV2aWV3ZWQgYnkgRGVhbiBKYWNrc29uLgorKworKyAgICAgICAgUmVtb3ZlIHRo
ZSBwcmUtcm90YXRpb24gY29kZS4gSXQgaXMgQW5kcm9pZCBzcGVjaWZpYyBhbmQgbW9zdCBsaWtl
bHkgaXQgaXMgdXNlZnVsCisrICAgICAgICBvbmx5IHdoZW4gQU5HTEUgaXMgdXNlZCBhcyB0aGUg
ZHJhd2luZyBtZWNoYW5pc20gZm9yIHRoZSBwcmltYXJ5IGFwcCB3aW5kb3cgcGljdHVyZS4KKysg
ICAgICAgIFRodXMgbW9zdCBsaWtlbHkgaXQgaXMgbm90IHVzZWZ1bCBpbiBXZWJLaXQgb24gQ29j
b2EgcGxhdGZvcm1zIHdoZXJlIHRoZSB3aW5kb3cKKysgICAgICAgIHNlcnZlciBkb2VzIHRoZSBj
b21wb3NpdGluZy4KKysKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNs
YXRvck1ldGFsRGlyZWN0LmNwcDoKKysgICAgICAgIChzaDo6VHJhbnNsYXRvck1ldGFsRGlyZWN0
Ojp0cmFuc2xhdGVJbXBsKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJh
bnNsYXRvck1ldGFsRGlyZWN0Lmg6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9t
ZXRhbC9Db250ZXh0TXRsLmg6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRh
bC9Db250ZXh0TXRsLm1tOgorKyAgICAgICAgKHJ4OjpDb250ZXh0TXRsOjpoYW5kbGVEaXJ0eURy
aXZlclVuaWZvcm1zKToKKysKKysyMDIxLTA1LTMxICBLaW1tbyBLaW5udW5lbiAgPGtraW5udW5l
bkBhcHBsZS5jb20+CisrCisrICAgICAgICBDaGVycnktcGljayBBTkdMRTogQWRkIGFycmF5IGJv
dW5kcyBjaGVja3MgZm9yIFdlYkdMIHNoYWRlcnMKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjYzOTcKKysKKysgICAgICAgIFJldmlld2VkIGJ5IERl
YW4gSmFja3Nvbi4KKysKKysgICAgICAgIENoZXJyeS1waWNrIEFOR0xFIGNvbW1pdCBiMGQzOWJh
MmFiYTIxODQwMmZmMmYzMmY2ZTE2ZjE4Y2Y0OTc1ZmY0CisrICAgICAgICBBdCB0aGUgbW9tZW50
IGRvZXMgbm90IGFmZmVjdCBhbnkgV2ViS2l0IGNsaWVudC4KKysgICAgICAgIE1ha2VzIHRoZSBj
b2RlIGNvbnNpc3RlbnQgd2l0aCBPcGVuR0wuCisrICAgICAgICBNYWtlcyBpdCBlYXNpZXIgdG8g
dW5kZXJzdGFuZCBzYW1lIGNoYW5nZSBpbiBNZXRhbCBiYWNrZW5kLgorKworKyAgICAgICAgVXBz
dHJlYW0gZGVzY3JpcHRpb246CisrICAgICAgICBBZGQgYXJyYXkgYm91bmRzIGNoZWNrcyBmb3Ig
V2ViR0wgc2hhZGVycworKyAgICAgICAgV2ViR0wgc2hhZGVycyBtYXkgY29udGFpbiBPT0IgYXJy
YXkgYWNjZXNzZXMgd2hpY2ggaW4gdHVybgorKyAgICAgICAgY2F1c2UgdW5kZWZpbmVkIGJlaGF2
aW9yLCB3aGljaCBtYXkgcmVzdWx0IGluIHNlY3VyaXR5CisrICAgICAgICBpc3N1ZXMuIFRoaXMg
d2FzIGRldGVjdGVkIGFzIGFuIFVOS05PV04gUkVBRCBieSBVQlNBTiB3aGlsZQorKyAgICAgICAg
dGVzdGluZyB3aXRoIFN3QU5HTEUuCisrCisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJl
ci92dWxrYW4vU2hhZGVyVmsuY3BwOgorKyAgICAgICAgKHJ4OjpTaGFkZXJWazo6Y29tcGlsZSk6
CisrCisrMjAyMS0wNS0yOCAgS2ltbW8gS2lubnVuZW4gIDxra2lubnVuZW5AYXBwbGUuY29tPgor
KworKyAgICAgICAgQU5HTEUgTWV0YWwgdHJhbnNsYXRvciBzaG91bGQgYWx3YXlzIGNvbGxlY3Qg
dmFyaWFibGVzCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MjI2MjYxCisrCisrICAgICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisrCisrICAg
ICAgICBBbHdheXMgY29sbGVjdCB0aGUgdmFyaWFibGVzIHdoZW4gdHJhbnNsYXRpbmcgR0xTTCB0
byBNZXRhbC4KKysgICAgICAgIFRoaXMgd2F5IHRlc3RzIHRoYXQgaW52b2tlIHRyYW5zbGF0aW9u
IHdpdGhvdXQgU0hfVkFSSUFCTEVTIHN0aWxsCisrICAgICAgICB3b3JrLgorKworKyAgICAgICAg
KiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QuY3BwOgorKyAg
ICAgICAgKHNoOjpUcmFuc2xhdG9yTWV0YWxEaXJlY3Q6OnRyYW5zbGF0ZUltcGwpOgorKyAgICAg
ICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QuaDoKKysK
KysyMDIxLTA1LTI3ICBLaW1tbyBLaW5udW5lbiAgPGtraW5udW5lbkBhcHBsZS5jb20+CisrCisr
ICAgICAgICBBTkdMRSBjb3VsZCBiZSBjb21waWxlZCB3aXRoICJhZ2dyZXNzaXZlIHVuaW5pdGlh
bGlzZWQgdmFyaWFibGUiIHNldHRpbmcKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMjYyNjAKKysKKysgICAgICAgIFJldmlld2VkIGJ5IEFsZXhleSBQ
cm9za3VyeWFrb3YuCisrCisrICAgICAgICBUdXJuIG9uIGNvbXBpbGVyIGZsYWcgdG8gd2FybiBh
Ym91dCB1bmluaXRpYWxpemVkIHZhcmlhYmxlcyB0aGF0IG1pZ2h0IGJlCisrICAgICAgICBjb25k
aXRpb25hbGx5IHVuaW5pdGlhbGl6ZWQuIFRoaXMgaXMgdGhlIHNhbWUgZmxhZyBhcyB1cHN0cmVh
bSBBTkdMRSB1c2VzLgorKyAgICAgICAgRml4IGEgc3B1cmlvdXMgd2FybmluZyBwcm9kdWNlZCBi
eSB0aGlzIGZsYWcuCisrICAgICAgICBUaGlzIGhlbHBzIGluIHNjZW5hcmlvcyB3aGVyZSBjdXN0
b20gdGFyZ2V0cyBjb21waWxlIEFOR0xFIHNvdXJjZXMgYW5kCisrICAgICAgICB0aGlzIGZsYWcg
c2V0LCBzdWNoIGFzIHRlc3RzLgorKworKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9CYXNlLnhj
Y29uZmlnOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0
YWxEaXJlY3QvRml4VHlwZUNvbnN0cnVjdG9ycy5jcHA6CisrCisrMjAyMS0wNS0yNyAgS2ltbW8g
S2lubnVuZW4gIDxra2lubnVuZW5AYXBwbGUuY29tPgorKworKyAgICAgICAgQ2hlcnJ5LXBpY2sg
QU5HTEU6IEQzRDExOiBTa2lwIGJsaXRzIGlmIHRoZXJlIGlzIG5vIGludGVyc2VjdGlvbiBvZiBk
ZXN0IGFyZWFzCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MjI1MTkwCisrICAgICAgICA8cmRhcjovLzc3MDg0MTU1PgorKworKyAgICAgICAgUmV2aWV3
ZWQgYnkgRGF2aWQgS2lsemVyLgorKworKyAgICAgICAgQ2hlcnJ5LXBpY2sgQU5HTEUgY29tbWl0
IGI1NzQ2NDNlZjI4YzkyZmNlYTUxMjJkZDdhNzJhY2I0MmE1MTRlZWQKKysgICAgICAgIEZpeGVz
IGEgc2VjdXJpdHkgaXNzdWUgb24gRDNEMTEuCisrICAgICAgICBQb3RlbnRpYWwgYSBjb3JyZWN0
bmVzcyBpc3N1ZSBvbiBzb21lIE9wZW5HTCBkcml2ZXJzLgorKyAgICAgICAgTm8gZWZmZWN0IG9u
IE1ldGFsLCBidXQgdGhlIG5vZGlzY2FyZCBwYXJ0IGlzIHN0aWxsIHVzZWZ1bC4KKysKKysgICAg
ICAgIFVwc3RyZWFtIGRlc2NyaXB0aW9uOgorKyAgICAgICAgRDNEMTE6IFNraXAgYmxpdHMgaWYg
dGhlcmUgaXMgbm8gaW50ZXJzZWN0aW9uIG9mIGRlc3QgYXJlYXMKKysKKysgICAgICAgIEJsaXQx
MSB3b3VsZCBjbGlwIHRoZSBkZXN0aW5hdGlvbiByZWN0YW5nbGUgd2l0aCB0aGUgZGVzdGluYXRp
b24gc2l6ZQorKyAgICAgICAgYnV0IGlnbm9yZSB0aGUgcmVzdWx0LiBnbDo6Q2xpcFJlY3Rhbmds
ZSByZXR1cm5zIGZhbHNlIHdoZW4gdGhlCisrICAgICAgICByZWN0YW5nbGVzIGRvIG5vdCBpbnRl
cnNlY3QgYXQgYWxsLCBpbmRpY2F0aW5nIHRoZSBibGl0IGNhbiBiZSBza2lwcGVkLgorKworKyAg
ICAgICAgVGhpcyBjb3VsZCBsZWFkIHRvIGFuIG91dC1vZi1ib3VuZHMgd3JpdGUgdG8gdGhlIEdQ
VSBtZW1vcnkgZm9yIHRoZQorKyAgICAgICAgZGVzdGluYXRpb24gdGV4dHVyZS4KKysKKysgICAg
ICAgIE1hcmsgQ2xpcFJlY3RhbmdsZSBhcyBub2Rpc2NhcmQgdG8gcHJldmVudCBmdXR1cmUgaXNz
dWVzLgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvYW5nbGV0eXBlcy5oOgorKyAgICAgICAgKiBz
cmMvbGliQU5HTEUvcmVuZGVyZXIvZDNkL2QzZDExL0JsaXQxMS5jcHA6CisrICAgICAgICAqIHNy
Yy9saWJBTkdMRS9yZW5kZXJlci9nbC9GcmFtZWJ1ZmZlckdMLmNwcDoKKysgICAgICAgIChyeDo6
RnJhbWVidWZmZXJHTDo6Y2xpcFNyY1JlZ2lvbik6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9y
ZW5kZXJlci9tZXRhbC9Db250ZXh0TXRsLm1tOgorKyAgICAgICAgKHJ4OjpDb250ZXh0TXRsOjp1
cGRhdGVTY2lzc29yKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9D
b250ZXh0VmsuY3BwOgorKyAgICAgICAgKHJ4OjpDb250ZXh0Vms6OnVwZGF0ZVNjaXNzb3IpOgor
KyAgICAgICAgKiBzcmMvdGVzdHMvZ2xfdGVzdHMvQmxpdEZyYW1lYnVmZmVyQU5HTEVUZXN0LmNw
cDoKKysgICAgICAgIChURVNUX1ApOgorKworKzIwMjEtMDUtMjYgIERvbiBPbG1zdGVhZCAgPGRv
bi5vbG1zdGVhZEBzb255LmNvbT4KKysKKysgICAgICAgIFtDTWFrZV0gU3VwcG9ydCBVU0VfQU5H
TEVfRUdMIG9uIGFkZGl0aW9uYWwgcGxhdGZvcm1zCisrICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI0ODg4CisrICAgICAgICA8cmRhcjovL3Byb2JsZW0v
NzcyODAyMTE+CisrCisrICAgICAgICBSZXZpZXdlZCBieSBLZW4gUnVzc2VsbC4KKysKKysgICAg
ICAgIFN1cHBvcnQgQU5HTEUgdXNpbmcgdGhlIE9wZW5HTCBiYWNrZW5kIGZvciBHVEsuIFN1cHBv
cnQgQU5HTEUgdXNpbmcgTWV0YWwKKysgICAgICAgIGJhY2tlbmQgZm9yIE1hYy4gQWRkIHRoZSBn
ZW5lcmF0ZWQgc291cmNlcyBmb3IgdGhlc2UgdHdvIGJhY2tlbmRzLgorKworKyAgICAgICAgQ2xl
YW4gdXAgdGhlIENNYWtlIGFuZCBpbnRyb2R1Y2UgYWRkaXRpb25hbCB0YXJnZXRzLgorKworKyAg
ICAgICAgKiBDTWFrZUxpc3RzLnR4dDoKKysgICAgICAgICogQ29tcGlsZXIuY21ha2U6CisrICAg
ICAgICAqIEdMLmNtYWtlOiBBZGRlZC4KKysgICAgICAgICogTWV0YWwuY21ha2U6IEFkZGVkLgor
KyAgICAgICAgKiBQbGF0Zm9ybUZUVy5jbWFrZToKKysgICAgICAgICogUGxhdGZvcm1HVEsuY21h
a2U6CisrICAgICAgICAqIFBsYXRmb3JtTWFjLmNtYWtlOgorKyAgICAgICAgKiBQbGF0Zm9ybVdp
bi5jbWFrZToKKysKKysyMDIxLTA1LTIwICBLeWxlIFBpZGRpbmd0b24gIDxrcGlkZGluZ3RvbkBh
cHBsZS5jb20+CisrCisrICAgICAgICBbTWV0YWwgQU5HTEVdIEhhbmRsZSBOQU4gY29uc3RhbnQg
Zm9sZGluZyBjb3JyZWN0bHkKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0yMjYwNTIKKysKKysgICAgICAgIE5BTiB2YWx1ZXMgKDAuMGYvMC4wZikgd2Vy
ZSBiZWluZyBoYW5kbGVkIGluY29ycmVjdGx5LiBNU0wgd2FzIGJlaW5nIGVtaXR0ZWQgYXMgbG93
ZXJjYXNlICduYW5mJywgaW5zdGVhZCBvZiBOQU4KKysgICAgICAgIENoZWNrIGZvciBhbiB1bmxp
a2VseSBOQU4gY2FzZSwgYW5kIGVtaXQgY29ycmVjdCBNU0wKKysKKysgICAgICAgIFJldmlld2Vk
IGJ5IERlYW4gSmFja3Nvbi4KKysKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3Iv
VHJhbnNsYXRvck1ldGFsRGlyZWN0L0VtaXRNZXRhbC5jcHA6CisrICAgICAgICAoR2VuTWV0YWxU
cmF2ZXJzZXI6OmVtaXRTaW5nbGVDb25zdGFudCk6CisrCisrMjAyMS0wNS0yMCAgS3lsZSBQaWRk
aW5ndG9uICA8a3BpZGRpbmd0b25AYXBwbGUuY29tPgorKworKyAgICAgICAgUmVkIGZsYXNoZXMg
em9vbWluZyBvbiBHb29nbGUgTWFwcyB3aGVuIHVzaW5nIGV4dGVybmFsIG1vbml0b3Igb24gbXVs
dGktZ3B1IHN5c3RlbXMKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0yMjU5NTYKKysgICAgICAgIDxyZGFyOi8vNzcwMjQxNzk+ICAgICAgICAKKysKKysg
ICAgICAgIFJldmlld2VkIGJ5IERlYW4gSmFja3Nvbi4KKysgICAgICAgIElPU3VyZmFjZSBwcmVz
ZW50YXRpb24gc3dhcHMgcmVxdWlyZSB0aGF0IGEgY29tbWFuZCBidWZmZXIgaXMgcXVldWVkIGZv
ciBleGVjdXRpb24gYmVmb3JlCisrICAgICAgICBzd2FwcGluZy4gT3RoZXJ3aXNlLCB3ZSdyZSBs
aWFibGUgdG8gZHJvcCBmcmFtZXMsIG9yIHByZXNlbnQgb2xkIElPU3VyZmFjZSBidWZmZXJzLiAK
KysgICAgICAgIEVuc3VyZSB3b3JrIGZsdXNoZWQgdmlhIGdsRmx1c2ggY29tcGxldGVzIGJlZm9y
ZSBwcmVzZW5hdGlvbiBieSB3YWl0aW5nIGZvciBpdCB0byBlbnF1ZXVlIGJlZm9yZSAKKysgICAg
ICAgIHN3YXBwaW5nIGEgc3VyZmFjZS4KKysKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRl
cmVyL21ldGFsL0NvbnRleHRNdGwubW06CisrICAgICAgICAocng6OkNvbnRleHRNdGw6OmZsdXNo
KToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF9jb21tYW5kX2J1
ZmZlci5oOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX2NvbW1h
bmRfYnVmZmVyLm1tOgorKyAgICAgICAgKHJ4OjptdGw6OkNvbW1hbmRCdWZmZXI6OndhaXRVbnRp
bFNjaGVkdWxlZCk6CisrICAgICAgICAocng6Om10bDo6Q29tbWFuZEJ1ZmZlcjo6Y29tbWl0SW1w
bCk6CisrCisrMjAyMS0wNS0xOSAgS3lsZSBQaWRkaW5ndG9uICA8a3BpZGRpbmd0b25AYXBwbGUu
Y29tPgorKworKyAgICAgICAgQVNTRVJUKCF0b1R5cGUuaXNBcnJheSgpKSBmYWlsdXJlIGluIHNo
OjpDb2VyY2VTaW1wbGUgZHVlIHRvIHZlY3RvciBhcnJheSBkZXJlZmVyZW5jZQorKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNTg2NAorKyAgICAgICAg
PHJkYXI6Ly83Nzk2ODIxND4gCisrCisrICAgICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24u
CisrCisrICAgICAgICBGaXhlZCBwcm9ncmFtIHRyYW5zbGF0aW9uIGVycm9yLCBhZGRpdGlvbmFs
IGlzc3VlcyB3aXRoIHRyYW5zZm9ybSBmZWVkYmFjayBzaGFkZXJzCisrCisrICAgICAgICAqIHNy
Yy9jb21waWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC9BZGRFeHBsaWNpdFR5
cGVDYXN0cy5jcHA6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9Qcm9n
cmFtTXRsLm1tOgorKyAgICAgICAgKHJ4OjpQcm9ncmFtTXRsOjpyZXNldCk6CisrCisrMjAyMS0w
NS0xOSAgS3lsZSBQaWRkaW5ndG9uICA8a3BpZGRpbmd0b25AYXBwbGUuY29tPgorKworKyAgICAg
ICAgW0FOR0xFIE1ldGFsXSBTdXBwb3J0IFByb3Zva2luZyBWZXJ0ZXggRW11bGF0aW9uLCBQYXNz
IEZyYWdtZW50IE91dHB1dCB0ZXN0IHN1aXRlLgorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNTg0MgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGVh
biBKYWNrc29uLgorKworKyAgICAgICAgQWRkIHN1cHBvcnQgZm9yIHByb3Zva2luZyB2ZXJ0ZXgg
ZW11bGF0aW9uLiBNZXRhbCBvbmx5IHN1cHBvcnRzIHVzaW5nIHRoZSBmaXJzdCB2ZXJ0ZXgKKysg
ICAgICAgIG9mIGEgcHJpbWl0aXZlIGFzIGEgcHJvdm9raW5nIHZlcnRleC4gVG8gYWRhcHQsIHJl
d3JpdGUgdGhlIGluZGV4IGJ1ZmZlciBvbiB0aGUgZmx5IHdoZW4gcHJvdm9raW5nIHZlcnRleCBz
dXBwb3J0IGlzIHJlcXVpcmVkLiBUaGlzIG1ldGhvZCBkb2VzIG5vdCByZXdyaXRlIGFueSBwcmlt
aXRpdmVzIHRoYXQgd291bGQgYmUgCisrICAgICAgICBjdWxsZWQgYnkgcHJpbWl0aXZlIHJlc3Rh
cnQsIHN1Y2ggYXMgc2ltcGxlIHRyaWFuZ2xlcyBhbmQgbGluZXMuIFRyaWFuZ2xlIGFuZCBsaW5l
IHN0cmlwcyBhcmUgcmUtd3JpdHRlbiB0byBsaW5lIGFuZCB0cmlhbmdsZSBidWZmZXJzLiBUcmkg
ZmFucyBhbmQgbGluZSBsb29wcyBhcmUgbm90IHN1cHBvcnRlZCBmb3IgdGhpcworKyAgICAgICAg
cmV3cml0ZSBhcyBvZiB0aGlzIHBhdGNoLgorKworKyAgICAgICAgKiBBTkdMRS54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwv
Q29udGV4dE10bC5oOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvQ29u
dGV4dE10bC5tbToKKysgICAgICAgIChyeDo6Q29udGV4dE10bDo6Q29udGV4dE10bCk6CisrICAg
ICAgICAocng6OkNvbnRleHRNdGw6OmluaXRpYWxpemUpOgorKyAgICAgICAgKHJ4OjpDb250ZXh0
TXRsOjpvbkRlc3Ryb3kpOgorKyAgICAgICAgKHJ4OjpDb250ZXh0TXRsOjpkcmF3RWxlbWVudHNJ
bXBsKToKKysgICAgICAgIChyeDo6Q29udGV4dE10bDo6Zmx1c2hDb21tYW5kQnVmZXIpOgorKyAg
ICAgICAgKHJ4OjpDb250ZXh0TXRsOjpwcmVzZW50KToKKysgICAgICAgIChyeDo6Q29udGV4dE10
bDo6ZW5zdXJlQ29tbWFuZEJ1ZmZlclJlYWR5KToKKysgICAgICAgIChyeDo6Q29udGV4dE10bDo6
cmVxdWlyZXNJbmRleFJld3JpdGUpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIv
bWV0YWwvUHJvZ3JhbU10bC5oOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0
YWwvUHJvZ3JhbU10bC5tbToKKysgICAgICAgIChyeDo6UHJvZ3JhbU10bDo6UHJvZ3JhbU10bCk6
CisrICAgICAgICAocng6OlByb2dyYW1NdGw6OnByb2dyYW1IYXNGbGF0QXR0cmlidXRlcyBjb25z
dCk6CisrICAgICAgICAocng6OlByb2dyYW1NdGw6OmxpbmtJbXBsKToKKysgICAgICAgICogc3Jj
L2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL1Byb3Zva2luZ1ZlcnRleEhlbHBlci5oOiBBZGRlZC4K
KysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL1Byb3Zva2luZ1ZlcnRleEhl
bHBlci5tbTogQWRkZWQuCisrICAgICAgICAocng6OnByaW1Db3VudEZvckluZGV4Q291bnQpOgor
KyAgICAgICAgKHJ4OjpQcm92b2tpbmdWZXJ0ZXhIZWxwZXI6OlByb3Zva2luZ1ZlcnRleEhlbHBl
cik6CisrICAgICAgICAocng6OlByb3Zva2luZ1ZlcnRleEhlbHBlcjo6b25EZXN0cm95KToKKysg
ICAgICAgIChyeDo6UHJvdm9raW5nVmVydGV4SGVscGVyOjpjb21taXRQcmVjb25kaXRpb25Db21t
YW5kQnVmZmVyKToKKysgICAgICAgIChyeDo6UHJvdm9raW5nVmVydGV4SGVscGVyOjpnZXRDb21w
dXRlQ29tbWFuZEVuY29kZXIpOgorKyAgICAgICAgKHJ4OjpQcm92b2tpbmdWZXJ0ZXhIZWxwZXI6
OmVuc3VyZUNvbW1hbmRCdWZmZXJSZWFkeSk6CisrICAgICAgICAocng6OmJ1aWxkSW5kZXhCdWZm
ZXJLZXkpOgorKyAgICAgICAgKHJ4OjpQcm92b2tpbmdWZXJ0ZXhIZWxwZXI6OmdldFNwZWNpYWxp
emVkU2hhZGVyKToKKysgICAgICAgIChyeDo6UHJvdm9raW5nVmVydGV4SGVscGVyOjpoYXNTcGVj
aWFsaXplZFNoYWRlcik6CisrICAgICAgICAocng6OlByb3Zva2luZ1ZlcnRleEhlbHBlcjo6cHJl
cGFyZUNvbW1hbmRFbmNvZGVyRm9yRGVzY3JpcHRvcik6CisrICAgICAgICAocng6OlByb3Zva2lu
Z1ZlcnRleEhlbHBlcjo6cHJlY29uZGl0aW9uSW5kZXhCdWZmZXIpOgorKyAgICAgICAgKiBzcmMv
bGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX3N0YXRlX2NhY2hlLmg6CisrICAgICAgICAoc3Rk
OjpoYXNoPHJ4OjptdGw6OlByb3Zva2luZ1ZlcnRleENvbXB1dGVQaXBlbGluZURlc2M+OjpvcGVy
YXRvcigpIGNvbnN0KToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210
bF9zdGF0ZV9jYWNoZS5tbToKKysgICAgICAgIChyeDo6bXRsOjpQcm92b2tpbmdWZXJ0ZXhDb21w
dXRlUGlwZWxpbmVEZXNjOjpQcm92b2tpbmdWZXJ0ZXhDb21wdXRlUGlwZWxpbmVEZXNjKToKKysg
ICAgICAgIChyeDo6bXRsOjpQcm92b2tpbmdWZXJ0ZXhDb21wdXRlUGlwZWxpbmVEZXNjOjpvcGVy
YXRvcj0pOgorKyAgICAgICAgKHJ4OjptdGw6OlByb3Zva2luZ1ZlcnRleENvbXB1dGVQaXBlbGlu
ZURlc2M6Om9wZXJhdG9yPT0gY29uc3QpOgorKyAgICAgICAgKHJ4OjptdGw6OlByb3Zva2luZ1Zl
cnRleENvbXB1dGVQaXBlbGluZURlc2M6Om9wZXJhdG9yIT0gY29uc3QpOgorKyAgICAgICAgKHJ4
OjptdGw6OlByb3Zva2luZ1ZlcnRleENvbXB1dGVQaXBlbGluZURlc2M6Omhhc2ggY29uc3QpOgor
KyAgICAgICAgKHJ4OjptdGw6OlByb3Zva2luZ1ZlcnRleENvbXB1dGVQaXBlbGluZUNhY2hlOjpQ
cm92b2tpbmdWZXJ0ZXhDb21wdXRlUGlwZWxpbmVDYWNoZSk6CisrICAgICAgICAocng6Om10bDo6
UHJvdm9raW5nVmVydGV4Q29tcHV0ZVBpcGVsaW5lQ2FjaGU6OnNldENvbXB1dGVTaGFkZXIpOgor
KyAgICAgICAgKHJ4OjptdGw6OlByb3Zva2luZ1ZlcnRleENvbXB1dGVQaXBlbGluZUNhY2hlOjpj
bGVhclBpcGVsaW5lU3RhdGVzKToKKysgICAgICAgIChyeDo6bXRsOjpQcm92b2tpbmdWZXJ0ZXhD
b21wdXRlUGlwZWxpbmVDYWNoZTo6Y2xlYXIpOgorKyAgICAgICAgKHJ4OjptdGw6OlByb3Zva2lu
Z1ZlcnRleENvbXB1dGVQaXBlbGluZUNhY2hlOjpnZXRDb21wdXRlUGlwZWxpbmVTdGF0ZSk6Cisr
ICAgICAgICAocng6Om10bDo6UHJvdm9raW5nVmVydGV4Q29tcHV0ZVBpcGVsaW5lQ2FjaGU6Omlu
c2VydENvbXB1dGVQaXBlbGluZVN0YXRlKToKKysgICAgICAgIChyeDo6bXRsOjpQcm92b2tpbmdW
ZXJ0ZXhDb21wdXRlUGlwZWxpbmVDYWNoZTo6cmVjcmVhdGVQaXBlbGluZVN0YXRlcyk6CisrICAg
ICAgICAocng6Om10bDo6UHJvdm9raW5nVmVydGV4Q29tcHV0ZVBpcGVsaW5lQ2FjaGU6OmNyZWF0
ZUNvbXB1dGVQaXBlbGluZVN0YXRlKToKKysgICAgICAgIChyeDo6bXRsOjpQcm92b2tpbmdWZXJ0
ZXhDb21wdXRlUGlwZWxpbmVDYWNoZTo6flByb3Zva2luZ1ZlcnRleENvbXB1dGVQaXBlbGluZUNh
Y2hlKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF91dGlscy5o
OgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX3V0aWxzLm1tOgor
KyAgICAgICAgKHJ4OjptdGw6OkNyZWF0ZU1zbFNoYWRlcik6CisrICAgICAgICAqIHNyYy9saWJB
TkdMRS9yZW5kZXJlci9tZXRhbC9zaGFkZXJzL210bF9kZWZhdWx0X3NoYWRlcnNfc3JjX2F1dG9n
ZW4uaW5jOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvc2hhZGVycy9y
ZXdyaXRlX2luZGljZXMubWV0YWw6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVu
ZGVyZXIvbWV0YWwvc2hhZGVycy9yZXdyaXRlX2luZGljZXNfc2hhcmVkLmg6IEFkZGVkLgorKwor
KzIwMjEtMDUtMTggIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4K
KysKKysgICAgICAgIFN0b3AgY29tcGlsaW5nIEFOR0xFIG1ldGFsIGZpbGVzIHR3aWNlCisrICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI1OTE5CisrICAg
ICAgICA8cmRhcjovLzc4MDEzNTExPgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGVhbiBKYWNr
c29uLgorKworKyAgICAgICAgQU5HTEUgY3VycmVudGx5IGdlbmVyYXRlcyBhbiB1bnVzZWQgZGVm
YXVsdC5tZXRhbGxpYiB0aGF0IGNvbmZsaWN0cyB3aXRoIG90aGVyIGRlZmF1bHQubWV0YWxsaWJz
IGJlaW5nIGJ1aWx0LgorKyAgICAgICAgU2luY2UgaXQgaXMgdW51c2VkLCByZW1vdmUgaXQuCisr
ICAgICAgICBXaGF0IHdlIGN1cnJlbnRseSBkbyBpcyBwdXQgYWxsIHRoZSBzb3VyY2UgYnl0ZXMg
aW50byBnRGVmYXVsdE1ldGFsbGliU3JjIGFuZCBjb21waWxlIGl0IGF0IHJ1bnRpbWUuCisrICAg
ICAgICBUaGlzIGNvdWxkIGJlIG9wdGltaXplZCB0byBkbyBpdCBhdCBjb21waWxlIHRpbWUgYW5k
IHVzZSBuZXdMaWJyYXJ5V2l0aERhdGEgaW5zdGVhZCBvZiBuZXdMaWJyYXJ5V2l0aFNvdXJjZSwK
KysgICAgICAgIGJ1dCB0aGF0IHNob3VsZCBiZSBkb25lIHNlcGFyYXRlbHkuCisrCisrICAgICAg
ICAqIEFOR0xFLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisrCisrMjAyMS0wNS0xMiAgS3ls
ZSBQaWRkaW5ndG9uICA8a3BpZGRpbmd0b25AYXBwbGUuY29tPgorKworKyAgICAgICAgW0FuZ2xl
IE1FVEFMXSBSZW1vdmUgdGhyZWFkIHF1YWxpZmllcnMgYW5kIHBhc3MtYnktcmVmZXJlbmNlIHF1
YWxpZmllcnMgZm9yIGNhc3QgZnVuY3Rpb25zCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI1NzAyCisrICAgICAgICA8cmRhcjovLzc2Nzk5NDYxPgor
KworKyAgICAgICAgQ2FzdCBmdW5jdGlvbnMgZmFpbCB0byBjb21waWxlIHdoZW4gY2FzdGluZyBm
cm9tIHVzZXIgdW5pZm9ybXMuIFVwZGF0ZSBjYXN0IGZ1bmN0aW9ucyB0byByZW1vdmUgcGFzcy1i
eS1yZWZlcmVuY2UKKysgICAgICAgIHF1YWxpZmllcnMuIAorKworKyAgICAgICAgUmV2aWV3ZWQg
YnkgRGVhbiBKYWNrc29uLgorKworKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9U
cmFuc2xhdG9yTWV0YWxEaXJlY3QvUHJvZ3JhbVByZWx1ZGUuY3BwOgorKworKzIwMjEtMDUtMDgg
IEJhc3VrZSBTdXp1a2kgIDxiYXN1a2Uuc3V6dWtpQHNvbnkuY29tPgorKworKyAgICAgICAgW1dp
bkNhaXJvXSBSZW1vdmUgbGlua2VyIHdhcm5pbmcgb24gQU5HTEUKKysgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjU1MDEKKysKKysgICAgICAgIFJldmll
d2VkIGJ5IERhcmluIEFkbGVyLgorKworKyAgICAgICAgbGliQU5HTEUgaXMgc3RhdGljYWxseSBs
aW5rZWQgdG8gbGliR0xFU3YyLmRsbCBzbyB0aGF0IF9fZGVjbHNwZWMoZGxsaW1wb3J0KSBpcyBu
b3QgcmVxdWlyZWQgaGVyZS4KKysKKysgICAgICAgICogaW5jbHVkZS9wbGF0Zm9ybS9QbGF0Zm9y
bU1ldGhvZHMuaDoKKysKKysyMDIxLTA1LTA2ICBLeWxlIFBpZGRpbmd0b24gIDxrcGlkZGluZ3Rv
bkBhcHBsZS5jb20+CisrCisrICAgICAgICBbTWV0YWwgQU5HTEVdIE9ubHkgY2xlYXIgZGlydHkg
c3RhdGUgYml0cyBhZnRlciBhbGwgc3RhdGUgaGFzIGJlZW4gc3VjY2Vzc2Z1bGx5IHNldAorKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNTQ2OAorKyAg
ICAgICAgPHJkYXI6Ly83NzA2Njc1Mj4KKysKKysgICAgICAgIFdoZW4gcnVubmluZyBpbiByZWxl
YXNlLCBpZiBhbnkgQU5HTEUgY2FsbHMgZmFpbCwgd2UgZXZlbnR1YWxseSByZXR1cm4gdG8gdGhp
cyBwYXJ0IG9mIHRoZSBjb2RlLgorKyAgICAgICAgV2UgY2FuIGJlIGxlZnQgd2l0aCBhbiBpbmNv
bXBsZXRlIHN0YXRlLCB3aGVyZSB3ZSBoYXZlIGFuIGluY29tcGxldGUgcHJvZ3JhbSBvciBhdHRh
Y2htZW50LCAKKysgICAgICAgIGJ1dCBhICdjbGVhbicgc3RhdGUuIFRoaXMgY2FuIGxlYWQgdG8g
ZXJyb3JzIHN1Y2ggYXMgc2V0dGluZyBuaWwgcmVuZGVyIHBpcGVsaW5lIHN0YXRlcywgbGVhZGlu
ZyB0bworKyAgICAgICAgY3Jhc2hlcy4KKysKKysgICAgICAgIFRvIG1pdGlnYXRlIHRoaXMsIGhv
bGQgb2ZmIG9uIHNldHRpbmcgc3RhdGUgYml0cyB1bnRpbCB3ZSd2ZSBjb21wbGV0bHkgc2V0IHVw
IGEgcHJvZ3JhbS4KKysKKysgICAgICAgIFJldmlld2VkIGJ5IERlYW4gSmFja3Nvbi4KKysKKysg
ICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL0NvbnRleHRNdGwubW06CisrICAg
ICAgICAocng6OkNvbnRleHRNdGw6OnNldHVwRHJhdyk6CisrICAgICAgICAqIHNyYy9saWJBTkdM
RS9yZW5kZXJlci9tZXRhbC9Qcm9ncmFtTXRsLm1tOgorKworKzIwMjEtMDUtMDMgIEt5bGUgUGlk
ZGluZ3RvbiAgPGtwaWRkaW5ndG9uQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFtNZXRhbCBBTkdM
RV06IEZpeCBjb252ZXJzaW9ucyB0ZXN0cyBhbmQgcmVtb3ZlIGZhaWxpbmcgdGVzdCBleHBlY3Rh
dGlvbnMKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MjUyNjEKKysgICAgICAgIDxyZGFyOi8vNzczNDk2MTU+CisrICAgICAgICAgICAgICAgICAgCisr
ICAgICAgICBib29sIGNvbnZlcnNpb24gd29ya2Fyb3VuZCB3YXMgYmVpbmcgYXBwbGllZCB0byBh
bGwgc2hhZGVycy4gQ29ycmVjdCBzaGFkZXIgdHJhbnNsYXRpb24gdG8gZ2VuZXJhdGUKKysgICAg
ICAgIGJldHRlciBjb252ZXJzaW9uIGNvZGUgb24gcGxhdGZvcm1zIHRoYXQgZG9uJ3QgbmVlZCBh
IHdvcmthcm91bmQuIAorKworKyAgICAgICAgQ29udmVyc2lvbnMgZm9yIGJhc2ljIHR5cGVzIGxp
a2UgdmVjMiwgaXZlYzIsIHV2ZWMyIHdlcmUgb25seSB1c2luZyB0aGUgZmlyc3QgY29tcG9uZW50
cyB3aGVuIHdvcmthcm91bmQKKysgICAgICAgIHdhcyBhY3RpdmUuIENvcnJlY3Qgc3dpenpsZSBs
b2dpYyB0byBnZXQgYWxsIGNvbXBvbmVudHMgd2hlbiBkb2luZyBhIGNvbnZlcnNpb24uCisrCisr
ICAgICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisrCisrICAgICAgICAqIHNyYy9jb21w
aWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC9BZGRFeHBsaWNpdFR5cGVDYXN0
cy5jcHA6CisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRh
bERpcmVjdC9Bc3RIZWxwZXJzLmNwcDoKKysgICAgICAgIChzaDo6Q29lcmNlU2ltcGxlKToKKysg
ICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0L0Fz
dEhlbHBlcnMuaDoKKysKKysyMDIxLTA0LTMwICBLeWxlIFBpZGRpbmd0b24gIDxrcGlkZGluZ3Rv
bkBhcHBsZS5jb20+CisrCisrICAgICAgICBbTWV0YWwgQU5HTEVdOiBmaXggd2ViZ2wvMi4wLjAv
ZGVxcC9mdW5jdGlvbmFsL2dsZXMzL25lZ2F0aXZlYnVmZmVyYXBpIAorKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNTIyMgorKyAgICAgICAgPHJkYXI6
Ly83NzM0OTkwOD4KKysKKysgICAgICAgIEFyYml0cmFyeSBhbGlnbm1lbnRzIGFyZSBub3QgYWxs
b3dlZCBpbiBNZXRhbC4gVXBkYXRlIFVCTyBhbGlnbm1lbnQgdG8gCisrICAgICAgICBhIHBsYXRm
b3JtLWRlcGVuZGFudCBvZmZzZXQgdG8gbWF0Y2ggc3BlY2lmaWNhdGlvbnMuCisrICAgICAgICBS
ZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisrCisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5k
ZXJlci9tZXRhbC9EaXNwbGF5TXRsLm1tOgorKyAgICAgICAgKHJ4OjpEaXNwbGF5TXRsOjplbnN1
cmVDYXBzSW5pdGlhbGl6ZWQgY29uc3QpOgorKworKzIwMjEtMDQtMjkgIEt5bGUgUGlkZGluZ3Rv
biAgPGtwaWRkaW5ndG9uQGFwcGxlLmNvbT4KKysKKysgICAgICAgIE1ldGFsLUFOR0xFOiBTaGFy
ZWQgbWVtb3J5IHRleHR1cmUgdGVzdHMgZmFpbGluZyBpbiBpT1MgU2ltdWxhdG9yCisrICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIyNjg1CisrICAgICAg
ICA8cmRhcjovLzc1MDAxNzIyPgorKworKyAgICAgICAgVXNpbmcgcmVwbGFjZVJlZ2lvbiB0byBw
ZXJmb3JtIHRleHR1cmUgdXBsb2FkcyBvbiBzaW11bGF0b3IgY2F1c2VzIGlzc3VlcyBvbiBzb21l
IHdvcmtmbG93cy4KKysgICAgICAgIEFzIGEgd29ya2Fyb3VuZCwgdXNlIGEgR1BVLWRyaXZlbiB1
cGxvYWQgaW5zdGVhZCBvZiBhIENQVSBkcml2ZW4gdXBsb2FkLiAKKysgICAgICAgIFJldmlld2Vk
IGJ5IEtlbm5ldGggUnVzc2VsbC4KKysKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVy
L21ldGFsL1RleHR1cmVNdGwubW06CisrCisrMjAyMS0wNC0yOSAgS3lsZSBQaWRkaW5ndG9uICA8
a3BpZGRpbmd0b25AYXBwbGUuY29tPgorKworKyAgICAgICAgW0FOR0xFLU1ldGFsXSBGaXggMTcg
dGV4dHVyZXNoYWRvdyB0ZXN0cworKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTIyNDk2NQorKyAgICAgICAgPHJkYXI6Ly83NzA1MzA4NT4gCisrCisrICAg
ICAgICBEZXB0aDI0U3RlbmNpbDggY29waWVzIHdlcmUgYmVpbmcgaW5jb3JyZWN0bHkgbWFuYWdl
ZCB3aGVuIGRlYWxpbmcgd2l0aCBEMjRTOCBlbXVsYXRpb24uCisrICAgICAgICBGaXggY29udmVy
c2lvbiBmdW5jdGlvbnMgCisrCisrICAgICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisr
CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9tdGxfZm9ybWF0X3V0aWxz
Lmg6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9tdGxfZm9ybWF0X3V0
aWxzLm1tOgorKyAgICAgICAgKHJ4OjptdGw6OnByaXY6Ok9mZnNldERhdGFQb2ludGVyKToKKysg
ICAgICAgIChyeDo6bXRsOjpMb2FkUzhEMjRTOFRvRDMyRlgyNFM4KToKKysgICAgICAgIChyeDo6
bXRsOjpERVBUSDI0X1NURU5DSUw4X3RvX0QzMl9GTE9BVF9YMjRTOF9VSU5UKToKKysgICAgICAg
IChyeDo6bXRsOjpHZXRMb2FkRnVuY3Rpb25zTWFwKToKKysgICAgICAgIChyeDo6bXRsOjpGb3Jt
YXRUYWJsZTo6aW5pdGlhbGl6ZSk6CisrICAgICAgICAoKTogRGVsZXRlZC4KKysKKysyMDIxLTA0
LTI4ICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisrCisrICAg
ICAgICBTdG9wIGJ1aWxkaW5nIGxpYkFOR0xFLmEKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjUxNjIKKysgICAgICAgIDxyZGFyOi8vcHJvYmxlbS81
NzM0OTM4ND4KKysKKysgICAgICAgIFJldmlld2VkIGJ5IEFsZXhleSBQcm9za3VyeWFrb3YuCisr
CisrICAgICAgICBOb3cgdGhhdCBldmVyeW9uZSdzIGxpbmtpbmcgYWdhaW5zdCB0aGUgZHlsaWIs
IHdlIGRvbid0IG5lZWQgdG8gYnVpbGQgdGhlIHN0YXRpYyBsaWJyYXJ5IGFueSBtb3JlLgorKwor
KyAgICAgICAgKiBBTkdMRS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorKyAgICAgICAgKiBD
b25maWd1cmF0aW9ucy9BTkdMRS1keW5hbWljLnhjY29uZmlnOgorKyAgICAgICAgKiBzcmMvZW1w
dHkuY3BwOiBSZW1vdmVkLgorKworKzIwMjEtMDQtMjggIEtpbW1vIEtpbm51bmVuICA8a2tpbm51
bmVuQGFwcGxlLmNvbT4KKysKKysgICAgICAgIEFOR0xFIHNob3VsZCBiZSBjb21waWxlZCB3aXRo
IHRocmVhZC1zYWZlIHN0YXRpY3MKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0yMjQ4NTQKKysKKysgICAgICAgIFJldmlld2VkIGJ5IEtlbm5ldGggUnVz
c2VsbC4KKysKKysgICAgICAgIENvbXBpbGUgQU5HTEUgd2l0aCBub3JtYWwgdGhyZWFkLXNhZmUg
YysrIGxvY2FsIHN0YXRpY3MuCisrICAgICAgICBObyBrbm93biB0aHJlYWRpbmcgZmFpbHVyZXMu
IEJhc2VkIG9uIGFkLWhvYyByaXNrIHZzIGJlbmVmaXQKKysgICAgICAgIGV2YWx1YXRpb24gb2Yg
dG9kYXkgYW5kIGFmdGVyIGZ1dHVyZSBtZXJnZXMsIGl0IGFwcGVhcnMKKysgICAgICAgIGJldHRl
ciB0byBlcnIgaW4gdGhlIHNpZGUgb2YgY2F1dGlvbi4KKysKKysgICAgICAgICogQ29uZmlndXJh
dGlvbnMvQmFzZS54Y2NvbmZpZzoKKysKKysyMDIxLTA0LTI2ICBBbGV4IENocmlzdGVuc2VuICA8
YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisrCisrICAgICAgICBVcGRhdGUgTWFjLXNwZWNpZmlj
IENNYWtlIGZpbGVzCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjI1MDY0CisrCisrICAgICAgICBSdWJiZXItc3RhbXBlZCBieSBUaW0gSG9ydG9uLgor
KworKyAgICAgICAgKiBQbGF0Zm9ybU1hYy5jbWFrZToKKysKKysyMDIxLTA0LTI1ICBLeWxlIFBp
ZGRpbmd0b24gIDxrcGlkZGluZ3RvbkBhcHBsZS5jb20+CisrCisrICAgICAgICBbTWV0YWwgQU5H
TEVdIHN1cHBvcnQgcHJpbWl0aXZlIHJlc3RhcnQgYmVoYXZpb3Igd2l0aCBzaW1wbGUgZGF0YSB0
eXBlcworKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIy
NTAxMQorKworKyAgICAgICAgUHJpbWl0aXZlIHJlc3RhcnQgYmVoYXZpb3IgZm9yIHNpbXBsZSBk
YXRhIHR5cGVzIGlzIG5vdCBkZWZpbmVkIGluIE1ldGFsLiBBZGQgYSBwcmUtZHJhdyBwYXNzIHRv
IAorKyAgICAgICAgY3JlYXRlIGEgc2V0IG9mIHJlc3RhcnQgaW5kaWNlcywgcmF0aGVyIHRoYW4g
cmUtd3JpdGUgdGhlIGluZGV4IGJ1ZmZlci4gVGhpcyBwYXNzIGF2b2lkcyAKKysgICAgICAgIHN0
b3JpbmcgbW9yZSBjb3BpZXMgb2YgdGhlIGluZGV4IGJ1ZmZlcjogaW5zdGVhZCwgd2UgY2FjaGUg
dGhlIGxvY2F0aW9uIG9mIHJlc3RhcnQgaW5kaWNlcywgYW5kCisrICAgICAgICB1c2UgdGhlbSB0
byBidWlsZCBkcmF3IGxpc3RzLgorKyAKKysgICAgICAgIFJldmlld2VkIGJ5IERlYW4gSmFja3Nv
bi4KKysKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL0J1ZmZlck10bC5o
OgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvQnVmZmVyTXRsLm1tOgor
KyAgICAgICAgKHJ4OjpJbmRleENvbnZlcnNpb25CdWZmZXJNdGw6OkluZGV4Q29udmVyc2lvbkJ1
ZmZlck10bCk6CisrICAgICAgICAocng6OkJ1ZmZlck10bDo6bWFya0NvbnZlcnNpb25CdWZmZXJz
RGlydHkpOgorKyAgICAgICAgKHJ4OjpjYWxjdWxhdGVSZXN0YXJ0UmFuZ2VzKToKKysgICAgICAg
IChyeDo6QnVmZmVyTXRsOjpnZXRSZXN0YXJ0SW5kaWNlcyk6CisrICAgICAgICAqIHNyYy9saWJB
TkdMRS9yZW5kZXJlci9tZXRhbC9Db250ZXh0TXRsLmg6CisrICAgICAgICAqIHNyYy9saWJBTkdM
RS9yZW5kZXJlci9tZXRhbC9Db250ZXh0TXRsLm1tOgorKyAgICAgICAgKHJ4OjpDb250ZXh0TXRs
OjpkcmF3TGluZUxvb3BFbGVtZW50cyk6CisrICAgICAgICAocng6OkNvbnRleHRNdGw6OmRyYXdF
bGVtZW50c0ltcGwpOgorKyAgICAgICAgKHJ4OjpDb250ZXh0TXRsOjpkcmF3RWxlbWVudHNTaW1w
bGVUeXBlc1ByaW1pdGl2ZVJlc3RhcnQpOiBEZWxldGVkLgorKyAgICAgICAgKiBzcmMvbGliQU5H
TEUvcmVuZGVyZXIvbWV0YWwvVmVydGV4QXJyYXlNdGwuaDoKKysgICAgICAgICogc3JjL2xpYkFO
R0xFL3JlbmRlcmVyL21ldGFsL1ZlcnRleEFycmF5TXRsLm1tOgorKyAgICAgICAgKHJ4OjpWZXJ0
ZXhBcnJheU10bDo6Z2V0SW5kZXhCdWZmZXIpOgorKyAgICAgICAgKHJ4OjpWZXJ0ZXhBcnJheU10
bDo6Z2V0RHJhd0luZGljZXMpOgorKyAgICAgICAgKHJ4OjpWZXJ0ZXhBcnJheU10bDo6Y29udmVy
dEluZGV4QnVmZmVyKToKKysgICAgICAgIChyeDo6VmVydGV4QXJyYXlNdGw6OnN0cmVhbUluZGV4
QnVmZmVyRnJvbUNsaWVudCk6CisrCisrMjAyMS0wNC0yNSAgSm9obiBDdW5uaW5naGFtICA8am9o
bmN1bm5pbmdoYW1AYXBwbGUuY29tPgorKworKyAgICAgICAgW01ldGFsIEFOR0xFXSBUZW1wb3Jh
cmlseSByZW1vdmUgQVNUIHZhbGlkYXRpb24gZXZlbiBmb3IgZGVidWcgYnVpbGRzCisrICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI0OTkxCisrICAgICAg
ICByZGFyOi8vNzYyOTkxNzgKKysgCisrICAgICAgICBSZXZpZXdlZCBieSBLZW5uZXRoIFJ1c3Nl
bGwuCisrCisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9TaGFkZXJNdGwu
bW06CisrICAgICAgICAocng6OlNoYWRlck10bDo6Y29tcGlsZUltcGxNdGwpOgorKworKzIwMjEt
MDQtMjUgIEt5bGUgUGlkZGluZ3RvbiAgPGtwaWRkaW5ndG9uQGFwcGxlLmNvbT4KKysKKysgICAg
ICAgIFtNZXRhbCBBTkdMRV0gU2VsZWN0IHByb3BlciBJT1N1cmZhY2UgYmFja2luZyBmb3JtYXQg
Zm9yIFdlYkdMIGVudmlyb25tZW50CisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MjI0OTQ4CisrICAgICAgICA8cmRhcjovLzc2Mjg0ODg5PgorKworKyAg
ICAgICAgRGVwZW5kaW5nIG9uIHRoZSBhcmNoaXRlY3R1cmUsIFdlYkNvcmUgZXhwZWN0cyBkaWZm
ZXJlbnQgCisrICAgICAgICBJT1N1cmZhY2UgdGV4dHVyZSB0YXJnZXRzIGZvciB0aGUgbWFpbiBi
dWZmZXIuIFdoZW4gcnVubmluZyBjYXRhbHlzdCBvbiAKKysgICAgICAgIEFybTY0IGRldmljZXMs
IE1ldGFsLUFOR0xFIG5lZWRzIHRvIHNlbGVjdCB0aGUgVEVYVFVSRV8yRCB0ZXh0dXJlIHRhcmdl
dCBmb3Igb3VyCisrICAgICAgICBJT1N1cmZhY2UvUGJ1ZmZlciBiaW5kIHBvaW50LCByYXRoZXIg
dGhhbiBURVhUVVJFX1JFQ1RBTkdMRS4KKysKKysJUmV2aWV3ZWQgYnkgRGVhbiBKYWNrc29uLgor
KworKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvRGlzcGxheU10bC5oOgor
KyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvRGlzcGxheU10bC5tbToKKysg
ICAgICAgIChyeDo6bmVlZHNFQUdMT25NYWMpOgorKyAgICAgICAgKHJ4OjpEaXNwbGF5TXRsOjpF
R0xEcmF3aW5nQnVmZmVyVGV4dHVyZVRhcmdldCk6CisrICAgICAgICAocng6OkRpc3BsYXlNdGw6
OmdlbmVyYXRlQ29uZmlncyk6CisrCisrMjAyMS0wNC0yMyAgVHJ1aXR0IFNhdmVsbCAgPHRzYXZl
bGxAYXBwbGUuY29tPgorKworKyAgICAgICAgVW5yZXZpZXdlZCwgcmV2ZXJ0aW5nIHIyNzYxOTAu
CisrCisrICAgICAgICBicm9rZSBhIHRlc3QgaW50ZXJuYWxseS4KKysKKysgICAgICAgIFJldmVy
dGVkIGNoYW5nZXNldDoKKysKKysgICAgICAgICJNZXRhbC1BTkdMRTogU2hhcmVkIG1lbW9yeSB0
ZXh0dXJlIHRlc3RzIGZhaWxpbmcgaW4gaU9TCisrICAgICAgICBTaW11bGF0b3IiCisrICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIyNjg1CisrICAgICAg
ICBodHRwczovL2NvbW1pdHMud2Via2l0Lm9yZy9yMjc2MTkwCisrCisrMjAyMS0wNC0yMiAgTGF1
cm8gTW91cmEgIDxsbW91cmFAaWdhbGlhLmNvbT4KKysKKysgICAgICAgIFtDTWFrZV1bQU5HTEVd
IFNpbGVuY2UgLVdyZXR1cm4tdHlwZSBmb3IgZ2NjIGFuZCBjbGFuZworKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNDk0OQorKworKyAgICAgICAgUmV2
aWV3ZWQgYnkgRG9uIE9sbXN0ZWFkLgorKworKyAgICAgICAgQXZvaWQgImNvbnRyb2wgcmVhY2hl
cyBlbmQgb2Ygbm9uLXZvaWQgZnVuY3Rpb24iIGluCisrICAgICAgICBzaDo6VEludGVybVJlYnVp
bGQ6OnRyYXZlcnNlQ2hpbGRyZW4oLi4uKQorKworKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDoK
KysKKysyMDIxLTA0LTIyICBQaGlsaXBwZSBOb3JtYW5kICA8cG5vcm1hbmRAaWdhbGlhLmNvbT4K
KysKKysgICAgICAgIFVucmV2aWV3ZWQsIFdQRSBidWlsZCBmaXggYWZ0ZXIgcjI3NjM5MAorKwor
KyAgICAgICAgRml4IG5hbWVzcGFjaW5nIGlzc3VlcyBpbiBudWxscHRyX3QgaW52b2NhdGlvbnMu
CisrCisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL3RyZWVfdXRpbC9JbnRlcm1S
ZWJ1aWxkLmNwcDoKKysgICAgICAgIChzaDo6VEludGVybVJlYnVpbGQ6OkJhc2VSZXN1bHQ6OkJh
c2VSZXN1bHQpOgorKyAgICAgICAgKHNoOjpQcmVSZXN1bHQ6OlByZVJlc3VsdCk6CisrICAgICAg
ICAoc2g6OlBvc3RSZXN1bHQ6OlBvc3RSZXN1bHQpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIv
dHJhbnNsYXRvci90cmVlX3V0aWwvSW50ZXJtUmVidWlsZC5oOgorKworKzIwMjEtMDQtMjEgIERv
biBPbG1zdGVhZCAgPGRvbi5vbG1zdGVhZEBzb255LmNvbT4KKysKKysgICAgICAgIFtQeXRob24g
M10gVXBkYXRlIGduaS10by1jbWFrZS5weQorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTIyNDg4MAorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgS2VubmV0
aCBSdXNzZWxsLgorKworKyAgICAgICAgVXBkYXRlIGduaS10by1jbWFrZS5weSB0byBydW4gb24g
UHl0aG9uIDMuIEFkZGVkIEFyZ3VtZW50UGFyc2VyIHN1cHBvcnQgdG8gYmUgYWJsZSB0byBydW4K
KysgICAgICAgIHRoZSBzY3JpcHQgb24gV2luZG93cyBzaW5jZSB0aGUgc2NyaXB0IGFzc3VtZWQg
aXQgd291bGQgYmUgY2FsbGVkIHRocm91Z2ggYSBVTklYIHN0eWxlCisrICAgICAgICBzaGVsbC4K
KysKKysgICAgICAgIFJhbiB0aGUgLmduaSBmaWxlcyB0aHJvdWdoIHRoZSBjb252ZXJ0ZXIgdG8g
dmVyaWZ5IG91dHB1dC4gSXQgYXBwZWFycyB0aGF0IHRoZQorKyAgICAgICAgQ29tcGlsZXIuY21h
a2UgZmlsZSB3YXNuJ3QgZ2VuZXJhdGVkIGluIHRoZSBsYXN0IHVwZGF0ZSB0byBBTkdMRSBzbyBp
dCBoYXMgbWFueSBjaGFuZ2VzLgorKworKyAgICAgICAgKiBDb21waWxlci5jbWFrZToKKysgICAg
ICAgICogRDNELmNtYWtlOgorKyAgICAgICAgKiBnbmktdG8tY21ha2UucHk6CisrCisrMjAyMS0w
NC0yMSAgRG9uIE9sbXN0ZWFkICA8ZG9uLm9sbXN0ZWFkQHNvbnkuY29tPgorKworKyAgICAgICAg
W0NNYWtlXSBBZGQgT3BlbkdMRVMyIHRhcmdldHMKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjQ3ODYKKysKKysgICAgICAgIFJldmlld2VkIGJ5IEFk
cmlhbiBQZXJleiBkZSBDYXN0cm8uCisrCisrICAgICAgICBBZGQgYW4gQUxJQVMgdGFyZ2V0IG1h
cHBpbmcgQU5HTEUncyBHTEVTdjIgdGFyZ2V0IHRvIE9wZW5HTDo6R0xFUyBpZiB0aGUgdGFyZ2V0
IGlzIG5vdAorKyAgICAgICAgYWxyZWFkeSBwcmVzZW50LiBUaGlzIGlzIHRoZSBjYXNlIGZvciBX
aW5kb3dzIHdoaWNoIHVzZXMgQU5HTEUgYXMgaXRzIHNvbGUgT3BlbkdMIEVTCisrICAgICAgICBp
bXBsZW1lbnRhdGlvbi4KKysKKysgICAgICAgICogQ01ha2VMaXN0cy50eHQ6CisrCisrMjAyMS0w
NC0yMCAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgorKworKyAg
ICAgICAgTWFjQ2F0YWx5c3QgQU5HTEUgaXMgbGlua2VkIHdpdGggQGxvYWRlcl9wYXRoLy4uLy4u
Ly4uL2xpYkFOR0xFLXNoYXJlZC5keWxpYgorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTIyNDYwMgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgQWxleGV5
IFByb3NrdXJ5YWtvdi4KKysKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMvQU5HTEUtZHluYW1p
Yy54Y2NvbmZpZzoKKysKKysyMDIxLTA0LTE5ICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVu
c2VuQHdlYmtpdC5vcmc+CisrCisrICAgICAgICBCdWlsZCBBTkdMRSBkeWxpYiBpbnRvIFdLX09W
RVJSSURFX0ZSQU1FV09SS1NfRElSIGluIGJ1aWxkcyB0aGF0IHVzZSBpdAorKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNDc4NQorKyAgICAgICAgPHJk
YXI6Ly83NjY0MTY2Mj4KKysKKysgICAgICAgIFJldmlld2VkIGJ5IEFsZXhleSBQcm9za3VyeWFr
b3YuCisrCisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0FOR0xFLWR5bmFtaWMueGNjb25maWc6
CisrCisrMjAyMS0wNC0xNiAgS3lsZSBQaWRkaW5ndG9uICA8a3BpZGRpbmd0b25AYXBwbGUuY29t
PgorKworKyAgICAgICAgTWV0YWwtQU5HTEU6IFNoYXJlZCBtZW1vcnkgdGV4dHVyZSB0ZXN0cyBm
YWlsaW5nIGluIGlPUyBTaW11bGF0b3IKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMjI2ODUKKysKKysgICAgICAgIFJldmlld2VkIGJ5IERlYW4gSmFj
a3Nvbi4KKysKKysgICAgICAgIFNpbXVsYXRvci1vbmx5IHBhdGggZHJpdmVzIGZpbGxpbmcgdGV4
dHVyZXMgdmlhIEJsaXQgZW5jb2RlcnMgaW5zdGVhZCBvZiBtYXBwZWQgbWVtb3J5LgorKyAgICAg
ICAgVGhpcyB3b3JrYXJvdW5kIGZpeGVzIGRyb3BwZWQgdGV4dHVyZSB3cml0ZXMgd2hlbiB1c2lu
ZyByZXBsYWNlUmVnaW9uCisrCisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRh
bC9UZXh0dXJlTXRsLm1tOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwv
bXRsX3V0aWxzLm1tOgorKyAgICAgICAgKHJ4OjptdGw6OkluaXRpYWxpemVUZXh0dXJlQ29udGVu
dHMpOgorKworKzIwMjEtMDQtMTUgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Vi
a2l0Lm9yZz4KKysKKysgICAgICAgIFVzZSBrSU9NYWluUG9ydERlZmF1bHQgd2hlcmUgYXZhaWxh
YmxlCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI0
NjMyCisrCisrICAgICAgICBSZXZpZXdlZCBieSBBbGV4ZXkgUHJvc2t1cnlha292LgorKworKyAg
ICAgICAgSW4gQU5HTEUgd2UgZG9uJ3QgaW5jbHVkZSBXVEYgaGVhZGVycywgc28gd2UgY2FuJ3Qg
dXNlIHRoZSBIQVZFIG1hY3JvIGxpa2Ugd2UgZG8gZWxzZXdoZXJlIGluIFdlYktpdCwKKysgICAg
ICAgIGJ1dCB0aGlzIGlzIHByZXR0eSBjbG9zZS4KKysKKysgICAgICAgICogc3JjL2dwdV9pbmZv
X3V0aWwvU3lzdGVtSW5mb19tYWNvcy5tbToKKysgICAgICAgIChhbmdsZTo6R2V0VmVuZG9ySURG
cm9tTWV0YWxEZXZpY2VSZWdpc3RyeUlEKToKKysKKysyMDIxLTA0LTE1ICBBbGV4IENocmlzdGVu
c2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisrCisrICAgICAgICBBZGQgZGVwcmVjYXRp
b24gbWFjcm9zCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MjI0NjI0CisrCisrICAgICAgICAqIHNyYy9ncHVfaW5mb191dGlsL1N5c3RlbUluZm9fbWFj
b3MubW06CisrICAgICAgICAoYW5nbGU6OkdldFZlbmRvcklERnJvbU1ldGFsRGV2aWNlUmVnaXN0
cnlJRCk6CisrCisrMjAyMS0wNC0xMiAgRGVhbiBKYWNrc29uICA8ZGlub0BhcHBsZS5jb20+Cisr
CisrICAgICAgICBSRUdSRVNTSU9OIChNZXRhbCBBTkdMRSk6IFtDYXRhbGluYV0gNiBjb25zaXN0
ZW50IFdlYkdMIGZhaWx1cmVzIC8gdGltZW91dHMKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjQwMTYKKysgICAgICAgIDxyZGFyOi8vcHJvYmxlbS83
NjA3MDMyNT4KKysKKysgICAgICAgIFBhdGNoIGJ5IEpvaG4gQ3VubmluZ2hhbSA8am9obmN1bm5p
Z2hhbUBhcHBsZS5jb20+CisrICAgICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisrCisr
ICAgICAgICBJbXBsZW1lbnQgYSB3b3JrYXJvdW5kIGZvciBJbnRlbCBHUFVzIHdoZXJlIHdlIGV4
cGxpY2l0bHkgdHlwZSBjYXN0IGZsb2F0aW5nCisrICAgICAgICBwb2ludCB2YWx1ZXMgdG8gYm9v
bGVhbnMuIFRoaXMgaXMgb25seSBuZWVkZWQgZm9yIENhdGFsaW5hIHN5c3RlbXMuCisrCisrICAg
ICAgICAqIGluY2x1ZGUvR0xTTEFORy9TaGFkZXJMYW5nLmg6CisrICAgICAgICAqIGluY2x1ZGUv
cGxhdGZvcm0vRmVhdHVyZXNNdGwuaDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0
b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0LmNwcDoKKysgICAgICAgIChzaDo6VHJhbnNsYXRvck1l
dGFsRGlyZWN0Ojp0cmFuc2xhdGVJbXBsKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5z
bGF0b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0L0FkZEV4cGxpY2l0VHlwZUNhc3RzLmNwcDoKKysg
ICAgICAgIChzaDo6UmV3cml0ZXI6OlJld3JpdGVyKToKKysgICAgICAgIChzaDo6QWRkRXhwbGlj
aXRUeXBlQ2FzdHMpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xh
dG9yTWV0YWxEaXJlY3QvQWRkRXhwbGljaXRUeXBlQ2FzdHMuaDoKKysgICAgICAgICogc3JjL2Nv
bXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0L0FzdEhlbHBlcnMuY3BwOgor
KyAgICAgICAgKHNoOjpTdWJWZWN0b3IpOgorKyAgICAgICAgKHNoOjpDb2VyY2VTaW1wbGUpOgor
KyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3Qv
QXN0SGVscGVycy5oOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvRGlz
cGxheU10bC5tbToKKysgICAgICAgIChyeDo6RGlzcGxheU10bDo6aW5pdGlhbGl6ZUZlYXR1cmVz
KToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL1NoYWRlck10bC5tbToK
KysgICAgICAgIChyeDo6U2hhZGVyTXRsOjpjb21waWxlKToKKysKKysyMDIxLTA0LTEyICBLeWxl
IFBpZGRpbmd0b24gIDxrcGlkZGluZ3RvbkBhcHBsZS5jb20+CisrCisrICAgICAgICBDcmFzaCBp
biB3ZWJnbC8yLjAueS9jb25mb3JtYW5jZS9nbHNsL21pc2MvdW5pbml0aWFsaXplZC1sb2NhbC1n
bG9iYWwtdmFyaWFibGVzLmh0bWwgQU5HTEUrTUVUQUwKKysgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjM5MjMKKysJCisrICAgICAgICBBbm9ueW1vdXMg
c3RydWN0cyByZXF1aXJlIGEgbmFtZSBpbiBNU0wsIGFkZCBhIGRlZmF1bHQgbmFtZSBBTkdMRV9f
dW5uYW1lZCRpZCB0byBhbnkgc3RydWN0cy4KKysgICAgICAgIEFsc28gYWRkIGEgdW5pdCB0ZXN0
IHRvIGVuc3VyZSB0aGlzIHdvcmtzLgorKyAgICAgICAgUmV2aWV3ZWQgYnkgS2VubmV0aCBSdXNz
ZWxsLgorKworKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0
YWxEaXJlY3QuY3BwOgorKyAgICAgICAgKHNoOjpUcmFuc2xhdG9yTWV0YWxEaXJlY3Q6OnRyYW5z
bGF0ZUltcGwpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9y
TWV0YWxEaXJlY3QvU2VwYXJhdGVDb21wb3VuZFN0cnVjdERlY2xhcmF0aW9ucy5jcHA6CisrICAg
ICAgICAoc2g6OlNlcGFyYXRvcjo6U2VwYXJhdG9yKToKKysgICAgICAgIChzaDo6U2VwYXJhdGVD
b21wb3VuZFN0cnVjdERlY2xhcmF0aW9ucyk6CisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFu
c2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC9TZXBhcmF0ZUNvbXBvdW5kU3RydWN0RGVjbGFy
YXRpb25zLmg6CisrICAgICAgICAqIHNyYy90ZXN0cy9CVUlMRC5nbjoKKysgICAgICAgICogc3Jj
L3Rlc3RzL2FuZ2xlX3VuaXR0ZXN0cy5nbmk6CisrICAgICAgICAqIHNyYy90ZXN0cy9jb21waWxl
cl90ZXN0cy9NU0xPdXRwdXRfVGVzdC5jcHA6CisrCisrMjAyMS0wNC0wOCAgS3lsZSBQaWRkaW5n
dG9uICA8a3BpZGRpbmd0b25AYXBwbGUuY29tPgorKworKyAgICAgICAgW01ldGFsLUFOR0xFXSBT
dXBwb3J0IEdQVSBwb3dlciBwcmVmZXJlbmNlcywgc2VsZWN0IGxvdy1wb3dlciBHUFUgYnkgZGVm
YXVsdC4KKysgICAgICAgIFJlc3BvbmQgdG8gR1BVIHBvd2VyIHByZWZlcmVuY2UgZmxhZ3MsIGV4
cG9zZSBleHRlbnNpb24sIGFuZCBhdm9pZCBjcmVhdGluZyBhIGhpZ2gtcG93ZXJlZCBHUFUgYnkg
ZGVmYXVsdC4KKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0yMjQzMzcKKysKKysgICAgICAgIFJldmlld2VkIGJ5IERlYW4gSmFja3Nvbi4KKysKKysgICAg
ICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL0Rpc3BsYXlNdGwuaDoKKysgICAgICAg
ICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL0Rpc3BsYXlNdGwubW06CisrICAgICAgICAo
cng6OkRpc3BsYXlNdGw6OmluaXRpYWxpemVJbXBsKToKKysgICAgICAgIChyeDo6RGlzcGxheU10
bDo6Z2V0TWV0YWxEZXZpY2VNYXRjaGluZ0F0dHJpYnV0ZSk6CisrICAgICAgICAocng6OkRpc3Bs
YXlNdGw6OmdlbmVyYXRlRXh0ZW5zaW9ucyBjb25zdCk6CisrCisrMjAyMS0wNC0wNyAgS3lsZSBQ
aWRkaW5ndG9uICA8a3BpZGRpbmd0b25AYXBwbGUuY29tPgorKworKyAgICAgICAgQ3Jhc2ggaW4g
Y29uZm9ybWFuY2UyL3RleHR1cmVzL21pc2MvY29tcHJlc3NlZC10ZXgtaW1hZ2UuaHRtbCB3aXRo
IEFOR0xFK01FVEFMCisrICAgICAgICBIYW5kbGUgdXBsb2FkaW5nIGEgY29tcHJlc3NlZCB0ZXh0
dXJlIHdpdGggYSBub24tYWxpZ25lZCBvZmZzZXQuIFBhdGggcmVxdWlyZXMgdGhhdCB3ZSBzdGls
bCBmaWxsIHRoZSBlbnRpcmUgbGV2ZWwgb2YgYSAKKysgICAgICAgIGNvbXByZXNzZWQgdGV4dHVy
ZS4KKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjM5
MjUKKysKKysgICAgICAgIFJldmlld2VkIGJ5IERlYW4gSmFja3Nvbi4KKysKKysgICAgICAgICog
c3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL1RleHR1cmVNdGwubW06CisrICAgICAgICAocng6
OlRleHR1cmVNdGw6OmNvbnZlcnRBbmRTZXRQZXJTbGljZVN1YkltYWdlKToKKysKKysyMDIxLTA0
LTA3ICBKb2huIEN1bm5pbmdoYW0gIDxqb2huY3VubmlnaGFtQGFwcGxlLmNvbT4KKysKKysgICAg
ICAgIFtNRVRBTCBBTkdMRV0gSW50ZXJmYWNlIGJsb2NrIGRlY2xlcmF0aW9ucyBuZWVkIHRvIGhh
dmUgY2hpbGRyZW4gbWFya2VkIGFzIHN0cnVjdCBhY2Nlc3Nlcy4gQWRkIGltcGxpY2l0IGJhY2tp
bmcgdGV4dHVyZXMgZm9yIG11bHRpc2FtcGxlIHJlbmRlciB0YXJnZXRzCisrICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI0MjY1CisrCisrICAgICAgICBS
ZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisrCisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFu
c2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC9SZWR1Y2VJbnRlcmZhY2VCbG9ja3MuY3BwOgor
KyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvRnJhbWVCdWZmZXJNdGwuaDoK
KysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL0ZyYW1lQnVmZmVyTXRsLm1t
OgorKyAgICAgICAgKHJ4OjpGcmFtZWJ1ZmZlck10bDo6c2V0TG9hZFN0b3JlQWN0aW9uT25SZW5k
ZXJQYXNzRmlyc3RTdGFydCk6CisrICAgICAgICAocng6OkZyYW1lYnVmZmVyTXRsOjpvblN0YXJ0
ZWREcmF3aW5nVG9GcmFtZUJ1ZmZlcik6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJl
ci9tZXRhbC9SZW5kZXJCdWZmZXJNdGwubW06CisrICAgICAgICAocng6OlJlbmRlcmJ1ZmZlck10
bDo6c2V0U3RvcmFnZUltcGwpOgorKworKzIwMjEtMDQtMDUgIEFsZXggQ2hyaXN0ZW5zZW4gIDxh
Y2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KKysKKysgICAgICAgIFJlc3VycmVjdCBNYWMgQ01ha2Ug
YnVpbGQKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MjQwODQKKysKKysgICAgICAgIFJldmlld2VkIGJ5IFRpbSBIb3J0b24uCisrCisrICAgICAgICAq
IFBsYXRmb3JtTWFjLmNtYWtlOiBBZGRlZC4KKysKKysyMDIxLTA0LTA1ICBKb2huIEN1bm5pbmdo
YW0gIDxqb2huY3VubmlnaGFtQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFtNRVRBTCBBTkdMRV0g
U3RlbmNpbCBvbmx5IGZvcm1hdHMgYmVpbmcgdXNlZCBhcyB0aGUgZGVwdGggYXR0YWNobWVudC4K
KysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjQxODMK
KysKKysgICAgICAgIFJldmlld2VkIGJ5IEpvbiBMZWUuCisrCisrICAgICAgICAqIHNyYy9jb21w
aWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC9Qcm9ncmFtUHJlbHVkZS5jcHA6
CisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVj
dC9SZXdyaXRlT3V0QXJncy5jcHA6CisrICAgICAgICAoc2g6OlJld3JpdGVyOjphcmdBbHJlYWR5
UHJvY2Vzc2VkKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL0NvbnRl
eHRNdGwubW06CisrICAgICAgICAocng6OkNvbnRleHRNdGw6OnNldHVwRHJhdyk6CisrICAgICAg
ICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9tdGxfY29tbWFuZF9idWZmZXIuaDoKKysg
ICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF9jb21tYW5kX2J1ZmZlci5t
bToKKysgICAgICAgIChyeDo6bXRsOjpSZW5kZXJDb21tYW5kRW5jb2Rlcjo6cmVzZXQpOgorKyAg
ICAgICAgKHJ4OjptdGw6OlJlbmRlckNvbW1hbmRFbmNvZGVyOjpzZXRSZW5kZXJQaXBlbGluZVN0
YXRlKToKKysgICAgICAgIChyeDo6bXRsOjpSZW5kZXJDb21tYW5kRW5jb2Rlcjo6ZHJhdyk6Cisr
ICAgICAgICAocng6Om10bDo6UmVuZGVyQ29tbWFuZEVuY29kZXI6OmRyYXdJbnN0YW5jZWQpOgor
KyAgICAgICAgKHJ4OjptdGw6OlJlbmRlckNvbW1hbmRFbmNvZGVyOjpkcmF3SW5kZXhlZCk6Cisr
ICAgICAgICAocng6Om10bDo6UmVuZGVyQ29tbWFuZEVuY29kZXI6OmRyYXdJbmRleGVkSW5zdGFu
Y2VkKToKKysgICAgICAgIChyeDo6bXRsOjpSZW5kZXJDb21tYW5kRW5jb2Rlcjo6ZHJhd0luZGV4
ZWRJbnN0YW5jZWRCYXNlVmVydGV4KToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVy
L21ldGFsL210bF91dGlscy5tbToKKysgICAgICAgIChyeDo6bXRsOjpJbml0aWFsaXplRGVwdGhT
dGVuY2lsVGV4dHVyZUNvbnRlbnRzR1BVKToKKysKKysyMDIxLTAzLTMwICBLeWxlIFBpZGRpbmd0
b24gIDxrcGlkZGluZ3RvbkBhcHBsZS5jb20+CisrCisrICAgICAgICBFbmFibGUgc2FtcGxlX2Nv
bXBhcmUgb3BlcmF0aW9ucyBpbiBNZXRhbCBBTkdMRQorKyAgICAgICAgU2FtcGxlX2NvbXBhcmUg
b3BlcmF0aW9ucywgYW5kIHNoYWRvdyBzYW1wbGluZyB3YXMgYWNjaWRlbnRseSBzd2l0Y2hlZCBv
ZmYgd2hlbiBpbml0aWFsbHkKKysgICAgICAgIHNldHRpbmcgdXAgQU5HTEVfTWV0YWwuIEVuYWJs
aW5nIHNoYWRvdyBzYW1wbGluZyBmaXhlcyBtb3N0IG9mIHRoZSAKKysgICAgICAgIHdlYmdsLzIu
MC4wL2RlcXAvZnVuY3Rpb25hbC9nbGVzMy90ZXh0dXJlc2hhZG93LyB0ZXN0IHN1aXRlLCB3aGlj
aCBpcyBjdXJyZW50bHkgZmFpbGluZy4KKysKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0yMjM4MzMKKysKKysgICAgICAgIFJldmlld2VkIGJ5IEpvbiBM
ZWUuCisrCisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9EaXNwbGF5TXRs
Lm1tOgorKyAgICAgICAgKHJ4OjpEaXNwbGF5TXRsOjppbml0aWFsaXplRmVhdHVyZXMpOgorKwor
KzIwMjEtMDMtMjYgIEplc3NpZSBCZXJsaW4gIDxqYmVybGluQHdlYmtpdC5vcmc+CisrCisrICAg
ICAgICBVcGRhdGUgdGhlIEJFRk9SRS9TSU5DRSwgU1lTVEVNX1ZFUlNJT05fUFJFRklYLCBhbmQg
TUFDT1NYX0RFUExPWU1FTlRfVEFSR0VUIGZsYWdzCisrICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIzNzc5CisrCisrICAgICAgICBSZXZpZXdlZCBieSBU
aW0gSG9ydG9uLgorKworKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9EZWJ1Z1JlbGVhc2UueGNj
b25maWc6CisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL1ZlcnNpb24ueGNjb25maWc6CisrICAg
ICAgICAqIENvbmZpZ3VyYXRpb25zL1dlYktpdFRhcmdldENvbmRpdGlvbmFscy54Y2NvbmZpZzoK
KysKKysyMDIxLTAzLTI1ICBLeWxlIFBpZGRpbmd0b24gIDxrcGlkZGluZ3RvbkBhcHBsZS5jb20+
CisrCisrICAgICAgICBBTkdMRSBNZXRhbCBjcmFzaCBBU0FOIHdlYmdsLzEuMC4zL2NvbmZvcm1h
bmNlL21pc2Mvb2JqZWN0LWRlbGV0aW9uLWJlaGF2aW91ci5odG1sCisrICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIzNzM5CisrCisrICAgICAgICBSZXZp
ZXdlZCBieSBEZWFuIEphY2tzb24uCisrCisrICAgICAgICBQcmV2aW91c2x5LCBBTkdMRSB3b3Vs
ZCB0cnkgdG8gcmVhZCBjb2xvciBhdHRhY2htZW50cyBvZmYgb2YgdGhlCisrICAgICAgICBjYWNo
ZWQgcmVuZGVyIHRhcmdldHMuIEhvd2V2ZXIsIHNpbmNlIHZhbGlkYXRpb24gaGFwcGVucyBiZWZv
cmUKKysgICAgICAgIHN0YXRlIHN5bmMsIHRoZSBjYWNoZWQgcmVuZGVyIHRhcmdldHMgbWF5IGJl
IG91dCBvZiBkYXRlLgorKworKyAgICAgICAgRm9yIG5vbi1zdXJmYWNlIGJhY2tlZCByZW5kZXIg
dGFyZ2V0cywgd2UgaW5zdGVhZCBnZXQgYSBmcmVzaCBjb3B5CisrICAgICAgICBvZiB0aGUgcmVu
ZGVyIHRhcmdldCB3aGVuIGRldGVybWVuaW5nIHRoZSBuYXRpdmUgcGl4ZWwgZm9ybWF0LgorKwor
KyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvRnJhbWVCdWZmZXJNdGwuaDoK
KysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL0ZyYW1lQnVmZmVyTXRsLm1t
OgorKyAgICAgICAgKHJ4OjpGcmFtZWJ1ZmZlck10bDo6Z2V0SW1wbGVtZW50YXRpb25Db2xvclJl
YWRGb3JtYXQgY29uc3QpOgorKyAgICAgICAgKHJ4OjpGcmFtZWJ1ZmZlck10bDo6Z2V0Q29sb3JS
ZWFkUmVuZGVyVGFyZ2V0Tm9DYWNoZSBjb25zdCk6CisrCisrCisrMjAyMS0wMy0yNSAgS3lsZSBQ
aWRkaW5ndG9uICA8a3BpZGRpbmd0b25AYXBwbGUuY29tPgorKworKyAgICAgICAgW01ldGFsIEFO
R0xFXSBBZGQgQ1BVIG1pcG1hcCBnZW5lcmF0aW9uIGZvciB3b3JrYXJvdW5kIG9uIEludGVsIGRl
dmljZXMuCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MjIzNzc4CisrCisrICAgICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisrCisrICAgICAg
ICBNaXBtYXAgZ2VuZXJhdGlvbiBvbiBJbnRlbCBkb2VzIG5vdCByZWxpYWJseSB3b3JrIGZvciB0
ZXh0dXJlcyB3aXRoCisrICAgICAgICB3aWR0aCBsZXNzIHRoYW4gZm91ci4gVG8gcmVsaWFibHkg
cGFzcyB3ZWJHTCBjb25mb3JtYW5jZSwgd2UgbmVlZAorKyAgICAgICAgdG8gc3dpdGNoIHRvIENQ
VSBtaXBtYXAgZ2VuZXJhdGlvbiB3aGVuIGdlbmVyYXRpbmcgbWlwbWFwcyBpbiB0aGlzCisrICAg
ICAgICBzcGVjaWZpYyBjaXJjdW1zdGFuY2UuCisrCisrICAgICAgICBUaGlzIHBhdGNoIGZpeGVz
IHRoZSBmb2xsb3dpbmcgZm91ciB0ZXN0cyBvbiBJbnRlbAorKyAgICAgICAgd2ViZ2wvMS4wLjMv
Y29uZm9ybWFuY2UvbGltaXRzL2dsLW1heC10ZXh0dXJlLWRpbWVuc2lvbnMuaHRtbAorKyAgICAg
ICAgd2ViZ2wvMS4wLjMvY29uZm9ybWFuY2UvdGV4dHVyZXMvdGV4dHVyZS1zaXplLmh0bWwKKysg
ICAgICAgIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlL2xpbWl0cy9nbC1tYXgtdGV4dHVyZS1kaW1l
bnNpb25zLmh0bWwKKysgICAgICAgIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlL3RleHR1cmVzL21p
c2MvdGV4dHVyZS1zaXplLmh0bWwKKysKKysgICAgICAgICogaW5jbHVkZS9wbGF0Zm9ybS9GZWF0
dXJlLmg6CisrICAgICAgICAoYW5nbGU6OkZlYXR1cmVDYXRlZ29yeVRvU3RyaW5nKToKKysgICAg
ICAgICogaW5jbHVkZS9wbGF0Zm9ybS9GZWF0dXJlc010bC5oOgorKyAgICAgICAgKiBzcmMvbGli
QU5HTEUvcmVuZGVyZXIvbWV0YWwvRGlzcGxheU10bC5tbToKKysgICAgICAgIChyeDo6RGlzcGxh
eU10bDo6aW5pdGlhbGl6ZUZlYXR1cmVzKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRl
cmVyL21ldGFsL1RleHR1cmVNdGwubW06CisrICAgICAgICAocng6OlRleHR1cmVNdGw6OmdlbmVy
YXRlTWlwbWFwKToKKysKKysyMDIxLTAzLTI1ICBKZXNzaWUgQmVybGluICA8amJlcmxpbkB3ZWJr
aXQub3JnPgorKworKyAgICAgICAgUmVtb3ZlIDEwLjEzIERFUExPWU1FTlRfVEFSR0VUcyBhbmQg
U1lTVEVNX1ZFUlNJT05fUFJFRklYcworKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIyMzc2NQorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgVGltIEhvcnRv
bi4KKysKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZzoKKysgICAgICAg
ICogQ29uZmlndXJhdGlvbnMvRGVidWdSZWxlYXNlLnhjY29uZmlnOgorKyAgICAgICAgKiBDb25m
aWd1cmF0aW9ucy9WZXJzaW9uLnhjY29uZmlnOgorKworKzIwMjEtMDMtMjQgIEt5bGUgUGlkZGlu
Z3RvbiAgPGtwaWRkaW5ndG9uQGFwcGxlLmNvbT4KKysKKysgICAgICAgIE1ldGFsIEFOR0xFIG5v
bi1ibG9ja2VyczogRml4IHdlYmdsLzEuMC4zL2NvbmZvcm1hbmNlL3VuaWZvcm1zL3VuaWZvcm0t
ZGVmYXVsdC12YWx1ZXMuaHRtbCwgU3RlbmNpbCBkZWJ1ZyBsYXllciBhc3NlcnRpb25zCisrICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIzNjY3CisrCisr
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIzNjY3Cisr
CisrICAgICAgICBPbiBSZWxlYXNlLCB1bmlmb3JtRGVmYXVsdFZhbHVlcyB3YXMgcmVzZXR0aW5n
IHByb2dyYW0gbWVtb3J5CisrICAgICAgICBlaXRoZXIgZWFybHksIG9yIG9kZGx5LiBTaW5jZSBw
cm9ncmFtIHJlZmxlY3Rpb24gc2hvdWxkIGJlIGNvbnN0YW50CisrICAgICAgICBwZXIgU2hhZGVy
IGFueXdheSwgZHJvcCB0aGUgJ3Jlc2V0JyBhZnRlciBhc3NpZ25pbmcgcmVmbGVjdGlvbiBkYXRh
LgorKworKyAgICAgICAgSW4gYWRkaXRpb24sIGNsYW1wIHN0ZW5jaWwgcmVjdGFuZ2xlIHRvIGFs
d2F5cyBiZSB3aXRoaW4gZnJhbWVidWZmZXIgYm91bmRzLiBDb2RlIHRha2VuIGZyb20gdXBzdHJl
YW0gQU5HTEUuCisrCisrCisrICAgICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisrCisr
ICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9Qcm9ncmFtTXRsLm1tOgorKyAg
ICAgICAgKHJ4OjpQcm9ncmFtTXRsOjpsaW5rSW1wbERpcmVjdCk6CisrICAgICAgICAqIHNyYy9s
aWJBTkdMRS9yZW5kZXJlci9tZXRhbC9tdGxfY29tbWFuZF9idWZmZXIubW06CisrICAgICAgICAo
cng6Om10bDo6UmVuZGVyQ29tbWFuZEVuY29kZXI6OmluaXRBdHRhY2htZW50V3JpdGVEZXBlbmRl
bmN5QW5kU2Npc3NvclJlY3QpOgorKyAgICAgICAgKHJ4OjptdGw6OlJlbmRlckNvbW1hbmRFbmNv
ZGVyOjpyZXN0YXJ0KToKKysgICAgICAgIChyeDo6bXRsOjpSZW5kZXJDb21tYW5kRW5jb2Rlcjo6
c2V0U2Npc3NvclJlY3QpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwv
bXRsX2dsc2xhbmdfbXRsX3V0aWxzLm1tOgorKyAgICAgICAgKHJ4OjptdGw6OlRyYW5zbGF0ZWRT
aGFkZXJJbmZvOjpyZXNldCk6CisrICAgICAgICAocng6Om10bDo6R2xzbGFuZ0dldE1TTCk6Cisr
CisrMjAyMS0wMy0yNCAgS3lsZSBQaWRkaW5ndG9uICA8a3BpZGRpbmd0b25AYXBwbGUuY29tPgor
KworKyAgICAgICAgTWV0YWwgQU5HTEUgY3Jhc2hlcyBMYXlvdXRUZXN0cy9pbnNwZWN0b3IvY2Fu
dmFzL3VwZGF0ZVNoYWRlci13ZWJnbC5odG1sCisrICAgICAgICBSYXRoZXIgdGhhbiByZWx5IG9u
IGFuIGluc3RhbmNlIHZhcmlhYmxlIGluIGEgQysrIGNsYXNzLCBqdXN0IHF1ZXJ5IHRoZSBkaWN0
aW9uYXJ5IGNvbnN0YW50IHdoZW4gbmVlZGVkLgorKworKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMzY5NQorKworKyAgICAgICAgUmV2aWV3ZWQgYnkg
RGVhbiBKYWNrc29uLgorKworKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwv
UHJvZ3JhbU10bC5oOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvUHJv
Z3JhbU10bC5tbToKKysgICAgICAgIChyeDo6UHJvZ3JhbU10bDo6UHJvZ3JhbU10bCk6CisrICAg
ICAgICAocng6OlByb2dyYW1NdGw6OmxpbmtJbXBsU3BpcnYpOgorKyAgICAgICAgKHJ4OjpQcm9n
cmFtTXRsOjpsaW5rSW1wbERpcmVjdCk6CisrICAgICAgICAocng6OlByb2dyYW1NdGw6OmxpbmtU
cmFuc2xhdGVkU2hhZGVycyk6CisrCisrMjAyMS0wMy0yMyAgS3lsZSBQaWRkaW5ndG9uICA8a3Bp
ZGRpbmd0b25AYXBwbGUuY29tPgorKworKyAgICAgICAgQU5HTEUgTWV0YWwgZml4ZXMgZm9yIHBy
b2dyYW0gZ2VuZXJhdGlvbiBidWdzCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MjIzNjI3CisrCisrICAgICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tz
b24uCisrCisrICAgICAgICAgICB3ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvZ2xzbDMvdGV4dHVy
ZS1vZmZzZXQtdW5pZm9ybS10ZXh0dXJlLWNvb3JkaW5hdGUuaHRtbCBpcyBmaXhlZCBieSBkcm9w
cGluZyAndGhyZWFkJyBxdWFsaWZpZXJzIG9uIHByZWdlbmVyYXRlZCBmdW5jdGlvbnMKKysgICAg
ICAgICAgIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlL2dsc2wvYnVncy9jb21wb3VuZC1hc3NpZ25t
ZW50LXR5cGUtY29tYmluYXRpb24uaHRtbCBpcyBmaXhlZCBieSBpbnRyb2R1Y2luZyBuZXcgb3Bl
cmF0b3JzIGZvciBtYXRyaXggKy8tIHNjYWxhcnMKKysgICAgICAgICAgIHdlYmdsLzIuMC4wL2Nv
bmZvcm1hbmNlL2dsc2wvYnVncy9jb21wbGV4LWdsc2wtZG9lcy1ub3QtY3Jhc2guaHRtbCBpcyBm
aXhlZCBieSBhZGRpbmcgYSBwcmUtcGFzcyB0byByZW5hbWUgYW55IHJlc2VydmVkIGtleXdvcmRz
LCBzdWNoIGFzICd2ZXJ0ZXgnCisrCisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9y
L1RyYW5zbGF0b3JNZXRhbERpcmVjdC9FbWl0TWV0YWwuY3BwOgorKyAgICAgICAgKEJ1aWxkRXh0
ZXJuYWxBdHRyaWJ1dGVJbmRleE1hcCk6CisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xh
dG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC9Qcm9ncmFtUHJlbHVkZS5jcHA6CisrICAgICAgICAq
IHNyYy9jb21waWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC9SZXdyaXRlS2V5
d29yZHMuY3BwOgorKyAgICAgICAgKHNoOjpSZXdyaXRlcjo6bWF5YmVDcmVhdGVOZXdOYW1lKToK
KysgICAgICAgIChzaDo6UmV3cml0ZXI6OnZpc2l0U3ltYm9sUG9zdCk6CisrICAgICAgICAoc2g6
OlJld3JpdGVyOjpwcmVkZWZpbmVOYW1lKToKKysgICAgICAgIChzaDo6UmV3cml0ZUtleXdvcmRz
KToKKysKKysyMDIxLTAzLTIzICBLaW1tbyBLaW5udW5lbiAgPGtraW5udW5lbkBhcHBsZS5jb20+
CisrCisrICAgICAgICBBTkdMRSBpcyBtaXNzaW5nIHRoZSBleHBsaWNpdCBjb250ZXh0IGhlYWRl
cnMKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjM0
NzAKKysKKysgICAgICAgIFJldmlld2VkIGJ5IEFsZXhleSBQcm9za3VyeWFrb3YuCisrCisrICAg
ICAgICBBZGQgdGhlIGF1dG9nZW5lcmF0ZWQgLmluYyBmaWxlcyBmb3IgZXhwbGljaXQgY29udGV4
dAorKyAgICAgICAgQVBJIGludG8gdGhlIEFOR0xFIHB1YmxpYyBoZWFkZXJzLgorKworKyAgICAg
ICAgKiBBTkdMRS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorKyAgICAgICAgKiBhZGp1c3Qt
YW5nbGUtaW5jbHVkZS1wYXRocy5weToKKysgICAgICAgIChyZXBsYWNlKToKKysKKysyMDIxLTAz
LTE5ICBLeWxlIFBpZGRpbmd0b24gIDxrcGlkZGluZ3RvbkBhcHBsZS5jb20+CisrCisrICAgICAg
ICBNZXRhbC1BbmdsZSBvbiBTaW11bGF0b3IgZG9lcyBub3Qgc3VwcG9ydCBEMjRTOCBjb3JyZWN0
bHkKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjM0
OTQKKysKKysgICAgICAgIFJldmlld2VkIGJ5IERlYW4gSmFja3Nvbi4KKysKKysgICAgICAgIFJl
LXJhbiBhdXRvZ2VuIHNjcmlwdCBmb3IgZm9ybWF0IHRhYmxlIHRvIGFkZCB0aGUgbWlzc2luZyBm
b3JtYXQKKysgICAgICAgIENvcnJlY3RlZCB0ZXh0dXJlIHN3aXp6bGUgc3VwcG9ydC4gU3dpenps
ZSBpcyB1bnN1cHBvcnRlZCBvbiBzaW11bGF0b3IuCisrCisrICAgICAgICAqIHNyYy9saWJBTkdM
RS9yZW5kZXJlci9tZXRhbC9tdGxfZm9ybWF0X3RhYmxlX2F1dG9nZW4ubW06CisrICAgICAgICAo
cng6Om10bDo6Rm9ybWF0Ojppbml0KToKKysKKysyMDIxLTAzLTE5ICBBbGV4IENocmlzdGVuc2Vu
ICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisrCisrICAgICAgICBsaWJBTkdMRS1zaGFyZWQu
ZHlsaWIgbmVlZHMgSU5TVEFMTF9QQVRIIHdoZW4gYnVpbGRpbmcgQ2F0YWx5c3Qgcm9vdHMKKysg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjM0OTkKKysK
KysgICAgICAgIFJldmlld2VkIGJ5IERlYW4gSmFja3Nvbi4KKysKKysgICAgICAgIElOU1RBTExf
UEFUSCB3YXMgZW1wdHksIHNvIG5vIGR5bGliIHdhcyBiZWluZyBpbmNsdWRlZCBpbiB0aGUgcm9v
dC4KKysgICAgICAgIFRoaXMgaXMgbmVlZGVkIHRvIGZpeCB0aGUgQ2F0YWx5c3QgYnVpbGQgYWZ0
ZXIgYnVnIDIxODUzOQorKworKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9BTkdMRS1keW5hbWlj
LnhjY29uZmlnOgorKworKzIwMjEtMDMtMDYgIERlYW4gSmFja3NvbiAgPGRpbm9AYXBwbGUuY29t
PgorKworKyAgICAgICAgTWV0YWwtQU5HTEUgY2FuIEFTU0VSVCBiZWNhdXNlIE1UTCBzaWduYWwg
ZXZlbnQgY29kZSBpcyBjb21waWxlZCBvdXQKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0yMjI4NTkKKysgICAgICAgIDxyZGFyOi8vcHJvYmxlbS83NTEz
MjE4MD4KKysKKysgICAgICAgIFJldmlld2VkIGJ5IEtlbiBSdXNzZWxsLgorKworKyAgICAgICAg
V2l0aCB0aGUgTWV0YWwgYmFja2VuZCBlbmFibGVkLCB0aGUgdGVzdAorKyAgICAgICAgd2ViZ2wv
Mi4wLjAvY29uZm9ybWFuY2UyL3N0YXRlL2dsLW9iamVjdC1nZXQtY2FsbHMuaHRtbCB3aWxsCisr
ICAgICAgICBvY2Nhc2lvbmFsbHkgY3Jhc2ggaW4gbXRsX2NvbW1hbmRfYnVmZmVyIHdoZW4gaXQg
aGl0cyB1bnJlYWNoYWJsZQorKyAgICAgICAgY29kZSBiZWNhdXNlIEFOR0xFX01UTF9FVkVOVF9B
VkFJTEFCTEUgaGFzbid0IGJlZW4gZGVmaW5lZC4gVGhpcyBpcworKyAgICAgICAgYXZhaWxhYmxl
IG9uIG1hY09TIDEwLjE0IGFuZCBhYm92ZSwgc28gc2hvdWxkIGJlIGVuYWJsZWQuCisrCisrICAg
ICAgICBBdCB0aGUgc2FtZSB0aW1lLCBpdCBkb2Vzbid0IG1ha2Ugc2Vuc2UgdG8gY2FsbCB0aGUg
bWV0aG9kIHRoYXQgaGFzCisrICAgICAgICB1bnJlYWNoYWJsZSBjb2RlLCBzbyBndWFyZCBhZ2Fp
bnN0IHRoYXQgaW4gbXRsX2NvbW1hbmRfYnVmZmVyLgorKworKyAgICAgICAgKiBzcmMvbGliQU5H
TEUvcmVuZGVyZXIvbWV0YWwvbXRsX2NvbW1hbmRfYnVmZmVyLm1tOgorKyAgICAgICAgKHJ4Ojpt
dGw6OkNvbW1hbmRCdWZmZXI6OnNldFBlbmRpbmdFdmVudHMpOgorKyAgICAgICAgKiBzcmMvbGli
QU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX2NvbW1vbi5oOiBEZWZpbmUgQU5HTEVfTVRMX0VWRU5U
X0FWQUlMQUJMRS4KKysKKysyMDIxLTAzLTE4ICBLeWxlIFBpZGRpbmd0b24gIDxrcGlkZGluZ3Rv
bkBhcHBsZS5jb20+CisrCisrICAgICAgICAnTVRMTGFuZ3VhZ2VWZXJzaW9uMV8wJyBpcyB1bmF2
YWlsYWJsZSBvbiBDYXRhbHlzdAorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTIyMzM5MgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgSm9uIExlZS4KKysK
KysgICAgICAgIERpc2FibGUgc3dpdGNoIGNhc2UgaW4gY2F0YWx5c3QgYnVpbGRzCisrCisrICAg
ICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC9FbWl0
TWV0YWwuY3BwOgorKyAgICAgICAgKEdldE9wZXJhdG9yU3RyaW5nKToKKysgICAgICAgICogc3Jj
L2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0L1Byb2dyYW1QcmVsdWRl
LmNwcDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL0ZyYW1lQnVmZmVy
TXRsLm1tOgorKyAgICAgICAgKHJ4OjpGcmFtZWJ1ZmZlck10bDo6cmVhZFBpeGVscyk6CisrICAg
ICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9tdGxfdXRpbHMubW06CisrICAgICAg
ICAocng6Om10bDo6R2V0VXNlclNldE9ySGlnaGVzdE1TTFZlcnNpb24pOgorKworKzIwMjEtMDMt
MTcgIEt5bGUgUGlkZGluZ3RvbiAgPGtwaWRkaW5ndG9uQGFwcGxlLmNvbT4KKysKKysgICAgICAg
IEFOR0xFIE1ldGFsIGZpeHVwcyBmb3IgcHJvZ3JhbSBnZW5lcmF0aW9uLCByZWFkUGl4ZWxzCisr
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIzMjYwCisr
CisrICAgICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisrCisrICAgICAgICBUaGlzIGRp
ZmYgZml4ZXMgdGhlIGZvbGxvd2luZyB0ZXN0czoKKysgICAgICAgIHdlYmdsLzIuMC4wL2NvbmZv
cm1hbmNlMi9nbHNsMy90ZXh0dXJlLW9mZnNldC11bmlmb3JtLXRleHR1cmUtY29vcmRpbmF0ZS5o
dG1sIElzIGZpeGVkIGJ5IGRyb3BwaW5nICd0aHJlYWQnIHF1YWxpZmllcnMgb24gb3VyIGludGVy
bWVkaWF0ZSB0ZXh0dXJlIHNhbXBsaW5nIGhlbHBlciBmdW5jdGlvbnMuIFByZXZpb3VzbHksIGFu
eSB1bmlmb3JtcyB1c2VkIGluIHNhbXBsaW5nIHRleHR1cmVzIHdvdWxkIGhhdmUgaGFkIGlzc3Vl
cyB3aXRoIHRoZWlyIG5hbWVzcGFjZS4KKysgICAgICAgIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNl
Mi9yZWFkaW5nL3JlYWQtcGl4ZWxzLXBhY2stcGFyYW1ldGVycy5odG1sIGlzIGZpeGVkIGJ5IGNv
cnJlY3RpbmcgYW4gaXNzdWUgd2l0aCByZWFkaW5nIGZyb20gb3V0c2lkZSB0aGUgZnJhbWVidWZm
ZXIuIEFOR0xFIE1ldGFsIHdhcyBwcmV2aW91c2x5IHJlYWRpbmcgdG8gdGhlIHN0YXJ0IG9mIHRo
ZSBvdXRwdXQgYXJyYXksIHJhdGhlciB0aGFuIGEgcHJvcGVyIG9mZnNldC4KKysgICAgICAgIHdl
YmdsLzIuMC4wL2NvbmZvcm1hbmNlMi9nbHNsMy9hcnJheS1lcXVhbGl0eS5odG1sIGlzIGZpeGVk
IGJ5IGFkZGluZyBhZGRpdGlvbmFsIGVxdWFsaXR5IGZ1bmN0aW9ucyBmb3IgaGFuZGxpbmcgYXJy
YXlzIG9mIHN0cnVjdHMuCisrCisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL1Ry
YW5zbGF0b3JNZXRhbERpcmVjdC9FbWl0TWV0YWwuY3BwOgorKyAgICAgICAgKEdldE9wZXJhdG9y
U3RyaW5nKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1l
dGFsRGlyZWN0L1Byb2dyYW1QcmVsdWRlLmNwcDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3Jl
bmRlcmVyL21ldGFsL0ZyYW1lQnVmZmVyTXRsLm1tOgorKyAgICAgICAgKHJ4OjpGcmFtZWJ1ZmZl
ck10bDo6cmVhZFBpeGVscyk6CisrCisrMjAyMS0wMy0xNiAgS3lsZSBQaWRkaW5ndG9uICA8a3Bp
ZGRpbmd0b25AYXBwbGUuY29tPgorKworKyAgICAgICAgUmVncmVzc2lvbnMgZnJvbSBBTkdMRSBN
ZXRhbCBlbmFibGVtZW50CisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MjIyMjM5CisrICAgICAgICAKKysgICAgICAgIFRoaXMgcGF0Y2ggYWRkcmVzc2Vk
IHNldmVyYWwgbGFyZ2UgYml0cyBvZiBmdW5jaXRvbmFsaXR5IHRoYXQgd2FzIG1pc3NpbmcgZnJv
bSB0aGUgb3JpZ2luYWwgcGF0Y2guCisrICAgICAgICAxKSBJbnRyb2R1Y2Ugc3VwcG9ydCBmb3Ig
VUJPJ3MuIFRoaXMgcGF0Y2ggYWRkcyBhIERFUVAtY29uZm9ybWFudCBpbXBsZW1lbnRhdGlvbiBm
b3IgVUJPIHN0cnVjdHMuIFRoaXMgaW5jbHVkZXMgY2hhbmdlcyB0byB0aGUgdHJhbnNsYXRvciwK
KythbmQgdGhlIGZyb250ZW5kLgorKyAgICAgICAgMikgSW50cm9kdWNlIHN1cHBvcnQgZm9yIFRy
YW5zZm9ybSBmZWVkYmFjayB0byB0aGUgdHJhbnNsYXRvci4gV2UgdXNlIGEgc2VyaWVzIG9mIHN1
YnN0aXR1dGlvbiBtYWNyb3MgYXQgcHJvZ3JhbSBsaW5rIHRpbWUgdG8gcHJvZHVjZSBhIHRyYW5z
Zm9ybS1mZWVkYmFjayB2YXJpZW50IHNoYWRlciwgYW5kIHVzZSBhIHZlcnRleCBwcmUtcGFzcyB0
byBlbXVsYXRlIHRyYW5zZm9ybSBmZWVkYmFjay4KKysgICAgICAgIDMpIFZhcmlvdXMgZml4ZXMg
dG8gaGFuZGxlIGEgZmV3IHdlYmdsMiBhc3NlcnRzLCBzdWNoIGFzIGxhcmdlIHVuaWZvcm0gYnVm
ZmVycy4gVGhpcyBjaGFuZ2UgIChpbiBQcm9ncmFtTXRsLm1tKSB3aWxsIHJlc2VydmUgYSB1bmlm
b3JtIGJ1ZmZlciBvZiB0d2ljZSB0aGUgbm9ybWFsIHNpemUgKDRrYikgaWYgdGhlIHByb2dyYW0g
dW5pZm9ybXMgZXhjZWVkIHRoYXQgbGltaXQuIChGaXhlcyB3ZWJnbC8yLjAuMC9jb25mb3JtYW5j
ZS9nbHNsL2J1Z3MvY29tcGxleC1nbHNsLWRvZXMtbm90LWNyYXNoLmh0bWwgd2ViZ2wvMi4wLjAv
Y29uZm9ybWFuY2UvZ2xzbC9taXNjL3NoYWRlci13aXRoLXRvby1tYW55LXVuaWZvcm1zLmh0bWwg
d2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UvdW5pZm9ybXMvZ2wtdW5pZm9ybS1hcnJheXMuaHRtbCkK
KysKKysgICAgICAgIFJldmlld2VkIGJ5IEpvbiBMZWUuCisrCisrICAgICAgICAqIEFOR0xFLnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisrICAgICAgICAqIGluY2x1ZGUvcGxhdGZvcm0vRmVh
dHVyZXNNdGwuaDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyLmduaToKKysgICAgICAgICogc3Jj
L2NvbXBpbGVyL3RyYW5zbGF0b3IvQmFzZVR5cGVzLmg6CisrICAgICAgICAoc2g6OmdldFF1YWxp
ZmllclN0cmluZyk6CisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL1RyYW5zbGF0
b3JNZXRhbERpcmVjdC5jcHA6CisrICAgICAgICAoc2g6OlRyYW5zbGF0b3JNZXRhbERpcmVjdDo6
aW5zZXJ0U2FtcGxlTWFza1dyaXRpbmdMb2dpYyk6CisrICAgICAgICAoc2g6Om1ldGFsU2hhZGVy
VHlwZUZyb21HTFNMKToKKysgICAgICAgIChzaDo6VHJhbnNsYXRvck1ldGFsRGlyZWN0Ojp0cmFu
c2xhdGVJbXBsKToKKysgICAgICAgIChzaDo6VHJhbnNsYXRvck1ldGFsRGlyZWN0Ojp0cmFuc2xh
dGUpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxE
aXJlY3QuaDoKKysgICAgICAgIChzaDo6VHJhbnNsYXRvck1ldGFsUmVmbGVjdGlvbjo6VHJhbnNs
YXRvck1ldGFsUmVmbGVjdGlvbik6CisrICAgICAgICAoc2g6OlRyYW5zbGF0b3JNZXRhbFJlZmxl
Y3Rpb246OmFkZFVzZXJVbmlmb3JtQnVmZmVyQmluZGluZyk6CisrICAgICAgICAoc2g6OlRyYW5z
bGF0b3JNZXRhbFJlZmxlY3Rpb246OmFkZFVuaWZvcm1CdWZmZXJCaW5kaW5nKToKKysgICAgICAg
IChzaDo6VHJhbnNsYXRvck1ldGFsUmVmbGVjdGlvbjo6Z2V0VXNlclVuaWZvcm1CdWZmZXJCaW5k
aW5ncyBjb25zdCk6CisrICAgICAgICAoc2g6OlRyYW5zbGF0b3JNZXRhbFJlZmxlY3Rpb246Omdl
dFVzZXJVbmlmb3JtQnVmZmVyQmluZGluZyBjb25zdCk6CisrICAgICAgICAoc2g6OlRyYW5zbGF0
b3JNZXRhbFJlZmxlY3Rpb246OmdldFVuaWZvcm1CdWZmZXJCaW5kaW5nIGNvbnN0KToKKysgICAg
ICAgIChzaDo6VHJhbnNsYXRvck1ldGFsUmVmbGVjdGlvbjo6cmVzZXQpOgorKyAgICAgICAgKiBz
cmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QvRW1pdE1ldGFsLmNw
cDoKKysgICAgICAgIChHZW5NZXRhbFRyYXZlcnNlcjo6fkdlbk1ldGFsVHJhdmVyc2VyKToKKysg
ICAgICAgIChHZW5NZXRhbFRyYXZlcnNlcjo6ZW1pdE9wZW5pbmdQb2ludGVyUGFyZW4pOgorKyAg
ICAgICAgKEdlbk1ldGFsVHJhdmVyc2VyOjplbWl0Q2xvc2luZ1BvaW50ZXJQYXJlbik6CisrICAg
ICAgICAoR2V0T3BlcmF0b3JTdHJpbmcpOgorKyAgICAgICAgKEdlbk1ldGFsVHJhdmVyc2VyOjpl
bWl0UG9zdFF1YWxpZmllcik6CisrICAgICAgICAoR2VuTWV0YWxUcmF2ZXJzZXI6OmVtaXRUeXBl
KToKKysgICAgICAgIChHZW5NZXRhbFRyYXZlcnNlcjo6ZW1pdEZpZWxkRGVjbGFyYXRpb24pOgor
KyAgICAgICAgKEdlbk1ldGFsVHJhdmVyc2VyOjplbWl0QXR0cmlidXRlRGVjbGFyYXRpb24pOgor
KyAgICAgICAgKEdlbk1ldGFsVHJhdmVyc2VyOjplbWl0VW5pZm9ybUJ1ZmZlckRlY2xhcmF0aW9u
KToKKysgICAgICAgIChHZW5NZXRhbFRyYXZlcnNlcjo6ZW1pdFN0cnVjdERlY2xhcmF0aW9uKToK
KysgICAgICAgIChHZW5NZXRhbFRyYXZlcnNlcjo6ZW1pdE9yZGluYXJ5VmFyaWFibGVEZWNsYXJh
dGlvbik6CisrICAgICAgICAoR2VuTWV0YWxUcmF2ZXJzZXI6OnZpc2l0U3ltYm9sKToKKysgICAg
ICAgIChHZW5NZXRhbFRyYXZlcnNlcjo6dmlzaXRCaW5hcnkpOgorKyAgICAgICAgKEdlbk1ldGFs
VHJhdmVyc2VyOjplbWl0RnVuY3Rpb25TaWduYXR1cmUpOgorKyAgICAgICAgKEdlbk1ldGFsVHJh
dmVyc2VyOjplbWl0RnVuY3Rpb25SZXR1cm4pOgorKyAgICAgICAgKEdlbk1ldGFsVHJhdmVyc2Vy
OjplbWl0RnVuY3Rpb25QYXJhbWV0ZXIpOgorKyAgICAgICAgKEdlbk1ldGFsVHJhdmVyc2VyOjp2
aXNpdEZ1bmN0aW9uRGVmaW5pdGlvbik6CisrICAgICAgICAoR2VuTWV0YWxUcmF2ZXJzZXI6OnZp
c2l0QWdncmVnYXRlKToKKysgICAgICAgIChSZXF1aXJlc1NlbWljb2xvblRlcm1pbmF0b3IpOgor
KyAgICAgICAgKEdlbk1ldGFsVHJhdmVyc2VyOjp2aXNpdEJsb2NrKToKKysgICAgICAgIChHZW5N
ZXRhbFRyYXZlcnNlcjo6dmlzaXRCcmFuY2gpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJh
bnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QvRml4VHlwZUNvbnN0cnVjdG9ycy5jcHA6Cisr
ICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC9J
bnRyb2R1Y2VWZXJ0ZXhJbmRleElELmNwcDogQWRkZWQuCisrICAgICAgICAoc2g6OlJld3JpdGVy
OjpSZXdyaXRlcik6CisrICAgICAgICAoc2g6OkludHJvZHVjZVZlcnRleEFuZEluc3RhbmNlSW5k
ZXgpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxE
aXJlY3QvSW50cm9kdWNlVmVydGV4SW5kZXhJRC5oOiBBZGRlZC4KKysgICAgICAgICogc3JjL2Nv
bXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0L0xheW91dC5jcHA6CisrICAg
ICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC9MYXlv
dXQuaDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFs
RGlyZWN0L01vZGlmeVN0cnVjdC5jcHA6CisrICAgICAgICAoc2g6OlRyeUNyZWF0ZU1vZGlmaWVk
U3RydWN0KToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1l
dGFsRGlyZWN0L01vZGlmeVN0cnVjdC5oOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNs
YXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QvUGlwZWxpbmUuY3BwOgorKyAgICAgICAgKFBpcGVs
aW5lOjp1c2VzIGNvbnN0KToKKysgICAgICAgIChQaXBlbGluZTo6Z2V0U3RydWN0VHlwZU5hbWUg
Y29uc3QpOgorKyAgICAgICAgKFBpcGVsaW5lOjpnZXRTdHJ1Y3RJbnN0YW5jZU5hbWUgY29uc3Qp
OgorKyAgICAgICAgKEFsbG93UGFja2luZyk6CisrICAgICAgICAoQWxsb3dQYWRkaW5nKToKKysg
ICAgICAgIChTYXR1cmF0ZVZlY3Rvck9mKToKKysgICAgICAgIChQaXBlbGluZTo6ZXh0ZXJuYWxT
dHJ1Y3RNb2RpZnlDb25maWcgY29uc3QpOgorKyAgICAgICAgKFBpcGVsaW5lOjphbHdheXNSZXF1
aXJlc0xvY2FsVmFyaWFibGVEZWNsYXJhdGlvbkluTWFpbiBjb25zdCk6CisrICAgICAgICAoUGlw
ZWxpbmU6OmlzUGlwZWxpbmVPdXQgY29uc3QpOgorKyAgICAgICAgKFBpcGVsaW5lOjpleHRlcm5h
bEFkZHJlc3NTcGFjZSBjb25zdCk6CisrICAgICAgICAoUGlwZWxpbmVTdHJ1Y3RzOjptYXRjaGVz
IGNvbnN0KToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1l
dGFsRGlyZWN0L1BpcGVsaW5lLmg6CisrICAgICAgICAoc2g6OlBpcGVsaW5lU2NvcGVkOjptYXRj
aGVzIGNvbnN0KToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRv
ck1ldGFsRGlyZWN0L1Byb2dyYW1QcmVsdWRlLmNwcDoKKysgICAgICAgIChzaDo6UHJvZ3JhbVBy
ZWx1ZGU6OlByb2dyYW1QcmVsdWRlKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0
b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0L1Byb2dyYW1QcmVsdWRlLmg6CisrICAgICAgICAoc2g6
OlByb2dyYW1QcmVsdWRlQ29uZmlnOjpQcm9ncmFtUHJlbHVkZUNvbmZpZyk6CisrICAgICAgICAq
IHNyYy9jb21waWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC9SZWR1Y2VJbnRl
cmZhY2VCbG9ja3MuY3BwOgorKyAgICAgICAgKHNoOjpSZWR1Y2VyOjpSZWR1Y2VyKToKKysgICAg
ICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0L1Jld3Jp
dGVQaXBlbGluZXMuY3BwOgorKyAgICAgICAgKHNoOjpHZW5lcmF0ZVBpcGVsaW5lU3RydWN0Ojpl
eGVjKToKKysgICAgICAgIChzaDo6R2VuZXJhdGVQaXBlbGluZVN0cnVjdDo6Y3JlYXRlSW50ZXJu
YWxQaXBlbGluZVN0cnVjdCk6CisrICAgICAgICAoc2g6OlBpcGVsaW5lRnVuY3Rpb25FbnY6Omdl
dFVwZGF0ZWRGdW5jdGlvbik6CisrICAgICAgICAoc2g6OlJld3JpdGVQaXBlbGluZXMpOgorKyAg
ICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QvU3lt
Ym9sRW52LmNwcDoKKysgICAgICAgIChTeW1ib2xFbnY6OnJlbW92ZVNwYWNlKToKKysgICAgICAg
IChTeW1ib2xFbnY6OnJlbW92ZVBvaW50ZXIpOgorKyAgICAgICAgKFN5bWJvbEVudjo6bWFya0Fz
VUJPKToKKysgICAgICAgIChTeW1ib2xFbnY6OmlzVUJPIGNvbnN0KToKKysgICAgICAgICogc3Jj
L2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0L1N5bWJvbEVudi5oOgor
KyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci90cmVlX29wcy9OYW1lTmFtZWxlc3NV
bmlmb3JtQnVmZmVycy5jcHA6IEFkZGVkLgorKyAgICAgICAgKHNoOjpOYW1lTmFtZWxlc3NVbmlm
b3JtQnVmZmVycyk6CisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL3RyZWVfb3Bz
L05hbWVOYW1lbGVzc1VuaWZvcm1CdWZmZXJzLmg6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvY29t
cGlsZXIvdHJhbnNsYXRvci91dGlsLmNwcDoKKysgICAgICAgIChzaDo6SXNCdWlsdGluT3V0cHV0
VmFyaWFibGUpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0NvbnRl
eHRDR0wuY3BwOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvQnVmZmVy
TXRsLmg6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9CdWZmZXJNdGwu
bW06CisrICAgICAgICAocng6OkluZGV4Q29udmVyc2lvbkJ1ZmZlck10bDo6SW5kZXhDb252ZXJz
aW9uQnVmZmVyTXRsKToKKysgICAgICAgIChyeDo6SW5kZXhDb252ZXJzaW9uQnVmZmVyTXRsOjpn
ZXRSYW5nZUZvckNvbnZlcnRlZEJ1ZmZlcik6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5k
ZXJlci9tZXRhbC9Db250ZXh0TXRsLmg6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJl
ci9tZXRhbC9Db250ZXh0TXRsLm1tOgorKyAgICAgICAgKHJ4OjpDb250ZXh0TXRsOjpoYW5kbGVE
aXJ0eURyaXZlclVuaWZvcm1zKToKKysgICAgICAgIChyeDo6Q29udGV4dE10bDo6aGFuZGxlRGly
dHlHcmFwaGljc1RyYW5zZm9ybUZlZWRiYWNrQnVmZmVyc0VtdWxhdGlvbik6CisrICAgICAgICAo
cng6OkNvbnRleHRNdGw6OmhhbmRsZURpcnR5RGVwdGhCaWFzKToKKysgICAgICAgICogc3JjL2xp
YkFOR0xFL3JlbmRlcmVyL21ldGFsL0Rpc3BsYXlNdGwubW06CisrICAgICAgICAocng6OkRpc3Bs
YXlNdGw6OmdldE1heFN1cHBvcnRlZEVTVmVyc2lvbiBjb25zdCk6CisrICAgICAgICAocng6OkRp
c3BsYXlNdGw6OmdlbmVyYXRlQ29uZmlncyk6CisrICAgICAgICAocng6OkRpc3BsYXlNdGw6OmVu
c3VyZUNhcHNJbml0aWFsaXplZCBjb25zdCk6CisrICAgICAgICAocng6OkRpc3BsYXlNdGw6Omlu
aXRpYWxpemVGZWF0dXJlcyk6CisrICAgICAgICAocng6OkRpc3BsYXlNdGw6OmluaXRpYWxpemVT
aGFkZXJMaWJyYXJ5KToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL0Zy
YW1lQnVmZmVyTXRsLmg6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9Q
cm9ncmFtTXRsLmg6CisrICAgICAgICAocng6OlByb2dyYW1NdGw6OmNyZWF0ZU1zbFNoYWRlckxp
Yik6CisrICAgICAgICAocng6OlByb2dyYW1NdGw6OmdldFhmYkJpbmRpbmdzIGNvbnN0KToKKysg
ICAgICAgIChyeDo6UHJvZ3JhbU10bDo6Z2V0VHJhbnNsYXRlZFNoYWRlclNvdXJjZSBjb25zdCk6
CisrICAgICAgICAocng6OlByb2dyYW1NdGw6OmdldFhmYk1zbFNvdXJjZSBjb25zdCk6IERlbGV0
ZWQuCisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9Qcm9ncmFtTXRsLm1t
OgorKyAgICAgICAgKHJ4OjpQcm9ncmFtTXRsOjpQcm9ncmFtTXRsKToKKysgICAgICAgIChyeDo6
UHJvZ3JhbU10bDo6ZGVzdHJveSk6CisrICAgICAgICAocng6OlByb2dyYW1NdGw6OnJlc2V0KToK
KysgICAgICAgIChyeDo6UHJvZ3JhbU10bDo6c2F2ZVRyYW5zbGF0ZWRTaGFkZXJzKToKKysgICAg
ICAgIChyeDo6UHJvZ3JhbU10bDo6bG9hZFRyYW5zbGF0ZWRTaGFkZXJzKToKKysgICAgICAgIChy
eDo6UHJvZ3JhbU10bDo6bGlua0ltcGxTcGlydik6CisrICAgICAgICAocng6OlByb2dyYW1NdGw6
OmxpbmtJbXBsRGlyZWN0KToKKysgICAgICAgIChyeDo6UHJvZ3JhbU10bDo6bGlua0ltcGwpOgor
KyAgICAgICAgKHJ4OjpQcm9ncmFtTXRsOjpsaW5rVHJhbnNsYXRlZFNoYWRlcnMpOgorKyAgICAg
ICAgKHJ4OjpQcm9ncmFtTXRsOjpnZXRCdWZmZXJQb29sKToKKysgICAgICAgIChyeDo6UHJvZ3Jh
bU10bDo6cmVzaXplRGVmYXVsdFVuaWZvcm1CbG9ja3NNZW1vcnkpOgorKyAgICAgICAgKHJ4OjpQ
cm9ncmFtTXRsOjpnZXRTcGVjaWFsaXplZFNoYWRlcik6CisrICAgICAgICAocng6OlByb2dyYW1N
dGw6OmNyZWF0ZU1zbFNoYWRlckxpYik6CisrICAgICAgICAocng6OlByb2dyYW1NdGw6OmNvbW1p
dFVuaWZvcm1zKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL1F1ZXJ5
TXRsLmg6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9SZW5kZXJCdWZm
ZXJNdGwubW06CisrICAgICAgICAocng6OlJlbmRlcmJ1ZmZlck10bDo6c2V0U3RvcmFnZUltcGwp
OgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvUmVuZGVyVGFyZ2V0TXRs
Lm1tOgorKyAgICAgICAgKHJ4OjpSZW5kZXJUYXJnZXRNdGw6OnNldFdpdGhJbXBsaWNpdE1TVGV4
dHVyZSk6CisrICAgICAgICAocng6OlJlbmRlclRhcmdldE10bDo6cmVzZXQpOgorKyAgICAgICAg
KiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvU2hhZGVyTXRsLm1tOgorKyAgICAgICAgKHJ4
OjpTaGFkZXJNdGw6OmNvbXBpbGUpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIv
bWV0YWwvU3VyZmFjZU10bC5tbToKKysgICAgICAgIChyeDo6V2luZG93U3VyZmFjZU10bDo6aW5p
dGlhbGl6ZSk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9UZXh0dXJl
TXRsLm1tOgorKyAgICAgICAgKHJ4OjpUZXh0dXJlTXRsOjplbnN1cmVTYW1wbGVyU3RhdGVDcmVh
dGVkKToKKysgICAgICAgIChyeDo6VGV4dHVyZU10bDo6c2V0UGVyU2xpY2VTdWJJbWFnZSk6Cisr
ICAgICAgICAocng6OlRleHR1cmVNdGw6OmluaXRpYWxpemVDb250ZW50cyk6CisrICAgICAgICAq
IHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9UcmFuc2Zvcm1GZWVkYmFja010bC5tbToKKysg
ICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL1ZlcnRleEFycmF5TXRsLm1tOgor
KyAgICAgICAgKHJ4OjpWZXJ0ZXhBcnJheU10bDo6Z2V0SW5kZXhCdWZmZXIpOgorKyAgICAgICAg
KiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX2NvbW1vbi5oOgorKyAgICAgICAgKiBz
cmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX2NvbnN0YW50cy5oOgorKyAgICAgICAgKiBz
cmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX2Zvcm1hdF9tYXAuanNvbjoKKysgICAgICAg
ICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF9mb3JtYXRfdGFibGVfYXV0b2dlbi5t
bToKKysgICAgICAgIChyeDo6bXRsOjpGb3JtYXQ6OmluaXQpOgorKyAgICAgICAgKiBzcmMvbGli
QU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX2Zvcm1hdF91dGlscy5tbToKKysgICAgICAgIChyeDo6
bXRsOjpGb3JtYXRUYWJsZTo6aW5pdGlhbGl6ZSk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9y
ZW5kZXJlci9tZXRhbC9tdGxfZ2xzbGFuZ19tdGxfdXRpbHMuaDoKKysgICAgICAgICogc3JjL2xp
YkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF9nbHNsYW5nX210bF91dGlscy5tbToKKysgICAgICAg
IChyeDo6bXRsOjp1cGRhdGVTaGFkZXJBdHRyaWJ1dGVzKToKKysgICAgICAgIChyeDo6bXRsOjpT
dWJzdGl0dXRlVHJhbnNmb3JtRmVlZGJhY2tNYXJrZXJzKToKKysgICAgICAgIChyeDo6bXRsOjpH
ZW5lcmF0ZVRyYW5zZm9ybUZlZWRiYWNrVmFyeWluZ091dHB1dCk6CisrICAgICAgICAocng6Om10
bDo6R2VuZXJhdGVUcmFuc2Zvcm1GZWVkYmFja0VtdWxhdGlvbk91dHB1dHMpOgorKyAgICAgICAg
KHJ4OjptdGw6OmdldFJlZmxlY3Rpb25Gcm9tQ29tcGlsZXIpOgorKyAgICAgICAgKHJ4OjptdGw6
Okdsc2xhbmdHZXRNU0wpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwv
bXRsX3JlbmRlcl91dGlscy5tbToKKysgICAgICAgIChyeDo6bXRsOjpUcmFuc2Zvcm1GZWVkYmFj
a1V0aWxzOjpjcmVhdGVNc2xYZmJMaWJyYXJ5KToKKysgICAgICAgIChyeDo6bXRsOjpUcmFuc2Zv
cm1GZWVkYmFja1V0aWxzOjpnZXRUcmFuc2Zvcm1GZWVkYmFja1JlbmRlclBpcGVsaW5lKToKKysg
ICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF9yZXNvdXJjZXMuaDoKKysg
ICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF9yZXNvdXJjZXMubW06Cisr
ICAgICAgICAocng6Om10bDo6VGV4dHVyZTo6VGV4dHVyZSk6CisrICAgICAgICAqIHNyYy9saWJB
TkdMRS9yZW5kZXJlci9tZXRhbC9tdGxfc3RhdGVfY2FjaGUubW06CisrICAgICAgICAocng6Om10
bDo6U2FtcGxlckRlc2M6OlNhbXBsZXJEZXNjKToKKysgICAgICAgIChyeDo6bXRsOjpTYW1wbGVy
RGVzYzo6cmVzZXQpOgorKyAgICAgICAgKHJ4OjptdGw6OlJlbmRlclBpcGVsaW5lQ2FjaGU6OlJl
bmRlclBpcGVsaW5lQ2FjaGUpOgorKyAgICAgICAgKHJ4OjptdGw6OlJlbmRlclBpcGVsaW5lQ2Fj
aGU6OmNyZWF0ZVJlbmRlclBpcGVsaW5lU3RhdGUpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUv
cmVuZGVyZXIvbWV0YWwvbXRsX3V0aWxzLmg6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5k
ZXJlci9tZXRhbC9tdGxfdXRpbHMubW06CisrICAgICAgICAocng6Om10bDo6R2V0VXNlclNldE9y
SGlnaGVzdE1TTFZlcnNpb24pOgorKyAgICAgICAgKHJ4OjptdGw6OkNyZWF0ZVNoYWRlckxpYnJh
cnkpOgorKyAgICAgICAgKHJ4OjptdGw6OkdldEhpZ2hlc3RTdXBwb3J0ZWRNU0xWZXJzaW9uKTog
RGVsZXRlZC4KKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL3NoYWRlcnMv
YmxpdC5tZXRhbDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL3NoYWRl
cnMvZm9ybWF0X2F1dG9nZW4uaDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21l
dGFsL3NoYWRlcnMvbXRsX2RlZmF1bHRfc2hhZGVyc19zcmNfYXV0b2dlbi5pbmM6CisrCisrMjAy
MS0wMy0wMyAgS3lsZSBQaWRkaW5ndG9uICA8a3BpZGRpbmd0b25AYXBwbGUuY29tPgorKworKyAg
ICAgICAgU3VwcG9ydCBEZXB0aDI0X1N0ZW5jaWw4IHNpbXVsYXRpb24gaW4gdGhlIE1UTFNpbXVs
YXRvcgorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIy
MjYyNAorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGVhbiBKYWNrc29uLgorKworKyAgICAgICAg
Rml4ZXMgdGhlIGZvbGxvd2luZyB0ZXN0czoKKysgICAgICAgIGZhc3QvY2FudmFzL3dlYmdsL2Nv
bnRleHQtY3JlYXRpb24tYXR0cmlidXRlcy5odG1sCisrICAgICAgICBmYXN0L2NhbnZhcy93ZWJn
bC93ZWJnbC1kZXB0aC10ZXh0dXJlLmh0bWwKKysgICAgICAgIHdlYmdsLzEuMC4zL2NvbmZvcm1h
bmNlL21pc2Mvd2ViZ2wtc3BlY2lmaWMuaHRtbAorKyAgICAgICAgd2ViZ2wvMS4wLjMvY29uZm9y
bWFuY2UvcmVuZGVyYnVmZmVycy9mcmFtZWJ1ZmZlci1vYmplY3QtYXR0YWNobWVudC5odG1sCisr
CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9tdGxfZm9ybWF0X21hcC5q
c29uOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX2Zvcm1hdF90
YWJsZV9hdXRvZ2VuLm1tOgorKyAgICAgICAgKHJ4OjptdGw6OkZvcm1hdDo6aW5pdCk6CisrCisr
MjAyMS0wMi0yNiAgS3lsZSBQaWRkaW5ndG9uICA8a3BpZGRpbmd0b25AYXBwbGUuY29tPgorKwor
KyAgICAgICAgU3VwcG9ydCAgZmFzdC9jYW52YXMvd2ViZ2wvY29weUJ1ZmZlclN1YkRhdGEuaHRt
bCwgZml4IGJ1Z3MgaW4gZmFzdC9jYW52YXMvd2ViZ2wvZ2V0QnVmZmVyU3ViRGF0YS13ZWJnbDEu
aHRtbCBpbiBNZXRhbCBBTkdMRSBvbiBTaW11bGF0b3IKKysgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjI1MDgKKysKKysgICAgICAgIFJldmlld2VkIGJ5
IERlYW4gSmFja3Nvbi4KKysKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFs
L0J1ZmZlck10bC5tbToKKysgICAgICAgIChyeDo6QnVmZmVyTXRsOjp1bm1hcCk6CisrICAgICAg
ICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9EaXNwbGF5TXRsLm1tOgorKyAgICAgICAg
KHJ4OjpEaXNwbGF5TXRsOjpnZXRNYXhTdXBwb3J0ZWRFU1ZlcnNpb24gY29uc3QpOgorKworKzIw
MjEtMDItMjYgIEt5bGUgUGlkZGluZ3RvbiAgPGtwaWRkaW5ndG9uQGFwcGxlLmNvbT4KKysKKysg
ICAgICAgIEZpeCBpT1Mgc2ltdWxhdG9yIGNyYXNoZXMgZHVlIHRvIHVuc3VwcG9ydGVkIHNpbXVs
YXRvciBwaXhlbCBmb3JtYXRzOiByOFVub3JtX3NyZ2IsIGExYmdyNVVub3JtLCBiNWc2cjVVbm9y
bSwgYWJncjRVbm9ybSwgYmdyNUExVW5vcm0sIGFuZCBwcm9ncmFtIGdlbmVyYXRpb24gYXNzZXJ0
cy4KKysKKysgICAgICAgIGlPUyBTaW11bGF0b3IgZG9lc24ndCBzdXBwb3J0IHRoZSBmb2xsb3dp
bmcgcGFja2VkIDE2IGJpdCBmb3JtYXRzIG5hdGl2ZWx5LiBXaGlsZSBzb21lIG9mIHRoZXNlIGNh
biBiZSBlbXVsYXRlZCwgd2Ugc2hvdWxkIGZpeCB1cCB0aGUgY3Jhc2hpbmcgY2FzZXMgZmlyc3Qu
CisrCisrICAgICAgICBBbHNvIGZpeCB1cCBwcm9ncmFtIGdlbmVyYXRpb24gaXNzdWVzIGZvciB2
b2lkIGZyYWdtZW50IHNoYWRlcnMKKysKKysgICAgICAgIERpc2FibGUgc3VwcG9ydCBmb3IgUFZS
VEMgdGVtcG9yYXJpbHksIGFzIE5vbi1zcXVhcmUgLyBOUE9UIFBWUlRDIHRleHR1cmVzIGFyZSBu
b3Qgc3VwcG9ydGVkIG5hdGl2bGV5IG9uIG1ldGFsLgorKworKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMjQ1OAorKworKyAgICAgICAgUmV2aWV3ZWQg
YnkgRGVhbiBKYWNrc29uLgorKworKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9U
cmFuc2xhdG9yTWV0YWxEaXJlY3QvRW1pdE1ldGFsLmNwcDoKKysgICAgICAgIChHZW5NZXRhbFRy
YXZlcnNlcjo6ZW1pdFN0cnVjdERlY2xhcmF0aW9uKToKKysgICAgICAgIChHZW5NZXRhbFRyYXZl
cnNlcjo6ZW1pdEZ1bmN0aW9uUmV0dXJuKToKKysgICAgICAgIChHZW5NZXRhbFRyYXZlcnNlcjo6
ZW1pdEZ1bmN0aW9uUGFyYW1ldGVyKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0
b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0L1BpcGVsaW5lLmNwcDoKKysgICAgICAgIChQaXBlbGlu
ZVN0cnVjdHM6Om1hdGNoZXMgY29uc3QpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNs
YXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QvUGlwZWxpbmUuaDoKKysgICAgICAgIChzaDo6UGlw
ZWxpbmVTY29wZWQ6Om1hdGNoZXMgY29uc3QpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVu
ZGVyZXIvbWV0YWwvVGV4dHVyZU10bC5tbToKKysgICAgICAgIChyeDo6VGV4dHVyZU10bDo6c2V0
UGVyU2xpY2VTdWJJbWFnZSk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRh
bC9nZW5fbXRsX2Zvcm1hdF90YWJsZS5weToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRl
cmVyL21ldGFsL210bF9mb3JtYXRfbWFwLmpzb246CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9y
ZW5kZXJlci9tZXRhbC9tdGxfZm9ybWF0X3RhYmxlX2F1dG9nZW4ubW06CisrICAgICAgICAocng6
Om10bDo6Rm9ybWF0Ojppbml0KToKKysgICAgICAgIChyeDo6bXRsOjpWZXJ0ZXhGb3JtYXQ6Omlu
aXQpOgorKyAgICAgICAgKHJ4OjptdGw6OkZvcm1hdFRhYmxlOjppbml0TmF0aXZlRm9ybWF0Q2Fw
c0F1dG9nZW4pOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX2Zv
cm1hdF91dGlscy5tbToKKysgICAgICAgIChyeDo6bXRsOjpGb3JtYXRUYWJsZTo6aW5pdGlhbGl6
ZSk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9tdGxfcmVzb3VyY2Vz
Lm1tOgorKyAgICAgICAgKHJ4OjptdGw6OlRleHR1cmU6Ok1ha2UyRFRleHR1cmUpOgorKyAgICAg
ICAgKHJ4OjptdGw6OlRleHR1cmU6Ok1ha2VUZXh0dXJlKToKKysKKysyMDIxLTAyLTI2ICBLaW1t
byBLaW5udW5lbiAgPGtraW5udW5lbkBhcHBsZS5jb20+CisrCisrICAgICAgICBUZXh0dXJlcyBG
YWlsIHRvIFJlbmRlciBpbiBXZWJHTCBmcm9tIEhMUyBTdHJlYW0gb24gaVBob25lIDEyIFtpT1Mg
MTQuMl0KKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MTg2MzcKKysgICAgICAgIDxyZGFyOi8vcHJvYmxlbS83MTEwMjEyNj4KKysKKysgICAgICAgIFJl
dmlld2VkIGJ5IEtlbm5ldGggUnVzc2VsbC4KKysKKysgICAgICAgIFJlbW92ZSBpbmNvcnJlY3Qg
dmFsaWRhdGlvbiB0aGF0IElPU3VyZmFjZSBwaXhlbCBmb3JtYXQgbWF0Y2hlcworKyAgICAgICAg
dGhlIHBpeGVsIGZvcm1hdCBvZiB0aGUgdGV4dHVyZSBpbWFnZSBiZWluZyBzcGVjaWZpZWQuCisr
CisrICAgICAgICBUaGUgIkVsZW1lbnQiIGluIElPU3VyZmFjZSBpcyBhIGJsb2NrIG9mIHBpeGVs
cywgd2hpbGUgdGhlIHZhbGlkYXRpb24gYXNzdW1lZAorKyAgICAgICAgaXQgbWVhbnMgb25lIHBp
eGVsLiBUaGUgdmFsaWRhdGlvbiBmYWlsZWQgZm9yIGEgY29tcHJlc3NlZCBmb3JtYXQuCisrCisr
ICAgICAgICBDdXJyZW50bHkgd2UgbWFwIG5vbi1wdWJsaWMgWVVWIGZvcm1hdHMsIHRvIHdoaWNo
IHRoZXJlIGlzIG5vIGVsZXF1ZW50IHdheQorKyAgICAgICAgb2YgaW1wbGVtZW50aW5nIHRoZSB2
YWxpZGF0aW9uLgorKyAgICAgICAgTW9zdCBsaWtlbHkgdGhpcyBzdGFydGVkIHRvIHJlcHJvZHVj
ZSBpZiBJT1N1cmZhY2VHZXRCeXRlc1BlckVsZW1lbnRPZlBsYW5lCisrICAgICAgICB3YXMgY2hh
bmdlZCB0byBwcm9kdWNlIGNvcnJlY3QgcmVzdWx0cyBmb3IgdGhlIGFib3ZlIFlVViBmb3JtYXQu
CisrCisrICAgICAgICBMYXRlciBjb21taXRzIGNvdWxkIGFkZCB0aGUgdmFsaWRhdGlvbiBiYWNr
IGZvciBmb3JtYXRzIHRoYXQgd2Uga25vdyB0aGUKKysgICAgICAgIHBpeGVsIGZvcm1hdCB0eXBl
LgorKworKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9JT1N1cmZhY2VT
dXJmYWNlRUFHTC5tbToKKysgICAgICAgIChyeDo6SU9TdXJmYWNlU3VyZmFjZUVBR0w6OnZhbGlk
YXRlQXR0cmlidXRlcyk6CisrCisrMjAyMS0wMi0yNSAgS3lsZSBQaWRkaW5ndG9uICA8a3BpZGRp
bmd0b25AYXBwbGUuY29tPgorKworKyAgICAgICAgRml4IGNyYXNoZXMgaW4gZmFzdC9jYW52YXMv
d2ViZ2wvdGV4SW1hZ2UgdmlkZW8gdGVzdHMKKysgICAgICAgIFJlZmFjdG9yIElPU3VyZmFjZVN1
cmZhY2VNdGwgdG8gbWF0Y2ggb3BlbiBzb3VyY2UgaW1wbGVtZW50YXRpb24uCisrICAgICAgICBB
ZGRpdGlvbmFsIGNsZWFudXAKKysKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0yMjIzMzEKKysKKysgICAgICAgIFJldmlld2VkIGJ5IERlYW4gSmFja3Nv
bi4KKysKKysKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL0NvbnRleHRN
dGwuaDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL0NvbnRleHRNdGwu
bW06CisrICAgICAgICAocng6OkNvbnRleHRNdGw6Om9uQmFja2J1ZmZlclJlc2l6ZWQpOgorKyAg
ICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvRGlzcGxheU10bC5tbToKKysgICAg
ICAgIChyeDo6RGlzcGxheU10bDo6Y3JlYXRlUGJ1ZmZlclN1cmZhY2UpOgorKyAgICAgICAgKHJ4
OjpEaXNwbGF5TXRsOjpjcmVhdGVQYnVmZmVyRnJvbUNsaWVudEJ1ZmZlcik6CisrICAgICAgICAq
IHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9GcmFtZUJ1ZmZlck10bC5oOgorKyAgICAgICAg
KHJ4OjpGcmFtZWJ1ZmZlck10bDo6Z2V0QXR0YWNoZWRCYWNrYnVmZmVyIGNvbnN0KToKKysgICAg
ICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL0ZyYW1lQnVmZmVyTXRsLm1tOgorKyAg
ICAgICAgKHJ4OjpGcmFtZWJ1ZmZlck10bDo6RnJhbWVidWZmZXJNdGwpOgorKyAgICAgICAgKiBz
cmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvSU9TdXJmYWNlU3VyZmFjZU10bC5oOgorKyAgICAg
ICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvSU9TdXJmYWNlU3VyZmFjZU10bC5tbToK
KysgICAgICAgIChyeDo6SU9TdXJmYWNlU3VyZmFjZU10bDo6SU9TdXJmYWNlU3VyZmFjZU10bCk6
CisrICAgICAgICAocng6OklPU3VyZmFjZVN1cmZhY2VNdGw6On5JT1N1cmZhY2VTdXJmYWNlTXRs
KToKKysgICAgICAgIChyeDo6SU9TdXJmYWNlU3VyZmFjZU10bDo6YmluZFRleEltYWdlKToKKysg
ICAgICAgIChyeDo6SU9TdXJmYWNlU3VyZmFjZU10bDo6cmVsZWFzZVRleEltYWdlKToKKysgICAg
ICAgIChyeDo6SU9TdXJmYWNlU3VyZmFjZU10bDo6Z2V0QXR0YWNobWVudFJlbmRlclRhcmdldCk6
CisrICAgICAgICAocng6OklPU3VyZmFjZVN1cmZhY2VNdGw6OmVuc3VyZUNvbG9yVGV4dHVyZUNy
ZWF0ZWQpOgorKyAgICAgICAgKHJ4OjpJT1N1cmZhY2VTdXJmYWNlTXRsOjpWYWxpZGF0ZUF0dHJp
YnV0ZXMpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvU3VyZmFjZU10
bC5oOgorKyAgICAgICAgKHJ4OjpTdXJmYWNlTXRsOjpnZXRDb2xvclRleHR1cmUpOgorKyAgICAg
ICAgKHJ4OjpTdXJmYWNlTXRsOjpnZXRTYW1wbGVzIGNvbnN0KToKKysgICAgICAgIChyeDo6U3Vy
ZmFjZU10bDo6aGFzUm9idXN0UmVzb3VyY2VJbml0IGNvbnN0KToKKysgICAgICAgIChyeDo6V2lu
ZG93U3VyZmFjZU10bDo6cHJlc2VydmVCdWZmZXIgY29uc3QpOgorKyAgICAgICAgKiBzcmMvbGli
QU5HTEUvcmVuZGVyZXIvbWV0YWwvU3VyZmFjZU10bC5tbToKKysgICAgICAgIChyeDo6U3VyZmFj
ZU10bDo6U3VyZmFjZU10bCk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRh
bC9UZXh0dXJlTXRsLmg6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9U
ZXh0dXJlTXRsLm1tOgorKyAgICAgICAgKHJ4OjpUZXh0dXJlTXRsOjplbnN1cmVUZXh0dXJlQ3Jl
YXRlZCk6CisrICAgICAgICAocng6OlRleHR1cmVNdGw6OmVuc3VyZVNhbXBsZXJTdGF0ZUNyZWF0
ZWQpOgorKyAgICAgICAgKHJ4OjpUZXh0dXJlTXRsOjpiaW5kVGV4SW1hZ2UpOgorKyAgICAgICAg
KHJ4OjpUZXh0dXJlTXRsOjpyZWxlYXNlVGV4SW1hZ2UpOgorKyAgICAgICAgKHJ4OjpUZXh0dXJl
TXRsOjpnZXRBdHRhY2htZW50UmVuZGVyVGFyZ2V0KToKKysgICAgICAgICogc3JjL2xpYkFOR0xF
L3JlbmRlcmVyL21ldGFsL210bF9jb21tb24uaDoKKysKKysyMDIxLTAyLTE5ICBLeWxlIFBpZGRp
bmd0b24gIDxrcGlkZGluZ3RvbkBhcHBsZS5jb20+CisrCisrICAgICAgICBGaXggYSBudW1iZXIg
b2YgZnVuY3Rpb25hbCByZWdyZXNzaW9ucyBjYXVzZWQgYnkgZW5hYmxpbmcgdGhlIE1ldGFsIEFO
R0xFIGJhY2tlbmQgYnkgZGVmYXVsdC4KKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMjA4OTUKKysgICAgICAgIDxyZGFyOi8vcHJvYmxlbS83MzUzOTUz
Nz4KKysKKysgICAgICAgIFJldmlld2VkIGJ5IEtlbm5ldGggUnVzc2VsbC4KKysKKysgICAgICAg
IFRha2UgdHdvIG9mIHRoaXMgY29tbWl0IC0gdGhpcyB0aW1lIHdpdGggdGhlIG5ldyBmaWxlcyBG
aXhUeXBlQ29uc3RydWN0b3JzIGFuZCBOYW1lRW1iZWRkZWRVbmlmb3JtU3RydWN0c01ldGFsLgor
KyAgICAgICAgCisrICAgICAgICBGaXhlZCB3ZWJnbC8xLjAuMy9jb25mb3JtYW5jZS9jb250ZXh0
L2NvbnRleHQtaGlkZGVuLWFscGhhLmh0bWwKKysKKysgICAgICAgIE1UTCBUcmFuc2xhdG9yIGRp
cmVjdCBmaXhlcyBmb3Igd2ViZ2wvMS4wLjMvY29uZm9ybWFuY2UvZ2xzbC9jb25zdHJ1Y3RvcnMv
Z2xzbC1jb25zdHJ1Y3QtKnZlYzIgdGVzdHMsIFBsdXMgZml4IGZvciBHTF9WZXJ0ZXhJbmRleAor
KworKyAgICAgICAgRml4IEVtaXRNZXRhbCBjcmFzaCBmb3IgbWlzc2luZyBmdW5jdGlvbiB0ZXh0
dXJlUmVjdC4KKysKKysgICAgICAgIEFkZGl0aW9uYWwgZml4ZXMgZm9yIDczNjc1OTkwLCBzaGFk
ZXJzLXdpdGgtaW52YXJpYW5jZS5odG1sLCBzaGFkZXJzLXdpdGgtdW5pZm9ybS1zdHJ1Y3RzLmh0
bWwsIHN0cnVjdC1zcGVjaWZpZXJzLWluLXVuaWZvcm1zLmh0bWwsIGZyYW1lYnVmZmVyLW9iamVj
dC1hdHRhY2htZW50Lmh0bWwKKysKKysgICAgICAgIEZpeGVkIGNsYW1waW5nIG9mIGFycmF5IGVs
ZW1lbnRzLgorKworKyAgICAgICAgKiBBTkdMRS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgor
KyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3Qu
Y3BwOgorKyAgICAgICAgKHNoOjpUcmFuc2xhdG9yTWV0YWxEaXJlY3Q6OnRyYW5zbGF0ZUltcGwp
OgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJl
Y3QvRW1pdE1ldGFsLmNwcDoKKysgICAgICAgIChHZW5NZXRhbFRyYXZlcnNlcjo6ZW1pdFBvc3RR
dWFsaWZpZXIpOgorKyAgICAgICAgKEdlbk1ldGFsVHJhdmVyc2VyOjp2aXNpdEJpbmFyeSk6Cisr
ICAgICAgICAoR2VuTWV0YWxUcmF2ZXJzZXI6OkJ1aWxkRnVuY1RvTmFtZSk6CisrICAgICAgICAq
IHNyYy9jb21waWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC9GaXhUeXBlQ29u
c3RydWN0b3JzLmNwcDogQWRkZWQuCisrICAgICAgICAoc2g6OkZpeFR5cGVUcmF2ZXJzZXI6OkZp
eFR5cGVUcmF2ZXJzZXIpOgorKyAgICAgICAgKHNoOjpGaXhUeXBlQ29uc3RydWN0b3JzKToKKysg
ICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0L0Zp
eFR5cGVDb25zdHJ1Y3RvcnMuaDogQWRkZWQuCisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFu
c2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC9OYW1lRW1iZWRkZWRVbmlmb3JtU3RydWN0c01l
dGFsLmNwcDogQWRkZWQuCisrICAgICAgICAoc2g6Ok5hbWVFbWJlZGRlZFN0cnVjdFVuaWZvcm1z
TWV0YWwpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0
YWxEaXJlY3QvTmFtZUVtYmVkZGVkVW5pZm9ybVN0cnVjdHNNZXRhbC5oOiBBZGRlZC4KKysgICAg
ICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0L1BpcGVs
aW5lLmNwcDoKKysgICAgICAgIChTYXR1cmF0ZVZlY3Rvck9mKToKKysgICAgICAgICogc3JjL2Nv
bXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0L1Byb2dyYW1QcmVsdWRlLmNw
cDoKKysgICAgICAgIChzaDo6UHJvZ3JhbVByZWx1ZGU6OlByb2dyYW1QcmVsdWRlKToKKysgICAg
ICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0L1JlZHVj
ZUludGVyZmFjZUJsb2Nrcy5jcHA6CisrICAgICAgICAoc2g6OlJlZHVjZXI6OlJlZHVjZXIpOgor
KyAgICAgICAgKHNoOjpSZWR1Y2VJbnRlcmZhY2VCbG9ja3MpOgorKyAgICAgICAgKiBzcmMvY29t
cGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QvUmVkdWNlSW50ZXJmYWNlQmxv
Y2tzLmg6CisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRh
bERpcmVjdC9TZXBhcmF0ZUNvbXBvdW5kU3RydWN0RGVjbGFyYXRpb25zLmNwcDoKKysgICAgICAg
ICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2xvYWRfZnVuY3Rpb25zX3RhYmxlX2F1dG9nZW4uY3Bw
OgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvQ29udGV4dE10bC5tbToK
KysgICAgICAgIChyeDo6Q29udGV4dE10bDo6ZHJhd0VsZW1lbnRzSW1wbCk6CisrICAgICAgICAq
IHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9JT1N1cmZhY2VTdXJmYWNlTXRsLmg6CisrICAg
ICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9JT1N1cmZhY2VTdXJmYWNlTXRsLm1t
OgorKyAgICAgICAgKHJ4OjpJT1N1cmZhY2VTdXJmYWNlTXRsOjpJT1N1cmZhY2VTdXJmYWNlTXRs
KToKKysgICAgICAgIChyeDo6SU9TdXJmYWNlU3VyZmFjZU10bDo6Y3JlYXRlQmFja2luZ1RleHR1
cmUpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvUmVuZGVyQnVmZmVy
TXRsLm1tOgorKyAgICAgICAgKHJ4OjpSZW5kZXJidWZmZXJNdGw6OnNldFN0b3JhZ2VJbXBsKToK
KysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL1ZlcnRleEFycmF5TXRsLmg6
CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9WZXJ0ZXhBcnJheU10bC5t
bToKKysgICAgICAgIChyeDo6VmVydGV4QXJyYXlNdGw6OmdldEluZGV4QnVmZmVyKToKKysgICAg
ICAgIChyeDo6VmVydGV4QXJyYXlNdGw6OmNvbnZlcnRJbmRleEJ1ZmZlcik6CisrICAgICAgICAo
cng6OlZlcnRleEFycmF5TXRsOjpzdHJlYW1JbmRleEJ1ZmZlckZyb21DbGllbnQpOgorKyAgICAg
ICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX3V0aWxzLm1tOgorKyAgICAgICAg
KHJ4OjptdGw6OkluaXRpYWxpemVEZXB0aFN0ZW5jaWxUZXh0dXJlQ29udGVudHNHUFUpOgorKyAg
ICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvc2hhZGVycy9ibGl0Lm1ldGFsOgor
KyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvc2hhZGVycy9tdGxfZGVmYXVs
dF9zaGFkZXJzX3NyY19hdXRvZ2VuLmluYzoKKysKKysyMDIxLTAyLTE5ICBDaHJpcyBEdW1leiAg
PGNkdW1lekBhcHBsZS5jb20+CisrCisrICAgICAgICBVbnJldmlld2VkLCByZXZlcnRpbmcgcjI3
MzE4OC4KKysKKysgICAgICAgIEJyb2tlIHRoZSBidWlsZDogSXMgbWlzc2luZyBhIGNwcCBmaWxl
CisrCisrICAgICAgICBSZXZlcnRlZCBjaGFuZ2VzZXQ6CisrCisrICAgICAgICAiRml4IGEgbnVt
YmVyIG9mIGZ1bmN0aW9uYWwgcmVncmVzc2lvbnMgY2F1c2VkIGJ5IGVuYWJsaW5nIHRoZQorKyAg
ICAgICAgTWV0YWwgQU5HTEUgYmFja2VuZCBieSBkZWZhdWx0LiIKKysgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjA4OTUKKysgICAgICAgIGh0dHBzOi8v
Y29tbWl0cy53ZWJraXQub3JnL3IyNzMxODgKKysKKysyMDIxLTAyLTE5ICBLeWxlIFBpZGRpbmd0
b24gIDxrcGlkZGluZ3RvbkBhcHBsZS5jb20+CisrCisrICAgICAgICBGaXggYSBudW1iZXIgb2Yg
ZnVuY3Rpb25hbCByZWdyZXNzaW9ucyBjYXVzZWQgYnkgZW5hYmxpbmcgdGhlIE1ldGFsIEFOR0xF
IGJhY2tlbmQgYnkgZGVmYXVsdC4KKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0yMjA4OTUKKysgICAgICAgIDxyZGFyOi8vcHJvYmxlbS83MzUzOTUzNz4K
KysKKysgICAgICAgIFJldmlld2VkIGJ5IEtlbm5ldGggUnVzc2VsbC4KKysKKysgICAgICAgIEZp
eGVkIHdlYmdsLzEuMC4zL2NvbmZvcm1hbmNlL2NvbnRleHQvY29udGV4dC1oaWRkZW4tYWxwaGEu
aHRtbAorKworKyAgICAgICAgTVRMIFRyYW5zbGF0b3IgZGlyZWN0IGZpeGVzIGZvciB3ZWJnbC8x
LjAuMy9jb25mb3JtYW5jZS9nbHNsL2NvbnN0cnVjdG9ycy9nbHNsLWNvbnN0cnVjdC0qdmVjMiB0
ZXN0cywgUGx1cyBmaXggZm9yIEdMX1ZlcnRleEluZGV4CisrCisrICAgICAgICBGaXggRW1pdE1l
dGFsIGNyYXNoIGZvciBtaXNzaW5nIGZ1bmN0aW9uIHRleHR1cmVSZWN0LgorKworKyAgICAgICAg
QWRkaXRpb25hbCBmaXhlcyBmb3IgNzM2NzU5OTAsIHNoYWRlcnMtd2l0aC1pbnZhcmlhbmNlLmh0
bWwsIHNoYWRlcnMtd2l0aC11bmlmb3JtLXN0cnVjdHMuaHRtbCwgc3RydWN0LXNwZWNpZmllcnMt
aW4tdW5pZm9ybXMuaHRtbCwgZnJhbWVidWZmZXItb2JqZWN0LWF0dGFjaG1lbnQuaHRtbAorKwor
KyAgICAgICAgRml4ZWQgY2xhbXBpbmcgb2YgYXJyYXkgZWxlbWVudHMuCisrCisrICAgICAgICAq
IEFOR0xFLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisrICAgICAgICAqIHNyYy9jb21waWxl
ci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC5jcHA6CisrICAgICAgICAoc2g6OlRy
YW5zbGF0b3JNZXRhbERpcmVjdDo6dHJhbnNsYXRlSW1wbCk6CisrICAgICAgICAqIHNyYy9jb21w
aWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC9FbWl0TWV0YWwuY3BwOgorKyAg
ICAgICAgKEdlbk1ldGFsVHJhdmVyc2VyOjplbWl0UG9zdFF1YWxpZmllcik6CisrICAgICAgICAo
R2VuTWV0YWxUcmF2ZXJzZXI6OnZpc2l0QmluYXJ5KToKKysgICAgICAgIChHZW5NZXRhbFRyYXZl
cnNlcjo6QnVpbGRGdW5jVG9OYW1lKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0
b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0L0ZpeFR5cGVDb25zdHJ1Y3RvcnMuY3BwOiBBZGRlZC4K
KysgICAgICAgIChzaDo6Rml4VHlwZVRyYXZlcnNlcjo6Rml4VHlwZVRyYXZlcnNlcik6CisrICAg
ICAgICAoc2g6OkZpeFR5cGVDb25zdHJ1Y3RvcnMpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIv
dHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QvRml4VHlwZUNvbnN0cnVjdG9ycy5oOiBB
ZGRlZC4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFs
RGlyZWN0L05hbWVFbWJlZGRlZFVuaWZvcm1TdHJ1Y3RzTWV0YWwuY3BwOiBBZGRlZC4KKysgICAg
ICAgIChzaDo6TmFtZUVtYmVkZGVkU3RydWN0VW5pZm9ybXNNZXRhbCk6CisrICAgICAgICAqIHNy
Yy9jb21waWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC9OYW1lRW1iZWRkZWRV
bmlmb3JtU3RydWN0c01ldGFsLmg6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJh
bnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QvUGlwZWxpbmUuY3BwOgorKyAgICAgICAgKFNh
dHVyYXRlVmVjdG9yT2YpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFu
c2xhdG9yTWV0YWxEaXJlY3QvUHJvZ3JhbVByZWx1ZGUuY3BwOgorKyAgICAgICAgKHNoOjpQcm9n
cmFtUHJlbHVkZTo6UHJvZ3JhbVByZWx1ZGUpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJh
bnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QvUmVkdWNlSW50ZXJmYWNlQmxvY2tzLmNwcDoK
KysgICAgICAgIChzaDo6UmVkdWNlcjo6UmVkdWNlcik6CisrICAgICAgICAoc2g6OlJlZHVjZUlu
dGVyZmFjZUJsb2Nrcyk6CisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL1RyYW5z
bGF0b3JNZXRhbERpcmVjdC9SZWR1Y2VJbnRlcmZhY2VCbG9ja3MuaDoKKysgICAgICAgICogc3Jj
L2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0L1NlcGFyYXRlQ29tcG91
bmRTdHJ1Y3REZWNsYXJhdGlvbnMuY3BwOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVy
ZXIvbG9hZF9mdW5jdGlvbnNfdGFibGVfYXV0b2dlbi5jcHA6CisrICAgICAgICAqIHNyYy9saWJB
TkdMRS9yZW5kZXJlci9tZXRhbC9Db250ZXh0TXRsLm1tOgorKyAgICAgICAgKHJ4OjpDb250ZXh0
TXRsOjpkcmF3RWxlbWVudHNJbXBsKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVy
L21ldGFsL0lPU3VyZmFjZVN1cmZhY2VNdGwuaDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3Jl
bmRlcmVyL21ldGFsL0lPU3VyZmFjZVN1cmZhY2VNdGwubW06CisrICAgICAgICAocng6OklPU3Vy
ZmFjZVN1cmZhY2VNdGw6OklPU3VyZmFjZVN1cmZhY2VNdGwpOgorKyAgICAgICAgKHJ4OjpJT1N1
cmZhY2VTdXJmYWNlTXRsOjpjcmVhdGVCYWNraW5nVGV4dHVyZSk6CisrICAgICAgICAqIHNyYy9s
aWJBTkdMRS9yZW5kZXJlci9tZXRhbC9SZW5kZXJCdWZmZXJNdGwubW06CisrICAgICAgICAocng6
OlJlbmRlcmJ1ZmZlck10bDo6c2V0U3RvcmFnZUltcGwpOgorKyAgICAgICAgKiBzcmMvbGliQU5H
TEUvcmVuZGVyZXIvbWV0YWwvVmVydGV4QXJyYXlNdGwuaDoKKysgICAgICAgICogc3JjL2xpYkFO
R0xFL3JlbmRlcmVyL21ldGFsL1ZlcnRleEFycmF5TXRsLm1tOgorKyAgICAgICAgKHJ4OjpWZXJ0
ZXhBcnJheU10bDo6Z2V0SW5kZXhCdWZmZXIpOgorKyAgICAgICAgKHJ4OjpWZXJ0ZXhBcnJheU10
bDo6Y29udmVydEluZGV4QnVmZmVyKToKKysgICAgICAgIChyeDo6VmVydGV4QXJyYXlNdGw6OnN0
cmVhbUluZGV4QnVmZmVyRnJvbUNsaWVudCk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5k
ZXJlci9tZXRhbC9tdGxfdXRpbHMubW06CisrICAgICAgICAocng6Om10bDo6SW5pdGlhbGl6ZURl
cHRoU3RlbmNpbFRleHR1cmVDb250ZW50c0dQVSk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9y
ZW5kZXJlci9tZXRhbC9zaGFkZXJzL2JsaXQubWV0YWw6CisrICAgICAgICAqIHNyYy9saWJBTkdM
RS9yZW5kZXJlci9tZXRhbC9zaGFkZXJzL210bF9kZWZhdWx0X3NoYWRlcnNfc3JjX2F1dG9nZW4u
aW5jOgorKworKzIwMjEtMDItMTkgIEt5bGUgUGlkZGluZ3RvbiAgPGtwaWRkaW5ndG9uQGFwcGxl
LmNvbT4KKysKKysgICAgICAgIENyYXNoIGluIHJlYWRQaXhlbHMgd2l0aCBBTkdMRSBNZXRhbCBi
YWNrZW5kCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MjIwODc3CisrCisrICAgICAgICBSZW5kZXJidWZmZXJNdGw6OmluaXRpYWxpemVDb250ZW50cyBp
cyBzb21ldGltZXMgYm91bmQgd2l0aCBhCisrICAgICAgICBkZWZhdWx0IGxldmVsIGluZGV4LCB3
aGljaCBkb2Vzbid0IHNwZWNpZnkgdHlwZSwgbGF5ZXIgY291bnQsIG9yCisrICAgICAgICBvdGhl
ciBpbmZvcm1hdGlvbi4gV2hlbiB0aGlzIHBhdGggaXMgY2FsbGVkIHdpdGggYW4gaW52YWxpZCBp
bmRleCwKKysgICAgICAgIGFzc3VtZSBhIDJkIGluZGV4LgorKworKyAgICAgICAgUmV2aWV3ZWQg
YnkgRGVhbiBKYWNrc29uLgorKworKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0
YWwvUmVuZGVyQnVmZmVyTXRsLm1tOgorKyAgICAgICAgKHJ4OjpSZW5kZXJidWZmZXJNdGw6Omlu
aXRpYWxpemVDb250ZW50cyk6CisrCisrMjAyMS0wMi0xNyAgRGVhbiBKYWNrc29uICA8ZGlub0Bh
cHBsZS5jb20+CisrCisrICAgICAgICBNZXRhbC1BbmdsZSBvbiBJT1MgZmFpbHMgaW4gVmFsaWRh
dGVDcmVhdGVQYnVmZmVyRnJvbUNsaWVudEJ1ZmZlcgorKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMjA2OQorKworKyAgICAgICAgUmV2aWV3ZWQgYnkg
U2ltb24gRnJhc2VyLgorKworKyAgICAgICAgRHVlIHRvIHRoZSBkaWZmZXJlbmNlcyBiZXR3ZWVu
IE9wZW5HTCBhbmQgT3BlbkdMRVMsIFdlYkNvcmUKKysgICAgICAgIGJpbmRzIGl0cyBJT1N1cmZh
Y2VzIHRvIGEgZGlmZmVyZW50IHRleHR1cmUgdGFyZ2V0IG9uIG1hY09TIGFuZCBpT1MuCisrICAg
ICAgICBUaGlzIGlzbid0IHJlYWxseSBuZWVkZWQgd2l0aCB0aGUgTWV0YWwtQU5HTEUgYmFja2Vu
ZCwgYnV0IHdoaWxlIHdlJ3JlCisrICAgICAgICBzdGlsbCBzdXBwb3J0aW5nIHRoZSBPcGVuR0wg
YmFja2VuZCBpdCBpcyBlYXNpZXIgdG8gaGF2ZSB0aGUgTWV0YWwgYmFja2VuZAorKyAgICAgICAg
dXNlIGJvdGggdGFyZ2V0cy4KKysKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21l
dGFsL0Rpc3BsYXlNdGwubW06CisrICAgICAgICAocng6OkRpc3BsYXlNdGw6OmdlbmVyYXRlQ29u
Zmlncyk6IExvb2sgZm9yIEVHTF9URVhUVVJFXzJEIG9uIGlPUy4gTm90ZQorKyAgICAgICAgd2Ug
ZG9uJ3QgaGF2ZSB0byB3b3JyeSBhYm91dCB0aGUgd2VpcmQgImlPUyBBcHAgb24gbWFjT1MiIHNp
dHVhdGlvbiBzaW5jZQorKyAgICAgICAgdGhhdCBvbmx5IGFwcGxpZXMgdG8gdXNpbmcgT3BlbkdM
RVMgb24gbWFjT1MuIFlheSBmb3IgTWV0YWwhCisrCisrMjAyMS0wMS0xMyAgS2VubmV0aCBSdXNz
ZWxsICA8a2JyQGNocm9taXVtLm9yZz4KKysKKysgICAgICAgIFtXZWJHTDJdIGZib3N0YXRlcXVl
cnksIG5lZ2F0aXZlYnVmZmVyYXBpLCBuZWdhdGl2ZXZlcnRleGFycmF5YXBpLCBzaGFkZXJzdGF0
ZXF1ZXJ5IGNvbmZvcm1hbmNlIGZhaWx1cmVzCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIwMzcyCisrCisrICAgICAgICBSZXZpZXdlZCBieSBEYXJp
biBBZGxlci4KKysKKysgICAgICAgIEFkZCBhIG5lZWRlZCBlYXJseS1vdXQgaW4gZHJhd0FycmF5
c0luc3RhbmNlZCB2YWxpZGF0aW9uIHdoZW4gdGhlCisrICAgICAgICBwcmltaXRpdmUgY291bnQg
aXMgemVyby4gVGhpcyBwYXRjaCB3aWxsIGJlIHVwc3RyZWFtZWQgdG8gQU5HTEUKKysgICAgICAg
IGFmdGVyd2FyZC4KKysKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3ZhbGlkYXRpb25FUy5oOgor
KyAgICAgICAgKGdsOjpWYWxpZGF0ZURyYXdBcnJheXNBdHRyaWJzKToKKysgICAgICAgIChnbDo6
VmFsaWRhdGVEcmF3QXJyYXlzQ29tbW9uKToKKysKKysyMDIxLTAxLTA4ICBLeWxlIFBpZGRpbmd0
b24gIDxrcGlkZGluZ3RvbkBhcHBsZS5jb20+CisrCisrICAgICAgICBGYWlsdXJlcyBvZiBhdHRy
aWJ1dGUgbG9jYXRpb24gY29uZm9ybWFuY2UgdGVzdHMgd2l0aCBNZXRhbCBiYWNrZW5kCisrICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIwMTM3CisrCisr
ICAgICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisrCisrICAgICAgICAqIHNyYy9jb21w
aWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC9FbWl0TWV0YWwuY3BwOgorKyAg
ICAgICAgKEdlbk1ldGFsVHJhdmVyc2VyOjplbWl0QXR0cmlidXRlRGVjbGFyYXRpb24pOgorKyAg
ICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX2dsc2xhbmdfbXRsX3V0aWxz
Lm1tOgorKyAgICAgICAgKHJ4OjptdGw6OnVwZGF0ZVNoYWRlckF0dHJpYnV0ZXMpOgorKyAgICAg
ICAgKHJ4OjptdGw6Okdsc2xhbmdHZXRNU0wpOgorKworKzIwMjEtMDEtMDQgIEZ1amlpIEhpcm9u
b3JpICA8SGlyb25vcmkuRnVqaWlAc29ueS5jb20+CisrCisrICAgICAgICBbV2luQ2Fpcm9dW0NN
YWtlXVtNU0J1aWxkXVtBTkdMRV0gZW50cnlfcG9pbnRzXyouaCB3YXMgZ2VuZXJhdGVkIHR3aWNl
IGJvdGggaW4gTGliR0xFU3YyRW50cnlQb2ludHNIZWFkZXJzIGFuZCBHTEVTdjIgcHJvamVjdHMK
KysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjAyNTEK
KysKKysgICAgICAgIFJldmlld2VkIGJ5IEtlbm5ldGggUnVzc2VsbC4KKysKKysgICAgICAgIFdp
bkNhaXJvIHBvcnQgaXMgc3VwcG9ydGluZyBib3RoIENNYWtlIFZpc3VhbCBTdHVkaW8gZ2VuZXJh
dG9yIGFuZAorKyAgICAgICAgTmluamEgZ2VuZXJhdG9yLiBIb3dldmVyLCBDTWFrZSBWaXN1YWwg
U3R1ZGlvIGJ1aWxkcyB3YXMgZmFpbGluZworKyAgICAgICAgYXMgdGhlIGZvbGxvd2luZyBlcnJv
ci4KKysKKysgICAgICAgID4gQU5HTEVcSGVhZGVyc1xBTkdMRS9lbnRyeV9wb2ludHNfZWdsLmgo
MTMsMTApOiBmYXRhbCBlcnJvciBDMTA4MzogQ2Fubm90IG9wZW4gaW5jbHVkZSBmaWxlOiAnZXhw
b3J0LmgnOiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5IChjb21waWxpbmcgc291cmNlIGZpbGUg
Li4uXHRleG1hcFxBTkdMRUNvbnRleHQuY3BwKQorKworKyAgICAgICAgZW50cnlfcG9pbnRzX2Vn
bC5oIHdhcyBnZW5lcmF0ZWQgdHdpY2UgYm90aCBpbgorKyAgICAgICAgTGliR0xFU3YyRW50cnlQ
b2ludHNIZWFkZXJzIGFuZCBHTEVTdjIgcHJvamVjdHMuIEhvd2V2ZXIsIHRoZQorKyAgICAgICAg
cG9zdC1wcm9jZXNzIHNjcmlwdCBhZGp1c3QtYW5nbGUtaW5jbHVkZS1wYXRocy5weSB3YXMgaW52
b2tlZCBvbmx5CisrICAgICAgICBpbiBMaWJHTEVTdjJFbnRyeVBvaW50c0hlYWRlcnMgcHJvamVj
dC4KKysKKysgICAgICAgIEdMRVN2MiB0YXJnZXQgbmVlZHMgdG8gaGF2ZSBhIGRpcmVjdCBvciBp
bmRpcmVjdCBkZXBlbmRlbmN5IHRvCisrICAgICAgICBMaWJHTEVTdjJFbnRyeVBvaW50c0hlYWRl
cnMgdGFyZ2V0IGZvciBDTWFrZSBWaXN1YWwgU3R1ZGlvCisrICAgICAgICBnZW5lcmF0b3IgdG8g
ZWxpbWluYXRlIGR1cGxpY2F0ZWQgY3VzdG9tIGNvbW1hbmRzLgorKworKyAgICAgICAgKiBDTWFr
ZUxpc3RzLnR4dDogQWRkZWQgYWRkX2RlcGVuZGVuY2llcyhHTEVTdjIgTGliR0xFU3YyRW50cnlQ
b2ludHNIZWFkZXJzKSBvbmx5IGlmIFdJTjMyLgorKworKzIwMjEtMDEtMDIgIEphbWVzIERhcnBp
bmlhbiAgPGpkYXJwaW5pYW5AY2hyb21pdW0ub3JnPgorKworKyAgICAgICAgRW5hYmxlIHNvbWUg
QU5HTEUgd29ya2Fyb3VuZHMgb24gaU9TCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MjIwMjAzCisrCisrICAgICAgICBSZXZpZXdlZCBieSBLZW5uZXRo
IFJ1c3NlbGwuCisrCisrICAgICAgICBSdW5uaW5nIEFOR0xFJ3MgdW5pdCB0ZXN0cyBvbiBpT1Mg
dXBzdHJlYW0gZXhwb3NlZCB0aGUgbmVlZCB0byBlbmFibGUgYSBjb3VwbGUgb2YgZXhpc3RpbmcK
KysgICAgICAgIHdvcmthcm91bmQgZmxhZ3MuIGh0dHBzOi8vY3JyZXYuY29tL2MvMjYwMTEwNiBh
bmQgaHR0cHM6Ly9jcnJldi5jb20vYy8yNjA2NjU3IGFyZSB0aGUKKysgICAgICAgIHVwc3RyZWFt
IGNoYW5nZXMgY29ycmVzcG9uZGluZyB0byB0aGVzZSBmaXhlcy4KKysKKysgICAgICAgICogc3Jj
L2xpYkFOR0xFL3JlbmRlcmVyL2dsL0ZyYW1lYnVmZmVyR0wuY3BwOgorKyAgICAgICAgKHJ4OjpG
cmFtZWJ1ZmZlckdMOjpibGl0KToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2ds
L3JlbmRlcmVyZ2xfdXRpbHMuY3BwOgorKyAgICAgICAgKHJ4OjpuYXRpdmVnbF9nbDo6SW5pdGlh
bGl6ZUZlYXR1cmVzKToKKysKKysyMDIwLTEyLTIzICBLeWxlIFBpZGRpbmd0b24gIDxrcGlkZGlu
Z3RvbkBhcHBsZS5jb20+CisrCisrICAgICAgICBbQU5HTEVdIE1ldGFsIGJhY2tlbmQgcmVuZGVy
cyB0ZGwuanMgc2FtcGxlcyBhcyByZWQKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMjAxMjkKKysKKysgICAgICAgIFJldmlld2VkIGJ5IEtlbm5ldGgg
UnVzc2VsbC4KKysKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL0ZyYW1l
QnVmZmVyTXRsLm1tOgorKyAgICAgICAgKHJ4OjpGcmFtZWJ1ZmZlck10bDo6YmxpdFdpdGhEcmF3
KToKKysKKysyMDIwLTEyLTIyICBNaWNoYWVsIENhdGFuemFybyAgPG1jYXRhbnphcm9AZ25vbWUu
b3JnPgorKworKyAgICAgICAgd2FybmluZzogZW51bWVyYXRlZCBhbmQgbm9uLWVudW1lcmF0ZWQg
dHlwZSBpbiBjb25kaXRpb25hbCBleHByZXNzaW9uIGluIENvbXBpbGVyLmNwcAorKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMDA2MgorKworKyAgICAg
ICAgUmV2aWV3ZWQgYnkgRGVhbiBKYWNrc29uLgorKworKyAgICAgICAgQnVpbGRpbmcgQU5HTEUg
d2l0aCAtV2V4dHJhIGlzIHRvbyBhZ2dyZXNzaXZlLiAtV2V4dHJhIGlzIGdyZWF0IGZvciBjb2Rl
IHRoYXQgd2UgY29udHJvbCwKKysgICAgICAgIHdoZXJlIHRoZSBidXJkZW4gb2Ygc3F1YXNoaW5n
IHdhcm5pbmdzIGlzIHJlbGF0aXZlbHkgbG93LiBCdXQgd2l0aCBBTkdMRSwgd2UgaGF2ZSB0byBl
aXRoZXIKKysgICAgICAgIGxhbmQgZml4ZXMgdXBzdHJlYW0sIG9yIGNhcnJ5IHRoZW0gZG93bnN0
cmVhbSBmb3JldmVyLiBJdCBkb2Vzbid0IG1ha2Ugc2Vuc2UgdG8gYm90aGVyIHdpdGgKKysgICAg
ICAgIHRoaXMgZm9yIG1pbm9yIGJ1aWxkIHdhcm5pbmcgZml4ZXMgd2hlbiB1cHN0cmVhbSBpcyBj
bGVhcmx5IG5vdCB1c2luZyB0aGUgc2FtZSB3YXJuaW5nIGZsYWdzCisrICAgICAgICBhbmQvb3Ig
c2FtZSBjb21waWxlciB0aGF0IHdlIGRvLgorKworKyAgICAgICAgU2luY2Ugd2UgYWRkIC1XZXh0
cmEgaW4gb3VyIGdsb2JhbCBmbGFncywgd2UgaGF2ZSB0byBtYW51YWxseSBvdmVycmlkZSBpdCBo
ZXJlLiBXZSBjYW4gbm93CisrICAgICAgICBhbHNvIHN0b3AgZXhwbGljaXRseSBkaXNhYmxpbmcg
b3RoZXIgd2FybmluZ3MgdGhhdCBhcmUgaW1wbGllZCBieSAtV2V4dHJhLgorKworKyAgICAgICAg
RmluYWxseSwgbm90ZSB0aGF0IGNoYW5nZXMuZGlmZiBpcyBub3QgbW9kaWZpZWQgYmVjYXVzZSB0
aGlzIGlzLCBjb25mdXNpbmdseSwgYSBkb3duc3RyZWFtCisrICAgICAgICBXZWJLaXQgYnVpbGQg
ZmlsZS4KKysKKysgICAgICAgICogQ01ha2VMaXN0cy50eHQ6CisrCisrMjAyMC0xMi0yMiAgS2Vu
bmV0aCBSdXNzZWxsICA8a2JyQGNocm9taXVtLm9yZz4KKysKKysgICAgICAgIFtXZWJHTDJdIGRl
cXAvZnVuY3Rpb25hbC9nbGVzMy90ZXh0dXJlc3BlY2lmaWNhdGlvbiBSR0I0NDQ0IGFuZCBSR0I1
NjUgZmFpbHVyZXMgb24gTWFjIEFNRAorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIyMDA5MworKworKyAgICAgICAgUmV2aWV3ZWQgYnkgQWxleCBDaHJp
c3RlbnNlbi4KKysKKysgICAgICAgIFByb21vdGUgdGhlIFJHQkE0NDQ0IGFuZCBSR0I1NjUgdGV4
dHVyZSBmb3JtYXRzIHRvIFJHQltBXTggaW4KKysgICAgICAgIG9yZGVyIHRvIHdvcmsgYXJvdW5k
IE9wZW5HTCBkcml2ZXIgYnVncyBvbiBtYWNPUyB3aXRoIEFNRCBHUFVzLgorKworKyAgICAgICAg
KiBpbmNsdWRlL3BsYXRmb3JtL0ZlYXR1cmVzR0wuaDoKKysgICAgICAgICogc3JjL2xpYkFOR0xF
L3JlbmRlcmVyL2dsL2Zvcm1hdHV0aWxzZ2wuY3BwOgorKyAgICAgICAgKHJ4OjpuYXRpdmVnbDo6
R2V0TmF0aXZlSW50ZXJuYWxGb3JtYXQpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVy
ZXIvZ2wvcmVuZGVyZXJnbF91dGlscy5jcHA6CisrICAgICAgICAocng6Om5hdGl2ZWdsX2dsOjpJ
bml0aWFsaXplRmVhdHVyZXMpOgorKworKzIwMjAtMTItMTYgIEZ1amlpIEhpcm9ub3JpICA8SGly
b25vcmkuRnVqaWlAc29ueS5jb20+CisrCisrICAgICAgICBbV2luQ2Fpcm9dIEVuYWJsZSBVU0Vf
QU5HTEUKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MTk0MjEKKysKKysgICAgICAgIFJldmlld2VkIGJ5IERvbiBPbG1zdGVhZC4KKysKKysgICAgICAg
ICogQ01ha2VMaXN0cy50eHQ6IEFkZGVkIGVudHJ5X3BvaW50c19lZ2xfZXh0LmggdG8gbGliZ2xl
c3YyX2VudHJ5X3BvaW50c19oZWFkZXJzLgorKworKzIwMjAtMTItMTQgIEFsZXggQ2hyaXN0ZW5z
ZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KKysKKysgICAgICAgIEZpeCBidWlsZC4KKysK
KysgICAgICAgICogc3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mb19hcHBsZS5tbToKKysgICAg
ICAgIChhbmdsZTo6R2V0U3lzdGVtSW5mbyk6CisrICAgICAgICAjI2lmIHNob3VsZCBiZSAjaWYK
KysKKysyMDIwLTEyLTE0ICBEZWFuIEphY2tzb24gIDxkaW5vQGFwcGxlLmNvbT4KKysKKysgICAg
ICAgIEJ1aWxkIGZpeCBmb3IgTWFjIENhdGFseXN0LiBSZW1vdmUgY29kZSB0aGF0IHdhcyBhY2Np
ZGVudGFsbHkKKysgICAgICAgIGluY2x1ZGVkIGluIHRoZSBwcmV2aW91cyBjb21taXQuCisrCisr
ICAgICAgICAqIHNyYy9ncHVfaW5mb191dGlsL1N5c3RlbUluZm9fYXBwbGUubW06CisrICAgICAg
ICAoYW5nbGU6OkdldFN5c3RlbUluZm8pOgorKworKzIwMjAtMTItMTIgIEt5bGUgUGlkZGluZ3Rv
biAgPGtwaWRkaW5ndG9uQGFwcGxlLmNvbT4KKysKKysgICAgICAgIEltcHJvdmVkIE1ldGFsIGJh
Y2tlbmQgZm9yIEFOR0xFLCB3aXRoIGRpcmVjdCBHTFNMIHRvIE1ldGFsIGNvbXBpbGVyIHRyYW5z
bGF0aW9uCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MjE5NzU5CisrICAgICAgICA8cmRhcjovL3Byb2JsZW0vNzIyMDAyMjI+CisrCisrICAgICAgICBS
ZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisrCisrICAgICAgICBSZXZpZXdlcidzIG5vdGU6IFdo
aWxlIHRoaXMgcGF0Y2ggaXMgbGFuZGluZyBpbiBXZWJLaXQgbm93LCBpdCB3aWxsCisrICAgICAg
ICBiZSBzdWJtaXR0ZWQgdG8gdGhlIG1haW4gQU5HTEUgcHJvamVjdCBmb3Igb2ZmaWNpYWwgcmV2
aWV3LCB0aGVuIHJlLW1lcmdlZAorKyAgICAgICAgYmFjayBpbnRvIFdlYktpdC4gVGhlIGZlYXR1
cmUgcHJvdmlkZWQgaGVyZSBpcyBub3QgZW5hYmxlZCBieSBkZWZhdWx0LgorKworKyAgICAgICAg
UHJvdmlkZSBhIFdlYkdMMSBjb21wbGlhbnQgdHJhbnNwaWxlciBmb3IgR0xTTCBjb250ZW50LiBX
aXRoIHRoaXMKKysgICAgICAgIGNoYW5nZSwgd2UgY2FuIGxldmVyYWdlIHRoZSBhbHJlYWR5IHBy
ZXNlbnQgb3BlbiBzb3VyY2Ugd29yayBpbiB0aGUKKysgICAgICAgIEFOR0xFIHByb2plY3QgdG8g
ZW5hYmxlIHdlYmdsIHRvIHJ1biBvbiB0b3Agb2YgTWV0YWwuIEluIGFkZGl0aW9uLAorKyAgICAg
ICAgdGhpcyBwYXRjaCBjb250YWlucyBhIG51bWJlciBvZiBmaXhlcyB0byB0aGUgZXhpc3Rpbmcg
QU5HTEUgTWV0YWwgYmFja2VuZC4KKysKKysgICAgICAgIFRlc3Q6IFRlc3RzIHdlcmUgdmFsaWRh
dGVkIHdpdGggdGhlIGRFUVAgdGVzdCBzdWl0ZSB3aXRoIEFOR0xFLCBpbgorKyAgICAgICAgYWRk
aXRpb24gdG8gcnVubmluZyBzdGFuZGFyZCBsYXlvdXQgdGVzdHMuCisrCisrMjAyMC0xMi0wNCAg
QWRhbSBSb2JlbiAgPGFyb2JlbkBhcHBsZS5jb20+CisrCisrICAgICAgICBNb3JlIEZBTExCQUNL
X1BMQVRGT1JNIGFkb3B0aW9uCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MjE5NTQ1CisrCisrICAgICAgICBSZXZpZXdlZCBieSBUaW0gSG9ydG9uLgor
KworKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9TREtWYXJpYW50LnhjY29uZmlnOgorKyAgICAg
ICAgV0tfRU1QVFlfJChUSElTX0lTX05PVF9FTVBUWSkgZXZhbHVhdGVzIHRvIHRoZSBlbXB0eSBz
dHJpbmcsIG5vdCB0bworKyAgICAgICAgTk8uCisrCisrMjAyMC0xMi0wNCAgUm9iIEJ1aXMgIDxy
YnVpc0BpZ2FsaWEuY29tPgorKworKyAgICAgICAgV2ViR0wyOiBOdWxsIHBvaW50ZXIgZGVyZWZl
cmVuY2UgaW4gc3RkOjpzdHJpbmcgaW1wbGVtZW50YXRpb24gaW4gZ2w6OlNoYWRlcjo6Z2V0VHJh
bnNmb3JtRmVlZGJhY2tWYXJ5aW5nTWFwcGVkTmFtZQorKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxODYwMgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkg
RGVhbiBKYWNrc29uLgorKworKyAgICAgICAgU2tpcCB2YXJ5aW5nIGlmIGZpZWxkIGlzIG5vdCBm
b3VuZCBzaW5jZSBpbiB0aGlzCisrICAgICAgICBjYXNlIHdlIGhhdmUgbm8gbWF0Y2ggZm9yIHRo
ZSB2YXJ5aW5nIHBhcmFtZXRlciBuYW1lLgorKworKyAgICAgICAgKiBzcmMvbGliQU5HTEUvU2hh
ZGVyLmNwcDoKKysgICAgICAgIChnbDo6U2hhZGVyOjpnZXRUcmFuc2Zvcm1GZWVkYmFja1Zhcnlp
bmdNYXBwZWROYW1lKToKKysKKysyMDIwLTEyLTAzICBBZGFtIFJvYmVuICA8YXJvYmVuQGFwcGxl
LmNvbT4KKysKKysgICAgICAgIEFkb3B0IEZBTExCQUNLX1BMQVRGT1JNCisrICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE5NTA0CisrCisrICAgICAgICBS
ZXZpZXdlZCBieSBUaW0gSG9ydG9uLgorKworKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9TREtW
YXJpYW50LnhjY29uZmlnOiBVc2UgRkFMTEJBQ0tfUExBVEZPUk0gaXQgaWYgaXQncworKyAgICAg
ICAgZGVmaW5lZCwgb3RoZXJ3aXNlIHVzZSBQTEFURk9STV9OQU1FIGFzIGJlZm9yZS4KKysKKysy
MDIwLTEyLTAyICBEZWFuIEphY2tzb24gIDxkaW5vQGFwcGxlLmNvbT4KKysKKysgICAgICAgIEJ1
aWxkIGZpeCBmb3IgTWFjIENhdGFseXN0LiBJbmNsdWRlIHRoZSBTeXN0ZW1JbmZvIGhlYWRlci4K
KysKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2FwcGxlL0Rpc3BsYXlBcHBs
ZV9hcGkuY3BwOgorKworKzIwMjAtMTItMDIgIFJvYiBCdWlzICA8cmJ1aXNAaWdhbGlhLmNvbT4K
KysKKysgICAgICAgIEZpeCBBTkdMRSBDTWFrZUxpc3RzLnR4dCB3YXJuaW5ncworKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxOTI2MAorKworKyAgICAg
ICAgUmV2aWV3ZWQgYnkgUGhpbGlwcGUgTm9ybWFuZC4KKysKKysgICAgICAgIEZpeCB3YXJuaW5n
IHdoZW4gYnVpbGRpbmcgb24gR1RLOgorKyAgICAgICAgTWFrZSBXYXJuaW5nIChkZXYpIGF0IFNv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL0NNYWtlTGlzdHMudHh0OjEwMzoKKysgICAgICAgIFN5bnRh
eCBXYXJuaW5nIGluIGNtYWtlIGNvZGUgYXQgY29sdW1uIDM3CisrCisrICAgICAgICBBcmd1bWVu
dCBub3Qgc2VwYXJhdGVkIGZyb20gcHJlY2VkaW5nIHRva2VuIGJ5IHdoaXRlc3BhY2UuCisrICAg
ICAgICBUaGlzIHdhcm5pbmcgaXMgZm9yIHByb2plY3QgZGV2ZWxvcGVycy4gIFVzZSAtV25vLWRl
diB0byBzdXBwcmVzcyBpdC4KKysKKysgICAgICAgICogQ01ha2VMaXN0cy50eHQ6CisrCisrMjAy
MC0xMi0wMiAgSmFtZXMgRGFycGluaWFuICA8amRhcnBpbmlhbkBjaHJvbWl1bS5vcmc+CisrCisr
ICAgICAgICBVcGRhdGUgQU5HTEUgMjAyMC0xMS0xMgorKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxODg3NworKworKyAgICAgICAgUmV2aWV3ZWQgYnkg
S2VubmV0aCBSdXNzZWxsLgorKworKyAgICAgICAgKiBFeGNlc3NpdmVseSBsYXJnZSBsaXN0IG9m
IHVwc3RyZWFtIGNoYW5nZXMgb21pdHRlZC4KKysKKysyMDIwLTExLTMwICBSeWFuIEhhZGRhZCAg
PHJ5YW5oYWRkYWRAYXBwbGUuY29tPgorKworKyAgICAgICAgVW5yZXZpZXdlZCwgcmV2ZXJ0aW5n
IHIyNzAxMjksIHIyNzAxOTQsIGFuZCByMjcwMjU4LgorKworKyAgICAgICAgcjI3MDEyOSBicm9r
ZSBtYWNDYXRhbHlzdCBidWlsZAorKworKyAgICAgICAgUmV2ZXJ0ZWQgY2hhbmdlc2V0czoKKysK
KysgICAgICAgICJVcGRhdGUgQU5HTEUgMjAyMC0xMS0xMiIKKysgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTg4NzcKKysgICAgICAgIGh0dHBzOi8vdHJh
Yy53ZWJraXQub3JnL2NoYW5nZXNldC8yNzAxMjkKKysKKysgICAgICAgICJGaXggQU5HTEUgQ01h
a2VMaXN0cy50eHQgd2FybmluZ3MiCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MjE5MjYwCisrICAgICAgICBodHRwczovL3RyYWMud2Via2l0Lm9yZy9j
aGFuZ2VzZXQvMjcwMTk0CisrCisrICAgICAgICAiQXR0ZW1wdGVkIGJ1aWxkIGZpeCBmb3IgTWFj
IENhdGFseXN0LiBJbmNsdWRlIHRoZSBTeXN0ZW1JbmZvCisrICAgICAgICBoZWFkZXIuIgorKyAg
ICAgICAgaHR0cHM6Ly90cmFjLndlYmtpdC5vcmcvY2hhbmdlc2V0LzI3MDI1OAorKworKzIwMjAt
MTEtMzAgIERlYW4gSmFja3NvbiAgPGRpbm9AYXBwbGUuY29tPgorKworKyAgICAgICAgQXR0ZW1w
dGVkIGJ1aWxkIGZpeCBmb3IgTWFjIENhdGFseXN0LiBJbmNsdWRlIHRoZSBTeXN0ZW1JbmZvIGhl
YWRlci4KKysKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2FwcGxlL0Rpc3Bs
YXlBcHBsZV9hcGkuY3BwOgorKworKzIwMjAtMTEtMjcgIEZ1amlpIEhpcm9ub3JpICA8SGlyb25v
cmkuRnVqaWlAc29ueS5jb20+CisrCisrICAgICAgICBbQU5HTEVdIENvbnZlcnQgYWRqdXN0LWFu
Z2xlLWluY2x1ZGUtcGF0aHMuc2ggdG8gYSBQeXRob24gc2NyaXB0IGZvciBXaW5kb3dzIHdpdGhv
dXQgQ3lnd2luCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MjE5Mjk5CisrCisrICAgICAgICBSZXZpZXdlZCBieSBLZW5uZXRoIFJ1c3NlbGwuCisrCisr
ICAgICAgICBXaW5DYWlybyBwb3J0IGNhbid0IHVzZSBzaGVsbCBzY3JpcHRzIGJlY2F1c2UgaXQg
aXNuJ3QgdXNpbmcKKysgICAgICAgIEN5Z3dpbi4KKysKKysgICAgICAgICogQU5HTEUueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvajoKKysgICAgICAgICogQ01ha2VMaXN0cy50eHQ6CisrICAgICAg
ICAqIGFkanVzdC1hbmdsZS1pbmNsdWRlLXBhdGhzLnB5OiBBZGRlZC4KKysgICAgICAgICogYWRq
dXN0LWFuZ2xlLWluY2x1ZGUtcGF0aHMuc2g6IFJlbW92ZWQuCisrCisrMjAyMC0xMS0yNyAgUm9i
IEJ1aXMgIDxyYnVpc0BpZ2FsaWEuY29tPgorKworKyAgICAgICAgRml4IEFOR0xFIENNYWtlTGlz
dHMudHh0IHdhcm5pbmdzCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MjE5MjYwCisrCisrICAgICAgICBSZXZpZXdlZCBieSBQaGlsaXBwZSBOb3JtYW5k
LgorKworKyAgICAgICAgRml4IHdhcm5pbmcgd2hlbiBidWlsZGluZyBvbiBHVEs6CisrICAgICAg
ICBNYWtlIFdhcm5pbmcgKGRldikgYXQgU291cmNlL1RoaXJkUGFydHkvQU5HTEUvQ01ha2VMaXN0
cy50eHQ6MTAzOgorKyAgICAgICAgU3ludGF4IFdhcm5pbmcgaW4gY21ha2UgY29kZSBhdCBjb2x1
bW4gMzcKKysKKysgICAgICAgIEFyZ3VtZW50IG5vdCBzZXBhcmF0ZWQgZnJvbSBwcmVjZWRpbmcg
dG9rZW4gYnkgd2hpdGVzcGFjZS4KKysgICAgICAgIFRoaXMgd2FybmluZyBpcyBmb3IgcHJvamVj
dCBkZXZlbG9wZXJzLiAgVXNlIC1Xbm8tZGV2IHRvIHN1cHByZXNzIGl0LgorKworKyAgICAgICAg
KiBDTWFrZUxpc3RzLnR4dDoKKysKKysyMDIwLTExLTIwICBKYW1lcyBEYXJwaW5pYW4gIDxqZGFy
cGluaWFuQGNocm9taXVtLm9yZz4KKysKKysgICAgICAgIFVwZGF0ZSBBTkdMRSAyMDIwLTExLTEy
CisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE4ODc3
CisrCisrICAgICAgICBSZXZpZXdlZCBieSBLZW5uZXRoIFJ1c3NlbGwuCisrCisrICAgICAgICAq
IEV4Y2Vzc2l2ZWx5IGxhcmdlIGxpc3Qgb2YgdXBzdHJlYW0gY2hhbmdlcyBvbWl0dGVkLgorKwor
KzIwMjAtMTEtMTkgIEphbWVzIERhcnBpbmlhbiAgPGpkYXJwaW5pYW5AY2hyb21pdW0ub3JnPgor
KworKyAgICAgICAgSW1wcm92ZSB1cGRhdGUtYW5nbGUgc2NyaXB0IGFuZCBtb3ZlIHRvIFRvb2xz
L1NjcmlwdHMKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0yMTg4MzEKKysKKysgICAgICAgIFJldmlld2VkIGJ5IEtlbm5ldGggUnVzc2VsbC4KKysKKysg
ICAgICAgIHVwZGF0ZS1hbmdsZSBmZXRjaGVzIGNoYW5nZXMgZnJvbSB1cHN0cmVhbSBBTkdMRSBp
bnRvIFNvdXJjZS9UaGlyZFBhcnR5L0FOR0xFLAorKyAgICAgICAgdXBkYXRlcyBXZWJLaXQncyBi
dWlsZCBmaWxlcyBhbmQgaGVscHMgbWVyZ2UgV2ViS2l0J3MgbG9jYWwgY2hhbmdlcy4KKysKKysg
ICAgICAgICAgLSBNb3ZlZCB0byBUb29scy9TY3JpcHRzIHNvIHRoYXQgaXQgZG9lc24ndCBvdmVy
d3JpdGUgaXRzZWxmIGR1cmluZyB0aGUKKysgICAgICAgICAgICB1cGRhdGUgcHJvY2Vzcy4KKysg
ICAgICAgICAgLSBSZXZlcnNlZCBkaXJlY3Rpb24gb2YgcmViYXNlLiBCZWZvcmUgdGhlIHNjcmlw
dCByZWJhc2VkIEFOR0xFIG9uIFdlYktpdDsKKysgICAgICAgICAgICBub3cgaXQgcmViYXNlcyBX
ZWJLaXQncyBBTkdMRSBjaGFuZ2VzIG9uIHVwc3RyZWFtIEFOR0xFIG1hc3Rlci4gVGhpcworKyAg
ICAgICAgICAgIG1ha2VzIGEgbG90IG1vcmUgc2Vuc2UgYW5kIHJlc3VsdHMgaW4gZmV3ZXIgY2hh
bmdlcyB0byByZWJhc2UuIFRoaXMKKysgICAgICAgICAgICByZXF1aXJlcyB0aGUgdXNlIG9mIGdp
dC1maWx0ZXItcmVwbyB0byBtYWtlIHRoZSByZWJhc2Ugbm90IHByb2hpYml0aXZlbHkKKysgICAg
ICAgICAgICBzbG93LgorKyAgICAgICAgICAtIFJlbW92ZWQgYmFzaCBkZXBlbmRlbmN5LgorKyAg
ICAgICAgICAtIEZpeGVkIGFsbCBpc3N1ZXMgaWRlbnRpZmllZCBieSBzaGVsbGNoZWNrLgorKyAg
ICAgICAgICAtIEZpeGVkIGNoYW5nZXMuZGlmZiB0byBzaG93IGFkZGVkIGZpbGVzLCB3aGlsZSBm
aWx0ZXJpbmcgZmlsZXMgYWRkZWQgYnkKKysgICAgICAgICAgICBXZWJLaXQncyBidWlsZCBwcm9j
ZXNzLgorKyAgICAgICAgICAtIEZpeGVkIGNoYW5nZXMuZGlmZiB0byBpZ25vcmUgd2hpdGVzcGFj
ZSBjaGFuZ2VzLgorKyAgICAgICAgICAtIEFkZGVkIC0tcmVnZW5lcmF0ZS1jaGFuZ2VzLWRpZmYg
b3B0aW9uIHRvIHVwZGF0ZSBjaGFuZ2VzLmRpZmYgaW4gYmV0d2VlbgorKyAgICAgICAgICAgIEFO
R0xFIHVwZGF0ZXMuCisrICAgICAgICAgIC0gVXBkYXRlZCBbYW5nbGVfXWNvbW1pdC5oIGdlbmVy
YXRpb24gZm9yIHVwc3RyZWFtIGNoYW5nZXMuCisrICAgICAgICAgIC0gUmVtb3ZlZCBuZWVkIHRv
IHJ1biB0aGUgc2NyaXB0IG11bHRpcGxlIHRpbWVzIGR1cmluZyB0aGUgcmViYXNlIHByb2Nlc3Mu
CisrCisrICAgICAgICAqIHVwZGF0ZS1hbmdsZS5zaDogUmVtb3ZlZC4KKysKKysyMDIwLTExLTE5
ICBEZWFuIEphY2tzb24gIDxkaW5vQGFwcGxlLmNvbT4KKysKKysgICAgICAgIEFkZCBzY2hlbWVz
IGZvciBBTkdMRSB0byBYY29kZSBwcm9qZWN0CisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE3NTQ2CisrICAgICAgICByZGFyOi8vNjkwNjIwODIKKysK
KysgICAgICAgIFJldmlld2VkIGJ5IEFsZXggQ2hyaXN0ZW5zZW4uCisrCisrICAgICAgICAqIENv
bmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWc6IFVwZGF0ZSBwYXRocyBmb3IgYnVpbHQgZnJhbWV3
b3Jrcy4KKysgICAgICAgICogQU5HTEUueGNvZGVwcm9qL3hjc2hhcmVkZGF0YS94Y3NjaGVtZXMv
QU5HTEUgKGR5bmFtaWMpLnhjc2NoZW1lOiBBZGRlZC4KKysgICAgICAgICogQU5HTEUueGNvZGVw
cm9qL3hjc2hhcmVkZGF0YS94Y3NjaGVtZXMvQU5HTEUgKHN0YXRpYykueGNzY2hlbWU6IEFkZGVk
LgorKyAgICAgICAgKiBBTkdMRS54Y29kZXByb2oveGNzaGFyZWRkYXRhL3hjc2NoZW1lcy9BTkdM
RS54Y3NjaGVtZTogQWRkZWQuCisrCisrMjAyMC0xMS0wNCAgRGF2aWQgS2lsemVyICA8ZGRraWx6
ZXJAYXBwbGUuY29tPgorKworKyAgICAgICAgV2ViS2l0IHNob3VsZCByZW1vdmUgdW51c2VkIGRl
YnVnIHZhcmlhbnQgc3VwcG9ydAorKyAgICAgICAgPGh0dHBzOi8vd2Via2l0Lm9yZy9iLzIxODMx
NT4KKysgICAgICAgIDxyZGFyOi8vcHJvYmxlbS83MDc4NTM2OT4KKysKKysgICAgICAgIFJldmll
d2VkIGJ5IERhcmluIEFkbGVyLgorKworKyAgICAgICAgUmVtb3ZlIHN1cHBvcnQgZm9yIGJ1aWxk
aW5nIHRoZSBkZWJ1ZyB2YXJpYW50IHNpbmNlIGl0IGlzCisrICAgICAgICBjdXJyZW50bHkgdW51
c2VkLiBXZSBub3cgc2V0IGRlZmF1bHQgdmFsdWVzIGZvciB0aGUKKysgICAgICAgIERFQURfQ09E
RV9TVFJJUFBJTkcsIERFQlVHX0RFRklORVMsIEdDQ19PUFRJTUlaQVRJT05fTEVWRUwgYW5kCisr
ICAgICAgICBTVFJJUF9JTlNUQUxMRURfUFJPRFVDVCB2YXJpYWJsZXMuCisrCisrICAgICAgICBB
bHNvIG1vdmUgdGhlc2UgdmFsdWVzIG91dCBvZiB0aGUgWGNvZGUgcHJvamVjdCBpbnRvCisrICAg
ICAgICBCYXNlLnhjY29uZmlnIGZpbGVzIHVzaW5nIHRoZSBbY29uZmlnPURlYnVnXSBzcGVjaWZp
ZXIgc28gdGhhdAorKyAgICAgICAgdGhlc2Ugb3ZlcnJpZGVzIGFyZSBuZXh0IHRvIHRoZSBkZWZp
bml0aW9ucy4KKysKKysgICAgICAgIEFkZGl0aW9uYWwgY2hhbmdlcyBpbiBiZWhhdmlvciBhcmUg
bm90ZWQgYmVsb3cuCisrCisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0FOR0xFLWR5bmFtaWMu
eGNjb25maWc6CisrICAgICAgICAtIE1vdmUgREVCVUdfREVGSU5FUyB0byBCYXNlLnhjY29uZmln
LgorKyAgICAgICAgLSBTZXQgdXAgREVBRF9DT0RFX1NUUklQUElORyBhbmQgU1RSSVBfSU5TVEFM
TEVEX1BST0RVQ1QgdGhlCisrICAgICAgICAgIHNhbWUgYXMgZm9yIG90aGVyIFdlYktpdCBwcm9q
ZWN0cy4gUHJldmlvdXNseSBkZWFkIGNvZGUgYW5kCisrICAgICAgICAgIHN5bWJvbHMgd2VyZSBu
ZXZlciBzdGlwcGVkIGluIFJlbGVhc2Ugb3IgUHJvZHVjdGlvbiBidWlsZHMuCisrCisrICAgICAg
ICAqIENvbmZpZ3VyYXRpb25zL0FOR0xFLXN0YXRpYy54Y2NvbmZpZzoKKysgICAgICAgIC0gTW92
ZSBERUJVR19ERUZJTkVTIHRvIEJhc2UueGNjb25maWcuCisrCisrICAgICAgICAqIENvbmZpZ3Vy
YXRpb25zL0Jhc2UueGNjb25maWc6CisrICAgICAgICAtIFNldCB1cCBERUJVR19ERUZJTkVTIGFu
ZCBHQ0NfT1BUSU1JWkFUSU9OX0xFVkVMIHRoZSBzYW1lIGFzCisrICAgICAgICAgIG90aGVyIFdl
YktpdCBwcm9qZWN0cy4gUHJldmlvdXNseSBEZWJ1ZyBidWlsZHMgd2VyZSBidWlsdCB3aXRoCisr
ICAgICAgICAgIC1PcyBpbnN0ZWFkIG9mIC1PMC4KKysKKysyMDIwLTExLTAzICBEYXZpZCBLaWx6
ZXIgIDxkZGtpbHplckBhcHBsZS5jb20+CisrCisrICAgICAgICBTdG9wIGJ1aWxkaW5nIEFOR0xF
IHNvdXJjZSBmaWxlcyB0d2ljZQorKyAgICAgICAgPGh0dHBzOi8vd2Via2l0Lm9yZy9iLzIxODQ2
OT4KKysKKysgICAgICAgIFJldmlld2VkIGJ5IERlYW4gSmFja3Nvbi4KKysKKysgICAgICAgICog
QU5HTEUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKysgICAgICAgIChBTkdMRSAoZHluYW1p
YykpOgorKyAgICAgICAgLSBSZXBsYWNlIHNvdXJjZXMgd2l0aCBlbXB0eS5jcHAuIFhjb2RlIHJl
cXVpcmVzIGEgc2luZ2xlIHNvdXJjZQorKyAgICAgICAgICBmaWxlIHRvIGJlIGNvbXBpbGVkIHRv
IGNyZWF0ZSBhIGR5bGliLCBldmVuIGlmIHRoZSBzdGF0aWMKKysgICAgICAgICAgbGlicmFyeSBj
b250YWlucyBhbGwgbmVjZXNzYXJ5IHN5bWJvbHMuCisrICAgICAgICAtIEFkZCBkZXBlbmRlbmN5
IG9uICJBTkdMRSAoc3RhdGljKSIgdGFyZ2V0LgorKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9B
TkdMRS1keW5hbWljLnhjY29uZmlnOgorKyAgICAgICAgKEFOR0xFX09USEVSX0xERkxBR1MpOgor
KyAgICAgICAgLSBBZGQgJChBTkdMRV9TVEFUSUNfTElCX09USEVSX0xERkxBR1MpLgorKyAgICAg
ICAgKEFOR0xFX1NUQVRJQ19MSUJfT1RIRVJfTERGTEFHUyk6IEFkZC4KKysgICAgICAgIC0gU3Bl
Y2lhbCBsaW5rZXIgY29tbWFuZC1saW5lIHN3aXRjaCB0byBsb2FkIGFsbCBzeW1ib2xzIGZyb20K
KysgICAgICAgICAgbGliQU5HTEUuYSB3aGVuIGxpbmtpbmcgbGliQU5HTEUtc2hhcmVkLmR5bGli
LgorKyAgICAgICAgKiBzcmMvZW1wdHkuY3BwOiBBZGQuCisrICAgICAgICAtIFNlZSBhYm92ZSB3
aHkgdGhpcyBpcyBuZWVkZWQgYnkgWGNvZGUuCisrCisrMjAyMC0xMC0xMiAgRGVhbiBKYWNrc29u
ICA8ZGlub0BhcHBsZS5jb20+CisrCisrICAgICAgICBBZGQgc2NoZW1lcyBmb3IgQU5HTEUgdG8g
WGNvZGUgcHJvamVjdAorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIxNzU0NgorKyAgICAgICAgcmRhcjovLzY5MDYyMDgyCisrCisrICAgICAgICBSZXZp
ZXdlZCBieSBBbGV4IENocmlzdGVuc2VuLgorKworKyAgICAgICAgKiBBTkdMRS54Y29kZXByb2ov
eGNzaGFyZWRkYXRhL3hjc2NoZW1lcy9BTkdMRSAoZHluYW1pYykueGNzY2hlbWU6IEFkZGVkLgor
KyAgICAgICAgKiBBTkdMRS54Y29kZXByb2oveGNzaGFyZWRkYXRhL3hjc2NoZW1lcy9BTkdMRSAo
c3RhdGljKS54Y3NjaGVtZTogQWRkZWQuCisrICAgICAgICAqIEFOR0xFLnhjb2RlcHJvai94Y3No
YXJlZGRhdGEveGNzY2hlbWVzL0FOR0xFLnhjc2NoZW1lOiBBZGRlZC4KKysKKysyMDIwLTEwLTI4
ICBUaW0gSG9ydG9uICA8dGltb3RoeV9ob3J0b25AYXBwbGUuY29tPgorKworKyAgICAgICAgbWFj
Q2F0YWx5c3QgV2ViR0wgb24gQXBwbGUgU2lsaWNvbiBkZXZpY2VzIGlzIHVzaW5nIGEgc29mdHdh
cmUgcmVuZGVyZXIKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMTgzMDMKKysgICAgICAgIDxyZGFyOi8vcHJvYmxlbS83MDU4NzU3MT4KKysKKysgICAg
ICAgIFJldmlld2VkIGJ5IEdlb2ZmcmV5IEdhcmVuLgorKworKyAgICAgICAgKiBzcmMvZ3B1X2lu
Zm9fdXRpbC9TeXN0ZW1JbmZvLmg6CisrICAgICAgICAqIHNyYy9ncHVfaW5mb191dGlsL1N5c3Rl
bUluZm9fYXBwbGUubW06CisrICAgICAgICAoYW5nbGU6OkdldFN5c3RlbUluZm8pOgorKyAgICAg
ICAgV2UgY2FuIGp1c3QgdXNlIHRoZSBtYWNPUyB2ZXJzaW9uIG9mIEdldFN5c3RlbUluZm8gaW4g
bWFjQ2F0YWx5c3QuCisrCisrICAgICAgICAqIHNyYy9ncHVfaW5mb191dGlsL1N5c3RlbUluZm9f
bWFjb3MubW06CisrICAgICAgICAoYW5nbGU6OkdldFN5c3RlbUluZm9fbWFjKToKKysgICAgICAg
ICogc3JjL2xpYkFOR0xFL0Rpc3BsYXkuY3BwOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvZm9y
bWF0dXRpbHMuY3BwOgorKyAgICAgICAgKGdsOjpCdWlsZEludGVybmFsRm9ybWF0SW5mb01hcCk6
CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9yZW5kZXJlcmdsX3V0aWxzLmNw
cDoKKysgICAgICAgIChyeDo6bmF0aXZlZ2xfZ2w6OkdlbmVyYXRlQ2Fwcyk6CisrICAgICAgICBJ
dCB0dXJucyBvdXQgd2UgbXVzdCB1c2UgRUFHTCBpbiBtYWNDYXRhbHlzdCBvbiBBcHBsZSBTaWxp
Y29uIGluIGFsbCBjYXNlcywKKysgICAgICAgIG5vdCBqdXN0IGluLXByb2Nlc3MgaW4gaU9TIGFw
cHMgKHRoZSBwcm9ibGVtIGlzIG5vdCBqdXN0IGFib3V0IGNvZXhpc3RlbmNlCisrICAgICAgICBv
ZiB0aGUgdHdvIEdMcywgYnV0IGFjdHVhbGx5IGFib3V0IG91ciBhYmlsaXR5IHRvIGxvYWQgdGhl
IGFjY2VsZXJhdGVkCisrICAgICAgICByZW5kZXJlciAvYXQgYWxsLyBpbiBtYWNDYXRhbHlzdCBw
cm9jZXNzZXMpLgorKworKyAgICAgICAgSSBsZWZ0IHRoZSBydW50aW1lIHN3aXRjaGluZyBpbiBw
bGFjZSwgYmVjYXVzZSB0aGVyZSBpcyBhIGZ1dHVyZSBpbiB3aGljaAorKyAgICAgICAgd2UgL2Nh
bi8gdXNlIENHTCBpbiBub24taU9TLWFwcCBwcm9jZXNzZXMsIGJ1dCB0aGF0IGZ1dHVyZSBpcyBu
b3Qgbm93LgorKworKzIwMjAtMTAtMTMgIEtlaXRoIFJvbGxpbiAgPGtyb2xsaW5AYXBwbGUuY29t
PgorKworKyAgICAgICAgUmVtb3ZlIGxlZnRvdmVyIE1BQ09TWF9ERVBMT1lNRU5UX1RBUkdFVF9t
YWNvc3ggc3VwcG9ydAorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIxNzY0OQorKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzcwMjM2ODc3PgorKworKyAg
ICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIuCisrCisrICAgICAgICBCdWcgNDI3OTYgaW50
cm9kdWNlZCBNQUNPU1hfREVQTE9ZTUVOVF9UQVJHRVRfPFBMQVRGT1JNPiBhcyAic3VwcG9ydAor
KyAgICAgICAgZm9yIGNvbXBpbGluZyBXZWJLaXQgYWdhaW5zdCBpT1MgU0RLcyIuIFN1cHBvcnQg
Zm9yIHRoZSBpT1MgcGFydCBvZgorKyAgICAgICAgdGhpcyBmZWF0dXJlIHdhcyBsYXRlciByZW1v
dmVkIGluIHNldmVyYWwgY2hhbmdlcywgaW5jbHVkaW5nIEJ1ZworKyAgICAgICAgMTM5MjEyLCBC
dWcgMTM5NDYzIGFuZCBCdWcgMTQ0NzYyLiBIb3dldmVyLCB2ZXN0aWdlcyBoYXZlIHJlbWFpbmVk
IGZvcgorKyAgICAgICAgZml2ZSBvciBzaXggeWVhcnMgaW4gdGhlIGZvcm0gb2YgTUFDT1NYX0RF
UExPWU1FTlRfVEFSR0VUX21hY29zeC4gVGhlCisrICAgICAgICBpbmNsdXNpb24gb2YgdGhlIHBs
YXRmb3JtIGluIE1BQ09TWF9ERVBMT1lNRU5UX1RBUkdFVCBpcyBubyBsb25nZXIKKysgICAgICAg
IG5lZWRlZCBhbmQgY2FuIGJlIHJlbW92ZWQuCisrCisrICAgICAgICBUaGlzIGNoYW5nZXMgYnJp
bmdzIG1vc3QgcHJvamVjdHMgaW4gY29uZm9ybWFuY2Ugd2l0aCBvdGhlciBwcm9qZWN0cworKyAg
ICAgICAgdGhhdCBkb24ndCBzdXBwb3J0IGluY2x1ZGluZyB0aGUgcGxhdGZvcm0gaW4gTUFDT1NY
X0RFUExPWU1FTlRfVEFSR0VULAorKyAgICAgICAgaW5jbHVkaW5nIFdlYkVkaXRpbmdUZXN0ZXIs
IGd0ZXN0LCBXZWJLaXRUZXN0UnVubmVyLCBNaW5pQnJvd3NlciwgYW5kCisrICAgICAgICBUZXN0
V2ViS2l0QVBJLgorKworKyAgICAgICAgQWxvbmcgdGhlIHdheSwgcmVtb3ZlIGEgY291cGxlIG9m
IGxlZnQtb3ZlciByZWZlcmVuY2VzIHRvIG1hY09TIDEwLjE2LAorKyAgICAgICAgYW5kIGEgY291
cGxlIG9mIHBsYWNlcyB3aGVyZSBbc2RrPW1hY29zeCpdIHdhcyBzdGlsbCBiZWluZyB1c2VkLgor
KworKyAgICAgICAgV2l0aCB0aGlzIGNoYW5nZSwgaW5pdGlhbGl6YXRpb24gb2YgTUFDT1NYX0RF
UExPWU1FTlRfVEFSR0VUIHNob3VsZCBiZQorKyAgICAgICAgY29uc2lzdGVudCBhY3Jvc3MgYWxs
IHByb2plY3RzLCB3aXRoIHR3byBleGNlcHRpb25zOiBXZWJLaXRMYXVuY2hlcgorKyAgICAgICAg
KHdoaWNoIGhhcmRjb2RlcyBpdCB0byAxMC4xMikgYW5kIGxpYndlYnJ0YydzIGNvcHkgb2YgZ29v
Z2xldGVzdAorKyAgICAgICAgKHdoaWNoIGhhcmRjb2RlcyBpdCB0byAxMC40KS4gVGhlIHJlYXNv
bnMgZm9yIHRoZXNlIGhhcmQtY29kZWQgdmFsdWVzCisrICAgICAgICBpcyBub3QgYXBwYXJlbnQs
IHNvIGxlYXZlIHRoZW0gYmUuCisrCisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0RlYnVnUmVs
ZWFzZS54Y2NvbmZpZzoKKysKKysyMDIwLTEwLTEyICBMdW1pbmcgWWluICA8bHVtaW5nX3lpbkBh
cHBsZS5jb20+CisrCisrICAgICAgICBbbWFjT1NdIFdvcmthcm91bmQgZm9yIE1BQ19PU19YX1ZF
UlNJT05fTUFKT1IgaW5jb3JyZWN0bHkgaW5jbHVkaW5nIG1pbm9yIHZlcnNpb24gd2hlbiBidWls
ZGluZyAKKysgICAgICAgIHdpdGggWGNvZGUgMTIgb24gbWFjT1MgQmlnIFN1ciBTVXMKKysgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTc2MDIKKysgICAg
ICAgIHJkYXI6Ly83MDE5NDQ1MworKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIu
CisrCisrICAgICAgICBUaGUgcHJldmlvdXMgd29ya2Fyb3VuZCB0dXJucyBvdXQgdG8gYmUgaW5l
ZmZlY3RpdmUgYmVjYXVzZSB3ZSBjYW4ndCBzZXQgdGhlIHZhbHVlIG9mIAorKyAgICAgICAgVEFS
R0VUX01BQ19PU19YX1ZFUlNJT05fTUFKT1IgYmFzZWQgb24gYSBwcmV2aW91cyB2YWx1ZSBvZiBp
dHNlbGYuIEludHJvZHVjZSBhIG5ldyAKKysgICAgICAgIHZhcmlhYmxlIFRBUkdFVF9NQUNfT1Nf
WF9WRVJTSU9OX01BSk9SIHRvIGRldGVybWluZSB3aGV0aGVyIHdlIG5lZWQgdG8gZXhwbGljaXRs
eSAKKysgICAgICAgIGFkanVzdCBNQUNfT1NfWF9WRVJTSU9OX01BSk9SIHRvIDExMDAwMC4KKysK
KysgICAgICAgICogQ29uZmlndXJhdGlvbnMvRGVidWdSZWxlYXNlLnhjY29uZmlnOgorKworKzIw
MjAtMTAtMTIgIEx1bWluZyBZaW4gIDxsdW1pbmdfeWluQGFwcGxlLmNvbT4KKysKKysgICAgICAg
IFttYWNPU10gV29ya2Fyb3VuZCBmb3IgTUFDX09TX1hfVkVSU0lPTl9NQUpPUiBpbmNvcnJlY3Rs
eSBpbmNsdWRpbmcgbWlub3IgdmVyc2lvbiB3aGVuIGJ1aWxkaW5nIAorKyAgICAgICAgd2l0aCBY
Y29kZSAxMiBvbiBtYWNPUyBCaWcgU3VyIFNVcworKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIxNzYwMgorKyAgICAgICAgcmRhcjovLzcwMTk0NDUzCisr
CisrICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KKysKKysgICAgICAgIER1ZSB0byBh
IGJ1ZyBpbiBYY29kZSAocmRhcjovLzcwMTg1ODk5KSwgWGNvZGUgMTIuMCBhbmQgWGNvZGUgMTIu
MSBCZXRhIGluY29ycmVjdGx5IGluY2x1ZGVzIHRoZSAKKysgICAgICAgIG1pbm9yIHJlbGVhc2Ug
bnVtYmVyIGluIE1BQ19PU19YX1ZFUlNJT05fTUFKT1IsIHdoaWNoIGNhdXNlcyBEZWJ1ZyBhbmQg
UmVsZWFzZSBidWlsZHMgb2YgV2ViS2l0IAorKyAgICAgICAgdG8gYmUgbWlzY29uZmlndXJlZCB3
aGVuIGJ1aWxkaW5nIG9uIG1hY09TIEJpZyBTdXIgU1VzLCBsZWFkaW5nIHRvIHdlYnBhZ2VzIGZh
aWxpbmcgdG8gbG9hZC4KKysKKysgICAgICAgIFRvIHdvcmsgYXJvdW5kIHRoZSBYY29kZSBidWcs
IHdoZW4gdGhlIE1BQ19PU19YX1ZFUlNJT05fTUFKT1IgaW5jbHVkZXMgdGhlIG1pbm9yIHZlcnNp
b24gbnVtYmVyLCAKKysgICAgICAgIGRyb3AgdGhlIG1pbm9yIHZlcnNpb24gbnVtYmVyIGJ5IGV4
cGxpY2l0bHkgc2V0dGluZyBUQVJHRVRfTUFDX09TX1hfVkVSU0lPTl9NQUpPUiB0byAxMTAwMDAu
CisrCisrICAgICAgICBOb3RlOiBUaGlzIGNoYW5nZSBzaG91bGQgYmUgcmV2ZXJ0ZWQgYWZ0ZXIg
PHJkYXI6Ly83MDE4NTg5OT4gaXMgcmVzb2x2ZWQuCisrCisrICAgICAgICAqIENvbmZpZ3VyYXRp
b25zL0RlYnVnUmVsZWFzZS54Y2NvbmZpZzoKKysKKysyMDIwLTEwLTExICBMdW1pbmcgWWluICA8
bHVtaW5nX3lpbkBhcHBsZS5jb20+CisrCisrICAgICAgICBTdHJpcCBwYXRjaCB2ZXJzaW9uIGZy
b20gVEFSR0VUX01BQ19PU19YX1ZFUlNJT05fTUFKT1Igd2hlbiBidWlsZGluZyBmb3IgbWFjT1Mg
QmlnIFN1ciAKKysgICAgICAgIG9yIGxhdGVyCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE3NTk0CisrICAgICAgICByZGFyOi8vNzAxODg0OTcKKysK
KysgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgorKworKyAgICAgICAgVG8gZW5zdXJl
IHN1Y2Nlc3NmdWwgTWFjIENhdGFseXN0IFdlYktpdCBidWlsZHMsIHN0cmlwIHRoZSBwYXRjaCB2
ZXJzaW9uIGZyb20gCisrICAgICAgICBUQVJHRVRfTUFDX09TX1hfVkVSU0lPTl9NQUpPUiBieSB1
c2luZyB0d28gYGJhc2U6YHMgb24gTUFDT1NYX0RFUExPWU1FTlRfVEFSR0VULgorKworKyAgICAg
ICAgKiBDb25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnOgorKworKzIwMjAtMTAtMTEgIEx1bWlu
ZyBZaW4gIDxsdW1pbmdfeWluQGFwcGxlLmNvbT4KKysKKysgICAgICAgIElnbm9yZSBkZXBsb3lt
ZW50IHN1ZmZpeCBhbmQgaWRlbnRpZmllciB3aGVuIGNvbXB1dGluZyBtYWpvciBPUyB2ZXJzaW9u
IGZvciBtYWNPUyAKKysgICAgICAgIEJpZyBTdXIgYW5kIG5ld2VyCisrICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE3NTg0CisrICAgICAgICByZGFyOi8v
NzAxNjg0MjYKKysKKysgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgorKworKyAgICAg
ICAgU3RvcCB1c2luZyBNQUNPU1hfREVQTE9ZTUVOVF9UQVJHRVQ6c3VmZml4OmlkZW50aWZpZXIg
dG8gY29tcHV0ZSBtYWpvciBPUyB2ZXJzaW9ucy4gCisrICAgICAgICBPbmx5IHVzZSB0aGUgZGVw
bG95bWVudCB0YXJnZXQgYmFzZSBmb3IgbWFjT1MgQmlnIFN1ciBhbmQgbmV3ZXIuIEtlZXAgdGhl
IG1hbnVhbCAKKysgICAgICAgIGRlZmluaXRpb25zIGZvciBsZWdhY3kgdmVyc2lvbnMgb2YgbWFj
T1MuCisrCisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWc6CisrCisrMjAy
MC0xMC0wNyAgS2VpdGggUm9sbGluICA8a3JvbGxpbkBhcHBsZS5jb20+CisrCisrICAgICAgICBV
cGRhdGUgcG9zdC1wcm9jZXNzaW5nIHJ1bGVzIGZvciBoZWFkZXJzIHRvIG5vdCB1bm5lY2Vzc2Fy
aWx5IGNoYW5nZSB0aW1lc3RhbXBzCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MjE3MzcxCisrICAgICAgICA8cmRhcjovL3Byb2JsZW0vNjk5OTIyMzA+
CisrCisrICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KKysKKysgICAgICAgIFVuZGVy
IFhDQnVpbGQsIHRoZSBzY3JpcHRzIGVtcGxveWVkIGluIGN1c3RvbSBidWlsZCBydWxlcyBjYW4g
YmUKKysgICAgICAgIGludm9rZWQgaW4gaW5ub2N1b3VzIHNpdHVhdGlvbnMuIEEgY29tbW9uIGV4
YW1wbGUgaXMgd2hlbiB0aGUgdXNlciBpcworKyAgICAgICAgYnVpbGRpbmcgZnJvbSB0aGUgY29t
bWFuZC1saW5lIGFuZCB0aGV5IGNoYW5nZSB0aGUgYG1ha2VgIG91dHB1dCBmcm9tCisrICAgICAg
ICBzdGRvdXQgdG8gYSBmaWxlLCBvciB2aWNlLXZlcnNhLiBDaGFuZ2luZyB0aGUgb3V0cHV0IGNo
YW5nZXMgdGhlCisrICAgICAgICBzZXR0aW5nIG9mIHRoZSBDT0xPUl9ESUFHTk9TVElDUyBlbnZp
cm9ubWVudCB2YXJpYWJsZSwgd2hpY2ggaXMgZW5vdWdoCisrICAgICAgICB0byBjYXVzZSBYQ0J1
aWxkIHRvIHRoaW5rIHNvbWV0aGluZyBpcyBkaWZmZXJlbnQgYW5kIHRoYXQgdGhlIGN1c3RvbQor
KyAgICAgICAgYnVpbGQgcnVsZSBuZWVkcyB0byBiZSBpbnZva2VkLiBGb3IgdGhlIHNjcmlwdCdz
IHBhcnQsIG5vdGhpbmcKKysgICAgICAgIHNpZ25pZmljYW50IGhhcyBjaGFuZ2VkLCB5ZXQgaXQg
cG9zdC1wcm9jZXNzZXMgdGhlIGhlYWRlciBmaWxlcywKKysgICAgICAgIGNhdXNpbmcgdGhlaXIg
bW9kaWZpY2F0aW9uIGRhdGVzIHRvIGNoYW5nZSwgY2F1c2luZyBkb3duc3RyZWFtCisrICAgICAg
ICByZWJ1aWxkcyB0byBvY2N1ci4KKysKKysgICAgICAgIEZpeCB0aGlzIHByb2JsZW0gYnkgYWRv
cHRpbmcgYW4gYXBwcm9hY2ggdGhhdCBkb2Vzbid0IG1vZGlmeSB0aGUKKysgICAgICAgIHBvc3Qt
cHJvY2Vzc2VkIGhlYWRlciBmaWxlcyB1bmxlc3MgdGhlaXIgY29udGVudHMgYWN0dWFsbHkgY2hh
bmdlLgorKworKyAgICAgICAgKiBhZGp1c3QtYW5nbGUtaW5jbHVkZS1wYXRocy1ydWxlOgorKwor
KzIwMjAtMTAtMDIgIEtpbW1vIEtpbm51bmVuICA8a2tpbm51bmVuQGFwcGxlLmNvbT4KKysKKysg
ICAgICAgIFtpT1MgV0sxXSBDcmFzaGVzIHdoZW4gdXNpbmcgQU5HTEUgV2ViR0wgZnJvbSBhbm90
aGVyIHRocmVhZAorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTIxNjEwNgorKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzY4NjAyNDUyPgorKworKyAgICAg
ICAgUmV2aWV3ZWQgYnkgS2VubmV0aCBSdXNzZWxsLgorKworKyAgICAgICAgQWRkIHR3byBleHRl
bnNpb25zIGZvciBFQUdMIGFuZCBDR0wgYmFja2VuZHMgdG8gZGVjbGFyZSB0aGUKKysgICAgICAg
IHVuZGVybHlpbmcgcGxhdGZvcm0gY29udGV4dCBiZWluZyAidm9sYXRpbGUiLiBJdCBtZWFucyB0
aGF0CisrICAgICAgICB0aGUgdGhyZWFkLWdsb2JhbCBjdXJyZW50IGNvbnRleHQgaXMgYmVpbmcg
bW9kaWZpZWQgYmVoaW5kCisrICAgICAgICBBTkdMRS4gSWYgQU5HTEUgY29udGV4dCBpcyBtYXJr
ZWQgdm9sYXRpbGUgZm9yIGEgcGFydGljdWxhcgorKyAgICAgICAgQVBJLCBpdCB3aWxsIHN5bmMg
dGhlIHVuZGVybHlpbmcgY29udGV4dCBmb3IgZXZlcnkgRUdMCisrICAgICAgICBmdW5jdGlvbiB0
aGF0IG5lZWRzIHRoZSBjb250ZXh0LiBNb3N0IGludHVpdGl2ZSB1c2UgaXMKKysgICAgICAgIGZv
ciB0aGUgY2xpZW50IHRvIGNhbGwgZWdsTWFrZUN1cnJlbnQgYmVmb3JlIGNhbGxpbmcgYW55Cisr
ICAgICAgICBnbCBmdW5jdGlvbiBpZiB0aGUgY2xpZW50IGtub3ducyB0aGUgcGxhdGZvcm0gc3Rh
dGUgbWlnaHQKKysgICAgICAgIGJlIGRpcnR5LgorKworKyAgICAgICAgSW1wbGVtZW50IGVnbFJl
bGVhc2VUaHJlYWQgZm9yIEVBR0wgYW5kIENHTCBiYWNrZW5kcy4KKysgICAgICAgIFJlbGVhc2lu
ZyB0aHJlYWQgd2lsbCB1bnNldCB0aGUgcGxhdGZvcm0gY3VycmVudCBjb250ZXh0LgorKworKyAg
ICAgICAgRml4IGEgYnVnIG9mIG9taXR0aW5nIEVHTF9BTkdMRV9kZXZpY2VfZWFnbCBmcm9tIGJl
aW5nCisrICAgICAgICBhZHZlcnRpc2VkLgorKworKyAgICAgICAgKiBleHRlbnNpb25zL0VHTF9B
TkdMRV9wbGF0Zm9ybV9hbmdsZV9kZXZpY2VfY29udGV4dF92b2xhdGlsZV9jZ2wudHh0OiBBZGRl
ZC4KKysgICAgICAgICogZXh0ZW5zaW9ucy9FR0xfQU5HTEVfcGxhdGZvcm1fYW5nbGVfZGV2aWNl
X2NvbnRleHRfdm9sYXRpbGVfZWFnbC50eHQ6IEFkZGVkLgorKyAgICAgICAgKiBpbmNsdWRlL0VH
TC9lZ2xleHRfYW5nbGUuaDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL0NhcHMuY3BwOgorKyAg
ICAgICAgKGVnbDo6RGV2aWNlRXh0ZW5zaW9uczo6Z2V0U3RyaW5ncyBjb25zdCk6CisrICAgICAg
ICAoZWdsOjpDbGllbnRFeHRlbnNpb25zOjpnZXRTdHJpbmdzIGNvbnN0KToKKysgICAgICAgICog
c3JjL2xpYkFOR0xFL0NhcHMuaDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL0Rpc3BsYXkuY3Bw
OgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6cHJlcGFyZUZvckNhbGwpOgorKyAgICAgICAgKGVn
bDo6RGlzcGxheTo6cmVsZWFzZVRocmVhZCk6CisrICAgICAgICAoZWdsOjpHZW5lcmF0ZUNsaWVu
dEV4dGVuc2lvbnMpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvRGlzcGxheS5oOgorKyAgICAg
ICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvRGlzcGxheUltcGwuY3BwOgorKyAgICAgICAgKHJ4
OjpEaXNwbGF5SW1wbDo6cHJlcGFyZUZvckNhbGwpOgorKyAgICAgICAgKHJ4OjpEaXNwbGF5SW1w
bDo6cmVsZWFzZVRocmVhZCk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9EaXNw
bGF5SW1wbC5oOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0Rpc3Bs
YXlDR0wuaDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9EaXNwbGF5
Q0dMLm1tOgorKyAgICAgICAgKHJ4OjpEaXNwbGF5Q0dMOjppbml0aWFsaXplKToKKysgICAgICAg
IChyeDo6RGlzcGxheUNHTDo6dGVybWluYXRlKToKKysgICAgICAgIChyeDo6RGlzcGxheUNHTDo6
cHJlcGFyZUZvckNhbGwpOgorKyAgICAgICAgKHJ4OjpEaXNwbGF5Q0dMOjpyZWxlYXNlVGhyZWFk
KToKKysgICAgICAgIChyeDo6RGlzcGxheUNHTDo6bWFrZUN1cnJlbnQpOgorKyAgICAgICAgKiBz
cmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EaXNwbGF5RUFHTC5oOgorKyAgICAgICAgKiBz
cmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EaXNwbGF5RUFHTC5tbToKKysgICAgICAgIChy
eDo6RGlzcGxheUVBR0w6OmluaXRpYWxpemUpOgorKyAgICAgICAgKHJ4OjpEaXNwbGF5RUFHTDo6
dGVybWluYXRlKToKKysgICAgICAgIChyeDo6RGlzcGxheUVBR0w6OnByZXBhcmVGb3JDYWxsKToK
KysgICAgICAgIChyeDo6RGlzcGxheUVBR0w6OnJlbGVhc2VUaHJlYWQpOgorKyAgICAgICAgKiBz
cmMvbGliQU5HTEUvdmFsaWRhdGlvbkVHTC5jcHA6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIv
ZW50cnlfcG9pbnRzX2VnbC5jcHA6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvZW50cnlfcG9p
bnRzX2VnbF9leHQuY3BwOgorKworKzIwMjAtMDktMjkgIEphbWVzIERhcnBpbmlhbiAgPGpkYXJw
aW5pYW5AY2hyb21pdW0ub3JnPgorKworKyAgICAgICAgRml4IEVYVF9jb2xvcl9idWZmZXJfaGFs
Zl9mbG9hdCBvbiBpT1MKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0yMTcxMDcKKysKKysgICAgICAgIFJldmlld2VkIGJ5IEtlbm5ldGggUnVzc2VsbC4K
KysKKysgICAgICAgICogc3JjL2xpYkFOR0xFL0NvbnRleHQuY3BwOgorKyAgICAgICAgKGdsOjpD
b250ZXh0OjpnZW5lcmF0ZVN1cHBvcnRlZEV4dGVuc2lvbnMgY29uc3QpOgorKyAgICAgICAgKiBz
cmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvcmVuZGVyZXJnbF91dGlscy5jcHA6CisrICAgICAgICAo
cng6Om5hdGl2ZWdsX2dsOjpHZW5lcmF0ZVRleHR1cmVGb3JtYXRDYXBzKToKKysKKysyMDIwLTA5
LTI0ICBEZWFuIEphY2tzb24gIDxkaW5vQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFdlYkdMIHNo
b3VsZCB1c2UgR0xFUyBpbiBpT1MgYXBwcyBydW5uaW5nIG9uIEFwcGxlIFNpbGljb24KKysgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTY3MjIKKysgICAg
ICAgIDxyZGFyOi8vcHJvYmxlbS82ODk3NjMzNz4KKysKKysgICAgICAgIFJldmlld2VkIGJ5IFRp
bSBIb3J0b24uCisrCisrICAgICAgICBDaGFuZ2UgQU5HTEUgdG8gZHluYW1pY2FsbHkgbG9hZCBl
aXRoZXIgRUFHTCAoT3BlbkdMRVMpIG9yIENHTCAoT3BlbkdMKSBkZXBlbmRpbmcKKysgICAgICAg
IG9uIGJvdGggY29tcGlsZSBhbmQgcnVudGltZSBjb25maWd1cmF0aW9ucy4KKysgICAgICAgICAg
ICBJbnRlbCBNYWMgLT4gQ0dMCisrICAgICAgICAgICAgSW50ZWwgTWFjIENhdGFseXN0IC0+IENH
TAorKyAgICAgICAgICAgIEludGVsIGlPUyBTaW11bGF0b3IgLT4gRUFHTAorKyAgICAgICAgICAg
IGlPUyBEZXZpY2UgLT4gRUFHTAorKyAgICAgICAgICAgIEFwcGxlIFNpbGljb24gTWFjIC0+IENH
TAorKyAgICAgICAgICAgIEFwcGxlIFNpbGljb24gTWFjIENhdGFseXN0ICh3aXRoIE1hYyBhcHAp
IC0+IENHTAorKyAgICAgICAgICAgIEFwcGxlIFNpbGljb24gTWFjIENhdGFseXN0ICh3aXRoIGlP
UyBhcHApIC0+IEVBR0wKKysKKysgICAgICAgIFRoZSB0cmlja2llc3QgYml0IGlzIEFwcGxlIFNp
bGljb24gTWFjIENhdGFseXN0LCB3aGljaCBkZXBlbmRzIG9uIHRoZQorKyAgICAgICAgdHlwZSBv
ZiB0aGUgYXBwbGljYXRpb24gaXQgaXMgYXR0ZW1wdGluZyB0byBydW4uIEluIHRoYXQgY2FzZSBB
TkdMRSBtdXN0IGNvbXBpbGUKKysgICAgICAgIGJvdGggdGhlIENHTCBhbmQgRUFHTCBpbnRlcmZh
Y2VzIGFuZCB0aGVuIHBpY2sgb25lIHRvIHVzZSBhZnRlciBsYXVuY2guCisrCisrICAgICAgICAq
IEFOR0xFLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6IEFkZCBuZXcgZmlsZXMuCisrCisrICAg
ICAgICAqIENvbmZpZ3VyYXRpb25zL0FOR0xFLWR5bmFtaWMueGNjb25maWc6IFJlbW92ZSBhbGwg
dGhlIE9wZW5HTCogbGlua2luZy4KKysgICAgICAgICogQ29uZmlndXJhdGlvbnMvQU5HTEUtc3Rh
dGljLnhjY29uZmlnOgorKworKyAgICAgICAgKiBHTEVTdjIuY21ha2U6IE5ldyBmaWxlcy4KKysK
KysgICAgICAgICogc3JjL2NvbW1vbi9wbGF0Zm9ybS5oOiBOZXcgZGVmaW5pdGlvbnMgZm9yIENQ
VSB0eXBlIG9uIEFwcGxlIFN5c3RlbXMuCisrCisrICAgICAgICAqIHNyYy9ncHVfaW5mb191dGls
L1N5c3RlbUluZm8uaDogU3BsaXQgU3lzdGVtSW5mbyBmb3IgQXBwbGUgaW50byB0d28KKysgICAg
ICAgIGZpbGVzLCBmb3IgaU9TIGFuZCBNYWMuIEFkZGVkIGEgZmllbGQgZm9yIGlzaU9TQXBwT25N
YWMgdGhhdCB3aWxsIG9ubHkKKysgICAgICAgIGJlIHRydWUgd2hlbiBydW5uaW5nIGFuIGlPUyBi
aW5hcnkgb24gQXBwbGUgU2lsaWNvbi4KKysgICAgICAgICogc3JjL2dwdV9pbmZvX3V0aWwvU3lz
dGVtSW5mb19hcHBsZS5tbTogQWRkZWQuIERlY2lkZXMgd2hpY2ggU3lzdGVtSW5mbworKyAgICAg
ICAgdG8gY2FsbC4KKysgICAgICAgIChhbmdsZTo6R2V0U3lzdGVtSW5mbyk6CisrICAgICAgICAq
IHNyYy9ncHVfaW5mb191dGlsL1N5c3RlbUluZm9faW9zLmNwcDoKKysgICAgICAgIChhbmdsZTo6
R2V0U3lzdGVtSW5mb19pb3MpOgorKyAgICAgICAgKGFuZ2xlOjpHZXRTeXN0ZW1JbmZvKTogRGVs
ZXRlZC4KKysgICAgICAgICogc3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mb19tYWNvcy5tbToK
KysgICAgICAgIChhbmdsZTo6R2V0U3lzdGVtSW5mb19tYWMpOgorKyAgICAgICAgKGFuZ2xlOjpH
ZXRTeXN0ZW1JbmZvKTogRGVsZXRlZC4KKysKKysgICAgICAgICogc3JjL2xpYkFOR0xFL0NhcHMu
Y3BwOiBDYW4gbm8gbG9uZ2VyIGp1c3QgY2hlY2sgZm9yIFBMQVRGT1JNX0lPUy4gVGhpcworKyAg
ICAgICAgbWlnaHQgc3RpbGwgbmVlZCBhIHJ1bnRpbWUgY2hlY2suCisrICAgICAgICAoZ2w6OkRl
dGVybWluZURlcHRoVGV4dHVyZUFOR0xFU3VwcG9ydCk6CisrICAgICAgICAoZ2w6OkRldGVybWlu
ZURlcHRoVGV4dHVyZU9FU1N1cHBvcnQpOgorKworKyAgICAgICAgKiBzcmMvbGliQU5HTEUvRGlz
cGxheS5jcHA6IFRoaXMgaXMgdGhlIG1haW4gaW5pdGlhbGl6YXRpb24gcG9pbnQgZm9yCisrICAg
ICAgICBBTkdMRSwgd2hpY2ggZGVjaWRlcyBhdCBjb21waWxlL3J1bnRpbWUgd2hpY2ggdmFyaWFu
dCBvZiBEaXNwbGF5IHRvCisrICAgICAgICBjcmVhdGUuCisrCisrICAgICAgICAqIHNyYy9saWJB
TkdMRS9mb3JtYXR1dGlscy5jcHA6IEFkZCB0aGUgY29ycmVjdCBmb3JtYXRzLgorKyAgICAgICAg
KGdsOjpCdWlsZEludGVybmFsRm9ybWF0SW5mb01hcCk6CisrCisrICAgICAgICAqIHNyYy9saWJB
TkdMRS9yZW5kZXJlci9nbC9Tb2Z0TGlua2luZ19hcHBsZS5oOiBBZGRlZC4gTWFjcm9zIHRvIGhl
bHAgc29mdC1saW5rCisrICAgICAgICBmdW5jdGlvbnMgYW5kIE9iakMgY2xhc3Nlcy4KKysgICAg
ICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9DR0xGdW5jdGlvbnMuY3BwOiBBZGRl
ZC4gV2hlcmUgd2Ugc29mdC1saW5rIGFsbAorKyAgICAgICAgdGhlIE9wZW5HTC9DR0wgQVBJLgor
KyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0NHTEZ1bmN0aW9ucy5oOiBB
ZGRlZC4KKysKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9EaXNwbGF5
Q0dMLm1tOiBVc2UgdGhlIHNvZnQtbGlua2VkIG1ldGhvZHMuCisrICAgICAgICAqIHNyYy9saWJB
TkdMRS9yZW5kZXJlci9nbC9jZ2wvSU9TdXJmYWNlU3VyZmFjZUNHTC5jcHA6CisrICAgICAgICAq
IHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvV2luZG93U3VyZmFjZUNHTC5oOgorKyAgICAg
ICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL1dpbmRvd1N1cmZhY2VDR0wubW06IFJl
bmFtZSBXZWJTd2FwTGF5ZXIgdG8gV2ViU3dhcExheWVyQ0dMCisrICAgICAgICBvdGhlcndpc2Ug
aXQgY2xhc2hlcyB3aXRoIHRoZSBFQUdMIHZlcnNpb24uCisrICAgICAgICAocng6OldpbmRvd1N1
cmZhY2VDR0w6OmluaXRpYWxpemUpOgorKyAgICAgICAgKC1bV2ViU3dhcExheWVyIGluaXRXaXRo
U2hhcmVkU3RhdGU6d2l0aENvbnRleHQ6d2l0aEZ1bmN0aW9uczpdKTogRGVsZXRlZC4KKysgICAg
ICAgICgtW1dlYlN3YXBMYXllciBjb3B5Q0dMUGl4ZWxGb3JtYXRGb3JEaXNwbGF5TWFzazpdKTog
RGVsZXRlZC4KKysgICAgICAgICgtW1dlYlN3YXBMYXllciBjb3B5Q0dMQ29udGV4dEZvclBpeGVs
Rm9ybWF0Ol0pOiBEZWxldGVkLgorKyAgICAgICAgKC1bV2ViU3dhcExheWVyIGNhbkRyYXdJbkNH
TENvbnRleHQ6cGl4ZWxGb3JtYXQ6Zm9yTGF5ZXJUaW1lOmRpc3BsYXlUaW1lOl0pOiBEZWxldGVk
LgorKyAgICAgICAgKC1bV2ViU3dhcExheWVyIGRyYXdJbkNHTENvbnRleHQ6cGl4ZWxGb3JtYXQ6
Zm9yTGF5ZXJUaW1lOmRpc3BsYXlUaW1lOl0pOiBEZWxldGVkLgorKworKyAgICAgICAgKiBzcmMv
bGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EZXZpY2VFQUdMLmNwcDogU2ltaWxhciBjaGFuZ2Vz
IHRvIHRoZSBDR0wgaW1wbGVtZW50YXRpb24uCisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5k
ZXJlci9nbC9lYWdsL0RldmljZUVBR0wuaDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRl
cmVyL2dsL2VhZ2wvRGlzcGxheUVBR0wuaDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRl
cmVyL2dsL2VhZ2wvRGlzcGxheUVBR0wubW06CisrICAgICAgICAocng6OkRpc3BsYXlFQUdMOjpp
bml0aWFsaXplKToKKysgICAgICAgIChyeDo6RGlzcGxheUVBR0w6OnRlcm1pbmF0ZSk6CisrICAg
ICAgICAocng6OldvcmtlckNvbnRleHRFQUdMOjp+V29ya2VyQ29udGV4dEVBR0wpOgorKyAgICAg
ICAgKHJ4OjpXb3JrZXJDb250ZXh0RUFHTDo6bWFrZUN1cnJlbnQpOgorKyAgICAgICAgKHJ4OjpX
b3JrZXJDb250ZXh0RUFHTDo6dW5tYWtlQ3VycmVudCk6CisrICAgICAgICAocng6OkRpc3BsYXlF
QUdMOjpjcmVhdGVXb3JrZXJDb250ZXh0KToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRl
cmVyL2dsL2VhZ2wvRUFHTEZ1bmN0aW9ucy5oOiBBZGRlZC4KKysgICAgICAgICogc3JjL2xpYkFO
R0xFL3JlbmRlcmVyL2dsL2VhZ2wvRUFHTEZ1bmN0aW9ucy5tbTogQWRkZWQuCisrICAgICAgICAq
IHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0lPU3VyZmFjZVN1cmZhY2VFQUdMLm1tOgor
KyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9QYnVmZmVyU3VyZmFjZUVB
R0wuY3BwOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9SZW5kZXJl
ckVBR0wuY3BwOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9XaW5k
b3dTdXJmYWNlRUFHTC5oOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFn
bC9XaW5kb3dTdXJmYWNlRUFHTC5tbToKKysgICAgICAgICgtW1dlYlN3YXBMYXllckVBR0wgZGlz
cGxheV0pOgorKyAgICAgICAgKHJ4OjpXaW5kb3dTdXJmYWNlRUFHTDo6aW5pdGlhbGl6ZSk6Cisr
ICAgICAgICAoLVtXZWJTd2FwTGF5ZXIgaW5pdFdpdGhTaGFyZWRTdGF0ZTp3aXRoQ29udGV4dDp3
aXRoRnVuY3Rpb25zOl0pOiBEZWxldGVkLgorKyAgICAgICAgKC1bV2ViU3dhcExheWVyIGRpc3Bs
YXldKTogRGVsZXRlZC4KKysKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL3Jl
bmRlcmVyZ2xfdXRpbHMuY3BwOiBSdW50aW1lIGNoZWNrLgorKyAgICAgICAgKHJ4OjpuYXRpdmVn
bF9nbDo6R2VuZXJhdGVDYXBzKToKKysKKysyMDIwLTA5LTI1ICBKYW1lcyBEYXJwaW5pYW4gIDxq
ZGFycGluaWFuQGNocm9taXVtLm9yZz4KKysKKysgICAgICAgIFN1cHBvcnQgRVhUX2Zsb2F0X2Js
ZW5kCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE2
OTQ5CisrCisrICAgICAgICBSZXZpZXdlZCBieSBLZW5uZXRoIFJ1c3NlbGwuCisrCisrICAgICAg
ICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9yZW5kZXJlcmdsX3V0aWxzLmNwcDoKKysgICAg
ICAgIChyeDo6bmF0aXZlZ2xfZ2w6OkdlbmVyYXRlQ2Fwcyk6CisrCisrMjAyMC0wOS0yNCAgS2lt
bW8gS2lubnVuZW4gIDxra2lubnVuZW5AYXBwbGUuY29tPgorKworKyAgICAgICAgUkVHUkVTU0lP
TjogVGV4dHVyZXMgRmFpbCB0byBSZW5kZXIgaW4gV2ViR0wgZnJvbSBITFMgU3RyZWFtIFtpT1Mg
MTRdCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE1
OTA4CisrICAgICAgICA8cmRhcjovL3Byb2JsZW0vNjgwMDA5NjI+CisrCisrICAgICAgICBSZXZp
ZXdlZCBieSBEZWFuIEphY2tzb24uCisrCisrICAgICAgICBEaXNhYmxlIEFOR0xFIHdvcmtlcnMg
dW50aWwgRUFHTCBpbXBsZW1lbnRhdGlvbiBpcyBtb3JlIGNvbXBsZXRlLgorKyAgICAgICAgQ3Vy
cmVudCBpbXBsZW1lbnRhdGlvbiBmYWlscyB0byBjb21waWxlIGFueSBzaGFkZXIsIHNpbmNlIHRo
ZQorKyAgICAgICAgY29tcGlsYXRpb24gaGFwcGVucyBpbiB0aGUgd29ya2VyIHRocmVhZCBhbmQg
d29ya2VyIEVBR0wgY29udGV4dAorKyAgICAgICAgd2hpY2ggZG9lcyBub3QgdXNlIHRoZSBzYW1l
IHNoYXJlZ3JvdXAgYXMgdGhlIG1haW4gY29udGV4dC4KKysgICAgICAgIFRoZSBzaGFkZXIgb2Jq
ZWN0cyBhcmUgY3JlYXRlZCBpbiB0aGUgbWFpbiBjb250ZXh0IGJ1dCB0aGUgc2hhZGVyCisrICAg
ICAgICBzb3VyY2Ugc2V0dGluZyBhbmQgY29tcGlsYXRpb24gaGFwcGVucyBpbiB0aGUgd29ya2Vy
IGNvbnRleHQuCisrICAgICAgICBFQUdMIG5lZWRzIGEgZmx1c2ggYmV0d2VlbiBzdGF0ZSBjaGFu
Z2VzLCBhbmQgYWRkaW5nIHRoYXQKKysgICAgICAgIGNvcnJlY3RseSBpcyBhIGJpZ2dlciBjaGFu
Z2UgdG8gYmUgZG9uZSBsYXRlci4KKysKKysgICAgICAgIFVzZSBzaXplZCBmb3JtYXRzIHdoZW4g
Y2FsbGluZyBbRUFHTENvbnRleHQgLXRleEltYWdlSU9TdXJmYWNlXQorKyAgICAgICAgZnJvbSBF
R0xfQU5HTEVfaW9zdXJmYWNlX2NsaWVudF9idWZmZXIgY29kZS4gVGhlIHRleEltYWdlSU9TdXJm
YWNlCisrICAgICAgICBhY2NlcHRzIHBhcmFtZXRlcnMgd2l0aCBnbFRleEltYWdlMkQgbG9naWMu
IE9uIEVTMywgc29tZSBvZiB0aGUKKysgICAgICAgIGludGVybmFsIGZvcm1hdHMgbXVzdCBiZSBz
aXplZCBmb3JtYXRzLiBUaGUgRUFHTENvbnRleHQgaW5zdGFudGlhdGVkCisrICAgICAgICBieSBB
TkdMRSBpcyBFUzMsIGV2ZW4gaWYgdGhlIEFOR0xFIGNvbnRleHQgd291bGQgYmUgRVMyLgorKwor
KyAgICAgICAgTm8gdGVzdHMgYWRkZWQgc2luY2UgdGhpcyBzaG91bGQgYmUgY2F1Z2h0IHdpdGgg
dGhlIG1hbnkgdmlkZW8KKysgICAgICAgIHJlbGF0ZWQgdGVzdHMuIEl0J3MgdW5jbGVhciB3aHkg
dGhpcyBpcyBub3QgdGhlIGNhc2UgLS0gYXQKKysgICAgICAgIGxlYXN0IG9uIHJlYWwgaHcuIFRo
aXMgaXMgdG8gYmUgaW52ZXN0aWdhdGVkIGxhdGVyLCB0b28uCisrCisrICAgICAgICAqIHNyYy9s
aWJBTkdMRS9yZW5kZXJlci9kcml2ZXJfdXRpbHMuaDoKKysgICAgICAgIChyeDo6SXNJT1MpOgor
KyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9JT1N1cmZhY2VTdXJmYWNl
RUFHTC5tbToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL3JlbmRlcmVyZ2xf
dXRpbHMuY3BwOgorKyAgICAgICAgKHJ4OjpuYXRpdmVnbF9nbDo6SW5pdGlhbGl6ZUZlYXR1cmVz
KToKKysKKysyMDIwLTA5LTExICBKYW1lcyBEYXJwaW5pYW4gIDxqZGFycGluaWFuQGNocm9taXVt
Lm9yZz4KKysKKysgICAgICAgIFtXZWJHTDJdIFN1cHBvcnQgRVhUX2NvbG9yX2J1ZmZlcl9oYWxm
X2Zsb2F0IG9uIFdlYkdMIDIuMCBjb250ZXh0cworKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIxNjAxMAorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgS2Vu
bmV0aCBSdXNzZWxsLgorKworKyAgICAgICAgKiBzcmMvbGliQU5HTEUvZm9ybWF0dXRpbHMuY3Bw
OgorKyAgICAgICAgKGdsOjpTaXplZEhhbGZGbG9hdFJHVGV4dHVyZUF0dGFjaG1lbnRTdXBwb3J0
KToKKysgICAgICAgIChnbDo6U2l6ZWRIYWxmRmxvYXRSR0JUZXh0dXJlQXR0YWNobWVudFN1cHBv
cnQpOgorKyAgICAgICAgKGdsOjpTaXplZEhhbGZGbG9hdFJHQlJlbmRlcmJ1ZmZlclN1cHBvcnQp
OgorKyAgICAgICAgKGdsOjpTaXplZEhhbGZGbG9hdFJHQkFUZXh0dXJlQXR0YWNobWVudFN1cHBv
cnQpOgorKworKzIwMjAtMDktMDMgIEtpbW1vIEtpbm51bmVuICA8a2tpbm51bmVuQGFwcGxlLmNv
bT4KKysKKysgICAgICAgIE1hcmsgdW5pZm9ybSBzYW1wbGVycyBpbiBhbiBhcnJheSB1bnVzZWQg
cGVyIGVsZW1lbnQKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMTU2MzAKKysKKysgICAgICAgIFJldmlld2VkIGJ5IERlYW4gSmFja3Nvbi4KKysKKysg
ICAgICAgIE1hcmsgdW5pZm9ybSBzYW1wbGVycyBpbiBhbiB1bmlmb3JtIHNhbXBsZXIgYXJyYXkg
dW51c2VkIHBlcgorKyAgICAgICAgZWxlbWVudCwgaWYgZHJpdmVyIGluZm9ybXMgdGhlIGVsZW1l
bnQgYmVpbmcgdW51c2VkLgorKyAgICAgICAgQmVmb3JlLCBvbmUgZWxlbWVudCB3b3VsZCBtYXJr
IHRoZSB3aG9sZSBhcnJheSBhcyBiZWluZworKyAgICAgICAgdW51c2VkLCBhbmQgc2FtcGxlcnMg
dGhhdCB3ZXJlIGluIHVzZSB3b3VsZCBub3QgYmUgdXBkYXRlZC4KKysKKysgICAgICAgICogc3Jj
L2xpYkFOR0xFL0NvbnRleHQuY3BwOgorKyAgICAgICAgKGdsOjpTdGF0ZUNhY2hlOjp1cGRhdGVB
Y3RpdmVJbWFnZVVuaXRJbmRpY2VzKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL1Byb2dyYW0u
Y3BwOgorKyAgICAgICAgKGdsOjpTYW1wbGVyQmluZGluZzo6U2FtcGxlckJpbmRpbmcpOgorKyAg
ICAgICAgKGdsOjpJbWFnZUJpbmRpbmc6OkltYWdlQmluZGluZyk6CisrICAgICAgICAoZ2w6OlBy
b2dyYW06OmdldFNhbXBsZXJVbmlmb3JtQmluZGluZyBjb25zdCk6CisrICAgICAgICAoZ2w6OlBy
b2dyYW06OmdldEltYWdlVW5pZm9ybUJpbmRpbmcgY29uc3QpOgorKyAgICAgICAgKGdsOjpQcm9n
cmFtOjpsaW5rU2FtcGxlckFuZEltYWdlQmluZGluZ3MpOgorKyAgICAgICAgKGdsOjpQcm9ncmFt
Ojp1cGRhdGVTYW1wbGVyVW5pZm9ybSk6CisrICAgICAgICAoZ2w6OlByb2dyYW06OnNlcmlhbGl6
ZSBjb25zdCk6CisrICAgICAgICAoZ2w6OlByb2dyYW06OmRlc2VyaWFsaXplKToKKysgICAgICAg
ICogc3JjL2xpYkFOR0xFL1Byb2dyYW1FeGVjdXRhYmxlLmNwcDoKKysgICAgICAgIChnbDo6UHJv
Z3JhbUV4ZWN1dGFibGU6OnVwZGF0ZUFjdGl2ZVNhbXBsZXJzKToKKysgICAgICAgIChnbDo6UHJv
Z3JhbUV4ZWN1dGFibGU6OnVwZGF0ZUFjdGl2ZUltYWdlcyk6CisrICAgICAgICAoZ2w6OlByb2dy
YW1FeGVjdXRhYmxlOjpzZXRTYW1wbGVyVW5pZm9ybVRleHR1cmVUeXBlQW5kRm9ybWF0KToKKysg
ICAgICAgICogc3JjL2xpYkFOR0xFL1Byb2dyYW1FeGVjdXRhYmxlLmg6CisrICAgICAgICAqIHNy
Yy9saWJBTkdMRS9yZW5kZXJlci9nbC9Qcm9ncmFtR0wuY3BwOgorKyAgICAgICAgKHJ4OjpQcm9n
cmFtR0w6Om1hcmtVbnVzZWRVbmlmb3JtTG9jYXRpb25zKToKKysgICAgICAgICogc3JjL2xpYkFO
R0xFL3JlbmRlcmVyL21ldGFsL1Byb2dyYW1NdGwubW06CisrICAgICAgICAocng6OlByb2dyYW1N
dGw6OnVwZGF0ZVRleHR1cmVzKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1
bGthbi9Qcm9ncmFtRXhlY3V0YWJsZVZrLmNwcDoKKysgICAgICAgIChyeDo6UHJvZ3JhbUV4ZWN1
dGFibGVWazo6dXBkYXRlSW1hZ2VzRGVzY3JpcHRvclNldCk6CisrICAgICAgICAocng6OlByb2dy
YW1FeGVjdXRhYmxlVms6OnVwZGF0ZVRleHR1cmVzRGVzY3JpcHRvclNldCk6CisrICAgICAgICAq
IHNyYy90ZXN0cy9nbF90ZXN0cy9Db21wdXRlU2hhZGVyVGVzdC5jcHA6CisrICAgICAgICAqIHNy
Yy90ZXN0cy9nbF90ZXN0cy9Vbmlmb3JtVGVzdC5jcHA6CisrCisrMjAyMC0wOS0wMSAgRGF2aWQg
S2lsemVyICA8ZGRraWx6ZXJAYXBwbGUuY29tPgorKworKyAgICAgICAgW0FOR0xFXSBJbnRlcm5h
bEZvcm1hdDo6YmxlbmRTdXBwb3J0IGlzIHVuaW5pdGlhbGl6ZWQgYnkgY29uc3RydWN0b3IKKysg
ICAgICAgIDxodHRwczovL3dlYmtpdC5vcmcvYi8yMTYwNTM+CisrICAgICAgICA8cmRhcjovL3By
b2JsZW0vNjgxNjYwMzI+CisrCisrICAgICAgICBSZXZpZXdlZCBieSBLZW5uZXRoIFJ1c3NlbGwu
CisrCisrICAgICAgICAqIGNoYW5nZXMuZGlmZjogQWRkIHRoaXMgcGF0Y2guCisrICAgICAgICAq
IHNyYy9saWJBTkdMRS9mb3JtYXR1dGlscy5jcHA6CisrICAgICAgICAoZ2w6OkludGVybmFsRm9y
bWF0OjpJbnRlcm5hbEZvcm1hdCk6CisrICAgICAgICAtIEluaXRpYWxpemUgYmxlbmRTdXBwb3J0
IHRvIE5ldmVyU3VwcG9ydGVkLgorKworKzIwMjAtMDgtMzEgIEphbWVzIERhcnBpbmlhbiAgPGpk
YXJwaW5pYW5AY2hyb21pdW0ub3JnPgorKworKyAgICAgICAgSW1wbGVtZW50IFdFQkdMX2NvbXBy
ZXNzZWRfdGV4dHVyZV9zM3RjX3NyZ2IgZXh0ZW5zaW9uCisrICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE1OTczCisrCisrICAgICAgICBSZXZpZXdlZCBi
eSBEZWFuIEphY2tzb24uCisrCisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9m
b3JtYXR1dGlsc2dsLmNwcDoKKysgICAgICAgIChyeDo6bmF0aXZlZ2w6OkV4dEFuZFZlcnNpb25P
ckV4dCk6CisrICAgICAgICAocng6Om5hdGl2ZWdsOjpCdWlsZEludGVybmFsRm9ybWF0SW5mb01h
cCk6CisrCisrMjAyMC0wOC0xMiAgS2VpdGggUm9sbGluICA8a3JvbGxpbkBhcHBsZS5jb20+Cisr
CisrICAgICAgICBSZW1vdmUgdGhlIG5lZWQgZm9yIGRlZmluaW5nIFVTRV9ORVdfQlVJTERfU1lT
VEVNCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE1
NDM5CisrCisrICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KKysKKysgICAgICAgIFdo
ZW4gYnVpbGRpbmcgV2ViS2l0IGZvciBYQ0J1aWxkLCB3ZSBjdXJyZW50bHkgcmVxdWlyZSB0aGF0
IHRoZQorKyAgICAgICAgZXh0ZXJuYWwgYnVpbGQgc3lzdGVtIChzdWNoIGFzIHRoZSBNYWtlZmls
ZSwgYnVpbGQtd2Via2l0LCBldGMuKQorKyAgICAgICAgZGVmaW5lcyB0aGUgVVNFX05FV19CVUlM
RF9TWVNURU09WUVTIGJ1aWxkIHNldHRpbmcuIFRoaXMgYnVpbGQgc2V0dGluZworKyAgICAgICAg
Y29udHJvbHMgcGFydHMgb2Ygb3VyIGJ1aWxkIGluc3RydWN0aW9ucyB0aGF0IGFyZSBzZW5zaXRp
dmUgdG8gd2hlbgorKyAgICAgICAgWENCdWlsZCBvciB0aGUgTGVnYWN5IGJ1aWxkIHN5c3RlbSBh
cmUgYmVpbmcgdXNlZC4gTm90YWJseSwgd2UgbmVlZCB0bworKyAgICAgICAga25vdyB3aGVuIHRv
IHVzZSBvdXIgY3VzdG9tIOKAnGNvcHkgYW5kIG1vZGlmeeKAnSBzY3JpcHRzIHdpdGggY29weWlu
ZworKyAgICAgICAgY2VydGFpbiBoZWFkZXIgZmlsZXMgKHVzZWQgd2l0aCB0aGUgTGVnYWN5IGJ1
aWxkIHN5c3RlbSkgdnMuIHVzaW5nIHRoZQorKyAgICAgICAgZW5oYW5jZWQgQ29weSBIZWFkZXJz
IGJ1aWxkIHBoYXNlIHRoYXTigJlzIGVuYWJsZWQgd2l0aAorKyAgICAgICAgQVBQTFlfUlVMRVNf
SU5fQ09QWV9IRUFERVJTPVlFUyAoaW50cm9kdWNlZCB3aXRoIGFuZCB1c2VkIGJ5IFhDQnVpbGQp
LgorKyAgICAgICAgVGhlIGNob2ljZSBvZiB3aGljaCBtZXRob2QgdG8gY29weSBoZWFkZXJzIGlz
IHVzZWQgaXMgY29udHJvbGxlZCBieQorKyAgICAgICAgVVNFX05FV19CVUlMRF9TWVNURU0uCisr
CisrICAgICAgICBUaGVyZSBpcyBubyBidWlsdC1pbiBidWlsZCBzZXR0aW5nIHRoYXQgd2UgY2Fu
IHByb2JlIHRvIGhlbHAgdXMKKysgICAgICAgIGRldGVybWluZSB3aGljaCBhcHByb2FjaCB0byB0
YWtlIHdoZW4gY29weWluZyBhbmQgbW9kaWZ5aW5nIGhlYWRlcnMsCisrICAgICAgICB3aGljaCBp
cyB3aHkgd2UgbmVlZCB0byBkZWZpbmUgVVNFX05FV19CVUlMRF9TWVNURU0gb3Vyc2VsdmVzLiBC
dXQgaXQKKysgICAgICAgIHR1cm5zIG91dCB0aGF0IHdlIGNhbiAqZGV0ZWN0KiB3aGljaCBidWls
ZCBzeXN0ZW0gaXMgYmVpbmcgdXNlZCBieQorKyAgICAgICAgdGFraW5nIGFkdmFudGFnZSBvZiBh
IHN1YnRsZSBkaWZmZXJlbmNlIGJldHdlZW4gdGhlIHR3byBzeXN0ZW1zLiBBcworKyAgICAgICAg
bm90ZWQgaW46CisrCisrICAgICAgICAgICAgaHR0cHM6Ly9kZXZlbG9wZXIuYXBwbGUuY29tL2Rv
Y3VtZW50YXRpb24veGNvZGUtcmVsZWFzZS1ub3Rlcy9idWlsZC1zeXN0ZW0tcmVsZWFzZS1ub3Rl
cy1mb3IteGNvZGUtMTAKKysKKysgICAgICAgICAgICDigJxXaGVuIGFuIC54Y2NvbmZpZyBmaWxl
IGNvbnRhaW5zIG11bHRpcGxlIGFzc2lnbm1lbnRzIG9mIHRoZSBzYW1lCisrICAgICAgICAgICAg
IGJ1aWxkIHNldHRpbmcsIGxhdGVyIGFzc2lnbm1lbnRzIHVzaW5nICQoaW5oZXJpdGVkKSBvcgor
KyAgICAgICAgICAgICAkKDxzZXR0aW5nX25hbWU+KSB3aWxsIGluaGVyaXQgZnJvbSBlYXJsaWVy
IGFzc2lnbm1lbnRzIGluIHRoZQorKyAgICAgICAgICAgICAueGNjb25maWcuIFRoZSBsZWdhY3kg
YnVpbGQgc3lzdGVtIGNhdXNlZCBldmVyeSB1c2Ugb2YKKysgICAgICAgICAgICAgJChpbmhlcml0
ZWQpIG9yICQoPHNldHRpbmdfbmFtZT4pIHNraXAgYW55IG90aGVyIHZhbHVlcyBkZWZpbmVkCisr
ICAgICAgICAgICAgIHdpdGhpbiB0aGUgLnhjY29uZmlnLuKAnQorKworKyAgICAgICAgVGhpcyBk
aWZmZXJlbmNlIGNhbiBiZSBleHBsb2l0ZWQgYXMgZm9sbG93czoKKysKKysgICAgICAgICAgICBX
S19XSElDSF9CVUlMRF9TWVNURU0gPSBub3RfCisrICAgICAgICAgICAgV0tfV0hJQ0hfQlVJTERf
U1lTVEVNID0gJChpbmhlcml0ZWQpbGVnYWN5CisrICAgICAgICAgICAgV0tfVVNFX05FV19CVUlM
RF9TWVNURU0gPSAkKFdLX1VTRV9ORVdfQlVJTERfU1lTVEVNXyQoV0tfV0hJQ0hfQlVJTERfU1lT
VEVNKSkKKysgICAgICAgICAgICBXS19VU0VfTkVXX0JVSUxEX1NZU1RFTV9sZWdhY3kgPSBOTwor
KyAgICAgICAgICAgIFdLX1VTRV9ORVdfQlVJTERfU1lTVEVNX25vdF9sZWdhY3kgPSBZRVMKKysK
KysgICAgICAgIFdlIGNhbiB0aGVuIHVzZSBXS19VU0VfTkVXX0JVSUxEX1NZU1RFTSB3aGVyZSB3
ZSB1c2VkIHRvIHVzZSB0aGUKKysgICAgICAgIGV4dGVybmFsbHktZGVmaW5lZCBVU0VfTkVXX0JV
SUxEX1NZU1RFTS4KKysKKysgICAgICAgICogQU5HTEUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJv
ajoKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMvQU5HTEUtZHluYW1pYy54Y2NvbmZpZzoKKysg
ICAgICAgICogQ29uZmlndXJhdGlvbnMvQU5HTEUtc3RhdGljLnhjY29uZmlnOgorKyAgICAgICAg
KiBDb25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnOgorKworKzIwMjAtMDgtMDcgIERlYW4gSmFj
a3NvbiAgPGRpbm9AYXBwbGUuY29tPgorKworKyAgICAgICAgQU5HTEU6IE5vIG5lZWQgdG8gY2hl
Y2sgZm9yIENhdGFseXN0IGluIHRoZSBpT1MgYnVpbGQKKysgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTUyNDkKKysgICAgICAgIDxyZGFyOi8vcHJvYmxl
bS82NjY1NTQ3OD4KKysKKysgICAgICAgIFJldmlld2VkIGJ5IFRpbSBIb3J0b24uCisrCisrICAg
ICAgICBUaGUgRGlzcGxheUVBR0wgY2xhc3MgaXMgbmV2ZXIgdXNlZCBmb3IgQ2F0YWx5c3QsIHNv
IGRvZXNuJ3QKKysgICAgICAgIG5lZWQgdG8gaGFuZGxlIGl0LgorKworKyAgICAgICAgKiBzcmMv
bGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EaXNwbGF5RUFHTC5tbToKKysgICAgICAgIChyeDo6
RGlzcGxheUVBR0w6OmdlbmVyYXRlQ29uZmlncyk6CisrCisrMjAyMC0wOC0wNSAgVGltIEhvcnRv
biAgPHRpbW90aHlfaG9ydG9uQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFJlbW92ZSBhbGwgcmVm
ZXJlbmNlcyB0byBub24tZXhpc3RlbnQgMTAuMTYKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTUyMDIKKysKKysgICAgICAgIFJldmlld2VkIGJ5IFdl
bnNvbiBIc2llaC4KKysKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZzoK
KysgICAgICAgICogQ29uZmlndXJhdGlvbnMvRGVidWdSZWxlYXNlLnhjY29uZmlnOgorKyAgICAg
ICAgKiBDb25maWd1cmF0aW9ucy9WZXJzaW9uLnhjY29uZmlnOgorKyAgICAgICAgKiBDb25maWd1
cmF0aW9ucy9XZWJLaXRUYXJnZXRDb25kaXRpb25hbHMueGNjb25maWc6CisrCisrMjAyMC0wNy0y
OSAgTWljaGFlbCBDYXRhbnphcm8gIDxtY2F0YW56YXJvQGdub21lLm9yZz4KKysKKysgICAgICAg
IFtHVEtdIDIuMjkuNCBmYWlscyB0byBsaW5rIG9uIGFybXY3aGwKKysgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTQ5MzQKKysKKysgICAgICAgIFJldmll
d2VkIGJ5IENhcmxvcyBBbGJlcnRvIExvcGV6IFBlcmV6LgorKworKyAgICAgICAgTGluayBBTkdM
RSB0byB3aXRoIC1sZGwKKysKKysgICAgICAgICogQ01ha2VMaXN0cy50eHQ6CisrCisrMjAyMC0w
Ny0yOSAgS2VubmV0aCBSdXNzZWxsICA8a2JyQGNocm9taXVtLm9yZz4KKysKKysgICAgICAgIFJv
bGwgQU5HTEUgdG8gMjAyMC0wNy0yOAorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIxNDg5NworKworKyAgICAgICAgUmV2aWV3ZWQgYnkgQWxleCBDaHJp
c3RlbnNlbi4KKysKKysgICAgICAgIFJvbGwgdG8gY3VycmVudCBBTkdMRSByZXZpc2lvbi4gTGFy
Z2UgQ2hhbmdlTG9nIGJlbG93IGhhcyBiZWVuCisrICAgICAgICB0cnVuY2F0ZWQgZXhjZXB0IGZv
ciBhIGZldyBzaWduaWZpY2FudCBmaWxlcy4KKysKKysgICAgICAgIEFkZCBkZXBlbmRlbmN5IG9u
IHpsaWIgd3JhcHBlciBpbiB0aGlyZF9wYXJ0eS96bGliL2dvb2dsZSBmb3IgYm90aAorKyAgICAg
ICAgWGNvZGUgYW5kIENNYWtlIGJ1aWxkcy4gU21hbGwgY2hhbmdlIHRvIHRoaXMgd3JhcHBlciBm
b3IgdGhlCisrICAgICAgICBXaW5DYWlybyBidWlsZCdzIHN5c3RlbSB6bGliLCB3aGljaCBkb2Vz
bid0IGRlZmluZSB6X2NvbnN0LgorKworKyAgICAgICAgKiAuZ2l0aWdub3JlOgorKyAgICAgICAg
KiBBTkdMRS5wbGlzdDoKKysgICAgICAgICogQU5HTEUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJv
ajoKKysgICAgICAgICogQ01ha2VMaXN0cy50eHQ6CisrICAgICAgICAqIENvbmZpZ3VyYXRpb25z
L0FOR0xFLWR5bmFtaWMueGNjb25maWc6CisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0FOR0xF
LXN0YXRpYy54Y2NvbmZpZzoKKysgICAgICAgICogR0xFU3YyLmNtYWtlOgorKyAgICAgICAgKiBQ
bGF0Zm9ybVdpbi5jbWFrZToKKysgICAgICAgICogdGhpcmRfcGFydHkvemxpYi9nb29nbGUvY29t
cHJlc3Npb25fdXRpbHNfcG9ydGFibGUuY2M6IEFkZGVkLgorKyAgICAgICAgKiB0aGlyZF9wYXJ0
eS96bGliL2dvb2dsZS9jb21wcmVzc2lvbl91dGlsc19wb3J0YWJsZS5oOiBBZGRlZC4KKysKKysy
MDIwLTA3LTI4ICBLZW5uZXRoIFJ1c3NlbGwgIDxrYnJAY2hyb21pdW0ub3JnPgorKworKyAgICAg
ICAgUGF1c2UgZHVyaW5nIEFOR0xFIHJvbGwgc2NyaXB0IGFmdGVyIHJlYmFzaW5nIGFuZCBiZWZv
cmUgZGVsZXRpbmcgdGVtcG9yYXJ5IEdpdCByZXBvCisrICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjEyNzE3CisrCisrICAgICAgICBSZXZpZXdlZCBieSBE
ZWFuIEphY2tzb24uCisrCisrICAgICAgICBHaXZlIHRoZSB1c2VyIHRoZSBvcHBvcnR1bml0eSB0
byBtYW51YWxseSBleGFtaW5lIHRoZSBjaGFuZ2VzCisrICAgICAgICByZWxhdGl2ZSB0byB1cHN0
cmVhbSBBTkdMRSwgYW5kIHRvIHVuZG8gYW55IGFjY2lkZW50YWwgb3IKKysgICAgICAgIHVuZGVz
aXJlZCBvbmVzLCBiZWZvcmUgZmluaXNoaW5nIHRoZSByb2xsLgorKworKyAgICAgICAgKiB1cGRh
dGUtYW5nbGUuc2g6CisrCisrMjAyMC0wNy0yMiAgQ29ucmFkIFNodWx0eiAgPGNvbnJhZF9zaHVs
dHpAYXBwbGUuY29tPgorKworKyAgICAgICAgVXBkYXRlIG1hY09TIFZlcnNpb24gbWFjcm9zCisr
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE0NjUzCisr
CisrICAgICAgICBSZXZpZXdlZCBieSBUaW0gSG9ydG9uLgorKworKyAgICAgICAgKiBDb25maWd1
cmF0aW9ucy9CYXNlLnhjY29uZmlnOgorKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9EZWJ1Z1Jl
bGVhc2UueGNjb25maWc6CisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL1ZlcnNpb24ueGNjb25m
aWc6CisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL1dlYktpdFRhcmdldENvbmRpdGlvbmFscy54
Y2NvbmZpZzoKKysKKysyMDIwLTA3LTE3ICBLZW5uZXRoIFJ1c3NlbGwgIDxrYnJAY2hyb21pdW0u
b3JnPgorKworKyAgICAgICAgW1dlYkdMMl0gRml4IHZhbGlkYXRpb24gb2YgcGl4ZWwgdW5wYWNr
IHBhcmFtZXRlcnMKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMTQ1MDkKKysKKysgICAgICAgIFJldmlld2VkIGJ5IERlYW4gSmFja3Nvbi4KKysKKysg
ICAgICAgIEZpeCBzbWFsbCBlcnJvciBkaXNjb3ZlcmVkIHdoaWxlIHVwc3RyZWFtaW5nIHRoZSBw
cmV2aW91cyBmaXggdG8KKysgICAgICAgIHRoZSBBTkdMRSBwcm9qZWN0LgorKworKyAgICAgICAg
KiBzcmMvbGliQU5HTEUvdmFsaWRhdGlvbkVTMy5jcHA6CisrICAgICAgICAoZ2w6OlZhbGlkYXRl
RVMzVGV4SW1hZ2VQYXJhbWV0ZXJzQmFzZSk6CisrCisrMjAyMC0wNy0xNyAgS2VubmV0aCBSdXNz
ZWxsICA8a2JyQGNocm9taXVtLm9yZz4KKysKKysgICAgICAgIFtXZWJHTDJdIFJlYWRQaXhlbHMg
dXBkYXRlcworKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTIwOTUxNgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGVhbiBKYWNrc29uLgorKworKyAgICAg
ICAgQWRkIHdvcmthcm91bmQgZm9yIE9wZW5HTCBkcml2ZXIgYnVnIG9uIG1hY09TIHdoZXJlCisr
ICAgICAgICBHTF9QQUNLX1NLSVBfUk9XUyBhbmQgR0xfUEFDS19TS0lQX1BJWEVMUyBhcmUgaWdu
b3JlZC4KKysKKysgICAgICAgIEFkZCBXZWJHTCAyLjAtc3BlY2lmaWMgdmFsaWRhdGlvbiBjb25z
dHJhaW50cyBmb3IgcGl4ZWwgcGFjayBhbmQKKysgICAgICAgIHVucGFjayBwYXJhbWV0ZXJzLgor
KworKyAgICAgICAgVGhlc2UgY2hhbmdlcyBhcmUgYmVpbmcgdXBzdHJlYW1lZCB0byBBTkdMRSBp
bgorKyAgICAgICAgaHR0cDovL2NyYnVnLmNvbS9hbmdsZXByb2plY3QvNDg0OSAuCisrCisrICAg
ICAgICAqIGluY2x1ZGUvcGxhdGZvcm0vRmVhdHVyZXNHTC5oOgorKyAgICAgICAgKiBzcmMvbGli
QU5HTEUvRXJyb3JTdHJpbmdzLmg6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9n
bC9GcmFtZWJ1ZmZlckdMLmNwcDoKKysgICAgICAgIChyeDo6RnJhbWVidWZmZXJHTDo6cmVhZFBp
eGVscyk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9yZW5kZXJlcmdsX3V0
aWxzLmNwcDoKKysgICAgICAgIChyeDo6bmF0aXZlZ2xfZ2w6OkluaXRpYWxpemVGZWF0dXJlcyk6
CisrICAgICAgICAqIHNyYy9saWJBTkdMRS92YWxpZGF0aW9uRVMuY3BwOgorKyAgICAgICAgKGds
OjpWYWxpZGF0ZVBpeGVsUGFjayk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS92YWxpZGF0aW9u
RVMzLmNwcDoKKysgICAgICAgIChnbDo6VmFsaWRhdGVFUzNUZXhJbWFnZVBhcmFtZXRlcnNCYXNl
KToKKysKKysyMDIwLTA3LTEwICBLZW5uZXRoIFJ1c3NlbGwgIDxrYnJAY2hyb21pdW0ub3JnPgor
KworKyAgICAgICAgUmVtb3ZlIGdsQmluZEZyYW1lYnVmZmVyIGZsdXNoIHdvcmthcm91bmQgZnJv
bSBBTkdMRQorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTIxNDEwNAorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGVhbiBKYWNrc29uLgorKworKyAgICAg
ICAgUmVtb3ZlIHRoaXMgZHJpdmVyIGJ1ZyB3b3JrYXJvdW5kLCB3aGljaCB2ZXJ5IGxpa2VseSBo
YWQgbm8KKysgICAgICAgIGVmZmVjdCwgYW5kIHdoaWNoIHdhcyBuZXZlciB1cHN0cmVhbWVkIHRv
IEFOR0xFLgorKworKyAgICAgICAgKiBpbmNsdWRlL3BsYXRmb3JtL0ZlYXR1cmVzR0wuaDoKKysg
ICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL1N0YXRlTWFuYWdlckdMLmNwcDoKKysg
ICAgICAgIChyeDo6U3RhdGVNYW5hZ2VyR0w6OmJpbmRGcmFtZWJ1ZmZlcik6CisrICAgICAgICAq
IHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9yZW5kZXJlcmdsX3V0aWxzLmNwcDoKKysgICAgICAg
IChyeDo6bmF0aXZlZ2xfZ2w6OkluaXRpYWxpemVGZWF0dXJlcyk6CisrCisrMjAyMC0wNy0wOCAg
RGFyaW4gQWRsZXIgIDxkYXJpbkBhcHBsZS5jb20+CisrCisrICAgICAgICBGaXggYWRqdXN0LWFu
Z2xlLWluY2x1ZGUtcGF0aHMuc2ggZXJyb3Igc2VlbiBidWlsZGluZyBBTkdMRSBsaWJyYXJ5Cisr
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE0MDU5Cisr
CisrICAgICAgICBSZXZpZXdlZCBieSBBbGV4ZXkgUHJvc2t1cnlha292LgorKworKyAgICAgICAg
KiBBTkdMRS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOiBSZW1vdmUgdGhlIGJ1aWxkIHN0ZXAg
dGhhdCBhZGp1c3RzIHBhdGhzLgorKyAgICAgICAgRGVhbiBKYWNrc29uIHRvbGQgbWUgd2UgZG9u
J3QgbmVlZCBpdCBmb3IgdGhlIHN0YXRpYyBsaWJyYXJ5IHRhcmdldC4KKysKKysyMDIwLTA2LTMw
ICBBbmR5IEVzdGVzICA8YWVzdGVzQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFtYY29kZV0gRW5h
YmxlIHRoZSAiTXkgTWFjIChNYWMgQ2F0YWx5c3QpIiBkZXN0aW5hdGlvbiBpbiBXZWJLaXQgWGNv
ZGUgcHJvamVjdHMKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMTM3NDAKKysKKysgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgorKworKyAg
ICAgICAgKiBDb25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnOiBTZXQgU1VQUE9SVFNfTUFDQ0FU
QUxZU1QgdG8gWUVTIHRvIHRlbGwgWGNvZGUgdGhhdCB0aGlzCisrICAgICAgICBwcm9qZWN0IHN1
cHBvcnRzIGJ1aWxkaW5nIGZvciBNYWMgQ2F0YWx5c3QuCisrCisrMjAyMC0wNi0yMiAgVGltIEhv
cnRvbiAgPHRpbW90aHlfaG9ydG9uQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFVwZGF0ZSBtYWNP
UyB2ZXJzaW9uIG1hY3JvcworKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIxMzQ4NAorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgQWxleGV5IFByb3NrdXJ5
YWtvdi4KKysKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZzoKKysgICAg
ICAgICogQ29uZmlndXJhdGlvbnMvRGVidWdSZWxlYXNlLnhjY29uZmlnOgorKyAgICAgICAgKiBD
b25maWd1cmF0aW9ucy9WZXJzaW9uLnhjY29uZmlnOgorKyAgICAgICAgKiBDb25maWd1cmF0aW9u
cy9XZWJLaXRUYXJnZXRDb25kaXRpb25hbHMueGNjb25maWc6CisrCisrMjAyMC0wNi0yMiAgVGlt
IEhvcnRvbiAgPHRpbW90aHlfaG9ydG9uQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFdlYkdMIGNh
bm5vdCBjcmVhdGUgYSBjb250ZXh0IGlmIHRoZXJlIGlzIG5vIEdQVSBvbiB0aGUgUENJZSBidXMK
KysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTM0NzkK
KysKKysgICAgICAgIFJldmlld2VkIGJ5IE1hY2llaiBTdGFjaG93aWFrIGFuZCBEZWFuIEphY2tz
b24uCisrCisrICAgICAgICAqIHNyYy9ncHVfaW5mb191dGlsL1N5c3RlbUluZm9fbWFjb3MubW06
CisrICAgICAgICAoYW5nbGU6OkdldFN5c3RlbUluZm8pOgorKyAgICAgICAgRG8gbm90IGJhaWwg
ZnJvbSBXZWJHTCBpbml0aWFsaXphdGlvbiBpZiB0aGVyZSBhcmUgbm8gR1BVcyBvbiB0aGUgUENJ
ZSBidXMuCisrICAgICAgICBJbnN0ZWFkLCBjb250aW51ZSBvbiB0byBjb250ZXh0IGNyZWF0aW9u
LCBhbmQgYWxsb3cgdGhlIHN5c3RlbSBmcmFtZXdvcmtzCisrICAgICAgICB0byByZXR1cm4gYW4g
ZXJyb3IgaWYgdGhlcmUgdHJ1bHkgaXMgbm8gR1BVLgorKworKzIwMjAtMDYtMTkgIEpvbmF0aGFu
IEJlZGFyZCAgPGpiZWRhcmRAYXBwbGUuY29tPgorKworKyAgICAgICAgW0FOR0xFXSBDb3JyZWN0
IENhdGFseXN0IGd1YXJkcworKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIxMTQxMAorKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzYyODkxMTg1PgorKwor
KyAgICAgICAgUmV2aWV3ZWQgYnkgRGVhbiBKYWNrc29uLgorKworKyAgICAgICAgKiBzcmMvbGli
QU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EZXZpY2VFQUdMLmNwcDogRG8gbm90IGNvbXBpbGUgb24g
TWFjLgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EZXZpY2VFQUdM
Lmg6ICBEZWZpbml0aW9ucyBzaG91bGQgbm90IGJlIGF2YWlsYWJsZSBvbiBNYWMuCisrICAgICAg
ICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0Rpc3BsYXlFQUdMLmg6IERlZmluaXRp
b25zIHNob3VsZCBub3QgYmUgYXZhaWxhYmxlIG9uIE1hYy4KKysgICAgICAgICogc3JjL2xpYkFO
R0xFL3JlbmRlcmVyL2dsL2VhZ2wvRGlzcGxheUVBR0wubW06IERvIG5vdCBjb21waWxlIG9uIE1h
Yy4KKysKKysyMDIwLTA2LTEwICBEZWFuIEphY2tzb24gIDxkaW5vQGFwcGxlLmNvbT4KKysKKysg
ICAgICAgIEFkZCBhIGR5bmFtaWMgbGlicmFyeSB0YXJnZXQgZm9yIEFOR0xFCisrICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA3NTkxCisrCisrICAgICAg
ICBSZXZpZXdlZCBieSBUaW0gSG9ydG9uLgorKworKyAgICAgICAgSW4gcHJlcGFyYXRpb24gZm9y
IG1vdmluZyB0byBhIGR5bmFtaWMgbGlicmFyeSwgc3RhcnQKKysgICAgICAgIGJ5IGNvbXBpbGlu
ZyBhbmQgbGlua2luZyBpdC4gSXQgaXNuJ3QgdXNlZCBhbnl3aGVyZQorKyAgICAgICAgYnV0IGdl
dHRpbmcgaXQgaW50byB0aGUgYnVpbGQgd2lsbCBoZWxwIEFwcGxlJ3MKKysgICAgICAgIGJ1aWxk
IHN5c3RlbSByZW1haW4gaGFwcHkgYXMgd2UgbWlncmF0ZSwgYXMgd2VsbAorKyAgICAgICAgYXMg
aGF2ZSB0aGUgc3lzdGVtIGtub3cgaXQgZXhpc3RzIGZvciBidWlsZGluZworKyAgICAgICAgdGhl
IHNoYXJlZCBzeXN0ZW0gY2FjaGUuCisrCisrICAgICAgICAqIEFOR0xFLnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2o6CisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0FOR0xFLWR5bmFtaWMueGNj
b25maWc6IEFkZGVkLgorKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9BTkdMRS1zdGF0aWMueGNj
b25maWc6IEFkZGVkLgorKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9BTkdMRS54Y2NvbmZpZzog
UmVtb3ZlZC4KKysgICAgICAgICogQ29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZzoKKysgICAg
ICAgICogQ29uZmlndXJhdGlvbnMvRGVidWdSZWxlYXNlLnhjY29uZmlnOgorKworKzIwMjAtMDYt
MDcgIEphbWVzIERhcnBpbmlhbiAgPGpkYXJwaW5pYW5AY2hyb21pdW0ub3JnPgorKworKyAgICAg
ICAgW0FOR0xFIC0gaU9TXSBmYXN0L2NhbnZhcy93ZWJnbC91bmluaXRpYWxpemVkLXRlc3QuaHRt
bCBpcyBzdGlsbCBmYWlsaW5nCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MjEyMjQ5CisrCisrICAgICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24u
CisrCisrICAgICAgICBjb3B5VGV4SW1hZ2UyRCBpcyBicm9rZW4gaW4gc29tZSB3YXkgb24gaU9T
LiBXb3JrIGFyb3VuZCBpdCBieSByZWltcGxlbWVudGluZworKyAgICAgICAgaXQgd2l0aCBBTkdM
RSdzIEJsaXRHTCBjbGFzcy4KKysKKysgICAgICAgICogaW5jbHVkZS9wbGF0Zm9ybS9GZWF0dXJl
c0dMLmg6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9CbGl0R0wuY3BwOgor
KyAgICAgICAgKHJ4OjpCbGl0R0w6OmJsaXRDb2xvckJ1ZmZlcldpdGhTaGFkZXIpOgorKyAgICAg
ICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvQmxpdEdMLmg6CisrICAgICAgICAqIHNyYy9s
aWJBTkdMRS9yZW5kZXJlci9nbC9UZXh0dXJlR0wuY3BwOgorKyAgICAgICAgKHJ4OjpUZXh0dXJl
R0w6OmNvcHlJbWFnZSk6CisrICAgICAgICAocng6OlRleHR1cmVHTDo6Y29weVN1YkltYWdlKToK
KysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL3JlbmRlcmVyZ2xfdXRpbHMuY3Bw
OgorKyAgICAgICAgKHJ4OjpuYXRpdmVnbF9nbDo6SW5pdGlhbGl6ZUZlYXR1cmVzKToKKysgICAg
ICAgICogc3JjL3Rlc3RzL2dsX3Rlc3RzL0NvcHlUZXhJbWFnZVRlc3QuY3BwOgorKyAgICAgICAg
KiBzcmMvdGVzdHMvZ2xfdGVzdHMvVGV4dHVyZVRlc3QuY3BwOgorKyAgICAgICAgKiBzcmMvdGVz
dHMvdGVzdF91dGlscy9hbmdsZV90ZXN0X2NvbmZpZ3MuY3BwOgorKyAgICAgICAgKGFuZ2xlOjpv
cGVyYXRvcjw8KToKKysgICAgICAgICogc3JjL3Rlc3RzL3Rlc3RfdXRpbHMvYW5nbGVfdGVzdF9j
b25maWdzLmg6CisrICAgICAgICAoYW5nbGU6OldpdGhFbXVsYXRlQ29weVRleEltYWdlMkRGcm9t
UmVuZGVyYnVmZmVycyk6CisrICAgICAgICAqIHV0aWwvRUdMUGxhdGZvcm1QYXJhbWV0ZXJzLmg6
CisrICAgICAgICAoRUdMUGxhdGZvcm1QYXJhbWV0ZXJzOjp0aWUgY29uc3QpOgorKyAgICAgICAg
KiB1dGlsL0VHTFdpbmRvdy5jcHA6CisrICAgICAgICAoRUdMV2luZG93Ojppbml0aWFsaXplRGlz
cGxheSk6CisrCisrMjAyMC0wNi0wNCAgVGltIEhvcnRvbiAgPHRpbW90aHlfaG9ydG9uQGFwcGxl
LmNvbT4KKysKKysgICAgICAgIFdvcmsgYXJvdW5kIGJyb2tlbiBzeXN0ZW0gdmVyc2lvbiBtYWNy
bworKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxMjcy
NgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGFuIEJlcm5zdGVpbi4KKysKKysgICAgICAgICog
Q29uZmlndXJhdGlvbnMvRGVidWdSZWxlYXNlLnhjY29uZmlnOgorKworKzIwMjAtMDYtMDIgIEtl
aXRoIFJvbGxpbiAgPGtyb2xsaW5AYXBwbGUuY29tPgorKworKyAgICAgICAgQ2hhbmdlIEFOR0xF
J3MgaGVhZGVyIHBvc3Rwcm9jZXNzaW5nIHNjcmlwdCB0byBub3QgcmVseSBvbiB0aW1lc3RhbXBz
CisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjEyNjIz
CisrICAgICAgICA8cmRhcjovL3Byb2JsZW0vNjM4NTY5OTc+CisrCisrICAgICAgICBSZXZpZXdl
ZCBieSBEYXZpZCBLaWx6ZXIuCisrICAgICAgICBSZXZpZXdlZCBieSBLZW5ubmV0aCBSdXNzZWxs
LgorKworKyAgICAgICAgU29tZSBXZWJLaXQgYnVpbGRzIGludm9sdmUgbXVsdGlwbGUgcGFzc2Vz
LCB3aGVyZSBlYWNoIHBhc3MgaXMgYQorKyAgICAgICAgc3VwZXJzZXQgb2YgdGhlIHByZXZpb3Vz
IHBhc3MuIEluIHRoZSBjYXNlcyB3aGVyZSBlYWNoIHBhc3MgcHJvZHVjZXMKKysgICAgICAgIHRo
ZSBzYW1lIGZpbGVzLCBpdCBpcyByZXF1aXJlZCB0aGF0IGZpbGVzIGJlIHByb2R1Y2VkIGluIGV4
YWN0bHkgdGhlCisrICAgICAgICBzYW1lIHdheSBpbiBlYWNoIG9mIHRob3NlIHBhc3Nlcy4gQSBi
dWlsZCBwcm9jZXNzIHRoYXQgcmVsaWVzIG9uIGEKKysgICAgICAgIGZpbGUgY29udGFpbmluZyBh
IHRpbWVzdGFtcCB0cmlwcyB1cCB0aGF0IHByZXJlcXVpc2l0ZS4KKysKKysgICAgICAgIGFkanVz
dC1hbmdsZS1pbmNsdWRlLXBhdGhzLnNoIHVzZXMgc3VjaCBhIG1lY2hhbmlzbSwgdXNpbmcgYSB0
aW1lc3RhbXAKKysgICAgICAgIGZpbGUgdG8gZGV0ZXJtaW5lIGlmIGFueSBleHBvcnRlZCBoZWFk
ZXJzIG5lZWQgdG8gYmUgcG9zdC1wcm9jZXNzZWQuCisrICAgICAgICBTaW5jZSB0aGlzIHZpb2xh
dGVzIG91ciBwcmVyZXF1aXNpdGUsIHdlIG5lZWQgYSBkaWZmZXJlbnQgYXBwcm9hY2guCisrICAg
ICAgICBJbnN0ZWFkIG9mIHVzaW5nIGEgdGltZXN0YW1wLCBhbHdheXMgcGVyZm9ybSB0aGUgcG9z
dC1wcm9jZXNzaW5nLCBidXQKKysgICAgICAgIHdyaXRlIHRoZSBvdXRwdXQgdG8gYSB0ZW1wb3Jh
cnkgbG9jYXRpb24uIFRoZW4gc2VlIGlmIGl0IGRpZmZlcnMgZnJvbQorKyAgICAgICAgd2hhdCdz
IGluIHRoZSBhY3R1YWwgZmluYWwgZGVzdGluYXRpb24uIElmIHRoZSB0d28gZmlsZXMgZGlmZiwg
dGhlbgorKyAgICAgICAgY29weSB0aGUgb25lIGZyb20gdGhlIHRlbXBvcmFyeSBsb2NhdGlvbiB0
byB0aGUgZmluYWwgZGVzdGluYXRpb24uCisrCisrICAgICAgICBUaGlzIGFwcHJvYWNoIGRvZXMg
Y2F1c2UgbW9yZSB3b3JrIGluIHRoZSBhcmVhIG9mIHBvc3QtcHJvY2Vzc2luZy4KKysgICAgICAg
IEhvd2V2ZXIsIHRoaXMgcG9zdC1wcm9jZXNzaW5nIGlzIGFjdHVhbGx5IHZlcnkgY2hlYXAuIEFu
ZCBhdm9pZGluZyB0aGUKKysgICAgICAgIHBvc3QtcHJvY2Vzc2luZyBpcyBub3QgYWN0dWFsbHkg
dGhlIG9yaWdpbmFsIGdvYWwgb2YgdGhlIHRpbWVzdGFtcC4KKysgICAgICAgIFRoZSBhY3R1YWwg
Z29hbCBpcyB0byBhdm9pZCB0b3VjaGluZyB0aGUgbW9kaWZpY2F0aW9uIGRhdGVzIG9mIHRoZQor
KyAgICAgICAgZXhwb3J0ZWQgaGVhZGVycywgd2hpY2ggd291bGQgdGhlbiBjYXVzZSBhIGxvdCBv
ZiBkb3duc3RyZWFtCisrICAgICAgICByZWJ1aWxkaW5nLiBUaGUgbmV3IGFwcHJvYWNoIHdpdGgg
dGhlIHRlbXBvcmFyeSBmaWxlcyBhbHNvIGFjaGlldmVzCisrICAgICAgICB0aGF0IGdvYWwuCisr
CisrICAgICAgICAqIENNYWtlTGlzdHMudHh0OgorKyAgICAgICAgKiBhZGp1c3QtYW5nbGUtaW5j
bHVkZS1wYXRocy5zaDoKKysKKysyMDIwLTA2LTAyICBLZW5uZXRoIFJ1c3NlbGwgIDxrYnJAY2hy
b21pdW0ub3JnPgorKworKyAgICAgICAgUmV2aXNlIFBWUlRDIGNvbXByZXNzZWQgdGV4dHVyZSB2
YWxpZGF0aW9uIGluIEFOR0xFIGJhY2tlbmQgZm9yIFdlYkdMCisrICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjEyNjEyCisrCisrICAgICAgICBSZXZpZXdl
ZCBieSBEZWFuIEphY2tzb24uCisrCisrICAgICAgICBDb3JyZWN0IHRoZSBibG9jayBzaXplcyBv
ZiBQVlJUQyB0ZXh0dXJlcywgYW5kIGluY29ycG9yYXRlIG1pbmltdW0KKysgICAgICAgIGJsb2Nr
IHNpemVzIGZvciB3aWR0aCBhbmQgaGVpZ2h0LCBhcyByZXF1aXJlZCBieSB0aGVzZSBmb3JtYXRz
LgorKworKyAgICAgICAgKiBzcmMvbGliQU5HTEUvZm9ybWF0dXRpbHMuY3BwOgorKyAgICAgICAg
KGdsOjpCdWlsZEludGVybmFsRm9ybWF0SW5mb01hcCk6CisrICAgICAgICAoZ2w6OkludGVybmFs
Rm9ybWF0Ojpjb21wdXRlQ29tcHJlc3NlZEltYWdlU2l6ZSBjb25zdCk6CisrICAgICAgICAoZ2w6
OkludGVybmFsRm9ybWF0OjpnZXRDb21wcmVzc2VkSW1hZ2VNaW5CbG9ja3MgY29uc3QpOgorKyAg
ICAgICAgKiBzcmMvbGliQU5HTEUvZm9ybWF0dXRpbHMuaDoKKysKKysyMDIwLTA1LTI5ICBLZWl0
aCBSb2xsaW4gIDxrcm9sbGluQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFJldmVydCBzd2l0Y2gg
dG8gWENCdWlsZAorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTIxMjUzMAorKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzYzNzY0NjMyPgorKworKyAgICAg
ICAgVW5yZXZpZXdlZCBidWlsZCBmaXguCisrCisrICAgICAgICBCdWcgMjA5ODkwIGVuYWJsZWQg
dGhlIHVzZSBvZiBYQ0J1aWxkIGJ5IGRlZmF1bHQuIFNpbmNlIHRoZW4sIHNvbWUKKysgICAgICAg
IGJ1aWxkIGlzc3VlcyBoYXZlIHNob3duIHVwLiBXaGlsZSBhZGRyZXNzaW5nIHRoZW0sIHRlbXBv
cmFyaWx5IHR1cm4KKysgICAgICAgIG9mZiB0aGUgdXNlIG9mIFhDQnVpbGQgYnkgZGVmYXVsdC4K
KysKKysgICAgICAgICogQU5HTEUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKysgICAgICAg
ICogQ29uZmlndXJhdGlvbnMvQU5HTEUueGNjb25maWc6CisrCisrMjAyMC0wNS0yNyAgS2VpdGgg
Um9sbGluICA8a3JvbGxpbkBhcHBsZS5jb20+CisrCisrICAgICAgICBFbmFibGUgdGhlIHVzZSBv
ZiBYQ0J1aWxkIGJ5IGRlZmF1bHQgaW4gQXBwbGUgYnVpbGRzCisrICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA5ODkwCisrICAgICAgICA8cmRhcjovL3By
b2JsZW0vNDQxODIwNzg+CisrCisrICAgICAgICBVbnJldmlld2VkIGJ1aWxkIGZpeC4gQ2hlY2sg
dGhlIHZhbHVlIG9mIFhDT0RFX1ZFUlNJT05fQUNUVUFMIHJhdGhlcgorKyAgICAgICAgdGhhbiBY
Q09ERV9WRVJTSU9OX01BSk9SIHdoZW4gZGV0ZXJtaW5pbmcgd2hldGhlciB0byB1c2UgdGhlIFhD
QnVpbGQKKysgICAgICAgIG9yIG5vbi1YQ0J1aWxkIG1ldGhvZCBvZiBydW5uaW5nIGhlYWRlciBw
b3N0LXByb2Nlc3Npbmcgc2NyaXB0cy4KKysKKysgICAgICAgICogQU5HTEUueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvajoKKysKKysyMDIwLTA1LTI2ICBLZWl0aCBSb2xsaW4gIDxrcm9sbGluQGFw
cGxlLmNvbT4KKysKKysgICAgICAgIEVuYWJsZSB0aGUgdXNlIG9mIFhDQnVpbGQgYnkgZGVmYXVs
dCBpbiBBcHBsZSBidWlsZHMKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0yMDk4OTAKKysgICAgICAgIDxyZGFyOi8vcHJvYmxlbS80NDE4MjA3OD4KKysK
KysgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgorKworKyAgICAgICAgU3dpdGNoIGZy
b20gdGhlICJsZWdhY3kiIFhjb2RlIGJ1aWxkIHN5c3RlbSB0byB0aGUgIm5ldyIgYnVpbGQgc3lz
dGVtCisrICAgICAgICAoYWxzbyBrbm93biBhcyAiWENCdWlsZCIpLiBTd2l0Y2hpbmcgdG8gdGhl
IG5ldyBzeXN0ZW0gc3BlZWRzIHVwCisrICAgICAgICBidWlsZHMgYnkgYSBzbWFsbCBwZXJjZW50
YWdlLCBiZXR0ZXIgdmFsaWRhdGVzIHByb2plY3RzIGZvcgorKyAgICAgICAgYnVpbGQtcmVsYXRl
ZCBpc3N1ZXMgKHN1Y2ggYXMgZGVwZW5kZW5jeSBjeWNsZXMpLCBsZXRzIFdlYktpdCBiZW5lZml0
CisrICAgICAgICBmcm9tIGZ1dHVyZSBpbXByb3ZlbWVudHMgaW4gWENCdWlsZCBzdWNoIGFzIHRo
b3NlIGNvbWluZyBmcm9tIHRoZQorKyAgICAgICAgdW5kZXJseWluZyBsbGJ1aWxkIG9wZW4gc291
cmNlIHByb2plY3QsIGFuZCBwcmVwYXJlcyB1cyBmb3IgYW55IG90aGVyCisrICAgICAgICB0b29s
cyBidWlsdCBmb3IgdGhpcyBuZXcgZWNvc3lzdGVtLgorKworKyAgICAgICAgU3BlY2lmaWMgY2hh
bmdlczoKKysKKysgICAgICAgIC0gUmVtb3ZlIFhjb2RlIHByb2plY3QgYW5kIHdvcmtzcGFjZSBz
ZXR0aW5ncyB0aGF0IHNlbGVjdGVkIHRoZSBCdWlsZAorKyAgICAgICAgICBzeXN0ZW0sIGFsbG93
aW5nIHRoZSBkZWZhdWx0IHRvIHRha2UgaG9sZCAod2hpY2ggaXMgY3VycmVudGx5IHRoZQorKyAg
ICAgICAgICBOZXcgYnVpbGQgc3lzdGVtKS4KKysgICAgICAgIC0gVXBkYXRlZCB3ZWJraXRkaXJz
LnBtIHdpdGggYSB0ZXJzZXIgY2hlY2sgZm9yIFhjb2RlIHZlcnNpb24uCisrICAgICAgICAtIFVw
ZGF0ZSBidWlsZC13ZWJraXQgYW5kIE1ha2VmaWxlLnNoYXJlZCB0byBiZSBleHBsaWNpdCB3aGVu
IHVzaW5nCisrICAgICAgICAgIHRoZSBvbGQgYnVpbGQgc3lzdGVtIChubyBsb25nZXIgdHJlYXQg
aXQgYXMgYSBkZWZhdWx0IG9yIGZhbGwtYmFjaworKyAgICAgICAgICBjb25maWd1cmF0aW9uKS4K
KysgICAgICAgIC0gVXBkYXRlIHZhcmlvdXMgeGNjb25maWcgZmlsZXMgc2ltaWxhcmx5IHRvIHRy
ZWF0IHRoZSBkZWZhdWx0IGFzCisrICAgICAgICAgIHVzaW5nIHRoZSBuZXcgYnVpbGQgc3lzdGVt
LgorKyAgICAgICAgLSBVcGRhdGUgdmFyaW91cyBwb3N0LXByb2Nlc3NpbmcgYnVpbGQgc3RlcHMg
dG8gY2hlY2sgZm9yIFhjb2RlIDExLjQKKysgICAgICAgICAgYW5kIHRvIG5vIGxvbmdlciB0cmVh
dCB0aGUgZGVmYXVsdCBhcyB1c2luZyB0aGUgb2xkIGJ1aWxkIHN5c3RlbS4KKysKKysgICAgICAg
ICogQU5HTEUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKysgICAgICAgICogQ29uZmlndXJh
dGlvbnMvQU5HTEUueGNjb25maWc6CisrCisrMjAyMC0wNS0yMiAgS2VubmV0aCBSdXNzZWxsICA8
a2JyQGNocm9taXVtLm9yZz4KKysKKysgICAgICAgIFtBTkdMRSAtIGlPU10gd2ViZ2wvMS4wLjMv
Y29uZm9ybWFuY2UvZXh0ZW5zaW9ucy9leHQtc1JHQi5odG1sIGlzIGZhaWxpbmcKKysgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTIyNzcKKysKKysgICAg
ICAgIFJldmlld2VkIGJ5IERlYW4gSmFja3Nvbi4KKysKKysgICAgICAgIFByb3Blcmx5IHRyYW5z
bGF0ZSBHTF9FWFRfc1JHQiBlbnVtcyB0byBFUyAzLjAgZW51bXMgd2hlbgorKyAgICAgICAgR0xf
RVhUX3NSR0IgaXMgbm90IHN1cHBvcnRlZC4KKysKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3Jl
bmRlcmVyL2dsL2Zvcm1hdHV0aWxzZ2wuY3BwOgorKyAgICAgICAgKHJ4OjpuYXRpdmVnbDo6R2V0
TmF0aXZlSW50ZXJuYWxGb3JtYXQpOgorKyAgICAgICAgKHJ4OjpuYXRpdmVnbDo6R2V0TmF0aXZl
Rm9ybWF0KToKKysKKysyMDIwLTA1LTIyICBLZW5uZXRoIFJ1c3NlbGwgIDxrYnJAY2hyb21pdW0u
b3JnPgorKworKyAgICAgICAgW0FOR0xFIC0gaU9TXSBmYXN0L2NhbnZhcy93ZWJnbC93ZWJnbC1k
ZXB0aC10ZXh0dXJlLmh0bWwgaXMgZmFpbGluZworKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIxMjI3MQorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGVh
biBKYWNrc29uLgorKworKyAgICAgICAgVXNlIEVTIDMuMCBzaXplZCBpbnRlcm5hbCBmb3JtYXRz
IGZvciB1bnNpemVkIGRlcHRoL3N0ZW5jaWwKKysgICAgICAgIHRleHR1cmVzIHdoZW4gdGhlIE9F
U19kZXB0aF90ZXh0dXJlIGV4dGVuc2lvbiBpcyB1bmF2YWlsYWJsZSAtIGFzCisrICAgICAgICBp
cyB0aGUgY2FzZSBpbiBpT1MncyBFUyAzLjAgZHJpdmVyLgorKworKyAgICAgICAgKiBzcmMvbGli
QU5HTEUvcmVuZGVyZXIvZ2wvZm9ybWF0dXRpbHNnbC5jcHA6CisrICAgICAgICAocng6Om5hdGl2
ZWdsOjpHZXROYXRpdmVJbnRlcm5hbEZvcm1hdCk6CisrCisrMjAyMC0wNS0yMSAgRGVhbiBKYWNr
c29uICA8ZGlub0BhcHBsZS5jb20+CisrCisrICAgICAgICBQVlJUQyBjb21wcmVzc2VkIHRleHR1
cmVzIGFyZSBmYWlsaW5nIHdpdGggQU5HTEUgYmFja2VuZAorKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxMjI0MAorKyAgICAgICAgPHJkYXI6Ly9wcm9i
bGVtLzYzNTE3Mzg1PgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgS2VuIFJ1c3NlbGwgKHJlcHJl
c2VudGluZyBBTkdMRSkuCisrCisrICAgICAgICBUaGUgdmFsdWVzIHVzZWQgZm9yIHRoZSBQVlJU
QyBmb3JtYXRzIHdlcmUgaW5jb3JyZWN0LgorKworKyAgICAgICAgKiBzcmMvbGliQU5HTEUvZm9y
bWF0dXRpbHMuY3BwOgorKyAgICAgICAgKGdsOjpCdWlsZEludGVybmFsRm9ybWF0SW5mb01hcCk6
CisrCisrMjAyMC0wNS0yMSAgS2VubmV0aCBSdXNzZWxsICA8a2JyQGNocm9taXVtLm9yZz4KKysK
KysgICAgICAgIFJvbGwgQU5HTEUgdG8gMjAyMC0wNS0yMQorKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxMjIyOAorKworKyAgICAgICAgUmV2aWV3ZWQg
YnkgRGVhbiBKYWNrc29uLgorKworKyAgICAgICAgUm9sbCBBTkdMRSB0byA5NmE4MDI4M2NjMGZl
NjA0ZDAzYzBiYzBiM2Y5ZWIxMDBlZGQyMmY5IGluIHRoZQorKyAgICAgICAgdXBzdHJlYW0gcmVw
b3NpdG9yeSB1c2luZyBqZGFycGluaWFuJ3MgZXhjZWxsZW50IHVwZGF0ZS1hbmdsZS5zaAorKyAg
ICAgICAgc2NyaXB0LgorKworKyAgICAgICAgTWFudWFsbHkgdW5kbyB0aGUgZml4IGZyb20gQnVn
IDIxMDk5Miwgd2hpY2ggd2FzIGZpeGVkIGRpZmZlcmVudGx5CisrICAgICAgICB1cHN0cmVhbS4K
KysKKysyMDIwLTA1LTIxICBLZW5uZXRoIFJ1c3NlbGwgIDxrYnJAY2hyb21pdW0ub3JnPgorKwor
KyAgICAgICAgRVhUX2NvbG9yX2J1ZmZlcl9oYWxmX2Zsb2F0IG5vdCBleHBvc2VkIG9uIGlPUwor
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxMjE4MQor
KworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGVhbiBKYWNrc29uLgorKworKyAgICAgICAgUmVtb3Zl
IE9FU190ZXh0dXJlX2hhbGZfZmxvYXQgcmVxdWlyZW1lbnQgZm9yIGFkdmVydGlzaW5nCisrICAg
ICAgICBFWFRfY29sb3JfYnVmZmVyX2hhbGZfZmxvYXQgaW4gQU5HTEUuIFRoaXMgaXMgaW1wbGlj
aXQgaW4gRVMgMy4wLgorKworKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZm9y
bWF0dXRpbHNnbC5jcHA6CisrICAgICAgICAocng6Om5hdGl2ZWdsOjpCdWlsZEludGVybmFsRm9y
bWF0SW5mb01hcCk6CisrCisrMjAyMC0wNS0yMCAgS2VubmV0aCBSdXNzZWxsICA8a2JyQGNocm9t
aXVtLm9yZz4KKysKKysgICAgICAgIE9FU190ZXh0dXJlX2hhbGZfZmxvYXRfbGluZWFyIHVuYXZh
aWxhYmxlIG9uIFdlYkdMIDEuMCBvbiBpT1Mgd2l0aCBBTkdMRQorKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxMjE3MAorKworKyAgICAgICAgUmV2aWV3
ZWQgYnkgRGVhbiBKYWNrc29uLgorKworKyAgICAgICAgTm93IHRoYXQgRlAxNiBsdW1pbmFuY2Uv
YWxwaGEgdGV4dHVyZSBmb3JtYXRzIGFyZSBjb3JyZWN0bHkKKysgICAgICAgIGVtdWxhdGVkIG9u
IEVTIDMuMCwgYWR2ZXJ0aXNlIHRoZW0gYXMgZmlsdGVyYWJsZS4KKysKKysgICAgICAgICogc3Jj
L2xpYkFOR0xFL3JlbmRlcmVyL2dsL2Zvcm1hdHV0aWxzZ2wuY3BwOgorKyAgICAgICAgKHJ4Ojpu
YXRpdmVnbDo6QnVpbGRJbnRlcm5hbEZvcm1hdEluZm9NYXApOgorKworKzIwMjAtMDUtMjAgIEtl
bm5ldGggUnVzc2VsbCAgPGtickBjaHJvbWl1bS5vcmc+CisrCisrICAgICAgICBPRVNfdGV4dHVy
ZV9mbG9hdCAvIE9FU190ZXh0dXJlX2hhbGZfZmxvYXQgdW5hdmFpbGFibGUgaW4gV2ViR0wgMS4w
IG9uIGlPUyBTaW11bGF0b3Igd2l0aCBBTkdMRQorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIxMDUyNAorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGVh
biBKYWNrc29uLgorKworKyAgICAgICAgRW11bGF0ZSBMVU1JTkFOQ0UsIEFMUEhBIGFuZCBMVU1J
TkFOQ0VfQUxQSEEgZmxvYXRpbmctcG9pbnQKKysgICAgICAgIHRleHR1cmVzIG9uIHRvcCBvZiBS
RUQgLyBSRyB0ZXh0dXJlcyB3aGVuIHRoZSB1bmRlcmx5aW5nCisrICAgICAgICBPRVNfdGV4dHVy
ZV9mbG9hdC9oYWxmX2Zsb2F0IE9wZW5HTCBFUyBleHRlbnNpb25zIGFyZSB1bmF2YWlsYWJsZS4K
KysKKysgICAgICAgIFRoaXMgbWFrZXMgdGhlIGNvbmZvcm1hbmNlL2V4dGVuc2lvbnMvb2VzLXRl
eHR1cmV7LWhhbGZ9LWZsb2F0KgorKyAgICAgICAgdGVzdHMgcnVuIGFuZCBwYXNzIGluIHRoZSBp
T1MgU2ltdWxhdG9yLgorKworKyAgICAgICAgVGhpcyBjaGFuZ2UgaXMgYmVpbmcgcmV2aWV3ZWQg
dXBzdHJlYW0gaW4gdGhlIEFOR0xFIHJlcG9zaXRvcnkgYW5kCisrICAgICAgICBpcyBvbmx5IGJl
aW5nIHVwbG9hZGVkIGhlcmUgZm9yIHRlc3RpbmcgcHVycG9zZXMuIEl0IHdpbGwgYmUKKysgICAg
ICAgIHJvbGxlZCBpbiB3aXRoIHRoZSBuZXh0IEFOR0xFIHVwZGF0ZS4KKysKKysgICAgICAgICog
c3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL1RleHR1cmVHTC5jcHA6CisrICAgICAgICAocng6OlRl
eHR1cmVHTDo6c2V0U3dpenpsZSk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9n
bC9mb3JtYXR1dGlsc2dsLmNwcDoKKysgICAgICAgIChyeDo6bmF0aXZlZ2w6OkJ1aWxkSW50ZXJu
YWxGb3JtYXRJbmZvTWFwKToKKysgICAgICAgIChyeDo6bmF0aXZlZ2w6OklzTFVNQUZvcm1hdCk6
CisrICAgICAgICAocng6Om5hdGl2ZWdsOjpFbXVsYXRlTFVNQUZvcm1hdCk6CisrICAgICAgICAo
cng6Om5hdGl2ZWdsOjpFbXVsYXRlTFVNQSk6CisrICAgICAgICAocng6Om5hdGl2ZWdsOjpHZXRO
YXRpdmVJbnRlcm5hbEZvcm1hdCk6CisrICAgICAgICAocng6Om5hdGl2ZWdsOjpHZXROYXRpdmVG
b3JtYXQpOgorKyAgICAgICAgKHJ4OjpuYXRpdmVnbDo6R2V0TmF0aXZlVHlwZSk6CisrICAgICAg
ICAocng6Om5hdGl2ZWdsOjpHZXRUZXhJbWFnZUZvcm1hdCk6CisrICAgICAgICAocng6Om5hdGl2
ZWdsOjpHZXRUZXhTdWJJbWFnZUZvcm1hdCk6CisrCisrMjAyMC0wNS0xOCAgSmFtZXMgRGFycGlu
aWFuICA8amRhcnBpbmlhbkBjaHJvbWl1bS5vcmc+CisrCisrICAgICAgICBFbmFibGUgcmVnZW5l
cmF0ZVN0cnVjdE5hbWVzIHdvcmthcm91bmQgb24gaU9TCisrICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjEyMDU2CisrCisrICAgICAgICBSZXZpZXdlZCBi
eSBEZWFuIEphY2tzb24uCisrCisrICAgICAgICBUaGUgV2ViR0wgY29uZm9ybWFuY2UgdGVzdCBj
b25mb3JtYW5jZS9nbHNsL21pc2Mvc2hhZGVyLXN0cnVjdC1zY29wZS5odG1sCisrICAgICAgICB3
YXMgZmFpbGluZyBvbiBpT1MuIFRoZSB3b3JrYXJvdW5kIHRoYXQgZml4ZXMgdGhpcyB0ZXN0IHdh
cyBlbmFibGVkIG9ubHkgb24KKysgICAgICAgIGRlc2t0b3AgR0wsIGJ1dCBpdCdzIG5lY2Vzc2Fy
eSBmb3IgaU9TIGFzIHdlbGwuCisrCisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9n
bC9yZW5kZXJlcmdsX3V0aWxzLmNwcDoKKysgICAgICAgIChyeDo6bmF0aXZlZ2xfZ2w6OkluaXRp
YWxpemVGZWF0dXJlcyk6CisrCisrMjAyMC0wNS0xNCAgSmFtZXMgRGFycGluaWFuICA8amRhcnBp
bmlhbkBjaHJvbWl1bS5vcmc+CisrCisrICAgICAgICBSRUdSRVNTSU9OIChyMjU5NTg5KTogR29v
Z2xlIE1hcHMgYmFja2dyb3VuZCBsYXllciBmYWRlcyBvdXQgYW5kIGJhY2sgaW4KKysgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTA5OTIKKysKKysgICAg
ICAgIFJldmlld2VkIGJ5IERlYW4gSmFja3Nvbi4KKysKKysgICAgICAgIEFOR0xFIHJlbmRlcmlu
ZyBmZWVkYmFjayBsb29wIGRldGVjdGlvbiB3YXMgaW5jb3JyZWN0IGlmIGEgdGV4dHVyZSBhdHRh
Y2hlZAorKyAgICAgICAgdG8gYSBmcmFtZWJ1ZmZlciB3YXMgYWxzbyBib3VuZCB0byBhbiBhY3Rp
dmUgdGV4dHVyZSB1bml0LCBhbmQgdGhlbiB0aGF0IHRleHR1cmUKKysgICAgICAgIHVuaXQgYmVj
YW1lIGluYWN0aXZlIGJlY2F1c2UgYSBzYW1wbGVyIHVuaWZvcm0gd2FzIHNldC4KKysKKysgICAg
ICAgICogc3JjL2xpYkFOR0xFL0NvbnRleHQuY3BwOgorKyAgICAgICAgKGdsOjpDb250ZXh0Ojpv
blNhbXBsZXJVbmlmb3JtQ2hhbmdlKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL1N0YXRlLmNw
cDoKKysgICAgICAgIChnbDo6U3RhdGU6OnNldFRleHR1cmVJbmRleEluYWN0aXZlKToKKysgICAg
ICAgICogc3JjL2xpYkFOR0xFL1N0YXRlLmg6CisrCisrMjAyMC0wNS0xNCAgS2VubmV0aCBSdXNz
ZWxsICA8a2JyQGNocm9taXVtLm9yZz4KKysKKysgICAgICAgIFVwZGF0ZSBBTkdMRSB0byAyMDIw
LTAzLTI3CisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MjA5Njg5CisrCisrICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KKysKKysgICAgICAg
IFJlLWFwcGx5aW5nIHRoaXMgcGF0Y2ggbm93IHRoYXQgd2UgaGF2ZSBhIGZpeCBmb3IgMjEwOTky
LgorKworKyAgICAgICAgVXNlIHVwZGF0ZS1hbmdsZS5zaCBzY3JpcHQgYnkgSmFtZXMgRGFycGlu
aWFuIHRvIHJvbGwgQU5HTEUgdG8KKysgICAgICAgIGNvbW1pdCBiMzg3Y2U5Mzg5ZWRlNmE0ZWQz
YjgzMWFiMWI4MTg3OTI3ZmEyOTVmIGluCisrICAgICAgICBodHRwczovL2Nocm9taXVtLmdvb2ds
ZXNvdXJjZS5jb20vYW5nbGUvYW5nbGUgLgorKworKyAgICAgICAgY2hhbmdlcy5kaWZmIGhhcyBi
ZWVuIGF1dG8tdXBkYXRlZCB3aXRoIEFwcGxlJ3MgZGlmZnMgcmVsYXRpdmUgdG8KKysgICAgICAg
IHVwc3RyZWFtLiBObyBhZGRpdGlvbmFsIG1hbnVhbCBjaGFuZ2VzIGFyZSBtYWRlIGluIHRoaXMg
cm9sbC4KKysgICAgICAgIExvbmcgYXV0b2dlbmVyYXRlZCBmaWxlIGxpc3Qgb21pdHRlZC4KKysK
KysyMDIwLTA1LTA4ICBEYXZpZCBLaWx6ZXIgIDxkZGtpbHplckBhcHBsZS5jb20+CisrCisrICAg
ICAgICBSZW1vdmUgZW1wdHkgZGlyZWN0b3JpZXMgZnJvbSBmcm9tIHN2bi53ZWJraXQub3JnIHJl
cG9zaXRvcnkKKysgICAgICAgIDxodHRwczovL3dlYmtpdC5vcmcvYi8yMTE2NDQ+CisrCisrICAg
ICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KKysKKysgICAgICAgICogaW5jbHVkZS92dWxr
YW46IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9hbmRyb2lkX3N5c3RlbV9zZXR0aW5nczogUmVt
b3ZlZC4KKysgICAgICAgICogdGhpcmRfcGFydHkvZ2xtYXJrMjogUmVtb3ZlZC4KKysgICAgICAg
ICogdG9vbHMvZmxleC1iaXNvbjogUmVtb3ZlZC4KKysKKysyMDIwLTA1LTA3ICBKYW1lcyBEYXJw
aW5pYW4gIDxqZGFycGluaWFuQGNocm9taXVtLm9yZz4KKysKKysgICAgICAgIEZpeCBHb29nbGUg
TWFwcyByZW5kZXJpbmcgY29ycnVwdGlvbiBpbiBzaW11bGF0b3Igd2l0aCBBTkdMRQorKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxMTM5OAorKworKyAg
ICAgICAgZ2xSZWFkUGl4ZWxzIGNhbGwgbmVlZHMgdG8gcmVzcGVjdCB0aGUgcm93IHN0cmlkZSBv
ZiB0aGUgSU9TdXJmYWNlLgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgQWxleCBDaHJpc3RlbnNl
bi4KKysKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvSU9TdXJmYWNl
U3VyZmFjZUVBR0wuaDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wv
SU9TdXJmYWNlU3VyZmFjZUVBR0wubW06CisrICAgICAgICAocng6OklPU3VyZmFjZVN1cmZhY2VF
QUdMOjpJT1N1cmZhY2VTdXJmYWNlRUFHTCk6CisrICAgICAgICAocng6OklPU3VyZmFjZVN1cmZh
Y2VFQUdMOjpyZWxlYXNlVGV4SW1hZ2UpOgorKworKzIwMjAtMDUtMDcgIERlYW4gSmFja3NvbiAg
PGRpbm9AYXBwbGUuY29tPgorKworKyAgICAgICAgVXBkYXRlIEFOR0xFIHRvIDIwMjAtMDMtMjcK
KysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDk2ODkK
KysKKysgICAgICAgIFJldmVydGluZyByMjU5NTg5LiBJdCBjYXVzZWQKKysgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTA5OTIKKysKKysyMDIwLTA1LTA1
ICBTYWFtIEJhcmF0aSAgPHNiYXJhdGlAYXBwbGUuY29tPgorKworKyAgICAgICAgVW5yZXZpZXdl
ZCwgcmV2ZXJ0aW5nIHIyNjExNzYuCisrCisrICAgICAgICBJdCBicm9rZSB0aGUgYnVpbGQKKysK
KysgICAgICAgIFJldmVydGVkIGNoYW5nZXNldDoKKysKKysgICAgICAgICJbQU5HTEVdIERlY2xh
cmF0aW9ucyBzaG91bGQgbWF0Y2ggZGVmaW5pdGlvbnMiCisrICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjExNDEwCisrICAgICAgICBodHRwczovL3RyYWMu
d2Via2l0Lm9yZy9jaGFuZ2VzZXQvMjYxMTc2CisrCisrMjAyMC0wNS0wNSAgSm9uYXRoYW4gQmVk
YXJkICA8amJlZGFyZEBhcHBsZS5jb20+CisrCisrICAgICAgICBbQU5HTEVdIERlY2xhcmF0aW9u
cyBzaG91bGQgbWF0Y2ggZGVmaW5pdGlvbnMKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0yMTE0MTAKKysKKysgICAgICAgIFJldmlld2VkIGJ5IEFsZXgg
Q2hyaXN0ZW5zZW4uCisrCisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWds
L0Rpc3BsYXlFQUdMLmg6IFNraXAgZGVmaW5pdGlvbnMgZm9yIHBsYXRmb3JtcworKyAgICAgICAg
d2hlcmUgY2xhc3MgaXMgdW5kZWZpbmVkLgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVy
ZXIvZ2wvZWFnbC9EaXNwbGF5RUFHTC5tbToKKysgICAgICAgIChyeDo6RGlzcGxheUVBR0w6Omdl
bmVyYXRlQ29uZmlncyk6IEZ1bmN0aW9uIGlzIG5vdCBkZWZpbmVkIGZvciBmb3IgTWFjQ2F0YWx5
c3QuCisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0lPU3VyZmFjZVN1
cmZhY2VFQUdMLmg6IFNraXAgZGVmaW5pdGlvbnMgZm9yIHBsYXRmb3JtcworKyAgICAgICAgd2hl
cmUgY2xhc3MgaXMgdW5kZWZpbmVkLgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIv
Z2wvZWFnbC9JT1N1cmZhY2VTdXJmYWNlRUFHTC5tbToKKysgICAgICAgICogc3JjL2xpYkFOR0xF
L3JlbmRlcmVyL2dsL2VhZ2wvV2luZG93U3VyZmFjZUVBR0wuaDogU2tpcCBkZWZpbml0aW9ucyBm
b3IgcGxhdGZvcm1zCisrICAgICAgICB3aGVyZSBjbGFzcyBpcyB1bmRlZmluZWQuCisrICAgICAg
ICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL1dpbmRvd1N1cmZhY2VFQUdMLm1tOgor
KworKzIwMjAtMDQtMjggIENoYW5nU2VvayBPaCAgPGNoYW5nc2Vva0B3ZWJraXQub3JnPgorKwor
KyAgICAgICAgW0dUS10gRml4IGJ1aWxkIGZhaWx1cmVzIGZvciBBTkdMRV9XRUJHTCBhZnRlciBy
MjU5NTg5CisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MjExMTE2CisrCisrICAgICAgICBSZXZpZXdlZCBieSBBbGV4IENocmlzdGVuc2VuLgorKworKyAg
ICAgICAgVGhlIEFOR0xFX1dFQkdMIGlzIGJyb2tlbiBhZnRlciBBTkdMRSBpcyB1cGRhdGVkIGlu
IHIyNTk1ODkuIE1pc3Npbmcgc291cmNlcworKyAgICAgICAgc2hvdWxkIGJlIGFkZGVkIHRvIHRo
ZSBidWlsZCB0YXJnZXQuCisrCisrICAgICAgICAqIFBsYXRmb3JtR1RLLmNtYWtlOiBBZGQgbGli
YW5nbGVfZ2xfZWdsX3NvdXJjZXMgYW5kIGxpYmFuZ2xlX2dsX2VnbF9kbF9zb3VyY2VzLgorKwor
KzIwMjAtMDQtMjcgIERlYW4gSmFja3NvbiAgPGRpbm9AYXBwbGUuY29tPgorKworKyAgICAgICAg
VGVtcG9yYXJpbHkgc2tpcCBHTF9ERVBUSF9DT01QT05FTlQzMl9PRVMgcmVxdWlyZW1lbnQgZm9y
IGRlcHRoIHRleHR1cmVzIG9uIGlPUworKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIxMTA1NQorKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzYyNDEwNDk5
PgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIuCisrCisrICAgICAgICBBTkdM
RSByZXF1aXJlcyBHTF9ERVBUSF9DT01QT05FTlQzMl9PRVMgYmUgYXZhaWxhYmxlIGluIG9yZGVy
IHRvIGV4cG9zZSB0aGUKKysgICAgICAgIGRlcHRoIHRleHR1cmUgZXh0ZW5zaW9uLiBIb3dldmVy
LCB0aGlzIGZvcm1hdCBpcyBub3Qgc3VwcG9ydGVkIG9uIGlPUy4KKysgICAgICAgIFRlbXBvcmFy
aWx5IHJlbW92ZSB0aGlzIHJlc3RyaWN0aW9uIHdoaWxlIGludmVzdGlnYXRpbmcgb3RoZXIgYnVn
cy4KKysKKysgICAgICAgIFRoaXMgYWxzbyBhbGxvd3MgdXMgdG8gc2VlIHRoZSBmYWlsaW5nIHJl
c3VsdHMgaW4KKysgICAgICAgIGZhc3QvY2FudmFzL3dlYmdsL3dlYmdsLWRlcHRoLXRleHR1cmUu
aHRtbAorKyAgICAgICAgd2ViZ2wvMS4wLjMvY29uZm9ybWFuY2UvZXh0ZW5zaW9ucy93ZWJnbC1k
ZXB0aC10ZXh0dXJlLmh0bWwKKysKKysgICAgICAgICogc3JjL2xpYkFOR0xFL0NhcHMuY3BwOgor
KyAgICAgICAgKGdsOjpEZXRlcm1pbmVEZXB0aFRleHR1cmVBTkdMRVN1cHBvcnQpOgorKyAgICAg
ICAgKGdsOjpEZXRlcm1pbmVEZXB0aFRleHR1cmVPRVNTdXBwb3J0KToKKysKKysyMDIwLTA0LTI1
ICBEYXJpbiBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFtDb2NvYV0gRGVh
bCB3aXRoIGFub3RoZXIgcm91bmQgb2YgWGNvZGUgdXBncmFkZSBjaGVja3MKKysgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTEwMjcKKysKKysgICAgICAg
IFJldmlld2VkIGJ5IEFsZXhleSBQcm9za3VyeWFrb3YuCisrCisrICAgICAgICAqIEFOR0xFLnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2o6IEJ1bXAgdGhlIHVwZ3JhZGUgY2hlY2sgdmVyc2lvbi4K
KysgICAgICAgIEFkZCBhIGhhcm1sZXNzIGJhc2UgbG9jYWxpemF0aW9uLCByZW5hbWUgRW5nbGlz
aCBsb2NhbGl6YXRpb24gdG8gZW4sCisrICAgICAgICByZW1vdmUgSmFwYW5lc2UsIEZyZW5jaCwg
R2VybWFuOyB0aGlzIHByb2plY3QgY29udGFpbnMgbm90aGluZyBsb2NhbGl6ZWQuCisrCisrMjAy
MC0wNC0wOCAgVHJ1aXR0IFNhdmVsbCAgPHRzYXZlbGxAYXBwbGUuY29tPgorKworKyAgICAgICAg
VW5yZXZpZXdlZCwgcmV2ZXJ0aW5nIHIyNTk3MDguCisrCisrICAgICAgICBCcm9rZSB0aGUgaU9T
IGRldmljZSBCdWlsZAorKworKyAgICAgICAgUmV2ZXJ0ZWQgY2hhbmdlc2V0OgorKworKyAgICAg
ICAgIkVuYWJsZSB0aGUgdXNlIG9mIFhDQnVpbGQgYnkgZGVmYXVsdCBpbiBBcHBsZSBidWlsZHMi
CisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA5ODkw
CisrICAgICAgICBodHRwczovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvMjU5NzA4CisrCisr
MjAyMC0wNC0wOCAgS2VpdGggUm9sbGluICA8a3JvbGxpbkBhcHBsZS5jb20+CisrCisrICAgICAg
ICBFbmFibGUgdGhlIHVzZSBvZiBYQ0J1aWxkIGJ5IGRlZmF1bHQgaW4gQXBwbGUgYnVpbGRzCisr
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA5ODkwCisr
ICAgICAgICA8cmRhcjovL3Byb2JsZW0vNDQxODIwNzg+CisrCisrICAgICAgICBSZXZpZXdlZCBi
eSBEYXJpbiBBZGxlci4KKysKKysgICAgICAgIFN3aXRjaCBmcm9tIHRoZSAibGVnYWN5IiBYY29k
ZSBidWlsZCBzeXN0ZW0gdG8gdGhlICJuZXciIGJ1aWxkIHN5c3RlbQorKyAgICAgICAgKGFsc28g
a25vd24gYXMgIlhDQnVpbGQiKS4gU3dpdGNoaW5nIHRvIHRoZSBuZXcgc3lzdGVtIHNwZWVkcyB1
cAorKyAgICAgICAgYnVpbGRzIGJ5IGEgc21hbGwgcGVyY2VudGFnZSwgYmV0dGVyIHZhbGlkYXRl
cyBwcm9qZWN0cyBmb3IKKysgICAgICAgIGJ1aWxkLXJlbGF0ZWQgaXNzdWVzIChzdWNoIGFzIGRl
cGVuZGVuY3kgY3ljbGVzKSwgbGV0cyBXZWJLaXQgYmVuZWZpdAorKyAgICAgICAgZnJvbSBmdXR1
cmUgaW1wcm92ZW1lbnRzIGluIFhDQnVpbGQgc3VjaCBhcyB0aG9zZSBjb21pbmcgZnJvbSB0aGUK
KysgICAgICAgIHVuZGVybHlpbmcgbGxidWlsZCBvcGVuIHNvdXJjZSBwcm9qZWN0LCBhbmQgcHJl
cGFyZXMgdXMgZm9yIGFueSBvdGhlcgorKyAgICAgICAgdG9vbHMgYnVpbHQgZm9yIHRoaXMgbmV3
IGVjb3N5c3RlbS4KKysKKysgICAgICAgIFNwZWNpZmljIGNoYW5nZXM6CisrCisrICAgICAgICAt
IFJlbW92ZSBYY29kZSBwcm9qZWN0IGFuZCB3b3Jrc3BhY2Ugc2V0dGluZ3MgdGhhdCBzZWxlY3Rl
ZCB0aGUgQnVpbGQKKysgICAgICAgICAgc3lzdGVtLCBhbGxvd2luZyB0aGUgZGVmYXVsdCB0byB0
YWtlIGhvbGQgKHdoaWNoIGlzIGN1cnJlbnRseSB0aGUKKysgICAgICAgICAgTmV3IGJ1aWxkIHN5
c3RlbSkuCisrICAgICAgICAtIFVwZGF0ZWQgd2Via2l0ZGlycy5wbSB3aXRoIGEgdGVyc2VyIGNo
ZWNrIGZvciBYY29kZSB2ZXJzaW9uLgorKyAgICAgICAgLSBVcGRhdGUgYnVpbGQtd2Via2l0IGFu
ZCBNYWtlZmlsZS5zaGFyZWQgdG8gYmUgZXhwbGljaXQgd2hlbiB1c2luZworKyAgICAgICAgICB0
aGUgb2xkIGJ1aWxkIHN5c3RlbSAobm8gbG9uZ2VyIHRyZWF0IGl0IGFzIGEgZGVmYXVsdCBvciBm
YWxsLWJhY2sKKysgICAgICAgICAgY29uZmlndXJhdGlvbikuCisrICAgICAgICAtIFVwZGF0ZSB2
YXJpb3VzIHhjY29uZmlnIGZpbGVzIHNpbWlsYXJseSB0byB0cmVhdCB0aGUgZGVmYXVsdCBhcwor
KyAgICAgICAgICB1c2luZyB0aGUgbmV3IGJ1aWxkIHN5c3RlbS4KKysgICAgICAgIC0gVXBkYXRl
IHZhcmlvdXMgcG9zdC1wcm9jZXNzaW5nIGJ1aWxkIHN0ZXBzIHRvIGNoZWNrIGZvciBYY29kZSAx
MS40CisrICAgICAgICAgIGFuZCB0byBubyBsb25nZXIgdHJlYXQgdGhlIGRlZmF1bHQgYXMgdXNp
bmcgdGhlIG9sZCBidWlsZCBzeXN0ZW0uCisrCisrICAgICAgICAqIEFOR0xFLnhjb2RlcHJvai9w
cm9qZWN0LnBieHByb2o6CisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0FOR0xFLnhjY29uZmln
OgorKworKzIwMjAtMDQtMDYgIEtlbm5ldGggUnVzc2VsbCAgPGtickBjaHJvbWl1bS5vcmc+Cisr
CisrICAgICAgICBVcGRhdGUgQU5HTEUgdG8gMjAyMC0wMy0yNworKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwOTY4OQorKworKyAgICAgICAgUmV2aWV3
ZWQgYnkgRGFyaW4gQWRsZXIuCisrCisrICAgICAgICBVc2UgdXBkYXRlLWFuZ2xlLnNoIHNjcmlw
dCBieSBKYW1lcyBEYXJwaW5pYW4gdG8gcm9sbCBBTkdMRSB0bworKyAgICAgICAgY29tbWl0IGIz
ODdjZTkzODllZGU2YTRlZDNiODMxYWIxYjgxODc5MjdmYTI5NWYgaW4KKysgICAgICAgIGh0dHBz
Oi8vY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9hbmdsZS9hbmdsZSAuCisrCisrICAgICAgICBj
aGFuZ2VzLmRpZmYgaGFzIGJlZW4gYXV0by11cGRhdGVkIHdpdGggQXBwbGUncyBkaWZmcyByZWxh
dGl2ZSB0bworKyAgICAgICAgdXBzdHJlYW0uIE5vIGFkZGl0aW9uYWwgbWFudWFsIGNoYW5nZXMg
YXJlIG1hZGUgaW4gdGhpcyByb2xsLgorKyAgICAgICAgTG9uZyBhdXRvZ2VuZXJhdGVkIGZpbGUg
bGlzdCBvbWl0dGVkLgorKworKzIwMjAtMDQtMDMgIEtlbm5ldGggUnVzc2VsbCAgPGtickBjaHJv
bWl1bS5vcmc+CisrCisrICAgICAgICBGaXggYnVncyByZWxhdGVkIHRvIFZpZGVvVGV4dHVyZUNv
cGllckNWIGFuZCBBTkdMRSByb2xsIHNjcmlwdAorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIwOTk0MworKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGVh
biBKYWNrc29uLgorKworKyAgICAgICAgVXBkYXRlIHRoZSB1cGRhdGUtYW5nbGUuc2ggc2NyaXB0
IHRvIHRha2UgaW50byBhY2NvdW50IHRoZSBuZXcKKysgICAgICAgIHByb2NlZHVyZSBmb3IgZ2Vu
ZXJhdGluZyBBTkdMRSdzIGNvbW1pdCBJRCBoZWFkZXIgZmlsZS4gVGhpcworKyAgICAgICAgZW5h
YmxlcyBBTkdMRSByb2xscyBpbnRvIFdlYktpdCBhZ2Fpbi4KKysKKysgICAgICAgICogdXBkYXRl
LWFuZ2xlLnNoOgorKworKzIwMjAtMDQtMDMgIEtlaXRoIFJvbGxpbiAgPGtyb2xsaW5AYXBwbGUu
Y29tPgorKworKyAgICAgICAgRG8gbm90IGxpbmsgd2l0aCBPcGVuR0wgb24gQXBwbGUgcGxhdGZv
cm1zCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA5
OTQ2CisrICAgICAgICA8cmRhcjovL3Byb2JsZW0vNjEyMzc5NTY+CisrCisrICAgICAgICBSZXZp
ZXdlZCBieSBTYW0gV2VpbmlnLgorKworKyAgICAgICAgT3BlbkdMIGlzIG5vdCB1c2VkIGluIG91
ciBidWlsZCBvZiBBTkdMRS4gQXR0ZW1wdGluZyB0byBsaW5rIHdpdGggaXQKKysgICAgICAgIGNh
dXNlcyB3YXJuaW5ncywgd2hpY2ggY2FuIHR1cm4gaW50byBlcnJvcnMgaW4gc29tZSBjYXNlcyAo
aW4KKysgICAgICAgIHBhcnRpY3VsYXIsIHdoZW4gYnVpbGRpbmcgd2l0aCBYY29kZSdzICJuZXci
IGJ1aWxkIHN5c3RlbSkuCisrCisrICAgICAgICAqIEFOR0xFLnhjb2RlcHJvai9wcm9qZWN0LnBi
eHByb2o6CisrCisrMjAyMC0wNC0wMyAgRGF2aWQgS2lsemVyICA8ZGRraWx6ZXJAYXBwbGUuY29t
PgorKworKyAgICAgICAgW1hjb2RlXSBSZXBsYWNlIEFTQU5fT1RIRVJfQ0ZMQUdTIGFuZCBBU0FO
X09USEVSX0NQTFVTUExVU0ZMQUdTIHdpdGggJChpbmhlcml0ZWQpCisrICAgICAgICA8aHR0cHM6
Ly93ZWJraXQub3JnL2IvMjA5OTYzPgorKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzYxMjU3NTA0
PgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgQWxleGV5IFByb3NrdXJ5YWtvdi4KKysKKysgICAg
ICAgICogQU5HTEUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKysgICAgICAgICogQ29uZmln
dXJhdGlvbnMvQmFzZS54Y2NvbmZpZzoKKysgICAgICAgIC0gUmVtb3ZlIEFTQU5fT1RIRVJfQ0ZM
QUdTLCBBU0FOX09USEVSX0NQTFVTUExVU0ZMQUdTIGFuZAorKyAgICAgICAgICBBU0FOX09USEVS
X0xERkxBR1MuCisrCisrMjAyMC0wMy0yNyAgS2VubmV0aCBSdXNzZWxsICA8a2JyQGNocm9taXVt
Lm9yZz4KKysKKysgICAgICAgIFVzZSBBTkdMRV9yb2J1c3RfY2xpZW50X21lbW9yeSB0byByZXBs
YWNlIGZyYW1lYnVmZmVyL3RleHR1cmUgdmFsaWRhdGlvbgorKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwOTA5OAorKworKyAgICAgICAgUmV2aWV3ZWQg
YnkgRGVhbiBKYWNrc29uLgorKworKyAgICAgICAgSW5jb3Jwb3JhdGVkIGZpeCBmcm9tIGFuZ2xl
YnVnLmNvbS80NTA0IHRvIG1ha2UKKysgICAgICAgIGZhc3QvY2FudmFzL3dlYmdsL3VuaW5pdGlh
bGl6ZWQtdGVzdC5odG1sIHBhc3MuCisrCisrICAgICAgICBJbmNvcnBvcmF0ZWQgZml4IGZyb20g
YW5nbGVidWcuY29tLzQ1MTggdG8gbWFrZToKKysgICAgICAgICB3ZWJnbC8yLjAuMC9jb25mb3Jt
YW5jZTIvcmVuZGVyYnVmZmVycy9pbnZhbGlkYXRlLWZyYW1lYnVmZmVyLmh0bWwKKysgICAgICAg
ICB3ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvcmVuZGVyaW5nL2JsaXRmcmFtZWJ1ZmZlci10ZXN0
Lmh0bWwKKysgICAgICAgICB3ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvcmVuZGVyaW5nL3JnYi1m
b3JtYXQtc3VwcG9ydC5odG1sCisrICAgICAgICAgd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3N0
YXRlL2dsLW9iamVjdC1nZXQtY2FsbHMuaHRtbAorKyAgICAgICAgIHdlYmdsLzIuMC4wL2NvbmZv
cm1hbmNlMi90ZXh0dXJlcy9taXNjL3RleC1uZXctZm9ybWF0cy5odG1sCisrICAgICAgICBwYXNz
LgorKworKyAgICAgICAgKiBzcmMvbGliQU5HTEUvVGV4dHVyZS5jcHA6CisrICAgICAgICAoZ2w6
OlRleHR1cmU6OmNvcHlTdWJJbWFnZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OmVuc3VyZVN1
YkltYWdlSW5pdGlhbGl6ZWQpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wv
cmVuZGVyZXJnbF91dGlscy5jcHA6CisrICAgICAgICAocng6Om5hdGl2ZWdsX2dsOjpJbml0aWFs
aXplRmVhdHVyZXMpOgorKworKzIwMjAtMDMtMjEgIEtlaXRoIFJvbGxpbiAgPGtyb2xsaW5AYXBw
bGUuY29tPgorKworKyAgICAgICAgU2V0IElOU1RBTExIRFJTX1NDUklQVF9QSEFTRSBpbiBBTkdM
RSBidWlsZHMKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0yMDkzODQKKysgICAgICAgIDxyZGFyOi8vcHJvYmxlbS81OTUxMzM4MD4KKysKKysgICAgICAg
IFJldmlld2VkIGJ5IERhbiBCZXJuc3RlaW4uCisrCisrICAgICAgICBQcm9kdWN0aW9uIEFOR0xF
IGJ1aWxkcyBhcmUgdGVjaG5pY2FsbHkgbm9uLWNvbXBsaWFudC4gRHVyaW5nIHRoZQorKyAgICAg
ICAgaW5zdGFsbGhkcnMgYnVpbGQgYWN0aW9uLCBBTkdMRSBoZWFkZXJzIGFyZSBleHBvcnRlZCBi
dXQgYXJlIG5vdAorKyAgICAgICAgcG9zdC1wcm9jZXNzZWQuIFRoaXMgZGlmZmVycyBmcm9tIHRo
ZSBpbnN0YWxsIGJ1aWxkIGFjdGlvbiwgd2hlcmUgdGhlCisrICAgICAgICBleHBvcnRlZCBoZWFk
ZXJzICphcmUqIHBvc3QtcHJvY2Vzc2VkLiBUaGUgaGVhZGVycyBuZWVkIHRvIGJlIHRyZWF0ZWQK
KysgICAgICAgIGlkZW50aWNhbGx5IHVuZGVyIGJvdGggYWN0aW9ucy4gVGhlIHBvc3QtcHJvY2Vz
c2luZyBpcyBlbmFibGVkIGJ5CisrICAgICAgICBzZXR0aW5nIHRoZSBJTlNUQUxMSERSU19TQ1JJ
UFRfUEhBU0UgYnVpbGQgc2V0dGluZyB0byBZRVMuIE1vc3Qgb3RoZXIKKysgICAgICAgIFdlYktp
dCBwcm9qZWN0cyBhbHJlYWR5IHNldCB0aGlzIHNldHRpbmcgKHNlZSwgZm9yIGV4YW1wbGUsCisr
ICAgICAgICBodHRwczovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvMTU1Nzg3LAorKyAgICAg
ICAgaHR0cHM6Ly90cmFjLndlYmtpdC5vcmcvY2hhbmdlc2V0LzExMDMyNywgYW5kCisrICAgICAg
ICBodHRwczovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvNDE0MTcpLgorKworKyAgICAgICAg
KiBDb25maWd1cmF0aW9ucy9BTkdMRS54Y2NvbmZpZzoKKysKKysyMDIwLTAzLTE1ICBNaWNoYWVs
IENhdGFuemFybyAgPG1jYXRhbnphcm9AZ25vbWUub3JnPgorKworKyAgICAgICAgW0FOR0xFXSBT
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tbW9uL3V0aWxpdGllcy5jcHA6MTA6IHdhcm5p
bmc6IGlnbm9yaW5nICNwcmFnbWEgY2xhbmcgZGlhZ25vc3RpYyBbLVd1bmtub3duLXByYWdtYXNd
CisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA5MDE0
CisrCisrICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KKysKKysgICAgICAgIFNpbGVu
Y2UgY29tcGlsZXIgd2FybmluZy4KKysKKysgICAgICAgICogY2hhbmdlcy5kaWZmOgorKyAgICAg
ICAgKiBzcmMvY29tbW9uL3V0aWxpdGllcy5jcHA6CisrCisrMjAyMC0wMy0xNSAgTWljaGFlbCBD
YXRhbnphcm8gIDxtY2F0YW56YXJvQGdub21lLm9yZz4KKysKKysgICAgICAgIFtBTkdMRV0gU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL0Rpc3BsYXkuaDoyMjE6NzM6IHdhcm5p
bmc6IGltcGxpY2l0bHktZGVjbGFyZWQg4oCYZWdsOjpBdHRyaWJ1dGVNYXAmIGVnbDo6QXR0cmli
dXRlTWFwOjpvcGVyYXRvcj0oY29uc3QgZWdsOjpBdHRyaWJ1dGVNYXAmKeKAmSBpcyBkZXByZWNh
dGVkIFstV2RlcHJlY2F0ZWQtY29weV0KKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMDkwMTUKKysKKysgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFk
bGVyLgorKworKyAgICAgICAgU3VwcHJlc3MgY29tcGlsZXIgd2FybmluZy4gSWYgdGhpcyB3ZXJl
IFdlYktpdCBjb2RlLCBJIG1pZ2h0IHRha2UgdGhlIHRpbWUgdG8gZml4IGl0LCBidXQKKysgICAg
ICAgIHdpdGggdGhpcmQtcGFydHkgY29kZSBpdCdzIHByb2JhYmx5IGJlc3QgdG8ganVzdCB0dXJu
IG9mZiB3YXJuaW5ncyB0aGF0IHVwc3RyZWFtIGlzIG5vdAorKyAgICAgICAgdXNpbmcuCisrCisr
ICAgICAgICAqIENNYWtlTGlzdHMudHh0OgorKworKzIwMjAtMDMtMDIgIEFsYW4gQ29vbiAgPGFs
YW5jb29uQGFwcGxlLmNvbT4KKysKKysgICAgICAgIEFkZCBuZXcgTWFjIHRhcmdldCBudW1iZXJz
CisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA4Mzk4
CisrCisrICAgICAgICBSZXZpZXdlZCBieSBBbGV4ZXkgUHJvc2t1cnlha292LgorKworKyAgICAg
ICAgKiBDb25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnOgorKyAgICAgICAgKiBDb25maWd1cmF0
aW9ucy9EZWJ1Z1JlbGVhc2UueGNjb25maWc6CisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL1Zl
cnNpb24ueGNjb25maWc6CisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL1dlYktpdFRhcmdldENv
bmRpdGlvbmFscy54Y2NvbmZpZzoKKysKKysyMDIwLTAyLTEyICBNaWNoYWVsIENhdGFuemFybyAg
PG1jYXRhbnphcm9AZ25vbWUub3JnPgorKworKyAgICAgICAgTXVsdGlwbGUgR0NDIDEwIGJ1aWxk
IGZhaWx1cmVzIGluIEFOR0xFCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MjA3MzY1CisrCisrICAgICAgICBSZXZpZXdlZCBieSBDYXJsb3MgQWxiZXJ0
byBMb3BleiBQZXJlei4KKysKKysgICAgICAgICogY2hhbmdlcy5kaWZmOiBVcGRhdGVkLgorKyAg
ICAgICAgKiBpbmNsdWRlL3BsYXRmb3JtL1BsYXRmb3JtLmg6IEFkZCBtaXNzaW5nICNpbmNsdWRl
IHRvIGdldCBzaXplX3QuCisrICAgICAgICAqIHNyYy9jb21tb24vUGFja2VkRW51bXMuaDogUmVt
b3ZlIHByb2JsZW1hdGljIGNvbnN0X2Nhc3RzLgorKworKzIwMjAtMDItMTIgIERlYW4gSmFja3Nv
biAgPGRpbm9AYXBwbGUuY29tPgorKworKyAgICAgICAgQU5HTEUgaGFzIHVudXNlZCBiaXNvbiBh
bmQgZ2xtYXJrMiBjb2RlCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MjA3NTk3CisrICAgICAgICByZGFyOi8vNTkzNjE0NjAKKysKKysgICAgICAgIFJl
dmlld2VkIGJ5IE1hY2llaiBTdGFjaG93aWFrLgorKworKyAgICAgICAgUmVtb3ZlIHNvbWUgdW51
c2VkIGZpbGVzLgorKworKyAgICAgICAgKiBjaGFuZ2VzLmRpZmY6CisrICAgICAgICAqIHNyYy90
ZXN0cy9wZXJmX3Rlc3RzL2dsbWFyazJCZW5jaG1hcmsuY3BwOiBSZW1vdmVkLgorKyAgICAgICAg
KiB0aGlyZF9wYXJ0eS9nbG1hcmsyL0JVSUxELmduOiBSZW1vdmVkLgorKyAgICAgICAgKiB0aGly
ZF9wYXJ0eS9nbG1hcmsyL1JFQURNRS5hbmdsZTogUmVtb3ZlZC4KKysgICAgICAgICogdG9vbHMv
ZmxleC1iaXNvbi9SRUFETUUubWQ6IFJlbW92ZWQuCisrICAgICAgICAqIHRvb2xzL2ZsZXgtYmlz
b24vbGludXgvYmlzb24uc2hhMTogUmVtb3ZlZC4KKysgICAgICAgICogdG9vbHMvZmxleC1iaXNv
bi9saW51eC9mbGV4LnNoYTE6IFJlbW92ZWQuCisrICAgICAgICAqIHRvb2xzL2ZsZXgtYmlzb24v
dGhpcmRfcGFydHkvLmdpdGF0dHJpYnV0ZXM6IFJlbW92ZWQuCisrICAgICAgICAqIHRvb2xzL2Zs
ZXgtYmlzb24vdGhpcmRfcGFydHkvbTRzdWdhci9MSUNFTlNFOiBSZW1vdmVkLgorKyAgICAgICAg
KiB0b29scy9mbGV4LWJpc29uL3RoaXJkX3BhcnR5L200c3VnYXIvUkVBRE1FLmNocm9taXVtOiBS
ZW1vdmVkLgorKyAgICAgICAgKiB0b29scy9mbGV4LWJpc29uL3RoaXJkX3BhcnR5L200c3VnYXIv
Zm9yZWFjaC5tNDogUmVtb3ZlZC4KKysgICAgICAgICogdG9vbHMvZmxleC1iaXNvbi90aGlyZF9w
YXJ0eS9tNHN1Z2FyL200c3VnYXIubTQ6IFJlbW92ZWQuCisrICAgICAgICAqIHRvb2xzL2ZsZXgt
Ymlzb24vdGhpcmRfcGFydHkvc2tlbGV0b25zL0xJQ0VOU0U6IFJlbW92ZWQuCisrICAgICAgICAq
IHRvb2xzL2ZsZXgtYmlzb24vdGhpcmRfcGFydHkvc2tlbGV0b25zL1JFQURNRS5jaHJvbWl1bTog
UmVtb3ZlZC4KKysgICAgICAgICogdG9vbHMvZmxleC1iaXNvbi90aGlyZF9wYXJ0eS9za2VsZXRv
bnMvYmlzb24ubTQ6IFJlbW92ZWQuCisrICAgICAgICAqIHRvb2xzL2ZsZXgtYmlzb24vdGhpcmRf
cGFydHkvc2tlbGV0b25zL2MtbGlrZS5tNDogUmVtb3ZlZC4KKysgICAgICAgICogdG9vbHMvZmxl
eC1iaXNvbi90aGlyZF9wYXJ0eS9za2VsZXRvbnMvYy5tNDogUmVtb3ZlZC4KKysgICAgICAgICog
dG9vbHMvZmxleC1iaXNvbi90aGlyZF9wYXJ0eS9za2VsZXRvbnMveWFjYy5jOiBSZW1vdmVkLgor
KyAgICAgICAgKiB0b29scy9mbGV4LWJpc29uL3VwZGF0ZV9mbGV4X2Jpc29uX2JpbmFyaWVzLnB5
OiBSZW1vdmVkLgorKyAgICAgICAgKiB0b29scy9mbGV4LWJpc29uL3dpbmRvd3MvYmlzb24uZXhl
LnNoYTE6IFJlbW92ZWQuCisrICAgICAgICAqIHRvb2xzL2ZsZXgtYmlzb24vd2luZG93cy9mbGV4
LmV4ZS5zaGExOiBSZW1vdmVkLgorKyAgICAgICAgKiB0b29scy9mbGV4LWJpc29uL3dpbmRvd3Mv
bTQuZXhlLnNoYTE6IFJlbW92ZWQuCisrICAgICAgICAqIHRvb2xzL2ZsZXgtYmlzb24vd2luZG93
cy9tc3lzLTIuMC5kbGwuc2hhMTogUmVtb3ZlZC4KKysgICAgICAgICogdG9vbHMvZmxleC1iaXNv
bi93aW5kb3dzL21zeXMtaWNvbnYtMi5kbGwuc2hhMTogUmVtb3ZlZC4KKysgICAgICAgICogdG9v
bHMvZmxleC1iaXNvbi93aW5kb3dzL21zeXMtaW50bC04LmRsbC5zaGExOiBSZW1vdmVkLgorKwor
KzIwMjAtMDItMDkgIEtlaXRoIFJvbGxpbiAgPGtyb2xsaW5AYXBwbGUuY29tPgorKworKyAgICAg
ICAgUmUtZW5hYmxlIExUTyBmb3IgQVJNIGJ1aWxkcworKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwNzQwMgorKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVt
LzQ5MTkwNzY3PgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgU2FtIFdlaW5pZy4KKysKKysgICAg
ICAgIEJ1ZyAxOTA3NTggcmUtZW5hYmxlZCBMVE8gZm9yIFByb2R1Y3Rpb24gYnVpbGRzIGZvciB4
ODYtZmFtaWx5IENQVXMuCisrICAgICAgICBFbmFibGluZyBpdCBmb3IgQVJNIHdhcyBsZWZ0IG91
dCBkdWUgdG8gYSBjb21waWxlciBpc3N1ZS4gVGhhdCBpc3N1ZQorKyAgICAgICAgaGFzIGJlZW4g
Zml4ZWQsIGFuZCBzbyBub3cgd2UgY2FuIHJlLWVuYWJsZSBMVE8gZm9yIEFSTS4KKysKKysgICAg
ICAgICogQ29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZzoKKysKKysyMDIwLTAyLTA3ICBLZW5u
ZXRoIFJ1c3NlbGwgIDxrYnJAY2hyb21pdW0ub3JnPgorKworKyAgICAgICAgVHJ5IGFkZGluZyBn
bEJpbmRGcmFtZWJ1ZmZlciBmbHVzaCB3b3JrYXJvdW5kIHRvIEFOR0xFIGFzIHJlbWVkeSBmb3Ig
Zmxha3kgV2ViR0wgdGVzdHMKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0yMDY2MjUKKysKKysgICAgICAgIFJldmlld2VkIGJ5IERlYW4gSmFja3Nvbi4K
KysKKysgICAgICAgICogaW5jbHVkZS9wbGF0Zm9ybS9GZWF0dXJlc0dMLmg6CisrICAgICAgICAq
IHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9TdGF0ZU1hbmFnZXJHTC5jcHA6CisrICAgICAgICAo
cng6OlN0YXRlTWFuYWdlckdMOjpiaW5kRnJhbWVidWZmZXIpOgorKyAgICAgICAgKiBzcmMvbGli
QU5HTEUvcmVuZGVyZXIvZ2wvcmVuZGVyZXJnbF91dGlscy5jcHA6CisrICAgICAgICAocng6Om5h
dGl2ZWdsX2dsOjpJbml0aWFsaXplRmVhdHVyZXMpOgorKworKzIwMjAtMDItMDUgIERlYW4gSmFj
a3NvbiAgPGRpbm9AYXBwbGUuY29tPgorKworKyAgICAgICAgRml4IE1hY0NhdGFseXN0IGJ1aWxk
LgorKworKyAgICAgICAgKiBzcmMvbGliQU5HTEUvdmFsaWRhdGlvbkVHTC5jcHA6CisrICAgICAg
ICAoZWdsOjpWYWxpZGF0ZUNyZWF0ZVBidWZmZXJGcm9tQ2xpZW50QnVmZmVyKToKKysKKysyMDIw
LTAyLTA0ICBKYW1lcyBEYXJwaW5pYW4gIDxqZGFycGluaWFuQGNocm9taXVtLm9yZz4KKysKKysg
ICAgICAgIFVwZGF0ZSBBTkdMRQorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTIwNjMxOAorKworKyAgICAgICAgU2V2ZXJhbCBpbXBvcnRhbnQgY2hhbmdl
cyB0byBmaXggbGF5b3V0IHRlc3QgZmFpbHVyZXMgYW5kIHRpbWVvdXRzIGluIHRoaXMgdXBkYXRl
LgorKyAgICAgICAgLSBNYWRlIGV4cGVuc2l2ZSB2YWxpZGF0aW9uIG5vbi1kZWZhdWx0IGluIGRl
YnVnIG1vZGUgdG8gcmVkdWNlIHRpbWVvdXRzLgorKyAgICAgICAgLSBPcHRpbWl6ZSBkaXNhYmxp
bmcgQVJCX3RleHR1cmVfcmVjdGFuZ2xlIHRvIG1ha2Ugc2hhZGVyIGNvbXBpbGF0aW9uIG11Y2gg
ZmFzdGVyLgorKyAgICAgICAgLSBGbHVzaCBiZWZvcmUgdGV4dHVyZSBkZWxldGlvbiB0byB3b3Jr
IGFyb3VuZCBNYWMgSW50ZWwgZHJpdmVyIGJ1Zy4KKysKKysgICAgICAgIFJldmlld2VkIGJ5IERl
YW4gSmFja3Nvbi4KKysKKysgICAgICAgICogQU5HTEUucGxpc3Q6IHVwZGF0ZSBjb21taXQgaGFz
aAorKyAgICAgICAgKiBBTkdMRS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOiBBZGQvcmVtb3Zl
IGZpbGVzCisrICAgICAgICAqIENvbXBpbGVyLmNtYWtlOiBUcmFuc2xhdGVkIGZyb20gY29tcGls
ZXIuZ25pCisrICAgICAgICAqIEdMRVN2Mi5jbWFrZTogVHJhbnNsYXRlZCBmcm9tIGxpYkdMRVN2
Mi5nbmkKKysgICAgICAgICogY2hhbmdlcy5kaWZmOiBOb3cgbGlzdHMgYWxsIGNoYW5nZXMgZnJv
bSB1cHN0cmVhbS4KKysgICAgICAgICogdXBkYXRlLWFuZ2xlLnNoOiBEaWZmIGNvbW1hbmQgd2Fz
IHdyb25nLgorKyAgICAgICAgKiBQbHVzIGEgd2hvbGUgbG90IG9mIGNoYW5nZXMgZnJvbSB1cHN0
cmVhbS4KKysKKysyMDIwLTAxLTMwICBKYW1lcyBEYXJwaW5pYW4gIDxqZGFycGluaWFuQGNocm9t
aXVtLm9yZz4KKysKKysgICAgICAgIFVwZGF0ZSBBTkdMRQorKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwNjMxOAorKworKyAgICAgICAgVGFrZSB0d28h
CisrCisrICAgICAgICBTZXZlcmFsIGltcG9ydGFudCBjaGFuZ2VzIHRvIGZpeCBsYXlvdXQgdGVz
dCBmYWlsdXJlcyBhbmQgdGltZW91dHMgaW4gdGhpcyB1cGRhdGUuCisrICAgICAgICAtIE1hZGUg
ZXhwZW5zaXZlIHZhbGlkYXRpb24gbm9uLWRlZmF1bHQgaW4gZGVidWcgbW9kZSB0byByZWR1Y2Ug
dGltZW91dHMuCisrICAgICAgICAtIE9wdGltaXplIGRpc2FibGluZyBBUkJfdGV4dHVyZV9yZWN0
YW5nbGUgdG8gbWFrZSBzaGFkZXIgY29tcGlsYXRpb24gbXVjaCBmYXN0ZXIuCisrICAgICAgICAt
IEZsdXNoIGJlZm9yZSB0ZXh0dXJlIGRlbGV0aW9uIHRvIHdvcmsgYXJvdW5kIE1hYyBJbnRlbCBk
cml2ZXIgYnVnLgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGVhbiBKYWNrc29uLgorKworKyAg
ICAgICAgKiBBTkdMRS5wbGlzdDogdXBkYXRlIGNvbW1pdCBoYXNoCisrICAgICAgICAqIEFOR0xF
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6IEFkZC9yZW1vdmUgZmlsZXMKKysgICAgICAgICog
Q29tcGlsZXIuY21ha2U6IFRyYW5zbGF0ZWQgZnJvbSBjb21waWxlci5nbmkKKysgICAgICAgICog
R0xFU3YyLmNtYWtlOiBUcmFuc2xhdGVkIGZyb20gbGliR0xFU3YyLmduaQorKyAgICAgICAgKiBj
aGFuZ2VzLmRpZmY6IE5vdyBsaXN0cyBhbGwgY2hhbmdlcyBmcm9tIHVwc3RyZWFtLgorKyAgICAg
ICAgKiB1cGRhdGUtYW5nbGUuc2g6IERpZmYgY29tbWFuZCB3YXMgd3JvbmcuCisrICAgICAgICAq
IFBsdXMgYSB3aG9sZSBsb3Qgb2YgY2hhbmdlcyBmcm9tIHVwc3RyZWFtLgorKworKzIwMjAtMDEt
MjIgIEphbWVzIERhcnBpbmlhbiAgPGpkYXJwaW5pYW5AY2hyb21pdW0ub3JnPgorKworKyAgICAg
ICAgVXBkYXRlIEFOR0xFCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MjA2MzE4CisrCisrICAgICAgICBTZXZlcmFsIGltcG9ydGFudCBjaGFuZ2VzIHRv
IGZpeCBsYXlvdXQgdGVzdCBmYWlsdXJlcyBhbmQgdGltZW91dHMgaW4gdGhpcyB1cGRhdGUuCisr
ICAgICAgICAtIE1hZGUgZXhwZW5zaXZlIHZhbGlkYXRpb24gbm9uLWRlZmF1bHQgaW4gZGVidWcg
bW9kZSB0byByZWR1Y2UgdGltZW91dHMuCisrICAgICAgICAtIE9wdGltaXplIGRpc2FibGluZyBB
UkJfdGV4dHVyZV9yZWN0YW5nbGUgdG8gbWFrZSBzaGFkZXIgY29tcGlsYXRpb24gbXVjaCBmYXN0
ZXIuCisrICAgICAgICAtIEZsdXNoIGJlZm9yZSB0ZXh0dXJlIGRlbGV0aW9uIHRvIHdvcmsgYXJv
dW5kIE1hYyBJbnRlbCBkcml2ZXIgYnVnLgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGVhbiBK
YWNrc29uLgorKworKyAgICAgICAgKiBBTkdMRS5wbGlzdDogdXBkYXRlIGNvbW1pdCBoYXNoCisr
ICAgICAgICAqIEFOR0xFLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6IEFkZC9yZW1vdmUgZmls
ZXMKKysgICAgICAgICogQ29tcGlsZXIuY21ha2U6IFRyYW5zbGF0ZWQgZnJvbSBjb21waWxlci5n
bmkKKysgICAgICAgICogR0xFU3YyLmNtYWtlOiBUcmFuc2xhdGVkIGZyb20gbGliR0xFU3YyLmdu
aQorKyAgICAgICAgKiBjaGFuZ2VzLmRpZmY6IE5vdyBsaXN0cyBhbGwgY2hhbmdlcyBmcm9tIHVw
c3RyZWFtLgorKyAgICAgICAgKiB1cGRhdGUtYW5nbGUuc2g6IERpZmYgY29tbWFuZCB3YXMgd3Jv
bmcuCisrICAgICAgICAqIFBsdXMgYSB3aG9sZSBsb3Qgb2YgY2hhbmdlcyBmcm9tIHVwc3RyZWFt
LgorKworKzIwMjAtMDEtMjIgIEphbWVzIERhcnBpbmlhbiAgPGpkYXJwaW5pYW5AY2hyb21pdW0u
b3JnPgorKworKyAgICAgICAgUkVHUkVTU0lPTiAocjI1MzkyNik6IHdlYmdsLzEuMC4zL2NvbmZv
cm1hbmNlL3JlbmRlcmluZy9tYW55LWRyYXctY2FsbHMuaHRtbCBpcyBtdWNoIHNsb3dlciwgdGlt
ZXMgb3V0IGluIGRlYnVnCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MjA1NjY4CisrCisrICAgICAgICBEaXNhYmxlIGFzc2VydHMgd2hlbiBjb21waWxp
bmcgQU5HTEUgaW4gcmVsZWFzZSBtb2RlIGJ5IGRlZmluaW5nCisrICAgICAgICBOREVCVUcuCisr
CisrICAgICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisrCisrICAgICAgICAqIENvbmZp
Z3VyYXRpb25zL0FOR0xFLnhjY29uZmlnOgorKworKzIwMjAtMDEtMTQgIERlYW4gSmFja3NvbiAg
PGRpbm9AYXBwbGUuY29tPgorKworKyAgICAgICAgQnVpbGQgQU5HTEUgYXMgYSBkeW5hbWljIGxp
YnJhcnkKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MDQ3MDgKKysgICAgICAgIHJkYXI6Ly81NzM0OTM4NAorKworKyAgICAgICAgUm9sbGluZyB0aGlz
IG91dCBmb3IgdGhlIDJuZCB0aW1lLgorKworKyAgICAgICAgLSBpdCBjYXVzZWQgaXNzdWVzIHdp
dGggdGhlIHNoYXJlZCBkeWxkIGNhY2hlLCBiZWNhdXNlIHRoZQorKyAgICAgICAgY2FjaGUgZG9l
c24ndCBrbm93IHRvIGluY2x1ZGUgdGhlIGxpYmFyeSB1bnRpbCBpdCBhbHJlYWR5CisrICAgICAg
ICBleGlzdHMgaW4gdGhlIGJ1aWxkCisrICAgICAgICAtIHByb2JhYmx5IHJlbGF0ZWQgdG8gdGhl
IGFib3ZlLCB3ZSBzYXcgc29tZSBwZXJmb3JtYW5jZQorKyAgICAgICAgcmVncmVzc2lvbnMgZGly
ZWN0bHkgcmVsYXRlZCB0byB0aGlzIGNoYW5nZQorKworKyAgICAgICAgKiBBTkdMRS54Y29kZXBy
b2ovcHJvamVjdC5wYnhwcm9qOgorKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9BTkdMRS54Y2Nv
bmZpZzoKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZzoKKysgICAgICAg
ICogQ29uZmlndXJhdGlvbnMvRGVidWdSZWxlYXNlLnhjY29uZmlnOgorKyAgICAgICAgKiBpbmNs
dWRlL0NNYWtlTGlzdHMudHh0OgorKyAgICAgICAgKiBpbmNsdWRlL0dMU0xBTkcvU2hhZGVyTGFu
Zy5oOgorKyAgICAgICAgKiBpbmNsdWRlL0dMU0xBTkcvU2hhZGVyVmFycy5oOgorKyAgICAgICAg
KiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0Rpc3BsYXlDR0wubW06CisrICAgICAgICAo
cng6OkRpc3BsYXlDR0w6OmlzVmFsaWROYXRpdmVXaW5kb3cgY29uc3QpOgorKyAgICAgICAgKiBz
cmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL1dpbmRvd1N1cmZhY2VDR0wubW06CisrICAgICAg
ICAocng6OldpbmRvd1N1cmZhY2VDR0w6OldpbmRvd1N1cmZhY2VDR0wpOgorKyAgICAgICAgKHJ4
OjpXaW5kb3dTdXJmYWNlQ0dMOjp+V2luZG93U3VyZmFjZUNHTCk6CisrICAgICAgICAqIHNyYy9s
aWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0Rpc3BsYXlFQUdMLm1tOgorKyAgICAgICAgKHJ4OjpE
aXNwbGF5RUFHTDo6dGVybWluYXRlKToKKysgICAgICAgIChyeDo6RGlzcGxheUVBR0w6OmlzVmFs
aWROYXRpdmVXaW5kb3cgY29uc3QpOgorKyAgICAgICAgKHJ4OjpXb3JrZXJDb250ZXh0RUFHTDo6
fldvcmtlckNvbnRleHRFQUdMKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2ds
L2VhZ2wvV2luZG93U3VyZmFjZUVBR0wubW06CisrICAgICAgICAocng6OldpbmRvd1N1cmZhY2VF
QUdMOjpXaW5kb3dTdXJmYWNlRUFHTCk6CisrICAgICAgICAocng6OldpbmRvd1N1cmZhY2VFQUdM
Ojp+V2luZG93U3VyZmFjZUVBR0wpOgorKworKzIwMjAtMDEtMTQgIEtlbm5ldGggUnVzc2VsbCAg
PGtickBjaHJvbWl1bS5vcmc+CisrCisrICAgICAgICBOZWVkIHdvcmthcm91bmQgZm9yIGNyYXNo
IGluIEludGVsIE9wZW5HTCBkcml2ZXIgcmVsYXRlZCB0byB0ZXh0dXJlIGNvcHlpbmcgZmVlZGJh
Y2sgbG9vcHMKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0yMDU4NDMKKysKKysgICAgICAgIFJlbW92ZSBBTkdMRSB3b3JrYXJvdW5kIGludHJvZHVjZWQg
aW4gYnVnIDIwNTcwNywgYXMgaXQgd2FzCisrICAgICAgICBkaXNjb3ZlcmVkIHRvIGJlIGluY29t
cGxldGUsIGFuZCB3YXMgbmV2ZXIgdXBzdHJlYW1lZC4gVGhlIGNvcnJlY3QKKysgICAgICAgIHdv
cmthcm91bmQgd2lsbCBiZSBpbnRlZ3JhdGVkIGluIHRoZSBuZXh0IEFOR0xFIHJvbGwuCisrCisr
ICAgICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisrCisrICAgICAgICAqIGluY2x1ZGUv
cGxhdGZvcm0vRmVhdHVyZXNHTC5oOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIv
Z2wvU3RhdGVNYW5hZ2VyR0wuY3BwOgorKyAgICAgICAgKHJ4OjpTdGF0ZU1hbmFnZXJHTDo6Ymlu
ZEZyYW1lYnVmZmVyKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL3JlbmRl
cmVyZ2xfdXRpbHMuY3BwOgorKyAgICAgICAgKHJ4OjpuYXRpdmVnbF9nbDo6SW5pdGlhbGl6ZUZl
YXR1cmVzKToKKysKKysyMDIwLTAxLTA4ICBLZW5uZXRoIFJ1c3NlbGwgIDxrYnJAY2hyb21pdW0u
b3JnPgorKworKyAgICAgICAgUmVtb3ZlIHNvbWUgI2lmZGVmcyByZWxhdGVkIHRvIGlPUyBwb3J0
IG9mIEFOR0xFCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MjA1NzgxCisrCisrICAgICAgICBTaW5jZSB0aGUgcG9ydCB0byB0aGUgaU9TIFNpbXVsYXRv
ciBpbgorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIw
NTYxOCAsIHRoZXNlICNpZmRlZnMKKysgICAgICAgIHNob3VsZCBubyBsb25nZXIgYmUgbmVlZGVk
LgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGVhbiBKYWNrc29uLgorKworKyAgICAgICAgKiBz
cmMvY29tbW9uL1BhY2tlZEVudW1zLmNwcDoKKysgICAgICAgIChlZ2xfZ2w6OkVHTFRleHR1cmVU
YXJnZXRUb1RleHR1cmVUeXBlKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3ZhbGlkYXRpb25F
UzIuY3BwOgorKyAgICAgICAgKGdsOjpWYWxpZGF0ZUZyYW1lYnVmZmVyVGV4dHVyZTJEKToKKysK
KysyMDIwLTAxLTA1ICBLZW5uZXRoIFJ1c3NlbGwgIDxrYnJAY2hyb21pdW0ub3JnPgorKworKyAg
ICAgICAgUkVHUkVTU0lPTiAocjI1MzkyNik6IEZsYWt5IGNyYXNoZXMgb24gd2ViZ2wvMS4wLjMv
Y29uZm9ybWFuY2UvdGV4dHVyZXMvdGV4dHVyZS1jb3B5aW5nLWZlZWRiYWNrLWxvb3BzLmh0bWwg
YW5kIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlL3RleHR1cmVzL21pc2MvdGV4dHVyZS1jb3B5aW5n
LWZlZWRiYWNrLWxvb3BzLmh0bWwKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0yMDU3MDcKKysKKysgICAgICAgIFdvcmsgYXJvdW5kIGJ1Z3MgaW4gSW50
ZWwncyBncmFwaGljcyBkcml2ZXIgd2hlcmUgb3BlcmF0aW9ucyBjYW4KKysgICAgICAgIGJlIGlu
Y29ycmVjdGx5IHJlb3JkZXJlZCBhY3Jvc3MgZ2xCaW5kRnJhbWVidWZmZXIgY2FsbHMgYnkKKysg
ICAgICAgIGZsdXNoaW5nIGJlZm9yZS9hZnRlciB0aGVzZSBjYWxscy4gQ29uY2x1c2l2ZWx5IGFk
ZHJlc3NlcyB0aGlzCisrICAgICAgICBjcmFzaDsgbWF5IGFsc28gYWRkcmVzcyBvdGhlciBsYXlv
dXQgdGVzdCBmbGFraW5lc3Mgc2VlbiB3aGVuCisrICAgICAgICBzd2l0Y2hpbmcgdG8gQU5HTEUg
YmFja2VuZCBmb3IgV2ViR0wuCisrCisrICAgICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24u
CisrCisrICAgICAgICAqIGluY2x1ZGUvcGxhdGZvcm0vRmVhdHVyZXNHTC5oOgorKyAgICAgICAg
KiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvU3RhdGVNYW5hZ2VyR0wuY3BwOgorKyAgICAgICAg
KHJ4OjpTdGF0ZU1hbmFnZXJHTDo6YmluZEZyYW1lYnVmZmVyKToKKysgICAgICAgICogc3JjL2xp
YkFOR0xFL3JlbmRlcmVyL2dsL3JlbmRlcmVyZ2xfdXRpbHMuY3BwOgorKyAgICAgICAgKHJ4Ojpu
YXRpdmVnbF9nbDo6SW5pdGlhbGl6ZUZlYXR1cmVzKToKKysKKysyMDIwLTAxLTA0ICBLZW5uZXRo
IFJ1c3NlbGwgIDxrYnJAY2hyb21pdW0ub3JnPgorKworKyAgICAgICAgQWRkIHN1cHBvcnQgZm9y
IGlPUyBTaW11bGF0b3IgdG8gQU5HTEUgYmFja2VuZCBmb3IgV2ViR0wKKysgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDU2MTgKKysKKysgICAgICAgIEV4
dGVuZCBFR0xfQU5HTEVfaW9zdXJmYWNlX2NsaWVudF9idWZmZXIgZXh0ZW5zaW9uIHRvIHJlcXVp
cmUgdXNlCisrICAgICAgICBvZiBURVhUVVJFXzJEIHRhcmdldCBvbiBpT1MsIGFuZCB0byBwcm92
aWRlIHJlYWQvd3JpdGUgdXNhZ2UgaGludHMKKysgICAgICAgIGZvciB0aGUgcGJ1ZmZlciBjcmVh
dGVkIGZyb20gdGhlIElPU3VyZmFjZS4KKysKKysgICAgICAgIEVtdWxhdGUgbWlzc2luZyBbRUFH
TENvbnRleHQgdGV4SW1hZ2VJT1N1cmZhY2U6Li4uXSB2aWEgdGV4dHVyZQorKyAgICAgICAgdXBs
b2FkIGluIGVnbEJpbmRUZXhJbWFnZSBhbmQgcmVhZGJhY2sgaW4gZWdsUmVsZWFzZVRleEltYWdl
LgorKworKyAgICAgICAgVGhlc2UgY2hhbmdlcyB3aWxsIGJlIHVwc3RyZWFtZWQgaW4KKysgICAg
ICAgIGh0dHBzOi8vYnVncy5jaHJvbWl1bS5vcmcvcC9hbmdsZXByb2plY3QvaXNzdWVzL2RldGFp
bD9pZD00MjU2IC4KKysKKysgICAgICAgIFJldmlld2VkIGJ5IERlYW4gSmFja3Nvbi4KKysKKysg
ICAgICAgICogZXh0ZW5zaW9ucy9FR0xfQU5HTEVfaW9zdXJmYWNlX2NsaWVudF9idWZmZXIudHh0
OgorKyAgICAgICAgKiBpbmNsdWRlL0VHTC9lZ2xleHRfYW5nbGUuaDoKKysgICAgICAgICogc3Jj
L2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvRGlzcGxheUVBR0wubW06CisrICAgICAgICAocng6
OkRpc3BsYXlFQUdMOjppbml0aWFsaXplKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRl
cmVyL2dsL2VhZ2wvSU9TdXJmYWNlU3VyZmFjZUVBR0wuaDoKKysgICAgICAgICogc3JjL2xpYkFO
R0xFL3JlbmRlcmVyL2dsL2VhZ2wvSU9TdXJmYWNlU3VyZmFjZUVBR0wubW06CisrICAgICAgICAo
cng6OklPU3VyZmFjZVN1cmZhY2VFQUdMOjpJT1N1cmZhY2VTdXJmYWNlRUFHTCk6CisrICAgICAg
ICAocng6OklPU3VyZmFjZVN1cmZhY2VFQUdMOjpiaW5kVGV4SW1hZ2UpOgorKyAgICAgICAgKHJ4
OjpJT1N1cmZhY2VTdXJmYWNlRUFHTDo6cmVsZWFzZVRleEltYWdlKToKKysgICAgICAgIChyeDo6
SU9TdXJmYWNlU3VyZmFjZUVBR0w6OnZhbGlkYXRlQXR0cmlidXRlcyk6CisrICAgICAgICAocng6
OklPU3VyZmFjZVN1cmZhY2VFQUdMOjpjcmVhdGVEZWZhdWx0RnJhbWVidWZmZXIpOgorKyAgICAg
ICAgKHJ4OjpJT1N1cmZhY2VTdXJmYWNlRUFHTDo6Z2V0SU9TdXJmYWNlTG9ja09wdGlvbnMgY29u
c3QpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvdmFsaWRhdGlvbkVHTC5jcHA6CisrICAgICAg
ICAoZWdsOjpWYWxpZGF0ZUNyZWF0ZVBidWZmZXJGcm9tQ2xpZW50QnVmZmVyKToKKysKKysyMDE5
LTEyLTI1ICBEZWFuIEphY2tzb24gIDxkaW5vQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFtXZWJH
TF0gRW5hYmxlIEFOR0xFIGJ5IGRlZmF1bHQgZm9yIENvY29hIHBsYXRmb3JtcyAoZXhjZXB0IHNp
bXVsYXRvcikKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0yMDU0ODMKKysgICAgICAgIHJkYXI6Ly81NjkyNTgyMQorKworKyAgICAgICAgUmV2aWV3ZWQg
YnkgU2ltb24gRnJhc2VyLgorKworKyAgICAgICAgRXhwb3J0IGVudHJ5X3BvaW50c19nbGVzX2V4
dF9hdXRvZ2VuLmguCisrCisrICAgICAgICAqIEFOR0xFLnhjb2RlcHJvai9wcm9qZWN0LnBieHBy
b2o6CisrCisrMjAxOS0xMi0xOSAgRGVhbiBKYWNrc29uICA8ZGlub0BhcHBsZS5jb20+CisrCisr
ICAgICAgICBCdWlsZCBBTkdMRSBhcyBhIGR5bmFtaWMgbGlicmFyeQorKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwNDcwOAorKyAgICAgICAgcmRhcjov
LzU3MzQ5Mzg0CisrCisrICAgICAgICBSZXZpZXdlZCBieSBUaW0gSG9ydG9uLgorKworKyAgICAg
ICAgVGFrZSAyIGF0IGF0dGVtcHRpbmcgdGhpcy4gVGhlIGZpcnN0IHRpbWUgd2FzIHJvbGxlZCBv
dXQKKysgICAgICAgIGR1ZSB0byBmYWlsdXJlcyBpbiBBcHBsZSdzIHVwc3RyZWFtIGJ1aWxkIHN5
c3RlbS4KKysKKysgICAgICAgIE1vZGlmeSBBTkdMRSB0byBidWlsZCBhcyBhIGR5bmFtaWMgbGli
cmFyeS4gTXkgKG5vdCB0aG9yb3VnaCkgdGVzdGluZyBzdWdnZXN0cworKyAgICAgICAgdGhpcyB3
aWxsIHJlZHVjZSB0aGUgaW4tZmxpZ2h0IGJpbmFyeSBzaXplIG9uIEFwcGxlJ3MgYnVpbGQgc3lz
dGVtcyBieSBhdCBsZWFzdAorKyAgICAgICAgYSBmYWN0b3Igb2YgMTAgKGl0IHdhcyBvdmVyIDFH
KS4gQnVpbGRpbmcgcmVsZWFzZSBmb3IgeDg2XzY0LW9ubHk6CisrICAgICAgICAgICAgLSBQcmV2
aW91c2x5OiBsaWJBTkdMRS5hIC0tIDMwNiBNQgorKyAgICAgICAgICAgIC0gTm93OiBsaWJBTkdM
RS1zaGFyZWQuZHlsaWIgLS0gNi43IE1CCisrCisrICAgICAgICBJbiBvcmRlciB0byBkbyB0aGlz
LCBzb21lIHN5bWJvbHMgbmVlZGVkIHRvIGJlIGV4cG9ydGVkIGZyb20gdGhlCisrICAgICAgICAi
c2giIG5hbWVzcGFjZSAod2hpY2ggYXJlIHVzZWQgaW4gQU5HTEVXZWJLaXRCcmlkZ2UsIGJ1dCBu
b3Qgd2hlbgorKyAgICAgICAgQU5HTEUncyByZW5kZXJpbmcgYmFja2VuZCBpcyBhY3RpdmUpLgor
KworKyAgICAgICAgV2hpbGUgaGVyZSwgSSB0dXJuZWQgb24gc29tZSBtb3JlIGJ1aWxkIG9wdGlv
bnMsIGxpa2UgQVJDLgorKworKyAgICAgICAgTGFzdGx5LCBJIGFkZGVkIGEgYnVpbGQgcGhhc2Ug
dGhhdCBjcmVhdGVzIGEgZmFrZSBsaWJBTkdMRS5hCisrICAgICAgICBiZWNhdXNlIEFwcGxlJ3Mg
YnVpbGQgc3lzdGVtIHRoaW5rcyB0aGF0IFdlYkNvcmUgc3RpbGwgbmVlZHMgaXQuCisrCisrICAg
ICAgICAqIEFOR0xFLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6IExpbmsgd2l0aCBJT0tpdCBh
bmQgSU9TdXJmYWNlIGZyYW1ld29ya3MsIGFuZAorKyAgICAgICAgcHJvZHVjdCBhIGR5bGliIHBy
b2R1Y3QuCisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0FOR0xFLnhjY29uZmlnOiBVcGRhdGUg
dGhlIGNvbmZpZ3VyYXRpb24gZm9yIGEgZHluYW1pYyBsaWJyYXJ5LgorKyAgICAgICAgKiBDb25m
aWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnOgorKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9EZWJ1
Z1JlbGVhc2UueGNjb25maWc6CisrICAgICAgICAqIGluY2x1ZGUvR0xTTEFORy9TaGFkZXJMYW5n
Lmg6IEFkZCBBTkdMRV9FWFBPUlQgdG8gc29tZSBmdW5jdGlvbnMgdG8gbWFrZQorKyAgICAgICAg
c3VyZSB0aGV5IHdpbGwgYmUgdmlzaWJsZSBpbiB0aGUgZXhwb3J0ZWQgbGlicmFyeS4KKysgICAg
ICAgICogaW5jbHVkZS9HTFNMQU5HL1NoYWRlclZhcnMuaDoKKysgICAgICAgICogc3JjL2xpYkFO
R0xFL3JlbmRlcmVyL2dsL2NnbC9EaXNwbGF5Q0dMLm1tOiBDaGFuZ2UgcmVpbnRlcnByZXRfY2Fz
dCB0byBhIG5vcm1hbAorKyAgICAgICAgQyBjYXN0IHNvIGl0IGNhbiBiZSBhbm5vdGF0ZWQgd2l0
aCBfX2JyaWRnZS4KKysgICAgICAgIChyeDo6RGlzcGxheUNHTDo6aXNWYWxpZE5hdGl2ZVdpbmRv
dyBjb25zdCk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvV2luZG93
U3VyZmFjZUNHTC5tbTogRGl0dG8uCisrICAgICAgICAocng6OldpbmRvd1N1cmZhY2VDR0w6Oldp
bmRvd1N1cmZhY2VDR0wpOgorKyAgICAgICAgKHJ4OjpXaW5kb3dTdXJmYWNlQ0dMOjp+V2luZG93
U3VyZmFjZUNHTCk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0Rp
c3BsYXlFQUdMLm1tOiBEaXR0by4KKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2ds
L2VhZ2wvV2luZG93U3VyZmFjZUVBR0wubW06IERpdHRvLgorKworKzIwMTktMTItMTkgIENoYW5n
U2VvayBPaCAgPGNoYW5nc2Vva0B3ZWJraXQub3JnPgorKworKyAgICAgICAgW0dUS10gQnVpbGQg
Zml4IGZvciBBTkdMRV9XRUJHTCBhZnRlciByMjUzNjUwCisrICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA1NDI2CisrCisrICAgICAgICBSZXZpZXdlZCBi
eSBDYXJsb3MgQWxiZXJ0byBMb3BleiBQZXJlei4KKysKKysgICAgICAgIGxpYmdsZXN2Ml9lbnRy
eV9wb2ludHNfaGVhZGVycyB3YXMgcmVtb3ZlZCBpbiByMjUzNjUwIHRoYXQgdXBkYXRlZCBDTWFr
ZSBmb3IgQU5HTEUuCisrICAgICAgICBHTEVTdjIuY21ha2Ugc2VlbXMgdG8gYmUgc3VzY2VwdGli
bGUgdG8gQU5HTEUgY2hhbmdlcywgc28gaXQgbWlnaHQgbm90IGJlCisrICAgICAgICBhIGdvb2Qg
cGxhY2Ugd2hlcmUgYW55IHBsYXRmb3JtIHNwZWNpZmljIGNvbmZpZ3VyYXRpb24gaXMgbG9jYXRl
ZC4KKysgICAgICAgIExldCdzIG1vdmUgdGhlIGVudHJ5IHBvaW50cyBoZWFkZXIgc2V0IHRvIENN
YWtlTGlzdHMudHh0LgorKworKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDoKKysKKysyMDE5LTEy
LTE4ICBEZWFuIEphY2tzb24gIDxkaW5vQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFJldmVydGlu
ZyBsaWJBTkdMRS5hIC0+IGxpYkFOR0xFLXNoYXJlZC5keWxpYi4KKysKKysgICAgICAgIEZvbGxv
dy11cCB0byByZW1vdmUgdGhlIGJ1aWxkIHBoYXNlIHRoYXQgd2FzIHRyeWluZworKyAgICAgICAg
dG8gZm9vbCBBcHBsZSdzIGJ1aWxkIHN5c3RlbS4KKysKKysgICAgICAgICogQU5HTEUueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvajoKKysKKysyMDE5LTEyLTE4ICBEZWFuIEphY2tzb24gIDxkaW5v
QGFwcGxlLmNvbT4KKysKKysgICAgICAgIFJldmVydGluZyBsaWJBTkdMRS5hIC0+IGxpYkFOR0xF
LXNoYXJlZC5keWxpYi4KKysKKysgICAgICAgIFRoZSBpbnRlcm5hbCBBcHBsZSBidWlsZCBzeXN0
ZW1zIGFyZSBzdGlsbCB1bmhhcHB5IHdpdGgKKysgICAgICAgIHRoaXMgY2hhbmdlLCBzbyBJJ20g
cmV2ZXJ0aW5nIGl0IHVudGlsIEkgY2FuIGJlIHN1cmUKKysgICAgICAgIHRoZXknbGwgYWNjZXB0
IGl0LgorKworKyAgICAgICAgKiBBTkdMRS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorKyAg
ICAgICAgKiBDb25maWd1cmF0aW9ucy9BTkdMRS54Y2NvbmZpZzoKKysgICAgICAgICogQ29uZmln
dXJhdGlvbnMvQmFzZS54Y2NvbmZpZzoKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMvRGVidWdS
ZWxlYXNlLnhjY29uZmlnOgorKyAgICAgICAgKiBpbmNsdWRlL0NNYWtlTGlzdHMudHh0OgorKyAg
ICAgICAgKiBpbmNsdWRlL0dMU0xBTkcvU2hhZGVyTGFuZy5oOgorKyAgICAgICAgKiBpbmNsdWRl
L0dMU0xBTkcvU2hhZGVyVmFycy5oOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIv
Z2wvY2dsL0Rpc3BsYXlDR0wubW06CisrICAgICAgICAocng6OkRpc3BsYXlDR0w6OmlzVmFsaWRO
YXRpdmVXaW5kb3cgY29uc3QpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wv
Y2dsL1dpbmRvd1N1cmZhY2VDR0wubW06CisrICAgICAgICAocng6OldpbmRvd1N1cmZhY2VDR0w6
OldpbmRvd1N1cmZhY2VDR0wpOgorKyAgICAgICAgKHJ4OjpXaW5kb3dTdXJmYWNlQ0dMOjp+V2lu
ZG93U3VyZmFjZUNHTCk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWds
L0Rpc3BsYXlFQUdMLm1tOgorKyAgICAgICAgKHJ4OjpEaXNwbGF5RUFHTDo6dGVybWluYXRlKToK
KysgICAgICAgIChyeDo6RGlzcGxheUVBR0w6OmlzVmFsaWROYXRpdmVXaW5kb3cgY29uc3QpOgor
KyAgICAgICAgKHJ4OjpXb3JrZXJDb250ZXh0RUFHTDo6fldvcmtlckNvbnRleHRFQUdMKToKKysg
ICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvV2luZG93U3VyZmFjZUVBR0wu
bW06CisrICAgICAgICAocng6OldpbmRvd1N1cmZhY2VFQUdMOjpXaW5kb3dTdXJmYWNlRUFHTCk6
CisrICAgICAgICAocng6OldpbmRvd1N1cmZhY2VFQUdMOjp+V2luZG93U3VyZmFjZUVBR0wpOgor
KworKzIwMTktMTItMTcgIEZ1amlpIEhpcm9ub3JpICA8SGlyb25vcmkuRnVqaWlAc29ueS5jb20+
CisrCisrICAgICAgICBVbnJldmlld2VkIGJ1aWxkIGZpeCBmb3IgV2luQ2Fpcm8gcG9ydAorKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwNDkxNAorKyAg
ICAgICAgPHJkYXI6Ly9wcm9ibGVtLzU4MDIzMTE4PgorKworKyAgICAgICAgKiBpbmNsdWRlL0NN
YWtlTGlzdHMudHh0OiBSZXBsYWNlZCAnJGxpYmFuZ2xlX2luY2x1ZGVzJyB3aXRoICcke2xpYmFu
Z2xlX2luY2x1ZGVzfSIuCisrCisrMjAxOS0xMi0xNyAgSmFtZXMgRGFycGluaWFuICA8amRhcnBp
bmlhbkBjaHJvbWl1bS5vcmc+CisrCisrICAgICAgICBJbXByb3ZlIHVwZGF0ZS1hbmdsZS5zaCBh
bmQgYWRkIGduaS10by1jbWFrZS5weQorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIwNDkxNAorKworKyAgICAgICAgdXBkYXRlLWFuZ2xlLnNoIG5vdyBw
ZXJmb3JtcyBhIGdpdCByZWJhc2UuIFRoaXMgYXV0b21hdGljYWxseSBtZXJnZXMKKysgICAgICAg
IHVwc3RyZWFtIGNoYW5nZXMgd2l0aCBXZWJLaXQncyBsb2NhbCBjaGFuZ2VzIHdoZXJlIHBvc3Np
YmxlIGFuZAorKyAgICAgICAgaGlnaGxpZ2h0cyBhbnkgY29uZmxpY3RzIGZvciBtYW51YWwgcmVz
b2x1dGlvbi4KKysKKysgICAgICAgIEFsc28sIGl0IHJ1bnMgYSBuZXcgc2NyaXB0IGduaS10by1j
bWFrZS5weSB0byBhdXRvbWF0aWNhbGx5IHVwZGF0ZSB0aGUKKysgICAgICAgIENNYWtlIGZpbGVz
IHdpdGggdXBzdHJlYW0gY2hhbmdlcyB0byB0aGUgZ25pIGZpbGVzLiBBbG9uZyB3aXRoIHRoZQor
KyAgICAgICAgY2hhbmdlcyB0byBpbmNsdWRlL0NNYWtlTGlzdHMudHh0LCB0aGlzIHNob3VsZCBw
cmV2ZW50IGJ1aWxkIGJyZWFrcworKyAgICAgICAgbGlrZSB0aGUgcmVjZW50bHkgZml4ZWQgV2lu
Q2Fpcm8gb25lLiBBZGRpdGlvbmFsbHksIGRpZmZpbmcgdGhlIENNYWtlCisrICAgICAgICBmaWxl
cyBwcm92aWRlcyBhIGNvbmNpc2UgbGlzdCBvZiBidWlsZCBjaGFuZ2VzIHRoYXQgY2FuIGJlIHJl
ZmVyZW5jZWQKKysgICAgICAgIHdoZW4gbWFudWFsbHkgdXBkYXRpbmcgdGhlIFhDb2RlIHByb2pl
Y3QgZmlsZS4KKysKKysgICAgICAgIFJldmlld2VkIGJ5IERlYW4gSmFja3Nvbi4KKysKKysgICAg
ICAgICogQ01ha2VMaXN0cy50eHQ6CisrICAgICAgICAqIENvbXBpbGVyLmNtYWtlOgorKyAgICAg
ICAgKiBHTEVTdjIuY21ha2U6CisrICAgICAgICAqIGduaS10by1jbWFrZS5weTogQWRkZWQuCisr
ICAgICAgICAqIGluY2x1ZGUvQ01ha2VMaXN0cy50eHQ6CisrICAgICAgICAqIHVwZGF0ZS1hbmds
ZS5zaDoKKysKKysyMDE5LTEyLTE3ICBDaGFuZ1Nlb2sgT2ggIDxjaGFuZ3Nlb2tAd2Via2l0Lm9y
Zz4KKysKKysgICAgICAgIFVucmV2aWV3ZWQgYnVpbGQgZml4IGZvciBVU0VfQU5HTEVfV0VCR0wg
YWZ0ZXIgcjI1Mjk5NAorKworKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDogQWRkIGEgbWlzc2lu
ZyBkaXJlY3Rvcnkgc2VwYXJhdG9yLgorKworKzIwMTktMTItMTMgIERlYW4gSmFja3NvbiAgPGRp
bm9AYXBwbGUuY29tPgorKworKyAgICAgICAgTWFjQ2F0YWx5c3QgYnVpbGQgb2YgbGliQU5HTEUg
aXMgaW5zdGFsbGVkIGluIHRoZSBpbmNvcnJlY3QgbG9jYXRpb24KKysgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDUyMTkKKysgICAgICAgIDxyZGFyOi8v
cHJvYmxlbS81NzcxMzM1Mz4KKysKKysgICAgICAgIFJldmlld2VkIGJ5IFNpbW9uIEZyYXNlci4K
KysKKysgICAgICAgIFJlbmFtZSBsaWJBTkdMRS5keWxpYiBpbnRvIGxpYkFOR0xFLXNoYXJlZC5k
eWxpYiwgc28gd2UgY2FuCisrICAgICAgICBhdm9pZCBhY2NpZGVudGFsbHkgdHJ5aW5nIHRvIGxp
bmsgdG8gdGhlIGxpYkFOR0xFLmEgdGhhdCB3YXMKKysgICAgICAgIHJlbW92ZWQgcmVjZW50bHkg
KGJ1dCBzdGlsbCBleGlzdHMgaW4gdGhlIFNESyBmb3Igbm93KS4KKysKKysgICAgICAgIEFsc28s
IG1ha2Ugc3VyZSB0aGF0IHdlIGluc3RhbGwgaW50byB0aGUgY29ycmVjdCBsb2NhdGlvbiBmb3IK
KysgICAgICAgIGEgQ2F0YWx5c3QgYnVpbGQuCisrCisrICAgICAgICAqIEFOR0xFLnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2o6CisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0FOR0xFLnhjY29u
ZmlnOgorKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnOgorKworKzIwMTkt
MTItMTEgIERlYW4gSmFja3NvbiAgPGRpbm9AYXBwbGUuY29tPgorKworKyAgICAgICAgUHJvZHVj
ZSBhIGR1bW15IGxpYkFOR0xFLmEgZmlsZSB0byBmb29sIEFwcGxlJ3MgYnVpbGQgdGVzdCBpbmZy
YXN0cnVjdHVyZQorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTIwNTA2OAorKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzU3NzEzMzUzPgorKworKyAgICAg
ICAgVW5yZXZpZXdlZCBmb2xsb3d1cCB0byBhcHBseSB0aGUgc2NyaXB0IHRvIE1hYyBDYXRhbHlz
dCBidWlsZHMuCisrCisrICAgICAgICBOb3RlIHRoYXQgdGhpcyBwaGFzZSBjYW4gYmUgcmVtb3Zl
ZCBpbiBhIGZldyBkYXlzIHdoZW4gQXBwbGUncyBUZXN0CisrICAgICAgICBQbGF0Zm9ybSByZWFs
aXNlcyBpdCBkb2Vzbid0IG5lZWQgbGliQU5HTEUuYSBhbnkgbW9yZS4KKysKKysgICAgICAgICog
QU5HTEUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKysKKysyMDE5LTEyLTEwICBEZWFuIEph
Y2tzb24gIDxkaW5vQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFByb2R1Y2UgYSBkdW1teSBsaWJB
TkdMRS5hIGZpbGUgdG8gZm9vbCBBcHBsZSdzIGJ1aWxkIHRlc3QgaW5mcmFzdHJ1Y3R1cmUKKysg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDUwNjgKKysg
ICAgICAgIDxyZGFyOi8vcHJvYmxlbS81NzcxMzM1Mz4KKysKKysgICAgICAgIFJldmlld2VkIGJ5
IEFsZXggQ2hyaXN0ZW5zZW4uCisrCisrICAgICAgICBDcmVhdGUgYSBkdW1teSBsaWJBTkdMRS5h
IGZpbGUgdW50aWwgb3VyIGluZnJhc3RydWN0dXJlIHJlYWxpc2VzIGl0CisrICAgICAgICBkb2Vz
bid0IG5lZWQgdGhhdCBmaWxlIGFueSBtb3JlLiBIb3BlZnVsbHkgdGhlIGZhY3QgdGhhdCBpdCBp
c24ndAorKyAgICAgICAgcmVhbGx5IGEgc3RhdGljIGxpYnJhcnksIGJ1dCBqdXN0IGEgdGV4dCBm
aWxlLCBpcyBvay4KKysKKysgICAgICAgICogQU5HTEUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJv
ajogQWRkIGEgbmV3IHNoZWxsIHNjcmlwdCBwaGFzZSB0aGF0CisrICAgICAgICBjcmVhdGVzIGEg
ZHVtbXkgZmlsZS4KKysKKysyMDE5LTEyLTA2ICBEZWFuIEphY2tzb24gIDxkaW5vQGFwcGxlLmNv
bT4KKysKKysgICAgICAgIFJlc3RyaWN0IGxpYkFOR0xFIHRvIGxpbmsgb25seSB3aXRoIFdlYkNv
cmUKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDQ5
NTcKKysgICAgICAgIDxyZGFyOi8vcHJvYmxlbS81NzcwODY0ND4KKysKKysgICAgICAgIFJldmll
d2VkIGJ5IEJyaWFuIEJ1cmcuCisrCisrICAgICAgICBSZXN0cmljdCB0byBXZWJDb3JlIGFuZCBX
ZWJDb3JlVGVzdFN1cHBvcnQuCisrCisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0FOR0xFLnhj
Y29uZmlnOgorKworKzIwMTktMTItMDUgIEphbWVzIERhcnBpbmlhbiAgPGpkYXJwaW5pYW5AY2hy
b21pdW0ub3JnPgorKworKyAgICAgICAgRmluaXNoIEFOR0xFIHVwZGF0ZQorKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwNDkxMQorKworKyAgICAgICAg
VGhlIGxhc3QgQU5HTEUgdXBkYXRlIHBhdGNoIGRpZG4ndCBpbmNsdWRlIGFsbCB0aGUgY2hhbmdl
ZCBmaWxlcy4KKysgICAgICAgIFRoaXMgcGF0Y2ggdXBkYXRlcyB0aGUgcmVzdCBvZiB0aGUgZmls
ZXMuCisrCisrICAgICAgICBSZXZpZXdlZCBieSBBbGV4IENocmlzdGVuc2VuLgorKworKyAgICAg
ICAgKiBzcmMvdGVzdHM6IExvdHMgb2YgY2hhbmdlZCBmaWxlcyBmcm9tIHVwc3RyZWFtIEFOR0xF
LgorKyAgICAgICAgKiBzcmMvdGhpcmRfcGFydHkvY29tcGlsZXIvUkVBRE1FLmNocm9taXVtOgor
KyAgICAgICAgKiB0aGlyZF9wYXJ0eS9WSy1HTC1DVFMvUkVBRE1FLmFuZ2xlOiBBZGRlZC4KKysg
ICAgICAgICogdGhpcmRfcGFydHkvZGVxcC9SRUFETUUuYW5nbGU6IFJlbW92ZWQuCisrICAgICAg
ICAqIHRoaXJkX3BhcnR5L2dvb2dsZXRlc3QvUkVBRE1FLmFuZ2xlOiBSZW1vdmVkLgorKyAgICAg
ICAgKiB0aGlyZF9wYXJ0eS9saWJwbmcvQlVJTEQuZ246CisrICAgICAgICAqIHRoaXJkX3BhcnR5
L3NwaXJ2LWNyb3NzL1JFQURNRS5hbmdsZTogQWRkZWQuCisrICAgICAgICAqIHV0aWwvT1NXaW5k
b3cuaDoKKysgICAgICAgICogdXRpbC9lZ2xfbG9hZGVyX2F1dG9nZW4uY3BwOgorKyAgICAgICAg
KGFuZ2xlOjpMb2FkRUdMKToKKysgICAgICAgICogdXRpbC9lZ2xfbG9hZGVyX2F1dG9nZW4uaDoK
KysgICAgICAgICogdXRpbC9mdWNoc2lhL1NjZW5pY1dpbmRvdy5jcHA6CisrICAgICAgICAoU2Nl
bmljV2luZG93OjpyZXNldE5hdGl2ZVdpbmRvdyk6CisrICAgICAgICAqIHV0aWwvZnVjaHNpYS9T
Y2VuaWNXaW5kb3cuaDoKKysgICAgICAgICogdXRpbC9nbGVzX2xvYWRlcl9hdXRvZ2VuLmNwcDoK
KysgICAgICAgIChhbmdsZTo6TG9hZEdMRVMpOgorKyAgICAgICAgKiB1dGlsL2dsZXNfbG9hZGVy
X2F1dG9nZW4uaDoKKysgICAgICAgICogdXRpbC9vc3gvT1NYV2luZG93Lmg6CisrICAgICAgICAq
IHV0aWwvb3N4L09TWFdpbmRvdy5tbToKKysgICAgICAgIChPU1hXaW5kb3c6OmluaXRpYWxpemUp
OgorKyAgICAgICAgKiB1dGlsL296b25lL096b25lV2luZG93Lmg6CisrICAgICAgICAqIHV0aWwv
cG9zaXgvY3Jhc2hfaGFuZGxlcl9wb3NpeC5jcHA6CisrICAgICAgICAoYW5nbGU6OkluaXRDcmFz
aEhhbmRsZXIpOgorKyAgICAgICAgKiB1dGlsL3Bvc2l4L3Rlc3RfdXRpbHNfcG9zaXguY3BwOgor
KyAgICAgICAgKGFuZ2xlOjpHZXRUZW1wRGlyKToKKysgICAgICAgIChhbmdsZTo6Q3JlYXRlVGVt
cG9yYXJ5RmlsZUluRGlyKToKKysgICAgICAgIChhbmdsZTo6RGVsZXRlRmlsZSk6CisrICAgICAg
ICAoYW5nbGU6OkxhdW5jaFByb2Nlc3MpOgorKyAgICAgICAgKGFuZ2xlOjpOdW1iZXJPZlByb2Nl
c3NvcnMpOgorKyAgICAgICAgKiB1dGlsL3NoYWRlcl91dGlscy5jcHA6CisrICAgICAgICAoQ29t
cGlsZVNoYWRlckZyb21GaWxlKToKKysgICAgICAgIChDb21waWxlUHJvZ3JhbUZyb21GaWxlcyk6
CisrICAgICAgICAqIHV0aWwvdGVzdF91dGlscy5jcHA6IEFkZGVkLgorKyAgICAgICAgKGFuZ2xl
OjpDcmVhdGVUZW1wb3JhcnlGaWxlKToKKysgICAgICAgIChhbmdsZTo6R2V0RmlsZVNpemUpOgor
KyAgICAgICAgKGFuZ2xlOjpSZWFkRW50aXJlRmlsZVRvU3RyaW5nKToKKysgICAgICAgIChhbmds
ZTo6UHJvY2Vzc0hhbmRsZTo6UHJvY2Vzc0hhbmRsZSk6CisrICAgICAgICAoYW5nbGU6OlByb2Nl
c3NIYW5kbGU6On5Qcm9jZXNzSGFuZGxlKToKKysgICAgICAgIChhbmdsZTo6UHJvY2Vzc0hhbmRs
ZTo6b3BlcmF0b3I9KToKKysgICAgICAgIChhbmdsZTo6UHJvY2Vzc0hhbmRsZTo6cmVzZXQpOgor
KyAgICAgICAgKiB1dGlsL3Rlc3RfdXRpbHMuaDoKKysgICAgICAgICogdXRpbC90ZXN0X3V0aWxz
X3VuaXR0ZXN0LmNwcDogQWRkZWQuCisrICAgICAgICAoYW5nbGU6Ok5vcm1hbGl6ZU5ld0xpbmVz
KToKKysgICAgICAgIChhbmdsZTo6VEVTVCk6CisrICAgICAgICAqIHV0aWwvdGVzdF91dGlsc191
bml0dGVzdF9oZWxwZXIuY3BwOiBBZGRlZC4KKysgICAgICAgIChtYWluKToKKysgICAgICAgICog
dXRpbC90ZXN0X3V0aWxzX3VuaXR0ZXN0X2hlbHBlci5oOiBBZGRlZC4KKysgICAgICAgICogdXRp
bC91dGlsLmduaToKKysgICAgICAgICogdXRpbC93aW5kb3dzL1dHTFdpbmRvdy5jcHA6CisrICAg
ICAgICAqIHV0aWwvd2luZG93cy90ZXN0X3V0aWxzX3dpbi5jcHA6CisrICAgICAgICAoYW5nbGU6
OkluaXRDcmFzaEhhbmRsZXIpOgorKyAgICAgICAgKGFuZ2xlOjpUZXJtaW5hdGVDcmFzaEhhbmRs
ZXIpOgorKyAgICAgICAgKGFuZ2xlOjpMYXVuY2hQcm9jZXNzKToKKysgICAgICAgIChhbmdsZTo6
R2V0VGVtcERpcik6CisrICAgICAgICAoYW5nbGU6OkNyZWF0ZVRlbXBvcmFyeUZpbGVJbkRpcik6
CisrICAgICAgICAoYW5nbGU6OkRlbGV0ZUZpbGUpOgorKyAgICAgICAgKGFuZ2xlOjpOdW1iZXJP
ZlByb2Nlc3NvcnMpOgorKyAgICAgICAgKiB1dGlsL3dpbmRvd3Mvd2luMzIvV2luMzJXaW5kb3cu
Y3BwOgorKyAgICAgICAgKFdpbjMyV2luZG93Ojppbml0aWFsaXplKToKKysgICAgICAgICogdXRp
bC93aW5kb3dzL3dpbjMyL3Rlc3RfdXRpbHNfd2luMzIuY3BwOgorKyAgICAgICAgKGFuZ2xlOjpT
dGFiaWxpemVDUFVGb3JCZW5jaG1hcmtpbmcpOgorKyAgICAgICAgKiB1dGlsL3gxMS9YMTFXaW5k
b3cuaDoKKysKKysyMDE5LTEyLTAyICBSb3NzIEtpcnNsaW5nICA8cm9zcy5raXJzbGluZ0Bzb255
LmNvbT4KKysKKysgICAgICAgIFVucmV2aWV3ZWQgV2luQ2Fpcm8gYnVpbGQgZml4IGZvbGxvd2lu
ZyByMjUyOTg5LgorKworKyAgICAgICAgKiBpbmNsdWRlL0NNYWtlTGlzdHMudHh0OgorKworKzIw
MTktMTItMDIgIERlYW4gSmFja3NvbiAgPGRpbm9AYXBwbGUuY29tPgorKworKyAgICAgICAgQ2xl
YW4gdXAgQU5HTEUgaGVhZGVyIHBvc3QtcHJvY2VzcyBzY3JpcHQKKysgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDQ3MTEKKysKKysgICAgICAgIFJldmll
d2VkIGJ5IFRpbSBIb3J0b24uCisrCisrICAgICAgICBTaW5jZSBgc2VkYCBvbiBtYWNPUyByZXF1
aXJlcyB0aGUgaW4tcGxhY2UgYXJndW1lbnQgdG8gaGF2ZSBhIHplcm8tbGVuZ3RoIHN0cmluZwor
KyAgICAgICAgdG8gYXZvaWQgbWFraW5nIGJhY2t1cHMsIHRoaXMgc2NyaXB0IHdhcyBhdHRlbXB0
aW5nIHRvIHBhc3MgJycuIEhvd2V2ZXIsIHRoaXMgd2FzCisrICAgICAgICBiZWluZyBldmFsdWF0
ZWQsIGNyZWF0aW5nIGEgYnVuY2ggb2YgZmlsZXMgd2l0aCBcJ1wnIHN1ZmZpeGVzLiBGaXggdGhp
cyBieSB1c2luZworKyAgICAgICAgYW4gYXJyYXkgd2hlbiBleHBhbmRpbmcgdGhlIGFyZ3VtZW50
cy4KKysKKysgICAgICAgIEFsc28gZml4IGEgdHlwbyB3aGVyZSB0aGUgY2hhcmFjdGVyICIzIiB3
YXMgYmVpbmcgcHJpbnRlZC4KKysKKysgICAgICAgIExhc3RseSwgb25seSBwcmludCBvdXQgdGhl
IGJhc2VuYW1lIG9mIHRoZSBoZWFkZXIgZmlsZSBiZWluZyBjb252ZXJ0ZWQuCisrCisrICAgICAg
ICAqIGFkanVzdC1hbmdsZS1pbmNsdWRlLXBhdGhzLnNoOgorKworKzIwMTktMTEtMzAgIERlYW4g
SmFja3NvbiAgPGRpbm9AYXBwbGUuY29tPgorKworKyAgICAgICAgQnVpbGQgQU5HTEUgYXMgYSBk
eW5hbWljIGxpYnJhcnkKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0yMDQ3MDgKKysgICAgICAgIHJkYXI6Ly81NzM0OTM4NAorKworKyAgICAgICAgUmV2
aWV3ZWQgYnkgVGltIEhvcnRvbi4KKysKKysgICAgICAgIE1vZGlmeSBBTkdMRSB0byBidWlsZCBh
cyBhIGR5bmFtaWMgbGlicmFyeS4gTXkgKG5vdCB0aG9yb3VnaCkgdGVzdGluZyBzdWdnZXN0cwor
KyAgICAgICAgdGhpcyB3aWxsIHJlZHVjZSB0aGUgaW4tZmxpZ2h0IGJpbmFyeSBzaXplIG9uIEFw
cGxlJ3MgYnVpbGQgc3lzdGVtcyBieSBhdCBsZWFzdAorKyAgICAgICAgYSBmYWN0b3Igb2YgMTAg
KGl0IHdhcyBvdmVyIDFHKS4gQnVpbGRpbmcgcmVsZWFzZSBmb3IgeDg2XzY0LW9ubHk6CisrICAg
ICAgICAgICAgLSBQcmV2aW91c2x5OiBsaWJBTkdMRS5hIC0tIDMwNiBNQgorKyAgICAgICAgICAg
IC0gTm93OiBsaWJBTkdMRS5keWxpYiAtLSA2LjcgTUIKKysKKysgICAgICAgIEluIG9yZGVyIHRv
IGRvIHRoaXMsIHNvbWUgc3ltYm9scyBuZWVkZWQgdG8gYmUgZXhwb3J0ZWQgZnJvbSB0aGUKKysg
ICAgICAgICJzaCIgbmFtZXNwYWNlICh3aGljaCBhcmUgdXNlZCBpbiBBTkdMRVdlYktpdEJyaWRn
ZSwgYnV0IG5vdCB3aGVuCisrICAgICAgICBBTkdMRSdzIHJlbmRlcmluZyBiYWNrZW5kIGlzIGFj
dGl2ZSkuCisrCisrICAgICAgICBXaGlsZSBoZXJlLCBJIHR1cm5lZCBvbiBzb21lIG1vcmUgYnVp
bGQgb3B0aW9ucywgbGlrZSBBUkMuCisrCisrICAgICAgICAqIEFOR0xFLnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2o6IExpbmsgd2l0aCBJT0tpdCBhbmQgSU9TdXJmYWNlIGZyYW1ld29ya3MsIGFu
ZAorKyAgICAgICAgcHJvZHVjdCBhIGR5bGliIHByb2R1Y3QuCisrICAgICAgICAqIENvbmZpZ3Vy
YXRpb25zL0FOR0xFLnhjY29uZmlnOiBVcGRhdGUgdGhlIGNvbmZpZ3VyYXRpb24gZm9yIGEgZHlu
YW1pYyBsaWJyYXJ5LgorKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnOgor
KyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9EZWJ1Z1JlbGVhc2UueGNjb25maWc6CisrICAgICAg
ICAqIENvbmZpZ3VyYXRpb25zL1ZlcnNpb24ueGNjb25maWc6IEFkZGVkLgorKyAgICAgICAgKiBD
b25maWd1cmF0aW9ucy9XZWJLaXRUYXJnZXRDb25kaXRpb25hbHMueGNjb25maWc6IEFkZGVkLgor
KworKyAgICAgICAgKiBpbmNsdWRlL0dMU0xBTkcvU2hhZGVyTGFuZy5oOiBBZGQgQU5HTEVfRVhQ
T1JUIHRvIHNvbWUgZnVuY3Rpb25zIHRvIG1ha2UKKysgICAgICAgIHN1cmUgdGhleSB3aWxsIGJl
IHZpc2libGUgaW4gdGhlIGV4cG9ydGVkIGxpYnJhcnkuCisrICAgICAgICAqIGluY2x1ZGUvR0xT
TEFORy9TaGFkZXJWYXJzLmg6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9j
Z2wvRGlzcGxheUNHTC5tbTogQ2hhbmdlIHJlaW50ZXJwcmV0X2Nhc3QgdG8gYSBub3JtYWwKKysg
ICAgICAgIEMgY2FzdCBzbyBpdCBjYW4gYmUgYW5ub3RhdGVkIHdpdGggX19icmlkZ2UuCisrICAg
ICAgICAocng6OkRpc3BsYXlDR0w6OmlzVmFsaWROYXRpdmVXaW5kb3cgY29uc3QpOgorKyAgICAg
ICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL1dpbmRvd1N1cmZhY2VDR0wubW06IERp
dHRvLgorKyAgICAgICAgKHJ4OjpXaW5kb3dTdXJmYWNlQ0dMOjpXaW5kb3dTdXJmYWNlQ0dMKToK
KysgICAgICAgIChyeDo6V2luZG93U3VyZmFjZUNHTDo6fldpbmRvd1N1cmZhY2VDR0wpOgorKyAg
ICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EaXNwbGF5RUFHTC5tbTogRGl0
dG8uCisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL1dpbmRvd1N1cmZh
Y2VFQUdMLm1tOiBEaXR0by4KKysKKysyMDE5LTEyLTAyICBKYW1lcyBEYXJwaW5pYW4gIDxqZGFy
cGluaWFuQGNocm9taXVtLm9yZz4KKysKKysgICAgICAgIFVwZGF0ZSBBTkdMRQorKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwNDU5NQorKworKyAgICAg
ICAgUmV2aWV3ZWQgYnkgQWxleCBDaHJpc3RlbnNlbi4KKysKKysgICAgICAgICogQU5HTEUucGxp
c3Q6IFVwZGF0ZWQgY29tbWl0IGhhc2guCisrICAgICAgICAqIEFOR0xFLnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2o6IENoYW5nZXMgbWlycm9yaW5nIGduIGNoYW5nZXMgdXBzdHJlYW0uCisrICAg
ICAgICAqIENvbXBpbGVyLmNtYWtlOiBDaGFuZ2VzIG1pcnJvcmluZyBnbiBjaGFuZ2VzIHVwc3Ry
ZWFtLgorKyAgICAgICAgKiBHTEVTdjIuY21ha2U6IENoYW5nZXMgbWlycm9yaW5nIGduIGNoYW5n
ZXMgdXBzdHJlYW0uCisrICAgICAgICAqIENNYWtlTGlzdHMudHh0OiBDaGFuZ2VzIG1pcnJvcmlu
ZyBnbiBjaGFuZ2VzIHVwc3RyZWFtLgorKworKyAgICAgICAgKiBNYW55IG90aGVyIGZpbGVzIGFk
ZGVkL3JlbW92ZWQvY2hhbmdlZCBmcm9tIHVwc3RyZWFtLgorKworKworKzIwMTktMTEtMjAgIENo
YW5nU2VvayBPaCAgPGNoYW5nc2Vva0B3ZWJraXQub3JnPgorKworKyAgICAgICAgW0dUS10gQWRk
IEFOR0xFIGJhY2tlbmQgdG8gR1RLIHBvcnQKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xOTkwNjAKKysKKysgICAgICAgIFJldmlld2VkIGJ5IMW9YW4g
RG9iZXLFoWVrLgorKworKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDogV2hlbiBVU0VfQU5HTEVf
V0VCR0wgaXMgZW5hYmxlZCwgbmVjZXNzYXJ5IGdsZXN2MiBlbnRyeSBwb2ludHMgaGVhZGVycwor
KyAgICAgICAgICBhcmUgaW5zdGFsbGVkIGluIHRoZSBkZXJpdmVkIHNvdXJjZSBkaXJlY3Rvcnku
IEFuZCB0aGVuIGFkanVzdC1hbmdsZS1pbmNsdWRlLXBhdGguc2ggaXMgYXBwbGllZAorKyAgICAg
ICAgICB0byBjaGFuZ2UgaW5jbHVkZSBwYXRocyBpbiB0aGUgZW50cnkgcG9pbnRzIGhlYWRlciBm
aWxlcy4KKysgICAgICAgICogR0xFU3YyLmNtYWtlOiBsaWJnbGVzdjJfZW50cnlfcG9pbnRzX2hl
YWRlcnMgaXMgbmV3bHkgZGVmaW5lZCwgd2hpY2ggaXMgYSBnYXRoZXJpbmcgb2YKKysgICAgICAg
ICAgZW50cnkgcG9pbnQgaGVhZGVycyBvZiBsaWJHTEVTdjIuCisrICAgICAgICAqIFBsYXRmb3Jt
R1RLLmNtYWtlOiBJbiB0aGlzIGZpbGUsIHdlIGFwcGVuZCBnbCBhbmQgZ2x4IHJlbGF0ZWQgYW5n
bGUgY29kZSBhcyBhIGJ1aWxkIHRhcmdldC4KKysgICAgICAgICAgU2luY2Ugd2Ugd2FudCBnbCBj
b250ZXh0IGFuZCBnbGVzIGNvbnRleHQgc2ltdWx0YW5lb3VzbHksIHdlIHJlbW92ZSBnbCBwcm90
b3R5cGUgY2FsbHMKKysgICAgICAgICAgZnJvbSB0aGUgZ2VuZXJhdGVkIGxpYkdMRVN2MiBsaWJy
YXJ5LiBJbnN0ZWFkLCB3ZSBpbnZva2UgZWdsIGFuZCBnbCBjYWxscyBvZiBBTkdMRQorKyAgICAg
ICAgICB2aWEgdGhlaXIgbm9uLXByb3RvdHlwZSBmdW5jdGlvbiBuYW1lcy4KKysgICAgICAgICog
YWRqdXN0LWFuZ2xlLWluY2x1ZGUtcGF0aHMuc2g6IHNlZCBpcyBzbGlnaHRseSBkaWZmZXJlbnQg
aW4gdW5peCBhbmQgbGludXggc3lzdGVtcy4KKysgICAgICAgICAgSW4gcGFydGljdWxhciwgaXRz
IGlucGxhY2Ugb3B0aW9uIG5lZWRzIHRvIGJlIGNoYW5nZWQgZm9yIGJldHRlciBjb21wYXRpYmls
aXR5IG9uIGxpbnV4LgorKyAgICAgICAgKiBpbmNsdWRlL0NNYWtlTGlzdHMudHh0OiBBTkdMRV9X
RUJHTF9IRUFERVJTIGlzIG5ld2x5IGRlZmluZWQuIEl0IGdhdGhlcnMgaGVhZGVyIGZpbGVzIG9m
IEFOR0xFCisrICAgICAgICAgIGZvciBXZWJHTCBzdXBwb3J0LgorKworKzIwMTktMTEtMDggIERl
YW4gSmFja3NvbiAgPGRpbm9AYXBwbGUuY29tPgorKworKyAgICAgICAgQWRkIEFOR0xFIGJhY2tl
bmQgZm9yIGlPUyBkZXZpY2UKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0yMDIxNTkKKysgICAgICAgIDxyZGFyOi8vNTcwMDAxNjY+CisrCisrICAgICAg
ICBCdWlsZCBmaXguIERvbid0IGluY2x1ZGUgSU9TdXJmYWNlLmggb24gaU9TIChwdWJsaWMgU0RL
IGRvZXNuJ3QgaGF2ZSBpdCkuCisrCisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9n
bC9lYWdsL0lPU3VyZmFjZVN1cmZhY2VFQUdMLm1tOgorKworKzIwMTktMTEtMDcgIERlYW4gSmFj
a3NvbiAgPGRpbm9AYXBwbGUuY29tPgorKworKyAgICAgICAgQWRkIEFOR0xFIGJhY2tlbmQgZm9y
IGlPUyBkZXZpY2UKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMDIxNTkKKysgICAgICAgIDxyZGFyOi8vNTcwMDAxNjY+CisrCisrICAgICAgICBSZXZp
ZXdlZCBieSBNeWxlcyBNYXhmaWVsZC4KKysKKysgICAgICAgIEFkZCBhbiBPcGVuR0xFUyBiYWNr
ZW5kIG92ZXIgRUFHTCBmb3IgaU9TIHRvIEFOR0xFLgorKworKyAgICAgICAgVGhpcyBpcyBiYXNp
Y2FsbHkgYSBjb3B5IG9mIGFsbCB0aGUgZmlsZXMgaW4KKysgICAgICAgIGxpYkFOR0xFL3JlbmRl
cmVyL2dsL2NnbCBpbnRvIGxpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wsIHRoZW4gd2l0aAorKyAg
ICAgICAgbW9kaWZpY2F0aW9ucyB0byBtYWtlIGl0IHdvcmsgb24gaU9TJ3MgT3BlbkdMIEVTLiBN
b3N0IG5vdGFibHksCisrICAgICAgICBzb21lIGZvcm1hdCBlbnVtcyBhbmQgdGhlIG1hbm5lciBp
biB3aGljaCB5b3UgYmluZCBhbiBJT1N1cmZhY2UgdG8KKysgICAgICAgIGEgR0wgdGV4dHVyZSBh
cmUgZGlmZmVyZW50LgorKworKyAgICAgICAgVGhpcyBpbnRyb2R1Y2VzIGEgZmV3IHBsYWNlcyB3
aGVyZSB3ZSBoYXZlIHRvIGRvIGEgY29tcGlsZSB0aW1lCisrICAgICAgICBzd2l0Y2ggZm9yIGlP
Uywgc29tZSBvZiB3aGljaCBtaWdodCBhY3R1YWxseSBiZSBhcHBsaWNhYmxlIHRvCisrICAgICAg
ICBvdGhlciBPcGVuR0wgRVMgYmFja2VuZHMuCisrCisrICAgICAgICBUaGUgYmlnZ2VzdCBtaXNz
aW5nIHBpZWNlIGlzIHN1cHBvcnQgZm9yIHRoZSBpT1Mgc2ltdWxhdG9yLiBBdCB0aGUgbW9tZW50
CisrICAgICAgICB0aGlzIGJhY2tlbmQgcmVsaWVzIG9uIGFuIElPU3VyZmFjZSBiaW5kaW5nIGFz
IGEgcmVuZGVyaW5nIHRhcmdldC4KKysgICAgICAgIEJ1dCB0aGUgaU9TIFNpbXVsYXRvciBkb2Vz
IG5vdCBoYXZlIHRoZSByZXF1aXJlZCBhYmlsaXR5IHRvIGhhdmUgYQorKyAgICAgICAgR0wgRVMg
dGV4dHVyZSBiYWNrZWQgYnkgYW4gSU9TdXJmYWNlLgorKworKyAgICAgICAgVGhlIFdpbmRvd1N1
cmZhY2VFQUdMIGNvZGUgaXMgaW5jb21wbGV0ZSwgYnV0IHdhcyBub3QgbmVjZXNzYXJ5CisrICAg
ICAgICBpbiBvcmRlciB0byBnZXQgV2ViR0wgb3BlcmF0aW9uYWwuIEFuZCBldmVuIGlmIHlvdSBh
cmUgdXNpbmcgQU5HTEUKKysgICAgICAgIGRpcmVjdGx5LCB5b3UgY2FuIGhhdmUgdGhlIGNsaWVu
dCBjb2RlIHJlbmRlciBpbnRvIGEgQ0FMYXllciB3aXRob3V0CisrICAgICAgICBnb2luZyB0aHJv
dWdoIHRoZSBXaW5kb3dTdXJmYWNlLgorKworKyAgICAgICAgKiBBTkdMRS54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qOgorKyAgICAgICAgKiBpbmNsdWRlL0VHTC9lZ2xleHRfYW5nbGUuaDoKKysg
ICAgICAgICogc3JjL2NvbW1vbi9QYWNrZWRFbnVtcy5jcHA6CisrICAgICAgICAoZWdsX2dsOjpF
R0xUZXh0dXJlVGFyZ2V0VG9UZXh0dXJlVHlwZSk6CisrICAgICAgICAqIHNyYy9jb21tb24vcGxh
dGZvcm0uaDoKKysgICAgICAgICogc3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mb19pb3MuY3Bw
OiBBZGRlZC4KKysgICAgICAgIChhbmdsZTo6R2V0U3lzdGVtSW5mbyk6CisrICAgICAgICAqIHNy
Yy9ncHVfaW5mb191dGlsL1N5c3RlbUluZm9fbWFjb3MuY3BwOiBSZW5hbWVkIGZyb20gU291cmNl
L1RoaXJkUGFydHkvQU5HTEUvc3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mb19tYWMuY3BwLgor
KyAgICAgICAgKGFuZ2xlOjpHZXRTeXN0ZW1JbmZvKToKKysgICAgICAgICogc3JjL2xpYkFOR0xF
L0NhcHMuaDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL0Rpc3BsYXkuY3BwOgorKyAgICAgICAg
KiBzcmMvbGliQU5HTEUvZm9ybWF0dXRpbHMuY3BwOgorKyAgICAgICAgKGdsOjpCdWlsZEludGVy
bmFsRm9ybWF0SW5mb01hcCk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9j
Z2wvRGV2aWNlQ0dMLmNwcDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2Nn
bC9EaXNwbGF5Q0dMLm1tOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2ds
L0lPU3VyZmFjZVN1cmZhY2VDR0wuY3BwOgorKyAgICAgICAgKHJ4OjpJT1N1cmZhY2VTdXJmYWNl
Q0dMOjpiaW5kVGV4SW1hZ2UpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wv
Y2dsL1BidWZmZXJTdXJmYWNlQ0dMLmNwcDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRl
cmVyL2dsL2NnbC9SZW5kZXJlckNHTC5jcHA6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5k
ZXJlci9nbC9jZ2wvV2luZG93U3VyZmFjZUNHTC5tbToKKysgICAgICAgICogc3JjL2xpYkFOR0xF
L3JlbmRlcmVyL2dsL2VhZ2wvQ29udGV4dEVBR0wuY3BwOiBBZGRlZC4KKysgICAgICAgIChyeDo6
Q29udGV4dEVBR0w6OkNvbnRleHRFQUdMKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRl
cmVyL2dsL2VhZ2wvQ29udGV4dEVBR0wuaDogQWRkZWQuCisrICAgICAgICAqIHNyYy9saWJBTkdM
RS9yZW5kZXJlci9nbC9lYWdsL0RldmljZUVBR0wuY3BwOiBBZGRlZC4KKysgICAgICAgIChyeDo6
RGV2aWNlRUFHTDo6RGV2aWNlRUFHTCk6CisrICAgICAgICAocng6OkRldmljZUVBR0w6On5EZXZp
Y2VFQUdMKToKKysgICAgICAgIChyeDo6RGV2aWNlRUFHTDo6aW5pdGlhbGl6ZSk6CisrICAgICAg
ICAocng6OkRldmljZUVBR0w6OmdldEF0dHJpYnV0ZSk6CisrICAgICAgICAocng6OkRldmljZUVB
R0w6OmdldFR5cGUpOgorKyAgICAgICAgKHJ4OjpEZXZpY2VFQUdMOjpnZW5lcmF0ZUV4dGVuc2lv
bnMgY29uc3QpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EZXZp
Y2VFQUdMLmg6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFn
bC9EaXNwbGF5RUFHTC5oOiBBZGRlZC4KKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVy
L2dsL2VhZ2wvRGlzcGxheUVBR0wubW06IEFkZGVkLgorKyAgICAgICAgKHJ4OjpGdW5jdGlvbnNH
TEVBR0w6OkZ1bmN0aW9uc0dMRUFHTCk6CisrICAgICAgICAocng6OkRpc3BsYXlFQUdMOjpEaXNw
bGF5RUFHTCk6CisrICAgICAgICAocng6OkRpc3BsYXlFQUdMOjp+RGlzcGxheUVBR0wpOgorKyAg
ICAgICAgKHJ4OjpEaXNwbGF5RUFHTDo6aW5pdGlhbGl6ZSk6CisrICAgICAgICAocng6OkRpc3Bs
YXlFQUdMOjp0ZXJtaW5hdGUpOgorKyAgICAgICAgKHJ4OjpEaXNwbGF5RUFHTDo6Y3JlYXRlV2lu
ZG93U3VyZmFjZSk6CisrICAgICAgICAocng6OkRpc3BsYXlFQUdMOjpjcmVhdGVQYnVmZmVyU3Vy
ZmFjZSk6CisrICAgICAgICAocng6OkRpc3BsYXlFQUdMOjpjcmVhdGVQYnVmZmVyRnJvbUNsaWVu
dEJ1ZmZlcik6CisrICAgICAgICAocng6OkRpc3BsYXlFQUdMOjpjcmVhdGVQaXhtYXBTdXJmYWNl
KToKKysgICAgICAgIChyeDo6RGlzcGxheUVBR0w6OmNyZWF0ZUNvbnRleHQpOgorKyAgICAgICAg
KHJ4OjpEaXNwbGF5RUFHTDo6Y3JlYXRlRGV2aWNlKToKKysgICAgICAgIChyeDo6RGlzcGxheUVB
R0w6OmdlbmVyYXRlQ29uZmlncyk6CisrICAgICAgICAocng6OkRpc3BsYXlFQUdMOjp0ZXN0RGV2
aWNlTG9zdCk6CisrICAgICAgICAocng6OkRpc3BsYXlFQUdMOjpyZXN0b3JlTG9zdERldmljZSk6
CisrICAgICAgICAocng6OkRpc3BsYXlFQUdMOjppc1ZhbGlkTmF0aXZlV2luZG93IGNvbnN0KToK
KysgICAgICAgIChyeDo6RGlzcGxheUVBR0w6OnZhbGlkYXRlQ2xpZW50QnVmZmVyIGNvbnN0KToK
KysgICAgICAgIChyeDo6RGlzcGxheUVBR0w6OmdldFZlbmRvclN0cmluZyBjb25zdCk6CisrICAg
ICAgICAocng6OkRpc3BsYXlFQUdMOjpnZXRFQUdMQ29udGV4dCBjb25zdCk6CisrICAgICAgICAo
cng6OkRpc3BsYXlFQUdMOjpnZXRFQUdMUGl4ZWxGb3JtYXQgY29uc3QpOgorKyAgICAgICAgKHJ4
OjpEaXNwbGF5RUFHTDo6Z2VuZXJhdGVFeHRlbnNpb25zIGNvbnN0KToKKysgICAgICAgIChyeDo6
RGlzcGxheUVBR0w6OmdlbmVyYXRlQ2FwcyBjb25zdCk6CisrICAgICAgICAocng6OkRpc3BsYXlF
QUdMOjp3YWl0Q2xpZW50KToKKysgICAgICAgIChyeDo6RGlzcGxheUVBR0w6OndhaXROYXRpdmUp
OgorKyAgICAgICAgKHJ4OjpEaXNwbGF5RUFHTDo6Z2V0TWF4U3VwcG9ydGVkRVNWZXJzaW9uIGNv
bnN0KToKKysgICAgICAgIChyeDo6RGlzcGxheUVBR0w6Om1ha2VDdXJyZW50U3VyZmFjZWxlc3Mp
OgorKyAgICAgICAgKHJ4OjpXb3JrZXJDb250ZXh0RUFHTDo6V29ya2VyQ29udGV4dEVBR0wpOgor
KyAgICAgICAgKHJ4OjpXb3JrZXJDb250ZXh0RUFHTDo6fldvcmtlckNvbnRleHRFQUdMKToKKysg
ICAgICAgIChyeDo6V29ya2VyQ29udGV4dEVBR0w6Om1ha2VDdXJyZW50KToKKysgICAgICAgIChy
eDo6V29ya2VyQ29udGV4dEVBR0w6OnVubWFrZUN1cnJlbnQpOgorKyAgICAgICAgKHJ4OjpEaXNw
bGF5RUFHTDo6Y3JlYXRlV29ya2VyQ29udGV4dCk6CisrICAgICAgICAocng6OkRpc3BsYXlFQUdM
Ojppbml0aWFsaXplRnJvbnRlbmRGZWF0dXJlcyBjb25zdCk6CisrICAgICAgICAocng6OkRpc3Bs
YXlFQUdMOjpwb3B1bGF0ZUZlYXR1cmVMaXN0KToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3Jl
bmRlcmVyL2dsL2VhZ2wvSU9TdXJmYWNlU3VyZmFjZUVBR0wuaDogQWRkZWQuCisrICAgICAgICAq
IHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0lPU3VyZmFjZVN1cmZhY2VFQUdMLm1tOiBD
b3BpZWQgZnJvbSBTb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIv
Z2wvY2dsL0lPU3VyZmFjZVN1cmZhY2VDR0wuY3BwLgorKyAgICAgICAgKHJ4OjpJT1N1cmZhY2VT
dXJmYWNlRUFHTDo6SU9TdXJmYWNlU3VyZmFjZUVBR0wpOgorKyAgICAgICAgKHJ4OjpJT1N1cmZh
Y2VTdXJmYWNlRUFHTDo6fklPU3VyZmFjZVN1cmZhY2VFQUdMKToKKysgICAgICAgIChyeDo6SU9T
dXJmYWNlU3VyZmFjZUVBR0w6OmluaXRpYWxpemUpOgorKyAgICAgICAgKHJ4OjpJT1N1cmZhY2VT
dXJmYWNlRUFHTDo6bWFrZUN1cnJlbnQpOgorKyAgICAgICAgKHJ4OjpJT1N1cmZhY2VTdXJmYWNl
RUFHTDo6dW5NYWtlQ3VycmVudCk6CisrICAgICAgICAocng6OklPU3VyZmFjZVN1cmZhY2VFQUdM
Ojpzd2FwKToKKysgICAgICAgIChyeDo6SU9TdXJmYWNlU3VyZmFjZUVBR0w6OnBvc3RTdWJCdWZm
ZXIpOgorKyAgICAgICAgKHJ4OjpJT1N1cmZhY2VTdXJmYWNlRUFHTDo6cXVlcnlTdXJmYWNlUG9p
bnRlckFOR0xFKToKKysgICAgICAgIChyeDo6SU9TdXJmYWNlU3VyZmFjZUVBR0w6OmJpbmRUZXhJ
bWFnZSk6CisrICAgICAgICAocng6OklPU3VyZmFjZVN1cmZhY2VFQUdMOjpyZWxlYXNlVGV4SW1h
Z2UpOgorKyAgICAgICAgKHJ4OjpJT1N1cmZhY2VTdXJmYWNlRUFHTDo6c2V0U3dhcEludGVydmFs
KToKKysgICAgICAgIChyeDo6SU9TdXJmYWNlU3VyZmFjZUVBR0w6OmdldFdpZHRoIGNvbnN0KToK
KysgICAgICAgIChyeDo6SU9TdXJmYWNlU3VyZmFjZUVBR0w6OmdldEhlaWdodCBjb25zdCk6Cisr
ICAgICAgICAocng6OklPU3VyZmFjZVN1cmZhY2VFQUdMOjppc1Bvc3RTdWJCdWZmZXJTdXBwb3J0
ZWQgY29uc3QpOgorKyAgICAgICAgKHJ4OjpJT1N1cmZhY2VTdXJmYWNlRUFHTDo6Z2V0U3dhcEJl
aGF2aW9yIGNvbnN0KToKKysgICAgICAgIChyeDo6SU9TdXJmYWNlU3VyZmFjZUVBR0w6OnZhbGlk
YXRlQXR0cmlidXRlcyk6CisrICAgICAgICAocng6OklPU3VyZmFjZUZyYW1lYnVmZmVyOjpJT1N1
cmZhY2VGcmFtZWJ1ZmZlcik6CisrICAgICAgICAocng6OklPU3VyZmFjZVN1cmZhY2VFQUdMOjpj
cmVhdGVEZWZhdWx0RnJhbWVidWZmZXIpOgorKyAgICAgICAgKHJ4OjpJT1N1cmZhY2VTdXJmYWNl
RUFHTDo6aW5pdGlhbGl6ZUFscGhhQ2hhbm5lbCk6CisrICAgICAgICAocng6OklPU3VyZmFjZVN1
cmZhY2VFQUdMOjpoYXNFbXVsYXRlZEFscGhhQ2hhbm5lbCBjb25zdCk6CisrICAgICAgICAqIHNy
Yy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL1BidWZmZXJTdXJmYWNlRUFHTC5jcHA6IENvcGll
ZCBmcm9tIFNvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9j
Z2wvUGJ1ZmZlclN1cmZhY2VDR0wuY3BwLgorKyAgICAgICAgKHJ4OjpQYnVmZmVyU3VyZmFjZUVB
R0w6OlBidWZmZXJTdXJmYWNlRUFHTCk6CisrICAgICAgICAocng6OlBidWZmZXJTdXJmYWNlRUFH
TDo6flBidWZmZXJTdXJmYWNlRUFHTCk6CisrICAgICAgICAocng6OlBidWZmZXJTdXJmYWNlRUFH
TDo6aW5pdGlhbGl6ZSk6CisrICAgICAgICAocng6OlBidWZmZXJTdXJmYWNlRUFHTDo6bWFrZUN1
cnJlbnQpOgorKyAgICAgICAgKHJ4OjpQYnVmZmVyU3VyZmFjZUVBR0w6OnN3YXApOgorKyAgICAg
ICAgKHJ4OjpQYnVmZmVyU3VyZmFjZUVBR0w6OnBvc3RTdWJCdWZmZXIpOgorKyAgICAgICAgKHJ4
OjpQYnVmZmVyU3VyZmFjZUVBR0w6OnF1ZXJ5U3VyZmFjZVBvaW50ZXJBTkdMRSk6CisrICAgICAg
ICAocng6OlBidWZmZXJTdXJmYWNlRUFHTDo6YmluZFRleEltYWdlKToKKysgICAgICAgIChyeDo6
UGJ1ZmZlclN1cmZhY2VFQUdMOjpyZWxlYXNlVGV4SW1hZ2UpOgorKyAgICAgICAgKHJ4OjpQYnVm
ZmVyU3VyZmFjZUVBR0w6OnNldFN3YXBJbnRlcnZhbCk6CisrICAgICAgICAocng6OlBidWZmZXJT
dXJmYWNlRUFHTDo6Z2V0V2lkdGggY29uc3QpOgorKyAgICAgICAgKHJ4OjpQYnVmZmVyU3VyZmFj
ZUVBR0w6OmdldEhlaWdodCBjb25zdCk6CisrICAgICAgICAocng6OlBidWZmZXJTdXJmYWNlRUFH
TDo6aXNQb3N0U3ViQnVmZmVyU3VwcG9ydGVkIGNvbnN0KToKKysgICAgICAgIChyeDo6UGJ1ZmZl
clN1cmZhY2VFQUdMOjpnZXRTd2FwQmVoYXZpb3IgY29uc3QpOgorKyAgICAgICAgKHJ4OjpQYnVm
ZmVyU3VyZmFjZUVBR0w6OmNyZWF0ZURlZmF1bHRGcmFtZWJ1ZmZlcik6CisrICAgICAgICAqIHNy
Yy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL1BidWZmZXJTdXJmYWNlRUFHTC5oOiBBZGRlZC4K
KysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvUmVuZGVyZXJFQUdMLmNw
cDogQWRkZWQuCisrICAgICAgICAocng6OlJlbmRlcmVyRUFHTDo6UmVuZGVyZXJFQUdMKToKKysg
ICAgICAgIChyeDo6UmVuZGVyZXJFQUdMOjp+UmVuZGVyZXJFQUdMKToKKysgICAgICAgIChyeDo6
UmVuZGVyZXJFQUdMOjpjcmVhdGVXb3JrZXJDb250ZXh0KToKKysgICAgICAgICogc3JjL2xpYkFO
R0xFL3JlbmRlcmVyL2dsL2VhZ2wvUmVuZGVyZXJFQUdMLmg6IEFkZGVkLgorKyAgICAgICAgKiBz
cmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9XaW5kb3dTdXJmYWNlRUFHTC5oOiBBZGRlZC4K
KysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvV2luZG93U3VyZmFjZUVB
R0wubW06IENvcGllZCBmcm9tIFNvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9y
ZW5kZXJlci9nbC9jZ2wvV2luZG93U3VyZmFjZUNHTC5tbS4KKysgICAgICAgICgtW1dlYlN3YXBM
YXllciBpbml0V2l0aFNoYXJlZFN0YXRlOndpdGhDb250ZXh0OndpdGhGdW5jdGlvbnM6XSk6Cisr
ICAgICAgICAoLVtXZWJTd2FwTGF5ZXIgZGlzcGxheV0pOgorKyAgICAgICAgKHJ4OjpXaW5kb3dT
dXJmYWNlRUFHTDo6V2luZG93U3VyZmFjZUVBR0wpOgorKyAgICAgICAgKHJ4OjpXaW5kb3dTdXJm
YWNlRUFHTDo6fldpbmRvd1N1cmZhY2VFQUdMKToKKysgICAgICAgIChyeDo6V2luZG93U3VyZmFj
ZUVBR0w6OmluaXRpYWxpemUpOgorKyAgICAgICAgKHJ4OjpXaW5kb3dTdXJmYWNlRUFHTDo6bWFr
ZUN1cnJlbnQpOgorKyAgICAgICAgKHJ4OjpXaW5kb3dTdXJmYWNlRUFHTDo6c3dhcCk6CisrICAg
ICAgICAocng6OldpbmRvd1N1cmZhY2VFQUdMOjpwb3N0U3ViQnVmZmVyKToKKysgICAgICAgIChy
eDo6V2luZG93U3VyZmFjZUVBR0w6OnF1ZXJ5U3VyZmFjZVBvaW50ZXJBTkdMRSk6CisrICAgICAg
ICAocng6OldpbmRvd1N1cmZhY2VFQUdMOjpiaW5kVGV4SW1hZ2UpOgorKyAgICAgICAgKHJ4OjpX
aW5kb3dTdXJmYWNlRUFHTDo6cmVsZWFzZVRleEltYWdlKToKKysgICAgICAgIChyeDo6V2luZG93
U3VyZmFjZUVBR0w6OnNldFN3YXBJbnRlcnZhbCk6CisrICAgICAgICAocng6OldpbmRvd1N1cmZh
Y2VFQUdMOjpnZXRXaWR0aCBjb25zdCk6CisrICAgICAgICAocng6OldpbmRvd1N1cmZhY2VFQUdM
OjpnZXRIZWlnaHQgY29uc3QpOgorKyAgICAgICAgKHJ4OjpXaW5kb3dTdXJmYWNlRUFHTDo6aXNQ
b3N0U3ViQnVmZmVyU3VwcG9ydGVkIGNvbnN0KToKKysgICAgICAgIChyeDo6V2luZG93U3VyZmFj
ZUVBR0w6OmdldFN3YXBCZWhhdmlvciBjb25zdCk6CisrICAgICAgICAocng6OldpbmRvd1N1cmZh
Y2VFQUdMOjpjcmVhdGVEZWZhdWx0RnJhbWVidWZmZXIpOgorKyAgICAgICAgKiBzcmMvbGliQU5H
TEUvcmVuZGVyZXIvZ2wvcmVuZGVyZXJnbF91dGlscy5jcHA6CisrICAgICAgICAocng6Om5hdGl2
ZWdsX2dsOjpHZW5lcmF0ZUNhcHMpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvdmFsaWRhdGlv
bkVTMi5jcHA6CisrICAgICAgICAoZ2w6OlZhbGlkYXRlRnJhbWVidWZmZXJUZXh0dXJlMkQpOgor
KyAgICAgICAgKiBzcmMvbGliR0xFU3YyL2VudHJ5X3BvaW50c19lZ2xfZXh0LmNwcDoKKysKKysy
MDE5LTExLTA2ICBEZWFuIEphY2tzb24gIDxkaW5vQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFtB
TkdMRV0gSU9TdXJmYWNlU3VyZmFjZUNHTCBoYXMgZm9ybWF0IGFuZCBpbnRlcm5hbEZvcm1hdCBm
bGlwcGVkCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MjAzOTExCisrICAgICAgICA8cmRhcjovL3Byb2JsZW0vNTY5NTQyOTE+CisrCisrICAgICAgICBS
ZXZpZXdlZCBieSBTaW1vbiBGcmFzZXIuCisrCisrICAgICAgICBGaXggYSB0eXBvIHdoZXJlIGlu
dGVybmFsRm9ybWF0IGFuZCBmb3JtYXQgYXJlIHVzZWQgaW4gdGhlCisrICAgICAgICB3cm9uZyBv
cmRlci4gVGhlIHRhYmxlIG9mIGZvcm1hdHMgYWxzbyBoYWQgdGhlbSBiYWNrd2FyZHMuCisrCisr
ICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvSU9TdXJmYWNlU3VyZmFjZUNH
TC5jcHA6CisrICAgICAgICAocng6OklPU3VyZmFjZVN1cmZhY2VDR0w6OmJpbmRUZXhJbWFnZSk6
CisrCisrMjAxOS0xMC0yOSAgRGVhbiBKYWNrc29uICA8ZGlub0BhcHBsZS5jb20+CisrCisrICAg
ICAgICBbQU5HTEVdIFB1dCBBcHBsZSBwbGF0Zm9ybSBjb21waWxhdGlvbiBndWFyZHMgaW4gYSBi
ZXR0ZXIgcGxhY2UKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMDM1OTAKKysgICAgICAgIDxyZGFyOi8vcHJvYmxlbS81NjcyMjM0NT4KKysKKysgICAg
ICAgIFJldmlld2VkIGJ5IFNpbW9uIEZyYXNlci4KKysKKysgICAgICAgIE1vdmUgdGhlICNkZWZp
bmUgdG8gcGxhdGZvcm0uaC4KKysKKysgICAgICAgICogc3JjL2NvbW1vbi9wbGF0Zm9ybS5oOgor
KyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0RldmljZUNHTC5jcHA6Cisr
ICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvRGlzcGxheUNHTC5tbToKKysg
ICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9JT1N1cmZhY2VTdXJmYWNlQ0dM
LmNwcDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9QYnVmZmVyU3Vy
ZmFjZUNHTC5jcHA6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvUmVu
ZGVyZXJDR0wuY3BwOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL1dp
bmRvd1N1cmZhY2VDR0wubW06CisrCisrMjAxOS0xMC0yOSAgRGVhbiBKYWNrc29uICA8ZGlub0Bh
cHBsZS5jb20+CisrCisrICAgICAgICBbQU5HTEVdIFdpbmRvdyBTZXJ2ZXIgYmxvY2tpbmcgc3Rv
cHMgc2luZ2xlIEdQVSBzeXN0ZW1zIGZyb20gY3JlYXRpbmcgYSBDR0xQaXhlbEZvcm1hdAorKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwMzUyMgorKyAg
ICAgICAgPHJkYXI6Ly9wcm9ibGVtLzU2Njg1MzAyPgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkg
QWxleCBDaHJpc3RlbnNlbi4KKysKKysgICAgICAgIFRoZSBXZWIgQ29udGVudCBQcm9jZXNzIGJs
b2NrcyBhY2Nlc3MgdG8gdGhlIFdpbmRvdyBTZXJ2ZXIuIEZvciB0aGF0IHJlYXNvbiwgd2UKKysg
ICAgICAgIG11c3QgY3JlYXRlIGFsbCBDR0xQaXhlbEZvcm1hdHMgd2l0aCB0aGUgIm9mZmxpbmUg
cmVuZGVyZXIiIGZsYWcsIGV2ZW4gaWYgd2UncmUKKysgICAgICAgIG5vdCBvbiBhIGR1YWwtR1BV
IHN5c3RlbS4KKysKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9EaXNw
bGF5Q0dMLm1tOiBBbHdheXMgZW5hYmxlIGtDR0xQRkFBbGxvd09mZmxpbmVSZW5kZXJlcnMuCisr
ICAgICAgICAocng6OkRpc3BsYXlDR0w6OmluaXRpYWxpemUpOgorKworKzIwMTktMTAtMjMgIERl
YW4gSmFja3NvbiAgPGRpbm9AYXBwbGUuY29tPgorKworKyAgICAgICAgW0FOR0xFXSBJbXByb3Zl
IGNvbXBpbGUtdGltZSBtYWNPUyBndWFyZHMgYW5kIGF2b2lkIE9iakMgaWYgcG9zc2libGUKKysg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDMzNDMKKysK
KysgICAgICAgIFJldmlld2VkIGJ5IFNpbW9uIEZyYXNlci4KKysKKysgICAgICAgIFVzZSB0aGUg
bW9yZSBvZmZpY2lhbCBjb21waWxlLXRpbWUgZGV0ZWN0aW9uIG9mIEFwcGxlIHBsYXRmb3Jtcywg
c28gdGhhdAorKyAgICAgICAgaXQgd2lsbCBiZSBlYXNpZXIgdG8gZGlmZmVyZW50aWF0ZSBiZXR3
ZWVuIG1hY09TIGFuZCBpT1MuIEFsc28gbW92ZSBzb21lCisrICAgICAgICAubW0gZmlsZXMgdG8g
LmNwcCB3aGVyZSBwb3NzaWJsZS4KKysKKysgICAgICAgICogQU5HTEUueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvajoKKysgICAgICAgICogc3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mb19tYWMu
Y3BwOiBSZW5hbWVkIGZyb20gU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2dwdV9pbmZvX3V0
aWwvU3lzdGVtSW5mb19tYWMubW0uCisrICAgICAgICAoYW5nbGU6OkdldFN5c3RlbUluZm8pOgor
KyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0RldmljZUNHTC5jcHA6Cisr
ICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvRGlzcGxheUNHTC5tbToKKysg
ICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9JT1N1cmZhY2VTdXJmYWNlQ0dM
LmNwcDogUmVuYW1lZCBmcm9tIFNvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9y
ZW5kZXJlci9nbC9jZ2wvSU9TdXJmYWNlU3VyZmFjZUNHTC5tbS4KKysgICAgICAgICogc3JjL2xp
YkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9QYnVmZmVyU3VyZmFjZUNHTC5jcHA6IFJlbmFtZWQgZnJv
bSBTb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL1Bi
dWZmZXJTdXJmYWNlQ0dMLm1tLgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wv
Y2dsL1JlbmRlcmVyQ0dMLmNwcDogUmVuYW1lZCBmcm9tIFNvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvUmVuZGVyZXJDR0wubW0uCisrICAgICAgICAq
IHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvV2luZG93U3VyZmFjZUNHTC5tbToKKysKKysy
MDE5LTEwLTIzICBEZWFuIEphY2tzb24gIDxkaW5vQGFwcGxlLmNvbT4KKysKKysgICAgICAgIERv
bid0IHRyeSB0byBjb21waWxlIC5pbmMgZmlsZXMgaW4gQU5HTEUKKysgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDMzMTUKKysKKysgICAgICAgIFJldmll
d2VkIGJ5IFNpbW9uIEZyYXNlci4KKysKKysgICAgICAgIFRoZXNlIGFyZSBoZWFkZXJzLCBub3Qg
ZmlsZXMgd2UgbmVlZCB0byBjb21waWxlIGRpcmVjdGx5LgorKworKyAgICAgICAgKiBBTkdMRS54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorKworKzIwMTktMTAtMTUgIEJyZW50IEZ1bGdoYW0g
IDxiZnVsZ2hhbUBhcHBsZS5jb20+CisrCisrICAgICAgICBVbnJldmlld2VkIGJ1aWxkIGZpeCBh
ZnRlciByMjUxMDE4CisrCisrCisrICAgICAgICAqIFBsYXRmb3JtRlRXLmNtYWtlOiBBZGQgbWlz
c2luZyBkeGdpIGxpYnJhcnkuCisrCisrMjAxOS0xMC0xMiAgU3RlcGhhbiBTemFibyAgPHN0ZXBo
YW4uc3phYm9Ac29ueS5jb20+CisrCisrICAgICAgICBSZWdyZXNzaW9uICgyNTEwMTgpOiBXaW5j
YWlybyBidWlsZCBicm9rZW46IHVucmVzb2x2ZWQgZXh0ZXJuYWwgc3ltYm9sCisrICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAyODc5CisrCisrICAgICAg
ICBSZXZpZXdlZCBieSBBbGV4IENocmlzdGVuc2VuLgorKworKyAgICAgICAgKiBQbGF0Zm9ybVdp
bi5jbWFrZTogQWRkIGR4Z2kgbGlicmFyeSBmb3IgQ3JlYXRlRFhHSUZhY3RvcnkxCisrCisrMjAx
OS0xMC0xMSAgS2VubmV0aCBSdXNzZWxsICA8a2JyQGNocm9taXVtLm9yZz4KKysKKysgICAgICAg
IFVTRV9BTkdMRT0xIGJ1aWxkIGJyb2tlbiB3aXRoIGxhc3QgQU5HTEUgcm9sbAorKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwMjg3MgorKworKyAgICAg
ICAgQWRkIEZyYW1lQ2FwdHVyZV9tb2NrLmNwcCB0byBYY29kZSBhbmQgQ01ha2UgYnVpbGRzLgor
KworKyAgICAgICAgUmV2aWV3ZWQgYnkgQWxleCBDaHJpc3RlbnNlbi4KKysKKysgICAgICAgICog
QU5HTEUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKysgICAgICAgICogQ01ha2VMaXN0cy50
eHQ6CisrICAgICAgICAqIEdMRVN2Mi5jbWFrZToKKysKKysyMDE5LTEwLTExICBLZW5uZXRoIFJ1
c3NlbGwgIDxrYnJAY2hyb21pdW0ub3JnPgorKworKyAgICAgICAgUm9sbCBBTkdMRSBmb3IgRVRD
IGV4dGVuc2lvbnMgYW5kIEVHTF9BTkdMRV9kZXZpY2VfY2dsCisrICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAyNzgwCisrCisrICAgICAgICBSb2xsIEFO
R0xFIHRvIGM1ZTBhYzc1N2ExMTJhMjRhMDExOGQ0MzRlNjUyZmQ3YjU1OGU2YTggdmlhIG5ldwor
KyAgICAgICAgdXBkYXRlLWFuZ2xlLnNoIHNjcmlwdC4KKysKKysgICAgICAgIFJldmlld2VkIGJ5
IEFsZXggQ2hyaXN0ZW5zZW4uCisrCisrICAgICAgICAqIC5naXRpZ25vcmU6CisrICAgICAgICAq
IEFOR0xFLnBsaXN0OgorKyAgICAgICAgKiBBTkdMRS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
OgorKyAgICAgICAgKiBCVUlMRC5nbjoKKysgICAgICAgICogQ01ha2VMaXN0cy50eHQ6CisrICAg
ICAgICAqIENPTlRSSUJVVE9SUzoKKysgICAgICAgICogREVQUzoKKysgICAgICAgICogR0xFU3Yy
LmNtYWtlOgorKyAgICAgICAgKiBPV05FUlM6CisrICAgICAgICAqIFBSRVNVQk1JVC5weToKKysg
ICAgICAgIChfQ2hlY2tFeHBvcnRWYWxpZGl0eSk6CisrICAgICAgICAoQ2hlY2tDaGFuZ2VPblVw
bG9hZCk6CisrICAgICAgICAoQ2hlY2tDaGFuZ2VPbkNvbW1pdCk6CisrICAgICAgICAqIFJFQURN
RS5tZDoKKysgICAgICAgICogYW5kcm9pZC9hbmdsZV9hcGsuZ25pOgorKyAgICAgICAgKiBidWls
ZF9vdmVycmlkZXMvYW5nbGUuZ25pOgorKyAgICAgICAgKiBjaGFuZ2VzLmRpZmY6CisrICAgICAg
ICAqIGRvYy9EZXZTZXR1cC5tZDoKKysgICAgICAgICogZG90ZmlsZV9zZXR0aW5ncy5nbmk6Cisr
ICAgICAgICAqIGV4dGVuc2lvbnMvQU5HTEVfY29tcHJlc3NlZF90ZXh0dXJlX2V0Yy50eHQ6IEFk
ZGVkLgorKyAgICAgICAgKiBleHRlbnNpb25zL0VHTF9BTkdMRV9kZXZpY2VfY2dsLnR4dDogQWRk
ZWQuCisrICAgICAgICAqIGV4dGVuc2lvbnMvRUdMX0FOR0xFX2ZlYXR1cmVfY29udHJvbC50eHQ6
CisrICAgICAgICAqIGV4dGVuc2lvbnMvRUdMX0FOR0xFX3BsYXRmb3JtX2FuZ2xlX2QzZDExb24x
Mi50eHQ6IEFkZGVkLgorKyAgICAgICAgKiBleHRlbnNpb25zL0VHTF9BTkdMRV9wbGF0Zm9ybV9h
bmdsZV9kZXZpY2VfdHlwZV9zd2lmdHNoYWRlci50eHQ6IEFkZGVkLgorKyAgICAgICAgKiBleHRl
bnNpb25zL0VHTF9BTkdMRV9wbGF0Zm9ybV9hbmdsZV9tZXRhbC50eHQ6IEFkZGVkLgorKyAgICAg
ICAgKiBnbmkvYW5nbGUuZ25pOgorKyAgICAgICAgKiBpbmNsdWRlL0VHTC9lZ2xleHRfYW5nbGUu
aDoKKysgICAgICAgICogaW5jbHVkZS9wbGF0Zm9ybS9GZWF0dXJlLmg6CisrICAgICAgICAoYW5n
bGU6OkZlYXR1cmU6OkZlYXR1cmUpOgorKyAgICAgICAgKiBpbmNsdWRlL3BsYXRmb3JtL0ZlYXR1
cmVzRDNELmg6CisrICAgICAgICAqIGluY2x1ZGUvcGxhdGZvcm0vRmVhdHVyZXNHTC5oOgorKyAg
ICAgICAgKiBpbmNsdWRlL3BsYXRmb3JtL0ZlYXR1cmVzVmsuaDoKKysgICAgICAgICogaW5jbHVk
ZS9wbGF0Zm9ybS9Gcm9udGVuZEZlYXR1cmVzLmg6CisrICAgICAgICAqIHNhbXBsZXMvV2luZG93
VGVzdC9XaW5kb3dUZXN0LmNwcDoKKysgICAgICAgICogc2FtcGxlcy9nbGVzMS9EcmF3VGV4dHVy
ZS5jcHA6CisrICAgICAgICAqIHNhbXBsZXMvbXVsdGlfdGV4dHVyZS9NdWx0aVRleHR1cmUuY3Bw
OgorKyAgICAgICAgKiBzYW1wbGVzL211bHRpcGxlX2RyYXdfYnVmZmVycy9NdWx0aXBsZURyYXdC
dWZmZXJzLmNwcDoKKysgICAgICAgICogc2FtcGxlcy9wYXJ0aWNsZV9zeXN0ZW0vUGFydGljbGVT
eXN0ZW0uY3BwOgorKyAgICAgICAgKiBzYW1wbGVzL3NhbXBsZV91dGlsL1NhbXBsZUFwcGxpY2F0
aW9uLmNwcDoKKysgICAgICAgIChTYW1wbGVBcHBsaWNhdGlvbjo6U2FtcGxlQXBwbGljYXRpb24p
OgorKyAgICAgICAgKiBzYW1wbGVzL3NhbXBsZV91dGlsL1NhbXBsZUFwcGxpY2F0aW9uLmg6Cisr
ICAgICAgICAqIHNjcmlwdHMvY29kZV9nZW5lcmF0aW9uX2hhc2hlcy9BTkdMRV9mb3JtYXQuanNv
bjoKKysgICAgICAgICogc2NyaXB0cy9jb2RlX2dlbmVyYXRpb25faGFzaGVzL0FOR0xFX2xvYWRf
ZnVuY3Rpb25zX3RhYmxlLmpzb246CisrICAgICAgICAqIHNjcmlwdHMvY29kZV9nZW5lcmF0aW9u
X2hhc2hlcy9EM0QxMV9mb3JtYXQuanNvbjoKKysgICAgICAgICogc2NyaXB0cy9jb2RlX2dlbmVy
YXRpb25faGFzaGVzL0RYR0lfZm9ybWF0Lmpzb246CisrICAgICAgICAqIHNjcmlwdHMvY29kZV9n
ZW5lcmF0aW9uX2hhc2hlcy9HTF9FR0xfV0dMX2xvYWRlci5qc29uOgorKyAgICAgICAgKiBzY3Jp
cHRzL2NvZGVfZ2VuZXJhdGlvbl9oYXNoZXMvR0xfRUdMX2VudHJ5X3BvaW50cy5qc29uOgorKyAg
ICAgICAgKiBzY3JpcHRzL2NvZGVfZ2VuZXJhdGlvbl9oYXNoZXMvT3BlbkdMX2Rpc3BhdGNoX3Rh
YmxlLmpzb246CisrICAgICAgICAqIHNjcmlwdHMvY29kZV9nZW5lcmF0aW9uX2hhc2hlcy9TdGF0
aWNfYnVpbHRpbnMuanNvbjoKKysgICAgICAgICogc2NyaXB0cy9jb2RlX2dlbmVyYXRpb25faGFz
aGVzL1Z1bGthbl9mb3JtYXQuanNvbjoKKysgICAgICAgICogc2NyaXB0cy9jb2RlX2dlbmVyYXRp
b25faGFzaGVzL1Z1bGthbl9pbnRlcm5hbF9zaGFkZXJfcHJvZ3JhbXMuanNvbjoKKysgICAgICAg
ICogc2NyaXB0cy9jb2RlX2dlbmVyYXRpb25faGFzaGVzL1Z1bGthbl9tYW5kYXRvcnlfZm9ybWF0
X3N1cHBvcnRfdGFibGUuanNvbjoKKysgICAgICAgICogc2NyaXB0cy9jb2RlX2dlbmVyYXRpb25f
aGFzaGVzL3Byb2NfdGFibGUuanNvbjoKKysgICAgICAgICogc2NyaXB0cy9leHBvcnRfdGFyZ2V0
cy5weToKKysgICAgICAgIChoYXNfYWxsX2luY2x1ZGVzKToKKysgICAgICAgICogc2NyaXB0cy9n
ZW5lcmF0ZV9lbnRyeV9wb2ludHMucHk6CisrICAgICAgICAoZ2V0X3Jlc291cmNlX2lkX3R5cGVz
KToKKysgICAgICAgIChmb3JtYXRfcmVzb3VyY2VfaWRfdHlwZXMpOgorKyAgICAgICAgKHdyaXRl
X2NhcHR1cmVfaGVscGVyX2hlYWRlcik6CisrICAgICAgICAoZ2V0X3Jlc291cmNlX2lkX3R5cGVf
ZnJvbV9wYXJhbV90eXBlKToKKysgICAgICAgIChmb3JtYXRfcGFyYW1fdHlwZV90b19yZXNvdXJj
ZV9pZF90eXBlX2Nhc2UpOgorKyAgICAgICAgKGZvcm1hdF9wYXJhbV90eXBlX3Jlc291cmNlX2lk
X2Nhc2VzKToKKysgICAgICAgIChmb3JtYXRfcmVzb3VyY2VfaWRfdHlwZV9uYW1lX2Nhc2UpOgor
KyAgICAgICAgKHdyaXRlX2NhcHR1cmVfaGVscGVyX3NvdXJjZSk6CisrICAgICAgICAqIHNjcmlw
dHMvZ2VuZXJhdGVfdnVsa2FuX2xheWVyc19qc29uLnB5OgorKyAgICAgICAgKG1haW4pOgorKyAg
ICAgICAgKiBzY3JpcHRzL3JlZ2lzdHJ5X3htbC5weToKKysgICAgICAgICogc3JjL2NvbW1vbi9Q
YWNrZWRFbnVtcy5jcHA6CisrICAgICAgICAoZ2w6Om9wZXJhdG9yPDwpOgorKyAgICAgICAgKiBz
cmMvY29tbW9uL1BhY2tlZEVudW1zLmg6CisrICAgICAgICAoYW5nbGU6OkVudW1TaXplPEU+KToK
KysgICAgICAgIChnbDo6RnJvbUdMZW51bTxWZXJ0ZXhBdHRyaWJUeXBlPik6CisrICAgICAgICAo
Z2w6OlRvR0xlbnVtKToKKysgICAgICAgIChnbDo6VmFsdWVFcXVhbHMpOgorKyAgICAgICAgKGds
OjpvcGVyYXRvcj09KToKKysgICAgICAgIChnbDo6b3BlcmF0b3IhPSk6CisrICAgICAgICAqIHNy
Yy9jb21tb24vYW5kcm9pZF91dGlsLmNwcDoKKysgICAgICAgIChhbmdsZTo6YW5kcm9pZDo6TmF0
aXZlUGl4ZWxGb3JtYXRUb0dMSW50ZXJuYWxGb3JtYXQpOgorKyAgICAgICAgKiBzcmMvY29tbW9u
L2FuZ2xldXRpbHMuaDoKKysgICAgICAgICogc3JjL2NvbW1vbi9kZWJ1Zy5oOgorKyAgICAgICAg
KiBzcmMvY29tbW9uL3BsYXRmb3JtLmg6CisrICAgICAgICAqIHNyYy9jb21tb24vc3lzdGVtX3V0
aWxzX3dpbnV3cC5jcHA6IEFkZGVkLgorKyAgICAgICAgKGFuZ2xlOjpTZXRFbnZpcm9ubWVudFZh
cik6CisrICAgICAgICAoYW5nbGU6OkdldEVudmlyb25tZW50VmFyKToKKysgICAgICAgIChhbmds
ZTo6R2V0U2hhcmVkTGlicmFyeUV4dGVuc2lvbik6CisrICAgICAgICAoYW5nbGU6OkdldFBhdGhT
ZXBhcmF0b3IpOgorKyAgICAgICAgKGFuZ2xlOjpHZXRDdXJyZW50VGltZSk6CisrICAgICAgICAo
YW5nbGU6OlV3cExpYnJhcnk6OlV3cExpYnJhcnkpOgorKyAgICAgICAgKGFuZ2xlOjpPcGVuU2hh
cmVkTGlicmFyeSk6CisrICAgICAgICAoYW5nbGU6OklzRGVidWdnZXJBdHRhY2hlZCk6CisrICAg
ICAgICAoYW5nbGU6OkJyZWFrRGVidWdnZXIpOgorKyAgICAgICAgKiBzcmMvY29tbW9uL3Rscy5j
cHA6CisrICAgICAgICAoQ3JlYXRlVExTSW5kZXgpOgorKyAgICAgICAgKERlc3Ryb3lUTFNJbmRl
eCk6CisrICAgICAgICAoU2V0VExTVmFsdWUpOgorKyAgICAgICAgKEdldFRMU1ZhbHVlKToKKysg
ICAgICAgICogc3JjL2NvbW1vbi90bHMuaDoKKysgICAgICAgICogc3JjL2NvbW1vbi91dGlsaXRp
ZXMuY3BwOgorKyAgICAgICAgKGdsOjpTdHJpcExhc3RBcnJheUluZGV4KToKKysgICAgICAgICog
c3JjL2NvbW1vbi91dGlsaXRpZXMuaDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyLmduaToKKysg
ICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvQ29tcGlsZXIuY3BwOgorKyAgICAgICAg
KHNoOjpUQ29tcGlsZXI6OmNvbXBpbGVUcmVlSW1wbCk6CisrICAgICAgICAqIHNyYy9jb21waWxl
ci90cmFuc2xhdG9yL0ltbXV0YWJsZVN0cmluZ19FU1NMX2F1dG9nZW4uY3BwOgorKyAgICAgICAg
KiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9JbW11dGFibGVTdHJpbmdfYXV0b2dlbi5jcHA6Cisr
ICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL0ludGVybU5vZGUuaDoKKysgICAgICAg
IChzaDo6VEludGVybVByZXByb2Nlc3NvckRpcmVjdGl2ZTo6Z2V0RGlyZWN0aXZlIGNvbnN0KTog
RGVsZXRlZC4KKysgICAgICAgIChzaDo6VEludGVybVByZXByb2Nlc3NvckRpcmVjdGl2ZTo6Z2V0
Q29tbWFuZCBjb25zdCk6IERlbGV0ZWQuCisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xh
dG9yL1BhcnNlQ29udGV4dC5jcHA6CisrICAgICAgICAoc2g6OlRQYXJzZUNvbnRleHQ6OlRQYXJz
ZUNvbnRleHQpOgorKyAgICAgICAgKHNoOjpUUGFyc2VDb250ZXh0OjpjaGVja0lzVmFsaWRBcnJh
eVNpemUpOgorKyAgICAgICAgKHNoOjpUUGFyc2VDb250ZXh0OjpwYXJzZUZ1bmN0aW9uRGVjbGFy
YXRvcik6CisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL1BhcnNlQ29udGV4dC5o
OgorKyAgICAgICAgKHNoOjpUUGFyc2VDb250ZXh0OjpnZXRPdXRwdXRUeXBlIGNvbnN0KToKKysg
ICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvU2hhZGVyVmFycy5jcHA6CisrICAgICAg
ICAoc2g6OlNoYWRlclZhcmlhYmxlOjpvcGVyYXRvcj0pOgorKyAgICAgICAgKiBzcmMvY29tcGls
ZXIvdHJhbnNsYXRvci9TeW1ib2xUYWJsZS5jcHA6CisrICAgICAgICAoc2g6OlRTeW1ib2xUYWJs
ZTo6c2V0R2xJbkFycmF5U2l6ZSk6CisrICAgICAgICAoc2g6OlRTeW1ib2xUYWJsZTo6Z2xfRnJh
Z0RhdGEgY29uc3QpOgorKyAgICAgICAgKHNoOjpUU3ltYm9sVGFibGU6OmdsX1NlY29uZGFyeUZy
YWdEYXRhRVhUIGNvbnN0KToKKysgICAgICAgIChzaDo6U3ltYm9sUnVsZTo6Z2V0IGNvbnN0KToK
KysgICAgICAgIChzaDo6RmluZE1hbmdsZWRCdWlsdEluKToKKysgICAgICAgIChzaDo6VW5tYW5n
bGVkRW50cnk6Om1hdGNoZXMgY29uc3QpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNs
YXRvci9TeW1ib2xUYWJsZS5oOgorKyAgICAgICAgKHNoOjpTeW1ib2xSdWxlOjpTeW1ib2xSdWxl
KToKKysgICAgICAgIChzaDo6U3ltYm9sUnVsZTo6R2V0KToKKysgICAgICAgIChzaDo6VW5tYW5n
bGVkRW50cnk6OlVubWFuZ2xlZEVudHJ5KToKKysgICAgICAgIChzaDo6U3ltYm9sRW50cnk6OlN5
bWJvbEVudHJ5KTogRGVsZXRlZC4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3Iv
U3ltYm9sVGFibGVfRVNTTF9hdXRvZ2VuLmNwcDoKKysgICAgICAgIChzaDo6QnVpbHRJblZhcmlh
YmxlOjphbmdsZV9CYXNlSW5zdGFuY2UpOgorKyAgICAgICAgKHNoOjpCdWlsdEluVmFyaWFibGU6
OmFuZ2xlX0Jhc2VWZXJ0ZXgpOgorKyAgICAgICAgKHNoOjpCdWlsdEluVmFyaWFibGU6OmdsX0Jh
c2VJbnN0YW5jZSk6CisrICAgICAgICAoc2g6OkJ1aWx0SW5WYXJpYWJsZTo6Z2xfQmFzZVZlcnRl
eCk6CisrICAgICAgICAoc2g6OkJ1aWx0SW5WYXJpYWJsZTo6Z2xfRHJhd0lEKToKKysgICAgICAg
IChzaDo6QnVpbHRJblZhcmlhYmxlOjpnbF9GcmFnQ29sb3IpOgorKyAgICAgICAgKHNoOjpCdWls
dEluVmFyaWFibGU6OmdsX0ZyYWdDb29yZCk6CisrICAgICAgICAoc2g6OkJ1aWx0SW5WYXJpYWJs
ZTo6Z2xfRnJhZ0RlcHRoKToKKysgICAgICAgIChzaDo6QnVpbHRJblZhcmlhYmxlOjpnbF9Gcm9u
dEZhY2luZyk6CisrICAgICAgICAoc2g6OkJ1aWx0SW5WYXJpYWJsZTo6Z2xfR2xvYmFsSW52b2Nh
dGlvbklEKToKKysgICAgICAgIChzaDo6QnVpbHRJblZhcmlhYmxlOjpnbF9JbnN0YW5jZUlEKToK
KysgICAgICAgIChzaDo6QnVpbHRJblZhcmlhYmxlOjpnbF9JbnN0YW5jZUluZGV4KToKKysgICAg
ICAgIChzaDo6QnVpbHRJblZhcmlhYmxlOjpnbF9JbnZvY2F0aW9uSUQpOgorKyAgICAgICAgKHNo
OjpCdWlsdEluVmFyaWFibGU6OmdsX0xhc3RGcmFnQ29sb3IpOgorKyAgICAgICAgKHNoOjpCdWls
dEluVmFyaWFibGU6OmdsX0xhc3RGcmFnQ29sb3JBUk0pOgorKyAgICAgICAgKHNoOjpCdWlsdElu
VmFyaWFibGU6OmdsX0xheWVyKToKKysgICAgICAgIChzaDo6QnVpbHRJblZhcmlhYmxlOjpnbF9M
YXllckdTKToKKysgICAgICAgIChzaDo6QnVpbHRJblZhcmlhYmxlOjpnbF9MYXllclZTKToKKysg
ICAgICAgIChzaDo6QnVpbHRJblZhcmlhYmxlOjpnbF9Mb2NhbEludm9jYXRpb25JRCk6CisrICAg
ICAgICAoc2g6OkJ1aWx0SW5WYXJpYWJsZTo6Z2xfTG9jYWxJbnZvY2F0aW9uSW5kZXgpOgorKyAg
ICAgICAgKHNoOjpCdWlsdEluVmFyaWFibGU6OmdsX051bVdvcmtHcm91cHMpOgorKyAgICAgICAg
KHNoOjpCdWlsdEluVmFyaWFibGU6OmdsX1BvaW50Q29vcmQpOgorKyAgICAgICAgKHNoOjpCdWls
dEluVmFyaWFibGU6OmdsX1BvaW50U2l6ZSk6CisrICAgICAgICAoc2g6OkJ1aWx0SW5WYXJpYWJs
ZTo6Z2xfUG9zaXRpb24pOgorKyAgICAgICAgKHNoOjpCdWlsdEluVmFyaWFibGU6OmdsX1ByaW1p
dGl2ZUlEKToKKysgICAgICAgIChzaDo6QnVpbHRJblZhcmlhYmxlOjpnbF9QcmltaXRpdmVJREdT
KToKKysgICAgICAgIChzaDo6QnVpbHRJblZhcmlhYmxlOjpnbF9QcmltaXRpdmVJREluKToKKysg
ICAgICAgIChzaDo6QnVpbHRJblZhcmlhYmxlOjpnbF9TZWNvbmRhcnlGcmFnQ29sb3JFWFQpOgor
KyAgICAgICAgKHNoOjpCdWlsdEluVmFyaWFibGU6OmdsX1ZlcnRleElEKToKKysgICAgICAgIChz
aDo6QnVpbHRJblZhcmlhYmxlOjpnbF9WZXJ0ZXhJbmRleCk6CisrICAgICAgICAoc2g6OkJ1aWx0
SW5WYXJpYWJsZTo6Z2xfVmlld0lEX09WUik6CisrICAgICAgICAoc2g6OkJ1aWx0SW5WYXJpYWJs
ZTo6Z2xfVmlld3BvcnRJbmRleCk6CisrICAgICAgICAoc2g6OkJ1aWx0SW5WYXJpYWJsZTo6Z2xf
V29ya0dyb3VwSUQpOgorKyAgICAgICAgKHNoOjpCdWlsdEluVmFyaWFibGU6OmdsX1dvcmtHcm91
cFNpemUpOgorKyAgICAgICAgKHNoOjpUU3ltYm9sVGFibGU6OmluaXRpYWxpemVCdWlsdEluVmFy
aWFibGVzKToKKysgICAgICAgIChzaDo6VFN5bWJvbFRhYmxlOjpmaW5kQnVpbHRJbiBjb25zdCk6
CisrICAgICAgICAoc2g6OlRTeW1ib2xUYWJsZTo6aXNVbm1hbmdsZWRCdWlsdEluTmFtZSBjb25z
dCk6CisrICAgICAgICAoc2g6OlRTeW1ib2xUYWJsZTo6Z2V0U3ltYm9sIGNvbnN0KTogRGVsZXRl
ZC4KKysgICAgICAgIChzaDo6VFN5bWJvbFRhYmxlOjpnZXRVbm1hbmdsZWQgY29uc3QpOiBEZWxl
dGVkLgorKyAgICAgICAgKHNoOjpUU3ltYm9sVGFibGU6OmdldFVubWFuZ2xlZEJ1aWx0SW5Gb3JT
aGFkZXJWZXJzaW9uKTogRGVsZXRlZC4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0
b3IvU3ltYm9sVGFibGVfYXV0b2dlbi5jcHA6CisrICAgICAgICAoc2g6OkJ1aWx0SW5WYXJpYWJs
ZTo6YW5nbGVfQmFzZUluc3RhbmNlKToKKysgICAgICAgIChzaDo6QnVpbHRJblZhcmlhYmxlOjph
bmdsZV9CYXNlVmVydGV4KToKKysgICAgICAgIChzaDo6QnVpbHRJblZhcmlhYmxlOjpnbF9CYXNl
SW5zdGFuY2UpOgorKyAgICAgICAgKHNoOjpCdWlsdEluVmFyaWFibGU6OmdsX0Jhc2VWZXJ0ZXgp
OgorKyAgICAgICAgKHNoOjpCdWlsdEluVmFyaWFibGU6OmdsX0RyYXdJRCk6CisrICAgICAgICAo
c2g6OkJ1aWx0SW5WYXJpYWJsZTo6Z2xfRnJhZ0NvbG9yKToKKysgICAgICAgIChzaDo6QnVpbHRJ
blZhcmlhYmxlOjpnbF9GcmFnQ29vcmQpOgorKyAgICAgICAgKHNoOjpCdWlsdEluVmFyaWFibGU6
OmdsX0ZyYWdEZXB0aCk6CisrICAgICAgICAoc2g6OkJ1aWx0SW5WYXJpYWJsZTo6Z2xfRnJvbnRG
YWNpbmcpOgorKyAgICAgICAgKHNoOjpCdWlsdEluVmFyaWFibGU6OmdsX0dsb2JhbEludm9jYXRp
b25JRCk6CisrICAgICAgICAoc2g6OkJ1aWx0SW5WYXJpYWJsZTo6Z2xfSW5zdGFuY2VJRCk6Cisr
ICAgICAgICAoc2g6OkJ1aWx0SW5WYXJpYWJsZTo6Z2xfSW5zdGFuY2VJbmRleCk6CisrICAgICAg
ICAoc2g6OkJ1aWx0SW5WYXJpYWJsZTo6Z2xfSW52b2NhdGlvbklEKToKKysgICAgICAgIChzaDo6
QnVpbHRJblZhcmlhYmxlOjpnbF9MYXN0RnJhZ0NvbG9yKToKKysgICAgICAgIChzaDo6QnVpbHRJ
blZhcmlhYmxlOjpnbF9MYXN0RnJhZ0NvbG9yQVJNKToKKysgICAgICAgIChzaDo6QnVpbHRJblZh
cmlhYmxlOjpnbF9MYXllcik6CisrICAgICAgICAoc2g6OkJ1aWx0SW5WYXJpYWJsZTo6Z2xfTGF5
ZXJHUyk6CisrICAgICAgICAoc2g6OkJ1aWx0SW5WYXJpYWJsZTo6Z2xfTGF5ZXJWUyk6CisrICAg
ICAgICAoc2g6OkJ1aWx0SW5WYXJpYWJsZTo6Z2xfTG9jYWxJbnZvY2F0aW9uSUQpOgorKyAgICAg
ICAgKHNoOjpCdWlsdEluVmFyaWFibGU6OmdsX0xvY2FsSW52b2NhdGlvbkluZGV4KToKKysgICAg
ICAgIChzaDo6QnVpbHRJblZhcmlhYmxlOjpnbF9OdW1Xb3JrR3JvdXBzKToKKysgICAgICAgIChz
aDo6QnVpbHRJblZhcmlhYmxlOjpnbF9Qb2ludENvb3JkKToKKysgICAgICAgIChzaDo6QnVpbHRJ
blZhcmlhYmxlOjpnbF9Qb2ludFNpemUpOgorKyAgICAgICAgKHNoOjpCdWlsdEluVmFyaWFibGU6
OmdsX1Bvc2l0aW9uKToKKysgICAgICAgIChzaDo6QnVpbHRJblZhcmlhYmxlOjpnbF9QcmltaXRp
dmVJRCk6CisrICAgICAgICAoc2g6OkJ1aWx0SW5WYXJpYWJsZTo6Z2xfUHJpbWl0aXZlSURHUyk6
CisrICAgICAgICAoc2g6OkJ1aWx0SW5WYXJpYWJsZTo6Z2xfUHJpbWl0aXZlSURJbik6CisrICAg
ICAgICAoc2g6OkJ1aWx0SW5WYXJpYWJsZTo6Z2xfU2Vjb25kYXJ5RnJhZ0NvbG9yRVhUKToKKysg
ICAgICAgIChzaDo6QnVpbHRJblZhcmlhYmxlOjpnbF9WZXJ0ZXhJRCk6CisrICAgICAgICAoc2g6
OkJ1aWx0SW5WYXJpYWJsZTo6Z2xfVmVydGV4SW5kZXgpOgorKyAgICAgICAgKHNoOjpCdWlsdElu
VmFyaWFibGU6OmdsX1ZpZXdJRF9PVlIpOgorKyAgICAgICAgKHNoOjpCdWlsdEluVmFyaWFibGU6
OmdsX1ZpZXdwb3J0SW5kZXgpOgorKyAgICAgICAgKHNoOjpCdWlsdEluVmFyaWFibGU6OmdsX1dv
cmtHcm91cElEKToKKysgICAgICAgIChzaDo6QnVpbHRJblZhcmlhYmxlOjpnbF9Xb3JrR3JvdXBT
aXplKToKKysgICAgICAgIChzaDo6VFN5bWJvbFRhYmxlOjppbml0aWFsaXplQnVpbHRJblZhcmlh
Ymxlcyk6CisrICAgICAgICAoc2g6OlRTeW1ib2xUYWJsZTo6ZmluZEJ1aWx0SW4gY29uc3QpOgor
KyAgICAgICAgKHNoOjpUU3ltYm9sVGFibGU6OmlzVW5tYW5nbGVkQnVpbHRJbk5hbWUgY29uc3Qp
OgorKyAgICAgICAgKHNoOjpUU3ltYm9sVGFibGU6OmdldFN5bWJvbCBjb25zdCk6IERlbGV0ZWQu
CisrICAgICAgICAoc2g6OlRTeW1ib2xUYWJsZTo6Z2V0VW5tYW5nbGVkIGNvbnN0KTogRGVsZXRl
ZC4KKysgICAgICAgIChzaDo6VFN5bWJvbFRhYmxlOjpnZXRVbm1hbmdsZWRCdWlsdEluRm9yU2hh
ZGVyVmVyc2lvbik6IERlbGV0ZWQuCisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9y
L1N5bWJvbFRhYmxlX2F1dG9nZW4uaDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0
b3IvVHJhbnNsYXRvclZ1bGthbi5jcHA6CisrICAgICAgICAoc2g6OlRyYW5zbGF0b3JWdWxrYW46
OnRyYW5zbGF0ZSk6CisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL2dlbl9idWls
dGluX3N5bWJvbHMucHk6CisrICAgICAgICAoZ2V0X3NoYWRlcl92ZXJzaW9uX2Zvcl9sZXZlbCk6
CisrICAgICAgICAoR3JvdXBlZExpc3QuX19pbml0X18pOgorKyAgICAgICAgKEdyb3VwZWRMaXN0
LmFkZF9lbnRyeSk6CisrICAgICAgICAoR3JvdXBlZExpc3QuZm9ybWF0X3J1bGUpOgorKyAgICAg
ICAgKEdyb3VwZWRMaXN0KToKKysgICAgICAgIChHcm91cGVkTGlzdC5mb3JtYXRfcnVsZXMpOgor
KyAgICAgICAgKEdyb3VwZWRMaXN0LmdldF9ydWxlcyk6CisrICAgICAgICAoR3JvdXBlZExpc3Qu
Z2V0X25hbWVzKToKKysgICAgICAgIChHcm91cGVkTGlzdC5nZXRfb2Zmc2V0cyk6CisrICAgICAg
ICAoR3JvdXBlZExpc3QudXBkYXRlX2FycmF5cyk6CisrICAgICAgICAoR3JvdXBlZExpc3QudXBk
YXRlX2FycmF5cy5hZGRfcnVsZSk6CisrICAgICAgICAoVW5tYW5nbGVkR3JvdXBlZExpc3QuYWRk
X2VudHJ5KToKKysgICAgICAgIChVbm1hbmdsZWRHcm91cGVkTGlzdC5nZXRfYXJyYXkpOgorKyAg
ICAgICAgKGRlZmluZV9jb25zdGV4cHJfdmFyaWFibGUpOgorKyAgICAgICAgKHByb2Nlc3Nfc2lu
Z2xlX2Z1bmN0aW9uX2dyb3VwKToKKysgICAgICAgIChwcm9jZXNzX2Z1bmN0aW9uX2dyb3VwKToK
KysgICAgICAgIChwcm9jZXNzX3NpbmdsZV92YXJpYWJsZV9ncm91cCk6CisrICAgICAgICAoR3Jv
dXBlZExpc3QuYWRkX29iaik6IERlbGV0ZWQuCisrICAgICAgICAoR3JvdXBlZExpc3QuZ2V0X2Fy
cmF5KTogRGVsZXRlZC4KKysgICAgICAgIChVbm1hbmdsZWRHcm91cGVkTGlzdC5hZGRfb2JqKTog
RGVsZXRlZC4KKysgICAgICAgICogc3JjL2ZlYXR1cmVfc3VwcG9ydF91dGlsL2ZlYXR1cmVfc3Vw
cG9ydF91dGlsLmNwcDoKKysgICAgICAgICogc3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mb193
aW4uY3BwOgorKyAgICAgICAgKGFuZ2xlOjpHZXRTeXN0ZW1JbmZvKToKKysgICAgICAgICogc3Jj
L2ltYWdlX3V0aWwvbG9hZGltYWdlLmNwcDoKKysgICAgICAgIChhbmdsZTo6TG9hZEQyNFM4VG9E
MzJGKToKKysgICAgICAgIChhbmdsZTo6TG9hZEQzMlRvRDMyRlgzMik6CisrICAgICAgICAoYW5n
bGU6OkxvYWREMzJUb0QzMkYpOgorKyAgICAgICAgKiBzcmMvaW1hZ2VfdXRpbC9sb2FkaW1hZ2Uu
aDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL0J1ZmZlci5jcHA6CisrICAgICAgICAoZ2w6OkJ1
ZmZlcjo6QnVmZmVyKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL0J1ZmZlci5oOgorKyAgICAg
ICAgKiBzcmMvbGliQU5HTEUvQ2Fwcy5jcHA6CisrICAgICAgICAoZ2w6OkRldGVybWluZUhhbGZG
bG9hdFRleHR1cmVGaWx0ZXJpbmdTdXBwb3J0KToKKysgICAgICAgIChnbDo6RGV0ZXJtaW5lRmxv
YXRUZXh0dXJlRmlsdGVyaW5nU3VwcG9ydCk6CisrICAgICAgICAoZ2w6OkV4dGVuc2lvbnM6OnNl
dFRleHR1cmVFeHRlbnNpb25TdXBwb3J0KToKKysgICAgICAgIChnbDo6R2V0RXh0ZW5zaW9uSW5m
b01hcCk6CisrICAgICAgICAoZWdsOjpEaXNwbGF5RXh0ZW5zaW9uczo6Z2V0U3RyaW5ncyBjb25z
dCk6CisrICAgICAgICAoZWdsOjpEZXZpY2VFeHRlbnNpb25zOjpnZXRTdHJpbmdzIGNvbnN0KToK
KysgICAgICAgIChlZ2w6OkNsaWVudEV4dGVuc2lvbnM6OmdldFN0cmluZ3MgY29uc3QpOgorKyAg
ICAgICAgKiBzcmMvbGliQU5HTEUvQ2Fwcy5oOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvQ29u
c3RhbnRzLmg6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9Db250ZXh0LmNwcDoKKysgICAgICAg
IChnbDo6Q29udGV4dDo6Q29udGV4dCk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmluaXRpYWxp
emUpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpvbkRlc3Ryb3kpOgorKyAgICAgICAgKGdsOjpD
b250ZXh0OjpiaW5kSW1hZ2VUZXh0dXJlKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0UXVl
cnlpdik6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmRldGFjaFRleHR1cmUpOgorKyAgICAgICAg
KGdsOjpDb250ZXh0OjpnZW5lcmF0ZVN1cHBvcnRlZEV4dGVuc2lvbnMgY29uc3QpOgorKyAgICAg
ICAgKGdsOjpDb250ZXh0Ojppbml0Q2Fwcyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6Om9uU3Vi
amVjdFN0YXRlQ2hhbmdlKToKKysgICAgICAgIChnbDo6U3RhdGVDYWNoZTo6dXBkYXRlQWN0aXZl
QXR0cmlic01hc2spOgorKyAgICAgICAgKGdsOjpTdGF0ZUNhY2hlOjp1cGRhdGVWZXJ0ZXhBdHRy
aWJUeXBlc1ZhbGlkYXRpb24pOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvQ29udGV4dC5oOgor
KyAgICAgICAgKiBzcmMvbGliQU5HTEUvRGV2aWNlLmNwcDoKKysgICAgICAgIChlZ2w6OkRldmlj
ZTo6Z2V0QXR0cmlidXRlKToKKysgICAgICAgIChlZ2w6OkRldmljZTo6Z2V0RGV2aWNlKTogRGVs
ZXRlZC4KKysgICAgICAgICogc3JjL2xpYkFOR0xFL0RldmljZS5oOgorKyAgICAgICAgKiBzcmMv
bGliQU5HTEUvRGlzcGxheS5jcHA6CisrICAgICAgICAoZWdsOjpEaXNwbGF5OjpjcmVhdGVDb250
ZXh0KToKKysgICAgICAgIChlZ2w6OkdlbmVyYXRlQ2xpZW50RXh0ZW5zaW9ucyk6CisrICAgICAg
ICAoZWdsOjpEaXNwbGF5Ojppc1ZhbGlkTmF0aXZlRGlzcGxheSk6CisrICAgICAgICAoZWdsOjpE
aXNwbGF5Ojppbml0aWFsaXplRnJvbnRlbmRGZWF0dXJlcyk6CisrICAgICAgICAoZWdsOjpEaXNw
bGF5OjpxdWVyeVN0cmluZ2kpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvRXJyb3JTdHJpbmdz
Lmg6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9GZW5jZS5oOgorKyAgICAgICAgKiBzcmMvbGli
QU5HTEUvRnJhbWVDYXB0dXJlLmNwcDoKKysgICAgICAgIChhbmdsZTo6UGFyYW1DYXB0dXJlOjpQ
YXJhbUNhcHR1cmUpOgorKyAgICAgICAgKGFuZ2xlOjpQYXJhbUNhcHR1cmU6Om9wZXJhdG9yPSk6
CisrICAgICAgICAoYW5nbGU6OlBhcmFtQnVmZmVyOjpQYXJhbUJ1ZmZlcik6CisrICAgICAgICAo
YW5nbGU6OlBhcmFtQnVmZmVyOjpvcGVyYXRvcj0pOgorKyAgICAgICAgKGFuZ2xlOjpQYXJhbUJ1
ZmZlcjo6Z2V0UGFyYW0pOgorKyAgICAgICAgKGFuZ2xlOjpQYXJhbUJ1ZmZlcjo6Z2V0UGFyYW0g
Y29uc3QpOgorKyAgICAgICAgKGFuZ2xlOjpQYXJhbUJ1ZmZlcjo6YWRkUGFyYW0pOgorKyAgICAg
ICAgKGFuZ2xlOjpQYXJhbUJ1ZmZlcjo6YWRkUmV0dXJuVmFsdWUpOgorKyAgICAgICAgKGFuZ2xl
OjpQYXJhbUJ1ZmZlcjo6Z2V0Q2xpZW50QXJyYXlQb2ludGVyUGFyYW1ldGVyKToKKysgICAgICAg
IChhbmdsZTo6Q2FsbENhcHR1cmU6OkNhbGxDYXB0dXJlKToKKysgICAgICAgIChhbmdsZTo6Q2Fs
bENhcHR1cmU6Om9wZXJhdG9yPSk6CisrICAgICAgICAoYW5nbGU6OkNhbGxDYXB0dXJlOjpuYW1l
IGNvbnN0KToKKysgICAgICAgIChhbmdsZTo6UmVwbGF5Q29udGV4dDo6UmVwbGF5Q29udGV4dCk6
CisrICAgICAgICAoYW5nbGU6OlJlcGxheUNvbnRleHQ6On5SZXBsYXlDb250ZXh0KToKKysgICAg
ICAgIChhbmdsZTo6RnJhbWVDYXB0dXJlOjpGcmFtZUNhcHR1cmUpOgorKyAgICAgICAgKGFuZ2xl
OjpGcmFtZUNhcHR1cmU6Om1heWJlQ2FwdHVyZUNsaWVudERhdGEpOgorKyAgICAgICAgKGFuZ2xl
OjpGcmFtZUNhcHR1cmU6OmNhcHR1cmVDYWxsKToKKysgICAgICAgIChhbmdsZTo6RnJhbWVDYXB0
dXJlOjpjYXB0dXJlVXBkYXRlUmVzb3VyY2VJRHMpOgorKyAgICAgICAgKGFuZ2xlOjpGcmFtZUNh
cHR1cmU6Om1heWJlVXBkYXRlUmVzb3VyY2VJRHMpOgorKyAgICAgICAgKGFuZ2xlOjpGcmFtZUNh
cHR1cmU6OmNhcHR1cmVDbGllbnRBcnJheVNuYXBzaG90KToKKysgICAgICAgIChhbmdsZTo6RnJh
bWVDYXB0dXJlOjpvbkVuZEZyYW1lKToKKysgICAgICAgIChhbmdsZTo6RGF0YUNvdW50ZXJzOjpn
ZXRBbmRJbmNyZW1lbnQpOgorKyAgICAgICAgKGFuZ2xlOjpGcmFtZUNhcHR1cmU6OnJlc2V0KToK
KysgICAgICAgIChhbmdsZTo6Q2FwdHVyZUdlbkhhbmRsZXNJbXBsKToKKysgICAgICAgIChhbmds
ZTo6V3JpdGVQYXJhbVZhbHVlVG9TdHJlYW08UGFyYW1UeXBlOjpUQnVmZmVySUQ+KToKKysgICAg
ICAgIChhbmdsZTo6V3JpdGVQYXJhbVZhbHVlVG9TdHJlYW08UGFyYW1UeXBlOjpURmVuY2VOVklE
Pik6CisrICAgICAgICAoYW5nbGU6OldyaXRlUGFyYW1WYWx1ZVRvU3RyZWFtPFBhcmFtVHlwZTo6
VEZyYW1lYnVmZmVySUQ+KToKKysgICAgICAgIChhbmdsZTo6V3JpdGVQYXJhbVZhbHVlVG9TdHJl
YW08UGFyYW1UeXBlOjpUTWVtb3J5T2JqZWN0SUQ+KToKKysgICAgICAgIChhbmdsZTo6V3JpdGVQ
YXJhbVZhbHVlVG9TdHJlYW08UGFyYW1UeXBlOjpUUGF0aElEPik6CisrICAgICAgICAoYW5nbGU6
OldyaXRlUGFyYW1WYWx1ZVRvU3RyZWFtPFBhcmFtVHlwZTo6VFByb2dyYW1QaXBlbGluZUlEPik6
CisrICAgICAgICAoYW5nbGU6OldyaXRlUGFyYW1WYWx1ZVRvU3RyZWFtPFBhcmFtVHlwZTo6VFF1
ZXJ5SUQ+KToKKysgICAgICAgIChhbmdsZTo6V3JpdGVQYXJhbVZhbHVlVG9TdHJlYW08UGFyYW1U
eXBlOjpUUmVuZGVyYnVmZmVySUQ+KToKKysgICAgICAgIChhbmdsZTo6V3JpdGVQYXJhbVZhbHVl
VG9TdHJlYW08UGFyYW1UeXBlOjpUU2FtcGxlcklEPik6CisrICAgICAgICAoYW5nbGU6OldyaXRl
UGFyYW1WYWx1ZVRvU3RyZWFtPFBhcmFtVHlwZTo6VFNlbWFwaG9yZUlEPik6CisrICAgICAgICAo
YW5nbGU6OldyaXRlUGFyYW1WYWx1ZVRvU3RyZWFtPFBhcmFtVHlwZTo6VFNoYWRlclByb2dyYW1J
RD4pOgorKyAgICAgICAgKGFuZ2xlOjpXcml0ZVBhcmFtVmFsdWVUb1N0cmVhbTxQYXJhbVR5cGU6
OlRUZXh0dXJlSUQ+KToKKysgICAgICAgIChhbmdsZTo6V3JpdGVQYXJhbVZhbHVlVG9TdHJlYW08
UGFyYW1UeXBlOjpUVHJhbnNmb3JtRmVlZGJhY2tJRD4pOgorKyAgICAgICAgKGFuZ2xlOjpXcml0
ZVBhcmFtVmFsdWVUb1N0cmVhbTxQYXJhbVR5cGU6OlRWZXJ0ZXhBcnJheUlEPik6CisrICAgICAg
ICAoYW5nbGU6OkNhbGxDYXB0dXJlOjp+Q2FsbENhcHR1cmUpOiBEZWxldGVkLgorKyAgICAgICAg
KGFuZ2xlOjpQYXJhbUJ1ZmZlcjo6flBhcmFtQnVmZmVyKTogRGVsZXRlZC4KKysgICAgICAgIChh
bmdsZTo6UGFyYW1DYXB0dXJlOjp+UGFyYW1DYXB0dXJlKTogRGVsZXRlZC4KKysgICAgICAgIChh
bmdsZTo6RnJhbWVDYXB0dXJlOjp+RnJhbWVDYXB0dXJlKTogRGVsZXRlZC4KKysgICAgICAgIChh
bmdsZTo6RnJhbWVDYXB0dXJlOjphbnlDbGllbnRBcnJheSBjb25zdCk6IERlbGV0ZWQuCisrICAg
ICAgICAoYW5nbGU6OkZyYW1lQ2FwdHVyZTo6c2F2ZUNhcHR1cmVkRnJhbWVBc0NwcCk6IERlbGV0
ZWQuCisrICAgICAgICAoYW5nbGU6OkZyYW1lQ2FwdHVyZTo6Z2V0QW5kSW5jcmVtZW50Q291bnRl
cik6IERlbGV0ZWQuCisrICAgICAgICAoYW5nbGU6OkZyYW1lQ2FwdHVyZTo6d3JpdGVTdHJpbmdQ
b2ludGVyUGFyYW1SZXBsYXkpOiBEZWxldGVkLgorKyAgICAgICAgKGFuZ2xlOjpGcmFtZUNhcHR1
cmU6OndyaXRlUmVuZGVyYnVmZmVySURQb2ludGVyUGFyYW1SZXBsYXkpOiBEZWxldGVkLgorKyAg
ICAgICAgKGFuZ2xlOjpGcmFtZUNhcHR1cmU6OndyaXRlQmluYXJ5UGFyYW1SZXBsYXkpOiBEZWxl
dGVkLgorKyAgICAgICAgKGFuZ2xlOjpGcmFtZUNhcHR1cmU6OndyaXRlQ2FsbFJlcGxheSk6IERl
bGV0ZWQuCisrICAgICAgICAqIHNyYy9saWJBTkdMRS9GcmFtZUNhcHR1cmUuaDoKKysgICAgICAg
IChhbmdsZTo6Q2FwdHVyZUdlbkhhbmRsZXMpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvRnJh
bWVDYXB0dXJlX21vY2suY3BwOiBBZGRlZC4KKysgICAgICAgIChhbmdsZTo6Q2FsbENhcHR1cmU6
On5DYWxsQ2FwdHVyZSk6CisrICAgICAgICAoYW5nbGU6OlBhcmFtQnVmZmVyOjp+UGFyYW1CdWZm
ZXIpOgorKyAgICAgICAgKGFuZ2xlOjpQYXJhbUNhcHR1cmU6On5QYXJhbUNhcHR1cmUpOgorKyAg
ICAgICAgKGFuZ2xlOjpGcmFtZUNhcHR1cmU6OkZyYW1lQ2FwdHVyZSk6CisrICAgICAgICAoYW5n
bGU6OkZyYW1lQ2FwdHVyZTo6fkZyYW1lQ2FwdHVyZSk6CisrICAgICAgICAoYW5nbGU6OkZyYW1l
Q2FwdHVyZTo6b25FbmRGcmFtZSk6CisrICAgICAgICAoYW5nbGU6OkZyYW1lQ2FwdHVyZTo6cmVw
bGF5KToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL0ZyYW1lYnVmZmVyLmNwcDoKKysgICAgICAg
IChnbDo6RnJhbWVidWZmZXI6OmZvcm1zUmVuZGVyaW5nRmVlZGJhY2tMb29wV2l0aCBjb25zdCk6
CisrICAgICAgICAoZ2w6OkZyYW1lYnVmZmVyOjpmb3Jtc0NvcHlpbmdGZWVkYmFja0xvb3BXaXRo
IGNvbnN0KToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL0ZyYW1lYnVmZmVyLmg6CisrICAgICAg
ICAqIHNyYy9saWJBTkdMRS9GcmFtZWJ1ZmZlckF0dGFjaG1lbnQuY3BwOgorKyAgICAgICAgKGds
OjpGcmFtZWJ1ZmZlckF0dGFjaG1lbnQ6OmdldFJlZFNpemUgY29uc3QpOgorKyAgICAgICAgKGds
OjpGcmFtZWJ1ZmZlckF0dGFjaG1lbnQ6OmdldEdyZWVuU2l6ZSBjb25zdCk6CisrICAgICAgICAo
Z2w6OkZyYW1lYnVmZmVyQXR0YWNobWVudDo6Z2V0Qmx1ZVNpemUgY29uc3QpOgorKyAgICAgICAg
KGdsOjpGcmFtZWJ1ZmZlckF0dGFjaG1lbnQ6OmdldEFscGhhU2l6ZSBjb25zdCk6CisrICAgICAg
ICAoZ2w6OkZyYW1lYnVmZmVyQXR0YWNobWVudDo6Z2V0RGVwdGhTaXplIGNvbnN0KToKKysgICAg
ICAgIChnbDo6RnJhbWVidWZmZXJBdHRhY2htZW50OjpnZXRTdGVuY2lsU2l6ZSBjb25zdCk6Cisr
ICAgICAgICAqIHNyYy9saWJBTkdMRS9GcmFtZWJ1ZmZlckF0dGFjaG1lbnQuaDoKKysgICAgICAg
ICogc3JjL2xpYkFOR0xFL0dMRVMxU3RhdGUuY3BwOgorKyAgICAgICAgKGdsOjpHTEVTMVN0YXRl
OjpnZXRBY3RpdmVBdHRyaWJ1dGVzTWFzayBjb25zdCk6CisrICAgICAgICAqIHNyYy9saWJBTkdM
RS9HTEVTMVN0YXRlLmg6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9JbWFnZUluZGV4LmNwcDoK
KysgICAgICAgICogc3JjL2xpYkFOR0xFL0ltYWdlSW5kZXguaDoKKysgICAgICAgICogc3JjL2xp
YkFOR0xFL01lbW9yeU9iamVjdC5jcHA6CisrICAgICAgICAoZ2w6Ok1lbW9yeU9iamVjdDo6TWVt
b3J5T2JqZWN0KToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL01lbW9yeU9iamVjdC5oOgorKyAg
ICAgICAgKiBzcmMvbGliQU5HTEUvTWVtb3J5UHJvZ3JhbUNhY2hlLmNwcDoKKysgICAgICAgICog
c3JjL2xpYkFOR0xFL1Byb2dyYW0uY3BwOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluZGluZ3M6
OmJpbmRMb2NhdGlvbik6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5kaW5nczo6Z2V0QmluZGlu
Z0J5TmFtZSBjb25zdCk6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5kaW5nczo6Z2V0QmluZGlu
ZyBjb25zdCk6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5kaW5nczo6YmVnaW4gY29uc3QpOgor
KyAgICAgICAgKGdsOjpQcm9ncmFtQmluZGluZ3M6OmVuZCBjb25zdCk6CisrICAgICAgICAoZ2w6
OlByb2dyYW1BbGlhc2VkQmluZGluZ3M6OlByb2dyYW1BbGlhc2VkQmluZGluZ3MpOgorKyAgICAg
ICAgKGdsOjpQcm9ncmFtQWxpYXNlZEJpbmRpbmdzOjp+UHJvZ3JhbUFsaWFzZWRCaW5kaW5ncyk6
CisrICAgICAgICAoZ2w6OlByb2dyYW1BbGlhc2VkQmluZGluZ3M6OmJpbmRMb2NhdGlvbik6Cisr
ICAgICAgICAoZ2w6OlByb2dyYW1BbGlhc2VkQmluZGluZ3M6OmdldEJpbmRpbmdCeU5hbWUgY29u
c3QpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQWxpYXNlZEJpbmRpbmdzOjpnZXRCaW5kaW5nIGNv
bnN0KToKKysgICAgICAgIChnbDo6UHJvZ3JhbUFsaWFzZWRCaW5kaW5nczo6YmVnaW4gY29uc3Qp
OgorKyAgICAgICAgKGdsOjpQcm9ncmFtQWxpYXNlZEJpbmRpbmdzOjplbmQgY29uc3QpOgorKyAg
ICAgICAgKGdsOjpQcm9ncmFtU3RhdGU6OmdldEF0dHJpYnV0ZUxvY2F0aW9uIGNvbnN0KToKKysg
ICAgICAgIChnbDo6UHJvZ3JhbVN0YXRlOjpnZXRGaXJzdEF0dGFjaGVkU2hhZGVyU3RhZ2VUeXBl
IGNvbnN0KToKKysgICAgICAgIChnbDo6UHJvZ3JhbVN0YXRlOjpnZXRMYXN0QXR0YWNoZWRTaGFk
ZXJTdGFnZVR5cGUgY29uc3QpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpnZXRGcmFnbWVudElu
cHV0QmluZGluZ0luZm8gY29uc3QpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpsaW5rKToKKysg
ICAgICAgIChnbDo6UHJvZ3JhbVN0YXRlOjp1cGRhdGVQcm9ncmFtSW50ZXJmYWNlSW5wdXRzKToK
KysgICAgICAgIChnbDo6UHJvZ3JhbVN0YXRlOjp1cGRhdGVQcm9ncmFtSW50ZXJmYWNlT3V0cHV0
cyk6CisrICAgICAgICAoZ2w6OlByb2dyYW06OnVubGluayk6CisrICAgICAgICAoZ2w6OlByb2dy
YW06OmdldEFjdGl2ZUF0dHJpYnV0ZSBjb25zdCk6CisrICAgICAgICAoZ2w6OlByb2dyYW06Omdl
dEFjdGl2ZUF0dHJpYnV0ZUNvdW50IGNvbnN0KToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6Z2V0
QWN0aXZlQXR0cmlidXRlTWF4TGVuZ3RoIGNvbnN0KToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6
Z2V0QXR0cmlidXRlcyBjb25zdCk6CisrICAgICAgICAoZ2w6OlByb2dyYW06OmdldElucHV0UmVz
b3VyY2UgY29uc3QpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpnZXRJbnB1dFJlc291cmNlSW5k
ZXggY29uc3QpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpnZXRSZXNvdXJjZU1heE5hbWVTaXpl
IGNvbnN0KToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6Z2V0SW5wdXRSZXNvdXJjZU1heE5hbWVT
aXplIGNvbnN0KToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6Z2V0T3V0cHV0UmVzb3VyY2VNYXhO
YW1lU2l6ZSBjb25zdCk6CisrICAgICAgICAoZ2w6OlByb2dyYW06OmdldFJlc291cmNlTG9jYXRp
b24gY29uc3QpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpnZXRJbnB1dFJlc291cmNlTG9jYXRp
b24gY29uc3QpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpnZXRPdXRwdXRSZXNvdXJjZUxvY2F0
aW9uIGNvbnN0KToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6Z2V0T3V0cHV0UmVzb3VyY2VJbmRl
eCBjb25zdCk6CisrICAgICAgICAoZ2w6OlByb2dyYW06OmdldFJlc291cmNlTmFtZSBjb25zdCk6
CisrICAgICAgICAoZ2w6OlByb2dyYW06OmdldElucHV0UmVzb3VyY2VOYW1lIGNvbnN0KToKKysg
ICAgICAgIChnbDo6UHJvZ3JhbTo6Z2V0T3V0cHV0UmVzb3VyY2VOYW1lIGNvbnN0KToKKysgICAg
ICAgIChnbDo6UHJvZ3JhbTo6Z2V0VW5pZm9ybVJlc291cmNlTmFtZSBjb25zdCk6CisrICAgICAg
ICAoZ2w6OlByb2dyYW06OmdldEJ1ZmZlclZhcmlhYmxlUmVzb3VyY2VOYW1lIGNvbnN0KToKKysg
ICAgICAgIChnbDo6UHJvZ3JhbTo6Z2V0T3V0cHV0UmVzb3VyY2UgY29uc3QpOgorKyAgICAgICAg
KGdsOjpQcm9ncmFtOjpnZXRVbmlmb3JtTG9jYXRpb25CaW5kaW5ncyBjb25zdCk6CisrICAgICAg
ICAoZ2w6OlByb2dyYW06OmxpbmtVbmlmb3Jtcyk6CisrICAgICAgICAoZ2w6OlByb2dyYW06Omxp
bmtBdHRyaWJ1dGVzKToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6bGlua1ZhbGlkYXRlR2xvYmFs
TmFtZXMgY29uc3QpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpnZXRNZXJnZWRWYXJ5aW5ncyBj
b25zdCk6CisrICAgICAgICAoZ2w6OlByb2dyYW06OmxpbmtPdXRwdXRWYXJpYWJsZXMpOgorKyAg
ICAgICAgKGdsOjpQcm9ncmFtOjpzZXJpYWxpemUgY29uc3QpOgorKyAgICAgICAgKGdsOjpQcm9n
cmFtOjpkZXNlcmlhbGl6ZSk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9Qcm9ncmFtLmg6Cisr
ICAgICAgICAoZ2w6OlByb2dyYW1WYXJ5aW5nUmVmOjpnZXQgY29uc3QpOgorKyAgICAgICAgKiBz
cmMvbGliQU5HTEUvUHJvZ3JhbUxpbmtlZFJlc291cmNlcy5jcHA6CisrICAgICAgICAoZ2w6OlVu
aWZvcm1MaW5rZXI6OmxpbmspOgorKyAgICAgICAgKGdsOjpVbmlmb3JtTGlua2VyOjppbmRleFVu
aWZvcm1zKToKKysgICAgICAgIChnbDo6VW5pZm9ybUxpbmtlcjo6Z2F0aGVyVW5pZm9ybUxvY2F0
aW9uc0FuZENoZWNrQ29uZmxpY3RzKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL1Byb2dyYW1M
aW5rZWRSZXNvdXJjZXMuaDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL1Byb2dyYW1QaXBlbGlu
ZS5jcHA6CisrICAgICAgICAoZ2w6OlByb2dyYW1QaXBlbGluZTo6UHJvZ3JhbVBpcGVsaW5lKToK
KysgICAgICAgICogc3JjL2xpYkFOR0xFL1Byb2dyYW1QaXBlbGluZS5oOgorKyAgICAgICAgKiBz
cmMvbGliQU5HTEUvUXVlcnkuY3BwOgorKyAgICAgICAgKGdsOjpRdWVyeTo6UXVlcnkpOgorKyAg
ICAgICAgKiBzcmMvbGliQU5HTEUvUXVlcnkuaDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL1Jl
ZkNvdW50T2JqZWN0Lmg6CisrICAgICAgICAoZ2w6OlJlZkNvdW50T2JqZWN0OjpSZWZDb3VudE9i
amVjdCk6CisrICAgICAgICAoZ2w6OlJlZkNvdW50T2JqZWN0OjppZCBjb25zdCk6CisrICAgICAg
ICAoZ2w6OkJpbmRpbmdQb2ludGVyOjppZCBjb25zdCk6CisrICAgICAgICAqIHNyYy9saWJBTkdM
RS9SZW5kZXJidWZmZXIuY3BwOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXI6OlJlbmRlcmJ1
ZmZlcik6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlcjo6Z2V0SWQgY29uc3QpOgorKyAgICAg
ICAgKiBzcmMvbGliQU5HTEUvUmVuZGVyYnVmZmVyLmg6CisrICAgICAgICAqIHNyYy9saWJBTkdM
RS9TYW1wbGVyLmNwcDoKKysgICAgICAgIChnbDo6U2FtcGxlcjo6U2FtcGxlcik6CisrICAgICAg
ICAqIHNyYy9saWJBTkdMRS9TYW1wbGVyLmg6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9TZW1h
cGhvcmUuY3BwOgorKyAgICAgICAgKGdsOjpTZW1hcGhvcmU6OlNlbWFwaG9yZSk6CisrICAgICAg
ICAqIHNyYy9saWJBTkdMRS9TZW1hcGhvcmUuaDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL1No
YWRlci5jcHA6CisrICAgICAgICAoZ2w6OlNoYWRlcjo6cmVzb2x2ZUNvbXBpbGUpOgorKyAgICAg
ICAgKGdsOjpTaGFkZXI6OmdldFRyYW5zZm9ybUZlZWRiYWNrVmFyeWluZ01hcHBlZE5hbWUpOgor
KyAgICAgICAgKiBzcmMvbGliQU5HTEUvU3RhdGUuY3BwOgorKyAgICAgICAgKGdsOjpTdGF0ZTo6
Z2V0U2FtcGxlclRleHR1cmVJZCBjb25zdCk6CisrICAgICAgICAoZ2w6OlN0YXRlOjpkZXRhY2hU
ZXh0dXJlKToKKysgICAgICAgIChnbDo6U3RhdGU6OmRldGFjaFNhbXBsZXIpOgorKyAgICAgICAg
KGdsOjpTdGF0ZTo6ZGV0YWNoUmVuZGVyYnVmZmVyKToKKysgICAgICAgIChnbDo6U3RhdGU6OnJl
bW92ZVRyYW5zZm9ybUZlZWRiYWNrQmluZGluZyk6CisrICAgICAgICAoZ2w6OlN0YXRlOjpnZXRB
Y3RpdmVRdWVyeUlkIGNvbnN0KToKKysgICAgICAgIChnbDo6U3RhdGU6OmRldGFjaEJ1ZmZlcik6
CisrICAgICAgICAoZ2w6OlN0YXRlOjpnZXRJbnRlZ2Vydik6CisrICAgICAgICAoZ2w6OlN0YXRl
OjpnZXRJbnRlZ2VyaV92KToKKysgICAgICAgIChnbDo6U3RhdGU6OnN5bmNJbWFnZXMpOgorKyAg
ICAgICAgKGdsOjpTdGF0ZTo6b25JbWFnZVN0YXRlQ2hhbmdlKToKKysgICAgICAgICogc3JjL2xp
YkFOR0xFL1N0YXRlLmg6CisrICAgICAgICAoZ2w6OlN0YXRlOjpnZXRTYW1wbGVySWQgY29uc3Qp
OgorKyAgICAgICAgKGdsOjpTdGF0ZTo6Z2V0UmVuZGVyYnVmZmVySWQgY29uc3QpOgorKyAgICAg
ICAgKiBzcmMvbGliQU5HTEUvVGV4dHVyZS5jcHA6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OlRl
eHR1cmUpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpzZXRTdG9yYWdlKToKKysgICAgICAgIChn
bDo6VGV4dHVyZTo6Z2V0SWQgY29uc3QpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvVGV4dHVy
ZS5oOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvVHJhbnNmb3JtRmVlZGJhY2suY3BwOgorKyAg
ICAgICAgKGdsOjpUcmFuc2Zvcm1GZWVkYmFjazo6VHJhbnNmb3JtRmVlZGJhY2spOgorKyAgICAg
ICAgKGdsOjpUcmFuc2Zvcm1GZWVkYmFjazo6ZGV0YWNoQnVmZmVyKToKKysgICAgICAgICogc3Jj
L2xpYkFOR0xFL1RyYW5zZm9ybUZlZWRiYWNrLmg6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9W
YXJ5aW5nUGFja2luZy5jcHA6CisrICAgICAgICAoZ2w6OlZhcnlpbmdQYWNraW5nOjpjb2xsZWN0
QW5kUGFja1VzZXJWYXJ5aW5ncyk6CisrICAgICAgICAoZ2w6OlZhcnlpbmdQYWNraW5nOjpwYWNr
VXNlclZhcnlpbmdzKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL1ZlcnRleEFycmF5LmNwcDoK
KysgICAgICAgIChnbDo6VmVydGV4QXJyYXk6OmRldGFjaEJ1ZmZlcik6CisrICAgICAgICAoZ2w6
OlZlcnRleEFycmF5OjpiaW5kVmVydGV4QnVmZmVySW1wbCk6CisrICAgICAgICAqIHNyYy9saWJB
TkdMRS9WZXJ0ZXhBcnJheS5oOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvY2FwdHVyZV9nbGVz
XzJfMF9wYXJhbXMuY3BwOgorKyAgICAgICAgKGdsOjpDYXB0dXJlRGVsZXRlQnVmZmVyc19idWZm
ZXJzUGFja2VkKToKKysgICAgICAgIChnbDo6Q2FwdHVyZURlbGV0ZUZyYW1lYnVmZmVyc19mcmFt
ZWJ1ZmZlcnNQYWNrZWQpOgorKyAgICAgICAgKGdsOjpDYXB0dXJlRGVsZXRlVGV4dHVyZXNfdGV4
dHVyZXNQYWNrZWQpOgorKyAgICAgICAgKGdsOjpDYXB0dXJlR2VuQnVmZmVyc19idWZmZXJzUGFj
a2VkKToKKysgICAgICAgIChnbDo6Q2FwdHVyZUdlbkZyYW1lYnVmZmVyc19mcmFtZWJ1ZmZlcnNQ
YWNrZWQpOgorKyAgICAgICAgKGdsOjpDYXB0dXJlR2VuUmVuZGVyYnVmZmVyc19yZW5kZXJidWZm
ZXJzUGFja2VkKToKKysgICAgICAgIChnbDo6Q2FwdHVyZUdlblRleHR1cmVzX3RleHR1cmVzUGFj
a2VkKToKKysgICAgICAgIChnbDo6Q2FwdHVyZVNoYWRlclNvdXJjZV9zdHJpbmcpOgorKyAgICAg
ICAgKiBzcmMvbGliQU5HTEUvY2FwdHVyZV9nbGVzXzNfMF9wYXJhbXMuY3BwOgorKyAgICAgICAg
KGdsOjpDYXB0dXJlRGVsZXRlUXVlcmllc19pZHNQYWNrZWQpOgorKyAgICAgICAgKGdsOjpDYXB0
dXJlRGVsZXRlU2FtcGxlcnNfc2FtcGxlcnNQYWNrZWQpOgorKyAgICAgICAgKGdsOjpDYXB0dXJl
RGVsZXRlVHJhbnNmb3JtRmVlZGJhY2tzX2lkc1BhY2tlZCk6CisrICAgICAgICAoZ2w6OkNhcHR1
cmVEZWxldGVWZXJ0ZXhBcnJheXNfYXJyYXlzUGFja2VkKToKKysgICAgICAgIChnbDo6Q2FwdHVy
ZUdlblF1ZXJpZXNfaWRzUGFja2VkKToKKysgICAgICAgIChnbDo6Q2FwdHVyZUdlblNhbXBsZXJz
X3NhbXBsZXJzUGFja2VkKToKKysgICAgICAgIChnbDo6Q2FwdHVyZUdlblRyYW5zZm9ybUZlZWRi
YWNrc19pZHNQYWNrZWQpOgorKyAgICAgICAgKGdsOjpDYXB0dXJlR2VuVmVydGV4QXJyYXlzX2Fy
cmF5c1BhY2tlZCk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9jYXB0dXJlX2dsZXNfM18xX3Bh
cmFtcy5jcHA6CisrICAgICAgICAoZ2w6OkNhcHR1cmVEZWxldGVQcm9ncmFtUGlwZWxpbmVzX3Bp
cGVsaW5lc1BhY2tlZCk6CisrICAgICAgICAoZ2w6OkNhcHR1cmVHZW5Qcm9ncmFtUGlwZWxpbmVz
X3BpcGVsaW5lc1BhY2tlZCk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9jYXB0dXJlX2dsZXNf
ZXh0X3BhcmFtcy5jcHA6CisrICAgICAgICAoZ2w6OkNhcHR1cmVEZWxldGVRdWVyaWVzRVhUX2lk
c1BhY2tlZCk6CisrICAgICAgICAoZ2w6OkNhcHR1cmVHZW5RdWVyaWVzRVhUX2lkc1BhY2tlZCk6
CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9mZWF0dXJlcy5oOgorKyAgICAgICAgKiBzcmMvbGli
QU5HTEUvZm9ybWF0dXRpbHMuY3BwOgorKyAgICAgICAgKGdsOjpVbnNpemVkSGFsZkZsb2F0T0VT
UkdCQVRleHR1cmVBdHRhY2htZW50U3VwcG9ydCk6CisrICAgICAgICAoZ2w6OkJ1aWxkSW50ZXJu
YWxGb3JtYXRJbmZvTWFwKToKKysgICAgICAgIChnbDo6SW50ZXJuYWxGb3JtYXQ6OmNvbXB1dGVE
ZXB0aFBpdGNoIGNvbnN0KToKKysgICAgICAgIChnbDo6R2V0VmVydGV4Rm9ybWF0SUQpOgorKyAg
ICAgICAgKGdsOjpHZXRWZXJ0ZXhGb3JtYXRGcm9tSUQpOgorKyAgICAgICAgKGdsOjpHZXRWZXJ0
ZXhGb3JtYXRTaXplKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL2ZyYW1lX2NhcHR1cmVfdXRp
bHNfYXV0b2dlbi5jcHA6CisrICAgICAgICAoYW5nbGU6OkdldFJlc291cmNlSURUeXBlRnJvbVBh
cmFtVHlwZSk6CisrICAgICAgICAoYW5nbGU6OkdldFJlc291cmNlSURUeXBlTmFtZSk6CisrICAg
ICAgICAqIHNyYy9saWJBTkdMRS9mcmFtZV9jYXB0dXJlX3V0aWxzX2F1dG9nZW4uaDoKKysgICAg
ICAgICogc3JjL2xpYkFOR0xFL3F1ZXJ5dXRpbHMuY3BwOgorKyAgICAgICAgKGdsOjpHZXRCdWZm
ZXJWYXJpYWJsZVJlc291cmNlUHJvcGVydHkpOgorKyAgICAgICAgKGdsOjpRdWVyeVByb2dyYW1S
ZXNvdXJjZUxvY2F0aW9uKToKKysgICAgICAgIChnbDo6UXVlcnlQcm9ncmFtUmVzb3VyY2Vpdik6
CisrICAgICAgICAoZWdsOjpRdWVyeUNvbnRleHRBdHRyaWIpOgorKyAgICAgICAgKiBzcmMvbGli
QU5HTEUvcmVuZGVyZXIvRGV2aWNlSW1wbC5oOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVu
ZGVyZXIvRm9ybWF0Lmg6CisrICAgICAgICAoYW5nbGU6OkZvcm1hdDo6aXNWZXJ0ZXhUeXBlSGFs
ZkZsb2F0IGNvbnN0KToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL0Zvcm1hdElE
X2F1dG9nZW4uaDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL0Zvcm1hdF90YWJs
ZV9hdXRvZ2VuLmNwcDoKKysgICAgICAgIChhbmdsZTo6Rm9ybWF0OjpJbnRlcm5hbEZvcm1hdFRv
SUQpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvYW5nbGVfZm9ybWF0LnB5Ogor
KyAgICAgICAgKGdsX2Zvcm1hdF9jaGFubmVscyk6CisrICAgICAgICAoZ2V0X3ZlcnRleF9jb3B5
X2Z1bmN0aW9uKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2FuZ2xlX2Zvcm1h
dF9tYXAuanNvbjoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2NvcHl2ZXJ0ZXgu
aDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2NvcHl2ZXJ0ZXguaW5jLmg6Cisr
ICAgICAgICAocng6OkNvcHlUbzMyRlZlcnRleERhdGEpOgorKyAgICAgICAgKHJ4OjpDb3B5WFla
MTBUb1hZWlczMkZWZXJ0ZXhEYXRhKToKKysgICAgICAgIChyeDo6Q29weVcyWFlaMTBUb1hZWlcz
MkZWZXJ0ZXhEYXRhKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2QzZC9EZXZp
Y2VEM0QuY3BwOgorKyAgICAgICAgKHJ4OjpEZXZpY2VEM0Q6OmdldEF0dHJpYnV0ZSk6CisrICAg
ICAgICAocng6OkRldmljZUQzRDo6Z2V0RGV2aWNlKTogRGVsZXRlZC4KKysgICAgICAgICogc3Jj
L2xpYkFOR0xFL3JlbmRlcmVyL2QzZC9EZXZpY2VEM0QuaDoKKysgICAgICAgICogc3JjL2xpYkFO
R0xFL3JlbmRlcmVyL2QzZC9ITFNMQ29tcGlsZXIuY3BwOgorKyAgICAgICAgKHJ4OjpITFNMQ29t
cGlsZXI6OmVuc3VyZUluaXRpYWxpemVkKToKKysgICAgICAgIChyeDo6SExTTENvbXBpbGVyOjpj
b21waWxlVG9CaW5hcnkpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZDNkL1By
b2dyYW1EM0QuY3BwOgorKyAgICAgICAgKHJ4OjpQcm9ncmFtRDNEOjpnZXRWZXJ0ZXhFeGVjdXRh
YmxlRm9yQ2FjaGVkSW5wdXRMYXlvdXQpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVy
ZXIvZDNkL1JlbmRlcmVyRDNELmNwcDoKKysgICAgICAgIChyeDo6RGVmYXVsdEdMRXJyb3JDb2Rl
KToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2QzZC9TaGFkZXJEM0QuY3BwOgor
KyAgICAgICAgKHJ4OjpTaGFkZXJEM0Q6OmNvbXBpbGUpOgorKyAgICAgICAgKiBzcmMvbGliQU5H
TEUvcmVuZGVyZXIvZDNkL2QzZDExL0J1ZmZlcjExLmNwcDoKKysgICAgICAgIChyeDo6QnVmZmVy
MTE6OmdldENvbnN0YW50QnVmZmVyUmFuZ2UpOgorKyAgICAgICAgKHJ4OjpCdWZmZXIxMTo6TmF0
aXZlU3RvcmFnZTo6RmlsbEJ1ZmZlckRlc2MpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVu
ZGVyZXIvZDNkL2QzZDExL0NvbnRleHQxMS5jcHA6CisrICAgICAgICAocng6OkNvbnRleHQxMTo6
ZHJhd0FycmF5cyk6CisrICAgICAgICAocng6OkNvbnRleHQxMTo6ZHJhd0FycmF5c0luc3RhbmNl
ZCk6CisrICAgICAgICAocng6OkNvbnRleHQxMTo6ZHJhd0FycmF5c0luc3RhbmNlZEJhc2VJbnN0
YW5jZSk6CisrICAgICAgICAocng6OkNvbnRleHQxMTo6ZHJhd0FycmF5c0luZGlyZWN0KToKKysg
ICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2QzZC9kM2QxMS9EZWJ1Z0Fubm90YXRvcjEx
LmNwcDoKKysgICAgICAgIChyeDo6RGVidWdBbm5vdGF0b3IxMTo6aW5pdGlhbGl6ZSk6CisrICAg
ICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9kM2QvZDNkMTEvUmVuZGVyZXIxMS5jcHA6Cisr
ICAgICAgICAocng6OlJlbmRlcmVyMTE6OlJlbmRlcmVyMTEpOgorKyAgICAgICAgKHJ4OjpSZW5k
ZXJlcjExOjppbml0aWFsaXplKToKKysgICAgICAgIChyeDo6UmVuZGVyZXIxMTo6Y2FsbEQzRDEx
T24xMkNyZWF0ZURldmljZSk6CisrICAgICAgICAocng6OlJlbmRlcmVyMTE6OmluaXRpYWxpemVE
M0REZXZpY2UpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjExOjpnZW5lcmF0ZURpc3BsYXlFeHRl
bnNpb25zIGNvbnN0KToKKysgICAgICAgIChyeDo6UmVuZGVyZXIxMTo6aXNWYWxpZE5hdGl2ZVdp
bmRvdyBjb25zdCk6CisrICAgICAgICAocng6OlJlbmRlcmVyMTE6OmNyZWF0ZU5hdGl2ZVdpbmRv
dyBjb25zdCk6CisrICAgICAgICAocng6OlJlbmRlcmVyMTE6OmRyYXdBcnJheXMpOgorKyAgICAg
ICAgKHJ4OjpSZW5kZXJlcjExOjpyZWxlYXNlKToKKysgICAgICAgIChyeDo6UmVuZGVyZXIxMTo6
Z2V0U2hhcmVIYW5kbGVTdXBwb3J0IGNvbnN0KToKKysgICAgICAgIChyeDo6UmVuZGVyZXIxMTo6
Y29weUltYWdlSW50ZXJuYWwpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZDNk
L2QzZDExL1JlbmRlcmVyMTEuaDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2Qz
ZC9kM2QxMS9UZXh0dXJlU3RvcmFnZTExLmNwcDoKKysgICAgICAgIChyeDo6VGV4dHVyZVN0b3Jh
Z2UxMTo6Z2V0U1JWRm9ySW1hZ2UpOgorKyAgICAgICAgKHJ4OjpUZXh0dXJlU3RvcmFnZTExOjpn
ZXRVQVZGb3JJbWFnZSk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9kM2QvZDNk
MTEvVHJpbTExLmNwcDoKKysgICAgICAgIChyeDo6VHJpbTExOjp0cmltKToKKysgICAgICAgIChy
eDo6VHJpbTExOjpyZWdpc3RlckZvclJlbmRlcmVyVHJpbVJlcXVlc3QpOgorKyAgICAgICAgKHJ4
OjpUcmltMTE6OnVucmVnaXN0ZXJGb3JSZW5kZXJlclRyaW1SZXF1ZXN0KToKKysgICAgICAgICog
c3JjL2xpYkFOR0xFL3JlbmRlcmVyL2QzZC9kM2QxMS9UcmltMTEuaDoKKysgICAgICAgICogc3Jj
L2xpYkFOR0xFL3JlbmRlcmVyL2QzZC9kM2QxMS9jb252ZXJnZWQvQ29tcG9zaXRvck5hdGl2ZVdp
bmRvdzExLmNwcDoKKysgICAgICAgIChyeDo6Um9IZWxwZXI6OlN1cHBvcnRlZFdpbmRvd3NSZWxl
YXNlKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2QzZC9kM2QxMS9yZW5kZXJl
cjExX3V0aWxzLmNwcDoKKysgICAgICAgIChyeDo6ZDNkMTFfZ2w6OkdlbmVyYXRlQ2Fwcyk6Cisr
ICAgICAgICAocng6OmQzZDExOjpJbml0aWFsaXplRmVhdHVyZXMpOgorKyAgICAgICAgKiBzcmMv
bGliQU5HTEUvcmVuZGVyZXIvZDNkL2QzZDExL3dpbnJ0L0NvcmVXaW5kb3dOYXRpdmVXaW5kb3cu
aDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2QzZC9kM2QxMS93aW5ydC9OYXRp
dmVXaW5kb3cxMVdpblJULmNwcDoKKysgICAgICAgIChyeDo6TmF0aXZlV2luZG93MTFXaW5SVDo6
Y3JlYXRlU3dhcENoYWluKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2QzZC9k
M2QxMS93aW5ydC9OYXRpdmVXaW5kb3cxMVdpblJULmg6CisrICAgICAgICAqIHNyYy9saWJBTkdM
RS9yZW5kZXJlci9kM2QvZDNkMTEvd2lucnQvU3dhcENoYWluUGFuZWxOYXRpdmVXaW5kb3cuaDoK
KysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2QzZC9kM2Q5L3JlbmRlcmVyOV91dGls
cy5jcHA6CisrICAgICAgICAocng6OmQzZDk6OkluaXRpYWxpemVGZWF0dXJlcyk6CisrICAgICAg
ICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nZW5fYW5nbGVfZm9ybWF0X3RhYmxlLnB5OgorKyAg
ICAgICAgKGNlaWxfaW50KToKKysgICAgICAgIChnZXRfY2hhbm5lbF9zdHJ1Y3QpOgorKyAgICAg
ICAgKGdldF9taXBfZ2VuZXJhdGlvbl9mdW5jdGlvbik6CisrICAgICAgICAqIHNyYy9saWJBTkdM
RS9yZW5kZXJlci9nbC9CbGl0R0wuY3BwOgorKyAgICAgICAgKHJ4OjpCbGl0R0w6OmNvcHlJbWFn
ZVRvTFVNQVdvcmthcm91bmRUZXh0dXJlKToKKysgICAgICAgIChyeDo6QmxpdEdMOjpjb3B5U3Vi
SW1hZ2VUb0xVTUFXb3JrYXJvdW5kVGV4dHVyZSk6CisrICAgICAgICAocng6OkJsaXRHTDo6Ymxp
dENvbG9yQnVmZmVyV2l0aFNoYWRlcik6CisrICAgICAgICAocng6OkJsaXRHTDo6Y29weVN1YlRl
eHR1cmUpOgorKyAgICAgICAgKHJ4OjpCbGl0R0w6OmNvcHlTdWJUZXh0dXJlQ1BVUmVhZGJhY2sp
OgorKyAgICAgICAgKHJ4OjpCbGl0R0w6OmNvcHlUZXhTdWJJbWFnZSk6CisrICAgICAgICAocng6
OkJsaXRHTDo6Y2xlYXJSZW5kZXJhYmxlVGV4dHVyZSk6CisrICAgICAgICAocng6OkJsaXRHTDo6
Y2xlYXJSZW5kZXJidWZmZXIpOgorKyAgICAgICAgKHJ4OjpCbGl0R0w6OmNsZWFyRnJhbWVidWZm
ZXIpOgorKyAgICAgICAgKHJ4OjpCbGl0R0w6OmNsZWFyUmVuZGVyYWJsZVRleHR1cmVBbHBoYVRv
T25lKToKKysgICAgICAgIChyeDo6QmxpdEdMOjppbml0aWFsaXplUmVzb3VyY2VzKToKKysgICAg
ICAgIChyeDo6QmxpdEdMOjpvcnBoYW5TY3JhdGNoVGV4dHVyZXMpOgorKyAgICAgICAgKHJ4OjpC
bGl0R0w6OnNldFNjcmF0Y2hUZXh0dXJlUGFyYW1ldGVyKToKKysgICAgICAgIChyeDo6QmxpdEdM
OjpnZXRCbGl0UHJvZ3JhbSk6CisrICAgICAgICAocng6OkJsaXRHTDo6Z2V0QmxpdFByb2dyYW1U
eXBlKTogRGVsZXRlZC4KKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL0JsaXRH
TC5oOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvQ29udGV4dEdMLmNwcDoK
KysgICAgICAgIChyeDo6Q29udGV4dEdMOjpjcmVhdGVSZW5kZXJidWZmZXIpOgorKyAgICAgICAg
KHJ4OjpDb250ZXh0R0w6OnNldERyYXdBcnJheXNTdGF0ZSk6CisrICAgICAgICAocng6OkNvbnRl
eHRHTDo6c2V0RHJhd0VsZW1lbnRzU3RhdGUpOgorKyAgICAgICAgKHJ4OjpDb250ZXh0R0w6OmRy
YXdBcnJheXMpOgorKyAgICAgICAgKHJ4OjpDb250ZXh0R0w6OnVwZGF0ZUF0dHJpYnV0ZXNGb3JC
YXNlSW5zdGFuY2UpOgorKyAgICAgICAgKHJ4OjpDb250ZXh0R0w6OnJlc2V0VXBkYXRlZEF0dHJp
YnV0ZXMpOgorKyAgICAgICAgKHJ4OjpDb250ZXh0R0w6OmRyYXdBcnJheXNJbnN0YW5jZWRCYXNl
SW5zdGFuY2UpOgorKyAgICAgICAgKHJ4OjpDb250ZXh0R0w6OmRyYXdFbGVtZW50cyk6CisrICAg
ICAgICAocng6OkNvbnRleHRHTDo6ZHJhd0VsZW1lbnRzSW5zdGFuY2VkQmFzZVZlcnRleEJhc2VJ
bnN0YW5jZSk6CisrICAgICAgICAocng6OkNvbnRleHRHTDo6dmFsaWRhdGVTdGF0ZSBjb25zdCk6
CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9Db250ZXh0R0wuaDoKKysgICAg
ICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL1Byb2dyYW1HTC5jcHA6CisrICAgICAgICAo
cng6OlByb2dyYW1HTDo6bGluayk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9n
bC9SZW5kZXJidWZmZXJHTC5jcHA6CisrICAgICAgICAocng6OlJlbmRlcmJ1ZmZlckdMOjpSZW5k
ZXJidWZmZXJHTCk6CisrICAgICAgICAocng6OlJlbmRlcmJ1ZmZlckdMOjp+UmVuZGVyYnVmZmVy
R0wpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJidWZmZXJHTDo6b25EZXN0cm95KToKKysgICAgICAg
IChyeDo6UmVuZGVyYnVmZmVyR0w6OnNldFN0b3JhZ2UpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJi
dWZmZXJHTDo6c2V0U3RvcmFnZU11bHRpc2FtcGxlKToKKysgICAgICAgIChyeDo6UmVuZGVyYnVm
ZmVyR0w6OmluaXRpYWxpemVDb250ZW50cyk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5k
ZXJlci9nbC9SZW5kZXJidWZmZXJHTC5oOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVy
ZXIvZ2wvU2hhZGVyR0wuY3BwOgorKyAgICAgICAgKHJ4OjpTaGFkZXJHTDo6Y29tcGlsZSk6Cisr
ICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9TdGF0ZU1hbmFnZXJHTC5jcHA6Cisr
ICAgICAgICAocng6OlN0YXRlTWFuYWdlckdMOjpiaW5kQnVmZmVyQmFzZSk6CisrICAgICAgICAo
cng6OlN0YXRlTWFuYWdlckdMOjpiaW5kQnVmZmVyUmFuZ2UpOgorKyAgICAgICAgKHJ4OjpTdGF0
ZU1hbmFnZXJHTDo6dmFsaWRhdGVTdGF0ZSBjb25zdCk6CisrICAgICAgICAqIHNyYy9saWJBTkdM
RS9yZW5kZXJlci9nbC9TdGF0ZU1hbmFnZXJHTC5oOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUv
cmVuZGVyZXIvZ2wvU3VyZmFjZUdMLmNwcDoKKysgICAgICAgIChyeDo6U3VyZmFjZUdMOjppbml0
aWFsaXplQ29udGVudHMpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvVGV4
dHVyZUdMLmNwcDoKKysgICAgICAgIChyeDo6VGV4dHVyZUdMOjpzZXRJbWFnZUhlbHBlcik6Cisr
ICAgICAgICAocng6OlRleHR1cmVHTDo6c2V0U3ViSW1hZ2UpOgorKyAgICAgICAgKHJ4OjpUZXh0
dXJlR0w6OnNldENvbXByZXNzZWRJbWFnZSk6CisrICAgICAgICAocng6OlRleHR1cmVHTDo6c2V0
Q29tcHJlc3NlZFN1YkltYWdlKToKKysgICAgICAgIChyeDo6VGV4dHVyZUdMOjpjb3B5SW1hZ2Up
OgorKyAgICAgICAgKHJ4OjpUZXh0dXJlR0w6OmNvcHlTdWJUZXh0dXJlSGVscGVyKToKKysgICAg
ICAgIChyeDo6VGV4dHVyZUdMOjpzZXRTdG9yYWdlKToKKysgICAgICAgIChyeDo6VGV4dHVyZUdM
OjpzZXRJbWFnZUV4dGVybmFsKToKKysgICAgICAgIChyeDo6VGV4dHVyZUdMOjpzZXRTdG9yYWdl
TXVsdGlzYW1wbGUpOgorKyAgICAgICAgKHJ4OjpUZXh0dXJlR0w6OnNldFN0b3JhZ2VFeHRlcm5h
bE1lbW9yeSk6CisrICAgICAgICAocng6OlRleHR1cmVHTDo6c2V0RUdMSW1hZ2VUYXJnZXQpOgor
KyAgICAgICAgKHJ4OjpUZXh0dXJlR0w6OnNldExldmVsSW5mbyk6CisrICAgICAgICAocng6OlRl
eHR1cmVHTDo6aW5pdGlhbGl6ZUNvbnRlbnRzKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3Jl
bmRlcmVyL2dsL1ZlcnRleEFycmF5R0wuY3BwOgorKyAgICAgICAgKHJ4OjpWZXJ0ZXhBcnJheUdM
OjpzdHJlYW1BdHRyaWJ1dGVzIGNvbnN0KToKKysgICAgICAgIChyeDo6VmVydGV4QXJyYXlHTDo6
dmFsaWRhdGVTdGF0ZSBjb25zdCk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9n
bC9WZXJ0ZXhBcnJheUdMLmg6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9j
Z2wvRGV2aWNlQ0dMLmNwcDogQWRkZWQuCisrICAgICAgICAocng6OkRldmljZUNHTDo6RGV2aWNl
Q0dMKToKKysgICAgICAgIChyeDo6RGV2aWNlQ0dMOjp+RGV2aWNlQ0dMKToKKysgICAgICAgIChy
eDo6RGV2aWNlQ0dMOjppbml0aWFsaXplKToKKysgICAgICAgIChyeDo6RGV2aWNlQ0dMOjpnZXRB
dHRyaWJ1dGUpOgorKyAgICAgICAgKHJ4OjpEZXZpY2VDR0w6OmdldFR5cGUpOgorKyAgICAgICAg
KHJ4OjpEZXZpY2VDR0w6OmdlbmVyYXRlRXh0ZW5zaW9ucyBjb25zdCk6CisrICAgICAgICAqIHNy
Yy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvRGV2aWNlQ0dMLmg6IEFkZGVkLgorKyAgICAgICAg
KiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0Rpc3BsYXlDR0wuaDoKKysgICAgICAgICog
c3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9EaXNwbGF5Q0dMLm1tOgorKyAgICAgICAgKHJ4
OjpEaXNwbGF5Q0dMOjpjcmVhdGVEZXZpY2UpOgorKyAgICAgICAgKHJ4OjpEaXNwbGF5Q0dMOjpn
ZXRDR0xQaXhlbEZvcm1hdCBjb25zdCk6CisrICAgICAgICAocng6OkRpc3BsYXlDR0w6OmdlbmVy
YXRlRXh0ZW5zaW9ucyBjb25zdCk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9n
bC9jZ2wvSU9TdXJmYWNlU3VyZmFjZUNHTC5tbToKKysgICAgICAgIChyeDo6SU9TdXJmYWNlU3Vy
ZmFjZUNHTDo6aW5pdGlhbGl6ZUFscGhhQ2hhbm5lbCk6CisrICAgICAgICAqIHNyYy9saWJBTkdM
RS9yZW5kZXJlci9nbC9lZ2wvRGlzcGxheUVHTC5jcHA6CisrICAgICAgICAocng6OkRpc3BsYXlF
R0w6OmdlbmVyYXRlRXh0ZW5zaW9ucyBjb25zdCk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9y
ZW5kZXJlci9nbC9nbHgvRGlzcGxheUdMWC5jcHA6CisrICAgICAgICAocng6OkRpc3BsYXlHTFg6
Om1ha2VDdXJyZW50KToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2dseC9X
aW5kb3dTdXJmYWNlR0xYLmNwcDoKKysgICAgICAgIChyeDo6V2luZG93U3VyZmFjZUdMWDo6aW5p
dGlhbGl6ZSk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9yZW5kZXJlcmds
X3V0aWxzLmNwcDoKKysgICAgICAgIChyeDo6bmF0aXZlZ2xfZ2w6OkdlbmVyYXRlQ2Fwcyk6Cisr
ICAgICAgICAocng6Om5hdGl2ZWdsX2dsOjpJbml0aWFsaXplRmVhdHVyZXMpOgorKyAgICAgICAg
KHJ4OjpuYXRpdmVnbF9nbDo6SW5pdGlhbGl6ZUZyb250ZW5kRmVhdHVyZXMpOgorKyAgICAgICAg
KHJ4OjpuYXRpdmVnbDo6U3VwcG9ydHNDb21wdXRlKToKKysgICAgICAgIChyeDo6bmF0aXZlZ2w6
OkdldEJ1ZmZlckJpbmRpbmdRdWVyeSk6CisrICAgICAgICAocng6Om5hdGl2ZWdsOjpHZXRCdWZm
ZXJCaW5kaW5nU3RyaW5nKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL3Jl
bmRlcmVyZ2xfdXRpbHMuaDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2xvYWRf
ZnVuY3Rpb25zX2RhdGEuanNvbjoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2xv
YWRfZnVuY3Rpb25zX3RhYmxlX2F1dG9nZW4uY3BwOgorKyAgICAgICAgKGFuZ2xlOjpHZXRMb2Fk
RnVuY3Rpb25zTWFwKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL251bGwvRGV2
aWNlTlVMTC5jcHA6CisrICAgICAgICAocng6OkRldmljZU5VTEw6OmdldEF0dHJpYnV0ZSk6Cisr
ICAgICAgICAocng6OkRldmljZU5VTEw6OmdldERldmljZSk6IERlbGV0ZWQuCisrICAgICAgICAq
IHNyYy9saWJBTkdMRS9yZW5kZXJlci9udWxsL0RldmljZU5VTEwuaDoKKysgICAgICAgICogc3Jj
L2xpYkFOR0xFL3JlbmRlcmVyL3JlbmRlcmVyX3V0aWxzLmNwcDoKKysgICAgICAgIChyeDo6U2hv
dWxkVXNlRGVidWdMYXllcnMpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVs
a2FuL0J1ZmZlclZrLmNwcDoKKysgICAgICAgIChyeDo6QnVmZmVyVms6OnJlbGVhc2UpOgorKyAg
ICAgICAgKHJ4OjpCdWZmZXJWazo6bWFwUmFuZ2VJbXBsKToKKysgICAgICAgIChyeDo6QnVmZmVy
Vms6OnNldERhdGFJbXBsKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGth
bi9Db21tYW5kR3JhcGguY3BwOgorKyAgICAgICAgKHJ4Ojp2azo6Q29tbWFuZEdyYXBoUmVzb3Vy
Y2U6OkNvbW1hbmRHcmFwaFJlc291cmNlKToKKysgICAgICAgIChyeDo6dms6OkNvbW1hbmRHcmFw
aFJlc291cmNlOjp+Q29tbWFuZEdyYXBoUmVzb3VyY2UpOgorKyAgICAgICAgKHJ4Ojp2azo6Q29t
bWFuZEdyYXBoUmVzb3VyY2U6OmlzUmVzb3VyY2VJblVzZSBjb25zdCk6CisrICAgICAgICAocng6
OnZrOjpDb21tYW5kR3JhcGhSZXNvdXJjZTo6cmVjb3JkQ29tbWFuZHMpOgorKyAgICAgICAgKHJ4
Ojp2azo6Q29tbWFuZEdyYXBoUmVzb3VyY2U6OmFkZFdyaXRlRGVwZW5kZW5jeSk6CisrICAgICAg
ICAocng6OnZrOjpDb21tYW5kR3JhcGhSZXNvdXJjZTo6YWRkUmVhZERlcGVuZGVuY3kpOgorKyAg
ICAgICAgKHJ4Ojp2azo6Q29tbWFuZEdyYXBoUmVzb3VyY2U6OnN0YXJ0TmV3Q29tbWFuZHMpOgor
KyAgICAgICAgKHJ4Ojp2azo6Q29tbWFuZEdyYXBoUmVzb3VyY2U6Om9uV3JpdGVJbXBsKToKKysg
ICAgICAgIChyeDo6dms6OlNoYXJlZEdhcmJhZ2U6OlNoYXJlZEdhcmJhZ2UpOgorKyAgICAgICAg
KHJ4Ojp2azo6U2hhcmVkR2FyYmFnZTo6b3BlcmF0b3I9KToKKysgICAgICAgIChyeDo6dms6OlNo
YXJlZEdhcmJhZ2U6OmRlc3Ryb3lJZkNvbXBsZXRlKToKKysgICAgICAgIChyeDo6dms6OkNvbW1h
bmRHcmFwaDo6fkNvbW1hbmRHcmFwaCk6CisrICAgICAgICAocng6OnZrOjpDb21tYW5kR3JhcGg6
OnN1Ym1pdENvbW1hbmRzKToKKysgICAgICAgIChyeDo6dms6OkNvbW1hbmRHcmFwaDo6cmVsZWFz
ZVJlc291cmNlVXNlcyk6CisrICAgICAgICAocng6OnZrOjpDb21tYW5kR3JhcGg6OnJlbGVhc2VS
ZXNvdXJjZVVzZXNBbmRVcGRhdGVTZXJpYWxzKToKKysgICAgICAgIChyeDo6dms6OkNvbW1hbmRH
cmFwaFJlc291cmNlOjpyZXNldFF1ZXVlU2VyaWFsKTogRGVsZXRlZC4KKysgICAgICAgICogc3Jj
L2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9Db21tYW5kR3JhcGguaDoKKysgICAgICAgIChyeDo6
dms6OkNvbW1hbmRHcmFwaFJlc291cmNlOjpnZXRMYXRlc3RTZXJpYWwgY29uc3QpOgorKyAgICAg
ICAgKHJ4Ojp2azo6Q29tbWFuZEdyYXBoUmVzb3VyY2U6Omhhc1N0YXJ0ZWRSZW5kZXJQYXNzIGNv
bnN0KToKKysgICAgICAgIChyeDo6dms6OkNvbW1hbmRHcmFwaFJlc291cmNlOjp1cGRhdGVDdXJy
ZW50QWNjZXNzTm9kZXMpOgorKyAgICAgICAgKHJ4Ojp2azo6Q29tbWFuZEdyYXBoUmVzb3VyY2U6
Om9uR3JhcGhBY2Nlc3MpOgorKyAgICAgICAgKHJ4Ojp2azo6Q29tbWFuZEdyYXBoUmVzb3VyY2U6
OmFwcGVuZFRvU3RhcnRlZFJlbmRlclBhc3MpOgorKyAgICAgICAgKHJ4Ojp2azo6Q29tbWFuZEdy
YXBoUmVzb3VyY2U6OnJlbmRlclBhc3NTdGFydGVkQnV0RW1wdHkgY29uc3QpOgorKyAgICAgICAg
KHJ4Ojp2azo6Q29tbWFuZEdyYXBoUmVzb3VyY2U6OmNsZWFyUmVuZGVyUGFzc0NvbG9yQXR0YWNo
bWVudCk6CisrICAgICAgICAocng6OnZrOjpDb21tYW5kR3JhcGhSZXNvdXJjZTo6Y2xlYXJSZW5k
ZXJQYXNzRGVwdGhBdHRhY2htZW50KToKKysgICAgICAgIChyeDo6dms6OkNvbW1hbmRHcmFwaFJl
c291cmNlOjpjbGVhclJlbmRlclBhc3NTdGVuY2lsQXR0YWNobWVudCk6CisrICAgICAgICAocng6
OnZrOjpDb21tYW5kR3JhcGhSZXNvdXJjZTo6aW52YWxpZGF0ZVJlbmRlclBhc3NDb2xvckF0dGFj
aG1lbnQpOgorKyAgICAgICAgKHJ4Ojp2azo6Q29tbWFuZEdyYXBoUmVzb3VyY2U6OmludmFsaWRh
dGVSZW5kZXJQYXNzRGVwdGhBdHRhY2htZW50KToKKysgICAgICAgIChyeDo6dms6OkNvbW1hbmRH
cmFwaFJlc291cmNlOjppbnZhbGlkYXRlUmVuZGVyUGFzc1N0ZW5jaWxBdHRhY2htZW50KToKKysg
ICAgICAgIChyeDo6dms6OkNvbW1hbmRHcmFwaFJlc291cmNlOjpnZXRSZW5kZXJQYXNzUmVuZGVy
QXJlYSBjb25zdCk6CisrICAgICAgICAocng6OnZrOjpDb21tYW5kR3JhcGhSZXNvdXJjZTo6YWRk
R2xvYmFsTWVtb3J5QmFycmllcik6CisrICAgICAgICAocng6OnZrOjpDb21tYW5kR3JhcGhSZXNv
dXJjZTo6aGFzQ2hpbGRsZXNzV3JpdGluZ05vZGUgY29uc3QpOgorKyAgICAgICAgKHJ4Ojp2azo6
Q29tbWFuZEdyYXBoOjpvblJlc291cmNlVXNlKToKKysgICAgICAgIChyeDo6dms6OkNvbW1hbmRH
cmFwaFJlc291cmNlOjpnZXRTdG9yZWRRdWV1ZVNlcmlhbCBjb25zdCk6IERlbGV0ZWQuCisrICAg
ICAgICAocng6OnZrOjpDb21tYW5kR3JhcGhSZXNvdXJjZTo6dXBkYXRlUXVldWVTZXJpYWwpOiBE
ZWxldGVkLgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL0NvbnRleHRW
ay5jcHA6CisrICAgICAgICAocng6OkNvbW1hbmRCYXRjaDo6Q29tbWFuZEJhdGNoKToKKysgICAg
ICAgIChyeDo6Q29tbWFuZEJhdGNoOjpvcGVyYXRvcj0pOgorKyAgICAgICAgKHJ4OjpDb21tYW5k
QmF0Y2g6OmRlc3Ryb3kpOgorKyAgICAgICAgKHJ4OjpDb21tYW5kUXVldWU6OmRlc3Ryb3kpOgor
KyAgICAgICAgKHJ4OjpDb21tYW5kUXVldWU6OmluaXQpOgorKyAgICAgICAgKHJ4OjpDb21tYW5k
UXVldWU6OmNoZWNrQ29tcGxldGVkQ29tbWFuZHMpOgorKyAgICAgICAgKHJ4OjpDb21tYW5kUXVl
dWU6OnJlbGVhc2VUb0NvbW1hbmRCYXRjaCk6CisrICAgICAgICAocng6OkNvbW1hbmRRdWV1ZTo6
Y2xlYXJBbGxHYXJiYWdlKToKKysgICAgICAgIChyeDo6Q29tbWFuZFF1ZXVlOjphbGxvY2F0ZVBy
aW1hcnlDb21tYW5kQnVmZmVyKToKKysgICAgICAgIChyeDo6Q29tbWFuZFF1ZXVlOjpyZWxlYXNl
UHJpbWFyeUNvbW1hbmRCdWZmZXIpOgorKyAgICAgICAgKHJ4OjpDb21tYW5kUXVldWU6OmhhbmRs
ZURldmljZUxvc3QpOgorKyAgICAgICAgKHJ4OjpDb21tYW5kUXVldWU6Omhhc0luRmxpZ2h0Q29t
bWFuZHMgY29uc3QpOgorKyAgICAgICAgKHJ4OjpDb21tYW5kUXVldWU6OmZpbmlzaFRvU2VyaWFs
T3JUaW1lb3V0KToKKysgICAgICAgIChyeDo6Q29tbWFuZFF1ZXVlOjpzdWJtaXRGcmFtZSk6Cisr
ICAgICAgICAocng6OkNvbW1hbmRRdWV1ZTo6Z2V0TGFzdFN1Ym1pdHRlZEZlbmNlIGNvbnN0KToK
KysgICAgICAgIChyeDo6Q29udGV4dFZrOjpDb250ZXh0VmspOgorKyAgICAgICAgKHJ4OjpDb250
ZXh0Vms6Om9uRGVzdHJveSk6CisrICAgICAgICAocng6OkNvbnRleHRWazo6aW5pdGlhbGl6ZSk6
CisrICAgICAgICAocng6OkNvbnRleHRWazo6c2V0dXBEcmF3KToKKysgICAgICAgIChyeDo6Q29u
dGV4dFZrOjpzZXR1cEluZGlyZWN0RHJhdyk6CisrICAgICAgICAocng6OkNvbnRleHRWazo6c2V0
dXBJbmRleGVkSW5kaXJlY3REcmF3KToKKysgICAgICAgIChyeDo6Q29udGV4dFZrOjpzZXR1cExp
bmVMb29wSW5kZXhlZEluZGlyZWN0RHJhdyk6CisrICAgICAgICAocng6OkNvbnRleHRWazo6aGFu
ZGxlRGlydHlHcmFwaGljc1ZlcnRleEJ1ZmZlcnMpOgorKyAgICAgICAgKHJ4OjpDb250ZXh0Vms6
OmhhbmRsZURpcnR5R3JhcGhpY3NJbmRleEJ1ZmZlcik6CisrICAgICAgICAocng6OkNvbnRleHRW
azo6c3VibWl0RnJhbWUpOgorKyAgICAgICAgKHJ4OjpDb250ZXh0Vms6OmZsdXNoQ29tbWFuZEdy
YXBoKToKKysgICAgICAgIChyeDo6Q29udGV4dFZrOjpzeW5jaHJvbml6ZUNwdUdwdVRpbWUpOgor
KyAgICAgICAgKHJ4OjpDb250ZXh0Vms6OnRyYWNlR3B1RXZlbnRJbXBsKToKKysgICAgICAgIChy
eDo6Q29udGV4dFZrOjpjaGVja0NvbXBsZXRlZEdwdUV2ZW50cyk6CisrICAgICAgICAocng6OkNv
bnRleHRWazo6Zmx1c2hHcHVFdmVudHMpOgorKyAgICAgICAgKHJ4OjpDb250ZXh0Vms6OmNsZWFy
QWxsR2FyYmFnZSk6CisrICAgICAgICAocng6OkNvbnRleHRWazo6aGFuZGxlRGV2aWNlTG9zdCk6
CisrICAgICAgICAocng6OkNvbnRleHRWazo6ZHJhd0FycmF5c0luZGlyZWN0KToKKysgICAgICAg
IChyeDo6Q29udGV4dFZrOjpkcmF3RWxlbWVudHNJbmRpcmVjdCk6CisrICAgICAgICAocng6OkNv
bnRleHRWazo6c3luY1N0YXRlKToKKysgICAgICAgIChyeDo6Q29udGV4dFZrOjpvbk1ha2VDdXJy
ZW50KToKKysgICAgICAgIChyeDo6Q29udGV4dFZrOjpkaXNwYXRjaENvbXB1dGVJbmRpcmVjdCk6
CisrICAgICAgICAocng6OkNvbnRleHRWazo6bWVtb3J5QmFycmllcik6CisrICAgICAgICAocng6
OkNvbnRleHRWazo6d3JpdGVBdG9taWNDb3VudGVyQnVmZmVyRHJpdmVyVW5pZm9ybU9mZnNldHMp
OgorKyAgICAgICAgKHJ4OjpDb250ZXh0Vms6OnVwZGF0ZUFjdGl2ZVRleHR1cmVzKToKKysgICAg
ICAgIChyeDo6Q29udGV4dFZrOjp1cGRhdGVBY3RpdmVJbWFnZXMpOgorKyAgICAgICAgKHJ4OjpD
b250ZXh0Vms6OnNob3VsZEZsdXNoKToKKysgICAgICAgIChyeDo6Q29udGV4dFZrOjpmbHVzaElt
cGwpOgorKyAgICAgICAgKHJ4OjpDb250ZXh0Vms6OmZpbmlzaEltcGwpOgorKyAgICAgICAgKHJ4
OjpDb250ZXh0Vms6OmlzU2VyaWFsSW5Vc2UgY29uc3QpOgorKyAgICAgICAgKHJ4OjpDb250ZXh0
Vms6OmNoZWNrQ29tcGxldGVkQ29tbWFuZHMpOgorKyAgICAgICAgKHJ4OjpDb250ZXh0Vms6OmZp
bmlzaFRvU2VyaWFsKToKKysgICAgICAgIChyeDo6Q29udGV4dFZrOjpmaW5pc2hUb1NlcmlhbE9y
VGltZW91dCk6CisrICAgICAgICAocng6OkNvbnRleHRWazo6Z2V0Q29tcGF0aWJsZVJlbmRlclBh
c3MpOgorKyAgICAgICAgKHJ4OjpDb250ZXh0Vms6OmdldFJlbmRlclBhc3NXaXRoT3BzKToKKysg
ICAgICAgIChyeDo6Q29udGV4dFZrOjplbnN1cmVTdWJtaXRGZW5jZUluaXRpYWxpemVkKToKKysg
ICAgICAgIChyeDo6Q29udGV4dFZrOjpnZXROZXh0U3VibWl0RmVuY2UpOgorKyAgICAgICAgKHJ4
OjpDb250ZXh0Vms6OmdldExhc3RTdWJtaXR0ZWRGZW5jZSBjb25zdCk6CisrICAgICAgICAocng6
OkNvbnRleHRWazo6Z2V0VGltZXN0YW1wKToKKysgICAgICAgIChyeDo6Q29udGV4dFZrOjp1cGRh
dGVEZWZhdWx0QXR0cmlidXRlKToKKysgICAgICAgIChyeDo6Q29udGV4dFZrOjp3YWl0Rm9yU3dh
cGNoYWluSW1hZ2VJZk5lY2Vzc2FyeSk6CisrICAgICAgICAocng6OkNvbnRleHRWazo6Q29tbWFu
ZEJhdGNoOjpDb21tYW5kQmF0Y2gpOiBEZWxldGVkLgorKyAgICAgICAgKHJ4OjpDb250ZXh0Vms6
OkNvbW1hbmRCYXRjaDo6b3BlcmF0b3I9KTogRGVsZXRlZC4KKysgICAgICAgIChyeDo6Q29udGV4
dFZrOjpDb21tYW5kQmF0Y2g6OmRlc3Ryb3kpOiBEZWxldGVkLgorKyAgICAgICAgKHJ4OjpDb250
ZXh0Vms6OnJlbGVhc2VUb0NvbW1hbmRCYXRjaCk6IERlbGV0ZWQuCisrICAgICAgICAocng6OkNv
bnRleHRWazo6cmVjeWNsZUNvbW1hbmRCYXRjaCk6IERlbGV0ZWQuCisrICAgICAgICAocng6OkNv
bnRleHRWazo6Z2V0Q29tbWFuZEdyYXBoKTogRGVsZXRlZC4KKysgICAgICAgICogc3JjL2xpYkFO
R0xFL3JlbmRlcmVyL3Z1bGthbi9Db250ZXh0VmsuaDoKKysgICAgICAgIChyeDo6Q29udGV4dFZr
OjpvblZlcnRleEF0dHJpYnV0ZUNoYW5nZSk6CisrICAgICAgICAocng6OkNvbnRleHRWazo6Z2V0
Q3VycmVudFF1ZXVlU2VyaWFsIGNvbnN0KToKKysgICAgICAgIChyeDo6Q29udGV4dFZrOjpnZXRM
YXN0U3VibWl0dGVkUXVldWVTZXJpYWwgY29uc3QpOgorKyAgICAgICAgKHJ4OjpDb250ZXh0Vms6
OmdldExhc3RDb21wbGV0ZWRRdWV1ZVNlcmlhbCBjb25zdCk6CisrICAgICAgICAocng6OkNvbnRl
eHRWazo6YWRkR2FyYmFnZSk6CisrICAgICAgICAocng6OkNvbnRleHRWazo6Z2V0Q29tbWFuZEdy
YXBoKToKKysgICAgICAgIChyeDo6Q29udGV4dFZrOjpyZWxlYXNlT2JqZWN0KTogRGVsZXRlZC4K
KysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9EZXZpY2VWay5jcHA6Cisr
ICAgICAgICAocng6OkRldmljZVZrOjpnZXRBdHRyaWJ1dGUpOgorKyAgICAgICAgKHJ4OjpEZXZp
Y2VWazo6Z2V0RGV2aWNlKTogRGVsZXRlZC4KKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRl
cmVyL3Z1bGthbi9EZXZpY2VWay5oOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIv
dnVsa2FuL0Rpc3BsYXlWay5jcHA6CisrICAgICAgICAocng6OkRpc3BsYXlWazo6Z2VuZXJhdGVF
eHRlbnNpb25zIGNvbnN0KToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGth
bi9GcmFtZWJ1ZmZlclZrLmNwcDoKKysgICAgICAgIChyeDo6RnJhbWVidWZmZXJWazo6ZGVzdHJv
eSk6CisrICAgICAgICAocng6OkZyYW1lYnVmZmVyVms6OmludmFsaWRhdGUpOgorKyAgICAgICAg
KHJ4OjpGcmFtZWJ1ZmZlclZrOjppbnZhbGlkYXRlU3ViKToKKysgICAgICAgIChyeDo6RnJhbWVi
dWZmZXJWazo6Y2xlYXJJbXBsKToKKysgICAgICAgIChyeDo6RnJhbWVidWZmZXJWazo6Z2V0SW1w
bGVtZW50YXRpb25Db2xvclJlYWRUeXBlIGNvbnN0KToKKysgICAgICAgIChyeDo6RnJhbWVidWZm
ZXJWazo6YmxpdFdpdGhDb21tYW5kKToKKysgICAgICAgIChyeDo6RnJhbWVidWZmZXJWazo6Ymxp
dCk6CisrICAgICAgICAocng6OkZyYW1lYnVmZmVyVms6OnJlc29sdmVDb2xvcldpdGhDb21tYW5k
KToKKysgICAgICAgIChyeDo6RnJhbWVidWZmZXJWazo6cmVhZFBpeGVsc0ltcGwpOgorKyAgICAg
ICAgKHJ4OjpGcmFtZWJ1ZmZlclZrOjpvblNjaXNzb3JDaGFuZ2UpOgorKyAgICAgICAgKiBzcmMv
bGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL0ZyYW1lYnVmZmVyVmsuaDoKKysgICAgICAgIChyeDo6
RnJhbWVidWZmZXJWazo6YXBwZW5kVG9TdGFydGVkUmVuZGVyUGFzcyk6CisrICAgICAgICAqIHNy
Yy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vR2xzbGFuZ1dyYXBwZXIuY3BwOgorKyAgICAgICAg
KiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL0ltYWdlVmsuY3BwOgorKyAgICAgICAgKHJ4
OjpJbWFnZVZrOjpvbkRlc3Ryb3kpOgorKyAgICAgICAgKHJ4OjpJbWFnZVZrOjpvcnBoYW4pOgor
KyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL0ltYWdlVmsuaDoKKysgICAg
ICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9NZW1vcnlPYmplY3RWay5jcHA6Cisr
ICAgICAgICAocng6Ok1lbW9yeU9iamVjdFZrOjpjcmVhdGVJbWFnZSk6CisrICAgICAgICAqIHNy
Yy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vT3ZlcmxheVZrLmNwcDoKKysgICAgICAgIChyeDo6
T3ZlcmxheVZrOjpjcmVhdGVGb250KToKKysgICAgICAgIChyeDo6T3ZlcmxheVZrOjpjdWxsV2lk
Z2V0cyk6CisrICAgICAgICAocng6Ok92ZXJsYXlWazo6b25QcmVzZW50KToKKysgICAgICAgICog
c3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9QZXJzaXN0ZW50Q29tbWFuZFBvb2wuY3BwOgor
KyAgICAgICAgKHJ4Ojp2azo6UGVyc2lzdGVudENvbW1hbmRQb29sOjpkZXN0cm95KToKKysgICAg
ICAgIChyeDo6dms6OlBlcnNpc3RlbnRDb21tYW5kUG9vbDo6YWxsb2NhdGUpOgorKyAgICAgICAg
KHJ4Ojp2azo6UGVyc2lzdGVudENvbW1hbmRQb29sOjphbGxvYyk6IERlbGV0ZWQuCisrICAgICAg
ICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vUGVyc2lzdGVudENvbW1hbmRQb29sLmg6
CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vUHJvZ3JhbVZrLmNwcDoK
KysgICAgICAgIChyeDo6UHJvZ3JhbVZrOjpyZXNldCk6CisrICAgICAgICAocng6OlByb2dyYW1W
azo6aW5pdERlZmF1bHRVbmlmb3JtTGF5b3V0TWFwcGluZyk6CisrICAgICAgICAocng6OlByb2dy
YW1Wazo6dXBkYXRlRGVmYXVsdFVuaWZvcm1zRGVzY3JpcHRvclNldCk6CisrICAgICAgICAocng6
OlByb2dyYW1Wazo6dXBkYXRlQnVmZmVyc0Rlc2NyaXB0b3JTZXQpOgorKyAgICAgICAgKHJ4OjpQ
cm9ncmFtVms6OnVwZGF0ZUF0b21pY0NvdW50ZXJCdWZmZXJzRGVzY3JpcHRvclNldCk6CisrICAg
ICAgICAocng6OlByb2dyYW1Wazo6dXBkYXRlSW1hZ2VzRGVzY3JpcHRvclNldCk6CisrICAgICAg
ICAocng6OlByb2dyYW1Wazo6dXBkYXRlVHJhbnNmb3JtRmVlZGJhY2tEZXNjcmlwdG9yU2V0SW1w
bCk6CisrICAgICAgICAocng6OlByb2dyYW1Wazo6dXBkYXRlRGVzY3JpcHRvclNldHMpOgorKyAg
ICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL1Byb2dyYW1Way5oOgorKyAgICAg
ICAgKHJ4OjpQcm9ncmFtVms6OmdldEdyYXBoaWNzUGlwZWxpbmUpOgorKyAgICAgICAgKiBzcmMv
bGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL1JFQURNRS5tZDoKKysgICAgICAgICogc3JjL2xpYkFO
R0xFL3JlbmRlcmVyL3Z1bGthbi9SZW5kZXJUYXJnZXRWay5jcHA6CisrICAgICAgICAocng6OlJl
bmRlclRhcmdldFZrOjpSZW5kZXJUYXJnZXRWayk6CisrICAgICAgICAocng6OlJlbmRlclRhcmdl
dFZrOjppbml0KToKKysgICAgICAgIChyeDo6UmVuZGVyVGFyZ2V0Vms6OnJlc2V0KToKKysgICAg
ICAgIChyeDo6UmVuZGVyVGFyZ2V0Vms6Om9uQ29sb3JEcmF3KToKKysgICAgICAgIChyeDo6UmVu
ZGVyVGFyZ2V0Vms6Om9uRGVwdGhTdGVuY2lsRHJhdyk6CisrICAgICAgICAocng6OlJlbmRlclRh
cmdldFZrOjp1cGRhdGVTd2FwY2hhaW5JbWFnZSk6CisrICAgICAgICAocng6OlJlbmRlclRhcmdl
dFZrOjpnZXRJbWFnZUZvclJlYWQpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJUYXJnZXRWazo6Z2V0
SW1hZ2VGb3JXcml0ZSBjb25zdCk6CisrICAgICAgICAocng6OlJlbmRlclRhcmdldFZrOjpnZXRG
ZXRjaEltYWdlVmlldyBjb25zdCk6IERlbGV0ZWQuCisrICAgICAgICAqIHNyYy9saWJBTkdMRS9y
ZW5kZXJlci92dWxrYW4vUmVuZGVyVGFyZ2V0VmsuaDoKKysgICAgICAgICogc3JjL2xpYkFOR0xF
L3JlbmRlcmVyL3Z1bGthbi9SZW5kZXJidWZmZXJWay5jcHA6CisrICAgICAgICAocng6OlJlbmRl
cmJ1ZmZlclZrOjpzZXRTdG9yYWdlSW1wbCk6CisrICAgICAgICAocng6OlJlbmRlcmJ1ZmZlclZr
OjpzZXRTdG9yYWdlRUdMSW1hZ2VUYXJnZXQpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJidWZmZXJW
azo6cmVsZWFzZUltYWdlKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGth
bi9SZW5kZXJidWZmZXJWay5oOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVs
a2FuL1JlbmRlcmVyVmsuY3BwOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlclZrOjp+UmVuZGVyZXJW
ayk6CisrICAgICAgICAocng6OlJlbmRlcmVyVms6Om9uRGVzdHJveSk6CisrICAgICAgICAocng6
OlJlbmRlcmVyVms6Om5vdGlmeURldmljZUxvc3QpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlclZr
Ojppbml0aWFsaXplKToKKysgICAgICAgIChyeDo6UmVuZGVyZXJWazo6aW5pdGlhbGl6ZURldmlj
ZSk6CisrICAgICAgICAocng6OlJlbmRlcmVyVms6OmluaXRGZWF0dXJlcyk6CisrICAgICAgICAo
cng6OlJlbmRlcmVyVms6OnF1ZXVlU3VibWl0KToKKysgICAgICAgIChyeDo6UmVuZGVyZXJWazo6
Y2xlYW51cEdhcmJhZ2UpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlclZrOjpnZXRNYXhGZW5jZVdh
aXRUaW1lTnMgY29uc3QpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlclZrOjpvbkNvbXBsZXRlZFNl
cmlhbCk6CisrICAgICAgICAocng6OlJlbmRlcmVyVms6Om5leHRTZXJpYWwpOiBEZWxldGVkLgor
KyAgICAgICAgKHJ4OjpSZW5kZXJlclZrOjphZGRHYXJiYWdlKTogRGVsZXRlZC4KKysgICAgICAg
ICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9SZW5kZXJlclZrLmg6CisrICAgICAgICAo
cng6OkNvbGxlY3RHYXJiYWdlKToKKysgICAgICAgIChyeDo6UmVuZGVyZXJWazo6Z2V0TWF4VmVy
dGV4QXR0cmliRGl2aXNvciBjb25zdCk6CisrICAgICAgICAocng6OlJlbmRlcmVyVms6OmNvbGxl
Y3RHYXJiYWdlQW5kUmVpbml0KToKKysgICAgICAgIChyeDo6UmVuZGVyZXJWazo6Z2V0Q3VycmVu
dFF1ZXVlU2VyaWFsIGNvbnN0KToKKysgICAgICAgIChyeDo6UmVuZGVyZXJWazo6Z2V0TGFzdFN1
Ym1pdHRlZFF1ZXVlU2VyaWFsIGNvbnN0KToKKysgICAgICAgIChyeDo6UmVuZGVyZXJWazo6Z2V0
TGFzdENvbXBsZXRlZFF1ZXVlU2VyaWFsIGNvbnN0KToKKysgICAgICAgIChyeDo6UmVuZGVyZXJW
azo6c2hvdWxkQ2xlYW51cEdhcmJhZ2UpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVy
ZXIvdnVsa2FuL1NhbXBsZXJWay5jcHA6CisrICAgICAgICAocng6OlNhbXBsZXJWazo6b25EZXN0
cm95KToKKysgICAgICAgIChyeDo6U2FtcGxlclZrOjpzeW5jU3RhdGUpOgorKyAgICAgICAgKiBz
cmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL1NlY29uZGFyeUNvbW1hbmRCdWZmZXIuY3BwOgor
KyAgICAgICAgKHJ4Ojp2azo6cHJpdjo6U2Vjb25kYXJ5Q29tbWFuZEJ1ZmZlcjo6ZXhlY3V0ZUNv
bW1hbmRzKToKKysgICAgICAgIChyeDo6dms6OnByaXY6OlNlY29uZGFyeUNvbW1hbmRCdWZmZXI6
OmR1bXBDb21tYW5kcyBjb25zdCk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci92
dWxrYW4vU2Vjb25kYXJ5Q29tbWFuZEJ1ZmZlci5oOgorKyAgICAgICAgKHJ4Ojp2azo6cHJpdjo6
U2Vjb25kYXJ5Q29tbWFuZEJ1ZmZlcjo6ZHJhd0luZGlyZWN0KToKKysgICAgICAgIChyeDo6dms6
OnByaXY6OlNlY29uZGFyeUNvbW1hbmRCdWZmZXI6OmRyYXdJbmRleGVkSW5kaXJlY3QpOgorKyAg
ICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL1NlbWFwaG9yZVZrLmNwcDoKKysg
ICAgICAgIChyeDo6U2VtYXBob3JlVms6Om9uRGVzdHJveSk6CisrICAgICAgICAqIHNyYy9saWJB
TkdMRS9yZW5kZXJlci92dWxrYW4vU3VyZmFjZVZrLmNwcDoKKysgICAgICAgIChyeDo6T2Zmc2Ny
ZWVuU3VyZmFjZVZrOjpBdHRhY2htZW50SW1hZ2U6OmluaXRpYWxpemUpOgorKyAgICAgICAgKHJ4
OjpPZmZzY3JlZW5TdXJmYWNlVms6OkF0dGFjaG1lbnRJbWFnZTo6ZGVzdHJveSk6CisrICAgICAg
ICAocng6Ok9mZnNjcmVlblN1cmZhY2VWazo6T2Zmc2NyZWVuU3VyZmFjZVZrKToKKysgICAgICAg
IChyeDo6V2luZG93U3VyZmFjZVZrOjpXaW5kb3dTdXJmYWNlVmspOgorKyAgICAgICAgKHJ4OjpX
aW5kb3dTdXJmYWNlVms6OmNyZWF0ZVN3YXBDaGFpbik6CisrICAgICAgICAocng6OldpbmRvd1N1
cmZhY2VWazo6cmVsZWFzZVN3YXBjaGFpbkltYWdlcyk6CisrICAgICAgICAocng6OldpbmRvd1N1
cmZhY2VWazo6ZGVzdHJveVN3YXBDaGFpbkltYWdlcyk6CisrICAgICAgICAocng6OldpbmRvd1N1
cmZhY2VWazo6cHJlc2VudCk6CisrICAgICAgICAocng6OldpbmRvd1N1cmZhY2VWazo6bmV4dFN3
YXBjaGFpbkltYWdlKToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9T
eW5jVmsuY3BwOgorKyAgICAgICAgKHJ4Ojp2azo6U3luY0hlbHBlcjo6U3luY0hlbHBlcik6Cisr
ICAgICAgICAocng6OnZrOjpTeW5jSGVscGVyOjp+U3luY0hlbHBlcik6CisrICAgICAgICAocng6
OnZrOjpTeW5jSGVscGVyOjpyZWxlYXNlVG9SZW5kZXJlcik6CisrICAgICAgICAocng6OnZrOjpT
eW5jSGVscGVyOjppbml0aWFsaXplKToKKysgICAgICAgIChyeDo6dms6OlN5bmNIZWxwZXI6OmNs
aWVudFdhaXQpOgorKyAgICAgICAgKHJ4Ojp2azo6U3luY0hlbHBlcjo6c2VydmVyV2FpdCk6Cisr
ICAgICAgICAocng6OnZrOjpTeW5jSGVscGVyOjpnZXRTdGF0dXMpOgorKyAgICAgICAgKHJ4OjpT
eW5jVms6Om9uRGVzdHJveSk6CisrICAgICAgICAocng6OlN5bmNWazo6c2VydmVyV2FpdCk6Cisr
ICAgICAgICAocng6OkVHTFN5bmNWazo6b25EZXN0cm95KToKKysgICAgICAgIChyeDo6RUdMU3lu
Y1ZrOjpzZXJ2ZXJXYWl0KToKKysgICAgICAgIChyeDo6RmVuY2VTeW5jVms6OkZlbmNlU3luY1Zr
KTogRGVsZXRlZC4KKysgICAgICAgIChyeDo6RmVuY2VTeW5jVms6On5GZW5jZVN5bmNWayk6IERl
bGV0ZWQuCisrICAgICAgICAocng6OkZlbmNlU3luY1ZrOjpvbkRlc3Ryb3kpOiBEZWxldGVkLgor
KyAgICAgICAgKHJ4OjpGZW5jZVN5bmNWazo6aW5pdGlhbGl6ZSk6IERlbGV0ZWQuCisrICAgICAg
ICAocng6OkZlbmNlU3luY1ZrOjpjbGllbnRXYWl0KTogRGVsZXRlZC4KKysgICAgICAgIChyeDo6
RmVuY2VTeW5jVms6OnNlcnZlcldhaXQpOiBEZWxldGVkLgorKyAgICAgICAgKHJ4OjpGZW5jZVN5
bmNWazo6Z2V0U3RhdHVzKTogRGVsZXRlZC4KKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRl
cmVyL3Z1bGthbi9TeW5jVmsuaDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1
bGthbi9UZXh0dXJlVmsuY3BwOgorKyAgICAgICAgKHJ4OjpUZXh0dXJlVms6Om9uRGVzdHJveSk6
CisrICAgICAgICAocng6OlRleHR1cmVWazo6Y29weVN1YkltYWdlSW1wbCk6CisrICAgICAgICAo
cng6OlRleHR1cmVWazo6Y29weVN1YlRleHR1cmVJbXBsKToKKysgICAgICAgIChyeDo6VGV4dHVy
ZVZrOjpjb3B5U3ViSW1hZ2VJbXBsV2l0aFRyYW5zZmVyKToKKysgICAgICAgIChyeDo6VGV4dHVy
ZVZrOjpjb3B5U3ViSW1hZ2VJbXBsV2l0aERyYXcpOgorKyAgICAgICAgKHJ4OjpUZXh0dXJlVms6
OnNldFN0b3JhZ2VFeHRlcm5hbE1lbW9yeSk6CisrICAgICAgICAocng6OlRleHR1cmVWazo6c2V0
RUdMSW1hZ2VUYXJnZXQpOgorKyAgICAgICAgKHJ4OjpUZXh0dXJlVms6OmVuc3VyZUltYWdlQWxs
b2NhdGVkKToKKysgICAgICAgIChyeDo6VGV4dHVyZVZrOjpzZXRJbWFnZUhlbHBlcik6CisrICAg
ICAgICAocng6OlRleHR1cmVWazo6Y29weUltYWdlRGF0YVRvQnVmZmVyQW5kR2V0RGF0YSk6Cisr
ICAgICAgICAocng6OlRleHR1cmVWazo6Y29weUltYWdlRGF0YVRvQnVmZmVyKToKKysgICAgICAg
IChyeDo6VGV4dHVyZVZrOjpnZW5lcmF0ZU1pcG1hcHNXaXRoQ1BVKToKKysgICAgICAgIChyeDo6
VGV4dHVyZVZrOjpnZW5lcmF0ZU1pcG1hcCk6CisrICAgICAgICAocng6OlRleHR1cmVWazo6c2V0
QmFzZUxldmVsKToKKysgICAgICAgIChyeDo6VGV4dHVyZVZrOjpjaGFuZ2VMZXZlbHMpOgorKyAg
ICAgICAgKHJ4OjpUZXh0dXJlVms6OmJpbmRUZXhJbWFnZSk6CisrICAgICAgICAocng6OlRleHR1
cmVWazo6Z2V0QXR0YWNobWVudFJlbmRlclRhcmdldCk6CisrICAgICAgICAocng6OlRleHR1cmVW
azo6ZW5zdXJlSW1hZ2VJbml0aWFsaXplZCk6CisrICAgICAgICAocng6OlRleHR1cmVWazo6aW5p
dExheWVyUmVuZGVyVGFyZ2V0cyk6CisrICAgICAgICAocng6OlRleHR1cmVWazo6c3luY1N0YXRl
KToKKysgICAgICAgIChyeDo6VGV4dHVyZVZrOjpnZXRSZWFkSW1hZ2VWaWV3IGNvbnN0KToKKysg
ICAgICAgIChyeDo6VGV4dHVyZVZrOjpnZXRGZXRjaEltYWdlVmlldyBjb25zdCk6CisrICAgICAg
ICAocng6OlRleHR1cmVWazo6Z2V0TGF5ZXJMZXZlbERyYXdJbWFnZVZpZXcpOgorKyAgICAgICAg
KHJ4OjpUZXh0dXJlVms6OmdldExheWVyTGV2ZWxTdG9yYWdlSW1hZ2VWaWV3KToKKysgICAgICAg
IChyeDo6VGV4dHVyZVZrOjppbml0SW1hZ2UpOgorKyAgICAgICAgKHJ4OjpUZXh0dXJlVms6Omlu
aXRJbWFnZVZpZXdzKToKKysgICAgICAgIChyeDo6VGV4dHVyZVZrOjpyZWxlYXNlSW1hZ2UpOgor
KyAgICAgICAgKHJ4OjpUZXh0dXJlVms6OnJlbGVhc2VJbWFnZVZpZXdzKToKKysgICAgICAgIChy
eDo6VGV4dHVyZVZrOjpyZWxlYXNlU3RhZ2luZ0J1ZmZlcik6CisrICAgICAgICAocng6OlRleHR1
cmVWazo6Z2V0TGV2ZWxDb3VudCBjb25zdCk6CisrICAgICAgICAocng6OlRleHR1cmVWazo6Z2Vu
ZXJhdGVNaXBtYXBMZXZlbHNXaXRoQ1BVKToKKysgICAgICAgIChyeDo6VGV4dHVyZVZrOjpUZXh0
dXJlVmtWaWV3czo6VGV4dHVyZVZrVmlld3MpOiBEZWxldGVkLgorKyAgICAgICAgKHJ4OjpUZXh0
dXJlVms6OlRleHR1cmVWa1ZpZXdzOjp+VGV4dHVyZVZrVmlld3MpOiBEZWxldGVkLgorKyAgICAg
ICAgKHJ4OjpUZXh0dXJlVms6OlRleHR1cmVWa1ZpZXdzOjpyZWxlYXNlKTogRGVsZXRlZC4KKysg
ICAgICAgIChyeDo6VGV4dHVyZVZrOjppbml0M0RSZW5kZXJUYXJnZXRzKTogRGVsZXRlZC4KKysg
ICAgICAgIChyeDo6VGV4dHVyZVZrOjppbml0Q3ViZU1hcFJlbmRlclRhcmdldHMpOiBEZWxldGVk
LgorKyAgICAgICAgKHJ4OjpUZXh0dXJlVms6OmdldFRleHR1cmVWaWV3cyBjb25zdCk6IERlbGV0
ZWQuCisrICAgICAgICAocng6OlRleHR1cmVWazo6aW5pdEltYWdlVmlld0ltcGwpOiBEZWxldGVk
LgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL1RleHR1cmVWay5oOgor
KyAgICAgICAgKCk6IERlbGV0ZWQuCisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci92
dWxrYW4vVHJhbnNmb3JtRmVlZGJhY2tWay5jcHA6CisrICAgICAgICAocng6OlRyYW5zZm9ybUZl
ZWRiYWNrVms6Om9uQmVnaW5PckVuZCk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJl
ci92dWxrYW4vVXRpbHNWay5jcHA6CisrICAgICAgICAocng6OlV0aWxzVms6OmVuc3VyZUNvbnZl
cnRJbmRleEluZGlyZWN0UmVzb3VyY2VzSW5pdGlhbGl6ZWQpOgorKyAgICAgICAgKHJ4OjpVdGls
c1ZrOjplbnN1cmVDb252ZXJ0SW5kZXhJbmRpcmVjdExpbmVMb29wUmVzb3VyY2VzSW5pdGlhbGl6
ZWQpOgorKyAgICAgICAgKHJ4OjpVdGlsc1ZrOjpjb252ZXJ0SW5kZXhJbmRpcmVjdEJ1ZmZlcik6
CisrICAgICAgICAocng6OlV0aWxzVms6OmNvbnZlcnRMaW5lTG9vcEluZGV4SW5kaXJlY3RCdWZm
ZXIpOgorKyAgICAgICAgKHJ4OjpVdGlsc1ZrOjpzdGFydFJlbmRlclBhc3MpOgorKyAgICAgICAg
KHJ4OjpVdGlsc1ZrOjpjbGVhckZyYW1lYnVmZmVyKToKKysgICAgICAgIChyeDo6VXRpbHNWazo6
YmxpdFJlc29sdmVJbXBsKToKKysgICAgICAgIChyeDo6VXRpbHNWazo6c3RlbmNpbEJsaXRSZXNv
bHZlTm9TaGFkZXJFeHBvcnQpOgorKyAgICAgICAgKHJ4OjpVdGlsc1ZrOjpjb3B5SW1hZ2UpOgor
KyAgICAgICAgKHJ4OjpVdGlsc1ZrOjpjdWxsT3ZlcmxheVdpZGdldHMpOgorKyAgICAgICAgKHJ4
OjpVdGlsc1ZrOjpkcmF3T3ZlcmxheSk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJl
ci92dWxrYW4vVXRpbHNWay5oOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVs
a2FuL1ZlcnRleEFycmF5VmsuY3BwOgorKyAgICAgICAgKHJ4OjpWZXJ0ZXhBcnJheVZrOjpkZXN0
cm95KToKKysgICAgICAgIChyeDo6VmVydGV4QXJyYXlWazo6Y29udmVydEluZGV4QnVmZmVySW5k
aXJlY3RHUFUpOgorKyAgICAgICAgKHJ4OjpWZXJ0ZXhBcnJheVZrOjpoYW5kbGVMaW5lTG9vcElu
ZGlyZWN0KToKKysgICAgICAgIChyeDo6VmVydGV4QXJyYXlWazo6Y29udmVydFZlcnRleEJ1ZmZl
ckNQVSk6CisrICAgICAgICAocng6OlZlcnRleEFycmF5Vms6OnN5bmNEaXJ0eUF0dHJpYik6Cisr
ICAgICAgICAocng6OlZlcnRleEFycmF5Vms6OnVwZGF0ZVN0cmVhbWVkQXR0cmlicyk6CisrICAg
ICAgICAocng6OlZlcnRleEFycmF5Vms6OnVwZGF0ZURlZmF1bHRBdHRyaWIpOgorKyAgICAgICAg
KHJ4OjpWZXJ0ZXhBcnJheVZrOjp1cGRhdGVDbGllbnRBdHRyaWJzKTogRGVsZXRlZC4KKysgICAg
ICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9WZXJ0ZXhBcnJheVZrLmg6CisrICAg
ICAgICAocng6OlZlcnRleEFycmF5Vms6OmdldFN0cmVhbWluZ1ZlcnRleEF0dHJpYnNNYXNrIGNv
bnN0KToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9hbmRyb2lkL0hh
cmR3YXJlQnVmZmVySW1hZ2VTaWJsaW5nVmtBbmRyb2lkLmNwcDoKKysgICAgICAgIChyeDo6SGFy
ZHdhcmVCdWZmZXJJbWFnZVNpYmxpbmdWa0FuZHJvaWQ6OmluaXRJbXBsKToKKysgICAgICAgIChy
eDo6SGFyZHdhcmVCdWZmZXJJbWFnZVNpYmxpbmdWa0FuZHJvaWQ6OnJlbGVhc2UpOgorKyAgICAg
ICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL2FuZHJvaWQvSGFyZHdhcmVCdWZmZXJJ
bWFnZVNpYmxpbmdWa0FuZHJvaWQuaDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVy
L3Z1bGthbi9kb2MvRmFzdE9wZW5HTFN0YXRlVHJhbnNpdGlvbnMubWQ6CisrICAgICAgICAqIHNy
Yy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vZG9jL0Zvcm1hdFRhYmxlc0FuZEVtdWxhdGlvbi5t
ZDoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9kb2MvT3BlbkdMTGlu
ZVNlZ21lbnRSYXN0ZXJpemF0aW9uLm1kOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVy
ZXIvdnVsa2FuL2RvYy9TaGFkZXJNb2R1bGVDb21waWxhdGlvbi5tZDoKKysgICAgICAgICogc3Jj
L2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9nZW5fdmtfaW50ZXJuYWxfc2hhZGVycy5weToKKysg
ICAgICAgIChzaGFkZXJfcGF0aCk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci92
dWxrYW4vc2hhZGVycy9nZW4vQ29udmVydEluZGV4LmNvbXAuMDAwMDAwMDAuaW5jOgorKyAgICAg
ICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL3NoYWRlcnMvZ2VuL0NvbnZlcnRJbmRl
eC5jb21wLjAwMDAwMDAxLmluYzoKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1
bGthbi9zaGFkZXJzL2dlbi9Db252ZXJ0VmVydGV4LmNvbXAuMDAwMDAwMDguaW5jOgorKyAgICAg
ICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL3NoYWRlcnMvZ2VuL0NvbnZlcnRWZXJ0
ZXguY29tcC4wMDAwMDAwOS5pbmM6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci92
dWxrYW4vc2hhZGVycy9nZW4vQ29udmVydFZlcnRleC5jb21wLjAwMDAwMDE4LmluYzoKKysgICAg
ICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9zaGFkZXJzL2dlbi9Db252ZXJ0VmVy
dGV4LmNvbXAuMDAwMDAwMTkuaW5jOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIv
dnVsa2FuL3NoYWRlcnMvc3JjL0NvbnZlcnRJbmRleC5jb21wOgorKyAgICAgICAgKiBzcmMvbGli
QU5HTEUvcmVuZGVyZXIvdnVsa2FuL3NoYWRlcnMvc3JjL0NvbnZlcnRJbmRleC5jb21wLmpzb246
CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vc2hhZGVycy9zcmMvQ29u
dmVydFZlcnRleC5jb21wOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2Fu
L3NoYWRlcnMvc3JjL0NvbnZlcnRWZXJ0ZXguY29tcC5qc29uOgorKyAgICAgICAgKiBzcmMvbGli
QU5HTEUvcmVuZGVyZXIvdnVsa2FuL3ZrX2NhY2hlX3V0aWxzLmNwcDoKKysgICAgICAgIChyeDo6
dms6OkdyYXBoaWNzUGlwZWxpbmVEZXNjOjppbml0aWFsaXplUGlwZWxpbmUgY29uc3QpOgorKyAg
ICAgICAgKHJ4Ojp2azo6R3JhcGhpY3NQaXBlbGluZURlc2M6OnVwZGF0ZVZlcnRleElucHV0KToK
KysgICAgICAgIChyeDo6dms6OlBpcGVsaW5lTGF5b3V0RGVzYzo6dXBkYXRlUHVzaENvbnN0YW50
UmFuZ2UpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJQYXNzQ2FjaGU6OmFkZFJlbmRlclBhc3MpOgor
KyAgICAgICAgKHJ4OjpHcmFwaGljc1BpcGVsaW5lQ2FjaGU6OnJlbGVhc2UpOgorKyAgICAgICAg
KHJ4OjpHcmFwaGljc1BpcGVsaW5lQ2FjaGU6Omluc2VydFBpcGVsaW5lKToKKysgICAgICAgICog
c3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi92a19jYWNoZV91dGlscy5oOgorKyAgICAgICAg
KiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL3ZrX2NhcHNfdXRpbHMuY3BwOgorKyAgICAg
ICAgKHJ4OjpSZW5kZXJlclZrOjplbnN1cmVDYXBzSW5pdGlhbGl6ZWQgY29uc3QpOgorKyAgICAg
ICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL3ZrX2Zvcm1hdF9tYXAuanNvbjoKKysg
ICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi92a19mb3JtYXRfdGFibGVfYXV0
b2dlbi5jcHA6CisrICAgICAgICAocng6OnZrOjpGb3JtYXQ6OmluaXRpYWxpemUpOgorKyAgICAg
ICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL3ZrX2Zvcm1hdF91dGlscy5jcHA6Cisr
ICAgICAgICAocng6Ok1hcFN3aXp6bGVTdGF0ZSk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9y
ZW5kZXJlci92dWxrYW4vdmtfaGVscGVycy5jcHA6CisrICAgICAgICAocng6OnZrOjpEeW5hbWlj
QnVmZmVyOjphbGxvY2F0ZSk6CisrICAgICAgICAocng6OnZrOjpEeW5hbWljQnVmZmVyOjpyZWxl
YXNlQnVmZmVyTGlzdFRvUmVuZGVyZXIpOgorKyAgICAgICAgKHJ4Ojp2azo6RHluYW1pY0J1ZmZl
cjo6cmVsZWFzZSk6CisrICAgICAgICAocng6OnZrOjpEeW5hbWljQnVmZmVyOjpyZWxlYXNlSW5G
bGlnaHRCdWZmZXJzKToKKysgICAgICAgIChyeDo6dms6OkRlc2NyaXB0b3JQb29sSGVscGVyOjpy
ZWxlYXNlKToKKysgICAgICAgIChyeDo6dms6OkxpbmVMb29wSGVscGVyOjpMaW5lTG9vcEhlbHBl
cik6CisrICAgICAgICAocng6OnZrOjpMaW5lTG9vcEhlbHBlcjo6c3RyZWFtSW5kaWNlc0luZGly
ZWN0KToKKysgICAgICAgIChyeDo6dms6OkxpbmVMb29wSGVscGVyOjpyZWxlYXNlKToKKysgICAg
ICAgIChyeDo6dms6OkxpbmVMb29wSGVscGVyOjpkZXN0cm95KToKKysgICAgICAgIChyeDo6dms6
OkJ1ZmZlckhlbHBlcjo6aW5pdCk6CisrICAgICAgICAocng6OnZrOjpCdWZmZXJIZWxwZXI6OnJl
bGVhc2UpOgorKyAgICAgICAgKHJ4Ojp2azo6SW1hZ2VIZWxwZXI6OkltYWdlSGVscGVyKToKKysg
ICAgICAgIChyeDo6dms6OkltYWdlSGVscGVyOjppbml0KToKKysgICAgICAgIChyeDo6dms6Oklt
YWdlSGVscGVyOjppbml0RXh0ZXJuYWwpOgorKyAgICAgICAgKHJ4Ojp2azo6SW1hZ2VIZWxwZXI6
OnJlbGVhc2VJbWFnZSk6CisrICAgICAgICAocng6OnZrOjpJbWFnZUhlbHBlcjo6cmVsZWFzZVN0
YWdpbmdCdWZmZXIpOgorKyAgICAgICAgKHJ4Ojp2azo6SW1hZ2VIZWxwZXI6OmRlc3Ryb3kpOgor
KyAgICAgICAgKHJ4Ojp2azo6SW1hZ2VIZWxwZXI6OmdldEJhc2VMZXZlbCk6CisrICAgICAgICAo
cng6OnZrOjpJbWFnZUhlbHBlcjo6c2V0QmFzZUFuZE1heExldmVscyk6CisrICAgICAgICAocng6
OnZrOjpJbWFnZUhlbHBlcjo6Z2VuZXJhdGVNaXBtYXBzV2l0aEJsaXQpOgorKyAgICAgICAgKHJ4
Ojp2azo6SW1hZ2VIZWxwZXI6OnJlbW92ZVN0YWdlZFVwZGF0ZXMpOgorKyAgICAgICAgKHJ4Ojp2
azo6SW1hZ2VIZWxwZXI6OnN0YWdlU3VicmVzb3VyY2VVcGRhdGUpOgorKyAgICAgICAgKHJ4Ojp2
azo6SW1hZ2VIZWxwZXI6OnN0YWdlU3VicmVzb3VyY2VVcGRhdGVBbmRHZXREYXRhKToKKysgICAg
ICAgIChyeDo6dms6OkltYWdlSGVscGVyOjpzdGFnZVN1YnJlc291cmNlVXBkYXRlRnJvbUJ1ZmZl
cik6CisrICAgICAgICAocng6OnZrOjpJbWFnZUhlbHBlcjo6c3RhZ2VTdWJyZXNvdXJjZVVwZGF0
ZUZyb21GcmFtZWJ1ZmZlcik6CisrICAgICAgICAocng6OnZrOjpJbWFnZUhlbHBlcjo6YWxsb2Nh
dGVTdGFnaW5nTWVtb3J5KToKKysgICAgICAgIChyeDo6dms6OkltYWdlSGVscGVyOjpmbHVzaFN0
YWdlZFVwZGF0ZXMpOgorKyAgICAgICAgKHJ4Ojp2azo6SW1hZ2VIZWxwZXI6OmlzVXBkYXRlU3Rh
Z2VkKToKKysgICAgICAgIChyeDo6dms6OkltYWdlSGVscGVyOjpTdWJyZXNvdXJjZVVwZGF0ZTo6
U3VicmVzb3VyY2VVcGRhdGUpOgorKyAgICAgICAgKHJ4Ojp2azo6SW1hZ2VIZWxwZXI6OlN1YnJl
c291cmNlVXBkYXRlOjpyZWxlYXNlKToKKysgICAgICAgIChyeDo6dms6OkZyYW1lYnVmZmVySGVs
cGVyOjpyZWxlYXNlKToKKysgICAgICAgIChyeDo6dms6OlNoYWRlclByb2dyYW1IZWxwZXI6OnJl
bGVhc2UpOgorKyAgICAgICAgKHJ4Ojp2azo6RHluYW1pY0J1ZmZlcjo6cmVsZWFzZUJ1ZmZlckxp
c3RUb0NvbnRleHQpOiBEZWxldGVkLgorKyAgICAgICAgKHJ4Ojp2azo6RHluYW1pY0J1ZmZlcjo6
cmVsZWFzZUJ1ZmZlckxpc3RUb0Rpc3BsYXkpOiBEZWxldGVkLgorKyAgICAgICAgKHJ4Ojp2azo6
SW1hZ2VIZWxwZXI6OmR1bXBSZXNvdXJjZXMpOiBEZWxldGVkLgorKyAgICAgICAgKiBzcmMvbGli
QU5HTEUvcmVuZGVyZXIvdnVsa2FuL3ZrX2hlbHBlcnMuaDoKKysgICAgICAgIChyeDo6dms6OlNo
YWRlclByb2dyYW1IZWxwZXI6OmdldFNoYWRlcik6CisrICAgICAgICAocng6OnZrOjpTaGFkZXJQ
cm9ncmFtSGVscGVyOjpnZXRHcmFwaGljc1BpcGVsaW5lKToKKysgICAgICAgICogc3JjL2xpYkFO
R0xFL3JlbmRlcmVyL3Z1bGthbi92a19pbnRlcm5hbF9zaGFkZXJzX2F1dG9nZW4uY3BwOgorKyAg
ICAgICAgKHJ4Ojp2azo6U2hhZGVyTGlicmFyeTo6ZGVzdHJveSk6CisrICAgICAgICAocng6OnZr
OjpTaGFkZXJMaWJyYXJ5OjpnZXRDb252ZXJ0SW5kZXhJbmRpcmVjdExpbmVMb29wX2NvbXApOgor
KyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL3ZrX2ludGVybmFsX3NoYWRl
cnNfYXV0b2dlbi5nbmk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4v
dmtfaW50ZXJuYWxfc2hhZGVyc19hdXRvZ2VuLmg6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9y
ZW5kZXJlci92dWxrYW4vdmtfdXRpbHMuY3BwOgorKyAgICAgICAgKHJ4OjpIYXNLaHJvbm9zVmFs
aWRhdGlvbkxheWVyKToKKysgICAgICAgIChyeDo6SGFzU3RhbmRhcmRWYWxpZGF0aW9uTGF5ZXIp
OgorKyAgICAgICAgKHJ4OjpHZXRBdmFpbGFibGVWYWxpZGF0aW9uTGF5ZXJzKToKKysgICAgICAg
IChyeDo6dms6OlN0YWdpbmdCdWZmZXI6OmluaXQpOgorKyAgICAgICAgKHJ4Ojp2azo6U3RhZ2lu
Z0J1ZmZlcjo6cmVsZWFzZSk6CisrICAgICAgICAocng6OnZrOjpHYXJiYWdlT2JqZWN0OjpHYXJi
YWdlT2JqZWN0KToKKysgICAgICAgIChyeDo6dms6OkdhcmJhZ2VPYmplY3Q6Om9wZXJhdG9yPSk6
CisrICAgICAgICAocng6OnZrOjpHYXJiYWdlT2JqZWN0OjpkZXN0cm95KToKKysgICAgICAgIChy
eDo6Z2xfdms6OkdldFNhbXBsZXJNaXBtYXBNb2RlKToKKysgICAgICAgIChyeDo6dms6OlN0YWdp
bmdCdWZmZXI6OmR1bXBSZXNvdXJjZXMpOiBEZWxldGVkLgorKyAgICAgICAgKHJ4Ojp2azo6R2Fy
YmFnZU9iamVjdEJhc2U6OkdhcmJhZ2VPYmplY3RCYXNlKTogRGVsZXRlZC4KKysgICAgICAgIChy
eDo6dms6OkdhcmJhZ2VPYmplY3RCYXNlOjpkZXN0cm95KTogRGVsZXRlZC4KKysgICAgICAgIChy
eDo6dms6OkdhcmJhZ2VPYmplY3Q6OmRlc3Ryb3lJZkNvbXBsZXRlKTogRGVsZXRlZC4KKysgICAg
ICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi92a191dGlscy5oOgorKyAgICAgICAg
KHJ4Ojp2azo6R2FyYmFnZU9iamVjdDo6dmFsaWQgY29uc3QpOgorKyAgICAgICAgKHJ4Ojp2azo6
R2FyYmFnZU9iamVjdDo6R2V0KToKKysgICAgICAgIChyeDo6dms6OkdldEdhcmJhZ2UpOgorKyAg
ICAgICAgKHJ4Ojp2azo6R2FyYmFnZU9iamVjdEJhc2U6OkdhcmJhZ2VPYmplY3RCYXNlKTogRGVs
ZXRlZC4KKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi92a193cmFwcGVy
Lmg6CisrICAgICAgICAocng6OnZrOjpXcmFwcGVkT2JqZWN0OjpnZXRIYW5kbGUgY29uc3QpOgor
KyAgICAgICAgKHJ4Ojp2azo6V3JhcHBlZE9iamVjdDo6dmFsaWQgY29uc3QpOgorKyAgICAgICAg
KHJ4Ojp2azo6V3JhcHBlZE9iamVjdDo6cHRyIGNvbnN0KToKKysgICAgICAgIChyeDo6dms6Oldy
YXBwZWRPYmplY3Q6OnJlbGVhc2UpOgorKyAgICAgICAgKHJ4Ojp2azo6V3JhcHBlZE9iamVjdDo6
V3JhcHBlZE9iamVjdCk6CisrICAgICAgICAocng6OnZrOjpXcmFwcGVkT2JqZWN0Ojp+V3JhcHBl
ZE9iamVjdCk6CisrICAgICAgICAocng6OnZrOjpXcmFwcGVkT2JqZWN0OjpvcGVyYXRvcj0pOgor
KyAgICAgICAgKHJ4Ojp2azo6cHJpdjo6Q29tbWFuZEJ1ZmZlcjo6U3VwcG9ydHNRdWVyaWVzKToK
KysgICAgICAgIChyeDo6dms6OnByaXY6OkNvbW1hbmRCdWZmZXI6OmdldE1lbW9yeVVzYWdlU3Rh
dHMgY29uc3QpOgorKyAgICAgICAgKHJ4Ojp2azo6cHJpdjo6Q29tbWFuZEJ1ZmZlcjo6ZHJhd0lu
ZGV4ZWRJbmRpcmVjdCk6CisrICAgICAgICAocng6OnZrOjpwcml2OjpDb21tYW5kQnVmZmVyOjpk
cmF3SW5kaXJlY3QpOgorKyAgICAgICAgKHJ4Ojp2azo6V3JhcHBlZE9iamVjdDo6ZHVtcFJlc291
cmNlcyk6IERlbGV0ZWQuCisrICAgICAgICAocng6OnZrOjpwcml2OjpDb21tYW5kQnVmZmVyOjpn
ZXRNZW1vcnlVc2FnZVN0YXRzKTogRGVsZXRlZC4KKysgICAgICAgICogc3JjL2xpYkFOR0xFL3Zh
bGlkYXRpb25FR0wuY3BwOgorKyAgICAgICAgKGVnbDo6VmFsaWRhdGVDcmVhdGVDb250ZXh0KToK
KysgICAgICAgIChlZ2w6OlZhbGlkYXRlTWFrZUN1cnJlbnQpOgorKyAgICAgICAgKGVnbDo6VmFs
aWRhdGVDb21wYXRpYmxlU3VyZmFjZSk6CisrICAgICAgICAoZWdsOjpWYWxpZGF0ZVN0cmVhbUNv
bnN1bWVyR0xUZXh0dXJlRXh0ZXJuYWxLSFIpOgorKyAgICAgICAgKGVnbDo6VmFsaWRhdGVTdHJl
YW1Db25zdW1lckdMVGV4dHVyZUV4dGVybmFsQXR0cmlic05WKToKKysgICAgICAgIChlZ2w6OlZh
bGlkYXRlUXVlcnlTdHJpbmdpQU5HTEUpOgorKyAgICAgICAgKGVnbDo6VmFsaWRhdGVDb21wYXRp
YmxlQ29uZmlncyk6IERlbGV0ZWQuCisrICAgICAgICAqIHNyYy9saWJBTkdMRS92YWxpZGF0aW9u
RUdMLmg6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS92YWxpZGF0aW9uRVMuY3BwOgorKyAgICAg
ICAgKGdsOjpWYWxpZGF0ZVJlbmRlcmJ1ZmZlclN0b3JhZ2VQYXJhbWV0ZXJzQmFzZSk6CisrICAg
ICAgICAoZ2w6OlZhbGlkYXRlVGV4U3RvcmFnZU11bHRpc2FtcGxlKToKKysgICAgICAgICogc3Jj
L2xpYkFOR0xFL3ZhbGlkYXRpb25FUy5oOgorKyAgICAgICAgKGdsOjpWYWxpZGF0ZVZlcnRleEZv
cm1hdCk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS92YWxpZGF0aW9uRVMyLmNwcDoKKysgICAg
ICAgIChnbDo6VmFsaWRhdGVFUzJUZXhTdG9yYWdlUGFyYW1ldGVycyk6CisrICAgICAgICAqIHNy
Yy9saWJBTkdMRS92YWxpZGF0aW9uRVMzLmNwcDoKKysgICAgICAgIChnbDo6VmFsaWRhdGVFUzNU
ZXhTdG9yYWdlUGFyYW1ldGVyc0Jhc2UpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvdmFsaWRh
dGlvbkVTMzEuY3BwOgorKyAgICAgICAgKGdsOjplcnI6OlZhbGlkYXRlUHJvZ3JhbVJlc291cmNl
SW5kZXgpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyLmduaToKKysgICAgICAgICogc3JjL2xp
YkdMRVN2Mi9lbnRyeV9wb2ludHNfZWdsX2V4dC5jcHA6CisrICAgICAgICAqIHNyYy90ZXN0cy9C
VUlMRC5nbjoKKysgICAgICAgICogc3JjL3Rlc3RzL2FuZ2xlX2RlcXBfdGVzdHNfbWFpbi5jcHA6
CisrICAgICAgICAobWFpbik6CisrICAgICAgICAqIHNyYy90ZXN0cy9hbmdsZV9lbmQyZW5kX3Rl
c3RzLmduaToKKysgICAgICAgICogc3JjL3Rlc3RzL2NvbXBpbGVyX3Rlc3RzL0RlYnVnU2hhZGVy
UHJlY2lzaW9uX3Rlc3QuY3BwOgorKyAgICAgICAgKFRFU1RfRik6CisrICAgICAgICAqIHNyYy90
ZXN0cy9jb21waWxlcl90ZXN0cy9JbW11dGFibGVTdHJpbmdfdGVzdF9FU1NMX2F1dG9nZW4uY3Bw
OgorKyAgICAgICAgKHNoOjpURVNUKToKKysgICAgICAgICogc3JjL3Rlc3RzL2NvbXBpbGVyX3Rl
c3RzL0ltbXV0YWJsZVN0cmluZ190ZXN0X2F1dG9nZW4uY3BwOgorKyAgICAgICAgKHNoOjpURVNU
KToKKysgICAgICAgICogc3JjL3Rlc3RzL2NvbXBpbGVyX3Rlc3RzL1F1YWxpZmljYXRpb25PcmRl
cl90ZXN0LmNwcDoKKysgICAgICAgIChURVNUX0YpOgorKyAgICAgICAgKiBzcmMvdGVzdHMvZGVx
cF9zdXBwb3J0L2FuZ2xlX2RlcXBfZ3Rlc3QuY3BwOgorKyAgICAgICAgKGFuZ2xlOjpJbml0VGVz
dEhhcm5lc3MpOgorKyAgICAgICAgKiBzcmMvdGVzdHMvZGVxcF9zdXBwb3J0L2FuZ2xlX2RlcXBf
bGlidGVzdGVyX21haW4uY3BwOgorKyAgICAgICAgKiBzcmMvdGVzdHMvZGVxcF9zdXBwb3J0L2Rl
cXBfZWdsX1Rlc3RFeHBlY3RhdGlvbnM6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy90ZXN0cy9k
ZXFwX3N1cHBvcnQvZGVxcF9nbGVzMl9UZXN0RXhwZWN0YXRpb25zOiBSZW1vdmVkLgorKyAgICAg
ICAgKiBzcmMvdGVzdHMvZGVxcF9zdXBwb3J0L2RlcXBfZ2xlczMxX1Rlc3RFeHBlY3RhdGlvbnM6
IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy90ZXN0cy9kZXFwX3N1cHBvcnQvZGVxcF9nbGVzM19U
ZXN0RXhwZWN0YXRpb25zOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvdGVzdHMvZGVxcF9zdXBw
b3J0L2RlcXBfa2hyX2dsZXMyX1Rlc3RFeHBlY3RhdGlvbnM6IFJlbW92ZWQuCisrICAgICAgICAq
IHNyYy90ZXN0cy9kZXFwX3N1cHBvcnQvZGVxcF9raHJfZ2xlczMxX1Rlc3RFeHBlY3RhdGlvbnM6
IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy90ZXN0cy9kZXFwX3N1cHBvcnQvZGVxcF9raHJfZ2xl
czNfVGVzdEV4cGVjdGF0aW9uczogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL3Rlc3RzL2RlcXBf
c3VwcG9ydC90Y3VBTkdMRU5hdGl2ZURpc3BsYXlGYWN0b3J5LmNwcDoKKysgICAgICAgICogc3Jj
L3Rlc3RzL2RlcXBfc3VwcG9ydC90Y3VBTkdMRVBsYXRmb3JtLmNwcDoKKysgICAgICAgICh0Y3U6
OkFOR0xFUGxhdGZvcm06OkFOR0xFUGxhdGZvcm0pOgorKyAgICAgICAgKiBzcmMvdGVzdHMvZGVx
cF9zdXBwb3J0L3RlczMxQ29udGV4dF9vdmVycmlkZS5jcHA6CisrICAgICAgICAoZGVxcDo6Z2xl
czMxOjpDb250ZXh0OjpDb250ZXh0KToKKysgICAgICAgIChkZXFwOjpnbGVzMzE6OkNvbnRleHQ6
On5Db250ZXh0KToKKysgICAgICAgIChkZXFwOjpnbGVzMzE6OkNvbnRleHQ6OmNyZWF0ZVJlbmRl
ckNvbnRleHQpOgorKyAgICAgICAgKGRlcXA6OmdsZXMzMTo6Q29udGV4dDo6ZGVzdHJveVJlbmRl
ckNvbnRleHQpOgorKyAgICAgICAgKGRlcXA6OmdsZXMzMTo6Q29udGV4dDo6Z2V0UmVuZGVyVGFy
Z2V0IGNvbnN0KToKKysgICAgICAgICogc3JjL3Rlc3RzL2VnbF90ZXN0cy9FR0xEZXZpY2VDR0xU
ZXN0LmNwcDogQWRkZWQuCisrICAgICAgICAoRUdMRGV2aWNlQ0dMUXVlcnlUZXN0OjpFR0xEZXZp
Y2VDR0xRdWVyeVRlc3QpOgorKyAgICAgICAgKFRFU1RfUCk6CisrICAgICAgICAqIHNyYy90ZXN0
cy9lZ2xfdGVzdHMvRUdMRGlyZWN0Q29tcG9zaXRpb25UZXN0LmNwcDoKKysgICAgICAgICogc3Jj
L3Rlc3RzL2VnbF90ZXN0cy9FR0xGZWF0dXJlQ29udHJvbFRlc3QuY3BwOgorKyAgICAgICAgKFRF
U1RfUCk6CisrICAgICAgICAqIHNyYy90ZXN0cy9lZ2xfdGVzdHMvRUdMTm9Db25maWdDb250ZXh0
VGVzdC5jcHA6IEFkZGVkLgorKyAgICAgICAgKEVHTE5vQ29uZmlnQ29udGV4dFRlc3Q6OkVHTE5v
Q29uZmlnQ29udGV4dFRlc3QpOgorKyAgICAgICAgKFRFU1RfUCk6CisrICAgICAgICAqIHNyYy90
ZXN0cy9nbF90ZXN0cy9CbGVuZEZ1bmNFeHRlbmRlZFRlc3QuY3BwOgorKyAgICAgICAgKGFuZ2xl
OjpFWFRCbGVuZEZ1bmNFeHRlbmRlZERyYXdUZXN0RVMzOjpMaW5rUHJvZ3JhbSk6CisrICAgICAg
ICAqIHNyYy90ZXN0cy9nbF90ZXN0cy9Db21wdXRlU2hhZGVyVGVzdC5jcHA6CisrICAgICAgICAq
IHNyYy90ZXN0cy9nbF90ZXN0cy9Db3B5VGV4SW1hZ2VUZXN0LmNwcDoKKysgICAgICAgIChhbmds
ZTo6VEVTVF9QKToKKysgICAgICAgICogc3JjL3Rlc3RzL2dsX3Rlc3RzL0NvcHlUZXh0dXJlVGVz
dC5jcHA6CisrICAgICAgICAoYW5nbGU6OkNvcHlUZXh0dXJlVmFyaWF0aW9uc1Rlc3Q6OmluaXRp
YWxpemVTb3VyY2VUZXh0dXJlKToKKysgICAgICAgIChhbmdsZTo6Q29weVRleHR1cmVWYXJpYXRp
b25zVGVzdDo6dGVzdENvcHlUZXh0dXJlKToKKysgICAgICAgIChhbmdsZTo6Q29weVRleHR1cmVW
YXJpYXRpb25zVGVzdDo6dGVzdENvcHlTdWJUZXh0dXJlKToKKysgICAgICAgIChhbmdsZTo6VEVT
VF9QKToKKysgICAgICAgICogc3JjL3Rlc3RzL2dsX3Rlc3RzL0RyYXdCYXNlVmVydGV4QmFzZUlu
c3RhbmNlVGVzdC5jcHA6CisrICAgICAgICAoYW5nbGU6OkRyYXdCYXNlVmVydGV4QmFzZUluc3Rh
bmNlVGVzdDo6RHJhd0Jhc2VWZXJ0ZXhCYXNlSW5zdGFuY2VUZXN0KToKKysgICAgICAgIChhbmds
ZTo6RHJhd0Jhc2VWZXJ0ZXhCYXNlSW5zdGFuY2VUZXN0Ojp2ZXJ0ZXhTaGFkZXJTb3VyY2UzMDAp
OgorKyAgICAgICAgKiBzcmMvdGVzdHMvZ2xfdGVzdHMvRnJhbWVidWZmZXJUZXN0LmNwcDoKKysg
ICAgICAgIChURVNUX1ApOgorKyAgICAgICAgKiBzcmMvdGVzdHMvZ2xfdGVzdHMvR0xTTFRlc3Qu
Y3BwOgorKyAgICAgICAgKiBzcmMvdGVzdHMvZ2xfdGVzdHMvSW5kZXhCdWZmZXJPZmZzZXRUZXN0
LmNwcDoKKysgICAgICAgICogc3JjL3Rlc3RzL2dsX3Rlc3RzL0luc3RhbmNpbmdUZXN0LmNwcDoK
KysgICAgICAgICogc3JjL3Rlc3RzL2dsX3Rlc3RzL0xpbmVMb29wVGVzdC5jcHA6CisrICAgICAg
ICAoTGluZUxvb3BUZXN0OjpjaGVja1BpeGVscyk6CisrICAgICAgICAoTGluZUxvb3BUZXN0Ojpy
dW5UZXN0KToKKysgICAgICAgIChMaW5lTG9vcEluZGlyZWN0VGVzdDo6cnVuVGVzdCk6CisrICAg
ICAgICAoVEVTVF9QKToKKysgICAgICAgICogc3JjL3Rlc3RzL2dsX3Rlc3RzL0xpbmtBbmRSZWxp
bmtUZXN0LmNwcDoKKysgICAgICAgIChhbmdsZTo6VEVTVF9QKToKKysgICAgICAgICogc3JjL3Rl
c3RzL2dsX3Rlc3RzL01pcG1hcFRlc3QuY3BwOgorKyAgICAgICAgKiBzcmMvdGVzdHMvZ2xfdGVz
dHMvT2NjbHVzaW9uUXVlcmllc1Rlc3QuY3BwOgorKyAgICAgICAgKiBzcmMvdGVzdHMvZ2xfdGVz
dHMvUGFyYWxsZWxTaGFkZXJDb21waWxlVGVzdC5jcHA6CisrICAgICAgICAoYW5nbGU6OlBhcmFs
bGVsU2hhZGVyQ29tcGlsZVRlc3Q6OlRhc2tSdW5uZXI6OnJ1bik6CisrICAgICAgICAqIHNyYy90
ZXN0cy9nbF90ZXN0cy9Qcm9ncmFtSW50ZXJmYWNlVGVzdC5jcHA6CisrICAgICAgICAqIHNyYy90
ZXN0cy9nbF90ZXN0cy9TaW1wbGVPcGVyYXRpb25UZXN0LmNwcDoKKysgICAgICAgICogc3JjL3Rl
c3RzL2dsX3Rlc3RzL1N0YXRlQ2hhbmdlVGVzdC5jcHA6CisrICAgICAgICAqIHNyYy90ZXN0cy9n
bF90ZXN0cy9UZXh0dXJlVGVzdC5jcHA6CisrICAgICAgICAoYW5nbGU6OlNsaWNlRm9ybWF0Q29s
b3IpOgorKyAgICAgICAgKGFuZ2xlOjpTbGljZUZvcm1hdENvbG9yMzJGKToKKysgICAgICAgICog
c3JjL3Rlc3RzL2dsX3Rlc3RzL1RpbWVyUXVlcmllc1Rlc3QuY3BwOgorKyAgICAgICAgKiBzcmMv
dGVzdHMvZ2xfdGVzdHMvVW5pZm9ybUJ1ZmZlclRlc3QuY3BwOgorKyAgICAgICAgKiBzcmMvdGVz
dHMvZ2xfdGVzdHMvVmVydGV4QXR0cmlidXRlVGVzdC5jcHA6CisrICAgICAgICAoYW5nbGU6OlR5
cGVTdHJpZGUpOgorKyAgICAgICAgKGFuZ2xlOjpOb3JtYWxpemUxMCk6CisrICAgICAgICAoYW5n
bGU6Ok5vcm1hbGl6ZTIpOgorKyAgICAgICAgKGFuZ2xlOjpQYWNrMTAxMDEwMik6CisrICAgICAg
ICAoYW5nbGU6OlZlcnRleEF0dHJpYnV0ZVRlc3Q6OmNoZWNrUGl4ZWxzKToKKysgICAgICAgIChh
bmdsZTo6VmVydGV4QXR0cmlidXRlVGVzdDo6Y2hlY2tSR0JQaXhlbHMpOgorKyAgICAgICAgKGFu
Z2xlOjpWZXJ0ZXhBdHRyaWJ1dGVUZXN0OjpydW5UZXN0KToKKysgICAgICAgIChhbmdsZTo6VEVT
VF9QKToKKysgICAgICAgICogc3JjL3Rlc3RzL2dsZXMxX2NvbmZvcm1hbmNlX3Rlc3RzL0NvbmZv
cm1hbmNlVGVzdHMuY3BwOgorKyAgICAgICAgKGFuZ2xlOjpURVNUX1ApOgorKyAgICAgICAgKiBz
cmMvdGVzdHMvcGVyZl90ZXN0cy9BTkdMRVBlcmZUZXN0LmNwcDoKKysgICAgICAgICogc3JjL3Rl
c3RzL3BlcmZfdGVzdHMvRHJhd0NhbGxQZXJmLmNwcDoKKysgICAgICAgIChhbmdsZTo6RHJhd0Fy
cmF5c1BlcmZQYXJhbXM6OkRyYXdBcnJheXNQZXJmUGFyYW1zKTogRGVsZXRlZC4KKysgICAgICAg
IChhbmdsZTo6RHJhd0FycmF5c1BlcmZQYXJhbXM6OnN0b3J5IGNvbnN0KTogRGVsZXRlZC4KKysg
ICAgICAgIChhbmdsZTo6b3BlcmF0b3I8PCk6IERlbGV0ZWQuCisrICAgICAgICAoYW5nbGU6OkNy
ZWF0ZVNpbXBsZVRleHR1cmUyRCk6IERlbGV0ZWQuCisrICAgICAgICAoYW5nbGU6OkRyYXdDYWxs
UGVyZkJlbmNobWFyazo6RHJhd0NhbGxQZXJmQmVuY2htYXJrKTogRGVsZXRlZC4KKysgICAgICAg
IChhbmdsZTo6RHJhd0NhbGxQZXJmQmVuY2htYXJrOjppbml0aWFsaXplQmVuY2htYXJrKTogRGVs
ZXRlZC4KKysgICAgICAgICgpOiBEZWxldGVkLgorKyAgICAgICAgKiBzcmMvdGVzdHMvcGVyZl90
ZXN0cy9FR0xNYWtlQ3VycmVudFBlcmYuY3BwOgorKyAgICAgICAgKiBzcmMvdGVzdHMvcGVyZl90
ZXN0cy9MaW5rUHJvZ3JhbVBlcmZUZXN0LmNwcDoKKysgICAgICAgIChhbmdsZTo6VEVTVF9QKToK
KysgICAgICAgICogc3JjL3Rlc3RzL3BlcmZfdGVzdHMvTXVsdGl2aWV3UGVyZi5jcHA6CisrICAg
ICAgICAoYW5nbGU6Ok11bHRpdmlld0NQVUJvdW5kQmVuY2htYXJrOjppbml0aWFsaXplQmVuY2ht
YXJrKToKKysgICAgICAgIChhbmdsZTo6TXVsdGl2aWV3R1BVQm91bmRCZW5jaG1hcms6OmluaXRp
YWxpemVCZW5jaG1hcmspOgorKyAgICAgICAgKGFuZ2xlOjpURVNUX1ApOgorKyAgICAgICAgKiBz
cmMvdGVzdHMvcGVyZl90ZXN0cy9Vbmlmb3Jtc1BlcmYuY3BwOgorKyAgICAgICAgKFRFU1RfUCk6
CisrICAgICAgICAqIHNyYy90ZXN0cy9wZXJmX3Rlc3RzL1Z1bGthblBpcGVsaW5lQ2FjaGVQZXJm
LmNwcDoKKysgICAgICAgIChyeDo6VnVsa2FuUGlwZWxpbmVDYWNoZVBlcmZUZXN0OjpzdGVwKToK
KysgICAgICAgICogc3JjL3Rlc3RzL3BlcmZfdGVzdHMvZ2xtYXJrMkJlbmNobWFyay5jcHA6Cisr
ICAgICAgICAqIHNyYy90ZXN0cy90ZXN0X2V4cGVjdGF0aW9ucy9HUFVUZXN0Q29uZmlnLmNwcDoK
KysgICAgICAgIChhbmdsZTo6R1BVVGVzdENvbmZpZzo6R1BVVGVzdENvbmZpZyk6CisrICAgICAg
ICAqIHNyYy90ZXN0cy90ZXN0X2V4cGVjdGF0aW9ucy9HUFVUZXN0Q29uZmlnLmg6CisrICAgICAg
ICAqIHNyYy90ZXN0cy90ZXN0X2V4cGVjdGF0aW9ucy9HUFVUZXN0RXhwZWN0YXRpb25zUGFyc2Vy
LmNwcDoKKysgICAgICAgIChhbmdsZTo6R1BVVGVzdEV4cGVjdGF0aW9uc1BhcnNlcjo6cGFyc2VM
aW5lKToKKysgICAgICAgICogc3JjL3Rlc3RzL3Rlc3RfdXRpbHMvQU5HTEVUZXN0LmNwcDoKKysg
ICAgICAgICogc3JjL3Rlc3RzL3Rlc3RfdXRpbHMvQU5HTEVUZXN0Lmg6CisrICAgICAgICAqIHNy
Yy90ZXN0cy90ZXN0X3V0aWxzL2FuZ2xlX3Rlc3RfY29uZmlncy5jcHA6CisrICAgICAgICAoYW5n
bGU6OlBsYXRmb3JtUGFyYW1ldGVyczo6aW5pdERlZmF1bHRQYXJhbWV0ZXJzKToKKysgICAgICAg
IChhbmdsZTo6b3BlcmF0b3I8PCk6CisrICAgICAgICAoYW5nbGU6OmVnbF9wbGF0Zm9ybTo6VlVM
S0FOX1NXSUZUU0hBREVSKToKKysgICAgICAgIChhbmdsZTo6RVMyX1ZVTEtBTl9TV0lGVFNIQURF
Uik6CisrICAgICAgICAqIHNyYy90ZXN0cy90ZXN0X3V0aWxzL2FuZ2xlX3Rlc3RfY29uZmlncy5o
OgorKyAgICAgICAgKiBzcmMvdGVzdHMvdGVzdF91dGlscy9hbmdsZV90ZXN0X2luc3RhbnRpYXRl
LmNwcDoKKysgICAgICAgIChhbmdsZTo6SXNXaW5kb3dzNyk6CisrICAgICAgICAqIHNyYy90ZXN0
cy90ZXN0X3V0aWxzL2FuZ2xlX3Rlc3RfaW5zdGFudGlhdGUuaDoKKysgICAgICAgICogc3JjL3Ro
aXJkX3BhcnR5L2NvbXBpbGVyL1JFQURNRS5jaHJvbWl1bToKKysgICAgICAgICogdGhpcmRfcGFy
dHkvdnVsa2FuLWhlYWRlcnMvQlVJTEQuZ246IFJlbW92ZWQuCisrICAgICAgICAqIHRoaXJkX3Bh
cnR5L3Z1bGthbi1oZWFkZXJzL3Z1bGthbl9oZWFkZXJzX3NjcmlwdF9kZXBzLmduaTogUmVtb3Zl
ZC4KKysgICAgICAgICogdGhpcmRfcGFydHkvdnVsa2FuLWxvYWRlci9CVUlMRC5nbjoKKysgICAg
ICAgICogdGhpcmRfcGFydHkvdnVsa2FuLXRvb2xzL0JVSUxELmduOiBSZW1vdmVkLgorKyAgICAg
ICAgKiB0aGlyZF9wYXJ0eS92dWxrYW4tdmFsaWRhdGlvbi1sYXllcnMvQlVJTEQuZ246IFJlbW92
ZWQuCisrICAgICAgICAqIHRoaXJkX3BhcnR5L3Z1bGthbi12YWxpZGF0aW9uLWxheWVycy9kdW1t
eV9zcGlydl90b29sc19jb21taXRfaWQuaDogUmVtb3ZlZC4KKysgICAgICAgICogdXRpbC9FR0xX
aW5kb3cuY3BwOgorKyAgICAgICAgKiB1dGlsL2Z1Y2hzaWEvU2NlbmljV2luZG93LmNwcDoKKysg
ICAgICAgIChTY2VuaWNXaW5kb3c6OnJlc2V0TmF0aXZlV2luZG93KToKKysgICAgICAgICogdXRp
bC9wb3NpeC9jcmFzaF9oYW5kbGVyX3Bvc2l4LmNwcDogUmVuYW1lZCBmcm9tIFNvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3V0aWwvcG9zaXgvUG9zaXhfY3Jhc2hfaGFuZGxlci5jcHAuCisrICAgICAg
ICAqIHV0aWwvcG9zaXgvdGVzdF91dGlsc19wb3NpeC5jcHA6IFJlbmFtZWQgZnJvbSBTb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS91dGlsL3Bvc2l4L1Bvc2l4X3N5c3RlbV91dGlscy5jcHAuCisrICAg
ICAgICAqIHV0aWwvdGVzdF91dGlscy5oOiBSZW5hbWVkIGZyb20gU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvdXRpbC9zeXN0ZW1fdXRpbHMuaC4KKysgICAgICAgICogdXRpbC91dGlsLmduaToKKysg
ICAgICAgICogdXRpbC91dGlsX2dsLmg6CisrICAgICAgICAqIHV0aWwvd2luZG93cy9XR0xXaW5k
b3cuY3BwOgorKyAgICAgICAgKiB1dGlsL3dpbmRvd3MvdGVzdF91dGlsc193aW4uY3BwOiBSZW5h
bWVkIGZyb20gU291cmNlL1RoaXJkUGFydHkvQU5HTEUvdXRpbC93aW5kb3dzL1dpbmRvd3Nfc3lz
dGVtX3V0aWxzLmNwcC4KKysgICAgICAgIChhbmdsZTo6UHJpbnRTdGFja0JhY2t0cmFjZSk6Cisr
ICAgICAgICAqIHV0aWwvd2luZG93cy93aW4zMi90ZXN0X3V0aWxzX3dpbjMyLmNwcDogUmVuYW1l
ZCBmcm9tIFNvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3V0aWwvd2luZG93cy93aW4zMi9XaW4zMl9z
eXN0ZW1fdXRpbHMuY3BwLgorKyAgICAgICAgKiB1dGlsL3gxMS9YMTFXaW5kb3cuY3BwOgorKwor
KzIwMTktMTAtMDEgIEZ1amlpIEhpcm9ub3JpICA8SGlyb25vcmkuRnVqaWlAc29ueS5jb20+Cisr
CisrICAgICAgICBbV2luQ2Fpcm9dW0NsYW5nXVtBTkdMRV0gZ2xvYmFsX3N0YXRlLmNwcCgzOSwx
KTogZXJyb3I6IHN0YXRpY19hc3NlcnQgZmFpbGVkIGR1ZSB0byByZXF1aXJlbWVudCAnc3RkOjpp
c190cml2aWFsbHlfY29uc3RydWN0aWJsZTxzdGQ6OmF0b21pYzxzdGQ6Om11dGV4ICo+Pjo6dmFs
dWUnICJnbG9iYWwgbXV0ZXggaXMgbm90IHRyaXZpYWxseSBjb25zdHJ1Y3RpYmxlIgorKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwMTc1MQorKworKyAg
ICAgICAgUmV2aWV3ZWQgYnkgQWxleCBDaHJpc3RlbnNlbi4KKysKKysgICAgICAgIENsYW5nLWNs
IGNvdWxkbid0IGNvbXBpbGUgdGhlIGxhdGVzdCBBTkdMRSB3aXRoIE1TIFNUTCBvd2luZyB0byBh
CisrICAgICAgICBzdGF0aWNfYXNzZXJ0IGZhaWx1cmUuCisrCisrICAgICAgICBGaXggaXQgYnkg
Y2hlcnJpLXBpY2tpbmcgdGhlIHVwc3RyZWFtIGZpeC4KKysgICAgICAgIDxodHRwczovL2Nocm9t
aXVtLmdvb2dsZXNvdXJjZS5jb20vYW5nbGUvYW5nbGUvKy83NTU0MTdkZDc5MDcxZDYxNDljODE0
MThlMTQwNGIwYzYxZDE5NjcyPgorKworKyAgICAgICAgKiBBVVRIT1JTOgorKyAgICAgICAgKiBz
cmMvY29tbW9uL2FuZ2xldXRpbHMuaDoKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9nbG9iYWxf
c3RhdGUuY3BwOgorKworKzIwMTktMDktMjQgIEFkcmlhbiBQZXJleiBkZSBDYXN0cm8gIDxhcGVy
ZXpAaWdhbGlhLmNvbT4KKysKKysgICAgICAgIFtHVEtdIEFOR0xFJ3MgZWdscGxhdGZvcm0uaCBp
cyBidWlsZCBicm9rZW4gd2l0aCAtREVOQUJMRV9YMTFfUExBVEZPUk09T0ZGCisrICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk4NjIxCisrCisrICAgICAg
ICBSZXZpZXdlZCBieSBDYXJsb3MgR2FyY2lhIENhbXBvcy4KKysKKysgICAgICAgICogUGxhdGZv
cm1HVEsuY21ha2U6IERlZmluZSBXTF9FR0xfUExBVEZPUk0gdG8gcHJlZmVyIFdheWxhbmQgdHlw
ZQorKyAgICAgICAgZGVmaW5pdGlvbnMgd2l0aCBFTkFCTEVfV0FZTEFORF9UQVJHRVQ9T04gYW5k
IEVOQUJMRV9YMTFfVEFSR0VUPU9GRgorKyAgICAgICAgdG8gYXZvaWQgQU5HTEUncyBlZ2xwbGF0
Zm9ybS5oIGZyb20gdHJ5aW5nIHRvIGluY2x1ZGUgdGhlIFgxMSBoZWFkZXJzLgorKworKzIwMTkt
MDktMTYgIEphbWVzIERhcnBpbmlhbiAgPGpkYXJwaW5pYW5AY2hyb21pdW0ub3JnPgorKworKyAg
ICAgICAgUmVtb3ZlIGNvbW1pdC5oIGNvcHlpbmcgYnVpbGQgc3RlcHMKKysgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDE3ODUKKysKKysgICAgICAgIFJl
dmlld2VkIGJ5IEFsZXggQ2hyaXN0ZW5zZW4uCisrCisrICAgICAgICAqIEFOR0xFLnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2o6IFJlbW92ZSBsZWZ0b3ZlciBidWlsZCBzdGVwCisrICAgICAgICAq
IENNYWtlTGlzdHMudHh0OiBSZW1vdmUgY29tbWl0LmggY29weWluZworKyAgICAgICAgKiBzcmMv
Y29tbW9uL3ZlcnNpb24uaDogUmVzdG9yZSB0byB1cHN0cmVhbSB2ZXJzaW9uCisrICAgICAgICAq
IHNyYy9pZC9jb21taXQuaDogQWRkZWQuCisrICAgICAgICAqIHVwZGF0ZS1hbmdsZS5zaDogQ29w
eSBjb21taXQuaCB0byBpZC9jb21taXQuaCBhdCBpbXBvcnQgdGltZQorKworKzIwMTktMDktMTIg
IEphbWVzIERhcnBpbmlhbiAgPGpkYXJwaW5pYW5AY2hyb21pdW0ub3JnPgorKworKyAgICAgICAg
VXBkYXRlIEFOR0xFCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjAxMTU2CisrCisrICAgICAgICBSZXZpZXdlZCBieSBBbGV4IENocmlzdGVuc2VuLgor
KworKyAgICAgICAgVXBkYXRlIHRvIDIwMTktOS05LCByZXZpc2lvbiA3OWFkMDQxMTkxMWIyZmM4
NDgzNGMzNzA1ZjU1NzA3YmU5ZTRiNDk4CisrICAgICAgICBJIG1lcmdlZCBhIGJ1bmNoIG9mIGNo
YW5nZXMgdG8gdXBzdHJlYW0gQU5HTEUsIHRvIG1pbmltaXplIHRoZSBjaGFuZ2VzCisrICAgICAg
ICBuZWNlc3Nhcnkgd2hlbiB1cGRhdGluZyBBTkdMRSBpbiBXZWJLaXQuCisrCisrICAgICAgICAq
IEFOR0xFLnBsaXN0OiBVcGRhdGUgY29tbWl0IGhhc2hlcworKyAgICAgICAgKiBBTkdMRS50eHQ6
IFJlbW92ZWQgaW4gZmF2b3Igb2YgTElDRU5TRQorKyAgICAgICAgKiBBTkdMRS54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qOiBVcGRhdGVkIHdpdGggdXBzdHJlYW0gY2hhbmdlcworKyAgICAgICAg
ICBBbHNvLCBjb3B5IHNyYy9jb21taXQuaCB0byBpZC9jb21taXQuaCBkdXJpbmcgYnVpbGQKKysg
ICAgICAgICogQ01ha2VMaXN0cy50eHQ6IFVwZGF0ZWQgd2l0aCB1cHN0cmVhbSBjaGFuZ2VzCisr
ICAgICAgICAgIEFsc28sIGNvcHkgc3JjL2NvbW1pdC5oIHRvIGlkL2NvbW1pdC5oIGR1cmluZyBi
dWlsZAorKyAgICAgICAgKiBDb21waWxlci5jbWFrZTogVXBkYXRlZCB3aXRoIHVwc3RyZWFtIGNo
YW5nZXMKKysgICAgICAgICogR0xFU3YyLmNtYWtlOiBVcGRhdGVkIHdpdGggdXBzdHJlYW0gY2hh
bmdlcworKyAgICAgICAgKiBhZGp1c3QtYW5nbGUtaW5jbHVkZS1wYXRocy1ydWxlOiBTdXBwb3J0
ICIiIGFzIHdlbGwgYXMgPD4gZm9yIGluY2x1ZGVzCisrICAgICAgICAqIGFkanVzdC1hbmdsZS1p
bmNsdWRlLXBhdGhzLnNoOiBTdXBwb3J0ICIiIGFzIHdlbGwgYXMgPD4gZm9yIGluY2x1ZGVzCisr
ICAgICAgICAqIGNoYW5nZXMuZGlmZjogUGFyZWQgZG93biB0byBqdXN0IGxlZ2FsIGRpc2NsYWlt
ZXIgYW5kIHdhcm5pbmcgZmxhZyBjaGFuZ2VzCisrICAgICAgICAqIHVwZGF0ZS1hbmdsZS5zaDog
VXBkYXRlIEFOR0xFLnBsaXN0CisrCisrICAgICAgICAqIE1hbnkgb3RoZXIgZmlsZXMgbW9kaWZp
ZWQvYWRkZWQvcmVtb3ZlZCB1cHN0cmVhbQorKworKzIwMTktMDktMTEgIFJ5YW4gSGFkZGFkICA8
cnlhbmhhZGRhZEBhcHBsZS5jb20+CisrCisrICAgICAgICBVbnJldmlld2VkLCByb2xsaW5nIG91
dCByMjQ5NzkxLgorKworKyAgICAgICAgQnJlYWtzIGludGVybmFsIHByb2R1Y3Rpb24gYnVpbGRz
LgorKworKyAgICAgICAgUmV2ZXJ0ZWQgY2hhbmdlc2V0OgorKworKyAgICAgICAgIlVwZGF0ZSBB
TkdMRSIKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MDExNTYKKysgICAgICAgIGh0dHBzOi8vdHJhYy53ZWJraXQub3JnL2NoYW5nZXNldC8yNDk3OTEK
KysKKysyMDE5LTA5LTExICBKYW1lcyBEYXJwaW5pYW4gIDxqZGFycGluaWFuQGNocm9taXVtLm9y
Zz4KKysKKysgICAgICAgIFVwZGF0ZSBBTkdMRQorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIwMTE1NgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgQWxl
eCBDaHJpc3RlbnNlbi4KKysKKysgICAgICAgIFVwZGF0ZSB0byAyMDE5LTktOSwgcmV2aXNpb24g
NzlhZDA0MTE5MTFiMmZjODQ4MzRjMzcwNWY1NTcwN2JlOWU0YjQ5OAorKyAgICAgICAgSSBtZXJn
ZWQgYSBidW5jaCBvZiBjaGFuZ2VzIHRvIHVwc3RyZWFtIEFOR0xFLCB0byBtaW5pbWl6ZSB0aGUg
Y2hhbmdlcworKyAgICAgICAgbmVjZXNzYXJ5IHdoZW4gdXBkYXRpbmcgQU5HTEUgaW4gV2ViS2l0
LgorKworKyAgICAgICAgKiBBTkdMRS5wbGlzdDogVXBkYXRlIGNvbW1pdCBoYXNoZXMKKysgICAg
ICAgICogQU5HTEUudHh0OiBSZW1vdmVkIGluIGZhdm9yIG9mIExJQ0VOU0UKKysgICAgICAgICog
QU5HTEUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajogVXBkYXRlZCB3aXRoIHVwc3RyZWFtIGNo
YW5nZXMKKysgICAgICAgIEFsc28sIGNvcHkgc3JjL2NvbW1pdC5oIHRvIGlkL2NvbW1pdC5oIGR1
cmluZyBidWlsZAorKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDogVXBkYXRlZCB3aXRoIHVwc3Ry
ZWFtIGNoYW5nZXMKKysgICAgICAgIEFsc28sIGNvcHkgc3JjL2NvbW1pdC5oIHRvIGlkL2NvbW1p
dC5oIGR1cmluZyBidWlsZAorKyAgICAgICAgKiBDb21waWxlci5jbWFrZTogVXBkYXRlZCB3aXRo
IHVwc3RyZWFtIGNoYW5nZXMKKysgICAgICAgICogR0xFU3YyLmNtYWtlOiBVcGRhdGVkIHdpdGgg
dXBzdHJlYW0gY2hhbmdlcworKyAgICAgICAgKiBhZGp1c3QtYW5nbGUtaW5jbHVkZS1wYXRocy1y
dWxlOiBTdXBwb3J0ICIiIGFzIHdlbGwgYXMgPD4gZm9yIGluY2x1ZGVzCisrICAgICAgICAqIGFk
anVzdC1hbmdsZS1pbmNsdWRlLXBhdGhzLnNoOiBTdXBwb3J0ICIiIGFzIHdlbGwgYXMgPD4gZm9y
IGluY2x1ZGVzCisrICAgICAgICAqIGNoYW5nZXMuZGlmZjogUGFyZWQgZG93biB0byBqdXN0IGxl
Z2FsIGRpc2NsYWltZXIgYW5kIHdhcm5pbmcgZmxhZyBjaGFuZ2VzCisrICAgICAgICAqIHVwZGF0
ZS1hbmdsZS5zaDogVXBkYXRlIEFOR0xFLnBsaXN0CisrCisrICAgICAgICAqIE1hbnkgb3RoZXIg
ZmlsZXMgbW9kaWZpZWQvYWRkZWQvcmVtb3ZlZCB1cHN0cmVhbQorKworKzIwMTktMDgtMjkgIEtl
aXRoIFJvbGxpbiAgPGtyb2xsaW5AYXBwbGUuY29tPgorKworKyAgICAgICAgVXBkYXRlIC54Y2Nv
bmZpZyBzeW1ib2xzIHRvIHJlZmxlY3QgdGhlIGN1cnJlbnQgc2V0IG9mIHBhc3QgYW5kIGZ1dHVy
ZSBwcm9kdWN0IHZlcnNpb25zLgorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTIwMDcyMAorKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzU0MzA1MDMyPgor
KworKyAgICAgICAgUmV2aWV3ZWQgYnkgQWxleCBDaHJpc3RlbnNlbi4KKysKKysgICAgICAgIFJl
bW92ZSB2ZXJzaW9uIHN5bWJvbHMgcmVsYXRlZCB0byBvbGQgT1MncyB3ZSBubyBsb25nZXIgc3Vw
cG9ydCwKKysgICAgICAgIGVuc3VyZSB0aGF0IHZlcnNpb24gc3ltYm9scyBhcmUgZGVmaW5lZCBm
b3IgT1MncyB3ZSBkbyBzdXBwb3J0LgorKworKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9CYXNl
LnhjY29uZmlnOgorKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9EZWJ1Z1JlbGVhc2UueGNjb25m
aWc6CisrCisrMjAxOS0wOC0yNiAgSmFtZXMgRGFycGluaWFuICA8amRhcnBpbmlhbkBnb29nbGUu
Y29tPgorKworKyAgICAgICAgQWRkIGEgc2NyaXB0IHRvIHVwZGF0ZSBBTkdMRQorKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwMTEwOQorKworKyAgICAg
ICAgUmV2aWV3ZWQgYnkgQWxleCBDaHJpc3RlbnNlbi4KKysKKysgICAgICAgICogdXBkYXRlLWFu
Z2xlLnNoOiBBZGRlZC4KKysKKysyMDE5LTA4LTE2ICBLZWl0aCBSb2xsaW4gIDxrcm9sbGluQGFw
cGxlLmNvbT4KKysKKysgICAgICAgIEFkZCBYQ0J1aWxkIHN1cHBvcnQgdG8gQU5HTEUKKysgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDA4MzYKKysgICAg
ICAgIDxyZGFyOi8vcHJvYmxlbS81NDQxMDQyMD4KKysKKysgICAgICAgIFJldmlld2VkIGJ5IEFs
ZXggQ2hyaXN0ZW5zZW4uCisrCisrICAgICAgICBUaGUgQU5HTEUgWGNvZGUgcHJvamVjdCBjb250
YWlucyB0d28gQnVpbGQgUGhhc2VzOiBvbmUgdGhhdCBjb3BpZXMKKysgICAgICAgIHNvbWUgaGVh
ZGVycywgYW5kIGFub3RoZXIgdGhhdCBtb2RpZmllcyB0aG9zZSBoZWFkZXJzLiBUaGlzCisrICAg
ICAgICBjb21iaW5hdGlvbiBkb2VzIG5vdCB3b3JrIHdpdGggWENCdWlsZCwgd2hpY2ggZ2V0cyBj
b25mdXNlZCB3aGVuIGl0CisrICAgICAgICBmaW5kcyB0aGF0IGhlYWRlcnMgdGhhdCBpdCdzIGNv
cGllZCBoYXZlIGJlZW4gY2hhbmdlZC4gV2hlbiBpdCBkZXRlY3RzCisrICAgICAgICB0aGlzLCBY
Q0J1aWxkIHRoaW5rcyB0aGF0IGl0IHNob3VsZCByZWNvcHkgdGhvc2UgaGVhZGVycyBvbiB0aGUg
bmV4dAorKyAgICAgICAgYnVpbGQsIGNhdXNpbmcgdGhlaXIgbW9kaWZpY2F0aW9uIGRhdGVzIHRv
IGNoYW5nZSBhbmQgZm9yIGFsbAorKyAgICAgICAgZGVwZW5kZW50IGZpbGVzIHRvIGJlIHJlYnVp
bHQuIFRoaXMgZXNzZW50aWFsbHkgdHVybnMgYW4gaW5jcmVtZW50YWwKKysgICAgICAgIHJlYnVp
bGQgaW50byBhIGZ1bGwgcmVidWlsZC4KKysKKysgICAgICAgIEFkZHJlc3MgdGhpcyBwcm9ibGVt
IGJ5IHVzaW5nIGEgbmV3IGZhY2lsaXR5IGluIFhjb2RlIDExLiBUaGlzCisrICAgICAgICBmYWNp
bGl0eSBzdXBwb3J0cyB0aGUgY29weWluZyBhbmQgbW9kaWZ5aW5nIGhlYWRlcnMgZmlsZXMgaW4g
YSBzaW5nbGUKKysgICAgICAgIHN0ZXAuIEl0IGlzIGFjaGlldmVkIGJ5IGZpcnN0IGVuYWJsaW5n
IHRoZSBmYWNpbGl0eSBieSBzZXR0aW5nCisrICAgICAgICBBUFBMWV9SVUxFU19JTl9DT1BZX0hF
QURFUlMgdG8gWUVTLiBOZXh0LCB3ZSBhZGQgYSBuZXcgQnVpbGQgUnVsZSB0aGF0CisrICAgICAg
ICBpbnZva2VzIGEgY3VzdG9tIHNjcmlwdCB3aGVuIHRoZSBoZWFkZXIgZmlsZXMgYXJlIGNvcGll
ZC4gVGhpcmQsIHdlCisrICAgICAgICBwcm92aWRlIHRoaXMgc2NyaXB0LCB3aGljaCBjYW4gZXNz
ZW50aWFsbHkgYmUgYSBzdHJpcHBlZCBkb3duIHZlcnNpb24KKysgICAgICAgIG9mIHRoZSBvbmUg
YWxyZWFkeSB1c2VkIHRvIG1vZGlmeSB0aGUgZXhwb3J0ZWQgaGVhZGVycyBmaWxlcy4gRmluYWxs
eSwKKysgICAgICAgIHdlIGRpc2FibGUgdGhlIHVzZSBvZiB0aGF0IG9sZCBzY3JpcHQgd2hlbiB3
ZSBhcmUgdXNpbmcgWGNvZGUgMTEuIEluCisrICAgICAgICB0aGlzIHdheSwgdGhlIG9sZCBzY3Jp
cHQgdGhhdCBtb2RpZmllcyB0aGUgZXhwb3J0ZWQgaGVhZGVycyBpcyB1c2VkIGluCisrICAgICAg
ICBYY29kZSAxMCwgYW5kIHRoZSBuZXcgZmFjaWxpdHkgaXMgdXNlZCBpbiBYY29kZSAxMS4KKysK
KysgICAgICAgIFNlZSBhbHNvIEJ1ZyAxOTczNDAgZm9yIHdoZXJlIHRoaXMgcHJvY2VzcyB3YXMg
YWxzbyBhcHBsaWVkIHRvCisrICAgICAgICBKYXZhU2NyaXB0Q29yZSwgV2ViS2l0LCBhbmQgV2Vi
S2l0TGVnYWN5LgorKworKyAgICAgICAgKiBBTkdMRS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
OgorKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9BTkdMRS54Y2NvbmZpZzoKKysgICAgICAgICog
YWRqdXN0LWFuZ2xlLWluY2x1ZGUtcGF0aHMtcnVsZTogQWRkZWQuCisrCisrMjAxOS0wOC0wOCAg
QnJlbnQgRnVsZ2hhbSAgPGJmdWxnaGFtQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFtGVFddIEdl
dCBXZWJLaXQsIFdlYktpdDIsIGFuZCBNaW5pQnJvd3NlciBidWlsZGluZyBhbmQgZXhlY3V0aW5n
CisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAwNTM5
CisrCisrICAgICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisrCisrICAgICAgICAqIFBs
YXRmb3JtRlRXLmNtYWtlOiBBZGRlZC4KKysKKysyMDE5LTA3LTE3ICBLZW5uZXRoIFJ1c3NlbGwg
IDxrYnJAY2hyb21pdW0ub3JnPgorKworKyAgICAgICAgTWFrZSBBTkdMRSB3b3JrIGluc2lkZSBX
ZWJLaXQyJ3Mgc2FuZGJveAorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTE5OTg0NAorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgQWxleCBDaHJpc3RlbnNl
bi4KKysKKysgICAgICAgIENoZXJyeS1waWNrIGZpeCBmb3IgY3JidWcuY29tL2FuZ2xlcHJvamVj
dC8zMzgzIHRvIGVsaW1pbmF0ZSB1c2UKKysgICAgICAgIG9mIGRlcHJlY2F0ZWQgQVBJIGluIFN5
c3RlbUluZm9fbWFjLm1tLgorKworKyAgICAgICAgKiBCVUlMRC5nbjoKKysgICAgICAgICogc3Jj
L2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mby5jcHA6CisrICAgICAgICAoYW5nbGU6OkZpbmRBY3Rp
dmVHUFUpOgorKyAgICAgICAgKGFuZ2xlOjpQcmludFN5c3RlbUluZm8pOgorKyAgICAgICAgKGFu
Z2xlOjpGaW5kUHJpbWFyeUdQVSk6IERlbGV0ZWQuCisrICAgICAgICAqIHNyYy9ncHVfaW5mb191
dGlsL1N5c3RlbUluZm8uaDoKKysgICAgICAgICogc3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5m
b19pbnRlcm5hbC5oOgorKyAgICAgICAgKiBzcmMvZ3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZvX2xp
bnV4LmNwcDoKKysgICAgICAgIChhbmdsZTo6R2V0U3lzdGVtSW5mbyk6CisrICAgICAgICAqIHNy
Yy9ncHVfaW5mb191dGlsL1N5c3RlbUluZm9fbWFjLm1tOgorKyAgICAgICAgKGFuZ2xlOjpHZXRT
eXN0ZW1JbmZvKToKKysgICAgICAgICogc3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mb193aW4u
Y3BwOgorKyAgICAgICAgKGFuZ2xlOjpHZXRTeXN0ZW1JbmZvKToKKysgICAgICAgICogc3JjL3Rl
c3RzL0JVSUxELmduOgorKyAgICAgICAgKiBzcmMvdGVzdHMvdGVzdF9leHBlY3RhdGlvbnMvR1BV
VGVzdENvbmZpZy5jcHA6CisrICAgICAgICAqIHNyYy90ZXN0cy90ZXN0X3V0aWxzL2FuZ2xlX3Rl
c3RfaW5zdGFudGlhdGUuY3BwOgorKyAgICAgICAgKGFuZ2xlOjpJc0NvbmZpZ1doaXRlbGlzdGVk
KToKKysKKysyMDE5LTA3LTEwICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtp
dC5vcmc+CisrCisrICAgICAgICBBbGxvdyBDTWFrZSB0byBidWlsZCBXZWJDb3JlIG9uIE1hYwor
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5ODk3OQor
KworKyAgICAgICAgUmV2aWV3ZWQgYnkgRG9uIE9sbXN0ZWFkLgorKworKyAgICAgICAgKiBpbmNs
dWRlL0dMU0xBTkcvU2hhZGVyTGFuZy5oOgorKworKzIwMTktMDctMTAgIEtlbm5ldGggUnVzc2Vs
bCAgPGtickBjaHJvbWl1bS5vcmc+CisrCisrICAgICAgICBIb29rIHVwIFdlYkdMJ3MgYmFjayBi
dWZmZXIgaW4gQU5HTEUgYmFja2VuZCBvbiBtYWNPUworKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5ODk4MgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkg
QWxleCBDaHJpc3RlbnNlbi4KKysKKysgICAgICAgIEFkZCBzb3VyY2UgZmlsZXMgbmVlZGVkIHRv
IGltcGxlbWVudCBhbmQgY2FsbCBBTkdMRSBleHRlbnNpb25zLCBhbmQKKysgICAgICAgIGV4cG9y
dCBoZWFkZXJzIG5lY2Vzc2FyeSBmb3IgdGhvc2UgZXh0ZW5zaW9ucy4gVXBkYXRlIHRoZSBzY3Jp
cHQgd2hpY2gKKysgICAgICAgIGFkanVzdHMgaW5jbHVkZSBwYXRocyB0byBoYW5kbGUgdGhlIG5l
dyBoZWFkZXJzLgorKworKyAgICAgICAgQ2hlcnJ5LXBpY2sgZml4IGZvciBBTkdMRSBidWcgY3Ji
dWcuY29tL2FuZ2xlcHJvamVjdC8zNjY5IHRvIHN1cHBvcnQKKysgICAgICAgIGFudGlhbGlhczp0
cnVlIGZvciBBTkdMRS1iYWNrZWQgV2ViR0wgY29udGV4dHMuCisrCisrICAgICAgICAqIEFOR0xF
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisrICAgICAgICAqIGFkanVzdC1hbmdsZS1pbmNs
dWRlLXBhdGhzLnNoOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvRnJhbWVidWZmZXJBdHRhY2ht
ZW50LmNwcDoKKysgICAgICAgIChnbDo6RnJhbWVidWZmZXJBdHRhY2htZW50OjpnZXRUZXh0dXJl
SW1hZ2VJbmRleCBjb25zdCk6IERlbGV0ZWQuCisrICAgICAgICAqIHNyYy9saWJBTkdMRS9GcmFt
ZWJ1ZmZlckF0dGFjaG1lbnQuaDoKKysgICAgICAgIChnbDo6RnJhbWVidWZmZXJBdHRhY2htZW50
OjpnZXRUZXh0dXJlSW1hZ2VJbmRleCBjb25zdCk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS92
YWxpZGF0aW9uRVMyLmNwcDoKKysgICAgICAgIChnbDo6VmFsaWRhdGVCbGl0RnJhbWVidWZmZXJB
TkdMRSk6CisrCisrMjAxOS0wNi0yNyAgQmV0aCBEYWtpbiAgPGJkYWtpbkBhcHBsZS5jb20+Cisr
CisrICAgICAgICBVcHN0cmVhbSB1c2Ugb2YgTUFDQ0FUQUxZU1QKKysgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTkyNDUKKysgICAgICAgIHJkYXI6Ly9w
cm9ibGVtLzUxNjg3NzIzCisrCisrICAgICAgICBSZXZpZXdlZCBieSBUaW0gSG9ydG9uLgorKwor
KyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9TREtWYXJpYW50LnhjY29uZmlnOgorKworKzIwMTkt
MDYtMjUgIEtlbm5ldGggUnVzc2VsbCAgPGtickBjaHJvbWl1bS5vcmc+CisrCisrICAgICAgICBT
Y3JpcHQgd2hpY2ggYWRqdXN0cyBpbmNsdWRlIHBhdGhzIGluIEFOR0xFJ3MgY29waWVkIGhlYWRl
cnMgYnJlYWtzIGluY3JlbWVudGFsIGJ1aWxkcworKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTE5OTIxMgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGFy
aW4gQWRsZXIuCisrCisrICAgICAgICBNYWludGFpbiBhbmQgdGVzdCBhIHRpbWVzdGFtcCBpbiBh
ZGp1c3QtYW5nbGUtaW5jbHVkZS1wYXRocy5zaAorKyAgICAgICAgaW4gb3JkZXIgdG8gYXZvaWQg
dG91Y2hpbmcgdGhlIGhlYWRlcnMgZHVyaW5nIGVhY2ggYnVpbGQuCisrCisrICAgICAgICAqIGFk
anVzdC1hbmdsZS1pbmNsdWRlLXBhdGhzLnNoOgorKworKzIwMTktMDYtMjUgIFJ5YW4gSGFkZGFk
ICA8cnlhbmhhZGRhZEBhcHBsZS5jb20+CisrCisrICAgICAgICBVbnJldmlld2VkLCByb2xsaW5n
IG91dCByMjQ2ODI1LgorKworKyAgICAgICAgQnJlYWtzIGludGVybmFsIGJ1aWxkcy4KKysKKysg
ICAgICAgIFJldmVydGVkIGNoYW5nZXNldDoKKysKKysgICAgICAgICJTY3JpcHQgd2hpY2ggYWRq
dXN0cyBpbmNsdWRlIHBhdGhzIGluIEFOR0xFJ3MgY29waWVkIGhlYWRlcnMKKysgICAgICAgIGJy
ZWFrcyBpbmNyZW1lbnRhbCBidWlsZHMiCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MTk5MjEyCisrICAgICAgICBodHRwczovL3RyYWMud2Via2l0Lm9y
Zy9jaGFuZ2VzZXQvMjQ2ODI1CisrCisrMjAxOS0wNi0yNSAgS2VubmV0aCBSdXNzZWxsICA8a2Jy
QGNocm9taXVtLm9yZz4KKysKKysgICAgICAgIFNjcmlwdCB3aGljaCBhZGp1c3RzIGluY2x1ZGUg
cGF0aHMgaW4gQU5HTEUncyBjb3BpZWQgaGVhZGVycyBicmVha3MgaW5jcmVtZW50YWwgYnVpbGRz
CisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk5MjEy
CisrCisrICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KKysKKysgICAgICAgIE1haW50
YWluIGFuZCB0ZXN0IGEgdGltZXN0YW1wIGluIGFkanVzdC1hbmdsZS1pbmNsdWRlLXBhdGhzLnNo
CisrICAgICAgICBpbiBvcmRlciB0byBhdm9pZCB0b3VjaGluZyB0aGUgaGVhZGVycyBkdXJpbmcg
ZWFjaCBidWlsZC4KKysKKysgICAgICAgICogYWRqdXN0LWFuZ2xlLWluY2x1ZGUtcGF0aHMuc2g6
CisrCisrMjAxOS0wNi0xOCAgS2VubmV0aCBSdXNzZWxsICA8a2JyQGNocm9taXVtLm9yZz4KKysK
KysgICAgICAgIEFkZCBwcmVsaW1pbmFyeSBBTkdMRSBiYWNrZW5kIHRvIFdlYkNvcmUKKysgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTc3NTUKKysKKysg
ICAgICAgIFJldmlld2VkIGJ5IERlYW4gSmFja3Nvbi4KKysKKysgICAgICAgIEFkZCBhIGJ1aWxk
IHN0ZXAgd2hpY2ggcHJvY2Vzc2VzIEFOR0xFJ3MgY29waWVkIHB1YmxpYyBoZWFkZXJzIHNvIHRo
ZXkKKysgICAgICAgIGNhbiBhbGwgYmUgcmVmZXJyZWQgdG8gdW5kZXIgdGhlIDxBTkdMRS94eXou
aD4gcHJlZml4LiBUaGlzIGF2b2lkcworKyAgICAgICAgdG91Y2hpbmcgQU5HTEUncyBoZWFkZXJz
IGFuZCBhbGxvd3MgV2ViQ29yZSB0byBpbmNsdWRlIHRoZW0gd2l0aCBubworKyAgICAgICAgYWRk
aXRpb25hbCBpbmNsdWRlIHBhdGggbW9kaWZpY2F0aW9ucy4KKysKKysgICAgICAgICogQU5HTEUu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKysgICAgICAgICogYWRqdXN0LWFuZ2xlLWluY2x1
ZGUtcGF0aHMuc2g6IEFkZGVkLgorKworKzIwMTktMDYtMTcgIFJ5YW4gSGFkZGFkICA8cnlhbmhh
ZGRhZEBhcHBsZS5jb20+CisrCisrICAgICAgICBVbnJldmlld2VkLCByb2xsaW5nIG91dCByMjQ2
NTAxLgorKworKyAgICAgICAgQnJlYWtzIEFwcGxlIGludGVybmFsIGJ1aWxkcy4KKysKKysgICAg
ICAgIFJldmVydGVkIGNoYW5nZXNldDoKKysKKysgICAgICAgICJTdXBwb3J0IHVzaW5nIEFOR0xF
IGFzIHRoZSBiYWNrZW5kIGZvciB0aGUgV2ViR0wKKysgICAgICAgIGltcGxlbWVudGF0aW9uIgor
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5Nzc1NQor
KyAgICAgICAgaHR0cHM6Ly90cmFjLndlYmtpdC5vcmcvY2hhbmdlc2V0LzI0NjUwMQorKworKzIw
MTktMDYtMTcgIEtlbm5ldGggUnVzc2VsbCAgPGtickBjaHJvbWl1bS5vcmc+CisrCisrICAgICAg
ICBTdXBwb3J0IHVzaW5nIEFOR0xFIGFzIHRoZSBiYWNrZW5kIGZvciB0aGUgV2ViR0wgaW1wbGVt
ZW50YXRpb24KKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xOTc3NTUKKysKKysgICAgICAgIFJldmlld2VkIGJ5IERlYW4gSmFja3Nvbi4KKysKKysgICAg
ICAgIEFkZCBhIGJ1aWxkIHN0ZXAgd2hpY2ggcHJvY2Vzc2VzIEFOR0xFJ3MgY29waWVkIHB1Ymxp
YyBoZWFkZXJzIHNvIHRoZXkKKysgICAgICAgIGNhbiBhbGwgYmUgcmVmZXJyZWQgdG8gdW5kZXIg
dGhlIDxBTkdMRS94eXouaD4gcHJlZml4LiBUaGlzIGF2b2lkcworKyAgICAgICAgdG91Y2hpbmcg
QU5HTEUncyBoZWFkZXJzIGFuZCBhbGxvd3MgV2ViQ29yZSB0byBpbmNsdWRlIHRoZW0gd2l0aCBu
bworKyAgICAgICAgYWRkaXRpb25hbCBpbmNsdWRlIHBhdGggbW9kaWZpY2F0aW9ucy4KKysKKysg
ICAgICAgICogQU5HTEUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKysgICAgICAgICogYWRq
dXN0LWFuZ2xlLWluY2x1ZGUtcGF0aHMuc2g6IEFkZGVkLgorKworKzIwMTktMDYtMTIgIEp1c3Rp
biBGYW4gIDxqdXN0aW5fZmFuQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFtXZWJHTF0gQU5HTEUg
RXh0ZW5zaW9uIGRpcmVjdGl2ZSBsb2NhdGlvbiBpbmNvcnJlY3RseSBlbmZvcmNlZCBmb3Igd2Vi
Z2wgMS4wCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTk4ODExCisrCisrICAgICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisrCisrICAgICAg
ICBBcHBseSBBTkdMRSBjaGFuZ2UgZnJvbSBodHRwczovL2Nocm9taXVtLXJldmlldy5nb29nbGVz
b3VyY2UuY29tL2MvYW5nbGUvYW5nbGUvKy8xNjQ4NjYxIHRvCisrICAgICAgICBwcmV2ZW50IGVu
Zm9yY2luZyBFU1NMIGxhdGUgZXh0ZW5zaW9uIHJ1bGUgb24gV2ViR0wgMS4wIHNoYWRlcnMuCisr
CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvRGlhZ25vc3RpY3NCYXNlLmNw
cDoKKysgICAgICAgIChhbmdsZTo6cHA6OkRpYWdub3N0aWNzOjptZXNzYWdlKToKKysgICAgICAg
ICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9EaWFnbm9zdGljc0Jhc2UuaDoKKysgICAgICAg
ICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9EaXJlY3RpdmVQYXJzZXIuY3BwOgorKyAgICAg
ICAgKGFuZ2xlOjpwcDo6RGlyZWN0aXZlUGFyc2VyOjpwYXJzZUV4dGVuc2lvbik6CisrCisrMjAx
OS0wNS0yMyAgRG9uIE9sbXN0ZWFkICA8ZG9uLm9sbXN0ZWFkQHNvbnkuY29tPgorKworKyAgICAg
ICAgW0NNYWtlXSBVc2UgdGFyZ2V0IG9yaWVudGVkIGRlc2lnbiBmb3IgYm1hbGxvYworKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5ODA0NgorKworKyAg
ICAgICAgUmV2aWV3ZWQgYnkgS29uc3RhbnRpbiBUb2thcmV2LgorKworKyAgICAgICAgUmVtb3Zl
IFdFQktJVF9DT1BZX0ZJTEVTIGZyb20gQ01ha2VsaXN0cy50eHQgbm93IHRoYXQgaXQgaXMgaW4g
V2ViS2l0TWFjcm9zLgorKworKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDoKKysKKysyMDE5LTA1
LTE0ICBNaWd1ZWwgR29tZXogIDxtYWdvbWV6QGlnYWxpYS5jb20+CisrCisrICAgICAgICBSRUdS
RVNTSU9OKHIyNDUwODgpOiBbR1RLXSBTZXZlcmFsIFdlYkdMIHRlc3RzIGZhaWxpbmcKKysgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTc4ODAKKysKKysg
ICAgICAgIFJldmlld2VkIGJ5IENhcmxvcyBHYXJjaWEgQ2FtcG9zLgorKworKyAgICAgICAgRW5h
YmxlIEdMU0wgY29tcGlsZXIgb3V0cHV0IGZvciBXZWJLaXRHVEsuCisrCisrICAgICAgICAqIFBs
YXRmb3JtR1RLLmNtYWtlOiBBZGRlZC4KKysKKysyMDE5LTA1LTEzICBBbGV4IENocmlzdGVuc2Vu
ICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisrCisrICAgICAgICBCdWlsZCBtb3JlIEFOR0xF
IGZpbGVzCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTk3Nzg3CisrCisrICAgICAgICBSZXZpZXdlZCBieSBTaW1vbiBGcmFzZXIuCisrCisrICAgICAg
ICAqIEFOR0xFLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisrICAgICAgICAqIHNyYy9ncHVf
aW5mb191dGlsL1N5c3RlbUluZm8uY3BwOgorKyAgICAgICAgKGFuZ2xlOjpQYXJzZU1hY01hY2hp
bmVNb2RlbCk6CisrICAgICAgICAqIHNyYy9ncHVfaW5mb191dGlsL1N5c3RlbUluZm9fbWFjLm1t
OgorKyAgICAgICAgKGFuZ2xlOjpHZXRTeXN0ZW1JbmZvKToKKysgICAgICAgICogc3JjL2xpYkFO
R0xFL3JlbmRlcmVyL2dsL2NnbC9EaXNwbGF5Q0dMLm1tOgorKyAgICAgICAgKiBzcmMvbGliQU5H
TEUvcmVuZGVyZXIvZ2wvY2dsL0lPU3VyZmFjZVN1cmZhY2VDR0wubW06CisrICAgICAgICAocng6
OklPU3VyZmFjZVN1cmZhY2VDR0w6OklPU3VyZmFjZVN1cmZhY2VDR0wpOgorKyAgICAgICAgKHJ4
OjpJT1N1cmZhY2VTdXJmYWNlQ0dMOjp2YWxpZGF0ZUF0dHJpYnV0ZXMpOgorKyAgICAgICAgKiBz
cmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL1dpbmRvd1N1cmZhY2VDR0wuaDoKKysgICAgICAg
ICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9XaW5kb3dTdXJmYWNlQ0dMLm1tOgorKyAg
ICAgICAgKHJ4OjpXaW5kb3dTdXJmYWNlQ0dMOjppbml0aWFsaXplKToKKysgICAgICAgICgtW1N3
YXBMYXllciBpbml0V2l0aFNoYXJlZFN0YXRlOndpdGhDb250ZXh0OndpdGhGdW5jdGlvbnM6XSk6
IERlbGV0ZWQuCisrCisrMjAxOS0wNS0xMCAgTWljaGFlbCBDYXRhbnphcm8gIDxtY2F0YW56YXJv
QGlnYWxpYS5jb20+CisrCisrICAgICAgICBGaXggYSBidW5jaCBvZiBjb21waWxlciB3YXJuaW5n
cworKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5Nzc4
NQorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRG9uIE9sbXN0ZWFkLgorKworKyAgICAgICAgQWRk
IGNvbXBpbGVyIGZsYWdzIHRvIHN1cHByZXNzIHZhcmlvdXMgd2FybmluZ3MgdHJpZ2dlcmVkIGJ5
IHRoZSBuZXcgdmVyc2lvbiBvZiBBTkdMRS4KKysKKysgICAgICAgICogQ01ha2VMaXN0cy50eHQ6
CisrCisrMjAxOS0wNS0wOSAgRG9uIE9sbXN0ZWFkICA8ZG9uLm9sbXN0ZWFkQHNvbnkuY29tPgor
KworKyAgICAgICAgW0FOR0xFXSBVcGRhdGUgQU5HTEUKKysgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTc2NzYKKysgICAgICAgIDxyZGFyOi8vcHJvYmxl
bS81MDYwOTUwMT4KKysKKysgICAgICAgIFJldmlld2VkIGJ5IEFsZXggQ2hyaXN0ZW5zZW4uCisr
CisrICAgICAgICAqIGNoYW5nZXMuZGlmZjoKKysgICAgICAgIFVwZGF0ZWQgd2l0aCBhbGwgdGhl
IHByZXZpb3VzIGZpeGVzLgorKyAgICAgICAgKiBpbmNsdWRlL0VHTC9lZ2xwbGF0Zm9ybS5oOgor
KyAgICAgICAgVXNlIHRoZSBtb3JlIGdlbmVyaWMgbmFtZSBVU0VfU1lTVEVNX0VHTCBub3QgVVNF
X1dQRS4KKysgICAgICAgICogc3JjL2NvbW1vbi9kZWJ1Zy5oOgorKyAgICAgICAgRml4IGEgc3Ry
YXkgQ09NUElMRVJfR0NDIHRvIGJlIF9fR05VQ19fLgorKworKzIwMTktMDUtMDggIEFsZXggQ2hy
aXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KKysKKysgICAgICAgIEZpeCBpbnRl
cm5hbCBhbmQgV2luZG93cyBidWlsZHMuCisrCisrICAgICAgICAqIEFOR0xFLnR4dDogQWRkZWQu
CisrICAgICAgICBSZXN0b3JlIHRoaXMgZmlsZS4gIEl0IHdhcyBkZWxldGVkLCBidXQgaXQncyBu
ZWVkZWQuCisrICAgICAgICAqIEdMRVN2Mi5jbWFrZToKKysgICAgICAgIEl0IHR1cm5zIG91dCBD
b21wb3NpdG9yTmF0aXZlV2luZG93MTEuY3BwIGFuZCBSZW5kZXJlcjExLmNwcCBhcmUgbmVlZGVk
LCBidXQgdGhlIGJvdCBkb2Vzbid0IHNlZW0gdG8gaGF2ZSB0aGUgcmlnaHQgU0RLLgorKworKzIw
MTktMDUtMDggIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KKysK
KysgICAgICAgIEZpeCBIaWdoIFNpZXJyYSBhbmQgV2luZG93cyBidWlsZHMuCisrCisrICAgICAg
ICAqIEdMRVN2Mi5jbWFrZToKKysgICAgICAgIENvbXBvc2l0b3JOYXRpdmVXaW5kb3cxMS5jcHAg
d2FzIGFsc28gaGF2aW5nIGEgaGFyZCB0aW1lIGNvbXBpbGluZyBvbiB0aGUgYm90cy4KKysgICAg
ICAgICogc3JjL2xpYkFOR0xFL3ZhbGlkYXRpb25FUzMuY3BwOgorKyAgICAgICAgKGdsOjpWYWxp
ZGF0ZUJpbmRGcmFnRGF0YUxvY2F0aW9uSW5kZXhlZEVYVCk6CisrICAgICAgICBSZW1vdmUgYSBj
aGVjayBmb3IgaWYgYW4gdW5zaWduZWQgaW50ZWdlciBpcyBsZXNzIHRoYW4gMC4KKysKKysyMDE5
LTA1LTA4ICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisrCisr
ICAgICAgICBGaXggSGlnaCBTaWVycmEgYW5kIFdpbmRvd3MgYnVpbGRzLgorKworKyAgICAgICAg
KiBzcmMvY29tbW9uL3V0aWxpdGllcy5jcHA6CisrICAgICAgICAoZ2w6OnByaXY6OmdMaW5lTW9k
ZXMpOgorKyAgICAgICAgKiBzcmMvY29tbW9uL3V0aWxpdGllcy5oOgorKyAgICAgICAgKGdsOjpJ
c0xpbmVNb2RlKToKKysgICAgICAgIERvbid0IGhhdmUgYSBnbG9iYWwgY29uc3RydWN0b3IuICBV
c2UgYSBmdW5jdGlvbiBzY29wZWQgc3RhdGljIHZhcmlhYmxlIGluc3RlYWQuCisrICAgICAgICAq
IEdMRVN2Mi5jbWFrZToKKysgICAgICAgIFJlbmRlcmVyMTEuY3BwIHdhcyBub3QgYnVpbGRpbmcg
c3VjY2Vzc2Z1bGx5IG9uIHRoZSBib3RzLgorKyAgICAgICAgSSBkb24ndCB0aGluayBpdCdzIG5l
ZWRlZCwgc28ganVzdCBkb24ndCBidWlsZCBpdC4KKysKKysyMDE5LTA1LTA4ICBBbGV4IENocmlz
dGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisrCisrICAgICAgICBGaXggSGlnaCBT
aWVycmEgYnVpbGQuCisrCisrICAgICAgICAqIHNyYy9saWJBTkdMRS9TdGF0ZS5jcHA6CisrICAg
ICAgICAoZ2w6OlN0YXRlOjprQnVmZmVyU2V0dGVycyk6CisrICAgICAgICAqIHNyYy9saWJBTkdM
RS9TdGF0ZS5oOgorKyAgICAgICAgKGdsOjpTdGF0ZTo6c2V0QnVmZmVyQmluZGluZyk6CisrICAg
ICAgICBSZW1vdmUgdGhlIG5lZWQgZm9yIGEgZ2xvYmFsIGNvbnN0cnVjdG9yLgorKworKzIwMTkt
MDUtMDggIERvbiBPbG1zdGVhZCAgPGRvbi5vbG1zdGVhZEBzb255LmNvbT4KKysKKysgICAgICAg
IFVwZGF0ZSBBTkdMRQorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTE5NzY3NgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgQWxleCBDaHJpc3RlbnNlbi4K
KysKKysgICAgICAgIE1hbnkgY2hhbmdlZCBmaWxlcy4gIFVwZGF0ZWQgdG8gdHJ1bmsgQU5HTEUg
NTY1NDQxYjEwNzhiLgorKworKzIwMTktMDQtMjkgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0
ZW5zZW5Ad2Via2l0Lm9yZz4KKysKKysgICAgICAgIDxyZGFyOi8vcHJvYmxlbS81MDI5OTM5Nj4g
Rml4IGludGVybmFsIEhpZ2ggU2llcnJhIGJ1aWxkCisrICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk3Mzg4CisrCisrICAgICAgICAqIENvbmZpZ3VyYXRp
b25zL0Jhc2UueGNjb25maWc6CisrCisrMjAxOS0wNC0yNSAgQWxleCBDaHJpc3RlbnNlbiAgPGFj
aHJpc3RlbnNlbkB3ZWJraXQub3JnPgorKworKyAgICAgICAgU3RhcnQgdXNpbmcgQysrMTcKKysg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTcxMzEKKysK
KysgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgorKworKyAgICAgICAgKiBDb25maWd1
cmF0aW9ucy9CYXNlLnhjY29uZmlnOgorKworKzIwMTktMDMtMjIgIEtlaXRoIFJvbGxpbiAgPGty
b2xsaW5AYXBwbGUuY29tPgorKworKyAgICAgICAgRW5hYmxlIFRoaW5MVE8gc3VwcG9ydCBpbiBQ
cm9kdWN0aW9uIGJ1aWxkcworKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTE5MDc1OAorKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzQ1NDEzMjMzPgorKwor
KyAgICAgICAgUmV2aWV3ZWQgYnkgRGFuaWVsIEJhdGVzLgorKworKyAgICAgICAgRW5hYmxlIGJ1
aWxkaW5nIHdpdGggVGhpbiBMVE8gaW4gUHJvZHVjdGlvbiB3aGVuIHVzaW5nIFhjb2RlIDEwLjIg
b3IKKysgICAgICAgIGxhdGVyLiBUaGlzIGNoYW5nZSByZXN1bHRzIGluIGEgMS40NSUgcHJvZ3Jl
c3Npb24gaW4gUExUNS4gRnVsbAorKyAgICAgICAgUHJvZHVjdGlvbiBidWlsZCB0aW1lcyBpbmNy
ZWFzZSBhYm91dCAyLTMlLiBJbmNyZW1lbnRhbCBidWlsZCB0aW1lcworKyAgICAgICAgYXJlIG1v
cmUgc2V2ZXJlbHkgYWZmZWN0ZWQsIGFuZCBzbyBMVE8gaXMgbm90IGVuYWJsZWQgZm9yIGxvY2Fs
CisrICAgICAgICBlbmdpbmVlcmluZyBidWlsZHMuCisrCisrICAgICAgICBMVE8gaXMgZW5hYmxl
ZCBvbmx5IG9uIG1hY09TIGZvciBub3csIHVudGlsIHJkYXI6Ly9wcm9ibGVtLzQ5MDEzMzk5LAor
KyAgICAgICAgd2hpY2ggYWZmZWN0cyBBUk0gYnVpbGRzLCBpcyBmaXhlZC4KKysKKysgICAgICAg
IFRvIGNoYW5nZSB0aGUgTFRPIHNldHRpbmcgd2hlbiBidWlsZGluZyBsb2NhbGx5OgorKworKyAg
ICAgICAgLSBJZiBidWlsZGluZyB3aXRoIGBtYWtlYCwgc3BlY2lmeSBXS19MVE9fTU9ERT17bm9u
ZSx0aGluLGZ1bGx9IG9uIHRoZQorKyAgICAgICAgICBjb21tYW5kIGxpbmUuCisrICAgICAgICAt
IElmIGJ1aWxkaW5nIHdpdGggYGJ1aWxkLXdlYmtpdGAsIHNwZWNpZnkgLS1sdG8tbW9kZT17bm9u
ZSx0aGluLGZ1bGx9CisrICAgICAgICAgIG9uIHRoZSBjb21tYW5kIGxpbmUuCisrICAgICAgICAt
IElmIGJ1aWxkaW5nIHdpdGggYGJ1aWxkLXJvb3RgLCBzcGVjaWZ5IC0tbHRvPXtub25lLHRoaW4s
ZnVsbH0gb24gdGhlCisrICAgICAgICAgIGNvbW1hbmQgbGluZS4KKysgICAgICAgIC0gSWYgYnVp
bGRpbmcgd2l0aCBYY29kZSwgY3JlYXRlIGEgTG9jYWxPdmVycmlkZXMueGNjb25maWcgZmlsZSBh
dCB0aGUKKysgICAgICAgICAgdG9wIGxldmVsIG9mIHlvdXIgcmVwb3NpdG9yeSBkaXJlY3Rvcnkg
KGlmIG5lZWRlZCkgYW5kIGRlZmluZQorKyAgICAgICAgICBXS19MVE9fTU9ERSB0byBmdWxsLCB0
aGluLCBvciBub25lLgorKworKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmln
OgorKworKzIwMTktMDItMjMgIEtlaXRoIE1pbGxlciAgPGtlaXRoX21pbGxlckBhcHBsZS5jb20+
CisrCisrICAgICAgICBBZGQgbmV3IG1hYyB0YXJnZXQgbnVtYmVycworKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5NDk1NQorKworKyAgICAgICAgUmV2
aWV3ZWQgYnkgVGltIEhvcnRvbi4KKysKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMvQmFzZS54
Y2NvbmZpZzoKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMvRGVidWdSZWxlYXNlLnhjY29uZmln
OgorKworKzIwMTktMDItMjAgIEFuZHkgRXN0ZXMgIDxhZXN0ZXNAYXBwbGUuY29tPgorKworKyAg
ICAgICAgW1hjb2RlXSBBZGQgU0RLVmFyaWFudC54Y2NvbmZpZyB0byB2YXJpb3VzIFhjb2RlIHBy
b2plY3RzCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTk0ODY5CisrCisrICAgICAgICBSdWJiZXItc3RhbXBlZCBieSBKZXIgTm9ibGUuCisrCisrICAg
ICAgICAqIEFOR0xFLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisrCisrMjAxOS0wMS0xOCAg
SmVyIE5vYmxlICA8amVyLm5vYmxlQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFNES19WQVJJQU5U
IGJ1aWxkIGRlc3RpbmF0aW9ucyBzaG91bGQgYmUgc2VwYXJhdGUgZnJvbSBub24tU0RLX1ZBUklB
TlQgYnVpbGRzCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTg5NTUzCisrCisrICAgICAgICBSZXZpZXdlZCBieSBUaW0gSG9ydG9uLgorKworKyAgICAg
ICAgKiBDb25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnOgorKyAgICAgICAgKiBDb25maWd1cmF0
aW9ucy9TREtWYXJpYW50LnhjY29uZmlnOiBBZGRlZC4KKysKKysyMDE5LTAxLTE3ICBUcnVpdHQg
U2F2ZWxsICA8dHNhdmVsbEBhcHBsZS5jb20+CisrCisrICAgICAgICBVbnJldmlld2VkLCByb2xs
aW5nIG91dCByMjQwMTI0LgorKworKyAgICAgICAgVGhpcyBjb21taXQgYnJva2UgYW4gaW50ZXJu
YWwgYnVpbGQuCisrCisrICAgICAgICBSZXZlcnRlZCBjaGFuZ2VzZXQ6CisrCisrICAgICAgICAi
U0RLX1ZBUklBTlQgYnVpbGQgZGVzdGluYXRpb25zIHNob3VsZCBiZSBzZXBhcmF0ZSBmcm9tIG5v
bi0KKysgICAgICAgIFNES19WQVJJQU5UIGJ1aWxkcyIKKysgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODk1NTMKKysgICAgICAgIGh0dHBzOi8vdHJhYy53
ZWJraXQub3JnL2NoYW5nZXNldC8yNDAxMjQKKysKKysyMDE5LTAxLTE3ICBKZXIgTm9ibGUgIDxq
ZXIubm9ibGVAYXBwbGUuY29tPgorKworKyAgICAgICAgU0RLX1ZBUklBTlQgYnVpbGQgZGVzdGlu
YXRpb25zIHNob3VsZCBiZSBzZXBhcmF0ZSBmcm9tIG5vbi1TREtfVkFSSUFOVCBidWlsZHMKKysg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODk1NTMKKysK
KysgICAgICAgIFJldmlld2VkIGJ5IFRpbSBIb3J0b24uCisrCisrICAgICAgICAqIENvbmZpZ3Vy
YXRpb25zL0Jhc2UueGNjb25maWc6CisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL1NES1Zhcmlh
bnQueGNjb25maWc6IEFkZGVkLgorKworKzIwMTktMDEtMTUgIERhdmlkIEtpbHplciAgPGRka2ls
emVyQGFwcGxlLmNvbT4KKysKKysgICAgICAgIGNsYW5nLXRpZHk6IEZpeCB1bm5lY2Vzc2FyeSBj
b3B5IG9mIGZvciBsb29wIHZhcmlhYmxlcyBpbiBBTkdMRQorKyAgICAgICAgPGh0dHBzOi8vd2Vi
a2l0Lm9yZy9iLzE5MzQ0Mz4KKysKKysgICAgICAgIFJldmlld2VkIGJ5IEFsZXggQ2hyaXN0ZW5z
ZW4uCisrCisrICAgICAgICBGaXggdW53YW50ZWQgY29weWluZyBvZiBsb29wIHZhcmlhYmxlcyBi
eSBtYWtpbmcgdGhlbSBjb25zdAorKyAgICAgICAgcmVmZXJlbmNlcy4KKysKKysgICAgICAgICog
c3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9NYWNyb0V4cGFuZGVyLmNwcDoKKysgICAgICAgIChw
cDo6TWFjcm9FeHBhbmRlcjo6U2NvcGVkTWFjcm9SZWVuYWJsZXI6On5TY29wZWRNYWNyb1JlZW5h
Ymxlcik6CisrICAgICAgICAtIFByZXZlbnRzIGNvcHkgYW5kIHJlZmVyZW5jZSBjaHVybiBvZiBz
dGQ6OnNoYXJlZF9wdHI8TWFjcm8+CisrICAgICAgICAgIG9iamVjdHMuCisrICAgICAgICAqIHNy
Yy9jb21waWxlci90cmFuc2xhdG9yL0NvbXBpbGVyLmNwcDoKKysgICAgICAgIChzaDo6VENvbXBp
bGVyOjp1c2VBbGxNZW1iZXJzSW5VbnVzZWRTdGFuZGFyZEFuZFNoYXJlZEJsb2Nrcyk6CisrICAg
ICAgICAtIFByZXZlbnRzIGNvcHkgb2Ygc2g6OkludGVyZmFjZUJsb2NrIHN0cnVjdHMuCisrICAg
ICAgICAoc2g6OlRDb21waWxlcjo6aW5pdGlhbGl6ZU91dHB1dFZhcmlhYmxlcyk6CisrICAgICAg
ICAtIFByZXZlbnRzIGNvcHkgb2Ygc2g6OlZhcnlpbmcgc3RydWN0cy4KKysgICAgICAgICogc3Jj
L2xpYkFOR0xFL1Byb2dyYW0uY3BwOgorKyAgICAgICAgKGdsOjooYW5vbnltb3VzIG5hbWVzcGFj
ZSk6OkluY2x1ZGVTYW1lQXJyYXlFbGVtZW50KToKKysgICAgICAgIC0gUHJldmVudHMgY29weSBv
ZiBzdGQ6OnN0cmluZyBvYmplY3RzLgorKworKzIwMTgtMTAtMDMgIERhbiBCZXJuc3RlaW4gIDxt
aXR6QGFwcGxlLmNvbT4KKysKKysgICAgICAgIEFOR0xFIHBhcnQgb2YgW1hjb2RlXSBVcGRhdGUg
c29tZSBidWlsZCBzZXR0aW5ncyBhcyByZWNvbW1lbmRlZCBieSBYY29kZSAxMAorKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5MDI1MAorKworKyAgICAg
ICAgUmV2aWV3ZWQgYnkgQW5keSBFc3Rlcy4KKysKKysgICAgICAgICogQU5HTEUueGNvZGVwcm9q
L3Byb2plY3QucGJ4cHJvajogS2VwdCB0aGUgdW5yZWFjaGFibGUgY29kZSB3YXJuaW5nIG9mZiBm
b3IgZm91ciBmaWxlcyB0aGF0CisrICAgICAgICAgIHdlcmUgZ2VuZXJhdGVkIGJ5IHRvb2xzOiBn
bHNsYW5nX2xleC5jcHAsIGdsc2xhbmdfdGFiLmNwcCwgVG9rZW5pemVyLmNwcCwgYW5kCisrICAg
ICAgICAgIEV4cHJlc3Npb25QYXJzZXIuY3BwLiBMZXQgWGNvZGUgdXBkYXRlIExhc3RVcGdyYWRl
Q2hlY2suCisrCisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWc6IEVuYWJs
ZWQgQ0xBTkdfV0FSTl9DT01NQSwgQ0xBTkdfV0FSTl9JTkZJTklURV9SRUNVUlNJT04sCisrICAg
ICAgICAgIENMQU5HX1dBUk5fREVQUkVDQVRFRF9PQkpDX0lNUExFTUVOVEFUSU9OUywgQ0xBTkdf
V0FSTl9TVVNQSUNJT1VTX01PVkUsCisrICAgICAgICAgIENMQU5HX1dBUk5fVU5SRUFDSEFCTEVf
Q09ERSwgQ0xBTkdfV0FSTl9PQkpDX0lNUExJQ0lUX1JFVEFJTl9TRUxGLCBhbmQKKysgICAgICAg
ICAgQ0xBTkdfQU5BTFlaRVJfTE9DQUxJWkFCSUxJVFlfTk9OTE9DQUxJWkVELgorKworKzIwMTgt
MDktMjEgIEFkcmlhbiBQZXJleiBkZSBDYXN0cm8gIDxhcGVyZXpAaWdhbGlhLmNvbT4KKysKKysg
ICAgICAgIFtHVEtdIEFOR0xFJ3MgZWdscGxhdGZvcm0uaCBkb2VzIG5vdCBzdXBwb3J0IFdheWxh
bmQtb25seSBidWlsZHMKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xODk4NDQKKysKKysgICAgICAgIFJldmlld2VkIGJ5IE1pY2hhZWwgQ2F0YW56YXJv
LgorKworKyAgICAgICAgVGhpcyBtYWtlcyBpdCBwb3NzaWJsZSB0byBidWlsZCBXZWJLaXRHVEsr
IGFmdGVyIHIyMjUzNDAgd2hlbiB0aGUKKysgICAgICAgIGJ1aWxkIGlzIGNvbmZpZ3VyZWQgdG8g
c3VwcG9ydCBvbmx5IFdheWxhbmQsIGFuZCB0aGUgWDExIGhlYWRlcnMKKysgICAgICAgIGFyZSBu
b3QgcHJlc2VudC4KKysKKysgICAgICAgICogY2hhbmdlcy5kaWZmOiBVcGRhdGVkLgorKyAgICAg
ICAgKiBpbmNsdWRlL0VHTC9lZ2xwbGF0Zm9ybS5oOiBJbmNsdWRlIHRoZSBYMTEgaGVhZGVycyBv
bmx5IHdoZW4KKysgICAgICAgIEFOR0xFX1VTRV9YMTEgaXMgZGVmaW5lZCBhbmQsIGZvciBjb25z
aXN0ZW5jeSB3aXRoIE1lc2EncyB2ZXJzaW9uCisrICAgICAgICBvZiB0aGUgaGVhZGVyLCB3aGVu
IE1FU0FfRUdMX05PX1gxMV9IRUFERVJTIGlzIG5vdCBkZWZpbmVkLgorKworKzIwMTgtMDgtMjkg
IERhdmlkIEtpbHplciAgPGRka2lsemVyQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFJlbW92ZSBl
bXB0eSBkaXJlY3RvcmllcyBmcm9tIGZyb20gc3ZuLndlYmtpdC5vcmcgcmVwb3NpdG9yeQorKyAg
ICAgICAgPGh0dHBzOi8vd2Via2l0Lm9yZy9iLzE4OTA4MT4KKysKKysgICAgICAgICogc3JjL2Fu
Z2xlLnhjb2RlcHJvajogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2NvbW1vbi90aGlyZF9wYXJ0
eS9udW1lcmljczogUmVtb3ZlZC4KKysKKysyMDE4LTA4LTI4ICBEYXZpZCBLaWx6ZXIgIDxkZGtp
bHplckBhcHBsZS5jb20+CisrCisrICAgICAgICBNb3ZlIFBNdXJIYXNoLntjcHAsaH0gaW50byAn
c3JjJyBmb2xkZXIgdG8gbWF0Y2ggcGF0aCBvbiBkaXNrCisrCisrICAgICAgICAqIEFOR0xFLnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisrICAgICAgICAoc3JjL2NvbW1vbi90aGlyZF9wYXJ0
eS9zbWhhc2hlci9zcmMpOiBBZGQgZm9sZGVyIGFuZCBtb3ZlCisrICAgICAgICBQTXVySGFzaC57
Y3BwLGh9IGludG8gaXQuICBUaGlzIG1ha2VzIHRpZHktWGNvZGUtcHJvamVjdC1maWxlCisrICAg
ICAgICBydW4gc21vb3RobHkgd2hlbiB1cGRhdGluZyB0aGUgQU5HTEUgcHJvamVjdC4KKysKKysy
MDE4LTA4LTI3ICBLZWl0aCBSb2xsaW4gIDxrcm9sbGluQGFwcGxlLmNvbT4KKysKKysgICAgICAg
IFVucmV2aWV3ZWQgYnVpbGQgZml4IC0tIGRpc2FibGUgTFRPIGZvciBwcm9kdWN0aW9uIGJ1aWxk
cworKworKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnOgorKworKzIwMTgt
MDgtMjcgIEtlaXRoIFJvbGxpbiAgPGtyb2xsaW5AYXBwbGUuY29tPgorKworKyAgICAgICAgQnVp
bGQgc3lzdGVtIHN1cHBvcnQgZm9yIExUTworKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTE4Nzc4NQorKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzQyMzUz
MTMyPgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGFuIEJlcm5zdGVpbi4KKysKKysgICAgICAg
IFVwZGF0ZSBCYXNlLnhjY29uZmlnIGFuZCBEZWJ1Z1JlbGVhc2UueGNjb25maWcgdG8gb3B0aW9u
YWxseSBlbmFibGUKKysgICAgICAgIExUTy4KKysKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMv
QmFzZS54Y2NvbmZpZzoKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMvRGVidWdSZWxlYXNlLnhj
Y29uZmlnOgorKworKzIwMTgtMDgtMDMgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5A
d2Via2l0Lm9yZz4KKysKKysgICAgICAgIEZpeCBzcGVsbGluZyBvZiAib3ZlcnJpZGRlbiIKKysg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODgzMTUKKysK
KysgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgorKworKyAgICAgICAgKiBzcmMvbGli
QU5HTEUvcmVuZGVyZXIvUHJvZ3JhbUltcGwuaDoKKysKKysyMDE4LTA3LTE0ICBLb2NzZW4gQ2h1
bmcgIDxrb2NzZW5fY2h1bmdAYXBwbGUuY29tPgorKworKyAgICAgICAgRW5zdXJlIFdlYktpdCBz
dGFjayBpcyBhZC1ob2Mgc2lnbmVkCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTg3NjY3CisrCisrICAgICAgICBSZXZpZXdlZCBieSBBbGV4ZXkgUHJv
c2t1cnlha292LgorKworKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnOgor
KworKzIwMTgtMDctMDQgIFRpbSBIb3J0b24gIDx0aW1vdGh5X2hvcnRvbkBhcHBsZS5jb20+Cisr
CisrICAgICAgICBJbnRyb2R1Y2UgUExBVEZPUk0oSU9TTUFDKQorKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4NzMxNQorKworKyAgICAgICAgUmV2aWV3
ZWQgYnkgRGFuIEJlcm5zdGVpbi4KKysKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMvQmFzZS54
Y2NvbmZpZzoKKysKKysyMDE4LTA2LTA5ICBEYW4gQmVybnN0ZWluICA8bWl0ekBhcHBsZS5jb20+
CisrCisrICAgICAgICBbWGNvZGVdIENsZWFuIHVwIGFuZCBtb2Rlcm5pemUgc29tZSBidWlsZCBz
ZXR0aW5nIGRlZmluaXRpb25zCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTg2NDYzCisrCisrICAgICAgICBSZXZpZXdlZCBieSBTYW0gV2VpbmlnLgor
KworKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnOiBSZW1vdmVkIGRlZmlu
aXRpb24gZm9yIG1hY09TIDEwLjExLgorKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9EZWJ1Z1Jl
bGVhc2UueGNjb25maWc6IERpdHRvLgorKworKzIwMTgtMDUtMzAgIERhdmlkIEtpbHplciAgPGRk
a2lsemVyQGFwcGxlLmNvbT4KKysKKysgICAgICAgIEFOR0xFOiBGaXggY2xhbmcgc3RhdGljIGFu
YWx5emVyIGlzc3VlcyBpbiBHZXRFeGVjdXRhYmxlUGF0aCgpIGFuZCBHZXRFeGVjdXRhYmxlRGly
ZWN0b3J5KCkKKysgICAgICAgIDxodHRwczovL3dlYmtpdC5vcmcvYi8xODYxMDY+CisrICAgICAg
ICA8cmRhcjovL3Byb2JsZW0vNDA2NTkxNzk+CisrCisrICAgICAgICBSZXZpZXdlZCBieSBBbGV4
IENocmlzdGVuc2VuLgorKworKyAgICAgICAgKiBzcmMvY29tbW9uL3N5c3RlbV91dGlsc19saW51
eC5jcHA6CisrICAgICAgICAoYW5nbGU6OkdldEV4ZWN1dGFibGVQYXRoKToKKysgICAgICAgIChh
bmdsZTo6R2V0RXhlY3V0YWJsZURpcmVjdG9yeSk6CisrICAgICAgICAqIHNyYy9jb21tb24vc3lz
dGVtX3V0aWxzX21hYy5jcHA6CisrICAgICAgICAoYW5nbGU6OkdldEV4ZWN1dGFibGVQYXRoKToK
KysgICAgICAgIChhbmdsZTo6R2V0RXhlY3V0YWJsZURpcmVjdG9yeSk6CisrICAgICAgICAqIHNy
Yy9jb21tb24vc3lzdGVtX3V0aWxzX3dpbi5jcHA6CisrICAgICAgICAoYW5nbGU6OkdldEV4ZWN1
dGFibGVQYXRoKToKKysgICAgICAgIChhbmdsZTo6R2V0RXhlY3V0YWJsZURpcmVjdG9yeSk6Cisr
CisrMjAxOC0wNS0yMiAgUnlhbiBIYWRkYWQgIDxyeWFuaGFkZGFkQGFwcGxlLmNvbT4KKysKKysg
ICAgICAgIFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0IHIyMzIwNTIuCisrCisrICAgICAgICBCcmVh
a3MgaW50ZXJuYWwgYnVpbGRzLgorKworKyAgICAgICAgUmV2ZXJ0ZWQgY2hhbmdlc2V0OgorKwor
KyAgICAgICAgIlVzZSBtb3JlIEMrKzE3IgorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTE4NTE3NgorKyAgICAgICAgaHR0cHM6Ly90cmFjLndlYmtpdC5v
cmcvY2hhbmdlc2V0LzIzMjA1MgorKworKzIwMTgtMDUtMjEgIFl1c3VrZSBTdXp1a2kgIDx1dGF0
YW5lLnRlYUBnbWFpbC5jb20+CisrCisrICAgICAgICBVc2UgbW9yZSBDKysxNworKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4NTE3NgorKworKyAgICAg
ICAgUmV2aWV3ZWQgYnkgSkYgQmFzdGllbi4KKysKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMv
QmFzZS54Y2NvbmZpZzoKKysKKysyMDE4LTA0LTE4ICBKZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBw
bGUuY29tPgorKworKyAgICAgICAgRG9uJ3QgcHV0IGJ1aWxkIHByb2R1Y3RzIGludG8gV0tfQUxU
RVJOQVRFX1dFQktJVF9TREtfUEFUSCBmb3IgZW5naW5lZXJpbmcgYnVpbGRzCisrICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg0NzYyCisrCisrICAgICAg
ICBSZXZpZXdlZCBieSBEYW4gQmVybnN0ZWluLgorKworKyAgICAgICAgKiBDb25maWd1cmF0aW9u
cy9CYXNlLnhjY29uZmlnOgorKworKzIwMTgtMDQtMTkgIERhdmlkIEtpbHplciAgPGRka2lsemVy
QGFwcGxlLmNvbT4KKysKKysgICAgICAgIEVuYWJsZSBPYmplY3RpdmUtQyB3ZWFrIHJlZmVyZW5j
ZXMKKysgICAgICAgIDxodHRwczovL3dlYmtpdC5vcmcvYi8xODQ3ODk+CisrICAgICAgICA8cmRh
cjovL3Byb2JsZW0vMzk1NzE3MTY+CisrCisrICAgICAgICBSZXZpZXdlZCBieSBEYW4gQmVybnN0
ZWluLgorKworKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnOgorKyAgICAg
ICAgKENMQU5HX0VOQUJMRV9PQkpDX1dFQUspOiBFbmFibGUuCisrCisrMjAxOC0wMy0xOSAgQ2Fy
bG9zIEFsYmVydG8gTG9wZXogUGVyZXogIDxjbG9wZXpAaWdhbGlhLmNvbT4KKysKKysgICAgICAg
IFJFR1JFU1NJT04ocjIyNTM0MCk6IFdQRSBwb3J0IHNob3VsZCBub3QgYmUgZ2V0dGluZyBFR0wg
WDExIHR5cGVzIG9uIEFOR0xFCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTgzNzQ5CisrCisrICAgICAgICBSZXZpZXdlZCBieSBBbGV4IENocmlzdGVu
c2VuLgorKworKyAgICAgICAgQWRkIGJhY2sgdGhlIFVTRV9XUEUgaWZkZWYuCisrCisrICAgICAg
ICAqIGNoYW5nZXMuZGlmZjoKKysgICAgICAgICogaW5jbHVkZS9FR0wvZWdscGxhdGZvcm0uaDoK
KysKKysyMDE4LTAzLTE1ICBUaW0gSG9ydG9uICA8dGltb3RoeV9ob3J0b25AYXBwbGUuY29tPgor
KworKyAgICAgICAgQWRkIGFuZCBhZG9wdCBXS19BTFRFUk5BVEVfRlJBTUVXT1JLU19ESVIgaW4g
QU5HTEUKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
ODM2NzUKKysgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8zODUxNTI4MT4KKysKKysgICAgICAgIFJl
dmlld2VkIGJ5IERhbiBCZXJuc3RlaW4uCisrCisrICAgICAgICAqIEFOR0xFLnhjb2RlcHJvai9w
cm9qZWN0LnBieHByb2o6CisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0FOR0xFLnhjY29uZmln
OgorKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnOgorKworKzIwMTgtMDEt
MjcgIERhbiBCZXJuc3RlaW4gIDxtaXR6QGFwcGxlLmNvbT4KKysKKysgICAgICAgIEhhdmVJbnRl
cm5hbFNESyBpbmNsdWRlcyBzaG91bGQgYmUgIiNpbmNsdWRlPyIKKysgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzk2NzAKKysKKysgICAgICAgICogQ29u
ZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZzoKKysKKysyMDE4LTAxLTE4ICBEYW4gQmVybnN0ZWlu
ICA8bWl0ekBhcHBsZS5jb20+CisrCisrICAgICAgICBbWGNvZGVdIFN0cmVhbWxpbmUgYW5kIGZ1
dHVyZS1wcm9vZiB0YXJnZXQtbWFjT1MtdmVyc2lvbi1kZXBlbmRlbnQgYnVpbGQgc2V0dGluZyBk
ZWZpbml0aW9ucworKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTE4MTgwMworKworKyAgICAgICAgUmV2aWV3ZWQgYnkgVGltIEhvcnRvbi4KKysKKysgICAg
ICAgICogQ29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZzogVXBkYXRlZC4KKysgICAgICAgICog
Q29uZmlndXJhdGlvbnMvRGVidWdSZWxlYXNlLnhjY29uZmlnOiBEaXR0by4KKysKKysyMDE4LTAx
LTA5ICBEYW4gQmVybnN0ZWluICA8bWl0ekBhcHBsZS5jb20+CisrCisrICAgICAgICBSZW1vdmVk
IHNvbWUgZW1wdHkgZGlyZWN0b3JpZXMgdGhhdCB3ZXJlIGxlZnQgYmVoaW5kCisrCisrICAgICAg
ICAqIHNyYy90aGlyZF9wYXJ0eS9tdXJtdXJoYXNoOiBSZW1vdmVkLgorKyAgICAgICAgKiB0aGly
ZF9wYXJ0eTogUmVtb3ZlZC4KKysgICAgICAgICogdGhpcmRfcGFydHkvZGVxcDogUmVtb3ZlZC4K
KysKKysyMDE3LTEyLTE0ICBEYXZpZCBLaWx6ZXIgIDxkZGtpbHplckBhcHBsZS5jb20+CisrCisr
ICAgICAgICBFbmFibGUgLVdzdHJpY3QtcHJvdG90eXBlcyBmb3IgV2ViS2l0CisrICAgICAgICA8
aHR0cHM6Ly93ZWJraXQub3JnL2IvMTgwNzU3PgorKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzM2
MDI0MTMyPgorKworKyAgICAgICAgUnViYmVyLXN0YW1wZWQgYnkgSm9zZXBoIFBlY29yYXJvLgor
KworKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnOgorKyAgICAgICAgKENM
QU5HX1dBUk5fU1RSSUNUX1BST1RPVFlQRVMpOiBBZGQuIFNldCB0byBZRVMuCisrCisrMjAxNy0x
Mi0wNiAgRGVhbiBKYWNrc29uICA8ZGlub0BhcHBsZS5jb20+CisrCisrICAgICAgICBVcGRhdGUg
QU5HTEUncyBjaGFuZ2VzLmRpZmYKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xODA0OTEKKysKKysgICAgICAgIFJldmlld2VkIGJ5IEFudG9pbmUgUXVp
bnQuCisrCisrICAgICAgICBIZXJlIGlzIHRoZSBsaXN0IG9mIHRoaW5ncyB3ZSd2ZSBjaGFuZ2Vk
IGZyb20gdGhlCisrICAgICAgICBBTkdMRSBjb21taXQgdGhhdCB3ZSBtZXJnZWQgaW4uCisrCisr
ICAgICAgICAqIGNoYW5nZXMuZGlmZjoKKysKKysyMDE3LTEyLTA2ICBEZWFuIEphY2tzb24gIDxk
aW5vQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFNvbWUgaU9TIHRlc3RzIGZhaWxpbmcgYWZ0ZXIg
QU5HTEUgdXBkYXRlCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTgwNDg3CisrICAgICAgICA8cmRhcjovL3Byb2JsZW0vMzU4ODU5Njk+CisrCisrICAg
ICAgICBSZXZpZXdlZCBieSBBbnRvaW5lIFF1aW50LgorKworKyAgICAgICAgVGhlIGlPUyBPcGVu
R0wgY29tcGlsZXIgZG9lc24ndCBsaWtlIGZ1bmN0aW9uIGRlY2xhcmF0aW9ucyB3aXRoCisrICAg
ICAgICBuYW1lbGVzcyBhcnJheSBwYXJhbWV0ZXJzLiBTZWU6CisrICAgICAgICA8cmRhcjovL3By
b2JsZW0vMzU4ODU5ODk+IE5hbWVsZXNzIGFycmF5IHBhcmFtZXRlcnMgaW4gZnVuY3Rpb24gZGVj
bGFyYXRpb24gY2F1c2UgY29tcGlsZXIgZXJyb3IKKysKKysgICAgICAgIFdoaWxlIHRoYXQgaXMg
YmVpbmcgZml4ZWQsIHRlbGwgQU5HTEUncyB0cmFuc2xhdG9yIHRvIG5vdCBjdWxsCisrICAgICAg
ICB0aGUgbmFtZXMgZnJvbSBwYXJhbWV0ZXJzLiBUaGlzIGlzIG5vdCBhIGJ1ZyBpbiBBTkdMRSwg
c28gd2Ugd29uJ3QKKysgICAgICAgIGZpeCBpdCB1cHN0cmVhbSBhdCB0aGUgbW9tZW50LgorKwor
KyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9QYXJzZUNvbnRleHQuY3BwOgorKyAg
ICAgICAgKHNoOjpUUGFyc2VDb250ZXh0OjphZGRGdW5jdGlvblByb3RvdHlwZURlY2xhcmF0aW9u
KToKKysKKysyMDE3LTEyLTAxICBNaWNoYWVsIENhdGFuemFybyAgPG1jYXRhbnphcm9AaWdhbGlh
LmNvbT4KKysKKysgICAgICAgIFVucmV2aWV3ZWQsIGZpeCBieXRlIG9yZGVyIG1hY3JvcyBhbmQg
YWRkcmVzcyBuZXcgLVd1bmtub3duLXByYWdtYXMgd2FybmluZ3MKKysgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODAxNzcKKysgICAgICAgIDxyZGFyOi8v
cHJvYmxlbS8zNTc3NDczND4KKysKKysgICAgICAgIEknbSBub3Qgc3VyZSBob3cgdGhpcyBjb2Rl
IHdhcyBkZXZlbG9wZWQsIGFzIGl0IHNlZW1zIHRvIGhhdmUgYmVlbiBkZXNpZ25lZCBmb3IgR0ND
LCBidXQgaXQKKysgICAgICAgIGRvZXMgbm90IHVzZSBhbnkgb2YgR0NDJ3MgZG9jdW1lbnRlZCBi
eXRlIG9yZGVyIG1hY3JvcywgYW5kIGFjY29yZGluZ2x5IGRvZXMgbm90IHdvcmsuIExldCdzCisr
ICAgICAgICBmaXggaXQgdG8gZ3VhcmFudGVlIHRoZXJlIGFyZSBubyBwcm9ibGVtcyB3aGVuIGJ1
aWxkaW5nIHdpdGggR0NDLiBJIHByZXN1bWUgaXQgc2hvdWxkIGhlbHAKKysgICAgICAgIENsYW5n
IGFzIHdlbGwuCisrCisrICAgICAgICBUaGlzIHRpbWUsIGhvcGVmdWxseSB3aXRob3V0IGJyZWFr
aW5nIDMyLWJpdCBtYWNPUywgd2hlcmUgX19CWVRFX09SREVSIGFjdHVhbGx5IGlzIGRlZmluZWQu
CisrCisrICAgICAgICAqIHNyYy9jb21tb24vdGhpcmRfcGFydHkvc21oYXNoZXIvc3JjL1BNdXJI
YXNoLmNwcDoKKysgICAgICAgIChhbmdsZTo6UE11ckhhc2gzMl9Qcm9jZXNzKToKKysKKysyMDE3
LTEyLTAxICBSeWFuIEhhZGRhZCAgPHJ5YW5oYWRkYWRAYXBwbGUuY29tPgorKworKyAgICAgICAg
VW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjIyNTQxMi4KKysKKysgICAgICAgIEJyZWFrcyAzMi1i
aXQgbWFjT1MgYnVpbGRzLgorKworKyAgICAgICAgUmV2ZXJ0ZWQgY2hhbmdlc2V0OgorKworKyAg
ICAgICAgIlVucmV2aWV3ZWQsIGZpeCBieXRlIG9yZGVyIG1hY3JvcyBhbmQgYWRkcmVzcyBuZXcg
LVd1bmtub3duLQorKyAgICAgICAgcHJhZ21hcyB3YXJuaW5ncyIKKysgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODAxNzcKKysgICAgICAgIGh0dHBzOi8v
dHJhYy53ZWJraXQub3JnL2NoYW5nZXNldC8yMjU0MTIKKysKKysyMDE3LTEyLTAxICBNaWNoYWVs
IENhdGFuemFybyAgPG1jYXRhbnphcm9AaWdhbGlhLmNvbT4KKysKKysgICAgICAgIFVucmV2aWV3
ZWQsIGZpeCBieXRlIG9yZGVyIG1hY3JvcyBhbmQgYWRkcmVzcyBuZXcgLVd1bmtub3duLXByYWdt
YXMgd2FybmluZ3MKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0xODAxNzcKKysgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8zNTc3NDczND4KKysKKysgICAg
ICAgIEknbSBub3Qgc3VyZSBob3cgdGhpcyBjb2RlIHdhcyBkZXZlbG9wZWQsIGFzIGl0IHNlZW1z
IHRvIGhhdmUgYmVlbiBkZXNpZ25lZCBmb3IgR0NDLCBidXQgaXQKKysgICAgICAgIGRvZXMgbm90
IHVzZSBhbnkgb2YgR0NDJ3MgZG9jdW1lbnRlZCBieXRlIG9yZGVyIG1hY3JvcywgYW5kIGFjY29y
ZGluZ2x5IGRvZXMgbm90IHdvcmsuIExldCdzCisrICAgICAgICBmaXggaXQgdG8gZ3VhcmFudGVl
IHRoZXJlIGFyZSBubyBwcm9ibGVtcyB3aGVuIGJ1aWxkaW5nIHdpdGggR0NDLiBJIHByZXN1bWUg
aXQgc2hvdWxkIGhlbHAKKysgICAgICAgIENsYW5nIGFzIHdlbGwuCisrCisrICAgICAgICAqIHNy
Yy9jb21tb24vdGhpcmRfcGFydHkvc21oYXNoZXIvc3JjL1BNdXJIYXNoLmNwcDoKKysgICAgICAg
IChhbmdsZTo6UE11ckhhc2gzMl9Qcm9jZXNzKToKKysKKysyMDE3LTEyLTAxICBUb21va2kgSW1h
aSAgPFRvbW9raS5JbWFpQHNvbnkuY29tPgorKworKyAgICAgICAgRml4IFdpbkNhaXJvIGJ1aWxk
IGJyZWFrIGFmdGVyIHIyMjUzNDAKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xODAyMzAKKysKKysgICAgICAgIFVucmV2aWV3ZWQgYnVpbGQgZml4Lgor
KworKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDogQWRkIG1pc3Npbmcgc291cmNlcy4KKysgICAg
ICAgICogUGxhdGZvcm1XaW4uY21ha2U6IEFkZCBtaXNzaW5nIHNvdXJjZXMuCisrCisrMjAxNy0x
Mi0wMSAgTWljaGFlbCBDYXRhbnphcm8gIDxtY2F0YW56YXJvQGlnYWxpYS5jb20+CisrCisrICAg
ICAgICBVbnJldmlld2VkLCBmaXggLVd1bmtub3duLXByYWdtYXMgd2FybmluZ3MuCisrICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTgwMTc3CisrCisrICAg
ICAgICBJdCBzZWVtcyBHQ0MgaGFzIHN0YXJ0ZWQgdG8gd2FybiBhYm91dCB1bnJlY29nbml6ZWQg
Q2xhbmcgcHJhZ21hcy4gT2ggd2VsbC4KKysKKysgICAgICAgIFRoaXMgaXMgbm90IHNlbnQgdXBz
dHJlYW0sIGJlY2F1c2UgdGhlIENsYW5nIHByYWdtYXMgYXBwZWFyIHRvIGJlIGRvd25zdHJlYW0g
V2ViS2l0CisrICAgICAgICBhZGRpdGlvbnMuIGNoYW5nZXMuZGlmZiBpcyBub3QgdXBkYXRlZCwg
YmVjYXVzZSBpdCB3YXMgbm90IHVwZGF0ZWQgaW4geWVzdGVyZGF5J3MgQU5HTEUKKysgICAgICAg
IHVwZGF0ZS4KKysKKysgICAgICAgICogaW5jbHVkZS9HTFNMQU5HL1NoYWRlclZhcnMuaDoKKysg
ICAgICAgICogc3JjL2xpYkFOR0xFL1BsYXRmb3JtLmNwcDoKKysKKysyMDE3LTExLTMwICBBbGV4
IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisrCisrICAgICAgICBTcGVj
dWxhdGl2ZSBXaW5DYWlybyBmaXguCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTgwMTc3CisrCisrICAgICAgICAqIENNYWtlTGlzdHMudHh0OgorKyAg
ICAgICAgKiBQbGF0Zm9ybVdpbi5jbWFrZToKKysKKysyMDE3LTExLTMwICBSeWFuIEhhZGRhZCAg
PHJ5YW5oYWRkYWRAYXBwbGUuY29tPgorKworKyAgICAgICAgVW5yZXZpZXdlZCBidWlsZCBmaXgs
IHJlbW92ZSBleGVjdXRhYmxlIHByb3BlcnR5IGZyb20gYSBoZWFkZXIgZmlsZS4KKysKKysgICAg
ICAgICogaW5jbHVkZS9LSFIva2hycGxhdGZvcm0uaDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46ZXhl
Y3V0YWJsZS4KKysKKysyMDE3LTExLTMwICBEZWFuIEphY2tzb24gIDxkaW5vQGFwcGxlLmNvbT4K
KysKKysgICAgICAgIFVwZGF0ZSBBTkdMRQorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTE4MDE3NworKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzM1Nzc0
NzM0PgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgQWxleCBDaHJpc3RlbnNlbi4KKysKKysgICAg
ICAgIEh1Z2UgbGlzdCBvZiBjaGFuZ2VkIGZpbGVzIG9taXR0ZWQuCisrCisrMjAxNy0wNy0xOCAg
QW5keSBFc3RlcyAgPGFlc3Rlc0BhcHBsZS5jb20+CisrCisrICAgICAgICBbWGNvZGVdIEVuYWJs
ZSBDTEFOR19XQVJOX1JBTkdFX0xPT1BfQU5BTFlTSVMKKysgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzQ2MzEKKysKKysgICAgICAgIFJldmlld2VkIGJ5
IFRpbSBIb3J0b24uCisrCisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWc6
CisrCisrMjAxNy0wNy0xOCAgQW5keSBFc3RlcyAgPGFlc3Rlc0BhcHBsZS5jb20+CisrCisrICAg
ICAgICBbWGNvZGVdIEVuYWJsZSBDTEFOR19XQVJOX09CSkNfTElURVJBTF9DT05WRVJTSU9OCisr
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc0NjMxCisr
CisrICAgICAgICBSZXZpZXdlZCBieSBTYW0gV2VpbmlnLgorKworKyAgICAgICAgKiBDb25maWd1
cmF0aW9ucy9CYXNlLnhjY29uZmlnOgorKworKzIwMTctMDctMTggIEFuZHkgRXN0ZXMgIDxhZXN0
ZXNAYXBwbGUuY29tPgorKworKyAgICAgICAgW1hjb2RlXSBFbmFibGUgQ0xBTkdfV0FSTl9OT05f
TElURVJBTF9OVUxMX0NPTlZFUlNJT04KKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0xNzQ2MzEKKysKKysgICAgICAgIFJldmlld2VkIGJ5IERhbiBCZXJu
c3RlaW4uCisrCisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWc6CisrCisr
MjAxNy0wNy0xOCAgQW5keSBFc3RlcyAgPGFlc3Rlc0BhcHBsZS5jb20+CisrCisrICAgICAgICBb
WGNvZGVdIEVuYWJsZSBDTEFOR19XQVJOX0JMT0NLX0NBUFRVUkVfQVVUT1JFTEVBU0lORworKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3NDYzMQorKwor
KyAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIuCisrCisrICAgICAgICAqIENvbmZpZ3Vy
YXRpb25zL0Jhc2UueGNjb25maWc6CisrCisrMjAxNy0wNy0xMyAgQWRyaWFuIFBlcmV6IGRlIENh
c3RybyAgPGFwZXJlekBpZ2FsaWEuY29tPgorKworKyAgICAgICAgZWdscGxhdGZvcm0uaCBkb2Vz
IG5vdCBzdXBwb3J0IFdheWxhbmQKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xNjM0ODIKKysKKysgICAgICAgIFRoaXMgbWFrZXMgaXQgcG9zc2libGUg
dG8gYnVpbGQgV2ViS2l0R1RLKyB3aGVuIHRoZSB0YXJnZXQgc3lzdGVtIGhhcyBvbmx5IFdheWxh
bmQgc3VwcG9ydCwKKysgICAgICAgIGJ1dCBubyBYMTEgKGFuZCB0aGVyZWZvcmUgdGhlIFgxMSBo
ZWFkZXJzIGFyZSBub3QgcHJlc2VudCkuCisrCisrICAgICAgICBSZXZpZXdlZCBieSBBbGV4IENo
cmlzdGVuc2VuLgorKworKyAgICAgICAgKiBpbmNsdWRlL0VHTC9lZ2xwbGF0Zm9ybS5oOiBBZGQg
V2F5bGFuZCB0eXBlZGVmcyB3aGVuIFdMX0VHTF9QTEFURk9STSBpcyBkZWZpbmVkIChmb3IgZXhh
bXBsZQorKyAgICAgICAgYnkgaW5jbHVkaW5nIHdheWxhbmQtZWdsLmggYmVmb3JlIGluY2x1ZGlu
ZyBFR0wvZWdsLmgpLiBBbHNvLCBpbmNsdWRlIHRoZSBYMTEgaGVhZGVycyBvbmx5CisrICAgICAg
ICB3aGVuIEFOR0xFX1VTRV9YMTEgaXMgZGVmaW5lZCBhbmQsIGZvciBjb25zaXN0ZW5jeSB3aXRo
IE1lc2EncyB2ZXJzaW9uIG9mIHRoZSBoZWFkZXIsIHdoZW4KKysgICAgICAgIE1FU0FfRUdMX05P
X1gxMV9IRUFERVJTIGlzIG5vdCBkZWZpbmVkLgorKworKzIwMTctMDctMDMgIEFuZHkgRXN0ZXMg
IDxhZXN0ZXNAYXBwbGUuY29tPgorKworKyAgICAgICAgW1hjb2RlXSBBZGQgYW4gZXhwZXJpbWVu
dGFsIHNldHRpbmcgdG8gYnVpbGQgd2l0aCBjY2FjaGUKKysgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzM4NzUKKysKKysgICAgICAgIFJldmlld2VkIGJ5
IFRpbSBIb3J0b24uCisrCisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0RlYnVnUmVsZWFzZS54
Y2NvbmZpZzogSW5jbHVkZWQgY2NhY2hlLnhjY29uZmlnLgorKworKzIwMTctMDctMDEgIERhbiBC
ZXJuc3RlaW4gIDxtaXR6QGFwcGxlLmNvbT4KKysKKysgICAgICAgIFttYWNPU10gUmVtb3ZlIGNv
ZGUgb25seSBuZWVkZWQgd2hlbiBidWlsZGluZyBmb3IgT1MgWCBZb3NlbWl0ZQorKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3NDA2NworKworKyAgICAg
ICAgUmV2aWV3ZWQgYnkgVGltIEhvcnRvbi4KKysKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMv
QmFzZS54Y2NvbmZpZzoKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMvRGVidWdSZWxlYXNlLnhj
Y29uZmlnOgorKworKzIwMTctMDYtMTAgIERhbiBCZXJuc3RlaW4gIDxtaXR6QGFwcGxlLmNvbT4K
KysKKysgICAgICAgIFJldmVydGVkIHIyMTgwNTYgYmVjYXVzZSBpdCBtYWRlIHRoZSBJREUgcmVp
bmRleCBjb25zdGFudGx5LgorKworKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9EZWJ1Z1JlbGVh
c2UueGNjb25maWc6CisrCisrMjAxNy0wNi0xMCAgRGFuIEJlcm5zdGVpbiAgPG1pdHpAYXBwbGUu
Y29tPgorKworKyAgICAgICAgW1hjb2RlXSBXaXRoIFhjb2RlIDkgZGV2ZWxvcGVyIGJldGEsIGV2
ZXJ5dGhpbmcgcmVidWlsZHMgd2hlbiBzd2l0Y2hpbmcgYmV0d2VlbiBjb21tYW5kLWxpbmUgYW5k
IElERQorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3
MzIyMworKworKyAgICAgICAgUmV2aWV3ZWQgYnkgU2FtIFdlaW5pZy4KKysKKysgICAgICAgIFRo
ZSByZWJ1aWxkcyB3ZXJlIGhhcHBlbmluZyBkdWUgdG8gYSBkaWZmZXJlbmNlIGluIHRoZSBjb21w
aWxlciBvcHRpb25zIHRoYXQgdGhlIElERSBhbmQKKysgICAgICAgIHhjb2RlYnVpbGQgd2VyZSBz
cGVjaWZ5aW5nLiBPbmx5IHRoZSBJREUgd2FzIHBhc3NpbmcgdGhlIC1pbmRleC1zdG9yZS1wYXRo
IG9wdGlvbi4gVG8gbWFrZQorKyAgICAgICAgeGNvZGVidWlsZCBwYXNzIHRoYXQgb3B0aW9uLCB0
b28sIHNldCBDTEFOR19JTkRFWF9TVE9SRV9FTkFCTEUgdG8gWUVTIGlmIGl0IGlzIHVuc2V0LCBh
bmQKKysgICAgICAgIHNwZWNpZnkgYW4gYXBwcm9wcmlhdGUgcGF0aCBpbiBDTEFOR19JTkRFWF9T
VE9SRV9QQVRILgorKworKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9EZWJ1Z1JlbGVhc2UueGNj
b25maWc6CisrCisrMjAxNy0wNS0yOCAgRGFuIEJlcm5zdGVpbiAgPG1pdHpAYXBwbGUuY29tPgor
KworKyAgICAgICAgW1hjb2RlXSBBTFdBWVNfU0VBUkNIX1VTRVJfUEFUSFMgaXMgc2V0IHRvIFlF
UworKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3MjY5
MQorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgVGltIEhvcnRvbi4KKysKKysgICAgICAgICogQ29u
ZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZzogU2V0IEFMV0FZU19TRUFSQ0hfVVNFUl9QQVRIUyB0
byBOTy4KKysKKysyMDE3LTA1LTA5ICBaYW4gRG9iZXJzZWsgIDx6ZG9iZXJzZWtAaWdhbGlhLmNv
bT4KKysKKysgICAgICAgIFVwc3RyZWFtIHRoZSBXUEUgcG9ydAorKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3MTExMAorKworKyAgICAgICAgUmV2aWV3
ZWQgYnkgQWxleCBDaHJpc3RlbnNlbi4KKysKKysgICAgICAgICogaW5jbHVkZS9FR0wvZWdscGxh
dGZvcm0uaDoKKysgICAgICAgIEFsbG93IGJ1aWxkaW5nIFdQRSBvbiBwbGF0Zm9ybXMgdGhhdCBk
b24ndCBwcm92aWRlIFgxMSBsaWJyYXJpZXMuCisrCisrMjAxNy0wNS0wNCAgRG9uIE9sbXN0ZWFk
ICA8ZG9uLm9sbXN0ZWFkQGFtLnNvbnkuY29tPgorKworKyAgICAgICAgW1dpbl0gUmVtb3ZlIHJl
ZHVuZGFudCBtYWNyb3MgdGhhdCBhcmUgc2V0IGluIHRoZSBDTWFrZSBjb25maWcKKysgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzE1NzEKKysKKysgICAg
ICAgIFJldmlld2VkIGJ5IEJyZW50IEZ1bGdoYW0uCisrCisrICAgICAgICAqIENNYWtlTGlzdHMu
dHh0OgorKworKzIwMTctMDQtMjAgIEtvbnN0YW50aW4gVG9rYXJldiAgPGFubnVsZW5AeWFuZGV4
LnJ1PgorKworKyAgICAgICAgW2NtYWtlXSBEZWZpbmUgRk9SV0FSRElOR19IRUFERVJTX0RJUiBp
biBXZWJLaXRGUyBhbmQgdXNlIGl0IGV2ZXJ5d2hlcmUKKysgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzEwNzEKKysKKysgICAgICAgIFJldmlld2VkIGJ5
IE1pY2hhZWwgQ2F0YW56YXJvLgorKworKyAgICAgICAgIiR7REVSSVZFRF9TT1VSQ0VTX0RJUn0v
Rm9yd2FyZGluZ0hlYWRlcnMiIHBhdGggb2NjdXJzIHZlcnkgb2Z0ZW4gaW4gdGhlCisrICAgICAg
ICBidWlsZCBzeXN0ZW0gZmlsZXMuIEdUSy1zcGVjaWZjIEZPUldBUkRJTkdfSEVBREVSU19ESVIg
dmFyaWFibGUgc2hvdWxkCisrICAgICAgICBiZSBhdmFpbGFibGUgZm9yIGFsbCBwb3J0cy4KKysK
KysgICAgICAgICogQ01ha2VMaXN0cy50eHQ6CisrCisrMjAxNy0wNC0yMCAgRnVqaWkgSGlyb25v
cmkgIDxIaXJvbm9yaS5GdWppaUBzb255LmNvbT4KKysKKysgICAgICAgIFtXaW5DYWlyb10gRml4
IGJ1aWxkIGJyZWFrIGFmdGVyIHVwZGF0aW5nIEFOR0xFCisrICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTcwOTgwCisrCisrICAgICAgICBSZXZpZXdlZCBi
eSBCcmVudCBGdWxnaGFtLgorKworKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDogQWRkZWQgc29t
ZSBuZXcgc291cmNlIGZpbGVzLgorKyAgICAgICAgKiBQbGF0Zm9ybU1hYy5jbWFrZTogRGl0dG8u
CisrICAgICAgICAqIFBsYXRmb3JtV2luLmNtYWtlOiBEaXR0by4gUmVtb3ZlIGEgbWFjcm8gJ0FO
R0xFX1dFQktJVF9XSU4nCisrICAgICAgICBiZWNhdXNlIFNvZnRMaW5raW5nIGlzIG5vdCB1c2Vk
IGFueW1vcmUuCisrICAgICAgICAqIHNyYy90aGlyZF9wYXJ0eS9zeXN0ZW1pbmZvLzogUmVzdG9y
ZWQuCisrCisrMjAxNy0wNC0xOSAgUnlhbiBIYWRkYWQgIDxyeWFuaGFkZGFkQGFwcGxlLmNvbT4K
KysKKysgICAgICAgIFJlbW92ZSBleGVjdXRhYmxlIHByb3BlcnR5IGZyb20gYSBoZWFkZXIgZmls
ZS4KKysKKysgICAgICAgICogaW5jbHVkZS9LSFIva2hycGxhdGZvcm0uaDogUmVtb3ZlZCBwcm9w
ZXJ0eSBzdm46ZXhlY3V0YWJsZS4KKysKKysyMDE3LTA0LTE4ICBEZWFuIEphY2tzb24gIDxkaW5v
QGFwcGxlLmNvbT4KKysKKysgICAgICAgIEFkZCB0aGUgYWN0dWFsIGNvbnRlbnQgdG8gdGhlIGZp
bGVzLCBub3cgdGhhdAorKyAgICAgICAgU1ZOIGtub3dzIHRoZXkgY2FuIGhhdmUgdGFicy4KKysK
KysgICAgICAgICogc3JjL3RoaXJkX3BhcnR5L211cm11cmhhc2gvTXVybXVySGFzaDMuY3BwOgor
KyAgICAgICAgKiBzcmMvdGhpcmRfcGFydHkvbXVybXVyaGFzaC9NdXJtdXJIYXNoMy5oOgorKwor
KzIwMTctMDQtMTggIERlYW4gSmFja3NvbiAgPGRpbm9AYXBwbGUuY29tPgorKworKyAgICAgICAg
V2luQ2Fpcm8gbmVlZHMgdGhlc2UgZmlsZXMgSSByZWNlbnRseSByZW1vdmVkCisrICAgICAgICBm
cm9tIG91ciBjb3B5IG9mIEFOR0xFLgorKworKyAgICAgICAgKiBzcmMvdGhpcmRfcGFydHkvbXVy
bXVyaGFzaC9MSUNFTlNFOiBBZGRlZC4KKysgICAgICAgICogc3JjL3RoaXJkX3BhcnR5L211cm11
cmhhc2gvTXVybXVySGFzaDMuY3BwOiBBZGRlZC4KKysgICAgICAgICogc3JjL3RoaXJkX3BhcnR5
L211cm11cmhhc2gvTXVybXVySGFzaDMuaDogQWRkZWQuCisrCisrMjAxNy0wNC0xOCAgRGVhbiBK
YWNrc29uICA8ZGlub0BhcHBsZS5jb20+CisrCisrICAgICAgICBTdGlsbCB0cnlpbmcgdG8gZml4
IFdpbmRvd3MuCisrCisrICAgICAgICAqIFBsYXRmb3JtV2luLmNtYWtlOgorKworKzIwMTctMDQt
MTggIERlYW4gSmFja3NvbiAgPGRpbm9AYXBwbGUuY29tPgorKworKyAgICAgICAgQXR0ZW1wdCB0
byBmaXggdGhlIFdpbmRvd3MgYnVpbGQuCisrCisrICAgICAgICAqIFBsYXRmb3JtV2luLmNtYWtl
OgorKworKzIwMTctMDQtMTggIERlYW4gSmFja3NvbiAgPGRpbm9AYXBwbGUuY29tPgorKworKyAg
ICAgICAgVXBkYXRlIEFOR0xFCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTcwOTQxCisrICAgICAgICA8cmRhcjovL3Byb2JsZW0vMzE2MzM5OTk+Cisr
CisrICAgICAgICBSZXZpZXdlZCBieSBBbGV4IENocmlzdGVuc2VuLgorKworKyAgICAgICAgSHVn
ZSBsaXN0IG9mIGNoYW5nZWQgZmlsZXMgb21pdHRlZC4KKysKKysyMDE3LTA0LTEyICBEYW4gQmVy
bnN0ZWluICA8bWl0ekBhcHBsZS5jb20+CisrCisrICAgICAgICBbTWFjXSBGdXR1cmUtcHJvb2Yg
LnhjY29uZmlnIGZpbGVzCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTcwODAyCisrCisrICAgICAgICBSZXZpZXdlZCBieSBUaW0gSG9ydG9uLgorKwor
KyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnOgorKyAgICAgICAgKiBDb25m
aWd1cmF0aW9ucy9EZWJ1Z1JlbGVhc2UueGNjb25maWc6CisrCisrMjAxNi0xMi0yMCAgVGltIEhv
cnRvbiAgPHRpbW90aHlfaG9ydG9uQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFJlbW92ZSBhbiBB
TkdMRSBNYXJrZG93biBmaWxlIGZyb20gdGhlIEFOR0xFIHRhcmdldAorKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2NjI3OQorKworKyAgICAgICAgUmV2
aWV3ZWQgYnkgQWxleCBDaHJpc3RlbnNlbi4KKysKKysgICAgICAgICogQU5HTEUueGNvZGVwcm9q
L3Byb2plY3QucGJ4cHJvajoKKysgICAgICAgIFdlIGRvbid0IG5lZWQgdG8gYnVpbGQgdGhpcywg
aXQncyBub3Qgc291cmNlIGNvZGUuCisrCisrMjAxNi0xMi0xNSAgTXlsZXMgQy4gTWF4ZmllbGQg
IDxtbWF4ZmllbGRAYXBwbGUuY29tPgorKworKyAgICAgICAgU29ydCBYY29kZSBwcm9qZWN0IGZp
bGVzCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY1
OTM3CisrCisrICAgICAgICBSZXZpZXdlZCBieSBTaW1vbiBGcmFzZXIuCisrCisrICAgICAgICAq
IEFOR0xFLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisrCisrMjAxNi0xMi0xNSAgQWxleCBD
aHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgorKworKyAgICAgICAgRml4IFdp
bmRvd3MgV2ViR0wgYnVpbGQgYWZ0ZXIgcjIwOTgzMgorKworKyAgICAgICAgKiBDTWFrZUxpc3Rz
LnR4dDoKKysgICAgICAgICogaW5jbHVkZS9FR0wvZWdsLmg6CisrICAgICAgICAqIGluY2x1ZGUv
R0xFUzIvZ2wyLmg6CisrCisrMjAxNi0xMi0xNCAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3Rl
bnNlbkB3ZWJraXQub3JnPgorKworKyAgICAgICAgUHJvZ3Jlc3MgdG93YXJkcyB1c2luZyBBTkdM
RSB0byBkbyBXZWJHTCByZW5kZXJpbmcKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0xNjU4NjQKKysKKysgICAgICAgIFJldmlld2VkIGJ5IERlYW4gSmFj
a3Nvbi4KKysKKysgICAgICAgICogQU5HTEUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKysg
ICAgICAgIENvbXBpbGUgbW9yZSBmaWxlcywgYW5kIGFkZCBzb21lIG1vcmUgInB1YmxpYyIgaGVh
ZGVycy4KKysgICAgICAgIEFOR0xFIGlzIG5vdCBhIHB1YmxpYyBmcmFtZXdvcmssIHNvIHRoZXNl
IGhlYWRlcnMganVzdCBnbyBpbiAKKysgICAgICAgIFdlYktpdEJ1aWxkL1JlbGVhc2UvdXNyL2xv
Y2FsL2luY2x1ZGUvQU5HTEUgdG8gYmUgaW5jbHVkZWQgd2hlbiBjb21waWxpbmcgV2ViQ29yZS4K
KysgICAgICAgICogQU5HTEUvZWdsLmg6IEFkZGVkLgorKyAgICAgICAgKiBBTkdMRS9lZ2xleHQu
aDogQWRkZWQuCisrICAgICAgICAqIEFOR0xFL2VnbHBsYXRmb3JtLmg6IEFkZGVkLgorKyAgICAg
ICAgKiBBTkdMRS9lbnRyeV9wb2ludHNfZ2xlc18yXzAuaDogQWRkZWQuCisrICAgICAgICAqIEFO
R0xFL2VudHJ5X3BvaW50c19nbGVzXzJfMF9leHQuaDogQWRkZWQuCisrICAgICAgICAqIEFOR0xF
L2VudHJ5X3BvaW50c19nbGVzXzNfMC5oOiBBZGRlZC4KKysgICAgICAgICogQU5HTEUvZXhwb3J0
Lmg6IEFkZGVkLgorKyAgICAgICAgKiBBTkdMRS9nbDIuaDogQWRkZWQuCisrICAgICAgICAqIEFO
R0xFL2dsMmV4dC5oOiBBZGRlZC4KKysgICAgICAgICogQU5HTEUvZ2wycGxhdGZvcm0uaDogQWRk
ZWQuCisrICAgICAgICAqIEFOR0xFL2dsMy5oOiBBZGRlZC4KKysgICAgICAgICogQU5HTEUvZ2wz
MS5oOiBBZGRlZC4KKysgICAgICAgICogQU5HTEUvZ2wzcGxhdGZvcm0uaDogQWRkZWQuCisrICAg
ICAgICAqIEFOR0xFL2tocnBsYXRmb3JtLmg6IEFkZGVkLgorKyAgICAgICAgQWRkIG1vcmUgZm9y
d2FyZGluZyBoZWFkZXJzLiAgVGhlcmUgYXJlIGFscmVhZHkgYSBmZXcsIGJ1dCB3ZSBuZWVkIG1v
cmUuCisrICAgICAgICAqIENNYWtlTGlzdHMudHh0OgorKyAgICAgICAgKiBQbGF0Zm9ybU1hYy5j
bWFrZToKKysgICAgICAgIE1ha2UgdGhlIGZyYW1ld29ya3MgbGlua2VkIHRvIGJ5IEFOR0xFIGJl
IHByaXZhdGUgc28gZnJhbWV3b3JrcyB0aGF0IGxpbmsgd2l0aCAKKysgICAgICAgIEFOR0xFIGRv
bid0IGF1dG9tYXRpY2FsbHkgbGluayB3aXRoIHRoZW0uIFRoaXMgYWxsb3dzIG1lIHRvIHN3aXRj
aCBBTkdMRSBmcm9tIGEgCisrICAgICAgICBzdGF0aWMgbGlicmFyeSB0byBhIGR5bmFtaWMgbGli
cmFyeSB0byBtYWtlIHN1cmUgV2ViQ29yZSBpc24ndCBkaXJlY3RseSB1c2luZyBPcGVuR0wuCisr
ICAgICAgICAqIFBsYXRmb3JtV2luLmNtYWtlOgorKyAgICAgICAgTW92ZSBITFNMLXNwZWNpZmlj
IGZpbGVzIHRvIG9ubHkgYmUgYnVpbHQgb24gV2luZG93cy4KKysgICAgICAgICogaW5jbHVkZS9F
R0wvZWdsLmg6CisrICAgICAgICAqIGluY2x1ZGUvRUdML2VnbHBsYXRmb3JtLmg6CisrICAgICAg
ICAqIGluY2x1ZGUvR0xFUzIvZ2wyLmg6CisrICAgICAgICAqIGluY2x1ZGUvR0xFUzIvZ2wycGxh
dGZvcm0uaDoKKysgICAgICAgICogaW5jbHVkZS9HTEVTMy9nbDMuaDoKKysgICAgICAgICogaW5j
bHVkZS9HTEVTMy9nbDMxLmg6CisrICAgICAgICAqIGluY2x1ZGUvR0xFUzMvZ2wzMi5oOgorKyAg
ICAgICAgKiBpbmNsdWRlL0dMRVMzL2dsM3BsYXRmb3JtLmg6CisrICAgICAgICAqIHNyYy9saWJH
TEVTdjIvZW50cnlfcG9pbnRzX2VnbC5oOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL2VudHJ5
X3BvaW50c19lZ2xfZXh0Lmg6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvZW50cnlfcG9pbnRz
X2dsZXNfMl8wLmg6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvZW50cnlfcG9pbnRzX2dsZXNf
Ml8wX2V4dC5oOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL2VudHJ5X3BvaW50c19nbGVzXzNf
MC5oOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL2VudHJ5X3BvaW50c19nbGVzXzNfMS5oOgor
KyAgICAgICAgSW5jbHVkZSBBTkdMRSBoZWFkZXJzIGFzICNpbmNsdWRlIDxBTkdMRS8qPiBpbnN0
ZWFkIG9mICNpbmNsdWRlIDxLSFIvKj4gb3IgI2luY2x1ZGUgPEdMRVMvKj4KKysgICAgICAgIFRo
aXMgaXMgbmVlZGVkIHRvIGRpc3Rpbmd1aXNoIHRoZSBBTkdMRSBoZWFkZXJzIGZyb20gYW55IHN5
c3RlbSBPcGVuR0wvT3BlbkdMRVMgaGVhZGVycy4KKysgICAgICAgIFdlIHdpbGwgZXZlbnR1YWxs
eSBvbmx5IGluY2x1ZGUgQU5HTEUncyBlbnRyeV9wb2ludHNfKi5oIGRpcmVjdGx5IGZyb20gV2Vi
Q29yZS4KKysKKysyMDE2LTEyLTA3ICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdl
YmtpdC5vcmc+CisrCisrICAgICAgICBCdWlsZCBtb3JlIG9mIEFOR0xFIG9uIE1hYyBhbmQgV2lu
ZG93cworKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2
NTU0MworKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGVhbiBKYWNrc29uLgorKworKyAgICAgICAg
V2Ugd2lsbCBuZWVkIHRvIGNvbXBpbGUgdGhlc2UgZmlsZXMgdG8gdXNlIEFOR0xFJ3MgR0xFU3Yy
IGltcGxlbWVudGF0aW9uIGluc3RlYWQgb2YgCisrICAgICAgICB1c2luZyBPcGVuR0wgZGlyZWN0
bHkuIE5vIGZ1bmN0aW9uYWwgY2hhbmdlLgorKworKyAgICAgICAgKiBBTkdMRS54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qOgorKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDoKKysgICAgICAgIE1v
dmUgcGxhdGZvcm0tc3BlY2lmaWMgZmlsZXMgdG8gUGxhdGZvcm0qLmNtYWtlLgorKyAgICAgICAg
KiBQbGF0Zm9ybU1hYy5jbWFrZTogQWRkZWQuCisrICAgICAgICAqIFBsYXRmb3JtV2luLmNtYWtl
OiBBZGRlZC4KKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL0Zvcm1hdC5jcHA6Cisr
ICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9Gb3JtYXRfYXV0b2dlbi5jcHA6CisrICAg
ICAgICAoYW5nbGU6OkZvcm1hdDo6R2V0KToKKysgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRl
cmVyL2dsL1BhdGhHTC5jcHA6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9j
Z2wvV2luZG93U3VyZmFjZUNHTC5oOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIv
Z2wvY2dsL1dpbmRvd1N1cmZhY2VDR0wubW06CisrICAgICAgICBSZW5hbWUgU3dhcExheWVyIHRv
IFdlYlN3YXBMYXllci4gIE90aGVyd2lzZSwgV2ViQ29yZSBjb21wbGFpbnMgYWJvdXQgaW1wcm9w
ZXJseSBuYW1lZCBPYmpDIGNsYXNzZXMuCisrICAgICAgICBTaW5jZSB0aGlzIGlzIHRoZSBvbmx5
IG9uZSwgbGV0J3MganVzdCByZW5hbWUgaXQgaW5zdGVhZCBvZiBhZGRpbmcgYW4gZXhjZXB0aW9u
LgorKyAgICAgICAgKHJ4OjpXaW5kb3dTdXJmYWNlQ0dMOjppbml0aWFsaXplKToKKysgICAgICAg
ICgtW1N3YXBMYXllciBpbml0V2l0aFNoYXJlZFN0YXRlOndpdGhDb250ZXh0OndpdGhGdW5jdGlv
bnM6XSk6IERlbGV0ZWQuCisrICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9mb3Jt
YXR1dGlsc2dsLmNwcDoKKysgICAgICAgIChyeDo6bmF0aXZlZ2w6OkdldEludGVybmFsRm9ybWF0
TWFwKToKKysgICAgICAgIChyeDo6bmF0aXZlZ2w6OkdldEludGVybmFsRm9ybWF0SW5mbyk6Cisr
ICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9yZW5kZXJlcl91dGlscy5jcHA6CisrICAg
ICAgICAocng6OkdldENvbG9yV3JpdGVGdW5jdGlvbik6CisrICAgICAgICAqIHNyYy9saWJHTEVT
djIvZW50cnlfcG9pbnRzX2VnbC5jcHA6CisrICAgICAgICAoZWdsOjpHZXRQcm9jQWRkcmVzcyk6
CisrCisrMjAxNi0xMi0wNiAgQWxleGV5IFByb3NrdXJ5YWtvdiAgPGFwQGFwcGxlLmNvbT4KKysK
KysgICAgICAgIENvcnJlY3QgU0RLUk9PVCB2YWx1ZXMgaW4geGNjb25maWcgZmlsZXMKKysgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjU0ODcKKysgICAg
ICAgIHJkYXI6Ly9wcm9ibGVtLzI5NTM5MjA5CisrCisrICAgICAgICBSZXZpZXdlZCBieSBEYW4g
QmVybnN0ZWluLgorKworKyAgICAgICAgRml4IHN1Z2dlc3RlZCBieSBEYW4gQmVybnN0ZWluLgor
KworKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9EZWJ1Z1JlbGVhc2UueGNjb25maWc6CisrCisr
MjAxNi0xMC0zMCAgTWljaGFlbCBDYXRhbnphcm8gIDxtY2F0YW56YXJvQGlnYWxpYS5jb20+Cisr
CisrICAgICAgICAtV3ByYWdtYXMgd2FybmluZyBzcGFtIGZyb20gYW5nbGV1dGlscy5oCisrICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY0MjA3CisrCisr
ICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KKysKKysgICAgICAgIFVzZSAjcHJhZ21h
IGNsYW5nIGluc3RlYWQgb2YgI3ByYWdtYSBHQ0Mgc2luY2UgYWxsIG9mIHRoZSB3YXJuaW5ncyB3
ZSBuZWVkIHRvIHN1cHByZXNzIGFyZQorKyAgICAgICAgQ2xhbmctc3BlY2lmaWMgd2FybmluZ3Mu
IEdDQyBpZ25vcmVzIHVua25vd24gcHJhZ21hcyBhbmQgZG9lcyBub3Qgd2FybiwgYnV0IGl0IGRv
ZXMgd2FybiBpZgorKyAgICAgICAgYW55IEdDQyBwcmFnbWEgaXMgaW52YWxpZC4KKysKKysgICAg
ICAgIE5vdGUgdGhhdCB0aGlzIG1pZ2h0IHN0aWxsIGJlIGJyb2tlbiBmb3IgTVNWQ0MsIGFzIE1T
VkNDIHdhcm5zIHdoZW4gaXQgc2VlcyB1bmtub3duIHByYWdtYXMuCisrCisrICAgICAgICAqIGNo
YW5nZXMuZGlmZjoKKysgICAgICAgICogc3JjL2NvbW1vbi9hbmdsZXV0aWxzLmNwcDoKKysgICAg
ICAgIChGb3JtYXRTdHJpbmcpOgorKyAgICAgICAgKiBzcmMvY29tbW9uL2FuZ2xldXRpbHMuaDoK
KysgICAgICAgIChNYWtlU3RhdGljU3RyaW5nKToKKysgICAgICAgICogc3JjL2NvbW1vbi9kZWJ1
Zy5jcHA6CisrICAgICAgICAqIHNyYy9jb21tb24vbWF0aHV0aWwuY3BwOgorKyAgICAgICAgKiBz
cmMvbGliQU5HTEUvQ2Fwcy5jcHA6CisrICAgICAgICAoZ2w6OlRleHR1cmVDYXBzTWFwOjpnZXQp
OgorKyAgICAgICAgKGdsOjpHZXRFeHRlbnNpb25JbmZvTWFwKToKKysgICAgICAgICogc3JjL2xp
YkFOR0xFL0RldmljZS5jcHA6CisrICAgICAgICAoZWdsOjpHZXREZXZpY2VTZXQpOgorKyAgICAg
ICAgKiBzcmMvbGliQU5HTEUvRGlzcGxheS5jcHA6CisrICAgICAgICAoZWdsOjpEaXNwbGF5Ojpn
ZXRDbGllbnRFeHRlbnNpb25TdHJpbmcpOgorKyAgICAgICAgKiBzcmMvbGliQU5HTEUvZm9ybWF0
dXRpbHMuY3BwOgorKyAgICAgICAgKGdsOjpHZXRJbnRlcm5hbEZvcm1hdE1hcCk6CisrICAgICAg
ICAoZ2w6OkdldEFsbFNpemVkSW50ZXJuYWxGb3JtYXRzKToKKysgICAgICAgICogc3JjL2xpYkFO
R0xFL3ZhbGlkYXRpb25FUzMuY3BwOgorKyAgICAgICAgKGdsOjpJc1ZhbGlkRVMzQ29weVRleElt
YWdlQ29tYmluYXRpb24pOgorKworKzIwMTYtMTAtMjggIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hy
aXN0ZW5zZW5Ad2Via2l0Lm9yZz4KKysKKysgICAgICAgIEFub3RoZXIgYnVpbGQgZml4LgorKwor
KyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDoKKysKKysyMDE2LTEwLTI4ICBBbGV4IENocmlzdGVu
c2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisrCisrICAgICAgICBGaXggV2luZG93cyBX
ZWJHTCBidWlsZCBhZnRlciByMjA4MDM2CisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MTY0MTAxCisrCisrICAgICAgICAqIENNYWtlTGlzdHMudHh0Ogor
KworKzIwMTYtMTAtMjcgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9y
Zz4KKysKKysgICAgICAgIEZpeCBXaW5kb3dzIFdlYkdMIGJ1aWxkIGFmdGVyIHIyMDgwMzYKKysg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjQxMDEKKysK
KysgICAgICAgICogQ01ha2VMaXN0cy50eHQ6CisrICAgICAgICBBZGQgbmV3IGZpbGVzLCByZW1v
dmUgZGVsZXRlZCBmaWxlcy4KKysKKysyMDE2LTEwLTI3ICBBbGV4IENocmlzdGVuc2VuICA8YWNo
cmlzdGVuc2VuQHdlYmtpdC5vcmc+CisrCisrICAgICAgICBVcGRhdGUgQU5HTEUKKysgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjQxMDEKKysKKysgICAg
ICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgorKworKyAgICAgICAgVXBkYXRlZCB0byBmMDE3
MzE1MzBlN2Y3NTRlNWViYWYzMmQwMGYzZTIzYjYyMzc2NDI0CisrICAgICAgICBEaWZmZXJlbmNl
cyBiZXR3ZWVuIHVwc3RyZWFtIEFOR0xFIGFuZCBXZWJLaXQncyBjb3B5IG9mIEFOR0xFIGFyZSBp
biBjaGFuZ2VzLmRpZmYKKysKKysyMDE2LTEwLTI0ICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlz
dGVuc2VuQHdlYmtpdC5vcmc+CisrCisrICAgICAgICBSZW1vdmUgdW51c2VkIEFOR0xFLnZjeHBy
b2ogYWZ0ZXIgc3dpdGNoaW5nIHRvIENNYWtlIG9uIFdpbmRvd3MKKysKKysgICAgICAgICogQU5H
TEUudmN4cHJvajogUmVtb3ZlZC4KKysgICAgICAgICogQU5HTEUudmN4cHJvai9BTkdMRVJlbGVh
c2UucHJvcHM6IFJlbW92ZWQuCisrICAgICAgICAqIEFOR0xFLnZjeHByb2ovRGlyZWN0WDMyLnBy
b3BzOiBSZW1vdmVkLgorKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL0RpcmVjdFg2NC5wcm9wczog
UmVtb3ZlZC4KKysgICAgICAgICogQU5HTEUudmN4cHJvai9saWJFR0wudmN4cHJvajogUmVtb3Zl
ZC4KKysgICAgICAgICogQU5HTEUudmN4cHJvai9saWJFR0wudmN4cHJvai5maWx0ZXJzOiBSZW1v
dmVkLgorKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL2xpYkVHTENvbW1vbi5wcm9wczogUmVtb3Zl
ZC4KKysgICAgICAgICogQU5HTEUudmN4cHJvai9saWJHTEVTdjIudmN4cHJvajogUmVtb3ZlZC4K
KysgICAgICAgICogQU5HTEUudmN4cHJvai9saWJHTEVTdjIudmN4cHJvai5maWx0ZXJzOiBSZW1v
dmVkLgorKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL2xpYkdMRVN2MkNvbW1vbi5wcm9wczogUmVt
b3ZlZC4KKysgICAgICAgICogQU5HTEUudmN4cHJvai9wcmVwcm9jZXNzb3IudmN4cHJvajogUmVt
b3ZlZC4KKysgICAgICAgICogQU5HTEUudmN4cHJvai9wcmVwcm9jZXNzb3IudmN4cHJvai5maWx0
ZXJzOiBSZW1vdmVkLgorKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL3RyYW5zbGF0b3JDb21tb24u
cHJvcHM6IFJlbW92ZWQuCisrICAgICAgICAqIEFOR0xFLnZjeHByb2ovdHJhbnNsYXRvcl9jb21t
b24udmN4cHJvajogUmVtb3ZlZC4KKysgICAgICAgICogQU5HTEUudmN4cHJvai90cmFuc2xhdG9y
X2NvbW1vbi52Y3hwcm9qLmZpbHRlcnM6IFJlbW92ZWQuCisrICAgICAgICAqIEFOR0xFLnZjeHBy
b2ovdHJhbnNsYXRvcl9nbHNsLnZjeHByb2o6IFJlbW92ZWQuCisrICAgICAgICAqIEFOR0xFLnZj
eHByb2ovdHJhbnNsYXRvcl9nbHNsLnZjeHByb2ouZmlsdGVyczogUmVtb3ZlZC4KKysgICAgICAg
ICogQU5HTEUudmN4cHJvai90cmFuc2xhdG9yX2hsc2wudmN4cHJvajogUmVtb3ZlZC4KKysgICAg
ICAgICogQU5HTEUudmN4cHJvai90cmFuc2xhdG9yX2hsc2wudmN4cHJvai5maWx0ZXJzOiBSZW1v
dmVkLgorKworKzIwMTYtMDktMDkgIERlYW4gSmFja3NvbiAgPGRpbm9AYXBwbGUuY29tPgorKwor
KyAgICAgICAgW0FOR0xFXSBpbnN0YW50aWF0aW9uIG9mIHZhcmlhYmxlICdnbDo6R0xUeXBlVG9H
TGVudW08ZmxvYXQ+Ojp2YWx1ZScgcmVxdWlyZWQgaGVyZSwgYnV0IG5vIGRlZmluaXRpb24gaXMg
YXZhaWxhYmxlCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTYxODI5CisrICAgICAgICA8cmRhcjovL3Byb2JsZW0vMjgwNTEyNDQ+CisrCisrICAgICAg
ICBSZXZpZXdlZCBieSBBbGV4IENocmlzdGVuc2VuLgorKworKyAgICAgICAgTmV3ZXIgdmVyc2lv
bnMgb2YgY2xhbmcgcmVxdWlyZSBleHBsaWNpdCBkZWZpbml0aW9uIG9mIHNvbWUgdGVtcGxhdGUg
dHlwZXMKKysgICAgICAgIGlmIHRoZXkgYXJlIGluIGFub3RoZXIgdHJhbnNsYXRpb24gdW5pdC4K
KysKKysgICAgICAgICogc3JjL2xpYkFOR0xFL1Byb2dyYW0uY3BwOiBBZGQgZGVmaW5pdGlvbnMg
Zm9yIEdMVHlwZVRvR0xlbnVtLgorKworKzIwMTYtMDctMjkgIERhdmlkIEtpbHplciAgPGRka2ls
emVyQGFwcGxlLmNvbT4KKysKKysgICAgICAgIEFOR0xFOiBGaXggZ2xvYmFsIGNvbnN0cnVjdG9y
cyBhbmQgZXhpdC10aW1lIGRlc3RydWN0b3JzCisrICAgICAgICA8aHR0cHM6Ly93ZWJraXQub3Jn
L2IvMTYwMzMyPgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIuCisrCisrICAg
ICAgICAqIENvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWc6CisrICAgICAgICAtIEFkZCB3YXJu
aW5nIGZsYWdzLgorKworKyAgICAgICAgKiBzcmMvY29tbW9uL2FuZ2xldXRpbHMuY3BwOgorKyAg
ICAgICAgKEZvcm1hdFN0cmluZyk6CisrICAgICAgICAqIHNyYy9jb21tb24vYW5nbGV1dGlscy5o
OgorKyAgICAgICAgKE1ha2VTdGF0aWNTdHJpbmcpOgorKyAgICAgICAgKiBzcmMvY29tbW9uL2Rl
YnVnLmNwcDoKKysgICAgICAgICogc3JjL2NvbW1vbi9tYXRodXRpbC5jcHA6CisrICAgICAgICAo
Z2w6Omdfc2hhcmVkZXhwX21heCk6CisrICAgICAgICAoZ2w6OmNvbnZlcnRSR0JGbG9hdHNUbzk5
OUU1KToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvU2hhZGVyTGFuZy5jcHA6
CisrICAgICAgICAoU2hHZXRVbmlmb3JtUmVnaXN0ZXJNYXApOgorKyAgICAgICAgKiBzcmMvbGli
QU5HTEUvQ2Fwcy5jcHA6CisrICAgICAgICAoZ2w6OlRleHR1cmVDYXBzTWFwOjpnZXQpOgorKyAg
ICAgICAgKiBzcmMvbGliQU5HTEUvRGV2aWNlLmNwcDoKKysgICAgICAgIChlZ2w6OkdldERldmlj
ZVNldCk6CisrICAgICAgICAqIHNyYy9saWJBTkdMRS9EaXNwbGF5LmNwcDoKKysgICAgICAgIChl
Z2w6OkRpc3BsYXk6OmdldENsaWVudEV4dGVuc2lvblN0cmluZyk6CisrICAgICAgICAqIHNyYy9s
aWJBTkdMRS9mb3JtYXR1dGlscy5jcHA6CisrICAgICAgICAoZ2w6OkJ1aWxkRm9ybWF0TWFwKToK
KysgICAgICAgIChnbDo6QnVpbGRJbnRlcm5hbEZvcm1hdEluZm9NYXApOgorKyAgICAgICAgKGds
OjpHZXRJbnRlcm5hbEZvcm1hdE1hcCk6CisrICAgICAgICAoZ2w6OkJ1aWxkQWxsU2l6ZWRJbnRl
cm5hbEZvcm1hdFNldCk6CisrICAgICAgICAoZ2w6OkdldFNpemVkSW50ZXJuYWxGb3JtYXQpOgor
KyAgICAgICAgKGdsOjpHZXRBbGxTaXplZEludGVybmFsRm9ybWF0cyk6CisrICAgICAgICAqIHNy
Yy9saWJBTkdMRS92YWxpZGF0aW9uRVMzLmNwcDoKKysgICAgICAgIChnbDo6QnVpbGRFUzNGb3Jt
YXRTZXQpOgorKyAgICAgICAgKGdsOjpWYWxpZGF0ZVRleEltYWdlRm9ybWF0Q29tYmluYXRpb24p
OgorKyAgICAgICAgKGdsOjpCdWlsZFNpemVkRWZmZWN0aXZlSW50ZXJuYWxGb3JtYXRMaXN0KToK
KysgICAgICAgIChnbDo6QnVpbGRVbnNpemVkRWZmZWN0aXZlSW50ZXJuYWxGb3JtYXRMaXN0KToK
KysgICAgICAgIChnbDo6R2V0RWZmZWN0aXZlSW50ZXJuYWxGb3JtYXQpOgorKyAgICAgICAgKGds
OjpCdWlsZFZhbGlkRVMzQ29weVRleEltYWdlQ29tYmluYXRpb25zKToKKysgICAgICAgIChnbDo6
SXNWYWxpZEVTM0NvcHlUZXhJbWFnZUNvbWJpbmF0aW9uKToKKysgICAgICAgIC0gRml4IGdsb2Jh
bCBjb25zdHJ1Y3RvcnMgYW5kIGV4aXQtdGltZSBkZXN0cnVjdG9ycy4KKysKKysyMDE2LTA3LTEz
ICBFbnJpY2EgQ2FzdWNjaSAgPGVucmljYUBhcHBsZS5jb20+CisrCisrICAgICAgICBVcGRhdGUg
c3VwcG9ydGVkIHBsYXRmb3JtcyBpbiB4Y2NvbmZpZyBmaWxlcyB0byBtYXRjaCB0aGUgc2RrIG5h
bWVzLgorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1
OTcyOAorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgVGltIEhvcnRvbi4KKysKKysgICAgICAgICog
Q29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZzoKKysKKysyMDE2LTA1LTI0ICBBbGV4IENocmlz
dGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisrCisrICAgICAgICBGaXggaU9TIFdl
YkdMIGFmdGVyIHIxOTk3MzgKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xNTgwMjQKKysgICAgICAgIHJkYXI6Ly9wcm9ibGVtLzI2NDQ2Njc5CisrCisr
ICAgICAgICBSZXZpZXdlZCBieSBNeWxlcyBNYXhmaWVsZC4KKysKKysgICAgICAgICogQU5HTEUu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKysgICAgICAgIGlPUyBuZWVkcyB0aGUgRVNTTCB0
cmFuc2xhdG9yLgorKworKzIwMTYtMDUtMjIgIEJyYWR5IEVpZHNvbiAgPGJlaWRzb25AYXBwbGUu
Y29tPgorKworKyAgICAgICAgTW92ZSB0byBDKysxNC4KKysgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTc5NDgKKysKKysgICAgICAgIFJldmlld2VkIGJ5
IE1pY2hhZWwgQ2F0YW56YXJvLgorKworKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9CYXNlLnhj
Y29uZmlnOgorKworKzIwMTYtMDQtMjYgIFBlciBBcm5lIFZvbGxhbiAgPHBlYXZvQG91dGxvb2su
Y29tPgorKworKyAgICAgICAgW1dpbkNhaXJvXVtBTkdMRV0gRGlzcGxheSBvYmplY3QgaXMgbm90
IGNyZWF0ZWQuCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTU3MDQyCisrCisrICAgICAgICBSZXZpZXdlZCBieSBBbGV4IENocmlzdGVuc2VuLgorKwor
KyAgICAgICAgVGhlIENyZWF0ZURpc3BsYXlGcm9tQXR0cmlicyBmdW5jdGlvbiB3aWxsIG5vdCBj
cmVhdGUgYSBEaXNwbGF5RDNEIG9iamVjdCB3aGVuIHRoZSByZXF1ZXN0ZWQKKysgICAgICAgIHR5
cGUgaXMgRUdMX1BMQVRGT1JNX0FOR0xFX1RZUEVfREVGQVVMVF9BTkdMRSwgYmVjYXVzZSBBTkdM
RV9FTkFCTEVfT1BFTkdMIGlzIG5vdCBkZWZpbmVkLgorKyAgICAgICAgV2Ugc2hvdWxkIGJlIGFi
bGUgdG8gY3JlYXRlIGEgRGlzcGxheUQzRCBvYmplY3Qgd2l0aG91dCBkZWZpbmluZyBBTkdMRV9F
TkFCTEVfT1BFTkdMLgorKworKyAgICAgICAgKiBzcmMvbGliQU5HTEUvRGlzcGxheS5jcHA6Cisr
CisrMjAxNi0wNC0yNiAgUGVyIEFybmUgVm9sbGFuICA8cGVhdm9Ab3V0bG9vay5jb20+CisrCisr
ICAgICAgICBbV2luQ2Fpcm9dW1dlYkdMXSBFbmFibGUgRVNTTCBhbmQgR0xTTCB0cmFuc2xhdG9y
cy4KKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTcw
MDIKKysKKysgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgorKworKyAgICAgICAgRW5h
YmxlIHN1cHBvcnQgZm9yIEVTU0wgYW5kIEdMU0wgdHJhbnNsYXRvcnMsIGFuZCBhZGQgbWlzc2lu
ZyBmaWxlcy4KKysKKysgICAgICAgICogQ01ha2VMaXN0cy50eHQ6CisrCisrMjAxNi0wNC0yMiAg
Sm9vbmdodW4gUGFyayAgPGpoNzE4LnBhcmtAc2Ftc3VuZy5jb20+CisrCisrICAgICAgICBbQU5H
TEVdIFJlbW92ZSBkZXByZWNhdGVkIGF1dG9fcHRyIHdhcm5pbmcuIFVucmV2aWV3ZWQuCisrICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU2ODk0CisrCisr
ICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvTWFjcm9FeHBhbmRlci5oOiBVc2Ug
c3RkOjp1bmlxdWVfcHRyIGluc3RlYWQgb2Ygc3RkOjphdXRvX3B0ci4KKysKKysyMDE2LTA0LTE5
ICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisrCisrICAgICAg
ICBCdWlsZCBmaXggYWZ0ZXIgcjE5OTczOAorKworKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDoK
KysKKysyMDE2LTA0LTE5ICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5v
cmc+CisrCisrICAgICAgICBCdWlsZCBmaXggYWZ0ZXIgcjE5OTczOAorKworKyAgICAgICAgKiBD
TWFrZUxpc3RzLnR4dDoKKysKKysyMDE2LTA0LTE5ICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlz
dGVuc2VuQHdlYmtpdC5vcmc+CisrCisrICAgICAgICBCdWlsZCBmaXguCisrCisrICAgICAgICAq
IHNyYy9jb21waWxlci90cmFuc2xhdG9yL0ludGVybWVkaWF0ZS5oOiBBZGRlZC4KKysgICAgICAg
IChUSW50ZXJtZWRpYXRlOjpUSW50ZXJtZWRpYXRlKToKKysgICAgICAgICogc3JjL2NvbXBpbGVy
L3RyYW5zbGF0b3IvaW50ZXJtZWRpYXRlLmg6IFJlbW92ZWQuCisrICAgICAgICBDaGFuZ2VkIGNh
c2Ugb2YgSW50ZXJtZWRpYXRlLmggZmlsZSBuYW1lIGZvciBjYXNlIHNlbnNpdGl2ZSBmaWxlIHN5
c3RlbXMuCisrCisrMjAxNi0wNC0xOSAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3
ZWJraXQub3JnPgorKworKyAgICAgICAgVXBkYXRlIEFOR0xFCisrICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU2NzU1CisrCisrICAgICAgICBSZXZpZXdl
ZCBieSBEZWFuIEphY2tzb24uCisrCisrICAgICAgICBIdWdlIGxpc3Qgb2YgY2hhbmdlZCBmaWxl
cyBvbWl0dGVkLgorKworKzIwMTYtMDQtMTIgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5z
ZW5Ad2Via2l0Lm9yZz4KKysKKysgICAgICAgIFJlbW92ZSBmYWlsaW5nIGFzc2VydGlvbiBpbiBB
TkdMRQorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1
NjQ4NQorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGVhbiBKYWNrc29uLgorKworKyAgICAgICAg
KiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9nbHNsYW5nLmw6CisrICAgICAgICAqIHNyYy9jb21w
aWxlci90cmFuc2xhdG9yL2dsc2xhbmdfbGV4LmNwcDoKKysKKysyMDE2LTA0LTExICBGdWppaSBI
aXJvbm9yaSAgPEhpcm9ub3JpLkZ1amlpQGpwLnNvbnkuY29tPgorKworKyAgICAgICAgW0NNYWtl
XSBNYWtlIEZPTERFUiBwcm9wZXJ0eSBJTkhFUklURUQKKysgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTY0NjAKKysKKysgICAgICAgIFJldmlld2VkIGJ5
IEJyZW50IEZ1bGdoYW0uCisrCisrICAgICAgICAqIENNYWtlTGlzdHMudHh0OgorKyAgICAgICAg
U2V0IEZPTERFUiBwcm9wZXJ0eSBhcyBhIGRpcmVjdG9yeSBwcm9wZXJ0eSBub3QgYSB0YXJnZXQg
cHJvcGVydHkKKysKKysyMDE2LTAzLTIyICBBbGJlcnRvIEdhcmNpYSAgPGJlcnRvQGlnYWxpYS5j
b20+CisrCisrICAgICAgICBVbnJldmlld2VkIHR5cG8gZml4LgorKworKyAgICAgICAgKiBzcmMv
Y29tcGlsZXIvdHJhbnNsYXRvci9JbmZvU2luay5jcHA6CisrICAgICAgICAoVEluZm9TaW5rQmFz
ZTo6cHJlZml4KTogIlVOS09XTiIgPT4gIlVOS09XTiIuCisrCisrMjAxNi0wMy0yMCAgRGFuIEJl
cm5zdGVpbiAgPG1pdHpAYXBwbGUuY29tPgorKworKyAgICAgICAgW01hY10gRGV0ZXJtaW5lIFRB
UkdFVF9NQUNfT1NfWF9WRVJTSU9OX01BSk9SIGZyb20gTUFDT1NYX0RFUExPWU1FTlRfVEFSR0VU
IHJhdGhlciB0aGFuIGZyb20gTUFDX09TX1hfVkVSU0lPTl9NQUpPUgorKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1NTcwNworKyAgICAgICAgPHJkYXI6
Ly9wcm9ibGVtLzI0OTgwNjkxPgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIu
CisrCisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWc6IFNldCBUQVJHRVRf
TUFDX09TX1hfVkVSU0lPTl9NQUpPUiBiYXNlZCBvbiB0aGUgbGFzdAorKyAgICAgICAgICBjb21w
b25lbnQgb2YgTUFDT1NYX0RFUExPWU1FTlRfVEFSR0VULgorKyAgICAgICAgKiBDb25maWd1cmF0
aW9ucy9EZWJ1Z1JlbGVhc2UueGNjb25maWc6IEZvciBlbmdpbmVlcmluZyBidWlsZHMsIHByZXNl
cnZlIHRoZSBiZWhhdmlvciBvZgorKyAgICAgICAgICBUQVJHRVRfTUFDX09TX1hfVkVSU0lPTl9N
QUpPUiBiZWluZyB0aGUgaG9zdOKAmXMgT1MgdmVyc2lvbi4KKysKKysyMDE2LTAzLTIwICBEYW4g
QmVybnN0ZWluICA8bWl0ekBhcHBsZS5jb20+CisrCisrICAgICAgICBVcGRhdGUgYnVpbGQgc2V0
dGluZ3MKKysKKysgICAgICAgIFJ1YmJlci1zdGFtcGVkIGJ5IEFuZHkgRXN0ZXMuCisrCisrICAg
ICAgICAqIENvbmZpZ3VyYXRpb25zL0RlYnVnUmVsZWFzZS54Y2NvbmZpZzoKKysKKysyMDE2LTAy
LTIzICBEYW4gQmVybnN0ZWluICA8bWl0ekBhcHBsZS5jb20+CisrCisrICAgICAgICBbWGNvZGVd
IExpbmtlciBlcnJvcnMgZGlzcGxheSBtYW5nbGVkIG5hbWVzLCBidXQgbm8gbG9uZ2VyIHNob3Vs
ZAorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1NDYz
MgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgU2FtIFdlaW5pZy4KKysKKysgICAgICAgICogQ29u
ZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZzogU3RvcCBzZXR0aW5nIExJTktFUl9ESVNQTEFZU19N
QU5HTEVEX05BTUVTIHRvIFlFUy4KKysKKysyMDE2LTAxLTA4ICBCcmVudCBGdWxnaGFtICA8YmZ1
bGdoYW1AYXBwbGUuY29tPgorKworKyAgICAgICAgW0FOR0xFXSBDb3JyZWN0IFVOUkVBQ0hBQkxF
IHJ1bnRpbWUgYXNzZXJ0aW9uIGZvciB2b2lkIGNvbnN0cnVjdG9ycworKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1MjkwMAorKyAgICAgICAgPHJkYXI6
Ly9wcm9ibGVtLzI0MTA3NTAxPgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgQWxleCBDaHJpc3Rl
bnNlbi4KKysKKysgICAgICAgIFRlc3RlZCBieSBLaHJvbm9zIFdlYkdMIDEuMC40IHN1aXRlLgor
KworKyAgICAgICAgTWVyZ2UgYSBzbWFsbCBwYXJ0IG9mIEFOR0xFIHVwc3RyZWFtIGNvbW1pdCBy
Mjg0NzM1OgorKyAgICAgICAgCisrICAgICAgICAgICAgY29tbWl0ICAgIDAxOTcxMTEzNDkyZDlh
Y2EzODZmMmJjYTAyMWIxZjRiMTM0ZmMyNzcKKysgICAgICAgICAgICBhdXRob3IgICAgRG1pdHJ5
IFNraWJhIDxkc2tpYmFAZ29vZ2xlLmNvbT4gIEZyaSBKdWwgMTAgMTg6NTQ6MDAgMjAxNQorKyAg
ICAgICAgICAgIGNvbW1pdHRlciBKYW1pZSBNYWRpbGwgPGptYWRpbGxAY2hyb21pdW0ub3JnPiAg
RnJpIEp1bCAxMCAxOTowMzozNCAyMDE1CisrICAgICAgICAgICAgdHJlZSAgICAgIDQ3ZTQyZWFj
MDBmN2Q2NGNkZGIxNGIzY2MyMWE0ZTYwNWMxODlkMjAKKysKKysgICAgICAgIFRoaXMgaXNzdWUg
d2FzIGZvdW5kIGJ5IDxodHRwczovL3d3dy5raHJvbm9zLm9yZy9yZWdpc3RyeS93ZWJnbC9zZGsv
dGVzdHMvY29uZm9ybWFuY2UvZ2xzbC9idWdzL2FuZ2xlLWNvbnN0cnVjdG9yLWludmFsaWQtcGFy
YW1ldGVycy5odG1sP3dlYmdsVmVyc2lvbj0xJnF1aWV0PTA+CisrCisrICAgICAgICAqIHNyYy9j
b21waWxlci90cmFuc2xhdG9yL1R5cGVzLmNwcDoKKysgICAgICAgIChUVHlwZTo6YnVpbGRNYW5n
bGVkTmFtZSk6IERvbid0IGFzc2VydCB3aXRoIFVOUkVBQ0hBQkxFIGhlcmUuCisrCisrMjAxNS0x
Mi0yOCAgSm9vbmdodW4gUGFyayAgPGpoNzE4LnBhcmtAc2Ftc3VuZy5jb20+CisrCisrICAgICAg
ICBbQU5HTEVdW0VGTF1bR1RLXSBSZW1vdmUgJ3RlbXBsYXRlPGNsYXNzPiBjbGFzcyBzdGQ6OmF1
dG9fcHRyIGlzIGRlcHJlY2F0ZWQnIGNvbXBpbGUgd2FybmluZworKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1MjU2NworKworKyAgICAgICAgUmV2aWV3
ZWQgYnkgQWxleCBDaHJpc3RlbnNlbi4KKysKKysgICAgICAgIEJlY2F1c2UgYXV0b19wdHIgaXMg
ZGVwcmVjYXRlZCBhcyBvZiBDKysxMSwgd2Ugc2hvdWxkIHVzZSB1bmlxdWVfcHRyIGluc3RlYWQu
CisrCisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvTWFjcm9FeHBhbmRlci5o
OgorKworKzIwMTUtMTItMTkgIERhbiBCZXJuc3RlaW4gIDxtaXR6QGFwcGxlLmNvbT4KKysKKysg
ICAgICAgIFtNYWNdIFdlYktpdCBjb250YWlucyBkZWFkIHNvdXJjZSBjb2RlIGZvciBPUyBYIE1h
dmVyaWNrcyBhbmQgZWFybGllcgorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTE1MjQ2MgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgQWxleGV5IFByb3Nr
dXJ5YWtvdi4KKysKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMvRGVidWdSZWxlYXNlLnhjY29u
ZmlnOiBSZW1vdmVkIGRlZmluaXRpb25zIG9mIE1BQ09TWF9ERVBMT1lNRU5UX1RBUkdFVCBmb3IK
KysgICAgICAgICAgT1MgWCAxMC44IGFuZCAxMC45LgorKworKzIwMTUtMTItMDMgIEFuZGVycyBD
YXJsc3NvbiAgPGFuZGVyc2NhQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFJlbW92ZSBPYmplY3Rp
dmUtQyBHQyBzdXBwb3J0CisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTUxODE5CisrICAgICAgICByZGFyOi8vcHJvYmxlbS8yMzc0Njk5MQorKworKyAg
ICAgICAgUmV2aWV3ZWQgYnkgRGFuIEJlcm5zdGVpbi4KKysKKysgICAgICAgICogQ29uZmlndXJh
dGlvbnMvQmFzZS54Y2NvbmZpZzoKKysKKysyMDE1LTExLTMwICBEYW5hIEJ1cmthcnQgIDxkYnVy
a2FydEBhcHBsZS5jb20+CisrCisrICAgICAgICBSZW1vdmUgTW91bnRhaW4gTGlvbiBzdXBwb3J0
IGZyb20gQU5HTEUKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0xNTE2NzkKKysKKysgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgorKworKyAg
ICAgICAgKiBDb25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnOgorKworKzIwMTUtMTEtMDIgIEFu
ZHkgRXN0ZXMgIDxhZXN0ZXNAYXBwbGUuY29tPgorKworKyAgICAgICAgW0NvY29hXSBBZGQgdHZP
UyBhbmQgd2F0Y2hPUyB0byBTVVBQT1JURURfUExBVEZPUk1TCisrICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTUwODE5CisrCisrICAgICAgICBSZXZpZXdl
ZCBieSBEYW4gQmVybnN0ZWluLgorKworKyAgICAgICAgVGhpcyB0ZWxscyBYY29kZSB0byBpbmNs
dWRlIHRoZXNlIHBsYXRmb3JtcyBpbiBpdHMgRGV2aWNlcyBkcm9wZG93biwgbWFraW5nIGl0IHBv
c3NpYmxlIHRvIGJ1aWxkIGluIHRoZSBJREUuCisrCisrICAgICAgICAqIENvbmZpZ3VyYXRpb25z
L0Jhc2UueGNjb25maWc6CisrCisrMjAxNS0xMC0xMCAgRGFuIEJlcm5zdGVpbiAgPG1pdHpAYXBw
bGUuY29tPgorKworKyAgICAgICAgW2lPU10gUmVtb3ZlIHByb2plY3Qgc3VwcG9ydCBmb3IgaU9T
IDgKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDk5
OTMKKysKKysgICAgICAgIFJldmlld2VkIGJ5IEFsZXhleSBQcm9za3VyeWFrb3YuCisrCisrICAg
ICAgICAqIENvbmZpZ3VyYXRpb25zL0FOR0xFLnhjY29uZmlnOgorKyAgICAgICAgKiBDb25maWd1
cmF0aW9ucy9CYXNlLnhjY29uZmlnOgorKworKzIwMTUtMDgtMjAgIEFsZXggQ2hyaXN0ZW5zZW4g
IDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KKysKKysgICAgICAgIENsZWFuIHVwIENNYWtlIGJ1
aWxkIGFmdGVyIHIxODg2NzMKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xNDgyMzQKKysKKysgICAgICAgIFJldmlld2VkIGJ5IFRpbSBIb3J0b24uCisr
CisrICAgICAgICAqIENNYWtlTGlzdHMudHh0OgorKyAgICAgICAgQ29weSBoZWFkZXJzIHRvIGZv
cndhcmRpbmcgaGVhZGVycy4KKysKKysyMDE1LTA4LTExICBCcmVudCBGdWxnaGFtICA8YmZ1bGdo
YW1AYXBwbGUuY29tPgorKworKyAgICAgICAgW1dpbl0gU3dpdGNoIFdpbmRvd3MgYnVpbGQgdG8g
VmlzdWFsIFN0dWRpbyAyMDE1CisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTQ3ODg3CisrICAgICAgICA8cmRhcjovL3Byb2JsZW0vMjIyMzUwOTg+Cisr
CisrICAgICAgICBSZXZpZXdlZCBieSBBbGV4IENocmlzdGVuc2VuLgorKworKyAgICAgICAgVXBk
YXRlIFZpc3VhbCBTdHVkaW8gcHJvamVjdCBmaWxlIHNldHRpbmdzIHRvIHVzZSB0aGUgY3VycmVu
dCBWaXN1YWwKKysgICAgICAgIFN0dWRpbyBhbmQgY29tcGlsZXIuIENvbnRpbnVlIHRhcmdldGlu
ZyBiaW5hcmllcyB0byBydW4gb24gb3VyIG1pbmltdW0KKysgICAgICAgIHN1cHBvcnRlZCBjb25m
aWd1cmF0aW9uIG9mIFdpbmRvd3MgNy4KKysKKysgICAgICAgICogQU5HTEUudmN4cHJvai9saWJF
R0wudmN4cHJvajoKKysgICAgICAgICogQU5HTEUudmN4cHJvai9saWJHTEVTdjIudmN4cHJvajoK
KysgICAgICAgICogQU5HTEUudmN4cHJvai9wcmVwcm9jZXNzb3IudmN4cHJvajoKKysgICAgICAg
ICogQU5HTEUudmN4cHJvai90cmFuc2xhdG9yX2NvbW1vbi52Y3hwcm9qOgorKyAgICAgICAgKiBB
TkdMRS52Y3hwcm9qL3RyYW5zbGF0b3JfZ2xzbC52Y3hwcm9qOgorKyAgICAgICAgKiBBTkdMRS52
Y3hwcm9qL3RyYW5zbGF0b3JfaGxzbC52Y3hwcm9qOgorKworKzIwMTUtMDgtMDQgIEFsZXggQ2hy
aXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KKysKKysgICAgICAgIEJ1aWxkIGZp
eCBhZnRlciByMTg3OTI4LgorKworKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDoKKysgICAgICAg
IFR5cG8uIFNldCBsaWJHTEVTdjIgY29tcGlsZSBkZWZpbml0aW9ucyBpbnN0ZWFkIG9mIGxpYkVH
TCwgd2hpY2ggYXJlIHNldCBzZXBhcmF0ZWx5LgorKworKzIwMTUtMDgtMDQgIEFsZXggQ2hyaXN0
ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KKysKKysgICAgICAgIFNvZnQgbGluayBs
aWJHTEVTdjIgYW5kIGxpYkVHTCBvbiBXaW5kb3dzIGFnYWluCisrICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQ3NjcxCisrCisrICAgICAgICBSZXZpZXdl
ZCBieSBEZWFuIEphY2tzb24uCisrCisrICAgICAgICAqIENNYWtlTGlzdHMudHh0OgorKyAgICAg
ICAgQ2xlYW4gdXAgc29tZSB3YXJuaW5ncyB3aGVuIGNvbXBpbGluZyB3aXRoIENNYWtlLgorKyAg
ICAgICAgKiBpbmNsdWRlL0VHTC9lZ2wuaDoKKysgICAgICAgICogaW5jbHVkZS9FR0wvZWdsc29m
dGxpbmtpbmcuaDoKKysgICAgICAgICogaW5jbHVkZS9HTEVTMi9nbDIuaDoKKysgICAgICAgIFNv
ZnQgbGluayBlZ2wgb3B0aW9uYWxseS4KKysKKysyMDE1LTA4LTA0ICBBbGV4IENocmlzdGVuc2Vu
ICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisrCisrICAgICAgICBFbmFibGUgV2ViR0wgb24g
V2luZG93cyBDTWFrZSBidWlsZC4KKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xNDMzMTEKKysKKysgICAgICAgIFJldmlld2VkIGJ5IENzYWJhIE9zenRy
b2dvbsOhYy4KKysKKysgICAgICAgICogQ01ha2VMaXN0cy50eHQ6IEFkZGVkLgorKworKzIwMTUt
MDctMDMgIERhbiBCZXJuc3RlaW4gIDxtaXR6QGFwcGxlLmNvbT4KKysKKysgICAgICAgIFtYY29k
ZV0gVXBkYXRlIHNvbWUgYnVpbGQgc2V0dGluZ3MgYXMgcmVjb21tZW5kZWQgYnkgWGNvZGUgNwor
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0NjU5Nwor
KworKyAgICAgICAgUmV2aWV3ZWQgYnkgU2FtIFdlaW5pZy4KKysKKysgICAgICAgICogQU5HTEUu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajogRW5hYmxlZCBDTEFOR19XQVJOX0JPT0xfQ09OVkVS
U0lPTiwKKysgICAgICAgIENMQU5HX1dBUk5fRU5VTV9DT05WRVJTSU9OLCBDTEFOR19XQVJOX0lO
VF9DT05WRVJTSU9OLCBFTkFCTEVfU1RSSUNUX09CSkNfTVNHU0VORCBhbmQKKysgICAgICAgIEdD
Q19OT19DT01NT05fQkxPQ0tTLgorKworKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9CYXNlLnhj
Y29uZmlnOiBVcGRhdGVkIExhc3RVcGdyYWRlQ2hlY2suCisrCisrMjAxNS0wNy0wMyAgUGVyIEFy
bmUgVm9sbGFuICA8cGVhdm9Ab3V0bG9vay5jb20+CisrCisrICAgICAgICBbV2luQ2Fpcm9dW1dl
YkdMXSBFbmFibGUgSExTTC4KKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xNDY1NTkKKysKKysgICAgICAgIFJldmlld2VkIGJ5IEFsZXggQ2hyaXN0ZW5z
ZW4uCisrCisrICAgICAgICBIaWdoIExldmVsIFNoYWRlciBMYW5ndWFnZSBuZWVkcyB0byBiZSBl
bmFibGVkIGZvciBXZWJHTCB0byB3b3JrIG9uIFdpbmRvd3MuCisrCisrICAgICAgICAqIEFOR0xF
LnZjeHByb2ovdHJhbnNsYXRvckNvbW1vbi5wcm9wczoKKysgICAgICAgICogQU5HTEUudmN4cHJv
ai90cmFuc2xhdG9yX2hsc2wudmN4cHJvajoKKysgICAgICAgICogQU5HTEUudmN4cHJvai90cmFu
c2xhdG9yX2hsc2wudmN4cHJvai5maWx0ZXJzOgorKworKzIwMTUtMDctMDEgIEFsZXggQ2hyaXN0
ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KKysKKysgICAgICAgIFJlLWVuYWJsZSBX
ZWJHTCBvbiBXaW5DYWlybworKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTE0NjUzNworKworKyAgICAgICAgUmV2aWV3ZWQgYnkgQ3NhYmEgT3N6dHJvZ29u
w6FjLgorKworKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL0RpcmVjdFgzMi5wcm9wczoKKysgICAg
ICAgICogQU5HTEUudmN4cHJvai9EaXJlY3RYNjQucHJvcHM6CisrICAgICAgICAqIEFOR0xFLnZj
eHByb2ovbGliR0xFU3YyQ29tbW9uLnByb3BzOgorKyAgICAgICAgVXBkYXRlIERpcmVjdFggZGly
ZWN0b3JpZXMgdG8gdXNlIHRoZSBXaW5kb3dzIFNESyBpbnN0ZWFkIG9mIHRoZSBKdW5lIDIwMTAg
RGlyZWN0WCBTREsuCisrCisrMjAxNS0wNy0wMSAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3Rl
bnNlbkB3ZWJraXQub3JnPgorKworKyAgICAgICAgRml4IEFOR0xFIFdpbmRvd3MgYnVpbGQgYWZ0
ZXIgcjE4NjE2OS4KKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0xNDY1MzIKKysKKysgICAgICAgIFJldmlld2VkIGJ5IEJyZW50IEZ1bGdoYW0uCisrCisr
ICAgICAgICAqIEFOR0xFLnZjeHByb2ovbGliRUdMLnZjeHByb2o6CisrICAgICAgICAqIEFOR0xF
LnZjeHByb2ovbGliRUdMLnZjeHByb2ouZmlsdGVyczoKKysgICAgICAgICogQU5HTEUudmN4cHJv
ai9saWJHTEVTdjIudmN4cHJvajoKKysgICAgICAgICogQU5HTEUudmN4cHJvai9saWJHTEVTdjIu
dmN4cHJvai5maWx0ZXJzOgorKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL2xpYkdMRVN2MkNvbW1v
bi5wcm9wczoKKysgICAgICAgICogQU5HTEUudmN4cHJvai90cmFuc2xhdG9yX2NvbW1vbi52Y3hw
cm9qOgorKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL3RyYW5zbGF0b3JfY29tbW9uLnZjeHByb2ou
ZmlsdGVyczoKKysgICAgICAgICogQU5HTEUudmN4cHJvai90cmFuc2xhdG9yX2dsc2wudmN4cHJv
ajoKKysgICAgICAgICogQU5HTEUudmN4cHJvai90cmFuc2xhdG9yX2dsc2wudmN4cHJvai5maWx0
ZXJzOgorKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL3RyYW5zbGF0b3JfaGxzbC52Y3hwcm9qOgor
KyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL3RyYW5zbGF0b3JfaGxzbC52Y3hwcm9qLmZpbHRlcnM6
CisrICAgICAgICBVcGRhdGUgV2luZG93cyBidWlsZCB0byBidWlsZCBuZXcgZmlsZXMuCisrCisr
MjAxNS0wNi0zMCAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgor
KworKyAgICAgICAgVXBkYXRlIEFOR0xFIHRvIGIxMWUyNDgzNzQyZGI4ODRiZDBhZjQxZjc4ZjUy
ODI0MDU3NzM1NmIuCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTQ1MDEwCisrCisrICAgICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisrCisr
ICAgICAgICBIdWdlIGxpc3Qgb2Ygc291cmNlIGNoYW5nZXMgb21pdHRlZC4KKysgICAgICAgIFJP
TEwgREVQUyEKKysKKysyMDE1LTA1LTI2ICBEYW4gQmVybnN0ZWluICA8bWl0ekBhcHBsZS5jb20+
CisrCisrICAgICAgICA8cmRhcjovL3Byb2JsZW0vMjExMDQ1NTE+IFVwZGF0ZSBidWlsZCBzZXR0
aW5ncworKworKyAgICAgICAgUmV2aWV3ZWQgYnkgQW5kZXJzIENhcmxzc29uLgorKworKyAgICAg
ICAgKiBDb25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnOgorKyAgICAgICAgKiBDb25maWd1cmF0
aW9ucy9EZWJ1Z1JlbGVhc2UueGNjb25maWc6CisrCisrMjAxNS0wNS0xOSAgQ2FybG9zIEFsYmVy
dG8gTG9wZXogUGVyZXogIDxjbG9wZXpAaWdhbGlhLmNvbT4KKysKKysgICAgICAgIFJFR1JFU1NJ
T04ocjE4MTU3MSk6IEJ1aWxkIGJyb2tlbiB3aGVuIFVTRShPUEVOR0xfRVNfMikgaXMgZGVmaW5l
ZC4KKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDUx
NTYKKysKKysgICAgICAgIFJldmlld2VkIGJ5IEFsZXggQ2hyaXN0ZW5zZW4uCisrCisrICAgICAg
ICAqIGluY2x1ZGUvR0xFUzIvZ2wyc29mdGxpbmtpbmcuaDogUmV2ZXJ0IHIxODE1ODkuIFZlcnRl
eCBBcnJheSBPYmplY3RzIGFyZSBub3QgaW4gR0xFU3YyLgorKworKzIwMTUtMDUtMTEgIEJyZW50
IEZ1bGdoYW0gIDxiZnVsZ2hhbUBhcHBsZS5jb20+CisrCisrICAgICAgICBbV2luXSBNb3ZlIFdp
bmRvd3MgYnVpbGQgdGFyZ2V0IHRvIFdpbmRvd3MgNyAob3IgbmV3ZXIpCisrICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQ0ODkwCisrICAgICAgICA8cmRh
cjovL3Byb2JsZW0vMjA3MDczMDc+CisrCisrICAgICAgICBSZXZpZXdlZCBieSBBbmRlcnMgQ2Fy
bHNzb24uCisrCisrICAgICAgICBVcGRhdGUgbGlua2VkIFNESyBhbmQgbWluaW1hbCBXaW5kb3dz
IGxldmVsIHRvIGJlIGNvbXBhdGlibGUgd2l0aAorKyAgICAgICAgV2luZG93cyA3IG9yIG5ld2Vy
LgorKworKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL2xpYkVHTC52Y3hwcm9qOgorKyAgICAgICAg
KiBBTkdMRS52Y3hwcm9qL2xpYkdMRVN2Mi52Y3hwcm9qOgorKyAgICAgICAgKiBBTkdMRS52Y3hw
cm9qL3ByZXByb2Nlc3Nvci52Y3hwcm9qOgorKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL3RyYW5z
bGF0b3JfY29tbW9uLnZjeHByb2o6CisrICAgICAgICAqIEFOR0xFLnZjeHByb2ovdHJhbnNsYXRv
cl9nbHNsLnZjeHByb2o6CisrICAgICAgICAqIEFOR0xFLnZjeHByb2ovdHJhbnNsYXRvcl9obHNs
LnZjeHByb2o6CisrCisrMjAxNS0wNS0wNyAgRGFuIEJlcm5zdGVpbiAgPG1pdHpAYXBwbGUuY29t
PgorKworKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzE5MzE3MTQwPiBbWGNvZGVdIFJlbW92ZSB1
c2FnZSBvZiBBc3BlbkZhbWlseS54Y2NvbmZpZyBpbiBTb3VyY2UvCisrICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQ0NzI3CisrCisrICAgICAgICBSZXZp
ZXdlZCBieSBEYXJpbiBBZGxlci4KKysKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMvQmFzZS54
Y2NvbmZpZzogRG9u4oCZdCBpbmNsdWRlIEFzcGVuRmFtaWx5LnhjY29uZmlnLCBhbmQgZGVmaW5l
CisrICAgICAgICBJTlNUQUxMX1BBVEhfUFJFRklYIGFuZCBMRF9EWUxJQl9JTlNUQUxMX05BTUUg
Zm9yIHRoZSBpT1MgOC54IFNpbXVsYXRvci4KKysKKysyMDE1LTA0LTAxICBBbGV4IENocmlzdGVu
c2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisrCisrICAgICAgICBQcm9ncmVzcyB0b3dh
cmRzIENNYWtlIG9uIFdpbmRvd3MgYW5kIE1hYy4KKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDMyOTMKKysKKysgICAgICAgIFJldmlld2VkIGJ5IEZp
bGlwIFBpemxvLgorKworKyAgICAgICAgKiBpbmNsdWRlL0dMRVMyL2dsMi5oOgorKyAgICAgICAg
VGVtcG9yYXJpbHkgZGlzYWJsZWQgV2ViR0wgb24gV2luZG93cyBDTWFrZSBidWlsZHMuCisrCisr
MjAxNS0wMy0xNyAgWmFuIERvYmVyc2VrICA8emRvYmVyc2VrQGlnYWxpYS5jb20+CisrCisrICAg
ICAgICBbQ01ha2VdIFVzZSBhIGZvcndhcmRpbmcgaGVhZGVyIGZvciBBTkdMRSdzIFNoYWRlckxh
bmcuaCB0byBhdm9pZCBwaWNraW5nIHVwIEFOR0xFJ3MgRUdMIGhlYWRlcnMKKysgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDI1MzAKKysKKysgICAgICAg
IFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgorKworKyAgICAgICAgKiBBTkdMRS9TaGFkZXJMYW5n
Lmg6IEFkZGVkLiBJbmNsdWRlcyBpbmNsdWRlL0dMU0xBTkcvU2hhZGVyTGFuZy5oLiBVc2VkIGlu
IFdlYkNvcmUKKysgICAgICAgIHNvIHdlIGNhbiBhdm9pZCB1c2luZyBBTkdMRSdzIEVHTCBoZWFk
ZXJzIGFuZCB1c2UgdGhlIHN5c3RlbS1kZWZhdWx0IGhlYWRlcnMgaW5zdGVhZC4KKysKKysyMDE1
LTAzLTE2ICBSb2dlciBGb25nICA8cm9nZXJfZm9uZ0BhcHBsZS5jb20+CisrCisrICAgICAgICBb
V2luXSBVbnJldmlld2VkIGJ1aWxkIGZpeCBhZnRlciByMTgxNTcxLgorKworKyAgICAgICAgKiBp
bmNsdWRlL0dMRVMyL2dsMnNvZnRsaW5raW5nLmg6CisrCisrMjAxNS0wMy0xMiAgQnJlbnQgRnVs
Z2hhbSAgPGJmdWxnaGFtQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFtXaW5dIFVucmV2aWV3ZWQg
YnVpbGQgZml4IChwYXJ0IDIpLgorKworKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL2xpYkdMRVN2
MkNvbW1vbi5wcm9wczogTWlzc2VkIGEgZGlyZWN0b3J5IHNlcGFyYXRvci4KKysKKysyMDE1LTAz
LTEyICBCcmVudCBGdWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgorKworKyAgICAgICAgW1dp
bl0gVW5yZXZpZXdlZCBidWlsZCBmaXggZm9yIHNvbWUgRGlyZWN0WCBTREsgSW5zdGFsbHMKKysK
KysgICAgICAgICogQU5HTEUudmN4cHJvai9saWJHTEVTdjJDb21tb24ucHJvcHM6IENvcnJlY3Qg
cGF0aCBmb3IgTGliIGFuZAorKyAgICAgICAgSW5jbHVkZSBwYXRocyBiYXNlZCBvbiBwcm9ibGVt
cyBvdGhlcnMgaGF2ZSBoYWQgYnVpbGRpbmcgV2ViS2l0CisrICAgICAgICB1bmRlciBkaWZmZXJl
bnQgV2luZG93cyBhbmQgRGlyZWN0WCByZXZpc2lvbnMuCisrCisrMjAxNS0wMi0yMCAgQWxleGV5
IFByb3NrdXJ5YWtvdiAgPGFwQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFJlbW92ZSBzdm46a2V5
d29yZHMgcHJvcGVydHkuCisrCisrICAgICAgICBBcyBmYXIgYXMgSSBjYW4gdGVsbCwgdGhlIHBy
b3BlcnR5IGhhZCBubyBlZmZlY3Qgb24gYW55IG9mIHRoZXNlIGZpbGVzLCBidXQgYWxzbywKKysg
ICAgICAgIHdoZW4gaXQgaGFzIGVmZmVjdCBpdCdzIGxpa2VseSBoYXJtZnVsLgorKworKyAgICAg
ICAgKiBBTkdMRS50eHQ6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAg
KiBzcmMvY29tbW9uL1JlZkNvdW50T2JqZWN0LmNwcDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5
d29yZHMuCisrICAgICAgICAqIHNyYy9jb21tb24vUmVmQ291bnRPYmplY3QuaDogUmVtb3ZlZCBw
cm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9y
L0Jhc2VUeXBlcy5oOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysgICAgICAgICog
c3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvQnVpbHRJbkZ1bmN0aW9uRW11bGF0b3IuY3BwOiBSZW1v
dmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5z
bGF0b3IvQnVpbHRJbkZ1bmN0aW9uRW11bGF0b3IuaDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5
d29yZHMuCisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL0NvZGVHZW4uY3BwOiBS
ZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3Ry
YW5zbGF0b3IvQ29tbW9uLmg6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAg
ICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9Db21waWxlci5jcHA6IFJlbW92ZWQgcHJvcGVy
dHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9Db25z
dGFudFVuaW9uLmg6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBz
cmMvY29tcGlsZXIvdHJhbnNsYXRvci9EZXRlY3RDYWxsRGVwdGguY3BwOiBSZW1vdmVkIHByb3Bl
cnR5IHN2bjprZXl3b3Jkcy4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvRGV0
ZWN0Q2FsbERlcHRoLmg6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAg
KiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9EZXRlY3REaXNjb250aW51aXR5LmNwcDogUmVtb3Zl
ZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xh
dG9yL0RldGVjdERpc2NvbnRpbnVpdHkuaDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMu
CisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL0RpYWdub3N0aWNzLmNwcDogUmVt
b3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFu
c2xhdG9yL0RpYWdub3N0aWNzLmg6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAg
ICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9EaXJlY3RpdmVIYW5kbGVyLmNwcDogUmVt
b3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFu
c2xhdG9yL0RpcmVjdGl2ZUhhbmRsZXIuaDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMu
CisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL0V4dGVuc2lvbkJlaGF2aW9yLmg6
IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIv
dHJhbnNsYXRvci9Gb3JMb29wVW5yb2xsLmNwcDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29y
ZHMuCisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL0Zvckxvb3BVbnJvbGwuaDog
UmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9jb21waWxlci90
cmFuc2xhdG9yL0hhc2hOYW1lcy5oOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysg
ICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvSW5mb1NpbmsuY3BwOiBSZW1vdmVkIHBy
b3BlcnR5IHN2bjprZXl3b3Jkcy4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3Iv
SW5mb1NpbmsuaDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNy
Yy9jb21waWxlci90cmFuc2xhdG9yL0luaXRpYWxpemUuY3BwOiBSZW1vdmVkIHByb3BlcnR5IHN2
bjprZXl3b3Jkcy4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvSW5pdGlhbGl6
ZS5oOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysgICAgICAgICogc3JjL2NvbXBp
bGVyL3RyYW5zbGF0b3IvSW5pdGlhbGl6ZURsbC5jcHA6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtl
eXdvcmRzLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9Jbml0aWFsaXplRGxs
Lmg6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMvY29tcGls
ZXIvdHJhbnNsYXRvci9Jbml0aWFsaXplR2xvYmFscy5oOiBSZW1vdmVkIHByb3BlcnR5IHN2bjpr
ZXl3b3Jkcy4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvSW5pdGlhbGl6ZVBh
cnNlQ29udGV4dC5jcHA6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAg
KiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9Jbml0aWFsaXplUGFyc2VDb250ZXh0Lmg6IFJlbW92
ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNs
YXRvci9Jbml0aWFsaXplVmFyaWFibGVzLmNwcDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29y
ZHMuCisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL0luaXRpYWxpemVWYXJpYWJs
ZXMuaDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9jb21w
aWxlci90cmFuc2xhdG9yL0ludGVybVRyYXZlcnNlLmNwcDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46
a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL0ludGVybWVkaWF0
ZS5jcHA6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMvY29t
cGlsZXIvdHJhbnNsYXRvci9NTWFwLmg6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgor
KyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9Ob2RlU2VhcmNoLmg6IFJlbW92ZWQg
cHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRv
ci9PdXRwdXRFU1NMLmNwcDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAg
ICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL091dHB1dEVTU0wuaDogUmVtb3ZlZCBwcm9wZXJ0
eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL091dHB1
dEdMU0wuY3BwOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysgICAgICAgICogc3Jj
L2NvbXBpbGVyL3RyYW5zbGF0b3IvT3V0cHV0R0xTTC5oOiBSZW1vdmVkIHByb3BlcnR5IHN2bjpr
ZXl3b3Jkcy4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvT3V0cHV0R0xTTEJh
c2UuY3BwOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysgICAgICAgICogc3JjL2Nv
bXBpbGVyL3RyYW5zbGF0b3IvT3V0cHV0R0xTTEJhc2UuaDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46
a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL091dHB1dEhMU0wu
Y3BwOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysgICAgICAgICogc3JjL2NvbXBp
bGVyL3RyYW5zbGF0b3IvT3V0cHV0SExTTC5oOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jk
cy4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvUGFyc2VDb250ZXh0LmNwcDog
UmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9jb21waWxlci90
cmFuc2xhdG9yL1BhcnNlQ29udGV4dC5oOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4K
KysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvUG9vbEFsbG9jLmNwcDogUmVtb3Zl
ZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xh
dG9yL1Bvb2xBbGxvYy5oOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysgICAgICAg
ICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvUHJhZ21hLmg6IFJlbW92ZWQgcHJvcGVydHkgc3Zu
OmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9RdWFsaWZpZXJB
bGl2ZS5jcHA6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMv
Y29tcGlsZXIvdHJhbnNsYXRvci9RdWFsaWZpZXJBbGl2ZS5oOiBSZW1vdmVkIHByb3BlcnR5IHN2
bjprZXl3b3Jkcy4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvUmVtb3ZlVHJl
ZS5jcHA6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMvY29t
cGlsZXIvdHJhbnNsYXRvci9SZW1vdmVUcmVlLmg6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdv
cmRzLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9SZW5hbWVGdW5jdGlvbi5o
OiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysgICAgICAgICogc3JjL2NvbXBpbGVy
L3RyYW5zbGF0b3IvUmV3cml0ZUVsc2VCbG9ja3MuY3BwOiBSZW1vdmVkIHByb3BlcnR5IHN2bjpr
ZXl3b3Jkcy4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvUmV3cml0ZUVsc2VC
bG9ja3MuaDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9j
b21waWxlci90cmFuc2xhdG9yL1NlYXJjaFN5bWJvbC5jcHA6IFJlbW92ZWQgcHJvcGVydHkgc3Zu
OmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9TZWFyY2hTeW1i
b2wuaDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9jb21w
aWxlci90cmFuc2xhdG9yL1NoSGFuZGxlLmg6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRz
LgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9TaGFkZXJMYW5nLmNwcDogUmVt
b3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFu
c2xhdG9yL1N5bWJvbFRhYmxlLmNwcDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisr
ICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL1N5bWJvbFRhYmxlLmg6IFJlbW92ZWQg
cHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRv
ci9UcmFuc2xhdG9yRVNTTC5jcHA6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAg
ICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yRVNTTC5oOiBSZW1vdmVk
IHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0
b3IvVHJhbnNsYXRvckdMU0wuY3BwOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysg
ICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvckdMU0wuaDogUmVtb3Zl
ZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xh
dG9yL1RyYW5zbGF0b3JITFNMLmNwcDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisr
ICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JITFNMLmg6IFJlbW92
ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNs
YXRvci9UeXBlcy5oOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysgICAgICAgICog
c3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVW5mb2xkU2hvcnRDaXJjdWl0LmNwcDogUmVtb3ZlZCBw
cm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9y
L1VuZm9sZFNob3J0Q2lyY3VpdC5oOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysg
ICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVW5mb2xkU2hvcnRDaXJjdWl0QVNULmNw
cDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9jb21waWxl
ci90cmFuc2xhdG9yL1VuZm9sZFNob3J0Q2lyY3VpdEFTVC5oOiBSZW1vdmVkIHByb3BlcnR5IHN2
bjprZXl3b3Jkcy4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVmFsaWRhdGVM
aW1pdGF0aW9ucy5jcHA6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAg
KiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9WYWxpZGF0ZUxpbWl0YXRpb25zLmg6IFJlbW92ZWQg
cHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRv
ci9WYXJpYWJsZUluZm8uY3BwOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysgICAg
ICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVmFyaWFibGVJbmZvLmg6IFJlbW92ZWQgcHJv
cGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9W
YXJpYWJsZVBhY2tlci5jcHA6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAg
ICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9WYXJpYWJsZVBhY2tlci5oOiBSZW1vdmVkIHBy
b3BlcnR5IHN2bjprZXl3b3Jkcy4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3Iv
VmVyc2lvbkdMU0wuY3BwOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysgICAgICAg
ICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVmVyc2lvbkdMU0wuaDogUmVtb3ZlZCBwcm9wZXJ0
eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL2NvbXBp
bGVyZGVidWcuY3BwOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysgICAgICAgICog
c3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvY29tcGlsZXJkZWJ1Zy5oOiBSZW1vdmVkIHByb3BlcnR5
IHN2bjprZXl3b3Jkcy4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvZGVwZ3Jh
cGgvRGVwZW5kZW5jeUdyYXBoLmNwcDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisr
ICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL2RlcGdyYXBoL0RlcGVuZGVuY3lHcmFw
aC5oOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysgICAgICAgICogc3JjL2NvbXBp
bGVyL3RyYW5zbGF0b3IvZGVwZ3JhcGgvRGVwZW5kZW5jeUdyYXBoQnVpbGRlci5jcHA6IFJlbW92
ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNs
YXRvci9kZXBncmFwaC9EZXBlbmRlbmN5R3JhcGhCdWlsZGVyLmg6IFJlbW92ZWQgcHJvcGVydHkg
c3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9kZXBncmFw
aC9EZXBlbmRlbmN5R3JhcGhPdXRwdXQuY3BwOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jk
cy4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvZGVwZ3JhcGgvRGVwZW5kZW5j
eUdyYXBoT3V0cHV0Lmg6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAg
KiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9kZXBncmFwaC9EZXBlbmRlbmN5R3JhcGhUcmF2ZXJz
ZS5jcHA6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMvY29t
cGlsZXIvdHJhbnNsYXRvci9nZW5lcmF0ZV9wYXJzZXIuc2g6IFJlbW92ZWQgcHJvcGVydHkgc3Zu
OmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9nbHNsYW5nLmg6
IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIv
dHJhbnNsYXRvci9nbHNsYW5nX2xleC5jcHA6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRz
LgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9nbHNsYW5nX3RhYi5jcHA6IFJl
bW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJh
bnNsYXRvci9nbHNsYW5nX3RhYi5oOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysg
ICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvaW50ZXJtT3V0LmNwcDogUmVtb3ZlZCBw
cm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9y
L2ludGVybWVkaWF0ZS5oOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysgICAgICAg
ICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvbG9jYWxpbnRlcm1lZGlhdGUuaDogUmVtb3ZlZCBw
cm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9y
L29zaW5jbHVkZS5oOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysgICAgICAgICog
c3JjL2NvbXBpbGVyL3RyYW5zbGF0b3Ivb3Nzb3VyY2VfcG9zaXguY3BwOiBSZW1vdmVkIHByb3Bl
cnR5IHN2bjprZXl3b3Jkcy4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3Ivb3Nz
b3VyY2Vfd2luLmNwcDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAq
IHNyYy9jb21waWxlci90cmFuc2xhdG9yL3BhcnNlQ29uc3QuY3BwOiBSZW1vdmVkIHByb3BlcnR5
IHN2bjprZXl3b3Jkcy4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvdGltaW5n
L1Jlc3RyaWN0RnJhZ21lbnRTaGFkZXJUaW1pbmcuY3BwOiBSZW1vdmVkIHByb3BlcnR5IHN2bjpr
ZXl3b3Jkcy4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvdGltaW5nL1Jlc3Ry
aWN0RnJhZ21lbnRTaGFkZXJUaW1pbmcuaDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMu
CisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL3RpbWluZy9SZXN0cmljdFZlcnRl
eFNoYWRlclRpbWluZy5jcHA6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAg
ICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvci90aW1pbmcvUmVzdHJpY3RWZXJ0ZXhTaGFkZXJU
aW1pbmcuaDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9j
b21waWxlci90cmFuc2xhdG9yL3V0aWwuY3BwOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jk
cy4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvdXRpbC5oOiBSZW1vdmVkIHBy
b3BlcnR5IHN2bjprZXl3b3Jkcy4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9k
M2QxMS9CdWZmZXJTdG9yYWdlMTEuY3BwOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4K
KysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9kM2QxMS9CdWZmZXJTdG9yYWdlMTEu
aDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9saWJHTEVT
djIvcmVuZGVyZXIvZDNkMTEvRmVuY2UxMS5jcHA6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdv
cmRzLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL2QzZDExL0ZlbmNlMTEuaDog
UmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIv
cmVuZGVyZXIvZDNkMTEvSW1hZ2UxMS5jcHA6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRz
LgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL2QzZDExL0ltYWdlMTEuaDogUmVt
b3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVu
ZGVyZXIvZDNkMTEvSW5kZXhCdWZmZXIxMS5jcHA6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdv
cmRzLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL2QzZDExL0luZGV4QnVmZmVy
MTEuaDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9saWJH
TEVTdjIvcmVuZGVyZXIvZDNkMTEvSW5wdXRMYXlvdXRDYWNoZS5jcHA6IFJlbW92ZWQgcHJvcGVy
dHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL2QzZDEx
L0lucHV0TGF5b3V0Q2FjaGUuaDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAg
ICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvZDNkMTEvUXVlcnkxMS5jcHA6IFJlbW92ZWQg
cHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVy
L2QzZDExL1F1ZXJ5MTEuaDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAg
ICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvZDNkMTEvUmVuZGVyU3RhdGVDYWNoZS5jcHA6IFJl
bW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3Jl
bmRlcmVyL2QzZDExL1JlbmRlclN0YXRlQ2FjaGUuaDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5
d29yZHMuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvZDNkMTEvUmVuZGVyVGFy
Z2V0MTEuY3BwOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysgICAgICAgICogc3Jj
L2xpYkdMRVN2Mi9yZW5kZXJlci9kM2QxMS9SZW5kZXJUYXJnZXQxMS5oOiBSZW1vdmVkIHByb3Bl
cnR5IHN2bjprZXl3b3Jkcy4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9kM2Qx
MS9SZW5kZXJlcjExLmNwcDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAg
ICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvZDNkMTEvUmVuZGVyZXIxMS5oOiBSZW1vdmVkIHBy
b3BlcnR5IHN2bjprZXl3b3Jkcy4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9k
M2QxMS9TaGFkZXJFeGVjdXRhYmxlMTEuY3BwOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jk
cy4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9kM2QxMS9TaGFkZXJFeGVjdXRh
YmxlMTEuaDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9s
aWJHTEVTdjIvcmVuZGVyZXIvZDNkMTEvU3dhcENoYWluMTEuY3BwOiBSZW1vdmVkIHByb3BlcnR5
IHN2bjprZXl3b3Jkcy4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9kM2QxMS9T
d2FwQ2hhaW4xMS5oOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysgICAgICAgICog
c3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9kM2QxMS9UZXh0dXJlU3RvcmFnZTExLmNwcDogUmVtb3Zl
ZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVy
ZXIvZDNkMTEvVGV4dHVyZVN0b3JhZ2UxMS5oOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jk
cy4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9kM2QxMS9WZXJ0ZXhCdWZmZXIx
MS5jcHA6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMvbGli
R0xFU3YyL3JlbmRlcmVyL2QzZDExL1ZlcnRleEJ1ZmZlcjExLmg6IFJlbW92ZWQgcHJvcGVydHkg
c3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL2QzZDExL3Jl
bmRlcmVyMTFfdXRpbHMuY3BwOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysgICAg
ICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9kM2QxMS9yZW5kZXJlcjExX3V0aWxzLmg6IFJl
bW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3Jl
bmRlcmVyL2QzZDkvQnVmZmVyU3RvcmFnZTkuY3BwOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3
b3Jkcy4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9kM2Q5L0J1ZmZlclN0b3Jh
Z2U5Lmg6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMvbGli
R0xFU3YyL3JlbmRlcmVyL2QzZDkvRmVuY2U5LmNwcDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5
d29yZHMuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvZDNkOS9GZW5jZTkuaDog
UmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIv
cmVuZGVyZXIvZDNkOS9JbWFnZTkuY3BwOiBSZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4K
KysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9kM2Q5L0ltYWdlOS5oOiBSZW1vdmVk
IHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJl
ci9kM2Q5L0luZGV4QnVmZmVyOS5jcHA6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgor
KyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL2QzZDkvSW5kZXhCdWZmZXI5Lmg6IFJl
bW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3Jl
bmRlcmVyL2QzZDkvUXVlcnk5LmNwcDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisr
ICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvZDNkOS9RdWVyeTkuaDogUmVtb3ZlZCBw
cm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIv
ZDNkOS9SZW5kZXJUYXJnZXQ5LmNwcDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisr
ICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvZDNkOS9SZW5kZXJUYXJnZXQ5Lmg6IFJl
bW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3Jl
bmRlcmVyL2QzZDkvUmVuZGVyZXI5LmNwcDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMu
CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvZDNkOS9SZW5kZXJlcjkuaDogUmVt
b3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVu
ZGVyZXIvZDNkOS9TaGFkZXJFeGVjdXRhYmxlOS5jcHA6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtl
eXdvcmRzLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL2QzZDkvU2hhZGVyRXhl
Y3V0YWJsZTkuaDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNy
Yy9saWJHTEVTdjIvcmVuZGVyZXIvZDNkOS9Td2FwQ2hhaW45LmNwcDogUmVtb3ZlZCBwcm9wZXJ0
eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvZDNkOS9T
d2FwQ2hhaW45Lmg6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBz
cmMvbGliR0xFU3YyL3JlbmRlcmVyL2QzZDkvVGV4dHVyZVN0b3JhZ2U5LmNwcDogUmVtb3ZlZCBw
cm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIv
ZDNkOS9UZXh0dXJlU3RvcmFnZTkuaDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisr
ICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvZDNkOS9WZXJ0ZXhCdWZmZXI5LmNwcDog
UmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIv
cmVuZGVyZXIvZDNkOS9WZXJ0ZXhCdWZmZXI5Lmg6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdv
cmRzLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL2QzZDkvVmVydGV4RGVjbGFy
YXRpb25DYWNoZS5jcHA6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAg
KiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL2QzZDkvVmVydGV4RGVjbGFyYXRpb25DYWNoZS5oOiBS
ZW1vdmVkIHByb3BlcnR5IHN2bjprZXl3b3Jkcy4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9y
ZW5kZXJlci9kM2Q5L3JlbmRlcmVyOV91dGlscy5jcHA6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtl
eXdvcmRzLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL2QzZDkvcmVuZGVyZXI5
X3V0aWxzLmg6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKyAgICAgICAgKiBzcmMv
bGliR0xFU3YyL3JlbmRlcmVyL2QzZDkvc2hhZGVycy9jb21waWxlZC9jb21wb25lbnRtYXNrcHMu
aDogUmVtb3ZlZCBwcm9wZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9saWJHTEVT
djIvcmVuZGVyZXIvZDNkOS9zaGFkZXJzL2NvbXBpbGVkL2ZsaXB5dnMuaDogUmVtb3ZlZCBwcm9w
ZXJ0eSBzdm46a2V5d29yZHMuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvZDNk
OS9zaGFkZXJzL2NvbXBpbGVkL2x1bWluYW5jZXBzLmg6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtl
eXdvcmRzLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL2QzZDkvc2hhZGVycy9j
b21waWxlZC9wYXNzdGhyb3VnaHBzLmg6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgor
KyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL2QzZDkvc2hhZGVycy9jb21waWxlZC9z
dGFuZGFyZHZzLmg6IFJlbW92ZWQgcHJvcGVydHkgc3ZuOmtleXdvcmRzLgorKworKzIwMTUtMDEt
MjggIERhbmEgQnVya2FydCAgPGRidXJrYXJ0QGFwcGxlLmNvbT4KKysKKysgICAgICAgIE1vdmUg
QVNhbiBmbGFnIHNldHRpbmdzIGZyb20gRGVidWdSZWxlYXNlLnhjY29uZmlnIHRvIEJhc2UueGNj
b25maWcKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
MzY3NjUKKysKKysgICAgICAgIFJldmlld2VkIGJ5IEFsZXhleSBQcm9za3VyeWFrb3YuCisrCisr
ICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWc6CisrICAgICAgICAqIENvbmZp
Z3VyYXRpb25zL0RlYnVnUmVsZWFzZS54Y2NvbmZpZzoKKysKKysyMDE0LTEyLTI2ICBEYW4gQmVy
bnN0ZWluICA8bWl0ekBhcHBsZS5jb20+CisrCisrICAgICAgICA8cmRhcjovL3Byb2JsZW0vMTkz
NDgyMDg+IFJFR1JFU1NJT04gKHIxNzcwMjcpOiBpT1MgYnVpbGRzIHVzZSB0aGUgd3JvbmcgdG9v
bGNoYWluCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTM5OTUwCisrCisrICAgICAgICBSZXZpZXdlZCBieSBEYXZpZCBLaWx6ZXIuCisrCisrICAgICAg
ICAqIENvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWc6IE9ubHkgZGVmaW5lIFRPT0xDSEFJTlMg
d2hlbiBidWlsZGluZyBmb3IgT1MgWCwgZG9pbmcgc28KKysgICAgICAgIGluIGEgbWFubmVyIHRo
YXQgd29ya3Mgd2l0aCBYY29kZSA1LjEuMS4KKysKKysyMDE0LTEyLTI0ICBEYW4gQmVybnN0ZWlu
ICA8bWl0ekBhcHBsZS5jb20+CisrCisrICAgICAgICBBTkdMRSBleHRlcm4gc3ltYm9scyBhcmUg
bm90IGhpZGRlbiBieSBkZWZhdWx0LCBidXQgc2hvdWxkIGJlCisrICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM5OTM2CisrCisrICAgICAgICBSZXZpZXdl
ZCBieSBNYXJrIFJvd2UuCisrCisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25m
aWc6IENoYW5nZWQgR0NDX1NZTUJPTFNfUFJJVkFURV9FWFRFUk4gdG8gWUVTLgorKworKzIwMTQt
MTItMjQgIERhbiBCZXJuc3RlaW4gIDxtaXR6QGFwcGxlLmNvbT4KKysKKysgICAgICAgIFJlbW92
ZWQgdGhlIERlcml2ZWQgU291cmNlcyB0YXJnZXQuCisrCisrICAgICAgICBJdCBoYXMgYmVlbiBl
bXB0eSBzaW5jZSByMTU5NTMzLgorKworKyAgICAgICAgKiBBTkdMRS54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qOgorKworKzIwMTQtMTItMDkgIERhdmlkIEtpbHplciAgPGRka2lsemVyQGFwcGxl
LmNvbT4KKysKKysgICAgICAgIFN3aXRjaCBmcm9tIHVzaW5nIFBMQVRGT1JNX05BTUUgdG8gU0RL
IHNlbGVjdG9ycyBpbiBBTkdMRSwgYm1hbGxvYywgZ3Rlc3QsIEphdmFTY3JpcHRDb3JlLCBXVEYK
KysgICAgICAgIDxodHRwOi8vd2Via2l0Lm9yZy9iLzEzOTIxMj4KKysKKysgICAgICAgIFJldmll
d2VkIGJ5IEpvc2VwaCBQZWNvcmFyby4KKysKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMvQmFz
ZS54Y2NvbmZpZzoKKysgICAgICAgIC0gT25seSBzZXQgR0NDX0VOQUJMRV9PQkpDX0dDLCBHQ0Nf
TU9ERUxfVFVOSU5HIGFuZCBUT09MQ0hBSU5TCisrICAgICAgICAgIG9uIE9TIFguCisrICAgICAg
ICAqIENvbmZpZ3VyYXRpb25zL0RlYnVnUmVsZWFzZS54Y2NvbmZpZzoKKysgICAgICAgIC0gT25s
eSBzZXQgTUFDT1NYX0RFUExPWU1FTlRfVEFSR0VUIGFuZCBTREtST09UIG9uIE9TIFguCisrCisr
MjAxNC0xMC0zMCAgRGFuYSBCdXJrYXJ0ICA8ZGJ1cmthcnRAYXBwbGUuY29tPgorKworKyAgICAg
ICAgPHJkYXI6Ly9wcm9ibGVtLzE4ODIxMjYwPiBQcmVwYXJlIGZvciB0aGUgbXlzdGVyaW91cyBm
dXR1cmUKKysKKysgICAgICAgIFJldmlld2VkIGJ5IEx1Y2FzIEZvcnNjaGxlci4KKysKKysgICAg
ICAgICogQ29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZzoKKysgICAgICAgICogQ29uZmlndXJh
dGlvbnMvRGVidWdSZWxlYXNlLnhjY29uZmlnOgorKworKzIwMTQtMTAtMDggIEJyZW50IEZ1bGdo
YW0gIDxiZnVsZ2hhbUBhcHBsZS5jb20+CisrCisrICAgICAgICBbV2luXSBVc2UgcHJvcGVyIHYx
MjAgdGFyZ2V0IGZvciA2NC1iaXQgYnVpbGRzLgorKworKyAgICAgICAgKiBBTkdMRS52Y3hwcm9q
L2xpYkVHTC52Y3hwcm9qOgorKworKzIwMTQtMDktMjkgIHBlYXZvQG91dGxvb2suY29tICA8cGVh
dm9Ab3V0bG9vay5jb20+CisrCisrICAgICAgICBbV2luQ2Fpcm9dIEQzRDExIGlzIG5vdCB1c2Vk
IGJ5IGRlZmF1bHQuCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTM3MjE1CisrCisrICAgICAgICBSZXZpZXdlZCBieSBBbGV4IENocmlzdGVuc2VuLgor
KworKyAgICAgICAgQU5HTEVfREVGQVVMVF9EM0QxMSBuZWVkcyB0byBiZSBkZWZpbmVkIGZvciBE
M0QxMSB0byBiZSB1c2VkIGFzIGRlZmF1bHQuCisrCisrICAgICAgICAqIEFOR0xFLnZjeHByb2ov
bGliR0xFU3YyQ29tbW9uLnByb3BzOgorKworKzIwMTQtMDktMTkgIERhbmllbCBCYXRlcyAgPGRh
YmF0ZXNAYXBwbGUuY29tPgorKworKyAgICAgICAgQWx3YXlzIGFzc3VtZSBpbnRlcm5hbCBTREsg
d2hlbiBidWlsZGluZyBjb25maWd1cmF0aW9uIFByb2R1Y3Rpb24KKysgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzY5MjUKKysgICAgICAgIDxyZGFyOi8v
cHJvYmxlbS8xODM2MjM5OT4KKysKKysgICAgICAgIFJldmlld2VkIGJ5IERhbiBCZXJuc3RlaW4u
CisrCisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWc6CisrCisrMjAxNC0w
OS0xMCAgUm9nZXIgRm9uZyAgPHJvZ2VyX2ZvbmdAYXBwbGUuY29tPgorKworKyAgICAgICAgQ2hl
Y2sgZm9yIHZhcnlpbmcgcGFja2luZyByZXN0cmljdGlvbnMgcGVyIHByb2dyYW0gaW5zdGVhZCBv
ZiBwZXIgc2hhZGVyLgorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTEzNjU4NS4KKysgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8xNjMwODQwOT4uCisrCisr
ICAgICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisrCisrICAgICAgICBSZW1vdmUgdmFy
eWluZyBwYWNraW5nIHJlc3RyaWN0aW9ucyBjaGVja3MgZnJvbSBBTkdMRS4KKysgICAgICAgICog
c3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvQ29tcGlsZXIuY3BwOgorKyAgICAgICAgKFRDb21waWxl
cjo6Y29tcGlsZSk6CisrICAgICAgICAoVENvbXBpbGVyOjplbmZvcmNlUGFja2luZ1Jlc3RyaWN0
aW9ucyk6CisrICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL1NoSGFuZGxlLmg6Cisr
CisrMjAxNC0wOS0wNiAgRGFyaW4gQWRsZXIgIDxkYXJpbkBhcHBsZS5jb20+CisrCisrICAgICAg
ICBNYWtlIHVwZGF0ZXMgc3VnZ2VzdGVkIGJ5IG5ldyB2ZXJzaW9uIG9mIFhjb2RlCisrICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM2NjAzCisrCisrICAg
ICAgICBSZXZpZXdlZCBieSBNYXJrIFJvd2UuCisrCisrICAgICAgICAqIEFOR0xFLnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2o6IFVwZGF0ZWQgTGFzdFVwZ3JhZGVDaGVjay4KKysKKysgICAgICAg
ICogQ29uZmlndXJhdGlvbnMvQU5HTEUueGNjb25maWc6IEFkZGVkIENMQU5HX1dBUk5fQk9PTF9D
T05WRVJTSU9OLAorKyAgICAgICAgQ0xBTkdfV0FSTl9FTlVNX0NPTlZFUlNJT04sIENMQU5HX1dB
Uk5fSU5UX0NPTlZFUlNJT04sIENPTUJJTkVfSElEUElfSU1BR0VTLAorKyAgICAgICAgYW5kIEVO
QUJMRV9TVFJJQ1RfT0JKQ19NU0dTRU5EIGFzIHN1Z2dlc3RlZCBieSBYY29kZSB1cGdyYWRlIGNo
ZWNrLgorKworKzIwMTQtMDktMDYgIENvbW1pdCBRdWV1ZSAgPGNvbW1pdC1xdWV1ZUB3ZWJraXQu
b3JnPgorKworKyAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjE3MzMzNS4KKysgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzY1OTcKKysKKysg
ICAgICAgIEJyb2tlIHdlYmdsLzEuMC4yL2NvbmZvcm1hbmNlL2dsc2wvbWlzYy9zaGFkZXItdmFy
eWluZy0KKysgICAgICAgIHBhY2tpbmctcmVzdHJpY3Rpb25zLmh0bWwgKFJlcXVlc3RlZCBieSBh
cCBvbiAjd2Via2l0KS4KKysKKysgICAgICAgIFJldmVydGVkIGNoYW5nZXNldDoKKysKKysgICAg
ICAgICJSZW1vdmUgc3RhdGljYWxseSB1c2VkIHZhcnlpbmdzIGZyb20gcGFja2luZyByZXN0cmlj
dGlvbnMKKysgICAgICAgIGNoZWNrLiIKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0xMzY1ODUKKysgICAgICAgIGh0dHA6Ly90cmFjLndlYmtpdC5vcmcv
Y2hhbmdlc2V0LzE3MzMzNQorKworKzIwMTQtMDktMDUgIFJvZ2VyIEZvbmcgIDxyb2dlcl9mb25n
QGFwcGxlLmNvbT4KKysKKysgICAgICAgIFJlbW92ZSBzdGF0aWNhbGx5IHVzZWQgdmFyeWluZ3Mg
ZnJvbSBwYWNraW5nIHJlc3RyaWN0aW9ucyBjaGVjay4KKysgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzY1ODUuCisrICAgICAgICA8cmRhcjovL3Byb2Js
ZW0vMTYzMDg0MDk+CisrCisrICAgICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisrCisr
ICAgICAgICAqIHNyYy9jb21waWxlci90cmFuc2xhdG9yL0NvbXBpbGVyLmNwcDoKKysgICAgICAg
IChUQ29tcGlsZXI6OmVuZm9yY2VQYWNraW5nUmVzdHJpY3Rpb25zKToKKysKKysyMDE0LTA4LTI5
ICBDc2FiYSBPc3p0cm9nb27DoWMgIDxvc3N5QHdlYmtpdC5vcmc+CisrCisrICAgICAgICBVbnJl
dml3ZWQsIHJlbW92ZSBlbXB0eSBkaXJlY3Rvcmllcy4KKysKKysgICAgICAgICogc3JjL2NvbXBp
bGVyL2RlcGdyYXBoOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdGltaW5nOiBS
ZW1vdmVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL3NoYWRlcnM6IFJlbW92
ZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvc2hhZGVycy9jb21waWxlZDog
UmVtb3ZlZC4KKysKKysyMDE0LTA4LTExICBBbmR5IEVzdGVzICA8YWVzdGVzQGFwcGxlLmNvbT4K
KysKKysgICAgICAgIFtpT1NdIEdldCByaWQgb2YgaU9TLnhjY29uZmlnCisrICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM1ODA5CisrCisrICAgICAgICBS
ZXZpZXdlZCBieSBKb3NlcGggUGVjb3Jhcm8uCisrCisrICAgICAgICBBbGwgaU9TLnhjY29uZmln
IGRpZCB3YXMgaW5jbHVkZSBBc3BlbkZhbWlseS54Y2NvbmZpZywgc28gdGhlcmUncyBubyBuZWVk
IGZvciB0aGUgaW5kaXJlY3Rpb24uCisrCisrICAgICAgICAqIEFOR0xFLnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2o6CisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWc6Cisr
ICAgICAgICAqIENvbmZpZ3VyYXRpb25zL2lPUy54Y2NvbmZpZzogUmVtb3ZlZC4KKysKKysyMDE0
LTA4LTA3ICBCcmVudCBGdWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgorKworKyAgICAgICAg
W1dpbl0gVW5yZXZpZXdlZCBnYXJkZW5pbmcuCisrCisrICAgICAgICBEZWJ1Z1N1ZmZpeCB0YXJn
ZXRzIHNob3VsZCB1c2Ugb3VyIGRlYnVnc3VmZml4IHByb3BlcnR5IHNoZWV0LCBhbmQKKysgICAg
ICAgIHdpbGwgdGhlcmVmb3JlIGJ1aWxkIHRvIHRoZSBwcm9wZXIgb3V0cHV0IGxvY2F0aW9uIHdp
dGggdGhlIHByb3BlcgorKyAgICAgICAgc3VmZml4IHRhZ3MuCisrCisrICAgICAgICBBbHNvLCB3
ZSBtdXN0IHVzZSB0aGUgV2ViS2l0X0xpYnJhcmllcyBlbnZpcm9ubWVudCB2YXJpYWJsZSwgbm90
IGEgc2V0CisrICAgICAgICBvZiByZWxhdGl2ZSBwYXRocyB0byB0aGUgcHJvcGVydHkgc2hlZXRz
LgorKworKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL2xpYkVHTC52Y3hwcm9qOiBVc2UgJ2RlYnVn
c3VmZml4LnByb3BzJyBzaGVldC4KKysgICAgICAgICogQU5HTEUudmN4cHJvai9saWJHTEVTdjIu
dmN4cHJvajogRGl0dG8uCisrICAgICAgICAqIEFOR0xFLnZjeHByb2ovcHJlcHJvY2Vzc29yLnZj
eHByb2o6IERpdHRvLgorKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL3RyYW5zbGF0b3JfY29tbW9u
LnZjeHByb2o6IERpdHRvLgorKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL3RyYW5zbGF0b3JfZ2xz
bC52Y3hwcm9qOiBEaXR0by4KKysgICAgICAgICogQU5HTEUudmN4cHJvai90cmFuc2xhdG9yX2hs
c2wudmN4cHJvajogRGl0dG8uCisrICAgICAgICAqIEFOR0xFLnZjeHByb2ovbGliRUdMQ29tbW9u
LnByb3BzOiBVc2UgJChEZWJ1Z1N1ZmZpeCkgZW5kaW5ncy4KKysgICAgICAgICogQU5HTEUudmN4
cHJvai9saWJHTEVTdjJDb21tb24ucHJvcHM6IERpdHRvLgorKyAgICAgICAgKiBBTkdMRS52Y3hw
cm9qL3RyYW5zbGF0b3JDb21tb24ucHJvcHM6IE91dHB1dCB0byAnbGliJyBmb2xkZXIsCisrICAg
ICAgICBub3QgJ2JpbicgZm9sZGVyLiBUaGVzZSBhcmUgbGlicmFyaWVzIQorKworKzIwMTQtMDgt
MDIgIEJyZW50IEZ1bGdoYW0gIDxiZnVsZ2hhbUBhcHBsZS5jb20+CisrCisrICAgICAgICBbV2lu
XSBVbnJldmlld2VkIGJ1aWxkIGZpeC4KKysKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5k
ZXJlci9kM2QxMS9CdWZmZXJTdG9yYWdlMTEuY3BwOgorKyAgICAgICAgKHJ4OjpCdWZmZXJTdG9y
YWdlMTE6OmNvcHlEYXRhKTogSGVscCBjb21waWxlciBtYWtlCisrICAgICAgICBkZWNpc2lvbiBh
Ym91dCB0eXBlcy4KKysKKysyMDE0LTA3LTI1ICBwZWF2b0BvdXRsb29rLmNvbSAgPHBlYXZvQG91
dGxvb2suY29tPgorKworKyAgICAgICAgW1dpbl1bQU5HTEVdIEVuYWJsZSBEM0QxMS4KKysgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzUyOTYKKysKKysg
ICAgICAgIFJldmlld2VkIGJ5IEFsZXggQ2hyaXN0ZW5zZW4uCisrCisrICAgICAgICBEaXJlY3Qz
RCAxMSBpcyBub3QgZW5hYmxlZCBvbiBXaW5kb3dzLgorKworKyAgICAgICAgKiBBTkdMRS52Y3hw
cm9qL2xpYkdMRVN2Mi52Y3hwcm9qOiBBZGRlZCBmaWxlcy4KKysgICAgICAgICogQU5HTEUudmN4
cHJvai9saWJHTEVTdjIudmN4cHJvai5maWx0ZXJzOiBEaXR0by4KKysgICAgICAgICogQU5HTEUu
dmN4cHJvai9saWJHTEVTdjJDb21tb24ucHJvcHM6IEVuYWJsZSBEM0QxMS4KKysgICAgICAgICog
c3JjL2xpYkdMRVN2Mi9wcmVjb21waWxlZC5oOiBIZWFkZXIgZmlsZSBkb2VzIG5vdCBleGlzdCwg
YXZvaWQgaW5jbHVkZS4KKysgICAgICAgICogY2hhbmdlcy5kaWZmOiBVcGRhdGVkIGRpZmYuCisr
CisrMjAxNC0wNi0wNCAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3Jn
PgorKworKyAgICAgICAgRW5hYmxlIFdlYkdMIG9uIFdpbmRvd3MuCisrICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTMzNTAzCisrCisrICAgICAgICBSZXZp
ZXdlZCBieSBCcmVudCBGdWxnaGFtLgorKworKyAgICAgICAgKiBjaGFuZ2VzLmRpZmYKKysgICAg
ICAgIFJlY29yZGVkIGFkZGl0aW9uYWwgY2hhbmdlcyBmcm9tIEFOR0xFLgorKyAgICAgICAgKiBB
TkdMRS52Y3hwcm9qL2xpYkVHTC52Y3hwcm9qOgorKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL2xp
YkVHTC52Y3hwcm9qLmZpbHRlcnM6CisrICAgICAgICAqIEFOR0xFLnZjeHByb2ovbGliR0xFU3Yy
LnZjeHByb2o6CisrICAgICAgICAqIEFOR0xFLnZjeHByb2ovbGliR0xFU3YyLnZjeHByb2ouZmls
dGVyczoKKysgICAgICAgICogaW5jbHVkZS9FR0wvZWdsLmg6CisrICAgICAgICAqIGluY2x1ZGUv
RUdML2VnbHNvZnRsaW5raW5nLmg6IEFkZGVkLgorKyAgICAgICAgKiBpbmNsdWRlL0dMRVMyL2ds
Mi5oOgorKyAgICAgICAgKiBpbmNsdWRlL0dMRVMyL2dsMnNvZnRsaW5raW5nLmg6IEFkZGVkLgor
KyAgICAgICAgUmVzdXJyZWN0ZWQgc29mdCBsaW5raW5nIGhlYWRlcnMgZnJvbSByMTUzNjY0Lgor
KyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL1ZlcnRleEJ1ZmZlci5jcHA6CisrICAg
ICAgICAocng6OlZlcnRleEJ1ZmZlckludGVyZmFjZTo6ZGlyZWN0U3RvcmFnZVBvc3NpYmxlKToK
KysgICAgICAgIENvbXBpbGUgZml4IGZvciBXaW42NC4KKysKKysyMDE0LTA1LTAyICBBbGV4IENo
cmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisrCisrICAgICAgICBVcGRhdGUg
QU5HTEUgV2luZG93cyBidWlsZC4KKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xMzI0NTYKKysKKysgICAgICAgIFJldmlld2VkIGJ5IEJyZW50IEZ1bGdo
YW0uCisrCisrICAgICAgICAqIEFOR0xFLnZjeHByb2ovbGliRUdMQ29tbW9uLnByb3BzOgorKyAg
ICAgICAgKiBBTkdMRS52Y3hwcm9qL2xpYkdMRVN2Mi52Y3hwcm9qOgorKyAgICAgICAgKiBBTkdM
RS52Y3hwcm9qL2xpYkdMRVN2Mi52Y3hwcm9qLmZpbHRlcnM6CisrICAgICAgICAqIEFOR0xFLnZj
eHByb2ovbGliR0xFU3YyQ29tbW9uLnByb3BzOgorKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL3Ry
YW5zbGF0b3JfY29tbW9uLnZjeHByb2o6CisrICAgICAgICAqIEFOR0xFLnZjeHByb2ovdHJhbnNs
YXRvcl9jb21tb24udmN4cHJvai5maWx0ZXJzOgorKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL3Ry
YW5zbGF0b3JfZ2xzbC52Y3hwcm9qOgorKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL3RyYW5zbGF0
b3JfZ2xzbC52Y3hwcm9qLmZpbHRlcnM6CisrICAgICAgICAqIEFOR0xFLnZjeHByb2ovdHJhbnNs
YXRvcl9obHNsLnZjeHByb2o6CisrICAgICAgICAqIEFOR0xFLnZjeHByb2ovdHJhbnNsYXRvcl9o
bHNsLnZjeHByb2ouZmlsdGVyczoKKysgICAgICAgIFVwZGF0ZWQgQU5HTEUgYnVpbGQuCisrICAg
ICAgICAqIHNyYy9BTkdMRS5zbG46IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9idWlsZF9hbmds
ZS5neXA6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9jb21taXQuaDogQWRkZWQuCisrICAgICAg
ICAqIGNoYW5nZXMuZGlmZjoKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9Qcm9ncmFtLmNwcDoK
KysgICAgICAgIChnbDo6SW5mb0xvZzo6YXBwZW5kKToKKysgICAgICAgIEZpeGVkIHR5cG8uCisr
CisrMjAxNC0wNS0wMSAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3Jn
PgorKworKyAgICAgICAgRmluaXNoIHVwZGF0aW5nIEFOR0xFLgorKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzMjQzNAorKworKyAgICAgICAgUmV2aWV3
ZWQgYnkgRGVhbiBKYWNrc29uLgorKworKyAgICAgICAgKiBBTkdMRS54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qOgorKyAgICAgICAgUmVtb3ZlZCBVbmlmb3JtLmNwcCB3aGljaCBpcyBubyBsb25n
ZXIgaW4gQU5HTEUuCisrICAgICAgICAqIGNoYW5nZXMuZGlmZjoKKysgICAgICAgIEFkZGVkIG1v
cmUgY2hhbmdlcyBmcm9tIEFOR0xFIHdoaWNoIGFyZSBhbHJlYWR5IGluY2x1ZGVkIGluIFdlYktp
dC4KKysKKysgICAgICAgIFVwZGF0ZWQgQU5HTEUgc291cmNlIGZpbGVzIHRvIGU3YTQ1M2E1YmQ3
NjcwNWNjYjE1MTExN2ZhODQ0ODQ2ZDRhYTkwYWYuICBMb25nIGxpc3Qgb2YgY2hhbmdlcyBvbWl0
dGVkLgorKworKzIwMTQtMDQtMzAgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Vi
a2l0Lm9yZz4KKysKKysgICAgICAgIFVwZGF0ZWQgQU5HTEUuCisrICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTMyMzY3CisrICAgICAgICA8cmRhcjovL3By
b2JsZW0vMTYyMTE0NTE+CisrCisrICAgICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisr
CisrICAgICAgICAqIEFOR0xFLnBsaXN0OgorKyAgICAgICAgVXBkYXRlZCBhbmQgeG1sIGVuY29k
ZWQuCisrICAgICAgICAqIEFOR0xFLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisrICAgICAg
ICBBZGRlZCBuZWVkZWQgbmV3IHNvdXJjZSBmaWxlcy4KKysgICAgICAgICogY2hhbmdlcy5kaWZm
OiAKKysgICAgICAgIEFkZGVkIHRvIGtlZXAgdHJhY2sgb2YgZGlmZmVyZW5jZXMgYmV0d2VlbiBX
ZWJLaXQncyBjb3B5IG9mIEFOR0xFIGFuZCB0aGUgbWFzdGVyIHJlcG9zaXRvcnkuCisrICAgICAg
ICAKKysgICAgICAgIFVwZGF0ZWQgQU5HTEUgc291cmNlIGZpbGVzIHRvIGU3YTQ1M2E1YmQ3Njcw
NWNjYjE1MTExN2ZhODQ0ODQ2ZDRhYTkwYWYuICBMb25nIGxpc3Qgb2YgY2hhbmdlcyBvbWl0dGVk
LgorKworKzIwMTQtMDMtMjUgIE1hcnRpbiBSb2JpbnNvbiAgPG1yb2JpbnNvbkBpZ2FsaWEuY29t
PgorKworKyAgICAgICAgW0dUS10gUmVtb3ZlIHRoZSBhdXRvdG9vbHMgYnVpbGQKKysgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzA3MTcKKysKKysgICAg
ICAgIFJldmlld2VkIGJ5IEFuZGVycyBDYXJsc3Nvbi4KKysKKysgICAgICAgICogR05VbWFrZWZp
bGUuYW06IFJlbW92ZWQuCisrCisrMjAxNC0wMy0xNCAgTWFyayBSb3dlICA8bXJvd2VAYXBwbGUu
Y29tPgorKworKyAgICAgICAgRml4IHRoZSBwcm9kdWN0aW9uIGJ1aWxkLgorKworKyAgICAgICAg
RG9uJ3QgcmVseSBvbiBVU0VfSU5URVJOQUxfU0RLIGJlaW5nIHNldCBmb3IgdGhlIFByb2R1Y3Rp
b24gY29uZmlndXJhdGlvbiBzaW5jZSBVc2VJbnRlcm5hbFNESy54Y2NvbmZpZyB3b24ndAorKyAg
ICAgICAgYmUgYXQgdGhlIGV4cGVjdGVkIHJlbGF0aXZlIHBhdGggd2hlbiB3b3JraW5nIGZyb20g
aW5zdGFsbGVkIHNvdXJjZS4KKysKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMvQmFzZS54Y2Nv
bmZpZzoKKysKKysyMDE0LTAzLTEzICBUaW0gSG9ydG9uICA8dGltb3RoeV9ob3J0b25AYXBwbGUu
Y29tPgorKworKyAgICAgICAgRml4IHJlbGF0aXZlIHBhdGhzIHRvIFVzZUludGVybmFsU0RLLnhj
Y29uZmlnIGZvciBBTkdMRSBhbmQgV2ViS2l0L21hYworKworKyAgICAgICAgUnViYmVyLXN0YW1w
ZWQgYnkgTWFyayBSb3dlLgorKworKyAgICAgICAgT25lLXRvby1mZXcgIi4uIi4KKysKKysgICAg
ICAgICogQ29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZzoKKysKKysyMDE0LTAzLTEzICBSYWR1
IFN0YXZpbGEgIDxzdGF2aWxhQGFkb2JlLmNvbT4KKysKKysgICAgICAgIFdlYmtpdCBub3QgYnVp
bGRpbmcgb24gWENvZGUgNS4xIGR1ZSB0byBnYXJiYWdlIGNvbGxlY3Rpb24gbm8gbG9uZ2VyIGJl
aW5nIHN1cHBvcnRlZAorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTEzMDA4NworKworKyAgICAgICAgUmV2aWV3ZWQgYnkgTWFyayBSb3dlLgorKworKyAg
ICAgICAgRGlzYWJsZSBnYXJiYWdlIGNvbGxlY3Rpb24gb24gbWFjb3N4IHdoZW4gbm90IHVzaW5n
IGludGVybmFsIFNESy4KKysKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZp
ZzoKKysKKysyMDE0LTAyLTI0ICBEZWFuIEphY2tzb24gIDxkaW5vQGFwcGxlLmNvbT4KKysKKysg
ICAgICAgIFVucmV2aWV3ZWQuIFRoaXMgZmlsZSBzaG91bGQgbm90IGJlIG1hcmtlZCBhcyBleGVj
dXRhYmxlIChjb3BpZWQgaW4gZnJvbSBBTkdMRSkuCisrCisrICAgICAgICAqIGluY2x1ZGUvS0hS
L2tocnBsYXRmb3JtLmg6CisrCisrMjAxNC0wMi0yMyAgRGF2aWQgS2lsemVyICA8ZGRraWx6ZXJA
YXBwbGUuY29tPgorKworKyAgICAgICAgQU5HTEU6IFN0b3AgdXNpbmcgdW5zYWZlIHN0cmNweSBt
ZXRob2QKKysgICAgICAgIDxodHRwOi8vd2Via2l0Lm9yZy9iLzEyOTIzNz4KKysgICAgICAgIDxy
ZGFyOi8vcHJvYmxlbS8xMTA3NzU4MD4KKysKKysgICAgICAgIFJldmlld2VkIGJ5IERlYW4gSmFj
a3Nvbi4KKysKKysgICAgICAgICogaW5jbHVkZS9HTFNMQU5HL1NoYWRlckxhbmcuaDoKKysgICAg
ICAgIC0gRHJpdmUtYnkgZml4IGZvciBoZWFkZXIgZG9jdW1lbnRhdGlvbi4KKysKKysgICAgICAg
ICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvU2hhZGVyTGFuZy5jcHA6CisrICAgICAgICAoU2hH
ZXRJbmZvTG9nKToKKysgICAgICAgIChTaEdldE9iamVjdENvZGUpOgorKyAgICAgICAgKiBzcmMv
bGliR0xFU3YyL1Byb2dyYW0uY3BwOgorKyAgICAgICAgKGdsOjpJbmZvTG9nOjphcHBlbmQpOgor
KyAgICAgICAgLSBTd2l0Y2ggdG8gdXNlIHN0cm5jcHkoKSwgYW5kIGV4cGxpY2l0bHkgc2V0IE5V
TEwgdGVybWluYXRvciBhdAorKyAgICAgICAgICB0aGUgZW5kIG9mIHRoZSBidWZmZXIuCisrCisr
MjAxNC0wMi0yMyAgQnJlbnQgRnVsZ2hhbSAgPGJmdWxnaGFtQGFwcGxlLmNvbT4KKysKKysgICAg
ICAgIFtXaW5DYWlyb10gVW5yZXZpZXdlZCBidWlsZCBmaXggYWZ0ZXIgcjE2NDU2NS4KKysKKysg
ICAgICAgICogQU5HTEUudmN4cHJvai9saWJFR0wudmN4cHJvajogVXNlIGNvcnJlY3QgcGF0aCB0
byBmaWxlcy4KKysgICAgICAgICogQU5HTEUudmN4cHJvai9saWJHTEVTdjIudmN4cHJvajogRGl0
dG8uCisrICAgICAgICAqIEFOR0xFLnZjeHByb2ovbGliR0xFU3YyLnZjeHByb2ouZmlsdGVyczog
RGl0dG8uCisrICAgICAgICAqIEFOR0xFLnZjeHByb2ovcHJlcHJvY2Vzc29yLnZjeHByb2o6IERp
dHRvLgorKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL3RyYW5zbGF0b3JfY29tbW9uLnZjeHByb2o6
IERpdHRvLgorKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL3RyYW5zbGF0b3JfY29tbW9uLnZjeHBy
b2ouZmlsdGVyczogRGl0dG8uCisrICAgICAgICAqIEFOR0xFLnZjeHByb2ovdHJhbnNsYXRvcl9n
bHNsLnZjeHByb2o6IERpdHRvLgorKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL3RyYW5zbGF0b3Jf
Z2xzbC52Y3hwcm9qLmZpbHRlcnM6IERpdHRvLgorKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL3Ry
YW5zbGF0b3JfaGxzbC52Y3hwcm9qOiBEaXR0by4KKysgICAgICAgICogQU5HTEUudmN4cHJvai90
cmFuc2xhdG9yX2hsc2wudmN4cHJvai5maWx0ZXJzOiBEaXR0by4KKysKKysyMDE0LTAyLTIzICBE
ZWFuIEphY2tzb24gIDxkaW5vQGFwcGxlLmNvbT4KKysKKysgICAgICAgIE1pc3NpbmcgZmlsZXMg
ZnJvbSBwcmV2aW91cyBjb21taXQuCisrCisrMjAxNC0wMi0yMyAgRGVhbiBKYWNrc29uICA8ZGlu
b0BhcHBsZS5jb20+CisrCisrICAgICAgICBVcGRhdGUgQU5HTEUgdG8gODM2YmQyMTc2ZTU2MDdi
MTQ4NDZjZjFmYmM1OTMyZGJjOTEzMThmNAorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTEyOTIzMgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgQnJlbnQg
RnVsZ2hhbS4KKysKKysgICAgICAgIEkgYWxzbyByZWFwcGxpZWQgc29tZSBvZiBvdXIgY2hhbmdl
cyBmcm9tIHByZXZpb3VzIHVwZGF0ZXMsIGluY2x1ZGluZyBkaXNhYmxpbmcgdGhlIGNsYW5nIGRl
cHJlY2F0aW9uCisrICAgICAgICB3YXJuaW5ncyBpbiBzb21lIGZpbGVzLCBhZGRpbmcgdGhlIEFw
cGxlIG5vdGUgYWJvdXQgbGljZW5zZSBhbmQgZGVmaW5pbmcgWVlfTk9fSU5QVVQuCisrCisrICAg
ICAgICBIdWdlIGxpc3Qgb2Ygc291cmNlIGNoYW5nZXMgb21pdHRlZC4KKysKKysyMDEzLTEyLTE4
ICBDYXJsb3MgR2FyY2lhIENhbXBvcyAgPGNnYXJjaWFAaWdhbGlhLmNvbT4KKysKKysgICAgICAg
IFVucmV2aWV3ZWQuIEZpeCBtYWtlIGRpc3RjaGVjay4KKysKKysgICAgICAgICogR05VbWFrZWZp
bGUuYW06CisrCisrMjAxMy0xMi0xNyAgR3VzdGF2byBOb3JvbmhhIFNpbHZhICA8Z3VzdGF2by5u
b3JvbmhhQGNvbGxhYm9yYS5jb20+CisrCisrICAgICAgICBbR1RLXSBTb21lIEFOR0xFIGhlYWRl
cnMgbWlzc2luZyBmcm9tIGRpc3QKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xMjU3ODIKKysKKysgICAgICAgIFJldmlld2VkIGJ5IENhcmxvcyBHYXJj
aWEgQ2FtcG9zLgorKworKyAgICAgICAgKiBHTlVtYWtlZmlsZS5hbTogYWRkIGEgZmV3IGhlYWRl
cnMgdGhhdCB3ZXJlIG1pc3NpbmcgZnJvbSB0aGUgYnVpbGQsCisrICAgICAgICBjYXVzaW5nIGJ1
aWxkIGZhaWx1cmVzIHdoZW4gdGhlIHN5c3RlbSBoZWFkZXJzIHdlcmUgaW5jb21wYXRpYmxlLgor
KworKzIwMTMtMTItMTYgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9y
Zz4KKysKKysgICAgICAgIEZpeGVkIFdpbjY0IGJ1aWxkIG9uIFZTMjAxMy4KKysgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjU3NTMKKysKKysgICAgICAg
IFJldmlld2VkIGJ5IEJyZW50IEZ1bGdoYW0uCisrCisrICAgICAgICAqIEFOR0xFLnZjeHByb2ov
bGliR0xFU3YyLnZjeHByb2o6CisrICAgICAgICAqIEFOR0xFLnZjeHByb2ovcHJlcHJvY2Vzc29y
LnZjeHByb2o6CisrICAgICAgICAqIEFOR0xFLnZjeHByb2ovdHJhbnNsYXRvcl9jb21tb24udmN4
cHJvajoKKysgICAgICAgICogQU5HTEUudmN4cHJvai90cmFuc2xhdG9yX2dsc2wudmN4cHJvajoK
KysgICAgICAgICogQU5HTEUudmN4cHJvai90cmFuc2xhdG9yX2hsc2wudmN4cHJvajoKKysgICAg
ICAgIEFkZGVkIGNvcnJlY3QgUGxhdGZvcm1Ub29sc2V0IGZvciA2NC1iaXQgYnVpbGRzLgorKwor
KzIwMTMtMTItMTMgIEJyZW50IEZ1bGdoYW0gIDxiZnVsZ2hhbUBhcHBsZS5jb20+CisrCisrICAg
ICAgICBbV2luXSBVbnJldmlld2VkIGJ1aWxkIGZpeCBhZnRlciByMTYwNTQ4CisrCisrICAgICAg
ICBJIG1pc3NlZCB0aGUgQU5HTEUgZmlsZXMsIHNpbmNlIHdlIGFyZW4ndCBidWlsZGluZyB0aGVz
ZQorKyAgICAgICAgb24gdGhlIEFwcGxlIFdpbmRvd3MgcG9ydCBhdCB0aGUgbW9tZW50LgorKwor
KyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL2xpYkVHTC52Y3hwcm9qOiBVcGRhdGUgdG8gVlMyMDEz
CisrICAgICAgICAqIEFOR0xFLnZjeHByb2ovbGliR0xFU3YyLnZjeHByb2o6IERpdHRvCisrICAg
ICAgICAqIEFOR0xFLnZjeHByb2ovcHJlcHJvY2Vzc29yLnZjeHByb2o6IERpdHRvCisrICAgICAg
ICAqIEFOR0xFLnZjeHByb2ovdHJhbnNsYXRvcl9jb21tb24udmN4cHJvajogRGl0dG8KKysgICAg
ICAgICogQU5HTEUudmN4cHJvai90cmFuc2xhdG9yX2dsc2wudmN4cHJvajogRGl0dG8KKysgICAg
ICAgICogQU5HTEUudmN4cHJvai90cmFuc2xhdG9yX2hsc2wudmN4cHJvajogRGl0dG8KKysKKysy
MDEzLTEyLTA2ICBDb21taXQgUXVldWUgIDxjb21taXQtcXVldWVAd2Via2l0Lm9yZz4KKysKKysg
ICAgICAgIFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0IHIxNTk1NDMuCisrICAgICAgICBodHRwOi8v
dHJhYy53ZWJraXQub3JnL2NoYW5nZXNldC8xNTk1NDMKKysgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjUzNzEKKysKKysgICAgICAgIEJ1aWxkIGZpeCBm
b3IgbWFjIG5vIGxvbmdlciBuZWVkZWQgKFJlcXVlc3RlZCBieSByZm9uZyBvbgorKyAgICAgICAg
I3dlYmtpdCkuCisrCisrICAgICAgICAqIEFOR0xFLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6
CisrICAgICAgICAqIHNyYy9jb21waWxlci9nbHNsYW5nX3RhYi5jcHA6CisrICAgICAgICAoeXlz
eW50YXhfZXJyb3IpOgorKyAgICAgICAgKGdsc2xhbmdfcGFyc2UpOgorKyAgICAgICAgKiBzcmMv
Y29tcGlsZXIvZ2xzbGFuZ190YWIuaDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nl
c3Nvci9FeHByZXNzaW9uUGFyc2VyLmNwcDoKKysgICAgICAgICh5eV9zeW1ib2xfcHJpbnQpOgor
KyAgICAgICAgKHl5X3N0YWNrX3ByaW50KToKKysgICAgICAgICh5eV9yZWR1Y2VfcHJpbnQpOgor
KyAgICAgICAgKHl5dG5hbWVycik6CisrICAgICAgICAoeXlzeW50YXhfZXJyb3IpOgorKyAgICAg
ICAgKHl5ZGVzdHJ1Y3QpOgorKyAgICAgICAgKHl5cGFyc2UpOgorKworKzIwMTMtMTItMDUgIFJv
Z2VyIEZvbmcgIDxyb2dlcl9mb25nQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFtXZWJHTF0gTWFr
ZSBzdXJlIHdlIHNhdGlzZnkgdW5pZm9ybSBhbmQgdmFyeWluZyBwYWNraW5nIHJlc3RyaWN0aW9u
cy4KKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjUx
MjQuCisrICAgICAgICA8cmRhcjovL3Byb2JsZW0vMTUyMDMyOTE+CisrCisrICAgICAgICBSZXZp
ZXdlZCBieSBCcmVudCBGdWxnaGFtLgorKworKyAgICAgICAgKiBzcmMvY29tcGlsZXIvQ29tcGls
ZXIuY3BwOiAKKysgICAgICAgIEFkZCBhIGNoZWNrIHRvIGVuZm9yY2VQYWNraW5nUmVzdHJpY3Rp
b25zIHRvIGVuc3VyZSB3ZSBtYWtlIHN1cmUgcGFja2luZyByZXN0cmljdGlvbnMgZm9yIHZhcnlp
bmdzIGFyZSBzYXRpc2ZpZWQgYXMgd2VsbC4KKysgICAgICAgIChUQ29tcGlsZXI6OlRDb21waWxl
cik6CisrICAgICAgICAoVENvbXBpbGVyOjpJbml0KToKKysgICAgICAgIChUQ29tcGlsZXI6OmNv
bXBpbGUpOgorKyAgICAgICAgKFRDb21waWxlcjo6ZW5mb3JjZVBhY2tpbmdSZXN0cmljdGlvbnMp
OgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvU2hIYW5kbGUuaDogS2VlcCB0cmFjayBvZiBtYXhp
bXVtIHZhcnlpbmcgdmVjdG9ycy4KKysKKysyMDEzLTEyLTA1ICBNYXR0aGV3IEhhbnNvbiAgPG1h
dHRoZXdfaGFuc29uQGFwcGxlLmNvbT4KKysKKysgICAgICAgIEZpeCBBTkdMRSBidWlsZCBmYWls
dXJlcyBieSByZS1jb21pdHRpbmcgdGhlIGNoYW5nZXMgaW4gaHR0cDovL3RyYWMud2Via2l0Lm9y
Zy9jaGFuZ2VzZXQvMTU0MjIzCisrICAgICAgICBvbiB0b3Agb2YgdGhlIGxpYnJhcnkgdXBkYXRl
cyBpbnRyb2R1Y2VkIGJ5IGh0dHA6Ly90cmFjLndlYmtpdC5vcmcvY2hhbmdlc2V0LzE1OTUzMy4K
KysKKysgICAgICAgIFJ1YmJlci1zdGFtcGVkIGJ5IEJhYmFrIFNoYWZpZWkuCisrCisrICAgICAg
ICAqIHNyYy9jb21waWxlci9nbHNsYW5nLmw6CisrICAgICAgICAqIHNyYy9jb21waWxlci9nbHNs
YW5nX2xleC5jcHA6CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvVG9rZW5p
emVyLmNwcDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9Ub2tlbml6ZXIu
bDoKKysKKysyMDEzLTEyLTAzICBEYW5pZWwgQmF0ZXMgIDxkYWJhdGVzQGFwcGxlLmNvbT4KKysK
KysgICAgICAgIEFOR0xFIGZhaWxzIHRvIGJ1aWxkIHdpdGggdHJ1bmsgY2xhbmc6IHVudXNlZCBj
b25zdGFudCBrVHJhY2VCdWZmZXJMZW4KKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0xMjUxNjQKKysgICAgICAgIGh0dHBzOi8vY29kZS5nb29nbGUuY29t
L3AvYW5nbGVwcm9qZWN0L2lzc3Vlcy9kZXRhaWw/aWQ9NTM0CisrCisrICAgICAgICBSZXZpZXdl
ZCBieSBEYXJpbiBBZGxlci4KKysKKysgICAgICAgIE1vdmUgdGhlIGRlZmluaXRpb24gb2YgdGhl
IGNvbnN0YW50IGtUcmFjZUJ1ZmZlckxlbiB1bmRlciB0aGUgbWFjcm8KKysgICAgICAgIGd1YXJk
IFRSQUNFX0VOQUJMRUQgc2luY2UgaXQncyBvbmx5IHJlZmVyZW5jZWQgaW4gY29kZSBndWFyZGVk
IGJ5CisrICAgICAgICBUUkFDRV9FTkFCTEVELgorKworKyAgICAgICAgKiBzcmMvY29tcGlsZXIv
ZGVidWcuY3BwOgorKworKzIwMTMtMTEtMjEgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5z
ZW5Ad2Via2l0Lm9yZz4KKysKKysgICAgICAgIFJlbW92ZSBBTkdMRUdlbmVyYXRlZCBmcm9tIFdp
bmRvd3MgYnVpbGQuCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTI0NzU5CisrCisrICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KKysKKysg
ICAgICAgICogQU5HTEUudmN4cHJvai9BTkdMRUdlbmVyYXRlZC52Y3hwcm9qOiBSZW1vdmVkLgor
KyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL0FOR0xFR2VuZXJhdGVkLnZjeHByb2ouZmlsdGVyczog
UmVtb3ZlZC4KKysKKysyMDEzLTExLTIxICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2Vu
QHdlYmtpdC5vcmc+CisrCisrICAgICAgICBVbnJldmlld2VkIGJ1aWxkIGZpeC4KKysKKysgICAg
ICAgICogc3JjL2xpYkdMRVN2Mi9Db25zdGFudHMuaDogQWRkZWQgZnJvbSBjaGVja291dCBhNjBl
MDgwNTcyMWY2MmMyOGE1NWZhZjJkZjc0NDcyY2M1ZmM5MWZjLgorKworKzIwMTMtMTEtMjEgIE1h
cmsgUm93ZSAgPG1yb3dlQGFwcGxlLmNvbT4KKysKKysgICAgICAgIDxodHRwczovL3dlYmtpdC5v
cmcvYi8xMjQ3MDE+IEZpeCBhbiBlcnJvciBpbiBhIGZldyBYY29kZSBjb25maWd1cmF0aW9uIHNl
dHRpbmcgZmlsZXMuCisrCisrICAgICAgICBSZXZpZXdlZCBieSBBbGV4ZXkgUHJvc2t1cnlha292
LgorKworKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnOgorKworKzIwMTMt
MTEtMjEgIEJyZW50IEZ1bGdoYW0gIDxiZnVsZ2hhbUBhcHBsZS5jb20+CisrCisrICAgICAgICBV
bnJldmlld2VkIGdhcmRlbmluZyB0byBoaWRlIGFubm95aW5nICoudXNlciBmaWxlcyB3aGVuLgor
KworKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qOiBBZGRlZCBwcm9wZXJ0eSBzdm46aWdub3JlLgor
KworKzIwMTMtMTEtMjEgIHBlYXZvQG91dGxvb2suY29tICA8cGVhdm9Ab3V0bG9vay5jb20+Cisr
CisrICAgICAgICBbV2luQ2Fpcm9dIEJ1aWxkaW5nIEFOR0xFIGxpYnJhcmllcyBmYWlscy4KKysg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjQ2NzkKKysK
KysgICAgICAgIFJldmlld2VkIGJ5IEJyZW50IEZ1bGdoYW0uCisrCisrICAgICAgICBBZGRlZC9y
ZW1vdmVkIGZpbGVzIHRvL2Zyb20gcHJvamVjdCwgYW5kIHJlLWFkZGVkIGNvbnN0YW50cy5oIGZp
bGUuCisrCisrICAgICAgICAqIEFOR0xFLnZjeHByb2ovbGliRUdMLnZjeHByb2o6CisrICAgICAg
ICAqIEFOR0xFLnZjeHByb2ovbGliRUdMLnZjeHByb2ouZmlsdGVyczoKKysgICAgICAgICogQU5H
TEUudmN4cHJvai9saWJHTEVTdjIudmN4cHJvajoKKysgICAgICAgICogQU5HTEUudmN4cHJvai9s
aWJHTEVTdjIudmN4cHJvai5maWx0ZXJzOgorKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL2xpYkdM
RVN2MkNvbW1vbi5wcm9wczoKKysgICAgICAgICogQU5HTEUudmN4cHJvai90cmFuc2xhdG9yX2Nv
bW1vbi52Y3hwcm9qOgorKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL3RyYW5zbGF0b3JfY29tbW9u
LnZjeHByb2ouZmlsdGVyczoKKysgICAgICAgICogQU5HTEUudmN4cHJvai90cmFuc2xhdG9yX2ds
c2wudmN4cHJvajoKKysgICAgICAgICogQU5HTEUudmN4cHJvai90cmFuc2xhdG9yX2dsc2wudmN4
cHJvai5maWx0ZXJzOgorKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL3RyYW5zbGF0b3JfaGxzbC52
Y3hwcm9qOgorKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL3RyYW5zbGF0b3JfaGxzbC52Y3hwcm9q
LmZpbHRlcnM6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvbGliR0xFU3YyLmRlZjoKKysKKysy
MDEzLTExLTIwICBTZXJnaW8gQ29ycmVpYSAgPHNlcmdpby5jb3JyZWlhQG9wZW5ib3NzYS5vcmc+
CisrCisrICAgICAgICBBTkdMRSBkb2Vzbid0IGJ1aWxkIHdpdGggYmlzb24gMy4wCisrICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTI0NjQyCisrCisrICAg
ICAgICBSZXZpZXdlZCBieSBHeXV5b3VuZyBLaW0uCisrCisrICAgICAgICBUaGlzIGlzIGEgcmVl
ZGl0aW9uIG9mIHIxNTQxMDksIG5vdyB0aGF0IEFOR0xFIHNvdXJjZSBoYXMgYmVlbiB1cGRhdGVk
CisrICAgICAgICBpbiByMTU5NTMzLgorKworKyAgICAgICAgKiBzcmMvY29tcGlsZXIvZ2xzbGFu
Zy55OiBVc2UgJWxleC1wYXJhbSB0byBzZXQgWVlMRVhfUEFSQU0gYW5kIHN0b3AKKysgICAgICAg
IHVzaW5nIHRoZSBkZXByZWNhdGVkIFlZSUQgbWFjcm8uCisrCisrMjAxMy0xMS0yMCAgQ2FybG9z
IEdhcmNpYSBDYW1wb3MgIDxjZ2FyY2lhQGlnYWxpYS5jb20+CisrCisrICAgICAgICBVbnJldmll
d2VkLiBGaXggR1RLIGJ1aWxkLgorKworKyAgICAgICAgKiBHTlVtYWtlZmlsZS5hbTogUmVtb3Zl
IGR1cGxpY2F0ZWQgZW50cmllcy4KKysKKysyMDEzLTExLTE5ICBNYXJ0aW4gUm9iaW5zb24gIDxt
cm9iaW5zb25AaWdhbGlhLmNvbT4KKysKKysgICAgICAgIEZpeCB0aGUgR1RLKyBidWlsZCBhZnRl
ciB0aGUgQU5HTEUgdXBkYXRlIGluIHIxNTk1MzMKKysKKysgICAgICAgICogR05VbWFrZWZpbGUu
YW06IFVwZGF0ZSB0aGUgc291cmNlIGxpc3QuCisrCisrMjAxMy0xMS0xOSAgUm9nZXIgRm9uZyAg
PHJvZ2VyX2ZvbmdAYXBwbGUuY29tPgorKworKyAgICAgICAgVW5yZXZpZXdlZC4gQnVpbGQgZml4
IGZvciBNYWMuCisrCisrICAgICAgICAqIHNyYy9jb21waWxlci9nbHNsYW5nX3RhYi5jcHA6Cisr
ICAgICAgICAoeXlzeW50YXhfZXJyb3IpOgorKyAgICAgICAgKHl5ZXJyb3IpOgorKyAgICAgICAg
KiBzcmMvY29tcGlsZXIvZ2xzbGFuZ190YWIuaDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3By
ZXByb2Nlc3Nvci9FeHByZXNzaW9uUGFyc2VyLmNwcDoKKysgICAgICAgICh5eXN5bnRheF9lcnJv
cik6CisrCisrMjAxMy0xMS0xOSAgUm9nZXIgRm9uZyAgPHJvZ2VyX2ZvbmdAYXBwbGUuY29tPgor
KworKyAgICAgICAgVW5yZXZpZXdlZC4gUHJvc3BlY3RpdmUgYnVpbGQgZml4IGZvciBHVEsgcG9y
dCBmb2xsb3dpbmcgcjE1OTUzMy4KKysKKysgICAgICAgICogR05VbWFrZWZpbGUuYW06CisrCisr
MjAxMy0xMS0xOSAgUm9nZXIgRm9uZyAgPHJvZ2VyX2ZvbmdAYXBwbGUuY29tPgorKworKyAgICAg
ICAgVXBkYXRlIEFOR0xFIHNvdXJjZXMuCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MTI0NjE1LgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGVhbiBK
YWNrc29uLgorKworKyAgICAgICAgVXBkYXRlIEFOR0xFIHRvIGNoZWNrb3V0IGE2MGUwODA1NzIx
ZjYyYzI4YTU1ZmFmMmRmNzQ0NzJjYzVmYzkxZmMuCisrICAgICAgICBNb2RpZnkgeGNvZGVwcm9q
IGZpbGVzIGFzIG5lY2Vzc2FyeSwgdXBkYXRlIHBsaXN0LgorKyAgICAgICAgU3RvcCB1c2luZyBE
ZXJpdmVkU291cmNlcy5tYWtlIGFuZCBqdXN0IHVzZSB0aGUgZ2VuZXJhdGVkIHNvdXJjZXMgdGhh
dCBhcmUgY2hlY2tlZCBpbnRvIEFOR0xFLgorKyAgICAgICAgQWRkIGEgbm90ZSB0byBiaXNvbiBn
ZW5lcmF0ZWQgZmlsZXMgaW5kaWNhdGluZyB0aGF0IEFwcGxlIGVsZWN0cyB0byBkaXN0cmlidXRl
IHNhaWQgZmlsZXMgdW5kZXIgdGhlIEJTRCBsaWNlbnNlOiAKKysgICAgICAgIEV4cHJlc3Npb25Q
YXJzZXIuY3BwLCBnbHNsYW5nX3RhYi5jcHAsIGdsc2xhbmdfdGFiLmguCisrCisrICAgICAgICAq
IEFOR0xFLnBsaXN0OgorKyAgICAgICAgKiBBTkdMRS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
OgorKyAgICAgICAgKiBEZXJpdmVkU291cmNlcy5tYWtlOiBSZW1vdmVkLgorKyAgICAgICAgKiBp
bmNsdWRlL0VHTC9lZ2wuaDoKKysgICAgICAgICogaW5jbHVkZS9FR0wvZWdsc29mdGxpbmtpbmcu
aDogUmVtb3ZlZC4KKysgICAgICAgICogaW5jbHVkZS9HTEVTMi9nbDIuaDoKKysgICAgICAgICog
aW5jbHVkZS9HTEVTMi9nbDJzb2Z0bGlua2luZy5oOiBSZW1vdmVkLgorKyAgICAgICAgKiBpbmNs
dWRlL0dMU0xBTkcvU2hhZGVyTGFuZy5oOgorKyAgICAgICAgKiBpbmNsdWRlL0tIUi9raHJwbGF0
Zm9ybS5oOgorKyAgICAgICAgKiBzcmMvQU5HTEUuc2xuOiBBZGRlZC4KKysgICAgICAgICogc3Jj
L2J1aWxkX2FuZ2xlLmd5cGk6CisrICAgICAgICAqIHNyYy9jb21tb24vZGVidWcuaDoKKysgICAg
ICAgICogc3JjL2NvbW1vbi9ldmVudF90cmFjZXIuY3BwOiBBZGRlZC4KKysgICAgICAgIChnbDo6
VHJhY2VHZXRUcmFjZUNhdGVnb3J5RW5hYmxlZEZsYWcpOgorKyAgICAgICAgKGdsOjpUcmFjZUFk
ZFRyYWNlRXZlbnQpOgorKyAgICAgICAgKiBzcmMvY29tbW9uL2V2ZW50X3RyYWNlci5oOiBBZGRl
ZC4KKysgICAgICAgICogc3JjL2NvbW1vbi92ZXJzaW9uLmg6CisrICAgICAgICAqIHNyYy9jb21w
aWxlci9Db2RlR2VuLmNwcDogQWRkZWQuCisrICAgICAgICAoQ29uc3RydWN0Q29tcGlsZXIpOgor
KyAgICAgICAgKERlbGV0ZUNvbXBpbGVyKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL0NvZGVH
ZW5HTFNMLmNwcDogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL0NvZGVHZW5ITFNM
LmNwcDogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL0NvbW1vbi5oOgorKyAgICAg
ICAgKE5ld1Bvb2xUU3RyaW5nKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL0NvbXBpbGVyLmNw
cDoKKysgICAgICAgIChUQ29tcGlsZXI6OkluaXQpOgorKyAgICAgICAgKFRDb21waWxlcjo6Y29t
cGlsZSk6CisrICAgICAgICAoVENvbXBpbGVyOjpJbml0QnVpbHRJblN5bWJvbFRhYmxlKToKKysg
ICAgICAgIChUQ29tcGlsZXI6OmNsZWFyUmVzdWx0cyk6CisrICAgICAgICAoVENvbXBpbGVyOjpj
b2xsZWN0VmFyaWFibGVzKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL0NvbnN0YW50VW5pb24u
aDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL0RldGVjdERpc2NvbnRpbnVpdHkuY3BwOgorKyAg
ICAgICAgKiBzcmMvY29tcGlsZXIvSW5mb1NpbmsuaDoKKysgICAgICAgICogc3JjL2NvbXBpbGVy
L0luaXRpYWxpemVEbGwuY3BwOgorKyAgICAgICAgKEluaXRQcm9jZXNzKToKKysgICAgICAgIChE
ZXRhY2hQcm9jZXNzKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL0luaXRpYWxpemVEbGwuaDoK
KysgICAgICAgICogc3JjL2NvbXBpbGVyL0luaXRpYWxpemVHTFBvc2l0aW9uLmNwcDogQWRkZWQu
CisrICAgICAgICAoSW5pdGlhbGl6ZUdMUG9zaXRpb246OnZpc2l0QWdncmVnYXRlKToKKysgICAg
ICAgIChJbml0aWFsaXplR0xQb3NpdGlvbjo6aW5zZXJ0Q29kZSk6CisrICAgICAgICAqIHNyYy9j
b21waWxlci9Jbml0aWFsaXplR0xQb3NpdGlvbi5oOiBBZGRlZC4KKysgICAgICAgIChJbml0aWFs
aXplR0xQb3NpdGlvbjo6SW5pdGlhbGl6ZUdMUG9zaXRpb24pOgorKyAgICAgICAgKEluaXRpYWxp
emVHTFBvc2l0aW9uOjp2aXNpdEJpbmFyeSk6CisrICAgICAgICAoSW5pdGlhbGl6ZUdMUG9zaXRp
b246OnZpc2l0VW5hcnkpOgorKyAgICAgICAgKEluaXRpYWxpemVHTFBvc2l0aW9uOjp2aXNpdFNl
bGVjdGlvbik6CisrICAgICAgICAoSW5pdGlhbGl6ZUdMUG9zaXRpb246OnZpc2l0TG9vcCk6Cisr
ICAgICAgICAoSW5pdGlhbGl6ZUdMUG9zaXRpb246OnZpc2l0QnJhbmNoKToKKysgICAgICAgICog
c3JjL2NvbXBpbGVyL0luaXRpYWxpemVHbG9iYWxzLmg6CisrICAgICAgICAqIHNyYy9jb21waWxl
ci9Jbml0aWFsaXplUGFyc2VDb250ZXh0LmNwcDoKKysgICAgICAgIChJbml0aWFsaXplUGFyc2VD
b250ZXh0SW5kZXgpOgorKyAgICAgICAgKEZyZWVQYXJzZUNvbnRleHRJbmRleCk6CisrICAgICAg
ICAoU2V0R2xvYmFsUGFyc2VDb250ZXh0KToKKysgICAgICAgIChHZXRHbG9iYWxQYXJzZUNvbnRl
eHQpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvSW5pdGlhbGl6ZVBhcnNlQ29udGV4dC5oOgor
KyAgICAgICAgKiBzcmMvY29tcGlsZXIvSW50ZXJtVHJhdmVyc2UuY3BwOgorKyAgICAgICAgKFRJ
bnRlcm1TeW1ib2w6OnRyYXZlcnNlKToKKysgICAgICAgIChUSW50ZXJtQ29uc3RhbnRVbmlvbjo6
dHJhdmVyc2UpOgorKyAgICAgICAgKFRJbnRlcm1CaW5hcnk6OnRyYXZlcnNlKToKKysgICAgICAg
IChUSW50ZXJtVW5hcnk6OnRyYXZlcnNlKToKKysgICAgICAgIChUSW50ZXJtQWdncmVnYXRlOjp0
cmF2ZXJzZSk6CisrICAgICAgICAoVEludGVybVNlbGVjdGlvbjo6dHJhdmVyc2UpOgorKyAgICAg
ICAgKFRJbnRlcm1Mb29wOjp0cmF2ZXJzZSk6CisrICAgICAgICAoVEludGVybUJyYW5jaDo6dHJh
dmVyc2UpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvSW50ZXJtZWRpYXRlLmNwcDoKKysgICAg
ICAgIChHZXRIaWdoZXJQcmVjaXNpb24pOgorKyAgICAgICAgKGdldE9wZXJhdG9yU3RyaW5nKToK
KysgICAgICAgIChUSW50ZXJtTG9vcDo6cmVwbGFjZUNoaWxkTm9kZSk6CisrICAgICAgICAoVElu
dGVybUJyYW5jaDo6cmVwbGFjZUNoaWxkTm9kZSk6CisrICAgICAgICAoVEludGVybUJpbmFyeTo6
cmVwbGFjZUNoaWxkTm9kZSk6CisrICAgICAgICAoVEludGVybVVuYXJ5OjpyZXBsYWNlQ2hpbGRO
b2RlKToKKysgICAgICAgIChUSW50ZXJtQWdncmVnYXRlOjpyZXBsYWNlQ2hpbGROb2RlKToKKysg
ICAgICAgIChUSW50ZXJtU2VsZWN0aW9uOjpyZXBsYWNlQ2hpbGROb2RlKToKKysgICAgICAgIChU
SW50ZXJtT3BlcmF0b3I6OmlzQXNzaWdubWVudCk6CisrICAgICAgICAoVEludGVybWVkaWF0ZTo6
cHJvbW90ZUNvbnN0YW50VW5pb24pOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvTWFwTG9uZ1Zh
cmlhYmxlTmFtZXMuY3BwOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvTWFwTG9uZ1ZhcmlhYmxl
TmFtZXMuaDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL05vZGVTZWFyY2guaDogQWRkZWQuCisr
ICAgICAgICAoc2g6Ok5vZGVTZWFyY2hUcmF2ZXJzZXI6Ok5vZGVTZWFyY2hUcmF2ZXJzZXIpOgor
KyAgICAgICAgKHNoOjpOb2RlU2VhcmNoVHJhdmVyc2VyOjpmb3VuZCk6CisrICAgICAgICAoc2g6
Ok5vZGVTZWFyY2hUcmF2ZXJzZXI6OnNlYXJjaCk6CisrICAgICAgICAoc2g6OkZpbmREaXNjYXJk
Ojp2aXNpdEJyYW5jaCk6CisrICAgICAgICAoc2g6OkZpbmRTaWRlRWZmZWN0UmV3cml0aW5nOjp2
aXNpdEJpbmFyeSk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9PdXRwdXRHTFNMQmFzZS5jcHA6
CisrICAgICAgICAoVE91dHB1dEdMU0xCYXNlOjp2aXNpdFNlbGVjdGlvbik6CisrICAgICAgICAo
VE91dHB1dEdMU0xCYXNlOjp2aXNpdEFnZ3JlZ2F0ZSk6CisrICAgICAgICAoVE91dHB1dEdMU0xC
YXNlOjp2aXNpdExvb3ApOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvT3V0cHV0R0xTTEJhc2Uu
aDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL091dHB1dEhMU0wuY3BwOgorKyAgICAgICAgKHNo
OjpPdXRwdXRITFNMOjpPdXRwdXRITFNMKToKKysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6aGVh
ZGVyKToKKysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6dmlzaXRCaW5hcnkpOgorKyAgICAgICAg
KHNoOjpPdXRwdXRITFNMOjp2aXNpdFNlbGVjdGlvbik6CisrICAgICAgICAoc2g6Ok91dHB1dEhM
U0w6OnZpc2l0QnJhbmNoKToKKysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6aGFuZGxlRXhjZXNz
aXZlTG9vcCk6CisrICAgICAgICAoc2g6Ok91dHB1dEhMU0w6OmFkZENvbnN0cnVjdG9yKToKKysg
ICAgICAgICogc3JjL2NvbXBpbGVyL091dHB1dEhMU0wuaDoKKysgICAgICAgICogc3JjL2NvbXBp
bGVyL1BhcnNlQ29udGV4dC5jcHA6IEFkZGVkLgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OnBh
cnNlVmVjdG9yRmllbGRzKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0OjpwYXJzZU1hdHJpeEZp
ZWxkcyk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6cmVjb3Zlcik6CisrICAgICAgICAoVFBh
cnNlQ29udGV4dDo6ZXJyb3IpOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6Ondhcm5pbmcpOgor
KyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OnRyYWNlKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0
Ojphc3NpZ25FcnJvcik6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6dW5hcnlPcEVycm9yKToK
KysgICAgICAgIChUUGFyc2VDb250ZXh0OjpiaW5hcnlPcEVycm9yKToKKysgICAgICAgIChUUGFy
c2VDb250ZXh0OjpwcmVjaXNpb25FcnJvckNoZWNrKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0
OjpsVmFsdWVFcnJvckNoZWNrKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0Ojpjb25zdEVycm9y
Q2hlY2spOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OmludGVnZXJFcnJvckNoZWNrKToKKysg
ICAgICAgIChUUGFyc2VDb250ZXh0OjpnbG9iYWxFcnJvckNoZWNrKToKKysgICAgICAgIChUUGFy
c2VDb250ZXh0OjpyZXNlcnZlZEVycm9yQ2hlY2spOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6
OmNvbnN0cnVjdG9yRXJyb3JDaGVjayk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6dm9pZEVy
cm9yQ2hlY2spOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OmJvb2xFcnJvckNoZWNrKToKKysg
ICAgICAgIChUUGFyc2VDb250ZXh0OjpzYW1wbGVyRXJyb3JDaGVjayk6CisrICAgICAgICAoVFBh
cnNlQ29udGV4dDo6c3RydWN0UXVhbGlmaWVyRXJyb3JDaGVjayk6CisrICAgICAgICAoVFBhcnNl
Q29udGV4dDo6cGFyYW1ldGVyU2FtcGxlckVycm9yQ2hlY2spOgorKyAgICAgICAgKFRQYXJzZUNv
bnRleHQ6OmNvbnRhaW5zU2FtcGxlcik6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6YXJyYXlT
aXplRXJyb3JDaGVjayk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6YXJyYXlRdWFsaWZpZXJF
cnJvckNoZWNrKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0OjphcnJheVR5cGVFcnJvckNoZWNr
KToKKysgICAgICAgIChUUGFyc2VDb250ZXh0OjphcnJheUVycm9yQ2hlY2spOgorKyAgICAgICAg
KFRQYXJzZUNvbnRleHQ6Om5vbkluaXRDb25zdEVycm9yQ2hlY2spOgorKyAgICAgICAgKFRQYXJz
ZUNvbnRleHQ6Om5vbkluaXRFcnJvckNoZWNrKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0Ojpw
YXJhbUVycm9yQ2hlY2spOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OmV4dGVuc2lvbkVycm9y
Q2hlY2spOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OnN1cHBvcnRzRXh0ZW5zaW9uKToKKysg
ICAgICAgIChUUGFyc2VDb250ZXh0Ojppc0V4dGVuc2lvbkVuYWJsZWQpOgorKyAgICAgICAgKFRQ
YXJzZUNvbnRleHQ6OmZpbmRGdW5jdGlvbik6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6ZXhl
Y3V0ZUluaXRpYWxpemVyKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0OjphcmVBbGxDaGlsZENv
bnN0KToKKysgICAgICAgIChUUGFyc2VDb250ZXh0OjphZGRDb25zdHJ1Y3Rvcik6CisrICAgICAg
ICAoVFBhcnNlQ29udGV4dDo6Zm9sZENvbnN0Q29uc3RydWN0b3IpOgorKyAgICAgICAgKFRQYXJz
ZUNvbnRleHQ6OmNvbnN0cnVjdEJ1aWx0SW4pOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OmNv
bnN0cnVjdFN0cnVjdCk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6YWRkQ29uc3RWZWN0b3JO
b2RlKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0OjphZGRDb25zdE1hdHJpeE5vZGUpOgorKyAg
ICAgICAgKFRQYXJzZUNvbnRleHQ6OmFkZENvbnN0QXJyYXlOb2RlKToKKysgICAgICAgIChUUGFy
c2VDb250ZXh0OjphZGRDb25zdFN0cnVjdCk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6ZW50
ZXJTdHJ1Y3REZWNsYXJhdGlvbik6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6ZXhpdFN0cnVj
dERlY2xhcmF0aW9uKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0OjpzdHJ1Y3ROZXN0aW5nRXJy
b3JDaGVjayk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6YWRkSW5kZXhFeHByZXNzaW9uKToK
KysgICAgICAgIChQYVBhcnNlU3RyaW5ncyk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9QYXJz
ZUNvbnRleHQuaDogQWRkZWQuCisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6VFBhcnNlQ29udGV4
dCk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6bnVtRXJyb3JzKToKKysgICAgICAgIChUUGFy
c2VDb250ZXh0OjppbmZvU2luayk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6cHJhZ21hKToK
KysgICAgICAgIChUUGFyc2VDb250ZXh0OjpleHRlbnNpb25CZWhhdmlvcik6CisrICAgICAgICAq
IHNyYy9jb21waWxlci9QYXJzZUhlbHBlci5jcHA6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9j
b21waWxlci9QYXJzZUhlbHBlci5oOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIv
UG9vbEFsbG9jLmNwcDoKKysgICAgICAgIChJbml0aWFsaXplUG9vbEluZGV4KToKKysgICAgICAg
IChGcmVlUG9vbEluZGV4KToKKysgICAgICAgIChHZXRHbG9iYWxQb29sQWxsb2NhdG9yKToKKysg
ICAgICAgIChTZXRHbG9iYWxQb29sQWxsb2NhdG9yKToKKysgICAgICAgICogc3JjL2NvbXBpbGVy
L1Bvb2xBbGxvYy5oOgorKyAgICAgICAgKHBvb2xfYWxsb2NhdG9yOjpwb29sX2FsbG9jYXRvcik6
CisrICAgICAgICAqIHNyYy9jb21waWxlci9TZWFyY2hTeW1ib2wuaDoKKysgICAgICAgICogc3Jj
L2NvbXBpbGVyL1NoSGFuZGxlLmg6CisrICAgICAgICAoVENvbXBpbGVyOjpnZXRWYXJ5aW5ncyk6
CisrICAgICAgICAqIHNyYy9jb21waWxlci9TaGFkZXJMYW5nLmNwcDoKKysgICAgICAgIChjaGVj
a1ZhcmlhYmxlTWF4TGVuZ3Rocyk6CisrICAgICAgICAoU2hJbml0aWFsaXplKToKKysgICAgICAg
IChTaEZpbmFsaXplKToKKysgICAgICAgIChTaENvbnN0cnVjdENvbXBpbGVyKToKKysgICAgICAg
IChTaENvbXBpbGUpOgorKyAgICAgICAgKFNoR2V0SW5mbyk6CisrICAgICAgICAoU2hHZXRWYXJp
YWJsZUluZm8pOgorKyAgICAgICAgKFNoQ2hlY2tWYXJpYWJsZXNXaXRoaW5QYWNraW5nTGltaXRz
KToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL1N5bWJvbFRhYmxlLmNwcDoKKysgICAgICAgIChU
U3ltYm9sVGFibGU6On5UU3ltYm9sVGFibGUpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvU3lt
Ym9sVGFibGUuaDoKKysgICAgICAgIChUU3ltYm9sOjpUU3ltYm9sKToKKysgICAgICAgIChUU3lt
Ym9sVGFibGVMZXZlbDo6aW5zZXJ0KToKKysgICAgICAgIChUU3ltYm9sVGFibGU6OnB1c2gpOgor
KyAgICAgICAgKFRTeW1ib2xUYWJsZTo6cG9wKToKKysgICAgICAgIChUU3ltYm9sVGFibGU6OmZp
bmRCdWlsdEluKToKKysgICAgICAgIChUU3ltYm9sVGFibGU6OnJlbGF0ZVRvRXh0ZW5zaW9uKToK
KysgICAgICAgIChUU3ltYm9sVGFibGU6OnNldERlZmF1bHRQcmVjaXNpb24pOgorKyAgICAgICAg
KFRTeW1ib2xUYWJsZTo6Z2V0RGVmYXVsdFByZWNpc2lvbik6CisrICAgICAgICAoVFN5bWJvbFRh
YmxlOjpzdXBwb3J0c1ByZWNpc2lvbik6CisrICAgICAgICAqIHNyYy9jb21waWxlci9UeXBlcy5o
OgorKyAgICAgICAgKE5ld1Bvb2xURmllbGRMaXN0KToKKysgICAgICAgIChUVHlwZTo6VFR5cGUp
OgorKyAgICAgICAgKFRUeXBlOjpzZXROb21pbmFsU2l6ZSk6CisrICAgICAgICAoVFB1YmxpY1R5
cGU6OnNldEFnZ3JlZ2F0ZSk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9VbmZvbGRTaG9ydENp
cmN1aXQuY3BwOgorKyAgICAgICAgKHNoOjpVbmZvbGRTaG9ydENpcmN1aXQ6OnZpc2l0QmluYXJ5
KToKKysgICAgICAgIChzaDo6VW5mb2xkU2hvcnRDaXJjdWl0Ojp2aXNpdFNlbGVjdGlvbik6Cisr
ICAgICAgICAqIHNyYy9jb21waWxlci9VbmZvbGRTaG9ydENpcmN1aXQuaDoKKysgICAgICAgICog
c3JjL2NvbXBpbGVyL1VuZm9sZFNob3J0Q2lyY3VpdEFTVC5jcHA6IEFkZGVkLgorKyAgICAgICAg
KFVuZm9sZFNob3J0Q2lyY3VpdEFTVDo6dmlzaXRCaW5hcnkpOgorKyAgICAgICAgKFVuZm9sZFNo
b3J0Q2lyY3VpdEFTVDo6dXBkYXRlVHJlZSk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9VbmZv
bGRTaG9ydENpcmN1aXRBU1QuaDogQWRkZWQuCisrICAgICAgICAoVW5mb2xkU2hvcnRDaXJjdWl0
QVNUOjpVbmZvbGRTaG9ydENpcmN1aXRBU1QpOgorKyAgICAgICAgKFVuZm9sZFNob3J0Q2lyY3Vp
dEFTVDo6Tm9kZVVwZGF0ZUVudHJ5OjpOb2RlVXBkYXRlRW50cnkpOgorKyAgICAgICAgKiBzcmMv
Y29tcGlsZXIvVW5pZm9ybS5jcHA6CisrICAgICAgICAoc2g6OlVuaWZvcm06OlVuaWZvcm0pOgor
KyAgICAgICAgKiBzcmMvY29tcGlsZXIvVW5pZm9ybS5oOgorKyAgICAgICAgKiBzcmMvY29tcGls
ZXIvVmFsaWRhdGVMaW1pdGF0aW9ucy5jcHA6CisrICAgICAgICAoVmFsaWRhdGVMaW1pdGF0aW9u
czo6dmFsaWRhdGVGdW5jdGlvbkNhbGwpOgorKyAgICAgICAgKFZhbGlkYXRlTGltaXRhdGlvbnM6
OnZhbGlkYXRlT3BlcmF0aW9uKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL1ZhcmlhYmxlSW5m
by5jcHA6CisrICAgICAgICAoVFZhcmlhYmxlSW5mbzo6VFZhcmlhYmxlSW5mbyk6CisrICAgICAg
ICAoQ29sbGVjdFZhcmlhYmxlczo6Q29sbGVjdFZhcmlhYmxlcyk6CisrICAgICAgICAoQ29sbGVj
dFZhcmlhYmxlczo6dmlzaXRTeW1ib2wpOgorKyAgICAgICAgKENvbGxlY3RWYXJpYWJsZXM6OnZp
c2l0QWdncmVnYXRlKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL1ZhcmlhYmxlSW5mby5oOgor
KyAgICAgICAgKiBzcmMvY29tcGlsZXIvZGVidWcuY3BwOgorKyAgICAgICAgKiBzcmMvY29tcGls
ZXIvZGVwZ3JhcGgvRGVwZW5kZW5jeUdyYXBoLmNwcDoKKysgICAgICAgICogc3JjL2NvbXBpbGVy
L2RlcGdyYXBoL0RlcGVuZGVuY3lHcmFwaEJ1aWxkZXIuY3BwOgorKyAgICAgICAgKFREZXBlbmRl
bmN5R3JhcGhCdWlsZGVyOjp2aXNpdEJpbmFyeSk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9n
ZW5lcmF0ZV9wYXJzZXIuc2g6CisrICAgICAgICAqIHNyYy9jb21waWxlci9nbHNsYW5nLmw6Cisr
ICAgICAgICAqIHNyYy9jb21waWxlci9nbHNsYW5nLnk6CisrICAgICAgICAqIHNyYy9jb21waWxl
ci9nbHNsYW5nX2xleC5jcHA6CisrICAgICAgICAoaW5wdXQpOgorKyAgICAgICAgKHl5ZXJyb3Ip
OgorKyAgICAgICAgKGludF9jb25zdGFudCk6CisrICAgICAgICAoZmxvYXRfY29uc3RhbnQpOgor
KyAgICAgICAgKGdsc2xhbmdfc2Nhbik6CisrICAgICAgICAqIHNyYy9jb21waWxlci9nbHNsYW5n
X3RhYi5jcHA6CisrICAgICAgICAoeXlzeW50YXhfZXJyb3IpOgorKyAgICAgICAgKGdsc2xhbmdf
cGFyc2UpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvZ2xzbGFuZ190YWIuaDoKKysgICAgICAg
ICogc3JjL2NvbXBpbGVyL2ludGVybWVkaWF0ZS5oOgorKyAgICAgICAgKFRJbnRlcm1TeW1ib2w6
Omhhc1NpZGVFZmZlY3RzKToKKysgICAgICAgIChUSW50ZXJtU3ltYm9sOjpyZXBsYWNlQ2hpbGRO
b2RlKToKKysgICAgICAgIChUSW50ZXJtQ29uc3RhbnRVbmlvbjo6aGFzU2lkZUVmZmVjdHMpOgor
KyAgICAgICAgKFRJbnRlcm1Db25zdGFudFVuaW9uOjpnZXRJQ29uc3QpOgorKyAgICAgICAgKFRJ
bnRlcm1Db25zdGFudFVuaW9uOjpnZXRGQ29uc3QpOgorKyAgICAgICAgKFRJbnRlcm1Db25zdGFu
dFVuaW9uOjpnZXRCQ29uc3QpOgorKyAgICAgICAgKFRJbnRlcm1Db25zdGFudFVuaW9uOjpyZXBs
YWNlQ2hpbGROb2RlKToKKysgICAgICAgIChUSW50ZXJtT3BlcmF0b3I6Omhhc1NpZGVFZmZlY3Rz
KToKKysgICAgICAgIChUSW50ZXJtQmluYXJ5OjpoYXNTaWRlRWZmZWN0cyk6CisrICAgICAgICAo
VEludGVybVVuYXJ5OjpoYXNTaWRlRWZmZWN0cyk6CisrICAgICAgICAoVEludGVybUFnZ3JlZ2F0
ZTo6aGFzU2lkZUVmZmVjdHMpOgorKyAgICAgICAgKFRJbnRlcm1TZWxlY3Rpb246Omhhc1NpZGVF
ZmZlY3RzKToKKysgICAgICAgIChUSW50ZXJtVHJhdmVyc2VyOjp+VEludGVybVRyYXZlcnNlcik6
CisrICAgICAgICAoVEludGVybVRyYXZlcnNlcjo6aW5jcmVtZW50RGVwdGgpOgorKyAgICAgICAg
KFRJbnRlcm1UcmF2ZXJzZXI6OmRlY3JlbWVudERlcHRoKToKKysgICAgICAgIChUSW50ZXJtVHJh
dmVyc2VyOjpnZXRQYXJlbnROb2RlKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL2xvY2FsaW50
ZXJtZWRpYXRlLmg6CisrICAgICAgICAqIHNyYy9jb21waWxlci9wYXJzZUNvbnN0LmNwcDoKKysg
ICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9FeHByZXNzaW9uUGFyc2VyLmNwcDoK
KysgICAgICAgICh5eV9zeW1ib2xfcHJpbnQpOgorKyAgICAgICAgKHl5X3N0YWNrX3ByaW50KToK
KysgICAgICAgICh5eV9yZWR1Y2VfcHJpbnQpOgorKyAgICAgICAgKHl5c3RybGVuKToKKysgICAg
ICAgICh5eXN0cGNweSk6CisrICAgICAgICAoeXl0bmFtZXJyKToKKysgICAgICAgICh5eXN5bnRh
eF9lcnJvcik6CisrICAgICAgICAoeXlkZXN0cnVjdCk6CisrICAgICAgICAoeXlwYXJzZSk6Cisr
ICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvRXhwcmVzc2lvblBhcnNlci55Ogor
KyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL1ByZXByb2Nlc3Nvci5jcHA6Cisr
ICAgICAgICAocHA6OlByZXByb2Nlc3Nvcjo6c2V0TWF4VG9rZW5MZW5ndGgpOgorKyAgICAgICAg
KHBwOjpQcmVwcm9jZXNzb3I6OmxleCk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9j
ZXNzb3IvUHJlcHJvY2Vzc29yLmg6CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNz
b3IvVG9rZW5pemVyLmNwcDoKKysgICAgICAgIChwcDo6VG9rZW5pemVyOjpUb2tlbml6ZXIpOgor
KyAgICAgICAgKHBwOjpUb2tlbml6ZXI6OmxleCk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9w
cmVwcm9jZXNzb3IvVG9rZW5pemVyLmg6CisrICAgICAgICAocHA6OlRva2VuaXplcjo6c2V0TWF4
VG9rZW5MZW5ndGgpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL1Rva2Vu
aXplci5sOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL2dlbmVyYXRlX3Bh
cnNlci5zaDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9wcmVwcm9jZXNz
b3IudmN4cHJvajogQWRkZWQuCisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3Iv
cHJlcHJvY2Vzc29yLnZjeHByb2ouZmlsdGVyczogQWRkZWQuCisrICAgICAgICAqIHNyYy9jb21w
aWxlci90aW1pbmcvUmVzdHJpY3RGcmFnbWVudFNoYWRlclRpbWluZy5jcHA6CisrICAgICAgICAq
IHNyYy9jb21waWxlci90cmFuc2xhdG9yLnZjeHByb2o6IEFkZGVkLgorKyAgICAgICAgKiBzcmMv
Y29tcGlsZXIvdHJhbnNsYXRvci52Y3hwcm9qLmZpbHRlcnM6IEFkZGVkLgorKyAgICAgICAgKiBz
cmMvY29tcGlsZXIvdXRpbC5jcHA6CisrICAgICAgICAoYXRvZl9jbGFtcCk6CisrICAgICAgICAo
YXRvaV9jbGFtcCk6CisrICAgICAgICAqIHNyYy9jb21waWxlci91dGlsLmg6CisrICAgICAgICAq
IHNyYy9saWJFR0wvU3VyZmFjZS5jcHA6CisrICAgICAgICAoZWdsOjpTdXJmYWNlOjpjaGVja0Zv
ck91dE9mRGF0ZVN3YXBDaGFpbik6CisrICAgICAgICAqIHNyYy9saWJFR0wvbGliRUdMLmNwcDoK
KysgICAgICAgICogc3JjL2xpYkVHTC9saWJFR0wucmM6CisrICAgICAgICAqIHNyYy9saWJFR0wv
bGliRUdMLnZjeHByb2o6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGliRUdML2xpYkVHTC52Y3hw
cm9qLmZpbHRlcnM6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL0J1ZmZlci5jcHA6
CisrICAgICAgICAoZ2w6OkJ1ZmZlcjo6YnVmZmVyRGF0YSk6CisrICAgICAgICAoZ2w6OkJ1ZmZl
cjo6YnVmZmVyU3ViRGF0YSk6CisrICAgICAgICAoZ2w6OkJ1ZmZlcjo6c2l6ZSk6CisrICAgICAg
ICAoZ2w6OkJ1ZmZlcjo6Z2V0SW5kZXhSYW5nZUNhY2hlKToKKysgICAgICAgICogc3JjL2xpYkdM
RVN2Mi9CdWZmZXIuaDoKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9Db250ZXh0LmNwcDoKKysg
ICAgICAgIChnbDo6Q29udGV4dDo6YXBwbHlUZXh0dXJlcyk6CisrICAgICAgICAoZ2w6OkNvbnRl
eHQ6OmdldEJvdW5kRnJhbWVidWZmZXJUZXh0dXJlU2VyaWFscyk6CisrICAgICAgICAqIHNyYy9s
aWJHTEVTdjIvQ29udGV4dC5oOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRSZW5kZXJlcik6
CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvRnJhbWVidWZmZXIuaDoKKysgICAgICAgICogc3Jj
L2xpYkdMRVN2Mi9Qcm9ncmFtQmluYXJ5LmNwcDoKKysgICAgICAgIChnbDo6RGlzY2FyZFdvcmth
cm91bmQpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5Ojpsb2FkKToKKysgICAgICAgIChn
bDo6UHJvZ3JhbUJpbmFyeTo6bGluayk6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6Omxp
bmtBdHRyaWJ1dGVzKToKKysgICAgICAgIChnbDo6QXR0cmlidXRlU29ydGVyOjpBdHRyaWJ1dGVT
b3J0ZXIpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5Ojppbml0QXR0cmlidXRlc0J5TGF5
b3V0KToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6c29ydEF0dHJpYnV0ZXNCeUxheW91
dCk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvUHJvZ3JhbUJpbmFyeS5oOgorKyAgICAgICAg
KiBzcmMvbGliR0xFU3YyL1JlbmRlcmJ1ZmZlci5jcHA6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1
ZmZlclRleHR1cmUyRDo6Z2V0VGV4dHVyZVNlcmlhbCk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1
ZmZlclRleHR1cmVDdWJlTWFwOjpnZXRUZXh0dXJlU2VyaWFsKToKKysgICAgICAgIChnbDo6UmVu
ZGVyYnVmZmVyOjpnZXRUZXh0dXJlU2VyaWFsKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9S
ZW5kZXJidWZmZXIuaDoKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyU3RvcmFnZTo6Z2V0VGV4
dHVyZVNlcmlhbCk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvU2hhZGVyLmNwcDoKKysgICAg
ICAgIChnbDo6U2hhZGVyOjpwYXJzZVZhcnlpbmdzKToKKysgICAgICAgIChnbDo6U2hhZGVyOjp1
bmNvbXBpbGUpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1NoYWRlci5oOgorKyAgICAgICAg
KiBzcmMvbGliR0xFU3YyL1RleHR1cmUuY3BwOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1h
cDo6c3RvcmFnZSk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvVW5pZm9ybS5jcHA6CisrICAg
ICAgICAoZ2w6OlVuaWZvcm06OlVuaWZvcm0pOgorKyAgICAgICAgKGdsOjpVbmlmb3JtOjp+VW5p
Zm9ybSk6CisrICAgICAgICAoZ2w6OlVuaWZvcm06OmlzQXJyYXkpOgorKyAgICAgICAgKGdsOjpV
bmlmb3JtOjplbGVtZW50Q291bnQpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1VuaWZvcm0u
aDoKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9jb25zdGFudHMuaDogUmVtb3ZlZC4KKysgICAg
ICAgICogc3JjL2xpYkdMRVN2Mi9saWJHTEVTdjIuZGVmOgorKyAgICAgICAgKiBzcmMvbGliR0xF
U3YyL2xpYkdMRVN2Mi5yYzoKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9saWJHTEVTdjIudmN4
cHJvajogQWRkZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvbGliR0xFU3YyLnZjeHByb2ou
ZmlsdGVyczogQWRkZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcHJlY29tcGlsZWQuaDoK
KysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9JbWFnZTExLmNwcDoKKysgICAgICAg
IChyeDo6SW1hZ2UxMTo6Z2VuZXJhdGVNaXBtYXApOgorKyAgICAgICAgKHJ4OjpJbWFnZTExOjps
b2FkRGF0YSk6CisrICAgICAgICAocng6OkltYWdlMTE6OmxvYWRDb21wcmVzc2VkRGF0YSk6Cisr
ICAgICAgICAocng6OkltYWdlMTE6OmNvcHkpOgorKyAgICAgICAgKHJ4OjpJbWFnZTExOjpjcmVh
dGVTdGFnaW5nVGV4dHVyZSk6CisrICAgICAgICAocng6OkltYWdlMTE6Om1hcCk6CisrICAgICAg
ICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvSW1hZ2UxMS5oOgorKyAgICAgICAgKiBzcmMvbGli
R0xFU3YyL3JlbmRlcmVyL0luZGV4QnVmZmVyLmNwcDoKKysgICAgICAgIChyeDo6SW5kZXhCdWZm
ZXJJbnRlcmZhY2U6Om1hcEJ1ZmZlcik6CisrICAgICAgICAocng6OlN0YXRpY0luZGV4QnVmZmVy
SW50ZXJmYWNlOjpnZXRJbmRleFJhbmdlQ2FjaGUpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3Yy
L3JlbmRlcmVyL0luZGV4QnVmZmVyLmg6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVy
ZXIvSW5kZXhCdWZmZXIxMS5jcHA6CisrICAgICAgICAocng6OkluZGV4QnVmZmVyMTE6Om1hcEJ1
ZmZlcik6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvSW5kZXhEYXRhTWFuYWdl
ci5jcHA6CisrICAgICAgICAocng6OkluZGV4RGF0YU1hbmFnZXI6OnByZXBhcmVJbmRleERhdGEp
OgorKyAgICAgICAgKHJ4OjpJbmRleERhdGFNYW5hZ2VyOjpnZXRDb3VudGluZ0luZGljZXMpOgor
KyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL0luZGV4UmFuZ2VDYWNoZS5jcHA6IEFk
ZGVkLgorKyAgICAgICAgKHJ4OjpJbmRleFJhbmdlQ2FjaGU6OmFkZFJhbmdlKToKKysgICAgICAg
IChyeDo6SW5kZXhSYW5nZUNhY2hlOjppbnZhbGlkYXRlUmFuZ2UpOgorKyAgICAgICAgKHJ4OjpJ
bmRleFJhbmdlQ2FjaGU6OmZpbmRSYW5nZSk6CisrICAgICAgICAocng6OkluZGV4UmFuZ2VDYWNo
ZTo6Y2xlYXIpOgorKyAgICAgICAgKHJ4OjpJbmRleFJhbmdlQ2FjaGU6OkluZGV4UmFuZ2U6Oklu
ZGV4UmFuZ2UpOgorKyAgICAgICAgKHJ4OjpJbmRleFJhbmdlQ2FjaGU6OkluZGV4UmFuZ2U6Om9w
ZXJhdG9yPCk6CisrICAgICAgICAocng6OkluZGV4UmFuZ2VDYWNoZTo6SW5kZXhCb3VuZHM6Oklu
ZGV4Qm91bmRzKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9JbmRleFJhbmdl
Q2FjaGUuaDogQWRkZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvSW5wdXRM
YXlvdXRDYWNoZS5jcHA6CisrICAgICAgICAocng6OklucHV0TGF5b3V0Q2FjaGU6OklucHV0TGF5
b3V0Q2FjaGUpOgorKyAgICAgICAgKHJ4OjpJbnB1dExheW91dENhY2hlOjpjbGVhcik6CisrICAg
ICAgICAocng6OklucHV0TGF5b3V0Q2FjaGU6Om1hcmtEaXJ0eSk6CisrICAgICAgICAocng6Oklu
cHV0TGF5b3V0Q2FjaGU6OmFwcGx5VmVydGV4QnVmZmVycyk6CisrICAgICAgICAocng6OklucHV0
TGF5b3V0Q2FjaGU6Omhhc2hJbnB1dExheW91dCk6CisrICAgICAgICAocng6OklucHV0TGF5b3V0
Q2FjaGU6OmNvbXBhcmVJbnB1dExheW91dHMpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3Jl
bmRlcmVyL0lucHV0TGF5b3V0Q2FjaGUuaDoKKysgICAgICAgIChyeDo6SW5wdXRMYXlvdXRDYWNo
ZTo6SW5wdXRMYXlvdXRLZXk6OmJlZ2luKToKKysgICAgICAgIChyeDo6SW5wdXRMYXlvdXRDYWNo
ZTo6SW5wdXRMYXlvdXRLZXk6OmVuZCk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVy
ZXIvUmVuZGVyVGFyZ2V0MTEuY3BwOgorKyAgICAgICAgKHJ4OjpSZW5kZXJUYXJnZXQxMTo6Z2V0
VGV4dHVyZSk6CisrICAgICAgICAocng6OlJlbmRlclRhcmdldDExOjpnZXRSZW5kZXJUYXJnZXRW
aWV3KToKKysgICAgICAgIChyeDo6UmVuZGVyVGFyZ2V0MTE6OmdldERlcHRoU3RlbmNpbFZpZXcp
OgorKyAgICAgICAgKHJ4OjpSZW5kZXJUYXJnZXQxMTo6Z2V0U2hhZGVyUmVzb3VyY2VWaWV3KToK
KysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9SZW5kZXJUYXJnZXQxMS5oOgorKyAg
ICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL1JlbmRlcmVyLmNwcDoKKysgICAgICAgIChy
eDo6UmVuZGVyZXI6OmluaXRpYWxpemVDb21waWxlcik6CisrICAgICAgICAqIHNyYy9saWJHTEVT
djIvcmVuZGVyZXIvUmVuZGVyZXIuaDoKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJl
ci9SZW5kZXJlcjExLmNwcDoKKysgICAgICAgIChyeDo6UmVuZGVyZXIxMTo6aW5pdGlhbGl6ZSk6
CisrICAgICAgICAocng6OlJlbmRlcmVyMTE6OmFwcGx5UHJpbWl0aXZlVHlwZSk6CisrICAgICAg
ICAocng6OlJlbmRlcmVyMTE6OmFwcGx5UmVuZGVyVGFyZ2V0KToKKysgICAgICAgIChyeDo6UmVu
ZGVyZXIxMTo6ZHJhd0xpbmVMb29wKToKKysgICAgICAgIChyeDo6UmVuZGVyZXIxMTo6ZHJhd1Ry
aWFuZ2xlRmFuKToKKysgICAgICAgIChyeDo6UmVuZGVyZXIxMTo6YXBwbHlVbmlmb3Jtcyk6Cisr
ICAgICAgICAocng6OlJlbmRlcmVyMTE6OmNsZWFyKToKKysgICAgICAgIChyeDo6UmVuZGVyZXIx
MTo6bWFya0FsbFN0YXRlRGlydHkpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjExOjpjb3B5SW1h
Z2UpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjExOjpjb21waWxlVG9FeGVjdXRhYmxlKToKKysg
ICAgICAgIChyeDo6UmVuZGVyZXIxMTo6Z2V0UmVuZGVyVGFyZ2V0UmVzb3VyY2UpOgorKyAgICAg
ICAgKHJ4OjpSZW5kZXJlcjExOjpibGl0UmVuZGVyYnVmZmVyUmVjdCk6CisrICAgICAgICAqIHNy
Yy9saWJHTEVTdjIvcmVuZGVyZXIvUmVuZGVyZXIxMS5oOgorKyAgICAgICAgKiBzcmMvbGliR0xF
U3YyL3JlbmRlcmVyL1JlbmRlcmVyOS5jcHA6CisrICAgICAgICAocng6OlJlbmRlcmVyOTo6aW5p
dGlhbGl6ZSk6CisrICAgICAgICAocng6OlJlbmRlcmVyOTo6c2V0Vmlld3BvcnQpOgorKyAgICAg
ICAgKHJ4OjpSZW5kZXJlcjk6OmRyYXdMaW5lTG9vcCk6CisrICAgICAgICAocng6OlJlbmRlcmVy
OTo6Y29tcGlsZVRvRXhlY3V0YWJsZSk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVy
ZXIvUmVuZGVyZXI5Lmg6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvU3dhcENo
YWluLmg6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvU3dhcENoYWluMTEuY3Bw
OgorKyAgICAgICAgKHJ4OjpTd2FwQ2hhaW4xMTo6cmVzZXRPZmZzY3JlZW5UZXh0dXJlKToKKysg
ICAgICAgIChyeDo6U3dhcENoYWluMTE6OnJlc2V0KToKKysgICAgICAgIChyeDo6U3dhcENoYWlu
MTE6OnN3YXBSZWN0KToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9Td2FwQ2hh
aW45LmNwcDoKKysgICAgICAgIChyeDo6Y29udmVydEludGVydmFsKToKKysgICAgICAgICogc3Jj
L2xpYkdMRVN2Mi9yZW5kZXJlci9UZXh0dXJlU3RvcmFnZTExLmNwcDoKKysgICAgICAgIChyeDo6
VGV4dHVyZVN0b3JhZ2UxMTo6SXNUZXh0dXJlRm9ybWF0UmVuZGVyYWJsZSk6CisrICAgICAgICAo
cng6OlRleHR1cmVTdG9yYWdlMTE6OmdlbmVyYXRlTWlwbWFwTGF5ZXIpOgorKyAgICAgICAgKHJ4
OjpUZXh0dXJlU3RvcmFnZTExX0N1YmU6OmdldFJlbmRlclRhcmdldCk6CisrICAgICAgICAqIHNy
Yy9saWJHTEVTdjIvcmVuZGVyZXIvVmVydGV4QnVmZmVyLmNwcDoKKysgICAgICAgIChyeDo6VmVy
dGV4QnVmZmVySW50ZXJmYWNlOjpzdG9yZVZlcnRleEF0dHJpYnV0ZXMpOgorKyAgICAgICAgKHJ4
OjpWZXJ0ZXhCdWZmZXJJbnRlcmZhY2U6OnN0b3JlUmF3RGF0YSk6CisrICAgICAgICAocng6OlZl
cnRleEJ1ZmZlckludGVyZmFjZTo6cmVzZXJ2ZVZlcnRleFNwYWNlKToKKysgICAgICAgIChyeDo6
U3RhdGljVmVydGV4QnVmZmVySW50ZXJmYWNlOjpsb29rdXBBdHRyaWJ1dGUpOgorKyAgICAgICAg
KHJ4OjpTdGF0aWNWZXJ0ZXhCdWZmZXJJbnRlcmZhY2U6OnN0b3JlVmVydGV4QXR0cmlidXRlcyk6
CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvVmVydGV4QnVmZmVyLmg6CisrICAg
ICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvVmVydGV4QnVmZmVyMTEuY3BwOgorKyAgICAg
ICAgKHJ4OjpWZXJ0ZXhCdWZmZXIxMTo6Z2V0U3BhY2VSZXF1aXJlZCk6CisrICAgICAgICAqIHNy
Yy9saWJHTEVTdjIvcmVuZGVyZXIvVmVydGV4QnVmZmVyMTEuaDoKKysgICAgICAgICogc3JjL2xp
YkdMRVN2Mi9yZW5kZXJlci9WZXJ0ZXhCdWZmZXI5LmNwcDoKKysgICAgICAgIChyeDo6VmVydGV4
QnVmZmVyOTo6c3RvcmVWZXJ0ZXhBdHRyaWJ1dGVzKToKKysgICAgICAgIChyeDo6VmVydGV4QnVm
ZmVyOTo6Z2V0U3BhY2VSZXF1aXJlZCk6CisrICAgICAgICAocng6OlZlcnRleEJ1ZmZlcjk6OnJl
cXVpcmVzQ29udmVyc2lvbik6CisrICAgICAgICAocng6OlZlcnRleEJ1ZmZlcjk6OmdldFZlcnRl
eFNpemUpOgorKyAgICAgICAgKHJ4OjpWZXJ0ZXhCdWZmZXI5OjpzcGFjZVJlcXVpcmVkKToKKysg
ICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9WZXJ0ZXhCdWZmZXI5Lmg6CisrICAgICAg
ICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvVmVydGV4RGF0YU1hbmFnZXIuY3BwOgorKyAgICAg
ICAgKHJ4OjplbGVtZW50c0luQnVmZmVyKToKKysgICAgICAgIChyeDo6U3RyZWFtaW5nQnVmZmVy
RWxlbWVudENvdW50KToKKysgICAgICAgIChyeDo6VmVydGV4RGF0YU1hbmFnZXI6OnByZXBhcmVW
ZXJ0ZXhEYXRhKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9WZXJ0ZXhEYXRh
TWFuYWdlci5oOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL3JlbmRlcmVyMTFf
dXRpbHMuY3BwOgorKyAgICAgICAgKGdsX2QzZDExOjpDb252ZXJ0VGV4dHVyZUZvcm1hdCk6Cisr
ICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvc2hhZGVycy9jb21waWxlZC9jbGVhcjEx
dnMuaDoKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9zaGFkZXJzL2NvbXBpbGVk
L2NsZWFybXVsdGlwbGUxMXBzLmg6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIv
c2hhZGVycy9jb21waWxlZC9jbGVhcnNpbmdsZTExcHMuaDoKKysgICAgICAgICogc3JjL2xpYkdM
RVN2Mi9yZW5kZXJlci9zaGFkZXJzL2NvbXBpbGVkL2NvbXBvbmVudG1hc2twcy5oOgorKyAgICAg
ICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL3NoYWRlcnMvY29tcGlsZWQvZmxpcHl2cy5oOgor
KyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL3NoYWRlcnMvY29tcGlsZWQvbHVtaW5h
bmNlcHMuaDoKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9zaGFkZXJzL2NvbXBp
bGVkL3Bhc3N0aHJvdWdoMTF2cy5oOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVy
L3NoYWRlcnMvY29tcGlsZWQvcGFzc3Rocm91Z2hsdW0xMXBzLmg6CisrICAgICAgICAqIHNyYy9s
aWJHTEVTdjIvcmVuZGVyZXIvc2hhZGVycy9jb21waWxlZC9wYXNzdGhyb3VnaGx1bWFscGhhMTFw
cy5oOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL3NoYWRlcnMvY29tcGlsZWQv
cGFzc3Rocm91Z2hwcy5oOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL3NoYWRl
cnMvY29tcGlsZWQvcGFzc3Rocm91Z2hyZ2IxMXBzLmg6CisrICAgICAgICAqIHNyYy9saWJHTEVT
djIvcmVuZGVyZXIvc2hhZGVycy9jb21waWxlZC9wYXNzdGhyb3VnaHJnYmExMXBzLmg6CisrICAg
ICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvc2hhZGVycy9jb21waWxlZC9zdGFuZGFyZHZz
Lmg6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvc2hhZGVycy9nZW5lcmF0ZV9z
aGFkZXJzLmJhdDoKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi91dGlsaXRpZXMuY3BwOgorKyAg
ICAgICAgKGdsOjpDb21wdXRlVHlwZVNpemUpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3V0
aWxpdGllcy5oOgorKyAgICAgICAgKiBzcmMvdGhpcmRfcGFydHkvbXVybXVyaGFzaC9NdXJtdXJI
YXNoMy5jcHA6CisrICAgICAgICAocm90bDMyKToKKysgICAgICAgIChyb3RsNjQpOgorKyAgICAg
ICAgKGdldGJsb2NrKToKKysgICAgICAgIChmbWl4KToKKysgICAgICAgIChNdXJtdXJIYXNoM194
ODZfMzIpOgorKyAgICAgICAgKE11cm11ckhhc2gzX3g4Nl8xMjgpOgorKyAgICAgICAgKE11cm11
ckhhc2gzX3g2NF8xMjgpOgorKyAgICAgICAgKiBzcmMvdGhpcmRfcGFydHkvbXVybXVyaGFzaC9N
dXJtdXJIYXNoMy5oOgorKyAgICAgICAgKiBzcmMvdGhpcmRfcGFydHkvdHJhY2VfZXZlbnQ6IEFk
ZGVkLgorKyAgICAgICAgKiBzcmMvdGhpcmRfcGFydHkvdHJhY2VfZXZlbnQvdHJhY2VfZXZlbnQu
aDogQWRkZWQuCisrICAgICAgICAoZ2w6OlRyYWNlRXZlbnQ6OlRyYWNlSUQ6OlRyYWNlSUQpOgor
KyAgICAgICAgKGdsOjpUcmFjZUV2ZW50OjpUcmFjZUlEOjpkYXRhKToKKysgICAgICAgIChnbDo6
VHJhY2VFdmVudDo6VHJhY2VTdHJpbmdXaXRoQ29weTo6VHJhY2VTdHJpbmdXaXRoQ29weSk6Cisr
ICAgICAgICAoZ2w6OlRyYWNlRXZlbnQ6OlRyYWNlU3RyaW5nV2l0aENvcHk6Om9wZXJhdG9yIGNv
bnN0IGNoYXIqICk6CisrICAgICAgICAoZ2w6OlRyYWNlRXZlbnQ6OnNldFRyYWNlVmFsdWUpOgor
KyAgICAgICAgKGdsOjpUcmFjZUV2ZW50OjphZGRUcmFjZUV2ZW50KToKKysgICAgICAgIChnbDo6
VHJhY2VFdmVudDo6VHJhY2VFbmRPblNjb3BlQ2xvc2U6OlRyYWNlRW5kT25TY29wZUNsb3NlKToK
KysgICAgICAgIChnbDo6VHJhY2VFdmVudDo6VHJhY2VFbmRPblNjb3BlQ2xvc2U6On5UcmFjZUVu
ZE9uU2NvcGVDbG9zZSk6CisrICAgICAgICAoZ2w6OlRyYWNlRXZlbnQ6OlRyYWNlRW5kT25TY29w
ZUNsb3NlOjppbml0aWFsaXplKToKKysgICAgICAgIChnbDo6VHJhY2VFdmVudDo6VHJhY2VFbmRP
blNjb3BlQ2xvc2U6OmFkZEV2ZW50SWZFbmFibGVkKToKKysgICAgICAgIChnbDo6VHJhY2VFdmVu
dDo6U2FtcGxpbmdTdGF0ZVNjb3BlOjpTYW1wbGluZ1N0YXRlU2NvcGUpOgorKyAgICAgICAgKGds
OjpUcmFjZUV2ZW50OjpTYW1wbGluZ1N0YXRlU2NvcGU6On5TYW1wbGluZ1N0YXRlU2NvcGUpOgor
KyAgICAgICAgKGdsOjpUcmFjZUV2ZW50OjpTYW1wbGluZ1N0YXRlU2NvcGU6OmN1cnJlbnQpOgor
KyAgICAgICAgKGdsOjpUcmFjZUV2ZW50OjpTYW1wbGluZ1N0YXRlU2NvcGU6OnNldCk6CisrCisr
MjAxMy0xMS0xOCAgTWFyayBSb3dlICA8bXJvd2VAYXBwbGUuY29tPgorKworKyAgICAgICAgVXNl
IGh3LmFjdGl2ZWNwdSBmb3IgZGV0ZXJtaW5pbmcgaG93IG1hbnkgcHJvY2Vzc2VzIHRvIHNwYXdu
LgorKworKyAgICAgICAgSXQncyBkb2N1bWVudGVkIGFzIHRoZSBwcmVmZXJyZWQgd2F5IHRvIGRl
dGVybWluZSB0aGUgbnVtYmVyIG9mIHRocmVhZHMKKysgICAgICAgIG9yIHByb2Nlc3NlcyB0byBj
cmVhdGUgaW4gYSBTTVAgYXdhcmUgYXBwbGljYXRpb24uCisrCisrICAgICAgICBSdWJiZXItc3Rh
bXBlZCBieSBUaW0gSG9ydG9uLgorKworKyAgICAgICAgKiBBTkdMRS54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qOgorKworKzIwMTMtMTEtMDYgIERlYW4gSmFja3NvbiAgPGRpbm9AYXBwbGUuY29t
PgorKworKyAgICAgICAga1RyYWNlQnVmZmVyTGVuIGlzIHVudXNlZCBpbiBkZWZhdWx0IGJ1aWxk
cworKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyMzk0
MQorKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzE1NDA5ODA0PgorKworKyAgICAgICAgUmV2aWV3
ZWQgYnkgVGltIEhvcnRvbi4KKysKKysgICAgICAgIGtUcmFjZUJ1ZmZlckxlbiBpcyBub3QgdXNl
ZCBpbiBkZWJ1Zy5jcHAgaWYgVFJBQ0VfRU5BQkxFRCBpcworKyAgICAgICAgbm90IGRlZmluZWQu
IFRoaXMgY2F1c2VzIGEgd2FybmluZyBpbiBuZXdlciBidWlsZHMgb2YgY2xhbmcuCisrICAgICAg
ICBGb3Igbm93LCBza2lwIHdhcm5pbmdzIG9uIHVudXNlZCB2YXJpYWJsZXMgdW50aWwgd2UKKysg
ICAgICAgIHVwZGF0ZSBmcm9tIEFOR0xFLgorKworKyAgICAgICAgKiBzcmMvY29tcGlsZXIvZGVi
dWcuY3BwOiBBZGQgdW51c2VkLXZhcmlhYmxlIGlnbm9yZSBwcmFnbWEuCisrCisrMjAxMy0xMC0y
NCAgTWFyayBSb3dlICA8bXJvd2VAYXBwbGUuY29tPgorKworKyAgICAgICAgUmVtb3ZlIHJlZmVy
ZW5jZXMgdG8gT1MgWCAxMC43IGZyb20gWGNvZGUgY29uZmlndXJhdGlvbiBzZXR0aW5ncy4KKysK
KysgICAgICAgIE5vdyB0aGF0IHdlJ3JlIG5vdCBidWlsZGluZyBmb3IgT1MgWCAxMC43IHRoZXkn
cmUgbm8gbG9uZ2VyIG5lZWRlZC4KKysKKysgICAgICAgIFJldmlld2VkIGJ5IEFuZGVycyBDYXJs
c3Nvbi4KKysKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZzoKKysgICAg
ICAgICogQ29uZmlndXJhdGlvbnMvRGVidWdSZWxlYXNlLnhjY29uZmlnOgorKworKzIwMTMtMTAt
MjQgIE1hcmsgUm93ZSAgPG1yb3dlQGFwcGxlLmNvbT4KKysKKysgICAgICAgIDxyZGFyOi8vcHJv
YmxlbS8xNTMxMjY0Mz4gUHJlcGFyZSBmb3IgdGhlIG15c3RlcmlvdXMgZnV0dXJlLgorKworKyAg
ICAgICAgUmV2aWV3ZWQgYnkgRGF2aWQgS2lsemVyLgorKworKyAgICAgICAgKiBDb25maWd1cmF0
aW9ucy9CYXNlLnhjY29uZmlnOgorKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9EZWJ1Z1JlbGVh
c2UueGNjb25maWc6CisrCisrMjAxMy0xMC0xMCAgTWFyayBSb3dlICA8bXJvd2VAYXBwbGUuY29t
PgorKworKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzEzMzQxNjY2PiBXZWJLaXQgc2hvdWxkIGFs
d2F5cyBidWlsZCBhZ2FpbnN0IGFuIFNESy4KKysKKysgICAgICAgIEhhdmUgYWxsIHByb2plY3Rz
IGRlZmF1bHQgdG8gYnVpbGRpbmcgYWdhaW5zdCB0aGUgT1MgWCBJbnRlcm5hbCBTREsgZm9yIHRo
ZSBQcm9kdWN0aW9uCisrICAgICAgICBjb25maWd1cmF0aW9uLiBGb3IgdGhlIERlYnVnIGFuZCBS
ZWxlYXNlIGNvbmZpZ3VyYXRpb25zLCBsb29rIGZvciBVc2VJbnRlcm5hbFNESy54Y2NvbmZpZwor
KyAgICAgICAgdG8gZGV0ZXJtaW5lIHdoZXRoZXIgdGhlIE9TIFggSW50ZXJuYWwgU0RLIHNob3Vs
ZCBiZSB1c2VkLiBJZiBub3QsIHVzZSB0aGUgbm9ybWFsIE9TIFggU0RLLgorKworKyAgICAgICAg
UmV2aWV3ZWQgYnkgRGFuIEJlcm5zdGVpbi4KKysKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMv
QmFzZS54Y2NvbmZpZzoKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMvRGVidWdSZWxlYXNlLnhj
Y29uZmlnOgorKworKzIwMTMtMTAtMDggIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5A
d2Via2l0Lm9yZz4KKysKKysgICAgICAgIEdlbmVyYXRlIHBkYiBmaWxlcyBmb3IgZGVidWdnaW5n
IEFOR0xFIERMTHMuCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTIyNTMwCisrCisrICAgICAgICBSZXZpZXdlZCBieSBCcmVudCBGdWxnaGFtLgorKwor
KyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL2xpYkVHTENvbW1vbi5wcm9wczoKKysgICAgICAgICog
QU5HTEUudmN4cHJvai9saWJHTEVTdjJDb21tb24ucHJvcHM6CisrICAgICAgICBHZW5lcmF0ZSBk
ZWJ1ZyBpbmZvcm1hdGlvbi4KKysKKysyMDEzLTEwLTAzICBEYW4gQmVybnN0ZWluICA8bWl0ekBh
cHBsZS5jb20+CisrCisrICAgICAgICA8cmRhcjovL3Byb2JsZW0vMTUxMTY2NzM+IFttYWNdIEJ1
aWxkIGZhaWx1cmUgd2hlbiB0aGUgc291cmNlIGRpcmVjdG9yeSBpcyBub3QgbmFtZWQgQU5HTEUK
KysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjIzMDcK
KysKKysgICAgICAgIFJldmlld2VkIGJ5IE1hcmsgUm93ZS4KKysKKysgICAgICAgICogQU5HTEUu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajogRW5zdXJlIHRoYXQgdGhlIHN5bWxpbmsgdG8gU1JD
Uk9PVCBpbgorKyAgICAgICAgRGVyaXZlZFNvdXJjZXMvQU5HTEUgaXMgbmFtZWQgQU5HTEUuCisr
CisrMjAxMy0wOS0yOSAgRGFyaW4gQWRsZXIgIDxkYXJpbkBhcHBsZS5jb20+CisrCisrICAgICAg
ICBUYWtlIHNvbWUgWGNvZGUgYWR2aWNlIGFib3V0IHR1cm5pbmcgb24gYWRkaXRpb25hbCB3YXJu
aW5ncyBpbiBBTkdMRSBhbmQgZ3Rlc3QKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0xMjIwODcKKysKKysgICAgICAgIFJldmlld2VkIGJ5IE1hcmsgUm93
ZS4KKysKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZzogQWRkIHNvbWUg
b2YgdGhlIHdhcm5pbmdzIHRoYXQgWGNvZGUgNSBzdWdnZXN0ZWQuCisrICAgICAgICAqIHNyYy9j
b21waWxlci9wcmVwcm9jZXNzb3IvVG9rZW5pemVyLmw6IERlZmluZWQgWVlfTk9fSU5QVVQgc28g
d2UgZG9uJ3QgY29tcGlsZQorKyAgICAgICAgYW4gdW51c2VkIGZ1bmN0aW9uIGFuZCBnZXQgYSB3
YXJuaW5nLgorKworKzIwMTMtMDktMjkgIERhcmluIEFkbGVyICA8ZGFyaW5AYXBwbGUuY29tPgor
KworKyAgICAgICAgVXNlIFJlbmRlckVsZW1lbnQgaW5zdGVhZCBvZiBSZW5kZXJPYmplY3QgaW4g
bWFueSBwbGFjZXMKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0xMjIwNzgKKysKKysgICAgICAgIFJldmlld2VkIGJ5IEFuZHJlYXMgS2xpbmcuCisrCisr
ICAgICAgICAqIEFOR0xFLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6IExldCBYY29kZSBkbyBp
dHMgdGhpbmcgdG8gdGhpcyBmaWxlLgorKworKzIwMTMtMDktMjQgIE1hcmsgUm93ZSAgPG1yb3dl
QGFwcGxlLmNvbT4KKysKKysgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8xNDk3MTUxOD4gV2ViS2l0
IHNob3VsZCBidWlsZCBhZ2FpbnN0IHRoZSBYY29kZSBkZWZhdWx0IHRvb2xjaGFpbiB3aGVuIHRh
cmdldGluZyBPUyBYIDEwLjgKKysKKysgICAgICAgIFJldmlld2VkIGJ5IERhbiBCZXJuc3RlaW4u
CisrCisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWc6CisrCisrMjAxMy0w
OS0wNiAgcGVhdm9Ab3V0bG9vay5jb20gIDxwZWF2b0BvdXRsb29rLmNvbT4KKysKKysgICAgICAg
IFtXaW5dW1dlYkdMXSBXZWJHTCByZW5kZXJpbmcgaXMgc2xvdy4KKysgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjA4NDEKKysKKysgICAgICAgIFJldmll
d2VkIGJ5IEJyZW50IEZ1bGdoYW0uCisrCisrICAgICAgICBSZW5kZXJpbmcgV2ViR0wgY29udGVu
dCBpcyBzbG93IG9uIFdpbmRvd3MsIGJlY2F1c2UgbG90cyBvZiBkZWJ1ZyBpbmZvcm1hdGlvbiBp
cyB3cml0dGVuIHRvIGRlYnVnLnR4dC4KKysKKysgICAgICAgICogQU5HTEUudmN4cHJvai9BTkdM
RVJlbGVhc2UucHJvcHM6IERpc2FibGUgbG9nZ2luZyBpbiByZWxlYXNlIGJ1aWxkcy4KKysKKysy
MDEzLTA5LTA1ICBEYW4gQmVybnN0ZWluICA8bWl0ekBhcHBsZS5jb20+CisrCisrICAgICAgICBJ
TlNUQUxMX1BBVEhfUFJFRklYIGlzIHVzZWQgZXZlbiB3aGVuIG5vdCBpbnN0YWxsaW5nCisrICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTIwODE4CisrCisr
ICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KKysKKysgICAgICAgICogQ29uZmlndXJh
dGlvbnMvQU5HTEUueGNjb25maWc6IENoYW5nZWQgdGhlIGRlZmluaXRpb24gb2YgUFJJVkFURV9I
RUFERVJTX0ZPTERFUl9QQVRICisrICAgICAgICB0byBpbmNsdWRlIElOU1RBTExfUEFUSF9QUkVG
SVggb25seSB3aGVuIGluc3RhbGxpbmcuCisrCisrMjAxMy0wOC0xNyAgRGF2aWQgS2lsemVyICA8
ZGRraWx6ZXJAYXBwbGUuY29tPgorKworKyAgICAgICAgQU5HTEUgZmFpbHMgdG8gYnVpbGQgd2l0
aCB0cnVuayBjbGFuZzogZXJyb3I6ICdyZWdpc3Rlcicgc3RvcmFnZSBjbGFzcyBzcGVjaWZpZXIg
aXMgZGVwcmVjYXRlZCBbLVdlcnJvciwtV2RlcHJlY2F0ZWQtcmVnaXN0ZXJdCisrICAgICAgICA8
aHR0cDovL3dlYmtpdC5vcmcvYi8xMTk5MzE+CisrICAgICAgICA8cmRhcjovL3Byb2JsZW0vMTQ3
NjM4MjI+CisrCisrICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KKysKKysgICAgICAg
ICogc3JjL2NvbXBpbGVyL2dsc2xhbmcubDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL2dsc2xh
bmdfbGV4LmNwcDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9Ub2tlbml6
ZXIuY3BwOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL1Rva2VuaXplci5s
OgorKyAgICAgICAgQWRkIHByYWdtYSBzdGF0ZW1lbnRzIHRvIGlnbm9yZSAtV2RlcHJlY2F0ZWQt
cmVnaXN0ZXIgd2FybmluZ3MKKysgICAgICAgIGluIGdlbmVyYXRlZCBjb2RlLiAgQWxzbyBpZ25v
cmUgLVd1bmtub3duLXByYWdtYXMgc28gdGhpcworKyAgICAgICAgZG9lc24ndCBjYXVzZSBhIGJ1
aWxkIGZhaWx1cmUgaW4gb2xkZXIgdmVyc2lvbnMgb2YgY2xhbmcuCisrCisrMjAxMy0wOC0xNiAg
Q29tbWl0IFF1ZXVlICA8Y29tbWl0LXF1ZXVlQHdlYmtpdC5vcmc+CisrCisrICAgICAgICBVbnJl
dmlld2VkLCByb2xsaW5nIG91dCByMTUzNzQ5LgorKyAgICAgICAgaHR0cDovL3RyYWMud2Via2l0
Lm9yZy9jaGFuZ2VzZXQvMTUzNzQ5CisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTE5ODkyCisrCisrICAgICAgICBUaGUgYmlzb24gZ2VuZXJhdGlvbiBv
ZiB0aGUgZ2xzbGFuZyogZmlsZXMgaGFzIG5vdyBiZWVuIGZpeGVkLiAoUmVxdWVzdGVkIGJ5IHpk
b2JlcnNlayBvbiAjd2Via2l0KS4KKysKKysgICAgICAgICogR05VbWFrZWZpbGUuYW06IFByZXNl
cnZlIHRoZSBsaWJBTkdMRS5sYSBkZXBlbmRlbmN5IG9uIHRoZSBBTkdMRSdzIEdOVW1ha2VmaWxl
LmFtLgorKworKzIwMTMtMDgtMTUgIEFsbGFuIFNhbmRmZWxkIEplbnNlbiAgPGFsbGFuLmplbnNl
bkBkaWdpYS5jb20+CisrCisrICAgICAgICBBTkdMRSBkb2Vzbid0IGJ1aWxkIHdpdGggYmlzb24g
My4wCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTE5
Nzk4CisrCisrICAgICAgICBSZXZpZXdlZCBieSBBbnR0aSBLb2l2aXN0by4KKysKKysgICAgICAg
IE1ha2UgZ2xzbGFuZy55IGNvbXBhdGlibGUgd2l0aCBiaXNvbiAzLjAsIGJ5IHVzaW5nICVsZXgt
cGFyYW0KKysgICAgICAgIHRvIHNldCBZWUxFWF9QQVJBTSBhbmQgZ2V0dGluZyByaWQgb2YgdXNl
bGVzcyBZWUlEIG1hY3JvLgorKworKyAgICAgICAgKiBzcmMvY29tcGlsZXIvZ2xzbGFuZy55Ogor
KworKzIwMTMtMDgtMDkgIFpvbHRhbiBBcnZhaSAgPHphcnZhaUBpbmYudS1zemVnZWQuaHU+Cisr
CisrICAgICAgICBbUXRdIEJ1aWRmaXggYWZ0ZXIgcjE1MzY2NC4gQWRkaW5nIEFOR0xFX1dFQktJ
VF9XSU4gZGVmaW5pdGlvbi4KKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xMTk1NzcKKysKKysgICAgICAgIFJldmlld2VkIGJ5IEFsbGFuIFNhbmRmZWxk
IEplbnNlbi4KKysKKysgICAgICAgICogVGFyZ2V0LnByaToKKysKKysyMDEzLTA4LTA4ICBBbGV4
IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQGFwcGxlLmNvbT4KKysKKysgICAgICAgIExpbmsg
dG8gY29ycmVjdCBEaXJlY3RYIGxpYnJhcmllcyBmb3IgV2luNjQgQU5HTEUgYnVpbGQuCisrICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTE5NjAwCisrCisr
ICAgICAgICBSZXZpZXdlZCBieSBCcmVudCBGdWxnaGFtLgorKworKyAgICAgICAgKiBBTkdMRS52
Y3hwcm9qL0RpcmVjdFgzMi5wcm9wczogQWRkZWQgd2l0aCB4ODYgRGlyZWN0WCBsaWJyYXJ5IGRp
cmVjdG9yeS4KKysgICAgICAgICogQU5HTEUudmN4cHJvai9EaXJlY3RYNjQucHJvcHM6IEFkZGVk
IHdpdGggeDY0IERpcmVjdFggbGlicmFyeSBkaXJlY3RvcnkuCisrICAgICAgICAqIEFOR0xFLnZj
eHByb2ovbGliRUdMLnZjeHByb2o6CisrICAgICAgICAqIEFOR0xFLnZjeHByb2ovbGliR0xFU3Yy
LnZjeHByb2o6CisrICAgICAgICBVc2UgRGlyZWN0WDMyLnByb3BzIGFuZCBEaXJlY3RYNjQucHJv
cHMuCisrICAgICAgICAqIEFOR0xFLnZjeHByb2ovbGliRUdMQ29tbW9uLnByb3BzOgorKyAgICAg
ICAgKiBBTkdMRS52Y3hwcm9qL2xpYkdMRVN2MkNvbW1vbi5wcm9wczoKKysgICAgICAgIFJlbW92
ZWQgRGlyZWN0WCBsaWJyYXJ5IGRpcmVjdG9yeS4KKysKKysyMDEzLTA3LTIzICBEYXZpZCBGYXJs
ZXIgIDxkZmFybGVyQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFByb3ZpZGUgb3B0aW9uYWwgT1RI
RVJfQ0ZMQUdTLCBPVEhFUl9DUFBGTEFHUywgT1RIRVJfTERGTEFHUyBhZGRpdGlvbnMgZm9yIGJ1
aWxkaW5nIHdpdGggQVNBTgorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTExNzc2MgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgTWFyayBSb3dlLgorKwor
KyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9EZWJ1Z1JlbGVhc2UueGNjb25maWc6CisrICAgICAg
ICBBZGQgQVNBTl9PVEhFUl9DRkxBR1MsIENQTFVTUExVU0ZMQUdTLgorKworKzIwMTMtMDgtMDYg
IFphbiBEb2JlcnNlayAgPHpkb2JlcnNla0BpZ2FsaWEuY29tPgorKworKyAgICAgICAgd2Via2l0
LWd0ayBmYWlscyB0byBidWlsZCB3aXRoIGJpc29uLTMuMAorKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTExOTM3MworKworKyAgICAgICAgUmV2aWV3ZWQg
YnkgR3VzdGF2byBOb3JvbmhhIFNpbHZhLgorKworKyAgICAgICAgKiBHTlVtYWtlZmlsZS5hbTog
U3RvcCByZWx5aW5nIG9uIGdlbmVyYXRlZCBnbHNsYW5nX3RhYi4oY3BwfGgpIGFuZCBnbHNsYW5n
LmNwcCBzb3VyY2VzIGFzIEJpc29uIDMuMAorKyAgICAgICAgcHJvZHVjZXMgbm9uLWNvbXBpbGFi
bGUgc291cmNlIGNvZGUuIEluc3RlYWQsIGNvbXBpbGUgdGhlc2UgcHJlZ2VuZXJhdGVkIGZpbGVz
IGFzIHRoZXkncmUgaW5jbHVkZWQgaW4KKysgICAgICAgIHRoZSB0cmVlLiBPcmlnaW5hbGx5LCB0
aGUgQU5HTEUgc291cmNlIHRyZWUgcHJvdmlkZXMgdGhlc2UgZmlsZXMgYXMgZ2VuZXJhdGVkIGJ5
IEJpc29uIDIuNywgYnV0IHRoZXkncmUKKysgICAgICAgIGF0IHRoZSBtb21lbnQgcmVnZW5lcmF0
ZWQgd2l0aCBCaXNvbiAyLjMgd2hlbiB0aGUgdGhpcmQtcGFydHkgQU5HTEUgc291cmNlIGlzIGJl
aW5nIHVwZGF0ZWQuCisrCisrMjAxMy0wOC0wNSAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3Rl
bnNlbkBhcHBsZS5jb20+CisrCisrICAgICAgICBBZGRlZCBvcHRpbWl6YXRpb25zIHRvIFdpbmRv
d3MgQU5HTEUgYnVpbGRzLgorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTExOTUwMAorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgQnJlbnQgRnVsZ2hhbS4K
KysKKysgICAgICAgICogQU5HTEUudmN4cHJvai9BTkdMRVJlbGVhc2UucHJvcHM6IEFkZGVkLgor
KyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL2xpYkVHTC52Y3hwcm9qOgorKyAgICAgICAgKiBBTkdM
RS52Y3hwcm9qL2xpYkdMRVN2Mi52Y3hwcm9qOgorKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL3By
ZXByb2Nlc3Nvci52Y3hwcm9qOgorKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL3RyYW5zbGF0b3Jf
Y29tbW9uLnZjeHByb2o6CisrICAgICAgICAqIEFOR0xFLnZjeHByb2ovdHJhbnNsYXRvcl9nbHNs
LnZjeHByb2o6CisrICAgICAgICAqIEFOR0xFLnZjeHByb2ovdHJhbnNsYXRvcl9obHNsLnZjeHBy
b2o6CisrICAgICAgICBVc2UgQU5HTEVSZWxlYXNlLnByb3BzIGZvciBSZWxlYXNlLCBSZWxlYXNl
X1dpbkNhaXJvLCBhbmQgUHJvZHVjdGlvbiBjb25maWd1cmF0aW9ucy4KKysKKysyMDEzLTA4LTAy
ICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQGFwcGxlLmNvbT4KKysKKysgICAgICAg
IFNvZnQgbGluayBBTkdMRSBvbiBXaW5kb3dzLgorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTExOTQ1MgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGVh
biBKYWNrc29uLgorKworKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL2xpYkVHTC52Y3hwcm9qOgor
KyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL2xpYkVHTC52Y3hwcm9qLmZpbHRlcnM6CisrICAgICAg
ICAqIEFOR0xFLnZjeHByb2ovbGliR0xFU3YyLnZjeHByb2o6CisrICAgICAgICAqIEFOR0xFLnZj
eHByb2ovbGliR0xFU3YyLnZjeHByb2ouZmlsdGVyczoKKysgICAgICAgIEFkZGVkIHNvZnQgbGlu
a2luZyBoZWFkZXJzLgorKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL2xpYkVHTENvbW1vbi5wcm9w
czoKKysgICAgICAgICogQU5HTEUudmN4cHJvai9saWJHTEVTdjJDb21tb24ucHJvcHM6CisrICAg
ICAgICAqIEFOR0xFLnZjeHByb2ovdHJhbnNsYXRvckNvbW1vbi5wcm9wczoKKysgICAgICAgIEFk
ZGVkIEFOR0xFX1dFQktJVF9XSU4gbWFjcm8gZGVmaW5pdGlvbiBmb3IgZWdsLmggYW5kIGdsMi5o
LgorKyAgICAgICAgKiBpbmNsdWRlL0VHTC9lZ2wuaDoKKysgICAgICAgICogaW5jbHVkZS9HTEVT
Mi9nbDIuaDoKKysgICAgICAgIENvbmRpdGlvbmFsbHkgaW5jbHVkZSBzb2Z0IGxpbmtpbmcgaGVh
ZGVycyBiYXNlZCBvbiBBTkdMRV9XRUJLSVRfV0lOIG1hY3JvLgorKyAgICAgICAgKiBpbmNsdWRl
L0VHTC9lZ2xzb2Z0bGlua2luZy5oOiBBZGRlZC4KKysgICAgICAgICogaW5jbHVkZS9HTEVTMi9n
bDJzb2Z0bGlua2luZy5oOiBBZGRlZC4KKysKKysyMDEzLTA4LTAxICBBbGV4IENocmlzdGVuc2Vu
ICA8YWNocmlzdGVuc2VuQGFwcGxlLmNvbT4KKysKKysgICAgICAgIEZpeGVkIHdyb25nIHN0YXRp
Y19jYXN0aW5nIGluIEFOR0xFIGZyb20gcjE1MzA2NC4KKysgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTkyOTYKKysKKysgICAgICAgIFJldmlld2VkIGJ5
IERlYW4gSmFja3Nvbi4KKysKKysgICAgICAgICogc3JjL2NvbXBpbGVyL0ludGVybWVkaWF0ZS5j
cHA6CisrICAgICAgICAoVEludGVybWVkaWF0ZTo6cHJvbW90ZUNvbnN0YW50VW5pb24pOgorKyAg
ICAgICAgVW5kaWQgZXJyb25lb3VzIHN0YXRpY19jYXN0IGNoYW5nZS4KKysgICAgICAgICogc3Jj
L2NvbXBpbGVyL2ludGVybWVkaWF0ZS5oOgorKyAgICAgICAgKFRJbnRlcm1Db25zdGFudFVuaW9u
OjpnZXRJQ29uc3QpOgorKyAgICAgICAgKFRJbnRlcm1Db25zdGFudFVuaW9uOjpnZXRGQ29uc3Qp
OgorKyAgICAgICAgKFRJbnRlcm1Db25zdGFudFVuaW9uOjpnZXRCQ29uc3QpOgorKyAgICAgICAg
TWFkZSBnZXR0ZXJzIHVzZSBzaXplX3QgaW5zdGVhZCBvZiBpbnQuCisrCisrMjAxMy0wNy0yOSAg
Q2FybG9zIEdhcmNpYSBDYW1wb3MgIDxjZ2FyY2lhQGlnYWxpYS5jb20+CisrCisrICAgICAgICBV
bnJldmlld2VkLiBGaXggbWFrZSBkaXN0Y2hlY2suCisrCisrICAgICAgICAqIEdOVW1ha2VmaWxl
LmFtOiBBZGQgbWlzc2luZyBoZWFkZXIgZmlsZXMgdG8gY29tcGlsYXRpb24uCisrCisrMjAxMy0w
Ny0yOSAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkBhcHBsZS5jb20+CisrCisrICAg
ICAgICBTZXBhcmF0ZWQgdHJhbnNsYXRvciBpbnRvIHByZXByb2Nlc3NvciwgdHJhbnNsYXRvcl9j
b21tb24sCisrICAgICAgICB0cmFuc2xhdG9yX2hsc2wgKGZvciBsaWJHTEVTdjIpLCBhbmQgdHJh
bnNsYXRvcl9nbHNsCisrICAgICAgICAoZm9yIEFOR0xFV2ViS2l0QnJpZGdlKS4KKysgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTkyMjEKKysKKysgICAg
ICAgIFJldmlld2VkIGJ5IEJyZW50IEZ1bGdoYW0uCisrCisrICAgICAgICAqIEFOR0xFLnZjeHBy
b2ovQU5HTEVHZW5lcmF0ZWQudmN4cHJvajoKKysgICAgICAgIFJlbW92ZWQgdW51c2VkIHByZXBy
b2Nlc3NvciBkZWZpbml0aW9ucy4KKysgICAgICAgICogQU5HTEUudmN4cHJvai9saWJFR0wudmN4
cHJvajoKKysgICAgICAgICogQU5HTEUudmN4cHJvai9saWJHTEVTdjIudmN4cHJvajoKKysgICAg
ICAgIFJlbW92ZWQgZGVwZW5kZW5jeSBvbiByZW1vdmVkIHRyYW5zbGF0b3IgcHJvamVjdC4KKysg
ICAgICAgICogQU5HTEUudmN4cHJvai9saWJHTEVTdjJDb21tb24ucHJvcHM6CisrICAgICAgICBM
aW5rIHRvIHRyYW5zbGF0b3JfaGxzbCBsaWJyYXJpZXMuCisrICAgICAgICAqIEFOR0xFLnZjeHBy
b2ovcHJlcHJvY2Vzc29yLnZjeHByb2o6IEFkZGVkLgorKyAgICAgICAgKiBBTkdMRS52Y3hwcm9q
L3ByZXByb2Nlc3Nvci52Y3hwcm9qLmZpbHRlcnM6IEFkZGVkLgorKyAgICAgICAgKiBBTkdMRS52
Y3hwcm9qL3RyYW5zbGF0b3IudmN4cHJvajogUmVtb3ZlZC4KKysgICAgICAgICogQU5HTEUudmN4
cHJvai90cmFuc2xhdG9yLnZjeHByb2ouZmlsdGVyczogUmVtb3ZlZC4KKysgICAgICAgICogQU5H
TEUudmN4cHJvai90cmFuc2xhdG9yX2NvbW1vbi52Y3hwcm9qOiBBZGRlZC4KKysgICAgICAgICog
QU5HTEUudmN4cHJvai90cmFuc2xhdG9yX2NvbW1vbi52Y3hwcm9qLmZpbHRlcnM6IEFkZGVkLgor
KyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL3RyYW5zbGF0b3JfZ2xzbC52Y3hwcm9qOiBBZGRlZC4K
KysgICAgICAgICogQU5HTEUudmN4cHJvai90cmFuc2xhdG9yX2dsc2wudmN4cHJvai5maWx0ZXJz
OiBBZGRlZC4KKysgICAgICAgICogQU5HTEUudmN4cHJvai90cmFuc2xhdG9yX2hsc2wudmN4cHJv
ajogQWRkZWQuCisrICAgICAgICAqIEFOR0xFLnZjeHByb2ovdHJhbnNsYXRvcl9obHNsLnZjeHBy
b2ouZmlsdGVyczogQWRkZWQuCisrCisrMjAxMy0wNy0yNiAgQWxleCBDaHJpc3RlbnNlbiAgPGFj
aHJpc3RlbnNlbkBhcHBsZS5jb20+CisrCisrICAgICAgICBBZGRlZCBtb2R1bGUgZGVmaW5pdGlv
biBmaWxlIGZvciBidWlsZGluZyBsaWJFR0wuCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTE5MTYyCisrCisrICAgICAgICBSZXZpZXdlZCBieSBCcmVu
dCBGdWxnaGFtLgorKworKyAgICAgICAgKiBBTkdMRS52Y3hwcm9qL2xpYkVHTENvbW1vbi5wcm9w
czogQWRkZWQgcmVmZXJlbmNlIHRvIGxpYkVHTC5kZWYuCisrCisrMjAxMy0wNy0yNSAgQWxleCBD
aHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkBhcHBsZS5jb20+CisrCisrICAgICAgICBNYWRlIFdp
bmRvd3MgYnVpbGQgc3lzdGVtIGZvciBBTkdMRSBhbmQgcmVtb3ZlZCBleGlzdGluZyBicm9rZW4g
YnVpbGQgc3lzdGVtLgorKyAgICAgICAgUmVtb3ZlZCBlbXB0eSBzcmMvbGliR0xFU3YyL3NoYWRl
cnMgZGlyZWN0b3J5IGFuZCBvbGQgUkVBRE1FIGZpbGVzLgorKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTExOTEwMworKworKyAgICAgICAgUmV2aWV3ZWQg
YnkgQnJlbnQgRnVsZ2hhbS4KKysKKysgICAgICAgICogQU5HTEUudmN4cHJvajogQWRkZWQuCisr
ICAgICAgICAqIEFOR0xFLnZjeHByb2ovQU5HTEVHZW5lcmF0ZWQudmN4cHJvajogQWRkZWQuCisr
ICAgICAgICAqIEFOR0xFLnZjeHByb2ovQU5HTEVHZW5lcmF0ZWQudmN4cHJvai5maWx0ZXJzOiBB
ZGRlZC4KKysgICAgICAgICogQU5HTEUudmN4cHJvai9saWJFR0wudmN4cHJvajogQWRkZWQuCisr
ICAgICAgICAqIEFOR0xFLnZjeHByb2ovbGliRUdMLnZjeHByb2ouZmlsdGVyczogQWRkZWQuCisr
ICAgICAgICAqIEFOR0xFLnZjeHByb2ovbGliRUdMQ29tbW9uLnByb3BzOiBBZGRlZC4KKysgICAg
ICAgICogQU5HTEUudmN4cHJvai9saWJHTEVTdjIudmN4cHJvajogQWRkZWQuCisrICAgICAgICAq
IEFOR0xFLnZjeHByb2ovbGliR0xFU3YyLnZjeHByb2ouZmlsdGVyczogQWRkZWQuCisrICAgICAg
ICAqIEFOR0xFLnZjeHByb2ovbGliR0xFU3YyQ29tbW9uLnByb3BzOiBBZGRlZC4KKysgICAgICAg
ICogQU5HTEUudmN4cHJvai90cmFuc2xhdG9yLnZjeHByb2o6IEFkZGVkLgorKyAgICAgICAgKiBB
TkdMRS52Y3hwcm9qL3RyYW5zbGF0b3IudmN4cHJvai5maWx0ZXJzOiBBZGRlZC4KKysgICAgICAg
ICogQU5HTEUudmN4cHJvai90cmFuc2xhdG9yQ29tbW9uLnByb3BzOiBBZGRlZC4KKysgICAgICAg
ICogc3JjL0FOR0xFLnNsbjogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXBy
b2Nlc3Nvci9wcmVwcm9jZXNzb3IudmN4cHJvajogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2Nv
bXBpbGVyL3ByZXByb2Nlc3Nvci9wcmVwcm9jZXNzb3IudmN4cHJvai5maWx0ZXJzOiBSZW1vdmVk
LgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvcl9jb21tb24udmN4cHJvajogUmVt
b3ZlZC4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3JfY29tbW9uLnZjeHByb2ou
ZmlsdGVyczogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3JfaGxz
bC52Y3hwcm9qOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvcl9o
bHNsLnZjeHByb2ouZmlsdGVyczogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xpYkVHTC9SRUFE
TUU6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9saWJFR0wvbGliRUdMLnZjeHByb2o6IFJlbW92
ZWQuCisrICAgICAgICAqIHNyYy9saWJFR0wvbGliRUdMLnZjeHByb2ouZmlsdGVyczogUmVtb3Zl
ZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9SRUFETUU6IFJlbW92ZWQuCisrICAgICAgICAq
IHNyYy9saWJHTEVTdjIvbGliR0xFU3YyLnZjeHByb2o6IFJlbW92ZWQuCisrICAgICAgICAqIHNy
Yy9saWJHTEVTdjIvbGliR0xFU3YyLnZjeHByb2ouZmlsdGVyczogUmVtb3ZlZC4KKysgICAgICAg
ICogc3JjL2xpYkdMRVN2Mi9zaGFkZXJzOiBSZW1vdmVkLgorKworKzIwMTMtMDctMjQgIEFsZXgg
Q2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5AYXBwbGUuY29tPgorKworKyAgICAgICAgR2VuZXJh
dGUgZGVyaXZlZCBmaWxlcyBpbiBBTkdMRSBhdCBidWlsZCB0aW1lIHJhdGhlciB0aGFuIHdoZW4g
dXBkYXRpbmcgZnJvbSB1cHN0cmVhbS4KKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0xMTg4NzIKKysKKysgICAgICAgIFJldmlld2VkIGJ5IE1hcmsgUm93
ZS4KKysKKysgICAgICAgICogQU5HTEUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajogTWFkZSBE
ZXJpdmVkIFNvdXJjZXMgdGFyZ2V0IHdoaWNoIGNhbGxzIERlcml2ZWRTb3VyY2VzLm1ha2UsCisr
ICAgICAgICBtb3ZlZCBnZW5lcmF0ZWQgZmlsZXMgaW50byBEZXJpdmVkIFNvdXJjZXMgZ3JvdXAu
CisrICAgICAgICAqIERlcml2ZWRTb3VyY2VzLm1ha2U6IEFkZGVkLgorKworKzIwMTMtMDctMjQg
IFphbiBEb2JlcnNlayAgPHpkb2JlcnNla0BpZ2FsaWEuY29tPgorKworKyAgICAgICAgVW5yZXZp
ZXdlZC4gU2V0dGluZyB0aGUgc3ZuOmVvbC1zdHlsZT1uYXRpdmUgcHJvcGVydHkgb24gdGhlIEFO
R0xFLnNsbiBmaWxlLgorKworKyAgICAgICAgKiBzcmMvQU5HTEUuc2xuOiBBZGRlZCBwcm9wZXJ0
eSBzdm46ZW9sLXN0eWxlLgorKworKzIwMTMtMDctMjQgIEdhYm9yIEFicmFoYW0gIDxhYnJobUBp
bmYudS1zemVnZWQuaHU+CisrCisrICAgICAgICBbUXRdIEJ1aWxkZml4IGFmdGVyIHIxNTMwNjQu
IEFkZCBVbmlmb3JtIGZpbGVzIHRvIHRoZSBUYXJnZXQucHJpLgorKworKyAgICAgICAgUmV2aWV3
ZWQgYnkgQ3NhYmEgT3N6dHJvZ29uw6FjLgorKworKyAgICAgICAgKiBUYXJnZXQucHJpOgorKwor
KzIwMTMtMDctMjMgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5AYXBwbGUuY29tPgor
KworKyAgICAgICAgVXBkYXRlZCBBTkdMRSB0byBsYXRlc3QgZ2l0IGNvbW1pdCAoMDQ3MzczYWEz
ZWI0MDhiZTYyYmU1MmFkZTg0MGZhNWYxMWU3MjMzNykuCisrICAgICAgICBBZGRlZCBtaXNzaW5n
IEFOR0xFIGZpbGVzIGV4Y2VwdCB1bnVzZWQgdGVzdHMsIGV4dGVuc2lvbnMsIHNhbXBsZXMsIGJ1
aWxkLCBhbmQgLmdpdCBkaXJlY3Rvcmllcy4KKysgICAgICAgIFJhbiBCaXNvbiBhZnRlciBtYWtp
bmcgc29tZSBjaGFuZ2VzIHRvIGZpeCBjb21waWxlIGVycm9ycyAoc2VlIGJlbG93KS4KKysKKysg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTg1NTAKKysK
KysgICAgICAgIFJldmlld2VkIGJ5IERlYW4gSmFja3Nvbi4KKysKKysgICAgICAgICogQU5HTEUu
cGxpc3Q6IFVwZGF0ZWQgZnJvbSBzdm4gdG8gZ2l0LgorKyAgICAgICAgKiBBTkdMRS54Y29kZXBy
b2ovcHJvamVjdC5wYnhwcm9qOiBSZW5hbWVkIERldGVjdFJlY3Vyc2lvbiB0byBEZXRlY3RDYWxs
RGVwdGguCisrICAgICAgICAqIEFVVEhPUlM6IEFkZGVkLgorKyAgICAgICAgKiBDT05UUklCVVRP
UlM6IEFkZGVkLgorKyAgICAgICAgKiBERVBTOiBBZGRlZC4KKysgICAgICAgICogR05VbWFrZWZp
bGUuYW06IFJlbmFtZWQgRGV0ZWN0UmVjdXJzaW9uIHRvIERldGVjdENhbGxEZXB0aCBhbmQgYWRk
ZWQgVW5pZm9ybS5jcHAuCisrICAgICAgICAqIExJQ0VOU0U6IEFkZGVkLgorKyAgICAgICAgKiBS
RUFETUUuY2hyb21pdW06IEFkZGVkLgorKyAgICAgICAgKiBUYXJnZXQucHJpOiBSZW5hbWVkIERl
dGVjdFJlY3Vyc2lvbiB0byBEZXRlY3RDYWxsRGVwdGguCisrICAgICAgICAqIGNvZGVyZXZpZXcu
c2V0dGluZ3M6IEFkZGVkLgorKyAgICAgICAgKiBpbmNsdWRlL0VHTC9lZ2xleHQuaDoKKysgICAg
ICAgICogaW5jbHVkZS9HTEVTMi9nbDJleHQuaDoKKysgICAgICAgICogaW5jbHVkZS9HTFNMQU5H
L1NoYWRlckxhbmcuaDoKKysgICAgICAgICogc3JjL0FOR0xFLnNsbjogQWRkZWQuCisrICAgICAg
ICAqIHNyYy9idWlsZF9hbmdsZS5neXA6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvYnVpbGRfYW5n
bGUuZ3lwaTogQWRkZWQuCisrICAgICAgICAqIHNyYy9jb21tb24vUmVmQ291bnRPYmplY3QuY3Bw
OgorKyAgICAgICAgKiBzcmMvY29tbW9uL2FuZ2xldXRpbHMuaDoKKysgICAgICAgIChBcnJheVNp
emUpOgorKyAgICAgICAgKFNhZmVSZWxlYXNlKToKKysgICAgICAgICogc3JjL2NvbW1vbi9kZWJ1
Zy5jcHA6CisrICAgICAgICAqIHNyYy9jb21tb24vZGVidWcuaDoKKysgICAgICAgICogc3JjL2Nv
bW1vbi9zeXN0ZW0uaDoKKysgICAgICAgICogc3JjL2NvbW1vbi92ZXJzaW9uLmg6CisrICAgICAg
ICAqIHNyYy9jb21waWxlci82NGJpdC1sZXhlci1zYWZldHkucGF0Y2g6IEFkZGVkLgorKyAgICAg
ICAgKiBzcmMvY29tcGlsZXIvQmFzZVR5cGVzLmg6CisrICAgICAgICAoZ2V0UXVhbGlmaWVyU3Ry
aW5nKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL0NvZGVHZW5ITFNMLmNwcDoKKysgICAgICAg
IChDb25zdHJ1Y3RDb21waWxlcik6CisrICAgICAgICAqIHNyYy9jb21waWxlci9Db21tb24uaDoK
KysgICAgICAgICogc3JjL2NvbXBpbGVyL0NvbXBpbGVyLmNwcDoKKysgICAgICAgIChUQ29tcGls
ZXI6OlRDb21waWxlcik6CisrICAgICAgICAoVENvbXBpbGVyOjpJbml0KToKKysgICAgICAgIChU
Q29tcGlsZXI6OmNvbXBpbGUpOgorKyAgICAgICAgKFRDb21waWxlcjo6SW5pdEJ1aWx0SW5TeW1i
b2xUYWJsZSk6CisrICAgICAgICAoVENvbXBpbGVyOjpkZXRlY3RDYWxsRGVwdGgpOgorKyAgICAg
ICAgKFRDb21waWxlcjo6bGltaXRFeHByZXNzaW9uQ29tcGxleGl0eSk6CisrICAgICAgICAoVENv
bXBpbGVyOjpnZXRSZXNvdXJjZXMpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvQ29uc3RhbnRV
bmlvbi5oOgorKyAgICAgICAgKENvbnN0YW50VW5pb246OkNvbnN0YW50VW5pb24pOgorKyAgICAg
ICAgKiBzcmMvY29tcGlsZXIvRGV0ZWN0Q2FsbERlcHRoLmNwcDogQWRkZWQuCisrICAgICAgICAo
RGV0ZWN0Q2FsbERlcHRoOjpGdW5jdGlvbk5vZGU6OkZ1bmN0aW9uTm9kZSk6CisrICAgICAgICAo
RGV0ZWN0Q2FsbERlcHRoOjpGdW5jdGlvbk5vZGU6OmdldE5hbWUpOgorKyAgICAgICAgKERldGVj
dENhbGxEZXB0aDo6RnVuY3Rpb25Ob2RlOjphZGRDYWxsZWUpOgorKyAgICAgICAgKERldGVjdENh
bGxEZXB0aDo6RnVuY3Rpb25Ob2RlOjpkZXRlY3RDYWxsRGVwdGgpOgorKyAgICAgICAgKERldGVj
dENhbGxEZXB0aDo6RnVuY3Rpb25Ob2RlOjpyZXNldCk6CisrICAgICAgICAoRGV0ZWN0Q2FsbERl
cHRoOjpEZXRlY3RDYWxsRGVwdGgpOgorKyAgICAgICAgKERldGVjdENhbGxEZXB0aDo6fkRldGVj
dENhbGxEZXB0aCk6CisrICAgICAgICAoRGV0ZWN0Q2FsbERlcHRoOjp2aXNpdEFnZ3JlZ2F0ZSk6
CisrICAgICAgICAoRGV0ZWN0Q2FsbERlcHRoOjpjaGVja0V4Y2VlZHNNYXhEZXB0aCk6CisrICAg
ICAgICAoRGV0ZWN0Q2FsbERlcHRoOjpyZXNldEZ1bmN0aW9uTm9kZXMpOgorKyAgICAgICAgKERl
dGVjdENhbGxEZXB0aDo6ZGV0ZWN0Q2FsbERlcHRoRm9yRnVuY3Rpb24pOgorKyAgICAgICAgKERl
dGVjdENhbGxEZXB0aDo6ZGV0ZWN0Q2FsbERlcHRoKToKKysgICAgICAgIChEZXRlY3RDYWxsRGVw
dGg6OmZpbmRGdW5jdGlvbkJ5TmFtZSk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9EZXRlY3RD
YWxsRGVwdGguaDogQWRkZWQuCisrICAgICAgICAoRGV0ZWN0Q2FsbERlcHRoOjpnZXRJbmZvU2lu
ayk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9EZXRlY3RSZWN1cnNpb24uY3BwOiBSZW1vdmVk
LgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvRGV0ZWN0UmVjdXJzaW9uLmg6IFJlbW92ZWQuCisr
ICAgICAgICAqIHNyYy9jb21waWxlci9EaWFnbm9zdGljcy5jcHA6CisrICAgICAgICAoVERpYWdu
b3N0aWNzOjp3cml0ZUluZm8pOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvRm9yTG9vcFVucm9s
bC5jcHA6CisrICAgICAgICAoRm9yTG9vcFVucm9sbDo6ZXZhbHVhdGVJbnRDb25zdGFudCk6Cisr
ICAgICAgICAqIHNyYy9jb21waWxlci9JbmZvU2luay5jcHA6CisrICAgICAgICAoVEluZm9TaW5r
QmFzZTo6cHJlZml4KToKKysgICAgICAgIChUSW5mb1NpbmtCYXNlOjpsb2NhdGlvbik6CisrICAg
ICAgICAoVEluZm9TaW5rQmFzZTo6bWVzc2FnZSk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9J
bmZvU2luay5oOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvSW5pdGlhbGl6ZS5jcHA6CisrICAg
ICAgICAoSW5zZXJ0QnVpbHRJbkZ1bmN0aW9ucyk6CisrICAgICAgICAoSWRlbnRpZnlCdWlsdElu
cyk6CisrICAgICAgICAoSW5pdEV4dGVuc2lvbkJlaGF2aW9yKToKKysgICAgICAgICogc3JjL2Nv
bXBpbGVyL0luaXRpYWxpemUuaDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL0ludGVybWVkaWF0
ZS5jcHA6CisrICAgICAgICAoVEludGVybWVkaWF0ZTo6YWRkU3ltYm9sKToKKysgICAgICAgIChU
SW50ZXJtZWRpYXRlOjphZGRCaW5hcnlNYXRoKToKKysgICAgICAgIChUSW50ZXJtZWRpYXRlOjph
ZGRBc3NpZ24pOgorKyAgICAgICAgKFRJbnRlcm1lZGlhdGU6OmFkZEluZGV4KToKKysgICAgICAg
IChUSW50ZXJtZWRpYXRlOjphZGRVbmFyeU1hdGgpOgorKyAgICAgICAgKFRJbnRlcm1lZGlhdGU6
OnNldEFnZ3JlZ2F0ZU9wZXJhdG9yKToKKysgICAgICAgIChUSW50ZXJtZWRpYXRlOjphZGRDb252
ZXJzaW9uKToKKysgICAgICAgIChUSW50ZXJtZWRpYXRlOjpncm93QWdncmVnYXRlKToKKysgICAg
ICAgIChUSW50ZXJtZWRpYXRlOjptYWtlQWdncmVnYXRlKToKKysgICAgICAgIChUSW50ZXJtZWRp
YXRlOjphZGRTZWxlY3Rpb24pOgorKyAgICAgICAgKFRJbnRlcm1lZGlhdGU6OmFkZENvbW1hKToK
KysgICAgICAgIChUSW50ZXJtZWRpYXRlOjphZGRDb25zdGFudFVuaW9uKToKKysgICAgICAgIChU
SW50ZXJtZWRpYXRlOjphZGRTd2l6emxlKToKKysgICAgICAgIChUSW50ZXJtZWRpYXRlOjphZGRM
b29wKToKKysgICAgICAgIChUSW50ZXJtZWRpYXRlOjphZGRCcmFuY2gpOgorKyAgICAgICAgKFRJ
bnRlcm1VbmFyeTo6cHJvbW90ZSk6CisrICAgICAgICAoVEludGVybUJpbmFyeTo6cHJvbW90ZSk6
CisrICAgICAgICAoQ29tcGFyZVN0cnVjdCk6CisrICAgICAgICAoQ29tcGFyZVN0cnVjdHVyZSk6
CisrICAgICAgICAoVEludGVybUNvbnN0YW50VW5pb246OmZvbGQpOiBBZGRlZCBpbXBsaWVkIHN0
YXRpY19jYXN0cyB0byBmaXggY29tcGlsaW5nIGVycm9ycyBvbiBNYWMuCisrICAgICAgICAoVElu
dGVybWVkaWF0ZTo6cHJvbW90ZUNvbnN0YW50VW5pb24pOgorKyAgICAgICAgKiBzcmMvY29tcGls
ZXIvT3V0cHV0R0xTTC5jcHA6CisrICAgICAgICAoVE91dHB1dEdMU0w6OnZpc2l0U3ltYm9sKToK
KysgICAgICAgICogc3JjL2NvbXBpbGVyL091dHB1dEdMU0wuaDoKKysgICAgICAgICogc3JjL2Nv
bXBpbGVyL091dHB1dEdMU0xCYXNlLmNwcDoKKysgICAgICAgIChUT3V0cHV0R0xTTEJhc2U6Ondy
aXRlVmFyaWFibGVUeXBlKToKKysgICAgICAgIChUT3V0cHV0R0xTTEJhc2U6OndyaXRlQ29uc3Rh
bnRVbmlvbik6CisrICAgICAgICAoVE91dHB1dEdMU0xCYXNlOjp2aXNpdEJpbmFyeSk6CisrICAg
ICAgICAoVE91dHB1dEdMU0xCYXNlOjp2aXNpdEFnZ3JlZ2F0ZSk6CisrICAgICAgICAoVE91dHB1
dEdMU0xCYXNlOjpnZXRUeXBlTmFtZSk6CisrICAgICAgICAoVE91dHB1dEdMU0xCYXNlOjpzdHJ1
Y3REZWNsYXJlZCk6CisrICAgICAgICAoVE91dHB1dEdMU0xCYXNlOjpkZWNsYXJlU3RydWN0KToK
KysgICAgICAgICogc3JjL2NvbXBpbGVyL091dHB1dEdMU0xCYXNlLmg6CisrICAgICAgICAqIHNy
Yy9jb21waWxlci9PdXRwdXRITFNMLmNwcDoKKysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6T3V0
cHV0SExTTCk6CisrICAgICAgICAoc2g6Ok91dHB1dEhMU0w6OmdldFVuaWZvcm1zKToKKysgICAg
ICAgIChzaDo6T3V0cHV0SExTTDo6aGVhZGVyKToKKysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6
dmlzaXRTeW1ib2wpOgorKyAgICAgICAgKHNoOjpPdXRwdXRITFNMOjp2aXNpdEJpbmFyeSk6Cisr
ICAgICAgICAoc2g6Ok91dHB1dEhMU0w6OnZpc2l0QWdncmVnYXRlKToKKysgICAgICAgIChzaDo6
T3V0cHV0SExTTDo6dmlzaXRTZWxlY3Rpb24pOgorKyAgICAgICAgKHNoOjpPdXRwdXRITFNMOjp2
aXNpdExvb3ApOgorKyAgICAgICAgKHNoOjpPdXRwdXRITFNMOjpoYW5kbGVFeGNlc3NpdmVMb29w
KToKKysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6YXJndW1lbnRTdHJpbmcpOgorKyAgICAgICAg
KHNoOjpPdXRwdXRITFNMOjp0eXBlU3RyaW5nKToKKysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6
dGV4dHVyZVN0cmluZyk6CisrICAgICAgICAoc2g6Ok91dHB1dEhMU0w6OmluaXRpYWxpemVyKToK
KysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6YWRkQ29uc3RydWN0b3IpOgorKyAgICAgICAgKHNo
OjpPdXRwdXRITFNMOjp3cml0ZUNvbnN0YW50VW5pb24pOgorKyAgICAgICAgKHNoOjpPdXRwdXRI
TFNMOjpkZWNvcmF0ZVVuaWZvcm0pOgorKyAgICAgICAgKHNoOjpPdXRwdXRITFNMOjpkZWNvcmF0
ZUZpZWxkKToKKysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6cmVnaXN0ZXJTdHJpbmcpOgorKyAg
ICAgICAgKHNoOjpPdXRwdXRITFNMOjpzYW1wbGVyUmVnaXN0ZXIpOgorKyAgICAgICAgKHNoOjpP
dXRwdXRITFNMOjp1bmlmb3JtUmVnaXN0ZXIpOgorKyAgICAgICAgKHNoOjpPdXRwdXRITFNMOjpk
ZWNsYXJlVW5pZm9ybSk6CisrICAgICAgICAoc2g6Ok91dHB1dEhMU0w6OmdsVmFyaWFibGVUeXBl
KToKKysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6Z2xWYXJpYWJsZVByZWNpc2lvbik6CisrICAg
ICAgICAqIHNyYy9jb21waWxlci9PdXRwdXRITFNMLmg6CisrICAgICAgICAqIHNyYy9jb21waWxl
ci9QYXJzZUhlbHBlci5jcHA6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6cGFyc2VWZWN0b3JG
aWVsZHMpOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OnBhcnNlTWF0cml4RmllbGRzKToKKysg
ICAgICAgIChUUGFyc2VDb250ZXh0OjplcnJvcik6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6
d2FybmluZyk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6YXNzaWduRXJyb3IpOgorKyAgICAg
ICAgKFRQYXJzZUNvbnRleHQ6OnVuYXJ5T3BFcnJvcik6CisrICAgICAgICAoVFBhcnNlQ29udGV4
dDo6YmluYXJ5T3BFcnJvcik6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6cHJlY2lzaW9uRXJy
b3JDaGVjayk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6bFZhbHVlRXJyb3JDaGVjayk6Cisr
ICAgICAgICAoVFBhcnNlQ29udGV4dDo6Z2xvYmFsRXJyb3JDaGVjayk6CisrICAgICAgICAoVFBh
cnNlQ29udGV4dDo6cmVzZXJ2ZWRFcnJvckNoZWNrKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0
Ojpjb25zdHJ1Y3RvckVycm9yQ2hlY2spOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OnZvaWRF
cnJvckNoZWNrKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0Ojpib29sRXJyb3JDaGVjayk6Cisr
ICAgICAgICAoVFBhcnNlQ29udGV4dDo6c2FtcGxlckVycm9yQ2hlY2spOgorKyAgICAgICAgKFRQ
YXJzZUNvbnRleHQ6OnN0cnVjdFF1YWxpZmllckVycm9yQ2hlY2spOgorKyAgICAgICAgKFRQYXJz
ZUNvbnRleHQ6OnBhcmFtZXRlclNhbXBsZXJFcnJvckNoZWNrKToKKysgICAgICAgIChUUGFyc2VD
b250ZXh0Ojpjb250YWluc1NhbXBsZXIpOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OmFycmF5
U2l6ZUVycm9yQ2hlY2spOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OmFycmF5UXVhbGlmaWVy
RXJyb3JDaGVjayk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6YXJyYXlUeXBlRXJyb3JDaGVj
ayk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6YXJyYXlFcnJvckNoZWNrKToKKysgICAgICAg
IChUUGFyc2VDb250ZXh0Ojpub25Jbml0Q29uc3RFcnJvckNoZWNrKToKKysgICAgICAgIChUUGFy
c2VDb250ZXh0Ojpub25Jbml0RXJyb3JDaGVjayk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6
cGFyYW1FcnJvckNoZWNrKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0OjpleHRlbnNpb25FcnJv
ckNoZWNrKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0Ojppc0V4dGVuc2lvbkVuYWJsZWQpOgor
KyAgICAgICAgUmVwbGFjZWQgYXV0byB3aXRoIHN0ZDo6bWFwPHN0ZDo6c3RyaW5nLCBUQmVoYXZp
b3I+Ojpjb25zdF9pdGVyYXRvciB0byBmaXggUXQgYW5kIEVGTCBjb21waWxpbmcgZXJyb3JzLgor
KyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OmZpbmRGdW5jdGlvbik6CisrICAgICAgICAoVFBhcnNl
Q29udGV4dDo6ZXhlY3V0ZUluaXRpYWxpemVyKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0Ojph
ZGRDb25zdHJ1Y3Rvcik6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6Y29uc3RydWN0QnVpbHRJ
bik6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6Y29uc3RydWN0U3RydWN0KToKKysgICAgICAg
IChUUGFyc2VDb250ZXh0OjphZGRDb25zdFZlY3Rvck5vZGUpOgorKyAgICAgICAgKFRQYXJzZUNv
bnRleHQ6OmFkZENvbnN0TWF0cml4Tm9kZSk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6YWRk
Q29uc3RBcnJheU5vZGUpOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OmFkZENvbnN0U3RydWN0
KToKKysgICAgICAgIChUUGFyc2VDb250ZXh0OjplbnRlclN0cnVjdERlY2xhcmF0aW9uKToKKysg
ICAgICAgIChUUGFyc2VDb250ZXh0OjpzdHJ1Y3ROZXN0aW5nRXJyb3JDaGVjayk6CisrICAgICAg
ICAoVFBhcnNlQ29udGV4dDo6YWRkSW5kZXhFeHByZXNzaW9uKToKKysgICAgICAgICogc3JjL2Nv
bXBpbGVyL1BhcnNlSGVscGVyLmg6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6VFBhcnNlQ29u
dGV4dCk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6cHJhZ21hKToKKysgICAgICAgICogc3Jj
L2NvbXBpbGVyL1Bvb2xBbGxvYy5jcHA6CisrICAgICAgICAoVFBvb2xBbGxvY2F0b3I6OmFsbG9j
YXRlKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL1NoSGFuZGxlLmg6CisrICAgICAgICAoVFNo
SGFuZGxlQmFzZTo6Z2V0QXNUcmFuc2xhdG9ySExTTCk6CisrICAgICAgICAqIHNyYy9jb21waWxl
ci9TaGFkZXJMYW5nLmNwcDoKKysgICAgICAgIChTaEluaXRCdWlsdEluUmVzb3VyY2VzKToKKysg
ICAgICAgIChTaEdldEluZm9Qb2ludGVyKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL1N5bWJv
bFRhYmxlLmNwcDoKKysgICAgICAgIChUVHlwZTo6VFR5cGUpOgorKyAgICAgICAgKFRUeXBlOjpi
dWlsZE1hbmdsZWROYW1lKToKKysgICAgICAgIChUVHlwZTo6Z2V0T2JqZWN0U2l6ZSk6CisrICAg
ICAgICAoVFN0cnVjdHVyZTo6Y29udGFpbnNBcnJheXMpOgorKyAgICAgICAgKFRTdHJ1Y3R1cmU6
OmJ1aWxkTWFuZ2xlZE5hbWUpOgorKyAgICAgICAgKFRTdHJ1Y3R1cmU6OmNhbGN1bGF0ZU9iamVj
dFNpemUpOgorKyAgICAgICAgKFRTdHJ1Y3R1cmU6OmNhbGN1bGF0ZURlZXBlc3ROZXN0aW5nKToK
KysgICAgICAgIChUU3ltYm9sVGFibGVMZXZlbDo6cmVsYXRlVG9FeHRlbnNpb24pOgorKyAgICAg
ICAgKiBzcmMvY29tcGlsZXIvU3ltYm9sVGFibGUuaDoKKysgICAgICAgIChUU3ltYm9sOjpyZWxh
dGVUb0V4dGVuc2lvbik6CisrICAgICAgICAoVFN5bWJvbDo6Z2V0RXh0ZW5zaW9uKToKKysgICAg
ICAgIChUVmFyaWFibGU6OlRWYXJpYWJsZSk6CisrICAgICAgICAoVFZhcmlhYmxlOjpzZXRRdWFs
aWZpZXIpOgorKyAgICAgICAgKFRWYXJpYWJsZTo6c2hhcmVDb25zdFBvaW50ZXIpOgorKyAgICAg
ICAgKFRTeW1ib2xUYWJsZUxldmVsOjppbnNlcnQpOgorKyAgICAgICAgKFRTeW1ib2xUYWJsZTo6
aW5zZXJ0Q29uc3RJbnQpOgorKyAgICAgICAgKFRTeW1ib2xUYWJsZTo6aW5zZXJ0QnVpbHRJbik6
CisrICAgICAgICAqIHNyYy9jb21waWxlci9UcmFuc2xhdG9ySExTTC5jcHA6CisrICAgICAgICAo
VHJhbnNsYXRvckhMU0w6OlRyYW5zbGF0b3JITFNMKToKKysgICAgICAgIChUcmFuc2xhdG9ySExT
TDo6dHJhbnNsYXRlKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL1RyYW5zbGF0b3JITFNMLmg6
CisrICAgICAgICAoVHJhbnNsYXRvckhMU0w6OmdldEFzVHJhbnNsYXRvckhMU0wpOgorKyAgICAg
ICAgKFRyYW5zbGF0b3JITFNMOjpnZXRVbmlmb3Jtcyk6CisrICAgICAgICAqIHNyYy9jb21waWxl
ci9UeXBlcy5oOiBSZW1vdmVkIGVudW0gYml0IGZpZWxkcyB0byBmaXggZ2NjIGNvbXBpbGVyIGVy
cm9ycy4KKysgICAgICAgIChURmllbGQ6OlRGaWVsZCk6CisrICAgICAgICAoVEZpZWxkOjp0eXBl
KToKKysgICAgICAgIChURmllbGQ6Om5hbWUpOgorKyAgICAgICAgKE5ld1Bvb2xURmllbGRMaXN0
KToKKysgICAgICAgIChUU3RydWN0dXJlOjpUU3RydWN0dXJlKToKKysgICAgICAgIChUU3RydWN0
dXJlOjpuYW1lKToKKysgICAgICAgIChUU3RydWN0dXJlOjpmaWVsZHMpOgorKyAgICAgICAgKFRT
dHJ1Y3R1cmU6Om1hbmdsZWROYW1lKToKKysgICAgICAgIChUU3RydWN0dXJlOjpvYmplY3RTaXpl
KToKKysgICAgICAgIChUU3RydWN0dXJlOjpkZWVwZXN0TmVzdGluZyk6CisrICAgICAgICAoVFR5
cGU6OlRUeXBlKToKKysgICAgICAgIChUVHlwZTo6ZWxlbWVudFJlZ2lzdGVyQ291bnQpOgorKyAg
ICAgICAgKFRUeXBlOjp0b3RhbFJlZ2lzdGVyQ291bnQpOgorKyAgICAgICAgKFRUeXBlOjpjbGVh
ckFycmF5bmVzcyk6CisrICAgICAgICAoVFR5cGU6OmdldFN0cnVjdCk6CisrICAgICAgICAoVFR5
cGU6OnNldFN0cnVjdCk6CisrICAgICAgICAoVFR5cGU6OmdldE1hbmdsZWROYW1lKToKKysgICAg
ICAgIChUVHlwZTo6Z2V0RGVlcGVzdFN0cnVjdE5lc3RpbmcpOgorKyAgICAgICAgKFRUeXBlOjpp
c1N0cnVjdHVyZUNvbnRhaW5pbmdBcnJheXMpOgorKyAgICAgICAgKFRQdWJsaWNUeXBlOjpzZXRC
YXNpYyk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9Vbmlmb3JtLmNwcDogQWRkZWQuCisrICAg
ICAgICAoc2g6OlVuaWZvcm06OlVuaWZvcm0pOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvVW5p
Zm9ybS5oOiBBZGRlZC4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL1ZhcmlhYmxlSW5mby5jcHA6
CisrICAgICAgICAoZ2V0VXNlckRlZmluZWRWYXJpYWJsZUluZm8pOgorKyAgICAgICAgKiBzcmMv
Y29tcGlsZXIvZ2xzbGFuZy5sOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvZ2xzbGFuZy55OiBN
b3ZlZCBZWUxUWVBFIGRlZmluaXRpb24gaW50byAldW5pb24gdG8gd29yayB3aXRoIEJpc29uIDIu
My4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL2dsc2xhbmdfbGV4LmNwcDoKKysgICAgICAgICh5
eV9nZXRfcHJldmlvdXNfc3RhdGUpOgorKyAgICAgICAgKHl5X3RyeV9OVUxfdHJhbnMpOgorKyAg
ICAgICAgKHl5Z2V0X2xsb2MpOgorKyAgICAgICAgKHl5c2V0X2xsb2MpOgorKyAgICAgICAgKHN0
cmluZ19pbnB1dCk6CisrICAgICAgICAoY2hlY2tfdHlwZSk6CisrICAgICAgICAocmVzZXJ2ZWRf
d29yZCk6CisrICAgICAgICAoZ2xzbGFuZ19zY2FuKToKKysgICAgICAgICogc3JjL2NvbXBpbGVy
L2dsc2xhbmdfdGFiLmNwcDoKKysgICAgICAgICh5eWVycm9yKToKKysgICAgICAgICogc3JjL2Nv
bXBpbGVyL2dsc2xhbmdfdGFiLmg6CisrICAgICAgICAqIHNyYy9jb21waWxlci9pbnRlcm1PdXQu
Y3BwOgorKyAgICAgICAgKFRPdXRwdXRUcmF2ZXJzZXI6OnZpc2l0VW5hcnkpOgorKyAgICAgICAg
KFRPdXRwdXRUcmF2ZXJzZXI6OnZpc2l0QWdncmVnYXRlKToKKysgICAgICAgIChUT3V0cHV0VHJh
dmVyc2VyOjp2aXNpdENvbnN0YW50VW5pb24pOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvaW50
ZXJtZWRpYXRlLmg6CisrICAgICAgICAoVEludGVybU5vZGU6OlRJbnRlcm1Ob2RlKToKKysgICAg
ICAgIChUSW50ZXJtTm9kZTo6flRJbnRlcm1Ob2RlKToKKysgICAgICAgIChUSW50ZXJtTm9kZTo6
Z2V0TGluZSk6CisrICAgICAgICAoVEludGVybU5vZGU6OnNldExpbmUpOgorKyAgICAgICAgKFRJ
bnRlcm1Ob2RlOjpnZXRBc0xvb3BOb2RlKToKKysgICAgICAgIChUSW50ZXJtVHlwZWQ6OnRvdGFs
UmVnaXN0ZXJDb3VudCk6CisrICAgICAgICAoVEludGVybVR5cGVkOjplbGVtZW50UmVnaXN0ZXJD
b3VudCk6CisrICAgICAgICAoVEludGVybVR5cGVkOjpnZXRBcnJheVNpemUpOgorKyAgICAgICAg
KFRJbnRlcm1Db25zdGFudFVuaW9uOjpnZXRJQ29uc3QpOgorKyAgICAgICAgKFRJbnRlcm1Db25z
dGFudFVuaW9uOjpnZXRGQ29uc3QpOgorKyAgICAgICAgKFRJbnRlcm1Db25zdGFudFVuaW9uOjpn
ZXRCQ29uc3QpOgorKyAgICAgICAgKFRJbnRlcm1BZ2dyZWdhdGU6OlRJbnRlcm1BZ2dyZWdhdGUp
OgorKyAgICAgICAgKFRJbnRlcm1UcmF2ZXJzZXI6OlRJbnRlcm1UcmF2ZXJzZXIpOgorKyAgICAg
ICAgKFRJbnRlcm1UcmF2ZXJzZXI6OmdldE1heERlcHRoKToKKysgICAgICAgIChUSW50ZXJtVHJh
dmVyc2VyOjppbmNyZW1lbnREZXB0aCk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9sb2NhbGlu
dGVybWVkaWF0ZS5oOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvcGFyc2VDb25zdC5jcHA6Cisr
ICAgICAgICAoVENvbnN0VHJhdmVyc2VyOjp2aXNpdFN5bWJvbCk6CisrICAgICAgICAoVENvbnN0
VHJhdmVyc2VyOjp2aXNpdEJpbmFyeSk6CisrICAgICAgICAoVENvbnN0VHJhdmVyc2VyOjp2aXNp
dFVuYXJ5KToKKysgICAgICAgIChUQ29uc3RUcmF2ZXJzZXI6OnZpc2l0QWdncmVnYXRlKToKKysg
ICAgICAgIChUQ29uc3RUcmF2ZXJzZXI6OnZpc2l0U2VsZWN0aW9uKToKKysgICAgICAgIChUQ29u
c3RUcmF2ZXJzZXI6OnZpc2l0Q29uc3RhbnRVbmlvbik6CisrICAgICAgICAoVENvbnN0VHJhdmVy
c2VyOjp2aXNpdExvb3ApOgorKyAgICAgICAgKFRDb25zdFRyYXZlcnNlcjo6dmlzaXRCcmFuY2gp
OgorKyAgICAgICAgKFRJbnRlcm1lZGlhdGU6OnBhcnNlQ29uc3RUcmVlKToKKysgICAgICAgICog
c3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci82NGJpdC10b2tlbml6ZXItc2FmZXR5LnBhdGNoOiBB
ZGRlZC4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9Ub2tlbml6ZXIuY3Bw
OgorKyAgICAgICAgKHl5X2dldF9wcmV2aW91c19zdGF0ZSk6CisrICAgICAgICAoeXlfdHJ5X05V
TF90cmFucyk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvVG9rZW5pemVy
Lmw6CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvcHJlcHJvY2Vzc29yLnZj
eHByb2o6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL3ByZXBy
b2Nlc3Nvci52Y3hwcm9qLmZpbHRlcnM6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIv
dGltaW5nL1Jlc3RyaWN0VmVydGV4U2hhZGVyVGltaW5nLmNwcDoKKysgICAgICAgIChSZXN0cmlj
dFZlcnRleFNoYWRlclRpbWluZzo6dmlzaXRTeW1ib2wpOgorKyAgICAgICAgKiBzcmMvY29tcGls
ZXIvdHJhbnNsYXRvcl9jb21tb24udmN4cHJvajogQWRkZWQuCisrICAgICAgICAqIHNyYy9jb21w
aWxlci90cmFuc2xhdG9yX2NvbW1vbi52Y3hwcm9qLmZpbHRlcnM6IEFkZGVkLgorKyAgICAgICAg
KiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvcl9obHNsLnZjeHByb2o6IEFkZGVkLgorKyAgICAgICAg
KiBzcmMvY29tcGlsZXIvdHJhbnNsYXRvcl9obHNsLnZjeHByb2ouZmlsdGVyczogQWRkZWQuCisr
ICAgICAgICAqIHNyYy9saWJFR0wvQ29uZmlnLmNwcDogQWRkZWQuCisrICAgICAgICAoZWdsOjpD
b25maWc6OkNvbmZpZyk6CisrICAgICAgICAoZWdsOjpDb25maWc6OmdldEhhbmRsZSk6CisrICAg
ICAgICAoZWdsOjpTb3J0Q29uZmlnOjpTb3J0Q29uZmlnKToKKysgICAgICAgIChlZ2w6OlNvcnRD
b25maWc6OnNjYW5Gb3JXYW50ZWRDb21wb25lbnRzKToKKysgICAgICAgIChlZ2w6OlNvcnRDb25m
aWc6OndhbnRlZENvbXBvbmVudHNTaXplKToKKysgICAgICAgIChlZ2w6OlNvcnRDb25maWc6Om9w
ZXJhdG9yKCkpOgorKyAgICAgICAgKGVnbDo6Q29uZmlnU2V0OjpDb25maWdTZXQpOgorKyAgICAg
ICAgKGVnbDo6Q29uZmlnU2V0OjphZGQpOgorKyAgICAgICAgKGVnbDo6Q29uZmlnU2V0OjpzaXpl
KToKKysgICAgICAgIChlZ2w6OkNvbmZpZ1NldDo6Z2V0Q29uZmlncyk6CisrICAgICAgICAoZWds
OjpDb25maWdTZXQ6OmdldCk6CisrICAgICAgICAqIHNyYy9saWJFR0wvQ29uZmlnLmg6IEFkZGVk
LgorKyAgICAgICAgKiBzcmMvbGliRUdML0Rpc3BsYXkuY3BwOiBBZGRlZC4KKysgICAgICAgIChl
Z2w6OkRpc3BsYXk6OmdldERpc3BsYXkpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6RGlzcGxh
eSk6CisrICAgICAgICAoZWdsOjpEaXNwbGF5Ojp+RGlzcGxheSk6CisrICAgICAgICAoZWdsOjpE
aXNwbGF5Ojppbml0aWFsaXplKToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OnRlcm1pbmF0ZSk6
CisrICAgICAgICAoZWdsOjpEaXNwbGF5OjpnZXRDb25maWdzKToKKysgICAgICAgIChlZ2w6OkRp
c3BsYXk6OmdldENvbmZpZ0F0dHJpYik6CisrICAgICAgICAoZWdsOjpEaXNwbGF5OjpjcmVhdGVX
aW5kb3dTdXJmYWNlKToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OmNyZWF0ZU9mZnNjcmVlblN1
cmZhY2UpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6Y3JlYXRlQ29udGV4dCk6CisrICAgICAg
ICAoZWdsOjpEaXNwbGF5OjpyZXN0b3JlTG9zdERldmljZSk6CisrICAgICAgICAoZWdsOjpEaXNw
bGF5OjpkZXN0cm95U3VyZmFjZSk6CisrICAgICAgICAoZWdsOjpEaXNwbGF5OjpkZXN0cm95Q29u
dGV4dCk6CisrICAgICAgICAoZWdsOjpEaXNwbGF5Ojpub3RpZnlEZXZpY2VMb3N0KToKKysgICAg
ICAgIChlZ2w6OkRpc3BsYXk6OnJlY3JlYXRlU3dhcENoYWlucyk6CisrICAgICAgICAoZWdsOjpE
aXNwbGF5Ojppc0luaXRpYWxpemVkKToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OmlzVmFsaWRD
b25maWcpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6aXNWYWxpZENvbnRleHQpOgorKyAgICAg
ICAgKGVnbDo6RGlzcGxheTo6aXNWYWxpZFN1cmZhY2UpOgorKyAgICAgICAgKGVnbDo6RGlzcGxh
eTo6aGFzRXhpc3RpbmdXaW5kb3dTdXJmYWNlKToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6Omlu
aXRFeHRlbnNpb25TdHJpbmcpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6Z2V0RXh0ZW5zaW9u
U3RyaW5nKToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OmluaXRWZW5kb3JTdHJpbmcpOgorKyAg
ICAgICAgKGVnbDo6RGlzcGxheTo6Z2V0VmVuZG9yU3RyaW5nKToKKysgICAgICAgICogc3JjL2xp
YkVHTC9EaXNwbGF5Lmg6IEFkZGVkLgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6Z2V0UmVuZGVy
ZXIpOgorKyAgICAgICAgKiBzcmMvbGliRUdML1N1cmZhY2UuY3BwOiBBZGRlZC4KKysgICAgICAg
IChlZ2w6OlN1cmZhY2U6OlN1cmZhY2UpOgorKyAgICAgICAgKGVnbDo6U3VyZmFjZTo6flN1cmZh
Y2UpOgorKyAgICAgICAgKGVnbDo6U3VyZmFjZTo6aW5pdGlhbGl6ZSk6CisrICAgICAgICAoZWds
OjpTdXJmYWNlOjpyZWxlYXNlKToKKysgICAgICAgIChlZ2w6OlN1cmZhY2U6OnJlc2V0U3dhcENo
YWluKToKKysgICAgICAgIChlZ2w6OlN1cmZhY2U6OnJlc2l6ZVN3YXBDaGFpbik6CisrICAgICAg
ICAoZWdsOjpTdXJmYWNlOjpzd2FwUmVjdCk6CisrICAgICAgICAoZWdsOjpTdXJmYWNlOjpnZXRX
aW5kb3dIYW5kbGUpOgorKyAgICAgICAgKGVnbDo6U3VyZmFjZVdpbmRvd1Byb2MpOgorKyAgICAg
ICAgKGVnbDo6U3VyZmFjZTo6c3ViY2xhc3NXaW5kb3cpOgorKyAgICAgICAgKGVnbDo6U3VyZmFj
ZTo6dW5zdWJjbGFzc1dpbmRvdyk6CisrICAgICAgICAoZWdsOjpTdXJmYWNlOjpjaGVja0Zvck91
dE9mRGF0ZVN3YXBDaGFpbik6CisrICAgICAgICAoZWdsOjpTdXJmYWNlOjpzd2FwKToKKysgICAg
ICAgIChlZ2w6OlN1cmZhY2U6OnBvc3RTdWJCdWZmZXIpOgorKyAgICAgICAgKGVnbDo6U3VyZmFj
ZTo6Z2V0V2lkdGgpOgorKyAgICAgICAgKGVnbDo6U3VyZmFjZTo6Z2V0SGVpZ2h0KToKKysgICAg
ICAgIChlZ2w6OlN1cmZhY2U6OmlzUG9zdFN1YkJ1ZmZlclN1cHBvcnRlZCk6CisrICAgICAgICAo
ZWdsOjpTdXJmYWNlOjpnZXRTd2FwQ2hhaW4pOgorKyAgICAgICAgKGVnbDo6U3VyZmFjZTo6c2V0
U3dhcEludGVydmFsKToKKysgICAgICAgIChlZ2w6OlN1cmZhY2U6OmdldFRleHR1cmVGb3JtYXQp
OgorKyAgICAgICAgKGVnbDo6U3VyZmFjZTo6Z2V0VGV4dHVyZVRhcmdldCk6CisrICAgICAgICAo
ZWdsOjpTdXJmYWNlOjpzZXRCb3VuZFRleHR1cmUpOgorKyAgICAgICAgKGVnbDo6U3VyZmFjZTo6
Z2V0Qm91bmRUZXh0dXJlKToKKysgICAgICAgIChlZ2w6OlN1cmZhY2U6OmdldEZvcm1hdCk6Cisr
ICAgICAgICAqIHNyYy9saWJFR0wvU3VyZmFjZS5oOiBBZGRlZC4KKysgICAgICAgICogc3JjL2xp
YkVHTC9saWJFR0wuY3BwOiBBZGRlZC4KKysgICAgICAgICh2YWxpZGF0ZURpc3BsYXkpOgorKyAg
ICAgICAgKHZhbGlkYXRlQ29uZmlnKToKKysgICAgICAgICh2YWxpZGF0ZUNvbnRleHQpOgorKyAg
ICAgICAgKHZhbGlkYXRlU3VyZmFjZSk6CisrICAgICAgICAqIHNyYy9saWJFR0wvbGliRUdMLmRl
ZjogQWRkZWQuCisrICAgICAgICAqIHNyYy9saWJFR0wvbGliRUdMLnJjOiBBZGRlZC4KKysgICAg
ICAgICogc3JjL2xpYkVHTC9saWJFR0wudmN4cHJvajogQWRkZWQuCisrICAgICAgICAqIHNyYy9s
aWJFR0wvbGliRUdMLnZjeHByb2ouZmlsdGVyczogQWRkZWQuCisrICAgICAgICAqIHNyYy9saWJF
R0wvbWFpbi5jcHA6IEFkZGVkLgorKyAgICAgICAgKERsbE1haW4pOgorKyAgICAgICAgKGVnbDo6
c2V0Q3VycmVudEVycm9yKToKKysgICAgICAgIChlZ2w6OmdldEN1cnJlbnRFcnJvcik6CisrICAg
ICAgICAoZWdsOjpzZXRDdXJyZW50QVBJKToKKysgICAgICAgIChlZ2w6OmdldEN1cnJlbnRBUEkp
OgorKyAgICAgICAgKGVnbDo6c2V0Q3VycmVudERpc3BsYXkpOgorKyAgICAgICAgKGVnbDo6Z2V0
Q3VycmVudERpc3BsYXkpOgorKyAgICAgICAgKGVnbDo6c2V0Q3VycmVudERyYXdTdXJmYWNlKToK
KysgICAgICAgIChlZ2w6OmdldEN1cnJlbnREcmF3U3VyZmFjZSk6CisrICAgICAgICAoZWdsOjpz
ZXRDdXJyZW50UmVhZFN1cmZhY2UpOgorKyAgICAgICAgKGVnbDo6Z2V0Q3VycmVudFJlYWRTdXJm
YWNlKToKKysgICAgICAgIChlZ2w6OmVycm9yKToKKysgICAgICAgICogc3JjL2xpYkVHTC9tYWlu
Lmg6IEFkZGVkLgorKyAgICAgICAgKGVnbDo6ZXJyb3IpOgorKyAgICAgICAgKGVnbDo6c3VjY2Vz
cyk6CisrICAgICAgICAqIHNyYy9saWJFR0wvcmVzb3VyY2UuaDogQWRkZWQuCisrICAgICAgICAq
IHNyYy9saWJHTEVTdjIvQmluYXJ5U3RyZWFtLmg6IEFkZGVkLgorKyAgICAgICAgKGdsOjpCaW5h
cnlJbnB1dFN0cmVhbTo6QmluYXJ5SW5wdXRTdHJlYW0pOgorKyAgICAgICAgKGdsOjpCaW5hcnlJ
bnB1dFN0cmVhbTo6cmVhZCk6CisrICAgICAgICAoZ2w6OkJpbmFyeUlucHV0U3RyZWFtOjpza2lw
KToKKysgICAgICAgIChnbDo6QmluYXJ5SW5wdXRTdHJlYW06Om9mZnNldCk6CisrICAgICAgICAo
Z2w6OkJpbmFyeUlucHV0U3RyZWFtOjplcnJvcik6CisrICAgICAgICAoZ2w6OkJpbmFyeUlucHV0
U3RyZWFtOjplbmRPZlN0cmVhbSk6CisrICAgICAgICAoZ2w6OkJpbmFyeU91dHB1dFN0cmVhbTo6
QmluYXJ5T3V0cHV0U3RyZWFtKToKKysgICAgICAgIChnbDo6QmluYXJ5T3V0cHV0U3RyZWFtOjp3
cml0ZSk6CisrICAgICAgICAoZ2w6OkJpbmFyeU91dHB1dFN0cmVhbTo6bGVuZ3RoKToKKysgICAg
ICAgIChnbDo6QmluYXJ5T3V0cHV0U3RyZWFtOjpkYXRhKToKKysgICAgICAgICogc3JjL2xpYkdM
RVN2Mi9CdWZmZXIuY3BwOiBBZGRlZC4KKysgICAgICAgIChnbDo6QnVmZmVyOjpCdWZmZXIpOgor
KyAgICAgICAgKGdsOjpCdWZmZXI6On5CdWZmZXIpOgorKyAgICAgICAgKGdsOjpCdWZmZXI6OmJ1
ZmZlckRhdGEpOgorKyAgICAgICAgKGdsOjpCdWZmZXI6OmJ1ZmZlclN1YkRhdGEpOgorKyAgICAg
ICAgKGdsOjpCdWZmZXI6OmdldFN0b3JhZ2UpOgorKyAgICAgICAgKGdsOjpCdWZmZXI6OnNpemUp
OgorKyAgICAgICAgKGdsOjpCdWZmZXI6OnVzYWdlKToKKysgICAgICAgIChnbDo6QnVmZmVyOjpn
ZXRTdGF0aWNWZXJ0ZXhCdWZmZXIpOgorKyAgICAgICAgKGdsOjpCdWZmZXI6OmdldFN0YXRpY0lu
ZGV4QnVmZmVyKToKKysgICAgICAgIChnbDo6QnVmZmVyOjppbnZhbGlkYXRlU3RhdGljRGF0YSk6
CisrICAgICAgICAoZ2w6OkJ1ZmZlcjo6cHJvbW90ZVN0YXRpY1VzYWdlKToKKysgICAgICAgICog
c3JjL2xpYkdMRVN2Mi9CdWZmZXIuaDogQWRkZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIv
Q29udGV4dC5jcHA6IEFkZGVkLgorKyAgICAgICAgKGdsOjptYWtlU3RhdGljU3RyaW5nKToKKysg
ICAgICAgIChnbDo6Q29udGV4dDo6Q29udGV4dCk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6On5D
b250ZXh0KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6bWFrZUN1cnJlbnQpOgorKyAgICAgICAg
KGdsOjpDb250ZXh0OjptYXJrQ29udGV4dExvc3QpOgorKyAgICAgICAgKGdsOjpDb250ZXh0Ojpp
c0NvbnRleHRMb3N0KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c2V0Q2xlYXJDb2xvcik6Cisr
ICAgICAgICAoZ2w6OkNvbnRleHQ6OnNldENsZWFyRGVwdGgpOgorKyAgICAgICAgKGdsOjpDb250
ZXh0OjpzZXRDbGVhclN0ZW5jaWwpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzZXRDdWxsRmFj
ZSk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmlzQ3VsbEZhY2VFbmFibGVkKToKKysgICAgICAg
IChnbDo6Q29udGV4dDo6c2V0Q3VsbE1vZGUpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzZXRG
cm9udEZhY2UpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzZXREZXB0aFRlc3QpOgorKyAgICAg
ICAgKGdsOjpDb250ZXh0Ojppc0RlcHRoVGVzdEVuYWJsZWQpOgorKyAgICAgICAgKGdsOjpDb250
ZXh0OjpzZXREZXB0aEZ1bmMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzZXREZXB0aFJhbmdl
KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c2V0QmxlbmQpOgorKyAgICAgICAgKGdsOjpDb250
ZXh0Ojppc0JsZW5kRW5hYmxlZCk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnNldEJsZW5kRmFj
dG9ycyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnNldEJsZW5kQ29sb3IpOgorKyAgICAgICAg
KGdsOjpDb250ZXh0OjpzZXRCbGVuZEVxdWF0aW9uKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6
c2V0U3RlbmNpbFRlc3QpOgorKyAgICAgICAgKGdsOjpDb250ZXh0Ojppc1N0ZW5jaWxUZXN0RW5h
YmxlZCk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnNldFN0ZW5jaWxQYXJhbXMpOgorKyAgICAg
ICAgKGdsOjpDb250ZXh0OjpzZXRTdGVuY2lsQmFja1BhcmFtcyk6CisrICAgICAgICAoZ2w6OkNv
bnRleHQ6OnNldFN0ZW5jaWxXcml0ZW1hc2spOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzZXRT
dGVuY2lsQmFja1dyaXRlbWFzayk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnNldFN0ZW5jaWxP
cGVyYXRpb25zKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c2V0U3RlbmNpbEJhY2tPcGVyYXRp
b25zKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c2V0UG9seWdvbk9mZnNldEZpbGwpOgorKyAg
ICAgICAgKGdsOjpDb250ZXh0Ojppc1BvbHlnb25PZmZzZXRGaWxsRW5hYmxlZCk6CisrICAgICAg
ICAoZ2w6OkNvbnRleHQ6OnNldFBvbHlnb25PZmZzZXRQYXJhbXMpOgorKyAgICAgICAgKGdsOjpD
b250ZXh0OjpzZXRTYW1wbGVBbHBoYVRvQ292ZXJhZ2UpOgorKyAgICAgICAgKGdsOjpDb250ZXh0
Ojppc1NhbXBsZUFscGhhVG9Db3ZlcmFnZUVuYWJsZWQpOgorKyAgICAgICAgKGdsOjpDb250ZXh0
OjpzZXRTYW1wbGVDb3ZlcmFnZSk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmlzU2FtcGxlQ292
ZXJhZ2VFbmFibGVkKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c2V0U2FtcGxlQ292ZXJhZ2VQ
YXJhbXMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzZXRTY2lzc29yVGVzdCk6CisrICAgICAg
ICAoZ2w6OkNvbnRleHQ6OmlzU2Npc3NvclRlc3RFbmFibGVkKToKKysgICAgICAgIChnbDo6Q29u
dGV4dDo6c2V0RGl0aGVyKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6aXNEaXRoZXJFbmFibGVk
KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c2V0TGluZVdpZHRoKToKKysgICAgICAgIChnbDo6
Q29udGV4dDo6c2V0R2VuZXJhdGVNaXBtYXBIaW50KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6
c2V0RnJhZ21lbnRTaGFkZXJEZXJpdmF0aXZlSGludCk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6
OnNldFZpZXdwb3J0UGFyYW1zKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c2V0U2Npc3NvclBh
cmFtcyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnNldENvbG9yTWFzayk6CisrICAgICAgICAo
Z2w6OkNvbnRleHQ6OnNldERlcHRoTWFzayk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnNldEFj
dGl2ZVNhbXBsZXIpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRSZWFkRnJhbWVidWZmZXJI
YW5kbGUpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXREcmF3RnJhbWVidWZmZXJIYW5kbGUp
OgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRSZW5kZXJidWZmZXJIYW5kbGUpOgorKyAgICAg
ICAgKGdsOjpDb250ZXh0OjpnZXRBcnJheUJ1ZmZlckhhbmRsZSk6CisrICAgICAgICAoZ2w6OkNv
bnRleHQ6OmdldEFjdGl2ZVF1ZXJ5KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c2V0RW5hYmxl
VmVydGV4QXR0cmliQXJyYXkpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRWZXJ0ZXhBdHRy
aWJTdGF0ZSk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnNldFZlcnRleEF0dHJpYlN0YXRlKToK
KysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0VmVydGV4QXR0cmliUG9pbnRlcik6CisrICAgICAg
ICAoZ2w6OkNvbnRleHQ6OnNldFBhY2tBbGlnbm1lbnQpOgorKyAgICAgICAgKGdsOjpDb250ZXh0
OjpnZXRQYWNrQWxpZ25tZW50KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c2V0VW5wYWNrQWxp
Z25tZW50KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0VW5wYWNrQWxpZ25tZW50KToKKysg
ICAgICAgIChnbDo6Q29udGV4dDo6c2V0UGFja1JldmVyc2VSb3dPcmRlcik6CisrICAgICAgICAo
Z2w6OkNvbnRleHQ6OmdldFBhY2tSZXZlcnNlUm93T3JkZXIpOgorKyAgICAgICAgKGdsOjpDb250
ZXh0OjpjcmVhdGVCdWZmZXIpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpjcmVhdGVQcm9ncmFt
KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Y3JlYXRlU2hhZGVyKToKKysgICAgICAgIChnbDo6
Q29udGV4dDo6Y3JlYXRlVGV4dHVyZSk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmNyZWF0ZVJl
bmRlcmJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmNyZWF0ZUZyYW1lYnVmZmVyKToK
KysgICAgICAgIChnbDo6Q29udGV4dDo6Y3JlYXRlRmVuY2UpOgorKyAgICAgICAgKGdsOjpDb250
ZXh0OjpjcmVhdGVRdWVyeSk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmRlbGV0ZUJ1ZmZlcik6
CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmRlbGV0ZVNoYWRlcik6CisrICAgICAgICAoZ2w6OkNv
bnRleHQ6OmRlbGV0ZVByb2dyYW0pOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpkZWxldGVUZXh0
dXJlKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6ZGVsZXRlUmVuZGVyYnVmZmVyKToKKysgICAg
ICAgIChnbDo6Q29udGV4dDo6ZGVsZXRlRnJhbWVidWZmZXIpOgorKyAgICAgICAgKGdsOjpDb250
ZXh0OjpkZWxldGVGZW5jZSk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmRlbGV0ZVF1ZXJ5KToK
KysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0QnVmZmVyKToKKysgICAgICAgIChnbDo6Q29udGV4
dDo6Z2V0U2hhZGVyKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0UHJvZ3JhbSk6CisrICAg
ICAgICAoZ2w6OkNvbnRleHQ6OmdldFRleHR1cmUpOgorKyAgICAgICAgKGdsOjpDb250ZXh0Ojpn
ZXRSZW5kZXJidWZmZXIpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRSZWFkRnJhbWVidWZm
ZXIpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXREcmF3RnJhbWVidWZmZXIpOgorKyAgICAg
ICAgKGdsOjpDb250ZXh0OjpiaW5kQXJyYXlCdWZmZXIpOgorKyAgICAgICAgKGdsOjpDb250ZXh0
OjpiaW5kRWxlbWVudEFycmF5QnVmZmVyKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6YmluZFRl
eHR1cmUyRCk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmJpbmRUZXh0dXJlQ3ViZU1hcCk6Cisr
ICAgICAgICAoZ2w6OkNvbnRleHQ6OmJpbmRSZWFkRnJhbWVidWZmZXIpOgorKyAgICAgICAgKGds
OjpDb250ZXh0OjpiaW5kRHJhd0ZyYW1lYnVmZmVyKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6
YmluZFJlbmRlcmJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnVzZVByb2dyYW0pOgor
KyAgICAgICAgKGdsOjpDb250ZXh0OjpsaW5rUHJvZ3JhbSk6CisrICAgICAgICAoZ2w6OkNvbnRl
eHQ6OnNldFByb2dyYW1CaW5hcnkpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpiZWdpblF1ZXJ5
KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6ZW5kUXVlcnkpOgorKyAgICAgICAgKGdsOjpDb250
ZXh0OjpzZXRGcmFtZWJ1ZmZlclplcm8pOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzZXRSZW5k
ZXJidWZmZXJTdG9yYWdlKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0RnJhbWVidWZmZXIp
OgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRGZW5jZSk6CisrICAgICAgICAoZ2w6OkNvbnRl
eHQ6OmdldFF1ZXJ5KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0QXJyYXlCdWZmZXIpOgor
KyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRFbGVtZW50QXJyYXlCdWZmZXIpOgorKyAgICAgICAg
KGdsOjpDb250ZXh0OjpnZXRDdXJyZW50UHJvZ3JhbUJpbmFyeSk6CisrICAgICAgICAoZ2w6OkNv
bnRleHQ6OmdldFRleHR1cmUyRCk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmdldFRleHR1cmVD
dWJlTWFwKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0U2FtcGxlclRleHR1cmUpOgorKyAg
ICAgICAgKGdsOjpDb250ZXh0OjpnZXRCb29sZWFudik6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6
OmdldEZsb2F0dik6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmdldEludGVnZXJ2KToKKysgICAg
ICAgIChnbDo6Q29udGV4dDo6Z2V0UXVlcnlQYXJhbWV0ZXJJbmZvKToKKysgICAgICAgIChnbDo6
Q29udGV4dDo6YXBwbHlSZW5kZXJUYXJnZXQpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjphcHBs
eVN0YXRlKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6YXBwbHlTaGFkZXJzKToKKysgICAgICAg
IChnbDo6Q29udGV4dDo6YXBwbHlUZXh0dXJlcyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnJl
YWRQaXhlbHMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpjbGVhcik6CisrICAgICAgICAoZ2w6
OkNvbnRleHQ6OmRyYXdBcnJheXMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpkcmF3RWxlbWVu
dHMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzeW5jKToKKysgICAgICAgIChnbDo6Q29udGV4
dDo6cmVjb3JkSW52YWxpZEVudW0pOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpyZWNvcmRJbnZh
bGlkVmFsdWUpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpyZWNvcmRJbnZhbGlkT3BlcmF0aW9u
KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6cmVjb3JkT3V0T2ZNZW1vcnkpOgorKyAgICAgICAg
KGdsOjpDb250ZXh0OjpyZWNvcmRJbnZhbGlkRnJhbWVidWZmZXJPcGVyYXRpb24pOgorKyAgICAg
ICAgKGdsOjpDb250ZXh0OjpnZXRFcnJvcik6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmdldFJl
c2V0U3RhdHVzKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6aXNSZXNldE5vdGlmaWNhdGlvbkVu
YWJsZWQpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRNYWpvclNoYWRlck1vZGVsKToKKysg
ICAgICAgIChnbDo6Q29udGV4dDo6Z2V0TWF4aW11bVBvaW50U2l6ZSk6CisrICAgICAgICAoZ2w6
OkNvbnRleHQ6OmdldE1heGltdW1Db21iaW5lZFRleHR1cmVJbWFnZVVuaXRzKToKKysgICAgICAg
IChnbDo6Q29udGV4dDo6Z2V0TWF4U3VwcG9ydGVkU2FtcGxlcyk6CisrICAgICAgICAoZ2w6OkNv
bnRleHQ6OmdldE1heGltdW1SZW5kZXJUYXJnZXRzKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6
c3VwcG9ydHNFdmVudFF1ZXJpZXMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzdXBwb3J0c09j
Y2x1c2lvblF1ZXJpZXMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzdXBwb3J0c0JHUkFUZXh0
dXJlcyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnN1cHBvcnRzRFhUMVRleHR1cmVzKToKKysg
ICAgICAgIChnbDo6Q29udGV4dDo6c3VwcG9ydHNEWFQzVGV4dHVyZXMpOgorKyAgICAgICAgKGds
OjpDb250ZXh0OjpzdXBwb3J0c0RYVDVUZXh0dXJlcyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6
OnN1cHBvcnRzRmxvYXQzMlRleHR1cmVzKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c3VwcG9y
dHNGbG9hdDMyTGluZWFyRmlsdGVyKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c3VwcG9ydHNG
bG9hdDMyUmVuZGVyYWJsZVRleHR1cmVzKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c3VwcG9y
dHNGbG9hdDE2VGV4dHVyZXMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzdXBwb3J0c0Zsb2F0
MTZMaW5lYXJGaWx0ZXIpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzdXBwb3J0c0Zsb2F0MTZS
ZW5kZXJhYmxlVGV4dHVyZXMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRNYXhpbXVtUmVu
ZGVyYnVmZmVyRGltZW5zaW9uKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0TWF4aW11bVRl
eHR1cmVEaW1lbnNpb24pOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRNYXhpbXVtQ3ViZVRl
eHR1cmVEaW1lbnNpb24pOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRNYXhpbXVtVGV4dHVy
ZUxldmVsKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c3VwcG9ydHNMdW1pbmFuY2VUZXh0dXJl
cyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnN1cHBvcnRzTHVtaW5hbmNlQWxwaGFUZXh0dXJl
cyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnN1cHBvcnRzRGVwdGhUZXh0dXJlcyk6CisrICAg
ICAgICAoZ2w6OkNvbnRleHQ6OnN1cHBvcnRzMzJiaXRJbmRpY2VzKToKKysgICAgICAgIChnbDo6
Q29udGV4dDo6c3VwcG9ydHNOb25Qb3dlcjJUZXh0dXJlKToKKysgICAgICAgIChnbDo6Q29udGV4
dDo6c3VwcG9ydHNJbnN0YW5jaW5nKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c3VwcG9ydHNU
ZXh0dXJlRmlsdGVyQW5pc290cm9weSk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmdldFRleHR1
cmVNYXhBbmlzb3Ryb3B5KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0Q3VycmVudFJlYWRG
b3JtYXRUeXBlKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6ZGV0YWNoQnVmZmVyKToKKysgICAg
ICAgIChnbDo6Q29udGV4dDo6ZGV0YWNoVGV4dHVyZSk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6
OmRldGFjaEZyYW1lYnVmZmVyKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6ZGV0YWNoUmVuZGVy
YnVmZmVyKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0SW5jb21wbGV0ZVRleHR1cmUpOgor
KyAgICAgICAgKGdsOjpDb250ZXh0Ojpza2lwRHJhdyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6
OnNldFZlcnRleEF0dHJpYik6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnNldFZlcnRleEF0dHJp
YkRpdmlzb3IpOgorKyAgICAgICAgKGdsOjpDb250ZXh0Ojppbml0RXh0ZW5zaW9uU3RyaW5nKToK
KysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0RXh0ZW5zaW9uU3RyaW5nKToKKysgICAgICAgIChn
bDo6Q29udGV4dDo6aW5pdFJlbmRlcmVyU3RyaW5nKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6
Z2V0UmVuZGVyZXJTdHJpbmcpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpibGl0RnJhbWVidWZm
ZXIpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL0NvbnRleHQuaDogQWRkZWQuCisrICAgICAg
ICAoZ2w6OlZlcnRleEF0dHJpYnV0ZTo6VmVydGV4QXR0cmlidXRlKToKKysgICAgICAgIChnbDo6
VmVydGV4QXR0cmlidXRlOjp0eXBlU2l6ZSk6CisrICAgICAgICAoZ2w6OlZlcnRleEF0dHJpYnV0
ZTo6c3RyaWRlKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9GZW5jZS5jcHA6IEFkZGVkLgor
KyAgICAgICAgKGdsOjpGZW5jZTo6RmVuY2UpOgorKyAgICAgICAgKGdsOjpGZW5jZTo6fkZlbmNl
KToKKysgICAgICAgIChnbDo6RmVuY2U6OmlzRmVuY2UpOgorKyAgICAgICAgKGdsOjpGZW5jZTo6
c2V0RmVuY2UpOgorKyAgICAgICAgKGdsOjpGZW5jZTo6dGVzdEZlbmNlKToKKysgICAgICAgIChn
bDo6RmVuY2U6OmZpbmlzaEZlbmNlKToKKysgICAgICAgIChnbDo6RmVuY2U6OmdldEZlbmNlaXYp
OgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL0ZlbmNlLmg6IEFkZGVkLgorKyAgICAgICAgKiBz
cmMvbGliR0xFU3YyL0Zsb2F0MTZUb0Zsb2F0MzIuY3BwOiBBZGRlZC4KKysgICAgICAgIChnbDo6
ZmxvYXQxNlRvRmxvYXQzMik6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvRmxvYXQxNlRvRmxv
YXQzMi5weTogQWRkZWQuCisrICAgICAgICAoY29udmVydE1hbnRpc3NhKToKKysgICAgICAgIChj
b252ZXJ0RXhwb25lbnQpOgorKyAgICAgICAgKGNvbnZlcnRPZmZzZXQpOgorKyAgICAgICAgKiBz
cmMvbGliR0xFU3YyL0ZyYW1lYnVmZmVyLmNwcDogQWRkZWQuCisrICAgICAgICAoZ2w6OkZyYW1l
YnVmZmVyOjpGcmFtZWJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkZyYW1lYnVmZmVyOjp+RnJhbWVi
dWZmZXIpOgorKyAgICAgICAgKGdsOjpGcmFtZWJ1ZmZlcjo6bG9va3VwUmVuZGVyYnVmZmVyKToK
KysgICAgICAgIChnbDo6RnJhbWVidWZmZXI6OnNldENvbG9yYnVmZmVyKToKKysgICAgICAgIChn
bDo6RnJhbWVidWZmZXI6OnNldERlcHRoYnVmZmVyKToKKysgICAgICAgIChnbDo6RnJhbWVidWZm
ZXI6OnNldFN0ZW5jaWxidWZmZXIpOgorKyAgICAgICAgKGdsOjpGcmFtZWJ1ZmZlcjo6ZGV0YWNo
VGV4dHVyZSk6CisrICAgICAgICAoZ2w6OkZyYW1lYnVmZmVyOjpkZXRhY2hSZW5kZXJidWZmZXIp
OgorKyAgICAgICAgKGdsOjpGcmFtZWJ1ZmZlcjo6Z2V0UmVuZGVyVGFyZ2V0U2VyaWFsKToKKysg
ICAgICAgIChnbDo6RnJhbWVidWZmZXI6OmdldERlcHRoYnVmZmVyU2VyaWFsKToKKysgICAgICAg
IChnbDo6RnJhbWVidWZmZXI6OmdldFN0ZW5jaWxidWZmZXJTZXJpYWwpOgorKyAgICAgICAgKGds
OjpGcmFtZWJ1ZmZlcjo6Z2V0Q29sb3JidWZmZXIpOgorKyAgICAgICAgKGdsOjpGcmFtZWJ1ZmZl
cjo6Z2V0RGVwdGhidWZmZXIpOgorKyAgICAgICAgKGdsOjpGcmFtZWJ1ZmZlcjo6Z2V0U3RlbmNp
bGJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkZyYW1lYnVmZmVyOjpnZXREZXB0aE9yU3RlbmNpbGJ1
ZmZlcik6CisrICAgICAgICAoZ2w6OkZyYW1lYnVmZmVyOjpnZXRSZWFkQ29sb3JidWZmZXIpOgor
KyAgICAgICAgKGdsOjpGcmFtZWJ1ZmZlcjo6Z2V0UmVhZENvbG9yYnVmZmVyVHlwZSk6CisrICAg
ICAgICAoZ2w6OkZyYW1lYnVmZmVyOjpnZXRGaXJzdENvbG9yYnVmZmVyKToKKysgICAgICAgIChn
bDo6RnJhbWVidWZmZXI6OmdldENvbG9yYnVmZmVyVHlwZSk6CisrICAgICAgICAoZ2w6OkZyYW1l
YnVmZmVyOjpnZXREZXB0aGJ1ZmZlclR5cGUpOgorKyAgICAgICAgKGdsOjpGcmFtZWJ1ZmZlcjo6
Z2V0U3RlbmNpbGJ1ZmZlclR5cGUpOgorKyAgICAgICAgKGdsOjpGcmFtZWJ1ZmZlcjo6Z2V0Q29s
b3JidWZmZXJIYW5kbGUpOgorKyAgICAgICAgKGdsOjpGcmFtZWJ1ZmZlcjo6Z2V0RGVwdGhidWZm
ZXJIYW5kbGUpOgorKyAgICAgICAgKGdsOjpGcmFtZWJ1ZmZlcjo6Z2V0U3RlbmNpbGJ1ZmZlckhh
bmRsZSk6CisrICAgICAgICAoZ2w6OkZyYW1lYnVmZmVyOjpnZXREcmF3QnVmZmVyU3RhdGUpOgor
KyAgICAgICAgKGdsOjpGcmFtZWJ1ZmZlcjo6c2V0RHJhd0J1ZmZlclN0YXRlKToKKysgICAgICAg
IChnbDo6RnJhbWVidWZmZXI6OmlzRW5hYmxlZENvbG9yQXR0YWNobWVudCk6CisrICAgICAgICAo
Z2w6OkZyYW1lYnVmZmVyOjpoYXNFbmFibGVkQ29sb3JBdHRhY2htZW50KToKKysgICAgICAgIChn
bDo6RnJhbWVidWZmZXI6Omhhc1N0ZW5jaWwpOgorKyAgICAgICAgKGdsOjpGcmFtZWJ1ZmZlcjo6
dXNpbmdFeHRlbmRlZERyYXdCdWZmZXJzKToKKysgICAgICAgIChnbDo6RnJhbWVidWZmZXI6OmNv
bXBsZXRlbmVzcyk6CisrICAgICAgICAoZ2w6OkRlZmF1bHRGcmFtZWJ1ZmZlcjo6RGVmYXVsdEZy
YW1lYnVmZmVyKToKKysgICAgICAgIChnbDo6RnJhbWVidWZmZXI6OmdldFNhbXBsZXMpOgorKyAg
ICAgICAgKGdsOjpEZWZhdWx0RnJhbWVidWZmZXI6OmNvbXBsZXRlbmVzcyk6CisrICAgICAgICAq
IHNyYy9saWJHTEVTdjIvRnJhbWVidWZmZXIuaDogQWRkZWQuCisrICAgICAgICAqIHNyYy9saWJH
TEVTdjIvSGFuZGxlQWxsb2NhdG9yLmNwcDogQWRkZWQuCisrICAgICAgICAoZ2w6OkhhbmRsZUFs
bG9jYXRvcjo6SGFuZGxlQWxsb2NhdG9yKToKKysgICAgICAgIChnbDo6SGFuZGxlQWxsb2NhdG9y
Ojp+SGFuZGxlQWxsb2NhdG9yKToKKysgICAgICAgIChnbDo6SGFuZGxlQWxsb2NhdG9yOjpzZXRC
YXNlSGFuZGxlKToKKysgICAgICAgIChnbDo6SGFuZGxlQWxsb2NhdG9yOjphbGxvY2F0ZSk6Cisr
ICAgICAgICAoZ2w6OkhhbmRsZUFsbG9jYXRvcjo6cmVsZWFzZSk6CisrICAgICAgICAqIHNyYy9s
aWJHTEVTdjIvSGFuZGxlQWxsb2NhdG9yLmg6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGliR0xF
U3YyL1Byb2dyYW0uY3BwOiBBZGRlZC4KKysgICAgICAgIChnbDo6QXR0cmlidXRlQmluZGluZ3M6
OkF0dHJpYnV0ZUJpbmRpbmdzKToKKysgICAgICAgIChnbDo6QXR0cmlidXRlQmluZGluZ3M6On5B
dHRyaWJ1dGVCaW5kaW5ncyk6CisrICAgICAgICAoZ2w6OkluZm9Mb2c6OkluZm9Mb2cpOgorKyAg
ICAgICAgKGdsOjpJbmZvTG9nOjp+SW5mb0xvZyk6CisrICAgICAgICAoZ2w6OkluZm9Mb2c6Omdl
dExlbmd0aCk6CisrICAgICAgICAoZ2w6OkluZm9Mb2c6OmdldExvZyk6CisrICAgICAgICAoZ2w6
OkluZm9Mb2c6OmFwcGVuZFNhbml0aXplZCk6CisrICAgICAgICAoZ2w6OkluZm9Mb2c6OmFwcGVu
ZCk6CisrICAgICAgICAoZ2w6OkluZm9Mb2c6OnJlc2V0KToKKysgICAgICAgIChnbDo6UHJvZ3Jh
bTo6UHJvZ3JhbSk6CisrICAgICAgICAoZ2w6OlByb2dyYW06On5Qcm9ncmFtKToKKysgICAgICAg
IChnbDo6UHJvZ3JhbTo6YXR0YWNoU2hhZGVyKToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6ZGV0
YWNoU2hhZGVyKToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6Z2V0QXR0YWNoZWRTaGFkZXJzQ291
bnQpOgorKyAgICAgICAgKGdsOjpBdHRyaWJ1dGVCaW5kaW5nczo6YmluZEF0dHJpYnV0ZUxvY2F0
aW9uKToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6YmluZEF0dHJpYnV0ZUxvY2F0aW9uKToKKysg
ICAgICAgIChnbDo6UHJvZ3JhbTo6bGluayk6CisrICAgICAgICAoZ2w6OkF0dHJpYnV0ZUJpbmRp
bmdzOjpnZXRBdHRyaWJ1dGVCaW5kaW5nKToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6dW5saW5r
KToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6aXNMaW5rZWQpOgorKyAgICAgICAgKGdsOjpQcm9n
cmFtOjpnZXRQcm9ncmFtQmluYXJ5KToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6c2V0UHJvZ3Jh
bUJpbmFyeSk6CisrICAgICAgICAoZ2w6OlByb2dyYW06OnJlbGVhc2UpOgorKyAgICAgICAgKGds
OjpQcm9ncmFtOjphZGRSZWYpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpnZXRSZWZDb3VudCk6
CisrICAgICAgICAoZ2w6OlByb2dyYW06OmdldFByb2dyYW1CaW5hcnlMZW5ndGgpOgorKyAgICAg
ICAgKGdsOjpQcm9ncmFtOjpnZXRJbmZvTG9nTGVuZ3RoKToKKysgICAgICAgIChnbDo6UHJvZ3Jh
bTo6Z2V0SW5mb0xvZyk6CisrICAgICAgICAoZ2w6OlByb2dyYW06OmdldEF0dGFjaGVkU2hhZGVy
cyk6CisrICAgICAgICAoZ2w6OlByb2dyYW06OmdldEFjdGl2ZUF0dHJpYnV0ZSk6CisrICAgICAg
ICAoZ2w6OlByb2dyYW06OmdldEFjdGl2ZUF0dHJpYnV0ZUNvdW50KToKKysgICAgICAgIChnbDo6
UHJvZ3JhbTo6Z2V0QWN0aXZlQXR0cmlidXRlTWF4TGVuZ3RoKToKKysgICAgICAgIChnbDo6UHJv
Z3JhbTo6Z2V0QWN0aXZlVW5pZm9ybSk6CisrICAgICAgICAoZ2w6OlByb2dyYW06OmdldEFjdGl2
ZVVuaWZvcm1Db3VudCk6CisrICAgICAgICAoZ2w6OlByb2dyYW06OmdldEFjdGl2ZVVuaWZvcm1N
YXhMZW5ndGgpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpmbGFnRm9yRGVsZXRpb24pOgorKyAg
ICAgICAgKGdsOjpQcm9ncmFtOjppc0ZsYWdnZWRGb3JEZWxldGlvbik6CisrICAgICAgICAoZ2w6
OlByb2dyYW06OnZhbGlkYXRlKToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6aXNWYWxpZGF0ZWQp
OgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1Byb2dyYW0uaDogQWRkZWQuCisrICAgICAgICAq
IHNyYy9saWJHTEVTdjIvUHJvZ3JhbUJpbmFyeS5jcHA6IEFkZGVkLgorKyAgICAgICAgKGdsOjpz
dHIpOgorKyAgICAgICAgKGdsOjpVbmlmb3JtTG9jYXRpb246OlVuaWZvcm1Mb2NhdGlvbik6Cisr
ICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OlByb2dyYW1CaW5hcnkpOgorKyAgICAgICAgKGds
OjpQcm9ncmFtQmluYXJ5Ojp+UHJvZ3JhbUJpbmFyeSk6CisrICAgICAgICAoZ2w6OlByb2dyYW1C
aW5hcnk6OmdldFNlcmlhbCk6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6Omlzc3VlU2Vy
aWFsKToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6Z2V0UGl4ZWxFeGVjdXRhYmxlKToK
KysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6Z2V0VmVydGV4RXhlY3V0YWJsZSk6CisrICAg
ICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OmdldEdlb21ldHJ5RXhlY3V0YWJsZSk6CisrICAgICAg
ICAoZ2w6OlByb2dyYW1CaW5hcnk6OmdldEF0dHJpYnV0ZUxvY2F0aW9uKToKKysgICAgICAgIChn
bDo6UHJvZ3JhbUJpbmFyeTo6Z2V0U2VtYW50aWNJbmRleCk6CisrICAgICAgICAoZ2w6OlByb2dy
YW1CaW5hcnk6OmdldFVzZWRTYW1wbGVyUmFuZ2UpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmlu
YXJ5Ojp1c2VzUG9pbnRTaXplKToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6dXNlc1Bv
aW50U3ByaXRlRW11bGF0aW9uKToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6dXNlc0dl
b21ldHJ5U2hhZGVyKToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6Z2V0U2FtcGxlck1h
cHBpbmcpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjpnZXRTYW1wbGVyVGV4dHVyZVR5
cGUpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjpnZXRVbmlmb3JtTG9jYXRpb24pOgor
KyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjpzZXRVbmlmb3JtMWZ2KToKKysgICAgICAgIChn
bDo6UHJvZ3JhbUJpbmFyeTo6c2V0VW5pZm9ybTJmdik6CisrICAgICAgICAoZ2w6OlByb2dyYW1C
aW5hcnk6OnNldFVuaWZvcm0zZnYpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjpzZXRV
bmlmb3JtNGZ2KToKKysgICAgICAgIChnbDo6dHJhbnNwb3NlTWF0cml4KToKKysgICAgICAgIChn
bDo6UHJvZ3JhbUJpbmFyeTo6c2V0VW5pZm9ybU1hdHJpeDJmdik6CisrICAgICAgICAoZ2w6OlBy
b2dyYW1CaW5hcnk6OnNldFVuaWZvcm1NYXRyaXgzZnYpOgorKyAgICAgICAgKGdsOjpQcm9ncmFt
QmluYXJ5OjpzZXRVbmlmb3JtTWF0cml4NGZ2KToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFy
eTo6c2V0VW5pZm9ybTFpdik6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OnNldFVuaWZv
cm0yaXYpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjpzZXRVbmlmb3JtM2l2KToKKysg
ICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6c2V0VW5pZm9ybTRpdik6CisrICAgICAgICAoZ2w6
OlByb2dyYW1CaW5hcnk6OmdldFVuaWZvcm1mdik6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5h
cnk6OmdldFVuaWZvcm1pdik6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OmRpcnR5QWxs
VW5pZm9ybXMpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjphcHBseVVuaWZvcm1zKToK
KysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6cGFja1ZhcnlpbmdzKToKKysgICAgICAgIChn
bDo6UHJvZ3JhbUJpbmFyeTo6bGlua1ZhcnlpbmdzKToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJp
bmFyeTo6bG9hZCk6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OnNhdmUpOgorKyAgICAg
ICAgKGdsOjpQcm9ncmFtQmluYXJ5OjpnZXRMZW5ndGgpOgorKyAgICAgICAgKGdsOjpQcm9ncmFt
QmluYXJ5OjpsaW5rKToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6bGlua0F0dHJpYnV0
ZXMpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjpsaW5rVW5pZm9ybXMpOgorKyAgICAg
ICAgKGdsOjpQcm9ncmFtQmluYXJ5OjpkZWZpbmVVbmlmb3JtKToKKysgICAgICAgIChnbDo6UHJv
Z3JhbUJpbmFyeTo6Z2VuZXJhdGVHZW9tZXRyeVNoYWRlckhMU0wpOgorKyAgICAgICAgKGdsOjpQ
cm9ncmFtQmluYXJ5OjpnZW5lcmF0ZVBvaW50U3ByaXRlSExTTCk6CisrICAgICAgICAoZ2w6OlBy
b2dyYW1CaW5hcnk6OmRlY29yYXRlQXR0cmlidXRlKToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJp
bmFyeTo6aXNWYWxpZGF0ZWQpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjpnZXRBY3Rp
dmVBdHRyaWJ1dGUpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjpnZXRBY3RpdmVBdHRy
aWJ1dGVDb3VudCk6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OmdldEFjdGl2ZUF0dHJp
YnV0ZU1heExlbmd0aCk6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OmdldEFjdGl2ZVVu
aWZvcm0pOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjpnZXRBY3RpdmVVbmlmb3JtQ291
bnQpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjpnZXRBY3RpdmVVbmlmb3JtTWF4TGVu
Z3RoKToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6dmFsaWRhdGUpOgorKyAgICAgICAg
KGdsOjpQcm9ncmFtQmluYXJ5Ojp2YWxpZGF0ZVNhbXBsZXJzKToKKysgICAgICAgIChnbDo6UHJv
Z3JhbUJpbmFyeTo6U2FtcGxlcjo6U2FtcGxlcik6CisrICAgICAgICAoZ2w6OkF0dHJpYnV0ZVNv
cnRlcjo6QXR0cmlidXRlU29ydGVyKToKKysgICAgICAgIChnbDo6QXR0cmlidXRlU29ydGVyOjpv
cGVyYXRvcigpKToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6c29ydEF0dHJpYnV0ZXNC
eUxheW91dCk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvUHJvZ3JhbUJpbmFyeS5oOiBBZGRl
ZC4KKysgICAgICAgIChnbDo6VW5pZm9ybUxvY2F0aW9uOjpVbmlmb3JtTG9jYXRpb24pOgorKyAg
ICAgICAgKiBzcmMvbGliR0xFU3YyL1F1ZXJ5LmNwcDogQWRkZWQuCisrICAgICAgICAoZ2w6OlF1
ZXJ5OjpRdWVyeSk6CisrICAgICAgICAoZ2w6OlF1ZXJ5Ojp+UXVlcnkpOgorKyAgICAgICAgKGds
OjpRdWVyeTo6YmVnaW4pOgorKyAgICAgICAgKGdsOjpRdWVyeTo6ZW5kKToKKysgICAgICAgIChn
bDo6UXVlcnk6OmdldFJlc3VsdCk6CisrICAgICAgICAoZ2w6OlF1ZXJ5Ojppc1Jlc3VsdEF2YWls
YWJsZSk6CisrICAgICAgICAoZ2w6OlF1ZXJ5OjpnZXRUeXBlKToKKysgICAgICAgICogc3JjL2xp
YkdMRVN2Mi9RdWVyeS5oOiBBZGRlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9SZW5kZXJi
dWZmZXIuY3BwOiBBZGRlZC4KKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVySW50ZXJmYWNlOjpS
ZW5kZXJidWZmZXJJbnRlcmZhY2UpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJJbnRlcmZh
Y2U6OmFkZFByb3h5UmVmKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVySW50ZXJmYWNlOjpy
ZWxlYXNlUHJveHkpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJJbnRlcmZhY2U6OmdldFJl
ZFNpemUpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJJbnRlcmZhY2U6OmdldEdyZWVuU2l6
ZSk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlckludGVyZmFjZTo6Z2V0Qmx1ZVNpemUpOgor
KyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJJbnRlcmZhY2U6OmdldEFscGhhU2l6ZSk6CisrICAg
ICAgICAoZ2w6OlJlbmRlcmJ1ZmZlckludGVyZmFjZTo6Z2V0RGVwdGhTaXplKToKKysgICAgICAg
IChnbDo6UmVuZGVyYnVmZmVySW50ZXJmYWNlOjpnZXRTdGVuY2lsU2l6ZSk6CisrICAgICAgICAo
Z2w6OlJlbmRlcmJ1ZmZlclRleHR1cmUyRDo6UmVuZGVyYnVmZmVyVGV4dHVyZTJEKToKKysgICAg
ICAgIChnbDo6UmVuZGVyYnVmZmVyVGV4dHVyZTJEOjp+UmVuZGVyYnVmZmVyVGV4dHVyZTJEKToK
KysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyVGV4dHVyZTJEOjphZGRQcm94eVJlZik6CisrICAg
ICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclRleHR1cmUyRDo6cmVsZWFzZVByb3h5KToKKysgICAgICAg
IChnbDo6UmVuZGVyYnVmZmVyVGV4dHVyZTJEOjpnZXRSZW5kZXJUYXJnZXQpOgorKyAgICAgICAg
KGdsOjpSZW5kZXJidWZmZXJUZXh0dXJlMkQ6OmdldERlcHRoU3RlbmNpbCk6CisrICAgICAgICAo
Z2w6OlJlbmRlcmJ1ZmZlclRleHR1cmUyRDo6Z2V0V2lkdGgpOgorKyAgICAgICAgKGdsOjpSZW5k
ZXJidWZmZXJUZXh0dXJlMkQ6OmdldEhlaWdodCk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZl
clRleHR1cmUyRDo6Z2V0SW50ZXJuYWxGb3JtYXQpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZm
ZXJUZXh0dXJlMkQ6OmdldEFjdHVhbEZvcm1hdCk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZl
clRleHR1cmUyRDo6Z2V0U2FtcGxlcyk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclRleHR1
cmUyRDo6Z2V0U2VyaWFsKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyVGV4dHVyZUN1YmVN
YXA6OlJlbmRlcmJ1ZmZlclRleHR1cmVDdWJlTWFwKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVm
ZmVyVGV4dHVyZUN1YmVNYXA6On5SZW5kZXJidWZmZXJUZXh0dXJlQ3ViZU1hcCk6CisrICAgICAg
ICAoZ2w6OlJlbmRlcmJ1ZmZlclRleHR1cmVDdWJlTWFwOjphZGRQcm94eVJlZik6CisrICAgICAg
ICAoZ2w6OlJlbmRlcmJ1ZmZlclRleHR1cmVDdWJlTWFwOjpyZWxlYXNlUHJveHkpOgorKyAgICAg
ICAgKGdsOjpSZW5kZXJidWZmZXJUZXh0dXJlQ3ViZU1hcDo6Z2V0UmVuZGVyVGFyZ2V0KToKKysg
ICAgICAgIChnbDo6UmVuZGVyYnVmZmVyVGV4dHVyZUN1YmVNYXA6OmdldERlcHRoU3RlbmNpbCk6
CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclRleHR1cmVDdWJlTWFwOjpnZXRXaWR0aCk6Cisr
ICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclRleHR1cmVDdWJlTWFwOjpnZXRIZWlnaHQpOgorKyAg
ICAgICAgKGdsOjpSZW5kZXJidWZmZXJUZXh0dXJlQ3ViZU1hcDo6Z2V0SW50ZXJuYWxGb3JtYXQp
OgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJUZXh0dXJlQ3ViZU1hcDo6Z2V0QWN0dWFsRm9y
bWF0KToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyVGV4dHVyZUN1YmVNYXA6OmdldFNhbXBs
ZXMpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJUZXh0dXJlQ3ViZU1hcDo6Z2V0U2VyaWFs
KToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyOjpSZW5kZXJidWZmZXIpOgorKyAgICAgICAg
KGdsOjpSZW5kZXJidWZmZXI6On5SZW5kZXJidWZmZXIpOgorKyAgICAgICAgKGdsOjpSZW5kZXJi
dWZmZXI6OmFkZFJlZik6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlcjo6cmVsZWFzZSk6Cisr
ICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlcjo6Z2V0UmVuZGVyVGFyZ2V0KToKKysgICAgICAgIChn
bDo6UmVuZGVyYnVmZmVyOjpnZXREZXB0aFN0ZW5jaWwpOgorKyAgICAgICAgKGdsOjpSZW5kZXJi
dWZmZXI6OmdldFdpZHRoKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyOjpnZXRIZWlnaHQp
OgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXI6OmdldEludGVybmFsRm9ybWF0KToKKysgICAg
ICAgIChnbDo6UmVuZGVyYnVmZmVyOjpnZXRBY3R1YWxGb3JtYXQpOgorKyAgICAgICAgKGdsOjpS
ZW5kZXJidWZmZXI6OmdldFJlZFNpemUpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXI6Omdl
dEdyZWVuU2l6ZSk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlcjo6Z2V0Qmx1ZVNpemUpOgor
KyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXI6OmdldEFscGhhU2l6ZSk6CisrICAgICAgICAoZ2w6
OlJlbmRlcmJ1ZmZlcjo6Z2V0RGVwdGhTaXplKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVy
OjpnZXRTdGVuY2lsU2l6ZSk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlcjo6Z2V0U2FtcGxl
cyk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlcjo6Z2V0U2VyaWFsKToKKysgICAgICAgIChn
bDo6UmVuZGVyYnVmZmVyOjpzZXRTdG9yYWdlKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVy
U3RvcmFnZTo6UmVuZGVyYnVmZmVyU3RvcmFnZSk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZl
clN0b3JhZ2U6On5SZW5kZXJidWZmZXJTdG9yYWdlKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVm
ZmVyU3RvcmFnZTo6Z2V0UmVuZGVyVGFyZ2V0KToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVy
U3RvcmFnZTo6Z2V0RGVwdGhTdGVuY2lsKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyU3Rv
cmFnZTo6Z2V0V2lkdGgpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJTdG9yYWdlOjpnZXRI
ZWlnaHQpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJTdG9yYWdlOjpnZXRJbnRlcm5hbEZv
cm1hdCk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclN0b3JhZ2U6OmdldEFjdHVhbEZvcm1h
dCk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclN0b3JhZ2U6OmdldFNhbXBsZXMpOgorKyAg
ICAgICAgKGdsOjpSZW5kZXJidWZmZXJTdG9yYWdlOjpnZXRTZXJpYWwpOgorKyAgICAgICAgKGds
OjpSZW5kZXJidWZmZXJTdG9yYWdlOjppc3N1ZVNlcmlhbCk6CisrICAgICAgICAoZ2w6OlJlbmRl
cmJ1ZmZlclN0b3JhZ2U6Omlzc3VlQ3ViZVNlcmlhbHMpOgorKyAgICAgICAgKGdsOjpDb2xvcmJ1
ZmZlcjo6Q29sb3JidWZmZXIpOgorKyAgICAgICAgKGdsOjpDb2xvcmJ1ZmZlcjo6fkNvbG9yYnVm
ZmVyKToKKysgICAgICAgIChnbDo6Q29sb3JidWZmZXI6OmdldFJlbmRlclRhcmdldCk6CisrICAg
ICAgICAoZ2w6OkRlcHRoU3RlbmNpbGJ1ZmZlcjo6RGVwdGhTdGVuY2lsYnVmZmVyKToKKysgICAg
ICAgIChnbDo6RGVwdGhTdGVuY2lsYnVmZmVyOjp+RGVwdGhTdGVuY2lsYnVmZmVyKToKKysgICAg
ICAgIChnbDo6RGVwdGhTdGVuY2lsYnVmZmVyOjpnZXREZXB0aFN0ZW5jaWwpOgorKyAgICAgICAg
KGdsOjpEZXB0aGJ1ZmZlcjo6RGVwdGhidWZmZXIpOgorKyAgICAgICAgKGdsOjpEZXB0aGJ1ZmZl
cjo6fkRlcHRoYnVmZmVyKToKKysgICAgICAgIChnbDo6U3RlbmNpbGJ1ZmZlcjo6U3RlbmNpbGJ1
ZmZlcik6CisrICAgICAgICAoZ2w6OlN0ZW5jaWxidWZmZXI6On5TdGVuY2lsYnVmZmVyKToKKysg
ICAgICAgICogc3JjL2xpYkdMRVN2Mi9SZW5kZXJidWZmZXIuaDogQWRkZWQuCisrICAgICAgICAo
Z2w6OlJlbmRlcmJ1ZmZlckludGVyZmFjZTo6flJlbmRlcmJ1ZmZlckludGVyZmFjZSk6CisrICAg
ICAgICAqIHNyYy9saWJHTEVTdjIvUmVzb3VyY2VNYW5hZ2VyLmNwcDogQWRkZWQuCisrICAgICAg
ICAoZ2w6OlJlc291cmNlTWFuYWdlcjo6UmVzb3VyY2VNYW5hZ2VyKToKKysgICAgICAgIChnbDo6
UmVzb3VyY2VNYW5hZ2VyOjp+UmVzb3VyY2VNYW5hZ2VyKToKKysgICAgICAgIChnbDo6UmVzb3Vy
Y2VNYW5hZ2VyOjphZGRSZWYpOgorKyAgICAgICAgKGdsOjpSZXNvdXJjZU1hbmFnZXI6OnJlbGVh
c2UpOgorKyAgICAgICAgKGdsOjpSZXNvdXJjZU1hbmFnZXI6OmNyZWF0ZUJ1ZmZlcik6CisrICAg
ICAgICAoZ2w6OlJlc291cmNlTWFuYWdlcjo6Y3JlYXRlU2hhZGVyKToKKysgICAgICAgIChnbDo6
UmVzb3VyY2VNYW5hZ2VyOjpjcmVhdGVQcm9ncmFtKToKKysgICAgICAgIChnbDo6UmVzb3VyY2VN
YW5hZ2VyOjpjcmVhdGVUZXh0dXJlKToKKysgICAgICAgIChnbDo6UmVzb3VyY2VNYW5hZ2VyOjpj
cmVhdGVSZW5kZXJidWZmZXIpOgorKyAgICAgICAgKGdsOjpSZXNvdXJjZU1hbmFnZXI6OmRlbGV0
ZUJ1ZmZlcik6CisrICAgICAgICAoZ2w6OlJlc291cmNlTWFuYWdlcjo6ZGVsZXRlU2hhZGVyKToK
KysgICAgICAgIChnbDo6UmVzb3VyY2VNYW5hZ2VyOjpkZWxldGVQcm9ncmFtKToKKysgICAgICAg
IChnbDo6UmVzb3VyY2VNYW5hZ2VyOjpkZWxldGVUZXh0dXJlKToKKysgICAgICAgIChnbDo6UmVz
b3VyY2VNYW5hZ2VyOjpkZWxldGVSZW5kZXJidWZmZXIpOgorKyAgICAgICAgKGdsOjpSZXNvdXJj
ZU1hbmFnZXI6OmdldEJ1ZmZlcik6CisrICAgICAgICAoZ2w6OlJlc291cmNlTWFuYWdlcjo6Z2V0
U2hhZGVyKToKKysgICAgICAgIChnbDo6UmVzb3VyY2VNYW5hZ2VyOjpnZXRUZXh0dXJlKToKKysg
ICAgICAgIChnbDo6UmVzb3VyY2VNYW5hZ2VyOjpnZXRQcm9ncmFtKToKKysgICAgICAgIChnbDo6
UmVzb3VyY2VNYW5hZ2VyOjpnZXRSZW5kZXJidWZmZXIpOgorKyAgICAgICAgKGdsOjpSZXNvdXJj
ZU1hbmFnZXI6OnNldFJlbmRlcmJ1ZmZlcik6CisrICAgICAgICAoZ2w6OlJlc291cmNlTWFuYWdl
cjo6Y2hlY2tCdWZmZXJBbGxvY2F0aW9uKToKKysgICAgICAgIChnbDo6UmVzb3VyY2VNYW5hZ2Vy
OjpjaGVja1RleHR1cmVBbGxvY2F0aW9uKToKKysgICAgICAgIChnbDo6UmVzb3VyY2VNYW5hZ2Vy
OjpjaGVja1JlbmRlcmJ1ZmZlckFsbG9jYXRpb24pOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3Yy
L1Jlc291cmNlTWFuYWdlci5oOiBBZGRlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9TaGFk
ZXIuY3BwOiBBZGRlZC4KKysgICAgICAgIChnbDo6U2hhZGVyOjpTaGFkZXIpOgorKyAgICAgICAg
KGdsOjpTaGFkZXI6On5TaGFkZXIpOgorKyAgICAgICAgKGdsOjpTaGFkZXI6OmdldEhhbmRsZSk6
CisrICAgICAgICAoZ2w6OlNoYWRlcjo6c2V0U291cmNlKToKKysgICAgICAgIChnbDo6U2hhZGVy
OjpnZXRJbmZvTG9nTGVuZ3RoKToKKysgICAgICAgIChnbDo6U2hhZGVyOjpnZXRJbmZvTG9nKToK
KysgICAgICAgIChnbDo6U2hhZGVyOjpnZXRTb3VyY2VMZW5ndGgpOgorKyAgICAgICAgKGdsOjpT
aGFkZXI6OmdldFRyYW5zbGF0ZWRTb3VyY2VMZW5ndGgpOgorKyAgICAgICAgKGdsOjpTaGFkZXI6
OmdldFNvdXJjZUltcGwpOgorKyAgICAgICAgKGdsOjpTaGFkZXI6OmdldFNvdXJjZSk6CisrICAg
ICAgICAoZ2w6OlNoYWRlcjo6Z2V0VHJhbnNsYXRlZFNvdXJjZSk6CisrICAgICAgICAoZ2w6OlNo
YWRlcjo6Z2V0VW5pZm9ybXMpOgorKyAgICAgICAgKGdsOjpTaGFkZXI6OmlzQ29tcGlsZWQpOgor
KyAgICAgICAgKGdsOjpTaGFkZXI6OmdldEhMU0wpOgorKyAgICAgICAgKGdsOjpTaGFkZXI6OmFk
ZFJlZik6CisrICAgICAgICAoZ2w6OlNoYWRlcjo6cmVsZWFzZSk6CisrICAgICAgICAoZ2w6OlNo
YWRlcjo6Z2V0UmVmQ291bnQpOgorKyAgICAgICAgKGdsOjpTaGFkZXI6OmlzRmxhZ2dlZEZvckRl
bGV0aW9uKToKKysgICAgICAgIChnbDo6U2hhZGVyOjpmbGFnRm9yRGVsZXRpb24pOgorKyAgICAg
ICAgKGdsOjpTaGFkZXI6OmluaXRpYWxpemVDb21waWxlcik6CisrICAgICAgICAoZ2w6OlNoYWRl
cjo6cmVsZWFzZUNvbXBpbGVyKToKKysgICAgICAgIChnbDo6U2hhZGVyOjpwYXJzZVZhcnlpbmdz
KToKKysgICAgICAgIChnbDo6U2hhZGVyOjpyZXNldFZhcnlpbmdzUmVnaXN0ZXJBc3NpZ25tZW50
KToKKysgICAgICAgIChnbDo6U2hhZGVyOjp1bmNvbXBpbGUpOgorKyAgICAgICAgKGdsOjpTaGFk
ZXI6OmNvbXBpbGVUb0hMU0wpOgorKyAgICAgICAgKGdsOjpTaGFkZXI6OnBhcnNlVHlwZSk6Cisr
ICAgICAgICAoZ2w6OlNoYWRlcjo6Y29tcGFyZVZhcnlpbmcpOgorKyAgICAgICAgKGdsOjpWZXJ0
ZXhTaGFkZXI6OlZlcnRleFNoYWRlcik6CisrICAgICAgICAoZ2w6OlZlcnRleFNoYWRlcjo6flZl
cnRleFNoYWRlcik6CisrICAgICAgICAoZ2w6OlZlcnRleFNoYWRlcjo6Z2V0VHlwZSk6CisrICAg
ICAgICAoZ2w6OlZlcnRleFNoYWRlcjo6dW5jb21waWxlKToKKysgICAgICAgIChnbDo6VmVydGV4
U2hhZGVyOjpjb21waWxlKToKKysgICAgICAgIChnbDo6VmVydGV4U2hhZGVyOjpnZXRTZW1hbnRp
Y0luZGV4KToKKysgICAgICAgIChnbDo6VmVydGV4U2hhZGVyOjpwYXJzZUF0dHJpYnV0ZXMpOgor
KyAgICAgICAgKGdsOjpGcmFnbWVudFNoYWRlcjo6RnJhZ21lbnRTaGFkZXIpOgorKyAgICAgICAg
KGdsOjpGcmFnbWVudFNoYWRlcjo6fkZyYWdtZW50U2hhZGVyKToKKysgICAgICAgIChnbDo6RnJh
Z21lbnRTaGFkZXI6OmdldFR5cGUpOgorKyAgICAgICAgKGdsOjpGcmFnbWVudFNoYWRlcjo6Y29t
cGlsZSk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvU2hhZGVyLmg6IEFkZGVkLgorKyAgICAg
ICAgKGdsOjpWYXJ5aW5nOjpWYXJ5aW5nKToKKysgICAgICAgIChnbDo6QXR0cmlidXRlOjpBdHRy
aWJ1dGUpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1RleHR1cmUuY3BwOiBBZGRlZC4KKysg
ICAgICAgIChnbDo6VGV4dHVyZTo6VGV4dHVyZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6On5U
ZXh0dXJlKToKKysgICAgICAgIChnbDo6VGV4dHVyZTo6c2V0TWluRmlsdGVyKToKKysgICAgICAg
IChnbDo6VGV4dHVyZTo6c2V0TWFnRmlsdGVyKToKKysgICAgICAgIChnbDo6VGV4dHVyZTo6c2V0
V3JhcFMpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpzZXRXcmFwVCk6CisrICAgICAgICAoZ2w6
OlRleHR1cmU6OnNldE1heEFuaXNvdHJvcHkpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpzZXRV
c2FnZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OmdldE1pbkZpbHRlcik6CisrICAgICAgICAo
Z2w6OlRleHR1cmU6OmdldE1hZ0ZpbHRlcik6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OmdldFdy
YXBTKToKKysgICAgICAgIChnbDo6VGV4dHVyZTo6Z2V0V3JhcFQpOgorKyAgICAgICAgKGdsOjpU
ZXh0dXJlOjpnZXRNYXhBbmlzb3Ryb3B5KToKKysgICAgICAgIChnbDo6VGV4dHVyZTo6Z2V0TG9k
T2Zmc2V0KToKKysgICAgICAgIChnbDo6VGV4dHVyZTo6Z2V0U2FtcGxlclN0YXRlKToKKysgICAg
ICAgIChnbDo6VGV4dHVyZTo6Z2V0VXNhZ2UpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjppc01p
cG1hcEZpbHRlcmVkKToKKysgICAgICAgIChnbDo6VGV4dHVyZTo6c2V0SW1hZ2UpOgorKyAgICAg
ICAgKGdsOjpUZXh0dXJlOjpzZXRDb21wcmVzc2VkSW1hZ2UpOgorKyAgICAgICAgKGdsOjpUZXh0
dXJlOjpzdWJJbWFnZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OnN1YkltYWdlQ29tcHJlc3Nl
ZCk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OmdldE5hdGl2ZVRleHR1cmUpOgorKyAgICAgICAg
KGdsOjpUZXh0dXJlOjpoYXNEaXJ0eUltYWdlcyk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OnJl
c2V0RGlydHkpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpnZXRUZXh0dXJlU2VyaWFsKToKKysg
ICAgICAgIChnbDo6VGV4dHVyZTo6Z2V0UmVuZGVyVGFyZ2V0U2VyaWFsKToKKysgICAgICAgIChn
bDo6VGV4dHVyZTo6aXNJbW11dGFibGUpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpjcmVhdGlv
bkxldmVscyk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6VGV4dHVyZTJEKToKKysgICAgICAg
IChnbDo6VGV4dHVyZTJEOjp+VGV4dHVyZTJEKToKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjph
ZGRQcm94eVJlZik6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6cmVsZWFzZVByb3h5KToKKysg
ICAgICAgIChnbDo6VGV4dHVyZTJEOjpnZXRUYXJnZXQpOgorKyAgICAgICAgKGdsOjpUZXh0dXJl
MkQ6OmdldFdpZHRoKToKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjpnZXRIZWlnaHQpOgorKyAg
ICAgICAgKGdsOjpUZXh0dXJlMkQ6OmdldEludGVybmFsRm9ybWF0KToKKysgICAgICAgIChnbDo6
VGV4dHVyZTJEOjpnZXRBY3R1YWxGb3JtYXQpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlMkQ6OnJl
ZGVmaW5lSW1hZ2UpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlMkQ6OnNldEltYWdlKToKKysgICAg
ICAgIChnbDo6VGV4dHVyZTJEOjpiaW5kVGV4SW1hZ2UpOgorKyAgICAgICAgKGdsOjpUZXh0dXJl
MkQ6OnJlbGVhc2VUZXhJbWFnZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6c2V0Q29tcHJl
c3NlZEltYWdlKToKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjpjb21taXRSZWN0KToKKysgICAg
ICAgIChnbDo6VGV4dHVyZTJEOjpzdWJJbWFnZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6
c3ViSW1hZ2VDb21wcmVzc2VkKToKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjpjb3B5SW1hZ2Up
OgorKyAgICAgICAgKGdsOjpUZXh0dXJlMkQ6OmNvcHlTdWJJbWFnZSk6CisrICAgICAgICAoZ2w6
OlRleHR1cmUyRDo6c3RvcmFnZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6aXNTYW1wbGVy
Q29tcGxldGUpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlMkQ6OmlzTWlwbWFwQ29tcGxldGUpOgor
KyAgICAgICAgKGdsOjpUZXh0dXJlMkQ6OmlzQ29tcHJlc3NlZCk6CisrICAgICAgICAoZ2w6OlRl
eHR1cmUyRDo6aXNEZXB0aCk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6Y3JlYXRlVGV4dHVy
ZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6dXBkYXRlVGV4dHVyZSk6CisrICAgICAgICAo
Z2w6OlRleHR1cmUyRDo6Y29udmVydFRvUmVuZGVyVGFyZ2V0KToKKysgICAgICAgIChnbDo6VGV4
dHVyZTJEOjpnZW5lcmF0ZU1pcG1hcHMpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlMkQ6OmdldFJl
bmRlcmJ1ZmZlcik6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6Z2V0UmVuZGVyVGFyZ2V0KToK
KysgICAgICAgIChnbDo6VGV4dHVyZTJEOjpnZXREZXB0aFN0ZW5jaWwpOgorKyAgICAgICAgKGds
OjpUZXh0dXJlMkQ6OmxldmVsQ291bnQpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlMkQ6OmdldFN0
b3JhZ2UpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6VGV4dHVyZUN1YmVNYXApOgor
KyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6flRleHR1cmVDdWJlTWFwKToKKysgICAgICAg
IChnbDo6VGV4dHVyZUN1YmVNYXA6OmFkZFByb3h5UmVmKToKKysgICAgICAgIChnbDo6VGV4dHVy
ZUN1YmVNYXA6OnJlbGVhc2VQcm94eSk6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpn
ZXRUYXJnZXQpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6Z2V0V2lkdGgpOgorKyAg
ICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6Z2V0SGVpZ2h0KToKKysgICAgICAgIChnbDo6VGV4
dHVyZUN1YmVNYXA6OmdldEludGVybmFsRm9ybWF0KToKKysgICAgICAgIChnbDo6VGV4dHVyZUN1
YmVNYXA6OmdldEFjdHVhbEZvcm1hdCk6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpz
ZXRJbWFnZVBvc1gpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6c2V0SW1hZ2VOZWdY
KToKKysgICAgICAgIChnbDo6VGV4dHVyZUN1YmVNYXA6OnNldEltYWdlUG9zWSk6CisrICAgICAg
ICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpzZXRJbWFnZU5lZ1kpOgorKyAgICAgICAgKGdsOjpUZXh0
dXJlQ3ViZU1hcDo6c2V0SW1hZ2VQb3NaKToKKysgICAgICAgIChnbDo6VGV4dHVyZUN1YmVNYXA6
OnNldEltYWdlTmVnWik6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpzZXRDb21wcmVz
c2VkSW1hZ2UpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6Y29tbWl0UmVjdCk6Cisr
ICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpzdWJJbWFnZSk6CisrICAgICAgICAoZ2w6OlRl
eHR1cmVDdWJlTWFwOjpzdWJJbWFnZUNvbXByZXNzZWQpOgorKyAgICAgICAgKGdsOjpUZXh0dXJl
Q3ViZU1hcDo6aXNTYW1wbGVyQ29tcGxldGUpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1h
cDo6aXNDdWJlQ29tcGxldGUpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6aXNNaXBt
YXBDdWJlQ29tcGxldGUpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6aXNDb21wcmVz
c2VkKToKKysgICAgICAgIChnbDo6VGV4dHVyZUN1YmVNYXA6OmNyZWF0ZVRleHR1cmUpOgorKyAg
ICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6dXBkYXRlVGV4dHVyZSk6CisrICAgICAgICAoZ2w6
OlRleHR1cmVDdWJlTWFwOjpjb252ZXJ0VG9SZW5kZXJUYXJnZXQpOgorKyAgICAgICAgKGdsOjpU
ZXh0dXJlQ3ViZU1hcDo6c2V0SW1hZ2UpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6
ZmFjZUluZGV4KToKKysgICAgICAgIChnbDo6VGV4dHVyZUN1YmVNYXA6OnJlZGVmaW5lSW1hZ2Up
OgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6Y29weUltYWdlKToKKysgICAgICAgIChn
bDo6VGV4dHVyZUN1YmVNYXA6OmNvcHlTdWJJbWFnZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmVD
dWJlTWFwOjpzdG9yYWdlKToKKysgICAgICAgIChnbDo6VGV4dHVyZUN1YmVNYXA6OmdlbmVyYXRl
TWlwbWFwcyk6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpnZXRSZW5kZXJidWZmZXIp
OgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6Z2V0UmVuZGVyVGFyZ2V0KToKKysgICAg
ICAgIChnbDo6VGV4dHVyZUN1YmVNYXA6OmxldmVsQ291bnQpOgorKyAgICAgICAgKGdsOjpUZXh0
dXJlQ3ViZU1hcDo6Z2V0U3RvcmFnZSk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvVGV4dHVy
ZS5oOiBBZGRlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9Vbmlmb3JtLmNwcDogQWRkZWQu
CisrICAgICAgICAoZ2w6OlVuaWZvcm06OlVuaWZvcm0pOgorKyAgICAgICAgKGdsOjpVbmlmb3Jt
Ojp+VW5pZm9ybSk6CisrICAgICAgICAoZ2w6OlVuaWZvcm06OmlzQXJyYXkpOgorKyAgICAgICAg
KGdsOjpVbmlmb3JtOjplbGVtZW50Q291bnQpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1Vu
aWZvcm0uaDogQWRkZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvYW5nbGV0eXBlcy5oOiBB
ZGRlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9jb25zdGFudHMuaDogQWRkZWQuCisrICAg
ICAgICAqIHNyYy9saWJHTEVTdjIvbGliR0xFU3YyLmNwcDogQWRkZWQuCisrICAgICAgICAodmFs
aWRJbWFnZVNpemUpOgorKyAgICAgICAgKGNoZWNrVGV4dHVyZUZvcm1hdFR5cGUpOgorKyAgICAg
ICAgKHZhbGlkYXRlU3ViSW1hZ2VQYXJhbXMyRCk6CisrICAgICAgICAodmFsaWRhdGVTdWJJbWFn
ZVBhcmFtc0N1YmUpOgorKyAgICAgICAgKHZhbGlkUmVhZEZvcm1hdFR5cGUpOgorKyAgICAgICAg
KiBzcmMvbGliR0xFU3YyL2xpYkdMRVN2Mi5kZWY6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGli
R0xFU3YyL2xpYkdMRVN2Mi5yYzogQWRkZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvbGli
R0xFU3YyLnZjeHByb2o6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL2xpYkdMRVN2
Mi52Y3hwcm9qLmZpbHRlcnM6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL21haW4u
Y3BwOiBBZGRlZC4KKysgICAgICAgIChEbGxNYWluKToKKysgICAgICAgIChnbDo6bWFrZUN1cnJl
bnQpOgorKyAgICAgICAgKGdsOjpnZXRDb250ZXh0KToKKysgICAgICAgIChnbDo6Z2V0Tm9uTG9z
dENvbnRleHQpOgorKyAgICAgICAgKGdsOjpnZXREaXNwbGF5KToKKysgICAgICAgIChnbDo6ZXJy
b3IpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL21haW4uaDogQWRkZWQuCisrICAgICAgICAo
Z2w6OmVycm9yKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9tYXRodXRpbC5oOiBBZGRlZC4K
KysgICAgICAgIChnbDo6VmVjdG9yNDo6VmVjdG9yNCk6CisrICAgICAgICAoZ2w6OmlzUG93Mik6
CisrICAgICAgICAoZ2w6OmxvZzIpOgorKyAgICAgICAgKGdsOjpjZWlsUG93Mik6CisrICAgICAg
ICAoZ2w6OmNsYW1wKToKKysgICAgICAgIChnbDo6Y2xhbXAwMSk6CisrICAgICAgICAoZ2w6OnVu
b3JtKToKKysgICAgICAgIChnbDo6c3VwcG9ydHNTU0UyKToKKysgICAgICAgIChnbDo6ZmxvYXQz
MlRvRmxvYXQxNik6CisrICAgICAgICAocng6OlJhbmdlOjpSYW5nZSk6CisrICAgICAgICAqIHNy
Yy9saWJHTEVTdjIvcHJlY29tcGlsZWQuY3BwOiBBZGRlZC4KKysgICAgICAgICogc3JjL2xpYkdM
RVN2Mi9wcmVjb21waWxlZC5oOiBBZGRlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5k
ZXJlcjogQWRkZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvQmxpdC5jcHA6
IEFkZGVkLgorKyAgICAgICAgKHJ4OjpCbGl0OjpCbGl0KToKKysgICAgICAgIChyeDo6QmxpdDo6
fkJsaXQpOgorKyAgICAgICAgKHJ4OjpCbGl0Ojppbml0R2VvbWV0cnkpOgorKyAgICAgICAgKHJ4
OjpCbGl0OjpzZXRTaGFkZXIpOgorKyAgICAgICAgKHJ4OjpCbGl0OjpzZXRWZXJ0ZXhTaGFkZXIp
OgorKyAgICAgICAgKHJ4OjpCbGl0OjpzZXRQaXhlbFNoYWRlcik6CisrICAgICAgICAocng6OkJs
aXQ6OmdldFN1cmZhY2VSZWN0KToKKysgICAgICAgIChyeDo6QmxpdDo6Ym94RmlsdGVyKToKKysg
ICAgICAgIChyeDo6QmxpdDo6Y29weSk6CisrICAgICAgICAocng6OkJsaXQ6OmZvcm1hdENvbnZl
cnQpOgorKyAgICAgICAgKHJ4OjpCbGl0OjpzZXRGb3JtYXRDb252ZXJ0U2hhZGVycyk6CisrICAg
ICAgICAocng6OkJsaXQ6OmNvcHlTdXJmYWNlVG9UZXh0dXJlKToKKysgICAgICAgIChyeDo6Qmxp
dDo6c2V0Vmlld3BvcnQpOgorKyAgICAgICAgKHJ4OjpCbGl0OjpzZXRDb21tb25CbGl0U3RhdGUp
OgorKyAgICAgICAgKHJ4OjpCbGl0OjpyZW5kZXIpOgorKyAgICAgICAgKHJ4OjpCbGl0OjpzYXZl
U3RhdGUpOgorKyAgICAgICAgKHJ4OjpCbGl0OjpyZXN0b3JlU3RhdGUpOgorKyAgICAgICAgKiBz
cmMvbGliR0xFU3YyL3JlbmRlcmVyL0JsaXQuaDogQWRkZWQuCisrICAgICAgICAqIHNyYy9saWJH
TEVTdjIvcmVuZGVyZXIvQnVmZmVyU3RvcmFnZS5jcHA6IEFkZGVkLgorKyAgICAgICAgKHJ4OjpC
dWZmZXJTdG9yYWdlOjpCdWZmZXJTdG9yYWdlKToKKysgICAgICAgIChyeDo6QnVmZmVyU3RvcmFn
ZTo6fkJ1ZmZlclN0b3JhZ2UpOgorKyAgICAgICAgKHJ4OjpCdWZmZXJTdG9yYWdlOjpnZXRTZXJp
YWwpOgorKyAgICAgICAgKHJ4OjpCdWZmZXJTdG9yYWdlOjp1cGRhdGVTZXJpYWwpOgorKyAgICAg
ICAgKHJ4OjpCdWZmZXJTdG9yYWdlOjptYXJrQnVmZmVyVXNhZ2UpOgorKyAgICAgICAgKiBzcmMv
bGliR0xFU3YyL3JlbmRlcmVyL0J1ZmZlclN0b3JhZ2UuaDogQWRkZWQuCisrICAgICAgICAqIHNy
Yy9saWJHTEVTdjIvcmVuZGVyZXIvQnVmZmVyU3RvcmFnZTExLmNwcDogQWRkZWQuCisrICAgICAg
ICAocng6OkJ1ZmZlclN0b3JhZ2UxMTo6QnVmZmVyU3RvcmFnZTExKToKKysgICAgICAgIChyeDo6
QnVmZmVyU3RvcmFnZTExOjp+QnVmZmVyU3RvcmFnZTExKToKKysgICAgICAgIChyeDo6QnVmZmVy
U3RvcmFnZTExOjptYWtlQnVmZmVyU3RvcmFnZTExKToKKysgICAgICAgIChyeDo6QnVmZmVyU3Rv
cmFnZTExOjpnZXREYXRhKToKKysgICAgICAgIChyeDo6QnVmZmVyU3RvcmFnZTExOjpzZXREYXRh
KToKKysgICAgICAgIChyeDo6QnVmZmVyU3RvcmFnZTExOjpjbGVhcik6CisrICAgICAgICAocng6
OkJ1ZmZlclN0b3JhZ2UxMTo6Z2V0U2l6ZSk6CisrICAgICAgICAocng6OkJ1ZmZlclN0b3JhZ2Ux
MTo6c3VwcG9ydHNEaXJlY3RCaW5kaW5nKToKKysgICAgICAgIChyeDo6QnVmZmVyU3RvcmFnZTEx
OjptYXJrQnVmZmVyVXNhZ2UpOgorKyAgICAgICAgKHJ4OjpCdWZmZXJTdG9yYWdlMTE6OmdldEJ1
ZmZlcik6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvQnVmZmVyU3RvcmFnZTEx
Lmg6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL0J1ZmZlclN0b3Jh
Z2U5LmNwcDogQWRkZWQuCisrICAgICAgICAocng6OkJ1ZmZlclN0b3JhZ2U5OjpCdWZmZXJTdG9y
YWdlOSk6CisrICAgICAgICAocng6OkJ1ZmZlclN0b3JhZ2U5Ojp+QnVmZmVyU3RvcmFnZTkpOgor
KyAgICAgICAgKHJ4OjpCdWZmZXJTdG9yYWdlOTo6bWFrZUJ1ZmZlclN0b3JhZ2U5KToKKysgICAg
ICAgIChyeDo6QnVmZmVyU3RvcmFnZTk6OmdldERhdGEpOgorKyAgICAgICAgKHJ4OjpCdWZmZXJT
dG9yYWdlOTo6c2V0RGF0YSk6CisrICAgICAgICAocng6OkJ1ZmZlclN0b3JhZ2U5OjpjbGVhcik6
CisrICAgICAgICAocng6OkJ1ZmZlclN0b3JhZ2U5OjpnZXRTaXplKToKKysgICAgICAgIChyeDo6
QnVmZmVyU3RvcmFnZTk6OnN1cHBvcnRzRGlyZWN0QmluZGluZyk6CisrICAgICAgICAqIHNyYy9s
aWJHTEVTdjIvcmVuZGVyZXIvQnVmZmVyU3RvcmFnZTkuaDogQWRkZWQuCisrICAgICAgICAqIHNy
Yy9saWJHTEVTdjIvcmVuZGVyZXIvRmVuY2UxMS5jcHA6IEFkZGVkLgorKyAgICAgICAgKHJ4OjpG
ZW5jZTExOjpGZW5jZTExKToKKysgICAgICAgIChyeDo6RmVuY2UxMTo6fkZlbmNlMTEpOgorKyAg
ICAgICAgKHJ4OjpGZW5jZTExOjppc0ZlbmNlKToKKysgICAgICAgIChyeDo6RmVuY2UxMTo6c2V0
RmVuY2UpOgorKyAgICAgICAgKHJ4OjpGZW5jZTExOjp0ZXN0RmVuY2UpOgorKyAgICAgICAgKHJ4
OjpGZW5jZTExOjpmaW5pc2hGZW5jZSk6CisrICAgICAgICAocng6OkZlbmNlMTE6OmdldEZlbmNl
aXYpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL0ZlbmNlMTEuaDogQWRkZWQu
CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvRmVuY2U5LmNwcDogQWRkZWQuCisr
ICAgICAgICAocng6OkZlbmNlOTo6RmVuY2U5KToKKysgICAgICAgIChyeDo6RmVuY2U5Ojp+RmVu
Y2U5KToKKysgICAgICAgIChyeDo6RmVuY2U5Ojppc0ZlbmNlKToKKysgICAgICAgIChyeDo6RmVu
Y2U5OjpzZXRGZW5jZSk6CisrICAgICAgICAocng6OkZlbmNlOTo6dGVzdEZlbmNlKToKKysgICAg
ICAgIChyeDo6RmVuY2U5OjpmaW5pc2hGZW5jZSk6CisrICAgICAgICAocng6OkZlbmNlOTo6Z2V0
RmVuY2Vpdik6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvRmVuY2U5Lmg6IEFk
ZGVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL0ZlbmNlSW1wbC5oOiBBZGRl
ZC4KKysgICAgICAgIChyeDo6RmVuY2VJbXBsOjpGZW5jZUltcGwpOgorKyAgICAgICAgKHJ4OjpG
ZW5jZUltcGw6On5GZW5jZUltcGwpOgorKyAgICAgICAgKHJ4OjpGZW5jZUltcGw6OnNldFN0YXR1
cyk6CisrICAgICAgICAocng6OkZlbmNlSW1wbDo6Z2V0U3RhdHVzKToKKysgICAgICAgIChyeDo6
RmVuY2VJbXBsOjpzZXRDb25kaXRpb24pOgorKyAgICAgICAgKHJ4OjpGZW5jZUltcGw6OmdldENv
bmRpdGlvbik6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvSW1hZ2UuY3BwOiBB
ZGRlZC4KKysgICAgICAgIChyeDo6SW1hZ2U6OkltYWdlKToKKysgICAgICAgIChyeDo6SW1hZ2U6
OmxvYWRBbHBoYURhdGFUb0JHUkEpOgorKyAgICAgICAgKHJ4OjpJbWFnZTo6bG9hZEFscGhhRGF0
YVRvTmF0aXZlKToKKysgICAgICAgIChyeDo6SW1hZ2U6OmxvYWRBbHBoYUZsb2F0RGF0YVRvUkdC
QSk6CisrICAgICAgICAocng6OkltYWdlOjpsb2FkQWxwaGFIYWxmRmxvYXREYXRhVG9SR0JBKToK
KysgICAgICAgIChyeDo6SW1hZ2U6OmxvYWRMdW1pbmFuY2VEYXRhVG9OYXRpdmVPckJHUkEpOgor
KyAgICAgICAgKHJ4OjpJbWFnZTo6bG9hZEx1bWluYW5jZUZsb2F0RGF0YVRvUkdCQSk6CisrICAg
ICAgICAocng6OkltYWdlOjpsb2FkTHVtaW5hbmNlRmxvYXREYXRhVG9SR0IpOgorKyAgICAgICAg
KHJ4OjpJbWFnZTo6bG9hZEx1bWluYW5jZUhhbGZGbG9hdERhdGFUb1JHQkEpOgorKyAgICAgICAg
KHJ4OjpJbWFnZTo6bG9hZEx1bWluYW5jZUFscGhhRGF0YVRvTmF0aXZlT3JCR1JBKToKKysgICAg
ICAgIChyeDo6SW1hZ2U6OmxvYWRMdW1pbmFuY2VBbHBoYUZsb2F0RGF0YVRvUkdCQSk6CisrICAg
ICAgICAocng6OkltYWdlOjpsb2FkTHVtaW5hbmNlQWxwaGFIYWxmRmxvYXREYXRhVG9SR0JBKToK
KysgICAgICAgIChyeDo6SW1hZ2U6OmxvYWRSR0JVQnl0ZURhdGFUb0JHUlgpOgorKyAgICAgICAg
KHJ4OjpJbWFnZTo6bG9hZFJHQlVCeXRlRGF0YVRvUkdCQSk6CisrICAgICAgICAocng6OkltYWdl
Ojpsb2FkUkdCNTY1RGF0YVRvQkdSQSk6CisrICAgICAgICAocng6OkltYWdlOjpsb2FkUkdCNTY1
RGF0YVRvUkdCQSk6CisrICAgICAgICAocng6OkltYWdlOjpsb2FkUkdCRmxvYXREYXRhVG9SR0JB
KToKKysgICAgICAgIChyeDo6SW1hZ2U6OmxvYWRSR0JGbG9hdERhdGFUb05hdGl2ZSk6CisrICAg
ICAgICAocng6OkltYWdlOjpsb2FkUkdCSGFsZkZsb2F0RGF0YVRvUkdCQSk6CisrICAgICAgICAo
cng6OkltYWdlOjpsb2FkUkdCQVVCeXRlRGF0YVRvQkdSQSk6CisrICAgICAgICAocng6OkltYWdl
Ojpsb2FkUkdCQVVCeXRlRGF0YVRvTmF0aXZlKToKKysgICAgICAgIChyeDo6SW1hZ2U6OmxvYWRS
R0JBNDQ0NERhdGFUb0JHUkEpOgorKyAgICAgICAgKHJ4OjpJbWFnZTo6bG9hZFJHQkE0NDQ0RGF0
YVRvUkdCQSk6CisrICAgICAgICAocng6OkltYWdlOjpsb2FkUkdCQTU1NTFEYXRhVG9CR1JBKToK
KysgICAgICAgIChyeDo6SW1hZ2U6OmxvYWRSR0JBNTU1MURhdGFUb1JHQkEpOgorKyAgICAgICAg
KHJ4OjpJbWFnZTo6bG9hZFJHQkFGbG9hdERhdGFUb1JHQkEpOgorKyAgICAgICAgKHJ4OjpJbWFn
ZTo6bG9hZFJHQkFIYWxmRmxvYXREYXRhVG9SR0JBKToKKysgICAgICAgIChyeDo6SW1hZ2U6Omxv
YWRCR1JBRGF0YVRvQkdSQSk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvSW1h
Z2UuaDogQWRkZWQuCisrICAgICAgICAocng6OkltYWdlOjp+SW1hZ2UpOgorKyAgICAgICAgKHJ4
OjpJbWFnZTo6Z2V0V2lkdGgpOgorKyAgICAgICAgKHJ4OjpJbWFnZTo6Z2V0SGVpZ2h0KToKKysg
ICAgICAgIChyeDo6SW1hZ2U6OmdldEludGVybmFsRm9ybWF0KToKKysgICAgICAgIChyeDo6SW1h
Z2U6OmdldEFjdHVhbEZvcm1hdCk6CisrICAgICAgICAocng6OkltYWdlOjptYXJrRGlydHkpOgor
KyAgICAgICAgKHJ4OjpJbWFnZTo6bWFya0NsZWFuKToKKysgICAgICAgIChyeDo6SW1hZ2U6OnNl
dE1hbmFnZWRTdXJmYWNlKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9JbWFn
ZTExLmNwcDogQWRkZWQuCisrICAgICAgICAocng6OkltYWdlMTE6OkltYWdlMTEpOgorKyAgICAg
ICAgKHJ4OjpJbWFnZTExOjp+SW1hZ2UxMSk6CisrICAgICAgICAocng6OkltYWdlMTE6Om1ha2VJ
bWFnZTExKToKKysgICAgICAgIChyeDo6SW1hZ2UxMTo6Z2VuZXJhdGVNaXBtYXApOgorKyAgICAg
ICAgKHJ4OjpJbWFnZTExOjppc0RpcnR5KToKKysgICAgICAgIChyeDo6SW1hZ2UxMTo6dXBkYXRl
U3VyZmFjZSk6CisrICAgICAgICAocng6OkltYWdlMTE6OnJlZGVmaW5lKToKKysgICAgICAgIChy
eDo6SW1hZ2UxMTo6aXNSZW5kZXJhYmxlRm9ybWF0KToKKysgICAgICAgIChyeDo6SW1hZ2UxMTo6
Z2V0RFhHSUZvcm1hdCk6CisrICAgICAgICAocng6OkltYWdlMTE6OmxvYWREYXRhKToKKysgICAg
ICAgIChyeDo6SW1hZ2UxMTo6bG9hZENvbXByZXNzZWREYXRhKToKKysgICAgICAgIChyeDo6SW1h
Z2UxMTo6Y29weSk6CisrICAgICAgICAocng6OkltYWdlMTE6OmdldFN0YWdpbmdUZXh0dXJlKToK
KysgICAgICAgIChyeDo6SW1hZ2UxMTo6Z2V0U3RhZ2luZ1N1YnJlc291cmNlKToKKysgICAgICAg
IChyeDo6SW1hZ2UxMTo6Y3JlYXRlU3RhZ2luZ1RleHR1cmUpOgorKyAgICAgICAgKHJ4OjpJbWFn
ZTExOjptYXApOgorKyAgICAgICAgKHJ4OjpJbWFnZTExOjp1bm1hcCk6CisrICAgICAgICAqIHNy
Yy9saWJHTEVTdjIvcmVuZGVyZXIvSW1hZ2UxMS5oOiBBZGRlZC4KKysgICAgICAgICogc3JjL2xp
YkdMRVN2Mi9yZW5kZXJlci9JbWFnZTkuY3BwOiBBZGRlZC4KKysgICAgICAgIChyeDo6SW1hZ2U5
OjpJbWFnZTkpOgorKyAgICAgICAgKHJ4OjpJbWFnZTk6On5JbWFnZTkpOgorKyAgICAgICAgKHJ4
OjpJbWFnZTk6OmdlbmVyYXRlTWlwKToKKysgICAgICAgIChyeDo6SW1hZ2U5OjptYWtlSW1hZ2U5
KToKKysgICAgICAgIChyeDo6SW1hZ2U5OjpnZW5lcmF0ZU1pcG1hcCk6CisrICAgICAgICAocng6
OkltYWdlOTo6Y29weUxvY2thYmxlU3VyZmFjZXMpOgorKyAgICAgICAgKHJ4OjpJbWFnZTk6OnJl
ZGVmaW5lKToKKysgICAgICAgIChyeDo6SW1hZ2U5OjpjcmVhdGVTdXJmYWNlKToKKysgICAgICAg
IChyeDo6SW1hZ2U5Ojpsb2NrKToKKysgICAgICAgIChyeDo6SW1hZ2U5Ojp1bmxvY2spOgorKyAg
ICAgICAgKHJ4OjpJbWFnZTk6OmlzUmVuZGVyYWJsZUZvcm1hdCk6CisrICAgICAgICAocng6Oklt
YWdlOTo6Z2V0RDNERm9ybWF0KToKKysgICAgICAgIChyeDo6SW1hZ2U5OjpnZXRTdXJmYWNlKToK
KysgICAgICAgIChyeDo6SW1hZ2U5OjpzZXRNYW5hZ2VkU3VyZmFjZSk6CisrICAgICAgICAocng6
OkltYWdlOTo6dXBkYXRlU3VyZmFjZSk6CisrICAgICAgICAocng6OkltYWdlOTo6bG9hZERhdGEp
OgorKyAgICAgICAgKHJ4OjpJbWFnZTk6OmxvYWRDb21wcmVzc2VkRGF0YSk6CisrICAgICAgICAo
cng6OkltYWdlOTo6Y29weSk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvSW1h
Z2U5Lmg6IEFkZGVkLgorKyAgICAgICAgKHJ4OjpJbWFnZTk6OmlzRGlydHkpOgorKyAgICAgICAg
KiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL0ltYWdlU1NFMi5jcHA6IEFkZGVkLgorKyAgICAgICAg
KHJ4OjpJbWFnZTo6bG9hZFJHQkFVQnl0ZURhdGFUb0JHUkFTU0UyKToKKysgICAgICAgIChyeDo6
SW1hZ2U6OmxvYWRBbHBoYURhdGFUb0JHUkFTU0UyKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2
Mi9yZW5kZXJlci9JbmRleEJ1ZmZlci5jcHA6IEFkZGVkLgorKyAgICAgICAgKHJ4OjpJbmRleEJ1
ZmZlcjo6SW5kZXhCdWZmZXIpOgorKyAgICAgICAgKHJ4OjpJbmRleEJ1ZmZlcjo6fkluZGV4QnVm
ZmVyKToKKysgICAgICAgIChyeDo6SW5kZXhCdWZmZXI6OmdldFNlcmlhbCk6CisrICAgICAgICAo
cng6OkluZGV4QnVmZmVyOjp1cGRhdGVTZXJpYWwpOgorKyAgICAgICAgKHJ4OjpJbmRleEJ1ZmZl
ckludGVyZmFjZTo6SW5kZXhCdWZmZXJJbnRlcmZhY2UpOgorKyAgICAgICAgKHJ4OjpJbmRleEJ1
ZmZlckludGVyZmFjZTo6fkluZGV4QnVmZmVySW50ZXJmYWNlKToKKysgICAgICAgIChyeDo6SW5k
ZXhCdWZmZXJJbnRlcmZhY2U6OmdldEluZGV4VHlwZSk6CisrICAgICAgICAocng6OkluZGV4QnVm
ZmVySW50ZXJmYWNlOjpnZXRCdWZmZXJTaXplKToKKysgICAgICAgIChyeDo6SW5kZXhCdWZmZXJJ
bnRlcmZhY2U6OmdldFNlcmlhbCk6CisrICAgICAgICAocng6OkluZGV4QnVmZmVySW50ZXJmYWNl
OjptYXBCdWZmZXIpOgorKyAgICAgICAgKHJ4OjpJbmRleEJ1ZmZlckludGVyZmFjZTo6dW5tYXBC
dWZmZXIpOgorKyAgICAgICAgKHJ4OjpJbmRleEJ1ZmZlckludGVyZmFjZTo6Z2V0SW5kZXhCdWZm
ZXIpOgorKyAgICAgICAgKHJ4OjpJbmRleEJ1ZmZlckludGVyZmFjZTo6Z2V0V3JpdGVQb3NpdGlv
bik6CisrICAgICAgICAocng6OkluZGV4QnVmZmVySW50ZXJmYWNlOjpzZXRXcml0ZVBvc2l0aW9u
KToKKysgICAgICAgIChyeDo6SW5kZXhCdWZmZXJJbnRlcmZhY2U6OmRpc2NhcmQpOgorKyAgICAg
ICAgKHJ4OjpJbmRleEJ1ZmZlckludGVyZmFjZTo6c2V0QnVmZmVyU2l6ZSk6CisrICAgICAgICAo
cng6OlN0cmVhbWluZ0luZGV4QnVmZmVySW50ZXJmYWNlOjpTdHJlYW1pbmdJbmRleEJ1ZmZlcklu
dGVyZmFjZSk6CisrICAgICAgICAocng6OlN0cmVhbWluZ0luZGV4QnVmZmVySW50ZXJmYWNlOjp+
U3RyZWFtaW5nSW5kZXhCdWZmZXJJbnRlcmZhY2UpOgorKyAgICAgICAgKHJ4OjpTdHJlYW1pbmdJ
bmRleEJ1ZmZlckludGVyZmFjZTo6cmVzZXJ2ZUJ1ZmZlclNwYWNlKToKKysgICAgICAgIChyeDo6
U3RhdGljSW5kZXhCdWZmZXJJbnRlcmZhY2U6OlN0YXRpY0luZGV4QnVmZmVySW50ZXJmYWNlKToK
KysgICAgICAgIChyeDo6U3RhdGljSW5kZXhCdWZmZXJJbnRlcmZhY2U6On5TdGF0aWNJbmRleEJ1
ZmZlckludGVyZmFjZSk6CisrICAgICAgICAocng6OlN0YXRpY0luZGV4QnVmZmVySW50ZXJmYWNl
OjpyZXNlcnZlQnVmZmVyU3BhY2UpOgorKyAgICAgICAgKHJ4OjpTdGF0aWNJbmRleEJ1ZmZlcklu
dGVyZmFjZTo6bG9va3VwUmFuZ2UpOgorKyAgICAgICAgKHJ4OjpTdGF0aWNJbmRleEJ1ZmZlcklu
dGVyZmFjZTo6YWRkUmFuZ2UpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL0lu
ZGV4QnVmZmVyLmg6IEFkZGVkLgorKyAgICAgICAgKHJ4OjpTdGF0aWNJbmRleEJ1ZmZlckludGVy
ZmFjZTo6SW5kZXhSYW5nZTo6b3BlcmF0b3I8KToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9y
ZW5kZXJlci9JbmRleEJ1ZmZlcjExLmNwcDogQWRkZWQuCisrICAgICAgICAocng6OkluZGV4QnVm
ZmVyMTE6OkluZGV4QnVmZmVyMTEpOgorKyAgICAgICAgKHJ4OjpJbmRleEJ1ZmZlcjExOjp+SW5k
ZXhCdWZmZXIxMSk6CisrICAgICAgICAocng6OkluZGV4QnVmZmVyMTE6OmluaXRpYWxpemUpOgor
KyAgICAgICAgKHJ4OjpJbmRleEJ1ZmZlcjExOjptYWtlSW5kZXhCdWZmZXIxMSk6CisrICAgICAg
ICAocng6OkluZGV4QnVmZmVyMTE6Om1hcEJ1ZmZlcik6CisrICAgICAgICAocng6OkluZGV4QnVm
ZmVyMTE6OnVubWFwQnVmZmVyKToKKysgICAgICAgIChyeDo6SW5kZXhCdWZmZXIxMTo6Z2V0SW5k
ZXhUeXBlKToKKysgICAgICAgIChyeDo6SW5kZXhCdWZmZXIxMTo6Z2V0QnVmZmVyU2l6ZSk6Cisr
ICAgICAgICAocng6OkluZGV4QnVmZmVyMTE6OnNldFNpemUpOgorKyAgICAgICAgKHJ4OjpJbmRl
eEJ1ZmZlcjExOjpkaXNjYXJkKToKKysgICAgICAgIChyeDo6SW5kZXhCdWZmZXIxMTo6Z2V0SW5k
ZXhGb3JtYXQpOgorKyAgICAgICAgKHJ4OjpJbmRleEJ1ZmZlcjExOjpnZXRCdWZmZXIpOgorKyAg
ICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL0luZGV4QnVmZmVyMTEuaDogQWRkZWQuCisr
ICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvSW5kZXhCdWZmZXI5LmNwcDogQWRkZWQu
CisrICAgICAgICAocng6OkluZGV4QnVmZmVyOTo6SW5kZXhCdWZmZXI5KToKKysgICAgICAgIChy
eDo6SW5kZXhCdWZmZXI5Ojp+SW5kZXhCdWZmZXI5KToKKysgICAgICAgIChyeDo6SW5kZXhCdWZm
ZXI5Ojppbml0aWFsaXplKToKKysgICAgICAgIChyeDo6SW5kZXhCdWZmZXI5OjptYWtlSW5kZXhC
dWZmZXI5KToKKysgICAgICAgIChyeDo6SW5kZXhCdWZmZXI5OjptYXBCdWZmZXIpOgorKyAgICAg
ICAgKHJ4OjpJbmRleEJ1ZmZlcjk6OnVubWFwQnVmZmVyKToKKysgICAgICAgIChyeDo6SW5kZXhC
dWZmZXI5OjpnZXRJbmRleFR5cGUpOgorKyAgICAgICAgKHJ4OjpJbmRleEJ1ZmZlcjk6OmdldEJ1
ZmZlclNpemUpOgorKyAgICAgICAgKHJ4OjpJbmRleEJ1ZmZlcjk6OnNldFNpemUpOgorKyAgICAg
ICAgKHJ4OjpJbmRleEJ1ZmZlcjk6OmRpc2NhcmQpOgorKyAgICAgICAgKHJ4OjpJbmRleEJ1ZmZl
cjk6OmdldEluZGV4Rm9ybWF0KToKKysgICAgICAgIChyeDo6SW5kZXhCdWZmZXI5OjpnZXRCdWZm
ZXIpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL0luZGV4QnVmZmVyOS5oOiBB
ZGRlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9JbmRleERhdGFNYW5hZ2Vy
LmNwcDogQWRkZWQuCisrICAgICAgICAocng6OkluZGV4RGF0YU1hbmFnZXI6OkluZGV4RGF0YU1h
bmFnZXIpOgorKyAgICAgICAgKHJ4OjpJbmRleERhdGFNYW5hZ2VyOjp+SW5kZXhEYXRhTWFuYWdl
cik6CisrICAgICAgICAocng6OmluZGV4VHlwZVNpemUpOgorKyAgICAgICAgKHJ4Ojpjb252ZXJ0
SW5kaWNlcyk6CisrICAgICAgICAocng6OmNvbXB1dGVSYW5nZSk6CisrICAgICAgICAocng6Oklu
ZGV4RGF0YU1hbmFnZXI6OnByZXBhcmVJbmRleERhdGEpOgorKyAgICAgICAgKHJ4OjpJbmRleERh
dGFNYW5hZ2VyOjpnZXRDb3VudGluZ0luZGljZXMpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3Yy
L3JlbmRlcmVyL0luZGV4RGF0YU1hbmFnZXIuaDogQWRkZWQuCisrICAgICAgICAqIHNyYy9saWJH
TEVTdjIvcmVuZGVyZXIvSW5wdXRMYXlvdXRDYWNoZS5jcHA6IEFkZGVkLgorKyAgICAgICAgKHJ4
OjpJbnB1dExheW91dENhY2hlOjpJbnB1dExheW91dENhY2hlKToKKysgICAgICAgIChyeDo6SW5w
dXRMYXlvdXRDYWNoZTo6fklucHV0TGF5b3V0Q2FjaGUpOgorKyAgICAgICAgKHJ4OjpJbnB1dExh
eW91dENhY2hlOjppbml0aWFsaXplKToKKysgICAgICAgIChyeDo6SW5wdXRMYXlvdXRDYWNoZTo6
Y2xlYXIpOgorKyAgICAgICAgKHJ4OjpJbnB1dExheW91dENhY2hlOjphcHBseVZlcnRleEJ1ZmZl
cnMpOgorKyAgICAgICAgKHJ4OjpJbnB1dExheW91dENhY2hlOjpoYXNoSW5wdXRMYXlvdXQpOgor
KyAgICAgICAgKHJ4OjpJbnB1dExheW91dENhY2hlOjpjb21wYXJlSW5wdXRMYXlvdXRzKToKKysg
ICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9JbnB1dExheW91dENhY2hlLmg6IEFkZGVk
LgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL1F1ZXJ5MTEuY3BwOiBBZGRlZC4K
KysgICAgICAgIChyeDo6UXVlcnkxMTo6UXVlcnkxMSk6CisrICAgICAgICAocng6OlF1ZXJ5MTE6
On5RdWVyeTExKToKKysgICAgICAgIChyeDo6UXVlcnkxMTo6YmVnaW4pOgorKyAgICAgICAgKHJ4
OjpRdWVyeTExOjplbmQpOgorKyAgICAgICAgKHJ4OjpRdWVyeTExOjpnZXRSZXN1bHQpOgorKyAg
ICAgICAgKHJ4OjpRdWVyeTExOjppc1Jlc3VsdEF2YWlsYWJsZSk6CisrICAgICAgICAocng6OlF1
ZXJ5MTE6OnRlc3RRdWVyeSk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvUXVl
cnkxMS5oOiBBZGRlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9RdWVyeTku
Y3BwOiBBZGRlZC4KKysgICAgICAgIChyeDo6UXVlcnk5OjpRdWVyeTkpOgorKyAgICAgICAgKHJ4
OjpRdWVyeTk6On5RdWVyeTkpOgorKyAgICAgICAgKHJ4OjpRdWVyeTk6OmJlZ2luKToKKysgICAg
ICAgIChyeDo6UXVlcnk5OjplbmQpOgorKyAgICAgICAgKHJ4OjpRdWVyeTk6OmdldFJlc3VsdCk6
CisrICAgICAgICAocng6OlF1ZXJ5OTo6aXNSZXN1bHRBdmFpbGFibGUpOgorKyAgICAgICAgKHJ4
OjpRdWVyeTk6OnRlc3RRdWVyeSk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIv
UXVlcnk5Lmg6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL1F1ZXJ5
SW1wbC5oOiBBZGRlZC4KKysgICAgICAgIChyeDo6UXVlcnlJbXBsOjpRdWVyeUltcGwpOgorKyAg
ICAgICAgKHJ4OjpRdWVyeUltcGw6On5RdWVyeUltcGwpOgorKyAgICAgICAgKHJ4OjpRdWVyeUlt
cGw6OmdldFR5cGUpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL1JlbmRlclN0
YXRlQ2FjaGUuY3BwOiBBZGRlZC4KKysgICAgICAgIChyeDo6UmVuZGVyU3RhdGVDYWNoZTo6UmVu
ZGVyU3RhdGVDYWNoZSk6CisrICAgICAgICAocng6OlJlbmRlclN0YXRlQ2FjaGU6On5SZW5kZXJT
dGF0ZUNhY2hlKToKKysgICAgICAgIChyeDo6UmVuZGVyU3RhdGVDYWNoZTo6aW5pdGlhbGl6ZSk6
CisrICAgICAgICAocng6OlJlbmRlclN0YXRlQ2FjaGU6OmNsZWFyKToKKysgICAgICAgIChyeDo6
UmVuZGVyU3RhdGVDYWNoZTo6aGFzaEJsZW5kU3RhdGUpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJT
dGF0ZUNhY2hlOjpjb21wYXJlQmxlbmRTdGF0ZXMpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJTdGF0
ZUNhY2hlOjpnZXRCbGVuZFN0YXRlKToKKysgICAgICAgIChyeDo6UmVuZGVyU3RhdGVDYWNoZTo6
aGFzaFJhc3Rlcml6ZXJTdGF0ZSk6CisrICAgICAgICAocng6OlJlbmRlclN0YXRlQ2FjaGU6OmNv
bXBhcmVSYXN0ZXJpemVyU3RhdGVzKToKKysgICAgICAgIChyeDo6UmVuZGVyU3RhdGVDYWNoZTo6
Z2V0UmFzdGVyaXplclN0YXRlKToKKysgICAgICAgIChyeDo6UmVuZGVyU3RhdGVDYWNoZTo6aGFz
aERlcHRoU3RlbmNpbFN0YXRlKToKKysgICAgICAgIChyeDo6UmVuZGVyU3RhdGVDYWNoZTo6Y29t
cGFyZURlcHRoU3RlbmNpbFN0YXRlcyk6CisrICAgICAgICAocng6OlJlbmRlclN0YXRlQ2FjaGU6
OmdldERlcHRoU3RlbmNpbFN0YXRlKToKKysgICAgICAgIChyeDo6UmVuZGVyU3RhdGVDYWNoZTo6
aGFzaFNhbXBsZXJTdGF0ZSk6CisrICAgICAgICAocng6OlJlbmRlclN0YXRlQ2FjaGU6OmNvbXBh
cmVTYW1wbGVyU3RhdGVzKToKKysgICAgICAgIChyeDo6UmVuZGVyU3RhdGVDYWNoZTo6Z2V0U2Ft
cGxlclN0YXRlKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9SZW5kZXJTdGF0
ZUNhY2hlLmg6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL1JlbmRl
clRhcmdldC5oOiBBZGRlZC4KKysgICAgICAgIChyeDo6UmVuZGVyVGFyZ2V0OjpSZW5kZXJUYXJn
ZXQpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJUYXJnZXQ6On5SZW5kZXJUYXJnZXQpOgorKyAgICAg
ICAgKHJ4OjpSZW5kZXJUYXJnZXQ6OmdldFdpZHRoKToKKysgICAgICAgIChyeDo6UmVuZGVyVGFy
Z2V0OjpnZXRIZWlnaHQpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJUYXJnZXQ6OmdldEludGVybmFs
Rm9ybWF0KToKKysgICAgICAgIChyeDo6UmVuZGVyVGFyZ2V0OjpnZXRBY3R1YWxGb3JtYXQpOgor
KyAgICAgICAgKHJ4OjpSZW5kZXJUYXJnZXQ6OmdldFNhbXBsZXMpOgorKyAgICAgICAgKiBzcmMv
bGliR0xFU3YyL3JlbmRlcmVyL1JlbmRlclRhcmdldDExLmNwcDogQWRkZWQuCisrICAgICAgICAo
cng6OmdldFJUVlN1YnJlc291cmNlSW5kZXgpOgorKyAgICAgICAgKHJ4OjpnZXREU1ZTdWJyZXNv
dXJjZUluZGV4KToKKysgICAgICAgIChyeDo6UmVuZGVyVGFyZ2V0MTE6OlJlbmRlclRhcmdldDEx
KToKKysgICAgICAgIChyeDo6UmVuZGVyVGFyZ2V0MTE6On5SZW5kZXJUYXJnZXQxMSk6CisrICAg
ICAgICAocng6OlJlbmRlclRhcmdldDExOjptYWtlUmVuZGVyVGFyZ2V0MTEpOgorKyAgICAgICAg
KHJ4OjpSZW5kZXJUYXJnZXQxMTo6Z2V0VGV4dHVyZSk6CisrICAgICAgICAocng6OlJlbmRlclRh
cmdldDExOjpnZXRSZW5kZXJUYXJnZXRWaWV3KToKKysgICAgICAgIChyeDo6UmVuZGVyVGFyZ2V0
MTE6OmdldERlcHRoU3RlbmNpbFZpZXcpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJUYXJnZXQxMTo6
Z2V0U2hhZGVyUmVzb3VyY2VWaWV3KToKKysgICAgICAgIChyeDo6UmVuZGVyVGFyZ2V0MTE6Omdl
dFN1YnJlc291cmNlSW5kZXgpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL1Jl
bmRlclRhcmdldDExLmg6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVy
L1JlbmRlclRhcmdldDkuY3BwOiBBZGRlZC4KKysgICAgICAgIChyeDo6UmVuZGVyVGFyZ2V0OTo6
UmVuZGVyVGFyZ2V0OSk6CisrICAgICAgICAocng6OlJlbmRlclRhcmdldDk6On5SZW5kZXJUYXJn
ZXQ5KToKKysgICAgICAgIChyeDo6UmVuZGVyVGFyZ2V0OTo6bWFrZVJlbmRlclRhcmdldDkpOgor
KyAgICAgICAgKHJ4OjpSZW5kZXJUYXJnZXQ5OjpnZXRTdXJmYWNlKToKKysgICAgICAgICogc3Jj
L2xpYkdMRVN2Mi9yZW5kZXJlci9SZW5kZXJUYXJnZXQ5Lmg6IEFkZGVkLgorKyAgICAgICAgKiBz
cmMvbGliR0xFU3YyL3JlbmRlcmVyL1JlbmRlcmVyLmNwcDogQWRkZWQuCisrICAgICAgICAocng6
OlJlbmRlcmVyOjpSZW5kZXJlcik6CisrICAgICAgICAocng6OlJlbmRlcmVyOjp+UmVuZGVyZXIp
OgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjo6aW5pdGlhbGl6ZUNvbXBpbGVyKToKKysgICAgICAg
IChyeDo6UmVuZGVyZXI6OmNvbXBpbGVUb0JpbmFyeSk6CisrICAgICAgICAqIHNyYy9saWJHTEVT
djIvcmVuZGVyZXIvUmVuZGVyZXIuaDogQWRkZWQuCisrICAgICAgICAoZ2V0Q29tcGFyYWJsZU9T
VmVyc2lvbik6CisrICAgICAgICAocng6OlJlbmRlcmVyOjpnZXRWZXJ0ZXhUZXh0dXJlU3VwcG9y
dCk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvUmVuZGVyZXIxMS5jcHA6IEFk
ZGVkLgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjExOjpSZW5kZXJlcjExKToKKysgICAgICAgIChy
eDo6UmVuZGVyZXIxMTo6flJlbmRlcmVyMTEpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjExOjpt
YWtlUmVuZGVyZXIxMSk6CisrICAgICAgICAocng6OlJlbmRlcmVyMTE6OmluaXRpYWxpemUpOgor
KyAgICAgICAgKHJ4OjpSZW5kZXJlcjExOjppbml0aWFsaXplRGV2aWNlKToKKysgICAgICAgIChy
eDo6UmVuZGVyZXIxMTo6Z2VuZXJhdGVDb25maWdzKToKKysgICAgICAgIChyeDo6UmVuZGVyZXIx
MTo6ZGVsZXRlQ29uZmlncyk6CisrICAgICAgICAocng6OlJlbmRlcmVyMTE6OnN5bmMpOgorKyAg
ICAgICAgKHJ4OjpSZW5kZXJlcjExOjpjcmVhdGVTd2FwQ2hhaW4pOgorKyAgICAgICAgKHJ4OjpS
ZW5kZXJlcjExOjpzZXRTYW1wbGVyU3RhdGUpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjExOjpz
ZXRUZXh0dXJlKToKKysgICAgICAgIChyeDo6UmVuZGVyZXIxMTo6c2V0UmFzdGVyaXplclN0YXRl
KToKKysgICAgICAgIChyeDo6UmVuZGVyZXIxMTo6c2V0QmxlbmRTdGF0ZSk6CisrICAgICAgICAo
cng6OlJlbmRlcmVyMTE6OnNldERlcHRoU3RlbmNpbFN0YXRlKToKKysgICAgICAgIChyeDo6UmVu
ZGVyZXIxMTo6c2V0U2Npc3NvclJlY3RhbmdsZSk6CisrICAgICAgICAocng6OlJlbmRlcmVyMTE6
OnNldFZpZXdwb3J0KToKKysgICAgICAgIChyeDo6UmVuZGVyZXIxMTo6YXBwbHlQcmltaXRpdmVU
eXBlKToKKysgICAgICAgIChyeDo6UmVuZGVyZXIxMTo6YXBwbHlSZW5kZXJUYXJnZXQpOgorKyAg
ICAgICAgKHJ4OjpSZW5kZXJlcjExOjphcHBseVZlcnRleEJ1ZmZlcik6CisrICAgICAgICAocng6
OlJlbmRlcmVyMTE6OmFwcGx5SW5kZXhCdWZmZXIpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjEx
OjpkcmF3QXJyYXlzKToKKysgICAgICAgIChyeDo6UmVuZGVyZXIxMTo6ZHJhd0VsZW1lbnRzKToK
KysgICAgICAgIChyeDo6UmVuZGVyZXIxMTo6ZHJhd0xpbmVMb29wKToKKysgICAgICAgIChyeDo6
UmVuZGVyZXIxMTo6ZHJhd1RyaWFuZ2xlRmFuKToKKysgICAgICAgIChyeDo6UmVuZGVyZXIxMTo6
YXBwbHlTaGFkZXJzKToKKysgICAgICAgIChyeDo6UmVuZGVyZXIxMTo6YXBwbHlVbmlmb3Jtcyk6
CisrICAgICAgICAocng6OlJlbmRlcmVyMTE6OmNsZWFyKToKKysgICAgICAgIChyeDo6UmVuZGVy
ZXIxMTo6bWFza2VkQ2xlYXIpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjExOjptYXJrQWxsU3Rh
dGVEaXJ0eSk6CisrICAgICAgICAocng6OlJlbmRlcmVyMTE6OnJlbGVhc2VEZXZpY2VSZXNvdXJj
ZXMpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjExOjpub3RpZnlEZXZpY2VMb3N0KToKKysgICAg
ICAgIChyeDo6UmVuZGVyZXIxMTo6aXNEZXZpY2VMb3N0KToKKysgICAgICAgIChyeDo6UmVuZGVy
ZXIxMTo6dGVzdERldmljZUxvc3QpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjExOjp0ZXN0RGV2
aWNlUmVzZXR0YWJsZSk6CisrICAgICAgICAocng6OlJlbmRlcmVyMTE6OnJlbGVhc2UpOgorKyAg
ICAgICAgKHJ4OjpSZW5kZXJlcjExOjpyZXNldERldmljZSk6CisrICAgICAgICAocng6OlJlbmRl
cmVyMTE6OmdldEFkYXB0ZXJWZW5kb3IpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjExOjpnZXRS
ZW5kZXJlckRlc2NyaXB0aW9uKToKKysgICAgICAgIChyeDo6UmVuZGVyZXIxMTo6Z2V0QWRhcHRl
cklkZW50aWZpZXIpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjExOjpnZXRCR1JBVGV4dHVyZVN1
cHBvcnQpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjExOjpnZXREWFQxVGV4dHVyZVN1cHBvcnQp
OgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjExOjpnZXREWFQzVGV4dHVyZVN1cHBvcnQpOgorKyAg
ICAgICAgKHJ4OjpSZW5kZXJlcjExOjpnZXREWFQ1VGV4dHVyZVN1cHBvcnQpOgorKyAgICAgICAg
KHJ4OjpSZW5kZXJlcjExOjpnZXREZXB0aFRleHR1cmVTdXBwb3J0KToKKysgICAgICAgIChyeDo6
UmVuZGVyZXIxMTo6Z2V0RmxvYXQzMlRleHR1cmVTdXBwb3J0KToKKysgICAgICAgIChyeDo6UmVu
ZGVyZXIxMTo6Z2V0RmxvYXQxNlRleHR1cmVTdXBwb3J0KToKKysgICAgICAgIChyeDo6UmVuZGVy
ZXIxMTo6Z2V0THVtaW5hbmNlVGV4dHVyZVN1cHBvcnQpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJl
cjExOjpnZXRMdW1pbmFuY2VBbHBoYVRleHR1cmVTdXBwb3J0KToKKysgICAgICAgIChyeDo6UmVu
ZGVyZXIxMTo6Z2V0VGV4dHVyZUZpbHRlckFuaXNvdHJvcHlTdXBwb3J0KToKKysgICAgICAgIChy
eDo6UmVuZGVyZXIxMTo6Z2V0VGV4dHVyZU1heEFuaXNvdHJvcHkpOgorKyAgICAgICAgKHJ4OjpS
ZW5kZXJlcjExOjpnZXRFdmVudFF1ZXJ5U3VwcG9ydCk6CisrICAgICAgICAocng6OlJlbmRlcmVy
MTE6OmdldFZpZXdwb3J0Qm91bmRzKToKKysgICAgICAgIChyeDo6UmVuZGVyZXIxMTo6Z2V0TWF4
VmVydGV4VGV4dHVyZUltYWdlVW5pdHMpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjExOjpnZXRN
YXhDb21iaW5lZFRleHR1cmVJbWFnZVVuaXRzKToKKysgICAgICAgIChyeDo6UmVuZGVyZXIxMTo6
Z2V0UmVzZXJ2ZWRWZXJ0ZXhVbmlmb3JtVmVjdG9ycyk6CisrICAgICAgICAocng6OlJlbmRlcmVy
MTE6OmdldFJlc2VydmVkRnJhZ21lbnRVbmlmb3JtVmVjdG9ycyk6CisrICAgICAgICAocng6OlJl
bmRlcmVyMTE6OmdldE1heFZlcnRleFVuaWZvcm1WZWN0b3JzKToKKysgICAgICAgIChyeDo6UmVu
ZGVyZXIxMTo6Z2V0TWF4RnJhZ21lbnRVbmlmb3JtVmVjdG9ycyk6CisrICAgICAgICAocng6OlJl
bmRlcmVyMTE6OmdldE1heFZhcnlpbmdWZWN0b3JzKToKKysgICAgICAgIChyeDo6UmVuZGVyZXIx
MTo6Z2V0Tm9uUG93ZXIyVGV4dHVyZVN1cHBvcnQpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjEx
OjpnZXRPY2NsdXNpb25RdWVyeVN1cHBvcnQpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjExOjpn
ZXRJbnN0YW5jaW5nU3VwcG9ydCk6CisrICAgICAgICAocng6OlJlbmRlcmVyMTE6OmdldFNoYXJl
SGFuZGxlU3VwcG9ydCk6CisrICAgICAgICAocng6OlJlbmRlcmVyMTE6OmdldERlcml2YXRpdmVJ
bnN0cnVjdGlvblN1cHBvcnQpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjExOjpnZXRQb3N0U3Vi
QnVmZmVyU3VwcG9ydCk6CisrICAgICAgICAocng6OlJlbmRlcmVyMTE6OmdldE1ham9yU2hhZGVy
TW9kZWwpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjExOjpnZXRNaW5vclNoYWRlck1vZGVsKToK
KysgICAgICAgIChyeDo6UmVuZGVyZXIxMTo6Z2V0TWF4UG9pbnRTaXplKToKKysgICAgICAgIChy
eDo6UmVuZGVyZXIxMTo6Z2V0TWF4Vmlld3BvcnREaW1lbnNpb24pOgorKyAgICAgICAgKHJ4OjpS
ZW5kZXJlcjExOjpnZXRNYXhUZXh0dXJlV2lkdGgpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjEx
OjpnZXRNYXhUZXh0dXJlSGVpZ2h0KToKKysgICAgICAgIChyeDo6UmVuZGVyZXIxMTo6Z2V0MzJC
aXRJbmRleFN1cHBvcnQpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjExOjpnZXRNaW5Td2FwSW50
ZXJ2YWwpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjExOjpnZXRNYXhTd2FwSW50ZXJ2YWwpOgor
KyAgICAgICAgKHJ4OjpSZW5kZXJlcjExOjpnZXRNYXhTdXBwb3J0ZWRTYW1wbGVzKToKKysgICAg
ICAgIChyeDo6UmVuZGVyZXIxMTo6Z2V0TmVhcmVzdFN1cHBvcnRlZFNhbXBsZXMpOgorKyAgICAg
ICAgKHJ4OjpSZW5kZXJlcjExOjpnZXRNYXhSZW5kZXJUYXJnZXRzKToKKysgICAgICAgIChyeDo6
UmVuZGVyZXIxMTo6Y29weVRvUmVuZGVyVGFyZ2V0KToKKysgICAgICAgIChyeDo6UmVuZGVyZXIx
MTo6Y29weUltYWdlKToKKysgICAgICAgIChyeDo6UmVuZGVyZXIxMTo6Y29weVRleHR1cmUpOgor
KyAgICAgICAgKHJ4OjpSZW5kZXJlcjExOjp1bmFwcGx5UmVuZGVyVGFyZ2V0cyk6CisrICAgICAg
ICAocng6OlJlbmRlcmVyMTE6OnNldE9uZVRpbWVSZW5kZXJUYXJnZXQpOgorKyAgICAgICAgKHJ4
OjpSZW5kZXJlcjExOjpjcmVhdGVSZW5kZXJUYXJnZXQpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJl
cjExOjpsb2FkRXhlY3V0YWJsZSk6CisrICAgICAgICAocng6OlJlbmRlcmVyMTE6OmNvbXBpbGVU
b0V4ZWN1dGFibGUpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjExOjpjcmVhdGVWZXJ0ZXhCdWZm
ZXIpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjExOjpjcmVhdGVJbmRleEJ1ZmZlcik6CisrICAg
ICAgICAocng6OlJlbmRlcmVyMTE6OmNyZWF0ZUJ1ZmZlclN0b3JhZ2UpOgorKyAgICAgICAgKHJ4
OjpSZW5kZXJlcjExOjpjcmVhdGVRdWVyeSk6CisrICAgICAgICAocng6OlJlbmRlcmVyMTE6OmNy
ZWF0ZUZlbmNlKToKKysgICAgICAgIChyeDo6UmVuZGVyZXIxMTo6Z2V0UmVuZGVyVGFyZ2V0UmVz
b3VyY2UpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjExOjpibGl0UmVjdCk6CisrICAgICAgICAo
cng6OlJlbmRlcmVyMTE6OnJlYWRQaXhlbHMpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjExOjpj
cmVhdGVJbWFnZSk6CisrICAgICAgICAocng6OlJlbmRlcmVyMTE6OmdlbmVyYXRlTWlwbWFwKToK
KysgICAgICAgIChyeDo6UmVuZGVyZXIxMTo6Y3JlYXRlVGV4dHVyZVN0b3JhZ2UyRCk6CisrICAg
ICAgICAocng6OlJlbmRlcmVyMTE6OmNyZWF0ZVRleHR1cmVTdG9yYWdlQ3ViZSk6CisrICAgICAg
ICAocng6OmdldEZhc3RQaXhlbENvcHlTaXplKToKKysgICAgICAgIChyeDo6cmVhZFBpeGVsQ29s
b3IpOgorKyAgICAgICAgKHJ4Ojp3cml0ZVBpeGVsQ29sb3IpOgorKyAgICAgICAgKHJ4OjpSZW5k
ZXJlcjExOjpyZWFkVGV4dHVyZURhdGEpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjExOjpibGl0
UmVuZGVyYnVmZmVyUmVjdCk6CisrICAgICAgICAocng6OlJlbmRlcmVyMTE6OnJlc29sdmVNdWx0
aXNhbXBsZWRUZXh0dXJlKToKKysgICAgICAgIChyeDo6UmVuZGVyZXIxMTo6Z2V0TFVJRCk6Cisr
ICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvUmVuZGVyZXIxMS5oOiBBZGRlZC4KKysg
ICAgICAgIChyeDo6UmVuZGVyZXIxMTo6Z2V0RGV2aWNlKToKKysgICAgICAgIChyeDo6UmVuZGVy
ZXIxMTo6Z2V0RGV2aWNlQ29udGV4dCk6CisrICAgICAgICAocng6OlJlbmRlcmVyMTE6OmdldER4
Z2lGYWN0b3J5KToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9SZW5kZXJlcjku
Y3BwOiBBZGRlZC4KKysgICAgICAgIChyeDo6UmVuZGVyZXI5OjpSZW5kZXJlcjkpOgorKyAgICAg
ICAgKHJ4OjpSZW5kZXJlcjk6On5SZW5kZXJlcjkpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjk6
Om1ha2VSZW5kZXJlcjkpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjk6OmluaXRpYWxpemUpOgor
KyAgICAgICAgKHJ4OjpSZW5kZXJlcjk6OmluaXRpYWxpemVEZXZpY2UpOgorKyAgICAgICAgKHJ4
OjpSZW5kZXJlcjk6OmdldERlZmF1bHRQcmVzZW50UGFyYW1ldGVycyk6CisrICAgICAgICAocng6
OlJlbmRlcmVyOTo6Z2VuZXJhdGVDb25maWdzKToKKysgICAgICAgIChyeDo6UmVuZGVyZXI5Ojpk
ZWxldGVDb25maWdzKToKKysgICAgICAgIChyeDo6UmVuZGVyZXI5OjpzdGFydFNjZW5lKToKKysg
ICAgICAgIChyeDo6UmVuZGVyZXI5OjplbmRTY2VuZSk6CisrICAgICAgICAocng6OlJlbmRlcmVy
OTo6c3luYyk6CisrICAgICAgICAocng6OlJlbmRlcmVyOTo6Y3JlYXRlU3dhcENoYWluKToKKysg
ICAgICAgIChyeDo6UmVuZGVyZXI5OjphbGxvY2F0ZUV2ZW50UXVlcnkpOgorKyAgICAgICAgKHJ4
OjpSZW5kZXJlcjk6OmZyZWVFdmVudFF1ZXJ5KToKKysgICAgICAgIChyeDo6UmVuZGVyZXI5Ojpj
cmVhdGVWZXJ0ZXhTaGFkZXIpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjk6OmNyZWF0ZVBpeGVs
U2hhZGVyKToKKysgICAgICAgIChyeDo6UmVuZGVyZXI5OjpjcmVhdGVWZXJ0ZXhCdWZmZXIpOgor
KyAgICAgICAgKHJ4OjpSZW5kZXJlcjk6OmNyZWF0ZUluZGV4QnVmZmVyKToKKysgICAgICAgIChy
eDo6UmVuZGVyZXI5OjpjcmVhdGVCdWZmZXJTdG9yYWdlKToKKysgICAgICAgIChyeDo6UmVuZGVy
ZXI5OjpjcmVhdGVRdWVyeSk6CisrICAgICAgICAocng6OlJlbmRlcmVyOTo6Y3JlYXRlRmVuY2Up
OgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjk6OnNldFNhbXBsZXJTdGF0ZSk6CisrICAgICAgICAo
cng6OlJlbmRlcmVyOTo6c2V0VGV4dHVyZSk6CisrICAgICAgICAocng6OlJlbmRlcmVyOTo6c2V0
UmFzdGVyaXplclN0YXRlKToKKysgICAgICAgIChyeDo6UmVuZGVyZXI5OjpzZXRCbGVuZFN0YXRl
KToKKysgICAgICAgIChyeDo6UmVuZGVyZXI5OjpzZXREZXB0aFN0ZW5jaWxTdGF0ZSk6CisrICAg
ICAgICAocng6OlJlbmRlcmVyOTo6c2V0U2Npc3NvclJlY3RhbmdsZSk6CisrICAgICAgICAocng6
OlJlbmRlcmVyOTo6c2V0Vmlld3BvcnQpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjk6OmFwcGx5
UHJpbWl0aXZlVHlwZSk6CisrICAgICAgICAocng6OlJlbmRlcmVyOTo6Z2V0TnVsbENvbG9yYnVm
ZmVyKToKKysgICAgICAgIChyeDo6UmVuZGVyZXI5OjphcHBseVJlbmRlclRhcmdldCk6CisrICAg
ICAgICAocng6OlJlbmRlcmVyOTo6YXBwbHlWZXJ0ZXhCdWZmZXIpOgorKyAgICAgICAgKHJ4OjpS
ZW5kZXJlcjk6OmFwcGx5SW5kZXhCdWZmZXIpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjk6OmRy
YXdBcnJheXMpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjk6OmRyYXdFbGVtZW50cyk6CisrICAg
ICAgICAocng6OlJlbmRlcmVyOTo6ZHJhd0xpbmVMb29wKToKKysgICAgICAgIChyeDo6ZHJhd1Bv
aW50cyk6CisrICAgICAgICAocng6OlJlbmRlcmVyOTo6ZHJhd0luZGV4ZWRQb2ludHMpOgorKyAg
ICAgICAgKHJ4OjpSZW5kZXJlcjk6OmFwcGx5U2hhZGVycyk6CisrICAgICAgICAocng6OlJlbmRl
cmVyOTo6YXBwbHlVbmlmb3Jtcyk6CisrICAgICAgICAocng6OlJlbmRlcmVyOTo6YXBwbHlVbmlm
b3JtbmZ2KToKKysgICAgICAgIChyeDo6UmVuZGVyZXI5OjphcHBseVVuaWZvcm1uaXYpOgorKyAg
ICAgICAgKHJ4OjpSZW5kZXJlcjk6OmFwcGx5VW5pZm9ybW5idik6CisrICAgICAgICAocng6OlJl
bmRlcmVyOTo6Y2xlYXIpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjk6Om1hcmtBbGxTdGF0ZURp
cnR5KToKKysgICAgICAgIChyeDo6UmVuZGVyZXI5OjpyZWxlYXNlRGV2aWNlUmVzb3VyY2VzKToK
KysgICAgICAgIChyeDo6UmVuZGVyZXI5Ojpub3RpZnlEZXZpY2VMb3N0KToKKysgICAgICAgIChy
eDo6UmVuZGVyZXI5Ojppc0RldmljZUxvc3QpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjk6OnRl
c3REZXZpY2VMb3N0KToKKysgICAgICAgIChyeDo6UmVuZGVyZXI5Ojp0ZXN0RGV2aWNlUmVzZXR0
YWJsZSk6CisrICAgICAgICAocng6OlJlbmRlcmVyOTo6cmVzZXREZXZpY2UpOgorKyAgICAgICAg
KHJ4OjpSZW5kZXJlcjk6OmdldEFkYXB0ZXJWZW5kb3IpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJl
cjk6OmdldFJlbmRlcmVyRGVzY3JpcHRpb24pOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjk6Omdl
dEFkYXB0ZXJJZGVudGlmaWVyKToKKysgICAgICAgIChyeDo6UmVuZGVyZXI5OjpnZXRNdWx0aVNh
bXBsZVN1cHBvcnQpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjk6OmdldEJHUkFUZXh0dXJlU3Vw
cG9ydCk6CisrICAgICAgICAocng6OlJlbmRlcmVyOTo6Z2V0RFhUMVRleHR1cmVTdXBwb3J0KToK
KysgICAgICAgIChyeDo6UmVuZGVyZXI5OjpnZXREWFQzVGV4dHVyZVN1cHBvcnQpOgorKyAgICAg
ICAgKHJ4OjpSZW5kZXJlcjk6OmdldERYVDVUZXh0dXJlU3VwcG9ydCk6CisrICAgICAgICAocng6
OlJlbmRlcmVyOTo6Z2V0RGVwdGhUZXh0dXJlU3VwcG9ydCk6CisrICAgICAgICAocng6OlJlbmRl
cmVyOTo6Z2V0RmxvYXQzMlRleHR1cmVTdXBwb3J0KToKKysgICAgICAgIChyeDo6UmVuZGVyZXI5
OjpnZXRGbG9hdDE2VGV4dHVyZVN1cHBvcnQpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjk6Omdl
dEx1bWluYW5jZVRleHR1cmVTdXBwb3J0KToKKysgICAgICAgIChyeDo6UmVuZGVyZXI5OjpnZXRM
dW1pbmFuY2VBbHBoYVRleHR1cmVTdXBwb3J0KToKKysgICAgICAgIChyeDo6UmVuZGVyZXI5Ojpn
ZXRUZXh0dXJlRmlsdGVyQW5pc290cm9weVN1cHBvcnQpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJl
cjk6OmdldFRleHR1cmVNYXhBbmlzb3Ryb3B5KToKKysgICAgICAgIChyeDo6UmVuZGVyZXI5Ojpn
ZXRFdmVudFF1ZXJ5U3VwcG9ydCk6CisrICAgICAgICAocng6OlJlbmRlcmVyOTo6Z2V0TWF4VmVy
dGV4VGV4dHVyZUltYWdlVW5pdHMpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjk6OmdldE1heENv
bWJpbmVkVGV4dHVyZUltYWdlVW5pdHMpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjk6OmdldFJl
c2VydmVkVmVydGV4VW5pZm9ybVZlY3RvcnMpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjk6Omdl
dFJlc2VydmVkRnJhZ21lbnRVbmlmb3JtVmVjdG9ycyk6CisrICAgICAgICAocng6OlJlbmRlcmVy
OTo6Z2V0TWF4VmVydGV4VW5pZm9ybVZlY3RvcnMpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjk6
OmdldE1heEZyYWdtZW50VW5pZm9ybVZlY3RvcnMpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjk6
OmdldE1heFZhcnlpbmdWZWN0b3JzKToKKysgICAgICAgIChyeDo6UmVuZGVyZXI5OjpnZXROb25Q
b3dlcjJUZXh0dXJlU3VwcG9ydCk6CisrICAgICAgICAocng6OlJlbmRlcmVyOTo6Z2V0T2NjbHVz
aW9uUXVlcnlTdXBwb3J0KToKKysgICAgICAgIChyeDo6UmVuZGVyZXI5OjpnZXRJbnN0YW5jaW5n
U3VwcG9ydCk6CisrICAgICAgICAocng6OlJlbmRlcmVyOTo6Z2V0U2hhcmVIYW5kbGVTdXBwb3J0
KToKKysgICAgICAgIChyeDo6UmVuZGVyZXI5OjpnZXREZXJpdmF0aXZlSW5zdHJ1Y3Rpb25TdXBw
b3J0KToKKysgICAgICAgIChyeDo6UmVuZGVyZXI5OjpnZXRQb3N0U3ViQnVmZmVyU3VwcG9ydCk6
CisrICAgICAgICAocng6OlJlbmRlcmVyOTo6Z2V0TWFqb3JTaGFkZXJNb2RlbCk6CisrICAgICAg
ICAocng6OlJlbmRlcmVyOTo6Z2V0TWF4UG9pbnRTaXplKToKKysgICAgICAgIChyeDo6UmVuZGVy
ZXI5OjpnZXRNYXhWaWV3cG9ydERpbWVuc2lvbik6CisrICAgICAgICAocng6OlJlbmRlcmVyOTo6
Z2V0TWF4VGV4dHVyZVdpZHRoKToKKysgICAgICAgIChyeDo6UmVuZGVyZXI5OjpnZXRNYXhUZXh0
dXJlSGVpZ2h0KToKKysgICAgICAgIChyeDo6UmVuZGVyZXI5OjpnZXQzMkJpdEluZGV4U3VwcG9y
dCk6CisrICAgICAgICAocng6OlJlbmRlcmVyOTo6Z2V0Q2Fwc0RlY2xUeXBlcyk6CisrICAgICAg
ICAocng6OlJlbmRlcmVyOTo6Z2V0TWluU3dhcEludGVydmFsKToKKysgICAgICAgIChyeDo6UmVu
ZGVyZXI5OjpnZXRNYXhTd2FwSW50ZXJ2YWwpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjk6Omdl
dE1heFN1cHBvcnRlZFNhbXBsZXMpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjk6OmdldE5lYXJl
c3RTdXBwb3J0ZWRTYW1wbGVzKToKKysgICAgICAgIChyeDo6UmVuZGVyZXI5OjpnZXRNYXhSZW5k
ZXJUYXJnZXRzKToKKysgICAgICAgIChyeDo6UmVuZGVyZXI5OjpDb252ZXJ0VGV4dHVyZUludGVy
bmFsRm9ybWF0KToKKysgICAgICAgIChyeDo6UmVuZGVyZXI5Ojpjb3B5VG9SZW5kZXJUYXJnZXQp
OgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjk6OmdldEJ1ZmZlclBvb2wpOgorKyAgICAgICAgKHJ4
OjpSZW5kZXJlcjk6OmNvcHlJbWFnZSk6CisrICAgICAgICAocng6OlJlbmRlcmVyOTo6YmxpdFJl
Y3QpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjk6OnJlYWRQaXhlbHMpOgorKyAgICAgICAgKHJ4
OjpSZW5kZXJlcjk6OmNyZWF0ZVJlbmRlclRhcmdldCk6CisrICAgICAgICAocng6OlJlbmRlcmVy
OTo6bG9hZEV4ZWN1dGFibGUpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjk6OmNvbXBpbGVUb0V4
ZWN1dGFibGUpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJlcjk6OmJveEZpbHRlcik6CisrICAgICAg
ICAocng6OlJlbmRlcmVyOTo6Z2V0VGV4dHVyZVBvb2wpOgorKyAgICAgICAgKHJ4OjpSZW5kZXJl
cjk6OmNyZWF0ZUltYWdlKToKKysgICAgICAgIChyeDo6UmVuZGVyZXI5OjpnZW5lcmF0ZU1pcG1h
cCk6CisrICAgICAgICAocng6OlJlbmRlcmVyOTo6Y3JlYXRlVGV4dHVyZVN0b3JhZ2UyRCk6Cisr
ICAgICAgICAocng6OlJlbmRlcmVyOTo6Y3JlYXRlVGV4dHVyZVN0b3JhZ2VDdWJlKToKKysgICAg
ICAgIChyeDo6UmVuZGVyZXI5OjpnZXRMVUlEKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9y
ZW5kZXJlci9SZW5kZXJlcjkuaDogQWRkZWQuCisrICAgICAgICAocng6OlJlbmRlcmVyOTo6Z2V0
RGV2aWNlKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9TaGFkZXJDYWNoZS5o
OiBBZGRlZC4KKysgICAgICAgIChyeDo6U2hhZGVyQ2FjaGU6OlNoYWRlckNhY2hlKToKKysgICAg
ICAgIChyeDo6U2hhZGVyQ2FjaGU6On5TaGFkZXJDYWNoZSk6CisrICAgICAgICAocng6OlNoYWRl
ckNhY2hlOjppbml0aWFsaXplKToKKysgICAgICAgIChyeDo6U2hhZGVyQ2FjaGU6OmNyZWF0ZSk6
CisrICAgICAgICAocng6OlNoYWRlckNhY2hlOjpjbGVhcik6CisrICAgICAgICAocng6OlNoYWRl
ckNhY2hlOjpjcmVhdGVTaGFkZXIpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVy
L1NoYWRlckV4ZWN1dGFibGUuaDogQWRkZWQuCisrICAgICAgICAocng6OlNoYWRlckV4ZWN1dGFi
bGU6OlNoYWRlckV4ZWN1dGFibGUpOgorKyAgICAgICAgKHJ4OjpTaGFkZXJFeGVjdXRhYmxlOjp+
U2hhZGVyRXhlY3V0YWJsZSk6CisrICAgICAgICAocng6OlNoYWRlckV4ZWN1dGFibGU6OmdldEZ1
bmN0aW9uKToKKysgICAgICAgIChyeDo6U2hhZGVyRXhlY3V0YWJsZTo6Z2V0TGVuZ3RoKToKKysg
ICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9TaGFkZXJFeGVjdXRhYmxlMTEuY3BwOiBB
ZGRlZC4KKysgICAgICAgIChyeDo6U2hhZGVyRXhlY3V0YWJsZTExOjpTaGFkZXJFeGVjdXRhYmxl
MTEpOgorKyAgICAgICAgKHJ4OjpTaGFkZXJFeGVjdXRhYmxlMTE6On5TaGFkZXJFeGVjdXRhYmxl
MTEpOgorKyAgICAgICAgKHJ4OjpTaGFkZXJFeGVjdXRhYmxlMTE6Om1ha2VTaGFkZXJFeGVjdXRh
YmxlMTEpOgorKyAgICAgICAgKHJ4OjpTaGFkZXJFeGVjdXRhYmxlMTE6OmdldFZlcnRleFNoYWRl
cik6CisrICAgICAgICAocng6OlNoYWRlckV4ZWN1dGFibGUxMTo6Z2V0UGl4ZWxTaGFkZXIpOgor
KyAgICAgICAgKHJ4OjpTaGFkZXJFeGVjdXRhYmxlMTE6OmdldEdlb21ldHJ5U2hhZGVyKToKKysg
ICAgICAgIChyeDo6U2hhZGVyRXhlY3V0YWJsZTExOjpnZXRDb25zdGFudEJ1ZmZlcik6CisrICAg
ICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvU2hhZGVyRXhlY3V0YWJsZTExLmg6IEFkZGVk
LgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL1NoYWRlckV4ZWN1dGFibGU5LmNw
cDogQWRkZWQuCisrICAgICAgICAocng6OlNoYWRlckV4ZWN1dGFibGU5OjpTaGFkZXJFeGVjdXRh
YmxlOSk6CisrICAgICAgICAocng6OlNoYWRlckV4ZWN1dGFibGU5Ojp+U2hhZGVyRXhlY3V0YWJs
ZTkpOgorKyAgICAgICAgKHJ4OjpTaGFkZXJFeGVjdXRhYmxlOTo6bWFrZVNoYWRlckV4ZWN1dGFi
bGU5KToKKysgICAgICAgIChyeDo6U2hhZGVyRXhlY3V0YWJsZTk6OmdldFZlcnRleFNoYWRlcik6
CisrICAgICAgICAocng6OlNoYWRlckV4ZWN1dGFibGU5OjpnZXRQaXhlbFNoYWRlcik6CisrICAg
ICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvU2hhZGVyRXhlY3V0YWJsZTkuaDogQWRkZWQu
CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvU3dhcENoYWluLmg6IEFkZGVkLgor
KyAgICAgICAgKHJ4OjpTd2FwQ2hhaW46OlN3YXBDaGFpbik6CisrICAgICAgICAocng6OlN3YXBD
aGFpbjo6flN3YXBDaGFpbik6CisrICAgICAgICAocng6OlN3YXBDaGFpbjo6Z2V0U2hhcmVIYW5k
bGUpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL1N3YXBDaGFpbjExLmNwcDog
QWRkZWQuCisrICAgICAgICAocng6OlN3YXBDaGFpbjExOjpTd2FwQ2hhaW4xMSk6CisrICAgICAg
ICAocng6OlN3YXBDaGFpbjExOjp+U3dhcENoYWluMTEpOgorKyAgICAgICAgKHJ4OjpTd2FwQ2hh
aW4xMTo6cmVsZWFzZSk6CisrICAgICAgICAocng6OlN3YXBDaGFpbjExOjpyZWxlYXNlT2Zmc2Ny
ZWVuVGV4dHVyZSk6CisrICAgICAgICAocng6OlN3YXBDaGFpbjExOjpyZXNldE9mZnNjcmVlblRl
eHR1cmUpOgorKyAgICAgICAgKHJ4OjpTd2FwQ2hhaW4xMTo6cmVzaXplKToKKysgICAgICAgIChy
eDo6U3dhcENoYWluMTE6OnJlc2V0KToKKysgICAgICAgIChyeDo6U3dhcENoYWluMTE6OmluaXRQ
YXNzVGhyb3VnaFJlc291cmNlcyk6CisrICAgICAgICAocng6OlN3YXBDaGFpbjExOjpzd2FwUmVj
dCk6CisrICAgICAgICAocng6OlN3YXBDaGFpbjExOjpnZXRPZmZzY3JlZW5UZXh0dXJlKToKKysg
ICAgICAgIChyeDo6U3dhcENoYWluMTE6OmdldFJlbmRlclRhcmdldCk6CisrICAgICAgICAocng6
OlN3YXBDaGFpbjExOjpnZXRSZW5kZXJUYXJnZXRTaGFkZXJSZXNvdXJjZSk6CisrICAgICAgICAo
cng6OlN3YXBDaGFpbjExOjpnZXREZXB0aFN0ZW5jaWwpOgorKyAgICAgICAgKHJ4OjpTd2FwQ2hh
aW4xMTo6Z2V0RGVwdGhTdGVuY2lsVGV4dHVyZSk6CisrICAgICAgICAocng6OlN3YXBDaGFpbjEx
OjptYWtlU3dhcENoYWluMTEpOgorKyAgICAgICAgKHJ4OjpTd2FwQ2hhaW4xMTo6cmVjcmVhdGUp
OgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL1N3YXBDaGFpbjExLmg6IEFkZGVk
LgorKyAgICAgICAgKHJ4OjpTd2FwQ2hhaW4xMTo6Z2V0V2lkdGgpOgorKyAgICAgICAgKHJ4OjpT
d2FwQ2hhaW4xMTo6Z2V0SGVpZ2h0KToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJl
ci9Td2FwQ2hhaW45LmNwcDogQWRkZWQuCisrICAgICAgICAocng6OlN3YXBDaGFpbjk6OlN3YXBD
aGFpbjkpOgorKyAgICAgICAgKHJ4OjpTd2FwQ2hhaW45Ojp+U3dhcENoYWluOSk6CisrICAgICAg
ICAocng6OlN3YXBDaGFpbjk6OnJlbGVhc2UpOgorKyAgICAgICAgKHJ4Ojpjb252ZXJ0SW50ZXJ2
YWwpOgorKyAgICAgICAgKHJ4OjpTd2FwQ2hhaW45OjpyZXNpemUpOgorKyAgICAgICAgKHJ4OjpT
d2FwQ2hhaW45OjpyZXNldCk6CisrICAgICAgICAocng6OlN3YXBDaGFpbjk6OnN3YXBSZWN0KToK
KysgICAgICAgIChyeDo6U3dhcENoYWluOTo6Z2V0UmVuZGVyVGFyZ2V0KToKKysgICAgICAgIChy
eDo6U3dhcENoYWluOTo6Z2V0RGVwdGhTdGVuY2lsKToKKysgICAgICAgIChyeDo6U3dhcENoYWlu
OTo6Z2V0T2Zmc2NyZWVuVGV4dHVyZSk6CisrICAgICAgICAocng6OlN3YXBDaGFpbjk6Om1ha2VT
d2FwQ2hhaW45KToKKysgICAgICAgIChyeDo6U3dhcENoYWluOTo6cmVjcmVhdGUpOgorKyAgICAg
ICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL1N3YXBDaGFpbjkuaDogQWRkZWQuCisrICAgICAg
ICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvVGV4dHVyZVN0b3JhZ2UuY3BwOiBBZGRlZC4KKysg
ICAgICAgIChyeDo6VGV4dHVyZVN0b3JhZ2VJbnRlcmZhY2U6OlRleHR1cmVTdG9yYWdlSW50ZXJm
YWNlKToKKysgICAgICAgIChyeDo6VGV4dHVyZVN0b3JhZ2VJbnRlcmZhY2U6On5UZXh0dXJlU3Rv
cmFnZUludGVyZmFjZSk6CisrICAgICAgICAocng6OlRleHR1cmVTdG9yYWdlSW50ZXJmYWNlOjpp
c1JlbmRlclRhcmdldCk6CisrICAgICAgICAocng6OlRleHR1cmVTdG9yYWdlSW50ZXJmYWNlOjpp
c01hbmFnZWQpOgorKyAgICAgICAgKHJ4OjpUZXh0dXJlU3RvcmFnZUludGVyZmFjZTo6Z2V0VGV4
dHVyZVNlcmlhbCk6CisrICAgICAgICAocng6OlRleHR1cmVTdG9yYWdlSW50ZXJmYWNlOjppc3N1
ZVRleHR1cmVTZXJpYWwpOgorKyAgICAgICAgKHJ4OjpUZXh0dXJlU3RvcmFnZUludGVyZmFjZTo6
Z2V0TG9kT2Zmc2V0KToKKysgICAgICAgIChyeDo6VGV4dHVyZVN0b3JhZ2VJbnRlcmZhY2U6Omxl
dmVsQ291bnQpOgorKyAgICAgICAgKHJ4OjpUZXh0dXJlU3RvcmFnZUludGVyZmFjZTJEOjpUZXh0
dXJlU3RvcmFnZUludGVyZmFjZTJEKToKKysgICAgICAgIChyeDo6VGV4dHVyZVN0b3JhZ2VJbnRl
cmZhY2UyRDo6flRleHR1cmVTdG9yYWdlSW50ZXJmYWNlMkQpOgorKyAgICAgICAgKHJ4OjpUZXh0
dXJlU3RvcmFnZUludGVyZmFjZTJEOjpnZXRSZW5kZXJUYXJnZXQpOgorKyAgICAgICAgKHJ4OjpU
ZXh0dXJlU3RvcmFnZUludGVyZmFjZTJEOjpnZW5lcmF0ZU1pcG1hcCk6CisrICAgICAgICAocng6
OlRleHR1cmVTdG9yYWdlSW50ZXJmYWNlMkQ6OmdldFJlbmRlclRhcmdldFNlcmlhbCk6CisrICAg
ICAgICAocng6OlRleHR1cmVTdG9yYWdlSW50ZXJmYWNlQ3ViZTo6VGV4dHVyZVN0b3JhZ2VJbnRl
cmZhY2VDdWJlKToKKysgICAgICAgIChyeDo6VGV4dHVyZVN0b3JhZ2VJbnRlcmZhY2VDdWJlOjp+
VGV4dHVyZVN0b3JhZ2VJbnRlcmZhY2VDdWJlKToKKysgICAgICAgIChyeDo6VGV4dHVyZVN0b3Jh
Z2VJbnRlcmZhY2VDdWJlOjpnZXRSZW5kZXJUYXJnZXQpOgorKyAgICAgICAgKHJ4OjpUZXh0dXJl
U3RvcmFnZUludGVyZmFjZUN1YmU6OmdlbmVyYXRlTWlwbWFwKToKKysgICAgICAgIChyeDo6VGV4
dHVyZVN0b3JhZ2VJbnRlcmZhY2VDdWJlOjpnZXRSZW5kZXJUYXJnZXRTZXJpYWwpOgorKyAgICAg
ICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL1RleHR1cmVTdG9yYWdlLmg6IEFkZGVkLgorKyAg
ICAgICAgKHJ4OjpUZXh0dXJlU3RvcmFnZTo6VGV4dHVyZVN0b3JhZ2UpOgorKyAgICAgICAgKHJ4
OjpUZXh0dXJlU3RvcmFnZTo6flRleHR1cmVTdG9yYWdlKToKKysgICAgICAgIChyeDo6VGV4dHVy
ZVN0b3JhZ2VJbnRlcmZhY2U6OmdldFN0b3JhZ2VJbnN0YW5jZSk6CisrICAgICAgICAqIHNyYy9s
aWJHTEVTdjIvcmVuZGVyZXIvVGV4dHVyZVN0b3JhZ2UxMS5jcHA6IEFkZGVkLgorKyAgICAgICAg
KHJ4OjpUZXh0dXJlU3RvcmFnZTExOjpUZXh0dXJlU3RvcmFnZTExKToKKysgICAgICAgIChyeDo6
VGV4dHVyZVN0b3JhZ2UxMTo6flRleHR1cmVTdG9yYWdlMTEpOgorKyAgICAgICAgKHJ4OjpUZXh0
dXJlU3RvcmFnZTExOjptYWtlVGV4dHVyZVN0b3JhZ2UxMSk6CisrICAgICAgICAocng6OlRleHR1
cmVTdG9yYWdlMTE6OkdldFRleHR1cmVCaW5kRmxhZ3MpOgorKyAgICAgICAgKHJ4OjpUZXh0dXJl
U3RvcmFnZTExOjpJc1RleHR1cmVGb3JtYXRSZW5kZXJhYmxlKToKKysgICAgICAgIChyeDo6VGV4
dHVyZVN0b3JhZ2UxMTo6Z2V0QmluZEZsYWdzKToKKysgICAgICAgIChyeDo6VGV4dHVyZVN0b3Jh
Z2UxMTo6Z2V0QmFzZVRleHR1cmUpOgorKyAgICAgICAgKHJ4OjpUZXh0dXJlU3RvcmFnZTExOjpn
ZXRMb2RPZmZzZXQpOgorKyAgICAgICAgKHJ4OjpUZXh0dXJlU3RvcmFnZTExOjppc1JlbmRlclRh
cmdldCk6CisrICAgICAgICAocng6OlRleHR1cmVTdG9yYWdlMTE6OmlzTWFuYWdlZCk6CisrICAg
ICAgICAocng6OlRleHR1cmVTdG9yYWdlMTE6OmxldmVsQ291bnQpOgorKyAgICAgICAgKHJ4OjpU
ZXh0dXJlU3RvcmFnZTExOjpnZXRTdWJyZXNvdXJjZUluZGV4KToKKysgICAgICAgIChyeDo6VGV4
dHVyZVN0b3JhZ2UxMTo6dXBkYXRlU3VicmVzb3VyY2VMZXZlbCk6CisrICAgICAgICAocng6OlRl
eHR1cmVTdG9yYWdlMTE6OmdlbmVyYXRlTWlwbWFwTGF5ZXIpOgorKyAgICAgICAgKHJ4OjpUZXh0
dXJlU3RvcmFnZTExXzJEOjpUZXh0dXJlU3RvcmFnZTExXzJEKToKKysgICAgICAgIChyeDo6VGV4
dHVyZVN0b3JhZ2UxMV8yRDo6flRleHR1cmVTdG9yYWdlMTFfMkQpOgorKyAgICAgICAgKHJ4OjpU
ZXh0dXJlU3RvcmFnZTExXzJEOjptYWtlVGV4dHVyZVN0b3JhZ2UxMV8yRCk6CisrICAgICAgICAo
cng6OlRleHR1cmVTdG9yYWdlMTFfMkQ6OmdldFJlbmRlclRhcmdldCk6CisrICAgICAgICAocng6
OlRleHR1cmVTdG9yYWdlMTFfMkQ6OmdldFNSVik6CisrICAgICAgICAocng6OlRleHR1cmVTdG9y
YWdlMTFfMkQ6OmdlbmVyYXRlTWlwbWFwKToKKysgICAgICAgIChyeDo6VGV4dHVyZVN0b3JhZ2Ux
MV9DdWJlOjpUZXh0dXJlU3RvcmFnZTExX0N1YmUpOgorKyAgICAgICAgKHJ4OjpUZXh0dXJlU3Rv
cmFnZTExX0N1YmU6On5UZXh0dXJlU3RvcmFnZTExX0N1YmUpOgorKyAgICAgICAgKHJ4OjpUZXh0
dXJlU3RvcmFnZTExX0N1YmU6Om1ha2VUZXh0dXJlU3RvcmFnZTExX0N1YmUpOgorKyAgICAgICAg
KHJ4OjpUZXh0dXJlU3RvcmFnZTExX0N1YmU6OmdldFJlbmRlclRhcmdldCk6CisrICAgICAgICAo
cng6OlRleHR1cmVTdG9yYWdlMTFfQ3ViZTo6Z2V0U1JWKToKKysgICAgICAgIChyeDo6VGV4dHVy
ZVN0b3JhZ2UxMV9DdWJlOjpnZW5lcmF0ZU1pcG1hcCk6CisrICAgICAgICAqIHNyYy9saWJHTEVT
djIvcmVuZGVyZXIvVGV4dHVyZVN0b3JhZ2UxMS5oOiBBZGRlZC4KKysgICAgICAgIChyeDo6VGV4
dHVyZVN0b3JhZ2UxMTo6Z2V0UmVuZGVyVGFyZ2V0KToKKysgICAgICAgIChyeDo6VGV4dHVyZVN0
b3JhZ2UxMTo6Z2VuZXJhdGVNaXBtYXApOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRl
cmVyL1RleHR1cmVTdG9yYWdlOS5jcHA6IEFkZGVkLgorKyAgICAgICAgKHJ4OjpUZXh0dXJlU3Rv
cmFnZTk6OlRleHR1cmVTdG9yYWdlOSk6CisrICAgICAgICAocng6OlRleHR1cmVTdG9yYWdlOTo6
flRleHR1cmVTdG9yYWdlOSk6CisrICAgICAgICAocng6OlRleHR1cmVTdG9yYWdlOTo6bWFrZVRl
eHR1cmVTdG9yYWdlOSk6CisrICAgICAgICAocng6OlRleHR1cmVTdG9yYWdlOTo6R2V0VGV4dHVy
ZVVzYWdlKToKKysgICAgICAgIChyeDo6VGV4dHVyZVN0b3JhZ2U5OjpJc1RleHR1cmVGb3JtYXRS
ZW5kZXJhYmxlKToKKysgICAgICAgIChyeDo6VGV4dHVyZVN0b3JhZ2U5Ojppc1JlbmRlclRhcmdl
dCk6CisrICAgICAgICAocng6OlRleHR1cmVTdG9yYWdlOTo6aXNNYW5hZ2VkKToKKysgICAgICAg
IChyeDo6VGV4dHVyZVN0b3JhZ2U5OjpnZXRQb29sKToKKysgICAgICAgIChyeDo6VGV4dHVyZVN0
b3JhZ2U5OjpnZXRVc2FnZSk6CisrICAgICAgICAocng6OlRleHR1cmVTdG9yYWdlOTo6Z2V0TG9k
T2Zmc2V0KToKKysgICAgICAgIChyeDo6VGV4dHVyZVN0b3JhZ2U5OjpsZXZlbENvdW50KToKKysg
ICAgICAgIChyeDo6VGV4dHVyZVN0b3JhZ2U5XzJEOjpUZXh0dXJlU3RvcmFnZTlfMkQpOgorKyAg
ICAgICAgKHJ4OjpUZXh0dXJlU3RvcmFnZTlfMkQ6On5UZXh0dXJlU3RvcmFnZTlfMkQpOgorKyAg
ICAgICAgKHJ4OjpUZXh0dXJlU3RvcmFnZTlfMkQ6Om1ha2VUZXh0dXJlU3RvcmFnZTlfMkQpOgor
KyAgICAgICAgKHJ4OjpUZXh0dXJlU3RvcmFnZTlfMkQ6OmdldFN1cmZhY2VMZXZlbCk6CisrICAg
ICAgICAocng6OlRleHR1cmVTdG9yYWdlOV8yRDo6Z2V0UmVuZGVyVGFyZ2V0KToKKysgICAgICAg
IChyeDo6VGV4dHVyZVN0b3JhZ2U5XzJEOjpnZW5lcmF0ZU1pcG1hcCk6CisrICAgICAgICAocng6
OlRleHR1cmVTdG9yYWdlOV8yRDo6Z2V0QmFzZVRleHR1cmUpOgorKyAgICAgICAgKHJ4OjpUZXh0
dXJlU3RvcmFnZTlfMkQ6OmluaXRpYWxpemVSZW5kZXJUYXJnZXQpOgorKyAgICAgICAgKHJ4OjpU
ZXh0dXJlU3RvcmFnZTlfQ3ViZTo6VGV4dHVyZVN0b3JhZ2U5X0N1YmUpOgorKyAgICAgICAgKHJ4
OjpUZXh0dXJlU3RvcmFnZTlfQ3ViZTo6flRleHR1cmVTdG9yYWdlOV9DdWJlKToKKysgICAgICAg
IChyeDo6VGV4dHVyZVN0b3JhZ2U5X0N1YmU6Om1ha2VUZXh0dXJlU3RvcmFnZTlfQ3ViZSk6Cisr
ICAgICAgICAocng6OlRleHR1cmVTdG9yYWdlOV9DdWJlOjpnZXRDdWJlTWFwU3VyZmFjZSk6Cisr
ICAgICAgICAocng6OlRleHR1cmVTdG9yYWdlOV9DdWJlOjpnZXRSZW5kZXJUYXJnZXQpOgorKyAg
ICAgICAgKHJ4OjpUZXh0dXJlU3RvcmFnZTlfQ3ViZTo6Z2VuZXJhdGVNaXBtYXApOgorKyAgICAg
ICAgKHJ4OjpUZXh0dXJlU3RvcmFnZTlfQ3ViZTo6Z2V0QmFzZVRleHR1cmUpOgorKyAgICAgICAg
KHJ4OjpUZXh0dXJlU3RvcmFnZTlfQ3ViZTo6aW5pdGlhbGl6ZVJlbmRlclRhcmdldCk6CisrICAg
ICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvVGV4dHVyZVN0b3JhZ2U5Lmg6IEFkZGVkLgor
KyAgICAgICAgKHJ4OjpUZXh0dXJlU3RvcmFnZTk6OmdldFJlbmRlclRhcmdldCk6CisrICAgICAg
ICAocng6OlRleHR1cmVTdG9yYWdlOTo6Z2VuZXJhdGVNaXBtYXApOgorKyAgICAgICAgKiBzcmMv
bGliR0xFU3YyL3JlbmRlcmVyL1ZlcnRleEJ1ZmZlci5jcHA6IEFkZGVkLgorKyAgICAgICAgKHJ4
OjpWZXJ0ZXhCdWZmZXI6OlZlcnRleEJ1ZmZlcik6CisrICAgICAgICAocng6OlZlcnRleEJ1ZmZl
cjo6flZlcnRleEJ1ZmZlcik6CisrICAgICAgICAocng6OlZlcnRleEJ1ZmZlcjo6dXBkYXRlU2Vy
aWFsKToKKysgICAgICAgIChyeDo6VmVydGV4QnVmZmVyOjpnZXRTZXJpYWwpOgorKyAgICAgICAg
KHJ4OjpWZXJ0ZXhCdWZmZXJJbnRlcmZhY2U6OlZlcnRleEJ1ZmZlckludGVyZmFjZSk6CisrICAg
ICAgICAocng6OlZlcnRleEJ1ZmZlckludGVyZmFjZTo6flZlcnRleEJ1ZmZlckludGVyZmFjZSk6
CisrICAgICAgICAocng6OlZlcnRleEJ1ZmZlckludGVyZmFjZTo6Z2V0U2VyaWFsKToKKysgICAg
ICAgIChyeDo6VmVydGV4QnVmZmVySW50ZXJmYWNlOjpnZXRCdWZmZXJTaXplKToKKysgICAgICAg
IChyeDo6VmVydGV4QnVmZmVySW50ZXJmYWNlOjpzZXRCdWZmZXJTaXplKToKKysgICAgICAgIChy
eDo6VmVydGV4QnVmZmVySW50ZXJmYWNlOjpnZXRXcml0ZVBvc2l0aW9uKToKKysgICAgICAgIChy
eDo6VmVydGV4QnVmZmVySW50ZXJmYWNlOjpzZXRXcml0ZVBvc2l0aW9uKToKKysgICAgICAgIChy
eDo6VmVydGV4QnVmZmVySW50ZXJmYWNlOjpkaXNjYXJkKToKKysgICAgICAgIChyeDo6VmVydGV4
QnVmZmVySW50ZXJmYWNlOjpzdG9yZVZlcnRleEF0dHJpYnV0ZXMpOgorKyAgICAgICAgKHJ4OjpW
ZXJ0ZXhCdWZmZXJJbnRlcmZhY2U6OnN0b3JlUmF3RGF0YSk6CisrICAgICAgICAocng6OlZlcnRl
eEJ1ZmZlckludGVyZmFjZTo6cmVzZXJ2ZVZlcnRleFNwYWNlKToKKysgICAgICAgIChyeDo6VmVy
dGV4QnVmZmVySW50ZXJmYWNlOjpyZXNlcnZlUmF3RGF0YVNwYWNlKToKKysgICAgICAgIChyeDo6
VmVydGV4QnVmZmVySW50ZXJmYWNlOjpnZXRWZXJ0ZXhCdWZmZXIpOgorKyAgICAgICAgKHJ4OjpT
dHJlYW1pbmdWZXJ0ZXhCdWZmZXJJbnRlcmZhY2U6OlN0cmVhbWluZ1ZlcnRleEJ1ZmZlckludGVy
ZmFjZSk6CisrICAgICAgICAocng6OlN0cmVhbWluZ1ZlcnRleEJ1ZmZlckludGVyZmFjZTo6flN0
cmVhbWluZ1ZlcnRleEJ1ZmZlckludGVyZmFjZSk6CisrICAgICAgICAocng6OlN0cmVhbWluZ1Zl
cnRleEJ1ZmZlckludGVyZmFjZTo6cmVzZXJ2ZVNwYWNlKToKKysgICAgICAgIChyeDo6U3RhdGlj
VmVydGV4QnVmZmVySW50ZXJmYWNlOjpTdGF0aWNWZXJ0ZXhCdWZmZXJJbnRlcmZhY2UpOgorKyAg
ICAgICAgKHJ4OjpTdGF0aWNWZXJ0ZXhCdWZmZXJJbnRlcmZhY2U6On5TdGF0aWNWZXJ0ZXhCdWZm
ZXJJbnRlcmZhY2UpOgorKyAgICAgICAgKHJ4OjpTdGF0aWNWZXJ0ZXhCdWZmZXJJbnRlcmZhY2U6
Omxvb2t1cEF0dHJpYnV0ZSk6CisrICAgICAgICAocng6OlN0YXRpY1ZlcnRleEJ1ZmZlckludGVy
ZmFjZTo6cmVzZXJ2ZVNwYWNlKToKKysgICAgICAgIChyeDo6U3RhdGljVmVydGV4QnVmZmVySW50
ZXJmYWNlOjpzdG9yZVZlcnRleEF0dHJpYnV0ZXMpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3Yy
L3JlbmRlcmVyL1ZlcnRleEJ1ZmZlci5oOiBBZGRlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2
Mi9yZW5kZXJlci9WZXJ0ZXhCdWZmZXIxMS5jcHA6IEFkZGVkLgorKyAgICAgICAgKHJ4OjpWZXJ0
ZXhCdWZmZXIxMTo6VmVydGV4QnVmZmVyMTEpOgorKyAgICAgICAgKHJ4OjpWZXJ0ZXhCdWZmZXIx
MTo6flZlcnRleEJ1ZmZlcjExKToKKysgICAgICAgIChyeDo6VmVydGV4QnVmZmVyMTE6OmluaXRp
YWxpemUpOgorKyAgICAgICAgKHJ4OjpWZXJ0ZXhCdWZmZXIxMTo6bWFrZVZlcnRleEJ1ZmZlcjEx
KToKKysgICAgICAgIChyeDo6VmVydGV4QnVmZmVyMTE6OnN0b3JlVmVydGV4QXR0cmlidXRlcyk6
CisrICAgICAgICAocng6OlZlcnRleEJ1ZmZlcjExOjpzdG9yZVJhd0RhdGEpOgorKyAgICAgICAg
KHJ4OjpWZXJ0ZXhCdWZmZXIxMTo6Z2V0U3BhY2VSZXF1aXJlZCk6CisrICAgICAgICAocng6OlZl
cnRleEJ1ZmZlcjExOjpyZXF1aXJlc0NvbnZlcnNpb24pOgorKyAgICAgICAgKHJ4OjpWZXJ0ZXhC
dWZmZXIxMTo6Z2V0QnVmZmVyU2l6ZSk6CisrICAgICAgICAocng6OlZlcnRleEJ1ZmZlcjExOjpz
ZXRCdWZmZXJTaXplKToKKysgICAgICAgIChyeDo6VmVydGV4QnVmZmVyMTE6OmRpc2NhcmQpOgor
KyAgICAgICAgKHJ4OjpWZXJ0ZXhCdWZmZXIxMTo6Z2V0VmVydGV4U2l6ZSk6CisrICAgICAgICAo
cng6OlZlcnRleEJ1ZmZlcjExOjpnZXREWEdJRm9ybWF0KToKKysgICAgICAgIChyeDo6VmVydGV4
QnVmZmVyMTE6OmdldEJ1ZmZlcik6CisrICAgICAgICAocng6OmNvcHlWZXJ0ZXhEYXRhKToKKysg
ICAgICAgIChyeDo6Y29weUZpeGVkVmVydGV4RGF0YSk6CisrICAgICAgICAocng6OmNvcHlUb0Zs
b2F0VmVydGV4RGF0YSk6CisrICAgICAgICAocng6OlZlcnRleEJ1ZmZlcjExOjpnZXRWZXJ0ZXhD
b252ZXJzaW9uKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9WZXJ0ZXhCdWZm
ZXIxMS5oOiBBZGRlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9WZXJ0ZXhC
dWZmZXI5LmNwcDogQWRkZWQuCisrICAgICAgICAocng6OlZlcnRleEJ1ZmZlcjk6OlZlcnRleEJ1
ZmZlcjkpOgorKyAgICAgICAgKHJ4OjpWZXJ0ZXhCdWZmZXI5Ojp+VmVydGV4QnVmZmVyOSk6Cisr
ICAgICAgICAocng6OlZlcnRleEJ1ZmZlcjk6OmluaXRpYWxpemUpOgorKyAgICAgICAgKHJ4OjpW
ZXJ0ZXhCdWZmZXI5OjptYWtlVmVydGV4QnVmZmVyOSk6CisrICAgICAgICAocng6OlZlcnRleEJ1
ZmZlcjk6OnN0b3JlVmVydGV4QXR0cmlidXRlcyk6CisrICAgICAgICAocng6OlZlcnRleEJ1ZmZl
cjk6OnN0b3JlUmF3RGF0YSk6CisrICAgICAgICAocng6OlZlcnRleEJ1ZmZlcjk6OmdldFNwYWNl
UmVxdWlyZWQpOgorKyAgICAgICAgKHJ4OjpWZXJ0ZXhCdWZmZXI5OjpyZXF1aXJlc0NvbnZlcnNp
b24pOgorKyAgICAgICAgKHJ4OjpWZXJ0ZXhCdWZmZXI5OjpnZXRWZXJ0ZXhTaXplKToKKysgICAg
ICAgIChyeDo6VmVydGV4QnVmZmVyOTo6Z2V0RGVjbFR5cGUpOgorKyAgICAgICAgKHJ4OjpWZXJ0
ZXhCdWZmZXI5OjpnZXRCdWZmZXJTaXplKToKKysgICAgICAgIChyeDo6VmVydGV4QnVmZmVyOTo6
c2V0QnVmZmVyU2l6ZSk6CisrICAgICAgICAocng6OlZlcnRleEJ1ZmZlcjk6OmRpc2NhcmQpOgor
KyAgICAgICAgKHJ4OjpWZXJ0ZXhCdWZmZXI5OjpnZXRCdWZmZXIpOgorKyAgICAgICAgKHJ4OjpW
ZXJ0ZXhCdWZmZXI5Ojppbml0aWFsaXplVHJhbnNsYXRpb25zKToKKysgICAgICAgIChyeDo6VmVy
dGV4QnVmZmVyOTo6dHlwZUluZGV4KToKKysgICAgICAgIChyeDo6VmVydGV4QnVmZmVyOTo6Zm9y
bWF0Q29udmVydGVyKToKKysgICAgICAgIChyeDo6VmVydGV4QnVmZmVyOTo6c3BhY2VSZXF1aXJl
ZCk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvVmVydGV4QnVmZmVyOS5oOiBB
ZGRlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9WZXJ0ZXhEYXRhTWFuYWdl
ci5jcHA6IEFkZGVkLgorKyAgICAgICAgKHJ4OjplbGVtZW50c0luQnVmZmVyKToKKysgICAgICAg
IChyeDo6VmVydGV4RGF0YU1hbmFnZXI6OlZlcnRleERhdGFNYW5hZ2VyKToKKysgICAgICAgIChy
eDo6VmVydGV4RGF0YU1hbmFnZXI6On5WZXJ0ZXhEYXRhTWFuYWdlcik6CisrICAgICAgICAocng6
OmRpcmVjdFN0b3JhZ2VQb3NzaWJsZSk6CisrICAgICAgICAocng6OlZlcnRleERhdGFNYW5hZ2Vy
OjpwcmVwYXJlVmVydGV4RGF0YSk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIv
VmVydGV4RGF0YU1hbmFnZXIuaDogQWRkZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVu
ZGVyZXIvVmVydGV4RGVjbGFyYXRpb25DYWNoZS5jcHA6IEFkZGVkLgorKyAgICAgICAgKHJ4OjpW
ZXJ0ZXhEZWNsYXJhdGlvbkNhY2hlOjpWZXJ0ZXhEZWNsYXJhdGlvbkNhY2hlKToKKysgICAgICAg
IChyeDo6VmVydGV4RGVjbGFyYXRpb25DYWNoZTo6flZlcnRleERlY2xhcmF0aW9uQ2FjaGUpOgor
KyAgICAgICAgKHJ4OjpWZXJ0ZXhEZWNsYXJhdGlvbkNhY2hlOjphcHBseURlY2xhcmF0aW9uKToK
KysgICAgICAgIChyeDo6VmVydGV4RGVjbGFyYXRpb25DYWNoZTo6bWFya1N0YXRlRGlydHkpOgor
KyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL1ZlcnRleERlY2xhcmF0aW9uQ2FjaGUu
aDogQWRkZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvZ2VuZXJhdGVtaXAu
aDogQWRkZWQuCisrICAgICAgICAocng6Okw4OjphdmVyYWdlKToKKysgICAgICAgIChyeDo6QThM
ODo6YXZlcmFnZSk6CisrICAgICAgICAocng6OkE4UjhHOEI4OjphdmVyYWdlKToKKysgICAgICAg
IChyeDo6QTE2QjE2RzE2UjE2Rjo6YXZlcmFnZSk6CisrICAgICAgICAocng6OlIxNkY6OmF2ZXJh
Z2UpOgorKyAgICAgICAgKHJ4OjpSMTZHMTZGOjphdmVyYWdlKToKKysgICAgICAgIChyeDo6QTMy
QjMyRzMyUjMyRjo6YXZlcmFnZSk6CisrICAgICAgICAocng6OlIzMkY6OmF2ZXJhZ2UpOgorKyAg
ICAgICAgKHJ4OjpSMzJHMzJGOjphdmVyYWdlKToKKysgICAgICAgIChyeDo6UjMyRzMyQjMyRjo6
YXZlcmFnZSk6CisrICAgICAgICAocng6OkdlbmVyYXRlTWlwKToKKysgICAgICAgICogc3JjL2xp
YkdMRVN2Mi9yZW5kZXJlci9yZW5kZXJlcjExX3V0aWxzLmNwcDogQWRkZWQuCisrICAgICAgICAo
Z2xfZDNkMTE6OkNvbnZlcnRCbGVuZEZ1bmMpOgorKyAgICAgICAgKGdsX2QzZDExOjpDb252ZXJ0
QmxlbmRPcCk6CisrICAgICAgICAoZ2xfZDNkMTE6OkNvbnZlcnRDb2xvck1hc2spOgorKyAgICAg
ICAgKGdsX2QzZDExOjpDb252ZXJ0Q3VsbE1vZGUpOgorKyAgICAgICAgKGdsX2QzZDExOjpDb252
ZXJ0Q29tcGFyaXNvbik6CisrICAgICAgICAoZ2xfZDNkMTE6OkNvbnZlcnREZXB0aE1hc2spOgor
KyAgICAgICAgKGdsX2QzZDExOjpDb252ZXJ0U3RlbmNpbE1hc2spOgorKyAgICAgICAgKGdsX2Qz
ZDExOjpDb252ZXJ0U3RlbmNpbE9wKToKKysgICAgICAgIChnbF9kM2QxMTo6Q29udmVydEZpbHRl
cik6CisrICAgICAgICAoZ2xfZDNkMTE6OkNvbnZlcnRUZXh0dXJlV3JhcCk6CisrICAgICAgICAo
Z2xfZDNkMTE6OkNvbnZlcnRNaW5MT0QpOgorKyAgICAgICAgKGdsX2QzZDExOjpDb252ZXJ0TWF4
TE9EKToKKysgICAgICAgIChkM2QxMV9nbDo6Q29udmVydEJhY2tCdWZmZXJGb3JtYXQpOgorKyAg
ICAgICAgKGQzZDExX2dsOjpDb252ZXJ0RGVwdGhTdGVuY2lsRm9ybWF0KToKKysgICAgICAgIChk
M2QxMV9nbDo6Q29udmVydFJlbmRlcmJ1ZmZlckZvcm1hdCk6CisrICAgICAgICAoZDNkMTFfZ2w6
OkNvbnZlcnRUZXh0dXJlSW50ZXJuYWxGb3JtYXQpOgorKyAgICAgICAgKGdsX2QzZDExOjpDb252
ZXJ0UmVuZGVyYnVmZmVyRm9ybWF0KToKKysgICAgICAgIChnbF9kM2QxMTo6Q29udmVydFRleHR1
cmVGb3JtYXQpOgorKyAgICAgICAgKGQzZDExOjpTZXRQb3NpdGlvblRleENvb3JkVmVydGV4KToK
KysgICAgICAgIChkM2QxMTo6U2V0UG9zaXRpb25EZXB0aENvbG9yVmVydGV4KToKKysgICAgICAg
IChkM2QxMTo6Q29tcHV0ZVBpeGVsU2l6ZUJpdHMpOgorKyAgICAgICAgKGQzZDExOjpDb21wdXRl
QmxvY2tTaXplQml0cyk6CisrICAgICAgICAoZDNkMTE6OklzQ29tcHJlc3NlZCk6CisrICAgICAg
ICAoZDNkMTE6OkdldFRleHR1cmVGb3JtYXREaW1lbnNpb25BbGlnbm1lbnQpOgorKyAgICAgICAg
KGQzZDExOjpJc0RlcHRoU3RlbmNpbEZvcm1hdCk6CisrICAgICAgICAoZDNkMTE6OkdldERlcHRo
VGV4dHVyZUZvcm1hdCk6CisrICAgICAgICAoZDNkMTE6OkdldERlcHRoU2hhZGVyUmVzb3VyY2VG
b3JtYXQpOgorKyAgICAgICAgKGQzZDExOjpTZXREZWJ1Z05hbWUpOgorKyAgICAgICAgKiBzcmMv
bGliR0xFU3YyL3JlbmRlcmVyL3JlbmRlcmVyMTFfdXRpbHMuaDogQWRkZWQuCisrICAgICAgICAo
ZDNkMTE6OmlzRGV2aWNlTG9zdEVycm9yKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5k
ZXJlci9yZW5kZXJlcjlfdXRpbHMuY3BwOiBBZGRlZC4KKysgICAgICAgIChnbF9kM2Q5OjpDb252
ZXJ0Q29tcGFyaXNvbik6CisrICAgICAgICAoZ2xfZDNkOTo6Q29udmVydENvbG9yKToKKysgICAg
ICAgIChnbF9kM2Q5OjpDb252ZXJ0QmxlbmRGdW5jKToKKysgICAgICAgIChnbF9kM2Q5OjpDb252
ZXJ0QmxlbmRPcCk6CisrICAgICAgICAoZ2xfZDNkOTo6Q29udmVydFN0ZW5jaWxPcCk6CisrICAg
ICAgICAoZ2xfZDNkOTo6Q29udmVydFRleHR1cmVXcmFwKToKKysgICAgICAgIChnbF9kM2Q5OjpD
b252ZXJ0Q3VsbE1vZGUpOgorKyAgICAgICAgKGdsX2QzZDk6OkNvbnZlcnRDdWJlRmFjZSk6Cisr
ICAgICAgICAoZ2xfZDNkOTo6Q29udmVydENvbG9yTWFzayk6CisrICAgICAgICAoZ2xfZDNkOTo6
Q29udmVydE1hZ0ZpbHRlcik6CisrICAgICAgICAoZ2xfZDNkOTo6Q29udmVydE1pbkZpbHRlcik6
CisrICAgICAgICAoZ2xfZDNkOTo6Q29udmVydFJlbmRlcmJ1ZmZlckZvcm1hdCk6CisrICAgICAg
ICAoZ2xfZDNkOTo6R2V0TXVsdGlzYW1wbGVUeXBlRnJvbVNhbXBsZXMpOgorKyAgICAgICAgKGQz
ZDlfZ2w6OkdldFN0ZW5jaWxTaXplKToKKysgICAgICAgIChkM2Q5X2dsOjpHZXRBbHBoYVNpemUp
OgorKyAgICAgICAgKGQzZDlfZ2w6OkdldFNhbXBsZXNGcm9tTXVsdGlzYW1wbGVUeXBlKToKKysg
ICAgICAgIChkM2Q5X2dsOjpJc0Zvcm1hdENoYW5uZWxFcXVpdmFsZW50KToKKysgICAgICAgIChk
M2Q5X2dsOjpDb252ZXJ0QmFja0J1ZmZlckZvcm1hdCk6CisrICAgICAgICAoZDNkOV9nbDo6Q29u
dmVydERlcHRoU3RlbmNpbEZvcm1hdCk6CisrICAgICAgICAoZDNkOV9nbDo6Q29udmVydFJlbmRl
clRhcmdldEZvcm1hdCk6CisrICAgICAgICAoZDNkOV9nbDo6R2V0RXF1aXZhbGVudEZvcm1hdCk6
CisrICAgICAgICAoZDNkOTo6SXNDb21wcmVzc2VkRm9ybWF0KToKKysgICAgICAgIChkM2Q5OjpD
b21wdXRlUm93U2l6ZSk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvcmVuZGVy
ZXI5X3V0aWxzLmg6IEFkZGVkLgorKyAgICAgICAgKGQzZDk6OmlzRGV2aWNlTG9zdEVycm9yKToK
KysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9zaGFkZXJzOiBBZGRlZC4KKysgICAg
ICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9zaGFkZXJzL0JsaXQucHM6IEFkZGVkLgorKyAg
ICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL3NoYWRlcnMvQmxpdC52czogQWRkZWQuCisr
ICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvc2hhZGVycy9DbGVhcjExLmhsc2w6IEFk
ZGVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL3NoYWRlcnMvUGFzc3Rocm91
Z2gxMS5obHNsOiBBZGRlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9zaGFk
ZXJzL2NvbXBpbGVkOiBBZGRlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9z
aGFkZXJzL2NvbXBpbGVkL2NsZWFyMTF2cy5oOiBBZGRlZC4KKysgICAgICAgICogc3JjL2xpYkdM
RVN2Mi9yZW5kZXJlci9zaGFkZXJzL2NvbXBpbGVkL2NsZWFybXVsdGlwbGUxMXBzLmg6IEFkZGVk
LgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL3NoYWRlcnMvY29tcGlsZWQvY2xl
YXJzaW5nbGUxMXBzLmg6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVy
L3NoYWRlcnMvY29tcGlsZWQvY29tcG9uZW50bWFza3BzLmg6IEFkZGVkLgorKyAgICAgICAgKiBz
cmMvbGliR0xFU3YyL3JlbmRlcmVyL3NoYWRlcnMvY29tcGlsZWQvZmxpcHl2cy5oOiBBZGRlZC4K
KysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9zaGFkZXJzL2NvbXBpbGVkL2x1bWlu
YW5jZXBzLmg6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL3NoYWRl
cnMvY29tcGlsZWQvcGFzc3Rocm91Z2gxMXZzLmg6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGli
R0xFU3YyL3JlbmRlcmVyL3NoYWRlcnMvY29tcGlsZWQvcGFzc3Rocm91Z2hsdW0xMXBzLmg6IEFk
ZGVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL3NoYWRlcnMvY29tcGlsZWQv
cGFzc3Rocm91Z2hsdW1hbHBoYTExcHMuaDogQWRkZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVT
djIvcmVuZGVyZXIvc2hhZGVycy9jb21waWxlZC9wYXNzdGhyb3VnaHBzLmg6IEFkZGVkLgorKyAg
ICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL3NoYWRlcnMvY29tcGlsZWQvcGFzc3Rocm91
Z2hyZ2IxMXBzLmg6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3JlbmRlcmVyL3No
YWRlcnMvY29tcGlsZWQvcGFzc3Rocm91Z2hyZ2JhMTFwcy5oOiBBZGRlZC4KKysgICAgICAgICog
c3JjL2xpYkdMRVN2Mi9yZW5kZXJlci9zaGFkZXJzL2NvbXBpbGVkL3N0YW5kYXJkdnMuaDogQWRk
ZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvc2hhZGVycy9nZW5lcmF0ZV9z
aGFkZXJzLmJhdDogQWRkZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvcmVuZGVyZXIvdmVy
dGV4Y29udmVyc2lvbi5oOiBBZGRlZC4KKysgICAgICAgIChyeDo6SWRlbnRpdHk6OmNvbnZlcnQp
OgorKyAgICAgICAgKHJ4OjpDYXN0Ojpjb252ZXJ0KToKKysgICAgICAgIChyeDo6Tm9ybWFsaXpl
Ojpjb252ZXJ0KToKKysgICAgICAgIChyeDo6Rml4ZWRUb0Zsb2F0Ojpjb252ZXJ0KToKKysgICAg
ICAgIChyeDo6U2ltcGxlRGVmYXVsdFZhbHVlczo6emVybyk6CisrICAgICAgICAocng6OlNpbXBs
ZURlZmF1bHRWYWx1ZXM6Om9uZSk6CisrICAgICAgICAocng6Ok5vcm1hbGl6ZWREZWZhdWx0VmFs
dWVzOjp6ZXJvKToKKysgICAgICAgIChyeDo6Tm9ybWFsaXplZERlZmF1bHRWYWx1ZXM6Om9uZSk6
CisrICAgICAgICAocng6OlZlcnRleERhdGFDb252ZXJ0ZXI6OmNvbnZlcnRBcnJheSk6CisrICAg
ICAgICAocng6OlZlcnRleERhdGFDb252ZXJ0ZXI6OnBvaW50ZXJBZGRCeXRlcyk6CisrICAgICAg
ICAocng6OlZlcnRleERhdGFDb252ZXJ0ZXI6OmNvcHlDb21wb25lbnQpOgorKyAgICAgICAgKiBz
cmMvbGliR0xFU3YyL3Jlc291cmNlLmg6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3Yy
L3V0aWxpdGllcy5jcHA6IEFkZGVkLgorKyAgICAgICAgKGdsOjpVbmlmb3JtQ29tcG9uZW50Q291
bnQpOgorKyAgICAgICAgKGdsOjpVbmlmb3JtQ29tcG9uZW50VHlwZSk6CisrICAgICAgICAoZ2w6
OlVuaWZvcm1Db21wb25lbnRTaXplKToKKysgICAgICAgIChnbDo6VW5pZm9ybUludGVybmFsU2l6
ZSk6CisrICAgICAgICAoZ2w6OlVuaWZvcm1FeHRlcm5hbFNpemUpOgorKyAgICAgICAgKGdsOjpW
YXJpYWJsZVJvd0NvdW50KToKKysgICAgICAgIChnbDo6VmFyaWFibGVDb2x1bW5Db3VudCk6Cisr
ICAgICAgICAoZ2w6OkFsbG9jYXRlRmlyc3RGcmVlQml0cyk6CisrICAgICAgICAoZ2w6OkNvbXB1
dGVQaXRjaCk6CisrICAgICAgICAoZ2w6OkNvbXB1dGVDb21wcmVzc2VkUGl0Y2gpOgorKyAgICAg
ICAgKGdsOjpDb21wdXRlQ29tcHJlc3NlZFNpemUpOgorKyAgICAgICAgKGdsOjpJc0NvbXByZXNz
ZWQpOgorKyAgICAgICAgKGdsOjpJc0RlcHRoVGV4dHVyZSk6CisrICAgICAgICAoZ2w6OklzU3Rl
bmNpbFRleHR1cmUpOgorKyAgICAgICAgKGdsOjpNYWtlVmFsaWRTaXplKToKKysgICAgICAgIChn
bDo6Q29tcHV0ZVBpeGVsU2l6ZSk6CisrICAgICAgICAoZ2w6OklzQ3ViZW1hcFRleHR1cmVUYXJn
ZXQpOgorKyAgICAgICAgKGdsOjpJc0ludGVybmFsVGV4dHVyZVRhcmdldCk6CisrICAgICAgICAo
Z2w6OkNvbnZlcnRTaXplZEludGVybmFsRm9ybWF0KToKKysgICAgICAgIChnbDo6RXh0cmFjdEZv
cm1hdCk6CisrICAgICAgICAoZ2w6OkV4dHJhY3RUeXBlKToKKysgICAgICAgIChnbDo6SXNDb2xv
clJlbmRlcmFibGUpOgorKyAgICAgICAgKGdsOjpJc0RlcHRoUmVuZGVyYWJsZSk6CisrICAgICAg
ICAoZ2w6OklzU3RlbmNpbFJlbmRlcmFibGUpOgorKyAgICAgICAgKGdsOjpJc0Zsb2F0MzJGb3Jt
YXQpOgorKyAgICAgICAgKGdsOjpJc0Zsb2F0MTZGb3JtYXQpOgorKyAgICAgICAgKGdsOjpHZXRB
bHBoYVNpemUpOgorKyAgICAgICAgKGdsOjpHZXRSZWRTaXplKToKKysgICAgICAgIChnbDo6R2V0
R3JlZW5TaXplKToKKysgICAgICAgIChnbDo6R2V0Qmx1ZVNpemUpOgorKyAgICAgICAgKGdsOjpH
ZXREZXB0aFNpemUpOgorKyAgICAgICAgKGdsOjpHZXRTdGVuY2lsU2l6ZSk6CisrICAgICAgICAo
Z2w6OklzVHJpYW5nbGVNb2RlKToKKysgICAgICAgIChnZXRUZW1wUGF0aCk6CisrICAgICAgICAo
d3JpdGVGaWxlKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi91dGlsaXRpZXMuaDogQWRkZWQu
CisrICAgICAgICAqIHNyYy90aGlyZF9wYXJ0eS9tdXJtdXJoYXNoOiBBZGRlZC4KKysgICAgICAg
ICogc3JjL3RoaXJkX3BhcnR5L211cm11cmhhc2gvTElDRU5TRTogQWRkZWQuCisrICAgICAgICAq
IHNyYy90aGlyZF9wYXJ0eS9tdXJtdXJoYXNoL011cm11ckhhc2gzLmNwcDogQWRkZWQsIHJlcGxh
Y2VkIHRhYnMgd2l0aCBzcGFjZXMuCisrICAgICAgICAocm90bDMyKToKKysgICAgICAgIChyb3Rs
NjQpOgorKyAgICAgICAgKGdldGJsb2NrKToKKysgICAgICAgIChmbWl4KToKKysgICAgICAgIChN
dXJtdXJIYXNoM194ODZfMzIpOgorKyAgICAgICAgKE11cm11ckhhc2gzX3g4Nl8xMjgpOgorKyAg
ICAgICAgKE11cm11ckhhc2gzX3g2NF8xMjgpOgorKyAgICAgICAgKiBzcmMvdGhpcmRfcGFydHkv
bXVybXVyaGFzaC9NdXJtdXJIYXNoMy5oOiBBZGRlZCwgcmVwbGFjZWQgdGFicyB3aXRoIHNwYWNl
cy4KKysKKysyMDEzLTA3LTIwICBEZWFuIEphY2tzb24gIDxkaW5vQGFwcGxlLmNvbT4KKysKKysg
ICAgICAgIFVwZGF0ZWQgQU5HTEUgaXMgbGVha2luZyBsaWtlIGEgc2lldmUKKysgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTg5MzkKKysKKysgICAgICAg
IFJvbGxvdXQgMTUyODYzLCByMTUyODIxLCByMTUyOTI5IGFuZCByMTUyNzU1LgorKworKyAgICAg
ICAgKiBBTkdMRS5wbGlzdDoKKysgICAgICAgICogQU5HTEUueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvajoKKysgICAgICAgICogRGVyaXZlZFNvdXJjZXMubWFrZTogUmVtb3ZlZC4KKysgICAgICAg
ICogR05VbWFrZWZpbGUuYW06CisrICAgICAgICAqIFRhcmdldC5wcmk6CisrICAgICAgICAqIGlu
Y2x1ZGUvR0xTTEFORy9TaGFkZXJMYW5nLmg6CisrICAgICAgICAqIHNyYy9jb21waWxlci9CYXNl
VHlwZXMuaDoKKysgICAgICAgIChnZXRRdWFsaWZpZXJTdHJpbmcpOgorKyAgICAgICAgKiBzcmMv
Y29tcGlsZXIvQ29tbW9uLmg6CisrICAgICAgICAoRW5jb2RlU291cmNlTG9jKToKKysgICAgICAg
IChEZWNvZGVTb3VyY2VMb2MpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvQ29tcGlsZXIuY3Bw
OgorKyAgICAgICAgKFRDb21waWxlcjo6VENvbXBpbGVyKToKKysgICAgICAgIChUQ29tcGlsZXI6
OkluaXQpOgorKyAgICAgICAgKFRDb21waWxlcjo6Y29tcGlsZSk6CisrICAgICAgICAoVENvbXBp
bGVyOjpkZXRlY3RSZWN1cnNpb24pOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvQ29uc3RhbnRV
bmlvbi5oOgorKyAgICAgICAgKENvbnN0YW50VW5pb246OkNvbnN0YW50VW5pb24pOgorKyAgICAg
ICAgKiBzcmMvY29tcGlsZXIvRGV0ZWN0Q2FsbERlcHRoLmNwcDogUmVtb3ZlZC4KKysgICAgICAg
ICogc3JjL2NvbXBpbGVyL0RldGVjdFJlY3Vyc2lvbi5jcHA6IEFkZGVkLgorKyAgICAgICAgKERl
dGVjdFJlY3Vyc2lvbjo6RnVuY3Rpb25Ob2RlOjpGdW5jdGlvbk5vZGUpOgorKyAgICAgICAgKERl
dGVjdFJlY3Vyc2lvbjo6RnVuY3Rpb25Ob2RlOjpnZXROYW1lKToKKysgICAgICAgIChEZXRlY3RS
ZWN1cnNpb246OkZ1bmN0aW9uTm9kZTo6YWRkQ2FsbGVlKToKKysgICAgICAgIChEZXRlY3RSZWN1
cnNpb246OkZ1bmN0aW9uTm9kZTo6ZGV0ZWN0UmVjdXJzaW9uKToKKysgICAgICAgIChEZXRlY3RS
ZWN1cnNpb246OkRldGVjdFJlY3Vyc2lvbik6CisrICAgICAgICAoRGV0ZWN0UmVjdXJzaW9uOjp+
RGV0ZWN0UmVjdXJzaW9uKToKKysgICAgICAgIChEZXRlY3RSZWN1cnNpb246OnZpc2l0QWdncmVn
YXRlKToKKysgICAgICAgIChEZXRlY3RSZWN1cnNpb246OmRldGVjdFJlY3Vyc2lvbik6CisrICAg
ICAgICAoRGV0ZWN0UmVjdXJzaW9uOjpmaW5kRnVuY3Rpb25CeU5hbWUpOgorKyAgICAgICAgKiBz
cmMvY29tcGlsZXIvRGV0ZWN0UmVjdXJzaW9uLmg6IFJlbmFtZWQgZnJvbSBTb3VyY2UvVGhpcmRQ
YXJ0eS9BTkdMRS9zcmMvY29tcGlsZXIvRGV0ZWN0Q2FsbERlcHRoLmguCisrICAgICAgICAqIHNy
Yy9jb21waWxlci9EaWFnbm9zdGljcy5jcHA6CisrICAgICAgICAoVERpYWdub3N0aWNzOjp3cml0
ZUluZm8pOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvRm9yTG9vcFVucm9sbC5jcHA6CisrICAg
ICAgICAoRm9yTG9vcFVucm9sbDo6ZXZhbHVhdGVJbnRDb25zdGFudCk6CisrICAgICAgICAqIHNy
Yy9jb21waWxlci9JbmZvU2luay5jcHA6CisrICAgICAgICAoVEluZm9TaW5rQmFzZTo6cHJlZml4
KToKKysgICAgICAgIChUSW5mb1NpbmtCYXNlOjpsb2NhdGlvbik6CisrICAgICAgICAoVEluZm9T
aW5rQmFzZTo6bWVzc2FnZSk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9JbmZvU2luay5oOgor
KyAgICAgICAgKiBzcmMvY29tcGlsZXIvSW5pdGlhbGl6ZS5jcHA6CisrICAgICAgICAoQnVpbHRJ
bkZ1bmN0aW9uc0NvbW1vbik6CisrICAgICAgICAoQnVpbHRJbkZ1bmN0aW9uc1ZlcnRleCk6Cisr
ICAgICAgICAoVEJ1aWx0SW5zOjppbml0aWFsaXplKToKKysgICAgICAgIChJZGVudGlmeUJ1aWx0
SW5zKToKKysgICAgICAgIChJbml0RXh0ZW5zaW9uQmVoYXZpb3IpOgorKyAgICAgICAgKiBzcmMv
Y29tcGlsZXIvSW50ZXJtZWRpYXRlLmNwcDoKKysgICAgICAgIChUSW50ZXJtZWRpYXRlOjphZGRT
eW1ib2wpOgorKyAgICAgICAgKFRJbnRlcm1lZGlhdGU6OmFkZEJpbmFyeU1hdGgpOgorKyAgICAg
ICAgKFRJbnRlcm1lZGlhdGU6OmFkZEFzc2lnbik6CisrICAgICAgICAoVEludGVybWVkaWF0ZTo6
YWRkSW5kZXgpOgorKyAgICAgICAgKFRJbnRlcm1lZGlhdGU6OmFkZFVuYXJ5TWF0aCk6CisrICAg
ICAgICAoVEludGVybWVkaWF0ZTo6c2V0QWdncmVnYXRlT3BlcmF0b3IpOgorKyAgICAgICAgKFRJ
bnRlcm1lZGlhdGU6OmFkZENvbnZlcnNpb24pOgorKyAgICAgICAgKFRJbnRlcm1lZGlhdGU6Omdy
b3dBZ2dyZWdhdGUpOgorKyAgICAgICAgKFRJbnRlcm1lZGlhdGU6Om1ha2VBZ2dyZWdhdGUpOgor
KyAgICAgICAgKFRJbnRlcm1lZGlhdGU6OmFkZFNlbGVjdGlvbik6CisrICAgICAgICAoVEludGVy
bWVkaWF0ZTo6YWRkQ29tbWEpOgorKyAgICAgICAgKFRJbnRlcm1lZGlhdGU6OmFkZENvbnN0YW50
VW5pb24pOgorKyAgICAgICAgKFRJbnRlcm1lZGlhdGU6OmFkZFN3aXp6bGUpOgorKyAgICAgICAg
KFRJbnRlcm1lZGlhdGU6OmFkZExvb3ApOgorKyAgICAgICAgKFRJbnRlcm1lZGlhdGU6OmFkZEJy
YW5jaCk6CisrICAgICAgICAoVEludGVybVVuYXJ5Ojpwcm9tb3RlKToKKysgICAgICAgIChUSW50
ZXJtQmluYXJ5Ojpwcm9tb3RlKToKKysgICAgICAgIChDb21wYXJlU3RydWN0KToKKysgICAgICAg
IChDb21wYXJlU3RydWN0dXJlKToKKysgICAgICAgIChUSW50ZXJtQ29uc3RhbnRVbmlvbjo6Zm9s
ZCk6CisrICAgICAgICAoVEludGVybWVkaWF0ZTo6cHJvbW90ZUNvbnN0YW50VW5pb24pOgorKyAg
ICAgICAgKiBzcmMvY29tcGlsZXIvT3V0cHV0R0xTTC5jcHA6CisrICAgICAgICAoVE91dHB1dEdM
U0w6OndyaXRlVmFyaWFibGVQcmVjaXNpb24pOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvT3V0
cHV0R0xTTC5oOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvT3V0cHV0R0xTTEJhc2UuY3BwOgor
KyAgICAgICAgKFRPdXRwdXRHTFNMQmFzZTo6d3JpdGVWYXJpYWJsZVR5cGUpOgorKyAgICAgICAg
KFRPdXRwdXRHTFNMQmFzZTo6d3JpdGVDb25zdGFudFVuaW9uKToKKysgICAgICAgIChUT3V0cHV0
R0xTTEJhc2U6OnZpc2l0QmluYXJ5KToKKysgICAgICAgIChUT3V0cHV0R0xTTEJhc2U6OnZpc2l0
QWdncmVnYXRlKToKKysgICAgICAgIChUT3V0cHV0R0xTTEJhc2U6OmdldFR5cGVOYW1lKToKKysg
ICAgICAgIChUT3V0cHV0R0xTTEJhc2U6Omhhc2hGdW5jdGlvbk5hbWUpOgorKyAgICAgICAgKiBz
cmMvY29tcGlsZXIvT3V0cHV0R0xTTEJhc2UuaDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL091
dHB1dEhMU0wuY3BwOgorKyAgICAgICAgKHNoOjpPdXRwdXRITFNMOjpPdXRwdXRITFNMKToKKysg
ICAgICAgIChzaDo6T3V0cHV0SExTTDo6aGVhZGVyKToKKysgICAgICAgIChzaDo6T3V0cHV0SExT
TDo6dmlzaXRTeW1ib2wpOgorKyAgICAgICAgKHNoOjpPdXRwdXRITFNMOjp2aXNpdEJpbmFyeSk6
CisrICAgICAgICAoc2g6Ok91dHB1dEhMU0w6OnZpc2l0QWdncmVnYXRlKToKKysgICAgICAgIChz
aDo6T3V0cHV0SExTTDo6dmlzaXRTZWxlY3Rpb24pOgorKyAgICAgICAgKHNoOjpPdXRwdXRITFNM
Ojp2aXNpdExvb3ApOgorKyAgICAgICAgKHNoOjpPdXRwdXRITFNMOjpoYW5kbGVFeGNlc3NpdmVM
b29wKToKKysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6dHlwZVN0cmluZyk6CisrICAgICAgICAo
c2g6Ok91dHB1dEhMU0w6OmluaXRpYWxpemVyKToKKysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6
YWRkQ29uc3RydWN0b3IpOgorKyAgICAgICAgKHNoOjpPdXRwdXRITFNMOjp3cml0ZUNvbnN0YW50
VW5pb24pOgorKyAgICAgICAgKHNoOjpPdXRwdXRITFNMOjpkZWNvcmF0ZUZpZWxkKToKKysgICAg
ICAgICogc3JjL2NvbXBpbGVyL091dHB1dEhMU0wuaDoKKysgICAgICAgICogc3JjL2NvbXBpbGVy
L1BhcnNlSGVscGVyLmNwcDoKKysgICAgICAgIChUUGFyc2VDb250ZXh0OjpwYXJzZVZlY3RvckZp
ZWxkcyk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6cGFyc2VNYXRyaXhGaWVsZHMpOgorKyAg
ICAgICAgKFRQYXJzZUNvbnRleHQ6OmVycm9yKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0Ojp3
YXJuaW5nKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0Ojphc3NpZ25FcnJvcik6CisrICAgICAg
ICAoVFBhcnNlQ29udGV4dDo6dW5hcnlPcEVycm9yKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0
OjpiaW5hcnlPcEVycm9yKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0OjpwcmVjaXNpb25FcnJv
ckNoZWNrKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0OjpsVmFsdWVFcnJvckNoZWNrKToKKysg
ICAgICAgIChUUGFyc2VDb250ZXh0OjpnbG9iYWxFcnJvckNoZWNrKToKKysgICAgICAgIChUUGFy
c2VDb250ZXh0OjpyZXNlcnZlZEVycm9yQ2hlY2spOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6
OmNvbnN0cnVjdG9yRXJyb3JDaGVjayk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6dm9pZEVy
cm9yQ2hlY2spOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OmJvb2xFcnJvckNoZWNrKToKKysg
ICAgICAgIChUUGFyc2VDb250ZXh0OjpzYW1wbGVyRXJyb3JDaGVjayk6CisrICAgICAgICAoVFBh
cnNlQ29udGV4dDo6c3RydWN0UXVhbGlmaWVyRXJyb3JDaGVjayk6CisrICAgICAgICAoVFBhcnNl
Q29udGV4dDo6cGFyYW1ldGVyU2FtcGxlckVycm9yQ2hlY2spOgorKyAgICAgICAgKFRQYXJzZUNv
bnRleHQ6OmNvbnRhaW5zU2FtcGxlcik6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6YXJyYXlT
aXplRXJyb3JDaGVjayk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6YXJyYXlRdWFsaWZpZXJF
cnJvckNoZWNrKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0OjphcnJheVR5cGVFcnJvckNoZWNr
KToKKysgICAgICAgIChUUGFyc2VDb250ZXh0OjphcnJheUVycm9yQ2hlY2spOgorKyAgICAgICAg
KFRQYXJzZUNvbnRleHQ6OmFycmF5U2V0TWF4U2l6ZSk6CisrICAgICAgICAoVFBhcnNlQ29udGV4
dDo6bm9uSW5pdENvbnN0RXJyb3JDaGVjayk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6bm9u
SW5pdEVycm9yQ2hlY2spOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OnBhcmFtRXJyb3JDaGVj
ayk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6ZXh0ZW5zaW9uRXJyb3JDaGVjayk6CisrICAg
ICAgICAoVFBhcnNlQ29udGV4dDo6aGFuZGxlRXh0ZW5zaW9uRGlyZWN0aXZlKToKKysgICAgICAg
IChUUGFyc2VDb250ZXh0OjpoYW5kbGVQcmFnbWFEaXJlY3RpdmUpOgorKyAgICAgICAgKFRQYXJz
ZUNvbnRleHQ6OmZpbmRGdW5jdGlvbik6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6ZXhlY3V0
ZUluaXRpYWxpemVyKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0OjphZGRDb25zdHJ1Y3Rvcik6
CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6Y29uc3RydWN0QnVpbHRJbik6CisrICAgICAgICAo
VFBhcnNlQ29udGV4dDo6Y29uc3RydWN0U3RydWN0KToKKysgICAgICAgIChUUGFyc2VDb250ZXh0
OjphZGRDb25zdFZlY3Rvck5vZGUpOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OmFkZENvbnN0
TWF0cml4Tm9kZSk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6YWRkQ29uc3RBcnJheU5vZGUp
OgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OmFkZENvbnN0U3RydWN0KToKKysgICAgICAgIChU
UGFyc2VDb250ZXh0OjplbnRlclN0cnVjdERlY2xhcmF0aW9uKToKKysgICAgICAgIChUUGFyc2VD
b250ZXh0OjpzdHJ1Y3ROZXN0aW5nRXJyb3JDaGVjayk6CisrICAgICAgICAqIHNyYy9jb21waWxl
ci9QYXJzZUhlbHBlci5oOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OlRQYXJzZUNvbnRleHQp
OgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OnByYWdtYSk6CisrICAgICAgICAqIHNyYy9jb21w
aWxlci9Qb29sQWxsb2MuY3BwOgorKyAgICAgICAgKFRQb29sQWxsb2NhdG9yOjphbGxvY2F0ZSk6
CisrICAgICAgICAqIHNyYy9jb21waWxlci9TaEhhbmRsZS5oOgorKyAgICAgICAgKiBzcmMvY29t
cGlsZXIvU2hhZGVyTGFuZy5jcHA6CisrICAgICAgICAoU2hJbml0QnVpbHRJblJlc291cmNlcyk6
CisrICAgICAgICAqIHNyYy9jb21waWxlci9TeW1ib2xUYWJsZS5jcHA6CisrICAgICAgICAoVFR5
cGU6OlRUeXBlKToKKysgICAgICAgIChUVHlwZTo6YnVpbGRNYW5nbGVkTmFtZSk6CisrICAgICAg
ICAoVFR5cGU6OmdldFN0cnVjdFNpemUpOgorKyAgICAgICAgKFRUeXBlOjpjb21wdXRlRGVlcGVz
dFN0cnVjdE5lc3RpbmcpOgorKyAgICAgICAgKFRUeXBlOjppc1N0cnVjdHVyZUNvbnRhaW5pbmdB
cnJheXMpOgorKyAgICAgICAgKFRTeW1ib2xUYWJsZUxldmVsOjpyZWxhdGVUb0V4dGVuc2lvbik6
CisrICAgICAgICAoVFN5bWJvbDo6VFN5bWJvbCk6CisrICAgICAgICAoVFZhcmlhYmxlOjpUVmFy
aWFibGUpOgorKyAgICAgICAgKFRWYXJpYWJsZTo6Y2xvbmUpOgorKyAgICAgICAgKFRGdW5jdGlv
bjo6VEZ1bmN0aW9uKToKKysgICAgICAgIChURnVuY3Rpb246OmNsb25lKToKKysgICAgICAgIChU
U3ltYm9sVGFibGVMZXZlbDo6Y2xvbmUpOgorKyAgICAgICAgKFRTeW1ib2xUYWJsZTo6Y29weVRh
YmxlKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL1N5bWJvbFRhYmxlLmg6CisrICAgICAgICAo
VFZhcmlhYmxlOjpUVmFyaWFibGUpOgorKyAgICAgICAgKFRWYXJpYWJsZTo6dXBkYXRlQXJyYXlJ
bmZvcm1hdGlvblR5cGUpOgorKyAgICAgICAgKFRWYXJpYWJsZTo6Z2V0QXJyYXlJbmZvcm1hdGlv
blR5cGUpOgorKyAgICAgICAgKFRQYXJhbWV0ZXI6OmNvcHlQYXJhbSk6CisrICAgICAgICAoVEZ1
bmN0aW9uOjpyZWxhdGVUb0V4dGVuc2lvbik6CisrICAgICAgICAoVEZ1bmN0aW9uOjpnZXRFeHRl
bnNpb24pOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvVHlwZXMuaDoKKysgICAgICAgIChOZXdQ
b29sVFR5cGVMaXN0KToKKysgICAgICAgIChUVHlwZTo6VFR5cGUpOgorKyAgICAgICAgKFRUeXBl
Ojpjb3B5VHlwZSk6CisrICAgICAgICAoVFR5cGU6OmNsb25lKToKKysgICAgICAgIChUVHlwZTo6
Z2V0T2JqZWN0U2l6ZSk6CisrICAgICAgICAoVFR5cGU6OmdldE1heEFycmF5U2l6ZSk6CisrICAg
ICAgICAoVFR5cGU6OnNldE1heEFycmF5U2l6ZSk6CisrICAgICAgICAoVFR5cGU6OmNsZWFyQXJy
YXluZXNzKToKKysgICAgICAgIChUVHlwZTo6c2V0QXJyYXlJbmZvcm1hdGlvblR5cGUpOgorKyAg
ICAgICAgKFRUeXBlOjpnZXRBcnJheUluZm9ybWF0aW9uVHlwZSk6CisrICAgICAgICAoVFR5cGU6
OmdldFN0cnVjdCk6CisrICAgICAgICAoVFR5cGU6OnNldFN0cnVjdCk6CisrICAgICAgICAoVFR5
cGU6OmdldFR5cGVOYW1lKToKKysgICAgICAgIChUVHlwZTo6c2V0VHlwZU5hbWUpOgorKyAgICAg
ICAgKFRUeXBlOjppc0ZpZWxkKToKKysgICAgICAgIChUVHlwZTo6Z2V0RmllbGROYW1lKToKKysg
ICAgICAgIChUVHlwZTo6c2V0RmllbGROYW1lKToKKysgICAgICAgIChUVHlwZTo6Z2V0TWFuZ2xl
ZE5hbWUpOgorKyAgICAgICAgKFRUeXBlOjpnZXREZWVwZXN0U3RydWN0TmVzdGluZyk6CisrICAg
ICAgICAoVFB1YmxpY1R5cGU6OnNldEJhc2ljKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL1Zh
cmlhYmxlSW5mby5jcHA6CisrICAgICAgICAoZ2V0VXNlckRlZmluZWRWYXJpYWJsZUluZm8pOgor
KyAgICAgICAgKiBzcmMvY29tcGlsZXIvYnVpbHRpbl9zeW1ib2xfdGFibGUuY3BwOiBSZW1vdmVk
LgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvYnVpbHRpbl9zeW1ib2xfdGFibGUuaDogUmVtb3Zl
ZC4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL2J1aWx0aW5fc3ltYm9scy5qc29uOiBSZW1vdmVk
LgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvZ2VuZXJhdGVfYnVpbHRpbl9zeW1ib2xfdGFibGUu
cHk6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9jb21waWxlci9nbHNsYW5nLmw6CisrICAgICAg
ICAqIHNyYy9jb21waWxlci9nbHNsYW5nLnk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9nbHNs
YW5nX2xleC5jcHA6CisrICAgICAgICAoeXlfZ2V0X3ByZXZpb3VzX3N0YXRlKToKKysgICAgICAg
ICh5eV90cnlfTlVMX3RyYW5zKToKKysgICAgICAgICh5eV9wdXNoX3N0YXRlKToKKysgICAgICAg
ICh5eV9wb3Bfc3RhdGUpOgorKyAgICAgICAgKHl5X3RvcF9zdGF0ZSk6CisrICAgICAgICAoc3Ry
aW5nX2lucHV0KToKKysgICAgICAgIChjaGVja190eXBlKToKKysgICAgICAgIChyZXNlcnZlZF93
b3JkKToKKysgICAgICAgICh5eWVycm9yKToKKysgICAgICAgIChnbHNsYW5nX3NjYW4pOgorKyAg
ICAgICAgKiBzcmMvY29tcGlsZXIvZ2xzbGFuZ190YWIuY3BwOgorKyAgICAgICAgKiBzcmMvY29t
cGlsZXIvZ2xzbGFuZ190YWIuaDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL2ludGVybU91dC5j
cHA6CisrICAgICAgICAoVE91dHB1dFRyYXZlcnNlcjo6dmlzaXRVbmFyeSk6CisrICAgICAgICAo
VE91dHB1dFRyYXZlcnNlcjo6dmlzaXRBZ2dyZWdhdGUpOgorKyAgICAgICAgKFRPdXRwdXRUcmF2
ZXJzZXI6OnZpc2l0Q29uc3RhbnRVbmlvbik6CisrICAgICAgICAqIHNyYy9jb21waWxlci9pbnRl
cm1lZGlhdGUuaDoKKysgICAgICAgIChUSW50ZXJtTm9kZTo6VEludGVybU5vZGUpOgorKyAgICAg
ICAgKFRJbnRlcm1Ob2RlOjpnZXRMaW5lKToKKysgICAgICAgIChUSW50ZXJtTm9kZTo6c2V0TGlu
ZSk6CisrICAgICAgICAoVEludGVybU5vZGU6On5USW50ZXJtTm9kZSk6CisrICAgICAgICAoVElu
dGVybUNvbnN0YW50VW5pb246OnNldFVuaW9uQXJyYXlQb2ludGVyKToKKysgICAgICAgIChUSW50
ZXJtQWdncmVnYXRlOjpUSW50ZXJtQWdncmVnYXRlKToKKysgICAgICAgIChUSW50ZXJtQWdncmVn
YXRlOjpzZXRFbmRMaW5lKToKKysgICAgICAgIChUSW50ZXJtQWdncmVnYXRlOjpnZXRFbmRMaW5l
KToKKysgICAgICAgIChUSW50ZXJtVHJhdmVyc2VyOjpUSW50ZXJtVHJhdmVyc2VyKToKKysgICAg
ICAgIChUSW50ZXJtVHJhdmVyc2VyOjppbmNyZW1lbnREZXB0aCk6CisrICAgICAgICAqIHNyYy9j
b21waWxlci9sb2NhbGludGVybWVkaWF0ZS5oOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvcGFy
c2VDb25zdC5jcHA6CisrICAgICAgICAoVENvbnN0VHJhdmVyc2VyOjp2aXNpdFN5bWJvbCk6Cisr
ICAgICAgICAoVENvbnN0VHJhdmVyc2VyOjp2aXNpdEJpbmFyeSk6CisrICAgICAgICAoVENvbnN0
VHJhdmVyc2VyOjp2aXNpdFVuYXJ5KToKKysgICAgICAgIChUQ29uc3RUcmF2ZXJzZXI6OnZpc2l0
QWdncmVnYXRlKToKKysgICAgICAgIChUQ29uc3RUcmF2ZXJzZXI6OnZpc2l0U2VsZWN0aW9uKToK
KysgICAgICAgIChUQ29uc3RUcmF2ZXJzZXI6OnZpc2l0Q29uc3RhbnRVbmlvbik6CisrICAgICAg
ICAoVENvbnN0VHJhdmVyc2VyOjp2aXNpdExvb3ApOgorKyAgICAgICAgKFRDb25zdFRyYXZlcnNl
cjo6dmlzaXRCcmFuY2gpOgorKyAgICAgICAgKFRJbnRlcm1lZGlhdGU6OnBhcnNlQ29uc3RUcmVl
KToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RpbWluZy9SZXN0cmljdFZlcnRleFNoYWRlclRp
bWluZy5jcHA6CisrICAgICAgICAoUmVzdHJpY3RWZXJ0ZXhTaGFkZXJUaW1pbmc6OnZpc2l0U3lt
Ym9sKToKKysgICAgICAgICogc3JjL2xpYkVHTC9Db25maWcuY3BwOiBSZW1vdmVkLgorKyAgICAg
ICAgKiBzcmMvbGliRUdML0NvbmZpZy5oOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvbGliRUdM
L0Rpc3BsYXkuY3BwOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvbGliRUdML0Rpc3BsYXkuaDog
UmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xpYkVHTC9SRUFETUU6IEFkZGVkLgorKyAgICAgICAg
KiBzcmMvbGliRUdML1NoYWRlckNhY2hlLmg6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9saWJF
R0wvU3VyZmFjZS5jcHA6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9saWJFR0wvU3VyZmFjZS5o
OiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvbGliRUdML2xpYkVHTC5jcHA6IFJlbW92ZWQuCisr
ICAgICAgICAqIHNyYy9saWJFR0wvbGliRUdMLmRlZjogUmVtb3ZlZC4KKysgICAgICAgICogc3Jj
L2xpYkVHTC9saWJFR0wucmM6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9saWJFR0wvbGliRUdM
LnZjeHByb2o6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9saWJFR0wvbGliRUdMLnZjeHByb2ou
ZmlsdGVyczogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xpYkVHTC9tYWluLmNwcDogUmVtb3Zl
ZC4KKysgICAgICAgICogc3JjL2xpYkVHTC9tYWluLmg6IFJlbW92ZWQuCisrICAgICAgICAqIHNy
Yy9saWJFR0wvcmVzb3VyY2UuaDogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9C
aW5hcnlTdHJlYW0uaDogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9CbGl0LmNw
cDogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9CbGl0Lmg6IFJlbW92ZWQuCisr
ICAgICAgICAqIHNyYy9saWJHTEVTdjIvQnVmZmVyLmNwcDogUmVtb3ZlZC4KKysgICAgICAgICog
c3JjL2xpYkdMRVN2Mi9CdWZmZXIuaDogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2
Mi9Db250ZXh0LmNwcDogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9Db250ZXh0
Lmg6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvRDNEQ29uc3RhbnRUYWJsZS5j
cHA6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvRDNEQ29uc3RhbnRUYWJsZS5o
OiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL0ZlbmNlLmNwcDogUmVtb3ZlZC4K
KysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9GZW5jZS5oOiBSZW1vdmVkLgorKyAgICAgICAgKiBz
cmMvbGliR0xFU3YyL0Zsb2F0MTZUb0Zsb2F0MzIuY3BwOiBSZW1vdmVkLgorKyAgICAgICAgKiBz
cmMvbGliR0xFU3YyL0Zsb2F0MTZUb0Zsb2F0MzIucHk6IFJlbW92ZWQuCisrICAgICAgICAqIHNy
Yy9saWJHTEVTdjIvRnJhbWVidWZmZXIuY3BwOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvbGli
R0xFU3YyL0ZyYW1lYnVmZmVyLmg6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIv
SGFuZGxlQWxsb2NhdG9yLmNwcDogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9I
YW5kbGVBbGxvY2F0b3IuaDogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9JbmRl
eERhdGFNYW5hZ2VyLmNwcDogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9JbmRl
eERhdGFNYW5hZ2VyLmg6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvUHJvZ3Jh
bS5jcHA6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvUHJvZ3JhbS5oOiBSZW1v
dmVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1Byb2dyYW1CaW5hcnkuY3BwOiBSZW1vdmVk
LgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1Byb2dyYW1CaW5hcnkuaDogUmVtb3ZlZC4KKysg
ICAgICAgICogc3JjL2xpYkdMRVN2Mi9RdWVyeS5jcHA6IFJlbW92ZWQuCisrICAgICAgICAqIHNy
Yy9saWJHTEVTdjIvUXVlcnkuaDogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9S
RUFETUU6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1JlbmRlcmJ1ZmZlci5jcHA6
IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvUmVuZGVyYnVmZmVyLmg6IFJlbW92
ZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvUmVzb3VyY2VNYW5hZ2VyLmNwcDogUmVtb3Zl
ZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9SZXNvdXJjZU1hbmFnZXIuaDogUmVtb3ZlZC4K
KysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9TaGFkZXIuY3BwOiBSZW1vdmVkLgorKyAgICAgICAg
KiBzcmMvbGliR0xFU3YyL1NoYWRlci5oOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvbGliR0xF
U3YyL1RleHR1cmUuY3BwOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1RleHR1
cmUuaDogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9UZXh0dXJlU1NFMi5jcHA6
IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvVmVydGV4RGF0YU1hbmFnZXIuY3Bw
OiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1ZlcnRleERhdGFNYW5hZ2VyLmg6
IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvbGliR0xFU3YyLmNwcDogUmVtb3Zl
ZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9saWJHTEVTdjIuZGVmOiBSZW1vdmVkLgorKyAg
ICAgICAgKiBzcmMvbGliR0xFU3YyL2xpYkdMRVN2Mi5yYzogUmVtb3ZlZC4KKysgICAgICAgICog
c3JjL2xpYkdMRVN2Mi9saWJHTEVTdjIudmN4cHJvajogUmVtb3ZlZC4KKysgICAgICAgICogc3Jj
L2xpYkdMRVN2Mi9saWJHTEVTdjIudmN4cHJvai5maWx0ZXJzOiBSZW1vdmVkLgorKyAgICAgICAg
KiBzcmMvbGliR0xFU3YyL21haW4uY3BwOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvbGliR0xF
U3YyL21haW4uaDogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9tYXRodXRpbC5o
OiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3Jlc291cmNlLmg6IFJlbW92ZWQu
CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvc2hhZGVycy9CbGl0LnBzOiBSZW1vdmVkLgorKyAg
ICAgICAgKiBzcmMvbGliR0xFU3YyL3NoYWRlcnMvQmxpdC52czogUmVtb3ZlZC4KKysgICAgICAg
ICogc3JjL2xpYkdMRVN2Mi9zaGFkZXJzL2NvbXBvbmVudG1hc2twcy5oOiBSZW1vdmVkLgorKyAg
ICAgICAgKiBzcmMvbGliR0xFU3YyL3NoYWRlcnMvZmxpcHl2cy5oOiBSZW1vdmVkLgorKyAgICAg
ICAgKiBzcmMvbGliR0xFU3YyL3NoYWRlcnMvZ2VuZXJhdGVfc2hhZGVycy5iYXQ6IFJlbW92ZWQu
CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvc2hhZGVycy9sdW1pbmFuY2Vwcy5oOiBSZW1vdmVk
LgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3NoYWRlcnMvcGFzc3Rocm91Z2hwcy5oOiBSZW1v
dmVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3NoYWRlcnMvc3RhbmRhcmR2cy5oOiBSZW1v
dmVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3V0aWxpdGllcy5jcHA6IFJlbW92ZWQuCisr
ICAgICAgICAqIHNyYy9saWJHTEVTdjIvdXRpbGl0aWVzLmg6IFJlbW92ZWQuCisrICAgICAgICAq
IHNyYy9saWJHTEVTdjIvdmVydGV4Y29udmVyc2lvbi5oOiBSZW1vdmVkLgorKworKzIwMTMtMDct
MTkgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5AYXBwbGUuY29tPgorKworKyAgICAg
ICAgR2VuZXJhdGUgZGVyaXZlZCBmaWxlcyBpbiBBTkdMRSBhdCBidWlsZCB0aW1lIHJhdGhlciB0
aGFuIHdoZW4gdXBkYXRpbmcgZnJvbSB1cHN0cmVhbS4KKysgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTg4NzIKKysKKysgICAgICAgIFJldmlld2VkIGJ5
IE1hcmsgUm93ZS4KKysKKysgICAgICAgICogQU5HTEUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJv
ajogTWFkZSBEZXJpdmVkIFNvdXJjZXMgdGFyZ2V0IHdoaWNoIGNhbGxzIERlcml2ZWRTb3VyY2Vz
Lm1ha2UsCisrICAgICAgICBtb3ZlZCBnZW5lcmF0ZWQgZmlsZXMgaW50byBEZXJpdmVkIFNvdXJj
ZXMgZ3JvdXAuCisrICAgICAgICAqIERlcml2ZWRTb3VyY2VzLm1ha2U6IEFkZGVkLgorKworKzIw
MTMtMDctMTggIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5AYXBwbGUuY29tPgorKwor
KyAgICAgICAgQWRkZWQgcHJldmlvdXNseSB1bmluY2x1ZGVkIGZpbGVzIGZyb20gQU5HTEUgcjI0
MjYgd2l0aCB0aGVzZSBleGNlcHRpb25zOgorKyAgICAgICAgTm8gZ3lwIGZpbGVzIGFyZSBpbmNs
dWRlZC4gIE5vIFdlYktpdCBwb3J0cyB1c2UgdGhlbS4KKysgICAgICAgIEFOR0xFLnNsbiBpcyBu
b3QgaW5jbHVkZWQuICBJIHdpbGwgbm90IHVzZSB0aGF0LgorKyAgICAgICAgdHJhbnNsYXRvcl9j
b21tb24gYW5kIHRyYW5zbGF0b3JfaGxzbCBwcm9qZWN0cyBhbmQgZmlsdGVycyBhcmUgbm90IGlu
Y2x1ZGVkLgorKyAgICAgICAgSSB3aWxsIG5lZWQgdG8gbWFrZSBhIGN1c3RvbWl6ZWQgdHJhbnNs
YXRvciAgcHJvamVjdCB0aGF0IHVzZXMgdGhlIEdMU0wgdHJhbnNsYXRvciBpbnN0ZWFkIG9mIHRo
ZSBITFNMLgorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTExODgzMworKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGVhbiBKYWNrc29uLgorKworKyAgICAg
ICAgKiBzcmMvY29tcGlsZXIvYnVpbHRpbl9zeW1ib2xzLmpzb246IEFkZGVkLgorKyAgICAgICAg
KiBzcmMvY29tcGlsZXIvZ2VuZXJhdGVfYnVpbHRpbl9zeW1ib2xfdGFibGUucHk6IEFkZGVkLgor
KyAgICAgICAgKHBhcnNlQnVpbHRpbik6CisrICAgICAgICAqIHNyYy9saWJFR0w6IFJlcGxhY2Vk
LgorKyAgICAgICAgKiBzcmMvbGliRUdML0NvbmZpZy5jcHA6IEFkZGVkLgorKyAgICAgICAgKGVn
bDo6Q29uZmlnOjpDb25maWcpOgorKyAgICAgICAgKGVnbDo6Q29uZmlnOjpzZXREZWZhdWx0cyk6
CisrICAgICAgICAoZWdsOjpDb25maWc6OnNldCk6CisrICAgICAgICAoZWdsOjpDb25maWc6Omdl
dEhhbmRsZSk6CisrICAgICAgICAoZWdsOjpTb3J0Q29uZmlnOjpTb3J0Q29uZmlnKToKKysgICAg
ICAgIChlZ2w6OlNvcnRDb25maWc6OnNjYW5Gb3JXYW50ZWRDb21wb25lbnRzKToKKysgICAgICAg
IChlZ2w6OlNvcnRDb25maWc6OndhbnRlZENvbXBvbmVudHNTaXplKToKKysgICAgICAgIChlZ2w6
OlNvcnRDb25maWc6Om9wZXJhdG9yKCkpOgorKyAgICAgICAgKGVnbDo6Q29uZmlnU2V0OjpDb25m
aWdTZXQpOgorKyAgICAgICAgKGVnbDo6Q29uZmlnU2V0OjphZGQpOgorKyAgICAgICAgKGVnbDo6
Q29uZmlnU2V0OjpzaXplKToKKysgICAgICAgIChlZ2w6OkNvbmZpZ1NldDo6Z2V0Q29uZmlncyk6
CisrICAgICAgICAoZWdsOjpDb25maWdTZXQ6OmdldCk6CisrICAgICAgICAqIHNyYy9saWJFR0wv
Q29uZmlnLmg6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGliRUdML0Rpc3BsYXkuY3BwOiBBZGRl
ZC4KKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OmdldERpc3BsYXkpOgorKyAgICAgICAgKGVnbDo6
RGlzcGxheTo6RGlzcGxheSk6CisrICAgICAgICAoZWdsOjpEaXNwbGF5Ojp+RGlzcGxheSk6Cisr
ICAgICAgICAoZWdsOjpEaXNwbGF5Ojppbml0aWFsaXplKToKKysgICAgICAgIChlZ2w6OkRpc3Bs
YXk6OnRlcm1pbmF0ZSk6CisrICAgICAgICAoZWdsOjpEaXNwbGF5OjpzdGFydFNjZW5lKToKKysg
ICAgICAgIChlZ2w6OkRpc3BsYXk6OmVuZFNjZW5lKToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6
OmdldENvbmZpZ3MpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6Z2V0Q29uZmlnQXR0cmliKToK
KysgICAgICAgIChlZ2w6OkRpc3BsYXk6OmNyZWF0ZURldmljZSk6CisrICAgICAgICAoZWdsOjpE
aXNwbGF5Ojppbml0aWFsaXplRGV2aWNlKToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OnJlc2V0
RGV2aWNlKToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OmNyZWF0ZVdpbmRvd1N1cmZhY2UpOgor
KyAgICAgICAgKGVnbDo6RGlzcGxheTo6Y3JlYXRlT2Zmc2NyZWVuU3VyZmFjZSk6CisrICAgICAg
ICAoZWdsOjpEaXNwbGF5OjpjcmVhdGVDb250ZXh0KToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6
OnJlc3RvcmVMb3N0RGV2aWNlKToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OmRlc3Ryb3lTdXJm
YWNlKToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OmRlc3Ryb3lDb250ZXh0KToKKysgICAgICAg
IChlZ2w6OkRpc3BsYXk6Om5vdGlmeURldmljZUxvc3QpOgorKyAgICAgICAgKGVnbDo6RGlzcGxh
eTo6aXNEZXZpY2VMb3N0KToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OmlzSW5pdGlhbGl6ZWQp
OgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6aXNWYWxpZENvbmZpZyk6CisrICAgICAgICAoZWds
OjpEaXNwbGF5Ojppc1ZhbGlkQ29udGV4dCk6CisrICAgICAgICAoZWdsOjpEaXNwbGF5Ojppc1Zh
bGlkU3VyZmFjZSk6CisrICAgICAgICAoZWdsOjpEaXNwbGF5OjpoYXNFeGlzdGluZ1dpbmRvd1N1
cmZhY2UpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6Z2V0TWluU3dhcEludGVydmFsKToKKysg
ICAgICAgIChlZ2w6OkRpc3BsYXk6OmdldE1heFN3YXBJbnRlcnZhbCk6CisrICAgICAgICAoZWds
OjpEaXNwbGF5OjpnZXREZXZpY2UpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6Z2V0RGV2aWNl
Q2Fwcyk6CisrICAgICAgICAoZWdsOjpEaXNwbGF5OjpnZXRBZGFwdGVySWRlbnRpZmllcik6Cisr
ICAgICAgICAoZWdsOjpEaXNwbGF5Ojp0ZXN0RGV2aWNlTG9zdCk6CisrICAgICAgICAoZWdsOjpE
aXNwbGF5Ojp0ZXN0RGV2aWNlUmVzZXR0YWJsZSk6CisrICAgICAgICAoZWdsOjpEaXNwbGF5Ojpz
eW5jKToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OmFsbG9jYXRlRXZlbnRRdWVyeSk6CisrICAg
ICAgICAoZWdsOjpEaXNwbGF5OjpmcmVlRXZlbnRRdWVyeSk6CisrICAgICAgICAoZWdsOjpEaXNw
bGF5OjpnZXRNdWx0aVNhbXBsZVN1cHBvcnQpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6Z2V0
RFhUMVRleHR1cmVTdXBwb3J0KToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OmdldERYVDNUZXh0
dXJlU3VwcG9ydCk6CisrICAgICAgICAoZWdsOjpEaXNwbGF5OjpnZXREWFQ1VGV4dHVyZVN1cHBv
cnQpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6Z2V0RGVwdGhUZXh0dXJlU3VwcG9ydCk6Cisr
ICAgICAgICAoZWdsOjpEaXNwbGF5OjpnZXRGbG9hdDMyVGV4dHVyZVN1cHBvcnQpOgorKyAgICAg
ICAgKGVnbDo6RGlzcGxheTo6Z2V0RmxvYXQxNlRleHR1cmVTdXBwb3J0KToKKysgICAgICAgIChl
Z2w6OkRpc3BsYXk6OmdldEx1bWluYW5jZVRleHR1cmVTdXBwb3J0KToKKysgICAgICAgIChlZ2w6
OkRpc3BsYXk6OmdldEx1bWluYW5jZUFscGhhVGV4dHVyZVN1cHBvcnQpOgorKyAgICAgICAgKGVn
bDo6RGlzcGxheTo6Z2V0VGV4dHVyZUZpbHRlckFuaXNvdHJvcHlTdXBwb3J0KToKKysgICAgICAg
IChlZ2w6OkRpc3BsYXk6OmdldEJ1ZmZlclBvb2wpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6
Z2V0VGV4dHVyZVBvb2wpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6Z2V0RXZlbnRRdWVyeVN1
cHBvcnQpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6Z2V0RGVmYXVsdFByZXNlbnRQYXJhbWV0
ZXJzKToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OmluaXRFeHRlbnNpb25TdHJpbmcpOgorKyAg
ICAgICAgKGVnbDo6RGlzcGxheTo6Z2V0RXh0ZW5zaW9uU3RyaW5nKToKKysgICAgICAgIChlZ2w6
OkRpc3BsYXk6OmluaXRWZW5kb3JTdHJpbmcpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6Z2V0
VmVuZG9yU3RyaW5nKToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OnNoYXJlSGFuZGxlU3VwcG9y
dGVkKToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OmNyZWF0ZVZlcnRleFNoYWRlcik6CisrICAg
ICAgICAoZWdsOjpEaXNwbGF5Ojpjb21waWxlU2hhZGVyU291cmNlKToKKysgICAgICAgIChlZ2w6
OkRpc3BsYXk6OmNyZWF0ZVBpeGVsU2hhZGVyKToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6Omdl
dFZlcnRleFRleHR1cmVTdXBwb3J0KToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OmdldE5vblBv
d2VyMlRleHR1cmVTdXBwb3J0KToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OmdldE9jY2x1c2lv
blF1ZXJ5U3VwcG9ydCk6CisrICAgICAgICAoZWdsOjpEaXNwbGF5OjpnZXRJbnN0YW5jaW5nU3Vw
cG9ydCk6CisrICAgICAgICAqIHNyYy9saWJFR0wvRGlzcGxheS5oOiBBZGRlZC4KKysgICAgICAg
IChnZXRDb21wYXJhYmxlT1NWZXJzaW9uKToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OmlzRDNk
OUV4RGV2aWNlKToKKysgICAgICAgICogc3JjL2xpYkVHTC9SRUFETUU6IFJlbW92ZWQuCisrICAg
ICAgICAqIHNyYy9saWJFR0wvU2hhZGVyQ2FjaGUuaDogQWRkZWQuCisrICAgICAgICAoZWdsOjpT
aGFkZXJDYWNoZTo6U2hhZGVyQ2FjaGUpOgorKyAgICAgICAgKGVnbDo6U2hhZGVyQ2FjaGU6On5T
aGFkZXJDYWNoZSk6CisrICAgICAgICAoZWdsOjpTaGFkZXJDYWNoZTo6aW5pdGlhbGl6ZSk6Cisr
ICAgICAgICAoZWdsOjpTaGFkZXJDYWNoZTo6Y3JlYXRlKToKKysgICAgICAgIChlZ2w6OlNoYWRl
ckNhY2hlOjpjbGVhcik6CisrICAgICAgICAoZWdsOjpTaGFkZXJDYWNoZTo6Y3JlYXRlU2hhZGVy
KToKKysgICAgICAgICogc3JjL2xpYkVHTC9TdXJmYWNlLmNwcDogQWRkZWQuCisrICAgICAgICAo
ZWdsOjpTdXJmYWNlOjpTdXJmYWNlKToKKysgICAgICAgIChlZ2w6OlN1cmZhY2U6On5TdXJmYWNl
KToKKysgICAgICAgIChlZ2w6OlN1cmZhY2U6OmluaXRpYWxpemUpOgorKyAgICAgICAgKGVnbDo6
U3VyZmFjZTo6cmVsZWFzZSk6CisrICAgICAgICAoZWdsOjpTdXJmYWNlOjpyZXNldFN3YXBDaGFp
bik6CisrICAgICAgICAoZWdsOjpTdXJmYWNlOjpzd2FwUmVjdCk6CisrICAgICAgICAoZWdsOjpT
dXJmYWNlOjpnZXRXaW5kb3dIYW5kbGUpOgorKyAgICAgICAgKGVnbDo6U3VyZmFjZVdpbmRvd1By
b2MpOgorKyAgICAgICAgKGVnbDo6U3VyZmFjZTo6c3ViY2xhc3NXaW5kb3cpOgorKyAgICAgICAg
KGVnbDo6U3VyZmFjZTo6dW5zdWJjbGFzc1dpbmRvdyk6CisrICAgICAgICAoZWdsOjpTdXJmYWNl
OjpjaGVja0Zvck91dE9mRGF0ZVN3YXBDaGFpbik6CisrICAgICAgICAoZWdsOjpTdXJmYWNlOjpj
b252ZXJ0SW50ZXJ2YWwpOgorKyAgICAgICAgKGVnbDo6U3VyZmFjZTo6c3dhcCk6CisrICAgICAg
ICAoZWdsOjpTdXJmYWNlOjpwb3N0U3ViQnVmZmVyKToKKysgICAgICAgIChlZ2w6OlN1cmZhY2U6
OmdldFdpZHRoKToKKysgICAgICAgIChlZ2w6OlN1cmZhY2U6OmdldEhlaWdodCk6CisrICAgICAg
ICAoZWdsOjpTdXJmYWNlOjppc1Bvc3RTdWJCdWZmZXJTdXBwb3J0ZWQpOgorKyAgICAgICAgKGVn
bDo6U3VyZmFjZTo6Z2V0UmVuZGVyVGFyZ2V0KToKKysgICAgICAgIChlZ2w6OlN1cmZhY2U6Omdl
dERlcHRoU3RlbmNpbCk6CisrICAgICAgICAoZWdsOjpTdXJmYWNlOjpnZXRPZmZzY3JlZW5UZXh0
dXJlKToKKysgICAgICAgIChlZ2w6OlN1cmZhY2U6OnNldFN3YXBJbnRlcnZhbCk6CisrICAgICAg
ICAoZWdsOjpTdXJmYWNlOjpnZXRUZXh0dXJlRm9ybWF0KToKKysgICAgICAgIChlZ2w6OlN1cmZh
Y2U6OmdldFRleHR1cmVUYXJnZXQpOgorKyAgICAgICAgKGVnbDo6U3VyZmFjZTo6c2V0Qm91bmRU
ZXh0dXJlKToKKysgICAgICAgIChlZ2w6OlN1cmZhY2U6OmdldEJvdW5kVGV4dHVyZSk6CisrICAg
ICAgICAoZWdsOjpTdXJmYWNlOjpnZXRGb3JtYXQpOgorKyAgICAgICAgKiBzcmMvbGliRUdML1N1
cmZhY2UuaDogQWRkZWQuCisrICAgICAgICAoZWdsOjpTdXJmYWNlOjpnZXRTaGFyZUhhbmRsZSk6
CisrICAgICAgICAqIHNyYy9saWJFR0wvbGliRUdMLmNwcDogQWRkZWQuCisrICAgICAgICAodmFs
aWRhdGVEaXNwbGF5KToKKysgICAgICAgICh2YWxpZGF0ZUNvbmZpZyk6CisrICAgICAgICAodmFs
aWRhdGVDb250ZXh0KToKKysgICAgICAgICh2YWxpZGF0ZVN1cmZhY2UpOgorKyAgICAgICAgKiBz
cmMvbGliRUdML2xpYkVHTC5kZWY6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGliRUdML2xpYkVH
TC5yYzogQWRkZWQuCisrICAgICAgICAqIHNyYy9saWJFR0wvbGliRUdMLnZjeHByb2o6IEFkZGVk
LgorKyAgICAgICAgKiBzcmMvbGliRUdML2xpYkVHTC52Y3hwcm9qLmZpbHRlcnM6IEFkZGVkLgor
KyAgICAgICAgKiBzcmMvbGliRUdML21haW4uY3BwOiBBZGRlZC4KKysgICAgICAgIChEbGxNYWlu
KToKKysgICAgICAgIChlZ2w6OnNldEN1cnJlbnRFcnJvcik6CisrICAgICAgICAoZWdsOjpnZXRD
dXJyZW50RXJyb3IpOgorKyAgICAgICAgKGVnbDo6c2V0Q3VycmVudEFQSSk6CisrICAgICAgICAo
ZWdsOjpnZXRDdXJyZW50QVBJKToKKysgICAgICAgIChlZ2w6OnNldEN1cnJlbnREaXNwbGF5KToK
KysgICAgICAgIChlZ2w6OmdldEN1cnJlbnREaXNwbGF5KToKKysgICAgICAgIChlZ2w6OnNldEN1
cnJlbnREcmF3U3VyZmFjZSk6CisrICAgICAgICAoZWdsOjpnZXRDdXJyZW50RHJhd1N1cmZhY2Up
OgorKyAgICAgICAgKGVnbDo6c2V0Q3VycmVudFJlYWRTdXJmYWNlKToKKysgICAgICAgIChlZ2w6
OmdldEN1cnJlbnRSZWFkU3VyZmFjZSk6CisrICAgICAgICAoZXJyb3IpOgorKyAgICAgICAgKiBz
cmMvbGliRUdML21haW4uaDogQWRkZWQuCisrICAgICAgICAoZXJyb3IpOgorKyAgICAgICAgKHN1
Y2Nlc3MpOgorKyAgICAgICAgKiBzcmMvbGliRUdML3Jlc291cmNlLmg6IEFkZGVkLgorKyAgICAg
ICAgKiBzcmMvbGliR0xFU3YyOiBSZXBsYWNlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9C
aW5hcnlTdHJlYW0uaDogQWRkZWQuCisrICAgICAgICAoZ2w6OkJpbmFyeUlucHV0U3RyZWFtOjpC
aW5hcnlJbnB1dFN0cmVhbSk6CisrICAgICAgICAoZ2w6OkJpbmFyeUlucHV0U3RyZWFtOjpyZWFk
KToKKysgICAgICAgIChnbDo6QmluYXJ5SW5wdXRTdHJlYW06OnNraXApOgorKyAgICAgICAgKGds
OjpCaW5hcnlJbnB1dFN0cmVhbTo6b2Zmc2V0KToKKysgICAgICAgIChnbDo6QmluYXJ5SW5wdXRT
dHJlYW06OmVycm9yKToKKysgICAgICAgIChnbDo6QmluYXJ5SW5wdXRTdHJlYW06OmVuZE9mU3Ry
ZWFtKToKKysgICAgICAgIChnbDo6QmluYXJ5T3V0cHV0U3RyZWFtOjpCaW5hcnlPdXRwdXRTdHJl
YW0pOgorKyAgICAgICAgKGdsOjpCaW5hcnlPdXRwdXRTdHJlYW06OndyaXRlKToKKysgICAgICAg
IChnbDo6QmluYXJ5T3V0cHV0U3RyZWFtOjpsZW5ndGgpOgorKyAgICAgICAgKGdsOjpCaW5hcnlP
dXRwdXRTdHJlYW06OmRhdGEpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL0JsaXQuY3BwOiBB
ZGRlZC4KKysgICAgICAgIChnbDo6QmxpdDo6QmxpdCk6CisrICAgICAgICAoZ2w6OkJsaXQ6On5C
bGl0KToKKysgICAgICAgIChnbDo6QmxpdDo6aW5pdEdlb21ldHJ5KToKKysgICAgICAgIChnbDo6
QmxpdDo6c2V0U2hhZGVyKToKKysgICAgICAgIChnbDo6QmxpdDo6c2V0VmVydGV4U2hhZGVyKToK
KysgICAgICAgIChnbDo6QmxpdDo6c2V0UGl4ZWxTaGFkZXIpOgorKyAgICAgICAgKGdsOjpCbGl0
OjpnZXRTdXJmYWNlUmVjdCk6CisrICAgICAgICAoZ2w6OkJsaXQ6OmJveEZpbHRlcik6CisrICAg
ICAgICAoZ2w6OkJsaXQ6OmNvcHkpOgorKyAgICAgICAgKGdsOjpCbGl0Ojpmb3JtYXRDb252ZXJ0
KToKKysgICAgICAgIChnbDo6QmxpdDo6c2V0Rm9ybWF0Q29udmVydFNoYWRlcnMpOgorKyAgICAg
ICAgKGdsOjpCbGl0Ojpjb3B5U3VyZmFjZVRvVGV4dHVyZSk6CisrICAgICAgICAoZ2w6OkJsaXQ6
OnNldFZpZXdwb3J0KToKKysgICAgICAgIChnbDo6QmxpdDo6c2V0Q29tbW9uQmxpdFN0YXRlKToK
KysgICAgICAgIChnbDo6QmxpdDo6cmVuZGVyKToKKysgICAgICAgIChnbDo6QmxpdDo6c2F2ZVN0
YXRlKToKKysgICAgICAgIChnbDo6QmxpdDo6cmVzdG9yZVN0YXRlKToKKysgICAgICAgICogc3Jj
L2xpYkdMRVN2Mi9CbGl0Lmg6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL0J1ZmZl
ci5jcHA6IEFkZGVkLgorKyAgICAgICAgKGdsOjpCdWZmZXI6OkJ1ZmZlcik6CisrICAgICAgICAo
Z2w6OkJ1ZmZlcjo6fkJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkJ1ZmZlcjo6YnVmZmVyRGF0YSk6
CisrICAgICAgICAoZ2w6OkJ1ZmZlcjo6YnVmZmVyU3ViRGF0YSk6CisrICAgICAgICAoZ2w6OkJ1
ZmZlcjo6Z2V0U3RhdGljVmVydGV4QnVmZmVyKToKKysgICAgICAgIChnbDo6QnVmZmVyOjpnZXRT
dGF0aWNJbmRleEJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkJ1ZmZlcjo6aW52YWxpZGF0ZVN0YXRp
Y0RhdGEpOgorKyAgICAgICAgKGdsOjpCdWZmZXI6OnByb21vdGVTdGF0aWNVc2FnZSk6CisrICAg
ICAgICAqIHNyYy9saWJHTEVTdjIvQnVmZmVyLmg6IEFkZGVkLgorKyAgICAgICAgKGdsOjpCdWZm
ZXI6OmRhdGEpOgorKyAgICAgICAgKGdsOjpCdWZmZXI6OnNpemUpOgorKyAgICAgICAgKGdsOjpC
dWZmZXI6OnVzYWdlKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9Db250ZXh0LmNwcDogQWRk
ZWQuCisrICAgICAgICAoZ2w6Om1ha2VTdGF0aWNTdHJpbmcpOgorKyAgICAgICAgKGdsOjpDb250
ZXh0OjpDb250ZXh0KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6fkNvbnRleHQpOgorKyAgICAg
ICAgKGdsOjpDb250ZXh0OjptYWtlQ3VycmVudCk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6Om1h
cmtBbGxTdGF0ZURpcnR5KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6bWFya0R4VW5pZm9ybXNE
aXJ0eSk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6Om1hcmtDb250ZXh0TG9zdCk6CisrICAgICAg
ICAoZ2w6OkNvbnRleHQ6OmlzQ29udGV4dExvc3QpOgorKyAgICAgICAgKGdsOjpDb250ZXh0Ojpz
ZXRDbGVhckNvbG9yKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c2V0Q2xlYXJEZXB0aCk6Cisr
ICAgICAgICAoZ2w6OkNvbnRleHQ6OnNldENsZWFyU3RlbmNpbCk6CisrICAgICAgICAoZ2w6OkNv
bnRleHQ6OnNldEN1bGxGYWNlKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6aXNDdWxsRmFjZUVu
YWJsZWQpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzZXRDdWxsTW9kZSk6CisrICAgICAgICAo
Z2w6OkNvbnRleHQ6OnNldEZyb250RmFjZSk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnNldERl
cHRoVGVzdCk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmlzRGVwdGhUZXN0RW5hYmxlZCk6Cisr
ICAgICAgICAoZ2w6OkNvbnRleHQ6OnNldERlcHRoRnVuYyk6CisrICAgICAgICAoZ2w6OkNvbnRl
eHQ6OnNldERlcHRoUmFuZ2UpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzZXRCbGVuZCk6Cisr
ICAgICAgICAoZ2w6OkNvbnRleHQ6OmlzQmxlbmRFbmFibGVkKToKKysgICAgICAgIChnbDo6Q29u
dGV4dDo6c2V0QmxlbmRGYWN0b3JzKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c2V0QmxlbmRD
b2xvcik6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnNldEJsZW5kRXF1YXRpb24pOgorKyAgICAg
ICAgKGdsOjpDb250ZXh0OjpzZXRTdGVuY2lsVGVzdCk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6
OmlzU3RlbmNpbFRlc3RFbmFibGVkKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c2V0U3RlbmNp
bFBhcmFtcyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnNldFN0ZW5jaWxCYWNrUGFyYW1zKToK
KysgICAgICAgIChnbDo6Q29udGV4dDo6c2V0U3RlbmNpbFdyaXRlbWFzayk6CisrICAgICAgICAo
Z2w6OkNvbnRleHQ6OnNldFN0ZW5jaWxCYWNrV3JpdGVtYXNrKToKKysgICAgICAgIChnbDo6Q29u
dGV4dDo6c2V0U3RlbmNpbE9wZXJhdGlvbnMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzZXRT
dGVuY2lsQmFja09wZXJhdGlvbnMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzZXRQb2x5Z29u
T2Zmc2V0RmlsbCk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmlzUG9seWdvbk9mZnNldEZpbGxF
bmFibGVkKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c2V0UG9seWdvbk9mZnNldFBhcmFtcyk6
CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnNldFNhbXBsZUFscGhhVG9Db3ZlcmFnZSk6CisrICAg
ICAgICAoZ2w6OkNvbnRleHQ6OmlzU2FtcGxlQWxwaGFUb0NvdmVyYWdlRW5hYmxlZCk6CisrICAg
ICAgICAoZ2w6OkNvbnRleHQ6OnNldFNhbXBsZUNvdmVyYWdlKToKKysgICAgICAgIChnbDo6Q29u
dGV4dDo6aXNTYW1wbGVDb3ZlcmFnZUVuYWJsZWQpOgorKyAgICAgICAgKGdsOjpDb250ZXh0Ojpz
ZXRTYW1wbGVDb3ZlcmFnZVBhcmFtcyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnNldFNjaXNz
b3JUZXN0KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6aXNTY2lzc29yVGVzdEVuYWJsZWQpOgor
KyAgICAgICAgKGdsOjpDb250ZXh0OjpzZXREaXRoZXIpOgorKyAgICAgICAgKGdsOjpDb250ZXh0
Ojppc0RpdGhlckVuYWJsZWQpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzZXRMaW5lV2lkdGgp
OgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzZXRHZW5lcmF0ZU1pcG1hcEhpbnQpOgorKyAgICAg
ICAgKGdsOjpDb250ZXh0OjpzZXRGcmFnbWVudFNoYWRlckRlcml2YXRpdmVIaW50KToKKysgICAg
ICAgIChnbDo6Q29udGV4dDo6c2V0Vmlld3BvcnRQYXJhbXMpOgorKyAgICAgICAgKGdsOjpDb250
ZXh0OjpzZXRTY2lzc29yUGFyYW1zKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c2V0Q29sb3JN
YXNrKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c2V0RGVwdGhNYXNrKToKKysgICAgICAgIChn
bDo6Q29udGV4dDo6c2V0QWN0aXZlU2FtcGxlcik6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6Omdl
dFJlYWRGcmFtZWJ1ZmZlckhhbmRsZSk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmdldERyYXdG
cmFtZWJ1ZmZlckhhbmRsZSk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmdldFJlbmRlcmJ1ZmZl
ckhhbmRsZSk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmdldEFycmF5QnVmZmVySGFuZGxlKToK
KysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0QWN0aXZlUXVlcnkpOgorKyAgICAgICAgKGdsOjpD
b250ZXh0OjpzZXRFbmFibGVWZXJ0ZXhBdHRyaWJBcnJheSk6CisrICAgICAgICAoZ2w6OkNvbnRl
eHQ6OmdldFZlcnRleEF0dHJpYlN0YXRlKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c2V0VmVy
dGV4QXR0cmliU3RhdGUpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRWZXJ0ZXhBdHRyaWJQ
b2ludGVyKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0VmVydGV4QXR0cmlidXRlcyk6Cisr
ICAgICAgICAoZ2w6OkNvbnRleHQ6OnNldFBhY2tBbGlnbm1lbnQpOgorKyAgICAgICAgKGdsOjpD
b250ZXh0OjpnZXRQYWNrQWxpZ25tZW50KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c2V0VW5w
YWNrQWxpZ25tZW50KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0VW5wYWNrQWxpZ25tZW50
KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c2V0UGFja1JldmVyc2VSb3dPcmRlcik6CisrICAg
ICAgICAoZ2w6OkNvbnRleHQ6OmdldFBhY2tSZXZlcnNlUm93T3JkZXIpOgorKyAgICAgICAgKGds
OjpDb250ZXh0OjpjcmVhdGVCdWZmZXIpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpjcmVhdGVQ
cm9ncmFtKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Y3JlYXRlU2hhZGVyKToKKysgICAgICAg
IChnbDo6Q29udGV4dDo6Y3JlYXRlVGV4dHVyZSk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmNy
ZWF0ZVJlbmRlcmJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmNyZWF0ZUZyYW1lYnVm
ZmVyKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Y3JlYXRlRmVuY2UpOgorKyAgICAgICAgKGds
OjpDb250ZXh0OjpjcmVhdGVRdWVyeSk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmRlbGV0ZUJ1
ZmZlcik6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmRlbGV0ZVNoYWRlcik6CisrICAgICAgICAo
Z2w6OkNvbnRleHQ6OmRlbGV0ZVByb2dyYW0pOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpkZWxl
dGVUZXh0dXJlKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6ZGVsZXRlUmVuZGVyYnVmZmVyKToK
KysgICAgICAgIChnbDo6Q29udGV4dDo6ZGVsZXRlRnJhbWVidWZmZXIpOgorKyAgICAgICAgKGds
OjpDb250ZXh0OjpkZWxldGVGZW5jZSk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmRlbGV0ZVF1
ZXJ5KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0QnVmZmVyKToKKysgICAgICAgIChnbDo6
Q29udGV4dDo6Z2V0U2hhZGVyKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0UHJvZ3JhbSk6
CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmdldFRleHR1cmUpOgorKyAgICAgICAgKGdsOjpDb250
ZXh0OjpnZXRSZW5kZXJidWZmZXIpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRSZWFkRnJh
bWVidWZmZXIpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXREcmF3RnJhbWVidWZmZXIpOgor
KyAgICAgICAgKGdsOjpDb250ZXh0OjpiaW5kQXJyYXlCdWZmZXIpOgorKyAgICAgICAgKGdsOjpD
b250ZXh0OjpiaW5kRWxlbWVudEFycmF5QnVmZmVyKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6
YmluZFRleHR1cmUyRCk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmJpbmRUZXh0dXJlQ3ViZU1h
cCk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmJpbmRSZWFkRnJhbWVidWZmZXIpOgorKyAgICAg
ICAgKGdsOjpDb250ZXh0OjpiaW5kRHJhd0ZyYW1lYnVmZmVyKToKKysgICAgICAgIChnbDo6Q29u
dGV4dDo6YmluZFJlbmRlcmJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnVzZVByb2dy
YW0pOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpsaW5rUHJvZ3JhbSk6CisrICAgICAgICAoZ2w6
OkNvbnRleHQ6OnNldFByb2dyYW1CaW5hcnkpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpiZWdp
blF1ZXJ5KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6ZW5kUXVlcnkpOgorKyAgICAgICAgKGds
OjpDb250ZXh0OjpzZXRGcmFtZWJ1ZmZlclplcm8pOgorKyAgICAgICAgKGdsOjpDb250ZXh0Ojpz
ZXRSZW5kZXJidWZmZXJTdG9yYWdlKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0RnJhbWVi
dWZmZXIpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRGZW5jZSk6CisrICAgICAgICAoZ2w6
OkNvbnRleHQ6OmdldFF1ZXJ5KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0QXJyYXlCdWZm
ZXIpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRFbGVtZW50QXJyYXlCdWZmZXIpOgorKyAg
ICAgICAgKGdsOjpDb250ZXh0OjpnZXRDdXJyZW50UHJvZ3JhbUJpbmFyeSk6CisrICAgICAgICAo
Z2w6OkNvbnRleHQ6OmdldFRleHR1cmUyRCk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmdldFRl
eHR1cmVDdWJlTWFwKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0U2FtcGxlclRleHR1cmUp
OgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRCb29sZWFudik6CisrICAgICAgICAoZ2w6OkNv
bnRleHQ6OmdldEZsb2F0dik6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmdldEludGVnZXJ2KToK
KysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0UXVlcnlQYXJhbWV0ZXJJbmZvKToKKysgICAgICAg
IChnbDo6Q29udGV4dDo6YXBwbHlSZW5kZXJUYXJnZXQpOgorKyAgICAgICAgKGdsOjpDb250ZXh0
OjphcHBseVN0YXRlKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6YXBwbHlWZXJ0ZXhCdWZmZXIp
OgorKyAgICAgICAgKGdsOjpDb250ZXh0OjphcHBseUluZGV4QnVmZmVyKToKKysgICAgICAgIChn
bDo6Q29udGV4dDo6YXBwbHlTaGFkZXJzKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6YXBwbHlU
ZXh0dXJlcyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnJlYWRQaXhlbHMpOgorKyAgICAgICAg
KGdsOjpDb250ZXh0OjpjbGVhcik6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmRyYXdBcnJheXMp
OgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpkcmF3RWxlbWVudHMpOgorKyAgICAgICAgKGdsOjpD
b250ZXh0OjpzeW5jKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6ZHJhd0xpbmVMb29wKToKKysg
ICAgICAgIChnbDo6Q29udGV4dDo6cmVjb3JkSW52YWxpZEVudW0pOgorKyAgICAgICAgKGdsOjpD
b250ZXh0OjpyZWNvcmRJbnZhbGlkVmFsdWUpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpyZWNv
cmRJbnZhbGlkT3BlcmF0aW9uKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6cmVjb3JkT3V0T2ZN
ZW1vcnkpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpyZWNvcmRJbnZhbGlkRnJhbWVidWZmZXJP
cGVyYXRpb24pOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRFcnJvcik6CisrICAgICAgICAo
Z2w6OkNvbnRleHQ6OmdldFJlc2V0U3RhdHVzKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6aXNS
ZXNldE5vdGlmaWNhdGlvbkVuYWJsZWQpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzdXBwb3J0
c1NoYWRlck1vZGVsMyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmdldE1heGltdW1Qb2ludFNp
emUpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRNYXhpbXVtVmFyeWluZ1ZlY3RvcnMpOgor
KyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRNYXhpbXVtVmVydGV4VGV4dHVyZUltYWdlVW5pdHMp
OgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRNYXhpbXVtQ29tYmluZWRUZXh0dXJlSW1hZ2VV
bml0cyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmdldE1heGltdW1GcmFnbWVudFVuaWZvcm1W
ZWN0b3JzKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0TWF4U3VwcG9ydGVkU2FtcGxlcyk6
CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmdldE5lYXJlc3RTdXBwb3J0ZWRTYW1wbGVzKToKKysg
ICAgICAgIChnbDo6Q29udGV4dDo6c3VwcG9ydHNFdmVudFF1ZXJpZXMpOgorKyAgICAgICAgKGds
OjpDb250ZXh0OjpzdXBwb3J0c09jY2x1c2lvblF1ZXJpZXMpOgorKyAgICAgICAgKGdsOjpDb250
ZXh0OjpzdXBwb3J0c0RYVDFUZXh0dXJlcyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnN1cHBv
cnRzRFhUM1RleHR1cmVzKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c3VwcG9ydHNEWFQ1VGV4
dHVyZXMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzdXBwb3J0c0Zsb2F0MzJUZXh0dXJlcyk6
CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnN1cHBvcnRzRmxvYXQzMkxpbmVhckZpbHRlcik6Cisr
ICAgICAgICAoZ2w6OkNvbnRleHQ6OnN1cHBvcnRzRmxvYXQzMlJlbmRlcmFibGVUZXh0dXJlcyk6
CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnN1cHBvcnRzRmxvYXQxNlRleHR1cmVzKToKKysgICAg
ICAgIChnbDo6Q29udGV4dDo6c3VwcG9ydHNGbG9hdDE2TGluZWFyRmlsdGVyKToKKysgICAgICAg
IChnbDo6Q29udGV4dDo6c3VwcG9ydHNGbG9hdDE2UmVuZGVyYWJsZVRleHR1cmVzKToKKysgICAg
ICAgIChnbDo6Q29udGV4dDo6Z2V0TWF4aW11bVJlbmRlcmJ1ZmZlckRpbWVuc2lvbik6CisrICAg
ICAgICAoZ2w6OkNvbnRleHQ6OmdldE1heGltdW1UZXh0dXJlRGltZW5zaW9uKToKKysgICAgICAg
IChnbDo6Q29udGV4dDo6Z2V0TWF4aW11bUN1YmVUZXh0dXJlRGltZW5zaW9uKToKKysgICAgICAg
IChnbDo6Q29udGV4dDo6Z2V0TWF4aW11bVRleHR1cmVMZXZlbCk6CisrICAgICAgICAoZ2w6OkNv
bnRleHQ6OnN1cHBvcnRzTHVtaW5hbmNlVGV4dHVyZXMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0
OjpzdXBwb3J0c0x1bWluYW5jZUFscGhhVGV4dHVyZXMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0
OjpzdXBwb3J0c0RlcHRoVGV4dHVyZXMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzdXBwb3J0
czMyYml0SW5kaWNlcyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnN1cHBvcnRzTm9uUG93ZXIy
VGV4dHVyZSk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnN1cHBvcnRzSW5zdGFuY2luZyk6Cisr
ICAgICAgICAoZ2w6OkNvbnRleHQ6OnN1cHBvcnRzVGV4dHVyZUZpbHRlckFuaXNvdHJvcHkpOgor
KyAgICAgICAgKGdsOjpDb250ZXh0OjpzdXBwb3J0c0Rlcml2YXRpdmVJbnN0cnVjdGlvbnMpOgor
KyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRUZXh0dXJlTWF4QW5pc290cm9weSk6CisrICAgICAg
ICAoZ2w6OkNvbnRleHQ6OmdldEN1cnJlbnRSZWFkRm9ybWF0VHlwZSk6CisrICAgICAgICAoZ2w6
OkNvbnRleHQ6OmRldGFjaEJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmRldGFjaFRl
eHR1cmUpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpkZXRhY2hGcmFtZWJ1ZmZlcik6CisrICAg
ICAgICAoZ2w6OkNvbnRleHQ6OmRldGFjaFJlbmRlcmJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkNv
bnRleHQ6OmdldEluY29tcGxldGVUZXh0dXJlKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c2tp
cERyYXcpOgorKyAgICAgICAgKGdsOjpDb250ZXh0Ojppc1RyaWFuZ2xlTW9kZSk6CisrICAgICAg
ICAoZ2w6OkNvbnRleHQ6OnNldFZlcnRleEF0dHJpYik6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6
OnNldFZlcnRleEF0dHJpYkRpdmlzb3IpOgorKyAgICAgICAgKGdsOjpDb250ZXh0Ojppbml0RXh0
ZW5zaW9uU3RyaW5nKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0RXh0ZW5zaW9uU3RyaW5n
KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6aW5pdFJlbmRlcmVyU3RyaW5nKToKKysgICAgICAg
IChnbDo6Q29udGV4dDo6Z2V0UmVuZGVyZXJTdHJpbmcpOgorKyAgICAgICAgKGdsOjpDb250ZXh0
OjpibGl0RnJhbWVidWZmZXIpOgorKyAgICAgICAgKGdsOjpWZXJ0ZXhEZWNsYXJhdGlvbkNhY2hl
OjpWZXJ0ZXhEZWNsYXJhdGlvbkNhY2hlKToKKysgICAgICAgIChnbDo6VmVydGV4RGVjbGFyYXRp
b25DYWNoZTo6flZlcnRleERlY2xhcmF0aW9uQ2FjaGUpOgorKyAgICAgICAgKGdsOjpWZXJ0ZXhE
ZWNsYXJhdGlvbkNhY2hlOjphcHBseURlY2xhcmF0aW9uKToKKysgICAgICAgIChnbDo6VmVydGV4
RGVjbGFyYXRpb25DYWNoZTo6bWFya1N0YXRlRGlydHkpOgorKyAgICAgICAgKiBzcmMvbGliR0xF
U3YyL0NvbnRleHQuaDogQWRkZWQuCisrICAgICAgICAoZ2w6OlZlcnRleEF0dHJpYnV0ZTo6VmVy
dGV4QXR0cmlidXRlKToKKysgICAgICAgIChnbDo6VmVydGV4QXR0cmlidXRlOjp0eXBlU2l6ZSk6
CisrICAgICAgICAoZ2w6OlZlcnRleEF0dHJpYnV0ZTo6c3RyaWRlKToKKysgICAgICAgIChnbDo6
Q29udGV4dDo6Z2V0QmxpdHRlcik6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmdldERldmljZUNh
cHMpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL0QzRENvbnN0YW50VGFibGUuY3BwOiBBZGRl
ZC4KKysgICAgICAgIChnbDo6RDNEQ29uc3RhbnQ6OkQzRENvbnN0YW50KToKKysgICAgICAgIChn
bDo6RDNEQ29uc3RhbnQ6On5EM0RDb25zdGFudCk6CisrICAgICAgICAoZ2w6OkQzRENvbnN0YW50
OjphZGRTdHJ1Y3RNZW1iZXJzKToKKysgICAgICAgIChnbDo6RDNEQ29uc3RhbnRUYWJsZTo6RDNE
Q29uc3RhbnRUYWJsZSk6CisrICAgICAgICAoZ2w6OkQzRENvbnN0YW50VGFibGU6On5EM0RDb25z
dGFudFRhYmxlKToKKysgICAgICAgIChnbDo6RDNEQ29uc3RhbnRUYWJsZTo6Z2V0Q29uc3RhbnQp
OgorKyAgICAgICAgKGdsOjpEM0RDb25zdGFudFRhYmxlOjpnZXRDb25zdGFudEJ5TmFtZSk6Cisr
ICAgICAgICAqIHNyYy9saWJHTEVTdjIvRDNEQ29uc3RhbnRUYWJsZS5oOiBBZGRlZC4KKysgICAg
ICAgIChnbDo6RDNEQ29uc3RhbnRUYWJsZTo6ZXJyb3IpOgorKyAgICAgICAgKGdsOjpEM0RDb25z
dGFudFRhYmxlOjpjb25zdGFudHMpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL0ZlbmNlLmNw
cDogQWRkZWQuCisrICAgICAgICAoZ2w6OkZlbmNlOjpGZW5jZSk6CisrICAgICAgICAoZ2w6OkZl
bmNlOjp+RmVuY2UpOgorKyAgICAgICAgKGdsOjpGZW5jZTo6aXNGZW5jZSk6CisrICAgICAgICAo
Z2w6OkZlbmNlOjpzZXRGZW5jZSk6CisrICAgICAgICAoZ2w6OkZlbmNlOjp0ZXN0RmVuY2UpOgor
KyAgICAgICAgKGdsOjpGZW5jZTo6ZmluaXNoRmVuY2UpOgorKyAgICAgICAgKGdsOjpGZW5jZTo6
Z2V0RmVuY2Vpdik6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvRmVuY2UuaDogQWRkZWQuCisr
ICAgICAgICAqIHNyYy9saWJHTEVTdjIvRmxvYXQxNlRvRmxvYXQzMi5jcHA6IEFkZGVkLgorKyAg
ICAgICAgKGdsOjpmbG9hdDE2VG9GbG9hdDMyKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9G
bG9hdDE2VG9GbG9hdDMyLnB5OiBBZGRlZC4KKysgICAgICAgIChjb252ZXJ0TWFudGlzc2EpOgor
KyAgICAgICAgKGNvbnZlcnRFeHBvbmVudCk6CisrICAgICAgICAoY29udmVydE9mZnNldCk6Cisr
ICAgICAgICAqIHNyYy9saWJHTEVTdjIvRnJhbWVidWZmZXIuY3BwOiBBZGRlZC4KKysgICAgICAg
IChnbDo6RnJhbWVidWZmZXI6OkZyYW1lYnVmZmVyKToKKysgICAgICAgIChnbDo6RnJhbWVidWZm
ZXI6On5GcmFtZWJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkZyYW1lYnVmZmVyOjpsb29rdXBSZW5k
ZXJidWZmZXIpOgorKyAgICAgICAgKGdsOjpGcmFtZWJ1ZmZlcjo6c2V0Q29sb3JidWZmZXIpOgor
KyAgICAgICAgKGdsOjpGcmFtZWJ1ZmZlcjo6c2V0RGVwdGhidWZmZXIpOgorKyAgICAgICAgKGds
OjpGcmFtZWJ1ZmZlcjo6c2V0U3RlbmNpbGJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkZyYW1lYnVm
ZmVyOjpkZXRhY2hUZXh0dXJlKToKKysgICAgICAgIChnbDo6RnJhbWVidWZmZXI6OmRldGFjaFJl
bmRlcmJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkZyYW1lYnVmZmVyOjpnZXRSZW5kZXJUYXJnZXRT
ZXJpYWwpOgorKyAgICAgICAgKGdsOjpGcmFtZWJ1ZmZlcjo6Z2V0UmVuZGVyVGFyZ2V0KToKKysg
ICAgICAgIChnbDo6RnJhbWVidWZmZXI6OmdldERlcHRoU3RlbmNpbCk6CisrICAgICAgICAoZ2w6
OkZyYW1lYnVmZmVyOjpnZXREZXB0aGJ1ZmZlclNlcmlhbCk6CisrICAgICAgICAoZ2w6OkZyYW1l
YnVmZmVyOjpnZXRTdGVuY2lsYnVmZmVyU2VyaWFsKToKKysgICAgICAgIChnbDo6RnJhbWVidWZm
ZXI6OmdldENvbG9yYnVmZmVyKToKKysgICAgICAgIChnbDo6RnJhbWVidWZmZXI6OmdldERlcHRo
YnVmZmVyKToKKysgICAgICAgIChnbDo6RnJhbWVidWZmZXI6OmdldFN0ZW5jaWxidWZmZXIpOgor
KyAgICAgICAgKGdsOjpGcmFtZWJ1ZmZlcjo6Z2V0TnVsbENvbG9yYnVmZmVyKToKKysgICAgICAg
IChnbDo6RnJhbWVidWZmZXI6OmdldENvbG9yYnVmZmVyVHlwZSk6CisrICAgICAgICAoZ2w6OkZy
YW1lYnVmZmVyOjpnZXREZXB0aGJ1ZmZlclR5cGUpOgorKyAgICAgICAgKGdsOjpGcmFtZWJ1ZmZl
cjo6Z2V0U3RlbmNpbGJ1ZmZlclR5cGUpOgorKyAgICAgICAgKGdsOjpGcmFtZWJ1ZmZlcjo6Z2V0
Q29sb3JidWZmZXJIYW5kbGUpOgorKyAgICAgICAgKGdsOjpGcmFtZWJ1ZmZlcjo6Z2V0RGVwdGhi
dWZmZXJIYW5kbGUpOgorKyAgICAgICAgKGdsOjpGcmFtZWJ1ZmZlcjo6Z2V0U3RlbmNpbGJ1ZmZl
ckhhbmRsZSk6CisrICAgICAgICAoZ2w6OkZyYW1lYnVmZmVyOjpoYXNTdGVuY2lsKToKKysgICAg
ICAgIChnbDo6RnJhbWVidWZmZXI6OmNvbXBsZXRlbmVzcyk6CisrICAgICAgICAoZ2w6OkRlZmF1
bHRGcmFtZWJ1ZmZlcjo6RGVmYXVsdEZyYW1lYnVmZmVyKToKKysgICAgICAgIChnbDo6RnJhbWVi
dWZmZXI6OmdldFNhbXBsZXMpOgorKyAgICAgICAgKGdsOjpEZWZhdWx0RnJhbWVidWZmZXI6OmNv
bXBsZXRlbmVzcyk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvRnJhbWVidWZmZXIuaDogQWRk
ZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvSGFuZGxlQWxsb2NhdG9yLmNwcDogQWRkZWQu
CisrICAgICAgICAoZ2w6OkhhbmRsZUFsbG9jYXRvcjo6SGFuZGxlQWxsb2NhdG9yKToKKysgICAg
ICAgIChnbDo6SGFuZGxlQWxsb2NhdG9yOjp+SGFuZGxlQWxsb2NhdG9yKToKKysgICAgICAgIChn
bDo6SGFuZGxlQWxsb2NhdG9yOjpzZXRCYXNlSGFuZGxlKToKKysgICAgICAgIChnbDo6SGFuZGxl
QWxsb2NhdG9yOjphbGxvY2F0ZSk6CisrICAgICAgICAoZ2w6OkhhbmRsZUFsbG9jYXRvcjo6cmVs
ZWFzZSk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvSGFuZGxlQWxsb2NhdG9yLmg6IEFkZGVk
LgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL0luZGV4RGF0YU1hbmFnZXIuY3BwOiBBZGRlZC4K
KysgICAgICAgIChnbDo6SW5kZXhEYXRhTWFuYWdlcjo6SW5kZXhEYXRhTWFuYWdlcik6CisrICAg
ICAgICAoZ2w6OkluZGV4RGF0YU1hbmFnZXI6On5JbmRleERhdGFNYW5hZ2VyKToKKysgICAgICAg
IChnbDo6Y29udmVydEluZGljZXMpOgorKyAgICAgICAgKGdsOjpjb21wdXRlUmFuZ2UpOgorKyAg
ICAgICAgKGdsOjpJbmRleERhdGFNYW5hZ2VyOjpwcmVwYXJlSW5kZXhEYXRhKToKKysgICAgICAg
IChnbDo6SW5kZXhEYXRhTWFuYWdlcjo6aW5kZXhTaXplKToKKysgICAgICAgIChnbDo6SW5kZXhE
YXRhTWFuYWdlcjo6dHlwZVNpemUpOgorKyAgICAgICAgKGdsOjpJbmRleERhdGFNYW5hZ2VyOjpn
ZXRDb3VudGluZ0luZGljZXMpOgorKyAgICAgICAgKGdsOjpJbmRleEJ1ZmZlcjo6SW5kZXhCdWZm
ZXIpOgorKyAgICAgICAgKGdsOjpJbmRleEJ1ZmZlcjo6fkluZGV4QnVmZmVyKToKKysgICAgICAg
IChnbDo6SW5kZXhCdWZmZXI6OmdldEJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkluZGV4QnVmZmVy
OjpnZXRTZXJpYWwpOgorKyAgICAgICAgKGdsOjpJbmRleEJ1ZmZlcjo6aXNzdWVTZXJpYWwpOgor
KyAgICAgICAgKGdsOjpJbmRleEJ1ZmZlcjo6dW5tYXApOgorKyAgICAgICAgKGdsOjpTdHJlYW1p
bmdJbmRleEJ1ZmZlcjo6U3RyZWFtaW5nSW5kZXhCdWZmZXIpOgorKyAgICAgICAgKGdsOjpTdHJl
YW1pbmdJbmRleEJ1ZmZlcjo6flN0cmVhbWluZ0luZGV4QnVmZmVyKToKKysgICAgICAgIChnbDo6
U3RyZWFtaW5nSW5kZXhCdWZmZXI6Om1hcCk6CisrICAgICAgICAoZ2w6OlN0cmVhbWluZ0luZGV4
QnVmZmVyOjpyZXNlcnZlU3BhY2UpOgorKyAgICAgICAgKGdsOjpTdGF0aWNJbmRleEJ1ZmZlcjo6
U3RhdGljSW5kZXhCdWZmZXIpOgorKyAgICAgICAgKGdsOjpTdGF0aWNJbmRleEJ1ZmZlcjo6flN0
YXRpY0luZGV4QnVmZmVyKToKKysgICAgICAgIChnbDo6U3RhdGljSW5kZXhCdWZmZXI6Om1hcCk6
CisrICAgICAgICAoZ2w6OlN0YXRpY0luZGV4QnVmZmVyOjpyZXNlcnZlU3BhY2UpOgorKyAgICAg
ICAgKGdsOjpTdGF0aWNJbmRleEJ1ZmZlcjo6bG9va3VwVHlwZSk6CisrICAgICAgICAoZ2w6OlN0
YXRpY0luZGV4QnVmZmVyOjpsb29rdXBSYW5nZSk6CisrICAgICAgICAoZ2w6OlN0YXRpY0luZGV4
QnVmZmVyOjphZGRSYW5nZSk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvSW5kZXhEYXRhTWFu
YWdlci5oOiBBZGRlZC4KKysgICAgICAgIChnbDo6SW5kZXhCdWZmZXI6OnNpemUpOgorKyAgICAg
ICAgKGdsOjpTdGF0aWNJbmRleEJ1ZmZlcjo6SW5kZXhSYW5nZTo6b3BlcmF0b3I8KToKKysgICAg
ICAgICogc3JjL2xpYkdMRVN2Mi9Qcm9ncmFtLmNwcDogQWRkZWQuCisrICAgICAgICAoZ2w6OkF0
dHJpYnV0ZUJpbmRpbmdzOjpBdHRyaWJ1dGVCaW5kaW5ncyk6CisrICAgICAgICAoZ2w6OkF0dHJp
YnV0ZUJpbmRpbmdzOjp+QXR0cmlidXRlQmluZGluZ3MpOgorKyAgICAgICAgKGdsOjpJbmZvTG9n
OjpJbmZvTG9nKToKKysgICAgICAgIChnbDo6SW5mb0xvZzo6fkluZm9Mb2cpOgorKyAgICAgICAg
KGdsOjpJbmZvTG9nOjpnZXRMZW5ndGgpOgorKyAgICAgICAgKGdsOjpJbmZvTG9nOjpnZXRMb2cp
OgorKyAgICAgICAgKGdsOjpJbmZvTG9nOjphcHBlbmRTYW5pdGl6ZWQpOgorKyAgICAgICAgKGds
OjpJbmZvTG9nOjphcHBlbmQpOgorKyAgICAgICAgKGdsOjpJbmZvTG9nOjpyZXNldCk6CisrICAg
ICAgICAoZ2w6OlByb2dyYW06OlByb2dyYW0pOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjp+UHJv
Z3JhbSk6CisrICAgICAgICAoZ2w6OlByb2dyYW06OmF0dGFjaFNoYWRlcik6CisrICAgICAgICAo
Z2w6OlByb2dyYW06OmRldGFjaFNoYWRlcik6CisrICAgICAgICAoZ2w6OlByb2dyYW06OmdldEF0
dGFjaGVkU2hhZGVyc0NvdW50KToKKysgICAgICAgIChnbDo6QXR0cmlidXRlQmluZGluZ3M6OmJp
bmRBdHRyaWJ1dGVMb2NhdGlvbik6CisrICAgICAgICAoZ2w6OlByb2dyYW06OmJpbmRBdHRyaWJ1
dGVMb2NhdGlvbik6CisrICAgICAgICAoZ2w6OlByb2dyYW06OmxpbmspOgorKyAgICAgICAgKGds
OjpBdHRyaWJ1dGVCaW5kaW5nczo6Z2V0QXR0cmlidXRlQmluZGluZyk6CisrICAgICAgICAoZ2w6
OlByb2dyYW06OnVubGluayk6CisrICAgICAgICAoZ2w6OlByb2dyYW06OmlzTGlua2VkKToKKysg
ICAgICAgIChnbDo6UHJvZ3JhbTo6Z2V0UHJvZ3JhbUJpbmFyeSk6CisrICAgICAgICAoZ2w6OlBy
b2dyYW06OnNldFByb2dyYW1CaW5hcnkpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpyZWxlYXNl
KToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6YWRkUmVmKToKKysgICAgICAgIChnbDo6UHJvZ3Jh
bTo6Z2V0UmVmQ291bnQpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpnZXRQcm9ncmFtQmluYXJ5
TGVuZ3RoKToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6Z2V0SW5mb0xvZ0xlbmd0aCk6CisrICAg
ICAgICAoZ2w6OlByb2dyYW06OmdldEluZm9Mb2cpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpn
ZXRBdHRhY2hlZFNoYWRlcnMpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpnZXRBY3RpdmVBdHRy
aWJ1dGUpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpnZXRBY3RpdmVBdHRyaWJ1dGVDb3VudCk6
CisrICAgICAgICAoZ2w6OlByb2dyYW06OmdldEFjdGl2ZUF0dHJpYnV0ZU1heExlbmd0aCk6Cisr
ICAgICAgICAoZ2w6OlByb2dyYW06OmdldEFjdGl2ZVVuaWZvcm0pOgorKyAgICAgICAgKGdsOjpQ
cm9ncmFtOjpnZXRBY3RpdmVVbmlmb3JtQ291bnQpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpn
ZXRBY3RpdmVVbmlmb3JtTWF4TGVuZ3RoKToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6ZmxhZ0Zv
ckRlbGV0aW9uKToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6aXNGbGFnZ2VkRm9yRGVsZXRpb24p
OgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjp2YWxpZGF0ZSk6CisrICAgICAgICAoZ2w6OlByb2dy
YW06OmlzVmFsaWRhdGVkKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9Qcm9ncmFtLmg6IEFk
ZGVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1Byb2dyYW1CaW5hcnkuY3BwOiBBZGRlZC4K
KysgICAgICAgIChnbDo6c3RyKToKKysgICAgICAgIChnbDo6VW5pZm9ybTo6VW5pZm9ybSk6Cisr
ICAgICAgICAoZ2w6OlVuaWZvcm06On5Vbmlmb3JtKToKKysgICAgICAgIChnbDo6VW5pZm9ybTo6
aXNBcnJheSk6CisrICAgICAgICAoZ2w6OlVuaWZvcm1Mb2NhdGlvbjo6VW5pZm9ybUxvY2F0aW9u
KToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6UHJvZ3JhbUJpbmFyeSk6CisrICAgICAg
ICAoZ2w6OlByb2dyYW1CaW5hcnk6On5Qcm9ncmFtQmluYXJ5KToKKysgICAgICAgIChnbDo6UHJv
Z3JhbUJpbmFyeTo6Z2V0U2VyaWFsKToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6aXNz
dWVTZXJpYWwpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjpnZXRQaXhlbFNoYWRlcik6
CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OmdldFZlcnRleFNoYWRlcik6CisrICAgICAg
ICAoZ2w6OlByb2dyYW1CaW5hcnk6OmdldEF0dHJpYnV0ZUxvY2F0aW9uKToKKysgICAgICAgIChn
bDo6UHJvZ3JhbUJpbmFyeTo6Z2V0U2VtYW50aWNJbmRleCk6CisrICAgICAgICAoZ2w6OlByb2dy
YW1CaW5hcnk6OmdldFVzZWRTYW1wbGVyUmFuZ2UpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmlu
YXJ5Ojp1c2VzUG9pbnRTaXplKToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6Z2V0U2Ft
cGxlck1hcHBpbmcpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjpnZXRTYW1wbGVyVGV4
dHVyZVR5cGUpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjpnZXRVbmlmb3JtTG9jYXRp
b24pOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjpzZXRVbmlmb3JtMWZ2KToKKysgICAg
ICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6c2V0VW5pZm9ybTJmdik6CisrICAgICAgICAoZ2w6OlBy
b2dyYW1CaW5hcnk6OnNldFVuaWZvcm0zZnYpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5
OjpzZXRVbmlmb3JtNGZ2KToKKysgICAgICAgIChnbDo6dHJhbnNwb3NlTWF0cml4KToKKysgICAg
ICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6c2V0VW5pZm9ybU1hdHJpeDJmdik6CisrICAgICAgICAo
Z2w6OlByb2dyYW1CaW5hcnk6OnNldFVuaWZvcm1NYXRyaXgzZnYpOgorKyAgICAgICAgKGdsOjpQ
cm9ncmFtQmluYXJ5OjpzZXRVbmlmb3JtTWF0cml4NGZ2KToKKysgICAgICAgIChnbDo6UHJvZ3Jh
bUJpbmFyeTo6c2V0VW5pZm9ybTFpdik6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OnNl
dFVuaWZvcm0yaXYpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjpzZXRVbmlmb3JtM2l2
KToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6c2V0VW5pZm9ybTRpdik6CisrICAgICAg
ICAoZ2w6OlByb2dyYW1CaW5hcnk6OmdldFVuaWZvcm1mdik6CisrICAgICAgICAoZ2w6OlByb2dy
YW1CaW5hcnk6OmdldFVuaWZvcm1pdik6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OmRp
cnR5QWxsVW5pZm9ybXMpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjphcHBseVVuaWZv
cm1zKToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6Y29tcGlsZVRvQmluYXJ5KToKKysg
ICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6cGFja1ZhcnlpbmdzKToKKysgICAgICAgIChnbDo6
UHJvZ3JhbUJpbmFyeTo6bGlua1ZhcnlpbmdzKToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFy
eTo6bG9hZCk6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OnNhdmUpOgorKyAgICAgICAg
KGdsOjpQcm9ncmFtQmluYXJ5OjpnZXRMZW5ndGgpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmlu
YXJ5OjpsaW5rKToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6bGlua0F0dHJpYnV0ZXMp
OgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjpsaW5rVW5pZm9ybXMpOgorKyAgICAgICAg
KGdsOjpQcm9ncmFtQmluYXJ5OjpkZWZpbmVVbmlmb3JtKToKKysgICAgICAgIChnbDo6UHJvZ3Jh
bUJpbmFyeTo6Y3JlYXRlVW5pZm9ybSk6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OmRl
Y29yYXRlQXR0cmlidXRlKToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6dW5kZWNvcmF0
ZVVuaWZvcm0pOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjphcHBseVVuaWZvcm1uYnYp
OgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjphcHBseVVuaWZvcm1uZnYpOgorKyAgICAg
ICAgKGdsOjpQcm9ncmFtQmluYXJ5OjphcHBseVVuaWZvcm0xaXYpOgorKyAgICAgICAgKGdsOjpQ
cm9ncmFtQmluYXJ5OjphcHBseVVuaWZvcm0yaXYpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmlu
YXJ5OjphcHBseVVuaWZvcm0zaXYpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjphcHBs
eVVuaWZvcm00aXYpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjphcHBseVVuaWZvcm1u
aXYpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5Ojppc1ZhbGlkYXRlZCk6CisrICAgICAg
ICAoZ2w6OlByb2dyYW1CaW5hcnk6OmdldEFjdGl2ZUF0dHJpYnV0ZSk6CisrICAgICAgICAoZ2w6
OlByb2dyYW1CaW5hcnk6OmdldEFjdGl2ZUF0dHJpYnV0ZUNvdW50KToKKysgICAgICAgIChnbDo6
UHJvZ3JhbUJpbmFyeTo6Z2V0QWN0aXZlQXR0cmlidXRlTWF4TGVuZ3RoKToKKysgICAgICAgIChn
bDo6UHJvZ3JhbUJpbmFyeTo6Z2V0QWN0aXZlVW5pZm9ybSk6CisrICAgICAgICAoZ2w6OlByb2dy
YW1CaW5hcnk6OmdldEFjdGl2ZVVuaWZvcm1Db3VudCk6CisrICAgICAgICAoZ2w6OlByb2dyYW1C
aW5hcnk6OmdldEFjdGl2ZVVuaWZvcm1NYXhMZW5ndGgpOgorKyAgICAgICAgKGdsOjpQcm9ncmFt
QmluYXJ5Ojp2YWxpZGF0ZSk6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OnZhbGlkYXRl
U2FtcGxlcnMpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjpnZXREeERlcHRoUmFuZ2VM
b2NhdGlvbik6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OmdldER4RGVwdGhMb2NhdGlv
bik6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OmdldER4Q29vcmRMb2NhdGlvbik6Cisr
ICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OmdldER4SGFsZlBpeGVsU2l6ZUxvY2F0aW9uKToK
KysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6Z2V0RHhGcm9udENDV0xvY2F0aW9uKToKKysg
ICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6Z2V0RHhQb2ludHNPckxpbmVzTG9jYXRpb24pOgor
KyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjpTYW1wbGVyOjpTYW1wbGVyKToKKysgICAgICAg
ICogc3JjL2xpYkdMRVN2Mi9Qcm9ncmFtQmluYXJ5Lmg6IEFkZGVkLgorKyAgICAgICAgKGdsOjpV
bmlmb3JtOjpSZWdpc3RlckluZm86OlJlZ2lzdGVySW5mbyk6CisrICAgICAgICAoZ2w6OlVuaWZv
cm06OlJlZ2lzdGVySW5mbzo6c2V0KToKKysgICAgICAgIChnbDo6VW5pZm9ybUxvY2F0aW9uOjpV
bmlmb3JtTG9jYXRpb24pOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1F1ZXJ5LmNwcDogQWRk
ZWQuCisrICAgICAgICAoZ2w6OlF1ZXJ5OjpRdWVyeSk6CisrICAgICAgICAoZ2w6OlF1ZXJ5Ojp+
UXVlcnkpOgorKyAgICAgICAgKGdsOjpRdWVyeTo6YmVnaW4pOgorKyAgICAgICAgKGdsOjpRdWVy
eTo6ZW5kKToKKysgICAgICAgIChnbDo6UXVlcnk6OmdldFJlc3VsdCk6CisrICAgICAgICAoZ2w6
OlF1ZXJ5Ojppc1Jlc3VsdEF2YWlsYWJsZSk6CisrICAgICAgICAoZ2w6OlF1ZXJ5OjpnZXRUeXBl
KToKKysgICAgICAgIChnbDo6UXVlcnk6OnRlc3RRdWVyeSk6CisrICAgICAgICAqIHNyYy9saWJH
TEVTdjIvUXVlcnkuaDogQWRkZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvUkVBRE1FOiBS
ZW1vdmVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1JlbmRlcmJ1ZmZlci5jcHA6IEFkZGVk
LgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJJbnRlcmZhY2U6OlJlbmRlcmJ1ZmZlckludGVy
ZmFjZSk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlckludGVyZmFjZTo6YWRkUHJveHlSZWYp
OgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJJbnRlcmZhY2U6OnJlbGVhc2VQcm94eSk6Cisr
ICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlckludGVyZmFjZTo6Z2V0UmVkU2l6ZSk6CisrICAgICAg
ICAoZ2w6OlJlbmRlcmJ1ZmZlckludGVyZmFjZTo6Z2V0R3JlZW5TaXplKToKKysgICAgICAgIChn
bDo6UmVuZGVyYnVmZmVySW50ZXJmYWNlOjpnZXRCbHVlU2l6ZSk6CisrICAgICAgICAoZ2w6OlJl
bmRlcmJ1ZmZlckludGVyZmFjZTo6Z2V0QWxwaGFTaXplKToKKysgICAgICAgIChnbDo6UmVuZGVy
YnVmZmVySW50ZXJmYWNlOjpnZXREZXB0aFNpemUpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZm
ZXJJbnRlcmZhY2U6OmdldFN0ZW5jaWxTaXplKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVy
VGV4dHVyZTJEOjpSZW5kZXJidWZmZXJUZXh0dXJlMkQpOgorKyAgICAgICAgKGdsOjpSZW5kZXJi
dWZmZXJUZXh0dXJlMkQ6On5SZW5kZXJidWZmZXJUZXh0dXJlMkQpOgorKyAgICAgICAgKGdsOjpS
ZW5kZXJidWZmZXJUZXh0dXJlMkQ6OmFkZFByb3h5UmVmKToKKysgICAgICAgIChnbDo6UmVuZGVy
YnVmZmVyVGV4dHVyZTJEOjpyZWxlYXNlUHJveHkpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZm
ZXJUZXh0dXJlMkQ6OmdldFJlbmRlclRhcmdldCk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZl
clRleHR1cmUyRDo6Z2V0RGVwdGhTdGVuY2lsKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVy
VGV4dHVyZTJEOjpnZXRXaWR0aCk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclRleHR1cmUy
RDo6Z2V0SGVpZ2h0KToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyVGV4dHVyZTJEOjpnZXRJ
bnRlcm5hbEZvcm1hdCk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclRleHR1cmUyRDo6Z2V0
RDNERm9ybWF0KToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyVGV4dHVyZTJEOjpnZXRTYW1w
bGVzKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyVGV4dHVyZTJEOjpnZXRTZXJpYWwpOgor
KyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJUZXh0dXJlQ3ViZU1hcDo6UmVuZGVyYnVmZmVyVGV4
dHVyZUN1YmVNYXApOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJUZXh0dXJlQ3ViZU1hcDo6
flJlbmRlcmJ1ZmZlclRleHR1cmVDdWJlTWFwKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVy
VGV4dHVyZUN1YmVNYXA6OmFkZFByb3h5UmVmKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVy
VGV4dHVyZUN1YmVNYXA6OnJlbGVhc2VQcm94eSk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZl
clRleHR1cmVDdWJlTWFwOjpnZXRSZW5kZXJUYXJnZXQpOgorKyAgICAgICAgKGdsOjpSZW5kZXJi
dWZmZXJUZXh0dXJlQ3ViZU1hcDo6Z2V0RGVwdGhTdGVuY2lsKToKKysgICAgICAgIChnbDo6UmVu
ZGVyYnVmZmVyVGV4dHVyZUN1YmVNYXA6OmdldFdpZHRoKToKKysgICAgICAgIChnbDo6UmVuZGVy
YnVmZmVyVGV4dHVyZUN1YmVNYXA6OmdldEhlaWdodCk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1
ZmZlclRleHR1cmVDdWJlTWFwOjpnZXRJbnRlcm5hbEZvcm1hdCk6CisrICAgICAgICAoZ2w6OlJl
bmRlcmJ1ZmZlclRleHR1cmVDdWJlTWFwOjpnZXREM0RGb3JtYXQpOgorKyAgICAgICAgKGdsOjpS
ZW5kZXJidWZmZXJUZXh0dXJlQ3ViZU1hcDo6Z2V0U2FtcGxlcyk6CisrICAgICAgICAoZ2w6OlJl
bmRlcmJ1ZmZlclRleHR1cmVDdWJlTWFwOjpnZXRTZXJpYWwpOgorKyAgICAgICAgKGdsOjpSZW5k
ZXJidWZmZXI6OlJlbmRlcmJ1ZmZlcik6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlcjo6flJl
bmRlcmJ1ZmZlcik6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlcjo6YWRkUmVmKToKKysgICAg
ICAgIChnbDo6UmVuZGVyYnVmZmVyOjpyZWxlYXNlKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVm
ZmVyOjpnZXRSZW5kZXJUYXJnZXQpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXI6OmdldERl
cHRoU3RlbmNpbCk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlcjo6Z2V0V2lkdGgpOgorKyAg
ICAgICAgKGdsOjpSZW5kZXJidWZmZXI6OmdldEhlaWdodCk6CisrICAgICAgICAoZ2w6OlJlbmRl
cmJ1ZmZlcjo6Z2V0SW50ZXJuYWxGb3JtYXQpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXI6
OmdldEQzREZvcm1hdCk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlcjo6Z2V0UmVkU2l6ZSk6
CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlcjo6Z2V0R3JlZW5TaXplKToKKysgICAgICAgIChn
bDo6UmVuZGVyYnVmZmVyOjpnZXRCbHVlU2l6ZSk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZl
cjo6Z2V0QWxwaGFTaXplKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyOjpnZXREZXB0aFNp
emUpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXI6OmdldFN0ZW5jaWxTaXplKToKKysgICAg
ICAgIChnbDo6UmVuZGVyYnVmZmVyOjpnZXRTYW1wbGVzKToKKysgICAgICAgIChnbDo6UmVuZGVy
YnVmZmVyOjpnZXRTZXJpYWwpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXI6OnNldFN0b3Jh
Z2UpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJTdG9yYWdlOjpSZW5kZXJidWZmZXJTdG9y
YWdlKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyU3RvcmFnZTo6flJlbmRlcmJ1ZmZlclN0
b3JhZ2UpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJTdG9yYWdlOjpnZXRSZW5kZXJUYXJn
ZXQpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJTdG9yYWdlOjpnZXREZXB0aFN0ZW5jaWwp
OgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJTdG9yYWdlOjpnZXRXaWR0aCk6CisrICAgICAg
ICAoZ2w6OlJlbmRlcmJ1ZmZlclN0b3JhZ2U6OmdldEhlaWdodCk6CisrICAgICAgICAoZ2w6OlJl
bmRlcmJ1ZmZlclN0b3JhZ2U6OmdldEludGVybmFsRm9ybWF0KToKKysgICAgICAgIChnbDo6UmVu
ZGVyYnVmZmVyU3RvcmFnZTo6Z2V0RDNERm9ybWF0KToKKysgICAgICAgIChnbDo6UmVuZGVyYnVm
ZmVyU3RvcmFnZTo6Z2V0U2FtcGxlcyk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclN0b3Jh
Z2U6OmdldFNlcmlhbCk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclN0b3JhZ2U6Omlzc3Vl
U2VyaWFsKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyU3RvcmFnZTo6aXNzdWVDdWJlU2Vy
aWFscyk6CisrICAgICAgICAoZ2w6OkNvbG9yYnVmZmVyOjpDb2xvcmJ1ZmZlcik6CisrICAgICAg
ICAoZ2w6OkNvbG9yYnVmZmVyOjp+Q29sb3JidWZmZXIpOgorKyAgICAgICAgKGdsOjpDb2xvcmJ1
ZmZlcjo6Z2V0UmVuZGVyVGFyZ2V0KToKKysgICAgICAgIChnbDo6RGVwdGhTdGVuY2lsYnVmZmVy
OjpEZXB0aFN0ZW5jaWxidWZmZXIpOgorKyAgICAgICAgKGdsOjpEZXB0aFN0ZW5jaWxidWZmZXI6
On5EZXB0aFN0ZW5jaWxidWZmZXIpOgorKyAgICAgICAgKGdsOjpEZXB0aFN0ZW5jaWxidWZmZXI6
OmdldERlcHRoU3RlbmNpbCk6CisrICAgICAgICAoZ2w6OkRlcHRoYnVmZmVyOjpEZXB0aGJ1ZmZl
cik6CisrICAgICAgICAoZ2w6OkRlcHRoYnVmZmVyOjp+RGVwdGhidWZmZXIpOgorKyAgICAgICAg
KGdsOjpTdGVuY2lsYnVmZmVyOjpTdGVuY2lsYnVmZmVyKToKKysgICAgICAgIChnbDo6U3RlbmNp
bGJ1ZmZlcjo6flN0ZW5jaWxidWZmZXIpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1JlbmRl
cmJ1ZmZlci5oOiBBZGRlZC4KKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVySW50ZXJmYWNlOjp+
UmVuZGVyYnVmZmVySW50ZXJmYWNlKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9SZXNvdXJj
ZU1hbmFnZXIuY3BwOiBBZGRlZC4KKysgICAgICAgIChnbDo6UmVzb3VyY2VNYW5hZ2VyOjpSZXNv
dXJjZU1hbmFnZXIpOgorKyAgICAgICAgKGdsOjpSZXNvdXJjZU1hbmFnZXI6On5SZXNvdXJjZU1h
bmFnZXIpOgorKyAgICAgICAgKGdsOjpSZXNvdXJjZU1hbmFnZXI6OmFkZFJlZik6CisrICAgICAg
ICAoZ2w6OlJlc291cmNlTWFuYWdlcjo6cmVsZWFzZSk6CisrICAgICAgICAoZ2w6OlJlc291cmNl
TWFuYWdlcjo6Y3JlYXRlQnVmZmVyKToKKysgICAgICAgIChnbDo6UmVzb3VyY2VNYW5hZ2VyOjpj
cmVhdGVTaGFkZXIpOgorKyAgICAgICAgKGdsOjpSZXNvdXJjZU1hbmFnZXI6OmNyZWF0ZVByb2dy
YW0pOgorKyAgICAgICAgKGdsOjpSZXNvdXJjZU1hbmFnZXI6OmNyZWF0ZVRleHR1cmUpOgorKyAg
ICAgICAgKGdsOjpSZXNvdXJjZU1hbmFnZXI6OmNyZWF0ZVJlbmRlcmJ1ZmZlcik6CisrICAgICAg
ICAoZ2w6OlJlc291cmNlTWFuYWdlcjo6ZGVsZXRlQnVmZmVyKToKKysgICAgICAgIChnbDo6UmVz
b3VyY2VNYW5hZ2VyOjpkZWxldGVTaGFkZXIpOgorKyAgICAgICAgKGdsOjpSZXNvdXJjZU1hbmFn
ZXI6OmRlbGV0ZVByb2dyYW0pOgorKyAgICAgICAgKGdsOjpSZXNvdXJjZU1hbmFnZXI6OmRlbGV0
ZVRleHR1cmUpOgorKyAgICAgICAgKGdsOjpSZXNvdXJjZU1hbmFnZXI6OmRlbGV0ZVJlbmRlcmJ1
ZmZlcik6CisrICAgICAgICAoZ2w6OlJlc291cmNlTWFuYWdlcjo6Z2V0QnVmZmVyKToKKysgICAg
ICAgIChnbDo6UmVzb3VyY2VNYW5hZ2VyOjpnZXRTaGFkZXIpOgorKyAgICAgICAgKGdsOjpSZXNv
dXJjZU1hbmFnZXI6OmdldFRleHR1cmUpOgorKyAgICAgICAgKGdsOjpSZXNvdXJjZU1hbmFnZXI6
OmdldFByb2dyYW0pOgorKyAgICAgICAgKGdsOjpSZXNvdXJjZU1hbmFnZXI6OmdldFJlbmRlcmJ1
ZmZlcik6CisrICAgICAgICAoZ2w6OlJlc291cmNlTWFuYWdlcjo6c2V0UmVuZGVyYnVmZmVyKToK
KysgICAgICAgIChnbDo6UmVzb3VyY2VNYW5hZ2VyOjpjaGVja0J1ZmZlckFsbG9jYXRpb24pOgor
KyAgICAgICAgKGdsOjpSZXNvdXJjZU1hbmFnZXI6OmNoZWNrVGV4dHVyZUFsbG9jYXRpb24pOgor
KyAgICAgICAgKGdsOjpSZXNvdXJjZU1hbmFnZXI6OmNoZWNrUmVuZGVyYnVmZmVyQWxsb2NhdGlv
bik6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvUmVzb3VyY2VNYW5hZ2VyLmg6IEFkZGVkLgor
KyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1NoYWRlci5jcHA6IEFkZGVkLgorKyAgICAgICAgKGds
OjpTaGFkZXI6OlNoYWRlcik6CisrICAgICAgICAoZ2w6OlNoYWRlcjo6flNoYWRlcik6CisrICAg
ICAgICAoZ2w6OlNoYWRlcjo6Z2V0SGFuZGxlKToKKysgICAgICAgIChnbDo6U2hhZGVyOjpzZXRT
b3VyY2UpOgorKyAgICAgICAgKGdsOjpTaGFkZXI6OmdldEluZm9Mb2dMZW5ndGgpOgorKyAgICAg
ICAgKGdsOjpTaGFkZXI6OmdldEluZm9Mb2cpOgorKyAgICAgICAgKGdsOjpTaGFkZXI6OmdldFNv
dXJjZUxlbmd0aCk6CisrICAgICAgICAoZ2w6OlNoYWRlcjo6Z2V0VHJhbnNsYXRlZFNvdXJjZUxl
bmd0aCk6CisrICAgICAgICAoZ2w6OlNoYWRlcjo6Z2V0U291cmNlSW1wbCk6CisrICAgICAgICAo
Z2w6OlNoYWRlcjo6Z2V0U291cmNlKToKKysgICAgICAgIChnbDo6U2hhZGVyOjpnZXRUcmFuc2xh
dGVkU291cmNlKToKKysgICAgICAgIChnbDo6U2hhZGVyOjppc0NvbXBpbGVkKToKKysgICAgICAg
IChnbDo6U2hhZGVyOjpnZXRITFNMKToKKysgICAgICAgIChnbDo6U2hhZGVyOjphZGRSZWYpOgor
KyAgICAgICAgKGdsOjpTaGFkZXI6OnJlbGVhc2UpOgorKyAgICAgICAgKGdsOjpTaGFkZXI6Omdl
dFJlZkNvdW50KToKKysgICAgICAgIChnbDo6U2hhZGVyOjppc0ZsYWdnZWRGb3JEZWxldGlvbik6
CisrICAgICAgICAoZ2w6OlNoYWRlcjo6ZmxhZ0ZvckRlbGV0aW9uKToKKysgICAgICAgIChnbDo6
U2hhZGVyOjppbml0aWFsaXplQ29tcGlsZXIpOgorKyAgICAgICAgKGdsOjpTaGFkZXI6OnJlbGVh
c2VDb21waWxlcik6CisrICAgICAgICAoZ2w6OlNoYWRlcjo6cGFyc2VWYXJ5aW5ncyk6CisrICAg
ICAgICAoZ2w6OlNoYWRlcjo6dW5jb21waWxlKToKKysgICAgICAgIChnbDo6U2hhZGVyOjpjb21w
aWxlVG9ITFNMKToKKysgICAgICAgIChnbDo6U2hhZGVyOjpwYXJzZVR5cGUpOgorKyAgICAgICAg
KGdsOjpTaGFkZXI6OmNvbXBhcmVWYXJ5aW5nKToKKysgICAgICAgIChnbDo6VmVydGV4U2hhZGVy
OjpWZXJ0ZXhTaGFkZXIpOgorKyAgICAgICAgKGdsOjpWZXJ0ZXhTaGFkZXI6On5WZXJ0ZXhTaGFk
ZXIpOgorKyAgICAgICAgKGdsOjpWZXJ0ZXhTaGFkZXI6OmdldFR5cGUpOgorKyAgICAgICAgKGds
OjpWZXJ0ZXhTaGFkZXI6OnVuY29tcGlsZSk6CisrICAgICAgICAoZ2w6OlZlcnRleFNoYWRlcjo6
Y29tcGlsZSk6CisrICAgICAgICAoZ2w6OlZlcnRleFNoYWRlcjo6Z2V0U2VtYW50aWNJbmRleCk6
CisrICAgICAgICAoZ2w6OlZlcnRleFNoYWRlcjo6cGFyc2VBdHRyaWJ1dGVzKToKKysgICAgICAg
IChnbDo6RnJhZ21lbnRTaGFkZXI6OkZyYWdtZW50U2hhZGVyKToKKysgICAgICAgIChnbDo6RnJh
Z21lbnRTaGFkZXI6On5GcmFnbWVudFNoYWRlcik6CisrICAgICAgICAoZ2w6OkZyYWdtZW50U2hh
ZGVyOjpnZXRUeXBlKToKKysgICAgICAgIChnbDo6RnJhZ21lbnRTaGFkZXI6OmNvbXBpbGUpOgor
KyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1NoYWRlci5oOiBBZGRlZC4KKysgICAgICAgIChnbDo6
VmFyeWluZzo6VmFyeWluZyk6CisrICAgICAgICAoZ2w6OkF0dHJpYnV0ZTo6QXR0cmlidXRlKToK
KysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9UZXh0dXJlLmNwcDogQWRkZWQuCisrICAgICAgICAo
Z2w6OkNvbnZlcnRUZXh0dXJlSW50ZXJuYWxGb3JtYXQpOgorKyAgICAgICAgKGdsOjpJc1RleHR1
cmVGb3JtYXRSZW5kZXJhYmxlKToKKysgICAgICAgIChnbDo6R2V0VGV4dHVyZVVzYWdlKToKKysg
ICAgICAgIChnbDo6TWFrZVZhbGlkU2l6ZSk6CisrICAgICAgICAoZ2w6OkNvcHlMb2NrYWJsZVN1
cmZhY2VzKToKKysgICAgICAgIChnbDo6SW1hZ2U6OkltYWdlKToKKysgICAgICAgIChnbDo6SW1h
Z2U6On5JbWFnZSk6CisrICAgICAgICAoZ2w6OkltYWdlOjpyZWRlZmluZSk6CisrICAgICAgICAo
Z2w6OkltYWdlOjpjcmVhdGVTdXJmYWNlKToKKysgICAgICAgIChnbDo6SW1hZ2U6OmxvY2spOgor
KyAgICAgICAgKGdsOjpJbWFnZTo6dW5sb2NrKToKKysgICAgICAgIChnbDo6SW1hZ2U6OmlzUmVu
ZGVyYWJsZUZvcm1hdCk6CisrICAgICAgICAoZ2w6OkltYWdlOjpnZXREM0RGb3JtYXQpOgorKyAg
ICAgICAgKGdsOjpJbWFnZTo6Z2V0U3VyZmFjZSk6CisrICAgICAgICAoZ2w6OkltYWdlOjpzZXRN
YW5hZ2VkU3VyZmFjZSk6CisrICAgICAgICAoZ2w6OkltYWdlOjp1cGRhdGVTdXJmYWNlKToKKysg
ICAgICAgIChnbDo6SW1hZ2U6OmxvYWREYXRhKToKKysgICAgICAgIChnbDo6SW1hZ2U6OmxvYWRB
bHBoYURhdGEpOgorKyAgICAgICAgKGdsOjpJbWFnZTo6bG9hZEFscGhhRmxvYXREYXRhKToKKysg
ICAgICAgIChnbDo6SW1hZ2U6OmxvYWRBbHBoYUhhbGZGbG9hdERhdGEpOgorKyAgICAgICAgKGds
OjpJbWFnZTo6bG9hZEx1bWluYW5jZURhdGEpOgorKyAgICAgICAgKGdsOjpJbWFnZTo6bG9hZEx1
bWluYW5jZUZsb2F0RGF0YSk6CisrICAgICAgICAoZ2w6OkltYWdlOjpsb2FkTHVtaW5hbmNlSGFs
ZkZsb2F0RGF0YSk6CisrICAgICAgICAoZ2w6OkltYWdlOjpsb2FkTHVtaW5hbmNlQWxwaGFEYXRh
KToKKysgICAgICAgIChnbDo6SW1hZ2U6OmxvYWRMdW1pbmFuY2VBbHBoYUZsb2F0RGF0YSk6Cisr
ICAgICAgICAoZ2w6OkltYWdlOjpsb2FkTHVtaW5hbmNlQWxwaGFIYWxmRmxvYXREYXRhKToKKysg
ICAgICAgIChnbDo6SW1hZ2U6OmxvYWRSR0JVQnl0ZURhdGEpOgorKyAgICAgICAgKGdsOjpJbWFn
ZTo6bG9hZFJHQjU2NURhdGEpOgorKyAgICAgICAgKGdsOjpJbWFnZTo6bG9hZFJHQkZsb2F0RGF0
YSk6CisrICAgICAgICAoZ2w6OkltYWdlOjpsb2FkUkdCSGFsZkZsb2F0RGF0YSk6CisrICAgICAg
ICAoZ2w6OkltYWdlOjpsb2FkUkdCQVVCeXRlRGF0YSk6CisrICAgICAgICAoZ2w6OkltYWdlOjps
b2FkUkdCQTQ0NDREYXRhKToKKysgICAgICAgIChnbDo6SW1hZ2U6OmxvYWRSR0JBNTU1MURhdGEp
OgorKyAgICAgICAgKGdsOjpJbWFnZTo6bG9hZFJHQkFGbG9hdERhdGEpOgorKyAgICAgICAgKGds
OjpJbWFnZTo6bG9hZFJHQkFIYWxmRmxvYXREYXRhKToKKysgICAgICAgIChnbDo6SW1hZ2U6Omxv
YWRCR1JBRGF0YSk6CisrICAgICAgICAoZ2w6OkltYWdlOjpsb2FkQ29tcHJlc3NlZERhdGEpOgor
KyAgICAgICAgKGdsOjpJbWFnZTo6Y29weSk6CisrICAgICAgICAoZ2w6OlRleHR1cmVTdG9yYWdl
OjpUZXh0dXJlU3RvcmFnZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmVTdG9yYWdlOjp+VGV4dHVy
ZVN0b3JhZ2UpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlU3RvcmFnZTo6aXNSZW5kZXJUYXJnZXQp
OgorKyAgICAgICAgKGdsOjpUZXh0dXJlU3RvcmFnZTo6aXNNYW5hZ2VkKToKKysgICAgICAgIChn
bDo6VGV4dHVyZVN0b3JhZ2U6OmdldFBvb2wpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlU3RvcmFn
ZTo6Z2V0VXNhZ2UpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlU3RvcmFnZTo6Z2V0VGV4dHVyZVNl
cmlhbCk6CisrICAgICAgICAoZ2w6OlRleHR1cmVTdG9yYWdlOjppc3N1ZVRleHR1cmVTZXJpYWwp
OgorKyAgICAgICAgKGdsOjpUZXh0dXJlU3RvcmFnZTo6Z2V0TG9kT2Zmc2V0KToKKysgICAgICAg
IChnbDo6VGV4dHVyZTo6VGV4dHVyZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6On5UZXh0dXJl
KToKKysgICAgICAgIChnbDo6VGV4dHVyZTo6c2V0TWluRmlsdGVyKToKKysgICAgICAgIChnbDo6
VGV4dHVyZTo6c2V0TWFnRmlsdGVyKToKKysgICAgICAgIChnbDo6VGV4dHVyZTo6c2V0V3JhcFMp
OgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpzZXRXcmFwVCk6CisrICAgICAgICAoZ2w6OlRleHR1
cmU6OnNldE1heEFuaXNvdHJvcHkpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpzZXRVc2FnZSk6
CisrICAgICAgICAoZ2w6OlRleHR1cmU6OmdldE1pbkZpbHRlcik6CisrICAgICAgICAoZ2w6OlRl
eHR1cmU6OmdldE1hZ0ZpbHRlcik6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OmdldFdyYXBTKToK
KysgICAgICAgIChnbDo6VGV4dHVyZTo6Z2V0V3JhcFQpOgorKyAgICAgICAgKGdsOjpUZXh0dXJl
OjpnZXRNYXhBbmlzb3Ryb3B5KToKKysgICAgICAgIChnbDo6VGV4dHVyZTo6Z2V0VXNhZ2UpOgor
KyAgICAgICAgKGdsOjpUZXh0dXJlOjppc01pcG1hcEZpbHRlcmVkKToKKysgICAgICAgIChnbDo6
VGV4dHVyZTo6c2V0SW1hZ2UpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpzZXRDb21wcmVzc2Vk
SW1hZ2UpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpzdWJJbWFnZSk6CisrICAgICAgICAoZ2w6
OlRleHR1cmU6OnN1YkltYWdlQ29tcHJlc3NlZCk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6Omdl
dFRleHR1cmUpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpoYXNEaXJ0eVBhcmFtZXRlcnMpOgor
KyAgICAgICAgKGdsOjpUZXh0dXJlOjpoYXNEaXJ0eUltYWdlcyk6CisrICAgICAgICAoZ2w6OlRl
eHR1cmU6OnJlc2V0RGlydHkpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpnZXRUZXh0dXJlU2Vy
aWFsKToKKysgICAgICAgIChnbDo6VGV4dHVyZTo6Z2V0UmVuZGVyVGFyZ2V0U2VyaWFsKToKKysg
ICAgICAgIChnbDo6VGV4dHVyZTo6aXNJbW11dGFibGUpOgorKyAgICAgICAgKGdsOjpUZXh0dXJl
OjpnZXRMb2RPZmZzZXQpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpjcmVhdGlvbkxldmVscyk6
CisrICAgICAgICAoZ2w6OlRleHR1cmU6OmxldmVsQ291bnQpOgorKyAgICAgICAgKGdsOjpUZXh0
dXJlOjpnZXRCbGl0dGVyKToKKysgICAgICAgIChnbDo6VGV4dHVyZTo6Y29weVRvUmVuZGVyVGFy
Z2V0KToKKysgICAgICAgIChnbDo6VGV4dHVyZVN0b3JhZ2UyRDo6VGV4dHVyZVN0b3JhZ2UyRCk6
CisrICAgICAgICAoZ2w6OlRleHR1cmVTdG9yYWdlMkQ6On5UZXh0dXJlU3RvcmFnZTJEKToKKysg
ICAgICAgIChnbDo6VGV4dHVyZVN0b3JhZ2UyRDo6Z2V0U3VyZmFjZUxldmVsKToKKysgICAgICAg
IChnbDo6VGV4dHVyZVN0b3JhZ2UyRDo6Z2V0QmFzZVRleHR1cmUpOgorKyAgICAgICAgKGdsOjpU
ZXh0dXJlU3RvcmFnZTJEOjpnZXRSZW5kZXJUYXJnZXRTZXJpYWwpOgorKyAgICAgICAgKGdsOjpU
ZXh0dXJlMkQ6OlRleHR1cmUyRCk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6flRleHR1cmUy
RCk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6YWRkUHJveHlSZWYpOgorKyAgICAgICAgKGds
OjpUZXh0dXJlMkQ6OnJlbGVhc2VQcm94eSk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6Z2V0
VGFyZ2V0KToKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjpnZXRXaWR0aCk6CisrICAgICAgICAo
Z2w6OlRleHR1cmUyRDo6Z2V0SGVpZ2h0KToKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjpnZXRJ
bnRlcm5hbEZvcm1hdCk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6Z2V0RDNERm9ybWF0KToK
KysgICAgICAgIChnbDo6VGV4dHVyZTJEOjpyZWRlZmluZUltYWdlKToKKysgICAgICAgIChnbDo6
VGV4dHVyZTJEOjpzZXRJbWFnZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6YmluZFRleElt
YWdlKToKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjpyZWxlYXNlVGV4SW1hZ2UpOgorKyAgICAg
ICAgKGdsOjpUZXh0dXJlMkQ6OnNldENvbXByZXNzZWRJbWFnZSk6CisrICAgICAgICAoZ2w6OlRl
eHR1cmUyRDo6Y29tbWl0UmVjdCk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6c3ViSW1hZ2Up
OgorKyAgICAgICAgKGdsOjpUZXh0dXJlMkQ6OnN1YkltYWdlQ29tcHJlc3NlZCk6CisrICAgICAg
ICAoZ2w6OlRleHR1cmUyRDo6Y29weUltYWdlKToKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjpj
b3B5U3ViSW1hZ2UpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlMkQ6OnN0b3JhZ2UpOgorKyAgICAg
ICAgKGdsOjpUZXh0dXJlMkQ6OmlzU2FtcGxlckNvbXBsZXRlKToKKysgICAgICAgIChnbDo6VGV4
dHVyZTJEOjppc01pcG1hcENvbXBsZXRlKToKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjppc0Nv
bXByZXNzZWQpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlMkQ6OmlzRGVwdGgpOgorKyAgICAgICAg
KGdsOjpUZXh0dXJlMkQ6OmdldEJhc2VUZXh0dXJlKToKKysgICAgICAgIChnbDo6VGV4dHVyZTJE
OjpjcmVhdGVUZXh0dXJlKToKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjp1cGRhdGVUZXh0dXJl
KToKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjpjb252ZXJ0VG9SZW5kZXJUYXJnZXQpOgorKyAg
ICAgICAgKGdsOjpUZXh0dXJlMkQ6OmdlbmVyYXRlTWlwbWFwcyk6CisrICAgICAgICAoZ2w6OlRl
eHR1cmUyRDo6Z2V0UmVuZGVyYnVmZmVyKToKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjpnZXRS
ZW5kZXJUYXJnZXQpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlMkQ6OmdldERlcHRoU3RlbmNpbCk6
CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6Z2V0U3RvcmFnZSk6CisrICAgICAgICAoZ2w6OlRl
eHR1cmVTdG9yYWdlQ3ViZU1hcDo6VGV4dHVyZVN0b3JhZ2VDdWJlTWFwKToKKysgICAgICAgIChn
bDo6VGV4dHVyZVN0b3JhZ2VDdWJlTWFwOjp+VGV4dHVyZVN0b3JhZ2VDdWJlTWFwKToKKysgICAg
ICAgIChnbDo6VGV4dHVyZVN0b3JhZ2VDdWJlTWFwOjpnZXRDdWJlTWFwU3VyZmFjZSk6CisrICAg
ICAgICAoZ2w6OlRleHR1cmVTdG9yYWdlQ3ViZU1hcDo6Z2V0QmFzZVRleHR1cmUpOgorKyAgICAg
ICAgKGdsOjpUZXh0dXJlU3RvcmFnZUN1YmVNYXA6OmdldFJlbmRlclRhcmdldFNlcmlhbCk6Cisr
ICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpUZXh0dXJlQ3ViZU1hcCk6CisrICAgICAgICAo
Z2w6OlRleHR1cmVDdWJlTWFwOjp+VGV4dHVyZUN1YmVNYXApOgorKyAgICAgICAgKGdsOjpUZXh0
dXJlQ3ViZU1hcDo6YWRkUHJveHlSZWYpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6
cmVsZWFzZVByb3h5KToKKysgICAgICAgIChnbDo6VGV4dHVyZUN1YmVNYXA6OmdldFRhcmdldCk6
CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpnZXRXaWR0aCk6CisrICAgICAgICAoZ2w6
OlRleHR1cmVDdWJlTWFwOjpnZXRIZWlnaHQpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1h
cDo6Z2V0SW50ZXJuYWxGb3JtYXQpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6Z2V0
RDNERm9ybWF0KToKKysgICAgICAgIChnbDo6VGV4dHVyZUN1YmVNYXA6OnNldEltYWdlUG9zWCk6
CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpzZXRJbWFnZU5lZ1gpOgorKyAgICAgICAg
KGdsOjpUZXh0dXJlQ3ViZU1hcDo6c2V0SW1hZ2VQb3NZKToKKysgICAgICAgIChnbDo6VGV4dHVy
ZUN1YmVNYXA6OnNldEltYWdlTmVnWSk6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpz
ZXRJbWFnZVBvc1opOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6c2V0SW1hZ2VOZWda
KToKKysgICAgICAgIChnbDo6VGV4dHVyZUN1YmVNYXA6OnNldENvbXByZXNzZWRJbWFnZSk6Cisr
ICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpjb21taXRSZWN0KToKKysgICAgICAgIChnbDo6
VGV4dHVyZUN1YmVNYXA6OnN1YkltYWdlKToKKysgICAgICAgIChnbDo6VGV4dHVyZUN1YmVNYXA6
OnN1YkltYWdlQ29tcHJlc3NlZCk6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjppc1Nh
bXBsZXJDb21wbGV0ZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjppc0N1YmVDb21w
bGV0ZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjppc01pcG1hcEN1YmVDb21wbGV0
ZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjppc0NvbXByZXNzZWQpOgorKyAgICAg
ICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6Z2V0QmFzZVRleHR1cmUpOgorKyAgICAgICAgKGdsOjpU
ZXh0dXJlQ3ViZU1hcDo6Y3JlYXRlVGV4dHVyZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJl
TWFwOjp1cGRhdGVUZXh0dXJlKToKKysgICAgICAgIChnbDo6VGV4dHVyZUN1YmVNYXA6OmNvbnZl
cnRUb1JlbmRlclRhcmdldCk6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpzZXRJbWFn
ZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpmYWNlSW5kZXgpOgorKyAgICAgICAg
KGdsOjpUZXh0dXJlQ3ViZU1hcDo6cmVkZWZpbmVJbWFnZSk6CisrICAgICAgICAoZ2w6OlRleHR1
cmVDdWJlTWFwOjpjb3B5SW1hZ2UpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6Y29w
eVN1YkltYWdlKToKKysgICAgICAgIChnbDo6VGV4dHVyZUN1YmVNYXA6OnN0b3JhZ2UpOgorKyAg
ICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6Z2VuZXJhdGVNaXBtYXBzKToKKysgICAgICAgIChn
bDo6VGV4dHVyZUN1YmVNYXA6OmdldFJlbmRlcmJ1ZmZlcik6CisrICAgICAgICAoZ2w6OlRleHR1
cmVDdWJlTWFwOjpnZXRSZW5kZXJUYXJnZXQpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1h
cDo6Z2V0U3RvcmFnZSk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvVGV4dHVyZS5oOiBBZGRl
ZC4KKysgICAgICAgIChnbDo6SW1hZ2U6Om1hcmtEaXJ0eSk6CisrICAgICAgICAoZ2w6OkltYWdl
OjptYXJrQ2xlYW4pOgorKyAgICAgICAgKGdsOjpJbWFnZTo6Z2V0V2lkdGgpOgorKyAgICAgICAg
KGdsOjpJbWFnZTo6Z2V0SGVpZ2h0KToKKysgICAgICAgIChnbDo6SW1hZ2U6OmdldEludGVybmFs
Rm9ybWF0KToKKysgICAgICAgIChnbDo6SW1hZ2U6OmlzRGlydHkpOgorKyAgICAgICAgKiBzcmMv
bGliR0xFU3YyL1RleHR1cmVTU0UyLmNwcDogQWRkZWQuCisrICAgICAgICAoZ2w6OkltYWdlOjps
b2FkUkdCQVVCeXRlRGF0YVNTRTIpOgorKyAgICAgICAgKGdsOjpJbWFnZTo6bG9hZEFscGhhRGF0
YVNTRTIpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1ZlcnRleERhdGFNYW5hZ2VyLmNwcDog
QWRkZWQuCisrICAgICAgICAoZ2w6OmVsZW1lbnRzSW5CdWZmZXIpOgorKyAgICAgICAgKGdsOjpW
ZXJ0ZXhEYXRhTWFuYWdlcjo6VmVydGV4RGF0YU1hbmFnZXIpOgorKyAgICAgICAgKGdsOjpWZXJ0
ZXhEYXRhTWFuYWdlcjo6flZlcnRleERhdGFNYW5hZ2VyKToKKysgICAgICAgIChnbDo6VmVydGV4
RGF0YU1hbmFnZXI6OndyaXRlQXR0cmlidXRlRGF0YSk6CisrICAgICAgICAoZ2w6OlZlcnRleERh
dGFNYW5hZ2VyOjpwcmVwYXJlVmVydGV4RGF0YSk6CisrICAgICAgICAoZ2w6OlZlcnRleERhdGFN
YW5hZ2VyOjpzcGFjZVJlcXVpcmVkKToKKysgICAgICAgIChnbDo6VmVydGV4RGF0YU1hbmFnZXI6
OmNoZWNrVmVydGV4Q2Fwcyk6CisrICAgICAgICAoZ2w6OlZlcnRleERhdGFNYW5hZ2VyOjp0eXBl
SW5kZXgpOgorKyAgICAgICAgKGdsOjpWZXJ0ZXhCdWZmZXI6OlZlcnRleEJ1ZmZlcik6CisrICAg
ICAgICAoZ2w6OlZlcnRleEJ1ZmZlcjo6flZlcnRleEJ1ZmZlcik6CisrICAgICAgICAoZ2w6OlZl
cnRleEJ1ZmZlcjo6dW5tYXApOgorKyAgICAgICAgKGdsOjpWZXJ0ZXhCdWZmZXI6OmdldEJ1ZmZl
cik6CisrICAgICAgICAoZ2w6OlZlcnRleEJ1ZmZlcjo6Z2V0U2VyaWFsKToKKysgICAgICAgIChn
bDo6VmVydGV4QnVmZmVyOjppc3N1ZVNlcmlhbCk6CisrICAgICAgICAoZ2w6OkFycmF5VmVydGV4
QnVmZmVyOjpBcnJheVZlcnRleEJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkFycmF5VmVydGV4QnVm
ZmVyOjp+QXJyYXlWZXJ0ZXhCdWZmZXIpOgorKyAgICAgICAgKGdsOjpBcnJheVZlcnRleEJ1ZmZl
cjo6YWRkUmVxdWlyZWRTcGFjZSk6CisrICAgICAgICAoZ2w6OlN0cmVhbWluZ1ZlcnRleEJ1ZmZl
cjo6U3RyZWFtaW5nVmVydGV4QnVmZmVyKToKKysgICAgICAgIChnbDo6U3RyZWFtaW5nVmVydGV4
QnVmZmVyOjp+U3RyZWFtaW5nVmVydGV4QnVmZmVyKToKKysgICAgICAgIChnbDo6U3RyZWFtaW5n
VmVydGV4QnVmZmVyOjptYXApOgorKyAgICAgICAgKGdsOjpTdHJlYW1pbmdWZXJ0ZXhCdWZmZXI6
OnJlc2VydmVSZXF1aXJlZFNwYWNlKToKKysgICAgICAgIChnbDo6U3RhdGljVmVydGV4QnVmZmVy
OjpTdGF0aWNWZXJ0ZXhCdWZmZXIpOgorKyAgICAgICAgKGdsOjpTdGF0aWNWZXJ0ZXhCdWZmZXI6
On5TdGF0aWNWZXJ0ZXhCdWZmZXIpOgorKyAgICAgICAgKGdsOjpTdGF0aWNWZXJ0ZXhCdWZmZXI6
Om1hcCk6CisrICAgICAgICAoZ2w6OlN0YXRpY1ZlcnRleEJ1ZmZlcjo6cmVzZXJ2ZVJlcXVpcmVk
U3BhY2UpOgorKyAgICAgICAgKGdsOjpTdGF0aWNWZXJ0ZXhCdWZmZXI6Omxvb2t1cEF0dHJpYnV0
ZSk6CisrICAgICAgICAoZ2w6OlZlcnRleERhdGFNYW5hZ2VyOjpmb3JtYXRDb252ZXJ0ZXIpOgor
KyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1ZlcnRleERhdGFNYW5hZ2VyLmg6IEFkZGVkLgorKyAg
ICAgICAgKGdsOjpBcnJheVZlcnRleEJ1ZmZlcjo6c2l6ZSk6CisrICAgICAgICAoZ2w6OlZlcnRl
eERhdGFNYW5hZ2VyOjpkaXJ0eUN1cnJlbnRWYWx1ZSk6CisrICAgICAgICAqIHNyYy9saWJHTEVT
djIvbGliR0xFU3YyLmNwcDogQWRkZWQuCisrICAgICAgICAodmFsaWRJbWFnZVNpemUpOgorKyAg
ICAgICAgKGNoZWNrVGV4dHVyZUZvcm1hdFR5cGUpOgorKyAgICAgICAgKHZhbGlkYXRlU3ViSW1h
Z2VQYXJhbXMyRCk6CisrICAgICAgICAodmFsaWRhdGVTdWJJbWFnZVBhcmFtc0N1YmUpOgorKyAg
ICAgICAgKHZhbGlkUmVhZEZvcm1hdFR5cGUpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL2xp
YkdMRVN2Mi5kZWY6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL2xpYkdMRVN2Mi5y
YzogQWRkZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvbGliR0xFU3YyLnZjeHByb2o6IEFk
ZGVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL2xpYkdMRVN2Mi52Y3hwcm9qLmZpbHRlcnM6
IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL21haW4uY3BwOiBBZGRlZC4KKysgICAg
ICAgIChEbGxNYWluKToKKysgICAgICAgIChnbDo6bWFrZUN1cnJlbnQpOgorKyAgICAgICAgKGds
OjpnZXRDb250ZXh0KToKKysgICAgICAgIChnbDo6Z2V0Tm9uTG9zdENvbnRleHQpOgorKyAgICAg
ICAgKGdsOjpnZXREaXNwbGF5KToKKysgICAgICAgIChnbDo6Z2V0RGV2aWNlKToKKysgICAgICAg
IChnbDo6Y2hlY2tEZXZpY2VMb3N0KToKKysgICAgICAgIChlcnJvcik6CisrICAgICAgICAqIHNy
Yy9saWJHTEVTdjIvbWFpbi5oOiBBZGRlZC4KKysgICAgICAgIChlcnJvcik6CisrICAgICAgICAq
IHNyYy9saWJHTEVTdjIvbWF0aHV0aWwuaDogQWRkZWQuCisrICAgICAgICAoZ2w6OlZlY3RvcjQ6
OlZlY3RvcjQpOgorKyAgICAgICAgKGdsOjppc1BvdzIpOgorKyAgICAgICAgKGdsOjpsb2cyKToK
KysgICAgICAgIChnbDo6Y2VpbFBvdzIpOgorKyAgICAgICAgKGdsOjpjbGFtcCk6CisrICAgICAg
ICAoZ2w6OmNsYW1wMDEpOgorKyAgICAgICAgKGdsOjp1bm9ybSk6CisrICAgICAgICAoZ2w6OnN1
cHBvcnRzU1NFMik6CisrICAgICAgICAoZ2w6OmZsb2F0MzJUb0Zsb2F0MTYpOgorKyAgICAgICAg
KiBzcmMvbGliR0xFU3YyL3Jlc291cmNlLmg6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGliR0xF
U3YyL3NoYWRlcnM6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3NoYWRlcnMvQmxp
dC5wczogQWRkZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvc2hhZGVycy9CbGl0LnZzOiBB
ZGRlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9zaGFkZXJzL2NvbXBvbmVudG1hc2twcy5o
OiBBZGRlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9zaGFkZXJzL2ZsaXB5dnMuaDogQWRk
ZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvc2hhZGVycy9nZW5lcmF0ZV9zaGFkZXJzLmJh
dDogQWRkZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvc2hhZGVycy9sdW1pbmFuY2Vwcy5o
OiBBZGRlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9zaGFkZXJzL3Bhc3N0aHJvdWdocHMu
aDogQWRkZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvc2hhZGVycy9zdGFuZGFyZHZzLmg6
IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3V0aWxpdGllcy5jcHA6IEFkZGVkLgor
KyAgICAgICAgKGdsOjpVbmlmb3JtRXh0ZXJuYWxDb21wb25lbnRDb3VudCk6CisrICAgICAgICAo
Z2w6OlVuaWZvcm1JbnRlcm5hbENvbXBvbmVudENvdW50KToKKysgICAgICAgIChnbDo6VW5pZm9y
bUNvbXBvbmVudFR5cGUpOgorKyAgICAgICAgKGdsOjpVbmlmb3JtQ29tcG9uZW50U2l6ZSk6Cisr
ICAgICAgICAoZ2w6OlVuaWZvcm1JbnRlcm5hbFNpemUpOgorKyAgICAgICAgKGdsOjpVbmlmb3Jt
RXh0ZXJuYWxTaXplKToKKysgICAgICAgIChnbDo6VmFyaWFibGVSb3dDb3VudCk6CisrICAgICAg
ICAoZ2w6OlZhcmlhYmxlQ29sdW1uQ291bnQpOgorKyAgICAgICAgKGdsOjpBbGxvY2F0ZUZpcnN0
RnJlZUJpdHMpOgorKyAgICAgICAgKGdsOjpDb21wdXRlUGl0Y2gpOgorKyAgICAgICAgKGdsOjpD
b21wdXRlQ29tcHJlc3NlZFBpdGNoKToKKysgICAgICAgIChnbDo6Q29tcHV0ZUNvbXByZXNzZWRT
aXplKToKKysgICAgICAgIChnbDo6SXNDb21wcmVzc2VkKToKKysgICAgICAgIChnbDo6SXNEZXB0
aFRleHR1cmUpOgorKyAgICAgICAgKGdsOjpJc1N0ZW5jaWxUZXh0dXJlKToKKysgICAgICAgIChn
bDo6Q29tcHV0ZVBpeGVsU2l6ZSk6CisrICAgICAgICAoZ2w6OklzQ3ViZW1hcFRleHR1cmVUYXJn
ZXQpOgorKyAgICAgICAgKGdsOjpJc0ludGVybmFsVGV4dHVyZVRhcmdldCk6CisrICAgICAgICAo
Z2w6OkNvbnZlcnRTaXplZEludGVybmFsRm9ybWF0KToKKysgICAgICAgIChnbDo6RXh0cmFjdEZv
cm1hdCk6CisrICAgICAgICAoZ2w6OkV4dHJhY3RUeXBlKToKKysgICAgICAgIChnbDo6SXNDb2xv
clJlbmRlcmFibGUpOgorKyAgICAgICAgKGdsOjpJc0RlcHRoUmVuZGVyYWJsZSk6CisrICAgICAg
ICAoZ2w6OklzU3RlbmNpbFJlbmRlcmFibGUpOgorKyAgICAgICAgKGdsOjpJc0Zsb2F0MzJGb3Jt
YXQpOgorKyAgICAgICAgKGdsOjpJc0Zsb2F0MTZGb3JtYXQpOgorKyAgICAgICAgKGVzMmR4OjpD
b252ZXJ0Q29tcGFyaXNvbik6CisrICAgICAgICAoZXMyZHg6OkNvbnZlcnRDb2xvcik6CisrICAg
ICAgICAoZXMyZHg6OkNvbnZlcnRCbGVuZEZ1bmMpOgorKyAgICAgICAgKGVzMmR4OjpDb252ZXJ0
QmxlbmRPcCk6CisrICAgICAgICAoZXMyZHg6OkNvbnZlcnRTdGVuY2lsT3ApOgorKyAgICAgICAg
KGVzMmR4OjpDb252ZXJ0VGV4dHVyZVdyYXApOgorKyAgICAgICAgKGVzMmR4OjpDb252ZXJ0Q3Vs
bE1vZGUpOgorKyAgICAgICAgKGVzMmR4OjpDb252ZXJ0Q3ViZUZhY2UpOgorKyAgICAgICAgKGVz
MmR4OjpDb252ZXJ0Q29sb3JNYXNrKToKKysgICAgICAgIChlczJkeDo6Q29udmVydE1hZ0ZpbHRl
cik6CisrICAgICAgICAoZXMyZHg6OkNvbnZlcnRNaW5GaWx0ZXIpOgorKyAgICAgICAgKGVzMmR4
OjpDb252ZXJ0UHJpbWl0aXZlVHlwZSk6CisrICAgICAgICAoZXMyZHg6OkNvbnZlcnRSZW5kZXJi
dWZmZXJGb3JtYXQpOgorKyAgICAgICAgKGVzMmR4OjpHZXRNdWx0aXNhbXBsZVR5cGVGcm9tU2Ft
cGxlcyk6CisrICAgICAgICAoZHgyZXM6OkdldFN0ZW5jaWxTaXplKToKKysgICAgICAgIChkeDJl
czo6R2V0QWxwaGFTaXplKToKKysgICAgICAgIChkeDJlczo6R2V0UmVkU2l6ZSk6CisrICAgICAg
ICAoZHgyZXM6OkdldEdyZWVuU2l6ZSk6CisrICAgICAgICAoZHgyZXM6OkdldEJsdWVTaXplKToK
KysgICAgICAgIChkeDJlczo6R2V0RGVwdGhTaXplKToKKysgICAgICAgIChkeDJlczo6R2V0U2Ft
cGxlc0Zyb21NdWx0aXNhbXBsZVR5cGUpOgorKyAgICAgICAgKGR4MmVzOjpJc0Zvcm1hdENoYW5u
ZWxFcXVpdmFsZW50KToKKysgICAgICAgIChkeDJlczo6Q29udmVydFJlYWRCdWZmZXJGb3JtYXQp
OgorKyAgICAgICAgKGR4MmVzOjpDb252ZXJ0QmFja0J1ZmZlckZvcm1hdCk6CisrICAgICAgICAo
ZHgyZXM6OkNvbnZlcnREZXB0aFN0ZW5jaWxGb3JtYXQpOgorKyAgICAgICAgKGR4OjpJc0NvbXBy
ZXNzZWRGb3JtYXQpOgorKyAgICAgICAgKGR4OjpDb21wdXRlUm93U2l6ZSk6CisrICAgICAgICAo
Z2V0VGVtcFBhdGgpOgorKyAgICAgICAgKHdyaXRlRmlsZSk6CisrICAgICAgICAqIHNyYy9saWJH
TEVTdjIvdXRpbGl0aWVzLmg6IEFkZGVkLgorKyAgICAgICAgKGlzRGV2aWNlTG9zdEVycm9yKToK
KysgICAgICAgICogc3JjL2xpYkdMRVN2Mi92ZXJ0ZXhjb252ZXJzaW9uLmg6IEFkZGVkLgorKyAg
ICAgICAgKGdsOjpJZGVudGl0eTo6Y29udmVydCk6CisrICAgICAgICAoZ2w6OkNhc3Q6OmNvbnZl
cnQpOgorKyAgICAgICAgKGdsOjpOb3JtYWxpemU6OmNvbnZlcnQpOgorKyAgICAgICAgKGdsOjpG
aXhlZFRvRmxvYXQ6OmNvbnZlcnQpOgorKyAgICAgICAgKGdsOjpTaW1wbGVEZWZhdWx0VmFsdWVz
Ojp6ZXJvKToKKysgICAgICAgIChnbDo6U2ltcGxlRGVmYXVsdFZhbHVlczo6b25lKToKKysgICAg
ICAgIChnbDo6Tm9ybWFsaXplZERlZmF1bHRWYWx1ZXM6Onplcm8pOgorKyAgICAgICAgKGdsOjpO
b3JtYWxpemVkRGVmYXVsdFZhbHVlczo6b25lKToKKysgICAgICAgIChnbDo6VmVydGV4RGF0YUNv
bnZlcnRlcjo6Y29udmVydEFycmF5KToKKysgICAgICAgIChnbDo6VmVydGV4RGF0YUNvbnZlcnRl
cjo6cG9pbnRlckFkZEJ5dGVzKToKKysgICAgICAgIChnbDo6VmVydGV4RGF0YUNvbnZlcnRlcjo6
Y29weUNvbXBvbmVudCk6CisrCisrMjAxMy0wNy0xNyAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJp
c3RlbnNlbkBhcHBsZS5jb20+CisrCisrICAgICAgICBNYWRlIGEgcmVwZWF0YWJsZSBwcm9jZXNz
IGZvciB1cGRhdGluZyBBTkdMRSB0aGF0IGRvZXMgbm90IGluY2x1ZGUgbWFudWFsbHkgZWRpdGlu
ZyBhbnkgZmlsZXMuCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTE4ODE1CisrCisrICAgICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisrCisr
ICAgICAgICAqIHNyYy9jb21waWxlci9nbHNsYW5nLnk6CisrICAgICAgICAqIHNyYy9jb21waWxl
ci9nbHNsYW5nX2xleC5jcHA6CisrICAgICAgICAqIHNyYy9jb21waWxlci9nbHNsYW5nX3RhYi5j
cHA6CisrICAgICAgICAqIHNyYy9jb21waWxlci9nbHNsYW5nX3RhYi5oOiBQdXQgWVlMVFlQRSBk
ZWZpbml0aW9uIGluICV1bmlvbiBpbnN0ZWFkIG9mIHByb2xvZ3VlIGFuZCByYW4gQmlzb24uCisr
CisrMjAxMy0wNy0xNiAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkBhcHBsZS5jb20+
CisrCisrICAgICAgICBVcGRhdGUgQU5HTEUgZnJvbSByMTk4NyB0byByMjQyNiB3aGlsZSBrZWVw
aW5nIHRoZXNlIGNoYW5nZXM6CisrICAgICAgICBLZWVwaW5nICNpZiBkZWZpbmVkKF9NU0NfVkVS
KSBhcm91bmQgI3ByYWdtYSB3YXJuaW5nKGRpc2FibGU6IDQ3MTgpIGluIERlcGVuZGVuY3lHcmFw
aC5jcHAuCisrICAgICAgICBLZWVwaW5nIGluY2x1ZGUga2hycGxhdGZvcm0uaCBpbnN0ZWFkIG9m
IEtIUi9raHJwbGF0Zm9ybS5oIGluIFNoYWRlckxhbmcuaC4KKysgICAgICAgIEFkZGVkIHN0YXRp
Y19jYXN0cyBpbiBJbnRlcm1lZGlhdGUuY3BwIHRvIGZpeCBjb21waWxpbmcgb24gTWFjLgorKyAg
ICAgICAgQ2hhbmdlZCBlbnVtIGJpdCBmaWVsZHMgdG8ganVzdCBlbnVtcyBmb3IgR0NDIGluIFR5
cGVzLmggdG8gZml4IGNvbXBpbGluZyBmb3IgR1RLLgorKyAgICAgICAgUmFuIEJpc29uIG9uIE1h
YyBhZnRlciByZW1vdmluZyB0aGUgdW5zdXBwb3J0ZWQgJWNvZGUgdGFnIChTZWUgZGlmZiB1cGxv
YWRlZCB0byBidWcgZm9yIGRldGFpbHMpLgorKyAgICAgICAgQWRkZWQgWVlMVFlQRSBkZWZpbml0
aW9uIHRvIGdsc2xhbmdfdGFiLmggd2hpY2ggd291bGQgaGF2ZSBiZWVuIHB1dCB0aGVyZSBieSB0
aGUgdW5zdXBwb3J0ZWQgJWNvZGUgdGFnLgorKworKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTExODU1MAorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGVh
biBKYWNrc29uLgorKworKyAgICAgICAgKiBBTkdMRS5wbGlzdDogVXBkYXRlZCByZXZpc2lvbiBv
ZiBBTkdMRSB0byAyNDI2LgorKyAgICAgICAgKiBBTkdMRS54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qOgorKyAgICAgICAgKiBHTlVtYWtlZmlsZS5hbToKKysgICAgICAgICogVGFyZ2V0LnByaToK
KysgICAgICAgICAgICBSZW5hbWVkIERldGVjdFJlY3Vyc2lvbiB0byBEZXRlY3RDYWxsRGVwdGgg
YW5kIGFkZGVkIGJ1aWx0aW5fc3ltYm9sX3RhYmxlLgorKyAgICAgICAgKiBpbmNsdWRlL0dMU0xB
TkcvU2hhZGVyTGFuZy5oOgorKyAgICAgICAgKiBzcmMvY29tbW9uL3ZlcnNpb24uaDoKKysgICAg
ICAgICogc3JjL2NvbXBpbGVyL0Jhc2VUeXBlcy5oOgorKyAgICAgICAgKGdldFF1YWxpZmllclN0
cmluZyk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9Db21tb24uaDoKKysgICAgICAgICogc3Jj
L2NvbXBpbGVyL0NvbXBpbGVyLmNwcDoKKysgICAgICAgIChUQ29tcGlsZXI6OlRDb21waWxlcik6
CisrICAgICAgICAoVENvbXBpbGVyOjpJbml0KToKKysgICAgICAgIChUQ29tcGlsZXI6OmNvbXBp
bGUpOgorKyAgICAgICAgKFRDb21waWxlcjo6ZGV0ZWN0Q2FsbERlcHRoKToKKysgICAgICAgIChU
Q29tcGlsZXI6OmVuZm9yY2VUaW1pbmdSZXN0cmljdGlvbnMpOgorKyAgICAgICAgKFRDb21waWxl
cjo6bGltaXRFeHByZXNzaW9uQ29tcGxleGl0eSk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9D
b25zdGFudFVuaW9uLmg6CisrICAgICAgICAoQ29uc3RhbnRVbmlvbjo6Q29uc3RhbnRVbmlvbik6
CisrICAgICAgICAqIHNyYy9jb21waWxlci9EZXRlY3RDYWxsRGVwdGguY3BwOiBBZGRlZC4KKysg
ICAgICAgIChEZXRlY3RDYWxsRGVwdGg6OkZ1bmN0aW9uTm9kZTo6RnVuY3Rpb25Ob2RlKToKKysg
ICAgICAgIChEZXRlY3RDYWxsRGVwdGg6OkZ1bmN0aW9uTm9kZTo6Z2V0TmFtZSk6CisrICAgICAg
ICAoRGV0ZWN0Q2FsbERlcHRoOjpGdW5jdGlvbk5vZGU6OmFkZENhbGxlZSk6CisrICAgICAgICAo
RGV0ZWN0Q2FsbERlcHRoOjpGdW5jdGlvbk5vZGU6OmRldGVjdENhbGxEZXB0aCk6CisrICAgICAg
ICAoRGV0ZWN0Q2FsbERlcHRoOjpGdW5jdGlvbk5vZGU6OnJlc2V0KToKKysgICAgICAgIChEZXRl
Y3RDYWxsRGVwdGg6OkRldGVjdENhbGxEZXB0aCk6CisrICAgICAgICAoRGV0ZWN0Q2FsbERlcHRo
Ojp+RGV0ZWN0Q2FsbERlcHRoKToKKysgICAgICAgIChEZXRlY3RDYWxsRGVwdGg6OnZpc2l0QWdn
cmVnYXRlKToKKysgICAgICAgIChEZXRlY3RDYWxsRGVwdGg6OmNoZWNrRXhjZWVkc01heERlcHRo
KToKKysgICAgICAgIChEZXRlY3RDYWxsRGVwdGg6OnJlc2V0RnVuY3Rpb25Ob2Rlcyk6CisrICAg
ICAgICAoRGV0ZWN0Q2FsbERlcHRoOjpkZXRlY3RDYWxsRGVwdGhGb3JGdW5jdGlvbik6CisrICAg
ICAgICAoRGV0ZWN0Q2FsbERlcHRoOjpkZXRlY3RDYWxsRGVwdGgpOgorKyAgICAgICAgKERldGVj
dENhbGxEZXB0aDo6ZmluZEZ1bmN0aW9uQnlOYW1lKToKKysgICAgICAgICogc3JjL2NvbXBpbGVy
L0RldGVjdENhbGxEZXB0aC5oOiBBZGRlZC4KKysgICAgICAgIChEZXRlY3RDYWxsRGVwdGg6Omdl
dEluZm9TaW5rKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL0RldGVjdFJlY3Vyc2lvbi5jcHA6
IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9jb21waWxlci9EZXRlY3RSZWN1cnNpb24uaDogUmVt
b3ZlZC4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL0RpYWdub3N0aWNzLmNwcDoKKysgICAgICAg
IChURGlhZ25vc3RpY3M6OndyaXRlSW5mbyk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9Gb3JM
b29wVW5yb2xsLmNwcDoKKysgICAgICAgIChGb3JMb29wVW5yb2xsOjpldmFsdWF0ZUludENvbnN0
YW50KToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL0luZm9TaW5rLmNwcDoKKysgICAgICAgIChU
SW5mb1NpbmtCYXNlOjpwcmVmaXgpOgorKyAgICAgICAgKFRJbmZvU2lua0Jhc2U6OmxvY2F0aW9u
KToKKysgICAgICAgIChUSW5mb1NpbmtCYXNlOjptZXNzYWdlKToKKysgICAgICAgICogc3JjL2Nv
bXBpbGVyL0luZm9TaW5rLmg6CisrICAgICAgICAqIHNyYy9jb21waWxlci9Jbml0aWFsaXplLmNw
cDoKKysgICAgICAgIChUQnVpbHRJbnM6OmluaXRpYWxpemUpOgorKyAgICAgICAgKElkZW50aWZ5
QnVpbHRJbnMpOgorKyAgICAgICAgKEluaXRFeHRlbnNpb25CZWhhdmlvcik6CisrICAgICAgICAq
IHNyYy9jb21waWxlci9JbnRlcm1lZGlhdGUuY3BwOiBVcGRhdGVkIGFuZCBhZGRlZCBzdGF0aWNf
Y2FzdHMgdG8gZml4IGJ1aWxkIGVycm9ycyBvbiBNYWMuCisrICAgICAgICAoVEludGVybWVkaWF0
ZTo6YWRkU3ltYm9sKToKKysgICAgICAgIChUSW50ZXJtZWRpYXRlOjphZGRCaW5hcnlNYXRoKToK
KysgICAgICAgIChUSW50ZXJtZWRpYXRlOjphZGRBc3NpZ24pOgorKyAgICAgICAgKFRJbnRlcm1l
ZGlhdGU6OmFkZEluZGV4KToKKysgICAgICAgIChUSW50ZXJtZWRpYXRlOjphZGRVbmFyeU1hdGgp
OgorKyAgICAgICAgKFRJbnRlcm1lZGlhdGU6OnNldEFnZ3JlZ2F0ZU9wZXJhdG9yKToKKysgICAg
ICAgIChUSW50ZXJtZWRpYXRlOjphZGRDb252ZXJzaW9uKToKKysgICAgICAgIChUSW50ZXJtZWRp
YXRlOjpncm93QWdncmVnYXRlKToKKysgICAgICAgIChUSW50ZXJtZWRpYXRlOjptYWtlQWdncmVn
YXRlKToKKysgICAgICAgIChUSW50ZXJtZWRpYXRlOjphZGRTZWxlY3Rpb24pOgorKyAgICAgICAg
KFRJbnRlcm1lZGlhdGU6OmFkZENvbW1hKToKKysgICAgICAgIChUSW50ZXJtZWRpYXRlOjphZGRD
b25zdGFudFVuaW9uKToKKysgICAgICAgIChUSW50ZXJtZWRpYXRlOjphZGRTd2l6emxlKToKKysg
ICAgICAgIChUSW50ZXJtZWRpYXRlOjphZGRMb29wKToKKysgICAgICAgIChUSW50ZXJtZWRpYXRl
OjphZGRCcmFuY2gpOgorKyAgICAgICAgKFRJbnRlcm1VbmFyeTo6cHJvbW90ZSk6CisrICAgICAg
ICAoVEludGVybUJpbmFyeTo6cHJvbW90ZSk6CisrICAgICAgICAoQ29tcGFyZVN0cnVjdCk6Cisr
ICAgICAgICAoQ29tcGFyZVN0cnVjdHVyZSk6CisrICAgICAgICAoVEludGVybUNvbnN0YW50VW5p
b246OmZvbGQpOgorKyAgICAgICAgKFRJbnRlcm1lZGlhdGU6OnByb21vdGVDb25zdGFudFVuaW9u
KToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL091dHB1dEdMU0wuY3BwOgorKyAgICAgICAgKFRP
dXRwdXRHTFNMOjp2aXNpdFN5bWJvbCk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9PdXRwdXRH
TFNMLmg6CisrICAgICAgICAqIHNyYy9jb21waWxlci9PdXRwdXRHTFNMQmFzZS5jcHA6CisrICAg
ICAgICAoVE91dHB1dEdMU0xCYXNlOjp3cml0ZVZhcmlhYmxlVHlwZSk6CisrICAgICAgICAoVE91
dHB1dEdMU0xCYXNlOjp3cml0ZUNvbnN0YW50VW5pb24pOgorKyAgICAgICAgKFRPdXRwdXRHTFNM
QmFzZTo6dmlzaXRCaW5hcnkpOgorKyAgICAgICAgKFRPdXRwdXRHTFNMQmFzZTo6dmlzaXRBZ2dy
ZWdhdGUpOgorKyAgICAgICAgKFRPdXRwdXRHTFNMQmFzZTo6Z2V0VHlwZU5hbWUpOgorKyAgICAg
ICAgKFRPdXRwdXRHTFNMQmFzZTo6aGFzaEZ1bmN0aW9uTmFtZSk6CisrICAgICAgICAoVE91dHB1
dEdMU0xCYXNlOjpzdHJ1Y3REZWNsYXJlZCk6CisrICAgICAgICAoVE91dHB1dEdMU0xCYXNlOjpk
ZWNsYXJlU3RydWN0KToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL091dHB1dEdMU0xCYXNlLmg6
CisrICAgICAgICAqIHNyYy9jb21waWxlci9PdXRwdXRITFNMLmNwcDoKKysgICAgICAgIChzaDo6
T3V0cHV0SExTTDo6T3V0cHV0SExTTCk6CisrICAgICAgICAoc2g6Ok91dHB1dEhMU0w6OmhlYWRl
cik6CisrICAgICAgICAoc2g6Ok91dHB1dEhMU0w6OnZpc2l0U3ltYm9sKToKKysgICAgICAgIChz
aDo6T3V0cHV0SExTTDo6dmlzaXRCaW5hcnkpOgorKyAgICAgICAgKHNoOjpPdXRwdXRITFNMOjp2
aXNpdEFnZ3JlZ2F0ZSk6CisrICAgICAgICAoc2g6Ok91dHB1dEhMU0w6OnZpc2l0U2VsZWN0aW9u
KToKKysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6dmlzaXRMb29wKToKKysgICAgICAgIChzaDo6
T3V0cHV0SExTTDo6aGFuZGxlRXhjZXNzaXZlTG9vcCk6CisrICAgICAgICAoc2g6Ok91dHB1dEhM
U0w6OnR5cGVTdHJpbmcpOgorKyAgICAgICAgKHNoOjpPdXRwdXRITFNMOjppbml0aWFsaXplcik6
CisrICAgICAgICAoc2g6Ok91dHB1dEhMU0w6OmFkZENvbnN0cnVjdG9yKToKKysgICAgICAgIChz
aDo6T3V0cHV0SExTTDo6d3JpdGVDb25zdGFudFVuaW9uKToKKysgICAgICAgIChzaDo6T3V0cHV0
SExTTDo6ZGVjb3JhdGVGaWVsZCk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9PdXRwdXRITFNM
Lmg6CisrICAgICAgICAqIHNyYy9jb21waWxlci9QYXJzZUhlbHBlci5jcHA6CisrICAgICAgICAo
VFBhcnNlQ29udGV4dDo6cGFyc2VWZWN0b3JGaWVsZHMpOgorKyAgICAgICAgKFRQYXJzZUNvbnRl
eHQ6OnBhcnNlTWF0cml4RmllbGRzKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0OjplcnJvcik6
CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6d2FybmluZyk6CisrICAgICAgICAoVFBhcnNlQ29u
dGV4dDo6YXNzaWduRXJyb3IpOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OnVuYXJ5T3BFcnJv
cik6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6YmluYXJ5T3BFcnJvcik6CisrICAgICAgICAo
VFBhcnNlQ29udGV4dDo6cHJlY2lzaW9uRXJyb3JDaGVjayk6CisrICAgICAgICAoVFBhcnNlQ29u
dGV4dDo6bFZhbHVlRXJyb3JDaGVjayk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6Z2xvYmFs
RXJyb3JDaGVjayk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6cmVzZXJ2ZWRFcnJvckNoZWNr
KToKKysgICAgICAgIChUUGFyc2VDb250ZXh0Ojpjb25zdHJ1Y3RvckVycm9yQ2hlY2spOgorKyAg
ICAgICAgKFRQYXJzZUNvbnRleHQ6OnZvaWRFcnJvckNoZWNrKToKKysgICAgICAgIChUUGFyc2VD
b250ZXh0Ojpib29sRXJyb3JDaGVjayk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6c2FtcGxl
ckVycm9yQ2hlY2spOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OnN0cnVjdFF1YWxpZmllckVy
cm9yQ2hlY2spOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OnBhcmFtZXRlclNhbXBsZXJFcnJv
ckNoZWNrKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0Ojpjb250YWluc1NhbXBsZXIpOgorKyAg
ICAgICAgKFRQYXJzZUNvbnRleHQ6OmFycmF5U2l6ZUVycm9yQ2hlY2spOgorKyAgICAgICAgKFRQ
YXJzZUNvbnRleHQ6OmFycmF5UXVhbGlmaWVyRXJyb3JDaGVjayk6CisrICAgICAgICAoVFBhcnNl
Q29udGV4dDo6YXJyYXlUeXBlRXJyb3JDaGVjayk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6
YXJyYXlFcnJvckNoZWNrKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0Ojpub25Jbml0Q29uc3RF
cnJvckNoZWNrKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0Ojpub25Jbml0RXJyb3JDaGVjayk6
CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6cGFyYW1FcnJvckNoZWNrKToKKysgICAgICAgIChU
UGFyc2VDb250ZXh0OjpleHRlbnNpb25FcnJvckNoZWNrKToKKysgICAgICAgIChUUGFyc2VDb250
ZXh0OjpmaW5kRnVuY3Rpb24pOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OmlzVmFyaWFibGVC
dWlsdEluKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0OjpleGVjdXRlSW5pdGlhbGl6ZXIpOgor
KyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OmFkZENvbnN0cnVjdG9yKToKKysgICAgICAgIChUUGFy
c2VDb250ZXh0Ojpjb25zdHJ1Y3RCdWlsdEluKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0Ojpj
b25zdHJ1Y3RTdHJ1Y3QpOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OmFkZENvbnN0VmVjdG9y
Tm9kZSk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6YWRkQ29uc3RNYXRyaXhOb2RlKToKKysg
ICAgICAgIChUUGFyc2VDb250ZXh0OjphZGRDb25zdEFycmF5Tm9kZSk6CisrICAgICAgICAoVFBh
cnNlQ29udGV4dDo6YWRkQ29uc3RTdHJ1Y3QpOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OmVu
dGVyU3RydWN0RGVjbGFyYXRpb24pOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OnN0cnVjdE5l
c3RpbmdFcnJvckNoZWNrKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL1BhcnNlSGVscGVyLmg6
CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6VFBhcnNlQ29udGV4dCk6CisrICAgICAgICAoVFBh
cnNlQ29udGV4dDo6cHJhZ21hKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL1Bvb2xBbGxvYy5j
cHA6CisrICAgICAgICAoVFBvb2xBbGxvY2F0b3I6OmFsbG9jYXRlKToKKysgICAgICAgICogc3Jj
L2NvbXBpbGVyL1NoSGFuZGxlLmg6CisrICAgICAgICAqIHNyYy9jb21waWxlci9TaGFkZXJMYW5n
LmNwcDoKKysgICAgICAgIChTaEluaXRCdWlsdEluUmVzb3VyY2VzKToKKysgICAgICAgICogc3Jj
L2NvbXBpbGVyL1N5bWJvbFRhYmxlLmNwcDoKKysgICAgICAgIChUVHlwZTo6VFR5cGUpOgorKyAg
ICAgICAgKFRUeXBlOjpidWlsZE1hbmdsZWROYW1lKToKKysgICAgICAgIChUVHlwZTo6Z2V0T2Jq
ZWN0U2l6ZSk6CisrICAgICAgICAoVFN0cnVjdHVyZTo6Y29udGFpbnNBcnJheXMpOgorKyAgICAg
ICAgKFRTdHJ1Y3R1cmU6OmJ1aWxkTWFuZ2xlZE5hbWUpOgorKyAgICAgICAgKFRTdHJ1Y3R1cmU6
OmNhbGN1bGF0ZU9iamVjdFNpemUpOgorKyAgICAgICAgKFRTdHJ1Y3R1cmU6OmNhbGN1bGF0ZURl
ZXBlc3ROZXN0aW5nKToKKysgICAgICAgIChUU3ltYm9sVGFibGVMZXZlbDo6cmVsYXRlVG9FeHRl
bnNpb24pOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvU3ltYm9sVGFibGUuaDoKKysgICAgICAg
IChUU3ltYm9sOjpyZWxhdGVUb0V4dGVuc2lvbik6CisrICAgICAgICAoVFN5bWJvbDo6Z2V0RXh0
ZW5zaW9uKToKKysgICAgICAgIChUVmFyaWFibGU6OlRWYXJpYWJsZSk6CisrICAgICAgICAoVFZh
cmlhYmxlOjpzZXRRdWFsaWZpZXIpOgorKyAgICAgICAgKFRWYXJpYWJsZTo6c2hhcmVDb25zdFBv
aW50ZXIpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvVHlwZXMuaDogVXBkYXRlZCBhbmQgY2hh
bmdlZCBlbnVtIGJpdCBmaWVsZHMgdG8gZW51bXMgdG8gZml4IGNvbXBpbGluZyB3aXRoIEdDQy4K
KysgICAgICAgIChURmllbGQ6OlRGaWVsZCk6CisrICAgICAgICAoVEZpZWxkOjp0eXBlKToKKysg
ICAgICAgIChURmllbGQ6Om5hbWUpOgorKyAgICAgICAgKE5ld1Bvb2xURmllbGRMaXN0KToKKysg
ICAgICAgIChUU3RydWN0dXJlOjpUU3RydWN0dXJlKToKKysgICAgICAgIChUU3RydWN0dXJlOjpu
YW1lKToKKysgICAgICAgIChUU3RydWN0dXJlOjpmaWVsZHMpOgorKyAgICAgICAgKFRTdHJ1Y3R1
cmU6Om1hbmdsZWROYW1lKToKKysgICAgICAgIChUU3RydWN0dXJlOjpvYmplY3RTaXplKToKKysg
ICAgICAgIChUU3RydWN0dXJlOjpkZWVwZXN0TmVzdGluZyk6CisrICAgICAgICAoVFR5cGU6OlRU
eXBlKToKKysgICAgICAgIChUVHlwZTo6Y2xlYXJBcnJheW5lc3MpOgorKyAgICAgICAgKFRUeXBl
OjpnZXRTdHJ1Y3QpOgorKyAgICAgICAgKFRUeXBlOjpzZXRTdHJ1Y3QpOgorKyAgICAgICAgKFRU
eXBlOjpnZXRNYW5nbGVkTmFtZSk6CisrICAgICAgICAoVFR5cGU6OmdldERlZXBlc3RTdHJ1Y3RO
ZXN0aW5nKToKKysgICAgICAgIChUVHlwZTo6aXNTdHJ1Y3R1cmVDb250YWluaW5nQXJyYXlzKToK
KysgICAgICAgIChUUHVibGljVHlwZTo6c2V0QmFzaWMpOgorKyAgICAgICAgKiBzcmMvY29tcGls
ZXIvVmFyaWFibGVJbmZvLmNwcDoKKysgICAgICAgIChnZXRVc2VyRGVmaW5lZFZhcmlhYmxlSW5m
byk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9idWlsdGluX3N5bWJvbF90YWJsZS5jcHA6IEFk
ZGVkLgorKyAgICAgICAgKGJ1aWx0aW4xKToKKysgICAgICAgIChidWlsdGluMik6CisrICAgICAg
ICAoYnVpbHRpbjMpOgorKyAgICAgICAgKEluc2VydEJ1aWx0SW5GdW5jdGlvbnNDb21tb24pOgor
KyAgICAgICAgKEluc2VydEJ1aWx0SW5GdW5jdGlvbnNWZXJ0ZXgpOgorKyAgICAgICAgKiBzcmMv
Y29tcGlsZXIvYnVpbHRpbl9zeW1ib2xfdGFibGUuaDogQWRkZWQuCisrICAgICAgICAqIHNyYy9j
b21waWxlci9nbHNsYW5nLmw6CisrICAgICAgICAqIHNyYy9jb21waWxlci9nbHNsYW5nLnk6Cisr
ICAgICAgICAqIHNyYy9jb21waWxlci9nbHNsYW5nX2xleC5jcHA6CisrICAgICAgICAoeXlfZ2V0
X3ByZXZpb3VzX3N0YXRlKToKKysgICAgICAgICh5eV90cnlfTlVMX3RyYW5zKToKKysgICAgICAg
ICh5eWdldF9sbG9jKToKKysgICAgICAgICh5eXNldF9sbG9jKToKKysgICAgICAgIChzdHJpbmdf
aW5wdXQpOgorKyAgICAgICAgKGNoZWNrX3R5cGUpOgorKyAgICAgICAgKHJlc2VydmVkX3dvcmQp
OgorKyAgICAgICAgKGdsc2xhbmdfc2Nhbik6CisrICAgICAgICAqIHNyYy9jb21waWxlci9nbHNs
YW5nX3RhYi5jcHA6CisrICAgICAgICAoeXlzeW50YXhfZXJyb3IpOgorKyAgICAgICAgKHl5ZXJy
b3IpOgorKyAgICAgICAgKGdsc2xhbmdfcGFyc2UpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIv
Z2xzbGFuZ190YWIuaDogUmVhZGRlZCBZWUxUWVBFIGRlZmluaXRpb24gYWZ0ZXIgQmlzb24gcmVt
b3ZlZCBpdC4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL2ludGVybU91dC5jcHA6CisrICAgICAg
ICAoVE91dHB1dFRyYXZlcnNlcjo6dmlzaXRVbmFyeSk6CisrICAgICAgICAoVE91dHB1dFRyYXZl
cnNlcjo6dmlzaXRBZ2dyZWdhdGUpOgorKyAgICAgICAgKFRPdXRwdXRUcmF2ZXJzZXI6OnZpc2l0
Q29uc3RhbnRVbmlvbik6CisrICAgICAgICAqIHNyYy9jb21waWxlci9pbnRlcm1lZGlhdGUuaDoK
KysgICAgICAgIChUSW50ZXJtTm9kZTo6VEludGVybU5vZGUpOgorKyAgICAgICAgKFRJbnRlcm1O
b2RlOjp+VEludGVybU5vZGUpOgorKyAgICAgICAgKFRJbnRlcm1Ob2RlOjpnZXRMaW5lKToKKysg
ICAgICAgIChUSW50ZXJtTm9kZTo6c2V0TGluZSk6CisrICAgICAgICAoVEludGVybU5vZGU6Omdl
dEFzTG9vcE5vZGUpOgorKyAgICAgICAgKFRJbnRlcm1Db25zdGFudFVuaW9uOjpnZXRJQ29uc3Qp
OgorKyAgICAgICAgKFRJbnRlcm1Db25zdGFudFVuaW9uOjpnZXRGQ29uc3QpOgorKyAgICAgICAg
KFRJbnRlcm1Db25zdGFudFVuaW9uOjpnZXRCQ29uc3QpOgorKyAgICAgICAgKFRJbnRlcm1BZ2dy
ZWdhdGU6OlRJbnRlcm1BZ2dyZWdhdGUpOgorKyAgICAgICAgKFRJbnRlcm1UcmF2ZXJzZXI6OlRJ
bnRlcm1UcmF2ZXJzZXIpOgorKyAgICAgICAgKFRJbnRlcm1UcmF2ZXJzZXI6OmdldE1heERlcHRo
KToKKysgICAgICAgIChUSW50ZXJtVHJhdmVyc2VyOjppbmNyZW1lbnREZXB0aCk6CisrICAgICAg
ICAqIHNyYy9jb21waWxlci9sb2NhbGludGVybWVkaWF0ZS5oOgorKyAgICAgICAgKiBzcmMvY29t
cGlsZXIvcGFyc2VDb25zdC5jcHA6CisrICAgICAgICAoVENvbnN0VHJhdmVyc2VyOjp2aXNpdFN5
bWJvbCk6CisrICAgICAgICAoVENvbnN0VHJhdmVyc2VyOjp2aXNpdEJpbmFyeSk6CisrICAgICAg
ICAoVENvbnN0VHJhdmVyc2VyOjp2aXNpdFVuYXJ5KToKKysgICAgICAgIChUQ29uc3RUcmF2ZXJz
ZXI6OnZpc2l0QWdncmVnYXRlKToKKysgICAgICAgIChUQ29uc3RUcmF2ZXJzZXI6OnZpc2l0U2Vs
ZWN0aW9uKToKKysgICAgICAgIChUQ29uc3RUcmF2ZXJzZXI6OnZpc2l0Q29uc3RhbnRVbmlvbik6
CisrICAgICAgICAoVENvbnN0VHJhdmVyc2VyOjp2aXNpdExvb3ApOgorKyAgICAgICAgKFRDb25z
dFRyYXZlcnNlcjo6dmlzaXRCcmFuY2gpOgorKyAgICAgICAgKFRJbnRlcm1lZGlhdGU6OnBhcnNl
Q29uc3RUcmVlKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9FeHByZXNz
aW9uUGFyc2VyLmNwcDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3RpbWluZy9SZXN0cmljdFZl
cnRleFNoYWRlclRpbWluZy5jcHA6CisrICAgICAgICAoUmVzdHJpY3RWZXJ0ZXhTaGFkZXJUaW1p
bmc6OnZpc2l0U3ltYm9sKToKKysgICAgICAgICAgICBVcGRhdGVkIEFOR0xFIHRvIHIyNDI2IGFu
ZCByYW4gQmlzb24uCisrCisrMjAxMy0wNi0xNyAgRGFyaW4gQWRsZXIgIDxkYXJpbkBhcHBsZS5j
b20+CisrCisrICAgICAgICBTb3J0IGFsbCB0aGUgWGNvZGUgcHJvamVjdCBmaWxlcworKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTExNzY5NgorKworKyAg
ICAgICAgUmV2aWV3ZWQgYnkgQW5kZXJzIENhcmxzc29uLgorKworKyAgICAgICAgKiBBTkdMRS54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOiBSYW4gdGhlIHNvcnQtWGNvZGUtcHJvamVjdC1maWxl
IHNjcmlwdC4KKysKKysyMDEzLTA0LTE4ICBLcnp5c3p0b2YgV29sYW5za2kgIDxrLndvbGFuc2tp
QHNhbXN1bmcuY29tPgorKworKyAgICAgICAgQWRkIGNoZWNraW5nIHdoZXRoZXIgdGhlIGNvbXBp
bGVyIGFsbG93cyB0byB1c2UgI3ByYWdtYSBkaXJlY3RpdmUuCisrICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTE0NzQwCisrCisrICAgICAgICBSZXZpZXdl
ZCBieSBBbmRyZWFzIEtsaW5nLgorKworKyAgICAgICAgU29tZSBjb21waWxlcnMgbWF5IGNvbXBs
YWluIHRoYXQgI3ByYWdtYSB3YXJuaW5nIGlzIGFuIHVuZGVmaW5lZCBtYWNyby4KKysKKysgICAg
ICAgICogc3JjL2NvbXBpbGVyL2RlcGdyYXBoL0RlcGVuZGVuY3lHcmFwaC5jcHA6CisrCisrMjAx
My0wNC0xMSAgQW5kcmFzIEJlY3NpICA8YW5kcmFzLmJlY3NpQGRpZ2lhLmNvbT4KKysKKysgICAg
ICAgIFtRdF1bTWFjXSBMaW5raW5nIGZhaWxzIHdpdGggUXQgNS4xCisrICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTE0NDM1CisrCisrICAgICAgICBSZXZp
ZXdlZCBieSBUb3IgQXJuZSBWZXN0YsO4LgorKworKyAgICAgICAgUXQgNS4xIGVuYWJsZXMgQysr
MTEgYnkgZGVmYXVsdCB3aGVuIHVzaW5nIGNsYW5nIG9uIE1hYworKyAgICAgICAgYW5kIGxpbmtz
IGFnYWluc3QgdGhlIGxpYmMrKyBzdGFuZGFyZCBsaWJyYXJ5LiBBcyBhIHJlc3VsdAorKyAgICAg
ICAgYnVpbGRpbmcgdGhlIFF0V2ViS2l0IHNoYXJlZCBsaWJyYXJ5IGZhaWxzIHdoZW4gbGlua2lu
ZworKyAgICAgICAgYWdhaW5zIHRoZSBBTkdMRSBpbnRlcm1lZGlhdGUgc3RhdGljIGxpYnJhcnkg
YmVjYXVzZSBsaWJjKysKKysgICAgICAgIG1pc3NlcyBzb21lIHN5bWJvbHMgbmVlZGVkIGJ5IEFO
R0xFLgorKyAgICAgICAgRGlzYWJsZSBDKysxMSBmb3IgdGhlIEFOR0xFIGludGVybWVkaWF0ZSBs
aWJyYXJ5IHRvIGZpeCB0aGUgYnVpbGQuCisrCisrICAgICAgICAqIEFOR0xFLnByaToKKysKKysy
MDEzLTA0LTEwICBCZW5qYW1pbiBQb3VsYWluICA8YnBvdWxhaW5AYXBwbGUuY29tPgorKworKyAg
ICAgICAgTWFzcyByZW1vdmUgYWxsIHRoZSBlbXB0eSBkaXJlY3RvcmllcworKworKyAgICAgICAg
UnViYmVyc3RhbXBlZCBieSBSeW9zdWtlIE5pd2EuCisrCisrICAgICAgICAqIHNyYy9saWJHTEVT
djIvZ2VvbWV0cnk6IFJlbW92ZWQuCisrCisrMjAxMy0wNC0wOCAgUnlvc3VrZSBOaXdhICA8cm5p
d2FAd2Via2l0Lm9yZz4KKysKKysgICAgICAgIFJlbW92ZSBBTkdMRS5neXAKKysgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTQyNDUKKysKKysgICAgICAg
IFVucmV2aWV3ZWQuIEp1c3QgcmVtb3ZpbmcgYW4gZW1wdHkgZGlyZWN0b3J5LgorKworKyAgICAg
ICAgKiBBTkdMRS5neXA6IFJlbW92ZWQuCisrCisrMjAxMy0wNC0wNCAgTWFydGluIFJvYmluc29u
ICA8bXJvYmluc29uQGlnYWxpYS5jb20+CisrCisrICAgICAgICBbR1RLXSBSZW1vdmUgdGhlIGd5
cCBidWlsZAorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTExMzk0MgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgR3VzdGF2byBOb3JvbmhhIFNpbHZhLgor
KworKyAgICAgICAgKiBBTkdMRS5neXAvQU5HTEUuZ3lwOiBSZW1vdmVkLgorKyAgICAgICAgKiBB
TkdMRS5neXBpOiBSZW1vdmVkLgorKworKzIwMTMtMDMtMjAgIFphbiBEb2JlcnNlayAgPHpkb2Jl
cnNla0BpZ2FsaWEuY29tPgorKworKyAgICAgICAgW0dUS10gQnVpbGQgQU5HTEUgc291cmNlcyBp
bnRvIGEgc2VwYXJhdGUgbGlicmFyeSBmcm9tIGxpYldlYkNvcmUubGEKKysgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTI3NzgKKysKKysgICAgICAgIFJl
dmlld2VkIGJ5IE1hcnRpbiBSb2JpbnNvbi4KKysKKysgICAgICAgICogR05VbWFrZWZpbGUuYW06
IEFkZGVkLCBzZXRzIHVwIHRoZSBsaWJBTkdMRS5sYSBsaWJyYXJ5LgorKworKzIwMTMtMDMtMDUg
IEtlbm5ldGggUnVzc2VsbCAgPGtickBnb29nbGUuY29tPgorKworKyAgICAgICAgVXBncmFkZSBB
TkdMRSB0byByMTk4NworKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTExMTM4MQorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGVhbiBKYWNrc29uLgorKwor
KyAgICAgICAgKiBpbmNsdWRlL0dMU0xBTkcvU2hhZGVyTGFuZy5oOgorKyAgICAgICAgKiBzcmMv
Y29tbW9uL3ZlcnNpb24uaDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL0NvbXBpbGVyLmNwcDoK
KysgICAgICAgIChUQ29tcGlsZXI6OlRDb21waWxlcik6CisrICAgICAgICAoVENvbXBpbGVyOjpJ
bml0KToKKysgICAgICAgIChUQ29tcGlsZXI6OmNvbXBpbGUpOgorKyAgICAgICAgKiBzcmMvY29t
cGlsZXIvUGFyc2VIZWxwZXIuaDoKKysgICAgICAgIChUUGFyc2VDb250ZXh0KToKKysgICAgICAg
ICogc3JjL2NvbXBpbGVyL1NoSGFuZGxlLmg6CisrICAgICAgICAoVENvbXBpbGVyKToKKysgICAg
ICAgICogc3JjL2NvbXBpbGVyL1NoYWRlckxhbmcuY3BwOgorKyAgICAgICAgKFNoSW5pdEJ1aWx0
SW5SZXNvdXJjZXMpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvVW5mb2xkU2hvcnRDaXJjdWl0
LmNwcDoKKysgICAgICAgIChzaDo6VW5mb2xkU2hvcnRDaXJjdWl0Ojp2aXNpdFNlbGVjdGlvbik6
CisrICAgICAgICAqIHNyYy9jb21waWxlci9nbHNsYW5nLmw6CisrICAgICAgICAqIHNyYy9jb21w
aWxlci9nbHNsYW5nLnk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9nbHNsYW5nX2xleC5jcHA6
CisrICAgICAgICAoZ2xzbGFuZ19zY2FuKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL2dsc2xh
bmdfdGFiLmNwcDoKKysgICAgICAgICAgICAgVXBkYXRlZCBBTkdMRSB0byByMTk4Ny4KKysKKysy
MDEzLTAzLTAxICBNYXJ0aW4gUm9iaW5zb24gIDxtcm9iaW5zb25AaWdhbGlhLmNvbT4KKysKKysg
ICAgICAgIFtHVEtdIEFkZCBBTkdMRSB0byB0aGUgR1RLKyBneXAgYnVpbGQKKysgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTExMjgKKysKKysgICAgICAg
IFJldmlld2VkIGJ5IERpcmsgUHJhbmtlLgorKworKyAgICAgICAgQWRkIGZpbGVzIHRoYXQgYnVp
bGQgYW4gQU5HTEUgc3RhdGljIGxpYnJhcnkgZm9yIEdUSysgdXNpbmcgZ3lwLgorKworKyAgICAg
ICAgKiBBTkdMRS5neXAvQU5HTEUuZ3lwOiBBZGRlZC4KKysgICAgICAgICogQU5HTEUuZ3lwaTog
QWRkZWQuCisrCisrMjAxMy0wMi0yMiAgS2VubmV0aCBSdXNzZWxsICA8a2JyQGdvb2dsZS5jb20+
CisrCisrICAgICAgICBNYWMgT1MgYnVpbGQgYnJva2VuIGJ5IG5ldyBFeHByZXNzaW9uUGFyc2Vy
LmNwcAorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEx
MDYyOQorKworKyAgICAgICAgVW5yZXZpZXdlZCBidWlsZCBmaXguIFJlZ2VuZXJhdGVkIEV4cHJl
c3Npb25QYXJzZXIgd2l0aCBCaXNvbiAyLjMuCisrCisrICAgICAgICAqIHNyYy9jb21waWxlci9w
cmVwcm9jZXNzb3IvRXhwcmVzc2lvblBhcnNlci5jcHA6CisrCisrMjAxMy0wMi0yMSAgWmhlbnlh
byBNbyAgPHptb0Bnb29nbGUuY29tPgorKworKyAgICAgICAgUm9sbCBBTkdMRSB0byByMTgzMwor
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTExMDUxMwor
KworKyAgICAgICAgUmV2aWV3ZWQgYnkgS2VubmV0aCBSdXNzZWxsLgorKworKyAgICAgICAgVXBz
dHJlYW0gQU5HTEUgcjE4MzMgaW5jbHVkZXMgd2Via2l0IHNpZGUgbG9jYWwgZml4ZXMKKysgICAg
ICAgIDEpIHIxMzk3NTggYnVpbGQgZml4IGZvciAtV3Nob3J0ZW4tNjQtdG8tMzIKKysgICAgICAg
IDIpIHIxMzk2NjUgYnVpbGQgZml4IGZvciB1bmluaXRpYWxpemVkIHZhcmlhYmxlcworKworKyAg
ICAgICAgQWZ0ZXIgdGhpcyByb2xsLCBXZWJLaXQgc2lkZSBBTkdMRSBpcyB0aGUgc2FtZSBhcyB1
cHN0cmVhbSBBTkdMRSByMTgzMywgZXhjZXB0OgorKyAgICAgICAgMSkgaW5jbHVkZS9HTFNMQU5H
L1NoYWRlckxhbmcuaCwgd2hlcmUgIktIUiIgaXMgcmVtb3ZlZCBmcm9tIGluY2x1ZGUgcGF0aC4K
KysKKysgICAgICAgIFdpdGggdGhpcyByb2xsLCB3ZSBoYXZlIEVYVF9kcmF3X2J1ZmZlcnMgc3Vw
cG9ydC4KKysgICAgICAgIAorKyAgICAgICAgKiBBTkdMRS54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qOgorKyAgICAgICAgKiBUYXJnZXQucHJpOgorKyAgICAgICAgKiBpbmNsdWRlL0dMU0xBTkcv
U2hhZGVyTGFuZy5oOgorKyAgICAgICAgKiBzcmMvY29tbW9uL2RlYnVnLmNwcDoKKysgICAgICAg
ICogc3JjL2NvbW1vbi9zeXN0ZW0uaDogQWRkZWQuCisrICAgICAgICAqIHNyYy9jb21tb24vdmVy
c2lvbi5oOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvQXJyYXlCb3VuZHNDbGFtcGVyLmNwcDog
UmVtb3ZlZC4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL0FycmF5Qm91bmRzQ2xhbXBlci5oOiBS
ZW1vdmVkLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvQ29tcGlsZXIuY3BwOgorKyAgICAgICAg
KFRDb21waWxlcjo6VENvbXBpbGVyKToKKysgICAgICAgIChUQ29tcGlsZXI6OkluaXQpOgorKyAg
ICAgICAgKFRDb21waWxlcjo6Y29tcGlsZSk6CisrICAgICAgICAoVENvbXBpbGVyOjpnZXRBcnJh
eUJvdW5kc0NsYW1wZXIpOgorKyAgICAgICAgKFRDb21waWxlcjo6Z2V0QXJyYXlJbmRleENsYW1w
aW5nU3RyYXRlZ3kpOgorKyAgICAgICAgKFRDb21waWxlcjo6Z2V0QnVpbHRJbkZ1bmN0aW9uRW11
bGF0b3IpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvRGV0ZWN0RGlzY29udGludWl0eS5jcHA6
CisrICAgICAgICAoc2g6OkRldGVjdExvb3BEaXNjb250aW51aXR5Ojp0cmF2ZXJzZSk6CisrICAg
ICAgICAoc2g6OkRldGVjdExvb3BEaXNjb250aW51aXR5Ojp2aXNpdExvb3ApOgorKyAgICAgICAg
KHNoKToKKysgICAgICAgIChzaDo6RGV0ZWN0TG9vcERpc2NvbnRpbnVpdHk6OnZpc2l0QnJhbmNo
KToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL0RldGVjdERpc2NvbnRpbnVpdHkuaDoKKysgICAg
ICAgIChEZXRlY3RMb29wRGlzY29udGludWl0eSk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9J
bml0aWFsaXplLmNwcDoKKysgICAgICAgIChJbml0RXh0ZW5zaW9uQmVoYXZpb3IpOgorKyAgICAg
ICAgKiBzcmMvY29tcGlsZXIvSW50ZXJtZWRpYXRlLmNwcDoKKysgICAgICAgIChUSW50ZXJtQ29u
c3RhbnRVbmlvbjo6Zm9sZCk6CisrICAgICAgICAoVEludGVybVRyYXZlcnNlcjo6aGFzaCk6Cisr
ICAgICAgICAqIHNyYy9jb21waWxlci9NYXBMb25nVmFyaWFibGVOYW1lcy5jcHA6CisrICAgICAg
ICAoTG9uZ05hbWVNYXA6OlNpemUpOgorKyAgICAgICAgKE1hcExvbmdWYXJpYWJsZU5hbWVzOjpt
YXBHbG9iYWxMb25nTmFtZSk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9NYXBMb25nVmFyaWFi
bGVOYW1lcy5oOgorKyAgICAgICAgKExvbmdOYW1lTWFwKToKKysgICAgICAgICogc3JjL2NvbXBp
bGVyL091dHB1dEVTU0wuY3BwOgorKyAgICAgICAgKFRPdXRwdXRFU1NMOjpUT3V0cHV0RVNTTCk6
CisrICAgICAgICAqIHNyYy9jb21waWxlci9PdXRwdXRFU1NMLmg6CisrICAgICAgICAoVE91dHB1
dEVTU0wpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvT3V0cHV0R0xTTC5jcHA6CisrICAgICAg
ICAoVE91dHB1dEdMU0w6OlRPdXRwdXRHTFNMKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL091
dHB1dEdMU0wuaDoKKysgICAgICAgIChUT3V0cHV0R0xTTCk6CisrICAgICAgICAqIHNyYy9jb21w
aWxlci9PdXRwdXRHTFNMQmFzZS5jcHA6CisrICAgICAgICAoVE91dHB1dEdMU0xCYXNlOjpUT3V0
cHV0R0xTTEJhc2UpOgorKyAgICAgICAgKFRPdXRwdXRHTFNMQmFzZTo6d3JpdGVDb25zdGFudFVu
aW9uKToKKysgICAgICAgIChUT3V0cHV0R0xTTEJhc2U6OnZpc2l0QmluYXJ5KToKKysgICAgICAg
ICogc3JjL2NvbXBpbGVyL091dHB1dEdMU0xCYXNlLmg6CisrICAgICAgICAoVE91dHB1dEdMU0xC
YXNlKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL091dHB1dEhMU0wuY3BwOgorKyAgICAgICAg
KHNoOjpPdXRwdXRITFNMOjpvdXRwdXQpOgorKyAgICAgICAgKHNoOjpPdXRwdXRITFNMOjp2aXNp
dExvb3ApOgorKyAgICAgICAgKHNoOjpPdXRwdXRITFNMOjp3cml0ZUNvbnN0YW50VW5pb24pOgor
KyAgICAgICAgKiBzcmMvY29tcGlsZXIvUGFyc2VIZWxwZXIuY3BwOgorKyAgICAgICAgKFRQYXJz
ZUNvbnRleHQ6OmNvbnN0cnVjdG9yRXJyb3JDaGVjayk6CisrICAgICAgICAoUGFQYXJzZVN0cmlu
Z3MpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvUGFyc2VIZWxwZXIuaDoKKysgICAgICAgICog
c3JjL2NvbXBpbGVyL1NoSGFuZGxlLmg6CisrICAgICAgICAoVENvbXBpbGVyKToKKysgICAgICAg
ICogc3JjL2NvbXBpbGVyL1NoYWRlckxhbmcuY3BwOgorKyAgICAgICAgKGNoZWNrQWN0aXZlVW5p
Zm9ybUFuZEF0dHJpYk1heExlbmd0aHMpOgorKyAgICAgICAgKGNoZWNrTWFwcGVkTmFtZU1heExl
bmd0aCk6CisrICAgICAgICAoZ2V0VmFyaWFibGVJbmZvKToKKysgICAgICAgIChTaEluaXRCdWls
dEluUmVzb3VyY2VzKToKKysgICAgICAgIChTaENvbXBpbGUpOgorKyAgICAgICAgKFNoR2V0SW5m
byk6CisrICAgICAgICAoU2hHZXRBY3RpdmVBdHRyaWIpOgorKyAgICAgICAgKFNoR2V0QWN0aXZl
VW5pZm9ybSk6CisrICAgICAgICAoU2hHZXROYW1lSGFzaGluZ0VudHJ5KToKKysgICAgICAgICog
c3JjL2NvbXBpbGVyL1N5bWJvbFRhYmxlLmg6CisrICAgICAgICAoVEZ1bmN0aW9uOjpnZXRQYXJh
bUNvdW50KToKKysgICAgICAgIChURnVuY3Rpb246OmdldFBhcmFtKToKKysgICAgICAgIChUU3lt
Ym9sVGFibGU6OnNldERlZmF1bHRQcmVjaXNpb24pOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIv
VHJhbnNsYXRvckVTU0wuY3BwOgorKyAgICAgICAgKFRyYW5zbGF0b3JFU1NMOjp0cmFuc2xhdGUp
OgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvVHJhbnNsYXRvckdMU0wuY3BwOgorKyAgICAgICAg
KFRyYW5zbGF0b3JHTFNMOjp0cmFuc2xhdGUpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvVmFs
aWRhdGVMaW1pdGF0aW9ucy5jcHA6CisrICAgICAgICAoVmFsaWRhdGVMaW1pdGF0aW9uczo6dmFs
aWRhdGVGdW5jdGlvbkNhbGwpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvVmFyaWFibGVQYWNr
ZXIuY3BwOgorKyAgICAgICAgKFZhcmlhYmxlUGFja2VyOjpHZXROdW1Sb3dzKToKKysgICAgICAg
ICogc3JjL2NvbXBpbGVyL2dsc2xhbmcuaDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL2dsc2xh
bmcubDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL2dsc2xhbmcueToKKysgICAgICAgICogc3Jj
L2NvbXBpbGVyL2dsc2xhbmdfbGV4LmNwcDoKKysgICAgICAgIChzdHJpbmdfaW5wdXQpOgorKyAg
ICAgICAgKGdsc2xhbmdfc2Nhbik6CisrICAgICAgICAqIHNyYy9jb21waWxlci9nbHNsYW5nX3Rh
Yi5jcHA6CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvRXhwcmVzc2lvblBh
cnNlci5jcHA6CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvRXhwcmVzc2lv
blBhcnNlci55OgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL0lucHV0LmNw
cDoKKysgICAgICAgIChwcDo6SW5wdXQ6OklucHV0KToKKysgICAgICAgIChwcDo6SW5wdXQ6OnJl
YWQpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL0lucHV0Lmg6CisrICAg
ICAgICAoSW5wdXQpOgorKyAgICAgICAgKHBwOjpJbnB1dDo6Y291bnQpOgorKyAgICAgICAgKHBw
OjpJbnB1dDo6c3RyaW5nKToKKysgICAgICAgIChwcDo6SW5wdXQ6Omxlbmd0aCk6CisrICAgICAg
ICAoTG9jYXRpb24pOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL1ByZXBy
b2Nlc3Nvci5jcHA6CisrICAgICAgICAocHA6OlByZXByb2Nlc3Nvcjo6aW5pdCk6CisrICAgICAg
ICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvUHJlcHJvY2Vzc29yLmg6CisrICAgICAgICAo
UHJlcHJvY2Vzc29yKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9Ub2tl
bml6ZXIuY3BwOgorKyAgICAgICAgKHBwOjpUb2tlbml6ZXI6OmluaXQpOgorKyAgICAgICAgKiBz
cmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL1Rva2VuaXplci5oOgorKyAgICAgICAgKFRva2VuaXpl
cik6CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvVG9rZW5pemVyLmw6Cisr
ICAgICAgICAqIHNyYy90aGlyZF9wYXJ0eTogQWRkZWQuCisrICAgICAgICAqIHNyYy90aGlyZF9w
YXJ0eS9jb21waWxlcjogQWRkZWQuCisrICAgICAgICAqIHNyYy90aGlyZF9wYXJ0eS9jb21waWxl
ci9BcnJheUJvdW5kc0NsYW1wZXIuY3BwOiBBZGRlZC4KKysgICAgICAgIChBcnJheUJvdW5kc0Ns
YW1wZXI6OkFycmF5Qm91bmRzQ2xhbXBlcik6CisrICAgICAgICAoQXJyYXlCb3VuZHNDbGFtcGVy
OjpTZXRDbGFtcGluZ1N0cmF0ZWd5KToKKysgICAgICAgIChBcnJheUJvdW5kc0NsYW1wZXI6Ok1h
cmtJbmRpcmVjdEFycmF5Qm91bmRzRm9yQ2xhbXBpbmcpOgorKyAgICAgICAgKEFycmF5Qm91bmRz
Q2xhbXBlcjo6T3V0cHV0Q2xhbXBpbmdGdW5jdGlvbkRlZmluaXRpb24pOgorKyAgICAgICAgKiBz
cmMvdGhpcmRfcGFydHkvY29tcGlsZXIvQXJyYXlCb3VuZHNDbGFtcGVyLmg6IEFkZGVkLgorKyAg
ICAgICAgKEFycmF5Qm91bmRzQ2xhbXBlcik6CisrICAgICAgICAoQXJyYXlCb3VuZHNDbGFtcGVy
OjpDbGVhbnVwKToKKysgICAgICAgIChBcnJheUJvdW5kc0NsYW1wZXI6OkdldEFycmF5Qm91bmRz
Q2xhbXBEZWZpbml0aW9uTmVlZGVkKToKKysgICAgICAgIChBcnJheUJvdW5kc0NsYW1wZXI6OlNl
dEFycmF5Qm91bmRzQ2xhbXBEZWZpbml0aW9uTmVlZGVkKToKKysgICAgICAgICogc3JjL3RoaXJk
X3BhcnR5L2NvbXBpbGVyL0xJQ0VOU0U6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvdGhpcmRfcGFy
dHkvY29tcGlsZXIvUkVBRE1FLmFuZ2xlOiBBZGRlZC4KKysKKysyMDEzLTAyLTA0ICBEYXZpZCBL
aWx6ZXIgIDxkZGtpbHplckBhcHBsZS5jb20+CisrCisrICAgICAgICBTb3J0IEFOR0xFIFhjb2Rl
IHByb2plY3QgZmlsZS4KKysKKysgICAgICAgICogQU5HTEUueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvajoKKysKKysyMDEzLTAxLTMwICBEYXZpZCBLaWx6ZXIgIDxkZGtpbHplckBhcHBsZS5jb20+
CisrCisrICAgICAgICBSZW1vdmUgdXNlbGVzcyBjb21tZW50IGZyb20gQmFzZS54Y2NvbmZpZwor
KworKyAgICAgICAgUnViYmVyLXN0YW1wZWQgYnkgTWFyayBSb3dlLgorKworKyAgICAgICAgKiBD
b25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnOiBSZW1vdmUgY29tbWVudC4KKysKKysyMDEzLTAx
LTE2ICBBbGxhbiBTYW5kZmVsZCBKZW5zZW4gIDxhbGxhbi5qZW5zZW5AZGlnaWEuY29tPgorKwor
KyAgICAgICAgRG9lc24ndCBidWlsZCB3aXRoIEdDQyA0LjcrCisrICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA2OTk5CisrCisrICAgICAgICBSZXZpZXdl
ZCBieSBDc2FiYSBPc3p0cm9nb27DoWMuCisrCisrICAgICAgICBDb3JyZWN0IF9fR05VX0NfTUlO
T1JfXyBtYWNybyB0byBfX0dOVUNfTUlOT1JfXy4KKysKKysgICAgICAgICogc3JjL2NvbXBpbGVy
L3ByZXByb2Nlc3Nvci9FeHByZXNzaW9uUGFyc2VyLnk6CisrCisrMjAxMy0wMS0xNSAgRGF2aWQg
S2lsemVyICA8ZGRraWx6ZXJAYXBwbGUuY29tPgorKworKyAgICAgICAgQlVJTEQgRklYOiBBZGQg
U1VQUE9SVEVEX1BMQVRGT1JNUyB0byBCYXNlLnhjY29uZmlnCisrCisrICAgICAgICAqIENvbmZp
Z3VyYXRpb25zL0Jhc2UueGNjb25maWc6IEFkZCBTVVBQT1JURURfUExBVEZPUk1TIHNvIHRoYXQK
KysgICAgICAgIFhjb2RlIGtub3dzIHdlIGNhbiBidWlsZCB0aGlzIHByb2plY3QgZm9yIGFsbCB0
aHJlZSBwbGF0Zm9ybXMuCisrICAgICAgICBQcmV2aW91c2x5IHRoZSBNYWMgT1MgWCBTREtzIHdl
cmUgbWlzc2luZyBpbiB0aGUgc2NoZW1lIHBpY2tlci4KKysKKysyMDEzLTAxLTE1ICBEYXZpZCBL
aWx6ZXIgIDxkZGtpbHplckBhcHBsZS5jb20+CisrCisrICAgICAgICBVcHN0cmVhbSBpT1MgY2hh
bmdlcyBmb3IgQU5HTEUgcHJvamVjdAorKyAgICAgICAgPGh0dHA6Ly93ZWJraXQub3JnL2IvMTA2
OTEzPgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgSm9zZXBoIFBlY29yYXJvLgorKworKyAgICAg
ICAgKiBBTkdMRS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorKyAgICAgICAgLSBVc2UgJChJ
TlNUQUxMX1BBVEhfUFJFRklYKSB3aXRoIENvcHlGaWxlcyBidWlsZCBwaGFzZSBwYXRocy4KKysg
ICAgICAgIC0gQWRkIGlPUy54Y2NvbmZpZyB0byBwcm9qZWN0LgorKyAgICAgICAgKiBDb25maWd1
cmF0aW9ucy9BTkdMRS54Y2NvbmZpZzoKKysgICAgICAgIC0gVXNlIElOU1RBTExfUEFUSF9BQ1RV
QUwgaW5zdGVhZCBvZiBJTlNUQUxMX1BBVEguICAoU2VlIGJlbG93LikKKysgICAgICAgIC0gVXNl
ICQoSU5TVEFMTF9QQVRIX1BSRUZJWCkgd2l0aCBQVUJMSUNfSEVBREVSU19GT0xERVJfUEFUSC4K
KysgICAgICAgICogQ29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZzoKKysgICAgICAgIC0gSW5j
bHVkZSBpT1MueGNjb25maWcuCisrICAgICAgICAtIEFkZCBwZXItcGxhdGZvcm0gdmFsdWVzIGZv
ciBHQ0NfRU5BQkxFX09CSkNfR0MgYW5kCisrICAgICAgICAgIEdDQ19NT0RFTF9UVU5JTkcuCisr
ICAgICAgICAtIERlZmluZSBJTlNUQUxMX1BBVEggd2hlbiBidWlsZGluZyBmb3IgbWFjb3N4IFNE
Sy4KKysgICAgICAgICogQ29uZmlndXJhdGlvbnMvaU9TLnhjY29uZmlnOiBBZGQuICBOb3RlIHRo
YXQgbWlzc2luZyBpbmNsdWRlCisrICAgICAgICBmaWxlcyBhcmUgc2ltcGx5IGlnbm9yZWQgd2l0
aG91dCBhbiBlcnJvciBieSBYY29kZS4KKysKKysyMDEzLTAxLTE1ICBEYXZpZCBLaWx6ZXIgIDxk
ZGtpbHplckBhcHBsZS5jb20+CisrCisrICAgICAgICBBTkdMRSBzaG91bGQgYnVpbGQgd2l0aCAt
V3Nob3J0ZW4tNjQtdG8tMzIKKysgICAgICAgIDxodHRwOi8vd2Via2l0Lm9yZy9iLzEwNjc5OD4K
KysgICAgICAgIDxodHRwOi8vY29kZS5nb29nbGUuY29tL3AvYW5nbGVwcm9qZWN0L2lzc3Vlcy9k
ZXRhaWw/aWQ9Mzk2PgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgS2VubmV0aCBSdXNzZWxsLgor
KworKyAgICAgICAgTW9zdCBjaGFuZ2VzIGJlbG93IGFyZSBzaW1wbHkgdG8gZG9jdW1lbnQgaXNz
dWVzIHdpdGggI3ByYWdtYQorKyAgICAgICAgc3RhdGVtZW50cyBwZXIgcmVxdWVzdCBieSB1cHN0
cmVhbS4gIFRoZSBjaGFuZ2UgdG8gb3NpbmNsdWRlLmgKKysgICAgICAgIGlzIHRoZSBvbmx5IGJ1
ZyBmaXgsIHdoaWNoIGRlZmluZXMgT1NfVExTSW5kZXggaW4gdGVybXMgb2YKKysgICAgICAgIHB0
aHJlYWRfa2V5X3QgaW5zdGVhZCBvZiB1bnNpZ25lZCBpbnQgc2luY2UgcHRocmVhZF9rZXlfdCBp
cyBhCisrICAgICAgICA2NC1iaXQgdmFsdWUgb24gNjQtYml0IE1hYyBPUyBYLgorKworKyAgICAg
ICAgKiBDb25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnOiBFbmFibGUgLVdzaG9ydGVuLTY0LXRv
LTMyIGJ5CisrICAgICAgICBzZXR0aW5nIEdDQ19XQVJOXzY0X1RPXzMyX0JJVF9DT05WRVJTSU9O
IHRvIFlFUy4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL0ludGVybWVkaWF0ZS5jcHA6CisrICAg
ICAgICAoVEludGVybVRyYXZlcnNlcjo6aGFzaCk6IEFkZCAjcHJhZ21hcyBmb3IgY2xhbmcgdG8g
aWdub3JlCisrICAgICAgICAtV3Nob3J0ZW4tNjQtdG8tMzIgd2FybmluZy4KKysgICAgICAgICog
c3JjL2NvbXBpbGVyL01hcExvbmdWYXJpYWJsZU5hbWVzLmNwcDoKKysgICAgICAgIChMb25nTmFt
ZU1hcDo6U2l6ZSk6IERpdHRvLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvU2hhZGVyTGFuZy5j
cHA6CisrICAgICAgICAoZ2V0VmFyaWFibGVJbmZvKTogRGl0dG8uCisrICAgICAgICAoU2hHZXRJ
bmZvKTogRGl0dG8uCisrICAgICAgICAqIHNyYy9jb21waWxlci9WYWxpZGF0ZUxpbWl0YXRpb25z
LmNwcDoKKysgICAgICAgIChWYWxpZGF0ZUxpbWl0YXRpb25zOjp2YWxpZGF0ZUZ1bmN0aW9uQ2Fs
bCk6IERpdHRvLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvZ2xzbGFuZy5sOiBEaXR0by4KKysg
ICAgICAgICogc3JjL2NvbXBpbGVyL2dsc2xhbmdfbGV4LmNwcDogRGl0dG8uCisrICAgICAgICAq
IHNyYy9jb21waWxlci9vc2luY2x1ZGUuaDogQ2hhbmdlIHR5cGUgb2YgT1NfVExTSW5kZXggdG8K
KysgICAgICAgIHB0aHJlYWRfa2V5X3QuICBEZWZpbmUgT1NfSU5WQUxJRF9UTFNfSU5ERVggYnkg
dXNpbmcKKysgICAgICAgIHN0YXRpY19jYXN0PE9TX1RMU0luZGV4PigtMSkuCisrICAgICAgICAq
IHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvSW5wdXQuY3BwOgorKyAgICAgICAgKHBwOjpJbnB1
dDo6SW5wdXQpOiBBZGQgI3ByYWdtYXMgZm9yIGNsYW5nIHRvIGlnbm9yZQorKyAgICAgICAgLVdz
aG9ydGVuLTY0LXRvLTMyIHdhcm5pbmcuCisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9j
ZXNzb3IvVG9rZW5pemVyLmNwcDogRGl0dG8uCisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVw
cm9jZXNzb3IvVG9rZW5pemVyLmw6IERpdHRvLgorKworKzIwMTMtMDEtMTQgIERhdmlkIEtpbHpl
ciAgPGRka2lsemVyQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFJlbW92ZSBub25leGlzdGVudCBm
aWxlIGluIEFOR0xFIFhjb2RlIHByb2plY3QKKysKKysgICAgICAgICogQU5HTEUueGNvZGVwcm9q
L3Byb2plY3QucGJ4cHJvajogUmVtb3ZlIHJlZmVyZW5jZXMgdG8KKysgICAgICAgIG9zc291cmNl
X25zcHIuY3BwIHdoaWNoIHdhcyByZW1vdmVkIGluIHIxMzk2NjUuCisrCisrMjAxMy0wMS0xNCAg
RGVhbiBKYWNrc29uICA8ZGlub0BhcHBsZS5jb20+CisrCisrICAgICAgICBVbnJldmlld2VkIFFU
IGJ1aWxkIGZpeC4KKysKKysgICAgICAgICogQU5HTEUucHJpOgorKworKzIwMTMtMDEtMTQgIERl
YW4gSmFja3NvbiAgPGRpbm9AYXBwbGUuY29tPgorKworKyAgICAgICAgW0FOR0xFXSBVcGRhdGUg
QU5HTEUgaW4gV2ViS2l0CisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTA2Mjc0CisrCisrICAgICAgICBVbnJldmlld2VkIGF0dGVtcHRlZCBidWlsZCBm
aXguCisrCisrICAgICAgICBSZW1vdmUgdGhlIGNvcHkgZmlsZXMgc3RhZ2UuIE1ha2Uga2hycGxh
dGZvcm0uaCBhIHB1YmxpYyBoZWFkZXIuCisrCisrICAgICAgICAqIEFOR0xFLnhjb2RlcHJvai9w
cm9qZWN0LnBieHByb2o6CisrICAgICAgICAqIGluY2x1ZGUvR0xTTEFORy9TaGFkZXJMYW5nLmg6
CisrCisrMjAxMy0wMS0xNCAgTWF4IFZ1am92aWMgIDxtdnVqb3ZpY0BhZG9iZS5jb20+CisrCisr
ICAgICAgICBbQU5HTEVdIFVwZGF0ZSBBTkdMRSBpbiBXZWJLaXQKKysgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDYyNzQKKysKKysgICAgICAgIFJldmll
d2VkIGJ5IERlYW4gSmFja3Nvbi4KKysKKysgICAgICAgIFVwZGF0ZSBBTkdMRSB0byByMTY0MS4K
KysKKysgICAgICAgIEFOR0xFIHBhcnNlcnMgd2VyZSBnZW5lcmF0ZWQgd2l0aCBCaXNvbiAyLjMu
CisrCisrICAgICAgICBBZGRpdGlvbmFsbHksIHBlcmZvcm0gdGhlIGZvbGxvd2luZyBjaGFuZ2Vz
IHRvIFdlYktpdCdzIEFOR0xFIGJ1aWxkIHN5c3RlbS4gTm90ZSB0aGF0IHRoZXNlCisrICAgICAg
ICBjaGFuZ2VzIG9ubHkgYXBwbHkgdG8gV2ViS2l0J3MgY29weSBvZiBBTkdMRSwgYW5kIGRvIG5v
dCBuZWVkIHRvIGJlIHVwc3RyZWFtZWQgdG8gQU5HTEUuCisrICAgICAgICAoYSkgUmVtb3ZlIGFs
bCBmaWxlcyBpbiB0aGUgbGliRUdMIGFuZCBsaWJHTEVTdjIgZGlyZWN0b3JpZXMgYmVjYXVzZSBu
b2JvZHkgaXMgdXNpbmcgdGhlbS4gCisrICAgICAgICAgICAgQWRkIGEgUkVBRE1FIGluIGVhY2gg
ZGlyZWN0b3J5IHRvIGV4cGxhaW4gd2h5IHRoZWlyIGNvbnRlbnRzIGFyZSBub3QgY29waWVkIG92
ZXIgZnJvbQorKyAgICAgICAgICAgIEFOR0xFLiBUaGlzIHNpbXBsaWZpZXMgdXBkYXRpbmcgQU5H
TEUgaW4gdGhlIGZ1dHVyZS4KKysgICAgICAgIChiKSBSZW1vdmUgdGhlIGJ1aWxkX2FuZ2xlLnhj
b2RlcHJvaiBmaWxlIHRoYXQgbm8tb25lIGlzIHVzaW5nLiBJdCBhcHBlYXJzIGl0IHdhcyBjb3Bp
ZWQKKysgICAgICAgICAgICBvdmVyIGZyb20gYSBneXAgYnVpbGQgb2YgQU5HTEUuIFRoZSBNYWMg
YnVpbGQgdXNlcyBBTkdMRS54Y29kZXByb2ouCisrICAgICAgICAoYykgUmVtb3ZlIGR1cGxpY2F0
ZSBmaWxlIGVudHJpZXMgaW4gQU5HTEUueGNvZGVwcm9qLiBDaGFuZ2UgaXRzIFhjb2RlIGdyb3Vw
IHN0cnVjdHVyZSB0bworKyAgICAgICAgICAgIG1hdGNoIEFOR0xFJ3MgZGlyZWN0b3J5IHN0cnVj
dHVyZS4KKysgICAgICAgIChkKSBBZGQgYSBDb3B5IEZpbGVzIHRhc2sgdG8gQU5HTEUueGNvZGVw
cm9qIHRvIHB1dCB0aGUga2hycGxhdGZvcm0uaCBoZWFkZXIgaW4gdGhlIHJpZ2h0CisrICAgICAg
ICAgICAgcGxhY2Ugc28gU2hhZGVyTGFuZy5oIGNhbiBmaW5kIGl0LiBTaGFkZXJMYW5nLmggaXMg
Y29waWVkIHRvCisrICAgICAgICAgICAgPEJ1aWxkRGlyPi91c3IvbG9jYWwvaW5jbHVkZS9BTkdM
RS9TaGFkZXJMYW5nLmggZHVyaW5nIHRoZSBDb3B5IEhlYWRlcnMgdGFzaywgYW5kIGl0CisrICAg
ICAgICAgICAgaW5jbHVkZXMgIktIUi9raHJwbGF0Zm9ybS5oIi4gVGh1cywgd2UgbmVlZCB0byBj
b3B5IGtocnBsYXRmb3JtLmggdG8KKysgICAgICAgICAgICA8QnVpbGREaXI+L3Vzci9sb2NhbC9p
bmNsdWRlL0FOR0xFL0tIUi9raHJwbGF0Zm9ybS5oLgorKworKyAgICAgICAgQWRkaXRpb25hbGx5
LCBtYWtlIG9uZSBidWlsZCBmaXggaW4gQU5HTEUgc291cmNlIHRoYXQgc2hvdWxkIGJlIHVwc3Ry
ZWFtZWQgdG8gQU5HTEU6CisrICAgICAgICAoMSkgQmVmb3JlIHRoaXMgcGF0Y2ggaW4gRXhwcmVz
c2lvblBhcnNlci55LCB3ZSB0b2dnbGVkIHRoZSAiLVdwcmFnbWFzIiBmbGFnIHNvIGNvbXBpbGVy
cworKyAgICAgICAgICAgIGNvdWxkIGlnbm9yZSB0aGUgcHJhZ21hcyB0aGF0IHRoZXkgZGlkbid0
IHVuZGVyc3RhbmQgaW5zdGVhZCBvZiBnZW5lcmF0aW5nIGFuIGVycm9yLgorKyAgICAgICAgICAg
IEhvd2V2ZXIsIGNsYW5nIGRvZXMgbm90IHVuZGVyc3RhbmQgIi1XcHJhZ21hcyIgaXRzZWxmLiBJ
bnN0ZWFkLCB0dCB1bmRlcnN0YW5kcworKyAgICAgICAgICAgICItV3Vua25vd24tcHJhZ21hcyIu
IE5vdywgaW5zdGVhZCBvZiB0cnlpbmcgdG8gdGVtcG9yYXJpbHkgaWdub3JlIHByYWdtYXMsIHdl
IGFwcGx5IHRoZQorKyAgICAgICAgICAgIHJpZ2h0IGZsYWdzIHRvIHRoZSByaWdodCBjb21waWxl
ciB2ZXJzaW9ucy4gVGhlIG5ldyBjb2RlIGluIEV4cHJlc3Npb25QYXJzZXIueSBsb29rcworKyAg
ICAgICAgICAgIGxpa2U6CisrCisrICAgICAgICAiIiIKKysgICAgICAgIC8vIFR1cm4gb2ZmIHVu
aW5pdGlhbGl6ZWQgdmFyaWFibGUgd2FybmluZ3MgdHJpZ2dlcmVkIGJ5IHRoZSBhdXRvLWdlbmVy
YXRlZCBwcGx2YWwgdmFyaWFibGUuCisrICAgICAgICAvLyBPbiBnY2MgNC43KywgVGhlIGZsYWcg
aXMgY2FsbGVkICItV21heWJlLXVuaW5pdGlhbGl6ZWQiLgorKyAgICAgICAgLy8gT24gY2xhbmcg
YW5kIGdjYyA8IDQuNywgdGhlIGZsYWcgaXMgY2FsbGVkICItV3VuaW5pdGlhbGl6ZWQiLgorKyAg
ICAgICAgI2lmICFkZWZpbmVkKF9fY2xhbmdfXykgJiYgKChfX0dOVUNfXyA9PSA0ICYmIF9fR05V
X0NfTUlOT1JfXyA+PSA3KSB8fCBfX0dOVUNfXyA+PSA1KQorKyAgICAgICAgI3ByYWdtYSBHQ0Mg
ZGlhZ25vc3RpYyBpZ25vcmVkICItV21heWJlLXVuaW5pdGlhbGl6ZWQiCisrICAgICAgICAjZWxz
ZQorKyAgICAgICAgI3ByYWdtYSBHQ0MgZGlhZ25vc3RpYyBpZ25vcmVkICItV3VuaW5pdGlhbGl6
ZWQiCisrICAgICAgICAjZW5kaWYKKysgICAgICAgICIiIgorKworKyAgICAgICAgKiBBTkdMRS5w
bGlzdDoKKysgICAgICAgICogQU5HTEUucHJpOgorKyAgICAgICAgKiBBTkdMRS54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qOgorKyAgICAgICAgKiBEZXJpdmVkU291cmNlcy5wcmk6CisrICAgICAg
ICAqIFRhcmdldC5wcmk6CisrICAgICAgICAqIGluY2x1ZGUvR0xTTEFORy9TaGFkZXJMYW5nLmg6
CisrICAgICAgICAqIHNyYy9idWlsZF9hbmdsZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOiBS
ZW1vdmVkLgorKyAgICAgICAgKiBzcmMvY29tbW9uL2FuZ2xldXRpbHMuaDoKKysgICAgICAgICog
c3JjL2NvbW1vbi9kZWJ1Zy5jcHA6CisrICAgICAgICAoZ2w6OlNjb3BlZFBlcmZFdmVudEhlbHBl
cjo6U2NvcGVkUGVyZkV2ZW50SGVscGVyKToKKysgICAgICAgICogc3JjL2NvbW1vbi9kZWJ1Zy5o
OgorKyAgICAgICAgKiBzcmMvY29tbW9uL3ZlcnNpb24uaDoKKysgICAgICAgICogc3JjL2NvbXBp
bGVyL0NvbXBpbGVyLmNwcDoKKysgICAgICAgIChUQ29tcGlsZXI6OkluaXQpOgorKyAgICAgICAg
KFRDb21waWxlcjo6Y29tcGlsZSk6CisrICAgICAgICAoVENvbXBpbGVyOjpjbGVhclJlc3VsdHMp
OgorKyAgICAgICAgKFRDb21waWxlcjo6Y29sbGVjdEF0dHJpYnNVbmlmb3Jtcyk6CisrICAgICAg
ICAoVENvbXBpbGVyOjplbmZvcmNlUGFja2luZ1Jlc3RyaWN0aW9ucyk6CisrICAgICAgICAqIHNy
Yy9jb21waWxlci9EaWFnbm9zdGljcy5jcHA6CisrICAgICAgICAoVERpYWdub3N0aWNzOjpURGlh
Z25vc3RpY3MpOgorKyAgICAgICAgKFREaWFnbm9zdGljczo6d3JpdGVJbmZvKToKKysgICAgICAg
IChURGlhZ25vc3RpY3M6OnByaW50KToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL0RpYWdub3N0
aWNzLmg6CisrICAgICAgICAoVERpYWdub3N0aWNzOjpudW1FcnJvcnMpOgorKyAgICAgICAgKFRE
aWFnbm9zdGljczo6bnVtV2FybmluZ3MpOgorKyAgICAgICAgKFREaWFnbm9zdGljcyk6CisrICAg
ICAgICAqIHNyYy9jb21waWxlci9EaXJlY3RpdmVIYW5kbGVyLmg6CisrICAgICAgICAqIHNyYy9j
b21waWxlci9IYXNoTmFtZXMuaDogQWRkZWQuCisrICAgICAgICAqIHNyYy9jb21waWxlci9JbnRl
cm1lZGlhdGUuY3BwOgorKyAgICAgICAgKFRJbnRlcm1UcmF2ZXJzZXI6Omhhc2gpOgorKyAgICAg
ICAgKiBzcmMvY29tcGlsZXIvT3V0cHV0RVNTTC5jcHA6CisrICAgICAgICAoVE91dHB1dEVTU0w6
OlRPdXRwdXRFU1NMKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL091dHB1dEVTU0wuaDoKKysg
ICAgICAgIChUT3V0cHV0RVNTTCk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9PdXRwdXRHTFNM
LmNwcDoKKysgICAgICAgIChUT3V0cHV0R0xTTDo6VE91dHB1dEdMU0wpOgorKyAgICAgICAgKiBz
cmMvY29tcGlsZXIvT3V0cHV0R0xTTC5oOgorKyAgICAgICAgKFRPdXRwdXRHTFNMKToKKysgICAg
ICAgICogc3JjL2NvbXBpbGVyL091dHB1dEdMU0xCYXNlLmNwcDoKKysgICAgICAgIChUT3V0cHV0
R0xTTEJhc2U6OlRPdXRwdXRHTFNMQmFzZSk6CisrICAgICAgICAoVE91dHB1dEdMU0xCYXNlOjp3
cml0ZVZhcmlhYmxlVHlwZSk6CisrICAgICAgICAoVE91dHB1dEdMU0xCYXNlOjp3cml0ZUZ1bmN0
aW9uUGFyYW1ldGVycyk6CisrICAgICAgICAoVE91dHB1dEdMU0xCYXNlOjp3cml0ZUNvbnN0YW50
VW5pb24pOgorKyAgICAgICAgKFRPdXRwdXRHTFNMQmFzZTo6dmlzaXRTeW1ib2wpOgorKyAgICAg
ICAgKFRPdXRwdXRHTFNMQmFzZTo6dmlzaXRCaW5hcnkpOgorKyAgICAgICAgKFRPdXRwdXRHTFNM
QmFzZTo6dmlzaXRBZ2dyZWdhdGUpOgorKyAgICAgICAgKFRPdXRwdXRHTFNMQmFzZTo6Z2V0VHlw
ZU5hbWUpOgorKyAgICAgICAgKFRPdXRwdXRHTFNMQmFzZTo6aGFzaE5hbWUpOgorKyAgICAgICAg
KFRPdXRwdXRHTFNMQmFzZTo6aGFzaFZhcmlhYmxlTmFtZSk6CisrICAgICAgICAoVE91dHB1dEdM
U0xCYXNlOjpoYXNoRnVuY3Rpb25OYW1lKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL091dHB1
dEdMU0xCYXNlLmg6CisrICAgICAgICAoVE91dHB1dEdMU0xCYXNlKToKKysgICAgICAgICogc3Jj
L2NvbXBpbGVyL091dHB1dEhMU0wuY3BwOgorKyAgICAgICAgKHNoOjpPdXRwdXRITFNMOjpPdXRw
dXRITFNMKToKKysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6aGVhZGVyKToKKysgICAgICAgIChz
aDo6T3V0cHV0SExTTDo6dmlzaXRBZ2dyZWdhdGUpOgorKyAgICAgICAgKHNoOjpPdXRwdXRITFNM
Ojp2aXNpdEJyYW5jaCk6CisrICAgICAgICAoc2g6Ok91dHB1dEhMU0w6OmhhbmRsZUV4Y2Vzc2l2
ZUxvb3ApOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvT3V0cHV0SExTTC5oOgorKyAgICAgICAg
KE91dHB1dEhMU0wpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvUGFyc2VIZWxwZXIuY3BwOgor
KyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OmVycm9yKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0
Ojpub25Jbml0Q29uc3RFcnJvckNoZWNrKToKKysgICAgICAgIChQYVBhcnNlU3RyaW5ncyk6Cisr
ICAgICAgICAqIHNyYy9jb21waWxlci9QYXJzZUhlbHBlci5oOgorKyAgICAgICAgKFRQYXJzZUNv
bnRleHQ6OlRQYXJzZUNvbnRleHQpOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQpOgorKyAgICAg
ICAgKFRQYXJzZUNvbnRleHQ6Om51bUVycm9ycyk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9S
ZW5hbWVGdW5jdGlvbi5oOgorKyAgICAgICAgKFJlbmFtZUZ1bmN0aW9uOjp2aXNpdEFnZ3JlZ2F0
ZSk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9TaEhhbmRsZS5oOgorKyAgICAgICAgKFRDb21w
aWxlcjo6Z2V0SGFzaEZ1bmN0aW9uKToKKysgICAgICAgIChUQ29tcGlsZXI6OmdldE5hbWVNYXAp
OgorKyAgICAgICAgKFRDb21waWxlcjo6Z2V0U3ltYm9sVGFibGUpOgorKyAgICAgICAgKFRDb21w
aWxlcik6CisrICAgICAgICAqIHNyYy9jb21waWxlci9TaGFkZXJMYW5nLmNwcDoKKysgICAgICAg
IChTaEluaXRCdWlsdEluUmVzb3VyY2VzKToKKysgICAgICAgIChTaEdldEluZm8pOgorKyAgICAg
ICAgKFNoR2V0TmFtZUhhc2hpbmdFbnRyeSk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9TeW1i
b2xUYWJsZS5jcHA6CisrICAgICAgICAoVFR5cGU6OlRUeXBlKToKKysgICAgICAgIChUVHlwZTo6
aXNTdHJ1Y3R1cmVDb250YWluaW5nQXJyYXlzKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL1N5
bWJvbFRhYmxlLmg6CisrICAgICAgICAoVFN5bWJvbFRhYmxlOjpmaW5kQnVpbHRJbik6CisrICAg
ICAgICAoVFN5bWJvbFRhYmxlKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL1RyYW5zbGF0b3JF
U1NMLmNwcDoKKysgICAgICAgIChUcmFuc2xhdG9yRVNTTDo6dHJhbnNsYXRlKToKKysgICAgICAg
ICogc3JjL2NvbXBpbGVyL1RyYW5zbGF0b3JHTFNMLmNwcDoKKysgICAgICAgIChUcmFuc2xhdG9y
R0xTTDo6dHJhbnNsYXRlKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL1R5cGVzLmg6CisrICAg
ICAgICAoVFR5cGUpOgorKyAgICAgICAgKFRQdWJsaWNUeXBlKToKKysgICAgICAgIChUUHVibGlj
VHlwZTo6c2V0QmFzaWMpOgorKyAgICAgICAgKFRQdWJsaWNUeXBlOjpzZXRBZ2dyZWdhdGUpOgor
KyAgICAgICAgKFRQdWJsaWNUeXBlOjpzZXRBcnJheSk6CisrICAgICAgICAoVFB1YmxpY1R5cGU6
OmlzU3RydWN0dXJlQ29udGFpbmluZ0FycmF5cyk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9V
bmZvbGRTaG9ydENpcmN1aXQuY3BwOgorKyAgICAgICAgKHNoOjpVbmZvbGRTaG9ydENpcmN1aXQ6
OnZpc2l0QmluYXJ5KToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL1ZhcmlhYmxlSW5mby5jcHA6
CisrICAgICAgICAoZ2V0VmFyaWFibGVJbmZvKToKKysgICAgICAgIChnZXRVc2VyRGVmaW5lZFZh
cmlhYmxlSW5mbyk6CisrICAgICAgICAoVFZhcmlhYmxlSW5mbzo6VFZhcmlhYmxlSW5mbyk6Cisr
ICAgICAgICAoQ29sbGVjdEF0dHJpYnNVbmlmb3Jtczo6Q29sbGVjdEF0dHJpYnNVbmlmb3Jtcyk6
CisrICAgICAgICAoQ29sbGVjdEF0dHJpYnNVbmlmb3Jtczo6dmlzaXRBZ2dyZWdhdGUpOgorKyAg
ICAgICAgKiBzcmMvY29tcGlsZXIvVmFyaWFibGVJbmZvLmg6CisrICAgICAgICAoVFZhcmlhYmxl
SW5mbyk6CisrICAgICAgICAoQ29sbGVjdEF0dHJpYnNVbmlmb3Jtcyk6CisrICAgICAgICAqIHNy
Yy9jb21waWxlci9WYXJpYWJsZVBhY2tlci5jcHA6IEFkZGVkLgorKyAgICAgICAgKFZhcmlhYmxl
UGFja2VyOjpHZXROdW1Db21wb25lbnRzUGVyUm93KToKKysgICAgICAgIChWYXJpYWJsZVBhY2tl
cjo6R2V0TnVtUm93cyk6CisrICAgICAgICAoVFZhcmlhYmxlSW5mb0NvbXBhcmVyOjpvcGVyYXRv
cigpKToKKysgICAgICAgIChWYXJpYWJsZVBhY2tlcjo6bWFrZUNvbHVtbkZsYWdzKToKKysgICAg
ICAgIChWYXJpYWJsZVBhY2tlcjo6ZmlsbENvbHVtbnMpOgorKyAgICAgICAgKFZhcmlhYmxlUGFj
a2VyOjpzZWFyY2hDb2x1bW4pOgorKyAgICAgICAgKFZhcmlhYmxlUGFja2VyOjpDaGVja1Zhcmlh
Ymxlc1dpdGhpblBhY2tpbmdMaW1pdHMpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvVmFyaWFi
bGVQYWNrZXIuaDogQWRkZWQuCisrICAgICAgICAoVmFyaWFibGVQYWNrZXIpOgorKyAgICAgICAg
KiBzcmMvY29tcGlsZXIvVmVyc2lvbkdMU0wuY3BwOgorKyAgICAgICAgKFRWZXJzaW9uR0xTTDo6
dmlzaXRBZ2dyZWdhdGUpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvVmVyc2lvbkdMU0wuaDoK
KysgICAgICAgIChUVmVyc2lvbkdMU0wpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvZ2xzbGFu
Zy5sOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvZ2xzbGFuZy55OgorKyAgICAgICAgKiBzcmMv
Y29tcGlsZXIvZ2xzbGFuZ19sZXguY3BwOgorKyAgICAgICAgKHN0cmluZ19pbnB1dCk6CisrICAg
ICAgICAoZ2xzbGFuZ19maW5hbGl6ZSk6CisrICAgICAgICAoZ2xzbGFuZ19zY2FuKToKKysgICAg
ICAgICogc3JjL2NvbXBpbGVyL2dsc2xhbmdfdGFiLmNwcDoKKysgICAgICAgICogc3JjL2NvbXBp
bGVyL2ludGVybWVkaWF0ZS5oOgorKyAgICAgICAgKFRJbnRlcm1UcmF2ZXJzZXIpOgorKyAgICAg
ICAgKiBzcmMvY29tcGlsZXIvb3NpbmNsdWRlLmg6CisrICAgICAgICAoT1NfR2V0VExTVmFsdWUp
OgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvb3Nzb3VyY2VfbnNwci5jcHA6CisrICAgICAgICAq
IHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvRGlhZ25vc3RpY3NCYXNlLmNwcDogQWRkZWQuCisr
ICAgICAgICAocHApOgorKyAgICAgICAgKHBwOjpEaWFnbm9zdGljczo6fkRpYWdub3N0aWNzKToK
KysgICAgICAgIChwcDo6RGlhZ25vc3RpY3M6OnJlcG9ydCk6CisrICAgICAgICAocHA6OkRpYWdu
b3N0aWNzOjpzZXZlcml0eSk6CisrICAgICAgICAocHA6OkRpYWdub3N0aWNzOjptZXNzYWdlKToK
KysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9EaWFnbm9zdGljc0Jhc2UuaDog
UmVuYW1lZCBmcm9tIFNvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci9wcmVwcm9j
ZXNzb3IvbmV3L0RpYWdub3N0aWNzLmguCisrICAgICAgICAocHApOgorKyAgICAgICAgKERpYWdu
b3N0aWNzKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9EaXJlY3RpdmVI
YW5kbGVyQmFzZS5jcHA6IFJlbmFtZWQgZnJvbSBTb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
Y29tcGlsZXIvcHJlcHJvY2Vzc29yL25ldy9EaXJlY3RpdmVIYW5kbGVyQmFzZS5jcHAuCisrICAg
ICAgICAocHApOgorKyAgICAgICAgKHBwOjpEaXJlY3RpdmVIYW5kbGVyOjp+RGlyZWN0aXZlSGFu
ZGxlcik6CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvRGlyZWN0aXZlSGFu
ZGxlckJhc2UuaDogUmVuYW1lZCBmcm9tIFNvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21w
aWxlci9wcmVwcm9jZXNzb3IvbmV3L0RpcmVjdGl2ZUhhbmRsZXIuaC4KKysgICAgICAgIChwcCk6
CisrICAgICAgICAoRGlyZWN0aXZlSGFuZGxlcik6CisrICAgICAgICAqIHNyYy9jb21waWxlci9w
cmVwcm9jZXNzb3IvRGlyZWN0aXZlUGFyc2VyLmNwcDogUmVuYW1lZCBmcm9tIFNvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvbmV3L0RpcmVjdGl2ZVBhcnNl
ci5jcHAuCisrICAgICAgICAoZ2V0RGlyZWN0aXZlKToKKysgICAgICAgIChpc0NvbmRpdGlvbmFs
RGlyZWN0aXZlKToKKysgICAgICAgIChpc0VPRCk6CisrICAgICAgICAoc2tpcFVudGlsRU9EKToK
KysgICAgICAgIChpc01hY3JvTmFtZVJlc2VydmVkKToKKysgICAgICAgIChpc01hY3JvUHJlZGVm
aW5lZCk6CisrICAgICAgICAocHApOgorKyAgICAgICAgKERlZmluZWRQYXJzZXIpOgorKyAgICAg
ICAgKHBwOjpEZWZpbmVkUGFyc2VyOjpEZWZpbmVkUGFyc2VyKToKKysgICAgICAgIChwcDo6RGVm
aW5lZFBhcnNlcjo6bGV4KToKKysgICAgICAgIChwcDo6RGlyZWN0aXZlUGFyc2VyOjpEaXJlY3Rp
dmVQYXJzZXIpOgorKyAgICAgICAgKHBwOjpEaXJlY3RpdmVQYXJzZXI6OmxleCk6CisrICAgICAg
ICAocHA6OkRpcmVjdGl2ZVBhcnNlcjo6cGFyc2VEaXJlY3RpdmUpOgorKyAgICAgICAgKHBwOjpE
aXJlY3RpdmVQYXJzZXI6OnBhcnNlRGVmaW5lKToKKysgICAgICAgIChwcDo6RGlyZWN0aXZlUGFy
c2VyOjpwYXJzZVVuZGVmKToKKysgICAgICAgIChwcDo6RGlyZWN0aXZlUGFyc2VyOjpwYXJzZUlm
KToKKysgICAgICAgIChwcDo6RGlyZWN0aXZlUGFyc2VyOjpwYXJzZUlmZGVmKToKKysgICAgICAg
IChwcDo6RGlyZWN0aXZlUGFyc2VyOjpwYXJzZUlmbmRlZik6CisrICAgICAgICAocHA6OkRpcmVj
dGl2ZVBhcnNlcjo6cGFyc2VFbHNlKToKKysgICAgICAgIChwcDo6RGlyZWN0aXZlUGFyc2VyOjpw
YXJzZUVsaWYpOgorKyAgICAgICAgKHBwOjpEaXJlY3RpdmVQYXJzZXI6OnBhcnNlRW5kaWYpOgor
KyAgICAgICAgKHBwOjpEaXJlY3RpdmVQYXJzZXI6OnBhcnNlRXJyb3IpOgorKyAgICAgICAgKHBw
OjpEaXJlY3RpdmVQYXJzZXI6OnBhcnNlUHJhZ21hKToKKysgICAgICAgIChwcDo6RGlyZWN0aXZl
UGFyc2VyOjpwYXJzZUV4dGVuc2lvbik6CisrICAgICAgICAocHA6OkRpcmVjdGl2ZVBhcnNlcjo6
cGFyc2VWZXJzaW9uKToKKysgICAgICAgIChwcDo6RGlyZWN0aXZlUGFyc2VyOjpwYXJzZUxpbmUp
OgorKyAgICAgICAgKHBwOjpEaXJlY3RpdmVQYXJzZXI6OnNraXBwaW5nKToKKysgICAgICAgIChw
cDo6RGlyZWN0aXZlUGFyc2VyOjpwYXJzZUNvbmRpdGlvbmFsSWYpOgorKyAgICAgICAgKHBwOjpE
aXJlY3RpdmVQYXJzZXI6OnBhcnNlRXhwcmVzc2lvbklmKToKKysgICAgICAgIChwcDo6RGlyZWN0
aXZlUGFyc2VyOjpwYXJzZUV4cHJlc3Npb25JZmRlZik6CisrICAgICAgICAqIHNyYy9jb21waWxl
ci9wcmVwcm9jZXNzb3IvRGlyZWN0aXZlUGFyc2VyLmg6IFJlbmFtZWQgZnJvbSBTb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL25ldy9EaXJlY3RpdmVQYXJz
ZXIuaC4KKysgICAgICAgIChwcCk6CisrICAgICAgICAoRGlyZWN0aXZlUGFyc2VyKToKKysgICAg
ICAgIChDb25kaXRpb25hbEJsb2NrKToKKysgICAgICAgIChwcDo6RGlyZWN0aXZlUGFyc2VyOjpD
b25kaXRpb25hbEJsb2NrOjpDb25kaXRpb25hbEJsb2NrKToKKysgICAgICAgICogc3JjL2NvbXBp
bGVyL3ByZXByb2Nlc3Nvci9FeHByZXNzaW9uUGFyc2VyLmNwcDogUmVuYW1lZCBmcm9tIFNvdXJj
ZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvbmV3L0V4cHJlc3Np
b25QYXJzZXIuY3BwLgorKyAgICAgICAgKHl5c3ludGF4X2Vycm9yKToKKysgICAgICAgICh5eWxl
eCk6CisrICAgICAgICAoeXllcnJvcik6CisrICAgICAgICAocHApOgorKyAgICAgICAgKHBwOjpF
eHByZXNzaW9uUGFyc2VyOjpFeHByZXNzaW9uUGFyc2VyKToKKysgICAgICAgIChwcDo6RXhwcmVz
c2lvblBhcnNlcjo6cGFyc2UpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29y
L0V4cHJlc3Npb25QYXJzZXIuaDogUmVuYW1lZCBmcm9tIFNvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvbmV3L0V4cHJlc3Npb25QYXJzZXIuaC4KKysgICAg
ICAgIChwcCk6CisrICAgICAgICAoRXhwcmVzc2lvblBhcnNlcik6CisrICAgICAgICAqIHNyYy9j
b21waWxlci9wcmVwcm9jZXNzb3IvRXhwcmVzc2lvblBhcnNlci55OiBSZW5hbWVkIGZyb20gU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9uZXcvRXhwcmVz
c2lvblBhcnNlci55LgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL0lucHV0
LmNwcDogUmVuYW1lZCBmcm9tIFNvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci9w
cmVwcm9jZXNzb3IvbmV3L0lucHV0LmNwcC4KKysgICAgICAgIChwcCk6CisrICAgICAgICAocHA6
OklucHV0OjpJbnB1dCk6CisrICAgICAgICAocHA6OklucHV0OjpyZWFkKToKKysgICAgICAgICog
c3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9JbnB1dC5oOiBSZW5hbWVkIGZyb20gU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9uZXcvSW5wdXQuaC4KKysg
ICAgICAgIChwcCk6CisrICAgICAgICAoSW5wdXQpOgorKyAgICAgICAgKHBwOjpJbnB1dDo6Y291
bnQpOgorKyAgICAgICAgKHBwOjpJbnB1dDo6c3RyaW5nKToKKysgICAgICAgIChwcDo6SW5wdXQ6
Omxlbmd0aCk6CisrICAgICAgICAoTG9jYXRpb24pOgorKyAgICAgICAgKHBwOjpJbnB1dDo6TG9j
YXRpb246OkxvY2F0aW9uKToKKysgICAgICAgIChwcDo6SW5wdXQ6OnJlYWRMb2MpOgorKyAgICAg
ICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL0xleGVyLmNwcDogUmVuYW1lZCBmcm9tIFNv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvbmV3L0xleGVy
LmNwcC4KKysgICAgICAgIChwcCk6CisrICAgICAgICAocHA6OkxleGVyOjp+TGV4ZXIpOgorKyAg
ICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL0xleGVyLmg6IFJlbmFtZWQgZnJvbSBT
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL25ldy9MZXhl
ci5oLgorKyAgICAgICAgKHBwKToKKysgICAgICAgIChMZXhlcik6CisrICAgICAgICAqIHNyYy9j
b21waWxlci9wcmVwcm9jZXNzb3IvTWFjcm8uY3BwOiBSZW5hbWVkIGZyb20gU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9uZXcvTWFjcm8uY3BwLgorKyAg
ICAgICAgKHBwKToKKysgICAgICAgIChwcDo6TWFjcm86OmVxdWFscyk6CisrICAgICAgICAqIHNy
Yy9jb21waWxlci9wcmVwcm9jZXNzb3IvTWFjcm8uaDogUmVuYW1lZCBmcm9tIFNvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvbmV3L01hY3JvLmguCisrICAg
ICAgICAocHApOgorKyAgICAgICAgKHBwOjpNYWNybzo6TWFjcm8pOgorKyAgICAgICAgKE1hY3Jv
KToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9NYWNyb0V4cGFuZGVyLmNw
cDogUmVuYW1lZCBmcm9tIFNvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci9wcmVw
cm9jZXNzb3IvbmV3L01hY3JvRXhwYW5kZXIuY3BwLgorKyAgICAgICAgKHBwKToKKysgICAgICAg
IChUb2tlbkxleGVyKToKKysgICAgICAgIChwcDo6VG9rZW5MZXhlcjo6VG9rZW5MZXhlcik6Cisr
ICAgICAgICAocHA6OlRva2VuTGV4ZXI6OmxleCk6CisrICAgICAgICAocHA6Ok1hY3JvRXhwYW5k
ZXI6Ok1hY3JvRXhwYW5kZXIpOgorKyAgICAgICAgKHBwOjpNYWNyb0V4cGFuZGVyOjp+TWFjcm9F
eHBhbmRlcik6CisrICAgICAgICAocHA6Ok1hY3JvRXhwYW5kZXI6OmxleCk6CisrICAgICAgICAo
cHA6Ok1hY3JvRXhwYW5kZXI6OmdldFRva2VuKToKKysgICAgICAgIChwcDo6TWFjcm9FeHBhbmRl
cjo6dW5nZXRUb2tlbik6CisrICAgICAgICAocHA6Ok1hY3JvRXhwYW5kZXI6OmlzTmV4dFRva2Vu
TGVmdFBhcmVuKToKKysgICAgICAgIChwcDo6TWFjcm9FeHBhbmRlcjo6cHVzaE1hY3JvKToKKysg
ICAgICAgIChwcDo6TWFjcm9FeHBhbmRlcjo6cG9wTWFjcm8pOgorKyAgICAgICAgKHBwOjpNYWNy
b0V4cGFuZGVyOjpleHBhbmRNYWNybyk6CisrICAgICAgICAocHA6Ok1hY3JvRXhwYW5kZXI6OmNv
bGxlY3RNYWNyb0FyZ3MpOgorKyAgICAgICAgKHBwOjpNYWNyb0V4cGFuZGVyOjpyZXBsYWNlTWFj
cm9QYXJhbXMpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL01hY3JvRXhw
YW5kZXIuaDogUmVuYW1lZCBmcm9tIFNvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21waWxl
ci9wcmVwcm9jZXNzb3IvbmV3L01hY3JvRXhwYW5kZXIuaC4KKysgICAgICAgIChwcCk6CisrICAg
ICAgICAoTWFjcm9FeHBhbmRlcik6CisrICAgICAgICAoTWFjcm9Db250ZXh0KToKKysgICAgICAg
IChwcDo6TWFjcm9FeHBhbmRlcjo6TWFjcm9Db250ZXh0OjpNYWNyb0NvbnRleHQpOgorKyAgICAg
ICAgKHBwOjpNYWNyb0V4cGFuZGVyOjpNYWNyb0NvbnRleHQ6OmVtcHR5KToKKysgICAgICAgIChw
cDo6TWFjcm9FeHBhbmRlcjo6TWFjcm9Db250ZXh0OjpnZXQpOgorKyAgICAgICAgKHBwOjpNYWNy
b0V4cGFuZGVyOjpNYWNyb0NvbnRleHQ6OnVuZ2V0KToKKysgICAgICAgICogc3JjL2NvbXBpbGVy
L3ByZXByb2Nlc3Nvci9QcmVwcm9jZXNzb3IuY3BwOiBSZW5hbWVkIGZyb20gU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9uZXcvUHJlcHJvY2Vzc29yLmNw
cC4KKysgICAgICAgIChwcCk6CisrICAgICAgICAoUHJlcHJvY2Vzc29ySW1wbCk6CisrICAgICAg
ICAocHA6OlByZXByb2Nlc3NvckltcGw6OlByZXByb2Nlc3NvckltcGwpOgorKyAgICAgICAgKHBw
OjpQcmVwcm9jZXNzb3I6OlByZXByb2Nlc3Nvcik6CisrICAgICAgICAocHA6OlByZXByb2Nlc3Nv
cjo6flByZXByb2Nlc3Nvcik6CisrICAgICAgICAocHA6OlByZXByb2Nlc3Nvcjo6aW5pdCk6Cisr
ICAgICAgICAocHA6OlByZXByb2Nlc3Nvcjo6cHJlZGVmaW5lTWFjcm8pOgorKyAgICAgICAgKHBw
OjpQcmVwcm9jZXNzb3I6OmxleCk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNz
b3IvUHJlcHJvY2Vzc29yLmg6IFJlbmFtZWQgZnJvbSBTb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9z
cmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL25ldy9QcmVwcm9jZXNzb3IuaC4KKysgICAgICAgIChw
cCk6CisrICAgICAgICAoUHJlcHJvY2Vzc29yKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3By
ZXByb2Nlc3Nvci9Tb3VyY2VMb2NhdGlvbi5oOiBSZW5hbWVkIGZyb20gU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9uZXcvU291cmNlTG9jYXRpb24uaC4K
KysgICAgICAgIChwcCk6CisrICAgICAgICAocHA6OlNvdXJjZUxvY2F0aW9uOjpTb3VyY2VMb2Nh
dGlvbik6CisrICAgICAgICAoU291cmNlTG9jYXRpb24pOgorKyAgICAgICAgKHBwOjpTb3VyY2VM
b2NhdGlvbjo6ZXF1YWxzKToKKysgICAgICAgIChwcDo6b3BlcmF0b3I9PSk6CisrICAgICAgICAo
cHA6Om9wZXJhdG9yIT0pOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL1Rv
a2VuLmNwcDogUmVuYW1lZCBmcm9tIFNvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21waWxl
ci9wcmVwcm9jZXNzb3IvbmV3L1Rva2VuLmNwcC4KKysgICAgICAgIChwcCk6CisrICAgICAgICAo
cHA6OlRva2VuOjpyZXNldCk6CisrICAgICAgICAocHA6OlRva2VuOjplcXVhbHMpOgorKyAgICAg
ICAgKHBwOjpUb2tlbjo6c2V0QXRTdGFydE9mTGluZSk6CisrICAgICAgICAocHA6OlRva2VuOjpz
ZXRIYXNMZWFkaW5nU3BhY2UpOgorKyAgICAgICAgKHBwOjpUb2tlbjo6c2V0RXhwYW5zaW9uRGlz
YWJsZWQpOgorKyAgICAgICAgKHBwOjpUb2tlbjo6aVZhbHVlKToKKysgICAgICAgIChwcDo6VG9r
ZW46OnVWYWx1ZSk6CisrICAgICAgICAocHA6OlRva2VuOjpmVmFsdWUpOgorKyAgICAgICAgKHBw
OjpvcGVyYXRvcjw8KToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9Ub2tl
bi5oOiBSZW5hbWVkIGZyb20gU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3By
ZXByb2Nlc3Nvci9uZXcvVG9rZW4uaC4KKysgICAgICAgIChwcCk6CisrICAgICAgICAocHA6OlRv
a2VuOjpUb2tlbik6CisrICAgICAgICAoVG9rZW4pOgorKyAgICAgICAgKHBwOjpUb2tlbjo6YXRT
dGFydE9mTGluZSk6CisrICAgICAgICAocHA6OlRva2VuOjpoYXNMZWFkaW5nU3BhY2UpOgorKyAg
ICAgICAgKHBwOjpUb2tlbjo6ZXhwYW5zaW9uRGlzYWJsZWQpOgorKyAgICAgICAgKHBwOjpvcGVy
YXRvcj09KToKKysgICAgICAgIChwcDo6b3BlcmF0b3IhPSk6CisrICAgICAgICAqIHNyYy9jb21w
aWxlci9wcmVwcm9jZXNzb3IvVG9rZW5pemVyLmNwcDogUmVuYW1lZCBmcm9tIFNvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvbmV3L1Rva2VuaXplci5jcHAu
CisrICAgICAgICAoeXlfYnVmZmVyX3N0YXRlKToKKysgICAgICAgICh5eV90cmFuc19pbmZvKToK
KysgICAgICAgICh5eWd1dHNfdCk6CisrICAgICAgICAoeXlfZ2V0X3ByZXZpb3VzX3N0YXRlKToK
KysgICAgICAgICh5eV90cnlfTlVMX3RyYW5zKToKKysgICAgICAgIChpbnB1dCk6CisrICAgICAg
ICAocHByZXN0YXJ0KToKKysgICAgICAgIChwcF9zd2l0Y2hfdG9fYnVmZmVyKToKKysgICAgICAg
IChwcF9sb2FkX2J1ZmZlcl9zdGF0ZSk6CisrICAgICAgICAocHBfY3JlYXRlX2J1ZmZlcik6Cisr
ICAgICAgICAocHBfZGVsZXRlX2J1ZmZlcik6CisrICAgICAgICAocHBfaW5pdF9idWZmZXIpOgor
KyAgICAgICAgKHBwX2ZsdXNoX2J1ZmZlcik6CisrICAgICAgICAocHBwdXNoX2J1ZmZlcl9zdGF0
ZSk6CisrICAgICAgICAocHBwb3BfYnVmZmVyX3N0YXRlKToKKysgICAgICAgIChwcGVuc3VyZV9i
dWZmZXJfc3RhY2spOgorKyAgICAgICAgKHBwX3NjYW5fYnVmZmVyKToKKysgICAgICAgIChwcF9z
Y2FuX3N0cmluZyk6CisrICAgICAgICAocHBfc2Nhbl9ieXRlcyk6CisrICAgICAgICAoeXlfZmF0
YWxfZXJyb3IpOgorKyAgICAgICAgKHBwZ2V0X2V4dHJhKToKKysgICAgICAgIChwcGdldF9saW5l
bm8pOgorKyAgICAgICAgKHBwZ2V0X2NvbHVtbik6CisrICAgICAgICAocHBnZXRfaW4pOgorKyAg
ICAgICAgKHBwZ2V0X291dCk6CisrICAgICAgICAocHBnZXRfbGVuZyk6CisrICAgICAgICAocHBn
ZXRfdGV4dCk6CisrICAgICAgICAocHBzZXRfZXh0cmEpOgorKyAgICAgICAgKHBwc2V0X2xpbmVu
byk6CisrICAgICAgICAocHBzZXRfY29sdW1uKToKKysgICAgICAgIChwcHNldF9pbik6CisrICAg
ICAgICAocHBzZXRfb3V0KToKKysgICAgICAgIChwcGdldF9kZWJ1Zyk6CisrICAgICAgICAocHBz
ZXRfZGVidWcpOgorKyAgICAgICAgKHBwZ2V0X2x2YWwpOgorKyAgICAgICAgKHBwc2V0X2x2YWwp
OgorKyAgICAgICAgKHBwZ2V0X2xsb2MpOgorKyAgICAgICAgKHBwc2V0X2xsb2MpOgorKyAgICAg
ICAgKHBwbGV4X2luaXQpOgorKyAgICAgICAgKHBwbGV4X2luaXRfZXh0cmEpOgorKyAgICAgICAg
KHl5X2luaXRfZ2xvYmFscyk6CisrICAgICAgICAocHBsZXhfZGVzdHJveSk6CisrICAgICAgICAo
eXlfZmxleF9zdHJuY3B5KToKKysgICAgICAgICh5eV9mbGV4X3N0cmxlbik6CisrICAgICAgICAo
cHBhbGxvYyk6CisrICAgICAgICAocHByZWFsbG9jKToKKysgICAgICAgIChwcGZyZWUpOgorKyAg
ICAgICAgKHBwKToKKysgICAgICAgIChwcDo6VG9rZW5pemVyOjpUb2tlbml6ZXIpOgorKyAgICAg
ICAgKHBwOjpUb2tlbml6ZXI6On5Ub2tlbml6ZXIpOgorKyAgICAgICAgKHBwOjpUb2tlbml6ZXI6
OmluaXQpOgorKyAgICAgICAgKHBwOjpUb2tlbml6ZXI6OnNldEZpbGVOdW1iZXIpOgorKyAgICAg
ICAgKHBwOjpUb2tlbml6ZXI6OnNldExpbmVOdW1iZXIpOgorKyAgICAgICAgKHBwOjpUb2tlbml6
ZXI6OmxleCk6CisrICAgICAgICAocHA6OlRva2VuaXplcjo6aW5pdFNjYW5uZXIpOgorKyAgICAg
ICAgKHBwOjpUb2tlbml6ZXI6OmRlc3Ryb3lTY2FubmVyKToKKysgICAgICAgICogc3JjL2NvbXBp
bGVyL3ByZXByb2Nlc3Nvci9Ub2tlbml6ZXIuaDogUmVuYW1lZCBmcm9tIFNvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL3NyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvbmV3L1Rva2VuaXplci5oLgorKyAg
ICAgICAgKHBwKToKKysgICAgICAgIChUb2tlbml6ZXIpOgorKyAgICAgICAgKENvbnRleHQpOgor
KyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL1Rva2VuaXplci5sOiBSZW5hbWVk
IGZyb20gU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9u
ZXcvVG9rZW5pemVyLmwuCisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvYXRv
bS5jOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL2F0b20u
aDogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9jb21waWxl
Lmg6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvY3BwLmM6
IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvY3BwLmg6IFJl
bW92ZWQuCisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvY3Bwc3RydWN0LmM6
IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvZ2VuZXJhdGVf
cGFyc2VyLnNoOiBSZW5hbWVkIGZyb20gU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbXBp
bGVyL3ByZXByb2Nlc3Nvci9uZXcvZ2VuZXJhdGVfcGFyc2VyLnNoLgorKyAgICAgICAgKiBzcmMv
Y29tcGlsZXIvcHJlcHJvY2Vzc29yL21lbW9yeS5jOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMv
Y29tcGlsZXIvcHJlcHJvY2Vzc29yL21lbW9yeS5oOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMv
Y29tcGlsZXIvcHJlcHJvY2Vzc29yL25ldy9EaWFnbm9zdGljc0Jhc2UuY3BwOiBSZW1vdmVkLgor
KyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL25ldy9uZXdfZmlsZS5jcHA6IFJl
bW92ZWQuCisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvbmV3L25ld19maWxl
Mi5jcHA6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvbmV3
L3ByZXByb2Nlc3Nvci52Y3Byb2o6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9jb21waWxlci9w
cmVwcm9jZXNzb3IvbnVtZXJpY19sZXguaDogQWRkZWQuCisrICAgICAgICAocHApOgorKyAgICAg
ICAgKHBwOjpudW1lcmljX2Jhc2VfaW50KToKKysgICAgICAgIChwcDo6bnVtZXJpY19sZXhfaW50
KToKKysgICAgICAgIChwcDo6bnVtZXJpY19sZXhfZmxvYXQpOgorKyAgICAgICAgKiBzcmMvY29t
cGlsZXIvcHJlcHJvY2Vzc29yL3BhcnNlci5oOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvY29t
cGlsZXIvcHJlcHJvY2Vzc29yL3BwX3V0aWxzLmg6IFJlbmFtZWQgZnJvbSBTb3VyY2UvVGhpcmRQ
YXJ0eS9BTkdMRS9zcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL25ldy9wcF91dGlscy5oLgorKyAg
ICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL3ByZXByb2Nlc3MuaDogUmVtb3ZlZC4K
KysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9zY2FubmVyLmM6IFJlbW92ZWQu
CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3Ivc2Nhbm5lci5oOiBSZW1vdmVk
LgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL3NsZ2xvYmFscy5oOiBSZW1v
dmVkLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL3N5bWJvbHMuYzogUmVt
b3ZlZC4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9zeW1ib2xzLmg6IFJl
bW92ZWQuCisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvdG9rZW5zLmM6IFJl
bW92ZWQuCisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvdG9rZW5zLmg6IFJl
bW92ZWQuCisrICAgICAgICAqIHNyYy9saWJFR0wvQ29uZmlnLmNwcDogUmVtb3ZlZC4KKysgICAg
ICAgICogc3JjL2xpYkVHTC9Db25maWcuaDogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xpYkVH
TC9EaXNwbGF5LmNwcDogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xpYkVHTC9EaXNwbGF5Lmg6
IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9saWJFR0wvUkVBRE1FOiBBZGRlZC4KKysgICAgICAg
ICogc3JjL2xpYkVHTC9TdXJmYWNlLmNwcDogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xpYkVH
TC9TdXJmYWNlLmg6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9saWJFR0wvbGliRUdMLmNwcDog
UmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xpYkVHTC9saWJFR0wuZGVmOiBSZW1vdmVkLgorKyAg
ICAgICAgKiBzcmMvbGliRUdML2xpYkVHTC5yYzogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xp
YkVHTC9saWJFR0wudmNwcm9qOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvbGliRUdML21haW4u
Y3BwOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvbGliRUdML21haW4uaDogUmVtb3ZlZC4KKysg
ICAgICAgICogc3JjL2xpYkVHTC9yZXNvdXJjZS5oOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMv
bGliR0xFU3YyL0JsaXQuY3BwOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL0Js
aXQuaDogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9CdWZmZXIuY3BwOiBSZW1v
dmVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL0J1ZmZlci5oOiBSZW1vdmVkLgorKyAgICAg
ICAgKiBzcmMvbGliR0xFU3YyL0NvbnRleHQuY3BwOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMv
bGliR0xFU3YyL0NvbnRleHQuaDogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9G
ZW5jZS5jcHA6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvRmVuY2UuaDogUmVt
b3ZlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9GcmFtZWJ1ZmZlci5jcHA6IFJlbW92ZWQu
CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvRnJhbWVidWZmZXIuaDogUmVtb3ZlZC4KKysgICAg
ICAgICogc3JjL2xpYkdMRVN2Mi9IYW5kbGVBbGxvY2F0b3IuY3BwOiBSZW1vdmVkLgorKyAgICAg
ICAgKiBzcmMvbGliR0xFU3YyL0hhbmRsZUFsbG9jYXRvci5oOiBSZW1vdmVkLgorKyAgICAgICAg
KiBzcmMvbGliR0xFU3YyL0luZGV4RGF0YU1hbmFnZXIuY3BwOiBSZW1vdmVkLgorKyAgICAgICAg
KiBzcmMvbGliR0xFU3YyL0luZGV4RGF0YU1hbmFnZXIuaDogUmVtb3ZlZC4KKysgICAgICAgICog
c3JjL2xpYkdMRVN2Mi9Qcm9ncmFtLmNwcDogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xpYkdM
RVN2Mi9Qcm9ncmFtLmg6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvUHJvZ3Jh
bUJpbmFyeS5jcHA6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvUHJvZ3JhbUJp
bmFyeS5oOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1F1ZXJ5LmNwcDogUmVt
b3ZlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9RdWVyeS5oOiBSZW1vdmVkLgorKyAgICAg
ICAgKiBzcmMvbGliR0xFU3YyL1JFQURNRTogQWRkZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVT
djIvUmVuZGVyYnVmZmVyLmNwcDogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9S
ZW5kZXJidWZmZXIuaDogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9SZXNvdXJj
ZU1hbmFnZXIuY3BwOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1Jlc291cmNl
TWFuYWdlci5oOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1NoYWRlci5jcHA6
IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvU2hhZGVyLmg6IFJlbW92ZWQuCisr
ICAgICAgICAqIHNyYy9saWJHTEVTdjIvVGV4dHVyZS5jcHA6IFJlbW92ZWQuCisrICAgICAgICAq
IHNyYy9saWJHTEVTdjIvVGV4dHVyZS5oOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvbGliR0xF
U3YyL1ZlcnRleERhdGFNYW5hZ2VyLmNwcDogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xpYkdM
RVN2Mi9WZXJ0ZXhEYXRhTWFuYWdlci5oOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvbGliR0xF
U3YyL2xpYkdMRVN2Mi5jcHA6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvbGli
R0xFU3YyLmRlZjogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9saWJHTEVTdjIu
cmM6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvbGliR0xFU3YyLnZjcHJvajog
UmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9tYWluLmNwcDogUmVtb3ZlZC4KKysg
ICAgICAgICogc3JjL2xpYkdMRVN2Mi9tYWluLmg6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9s
aWJHTEVTdjIvbWF0aHV0aWwuaDogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9y
ZXNvdXJjZS5oOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3V0aWxpdGllcy5j
cHA6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvdXRpbGl0aWVzLmg6IFJlbW92
ZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvdmVydGV4Y29udmVyc2lvbi5oOiBSZW1vdmVk
LgorKworKzIwMTItMTItMTggIE1heCBWdWpvdmljICA8bXZ1am92aWNAYWRvYmUuY29tPgorKwor
KyAgICAgICAgW0FOR0xFXSBVc2Ugb2YgdW5pbml0aWFsaXplZCBtZW1vcnkgaW4gQXJyYXlCb3Vu
ZHNDbGFtcGVyCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTA1MjE4CisrCisrICAgICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24uCisrCisrICAg
ICAgICBUSW50ZXJtQmluYXJ5OjphZGRJbmRleENsYW1wIGlzIHVuaW5pdGlhbGl6ZWQgd2hlbiB0
aGUgY29tcGlsZSBmbGFnIAorKyAgICAgICAgU0hfQ0xBTVBfSU5ESVJFQ1RfQVJSQVlfQk9VTkRT
IGlzIG5vdCBzZXQuIFRoZW4sIGFkZEluZGV4Q2xhbXAgaXMgdXNlZCBpbiBPdXRwdXRHTFNMQmFz
ZS4gCisrICAgICAgICBDU1MgU2hhZGVycyBuZWVkcyB0byBkbyBhIGZpcnN0IHZhbGlkYXRpb24g
cGFzcyB3aXRob3V0IHRoZSBTSF9DTEFNUF9JTkRJUkVDVF9BUlJBWV9CT1VORFMgCisrICAgICAg
ICBmbGFnIGFuZCBpdHMgZWZmZWN0cy4gSG93ZXZlciwgc29tZXRpbWVzIGFkZEluZGV4Q2xhbXAg
aXMgdHJ1ZSwgd2hpY2ggaW5zZXJ0cyBjbGFtcGluZyBjb2RlCisrICAgICAgICB0aGF0IGNhdXNl
cyBhIHNoYWRlciB0byBmYWlsIGNvbXBpbGF0aW9uIGF0IHRoZSBXZWJHTCBsZXZlbC4KKysKKysg
ICAgICAgICogc3JjL2NvbXBpbGVyL2ludGVybWVkaWF0ZS5oOgorKyAgICAgICAgKFRJbnRlcm1C
aW5hcnk6OlRJbnRlcm1CaW5hcnkpOgorKworKzIwMTItMTAtMjkgIEFuZGVycyBDYXJsc3NvbiAg
PGFuZGVyc2NhQGFwcGxlLmNvbT4KKysKKysgICAgICAgIEJ1aWxkIFdlYktpdCBhcyBDKysxMSBv
biBNYWMKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
MDA3MjAKKysKKysgICAgICAgIFJldmlld2VkIGJ5IERhbmllbCBCYXRlcy4KKysKKysgICAgICAg
ICogQ29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZzoKKysgICAgICAgIEFkZCBDTEFOR19DWFhf
TEFOR1VBR0VfU1RBTkRBUkQ9Z251KysweC4KKysKKysyMDEyLTEwLTI4ICBNYXJrIFJvd2UgIDxt
cm93ZUBhcHBsZS5jb20+CisrCisrICAgICAgICBTaW1wbGlmeSBYY29kZSBjb25maWd1cmF0aW9u
IHNldHRpbmdzIHRoYXQgdXNlZCB0byB2YXJ5IGJldHdlZW4gT1MgdmVyc2lvbnMuCisrCisrICAg
ICAgICBSZXZpZXdlZCBieSBEYW4gQmVybnN0ZWluLgorKworKyAgICAgICAgKiBDb25maWd1cmF0
aW9ucy9CYXNlLnhjY29uZmlnOgorKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9EZWJ1Z1JlbGVh
c2UueGNjb25maWc6CisrCisrMjAxMi0xMC0yOCAgTWFyayBSb3dlICA8bXJvd2VAYXBwbGUuY29t
PgorKworKyAgICAgICAgUmVtb3ZlIHJlZmVyZW5jZXMgdG8gdW5zdXBwb3J0ZWQgT1MgYW5kIFhj
b2RlIHZlcnNpb25zLgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgQW5kZXJzIENhcmxzc29uLgor
KworKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnOgorKyAgICAgICAgKiBD
b25maWd1cmF0aW9ucy9Db21waWxlclZlcnNpb24ueGNjb25maWc6IFJlbW92ZWQuCisrICAgICAg
ICAqIENvbmZpZ3VyYXRpb25zL0RlYnVnUmVsZWFzZS54Y2NvbmZpZzoKKysKKysyMDEyLTEwLTI3
ICBEYW4gQmVybnN0ZWluICA8bWl0ekBhcHBsZS5jb20+CisrCisrICAgICAgICBSRUFMX1BMQVRG
T1JNX05BTUUgYnVpbGQgc2V0dGluZyBpcyBubyBsb25nZXIgbmVlZGVkCisrICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTAwNTg3CisrCisrICAgICAgICBS
ZXZpZXdlZCBieSBNYXJrIFJvd2UuCisrCisrICAgICAgICBSZW1vdmVkIHRoZSBkZWZpbml0aW9u
IG9mIFJFQUxfUExBVEZPUk1fTkFNRSBhbmQgcmVwbGFjZWQgcmVmZXJlbmNlcyB0byBpdCB3aXRo
IHJlZmVyZW5jZXMKKysgICAgICAgIHRvIFBMQVRGT1JNX05BTUUuCisrCisrICAgICAgICAqIENv
bmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWc6CisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0Nv
bXBpbGVyVmVyc2lvbi54Y2NvbmZpZzoKKysKKysyMDEyLTEwLTE4ICBEZWFuIEphY2tzb24gIDxk
aW5vQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFNoYWRlciB0cmFuc2xhdG9yIG5lZWRzIG9wdGlv
biB0byBjbGFtcCB1bmlmb3JtIGFycmF5IGFjY2Vzc2VzIGluIHZlcnRleCBzaGFkZXJzCisrICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTg5NzcKKysgICAg
ICAgIGh0dHBzOi8vY29kZS5nb29nbGUuY29tL3AvYW5nbGVwcm9qZWN0L2lzc3Vlcy9kZXRhaWw/
aWQ9NDkKKysKKysgICAgICAgIFJldmlld2VkIGJ5IEFsb2sgUHJpeWFkYXJzaGkgYW5kIEtlbiBS
dXNzZWxsLgorKworKyAgICAgICAgV2ViR0wgZG9lcyBub3QgYWxsb3cgR0xTTCBjb2RlIHRvIGlu
ZGV4IGEgdW5pZm9ybSBhcnJheSBvdXRzaWRlIGl0cyBib3VuZHMuIEFkZCBhCisrICAgICAgICBm
bGFnIHRvIHRoZSBBTkdMRSBjb21waWxlciB0byBpbnNlcnQgY2xhbXAgc3RhdGVtZW50cyBhcm91
bmQgc3VjaCBpbmRleGluZy4KKysgICAgICAgIFNpbmNlIGl0IGlzIHBvc3NpYmxlIHRvIGFjY2Vz
cyB2ZWMyLzMvNCBhbmQgbWF0Mi8zLzQgY29tcG9uZW50cyBieSBhcnJheSBpbmRleGluZywKKysg
ICAgICAgIHRoZXkgbXVzdCBiZSBzaW1pbGFybHkgY2xhbXBlZC4KKysKKysgICAgICAgIFVuZm9y
dHVuYXRlbHksIGl0IGlzIGN1cnJlbnRseSBub3QgcG9zc2libGUgdG8gYWx3YXlzIGRldGVybWlu
ZSB0aGF0IHRoZSBpbmRleGluZyBpcworKyAgICAgICAgb3BlcmF0aW5nIG9uIGEgdW5pZm9ybSB2
YXJpYWJsZS4gRm9yIGV4YW1wbGUsIHN1cHBvc2Ugd2UgaGF2ZSAidW5pZm9ybSBtYXQ0IGEiLiBB
TkdMRQorKyAgICAgICAgaXMgY3VycmVudGx5IG5vdCBhYmxlIHRvIHRlbGwgdXMgdGhhdCB0aGUg
cnZhbHVlIG9mICJhWzBdIiBpcyBhIHVuaWZvcm0sIGp1c3QgdGhhdAorKyAgICAgICAgaXQgaGFz
IGEgc2l6ZSBvZiA0LiBUaGVyZWZvcmUsIHRoZSBjbGFtcGluZyBpcyBkb25lIG9uIGFsbCBpbmRp
cmVjdCBhcnJheSBpbmRleGluZy4KKysKKysgICAgICAgIFRoaXMgd2lsbCBoYXZlIGEgcGVyZm9y
bWFuY2UgaW1wYWN0LiBGdXR1cmUgZW5oYW5jZW1lbnRzIG1heSBiZSBhYmxlIHRvIGRldGVybWlu
ZQorKyAgICAgICAgY2FzZXMgd2hlcmUgdGhlIGNsYW1waW5nIGlzIG5vdCBuZWNlc3NhcnkuIEN1
cnJlbnRseSBvbmx5IGRpcmVjdCBpbmRleGluZyBpcyBza2lwcGVkCisrICAgICAgICAoaS5lLiBs
b29raW5nIHVwIGEgdmFsdWUgdXNpbmcgYSBjb25zdGFudCBpbmRleCkuCisrCisrICAgICAgICBU
aGUgY2xhbXAgaW5zZXJ0aW9uIGlzIG9ubHkgcGVyZm9ybWVkIG9uIHRoZSBHTFNMIG91dHB1dC4g
RGlyZWN0M0QgYWxyZWFkeSBndWFyYW50ZWVzCisrICAgICAgICB0aGF0IG91dC1vZi1ib3VuZHMg
dW5pZm9ybSBhcnJheSBhY2Nlc3MgcmV0dXJucyBhIHplcm8gdmFsdWUuCisrCisrICAgICAgICAq
IEFOR0xFLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisrICAgICAgICAqIFRhcmdldC5wcmk6
CisrICAgICAgICAqIGluY2x1ZGUvR0xTTEFORy9TaGFkZXJMYW5nLmg6IE5ldyBjb21waWxlciBv
cHRpb24uCisrICAgICAgICAqIHNyYy9jb21waWxlci9BcnJheUJvdW5kc0NsYW1wZXIuY3BwOiBB
ZGRlZC4KKysgICAgICAgIChBcnJheUJvdW5kc0NsYW1wZXI6OkFycmF5Qm91bmRzQ2xhbXBlcik6
CisrICAgICAgICAoQXJyYXlCb3VuZHNDbGFtcGVyOjpPdXRwdXRDbGFtcGluZ0Z1bmN0aW9uRGVm
aW5pdGlvbik6IEluamVjdHMgYSBjbGFtcGluZyBmdW5jdGlvbiBmb3IgaW50ZWdlcnMgaW50byBH
TFNMIHNvdXJjZS4KKysgICAgICAgIChBcnJheUJvdW5kc0NsYW1wZXI6Ok1hcmtJbmRpcmVjdEFy
cmF5Qm91bmRzRm9yQ2xhbXBpbmcpOiBFeGFtaW5lcyB0aGUgQVNUIGxvb2tpbmcgZm9yIG5vbi1k
aXJlY3QgYXJyYXkgaW5kZXhpbmcuCisrICAgICAgICAqIHNyYy9jb21waWxlci9BcnJheUJvdW5k
c0NsYW1wZXIuaDogQWRkZWQuCisrICAgICAgICAoQXJyYXlCb3VuZHNDbGFtcGVyKToKKysgICAg
ICAgIChBcnJheUJvdW5kc0NsYW1wZXI6OkdldEFycmF5Qm91bmRzQ2xhbXBEZWZpbml0aW9uTmVl
ZGVkKToKKysgICAgICAgIChBcnJheUJvdW5kc0NsYW1wZXI6OlNldEFycmF5Qm91bmRzQ2xhbXBE
ZWZpbml0aW9uTmVlZGVkKTogTWFya3MgdGhlIG9iamVjdCBhcyBuZWVkaW5nIHRvIG91dHB1dCB0
aGUgY2xhbXBpbmcgZnVuY3Rpb24uCisrICAgICAgICAoQXJyYXlCb3VuZHNDbGFtcGVyOjpDbGVh
bnVwKTogUmVzZXRzIHRoZSBzdGF0ZSBzbyB0aGF0IHN1YnNlcXVlbnQgcnVucyBzdGFydCBmcmVz
aC4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL0NvbXBpbGVyLmNwcDoKKysgICAgICAgIChUQ29t
cGlsZXI6OmNvbXBpbGUpOiBSdW4gdGhlIGNsYW1waW5nIGNvZGUgaWYgdGhlIGNvbXBpbGUgb3B0
aW9uIHdhcyBzZXQuCisrICAgICAgICAoVENvbXBpbGVyOjpjbGVhclJlc3VsdHMpOgorKyAgICAg
ICAgKFRDb21waWxlcjo6Z2V0QXJyYXlCb3VuZHNDbGFtcGVyKToKKysgICAgICAgICogc3JjL2Nv
bXBpbGVyL091dHB1dEdMU0xCYXNlLmNwcDoKKysgICAgICAgIChUT3V0cHV0R0xTTEJhc2U6OnZp
c2l0QmluYXJ5KTogSWYgdGhlIGV4cHJlc3Npb24gaGFzIGJlZW4gZmxhZ2dlZCwgaW5zZXJ0IGFu
IGFwcHJvcHJpYXRlICJjbGFtcCIgc3RhdGVtZW50LgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIv
U2hIYW5kbGUuaDoKKysgICAgICAgIChUQ29tcGlsZXIpOgorKyAgICAgICAgKiBzcmMvY29tcGls
ZXIvVHJhbnNsYXRvckVTU0wuY3BwOgorKyAgICAgICAgKFRyYW5zbGF0b3JFU1NMOjp0cmFuc2xh
dGUpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvVHJhbnNsYXRvckdMU0wuY3BwOgorKyAgICAg
ICAgKFRyYW5zbGF0b3JHTFNMOjp0cmFuc2xhdGUpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIv
aW50ZXJtT3V0LmNwcDoKKysgICAgICAgIChUVHlwZTo6Z2V0Q29tcGxldGVTdHJpbmcpOiBBZGQg
YXJyYXkgc2l6ZSB0byBpbnRlcm1lZGlhdGUgdHJlZSBvdXRwdXQuCisrICAgICAgICAqIHNyYy9j
b21waWxlci9pbnRlcm1lZGlhdGUuaDoKKysgICAgICAgIChUSW50ZXJtQmluYXJ5OjpzZXRBZGRJ
bmRleENsYW1wKTogTmV3IGZsYWcgZm9yIGluZGljYXRpbmcgYSBiaW5hcnkgZXhwcmVzc2lvbiBu
ZWVkcyBjbGFtcGluZy4KKysgICAgICAgIChUSW50ZXJtQmluYXJ5OjpnZXRBZGRJbmRleENsYW1w
KToKKysgICAgICAgIChUSW50ZXJtQmluYXJ5KToKKysKKysyMDEyLTA5LTEzICBNYXJrIFJvd2Ug
IDxtcm93ZUBhcHBsZS5jb20+CisrCisrICAgICAgICA8cmRhcjovL3Byb2JsZW0vMTIyNTU3MjA+
IEZpeCB0aGUgYnVpbGQgd2l0aCBuZXdlciBDbGFuZworKworKyAgICAgICAgUmV2aWV3ZWQgYnkg
U2FtIFdlaW5pZy4KKysgICAgICAgIAorKyAgICAgICAgQ2xhbmcgZ2VuZXJhdGVzIGEgd2Fybmlu
ZyBhYm91dCB0aGUgaW5jbHVzaW9uIG9mIHRyYWlsaW5nIGNvbW1hcyBvbiB0aGUgZmluYWwgZW51
bSBpdGVtIGFzIGl0J3MgYXBwYXJlbnRseQorKyAgICAgICAgYSBDKysxMSBleHRlbnNpb24uIFJl
bW92ZSB0aGVtLgorKyAgICAgICAgCisrICAgICAgICAqIHNyYy9jb21waWxlci9CYXNlVHlwZXMu
aDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL0V4dGVuc2lvbkJlaGF2aW9yLmg6CisrICAgICAg
ICAqIHNyYy9jb21waWxlci9QYXJzZUhlbHBlci5jcHA6CisrICAgICAgICAoVFBhcnNlQ29udGV4
dDo6cGFyc2VWZWN0b3JGaWVsZHMpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvaW50ZXJtZWRp
YXRlLmg6CisrCisrMjAxMi0wOS0xMyAgU2ltb24gSGF1c21hbm4gIDxzaW1vbi5oYXVzbWFubkBu
b2tpYS5jb20+CisrCisrICAgICAgICBbUXRdIFRoZSBBTkdMRSBidWlsZCBvbiBXaW5kb3dzIGJy
ZWFrcyB3aXRoIEdudVdpbjMyJ3MgZmxleCBiZWNhdXNlIGl0IGlzIHRvbyBvbGQKKysgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05NjM1OQorKworKyAgICAg
ICAgUmV2aWV3ZWQgYnkgVG9yIEFybmUgVmVzdGLDuC4KKysKKysgICAgICAgIEdudVdpbjMyJ3Mg
ZmxleCBpcyAyLjUuNCBhbmQgdGhhdCBpcyB0b28gb2xkIGZvciBBTkdMRSdzIHByZXByb2Nlc3Nv
cgorKyAgICAgICAgbGV4ZXIuIFRoZSBvbmx5IHZpYWJsZSBhbHRlcm5hdGl2ZSBJIGNvdWxkIGZp
bmQgb24gV2luZG93cyB0aGF0IHByb3ZpZGVzCisrICAgICAgICBiaW5hcmllcyBpcyB0aGUgd2lu
ZmxleGJpc29uIGRpc3RyaWJ1dGlvbiAoaHR0cDovL3NvdXJjZWZvcmdlLm5ldC9wcm9qZWN0cy93
aW5mbGV4Ymlzb24vKSwKKysgICAgICAgIHNvIGxldCdzIHVzZSB0aGF0IG9uZSBpbnN0ZWFkLgor
KworKyAgICAgICAgKiBEZXJpdmVkU291cmNlcy5wcmk6CisrCisrMjAxMi0wOS0xMiAgU2ltb24g
SGF1c21hbm4gIDxzaW1vbi5oYXVzbWFubkBub2tpYS5jb20+CisrCisrICAgICAgICBbUXRdIEJ1
aWxkIG9uIFdpbmRvd3MgcmVxdWlyZXMgYmlzb24vZmxleCBpbiBQQVRICisrICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTYzNTgKKysKKysgICAgICAgIFJl
dmlld2VkIGJ5IFRvciBBcm5lIFZlc3Riw7guCisrCisrICAgICAgICBVc2UgTUFLRUZJTEVfTk9P
UF9DT01NQU5EIGluc3RlYWQgb2YgdGhlIFxuXHQgdHJpY2sgdG8gZ2VuZXJhdGUgYSBkdW1teSBj
b21tYW5kLiBPdGhlcndpc2UKKysgICAgICAgIHRoZSBQQVRIIHByZXBlbmQgdHJpY2sgd2lsbCBi
cmVhayBiZWNhdXNlIGl0IGdlbmVyYXRlcyBhIGNvbW1hbmQgbGluZSBhbG9uZyB0aGUgbGluZXMg
b2YKKysgICAgICAgIChzZXQgUEFUSD0iLi4uIikgJiYgd2l0aCBqdXN0IHRoYXQgdHJhaWxpbmcg
YW1wZXJzYW5kIHBhaXIuCisrCisrICAgICAgICAqIERlcml2ZWRTb3VyY2VzLnByaToKKysKKysy
MDEyLTA5LTEwICBEZWFuIEphY2tzb24gIDxkaW5vQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFtB
cHBsZV0gSW5zdGFsbCBwbGlzdCBmb3IgQXBwbGUgT3BlbiBTb3VyY2UgYnVpbGQgc3lzdGVtCisr
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTYzNDUKKysK
KysgICAgICAgIFJldmlld2VkIGJ5IE1hcmsgUm93ZS4KKysKKysgICAgICAgIEFwcGxlJ3MgYnVp
bGQgc3lzdGVtIHJlcXVpcmVzIGEgY291cGxlIG9mIGZpbGVzIHRoYXQgZGVzY3JpYmUgd2hlcmUK
KysgICAgICAgIHRoZSAzcmQgcGFydHkgT3BlbiBTb3VyY2UgbGlicmFyeSBjYW1lIGZyb20sIGFu
ZCB3aGF0IGxpY2Vuc2UgaXQKKysgICAgICAgIHVzZXMuIFRoZXNlIGZpbGVzIGFyZSBjb3BpZWQg
aW50byAvdXNyL2xvY2FsIHdoZW4gdGhlIHByb2plY3QgaXMKKysgICAgICAgIGJlaW5nIGluc3Rh
bGxlZC4KKysKKysgICAgICAgICogQU5HTEUucGxpc3Q6IEFkZGVkLgorKyAgICAgICAgKiBBTkdM
RS50eHQ6IEFkZGVkLgorKyAgICAgICAgKiBBTkdMRS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
OgorKworKzIwMTItMDktMDYgIEFuZHJhcyBCZWNzaSAgPGFuZHJhcy5iZWNzaUBub2tpYS5jb20+
CisrCisrICAgICAgICBbQU5HTEVdIEZpeCB0aGUgYnVpbGQgd2l0aCBnY2MgNC43CisrICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTU5ODkKKysKKysgICAg
ICAgIFJldmlld2VkIGJ5IENzYWJhIE9zenRyb2dvbsOhYy4KKysKKysgICAgICAgIFRoZSBidWls
ZCBmYWlscyBiZWNhdXNlIG9mIGEgYm9ndXMgd2FybmluZyBhYm91dCB0aGUgYXV0by1nZW5lcmF0
ZWQKKysgICAgICAgIHBwbHZhbCB2YXJpYWJsZS4gVW5mb3J0dW5hdGVseSB0aGUgd2FybmluZyBp
cyBjYWxsZWQgLVd1bmluaXRpYWxpemVkCisrICAgICAgICBpbiBnY2MgNC42IGFuZCAtV21heWJl
LXVuaW5pdGlhbGl6ZWQgaW4gZ2NjIDQuNyB0aHVzIHdlIGFsc28gbmVlZCB0bworKyAgICAgICAg
aWdub3JlIHVua25vd24gcHJhZ21hcyBub3QgdG8gYnJlYWsgdGhlIGJ1aWxkIHdpdGggY29tcGls
ZXJzIHRoYXQgZG8KKysgICAgICAgIG5vdCByZWNvZ25pemUgdGhlc2Ugb3B0aW9ucy4KKysKKysg
ICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9uZXcvRXhwcmVzc2lvblBhcnNlci55
OgorKworKzIwMTItMDktMDYgIFNpbW9uIEhhdXNtYW5uICA8c2ltb24uaGF1c21hbm5Abm9raWEu
Y29tPgorKworKyAgICAgICAgW1F0XSBGaXggYnVpbGQgd2l0aCBBTkdMRSBvbiBwbGF0Zm9ybXMg
dGhhdCBwcm92aWRlIEVHTC9HTEVTdjIKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD05NTk2NQorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgVG9yIEFybmUg
VmVzdGLDuC4KKysKKysgICAgICAgIEFkZCBidWlsZCBydWxlcyB0byBidWlsZCBBTkdMRSBhcyBh
IHN0YXRpYyBsaWJyYXJ5IGZvciB0aGUgUXQgcG9ydC4KKysKKysgICAgICAgICogQU5HTEUucHJp
OiBBZGRlZC4KKysgICAgICAgICogQU5HTEUucHJvOiBBZGRlZC4KKysgICAgICAgICogRGVyaXZl
ZFNvdXJjZXMucHJpOiBBZGRlZC4KKysgICAgICAgICogVGFyZ2V0LnByaTogQWRkZWQuCisrCisr
MjAxMi0wOC0yNCAgSm9zaHVhIE5ldHRlcmZpZWxkICA8am5ldHRlcmZpZWxkQHJpbS5jb20+Cisr
CisrICAgICAgICBbQ1NTIFNoYWRlcnNdIFtBTkdMRV0gUmVuYW1lRnVuY3Rpb246OlJlbmFtZUZ1
bmN0aW9uIG1heSBzdG9yZSByZWZlcmVuY2VzIHRvIHRlbXBvcmFyeSBzdHJpbmcKKysgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05NDczNgorKyAgICAgICAg
aHR0cDovL2NvZGUuZ29vZ2xlLmNvbS9wL2FuZ2xlcHJvamVjdC9pc3N1ZXMvZGV0YWlsP2lkPTM2
MAorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgR2VvcmdlIFN0YWlrb3MuCisrCisrICAgICAgICBX
aGVuIFJlbmFtZUZ1bmN0aW9uOjpSZW5hbWVGdW5jdGlvbihjb25zdCBUU3RyaW5nJiBvbGRGdW5j
dGlvbk5hbWUsIGNvbnN0IFRTdHJpbmcmCisrICAgICAgICBuZXdGdW5jdGlvbk5hbWUpIGlzIGNh
bGxlZCBmcm9tIFRDb21waWxlcjo6cmV3cml0ZUNTU1NoYWRlcihUSW50ZXJtTm9kZSopLCByZWZl
cmVuY2VzIHRvCisrICAgICAgICB0aGUgdGVtcG9yYXJpZXMgb2xkRnVuY3Rpb25OYW1lIGFuZCBu
ZXdGdW5jdGlvbk5hbWUgYXJlIHN0b3JlZCBhcyBtT2xkRnVuY3Rpb25OYW1lIGFuZAorKyAgICAg
ICAgbU5ld0Z1bmN0aW9uTmFtZS4gVGhpcyByZXN1bHRzIGluIHVuZGVmaW5lZCBiZWhhdmlvdXIg
aW4gdmlzaXRBZ2dyZWdhdGUuCisrCisrICAgICAgICBUaGlzIHNhbWUgcGF0Y2ggaXMgYmVpbmcg
YXBwbGllZCBpbiB1cHN0cmVhbSBBTkdMRSwgYW5kIGlzIG5lZWRlZCBmb3IgQ1NTIFNoYWRlcgor
KyAgICAgICAgc2FuaXRpemF0aW9uLgorKworKyAgICAgICAgKiBzcmMvY29tcGlsZXIvUmVuYW1l
RnVuY3Rpb24uaDoKKysgICAgICAgIChSZW5hbWVGdW5jdGlvbjo6dmlzaXRBZ2dyZWdhdGUpOgor
KyAgICAgICAgKFJlbmFtZUZ1bmN0aW9uKToKKysKKysyMDEyLTA3LTE4ICBLcmlzdMOzZiBLb3N6
dHnDsyAgPGtrcmlzdG9mQGluZi51LXN6ZWdlZC5odT4KKysKKysgICAgICAgIFtRdF0gQnVpbGRm
aXggYWZ0ZXIgcjEyMjg3MC4KKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD04OTAzOQorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgQ3NhYmEgT3N6dHJvZ29u
w6FjCisrCisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvbmV3L01hY3JvRXhw
YW5kZXIuY3BwOgorKyAgICAgICAgKHBwOjpNYWNyb0V4cGFuZGVyOjp1bmdldFRva2VuKToKKysK
KysyMDEyLTA3LTE3ICBNYXggVnVqb3ZpYyAgPG12dWpvdmljQGFkb2JlLmNvbT4KKysKKysgICAg
ICAgIFVwZGF0ZSBBTkdMRSBpbiBXZWJLaXQKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD04OTAzOQorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGVhbiBK
YWNrc29uIGFuZCBNYXJrIFJvd2UuCisrCisrICAgICAgICBVcGRhdGUgQU5HTEUgdG8gcjExNzAs
IHdpdGggdGhlIGZvbGxvd2luZyBtb2RpZmljYXRpb25zOgorKworKyAgICAgICAgKDEpIFVzZSBC
aXNvbiAyLjMgaW5zdGVhZCBvZiBCaXNvbiAyLjQuMiB0byBnZW5lcmF0ZSBFeHByZXNzaW9uUGFy
c2VyLmNwcCBhbmQKKysgICAgICAgIGdsc2xhbmdfdGFiLmNwcC4gSSBoYWQgdG8gbW9kaWZ5IEV4
cHJlc3Npb25QYXJzZXIueSB0byBtYWtlIGl0IGNvbXBhdGlibGUgd2l0aCBCaXNvbgorKyAgICAg
ICAgMi4zLiBUaGUgY2hhbmdlcyBoYXZlIGJlZW4gY29udHJpYnV0ZWQgYmFjayB0byBBTkdMRSBp
biByMTIyNC4KKysKKysgICAgICAgICgyKSBDb250aW51ZSB0byByZWNvZ25pemUgUU5YIGFzIFBP
U0lYIGluIEFOR0xFLiBUaGlzIGhhcyBiZWVuIGNvbnRyaWJ1dGVkIGJhY2sgdG8gQU5HTEUKKysg
ICAgICAgIGluIHIxMjIzLgorKworKyAgICAgICAgKDMpIFJlbmFtZSBBTkdMRS9zcmMvY29tcGls
ZXIvcHJlcHJvY2Vzc29yL25ldy9EaWFnbm9zdGljLmNwcCB0byBEaWFnbm9zdGljQmFzZS5jcHAu
CisrICAgICAgICBSZW5hbWUgQU5HTEUvc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9uZXcvRGly
ZWN0aXZlSGFuZGxlci5jcHAgdG8gRGlyZWN0aXZlSGFuZGxlckJhc2UuY3BwLgorKworKyAgICAg
ICAgV2l0aCB0aGUgaW50cm9kdWN0aW9uIG9mIEFOR0xFJ3MgbmV3IHByZXByb2Nlc3NvciwgdGhl
cmUgd2VyZSB0d28gZmlsZXMgbmFtZWQgRGlhZ25vc3RpYy5jcHAKKysgICAgICAgIGluIEFOR0xF
IHVuZGVyIGRpZmZlcmVudCBmb2xkZXJzLiBUaGlzIGNhdXNlZCBwcm9ibGVtcyBvbiB0aGUgUVQg
YnVpbGQgd2hlbiB0aGVpciBvYmplY3QKKysgICAgICAgIGZpbGVzLCBib3RoIG5hbWVkIERpYWdu
b3N0aWMubywgdHJpZWQgdG8gZ28gaW4gdGhlIHNhbWUgZm9sZGVyLiBSZW5hbWluZyBvbmUgb2Yg
dGhlbSB0bworKyAgICAgICAgRGlhZ25vc3RpY0Jhc2UuY3BwIGF2b2lkcyB0aGlzIGNvbmZsaWN0
LiBUaGUgc2FtZSBzaXR1YXRpb24gb2NjdXJyZWQgd2l0aAorKyAgICAgICAgRGlyZWN0aXZlSGFu
ZGxlci5jcHAuIEkgd2lsbCB3b3JrIG9uIGNvbnRyaWJ1dGluZyB0aGlzIGNoYW5nZSBiYWNrIHRv
IEFOR0xFIGZvciBmdXR1cmUKKysgICAgICAgIHVwZGF0ZXMuCisrCisrICAgICAgICAoNCkgQWRk
IHRoZSBmb2xsb3dpbmcgbGluZXMgdG8gZ2xzbGFuZy55IGFuZCBFeHByZXNzaW9uUGFyc2VyLnk6
CisrICAgICAgICAjZGVmaW5lIFlZRU5BQkxFX05MUyAwCisrICAgICAgICAjZGVmaW5lIFlZTFRZ
UEVfSVNfVFJJVklBTCAxCisrCisrICAgICAgICBCaXNvbiAyLjMgZG9lc24ndCBmaXJzdCBjaGVj
ayB0aGF0IHRoZXNlIG1hY3JvcyBhcmUgZGVmaW5lZCBiZWZvcmUgcmVhZGluZyB0aGVpciB2YWx1
ZSwKKysgICAgICAgIHdoaWNoIGNhdXNlcyB0aGUgUVQgYnVpbGQgdG8gZmFpbC4KKysKKysgICAg
ICAgIFdlIHdvcmsgYXJvdW5kIHRoaXMgaXNzdWUgaW4gdGhlIHNhbWUgd2F5IGluIENTU0dyYW1t
YXIueS4KKysKKysgICAgICAgIEkgd2lsbCB3b3JrIG9uIGNvbnRyaWJ1dGluZyB0aGlzIGNoYW5n
ZSBiYWNrIHRvIEFOR0xFLgorKworKyAgICAgICAgKiBBTkdMRS54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qOgorKyAgICAgICAgKiBpbmNsdWRlL0dMRVMyL2dsMmV4dC5oOgorKyAgICAgICAgKiBp
bmNsdWRlL0dMU0xBTkcvU2hhZGVyTGFuZy5oOgorKyAgICAgICAgKiBzcmMvYnVpbGRfYW5nbGUu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKysgICAgICAgICogc3JjL2NvbW1vbi9hbmdsZXV0
aWxzLmg6CisrICAgICAgICAqIHNyYy9jb21tb24vZGVidWcuY3BwOgorKyAgICAgICAgKGdsKToK
KysgICAgICAgIChnbDo6b3V0cHV0KToKKysgICAgICAgIChnbDo6dHJhY2UpOgorKyAgICAgICAg
KGdsOjpwZXJmQWN0aXZlKToKKysgICAgICAgIChnbDo6U2NvcGVkUGVyZkV2ZW50SGVscGVyOjpT
Y29wZWRQZXJmRXZlbnRIZWxwZXIpOgorKyAgICAgICAgKGdsOjpTY29wZWRQZXJmRXZlbnRIZWxw
ZXI6On5TY29wZWRQZXJmRXZlbnRIZWxwZXIpOgorKyAgICAgICAgKiBzcmMvY29tbW9uL3ZlcnNp
b24uaDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL0J1aWx0SW5GdW5jdGlvbkVtdWxhdG9yLmNw
cDoKKysgICAgICAgIChCdWlsdEluRnVuY3Rpb25FbXVsYXRvcjo6SWRlbnRpZnlGdW5jdGlvbik6
CisrICAgICAgICAqIHNyYy9jb21waWxlci9CdWlsdEluRnVuY3Rpb25FbXVsYXRvci5oOgorKyAg
ICAgICAgKiBzcmMvY29tcGlsZXIvQ29tcGlsZXIuY3BwOgorKyAgICAgICAgKGlzV2ViR0xCYXNl
ZFNwZWMpOgorKyAgICAgICAgKFRDb21waWxlcjo6Y29tcGlsZSk6CisrICAgICAgICAoVENvbXBp
bGVyOjpyZXdyaXRlQ1NTU2hhZGVyKToKKysgICAgICAgIChUQ29tcGlsZXI6OmVuZm9yY2VUaW1p
bmdSZXN0cmljdGlvbnMpOgorKyAgICAgICAgKFRDb21waWxlcjo6ZW5mb3JjZUZyYWdtZW50U2hh
ZGVyVGltaW5nUmVzdHJpY3Rpb25zKToKKysgICAgICAgIChUQ29tcGlsZXI6OmVuZm9yY2VWZXJ0
ZXhTaGFkZXJUaW1pbmdSZXN0cmljdGlvbnMpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvRGV0
ZWN0RGlzY29udGludWl0eS5jcHA6IEFkZGVkLgorKyAgICAgICAgKHNoOjpEZXRlY3RMb29wRGlz
Y29udGludWl0eTo6dHJhdmVyc2UpOgorKyAgICAgICAgKHNoKToKKysgICAgICAgIChzaDo6RGV0
ZWN0TG9vcERpc2NvbnRpbnVpdHk6OnZpc2l0QnJhbmNoKToKKysgICAgICAgIChzaDo6RGV0ZWN0
TG9vcERpc2NvbnRpbnVpdHk6OnZpc2l0QWdncmVnYXRlKToKKysgICAgICAgIChzaDo6Y29udGFp
bnNMb29wRGlzY29udGludWl0eSk6CisrICAgICAgICAoc2g6OkRldGVjdEdyYWRpZW50T3BlcmF0
aW9uOjp0cmF2ZXJzZSk6CisrICAgICAgICAoc2g6OkRldGVjdEdyYWRpZW50T3BlcmF0aW9uOjp2
aXNpdFVuYXJ5KToKKysgICAgICAgIChzaDo6RGV0ZWN0R3JhZGllbnRPcGVyYXRpb246OnZpc2l0
QWdncmVnYXRlKToKKysgICAgICAgIChzaDo6Y29udGFpbnNHcmFkaWVudE9wZXJhdGlvbik6Cisr
ICAgICAgICAqIHNyYy9jb21waWxlci9EZXRlY3REaXNjb250aW51aXR5Lmg6IEFkZGVkLgorKyAg
ICAgICAgKHNoKToKKysgICAgICAgIChEZXRlY3RMb29wRGlzY29udGludWl0eSk6CisrICAgICAg
ICAoRGV0ZWN0R3JhZGllbnRPcGVyYXRpb24pOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvRGlh
Z25vc3RpY3MuY3BwOiBBZGRlZC4KKysgICAgICAgIChURGlhZ25vc3RpY3M6OlREaWFnbm9zdGlj
cyk6CisrICAgICAgICAoVERpYWdub3N0aWNzOjp+VERpYWdub3N0aWNzKToKKysgICAgICAgIChU
RGlhZ25vc3RpY3M6OndyaXRlSW5mbyk6CisrICAgICAgICAoVERpYWdub3N0aWNzOjp3cml0ZURl
YnVnKToKKysgICAgICAgIChURGlhZ25vc3RpY3M6OnByaW50KToKKysgICAgICAgICogc3JjL2Nv
bXBpbGVyL0RpYWdub3N0aWNzLmg6IEFkZGVkLgorKyAgICAgICAgKFREaWFnbm9zdGljcyk6Cisr
ICAgICAgICAoVERpYWdub3N0aWNzOjppbmZvU2luayk6CisrICAgICAgICAqIHNyYy9jb21waWxl
ci9EaXJlY3RpdmVIYW5kbGVyLmNwcDogQWRkZWQuCisrICAgICAgICAoZ2V0QmVoYXZpb3IpOgor
KyAgICAgICAgKFREaXJlY3RpdmVIYW5kbGVyOjpURGlyZWN0aXZlSGFuZGxlcik6CisrICAgICAg
ICAoVERpcmVjdGl2ZUhhbmRsZXI6On5URGlyZWN0aXZlSGFuZGxlcik6CisrICAgICAgICAoVERp
cmVjdGl2ZUhhbmRsZXI6OmhhbmRsZUVycm9yKToKKysgICAgICAgIChURGlyZWN0aXZlSGFuZGxl
cjo6aGFuZGxlUHJhZ21hKToKKysgICAgICAgIChURGlyZWN0aXZlSGFuZGxlcjo6aGFuZGxlRXh0
ZW5zaW9uKToKKysgICAgICAgIChURGlyZWN0aXZlSGFuZGxlcjo6aGFuZGxlVmVyc2lvbik6Cisr
ICAgICAgICAqIHNyYy9jb21waWxlci9EaXJlY3RpdmVIYW5kbGVyLmg6IEFkZGVkLgorKyAgICAg
ICAgKFREaXJlY3RpdmVIYW5kbGVyKToKKysgICAgICAgIChURGlyZWN0aXZlSGFuZGxlcjo6cHJh
Z21hKToKKysgICAgICAgIChURGlyZWN0aXZlSGFuZGxlcjo6ZXh0ZW5zaW9uQmVoYXZpb3IpOgor
KyAgICAgICAgKiBzcmMvY29tcGlsZXIvRXh0ZW5zaW9uQmVoYXZpb3IuaDoKKysgICAgICAgIChn
ZXRCZWhhdmlvclN0cmluZyk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9Jbml0aWFsaXplLmNw
cDoKKysgICAgICAgIChCdWlsdEluQ29uc3RhbnRzKToKKysgICAgICAgIChUQnVpbHRJbnM6Omlu
aXRpYWxpemUpOgorKyAgICAgICAgKElkZW50aWZ5QnVpbHRJbnMpOgorKyAgICAgICAgKiBzcmMv
Y29tcGlsZXIvSW5pdGlhbGl6ZVBhcnNlQ29udGV4dC5jcHA6IEFkZGVkLgorKyAgICAgICAgKElu
aXRpYWxpemVQYXJzZUNvbnRleHRJbmRleCk6CisrICAgICAgICAoRnJlZVBhcnNlQ29udGV4dElu
ZGV4KToKKysgICAgICAgIChJbml0aWFsaXplR2xvYmFsUGFyc2VDb250ZXh0KToKKysgICAgICAg
IChGcmVlUGFyc2VDb250ZXh0KToKKysgICAgICAgIChHZXRHbG9iYWxQYXJzZUNvbnRleHQpOgor
KyAgICAgICAgKiBzcmMvY29tcGlsZXIvSW5pdGlhbGl6ZVBhcnNlQ29udGV4dC5oOgorKyAgICAg
ICAgKFRUaHJlYWRQYXJzZUNvbnRleHRSZWMpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvSW50
ZXJtZWRpYXRlLmNwcDoKKysgICAgICAgIChUSW50ZXJtZWRpYXRlOjphZGRTZWxlY3Rpb24pOgor
KyAgICAgICAgKiBzcmMvY29tcGlsZXIvTWFwTG9uZ1ZhcmlhYmxlTmFtZXMuY3BwOgorKyAgICAg
ICAgKiBzcmMvY29tcGlsZXIvT3V0cHV0SExTTC5jcHA6CisrICAgICAgICAoc2g6OnN0cik6Cisr
ICAgICAgICAoc2g6Ok91dHB1dEhMU0w6Ok91dHB1dEhMU0wpOgorKyAgICAgICAgKHNoOjpPdXRw
dXRITFNMOjp+T3V0cHV0SExTTCk6CisrICAgICAgICAoc2g6Ok91dHB1dEhMU0w6Om91dHB1dCk6
CisrICAgICAgICAoc2g6Ok91dHB1dEhMU0w6OmhlYWRlcik6CisrICAgICAgICAoc2g6Ok91dHB1
dEhMU0w6OnZpc2l0QmluYXJ5KToKKysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6dmlzaXRVbmFy
eSk6CisrICAgICAgICAoc2g6Ok91dHB1dEhMU0w6OnZpc2l0QWdncmVnYXRlKToKKysgICAgICAg
IChzaDo6T3V0cHV0SExTTDo6dmlzaXRTZWxlY3Rpb24pOgorKyAgICAgICAgKHNoOjpPdXRwdXRI
TFNMOjp2aXNpdExvb3ApOgorKyAgICAgICAgKHNoOjpPdXRwdXRITFNMOjp0cmF2ZXJzZVN0YXRl
bWVudHMpOgorKyAgICAgICAgKHNoKToKKysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6aGFuZGxl
RXhjZXNzaXZlTG9vcCk6CisrICAgICAgICAoc2g6Ok91dHB1dEhMU0w6OnR5cGVTdHJpbmcpOgor
KyAgICAgICAgKHNoOjpPdXRwdXRITFNMOjphZGRDb25zdHJ1Y3Rvcik6CisrICAgICAgICAoc2g6
Ok91dHB1dEhMU0w6OmRlY29yYXRlRmllbGQpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvT3V0
cHV0SExTTC5oOgorKyAgICAgICAgKHNoKToKKysgICAgICAgIChPdXRwdXRITFNMKToKKysgICAg
ICAgICogc3JjL2NvbXBpbGVyL1BhcnNlSGVscGVyLmNwcDoKKysgICAgICAgIChUUGFyc2VDb250
ZXh0OjpwYXJzZVZlY3RvckZpZWxkcyk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6cGFyc2VN
YXRyaXhGaWVsZHMpOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OmVycm9yKToKKysgICAgICAg
IChUUGFyc2VDb250ZXh0Ojp3YXJuaW5nKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0Ojp0cmFj
ZSk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6YXNzaWduRXJyb3IpOgorKyAgICAgICAgKFRQ
YXJzZUNvbnRleHQ6OnVuYXJ5T3BFcnJvcik6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6Ymlu
YXJ5T3BFcnJvcik6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6cHJlY2lzaW9uRXJyb3JDaGVj
ayk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6bFZhbHVlRXJyb3JDaGVjayk6CisrICAgICAg
ICAoVFBhcnNlQ29udGV4dDo6Y29uc3RFcnJvckNoZWNrKToKKysgICAgICAgIChUUGFyc2VDb250
ZXh0OjppbnRlZ2VyRXJyb3JDaGVjayk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6Z2xvYmFs
RXJyb3JDaGVjayk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6cmVzZXJ2ZWRFcnJvckNoZWNr
KToKKysgICAgICAgIChUUGFyc2VDb250ZXh0Ojpjb25zdHJ1Y3RvckVycm9yQ2hlY2spOgorKyAg
ICAgICAgKFRQYXJzZUNvbnRleHQ6OnZvaWRFcnJvckNoZWNrKToKKysgICAgICAgIChUUGFyc2VD
b250ZXh0Ojpib29sRXJyb3JDaGVjayk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6c2FtcGxl
ckVycm9yQ2hlY2spOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OnN0cnVjdFF1YWxpZmllckVy
cm9yQ2hlY2spOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OnBhcmFtZXRlclNhbXBsZXJFcnJv
ckNoZWNrKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0OjphcnJheVNpemVFcnJvckNoZWNrKToK
KysgICAgICAgIChUUGFyc2VDb250ZXh0OjphcnJheVF1YWxpZmllckVycm9yQ2hlY2spOgorKyAg
ICAgICAgKFRQYXJzZUNvbnRleHQ6OmFycmF5VHlwZUVycm9yQ2hlY2spOgorKyAgICAgICAgKFRQ
YXJzZUNvbnRleHQ6OmFycmF5RXJyb3JDaGVjayk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6
YXJyYXlTZXRNYXhTaXplKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0Ojpub25Jbml0Q29uc3RF
cnJvckNoZWNrKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0Ojpub25Jbml0RXJyb3JDaGVjayk6
CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6cGFyYW1FcnJvckNoZWNrKToKKysgICAgICAgIChU
UGFyc2VDb250ZXh0OjpleHRlbnNpb25FcnJvckNoZWNrKToKKysgICAgICAgIChUUGFyc2VDb250
ZXh0OjpzdXBwb3J0c0V4dGVuc2lvbik6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6aGFuZGxl
RXh0ZW5zaW9uRGlyZWN0aXZlKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0OjpoYW5kbGVQcmFn
bWFEaXJlY3RpdmUpOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OmZpbmRGdW5jdGlvbik6Cisr
ICAgICAgICAoVFBhcnNlQ29udGV4dDo6ZXhlY3V0ZUluaXRpYWxpemVyKToKKysgICAgICAgIChU
UGFyc2VDb250ZXh0Ojpjb25zdHJ1Y3RCdWlsdEluKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0
Ojpjb25zdHJ1Y3RTdHJ1Y3QpOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OmFkZENvbnN0VmVj
dG9yTm9kZSk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6YWRkQ29uc3RNYXRyaXhOb2RlKToK
KysgICAgICAgIChUUGFyc2VDb250ZXh0OjphZGRDb25zdEFycmF5Tm9kZSk6CisrICAgICAgICAo
VFBhcnNlQ29udGV4dDo6YWRkQ29uc3RTdHJ1Y3QpOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6
OmVudGVyU3RydWN0RGVjbGFyYXRpb24pOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OnN0cnVj
dE5lc3RpbmdFcnJvckNoZWNrKToKKysgICAgICAgIChQYVBhcnNlU3RyaW5ncyk6CisrICAgICAg
ICAqIHNyYy9jb21waWxlci9QYXJzZUhlbHBlci5oOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6
OlRQYXJzZUNvbnRleHQpOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQpOgorKyAgICAgICAgKFRQ
YXJzZUNvbnRleHQ6OmluZm9TaW5rKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0OjpleHRlbnNp
b25CZWhhdmlvcik6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6cHJhZ21hKToKKysgICAgICAg
ICogc3JjL2NvbXBpbGVyL1Bvb2xBbGxvYy5jcHA6CisrICAgICAgICAoVEFsbG9jYXRpb246OmNo
ZWNrR3VhcmRCbG9jayk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9QcmFnbWEuaDogQWRkZWQu
CisrICAgICAgICAoVFByYWdtYSk6CisrICAgICAgICAoVFByYWdtYTo6VFByYWdtYSk6CisrICAg
ICAgICAqIHNyYy9jb21waWxlci9SZW5hbWVGdW5jdGlvbi5oOiBBZGRlZC4KKysgICAgICAgIChS
ZW5hbWVGdW5jdGlvbik6CisrICAgICAgICAoUmVuYW1lRnVuY3Rpb246OlJlbmFtZUZ1bmN0aW9u
KToKKysgICAgICAgIChSZW5hbWVGdW5jdGlvbjo6dmlzaXRBZ2dyZWdhdGUpOgorKyAgICAgICAg
KiBzcmMvY29tcGlsZXIvU2hIYW5kbGUuaDoKKysgICAgICAgIChUQ29tcGlsZXIpOgorKyAgICAg
ICAgKiBzcmMvY29tcGlsZXIvU2hhZGVyTGFuZy5jcHA6CisrICAgICAgICAoZ2V0VmFyaWFibGVJ
bmZvKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL1N5bWJvbFRhYmxlLmNwcDoKKysgICAgICAg
IChUVHlwZTo6YnVpbGRNYW5nbGVkTmFtZSk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9UcmFu
c2xhdG9ySExTTC5jcHA6CisrICAgICAgICAqIHNyYy9jb21waWxlci9VbmZvbGRTZWxlY3QuY3Bw
OiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvVW5mb2xkU2VsZWN0Lmg6IFJlbW92
ZWQuCisrICAgICAgICAqIHNyYy9jb21waWxlci9VbmZvbGRTaG9ydENpcmN1aXQuY3BwOiBBZGRl
ZC4KKysgICAgICAgIChzaDo6VW5mb2xkU2hvcnRDaXJjdWl0OjpVbmZvbGRTaG9ydENpcmN1aXQp
OgorKyAgICAgICAgKHNoKToKKysgICAgICAgIChzaDo6VW5mb2xkU2hvcnRDaXJjdWl0Ojp0cmF2
ZXJzZSk6CisrICAgICAgICAoc2g6OlVuZm9sZFNob3J0Q2lyY3VpdDo6dmlzaXRCaW5hcnkpOgor
KyAgICAgICAgKHNoOjpVbmZvbGRTaG9ydENpcmN1aXQ6OnZpc2l0U2VsZWN0aW9uKToKKysgICAg
ICAgIChzaDo6VW5mb2xkU2hvcnRDaXJjdWl0Ojp2aXNpdExvb3ApOgorKyAgICAgICAgKHNoOjpV
bmZvbGRTaG9ydENpcmN1aXQ6OmdldE5leHRUZW1wb3JhcnlJbmRleCk6CisrICAgICAgICAqIHNy
Yy9jb21waWxlci9VbmZvbGRTaG9ydENpcmN1aXQuaDogQWRkZWQuCisrICAgICAgICAoc2gpOgor
KyAgICAgICAgKFVuZm9sZFNob3J0Q2lyY3VpdCk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9W
YWxpZGF0ZUxpbWl0YXRpb25zLmNwcDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL2RlYnVnLmNw
cDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL2RlcGdyYXBoOiBBZGRlZC4KKysgICAgICAgICog
c3JjL2NvbXBpbGVyL2RlcGdyYXBoL0RlcGVuZGVuY3lHcmFwaC5jcHA6IEFkZGVkLgorKyAgICAg
ICAgKFREZXBlbmRlbmN5R3JhcGg6OlREZXBlbmRlbmN5R3JhcGgpOgorKyAgICAgICAgKFREZXBl
bmRlbmN5R3JhcGg6On5URGVwZW5kZW5jeUdyYXBoKToKKysgICAgICAgIChURGVwZW5kZW5jeUdy
YXBoOjpjcmVhdGVBcmd1bWVudCk6CisrICAgICAgICAoVERlcGVuZGVuY3lHcmFwaDo6Y3JlYXRl
RnVuY3Rpb25DYWxsKToKKysgICAgICAgIChURGVwZW5kZW5jeUdyYXBoOjpnZXRPckNyZWF0ZVN5
bWJvbCk6CisrICAgICAgICAoVERlcGVuZGVuY3lHcmFwaDo6Y3JlYXRlU2VsZWN0aW9uKToKKysg
ICAgICAgIChURGVwZW5kZW5jeUdyYXBoOjpjcmVhdGVMb29wKToKKysgICAgICAgIChURGVwZW5k
ZW5jeUdyYXBoOjpjcmVhdGVMb2dpY2FsT3ApOgorKyAgICAgICAgKFRHcmFwaExvZ2ljYWxPcDo6
Z2V0T3BTdHJpbmcpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvZGVwZ3JhcGgvRGVwZW5kZW5j
eUdyYXBoLmg6IEFkZGVkLgorKyAgICAgICAgKFRHcmFwaE5vZGUpOgorKyAgICAgICAgKFRHcmFw
aE5vZGU6OlRHcmFwaE5vZGUpOgorKyAgICAgICAgKFRHcmFwaE5vZGU6On5UR3JhcGhOb2RlKToK
KysgICAgICAgIChUR3JhcGhQYXJlbnROb2RlKToKKysgICAgICAgIChUR3JhcGhQYXJlbnROb2Rl
OjpUR3JhcGhQYXJlbnROb2RlKToKKysgICAgICAgIChUR3JhcGhQYXJlbnROb2RlOjp+VEdyYXBo
UGFyZW50Tm9kZSk6CisrICAgICAgICAoVEdyYXBoUGFyZW50Tm9kZTo6YWRkRGVwZW5kZW50Tm9k
ZSk6CisrICAgICAgICAoVEdyYXBoQXJndW1lbnQpOgorKyAgICAgICAgKFRHcmFwaEFyZ3VtZW50
OjpUR3JhcGhBcmd1bWVudCk6CisrICAgICAgICAoVEdyYXBoQXJndW1lbnQ6On5UR3JhcGhBcmd1
bWVudCk6CisrICAgICAgICAoVEdyYXBoQXJndW1lbnQ6OmdldEludGVybUZ1bmN0aW9uQ2FsbCk6
CisrICAgICAgICAoVEdyYXBoQXJndW1lbnQ6OmdldEFyZ3VtZW50TnVtYmVyKToKKysgICAgICAg
IChUR3JhcGhGdW5jdGlvbkNhbGwpOgorKyAgICAgICAgKFRHcmFwaEZ1bmN0aW9uQ2FsbDo6VEdy
YXBoRnVuY3Rpb25DYWxsKToKKysgICAgICAgIChUR3JhcGhGdW5jdGlvbkNhbGw6On5UR3JhcGhG
dW5jdGlvbkNhbGwpOgorKyAgICAgICAgKFRHcmFwaEZ1bmN0aW9uQ2FsbDo6Z2V0SW50ZXJtRnVu
Y3Rpb25DYWxsKToKKysgICAgICAgIChUR3JhcGhTeW1ib2wpOgorKyAgICAgICAgKFRHcmFwaFN5
bWJvbDo6VEdyYXBoU3ltYm9sKToKKysgICAgICAgIChUR3JhcGhTeW1ib2w6On5UR3JhcGhTeW1i
b2wpOgorKyAgICAgICAgKFRHcmFwaFN5bWJvbDo6Z2V0SW50ZXJtU3ltYm9sKToKKysgICAgICAg
IChUR3JhcGhTZWxlY3Rpb24pOgorKyAgICAgICAgKFRHcmFwaFNlbGVjdGlvbjo6VEdyYXBoU2Vs
ZWN0aW9uKToKKysgICAgICAgIChUR3JhcGhTZWxlY3Rpb246On5UR3JhcGhTZWxlY3Rpb24pOgor
KyAgICAgICAgKFRHcmFwaFNlbGVjdGlvbjo6Z2V0SW50ZXJtU2VsZWN0aW9uKToKKysgICAgICAg
IChUR3JhcGhMb29wKToKKysgICAgICAgIChUR3JhcGhMb29wOjpUR3JhcGhMb29wKToKKysgICAg
ICAgIChUR3JhcGhMb29wOjp+VEdyYXBoTG9vcCk6CisrICAgICAgICAoVEdyYXBoTG9vcDo6Z2V0
SW50ZXJtTG9vcCk6CisrICAgICAgICAoVEdyYXBoTG9naWNhbE9wKToKKysgICAgICAgIChUR3Jh
cGhMb2dpY2FsT3A6OlRHcmFwaExvZ2ljYWxPcCk6CisrICAgICAgICAoVEdyYXBoTG9naWNhbE9w
Ojp+VEdyYXBoTG9naWNhbE9wKToKKysgICAgICAgIChUR3JhcGhMb2dpY2FsT3A6OmdldEludGVy
bUxvZ2ljYWxPcCk6CisrICAgICAgICAoVERlcGVuZGVuY3lHcmFwaCk6CisrICAgICAgICAoVERl
cGVuZGVuY3lHcmFwaDo6YmVnaW4pOgorKyAgICAgICAgKFREZXBlbmRlbmN5R3JhcGg6OmVuZCk6
CisrICAgICAgICAoVERlcGVuZGVuY3lHcmFwaDo6YmVnaW5TYW1wbGVyU3ltYm9scyk6CisrICAg
ICAgICAoVERlcGVuZGVuY3lHcmFwaDo6ZW5kU2FtcGxlclN5bWJvbHMpOgorKyAgICAgICAgKFRE
ZXBlbmRlbmN5R3JhcGg6OmJlZ2luVXNlckRlZmluZWRGdW5jdGlvbkNhbGxzKToKKysgICAgICAg
IChURGVwZW5kZW5jeUdyYXBoOjplbmRVc2VyRGVmaW5lZEZ1bmN0aW9uQ2FsbHMpOgorKyAgICAg
ICAgKFREZXBlbmRlbmN5R3JhcGhUcmF2ZXJzZXIpOgorKyAgICAgICAgKFREZXBlbmRlbmN5R3Jh
cGhUcmF2ZXJzZXI6OlREZXBlbmRlbmN5R3JhcGhUcmF2ZXJzZXIpOgorKyAgICAgICAgKFREZXBl
bmRlbmN5R3JhcGhUcmF2ZXJzZXI6OnZpc2l0U3ltYm9sKToKKysgICAgICAgIChURGVwZW5kZW5j
eUdyYXBoVHJhdmVyc2VyOjp2aXNpdEFyZ3VtZW50KToKKysgICAgICAgIChURGVwZW5kZW5jeUdy
YXBoVHJhdmVyc2VyOjp2aXNpdEZ1bmN0aW9uQ2FsbCk6CisrICAgICAgICAoVERlcGVuZGVuY3lH
cmFwaFRyYXZlcnNlcjo6dmlzaXRTZWxlY3Rpb24pOgorKyAgICAgICAgKFREZXBlbmRlbmN5R3Jh
cGhUcmF2ZXJzZXI6OnZpc2l0TG9vcCk6CisrICAgICAgICAoVERlcGVuZGVuY3lHcmFwaFRyYXZl
cnNlcjo6dmlzaXRMb2dpY2FsT3ApOgorKyAgICAgICAgKFREZXBlbmRlbmN5R3JhcGhUcmF2ZXJz
ZXI6OmdldERlcHRoKToKKysgICAgICAgIChURGVwZW5kZW5jeUdyYXBoVHJhdmVyc2VyOjppbmNy
ZW1lbnREZXB0aCk6CisrICAgICAgICAoVERlcGVuZGVuY3lHcmFwaFRyYXZlcnNlcjo6ZGVjcmVt
ZW50RGVwdGgpOgorKyAgICAgICAgKFREZXBlbmRlbmN5R3JhcGhUcmF2ZXJzZXI6OmNsZWFyVmlz
aXRlZCk6CisrICAgICAgICAoVERlcGVuZGVuY3lHcmFwaFRyYXZlcnNlcjo6bWFya1Zpc2l0ZWQp
OgorKyAgICAgICAgKFREZXBlbmRlbmN5R3JhcGhUcmF2ZXJzZXI6OmlzVmlzaXRlZCk6CisrICAg
ICAgICAqIHNyYy9jb21waWxlci9kZXBncmFwaC9EZXBlbmRlbmN5R3JhcGhCdWlsZGVyLmNwcDog
QWRkZWQuCisrICAgICAgICAoVERlcGVuZGVuY3lHcmFwaEJ1aWxkZXI6OmJ1aWxkKToKKysgICAg
ICAgIChURGVwZW5kZW5jeUdyYXBoQnVpbGRlcjo6dmlzaXRBZ2dyZWdhdGUpOgorKyAgICAgICAg
KFREZXBlbmRlbmN5R3JhcGhCdWlsZGVyOjp2aXNpdEZ1bmN0aW9uRGVmaW5pdGlvbik6CisrICAg
ICAgICAoVERlcGVuZGVuY3lHcmFwaEJ1aWxkZXI6OnZpc2l0RnVuY3Rpb25DYWxsKToKKysgICAg
ICAgIChURGVwZW5kZW5jeUdyYXBoQnVpbGRlcjo6dmlzaXRBZ2dyZWdhdGVDaGlsZHJlbik6Cisr
ICAgICAgICAoVERlcGVuZGVuY3lHcmFwaEJ1aWxkZXI6OnZpc2l0U3ltYm9sKToKKysgICAgICAg
IChURGVwZW5kZW5jeUdyYXBoQnVpbGRlcjo6dmlzaXRCaW5hcnkpOgorKyAgICAgICAgKFREZXBl
bmRlbmN5R3JhcGhCdWlsZGVyOjp2aXNpdEFzc2lnbm1lbnQpOgorKyAgICAgICAgKFREZXBlbmRl
bmN5R3JhcGhCdWlsZGVyOjp2aXNpdExvZ2ljYWxPcCk6CisrICAgICAgICAoVERlcGVuZGVuY3lH
cmFwaEJ1aWxkZXI6OnZpc2l0QmluYXJ5Q2hpbGRyZW4pOgorKyAgICAgICAgKFREZXBlbmRlbmN5
R3JhcGhCdWlsZGVyOjp2aXNpdFNlbGVjdGlvbik6CisrICAgICAgICAoVERlcGVuZGVuY3lHcmFw
aEJ1aWxkZXI6OnZpc2l0TG9vcCk6CisrICAgICAgICAoVERlcGVuZGVuY3lHcmFwaEJ1aWxkZXI6
OmNvbm5lY3RNdWx0aXBsZU5vZGVzVG9TaW5nbGVOb2RlKToKKysgICAgICAgICogc3JjL2NvbXBp
bGVyL2RlcGdyYXBoL0RlcGVuZGVuY3lHcmFwaEJ1aWxkZXIuaDogQWRkZWQuCisrICAgICAgICAo
VERlcGVuZGVuY3lHcmFwaEJ1aWxkZXIpOgorKyAgICAgICAgKFROb2RlU2V0U3RhY2spOgorKyAg
ICAgICAgKFREZXBlbmRlbmN5R3JhcGhCdWlsZGVyOjpUTm9kZVNldFN0YWNrOjpUTm9kZVNldFN0
YWNrKToKKysgICAgICAgIChURGVwZW5kZW5jeUdyYXBoQnVpbGRlcjo6VE5vZGVTZXRTdGFjazo6
flROb2RlU2V0U3RhY2spOgorKyAgICAgICAgKFREZXBlbmRlbmN5R3JhcGhCdWlsZGVyOjpUTm9k
ZVNldFN0YWNrOjpnZXRUb3BTZXQpOgorKyAgICAgICAgKFREZXBlbmRlbmN5R3JhcGhCdWlsZGVy
OjpUTm9kZVNldFN0YWNrOjpwdXNoU2V0KToKKysgICAgICAgIChURGVwZW5kZW5jeUdyYXBoQnVp
bGRlcjo6VE5vZGVTZXRTdGFjazo6cG9wU2V0KToKKysgICAgICAgIChURGVwZW5kZW5jeUdyYXBo
QnVpbGRlcjo6VE5vZGVTZXRTdGFjazo6cG9wU2V0SW50b05leHQpOgorKyAgICAgICAgKFREZXBl
bmRlbmN5R3JhcGhCdWlsZGVyOjpUTm9kZVNldFN0YWNrOjppbnNlcnRJbnRvVG9wU2V0KToKKysg
ICAgICAgIChURGVwZW5kZW5jeUdyYXBoQnVpbGRlcjo6VE5vZGVTZXRTdGFjazo6Y2xlYXIpOgor
KyAgICAgICAgKFROb2RlU2V0TWFpbnRhaW5lcik6CisrICAgICAgICAoVERlcGVuZGVuY3lHcmFw
aEJ1aWxkZXI6OlROb2RlU2V0TWFpbnRhaW5lcjo6VE5vZGVTZXRNYWludGFpbmVyKToKKysgICAg
ICAgIChURGVwZW5kZW5jeUdyYXBoQnVpbGRlcjo6VE5vZGVTZXRNYWludGFpbmVyOjp+VE5vZGVT
ZXRNYWludGFpbmVyKToKKysgICAgICAgIChUTm9kZVNldFByb3BhZ2F0aW5nTWFpbnRhaW5lcik6
CisrICAgICAgICAoVERlcGVuZGVuY3lHcmFwaEJ1aWxkZXI6OlROb2RlU2V0UHJvcGFnYXRpbmdN
YWludGFpbmVyOjpUTm9kZVNldFByb3BhZ2F0aW5nTWFpbnRhaW5lcik6CisrICAgICAgICAoVERl
cGVuZGVuY3lHcmFwaEJ1aWxkZXI6OlROb2RlU2V0UHJvcGFnYXRpbmdNYWludGFpbmVyOjp+VE5v
ZGVTZXRQcm9wYWdhdGluZ01haW50YWluZXIpOgorKyAgICAgICAgKFRMZWZ0bW9zdFN5bWJvbE1h
aW50YWluZXIpOgorKyAgICAgICAgKFREZXBlbmRlbmN5R3JhcGhCdWlsZGVyOjpUTGVmdG1vc3RT
eW1ib2xNYWludGFpbmVyOjpUTGVmdG1vc3RTeW1ib2xNYWludGFpbmVyKToKKysgICAgICAgIChU
RGVwZW5kZW5jeUdyYXBoQnVpbGRlcjo6VExlZnRtb3N0U3ltYm9sTWFpbnRhaW5lcjo6flRMZWZ0
bW9zdFN5bWJvbE1haW50YWluZXIpOgorKyAgICAgICAgKFREZXBlbmRlbmN5R3JhcGhCdWlsZGVy
OjpURGVwZW5kZW5jeUdyYXBoQnVpbGRlcik6CisrICAgICAgICAoVERlcGVuZGVuY3lHcmFwaEJ1
aWxkZXI6OmJ1aWxkKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL2RlcGdyYXBoL0RlcGVuZGVu
Y3lHcmFwaE91dHB1dC5jcHA6IEFkZGVkLgorKyAgICAgICAgKFREZXBlbmRlbmN5R3JhcGhPdXRw
dXQ6Om91dHB1dEluZGVudGF0aW9uKToKKysgICAgICAgIChURGVwZW5kZW5jeUdyYXBoT3V0cHV0
Ojp2aXNpdEFyZ3VtZW50KToKKysgICAgICAgIChURGVwZW5kZW5jeUdyYXBoT3V0cHV0Ojp2aXNp
dEZ1bmN0aW9uQ2FsbCk6CisrICAgICAgICAoVERlcGVuZGVuY3lHcmFwaE91dHB1dDo6dmlzaXRT
eW1ib2wpOgorKyAgICAgICAgKFREZXBlbmRlbmN5R3JhcGhPdXRwdXQ6OnZpc2l0U2VsZWN0aW9u
KToKKysgICAgICAgIChURGVwZW5kZW5jeUdyYXBoT3V0cHV0Ojp2aXNpdExvb3ApOgorKyAgICAg
ICAgKFREZXBlbmRlbmN5R3JhcGhPdXRwdXQ6OnZpc2l0TG9naWNhbE9wKToKKysgICAgICAgIChU
RGVwZW5kZW5jeUdyYXBoT3V0cHV0OjpvdXRwdXRBbGxTcGFubmluZ1RyZWVzKToKKysgICAgICAg
ICogc3JjL2NvbXBpbGVyL2RlcGdyYXBoL0RlcGVuZGVuY3lHcmFwaE91dHB1dC5oOiBBZGRlZC4K
KysgICAgICAgIChURGVwZW5kZW5jeUdyYXBoT3V0cHV0KToKKysgICAgICAgIChURGVwZW5kZW5j
eUdyYXBoT3V0cHV0OjpURGVwZW5kZW5jeUdyYXBoT3V0cHV0KToKKysgICAgICAgICogc3JjL2Nv
bXBpbGVyL2RlcGdyYXBoL0RlcGVuZGVuY3lHcmFwaFRyYXZlcnNlLmNwcDogQWRkZWQuCisrICAg
ICAgICAoVEdyYXBoTm9kZTo6dHJhdmVyc2UpOgorKyAgICAgICAgKFRHcmFwaFBhcmVudE5vZGU6
OnRyYXZlcnNlKToKKysgICAgICAgIChUR3JhcGhBcmd1bWVudDo6dHJhdmVyc2UpOgorKyAgICAg
ICAgKFRHcmFwaEZ1bmN0aW9uQ2FsbDo6dHJhdmVyc2UpOgorKyAgICAgICAgKFRHcmFwaFN5bWJv
bDo6dHJhdmVyc2UpOgorKyAgICAgICAgKFRHcmFwaFNlbGVjdGlvbjo6dHJhdmVyc2UpOgorKyAg
ICAgICAgKFRHcmFwaExvb3A6OnRyYXZlcnNlKToKKysgICAgICAgIChUR3JhcGhMb2dpY2FsT3A6
OnRyYXZlcnNlKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL2dsc2xhbmcuaDoKKysgICAgICAg
ICogc3JjL2NvbXBpbGVyL2dsc2xhbmcubDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL2dsc2xh
bmcueToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL2dsc2xhbmdfbGV4LmNwcDoKKysgICAgICAg
ICh5eV9idWZmZXJfc3RhdGUpOgorKyAgICAgICAgKHl5Z3V0c190KToKKysgICAgICAgICh5eV9n
ZXRfcHJldmlvdXNfc3RhdGUpOgorKyAgICAgICAgKHl5X3RyeV9OVUxfdHJhbnMpOgorKyAgICAg
ICAgKGlucHV0KToKKysgICAgICAgICh5eWVuc3VyZV9idWZmZXJfc3RhY2spOgorKyAgICAgICAg
KHl5X3NjYW5fYnl0ZXMpOgorKyAgICAgICAgKHl5Z2V0X2xlbmcpOgorKyAgICAgICAgKHN0cmlu
Z19pbnB1dCk6CisrICAgICAgICAoeXllcnJvcik6CisrICAgICAgICAoZ2xzbGFuZ19maW5hbGl6
ZSk6CisrICAgICAgICAoZ2xzbGFuZ19zY2FuKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL2ds
c2xhbmdfdGFiLmNwcDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL2ludGVybWVkaWF0ZS5oOgor
KyAgICAgICAgKFRJbnRlcm1BZ2dyZWdhdGU6OlRJbnRlcm1BZ2dyZWdhdGUpOgorKyAgICAgICAg
KFRJbnRlcm1BZ2dyZWdhdGU6On5USW50ZXJtQWdncmVnYXRlKToKKysgICAgICAgIChUSW50ZXJt
QWdncmVnYXRlOjppc1VzZXJEZWZpbmVkKToKKysgICAgICAgIChUSW50ZXJtQWdncmVnYXRlKToK
KysgICAgICAgIChUSW50ZXJtVHJhdmVyc2VyOjp+VEludGVybVRyYXZlcnNlcik6CisrICAgICAg
ICAqIHNyYy9jb21waWxlci9vc2luY2x1ZGUuaDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3By
ZXByb2Nlc3Nvci9hdG9tLmM6CisrICAgICAgICAoRmluZEhhc2hMb2MpOgorKyAgICAgICAgKFBy
aW50QXRvbVRhYmxlKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9jcHAu
YzoKKysgICAgICAgIChDUFBwcmFnbWEpOgorKyAgICAgICAgKHJlYWRDUFBsaW5lKToKKysgICAg
ICAgIChQcmVkZWZpbmVJbnRNYWNybyk6CisrICAgICAgICAoTWFjcm9FeHBhbmQpOgorKyAgICAg
ICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL2NwcC5oOgorKyAgICAgICAgKiBzcmMvY29t
cGlsZXIvcHJlcHJvY2Vzc29yL21lbW9yeS5oOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJl
cHJvY2Vzc29yL25ldzogQWRkZWQgcHJvcGVydGllcyBhbGxvdy10YWJzLCBhbGxvdy10YWJzLCBh
bGxvdy10YWJzLCBhbGxvdy10YWJzLCBhbGxvdy10YWJzLCBhbGxvdy10YWJzLCBhbGxvdy10YWJz
LCBhbGxvdy10YWJzLCBhbGxvdy10YWJzLCBhbGxvdy10YWJzLCBhbGxvdy10YWJzLCBhbGxvdy10
YWJzLCBhbGxvdy10YWJzLCBhbGxvdy10YWJzLCBhbGxvdy10YWJzLCBhbGxvdy10YWJzLCBhbGxv
dy10YWJzLCBhbGxvdy10YWJzLCBhbGxvdy10YWJzLCBhbGxvdy10YWJzLCBhbGxvdy10YWJzLCBh
bGxvdy10YWJzLCBhbGxvdy10YWJzLCBhbGxvdy10YWJzLCBhbGxvdy10YWJzLCBhbGxvdy10YWJz
LCBhbGxvdy10YWJzLCBhbGxvdy10YWJzIGFuZCBhbGxvdy10YWJzLgorKyAgICAgICAgKiBzcmMv
Y29tcGlsZXIvcHJlcHJvY2Vzc29yL25ldy9Db250ZXh0LmNwcDogUmVtb3ZlZC4KKysgICAgICAg
ICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9uZXcvQ29udGV4dC5oOiBSZW1vdmVkLgorKyAg
ICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL25ldy9EaWFnbm9zdGljcy5oOiBBZGRl
ZC4KKysgICAgICAgIChwcCk6CisrICAgICAgICAoRGlhZ25vc3RpY3MpOgorKyAgICAgICAgKiBz
cmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL25ldy9EaWFnbm9zdGljc0Jhc2UuY3BwOiBBZGRlZC4K
KysgICAgICAgIChwcCk6CisrICAgICAgICAocHA6OkRpYWdub3N0aWNzOjp+RGlhZ25vc3RpY3Mp
OgorKyAgICAgICAgKHBwOjpEaWFnbm9zdGljczo6cmVwb3J0KToKKysgICAgICAgIChwcDo6RGlh
Z25vc3RpY3M6OnNldmVyaXR5KToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nv
ci9uZXcvRGlyZWN0aXZlSGFuZGxlci5oOiBBZGRlZC4KKysgICAgICAgIChwcCk6CisrICAgICAg
ICAoRGlyZWN0aXZlSGFuZGxlcik6CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNz
b3IvbmV3L0RpcmVjdGl2ZUhhbmRsZXJCYXNlLmNwcDogQWRkZWQuCisrICAgICAgICAocHApOgor
KyAgICAgICAgKHBwOjpEaXJlY3RpdmVIYW5kbGVyOjp+RGlyZWN0aXZlSGFuZGxlcik6CisrICAg
ICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvbmV3L0RpcmVjdGl2ZVBhcnNlci5jcHA6
IEFkZGVkLgorKyAgICAgICAgKGdldERpcmVjdGl2ZSk6CisrICAgICAgICAoaXNDb25kaXRpb25h
bERpcmVjdGl2ZSk6CisrICAgICAgICAoaXNFT0QpOgorKyAgICAgICAgKHNraXBVbnRpbEVPRCk6
CisrICAgICAgICAoaXNNYWNyb05hbWVSZXNlcnZlZCk6CisrICAgICAgICAoaXNNYWNyb1ByZWRl
ZmluZWQpOgorKyAgICAgICAgKHBwKToKKysgICAgICAgIChEZWZpbmVkUGFyc2VyKToKKysgICAg
ICAgIChwcDo6RGVmaW5lZFBhcnNlcjo6RGVmaW5lZFBhcnNlcik6CisrICAgICAgICAocHA6OkRl
ZmluZWRQYXJzZXI6OmxleCk6CisrICAgICAgICAocHA6OkRpcmVjdGl2ZVBhcnNlcjo6RGlyZWN0
aXZlUGFyc2VyKToKKysgICAgICAgIChwcDo6RGlyZWN0aXZlUGFyc2VyOjpsZXgpOgorKyAgICAg
ICAgKHBwOjpEaXJlY3RpdmVQYXJzZXI6OnBhcnNlRGlyZWN0aXZlKToKKysgICAgICAgIChwcDo6
RGlyZWN0aXZlUGFyc2VyOjpwYXJzZURlZmluZSk6CisrICAgICAgICAocHA6OkRpcmVjdGl2ZVBh
cnNlcjo6cGFyc2VVbmRlZik6CisrICAgICAgICAocHA6OkRpcmVjdGl2ZVBhcnNlcjo6cGFyc2VJ
Zik6CisrICAgICAgICAocHA6OkRpcmVjdGl2ZVBhcnNlcjo6cGFyc2VJZmRlZik6CisrICAgICAg
ICAocHA6OkRpcmVjdGl2ZVBhcnNlcjo6cGFyc2VJZm5kZWYpOgorKyAgICAgICAgKHBwOjpEaXJl
Y3RpdmVQYXJzZXI6OnBhcnNlRWxzZSk6CisrICAgICAgICAocHA6OkRpcmVjdGl2ZVBhcnNlcjo6
cGFyc2VFbGlmKToKKysgICAgICAgIChwcDo6RGlyZWN0aXZlUGFyc2VyOjpwYXJzZUVuZGlmKToK
KysgICAgICAgIChwcDo6RGlyZWN0aXZlUGFyc2VyOjpwYXJzZUVycm9yKToKKysgICAgICAgIChw
cDo6RGlyZWN0aXZlUGFyc2VyOjpwYXJzZVByYWdtYSk6CisrICAgICAgICAocHA6OkRpcmVjdGl2
ZVBhcnNlcjo6cGFyc2VFeHRlbnNpb24pOgorKyAgICAgICAgKHBwOjpEaXJlY3RpdmVQYXJzZXI6
OnBhcnNlVmVyc2lvbik6CisrICAgICAgICAocHA6OkRpcmVjdGl2ZVBhcnNlcjo6cGFyc2VMaW5l
KToKKysgICAgICAgIChwcDo6RGlyZWN0aXZlUGFyc2VyOjpza2lwcGluZyk6CisrICAgICAgICAo
cHA6OkRpcmVjdGl2ZVBhcnNlcjo6cGFyc2VDb25kaXRpb25hbElmKToKKysgICAgICAgIChwcDo6
RGlyZWN0aXZlUGFyc2VyOjpwYXJzZUV4cHJlc3Npb25JZik6CisrICAgICAgICAocHA6OkRpcmVj
dGl2ZVBhcnNlcjo6cGFyc2VFeHByZXNzaW9uSWZkZWYpOgorKyAgICAgICAgKiBzcmMvY29tcGls
ZXIvcHJlcHJvY2Vzc29yL25ldy9EaXJlY3RpdmVQYXJzZXIuaDogQWRkZWQuCisrICAgICAgICAo
cHApOgorKyAgICAgICAgKERpcmVjdGl2ZVBhcnNlcik6CisrICAgICAgICAoQ29uZGl0aW9uYWxC
bG9jayk6CisrICAgICAgICAocHA6OkRpcmVjdGl2ZVBhcnNlcjo6Q29uZGl0aW9uYWxCbG9jazo6
Q29uZGl0aW9uYWxCbG9jayk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3Iv
bmV3L0V4cHJlc3Npb25QYXJzZXIuY3BwOiBBZGRlZC4KKysgICAgICAgICh5eXN5bnRheF9lcnJv
cik6CisrICAgICAgICAoeXlsZXgpOgorKyAgICAgICAgKHl5ZXJyb3IpOgorKyAgICAgICAgKHBw
KToKKysgICAgICAgIChwcDo6RXhwcmVzc2lvblBhcnNlcjo6RXhwcmVzc2lvblBhcnNlcik6Cisr
ICAgICAgICAocHA6OkV4cHJlc3Npb25QYXJzZXI6OnBhcnNlKToKKysgICAgICAgICogc3JjL2Nv
bXBpbGVyL3ByZXByb2Nlc3Nvci9uZXcvRXhwcmVzc2lvblBhcnNlci5oOiBBZGRlZC4KKysgICAg
ICAgIChwcCk6CisrICAgICAgICAoRXhwcmVzc2lvblBhcnNlcik6CisrICAgICAgICAqIHNyYy9j
b21waWxlci9wcmVwcm9jZXNzb3IvbmV3L0V4cHJlc3Npb25QYXJzZXIueTogQWRkZWQuCisrICAg
ICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvbmV3L0lucHV0LmNwcDogQWRkZWQgcHJv
cGVydHkgYWxsb3ctdGFicy4KKysgICAgICAgIChwcDo6SW5wdXQ6OklucHV0KToKKysgICAgICAg
IChwcDo6SW5wdXQ6OnJlYWQpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29y
L25ldy9JbnB1dC5oOiBBZGRlZCBwcm9wZXJ0eSBhbGxvdy10YWJzLgorKyAgICAgICAgKHBwKToK
KysgICAgICAgIChJbnB1dCk6CisrICAgICAgICAocHA6OklucHV0Ojpjb3VudCk6CisrICAgICAg
ICAocHA6OklucHV0OjpzdHJpbmcpOgorKyAgICAgICAgKHBwOjpJbnB1dDo6bGVuZ3RoKToKKysg
ICAgICAgIChMb2NhdGlvbik6CisrICAgICAgICAocHA6OklucHV0OjpMb2NhdGlvbjo6TG9jYXRp
b24pOgorKyAgICAgICAgKHBwOjpJbnB1dDo6cmVhZExvYyk6CisrICAgICAgICAqIHNyYy9jb21w
aWxlci9wcmVwcm9jZXNzb3IvbmV3L0xleGVyLmNwcDogQWRkZWQuCisrICAgICAgICAocHApOgor
KyAgICAgICAgKHBwOjpMZXhlcjo6fkxleGVyKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3By
ZXByb2Nlc3Nvci9uZXcvTGV4ZXIuaDogQWRkZWQuCisrICAgICAgICAocHApOgorKyAgICAgICAg
KExleGVyKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9uZXcvTWFjcm8u
Y3BwOiBBZGRlZCBwcm9wZXJ0eSBhbGxvdy10YWJzLgorKyAgICAgICAgKHBwOjpNYWNybzo6ZXF1
YWxzKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9uZXcvTWFjcm8uaDog
QWRkZWQgcHJvcGVydHkgYWxsb3ctdGFicy4KKysgICAgICAgIChwcCk6CisrICAgICAgICAocHA6
Ok1hY3JvOjpNYWNybyk6CisrICAgICAgICAoTWFjcm8pOgorKyAgICAgICAgKiBzcmMvY29tcGls
ZXIvcHJlcHJvY2Vzc29yL25ldy9NYWNyb0V4cGFuZGVyLmNwcDogQWRkZWQuCisrICAgICAgICAo
cHApOgorKyAgICAgICAgKFRva2VuTGV4ZXIpOgorKyAgICAgICAgKHBwOjpUb2tlbkxleGVyOjpU
b2tlbkxleGVyKToKKysgICAgICAgIChwcDo6VG9rZW5MZXhlcjo6bGV4KToKKysgICAgICAgIChw
cDo6TWFjcm9FeHBhbmRlcjo6TWFjcm9FeHBhbmRlcik6CisrICAgICAgICAocHA6Ok1hY3JvRXhw
YW5kZXI6On5NYWNyb0V4cGFuZGVyKToKKysgICAgICAgIChwcDo6TWFjcm9FeHBhbmRlcjo6bGV4
KToKKysgICAgICAgIChwcDo6TWFjcm9FeHBhbmRlcjo6Z2V0VG9rZW4pOgorKyAgICAgICAgKHBw
OjpNYWNyb0V4cGFuZGVyOjp1bmdldFRva2VuKToKKysgICAgICAgIChwcDo6TWFjcm9FeHBhbmRl
cjo6aXNOZXh0VG9rZW5MZWZ0UGFyZW4pOgorKyAgICAgICAgKHBwOjpNYWNyb0V4cGFuZGVyOjpw
dXNoTWFjcm8pOgorKyAgICAgICAgKHBwOjpNYWNyb0V4cGFuZGVyOjpwb3BNYWNybyk6CisrICAg
ICAgICAocHA6Ok1hY3JvRXhwYW5kZXI6OmV4cGFuZE1hY3JvKToKKysgICAgICAgIChwcDo6TWFj
cm9FeHBhbmRlcjo6Y29sbGVjdE1hY3JvQXJncyk6CisrICAgICAgICAocHA6Ok1hY3JvRXhwYW5k
ZXI6OnJlcGxhY2VNYWNyb1BhcmFtcyk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9j
ZXNzb3IvbmV3L01hY3JvRXhwYW5kZXIuaDogQWRkZWQuCisrICAgICAgICAocHApOgorKyAgICAg
ICAgKE1hY3JvRXhwYW5kZXIpOgorKyAgICAgICAgKE1hY3JvQ29udGV4dCk6CisrICAgICAgICAo
cHA6Ok1hY3JvRXhwYW5kZXI6Ok1hY3JvQ29udGV4dDo6TWFjcm9Db250ZXh0KToKKysgICAgICAg
IChwcDo6TWFjcm9FeHBhbmRlcjo6TWFjcm9Db250ZXh0OjplbXB0eSk6CisrICAgICAgICAocHA6
Ok1hY3JvRXhwYW5kZXI6Ok1hY3JvQ29udGV4dDo6Z2V0KToKKysgICAgICAgIChwcDo6TWFjcm9F
eHBhbmRlcjo6TWFjcm9Db250ZXh0Ojp1bmdldCk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9w
cmVwcm9jZXNzb3IvbmV3L1ByZXByb2Nlc3Nvci5jcHA6IEFkZGVkIHByb3BlcnR5IGFsbG93LXRh
YnMuCisrICAgICAgICAoUHJlcHJvY2Vzc29ySW1wbCk6CisrICAgICAgICAocHA6OlByZXByb2Nl
c3NvckltcGw6OlByZXByb2Nlc3NvckltcGwpOgorKyAgICAgICAgKHBwKToKKysgICAgICAgIChw
cDo6UHJlcHJvY2Vzc29yOjpQcmVwcm9jZXNzb3IpOgorKyAgICAgICAgKHBwOjpQcmVwcm9jZXNz
b3I6On5QcmVwcm9jZXNzb3IpOgorKyAgICAgICAgKHBwOjpQcmVwcm9jZXNzb3I6OmluaXQpOgor
KyAgICAgICAgKHBwOjpQcmVwcm9jZXNzb3I6OnByZWRlZmluZU1hY3JvKToKKysgICAgICAgIChw
cDo6UHJlcHJvY2Vzc29yOjpsZXgpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vz
c29yL25ldy9QcmVwcm9jZXNzb3IuaDogQWRkZWQgcHJvcGVydHkgYWxsb3ctdGFicy4KKysgICAg
ICAgIChwcCk6CisrICAgICAgICAoUHJlcHJvY2Vzc29yKToKKysgICAgICAgICogc3JjL2NvbXBp
bGVyL3ByZXByb2Nlc3Nvci9uZXcvU291cmNlTG9jYXRpb24uaDogQWRkZWQuCisrICAgICAgICAo
cHApOgorKyAgICAgICAgKHBwOjpTb3VyY2VMb2NhdGlvbjo6U291cmNlTG9jYXRpb24pOgorKyAg
ICAgICAgKFNvdXJjZUxvY2F0aW9uKToKKysgICAgICAgIChwcDo6U291cmNlTG9jYXRpb246OmVx
dWFscyk6CisrICAgICAgICAocHA6Om9wZXJhdG9yPT0pOgorKyAgICAgICAgKHBwOjpvcGVyYXRv
ciE9KToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9uZXcvVG9rZW4uY3Bw
OiBBZGRlZCBwcm9wZXJ0eSBhbGxvdy10YWJzLgorKyAgICAgICAgKHBwOjpUb2tlbjo6cmVzZXQp
OgorKyAgICAgICAgKHBwOjpUb2tlbjo6ZXF1YWxzKToKKysgICAgICAgIChwcDo6VG9rZW46OnNl
dEF0U3RhcnRPZkxpbmUpOgorKyAgICAgICAgKHBwOjpUb2tlbjo6c2V0SGFzTGVhZGluZ1NwYWNl
KToKKysgICAgICAgIChwcCk6CisrICAgICAgICAocHA6OlRva2VuOjpzZXRFeHBhbnNpb25EaXNh
YmxlZCk6CisrICAgICAgICAocHA6Om9wZXJhdG9yPDwpOgorKyAgICAgICAgKiBzcmMvY29tcGls
ZXIvcHJlcHJvY2Vzc29yL25ldy9Ub2tlbi5oOiBBZGRlZCBwcm9wZXJ0eSBhbGxvdy10YWJzLgor
KyAgICAgICAgKHBwOjpUb2tlbjo6VG9rZW4pOgorKyAgICAgICAgKFRva2VuKToKKysgICAgICAg
IChwcDo6VG9rZW46OmF0U3RhcnRPZkxpbmUpOgorKyAgICAgICAgKHBwOjpUb2tlbjo6aGFzTGVh
ZGluZ1NwYWNlKToKKysgICAgICAgIChwcDo6VG9rZW46OmV4cGFuc2lvbkRpc2FibGVkKToKKysg
ICAgICAgIChwcDo6b3BlcmF0b3I9PSk6CisrICAgICAgICAocHApOgorKyAgICAgICAgKHBwOjpv
cGVyYXRvciE9KToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9uZXcvVG9r
ZW5pemVyLmNwcDogQWRkZWQuCisrICAgICAgICAoeXlfYnVmZmVyX3N0YXRlKToKKysgICAgICAg
ICh5eV90cmFuc19pbmZvKToKKysgICAgICAgICh5eWd1dHNfdCk6CisrICAgICAgICAoeXlfZ2V0
X3ByZXZpb3VzX3N0YXRlKToKKysgICAgICAgICh5eV90cnlfTlVMX3RyYW5zKToKKysgICAgICAg
IChpbnB1dCk6CisrICAgICAgICAocHByZXN0YXJ0KToKKysgICAgICAgIChwcF9zd2l0Y2hfdG9f
YnVmZmVyKToKKysgICAgICAgIChwcF9sb2FkX2J1ZmZlcl9zdGF0ZSk6CisrICAgICAgICAocHBf
Y3JlYXRlX2J1ZmZlcik6CisrICAgICAgICAocHBfZGVsZXRlX2J1ZmZlcik6CisrICAgICAgICAo
cHBfaW5pdF9idWZmZXIpOgorKyAgICAgICAgKHBwX2ZsdXNoX2J1ZmZlcik6CisrICAgICAgICAo
cHBwdXNoX2J1ZmZlcl9zdGF0ZSk6CisrICAgICAgICAocHBwb3BfYnVmZmVyX3N0YXRlKToKKysg
ICAgICAgIChwcGVuc3VyZV9idWZmZXJfc3RhY2spOgorKyAgICAgICAgKHBwX3NjYW5fYnVmZmVy
KToKKysgICAgICAgIChwcF9zY2FuX3N0cmluZyk6CisrICAgICAgICAocHBfc2Nhbl9ieXRlcyk6
CisrICAgICAgICAoeXlfZmF0YWxfZXJyb3IpOgorKyAgICAgICAgKHBwZ2V0X2V4dHJhKToKKysg
ICAgICAgIChwcGdldF9saW5lbm8pOgorKyAgICAgICAgKHBwZ2V0X2NvbHVtbik6CisrICAgICAg
ICAocHBnZXRfaW4pOgorKyAgICAgICAgKHBwZ2V0X291dCk6CisrICAgICAgICAocHBnZXRfbGVu
Zyk6CisrICAgICAgICAocHBnZXRfdGV4dCk6CisrICAgICAgICAocHBzZXRfZXh0cmEpOgorKyAg
ICAgICAgKHBwc2V0X2xpbmVubyk6CisrICAgICAgICAocHBzZXRfY29sdW1uKToKKysgICAgICAg
IChwcHNldF9pbik6CisrICAgICAgICAocHBzZXRfb3V0KToKKysgICAgICAgIChwcGdldF9kZWJ1
Zyk6CisrICAgICAgICAocHBzZXRfZGVidWcpOgorKyAgICAgICAgKHBwZ2V0X2x2YWwpOgorKyAg
ICAgICAgKHBwc2V0X2x2YWwpOgorKyAgICAgICAgKHBwZ2V0X2xsb2MpOgorKyAgICAgICAgKHBw
c2V0X2xsb2MpOgorKyAgICAgICAgKHBwbGV4X2luaXQpOgorKyAgICAgICAgKHBwbGV4X2luaXRf
ZXh0cmEpOgorKyAgICAgICAgKHl5X2luaXRfZ2xvYmFscyk6CisrICAgICAgICAocHBsZXhfZGVz
dHJveSk6CisrICAgICAgICAoeXlfZmxleF9zdHJuY3B5KToKKysgICAgICAgICh5eV9mbGV4X3N0
cmxlbik6CisrICAgICAgICAocHBhbGxvYyk6CisrICAgICAgICAocHByZWFsbG9jKToKKysgICAg
ICAgIChwcGZyZWUpOgorKyAgICAgICAgKHBwKToKKysgICAgICAgIChwcDo6VG9rZW5pemVyOjpU
b2tlbml6ZXIpOgorKyAgICAgICAgKHBwOjpUb2tlbml6ZXI6On5Ub2tlbml6ZXIpOgorKyAgICAg
ICAgKHBwOjpUb2tlbml6ZXI6OmluaXQpOgorKyAgICAgICAgKHBwOjpUb2tlbml6ZXI6OnNldEZp
bGVOdW1iZXIpOgorKyAgICAgICAgKHBwOjpUb2tlbml6ZXI6OnNldExpbmVOdW1iZXIpOgorKyAg
ICAgICAgKHBwOjpUb2tlbml6ZXI6OmxleCk6CisrICAgICAgICAocHA6OlRva2VuaXplcjo6aW5p
dFNjYW5uZXIpOgorKyAgICAgICAgKHBwOjpUb2tlbml6ZXI6OmRlc3Ryb3lTY2FubmVyKToKKysg
ICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9uZXcvVG9rZW5pemVyLmg6IEFkZGVk
LgorKyAgICAgICAgKHBwKToKKysgICAgICAgIChUb2tlbml6ZXIpOgorKyAgICAgICAgKENvbnRl
eHQpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL25ldy9Ub2tlbml6ZXIu
bDogQWRkZWQuCisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvbmV3L2dlbmVy
YXRlX3BhcnNlci5zaDogQWRkZWQgcHJvcGVydHkgYWxsb3ctdGFicy4KKysgICAgICAgICogc3Jj
L2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9uZXcvcHAubDogUmVtb3ZlZC4KKysgICAgICAgICogc3Jj
L2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9uZXcvcHAueTogUmVtb3ZlZC4KKysgICAgICAgICogc3Jj
L2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9uZXcvcHBfbGV4LmNwcDogUmVtb3ZlZC4KKysgICAgICAg
ICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9uZXcvcHBfdGFiLmNwcDogUmVtb3ZlZC4KKysg
ICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9uZXcvcHBfdGFiLmg6IFJlbW92ZWQu
CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvbmV3L3BwX3V0aWxzLmg6IEFk
ZGVkLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL25ldy9wcmVwcm9jZXNz
b3IudmNwcm9qOiBBZGRlZC4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9u
ZXcvc3RsX3V0aWxzLmg6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9j
ZXNzb3IvbmV3L3Rva2VuX3R5cGUuaDogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2NvbXBpbGVy
L3ByZXByb2Nlc3Nvci9wcmVwcm9jZXNzLmg6CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVw
cm9jZXNzb3Ivc2Nhbm5lci5jOgorKyAgICAgICAgKEluaXRTY2FubmVySW5wdXQpOgorKyAgICAg
ICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL3NjYW5uZXIuaDoKKysgICAgICAgICogc3Jj
L2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9zeW1ib2xzLmg6CisrICAgICAgICAqIHNyYy9jb21waWxl
ci9wcmVwcm9jZXNzb3IvdG9rZW5zLmM6CisrICAgICAgICAoUmVhZFRva2VuKToKKysgICAgICAg
IChEdW1wVG9rZW5TdHJlYW0pOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29y
L3Rva2Vucy5oOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdGltaW5nOiBBZGRlZC4KKysgICAg
ICAgICogc3JjL2NvbXBpbGVyL3RpbWluZy9SZXN0cmljdEZyYWdtZW50U2hhZGVyVGltaW5nLmNw
cDogQWRkZWQuCisrICAgICAgICAoUmVzdHJpY3RGcmFnbWVudFNoYWRlclRpbWluZzo6UmVzdHJp
Y3RGcmFnbWVudFNoYWRlclRpbWluZyk6CisrICAgICAgICAoUmVzdHJpY3RGcmFnbWVudFNoYWRl
clRpbWluZzo6ZW5mb3JjZVJlc3RyaWN0aW9ucyk6CisrICAgICAgICAoUmVzdHJpY3RGcmFnbWVu
dFNoYWRlclRpbWluZzo6dmFsaWRhdGVVc2VyRGVmaW5lZEZ1bmN0aW9uQ2FsbFVzYWdlKToKKysg
ICAgICAgIChSZXN0cmljdEZyYWdtZW50U2hhZGVyVGltaW5nOjpiZWdpbkVycm9yKToKKysgICAg
ICAgIChSZXN0cmljdEZyYWdtZW50U2hhZGVyVGltaW5nOjppc1NhbXBsaW5nT3ApOgorKyAgICAg
ICAgKFJlc3RyaWN0RnJhZ21lbnRTaGFkZXJUaW1pbmc6OnZpc2l0QXJndW1lbnQpOgorKyAgICAg
ICAgKFJlc3RyaWN0RnJhZ21lbnRTaGFkZXJUaW1pbmc6OnZpc2l0U2VsZWN0aW9uKToKKysgICAg
ICAgIChSZXN0cmljdEZyYWdtZW50U2hhZGVyVGltaW5nOjp2aXNpdExvb3ApOgorKyAgICAgICAg
KFJlc3RyaWN0RnJhZ21lbnRTaGFkZXJUaW1pbmc6OnZpc2l0TG9naWNhbE9wKToKKysgICAgICAg
ICogc3JjL2NvbXBpbGVyL3RpbWluZy9SZXN0cmljdEZyYWdtZW50U2hhZGVyVGltaW5nLmg6IEFk
ZGVkLgorKyAgICAgICAgKFJlc3RyaWN0RnJhZ21lbnRTaGFkZXJUaW1pbmcpOgorKyAgICAgICAg
KFJlc3RyaWN0RnJhZ21lbnRTaGFkZXJUaW1pbmc6Om51bUVycm9ycyk6CisrICAgICAgICAqIHNy
Yy9jb21waWxlci90aW1pbmcvUmVzdHJpY3RWZXJ0ZXhTaGFkZXJUaW1pbmcuY3BwOiBBZGRlZC4K
KysgICAgICAgIChSZXN0cmljdFZlcnRleFNoYWRlclRpbWluZzo6dmlzaXRTeW1ib2wpOgorKyAg
ICAgICAgKiBzcmMvY29tcGlsZXIvdGltaW5nL1Jlc3RyaWN0VmVydGV4U2hhZGVyVGltaW5nLmg6
IEFkZGVkLgorKyAgICAgICAgKFJlc3RyaWN0VmVydGV4U2hhZGVyVGltaW5nKToKKysgICAgICAg
IChSZXN0cmljdFZlcnRleFNoYWRlclRpbWluZzo6UmVzdHJpY3RWZXJ0ZXhTaGFkZXJUaW1pbmcp
OgorKyAgICAgICAgKFJlc3RyaWN0VmVydGV4U2hhZGVyVGltaW5nOjplbmZvcmNlUmVzdHJpY3Rp
b25zKToKKysgICAgICAgIChSZXN0cmljdFZlcnRleFNoYWRlclRpbWluZzo6bnVtRXJyb3JzKToK
KysgICAgICAgICogc3JjL2xpYkVHTC9EaXNwbGF5LmNwcDoKKysgICAgICAgIChlZ2wpOgorKyAg
ICAgICAgKGVnbDo6RGlzcGxheTo6Z2V0RGVwdGhUZXh0dXJlU3VwcG9ydCk6CisrICAgICAgICAo
ZWdsOjpEaXNwbGF5OjpnZXRUZXh0dXJlUG9vbCk6CisrICAgICAgICAqIHNyYy9saWJFR0wvRGlz
cGxheS5oOgorKyAgICAgICAgKERpc3BsYXkpOgorKyAgICAgICAgKiBzcmMvbGliRUdML1N1cmZh
Y2UuY3BwOgorKyAgICAgICAgKGVnbDo6U3VyZmFjZTo6U3VyZmFjZSk6CisrICAgICAgICAoZWds
OjpTdXJmYWNlOjpyZWxlYXNlKToKKysgICAgICAgIChlZ2w6OlN1cmZhY2U6OnJlc2V0U3dhcENo
YWluKToKKysgICAgICAgIChlZ2w6OlN1cmZhY2U6OnN3YXBSZWN0KToKKysgICAgICAgIChlZ2wp
OgorKyAgICAgICAgKGVnbDo6U3VyZmFjZTo6c3dhcCk6CisrICAgICAgICAoZWdsOjpTdXJmYWNl
Ojpwb3N0U3ViQnVmZmVyKToKKysgICAgICAgICogc3JjL2xpYkVHTC9TdXJmYWNlLmg6CisrICAg
ICAgICAoU3VyZmFjZSk6CisrICAgICAgICAqIHNyYy9saWJFR0wvbGliRUdMLmNwcDoKKysgICAg
ICAgICogc3JjL2xpYkdMRVN2Mi9Db250ZXh0LmNwcDoKKysgICAgICAgIChnbDo6Q29udGV4dDo6
bWFrZUN1cnJlbnQpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjptYXJrRHhVbmlmb3Jtc0RpcnR5
KToKKysgICAgICAgIChnbCk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmdldEludGVnZXJ2KToK
KysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0UXVlcnlQYXJhbWV0ZXJJbmZvKToKKysgICAgICAg
IChnbDo6Q29udGV4dDo6YXBwbHlSZW5kZXJUYXJnZXQpOgorKyAgICAgICAgKGdsOjpDb250ZXh0
OjphcHBseVN0YXRlKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6YXBwbHlTaGFkZXJzKToKKysg
ICAgICAgIChnbDo6Q29udGV4dDo6YXBwbHlUZXh0dXJlcyk6CisrICAgICAgICAoZ2w6OkNvbnRl
eHQ6OnJlYWRQaXhlbHMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpjbGVhcik6CisrICAgICAg
ICAoZ2w6OkNvbnRleHQ6OmRyYXdBcnJheXMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpkcmF3
RWxlbWVudHMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzdXBwb3J0c0RlcHRoVGV4dHVyZXMp
OgorKyAgICAgICAgKGdsOjpDb250ZXh0Ojppbml0RXh0ZW5zaW9uU3RyaW5nKToKKysgICAgICAg
IChnbDo6Q29udGV4dDo6YmxpdEZyYW1lYnVmZmVyKToKKysgICAgICAgIChnbDo6VmVydGV4RGVj
bGFyYXRpb25DYWNoZTo6YXBwbHlEZWNsYXJhdGlvbik6CisrICAgICAgICAqIHNyYy9saWJHTEVT
djIvQ29udGV4dC5oOgorKyAgICAgICAgKENvbnRleHQpOgorKyAgICAgICAgKiBzcmMvbGliR0xF
U3YyL0ZyYW1lYnVmZmVyLmNwcDoKKysgICAgICAgIChnbDo6RnJhbWVidWZmZXI6On5GcmFtZWJ1
ZmZlcik6CisrICAgICAgICAoZ2wpOgorKyAgICAgICAgKGdsOjpGcmFtZWJ1ZmZlcjo6Z2V0TnVs
bENvbG9yYnVmZmVyKToKKysgICAgICAgIChnbDo6RnJhbWVidWZmZXI6OmNvbXBsZXRlbmVzcyk6
CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvRnJhbWVidWZmZXIuaDoKKysgICAgICAgIChGcmFt
ZWJ1ZmZlcik6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvUHJvZ3JhbS5jcHA6CisrICAgICAg
ICAoZ2wpOgorKyAgICAgICAgKGdsOjpBdHRyaWJ1dGVCaW5kaW5nczo6QXR0cmlidXRlQmluZGlu
Z3MpOgorKyAgICAgICAgKGdsOjpBdHRyaWJ1dGVCaW5kaW5nczo6fkF0dHJpYnV0ZUJpbmRpbmdz
KToKKysgICAgICAgIChnbDo6SW5mb0xvZzo6SW5mb0xvZyk6CisrICAgICAgICAoZ2w6OkluZm9M
b2c6On5JbmZvTG9nKToKKysgICAgICAgIChnbDo6SW5mb0xvZzo6Z2V0TGVuZ3RoKToKKysgICAg
ICAgIChnbDo6SW5mb0xvZzo6Z2V0TG9nKToKKysgICAgICAgIChnbDo6SW5mb0xvZzo6YXBwZW5k
U2FuaXRpemVkKToKKysgICAgICAgIChnbDo6SW5mb0xvZzo6YXBwZW5kKToKKysgICAgICAgIChn
bDo6SW5mb0xvZzo6cmVzZXQpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpQcm9ncmFtKToKKysg
ICAgICAgIChnbDo6UHJvZ3JhbTo6flByb2dyYW0pOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjph
dHRhY2hTaGFkZXIpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpkZXRhY2hTaGFkZXIpOgorKyAg
ICAgICAgKGdsOjpQcm9ncmFtOjpnZXRBdHRhY2hlZFNoYWRlcnNDb3VudCk6CisrICAgICAgICAo
Z2w6OkF0dHJpYnV0ZUJpbmRpbmdzOjpiaW5kQXR0cmlidXRlTG9jYXRpb24pOgorKyAgICAgICAg
KGdsOjpQcm9ncmFtOjpiaW5kQXR0cmlidXRlTG9jYXRpb24pOgorKyAgICAgICAgKGdsOjpQcm9n
cmFtOjpsaW5rKToKKysgICAgICAgIChnbDo6QXR0cmlidXRlQmluZGluZ3M6OmdldEF0dHJpYnV0
ZUJpbmRpbmcpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjp1bmxpbmspOgorKyAgICAgICAgKGds
OjpQcm9ncmFtOjpnZXRQcm9ncmFtQmluYXJ5KToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6c2V0
UHJvZ3JhbUJpbmFyeSk6CisrICAgICAgICAoZ2w6OlByb2dyYW06OmdldEluZm9Mb2dMZW5ndGgp
OgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpnZXRJbmZvTG9nKToKKysgICAgICAgIChnbDo6UHJv
Z3JhbTo6Z2V0QWN0aXZlQXR0cmlidXRlKToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6Z2V0QWN0
aXZlQXR0cmlidXRlQ291bnQpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpnZXRBY3RpdmVBdHRy
aWJ1dGVNYXhMZW5ndGgpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpnZXRBY3RpdmVVbmlmb3Jt
KToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6Z2V0QWN0aXZlVW5pZm9ybUNvdW50KToKKysgICAg
ICAgIChnbDo6UHJvZ3JhbTo6Z2V0QWN0aXZlVW5pZm9ybU1heExlbmd0aCk6CisrICAgICAgICAo
Z2w6OlByb2dyYW06OnZhbGlkYXRlKToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6aXNWYWxpZGF0
ZWQpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1Byb2dyYW0uaDoKKysgICAgICAgIChnbCk6
CisrICAgICAgICAoQXR0cmlidXRlQmluZGluZ3MpOgorKyAgICAgICAgKEluZm9Mb2cpOgorKyAg
ICAgICAgKFByb2dyYW0pOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1Byb2dyYW1CaW5hcnku
Y3BwOiBBZGRlZC4KKysgICAgICAgIChnbDo6c3RyKToKKysgICAgICAgIChnbCk6CisrICAgICAg
ICAoZ2w6OlVuaWZvcm06OlVuaWZvcm0pOgorKyAgICAgICAgKGdsOjpVbmlmb3JtOjp+VW5pZm9y
bSk6CisrICAgICAgICAoZ2w6OlVuaWZvcm06OmlzQXJyYXkpOgorKyAgICAgICAgKGdsOjpVbmlm
b3JtTG9jYXRpb246OlVuaWZvcm1Mb2NhdGlvbik6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5h
cnk6OlByb2dyYW1CaW5hcnkpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5Ojp+UHJvZ3Jh
bUJpbmFyeSk6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OmdldFBpeGVsU2hhZGVyKToK
KysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6Z2V0VmVydGV4U2hhZGVyKToKKysgICAgICAg
IChnbDo6UHJvZ3JhbUJpbmFyeTo6Z2V0QXR0cmlidXRlTG9jYXRpb24pOgorKyAgICAgICAgKGds
OjpQcm9ncmFtQmluYXJ5OjpnZXRTZW1hbnRpY0luZGV4KToKKysgICAgICAgIChnbDo6UHJvZ3Jh
bUJpbmFyeTo6Z2V0VXNlZFNhbXBsZXJSYW5nZSk6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5h
cnk6OmdldFNhbXBsZXJNYXBwaW5nKToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6Z2V0
U2FtcGxlclRleHR1cmVUeXBlKToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6Z2V0VW5p
Zm9ybUxvY2F0aW9uKToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6c2V0VW5pZm9ybTFm
dik6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OnNldFVuaWZvcm0yZnYpOgorKyAgICAg
ICAgKGdsOjpQcm9ncmFtQmluYXJ5OjpzZXRVbmlmb3JtM2Z2KToKKysgICAgICAgIChnbDo6UHJv
Z3JhbUJpbmFyeTo6c2V0VW5pZm9ybTRmdik6CisrICAgICAgICAoZ2w6OnRyYW5zcG9zZU1hdHJp
eCk6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OnNldFVuaWZvcm1NYXRyaXgyZnYpOgor
KyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjpzZXRVbmlmb3JtTWF0cml4M2Z2KToKKysgICAg
ICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6c2V0VW5pZm9ybU1hdHJpeDRmdik6CisrICAgICAgICAo
Z2w6OlByb2dyYW1CaW5hcnk6OnNldFVuaWZvcm0xaXYpOgorKyAgICAgICAgKGdsOjpQcm9ncmFt
QmluYXJ5OjpzZXRVbmlmb3JtMml2KToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6c2V0
VW5pZm9ybTNpdik6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OnNldFVuaWZvcm00aXYp
OgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjpnZXRVbmlmb3JtZnYpOgorKyAgICAgICAg
KGdsOjpQcm9ncmFtQmluYXJ5OjpnZXRVbmlmb3JtaXYpOgorKyAgICAgICAgKGdsOjpQcm9ncmFt
QmluYXJ5OjpkaXJ0eUFsbFVuaWZvcm1zKToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6
YXBwbHlVbmlmb3Jtcyk6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OmNvbXBpbGVUb0Jp
bmFyeSk6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OnBhY2tWYXJ5aW5ncyk6CisrICAg
ICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OmxpbmtWYXJ5aW5ncyk6CisrICAgICAgICAoZ2w6OlBy
b2dyYW1CaW5hcnk6OmxpbmspOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjpsaW5rQXR0
cmlidXRlcyk6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OmxpbmtVbmlmb3Jtcyk6Cisr
ICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OmRlZmluZVVuaWZvcm0pOgorKyAgICAgICAgKGds
OjpQcm9ncmFtQmluYXJ5OjpjcmVhdGVVbmlmb3JtKToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJp
bmFyeTo6ZGVjb3JhdGVBdHRyaWJ1dGUpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5Ojp1
bmRlY29yYXRlVW5pZm9ybSk6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OmFwcGx5VW5p
Zm9ybW5idik6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OmFwcGx5VW5pZm9ybW5mdik6
CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OmFwcGx5VW5pZm9ybTFpdik6CisrICAgICAg
ICAoZ2w6OlByb2dyYW1CaW5hcnk6OmFwcGx5VW5pZm9ybTJpdik6CisrICAgICAgICAoZ2w6OlBy
b2dyYW1CaW5hcnk6OmFwcGx5VW5pZm9ybTNpdik6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5h
cnk6OmFwcGx5VW5pZm9ybTRpdik6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OmFwcGx5
VW5pZm9ybW5pdik6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OmlzVmFsaWRhdGVkKToK
KysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6Z2V0QWN0aXZlQXR0cmlidXRlKToKKysgICAg
ICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6Z2V0QWN0aXZlQXR0cmlidXRlQ291bnQpOgorKyAgICAg
ICAgKGdsOjpQcm9ncmFtQmluYXJ5OjpnZXRBY3RpdmVBdHRyaWJ1dGVNYXhMZW5ndGgpOgorKyAg
ICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjpnZXRBY3RpdmVVbmlmb3JtKToKKysgICAgICAgIChn
bDo6UHJvZ3JhbUJpbmFyeTo6Z2V0QWN0aXZlVW5pZm9ybUNvdW50KToKKysgICAgICAgIChnbDo6
UHJvZ3JhbUJpbmFyeTo6Z2V0QWN0aXZlVW5pZm9ybU1heExlbmd0aCk6CisrICAgICAgICAoZ2w6
OlByb2dyYW1CaW5hcnk6OnZhbGlkYXRlKToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6
dmFsaWRhdGVTYW1wbGVycyk6CisrICAgICAgICAoZ2w6OlByb2dyYW1CaW5hcnk6OmdldER4RGVw
dGhSYW5nZUxvY2F0aW9uKToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6Z2V0RHhEZXB0
aExvY2F0aW9uKToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6Z2V0RHhDb29yZExvY2F0
aW9uKToKKysgICAgICAgIChnbDo6UHJvZ3JhbUJpbmFyeTo6Z2V0RHhIYWxmUGl4ZWxTaXplTG9j
YXRpb24pOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjpnZXREeEZyb250Q0NXTG9jYXRp
b24pOgorKyAgICAgICAgKGdsOjpQcm9ncmFtQmluYXJ5OjpnZXREeFBvaW50c09yTGluZXNMb2Nh
dGlvbik6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvUHJvZ3JhbUJpbmFyeS5oOiBBZGRlZC4K
KysgICAgICAgIChnbCk6CisrICAgICAgICAoVW5pZm9ybSk6CisrICAgICAgICAoZ2w6OlVuaWZv
cm06OlJlZ2lzdGVySW5mbzo6UmVnaXN0ZXJJbmZvKToKKysgICAgICAgIChSZWdpc3RlckluZm8p
OgorKyAgICAgICAgKGdsOjpVbmlmb3JtOjpSZWdpc3RlckluZm86OnNldCk6CisrICAgICAgICAo
VW5pZm9ybUxvY2F0aW9uKToKKysgICAgICAgIChQcm9ncmFtQmluYXJ5KToKKysgICAgICAgIChT
YW1wbGVyKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9SZW5kZXJidWZmZXIuY3BwOgorKyAg
ICAgICAgKGdsKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyVGV4dHVyZTJEOjpSZW5kZXJi
dWZmZXJUZXh0dXJlMkQpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJUZXh0dXJlMkQ6On5S
ZW5kZXJidWZmZXJUZXh0dXJlMkQpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJUZXh0dXJl
MkQ6OmFkZFByb3h5UmVmKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyVGV4dHVyZTJEOjpy
ZWxlYXNlUHJveHkpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJUZXh0dXJlMkQ6OmdldFJl
bmRlclRhcmdldCk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclRleHR1cmUyRDo6Z2V0RGVw
dGhTdGVuY2lsKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyVGV4dHVyZTJEOjpnZXRXaWR0
aCk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclRleHR1cmUyRDo6Z2V0SGVpZ2h0KToKKysg
ICAgICAgIChnbDo6UmVuZGVyYnVmZmVyVGV4dHVyZTJEOjpnZXRJbnRlcm5hbEZvcm1hdCk6Cisr
ICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclRleHR1cmUyRDo6Z2V0RDNERm9ybWF0KToKKysgICAg
ICAgIChnbDo6UmVuZGVyYnVmZmVyVGV4dHVyZTJEOjpnZXRTYW1wbGVzKToKKysgICAgICAgIChn
bDo6UmVuZGVyYnVmZmVyVGV4dHVyZTJEOjpnZXRTZXJpYWwpOgorKyAgICAgICAgKGdsOjpSZW5k
ZXJidWZmZXJUZXh0dXJlQ3ViZU1hcDo6UmVuZGVyYnVmZmVyVGV4dHVyZUN1YmVNYXApOgorKyAg
ICAgICAgKGdsOjpSZW5kZXJidWZmZXJUZXh0dXJlQ3ViZU1hcDo6flJlbmRlcmJ1ZmZlclRleHR1
cmVDdWJlTWFwKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyVGV4dHVyZUN1YmVNYXA6OmFk
ZFByb3h5UmVmKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyVGV4dHVyZUN1YmVNYXA6OnJl
bGVhc2VQcm94eSk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclRleHR1cmVDdWJlTWFwOjpn
ZXRSZW5kZXJUYXJnZXQpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJUZXh0dXJlQ3ViZU1h
cDo6Z2V0RGVwdGhTdGVuY2lsKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyVGV4dHVyZUN1
YmVNYXA6OmdldFdpZHRoKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyVGV4dHVyZUN1YmVN
YXA6OmdldEhlaWdodCk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclRleHR1cmVDdWJlTWFw
OjpnZXRJbnRlcm5hbEZvcm1hdCk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclRleHR1cmVD
dWJlTWFwOjpnZXREM0RGb3JtYXQpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJUZXh0dXJl
Q3ViZU1hcDo6Z2V0U2FtcGxlcyk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclRleHR1cmVD
dWJlTWFwOjpnZXRTZXJpYWwpOgorKyAgICAgICAgKGdsOjpEZXB0aFN0ZW5jaWxidWZmZXI6Omdl
dERlcHRoU3RlbmNpbCk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvUmVuZGVyYnVmZmVyLmg6
CisrICAgICAgICAoZ2wpOgorKyAgICAgICAgKFJlbmRlcmJ1ZmZlclRleHR1cmUyRCk6CisrICAg
ICAgICAoUmVuZGVyYnVmZmVyVGV4dHVyZUN1YmVNYXApOgorKyAgICAgICAgKiBzcmMvbGliR0xF
U3YyL1NoYWRlci5jcHA6CisrICAgICAgICAoZ2w6OlNoYWRlcjo6Z2V0SW5mb0xvZyk6CisrICAg
ICAgICAoZ2w6OlNoYWRlcjo6Z2V0U291cmNlSW1wbCk6CisrICAgICAgICAqIHNyYy9saWJHTEVT
djIvU2hhZGVyLmg6CisrICAgICAgICAoU2hhZGVyKToKKysgICAgICAgIChWZXJ0ZXhTaGFkZXIp
OgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1RleHR1cmUuY3BwOgorKyAgICAgICAgKGdsOjpD
b252ZXJ0VGV4dHVyZUZvcm1hdFR5cGUpOgorKyAgICAgICAgKGdsOjpJc1RleHR1cmVGb3JtYXRS
ZW5kZXJhYmxlKToKKysgICAgICAgIChnbDo6R2V0VGV4dHVyZVVzYWdlKToKKysgICAgICAgIChn
bCk6CisrICAgICAgICAoZ2w6OkltYWdlOjpjcmVhdGVTdXJmYWNlKToKKysgICAgICAgIChnbDo6
SW1hZ2U6OnVwZGF0ZVN1cmZhY2UpOgorKyAgICAgICAgKGdsOjpJbWFnZTo6bG9hZERhdGEpOgor
KyAgICAgICAgKGdsOjpJbWFnZTo6bG9hZEFscGhhRGF0YSk6CisrICAgICAgICAoZ2w6OkltYWdl
Ojpsb2FkQWxwaGFEYXRhU1NFMik6CisrICAgICAgICAoZ2w6OkltYWdlOjpsb2FkQWxwaGFGbG9h
dERhdGEpOgorKyAgICAgICAgKGdsOjpJbWFnZTo6bG9hZEFscGhhSGFsZkZsb2F0RGF0YSk6Cisr
ICAgICAgICAoZ2w6OkltYWdlOjpsb2FkTHVtaW5hbmNlRGF0YSk6CisrICAgICAgICAoZ2w6Oklt
YWdlOjpsb2FkTHVtaW5hbmNlRmxvYXREYXRhKToKKysgICAgICAgIChnbDo6SW1hZ2U6OmxvYWRM
dW1pbmFuY2VIYWxmRmxvYXREYXRhKToKKysgICAgICAgIChnbDo6SW1hZ2U6OmxvYWRMdW1pbmFu
Y2VBbHBoYURhdGEpOgorKyAgICAgICAgKGdsOjpJbWFnZTo6bG9hZEx1bWluYW5jZUFscGhhRmxv
YXREYXRhKToKKysgICAgICAgIChnbDo6SW1hZ2U6OmxvYWRMdW1pbmFuY2VBbHBoYUhhbGZGbG9h
dERhdGEpOgorKyAgICAgICAgKGdsOjpJbWFnZTo6bG9hZFJHQlVCeXRlRGF0YSk6CisrICAgICAg
ICAoZ2w6OkltYWdlOjpsb2FkUkdCNTY1RGF0YSk6CisrICAgICAgICAoZ2w6OkltYWdlOjpsb2Fk
UkdCRmxvYXREYXRhKToKKysgICAgICAgIChnbDo6SW1hZ2U6OmxvYWRSR0JIYWxmRmxvYXREYXRh
KToKKysgICAgICAgIChnbDo6SW1hZ2U6OmxvYWRSR0JBVUJ5dGVEYXRhU1NFMik6CisrICAgICAg
ICAoZ2w6OkltYWdlOjpsb2FkUkdCQVVCeXRlRGF0YSk6CisrICAgICAgICAoZ2w6OkltYWdlOjps
b2FkUkdCQTQ0NDREYXRhKToKKysgICAgICAgIChnbDo6SW1hZ2U6OmxvYWRSR0JBNTU1MURhdGEp
OgorKyAgICAgICAgKGdsOjpJbWFnZTo6bG9hZFJHQkFGbG9hdERhdGEpOgorKyAgICAgICAgKGds
OjpJbWFnZTo6bG9hZFJHQkFIYWxmRmxvYXREYXRhKToKKysgICAgICAgIChnbDo6SW1hZ2U6Omxv
YWRCR1JBRGF0YSk6CisrICAgICAgICAoZ2w6OkltYWdlOjpsb2FkQ29tcHJlc3NlZERhdGEpOgor
KyAgICAgICAgKGdsOjpJbWFnZTo6Y29weSk6CisrICAgICAgICAoZ2w6OlRleHR1cmVTdG9yYWdl
OjpUZXh0dXJlU3RvcmFnZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmVTdG9yYWdlOjppc1JlbmRl
clRhcmdldCk6CisrICAgICAgICAoZ2w6OlRleHR1cmVTdG9yYWdlOjpnZXRVc2FnZSk6CisrICAg
ICAgICAoZ2w6OlRleHR1cmU6OnNldEltYWdlKToKKysgICAgICAgIChnbDo6VGV4dHVyZTo6c2V0
Q29tcHJlc3NlZEltYWdlKToKKysgICAgICAgIChnbDo6VGV4dHVyZTo6c3ViSW1hZ2UpOgorKyAg
ICAgICAgKGdsOjpUZXh0dXJlOjpzdWJJbWFnZUNvbXByZXNzZWQpOgorKyAgICAgICAgKGdsOjpU
ZXh0dXJlU3RvcmFnZTJEOjpUZXh0dXJlU3RvcmFnZTJEKToKKysgICAgICAgIChnbDo6VGV4dHVy
ZTJEOjpnZXRJbnRlcm5hbEZvcm1hdCk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6Z2V0RDNE
Rm9ybWF0KToKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjpjb3B5SW1hZ2UpOgorKyAgICAgICAg
KGdsOjpUZXh0dXJlMkQ6OmNvcHlTdWJJbWFnZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6
c3RvcmFnZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6aXNTYW1wbGVyQ29tcGxldGUpOgor
KyAgICAgICAgKGdsOjpUZXh0dXJlMkQ6OmlzQ29tcHJlc3NlZCk6CisrICAgICAgICAoZ2w6OlRl
eHR1cmUyRDo6aXNEZXB0aCk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6Y3JlYXRlVGV4dHVy
ZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6Y29udmVydFRvUmVuZGVyVGFyZ2V0KToKKysg
ICAgICAgIChnbDo6VGV4dHVyZTJEOjpnZXRSZW5kZXJidWZmZXIpOgorKyAgICAgICAgKGdsOjpU
ZXh0dXJlMkQ6OmdldFJlbmRlclRhcmdldCk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6Z2V0
RGVwdGhTdGVuY2lsKToKKysgICAgICAgIChnbDo6VGV4dHVyZVN0b3JhZ2VDdWJlTWFwOjpUZXh0
dXJlU3RvcmFnZUN1YmVNYXApOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6Z2V0V2lk
dGgpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6Z2V0SGVpZ2h0KToKKysgICAgICAg
IChnbDo6VGV4dHVyZUN1YmVNYXA6OmdldEludGVybmFsRm9ybWF0KToKKysgICAgICAgIChnbDo6
VGV4dHVyZUN1YmVNYXA6OmdldEQzREZvcm1hdCk6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJl
TWFwOjppc1NhbXBsZXJDb21wbGV0ZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpp
c0NvbXByZXNzZWQpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6Y3JlYXRlVGV4dHVy
ZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpjb252ZXJ0VG9SZW5kZXJUYXJnZXQp
OgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6Y29weUltYWdlKToKKysgICAgICAgIChn
bDo6VGV4dHVyZUN1YmVNYXA6OmNvcHlTdWJJbWFnZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmVD
dWJlTWFwOjpzdG9yYWdlKToKKysgICAgICAgIChnbDo6VGV4dHVyZUN1YmVNYXA6OmdldFJlbmRl
cmJ1ZmZlcik6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvVGV4dHVyZS5oOgorKyAgICAgICAg
KEltYWdlKToKKysgICAgICAgIChUZXh0dXJlU3RvcmFnZSk6CisrICAgICAgICAoVGV4dHVyZSk6
CisrICAgICAgICAoVGV4dHVyZVN0b3JhZ2UyRCk6CisrICAgICAgICAoVGV4dHVyZTJEKToKKysg
ICAgICAgIChUZXh0dXJlU3RvcmFnZUN1YmVNYXApOgorKyAgICAgICAgKFRleHR1cmVDdWJlTWFw
KToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9WZXJ0ZXhEYXRhTWFuYWdlci5jcHA6CisrICAg
ICAgICAoZ2w6OlZlcnRleERhdGFNYW5hZ2VyOjpwcmVwYXJlVmVydGV4RGF0YSk6CisrICAgICAg
ICAqIHNyYy9saWJHTEVTdjIvbGliR0xFU3YyLmNwcDoKKysgICAgICAgIChjaGVja1RleHR1cmVG
b3JtYXRUeXBlKToKKysgICAgICAgICh2YWxpZGF0ZVN1YkltYWdlUGFyYW1zMkQpOgorKyAgICAg
ICAgKHZhbGlkYXRlU3ViSW1hZ2VQYXJhbXNDdWJlKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2
Mi9saWJHTEVTdjIudmNwcm9qOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL21hdGh1dGlsLmg6
CisrICAgICAgICAoZ2wpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL3V0aWxpdGllcy5jcHA6
CisrICAgICAgICAoZ2w6OklzRGVwdGhUZXh0dXJlKToKKysgICAgICAgIChnbCk6CisrICAgICAg
ICAoZ2w6OkNvbXB1dGVQaXhlbFNpemUpOgorKyAgICAgICAgKGdsOjpFeHRyYWN0Rm9ybWF0KToK
KysgICAgICAgIChnbDo6RXh0cmFjdFR5cGUpOgorKyAgICAgICAgKGVzMmR4OjpDb252ZXJ0Q3Vi
ZUZhY2UpOgorKyAgICAgICAgKGVzMmR4OjpDb252ZXJ0UmVuZGVyYnVmZmVyRm9ybWF0KToKKysg
ICAgICAgIChkeDJlczo6R2V0U3RlbmNpbFNpemUpOgorKyAgICAgICAgKGR4MmVzOjpHZXREZXB0
aFNpemUpOgorKyAgICAgICAgKGR4MmVzOjpJc0RlcHRoVGV4dHVyZUZvcm1hdCk6CisrICAgICAg
ICAoZHgyZXMpOgorKyAgICAgICAgKGR4MmVzOjpJc1N0ZW5jaWxUZXh0dXJlRm9ybWF0KToKKysg
ICAgICAgIChkeDJlczo6Q29udmVydERlcHRoU3RlbmNpbEZvcm1hdCk6CisrICAgICAgICAqIHNy
Yy9saWJHTEVTdjIvdXRpbGl0aWVzLmg6CisrICAgICAgICAoZ2wpOgorKyAgICAgICAgKGR4MmVz
KToKKysKKysyMDEyLTA3LTExICBNYXJrIFJvd2UgIDxtcm93ZUBhcHBsZS5jb20+CisrCisrICAg
ICAgICA8aHR0cDovL3dlYmtpdC5vcmcvYi85MTAyND4gQnVpbGQgYWdhaW5zdCB0aGUgbGF0ZXN0
IFNESyB3aGVuIHRhcmdldGluZyBvbGRlciBPUyBYIHZlcnNpb25zLgorKworKyAgICAgICAgUmV2
aWV3ZWQgYnkgRGFuIEJlcm5zdGVpbi4KKysKKysgICAgICAgIFRoZSBkZXBsb3ltZW50IHRhcmdl
dCBpcyBhbHJlYWR5IHNldCB0byB0aGUgdmVyc2lvbiB0aGF0IHdlJ3JlIHRhcmdldGluZywgYW5k
IGl0J3MgdGhhdCBzZXR0aW5nCisrICAgICAgICB3aGljaCBkZXRlcm1pbmVzIHdoaWNoIGZ1bmN0
aW9uYWxpdHkgZnJvbSB0aGUgU0RLIGlzIGF2YWlsYWJsZSB0byB1cy4KKysKKysgICAgICAgICog
Q29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZzoKKysKKysyMDEyLTA2LTIyICBKb3NodWEgTmV0
dGVyZmllbGQgIDxqbmV0dGVyZmllbGRAcmltLmNvbT4KKysKKysgICAgICAgIFtCbGFja0JlcnJ5
XSBTYW5pdGl6ZSBHTFNMIGNvZGUgdXNpbmcgQU5HTEUuCisrCisrICAgICAgICBCbGFja0JlcnJ5
IHBvcnQgZG9lcyBub3Qgc2FuaXRpemUgR0xTTCBjb2RlIHdpdGggQU5HTEUKKysgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04OTU4MworKworKyAgICAgICAg
UmV2aWV3ZWQgYnkgUm9iIEJ1aXMuCisrCisrICAgICAgICAqIHNyYy9jb21waWxlci9vc2luY2x1
ZGUuaDogUmVjb2duaXNlcyBRTlggYXMgUE9TSVgKKysKKysyMDEyLTAzLTI2ICBEZWFuIEphY2tz
b24gIDxkaW5vQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFVwZGF0ZSBBTkdMRSBpbiBXZWJLaXQK
KysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04MTcxNwor
KworKyAgICAgICAgUmV2aWV3ZWQgYnkgS2VubmV0aCBSdXNzZWxsLgorKworKyAgICAgICAgVXBk
YXRlIGFuZ2xlcHJvamVjdCB0byByMTAwOS4gU3luY2VkIHRoZSBzb3VyY2UgZGlyZWN0b3J5Cisr
ICAgICAgICBiZXR3ZWVuIHRoZSBhbmdsZSByZXBvc2l0b3J5IGFuZCBXZWJLaXQuIFJhbiB0aGUg
T1MgWCBMaW9uCisrICAgICAgICB2ZXJzaW9uIG9mIEJpc29uIG92ZXIgdGhlIGdsc2xhbmcubCBp
bnB1dCB3aGljaCBnZW5lcmF0ZXMKKysgICAgICAgIGEgc2xpZ2h0bHkgZGlmZmVyZW50IG91dHB1
dCB0aGFuIGFuZ2xlIHByb3ZpZGVkLgorKworKyAgICAgICAgKiBpbmNsdWRlL0VHTC9lZ2xleHQu
aDoKKysgICAgICAgICogaW5jbHVkZS9HTEVTMi9nbDJleHQuaDoKKysgICAgICAgICogaW5jbHVk
ZS9HTFNMQU5HL1NoYWRlckxhbmcuaDoKKysgICAgICAgICogc3JjL2NvbW1vbi9SZWZDb3VudE9i
amVjdC5jcHA6IFJlbmFtZWQgZnJvbSBTb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliR0xF
U3YyL1JlZkNvdW50T2JqZWN0LmNwcC4KKysgICAgICAgIChSZWZDb3VudE9iamVjdDo6UmVmQ291
bnRPYmplY3QpOgorKyAgICAgICAgKFJlZkNvdW50T2JqZWN0Ojp+UmVmQ291bnRPYmplY3QpOgor
KyAgICAgICAgKFJlZkNvdW50T2JqZWN0OjphZGRSZWYpOgorKyAgICAgICAgKFJlZkNvdW50T2Jq
ZWN0OjpyZWxlYXNlKToKKysgICAgICAgIChSZWZDb3VudE9iamVjdEJpbmRpbmdQb2ludGVyOjpz
ZXQpOgorKyAgICAgICAgKiBzcmMvY29tbW9uL1JlZkNvdW50T2JqZWN0Lmg6IFJlbmFtZWQgZnJv
bSBTb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliR0xFU3YyL1JlZkNvdW50T2JqZWN0Lmgu
CisrICAgICAgICAoUmVmQ291bnRPYmplY3QpOgorKyAgICAgICAgKFJlZkNvdW50T2JqZWN0Ojpp
ZCk6CisrICAgICAgICAoUmVmQ291bnRPYmplY3RCaW5kaW5nUG9pbnRlcik6CisrICAgICAgICAo
UmVmQ291bnRPYmplY3RCaW5kaW5nUG9pbnRlcjo6UmVmQ291bnRPYmplY3RCaW5kaW5nUG9pbnRl
cik6CisrICAgICAgICAoUmVmQ291bnRPYmplY3RCaW5kaW5nUG9pbnRlcjo6flJlZkNvdW50T2Jq
ZWN0QmluZGluZ1BvaW50ZXIpOgorKyAgICAgICAgKFJlZkNvdW50T2JqZWN0QmluZGluZ1BvaW50
ZXI6OmdldCk6CisrICAgICAgICAoUmVmQ291bnRPYmplY3RCaW5kaW5nUG9pbnRlcjo6aWQpOgor
KyAgICAgICAgKFJlZkNvdW50T2JqZWN0QmluZGluZ1BvaW50ZXI6Om9wZXJhdG9yICEgKToKKysg
ICAgICAgIChCaW5kaW5nUG9pbnRlcik6CisrICAgICAgICAoQmluZGluZ1BvaW50ZXI6OnNldCk6
CisrICAgICAgICAoQmluZGluZ1BvaW50ZXI6OmdldCk6CisrICAgICAgICAoQmluZGluZ1BvaW50
ZXI6Om9wZXJhdG9yIC0+ICk6CisrICAgICAgICAqIHNyYy9jb21tb24vZGVidWcuY3BwOgorKyAg
ICAgICAgKGdsOjpvdXRwdXQpOgorKyAgICAgICAgKiBzcmMvY29tbW9uL3ZlcnNpb24uaDoKKysg
ICAgICAgICogc3JjL2NvbXBpbGVyL0Jhc2VUeXBlcy5oOgorKyAgICAgICAgKiBzcmMvY29tcGls
ZXIvQ29tcGlsZXIuY3BwOgorKyAgICAgICAgKFRDb21waWxlcjo6VENvbXBpbGVyKToKKysgICAg
ICAgIChUQ29tcGlsZXI6On5UQ29tcGlsZXIpOgorKyAgICAgICAgKFRDb21waWxlcjo6bWFwTG9u
Z1ZhcmlhYmxlTmFtZXMpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvQ29uc3RhbnRVbmlvbi5o
OgorKyAgICAgICAgKENvbnN0YW50VW5pb246OkNvbnN0YW50VW5pb24pOgorKyAgICAgICAgKENv
bnN0YW50VW5pb246Om9wZXJhdG9yPT0pOgorKyAgICAgICAgKENvbnN0YW50VW5pb246Om9wZXJh
dG9yPik6CisrICAgICAgICAoQ29uc3RhbnRVbmlvbjo6b3BlcmF0b3I8KToKKysgICAgICAgICog
c3JjL2NvbXBpbGVyL0ludGVybWVkaWF0ZS5jcHA6CisrICAgICAgICAoVEludGVybUNvbnN0YW50
VW5pb246OmZvbGQpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvTWFwTG9uZ1ZhcmlhYmxlTmFt
ZXMuY3BwOgorKyAgICAgICAgKExvbmdOYW1lTWFwOjpMb25nTmFtZU1hcCk6CisrICAgICAgICAo
TG9uZ05hbWVNYXA6On5Mb25nTmFtZU1hcCk6CisrICAgICAgICAoTG9uZ05hbWVNYXA6OkdldElu
c3RhbmNlKToKKysgICAgICAgIChMb25nTmFtZU1hcDo6UmVsZWFzZSk6CisrICAgICAgICAoTG9u
Z05hbWVNYXA6OkZpbmQpOgorKyAgICAgICAgKExvbmdOYW1lTWFwOjpJbnNlcnQpOgorKyAgICAg
ICAgKExvbmdOYW1lTWFwOjpTaXplKToKKysgICAgICAgIChNYXBMb25nVmFyaWFibGVOYW1lczo6
TWFwTG9uZ1ZhcmlhYmxlTmFtZXMpOgorKyAgICAgICAgKE1hcExvbmdWYXJpYWJsZU5hbWVzOjp2
aXNpdFN5bWJvbCk6CisrICAgICAgICAoTWFwTG9uZ1ZhcmlhYmxlTmFtZXM6Om1hcEdsb2JhbExv
bmdOYW1lKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL01hcExvbmdWYXJpYWJsZU5hbWVzLmg6
CisrICAgICAgICAoTG9uZ05hbWVNYXApOgorKyAgICAgICAgKE1hcExvbmdWYXJpYWJsZU5hbWVz
KToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL091dHB1dEhMU0wuY3BwOgorKyAgICAgICAgKHNo
OjpPdXRwdXRITFNMOjpPdXRwdXRITFNMKToKKysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6aGVh
ZGVyKToKKysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6dmlzaXRTeW1ib2wpOgorKyAgICAgICAg
KHNoOjpPdXRwdXRITFNMOjp2aXNpdFVuYXJ5KToKKysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6
dmlzaXRBZ2dyZWdhdGUpOgorKyAgICAgICAgKHNoOjpPdXRwdXRITFNMOjp2aXNpdExvb3ApOgor
KyAgICAgICAgKHNoOjpPdXRwdXRITFNMOjpoYW5kbGVFeGNlc3NpdmVMb29wKToKKysgICAgICAg
IChzaDo6T3V0cHV0SExTTDo6dHlwZVN0cmluZyk6CisrICAgICAgICAoc2g6Ok91dHB1dEhMU0w6
OmFkZENvbnN0cnVjdG9yKToKKysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6ZGVjb3JhdGVVbmlm
b3JtKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL091dHB1dEhMU0wuaDoKKysgICAgICAgIChP
dXRwdXRITFNMKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL1Bvb2xBbGxvYy5jcHA6CisrICAg
ICAgICAoVEFsbG9jYXRpb246OmNoZWNrR3VhcmRCbG9jayk6CisrICAgICAgICAqIHNyYy9jb21w
aWxlci9TaEhhbmRsZS5oOgorKyAgICAgICAgKFRDb21waWxlcik6CisrICAgICAgICAqIHNyYy9j
b21waWxlci9TeW1ib2xUYWJsZS5jcHA6CisrICAgICAgICAqIHNyYy9jb21waWxlci9TeW1ib2xU
YWJsZS5oOgorKyAgICAgICAgKFRTeW1ib2xUYWJsZSk6CisrICAgICAgICAoVFN5bWJvbFRhYmxl
OjpnZXRPdXRlckxldmVsKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL1ZhcmlhYmxlSW5mby5j
cHA6CisrICAgICAgICAoZ2V0VmFyaWFibGVEYXRhVHlwZSk6CisrICAgICAgICAqIHNyYy9jb21w
aWxlci9nbHNsYW5nLmw6CisrICAgICAgICAqIHNyYy9jb21waWxlci9nbHNsYW5nLnk6CisrICAg
ICAgICAqIHNyYy9jb21waWxlci9nbHNsYW5nX2xleC5jcHA6CisrICAgICAgICAoeXlfYnVmZmVy
X3N0YXRlKToKKysgICAgICAgICh5eWd1dHNfdCk6CisrICAgICAgICAoaW5wdXQpOgorKyAgICAg
ICAgKHl5ZW5zdXJlX2J1ZmZlcl9zdGFjayk6CisrICAgICAgICAoeXlfc2Nhbl9ieXRlcyk6Cisr
ICAgICAgICAoeXlnZXRfbGVuZyk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9nbHNsYW5nX3Rh
Yi5jcHA6CisrICAgICAgICAqIHNyYy9jb21waWxlci9vc2luY2x1ZGUuaDoKKysgICAgICAgICog
c3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9jcHAuYzoKKysgICAgICAgICogc3JjL2NvbXBpbGVy
L3ByZXByb2Nlc3Nvci9tZW1vcnkuYzoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nl
c3Nvci9uZXcvQ29udGV4dC5jcHA6IEFkZGVkLgorKyAgICAgICAgKGlzTWFjcm9OYW1lUmVzZXJ2
ZWQpOgorKyAgICAgICAgKHBwKToKKysgICAgICAgIChwcDo6Q29udGV4dDo6Q29udGV4dCk6Cisr
ICAgICAgICAocHA6OkNvbnRleHQ6On5Db250ZXh0KToKKysgICAgICAgIChwcDo6Q29udGV4dDo6
aW5pdCk6CisrICAgICAgICAocHA6OkNvbnRleHQ6OnByb2Nlc3MpOgorKyAgICAgICAgKHBwOjpD
b250ZXh0OjpkZWZpbmVNYWNybyk6CisrICAgICAgICAocHA6OkNvbnRleHQ6OnVuZGVmaW5lTWFj
cm8pOgorKyAgICAgICAgKHBwOjpDb250ZXh0Ojppc01hY3JvRGVmaW5lZCk6CisrICAgICAgICAo
cHA6OkNvbnRleHQ6OnJlc2V0KToKKysgICAgICAgIChwcDo6Q29udGV4dDo6ZGVmaW5lQnVpbHRJ
bk1hY3JvKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9uZXcvQ29udGV4
dC5oOiBBZGRlZC4KKysgICAgICAgIChwcCk6CisrICAgICAgICAoQ29udGV4dCk6CisrICAgICAg
ICAocHA6OkNvbnRleHQ6OmxleGVyKToKKysgICAgICAgIChwcDo6Q29udGV4dDo6b3V0cHV0KToK
KysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9uZXcvSW5wdXQuY3BwOiBBZGRl
ZC4KKysgICAgICAgIChwcCk6CisrICAgICAgICAocHA6OklucHV0OjpJbnB1dCk6CisrICAgICAg
ICAocHA6OklucHV0Ojplb2YpOgorKyAgICAgICAgKHBwOjpJbnB1dDo6cmVhZCk6CisrICAgICAg
ICAocHA6OklucHV0OjpnZXRDaGFyKToKKysgICAgICAgIChwcDo6SW5wdXQ6OnBlZWtDaGFyKToK
KysgICAgICAgIChwcDo6SW5wdXQ6OnN3aXRjaFRvTmV4dFN0cmluZyk6CisrICAgICAgICAocHA6
OklucHV0Ojppc1N0cmluZ0VtcHR5KToKKysgICAgICAgIChwcDo6SW5wdXQ6OnN0cmluZ0xlbmd0
aCk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvbmV3L0lucHV0Lmg6IEFk
ZGVkLgorKyAgICAgICAgKHBwKToKKysgICAgICAgIChJbnB1dCk6CisrICAgICAgICAocHA6Oklu
cHV0OjplcnJvcik6CisrICAgICAgICAocHA6OklucHV0OjpzdHJpbmdJbmRleCk6CisrICAgICAg
ICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvbmV3L01hY3JvLmNwcDogQWRkZWQuCisrICAg
ICAgICAocHApOgorKyAgICAgICAgKHBwOjpNYWNybzo6TWFjcm8pOgorKyAgICAgICAgKHBwOjpN
YWNybzo6fk1hY3JvKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9uZXcv
TWFjcm8uaDogQWRkZWQuCisrICAgICAgICAocHApOgorKyAgICAgICAgKE1hY3JvKToKKysgICAg
ICAgIChwcDo6TWFjcm86OnR5cGUpOgorKyAgICAgICAgKHBwOjpNYWNybzo6aWRlbnRpZmllcik6
CisrICAgICAgICAocHA6Ok1hY3JvOjpwYXJhbWV0ZXJzKToKKysgICAgICAgIChwcDo6TWFjcm86
OnJlcGxhY2VtZW50cyk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvbmV3
L1ByZXByb2Nlc3Nvci5jcHA6IEFkZGVkLgorKyAgICAgICAgKHBwKToKKysgICAgICAgIChwcDo6
UHJlcHJvY2Vzc29yOjpQcmVwcm9jZXNzb3IpOgorKyAgICAgICAgKHBwOjpQcmVwcm9jZXNzb3I6
On5QcmVwcm9jZXNzb3IpOgorKyAgICAgICAgKHBwOjpQcmVwcm9jZXNzb3I6OmluaXQpOgorKyAg
ICAgICAgKHBwOjpQcmVwcm9jZXNzb3I6OnByb2Nlc3MpOgorKyAgICAgICAgKHBwOjpQcmVwcm9j
ZXNzb3I6OnJlc2V0KToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9uZXcv
UHJlcHJvY2Vzc29yLmg6IEFkZGVkLgorKyAgICAgICAgKHBwKToKKysgICAgICAgIChQcmVwcm9j
ZXNzb3IpOgorKyAgICAgICAgKHBwOjpQcmVwcm9jZXNzb3I6OmJlZ2luKToKKysgICAgICAgIChw
cDo6UHJlcHJvY2Vzc29yOjplbmQpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vz
c29yL25ldy9Ub2tlbi5jcHA6IEFkZGVkLgorKyAgICAgICAgKHBwKToKKysgICAgICAgIChwcDo6
VG9rZW46OmVuY29kZUxvY2F0aW9uKToKKysgICAgICAgIChwcDo6VG9rZW46OmRlY29kZUxvY2F0
aW9uKToKKysgICAgICAgIChwcDo6VG9rZW46OlRva2VuKToKKysgICAgICAgIChwcDo6VG9rZW46
On5Ub2tlbik6CisrICAgICAgICAocHA6Om9wZXJhdG9yPDwpOgorKyAgICAgICAgKiBzcmMvY29t
cGlsZXIvcHJlcHJvY2Vzc29yL25ldy9Ub2tlbi5oOiBBZGRlZC4KKysgICAgICAgIChwcCk6Cisr
ICAgICAgICAoVG9rZW4pOgorKyAgICAgICAgKHBwOjpUb2tlbjo6bG9jYXRpb24pOgorKyAgICAg
ICAgKHBwOjpUb2tlbjo6dHlwZSk6CisrICAgICAgICAocHA6OlRva2VuOjp2YWx1ZSk6CisrICAg
ICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvbmV3L2dlbmVyYXRlX3BhcnNlci5zaDog
QWRkZWQuCisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvbmV3L3BwLmw6IEFk
ZGVkLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL25ldy9wcC55OiBBZGRl
ZC4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9uZXcvcHBfbGV4LmNwcDog
QWRkZWQuCisrICAgICAgICAoeXlfYnVmZmVyX3N0YXRlKToKKysgICAgICAgICh5eV90cmFuc19p
bmZvKToKKysgICAgICAgICh5eWd1dHNfdCk6CisrICAgICAgICAoeXlfZ2V0X3ByZXZpb3VzX3N0
YXRlKToKKysgICAgICAgICh5eV90cnlfTlVMX3RyYW5zKToKKysgICAgICAgIChpbnB1dCk6Cisr
ICAgICAgICAocHByZXN0YXJ0KToKKysgICAgICAgIChwcF9zd2l0Y2hfdG9fYnVmZmVyKToKKysg
ICAgICAgIChwcF9sb2FkX2J1ZmZlcl9zdGF0ZSk6CisrICAgICAgICAocHBfY3JlYXRlX2J1ZmZl
cik6CisrICAgICAgICAocHBfZGVsZXRlX2J1ZmZlcik6CisrICAgICAgICAocHBfaW5pdF9idWZm
ZXIpOgorKyAgICAgICAgKHBwX2ZsdXNoX2J1ZmZlcik6CisrICAgICAgICAocHBwdXNoX2J1ZmZl
cl9zdGF0ZSk6CisrICAgICAgICAocHBwb3BfYnVmZmVyX3N0YXRlKToKKysgICAgICAgIChwcGVu
c3VyZV9idWZmZXJfc3RhY2spOgorKyAgICAgICAgKHBwX3NjYW5fYnVmZmVyKToKKysgICAgICAg
IChwcF9zY2FuX3N0cmluZyk6CisrICAgICAgICAocHBfc2Nhbl9ieXRlcyk6CisrICAgICAgICAo
eXlfcHVzaF9zdGF0ZSk6CisrICAgICAgICAoeXlfcG9wX3N0YXRlKToKKysgICAgICAgICh5eV90
b3Bfc3RhdGUpOgorKyAgICAgICAgKHl5X2ZhdGFsX2Vycm9yKToKKysgICAgICAgIChwcGdldF9l
eHRyYSk6CisrICAgICAgICAocHBnZXRfbGluZW5vKToKKysgICAgICAgIChwcGdldF9jb2x1bW4p
OgorKyAgICAgICAgKHBwZ2V0X2luKToKKysgICAgICAgIChwcGdldF9vdXQpOgorKyAgICAgICAg
KHBwZ2V0X2xlbmcpOgorKyAgICAgICAgKHBwZ2V0X3RleHQpOgorKyAgICAgICAgKHBwc2V0X2V4
dHJhKToKKysgICAgICAgIChwcHNldF9saW5lbm8pOgorKyAgICAgICAgKHBwc2V0X2NvbHVtbik6
CisrICAgICAgICAocHBzZXRfaW4pOgorKyAgICAgICAgKHBwc2V0X291dCk6CisrICAgICAgICAo
cHBnZXRfZGVidWcpOgorKyAgICAgICAgKHBwc2V0X2RlYnVnKToKKysgICAgICAgIChwcGdldF9s
dmFsKToKKysgICAgICAgIChwcHNldF9sdmFsKToKKysgICAgICAgIChwcGdldF9sbG9jKToKKysg
ICAgICAgIChwcHNldF9sbG9jKToKKysgICAgICAgIChwcGxleF9pbml0KToKKysgICAgICAgIChw
cGxleF9pbml0X2V4dHJhKToKKysgICAgICAgICh5eV9pbml0X2dsb2JhbHMpOgorKyAgICAgICAg
KHBwbGV4X2Rlc3Ryb3kpOgorKyAgICAgICAgKHl5X2ZsZXhfc3RybmNweSk6CisrICAgICAgICAo
eXlfZmxleF9zdHJsZW4pOgorKyAgICAgICAgKHBwYWxsb2MpOgorKyAgICAgICAgKHBwcmVhbGxv
Yyk6CisrICAgICAgICAocHBmcmVlKToKKysgICAgICAgIChleHRyYWN0TWFjcm9OYW1lKToKKysg
ICAgICAgIChwcCk6CisrICAgICAgICAocHA6OkNvbnRleHQ6OnJlYWRJbnB1dCk6CisrICAgICAg
ICAocHA6OkNvbnRleHQ6OmluaXRMZXhlcik6CisrICAgICAgICAocHA6OkNvbnRleHQ6OmRlc3Ry
b3lMZXhlcik6CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvbmV3L3BwX3Rh
Yi5jcHA6IEFkZGVkLgorKyAgICAgICAgKFlZTFRZUEUpOgorKyAgICAgICAgKHl5c3ludGF4X2Vy
cm9yKToKKysgICAgICAgICh5eWVycm9yKToKKysgICAgICAgIChwdXNoQ29uZGl0aW9uYWxCbG9j
ayk6CisrICAgICAgICAocG9wQ29uZGl0aW9uYWxCbG9jayk6CisrICAgICAgICAocHA6OkNvbnRl
eHQ6OnBhcnNlKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9uZXcvcHBf
dGFiLmg6IEFkZGVkLgorKyAgICAgICAgKFlZTFRZUEUpOgorKyAgICAgICAgKiBzcmMvY29tcGls
ZXIvcHJlcHJvY2Vzc29yL25ldy9zdGxfdXRpbHMuaDogQWRkZWQuCisrICAgICAgICAocHApOgor
KyAgICAgICAgKERlbGV0ZSk6CisrICAgICAgICAocHA6OkRlbGV0ZTo6b3BlcmF0b3IoKSk6Cisr
ICAgICAgICAoRGVsZXRlU2Vjb25kKToKKysgICAgICAgIChwcDo6RGVsZXRlU2Vjb25kOjpvcGVy
YXRvcigpKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9uZXcvdG9rZW5f
dHlwZS5oOiBBZGRlZC4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9zY2Fu
bmVyLmM6CisrICAgICAgICAoeXlsZXhfQ1BQKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3By
ZXByb2Nlc3Nvci9zeW1ib2xzLmM6CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNz
b3IvdG9rZW5zLmM6CisrICAgICAgICAqIHNyYy9saWJFR0wvQ29uZmlnLmNwcDoKKysgICAgICAg
IChlZ2w6OkNvbmZpZ1NldDo6Z2V0Q29uZmlncyk6CisrICAgICAgICAqIHNyYy9saWJFR0wvRGlz
cGxheS5jcHA6CisrICAgICAgICAoZWdsOjpEaXNwbGF5Ojppbml0aWFsaXplKToKKysgICAgICAg
IChlZ2w6OkRpc3BsYXk6OnRlcm1pbmF0ZSk6CisrICAgICAgICAoZWdsOjpEaXNwbGF5OjpyZXN0
b3JlTG9zdERldmljZSk6CisrICAgICAgICAoZWdsOjpEaXNwbGF5OjpzeW5jKToKKysgICAgICAg
IChlZ2wpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6YWxsb2NhdGVFdmVudFF1ZXJ5KToKKysg
ICAgICAgIChlZ2w6OkRpc3BsYXk6OmZyZWVFdmVudFF1ZXJ5KToKKysgICAgICAgIChlZ2w6OkRp
c3BsYXk6OmdldEZsb2F0MzJUZXh0dXJlU3VwcG9ydCk6CisrICAgICAgICAoZWdsOjpEaXNwbGF5
OjpnZXRGbG9hdDE2VGV4dHVyZVN1cHBvcnQpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6Z2V0
RXZlbnRRdWVyeVN1cHBvcnQpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6aW5pdEV4dGVuc2lv
blN0cmluZyk6CisrICAgICAgICAoZWdsOjpEaXNwbGF5OjpzaGFyZUhhbmRsZVN1cHBvcnRlZCk6
CisrICAgICAgICAoZWdsOjpEaXNwbGF5OjpnZXRPY2NsdXNpb25RdWVyeVN1cHBvcnQpOgorKyAg
ICAgICAgKGVnbDo6RGlzcGxheTo6Z2V0SW5zdGFuY2luZ1N1cHBvcnQpOgorKyAgICAgICAgKiBz
cmMvbGliRUdML0Rpc3BsYXkuaDoKKysgICAgICAgIChEaXNwbGF5KToKKysgICAgICAgIChlZ2w6
OkRpc3BsYXk6OmlzRDNkOUV4RGV2aWNlKToKKysgICAgICAgICogc3JjL2xpYkVHTC9TdXJmYWNl
LmNwcDoKKysgICAgICAgIChlZ2w6OlN1cmZhY2U6OnJlc2V0U3dhcENoYWluKToKKysgICAgICAg
ICogc3JjL2xpYkVHTC9saWJFR0wuY3BwOgorKyAgICAgICAgKiBzcmMvbGliRUdML2xpYkVHTC52
Y3Byb2o6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvQmxpdC5jcHA6CisrICAgICAgICAoZ2w6
OkJsaXQ6OnNldENvbW1vbkJsaXRTdGF0ZSk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvQnVm
ZmVyLmg6CisrICAgICAgICAoQnVmZmVyKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9Db250
ZXh0LmNwcDoKKysgICAgICAgIChnbDo6Q29udGV4dDo6Q29udGV4dCk6CisrICAgICAgICAoZ2w6
OkNvbnRleHQ6On5Db250ZXh0KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6bWFrZUN1cnJlbnQp
OgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRBY3RpdmVRdWVyeSk6CisrICAgICAgICAoZ2wp
OgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpjcmVhdGVGZW5jZSk6CisrICAgICAgICAoZ2w6OkNv
bnRleHQ6OmNyZWF0ZVF1ZXJ5KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6ZGVsZXRlUXVlcnkp
OgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpiZWdpblF1ZXJ5KToKKysgICAgICAgIChnbDo6Q29u
dGV4dDo6ZW5kUXVlcnkpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRRdWVyeSk6CisrICAg
ICAgICAoZ2w6OkNvbnRleHQ6OmFwcGx5VmVydGV4QnVmZmVyKToKKysgICAgICAgIChnbDo6Q29u
dGV4dDo6YXBwbHlJbmRleEJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnJlYWRQaXhl
bHMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpjbGVhcik6CisrICAgICAgICAoZ2w6OkNvbnRl
eHQ6OmRyYXdBcnJheXMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpkcmF3RWxlbWVudHMpOgor
KyAgICAgICAgKGdsOjpDb250ZXh0OjpzeW5jKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6ZHJh
d0xpbmVMb29wKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c3VwcG9ydHNPY2NsdXNpb25RdWVy
aWVzKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c3VwcG9ydHNJbnN0YW5jaW5nKToKKysgICAg
ICAgIChnbDo6Q29udGV4dDo6c2V0VmVydGV4QXR0cmliRGl2aXNvcik6CisrICAgICAgICAoZ2w6
OkNvbnRleHQ6OmluaXRFeHRlbnNpb25TdHJpbmcpOgorKyAgICAgICAgKGdsOjpWZXJ0ZXhEZWNs
YXJhdGlvbkNhY2hlOjphcHBseURlY2xhcmF0aW9uKToKKysgICAgICAgIChnbDo6VmVydGV4RGVj
bGFyYXRpb25DYWNoZTo6bWFya1N0YXRlRGlydHkpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3Yy
L0NvbnRleHQuaDoKKysgICAgICAgIChnbCk6CisrICAgICAgICAoZ2w6OlZlcnRleEF0dHJpYnV0
ZTo6VmVydGV4QXR0cmlidXRlKToKKysgICAgICAgIChTdGF0ZSk6CisrICAgICAgICAoVmVydGV4
RGVjbGFyYXRpb25DYWNoZSk6CisrICAgICAgICAoQ29udGV4dCk6CisrICAgICAgICAqIHNyYy9s
aWJHTEVTdjIvRmVuY2UuY3BwOgorKyAgICAgICAgKGdsOjpGZW5jZTo6RmVuY2UpOgorKyAgICAg
ICAgKGdsOjpGZW5jZTo6fkZlbmNlKToKKysgICAgICAgIChnbDo6RmVuY2U6OnNldEZlbmNlKToK
KysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9GZW5jZS5oOgorKyAgICAgICAgKGVnbCk6CisrICAg
ICAgICAoRmVuY2UpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL0ZyYW1lYnVmZmVyLmNwcDoK
KysgICAgICAgIChnbDo6RnJhbWVidWZmZXI6Omxvb2t1cFJlbmRlcmJ1ZmZlcik6CisrICAgICAg
ICAoZ2w6OkZyYW1lYnVmZmVyOjpkZXRhY2hUZXh0dXJlKToKKysgICAgICAgIChnbDo6RnJhbWVi
dWZmZXI6OmNvbXBsZXRlbmVzcyk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvRnJhbWVidWZm
ZXIuaDoKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9JbmRleERhdGFNYW5hZ2VyLmNwcDoKKysg
ICAgICAgIChnbDo6SW5kZXhEYXRhTWFuYWdlcjo6SW5kZXhEYXRhTWFuYWdlcik6CisrICAgICAg
ICAoZ2w6OkluZGV4RGF0YU1hbmFnZXI6On5JbmRleERhdGFNYW5hZ2VyKToKKysgICAgICAgIChn
bDo6Y29tcHV0ZVJhbmdlKToKKysgICAgICAgIChnbDo6SW5kZXhEYXRhTWFuYWdlcjo6cHJlcGFy
ZUluZGV4RGF0YSk6CisrICAgICAgICAoZ2w6OkluZGV4RGF0YU1hbmFnZXI6OmdldENvdW50aW5n
SW5kaWNlcyk6CisrICAgICAgICAoZ2wpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL0luZGV4
RGF0YU1hbmFnZXIuaDoKKysgICAgICAgIChJbmRleERhdGFNYW5hZ2VyKToKKysgICAgICAgICog
c3JjL2xpYkdMRVN2Mi9Qcm9ncmFtLmNwcDoKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6Z2V0VW5p
Zm9ybUxvY2F0aW9uKToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6c2V0VW5pZm9ybTFmdik6Cisr
ICAgICAgICAoZ2w6OlByb2dyYW06OnNldFVuaWZvcm0yZnYpOgorKyAgICAgICAgKGdsOjpQcm9n
cmFtOjpzZXRVbmlmb3JtM2Z2KToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6c2V0VW5pZm9ybTRm
dik6CisrICAgICAgICAoZ2w6OlByb2dyYW06OnNldFVuaWZvcm0xaXYpOgorKyAgICAgICAgKGds
OjpQcm9ncmFtOjpzZXRVbmlmb3JtMml2KToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6c2V0VW5p
Zm9ybTNpdik6CisrICAgICAgICAoZ2w6OlByb2dyYW06OnNldFVuaWZvcm00aXYpOgorKyAgICAg
ICAgKGdsOjpQcm9ncmFtOjpwYWNrVmFyeWluZ3MpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjps
aW5rVmFyeWluZ3MpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpkZWZpbmVVbmlmb3JtKToKKysg
ICAgICAgIChnbDo6UHJvZ3JhbTo6Y3JlYXRlVW5pZm9ybSk6CisrICAgICAgICAoZ2w6OlByb2dy
YW06OmFwcGx5VW5pZm9ybW5idik6CisrICAgICAgICAoZ2w6OlByb2dyYW06OmFwcGx5VW5pZm9y
bTFpdik6CisrICAgICAgICAoZ2w6OlByb2dyYW06OmFwcGx5VW5pZm9ybTJpdik6CisrICAgICAg
ICAoZ2w6OlByb2dyYW06OmFwcGx5VW5pZm9ybTNpdik6CisrICAgICAgICAoZ2w6OlByb2dyYW06
OmFwcGx5VW5pZm9ybTRpdik6CisrICAgICAgICAoZ2w6OlByb2dyYW06OmdldEluZm9Mb2cpOgor
KyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1Byb2dyYW0uaDoKKysgICAgICAgIChQcm9ncmFtKToK
KysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9RdWVyeS5jcHA6IEFkZGVkLgorKyAgICAgICAgKGds
KToKKysgICAgICAgIChnbDo6UXVlcnk6OlF1ZXJ5KToKKysgICAgICAgIChnbDo6UXVlcnk6On5R
dWVyeSk6CisrICAgICAgICAoZ2w6OlF1ZXJ5OjpiZWdpbik6CisrICAgICAgICAoZ2w6OlF1ZXJ5
OjplbmQpOgorKyAgICAgICAgKGdsOjpRdWVyeTo6Z2V0UmVzdWx0KToKKysgICAgICAgIChnbDo6
UXVlcnk6OmlzUmVzdWx0QXZhaWxhYmxlKToKKysgICAgICAgIChnbDo6UXVlcnk6OmdldFR5cGUp
OgorKyAgICAgICAgKGdsOjpRdWVyeTo6dGVzdFF1ZXJ5KToKKysgICAgICAgICogc3JjL2xpYkdM
RVN2Mi9RdWVyeS5oOiBBZGRlZC4KKysgICAgICAgIChnbCk6CisrICAgICAgICAoUXVlcnkpOgor
KyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1JlbmRlcmJ1ZmZlci5jcHA6CisrICAgICAgICAoZ2wp
OgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJJbnRlcmZhY2U6OmFkZFByb3h5UmVmKToKKysg
ICAgICAgIChnbDo6UmVuZGVyYnVmZmVySW50ZXJmYWNlOjpyZWxlYXNlUHJveHkpOgorKyAgICAg
ICAgKGdsOjpSZW5kZXJidWZmZXJUZXh0dXJlOjpSZW5kZXJidWZmZXJUZXh0dXJlKToKKysgICAg
ICAgIChnbDo6UmVuZGVyYnVmZmVyVGV4dHVyZTo6flJlbmRlcmJ1ZmZlclRleHR1cmUpOgorKyAg
ICAgICAgKGdsOjpSZW5kZXJidWZmZXJUZXh0dXJlOjphZGRQcm94eVJlZik6CisrICAgICAgICAo
Z2w6OlJlbmRlcmJ1ZmZlclRleHR1cmU6OnJlbGVhc2VQcm94eSk6CisrICAgICAgICAoZ2w6OlJl
bmRlcmJ1ZmZlcjo6YWRkUmVmKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyOjpyZWxlYXNl
KToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9SZW5kZXJidWZmZXIuaDoKKysgICAgICAgIChn
bCk6CisrICAgICAgICAoUmVuZGVyYnVmZmVySW50ZXJmYWNlKToKKysgICAgICAgIChSZW5kZXJi
dWZmZXJUZXh0dXJlKToKKysgICAgICAgIChSZW5kZXJidWZmZXIpOgorKyAgICAgICAgKiBzcmMv
bGliR0xFU3YyL1NoYWRlci5jcHA6CisrICAgICAgICAoZ2w6OlNoYWRlcjo6U2hhZGVyKToKKysg
ICAgICAgIChnbDo6U2hhZGVyOjpnZXRJbmZvTG9nKToKKysgICAgICAgIChnbDo6U2hhZGVyOjpn
ZXRTb3VyY2VJbXBsKToKKysgICAgICAgIChnbCk6CisrICAgICAgICAoZ2w6OlNoYWRlcjo6aW5p
dGlhbGl6ZUNvbXBpbGVyKToKKysgICAgICAgIChnbDo6U2hhZGVyOjpwYXJzZVZhcnlpbmdzKToK
KysgICAgICAgIChnbDo6U2hhZGVyOjp1bmNvbXBpbGUpOgorKyAgICAgICAgKGdsOjpTaGFkZXI6
OmNvbXBpbGVUb0hMU0wpOgorKyAgICAgICAgKGdsOjpWZXJ0ZXhTaGFkZXI6OnVuY29tcGlsZSk6
CisrICAgICAgICAoZ2w6OlZlcnRleFNoYWRlcjo6Y29tcGlsZSk6CisrICAgICAgICAoZ2w6OlZl
cnRleFNoYWRlcjo6cGFyc2VBdHRyaWJ1dGVzKToKKysgICAgICAgIChnbDo6RnJhZ21lbnRTaGFk
ZXI6OmNvbXBpbGUpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1NoYWRlci5oOgorKyAgICAg
ICAgKFNoYWRlcik6CisrICAgICAgICAoVmVydGV4U2hhZGVyKToKKysgICAgICAgICogc3JjL2xp
YkdMRVN2Mi9UZXh0dXJlLmNwcDoKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjpUZXh0dXJlMkQp
OgorKyAgICAgICAgKGdsOjpUZXh0dXJlMkQ6On5UZXh0dXJlMkQpOgorKyAgICAgICAgKGdsKToK
KysgICAgICAgIChnbDo6VGV4dHVyZTJEOjphZGRQcm94eVJlZik6CisrICAgICAgICAoZ2w6OlRl
eHR1cmUyRDo6cmVsZWFzZVByb3h5KToKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjpnZXRSZW5k
ZXJidWZmZXIpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6VGV4dHVyZUN1YmVNYXAp
OgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6flRleHR1cmVDdWJlTWFwKToKKysgICAg
ICAgIChnbDo6VGV4dHVyZUN1YmVNYXA6OmFkZFByb3h5UmVmKToKKysgICAgICAgIChnbDo6VGV4
dHVyZUN1YmVNYXA6OnJlbGVhc2VQcm94eSk6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFw
Ojppc1NhbXBsZXJDb21wbGV0ZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpjb252
ZXJ0VG9SZW5kZXJUYXJnZXQpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6Z2V0UmVu
ZGVyYnVmZmVyKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9UZXh0dXJlLmg6CisrICAgICAg
ICAoVGV4dHVyZSk6CisrICAgICAgICAoVGV4dHVyZTJEKToKKysgICAgICAgIChUZXh0dXJlQ3Vi
ZU1hcCk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvVmVydGV4RGF0YU1hbmFnZXIuY3BwOgor
KyAgICAgICAgKGdsOjpWZXJ0ZXhEYXRhTWFuYWdlcjo6d3JpdGVBdHRyaWJ1dGVEYXRhKToKKysg
ICAgICAgIChnbDo6VmVydGV4RGF0YU1hbmFnZXI6OnByZXBhcmVWZXJ0ZXhEYXRhKToKKysgICAg
ICAgIChnbDo6VmVydGV4RGF0YU1hbmFnZXI6OnNwYWNlUmVxdWlyZWQpOgorKyAgICAgICAgKGds
KToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9WZXJ0ZXhEYXRhTWFuYWdlci5oOgorKyAgICAg
ICAgKFRyYW5zbGF0ZWRBdHRyaWJ1dGUpOgorKyAgICAgICAgKFZlcnRleERhdGFNYW5hZ2VyKToK
KysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9saWJHTEVTdjIuY3BwOgorKyAgICAgICAgKiBzcmMv
bGliR0xFU3YyL2xpYkdMRVN2Mi5kZWY6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvbGliR0xF
U3YyLnZjcHJvajoKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi91dGlsaXRpZXMuY3BwOgorKyAg
ICAgICAgKGdsOjpJc0ludGVybmFsVGV4dHVyZVRhcmdldCk6CisrICAgICAgICAqIHNyYy9saWJH
TEVTdjIvdXRpbGl0aWVzLmg6CisrICAgICAgICAoZ2wpOgorKworKzIwMTItMDMtMDkgIEFzaG9k
IE5ha2FzaGlhbiAgPGFzaG9kbmFrYXNoaWFuQHlhaG9vLmNvbT4KKysKKysgICAgICAgIEJhc2gg
c2NyaXB0cyBzaG91bGQgc3VwcG9ydCBMRiBlbmRpbmdzIG9ubHkKKysgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03OTUwOQorKworKyAgICAgICAgUmV2aWV3
ZWQgYnkgRGF2aWQgS2lsemVyLgorKworKyAgICAgICAgKiBzcmMvY29tcGlsZXIvZ2VuZXJhdGVf
cGFyc2VyLnNoOiBBZGRlZCBwcm9wZXJ0eSBzdm46ZW9sLXN0eWxlLgorKworKzIwMTItMDItMjEg
IFNhbSBXZWluaWcgIDxzYW1Ad2Via2l0Lm9yZz4KKysKKysgICAgICAgIEF0dGVtcHQgdG8gZml4
IHRoZSBTbm93IExlb3BhcmQgYnVpbGQuCisrCisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0Jh
c2UueGNjb25maWc6CisrCisrMjAxMi0wMi0yMSAgU2FtIFdlaW5pZyAgPHNhbUB3ZWJraXQub3Jn
PgorKworKyAgICAgICAgVXNlIGxpYmMrKyB3aGVuIGJ1aWxkaW5nIHdpdGggQ2xhbmcgb24gTWFj
CisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Nzg5ODEK
KysKKysgICAgICAgIFJldmlld2VkIGJ5IERhbiBCZXJuc3RlaW4uCisrCisrICAgICAgICAqIENv
bmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWc6CisrCisrMjAxMi0wMS0wNyAgQ2hyaXMgTWFycmlu
ICA8Y21hcnJpbkBhcHBsZS5jb20+CisrCisrICAgICAgICBGaXhlZCBhIHdhcm5pbmcgaW4gR1RL
IGJ1aWxkIG9mIEFOR0xFCisrCisrICAgICAgICBVbnJldmlld2VkLgorKworKyAgICAgICAgKiBz
cmMvY29tcGlsZXIvRGV0ZWN0UmVjdXJzaW9uLmNwcDoKKysgICAgICAgIChEZXRlY3RSZWN1cnNp
b246On5EZXRlY3RSZWN1cnNpb24pOgorKworKzIwMTItMDEtMDYgIE1hcmsgUm93ZSAgPG1yb3dl
QGFwcGxlLmNvbT4KKysKKysgICAgICAgIFJlZ2VuZXJhdGUgYSBmZXcgZmlsZXMgd2l0aCBhIG1v
cmUgYXBwcm9wcmlhdGUgdmVyc2lvbiBvZiBiaXNvbi4KKysKKysgICAgICAgIFJ1YmJlci1zdGFt
cGVkIGJ5IERhbiBCZXJuc3RlaW4uCisrCisrICAgICAgICAqIHNyYy9jb21waWxlci9nbHNsYW5n
Lmw6IFR3ZWFrIHRoZSBpbnB1dCBzbyB0aGF0IGl0IGdlbmVyYXRlcyBjb2RlIHRoYXQgY29tcGls
ZXMgd2l0aG91dCB3YXJuaW5ncy4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL2dsc2xhbmdfbGV4
LmNwcDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL2dsc2xhbmdfdGFiLmNwcDoKKysgICAgICAg
ICogc3JjL2NvbXBpbGVyL2dsc2xhbmdfdGFiLmg6CisrCisrMjAxMi0wMS0wNiAgQ2hyaXMgTWFy
cmluICA8Y21hcnJpbkBhcHBsZS5jb20+CisrCisrICAgICAgICBVcGRhdGUgQU5HTEUgaW4gV2Vi
S2l0IHRyZWUKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD03NTc1MworKworKyAgICAgICAgUmV2aWV3ZWQgYnkgU2ltb24gRnJhc2VyLgorKworKyAgICAg
ICAgVXBkYXRlZCBBTkdMRSB0byByOTM5LiBGaXhlZCBhIGNvbXBpbGVyIGVycm9yIChtaXNzaW5n
IGNhc2UgaW4gc3dpdGNoIHN0YXRlbWVudCkKKysgICAgICAgIGFuZCBhZGRlZCA1IG5ldyBmaWxl
cyB0byB4Y29kZXByb2ouIE90aGVyIHRoYW4gdGhhdCBpdCBpcyBhIHN0cmFpZ2h0IGNvcHkgb2YK
KysgICAgICAgIHRoZSBmaWxlcyBmcm9tIHRoZSBBTkdMRSByZXBvc2l0b3J5LgorKworKyAgICAg
ICAgKiBBTkdMRS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorKyAgICAgICAgKiBpbmNsdWRl
L0VHTC9lZ2xleHQuaDoKKysgICAgICAgICogaW5jbHVkZS9FR0wvZWdscGxhdGZvcm0uaDoKKysg
ICAgICAgICogaW5jbHVkZS9HTEVTMi9nbDJleHQuaDoKKysgICAgICAgICogaW5jbHVkZS9HTFNM
QU5HL1NoYWRlckxhbmcuaDoKKysgICAgICAgICogc3JjL2NvbW1vbi9kZWJ1Zy5jcHA6CisrICAg
ICAgICAoZ2w6Om91dHB1dCk6CisrICAgICAgICAoZ2w6OnRyYWNlKToKKysgICAgICAgIChnbDo6
cGVyZkFjdGl2ZSk6CisrICAgICAgICAoZ2w6OlNjb3BlZFBlcmZFdmVudEhlbHBlcjo6U2NvcGVk
UGVyZkV2ZW50SGVscGVyKToKKysgICAgICAgIChnbDo6U2NvcGVkUGVyZkV2ZW50SGVscGVyOjp+
U2NvcGVkUGVyZkV2ZW50SGVscGVyKToKKysgICAgICAgICogc3JjL2NvbW1vbi92ZXJzaW9uLmg6
CisrICAgICAgICAqIHNyYy9jb21waWxlci9CYXNlVHlwZXMuaDoKKysgICAgICAgIChnZXRCYXNp
Y1N0cmluZyk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9CdWlsdEluRnVuY3Rpb25FbXVsYXRv
ci5jcHA6IEFkZGVkLgorKyAgICAgICAgKEJ1aWx0SW5GdW5jdGlvbkVtdWxhdG9yOjpCdWlsdElu
RnVuY3Rpb25FbXVsYXRvcik6CisrICAgICAgICAoQnVpbHRJbkZ1bmN0aW9uRW11bGF0b3I6OlNl
dEZ1bmN0aW9uQ2FsbGVkKToKKysgICAgICAgIChCdWlsdEluRnVuY3Rpb25FbXVsYXRvcjo6T3V0
cHV0RW11bGF0ZWRGdW5jdGlvbkRlZmluaXRpb24pOgorKyAgICAgICAgKEJ1aWx0SW5GdW5jdGlv
bkVtdWxhdG9yOjpJZGVudGlmeUZ1bmN0aW9uKToKKysgICAgICAgIChCdWlsdEluRnVuY3Rpb25F
bXVsYXRvcjo6TWFya0J1aWx0SW5GdW5jdGlvbnNGb3JFbXVsYXRpb24pOgorKyAgICAgICAgKEJ1
aWx0SW5GdW5jdGlvbkVtdWxhdG9yOjpDbGVhbnVwKToKKysgICAgICAgIChCdWlsdEluRnVuY3Rp
b25FbXVsYXRvcjo6R2V0RW11bGF0ZWRGdW5jdGlvbk5hbWUpOgorKyAgICAgICAgKiBzcmMvY29t
cGlsZXIvQnVpbHRJbkZ1bmN0aW9uRW11bGF0b3IuaDogQWRkZWQuCisrICAgICAgICAqIHNyYy9j
b21waWxlci9Db21waWxlci5jcHA6CisrICAgICAgICAoVENvbXBpbGVyOjpUQ29tcGlsZXIpOgor
KyAgICAgICAgKFRDb21waWxlcjo6Y29tcGlsZSk6CisrICAgICAgICAoVENvbXBpbGVyOjpjbGVh
clJlc3VsdHMpOgorKyAgICAgICAgKFRDb21waWxlcjo6ZGV0ZWN0UmVjdXJzaW9uKToKKysgICAg
ICAgIChUQ29tcGlsZXI6OmdldE1hcHBlZE5hbWVNYXhMZW5ndGgpOgorKyAgICAgICAgKFRDb21w
aWxlcjo6Z2V0QnVpbHRJbkZ1bmN0aW9uRW11bGF0b3IpOgorKyAgICAgICAgKiBzcmMvY29tcGls
ZXIvRGV0ZWN0UmVjdXJzaW9uLmNwcDogQWRkZWQuCisrICAgICAgICAoRGV0ZWN0UmVjdXJzaW9u
OjpGdW5jdGlvbk5vZGU6OkZ1bmN0aW9uTm9kZSk6CisrICAgICAgICAoRGV0ZWN0UmVjdXJzaW9u
OjpGdW5jdGlvbk5vZGU6OmdldE5hbWUpOgorKyAgICAgICAgKERldGVjdFJlY3Vyc2lvbjo6RnVu
Y3Rpb25Ob2RlOjphZGRDYWxsZWUpOgorKyAgICAgICAgKERldGVjdFJlY3Vyc2lvbjo6RnVuY3Rp
b25Ob2RlOjpkZXRlY3RSZWN1cnNpb24pOgorKyAgICAgICAgKERldGVjdFJlY3Vyc2lvbjo6RGV0
ZWN0UmVjdXJzaW9uKToKKysgICAgICAgIChEZXRlY3RSZWN1cnNpb246On5EZXRlY3RSZWN1cnNp
b24pOgorKyAgICAgICAgKERldGVjdFJlY3Vyc2lvbjo6dmlzaXRBZ2dyZWdhdGUpOgorKyAgICAg
ICAgKERldGVjdFJlY3Vyc2lvbjo6ZGV0ZWN0UmVjdXJzaW9uKToKKysgICAgICAgIChEZXRlY3RS
ZWN1cnNpb246OmZpbmRGdW5jdGlvbkJ5TmFtZSk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9E
ZXRlY3RSZWN1cnNpb24uaDogQWRkZWQuCisrICAgICAgICAqIHNyYy9jb21waWxlci9FeHRlbnNp
b25CZWhhdmlvci5oOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvRm9yTG9vcFVucm9sbC5jcHA6
CisrICAgICAgICAoRm9yTG9vcFVucm9sbDo6TWFya0Zvckxvb3BzV2l0aEludGVnZXJJbmRpY2Vz
Rm9yVW5yb2xsaW5nKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL0Zvckxvb3BVbnJvbGwuaDoK
KysgICAgICAgICogc3JjL2NvbXBpbGVyL0luaXRpYWxpemUuY3BwOgorKyAgICAgICAgKEJ1aWx0
SW5GdW5jdGlvbnNDb21tb24pOgorKyAgICAgICAgKEJ1aWx0SW5GdW5jdGlvbnNWZXJ0ZXgpOgor
KyAgICAgICAgKEJ1aWx0SW5GdW5jdGlvbnNGcmFnbWVudCk6CisrICAgICAgICAoVEJ1aWx0SW5z
Ojppbml0aWFsaXplKToKKysgICAgICAgIChJZGVudGlmeUJ1aWx0SW5zKToKKysgICAgICAgIChJ
bml0RXh0ZW5zaW9uQmVoYXZpb3IpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvTWFwTG9uZ1Zh
cmlhYmxlTmFtZXMuY3BwOgorKyAgICAgICAgKE1hcExvbmdWYXJpYWJsZU5hbWVzOjpNYXBMb25n
VmFyaWFibGVOYW1lcyk6CisrICAgICAgICAoTWFwTG9uZ1ZhcmlhYmxlTmFtZXM6OnZpc2l0U3lt
Ym9sKToKKysgICAgICAgIChNYXBMb25nVmFyaWFibGVOYW1lczo6bWFwVmFyeWluZ0xvbmdOYW1l
KToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL01hcExvbmdWYXJpYWJsZU5hbWVzLmg6CisrICAg
ICAgICAqIHNyYy9jb21waWxlci9PdXRwdXRHTFNMQmFzZS5jcHA6CisrICAgICAgICAoVE91dHB1
dEdMU0xCYXNlOjp2aXNpdFVuYXJ5KToKKysgICAgICAgIChUT3V0cHV0R0xTTEJhc2U6OnZpc2l0
QWdncmVnYXRlKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL091dHB1dEhMU0wuY3BwOgorKyAg
ICAgICAgKHNoOjpPdXRwdXRITFNMOjpPdXRwdXRITFNMKToKKysgICAgICAgIChzaDo6T3V0cHV0
SExTTDo6aGVhZGVyKToKKysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6dmlzaXRTeW1ib2wpOgor
KyAgICAgICAgKHNoOjpPdXRwdXRITFNMOjp2aXNpdEFnZ3JlZ2F0ZSk6CisrICAgICAgICAoc2g6
Ok91dHB1dEhMU0w6OnZpc2l0U2VsZWN0aW9uKToKKysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6
dmlzaXRMb29wKToKKysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6aGFuZGxlRXhjZXNzaXZlTG9v
cCk6CisrICAgICAgICAoc2g6Ok91dHB1dEhMU0w6OmFkZENvbnN0cnVjdG9yKToKKysgICAgICAg
IChzaDo6T3V0cHV0SExTTDo6ZGVjb3JhdGUpOgorKyAgICAgICAgKHNoOjpPdXRwdXRITFNMOjpk
ZWNvcmF0ZVVuaWZvcm0pOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvT3V0cHV0SExTTC5oOgor
KyAgICAgICAgKiBzcmMvY29tcGlsZXIvUGFyc2VIZWxwZXIuY3BwOgorKyAgICAgICAgKFRQYXJz
ZUNvbnRleHQ6OnJlY292ZXIpOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OnJlc2VydmVkRXJy
b3JDaGVjayk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6Y29uc3RydWN0b3JFcnJvckNoZWNr
KToKKysgICAgICAgIChUUGFyc2VDb250ZXh0OjpleHRlbnNpb25FcnJvckNoZWNrKToKKysgICAg
ICAgIChUUGFyc2VDb250ZXh0OjpzdXBwb3J0c0V4dGVuc2lvbik6CisrICAgICAgICAoVFBhcnNl
Q29udGV4dDo6ZW50ZXJTdHJ1Y3REZWNsYXJhdGlvbik6CisrICAgICAgICAoVFBhcnNlQ29udGV4
dDo6ZXhpdFN0cnVjdERlY2xhcmF0aW9uKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0OjpzdHJ1
Y3ROZXN0aW5nRXJyb3JDaGVjayk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9QYXJzZUhlbHBl
ci5oOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OlRQYXJzZUNvbnRleHQpOgorKyAgICAgICAg
KiBzcmMvY29tcGlsZXIvUG9vbEFsbG9jLmg6CisrICAgICAgICAocG9vbF9hbGxvY2F0b3I6OnBv
b2xfYWxsb2NhdG9yKToKKysgICAgICAgIChwb29sX2FsbG9jYXRvcjo6b3BlcmF0b3I9KToKKysg
ICAgICAgIChwb29sX2FsbG9jYXRvcjo6c2V0QWxsb2NhdG9yKToKKysgICAgICAgIChwb29sX2Fs
bG9jYXRvcjo6Z2V0QWxsb2NhdG9yKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL1NoSGFuZGxl
Lmg6CisrICAgICAgICAqIHNyYy9jb21waWxlci9TaGFkZXJMYW5nLmNwcDoKKysgICAgICAgIChj
aGVja0FjdGl2ZVVuaWZvcm1BbmRBdHRyaWJNYXhMZW5ndGhzKToKKysgICAgICAgIChjaGVja01h
cHBlZE5hbWVNYXhMZW5ndGgpOgorKyAgICAgICAgKGdldFZhcmlhYmxlSW5mbyk6CisrICAgICAg
ICAoU2hJbml0QnVpbHRJblJlc291cmNlcyk6CisrICAgICAgICAoU2hHZXRJbmZvKToKKysgICAg
ICAgICogc3JjL2NvbXBpbGVyL1N5bWJvbFRhYmxlLmNwcDoKKysgICAgICAgIChUVHlwZTo6Y29t
cHV0ZURlZXBlc3RTdHJ1Y3ROZXN0aW5nKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL1RyYW5z
bGF0b3JFU1NMLmNwcDoKKysgICAgICAgIChUcmFuc2xhdG9yRVNTTDo6dHJhbnNsYXRlKToKKysg
ICAgICAgIChUcmFuc2xhdG9yRVNTTDo6d3JpdGVFeHRlbnNpb25CZWhhdmlvcik6CisrICAgICAg
ICAqIHNyYy9jb21waWxlci9UcmFuc2xhdG9yR0xTTC5jcHA6CisrICAgICAgICAoVHJhbnNsYXRv
ckdMU0w6OnRyYW5zbGF0ZSk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9UeXBlcy5oOgorKyAg
ICAgICAgKFRUeXBlOjpUVHlwZSk6CisrICAgICAgICAoVFR5cGU6OmNvcHlUeXBlKToKKysgICAg
ICAgIChUVHlwZTo6c2V0U3RydWN0KToKKysgICAgICAgIChUVHlwZTo6Z2V0RGVlcGVzdFN0cnVj
dE5lc3RpbmcpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvVW5mb2xkU2VsZWN0LmNwcDoKKysg
ICAgICAgIChzaDo6VW5mb2xkU2VsZWN0Ojp0cmF2ZXJzZSk6CisrICAgICAgICAoc2g6OlVuZm9s
ZFNlbGVjdDo6dmlzaXRTZWxlY3Rpb24pOgorKyAgICAgICAgKHNoOjpVbmZvbGRTZWxlY3Q6OnZp
c2l0TG9vcCk6CisrICAgICAgICAoc2g6OlVuZm9sZFNlbGVjdDo6Z2V0TmV4dFRlbXBvcmFyeUlu
ZGV4KToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL1VuZm9sZFNlbGVjdC5oOgorKyAgICAgICAg
KiBzcmMvY29tcGlsZXIvVmFsaWRhdGVMaW1pdGF0aW9ucy5jcHA6CisrICAgICAgICAqIHNyYy9j
b21waWxlci9WYWxpZGF0ZUxpbWl0YXRpb25zLmg6CisrICAgICAgICAqIHNyYy9jb21waWxlci9W
YXJpYWJsZUluZm8uY3BwOgorKyAgICAgICAgKGdldFZhcmlhYmxlRGF0YVR5cGUpOgorKyAgICAg
ICAgKiBzcmMvY29tcGlsZXIvZ2VuZXJhdGVfZ2xzbGFuZ19sZXhlci5zaDogUmVtb3ZlZC4KKysg
ICAgICAgICogc3JjL2NvbXBpbGVyL2dlbmVyYXRlX2dsc2xhbmdfcGFyc2VyLnNoOiBSZW1vdmVk
LgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvZ2VuZXJhdGVfcGFyc2VyLnNoOiBBZGRlZC4KKysg
ICAgICAgICogc3JjL2NvbXBpbGVyL2dsc2xhbmcubDoKKysgICAgICAgICogc3JjL2NvbXBpbGVy
L2dsc2xhbmcueToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL2dsc2xhbmdfbGV4LmNwcDoKKysg
ICAgICAgICh5eV9nZXRfcHJldmlvdXNfc3RhdGUpOgorKyAgICAgICAgKHl5X3RyeV9OVUxfdHJh
bnMpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvZ2xzbGFuZ190YWIuY3BwOgorKyAgICAgICAg
KiBzcmMvY29tcGlsZXIvZ2xzbGFuZ190YWIuaDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL2lu
dGVybU91dC5jcHA6CisrICAgICAgICAoVE91dHB1dFRyYXZlcnNlcjo6dmlzaXRBZ2dyZWdhdGUp
OgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvaW50ZXJtZWRpYXRlLmg6CisrICAgICAgICAoVElu
dGVybVVuYXJ5OjpUSW50ZXJtVW5hcnkpOgorKyAgICAgICAgKFRJbnRlcm1VbmFyeTo6c2V0VXNl
RW11bGF0ZWRGdW5jdGlvbik6CisrICAgICAgICAoVEludGVybVVuYXJ5OjpnZXRVc2VFbXVsYXRl
ZEZ1bmN0aW9uKToKKysgICAgICAgIChUSW50ZXJtQWdncmVnYXRlOjpUSW50ZXJtQWdncmVnYXRl
KToKKysgICAgICAgIChUSW50ZXJtQWdncmVnYXRlOjpzZXRVc2VFbXVsYXRlZEZ1bmN0aW9uKToK
KysgICAgICAgIChUSW50ZXJtQWdncmVnYXRlOjpnZXRVc2VFbXVsYXRlZEZ1bmN0aW9uKToKKysg
ICAgICAgICogc3JjL2NvbXBpbGVyL29zaW5jbHVkZS5oOgorKyAgICAgICAgKiBzcmMvY29tcGls
ZXIvb3Nzb3VyY2VfcG9zaXguY3BwOgorKyAgICAgICAgKE9TX0FsbG9jVExTSW5kZXgpOgorKyAg
ICAgICAgKE9TX1NldFRMU1ZhbHVlKToKKysgICAgICAgIChPU19GcmVlVExTSW5kZXgpOgorKyAg
ICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL2F0b20uYzoKKysgICAgICAgIChHcm93
QXRvbVRhYmxlKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9sZW5ndGhf
bGltaXRzLmg6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL3Nj
YW5uZXIuaDoKKysgICAgICAgICogc3JjL2xpYkVHTC9EaXNwbGF5LmNwcDoKKysgICAgICAgIChl
Z2w6OkRpc3BsYXk6OmdldERpc3BsYXkpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6RGlzcGxh
eSk6CisrICAgICAgICAoZWdsOjpEaXNwbGF5Ojp+RGlzcGxheSk6CisrICAgICAgICAoZWdsOjpE
aXNwbGF5Ojppbml0aWFsaXplKToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OnRlcm1pbmF0ZSk6
CisrICAgICAgICAoZWdsOjpEaXNwbGF5OjpzdGFydFNjZW5lKToKKysgICAgICAgIChlZ2w6OkRp
c3BsYXk6OmVuZFNjZW5lKToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OmNyZWF0ZURldmljZSk6
CisrICAgICAgICAoZWdsOjpEaXNwbGF5Ojppbml0aWFsaXplRGV2aWNlKToKKysgICAgICAgIChl
Z2w6OkRpc3BsYXk6OnJlc2V0RGV2aWNlKToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OmNyZWF0
ZVdpbmRvd1N1cmZhY2UpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6Y3JlYXRlT2Zmc2NyZWVu
U3VyZmFjZSk6CisrICAgICAgICAoZWdsOjpEaXNwbGF5OjpjcmVhdGVDb250ZXh0KToKKysgICAg
ICAgIChlZ2w6OkRpc3BsYXk6OnJlc3RvcmVMb3N0RGV2aWNlKToKKysgICAgICAgIChlZ2w6OkRp
c3BsYXk6Om5vdGlmeURldmljZUxvc3QpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6aXNEZXZp
Y2VMb3N0KToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OnRlc3REZXZpY2VMb3N0KToKKysgICAg
ICAgIChlZ2w6OkRpc3BsYXk6OnRlc3REZXZpY2VSZXNldHRhYmxlKToKKysgICAgICAgIChlZ2w6
OkRpc3BsYXk6OmdldERYVDFUZXh0dXJlU3VwcG9ydCk6CisrICAgICAgICAoZWdsOjpEaXNwbGF5
OjpnZXREWFQzVGV4dHVyZVN1cHBvcnQpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6Z2V0RFhU
NVRleHR1cmVTdXBwb3J0KToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OmdldEZsb2F0MzJUZXh0
dXJlU3VwcG9ydCk6CisrICAgICAgICAoZWdsOjpEaXNwbGF5OjpnZXRGbG9hdDE2VGV4dHVyZVN1
cHBvcnQpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6Z2V0VGV4dHVyZVBvb2wpOgorKyAgICAg
ICAgKGVnbDo6RGlzcGxheTo6aW5pdEV4dGVuc2lvblN0cmluZyk6CisrICAgICAgICAqIHNyYy9s
aWJFR0wvRGlzcGxheS5oOgorKyAgICAgICAgKiBzcmMvbGliRUdML1N1cmZhY2UuY3BwOgorKyAg
ICAgICAgKGVnbDo6U3VyZmFjZTo6U3VyZmFjZSk6CisrICAgICAgICAoZWdsOjpTdXJmYWNlOjpp
bml0aWFsaXplKToKKysgICAgICAgIChlZ2w6OlN1cmZhY2U6OnJlc2V0U3dhcENoYWluKToKKysg
ICAgICAgIChlZ2w6OlN1cmZhY2U6OnN1YmNsYXNzV2luZG93KToKKysgICAgICAgIChlZ2w6OlN1
cmZhY2U6OnVuc3ViY2xhc3NXaW5kb3cpOgorKyAgICAgICAgKGVnbDo6U3VyZmFjZTo6c3dhcCk6
CisrICAgICAgICAoZWdsOjpTdXJmYWNlOjpwb3N0U3ViQnVmZmVyKToKKysgICAgICAgIChlZ2w6
OlN1cmZhY2U6OmlzUG9zdFN1YkJ1ZmZlclN1cHBvcnRlZCk6CisrICAgICAgICAqIHNyYy9saWJF
R0wvU3VyZmFjZS5oOgorKyAgICAgICAgKiBzcmMvbGliRUdML2xpYkVHTC5jcHA6CisrICAgICAg
ICAqIHNyYy9saWJFR0wvbGliRUdMLnJjOgorKyAgICAgICAgKiBzcmMvbGliRUdML2xpYkVHTC52
Y3Byb2o6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvQnVmZmVyLmNwcDoKKysgICAgICAgIChn
bDo6QnVmZmVyOjpidWZmZXJTdWJEYXRhKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9Db250
ZXh0LmNwcDoKKysgICAgICAgIChnbDo6Q29udGV4dDo6Q29udGV4dCk6CisrICAgICAgICAoZ2w6
OkNvbnRleHQ6Om1ha2VDdXJyZW50KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6bWFya0FsbFN0
YXRlRGlydHkpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjptYXJrQ29udGV4dExvc3QpOgorKyAg
ICAgICAgKGdsOjpDb250ZXh0Ojppc0NvbnRleHRMb3N0KToKKysgICAgICAgIChnbDo6Q29udGV4
dDo6c2V0UGFja1JldmVyc2VSb3dPcmRlcik6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmdldFBh
Y2tSZXZlcnNlUm93T3JkZXIpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpkZWxldGVQcm9ncmFt
KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0RHJhd0ZyYW1lYnVmZmVyKToKKysgICAgICAg
IChnbDo6Q29udGV4dDo6YmluZERyYXdGcmFtZWJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkNvbnRl
eHQ6OnVzZVByb2dyYW0pOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzZXRGcmFtZWJ1ZmZlclpl
cm8pOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRDdXJyZW50UHJvZ3JhbSk6CisrICAgICAg
ICAoZ2w6OkNvbnRleHQ6OmdldEJvb2xlYW52KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0
SW50ZWdlcnYpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRRdWVyeVBhcmFtZXRlckluZm8p
OgorKyAgICAgICAgKGdsOjpDb250ZXh0OjphcHBseVJlbmRlclRhcmdldCk6CisrICAgICAgICAo
Z2w6OkNvbnRleHQ6OmFwcGx5U3RhdGUpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjphcHBseVZl
cnRleEJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmFwcGx5SW5kZXhCdWZmZXIpOgor
KyAgICAgICAgKGdsOjpDb250ZXh0OjphcHBseVNoYWRlcnMpOgorKyAgICAgICAgKGdsOjpDb250
ZXh0OjphcHBseVRleHR1cmVzKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6cmVhZFBpeGVscyk6
CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmNsZWFyKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6
ZHJhd0FycmF5cyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmRyYXdFbGVtZW50cyk6CisrICAg
ICAgICAoZ2w6OkNvbnRleHQ6OnN5bmMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpkcmF3Q2xv
c2luZ0xpbmUpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRSZXNldFN0YXR1cyk6CisrICAg
ICAgICAoZ2w6OkNvbnRleHQ6OmlzUmVzZXROb3RpZmljYXRpb25FbmFibGVkKToKKysgICAgICAg
IChnbDo6Q29udGV4dDo6c3VwcG9ydHNEWFQxVGV4dHVyZXMpOgorKyAgICAgICAgKGdsOjpDb250
ZXh0OjpzdXBwb3J0c0RYVDNUZXh0dXJlcyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnN1cHBv
cnRzRFhUNVRleHR1cmVzKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c3VwcG9ydHNGbG9hdDMy
VGV4dHVyZXMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzdXBwb3J0c0Zsb2F0MzJMaW5lYXJG
aWx0ZXIpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzdXBwb3J0c0Zsb2F0MzJSZW5kZXJhYmxl
VGV4dHVyZXMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzdXBwb3J0c0Zsb2F0MTZUZXh0dXJl
cyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnN1cHBvcnRzRmxvYXQxNkxpbmVhckZpbHRlcik6
CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnN1cHBvcnRzRmxvYXQxNlJlbmRlcmFibGVUZXh0dXJl
cyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmluaXRFeHRlbnNpb25TdHJpbmcpOgorKyAgICAg
ICAgKGdsOjpDb250ZXh0Ojppbml0UmVuZGVyZXJTdHJpbmcpOgorKyAgICAgICAgKGdsOjpDb250
ZXh0OjpnZXRSZW5kZXJlclN0cmluZyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmJsaXRGcmFt
ZWJ1ZmZlcik6CisrICAgICAgICAoZ2w6OlZlcnRleERlY2xhcmF0aW9uQ2FjaGU6OmFwcGx5RGVj
bGFyYXRpb24pOgorKyAgICAgICAgKGdsOjpWZXJ0ZXhEZWNsYXJhdGlvbkNhY2hlOjptYXJrU3Rh
dGVEaXJ0eSk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvQ29udGV4dC5oOgorKyAgICAgICAg
KiBzcmMvbGliR0xFU3YyL0ZlbmNlLmNwcDoKKysgICAgICAgIChnbDo6RmVuY2U6OnRlc3RGZW5j
ZSk6CisrICAgICAgICAoZ2w6OkZlbmNlOjpnZXRGZW5jZWl2KToKKysgICAgICAgICogc3JjL2xp
YkdMRVN2Mi9GcmFtZWJ1ZmZlci5jcHA6CisrICAgICAgICAoZ2w6OkZyYW1lYnVmZmVyOjpzZXRD
b2xvcmJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkZyYW1lYnVmZmVyOjpzZXREZXB0aGJ1ZmZlcik6
CisrICAgICAgICAoZ2w6OkZyYW1lYnVmZmVyOjpzZXRTdGVuY2lsYnVmZmVyKToKKysgICAgICAg
IChnbDo6RnJhbWVidWZmZXI6OmdldENvbG9yYnVmZmVyKToKKysgICAgICAgIChnbDo6RnJhbWVi
dWZmZXI6OmdldERlcHRoYnVmZmVyKToKKysgICAgICAgIChnbDo6RnJhbWVidWZmZXI6OmdldFN0
ZW5jaWxidWZmZXIpOgorKyAgICAgICAgKGdsOjpGcmFtZWJ1ZmZlcjo6aGFzU3RlbmNpbCk6Cisr
ICAgICAgICAoZ2w6OkZyYW1lYnVmZmVyOjpjb21wbGV0ZW5lc3MpOgorKyAgICAgICAgKGdsOjpE
ZWZhdWx0RnJhbWVidWZmZXI6OkRlZmF1bHRGcmFtZWJ1ZmZlcik6CisrICAgICAgICAqIHNyYy9s
aWJHTEVTdjIvRnJhbWVidWZmZXIuaDoKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9JbmRleERh
dGFNYW5hZ2VyLmNwcDoKKysgICAgICAgIChnbDo6SW5kZXhEYXRhTWFuYWdlcjo6cHJlcGFyZUlu
ZGV4RGF0YSk6CisrICAgICAgICAoZ2w6OkluZGV4QnVmZmVyOjpJbmRleEJ1ZmZlcik6CisrICAg
ICAgICAoZ2w6OkluZGV4QnVmZmVyOjpnZXRTZXJpYWwpOgorKyAgICAgICAgKGdsOjpJbmRleEJ1
ZmZlcjo6aXNzdWVTZXJpYWwpOgorKyAgICAgICAgKGdsOjpTdHJlYW1pbmdJbmRleEJ1ZmZlcjo6
cmVzZXJ2ZVNwYWNlKToKKysgICAgICAgIChnbDo6U3RhdGljSW5kZXhCdWZmZXI6OnJlc2VydmVT
cGFjZSk6CisrICAgICAgICAoZ2w6OlN0YXRpY0luZGV4QnVmZmVyOjpsb29rdXBSYW5nZSk6Cisr
ICAgICAgICAoZ2w6OlN0YXRpY0luZGV4QnVmZmVyOjphZGRSYW5nZSk6CisrICAgICAgICAqIHNy
Yy9saWJHTEVTdjIvSW5kZXhEYXRhTWFuYWdlci5oOgorKyAgICAgICAgKGdsOjpTdGF0aWNJbmRl
eEJ1ZmZlcjo6SW5kZXhSYW5nZTo6b3BlcmF0b3I8KToKKysgICAgICAgICogc3JjL2xpYkdMRVN2
Mi9Qcm9ncmFtLmNwcDoKKysgICAgICAgIChnbDo6VW5pZm9ybTo6VW5pZm9ybSk6CisrICAgICAg
ICAoZ2w6OlVuaWZvcm06OmlzQXJyYXkpOgorKyAgICAgICAgKGdsOjpVbmlmb3JtTG9jYXRpb246
OlVuaWZvcm1Mb2NhdGlvbik6CisrICAgICAgICAoZ2w6OlByb2dyYW06OlByb2dyYW0pOgorKyAg
ICAgICAgKGdsOjpQcm9ncmFtOjpkZXRhY2hTaGFkZXIpOgorKyAgICAgICAgKGdsOjpQcm9ncmFt
OjpnZXRVc2VkU2FtcGxlclJhbmdlKToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6Z2V0U2FtcGxl
ck1hcHBpbmcpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpnZXRVbmlmb3JtTG9jYXRpb24pOgor
KyAgICAgICAgKGdsOjpQcm9ncmFtOjpzZXRVbmlmb3JtMWZ2KToKKysgICAgICAgIChnbDo6UHJv
Z3JhbTo6c2V0VW5pZm9ybTJmdik6CisrICAgICAgICAoZ2w6OlByb2dyYW06OnNldFVuaWZvcm0z
ZnYpOgorKyAgICAgICAgKGdsOjp0cmFuc3Bvc2VNYXRyaXgpOgorKyAgICAgICAgKGdsOjpQcm9n
cmFtOjpzZXRVbmlmb3JtTWF0cml4MmZ2KToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6c2V0VW5p
Zm9ybU1hdHJpeDNmdik6CisrICAgICAgICAoZ2w6OlByb2dyYW06OnNldFVuaWZvcm1NYXRyaXg0
ZnYpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpnZXRVbmlmb3JtZnYpOgorKyAgICAgICAgKGds
OjpQcm9ncmFtOjpnZXRVbmlmb3JtaXYpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjphcHBseVVu
aWZvcm1zKToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6Y29tcGlsZVRvQmluYXJ5KToKKysgICAg
ICAgIChnbDo6UHJvZ3JhbTo6bGlua1ZhcnlpbmdzKToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6
bGluayk6CisrICAgICAgICAoZ2w6OlByb2dyYW06OmRlZmluZVVuaWZvcm0pOgorKyAgICAgICAg
KGdsOjpQcm9ncmFtOjpjcmVhdGVVbmlmb3JtKToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6ZGVj
b3JhdGVBdHRyaWJ1dGUpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjp1bmRlY29yYXRlVW5pZm9y
bSk6CisrICAgICAgICAoZ2w6OlByb2dyYW06OmFwcGx5VW5pZm9ybW5idik6CisrICAgICAgICAo
Z2w6OlByb2dyYW06OmFwcGx5VW5pZm9ybW5mdik6CisrICAgICAgICAoZ2w6OlByb2dyYW06OmFw
cGx5VW5pZm9ybTFpdik6CisrICAgICAgICAoZ2w6OlByb2dyYW06OmFwcGx5VW5pZm9ybTJpdik6
CisrICAgICAgICAoZ2w6OlByb2dyYW06OmFwcGx5VW5pZm9ybTNpdik6CisrICAgICAgICAoZ2w6
OlByb2dyYW06OmFwcGx5VW5pZm9ybTRpdik6CisrICAgICAgICAoZ2w6OlByb2dyYW06OmFwcGx5
VW5pZm9ybW5pdik6CisrICAgICAgICAoZ2w6OlByb2dyYW06OmFwcGVuZFRvSW5mb0xvZ1Nhbml0
aXplZCk6CisrICAgICAgICAoZ2w6OlByb2dyYW06OnVubGluayk6CisrICAgICAgICAoZ2w6OlBy
b2dyYW06OmdldEFjdGl2ZVVuaWZvcm0pOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpnZXRBY3Rp
dmVVbmlmb3JtQ291bnQpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpnZXRBY3RpdmVVbmlmb3Jt
TWF4TGVuZ3RoKToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6dmFsaWRhdGVTYW1wbGVycyk6Cisr
ICAgICAgICAoZ2w6OlByb2dyYW06OmluaXRpYWxpemVDb25zdGFudEhhbmRsZXMpOgorKyAgICAg
ICAgKGdsOjpQcm9ncmFtOjpnZXREeENvb3JkTG9jYXRpb24pOgorKyAgICAgICAgKiBzcmMvbGli
R0xFU3YyL1Byb2dyYW0uaDoKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9SZW5kZXJidWZmZXIu
Y3BwOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJJbnRlcmZhY2U6OlJlbmRlcmJ1ZmZlcklu
dGVyZmFjZSk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlckludGVyZmFjZTo6Z2V0UmVkU2l6
ZSk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlckludGVyZmFjZTo6Z2V0R3JlZW5TaXplKToK
KysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVySW50ZXJmYWNlOjpnZXRCbHVlU2l6ZSk6CisrICAg
ICAgICAoZ2w6OlJlbmRlcmJ1ZmZlckludGVyZmFjZTo6Z2V0QWxwaGFTaXplKToKKysgICAgICAg
IChnbDo6UmVuZGVyYnVmZmVySW50ZXJmYWNlOjpnZXREZXB0aFNpemUpOgorKyAgICAgICAgKGds
OjpSZW5kZXJidWZmZXJJbnRlcmZhY2U6OmdldFN0ZW5jaWxTaXplKToKKysgICAgICAgIChnbDo6
UmVuZGVyYnVmZmVyVGV4dHVyZTo6UmVuZGVyYnVmZmVyVGV4dHVyZSk6CisrICAgICAgICAoZ2w6
OlJlbmRlcmJ1ZmZlclRleHR1cmU6On5SZW5kZXJidWZmZXJUZXh0dXJlKToKKysgICAgICAgIChn
bDo6UmVuZGVyYnVmZmVyVGV4dHVyZTo6Z2V0UmVuZGVyVGFyZ2V0KToKKysgICAgICAgIChnbDo6
UmVuZGVyYnVmZmVyVGV4dHVyZTo6Z2V0RGVwdGhTdGVuY2lsKToKKysgICAgICAgIChnbDo6UmVu
ZGVyYnVmZmVyVGV4dHVyZTo6Z2V0V2lkdGgpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJU
ZXh0dXJlOjpnZXRIZWlnaHQpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJUZXh0dXJlOjpn
ZXRJbnRlcm5hbEZvcm1hdCk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclRleHR1cmU6Omdl
dEQzREZvcm1hdCk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclRleHR1cmU6OmdldFNhbXBs
ZXMpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJUZXh0dXJlOjpnZXRTZXJpYWwpOgorKyAg
ICAgICAgKGdsOjpSZW5kZXJidWZmZXI6OlJlbmRlcmJ1ZmZlcik6CisrICAgICAgICAoZ2w6OlJl
bmRlcmJ1ZmZlcjo6flJlbmRlcmJ1ZmZlcik6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlcjo6
Z2V0UmVuZGVyVGFyZ2V0KToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyOjpnZXREZXB0aFN0
ZW5jaWwpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXI6OmdldFdpZHRoKToKKysgICAgICAg
IChnbDo6UmVuZGVyYnVmZmVyOjpnZXRIZWlnaHQpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZm
ZXI6OmdldEludGVybmFsRm9ybWF0KToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyOjpnZXRE
M0RGb3JtYXQpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXI6OmdldFJlZFNpemUpOgorKyAg
ICAgICAgKGdsOjpSZW5kZXJidWZmZXI6OmdldEdyZWVuU2l6ZSk6CisrICAgICAgICAoZ2w6OlJl
bmRlcmJ1ZmZlcjo6Z2V0Qmx1ZVNpemUpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXI6Omdl
dEFscGhhU2l6ZSk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlcjo6Z2V0RGVwdGhTaXplKToK
KysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyOjpnZXRTdGVuY2lsU2l6ZSk6CisrICAgICAgICAo
Z2w6OlJlbmRlcmJ1ZmZlcjo6Z2V0U2FtcGxlcyk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZl
cjo6Z2V0U2VyaWFsKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyOjpzZXRTdG9yYWdlKToK
KysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyU3RvcmFnZTo6Z2V0RDNERm9ybWF0KToKKysgICAg
ICAgIChnbDo6UmVuZGVyYnVmZmVyU3RvcmFnZTo6aXNzdWVDdWJlU2VyaWFscyk6CisrICAgICAg
ICAoZ2w6OkNvbG9yYnVmZmVyOjpDb2xvcmJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkNvbG9yYnVm
ZmVyOjpnZXRSZW5kZXJUYXJnZXQpOgorKyAgICAgICAgKGdsOjpEZXB0aGJ1ZmZlcjo6RGVwdGhi
dWZmZXIpOgorKyAgICAgICAgKGdsOjpTdGVuY2lsYnVmZmVyOjpTdGVuY2lsYnVmZmVyKToKKysg
ICAgICAgICogc3JjL2xpYkdMRVN2Mi9SZW5kZXJidWZmZXIuaDoKKysgICAgICAgIChnbDo6UmVu
ZGVyYnVmZmVySW50ZXJmYWNlOjp+UmVuZGVyYnVmZmVySW50ZXJmYWNlKToKKysgICAgICAgICog
c3JjL2xpYkdMRVN2Mi9TaGFkZXIuY3BwOgorKyAgICAgICAgKGdsOjpTaGFkZXI6OmdldFRyYW5z
bGF0ZWRTb3VyY2VMZW5ndGgpOgorKyAgICAgICAgKGdsOjpTaGFkZXI6OmdldFNvdXJjZUltcGwp
OgorKyAgICAgICAgKGdsOjpTaGFkZXI6OmdldFNvdXJjZSk6CisrICAgICAgICAoZ2w6OlNoYWRl
cjo6Z2V0VHJhbnNsYXRlZFNvdXJjZSk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvU2hhZGVy
Lmg6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvVGV4dHVyZS5jcHA6CisrICAgICAgICAoZ2w6
OkNvbnZlcnRUZXh0dXJlRm9ybWF0VHlwZSk6CisrICAgICAgICAoZ2w6OklzVGV4dHVyZUZvcm1h
dFJlbmRlcmFibGUpOgorKyAgICAgICAgKGdsOjpJbWFnZTo6SW1hZ2UpOgorKyAgICAgICAgKGds
OjpJbWFnZTo6fkltYWdlKToKKysgICAgICAgIChnbDo6SW1hZ2U6OnJlZGVmaW5lKToKKysgICAg
ICAgIChnbDo6SW1hZ2U6OmNyZWF0ZVN1cmZhY2UpOgorKyAgICAgICAgKGdsOjpJbWFnZTo6bG9j
ayk6CisrICAgICAgICAoZ2w6OkltYWdlOjp1bmxvY2spOgorKyAgICAgICAgKGdsOjpJbWFnZTo6
aXNSZW5kZXJhYmxlRm9ybWF0KToKKysgICAgICAgIChnbDo6SW1hZ2U6OmdldEQzREZvcm1hdCk6
CisrICAgICAgICAoZ2w6OkltYWdlOjpnZXRTdXJmYWNlKToKKysgICAgICAgIChnbDo6SW1hZ2U6
OnNldE1hbmFnZWRTdXJmYWNlKToKKysgICAgICAgIChnbDo6SW1hZ2U6OnVwZGF0ZVN1cmZhY2Up
OgorKyAgICAgICAgKGdsOjpJbWFnZTo6bG9hZERhdGEpOgorKyAgICAgICAgKGdsOjpJbWFnZTo6
bG9hZEFscGhhRGF0YSk6CisrICAgICAgICAoZ2w6OkltYWdlOjpsb2FkQWxwaGFGbG9hdERhdGEp
OgorKyAgICAgICAgKGdsOjpJbWFnZTo6bG9hZEFscGhhSGFsZkZsb2F0RGF0YSk6CisrICAgICAg
ICAoZ2w6OkltYWdlOjpsb2FkTHVtaW5hbmNlRGF0YSk6CisrICAgICAgICAoZ2w6OkltYWdlOjps
b2FkTHVtaW5hbmNlRmxvYXREYXRhKToKKysgICAgICAgIChnbDo6SW1hZ2U6OmxvYWRMdW1pbmFu
Y2VIYWxmRmxvYXREYXRhKToKKysgICAgICAgIChnbDo6SW1hZ2U6OmxvYWRMdW1pbmFuY2VBbHBo
YURhdGEpOgorKyAgICAgICAgKGdsOjpJbWFnZTo6bG9hZEx1bWluYW5jZUFscGhhRmxvYXREYXRh
KToKKysgICAgICAgIChnbDo6SW1hZ2U6OmxvYWRMdW1pbmFuY2VBbHBoYUhhbGZGbG9hdERhdGEp
OgorKyAgICAgICAgKGdsOjpJbWFnZTo6bG9hZFJHQlVCeXRlRGF0YSk6CisrICAgICAgICAoZ2w6
OkltYWdlOjpsb2FkUkdCNTY1RGF0YSk6CisrICAgICAgICAoZ2w6OkltYWdlOjpsb2FkUkdCRmxv
YXREYXRhKToKKysgICAgICAgIChnbDo6SW1hZ2U6OmxvYWRSR0JIYWxmRmxvYXREYXRhKToKKysg
ICAgICAgIChnbDo6SW1hZ2U6OmxvYWRSR0JBVUJ5dGVEYXRhU1NFMik6CisrICAgICAgICAoZ2w6
OkltYWdlOjpsb2FkUkdCQVVCeXRlRGF0YSk6CisrICAgICAgICAoZ2w6OkltYWdlOjpsb2FkUkdC
QTQ0NDREYXRhKToKKysgICAgICAgIChnbDo6SW1hZ2U6OmxvYWRSR0JBNTU1MURhdGEpOgorKyAg
ICAgICAgKGdsOjpJbWFnZTo6bG9hZFJHQkFGbG9hdERhdGEpOgorKyAgICAgICAgKGdsOjpJbWFn
ZTo6bG9hZFJHQkFIYWxmRmxvYXREYXRhKToKKysgICAgICAgIChnbDo6SW1hZ2U6OmxvYWRCR1JB
RGF0YSk6CisrICAgICAgICAoZ2w6OkltYWdlOjpsb2FkQ29tcHJlc3NlZERhdGEpOgorKyAgICAg
ICAgKGdsOjpGbGlwQ29weURYVDFCbG9ja0Z1bGwpOgorKyAgICAgICAgKGdsOjpGbGlwQ29weURY
VDFCbG9ja0hhbGYpOgorKyAgICAgICAgKGdsOjpGbGlwQ29weURYVDNCbG9ja0Z1bGwpOgorKyAg
ICAgICAgKGdsOjpGbGlwQ29weURYVDNCbG9ja0hhbGYpOgorKyAgICAgICAgKGdsOjpGbGlwQ29w
eURYVDVCbG9ja0Z1bGwpOgorKyAgICAgICAgKGdsOjpGbGlwQ29weURYVDVCbG9ja0hhbGYpOgor
KyAgICAgICAgKGdsOjpJbWFnZTo6bG9hZERYVDFEYXRhKToKKysgICAgICAgIChnbDo6SW1hZ2U6
OmxvYWREWFQzRGF0YSk6CisrICAgICAgICAoZ2w6OkltYWdlOjpsb2FkRFhUNURhdGEpOgorKyAg
ICAgICAgKGdsOjpJbWFnZTo6Y29weSk6CisrICAgICAgICAoZ2w6OlRleHR1cmVTdG9yYWdlOjpU
ZXh0dXJlU3RvcmFnZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmVTdG9yYWdlOjp+VGV4dHVyZVN0
b3JhZ2UpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlU3RvcmFnZTo6aXNSZW5kZXJUYXJnZXQpOgor
KyAgICAgICAgKGdsOjpUZXh0dXJlU3RvcmFnZTo6aXNNYW5hZ2VkKToKKysgICAgICAgIChnbDo6
VGV4dHVyZVN0b3JhZ2U6OmdldFBvb2wpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlU3RvcmFnZTo6
Z2V0VGV4dHVyZVNlcmlhbCk6CisrICAgICAgICAoZ2w6OlRleHR1cmVTdG9yYWdlOjppc3N1ZVRl
eHR1cmVTZXJpYWwpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpUZXh0dXJlKToKKysgICAgICAg
IChnbDo6VGV4dHVyZTo6flRleHR1cmUpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpzZXRNaW5G
aWx0ZXIpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpzZXRNYWdGaWx0ZXIpOgorKyAgICAgICAg
KGdsOjpUZXh0dXJlOjpzZXRXcmFwUyk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OnNldFdyYXBU
KToKKysgICAgICAgIChnbDo6VGV4dHVyZTo6c2V0VXNhZ2UpOgorKyAgICAgICAgKGdsOjpUZXh0
dXJlOjpnZXRNaW5GaWx0ZXIpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpnZXRNYWdGaWx0ZXIp
OgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpnZXRXcmFwUyk6CisrICAgICAgICAoZ2w6OlRleHR1
cmU6OmdldFdyYXBUKToKKysgICAgICAgIChnbDo6VGV4dHVyZTo6Z2V0VXNhZ2UpOgorKyAgICAg
ICAgKGdsOjpUZXh0dXJlOjpzZXRJbWFnZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OnNldENv
bXByZXNzZWRJbWFnZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OnN1YkltYWdlKToKKysgICAg
ICAgIChnbDo6VGV4dHVyZTo6c3ViSW1hZ2VDb21wcmVzc2VkKToKKysgICAgICAgIChnbDo6VGV4
dHVyZTo6Z2V0VGV4dHVyZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6Omhhc0RpcnR5UGFyYW1l
dGVycyk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6Omhhc0RpcnR5SW1hZ2VzKToKKysgICAgICAg
IChnbDo6VGV4dHVyZTo6cmVzZXREaXJ0eSk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OmdldFRl
eHR1cmVTZXJpYWwpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpnZXRSZW5kZXJUYXJnZXRTZXJp
YWwpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjppc0ltbXV0YWJsZSk6CisrICAgICAgICAoZ2w6
OlRleHR1cmU6OmNyZWF0aW9uTGV2ZWxzKToKKysgICAgICAgIChnbDo6VGV4dHVyZTo6Z2V0Qmxp
dHRlcik6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OmNvcHlUb1JlbmRlclRhcmdldCk6CisrICAg
ICAgICAoZ2w6OlRleHR1cmVTdG9yYWdlMkQ6OlRleHR1cmVTdG9yYWdlMkQpOgorKyAgICAgICAg
KGdsOjpUZXh0dXJlU3RvcmFnZTJEOjp+VGV4dHVyZVN0b3JhZ2UyRCk6CisrICAgICAgICAoZ2w6
OlRleHR1cmVTdG9yYWdlMkQ6OmdldFN1cmZhY2VMZXZlbCk6CisrICAgICAgICAoZ2w6OlRleHR1
cmVTdG9yYWdlMkQ6OmdldEJhc2VUZXh0dXJlKToKKysgICAgICAgIChnbDo6VGV4dHVyZVN0b3Jh
Z2UyRDo6Z2V0UmVuZGVyVGFyZ2V0U2VyaWFsKToKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjpU
ZXh0dXJlMkQpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlMkQ6On5UZXh0dXJlMkQpOgorKyAgICAg
ICAgKGdsOjpUZXh0dXJlMkQ6OmdldFdpZHRoKToKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjpn
ZXRIZWlnaHQpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlMkQ6OmdldEludGVybmFsRm9ybWF0KToK
KysgICAgICAgIChnbDo6VGV4dHVyZTJEOjpnZXRUeXBlKToKKysgICAgICAgIChnbDo6VGV4dHVy
ZTJEOjpyZWRlZmluZUltYWdlKToKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjpzZXRJbWFnZSk6
CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6YmluZFRleEltYWdlKToKKysgICAgICAgIChnbDo6
VGV4dHVyZTJEOjpyZWxlYXNlVGV4SW1hZ2UpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlMkQ6OnNl
dENvbXByZXNzZWRJbWFnZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6Y29tbWl0UmVjdCk6
CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6Y29weUltYWdlKToKKysgICAgICAgIChnbDo6VGV4
dHVyZTJEOjpjb3B5U3ViSW1hZ2UpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlMkQ6OnN0b3JhZ2Up
OgorKyAgICAgICAgKGdsOjpUZXh0dXJlMkQ6OmlzU2FtcGxlckNvbXBsZXRlKToKKysgICAgICAg
IChnbDo6VGV4dHVyZTJEOjppc01pcG1hcENvbXBsZXRlKToKKysgICAgICAgIChnbDo6VGV4dHVy
ZTJEOjpnZXRCYXNlVGV4dHVyZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6Y3JlYXRlVGV4
dHVyZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6dXBkYXRlVGV4dHVyZSk6CisrICAgICAg
ICAoZ2w6OlRleHR1cmUyRDo6Y29udmVydFRvUmVuZGVyVGFyZ2V0KToKKysgICAgICAgIChnbDo6
VGV4dHVyZTJEOjpnZW5lcmF0ZU1pcG1hcHMpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlMkQ6Omdl
dFJlbmRlcmJ1ZmZlcik6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6Z2V0UmVuZGVyVGFyZ2V0
KToKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjpnZXRTdG9yYWdlKToKKysgICAgICAgIChnbDo6
VGV4dHVyZVN0b3JhZ2VDdWJlTWFwOjpUZXh0dXJlU3RvcmFnZUN1YmVNYXApOgorKyAgICAgICAg
KGdsOjpUZXh0dXJlU3RvcmFnZUN1YmVNYXA6On5UZXh0dXJlU3RvcmFnZUN1YmVNYXApOgorKyAg
ICAgICAgKGdsOjpUZXh0dXJlU3RvcmFnZUN1YmVNYXA6OmdldEN1YmVNYXBTdXJmYWNlKToKKysg
ICAgICAgIChnbDo6VGV4dHVyZVN0b3JhZ2VDdWJlTWFwOjpnZXRCYXNlVGV4dHVyZSk6CisrICAg
ICAgICAoZ2w6OlRleHR1cmVTdG9yYWdlQ3ViZU1hcDo6Z2V0UmVuZGVyVGFyZ2V0U2VyaWFsKToK
KysgICAgICAgIChnbDo6VGV4dHVyZUN1YmVNYXA6OlRleHR1cmVDdWJlTWFwKToKKysgICAgICAg
IChnbDo6VGV4dHVyZUN1YmVNYXA6On5UZXh0dXJlQ3ViZU1hcCk6CisrICAgICAgICAoZ2w6OlRl
eHR1cmVDdWJlTWFwOjpnZXRXaWR0aCk6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpn
ZXRIZWlnaHQpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6Z2V0SW50ZXJuYWxGb3Jt
YXQpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6Z2V0VHlwZSk6CisrICAgICAgICAo
Z2w6OlRleHR1cmVDdWJlTWFwOjpzZXRDb21wcmVzc2VkSW1hZ2UpOgorKyAgICAgICAgKGdsOjpU
ZXh0dXJlQ3ViZU1hcDo6Y29tbWl0UmVjdCk6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFw
OjpzdWJJbWFnZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpzdWJJbWFnZUNvbXBy
ZXNzZWQpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6aXNTYW1wbGVyQ29tcGxldGUp
OgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6aXNDdWJlQ29tcGxldGUpOgorKyAgICAg
ICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6aXNNaXBtYXBDdWJlQ29tcGxldGUpOgorKyAgICAgICAg
KGdsOjpUZXh0dXJlQ3ViZU1hcDo6Z2V0QmFzZVRleHR1cmUpOgorKyAgICAgICAgKGdsOjpUZXh0
dXJlQ3ViZU1hcDo6Y3JlYXRlVGV4dHVyZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFw
Ojp1cGRhdGVUZXh0dXJlKToKKysgICAgICAgIChnbDo6VGV4dHVyZUN1YmVNYXA6OmNvbnZlcnRU
b1JlbmRlclRhcmdldCk6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpzZXRJbWFnZSk6
CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpyZWRlZmluZUltYWdlKToKKysgICAgICAg
IChnbDo6VGV4dHVyZUN1YmVNYXA6OmNvcHlJbWFnZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmVD
dWJlTWFwOjpjb3B5U3ViSW1hZ2UpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6c3Rv
cmFnZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpnZW5lcmF0ZU1pcG1hcHMpOgor
KyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6Z2V0UmVuZGVyYnVmZmVyKToKKysgICAgICAg
IChnbDo6VGV4dHVyZUN1YmVNYXA6OmdldFJlbmRlclRhcmdldCk6CisrICAgICAgICAoZ2w6OlRl
eHR1cmVDdWJlTWFwOjpnZXRTdG9yYWdlKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9UZXh0
dXJlLmg6CisrICAgICAgICAoZ2w6OkltYWdlOjptYXJrRGlydHkpOgorKyAgICAgICAgKGdsOjpJ
bWFnZTo6bWFya0NsZWFuKToKKysgICAgICAgIChnbDo6SW1hZ2U6OmdldFdpZHRoKToKKysgICAg
ICAgIChnbDo6SW1hZ2U6OmdldEhlaWdodCk6CisrICAgICAgICAoZ2w6OkltYWdlOjpnZXRGb3Jt
YXQpOgorKyAgICAgICAgKGdsOjpJbWFnZTo6Z2V0VHlwZSk6CisrICAgICAgICAoZ2w6OkltYWdl
Ojppc0RpcnR5KToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9WZXJ0ZXhEYXRhTWFuYWdlci5j
cHA6CisrICAgICAgICAoZ2w6OmVsZW1lbnRzSW5CdWZmZXIpOgorKyAgICAgICAgKGdsOjpWZXJ0
ZXhEYXRhTWFuYWdlcjo6VmVydGV4RGF0YU1hbmFnZXIpOgorKyAgICAgICAgKGdsOjpWZXJ0ZXhE
YXRhTWFuYWdlcjo6d3JpdGVBdHRyaWJ1dGVEYXRhKToKKysgICAgICAgIChnbDo6VmVydGV4RGF0
YU1hbmFnZXI6OnByZXBhcmVWZXJ0ZXhEYXRhKToKKysgICAgICAgIChnbDo6VmVydGV4QnVmZmVy
OjpWZXJ0ZXhCdWZmZXIpOgorKyAgICAgICAgKGdsOjpWZXJ0ZXhCdWZmZXI6OmdldFNlcmlhbCk6
CisrICAgICAgICAoZ2w6OlZlcnRleEJ1ZmZlcjo6aXNzdWVTZXJpYWwpOgorKyAgICAgICAgKGds
OjpTdHJlYW1pbmdWZXJ0ZXhCdWZmZXI6OnJlc2VydmVSZXF1aXJlZFNwYWNlKToKKysgICAgICAg
IChnbDo6U3RhdGljVmVydGV4QnVmZmVyOjptYXApOgorKyAgICAgICAgKGdsOjpTdGF0aWNWZXJ0
ZXhCdWZmZXI6OnJlc2VydmVSZXF1aXJlZFNwYWNlKToKKysgICAgICAgIChnbDo6U3RhdGljVmVy
dGV4QnVmZmVyOjpsb29rdXBBdHRyaWJ1dGUpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1Zl
cnRleERhdGFNYW5hZ2VyLmg6CisrICAgICAgICAoZ2w6OkFycmF5VmVydGV4QnVmZmVyOjpzaXpl
KToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9nZW9tZXRyeS9JbmRleERhdGFNYW5hZ2VyLmNw
cDogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9nZW9tZXRyeS9JbmRleERhdGFN
YW5hZ2VyLmg6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvZ2VvbWV0cnkvVmVy
dGV4RGF0YU1hbmFnZXIuY3BwOiBSZW1vdmVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL2dl
b21ldHJ5L1ZlcnRleERhdGFNYW5hZ2VyLmg6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9saWJH
TEVTdjIvZ2VvbWV0cnkvdmVydGV4Y29udmVyc2lvbi5oOiBSZW1vdmVkLgorKyAgICAgICAgKiBz
cmMvbGliR0xFU3YyL2xpYkdMRVN2Mi5jcHA6CisrICAgICAgICAodmFsaWRhdGVTdWJJbWFnZVBh
cmFtcyk6CisrICAgICAgICAodmFsaWRSZWFkRm9ybWF0VHlwZSk6CisrICAgICAgICAoRXh0ZW5z
aW9uOjpnbEJpbmRUZXhJbWFnZSk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvbGliR0xFU3Yy
LmRlZjoKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9saWJHTEVTdjIucmM6CisrICAgICAgICAq
IHNyYy9saWJHTEVTdjIvbGliR0xFU3YyLnZjcHJvajoKKysgICAgICAgICogc3JjL2xpYkdMRVN2
Mi9tYWluLmNwcDoKKysgICAgICAgIChnbDo6Z2V0Tm9uTG9zdENvbnRleHQpOgorKyAgICAgICAg
KGdsOjpjaGVja0RldmljZUxvc3QpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL21haW4uaDoK
KysgICAgICAgICogc3JjL2xpYkdMRVN2Mi91dGlsaXRpZXMuY3BwOgorKyAgICAgICAgKGdsOjpV
bmlmb3JtRXh0ZXJuYWxDb21wb25lbnRDb3VudCk6CisrICAgICAgICAoZ2w6OlVuaWZvcm1JbnRl
cm5hbENvbXBvbmVudENvdW50KToKKysgICAgICAgIChnbDo6VW5pZm9ybUNvbXBvbmVudFNpemUp
OgorKyAgICAgICAgKGdsOjpVbmlmb3JtSW50ZXJuYWxTaXplKToKKysgICAgICAgIChnbDo6VW5p
Zm9ybUV4dGVybmFsU2l6ZSk6CisrICAgICAgICAoZ2w6OkNvbXB1dGVDb21wcmVzc2VkU2l6ZSk6
CisrICAgICAgICAoZ2w6OklzQ29tcHJlc3NlZCk6CisrICAgICAgICAoZ2w6OkV4dHJhY3RGb3Jt
YXQpOgorKyAgICAgICAgKGdsOjpFeHRyYWN0VHlwZSk6CisrICAgICAgICAoZHgyZXM6OklzRmxv
YXQzMkZvcm1hdCk6CisrICAgICAgICAoZHgyZXM6OklzRmxvYXQxNkZvcm1hdCk6CisrICAgICAg
ICAqIHNyYy9saWJHTEVTdjIvdXRpbGl0aWVzLmg6CisrICAgICAgICAoaXNEZXZpY2VMb3N0RXJy
b3IpOgorKworKzIwMTEtMTEtMTEgIERhcmluIEFkbGVyICA8ZGFyaW5AYXBwbGUuY29tPgorKwor
KyAgICAgICAgKiBBTkdMRS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOiBMZXQgYSBuZXdlciBY
Y29kZSB1cGRhdGUgdGhpcyBmaWxlLgorKyAgICAgICAgSWYgYW4gb2xkZXIgWGNvZGUgZG93bmdy
YWRlcyB0aGlzIGZpbGUgYW5kIHdlIGhhdmUgYSByaXNrIG9mIHNvbWUga2luZCBvZgorKyAgICAg
ICAgb3NjaWxsYXRpbmcgY29tbWl0IHNpdHVhdGlvbiwgcGxlYXNlIGNvbnRhY3QgbWUgc28gSSBr
bm93IG5vdCB0byBkbyB0aGlzIGFnYWluLgorKworKzIwMTEtMDktMTkgIEFkYW0gUm9iZW4gIDxh
cm9iZW5AYXBwbGUuY29tPgorKworKyAgICAgICAgTGV0IFhjb2RlIDQgZG8gaXRzIHRoYW5nIHdp
dGggQU5HTEUueGNvZGVwcm9qCisrCisrICAgICAgICAqIEFOR0xFLnhjb2RlcHJvai9wcm9qZWN0
LnBieHByb2o6CisrCisrMjAxMS0wOS0xMyAgQW5kZXJzIENhcmxzc29uICA8YW5kZXJzY2FAYXBw
bGUuY29tPgorKworKyAgICAgICAgRGlzYWJsZSBDKysgZXhjZXB0aW9ucyB3aGVuIGJ1aWxkaW5n
IHdpdGggY2xhbmcKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD02ODAzMQorKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzk1NTY4ODA+CisrCisrICAgICAg
ICBSZXZpZXdlZCBieSBNYXJrIFJvd2UuCisrCisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0Jh
c2UueGNjb25maWc6CisrCisrMjAxMS0wOS0wOCAgQW5kcmFzIEJlY3NpICA8YW5kcmFzLmJlY3Np
QG5va2lhLmNvbT4KKysKKysgICAgICAgIFtRdF0gQnVpbGQgZmFpbHMgd2l0aCBzdHJpY3QgY29t
cGlsZXIKKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02
Nzc3OAorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgQ3NhYmEgT3N6dHJvZ29uw6FjLgorKworKyAg
ICAgICAgKiBzcmMvY29tcGlsZXIvZ2xzbGFuZ19sZXguY3BwOiBSZWdlbmVyYXRlIHdpdGggZ2Vu
ZXJhdGVfZ2xzbGFuZ19sZXhlci5zaCB1c2luZyBhIG5ld2VyIGZsZXgKKysgICAgICAgIHRvIHN1
cHByZXNzIHdhcm5pbmcgYW5kIGZpeCB0aGUgYnVpbGQgd2hlbiB1c2luZyBbLVdlcnJvcj11bnVz
ZWQtcmVzdWx0XQorKworKzIwMTEtMDgtMTIgIE1hcmsgUm93ZSAgPG1yb3dlQGFwcGxlLmNvbT4K
KysKKysgICAgICAgIEJlIG1vcmUgZm9yd2FyZC1sb29raW5nIGluIHRoZSBjaG9pY2Ugb2YgY29t
cGlsZXIuCisrCisrICAgICAgICBSdWJiZXItc3RhbXBlZCBieSBKb24gSG9uZXljdXR0LgorKwor
KyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9Db21waWxlclZlcnNpb24ueGNjb25maWc6CisrCisr
MjAxMS0wOC0xMSAgUmVuYXRhIEhvZG92YW4gIDxyZW5pQHdlYmtpdC5vcmc+CisrCisrICAgICAg
ICBbUXRdRml4IHdhcm5pbmdzIGFmdGVyIHI5MjgwNS4KKysKKysgICAgICAgIFJldmlld2VkIGJ5
IENzYWJhIE9zenRyb2dvbsOhYy4KKysKKysgICAgICAgIENvbnRyb2wgcmVhY2hlZCB0aGUgZW5k
IG5vbi12b2lkIGZ1bmN0aW9ucy4KKysKKysgICAgICAgICogc3JjL2NvbXBpbGVyL29zc291cmNl
X3Bvc2l4LmNwcDoKKysgICAgICAgIChPU19BbGxvY1RMU0luZGV4KToKKysgICAgICAgIChPU19T
ZXRUTFNWYWx1ZSk6CisrCisrMjAxMS0wOC0xMSAgUmVuYXRhIEhvZG92YW4gIDxyZW5pQHdlYmtp
dC5vcmc+CisrCisrICAgICAgICBCdWlsZCBmaXggb24gUXQgV2luZG93cyAzMi1iaXQgUmVsZWFz
ZS9EZWJ1ZyBhZnRlciByOTI4MDUuCisrCisrICAgICAgICBVbnJldmlld2VkLgorKworKyAgICAg
ICAgKiBzcmMvY29tcGlsZXIvb3Nzb3VyY2VfcG9zaXguY3BwOgorKyAgICAgICAgKE9TX0ZyZWVU
TFNJbmRleCk6CisrCisrMjAxMS0wOC0wNCAgTWFyayBSb3dlICA8bXJvd2VAYXBwbGUuY29tPgor
KworKyAgICAgICAgRnV0dXJlLXByb29mIFhjb2RlIGNvbmZpZ3VyYXRpb24gc2V0dGluZ3MuCisr
CisrICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWc6CisrICAgICAgICAqIENv
bmZpZ3VyYXRpb25zL0NvbXBpbGVyVmVyc2lvbi54Y2NvbmZpZzoKKysgICAgICAgICogQ29uZmln
dXJhdGlvbnMvRGVidWdSZWxlYXNlLnhjY29uZmlnOgorKworKzIwMTEtMDYtMzAgIE1hcmsgUm93
ZSAgPG1yb3dlQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFJ1YmJlci1zdGFtcGVkIGJ5IERhbiBC
ZXJuc3RlaW4uCisrCisrICAgICAgICBBTkdMRSBzaG91bGRuJ3QgdHJ5IHRvIHVzZSBpbnRlcm5h
bCBTREtzLiBJdCBkb2Vzbid0IG5lZWQgdGhlbSEKKysKKysgICAgICAgICogQ29uZmlndXJhdGlv
bnMvQmFzZS54Y2NvbmZpZzoKKysKKysyMDExLTA2LTIwICBaaGVueWFvIE1vICA8em1vQGdvb2ds
ZS5jb20+CisrCisrICAgICAgICBSZXZpZXdlZCBieSBLZW5uZXRoIFJ1c3NlbGwuCisrCisrICAg
ICAgICBVcGRhdGUgQU5HTEUgdG8gcjY5NgorKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTU2Mzk2CisrCisrICAgICAgICAqIEFOR0xFLnhjb2RlcHJvai9w
cm9qZWN0LnBieHByb2o6CisrICAgICAgICAqIGluY2x1ZGUvRUdML2VnbGV4dC5oOgorKyAgICAg
ICAgKiBpbmNsdWRlL0dMU0xBTkcvU2hhZGVyTGFuZy5oOgorKyAgICAgICAgKiBzcmMvYnVpbGRf
YW5nbGUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKysgICAgICAgICogc3JjL2NvbW1vbi9k
ZWJ1Zy5jcHA6CisrICAgICAgICAoZ2w6Om91dHB1dCk6CisrICAgICAgICAoZ2w6OnRyYWNlKToK
KysgICAgICAgIChnbDo6cGVyZkFjdGl2ZSk6CisrICAgICAgICAoZ2w6OlNjb3BlZFBlcmZFdmVu
dEhlbHBlcjo6U2NvcGVkUGVyZkV2ZW50SGVscGVyKToKKysgICAgICAgIChnbDo6U2NvcGVkUGVy
ZkV2ZW50SGVscGVyOjp+U2NvcGVkUGVyZkV2ZW50SGVscGVyKToKKysgICAgICAgICogc3JjL2Nv
bW1vbi9kZWJ1Zy5oOgorKyAgICAgICAgKiBzcmMvY29tbW9uL3ZlcnNpb24uaDogQWRkZWQuCisr
ICAgICAgICAqIHNyYy9jb21waWxlci9Db2RlR2VuR0xTTC5jcHA6CisrICAgICAgICAoQ29uc3Ry
dWN0Q29tcGlsZXIpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvQ29kZUdlbkhMU0wuY3BwOgor
KyAgICAgICAgKENvbnN0cnVjdENvbXBpbGVyKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL0Nv
bXBpbGVyLmNwcDoKKysgICAgICAgIChUQ29tcGlsZXI6OmNvbXBpbGUpOgorKyAgICAgICAgKFRD
b21waWxlcjo6bWFwTG9uZ1ZhcmlhYmxlTmFtZXMpOgorKyAgICAgICAgKFRDb21waWxlcjo6Z2V0
TWFwcGVkTmFtZU1heExlbmd0aCk6CisrICAgICAgICAoVENvbXBpbGVyOjpnZXRFeHRlbnNpb25C
ZWhhdmlvcik6CisrICAgICAgICAqIHNyYy9jb21waWxlci9Db25zdGFudFVuaW9uLmg6CisrICAg
ICAgICAoQ29uc3RhbnRVbmlvbjo6b3BlcmF0b3I9PSk6CisrICAgICAgICAoQ29uc3RhbnRVbmlv
bjo6b3BlcmF0b3I+KToKKysgICAgICAgIChDb25zdGFudFVuaW9uOjpvcGVyYXRvcjwpOgorKyAg
ICAgICAgKiBzcmMvY29tcGlsZXIvRXh0ZW5zaW9uQmVoYXZpb3IuaDoKKysgICAgICAgIChnZXRC
ZWhhdmlvclN0cmluZyk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9Gb3JMb29wVW5yb2xsLmNw
cDogQWRkZWQuCisrICAgICAgICAoRm9yTG9vcFVucm9sbDo6RmlsbExvb3BJbmRleEluZm8pOgor
KyAgICAgICAgKEZvckxvb3BVbnJvbGw6OlN0ZXApOgorKyAgICAgICAgKEZvckxvb3BVbnJvbGw6
OlNhdGlzZmllc0xvb3BDb25kaXRpb24pOgorKyAgICAgICAgKEZvckxvb3BVbnJvbGw6Ok5lZWRz
VG9SZXBsYWNlU3ltYm9sV2l0aFZhbHVlKToKKysgICAgICAgIChGb3JMb29wVW5yb2xsOjpHZXRM
b29wSW5kZXhWYWx1ZSk6CisrICAgICAgICAoRm9yTG9vcFVucm9sbDo6UHVzaCk6CisrICAgICAg
ICAoRm9yTG9vcFVucm9sbDo6UG9wKToKKysgICAgICAgIChGb3JMb29wVW5yb2xsOjpnZXRMb29w
SW5jcmVtZW50KToKKysgICAgICAgIChGb3JMb29wVW5yb2xsOjpldmFsdWF0ZUludENvbnN0YW50
KToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL0Zvckxvb3BVbnJvbGwuaDogQWRkZWQuCisrICAg
ICAgICAoRm9yTG9vcFVucm9sbDo6Rm9yTG9vcFVucm9sbCk6CisrICAgICAgICAqIHNyYy9jb21w
aWxlci9Jbml0aWFsaXplLmNwcDoKKysgICAgICAgIChCdWlsdEluRnVuY3Rpb25zVmVydGV4KToK
KysgICAgICAgICogc3JjL2NvbXBpbGVyL01hcExvbmdWYXJpYWJsZU5hbWVzLmNwcDogQWRkZWQu
CisrICAgICAgICAoTWFwTG9uZ1ZhcmlhYmxlTmFtZXM6Ok1hcExvbmdWYXJpYWJsZU5hbWVzKToK
KysgICAgICAgIChNYXBMb25nVmFyaWFibGVOYW1lczo6dmlzaXRTeW1ib2wpOgorKyAgICAgICAg
KE1hcExvbmdWYXJpYWJsZU5hbWVzOjp2aXNpdENvbnN0YW50VW5pb24pOgorKyAgICAgICAgKE1h
cExvbmdWYXJpYWJsZU5hbWVzOjp2aXNpdEJpbmFyeSk6CisrICAgICAgICAoTWFwTG9uZ1Zhcmlh
YmxlTmFtZXM6OnZpc2l0VW5hcnkpOgorKyAgICAgICAgKE1hcExvbmdWYXJpYWJsZU5hbWVzOjp2
aXNpdFNlbGVjdGlvbik6CisrICAgICAgICAoTWFwTG9uZ1ZhcmlhYmxlTmFtZXM6OnZpc2l0QWdn
cmVnYXRlKToKKysgICAgICAgIChNYXBMb25nVmFyaWFibGVOYW1lczo6dmlzaXRMb29wKToKKysg
ICAgICAgIChNYXBMb25nVmFyaWFibGVOYW1lczo6dmlzaXRCcmFuY2gpOgorKyAgICAgICAgKE1h
cExvbmdWYXJpYWJsZU5hbWVzOjptYXBWYXJ5aW5nTG9uZ05hbWUpOgorKyAgICAgICAgKiBzcmMv
Y29tcGlsZXIvTWFwTG9uZ1ZhcmlhYmxlTmFtZXMuaDogQWRkZWQuCisrICAgICAgICAqIHNyYy9j
b21waWxlci9PdXRwdXRFU1NMLmNwcDogQWRkZWQuCisrICAgICAgICAoVE91dHB1dEVTU0w6OlRP
dXRwdXRFU1NMKToKKysgICAgICAgIChUT3V0cHV0RVNTTDo6d3JpdGVWYXJpYWJsZVByZWNpc2lv
bik6CisrICAgICAgICAqIHNyYy9jb21waWxlci9PdXRwdXRFU1NMLmg6IEFkZGVkLgorKyAgICAg
ICAgKiBzcmMvY29tcGlsZXIvT3V0cHV0R0xTTC5jcHA6CisrICAgICAgICAoVE91dHB1dEdMU0w6
OlRPdXRwdXRHTFNMKToKKysgICAgICAgIChUT3V0cHV0R0xTTDo6d3JpdGVWYXJpYWJsZVByZWNp
c2lvbik6CisrICAgICAgICAqIHNyYy9jb21waWxlci9PdXRwdXRHTFNMLmg6CisrICAgICAgICAq
IHNyYy9jb21waWxlci9PdXRwdXRHTFNMQmFzZS5jcHA6IEFkZGVkLgorKyAgICAgICAgKFRPdXRw
dXRHTFNMQmFzZTo6VE91dHB1dEdMU0xCYXNlKToKKysgICAgICAgIChUT3V0cHV0R0xTTEJhc2U6
OndyaXRlVHJpcGxldCk6CisrICAgICAgICAoVE91dHB1dEdMU0xCYXNlOjp3cml0ZVZhcmlhYmxl
VHlwZSk6CisrICAgICAgICAoVE91dHB1dEdMU0xCYXNlOjp3cml0ZUZ1bmN0aW9uUGFyYW1ldGVy
cyk6CisrICAgICAgICAoVE91dHB1dEdMU0xCYXNlOjp3cml0ZUNvbnN0YW50VW5pb24pOgorKyAg
ICAgICAgKFRPdXRwdXRHTFNMQmFzZTo6dmlzaXRTeW1ib2wpOgorKyAgICAgICAgKFRPdXRwdXRH
TFNMQmFzZTo6dmlzaXRDb25zdGFudFVuaW9uKToKKysgICAgICAgIChUT3V0cHV0R0xTTEJhc2U6
OnZpc2l0QmluYXJ5KToKKysgICAgICAgIChUT3V0cHV0R0xTTEJhc2U6OnZpc2l0VW5hcnkpOgor
KyAgICAgICAgKFRPdXRwdXRHTFNMQmFzZTo6dmlzaXRTZWxlY3Rpb24pOgorKyAgICAgICAgKFRP
dXRwdXRHTFNMQmFzZTo6dmlzaXRBZ2dyZWdhdGUpOgorKyAgICAgICAgKFRPdXRwdXRHTFNMQmFz
ZTo6dmlzaXRMb29wKToKKysgICAgICAgIChUT3V0cHV0R0xTTEJhc2U6OnZpc2l0QnJhbmNoKToK
KysgICAgICAgIChUT3V0cHV0R0xTTEJhc2U6OnZpc2l0Q29kZUJsb2NrKToKKysgICAgICAgICog
c3JjL2NvbXBpbGVyL091dHB1dEdMU0xCYXNlLmg6IEFkZGVkLgorKyAgICAgICAgKFRPdXRwdXRH
TFNMQmFzZTo6b2JqU2luayk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9PdXRwdXRITFNMLmNw
cDoKKysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6T3V0cHV0SExTTCk6CisrICAgICAgICAoc2g6
Ok91dHB1dEhMU0w6OmhlYWRlcik6CisrICAgICAgICAoc2g6Ok91dHB1dEhMU0w6OnZpc2l0VW5h
cnkpOgorKyAgICAgICAgKHNoOjpPdXRwdXRITFNMOjp2aXNpdEFnZ3JlZ2F0ZSk6CisrICAgICAg
ICAoc2g6Ok91dHB1dEhMU0w6OnZpc2l0U2VsZWN0aW9uKToKKysgICAgICAgIChzaDo6T3V0cHV0
SExTTDo6dmlzaXRMb29wKToKKysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6dmlzaXRCcmFuY2gp
OgorKyAgICAgICAgKHNoOjpPdXRwdXRITFNMOjpoYW5kbGVFeGNlc3NpdmVMb29wKToKKysgICAg
ICAgIChzaDo6T3V0cHV0SExTTDo6b3V0cHV0TGluZURpcmVjdGl2ZSk6CisrICAgICAgICAqIHNy
Yy9jb21waWxlci9PdXRwdXRITFNMLmg6CisrICAgICAgICAqIHNyYy9jb21waWxlci9QYXJzZUhl
bHBlci5jcHA6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6cHJlY2lzaW9uRXJyb3JDaGVjayk6
CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6Y29uc3RydWN0b3JFcnJvckNoZWNrKToKKysgICAg
ICAgIChUUGFyc2VDb250ZXh0Ojpub25Jbml0RXJyb3JDaGVjayk6CisrICAgICAgICAqIHNyYy9j
b21waWxlci9QYXJzZUhlbHBlci5oOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OlRQYXJzZUNv
bnRleHQpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvU2hIYW5kbGUuaDoKKysgICAgICAgICog
c3JjL2NvbXBpbGVyL1NoYWRlckxhbmcuY3BwOgorKyAgICAgICAgKGdldFZhcmlhYmxlSW5mbyk6
CisrICAgICAgICAoU2hDb25zdHJ1Y3RDb21waWxlcik6CisrICAgICAgICAoU2hHZXRJbmZvKToK
KysgICAgICAgIChTaEdldEFjdGl2ZUF0dHJpYik6CisrICAgICAgICAoU2hHZXRBY3RpdmVVbmlm
b3JtKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL1RyYW5zbGF0b3JFU1NMLmNwcDogQWRkZWQu
CisrICAgICAgICAoVHJhbnNsYXRvckVTU0w6OlRyYW5zbGF0b3JFU1NMKToKKysgICAgICAgIChU
cmFuc2xhdG9yRVNTTDo6dHJhbnNsYXRlKToKKysgICAgICAgIChUcmFuc2xhdG9yRVNTTDo6d3Jp
dGVFeHRlbnNpb25CZWhhdmlvcik6CisrICAgICAgICAqIHNyYy9jb21waWxlci9UcmFuc2xhdG9y
RVNTTC5oOiBBZGRlZC4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL1ZhbGlkYXRlTGltaXRhdGlv
bnMuY3BwOgorKyAgICAgICAgKFZhbGlkYXRlTGltaXRhdGlvbnM6OnZpc2l0QmluYXJ5KToKKysg
ICAgICAgIChWYWxpZGF0ZUxpbWl0YXRpb25zOjp2aXNpdExvb3ApOgorKyAgICAgICAgKiBzcmMv
Y29tcGlsZXIvVmFsaWRhdGVMaW1pdGF0aW9ucy5oOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIv
VmFyaWFibGVJbmZvLmNwcDoKKysgICAgICAgIChnZXRWYXJpYWJsZUluZm8pOgorKyAgICAgICAg
KGdldEJ1aWx0SW5WYXJpYWJsZUluZm8pOgorKyAgICAgICAgKGdldFVzZXJEZWZpbmVkVmFyaWFi
bGVJbmZvKToKKysgICAgICAgIChDb2xsZWN0QXR0cmlic1VuaWZvcm1zOjp2aXNpdEFnZ3JlZ2F0
ZSk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9WYXJpYWJsZUluZm8uaDoKKysgICAgICAgICog
c3JjL2NvbXBpbGVyL1ZlcnNpb25HTFNMLmNwcDoKKysgICAgICAgIChUVmVyc2lvbkdMU0w6OnZp
c2l0U3ltYm9sKToKKysgICAgICAgIChUVmVyc2lvbkdMU0w6OnZpc2l0Q29uc3RhbnRVbmlvbik6
CisrICAgICAgICAoVFZlcnNpb25HTFNMOjp2aXNpdEJpbmFyeSk6CisrICAgICAgICAoVFZlcnNp
b25HTFNMOjp2aXNpdFVuYXJ5KToKKysgICAgICAgIChUVmVyc2lvbkdMU0w6OnZpc2l0U2VsZWN0
aW9uKToKKysgICAgICAgIChUVmVyc2lvbkdMU0w6OnZpc2l0QWdncmVnYXRlKToKKysgICAgICAg
IChUVmVyc2lvbkdMU0w6OnZpc2l0TG9vcCk6CisrICAgICAgICAoVFZlcnNpb25HTFNMOjp2aXNp
dEJyYW5jaCk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9WZXJzaW9uR0xTTC5oOgorKyAgICAg
ICAgKiBzcmMvY29tcGlsZXIvZ2xzbGFuZy55OgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvZ2xz
bGFuZ190YWIuY3BwOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvZ2xzbGFuZ190YWIuaDoKKysg
ICAgICAgICogc3JjL2NvbXBpbGVyL2ludGVybWVkaWF0ZS5oOgorKyAgICAgICAgKFRJbnRlcm1M
b29wOjpUSW50ZXJtTG9vcCk6CisrICAgICAgICAoVEludGVybUxvb3A6OnNldFVucm9sbEZsYWcp
OgorKyAgICAgICAgKFRJbnRlcm1Mb29wOjpnZXRVbnJvbGxGbGFnKToKKysgICAgICAgIChUSW50
ZXJtU3ltYm9sOjpUSW50ZXJtU3ltYm9sKToKKysgICAgICAgIChUSW50ZXJtU3ltYm9sOjpzZXRJ
ZCk6CisrICAgICAgICAoVEludGVybVN5bWJvbDo6c2V0U3ltYm9sKToKKysgICAgICAgIChUSW50
ZXJtU3ltYm9sOjpnZXRPcmlnaW5hbFN5bWJvbCk6CisrICAgICAgICAoVEludGVybUFnZ3JlZ2F0
ZTo6VEludGVybUFnZ3JlZ2F0ZSk6CisrICAgICAgICAoVEludGVybUFnZ3JlZ2F0ZTo6c2V0RW5k
TGluZSk6CisrICAgICAgICAoVEludGVybUFnZ3JlZ2F0ZTo6Z2V0RW5kTGluZSk6CisrICAgICAg
ICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvYXRvbS5jOgorKyAgICAgICAgKEFkZFN0cmlu
Zyk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvY29tcGlsZS5oOgorKyAg
ICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL2NwcC5jOgorKyAgICAgICAgKENQUGVs
c2UpOgorKyAgICAgICAgKGV2YWwpOgorKyAgICAgICAgKENQUGlmKToKKysgICAgICAgIChDUFBp
ZmRlZik6CisrICAgICAgICAocmVhZENQUGxpbmUpOgorKyAgICAgICAgKENoa0NvcnJlY3RFbHNl
TmVzdGluZyk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvY3Bwc3RydWN0
LmM6CisrICAgICAgICAoUmVzZXRQcmVwcm9jZXNzb3IpOgorKyAgICAgICAgKiBzcmMvY29tcGls
ZXIvcHJlcHJvY2Vzc29yL3NjYW5uZXIuYzoKKysgICAgICAgIChieXRlX3NjYW4pOgorKyAgICAg
ICAgKHl5bGV4X0NQUCk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3Ivc2Nh
bm5lci5oOgorKyAgICAgICAgKiBzcmMvbGliRUdML0NvbmZpZy5jcHA6CisrICAgICAgICAoZWds
OjpDb25maWc6OkNvbmZpZyk6CisrICAgICAgICAoZWdsOjpDb25maWc6OnNldCk6CisrICAgICAg
ICAoZWdsOjpDb25maWdTZXQ6OmFkZCk6CisrICAgICAgICAoZWdsOjpDb25maWdTZXQ6OmdldENv
bmZpZ3MpOgorKyAgICAgICAgKiBzcmMvbGliRUdML0NvbmZpZy5oOgorKyAgICAgICAgKiBzcmMv
bGliRUdML0Rpc3BsYXkuY3BwOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6RGlzcGxheSk6Cisr
ICAgICAgICAoZWdsOjpEaXNwbGF5Ojppbml0aWFsaXplKToKKysgICAgICAgIChlZ2w6OkRpc3Bs
YXk6OnRlcm1pbmF0ZSk6CisrICAgICAgICAoZWdsOjpEaXNwbGF5OjpnZXRDb25maWdBdHRyaWIp
OgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6Y3JlYXRlRGV2aWNlKToKKysgICAgICAgIChlZ2w6
OkRpc3BsYXk6OmNyZWF0ZVdpbmRvd1N1cmZhY2UpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6
Y3JlYXRlT2Zmc2NyZWVuU3VyZmFjZSk6CisrICAgICAgICAoZWdsOjpEaXNwbGF5OjpjcmVhdGVD
b250ZXh0KToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OmRlc3Ryb3lDb250ZXh0KToKKysgICAg
ICAgIChlZ2w6OkRpc3BsYXk6OmlzSW5pdGlhbGl6ZWQpOgorKyAgICAgICAgKGVnbDo6RGlzcGxh
eTo6Z2V0QWRhcHRlcklkZW50aWZpZXIpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6aXNEZXZp
Y2VMb3N0KToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OmdldEJ1ZmZlclBvb2wpOgorKyAgICAg
ICAgKGVnbDo6RGlzcGxheTo6aW5pdEV4dGVuc2lvblN0cmluZyk6CisrICAgICAgICAoZWdsOjpE
aXNwbGF5OjpnZXRFeHRlbnNpb25TdHJpbmcpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6Z2V0
VmVydGV4VGV4dHVyZVN1cHBvcnQpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6Z2V0Tm9uUG93
ZXIyVGV4dHVyZVN1cHBvcnQpOgorKyAgICAgICAgKiBzcmMvbGliRUdML0Rpc3BsYXkuaDoKKysg
ICAgICAgIChlZ2w6OkRpc3BsYXk6OmlzRDNkOUV4RGV2aWNlKToKKysgICAgICAgICogc3JjL2xp
YkVHTC9TdXJmYWNlLmNwcDoKKysgICAgICAgIChlZ2w6OlN1cmZhY2U6OlN1cmZhY2UpOgorKyAg
ICAgICAgKGVnbDo6U3VyZmFjZTo6aW5pdGlhbGl6ZSk6CisrICAgICAgICAoZWdsOjpTdXJmYWNl
OjpyZWxlYXNlKToKKysgICAgICAgIChlZ2w6OlN1cmZhY2U6OnJlc2V0U3dhcENoYWluKToKKysg
ICAgICAgIChlZ2w6OlN1cmZhY2VXaW5kb3dQcm9jKToKKysgICAgICAgIChlZ2w6OlN1cmZhY2U6
OnN1YmNsYXNzV2luZG93KToKKysgICAgICAgIChlZ2w6OlN1cmZhY2U6OnVuc3ViY2xhc3NXaW5k
b3cpOgorKyAgICAgICAgKGVnbDo6U3VyZmFjZTo6c3dhcCk6CisrICAgICAgICAoZWdsOjpTdXJm
YWNlOjpnZXRSZW5kZXJUYXJnZXQpOgorKyAgICAgICAgKGVnbDo6U3VyZmFjZTo6Z2V0T2Zmc2Ny
ZWVuVGV4dHVyZSk6CisrICAgICAgICAoZWdsOjpTdXJmYWNlOjpnZXRUZXh0dXJlRm9ybWF0KToK
KysgICAgICAgIChlZ2w6OlN1cmZhY2U6OmdldFRleHR1cmVUYXJnZXQpOgorKyAgICAgICAgKGVn
bDo6U3VyZmFjZTo6c2V0Qm91bmRUZXh0dXJlKToKKysgICAgICAgIChlZ2w6OlN1cmZhY2U6Omdl
dEJvdW5kVGV4dHVyZSk6CisrICAgICAgICAoZWdsOjpTdXJmYWNlOjpnZXRGb3JtYXQpOgorKyAg
ICAgICAgKiBzcmMvbGliRUdML1N1cmZhY2UuaDoKKysgICAgICAgIChlZ2w6OlN1cmZhY2U6Omdl
dFNoYXJlSGFuZGxlKToKKysgICAgICAgICogc3JjL2xpYkVHTC9saWJFR0wuY3BwOgorKyAgICAg
ICAgKHZhbGlkYXRlRGlzcGxheSk6CisrICAgICAgICAodmFsaWRhdGVDb25maWcpOgorKyAgICAg
ICAgKHZhbGlkYXRlQ29udGV4dCk6CisrICAgICAgICAodmFsaWRhdGVTdXJmYWNlKToKKysgICAg
ICAgICogc3JjL2xpYkVHTC9saWJFR0wucmM6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGliRUdM
L2xpYkVHTC52Y3Byb2o6CisrICAgICAgICAqIHNyYy9saWJFR0wvbWFpbi5jcHA6CisrICAgICAg
ICAoRGxsTWFpbik6CisrICAgICAgICAqIHNyYy9saWJFR0wvbWFpbi5oOgorKyAgICAgICAgKiBz
cmMvbGliRUdML3Jlc291cmNlLmg6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL0Js
aXQuY3BwOgorKyAgICAgICAgKGdsOjpCbGl0Ojppbml0R2VvbWV0cnkpOgorKyAgICAgICAgKGds
OjpCbGl0Ojpjb3B5KToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9CbGl0Lmg6CisrICAgICAg
ICAqIHNyYy9saWJHTEVTdjIvQnVmZmVyLmNwcDoKKysgICAgICAgIChnbDo6QnVmZmVyOjpCdWZm
ZXIpOgorKyAgICAgICAgKGdsOjpCdWZmZXI6On5CdWZmZXIpOgorKyAgICAgICAgKGdsOjpCdWZm
ZXI6OmJ1ZmZlckRhdGEpOgorKyAgICAgICAgKGdsOjpCdWZmZXI6OmJ1ZmZlclN1YkRhdGEpOgor
KyAgICAgICAgKGdsOjpCdWZmZXI6OmdldFN0YXRpY1ZlcnRleEJ1ZmZlcik6CisrICAgICAgICAo
Z2w6OkJ1ZmZlcjo6Z2V0U3RhdGljSW5kZXhCdWZmZXIpOgorKyAgICAgICAgKGdsOjpCdWZmZXI6
OmludmFsaWRhdGVTdGF0aWNEYXRhKToKKysgICAgICAgIChnbDo6QnVmZmVyOjpwcm9tb3RlU3Rh
dGljVXNhZ2UpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL0J1ZmZlci5oOgorKyAgICAgICAg
KiBzcmMvbGliR0xFU3YyL0NvbnRleHQuY3BwOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpDb250
ZXh0KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6fkNvbnRleHQpOgorKyAgICAgICAgKGdsOjpD
b250ZXh0OjptYWtlQ3VycmVudCk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6Om1hcmtBbGxTdGF0
ZURpcnR5KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c2V0QWN0aXZlU2FtcGxlcik6CisrICAg
ICAgICAoZ2w6OkNvbnRleHQ6OmNyZWF0ZUZyYW1lYnVmZmVyKToKKysgICAgICAgIChnbDo6Q29u
dGV4dDo6Y3JlYXRlRmVuY2UpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpkZWxldGVGcmFtZWJ1
ZmZlcik6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmRlbGV0ZUZlbmNlKToKKysgICAgICAgIChn
bDo6Q29udGV4dDo6YmluZFRleHR1cmUyRCk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmJpbmRU
ZXh0dXJlQ3ViZU1hcCk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmdldFRleHR1cmUyRCk6Cisr
ICAgICAgICAoZ2w6OkNvbnRleHQ6OmdldFRleHR1cmVDdWJlTWFwKToKKysgICAgICAgIChnbDo6
Q29udGV4dDo6Z2V0U2FtcGxlclRleHR1cmUpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRJ
bnRlZ2Vydik6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmFwcGx5UmVuZGVyVGFyZ2V0KToKKysg
ICAgICAgIChnbDo6Q29udGV4dDo6YXBwbHlTdGF0ZSk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6
OmFwcGx5VmVydGV4QnVmZmVyKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6YXBwbHlTaGFkZXJz
KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6YXBwbHlUZXh0dXJlcyk6CisrICAgICAgICAoZ2w6
OkNvbnRleHQ6OnJlYWRQaXhlbHMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpjbGVhcik6Cisr
ICAgICAgICAoZ2w6OkNvbnRleHQ6OmRyYXdBcnJheXMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0
OjpkcmF3RWxlbWVudHMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpmaW5pc2gpOgorKyAgICAg
ICAgKGdsOjpDb250ZXh0OjpmbHVzaCk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmRyYXdDbG9z
aW5nTGluZSk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmdldE1heGltdW1WZXJ0ZXhUZXh0dXJl
SW1hZ2VVbml0cyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmdldE1heGltdW1Db21iaW5lZFRl
eHR1cmVJbWFnZVVuaXRzKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c3VwcG9ydHNOb25Qb3dl
cjJUZXh0dXJlKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6ZGV0YWNoVGV4dHVyZSk6CisrICAg
ICAgICAoZ2w6OkNvbnRleHQ6OmdldEluY29tcGxldGVUZXh0dXJlKToKKysgICAgICAgIChnbDo6
Q29udGV4dDo6aW5pdEV4dGVuc2lvblN0cmluZyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmJs
aXRGcmFtZWJ1ZmZlcik6CisrICAgICAgICAoZ2w6OlZlcnRleERlY2xhcmF0aW9uQ2FjaGU6OlZl
cnRleERlY2xhcmF0aW9uQ2FjaGUpOgorKyAgICAgICAgKGdsOjpWZXJ0ZXhEZWNsYXJhdGlvbkNh
Y2hlOjp+VmVydGV4RGVjbGFyYXRpb25DYWNoZSk6CisrICAgICAgICAoZ2w6OlZlcnRleERlY2xh
cmF0aW9uQ2FjaGU6OmFwcGx5RGVjbGFyYXRpb24pOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3Yy
L0NvbnRleHQuaDoKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9GcmFtZWJ1ZmZlci5jcHA6Cisr
ICAgICAgICAoZ2w6OkZyYW1lYnVmZmVyOjpsb29rdXBSZW5kZXJidWZmZXIpOgorKyAgICAgICAg
KGdsOjpGcmFtZWJ1ZmZlcjo6Y29tcGxldGVuZXNzKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2
Mi9GcmFtZWJ1ZmZlci5oOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL0hhbmRsZUFsbG9jYXRv
ci5jcHA6IEFkZGVkLgorKyAgICAgICAgKGdsOjpIYW5kbGVBbGxvY2F0b3I6OkhhbmRsZUFsbG9j
YXRvcik6CisrICAgICAgICAoZ2w6OkhhbmRsZUFsbG9jYXRvcjo6fkhhbmRsZUFsbG9jYXRvcik6
CisrICAgICAgICAoZ2w6OkhhbmRsZUFsbG9jYXRvcjo6c2V0QmFzZUhhbmRsZSk6CisrICAgICAg
ICAoZ2w6OkhhbmRsZUFsbG9jYXRvcjo6YWxsb2NhdGUpOgorKyAgICAgICAgKGdsOjpIYW5kbGVB
bGxvY2F0b3I6OnJlbGVhc2UpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL0hhbmRsZUFsbG9j
YXRvci5oOiBBZGRlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9JbmRleERhdGFNYW5hZ2Vy
LmNwcDogQWRkZWQuCisrICAgICAgICAoZ2w6OkluZGV4RGF0YU1hbmFnZXI6OkluZGV4RGF0YU1h
bmFnZXIpOgorKyAgICAgICAgKGdsOjpJbmRleERhdGFNYW5hZ2VyOjp+SW5kZXhEYXRhTWFuYWdl
cik6CisrICAgICAgICAoZ2w6OmNvbnZlcnRJbmRpY2VzKToKKysgICAgICAgIChnbDo6Y29tcHV0
ZVJhbmdlKToKKysgICAgICAgIChnbDo6SW5kZXhEYXRhTWFuYWdlcjo6cHJlcGFyZUluZGV4RGF0
YSk6CisrICAgICAgICAoZ2w6OkluZGV4RGF0YU1hbmFnZXI6OmluZGV4U2l6ZSk6CisrICAgICAg
ICAoZ2w6OkluZGV4RGF0YU1hbmFnZXI6OnR5cGVTaXplKToKKysgICAgICAgIChnbDo6SW5kZXhC
dWZmZXI6OkluZGV4QnVmZmVyKToKKysgICAgICAgIChnbDo6SW5kZXhCdWZmZXI6On5JbmRleEJ1
ZmZlcik6CisrICAgICAgICAoZ2w6OkluZGV4QnVmZmVyOjpnZXRCdWZmZXIpOgorKyAgICAgICAg
KGdsOjpJbmRleEJ1ZmZlcjo6dW5tYXApOgorKyAgICAgICAgKGdsOjpTdHJlYW1pbmdJbmRleEJ1
ZmZlcjo6U3RyZWFtaW5nSW5kZXhCdWZmZXIpOgorKyAgICAgICAgKGdsOjpTdHJlYW1pbmdJbmRl
eEJ1ZmZlcjo6flN0cmVhbWluZ0luZGV4QnVmZmVyKToKKysgICAgICAgIChnbDo6U3RyZWFtaW5n
SW5kZXhCdWZmZXI6Om1hcCk6CisrICAgICAgICAoZ2w6OlN0cmVhbWluZ0luZGV4QnVmZmVyOjpy
ZXNlcnZlU3BhY2UpOgorKyAgICAgICAgKGdsOjpTdGF0aWNJbmRleEJ1ZmZlcjo6U3RhdGljSW5k
ZXhCdWZmZXIpOgorKyAgICAgICAgKGdsOjpTdGF0aWNJbmRleEJ1ZmZlcjo6flN0YXRpY0luZGV4
QnVmZmVyKToKKysgICAgICAgIChnbDo6U3RhdGljSW5kZXhCdWZmZXI6Om1hcCk6CisrICAgICAg
ICAoZ2w6OlN0YXRpY0luZGV4QnVmZmVyOjpyZXNlcnZlU3BhY2UpOgorKyAgICAgICAgKGdsOjpT
dGF0aWNJbmRleEJ1ZmZlcjo6bG9va3VwVHlwZSk6CisrICAgICAgICAoZ2w6OlN0YXRpY0luZGV4
QnVmZmVyOjpsb29rdXBSYW5nZSk6CisrICAgICAgICAoZ2w6OlN0YXRpY0luZGV4QnVmZmVyOjph
ZGRSYW5nZSk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvSW5kZXhEYXRhTWFuYWdlci5oOiBB
ZGRlZC4KKysgICAgICAgIChnbDo6SW5kZXhCdWZmZXI6OnNpemUpOgorKyAgICAgICAgKiBzcmMv
bGliR0xFU3YyL1Byb2dyYW0uY3BwOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpnZXRTZW1hbnRp
Y0luZGV4KToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6Z2V0U2FtcGxlck1hcHBpbmcpOgorKyAg
ICAgICAgKGdsOjpQcm9ncmFtOjpnZXRTYW1wbGVyVGV4dHVyZVR5cGUpOgorKyAgICAgICAgKGds
OjpQcm9ncmFtOjpjb21waWxlVG9CaW5hcnkpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpwYWNr
VmFyeWluZ3MpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpsaW5rVmFyeWluZ3MpOgorKyAgICAg
ICAgKGdsOjpQcm9ncmFtOjpsaW5rKToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6bGlua1VuaWZv
cm1zKToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6ZGVmaW5lVW5pZm9ybSk6CisrICAgICAgICAo
Z2w6OlByb2dyYW06OmFwcGx5VW5pZm9ybTFpdik6CisrICAgICAgICAoZ2w6OlByb2dyYW06OmFw
cGVuZFRvSW5mb0xvZ1Nhbml0aXplZCk6CisrICAgICAgICAoZ2w6OlByb2dyYW06OnVubGluayk6
CisrICAgICAgICAoZ2w6OlByb2dyYW06OmdldEFjdGl2ZVVuaWZvcm1NYXhMZW5ndGgpOgorKyAg
ICAgICAgKGdsOjpQcm9ncmFtOjp2YWxpZGF0ZSk6CisrICAgICAgICAoZ2w6OlByb2dyYW06OnZh
bGlkYXRlU2FtcGxlcnMpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1Byb2dyYW0uaDoKKysg
ICAgICAgICogc3JjL2xpYkdMRVN2Mi9SZW5kZXJidWZmZXIuY3BwOgorKyAgICAgICAgKGdsOjpS
ZW5kZXJidWZmZXI6OmdldFdpZHRoKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyOjpnZXRI
ZWlnaHQpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXI6OmdldEludGVybmFsRm9ybWF0KToK
KysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyOjpnZXRSZWRTaXplKToKKysgICAgICAgIChnbDo6
UmVuZGVyYnVmZmVyOjpnZXRHcmVlblNpemUpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXI6
OmdldEJsdWVTaXplKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyOjpnZXRBbHBoYVNpemUp
OgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXI6OmdldERlcHRoU2l6ZSk6CisrICAgICAgICAo
Z2w6OlJlbmRlcmJ1ZmZlcjo6Z2V0U3RlbmNpbFNpemUpOgorKyAgICAgICAgKGdsOjpSZW5kZXJi
dWZmZXI6OmdldFNhbXBsZXMpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJTdG9yYWdlOjpS
ZW5kZXJidWZmZXJTdG9yYWdlKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyU3RvcmFnZTo6
Z2V0V2lkdGgpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJTdG9yYWdlOjpnZXRIZWlnaHQp
OgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJTdG9yYWdlOjpnZXRJbnRlcm5hbEZvcm1hdCk6
CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclN0b3JhZ2U6OmdldFJlZFNpemUpOgorKyAgICAg
ICAgKGdsOjpSZW5kZXJidWZmZXJTdG9yYWdlOjpnZXRHcmVlblNpemUpOgorKyAgICAgICAgKGds
OjpSZW5kZXJidWZmZXJTdG9yYWdlOjpnZXRCbHVlU2l6ZSk6CisrICAgICAgICAoZ2w6OlJlbmRl
cmJ1ZmZlclN0b3JhZ2U6OmdldEFscGhhU2l6ZSk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZl
clN0b3JhZ2U6OmdldERlcHRoU2l6ZSk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclN0b3Jh
Z2U6OmdldFN0ZW5jaWxTaXplKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyU3RvcmFnZTo6
Z2V0RDNERm9ybWF0KToKKysgICAgICAgIChnbDo6Q29sb3JidWZmZXI6OkNvbG9yYnVmZmVyKToK
KysgICAgICAgIChnbDo6Q29sb3JidWZmZXI6OmdldFdpZHRoKToKKysgICAgICAgIChnbDo6Q29s
b3JidWZmZXI6OmdldEhlaWdodCk6CisrICAgICAgICAoZ2w6OkNvbG9yYnVmZmVyOjpnZXRJbnRl
cm5hbEZvcm1hdCk6CisrICAgICAgICAoZ2w6OkNvbG9yYnVmZmVyOjpnZXRUeXBlKToKKysgICAg
ICAgIChnbDo6Q29sb3JidWZmZXI6OmdldEQzREZvcm1hdCk6CisrICAgICAgICAoZ2w6OkNvbG9y
YnVmZmVyOjppc0NvbG9yYnVmZmVyKToKKysgICAgICAgIChnbDo6Q29sb3JidWZmZXI6OmdldFJl
bmRlclRhcmdldCk6CisrICAgICAgICAoZ2w6OkRlcHRoU3RlbmNpbGJ1ZmZlcjo6RGVwdGhTdGVu
Y2lsYnVmZmVyKToKKysgICAgICAgIChnbDo6RGVwdGhidWZmZXI6OkRlcHRoYnVmZmVyKToKKysg
ICAgICAgIChnbDo6U3RlbmNpbGJ1ZmZlcjo6U3RlbmNpbGJ1ZmZlcik6CisrICAgICAgICAqIHNy
Yy9saWJHTEVTdjIvUmVuZGVyYnVmZmVyLmg6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvUmVz
b3VyY2VNYW5hZ2VyLmNwcDoKKysgICAgICAgIChnbDo6UmVzb3VyY2VNYW5hZ2VyOjpjcmVhdGVC
dWZmZXIpOgorKyAgICAgICAgKGdsOjpSZXNvdXJjZU1hbmFnZXI6OmNyZWF0ZVNoYWRlcik6Cisr
ICAgICAgICAoZ2w6OlJlc291cmNlTWFuYWdlcjo6Y3JlYXRlUHJvZ3JhbSk6CisrICAgICAgICAo
Z2w6OlJlc291cmNlTWFuYWdlcjo6Y3JlYXRlVGV4dHVyZSk6CisrICAgICAgICAoZ2w6OlJlc291
cmNlTWFuYWdlcjo6Y3JlYXRlUmVuZGVyYnVmZmVyKToKKysgICAgICAgIChnbDo6UmVzb3VyY2VN
YW5hZ2VyOjpkZWxldGVCdWZmZXIpOgorKyAgICAgICAgKGdsOjpSZXNvdXJjZU1hbmFnZXI6OmRl
bGV0ZVNoYWRlcik6CisrICAgICAgICAoZ2w6OlJlc291cmNlTWFuYWdlcjo6ZGVsZXRlUHJvZ3Jh
bSk6CisrICAgICAgICAoZ2w6OlJlc291cmNlTWFuYWdlcjo6ZGVsZXRlVGV4dHVyZSk6CisrICAg
ICAgICAoZ2w6OlJlc291cmNlTWFuYWdlcjo6ZGVsZXRlUmVuZGVyYnVmZmVyKToKKysgICAgICAg
IChnbDo6UmVzb3VyY2VNYW5hZ2VyOjpjaGVja1RleHR1cmVBbGxvY2F0aW9uKToKKysgICAgICAg
ICogc3JjL2xpYkdMRVN2Mi9SZXNvdXJjZU1hbmFnZXIuaDoKKysgICAgICAgICogc3JjL2xpYkdM
RVN2Mi9TaGFkZXIuY3BwOgorKyAgICAgICAgKGdsOjpTaGFkZXI6OlNoYWRlcik6CisrICAgICAg
ICAoZ2w6OlNoYWRlcjo6Y29tcGlsZVRvSExTTCk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIv
U2hhZGVyLmg6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvVGV4dHVyZS5jcHA6CisrICAgICAg
ICAoZ2w6OlRleHR1cmU6OkltYWdlOjpJbWFnZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6Oklt
YWdlOjp+SW1hZ2UpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpJbWFnZTo6aXNSZW5kZXJhYmxl
KToKKysgICAgICAgIChnbDo6VGV4dHVyZTo6SW1hZ2U6OmdldEQzREZvcm1hdCk6CisrICAgICAg
ICAoZ2w6OlRleHR1cmU6OlRleHR1cmUpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpzZXRNaW5G
aWx0ZXIpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpzZXRNYWdGaWx0ZXIpOgorKyAgICAgICAg
KGdsOjpUZXh0dXJlOjpzZXRXcmFwUyk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OnNldFdyYXBU
KToKKysgICAgICAgIChnbDo6VGV4dHVyZTo6bG9hZEltYWdlRGF0YSk6CisrICAgICAgICAoZ2w6
OlRleHR1cmU6OmxvYWRBbHBoYUltYWdlRGF0YSk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6Omxv
YWRBbHBoYUZsb2F0SW1hZ2VEYXRhKToKKysgICAgICAgIChnbDo6VGV4dHVyZTo6bG9hZEFscGhh
SGFsZkZsb2F0SW1hZ2VEYXRhKToKKysgICAgICAgIChnbDo6VGV4dHVyZTo6bG9hZEx1bWluYW5j
ZUltYWdlRGF0YSk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OmxvYWRMdW1pbmFuY2VGbG9hdElt
YWdlRGF0YSk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OmxvYWRMdW1pbmFuY2VIYWxmRmxvYXRJ
bWFnZURhdGEpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpsb2FkTHVtaW5hbmNlQWxwaGFJbWFn
ZURhdGEpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpsb2FkTHVtaW5hbmNlQWxwaGFGbG9hdElt
YWdlRGF0YSk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OmxvYWRMdW1pbmFuY2VBbHBoYUhhbGZG
bG9hdEltYWdlRGF0YSk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OmxvYWRSR0JVQnl0ZUltYWdl
RGF0YSk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OmxvYWRSR0I1NjVJbWFnZURhdGEpOgorKyAg
ICAgICAgKGdsOjpUZXh0dXJlOjpsb2FkUkdCRmxvYXRJbWFnZURhdGEpOgorKyAgICAgICAgKGds
OjpUZXh0dXJlOjpsb2FkUkdCSGFsZkZsb2F0SW1hZ2VEYXRhKToKKysgICAgICAgIChnbDo6VGV4
dHVyZTo6bG9hZFJHQkFVQnl0ZUltYWdlRGF0YVNTRTIpOgorKyAgICAgICAgKGdsOjpUZXh0dXJl
Ojpsb2FkUkdCQVVCeXRlSW1hZ2VEYXRhKToKKysgICAgICAgIChnbDo6VGV4dHVyZTo6bG9hZFJH
QkE0NDQ0SW1hZ2VEYXRhKToKKysgICAgICAgIChnbDo6VGV4dHVyZTo6bG9hZFJHQkE1NTUxSW1h
Z2VEYXRhKToKKysgICAgICAgIChnbDo6VGV4dHVyZTo6bG9hZFJHQkFGbG9hdEltYWdlRGF0YSk6
CisrICAgICAgICAoZ2w6OlRleHR1cmU6OmxvYWRSR0JBSGFsZkZsb2F0SW1hZ2VEYXRhKToKKysg
ICAgICAgIChnbDo6VGV4dHVyZTo6bG9hZEJHUkFJbWFnZURhdGEpOgorKyAgICAgICAgKGdsOjpU
ZXh0dXJlOjpsb2FkQ29tcHJlc3NlZEltYWdlRGF0YSk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6
OmNyZWF0ZVN1cmZhY2UpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpzZXRJbWFnZSk6CisrICAg
ICAgICAoZ2w6OlRleHR1cmU6OnNldENvbXByZXNzZWRJbWFnZSk6CisrICAgICAgICAoZ2w6OlRl
eHR1cmU6OnN1YkltYWdlKToKKysgICAgICAgIChnbDo6VGV4dHVyZTo6c3ViSW1hZ2VDb21wcmVz
c2VkKToKKysgICAgICAgIChnbDo6VGV4dHVyZTo6Y29weVRvSW1hZ2UpOgorKyAgICAgICAgKGds
OjpUZXh0dXJlOjpnZXRUZXh0dXJlKToKKysgICAgICAgIChnbDo6VGV4dHVyZTo6aXNEaXJ0eVBh
cmFtZXRlcik6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OmlzRGlydHlJbWFnZSk6CisrICAgICAg
ICAoZ2w6OlRleHR1cmU6OnJlc2V0RGlydHkpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpnZXRT
ZXJpYWwpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpjcmVhdGlvbkxldmVscyk6CisrICAgICAg
ICAoZ2w6OlRleHR1cmU6OmxldmVsQ291bnQpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjppc3N1
ZVNlcmlhbCk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6VGV4dHVyZTJEKToKKysgICAgICAg
IChnbDo6VGV4dHVyZTJEOjp+VGV4dHVyZTJEKToKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjpn
ZXRXaWR0aCk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6Z2V0SGVpZ2h0KToKKysgICAgICAg
IChnbDo6VGV4dHVyZTJEOjpnZXRJbnRlcm5hbEZvcm1hdCk6CisrICAgICAgICAoZ2w6OlRleHR1
cmUyRDo6Z2V0VHlwZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6Z2V0RDNERm9ybWF0KToK
KysgICAgICAgIChnbDo6VGV4dHVyZTJEOjpyZWRlZmluZVRleHR1cmUpOgorKyAgICAgICAgKGds
OjpUZXh0dXJlMkQ6OnNldEltYWdlKToKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjpiaW5kVGV4
SW1hZ2UpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlMkQ6OnJlbGVhc2VUZXhJbWFnZSk6CisrICAg
ICAgICAoZ2w6OlRleHR1cmUyRDo6c2V0Q29tcHJlc3NlZEltYWdlKToKKysgICAgICAgIChnbDo6
VGV4dHVyZTJEOjpjb21taXRSZWN0KToKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjpjb3B5SW1h
Z2UpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlMkQ6OmNvcHlTdWJJbWFnZSk6CisrICAgICAgICAo
Z2w6OlRleHR1cmUyRDo6aXNDb21wbGV0ZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6aXND
b21wcmVzc2VkKToKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjpnZXRCYXNlVGV4dHVyZSk6Cisr
ICAgICAgICAoZ2w6OlRleHR1cmUyRDo6Y3JlYXRlVGV4dHVyZSk6CisrICAgICAgICAoZ2w6OlRl
eHR1cmUyRDo6dXBkYXRlVGV4dHVyZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6Y29udmVy
dFRvUmVuZGVyVGFyZ2V0KToKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjpnZW5lcmF0ZU1pcG1h
cHMpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlMkQ6OmdldFJlbmRlcmJ1ZmZlcik6CisrICAgICAg
ICAoZ2w6OlRleHR1cmUyRDo6Z2V0UmVuZGVyVGFyZ2V0KToKKysgICAgICAgIChnbDo6VGV4dHVy
ZUN1YmVNYXA6OmdldFdpZHRoKToKKysgICAgICAgIChnbDo6VGV4dHVyZUN1YmVNYXA6OmdldEhl
aWdodCk6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpnZXRJbnRlcm5hbEZvcm1hdCk6
CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpnZXRUeXBlKToKKysgICAgICAgIChnbDo6
VGV4dHVyZUN1YmVNYXA6OmdldEQzREZvcm1hdCk6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJl
TWFwOjpzZXRJbWFnZVBvc1gpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6c2V0SW1h
Z2VOZWdYKToKKysgICAgICAgIChnbDo6VGV4dHVyZUN1YmVNYXA6OnNldEltYWdlUG9zWSk6Cisr
ICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpzZXRJbWFnZU5lZ1kpOgorKyAgICAgICAgKGds
OjpUZXh0dXJlQ3ViZU1hcDo6c2V0SW1hZ2VQb3NaKToKKysgICAgICAgIChnbDo6VGV4dHVyZUN1
YmVNYXA6OnNldEltYWdlTmVnWik6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpzZXRD
b21wcmVzc2VkSW1hZ2UpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6Y29tbWl0UmVj
dCk6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjppc0NvbXBsZXRlKToKKysgICAgICAg
IChnbDo6VGV4dHVyZUN1YmVNYXA6OmlzQ29tcHJlc3NlZCk6CisrICAgICAgICAoZ2w6OlRleHR1
cmVDdWJlTWFwOjpnZXRCYXNlVGV4dHVyZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFw
OjpjcmVhdGVUZXh0dXJlKToKKysgICAgICAgIChnbDo6VGV4dHVyZUN1YmVNYXA6OnVwZGF0ZVRl
eHR1cmUpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6Y29udmVydFRvUmVuZGVyVGFy
Z2V0KToKKysgICAgICAgIChnbDo6VGV4dHVyZUN1YmVNYXA6OnNldEltYWdlKToKKysgICAgICAg
IChnbDo6VGV4dHVyZUN1YmVNYXA6OnJlZGVmaW5lVGV4dHVyZSk6CisrICAgICAgICAoZ2w6OlRl
eHR1cmVDdWJlTWFwOjpjb3B5SW1hZ2UpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6
Z2V0Q3ViZU1hcFN1cmZhY2UpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6Y29weVN1
YkltYWdlKToKKysgICAgICAgIChnbDo6VGV4dHVyZUN1YmVNYXA6OmdlbmVyYXRlTWlwbWFwcyk6
CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpnZXRSZW5kZXJidWZmZXIpOgorKyAgICAg
ICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6Z2V0UmVuZGVyVGFyZ2V0KToKKysgICAgICAgICogc3Jj
L2xpYkdMRVN2Mi9UZXh0dXJlLmg6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvVmVydGV4RGF0
YU1hbmFnZXIuY3BwOiBBZGRlZC4KKysgICAgICAgIChnbDo6VmVydGV4RGF0YU1hbmFnZXI6OlZl
cnRleERhdGFNYW5hZ2VyKToKKysgICAgICAgIChnbDo6VmVydGV4RGF0YU1hbmFnZXI6On5WZXJ0
ZXhEYXRhTWFuYWdlcik6CisrICAgICAgICAoZ2w6OlZlcnRleERhdGFNYW5hZ2VyOjp3cml0ZUF0
dHJpYnV0ZURhdGEpOgorKyAgICAgICAgKGdsOjpWZXJ0ZXhEYXRhTWFuYWdlcjo6cHJlcGFyZVZl
cnRleERhdGEpOgorKyAgICAgICAgKGdsOjpWZXJ0ZXhEYXRhTWFuYWdlcjo6c3BhY2VSZXF1aXJl
ZCk6CisrICAgICAgICAoZ2w6OlZlcnRleERhdGFNYW5hZ2VyOjpjaGVja1ZlcnRleENhcHMpOgor
KyAgICAgICAgKGdsOjpWZXJ0ZXhEYXRhTWFuYWdlcjo6dHlwZUluZGV4KToKKysgICAgICAgIChn
bDo6VmVydGV4QnVmZmVyOjpWZXJ0ZXhCdWZmZXIpOgorKyAgICAgICAgKGdsOjpWZXJ0ZXhCdWZm
ZXI6On5WZXJ0ZXhCdWZmZXIpOgorKyAgICAgICAgKGdsOjpWZXJ0ZXhCdWZmZXI6OnVubWFwKToK
KysgICAgICAgIChnbDo6VmVydGV4QnVmZmVyOjpnZXRCdWZmZXIpOgorKyAgICAgICAgKGdsOjpD
b25zdGFudFZlcnRleEJ1ZmZlcjo6Q29uc3RhbnRWZXJ0ZXhCdWZmZXIpOgorKyAgICAgICAgKGds
OjpDb25zdGFudFZlcnRleEJ1ZmZlcjo6fkNvbnN0YW50VmVydGV4QnVmZmVyKToKKysgICAgICAg
IChnbDo6QXJyYXlWZXJ0ZXhCdWZmZXI6OkFycmF5VmVydGV4QnVmZmVyKToKKysgICAgICAgIChn
bDo6QXJyYXlWZXJ0ZXhCdWZmZXI6On5BcnJheVZlcnRleEJ1ZmZlcik6CisrICAgICAgICAoZ2w6
OkFycmF5VmVydGV4QnVmZmVyOjphZGRSZXF1aXJlZFNwYWNlKToKKysgICAgICAgIChnbDo6QXJy
YXlWZXJ0ZXhCdWZmZXI6OmFkZFJlcXVpcmVkU3BhY2VGb3IpOgorKyAgICAgICAgKGdsOjpTdHJl
YW1pbmdWZXJ0ZXhCdWZmZXI6OlN0cmVhbWluZ1ZlcnRleEJ1ZmZlcik6CisrICAgICAgICAoZ2w6
OlN0cmVhbWluZ1ZlcnRleEJ1ZmZlcjo6flN0cmVhbWluZ1ZlcnRleEJ1ZmZlcik6CisrICAgICAg
ICAoZ2w6OlN0cmVhbWluZ1ZlcnRleEJ1ZmZlcjo6bWFwKToKKysgICAgICAgIChnbDo6U3RyZWFt
aW5nVmVydGV4QnVmZmVyOjpyZXNlcnZlUmVxdWlyZWRTcGFjZSk6CisrICAgICAgICAoZ2w6OlN0
YXRpY1ZlcnRleEJ1ZmZlcjo6U3RhdGljVmVydGV4QnVmZmVyKToKKysgICAgICAgIChnbDo6U3Rh
dGljVmVydGV4QnVmZmVyOjp+U3RhdGljVmVydGV4QnVmZmVyKToKKysgICAgICAgIChnbDo6U3Rh
dGljVmVydGV4QnVmZmVyOjptYXApOgorKyAgICAgICAgKGdsOjpTdGF0aWNWZXJ0ZXhCdWZmZXI6
OnJlc2VydmVSZXF1aXJlZFNwYWNlKToKKysgICAgICAgIChnbDo6U3RhdGljVmVydGV4QnVmZmVy
Ojpsb29rdXBBdHRyaWJ1dGUpOgorKyAgICAgICAgKGdsOjpWZXJ0ZXhEYXRhTWFuYWdlcjo6Zm9y
bWF0Q29udmVydGVyKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9WZXJ0ZXhEYXRhTWFuYWdl
ci5oOiBBZGRlZC4KKysgICAgICAgIChnbDo6QXJyYXlWZXJ0ZXhCdWZmZXI6OnNpemUpOgorKyAg
ICAgICAgKGdsOjpWZXJ0ZXhEYXRhTWFuYWdlcjo6ZGlydHlDdXJyZW50VmFsdWUpOgorKyAgICAg
ICAgKiBzcmMvbGliR0xFU3YyL2xpYkdMRVN2Mi5jcHA6CisrICAgICAgICAodmFsaWRJbWFnZVNp
emUpOgorKyAgICAgICAgKEV4dGVuc2lvbjo6Z2xCaW5kVGV4SW1hZ2UpOgorKyAgICAgICAgKiBz
cmMvbGliR0xFU3YyL2xpYkdMRVN2Mi5kZWY6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvbGli
R0xFU3YyLnJjOiBBZGRlZC4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9saWJHTEVTdjIudmNw
cm9qOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL21haW4uY3BwOgorKyAgICAgICAgKGVycm9y
KToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9tYXRodXRpbC5oOgorKyAgICAgICAgKGdsOjpj
bGFtcCk6CisrICAgICAgICAoZ2w6OmNsYW1wMDEpOgorKyAgICAgICAgKGdsOjp0cmFuc2Zvcm1Q
aXhlbFJlY3QpOgorKyAgICAgICAgKGdsOjp0cmFuc2Zvcm1QaXhlbFlPZmZzZXQpOgorKyAgICAg
ICAgKGdsOjphZGp1c3RXaW5kaW5nKToKKysgICAgICAgIChnbDo6c3VwcG9ydHNTU0UyKToKKysg
ICAgICAgICogc3JjL2xpYkdMRVN2Mi9yZXNvdXJjZS5oOiBBZGRlZC4KKysgICAgICAgICogc3Jj
L2xpYkdMRVN2Mi91dGlsaXRpZXMuY3BwOgorKyAgICAgICAgKGdsOjpDb21wdXRlQ29tcHJlc3Nl
ZFBpdGNoKToKKysgICAgICAgIChlczJkeDo6Q29udmVydEN1YmVGYWNlKToKKysgICAgICAgIChl
czJkeDo6Q29udmVydFByaW1pdGl2ZVR5cGUpOgorKyAgICAgICAgKGVzMmR4OjpDb252ZXJ0UmVu
ZGVyYnVmZmVyRm9ybWF0KToKKysgICAgICAgIChlczJkeDo6R2V0TXVsdGlzYW1wbGVUeXBlRnJv
bVNhbXBsZXMpOgorKyAgICAgICAgKGR4MmVzOjpHZXRTdGVuY2lsU2l6ZSk6CisrICAgICAgICAo
ZHgyZXM6OkdldEFscGhhU2l6ZSk6CisrICAgICAgICAoZHgyZXM6OkdldFJlZFNpemUpOgorKyAg
ICAgICAgKGR4MmVzOjpHZXRHcmVlblNpemUpOgorKyAgICAgICAgKGR4MmVzOjpHZXRCbHVlU2l6
ZSk6CisrICAgICAgICAoZHgyZXM6OkdldERlcHRoU2l6ZSk6CisrICAgICAgICAoZ2V0VGVtcFBh
dGgpOgorKyAgICAgICAgKHdyaXRlRmlsZSk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvdXRp
bGl0aWVzLmg6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvdmVydGV4Y29udmVyc2lvbi5oOiBB
ZGRlZC4KKysgICAgICAgIChnbDo6SWRlbnRpdHk6OmNvbnZlcnQpOgorKyAgICAgICAgKGdsOjpD
YXN0Ojpjb252ZXJ0KToKKysgICAgICAgIChnbDo6Tm9ybWFsaXplOjpjb252ZXJ0KToKKysgICAg
ICAgIChnbDo6Rml4ZWRUb0Zsb2F0Ojpjb252ZXJ0KToKKysgICAgICAgIChnbDo6U2ltcGxlRGVm
YXVsdFZhbHVlczo6emVybyk6CisrICAgICAgICAoZ2w6OlNpbXBsZURlZmF1bHRWYWx1ZXM6Om9u
ZSk6CisrICAgICAgICAoZ2w6Ok5vcm1hbGl6ZWREZWZhdWx0VmFsdWVzOjp6ZXJvKToKKysgICAg
ICAgIChnbDo6Tm9ybWFsaXplZERlZmF1bHRWYWx1ZXM6Om9uZSk6CisrICAgICAgICAoZ2w6OlZl
cnRleERhdGFDb252ZXJ0ZXI6OmNvbnZlcnRBcnJheSk6CisrICAgICAgICAoZ2w6OlZlcnRleERh
dGFDb252ZXJ0ZXI6OnBvaW50ZXJBZGRCeXRlcyk6CisrICAgICAgICAoZ2w6OlZlcnRleERhdGFD
b252ZXJ0ZXI6OmNvcHlDb21wb25lbnQpOgorKworKzIwMTEtMDUtMjQgIERhdmlkIEtpbHplciAg
PGRka2lsemVyQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFBhcnQgMiBvZiAyOiA8aHR0cDovL3dl
YmtpdC5vcmcvYi82MDgwNT4gRW5hYmxlIC1XbmV3bGluZS1lb2Ygb24gQU5HTEUKKysKKysgICAg
ICAgIFJldmlld2VkIGJ5IEFkYW0gUm9iZW4uCisrCisrICAgICAgICAqIENvbmZpZ3VyYXRpb25z
L0Jhc2UueGNjb25maWc6CisrICAgICAgICAoR0NDX1dBUk5fQUJPVVRfTUlTU0lOR19ORVdMSU5F
KTogQWRkZWQuIFNldCB0byBZRVMuCisrCisrMjAxMS0wNS0yMyAgRGF2aWQgS2lsemVyICA8ZGRr
aWx6ZXJAYXBwbGUuY29tPgorKworKyAgICAgICAgUGFydCAxIG9mIDI6IDxodHRwOi8vd2Via2l0
Lm9yZy9iLzYwODA1PiBFbmFibGUgLVduZXdsaW5lLWVvZiBvbiBBTkdMRQorKworKyAgICAgICAg
TWVyZ2UgQU5HTEUgdXBzdHJlYW0gY29tbWl0IHI2NTMgZm9yIElzc3VlIDE1NC4KKysKKysgICAg
ICAgICogc3JjL2NvbXBpbGVyL1Bvb2xBbGxvYy5oOiBBZGRlZCBuZXdsaW5lIHRvIGVuZCBvZiBm
aWxlLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvU2hIYW5kbGUuaDogRGl0dG8uCisrICAgICAg
ICAqIHNyYy9saWJFR0wvRGlzcGxheS5jcHA6IERpdHRvLgorKworKzIwMTEtMDUtMTYgIERhdmlk
IEtpbHplciAgPGRka2lsemVyQGFwcGxlLmNvbT4KKysKKysgICAgICAgIDxodHRwOi8vd2Via2l0
Lm9yZy9iLzYwOTEzPiBDKysgZXhjZXB0aW9ucyBzaG91bGQgbm90IGJlIGVuYWJsZWQgd2hlbiBi
dWlsZGluZyB3aXRoIGxsdm0tZ2NjLTQuMgorKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzk0NDY0
MzA+CisrCisrICAgICAgICBSZXZpZXdlZCBieSBNYXJrIFJvd2UuCisrCisrICAgICAgICAqIENv
bmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWc6IEZpeGVkIHR5cG8uCisrCisrMjAxMS0wNS0wNCAg
RGF2aWQgS2lsemVyICA8ZGRraWx6ZXJAYXBwbGUuY29tPgorKworKyAgICAgICAgUGFydCAyIG9m
IDI6IDxodHRwOi8vd2Via2l0Lm9yZy9iLzU2MzM3PiBFbmFibGUgLVdlcnJvciBvbiBBTkdMRQor
KworKyAgICAgICAgUmV2aWV3ZWQgYnkgQWRhbSBCYXJ0aC4KKysKKysgICAgICAgICogQ29uZmln
dXJhdGlvbnMvQmFzZS54Y2NvbmZpZzoKKysgICAgICAgIChHQ0NfVFJFQVRfV0FSTklOR1NfQVNf
RVJST1JTKTogU2V0IHRvIFlFUy4KKysKKysyMDExLTA1LTA0ICBEYXZpZCBLaWx6ZXIgIDxkZGtp
bHplckBhcHBsZS5jb20+CisrCisrICAgICAgICBQYXJ0IDEgb2YgMjogPGh0dHA6Ly93ZWJraXQu
b3JnL2IvNTYzMzc+IEVuYWJsZSAtV2Vycm9yIG9uIEFOR0xFCisrCisrICAgICAgICBNZXJnZSBB
TkdMRSB1cHN0cmVhbSBjb21taXRzIHI1NzIsIHI1NzMsIHI1NzQsIHI1NzUuCisrCisrICAgICAg
ICBUaGlzIHVuYmxvY2tzIGVuYWJsaW5nIC1XZXJyb3Igb24gQU5HTEUuICBTaW5jZSBhbGwgY2hh
bmdlcyBhcmUKKysgICAgICAgIGluIHRoZSB1cHN0cmVhbSByZXBvc2l0b3J5LCB0aGV5IG1heSBi
ZSBzYWZlbHkgb3ZlcndyaXR0ZW4KKysgICAgICAgIGR1cmluZyB0aGUgbmV4dCBBTkdMRSB1cGRh
dGUuCisrCisrICAgICAgICAqIHNyYy9jb21waWxlci9Db25zdGFudFVuaW9uLmg6CisrICAgICAg
ICAoQ29uc3RhbnRVbmlvbjo6b3BlcmF0b3I9PSk6IEFkZGVkIGEgZGVmYXVsdCBjYXNlLgorKyAg
ICAgICAgKiBzcmMvY29tcGlsZXIvSW50ZXJtZWRpYXRlLmNwcDoKKysgICAgICAgIChUSW50ZXJt
QmluYXJ5Ojpwcm9tb3RlKTogQWRkZWQgcGFyZW50aGVzZXMuCisrICAgICAgICAqIHNyYy9jb21w
aWxlci9QYXJzZUhlbHBlci5jcHA6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6cHJlY2lzaW9u
RXJyb3JDaGVjayk6IEFkZGVkIGEgZGVmYXVsdCBjYXNlLgorKyAgICAgICAgKiBzcmMvY29tcGls
ZXIvUG9vbEFsbG9jLmNwcDoKKysgICAgICAgIChUQWxsb2NhdGlvbjo6Y2hlY2tHdWFyZEJsb2Nr
KTogQ2hhbmdlZCAnJXUnIHRvICclbHUnIGZvciBzaXplX3QKKysgICAgICAgIHZhcmlhYmxlLiAg
UHV0IGZvciBsb29wIGluc2lkZSAjaWZkZWYgR1VBUkRfQkxPQ0tTLyNlbmRpZiBtYWNyb3MKKysg
ICAgICAgIHRvIGZpeCB0YXV0b2xvZ2ljYWwtY29tcGFyZSB3YXJuaW5nLgorKyAgICAgICAgKFRB
bGxvY2F0aW9uOjpjaGVja0FsbG9jTGlzdCk6IEFkZGVkIG5ld2xpbmUgdG8gZW5kIG9mIGZpbGUu
CisrCisrMjAxMS0wNC0yNiAgRGFuIEJlcm5zdGVpbiAgPG1pdHpAYXBwbGUuY29tPgorKworKyAg
ICAgICAgQnVpbGQgZml4LgorKworKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9Db21waWxlclZl
cnNpb24ueGNjb25maWc6CisrCisrMjAxMS0wNC0yNiAgRGFuIEJlcm5zdGVpbiAgPG1pdHpAYXBw
bGUuY29tPgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgTWFyayBSb3dlLgorKworKyAgICAgICAg
Q2hvb3NlIHRoZSBjb21waWxlciBiYXNlZCBvbiB0aGUgWGNvZGUgdmVyc2lvbiBmb3IgU25vdyBM
ZW9wYXJkIGRlYnVnIGJ1aWxkcy4KKysKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMvQmFzZS54
Y2NvbmZpZzoKKysgICAgICAgICogQ29uZmlndXJhdGlvbnMvQ29tcGlsZXJWZXJzaW9uLnhjY29u
ZmlnOiBBZGRlZC4KKysKKysyMDExLTAzLTE3ICBKZWZmIE1pbGxlciAgPGplZmZtQGFwcGxlLmNv
bT4KKysKKysgICAgICAgIFVzZSBhIGNvbnNpc3RlbnQgc2V0IG9mIGZpbGUgcGF0dGVybnMgaW4g
dGhlIHN2bjppZ25vcmUgcHJvcGVydHkgZm9yIGFsbCAueGNvZGVwcm9qIGRpcmVjdG9yaWVzLCBz
cGVjaWZpY2FsbHk6CisrICAgICAgICAKKysgICAgICAgICoubW9kZSoKKysgICAgICAgICoucGJ4
dXNlcgorKyAgICAgICAgKi5wZXJzcGVjdGl2ZSoKKysgICAgICAgIHByb2plY3QueGN3b3Jrc3Bh
Y2UKKysgICAgICAgIHhjdXNlcmRhdGEKKysKKysgICAgICAgICogQU5HTEUueGNvZGVwcm9qOiBN
b2RpZmllZCBwcm9wZXJ0eSBzdm46aWdub3JlLgorKyAgICAgICAgKiBzcmMvYnVpbGRfYW5nbGUu
eGNvZGVwcm9qOiBNb2RpZmllZCBwcm9wZXJ0eSBzdm46aWdub3JlLgorKworKzIwMTEtMDEtMTgg
IEtlbm5ldGggUnVzc2VsbCAgPGtickBnb29nbGUuY29tPgorKworKyAgICAgICAgVW5yZXZpZXdl
ZCwgTGVvcGFyZCBidWlsZCBmaXguIFJlbW92ZSBmbGV4L2Jpc29uIHRhcmdldHMgZm9yIEdMU0wK
KysgICAgICAgIGdyYW1tYXIgYmVjYXVzZSB0aGUgZ2VuZXJhdGVkIHNvdXJjZXMgYXJlIGFscmVh
ZHkgY2hlY2tlZCBpbi4KKysKKysgICAgICAgICogQU5HTEUueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvajoKKysgICAgICAgICogc3JjL2J1aWxkX2FuZ2xlLnhjb2RlcHJvai9wcm9qZWN0LnBieHBy
b2o6CisrCisrMjAxMS0wMS0xOCAgS2VubmV0aCBSdXNzZWxsICA8a2JyQGdvb2dsZS5jb20+Cisr
CisrICAgICAgICBVbnJldmlld2VkLCByZWxlYXNlIGJ1aWxkIGZpeC4gRXhwbGljaXRseSBjYXN0
IGF3YXkgY29uc3QuCisrCisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3Ivc2Nh
bm5lci5jOgorKyAgICAgICAgKFNjYW5Gcm9tU3RyaW5nKToKKysKKysyMDExLTAxLTE4ICBCZW4g
VmFuaWsgIDxiZW4udmFuaWtAZ21haWwuY29tPgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgS2Vu
bmV0aCBSdXNzZWxsLgorKworKyAgICAgICAgVXBkYXRpbmcgQU5HTEUgaW4gV2ViS2l0IHRvIHI1
MzMuCisrICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDcx
OTQKKysKKysgICAgICAgICogQU5HTEUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKysgICAg
ICAgICogaW5jbHVkZS9HTFNMQU5HL1NoYWRlckxhbmcuaDoKKysgICAgICAgICogc3JjL2NvbW1v
bi9kZWJ1Zy5jcHA6CisrICAgICAgICAoZ2w6OnRyYWNlKToKKysgICAgICAgICogc3JjL2NvbW1v
bi9kZWJ1Zy5oOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvQ29kZUdlbkdMU0wuY3BwOgorKyAg
ICAgICAgKENvbnN0cnVjdENvbXBpbGVyKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL0NvZGVH
ZW5ITFNMLmNwcDoKKysgICAgICAgIChDb25zdHJ1Y3RDb21waWxlcik6CisrICAgICAgICAqIHNy
Yy9jb21waWxlci9Db21tb24uaDoKKysgICAgICAgIChFbmNvZGVTb3VyY2VMb2MpOgorKyAgICAg
ICAgKERlY29kZVNvdXJjZUxvYyk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9Db21waWxlci5j
cHA6IEFkZGVkLgorKyAgICAgICAgKFRTaEhhbmRsZUJhc2U6OlRTaEhhbmRsZUJhc2UpOgorKyAg
ICAgICAgKFRTaEhhbmRsZUJhc2U6On5UU2hIYW5kbGVCYXNlKToKKysgICAgICAgIChUQ29tcGls
ZXI6OlRDb21waWxlcik6CisrICAgICAgICAoVENvbXBpbGVyOjp+VENvbXBpbGVyKToKKysgICAg
ICAgIChUQ29tcGlsZXI6OkluaXQpOgorKyAgICAgICAgKFRDb21waWxlcjo6Y29tcGlsZSk6Cisr
ICAgICAgICAoVENvbXBpbGVyOjpJbml0QnVpbHRJblN5bWJvbFRhYmxlKToKKysgICAgICAgIChU
Q29tcGlsZXI6OmNsZWFyUmVzdWx0cyk6CisrICAgICAgICAoVENvbXBpbGVyOjp2YWxpZGF0ZUxp
bWl0YXRpb25zKToKKysgICAgICAgIChUQ29tcGlsZXI6OmNvbGxlY3RBdHRyaWJzVW5pZm9ybXMp
OgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvRXh0ZW5zaW9uQmVoYXZpb3IuaDogQWRkZWQuCisr
ICAgICAgICAqIHNyYy9jb21waWxlci9JbmZvU2luay5jcHA6CisrICAgICAgICAoVEluZm9TaW5r
QmFzZTo6bG9jYXRpb24pOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvSW5mb1NpbmsuaDoKKysg
ICAgICAgIChUSW5mb1NpbmtCYXNlOjpzaXplKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL0lu
aXRpYWxpemUuY3BwOgorKyAgICAgICAgKEJ1aWx0SW5GdW5jdGlvbnNDb21tb24pOgorKyAgICAg
ICAgKEJ1aWx0SW5GdW5jdGlvbnNWZXJ0ZXgpOgorKyAgICAgICAgKEJ1aWx0SW5GdW5jdGlvbnNG
cmFnbWVudCk6CisrICAgICAgICAoU3RhbmRhcmRVbmlmb3Jtcyk6CisrICAgICAgICAoRGVmYXVs
dFByZWNpc2lvblZlcnRleCk6CisrICAgICAgICAoRGVmYXVsdFByZWNpc2lvbkZyYWdtZW50KToK
KysgICAgICAgIChCdWlsdEluQ29uc3RhbnRzKToKKysgICAgICAgIChUQnVpbHRJbnM6OmluaXRp
YWxpemUpOgorKyAgICAgICAgKElkZW50aWZ5QnVpbHRJbnMpOgorKyAgICAgICAgKEluaXRFeHRl
bnNpb25CZWhhdmlvcik6CisrICAgICAgICAqIHNyYy9jb21waWxlci9Jbml0aWFsaXplLmg6Cisr
ICAgICAgICAqIHNyYy9jb21waWxlci9JbnRlcm1UcmF2ZXJzZS5jcHA6CisrICAgICAgICAoVElu
dGVybUxvb3A6OnRyYXZlcnNlKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL0ludGVybWVkaWF0
ZS5jcHA6CisrICAgICAgICAoZ2V0T3BlcmF0b3JTdHJpbmcpOgorKyAgICAgICAgKFRJbnRlcm1l
ZGlhdGU6OmFkZEJpbmFyeU1hdGgpOgorKyAgICAgICAgKFRJbnRlcm1lZGlhdGU6OmFkZExvb3Ap
OgorKyAgICAgICAgKFRJbnRlcm1lZGlhdGU6OnBvc3RQcm9jZXNzKToKKysgICAgICAgIChUSW50
ZXJtQmluYXJ5Ojpwcm9tb3RlKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL091dHB1dEdMU0wu
Y3BwOgorKyAgICAgICAgKFRPdXRwdXRHTFNMOjp2aXNpdFVuYXJ5KToKKysgICAgICAgIChUT3V0
cHV0R0xTTDo6dmlzaXRMb29wKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL091dHB1dEhMU0wu
Y3BwOgorKyAgICAgICAgKHNoOjpPdXRwdXRITFNMOjpPdXRwdXRITFNMKToKKysgICAgICAgIChz
aDo6T3V0cHV0SExTTDo6aGVhZGVyKToKKysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6dmlzaXRC
aW5hcnkpOgorKyAgICAgICAgKHNoOjpPdXRwdXRITFNMOjp2aXNpdFVuYXJ5KToKKysgICAgICAg
IChzaDo6T3V0cHV0SExTTDo6dmlzaXRBZ2dyZWdhdGUpOgorKyAgICAgICAgKHNoOjpPdXRwdXRI
TFNMOjp2aXNpdExvb3ApOgorKyAgICAgICAgKHNoOjpPdXRwdXRITFNMOjpoYW5kbGVFeGNlc3Np
dmVMb29wKToKKysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6YXJndW1lbnRTdHJpbmcpOgorKyAg
ICAgICAgKiBzcmMvY29tcGlsZXIvT3V0cHV0SExTTC5oOgorKyAgICAgICAgKiBzcmMvY29tcGls
ZXIvUGFyc2VIZWxwZXIuY3BwOgorKyAgICAgICAgKFJlcG9ydEluZm8pOgorKyAgICAgICAgKERl
ZmluZUV4dGVuc2lvbk1hY3Jvcyk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6ZXJyb3IpOgor
KyAgICAgICAgKFRQYXJzZUNvbnRleHQ6Ondhcm5pbmcpOgorKyAgICAgICAgKFRQYXJzZUNvbnRl
eHQ6OnJlc2VydmVkRXJyb3JDaGVjayk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6Y29uc3Ry
dWN0b3JFcnJvckNoZWNrKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0OjphcnJheVF1YWxpZmll
ckVycm9yQ2hlY2spOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OmV4dGVuc2lvbkVycm9yQ2hl
Y2spOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OmFyZUFsbENoaWxkQ29uc3QpOgorKyAgICAg
ICAgKFBhUGFyc2VTdHJpbmdzKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL1BhcnNlSGVscGVy
Lmg6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6VFBhcnNlQ29udGV4dCk6CisrICAgICAgICAq
IHNyYy9jb21waWxlci9Qb29sQWxsb2MuY3BwOgorKyAgICAgICAgKEluaXRpYWxpemVHbG9iYWxQ
b29scyk6CisrICAgICAgICAoRnJlZUdsb2JhbFBvb2xzKToKKysgICAgICAgIChTZXRHbG9iYWxQ
b29sQWxsb2NhdG9yKToKKysgICAgICAgIChUUG9vbEFsbG9jYXRvcjo6VFBvb2xBbGxvY2F0b3Ip
OgorKyAgICAgICAgKFRQb29sQWxsb2NhdG9yOjp+VFBvb2xBbGxvY2F0b3IpOgorKyAgICAgICAg
KFRBbGxvY2F0aW9uOjpjaGVja0FsbG9jTGlzdCk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9Q
b29sQWxsb2MuaDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL1NlYXJjaFN5bWJvbC5jcHA6IEFk
ZGVkLgorKyAgICAgICAgKHNoOjpTZWFyY2hTeW1ib2w6OlNlYXJjaFN5bWJvbCk6CisrICAgICAg
ICAoc2g6OlNlYXJjaFN5bWJvbDo6dHJhdmVyc2UpOgorKyAgICAgICAgKHNoOjpTZWFyY2hTeW1i
b2w6OnZpc2l0U3ltYm9sKToKKysgICAgICAgIChzaDo6U2VhcmNoU3ltYm9sOjpmb3VuZE1hdGNo
KToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL1NlYXJjaFN5bWJvbC5oOiBBZGRlZC4KKysgICAg
ICAgICogc3JjL2NvbXBpbGVyL1NoSGFuZGxlLmg6CisrICAgICAgICAoVENvbXBpbGVyOjpnZXRB
c0NvbXBpbGVyKToKKysgICAgICAgIChUQ29tcGlsZXI6OmdldEluZm9TaW5rKToKKysgICAgICAg
IChUQ29tcGlsZXI6OmdldEF0dHJpYnMpOgorKyAgICAgICAgKFRDb21waWxlcjo6Z2V0VW5pZm9y
bXMpOgorKyAgICAgICAgKFRDb21waWxlcjo6Z2V0U2hhZGVyVHlwZSk6CisrICAgICAgICAoVENv
bXBpbGVyOjpnZXRTaGFkZXJTcGVjKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL1NoYWRlckxh
bmcuY3BwOgorKyAgICAgICAgKGdldFZhcmlhYmxlTWF4TGVuZ3RoKToKKysgICAgICAgIChnZXRW
YXJpYWJsZUluZm8pOgorKyAgICAgICAgKFNoSW5pdEJ1aWx0SW5SZXNvdXJjZXMpOgorKyAgICAg
ICAgKFNoQ29uc3RydWN0Q29tcGlsZXIpOgorKyAgICAgICAgKFNoQ29tcGlsZSk6CisrICAgICAg
ICAoU2hHZXRJbmZvKToKKysgICAgICAgIChTaEdldEluZm9Mb2cpOgorKyAgICAgICAgKFNoR2V0
T2JqZWN0Q29kZSk6CisrICAgICAgICAoU2hHZXRBY3RpdmVBdHRyaWIpOgorKyAgICAgICAgKFNo
R2V0QWN0aXZlVW5pZm9ybSk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9TeW1ib2xUYWJsZS5j
cHA6CisrICAgICAgICAoVFN5bWJvbFRhYmxlTGV2ZWw6OnJlbGF0ZVRvRXh0ZW5zaW9uKToKKysg
ICAgICAgICogc3JjL2NvbXBpbGVyL1N5bWJvbFRhYmxlLmg6CisrICAgICAgICAoVFZhcmlhYmxl
OjpzaGFyZUNvbnN0UG9pbnRlcik6CisrICAgICAgICAoVEZ1bmN0aW9uOjpyZWxhdGVUb0V4dGVu
c2lvbik6CisrICAgICAgICAoVEZ1bmN0aW9uOjpnZXRFeHRlbnNpb24pOgorKyAgICAgICAgKFRG
dW5jdGlvbjo6Z2V0UGFyYW1Db3VudCk6CisrICAgICAgICAoVEZ1bmN0aW9uOjpnZXRQYXJhbSk6
CisrICAgICAgICAoVFN5bWJvbFRhYmxlOjpnZXRHbG9iYWxMZXZlbCk6CisrICAgICAgICAoVFN5
bWJvbFRhYmxlOjpyZWxhdGVUb09wZXJhdG9yKToKKysgICAgICAgIChUU3ltYm9sVGFibGU6OnJl
bGF0ZVRvRXh0ZW5zaW9uKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL1RyYW5zbGF0b3JHTFNM
LmNwcDoKKysgICAgICAgICh3cml0ZVZlcnNpb24pOgorKyAgICAgICAgKFRyYW5zbGF0b3JHTFNM
OjpUcmFuc2xhdG9yR0xTTCk6CisrICAgICAgICAoVHJhbnNsYXRvckdMU0w6OnRyYW5zbGF0ZSk6
CisrICAgICAgICAqIHNyYy9jb21waWxlci9UcmFuc2xhdG9yR0xTTC5oOgorKyAgICAgICAgKiBz
cmMvY29tcGlsZXIvVHJhbnNsYXRvckhMU0wuY3BwOgorKyAgICAgICAgKFRyYW5zbGF0b3JITFNM
OjpUcmFuc2xhdG9ySExTTCk6CisrICAgICAgICAoVHJhbnNsYXRvckhMU0w6OnRyYW5zbGF0ZSk6
CisrICAgICAgICAqIHNyYy9jb21waWxlci9UcmFuc2xhdG9ySExTTC5oOgorKyAgICAgICAgKiBz
cmMvY29tcGlsZXIvVHlwZXMuaDoKKysgICAgICAgIChUVHlwZTo6VFR5cGUpOgorKyAgICAgICAg
KiBzcmMvY29tcGlsZXIvVW5mb2xkU2VsZWN0LmNwcDoKKysgICAgICAgIChzaDo6VW5mb2xkU2Vs
ZWN0Ojp2aXNpdFNlbGVjdGlvbik6CisrICAgICAgICAqIHNyYy9jb21waWxlci9VbmZvbGRTZWxl
Y3QuaDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL1ZhbGlkYXRlTGltaXRhdGlvbnMuY3BwOiBB
ZGRlZC4KKysgICAgICAgIChWYWxpZGF0ZUxpbWl0YXRpb25zOjpWYWxpZGF0ZUxpbWl0YXRpb25z
KToKKysgICAgICAgIChWYWxpZGF0ZUxpbWl0YXRpb25zOjp2aXNpdFN5bWJvbCk6CisrICAgICAg
ICAoVmFsaWRhdGVMaW1pdGF0aW9uczo6dmlzaXRDb25zdGFudFVuaW9uKToKKysgICAgICAgIChW
YWxpZGF0ZUxpbWl0YXRpb25zOjp2aXNpdEJpbmFyeSk6CisrICAgICAgICAoVmFsaWRhdGVMaW1p
dGF0aW9uczo6dmlzaXRVbmFyeSk6CisrICAgICAgICAoVmFsaWRhdGVMaW1pdGF0aW9uczo6dmlz
aXRTZWxlY3Rpb24pOgorKyAgICAgICAgKFZhbGlkYXRlTGltaXRhdGlvbnM6OnZpc2l0QWdncmVn
YXRlKToKKysgICAgICAgIChWYWxpZGF0ZUxpbWl0YXRpb25zOjp2aXNpdExvb3ApOgorKyAgICAg
ICAgKFZhbGlkYXRlTGltaXRhdGlvbnM6OnZpc2l0QnJhbmNoKToKKysgICAgICAgIChWYWxpZGF0
ZUxpbWl0YXRpb25zOjplcnJvcik6CisrICAgICAgICAoVmFsaWRhdGVMaW1pdGF0aW9uczo6d2l0
aGluTG9vcEJvZHkpOgorKyAgICAgICAgKFZhbGlkYXRlTGltaXRhdGlvbnM6OmlzTG9vcEluZGV4
KToKKysgICAgICAgIChWYWxpZGF0ZUxpbWl0YXRpb25zOjp2YWxpZGF0ZUxvb3BUeXBlKToKKysg
ICAgICAgIChWYWxpZGF0ZUxpbWl0YXRpb25zOjp2YWxpZGF0ZUZvckxvb3BIZWFkZXIpOgorKyAg
ICAgICAgKFZhbGlkYXRlTGltaXRhdGlvbnM6OnZhbGlkYXRlRm9yTG9vcEluaXQpOgorKyAgICAg
ICAgKFZhbGlkYXRlTGltaXRhdGlvbnM6OnZhbGlkYXRlRm9yTG9vcENvbmQpOgorKyAgICAgICAg
KFZhbGlkYXRlTGltaXRhdGlvbnM6OnZhbGlkYXRlRm9yTG9vcEV4cHIpOgorKyAgICAgICAgKFZh
bGlkYXRlTGltaXRhdGlvbnM6OnZhbGlkYXRlRnVuY3Rpb25DYWxsKToKKysgICAgICAgIChWYWxp
ZGF0ZUxpbWl0YXRpb25zOjp2YWxpZGF0ZU9wZXJhdGlvbik6CisrICAgICAgICAoVmFsaWRhdGVM
aW1pdGF0aW9uczo6aXNDb25zdEV4cHIpOgorKyAgICAgICAgKFZhbGlkYXRlTGltaXRhdGlvbnM6
OmlzQ29uc3RJbmRleEV4cHIpOgorKyAgICAgICAgKFZhbGlkYXRlTGltaXRhdGlvbnM6OnZhbGlk
YXRlSW5kZXhpbmcpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvVmFsaWRhdGVMaW1pdGF0aW9u
cy5oOiBBZGRlZC4KKysgICAgICAgIChWYWxpZGF0ZUxpbWl0YXRpb25zOjpudW1FcnJvcnMpOgor
KyAgICAgICAgKiBzcmMvY29tcGlsZXIvVmFyaWFibGVJbmZvLmNwcDogQWRkZWQuCisrICAgICAg
ICAoYXJyYXlCcmFja2V0cyk6CisrICAgICAgICAoZ2V0VmFyaWFibGVEYXRhVHlwZSk6CisrICAg
ICAgICAoZ2V0VmFyaWFibGVJbmZvKToKKysgICAgICAgIChnZXRCdWlsdEluVmFyaWFibGVJbmZv
KToKKysgICAgICAgIChnZXRVc2VyRGVmaW5lZFZhcmlhYmxlSW5mbyk6CisrICAgICAgICAoQ29s
bGVjdEF0dHJpYnNVbmlmb3Jtczo6Q29sbGVjdEF0dHJpYnNVbmlmb3Jtcyk6CisrICAgICAgICAo
Q29sbGVjdEF0dHJpYnNVbmlmb3Jtczo6dmlzaXRTeW1ib2wpOgorKyAgICAgICAgKENvbGxlY3RB
dHRyaWJzVW5pZm9ybXM6OnZpc2l0Q29uc3RhbnRVbmlvbik6CisrICAgICAgICAoQ29sbGVjdEF0
dHJpYnNVbmlmb3Jtczo6dmlzaXRCaW5hcnkpOgorKyAgICAgICAgKENvbGxlY3RBdHRyaWJzVW5p
Zm9ybXM6OnZpc2l0VW5hcnkpOgorKyAgICAgICAgKENvbGxlY3RBdHRyaWJzVW5pZm9ybXM6OnZp
c2l0U2VsZWN0aW9uKToKKysgICAgICAgIChDb2xsZWN0QXR0cmlic1VuaWZvcm1zOjp2aXNpdEFn
Z3JlZ2F0ZSk6CisrICAgICAgICAoQ29sbGVjdEF0dHJpYnNVbmlmb3Jtczo6dmlzaXRMb29wKToK
KysgICAgICAgIChDb2xsZWN0QXR0cmlic1VuaWZvcm1zOjp2aXNpdEJyYW5jaCk6CisrICAgICAg
ICAqIHNyYy9jb21waWxlci9WYXJpYWJsZUluZm8uaDogQWRkZWQuCisrICAgICAgICAqIHNyYy9j
b21waWxlci9WZXJzaW9uR0xTTC5jcHA6IEFkZGVkLgorKyAgICAgICAgKFRWZXJzaW9uR0xTTDo6
VFZlcnNpb25HTFNMKToKKysgICAgICAgIChUVmVyc2lvbkdMU0w6OnZpc2l0U3ltYm9sKToKKysg
ICAgICAgIChUVmVyc2lvbkdMU0w6OnZpc2l0Q29uc3RhbnRVbmlvbik6CisrICAgICAgICAoVFZl
cnNpb25HTFNMOjp2aXNpdEJpbmFyeSk6CisrICAgICAgICAoVFZlcnNpb25HTFNMOjp2aXNpdFVu
YXJ5KToKKysgICAgICAgIChUVmVyc2lvbkdMU0w6OnZpc2l0U2VsZWN0aW9uKToKKysgICAgICAg
IChUVmVyc2lvbkdMU0w6OnZpc2l0QWdncmVnYXRlKToKKysgICAgICAgIChUVmVyc2lvbkdMU0w6
OnZpc2l0TG9vcCk6CisrICAgICAgICAoVFZlcnNpb25HTFNMOjp2aXNpdEJyYW5jaCk6CisrICAg
ICAgICAoVFZlcnNpb25HTFNMOjp1cGRhdGVWZXJzaW9uKToKKysgICAgICAgICogc3JjL2NvbXBp
bGVyL1ZlcnNpb25HTFNMLmg6IEFkZGVkLgorKyAgICAgICAgKFRWZXJzaW9uR0xTTDo6Z2V0VmVy
c2lvbik6CisrICAgICAgICAqIHNyYy9jb21waWxlci9nZW5lcmF0ZV9nbHNsYW5nX2xleGVyLnNo
OiBBZGRlZC4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL2dlbmVyYXRlX2dsc2xhbmdfcGFyc2Vy
LnNoOiBBZGRlZC4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL2dsc2xhbmcuaDogQWRkZWQuCisr
ICAgICAgICAqIHNyYy9jb21waWxlci9nbHNsYW5nLmw6CisrICAgICAgICAqIHNyYy9jb21waWxl
ci9nbHNsYW5nLnk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9nbHNsYW5nX2xleC5jcHA6IEFk
ZGVkLgorKyAgICAgICAgKHl5X2dldF9uZXh0X2J1ZmZlcik6CisrICAgICAgICAoeXlfZ2V0X3By
ZXZpb3VzX3N0YXRlKToKKysgICAgICAgICh5eV90cnlfTlVMX3RyYW5zKToKKysgICAgICAgIChp
bnB1dCk6CisrICAgICAgICAoeXlyZXN0YXJ0KToKKysgICAgICAgICh5eV9zd2l0Y2hfdG9fYnVm
ZmVyKToKKysgICAgICAgICh5eV9sb2FkX2J1ZmZlcl9zdGF0ZSk6CisrICAgICAgICAoeXlfY3Jl
YXRlX2J1ZmZlcik6CisrICAgICAgICAoeXlfZGVsZXRlX2J1ZmZlcik6CisrICAgICAgICAoeXlf
aW5pdF9idWZmZXIpOgorKyAgICAgICAgKHl5X2ZsdXNoX2J1ZmZlcik6CisrICAgICAgICAoeXlw
dXNoX2J1ZmZlcl9zdGF0ZSk6CisrICAgICAgICAoeXlwb3BfYnVmZmVyX3N0YXRlKToKKysgICAg
ICAgICh5eWVuc3VyZV9idWZmZXJfc3RhY2spOgorKyAgICAgICAgKHl5X3NjYW5fYnVmZmVyKToK
KysgICAgICAgICh5eV9zY2FuX3N0cmluZyk6CisrICAgICAgICAoeXlfc2Nhbl9ieXRlcyk6Cisr
ICAgICAgICAoeXlfcHVzaF9zdGF0ZSk6CisrICAgICAgICAoeXlfcG9wX3N0YXRlKToKKysgICAg
ICAgICh5eV90b3Bfc3RhdGUpOgorKyAgICAgICAgKHl5X2ZhdGFsX2Vycm9yKToKKysgICAgICAg
ICh5eWdldF9leHRyYSk6CisrICAgICAgICAoeXlnZXRfbGluZW5vKToKKysgICAgICAgICh5eWdl
dF9jb2x1bW4pOgorKyAgICAgICAgKHl5Z2V0X2luKToKKysgICAgICAgICh5eWdldF9vdXQpOgor
KyAgICAgICAgKHl5Z2V0X2xlbmcpOgorKyAgICAgICAgKHl5Z2V0X3RleHQpOgorKyAgICAgICAg
KHl5c2V0X2V4dHJhKToKKysgICAgICAgICh5eXNldF9saW5lbm8pOgorKyAgICAgICAgKHl5c2V0
X2NvbHVtbik6CisrICAgICAgICAoeXlzZXRfaW4pOgorKyAgICAgICAgKHl5c2V0X291dCk6Cisr
ICAgICAgICAoeXlnZXRfZGVidWcpOgorKyAgICAgICAgKHl5c2V0X2RlYnVnKToKKysgICAgICAg
ICh5eWdldF9sdmFsKToKKysgICAgICAgICh5eXNldF9sdmFsKToKKysgICAgICAgICh5eWxleF9p
bml0KToKKysgICAgICAgICh5eWxleF9pbml0X2V4dHJhKToKKysgICAgICAgICh5eV9pbml0X2ds
b2JhbHMpOgorKyAgICAgICAgKHl5bGV4X2Rlc3Ryb3kpOgorKyAgICAgICAgKHl5X2ZsZXhfc3Ry
bmNweSk6CisrICAgICAgICAoeXlfZmxleF9zdHJsZW4pOgorKyAgICAgICAgKHl5YWxsb2MpOgor
KyAgICAgICAgKHl5cmVhbGxvYyk6CisrICAgICAgICAoeXlmcmVlKToKKysgICAgICAgIChzdHJp
bmdfaW5wdXQpOgorKyAgICAgICAgKGNoZWNrX3R5cGUpOgorKyAgICAgICAgKHJlc2VydmVkX3dv
cmQpOgorKyAgICAgICAgKHl5ZXJyb3IpOgorKyAgICAgICAgKGdsc2xhbmdfaW5pdGlhbGl6ZSk6
CisrICAgICAgICAoZ2xzbGFuZ19maW5hbGl6ZSk6CisrICAgICAgICAoZ2xzbGFuZ19zY2FuKToK
KysgICAgICAgICogc3JjL2NvbXBpbGVyL2dsc2xhbmdfdGFiLmNwcDogQWRkZWQuCisrICAgICAg
ICAoeXl0bmFtZXJyKToKKysgICAgICAgICh5eXN5bnRheF9lcnJvcik6CisrICAgICAgICAoZ2xz
bGFuZ19wYXJzZSk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9nbHNsYW5nX3RhYi5oOiBBZGRl
ZC4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL2ludGVybU91dC5jcHA6CisrICAgICAgICAoVE91
dHB1dFRyYXZlcnNlcjo6VE91dHB1dFRyYXZlcnNlcik6CisrICAgICAgICAoT3V0cHV0VHJlZVRl
eHQpOgorKyAgICAgICAgKFRPdXRwdXRUcmF2ZXJzZXI6OnZpc2l0U3ltYm9sKToKKysgICAgICAg
IChUT3V0cHV0VHJhdmVyc2VyOjp2aXNpdEJpbmFyeSk6CisrICAgICAgICAoVE91dHB1dFRyYXZl
cnNlcjo6dmlzaXRVbmFyeSk6CisrICAgICAgICAoVE91dHB1dFRyYXZlcnNlcjo6dmlzaXRBZ2dy
ZWdhdGUpOgorKyAgICAgICAgKFRPdXRwdXRUcmF2ZXJzZXI6OnZpc2l0U2VsZWN0aW9uKToKKysg
ICAgICAgIChUT3V0cHV0VHJhdmVyc2VyOjp2aXNpdENvbnN0YW50VW5pb24pOgorKyAgICAgICAg
KFRPdXRwdXRUcmF2ZXJzZXI6OnZpc2l0TG9vcCk6CisrICAgICAgICAoVE91dHB1dFRyYXZlcnNl
cjo6dmlzaXRCcmFuY2gpOgorKyAgICAgICAgKFRJbnRlcm1lZGlhdGU6Om91dHB1dFRyZWUpOgor
KyAgICAgICAgKiBzcmMvY29tcGlsZXIvaW50ZXJtZWRpYXRlLmg6CisrICAgICAgICAoVEludGVy
bUxvb3A6OlRJbnRlcm1Mb29wKToKKysgICAgICAgIChUSW50ZXJtTG9vcDo6Z2V0VHlwZSk6Cisr
ICAgICAgICAoVEludGVybUxvb3A6OmdldEluaXQpOgorKyAgICAgICAgKFRJbnRlcm1Mb29wOjpn
ZXRDb25kaXRpb24pOgorKyAgICAgICAgKFRJbnRlcm1Mb29wOjpnZXRFeHByZXNzaW9uKToKKysg
ICAgICAgIChUSW50ZXJtTG9vcDo6Z2V0Qm9keSk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9s
b2NhbGludGVybWVkaWF0ZS5oOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvb3NpbmNsdWRlLmg6
CisrICAgICAgICAoT1NfR2V0VExTVmFsdWUpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvb3Nz
b3VyY2VfbnNwci5jcHA6IEFkZGVkLgorKyAgICAgICAgKE9TX0FsbG9jVExTSW5kZXgpOgorKyAg
ICAgICAgKE9TX1NldFRMU1ZhbHVlKToKKysgICAgICAgIChPU19GcmVlVExTSW5kZXgpOgorKyAg
ICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL2NvbXBpbGUuaDoKKysgICAgICAgICog
c3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9jcHAuYzoKKysgICAgICAgIChDUFBkZWZpbmUpOgor
KyAgICAgICAgKENQUGVsc2UpOgorKyAgICAgICAgKENQUGlmKToKKysgICAgICAgIChDUFBpZmRl
Zik6CisrICAgICAgICAoQ1BQZXJyb3IpOgorKyAgICAgICAgKENQUGV4dGVuc2lvbik6CisrICAg
ICAgICAocmVhZENQUGxpbmUpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29y
L3ByZXByb2Nlc3MuaDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9zY2Fu
bmVyLmM6CisrICAgICAgICAoc3RyX2dldGNoKToKKysgICAgICAgIChzdHJfdW5nZXRjaCk6Cisr
ICAgICAgICAoU2NhbkZyb21TdHJpbmcpOgorKyAgICAgICAgKGxGbG9hdENvbnN0KToKKysgICAg
ICAgIChieXRlX3NjYW4pOgorKyAgICAgICAgKHl5bGV4X0NQUCk6CisrICAgICAgICAoY2hlY2tf
RU9GKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9zY2FubmVyLmg6Cisr
ICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvdG9rZW5zLmM6CisrICAgICAgICAo
UmVjb3JkVG9rZW4pOgorKyAgICAgICAgKFJlYWRUb2tlbik6CisrICAgICAgICAqIHNyYy9jb21w
aWxlci90b29sczogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3VuaXN0ZC5oOiBS
ZW1vdmVkLgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvdXRpbC5jcHA6IEFkZGVkLgorKyAgICAg
ICAgKGF0b2ZfZG90KToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3V0aWwuaDogQWRkZWQuCisr
ICAgICAgICAqIHNyYy9saWJFR0wvQ29uZmlnLmNwcDoKKysgICAgICAgIChlZ2w6OkNvbmZpZzo6
c2V0KToKKysgICAgICAgICogc3JjL2xpYkVHTC9EaXNwbGF5LmNwcDoKKysgICAgICAgIChlZ2w6
OkRpc3BsYXk6OkRpc3BsYXkpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6aW5pdGlhbGl6ZSk6
CisrICAgICAgICAoZWdsOjpEaXNwbGF5Ojp0ZXJtaW5hdGUpOgorKyAgICAgICAgKGVnbDo6RGlz
cGxheTo6Y3JlYXRlRGV2aWNlKToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OnJlc2V0RGV2aWNl
KToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OmNyZWF0ZUNvbnRleHQpOgorKyAgICAgICAgKGVn
bDo6RGlzcGxheTo6ZGVzdHJveUNvbnRleHQpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6Z2V0
TWluU3dhcEludGVydmFsKToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OmdldE1heFN3YXBJbnRl
cnZhbCk6CisrICAgICAgICAoZWdsOjpEaXNwbGF5OjpnZXREZXZpY2UpOgorKyAgICAgICAgKGVn
bDo6RGlzcGxheTo6Z2V0RmxvYXRUZXh0dXJlU3VwcG9ydCk6CisrICAgICAgICAoZWdsOjpEaXNw
bGF5OjpnZXRIYWxmRmxvYXRUZXh0dXJlU3VwcG9ydCk6CisrICAgICAgICAoZWdsOjpEaXNwbGF5
OjpnZXRMdW1pbmFuY2VUZXh0dXJlU3VwcG9ydCk6CisrICAgICAgICAoZWdsOjpEaXNwbGF5Ojpn
ZXRMdW1pbmFuY2VBbHBoYVRleHR1cmVTdXBwb3J0KToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6
OmdldEJ1ZmZlclBvb2wpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6Z2V0RXZlbnRRdWVyeVN1
cHBvcnQpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6Z2V0RGVmYXVsdFByZXNlbnRQYXJhbWV0
ZXJzKToKKysgICAgICAgICogc3JjL2xpYkVHTC9EaXNwbGF5Lmg6CisrICAgICAgICAqIHNyYy9s
aWJFR0wvU3VyZmFjZS5jcHA6CisrICAgICAgICAoZWdsOjpTdXJmYWNlOjpTdXJmYWNlKToKKysg
ICAgICAgIChlZ2w6OlN1cmZhY2U6On5TdXJmYWNlKToKKysgICAgICAgIChlZ2w6OlN1cmZhY2U6
OnJlbGVhc2UpOgorKyAgICAgICAgKGVnbDo6U3VyZmFjZTo6cmVzZXRTd2FwQ2hhaW4pOgorKyAg
ICAgICAgKGVnbDo6U3VyZmFjZTo6d3JpdGVSZWNvcmRhYmxlRmxpcFN0YXRlKToKKysgICAgICAg
IChlZ2w6OlN1cmZhY2U6OnJlc3RvcmVTdGF0ZSk6CisrICAgICAgICAoZWdsOjpTdXJmYWNlV2lu
ZG93UHJvYyk6CisrICAgICAgICAoZWdsOjpTdXJmYWNlOjpzdWJjbGFzc1dpbmRvdyk6CisrICAg
ICAgICAoZWdsOjpTdXJmYWNlOjp1bnN1YmNsYXNzV2luZG93KToKKysgICAgICAgIChlZ2w6OlN1
cmZhY2U6OmNoZWNrRm9yT3V0T2ZEYXRlU3dhcENoYWluKToKKysgICAgICAgIChlZ2w6OlN1cmZh
Y2U6OmNvbnZlcnRJbnRlcnZhbCk6CisrICAgICAgICAoZWdsOjpTdXJmYWNlOjpzd2FwKToKKysg
ICAgICAgIChlZ2w6OlN1cmZhY2U6OmdldFJlbmRlclRhcmdldCk6CisrICAgICAgICAoZWdsOjpT
dXJmYWNlOjpzZXRTd2FwSW50ZXJ2YWwpOgorKyAgICAgICAgKiBzcmMvbGliRUdML1N1cmZhY2Uu
aDoKKysgICAgICAgICogc3JjL2xpYkVHTC9saWJFR0wuY3BwOgorKyAgICAgICAgKiBzcmMvbGli
R0xFU3YyL0JsaXQuY3BwOgorKyAgICAgICAgKGdsOjpCbGl0Ojpjb3B5U3VyZmFjZVRvVGV4dHVy
ZSk6CisrICAgICAgICAoZ2w6OkJsaXQ6OnNldENvbW1vbkJsaXRTdGF0ZSk6CisrICAgICAgICAq
IHNyYy9saWJHTEVTdjIvQnVmZmVyLmNwcDoKKysgICAgICAgIChnbDo6QnVmZmVyOjpCdWZmZXIp
OgorKyAgICAgICAgKGdsOjpCdWZmZXI6On5CdWZmZXIpOgorKyAgICAgICAgKGdsOjpCdWZmZXI6
OmJ1ZmZlckRhdGEpOgorKyAgICAgICAgKGdsOjpCdWZmZXI6OmJ1ZmZlclN1YkRhdGEpOgorKyAg
ICAgICAgKGdsOjpCdWZmZXI6OmdldFZlcnRleEJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkJ1ZmZl
cjo6Z2V0SW5kZXhCdWZmZXIpOgorKyAgICAgICAgKGdsOjpCdWZmZXI6OmludmFsaWRhdGVTdGF0
aWNEYXRhKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9CdWZmZXIuaDoKKysgICAgICAgICog
c3JjL2xpYkdMRVN2Mi9Db250ZXh0LmNwcDoKKysgICAgICAgIChnbDo6Q29udGV4dDo6Q29udGV4
dCk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6On5Db250ZXh0KToKKysgICAgICAgIChnbDo6Q29u
dGV4dDo6bWFrZUN1cnJlbnQpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjptYXJrQWxsU3RhdGVE
aXJ0eSk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnNldEZyYWdtZW50U2hhZGVyRGVyaXZhdGl2
ZUhpbnQpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzZXRFbmFibGVWZXJ0ZXhBdHRyaWJBcnJh
eSk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmdldFZlcnRleEF0dHJpYlN0YXRlKToKKysgICAg
ICAgIChnbDo6Q29udGV4dDo6Z2V0VmVydGV4QXR0cmlidXRlcyk6CisrICAgICAgICAoZ2w6OkNv
bnRleHQ6OmNyZWF0ZUZlbmNlKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6ZGVsZXRlRmVuY2Up
OgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpiaW5kVGV4dHVyZTJEKToKKysgICAgICAgIChnbDo6
Q29udGV4dDo6YmluZFRleHR1cmVDdWJlTWFwKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0
RmVuY2UpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRUZXh0dXJlMkQpOgorKyAgICAgICAg
KGdsOjpDb250ZXh0OjpnZXRUZXh0dXJlQ3ViZU1hcCk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6
OmdldFNhbXBsZXJUZXh0dXJlKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0Qm9vbGVhbnYp
OgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRJbnRlZ2Vydik6CisrICAgICAgICAoZ2w6OkNv
bnRleHQ6OmdldFF1ZXJ5UGFyYW1ldGVySW5mbyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmFw
cGx5UmVuZGVyVGFyZ2V0KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6YXBwbHlTdGF0ZSk6Cisr
ICAgICAgICAoZ2w6OkNvbnRleHQ6Omxvb2t1cEF0dHJpYnV0ZU1hcHBpbmcpOgorKyAgICAgICAg
KGdsOjpDb250ZXh0OjphcHBseVZlcnRleEJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6
OmFwcGx5SW5kZXhCdWZmZXIpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpyZWFkUGl4ZWxzKToK
KysgICAgICAgIChnbDo6Q29udGV4dDo6Y2xlYXIpOgorKyAgICAgICAgKGdsOjpDb250ZXh0Ojpk
cmF3QXJyYXlzKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6ZHJhd0VsZW1lbnRzKToKKysgICAg
ICAgIChnbDo6Q29udGV4dDo6ZmluaXNoKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6ZHJhd0Ns
b3NpbmdMaW5lKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0TWF4aW11bVZhcnlpbmdWZWN0
b3JzKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0TWF4aW11bUZyYWdtZW50VW5pZm9ybVZl
Y3RvcnMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzdXBwb3J0c0V2ZW50UXVlcmllcyk6Cisr
ICAgICAgICAoZ2w6OkNvbnRleHQ6OnN1cHBvcnRzRmxvYXRUZXh0dXJlcyk6CisrICAgICAgICAo
Z2w6OkNvbnRleHQ6OnN1cHBvcnRzRmxvYXRMaW5lYXJGaWx0ZXIpOgorKyAgICAgICAgKGdsOjpD
b250ZXh0OjpzdXBwb3J0c0Zsb2F0UmVuZGVyYWJsZVRleHR1cmVzKToKKysgICAgICAgIChnbDo6
Q29udGV4dDo6c3VwcG9ydHNIYWxmRmxvYXRUZXh0dXJlcyk6CisrICAgICAgICAoZ2w6OkNvbnRl
eHQ6OnN1cHBvcnRzSGFsZkZsb2F0TGluZWFyRmlsdGVyKToKKysgICAgICAgIChnbDo6Q29udGV4
dDo6c3VwcG9ydHNIYWxmRmxvYXRSZW5kZXJhYmxlVGV4dHVyZXMpOgorKyAgICAgICAgKGdsOjpD
b250ZXh0OjpnZXRNYXhpbXVtUmVuZGVyYnVmZmVyRGltZW5zaW9uKToKKysgICAgICAgIChnbDo6
Q29udGV4dDo6Z2V0TWF4aW11bVRleHR1cmVEaW1lbnNpb24pOgorKyAgICAgICAgKGdsOjpDb250
ZXh0OjpnZXRNYXhpbXVtQ3ViZVRleHR1cmVEaW1lbnNpb24pOgorKyAgICAgICAgKGdsOjpDb250
ZXh0OjpnZXRNYXhpbXVtVGV4dHVyZUxldmVsKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6c3Vw
cG9ydHNMdW1pbmFuY2VUZXh0dXJlcyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnN1cHBvcnRz
THVtaW5hbmNlQWxwaGFUZXh0dXJlcyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnN1cHBvcnRz
MzJiaXRJbmRpY2VzKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0SW5jb21wbGV0ZVRleHR1
cmUpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzZXRWZXJ0ZXhBdHRyaWIpOgorKyAgICAgICAg
KGdsOjpDb250ZXh0Ojppbml0RXh0ZW5zaW9uU3RyaW5nKToKKysgICAgICAgIChnbDo6Q29udGV4
dDo6YmxpdEZyYW1lYnVmZmVyKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9Db250ZXh0Lmg6
CisrICAgICAgICAoZ2w6OlZlcnRleEF0dHJpYnV0ZTo6VmVydGV4QXR0cmlidXRlKToKKysgICAg
ICAgIChnbDo6VmVydGV4QXR0cmlidXRlOjp0eXBlU2l6ZSk6CisrICAgICAgICAoZ2w6OlZlcnRl
eEF0dHJpYnV0ZTo6c3RyaWRlKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9GZW5jZS5jcHA6
IEFkZGVkLgorKyAgICAgICAgKGdsOjpGZW5jZTo6RmVuY2UpOgorKyAgICAgICAgKGdsOjpGZW5j
ZTo6fkZlbmNlKToKKysgICAgICAgIChnbDo6RmVuY2U6OmlzRmVuY2UpOgorKyAgICAgICAgKGds
OjpGZW5jZTo6c2V0RmVuY2UpOgorKyAgICAgICAgKGdsOjpGZW5jZTo6dGVzdEZlbmNlKToKKysg
ICAgICAgIChnbDo6RmVuY2U6OmZpbmlzaEZlbmNlKToKKysgICAgICAgIChnbDo6RmVuY2U6Omdl
dEZlbmNlaXYpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL0ZlbmNlLmg6IEFkZGVkLgorKyAg
ICAgICAgKiBzcmMvbGliR0xFU3YyL0ZyYW1lYnVmZmVyLmNwcDoKKysgICAgICAgIChnbDo6RnJh
bWVidWZmZXI6OmNvbXBsZXRlbmVzcyk6CisrICAgICAgICAoZ2w6OkRlZmF1bHRGcmFtZWJ1ZmZl
cjo6RGVmYXVsdEZyYW1lYnVmZmVyKToKKysgICAgICAgIChnbDo6RGVmYXVsdEZyYW1lYnVmZmVy
Ojpjb21wbGV0ZW5lc3MpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1Byb2dyYW0uY3BwOgor
KyAgICAgICAgKGdsOjpQcm9ncmFtOjpQcm9ncmFtKToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6
Z2V0U2FtcGxlck1hcHBpbmcpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpnZXRVbmlmb3JtTG9j
YXRpb24pOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpzZXRVbmlmb3JtMWl2KToKKysgICAgICAg
IChnbDo6UHJvZ3JhbTo6YXBwbHlVbmlmb3Jtcyk6CisrICAgICAgICAoZ2w6OlByb2dyYW06OnBh
Y2tWYXJ5aW5ncyk6CisrICAgICAgICAoZ2w6OlByb2dyYW06OmxpbmtWYXJ5aW5ncyk6CisrICAg
ICAgICAoZ2w6OlByb2dyYW06OmxpbmspOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpkZWZpbmVV
bmlmb3JtKToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6Y3JlYXRlVW5pZm9ybSk6CisrICAgICAg
ICAoZ2w6OlByb2dyYW06OmFwcGx5VW5pZm9ybTFpdik6CisrICAgICAgICAoZ2w6OlByb2dyYW06
OnJlc2V0SW5mb0xvZyk6CisrICAgICAgICAoZ2w6OlByb2dyYW06OnVubGluayk6CisrICAgICAg
ICAoZ2w6OlByb2dyYW06OmdldEFjdGl2ZUF0dHJpYnV0ZSk6CisrICAgICAgICAoZ2w6OlByb2dy
YW06OmdldEFjdGl2ZVVuaWZvcm0pOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpnZXREeERlcHRo
UmFuZ2VMb2NhdGlvbik6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvUHJvZ3JhbS5oOgorKyAg
ICAgICAgKiBzcmMvbGliR0xFU3YyL1JlZkNvdW50T2JqZWN0LmNwcDoKKysgICAgICAgIChnbDo6
UmVmQ291bnRPYmplY3Q6On5SZWZDb3VudE9iamVjdCk6CisrICAgICAgICAqIHNyYy9saWJHTEVT
djIvUmVuZGVyYnVmZmVyLmNwcDoKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyU3RvcmFnZTo6
UmVuZGVyYnVmZmVyU3RvcmFnZSk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclN0b3JhZ2U6
OmlzRmxvYXRpbmdQb2ludCk6CisrICAgICAgICAoZ2w6OkNvbG9yYnVmZmVyOjpDb2xvcmJ1ZmZl
cik6CisrICAgICAgICAoZ2w6OkRlcHRoU3RlbmNpbGJ1ZmZlcjo6RGVwdGhTdGVuY2lsYnVmZmVy
KToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9SZW5kZXJidWZmZXIuaDoKKysgICAgICAgICog
c3JjL2xpYkdMRVN2Mi9TaGFkZXIuY3BwOgorKyAgICAgICAgKGdsOjpTaGFkZXI6OlNoYWRlcik6
CisrICAgICAgICAoZ2w6OlNoYWRlcjo6cGFyc2VWYXJ5aW5ncyk6CisrICAgICAgICAoZ2w6OlNo
YWRlcjo6Y29tcGlsZVRvSExTTCk6CisrICAgICAgICAoZ2w6OlZlcnRleFNoYWRlcjo6cGFyc2VB
dHRyaWJ1dGVzKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9UZXh0dXJlLmNwcDoKKysgICAg
ICAgIChnbDo6VGV4dHVyZTo6VGV4dHVyZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OmlzRmxv
YXRpbmdQb2ludCk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OmlzUmVuZGVyYWJsZUZvcm1hdCk6
CisrICAgICAgICAoZ2w6OlRleHR1cmU6OnNlbGVjdEZvcm1hdCk6CisrICAgICAgICAoZ2w6OlRl
eHR1cmU6OmxvYWRJbWFnZURhdGEpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpsb2FkQWxwaGFG
bG9hdEltYWdlRGF0YSk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OmxvYWRBbHBoYUhhbGZGbG9h
dEltYWdlRGF0YSk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OmxvYWRMdW1pbmFuY2VJbWFnZURh
dGEpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpsb2FkTHVtaW5hbmNlRmxvYXRJbWFnZURhdGEp
OgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpsb2FkTHVtaW5hbmNlSGFsZkZsb2F0SW1hZ2VEYXRh
KToKKysgICAgICAgIChnbDo6VGV4dHVyZTo6bG9hZEx1bWluYW5jZUFscGhhSW1hZ2VEYXRhKToK
KysgICAgICAgIChnbDo6VGV4dHVyZTo6bG9hZEx1bWluYW5jZUFscGhhRmxvYXRJbWFnZURhdGEp
OgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpsb2FkTHVtaW5hbmNlQWxwaGFIYWxmRmxvYXRJbWFn
ZURhdGEpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpsb2FkUkdCRmxvYXRJbWFnZURhdGEpOgor
KyAgICAgICAgKGdsOjpUZXh0dXJlOjpsb2FkUkdCSGFsZkZsb2F0SW1hZ2VEYXRhKToKKysgICAg
ICAgIChnbDo6VGV4dHVyZTo6bG9hZFJHQkFGbG9hdEltYWdlRGF0YSk6CisrICAgICAgICAoZ2w6
OlRleHR1cmU6OmxvYWRSR0JBSGFsZkZsb2F0SW1hZ2VEYXRhKToKKysgICAgICAgIChnbDo6VGV4
dHVyZTo6Y3JlYXRlU3VyZmFjZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OnNldEltYWdlKToK
KysgICAgICAgIChnbDo6VGV4dHVyZTo6c2V0Q29tcHJlc3NlZEltYWdlKToKKysgICAgICAgIChn
bDo6VGV4dHVyZTo6c3ViSW1hZ2UpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpzdWJJbWFnZUNv
bXByZXNzZWQpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpjb3B5Tm9uUmVuZGVyYWJsZSk6Cisr
ICAgICAgICAoZ2w6OlRleHR1cmU6OmdldEQzREZvcm1hdCk6CisrICAgICAgICAoZ2w6OlRleHR1
cmU6OmlzUmVuZGVyYWJsZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6VGV4dHVyZTJEKToK
KysgICAgICAgIChnbDo6VGV4dHVyZTJEOjp+VGV4dHVyZTJEKToKKysgICAgICAgIChnbDo6VGV4
dHVyZTJEOjpyZWRlZmluZVRleHR1cmUpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlMkQ6OnNldElt
YWdlKToKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjpzZXRDb21wcmVzc2VkSW1hZ2UpOgorKyAg
ICAgICAgKGdsOjpUZXh0dXJlMkQ6OmNvcHlJbWFnZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmUy
RDo6Y29weVN1YkltYWdlKToKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjppc0NvbXBsZXRlKToK
KysgICAgICAgIChnbDo6VGV4dHVyZTJEOjpjcmVhdGVUZXh0dXJlKToKKysgICAgICAgIChnbDo6
VGV4dHVyZTJEOjpjb252ZXJ0VG9SZW5kZXJUYXJnZXQpOgorKyAgICAgICAgKGdsOjpUZXh0dXJl
MkQ6OmdlbmVyYXRlTWlwbWFwcyk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6Z2V0Q29sb3Ji
dWZmZXIpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlMkQ6OmdldFJlbmRlclRhcmdldCk6CisrICAg
ICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpUZXh0dXJlQ3ViZU1hcCk6CisrICAgICAgICAoZ2w6
OlRleHR1cmVDdWJlTWFwOjp+VGV4dHVyZUN1YmVNYXApOgorKyAgICAgICAgKGdsOjpUZXh0dXJl
Q3ViZU1hcDo6c3ViSW1hZ2UpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6c3ViSW1h
Z2VDb21wcmVzc2VkKToKKysgICAgICAgIChnbDo6VGV4dHVyZUN1YmVNYXA6OmlzQ29tcGxldGUp
OgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6Y3JlYXRlVGV4dHVyZSk6CisrICAgICAg
ICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpjb252ZXJ0VG9SZW5kZXJUYXJnZXQpOgorKyAgICAgICAg
KGdsOjpUZXh0dXJlQ3ViZU1hcDo6cmVkZWZpbmVUZXh0dXJlKToKKysgICAgICAgIChnbDo6VGV4
dHVyZUN1YmVNYXA6OmNvcHlJbWFnZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpj
b3B5U3ViSW1hZ2UpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6Z2VuZXJhdGVNaXBt
YXBzKToKKysgICAgICAgIChnbDo6VGV4dHVyZUN1YmVNYXA6OmdldENvbG9yYnVmZmVyKToKKysg
ICAgICAgIChnbDo6VGV4dHVyZUN1YmVNYXA6OmdldFJlbmRlclRhcmdldCk6CisrICAgICAgICAo
Z2w6OlRleHR1cmU6OlRleHR1cmVDb2xvcmJ1ZmZlclByb3h5OjpUZXh0dXJlQ29sb3JidWZmZXJQ
cm94eSk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OlRleHR1cmVDb2xvcmJ1ZmZlclByb3h5Ojpp
c0Zsb2F0aW5nUG9pbnQpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1RleHR1cmUuaDoKKysg
ICAgICAgICogc3JjL2xpYkdMRVN2Mi9nZW9tZXRyeS9JbmRleERhdGFNYW5hZ2VyLmNwcDoKKysg
ICAgICAgIChnbDo6SW5kZXhEYXRhTWFuYWdlcjo6SW5kZXhEYXRhTWFuYWdlcik6CisrICAgICAg
ICAoZ2w6OkluZGV4RGF0YU1hbmFnZXI6On5JbmRleERhdGFNYW5hZ2VyKToKKysgICAgICAgIChn
bDo6Y29udmVydEluZGljZXMpOgorKyAgICAgICAgKGdsOjpjb21wdXRlUmFuZ2UpOgorKyAgICAg
ICAgKGdsOjpJbmRleERhdGFNYW5hZ2VyOjpwcmVwYXJlSW5kZXhEYXRhKToKKysgICAgICAgIChn
bDo6SW5kZXhEYXRhTWFuYWdlcjo6aW5kZXhTaXplKToKKysgICAgICAgIChnbDo6SW5kZXhEYXRh
TWFuYWdlcjo6dHlwZVNpemUpOgorKyAgICAgICAgKGdsOjpJbmRleEJ1ZmZlcjo6SW5kZXhCdWZm
ZXIpOgorKyAgICAgICAgKGdsOjpJbmRleEJ1ZmZlcjo6fkluZGV4QnVmZmVyKToKKysgICAgICAg
IChnbDo6SW5kZXhCdWZmZXI6OmdldEJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkluZGV4QnVmZmVy
Ojp1bm1hcCk6CisrICAgICAgICAoZ2w6OlN0cmVhbWluZ0luZGV4QnVmZmVyOjpTdHJlYW1pbmdJ
bmRleEJ1ZmZlcik6CisrICAgICAgICAoZ2w6OlN0cmVhbWluZ0luZGV4QnVmZmVyOjp+U3RyZWFt
aW5nSW5kZXhCdWZmZXIpOgorKyAgICAgICAgKGdsOjpTdHJlYW1pbmdJbmRleEJ1ZmZlcjo6bWFw
KToKKysgICAgICAgIChnbDo6U3RyZWFtaW5nSW5kZXhCdWZmZXI6OnJlc2VydmVTcGFjZSk6Cisr
ICAgICAgICAoZ2w6OlN0YXRpY0luZGV4QnVmZmVyOjpTdGF0aWNJbmRleEJ1ZmZlcik6CisrICAg
ICAgICAoZ2w6OlN0YXRpY0luZGV4QnVmZmVyOjp+U3RhdGljSW5kZXhCdWZmZXIpOgorKyAgICAg
ICAgKGdsOjpTdGF0aWNJbmRleEJ1ZmZlcjo6bWFwKToKKysgICAgICAgIChnbDo6U3RhdGljSW5k
ZXhCdWZmZXI6OnJlc2VydmVTcGFjZSk6CisrICAgICAgICAoZ2w6OlN0YXRpY0luZGV4QnVmZmVy
Ojpsb29rdXBUeXBlKToKKysgICAgICAgIChnbDo6U3RhdGljSW5kZXhCdWZmZXI6Omxvb2t1cFJh
bmdlKToKKysgICAgICAgIChnbDo6U3RhdGljSW5kZXhCdWZmZXI6OmFkZFJhbmdlKToKKysgICAg
ICAgICogc3JjL2xpYkdMRVN2Mi9nZW9tZXRyeS9JbmRleERhdGFNYW5hZ2VyLmg6CisrICAgICAg
ICAoZ2w6OkluZGV4QnVmZmVyOjpzaXplKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9nZW9t
ZXRyeS9WZXJ0ZXhEYXRhTWFuYWdlci5jcHA6CisrICAgICAgICAoZ2w6OlZlcnRleERhdGFNYW5h
Z2VyOjpWZXJ0ZXhEYXRhTWFuYWdlcik6CisrICAgICAgICAoZ2w6OlZlcnRleERhdGFNYW5hZ2Vy
Ojp+VmVydGV4RGF0YU1hbmFnZXIpOgorKyAgICAgICAgKGdsOjpWZXJ0ZXhEYXRhTWFuYWdlcjo6
d3JpdGVBdHRyaWJ1dGVEYXRhKToKKysgICAgICAgIChnbDo6VmVydGV4RGF0YU1hbmFnZXI6OnBy
ZXBhcmVWZXJ0ZXhEYXRhKToKKysgICAgICAgIChnbDo6VmVydGV4RGF0YU1hbmFnZXI6OnNwYWNl
UmVxdWlyZWQpOgorKyAgICAgICAgKGdsOjpWZXJ0ZXhEYXRhTWFuYWdlcjo6Y2hlY2tWZXJ0ZXhD
YXBzKToKKysgICAgICAgIChnbDo6VmVydGV4RGF0YU1hbmFnZXI6OnR5cGVJbmRleCk6CisrICAg
ICAgICAoZ2w6OlZlcnRleERhdGFNYW5hZ2VyOjpzZXR1cEF0dHJpYnV0ZXMpOgorKyAgICAgICAg
KGdsOjpWZXJ0ZXhCdWZmZXI6OlZlcnRleEJ1ZmZlcik6CisrICAgICAgICAoZ2w6OlZlcnRleEJ1
ZmZlcjo6flZlcnRleEJ1ZmZlcik6CisrICAgICAgICAoZ2w6OlZlcnRleEJ1ZmZlcjo6dW5tYXAp
OgorKyAgICAgICAgKGdsOjpWZXJ0ZXhCdWZmZXI6OmdldEJ1ZmZlcik6CisrICAgICAgICAoZ2w6
OkNvbnN0YW50VmVydGV4QnVmZmVyOjpDb25zdGFudFZlcnRleEJ1ZmZlcik6CisrICAgICAgICAo
Z2w6OkNvbnN0YW50VmVydGV4QnVmZmVyOjp+Q29uc3RhbnRWZXJ0ZXhCdWZmZXIpOgorKyAgICAg
ICAgKGdsOjpBcnJheVZlcnRleEJ1ZmZlcjo6QXJyYXlWZXJ0ZXhCdWZmZXIpOgorKyAgICAgICAg
KGdsOjpBcnJheVZlcnRleEJ1ZmZlcjo6fkFycmF5VmVydGV4QnVmZmVyKToKKysgICAgICAgIChn
bDo6QXJyYXlWZXJ0ZXhCdWZmZXI6OmFkZFJlcXVpcmVkU3BhY2UpOgorKyAgICAgICAgKGdsOjpB
cnJheVZlcnRleEJ1ZmZlcjo6YWRkUmVxdWlyZWRTcGFjZUZvcik6CisrICAgICAgICAoZ2w6OlN0
cmVhbWluZ1ZlcnRleEJ1ZmZlcjo6U3RyZWFtaW5nVmVydGV4QnVmZmVyKToKKysgICAgICAgIChn
bDo6U3RyZWFtaW5nVmVydGV4QnVmZmVyOjp+U3RyZWFtaW5nVmVydGV4QnVmZmVyKToKKysgICAg
ICAgIChnbDo6U3RyZWFtaW5nVmVydGV4QnVmZmVyOjptYXApOgorKyAgICAgICAgKGdsOjpTdHJl
YW1pbmdWZXJ0ZXhCdWZmZXI6OnJlc2VydmVSZXF1aXJlZFNwYWNlKToKKysgICAgICAgIChnbDo6
U3RhdGljVmVydGV4QnVmZmVyOjpTdGF0aWNWZXJ0ZXhCdWZmZXIpOgorKyAgICAgICAgKGdsOjpT
dGF0aWNWZXJ0ZXhCdWZmZXI6On5TdGF0aWNWZXJ0ZXhCdWZmZXIpOgorKyAgICAgICAgKGdsOjpT
dGF0aWNWZXJ0ZXhCdWZmZXI6Om1hcCk6CisrICAgICAgICAoZ2w6OlN0YXRpY1ZlcnRleEJ1ZmZl
cjo6cmVzZXJ2ZVJlcXVpcmVkU3BhY2UpOgorKyAgICAgICAgKGdsOjpTdGF0aWNWZXJ0ZXhCdWZm
ZXI6Omxvb2t1cEF0dHJpYnV0ZSk6CisrICAgICAgICAoZ2w6OlZlcnRleERhdGFNYW5hZ2VyOjpm
b3JtYXRDb252ZXJ0ZXIpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL2dlb21ldHJ5L1ZlcnRl
eERhdGFNYW5hZ2VyLmg6CisrICAgICAgICAoZ2w6OkFycmF5VmVydGV4QnVmZmVyOjpzaXplKToK
KysgICAgICAgIChnbDo6VmVydGV4RGF0YU1hbmFnZXI6OmRpcnR5Q3VycmVudFZhbHVlKToKKysg
ICAgICAgICogc3JjL2xpYkdMRVN2Mi9nZW9tZXRyeS9iYWNrZW5kLmNwcDogUmVtb3ZlZC4KKysg
ICAgICAgICogc3JjL2xpYkdMRVN2Mi9nZW9tZXRyeS9iYWNrZW5kLmg6IFJlbW92ZWQuCisrICAg
ICAgICAqIHNyYy9saWJHTEVTdjIvZ2VvbWV0cnkvZHg5LmNwcDogUmVtb3ZlZC4KKysgICAgICAg
ICogc3JjL2xpYkdMRVN2Mi9nZW9tZXRyeS9keDkuaDogUmVtb3ZlZC4KKysgICAgICAgICogc3Jj
L2xpYkdMRVN2Mi9saWJHTEVTdjIuY3BwOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL2xpYkdM
RVN2Mi5kZWY6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvbGliR0xFU3YyLnZjcHJvajoKKysg
ICAgICAgICogc3JjL2xpYkdMRVN2Mi91dGlsaXRpZXMuY3BwOgorKyAgICAgICAgKGdsOjpVbmlm
b3JtQ29tcG9uZW50Q291bnQpOgorKyAgICAgICAgKGdsOjpVbmlmb3JtQ29tcG9uZW50VHlwZSk6
CisrICAgICAgICAoZ2w6OkNvbXB1dGVQaXhlbFNpemUpOgorKyAgICAgICAgKGdsOjpDaGVja1Rl
eHR1cmVGb3JtYXRUeXBlKToKKysgICAgICAgIChnbDo6SXNDb2xvclJlbmRlcmFibGUpOgorKyAg
ICAgICAgKGdsOjpJc0RlcHRoUmVuZGVyYWJsZSk6CisrICAgICAgICAoZ2w6OklzU3RlbmNpbFJl
bmRlcmFibGUpOgorKyAgICAgICAgKGVzMmR4OjpHZXRBbHBoYVNpemUpOgorKyAgICAgICAgKGVz
MmR4OjpHZXRSZWRTaXplKToKKysgICAgICAgIChlczJkeDo6R2V0R3JlZW5TaXplKToKKysgICAg
ICAgIChlczJkeDo6R2V0Qmx1ZVNpemUpOgorKyAgICAgICAgKGVzMmR4OjpHZXREZXB0aFNpemUp
OgorKyAgICAgICAgKGVzMmR4OjpDb252ZXJ0UHJpbWl0aXZlVHlwZSk6CisrICAgICAgICAoZHgy
ZXM6OkNvbnZlcnRCYWNrQnVmZmVyRm9ybWF0KToKKysgICAgICAgIChkeDJlczo6Q29udmVydERl
cHRoU3RlbmNpbEZvcm1hdCk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvdXRpbGl0aWVzLmg6
CisrCisrMjAxMS0wMS0xNyAgRGFuIEJlcm5zdGVpbiAgPG1pdHpAYXBwbGUuY29tPgorKworKyAg
ICAgICAgUnViYmVyLXN0YW1wZWQgYnkgTWFyayBSb3dlLgorKworKyAgICAgICAgVXBkYXRlIHhj
b2RlcHJvaiBzdm46aWdub3JlIHRvIGluY2x1ZGUgeGN1c2VyZGF0YS4KKysKKysgICAgICAgICog
QU5HTEUueGNvZGVwcm9qOiBNb2RpZmllZCBwcm9wZXJ0eSBzdm46aWdub3JlLgorKyAgICAgICAg
KiBzcmMvYnVpbGRfYW5nbGUueGNvZGVwcm9qOiBNb2RpZmllZCBwcm9wZXJ0eSBzdm46aWdub3Jl
LgorKworKzIwMTAtMTItMDEgIFN0ZXZlIEZhbGtlbmJ1cmcgIDxzZmFsa2VuQGFwcGxlLmNvbT4K
KysKKysgICAgICAgIFJldmlld2VkIGJ5IEFkYW0gUm9iZW4uCisrCisrICAgICAgICB2Y3Byb2og
Y2hhbmdlcyBjYW4ndCBiZSBhcHBsaWVkIGNsZWFubHkgYnkgdGhlIFdpbmRvd3MgRVdTIGJvdAor
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUwMzI4Cisr
CisrICAgICAgICAqIHNyYy9saWJFR0wvbGliRUdMLnZjcHJvajogQWRkZWQgcHJvcGVydHkgc3Zu
OmVvbC1zdHlsZS4KKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9saWJHTEVTdjIudmNwcm9qOiBB
ZGRlZCBwcm9wZXJ0eSBzdm46ZW9sLXN0eWxlLgorKworKzIwMTAtMTEtMDMgIERhcmluIEFkbGVy
ICA8ZGFyaW5AYXBwbGUuY29tPgorKworKyAgICAgICAgVXBkYXRlZCBYY29kZSBwcm9qZWN0cyBi
eSBvcGVuaW5nIHRoZW0gd2l0aCBYY29kZSAzLjIuNC4KKysgICAgICAgIFVwZGF0ZWQgc3ZuOmln
bm9yZSBmb3IgWGNvZGUgcHJvamVjdHMuCisrCisrICAgICAgICAqIEFOR0xFLnhjb2RlcHJvajog
QWRkZWQgcHJvcGVydHkgc3ZuOmlnbm9yZS4KKysgICAgICAgICogQU5HTEUueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvajogVXBkYXRlZCB3aXRoIFhjb2RlIDMuMi40LgorKyAgICAgICAgKiBzcmMv
YnVpbGRfYW5nbGUueGNvZGVwcm9qOiBBZGRlZCBwcm9wZXJ0eSBzdm46aWdub3JlLgorKyAgICAg
ICAgKiBzcmMvYnVpbGRfYW5nbGUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajogVXBkYXRlZCB3
aXRoIFhjb2RlIDMuMi40LgorKworKzIwMTAtMDktMDEgIFpoZW55YW8gTW8gIDx6bW9AZ29vZ2xl
LmNvbT4KKysKKysgICAgICAgIFJldmlld2VkIGJ5IEtlbm5ldGggUnVzc2VsbC4KKysKKysgICAg
ICAgIFJvbGwgQU5HTEUgdW5kZXIgd2Via2l0IHRvIHI0MDIKKysgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00NTAwNAorKworKyAgICAgICAgKiBBTkdMRS54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorKyAgICAgICAgKiBpbmNsdWRlL0dMRVMyL2dsMmV4
dC5oOgorKyAgICAgICAgKiBpbmNsdWRlL0dMU0xBTkcvUmVzb3VyY2VMaW1pdHMuaDogUmVtb3Zl
ZC4KKysgICAgICAgICogaW5jbHVkZS9HTFNMQU5HL1NoYWRlckxhbmcuaDoKKysgICAgICAgICog
c3JjL2NvbXBpbGVyL0Jhc2VUeXBlcy5oOgorKyAgICAgICAgKGdldFByZWNpc2lvblN0cmluZyk6
CisrICAgICAgICAoZ2V0QmFzaWNTdHJpbmcpOgorKyAgICAgICAgKElzU2FtcGxlcik6CisrICAg
ICAgICAoZ2V0UXVhbGlmaWVyU3RyaW5nKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL0luaXRp
YWxpemUuY3BwOgorKyAgICAgICAgKEJ1aWx0SW5Db25zdGFudHMpOgorKyAgICAgICAgKElkZW50
aWZ5QnVpbHRJbnMpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvSW5pdGlhbGl6ZS5oOgorKyAg
ICAgICAgKiBzcmMvY29tcGlsZXIvSW5pdGlhbGl6ZURsbC5jcHA6CisrICAgICAgICAoSW5pdFBy
b2Nlc3MpOgorKyAgICAgICAgKERldGFjaFByb2Nlc3MpOgorKyAgICAgICAgKEluaXRUaHJlYWQp
OgorKyAgICAgICAgKERldGFjaFRocmVhZCk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9Jbml0
aWFsaXplRGxsLmg6CisrICAgICAgICAqIHNyYy9jb21waWxlci9Jbml0aWFsaXplUGFyc2VDb250
ZXh0Lmg6CisrICAgICAgICAqIHNyYy9jb21waWxlci9JbnRlcm1lZGlhdGUuY3BwOgorKyAgICAg
ICAgKEdldEhpZ2hlclByZWNpc2lvbik6CisrICAgICAgICAoVEludGVybWVkaWF0ZTo6YWRkQmlu
YXJ5TWF0aCk6CisrICAgICAgICAoVEludGVybWVkaWF0ZTo6c2V0QWdncmVnYXRlT3BlcmF0b3Ip
OgorKyAgICAgICAgKFRJbnRlcm1lZGlhdGU6OmFkZENvbW1hKToKKysgICAgICAgIChUSW50ZXJt
ZWRpYXRlOjpwb3N0UHJvY2Vzcyk6CisrICAgICAgICAoVEludGVybUJpbmFyeTo6cHJvbW90ZSk6
CisrICAgICAgICAoQ29tcGFyZVN0cnVjdCk6CisrICAgICAgICAqIHNyYy9jb21waWxlci9PdXRw
dXRHTFNMLmNwcDoKKysgICAgICAgIChUT3V0cHV0R0xTTDo6d3JpdGVGdW5jdGlvblBhcmFtZXRl
cnMpOgorKyAgICAgICAgKFRPdXRwdXRHTFNMOjp2aXNpdFVuYXJ5KToKKysgICAgICAgIChUT3V0
cHV0R0xTTDo6dmlzaXRCcmFuY2gpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvT3V0cHV0SExT
TC5jcHA6CisrICAgICAgICAoc2g6Ok91dHB1dEhMU0w6OmhlYWRlcik6CisrICAgICAgICAoc2g6
Ok91dHB1dEhMU0w6OnZpc2l0QmluYXJ5KToKKysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6dmlz
aXRBZ2dyZWdhdGUpOgorKyAgICAgICAgKHNoOjpPdXRwdXRITFNMOjpoYW5kbGVFeGNlc3NpdmVM
b29wKToKKysgICAgICAgIChzaDo6T3V0cHV0SExTTDo6YWRkQ29uc3RydWN0b3IpOgorKyAgICAg
ICAgKiBzcmMvY29tcGlsZXIvUGFyc2VIZWxwZXIuY3BwOgorKyAgICAgICAgKFRQYXJzZUNvbnRl
eHQ6OmNvbnN0cnVjdG9yRXJyb3JDaGVjayk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6c2Ft
cGxlckVycm9yQ2hlY2spOgorKyAgICAgICAgKFRQYXJzZUNvbnRleHQ6OnBhcmFtRXJyb3JDaGVj
ayk6CisrICAgICAgICAoVFBhcnNlQ29udGV4dDo6ZmluZEZ1bmN0aW9uKToKKysgICAgICAgIChU
UGFyc2VDb250ZXh0OjpleGVjdXRlSW5pdGlhbGl6ZXIpOgorKyAgICAgICAgKFRQYXJzZUNvbnRl
eHQ6OmFkZENvbnN0cnVjdG9yKToKKysgICAgICAgIChUUGFyc2VDb250ZXh0OjphZGRDb25zdFN0
cnVjdCk6CisrICAgICAgICAoRnJlZVBhcnNlQ29udGV4dEluZGV4KToKKysgICAgICAgIChHZXRH
bG9iYWxQYXJzZUNvbnRleHQpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvUG9vbEFsbG9jLmg6
CisrICAgICAgICAoVFBvb2xBbGxvY2F0b3I6OnRIZWFkZXI6OnRIZWFkZXIpOgorKyAgICAgICAg
KHBvb2xfYWxsb2NhdG9yOjphbGxvY2F0ZSk6CisrICAgICAgICAocG9vbF9hbGxvY2F0b3I6OmRl
YWxsb2NhdGUpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvU2hhZGVyTGFuZy5jcHA6CisrICAg
ICAgICAoU2hJbml0aWFsaXplKToKKysgICAgICAgIChTaEZpbmFsaXplKToKKysgICAgICAgIChT
aEluaXRCdWlsdEluUmVzb3VyY2UpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvU3ltYm9sVGFi
bGUuY3BwOgorKyAgICAgICAgKFRUeXBlOjpnZXRTdHJ1Y3RTaXplKToKKysgICAgICAgICogc3Jj
L2NvbXBpbGVyL1N5bWJvbFRhYmxlLmg6CisrICAgICAgICAoVFZhcmlhYmxlOjpzZXRRdWFsaWZp
ZXIpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvVHlwZXMuaDoKKysgICAgICAgIChUVHlwZTo6
VFR5cGUpOgorKyAgICAgICAgKFRUeXBlOjpnZXRCYXNpY1R5cGUpOgorKyAgICAgICAgKFRUeXBl
OjpzZXRCYXNpY1R5cGUpOgorKyAgICAgICAgKFRUeXBlOjpnZXRQcmVjaXNpb24pOgorKyAgICAg
ICAgKFRUeXBlOjpzZXRQcmVjaXNpb24pOgorKyAgICAgICAgKFRUeXBlOjpnZXRRdWFsaWZpZXIp
OgorKyAgICAgICAgKFRUeXBlOjpzZXRRdWFsaWZpZXIpOgorKyAgICAgICAgKFRUeXBlOjpnZXRO
b21pbmFsU2l6ZSk6CisrICAgICAgICAoVFR5cGU6OnNldE5vbWluYWxTaXplKToKKysgICAgICAg
IChUVHlwZTo6aXNNYXRyaXgpOgorKyAgICAgICAgKFRUeXBlOjpzZXRNYXRyaXgpOgorKyAgICAg
ICAgKFRUeXBlOjppc0FycmF5KToKKysgICAgICAgIChUVHlwZTo6Z2V0QXJyYXlTaXplKToKKysg
ICAgICAgIChUVHlwZTo6c2V0QXJyYXlTaXplKToKKysgICAgICAgIChUVHlwZTo6Z2V0TWF4QXJy
YXlTaXplKToKKysgICAgICAgIChUVHlwZTo6c2V0TWF4QXJyYXlTaXplKToKKysgICAgICAgIChU
VHlwZTo6Y2xlYXJBcnJheW5lc3MpOgorKyAgICAgICAgKFRUeXBlOjpzZXRBcnJheUluZm9ybWF0
aW9uVHlwZSk6CisrICAgICAgICAoVFR5cGU6OmdldEFycmF5SW5mb3JtYXRpb25UeXBlKToKKysg
ICAgICAgIChUVHlwZTo6aXNWZWN0b3IpOgorKyAgICAgICAgKFRUeXBlOjppc1NjYWxhcik6Cisr
ICAgICAgICAoVFR5cGU6OnNldFN0cnVjdCk6CisrICAgICAgICAoVFR5cGU6OmdldFR5cGVOYW1l
KToKKysgICAgICAgIChUVHlwZTo6c2V0VHlwZU5hbWUpOgorKyAgICAgICAgKFRUeXBlOjppc0Zp
ZWxkKToKKysgICAgICAgIChUVHlwZTo6Z2V0RmllbGROYW1lKToKKysgICAgICAgIChUVHlwZTo6
c2V0RmllbGROYW1lKToKKysgICAgICAgIChUVHlwZTo6Z2V0QmFzaWNTdHJpbmcpOgorKyAgICAg
ICAgKFRUeXBlOjpnZXRQcmVjaXNpb25TdHJpbmcpOgorKyAgICAgICAgKFRUeXBlOjpnZXRRdWFs
aWZpZXJTdHJpbmcpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvZ2xzbGFuZy5sOgorKyAgICAg
ICAgKiBzcmMvY29tcGlsZXIvZ2xzbGFuZy55OgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvaW50
ZXJtZWRpYXRlLmg6CisrICAgICAgICAoVEludGVybU5vZGU6OmdldExpbmUpOgorKyAgICAgICAg
KFRJbnRlcm1Ob2RlOjpzZXRMaW5lKToKKysgICAgICAgIChUSW50ZXJtVHlwZWQ6OmdldEFzVHlw
ZWQpOgorKyAgICAgICAgKFRJbnRlcm1UeXBlZDo6c2V0VHlwZSk6CisrICAgICAgICAoVEludGVy
bVR5cGVkOjpnZXRUeXBlKToKKysgICAgICAgIChUSW50ZXJtVHlwZWQ6OmdldFR5cGVQb2ludGVy
KToKKysgICAgICAgIChUSW50ZXJtVHlwZWQ6OmdldEJhc2ljVHlwZSk6CisrICAgICAgICAoVElu
dGVybVR5cGVkOjpnZXRRdWFsaWZpZXIpOgorKyAgICAgICAgKFRJbnRlcm1UeXBlZDo6Z2V0UHJl
Y2lzaW9uKToKKysgICAgICAgIChUSW50ZXJtVHlwZWQ6OmdldE5vbWluYWxTaXplKToKKysgICAg
ICAgIChUSW50ZXJtVHlwZWQ6OmlzTWF0cml4KToKKysgICAgICAgIChUSW50ZXJtVHlwZWQ6Omlz
QXJyYXkpOgorKyAgICAgICAgKFRJbnRlcm1UeXBlZDo6aXNWZWN0b3IpOgorKyAgICAgICAgKFRJ
bnRlcm1UeXBlZDo6aXNTY2FsYXIpOgorKyAgICAgICAgKFRJbnRlcm1UeXBlZDo6Z2V0QmFzaWNT
dHJpbmcpOgorKyAgICAgICAgKFRJbnRlcm1UeXBlZDo6Z2V0UXVhbGlmaWVyU3RyaW5nKToKKysg
ICAgICAgIChUSW50ZXJtU3ltYm9sOjpnZXRJZCk6CisrICAgICAgICAoVEludGVybVN5bWJvbDo6
Z2V0U3ltYm9sKToKKysgICAgICAgIChUSW50ZXJtT3BlcmF0b3I6OnNldE9wKToKKysgICAgICAg
IChUSW50ZXJtQmluYXJ5OjpzZXRMZWZ0KToKKysgICAgICAgIChUSW50ZXJtQmluYXJ5OjpzZXRS
aWdodCk6CisrICAgICAgICAoVEludGVybUJpbmFyeTo6Z2V0TGVmdCk6CisrICAgICAgICAoVElu
dGVybUJpbmFyeTo6Z2V0UmlnaHQpOgorKyAgICAgICAgKFRJbnRlcm1VbmFyeTo6c2V0T3BlcmFu
ZCk6CisrICAgICAgICAoVEludGVybVVuYXJ5OjpnZXRPcGVyYW5kKToKKysgICAgICAgIChUSW50
ZXJtQWdncmVnYXRlOjpnZXRBc0FnZ3JlZ2F0ZSk6CisrICAgICAgICAoVEludGVybUFnZ3JlZ2F0
ZTo6Z2V0U2VxdWVuY2UpOgorKyAgICAgICAgKFRJbnRlcm1BZ2dyZWdhdGU6OnNldE5hbWUpOgor
KyAgICAgICAgKFRJbnRlcm1BZ2dyZWdhdGU6OmdldE5hbWUpOgorKyAgICAgICAgKFRJbnRlcm1B
Z2dyZWdhdGU6OnNldFVzZXJEZWZpbmVkKToKKysgICAgICAgIChUSW50ZXJtQWdncmVnYXRlOjpp
c1VzZXJEZWZpbmVkKToKKysgICAgICAgIChUSW50ZXJtQWdncmVnYXRlOjpnZXRRdWFsaWZpZXIp
OgorKyAgICAgICAgKFRJbnRlcm1BZ2dyZWdhdGU6OnNldE9wdGltaXplKToKKysgICAgICAgIChU
SW50ZXJtQWdncmVnYXRlOjpzZXREZWJ1Zyk6CisrICAgICAgICAoVEludGVybVNlbGVjdGlvbjo6
Z2V0Q29uZGl0aW9uKToKKysgICAgICAgIChUSW50ZXJtU2VsZWN0aW9uOjpnZXRUcnVlQmxvY2sp
OgorKyAgICAgICAgKFRJbnRlcm1TZWxlY3Rpb246OmdldEZhbHNlQmxvY2spOgorKyAgICAgICAg
KFRJbnRlcm1TZWxlY3Rpb246OmdldEFzU2VsZWN0aW9uTm9kZSk6CisrICAgICAgICAqIHNyYy9j
b21waWxlci9wYXJzZUNvbnN0LmNwcDoKKysgICAgICAgIChUQ29uc3RUcmF2ZXJzZXI6OlRDb25z
dFRyYXZlcnNlcik6CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvYXRvbS5j
OgorKyAgICAgICAgKEluaXRBdG9tVGFibGUpOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJl
cHJvY2Vzc29yL2F0b20uaDoKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9j
b21waWxlLmg6CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvY3BwLmM6Cisr
ICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvY3BwLmg6CisrICAgICAgICAqIHNy
Yy9jb21waWxlci9wcmVwcm9jZXNzb3IvY3Bwc3RydWN0LmM6CisrICAgICAgICAqIHNyYy9jb21w
aWxlci9wcmVwcm9jZXNzb3IvbWVtb3J5LmM6CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVw
cm9jZXNzb3IvbWVtb3J5Lmg6CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3Iv
cGFyc2VyLmg6CisrICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvcHJlcHJvY2Vz
cy5oOgorKyAgICAgICAgKiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL3NjYW5uZXIuYzoKKysg
ICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9zY2FubmVyLmg6CisrICAgICAgICAq
IHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3Ivc2xnbG9iYWxzLmg6CisrICAgICAgICAqIHNyYy9j
b21waWxlci9wcmVwcm9jZXNzb3Ivc3ltYm9scy5jOgorKyAgICAgICAgKE5ld1N5bWJvbCk6Cisr
ICAgICAgICAqIHNyYy9jb21waWxlci9wcmVwcm9jZXNzb3Ivc3ltYm9scy5oOgorKyAgICAgICAg
KiBzcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL3Rva2Vucy5jOgorKyAgICAgICAgKFJlY29yZFRv
a2VuKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci90b2tlbnMuaDoKKysg
ICAgICAgICogc3JjL2xpYkVHTC9EaXNwbGF5LmNwcDoKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6
OkRpc3BsYXkpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6aW5pdGlhbGl6ZSk6CisrICAgICAg
ICAoZWdsOjpEaXNwbGF5Ojp0ZXJtaW5hdGUpOgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6Y3Jl
YXRlRGV2aWNlKToKKysgICAgICAgIChlZ2w6OkRpc3BsYXk6OmNyZWF0ZVdpbmRvd1N1cmZhY2Up
OgorKyAgICAgICAgKGVnbDo6RGlzcGxheTo6Y3JlYXRlQ29udGV4dCk6CisrICAgICAgICAoZWds
OjpEaXNwbGF5OjpnZXRNdWx0aVNhbXBsZVN1cHBvcnQpOgorKyAgICAgICAgKGVnbDo6RGlzcGxh
eTo6Z2V0Q29tcHJlc3NlZFRleHR1cmVTdXBwb3J0KToKKysgICAgICAgICogc3JjL2xpYkVHTC9E
aXNwbGF5Lmg6CisrICAgICAgICAqIHNyYy9saWJFR0wvU3VyZmFjZS5jcHA6CisrICAgICAgICAo
ZWdsOjpTdXJmYWNlOjpTdXJmYWNlKToKKysgICAgICAgIChlZ2w6OlN1cmZhY2U6OnJlc2V0U3dh
cENoYWluKToKKysgICAgICAgIChlZ2w6OlN1cmZhY2U6OmdldFdpbmRvd0hhbmRsZSk6CisrICAg
ICAgICAoZWdsOjpTdXJmYWNlOjp3cml0ZVJlY29yZGFibGVGbGlwU3RhdGUpOgorKyAgICAgICAg
KGVnbDo6U3VyZmFjZTo6YXBwbHlGbGlwU3RhdGUpOgorKyAgICAgICAgKGVnbDo6U3VyZmFjZTo6
cmVsZWFzZVJlY29yZGVkU3RhdGUpOgorKyAgICAgICAgKGVnbDo6U3VyZmFjZTo6Y2hlY2tGb3JX
aW5kb3dSZXNpemUpOgorKyAgICAgICAgKGVnbDo6U3VyZmFjZTo6c3dhcCk6CisrICAgICAgICAq
IHNyYy9saWJFR0wvU3VyZmFjZS5oOgorKyAgICAgICAgKiBzcmMvbGliRUdML2xpYkVHTC5jcHA6
CisrICAgICAgICAqIHNyYy9saWJFR0wvbGliRUdMLnZjcHJvajoKKysgICAgICAgICogc3JjL2xp
YkdMRVN2Mi9CbGl0LmNwcDoKKysgICAgICAgIChnbDo6QmxpdDo6c2V0VmVydGV4U2hhZGVyKToK
KysgICAgICAgIChnbDo6QmxpdDo6c2V0UGl4ZWxTaGFkZXIpOgorKyAgICAgICAgKGdsOjpCbGl0
OjpzZXRGb3JtYXRDb252ZXJ0U2hhZGVycyk6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvQnVm
ZmVyLmNwcDoKKysgICAgICAgIChnbDo6QnVmZmVyOjpCdWZmZXIpOgorKyAgICAgICAgKiBzcmMv
bGliR0xFU3YyL0J1ZmZlci5oOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL0NvbnRleHQuY3Bw
OgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpDb250ZXh0KToKKysgICAgICAgIChnbDo6Q29udGV4
dDo6fkNvbnRleHQpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjptYWtlQ3VycmVudCk6CisrICAg
ICAgICAoZ2w6OkNvbnRleHQ6Om1hcmtBbGxTdGF0ZURpcnR5KToKKysgICAgICAgIChnbDo6Q29u
dGV4dDo6Z2V0UmVhZEZyYW1lYnVmZmVySGFuZGxlKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6
Z2V0RHJhd0ZyYW1lYnVmZmVySGFuZGxlKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0UmVu
ZGVyYnVmZmVySGFuZGxlKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0QXJyYXlCdWZmZXJI
YW5kbGUpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpzZXRWZXJ0ZXhBdHRyaWJTdGF0ZSk6Cisr
ICAgICAgICAoZ2w6OkNvbnRleHQ6OmNyZWF0ZUJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkNvbnRl
eHQ6OmNyZWF0ZVByb2dyYW0pOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpjcmVhdGVTaGFkZXIp
OgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpjcmVhdGVUZXh0dXJlKToKKysgICAgICAgIChnbDo6
Q29udGV4dDo6Y3JlYXRlUmVuZGVyYnVmZmVyKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6ZGVs
ZXRlQnVmZmVyKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6ZGVsZXRlU2hhZGVyKToKKysgICAg
ICAgIChnbDo6Q29udGV4dDo6ZGVsZXRlUHJvZ3JhbSk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6
OmRlbGV0ZVRleHR1cmUpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpkZWxldGVSZW5kZXJidWZm
ZXIpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRCdWZmZXIpOgorKyAgICAgICAgKGdsOjpD
b250ZXh0OjpnZXRTaGFkZXIpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRQcm9ncmFtKToK
KysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0VGV4dHVyZSk6CisrICAgICAgICAoZ2w6OkNvbnRl
eHQ6OmdldFJlbmRlcmJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmdldFJlYWRGcmFt
ZWJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmdldERyYXdGcmFtZWJ1ZmZlcik6Cisr
ICAgICAgICAoZ2w6OkNvbnRleHQ6OmJpbmRBcnJheUJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkNv
bnRleHQ6OmJpbmRFbGVtZW50QXJyYXlCdWZmZXIpOgorKyAgICAgICAgKGdsOjpDb250ZXh0Ojpi
aW5kVGV4dHVyZTJEKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6YmluZFRleHR1cmVDdWJlTWFw
KToKKysgICAgICAgIChnbDo6Q29udGV4dDo6YmluZFJlYWRGcmFtZWJ1ZmZlcik6CisrICAgICAg
ICAoZ2w6OkNvbnRleHQ6OmJpbmREcmF3RnJhbWVidWZmZXIpOgorKyAgICAgICAgKGdsOjpDb250
ZXh0OjpiaW5kUmVuZGVyYnVmZmVyKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6dXNlUHJvZ3Jh
bSk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnNldEZyYW1lYnVmZmVyWmVybyk6CisrICAgICAg
ICAoZ2w6OkNvbnRleHQ6OnNldFJlbmRlcmJ1ZmZlclN0b3JhZ2UpOgorKyAgICAgICAgKGdsOjpD
b250ZXh0OjpnZXRGcmFtZWJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmdldEFycmF5
QnVmZmVyKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0RWxlbWVudEFycmF5QnVmZmVyKToK
KysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0Q3VycmVudFByb2dyYW0pOgorKyAgICAgICAgKGds
OjpDb250ZXh0OjpnZXRUZXh0dXJlMkQpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRUZXh0
dXJlQ3ViZU1hcCk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmdldFNhbXBsZXJUZXh0dXJlKToK
KysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0RmxvYXR2KToKKysgICAgICAgIChnbDo6Q29udGV4
dDo6Z2V0SW50ZWdlcnYpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXRRdWVyeVBhcmFtZXRl
ckluZm8pOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjphcHBseVJlbmRlclRhcmdldCk6CisrICAg
ICAgICAoZ2w6OkNvbnRleHQ6OmFwcGx5U3RhdGUpOgorKyAgICAgICAgKGdsOjpDb250ZXh0Ojph
cHBseUluZGV4QnVmZmVyKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6cmVhZFBpeGVscyk6Cisr
ICAgICAgICAoZ2w6OkNvbnRleHQ6OmNsZWFyKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Zmlu
aXNoKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Zmx1c2gpOgorKyAgICAgICAgKGdsOjpDb250
ZXh0OjpzdXBwb3J0c1NoYWRlck1vZGVsMyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OmdldE1h
eFN1cHBvcnRlZFNhbXBsZXMpOgorKyAgICAgICAgKGdsOjpDb250ZXh0OjpnZXROZWFyZXN0U3Vw
cG9ydGVkU2FtcGxlcyk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6OnN1cHBvcnRzQ29tcHJlc3Nl
ZFRleHR1cmVzKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6ZGV0YWNoQnVmZmVyKToKKysgICAg
ICAgIChnbDo6Q29udGV4dDo6ZGV0YWNoVGV4dHVyZSk6CisrICAgICAgICAoZ2w6OkNvbnRleHQ6
OmRldGFjaEZyYW1lYnVmZmVyKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6ZGV0YWNoUmVuZGVy
YnVmZmVyKToKKysgICAgICAgIChnbDo6Q29udGV4dDo6Z2V0SW5jb21wbGV0ZVRleHR1cmUpOgor
KyAgICAgICAgKGdsOjpDb250ZXh0Ojppbml0RXh0ZW5zaW9uU3RyaW5nKToKKysgICAgICAgIChn
bDo6Q29udGV4dDo6YmxpdEZyYW1lYnVmZmVyKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9D
b250ZXh0Lmg6CisrICAgICAgICAoZ2w6OkF0dHJpYnV0ZVN0YXRlOjpBdHRyaWJ1dGVTdGF0ZSk6
CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvRnJhbWVidWZmZXIuY3BwOgorKyAgICAgICAgKGds
OjpGcmFtZWJ1ZmZlcjo6RnJhbWVidWZmZXIpOgorKyAgICAgICAgKGdsOjpGcmFtZWJ1ZmZlcjo6
fkZyYW1lYnVmZmVyKToKKysgICAgICAgIChnbDo6RnJhbWVidWZmZXI6Omxvb2t1cFJlbmRlcmJ1
ZmZlcik6CisrICAgICAgICAoZ2w6OkZyYW1lYnVmZmVyOjpzZXRDb2xvcmJ1ZmZlcik6CisrICAg
ICAgICAoZ2w6OkZyYW1lYnVmZmVyOjpzZXREZXB0aGJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkZy
YW1lYnVmZmVyOjpzZXRTdGVuY2lsYnVmZmVyKToKKysgICAgICAgIChnbDo6RnJhbWVidWZmZXI6
OmRldGFjaFRleHR1cmUpOgorKyAgICAgICAgKGdsOjpGcmFtZWJ1ZmZlcjo6ZGV0YWNoUmVuZGVy
YnVmZmVyKToKKysgICAgICAgIChnbDo6RnJhbWVidWZmZXI6OmdldFJlbmRlclRhcmdldFNlcmlh
bCk6CisrICAgICAgICAoZ2w6OkZyYW1lYnVmZmVyOjpnZXRSZW5kZXJUYXJnZXQpOgorKyAgICAg
ICAgKGdsOjpGcmFtZWJ1ZmZlcjo6Z2V0RGVwdGhTdGVuY2lsKToKKysgICAgICAgIChnbDo6RnJh
bWVidWZmZXI6OmdldERlcHRoYnVmZmVyU2VyaWFsKToKKysgICAgICAgIChnbDo6RnJhbWVidWZm
ZXI6OmdldFN0ZW5jaWxidWZmZXJTZXJpYWwpOgorKyAgICAgICAgKGdsOjpGcmFtZWJ1ZmZlcjo6
Z2V0Q29sb3JidWZmZXIpOgorKyAgICAgICAgKGdsOjpGcmFtZWJ1ZmZlcjo6Z2V0RGVwdGhidWZm
ZXIpOgorKyAgICAgICAgKGdsOjpGcmFtZWJ1ZmZlcjo6Z2V0U3RlbmNpbGJ1ZmZlcik6CisrICAg
ICAgICAoZ2w6OkZyYW1lYnVmZmVyOjpnZXRDb2xvcmJ1ZmZlckhhbmRsZSk6CisrICAgICAgICAo
Z2w6OkZyYW1lYnVmZmVyOjpnZXREZXB0aGJ1ZmZlckhhbmRsZSk6CisrICAgICAgICAoZ2w6OkZy
YW1lYnVmZmVyOjpnZXRTdGVuY2lsYnVmZmVySGFuZGxlKToKKysgICAgICAgIChnbDo6RnJhbWVi
dWZmZXI6Omhhc1N0ZW5jaWwpOgorKyAgICAgICAgKGdsOjpGcmFtZWJ1ZmZlcjo6aXNNdWx0aXNh
bXBsZSk6CisrICAgICAgICAoZ2w6OkZyYW1lYnVmZmVyOjpjb21wbGV0ZW5lc3MpOgorKyAgICAg
ICAgKGdsOjpEZWZhdWx0RnJhbWVidWZmZXI6OkRlZmF1bHRGcmFtZWJ1ZmZlcik6CisrICAgICAg
ICAoZ2w6OkZyYW1lYnVmZmVyOjpnZXRTYW1wbGVzKToKKysgICAgICAgIChnbDo6RGVmYXVsdEZy
YW1lYnVmZmVyOjpjb21wbGV0ZW5lc3MpOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL0ZyYW1l
YnVmZmVyLmg6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvUHJvZ3JhbS5jcHA6CisrICAgICAg
ICAoZ2w6OlByb2dyYW06OlByb2dyYW0pOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjp+UHJvZ3Jh
bSk6CisrICAgICAgICAoZ2w6OlByb2dyYW06OmF0dGFjaFNoYWRlcik6CisrICAgICAgICAoZ2w6
OlByb2dyYW06OmRldGFjaFNoYWRlcik6CisrICAgICAgICAoZ2w6OlByb2dyYW06OmxpbmtWYXJ5
aW5ncyk6CisrICAgICAgICAoZ2w6OlByb2dyYW06OmxpbmspOgorKyAgICAgICAgKGdsOjpQcm9n
cmFtOjp1bmxpbmspOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpyZWxlYXNlKToKKysgICAgICAg
IChnbDo6UHJvZ3JhbTo6YWRkUmVmKToKKysgICAgICAgIChnbDo6UHJvZ3JhbTo6Z2V0UmVmQ291
bnQpOgorKyAgICAgICAgKGdsOjpQcm9ncmFtOjpnZXREeFZpZXdwb3J0TG9jYXRpb24pOgorKyAg
ICAgICAgKiBzcmMvbGliR0xFU3YyL1Byb2dyYW0uaDoKKysgICAgICAgICogc3JjL2xpYkdMRVN2
Mi9SZWZDb3VudE9iamVjdC5jcHA6IEFkZGVkLgorKyAgICAgICAgKGdsOjpSZWZDb3VudE9iamVj
dDo6UmVmQ291bnRPYmplY3QpOgorKyAgICAgICAgKGdsOjpSZWZDb3VudE9iamVjdDo6flJlZkNv
dW50T2JqZWN0KToKKysgICAgICAgIChnbDo6UmVmQ291bnRPYmplY3Q6OmFkZFJlZik6CisrICAg
ICAgICAoZ2w6OlJlZkNvdW50T2JqZWN0OjpyZWxlYXNlKToKKysgICAgICAgIChnbDo6UmVmQ291
bnRPYmplY3RCaW5kaW5nUG9pbnRlcjo6c2V0KToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9S
ZWZDb3VudE9iamVjdC5oOiBBZGRlZC4KKysgICAgICAgIChnbDo6UmVmQ291bnRPYmplY3Q6Omlk
KToKKysgICAgICAgIChnbDo6UmVmQ291bnRPYmplY3RCaW5kaW5nUG9pbnRlcjo6UmVmQ291bnRP
YmplY3RCaW5kaW5nUG9pbnRlcik6CisrICAgICAgICAoZ2w6OlJlZkNvdW50T2JqZWN0QmluZGlu
Z1BvaW50ZXI6On5SZWZDb3VudE9iamVjdEJpbmRpbmdQb2ludGVyKToKKysgICAgICAgIChnbDo6
UmVmQ291bnRPYmplY3RCaW5kaW5nUG9pbnRlcjo6Z2V0KToKKysgICAgICAgIChnbDo6UmVmQ291
bnRPYmplY3RCaW5kaW5nUG9pbnRlcjo6aWQpOgorKyAgICAgICAgKGdsOjpSZWZDb3VudE9iamVj
dEJpbmRpbmdQb2ludGVyOjpvcGVyYXRvciAhICk6CisrICAgICAgICAoZ2w6OkJpbmRpbmdQb2lu
dGVyOjpzZXQpOgorKyAgICAgICAgKGdsOjpCaW5kaW5nUG9pbnRlcjo6Z2V0KToKKysgICAgICAg
IChnbDo6QmluZGluZ1BvaW50ZXI6Om9wZXJhdG9yIC0+ICk6CisrICAgICAgICAqIHNyYy9saWJH
TEVTdjIvUmVuZGVyYnVmZmVyLmNwcDoKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyOjpSZW5k
ZXJidWZmZXIpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXI6On5SZW5kZXJidWZmZXIpOgor
KyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXI6OmlzQ29sb3JidWZmZXIpOgorKyAgICAgICAgKGds
OjpSZW5kZXJidWZmZXI6OmlzRGVwdGhidWZmZXIpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZm
ZXI6OmlzU3RlbmNpbGJ1ZmZlcik6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlcjo6Z2V0UmVu
ZGVyVGFyZ2V0KToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyOjpnZXREZXB0aFN0ZW5jaWwp
OgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXI6OmdldFdpZHRoKToKKysgICAgICAgIChnbDo6
UmVuZGVyYnVmZmVyOjpnZXRIZWlnaHQpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXI6Omdl
dEZvcm1hdCk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlcjo6Z2V0RDNERm9ybWF0KToKKysg
ICAgICAgIChnbDo6UmVuZGVyYnVmZmVyOjpnZXRTZXJpYWwpOgorKyAgICAgICAgKGdsOjpSZW5k
ZXJidWZmZXI6OnNldFN0b3JhZ2UpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJTdG9yYWdl
OjpSZW5kZXJidWZmZXJTdG9yYWdlKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyU3RvcmFn
ZTo6flJlbmRlcmJ1ZmZlclN0b3JhZ2UpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJTdG9y
YWdlOjppc0NvbG9yYnVmZmVyKToKKysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyU3RvcmFnZTo6
aXNEZXB0aGJ1ZmZlcik6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclN0b3JhZ2U6OmlzU3Rl
bmNpbGJ1ZmZlcik6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclN0b3JhZ2U6OmdldFJlbmRl
clRhcmdldCk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclN0b3JhZ2U6OmdldERlcHRoU3Rl
bmNpbCk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclN0b3JhZ2U6OmdldFdpZHRoKToKKysg
ICAgICAgIChnbDo6UmVuZGVyYnVmZmVyU3RvcmFnZTo6Z2V0SGVpZ2h0KToKKysgICAgICAgIChn
bDo6UmVuZGVyYnVmZmVyU3RvcmFnZTo6c2V0U2l6ZSk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1
ZmZlclN0b3JhZ2U6OmdldEZvcm1hdCk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclN0b3Jh
Z2U6OmdldEQzREZvcm1hdCk6CisrICAgICAgICAoZ2w6OlJlbmRlcmJ1ZmZlclN0b3JhZ2U6Omdl
dFNhbXBsZXMpOgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJTdG9yYWdlOjpnZXRTZXJpYWwp
OgorKyAgICAgICAgKGdsOjpSZW5kZXJidWZmZXJTdG9yYWdlOjppc3N1ZVNlcmlhbCk6CisrICAg
ICAgICAoZ2w6OkNvbG9yYnVmZmVyOjpDb2xvcmJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkNvbG9y
YnVmZmVyOjppc0NvbG9yYnVmZmVyKToKKysgICAgICAgIChnbDo6Q29sb3JidWZmZXI6OmdldFJl
ZFNpemUpOgorKyAgICAgICAgKGdsOjpDb2xvcmJ1ZmZlcjo6Z2V0R3JlZW5TaXplKToKKysgICAg
ICAgIChnbDo6Q29sb3JidWZmZXI6OmdldEJsdWVTaXplKToKKysgICAgICAgIChnbDo6Q29sb3Ji
dWZmZXI6OmdldEFscGhhU2l6ZSk6CisrICAgICAgICAoZ2w6OkRlcHRoU3RlbmNpbGJ1ZmZlcjo6
RGVwdGhTdGVuY2lsYnVmZmVyKToKKysgICAgICAgIChnbDo6RGVwdGhTdGVuY2lsYnVmZmVyOjp+
RGVwdGhTdGVuY2lsYnVmZmVyKToKKysgICAgICAgIChnbDo6RGVwdGhTdGVuY2lsYnVmZmVyOjpp
c0RlcHRoYnVmZmVyKToKKysgICAgICAgIChnbDo6RGVwdGhTdGVuY2lsYnVmZmVyOjppc1N0ZW5j
aWxidWZmZXIpOgorKyAgICAgICAgKGdsOjpEZXB0aFN0ZW5jaWxidWZmZXI6OmdldERlcHRoU2l6
ZSk6CisrICAgICAgICAoZ2w6OkRlcHRoU3RlbmNpbGJ1ZmZlcjo6Z2V0U3RlbmNpbFNpemUpOgor
KyAgICAgICAgKGdsOjpEZXB0aFN0ZW5jaWxidWZmZXI6OmdldERlcHRoU3RlbmNpbCk6CisrICAg
ICAgICAoZ2w6OkRlcHRoYnVmZmVyOjpEZXB0aGJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkRlcHRo
YnVmZmVyOjp+RGVwdGhidWZmZXIpOgorKyAgICAgICAgKGdsOjpEZXB0aGJ1ZmZlcjo6aXNEZXB0
aGJ1ZmZlcik6CisrICAgICAgICAoZ2w6OkRlcHRoYnVmZmVyOjppc1N0ZW5jaWxidWZmZXIpOgor
KyAgICAgICAgKGdsOjpTdGVuY2lsYnVmZmVyOjpTdGVuY2lsYnVmZmVyKToKKysgICAgICAgIChn
bDo6U3RlbmNpbGJ1ZmZlcjo6flN0ZW5jaWxidWZmZXIpOgorKyAgICAgICAgKGdsOjpTdGVuY2ls
YnVmZmVyOjppc0RlcHRoYnVmZmVyKToKKysgICAgICAgIChnbDo6U3RlbmNpbGJ1ZmZlcjo6aXNT
dGVuY2lsYnVmZmVyKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9SZW5kZXJidWZmZXIuaDoK
KysgICAgICAgIChnbDo6UmVuZGVyYnVmZmVyOjpnZXRTdG9yYWdlKToKKysgICAgICAgICogc3Jj
L2xpYkdMRVN2Mi9SZXNvdXJjZU1hbmFnZXIuY3BwOiBBZGRlZC4KKysgICAgICAgIChnbDo6UmVz
b3VyY2VNYW5hZ2VyOjpSZXNvdXJjZU1hbmFnZXIpOgorKyAgICAgICAgKGdsOjpSZXNvdXJjZU1h
bmFnZXI6On5SZXNvdXJjZU1hbmFnZXIpOgorKyAgICAgICAgKGdsOjpSZXNvdXJjZU1hbmFnZXI6
OmFkZFJlZik6CisrICAgICAgICAoZ2w6OlJlc291cmNlTWFuYWdlcjo6cmVsZWFzZSk6CisrICAg
ICAgICAoZ2w6OlJlc291cmNlTWFuYWdlcjo6Y3JlYXRlQnVmZmVyKToKKysgICAgICAgIChnbDo6
UmVzb3VyY2VNYW5hZ2VyOjpjcmVhdGVTaGFkZXIpOgorKyAgICAgICAgKGdsOjpSZXNvdXJjZU1h
bmFnZXI6OmNyZWF0ZVByb2dyYW0pOgorKyAgICAgICAgKGdsOjpSZXNvdXJjZU1hbmFnZXI6OmNy
ZWF0ZVRleHR1cmUpOgorKyAgICAgICAgKGdsOjpSZXNvdXJjZU1hbmFnZXI6OmNyZWF0ZVJlbmRl
cmJ1ZmZlcik6CisrICAgICAgICAoZ2w6OlJlc291cmNlTWFuYWdlcjo6ZGVsZXRlQnVmZmVyKToK
KysgICAgICAgIChnbDo6UmVzb3VyY2VNYW5hZ2VyOjpkZWxldGVTaGFkZXIpOgorKyAgICAgICAg
KGdsOjpSZXNvdXJjZU1hbmFnZXI6OmRlbGV0ZVByb2dyYW0pOgorKyAgICAgICAgKGdsOjpSZXNv
dXJjZU1hbmFnZXI6OmRlbGV0ZVRleHR1cmUpOgorKyAgICAgICAgKGdsOjpSZXNvdXJjZU1hbmFn
ZXI6OmRlbGV0ZVJlbmRlcmJ1ZmZlcik6CisrICAgICAgICAoZ2w6OlJlc291cmNlTWFuYWdlcjo6
Z2V0QnVmZmVyKToKKysgICAgICAgIChnbDo6UmVzb3VyY2VNYW5hZ2VyOjpnZXRTaGFkZXIpOgor
KyAgICAgICAgKGdsOjpSZXNvdXJjZU1hbmFnZXI6OmdldFRleHR1cmUpOgorKyAgICAgICAgKGds
OjpSZXNvdXJjZU1hbmFnZXI6OmdldFByb2dyYW0pOgorKyAgICAgICAgKGdsOjpSZXNvdXJjZU1h
bmFnZXI6OmdldFJlbmRlcmJ1ZmZlcik6CisrICAgICAgICAoZ2w6OlJlc291cmNlTWFuYWdlcjo6
c2V0UmVuZGVyYnVmZmVyKToKKysgICAgICAgIChnbDo6UmVzb3VyY2VNYW5hZ2VyOjpjaGVja0J1
ZmZlckFsbG9jYXRpb24pOgorKyAgICAgICAgKGdsOjpSZXNvdXJjZU1hbmFnZXI6OmNoZWNrVGV4
dHVyZUFsbG9jYXRpb24pOgorKyAgICAgICAgKGdsOjpSZXNvdXJjZU1hbmFnZXI6OmNoZWNrUmVu
ZGVyYnVmZmVyQWxsb2NhdGlvbik6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvUmVzb3VyY2VN
YW5hZ2VyLmg6IEFkZGVkLgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1NoYWRlci5jcHA6Cisr
ICAgICAgICAoZ2w6OlNoYWRlcjo6U2hhZGVyKToKKysgICAgICAgIChnbDo6U2hhZGVyOjphZGRS
ZWYpOgorKyAgICAgICAgKGdsOjpTaGFkZXI6OnJlbGVhc2UpOgorKyAgICAgICAgKGdsOjpTaGFk
ZXI6OmdldFJlZkNvdW50KToKKysgICAgICAgIChnbDo6U2hhZGVyOjpwYXJzZVZhcnlpbmdzKToK
KysgICAgICAgIChnbDo6VmVydGV4U2hhZGVyOjpWZXJ0ZXhTaGFkZXIpOgorKyAgICAgICAgKGds
OjpGcmFnbWVudFNoYWRlcjo6RnJhZ21lbnRTaGFkZXIpOgorKyAgICAgICAgKiBzcmMvbGliR0xF
U3YyL1NoYWRlci5oOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL1RleHR1cmUuY3BwOgorKyAg
ICAgICAgKGdsOjpUZXh0dXJlOjpJbWFnZTo6SW1hZ2UpOgorKyAgICAgICAgKGdsOjpUZXh0dXJl
OjpUZXh0dXJlKToKKysgICAgICAgIChnbDo6VGV4dHVyZTo6Z2V0QmxpdHRlcik6CisrICAgICAg
ICAoZ2w6OlRleHR1cmU6OnNlbGVjdEZvcm1hdCk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6Omxv
YWRJbWFnZURhdGEpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpsb2FkQWxwaGFJbWFnZURhdGEp
OgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpsb2FkTHVtaW5hbmNlSW1hZ2VEYXRhKToKKysgICAg
ICAgIChnbDo6VGV4dHVyZTo6bG9hZEx1bWluYW5jZUFscGhhSW1hZ2VEYXRhKToKKysgICAgICAg
IChnbDo6VGV4dHVyZTo6bG9hZFJHQlVCeXRlSW1hZ2VEYXRhKToKKysgICAgICAgIChnbDo6VGV4
dHVyZTo6bG9hZFJHQjU2NUltYWdlRGF0YSk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OmxvYWRS
R0JBVUJ5dGVJbWFnZURhdGEpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpsb2FkUkdCQTQ0NDRJ
bWFnZURhdGEpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpsb2FkUkdCQTU1NTFJbWFnZURhdGEp
OgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpsb2FkQkdSQUltYWdlRGF0YSk6CisrICAgICAgICAo
Z2w6OlRleHR1cmU6OmNyZWF0ZVN1cmZhY2UpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpzZXRJ
bWFnZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OnNldENvbXByZXNzZWRJbWFnZSk6CisrICAg
ICAgICAoZ2w6OlRleHR1cmU6OnN1YkltYWdlKToKKysgICAgICAgIChnbDo6VGV4dHVyZTo6c3Vi
SW1hZ2VDb21wcmVzc2VkKToKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjpUZXh0dXJlMkQpOgor
KyAgICAgICAgKGdsOjpUZXh0dXJlMkQ6OmdldEZvcm1hdCk6CisrICAgICAgICAoZ2w6OlRleHR1
cmUyRDo6c2V0Q29tcHJlc3NlZEltYWdlKToKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjpzdWJJ
bWFnZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6c3ViSW1hZ2VDb21wcmVzc2VkKToKKysg
ICAgICAgIChnbDo6VGV4dHVyZTJEOjpjb3B5SW1hZ2UpOgorKyAgICAgICAgKGdsOjpUZXh0dXJl
MkQ6OmNvcHlTdWJJbWFnZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmUyRDo6aXNDb21wcmVzc2Vk
KToKKysgICAgICAgIChnbDo6VGV4dHVyZTJEOjpnZXRDb2xvcmJ1ZmZlcik6CisrICAgICAgICAo
Z2w6OlRleHR1cmVDdWJlTWFwOjpUZXh0dXJlQ3ViZU1hcCk6CisrICAgICAgICAoZ2w6OlRleHR1
cmVDdWJlTWFwOjpnZXRGb3JtYXQpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlQ3ViZU1hcDo6c2V0
Q29tcHJlc3NlZEltYWdlKToKKysgICAgICAgIChnbDo6VGV4dHVyZUN1YmVNYXA6OnN1YkltYWdl
KToKKysgICAgICAgIChnbDo6VGV4dHVyZUN1YmVNYXA6OnN1YkltYWdlQ29tcHJlc3NlZCk6Cisr
ICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjppc0NvbXByZXNzZWQpOgorKyAgICAgICAgKGds
OjpUZXh0dXJlQ3ViZU1hcDo6Y29weUltYWdlKToKKysgICAgICAgIChnbDo6VGV4dHVyZUN1YmVN
YXA6OmNvcHlTdWJJbWFnZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmVDdWJlTWFwOjpnZXRDb2xv
cmJ1ZmZlcik6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OlRleHR1cmVDb2xvcmJ1ZmZlclByb3h5
OjphZGRSZWYpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpUZXh0dXJlQ29sb3JidWZmZXJQcm94
eTo6cmVsZWFzZSk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OlRleHR1cmVDb2xvcmJ1ZmZlclBy
b3h5OjpnZXRXaWR0aCk6CisrICAgICAgICAoZ2w6OlRleHR1cmU6OlRleHR1cmVDb2xvcmJ1ZmZl
clByb3h5OjpnZXRIZWlnaHQpOgorKyAgICAgICAgKGdsOjpUZXh0dXJlOjpUZXh0dXJlQ29sb3Ji
dWZmZXJQcm94eTo6Z2V0Rm9ybWF0KToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi9UZXh0dXJl
Lmg6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvbGliR0xFU3YyLmNwcDoKKysgICAgICAgICog
c3JjL2xpYkdMRVN2Mi9saWJHTEVTdjIuZGVmOgorKyAgICAgICAgKiBzcmMvbGliR0xFU3YyL2xp
YkdMRVN2Mi52Y3Byb2o6CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvbWFpbi5oOgorKyAgICAg
ICAgKiBzcmMvbGliR0xFU3YyL3V0aWxpdGllcy5jcHA6CisrICAgICAgICAoZ2w6OkNvbXB1dGVD
b21wcmVzc2VkUGl0Y2gpOgorKyAgICAgICAgKGdsOjpDb21wdXRlQ29tcHJlc3NlZFNpemUpOgor
KyAgICAgICAgKGdsOjpJc0NvbXByZXNzZWQpOgorKyAgICAgICAgKGdsOjpDb21wdXRlUGl4ZWxT
aXplKToKKysgICAgICAgIChnbDo6Q2hlY2tUZXh0dXJlRm9ybWF0VHlwZSk6CisrICAgICAgICAo
ZXMyZHg6OkNvbnZlcnRSZW5kZXJidWZmZXJGb3JtYXQpOgorKyAgICAgICAgKGVzMmR4OjpHZXRT
YW1wbGVzRnJvbU11bHRpc2FtcGxlVHlwZSk6CisrICAgICAgICAoZXMyZHg6OkdldE11bHRpc2Ft
cGxlVHlwZUZyb21TYW1wbGVzKToKKysgICAgICAgICogc3JjL2xpYkdMRVN2Mi91dGlsaXRpZXMu
aDoKKysKKysyMDEwLTA4LTE3ICBDaHJpcyBNYXJyaW4gIDxjbWFycmluQGFwcGxlLmNvbT4KKysK
KysgICAgICAgIFVucmV2aWV3ZWQuCisrCisrICAgICAgICBNb3ZlZCBwcmV2aW91cyBsaW5rIGVy
cm9yIGZpeCB0byBCYXNlLnhjY29uZmlnLgorKworKyAgICAgICAgKiBBTkdMRS54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qOgorKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmln
OgorKworKzIwMTAtMDgtMTcgIENocmlzIE1hcnJpbiAgPGNtYXJyaW5AYXBwbGUuY29tPgorKwor
KyAgICAgICAgVW5yZXZpZXdlZC4KKysKKysgICAgICAgIEdvdCByaWQgb2YgbGluayBlcnJvcnMg
aW4gV2ViQ29yZS4KKysKKysgICAgICAgIENoYW5nZWQgR0NDX0lOTElORVNfQVJFX1BSSVZBVEVf
RVhURVJOIHRvIFlFUyBhbmQKKysgICAgICAgIEdDQ19TWU1CT0xTX1BSSVZBVEVfRVhURVJOIHRv
IE5PIHRvIG1hdGNoIFdlYkNvcmUKKysgICAgICAgIGZsYWdzLgorKworKyAgICAgICAgKiBBTkdM
RS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorKworKzIwMTAtMDgtMDQgIEtlbm5ldGggUnVz
c2VsbCAgPGtickBnb29nbGUuY29tPgorKworKyAgICAgICAgUmV2aWV3ZWQgYnkgRGltaXRyaSBH
bGF6a292LgorKworKyAgICAgICAgVXBkYXRlIEFOR0xFIHRvIHIzNTIKKysgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MzUwMAorKworKyAgICAgICAgVXBk
YXRlZCBBTkdMRSB0byByMzUyIChKdWx5IDI2LCAyMDEwKS4gQnVpbHQgV2ViS2l0IHRvIHRlc3Qu
CisrCisrICAgICAgICAqIGluY2x1ZGUvR0xTTEFORy9TaGFkZXJMYW5nLmg6CisrICAgICAgICAq
IHNyYy9jb21waWxlci9Jbml0aWFsaXplLmNwcDoKKysgICAgICAgIChCdWlsdEluRnVuY3Rpb25z
Q29tbW9uKToKKysgICAgICAgIChCdWlsdEluRnVuY3Rpb25zVmVydGV4KToKKysgICAgICAgIChC
dWlsdEluRnVuY3Rpb25zRnJhZ21lbnQpOgorKyAgICAgICAgKFN0YW5kYXJkVW5pZm9ybXMpOgor
KyAgICAgICAgKERlZmF1bHRQcmVjaXNpb25WZXJ0ZXgpOgorKyAgICAgICAgKERlZmF1bHRQcmVj
aXNpb25GcmFnbWVudCk6CisrICAgICAgICAoQnVpbHRJbkNvbnN0YW50cyk6CisrICAgICAgICAo
VEJ1aWx0SW5zOjppbml0aWFsaXplKToKKysgICAgICAgIChJZGVudGlmeUJ1aWx0SW5zKToKKysg
ICAgICAgICogc3JjL2NvbXBpbGVyL0luaXRpYWxpemUuaDoKKysgICAgICAgIChUQnVpbHRJbnM6
OmdldEJ1aWx0SW5TdHJpbmdzKToKKysgICAgICAgICogc3JjL2NvbXBpbGVyL091dHB1dEdMU0wu
Y3BwOgorKyAgICAgICAgKFRPdXRwdXRHTFNMOjp2aXNpdFNlbGVjdGlvbik6CisrICAgICAgICAq
IHNyYy9jb21waWxlci9TaEhhbmRsZS5oOgorKyAgICAgICAgKFRDb21waWxlcjo6Z2V0TGFuZ3Vh
Z2UpOgorKyAgICAgICAgKFRDb21waWxlcjo6Z2V0U3BlYyk6CisrICAgICAgICAoVENvbXBpbGVy
OjpnZXRTeW1ib2xUYWJsZSk6CisrICAgICAgICAoVENvbXBpbGVyOjpnZXRJbmZvU2luayk6Cisr
ICAgICAgICAqIHNyYy9jb21waWxlci9TaGFkZXJMYW5nLmNwcDoKKysgICAgICAgIChJbml0aWFs
aXplU3ltYm9sVGFibGUpOgorKyAgICAgICAgKEdlbmVyYXRlQnVpbHRJblN5bWJvbFRhYmxlKToK
KysgICAgICAgIChTaEluaXRpYWxpemUpOgorKyAgICAgICAgKFNoQ29uc3RydWN0Q29tcGlsZXIp
OgorKyAgICAgICAgKFNoRmluYWxpemUpOgorKyAgICAgICAgKFNoQ29tcGlsZSk6CisrICAgICAg
ICAqIHNyYy9jb21waWxlci9TeW1ib2xUYWJsZS5oOgorKyAgICAgICAgKFRTeW1ib2xUYWJsZTo6
YXRCdWlsdEluTGV2ZWwpOgorKyAgICAgICAgKFRTeW1ib2xUYWJsZTo6YXRHbG9iYWxMZXZlbCk6
CisrICAgICAgICAoVFN5bWJvbFRhYmxlOjpwdXNoKToKKysgICAgICAgIChUU3ltYm9sVGFibGU6
OmdldEdsb2JhbExldmVsKToKKysgICAgICAgIChUU3ltYm9sVGFibGU6OmN1cnJlbnRMZXZlbCk6
CisrICAgICAgICAqIHNyYy9saWJHTEVTdjIvU2hhZGVyLmNwcDoKKysgICAgICAgIChnbDo6U2hh
ZGVyOjpTaGFkZXIpOgorKyAgICAgICAgKGdsOjpTaGFkZXI6OmNvbXBpbGVUb0hMU0wpOgorKwor
KzIwMTAtMDgtMDMgIE1hcmsgUm93ZSAgPG1yb3dlQGFwcGxlLmNvbT4KKysKKysgICAgICAgIFJ1
YmJlci1zdGFtcGVkIGJ5IEFkZWxlIFBldGVyc29uLgorKworKyAgICAgICAgUmVtb3ZlIHNvbWUg
dW5uZWNlc3NhcnkgZmlsZXMgZnJvbSB0aGUgQU5HTEUgdHJlZS4KKysKKysgICAgICAgICogc3Jj
L2NvbXBpbGVyL3Rvb2xzL0NPUFlJTkcuYmlzb246IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9j
b21waWxlci90b29scy9DT1BZSU5HLmZsZXg6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9jb21w
aWxlci90b29scy9SRUFETUU6IFJlbW92ZWQuCisrICAgICAgICAqIHNyYy9jb21waWxlci90b29s
cy9iaXNvbi5oYWlyeTogUmVtb3ZlZC4KKysgICAgICAgICogc3JjL2NvbXBpbGVyL3Rvb2xzL2Jp
c29uLnNpbXBsZTogUmVtb3ZlZC4KKysKKysyMDEwLTA4LTAzICBNYXJrIFJvd2UgIDxtcm93ZUBh
cHBsZS5jb20+CisrCisrICAgICAgICBSdWJiZXItc3RhbXBlZCBieSBBZGVsZSBQZXRlcnNvbi4K
KysKKysgICAgICAgIENsZWFuIHVwIHRoZSBBTkdMRSBYY29kZSBwcm9qZWN0LgorKworKyAgICAg
ICAgTWFpbiBjaGFuZ2VzIGluY2x1ZGU6CisrICAgICAgICDigKIgQWRkaW5nIGEgUHJvZHVjdGlv
biBjb25maWd1cmF0aW9uLgorKyAgICAgICAg4oCiIE1vZGlmeWluZyB0aGUgbGlicmFyeSBuYW1l
IGZyb20gbGliYW5nbGUuYSB0byBsaWJBTkdMRS5hLgorKyAgICAgICAg4oCiIEluc3RhbGxpbmcg
dGhlIGhlYWRlcnMgaW4gYSBzdWJkaXJlY3Rvcnkgb2YgL3Vzci9sb2NhbC9pbmNsdWRlIHRvIGF2
b2lkIHBvbGx1dGluZyB0aGUgdG9wLWxldmVsIGRpcmVjdG9yeS4KKysgICAgICAgIOKAoiBHZW5l
cmF0aW5nIGRlcml2ZWQgc291cmNlcyBpbiB0byB0aGUgYnVpbHQgcHJvZHVjdHMgZGlyZWN0b3J5
IHNvIHRoZXkncmUgc2F2ZWQgYWxvbmcgd2l0aCB0aGUgc3ltcm9vdC4KKysgICAgICAgIOKAoiBT
d2l0Y2hpbmcgdG8gdXNpbmcgLnhjY29uZmlnIGZpbGVzIGZvciBtYXhpbXVtIGNsZWFubGluZXNz
LgorKworKyAgICAgICAgKiBBTkdMRS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorKyAgICAg
ICAgKiBDb25maWd1cmF0aW9ucy9BTkdMRS54Y2NvbmZpZzogQWRkZWQuCisrICAgICAgICAqIENv
bmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWc6IEFkZGVkLgorKyAgICAgICAgKiBDb25maWd1cmF0
aW9ucy9EZWJ1Z1JlbGVhc2UueGNjb25maWc6IEFkZGVkLgorKworKzIwMTAtMDgtMDIgIFBhdWwg
U2F3YXlhICA8cHNhd2F5YUBhcHBsZS5jb20+CisrCisrICAgICAgICBSZXZpZXdlZCBieSBBZGVs
ZSBQZXRlcnNvbi4KKysKKysgICAgICAgIEFkZCBBTkdMRSBsaWJyYXJ5IHRvIFdlYktpdC4gRnJv
bSB0aGUgcmVwb3NpdG9yeSAoaHR0cDovL2FuZ2xlcHJvamVjdC5nb29nbGVjb2RlLmNvbSkgYXMg
b2YgSnVseSAyMi4KKysgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD00Mjc4OQorKworZGlmZiAtLWdpdCBhL3NjcmlwdHMvY29weS1mcmFtZXdvcmtzLXRvLXNl
Y29uZGFyeS1wYXRoLnNoIGIvc2NyaXB0cy9jb3B5LWZyYW1ld29ya3MtdG8tc2Vjb25kYXJ5LXBh
dGguc2gKK25ldyBmaWxlIG1vZGUgMTAwNzU1CitpbmRleCAwMDAwMDAwMDAuLjJlMDBjMTI3MAor
LS0tIC9kZXYvbnVsbAorKysrIGIvc2NyaXB0cy9jb3B5LWZyYW1ld29ya3MtdG8tc2Vjb25kYXJ5
LXBhdGguc2gKK0BAIC0wLDAgKzEsNjIgQEAKKysjIS9iaW4vc2gKKysKKytzZXQgLWUKKysKKytp
ZiBbWyAiJHtERVBMT1lNRU5UX0xPQ0FUSU9OfSIgIT0gIllFUyIgXV07IHRoZW4KKysgICAgZWNo
byAiZXJyb3I6ICQoYmFzZW5hbWUgJDApIHNob3VsZCBvbmx5IGJlIHJ1biBmb3IgZGVwbG95bWVu
dC1zdHlsZSAoXCJwcm9kdWN0aW9uXCIgLyBcIm5vbi1lbmdpbmVlcmluZ1wiKSBidWlsZHMuIgor
KyAgICBleGl0IDEKKytmaQorKworK2lmIFtbICIke1VTRV9TWVNURU1fQ09OVEVOVF9QQVRIfSIg
IT0gIllFUyIgfHwgIiR7Q09QWV9TVEFHRURfRlJBTUVXT1JLU19UT19TRUNPTkRBUllfUEFUSH0i
ICE9ICJZRVMiIF1dOyB0aGVuCisrICAgIGVjaG8gIlNraXBwaW5nIGNvcHlpbmcgZnJhbWV3b3Jr
cyB0byBzZWNvbmRhcnkgY29udGVudCBwYXRoLiIKKysgICAgZXhpdCAwCisrZmkKKysKKytpZiBb
WyAiJHtBQ1RJT059IiA9PSAiaW5zdGFsbGFwaSIgfHwgIiR7QUNUSU9OfSIgPT0gImluc3RhbGxo
ZHJzIiBdXTsgdGhlbgorKyAgICBlY2hvICJTa2lwcGluZyBjb3B5aW5nIGZyYW1ld29ya3MgdG8g
c2Vjb25kYXJ5IGNvbnRlbnQgcGF0aCBmb3IgaW5zdGFsbGFwaSBvciBpbnN0YWxsaGRycyBhY3Rp
b24uIgorKyAgICBleGl0IDAKKytmaQorKworK2lmIFtbIC16ICIke0ZSQU1FV09SS1NfVE9fQ09Q
WV9UT19TRUNPTkRBUllfUEFUSH0iICYmIC16ICIke0RZTElCU19UT19DT1BZX1RPX1NFQ09OREFS
WV9QQVRIfSIgXV07IHRoZW4KKysgICAgZWNobyAid2FybmluZzogTmVpdGhlciBGUkFNRVdPUktT
X1RPX0NPUFlfVE9fU0VDT05EQVJZX1BBVEggb3IgRFlMSUJTX1RPX0NPUFlfVE9fU0VDT05EQVJZ
X1BBVEggYXJlIHNldC4iCisrZmkKKysKKytpZiBbWyAteiAiJHtTRUNPTkRBUllfU1RBR0VEX0ZS
QU1FV09SS19ESVJFQ1RPUll9IiBdXTsgdGhlbgorKyAgICBlY2hvICJlcnJvcjogU0VDT05EQVJZ
X1NUQUdFRF9GUkFNRVdPUktfRElSRUNUT1JZIGlzIG5vdCBzZXQuIgorKyAgICBleGl0IDEKKytm
aQorKworK2Z1bmN0aW9uIGNvcHlfcHJvZHVjdF90b19kZXN0aW5hdGlvbl9mcmFtZXdvcmtfZGly
ZWN0b3J5CisreworKyAgICBQUk9EVUNUX0NPTVBPTkVOVD0kMQorKworKyAgICAjIEluIGRlcGxv
eW1lbnQgYnVpbGRzLCBCVUlMVF9QUk9EVUNUU19ESVIgZG9lc24ndCBwb2ludCB0byB0aGUgYWN0
dWFsIGxvY2F0aW9uIG9mIGFueSBwcm9kdWN0cywKKysgICAgIyBidXQgdG8gYSBzaW5nbGUgZm9s
ZGVyIG9mIHN5bWxpbmtzIHRvIGFsbCBidWlsdCBwcm9kdWN0cywgcmVnYXJkbGVzcyBvZiB3aGV0
aGVyIHRoZXkgYXJlIGFjdHVhbGx5CisrICAgICMgYmVpbmcgaW5zdGFsbGVkLiBXZSBuZWVkIHRv
IGNvcHkgdGhlIGFjdHVhbCBwcm9kdWN0cyB0byB0aGUgc2Vjb25kYXJ5IGNvbnRlbnQgcGF0aCwg
Km5vdCoganVzdCBhIHN5bWxpbmsuCisrICAgIFNPVVJDRV9QUk9EVUNUX1BBVEg9IiQocmVhZGxp
bmsgIiR7QlVJTFRfUFJPRFVDVFNfRElSfS8ke1BST0RVQ1RfQ09NUE9ORU5UfSIpIgorKworKyAg
ICBlY2hvICJDb3B5aW5nICR7U09VUkNFX1BST0RVQ1RfUEFUSH0gdG8gJHtERVNUSU5BVElPTl9G
UkFNRVdPUktfRElSRUNUT1JZfSIKKysgICAgcnN5bmMgLWFFICIke1NPVVJDRV9QUk9EVUNUX1BB
VEh9IiAiJHtERVNUSU5BVElPTl9GUkFNRVdPUktfRElSRUNUT1JZfSIKKyt9CisrCisraWYgW1sg
ISAteiAiJHtTRUNPTkRBUllfU1RBR0VEX0ZSQU1FV09SS19ESVJFQ1RPUll9IiBdXTsgdGhlbgor
KyAgICBERVNUSU5BVElPTl9GUkFNRVdPUktfRElSRUNUT1JZPSIke0RTVFJPT1R9JHtTRUNPTkRB
UllfU1RBR0VEX0ZSQU1FV09SS19ESVJFQ1RPUll9IgorKyAgICBta2RpciAtcCAiJHtERVNUSU5B
VElPTl9GUkFNRVdPUktfRElSRUNUT1JZfSIKKysKKysgICAgZm9yIEZSQU1FV09SS19OQU1FIGlu
ICQoZWNobyAke0ZSQU1FV09SS1NfVE9fQ09QWV9UT19TRUNPTkRBUllfUEFUSH0gfCB0ciAnICcg
J1xuJykKKysgICAgZG8KKysgICAgICAgIEZSQU1FV09SS19CVU5ETEVfTkFNRT0iJHtGUkFNRVdP
UktfTkFNRX0uZnJhbWV3b3JrIgorKworKyAgICAgICAgY29weV9wcm9kdWN0X3RvX2Rlc3RpbmF0
aW9uX2ZyYW1ld29ya19kaXJlY3RvcnkgJHtGUkFNRVdPUktfQlVORExFX05BTUV9CisrICAgIGRv
bmUKKytmaQorKworK2lmIFtbICEgLXogIiR7RFlMSUJTX1RPX0NPUFlfVE9fU0VDT05EQVJZX1BB
VEh9IiBdXTsgdGhlbgorKyAgICBERVNUSU5BVElPTl9GUkFNRVdPUktfRElSRUNUT1JZPSIke0RT
VFJPT1R9JHtTRUNPTkRBUllfU1RBR0VEX0ZSQU1FV09SS19ESVJFQ1RPUll9JHtTVEFHRURfRFlM
SUJfRlJBTUVXT1JLX1BBVEh9IgorKyAgICBta2RpciAtcCAiJHtERVNUSU5BVElPTl9GUkFNRVdP
UktfRElSRUNUT1JZfSIKKysKKysgICAgZm9yIERZTElCIGluICQoZWNobyAke0RZTElCU19UT19D
T1BZX1RPX1NFQ09OREFSWV9QQVRIfSB8IHRyICcgJyAnXG4nKQorKyAgICBkbworKyAgICAgICAg
Y29weV9wcm9kdWN0X3RvX2Rlc3RpbmF0aW9uX2ZyYW1ld29ya19kaXJlY3RvcnkgJHtEWUxJQn0K
KysgICAgZG9uZQorK2ZpCiBkaWZmIC0tZ2l0IGEvc2NyaXB0cy9ydW5fY29kZV9nZW5lcmF0aW9u
LnB5IGIvc2NyaXB0cy9ydW5fY29kZV9nZW5lcmF0aW9uLnB5Ci1pbmRleCBhZGM5YmQ5Li5hNmVm
MzlmIDEwMDc1NQoraW5kZXggYWRjOWJkOWViLi5hNmVmMzlmZDIgMTAwNzU1CiAtLS0gYS9zY3Jp
cHRzL3J1bl9jb2RlX2dlbmVyYXRpb24ucHkKICsrKyBiL3NjcmlwdHMvcnVuX2NvZGVfZ2VuZXJh
dGlvbi5weQogQEAgLTI1Niw4ICsyNTYsMTEgQEAgZGVmIG1haW4oKToKQEAgLTI3LDcgKzE5Mzc5
LDcgQEAgaW5kZXggYWRjOWJkOS4uYTZlZjM5ZiAxMDA3NTUKICAgICAgICAgICMgVXBkYXRlIHRo
ZSBoYXNoIGRpY3Rpb25hcnkuCiAgICAgICAgICBhbGxfbmV3X2hhc2hlc1tmbmFtZV0gPSBuZXdf
aGFzaGVzCiBkaWZmIC0tZ2l0IGEvc3JjL2NvbW1vbi91dGlsaXRpZXMuY3BwIGIvc3JjL2NvbW1v
bi91dGlsaXRpZXMuY3BwCi1pbmRleCBlYmUyODJjLi43NThmYjA2IDEwMDY0NAoraW5kZXggYTE3
NTczNGMzLi43ZmM5YWE3OTIgMTAwNjQ0CiAtLS0gYS9zcmMvY29tbW9uL3V0aWxpdGllcy5jcHAK
ICsrKyBiL3NyYy9jb21tb24vdXRpbGl0aWVzLmNwcAogQEAgLTYsNiArNiwxMiBAQApAQCAtNDQs
NyArMTkzOTYsNyBAQCBpbmRleCBlYmUyODJjLi43NThmYjA2IDEwMDY0NAogICNpbmNsdWRlICJH
TEVTMy9nbDMuaCIKICAjaW5jbHVkZSAiY29tbW9uL21hdGh1dGlsLmgiCiBkaWZmIC0tZ2l0IGEv
c3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9wcmVwcm9jZXNzb3JfdGFiX2F1dG9nZW4uY3BwIGIv
c3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9wcmVwcm9jZXNzb3JfdGFiX2F1dG9nZW4uY3BwCi1p
bmRleCA0NzExNzc0Li45ZWFiMWIzIDEwMDY0NAoraW5kZXggNDcxMTc3NGNkLi45ZWFiMWIzNjEg
MTAwNjQ0CiAtLS0gYS9zcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL3ByZXByb2Nlc3Nvcl90YWJf
YXV0b2dlbi5jcHAKICsrKyBiL3NyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvcHJlcHJvY2Vzc29y
X3RhYl9hdXRvZ2VuLmNwcAogQEAgLTEsNSArMSw4IEBACkBAIC01Nyw3ICsxOTQwOSw3IEBAIGlu
ZGV4IDQ3MTE3NzQuLjllYWIxYjMgMTAwNjQ0CiAgCiAgICAgQ29weXJpZ2h0IChDKSAxOTg0LCAx
OTg5LTE5OTAsIDIwMDAtMjAxNSwgMjAxOC0yMDE5IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwK
IGRpZmYgLS1naXQgYS9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci9Db2RlR2VuLmNwcCBiL3NyYy9j
b21waWxlci90cmFuc2xhdG9yL0NvZGVHZW4uY3BwCi1pbmRleCA0OTdlZjg4Li40NzIxM2M5IDEw
MDY0NAoraW5kZXggNDk3ZWY4ODFlLi40NzIxM2M5MDQgMTAwNjQ0CiAtLS0gYS9zcmMvY29tcGls
ZXIvdHJhbnNsYXRvci9Db2RlR2VuLmNwcAogKysrIGIvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3Iv
Q29kZUdlbi5jcHAKIEBAIC0yMyw2ICsyMyw5IEBACkBAIC03MSw3ICsxOTQyMyw3IEBAIGluZGV4
IDQ5N2VmODguLjQ3MjEzYzkgMTAwNjQ0CiAgI2lmZGVmIEFOR0xFX0VOQUJMRV9NRVRBTF9TUElS
VgogICMgICAgaW5jbHVkZSAiY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWwuaCIK
IGRpZmYgLS1naXQgYS9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJl
Y3QuY3BwIGIvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0LmNw
cAotaW5kZXggN2Y2NjVjMS4uNTk1ODEwMSAxMDA2NDQKK2luZGV4IDdmNjY1YzEzMC4uNTk1ODEw
MTUwIDEwMDY0NAogLS0tIGEvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFs
RGlyZWN0LmNwcAogKysrIGIvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFs
RGlyZWN0LmNwcAogQEAgLTk1MCw3ICs5NTAsNiBAQCBib29sIFRyYW5zbGF0b3JNZXRhbERpcmVj
dDo6dHJhbnNsYXRlSW1wbChUSW5mb1NpbmtCYXNlICZzaW5rLApAQCAtODMsNyArMTk0MzUsNyBA
QCBpbmRleCA3ZjY2NWMxLi41OTU4MTAxIDEwMDY0NAogICAgICAgICAgewogICAgICAgICAgICAg
IGlmICghUmVwbGFjZVZhcmlhYmxlKHRoaXMsIHJvb3QsIEJ1aWx0SW5WYXJpYWJsZTo6Z2xfVmVy
dGV4SW5kZXgoKSwgJmtnbF9WZXJ0ZXhJRE1ldGFsKSkKIGRpZmYgLS1naXQgYS9zcmMvY29tcGls
ZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QvRW1pdE1ldGFsLmNwcCBiL3NyYy9j
b21waWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC9FbWl0TWV0YWwuY3BwCi1p
bmRleCAwMTljZmNmLi4yNWM5MTFlIDEwMDY0NAoraW5kZXggNDYxMGQ1Y2ZjLi44ZjlhMTNiZmEg
MTAwNjQ0CiAtLS0gYS9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJl
Y3QvRW1pdE1ldGFsLmNwcAogKysrIGIvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRv
ck1ldGFsRGlyZWN0L0VtaXRNZXRhbC5jcHAKIEBAIC0xNzQwLDcgKzE3NDAsNiBAQCB2b2lkIEdl
bk1ldGFsVHJhdmVyc2VyOjplbWl0RnVuY3Rpb25TaWduYXR1cmUoY29uc3QgVEZ1bmN0aW9uICZm
dW5jKQpAQCAtOTYsNyArMTk0NDgsNyBAQCBpbmRleCAwMTljZmNmLi4yNWM5MTFlIDEwMDY0NAog
ICAgICAgICAgbU91dCA8PCAiIEBAWEZCLUJpbmRpbmdzQEAgIjsKIGRpZmYgLS1naXQgYS9zcmMv
Y29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QvRW52aXJvbm1lbnRWYXJp
YWJsZS5oIGIvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0L0Vu
dmlyb25tZW50VmFyaWFibGUuaAogbmV3IGZpbGUgbW9kZSAxMDA2NDQKLWluZGV4IDAwMDAwMDAu
LmQ4MjNmYzcKK2luZGV4IDAwMDAwMDAwMC4uZDgyM2ZjNzI4CiAtLS0gL2Rldi9udWxsCiArKysg
Yi9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QvRW52aXJvbm1l
bnRWYXJpYWJsZS5oCiBAQCAtMCwwICsxLDQ1IEBACkBAIC0xNDYsNyArMTk0OTgsNyBAQCBpbmRl
eCAwMDAwMDAwLi5kODIzZmM3CiArCiArI2VuZGlmICAvLyBDT01QSUxFUl9UUkFOU0xBVE9SX1RS
QU5TTEFUT1JNRVRBTERJUkVDVF9FTlZJUk9OTUVOVFZBUklBQkxFX0hfCiBkaWZmIC0tZ2l0IGEv
c3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0L0lkR2VuLmNwcCBi
L3NyYy9jb21waWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC9JZEdlbi5jcHAK
LWluZGV4IDgxZmYyNzIuLjlkMmI0M2IgMTAwNjQ0CitpbmRleCA4MWZmMjcyMmYuLjlkMmI0M2Jj
MCAxMDA2NDQKIC0tLSBhL3NyYy9jb21waWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERp
cmVjdC9JZEdlbi5jcHAKICsrKyBiL3NyYy9jb21waWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JN
ZXRhbERpcmVjdC9JZEdlbi5jcHAKIEBAIC0yNSw3ICsyNSw3IEBAIE5hbWUgSWRHZW46OmNyZWF0
ZU5ld05hbWUoc2l6ZV90IGNvdW50LApAQCAtMTU5LDcgKzE5NTExLDcgQEAgaW5kZXggODFmZjI3
Mi4uOWQyYjQzYiAxMDA2NDQKICAgICAgbU5ld05hbWVCdWZmZXIuY2xlYXIoKTsKICAgICAgbU5l
d05hbWVCdWZmZXIgKz0gJ18nOwogZGlmZiAtLWdpdCBhL3NyYy9jb21waWxlci90cmFuc2xhdG9y
L1RyYW5zbGF0b3JNZXRhbERpcmVjdC9Nb2RpZnlTdHJ1Y3QuY3BwIGIvc3JjL2NvbXBpbGVyL3Ry
YW5zbGF0b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0L01vZGlmeVN0cnVjdC5jcHAKLWluZGV4IGJj
YzVkNjUuLjYwNzU4ZmIgMTAwNjQ0CitpbmRleCBiY2M1ZDY1ODkuLjYwNzU4ZmJlOCAxMDA2NDQK
IC0tLSBhL3NyYy9jb21waWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC9Nb2Rp
ZnlTdHJ1Y3QuY3BwCiArKysgYi9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0
YWxEaXJlY3QvTW9kaWZ5U3RydWN0LmNwcAogQEAgLTYwMSw3ICs2MDEsNyBAQCBjbGFzcyBDb252
ZXJ0U3RydWN0U3RhdGUgOiBhbmdsZTo6Tm9uQ29weWFibGUKQEAgLTE3Miw3ICsxOTUyNCw3IEBA
IGluZGV4IGJjYzVkNjUuLjYwNzU4ZmIgMTAwNjQ0CiAgICAgIH0KICAKIGRpZmYgLS1naXQgYS9z
cmMvY29tcGlsZXIvdHJhbnNsYXRvci9nbHNsYW5nX3RhYl9hdXRvZ2VuLmNwcCBiL3NyYy9jb21w
aWxlci90cmFuc2xhdG9yL2dsc2xhbmdfdGFiX2F1dG9nZW4uY3BwCi1pbmRleCA4MjgzN2JmLi4y
YzU4MGI1IDEwMDY0NAoraW5kZXggODI4MzdiZmFmLi4yYzU4MGI1YzAgMTAwNjQ0CiAtLS0gYS9z
cmMvY29tcGlsZXIvdHJhbnNsYXRvci9nbHNsYW5nX3RhYl9hdXRvZ2VuLmNwcAogKysrIGIvc3Jj
L2NvbXBpbGVyL3RyYW5zbGF0b3IvZ2xzbGFuZ190YWJfYXV0b2dlbi5jcHAKIEBAIC0xLDUgKzEs
OCBAQApAQCAtMTg1LDcgKzE5NTM3LDcgQEAgaW5kZXggODI4MzdiZi4uMmM1ODBiNSAxMDA2NDQK
ICAKICAgICBDb3B5cmlnaHQgKEMpIDE5ODQsIDE5ODktMTk5MCwgMjAwMC0yMDE1LCAyMDE4LTIw
MTkgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLAogZGlmZiAtLWdpdCBhL3NyYy9jb21waWxlci90
cmFuc2xhdG9yL2dsc2xhbmdfdGFiX2F1dG9nZW4uaCBiL3NyYy9jb21waWxlci90cmFuc2xhdG9y
L2dsc2xhbmdfdGFiX2F1dG9nZW4uaAotaW5kZXggZDJlYWIwYi4uMmVjMmQyYyAxMDA2NDQKK2lu
ZGV4IGQyZWFiMGI3Yi4uMmVjMmQyYzQ0IDEwMDY0NAogLS0tIGEvc3JjL2NvbXBpbGVyL3RyYW5z
bGF0b3IvZ2xzbGFuZ190YWJfYXV0b2dlbi5oCiArKysgYi9zcmMvY29tcGlsZXIvdHJhbnNsYXRv
ci9nbHNsYW5nX3RhYl9hdXRvZ2VuLmgKIEBAIC0xLDUgKzEsOCBAQApAQCAtMTk4LDcgKzE5NTUw
LDcgQEAgaW5kZXggZDJlYWIwYi4uMmVjMmQyYyAxMDA2NDQKICAKICAgICBDb3B5cmlnaHQgKEMp
IDE5ODQsIDE5ODktMTk5MCwgMjAwMC0yMDE1LCAyMDE4LTIwMTkgRnJlZSBTb2Z0d2FyZSBGb3Vu
ZGF0aW9uLAogZGlmZiAtLWdpdCBhL3NyYy9jb21waWxlci90cmFuc2xhdG9yL2dsc2xhbmdfd3Jh
cHBlci5jcHAgYi9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci9nbHNsYW5nX3dyYXBwZXIuY3BwCi1p
bmRleCAxODdmMzUwLi4zZGU3NTk3IDEwMDY0NAoraW5kZXggMTg3ZjM1MDAxLi4zZGU3NTk3ZDEg
MTAwNjQ0CiAtLS0gYS9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci9nbHNsYW5nX3dyYXBwZXIuY3Bw
CiArKysgYi9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci9nbHNsYW5nX3dyYXBwZXIuY3BwCiBAQCAt
MTAsNiArMTAsNyBAQApAQCAtMjEwLDcgKzE5NTYyLDcgQEAgaW5kZXggMTg3ZjM1MC4uM2RlNzU5
NyAxMDA2NDQKICAKICAvLyBnbHNsYW5nIGhhcyBpc3N1ZXMgd2l0aCBzb21lIHNwZWNpZmljIHdh
cm5pbmdzLgogZGlmZiAtLWdpdCBhL3NyYy9jb21waWxlci90cmFuc2xhdG9yL3RyZWVfb3BzL2Fw
cGxlL1VuZm9sZFNob3J0Q2lyY3VpdEFTVC5jcHAgYi9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci90
cmVlX29wcy9hcHBsZS9VbmZvbGRTaG9ydENpcmN1aXRBU1QuY3BwCi1pbmRleCA1NWUyZjhiLi40
MjM3NTU4IDEwMDY0NAoraW5kZXggNTVlMmY4Yjk3Li40MjM3NTU4NTIgMTAwNjQ0CiAtLS0gYS9z
cmMvY29tcGlsZXIvdHJhbnNsYXRvci90cmVlX29wcy9hcHBsZS9VbmZvbGRTaG9ydENpcmN1aXRB
U1QuY3BwCiArKysgYi9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci90cmVlX29wcy9hcHBsZS9VbmZv
bGRTaG9ydENpcmN1aXRBU1QuY3BwCiBAQCAtMTAsNiArMTAsNyBAQApAQCAtMjI5LDcgKzE5NTgx
LDcgQEAgaW5kZXggNTVlMmY4Yi4uNDIzNzU1OCAxMDA2NDQKICsjZW5kaWYKICB9ICAvLyBuYW1l
c3BhY2Ugc2gKIGRpZmYgLS1naXQgYS9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci90cmVlX29wcy9h
cHBsZS9VbmZvbGRTaG9ydENpcmN1aXRBU1QuaCBiL3NyYy9jb21waWxlci90cmFuc2xhdG9yL3Ry
ZWVfb3BzL2FwcGxlL1VuZm9sZFNob3J0Q2lyY3VpdEFTVC5oCi1pbmRleCBhZDNjYzA4Li43NTA2
OWM1IDEwMDY0NAoraW5kZXggYWQzY2MwODBkLi43NTA2OWM1NzIgMTAwNjQ0CiAtLS0gYS9zcmMv
Y29tcGlsZXIvdHJhbnNsYXRvci90cmVlX29wcy9hcHBsZS9VbmZvbGRTaG9ydENpcmN1aXRBU1Qu
aAogKysrIGIvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvdHJlZV9vcHMvYXBwbGUvVW5mb2xkU2hv
cnRDaXJjdWl0QVNULmgKIEBAIC0xMSw3ICsxMSw3IEBACkBAIC0yNDIsMTAgKzE5NTk0LDEwIEBA
IGluZGV4IGFkM2NjMDguLjc1MDY5YzUgMTAwNjQ0CiAgewogIAogZGlmZiAtLWdpdCBhL3NyYy9s
aWJBTkdMRS9Db250ZXh0LmNwcCBiL3NyYy9saWJBTkdMRS9Db250ZXh0LmNwcAotaW5kZXggNjg1
YjIzNS4uOTNiNjY3NiAxMDA3NTUKK2luZGV4IDQyNmFjZDlhNy4uNmU2YzBkNDgwIDEwMDc1NQog
LS0tIGEvc3JjL2xpYkFOR0xFL0NvbnRleHQuY3BwCiArKysgYi9zcmMvbGliQU5HTEUvQ29udGV4
dC5jcHAKLUBAIC05MjA3LDcgKzkyMDcsNyBAQCBlZ2w6OkVycm9yIENvbnRleHQ6OnNldERlZmF1
bHRGcmFtZWJ1ZmZlcihlZ2w6OlN1cmZhY2UgKmRyYXdTdXJmYWNlLCBlZ2w6OlN1cmZhYworQEAg
LTkyNjAsNyArOTI2MCw3IEBAIGVnbDo6RXJyb3IgQ29udGV4dDo6c2V0RGVmYXVsdEZyYW1lYnVm
ZmVyKGVnbDo6U3VyZmFjZSAqZHJhd1N1cmZhY2UsIGVnbDo6U3VyZmFjCiAgICAgIEFTU0VSVCht
Q3VycmVudERyYXdTdXJmYWNlID09IG51bGxwdHIpOwogICAgICBBU1NFUlQobUN1cnJlbnRSZWFk
U3VyZmFjZSA9PSBudWxscHRyKTsKICAKQEAgLTI1NCw3ICsxOTYwNiw3IEBAIGluZGV4IDY4NWIy
MzUuLjkzYjY2NzYgMTAwNzU1CiAgCiAgICAgIG1DdXJyZW50RHJhd1N1cmZhY2UgPSBkcmF3U3Vy
ZmFjZTsKICAgICAgbUN1cnJlbnRSZWFkU3VyZmFjZSA9IHJlYWRTdXJmYWNlOwotQEAgLTkyMTks
NyArOTIxOSw3IEBAIGVnbDo6RXJyb3IgQ29udGV4dDo6c2V0RGVmYXVsdEZyYW1lYnVmZmVyKGVn
bDo6U3VyZmFjZSAqZHJhd1N1cmZhY2UsIGVnbDo6U3VyZmFjCitAQCAtOTI3Miw3ICs5MjcyLDcg
QEAgZWdsOjpFcnJvciBDb250ZXh0OjpzZXREZWZhdWx0RnJhbWVidWZmZXIoZWdsOjpTdXJmYWNl
ICpkcmF3U3VyZmFjZSwgZWdsOjpTdXJmYWMKICAgICAgfQogICAgICBlbHNlCiAgICAgIHsKQEAg
LTI2Myw3ICsxOTYxNSw3IEBAIGluZGV4IDY4NWIyMzUuLjkzYjY2NzYgMTAwNzU1CiAgICAgIH0K
ICAgICAgQVNTRVJUKG5ld0RlZmF1bHRGcmFtZWJ1ZmZlcik7CiAgCi1AQCAtOTIzMCwxNCArOTIz
MCwxNCBAQCBlZ2w6OkVycm9yIENvbnRleHQ6OnNldERlZmF1bHRGcmFtZWJ1ZmZlcihlZ2w6OlN1
cmZhY2UgKmRyYXdTdXJmYWNlLCBlZ2w6OlN1cmZhYworQEAgLTkyODMsMTQgKzkyODMsMTQgQEAg
ZWdsOjpFcnJvciBDb250ZXh0OjpzZXREZWZhdWx0RnJhbWVidWZmZXIoZWdsOjpTdXJmYWNlICpk
cmF3U3VyZmFjZSwgZWdsOjpTdXJmYWMKICAKICAgICAgLy8gVXBkYXRlIGRlZmF1bHQgZnJhbWVi
dWZmZXIsIHRoZSBiaW5kaW5nIG9mIHRoZSBwcmV2aW91cyBkZWZhdWx0CiAgICAgIC8vIGZyYW1l
YnVmZmVyIChvciBsYWNrIG9mKSB3aWxsIGhhdmUgYSBudWxscHRyLgpAQCAtMjgyLDcgKzE5NjM0
LDcgQEAgaW5kZXggNjg1YjIzNS4uOTNiNjY3NiAxMDA3NTUKICAKICAgICAgcmV0dXJuIGVnbDo6
Tm9FcnJvcigpOwogZGlmZiAtLWdpdCBhL3NyYy9saWJBTkdMRS9TdGF0ZS5jcHAgYi9zcmMvbGli
QU5HTEUvU3RhdGUuY3BwCi1pbmRleCAyZjdjM2RjLi40YTg3ZjBkIDEwMDY0NAoraW5kZXggYjk3
YmJiNGYxLi4zZmY0NzMwZWQgMTAwNjQ0CiAtLS0gYS9zcmMvbGliQU5HTEUvU3RhdGUuY3BwCiAr
KysgYi9zcmMvbGliQU5HTEUvU3RhdGUuY3BwCiBAQCAtNiw2ICs2LDkgQEAKQEAgLTI5NiwxMSAr
MTk2NDgsMTEgQEAgaW5kZXggMmY3YzNkYy4uNGE4N2YwZCAxMDA2NDQKICAKICAjaW5jbHVkZSA8
c3RyaW5nLmg+CiBkaWZmIC0tZ2l0IGEvc3JjL2xpYkFOR0xFL1N1cmZhY2UuY3BwIGIvc3JjL2xp
YkFOR0xFL1N1cmZhY2UuY3BwCi1pbmRleCAxY2Q4YTAwLi44YjIxODZlIDEwMDY0NAoraW5kZXgg
YTgyMGYxODkwLi43NDUxN2YyNGQgMTAwNjQ0CiAtLS0gYS9zcmMvbGliQU5HTEUvU3VyZmFjZS5j
cHAKICsrKyBiL3NyYy9saWJBTkdMRS9TdXJmYWNlLmNwcAotQEAgLTYyNCwxMCArNjI0LDEwIEBA
IEVycm9yIFN1cmZhY2U6OmdldEJ1ZmZlckFnZShjb25zdCBnbDo6Q29udGV4dCAqY29udGV4dCwg
RUdMaW50ICphZ2UpIGNvbnN0Ci0gICAgIHJldHVybiBtSW1wbGVtZW50YXRpb24tPmdldEJ1ZmZl
ckFnZShjb250ZXh0LCBhZ2UpOworQEAgLTY0MCwxMCArNjQwLDEwIEBAIEVycm9yIFN1cmZhY2U6
OmdldEJ1ZmZlckFnZShjb25zdCBnbDo6Q29udGV4dCAqY29udGV4dCwgRUdMaW50ICphZ2UpCisg
ICAgIHJldHVybiBlcnI7CiAgfQogIAogLWdsOjpGcmFtZWJ1ZmZlciAqU3VyZmFjZTo6Y3JlYXRl
RGVmYXVsdEZyYW1lYnVmZmVyKGNvbnN0IGdsOjpDb250ZXh0ICpjb250ZXh0LApAQCAtMzEzLDcg
KzE5NjY1LDcgQEAgaW5kZXggMWNkOGEwMC4uOGIyMTg2ZSAxMDA2NDQKICAKICBnbDo6SW5pdFN0
YXRlIFN1cmZhY2U6OmluaXRTdGF0ZShjb25zdCBnbDo6SW1hZ2VJbmRleCAmIC8qaW1hZ2VJbmRl
eCovKSBjb25zdAogZGlmZiAtLWdpdCBhL3NyYy9saWJBTkdMRS9TdXJmYWNlLmggYi9zcmMvbGli
QU5HTEUvU3VyZmFjZS5oCi1pbmRleCA5OGEzYjg2Li4wODU2YTYyIDEwMDY0NAoraW5kZXggMTdk
ZGVhYTkxLi5mZjE2YzRhYjkgMTAwNjQ0CiAtLS0gYS9zcmMvbGliQU5HTEUvU3VyZmFjZS5oCiAr
KysgYi9zcmMvbGliQU5HTEUvU3VyZmFjZS5oCiBAQCAtMTA1LDcgKzEwNSw3IEBAIGNsYXNzIFN1
cmZhY2UgOiBwdWJsaWMgTGFiZWxlZE9iamVjdCwgcHVibGljIGdsOjpGcmFtZWJ1ZmZlckF0dGFj
aG1lbnRPYmplY3QKQEAgLTMyNSw3ICsxOTY3Nyw3IEBAIGluZGV4IDk4YTNiODYuLjA4NTZhNjIg
MTAwNjQ0CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBlZ2w6OlN1cmZhY2UgKnJlYWRTdXJmYWNlKTsKICAKICAgICAgY29uc3Qg
Q29uZmlnICpnZXRDb25maWcoKSBjb25zdDsKLUBAIC0yMTYsOCArMjE2LDYgQEAgY2xhc3MgU3Vy
ZmFjZSA6IHB1YmxpYyBMYWJlbGVkT2JqZWN0LCBwdWJsaWMgZ2w6OkZyYW1lYnVmZmVyQXR0YWNo
bWVudE9iamVjdAorQEAgLTIyMCw4ICsyMjAsNiBAQCBjbGFzcyBTdXJmYWNlIDogcHVibGljIExh
YmVsZWRPYmplY3QsIHB1YmxpYyBnbDo6RnJhbWVidWZmZXJBdHRhY2htZW50T2JqZWN0CiAgICAg
IH5TdXJmYWNlKCkgb3ZlcnJpZGU7CiAgICAgIHJ4OjpGcmFtZWJ1ZmZlckF0dGFjaG1lbnRPYmpl
Y3RJbXBsICpnZXRBdHRhY2htZW50SW1wbCgpIGNvbnN0IG92ZXJyaWRlOwogIApAQCAtMzM1LDcg
KzE5Njg3LDcgQEAgaW5kZXggOThhM2I4Ni4uMDg1NmE2MiAxMDA2NDQKICAgICAgZnJpZW5kIGNs
YXNzIGdsOjpUZXh0dXJlOwogICAgICBFcnJvciByZWxlYXNlVGV4SW1hZ2VGcm9tVGV4dHVyZShj
b25zdCBnbDo6Q29udGV4dCAqY29udGV4dCk7CiBkaWZmIC0tZ2l0IGEvc3JjL2xpYkFOR0xFL3Jl
bmRlcmVyL2RyaXZlcl91dGlscy5jcHAgYi9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZHJpdmVyX3V0
aWxzLmNwcAotaW5kZXggYmZkZjBmZi4uNmU1MDk3NiAxMDA2NDQKK2luZGV4IGJmZGYwZmY3Ni4u
NmU1MDk3NjUzIDEwMDY0NAogLS0tIGEvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2RyaXZlcl91dGls
cy5jcHAKICsrKyBiL3NyYy9saWJBTkdMRS9yZW5kZXJlci9kcml2ZXJfdXRpbHMuY3BwCiBAQCAt
MTY0LDYgKzE2NCwxMCBAQCBjb25zdCBjaGFyICpHZXRWZW5kb3JTdHJpbmcodWludDMyX3QgdmVu
ZG9ySWQpCkBAIC0zNTAsNyArMTk3MDIsNyBAQCBpbmRleCBiZmRmMGZmLi42ZTUwOTc2IDEwMDY0
NAogICAgICAgICAgICAgIHJldHVybiAiVGVzdCI7CiAgICAgICAgICBjYXNlIDA6CiBkaWZmIC0t
Z2l0IGEvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9JT1N1cmZhY2VTdXJmYWNlQ0dMLmNw
cCBiL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvSU9TdXJmYWNlU3VyZmFjZUNHTC5jcHAK
LWluZGV4IGEyYjQ0ZDIuLjIwZWM4NWEgMTAwNjQ0CitpbmRleCBhMmI0NGQyYmYuLjIwZWM4NWE1
MCAxMDA2NDQKIC0tLSBhL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvSU9TdXJmYWNlU3Vy
ZmFjZUNHTC5jcHAKICsrKyBiL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvSU9TdXJmYWNl
U3VyZmFjZUNHTC5jcHAKIEBAIC0yNTAsMTIgKzI1MCwxMCBAQCBib29sIElPU3VyZmFjZVN1cmZh
Y2VDR0w6OnZhbGlkYXRlQXR0cmlidXRlcyhFR0xDbGllbnRCdWZmZXIgYnVmZmVyLApAQCAtMzcx
LDcgKzE5NzIzLDcgQEAgaW5kZXggYTJiNDRkMi4uMjBlYzg1YSAxMDA2NDQKICAgICAgcmV0dXJu
IHRydWU7CiAgfQogZGlmZiAtLWdpdCBhL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbHNsYW5nX3dy
YXBwZXJfdXRpbHMuaCBiL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbHNsYW5nX3dyYXBwZXJfdXRp
bHMuaAotaW5kZXggZDI3NzE1ZC4uNzVkMjUyZiAxMDA2NDQKK2luZGV4IGQyNzcxNWQ5NC4uNzVk
MjUyZjdhIDEwMDY0NAogLS0tIGEvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsc2xhbmdfd3JhcHBl
cl91dGlscy5oCiArKysgYi9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2xzbGFuZ193cmFwcGVyX3V0
aWxzLmgKIEBAIC0xMCw3ICsxMCw2IEBACkBAIC00MDAsMTAgKzE5NzUyLDEwIEBAIGluZGV4IGQy
NzcxNWQuLjc1ZDI1MmYgMTAwNjQ0CiAgfSAgLy8gbmFtZXNwYWNlIHJ4CiAgCiBkaWZmIC0tZ2l0
IGEvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL0J1ZmZlck10bC5tbSBiL3NyYy9saWJBTkdM
RS9yZW5kZXJlci9tZXRhbC9CdWZmZXJNdGwubW0KLWluZGV4IDI3OTkyM2YuLjkwMGFlYTggMTAw
NjQ0CitpbmRleCAyNzk5MjNmZjIuLjkwMGFlYThhZiAxMDA2NDQKIC0tLSBhL3NyYy9saWJBTkdM
RS9yZW5kZXJlci9tZXRhbC9CdWZmZXJNdGwubW0KICsrKyBiL3NyYy9saWJBTkdMRS9yZW5kZXJl
ci9tZXRhbC9CdWZmZXJNdGwubW0KLUBAIC0zNjUsNyArMzY1LDcgQEAKK0BAIC0zNjUsNyArMzY1
LDcgQEAgQ29udmVyc2lvbkJ1ZmZlck10bCAqQnVmZmVyTXRsOjpnZXRVbmlmb3JtQ29udmVyc2lv
bkJ1ZmZlcihDb250ZXh0TXRsICpjb250ZXh0LAogICAgICB7CiAgICAgICAgICBpZiAoYnVmZmVy
Lm9mZnNldCA9PSBvZmZzZXQpCiAgICAgICAgICB7CkBAIC00MTIsNyArMTk3NjQsNyBAQCBpbmRl
eCAyNzk5MjNmLi45MDBhZWE4IDEwMDY0NAogICAgICAgICAgfQogICAgICB9CiAgCi1AQCAtNTIw
LDcgKzUyMCw3IEBACitAQCAtNTIwLDcgKzUyMCw3IEBAIGFuZ2xlOjpSZXN1bHQgQnVmZmVyTXRs
OjpzZXREYXRhSW1wbChjb25zdCBnbDo6Q29udGV4dCAqY29udGV4dCwKICAgICAgICAgIGRlZmF1
bHQ6CiAgICAgICAgICAgICAgLy8gZHluYW1pYyBidWZmZXIsIGFsbG93IHVwIHRvIDEwIHVwZGF0
ZSBwZXIgZnJhbWUvZW5jb2Rpbmcgd2l0aG91dAogICAgICAgICAgICAgIC8vIHdhaXRpbmcgZm9y
IEdQVS4KQEAgLTQyMiwxMCArMTk3NzQsMTAgQEAgaW5kZXggMjc5OTIzZi4uOTAwYWVhOCAxMDA2
NDQKICAgICAgICAgICAgICAgICAgbWF4QnVmZmVycyA9IDEwOwogICAgICAgICAgICAgICAgICBt
QnVmZmVyUG9vbC5zZXRBbHdheXNVc2VTaGFyZWRNZW0oKTsKIGRpZmYgLS1naXQgYS9zcmMvbGli
QU5HTEUvcmVuZGVyZXIvbWV0YWwvRGlzcGxheU10bC5tbSBiL3NyYy9saWJBTkdMRS9yZW5kZXJl
ci9tZXRhbC9EaXNwbGF5TXRsLm1tCi1pbmRleCBkZjlhNmU2Li42NTUyNDMyIDEwMDY0NAoraW5k
ZXggZGE1YjFjOTlmLi42NDk4YWY4OTEgMTAwNjQ0CiAtLS0gYS9zcmMvbGliQU5HTEUvcmVuZGVy
ZXIvbWV0YWwvRGlzcGxheU10bC5tbQogKysrIGIvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFs
L0Rpc3BsYXlNdGwubW0KLUBAIC0yNTQsOSArMjU0LDEwIEBAIGJvb2wgSXNNZXRhbERpc3BsYXlB
dmFpbGFibGUoKQorQEAgLTI1NCw5ICsyNTQsMTAgQEAgbXRsOjpBdXRvT2JqQ1B0cjxpZDxNVExE
ZXZpY2U+PiBEaXNwbGF5TXRsOjpnZXRNZXRhbERldmljZU1hdGNoaW5nQXR0cmlidXRlKAogICAg
ICAgICAgfQogICAgICB9CiAgCkBAIC00MzksNyArMTk3OTEsNyBAQCBpbmRleCBkZjlhNmU2Li42
NTUyNDMyIDEwMDY0NAogICAgICBmb3IgKGlkPE1UTERldmljZT4gZGV2aWNlIGluIGRldmljZUxp
c3QuZ2V0KCkpCiAgICAgIHsKICAgICAgICAgIGlmIChkZXZpY2UucmVtb3ZhYmxlKQotQEAgLTI3
OCw3ICsyNzksNyBAQCBib29sIElzTWV0YWxEaXNwbGF5QXZhaWxhYmxlKCkKK0BAIC0yNzgsNyAr
Mjc5LDcgQEAgbXRsOjpBdXRvT2JqQ1B0cjxpZDxNVExEZXZpY2U+PiBEaXNwbGF5TXRsOjpnZXRN
ZXRhbERldmljZU1hdGNoaW5nQXR0cmlidXRlKAogICAgICBpZiAoYXR0cmlicy5nZXQoRUdMX1BP
V0VSX1BSRUZFUkVOQ0VfQU5HTEUsIDApID09IEVHTF9ISUdIX1BPV0VSX0FOR0xFKQogICAgICB7
CiAgICAgICAgICAvLyBTZWFyY2ggZm9yIGEgZGlzY3JldGUgR1BVIGZpcnN0LgpAQCAtNDQ4LDcg
KzE5ODAwLDcgQEAgaW5kZXggZGY5YTZlNi4uNjU1MjQzMiAxMDA2NDQKICAgICAgICAgIHsKICAg
ICAgICAgICAgICBpZiAoIVtkZXZpY2UgaXNIZWFkbGVzc10pCiAgICAgICAgICAgICAgICAgIHJl
dHVybiBkZXZpY2U7Ci1AQCAtMjg3LDcgKzI4OCw3IEBAIGJvb2wgSXNNZXRhbERpc3BsYXlBdmFp
bGFibGUoKQorQEAgLTI4Nyw3ICsyODgsNyBAQCBtdGw6OkF1dG9PYmpDUHRyPGlkPE1UTERldmlj
ZT4+IERpc3BsYXlNdGw6OmdldE1ldGFsRGV2aWNlTWF0Y2hpbmdBdHRyaWJ1dGUoCiAgICAgIGVs
c2UgaWYgKGF0dHJpYnMuZ2V0KEVHTF9QT1dFUl9QUkVGRVJFTkNFX0FOR0xFLCAwKSA9PSBFR0xf
TE9XX1BPV0VSX0FOR0xFKQogICAgICB7CiAgICAgICAgICAvLyBJZiB3ZSd2ZSBzZWxlY3RlZCBh
IGxvdyBwb3dlciBkZXZpY2UsIGxvb2sgdGhyb3VnaCBpbnRlZ3JhdGVkIGRldmljZXMuCkBAIC00
NTcsNyArMTk4MDksNyBAQCBpbmRleCBkZjlhNmU2Li42NTUyNDMyIDEwMDY0NAogICAgICAgICAg
ewogICAgICAgICAgICAgIGlmICghW2RldmljZSBpc0hlYWRsZXNzXSkKICAgICAgICAgICAgICAg
ICAgcmV0dXJuIGRldmljZTsKLUBAIC0zMTAsNiArMzExLDE3IEBAIGJvb2wgSXNNZXRhbERpc3Bs
YXlBdmFpbGFibGUoKQorQEAgLTMxMCw2ICszMTEsMTcgQEAgbXRsOjpBdXRvT2JqQ1B0cjxpZDxN
VExEZXZpY2U+PiBEaXNwbGF5TXRsOjpnZXRNZXRhbERldmljZU1hdGNoaW5nQXR0cmlidXRlKAog
ICAgICAgICAgfQogICAgICB9CiAgCkBAIC00NzUsNyArMTk4MjcsNyBAQCBpbmRleCBkZjlhNmU2
Li42NTUyNDMyIDEwMDY0NAogICNlbmRpZgogICAgICAvLyBJZiB3ZSBjYW4ndCBmaW5kIGFueXRo
aW5nLCBvciBhcmUgb24gYSBwbGF0Zm9ybSB0aGF0IGRvZXNuJ3Qgc3VwcG9ydCBwb3dlciBvcHRp
b25zLCBjcmVhdGUgYQogICAgICAvLyBkZWZhdWx0IGRldmljZS4KLUBAIC0xMjAzLDggKzEyMTUs
NyBAQCBib29sIElzTWV0YWxEaXNwbGF5QXZhaWxhYmxlKCkKK0BAIC0xMjA5LDggKzEyMjEsNyBA
QCBib29sIERpc3BsYXlNdGw6OnN1cHBvcnRzRWl0aGVyR1BVRmFtaWx5KHVpbnQ4X3QgaU9TRmFt
aWx5LCB1aW50OF90IG1hY0ZhbWlseSkgYwogIGJvb2wgRGlzcGxheU10bDo6c3VwcG9ydHMzMkJp
dEZsb2F0RmlsdGVyaW5nKCkgY29uc3QKICB7CiAgI2lmIChkZWZpbmVkKF9fTUFDXzExXzApICYm
IF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gX19NQUNfMTFfMCkgfHwgICAgICAg
IFwKQEAgLTQ4NiwyMCArMTk4MzgsMjAgQEAgaW5kZXggZGY5YTZlNi4uNjU1MjQzMiAxMDA2NDQK
ICAgICAgewogICAgICAgICAgcmV0dXJuIFttTWV0YWxEZXZpY2Ugc3VwcG9ydHMzMkJpdEZsb2F0
RmlsdGVyaW5nXTsKIGRpZmYgLS1naXQgYS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvRnJh
bWVCdWZmZXJNdGwubW0gYi9zcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvRnJhbWVCdWZmZXJN
dGwubW0KLWluZGV4IDliNDc0NjAuLmZjY2UyZTIgMTAwNjQ0CitpbmRleCAyMmU0YzcyZjEuLjQw
YmEwNWM3NSAxMDA2NDQKIC0tLSBhL3NyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9GcmFtZUJ1
ZmZlck10bC5tbQogKysrIGIvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL0ZyYW1lQnVmZmVy
TXRsLm1tCi1AQCAtMTY2MSw1ICsxNjYxLDQgQEAgdm9pZCBSb3VuZFZhbHVlQW5kQWRqdXN0Q29y
cmVzcG9uZGluZ1ZhbHVlKGZsb2F0IGEsCitAQCAtMTY1MSw1ICsxNjUxLDQgQEAgYW5nbGU6OlJl
c3VsdCBGcmFtZWJ1ZmZlck10bDo6cmVhZFBpeGVsc1RvQnVmZmVyKGNvbnN0IGdsOjpDb250ZXh0
ICpjb250ZXh0LAogIAogICAgICByZXR1cm4gYW5nbGU6OlJlc3VsdDo6Q29udGludWU7CiAgfQog
LQogIH0KIGRpZmYgLS1naXQgYS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvSU9TdXJmYWNl
U3VyZmFjZU10bC5tbSBiL3NyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9JT1N1cmZhY2VTdXJm
YWNlTXRsLm1tCi1pbmRleCBhYjcyODNhLi4xMDAwODY3IDEwMDY0NAoraW5kZXggYWI3MjgzYWUx
Li4xMDAwODY3NTkgMTAwNjQ0CiAtLS0gYS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvSU9T
dXJmYWNlU3VyZmFjZU10bC5tbQogKysrIGIvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL0lP
U3VyZmFjZVN1cmZhY2VNdGwubW0KLUBAIC0yMTksMTIgKzIxOSwxMCBAQCBpbnQgRmluZElPU3Vy
ZmFjZUZvcm1hdEluZGV4KEdMZW51bSBpbnRlcm5hbEZvcm1hdCwgR0xlbnVtIHR5cGUpCitAQCAt
MjE5LDEyICsyMTksMTAgQEAgYm9vbCBJT1N1cmZhY2VTdXJmYWNlTXRsOjpWYWxpZGF0ZUF0dHJp
YnV0ZXMoRUdMQ2xpZW50QnVmZmVyIGJ1ZmZlciwKICAgICAgICAgIHJldHVybiBmYWxzZTsKICAg
ICAgfQogIApAQCAtNTE3LDEwICsxOTg2OSwxMCBAQCBpbmRleCBhYjcyODNhLi4xMDAwODY3IDEw
MDY0NAogICAgICByZXR1cm4gdHJ1ZTsKICB9CiBkaWZmIC0tZ2l0IGEvc3JjL2xpYkFOR0xFL3Jl
bmRlcmVyL21ldGFsL1Byb2dyYW1NdGwubW0gYi9zcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwv
UHJvZ3JhbU10bC5tbQotaW5kZXggZjE0ZjE1Yy4uNGFlOWY4ZiAxMDA2NDQKK2luZGV4IGYxNGYx
NWNlOC4uNGFlOWY4ZjM5IDEwMDY0NAogLS0tIGEvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFs
L1Byb2dyYW1NdGwubW0KICsrKyBiL3NyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9Qcm9ncmFt
TXRsLm1tCi1AQCAtNTg5LDcgKzU4OSw3IEBAIHZvaWQgSW5pdEFyZ3VtZW50QnVmZmVyRW5jb2Rl
cihtdGw6OkNvbnRleHQgKmNvbnRleHQsCitAQCAtNTg5LDcgKzU4OSw3IEBAIGFuZ2xlOjpSZXN1
bHQgUHJvZ3JhbU10bDo6Z2V0U3BlY2lhbGl6ZWRTaGFkZXIoQ29udGV4dE10bCAqY29udGV4dCwK
ICAKICAgICAgbXRsOjpUcmFuc2xhdGVkU2hhZGVySW5mbyAqdHJhbnNsYXRlZE1zbEluZm8gPSAm
bU1zbFNoYWRlclRyYW5zbGF0ZUluZm9bc2hhZGVyVHlwZV07CiAgICAgIFByb2dyYW1TaGFkZXJP
YmpWYXJpYW50TXRsICpzaGFkZXJWYXJpYW50OwpAQCAtNTI5LDcgKzE5ODgxLDcgQEAgaW5kZXgg
ZjE0ZjE1Yy4uNGFlOWY4ZiAxMDA2NDQKICAKICAgICAgaWYgKHNoYWRlclR5cGUgPT0gZ2w6OlNo
YWRlclR5cGU6OlZlcnRleCkKICAgICAgewotQEAgLTYzOSw3ICs2MzksNyBAQCB2b2lkIEluaXRB
cmd1bWVudEJ1ZmZlckVuY29kZXIobXRsOjpDb250ZXh0ICpjb250ZXh0LAorQEAgLTYzOSw3ICs2
MzksNyBAQCBhbmdsZTo6UmVzdWx0IFByb2dyYW1NdGw6OmdldFNwZWNpYWxpemVkU2hhZGVyKENv
bnRleHRNdGwgKmNvbnRleHQsCiAgICAgICAgICAgICAgICAgICAgICBbTlNTdHJpbmcgc3RyaW5n
V2l0aFVURjhTdHJpbmc6c2g6Om10bDo6a1Jhc3Rlcml6ZXJEaXNjYXJkRW5hYmxlZENvbnN0TmFt
ZV07CiAgICAgICAgICAgICAgfQogIApAQCAtNTM4LDcgKzE5ODkwLDcgQEAgaW5kZXggZjE0ZjE1
Yy4uNGFlOWY4ZiAxMDA2NDQKICAgICAgICAgICAgICBbZnVuY0NvbnN0YW50cyBzZXRDb25zdGFu
dFZhbHVlOiZlbXVsYXRlRGlzY2FyZAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHR5cGU6TVRMRGF0YVR5cGVCb29sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICB3aXRoTmFtZTpkaXNjYXJkRW5hYmxlZFN0cl07Ci1AQCAtNjc1LDE0ICs2NzUsMTUg
QEAgdm9pZCBJbml0QXJndW1lbnRCdWZmZXJFbmNvZGVyKG10bDo6Q29udGV4dCAqY29udGV4dCwK
K0BAIC02NzUsMTQgKzY3NSwxNSBAQCBhbmdsZTo6UmVzdWx0IFByb2dyYW1NdGw6OmdldFNwZWNp
YWxpemVkU2hhZGVyKENvbnRleHRNdGwgKmNvbnRleHQsCiAgICAgICAgICAgICAgICAgICAgICBb
TlNTdHJpbmcgc3RyaW5nV2l0aFVURjhTdHJpbmc6c2g6Om10bDo6a0NvdmVyYWdlTWFza0VuYWJs
ZWRDb25zdE5hbWVdOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAKQEAgLTU1Nyw3ICsx
OTkwOSw3IEBAIGluZGV4IGYxNGYxNWMuLjRhZTlmOGYgMTAwNjQ0CiAgICAgICAgICAgICAgTVRM
UGl4ZWxGb3JtYXQgZGVwdGhQaXhlbEZvcm1hdCA9CiAgICAgICAgICAgICAgICAgIChNVExQaXhl
bEZvcm1hdClyZW5kZXJQaXBlbGluZURlc2Mub3V0cHV0RGVzY3JpcHRvci5kZXB0aEF0dGFjaG1l
bnRQaXhlbEZvcm1hdDsKICAgICAgICAgICAgICBCT09MIGZyYWdEZXB0aFdyaXRlRW5hYmxlZCA9
IGRlcHRoUGl4ZWxGb3JtYXQgIT0gTVRMUGl4ZWxGb3JtYXRJbnZhbGlkOwotQEAgLTcwNSwxMiAr
NzA2LDEyIEBAIHZvaWQgSW5pdEFyZ3VtZW50QnVmZmVyRW5jb2RlcihtdGw6OkNvbnRleHQgKmNv
bnRleHQsCitAQCAtNzA1LDEyICs3MDYsMTIgQEAgYW5nbGU6OlJlc3VsdCBQcm9ncmFtTXRsOjpn
ZXRTcGVjaWFsaXplZFNoYWRlcihDb250ZXh0TXRsICpjb250ZXh0LAogICAgICAgICAgc2V0Q29u
c3RhbnRWYWx1ZTomKGNvbnRleHQtPmdldERpc3BsYXkoKS0+Z2V0RmVhdHVyZXMoKS5hbGxvd1Nh
bXBsZXJDb21wYXJlTG9kLmVuYWJsZWQpCiAgICAgICAgICAgICAgICAgICAgICB0eXBlOk1UTERh
dGFUeXBlQm9vbAogICAgICAgICAgICAgICAgICB3aXRoTmFtZTpAIkFOR0xFVXNlU2FtcGxlQ29t
cGFyZUxvZCJdOwpAQCAtNTczLDQxICsxOTkyNSw0OSBAQCBpbmRleCBmMTRmMTVjLi40YWU5Zjhm
IDEwMDY0NAogIAogICAgICAvLyBTdG9yZSByZWZlcmVuY2UgdG8gdGhlIHRyYW5zbGF0ZWQgc291
cmNlIGZvciBlYXNpbHkgcXVlcnlpbmcgbWFwcGVkIGJpbmRpbmdzIGxhdGVyLgogZGlmZiAtLWdp
dCBhL3NyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9TdXJmYWNlTXRsLm1tIGIvc3JjL2xpYkFO
R0xFL3JlbmRlcmVyL21ldGFsL1N1cmZhY2VNdGwubW0KLWluZGV4IDY4NTVlNDUuLmRhYTBlNTkg
MTAwNjQ0CitpbmRleCA2ODU1ZTQ1MTYuLmRhYTBlNTljZiAxMDA2NDQKIC0tLSBhL3NyYy9saWJB
TkdMRS9yZW5kZXJlci9tZXRhbC9TdXJmYWNlTXRsLm1tCiArKysgYi9zcmMvbGliQU5HTEUvcmVu
ZGVyZXIvbWV0YWwvU3VyZmFjZU10bC5tbQotQEAgLTc3NSw1ICs3NzUsNCBAQAorQEAgLTc3NSw1
ICs3NzUsNCBAQCB2b2lkIFBCdWZmZXJTdXJmYWNlTXRsOjpzZXRGaXhlZEhlaWdodChFR0xpbnQg
aGVpZ2h0KQogIHsKICAgICAgbVNpemUuaGVpZ2h0ID0gaGVpZ2h0OwogIH0KIC0KICB9CiBkaWZm
IC0tZ2l0IGEvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL1ZlcnRleEFycmF5TXRsLmggYi9z
cmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvVmVydGV4QXJyYXlNdGwuaAotaW5kZXggODZlNmEy
OC4uZjU3YWU2NiAxMDA2NDQKK2luZGV4IDg2ZTZhMjgzNi4uN2ZiM2E5OGU1IDEwMDY0NAogLS0t
IGEvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL1ZlcnRleEFycmF5TXRsLmgKICsrKyBiL3Ny
Yy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9WZXJ0ZXhBcnJheU10bC5oCi1AQCAtMTUxLDcgKzE1
MSw3IEBAIGNsYXNzIFZlcnRleEFycmF5TXRsIDogcHVibGljIFZlcnRleEFycmF5SW1wbAotICAg
ICBtdGw6OkJ1ZmZlclBvb2wgbUR5bmFtaWNJbmRleERhdGE7Ci0gCitAQCAtMTUzLDYgKzE1Myw3
IEBAIGNsYXNzIFZlcnRleEFycmF5TXRsIDogcHVibGljIFZlcnRleEFycmF5SW1wbAogICAgICBz
dGQ6OnZlY3Rvcjx1aW50MzJfdD4gbUVtdWxhdGVkSW5zdGFuY2VBdHRyaWJzOwotLQotKyAgICBi
b29sIG1FbGVtZW50QXJyYXlEaXJ0eSA9IHRydWU7CisgCiAgICAgIGJvb2wgbVZlcnRleEFycmF5
RGlydHkgPSB0cnVlOworKyAgICBib29sIG1WZXJ0ZXhEYXRhRGlydHkgPSB0cnVlOwogIH07CiAg
fSAgLy8gbmFtZXNwYWNlIHJ4CisgCiBkaWZmIC0tZ2l0IGEvc3JjL2xpYkFOR0xFL3JlbmRlcmVy
L21ldGFsL1ZlcnRleEFycmF5TXRsLm1tIGIvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL1Zl
cnRleEFycmF5TXRsLm1tCi1pbmRleCBiYTBjNTA1Li42ODJiNzExIDEwMDY0NAoraW5kZXggYmEw
YzUwNTYxLi5lYTM0ZjUxMWQgMTAwNjQ0CiAtLS0gYS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0
YWwvVmVydGV4QXJyYXlNdGwubW0KICsrKyBiL3NyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9W
ZXJ0ZXhBcnJheU10bC5tbQotQEAgLTI3Myw2ICsyNzMsNyBAQCBpbmxpbmUgdm9pZCBTZXREZWZh
dWx0VmVydGV4QnVmZmVyTGF5b3V0KG10bDo6VmVydGV4QnVmZmVyTGF5b3V0RGVzYyAqbGF5b3V0
KQorQEAgLTI3Myw2ICsyNzMsNyBAQCBhbmdsZTo6UmVzdWx0IFZlcnRleEFycmF5TXRsOjpzeW5j
U3RhdGUoY29uc3QgZ2w6OkNvbnRleHQgKmNvbnRleHQsCiAgICAgICAgICAgICAgY2FzZSBnbDo6
VmVydGV4QXJyYXk6OkRJUlRZX0JJVF9FTEVNRU5UX0FSUkFZX0JVRkZFUjoKICAgICAgICAgICAg
ICBjYXNlIGdsOjpWZXJ0ZXhBcnJheTo6RElSVFlfQklUX0VMRU1FTlRfQVJSQVlfQlVGRkVSX0RB
VEE6CiAgICAgICAgICAgICAgewotKyAgICAgICAgICAgICAgICBtRWxlbWVudEFycmF5RGlydHkg
PSB0cnVlOworKyAgICAgICAgICAgICAgICBtVmVydGV4RGF0YURpcnR5ID0gdHJ1ZTsKICAgICAg
ICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogIAotQEAgLTQ3NSw3ICs0NzYsMjEg
QEAgaW5saW5lIHZvaWQgU2V0RGVmYXVsdFZlcnRleEJ1ZmZlckxheW91dChtdGw6OlZlcnRleEJ1
ZmZlckxheW91dERlc2MgKmxheW91dCkKK0BAIC0zMDAsNyArMzAxLDcgQEAgYW5nbGU6OlJlc3Vs
dCBWZXJ0ZXhBcnJheU10bDo6c3luY1N0YXRlKGNvbnN0IGdsOjpDb250ZXh0ICpjb250ZXh0LAor
ICAgICBjYXNlIGdsOjpWZXJ0ZXhBcnJheTo6RElSVFlfQklUX0JVRkZFUl9EQVRBXzAgKyBJTkRF
WDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICAgQU5H
TEVfVFJZKHN5bmNEaXJ0eUF0dHJpYihjb250ZXh0LCBhdHRyaWJzW0lOREVYXSwgYmluZGluZ3Nb
YXR0cmlic1tJTkRFWF0uYmluZGluZ0luZGV4XSwgXAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBJTkRFWCkpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgXAorLSAgICAgICAgbVZlcnRleEFycmF5RGlydHkgPSB0cnVlOyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgXAorKyAgICAgICAgbVZlcnRleERhdGFEaXJ0eSA9IHRydWU7ICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAg
ICAgICBicmVhazsKKyAKKyAgICAgICAgICAgICAgICAgQU5HTEVfVkVSVEVYX0lOREVYX0NBU0VT
KEFOR0xFX1ZFUlRFWF9ESVJUWV9CVUZGRVJfREFUQV9GVU5DKQorQEAgLTQ3NSw3ICs0NzYsMjEg
QEAgYW5nbGU6OlJlc3VsdCBWZXJ0ZXhBcnJheU10bDo6c2V0dXBEcmF3KGNvbnN0IGdsOjpDb250
ZXh0ICpnbENvbnRleHQsCiAgICAgICAgICAgICAgICAgIH0KICAKICAgICAgICAgICAgICAgICAg
ZGVzYy5sYXlvdXRzW2J1ZmZlcklkeF0uc3RyaWRlID0gbUN1cnJlbnRBcnJheUJ1ZmZlclN0cmlk
ZXNbdl07CkBAIC02MTUsOSArMTk5NzUsOSBAQCBpbmRleCBiYTBjNTA1Li42ODJiNzExIDEwMDY0
NAogKyAgICAgICAgfSAgLy8gZm9yICh2KQogKyAgICB9CiArCi0rICAgIGlmKGRpcnR5IHx8IG1F
bGVtZW50QXJyYXlEaXJ0eSkKKysgICAgaWYoZGlydHkgfHwgbVZlcnRleERhdGFEaXJ0eSkKICsg
ICAgewotKyAgICAgICAgbUVsZW1lbnRBcnJheURpcnR5ID0gZmFsc2U7CisrICAgICAgICBtVmVy
dGV4RGF0YURpcnR5ID0gZmFsc2U7CiArICAgICAgICBjb25zdCBnbDo6UHJvZ3JhbUV4ZWN1dGFi
bGUgKmV4ZWN1dGFibGUgPSBnbENvbnRleHQtPmdldFN0YXRlKCkuZ2V0UHJvZ3JhbUV4ZWN1dGFi
bGUoKTsKICsgICAgICAgIGNvbnN0IGdsOjpBdHRyaWJ1dGVzTWFzayAmcHJvZ3JhbUFjdGl2ZUF0
dHJpYnNNYXNrID0KICsgICAgICAgICAgICAgICAgZXhlY3V0YWJsZS0+Z2V0QWN0aXZlQXR0cmli
TG9jYXRpb25zTWFzaygpOwpAQCAtNjI5LDcgKzE5OTg5LDcgQEAgaW5kZXggYmEwYzUwNS4uNjgy
YjcxMSAxMDA2NDQKICAgICAgICAgICAgICBpZiAobUN1cnJlbnRBcnJheUJ1ZmZlcnNbdl0pCiAg
ICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICBjbWRFbmNvZGVyLT5zZXRWZXJ0ZXhCdWZm
ZXIobUN1cnJlbnRBcnJheUJ1ZmZlcnNbdl0tPmdldEN1cnJlbnRCdWZmZXIoKSwKLUBAIC00ODgs
MTAgKzUwMywxMSBAQCBpbmxpbmUgdm9pZCBTZXREZWZhdWx0VmVydGV4QnVmZmVyTGF5b3V0KG10
bDo6VmVydGV4QnVmZmVyTGF5b3V0RGVzYyAqbGF5b3V0KQorQEAgLTQ4OCwxMCArNTAzLDExIEBA
IGFuZ2xlOjpSZXN1bHQgVmVydGV4QXJyYXlNdGw6OnNldHVwRHJhdyhjb25zdCBnbDo6Q29udGV4
dCAqZ2xDb250ZXh0LAogICAgICAgICAgICAgICAgICBjbWRFbmNvZGVyLT5zZXRWZXJ0ZXhCeXRl
cyhtQ3VycmVudEFycmF5SW5saW5lRGF0YVBvaW50ZXJzW3ZdLAogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBtQ3VycmVudEFycmF5SW5saW5lRGF0YVNpemVzW3Zd
LCBidWZmZXJJZHgpOwogICAgICAgICAgICAgIH0KQEAgLTY0Miw4ICsyMDAwMiwyOSBAQCBpbmRl
eCBiYTBjNTA1Li42ODJiNzExIDEwMDY0NAogICAgICAqdmVydGV4RGVzY0NoYW5nZWQgPSBkaXJ0
eTsKICAKICAgICAgcmV0dXJuIGFuZ2xlOjpSZXN1bHQ6OkNvbnRpbnVlOworQEAgLTYzNiw2ICs2
NTIsNyBAQCBhbmdsZTo6UmVzdWx0IFZlcnRleEFycmF5TXRsOjpzeW5jRGlydHlBdHRyaWIoY29u
c3QgZ2w6OkNvbnRleHQgKmdsQ29udGV4dCwKKyAgICAgICAgIGlmIChidWZmZXJHTCkKKyAgICAg
ICAgIHsKKyAgICAgICAgICAgICBCdWZmZXJNdGwgKmJ1ZmZlck10bCA9IG10bDo6R2V0SW1wbChi
dWZmZXJHTCk7CisrICAgICAgICAgICAgbUNvbnRlbnRzT2JzZXJ2ZXJzLT5lbmFibGVGb3JCdWZm
ZXIoYnVmZmVyR0wsIHN0YXRpY19jYXN0PHVpbnQzMl90PihhdHRyaWJJbmRleCkpOworICAgICAg
ICAgICAgIGJvb2wgbmVlZENvbnZlcnNpb24gPQorICAgICAgICAgICAgICAgICBmb3JtYXQuYWN0
dWFsRm9ybWF0SWQgIT0gZm9ybWF0LmludGVuZGVkRm9ybWF0SWQgfHwKKyAgICAgICAgICAgICAg
ICAgKGJpbmRpbmcuZ2V0T2Zmc2V0KCkgJSBmb3JtYXQuYWN0dWFsQW5nbGVGb3JtYXQoKS5waXhl
bEJ5dGVzKSAhPSAwIHx8CitAQCAtNjQ1LDEyICs2NjIsMTAgQEAgYW5nbGU6OlJlc3VsdCBWZXJ0
ZXhBcnJheU10bDo6c3luY0RpcnR5QXR0cmliKGNvbnN0IGdsOjpDb250ZXh0ICpnbENvbnRleHQs
CisgCisgICAgICAgICAgICAgaWYgKG5lZWRDb252ZXJzaW9uKQorICAgICAgICAgICAgIHsKKy0g
ICAgICAgICAgICAgICAgbUNvbnRlbnRzT2JzZXJ2ZXJzLT5lbmFibGVGb3JCdWZmZXIoYnVmZmVy
R0wsIHN0YXRpY19jYXN0PHVpbnQzMl90PihhdHRyaWJJbmRleCkpOworICAgICAgICAgICAgICAg
ICBBTkdMRV9UUlkoY29udmVydFZlcnRleEJ1ZmZlcihnbENvbnRleHQsIGJ1ZmZlck10bCwgYmlu
ZGluZywgYXR0cmliSW5kZXgsIGZvcm1hdCkpOworICAgICAgICAgICAgIH0KKyAgICAgICAgICAg
ICBlbHNlCisgICAgICAgICAgICAgeworLSAgICAgICAgICAgICAgICBtQ29udGVudHNPYnNlcnZl
cnMtPmRpc2FibGVGb3JCdWZmZXIoYnVmZmVyR0wsIHN0YXRpY19jYXN0PHVpbnQzMl90PihhdHRy
aWJJbmRleCkpOworICAgICAgICAgICAgICAgICBtQ3VycmVudEFycmF5QnVmZmVyc1thdHRyaWJJ
bmRleF0gICAgICAgPSBidWZmZXJNdGw7CisgICAgICAgICAgICAgICAgIG1DdXJyZW50QXJyYXlC
dWZmZXJPZmZzZXRzW2F0dHJpYkluZGV4XSA9IGJpbmRpbmcuZ2V0T2Zmc2V0KCk7CisgICAgICAg
ICAgICAgICAgIG1DdXJyZW50QXJyYXlCdWZmZXJTdHJpZGVzW2F0dHJpYkluZGV4XSA9IGJpbmRp
bmcuZ2V0U3RyaWRlKCk7CiBkaWZmIC0tZ2l0IGEvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFs
L210bF9idWZmZXJfcG9vbC5oIGIvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF9idWZm
ZXJfcG9vbC5oCi1pbmRleCBjM2JlMTFmLi4yMDRlYmI5IDEwMDY0NAoraW5kZXggYzNiZTExZjc4
Li4yMDRlYmI5NDkgMTAwNjQ0CiAtLS0gYS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRs
X2J1ZmZlcl9wb29sLmgKICsrKyBiL3NyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9tdGxfYnVm
ZmVyX3Bvb2wuaAogQEAgLTEyNiw3ICsxMjYsNyBAQCBjbGFzcyBCdWZmZXJQb29sCkBAIC02NTUs
ODkgKzIwMDM2LDExIEBAIGluZGV4IGMzYmUxMWYuLjIwNGViYjkgMTAwNjQ0CiAgICAgIGJvb2wg
bUFsd2F5c0FsbG9jYXRlTmV3QnVmZmVyOwogIH07CiAgCi1kaWZmIC0tZ2l0IGEvc3JjL2xpYkFO
R0xFL3JlbmRlcmVyL21ldGFsL210bF9mb3JtYXRfbWFwLmpzb24gYi9zcmMvbGliQU5HTEUvcmVu
ZGVyZXIvbWV0YWwvbXRsX2Zvcm1hdF9tYXAuanNvbgotaW5kZXggYzQ1MjBjZC4uYTRlOGM2OSAx
MDA2NDQKLS0tLSBhL3NyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9tdGxfZm9ybWF0X21hcC5q
c29uCi0rKysgYi9zcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX2Zvcm1hdF9tYXAuanNv
bgotQEAgLTEyMSwxNCArMTIxLDYgQEAKLSAgICAgICAgICAgICAiQVNUQ18xMngxMl9TUkdCX0JM
T0NLIjogIk1UTFBpeGVsRm9ybWF0QVNUQ18xMngxMl9zUkdCIgotICAgICAgICAgfSwKLSAgICAg
ICAgICJtYXBfc2ltIjogewotLSAgICAgICAgICAgICJQVlJUQzFfUkdCXzRCUFBfVU5PUk1fQkxP
Q0siOiAiTVRMUGl4ZWxGb3JtYXRQVlJUQ19SR0JfNEJQUCIsCi0tICAgICAgICAgICAgIlBWUlRD
MV9SR0JfMkJQUF9VTk9STV9CTE9DSyI6ICJNVExQaXhlbEZvcm1hdFBWUlRDX1JHQl8yQlBQIiwK
LS0gICAgICAgICAgICAiUFZSVEMxX1JHQkFfNEJQUF9VTk9STV9CTE9DSyI6ICJNVExQaXhlbEZv
cm1hdFBWUlRDX1JHQkFfNEJQUCIsCi0tICAgICAgICAgICAgIlBWUlRDMV9SR0JBXzJCUFBfVU5P
Uk1fQkxPQ0siOiAiTVRMUGl4ZWxGb3JtYXRQVlJUQ19SR0JBXzJCUFAiLAotLSAgICAgICAgICAg
ICJQVlJUQzFfUkdCXzJCUFBfVU5PUk1fU1JHQl9CTE9DSyI6ICJNVExQaXhlbEZvcm1hdFBWUlRD
X1JHQl8yQlBQX3NSR0IiLAotLSAgICAgICAgICAgICJQVlJUQzFfUkdCXzRCUFBfVU5PUk1fU1JH
Ql9CTE9DSyI6ICJNVExQaXhlbEZvcm1hdFBWUlRDX1JHQl80QlBQX3NSR0IiLAotLSAgICAgICAg
ICAgICJQVlJUQzFfUkdCQV8yQlBQX1VOT1JNX1NSR0JfQkxPQ0siOiAiTVRMUGl4ZWxGb3JtYXRQ
VlJUQ19SR0JBXzJCUFBfc1JHQiIsCi0tICAgICAgICAgICAgIlBWUlRDMV9SR0JBXzRCUFBfVU5P
Uk1fU1JHQl9CTE9DSyI6ICJNVExQaXhlbEZvcm1hdFBWUlRDX1JHQkFfNEJQUF9zUkdCIiwKLSAg
ICAgICAgICAgICAiRVRDMV9SOEc4QjhfVU5PUk1fQkxPQ0siOiAiTVRMUGl4ZWxGb3JtYXRFVEMy
X1JHQjgiLAotICAgICAgICAgICAgICJFVEMyX1I4RzhCOF9VTk9STV9CTE9DSyI6ICJNVExQaXhl
bEZvcm1hdEVUQzJfUkdCOCIsCi0gICAgICAgICAgICAgIkVUQzJfUjhHOEI4X1NSR0JfQkxPQ0si
OiAiTVRMUGl4ZWxGb3JtYXRFVEMyX1JHQjhfc1JHQiIsCi1kaWZmIC0tZ2l0IGEvc3JjL2xpYkFO
R0xFL3JlbmRlcmVyL21ldGFsL210bF9mb3JtYXRfdGFibGVfYXV0b2dlbi5tbSBiL3NyYy9saWJB
TkdMRS9yZW5kZXJlci9tZXRhbC9tdGxfZm9ybWF0X3RhYmxlX2F1dG9nZW4ubW0KLWluZGV4IDlk
MTljODUuLmI1ZDkwZmYgMTAwNjQ0Ci0tLS0gYS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwv
bXRsX2Zvcm1hdF90YWJsZV9hdXRvZ2VuLm1tCi0rKysgYi9zcmMvbGliQU5HTEUvcmVuZGVyZXIv
bWV0YWwvbXRsX2Zvcm1hdF90YWJsZV9hdXRvZ2VuLm1tCi1AQCAtMTE1Miw1NCArMTE1Miw2IEBA
Ci0gICAgICAgICAgICAgdGhpcy0+YWN0dWFsRm9ybWF0SWQgPSBhbmdsZTo6Rm9ybWF0SUQ6OkVU
QzJfUjhHOEI4X1VOT1JNX0JMT0NLOwotICAgICAgICAgICAgIGJyZWFrOwotIAotLSAgICAgICAg
Y2FzZSBhbmdsZTo6Rm9ybWF0SUQ6OlBWUlRDMV9SR0JBXzJCUFBfVU5PUk1fQkxPQ0s6Ci0tCi0t
ICAgICAgICAgICAgdGhpcy0+bWV0YWxGb3JtYXQgICAgPSBNVExQaXhlbEZvcm1hdFBWUlRDX1JH
QkFfMkJQUDsKLS0gICAgICAgICAgICB0aGlzLT5hY3R1YWxGb3JtYXRJZCA9IGFuZ2xlOjpGb3Jt
YXRJRDo6UFZSVEMxX1JHQkFfMkJQUF9VTk9STV9CTE9DSzsKLS0gICAgICAgICAgICBicmVhazsK
LS0KLS0gICAgICAgIGNhc2UgYW5nbGU6OkZvcm1hdElEOjpQVlJUQzFfUkdCQV8yQlBQX1VOT1JN
X1NSR0JfQkxPQ0s6Ci0tCi0tICAgICAgICAgICAgdGhpcy0+bWV0YWxGb3JtYXQgICAgPSBNVExQ
aXhlbEZvcm1hdFBWUlRDX1JHQkFfMkJQUF9zUkdCOwotLSAgICAgICAgICAgIHRoaXMtPmFjdHVh
bEZvcm1hdElkID0gYW5nbGU6OkZvcm1hdElEOjpQVlJUQzFfUkdCQV8yQlBQX1VOT1JNX1NSR0Jf
QkxPQ0s7Ci0tICAgICAgICAgICAgYnJlYWs7Ci0tCi0tICAgICAgICBjYXNlIGFuZ2xlOjpGb3Jt
YXRJRDo6UFZSVEMxX1JHQkFfNEJQUF9VTk9STV9CTE9DSzoKLS0KLS0gICAgICAgICAgICB0aGlz
LT5tZXRhbEZvcm1hdCAgICA9IE1UTFBpeGVsRm9ybWF0UFZSVENfUkdCQV80QlBQOwotLSAgICAg
ICAgICAgIHRoaXMtPmFjdHVhbEZvcm1hdElkID0gYW5nbGU6OkZvcm1hdElEOjpQVlJUQzFfUkdC
QV80QlBQX1VOT1JNX0JMT0NLOwotLSAgICAgICAgICAgIGJyZWFrOwotLQotLSAgICAgICAgY2Fz
ZSBhbmdsZTo6Rm9ybWF0SUQ6OlBWUlRDMV9SR0JBXzRCUFBfVU5PUk1fU1JHQl9CTE9DSzoKLS0K
LS0gICAgICAgICAgICB0aGlzLT5tZXRhbEZvcm1hdCAgICA9IE1UTFBpeGVsRm9ybWF0UFZSVENf
UkdCQV80QlBQX3NSR0I7Ci0tICAgICAgICAgICAgdGhpcy0+YWN0dWFsRm9ybWF0SWQgPSBhbmds
ZTo6Rm9ybWF0SUQ6OlBWUlRDMV9SR0JBXzRCUFBfVU5PUk1fU1JHQl9CTE9DSzsKLS0gICAgICAg
ICAgICBicmVhazsKLS0KLS0gICAgICAgIGNhc2UgYW5nbGU6OkZvcm1hdElEOjpQVlJUQzFfUkdC
XzJCUFBfVU5PUk1fQkxPQ0s6Ci0tCi0tICAgICAgICAgICAgdGhpcy0+bWV0YWxGb3JtYXQgICAg
PSBNVExQaXhlbEZvcm1hdFBWUlRDX1JHQl8yQlBQOwotLSAgICAgICAgICAgIHRoaXMtPmFjdHVh
bEZvcm1hdElkID0gYW5nbGU6OkZvcm1hdElEOjpQVlJUQzFfUkdCXzJCUFBfVU5PUk1fQkxPQ0s7
Ci0tICAgICAgICAgICAgYnJlYWs7Ci0tCi0tICAgICAgICBjYXNlIGFuZ2xlOjpGb3JtYXRJRDo6
UFZSVEMxX1JHQl8yQlBQX1VOT1JNX1NSR0JfQkxPQ0s6Ci0tCi0tICAgICAgICAgICAgdGhpcy0+
bWV0YWxGb3JtYXQgICAgPSBNVExQaXhlbEZvcm1hdFBWUlRDX1JHQl8yQlBQX3NSR0I7Ci0tICAg
ICAgICAgICAgdGhpcy0+YWN0dWFsRm9ybWF0SWQgPSBhbmdsZTo6Rm9ybWF0SUQ6OlBWUlRDMV9S
R0JfMkJQUF9VTk9STV9TUkdCX0JMT0NLOwotLSAgICAgICAgICAgIGJyZWFrOwotLQotLSAgICAg
ICAgY2FzZSBhbmdsZTo6Rm9ybWF0SUQ6OlBWUlRDMV9SR0JfNEJQUF9VTk9STV9CTE9DSzoKLS0K
LS0gICAgICAgICAgICB0aGlzLT5tZXRhbEZvcm1hdCAgICA9IE1UTFBpeGVsRm9ybWF0UFZSVENf
UkdCXzRCUFA7Ci0tICAgICAgICAgICAgdGhpcy0+YWN0dWFsRm9ybWF0SWQgPSBhbmdsZTo6Rm9y
bWF0SUQ6OlBWUlRDMV9SR0JfNEJQUF9VTk9STV9CTE9DSzsKLS0gICAgICAgICAgICBicmVhazsK
LS0KLS0gICAgICAgIGNhc2UgYW5nbGU6OkZvcm1hdElEOjpQVlJUQzFfUkdCXzRCUFBfVU5PUk1f
U1JHQl9CTE9DSzoKLS0KLS0gICAgICAgICAgICB0aGlzLT5tZXRhbEZvcm1hdCAgICA9IE1UTFBp
eGVsRm9ybWF0UFZSVENfUkdCXzRCUFBfc1JHQjsKLS0gICAgICAgICAgICB0aGlzLT5hY3R1YWxG
b3JtYXRJZCA9IGFuZ2xlOjpGb3JtYXRJRDo6UFZSVEMxX1JHQl80QlBQX1VOT1JNX1NSR0JfQkxP
Q0s7Ci0tICAgICAgICAgICAgYnJlYWs7Ci0tCi0gICAgICAgICBjYXNlIGFuZ2xlOjpGb3JtYXRJ
RDo6RDE2X1VOT1JNOgotIAotICAgICAgICAgICAgIHRoaXMtPm1ldGFsRm9ybWF0ICAgID0gTVRM
UGl4ZWxGb3JtYXREZXB0aDMyRmxvYXQ7CiBkaWZmIC0tZ2l0IGEvc3JjL2xpYkFOR0xFL3JlbmRl
cmVyL21ldGFsL210bF9yZW5kZXJfdXRpbHMubW0gYi9zcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0
YWwvbXRsX3JlbmRlcl91dGlscy5tbQotaW5kZXggMTYxM2VlOS4uZTA3NTI5NSAxMDA2NDQKK2lu
ZGV4IDE2MTNlZTliNy4uZTA3NTI5NWY4IDEwMDY0NAogLS0tIGEvc3JjL2xpYkFOR0xFL3JlbmRl
cmVyL21ldGFsL210bF9yZW5kZXJfdXRpbHMubW0KICsrKyBiL3NyYy9saWJBTkdMRS9yZW5kZXJl
ci9tZXRhbC9tdGxfcmVuZGVyX3V0aWxzLm1tCi1AQCAtMjU0MCw0NSArMjU0MCwxMyBAQCBBTkdM
RV9JTkxJTkUgdm9pZCBTZXRQaXBlbGluZVN0YXRlKENvbXB1dGVDb21tYW5kRW5jb2RlciAqZW5j
b2RlciwKK0BAIC0yNTQwLDQ1ICsyNTQwLDEzIEBAIGFuZ2xlOjpSZXN1bHQgTWlwbWFwVXRpbHM6
OmdlbmVyYXRlTWlwbWFwQ1MoQ29udGV4dE10bCAqY29udGV4dE10bCwKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wgc1JHQk1pcG1hcCwKICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5hdGl2ZVRleExldmVsQXJyYXkg
Km1pcG1hcE91dHB1dFZpZXdzKQogIHsKQEAgLTc4Myw3ICsyMDA4Niw3IEBAIGluZGV4IDE2MTNl
ZTkuLmUwNzUyOTUgMTAwNjQ0CiAgICAgIENvbXB1dGVDb21tYW5kRW5jb2RlciAqY21kRW5jb2Rl
ciA9IGNvbnRleHRNdGwtPmdldENvbXB1dGVDb21tYW5kRW5jb2RlcigpOwogICAgICBBU1NFUlQo
Y21kRW5jb2Rlcik7CiAgCi1AQCAtMjYxNSw4ICsyNTgzLDI5IEBAIEFOR0xFX0lOTElORSB2b2lk
IFNldFBpcGVsaW5lU3RhdGUoQ29tcHV0ZUNvbW1hbmRFbmNvZGVyICplbmNvZGVyLAorQEAgLTI2
MTUsOCArMjU4MywyOSBAQCBhbmdsZTo6UmVzdWx0IE1pcG1hcFV0aWxzOjpnZW5lcmF0ZU1pcG1h
cENTKENvbnRleHRNdGwgKmNvbnRleHRNdGwsCiAgICAgICAgICAgICAgVU5SRUFDSEFCTEUoKTsK
ICAgICAgfQogIApAQCAtODE1LDcgKzIwMTE4LDcgQEAgaW5kZXggMTYxM2VlOS4uZTA3NTI5NSAx
MDA2NDQKICAgICAgTWlwbWFwTmF0aXZlTGV2ZWwgYmF0Y2hTcmNMZXZlbCA9IGtaZXJvTmF0aXZl
TWlwTGV2ZWw7CiAgICAgIG9wdGlvbnMuc3JjTGV2ZWwgICAgICAgICAgICAgICAgPSBiYXRjaFNy
Y0xldmVsLmdldCgpOwogZGlmZiAtLWdpdCBhL3NyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9t
dGxfcmVzb3VyY2Vfc3BpLmggYi9zcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX3Jlc291
cmNlX3NwaS5oCi1pbmRleCAzZWFhOWE2Li4yZWNmN2I0IDEwMDY0NAoraW5kZXggM2VhYTlhNjRl
Li4yZWNmN2I0MGIgMTAwNjQ0CiAtLS0gYS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRs
X3Jlc291cmNlX3NwaS5oCiArKysgYi9zcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX3Jl
c291cmNlX3NwaS5oCiBAQCAtMSw5ICsxLDYzIEBACkBAIC04ODksNyArMjAxOTIsNyBAQCBpbmRl
eCAzZWFhOWE2Li4yZWNmN2I0IDEwMDY0NAogKwogKyNlbmRpZiAvKiBMSUJBTkdMRV9SRU5ERVJF
Ul9NRVRBTF9SRVNPVVJDRV9TUElfSF8gKi8KIGRpZmYgLS1naXQgYS9zcmMvbGliQU5HTEUvcmVu
ZGVyZXIvbWV0YWwvbXRsX3Jlc291cmNlcy5oIGIvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFs
L210bF9yZXNvdXJjZXMuaAotaW5kZXggOGI4ZWIyNi4uMTlhOTc0MCAxMDA2NDQKK2luZGV4IDhi
OGViMjZiNS4uMTlhOTc0MDg3IDEwMDY0NAogLS0tIGEvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21l
dGFsL210bF9yZXNvdXJjZXMuaAogKysrIGIvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210
bF9yZXNvdXJjZXMuaAogQEAgLTM0NSw3ICszNDUsOSBAQCBjbGFzcyBUZXh0dXJlIGZpbmFsIDog
cHVibGljIFJlc291cmNlLApAQCAtOTA0LDcgKzIwMjA3LDcgQEAgaW5kZXggOGI4ZWIyNi4uMTlh
OTc0MCAxMDA2NDQKICAgIHB1YmxpYzoKICAgICAgc3RhdGljIGFuZ2xlOjpSZXN1bHQgTWFrZUJ1
ZmZlcihDb250ZXh0TXRsICpjb250ZXh0LAogZGlmZiAtLWdpdCBhL3NyYy9saWJBTkdMRS9yZW5k
ZXJlci9tZXRhbC9tdGxfcmVzb3VyY2VzLm1tIGIvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFs
L210bF9yZXNvdXJjZXMubW0KLWluZGV4IDhjMDVmYzIuLjBmOWI1M2IgMTAwNjQ0CitpbmRleCAx
ZThjOGYyNjQuLjdlYmYzMTY5MCAxMDA2NDQKIC0tLSBhL3NyYy9saWJBTkdMRS9yZW5kZXJlci9t
ZXRhbC9tdGxfcmVzb3VyY2VzLm1tCiArKysgYi9zcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwv
bXRsX3Jlc291cmNlcy5tbQogQEAgLTM1LDEyICszNSwxNCBAQCBpbmxpbmUgTlNVSW50ZWdlciBH
ZXRNaXBTaXplKE5TVUludGVnZXIgYmFzZVNpemUsIGNvbnN0IE1pcG1hcE5hdGl2ZUxldmVsIGxl
dmVsKQpAQCAtOTMzLDcgKzIwMjM2LDcgQEAgaW5kZXggOGMwNWZjMi4uMGY5YjUzYiAxMDA2NDQK
ICB7CiAgI2lmIFRBUkdFVF9PU19PU1ggfHwgVEFSR0VUX09TX01BQ0NBVEFMWVNUCiAgICAgIC8v
IE1ha2Ugc3VyZSBHUFUgJiBDUFUgY29udGVudHMgYXJlIHN5bmNocm9uaXplZC4KLUBAIC01MTIs
MTIgKzUxNCwxMiBAQCB2b2lkIEVuc3VyZUNQVU1lbVdpbGxCZVN5bmNlZChDb250ZXh0TXRsICpj
b250ZXh0LCBUICpyZXNvdXJjZSkKK0BAIC01MjEsMTIgKzUyMywxMiBAQCBUZXh0dXJlOjpUZXh0
dXJlKFRleHR1cmUgKm9yaWdpbmFsLCBjb25zdCBUZXh0dXJlU3dpenpsZUNoYW5uZWxzICZzd2l6
emxlKQogIAogIHZvaWQgVGV4dHVyZTo6c3luY0NvbnRlbnQoQ29udGV4dE10bCAqY29udGV4dCwg
bXRsOjpCbGl0Q29tbWFuZEVuY29kZXIgKmJsaXRFbmNvZGVyKQogIHsKQEAgLTk0OCw3ICsyMDI1
MSw3IEBAIGluZGV4IDhjMDVmYzIuLjBmOWI1M2IgMTAwNjQ0CiAgfQogIAogIGJvb2wgVGV4dHVy
ZTo6aXNDUFVBY2Nlc3NpYmxlKCkgY29uc3QKLUBAIC05ODIsNyArOTg0LDcgQEAgdm9pZCBFbnN1
cmVDUFVNZW1XaWxsQmVTeW5jZWQoQ29udGV4dE10bCAqY29udGV4dCwgVCAqcmVzb3VyY2UpCitA
QCAtOTkxLDcgKzk5Myw3IEBAIGFuZ2xlOjpSZXN1bHQgQnVmZmVyOjpyZXNldFdpdGhSZXNPcHQo
Q29udGV4dE10bCAqY29udGV4dCwKICAKICB2b2lkIEJ1ZmZlcjo6c3luY0NvbnRlbnQoQ29udGV4
dE10bCAqY29udGV4dCwgbXRsOjpCbGl0Q29tbWFuZEVuY29kZXIgKmJsaXRFbmNvZGVyKQogIHsK
QEAgLTk1Nyw3ICsyMDI2MCw3IEBAIGluZGV4IDhjMDVmYzIuLjBmOWI1M2IgMTAwNjQ0CiAgfQog
IAogIGNvbnN0IHVpbnQ4X3QgKkJ1ZmZlcjo6bWFwUmVhZE9ubHkoQ29udGV4dE10bCAqY29udGV4
dCkKLUBAIC0xMDAzLDcgKzEwMDUsNyBAQCB2b2lkIEVuc3VyZUNQVU1lbVdpbGxCZVN5bmNlZChD
b250ZXh0TXRsICpjb250ZXh0LCBUICpyZXNvdXJjZSkKK0BAIC0xMDEyLDcgKzEwMTQsNyBAQCB1
aW50OF90ICpCdWZmZXI6Om1hcFdpdGhPcHQoQ29udGV4dE10bCAqY29udGV4dCwgYm9vbCByZWFk
b25seSwgYm9vbCBub1N5bmMpCiAgICAgIHsKICAgICAgICAgIENvbW1hbmRRdWV1ZSAmY21kUXVl
dWUgPSBjb250ZXh0LT5jbWRRdWV1ZSgpOwogIApAQCAtOTY3LDcgKzIwMjcwLDcgQEAgaW5kZXgg
OGMwNWZjMi4uMGY5YjUzYiAxMDA2NDQKICAgICAgICAgIGlmICh0aGlzLT5pc0JlaW5nVXNlZEJ5
R1BVKGNvbnRleHQpKQogICAgICAgICAgewogZGlmZiAtLWdpdCBhL3NyYy9saWJBTkdMRS9yZW5k
ZXJlci9tZXRhbC9tdGxfdXRpbHMuaCBiL3NyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9tdGxf
dXRpbHMuaAotaW5kZXggZDIxOGMxMy4uYjIzNmQ5MiAxMDA2NDQKK2luZGV4IGQyMThjMTNlZC4u
YjIzNmQ5MjY1IDEwMDY0NAogLS0tIGEvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF91
dGlscy5oCiArKysgYi9zcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX3V0aWxzLmgKIEBA
IC0xMDUsMTEgKzEwNSw5IEBAIEF1dG9PYmpDUHRyPGlkPE1UTExpYnJhcnk+PiBDcmVhdGVTaGFk
ZXJMaWJyYXJ5KApAQCAtOTg0LDEwICsyMDI4NywxMCBAQCBpbmRleCBkMjE4YzEzLi5iMjM2ZDky
IDEwMDY0NAogIAogIGJvb2wgU3VwcG9ydHNBcHBsZUdQVUZhbWlseShpZDxNVExEZXZpY2U+IGRl
dmljZSwgdWludDhfdCBhcHBsZUZhbWlseSk7CiBkaWZmIC0tZ2l0IGEvc3JjL3Rlc3RzL2FuZ2xl
X3VuaXR0ZXN0cy5nbmkgYi9zcmMvdGVzdHMvYW5nbGVfdW5pdHRlc3RzLmduaQotaW5kZXggNjEz
NDVmOC4uZGQ3MGI5ZiAxMDA2NDQKK2luZGV4IDYxM2UwNzkwYi4uMjUyYTIwNzY0IDEwMDY0NAog
LS0tIGEvc3JjL3Rlc3RzL2FuZ2xlX3VuaXR0ZXN0cy5nbmkKICsrKyBiL3NyYy90ZXN0cy9hbmds
ZV91bml0dGVzdHMuZ25pCi1AQCAtMTY2LDYgKzE2Niw4IEBAIGlmIChpc19hbmRyb2lkKSB7CitA
QCAtMTY3LDYgKzE2Nyw4IEBAIGlmIChpc19hbmRyb2lkKSB7CiAgICAgICAgWyAiY29tcGlsZXJf
dGVzdHMvSW1tdXRhYmxlU3RyaW5nX3Rlc3RfYXV0b2dlbi5jcHAiIF0KICB9CiAgCkBAIC0xMDM4
LDUgKzIwMzQxLDUgQEAgcmVuYW1lIGZyb20gc3JjL3Rlc3RzL2RlcXBfc3VwcG9ydC9kZXFwX2to
cl9nbGVzM190ZXN0X2V4cGVjdGF0aW9ucy50eHQKIHJlbmFtZSB0byBzcmMvdGVzdHMvZGVxcF9z
dXBwb3J0L2RlcXBfa2hyX2dsZXMzX1Rlc3RFeHBlY3RhdGlvbnMKIGRpZmYgLS1naXQgYS90aGly
ZF9wYXJ0eS9yOC9jdXN0b21fZDguamFyIGIvdGhpcmRfcGFydHkvcjgvY3VzdG9tX2Q4Lmphcgog
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Ci1pbmRleCA5OWE5MTA2Li4wMDAwMDAwCitpbmRleCA5
OWE5MTA2MzcuLjAwMDAwMDAwMAogQmluYXJ5IGZpbGVzIGEvdGhpcmRfcGFydHkvcjgvY3VzdG9t
X2Q4LmphciBhbmQgL2Rldi9udWxsIGRpZmZlcgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvZG9jL0NhcHR1cmVBbmRSZXBsYXkubWQgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9kb2MvQ2FwdHVyZUFuZFJlcGxheS5tZAppbmRleCBkZjM0NmJjYTE2OTVhYjY2OWY0ZTI3ODRj
YWY3MGExYTgyOTFmODE2Li5lYzRlM2Q3YzMyYTg4YjRmYTEyMzBmNzQ5N2ExYzI2ZDMxY2JhYzA4
IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9kb2MvQ2FwdHVyZUFuZFJlcGxh
eS5tZAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9kb2MvQ2FwdHVyZUFuZFJlcGxheS5t
ZApAQCAtNDQsMzggKzQ0LDIyIEBAIFNvbWUgc2ltcGxlIGVudmlyb25tZW50IHZhcmlhYmxlcyBj
b250cm9sIGZyYW1lIGNhcHR1cmU6CiAgICAqIFVzZXMgbWlkLWV4ZWN1dGlvbiBjYXB0dXJlIHRv
IHdyaXRlICJTZXR1cCIgZnVuY3Rpb25zIHRoYXQgc3RhcnRzIGEgQ29udGV4dCBhdCBmcmFtZSBg
bmAuCiAgICAqIEV4YW1wbGU6IGBBTkdMRV9DQVBUVVJFX0ZSQU1FX1NUQVJUPTJgLiBEZWZhdWx0
IGlzIGAwYC4KICAqIGBBTkdMRV9DQVBUVVJFX0ZSQU1FX0VORD08bj5gOgotICAgKiBCeSBkZWZh
dWx0IEFOR0xFIHdpbGwgY2FwdHVyZSB0aGUgZmlyc3QgdGVuIGZyYW1lcy4gVGhpcyB2YXJpYWJs
ZSBjYW4gb3ZlcnJpZGUgdGhlIGRlZmF1bHQuCi0gICAqIEV4YW1wbGU6IGBBTkdMRV9DQVBUVVJF
X0ZSQU1FX0VORD00YC4gRGVmYXVsdCBpcyBgMTBgLgorICAgKiBFeGFtcGxlOiBgQU5HTEVfQ0FQ
VFVSRV9GUkFNRV9FTkQ9NGAuIERlZmF1bHQgaXMgYDBgIHdoaWNoIGRpc2FibGVzIGNhcHR1cmUu
CiAgKiBgQU5HTEVfQ0FQVFVSRV9MQUJFTD08bGFiZWw+YDoKICAgICogV2hlbiBzcGVjaWZpZWQs
IGZpbGVzIGFuZCBmdW5jdGlvbnMgd2lsbCBiZSBsYWJlbGVkIHVuaXF1ZWx5LgogICAgKiBFeGFt
cGxlOiBgQU5HTEVfQ0FQVFVSRV9MQUJFTD1mb29gCiAgICAgICogUmVzdWx0cyBpbiBmaWxlbmFt
ZXMgbGlrZSB0aGlzOgogICAgICAgIGBgYAotICAgICAgIGZvb19jYXB0dXJlX2NvbnRleHQxLmNw
cAotICAgICAgIGZvb19jYXB0dXJlX2NvbnRleHQxLmgKLSAgICAgICBmb29fY2FwdHVyZV9jb250
ZXh0MV9maWxlcy50eHQKLSAgICAgICBmb29fY2FwdHVyZV9jb250ZXh0MV9mcmFtZTAwMC5hbmds
ZWRhdGEKLSAgICAgICBmb29fY2FwdHVyZV9jb250ZXh0MV9mcmFtZTAwMC5jcHAKLSAgICAgICBm
b29fY2FwdHVyZV9jb250ZXh0MV9mcmFtZTAwMS5hbmdsZWRhdGEKLSAgICAgICBmb29fY2FwdHVy
ZV9jb250ZXh0MV9mcmFtZTAwMS5jcHAKKyAgICAgICBmb28uYW5nbGVkYXRhLmd6CisgICAgICAg
Zm9vX2NvbnRleHQxXzAwMS5jcHAKKyAgICAgICBmb29fY29udGV4dDFfMDAyLmNwcAorICAgICAg
IGZvb19jb250ZXh0MV8wMDMuY3BwCisgICAgICAgZm9vX2NvbnRleHQxLmNwcAorICAgICAgIGZv
b19jb250ZXh0MS5oCisgICAgICAgZm9vLmpzb24KKyAgICAgICBmb29fc2hhcmVkLmNwcAogICAg
ICAgIC4uLgogICAgICAgIGBgYAotICAgICAqIEZ1bmN0aW9ucyB3cmFwcGVkIGluIG5hbWVzcGFj
ZXMgbGlrZSB0aGlzOgotICAgICAgIGBgYAotICAgICAgIG5hbWVzcGFjZSBmb28KLSAgICAgICB7
Ci0gICAgICAgICAgIHZvaWQgUmVwbGF5Q29udGV4dDFGcmFtZTAoKTsKLSAgICAgICAgICAgdm9p
ZCBSZXBsYXlDb250ZXh0MUZyYW1lMSgpOwotICAgICAgIH0KLSAgICAgICBgYGAKLSAgICAgKiBG
b3IgdXNlIGxpa2UgdGhpczoKLSAgICAgICBgYGAKLSAgICAgICBmb286OlNldHVwQ29udGV4dDFS
ZXBsYXkoKTsKLSAgICAgICBmb3IgKC4uLikKLSAgICAgICB7Ci0gICAgICAgICAgIGZvbzo6UmVw
bGF5Q29udGV4dDFGcmFtZShpKTsKLSAgICAgICB9Ci0gICAgICAgYGBgCiAgKiBgQU5HTEVfQ0FQ
VFVSRV9TRVJJQUxJWkVfU1RBVEVgOgogICAgKiBTZXQgdG8gYDFgIHRvIGVuYWJsZSBHTCBzdGF0
ZSBzZXJpYWxpemF0aW9uLiBEZWZhdWx0IGlzIGAwYC4KIApAQCAtODYsOSArNzAsMTEgQEAgdGVt
cGxhdGUuIEZvciBleGFtcGxlOgogJCBBTkdMRV9DQVBUVVJFX0ZSQU1FX0VORD00IEFOR0xFX0NB
UFRVUkVfT1VUX0RJUj1zYW1wbGVzL2NhcHR1cmVfcmVwbGF5IG91dC9EZWJ1Zy9zaW1wbGVfdGV4
dHVyZV8yZAogYGBgCiAKLSMjIFJ1bm5pbmcgYSBDUFAgcmVwbGF5CisjIyBSdW5uaW5nIHRoZSBj
YXB0dXJlX3JlcGxheSBzYW1wbGUgKGRlc2t0b3Agb25seSkKIAotVG8gcnVuIGEgQ1BQIHJlcGxh
eSB5b3UgY2FuIHVzZSBhIHRlbXBsYXRlIGxvY2F0ZWQgaW4KKypOb3RlOiBUaGUgY2FwdHVyZV9y
ZXBsYXkgc2FtcGxlIGlzIGJyb2tlbiB1bnRpbCBodHRwOi8vYW5nbGVidWcuY29tLzU5MTEgaXMg
YWRkcmVzc2VkLioKKworVG8gcnVuIGEgc2FtcGxlIHJlcGxheSB5b3UgY2FuIHVzZSBhIHRlbXBs
YXRlIGxvY2F0ZWQgaW4KIFtzYW1wbGVzL2NhcHR1cmVfcmVwbGF5XSguLi9zYW1wbGVzL2NhcHR1
cmVfcmVwbGF5KS4gRmlyc3QgcnVuIHlvdXIgY2FwdHVyZSBhbmQgZW5zdXJlIGFsbCBjYXB0dXJl
CiBmaWxlcyBhcmUgd3JpdHRlbiB0byBgc2FtcGxlcy9jYXB0dXJlX3JlcGxheWAuIFlvdSBjYW4g
Y29udmVuaWVudGx5IHVzZSBgQU5HTEVfQ0FQVFVSRV9PVVRfRElSYC4KIFRoZW4gZW5hYmxlIHRo
ZSBgY2FwdHVyZV9yZXBsYXlfc2FtcGxlYCB2aWEgYGduIGFyZ3NgOgpAQCAtMTAxLDExICs4Nyw0
MiBAQCBTZWUgW3NhbXBsZXMvQlVJTEQuZ25dKC4uL3NhbXBsZXMvQlVJTEQuZ24pIGZvciBkZXRh
aWxzLiBUaGVuIGJ1aWxkIGFuZCBydW4geW91cgogCiBgYGAKICQgYXV0b25pbmphIC1DIG91dC9E
ZWJ1ZyBjYXB0dXJlX3JlcGxheV9zYW1wbGUKLSQgQU5HTEVfQ0FQVFVSRV9FTkFCTEVEPTAgb3V0
L0RlYnVnL2NhcHR1cmVfcmVwbGF5X3NhbXBsZQorJCBvdXQvRGVidWcvY2FwdHVyZV9yZXBsYXlf
c2FtcGxlCiBgYGAKIAotTm90ZSB0aGF0IHdlIHNwZWNpZnkgYEFOR0xFX0NBUFRVUkVfRU5BQkxF
RD0wYCB0byBwcmV2ZW50IHJlLWNhcHR1cmluZyB3aGVuIHJ1bm5pbmcgdGhlIHJlcGxheS4KKyMj
IFJ1bm5pbmcgYSBwZXJmIHRlc3QgcmVwbGF5IChhbGwgcGxhdGZvcm1zLCBpbmNsdWRpbmcgQW5k
cm9pZCkKKworVG8gcnVuIHlvdXIgY2FwdHVyZSBvbiBhbnkgcGxhdGZvcm0gKFdpbmRvd3MsIExp
bnV4LCBBbmRyb2lkLCBNYWMgKHVudGVzdGVkKSksIHlvdSdsbCBuZWVkIHRvCitjb21waWxlIGl0
IGFzIHBhcnQgb2YgQU5HTEUncyBUcmFjZSBSZXBsYXkgaGFybmVzcywgd2hpY2ggaXMgcGFydCBv
ZiBgYW5nbGVfcGVyZnRlc3RzYC4KKworQ3JlYXRlIGEgZm9sZGVyIHVuZGVyIGBzcmMvdGVzdHMv
cmVzdHJpY3RlZF90cmFjZXNgIHRoYXQgbWF0Y2hlcyB0aGUgYEFOR0xFX0NBUFRVUkVfTEFCRUxg
IHlvdQordXNlZCBhYm92ZS4KIAorUGxhY2UgYWxsIHRoZSB0cmFjZSBvdXRwdXQgZmlsZXMgaW50
byBpdC4gIEZvciBleGFtcGxlLCBpZiB0aGUgbGFiZWwgd2FzIGBkZXNrdG9wX3Rlc3RgOgorYGBg
CitzcmMvdGVzdHMvcmVzdHJpY3RlZF90cmFjZXMkIGxzIC0xIGRlc2t0b3BfdGVzdC8KK2Rlc2t0
b3BfdGVzdC5hbmdsZWRhdGEuZ3oKK2Rlc2t0b3BfdGVzdF9jb250ZXh0MV8wMDEuY3BwCitkZXNr
dG9wX3Rlc3RfY29udGV4dDFfMDAyLmNwcAorZGVza3RvcF90ZXN0X2NvbnRleHQxXzAwMy5jcHAK
K2Rlc2t0b3BfdGVzdF9jb250ZXh0MS5jcHAKK2Rlc2t0b3BfdGVzdF9jb250ZXh0MS5oCitkZXNr
dG9wX3Rlc3QuanNvbgorZGVza3RvcF90ZXN0X3NoYXJlZC5jcHAKK2BgYAorVGhlbiBhZGQgdGhl
IGxhYmVsIG9mIHlvdXIgdHJhY2UgdG8KK1tyZXN0cmljdGVkX3RyYWNlcy5qc29uXSguLi9zcmMv
dGVzdHMvcmVzdHJpY3RlZF90cmFjZXMvcmVzdHJpY3RlZF90cmFjZXMuanNvbikuCitOb3RlIGl0
IGluY2x1ZGVzIGEgdmVyc2lvbiB3aXRoIHRoZSBzdHJpbmcuICBKdXN0IHVzZSB0aGUgbnVtYmVy
IGAxYCBmb3IgbG9jYWwgY2hhbmdlcy4KK2BgYAorICAgICAiZGVhZF90cmlnZ2VyXzIgMSIsCisr
ICAgICJkZXNrdG9wX3Rlc3QgMSIsCisgICAgICJkaXNuZXlfdHN1bV90c3VtIDUiLAorYGBgCitO
b3cgeW91IHNob3VsZCBiZSBhYmxlIHRvIGNvbXBpbGUgYW5kIHJ1biB0aGUgcGVyZiB0ZXN0IGlu
Y2x1ZGluZyB5b3VyIHRyYWNlOgorYGBgCithdXRvbmluamEgLUMgb3V0L0RlYnVnIGFuZ2xlX3Bl
cmZ0ZXN0cworQU5HTEVfQ0FQVFVSRV9FTkFCTEVEPTAgb3V0L0RlYnVnL2FuZ2xlX3BlcmZ0ZXN0
cyAtLWd0ZXN0X2ZpbHRlcj0iKmRlc2t0b3BfdGVzdCoiIC0tdmVyYm9zZQorYGBgCiAjIyBDYXB0
dXJpbmcgYW4gQW5kcm9pZCBhcHBsaWNhdGlvbgogCiBJbiBvcmRlciB0byBjYXB0dXJlIG9uIEFu
ZHJvaWQsIHRoZSBmb2xsb3dpbmcgYWRkaXRpb25hbCBzdGVwcyBtdXN0IGJlIHRha2VuLiBUaGVz
ZSBzdGVwcwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvZG9jL0V4dGVuc2lv
blN1cHBvcnQubWQgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9kb2MvRXh0ZW5zaW9uU3VwcG9y
dC5tZAppbmRleCA4YjkxYTA5NTRiOGEzMjdjMGM5NmFkNjQwNGRkMGJmNDQ1MTc3ODhhLi5hZWYz
YmVkNDAxNGYyNTE3OGRjMjQ5ZjYzNTI3ODlkNTA4YTZkOTE4IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9kb2MvRXh0ZW5zaW9uU3VwcG9ydC5tZAorKysgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9kb2MvRXh0ZW5zaW9uU3VwcG9ydC5tZApAQCAtMTAyLDYgKzEwMiw3IEBA
IHVzaW5nIGRhdGEgZnJvbSByZWdpc3RyeV94bWwucHkgYW5kIGdsLnhtbC4KIHwgW0dMX0FOR0xF
X3BhY2tfcmV2ZXJzZV9yb3dfb3JkZXJdKGh0dHBzOi8va2hyb25vcy5vcmcvcmVnaXN0cnkvT3Bl
bkdML2V4dGVuc2lvbnMvQU5HTEUvQU5HTEVfcGFja19yZXZlcnNlX3Jvd19vcmRlci50eHQpIHwg
IHwgIHwgIHwgIHwgIHwgIHwKIHwgW0dMX05WX3BhY2tfc3ViaW1hZ2VdKGh0dHBzOi8va2hyb25v
cy5vcmcvcmVnaXN0cnkvT3BlbkdML2V4dGVuc2lvbnMvTlYvTlZfcGFja19zdWJpbWFnZS50eHQp
IHwgJiN4MjcxNDsgfCAmI3gyNzE0OyB8ICYjeDI3MTQ7IHwgJiN4MjcxNDsgfCAmI3gyNzE0OyB8
ICYjeDI3MTQ7IHwKIHwgW0dMX0tIUl9wYXJhbGxlbF9zaGFkZXJfY29tcGlsZV0oaHR0cHM6Ly9r
aHJvbm9zLm9yZy9yZWdpc3RyeS9PcGVuR0wvZXh0ZW5zaW9ucy9LSFIvS0hSX3BhcmFsbGVsX3No
YWRlcl9jb21waWxlLnR4dCkgfCAmI3gyNzE0OyB8ICYjeDI3MTQ7IHwgJiN4MjcxNDsgfCAmI3gy
NzE0OyB8ICYjeDI3MTQ7IHwgJiN4MjcxNDsgfAorfCBbR0xfQU1EX3BlcmZvcm1hbmNlX21vbml0
b3JdKGh0dHBzOi8va2hyb25vcy5vcmcvcmVnaXN0cnkvT3BlbkdML2V4dGVuc2lvbnMvQU1EL0FN
RF9wZXJmb3JtYW5jZV9tb25pdG9yLnR4dCkgfCAgfCAgfCAgfCAgfCAgfCAgfAogfCBbR0xfTlZf
cGl4ZWxfYnVmZmVyX29iamVjdF0oaHR0cHM6Ly9raHJvbm9zLm9yZy9yZWdpc3RyeS9PcGVuR0wv
ZXh0ZW5zaW9ucy9OVi9OVl9waXhlbF9idWZmZXJfb2JqZWN0LnR4dCkgfCAmI3gyNzE0OyB8ICYj
eDI3MTQ7IHwgJiN4MjcxNDsgfCAmI3gyNzE0OyB8ICYjeDI3MTQ7IHwgJiN4MjcxNDsgfAogfCBb
R0xfRVhUX3ByaW1pdGl2ZV9ib3VuZGluZ19ib3hdKGh0dHBzOi8va2hyb25vcy5vcmcvcmVnaXN0
cnkvT3BlbkdML2V4dGVuc2lvbnMvRVhUL0VYVF9wcmltaXRpdmVfYm91bmRpbmdfYm94LnR4dCkg
fCAmI3gyNzE0OyB8ICYjeDI3MTQ7IHwgJiN4MjcxNDsgfCAmI3gyNzE0OyB8ICYjeDI3MTQ7IHwg
JiN4MjcxNDsgfAogfCBbR0xfT0VTX3ByaW1pdGl2ZV9ib3VuZGluZ19ib3hdKGh0dHBzOi8va2hy
b25vcy5vcmcvcmVnaXN0cnkvT3BlbkdML2V4dGVuc2lvbnMvT0VTL09FU19wcmltaXRpdmVfYm91
bmRpbmdfYm94LnR4dCkgfCAgfCAgfCAgfCAgfCAgfCAgfApkaWZmIC0tZ2l0IGEvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvZXh0ZW5zaW9ucy9FR0xfQU5HTEVfcGxhdGZvcm1fYW5nbGVfZGV2aWNl
X2lkLnR4dCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL2V4dGVuc2lvbnMvRUdMX0FOR0xFX3Bs
YXRmb3JtX2FuZ2xlX2RldmljZV9pZC50eHQKaW5kZXggMWQzZWMyYjljYjM1NDBjZTgzN2M1ZTE5
M2RmZTljYWFmMmI5NDA1Yy4uYWEyYzMwMmRkYzVjMTk4NjBjMDY0Zjc1YWVlYzRiMGU5ZDczMTYw
OCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvZXh0ZW5zaW9ucy9FR0xfQU5H
TEVfcGxhdGZvcm1fYW5nbGVfZGV2aWNlX2lkLnR4dAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9leHRlbnNpb25zL0VHTF9BTkdMRV9wbGF0Zm9ybV9hbmdsZV9kZXZpY2VfaWQudHh0CkBA
IC05LDYgKzksNyBAQCBOYW1lIFN0cmluZ3MKIENvbnRyaWJ1dG9ycwogCiAgICAgSm9uYWggUnlh
bi1EYXZpcywgR29vZ2xlCisgICAgS2ltbW8gS2lubnVuZW4sIEFwcGxlCiAKIENvbnRhY3RzCiAK
QEAgLTIwLDcgKzIxLDcgQEAgU3RhdHVzCiAKIFZlcnNpb24KIAotICAgIFZlcnNpb24gMSwgMjAy
MS0xMi0xNAorICAgIFZlcnNpb24gMiwgMjAyMi0wNC0wOQogCiBOdW1iZXIKIApAQCAtMzQsNiAr
MzUsOCBAQCBEZXBlbmRlbmNpZXMKIAogICAgIFJlcXVpcmVzIEFOR0xFX3BsYXRmb3JtX2FuZ2xl
LgogCisgICAgRUdMX0FOR0xFX2Rpc3BsYXlfcG93ZXJfcHJlZmVyZW5jZSBpbnRlcmFjdHMgd2l0
aCB0aGlzIGV4dGVuc2lvbi4KKwogT3ZlcnZpZXcKIAogICAgIFRoaXMgZXh0ZW5zaW9uIGVuYWJs
ZXMgdGhlIHNlbGVjdGlvbiBvZiBhIGdyYXBoaWNzIGRldmljZSB0byBiYWNrCkBAIC03MSw4ICs3
NCw4IEBAIE5ldyBCZWhhdmlvcgogICAgIElmIHRoZSBoaWdoIHBhcnQgYW5kIGxvdyBwYXJ0IGNv
bWJpbmVkIGlzIHplcm8sIGFuIEVHTF9CQURfQVRUUklCVVRFIGVycm9yCiAgICAgaXMgZ2VuZXJh
dGVkIGFuZCBFR0xfTk9fRElTUExBWSBpcyByZXR1cm5lZC4KIAotICAgIElmIHRoZSBJRCBzcGVj
aWZpZWQgZG9lc24ndCBtYXRjaCBhbnkgZGV2aWNlcyBvbiB0aGUgc3lzdGVtLCB0aGUgZGVmYXVs
dAotICAgIGRldmljZSBpcyB1c2VkLgorICAgIElmIHRoZSBJRCBzcGVjaWZpZWQgZG9lc24ndCBt
YXRjaCBhbnkgZGV2aWNlcyBvbiB0aGUgc3lzdGVtLCB0aGUgZGV2aWNlCisgICAgaXMgc2VsZWN0
ZWQgYXMgZGVzY3JpYmVkIGluIHRoZSBFR0xfQU5HTEVfZGlzcGxheV9wb3dlcl9wcmVmZXJlbmNl
IGV4dGVuc2lvbi4KIAogSXNzdWVzCiAKQEAgLTgwLDUgKzgzLDkgQEAgSXNzdWVzCiAKIFJldmlz
aW9uIEhpc3RvcnkKIAorICAgIFZlcnNpb24gMiwgMjAyMi0wNC0wOSAoS2ltbW8gS2lubnVuZW4p
CisgICAgICAtIERlc2NyaWJlIGludGVyYWN0aW9uIHdpdGggRUdMX0FOR0xFX2Rpc3BsYXlfcG93
ZXJfcHJlZmVyZW5jZSwKKyAgICAgICAgRUdMX0FOR0xFX3BsYXRmb3JtX2FuZ2xlX2RldmljZV9p
ZCB0YWtlcyBwcmVjZWRlbmNlLgorCiAgICAgVmVyc2lvbiAxLCAyMDIxLTEyLTE0IChKb25haCBS
eWFuLURhdmlzKQogICAgICAgLSBJbml0aWFsIGRyYWZ0LCBiYXNlZCBvbiBFR0xfQU5HTEVfcGxh
dGZvcm1fYW5nbGVfZDNkX2x1aWQKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L2V4dGVuc2lvbnMvRUdMX0FOR0xFX3Bvd2VyX3ByZWZlcmVuY2UudHh0IGIvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvZXh0ZW5zaW9ucy9FR0xfQU5HTEVfcG93ZXJfcHJlZmVyZW5jZS50eHQKaW5k
ZXggNDU1NDk1ZDkzM2IxNTM1YzljNGE4NDgxY2Q5NGY5N2I1ZDhhZjgwZS4uYzkwMGJlZTU1NzM4
NDQzNzk5YWRkYmYxYTVhZDhhZjY3Y2QxOTg0OSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvZXh0ZW5zaW9ucy9FR0xfQU5HTEVfcG93ZXJfcHJlZmVyZW5jZS50eHQKKysrIGIv
U291cmNlL1RoaXJkUGFydHkvQU5HTEUvZXh0ZW5zaW9ucy9FR0xfQU5HTEVfcG93ZXJfcHJlZmVy
ZW5jZS50eHQKQEAgLTksNiArOSw3IEBAIE5hbWUgU3RyaW5ncwogQ29udHJpYnV0b3JzCiAKICAg
ICBLZW5uZXRoIFJ1c3NlbGwKKyAgICBLaW1tbyBLaW5udW5lbgogCiBDb250YWN0cwogCkBAIC0y
MCw3ICsyMSw3IEBAIFN0YXR1cwogCiBWZXJzaW9uCiAKLSAgICBWZXJzaW9uIDEsIEFwcmlsIDE2
LCAyMDE5CisgICAgVmVyc2lvbiAzLCBNYXJjaCAxMCwgMjAyMgogCiBOdW1iZXIKIApAQCAtNDks
NiArNTAsOCBAQCBOZXcgUHJvY2VkdXJlcyBhbmQgRnVuY3Rpb25zCiAgICAgICAgIEVHTERpc3Bs
YXkgZHB5LAogICAgICAgICBFR0xDb250ZXh0IGNvbnRleHQpOwogICAgIHZvaWQgZWdsSGFuZGxl
R1BVU3dpdGNoQU5HTEUoRUdMRGlzcGxheSBkcHkpOworICAgIHZvaWQgZWdsRm9yY2VHUFVTd2l0
Y2hBTkdMRShFR0xEaXNwbGF5IGRweSwgRUdMaW50IGdwdUlESGlnaCwKKyAgICAgICAgRUdMaW50
IGdwdUlETG93KTsKIAogTmV3IFRva2VucwogCkBAIC0xMjAsNiArMTIzLDMxIEBAIEFkZGl0aW9u
cyB0byB0aGUgRUdMIDEuNCBTcGVjaWZpY2F0aW9uCiAgICAgaWYgfGRweXwgaXMgYW4gdW5pbml0
aWFsaXplZCBkaXNwbGF5LCBhbiBFR0xfTk9UX0lOSVRJQUxJWkVEIGVycm9yCiAgICAgaXMgZ2Vu
ZXJhdGVkLgogCisgICAgZWdsRm9yY2VHUFVTd2l0Y2hBTkdMRSBzaG91bGQgYmUgY2FsbGVkIHdp
dGggYW4gZXhwbGljaXQgZ3B1SUQgdG8gdHJhbnNpdGlvbgorICAgIGJldHdlZW4gdGhlIGxvdy1w
b3dlciBhbmQgaGlnaC1wb3dlciBHUFVzLiBUaGlzIHNob3VsZCBiZSBjYWxsZWQgaWYKKyAgICB0
aGUgZW52aXJvbm1lbnQgaXMgYWx0ZXJlZCBpbiBzdWNoIGEgd2F5IHRoYXQgZWdsSGFuZGxlR1BV
U3dpdGNoQU5HTEUKKyAgICB3aWxsIG5vdCB3b3JrLgorICAgIE9uIHRoZSBtYWNPUyBwbGF0Zm9y
bSwgdGhlIHNhbmRib3ggcG9saWN5IG1pZ2h0IHByZXZlbnQgZWdsSGFuZGxlR1BVU3dpdGNoQU5H
TEUKKyAgICBmcm9tIG9idGFpbmluZyB0aGUgY3VycmVudCBtYWluIGFjdGl2ZSBHUFUuIEluIHRo
ZXNlIGNhc2VzLCB0aGUgZ3B1SUQgY2FuCisgICAgYmUgb2J0YWluZWQgYW5vdGhlciB3YXkgKGUu
ZyBpbiBvdGhlciBwcm9jZXNzKSBhbmQgY29tbXVuaWNhdGVkIHZpYQorICAgIGVnbEZvcmNlR1BV
U3dpdGNoQU5HTEUgdG8gdGhlIE9wZW5HTCBkaXNwbGF5LgorICAgIElmIGdwdUlEIGRvZXMgbm90
IG1hdGNoIGFueSBhdmFpbGFibGUgR1BVcyBpbiB0aGUgc3lzdGVtLAorICAgIG5vdGhpbmcgaGFw
cGVucy4KKworICAgIEZvciBjYWxscyB0byB0aGlzIGZ1bmN0aW9uOgorCisgICAgSWYgfGRweXwg
aXMgbm90IGEgdmFsaWQgZGlzcGxheSwgYW4gRUdMX0JBRF9ESVNQTEFZIGVycm9yIGlzCisgICAg
Z2VuZXJhdGVkLgorCisgICAgaWYgfGRweXwgaXMgYW4gdW5pbml0aWFsaXplZCBkaXNwbGF5LCBh
biBFR0xfTk9UX0lOSVRJQUxJWkVEIGVycm9yCisgICAgaXMgZ2VuZXJhdGVkLgorCisgICAgfGdw
dUlESGlnaHwgdGhlIGhpZ2ggMzIgYml0cyBvZiB0aGUgSU9LaXQgcmVnaXN0cnkgSUQgb2YgdGhl
IEdQVSB0bworICAgIHVzZSBmb3IgYWxsIGNvbnRleHRzIGluIHRoZSBkaXNwbGF5LgorCisgICAg
fGdwdUlETG93fCB0aGUgbG93IDMyIGJpdHMgb2YgdGhlIElPS2l0IHJlZ2lzdHJ5IElEIG9mIHRo
ZSBHUFUgdG8KKyAgICB1c2UgZm9yIGFsbCBjb250ZXh0cyBpbiB0aGUgZGlzcGxheS4KKwogSXNz
dWVzCiAKICAgICBOb25lIHlldC4KQEAgLTEzMiwzICsxNjAsNCBAQCBSZXZpc2lvbiBIaXN0b3J5
CiAgICAgICAyICAgSnVuZSA1LCAyMDIwICAga2JyICAgICAgICBBZGQgZWdsUmVsZWFzZUhpZ2hQ
b3dlckdQVUFOR0xFLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlZ2xS
ZWFjcXVpcmVIaWdoUG93ZXJHUFVBTkdMRSwgYW5kCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGVnbEhhbmRsZUdQVVN3aXRjaEFOR0xFCisgICAgICAzICAgTWFyY2ggMTAs
IDIwMjIga2tpbm51bmVuICBBZGQgZWdsRm9yY2VHUFVTd2l0Y2hBTkdMRQpkaWZmIC0tZ2l0IGEv
U291cmNlL1RoaXJkUGFydHkvQU5HTEUvZ25pL2FuZ2xlLmduaSBiL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL2duaS9hbmdsZS5nbmkKaW5kZXggYWI1N2U0ODM3MjMzNTM2MTExMzJmNTQ0MTA2YjM5
MGQ0NDk3N2JkOC4uNDU3YjQxNzkyNGMzODY0M2FiMzgwNDlmZjU1MWVjOWQ1OGIyMTAxMiAxMDA2
NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvZ25pL2FuZ2xlLmduaQorKysgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9nbmkvYW5nbGUuZ25pCkBAIC00MCw2ICs0MCw4IEBAIGlmIChh
bmdsZV9oYXNfYnVpbGQpIHsKICAgfQogCiAgIGFuZ2xlX3VzZV94MTEgPSBvem9uZV9wbGF0Zm9y
bV94MTEgJiYgIWlzX2dncCAmJiBpc19saW51eCAmJiAhaXNfY2hyb21lY2FzdAorICBhbmdsZV91
c2Vfd2F5bGFuZCA9CisgICAgICBvem9uZV9wbGF0Zm9ybV93YXlsYW5kICYmICFpc19nZ3AgJiYg
aXNfbGludXggJiYgIWlzX2Nocm9tZWNhc3QKICAgYW5nbGVfdXNlX3Z1bGthbl9kaXNwbGF5ID0g
KGlzX2xpbnV4IHx8IGlzX2Nocm9tZW9zKSAmJiAhaXNfZ2dwCiB9IGVsc2UgewogICBkZWNsYXJl
X2FyZ3MoKSB7CkBAIC01MCw2ICs1Miw3IEBAIGlmIChhbmdsZV9oYXNfYnVpbGQpIHsKICAgICBi
dWlsZF93aXRoX2Nocm9taXVtID0gZmFsc2UKICAgICBkY2hlY2tfYWx3YXlzX29uID0gZmFsc2UK
ICAgICBhbmdsZV91c2VfeDExID0gKGlzX2xpbnV4IHx8IGlzX2Nocm9tZW9zKSAmJiAhaXNfZ2dw
CisgICAgYW5nbGVfdXNlX3dheWxhbmQgPSBpc19saW51eCAmJiAhaXNfZ2dwCiAgICAgdXNlX296
b25lID0gZmFsc2UKICAgICBvem9uZV9wbGF0Zm9ybV9nYm0gPSBmYWxzZQogICAgIG96b25lX3Bs
YXRmb3JtX3dheWxhbmQgPSBmYWxzZQpAQCAtNzEsMTEgKzc0LDExIEBAIGRlY2xhcmVfYXJncygp
IHsKIAogICBpZiAoY3VycmVudF9jcHUgPT0gImFybTY0IiB8fCBjdXJyZW50X2NwdSA9PSAieDY0
IiB8fAogICAgICAgY3VycmVudF9jcHUgPT0gIm1pcHM2NGVsIiB8fCBjdXJyZW50X2NwdSA9PSAi
czM5MHgiIHx8Ci0gICAgICBjdXJyZW50X2NwdSA9PSAicHBjNjQiKSB7CisgICAgICBjdXJyZW50
X2NwdSA9PSAicHBjNjQiIHx8IGN1cnJlbnRfY3B1ID09ICJsb29uZzY0IikgewogICAgIGFuZ2xl
XzY0Yml0X2N1cnJlbnRfY3B1ID0gdHJ1ZQogICB9IGVsc2UgaWYgKGN1cnJlbnRfY3B1ID09ICJh
cm0iIHx8IGN1cnJlbnRfY3B1ID09ICJ4ODYiIHx8CiAgICAgICAgICAgICAgY3VycmVudF9jcHUg
PT0gIm1pcHNlbCIgfHwgY3VycmVudF9jcHUgPT0gInMzOTAiIHx8Ci0gICAgICAgICAgICAgY3Vy
cmVudF9jcHUgPT0gInBwYyIpIHsKKyAgICAgICAgICAgICBjdXJyZW50X2NwdSA9PSAicHBjIiB8
fCBjdXJyZW50X2NwdSA9PSAibG9vbmczMiIpIHsKICAgICBhbmdsZV82NGJpdF9jdXJyZW50X2Nw
dSA9IGZhbHNlCiAgIH0gZWxzZSB7CiAgICAgYXNzZXJ0KGZhbHNlLCAiVW5rbm93biBjdXJyZW50
IENQVTogJGN1cnJlbnRfY3B1IikKQEAgLTEyOSwxNyArMTMyLDE4IEBAIGRlY2xhcmVfYXJncygp
IHsKIAogICBhbmdsZV9lbmFibGVfZDNkOSA9IGlzX3dpbiAmJiAhYW5nbGVfaXNfd2ludXdwCiAg
IGFuZ2xlX2VuYWJsZV9kM2QxMSA9IGlzX3dpbgotICBhbmdsZV9lbmFibGVfZ2wgPSAob3pvbmVf
cGxhdGZvcm1fZ2JtIHx8IG96b25lX3BsYXRmb3JtX3dheWxhbmQgfHwKLSAgICAgICAgICAgICAg
ICAgICAgICFpc19saW51eCB8fCAoYW5nbGVfdXNlX3gxMSAmJiAhaXNfY2hyb21lb3MpKSAmJgot
ICAgICAgICAgICAgICAgICAgICAhaXNfZnVjaHNpYSAmJiAhYW5nbGVfaXNfd2ludXdwICYmICFp
c19nZ3AgJiYgIWlzX3dpbl9hcm02NAorICBhbmdsZV9lbmFibGVfZ2wgPQorICAgICAgKG96b25l
X3BsYXRmb3JtX2dibSB8fCBvem9uZV9wbGF0Zm9ybV93YXlsYW5kIHx8ICFpc19saW51eCB8fAor
ICAgICAgICgoYW5nbGVfdXNlX3gxMSAmJiAhaXNfY2hyb21lb3MpIHx8IGFuZ2xlX3VzZV93YXls
YW5kKSkgJiYgIWlzX2Z1Y2hzaWEgJiYKKyAgICAgICFhbmdsZV9pc193aW51d3AgJiYgIWlzX2dn
cCAmJiAhaXNfd2luX2FybTY0CiAKICAgYW5nbGVfZW5hYmxlX3Z1bGthbiA9CiAgICAgICBhbmds
ZV9oYXNfYnVpbGQgJiYKICAgICAgICEoaXNfYW5kcm9pZCAmJiBidWlsZF93aXRoX2Nocm9taXVt
ICYmIGlzX29mZmljaWFsX2J1aWxkKSAmJgogICAgICAgKChpc193aW4gJiYgIWFuZ2xlX2lzX3dp
bnV3cCkgfHwKICAgICAgICAoKGlzX2xpbnV4IHx8IGlzX2Nocm9tZW9zKSAmJgotICAgICAgICAo
YW5nbGVfdXNlX3gxMSB8fCBhbmdsZV91c2VfdnVsa2FuX2Rpc3BsYXkpKSB8fCBpc19hbmRyb2lk
IHx8Ci0gICAgICAgaXNfZnVjaHNpYSB8fCBpc19nZ3AgfHwgaXNfbWFjKQorICAgICAgICAoYW5n
bGVfdXNlX3gxMSB8fCBhbmdsZV91c2Vfd2F5bGFuZCB8fCBhbmdsZV91c2VfdnVsa2FuX2Rpc3Bs
YXkpKSB8fAorICAgICAgIGlzX2FuZHJvaWQgfHwgaXNfZnVjaHNpYSB8fCBpc19nZ3AgfHwgaXNf
bWFjKQogCiAgICMgV2hlbiBzZXQgdG8gdHJ1ZSwgQU5HTEUgd2lsbCBub3QgdXNlIFZLX0tIUl9z
dXJmYWNlIGFuZCBWS19LSFJfc3dhcGNoYWluCiAgICMgZXh0ZW5zaW9ucy4gQ29udGVudCBjYW4g
YmUgcmVuZGVyZWQgb25seSBvZmYtc2NyZWVuLgpAQCAtMTU0LDYgKzE1OCw5IEBAIGRlY2xhcmVf
YXJncygpIHsKIAogICAjIEVuYWJsZXMgdGhlIE9wZW5DTCBwYXNzLXRocm91Z2ggYmFjayBlbmQK
ICAgYW5nbGVfZW5hYmxlX2NsX3Bhc3N0aHJvdWdoID0gYW5nbGVfZW5hYmxlX2NsCisKKyAgIyBV
c2UgZ2xzbGFuZyB0byBnZW5lcmF0ZSBTUElSLVYKKyAgYW5nbGVfdXNlX3NwaXJ2X2dlbl90aHJv
dWdoX2dsc2xhbmcgPSBmYWxzZQogfQogCiAjIE9wZW5DTCBpcyBub3Qgc3VwcG9ydGVkIG9uIFdp
bmRvd3MgVVdQLCBiZWNhdXNlIHRoZSBDTCBoZWFkZXJzIGluY2x1ZGUgRFg5LCB3aGljaCBpcyBu
b3QKQEAgLTE5Miw3ICsxOTksOCBAQCBkZWNsYXJlX2FyZ3MoKSB7CiAgICMgdGhlIFNQSVItViBn
ZW5lcmF0aW9uIHBhdGgsIGJ1dCBsZWF2ZSBpdCBkaXNhYmxlZCBvbiByZWxlYXNlLiAgSXQncyBz
dGlsbCB1c2VkIGJ5IHRoZSBtZXRhbAogICAjIGJhY2tlbmQgbmV2ZXJ0aGVsZXNzLgogICBhbmds
ZV9lbmFibGVfc3BpcnZfZ2VuX3Rocm91Z2hfZ2xzbGFuZyA9Ci0gICAgICBpc19kZWJ1ZyB8fCBh
bmdsZV9hc3NlcnRfYWx3YXlzX29uIHx8IGFuZ2xlX2VuYWJsZV9tZXRhbAorICAgICAgaXNfZGVi
dWcgfHwgYW5nbGVfYXNzZXJ0X2Fsd2F5c19vbiB8fCBhbmdsZV9lbmFibGVfbWV0YWwgfHwKKyAg
ICAgIGFuZ2xlX3VzZV9zcGlydl9nZW5fdGhyb3VnaF9nbHNsYW5nCiAKICAgIyBJU3ByaXRlVmlz
dWFsIHdpbmRvd3MgY2Fubm90IGJlIHZhbGlkYXRlZCBhbmQgY2FuIGxlYWQgdG8gY3Jhc2hlcyBp
ZiBhbiBpbnZhbGlkIHdpbmRvdyBpcwogICAjIHByb3ZpZGVkIHRvIEFOR0xFLiBEaXNhYmxlIHRo
ZW0gZm9yIG5vbi1zdGFuZGFsb25lIEFOR0xFIGJ1aWxkcy4gY3JidWcuY29tLzExNzYxMTgKQEAg
LTIwNyw2ICsyMTUsOSBAQCBkZWNsYXJlX2FyZ3MoKSB7CiAgICAgICAgICAgICAgICAgICAgICAg
ISh0YXJnZXRfZW52aXJvbm1lbnQgPT0gImNhdGFseXN0IiAmJgogICAgICAgICAgICAgICAgICAg
ICAgICAgKHRhcmdldF9jcHUgPT0gIng4NiIgfHwgdGFyZ2V0X2NwdSA9PSAieDY0IikpCiAKKyAg
IyBEaXJlY3Rvcnkgd2hlcmUgdG8gZmluZCB3YXlsYW5kIHNvdXJjZSBmaWxlcworICBhbmdsZV93
YXlsYW5kX2RpciA9ICIkYW5nbGVfcm9vdC90aGlyZF9wYXJ0eS93YXlsYW5kIgorCiAgIGFuZ2xl
X3Z1bGthbl9oZWFkZXJzX2RpciA9CiAgICAgICAiJGFuZ2xlX3Jvb3QvdGhpcmRfcGFydHkvdnVs
a2FuLWRlcHMvdnVsa2FuLWhlYWRlcnMvc3JjIgogICBhbmdsZV92dWxrYW5fbG9hZGVyX2RpciA9
CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9pbmNsdWRlL0VHTC9lZ2xleHRf
YW5nbGUuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL2luY2x1ZGUvRUdML2VnbGV4dF9hbmds
ZS5oCmluZGV4IDVmOGNhYTg2YmIwMTMyNDAyNjYwNjFkYWQzYjJkNTg2ZWJjZjBmNWEuLjYwZDVl
ZDM3MjQxMjk5NmY3ZjY1Y2JiYzEwZDFmYjMxOWIwNTgyNWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL2luY2x1ZGUvRUdML2VnbGV4dF9hbmdsZS5oCisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL2luY2x1ZGUvRUdML2VnbGV4dF9hbmdsZS5oCkBAIC0yODIsMTAgKzI4
MiwxMiBAQCBFR0xBUEkgRUdMQm9vbGVhbiBFR0xBUElFTlRSWSBlZ2xHZXRNc2NSYXRlQU5HTEUo
RUdMRGlzcGxheSBkcHksCiB0eXBlZGVmIHZvaWQoRUdMQVBJRU5UUllQIFBGTkVHTFJFTEVBU0VI
SUdIUE9XRVJHUFVBTkdMRVBST0MpIChFR0xEaXNwbGF5IGRweSwgRUdMQ29udGV4dCBjdHgpOwog
dHlwZWRlZiB2b2lkKEVHTEFQSUVOVFJZUCBQRk5FR0xSRUFDUVVJUkVISUdIUE9XRVJHUFVBTkdM
RVBST0MpIChFR0xEaXNwbGF5IGRweSwgRUdMQ29udGV4dCBjdHgpOwogdHlwZWRlZiB2b2lkKEVH
TEFQSUVOVFJZUCBQRk5FR0xIQU5ETEVHUFVTV0lUQ0hBTkdMRVBST0MpIChFR0xEaXNwbGF5IGRw
eSk7Cit0eXBlZGVmIHZvaWQoRUdMQVBJRU5UUllQIFBGTkVHTEZPUkNFR1BVU1dJVENIQU5HTEVQ
Uk9DKSAoRUdMRGlzcGxheSBkcHksIEVHTGludCBncHVJREhpZ2gsIEVHTGludCBncHVJRExvdyk7
CiAjaWZkZWYgRUdMX0VHTEVYVF9QUk9UT1RZUEVTCiBFR0xBUEkgdm9pZCBFR0xBUElFTlRSWSBl
Z2xSZWxlYXNlSGlnaFBvd2VyR1BVQU5HTEUoRUdMRGlzcGxheSBkcHksIEVHTENvbnRleHQgY3R4
KTsKIEVHTEFQSSB2b2lkIEVHTEFQSUVOVFJZIGVnbFJlYWNxdWlyZUhpZ2hQb3dlckdQVUFOR0xF
KEVHTERpc3BsYXkgZHB5LCBFR0xDb250ZXh0IGN0eCk7CiBFR0xBUEkgdm9pZCBFR0xBUElFTlRS
WSBlZ2xIYW5kbGVHUFVTd2l0Y2hBTkdMRShFR0xEaXNwbGF5IGRweSk7CitFR0xBUEkgdm9pZCBF
R0xBUElFTlRSWSBlZ2xGb3JjZUdQVVN3aXRjaEFOR0xFKEVHTERpc3BsYXkgZHB5LCBFR0xpbnQg
Z3B1SURIaWdoLCBFR0xpbnQgZ3B1SURMb3cpOwogI2VuZGlmCiAjZW5kaWYgLyogRUdMX0FOR0xF
X3Bvd2VyX3ByZWZlcmVuY2UgKi8KIApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvaW5jbHVkZS9HTFNMQU5HL1NoYWRlckxhbmcuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L2luY2x1ZGUvR0xTTEFORy9TaGFkZXJMYW5nLmgKaW5kZXggYjMyYzYwMTZjYmFmMjM3MDAzNGE2
ZGVmNTJjZjYyNGEyYTVhMzYwZi4uYzMwMTkzNWE1ODhhODFmNGQxYmNkNmJlYjA3NDI5NDI5NGM1
ZjZjZiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvaW5jbHVkZS9HTFNMQU5H
L1NoYWRlckxhbmcuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9pbmNsdWRlL0dMU0xB
TkcvU2hhZGVyTGFuZy5oCkBAIC0yNiw3ICsyNiw3IEBACiAKIC8vIFZlcnNpb24gbnVtYmVyIGZv
ciBzaGFkZXIgdHJhbnNsYXRpb24gQVBJLgogLy8gSXQgaXMgaW5jcmVtZW50ZWQgZXZlcnkgdGlt
ZSB0aGUgQVBJIGNoYW5nZXMuCi0jZGVmaW5lIEFOR0xFX1NIX1ZFUlNJT04gMjcwCisjZGVmaW5l
IEFOR0xFX1NIX1ZFUlNJT04gMjcxCiAKIGVudW0gU2hTaGFkZXJTcGVjCiB7CkBAIC00MTgsNiAr
NDE4LDcgQEAgc3RydWN0IFNoQnVpbHRJblJlc291cmNlcwogICAgIGludCBPRVNfcHJpbWl0aXZl
X2JvdW5kaW5nX2JveDsKICAgICBpbnQgQU5HTEVfYmFzZV92ZXJ0ZXhfYmFzZV9pbnN0YW5jZV9z
aGFkZXJfYnVpbHRpbjsKICAgICBpbnQgQU5EUk9JRF9leHRlbnNpb25fcGFja19lczMxYTsKKyAg
ICBpbnQgS0hSX2JsZW5kX2VxdWF0aW9uX2FkdmFuY2VkOwogCiAgICAgLy8gU2V0IHRvIDEgdG8g
ZW5hYmxlIHJlcGxhY2luZyBHTF9FWFRfZHJhd19idWZmZXJzICNleHRlbnNpb24gZGlyZWN0aXZl
cwogICAgIC8vIHdpdGggR0xfTlZfZHJhd19idWZmZXJzIGluIEVTU0wgb3V0cHV0LiBUaGlzIGZs
YWcgY2FuIGJlIHVzZWQgdG8gZW11bGF0ZQpAQCAtNzk0LDYgKzc5NSwxMCBAQCBHTGVudW0gR2V0
VGVzc0dlblNwYWNpbmcoY29uc3QgU2hIYW5kbGUgaGFuZGxlKTsKIEdMZW51bSBHZXRUZXNzR2Vu
VmVydGV4T3JkZXIoY29uc3QgU2hIYW5kbGUgaGFuZGxlKTsKIEdMZW51bSBHZXRUZXNzR2VuUG9p
bnRNb2RlKGNvbnN0IFNoSGFuZGxlIGhhbmRsZSk7CiAKKy8vIFJldHVybnMgdGhlIGJsZW5kIGVx
dWF0aW9uIGxpc3Qgc3VwcG9ydGVkIGluIHRoZSBmcmFnbWVudCBzaGFkZXIuICBUaGlzIGlzIGEg
Yml0c2V0IG9mCisvLyBnbDo6QmxlbmRFcXVhdGlvblR5cGUsIGFuZCBjYW4gb25seSBpbmNsdWRl
IGJpdHMgZnJvbSBLSFJfYmxlbmRfZXF1YXRpb25fYWR2YW5jZWQuCit1aW50MzJfdCBHZXRBZHZh
bmNlZEJsZW5kRXF1YXRpb25zKGNvbnN0IFNoSGFuZGxlIGhhbmRsZSk7CisKIC8vCiAvLyBIZWxw
ZXIgZnVuY3Rpb24gdG8gaWRlbnRpZnkgc3BlY3MgdGhhdCBhcmUgYmFzZWQgb24gdGhlIFdlYkdM
IHNwZWMuCiAvLwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvaW5jbHVkZS9H
TFNMQU5HL1NoYWRlclZhcnMuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL2luY2x1ZGUvR0xT
TEFORy9TaGFkZXJWYXJzLmgKaW5kZXggMmZlY2RkMDJjM2U2ZjUzYTk0N2Q2YTQ2MTY2ODExZjU3
YTk5ZmYzZC4uMTgxNzVlMTVjNzZkMjE3OTE1ZjQ3ZGEwN2Y5MTA3NzgwMmU1YWRjZSAxMDA2NDQK
LS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvaW5jbHVkZS9HTFNMQU5HL1NoYWRlclZhcnMu
aAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9pbmNsdWRlL0dMU0xBTkcvU2hhZGVyVmFy
cy5oCkBAIC0xNSw3ICsxNSw3IEBACiAjaW5jbHVkZSA8c3RyaW5nPgogI2luY2x1ZGUgPHZlY3Rv
cj4KIAotLy8gVGhpcyB0eXBlIGlzIGRlZmluZWQgaGVyZSB0byBzaW1wbGlmeSBBTkdMRSdzIGlu
dGVncmF0aW9uIHdpdGggZ2xzbGFuZyBmb3IgU1BJUnYuCisvLyBUaGlzIHR5cGUgaXMgZGVmaW5l
ZCBoZXJlIHRvIHNpbXBsaWZ5IEFOR0xFJ3MgaW50ZWdyYXRpb24gd2l0aCBnbHNsYW5nIGZvciBT
UElSLVYuCiB1c2luZyBTaENvbXBpbGVPcHRpb25zID0gdWludDY0X3Q7CiAKIG5hbWVzcGFjZSBz
aApAQCAtMjE5LDcgKzIxOSw3IEBAIHN0cnVjdCBTaGFkZXJWYXJpYWJsZQogICAgIGJvb2wgcmVh
ZG9ubHk7CiAgICAgYm9vbCB3cml0ZW9ubHk7CiAKLSAgICAvLyBGcm9tIEVYVF9zaGFkZXJfZnJh
bWVidWZmZXJfZmV0Y2gKKyAgICAvLyBGcm9tIEVYVF9zaGFkZXJfZnJhbWVidWZmZXJfZmV0Y2gg
LyBLSFJfYmxlbmRfZXF1YXRpb25fYWR2YW5jZWQKICAgICBib29sIGlzRnJhZ21lbnRJbk91dDsK
IAogICAgIC8vIE91dHB1dFZhcmlhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9pbmNsdWRlL3BsYXRmb3JtL0ZlYXR1cmVzTXRsLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9pbmNsdWRlL3BsYXRmb3JtL0ZlYXR1cmVzTXRsLmgKaW5kZXggMTY1YmI0NzExMDUxNDdh
N2Y5YzIyYzM3OWE4M2FhMmIwODAyODVlZi4uYTg1Y2U5YjlhZDMzNjNmNzE5MTYyNjI3MjU4OWI0
YjNiMmVmMmRkNiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvaW5jbHVkZS9w
bGF0Zm9ybS9GZWF0dXJlc010bC5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL2luY2x1
ZGUvcGxhdGZvcm0vRmVhdHVyZXNNdGwuaApAQCAtMTI4LDYgKzEyOCwxMSBAQCBzdHJ1Y3QgRmVh
dHVyZXNNdGwgOiBGZWF0dXJlU2V0QmFzZQogICAgIEZlYXR1cmUgaW50ZWxEaXNhYmxlRmFzdE1h
dGggPSB7CiAgICAgICAgICJpbnRlbF9kaXNhYmxlX2Zhc3RfbWF0aCIsIEZlYXR1cmVDYXRlZ29y
eTo6TWV0YWxXb3JrYXJvdW5kcywKICAgICAgICAgIkRpc2FibGUgZmFzdCBtYXRoIGluIGF0YW4g
YW5kIGludmFyaWFuY2UgY2FzZXMgd2hlbiBydW5uaW5nIGJlbG93IG1hY09TIDEyLjAiLCAmbWVt
YmVyc307CisKKyAgICBGZWF0dXJlIG11bHRpc2FtcGxlQ29sb3JGb3JtYXRTaGFkZXJSZWFkV29y
a2Fyb3VuZCA9IHsKKyAgICAgICAgIm11bHRpc2FtcGxlX2NvbG9yX2Zvcm1hdF9zaGFkZXJfcmVh
ZF93b3JrYXJvdW5kIiwgRmVhdHVyZUNhdGVnb3J5OjpNZXRhbFdvcmthcm91bmRzLAorICAgICAg
ICAiQWRkIHNoYWRlclJlYWQgdXNhZ2UgdG8gc29tZSBtdWx0aXNhbXBsZWQgdGV4dHVyZSBmb3Jt
YXRzIiwgJm1lbWJlcnMsCisgICAgICAgICJodHRwOi8vYW5nbGVidWcuY29tLzcwNDkifTsKIH07
CiAKIH0gIC8vIG5hbWVzcGFjZSBhbmdsZQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvaW5jbHVkZS9wbGF0Zm9ybS9GZWF0dXJlc1ZrLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9pbmNsdWRlL3BsYXRmb3JtL0ZlYXR1cmVzVmsuaAppbmRleCBmYzBkYjRkYTk2YjJhNjQ3
ZDQ2Nzk3M2ViMjc2ZmYxZjQzOTIxMmEyLi5hMGY5ZGE1ZTY4NDlhYzc2NDQwOGRhNzUyNzEzMTIw
YWM0OTM1YjJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9pbmNsdWRlL3Bs
YXRmb3JtL0ZlYXR1cmVzVmsuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9pbmNsdWRl
L3BsYXRmb3JtL0ZlYXR1cmVzVmsuaApAQCAtMTAzLDE1ICsxMDMsMTUgQEAgc3RydWN0IEZlYXR1
cmVzVmsgOiBGZWF0dXJlU2V0QmFzZQogICAgICAgICAic3VwcG9ydHNGaWx0ZXJpbmdQcmVjaXNp
b24iLCBGZWF0dXJlQ2F0ZWdvcnk6OlZ1bGthbkZlYXR1cmVzLAogICAgICAgICAiVmtEZXZpY2Ug
c3VwcG9ydHMgdGhlIFZLX0dPT0dMRV9zYW1wbGVyX2ZpbHRlcmluZ19wcmVjaXNpb24gZXh0ZW5z
aW9uIiwgJm1lbWJlcnN9OwogCi0gICAgLy8gV2hldGhlciB0aGUgVmtEZXZpY2Ugc3VwcG9ydHMg
dGhlIFZLX0tIUl9leHRlcm5hbF9mZW5jZV9jYXBhYmlsaXRpZXMgZXh0ZW5zaW9uLgorICAgIC8v
IFdoZXRoZXIgdGhlIFZrSW5zdGFuY2Ugc3VwcG9ydHMgdGhlIFZLX0tIUl9leHRlcm5hbF9mZW5j
ZV9jYXBhYmlsaXRpZXMgZXh0ZW5zaW9uLgogICAgIEZlYXR1cmUgc3VwcG9ydHNFeHRlcm5hbEZl
bmNlQ2FwYWJpbGl0aWVzID0gewogICAgICAgICAic3VwcG9ydHNFeHRlcm5hbEZlbmNlQ2FwYWJp
bGl0aWVzIiwgRmVhdHVyZUNhdGVnb3J5OjpWdWxrYW5GZWF0dXJlcywKLSAgICAgICAgIlZrRGV2
aWNlIHN1cHBvcnRzIHRoZSBWS19LSFJfZXh0ZXJuYWxfZmVuY2VfY2FwYWJpbGl0aWVzIGV4dGVu
c2lvbiIsICZtZW1iZXJzfTsKKyAgICAgICAgIlZrSW5zdGFuY2Ugc3VwcG9ydHMgdGhlIFZLX0tI
Ul9leHRlcm5hbF9mZW5jZV9jYXBhYmlsaXRpZXMgZXh0ZW5zaW9uIiwgJm1lbWJlcnN9OwogCi0g
ICAgLy8gV2hldGhlciB0aGUgVmtEZXZpY2Ugc3VwcG9ydHMgdGhlIFZLX0tIUl9leHRlcm5hbF9z
ZW1hcGhvcmVfY2FwYWJpbGl0aWVzIGV4dGVuc2lvbi4KKyAgICAvLyBXaGV0aGVyIHRoZSBWa0lu
c3RhbmNlIHN1cHBvcnRzIHRoZSBWS19LSFJfZXh0ZXJuYWxfc2VtYXBob3JlX2NhcGFiaWxpdGll
cyBleHRlbnNpb24uCiAgICAgRmVhdHVyZSBzdXBwb3J0c0V4dGVybmFsU2VtYXBob3JlQ2FwYWJp
bGl0aWVzID0gewogICAgICAgICAic3VwcG9ydHNFeHRlcm5hbFNlbWFwaG9yZUNhcGFiaWxpdGll
cyIsIEZlYXR1cmVDYXRlZ29yeTo6VnVsa2FuRmVhdHVyZXMsCi0gICAgICAgICJWa0RldmljZSBz
dXBwb3J0cyB0aGUgVktfS0hSX2V4dGVybmFsX3NlbWFwaG9yZV9jYXBhYmlsaXRpZXMgZXh0ZW5z
aW9uIiwgJm1lbWJlcnN9OworICAgICAgICAiVmtJbnN0YW5jZSBzdXBwb3J0cyB0aGUgVktfS0hS
X2V4dGVybmFsX3NlbWFwaG9yZV9jYXBhYmlsaXRpZXMgZXh0ZW5zaW9uIiwgJm1lbWJlcnN9Owog
CiAgICAgLy8gV2hldGhlciB0aGUgVmtEZXZpY2Ugc3VwcG9ydHMgdGhlIFZLX0tIUl9leHRlcm5h
bF9zZW1hcGhvcmVfZmQgZXh0ZW5zaW9uLCBvbiB3aGljaCB0aGUKICAgICAvLyBHTF9FWFRfc2Vt
YXBob3JlX2ZkIGV4dGVuc2lvbiBjYW4gYmUgbGF5ZXJlZC4KQEAgLTQwNCw2ICs0MDQsMTMgQEAg
c3RydWN0IEZlYXR1cmVzVmsgOiBGZWF0dXJlU2V0QmFzZQogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICJWa0RldmljZSBzdXBwb3J0cyBWS19FWFRfZGVwdGhfY2xpcF9j
b250cm9sIGV4dGVuc2lvbi4iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICZtZW1iZXJzLCAiaHR0cDovL2FuZ2xlYnVnLmNvbS81NDIxIn07CiAKKyAgICAvLyBXaGV0
aGVyIHRoZSBWa0RldmljZSBzdXBwb3J0cyB0aGUgVktfRVhUX2JsZW5kX29wZXJhdGlvbl9hZHZh
bmNlZCBleHRlbnNpb24KKyAgICAvLyBodHRwOi8vYW5nbGVidWcuY29tLzM1ODYKKyAgICBGZWF0
dXJlIHN1cHBvcnRzQmxlbmRPcGVyYXRpb25BZHZhbmNlZCA9IHsKKyAgICAgICAgInN1cHBvcnRz
QmxlbmRPcGVyYXRpb25BZHZhbmNlZCIsIEZlYXR1cmVDYXRlZ29yeTo6VnVsa2FuRmVhdHVyZXMs
CisgICAgICAgICJWa0RldmljZSBzdXBwb3J0cyBWS19FWFRfYmxlbmRfb3BlcmF0aW9uX2FkdmFu
Y2VkIGV4dGVuc2lvbi4iLCAmbWVtYmVycywKKyAgICAgICAgImh0dHA6Ly9hbmdsZWJ1Zy5jb20v
MzU4NiJ9OworCiAgICAgLy8gRm9yY2UgbWF4VW5pZm9ybUJ1ZmZlclNpemUgdG8gMTZLIG9uIFF1
YWxjb21tJ3MgQWRyZW5vIDU0MC4gUGl4ZWwyJ3MgQWRyZW5vNTQwIHJlcG9ydHMKICAgICAvLyBt
YXhVbmlmb3JtQnVmZmVyU2l6ZSA2NGsgYnV0IHZhcmlvdXMgdGVzdHMgZmFpbGVkIHdpdGggdGhh
dCBzaXplLiBGb3IgdGhhdCBzcGVjaWZpYwogICAgIC8vIGRldmljZSwgd2Ugc2V0IHRvIDE2ayBm
b3Igbm93IHdoaWNoIGlzIGtub3duIHRvIHBhc3MgYWxsIHRlc3RzLgpAQCAtNTc4LDYgKzU4NSwx
MSBAQCBzdHJ1Y3QgRmVhdHVyZXNWayA6IEZlYXR1cmVTZXRCYXNlCiAgICAgICAgICJzdXBwb3J0
c1N1cmZhY2VQcm90ZWN0ZWRDYXBhYmlsaXRpZXNFeHRlbnNpb24iLCBGZWF0dXJlQ2F0ZWdvcnk6
OlZ1bGthbkZlYXR1cmVzLAogICAgICAgICAiVmtJbnN0YW5jZSBzdXBwb3J0cyB0aGUgVktfS0hS
X3N1cmZhY2VfcHJvdGVjdGVkX2NhcGFiaWxpdGllcyBleHRlbnNpb24iLCAmbWVtYmVyc307CiAK
KyAgICAvLyBXaGV0aGVyIHRoZSBWa0luc3RhbmNlIHN1cHBvcnRzIHRoZSBWS19HT09HTEVfc3Vy
ZmFjZWxlc3NfcXVlcnkgZXh0ZW5zaW9uLgorICAgIEZlYXR1cmUgc3VwcG9ydHNTdXJmYWNlbGVz
c1F1ZXJ5RXh0ZW5zaW9uID0geworICAgICAgICAic3VwcG9ydHNTdXJmYWNlbGVzc1F1ZXJ5RXh0
ZW5zaW9uIiwgRmVhdHVyZUNhdGVnb3J5OjpWdWxrYW5GZWF0dXJlcywKKyAgICAgICAgIlZrSW5z
dGFuY2Ugc3VwcG9ydHMgdGhlIFZLX0dPT0dMRV9zdXJmYWNlbGVzc19xdWVyeSBleHRlbnNpb24i
LCAmbWVtYmVyc307CisKICAgICAvLyBXaGV0aGVyIHRoZSBWa1N1cmZhY2Ugc3VwcG9ydHMgcHJv
dGVjdGVkIHN3YXBjaGFpbnMgZnJvbQogICAgIC8vIHN1cHBvcnRzU3VyZmFjZVByb3RlY3RlZENh
cGFiaWxpdGllc0V4dGVuc2lvbi4KICAgICBGZWF0dXJlIHN1cHBvcnRzU3VyZmFjZVByb3RlY3Rl
ZFN3YXBjaGFpbnMgPSB7CkBAIC02NDAsNiArNjUyLDExIEBAIHN0cnVjdCBGZWF0dXJlc1ZrIDog
RmVhdHVyZVNldEJhc2UKICAgICBGZWF0dXJlIHJldGFpblNwaXJ2RGVidWdJbmZvID0geyJyZXRh
aW5TcGlydkRlYnVnSW5mbyIsIEZlYXR1cmVDYXRlZ29yeTo6VnVsa2FuRmVhdHVyZXMsCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiUmV0YWluIGRlYnVnIGluZm8gaW4gU1BJ
Ui1WIGJsb2IuIiwgJm1lbWJlcnMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAiaHR0cDovL2FuZ2xlYnVnLmNvbS81OTAxIn07CisKKyAgICAvLyBXaGV0aGVyIHdlIGNyZWF0
ZSBhIFZ1bGthbiBwaXBlbGluZSB3aXRoICJkZWZhdWx0IiBzdGF0ZSBkdXJpbmcgZ2xMaW5rUHJv
Z3JhbQorICAgIEZlYXR1cmUgY3JlYXRlUGlwZWxpbmVEdXJpbmdMaW5rID0geyJjcmVhdGVQaXBl
bGluZUR1cmluZ0xpbmsiLCBGZWF0dXJlQ2F0ZWdvcnk6OlZ1bGthbkZlYXR1cmVzLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJDcmVhdGUgcGlwZWxpbmUgd2l0aCBk
ZWZhdWx0IHN0YXRlIGR1cmluZyBnbExpbmtQcm9ncmFtIiwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAmbWVtYmVycywgImh0dHA6Ly9hbmdsZWJ1Zy5jb20vNzA0NiJ9
OwogfTsKIAogaW5saW5lIEZlYXR1cmVzVms6OkZlYXR1cmVzVmsoKSAgPSBkZWZhdWx0OwpkaWZm
IC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvaW5mcmEvQU5HTEVXcmFuZ2xpbmcubWQg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9pbmZyYS9BTkdMRVdyYW5nbGluZy5tZAppbmRleCA3
OTk2OWZhNTFjZWY4NDAwMzQzMGVmNjczZmIzNmZlZjFmNWMxMWI3Li5lNGEwMDMxMDJkODM0Nzdi
Y2Y5Mjc0MTg0ODMyOTE0YjNlYzRmYzFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9pbmZyYS9BTkdMRVdyYW5nbGluZy5tZAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9pbmZyYS9BTkdMRVdyYW5nbGluZy5tZApAQCAtNCw3ICs0LDcgQEAgQXMgYW4gQU5HTEUgU2hl
cmlmZi4gWW91ciBqb2IgaXMgdG86CiAKICAxLiBLZWVwIHRoZSBbQU5HTEUgVHJ5IFdhdGVyZmFs
bF0oaHR0cHM6Ly9jaS5jaHJvbWl1bS5vcmcvcC9jaHJvbWl1bS9nL3RyeXNlcnZlci5jaHJvbWl1
bS5hbmdsZS9idWlsZGVycykgaW4gZ29vZAogICAgIHdvcmtpbmcgb3JkZXIuCi0gMS4gQ29udHJv
bCBhbmQgbW9uaXRvciB0aGUgW0FOR0xFIGF1dG8tcm9sbGVyc10oI3Rhc2stM190aGUtYXV0b19y
b2xsZXJzKS4KKyAxLiBDb250cm9sIGFuZCBtb25pdG9yIHRoZSBbQU5HTEUgYXV0by1yb2xsZXJz
XSgjdGhlLWF1dG8tcm9sbGVycykuCiAgMS4gS2VlcCB0aGUgW0FOR0xFIFN0YW5kYWxvbmUgVGVz
dGVyc10oUkVBRE1FLm1kKSBpbiBnb29kIHdvcmtpbmcgb3JkZXIuCiAgMS4gS2VlcCB0aGUgW1N3
QU5HTEUgVHJ5IFdhdGVyZmFsbF0oaHR0cHM6Ly9sdWNpLW1pbG8uYXBwc3BvdC5jb20vcC9jaHJv
bWl1bS9nL3RyeXNlcnZlci5jaHJvbWl1bS5zd2FuZ2xlL2J1aWxkZXJzKSBpbiBnb29kCiAgICAg
d29ya2luZyBvcmRlci4KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL2luZnJh
L2NvbmZpZy9nZW5lcmF0ZWQvY3ItYnVpbGRidWNrZXQuY2ZnIGIvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvaW5mcmEvY29uZmlnL2dlbmVyYXRlZC9jci1idWlsZGJ1Y2tldC5jZmcKaW5kZXggZjky
NDdmYzg5OTY4OWU2OTFkYTBiNTY5OWZiZWJhNTI3ODc3OTk2MS4uMDM3NDIyZGUzNzIyODA3OTgx
MjViZDJlYjU3ZTQzOWZkMmYwNDA4OCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvaW5mcmEvY29uZmlnL2dlbmVyYXRlZC9jci1idWlsZGJ1Y2tldC5jZmcKKysrIGIvU291cmNl
L1RoaXJkUGFydHkvQU5HTEUvaW5mcmEvY29uZmlnL2dlbmVyYXRlZC9jci1idWlsZGJ1Y2tldC5j
ZmcKQEAgLTQ2LDYgKzQ2LDEwIEBAIGJ1Y2tldHMgewogICAgICAgICAnfScKICAgICAgIGJ1aWxk
X251bWJlcnM6IFlFUwogICAgICAgc2VydmljZV9hY2NvdW50OiAiYW5nbGUtY2ktYnVpbGRlckBj
aG9wcy1zZXJ2aWNlLWFjY291bnRzLmlhbS5nc2VydmljZWFjY291bnQuY29tIgorICAgICAgZXhw
ZXJpbWVudHMgeworICAgICAgICBrZXk6ICJsdWNpLnJlY2lwZXMudXNlX3B5dGhvbjMiCisgICAg
ICAgIHZhbHVlOiAxMDAKKyAgICAgIH0KICAgICAgIHJlc3VsdGRiIHsKICAgICAgICAgZW5hYmxl
OiB0cnVlCiAgICAgICB9CkBAIC04Miw2ICs4NiwxMCBAQCBidWNrZXRzIHsKICAgICAgICAgJ30n
CiAgICAgICBidWlsZF9udW1iZXJzOiBZRVMKICAgICAgIHNlcnZpY2VfYWNjb3VudDogImFuZ2xl
LWNpLWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNv
bSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9w
eXRob24zIgorICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAg
ICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAtMTE4LDYgKzEyNiwxMCBAQCBidWNrZXRz
IHsKICAgICAgICAgJ30nCiAgICAgICBidWlsZF9udW1iZXJzOiBZRVMKICAgICAgIHNlcnZpY2Vf
YWNjb3VudDogImFuZ2xlLWNpLWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3Nl
cnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVj
aS5yZWNpcGVzLnVzZV9weXRob24zIgorICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAg
ICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAtMTU0LDYgKzE2
NiwxMCBAQCBidWNrZXRzIHsKICAgICAgICAgJ30nCiAgICAgICBidWlsZF9udW1iZXJzOiBZRVMK
ICAgICAgIHNlcnZpY2VfYWNjb3VudDogImFuZ2xlLWNpLWJ1aWxkZXJAY2hvcHMtc2VydmljZS1h
Y2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAg
ICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgorICAgICAgICB2YWx1ZTogMTAw
CisgICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAg
fQpAQCAtMTkwLDYgKzIwNiwxMCBAQCBidWNrZXRzIHsKICAgICAgICAgJ30nCiAgICAgICBidWls
ZF9udW1iZXJzOiBZRVMKICAgICAgIHNlcnZpY2VfYWNjb3VudDogImFuZ2xlLWNpLWJ1aWxkZXJA
Y2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4
cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgorICAg
ICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJs
ZTogdHJ1ZQogICAgICAgfQpAQCAtMjI2LDYgKzI0NiwxMCBAQCBidWNrZXRzIHsKICAgICAgICAg
J30nCiAgICAgICBidWlsZF9udW1iZXJzOiBZRVMKICAgICAgIHNlcnZpY2VfYWNjb3VudDogImFu
Z2xlLWNpLWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50
LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVz
ZV9weXRob24zIgorICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRkYiB7
CiAgICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAtMjY0LDYgKzI4OCwxMCBAQCBidWNr
ZXRzIHsKICAgICAgICAgJ30nCiAgICAgICBidWlsZF9udW1iZXJzOiBZRVMKICAgICAgIHNlcnZp
Y2VfYWNjb3VudDogImFuZ2xlLWNpLWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0u
Z3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAi
bHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgorICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAg
ICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAtMzAyLDYg
KzMzMCwxMCBAQCBidWNrZXRzIHsKICAgICAgICAgJ30nCiAgICAgICBidWlsZF9udW1iZXJzOiBZ
RVMKICAgICAgIHNlcnZpY2VfYWNjb3VudDogImFuZ2xlLWNpLWJ1aWxkZXJAY2hvcHMtc2Vydmlj
ZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRzIHsK
KyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgorICAgICAgICB2YWx1ZTog
MTAwCisgICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJsZTogdHJ1ZQogICAg
ICAgfQpAQCAtMzQwLDYgKzM3MiwxMCBAQCBidWNrZXRzIHsKICAgICAgICAgJ30nCiAgICAgICBi
dWlsZF9udW1iZXJzOiBZRVMKICAgICAgIHNlcnZpY2VfYWNjb3VudDogImFuZ2xlLWNpLWJ1aWxk
ZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAg
IGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgor
ICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVu
YWJsZTogdHJ1ZQogICAgICAgfQpAQCAtMzc4LDYgKzQxNCwxMCBAQCBidWNrZXRzIHsKICAgICAg
ICAgJ30nCiAgICAgICBidWlsZF9udW1iZXJzOiBZRVMKICAgICAgIHNlcnZpY2VfYWNjb3VudDog
ImFuZ2xlLWNpLWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2Nv
dW50LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVz
LnVzZV9weXRob24zIgorICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRk
YiB7CiAgICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAtNDE2LDYgKzQ1NiwxMCBAQCBi
dWNrZXRzIHsKICAgICAgICAgJ30nCiAgICAgICBidWlsZF9udW1iZXJzOiBZRVMKICAgICAgIHNl
cnZpY2VfYWNjb3VudDogImFuZ2xlLWNpLWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5p
YW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5
OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgorICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9
CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAtNDU0
LDYgKzQ5OCwxMCBAQCBidWNrZXRzIHsKICAgICAgICAgJ30nCiAgICAgICBidWlsZF9udW1iZXJz
OiBZRVMKICAgICAgIHNlcnZpY2VfYWNjb3VudDogImFuZ2xlLWNpLWJ1aWxkZXJAY2hvcHMtc2Vy
dmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRz
IHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgorICAgICAgICB2YWx1
ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJsZTogdHJ1ZQog
ICAgICAgfQpAQCAtNDkyLDYgKzU0MCwxMCBAQCBidWNrZXRzIHsKICAgICAgICAgJ30nCiAgICAg
ICBidWlsZF9udW1iZXJzOiBZRVMKICAgICAgIHNlcnZpY2VfYWNjb3VudDogImFuZ2xlLWNpLWJ1
aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAg
ICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24z
IgorICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAg
IGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAtNTMwLDYgKzU4MiwxMCBAQCBidWNrZXRzIHsKICAg
ICAgICAgJ30nCiAgICAgICBidWlsZF9udW1iZXJzOiBZRVMKICAgICAgIHNlcnZpY2VfYWNjb3Vu
dDogImFuZ2xlLWNpLWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2Vh
Y2NvdW50LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNp
cGVzLnVzZV9weXRob24zIgorICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1
bHRkYiB7CiAgICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAtNTY2LDYgKzYyMiwxMCBA
QCBidWNrZXRzIHsKICAgICAgICAgJ30nCiAgICAgICBidWlsZF9udW1iZXJzOiBZRVMKICAgICAg
IHNlcnZpY2VfYWNjb3VudDogImFuZ2xlLWNpLWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50
cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAg
a2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgorICAgICAgICB2YWx1ZTogMTAwCisgICAg
ICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAt
NjAyLDYgKzY2MiwxMCBAQCBidWNrZXRzIHsKICAgICAgICAgJ30nCiAgICAgICBidWlsZF9udW1i
ZXJzOiBZRVMKICAgICAgIHNlcnZpY2VfYWNjb3VudDogImFuZ2xlLWNpLWJ1aWxkZXJAY2hvcHMt
c2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4cGVyaW1l
bnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgorICAgICAgICB2
YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJsZTogdHJ1
ZQogICAgICAgfQpAQCAtNjM4LDYgKzcwMiwxMCBAQCBidWNrZXRzIHsKICAgICAgICAgJ30nCiAg
ICAgICBidWlsZF9udW1iZXJzOiBZRVMKICAgICAgIHNlcnZpY2VfYWNjb3VudDogImFuZ2xlLWNp
LWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIK
KyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRo
b24zIgorICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAg
ICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAtNjc2LDYgKzc0NCwxMCBAQCBidWNrZXRzIHsK
ICAgICAgICAgJ30nCiAgICAgICBidWlsZF9udW1iZXJzOiBZRVMKICAgICAgIHNlcnZpY2VfYWNj
b3VudDogImFuZ2xlLWNpLWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZp
Y2VhY2NvdW50LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5y
ZWNpcGVzLnVzZV9weXRob24zIgorICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAgICBy
ZXN1bHRkYiB7CiAgICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAtNzE0LDYgKzc4Niwx
MCBAQCBidWNrZXRzIHsKICAgICAgICAgJ30nCiAgICAgICBidWlsZF9udW1iZXJzOiBZRVMKICAg
ICAgIHNlcnZpY2VfYWNjb3VudDogImFuZ2xlLWNpLWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2Nv
dW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAg
ICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgorICAgICAgICB2YWx1ZTogMTAwCisg
ICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpA
QCAtNzUyLDYgKzgyOCwxMCBAQCBidWNrZXRzIHsKICAgICAgICAgJ30nCiAgICAgICBidWlsZF9u
dW1iZXJzOiBZRVMKICAgICAgIHNlcnZpY2VfYWNjb3VudDogImFuZ2xlLWNpLWJ1aWxkZXJAY2hv
cHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4cGVy
aW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgorICAgICAg
ICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJsZTog
dHJ1ZQogICAgICAgfQpAQCAtNzkwLDYgKzg3MCwxMCBAQCBidWNrZXRzIHsKICAgICAgICAgJ30n
CiAgICAgICBidWlsZF9udW1iZXJzOiBZRVMKICAgICAgIHNlcnZpY2VfYWNjb3VudDogImFuZ2xl
LWNpLWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNv
bSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9w
eXRob24zIgorICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAg
ICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAtODI4LDYgKzkxMiwxMCBAQCBidWNrZXRz
IHsKICAgICAgICAgJ30nCiAgICAgICBidWlsZF9udW1iZXJzOiBZRVMKICAgICAgIHNlcnZpY2Vf
YWNjb3VudDogImFuZ2xlLWNpLWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3Nl
cnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVj
aS5yZWNpcGVzLnVzZV9weXRob24zIgorICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAg
ICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAtODY2LDYgKzk1
NCwxMCBAQCBidWNrZXRzIHsKICAgICAgICAgJ30nCiAgICAgICBidWlsZF9udW1iZXJzOiBZRVMK
ICAgICAgIHNlcnZpY2VfYWNjb3VudDogImFuZ2xlLWNpLWJ1aWxkZXJAY2hvcHMtc2VydmljZS1h
Y2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAg
ICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgorICAgICAgICB2YWx1ZTogMTAw
CisgICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAg
fQpAQCAtOTA0LDYgKzk5NiwxMCBAQCBidWNrZXRzIHsKICAgICAgICAgJ30nCiAgICAgICBidWls
ZF9udW1iZXJzOiBZRVMKICAgICAgIHNlcnZpY2VfYWNjb3VudDogImFuZ2xlLWNpLWJ1aWxkZXJA
Y2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4
cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgorICAg
ICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJs
ZTogdHJ1ZQogICAgICAgfQpAQCAtOTQyLDYgKzEwMzgsMTAgQEAgYnVja2V0cyB7CiAgICAgICAg
ICd9JwogICAgICAgYnVpbGRfbnVtYmVyczogWUVTCiAgICAgICBzZXJ2aWNlX2FjY291bnQ6ICJh
bmdsZS1jaS1idWlsZGVyQGNob3BzLXNlcnZpY2UtYWNjb3VudHMuaWFtLmdzZXJ2aWNlYWNjb3Vu
dC5jb20iCisgICAgICBleHBlcmltZW50cyB7CisgICAgICAgIGtleTogImx1Y2kucmVjaXBlcy51
c2VfcHl0aG9uMyIKKyAgICAgICAgdmFsdWU6IDEwMAorICAgICAgfQogICAgICAgcmVzdWx0ZGIg
ewogICAgICAgICBlbmFibGU6IHRydWUKICAgICAgIH0KQEAgLTk4MCw2ICsxMDgwLDEwIEBAIGJ1
Y2tldHMgewogICAgICAgICAnfScKICAgICAgIGJ1aWxkX251bWJlcnM6IFlFUwogICAgICAgc2Vy
dmljZV9hY2NvdW50OiAiYW5nbGUtY2ktYnVpbGRlckBjaG9wcy1zZXJ2aWNlLWFjY291bnRzLmlh
bS5nc2VydmljZWFjY291bnQuY29tIgorICAgICAgZXhwZXJpbWVudHMgeworICAgICAgICBrZXk6
ICJsdWNpLnJlY2lwZXMudXNlX3B5dGhvbjMiCisgICAgICAgIHZhbHVlOiAxMDAKKyAgICAgIH0K
ICAgICAgIHJlc3VsdGRiIHsKICAgICAgICAgZW5hYmxlOiB0cnVlCiAgICAgICB9CkBAIC0xMDE4
LDYgKzExMjIsMTAgQEAgYnVja2V0cyB7CiAgICAgICAgICd9JwogICAgICAgYnVpbGRfbnVtYmVy
czogWUVTCiAgICAgICBzZXJ2aWNlX2FjY291bnQ6ICJhbmdsZS1jaS1idWlsZGVyQGNob3BzLXNl
cnZpY2UtYWNjb3VudHMuaWFtLmdzZXJ2aWNlYWNjb3VudC5jb20iCisgICAgICBleHBlcmltZW50
cyB7CisgICAgICAgIGtleTogImx1Y2kucmVjaXBlcy51c2VfcHl0aG9uMyIKKyAgICAgICAgdmFs
dWU6IDEwMAorICAgICAgfQogICAgICAgcmVzdWx0ZGIgewogICAgICAgICBlbmFibGU6IHRydWUK
ICAgICAgIH0KQEAgLTEwNTYsNiArMTE2NCwxMCBAQCBidWNrZXRzIHsKICAgICAgICAgJ30nCiAg
ICAgICBidWlsZF9udW1iZXJzOiBZRVMKICAgICAgIHNlcnZpY2VfYWNjb3VudDogImFuZ2xlLWNp
LWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIK
KyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRo
b24zIgorICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAg
ICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAtMTA5NCw2ICsxMjA2LDEwIEBAIGJ1Y2tldHMg
ewogICAgICAgICAnfScKICAgICAgIGJ1aWxkX251bWJlcnM6IFlFUwogICAgICAgc2VydmljZV9h
Y2NvdW50OiAiYW5nbGUtY2ktYnVpbGRlckBjaG9wcy1zZXJ2aWNlLWFjY291bnRzLmlhbS5nc2Vy
dmljZWFjY291bnQuY29tIgorICAgICAgZXhwZXJpbWVudHMgeworICAgICAgICBrZXk6ICJsdWNp
LnJlY2lwZXMudXNlX3B5dGhvbjMiCisgICAgICAgIHZhbHVlOiAxMDAKKyAgICAgIH0KICAgICAg
IHJlc3VsdGRiIHsKICAgICAgICAgZW5hYmxlOiB0cnVlCiAgICAgICB9CkBAIC0xMTMyLDYgKzEy
NDgsMTAgQEAgYnVja2V0cyB7CiAgICAgICAgICd9JwogICAgICAgYnVpbGRfbnVtYmVyczogWUVT
CiAgICAgICBzZXJ2aWNlX2FjY291bnQ6ICJhbmdsZS1jaS1idWlsZGVyQGNob3BzLXNlcnZpY2Ut
YWNjb3VudHMuaWFtLmdzZXJ2aWNlYWNjb3VudC5jb20iCisgICAgICBleHBlcmltZW50cyB7Cisg
ICAgICAgIGtleTogImx1Y2kucmVjaXBlcy51c2VfcHl0aG9uMyIKKyAgICAgICAgdmFsdWU6IDEw
MAorICAgICAgfQogICAgICAgcmVzdWx0ZGIgewogICAgICAgICBlbmFibGU6IHRydWUKICAgICAg
IH0KQEAgLTExNzAsNiArMTI5MCwxMCBAQCBidWNrZXRzIHsKICAgICAgICAgJ30nCiAgICAgICBi
dWlsZF9udW1iZXJzOiBZRVMKICAgICAgIHNlcnZpY2VfYWNjb3VudDogImFuZ2xlLWNpLWJ1aWxk
ZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAg
IGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgor
ICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVu
YWJsZTogdHJ1ZQogICAgICAgfQpAQCAtMTIyMiw2ICsxMzQ2LDEwIEBAIGJ1Y2tldHMgewogICAg
ICAgICAnfScKICAgICAgIGJ1aWxkX251bWJlcnM6IFlFUwogICAgICAgc2VydmljZV9hY2NvdW50
OiAiYW5nbGUtdHJ5LWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2Vh
Y2NvdW50LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNp
cGVzLnVzZV9weXRob24zIgorICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1
bHRkYiB7CiAgICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAtMTI1OCw2ICsxMzg2LDEw
IEBAIGJ1Y2tldHMgewogICAgICAgICAnfScKICAgICAgIGJ1aWxkX251bWJlcnM6IFlFUwogICAg
ICAgc2VydmljZV9hY2NvdW50OiAiYW5nbGUtdHJ5LWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2Nv
dW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAg
ICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgorICAgICAgICB2YWx1ZTogMTAwCisg
ICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpA
QCAtMTI5NCw2ICsxNDI2LDEwIEBAIGJ1Y2tldHMgewogICAgICAgICAnfScKICAgICAgIGJ1aWxk
X251bWJlcnM6IFlFUwogICAgICAgc2VydmljZV9hY2NvdW50OiAiYW5nbGUtdHJ5LWJ1aWxkZXJA
Y2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4
cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgorICAg
ICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJs
ZTogdHJ1ZQogICAgICAgfQpAQCAtMTMzMCw2ICsxNDY2LDEwIEBAIGJ1Y2tldHMgewogICAgICAg
ICAnfScKICAgICAgIGJ1aWxkX251bWJlcnM6IFlFUwogICAgICAgc2VydmljZV9hY2NvdW50OiAi
YW5nbGUtdHJ5LWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2Nv
dW50LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVz
LnVzZV9weXRob24zIgorICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRk
YiB7CiAgICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAtMTM2Niw2ICsxNTA2LDEwIEBA
IGJ1Y2tldHMgewogICAgICAgICAnfScKICAgICAgIGJ1aWxkX251bWJlcnM6IFlFUwogICAgICAg
c2VydmljZV9hY2NvdW50OiAiYW5nbGUtdHJ5LWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50
cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAg
a2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgorICAgICAgICB2YWx1ZTogMTAwCisgICAg
ICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAt
MTQwNCw2ICsxNTQ4LDEwIEBAIGJ1Y2tldHMgewogICAgICAgICAnfScKICAgICAgIGJ1aWxkX251
bWJlcnM6IFlFUwogICAgICAgc2VydmljZV9hY2NvdW50OiAiYW5nbGUtdHJ5LWJ1aWxkZXJAY2hv
cHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4cGVy
aW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgorICAgICAg
ICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJsZTog
dHJ1ZQogICAgICAgfQpAQCAtMTQ0Miw2ICsxNTkwLDEwIEBAIGJ1Y2tldHMgewogICAgICAgICAn
fScKICAgICAgIGJ1aWxkX251bWJlcnM6IFlFUwogICAgICAgc2VydmljZV9hY2NvdW50OiAiYW5n
bGUtdHJ5LWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50
LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVz
ZV9weXRob24zIgorICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRkYiB7
CiAgICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAtMTQ4MCw2ICsxNjMyLDEwIEBAIGJ1
Y2tldHMgewogICAgICAgICAnfScKICAgICAgIGJ1aWxkX251bWJlcnM6IFlFUwogICAgICAgc2Vy
dmljZV9hY2NvdW50OiAiYW5nbGUtdHJ5LWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5p
YW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5
OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgorICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9
CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAtMTUx
OCw2ICsxNjc0LDEwIEBAIGJ1Y2tldHMgewogICAgICAgICAnfScKICAgICAgIGJ1aWxkX251bWJl
cnM6IFlFUwogICAgICAgc2VydmljZV9hY2NvdW50OiAiYW5nbGUtdHJ5LWJ1aWxkZXJAY2hvcHMt
c2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4cGVyaW1l
bnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgorICAgICAgICB2
YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJsZTogdHJ1
ZQogICAgICAgfQpAQCAtMTU1Niw2ICsxNzE2LDEwIEBAIGJ1Y2tldHMgewogICAgICAgICAnfScK
ICAgICAgIGJ1aWxkX251bWJlcnM6IFlFUwogICAgICAgc2VydmljZV9hY2NvdW50OiAiYW5nbGUt
dHJ5LWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNv
bSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9w
eXRob24zIgorICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAg
ICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAtMTU5NCw2ICsxNzU4LDEwIEBAIGJ1Y2tl
dHMgewogICAgICAgICAnfScKICAgICAgIGJ1aWxkX251bWJlcnM6IFlFUwogICAgICAgc2Vydmlj
ZV9hY2NvdW50OiAiYW5nbGUtdHJ5LWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0u
Z3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAi
bHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgorICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAg
ICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAtMTYzMCw2
ICsxNzk4LDEwIEBAIGJ1Y2tldHMgewogICAgICAgICAnfScKICAgICAgIGJ1aWxkX251bWJlcnM6
IFlFUwogICAgICAgc2VydmljZV9hY2NvdW50OiAiYW5nbGUtdHJ5LWJ1aWxkZXJAY2hvcHMtc2Vy
dmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRz
IHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgorICAgICAgICB2YWx1
ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJsZTogdHJ1ZQog
ICAgICAgfQpAQCAtMTY2Niw2ICsxODM4LDEwIEBAIGJ1Y2tldHMgewogICAgICAgICAnfScKICAg
ICAgIGJ1aWxkX251bWJlcnM6IFlFUwogICAgICAgc2VydmljZV9hY2NvdW50OiAiYW5nbGUtdHJ5
LWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIK
KyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRo
b24zIgorICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAg
ICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAtMTcwMiw2ICsxODc4LDEwIEBAIGJ1Y2tldHMg
ewogICAgICAgICAnfScKICAgICAgIGJ1aWxkX251bWJlcnM6IFlFUwogICAgICAgc2VydmljZV9h
Y2NvdW50OiAiYW5nbGUtdHJ5LWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3Nl
cnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVj
aS5yZWNpcGVzLnVzZV9weXRob24zIgorICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAg
ICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAtMTc3NCw2ICsx
OTU0LDEwIEBAIGJ1Y2tldHMgewogICAgICAgICAnfScKICAgICAgIGJ1aWxkX251bWJlcnM6IFlF
UwogICAgICAgc2VydmljZV9hY2NvdW50OiAiYW5nbGUtdHJ5LWJ1aWxkZXJAY2hvcHMtc2Vydmlj
ZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRzIHsK
KyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgorICAgICAgICB2YWx1ZTog
MTAwCisgICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJsZTogdHJ1ZQogICAg
ICAgfQpAQCAtMTgxMiw2ICsxOTk2LDEwIEBAIGJ1Y2tldHMgewogICAgICAgICAnfScKICAgICAg
IGJ1aWxkX251bWJlcnM6IFlFUwogICAgICAgc2VydmljZV9hY2NvdW50OiAiYW5nbGUtdHJ5LWJ1
aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAg
ICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24z
IgorICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAg
IGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAtMTg1MCw2ICsyMDM4LDEwIEBAIGJ1Y2tldHMgewog
ICAgICAgICAnfScKICAgICAgIGJ1aWxkX251bWJlcnM6IFlFUwogICAgICAgc2VydmljZV9hY2Nv
dW50OiAiYW5nbGUtdHJ5LWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZp
Y2VhY2NvdW50LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5y
ZWNpcGVzLnVzZV9weXRob24zIgorICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAgICBy
ZXN1bHRkYiB7CiAgICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAtMTg4OCw2ICsyMDgw
LDEwIEBAIGJ1Y2tldHMgewogICAgICAgICAnfScKICAgICAgIGJ1aWxkX251bWJlcnM6IFlFUwog
ICAgICAgc2VydmljZV9hY2NvdW50OiAiYW5nbGUtdHJ5LWJ1aWxkZXJAY2hvcHMtc2VydmljZS1h
Y2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAg
ICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgorICAgICAgICB2YWx1ZTogMTAw
CisgICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAg
fQpAQCAtMTkyNiw2ICsyMTIyLDEwIEBAIGJ1Y2tldHMgewogICAgICAgICAnfScKICAgICAgIGJ1
aWxkX251bWJlcnM6IFlFUwogICAgICAgc2VydmljZV9hY2NvdW50OiAiYW5nbGUtdHJ5LWJ1aWxk
ZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAg
IGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgor
ICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVu
YWJsZTogdHJ1ZQogICAgICAgfQpAQCAtMTk2NCw2ICsyMTY0LDEwIEBAIGJ1Y2tldHMgewogICAg
ICAgICAnfScKICAgICAgIGJ1aWxkX251bWJlcnM6IFlFUwogICAgICAgc2VydmljZV9hY2NvdW50
OiAiYW5nbGUtdHJ5LWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2Vh
Y2NvdW50LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNp
cGVzLnVzZV9weXRob24zIgorICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1
bHRkYiB7CiAgICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAtMjAwMiw2ICsyMjA2LDEw
IEBAIGJ1Y2tldHMgewogICAgICAgICAnfScKICAgICAgIGJ1aWxkX251bWJlcnM6IFlFUwogICAg
ICAgc2VydmljZV9hY2NvdW50OiAiYW5nbGUtdHJ5LWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2Nv
dW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAg
ICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgorICAgICAgICB2YWx1ZTogMTAwCisg
ICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpA
QCAtMjA0MCw2ICsyMjQ4LDEwIEBAIGJ1Y2tldHMgewogICAgICAgICAnfScKICAgICAgIGJ1aWxk
X251bWJlcnM6IFlFUwogICAgICAgc2VydmljZV9hY2NvdW50OiAiYW5nbGUtdHJ5LWJ1aWxkZXJA
Y2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4
cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgorICAg
ICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJs
ZTogdHJ1ZQogICAgICAgfQpAQCAtMjA3OCw2ICsyMjkwLDEwIEBAIGJ1Y2tldHMgewogICAgICAg
ICAnfScKICAgICAgIGJ1aWxkX251bWJlcnM6IFlFUwogICAgICAgc2VydmljZV9hY2NvdW50OiAi
YW5nbGUtdHJ5LWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2Nv
dW50LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVz
LnVzZV9weXRob24zIgorICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRk
YiB7CiAgICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAtMjExNiw2ICsyMzMyLDEwIEBA
IGJ1Y2tldHMgewogICAgICAgICAnfScKICAgICAgIGJ1aWxkX251bWJlcnM6IFlFUwogICAgICAg
c2VydmljZV9hY2NvdW50OiAiYW5nbGUtdHJ5LWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50
cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAg
a2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgorICAgICAgICB2YWx1ZTogMTAwCisgICAg
ICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpAQCAt
MjE1NCw2ICsyMzc0LDEwIEBAIGJ1Y2tldHMgewogICAgICAgICAnfScKICAgICAgIGJ1aWxkX251
bWJlcnM6IFlFUwogICAgICAgc2VydmljZV9hY2NvdW50OiAiYW5nbGUtdHJ5LWJ1aWxkZXJAY2hv
cHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgIGV4cGVy
aW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVzZV9weXRob24zIgorICAgICAg
ICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRkYiB7CiAgICAgICAgIGVuYWJsZTog
dHJ1ZQogICAgICAgfQpAQCAtMjE5Miw2ICsyNDE2LDEwIEBAIGJ1Y2tldHMgewogICAgICAgICAn
fScKICAgICAgIGJ1aWxkX251bWJlcnM6IFlFUwogICAgICAgc2VydmljZV9hY2NvdW50OiAiYW5n
bGUtdHJ5LWJ1aWxkZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50
LmNvbSIKKyAgICAgIGV4cGVyaW1lbnRzIHsKKyAgICAgICAga2V5OiAibHVjaS5yZWNpcGVzLnVz
ZV9weXRob24zIgorICAgICAgICB2YWx1ZTogMTAwCisgICAgICB9CiAgICAgICByZXN1bHRkYiB7
CiAgICAgICAgIGVuYWJsZTogdHJ1ZQogICAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvaW5mcmEvY29uZmlnL21haW4uc3RhciBiL1NvdXJjZS9UaGlyZFBhcnR5L0FO
R0xFL2luZnJhL2NvbmZpZy9tYWluLnN0YXIKaW5kZXggZjRmYzgxZjM0NTI5ZjE1YzI2MzM2OGM0
MTFkZjk4MWMwYmM3OGQ5Ny4uNmMxMmE2Zjk5MWViZGIwNzc3YTgzNWJmZDk0NTdjOTdiMGEyNDRl
YSAxMDA3NTUKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvaW5mcmEvY29uZmlnL21haW4u
c3RhcgorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9pbmZyYS9jb25maWcvbWFpbi5zdGFy
CkBAIC0xNjUsNiArMTY1LDcgQEAgYnVpbGRfcmVjaXBlID0gX3JlY2lwZV9mb3JfcGFja2FnZSgK
IAogYnVpbGRfcmVjaXBlKAogICAgIG5hbWUgPSAicmVjaXBlOmFuZ2xlIiwKKyAgICB1c2VfcHl0
aG9uMyA9IFRydWUsCiApCiAKIGJ1aWxkX3JlY2lwZSgKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL2luZnJhL3NwZWNzL2FuZ2xlLmpzb24gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9pbmZyYS9zcGVjcy9hbmdsZS5qc29uCmluZGV4IDFkNzhkYWNmNDRiMDlmZGZmYTU1ZjJk
MGY0OTdkYTYyZGUzNTZjM2UuLjQ5MjU1YjMxMzIzZGU0OWQwYzJiZDJmZTAxOWMzZWUxNGI4NWEy
NDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL2luZnJhL3NwZWNzL2FuZ2xl
Lmpzb24KKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvaW5mcmEvc3BlY3MvYW5nbGUuanNv
bgpAQCAtNDg1LDcgKzQ4NSw4IEBACiAgICAgICB7CiAgICAgICAgICJhcmdzIjogWwogICAgICAg
ICAgICItLWxvZz1kZWJ1ZyIsCi0gICAgICAgICAgIi0tc21va2UtdGVzdC1tb2RlIgorICAgICAg
ICAgICItLXNtb2tlLXRlc3QtbW9kZSIsCisgICAgICAgICAgIi0tc2hvdy10ZXN0LXN0ZG91dCIK
ICAgICAgICAgXSwKICAgICAgICAgImlzb2xhdGVfbmFtZSI6ICJhbmdsZV9wZXJmdGVzdHMiLAog
ICAgICAgICAibWVyZ2UiOiB7CkBAIC01NjcsNyArNTY4LDggQEAKICAgICAiaXNvbGF0ZWRfc2Ny
aXB0cyI6IFsKICAgICAgIHsKICAgICAgICAgImFyZ3MiOiBbCi0gICAgICAgICAgIi0tbG9nPWRl
YnVnIgorICAgICAgICAgICItLWxvZz1kZWJ1ZyIsCisgICAgICAgICAgIi0tc2hvdy10ZXN0LXN0
ZG91dCIKICAgICAgICAgXSwKICAgICAgICAgImlzb2xhdGVfbmFtZSI6ICJhbmdsZV9wZXJmdGVz
dHMiLAogICAgICAgICAibWVyZ2UiOiB7CkBAIC0xMDkyLDcgKzEwOTQsOCBAQAogICAgICAgewog
ICAgICAgICAiYXJncyI6IFsKICAgICAgICAgICAiLS1sb2c9ZGVidWciLAotICAgICAgICAgICIt
LXNtb2tlLXRlc3QtbW9kZSIKKyAgICAgICAgICAiLS1zbW9rZS10ZXN0LW1vZGUiLAorICAgICAg
ICAgICItLXNob3ctdGVzdC1zdGRvdXQiCiAgICAgICAgIF0sCiAgICAgICAgICJpc29sYXRlX25h
bWUiOiAiYW5nbGVfcGVyZnRlc3RzIiwKICAgICAgICAgIm1lcmdlIjogewpAQCAtMTE1NSw3ICsx
MTU4LDggQEAKICAgICAiaXNvbGF0ZWRfc2NyaXB0cyI6IFsKICAgICAgIHsKICAgICAgICAgImFy
Z3MiOiBbCi0gICAgICAgICAgIi0tbG9nPWRlYnVnIgorICAgICAgICAgICItLWxvZz1kZWJ1ZyIs
CisgICAgICAgICAgIi0tc2hvdy10ZXN0LXN0ZG91dCIKICAgICAgICAgXSwKICAgICAgICAgImlz
b2xhdGVfbmFtZSI6ICJhbmdsZV9wZXJmdGVzdHMiLAogICAgICAgICAibWVyZ2UiOiB7CkBAIC0x
NzQwLDcgKzE3NDQsOCBAQAogICAgICAgewogICAgICAgICAiYXJncyI6IFsKICAgICAgICAgICAi
LS1sb2c9ZGVidWciLAotICAgICAgICAgICItLXNtb2tlLXRlc3QtbW9kZSIKKyAgICAgICAgICAi
LS1zbW9rZS10ZXN0LW1vZGUiLAorICAgICAgICAgICItLXNob3ctdGVzdC1zdGRvdXQiCiAgICAg
ICAgIF0sCiAgICAgICAgICJpc29sYXRlX25hbWUiOiAiYW5nbGVfcGVyZnRlc3RzIiwKICAgICAg
ICAgIm1lcmdlIjogewpAQCAtMTgwMiw3ICsxODA3LDggQEAKICAgICAiaXNvbGF0ZWRfc2NyaXB0
cyI6IFsKICAgICAgIHsKICAgICAgICAgImFyZ3MiOiBbCi0gICAgICAgICAgIi0tbG9nPWRlYnVn
IgorICAgICAgICAgICItLWxvZz1kZWJ1ZyIsCisgICAgICAgICAgIi0tc2hvdy10ZXN0LXN0ZG91
dCIKICAgICAgICAgXSwKICAgICAgICAgImlzb2xhdGVfbmFtZSI6ICJhbmdsZV9wZXJmdGVzdHMi
LAogICAgICAgICAibWVyZ2UiOiB7CkBAIC0yMjQ5LDYgKzIyNTUsMzYgQEAKICAgICAgICAgInRl
c3QiOiAiYW5nbGVfZW5kMmVuZF90ZXN0cyIsCiAgICAgICAgICJ0ZXN0X2lkX3ByZWZpeCI6ICJu
aW5qYTovL3NyYy90ZXN0czphbmdsZV9lbmQyZW5kX3Rlc3RzLyIsCiAgICAgICAgICJ1c2VfaXNv
bGF0ZWRfc2NyaXB0c19hcGkiOiB0cnVlCisgICAgICB9LAorICAgICAgeworICAgICAgICAiYXJn
cyI6IFsKKyAgICAgICAgICAiYW5nbGVfd2hpdGVfYm94X3Rlc3RzIiwKKyAgICAgICAgICAiLS1i
b3QtbW9kZSIsCisgICAgICAgICAgIi0tZ3Rlc3RfZmlsdGVyPSpWdWxrYW5fU3dpZnRTaGFkZXIq
IiwKKyAgICAgICAgICAiLS14dmZiIgorICAgICAgICBdLAorICAgICAgICAibWVyZ2UiOiB7Cisg
ICAgICAgICAgImFyZ3MiOiBbXSwKKyAgICAgICAgICAic2NyaXB0IjogIi8vdGVzdGluZy9tZXJn
ZV9zY3JpcHRzL3N0YW5kYXJkX2lzb2xhdGVkX3NjcmlwdF9tZXJnZS5weSIKKyAgICAgICAgfSwK
KyAgICAgICAgInN3YXJtaW5nIjogeworICAgICAgICAgICJjYW5fdXNlX29uX3N3YXJtaW5nX2J1
aWxkZXJzIjogdHJ1ZSwKKyAgICAgICAgICAiY29udGFpbm1lbnRfdHlwZSI6ICJBVVRPIiwKKyAg
ICAgICAgICAiZGltZW5zaW9uX3NldHMiOiBbCisgICAgICAgICAgICB7CisgICAgICAgICAgICAg
ICJjcHUiOiAieDg2LTY0IiwKKyAgICAgICAgICAgICAgImdwdSI6ICJub25lIiwKKyAgICAgICAg
ICAgICAgIm9zIjogIlVidW50dS0xOC4wNCIsCisgICAgICAgICAgICAgICJwb29sIjogImNocm9t
aXVtLnRlc3RzLmdwdSIKKyAgICAgICAgICAgIH0KKyAgICAgICAgICBdLAorICAgICAgICAgICJo
YXJkX3RpbWVvdXQiOiA5MDAsCisgICAgICAgICAgImlvX3RpbWVvdXQiOiA5MDAsCisgICAgICAg
ICAgInNlcnZpY2VfYWNjb3VudCI6ICJjaHJvbWl1bS10ZXN0ZXJAY2hvcHMtc2VydmljZS1hY2Nv
dW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgICAgfSwKKyAgICAgICAgInRlc3Qi
OiAiYW5nbGVfd2hpdGVfYm94X3Rlc3RzIiwKKyAgICAgICAgInRlc3RfaWRfcHJlZml4IjogIm5p
bmphOi8vc3JjL3Rlc3RzOmFuZ2xlX3doaXRlX2JveF90ZXN0cy8iLAorICAgICAgICAidXNlX2lz
b2xhdGVkX3NjcmlwdHNfYXBpIjogdHJ1ZQogICAgICAgfQogICAgIF0sCiAgICAgImlzb2xhdGVk
X3NjcmlwdHMiOiBbCkBAIC0yNzE1LDYgKzI3NTEsMzYgQEAKICAgICAgICAgInRlc3QiOiAiYW5n
bGVfZW5kMmVuZF90ZXN0cyIsCiAgICAgICAgICJ0ZXN0X2lkX3ByZWZpeCI6ICJuaW5qYTovL3Ny
Yy90ZXN0czphbmdsZV9lbmQyZW5kX3Rlc3RzLyIsCiAgICAgICAgICJ1c2VfaXNvbGF0ZWRfc2Ny
aXB0c19hcGkiOiB0cnVlCisgICAgICB9LAorICAgICAgeworICAgICAgICAiYXJncyI6IFsKKyAg
ICAgICAgICAiYW5nbGVfd2hpdGVfYm94X3Rlc3RzIiwKKyAgICAgICAgICAiLS1ib3QtbW9kZSIs
CisgICAgICAgICAgIi0tZ3Rlc3RfZmlsdGVyPSpWdWxrYW5fU3dpZnRTaGFkZXIqIiwKKyAgICAg
ICAgICAiLS14dmZiIgorICAgICAgICBdLAorICAgICAgICAibWVyZ2UiOiB7CisgICAgICAgICAg
ImFyZ3MiOiBbXSwKKyAgICAgICAgICAic2NyaXB0IjogIi8vdGVzdGluZy9tZXJnZV9zY3JpcHRz
L3N0YW5kYXJkX2lzb2xhdGVkX3NjcmlwdF9tZXJnZS5weSIKKyAgICAgICAgfSwKKyAgICAgICAg
InN3YXJtaW5nIjogeworICAgICAgICAgICJjYW5fdXNlX29uX3N3YXJtaW5nX2J1aWxkZXJzIjog
dHJ1ZSwKKyAgICAgICAgICAiY29udGFpbm1lbnRfdHlwZSI6ICJBVVRPIiwKKyAgICAgICAgICAi
ZGltZW5zaW9uX3NldHMiOiBbCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICJjcHUiOiAi
eDg2LTY0IiwKKyAgICAgICAgICAgICAgImdwdSI6ICJub25lIiwKKyAgICAgICAgICAgICAgIm9z
IjogIlVidW50dS0xOC4wNCIsCisgICAgICAgICAgICAgICJwb29sIjogImNocm9taXVtLnRlc3Rz
LmdwdSIKKyAgICAgICAgICAgIH0KKyAgICAgICAgICBdLAorICAgICAgICAgICJoYXJkX3RpbWVv
dXQiOiA5MDAsCisgICAgICAgICAgImlvX3RpbWVvdXQiOiA5MDAsCisgICAgICAgICAgInNlcnZp
Y2VfYWNjb3VudCI6ICJjaHJvbWl1bS10ZXN0ZXJAY2hvcHMtc2VydmljZS1hY2NvdW50cy5pYW0u
Z3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgICAgfSwKKyAgICAgICAgInRlc3QiOiAiYW5nbGVf
d2hpdGVfYm94X3Rlc3RzIiwKKyAgICAgICAgInRlc3RfaWRfcHJlZml4IjogIm5pbmphOi8vc3Jj
L3Rlc3RzOmFuZ2xlX3doaXRlX2JveF90ZXN0cy8iLAorICAgICAgICAidXNlX2lzb2xhdGVkX3Nj
cmlwdHNfYXBpIjogdHJ1ZQogICAgICAgfQogICAgIF0KICAgfSwKQEAgLTMxNDQsNiArMzIxMCwz
NiBAQAogICAgICAgICAidGVzdCI6ICJhbmdsZV9lbmQyZW5kX3Rlc3RzIiwKICAgICAgICAgInRl
c3RfaWRfcHJlZml4IjogIm5pbmphOi8vc3JjL3Rlc3RzOmFuZ2xlX2VuZDJlbmRfdGVzdHMvIiwK
ICAgICAgICAgInVzZV9pc29sYXRlZF9zY3JpcHRzX2FwaSI6IHRydWUKKyAgICAgIH0sCisgICAg
ICB7CisgICAgICAgICJhcmdzIjogWworICAgICAgICAgICJhbmdsZV93aGl0ZV9ib3hfdGVzdHMi
LAorICAgICAgICAgICItLWJvdC1tb2RlIiwKKyAgICAgICAgICAiLS1ndGVzdF9maWx0ZXI9KlZ1
bGthbl9Td2lmdFNoYWRlcioiLAorICAgICAgICAgICItLXh2ZmIiCisgICAgICAgIF0sCisgICAg
ICAgICJtZXJnZSI6IHsKKyAgICAgICAgICAiYXJncyI6IFtdLAorICAgICAgICAgICJzY3JpcHQi
OiAiLy90ZXN0aW5nL21lcmdlX3NjcmlwdHMvc3RhbmRhcmRfaXNvbGF0ZWRfc2NyaXB0X21lcmdl
LnB5IgorICAgICAgICB9LAorICAgICAgICAic3dhcm1pbmciOiB7CisgICAgICAgICAgImNhbl91
c2Vfb25fc3dhcm1pbmdfYnVpbGRlcnMiOiB0cnVlLAorICAgICAgICAgICJjb250YWlubWVudF90
eXBlIjogIkFVVE8iLAorICAgICAgICAgICJkaW1lbnNpb25fc2V0cyI6IFsKKyAgICAgICAgICAg
IHsKKyAgICAgICAgICAgICAgImNwdSI6ICJ4ODYtNjQiLAorICAgICAgICAgICAgICAiZ3B1Ijog
Im5vbmUiLAorICAgICAgICAgICAgICAib3MiOiAiVWJ1bnR1LTE4LjA0IiwKKyAgICAgICAgICAg
ICAgInBvb2wiOiAiY2hyb21pdW0udGVzdHMuZ3B1IgorICAgICAgICAgICAgfQorICAgICAgICAg
IF0sCisgICAgICAgICAgImhhcmRfdGltZW91dCI6IDkwMCwKKyAgICAgICAgICAiaW9fdGltZW91
dCI6IDkwMCwKKyAgICAgICAgICAic2VydmljZV9hY2NvdW50IjogImNocm9taXVtLXRlc3RlckBj
aG9wcy1zZXJ2aWNlLWFjY291bnRzLmlhbS5nc2VydmljZWFjY291bnQuY29tIgorICAgICAgICB9
LAorICAgICAgICAidGVzdCI6ICJhbmdsZV93aGl0ZV9ib3hfdGVzdHMiLAorICAgICAgICAidGVz
dF9pZF9wcmVmaXgiOiAibmluamE6Ly9zcmMvdGVzdHM6YW5nbGVfd2hpdGVfYm94X3Rlc3RzLyIs
CisgICAgICAgICJ1c2VfaXNvbGF0ZWRfc2NyaXB0c19hcGkiOiB0cnVlCiAgICAgICB9CiAgICAg
XQogICB9LApAQCAtMzU3MCw2ICszNjY2LDM2IEBACiAgICAgICAgICJ0ZXN0IjogImFuZ2xlX2Vu
ZDJlbmRfdGVzdHMiLAogICAgICAgICAidGVzdF9pZF9wcmVmaXgiOiAibmluamE6Ly9zcmMvdGVz
dHM6YW5nbGVfZW5kMmVuZF90ZXN0cy8iLAogICAgICAgICAidXNlX2lzb2xhdGVkX3NjcmlwdHNf
YXBpIjogdHJ1ZQorICAgICAgfSwKKyAgICAgIHsKKyAgICAgICAgImFyZ3MiOiBbCisgICAgICAg
ICAgImFuZ2xlX3doaXRlX2JveF90ZXN0cyIsCisgICAgICAgICAgIi0tYm90LW1vZGUiLAorICAg
ICAgICAgICItLWd0ZXN0X2ZpbHRlcj0qVnVsa2FuX1N3aWZ0U2hhZGVyKiIsCisgICAgICAgICAg
Ii0teHZmYiIKKyAgICAgICAgXSwKKyAgICAgICAgIm1lcmdlIjogeworICAgICAgICAgICJhcmdz
IjogW10sCisgICAgICAgICAgInNjcmlwdCI6ICIvL3Rlc3RpbmcvbWVyZ2Vfc2NyaXB0cy9zdGFu
ZGFyZF9pc29sYXRlZF9zY3JpcHRfbWVyZ2UucHkiCisgICAgICAgIH0sCisgICAgICAgICJzd2Fy
bWluZyI6IHsKKyAgICAgICAgICAiY2FuX3VzZV9vbl9zd2FybWluZ19idWlsZGVycyI6IHRydWUs
CisgICAgICAgICAgImNvbnRhaW5tZW50X3R5cGUiOiAiQVVUTyIsCisgICAgICAgICAgImRpbWVu
c2lvbl9zZXRzIjogWworICAgICAgICAgICAgeworICAgICAgICAgICAgICAiY3B1IjogIng4Ni02
NCIsCisgICAgICAgICAgICAgICJncHUiOiAibm9uZSIsCisgICAgICAgICAgICAgICJvcyI6ICJV
YnVudHUtMTguMDQiLAorICAgICAgICAgICAgICAicG9vbCI6ICJjaHJvbWl1bS50ZXN0cy5ncHUi
CisgICAgICAgICAgICB9CisgICAgICAgICAgXSwKKyAgICAgICAgICAiaGFyZF90aW1lb3V0Ijog
OTAwLAorICAgICAgICAgICJpb190aW1lb3V0IjogOTAwLAorICAgICAgICAgICJzZXJ2aWNlX2Fj
Y291bnQiOiAiY2hyb21pdW0tdGVzdGVyQGNob3BzLXNlcnZpY2UtYWNjb3VudHMuaWFtLmdzZXJ2
aWNlYWNjb3VudC5jb20iCisgICAgICAgIH0sCisgICAgICAgICJ0ZXN0IjogImFuZ2xlX3doaXRl
X2JveF90ZXN0cyIsCisgICAgICAgICJ0ZXN0X2lkX3ByZWZpeCI6ICJuaW5qYTovL3NyYy90ZXN0
czphbmdsZV93aGl0ZV9ib3hfdGVzdHMvIiwKKyAgICAgICAgInVzZV9pc29sYXRlZF9zY3JpcHRz
X2FwaSI6IHRydWUKICAgICAgIH0KICAgICBdCiAgIH0sCkBAIC00NDc2LDcgKzQ2MDIsOCBAQAog
ICAgICAgewogICAgICAgICAiYXJncyI6IFsKICAgICAgICAgICAiLS1sb2c9ZGVidWciLAotICAg
ICAgICAgICItLXNtb2tlLXRlc3QtbW9kZSIKKyAgICAgICAgICAiLS1zbW9rZS10ZXN0LW1vZGUi
LAorICAgICAgICAgICItLXNob3ctdGVzdC1zdGRvdXQiCiAgICAgICAgIF0sCiAgICAgICAgICJp
c29sYXRlX25hbWUiOiAiYW5nbGVfcGVyZnRlc3RzIiwKICAgICAgICAgIm1lcmdlIjogewpAQCAt
NTIyOCw3ICs1MzU1LDggQEAKICAgICAgIHsKICAgICAgICAgImFyZ3MiOiBbCiAgICAgICAgICAg
Ii0tbG9nPWRlYnVnIiwKLSAgICAgICAgICAiLS1zbW9rZS10ZXN0LW1vZGUiCisgICAgICAgICAg
Ii0tc21va2UtdGVzdC1tb2RlIiwKKyAgICAgICAgICAiLS1zaG93LXRlc3Qtc3Rkb3V0IgogICAg
ICAgICBdLAogICAgICAgICAiaXNvbGF0ZV9uYW1lIjogImFuZ2xlX3BlcmZ0ZXN0cyIsCiAgICAg
ICAgICJtZXJnZSI6IHsKQEAgLTUyOTAsNyArNTQxOCw4IEBACiAgICAgImlzb2xhdGVkX3Njcmlw
dHMiOiBbCiAgICAgICB7CiAgICAgICAgICJhcmdzIjogWwotICAgICAgICAgICItLWxvZz1kZWJ1
ZyIKKyAgICAgICAgICAiLS1sb2c9ZGVidWciLAorICAgICAgICAgICItLXNob3ctdGVzdC1zdGRv
dXQiCiAgICAgICAgIF0sCiAgICAgICAgICJpc29sYXRlX25hbWUiOiAiYW5nbGVfcGVyZnRlc3Rz
IiwKICAgICAgICAgIm1lcmdlIjogewpAQCAtNTcyMyw2ICs1ODUyLDM1IEBACiAgICAgICAgICJ0
ZXN0IjogImFuZ2xlX2VuZDJlbmRfdGVzdHMiLAogICAgICAgICAidGVzdF9pZF9wcmVmaXgiOiAi
bmluamE6Ly9zcmMvdGVzdHM6YW5nbGVfZW5kMmVuZF90ZXN0cy8iLAogICAgICAgICAidXNlX2lz
b2xhdGVkX3NjcmlwdHNfYXBpIjogdHJ1ZQorICAgICAgfSwKKyAgICAgIHsKKyAgICAgICAgImFy
Z3MiOiBbCisgICAgICAgICAgImFuZ2xlX3doaXRlX2JveF90ZXN0cyIsCisgICAgICAgICAgIi0t
Ym90LW1vZGUiLAorICAgICAgICAgICItLWd0ZXN0X2ZpbHRlcj0qVnVsa2FuX1N3aWZ0U2hhZGVy
KiIKKyAgICAgICAgXSwKKyAgICAgICAgIm1lcmdlIjogeworICAgICAgICAgICJhcmdzIjogW10s
CisgICAgICAgICAgInNjcmlwdCI6ICIvL3Rlc3RpbmcvbWVyZ2Vfc2NyaXB0cy9zdGFuZGFyZF9p
c29sYXRlZF9zY3JpcHRfbWVyZ2UucHkiCisgICAgICAgIH0sCisgICAgICAgICJzd2FybWluZyI6
IHsKKyAgICAgICAgICAiY2FuX3VzZV9vbl9zd2FybWluZ19idWlsZGVycyI6IHRydWUsCisgICAg
ICAgICAgImNvbnRhaW5tZW50X3R5cGUiOiAiQVVUTyIsCisgICAgICAgICAgImRpbWVuc2lvbl9z
ZXRzIjogWworICAgICAgICAgICAgeworICAgICAgICAgICAgICAiY3B1IjogIng4Ni02NCIsCisg
ICAgICAgICAgICAgICJncHUiOiAibm9uZSIsCisgICAgICAgICAgICAgICJvcyI6ICJXaW5kb3dz
LTEwIiwKKyAgICAgICAgICAgICAgInBvb2wiOiAiY2hyb21pdW0udGVzdHMuZ3B1IgorICAgICAg
ICAgICAgfQorICAgICAgICAgIF0sCisgICAgICAgICAgImhhcmRfdGltZW91dCI6IDkwMCwKKyAg
ICAgICAgICAiaW9fdGltZW91dCI6IDkwMCwKKyAgICAgICAgICAic2VydmljZV9hY2NvdW50Ijog
ImNocm9taXVtLXRlc3RlckBjaG9wcy1zZXJ2aWNlLWFjY291bnRzLmlhbS5nc2VydmljZWFjY291
bnQuY29tIgorICAgICAgICB9LAorICAgICAgICAidGVzdCI6ICJhbmdsZV93aGl0ZV9ib3hfdGVz
dHMiLAorICAgICAgICAidGVzdF9pZF9wcmVmaXgiOiAibmluamE6Ly9zcmMvdGVzdHM6YW5nbGVf
d2hpdGVfYm94X3Rlc3RzLyIsCisgICAgICAgICJ1c2VfaXNvbGF0ZWRfc2NyaXB0c19hcGkiOiB0
cnVlCiAgICAgICB9CiAgICAgXSwKICAgICAiaXNvbGF0ZWRfc2NyaXB0cyI6IFsKQEAgLTU3OTUs
NiArNTk1MywzNSBAQAogICAgICAgICAidGVzdCI6ICJhbmdsZV9lbmQyZW5kX3Rlc3RzIiwKICAg
ICAgICAgInRlc3RfaWRfcHJlZml4IjogIm5pbmphOi8vc3JjL3Rlc3RzOmFuZ2xlX2VuZDJlbmRf
dGVzdHMvIiwKICAgICAgICAgInVzZV9pc29sYXRlZF9zY3JpcHRzX2FwaSI6IHRydWUKKyAgICAg
IH0sCisgICAgICB7CisgICAgICAgICJhcmdzIjogWworICAgICAgICAgICJhbmdsZV93aGl0ZV9i
b3hfdGVzdHMiLAorICAgICAgICAgICItLWJvdC1tb2RlIiwKKyAgICAgICAgICAiLS1ndGVzdF9m
aWx0ZXI9KlZ1bGthbl9Td2lmdFNoYWRlcioiCisgICAgICAgIF0sCisgICAgICAgICJtZXJnZSI6
IHsKKyAgICAgICAgICAiYXJncyI6IFtdLAorICAgICAgICAgICJzY3JpcHQiOiAiLy90ZXN0aW5n
L21lcmdlX3NjcmlwdHMvc3RhbmRhcmRfaXNvbGF0ZWRfc2NyaXB0X21lcmdlLnB5IgorICAgICAg
ICB9LAorICAgICAgICAic3dhcm1pbmciOiB7CisgICAgICAgICAgImNhbl91c2Vfb25fc3dhcm1p
bmdfYnVpbGRlcnMiOiB0cnVlLAorICAgICAgICAgICJjb250YWlubWVudF90eXBlIjogIkFVVE8i
LAorICAgICAgICAgICJkaW1lbnNpb25fc2V0cyI6IFsKKyAgICAgICAgICAgIHsKKyAgICAgICAg
ICAgICAgImNwdSI6ICJ4ODYtNjQiLAorICAgICAgICAgICAgICAiZ3B1IjogIm5vbmUiLAorICAg
ICAgICAgICAgICAib3MiOiAiV2luZG93cy0xMCIsCisgICAgICAgICAgICAgICJwb29sIjogImNo
cm9taXVtLnRlc3RzLmdwdSIKKyAgICAgICAgICAgIH0KKyAgICAgICAgICBdLAorICAgICAgICAg
ICJoYXJkX3RpbWVvdXQiOiA5MDAsCisgICAgICAgICAgImlvX3RpbWVvdXQiOiA5MDAsCisgICAg
ICAgICAgInNlcnZpY2VfYWNjb3VudCI6ICJjaHJvbWl1bS10ZXN0ZXJAY2hvcHMtc2VydmljZS1h
Y2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgICAgfSwKKyAgICAgICAgInRl
c3QiOiAiYW5nbGVfd2hpdGVfYm94X3Rlc3RzIiwKKyAgICAgICAgInRlc3RfaWRfcHJlZml4Ijog
Im5pbmphOi8vc3JjL3Rlc3RzOmFuZ2xlX3doaXRlX2JveF90ZXN0cy8iLAorICAgICAgICAidXNl
X2lzb2xhdGVkX3NjcmlwdHNfYXBpIjogdHJ1ZQogICAgICAgfQogICAgIF0KICAgfSwKQEAgLTYy
MDcsNiArNjM5NCwzNSBAQAogICAgICAgICAidGVzdCI6ICJhbmdsZV9lbmQyZW5kX3Rlc3RzIiwK
ICAgICAgICAgInRlc3RfaWRfcHJlZml4IjogIm5pbmphOi8vc3JjL3Rlc3RzOmFuZ2xlX2VuZDJl
bmRfdGVzdHMvIiwKICAgICAgICAgInVzZV9pc29sYXRlZF9zY3JpcHRzX2FwaSI6IHRydWUKKyAg
ICAgIH0sCisgICAgICB7CisgICAgICAgICJhcmdzIjogWworICAgICAgICAgICJhbmdsZV93aGl0
ZV9ib3hfdGVzdHMiLAorICAgICAgICAgICItLWJvdC1tb2RlIiwKKyAgICAgICAgICAiLS1ndGVz
dF9maWx0ZXI9KlZ1bGthbl9Td2lmdFNoYWRlcioiCisgICAgICAgIF0sCisgICAgICAgICJtZXJn
ZSI6IHsKKyAgICAgICAgICAiYXJncyI6IFtdLAorICAgICAgICAgICJzY3JpcHQiOiAiLy90ZXN0
aW5nL21lcmdlX3NjcmlwdHMvc3RhbmRhcmRfaXNvbGF0ZWRfc2NyaXB0X21lcmdlLnB5IgorICAg
ICAgICB9LAorICAgICAgICAic3dhcm1pbmciOiB7CisgICAgICAgICAgImNhbl91c2Vfb25fc3dh
cm1pbmdfYnVpbGRlcnMiOiB0cnVlLAorICAgICAgICAgICJjb250YWlubWVudF90eXBlIjogIkFV
VE8iLAorICAgICAgICAgICJkaW1lbnNpb25fc2V0cyI6IFsKKyAgICAgICAgICAgIHsKKyAgICAg
ICAgICAgICAgImNwdSI6ICJ4ODYtNjQiLAorICAgICAgICAgICAgICAiZ3B1IjogIm5vbmUiLAor
ICAgICAgICAgICAgICAib3MiOiAiV2luZG93cy0xMCIsCisgICAgICAgICAgICAgICJwb29sIjog
ImNocm9taXVtLnRlc3RzLmdwdSIKKyAgICAgICAgICAgIH0KKyAgICAgICAgICBdLAorICAgICAg
ICAgICJoYXJkX3RpbWVvdXQiOiA5MDAsCisgICAgICAgICAgImlvX3RpbWVvdXQiOiA5MDAsCisg
ICAgICAgICAgInNlcnZpY2VfYWNjb3VudCI6ICJjaHJvbWl1bS10ZXN0ZXJAY2hvcHMtc2Vydmlj
ZS1hY2NvdW50cy5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIKKyAgICAgICAgfSwKKyAgICAgICAg
InRlc3QiOiAiYW5nbGVfd2hpdGVfYm94X3Rlc3RzIiwKKyAgICAgICAgInRlc3RfaWRfcHJlZml4
IjogIm5pbmphOi8vc3JjL3Rlc3RzOmFuZ2xlX3doaXRlX2JveF90ZXN0cy8iLAorICAgICAgICAi
dXNlX2lzb2xhdGVkX3NjcmlwdHNfYXBpIjogdHJ1ZQogICAgICAgfQogICAgIF0KICAgfSwKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL2luZnJhL3NwZWNzL2dlbmVyYXRlX3Rl
c3Rfc3BlY19qc29uLnB5IGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvaW5mcmEvc3BlY3MvZ2Vu
ZXJhdGVfdGVzdF9zcGVjX2pzb24ucHkKaW5kZXggZmM5ODQ0M2Q0OGIwYWU1ZDVlNzZjMjE0NzMy
NmY3ZTE2ZThkMjE1ZS4uZDZiMzlkZDM2ODM4ODFiYzYyYzQ4NDg2YWVlYmUyOWVkMjkxNGQyZiAx
MDA3NTUKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvaW5mcmEvc3BlY3MvZ2VuZXJhdGVf
dGVzdF9zcGVjX2pzb24ucHkKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvaW5mcmEvc3Bl
Y3MvZ2VuZXJhdGVfdGVzdF9zcGVjX2pzb24ucHkKQEAgLTEsNCArMSw0IEBACi0jIS91c3IvYmlu
L2VudiBweXRob24zCisjIS91c3IvYmluL2VudiB2cHl0aG9uMwogIyBDb3B5cmlnaHQgMjAyMSBU
aGUgQU5HTEUgUHJvamVjdCBBdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogIyBVc2Ugb2Yg
dGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZSBsaWNlbnNlIHRoYXQg
Y2FuIGJlCiAjIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9pbmZyYS9zcGVjcy90ZXN0X3N1aXRlcy5weWwgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9pbmZyYS9zcGVjcy90ZXN0X3N1aXRlcy5weWwKaW5kZXggNTUyN2Y3MmI3
ZDNhMGVmN2UxODI5YWQyZmQ3ZWE5YTA4NzQ1Y2Y0MC4uMWI2M2EyOWMyNTZlMTg3MzczMmZhMDE1
MGM2MDUwYmY0ZTYwYjY3NSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvaW5m
cmEvc3BlY3MvdGVzdF9zdWl0ZXMucHlsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL2lu
ZnJhL3NwZWNzL3Rlc3Rfc3VpdGVzLnB5bApAQCAtNjc3LDYgKzY3Nyw3IEBACiAgICAgICAnYW5n
bGVfcGVyZnRlc3RzJzogewogICAgICAgICAnYXJncyc6IFsKICAgICAgICAgICAnLS1sb2c9ZGVi
dWcnLAorICAgICAgICAgICctLXNob3ctdGVzdC1zdGRvdXQnLAogICAgICAgICBdLAogICAgICAg
ICAnbWVyZ2UnOiB7CiAgICAgICAgICAgJ3NjcmlwdCc6ICcvL3NjcmlwdHMvcHJvY2Vzc19hbmds
ZV9wZXJmX3Jlc3VsdHMucHknLApAQCAtNjk3LDYgKzY5OCw3IEBACiAgICAgICAgICdhcmdzJzog
WwogICAgICAgICAgICctLWxvZz1kZWJ1ZycsCiAgICAgICAgICAgJy0tc21va2UtdGVzdC1tb2Rl
JywKKyAgICAgICAgICAnLS1zaG93LXRlc3Qtc3Rkb3V0JywKICAgICAgICAgXSwKICAgICAgICAg
J21lcmdlJzogewogICAgICAgICAgICdzY3JpcHQnOiAnLy9zY3JpcHRzL3Byb2Nlc3NfYW5nbGVf
cGVyZl9yZXN1bHRzLnB5JywKQEAgLTEwNjYsNiArMTA2OCwyMCBAQAogICAgICAgICB9LAogICAg
ICAgfSwKICAgICB9LAorCisgICAgJ3N3YW5nbGVfd2hpdGVfYm94X3Rlc3RzJzogeworICAgICAg
J2FuZ2xlX3doaXRlX2JveF90ZXN0cyc6IHsKKyAgICAgICAgJ2FyZ3MnOiBbCisgICAgICAgICAg
J2FuZ2xlX3doaXRlX2JveF90ZXN0cycsCisgICAgICAgICAgJy0tYm90LW1vZGUnLAorICAgICAg
ICAgICctLWd0ZXN0X2ZpbHRlcj0qVnVsa2FuX1N3aWZ0U2hhZGVyKicsCisgICAgICAgIF0sCisg
ICAgICAgICdsaW51eF9hcmdzJzogWworICAgICAgICAgICctLXh2ZmInLAorICAgICAgICBdLAor
ICAgICAgICAndXNlX2lzb2xhdGVkX3NjcmlwdHNfYXBpJzogVHJ1ZSwKKyAgICAgIH0sCisgICAg
fQogICB9LAogCiAgICdjb21wb3VuZF9zdWl0ZXMnOiB7CkBAIC0xMTY1LDEwICsxMTgxLDEyIEBA
CiAgICAgICAnc3dhbmdsZV9kZXFwX2tocl9nbGVzMzFfdGVzdHMnLAogICAgICAgJ3N3YW5nbGVf
ZGVxcF9raHJfZ2xlczNfdGVzdHMnLAogICAgICAgJ3N3YW5nbGVfZW5kMmVuZF90ZXN0cycsCisg
ICAgICAnc3dhbmdsZV93aGl0ZV9ib3hfdGVzdHMnLAogICAgIF0sCiAKICAgICAnc3dhbmdsZV9u
b25fZGVxcF9zbG93X2d0ZXN0cyc6IFsKICAgICAgICdzd2FuZ2xlX2VuZDJlbmRfc2xvd190ZXN0
cycsCisgICAgICAnc3dhbmdsZV93aGl0ZV9ib3hfdGVzdHMnLAogICAgIF0sCiAKICAgICAnc3dh
bmdsZV9zbG93X2d0ZXN0cyc6IFsKQEAgLTExODYsNiArMTIwNCw3IEBACiAgICAgICAnc3dhbmds
ZV9kZXFwX2tocl9nbGVzMzFfdGVzdHMnLAogICAgICAgJ3N3YW5nbGVfZGVxcF9raHJfZ2xlczNf
dGVzdHMnLAogICAgICAgJ3N3YW5nbGVfZW5kMmVuZF90ZXN0cycsCisgICAgICAnc3dhbmdsZV93
aGl0ZV9ib3hfdGVzdHMnLAogICAgIF0sCiAKICAgICAnd2luMTBfaW50ZWxfZ3Rlc3RzJzogWwpk
aWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc2FtcGxlcy90b3J1c19saWdodGlu
Zy9Ub3J1c0J1ZmZlclN0b3JhZ2UuY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc2FtcGxl
cy90b3J1c19saWdodGluZy9Ub3J1c0J1ZmZlclN0b3JhZ2UuY3BwCmluZGV4IGZlNzg2NmE2ZDdi
ZDc5ODVmNDAwMDQ4YzZhOTQyZTM4NTZlZTU5YjYuLjEzNzg5ZmU1YTIyNjY5ZTQ2ZTNlYjJkZjM4
ZTVmY2UxNTUxODYwYWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NhbXBs
ZXMvdG9ydXNfbGlnaHRpbmcvVG9ydXNCdWZmZXJTdG9yYWdlLmNwcAorKysgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zYW1wbGVzL3RvcnVzX2xpZ2h0aW5nL1RvcnVzQnVmZmVyU3RvcmFnZS5j
cHAKQEAgLTEzOCw2ICsxMzgsMTEgQEAgdm9pZCBtYWluKCkKICAgICB2b2lkIHN0ZXAoZmxvYXQg
ZHQsIGRvdWJsZSB0b3RhbFRpbWUpIG92ZXJyaWRlCiAgICAgewogICAgICAgICBtQW5nbGUgKz0g
a0RlZ3JlZXNQZXJTZWNvbmQgKiBkdDsKKyAgICAgICAgaWYgKG1MYXN0RnVsbFNlY29uZCAhPSBz
dGF0aWNfY2FzdDx1aW50MzJfdD4odG90YWxUaW1lKSkKKyAgICAgICAgeworICAgICAgICAgICAg
bUxhc3RGdWxsU2Vjb25kID0gc3RhdGljX2Nhc3Q8dWludDMyX3Q+KHRvdGFsVGltZSk7CisgICAg
ICAgICAgICByZWdlbmVyYXRlVG9ydXMoKTsKKyAgICAgICAgfQogICAgICAgICB1cGRhdGVIdWVz
KHRvdGFsVGltZSk7CiAgICAgfQogCkBAIC0xNTMsNiArMTU4LDE1IEBAIHZvaWQgbWFpbigpCiAg
ICAgICAgIGdsVW5pZm9ybU1hdHJpeDRmdihtTVZNYXRyaXhMb2MsIDEsIEdMX0ZBTFNFLCBtb2Rl
bE1hdHJpeC5kYXRhKTsKICAgICAgICAgZ2xVbmlmb3JtTWF0cml4NGZ2KG1NVlBNYXRyaXhMb2Ms
IDEsIEdMX0ZBTFNFLCBtdnBNYXRyaXguZGF0YSk7CiAKKyAgICAgICAgZ2xCaW5kQnVmZmVyKEdM
X0FSUkFZX0JVRkZFUiwgbVZlcnRleEJ1ZmZlcik7CisgICAgICAgIGdsVmVydGV4QXR0cmliUG9p
bnRlcihtUG9zaXRpb25Mb2MsIDMsIEdMX0ZMT0FULCBmYWxzZSwgNiAqIHNpemVvZihHTGZsb2F0
KSwgbnVsbHB0cik7CisgICAgICAgIGdsVmVydGV4QXR0cmliUG9pbnRlcihtTm9ybWFsTG9jLCAz
LCBHTF9GTE9BVCwgZmFsc2UsIDYgKiBzaXplb2YoR0xmbG9hdCksCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICByZWludGVycHJldF9jYXN0PGNvbnN0IHZvaWQgKj4oMyAqIHNpemVvZihH
TGZsb2F0KSkpOworICAgICAgICBnbEJpbmRCdWZmZXIoR0xfQVJSQVlfQlVGRkVSLCBtSHVlQnVm
ZmVyKTsKKyAgICAgICAgZ2xWZXJ0ZXhBdHRyaWJQb2ludGVyKG1IdWVMb2MsIDEsIEdMX0ZMT0FU
LCBmYWxzZSwgc2l6ZW9mKEdMZmxvYXQpLCBudWxscHRyKTsKKyAgICAgICAgZ2xCaW5kQnVmZmVy
KEdMX0VMRU1FTlRfQVJSQVlfQlVGRkVSLCBtSW5kZXhCdWZmZXIpOworICAgICAgICBnbFZlcnRl
eEF0dHJpYlBvaW50ZXIobUh1ZUxvYywgMSwgR0xfRkxPQVQsIGZhbHNlLCBzaXplb2YoR0xmbG9h
dCksIG51bGxwdHIpOworCiAgICAgICAgIGdsRHJhd0VsZW1lbnRzKEdMX1RSSUFOR0xFUywgbUlu
ZGV4Q291bnQsIEdMX1VOU0lHTkVEX1NIT1JULCAwKTsKIAogICAgICAgICBBU1NFUlQoc3RhdGlj
X2Nhc3Q8R0xlbnVtPihHTF9OT19FUlJPUikgPT0gZ2xHZXRFcnJvcigpKTsKQEAgLTE5MSw2ICsy
MDUsMzUgQEAgdm9pZCBtYWluKCkKICAgICAgICAgQVNTRVJUKHN0YXRpY19jYXN0PEdMZW51bT4o
R0xfTk9fRVJST1IpID09IGdsR2V0RXJyb3IoKSk7CiAgICAgfQogCisgICAgdm9pZCByZWdlbmVy
YXRlVG9ydXMoKQorICAgIHsKKyAgICAgICAgZ2xCaW5kQnVmZmVyKEdMX0FSUkFZX0JVRkZFUiwg
bUh1ZUJ1ZmZlcik7CisgICAgICAgIGdsRGlzYWJsZVZlcnRleEF0dHJpYkFycmF5KG1IdWVMb2Mp
OworICAgICAgICBnbFVubWFwQnVmZmVyKEdMX0FSUkFZX0JVRkZFUik7CisgICAgICAgIGdsRGVs
ZXRlQnVmZmVycygxLCAmbUh1ZUJ1ZmZlcik7CisKKyAgICAgICAgc3RkOjp2ZWN0b3I8R0xmbG9h
dD4gaHVlcyhrSHVlc1NpemUsIDAuMGYpOworCisgICAgICAgIGdsR2VuQnVmZmVycygxLCAmbUh1
ZUJ1ZmZlcik7CisgICAgICAgIGdsQmluZEJ1ZmZlcihHTF9BUlJBWV9CVUZGRVIsIG1IdWVCdWZm
ZXIpOworICAgICAgICBnbEJ1ZmZlclN0b3JhZ2VFWFQoR0xfQVJSQVlfQlVGRkVSLCBrSHVlc1Np
emUgKiBzaXplb2YoR0xmbG9hdCksIGh1ZXMuZGF0YSgpLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgR0xfTUFQX1dSSVRFX0JJVCB8IEdMX01BUF9QRVJTSVNURU5UX0JJVF9FWFQgfCBHTF9N
QVBfQ09IRVJFTlRfQklUX0VYVCk7CisKKyAgICAgICAgbUh1ZU1hcFB0ciA9IHN0YXRpY19jYXN0
PGZsb2F0ICo+KAorICAgICAgICAgICAgZ2xNYXBCdWZmZXJSYW5nZShHTF9BUlJBWV9CVUZGRVIs
IDAsIGtIdWVzU2l6ZSAqIHNpemVvZihHTGZsb2F0KSwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgR0xfTUFQX1dSSVRFX0JJVCB8IEdMX01BUF9VTlNZTkNIUk9OSVpFRF9CSVQgfAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xfTUFQX1BFUlNJU1RFTlRfQklUX0VYVCB8
IEdMX01BUF9DT0hFUkVOVF9CSVRfRVhUKSk7CisKKyAgICAgICAgQVNTRVJUKG1IdWVNYXBQdHIg
IT0gbnVsbHB0cik7CisgICAgICAgIEFTU0VSVChzdGF0aWNfY2FzdDxHTGVudW0+KEdMX05PX0VS
Uk9SKSA9PSBnbEdldEVycm9yKCkpOworCisgICAgICAgIGdsRW5hYmxlVmVydGV4QXR0cmliQXJy
YXkobUh1ZUxvYyk7CisKKyAgICAgICAgR0xzeW5jIHN5bmMgPSBnbEZlbmNlU3luYyhHTF9TWU5D
X0dQVV9DT01NQU5EU19DT01QTEVURSwgMCk7CisgICAgICAgIGdsQ2xpZW50V2FpdFN5bmMoc3lu
YywgMCwgMCk7CisgICAgICAgIGdsRGVsZXRlU3luYyhzeW5jKTsKKyAgICB9CisKICAgcHJpdmF0
ZToKICAgICBHTHVpbnQgbVByb2dyYW0gPSAwOwogCkBAIC0yMTUsNiArMjU4LDggQEAgdm9pZCBt
YWluKCkKICAgICBmbG9hdCAqbUh1ZU1hcFB0ciA9IG51bGxwdHI7CiAKICAgICBmbG9hdCBtQW5n
bGUgPSAwOworCisgICAgdWludDMyX3QgbUxhc3RGdWxsU2Vjb25kID0gMDsKIH07CiAKIGludCBt
YWluKGludCBhcmdjLCBjaGFyICoqYXJndikKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3NjcmlwdHMvYm1wX3RvX252MTIucHkgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9z
Y3JpcHRzL2JtcF90b19udjEyLnB5CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAxMDQ5
MTY1OGIzYjJlZTkxOTIzYjkzYWYyODU4MTlhYzEwYjE5MGRlLi4wMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3Njcmlw
dHMvYm1wX3RvX252MTIucHkKKysrIC9kZXYvbnVsbApAQCAtMSw4OSArMCwwIEBACi0jIS91c3Iv
YmluL3B5dGhvbjIKLSMKLSMgQ29weXJpZ2h0IDIwMTYgVGhlIEFOR0xFIFByb2plY3QgQXV0aG9y
cy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSMgVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292
ZXJuZWQgYnkgYSBCU0Qtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQotIyBmb3VuZCBpbiB0aGUg
TElDRU5TRSBmaWxlLgotIwotIyBibXBfdG9fbnYxMi5weToKLSMgICBTY3JpcHQgdG8gY29udmVy
dCBhIHNpbXBsZSBCTVAgZmlsZSB0byBhbiBOVjEyIGZvcm1hdC4gVXNlZCB0byBjcmVhdGUKLSMg
ICB0ZXN0IGltYWdlcyBmb3IgdGhlIE5WMTIgdGV4dHVyZSBzdHJlYW0gZW5kIHRvIGVuZCB0ZXN0
cwotCi1pbXBvcnQgc3lzCi1pbXBvcnQgc3RydWN0Ci0KLWlmIGxlbihzeXMuYXJndikgIT0gNDoK
LSAgICBwcmludCgiVXNhZ2U6IGJtcF90b19udjEyLnB5IGlucHV0IG91dHB1dCBwcmVmaXgiKQot
ICAgIGV4aXQoMCkKLQotYm1wX2ZpbGUgPSBvcGVuKHN5cy5hcmd2WzFdLCAicmIiKQotCi1tYWdp
YyA9IGJtcF9maWxlLnJlYWQoMikKLWlmIChtYWdpYyAhPSAiQk0iKToKLSAgICBwcmludCgiSW52
YWxpZCBCTVAgbWFnaWMiKQotICAgIGV4aXQoMSkKLQotZmlsZV9zaXplLCA9IHN0cnVjdC51bnBh
Y2soIkkiLCBibXBfZmlsZS5yZWFkKDQpKQotCi0jIGVhdCByZXNlcnZlZCBieXRlcwotYm1wX2Zp
bGUucmVhZCg0KQotCi1vZmZzZXQsID0gc3RydWN0LnVucGFjaygiSSIsIGJtcF9maWxlLnJlYWQo
NCkpCi0KLWhlYWRlcnNpemUsID0gc3RydWN0LnVucGFjaygiSSIsIGJtcF9maWxlLnJlYWQoNCkp
Ci13aWR0aCwgPSBzdHJ1Y3QudW5wYWNrKCJpIiwgYm1wX2ZpbGUucmVhZCg0KSkKLWhlaWdodCwg
PSBzdHJ1Y3QudW5wYWNrKCJpIiwgYm1wX2ZpbGUucmVhZCg0KSkKLXBsYW5lcywgPSBzdHJ1Y3Qu
dW5wYWNrKCJIIiwgYm1wX2ZpbGUucmVhZCgyKSkKLWJwcCwgPSBzdHJ1Y3QudW5wYWNrKCJIIiwg
Ym1wX2ZpbGUucmVhZCgyKSkKLWNvbXByZXNzaW9uLCA9IHN0cnVjdC51bnBhY2soImkiLCBibXBf
ZmlsZS5yZWFkKDQpKQotaW1hZ2Vfc2l6ZSwgPSBzdHJ1Y3QudW5wYWNrKCJpIiwgYm1wX2ZpbGUu
cmVhZCg0KSkKLQotaWYgKGJwcCAhPSAyNCBvciBjb21wcmVzc2lvbiAhPSAwKToKLSAgICBwcmlu
dCgiVW5zdXBwb3J0ZWQgQk1QIGZpbGUiKQotICAgIGJtcF9maWxlLmNsb3NlKCkKLSAgICBleGl0
KDEpCi0KLWJtcF9maWxlLnNlZWsob2Zmc2V0LCAwKQotcGl4ZWxzID0gYm1wX2ZpbGUucmVhZCh3
aWR0aCAqIGhlaWdodCAqIDMpCi1ibXBfZmlsZS5jbG9zZSgpCi0KLSMgY29udmVydCB0byBZVVYg
NDo0OjQKLWNvbnZlcnRlZF9waXhlbHMgPSBieXRlYXJyYXkocGl4ZWxzKQotZm9yIGkgaW4gcmFu
Z2UoMCwgd2lkdGggKiBoZWlnaHQpOgotICAgIFIsID0gc3RydWN0LnVucGFjaygiQiIsIHBpeGVs
c1tpICogMyArIDJdKQotICAgIEcsID0gc3RydWN0LnVucGFjaygiQiIsIHBpeGVsc1tpICogMyAr
IDFdKQotICAgIEIsID0gc3RydWN0LnVucGFjaygiQiIsIHBpeGVsc1tpICogM10pCi0gICAgY29u
dmVydGVkX3BpeGVsc1tpICogM10gPSAoKDY2ICogUiArIDEyOSAqIEcgKyAyNSAqIEIgKyAxMjgp
ID4+IDgpICsgMTYKLSAgICBjb252ZXJ0ZWRfcGl4ZWxzW2kgKiAzICsgMV0gPSAoKC0zOCAqIFIg
LSA3NCAqIEcgKyAxMTIgKiBCICsgMTI4KSA+PiA4KSArIDEyOAotICAgIGNvbnZlcnRlZF9waXhl
bHNbaSAqIDMgKyAyXSA9ICgoMTEyICogUiAtIDk0ICogRyAtIDE4ICogQiArIDEyOCkgPj4gOCkg
KyAxMjgKLQotIyBkb3duc2FtcGxlIHRvIHBhY2tlZCBVViBidWZmZXIKLXV2X2J1ZmZlciA9IGJ5
dGVhcnJheSh3aWR0aCAqIGhlaWdodCAvIDIpCi1mb3IgaSBpbiByYW5nZSgwLCB3aWR0aCAqIGhl
aWdodCAvIDIsIDIpOgotICAgIFUxID0gY29udmVydGVkX3BpeGVsc1soKCgoaSAvIHdpZHRoKSAq
IDIpICogd2lkdGgpICsgKGkgJSB3aWR0aCkpICogMyArIDFdCi0gICAgVTIgPSBjb252ZXJ0ZWRf
cGl4ZWxzWygoKChpIC8gd2lkdGgpICogMikgKiB3aWR0aCkgKyB3aWR0aCArIChpICUgd2lkdGgp
KSAqIDMgKyAxXQotICAgIFYxID0gY29udmVydGVkX3BpeGVsc1soKCgoaSAvIHdpZHRoKSAqIDIp
ICogd2lkdGgpICsgKGkgJSB3aWR0aCkpICogMyArIDJdCi0gICAgVjIgPSBjb252ZXJ0ZWRfcGl4
ZWxzWygoKChpIC8gd2lkdGgpICogMikgKiB3aWR0aCkgKyB3aWR0aCArIChpICUgd2lkdGgpKSAq
IDMgKyAyXQotICAgIHV2X2J1ZmZlcltpXSA9IChVMSArIFUyKSAvIDIKLSAgICB1dl9idWZmZXJb
aSArIDFdID0gKFYxICsgVjIpIC8gMgotCi0jIGV4dHJhY3QgdGhlIFkgYnVmZmVyCi15X2J1ZmZl
ciA9IGJ5dGVhcnJheSh3aWR0aCAqIGhlaWdodCkKLWZvciBpIGluIHJhbmdlKDAsIHdpZHRoICog
aGVpZ2h0KToKLSAgICB5X2J1ZmZlcltpXSA9IGNvbnZlcnRlZF9waXhlbHNbaSAqIDNdCi0KLSMg
d3JpdGUgb3V0IHRoZSBmaWxlIGFzIGEgQyBoZWFkZXIKLW52MTJfZmlsZSA9IG9wZW4oc3lzLmFy
Z3ZbMl0sICJ3IikKLW52MTJfZmlsZS53cml0ZSgiLy8gQXV0b21hdGljYWxseSBnZW5lcmF0ZWQg
ZnJvbSAiICsgc3lzLmFyZ3ZbMV0gKyAiXG4iKQotbnYxMl9maWxlLndyaXRlKCJzdGF0aWMgY29u
c3Qgc2l6ZV90ICIgKyBzeXMuYXJndlszXSArICJfd2lkdGggPSAiICsgc3RyKHdpZHRoKSArICI7
XG4iKQotbnYxMl9maWxlLndyaXRlKCJzdGF0aWMgY29uc3Qgc2l6ZV90ICIgKyBzeXMuYXJndlsz
XSArICJfaGVpZ2h0ID0gIiArIHN0cihoZWlnaHQpICsgIjtcbiIpCi1udjEyX2ZpbGUud3JpdGUo
InN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyICIgKyBzeXMuYXJndlszXSArICJfZGF0YVtdID0g
XG57IikKLWZvciBpIGluIHJhbmdlKDAsIHdpZHRoICogaGVpZ2h0KToKLSAgICBpZiAoaSAlIDE2
KSA9PSAwOgotICAgICAgICBudjEyX2ZpbGUud3JpdGUoIlxuICAgICIpCi0gICAgbnYxMl9maWxl
LndyaXRlKHN0cih5X2J1ZmZlcltpXSkgKyAiLCIpCi1mb3IgaSBpbiByYW5nZSgwLCB3aWR0aCAq
IGhlaWdodCAvIDIpOgotICAgIGlmIChpICUgMTYpID09IDA6Ci0gICAgICAgIG52MTJfZmlsZS53
cml0ZSgiXG4gICAgIikKLSAgICBudjEyX2ZpbGUud3JpdGUoc3RyKHV2X2J1ZmZlcltpXSkgKyAi
LCIpCi1udjEyX2ZpbGUud3JpdGUoIlxufTsiKQotbnYxMl9maWxlLmNsb3NlKCkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NjcmlwdHMvY29kZV9nZW5lcmF0aW9uX2hhc2hl
cy9BTkdMRV9zaGFkZXJfcHJlcHJvY2Vzc29yLmpzb24gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zY3JpcHRzL2NvZGVfZ2VuZXJhdGlvbl9oYXNoZXMvQU5HTEVfc2hhZGVyX3ByZXByb2Nlc3Nv
ci5qc29uCmluZGV4IGYwNjMzODcwYTJiNGM3MjJhOTk4NzAyZGJhMzJlYzNkNjc5ZjMzMTEuLjBm
ZDRhZGIyMTk1NjFhZjI4ZGJmNmVkYjUyM2MzMjVmOTczNjdkYjcgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9UaGlyZFBhcnR5L0FOR0xFL3NjcmlwdHMvY29kZV9nZW5lcmF0aW9uX2hhc2hlcy9BTkdMRV9z
aGFkZXJfcHJlcHJvY2Vzc29yLmpzb24KKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc2Ny
aXB0cy9jb2RlX2dlbmVyYXRpb25faGFzaGVzL0FOR0xFX3NoYWRlcl9wcmVwcm9jZXNzb3IuanNv
bgpAQCAtMiw3ICsyLDcgQEAKICAgInNyYy9jb21waWxlci9nZW5lcmF0ZV9wYXJzZXJfdG9vbHMu
cHkiOgogICAgICI2YTM0YWQ5MTE3MTBhNDVlNTY0NGU5Zjc5ZGZkMmNlNSIsCiAgICJzcmMvY29t
cGlsZXIvcHJlcHJvY2Vzc29yL2dlbmVyYXRlX3BhcnNlci5weSI6Ci0gICAgImNjODcxZGU5OTY4
OGEzNWJmZTMyZWY1MDFmOTY1ZDVhIiwKKyAgICAiOWE0NTg4ZmRmMDA5Mjk4ZmU0OWM1MmI5MjUy
Nzg5YzciLAogICAic3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9wcmVwcm9jZXNzb3IubCI6CiAg
ICAgIjMxYjRmOGJjMGJiOGY3MTNmNWU0ZGI4YWUwNDkyNWUyIiwKICAgInNyYy9jb21waWxlci9w
cmVwcm9jZXNzb3IvcHJlcHJvY2Vzc29yLnkiOgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc2NyaXB0cy9jb2RlX2dlbmVyYXRpb25faGFzaGVzL0FOR0xFX3NoYWRlcl90cmFu
c2xhdG9yLmpzb24gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zY3JpcHRzL2NvZGVfZ2VuZXJh
dGlvbl9oYXNoZXMvQU5HTEVfc2hhZGVyX3RyYW5zbGF0b3IuanNvbgppbmRleCA1N2ViYzg0MmRl
ZDUxM2FkMmUyNzMxZGU1ZjE1NDYxMDg4YTZhMTFhLi43N2M4NDc3MWMzMTQyZjNjMmQxMDNhNzNj
ZTg5NWI0OWEwZWI3YTVkIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zY3Jp
cHRzL2NvZGVfZ2VuZXJhdGlvbl9oYXNoZXMvQU5HTEVfc2hhZGVyX3RyYW5zbGF0b3IuanNvbgor
KysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zY3JpcHRzL2NvZGVfZ2VuZXJhdGlvbl9oYXNo
ZXMvQU5HTEVfc2hhZGVyX3RyYW5zbGF0b3IuanNvbgpAQCAtMiwxMyArMiwxMyBAQAogICAic3Jj
L2NvbXBpbGVyL2dlbmVyYXRlX3BhcnNlcl90b29scy5weSI6CiAgICAgIjZhMzRhZDkxMTcxMGE0
NWU1NjQ0ZTlmNzlkZmQyY2U1IiwKICAgInNyYy9jb21waWxlci90cmFuc2xhdG9yL2dlbmVyYXRl
X3BhcnNlci5weSI6Ci0gICAgIjU2NjE3OGVjZGZhZTNhMjk4MDNiMzY4N2ZjNTE4ZWJiIiwKKyAg
ICAiYWQ5MTk5NzJhMDQwZDliM2I0YWE1ZGM1NDdmYWRjNzUiLAogICAic3JjL2NvbXBpbGVyL3Ry
YW5zbGF0b3IvZ2xzbGFuZy5sIjoKLSAgICAiOTIxMDIxMTExZjk5MDZiNmI0ODY5Mzc1YjE1MjQ5
OWIiLAorICAgICI5YjVlZDg1ZjY2MDFlYjZiMTNhOTQ3NjkxNmU0NDhlMCIsCiAgICJzcmMvY29t
cGlsZXIvdHJhbnNsYXRvci9nbHNsYW5nLnkiOgogICAgICJiYmMxMDliMTljNWE0NzI0ZDBlMmY5
MTkxYWM1MjYwMyIsCiAgICJzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9nbHNsYW5nX2xleF9hdXRv
Z2VuLmNwcCI6Ci0gICAgIjE4ZjU2YTUzMDNlNmI3ZTA2MWQ4YWFkZWY2OWZhZjliIiwKKyAgICAi
OWFkN2Q2MmNmZDgxZTM2ZGIzYzk3MzkwYzhmOGFkMjYiLAogICAic3JjL2NvbXBpbGVyL3RyYW5z
bGF0b3IvZ2xzbGFuZ190YWJfYXV0b2dlbi5jcHAiOgogICAgICJkMjQwODgyOGRkNDQ0OTg2MGIx
YmQwNmVhOTc3MDdhNSIsCiAgICJzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9nbHNsYW5nX3RhYl9h
dXRvZ2VuLmgiOgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc2NyaXB0cy9j
b2RlX2dlbmVyYXRpb25faGFzaGVzL0V4dGVuc2lvbl9maWxlcy5qc29uIGIvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvc2NyaXB0cy9jb2RlX2dlbmVyYXRpb25faGFzaGVzL0V4dGVuc2lvbl9maWxl
cy5qc29uCmluZGV4IGMwMTM5MGUyNDJlZGRjYWVhYjIwN2ExYjgzODYwNDE4NDhiMjBiMjUuLjc4
OGVlNDMwOThjNjhiYzU2MjZiOGMzYzI0NjE2ZTA0ZjFmNGQ4MWIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9UaGlyZFBhcnR5L0FOR0xFL3NjcmlwdHMvY29kZV9nZW5lcmF0aW9uX2hhc2hlcy9FeHRlbnNp
b25fZmlsZXMuanNvbgorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zY3JpcHRzL2NvZGVf
Z2VuZXJhdGlvbl9oYXNoZXMvRXh0ZW5zaW9uX2ZpbGVzLmpzb24KQEAgLTEsMTIgKzEsMTIgQEAK
IHsKICAgImRvYy9FeHRlbnNpb25TdXBwb3J0Lm1kIjoKLSAgICAiYzExNjA4ZTNhNWM3YmU5ZDg1
YWZkYjYxYzA0ZTc4ZGYiLAorICAgICJmMjAxZTU5YzBkN2ZjODkzYjM3YzRiMmUwOTU0ZDQxMCIs
CiAgICJzY3JpcHRzL2NsLnhtbCI6CiAgICAgImY5MjMyMDFkNGVhM2UxMTMwNzYzYjE5ZmE3ZmFh
N2EyIiwKICAgInNjcmlwdHMvZWdsLnhtbCI6CiAgICAgIjAxM2M1NTJlNmM1MjNhYmRjZjI2ODI2
OGVhNDdlOWZlIiwKICAgInNjcmlwdHMvZWdsX2FuZ2xlX2V4dC54bWwiOgotICAgICI3MmJmMTBl
ZDNkMjNkNWNkZmE0OTkzNGEwMzkzYjMwZCIsCisgICAgIjM2MThlODM1ZGJlMWIyOGVmNWFkMjBl
N2UzNmQxMjYyIiwKICAgInNjcmlwdHMvZXh0ZW5zaW9uX2RhdGEvaW50ZWxfNjMwX2xpbnV4Lmpz
b24iOgogICAgICI1MTNkYWJlNTYxYjkyYjU3N2VjODQzM2QyNjNmOGJhNiIsCiAgICJzY3JpcHRz
L2V4dGVuc2lvbl9kYXRhL2ludGVsXzYzMF93aW4xMC5qc29uIjoKQEAgLTIyLDE3ICsyMiwxNyBA
QAogICAic2NyaXB0cy9leHRlbnNpb25fZGF0YS9zd2lmdHNoYWRlcl93aW4xMF9nbGVzMS5qc29u
IjoKICAgICAiZmJmMWMzZGM4MzU3MGMxZTNmZmZkYmVlMzEzYmNhMzAiLAogICAic2NyaXB0cy9n
bC54bWwiOgotICAgICJkOTNlMWQ0OTUxOWMyMTcwODI2Nzk4MzY5ODJiOGVlZSIsCisgICAgIjRl
YTQyYTU5MzQzNDhlYWI0ZDMwYzBlOTJlMDBjOTBkIiwKICAgInNjcmlwdHMvZ2xfYW5nbGVfZXh0
LnhtbCI6Ci0gICAgIjQ3NDk4OTQ0MGY5ODBhMDc5OTM1ZGZmM2FiNGQ3YjI0IiwKKyAgICAiNWFj
Mzg2NzJhZTNjNGIwYWNhMDhiNTQ2MWViYzY2OWQiLAogICAic2NyaXB0cy9yZWdpc3RyeV94bWwu
cHkiOgotICAgICIyZDY5MjRkMzk4YTc5MGY0ZWY4MDQ3M2MwMjc5ZWRhNSIsCisgICAgImEwNGMx
MGMzMzFkZGZmNzNkMGZmOWE1NjQ4OWJlMTI5IiwKICAgInNjcmlwdHMvd2dsLnhtbCI6CiAgICAg
ImMzNjAwMTQzMTkxOWUxYzQzNWYxMjE1YTg1ZjdlMWRiIiwKICAgInNyYy9saWJBTkdMRS9nZW5f
ZXh0ZW5zaW9ucy5weSI6CiAgICAgIjE4NmU3YjIyY2I1NjBiZjRmMzJlMmIxYjhhMDI1ZGQ4IiwK
ICAgInNyYy9saWJBTkdMRS9nbGVzX2V4dGVuc2lvbnNfYXV0b2dlbi5jcHAiOgotICAgICI5MWQz
MjE1YjMyOTQ2Mzg5M2QyNGFlYWMxZjE3YTU3ZCIsCisgICAgIjVkZmU5NmRhZTVjZDQ4Njc5NDFl
MGUzNGIwOWFhZTRiIiwKICAgInNyYy9saWJBTkdMRS9nbGVzX2V4dGVuc2lvbnNfYXV0b2dlbi5o
IjoKLSAgICAiOGY4MWExNDQ5ZDllNWRjYjQzMTNiMjgzMmI1MWZlNWYiCisgICAgIjhkZjc0Mjc5
YTM0ZGZkNjM0YWI0YTllZmRkNTkwZjE1IgogfQpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NjcmlwdHMvY29kZV9nZW5lcmF0
aW9uX2hhc2hlcy9HTF9DVFNfKGRFUVApX2J1aWxkX2ZpbGVzLmpzb24gYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9BTkdMRS9zY3JpcHRzL2NvZGVfZ2VuZXJhdGlvbl9oYXNoZXMvR0xfQ1RTXyhkRVFQKV9i
dWlsZF9maWxlcy5qc29uCmluZGV4IGVjNWI1OTJjNTNiMjAwNTJhNjg1Mzc3ODM0ZGQ4ODVkMTRm
ZDc0YzIuLjgyYmEwZjRiMDE4ZTk0YzhkYzdmN2NmYTA5YmUzZDQ3NWM5MjY4MDUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NjcmlwdHMvY29kZV9nZW5lcmF0aW9uX2hhc2hl
cy9HTF9DVFNfKGRFUVApX2J1aWxkX2ZpbGVzLmpzb24KKysrIGIvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc2NyaXB0cy9jb2RlX2dlbmVyYXRpb25faGFzaGVzL0dMX0NUU18oZEVRUClfYnVpbGRf
ZmlsZXMuanNvbgpAQCAtODAsNyArODAsNyBAQAogICAidGhpcmRfcGFydHkvVkstR0wtQ1RTL3Ny
Yy9leHRlcm5hbC92dWxrYW5jdHMvbW9kdWxlcy92dWxrYW4vbWVtb3J5L0NNYWtlTGlzdHMudHh0
IjoKICAgICAiZmRiNjE1ODhlZGVjNzUzMjI2NjBjYWZhMGI5MGRlNmYiLAogICAidGhpcmRfcGFy
dHkvVkstR0wtQ1RTL3NyYy9leHRlcm5hbC92dWxrYW5jdHMvbW9kdWxlcy92dWxrYW4vbWVtb3J5
X21vZGVsL0NNYWtlTGlzdHMudHh0IjoKLSAgICAiZmJlODA4YWJiNDk0ZTlhN2EyMjY1ZjIzMDg3
ZjQyNGMiLAorICAgICJiM2RiYjc1ZTUxNTNiMzgyZTYwMmVhZDVjZWFkMTcxMyIsCiAgICJ0aGly
ZF9wYXJ0eS9WSy1HTC1DVFMvc3JjL2V4dGVybmFsL3Z1bGthbmN0cy9tb2R1bGVzL3Z1bGthbi9t
ZXNoX3NoYWRlci9DTWFrZUxpc3RzLnR4dCI6CiAgICAgIjA3NjE0NjkyYTgwNjNmNzMyNDFkNjdl
MDYxMGExNmFmIiwKICAgInRoaXJkX3BhcnR5L1ZLLUdMLUNUUy9zcmMvZXh0ZXJuYWwvdnVsa2Fu
Y3RzL21vZHVsZXMvdnVsa2FuL21vZGlmaWVycy9DTWFrZUxpc3RzLnR4dCI6CkBAIC0xMDQsNyAr
MTA0LDcgQEAKICAgInRoaXJkX3BhcnR5L1ZLLUdMLUNUUy9zcmMvZXh0ZXJuYWwvdnVsa2FuY3Rz
L21vZHVsZXMvdnVsa2FuL3JlY29udmVyZ2VuY2UvQ01ha2VMaXN0cy50eHQiOgogICAgICIxZmEz
N2NjOGEwZTZkNjY5ZjAzOTYxYjkxNDEzYjg4NSIsCiAgICJ0aGlyZF9wYXJ0eS9WSy1HTC1DVFMv
c3JjL2V4dGVybmFsL3Z1bGthbmN0cy9tb2R1bGVzL3Z1bGthbi9yZW5kZXJwYXNzL0NNYWtlTGlz
dHMudHh0IjoKLSAgICAiNWM4ZDBmZTUwYWNjZWNjZGMyNGY2ZGVhMWY4YTNiZDYiLAorICAgICI3
NWQ4ZmNjYzJmYTg4MWJmNjhlMTkwZTAyZTllMzFiYyIsCiAgICJ0aGlyZF9wYXJ0eS9WSy1HTC1D
VFMvc3JjL2V4dGVybmFsL3Z1bGthbmN0cy9tb2R1bGVzL3Z1bGthbi9yb2J1c3RuZXNzL0NNYWtl
TGlzdHMudHh0IjoKICAgICAiNGQ0ODExNDM0ZDNjZGRkMTI0ODg0MmViYzY1ZWUxNWIiLAogICAi
dGhpcmRfcGFydHkvVkstR0wtQ1RTL3NyYy9leHRlcm5hbC92dWxrYW5jdHMvbW9kdWxlcy92dWxr
YW4vc2hhZGVyZXhlY3V0b3IvQ01ha2VMaXN0cy50eHQiOgpkaWZmIC0tZ2l0IGEvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc2NyaXB0cy9jb2RlX2dlbmVyYXRpb25faGFzaGVzL0dMX0VHTF9XR0xf
bG9hZGVyLmpzb24gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zY3JpcHRzL2NvZGVfZ2VuZXJh
dGlvbl9oYXNoZXMvR0xfRUdMX1dHTF9sb2FkZXIuanNvbgppbmRleCBjZTc3MThkMzIwZjU1Nzhl
OGJhYWVhYTdkNmEzMjUzMzZjNjk2Y2I3Li42ZTA1MWIyNDkyZDg1YmMzYmUyMzFiMDdjZjBiM2Ji
NjZhY2U4YTIxIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zY3JpcHRzL2Nv
ZGVfZ2VuZXJhdGlvbl9oYXNoZXMvR0xfRUdMX1dHTF9sb2FkZXIuanNvbgorKysgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9zY3JpcHRzL2NvZGVfZ2VuZXJhdGlvbl9oYXNoZXMvR0xfRUdMX1dH
TF9sb2FkZXIuanNvbgpAQCAtNCwzNyArNCwzNyBAQAogICAic2NyaXB0cy9lZ2wueG1sIjoKICAg
ICAiMDEzYzU1MmU2YzUyM2FiZGNmMjY4MjY4ZWE0N2U5ZmUiLAogICAic2NyaXB0cy9lZ2xfYW5n
bGVfZXh0LnhtbCI6Ci0gICAgIjcyYmYxMGVkM2QyM2Q1Y2RmYTQ5OTM0YTAzOTNiMzBkIiwKKyAg
ICAiMzYxOGU4MzVkYmUxYjI4ZWY1YWQyMGU3ZTM2ZDEyNjIiLAogICAic2NyaXB0cy9nZW5lcmF0
ZV9sb2FkZXIucHkiOgogICAgICJlNjdmNGRhNjRiYTdmNWNmZjM5YmE0ZTg5MjZhMDVmOCIsCiAg
ICJzY3JpcHRzL2dsLnhtbCI6Ci0gICAgImQ5M2UxZDQ5NTE5YzIxNzA4MjY3OTgzNjk4MmI4ZWVl
IiwKKyAgICAiNGVhNDJhNTkzNDM0OGVhYjRkMzBjMGU5MmUwMGM5MGQiLAogICAic2NyaXB0cy9n
bF9hbmdsZV9leHQueG1sIjoKLSAgICAiNDc0OTg5NDQwZjk4MGEwNzk5MzVkZmYzYWI0ZDdiMjQi
LAorICAgICI1YWMzODY3MmFlM2M0YjBhY2EwOGI1NDYxZWJjNjY5ZCIsCiAgICJzY3JpcHRzL3Jl
Z2lzdHJ5X3htbC5weSI6Ci0gICAgIjJkNjkyNGQzOThhNzkwZjRlZjgwNDczYzAyNzllZGE1IiwK
KyAgICAiYTA0YzEwYzMzMWRkZmY3M2QwZmY5YTU2NDg5YmUxMjkiLAogICAic2NyaXB0cy93Z2wu
eG1sIjoKICAgICAiYzM2MDAxNDMxOTE5ZTFjNDM1ZjEyMTVhODVmN2UxZGIiLAogICAic3JjL2xp
YkVHTC9lZ2xfbG9hZGVyX2F1dG9nZW4uY3BwIjoKLSAgICAiNGIzNDJiYjMzMzJhYjhmY2EzNGIw
ODVjMmQ5ZGYzOWMiLAorICAgICJmOGUzMDVjNWI5ZGVmYTllYzQxOWNhYzFhNGMyMjQ3YyIsCiAg
ICJzcmMvbGliRUdML2VnbF9sb2FkZXJfYXV0b2dlbi5oIjoKLSAgICAiZTRlZjE2Yzk5MGI2N2Ex
NjhmNWM2NjhlYWYwYjYzZWQiLAorICAgICI2ZTFmNDhkMzM1OGJkNTdjYjE3ZTljYTdjOGQwZjEz
YSIsCiAgICJzcmMvdGVzdHMvcmVzdHJpY3RlZF90cmFjZXMvdHJhY2VfZWdsX2xvYWRlcl9hdXRv
Z2VuLmNwcCI6Ci0gICAgIjNhNDExN2I5ZTZjMDhlMDdiYjUwYmFlMDQ3YmE0ZWMyIiwKKyAgICAi
NzU3ZDU0YTdhZmMzMGY4YWEzZDI4NWFkMjMxOGY2OGMiLAogICAic3JjL3Rlc3RzL3Jlc3RyaWN0
ZWRfdHJhY2VzL3RyYWNlX2VnbF9sb2FkZXJfYXV0b2dlbi5oIjoKLSAgICAiZjE0NDU0MDBlODAy
MzBkMWMzZWVkZWU2MjdlNTU1YzMiLAorICAgICIyYTQxN2Q1MTNmNGFkMjg5MmNjYzVjNjZlNDJl
NTc1OSIsCiAgICJzcmMvdGVzdHMvcmVzdHJpY3RlZF90cmFjZXMvdHJhY2VfZ2xlc19sb2FkZXJf
YXV0b2dlbi5jcHAiOgotICAgICI2ZWY2NjQ1Y2Q1NjkxOWQwMjVmYmUxMDAxNDA1Y2ZkNSIsCisg
ICAgIjY2ZDA5YTJkZDI0MGMwNzM4NjhmYzE0MTE4MTg2YzY5IiwKICAgInNyYy90ZXN0cy9yZXN0
cmljdGVkX3RyYWNlcy90cmFjZV9nbGVzX2xvYWRlcl9hdXRvZ2VuLmgiOgotICAgICI1Zjc1YzY2
NTEzYjZkNGVlODZlMDg4ZWQ2MGI0ODBkYSIsCisgICAgImU2YmRlZmI1OGRlNDM5YjViMzhkNGQy
NTQ2YWU0NGU3IiwKICAgInV0aWwvZWdsX2xvYWRlcl9hdXRvZ2VuLmNwcCI6Ci0gICAgIjBkYWI3
Y2YwODI2YTYxOGRjMDQ2YzFjNzhmM2FjN2M5IiwKKyAgICAiNmFmYmJjNTUzMjIyNzA1ZGQ3N2M0
OGU3NTEwMjUwZGQiLAogICAidXRpbC9lZ2xfbG9hZGVyX2F1dG9nZW4uaCI6Ci0gICAgImZlMGJi
ODNhMjZlM2UxYTA5ZThiZDkzODFjZDdiMjk1IiwKKyAgICAiM2UxZTZlYTk4M2FhOTUyNjAxZDFi
NmRlODMxNjFhOGEiLAogICAidXRpbC9nbGVzX2xvYWRlcl9hdXRvZ2VuLmNwcCI6Ci0gICAgIjk2
NTk5NWQ2Y2UwZDdiYzZmZWM2YTY3NTE5MGNhZmFlIiwKKyAgICAiMDE0ODJjNTZkZDJjNDQxMDE0
OWZlYWE4YmZmMjFiYmUiLAogICAidXRpbC9nbGVzX2xvYWRlcl9hdXRvZ2VuLmgiOgotICAgICJh
Yzc3ZGY5NjQ1NTdmNmUzNWEyOGExZTAyYjEwZTgxNyIsCisgICAgImNhMWVlYjU3ZmY2MjMwNDNh
N2U3MWYzNzBkNGI5NTc5IiwKICAgInV0aWwvd2luZG93cy93Z2xfbG9hZGVyX2F1dG9nZW4uY3Bw
IjoKICAgICAiMTU4ZTY5MzdkZDdiZDI4NzliYjQ0MDk4M2FmZDVhMzYiLAogICAidXRpbC93aW5k
b3dzL3dnbF9sb2FkZXJfYXV0b2dlbi5oIjoKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3NjcmlwdHMvY29kZV9nZW5lcmF0aW9uX2hhc2hlcy9HTF9FR0xfZW50cnlfcG9pbnRz
Lmpzb24gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zY3JpcHRzL2NvZGVfZ2VuZXJhdGlvbl9o
YXNoZXMvR0xfRUdMX2VudHJ5X3BvaW50cy5qc29uCmluZGV4IGZiYTg0Y2UwZTJhZDE3YzFjZWE0
NTQ5MzA2OGI5MzEyNWFjMzNkOTEuLjQxZjM1MjFmM2MxMDg1MmYzMDYzZWIxNTQ5NmNkNzRiNjZi
MjIxOGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NjcmlwdHMvY29kZV9n
ZW5lcmF0aW9uX2hhc2hlcy9HTF9FR0xfZW50cnlfcG9pbnRzLmpzb24KKysrIGIvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc2NyaXB0cy9jb2RlX2dlbmVyYXRpb25faGFzaGVzL0dMX0VHTF9lbnRy
eV9wb2ludHMuanNvbgpAQCAtNCwyNSArNCwyNSBAQAogICAic2NyaXB0cy9lZ2wueG1sIjoKICAg
ICAiMDEzYzU1MmU2YzUyM2FiZGNmMjY4MjY4ZWE0N2U5ZmUiLAogICAic2NyaXB0cy9lZ2xfYW5n
bGVfZXh0LnhtbCI6Ci0gICAgIjcyYmYxMGVkM2QyM2Q1Y2RmYTQ5OTM0YTAzOTNiMzBkIiwKKyAg
ICAiMzYxOGU4MzVkYmUxYjI4ZWY1YWQyMGU3ZTM2ZDEyNjIiLAogICAic2NyaXB0cy9lbnRyeV9w
b2ludF9wYWNrZWRfZWdsX2VudW1zLmpzb24iOgogICAgICJhNzJhZTg1NWM2YjQwMzkxMjEwM2I1
MTkxMzk5NTFhMSIsCiAgICJzY3JpcHRzL2VudHJ5X3BvaW50X3BhY2tlZF9nbF9lbnVtcy5qc29u
IjoKICAgICAiYTFjZGQxNTQ1ZDMwOTVmOTc3Yjk4NjlkZjU1MTMwNzEiLAogICAic2NyaXB0cy9n
ZW5lcmF0ZV9lbnRyeV9wb2ludHMucHkiOgotICAgICJmMDU2MzViMTFiMmMzNTkyMzg0YjE2YzQ4
MTc3OTMzZSIsCisgICAgIjM0ZWM1MDcwNWEyZjcwY2QyMTUxYzUzZTU3Njg5Y2NjIiwKICAgInNj
cmlwdHMvZ2wueG1sIjoKLSAgICAiZDkzZTFkNDk1MTljMjE3MDgyNjc5ODM2OTgyYjhlZWUiLAor
ICAgICI0ZWE0MmE1OTM0MzQ4ZWFiNGQzMGMwZTkyZTAwYzkwZCIsCiAgICJzY3JpcHRzL2dsX2Fu
Z2xlX2V4dC54bWwiOgotICAgICI0NzQ5ODk0NDBmOTgwYTA3OTkzNWRmZjNhYjRkN2IyNCIsCisg
ICAgIjVhYzM4NjcyYWUzYzRiMGFjYTA4YjU0NjFlYmM2NjlkIiwKICAgInNjcmlwdHMvcmVnaXN0
cnlfeG1sLnB5IjoKLSAgICAiMmQ2OTI0ZDM5OGE3OTBmNGVmODA0NzNjMDI3OWVkYTUiLAorICAg
ICJhMDRjMTBjMzMxZGRmZjczZDBmZjlhNTY0ODliZTEyOSIsCiAgICJzY3JpcHRzL3dnbC54bWwi
OgogICAgICJjMzYwMDE0MzE5MTllMWM0MzVmMTIxNWE4NWY3ZTFkYiIsCiAgICJzcmMvY29tbW9u
L2VudHJ5X3BvaW50c19lbnVtX2F1dG9nZW4uY3BwIjoKLSAgICAiMDhiZjc3NzgyZTZmYjQ2N2Vm
YTJmOTVmNjRkZWE4M2MiLAorICAgICJmODgyZWYzNDM1OWJkNDM4ZDAxNjUzZWMwMjI4YjRhOCIs
CiAgICJzcmMvY29tbW9uL2VudHJ5X3BvaW50c19lbnVtX2F1dG9nZW4uaCI6Ci0gICAgIjIzNTcz
NTJiZjQ3NjdhMDdiMjQzYWQ0YWZhYjczZGNkIiwKKyAgICAiZTk0NGExN2Y4MzJkMDBhMmFjOTc2
MmNlOTU3ZjM3MGMiLAogICAic3JjL2xpYkFOR0xFL0NvbnRleHRfZ2xfMV9hdXRvZ2VuLmgiOgog
ICAgICIxMTVkMjI0ZmQyOGIwYmMyYjI4MDAzNTRiYjU3ZmNmMyIsCiAgICJzcmMvbGliQU5HTEUv
Q29udGV4dF9nbF8yX2F1dG9nZW4uaCI6CkBAIC00Miw3ICs0Miw3IEBACiAgICJzcmMvbGliQU5H
TEUvQ29udGV4dF9nbGVzXzNfMl9hdXRvZ2VuLmgiOgogICAgICI0ODU2N2RjYTE2ZmQ4ODFkZmU2
ZDYxZmVlMGUzMTA2ZiIsCiAgICJzcmMvbGliQU5HTEUvQ29udGV4dF9nbGVzX2V4dF9hdXRvZ2Vu
LmgiOgotICAgICI5NzBjYzdmYmE4MmYwNjlhNWU5OGU2ZWNiYjI1NDE3ZSIsCisgICAgImE3NDFi
NTc3Mzc1ZDU3YmM4M2FhMDhkM2E3MTNjNzhkIiwKICAgInNyYy9saWJBTkdMRS9jYXB0dXJlL2Nh
cHR1cmVfZ2xlc18xXzBfYXV0b2dlbi5jcHAiOgogICAgICI3ZWM3ZWY4Zjc3OWI4MDlhNDVkNzRi
OTc1MDJjNDE5YiIsCiAgICJzcmMvbGliQU5HTEUvY2FwdHVyZS9jYXB0dXJlX2dsZXNfMV8wX2F1
dG9nZW4uaCI6CkBAIC02NCwxOSArNjQsMTkgQEAKICAgInNyYy9saWJBTkdMRS9jYXB0dXJlL2Nh
cHR1cmVfZ2xlc18zXzJfYXV0b2dlbi5oIjoKICAgICAiNzRlZDczNjZhZjNhNDZjMDY2MTM5N2Nm
YTI5ZWM2ZmMiLAogICAic3JjL2xpYkFOR0xFL2NhcHR1cmUvY2FwdHVyZV9nbGVzX2V4dF9hdXRv
Z2VuLmNwcCI6Ci0gICAgIjJjMDc3NGIyM2ZlODRlN2UxNzE0NDFjMWNiNDVkMTI2IiwKKyAgICAi
ZDA1ZWY1MmU0M2RmN2ZhOTExOWUxODAzZWJiZWI3YTAiLAogICAic3JjL2xpYkFOR0xFL2NhcHR1
cmUvY2FwdHVyZV9nbGVzX2V4dF9hdXRvZ2VuLmgiOgotICAgICI4MTg0M2YxNTdlMmIxMmUzOTlj
NzlkNmMwNTYwNmM5MCIsCisgICAgIjExN2Q4MGUzMjVlMDZkMDgxZWNlNzY4YzA2MWVlNWE1IiwK
ICAgInNyYy9saWJBTkdMRS9jYXB0dXJlL2ZyYW1lX2NhcHR1cmVfcmVwbGF5X2F1dG9nZW4uY3Bw
IjoKICAgICAiZTJlNjQxOWQ0M2JjOTZhNjViOGE4ZTk0MjIyYTkxMGEiLAogICAic3JjL2xpYkFO
R0xFL2NhcHR1cmUvZnJhbWVfY2FwdHVyZV91dGlsc19hdXRvZ2VuLmNwcCI6Ci0gICAgIjk2MzA3
YmQ2OWE2NDhmMWIwMjM5NTZjMDAwODYyM2M1IiwKKyAgICAiOTBjYWVjZjEwNWU3ZjdhNTAwNTYx
ZDRjNTQ0Nzg0NGIiLAogICAic3JjL2xpYkFOR0xFL2NhcHR1cmUvZnJhbWVfY2FwdHVyZV91dGls
c19hdXRvZ2VuLmgiOgotICAgICI4NDBlNGFkN2Q4NjEwZDE2MTA2YmRkNjZlMjE3OThhNSIsCisg
ICAgImM3YjQ3NjM2ZWRmNzBhMDg2Nzg4ZDI2NTA1ZWQ0MDUwIiwKICAgInNyYy9saWJBTkdMRS92
YWxpZGF0aW9uQ0xfYXV0b2dlbi5oIjoKICAgICAiMDAyMmQwY2RiNmE5ZTJlZjRhNTliNzExNjRm
NjIzMzMiLAogICAic3JjL2xpYkFOR0xFL3ZhbGlkYXRpb25FR0xfYXV0b2dlbi5oIjoKLSAgICAi
ZDlmZjAzNGJmNTJiMDNjYjFjZDYxMzJjNjA2MzlmNTUiLAorICAgICJlOTgwODMzZGI5NDkwMDVk
ZTA1ZWJmZGEzYjY1YTE4YiIsCiAgICJzcmMvbGliQU5HTEUvdmFsaWRhdGlvbkVTMV9hdXRvZ2Vu
LmgiOgogICAgICI5OWFmNWUzMjg2OTBhZTc4ZDc3MjRhODBlOTRjZmFjNSIsCiAgICJzcmMvbGli
QU5HTEUvdmFsaWRhdGlvbkVTMl9hdXRvZ2VuLmgiOgpAQCAtODgsNyArODgsNyBAQAogICAic3Jj
L2xpYkFOR0xFL3ZhbGlkYXRpb25FUzNfYXV0b2dlbi5oIjoKICAgICAiMDE0NzUwNmNlOTFjNjhk
OGNjYmNhOTY4OGM3MjUxYmEiLAogICAic3JjL2xpYkFOR0xFL3ZhbGlkYXRpb25FU0VYVF9hdXRv
Z2VuLmgiOgotICAgICJlYWI4NmI3NDhjMTc2NWZkMWI4NjMyOWQxNmExY2Y2YSIsCisgICAgImY4
M2UxNzJlM2IzZDQ0NjZiZTM3MjZmMWFhMTcwNWJjIiwKICAgInNyYy9saWJBTkdMRS92YWxpZGF0
aW9uR0wxX2F1dG9nZW4uaCI6CiAgICAgImEyNDdkZGRjNDA0MTgxODBkNGIyZGJlZmViNzVmMjMz
IiwKICAgInNyYy9saWJBTkdMRS92YWxpZGF0aW9uR0wyX2F1dG9nZW4uaCI6CkBAIC05OCw5ICs5
OCw5IEBACiAgICJzcmMvbGliQU5HTEUvdmFsaWRhdGlvbkdMNF9hdXRvZ2VuLmgiOgogICAgICIw
NDc3MTUwNzc5NDk3YWQ4OTQ5NzNmMGU0YjgzMGQ2YiIsCiAgICJzcmMvbGliRUdML2xpYkVHTF9h
dXRvZ2VuLmNwcCI6Ci0gICAgIjAzMDlkYTAwMjU3MjMzMWFkMGZjN2IyZWVmZThjMzIzIiwKKyAg
ICAiZDJhNDcxNmExZTMyNDE2YjY0YWExMWRhNzI5NGEyZDEiLAogICAic3JjL2xpYkVHTC9saWJF
R0xfYXV0b2dlbi5kZWYiOgotICAgICI0MTE4NWIxNzE4Y2NjNzA0YzZmZGM4NDE0NjVjZDQzZiIs
CisgICAgIjc3M2JlNTM1YzAwZTAxZTM0M2I1MjU2MWZjYTczYTZiIiwKICAgInNyYy9saWJHTC9l
bnRyeV9wb2ludHNfZ2xfMV9hdXRvZ2VuLmNwcCI6CiAgICAgIjgxNDhjY2I1OTdjNWM3N2RiN2Q1
ZTUzMmM3MTUyMjQzIiwKICAgInNyYy9saWJHTC9lbnRyeV9wb2ludHNfZ2xfMV9hdXRvZ2VuLmgi
OgpAQCAtMTI0LDcgKzEyNCw3IEBACiAgICJzcmMvbGliR0xFU3YyL2NsX3N0dWJzX2F1dG9nZW4u
aCI6CiAgICAgIjZkODgwYzZiNjUyODQxOTJiNTg0MmYwZTQyYWQyNzQxIiwKICAgInNyYy9saWJH
TEVTdjIvZWdsX2V4dF9zdHVic19hdXRvZ2VuLmgiOgotICAgICI1Y2JiMGYzMzQ0MWViMWUyNzI3
MjY3NDBiMWI2OTA5MCIsCisgICAgIjg2MTRjMGYzZTliZWMwOTQyMWY1NTdjNWJiNzgyNmVmIiwK
ICAgInNyYy9saWJHTEVTdjIvZWdsX2dldF9sYWJlbGVkX29iamVjdF9kYXRhLmpzb24iOgogICAg
ICIyZjQxNDhiMmRkZjM0ZTYyNjcwZTMyYzVlNmRhNDkzNyIsCiAgICJzcmMvbGliR0xFU3YyL2Vn
bF9zdHVic19hdXRvZ2VuLmgiOgpAQCAtMTM4LDkgKzEzOCw5IEBACiAgICJzcmMvbGliR0xFU3Yy
L2VudHJ5X3BvaW50c19lZ2xfYXV0b2dlbi5oIjoKICAgICAiM2JjN2E4ZGY5ZGVhZGQ3Y2ZkNjE1
ZDBjZmFkMGM2YTgiLAogICAic3JjL2xpYkdMRVN2Mi9lbnRyeV9wb2ludHNfZWdsX2V4dF9hdXRv
Z2VuLmNwcCI6Ci0gICAgIjBlMDQ2YTNjMjVlZDhkMjJkYjcwZTAxMTI0YzFmNTIzIiwKKyAgICAi
OWFjZDRlMmM3ZDRhZTYxYWRjMmNjMDEwMjlmMWRkMDgiLAogICAic3JjL2xpYkdMRVN2Mi9lbnRy
eV9wb2ludHNfZWdsX2V4dF9hdXRvZ2VuLmgiOgotICAgICI4MjU1ZTRmNzAyMTY4ODM5NmJkODE0
YzRiNmNhZGZkNiIsCisgICAgIjVjZTAzMDY3Zjc1YzYxNzlkNDdmZTg1MTg2ZGZmNjQ2IiwKICAg
InNyYy9saWJHTEVTdjIvZW50cnlfcG9pbnRzX2dsZXNfMV8wX2F1dG9nZW4uY3BwIjoKICAgICAi
NGNiOWY1ZDU2YzAwM2QxNjI3MzY1Y2ZhMzQ0NzBlZGMiLAogICAic3JjL2xpYkdMRVN2Mi9lbnRy
eV9wb2ludHNfZ2xlc18xXzBfYXV0b2dlbi5oIjoKQEAgLTE2MiwxNyArMTYyLDE3IEBACiAgICJz
cmMvbGliR0xFU3YyL2VudHJ5X3BvaW50c19nbGVzXzNfMl9hdXRvZ2VuLmgiOgogICAgICI2NDdm
OTMyYTI5OWNkYjQ3MjZiNjBiYmJhMDU5ZjBkMiIsCiAgICJzcmMvbGliR0xFU3YyL2VudHJ5X3Bv
aW50c19nbGVzX2V4dF9hdXRvZ2VuLmNwcCI6Ci0gICAgIjEwMWJjZWYxMDFhZDc1MzEzODI4NTZm
MmQ0MjhlMGFkIiwKKyAgICAiNjdmMDJlYWIyOWQ5MThjMGIyMmU2YzU1ZjgxMDZjMTMiLAogICAi
c3JjL2xpYkdMRVN2Mi9lbnRyeV9wb2ludHNfZ2xlc19leHRfYXV0b2dlbi5oIjoKLSAgICAiNmUw
MzI2NDI2YWNhMTFmNmIxYTM4NzRlZDBlYTE2YTMiLAorICAgICJlMjBlOWIxODUxNjA3NDY4NGZl
MDE5OGRjNzIxNWFmNSIsCiAgICJzcmMvbGliR0xFU3YyL2xpYkdMRVN2Ml9hdXRvZ2VuLmNwcCI6
Ci0gICAgIjExNDRhMmNkMGJhYzRkYmI4ZDUwOTc2ZTAzOTQ1OTMzIiwKKyAgICAiNmE3ZTc3NWIy
MDU2M2Q0MDUwMDVjYjFiYmNmNjdlNzYiLAogICAic3JjL2xpYkdMRVN2Mi9saWJHTEVTdjJfYXV0
b2dlbi5kZWYiOgotICAgICIzNTRmYjgyNzBlMTdiNWU0MWFjNzU0ZWQ5Y2Y5NjU4MSIsCisgICAg
IjE0YzA5Y2RlNTM3NDE2MmUyYzNkY2QxOTQ3ODA0ZjBkIiwKICAgInNyYy9saWJHTEVTdjIvbGli
R0xFU3YyX25vX2NhcHR1cmVfYXV0b2dlbi5kZWYiOgotICAgICJjYjUyNjFkODY4ZTE2OGQwZjMw
YmY2NmQzYTVmZjgxOSIsCisgICAgIjBmOTE2OGMxZWJiMWY5YzA0NGI2MjQ5OTY5YThlYzBjIiwK
ICAgInNyYy9saWJHTEVTdjIvbGliR0xFU3YyX3dpdGhfY2FwdHVyZV9hdXRvZ2VuLmRlZiI6Ci0g
ICAgIjM1MWY5ZjI2MjYwYjdiMzlmMWZjODA4Y2RiZTljNWUyIiwKKyAgICAiNGQ3N2QxZTVjZWVl
NDUzYmQ5OWExNTBmNmEyNGFhODAiLAogICAic3JjL2xpYk9wZW5DTC9saWJPcGVuQ0xfYXV0b2dl
bi5jcHAiOgogICAgICIxMDg0OTk3OGM5MTBkYzFhZjVkZDRmMGM4MTVkMTU4MSIKIH0KXCBObyBu
ZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zY3JpcHRzL2NvZGVfZ2VuZXJhdGlvbl9oYXNoZXMvR0xlbnVtX3ZhbHVlX3RvX3N0cmluZ19t
YXAuanNvbiBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NjcmlwdHMvY29kZV9nZW5lcmF0aW9u
X2hhc2hlcy9HTGVudW1fdmFsdWVfdG9fc3RyaW5nX21hcC5qc29uCmluZGV4IGZkYTBjZmUwMmRi
YjRjMmViMWUyYTBiY2U0MjIwMjg3ZDdmMDM2MzQuLmZkNGI5NzZmZmFjOTg4MmY0YTBmYTVmMDlj
MGY1OThhNWUzNjM4NmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3Njcmlw
dHMvY29kZV9nZW5lcmF0aW9uX2hhc2hlcy9HTGVudW1fdmFsdWVfdG9fc3RyaW5nX21hcC5qc29u
CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NjcmlwdHMvY29kZV9nZW5lcmF0aW9uX2hh
c2hlcy9HTGVudW1fdmFsdWVfdG9fc3RyaW5nX21hcC5qc29uCkBAIC0yLDEzICsyLDEzIEBACiAg
ICJzY3JpcHRzL2dlbl9nbF9lbnVtX3V0aWxzLnB5IjoKICAgICAiMzMyY2ZiNmYwNDI0MmQxODk2
NjQ0NWY3MGYwMDM5YjMiLAogICAic2NyaXB0cy9nbC54bWwiOgotICAgICJkOTNlMWQ0OTUxOWMy
MTcwODI2Nzk4MzY5ODJiOGVlZSIsCisgICAgIjRlYTQyYTU5MzQzNDhlYWI0ZDMwYzBlOTJlMDBj
OTBkIiwKICAgInNjcmlwdHMvZ2xfYW5nbGVfZXh0LnhtbCI6Ci0gICAgIjQ3NDk4OTQ0MGY5ODBh
MDc5OTM1ZGZmM2FiNGQ3YjI0IiwKKyAgICAiNWFjMzg2NzJhZTNjNGIwYWNhMDhiNTQ2MWViYzY2
OWQiLAogICAic2NyaXB0cy9yZWdpc3RyeV94bWwucHkiOgotICAgICIyZDY5MjRkMzk4YTc5MGY0
ZWY4MDQ3M2MwMjc5ZWRhNSIsCisgICAgImEwNGMxMGMzMzFkZGZmNzNkMGZmOWE1NjQ4OWJlMTI5
IiwKICAgInNyYy9saWJBTkdMRS9jYXB0dXJlL2dsX2VudW1fdXRpbHNfYXV0b2dlbi5jcHAiOgot
ICAgICI3MTQ1NDU5NGJkM2IxYmYzM2FhODM1MDk0MjA5MjY2OSIsCisgICAgIjg5ODQzN2ZjNjYx
NmEzMWNmYzczNGEwNmI1NzNmZmI0IiwKICAgInNyYy9saWJBTkdMRS9jYXB0dXJlL2dsX2VudW1f
dXRpbHNfYXV0b2dlbi5oIjoKICAgICAiZmIwYmI3ZjUwNmY2MDgyZWEzYjJjM2ZhMzg0ZDI3Mzki
CiB9ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvc2NyaXB0cy9jb2RlX2dlbmVyYXRpb25faGFzaGVzL01ldGFsX2Zvcm1hdF90
YWJsZS5qc29uIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc2NyaXB0cy9jb2RlX2dlbmVyYXRp
b25faGFzaGVzL01ldGFsX2Zvcm1hdF90YWJsZS5qc29uCmluZGV4IDg4ZGExNGYxZjc0NDJmOTk5
NmY5N2E3ZjU5MjMwNDU5MGFlMmFjYmUuLjY5NjUwYTE4ZGI5OTkwYTQ3YzdmMDcwNDJjMDcyYmYx
ZDUwNzNhNzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NjcmlwdHMvY29k
ZV9nZW5lcmF0aW9uX2hhc2hlcy9NZXRhbF9mb3JtYXRfdGFibGUuanNvbgorKysgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9zY3JpcHRzL2NvZGVfZ2VuZXJhdGlvbl9oYXNoZXMvTWV0YWxfZm9y
bWF0X3RhYmxlLmpzb24KQEAgLTYsNyArNiw3IEBACiAgICJzcmMvbGliQU5HTEUvcmVuZGVyZXIv
bWV0YWwvZ2VuX210bF9mb3JtYXRfdGFibGUucHkiOgogICAgICJhYmIyMzAwZTVkOWQ3MDkzMWUy
NDk3ZjgyMGY2NGJkNSIsCiAgICJzcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX2Zvcm1h
dF9tYXAuanNvbiI6Ci0gICAgIjhlZTk1ZGRlNjlhMmYwNDk3M2VhMTk0MzRlNGY5ZjNlIiwKKyAg
ICAiMDY5MzBmOWYyM2M3YTNkYTZhNzJhMTAxM2QzOWJiZjgiLAogICAic3JjL2xpYkFOR0xFL3Jl
bmRlcmVyL21ldGFsL210bF9mb3JtYXRfdGFibGVfYXV0b2dlbi5tbSI6Ci0gICAgImRjMTU2Njk5
MDU3OTlhZmFiOGIyMmJkZjQwMDQxN2NhIgorICAgICI4YTRkNWRiZWY3MmY3ZThhY2Y1OTY4OWY1
NDA3N2UxYiIKIH0KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zY3JpcHRzL2NvZGVfZ2VuZXJhdGlvbl9oYXNoZXMvT3BlbkdM
X2Rpc3BhdGNoX3RhYmxlLmpzb24gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zY3JpcHRzL2Nv
ZGVfZ2VuZXJhdGlvbl9oYXNoZXMvT3BlbkdMX2Rpc3BhdGNoX3RhYmxlLmpzb24KaW5kZXggZjBm
NThmMjU5YjdjY2EyNzEzZWMzM2ZiYzJkMzVjNzMzYzI0NzUxMC4uOTc4NTZjNTI4YmZlNGMyNTZi
MGRkNjQ1ZGFhOWNiODlmMjc5NGY4ZiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvc2NyaXB0cy9jb2RlX2dlbmVyYXRpb25faGFzaGVzL09wZW5HTF9kaXNwYXRjaF90YWJsZS5q
c29uCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NjcmlwdHMvY29kZV9nZW5lcmF0aW9u
X2hhc2hlcy9PcGVuR0xfZGlzcGF0Y2hfdGFibGUuanNvbgpAQCAtMSw2ICsxLDYgQEAKIHsKICAg
InNjcmlwdHMvZ2wueG1sIjoKLSAgICAiZDkzZTFkNDk1MTljMjE3MDgyNjc5ODM2OTgyYjhlZWUi
LAorICAgICI0ZWE0MmE1OTM0MzQ4ZWFiNGQzMGMwZTkyZTAwYzkwZCIsCiAgICJzcmMvbGliQU5H
TEUvcmVuZGVyZXIvYW5nbGVfZm9ybWF0LnB5IjoKICAgICAiMmY4ZmE3NjgwODhlMjJiMDk2M2Ji
ZGY4NDJkM2U3MjUiLAogICAic3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL0Rpc3BhdGNoVGFibGVH
TF9hdXRvZ2VuLmNwcCI6CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zY3Jp
cHRzL2NvZGVfZ2VuZXJhdGlvbl9oYXNoZXMvU1BJUi1WX2hlbHBlcnMuanNvbiBiL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3NjcmlwdHMvY29kZV9nZW5lcmF0aW9uX2hhc2hlcy9TUElSLVZfaGVs
cGVycy5qc29uCmluZGV4IDc4MDdhZGI1YThjYTYzN2M3Njg5MDA5OWQ3ZDU2ZGE3YWRkYTc3MmEu
LmI2NGNkNTBjOWY4MWQxZmQyYjYyNGMxYjFmZjlkZWMyMDJmZTE4M2EgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NjcmlwdHMvY29kZV9nZW5lcmF0aW9uX2hhc2hlcy9TUElS
LVZfaGVscGVycy5qc29uCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NjcmlwdHMvY29k
ZV9nZW5lcmF0aW9uX2hhc2hlcy9TUElSLVZfaGVscGVycy5qc29uCkBAIC0xLDYgKzEsNiBAQAog
ewogICAic3JjL2NvbW1vbi9zcGlydi9nZW5fc3BpcnZfYnVpbGRlcl9hbmRfcGFyc2VyLnB5IjoK
LSAgICAiZWU1ZjA2OTgzMzZlNWUwMjFiMzhkM2FmMDZjYzU2ZjAiLAorICAgICJkZjEwMmVmOWYx
YjUzYjhlYTVkYzk1YzAzNGE4NjliOCIsCiAgICJzcmMvY29tbW9uL3NwaXJ2L3NwaXJ2X2luc3Ry
dWN0aW9uX2J1aWxkZXJfYXV0b2dlbi5jcHAiOgogICAgICJiZjVjYzQ3Njg2ZTlkYmQwMGI2MjI5
ZTRlZTM4YTI4MyIsCiAgICJzcmMvY29tbW9uL3NwaXJ2L3NwaXJ2X2luc3RydWN0aW9uX2J1aWxk
ZXJfYXV0b2dlbi5oIjoKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3Njcmlw
dHMvY29kZV9nZW5lcmF0aW9uX2hhc2hlcy9UZXN0X3NwZWNfSlNPTi5qc29uIGIvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc2NyaXB0cy9jb2RlX2dlbmVyYXRpb25faGFzaGVzL1Rlc3Rfc3BlY19K
U09OLmpzb24KaW5kZXggY2RmMjQ5NDE1NDU4ZTIwNTA3MWVlZmRlNGM3NGQyNDAzZWRhMjAxOC4u
NmRjZjJiMjc3ZTZmNjRmZmY3ZTFlNzU2ZTViZDliMTE3MjkzYWMxNyAxMDA2NDQKLS0tIGEvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc2NyaXB0cy9jb2RlX2dlbmVyYXRpb25faGFzaGVzL1Rlc3Rf
c3BlY19KU09OLmpzb24KKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc2NyaXB0cy9jb2Rl
X2dlbmVyYXRpb25faGFzaGVzL1Rlc3Rfc3BlY19KU09OLmpzb24KQEAgLTEsMjAgKzEsMjAgQEAK
IHsKICAgImluZnJhL3NwZWNzL2FuZ2xlLmpzb24iOgotICAgICJkZjg0MjE0MjZkMzk0M2FiZjJk
Y2JkODQ2ZDE0NzNkYiIsCisgICAgImYwYzExN2U0YjRlN2JmNzgxMmJiODNlZjA3YmUzMmI2IiwK
ICAgImluZnJhL3NwZWNzL2dlbmVyYXRlX3Rlc3Rfc3BlY19qc29uLnB5IjoKLSAgICAiYTY4MTg2
N2I4ZjcxNDc2ZDA3ZTU5NTE2ZTg1MWNjYjQiLAorICAgICJiZTQ1Njk2MjZhYTkxZjg4NzI2NjRl
MmQ5Y2VmNGFjMiIsCiAgICJpbmZyYS9zcGVjcy9taXhpbnMucHlsIjoKICAgICAiMzJjZTZlM2Uw
N2ViNDg0ZjdhNThkZmQ3ZGJmYzExOGIiLAogICAiaW5mcmEvc3BlY3MvdGVzdF9zdWl0ZV9leGNl
cHRpb25zLnB5bCI6CiAgICAgIjcyMzQ2MGRhODRhOTA4ODRhOTY2OGMwN2EwODkzMzkwIiwKICAg
ImluZnJhL3NwZWNzL3Rlc3Rfc3VpdGVzLnB5bCI6Ci0gICAgIjUxY2JkZDZlZjc3N2Q1YmQ0ZWQ5
MjYyYTNkODg2NDY5IiwKKyAgICAiMmNkYTBjOGRiZjYwNjk5YTU5OGVhNTIxN2U1NjczNTQiLAog
ICAiaW5mcmEvc3BlY3MvdmFyaWFudHMucHlsIjoKICAgICAiOGNmY2FhOTlmYTA3YWQyYTJkNWQx
NGYyMjBmZDUwMzciLAogICAiaW5mcmEvc3BlY3Mvd2F0ZXJmYWxscy5weWwiOgogICAgICIzNTlh
OTg0ODc1MzhjYzlhZTk0ZWViZDA3MjUyNGI3YSIsCiAgICJ0ZXN0aW5nL2J1aWxkYm90L2dlbmVy
YXRlX2J1aWxkYm90X2pzb24ucHkiOgotICAgICI5YjhjM2FmMmM2NDE3NzUxYTQ4MDRkNzU1ODJk
MDc1MSIsCisgICAgIjlkOThlMjk0ZDc1M2YzOGYwMDIzMjg1MWI0OWZkNGZmIiwKICAgInRlc3Rp
bmcvYnVpbGRib3QvbWl4aW5zLnB5bCI6Ci0gICAgImJiZDVlMzdlZTI4YmViZGQ2OTMwNDQ5MjUz
YzA1NzlmIgorICAgICIwNTI5MWQxYWE5YTU2ODc2MzM1NWM2NTVhZDdmMjAyYyIKIH0KXCBObyBu
ZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zY3JpcHRzL2NvZGVfZ2VuZXJhdGlvbl9oYXNoZXMvVnVsa2FuX21hbmRhdG9yeV9mb3JtYXRf
c3VwcG9ydF90YWJsZS5qc29uIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc2NyaXB0cy9jb2Rl
X2dlbmVyYXRpb25faGFzaGVzL1Z1bGthbl9tYW5kYXRvcnlfZm9ybWF0X3N1cHBvcnRfdGFibGUu
anNvbgppbmRleCA2MGE2MTRiMDkzNmEzYjA3ZmZhZjRlODJlY2I1ZTNlYmUzYjY4MzVlLi5jZjk2
YzA4MzlhZjA3NDA2NGIxNDM5NDllMjY1MTIxM2Q2MmZhYjBlIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9zY3JpcHRzL2NvZGVfZ2VuZXJhdGlvbl9oYXNoZXMvVnVsa2FuX21h
bmRhdG9yeV9mb3JtYXRfc3VwcG9ydF90YWJsZS5qc29uCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3NjcmlwdHMvY29kZV9nZW5lcmF0aW9uX2hhc2hlcy9WdWxrYW5fbWFuZGF0b3J5X2Zv
cm1hdF9zdXBwb3J0X3RhYmxlLmpzb24KQEAgLTEwLDUgKzEwLDUgQEAKICAgInNyYy9saWJBTkdM
RS9yZW5kZXJlci92dWxrYW4vdmtfbWFuZGF0b3J5X2Zvcm1hdF9zdXBwb3J0X3RhYmxlX2F1dG9n
ZW4uY3BwIjoKICAgICAiYTcyNmVlNzkxZWI0OTY0YzQwNmYzOTIxZDliNzMzNDYiLAogICAidGhp
cmRfcGFydHkvdnVsa2FuLWRlcHMvdnVsa2FuLWhlYWRlcnMvc3JjL3JlZ2lzdHJ5L3ZrLnhtbCI6
Ci0gICAgIjQ1MGRiNzQ5Yzg2NWJkZmI3ODg4NDZiYTA3Yzg5ZDZkIgorICAgICJkMjgzOWJjMjg3
MWI1ZTlkNGU4MDE1YjUzMDQyMDNkNiIKIH0KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zY3JpcHRzL2NvZGVfZ2VuZXJhdGlv
bl9oYXNoZXMvb3ZlcmxheV93aWRnZXRzLmpzb24gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9z
Y3JpcHRzL2NvZGVfZ2VuZXJhdGlvbl9oYXNoZXMvb3ZlcmxheV93aWRnZXRzLmpzb24KaW5kZXgg
M2JhNDRmNGE3N2MxOWNkYjkxNmUxMzgxMDBlZTEzNTNhMjFlNjljNi4uZWMxY2YxYmEyODBlNTFk
YWNlMWRmM2M1Yjk3ZWQyMjFlNGQwMWZjYyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc2NyaXB0cy9jb2RlX2dlbmVyYXRpb25faGFzaGVzL292ZXJsYXlfd2lkZ2V0cy5qc29u
CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NjcmlwdHMvY29kZV9nZW5lcmF0aW9uX2hh
c2hlcy9vdmVybGF5X3dpZGdldHMuanNvbgpAQCAtMSwxMCArMSwxMCBAQAogewogICAic3JjL2xp
YkFOR0xFL092ZXJsYXlfYXV0b2dlbi5jcHAiOgotICAgICJjYTY4OWIzNzYxZWI0MTEyNGQ5MGU5
NjdhYTE3MTFjYSIsCisgICAgIjQ1YWM5MGM5MDYwMmMzZjIwYWU3OThjYjgwZTNjZjU4IiwKICAg
InNyYy9saWJBTkdMRS9PdmVybGF5X2F1dG9nZW4uaCI6Ci0gICAgIjhjN2NiZGI3MDUwOGNjNWEy
M2I5ZjQ0NzcxZGM3OTE5IiwKKyAgICAiY2ExN2VkM2Q3ODEyNjA3ODYwNzUzNzVkNjI3NWI5NWMi
LAogICAic3JjL2xpYkFOR0xFL2dlbl9vdmVybGF5X3dpZGdldHMucHkiOgotICAgICJhMjhkMjg0
OTlkZTU2MmQ4MzQxNDY0YWJiMmYyYmYxOCIsCisgICAgIjQ1MzBhN2Y2NWM1MTIwNmNlOWRlNjkx
NzY4M2UzNjg3IiwKICAgInNyYy9saWJBTkdMRS9vdmVybGF5X3dpZGdldHMuanNvbiI6Ci0gICAg
IjFhYWM2MTM1Njg0NmViYmI1MzNhYjIxMGUxODk1MjkwIgorICAgICI0OGUzY2I3MTY1ZDIyYTQw
NzcyYjJjNzMzZTRjOThiNSIKIH0KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zY3JpcHRzL2NvZGVfZ2VuZXJhdGlvbl9oYXNo
ZXMvcHJvY190YWJsZS5qc29uIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc2NyaXB0cy9jb2Rl
X2dlbmVyYXRpb25faGFzaGVzL3Byb2NfdGFibGUuanNvbgppbmRleCA4ODBhNWVhMWYzMjkwMmE2
OTAxNzE0N2IwOWRlMmUyYTVhZjVjZGVjLi44YTk0Y2MwMmY1NDIyNTNkOWE4YzdhZDc3MjgwYjg0
ZTgwMTdmMjlhIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zY3JpcHRzL2Nv
ZGVfZ2VuZXJhdGlvbl9oYXNoZXMvcHJvY190YWJsZS5qc29uCisrKyBiL1NvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL3NjcmlwdHMvY29kZV9nZW5lcmF0aW9uX2hhc2hlcy9wcm9jX3RhYmxlLmpzb24K
QEAgLTQsMTUgKzQsMTUgQEAKICAgInNjcmlwdHMvZWdsLnhtbCI6CiAgICAgIjAxM2M1NTJlNmM1
MjNhYmRjZjI2ODI2OGVhNDdlOWZlIiwKICAgInNjcmlwdHMvZWdsX2FuZ2xlX2V4dC54bWwiOgot
ICAgICI3MmJmMTBlZDNkMjNkNWNkZmE0OTkzNGEwMzkzYjMwZCIsCisgICAgIjM2MThlODM1ZGJl
MWIyOGVmNWFkMjBlN2UzNmQxMjYyIiwKICAgInNjcmlwdHMvZ2VuX3Byb2NfdGFibGUucHkiOgog
ICAgICI4MzM2NDQ5ZGE3ZTM2ZjQ1ZGQ2ZDcwYzQ0YWRkMmViZiIsCiAgICJzY3JpcHRzL2dsLnht
bCI6Ci0gICAgImQ5M2UxZDQ5NTE5YzIxNzA4MjY3OTgzNjk4MmI4ZWVlIiwKKyAgICAiNGVhNDJh
NTkzNDM0OGVhYjRkMzBjMGU5MmUwMGM5MGQiLAogICAic2NyaXB0cy9nbF9hbmdsZV9leHQueG1s
IjoKLSAgICAiNDc0OTg5NDQwZjk4MGEwNzk5MzVkZmYzYWI0ZDdiMjQiLAorICAgICI1YWMzODY3
MmFlM2M0YjBhY2EwOGI1NDYxZWJjNjY5ZCIsCiAgICJzY3JpcHRzL3JlZ2lzdHJ5X3htbC5weSI6
Ci0gICAgIjJkNjkyNGQzOThhNzkwZjRlZjgwNDczYzAyNzllZGE1IiwKKyAgICAiYTA0YzEwYzMz
MWRkZmY3M2QwZmY5YTU2NDg5YmUxMjkiLAogICAic2NyaXB0cy93Z2wueG1sIjoKICAgICAiYzM2
MDAxNDMxOTE5ZTFjNDM1ZjEyMTVhODVmN2UxZGIiLAogICAic3JjL2xpYkdML3Byb2NfdGFibGVf
d2dsX2F1dG9nZW4uY3BwIjoKQEAgLTIwLDcgKzIwLDcgQEAKICAgInNyYy9saWJHTEVTdjIvcHJv
Y190YWJsZV9jbF9hdXRvZ2VuLmNwcCI6CiAgICAgImVkMDAzYjBmMDQxYWFhYTM1YjY3ZDNmZTA3
ZTYxZjkxIiwKICAgInNyYy9saWJHTEVTdjIvcHJvY190YWJsZV9lZ2xfYXV0b2dlbi5jcHAiOgot
ICAgICI1MDI2Zjg2Mjk5YTAyYTRiMTQ0MDI5NWI0NmY0ZGM3NyIsCisgICAgImM2YjVkMGI2MDM5
NWNjZDMzYTFkOWUzODM0MWVlZWYzIiwKICAgInNyYy9saWJPcGVuQ0wvbGliT3BlbkNMX2F1dG9n
ZW4ubWFwIjoKICAgICAiYmM1ZjVjZjQ4MjI3MTQ5ZWQzMjEyNThhMTZlZmYxZDciCiB9ClwgTm8g
bmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvc2NyaXB0cy9jb2RlX2dlbmVyYXRpb25faGFzaGVzL3Jlc3RyaWN0ZWRfdHJhY2VzLmpzb24g
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zY3JpcHRzL2NvZGVfZ2VuZXJhdGlvbl9oYXNoZXMv
cmVzdHJpY3RlZF90cmFjZXMuanNvbgppbmRleCBkYzQ4MzU1OWI5ZTZmMWJhZTJhNzQzMzBiOWRk
M2FlYmFjYjRhMGQzLi41ZGRhZWQ2M2NkMWVkYmMzN2YwNzk1ZjMxZmE2Mzc3ZjJhODAzMzJiIDEw
MDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zY3JpcHRzL2NvZGVfZ2VuZXJhdGlv
bl9oYXNoZXMvcmVzdHJpY3RlZF90cmFjZXMuanNvbgorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9zY3JpcHRzL2NvZGVfZ2VuZXJhdGlvbl9oYXNoZXMvcmVzdHJpY3RlZF90cmFjZXMuanNv
bgpAQCAtNCw1ICs0LDUgQEAKICAgInNyYy90ZXN0cy9yZXN0cmljdGVkX3RyYWNlcy9nZW5fcmVz
dHJpY3RlZF90cmFjZXMucHkiOgogICAgICI3NzgwNDA1ZjhlMGQ5MmZhODdhNzcyZGQ2NGM2MmVm
YiIsCiAgICJzcmMvdGVzdHMvcmVzdHJpY3RlZF90cmFjZXMvcmVzdHJpY3RlZF90cmFjZXMuanNv
biI6Ci0gICAgIjVhNGI1ZWJhMGMyZWI1YWY3Nzc4YjQzZjRkNzY2NDQzIgorICAgICJkZjNjNjA5
YTFmZDIzNmEwYmIwYTRlYTk0ZDk1MDNhMyIKIH0KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxl
CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zY3JpcHRzL2VnbF9hbmdsZV9l
eHQueG1sIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc2NyaXB0cy9lZ2xfYW5nbGVfZXh0Lnht
bAppbmRleCAzN2IzZWJhZmRmNTRjYWQ3YTQ3ZWRmZjg5OGQwZWQxYzA2NzYzYzIzLi42MjZkZTc2
NTFkZmM3M2VjMjQ2MjA4NTllNDI4MGYwM2MwMzAyNTc4IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zY3JpcHRzL2VnbF9hbmdsZV9leHQueG1sCisrKyBiL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3NjcmlwdHMvZWdsX2FuZ2xlX2V4dC54bWwKQEAgLTExMyw2ICsxMTMsMTIg
QEAKICAgICAgICAgICAgIDxwcm90bz48cHl0cGU+dm9pZDwvcHl0cGU+IDxuYW1lPmVnbEhhbmRs
ZUdQVVN3aXRjaEFOR0xFPC9uYW1lPjwvcHJvdG8+CiAgICAgICAgICAgICA8cGFyYW0+PHB0eXBl
PkVHTERpc3BsYXk8L3B0eXBlPiA8bmFtZT5kcHk8L25hbWU+PC9wYXJhbT4KICAgICAgICAgPC9j
b21tYW5kPgorICAgICAgICA8Y29tbWFuZD4KKyAgICAgICAgICAgIDxwcm90bz48cHl0cGU+dm9p
ZDwvcHl0cGU+IDxuYW1lPmVnbEZvcmNlR1BVU3dpdGNoQU5HTEU8L25hbWU+PC9wcm90bz4KKyAg
ICAgICAgICAgIDxwYXJhbT48cHR5cGU+RUdMRGlzcGxheTwvcHR5cGU+IDxuYW1lPmRweTwvbmFt
ZT48L3BhcmFtPgorICAgICAgICAgICAgPHBhcmFtPjxwdHlwZT5FR0xpbnQ8L3B0eXBlPiA8bmFt
ZT5ncHVJREhpZ2g8L25hbWU+PC9wYXJhbT4KKyAgICAgICAgICAgIDxwYXJhbT48cHR5cGU+RUdM
aW50PC9wdHlwZT4gPG5hbWU+Z3B1SURMb3c8L25hbWU+PC9wYXJhbT4KKyAgICAgICAgPC9jb21t
YW5kPgogICAgICAgICA8Y29tbWFuZD4KICAgICAgICAgICAgIDxwcm90bz48cHR5cGU+RUdMQm9v
bGVhbjwvcHR5cGU+IDxuYW1lPmVnbFF1ZXJ5RGlzcGxheUF0dHJpYkFOR0xFPC9uYW1lPjwvcHJv
dG8+CiAgICAgICAgICAgICA8cGFyYW0+PHB0eXBlPkVHTERpc3BsYXk8L3B0eXBlPiA8bmFtZT5k
cHk8L25hbWU+PC9wYXJhbT4KQEAgLTE4MCw2ICsxODYsNyBAQAogICAgICAgICAgICAgICAgIDxj
b21tYW5kIG5hbWU9ImVnbFJlbGVhc2VIaWdoUG93ZXJHUFVBTkdMRSIvPgogICAgICAgICAgICAg
ICAgIDxjb21tYW5kIG5hbWU9ImVnbFJlYWNxdWlyZUhpZ2hQb3dlckdQVUFOR0xFIi8+CiAgICAg
ICAgICAgICAgICAgPGNvbW1hbmQgbmFtZT0iZWdsSGFuZGxlR1BVU3dpdGNoQU5HTEUiLz4KKyAg
ICAgICAgICAgICAgICA8Y29tbWFuZCBuYW1lPSJlZ2xGb3JjZUdQVVN3aXRjaEFOR0xFIi8+CiAg
ICAgICAgICAgICA8L3JlcXVpcmU+CiAgICAgICAgIDwvZXh0ZW5zaW9uPgogICAgICAgICA8ZXh0
ZW5zaW9uIG5hbWU9IkVHTF9BTkdMRV9kaXNwbGF5X3NlbWFwaG9yZV9zaGFyZV9ncm91cCIgc3Vw
cG9ydGVkPSJlZ2wiPgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc2NyaXB0
cy9maWxlX2V4aXN0cy5weSBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NjcmlwdHMvZmlsZV9l
eGlzdHMucHkKaW5kZXggOTc2YmY1NDZjZjliZGIzNTAxMzdlMjZhZmNiZWQ2ZTYxZmU4NDY0Ny4u
OTE0MGY0MjM0ZTljY2FiNTllN2NkZDZkOGY3Y2FjZmEyNjZkMjIwZCAxMDA2NDQKLS0tIGEvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc2NyaXB0cy9maWxlX2V4aXN0cy5weQorKysgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9zY3JpcHRzL2ZpbGVfZXhpc3RzLnB5CkBAIC0xLDQgKzEsNCBAQAot
IyEvdXNyL2Jpbi9weXRob24yCisjIS91c3IvYmluL3B5dGhvbjMKICMgQ29weXJpZ2h0IDIwMTkg
VGhlIEFOR0xFIFByb2plY3QgQXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICMgVXNlIG9m
IHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUgbGljZW5zZSB0aGF0
IGNhbiBiZQogIyBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgpkaWZmIC0tZ2l0IGEvU291cmNl
L1RoaXJkUGFydHkvQU5HTEUvc2NyaXB0cy9nZW5lcmF0ZV9lbnRyeV9wb2ludHMucHkgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zY3JpcHRzL2dlbmVyYXRlX2VudHJ5X3BvaW50cy5weQppbmRl
eCAyNGFhYzFjODkxMDg2OTMxYmE0ZjE0MGMyNDJkZTkxMDAwODBhYmM4Li41YjExYzExNjI1M2Vj
Y2ViZTZhYWFkMWY1OTgzZjY4NzY2MThiODVkIDEwMDc1NQotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zY3JpcHRzL2dlbmVyYXRlX2VudHJ5X3BvaW50cy5weQorKysgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zY3JpcHRzL2dlbmVyYXRlX2VudHJ5X3BvaW50cy5weQpAQCAtNTAsOSAr
NTAsNiBAQCBJTklUX0RJQ1QgPSB7CiAgICAgImNsSWNkR2V0UGxhdGZvcm1JRHNLSFIiOiAidHJ1
ZSIsCiB9CiAKLSMgU3RyaXAgdGhlc2Ugc3VmZml4ZXMgZnJvbSBDb250ZXh0IGVudHJ5IHBvaW50
IG5hbWVzLiBOViBpcyBleGNsdWRlZCAoZm9yIG5vdykuCi1TVFJJUF9TVUZGSVhFUyA9IFsiQU5E
Uk9JRCIsICJBTkdMRSIsICJFWFQiLCAiS0hSIiwgIk9FUyIsICJDSFJPTUlVTSIsICJPVlIiXQot
CiBURU1QTEFURV9FTlRSWV9QT0lOVF9IRUFERVIgPSAiIiJcCiAvLyBHRU5FUkFURUQgRklMRSAt
IERPIE5PVCBFRElULgogLy8gR2VuZXJhdGVkIGJ5IHtzY3JpcHRfbmFtZX0gdXNpbmcgZGF0YSBm
cm9tIHtkYXRhX3NvdXJjZV9uYW1lfS4KQEAgLTE0NjYsNyArMTQ2Myw3IEBAIGRlZiBzdHJpcF9z
dWZmaXgoYXBpLCBuYW1lKToKICAgICBpZiBpc19hbGlhc2luZ19leGNlcHRlZChhcGksIG5hbWUp
OgogICAgICAgICByZXR1cm4gbmFtZQogCi0gICAgZm9yIHN1ZmZpeCBpbiBTVFJJUF9TVUZGSVhF
UzoKKyAgICBmb3Igc3VmZml4IGluIHJlZ2lzdHJ5X3htbC5zdHJpcF9zdWZmaXhlczoKICAgICAg
ICAgaWYgbmFtZS5lbmRzd2l0aChzdWZmaXgpOgogICAgICAgICAgICAgbmFtZSA9IG5hbWVbMDot
bGVuKHN1ZmZpeCldCiAgICAgcmV0dXJuIG5hbWUKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL3NjcmlwdHMvZ2VuZXJhdGVfbmV3X3JlbmRlcmVyLnB5IGIvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvc2NyaXB0cy9nZW5lcmF0ZV9uZXdfcmVuZGVyZXIucHkKZGVsZXRlZCBmaWxl
IG1vZGUgMTAwNzU1CmluZGV4IGNkYzAxMzU4YTczNjc1ZjJkMDUxYzE5ZDVmYTZhYzQxMzJjYjNl
ZTIuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNl
L1RoaXJkUGFydHkvQU5HTEUvc2NyaXB0cy9nZW5lcmF0ZV9uZXdfcmVuZGVyZXIucHkKKysrIC9k
ZXYvbnVsbApAQCAtMSwyODYgKzAsMCBAQAotIyEvdXNyL2Jpbi9weXRob24yCi0jCi0jIENvcHly
aWdodCAyMDE1IFRoZSBBTkdMRSBQcm9qZWN0IEF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
Ci0jIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlIGxp
Y2Vuc2UgdGhhdCBjYW4gYmUKLSMgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KLSMKLSMgZ2Vu
ZXJhdGVfbmV3X3JlbmRlcmVyLnB5OgotIyAgIFV0aWxpdHkgc2NyaXB0IHRvIGdlbmVyYXRlIHN0
dWJzIGZvciBhIG5ldyBSZW5kZXJlciBjbGFzcy4KLSMgICBVc2FnZTogZ2VuZXJhdGVfbmV3X3Jl
bmRlcmVyLnB5IDxyZW5kZXJlciBuYW1lPiA8cmVuZGVyZXIgc3VmZml4PgotIyAgICAgUmVuZGVy
ZXIgbmFtZSBpcyB0aGUgZm9sZGVyIGZvciB0aGUgcmVuZGVyZXIgc3ViZGlyZWN0b3J5Ci0jICAg
ICBSZW5kZXJlciBzdWZmaXggaXMgdGhlIGFiYnJldmlhdGlvbiB0byBhcHBlbmQgYWZ0ZXIgdGhl
IGNsYXNzIG5hbWVzLgotIwotIyBUaGUgc2NyaXB0IGlzIGZhaXJseSByb2J1c3QgYnV0IG1heSBu
b3Qgd29yayBmb3IgYWxsIG5ldyBtZXRob2RzIG9yCi0jIG90aGVyIHVuZXhwZWN0ZWQgZmVhdHVy
ZXMuIEl0IGV4cGVjdHMgdGhhdCBhYnN0cmFjdCBtZXRob2RzIGFyZSBhbGwKLSMgZ3JvdXBlZCBh
ZnRlciB0aGUgcHVibGljIGRlc3RydWN0b3Igb3IgYWZ0ZXIgdGhlIHByaXZhdGUKLSMgRElTQUxM
T1dfQ09QWV9BTkRfQVNTSUdOIG1hY3JvLgotCi1pbXBvcnQgb3MsIHN5cywgcmUsIHN0cmluZwot
Ci1pZiBsZW4oc3lzLmFyZ3YpIDwgMzoKLSAgICBwcmludCgnVXNhZ2U6ICcgKyBzeXMuYXJndlsw
XSArICcgPHJlbmRlcmVyIGRpciBuYW1lPiA8cmVuZGVyZXIgY2xhc3Mgc3VmZml4PicpCi0gICAg
c3lzLmV4aXQoMSkKLQotcmVuZGVyZXJfbmFtZSA9IHN5cy5hcmd2WzFdCi1yZW5kZXJlcl9zdWZm
aXggPSBzeXMuYXJndlsyXQotCi0jIGNoYW5nZSB0byB0aGUgcmVuZGVyZXIgZGlyZWN0b3J5Ci1v
cy5jaGRpcihvcy5wYXRoLmpvaW4ob3MucGF0aC5kaXJuYW1lKHN5cy5hcmd2WzBdKSwgIi4uIiwg
InNyYyIsICJsaWJBTkdMRSIsICJyZW5kZXJlciIpKQotCi0jIGVuc3VyZSBzdWJkaXIgZXhpc3Rz
Ci1pZiBub3Qgb3MucGF0aC5pc2RpcihyZW5kZXJlcl9uYW1lKToKLSAgICBvcy5ta2RpcihyZW5k
ZXJlcl9uYW1lKQotCi1pbXBsX2NsYXNzZXMgPSBbCi0gICAgJ0J1ZmZlcicsCi0gICAgJ0NvbXBp
bGVyJywKLSAgICAnQ29udGV4dCcsCi0gICAgJ0RldmljZScsCi0gICAgJ0Rpc3BsYXknLAotICAg
ICdGZW5jZU5WJywKLSAgICAnRmVuY2VTeW5jJywKLSAgICAnRnJhbWVidWZmZXInLAotICAgICdJ
bWFnZScsCi0gICAgJ1BhdGgnLAotICAgICdQcm9ncmFtJywKLSAgICAnUXVlcnknLAotICAgICdS
ZW5kZXJidWZmZXInLAotICAgICdTYW1wbGVyJywKLSAgICAnU2hhZGVyJywKLSAgICAnU3VyZmFj
ZScsCi0gICAgJ1RleHR1cmUnLAotICAgICdUcmFuc2Zvcm1GZWVkYmFjaycsCi0gICAgJ1ZlcnRl
eEFycmF5JywKLV0KLQotaF9maWxlX3RlbXBsYXRlID0gIiIiLy8KLS8vIENvcHlyaWdodCAyMDE2
IFRoZSBBTkdMRSBQcm9qZWN0IEF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0vLyBVc2Ug
b2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZSBsaWNlbnNlIHRo
YXQgY2FuIGJlCi0vLyBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgotLy8KLS8vICRUeXBlZElt
cGwuaDoKLS8vICAgIERlZmluZXMgdGhlIGNsYXNzIGludGVyZmFjZSBmb3IgJFR5cGVkSW1wbCwg
aW1wbGVtZW50aW5nICRCYXNlSW1wbC4KLS8vCi0KLSNpZm5kZWYgTElCQU5HTEVfUkVOREVSRVJf
JHtSZW5kZXJlck5hbWVDYXBzfV8ke1R5cGVkSW1wbENhcHN9X0hfCi0jZGVmaW5lIExJQkFOR0xF
X1JFTkRFUkVSXyR7UmVuZGVyZXJOYW1lQ2Fwc31fJHtUeXBlZEltcGxDYXBzfV9IXwotCi0jaW5j
bHVkZSAibGliQU5HTEUvcmVuZGVyZXIvJEJhc2VJbXBsLmgiCi0KLW5hbWVzcGFjZSByeAotewot
Ci1jbGFzcyAkVHlwZWRJbXBsIDogcHVibGljICRCYXNlSW1wbAotewotICBwdWJsaWM6Ci0gICAg
JFR5cGVkSW1wbCgkQ29uc3RydWN0b3JQYXJhbXMpOwotICAgIH4kVHlwZWRJbXBsKCkgb3ZlcnJp
ZGU7Ci0kSW1wbE1ldGhvZERlY2xhcmF0aW9ucyRQcml2YXRlSW1wbE1ldGhvZERlY2xhcmF0aW9u
c307Ci0KLX0gIC8vIG5hbWVzcGFjZSByeAotCi0jZW5kaWYgIC8vIExJQkFOR0xFX1JFTkRFUkVS
XyR7UmVuZGVyZXJOYW1lQ2Fwc31fJHtUeXBlZEltcGxDYXBzfV9IXwotIiIiCi0KLWNwcF9maWxl
X3RlbXBsYXRlID0gIiIiLy8KLS8vIENvcHlyaWdodCAyMDE2IFRoZSBBTkdMRSBQcm9qZWN0IEF1
dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0vLyBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBp
cyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCi0vLyBmb3VuZCBp
biB0aGUgTElDRU5TRSBmaWxlLgotLy8KLS8vICRUeXBlZEltcGwuY3BwOgotLy8gICAgSW1wbGVt
ZW50cyB0aGUgY2xhc3MgbWV0aG9kcyBmb3IgJFR5cGVkSW1wbC4KLS8vCi0KLSNpbmNsdWRlICJs
aWJBTkdMRS9yZW5kZXJlci8kUmVuZGVyZXJOYW1lLyRUeXBlZEltcGwuaCIKLQotI2luY2x1ZGUg
ImNvbW1vbi9kZWJ1Zy5oIgotCi1uYW1lc3BhY2UgcngKLXsKLQotJFR5cGVkSW1wbDo6JFR5cGVk
SW1wbCgkQ29uc3RydWN0b3JQYXJhbXMpIDogJEJhc2VJbXBsKCRCYXNlQ29udHJ1Y3RvckFyZ3Mp
Ci17Ci19Ci0KLSRUeXBlZEltcGw6On4kVHlwZWRJbXBsKCkKLXsKLX0KLSRJbXBsTWV0aG9kRGVm
aW5pdGlvbnMKLX0gIC8vIG5hbWVzcGFjZSByeAotIiIiCi0KLQotZGVmIGdlbmVyYXRlX2ltcGxf
ZGVjbGFyYXRpb24oaW1wbF9zdHViKToKLSAgICAjIGVuc3VyZSB0aGUgd3JhcHBlZCBsaW5lcyBh
cmUgYWxpZ25lZCB2ZXJ0aWNhbGx5Ci0gICAgdGVtcCA9IHJlLnN1YihyJ1xuICAgICAgICAnLCAn
XG4nLCBpbXBsX3N0dWIpCi0gICAgcmV0dXJuIHRlbXAgKyAnIG92ZXJyaWRlO1xuJwotCi0KLWRl
ZiBnZW5lcmF0ZV9pbXBsX2RlZmluaXRpb24oaW1wbF9zdHViLCB0eXBlZF9pbXBsKToKLSAgICBm
dW5jdGlvbl9zaWduYXR1cmUgPSBpbXBsX3N0dWIuc3RyaXAoKQotCi0gICAgIyBzdHJpcCBjb21t
ZW50cwotICAgIGZ1bmN0aW9uX3NpZ25hdHVyZSA9IHJlLnN1YihyJ1wvXC9bXlxuXSpcbicsICcn
LCBmdW5jdGlvbl9zaWduYXR1cmUpLnN0cmlwKCkKLQotICAgIHByb2cgPSByZS5jb21waWxlKHIn
XiguK1sgXCpcJl0pKFteIFwoXCpcJl0rXCgpJykKLSAgICByZXR1cm5fdmFsdWUgPSBwcm9nLm1h
dGNoKGZ1bmN0aW9uX3NpZ25hdHVyZSkuZ3JvdXAoMSkKLQotICAgICMgZW5zdXJlIHRoZSB3cmFw
cGVkIGxpbmVzIGFyZSBhbGlnbmVkIHZlcnRpY2FsbHkKLSAgICBzcGFjZXMgPSAnICcgKiBsZW4o
dHlwZWRfaW1wbCkKLSAgICBmdW5jdGlvbl9zaWduYXR1cmUgPSByZS5zdWIocidcbiAgICAgICAg
ICAnLCAnXG4nICsgc3BhY2VzLCBmdW5jdGlvbl9zaWduYXR1cmUpCi0KLSAgICAjIGFkZCBjbGFz
cyBzY29waW5nCi0gICAgZnVuY3Rpb25fc2lnbmF0dXJlID0gcHJvZy5zdWIocidcMScgKyB0eXBl
ZF9pbXBsICsgcic6OlwyJywgZnVuY3Rpb25fc2lnbmF0dXJlKQotICAgIGZ1bmN0aW9uX3NpZ25h
dHVyZSArPSAnXG4nCi0KLSAgICByZXR1cm5fc3RhdGVtZW50ID0gJycKLSAgICByZXR1cm5fdHlw
ZSA9IHJldHVybl92YWx1ZS5zdHJpcCgpCi0KLSAgICBpZiByZXR1cm5fdHlwZSAhPSAndm9pZCc6
Ci0gICAgICAgICMgc3BlY2lhbGl6ZWQgcmV0dXJuIHZhbHVlcyBmb3IgRXJyb3JzLCBwb2ludGVy
cywgZXRjCi0gICAgICAgIGlmIHJldHVybl90eXBlID09ICdnbDo6RXJyb3InOgotICAgICAgICAg
ICAgcmV0dXJuX3N0YXRlbWVudCA9ICcgICAgcmV0dXJuIGdsOjpJbnZhbGlkT3BlcmF0aW9uKCk7
XG4nCi0gICAgICAgIGVsaWYgcmV0dXJuX3R5cGUgPT0gJ2VnbDo6RXJyb3InOgotICAgICAgICAg
ICAgcmV0dXJuX3N0YXRlbWVudCA9ICcgICAgcmV0dXJuIGVnbDo6RWdsQmFkQWNjZXNzKCk7XG4n
Ci0gICAgICAgIGVsaWYgcmV0dXJuX3R5cGUgPT0gJ0xpbmtSZXN1bHQnOgotICAgICAgICAgICAg
cmV0dXJuX3N0YXRlbWVudCA9ICcgICAgcmV0dXJuIGdsOjpJbnZhbGlkT3BlcmF0aW9uKCk7XG4n
Ci0gICAgICAgIGVsaWYgcmUuc2VhcmNoKHInXCokJywgcmV0dXJuX3R5cGUpOgotICAgICAgICAg
ICAgcmV0dXJuX3N0YXRlbWVudCA9ICcgICAgcmV0dXJuIHN0YXRpY19jYXN0PCcgKyByZXR1cm5f
dHlwZSArICc+KDApO1xuJwotICAgICAgICBlbGlmIHJlLnNlYXJjaChyJ2NvbnN0IChbXiBcJl0r
KSBcJiQnLCByZXR1cm5fdHlwZSk6Ci0gICAgICAgICAgICBvYmpfdHlwZSA9IHJlLnNlYXJjaChy
J2NvbnN0IChbXiBcJl0rKSBcJiQnLCByZXR1cm5fdHlwZSkuZ3JvdXAoMSkKLSAgICAgICAgICAg
IHJldHVybl9zdGF0ZW1lbnQgPSAnICAgIHN0YXRpYyAnICsgb2JqX3R5cGUgKyAnIGxvY2FsO1xu
JyArICcgICAgcmV0dXJuIGxvY2FsO1xuJwotICAgICAgICBlbHNlOgotICAgICAgICAgICAgcmV0
dXJuX3N0YXRlbWVudCA9ICcgICAgcmV0dXJuICcgKyByZXR1cm5fdHlwZSArICcoKTtcbicKLQot
ICAgIGJvZHkgPSAne1xuJyArICcgICAgVU5JTVBMRU1FTlRFRCgpO1xuJyArIHJldHVybl9zdGF0
ZW1lbnQgKyAnfVxuJwotCi0gICAgcmV0dXJuICdcbicgKyBmdW5jdGlvbl9zaWduYXR1cmUgKyBi
b2R5Ci0KLQotZGVmIGdldF9jb25zdHJ1Y3Rvcl9hcmdzKGNvbnN0cnVjdG9yKToKLSAgICBwYXJh
bXMgPSByZS5zZWFyY2gocidcKCguKilcKScsIGNvbnN0cnVjdG9yKS5ncm91cCgxKQotICAgIGFy
Z3MgPSAnLCAnLmpvaW4ocmUuZmluZGFsbChyJ1teXHddPyhcdyspKD86XCx8JCknLCBwYXJhbXMp
KQotICAgIHJldHVybiBwYXJhbXMsIGFyZ3MKLQotCi1kZWYgcGFyc2VfaW1wbF9oZWFkZXIoYmFz
ZV9pbXBsKToKLSAgICBpbXBsX2hfZmlsZV9wYXRoID0gYmFzZV9pbXBsICsgJy5oJwotICAgIGlt
cGxfaF9maWxlID0gb3BlbihpbXBsX2hfZmlsZV9wYXRoLCAncicpCi0KLSAgICAjIGV4dHJhY3Qg
aW1wbCBzdHVicwotICAgIGNvcHkgPSBGYWxzZQotICAgIGNvcHlfcHJpdmF0ZSA9IEZhbHNlCi0g
ICAgaW1wbF9zdHVicyA9ICcnCi0gICAgcHJpdmF0ZV9pbXBsX3N0dWJzID0gJycKLSAgICBjb25z
dHJ1Y3RvciA9IGJhc2VfaW1wbCArICcoKSB7fScKLSAgICBmb3IgbGluZSBpbiBpbXBsX2hfZmls
ZToKLSAgICAgICAgY2xlYW5fbGluZSA9IGxpbmUuc3RyaXAoKQotCi0gICAgICAgIG1hdGNoID0g
cmUuc2VhcmNoKHInXig/OmV4cGxpY2l0ICk/KCcgKyBiYXNlX2ltcGwgKyByJ1woW15cKV0qXCkp
JywgY2xlYW5fbGluZSkKLSAgICAgICAgaWYgbWF0Y2g6Ci0gICAgICAgICAgICBjb25zdHJ1Y3Rv
ciA9IG1hdGNoLmdyb3VwKDEpCi0KLSAgICAgICAgIyBiZWdpbiBjYXB0dXJlIHdoZW4gcmVhZGlu
ZyB0aGUgZGVzdHJ1Y3Rvci4KLSAgICAgICAgIyBiZWdpbiBjYXB0dXJlIGFsc28gaW4gdGhlIHBy
aXZhdGUgc2NvcGUgKGEgZmV3IHNwZWNpYWwgY2FzZXMpCi0gICAgICAgICMgZW5kIGNhcHR1cmUg
d2hlbiB3ZSByZWFjaCBhIG5vbi12aXJ0dWFsIGZ1bmN0aW9uLCBvciBkaWZmZXJlbnQgc2NvcGUu
Ci0gICAgICAgIGlmICd+JyArIGJhc2VfaW1wbCBpbiBjbGVhbl9saW5lOgotICAgICAgICAgICAg
Y29weSA9IFRydWUKLSAgICAgICAgICAgIGNvcHlfcHJpdmF0ZSA9IEZhbHNlCi0gICAgICAgIGVs
aWYgJ3ByaXZhdGU6JyBpbiBjbGVhbl9saW5lOgotICAgICAgICAgICAgY29weSA9IEZhbHNlCi0g
ICAgICAgICAgICBjb3B5X3ByaXZhdGUgPSBUcnVlCi0gICAgICAgIGVsaWYgJzsnIGluIGNsZWFu
X2xpbmUgYW5kICcgPSAwJyBub3QgaW4gY2xlYW5fbGluZToKLSAgICAgICAgICAgIGNvcHkgPSBG
YWxzZQotICAgICAgICAgICAgY29weV9wcml2YXRlID0gRmFsc2UKLSAgICAgICAgZWxpZiAnfScg
aW4gY2xlYW5fbGluZSBvciAncHJvdGVjdGVkOicgaW4gY2xlYW5fbGluZSBvciAncHJpdmF0ZTon
IGluIGNsZWFuX2xpbmU6Ci0gICAgICAgICAgICBjb3B5ID0gRmFsc2UKLSAgICAgICAgICAgIGNv
cHlfcHJpdmF0ZSA9IEZhbHNlCi0gICAgICAgIGVsaWYgY29weToKLSAgICAgICAgICAgIGltcGxf
c3R1YnMgKz0gbGluZQotICAgICAgICBlbGlmIGNvcHlfcHJpdmF0ZToKLSAgICAgICAgICAgIHBy
aXZhdGVfaW1wbF9zdHVicyArPSBsaW5lCi0KLSAgICBpbXBsX2hfZmlsZS5jbG9zZSgpCi0KLSAg
ICByZXR1cm4gaW1wbF9zdHVicywgcHJpdmF0ZV9pbXBsX3N0dWJzLCBjb25zdHJ1Y3RvcgotCi0K
LWRlZiBnZXRfYmFzZV9jbGFzcyhiYXNlX2ltcGwpOgotICAgIGltcGxfaF9maWxlX3BhdGggPSBi
YXNlX2ltcGwgKyAnLmgnCi0gICAgd2l0aCBvcGVuKGltcGxfaF9maWxlX3BhdGgsICdyJykgYXMg
aW1wbF9oX2ZpbGU6Ci0gICAgICAgIGZvciBsaW5lIGluIGltcGxfaF9maWxlOgotICAgICAgICAg
ICAgbWF0Y2ggPSByZS5zZWFyY2gocideY2xhc3MgJyArIGJhc2VfaW1wbCArIHInIDogcHVibGlj
IChcdyspJywgbGluZSkKLSAgICAgICAgICAgIGlmIG1hdGNoOgotICAgICAgICAgICAgICAgIHJl
dHVybiBtYXRjaC5ncm91cCgxKQotICAgIHJldHVybiBGYWxzZQotCi0KLWZvciBpbXBsX2NsYXNz
IGluIGltcGxfY2xhc3NlczoKLQotICAgIGJhc2VfaW1wbCA9IGltcGxfY2xhc3MgKyAnSW1wbCcK
LSAgICB0eXBlZF9pbXBsID0gaW1wbF9jbGFzcyArIHJlbmRlcmVyX3N1ZmZpeAotCi0gICAgaF9m
aWxlX3BhdGggPSBvcy5wYXRoLmpvaW4ocmVuZGVyZXJfbmFtZSwgdHlwZWRfaW1wbCArICcuaCcp
Ci0gICAgY3BwX2ZpbGVfcGF0aCA9IG9zLnBhdGguam9pbihyZW5kZXJlcl9uYW1lLCB0eXBlZF9p
bXBsICsgJy5jcHAnKQotCi0gICAgaF9maWxlID0gb3BlbihoX2ZpbGVfcGF0aCwgJ3cnKQotICAg
IGNwcF9maWxlID0gb3BlbihjcHBfZmlsZV9wYXRoLCAndycpCi0KLSAgICAjIGV4dHJhY3QgaW1w
bCBzdHVicwotICAgIGltcGxfc3R1YnMsIHByaXZhdGVfaW1wbF9zdHVicywgY29uc3RydWN0b3Ig
PSBwYXJzZV9pbXBsX2hlYWRlcihiYXNlX2ltcGwpCi0KLSAgICAjIEhhbmRsZSBiYXNlIGNsYXNz
ZXMsIHNraXBwaW5nIGFuZ2xlOjpOb25Db3B5YWJsZS4KLSAgICBiYXNlX2NsYXNzID0gZ2V0X2Jh
c2VfY2xhc3MoYmFzZV9pbXBsKQotICAgIGlmIGJhc2VfY2xhc3MgYW5kIGJhc2VfY2xhc3MgIT0g
J2FuZ2xlJzoKLSAgICAgICAgYmFzZV9pbXBsX3N0dWJzLCBiYXNlX3ByaXZhdGVfaW1wbF9zdHVi
cywgYmFzZV9jb25zdHJ1Y3RvciA9IHBhcnNlX2ltcGxfaGVhZGVyKGJhc2VfY2xhc3MpCi0gICAg
ICAgIGltcGxfc3R1YnMgKz0gYmFzZV9pbXBsX3N0dWJzCi0gICAgICAgIHByaXZhdGVfaW1wbF9z
dHVicyArPSBiYXNlX3ByaXZhdGVfaW1wbF9zdHVicwotCi0gICAgaW1wbF9tZXRob2RfZGVjbGFy
YXRpb25zID0gJycKLSAgICBpbXBsX21ldGhvZF9kZWZpbml0aW9ucyA9ICcnCi0gICAgcHJpdmF0
ZV9pbXBsX21ldGhvZF9kZWNsYXJhdGlvbnMgPSAnJwotCi0gICAgZm9yIGltcGxfc3R1YiBpbiBp
bXBsX3N0dWJzLnNwbGl0KCcgPSAwO1xuJyk6Ci0gICAgICAgICMgdXNlICd2aXJ0dWFsJyB0byBp
ZGVudGlmeSB0aGUgc3RyaW5ncyB3aXRoIGZ1bmN0aW9ucwotICAgICAgICBpZiAndmlydHVhbCcg
aW4gaW1wbF9zdHViOgotICAgICAgICAgICAgdGVtcCA9IHJlLnN1YihyJ3ZpcnR1YWwgJywgJycs
IGltcGxfc3R1YikKLSAgICAgICAgICAgIGltcGxfbWV0aG9kX2RlY2xhcmF0aW9ucyArPSBnZW5l
cmF0ZV9pbXBsX2RlY2xhcmF0aW9uKHRlbXApCi0gICAgICAgICAgICBpbXBsX21ldGhvZF9kZWZp
bml0aW9ucyArPSBnZW5lcmF0ZV9pbXBsX2RlZmluaXRpb24odGVtcCwgdHlwZWRfaW1wbCkKLQot
ICAgIGZvciBpbXBsX3N0dWIgaW4gcHJpdmF0ZV9pbXBsX3N0dWJzLnNwbGl0KCcgPSAwO1xuJyk6
Ci0gICAgICAgICMgdXNlICd2aXJ0dWFsJyB0byBpZGVudGlmeSB0aGUgc3RyaW5ncyB3aXRoIGZ1
bmN0aW9ucwotICAgICAgICBpZiAndmlydHVhbCcgaW4gaW1wbF9zdHViOgotICAgICAgICAgICAg
dGVtcCA9IHJlLnN1YihyJ3ZpcnR1YWwgJywgJycsIGltcGxfc3R1YikKLSAgICAgICAgICAgIHBy
aXZhdGVfaW1wbF9tZXRob2RfZGVjbGFyYXRpb25zICs9IGdlbmVyYXRlX2ltcGxfZGVjbGFyYXRp
b24odGVtcCkKLSAgICAgICAgICAgIGltcGxfbWV0aG9kX2RlZmluaXRpb25zICs9IGdlbmVyYXRl
X2ltcGxfZGVmaW5pdGlvbih0ZW1wLCB0eXBlZF9pbXBsKQotCi0gICAgY29uc3RydWN0b3JfcGFy
YW1zLCBiYXNlX2NvbnN0cnVjdG9yX2FyZ3MgPSBnZXRfY29uc3RydWN0b3JfYXJncyhjb25zdHJ1
Y3RvcikKLQotICAgIGlmIHByaXZhdGVfaW1wbF9tZXRob2RfZGVjbGFyYXRpb25zOgotICAgICAg
ICBwcml2YXRlX2ltcGxfbWV0aG9kX2RlY2xhcmF0aW9ucyA9ICJcbiAgcHJpdmF0ZTpcbiIgKyBw
cml2YXRlX2ltcGxfbWV0aG9kX2RlY2xhcmF0aW9ucwotCi0gICAgc3Vic3RpdHV0aW9ucyA9IHsK
LSAgICAgICAgJ0Jhc2VJbXBsJzogYmFzZV9pbXBsLAotICAgICAgICAnVHlwZWRJbXBsJzogdHlw
ZWRfaW1wbCwKLSAgICAgICAgJ1R5cGVkSW1wbENhcHMnOiB0eXBlZF9pbXBsLnVwcGVyKCksCi0g
ICAgICAgICdSZW5kZXJlck5hbWUnOiByZW5kZXJlcl9uYW1lLAotICAgICAgICAnUmVuZGVyZXJO
YW1lQ2Fwcyc6IHJlbmRlcmVyX25hbWUudXBwZXIoKSwKLSAgICAgICAgJ0ltcGxNZXRob2REZWNs
YXJhdGlvbnMnOiBpbXBsX21ldGhvZF9kZWNsYXJhdGlvbnMsCi0gICAgICAgICdJbXBsTWV0aG9k
RGVmaW5pdGlvbnMnOiBpbXBsX21ldGhvZF9kZWZpbml0aW9ucywKLSAgICAgICAgJ0NvbnN0cnVj
dG9yUGFyYW1zJzogY29uc3RydWN0b3JfcGFyYW1zLAotICAgICAgICAnQmFzZUNvbnRydWN0b3JB
cmdzJzogYmFzZV9jb25zdHJ1Y3Rvcl9hcmdzLAotICAgICAgICAnUHJpdmF0ZUltcGxNZXRob2RE
ZWNsYXJhdGlvbnMnOiBwcml2YXRlX2ltcGxfbWV0aG9kX2RlY2xhcmF0aW9ucwotICAgIH0KLQot
ICAgIGhfZmlsZS53cml0ZShzdHJpbmcuVGVtcGxhdGUoaF9maWxlX3RlbXBsYXRlKS5zdWJzdGl0
dXRlKHN1YnN0aXR1dGlvbnMpKQotICAgIGNwcF9maWxlLndyaXRlKHN0cmluZy5UZW1wbGF0ZShj
cHBfZmlsZV90ZW1wbGF0ZSkuc3Vic3RpdHV0ZShzdWJzdGl0dXRpb25zKSkKLQotICAgIGhfZmls
ZS5jbG9zZSgpCi0gICAgY3BwX2ZpbGUuY2xvc2UoKQotCi0jIFByaW50IGEgYmxvY2sgb2Ygc291
cmNlIGZpbGVzIHRvIGFkZCB0byB0aGUgYnVpbGQKLXByaW50KCJHZW5lcmF0ZWQgZmlsZXM6IikK
LWZvciBpbXBsX2NsYXNzIGluIGltcGxfY2xhc3NlczoKLSAgICBwYXRoID0gImxpYkFOR0xFL3Jl
bmRlcmVyLyIgKyByZW5kZXJlcl9uYW1lICsgIi8iICsgaW1wbF9jbGFzcyArIHJlbmRlcmVyX3N1
ZmZpeAotICAgIHByaW50KCdcJycgKyBwYXRoICsgIi5jcHBcJywiKQotICAgIHByaW50KCdcJycg
KyBwYXRoICsgIi5oXCcsIikKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3Nj
cmlwdHMvZ2wueG1sIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc2NyaXB0cy9nbC54bWwKaW5k
ZXggOWRiNjU5ZGZlNTkwMjM2YWQyZDFhNzRhYjZmM2M5N2EyZmFlMDZiNS4uYjE2OGVhOTQxODBj
NDc4MDdhODBhMTQ5NGMyYmE3ZDQxYTc0NjBhNCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc2NyaXB0cy9nbC54bWwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc2Ny
aXB0cy9nbC54bWwKQEAgLTIwOCw2ICsyMDgsMzYgQEAgdHlwZWRlZiB1bnNpZ25lZCBpbnQgR0xo
YW5kbGVBUkI7CiAgICAgICAgICAgICA8ZW51bSBuYW1lPSJHTF9GVU5DX0FERCIvPgogICAgICAg
ICAgICAgPGVudW0gbmFtZT0iR0xfRlVOQ19SRVZFUlNFX1NVQlRSQUNUIi8+CiAgICAgICAgICAg
ICA8ZW51bSBuYW1lPSJHTF9GVU5DX1NVQlRSQUNUIi8+CisgICAgICAgICAgICA8ZW51bSBuYW1l
PSJHTF9NVUxUSVBMWSIvPgorICAgICAgICAgICAgPGVudW0gbmFtZT0iR0xfTVVMVElQTFlfS0hS
Ii8+CisgICAgICAgICAgICA8ZW51bSBuYW1lPSJHTF9TQ1JFRU4iLz4KKyAgICAgICAgICAgIDxl
bnVtIG5hbWU9IkdMX1NDUkVFTl9LSFIiLz4KKyAgICAgICAgICAgIDxlbnVtIG5hbWU9IkdMX09W
RVJMQVkiLz4KKyAgICAgICAgICAgIDxlbnVtIG5hbWU9IkdMX09WRVJMQVlfS0hSIi8+CisgICAg
ICAgICAgICA8ZW51bSBuYW1lPSJHTF9EQVJLRU4iLz4KKyAgICAgICAgICAgIDxlbnVtIG5hbWU9
IkdMX0RBUktFTl9LSFIiLz4KKyAgICAgICAgICAgIDxlbnVtIG5hbWU9IkdMX0xJR0hURU4iLz4K
KyAgICAgICAgICAgIDxlbnVtIG5hbWU9IkdMX0xJR0hURU5fS0hSIi8+CisgICAgICAgICAgICA8
ZW51bSBuYW1lPSJHTF9DT0xPUkRPREdFIi8+CisgICAgICAgICAgICA8ZW51bSBuYW1lPSJHTF9D
T0xPUkRPREdFX0tIUiIvPgorICAgICAgICAgICAgPGVudW0gbmFtZT0iR0xfQ09MT1JCVVJOIi8+
CisgICAgICAgICAgICA8ZW51bSBuYW1lPSJHTF9DT0xPUkJVUk5fS0hSIi8+CisgICAgICAgICAg
ICA8ZW51bSBuYW1lPSJHTF9IQVJETElHSFQiLz4KKyAgICAgICAgICAgIDxlbnVtIG5hbWU9IkdM
X0hBUkRMSUdIVF9LSFIiLz4KKyAgICAgICAgICAgIDxlbnVtIG5hbWU9IkdMX1NPRlRMSUdIVCIv
PgorICAgICAgICAgICAgPGVudW0gbmFtZT0iR0xfU09GVExJR0hUX0tIUiIvPgorICAgICAgICAg
ICAgPGVudW0gbmFtZT0iR0xfRElGRkVSRU5DRSIvPgorICAgICAgICAgICAgPGVudW0gbmFtZT0i
R0xfRElGRkVSRU5DRV9LSFIiLz4KKyAgICAgICAgICAgIDxlbnVtIG5hbWU9IkdMX0VYQ0xVU0lP
TiIvPgorICAgICAgICAgICAgPGVudW0gbmFtZT0iR0xfRVhDTFVTSU9OX0tIUiIvPgorICAgICAg
ICAgICAgPGVudW0gbmFtZT0iR0xfSFNMX0hVRSIvPgorICAgICAgICAgICAgPGVudW0gbmFtZT0i
R0xfSFNMX0hVRV9LSFIiLz4KKyAgICAgICAgICAgIDxlbnVtIG5hbWU9IkdMX0hTTF9TQVRVUkFU
SU9OIi8+CisgICAgICAgICAgICA8ZW51bSBuYW1lPSJHTF9IU0xfU0FUVVJBVElPTl9LSFIiLz4K
KyAgICAgICAgICAgIDxlbnVtIG5hbWU9IkdMX0hTTF9DT0xPUiIvPgorICAgICAgICAgICAgPGVu
dW0gbmFtZT0iR0xfSFNMX0NPTE9SX0tIUiIvPgorICAgICAgICAgICAgPGVudW0gbmFtZT0iR0xf
SFNMX0xVTUlOT1NJVFkiLz4KKyAgICAgICAgICAgIDxlbnVtIG5hbWU9IkdMX0hTTF9MVU1JTk9T
SVRZX0tIUiIvPgogICAgICAgICA8L2dyb3VwPgogCiAgICAgICAgIDxncm91cCBuYW1lPSJCb29s
ZWFuIj4KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NjcmlwdHMvZ2xfYW5n
bGVfZXh0LnhtbCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NjcmlwdHMvZ2xfYW5nbGVfZXh0
LnhtbAppbmRleCBjMDZjOTk4OGZhNjg1ODE1NThlMWJkZDM5YWU2MWFhYjUyZWRiNzIwLi5jZDRl
MGNmMDA2Nzc2OGIzZDQ3NDI1M2U5MmY0NjYzYjJkOWNkNzk3IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9zY3JpcHRzL2dsX2FuZ2xlX2V4dC54bWwKKysrIGIvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc2NyaXB0cy9nbF9hbmdsZV9leHQueG1sCkBAIC03NzMsNyArNzczLDcg
QEAKICAgICAgICAgICAgIDxwYXJhbT48cHR5cGU+R0xzaXplaTwvcHR5cGU+IDxuYW1lPmNvdW50
PC9uYW1lPjwvcGFyYW0+CiAgICAgICAgICAgICA8cGFyYW0gZ3JvdXA9IkRyYXdFbGVtZW50c1R5
cGUiPjxwdHlwZT5HTGVudW08L3B0eXBlPiA8bmFtZT50eXBlPC9uYW1lPjwvcGFyYW0+CiAgICAg
ICAgICAgICA8cGFyYW0+Y29uc3QgPHB0eXBlPkdMdm9pZDwvcHR5cGU+ICo8bmFtZT5pbmRpY2Vz
PC9uYW1lPjwvcGFyYW0+Ci0gICAgICAgICAgICA8cGFyYW0+PHB0eXBlPkdMc2l6ZWk8L3B0eXBl
PiA8bmFtZT5pbnN0YW5jZUNvdW50czwvbmFtZT48L3BhcmFtPgorICAgICAgICAgICAgPHBhcmFt
PjxwdHlwZT5HTHNpemVpPC9wdHlwZT4gPG5hbWU+aW5zdGFuY2VDb3VudDwvbmFtZT48L3BhcmFt
PgogICAgICAgICAgICAgPHBhcmFtPjxwdHlwZT5HTGludDwvcHR5cGU+IDxuYW1lPmJhc2VWZXJ0
ZXg8L25hbWU+PC9wYXJhbT4KICAgICAgICAgICAgIDxwYXJhbT48cHR5cGU+R0x1aW50PC9wdHlw
ZT4gPG5hbWU+YmFzZUluc3RhbmNlPC9uYW1lPjwvcGFyYW0+CiAgICAgICAgIDwvY29tbWFuZD4K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NjcmlwdHMvbXN2c19wcm9qZWN0
cy5weSBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NjcmlwdHMvbXN2c19wcm9qZWN0cy5weQpk
ZWxldGVkIGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggZjI0YTk1MjE2ZWUyMDY3NjI5YjZjNWU2MjAx
YmUzYzcxZjQ0MmY0ZS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAot
LS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zY3JpcHRzL21zdnNfcHJvamVjdHMucHkKKysr
IC9kZXYvbnVsbApAQCAtMSw0MiArMCwwIEBACi0jIS91c3IvYmluL3B5dGhvbjIKLSMKLSMgQ29w
eXJpZ2h0IDIwMTcgVGhlIEFOR0xFIFByb2plY3QgQXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KLSMgVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUg
bGljZW5zZSB0aGF0IGNhbiBiZQotIyBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgotIwotIyBt
c3ZzX3Byb2plY3RzLnB5OgotIyAgIEEgaGVscGVyIHV0aWxpdHkgdGhhdCBnZW5lcmF0ZXMgVmlz
dWFsIFN0dWRpbyBwcm9qZWN0cyBmb3IgZWFjaCBvZgotIyAgIHRoZSBhdmFpbGFibGUgZGlyZWN0
b3JpZXMgaW4gJ291dCcsIGFuZCB0aGVuIHJ1bnMgYW5vdGhlciBoZWxwZXIKLSMgICB1dGlsaXR5
IHRoYXQgbWVyZ2VzIHRoZXNlIHByb2plY3RzIGludG8gb25lIHNvbHV0aW9uLgotCi1pbXBvcnQg
c3lzLCBvcywgc3VicHJvY2VzcwotCi0jIENoYW5nZSB0aGlzIHRvIHRhcmdldCBhbm90aGVyIFZT
IHZlcnNpb24uCi10YXJnZXRfaWRlID0gJ3ZzMjAxNycKLXNvbHV0aW9uX25hbWUgPSAnQU5HTEUn
Ci0KLXNjcmlwdF9kaXIgPSBvcy5wYXRoLmRpcm5hbWUoc3lzLmFyZ3ZbMF0pCi0KLSMgU2V0IHRo
ZSBDV0QgdG8gdGhlIHJvb3QgQU5HTEUgZm9sZGVyLgotb3MuY2hkaXIob3MucGF0aC5qb2luKHNj
cmlwdF9kaXIsICcuLicpKQotCi1vdXRfZGlyID0gJ291dCcKLQotCi0jIEdlbmVyYXRlIHRoZSBW
UyBzb2x1dGlvbnMgZm9yIGFueSB2YWxpZCBkaXJlY3RvcnkuCi1kZWYgZ2VuZXJhdGVfcHJvamVj
dHMoZGlybmFtZSk6Ci0gICAgYXJncyA9IFsnZ24uYmF0JywgJ2dlbicsIGRpcm5hbWUsICctLWlk
ZT0nICsgdGFyZ2V0X2lkZSwgJy0tc2xuPScgKyBzb2x1dGlvbl9uYW1lXQotICAgIHByaW50KCdS
dW5uaW5nICInICsgJyAnLmpvaW4oYXJncykgKyAnIicpCi0gICAgc3VicHJvY2Vzcy5jYWxsKGFy
Z3MpCi0KLQotZm9yIHBvdGVudGlhbF9kaXIgaW4gb3MubGlzdGRpcihvdXRfZGlyKToKLSAgICBw
YXRoID0gb3MucGF0aC5qb2luKG91dF9kaXIsIHBvdGVudGlhbF9kaXIpCi0gICAgYnVpbGRfbmlu
amFfZCA9IG9zLnBhdGguam9pbihwYXRoLCAnYnVpbGQubmluamEuZCcpCi0gICAgaWYgb3MucGF0
aC5leGlzdHMoYnVpbGRfbmluamFfZCk6Ci0gICAgICAgIGdlbmVyYXRlX3Byb2plY3RzKHBhdGgp
Ci0KLSMgUnVuIHRoZSBoZWxwZXIgdXRpbGl0eSB0aGF0IG1lcmdlcyB0aGUgcHJvamVjdHMuCi1h
cmdzID0gWydweXRob24nLCBvcy5wYXRoLmpvaW4oJ2J1aWxkJywgJ3dpbicsICdnbl9tZXRhX3Ns
bi5weScpXQotcHJpbnQoJ1J1bm5pbmcgIicgKyAnICcuam9pbihhcmdzKSArICciJykKLXN1YnBy
b2Nlc3MuY2FsbChhcmdzKQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc2Ny
aXB0cy9yZWdpc3RyeV94bWwucHkgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zY3JpcHRzL3Jl
Z2lzdHJ5X3htbC5weQppbmRleCBhODdkYjU3YzVkOTFhZDkzMjA0OTQwYWJmNzhmYzNlYjZjNGMx
NTI0Li4zOGRkMWUxMmNiNTI0ZjA5Y2E5OGY4NThhNjQyNTRkZDJlNzY5ZDE1IDEwMDY0NAotLS0g
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zY3JpcHRzL3JlZ2lzdHJ5X3htbC5weQorKysgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zY3JpcHRzL3JlZ2lzdHJ5X3htbC5weQpAQCAtMjIwLDYg
KzIyMCw3IEBAIGFuZ2xlX2VzX29ubHlfZXh0ZW5zaW9ucyA9IFsKIF0KIAogZ2xlc19lc19vbmx5
X2V4dGVuc2lvbnMgPSBbCisgICAgIkdMX0FNRF9wZXJmb3JtYW5jZV9tb25pdG9yIiwKICAgICAi
R0xfQU5EUk9JRF9leHRlbnNpb25fcGFja19lczMxYSIsCiAgICAgIkdMX0FOR0xFX2RlcHRoX3Rl
eHR1cmUiLAogICAgICJHTF9BTkdMRV90cmFuc2xhdGVkX3NoYWRlcl9zb3VyY2UiLApAQCAtMzEy
LDYgKzMxMyw4IEBAIHN1cHBvcnRlZF9lZ2xfZXh0ZW5zaW9ucyA9IFsKICAgICAiRUdMX0VYVF9n
bF9jb2xvcnNwYWNlX2Rpc3BsYXlfcDNfcGFzc3Rocm91Z2giLAogICAgICJFR0xfRVhUX2dsX2Nv
bG9yc3BhY2Vfc2NyZ2IiLAogICAgICJFR0xfRVhUX2dsX2NvbG9yc3BhY2Vfc2NyZ2JfbGluZWFy
IiwKKyAgICAiRUdMX0VYVF9pbWFnZV9kbWFfYnVmX2ltcG9ydCIsCisgICAgIkVHTF9FWFRfaW1h
Z2VfZG1hX2J1Zl9pbXBvcnRfbW9kaWZpZXJzIiwKICAgICAiRUdMX0VYVF9pbWFnZV9nbF9jb2xv
cnNwYWNlIiwKICAgICAiRUdMX0VYVF9waXhlbF9mb3JtYXRfZmxvYXQiLAogICAgICJFR0xfRVhU
X3BsYXRmb3JtX2Jhc2UiLApAQCAtMzYwLDcgKzM2Myw4IEBAIHN1cHBvcnRlZF9jbF9leHRlbnNp
b25zID0gWwogXQogCiAjIFN0cmlwIHRoZXNlIHN1ZmZpeGVzIGZyb20gQ29udGV4dCBlbnRyeSBw
b2ludCBuYW1lcy4gTlYgaXMgZXhjbHVkZWQgKGZvciBub3cpLgotc3RyaXBfc3VmZml4ZXMgPSBb
IkFOR0xFIiwgIkVYVCIsICJLSFIiLCAiT0VTIiwgIkNIUk9NSVVNIl0KK3N0cmlwX3N1ZmZpeGVz
ID0gWyJBTUQiLCAiQU5EUk9JRCIsICJBTkdMRSIsICJDSFJPTUlVTSIsICJFWFQiLCAiS0hSIiwg
Ik9FUyIsICJPVlIiXQorY2hlY2tfc29ydGVkKCdzdHJpcF9zdWZmaXhlcycsIHN0cmlwX3N1ZmZp
eGVzKQogCiAjIFRoZSBFR0xfQU5HTEVfZXhwbGljaXRfY29udGV4dCBleHRlbnNpb24gaXMgZ2Vu
ZXJhdGVkIGRpZmZlcmVudGx5IGZyb20gb3RoZXIgZXh0ZW5zaW9ucy4KICMgVG9nZ2xlIGdlbmVy
YXRpb24gaGVyZS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NjcmlwdHMv
cmVtb3ZlX2ZpbGVzLnB5IGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc2NyaXB0cy9yZW1vdmVf
ZmlsZXMucHkKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IDcyYjRjMWRiOThjZjNiZjQw
ZDVkZTk1MWU5YjQ1MWYzYjg2MWNmZTYuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc2NyaXB0cy9yZW1vdmVfZmls
ZXMucHkKKysrIC9kZXYvbnVsbApAQCAtMSwzMSArMCwwIEBACi0jIS91c3IvYmluL3B5dGhvbjIK
LSMKLSMgQ29weXJpZ2h0IDIwMTkgVGhlIEFOR0xFIFByb2plY3QgQXV0aG9ycy4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4KLSMgVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBC
U0Qtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQotIyBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxl
LgotIwotIyByZW1vdmVfZmlsZXMucHk6Ci0jICAgVGhpcyBzcGVjaWFsIGFjdGlvbiBpcyB1c2Vk
IHRvIGNsZWFudXAgb2xkIGZpbGVzIGZyb20gdGhlIGJ1aWxkIGRpcmVjdG9yeS4KLSMgICBPdGhl
cndpc2UgQU5HTEUgd2lsbCBwaWNrIHVwIHRoZSBvbGQgZmlsZShzKSwgY2F1c2luZyBidWlsZCBv
ciBydW50aW1lIGVycm9ycy4KLSMKLQotaW1wb3J0IGdsb2IKLWltcG9ydCBvcwotaW1wb3J0IHN5
cwotCi1pZiBsZW4oc3lzLmFyZ3YpIDwgMzoKLSAgICBwcmludCgiVXNhZ2U6ICIgKyBzeXMuYXJn
dlswXSArICIgPHN0YW1wX2ZpbGU+IDxyZW1vdmVfcGF0dGVybnM+IikKLQotc3RhbXBfZmlsZSA9
IHN5cy5hcmd2WzFdCi0KLWZvciBpIGluIHJhbmdlKDIsIGxlbihzeXMuYXJndikpOgotICAgIHJl
bW92ZV9wYXR0ZXJuID0gc3lzLmFyZ3ZbaV0KLSAgICByZW1vdmVfZmlsZXMgPSBnbG9iLmdsb2Io
cmVtb3ZlX3BhdHRlcm4pCi0gICAgZm9yIGYgaW4gcmVtb3ZlX2ZpbGVzOgotICAgICAgICBpZiBv
cy5wYXRoLmlzZmlsZShmKToKLSAgICAgICAgICAgIG9zLnJlbW92ZShmKQotCi0jIHRvdWNoIGFu
IHVudXNlZCBmaWxlIHRvIGtlZXAgYSB0aW1lc3RhbXAKLXdpdGggb3BlbihzdGFtcF9maWxlLCAi
dyIpIGFzIGY6Ci0gICAgZi53cml0ZSgiYmxhaCIpCi0gICAgZi5jbG9zZSgpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvYW5nbGVfY29tbWl0LmggYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvYW5nbGVfY29tbWl0LmgKaW5kZXggZTFiY2ZiYTk2NzMwNGIxYWY5
M2JmYmFlMjNlMmQ2ZGFmZGE5NmI5Yi4uZTJmZDAzMGMyMDYyNWRiNGE2YmI5MGEwZGY0OWNmYTVi
OTA1Y2JiZCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2FuZ2xlX2Nv
bW1pdC5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9hbmdsZV9jb21taXQuaApA
QCAtMSw0ICsxLDQgQEAKLSNkZWZpbmUgQU5HTEVfQ09NTUlUX0hBU0ggIjc4YzY0ZGQ3NGVlNSIK
KyNkZWZpbmUgQU5HTEVfQ09NTUlUX0hBU0ggImU3ZjI5NDQwZjAyNSIKICNkZWZpbmUgQU5HTEVf
Q09NTUlUX0hBU0hfU0laRSAxMgotI2RlZmluZSBBTkdMRV9DT01NSVRfREFURSAiMjAyMi0wMi0x
OCAxNzozOToyMyArMDAwMCIKLSNkZWZpbmUgQU5HTEVfQ09NTUlUX1BPU0lUSU9OIDE3OTgyCisj
ZGVmaW5lIEFOR0xFX0NPTU1JVF9EQVRFICIyMDIyLTAzLTIyIDE1OjU1OjUyICswMDAwIgorI2Rl
ZmluZSBBTkdMRV9DT01NSVRfUE9TSVRJT04gMTgxNzgKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3NyYy9jb21taXRfaWQucHkgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9z
cmMvY29tbWl0X2lkLnB5CmluZGV4IDI4YWY2NDgyZmFiMjc0YjdjZmUyYWQxOWIyOTNlOTViYjFl
NTdmMmEuLjAxNjlhZDU0YzdiM2M4MmQzZDQ1MjNjY2ZmNzlhMTc0MTQyMTYwNmMgMTAwNzU1Ci0t
LSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21taXRfaWQucHkKKysrIGIvU291cmNl
L1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbW1pdF9pZC5weQpAQCAtMSw0ICsxLDQgQEAKLSMhL3Vz
ci9iaW4vZW52IHB5dGhvbgorIyEvdXNyL2Jpbi9lbnYgcHl0aG9uMwogIyAgQ29weXJpZ2h0IDIw
MTggVGhlIEFOR0xFIFByb2plY3QgQXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICMgIFVz
ZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlIGxpY2Vuc2Ug
dGhhdCBjYW4gYmUKICMgIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCmRpZmYgLS1naXQgYS9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tbW9uL0Zhc3RWZWN0b3IuaCBiL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3NyYy9jb21tb24vRmFzdFZlY3Rvci5oCmluZGV4IDQ1ZmU1MmU5NDc1
YTFmMjljNzQxNTg4MTQxMGFkNmE0ZTc1NTRhN2MuLjFiN2RiNTBhNjk0NDhjNzNkMjVmNWE2YzQ5
ZDk2Yzc4NzdkNmUyMTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9j
b21tb24vRmFzdFZlY3Rvci5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21t
b24vRmFzdFZlY3Rvci5oCkBAIC00NDksMTMgKzQ0OSwxMyBAQCB2b2lkIEZhc3RWZWN0b3I8VCwg
TiwgU3RvcmFnZT46OmVuc3VyZV9jYXBhY2l0eShzaXplX3QgY2FwYWNpdHkpCiB9CiAKIHRlbXBs
YXRlIDxjbGFzcyBLZXksIGNsYXNzIFZhbHVlLCBzaXplX3QgTj4KLWNsYXNzIEZhc3RVbm9yZGVy
ZWRNYXAgZmluYWwKK2NsYXNzIEZsYXRVbm9yZGVyZWRNYXAgZmluYWwKIHsKICAgcHVibGljOgog
ICAgIHVzaW5nIFBhaXIgPSBzdGQ6OnBhaXI8S2V5LCBWYWx1ZT47CiAKLSAgICBGYXN0VW5vcmRl
cmVkTWFwKCkge30KLSAgICB+RmFzdFVub3JkZXJlZE1hcCgpIHt9CisgICAgRmxhdFVub3JkZXJl
ZE1hcCgpIHt9CisgICAgfkZsYXRVbm9yZGVyZWRNYXAoKSB7fQogCiAgICAgdm9pZCBpbnNlcnQo
S2V5IGtleSwgVmFsdWUgdmFsdWUpCiAgICAgewpAQCAtNDk3LDExICs0OTcsMTEgQEAgY2xhc3Mg
RmFzdFVub3JkZXJlZE1hcCBmaW5hbAogfTsKIAogdGVtcGxhdGUgPGNsYXNzIFQsIHNpemVfdCBO
PgotY2xhc3MgRmFzdFVub3JkZXJlZFNldCBmaW5hbAorY2xhc3MgRmxhdFVub3JkZXJlZFNldCBm
aW5hbAogewogICBwdWJsaWM6Ci0gICAgRmFzdFVub3JkZXJlZFNldCgpIHt9Ci0gICAgfkZhc3RV
bm9yZGVyZWRTZXQoKSB7fQorICAgIEZsYXRVbm9yZGVyZWRTZXQoKSB7fQorICAgIH5GbGF0VW5v
cmRlcmVkU2V0KCkge30KIAogICAgIGJvb2wgZW1wdHkoKSBjb25zdCB7IHJldHVybiBtRGF0YS5l
bXB0eSgpOyB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21t
b24vRmFzdFZlY3Rvcl91bml0dGVzdC5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
Y29tbW9uL0Zhc3RWZWN0b3JfdW5pdHRlc3QuY3BwCmluZGV4IGYyYTI3ZTM3OGUwMTFjYzMzMzc2
NjM0NjA0NWEyNWEyMzNlM2NiZmQuLmY3NzRiYzFhM2QxMjAwMGVkYWI4ZGIyMjE0NDIyODA3MDVj
YzQyMjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21tb24vRmFz
dFZlY3Rvcl91bml0dGVzdC5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2Nv
bW1vbi9GYXN0VmVjdG9yX3VuaXR0ZXN0LmNwcApAQCAtMjU3LDEwICsyNTcsMTAgQEAgVEVTVChG
YXN0VmVjdG9yLCBOb25Db3B5YWJsZSkKICAgICBFWFBFQ1RfRVEoMywgY29weVswXS54KTsKIH0K
IAotLy8gQmFzaWMgZnVuY3Rpb25hbGl0eSBmb3IgRmFzdFVub3JkZXJlZE1hcAotVEVTVChGYXN0
VW5vcmRlcmVkTWFwLCBCYXNpY1VzYWdlKQorLy8gQmFzaWMgZnVuY3Rpb25hbGl0eSBmb3IgRmxh
dFVub3JkZXJlZE1hcAorVEVTVChGbGF0VW5vcmRlcmVkTWFwLCBCYXNpY1VzYWdlKQogewotICAg
IEZhc3RVbm9yZGVyZWRNYXA8aW50LCBib29sLCAzPiB0ZXN0TWFwOworICAgIEZsYXRVbm9yZGVy
ZWRNYXA8aW50LCBib29sLCAzPiB0ZXN0TWFwOwogICAgIEVYUEVDVF9UUlVFKHRlc3RNYXAuZW1w
dHkoKSk7CiAgICAgRVhQRUNUX0VRKHRlc3RNYXAuc2l6ZSgpLCAwdSk7CiAKQEAgLTI5NCwxMCAr
Mjk0LDEwIEBAIFRFU1QoRmFzdFVub3JkZXJlZE1hcCwgQmFzaWNVc2FnZSkKICAgICB9CiB9CiAK
LS8vIEJhc2ljIGZ1bmN0aW9uYWxpdHkgZm9yIEZhc3RVbm9yZGVyZWRTZXQKLVRFU1QoRmFzdFVu
b3JkZXJlZFNldCwgQmFzaWNVc2FnZSkKKy8vIEJhc2ljIGZ1bmN0aW9uYWxpdHkgZm9yIEZsYXRV
bm9yZGVyZWRTZXQKK1RFU1QoRmxhdFVub3JkZXJlZFNldCwgQmFzaWNVc2FnZSkKIHsKLSAgICBG
YXN0VW5vcmRlcmVkU2V0PGludCwgMz4gdGVzdE1hcDsKKyAgICBGbGF0VW5vcmRlcmVkU2V0PGlu
dCwgMz4gdGVzdE1hcDsKICAgICBFWFBFQ1RfVFJVRSh0ZXN0TWFwLmVtcHR5KCkpOwogCiAgICAg
dGVzdE1hcC5pbnNlcnQoNSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9z
cmMvY29tbW9uL1BhY2tlZEVudW1zLmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9j
b21tb24vUGFja2VkRW51bXMuY3BwCmluZGV4IDgyMzllMzQwMDAyZmRiYmQyNjg2ZjE2YjRjODM4
OTdmYzA1YjFmMGEuLjRjOWMzN2FhZDZlYjdmNTY2MjUyODM3M2E2NmNlNTEzZDdhYTIyOTEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21tb24vUGFja2VkRW51bXMu
Y3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21tb24vUGFja2VkRW51bXMu
Y3BwCkBAIC0zNDcsNiArMzQ3LDUxIEBAIHN0ZDo6b3N0cmVhbSAmb3BlcmF0b3I8PChzdGQ6Om9z
dHJlYW0gJm9zLCBCbGVuZEVxdWF0aW9uVHlwZSB2YWx1ZSkKICAgICAgICAgY2FzZSBCbGVuZEVx
dWF0aW9uVHlwZTo6UmV2ZXJzZVN1YnRyYWN0OgogICAgICAgICAgICAgb3MgPDwgIkdMX0ZVTkNf
UkVWRVJTRV9TVUJUUkFDVCI7CiAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSBCbGVu
ZEVxdWF0aW9uVHlwZTo6TXVsdGlwbHk6CisgICAgICAgICAgICBvcyA8PCAiR0xfTVVMVElQTFlf
S0hSIjsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIEJsZW5kRXF1YXRpb25UeXBl
OjpTY3JlZW46CisgICAgICAgICAgICBvcyA8PCAiR0xfU0NSRUVOX0tIUiI7CisgICAgICAgICAg
ICBicmVhazsKKyAgICAgICAgY2FzZSBCbGVuZEVxdWF0aW9uVHlwZTo6T3ZlcmxheToKKyAgICAg
ICAgICAgIG9zIDw8ICJHTF9PVkVSTEFZX0tIUiI7CisgICAgICAgICAgICBicmVhazsKKyAgICAg
ICAgY2FzZSBCbGVuZEVxdWF0aW9uVHlwZTo6RGFya2VuOgorICAgICAgICAgICAgb3MgPDwgIkdM
X0RBUktFTl9LSFIiOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgQmxlbmRFcXVh
dGlvblR5cGU6OkxpZ2h0ZW46CisgICAgICAgICAgICBvcyA8PCAiR0xfTElHSFRFTl9LSFIiOwor
ICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgQmxlbmRFcXVhdGlvblR5cGU6OkNvbG9y
ZG9kZ2U6CisgICAgICAgICAgICBvcyA8PCAiR0xfQ09MT1JET0RHRV9LSFIiOworICAgICAgICAg
ICAgYnJlYWs7CisgICAgICAgIGNhc2UgQmxlbmRFcXVhdGlvblR5cGU6OkNvbG9yYnVybjoKKyAg
ICAgICAgICAgIG9zIDw8ICJHTF9DT0xPUkJVUk5fS0hSIjsKKyAgICAgICAgICAgIGJyZWFrOwor
ICAgICAgICBjYXNlIEJsZW5kRXF1YXRpb25UeXBlOjpIYXJkbGlnaHQ6CisgICAgICAgICAgICBv
cyA8PCAiR0xfSEFSRExJR0hUX0tIUiI7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2Fz
ZSBCbGVuZEVxdWF0aW9uVHlwZTo6U29mdGxpZ2h0OgorICAgICAgICAgICAgb3MgPDwgIkdMX1NP
RlRMSUdIVF9LSFIiOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgQmxlbmRFcXVh
dGlvblR5cGU6OkRpZmZlcmVuY2U6CisgICAgICAgICAgICBvcyA8PCAiR0xfRElGRkVSRU5DRV9L
SFIiOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgQmxlbmRFcXVhdGlvblR5cGU6
OkV4Y2x1c2lvbjoKKyAgICAgICAgICAgIG9zIDw8ICJHTF9FWENMVVNJT05fS0hSIjsKKyAgICAg
ICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIEJsZW5kRXF1YXRpb25UeXBlOjpIc2xIdWU6Cisg
ICAgICAgICAgICBvcyA8PCAiR0xfSFNMX0hVRV9LSFIiOworICAgICAgICAgICAgYnJlYWs7Cisg
ICAgICAgIGNhc2UgQmxlbmRFcXVhdGlvblR5cGU6OkhzbFNhdHVyYXRpb246CisgICAgICAgICAg
ICBvcyA8PCAiR0xfSFNMX1NBVFVSQVRJT05fS0hSIjsKKyAgICAgICAgICAgIGJyZWFrOworICAg
ICAgICBjYXNlIEJsZW5kRXF1YXRpb25UeXBlOjpIc2xDb2xvcjoKKyAgICAgICAgICAgIG9zIDw8
ICJHTF9IU0xfQ09MT1JfS0hSIjsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIEJs
ZW5kRXF1YXRpb25UeXBlOjpIc2xMdW1pbm9zaXR5OgorICAgICAgICAgICAgb3MgPDwgIkdMX0hT
TF9MVU1JTk9TSVRZX0tIUiI7CisgICAgICAgICAgICBicmVhazsKICAgICAgICAgZGVmYXVsdDoK
ICAgICAgICAgICAgIG9zIDw8ICJHTF9JTlZBTElEX0VOVU0iOwogICAgICAgICAgICAgYnJlYWs7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tbW9uL1BhY2tlZEVu
dW1zLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tbW9uL1BhY2tlZEVudW1zLmgK
aW5kZXggNTI5NWI5Yjk3MTE5NzUxNDBkZWQzODIzMTc1NGY3MTIxZGM0ODgzNi4uMmEwOTkzMjQz
ODNiZjEzYjNjNzAwOGIxNWU2YmUwZTVkNjQxZjI3MiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvc3JjL2NvbW1vbi9QYWNrZWRFbnVtcy5oCisrKyBiL1NvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL3NyYy9jb21tb24vUGFja2VkRW51bXMuaApAQCAtMzQxLDIzICszNDEsNzIgQEAg
ZW51bSBjbGFzcyBCbGVuZEVxdWF0aW9uVHlwZQogICAgIFVudXNlZCAgICAgICAgICA9IDMsCiAg
ICAgU3VidHJhY3QgICAgICAgID0gNCwgIC8vIEdMZW51bSA9PSAweDgwMEEKICAgICBSZXZlcnNl
U3VidHJhY3QgPSA1LCAgLy8gR0xlbnVtID09IDB4ODAwQgotICAgIEludmFsaWRFbnVtICAgICA9
IDYsCi0gICAgRW51bUNvdW50ICAgICAgID0gNgorCisgICAgTXVsdGlwbHkgICA9IDYsICAgLy8g
R0xlbnVtID09IDB4OTI5NAorICAgIFNjcmVlbiAgICAgPSA3LCAgIC8vIEdMZW51bSA9PSAweDky
OTUKKyAgICBPdmVybGF5ICAgID0gOCwgICAvLyBHTGVudW0gPT0gMHg5Mjk2CisgICAgRGFya2Vu
ICAgICA9IDksICAgLy8gR0xlbnVtID09IDB4OTI5NworICAgIExpZ2h0ZW4gICAgPSAxMCwgIC8v
IEdMZW51bSA9PSAweDkyOTgKKyAgICBDb2xvcmRvZGdlID0gMTEsICAvLyBHTGVudW0gPT0gMHg5
Mjk5CisgICAgQ29sb3JidXJuICA9IDEyLCAgLy8gR0xlbnVtID09IDB4OTI5QQorICAgIEhhcmRs
aWdodCAgPSAxMywgIC8vIEdMZW51bSA9PSAweDkyOUIKKyAgICBTb2Z0bGlnaHQgID0gMTQsICAv
LyBHTGVudW0gPT0gMHg5MjlDCisgICAgVW51c2VkMiAgICA9IDE1LAorICAgIERpZmZlcmVuY2Ug
PSAxNiwgIC8vIEdMZW51bSA9PSAweDkyOUUKKyAgICBVbnVzZWQzICAgID0gMTcsCisgICAgRXhj
bHVzaW9uICA9IDE4LCAgLy8gR0xlbnVtID09IDB4OTJBMAorCisgICAgSHNsSHVlICAgICAgICA9
IDE5LCAgLy8gR0xlbnVtID09IDB4OTJBRAorICAgIEhzbFNhdHVyYXRpb24gPSAyMCwgIC8vIEdM
ZW51bSA9PSAweDkyQUUKKyAgICBIc2xDb2xvciAgICAgID0gMjEsICAvLyBHTGVudW0gPT0gMHg5
MkFGCisgICAgSHNsTHVtaW5vc2l0eSA9IDIyLCAgLy8gR0xlbnVtID09IDB4OTJCMAorCisgICAg
SW52YWxpZEVudW0gPSAyMywKKyAgICBFbnVtQ291bnQgICA9IEludmFsaWRFbnVtCiB9OwogCit1
c2luZyBCbGVuZEVxdWF0aW9uQml0U2V0ID0gYW5nbGU6OlBhY2tlZEVudW1CaXRTZXQ8Z2w6OkJs
ZW5kRXF1YXRpb25UeXBlPjsKKwogdGVtcGxhdGUgPD4KIGNvbnN0ZXhwciBCbGVuZEVxdWF0aW9u
VHlwZSBGcm9tR0xlbnVtPEJsZW5kRXF1YXRpb25UeXBlPihHTGVudW0gZnJvbSkKIHsKLSAgICBj
b25zdCBHTGVudW0gc2NhbGVkID0gKGZyb20gLSBHTF9GVU5DX0FERCk7Ci0gICAgcmV0dXJuIChz
Y2FsZWQgPT0gc3RhdGljX2Nhc3Q8R0xlbnVtPihCbGVuZEVxdWF0aW9uVHlwZTo6VW51c2VkKSB8
fAotICAgICAgICAgICAgc2NhbGVkID49IHN0YXRpY19jYXN0PEdMZW51bT4oQmxlbmRFcXVhdGlv
blR5cGU6OkVudW1Db3VudCkpCi0gICAgICAgICAgICAgICA/IEJsZW5kRXF1YXRpb25UeXBlOjpJ
bnZhbGlkRW51bQotICAgICAgICAgICAgICAgOiBzdGF0aWNfY2FzdDxCbGVuZEVxdWF0aW9uVHlw
ZT4oc2NhbGVkKTsKKyAgICBpZiAoZnJvbSA8PSBHTF9GVU5DX1JFVkVSU0VfU1VCVFJBQ1QpCisg
ICAgeworICAgICAgICBjb25zdCBHTGVudW0gc2NhbGVkID0gKGZyb20gLSBHTF9GVU5DX0FERCk7
CisgICAgICAgIHJldHVybiAoc2NhbGVkID09IHN0YXRpY19jYXN0PEdMZW51bT4oQmxlbmRFcXVh
dGlvblR5cGU6OlVudXNlZCkpCisgICAgICAgICAgICAgICAgICAgPyBCbGVuZEVxdWF0aW9uVHlw
ZTo6SW52YWxpZEVudW0KKyAgICAgICAgICAgICAgICAgICA6IHN0YXRpY19jYXN0PEJsZW5kRXF1
YXRpb25UeXBlPihzY2FsZWQpOworICAgIH0KKyAgICBpZiAoZnJvbSA8PSBHTF9FWENMVVNJT05f
S0hSKQorICAgIHsKKyAgICAgICAgY29uc3QgR0xlbnVtIHNjYWxlZCA9CisgICAgICAgICAgICAo
ZnJvbSAtIEdMX01VTFRJUExZX0tIUiArIHN0YXRpY19jYXN0PHVpbnQzMl90PihCbGVuZEVxdWF0
aW9uVHlwZTo6TXVsdGlwbHkpKTsKKyAgICAgICAgcmV0dXJuIChzY2FsZWQgPT0gc3RhdGljX2Nh
c3Q8R0xlbnVtPihCbGVuZEVxdWF0aW9uVHlwZTo6VW51c2VkMikgfHwKKyAgICAgICAgICAgICAg
ICBzY2FsZWQgPT0gc3RhdGljX2Nhc3Q8R0xlbnVtPihCbGVuZEVxdWF0aW9uVHlwZTo6VW51c2Vk
MykpCisgICAgICAgICAgICAgICAgICAgPyBCbGVuZEVxdWF0aW9uVHlwZTo6SW52YWxpZEVudW0K
KyAgICAgICAgICAgICAgICAgICA6IHN0YXRpY19jYXN0PEJsZW5kRXF1YXRpb25UeXBlPihzY2Fs
ZWQpOworICAgIH0KKyAgICBpZiAoZnJvbSA8PSBHTF9IU0xfTFVNSU5PU0lUWV9LSFIpCisgICAg
eworICAgICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8QmxlbmRFcXVhdGlvblR5cGU+KGZyb20gLSBH
TF9IU0xfSFVFX0tIUiArCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgc3RhdGljX2Nhc3Q8dWludDMyX3Q+KEJsZW5kRXF1YXRpb25UeXBlOjpIc2xIdWUpKTsK
KyAgICB9CisgICAgcmV0dXJuIEJsZW5kRXF1YXRpb25UeXBlOjpJbnZhbGlkRW51bTsKIH0KIAog
Y29uc3RleHByIEdMZW51bSBUb0dMZW51bShCbGVuZEVxdWF0aW9uVHlwZSBmcm9tKQogewotICAg
IHJldHVybiBzdGF0aWNfY2FzdDxHTGVudW0+KGZyb20pICsgR0xfRlVOQ19BREQ7CisgICAgaWYg
KGZyb20gPD0gQmxlbmRFcXVhdGlvblR5cGU6OlJldmVyc2VTdWJ0cmFjdCkKKyAgICB7CisgICAg
ICAgIHJldHVybiBzdGF0aWNfY2FzdDxHTGVudW0+KGZyb20pICsgR0xfRlVOQ19BREQ7CisgICAg
fQorICAgIGlmIChmcm9tIDw9IEJsZW5kRXF1YXRpb25UeXBlOjpFeGNsdXNpb24pCisgICAgewor
ICAgICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8R0xlbnVtPihmcm9tKSAtIHN0YXRpY19jYXN0PEdM
ZW51bT4oQmxlbmRFcXVhdGlvblR5cGU6Ok11bHRpcGx5KSArCisgICAgICAgICAgICAgICBHTF9N
VUxUSVBMWV9LSFI7CisgICAgfQorICAgIHJldHVybiBzdGF0aWNfY2FzdDxHTGVudW0+KGZyb20p
IC0gc3RhdGljX2Nhc3Q8R0xlbnVtPihCbGVuZEVxdWF0aW9uVHlwZTo6SHNsSHVlKSArCisgICAg
ICAgICAgIEdMX0hTTF9IVUVfS0hSOwogfQogCiBBTkdMRV9WQUxJREFURV9QQUNLRURfRU5VTShC
bGVuZEVxdWF0aW9uVHlwZSwgQWRkLCBHTF9GVU5DX0FERCk7CkBAIC0zNjUsNiArNDE0LDIxIEBA
IEFOR0xFX1ZBTElEQVRFX1BBQ0tFRF9FTlVNKEJsZW5kRXF1YXRpb25UeXBlLCBNaW4sIEdMX01J
Tik7CiBBTkdMRV9WQUxJREFURV9QQUNLRURfRU5VTShCbGVuZEVxdWF0aW9uVHlwZSwgTWF4LCBH
TF9NQVgpOwogQU5HTEVfVkFMSURBVEVfUEFDS0VEX0VOVU0oQmxlbmRFcXVhdGlvblR5cGUsIFN1
YnRyYWN0LCBHTF9GVU5DX1NVQlRSQUNUKTsKIEFOR0xFX1ZBTElEQVRFX1BBQ0tFRF9FTlVNKEJs
ZW5kRXF1YXRpb25UeXBlLCBSZXZlcnNlU3VidHJhY3QsIEdMX0ZVTkNfUkVWRVJTRV9TVUJUUkFD
VCk7CitBTkdMRV9WQUxJREFURV9QQUNLRURfRU5VTShCbGVuZEVxdWF0aW9uVHlwZSwgTXVsdGlw
bHksIEdMX01VTFRJUExZX0tIUik7CitBTkdMRV9WQUxJREFURV9QQUNLRURfRU5VTShCbGVuZEVx
dWF0aW9uVHlwZSwgU2NyZWVuLCBHTF9TQ1JFRU5fS0hSKTsKK0FOR0xFX1ZBTElEQVRFX1BBQ0tF
RF9FTlVNKEJsZW5kRXF1YXRpb25UeXBlLCBPdmVybGF5LCBHTF9PVkVSTEFZX0tIUik7CitBTkdM
RV9WQUxJREFURV9QQUNLRURfRU5VTShCbGVuZEVxdWF0aW9uVHlwZSwgRGFya2VuLCBHTF9EQVJL
RU5fS0hSKTsKK0FOR0xFX1ZBTElEQVRFX1BBQ0tFRF9FTlVNKEJsZW5kRXF1YXRpb25UeXBlLCBM
aWdodGVuLCBHTF9MSUdIVEVOX0tIUik7CitBTkdMRV9WQUxJREFURV9QQUNLRURfRU5VTShCbGVu
ZEVxdWF0aW9uVHlwZSwgQ29sb3Jkb2RnZSwgR0xfQ09MT1JET0RHRV9LSFIpOworQU5HTEVfVkFM
SURBVEVfUEFDS0VEX0VOVU0oQmxlbmRFcXVhdGlvblR5cGUsIENvbG9yYnVybiwgR0xfQ09MT1JC
VVJOX0tIUik7CitBTkdMRV9WQUxJREFURV9QQUNLRURfRU5VTShCbGVuZEVxdWF0aW9uVHlwZSwg
SGFyZGxpZ2h0LCBHTF9IQVJETElHSFRfS0hSKTsKK0FOR0xFX1ZBTElEQVRFX1BBQ0tFRF9FTlVN
KEJsZW5kRXF1YXRpb25UeXBlLCBTb2Z0bGlnaHQsIEdMX1NPRlRMSUdIVF9LSFIpOworQU5HTEVf
VkFMSURBVEVfUEFDS0VEX0VOVU0oQmxlbmRFcXVhdGlvblR5cGUsIERpZmZlcmVuY2UsIEdMX0RJ
RkZFUkVOQ0VfS0hSKTsKK0FOR0xFX1ZBTElEQVRFX1BBQ0tFRF9FTlVNKEJsZW5kRXF1YXRpb25U
eXBlLCBFeGNsdXNpb24sIEdMX0VYQ0xVU0lPTl9LSFIpOworQU5HTEVfVkFMSURBVEVfUEFDS0VE
X0VOVU0oQmxlbmRFcXVhdGlvblR5cGUsIEhzbEh1ZSwgR0xfSFNMX0hVRV9LSFIpOworQU5HTEVf
VkFMSURBVEVfUEFDS0VEX0VOVU0oQmxlbmRFcXVhdGlvblR5cGUsIEhzbFNhdHVyYXRpb24sIEdM
X0hTTF9TQVRVUkFUSU9OX0tIUik7CitBTkdMRV9WQUxJREFURV9QQUNLRURfRU5VTShCbGVuZEVx
dWF0aW9uVHlwZSwgSHNsQ29sb3IsIEdMX0hTTF9DT0xPUl9LSFIpOworQU5HTEVfVkFMSURBVEVf
UEFDS0VEX0VOVU0oQmxlbmRFcXVhdGlvblR5cGUsIEhzbEx1bWlub3NpdHksIEdMX0hTTF9MVU1J
Tk9TSVRZX0tIUik7CiAKIHN0ZDo6b3N0cmVhbSAmb3BlcmF0b3I8PChzdGQ6Om9zdHJlYW0gJm9z
LCBCbGVuZEVxdWF0aW9uVHlwZSB2YWx1ZSk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL3NyYy9jb21tb24vYW5nbGV1dGlscy5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9zcmMvY29tbW9uL2FuZ2xldXRpbHMuY3BwCmluZGV4IDdkZTE0MGFiMWQwNjUzZDRhZDQz
Y2YzZmM3NWQ5ZDdjYWM0OGQxYjAuLjJiNjlmNjZkNzRhMThjNjg3OTI3YjUzNmJiMWQ3NDZiY2M2
NmJiNzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21tb24vYW5n
bGV1dGlscy5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbW1vbi9hbmds
ZXV0aWxzLmNwcApAQCAtNDUsNiArNDUsNzAgQEAgdm9pZCBTYXZlRmlsZUhlbHBlcjo6d3JpdGUo
Y29uc3QgdWludDhfdCAqZGF0YSwgc2l6ZV90IHNpemUpCiAgICAgbU9mcy53cml0ZShyZWludGVy
cHJldF9jYXN0PGNvbnN0IGNoYXIgKj4oZGF0YSksIHNpemUpOwogfQogCisvLyBBTURfcGVyZm9y
bWFuY2VfbW9uaXRvciBoZWxwZXJzLgorCitQZXJmTW9uaXRvckNvdW50ZXI6OlBlcmZNb25pdG9y
Q291bnRlcigpID0gZGVmYXVsdDsKKworUGVyZk1vbml0b3JDb3VudGVyOjp+UGVyZk1vbml0b3JD
b3VudGVyKCkgPSBkZWZhdWx0OworCitQZXJmTW9uaXRvckNvdW50ZXJHcm91cDo6UGVyZk1vbml0
b3JDb3VudGVyR3JvdXAoKSA9IGRlZmF1bHQ7CisKK1BlcmZNb25pdG9yQ291bnRlckdyb3VwOjp+
UGVyZk1vbml0b3JDb3VudGVyR3JvdXAoKSA9IGRlZmF1bHQ7CisKK3VpbnQzMl90IEdldFBlcmZN
b25pdG9yQ291bnRlckluZGV4KGNvbnN0IFBlcmZNb25pdG9yQ291bnRlcnMgJmNvdW50ZXJzLCBj
b25zdCBzdGQ6OnN0cmluZyAmbmFtZSkKK3sKKyAgICBmb3IgKHVpbnQzMl90IGNvdW50ZXJJbmRl
eCA9IDA7IGNvdW50ZXJJbmRleCA8IHN0YXRpY19jYXN0PHVpbnQzMl90Pihjb3VudGVycy5zaXpl
KCkpOworICAgICAgICAgKytjb3VudGVySW5kZXgpCisgICAgeworICAgICAgICBpZiAoY291bnRl
cnNbY291bnRlckluZGV4XS5uYW1lID09IG5hbWUpCisgICAgICAgIHsKKyAgICAgICAgICAgIHJl
dHVybiBjb3VudGVySW5kZXg7CisgICAgICAgIH0KKyAgICB9CisKKyAgICByZXR1cm4gc3RkOjpu
dW1lcmljX2xpbWl0czx1aW50MzJfdD46Om1heCgpOworfQorCit1aW50MzJfdCBHZXRQZXJmTW9u
aXRvckNvdW50ZXJHcm91cEluZGV4KGNvbnN0IFBlcmZNb25pdG9yQ291bnRlckdyb3VwcyAmZ3Jv
dXBzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzdGQ6
OnN0cmluZyAmbmFtZSkKK3sKKyAgICBmb3IgKHVpbnQzMl90IGdyb3VwSW5kZXggPSAwOyBncm91
cEluZGV4IDwgc3RhdGljX2Nhc3Q8dWludDMyX3Q+KGdyb3Vwcy5zaXplKCkpOyArK2dyb3VwSW5k
ZXgpCisgICAgeworICAgICAgICBpZiAoZ3JvdXBzW2dyb3VwSW5kZXhdLm5hbWUgPT0gbmFtZSkK
KyAgICAgICAgeworICAgICAgICAgICAgcmV0dXJuIGdyb3VwSW5kZXg7CisgICAgICAgIH0KKyAg
ICB9CisKKyAgICByZXR1cm4gc3RkOjpudW1lcmljX2xpbWl0czx1aW50MzJfdD46Om1heCgpOwor
fQorCitjb25zdCBQZXJmTW9uaXRvckNvdW50ZXIgJkdldFBlcmZNb25pdG9yQ291bnRlcihjb25z
dCBQZXJmTW9uaXRvckNvdW50ZXJzICZjb3VudGVycywKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0ZDo6c3RyaW5nICZuYW1lKQoreworICAg
IHJldHVybiBHZXRQZXJmTW9uaXRvckNvdW50ZXIoY29uc3RfY2FzdDxQZXJmTW9uaXRvckNvdW50
ZXJzICY+KGNvdW50ZXJzKSwgbmFtZSk7Cit9CisKK1BlcmZNb25pdG9yQ291bnRlciAmR2V0UGVy
Zk1vbml0b3JDb3VudGVyKFBlcmZNb25pdG9yQ291bnRlcnMgJmNvdW50ZXJzLCBjb25zdCBzdGQ6
OnN0cmluZyAmbmFtZSkKK3sKKyAgICB1aW50MzJfdCBjb3VudGVySW5kZXggPSBHZXRQZXJmTW9u
aXRvckNvdW50ZXJJbmRleChjb3VudGVycywgbmFtZSk7CisgICAgQVNTRVJUKGNvdW50ZXJJbmRl
eCA8IHN0YXRpY19jYXN0PHVpbnQzMl90Pihjb3VudGVycy5zaXplKCkpKTsKKyAgICByZXR1cm4g
Y291bnRlcnNbY291bnRlckluZGV4XTsKK30KKworY29uc3QgUGVyZk1vbml0b3JDb3VudGVyR3Jv
dXAgJkdldFBlcmZNb25pdG9yQ291bnRlckdyb3VwKGNvbnN0IFBlcmZNb25pdG9yQ291bnRlckdy
b3VwcyAmZ3JvdXBzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGNvbnN0IHN0ZDo6c3RyaW5nICZuYW1lKQoreworICAgIHJldHVybiBH
ZXRQZXJmTW9uaXRvckNvdW50ZXJHcm91cChjb25zdF9jYXN0PFBlcmZNb25pdG9yQ291bnRlckdy
b3VwcyAmPihncm91cHMpLCBuYW1lKTsKK30KKworUGVyZk1vbml0b3JDb3VudGVyR3JvdXAgJkdl
dFBlcmZNb25pdG9yQ291bnRlckdyb3VwKFBlcmZNb25pdG9yQ291bnRlckdyb3VwcyAmZ3JvdXBz
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNv
bnN0IHN0ZDo6c3RyaW5nICZuYW1lKQoreworICAgIHVpbnQzMl90IGdyb3VwSW5kZXggPSBHZXRQ
ZXJmTW9uaXRvckNvdW50ZXJHcm91cEluZGV4KGdyb3VwcywgbmFtZSk7CisgICAgQVNTRVJUKGdy
b3VwSW5kZXggPCBzdGF0aWNfY2FzdDx1aW50MzJfdD4oZ3JvdXBzLnNpemUoKSkpOworICAgIHJl
dHVybiBncm91cHNbZ3JvdXBJbmRleF07Cit9CiB9ICAvLyBuYW1lc3BhY2UgYW5nbGUKIAogc3Rk
OjpzdHJpbmcgQXJyYXlTdHJpbmcodW5zaWduZWQgaW50IGkpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tbW9uL2FuZ2xldXRpbHMuaCBiL1NvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL3NyYy9jb21tb24vYW5nbGV1dGlscy5oCmluZGV4IDA1MDFmZjA3ODE2MzUxODRl
NzIzZDYzNjQzMDU1M2E5NDhkYTQxNmEuLjk5MTYxYWNjZThhZTI4ZjgzMjExNzdhN2JhNThlNzBi
ZjZhODA2ZDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21tb24v
YW5nbGV1dGlscy5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21tb24vYW5n
bGV1dGlscy5oCkBAIC04OSw2ICs4OSw5MyBAQCBzdHJ1Y3QgU2F2ZUZpbGVIZWxwZXIKICAgICBz
dGQ6OnN0cmluZyBtRmlsZVBhdGg7CiB9OwogCisvLyBBTURfcGVyZm9ybWFuY2VfbW9uaXRvciBo
ZWxwZXJzLgorY29uc3RleHByIGNoYXIga1BlcmZNb25pdG9yRXh0ZW5zaW9uTmFtZVtdID0gIkdM
X0FNRF9wZXJmb3JtYW5jZV9tb25pdG9yIjsKKworc3RydWN0IFBlcmZNb25pdG9yQ291bnRlcgor
eworICAgIFBlcmZNb25pdG9yQ291bnRlcigpOworICAgIH5QZXJmTW9uaXRvckNvdW50ZXIoKTsK
KworICAgIHN0ZDo6c3RyaW5nIG5hbWU7CisgICAgdWludDMyX3QgdmFsdWU7Cit9OwordXNpbmcg
UGVyZk1vbml0b3JDb3VudGVycyA9IHN0ZDo6dmVjdG9yPFBlcmZNb25pdG9yQ291bnRlcj47CisK
K3N0cnVjdCBQZXJmTW9uaXRvckNvdW50ZXJHcm91cAoreworICAgIFBlcmZNb25pdG9yQ291bnRl
ckdyb3VwKCk7CisgICAgflBlcmZNb25pdG9yQ291bnRlckdyb3VwKCk7CisKKyAgICBzdGQ6OnN0
cmluZyBuYW1lOworICAgIFBlcmZNb25pdG9yQ291bnRlcnMgY291bnRlcnM7Cit9OwordXNpbmcg
UGVyZk1vbml0b3JDb3VudGVyR3JvdXBzID0gc3RkOjp2ZWN0b3I8UGVyZk1vbml0b3JDb3VudGVy
R3JvdXA+OworCit1aW50MzJfdCBHZXRQZXJmTW9uaXRvckNvdW50ZXJJbmRleChjb25zdCBQZXJm
TW9uaXRvckNvdW50ZXJzICZjb3VudGVycywgY29uc3Qgc3RkOjpzdHJpbmcgJm5hbWUpOworY29u
c3QgUGVyZk1vbml0b3JDb3VudGVyICZHZXRQZXJmTW9uaXRvckNvdW50ZXIoY29uc3QgUGVyZk1v
bml0b3JDb3VudGVycyAmY291bnRlcnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBjb25zdCBzdGQ6OnN0cmluZyAmbmFtZSk7CitQZXJmTW9uaXRvckNv
dW50ZXIgJkdldFBlcmZNb25pdG9yQ291bnRlcihQZXJmTW9uaXRvckNvdW50ZXJzICZjb3VudGVy
cywgY29uc3Qgc3RkOjpzdHJpbmcgJm5hbWUpOwordWludDMyX3QgR2V0UGVyZk1vbml0b3JDb3Vu
dGVyR3JvdXBJbmRleChjb25zdCBQZXJmTW9uaXRvckNvdW50ZXJHcm91cHMgJmdyb3VwcywKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RkOjpzdHJpbmcg
Jm5hbWUpOworY29uc3QgUGVyZk1vbml0b3JDb3VudGVyR3JvdXAgJkdldFBlcmZNb25pdG9yQ291
bnRlckdyb3VwKGNvbnN0IFBlcmZNb25pdG9yQ291bnRlckdyb3VwcyAmZ3JvdXBzLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0
IHN0ZDo6c3RyaW5nICZuYW1lKTsKK1BlcmZNb25pdG9yQ291bnRlckdyb3VwICZHZXRQZXJmTW9u
aXRvckNvdW50ZXJHcm91cChQZXJmTW9uaXRvckNvdW50ZXJHcm91cHMgJmdyb3VwcywKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzdGQ6
OnN0cmluZyAmbmFtZSk7CisKK3N0cnVjdCBQZXJmTW9uaXRvclRyaXBsZXQKK3sKKyAgICB1aW50
MzJfdCBncm91cDsKKyAgICB1aW50MzJfdCBjb3VudGVyOworICAgIHVpbnQzMl90IHZhbHVlOwor
fTsKKworI2RlZmluZSBBTkdMRV9WS19QRVJGX0NPVU5URVJTX1goRk4pICAgICAgICAgICAgICBc
CisgICAgRk4ocHJpbWFyeUJ1ZmZlcnMpICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAg
ICBGTihyZW5kZXJQYXNzZXMpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgIEZO
KHN1Ym1pdHRlZEZyYW1lcykgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgRk4od3Jp
dGVEZXNjcmlwdG9yU2V0cykgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICBGTihmbHVzaGVk
T3V0c2lkZVJlbmRlclBhc3NDb21tYW5kQnVmZmVycykgICAgXAorICAgIEZOKHJlc29sdmVJbWFn
ZUNvbW1hbmRzKSAgICAgICAgICAgICAgICAgICAgICBcCisgICAgRk4oZGVwdGhDbGVhcnMpICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICBGTihkZXB0aExvYWRzKSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgIEZOKGRlcHRoU3RvcmVzKSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBcCisgICAgRk4oc3RlbmNpbENsZWFycykgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFwKKyAgICBGTihzdGVuY2lsTG9hZHMpICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgXAorICAgIEZOKHN0ZW5jaWxTdG9yZXMpICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBcCisgICAgRk4oY29sb3JBdHRhY2htZW50VW5yZXNvbHZlcykgICAgICAgICAgICAg
ICAgIFwKKyAgICBGTihkZXB0aEF0dGFjaG1lbnRVbnJlc29sdmVzKSAgICAgICAgICAgICAgICAg
XAorICAgIEZOKHN0ZW5jaWxBdHRhY2htZW50VW5yZXNvbHZlcykgICAgICAgICAgICAgICBcCisg
ICAgRk4oY29sb3JBdHRhY2htZW50UmVzb2x2ZXMpICAgICAgICAgICAgICAgICAgIFwKKyAgICBG
TihkZXB0aEF0dGFjaG1lbnRSZXNvbHZlcykgICAgICAgICAgICAgICAgICAgXAorICAgIEZOKHN0
ZW5jaWxBdHRhY2htZW50UmVzb2x2ZXMpICAgICAgICAgICAgICAgICBcCisgICAgRk4ocmVhZE9u
bHlEZXB0aFN0ZW5jaWxSZW5kZXJQYXNzZXMpICAgICAgICAgIFwKKyAgICBGTihkZXNjcmlwdG9y
U2V0QWxsb2NhdGlvbnMpICAgICAgICAgICAgICAgICAgXAorICAgIEZOKGRlc2NyaXB0b3JTZXRD
YWNoZVRvdGFsU2l6ZSkgICAgICAgICAgICAgICBcCisgICAgRk4oZGVzY3JpcHRvclNldENhY2hl
S2V5U2l6ZUJ5dGVzKSAgICAgICAgICAgIFwKKyAgICBGTih1bmlmb3Jtc0FuZFhmYkRlc2NyaXB0
b3JTZXRDYWNoZUhpdHMpICAgICAgXAorICAgIEZOKHVuaWZvcm1zQW5kWGZiRGVzY3JpcHRvclNl
dENhY2hlTWlzc2VzKSAgICBcCisgICAgRk4odW5pZm9ybXNBbmRYZmJEZXNjcmlwdG9yU2V0Q2Fj
aGVUb3RhbFNpemUpIFwKKyAgICBGTih0ZXh0dXJlRGVzY3JpcHRvclNldENhY2hlSGl0cykgICAg
ICAgICAgICAgXAorICAgIEZOKHRleHR1cmVEZXNjcmlwdG9yU2V0Q2FjaGVNaXNzZXMpICAgICAg
ICAgICBcCisgICAgRk4odGV4dHVyZURlc2NyaXB0b3JTZXRDYWNoZVRvdGFsU2l6ZSkgICAgICAg
IFwKKyAgICBGTihzaGFkZXJCdWZmZXJzRGVzY3JpcHRvclNldENhY2hlSGl0cykgICAgICAgXAor
ICAgIEZOKHNoYWRlckJ1ZmZlcnNEZXNjcmlwdG9yU2V0Q2FjaGVNaXNzZXMpICAgICBcCisgICAg
Rk4oc2hhZGVyQnVmZmVyc0Rlc2NyaXB0b3JTZXRDYWNoZVRvdGFsU2l6ZSkgIFwKKyAgICBGTihi
dWZmZXJzR2hvc3RlZCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgIEZOKHZlcnRl
eEFycmF5U3luY1N0YXRlQ2FsbHMpICAgICAgICAgICAgICAgICBcCisgICAgRk4oYWxsb2NhdGVO
ZXdCdWZmZXJCbG9ja0NhbGxzKSAgICAgICAgICAgICAgIFwKKyAgICBGTihkeW5hbWljQnVmZmVy
QWxsb2NhdGlvbnMpCisKKyNkZWZpbmUgQU5HTEVfREVDTEFSRV9QRVJGX0NPVU5URVIoQ09VTlRF
UikgdWludDMyX3QgQ09VTlRFUjsKKworc3RydWN0IFZ1bGthblBlcmZDb3VudGVycworeworICAg
IEFOR0xFX1ZLX1BFUkZfQ09VTlRFUlNfWChBTkdMRV9ERUNMQVJFX1BFUkZfQ09VTlRFUikKK307
CisKKyN1bmRlZiBBTkdMRV9ERUNMQVJFX1BFUkZfQ09VTlRFUgorCiB9ICAvLyBuYW1lc3BhY2Ug
YW5nbGUKIAogdGVtcGxhdGUgPHR5cGVuYW1lIFQsIHNpemVfdCBOPgpkaWZmIC0tZ2l0IGEvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbW1vbi9lbnRyeV9wb2ludHNfZW51bV9hdXRvZ2Vu
LmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21tb24vZW50cnlfcG9pbnRzX2Vu
dW1fYXV0b2dlbi5jcHAKaW5kZXggZGJkNmEwMzNhMzY3ODAxMjdmN2IzMWRjMzQ3ZDRiNTA1Y2Yw
MzQ1NS4uMDY2MjQxODc4M2YzZWQ2ZGFlMWI2NTEyN2NmNzI2MmEzZmEwZjIwMiAxMDA2NDQKLS0t
IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbW1vbi9lbnRyeV9wb2ludHNfZW51bV9h
dXRvZ2VuLmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tbW9uL2VudHJ5
X3BvaW50c19lbnVtX2F1dG9nZW4uY3BwCkBAIC0zMTQsNiArMzE0LDggQEAgY29uc3QgY2hhciAq
R2V0RW50cnlQb2ludE5hbWUoRW50cnlQb2ludCBlcCkKICAgICAgICAgICAgIHJldHVybiAiZWds
RHVwTmF0aXZlRmVuY2VGREFORFJPSUQiOwogICAgICAgICBjYXNlIEVudHJ5UG9pbnQ6OkVHTEV4
cG9ydFZrSW1hZ2VBTkdMRToKICAgICAgICAgICAgIHJldHVybiAiZWdsRXhwb3J0VmtJbWFnZUFO
R0xFIjsKKyAgICAgICAgY2FzZSBFbnRyeVBvaW50OjpFR0xGb3JjZUdQVVN3aXRjaEFOR0xFOgor
ICAgICAgICAgICAgcmV0dXJuICJlZ2xGb3JjZUdQVVN3aXRjaEFOR0xFIjsKICAgICAgICAgY2Fz
ZSBFbnRyeVBvaW50OjpFR0xHZXRDb21wb3NpdG9yVGltaW5nQU5EUk9JRDoKICAgICAgICAgICAg
IHJldHVybiAiZWdsR2V0Q29tcG9zaXRvclRpbWluZ0FORFJPSUQiOwogICAgICAgICBjYXNlIEVu
dHJ5UG9pbnQ6OkVHTEdldENvbXBvc2l0b3JUaW1pbmdTdXBwb3J0ZWRBTkRST0lEOgpAQCAtMzky
LDYgKzM5NCwxMCBAQCBjb25zdCBjaGFyICpHZXRFbnRyeVBvaW50TmFtZShFbnRyeVBvaW50IGVw
KQogICAgICAgICAgICAgcmV0dXJuICJlZ2xRdWVyeURpc3BsYXlBdHRyaWJBTkdMRSI7CiAgICAg
ICAgIGNhc2UgRW50cnlQb2ludDo6RUdMUXVlcnlEaXNwbGF5QXR0cmliRVhUOgogICAgICAgICAg
ICAgcmV0dXJuICJlZ2xRdWVyeURpc3BsYXlBdHRyaWJFWFQiOworICAgICAgICBjYXNlIEVudHJ5
UG9pbnQ6OkVHTFF1ZXJ5RG1hQnVmRm9ybWF0c0VYVDoKKyAgICAgICAgICAgIHJldHVybiAiZWds
UXVlcnlEbWFCdWZGb3JtYXRzRVhUIjsKKyAgICAgICAgY2FzZSBFbnRyeVBvaW50OjpFR0xRdWVy
eURtYUJ1Zk1vZGlmaWVyc0VYVDoKKyAgICAgICAgICAgIHJldHVybiAiZWdsUXVlcnlEbWFCdWZN
b2RpZmllcnNFWFQiOwogICAgICAgICBjYXNlIEVudHJ5UG9pbnQ6OkVHTFF1ZXJ5U3RyZWFtS0hS
OgogICAgICAgICAgICAgcmV0dXJuICJlZ2xRdWVyeVN0cmVhbUtIUiI7CiAgICAgICAgIGNhc2Ug
RW50cnlQb2ludDo6RUdMUXVlcnlTdHJlYW11NjRLSFI6CkBAIC00ODIsNiArNDg4LDggQEAgY29u
c3QgY2hhciAqR2V0RW50cnlQb2ludE5hbWUoRW50cnlQb2ludCBlcCkKICAgICAgICAgICAgIHJl
dHVybiAiZ2xCZWdpbiI7CiAgICAgICAgIGNhc2UgRW50cnlQb2ludDo6R0xCZWdpbkNvbmRpdGlv
bmFsUmVuZGVyOgogICAgICAgICAgICAgcmV0dXJuICJnbEJlZ2luQ29uZGl0aW9uYWxSZW5kZXIi
OworICAgICAgICBjYXNlIEVudHJ5UG9pbnQ6OkdMQmVnaW5QZXJmTW9uaXRvckFNRDoKKyAgICAg
ICAgICAgIHJldHVybiAiZ2xCZWdpblBlcmZNb25pdG9yQU1EIjsKICAgICAgICAgY2FzZSBFbnRy
eVBvaW50OjpHTEJlZ2luUXVlcnk6CiAgICAgICAgICAgICByZXR1cm4gImdsQmVnaW5RdWVyeSI7
CiAgICAgICAgIGNhc2UgRW50cnlQb2ludDo6R0xCZWdpblF1ZXJ5RVhUOgpAQCAtODk2LDYgKzkw
NCw4IEBAIGNvbnN0IGNoYXIgKkdldEVudHJ5UG9pbnROYW1lKEVudHJ5UG9pbnQgZXApCiAgICAg
ICAgICAgICByZXR1cm4gImdsRGVsZXRlTGlzdHMiOwogICAgICAgICBjYXNlIEVudHJ5UG9pbnQ6
OkdMRGVsZXRlTWVtb3J5T2JqZWN0c0VYVDoKICAgICAgICAgICAgIHJldHVybiAiZ2xEZWxldGVN
ZW1vcnlPYmplY3RzRVhUIjsKKyAgICAgICAgY2FzZSBFbnRyeVBvaW50OjpHTERlbGV0ZVBlcmZN
b25pdG9yc0FNRDoKKyAgICAgICAgICAgIHJldHVybiAiZ2xEZWxldGVQZXJmTW9uaXRvcnNBTUQi
OwogICAgICAgICBjYXNlIEVudHJ5UG9pbnQ6OkdMRGVsZXRlUHJvZ3JhbToKICAgICAgICAgICAg
IHJldHVybiAiZ2xEZWxldGVQcm9ncmFtIjsKICAgICAgICAgY2FzZSBFbnRyeVBvaW50OjpHTERl
bGV0ZVByb2dyYW1QaXBlbGluZXM6CkBAIC0xMDgwLDYgKzEwOTAsOCBAQCBjb25zdCBjaGFyICpH
ZXRFbnRyeVBvaW50TmFtZShFbnRyeVBvaW50IGVwKQogICAgICAgICAgICAgcmV0dXJuICJnbEVu
ZENvbmRpdGlvbmFsUmVuZGVyIjsKICAgICAgICAgY2FzZSBFbnRyeVBvaW50OjpHTEVuZExpc3Q6
CiAgICAgICAgICAgICByZXR1cm4gImdsRW5kTGlzdCI7CisgICAgICAgIGNhc2UgRW50cnlQb2lu
dDo6R0xFbmRQZXJmTW9uaXRvckFNRDoKKyAgICAgICAgICAgIHJldHVybiAiZ2xFbmRQZXJmTW9u
aXRvckFNRCI7CiAgICAgICAgIGNhc2UgRW50cnlQb2ludDo6R0xFbmRRdWVyeToKICAgICAgICAg
ICAgIHJldHVybiAiZ2xFbmRRdWVyeSI7CiAgICAgICAgIGNhc2UgRW50cnlQb2ludDo6R0xFbmRR
dWVyeUVYVDoKQEAgLTEyMDAsNiArMTIxMiw4IEBAIGNvbnN0IGNoYXIgKkdldEVudHJ5UG9pbnRO
YW1lKEVudHJ5UG9pbnQgZXApCiAgICAgICAgICAgICByZXR1cm4gImdsR2VuRnJhbWVidWZmZXJz
T0VTIjsKICAgICAgICAgY2FzZSBFbnRyeVBvaW50OjpHTEdlbkxpc3RzOgogICAgICAgICAgICAg
cmV0dXJuICJnbEdlbkxpc3RzIjsKKyAgICAgICAgY2FzZSBFbnRyeVBvaW50OjpHTEdlblBlcmZN
b25pdG9yc0FNRDoKKyAgICAgICAgICAgIHJldHVybiAiZ2xHZW5QZXJmTW9uaXRvcnNBTUQiOwog
ICAgICAgICBjYXNlIEVudHJ5UG9pbnQ6OkdMR2VuUHJvZ3JhbVBpcGVsaW5lczoKICAgICAgICAg
ICAgIHJldHVybiAiZ2xHZW5Qcm9ncmFtUGlwZWxpbmVzIjsKICAgICAgICAgY2FzZSBFbnRyeVBv
aW50OjpHTEdlblByb2dyYW1QaXBlbGluZXNFWFQ6CkBAIC0xNDEwLDYgKzE0MjQsMTggQEAgY29u
c3QgY2hhciAqR2V0RW50cnlQb2ludE5hbWUoRW50cnlQb2ludCBlcCkKICAgICAgICAgICAgIHJl
dHVybiAiZ2xHZXRPYmplY3RQdHJMYWJlbCI7CiAgICAgICAgIGNhc2UgRW50cnlQb2ludDo6R0xH
ZXRPYmplY3RQdHJMYWJlbEtIUjoKICAgICAgICAgICAgIHJldHVybiAiZ2xHZXRPYmplY3RQdHJM
YWJlbEtIUiI7CisgICAgICAgIGNhc2UgRW50cnlQb2ludDo6R0xHZXRQZXJmTW9uaXRvckNvdW50
ZXJEYXRhQU1EOgorICAgICAgICAgICAgcmV0dXJuICJnbEdldFBlcmZNb25pdG9yQ291bnRlckRh
dGFBTUQiOworICAgICAgICBjYXNlIEVudHJ5UG9pbnQ6OkdMR2V0UGVyZk1vbml0b3JDb3VudGVy
SW5mb0FNRDoKKyAgICAgICAgICAgIHJldHVybiAiZ2xHZXRQZXJmTW9uaXRvckNvdW50ZXJJbmZv
QU1EIjsKKyAgICAgICAgY2FzZSBFbnRyeVBvaW50OjpHTEdldFBlcmZNb25pdG9yQ291bnRlclN0
cmluZ0FNRDoKKyAgICAgICAgICAgIHJldHVybiAiZ2xHZXRQZXJmTW9uaXRvckNvdW50ZXJTdHJp
bmdBTUQiOworICAgICAgICBjYXNlIEVudHJ5UG9pbnQ6OkdMR2V0UGVyZk1vbml0b3JDb3VudGVy
c0FNRDoKKyAgICAgICAgICAgIHJldHVybiAiZ2xHZXRQZXJmTW9uaXRvckNvdW50ZXJzQU1EIjsK
KyAgICAgICAgY2FzZSBFbnRyeVBvaW50OjpHTEdldFBlcmZNb25pdG9yR3JvdXBTdHJpbmdBTUQ6
CisgICAgICAgICAgICByZXR1cm4gImdsR2V0UGVyZk1vbml0b3JHcm91cFN0cmluZ0FNRCI7Cisg
ICAgICAgIGNhc2UgRW50cnlQb2ludDo6R0xHZXRQZXJmTW9uaXRvckdyb3Vwc0FNRDoKKyAgICAg
ICAgICAgIHJldHVybiAiZ2xHZXRQZXJmTW9uaXRvckdyb3Vwc0FNRCI7CiAgICAgICAgIGNhc2Ug
RW50cnlQb2ludDo6R0xHZXRQaXhlbE1hcGZ2OgogICAgICAgICAgICAgcmV0dXJuICJnbEdldFBp
eGVsTWFwZnYiOwogICAgICAgICBjYXNlIEVudHJ5UG9pbnQ6OkdMR2V0UGl4ZWxNYXB1aXY6CkBA
IC0yNjI2LDYgKzI2NTIsOCBAQCBjb25zdCBjaGFyICpHZXRFbnRyeVBvaW50TmFtZShFbnRyeVBv
aW50IGVwKQogICAgICAgICAgICAgcmV0dXJuICJnbFNlY29uZGFyeUNvbG9yUG9pbnRlciI7CiAg
ICAgICAgIGNhc2UgRW50cnlQb2ludDo6R0xTZWxlY3RCdWZmZXI6CiAgICAgICAgICAgICByZXR1
cm4gImdsU2VsZWN0QnVmZmVyIjsKKyAgICAgICAgY2FzZSBFbnRyeVBvaW50OjpHTFNlbGVjdFBl
cmZNb25pdG9yQ291bnRlcnNBTUQ6CisgICAgICAgICAgICByZXR1cm4gImdsU2VsZWN0UGVyZk1v
bml0b3JDb3VudGVyc0FNRCI7CiAgICAgICAgIGNhc2UgRW50cnlQb2ludDo6R0xTZW1hcGhvcmVQ
YXJhbWV0ZXJ1aTY0dkVYVDoKICAgICAgICAgICAgIHJldHVybiAiZ2xTZW1hcGhvcmVQYXJhbWV0
ZXJ1aTY0dkVYVCI7CiAgICAgICAgIGNhc2UgRW50cnlQb2ludDo6R0xTZXRGZW5jZU5WOgpkaWZm
IC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbW1vbi9lbnRyeV9wb2ludHNf
ZW51bV9hdXRvZ2VuLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tbW9uL2VudHJ5
X3BvaW50c19lbnVtX2F1dG9nZW4uaAppbmRleCBjMTc4ODk0ZTg2ODU2ZDRmYWM0OWE1NzYzM2Q4
NjE0NzMxMWFlMjA5Li43YTNkYjMxM2Y2ZGQ1Y2UxODQ3Y2UxMWFiYzk4NTFjYTNkY2RkY2U3IDEw
MDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tbW9uL2VudHJ5X3BvaW50
c19lbnVtX2F1dG9nZW4uaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tbW9u
L2VudHJ5X3BvaW50c19lbnVtX2F1dG9nZW4uaApAQCAtMTYzLDYgKzE2Myw3IEBAIGVudW0gY2xh
c3MgRW50cnlQb2ludAogICAgIEVHTERlc3Ryb3lTeW5jS0hSLAogICAgIEVHTER1cE5hdGl2ZUZl
bmNlRkRBTkRST0lELAogICAgIEVHTEV4cG9ydFZrSW1hZ2VBTkdMRSwKKyAgICBFR0xGb3JjZUdQ
VVN3aXRjaEFOR0xFLAogICAgIEVHTEdldENvbXBvc2l0b3JUaW1pbmdBTkRST0lELAogICAgIEVH
TEdldENvbXBvc2l0b3JUaW1pbmdTdXBwb3J0ZWRBTkRST0lELAogICAgIEVHTEdldENvbmZpZ0F0
dHJpYiwKQEAgLTIwMiw2ICsyMDMsOCBAQCBlbnVtIGNsYXNzIEVudHJ5UG9pbnQKICAgICBFR0xR
dWVyeURldmljZVN0cmluZ0VYVCwKICAgICBFR0xRdWVyeURpc3BsYXlBdHRyaWJBTkdMRSwKICAg
ICBFR0xRdWVyeURpc3BsYXlBdHRyaWJFWFQsCisgICAgRUdMUXVlcnlEbWFCdWZGb3JtYXRzRVhU
LAorICAgIEVHTFF1ZXJ5RG1hQnVmTW9kaWZpZXJzRVhULAogICAgIEVHTFF1ZXJ5U3RyZWFtS0hS
LAogICAgIEVHTFF1ZXJ5U3RyZWFtdTY0S0hSLAogICAgIEVHTFF1ZXJ5U3RyaW5nLApAQCAtMjQ3
LDYgKzI1MCw3IEBAIGVudW0gY2xhc3MgRW50cnlQb2ludAogICAgIEdMQXR0YWNoU2hhZGVyLAog
ICAgIEdMQmVnaW4sCiAgICAgR0xCZWdpbkNvbmRpdGlvbmFsUmVuZGVyLAorICAgIEdMQmVnaW5Q
ZXJmTW9uaXRvckFNRCwKICAgICBHTEJlZ2luUXVlcnksCiAgICAgR0xCZWdpblF1ZXJ5RVhULAog
ICAgIEdMQmVnaW5RdWVyeUluZGV4ZWQsCkBAIC00NTQsNiArNDU4LDcgQEAgZW51bSBjbGFzcyBF
bnRyeVBvaW50CiAgICAgR0xEZWxldGVGcmFtZWJ1ZmZlcnNPRVMsCiAgICAgR0xEZWxldGVMaXN0
cywKICAgICBHTERlbGV0ZU1lbW9yeU9iamVjdHNFWFQsCisgICAgR0xEZWxldGVQZXJmTW9uaXRv
cnNBTUQsCiAgICAgR0xEZWxldGVQcm9ncmFtLAogICAgIEdMRGVsZXRlUHJvZ3JhbVBpcGVsaW5l
cywKICAgICBHTERlbGV0ZVByb2dyYW1QaXBlbGluZXNFWFQsCkBAIC01NDYsNiArNTUxLDcgQEAg
ZW51bSBjbGFzcyBFbnRyeVBvaW50CiAgICAgR0xFbmQsCiAgICAgR0xFbmRDb25kaXRpb25hbFJl
bmRlciwKICAgICBHTEVuZExpc3QsCisgICAgR0xFbmRQZXJmTW9uaXRvckFNRCwKICAgICBHTEVu
ZFF1ZXJ5LAogICAgIEdMRW5kUXVlcnlFWFQsCiAgICAgR0xFbmRRdWVyeUluZGV4ZWQsCkBAIC02
MDYsNiArNjEyLDcgQEAgZW51bSBjbGFzcyBFbnRyeVBvaW50CiAgICAgR0xHZW5GcmFtZWJ1ZmZl
cnMsCiAgICAgR0xHZW5GcmFtZWJ1ZmZlcnNPRVMsCiAgICAgR0xHZW5MaXN0cywKKyAgICBHTEdl
blBlcmZNb25pdG9yc0FNRCwKICAgICBHTEdlblByb2dyYW1QaXBlbGluZXMsCiAgICAgR0xHZW5Q
cm9ncmFtUGlwZWxpbmVzRVhULAogICAgIEdMR2VuUXVlcmllcywKQEAgLTcxMSw2ICs3MTgsMTIg
QEAgZW51bSBjbGFzcyBFbnRyeVBvaW50CiAgICAgR0xHZXRPYmplY3RMYWJlbEtIUiwKICAgICBH
TEdldE9iamVjdFB0ckxhYmVsLAogICAgIEdMR2V0T2JqZWN0UHRyTGFiZWxLSFIsCisgICAgR0xH
ZXRQZXJmTW9uaXRvckNvdW50ZXJEYXRhQU1ELAorICAgIEdMR2V0UGVyZk1vbml0b3JDb3VudGVy
SW5mb0FNRCwKKyAgICBHTEdldFBlcmZNb25pdG9yQ291bnRlclN0cmluZ0FNRCwKKyAgICBHTEdl
dFBlcmZNb25pdG9yQ291bnRlcnNBTUQsCisgICAgR0xHZXRQZXJmTW9uaXRvckdyb3VwU3RyaW5n
QU1ELAorICAgIEdMR2V0UGVyZk1vbml0b3JHcm91cHNBTUQsCiAgICAgR0xHZXRQaXhlbE1hcGZ2
LAogICAgIEdMR2V0UGl4ZWxNYXB1aXYsCiAgICAgR0xHZXRQaXhlbE1hcHVzdiwKQEAgLTEzMTks
NiArMTMzMiw3IEBAIGVudW0gY2xhc3MgRW50cnlQb2ludAogICAgIEdMU2Vjb25kYXJ5Q29sb3JQ
M3VpdiwKICAgICBHTFNlY29uZGFyeUNvbG9yUG9pbnRlciwKICAgICBHTFNlbGVjdEJ1ZmZlciwK
KyAgICBHTFNlbGVjdFBlcmZNb25pdG9yQ291bnRlcnNBTUQsCiAgICAgR0xTZW1hcGhvcmVQYXJh
bWV0ZXJ1aTY0dkVYVCwKICAgICBHTFNldEZlbmNlTlYsCiAgICAgR0xTaGFkZU1vZGVsLApkaWZm
IC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbW1vbi9saW51eC9CVUlMRC5n
biBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21tb24vbGludXgvQlVJTEQuZ24KaW5k
ZXggODg4NmMwYzM1NzBhZjQ1MTdmYTY3MTNmZTNlNjkxYTE4ZDVhZDkzYS4uMzFmYTU3ZTMyZjcw
NDRiMTcxMDBhMGVmOGRkNDQ1NThmMTU1YTc0MSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL2NvbW1vbi9saW51eC9CVUlMRC5nbgorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvY29tbW9uL2xpbnV4L0JVSUxELmduCkBAIC0xMSw0ICsxMSw5IEBAIGFuZ2xl
X3NvdXJjZV9zZXQoImFuZ2xlX2RtYV9idWYiKSB7CiAgIF0KIAogICBkZXBzID0gWyAiJGFuZ2xl
X3Jvb3Q6YW5nbGVfY29tbW9uIiBdCisKKyAgaWYgKGFuZ2xlX2VuYWJsZV92dWxrYW4pIHsKKyAg
ICBkZWZpbmVzID0gWyAiQU5HTEVfRU5BQkxFX1ZVTEtBTiIgXQorICAgIHB1YmxpY19kZXBzID0g
WyAiJGFuZ2xlX3Z1bGthbl9oZWFkZXJzX2Rpcjp2dWxrYW5faGVhZGVycyIgXQorICB9CiB9CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tbW9uL2xpbnV4L2RtYV9i
dWZfdXRpbHMuY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbW1vbi9saW51eC9k
bWFfYnVmX3V0aWxzLmNwcAppbmRleCA5YTM5YTQ1MGNjMWQxOGJiZTk4NjRhNmMwNjk5Njk0YmJm
ODUyMjhiLi45OTc2MjgzYzRlNWVhNzdjNzFiZGVhOTAyNzQwZGQ3MjI5MDEzMDFmIDEwMDY0NAot
LS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tbW9uL2xpbnV4L2RtYV9idWZfdXRp
bHMuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21tb24vbGludXgvZG1h
X2J1Zl91dGlscy5jcHAKQEAgLTI4LDYgKzI4LDggQEAKICNkZWZpbmUgRFJNX0ZPUk1BVF9SMTYg
Rk9VUkNDKCdSJywgJzEnLCAnNicsICcgJykKICNkZWZpbmUgRFJNX0ZPUk1BVF9HUjg4IEZPVVJD
QygnRycsICdSJywgJzgnLCAnOCcpCiAjZGVmaW5lIERSTV9GT1JNQVRfUkdCNTY1IEZPVVJDQygn
UicsICdHJywgJzEnLCAnNicpCisjZGVmaW5lIERSTV9GT1JNQVRfUkdCODg4IEZPVVJDQygnUics
ICdHJywgJzInLCAnNCcpCisjZGVmaW5lIERSTV9GT1JNQVRfQkdSODg4IEZPVVJDQygnQicsICdH
JywgJzInLCAnNCcpCiAjZGVmaW5lIERSTV9GT1JNQVRfQVJHQjg4ODggRk9VUkNDKCdBJywgJ1In
LCAnMicsICc0JykKICNkZWZpbmUgRFJNX0ZPUk1BVF9BQkdSODg4OCBGT1VSQ0MoJ0EnLCAnQics
ICcyJywgJzQnKQogI2RlZmluZSBEUk1fRk9STUFUX1hSR0I4ODg4IEZPVVJDQygnWCcsICdSJywg
JzInLCAnNCcpCkBAIC03OCw0ICs4MCw3NCBAQCBHTGVudW0gRHJtRm91ckNDRm9ybWF0VG9HTElu
dGVybmFsRm9ybWF0KGludCBmb3VyY2NGb3JtYXQsIGJvb2wgKmlzWVVWKQogICAgIH0KIH0KIAor
I2lmIGRlZmluZWQoQU5HTEVfRU5BQkxFX1ZVTEtBTikKK3N0ZDo6dmVjdG9yPGludD4gVmtGb3Jt
YXRUb0RybUZvdXJDQ0Zvcm1hdChWa0Zvcm1hdCBmb3JtYXQpCit7CisgICAgc3dpdGNoIChmb3Jt
YXQpCisgICAgeworICAgICAgICBjYXNlIFZLX0ZPUk1BVF9SOF9VTk9STToKKyAgICAgICAgY2Fz
ZSBWS19GT1JNQVRfUjhfU1JHQjoKKyAgICAgICAgICAgIHJldHVybiB7RFJNX0ZPUk1BVF9SOH07
CisgICAgICAgIGNhc2UgVktfRk9STUFUX1IxNl9VTk9STToKKyAgICAgICAgICAgIHJldHVybiB7
RFJNX0ZPUk1BVF9SMTZ9OworICAgICAgICBjYXNlIFZLX0ZPUk1BVF9SOEc4X1VOT1JNOgorICAg
ICAgICBjYXNlIFZLX0ZPUk1BVF9SOEc4X1NSR0I6CisgICAgICAgICAgICByZXR1cm4ge0RSTV9G
T1JNQVRfR1I4OH07CisgICAgICAgIGNhc2UgVktfRk9STUFUX1I4RzhCOF9VTk9STToKKyAgICAg
ICAgY2FzZSBWS19GT1JNQVRfUjhHOEI4X1NSR0I6CisgICAgICAgICAgICByZXR1cm4ge0RSTV9G
T1JNQVRfQkdSODg4fTsKKyAgICAgICAgY2FzZSBWS19GT1JNQVRfQjhHOFI4X1VOT1JNOgorICAg
ICAgICBjYXNlIFZLX0ZPUk1BVF9COEc4UjhfU1JHQjoKKyAgICAgICAgICAgIHJldHVybiB7RFJN
X0ZPUk1BVF9SR0I4ODh9OworICAgICAgICBjYXNlIFZLX0ZPUk1BVF9SOEc4QjhBOF9VTk9STToK
KyAgICAgICAgY2FzZSBWS19GT1JNQVRfUjhHOEI4QThfU1JHQjoKKyAgICAgICAgICAgIHJldHVy
biB7RFJNX0ZPUk1BVF9BQkdSODg4OCwgRFJNX0ZPUk1BVF9YQkdSODg4OH07CisgICAgICAgIGNh
c2UgVktfRk9STUFUX0I4RzhSOEE4X1VOT1JNOgorICAgICAgICBjYXNlIFZLX0ZPUk1BVF9COEc4
UjhBOF9TUkdCOgorICAgICAgICAgICAgcmV0dXJuIHtEUk1fRk9STUFUX0FSR0I4ODg4LCBEUk1f
Rk9STUFUX1hSR0I4ODg4fTsKKyAgICAgICAgY2FzZSBWS19GT1JNQVRfQTJCMTBHMTBSMTBfVU5P
Uk1fUEFDSzMyOgorICAgICAgICAgICAgcmV0dXJuIHtEUk1fRk9STUFUX0FSR0IyMTAxMDEwfTsK
KyAgICAgICAgY2FzZSBWS19GT1JNQVRfQTJSMTBHMTBCMTBfVU5PUk1fUEFDSzMyOgorICAgICAg
ICAgICAgcmV0dXJuIHtEUk1fRk9STUFUX0FCR1IyMTAxMDEwfTsKKyAgICAgICAgY2FzZSBWS19G
T1JNQVRfQjVHNlI1X1VOT1JNX1BBQ0sxNjoKKyAgICAgICAgICAgIHJldHVybiB7RFJNX0ZPUk1B
VF9SR0I1NjV9OworICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAgcmV0dXJuIHt9OworICAg
IH0KK30KKworc3RkOjp2ZWN0b3I8VmtGb3JtYXQ+IERybUZvdXJDQ0Zvcm1hdFRvVmtGb3JtYXRz
KGludCBmb3VyY2NGb3JtYXQpCit7CisgICAgc3dpdGNoIChmb3VyY2NGb3JtYXQpCisgICAgewor
ICAgICAgICBjYXNlIERSTV9GT1JNQVRfUjg6CisgICAgICAgICAgICByZXR1cm4ge1ZLX0ZPUk1B
VF9SOF9TUkdCLCBWS19GT1JNQVRfUjhfVU5PUk19OworICAgICAgICBjYXNlIERSTV9GT1JNQVRf
UjE2OgorICAgICAgICAgICAgcmV0dXJuIHtWS19GT1JNQVRfUjE2X1VOT1JNfTsKKyAgICAgICAg
Y2FzZSBEUk1fRk9STUFUX0dSODg6CisgICAgICAgICAgICByZXR1cm4ge1ZLX0ZPUk1BVF9SOEc4
X1NSR0IsIFZLX0ZPUk1BVF9SOEc4X1VOT1JNfTsKKyAgICAgICAgY2FzZSBEUk1fRk9STUFUX0JH
Ujg4ODoKKyAgICAgICAgICAgIHJldHVybiB7VktfRk9STUFUX1I4RzhCOF9TUkdCLCBWS19GT1JN
QVRfUjhHOEI4X1VOT1JNfTsKKyAgICAgICAgY2FzZSBEUk1fRk9STUFUX1JHQjg4ODoKKyAgICAg
ICAgICAgIHJldHVybiB7VktfRk9STUFUX0I4RzhSOF9TUkdCLCBWS19GT1JNQVRfQjhHOFI4X1VO
T1JNfTsKKyAgICAgICAgY2FzZSBEUk1fRk9STUFUX0FCR1I4ODg4OgorICAgICAgICBjYXNlIERS
TV9GT1JNQVRfWEJHUjg4ODg6CisgICAgICAgICAgICByZXR1cm4ge1ZLX0ZPUk1BVF9SOEc4QjhB
OF9TUkdCLCBWS19GT1JNQVRfUjhHOEI4QThfVU5PUk19OworICAgICAgICBjYXNlIERSTV9GT1JN
QVRfQVJHQjg4ODg6CisgICAgICAgIGNhc2UgRFJNX0ZPUk1BVF9YUkdCODg4ODoKKyAgICAgICAg
ICAgIHJldHVybiB7VktfRk9STUFUX0I4RzhSOEE4X1NSR0IsIFZLX0ZPUk1BVF9COEc4UjhBOF9V
Tk9STX07CisgICAgICAgIGNhc2UgRFJNX0ZPUk1BVF9BQkdSMjEwMTAxMDoKKyAgICAgICAgICAg
IHJldHVybiB7VktfRk9STUFUX0EyUjEwRzEwQjEwX1VOT1JNX1BBQ0szMn07CisgICAgICAgIGNh
c2UgRFJNX0ZPUk1BVF9BUkdCMjEwMTAxMDoKKyAgICAgICAgICAgIHJldHVybiB7VktfRk9STUFU
X0EyQjEwRzEwUjEwX1VOT1JNX1BBQ0szMn07CisgICAgICAgIGNhc2UgRFJNX0ZPUk1BVF9SR0I1
NjU6CisgICAgICAgICAgICByZXR1cm4ge1ZLX0ZPUk1BVF9CNUc2UjVfVU5PUk1fUEFDSzE2fTsK
KyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIFdBUk4oKSA8PCAiVW5rbm93biBkbWFfYnVm
IGZvcm1hdCAiIDw8IGZvdXJjY0Zvcm1hdAorICAgICAgICAgICAgICAgICAgIDw8ICIgdXNlZCB0
byBpbml0aWFsaXplIGFuIEVHTCBpbWFnZS4iOworICAgICAgICAgICAgcmV0dXJuIHt9OworICAg
IH0KK30KKyNlbmRpZiAgLy8gQU5HTEVfRU5BQkxFX1ZVTEtBTgorCiB9ICAvLyBuYW1lc3BhY2Ug
YW5nbGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21tb24vbGlu
dXgvZG1hX2J1Zl91dGlscy5oIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbW1vbi9s
aW51eC9kbWFfYnVmX3V0aWxzLmgKaW5kZXggMzUxNDRiYjVmZjExMWNjM2VhOGE5MzllZjg2NDI3
MzZkMGUwM2FjZS4uNDUxYTc1MWViY2E4NTk4NThlZDNmNTlhMjhhNzQ3ZmNkODI2MTMwZSAxMDA2
NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbW1vbi9saW51eC9kbWFfYnVm
X3V0aWxzLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbW1vbi9saW51eC9k
bWFfYnVmX3V0aWxzLmgKQEAgLTExLDkgKzExLDIwIEBACiAKICNpbmNsdWRlIDxhbmdsZV9nbC5o
PgogCisjaWYgZGVmaW5lZChBTkdMRV9FTkFCTEVfVlVMS0FOKQorIyAgICBpbmNsdWRlIDx2dWxr
YW4vdnVsa2FuX2NvcmUuaD4KKyMgICAgaW5jbHVkZSA8dmVjdG9yPgorI2VuZGlmCisKIG5hbWVz
cGFjZSBhbmdsZQogewogR0xlbnVtIERybUZvdXJDQ0Zvcm1hdFRvR0xJbnRlcm5hbEZvcm1hdChp
bnQgZm9ybWF0LCBib29sICppc1lVVik7CisKKyNpZiBkZWZpbmVkKEFOR0xFX0VOQUJMRV9WVUxL
QU4pCitzdGQ6OnZlY3RvcjxpbnQ+IFZrRm9ybWF0VG9Ecm1Gb3VyQ0NGb3JtYXQoVmtGb3JtYXQg
Zm9ybWF0KTsKK3N0ZDo6dmVjdG9yPFZrRm9ybWF0PiBEcm1Gb3VyQ0NGb3JtYXRUb1ZrRm9ybWF0
cyhpbnQgZm91cmNjRm9ybWF0KTsKKyNlbmRpZgorCiB9ICAvLyBuYW1lc3BhY2UgYW5nbGUKIAog
I2VuZGlmICAvLyBDT01NT05fTElOVVhfRE1BX0JVRl9VVElMU19IXwpkaWZmIC0tZ2l0IGEvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbW1vbi9zcGlydi9nZW5fc3BpcnZfYnVpbGRlcl9h
bmRfcGFyc2VyLnB5IGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbW1vbi9zcGlydi9n
ZW5fc3BpcnZfYnVpbGRlcl9hbmRfcGFyc2VyLnB5CmluZGV4IDcwZTE2Njk4OGU1YTFmZjY5Y2Vm
ODhlMWVmNGNmOWE2NzVjZWNkNjkuLmZkNzYxYTRmYTEyYmNkY2VkY2I4YWNlZTI2MGE0YmFiYTI5
OGNmZDUgMTAwNzU1Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21tb24vc3Bp
cnYvZ2VuX3NwaXJ2X2J1aWxkZXJfYW5kX3BhcnNlci5weQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvY29tbW9uL3NwaXJ2L2dlbl9zcGlydl9idWlsZGVyX2FuZF9wYXJzZXIucHkK
QEAgLTEsNCArMSw0IEBACi0jIS91c3IvYmluL3B5dGhvbgorIyEvdXNyL2Jpbi9weXRob24zCiAj
IENvcHlyaWdodCAyMDIxIFRoZSBBTkdMRSBQcm9qZWN0IEF1dGhvcnMuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCiAjIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0
eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICMgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KQEAg
LTE2Myw3ICsxNjMsNyBAQCBkZWYgbG9hZF9ncmFtbWFyKGdyYW1tYXJfZmlsZSk6CiAKIAogZGVm
IHJlbW92ZV9jaGFycyhzdHJpbmcsIGNoYXJzKToKLSAgICByZXR1cm4gZmlsdGVyKGxhbWJkYSBj
OiBjIG5vdCBpbiBjaGFycywgc3RyaW5nKQorICAgIHJldHVybiAnJy5qb2luKGxpc3QoZmlsdGVy
KGxhbWJkYSBjOiBjIG5vdCBpbiBjaGFycywgc3RyaW5nKSkpCiAKIAogZGVmIG1ha2VfY2FtZWxf
Y2FzZShuYW1lKToKQEAgLTMwOSw2ICszMDksNyBAQCBjbGFzcyBXcml0ZXI6CiAKICAgICAgICAg
IyBPdGhlcndpc2UsIHJlbW92ZSBpbnZhbGlkIGNoYXJhY3RlcnMgYW5kIG1ha2UgdGhlIGZpcnN0
IGxldHRlciBsb3dlciBjYXNlLgogICAgICAgICBuYW1lID0gcmVtb3ZlX2NoYXJzKG5hbWUsICIg
LiwrXG5+IikKKwogICAgICAgICBuYW1lID0gbWFrZV9jYW1lbF9jYXNlKG5hbWUpCiAKICAgICAg
ICAgIyBNYWtlIHN1cmUgdGhlIG5hbWUgaXMgbm90IGEgQysrIGtleXdvcmQKZGlmZiAtLWdpdCBh
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21tb24vc3lzdGVtX3V0aWxzLmggYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tbW9uL3N5c3RlbV91dGlscy5oCmluZGV4IDk1N2Ux
ZTBhN2IyYjNmNjI4YzZjMWMwMzNkZjExYTgyOTEyNTU1MGIuLjVkM2Q1NTAxNWY4OWZkMzUwNTgw
ODZmZmNhZDdiNjVhZTJiNzFjYzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy9jb21tb24vc3lzdGVtX3V0aWxzLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUv
c3JjL2NvbW1vbi9zeXN0ZW1fdXRpbHMuaApAQCAtMTY0LDYgKzE2NCw4IEBAIGJvb2wgSXNEZWJ1
Z2dlckF0dGFjaGVkKCk7CiAvLyBDYWxscyBzeXN0ZW0gQVBJcyB0byBicmVhayBpbnRvIHRoZSBk
ZWJ1Z2dlci4KIHZvaWQgQnJlYWtEZWJ1Z2dlcigpOwogCit1aW50NjRfdCBHZXRQcm9jZXNzTWVt
b3J5VXNhZ2VLQigpOworCiBib29sIFByb3RlY3RNZW1vcnkodWludHB0cl90IHN0YXJ0LCBzaXpl
X3Qgc2l6ZSk7CiBib29sIFVucHJvdGVjdE1lbW9yeSh1aW50cHRyX3Qgc3RhcnQsIHNpemVfdCBz
aXplKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbW1vbi9z
eXN0ZW1fdXRpbHNfcG9zaXguY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbW1v
bi9zeXN0ZW1fdXRpbHNfcG9zaXguY3BwCmluZGV4IDQxNDNmZTFiNTk0YmU0NDg3YzEzZDFjMTlk
MGFiNWMxZjE0YjMxZjkuLmNjOGM2MTg2NmNlMDI0MWQ5ZTFmNWRiNzZlMjI2YjMxYTRmMTcxOTMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21tb24vc3lzdGVtX3V0
aWxzX3Bvc2l4LmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tbW9uL3N5
c3RlbV91dGlsc19wb3NpeC5jcHAKQEAgLTEzLDIxICsxMywyNSBAQAogI2luY2x1ZGUgPGlvc3Ry
ZWFtPgogCiAjaW5jbHVkZSA8ZGxmY24uaD4KLSNpZmRlZiBBTkdMRV9QTEFURk9STV9GVUNIU0lB
Ci0jICAgIGluY2x1ZGUgPHppcmNvbi9wcm9jZXNzLmg+Ci0jICAgIGluY2x1ZGUgPHppcmNvbi9z
eXNjYWxscy5oPgotI2Vsc2UKLSMgICAgaW5jbHVkZSA8c3lzL3Jlc291cmNlLmg+Ci0jZW5kaWYK
ICNpbmNsdWRlIDxncnAuaD4KKyNpbmNsdWRlIDxpbnR0eXBlcy5oPgogI2luY2x1ZGUgPHB3ZC5o
PgorI2luY2x1ZGUgPHNpZ25hbC5oPgorI2luY2x1ZGUgPHN0cmluZy5oPgorI2luY2x1ZGUgPHN5
cy9tbWFuLmg+CiAjaW5jbHVkZSA8c3lzL3N0YXQuaD4KICNpbmNsdWRlIDxzeXMvdHlwZXMuaD4K
ICNpbmNsdWRlIDxzeXMvd2FpdC5oPgogI2luY2x1ZGUgPHVuaXN0ZC5oPgogCi0jaW5jbHVkZSA8
c2lnbmFsLmg+Ci0jaW5jbHVkZSA8c3lzL21tYW4uaD4KKyNpbmNsdWRlICJjb21tb24vc3RyaW5n
X3V0aWxzLmgiCisKKyNpZmRlZiBBTkdMRV9QTEFURk9STV9GVUNIU0lBCisjICAgIGluY2x1ZGUg
PHppcmNvbi9wcm9jZXNzLmg+CisjICAgIGluY2x1ZGUgPHppcmNvbi9zeXNjYWxscy5oPgorI2Vs
c2UKKyMgICAgaW5jbHVkZSA8c3lzL3Jlc291cmNlLmg+CisjZW5kaWYKIAogbmFtZXNwYWNlIGFu
Z2xlCiB7CkBAIC00MDIsNCArNDA2LDM1IEBAIFBhZ2VGYXVsdEhhbmRsZXIgKkNyZWF0ZVBhZ2VG
YXVsdEhhbmRsZXIoUGFnZUZhdWx0Q2FsbGJhY2sgY2FsbGJhY2spCiAgICAgZ1Bvc2l4UGFnZUZh
dWx0SGFuZGxlciA9IG5ldyBQb3NpeFBhZ2VGYXVsdEhhbmRsZXIoY2FsbGJhY2spOwogICAgIHJl
dHVybiBnUG9zaXhQYWdlRmF1bHRIYW5kbGVyOwogfQorCit1aW50NjRfdCBHZXRQcm9jZXNzTWVt
b3J5VXNhZ2VLQigpCit7CisgICAgRklMRSAqZmlsZSA9IGZvcGVuKCIvcHJvYy9zZWxmL3N0YXR1
cyIsICJyIik7CisKKyAgICBpZiAoIWZpbGUpCisgICAgeworICAgICAgICByZXR1cm4gMDsKKyAg
ICB9CisKKyAgICBjb25zdCBjaGFyICprU2VhcmNoU3RyaW5nICAgICAgICAgICA9ICJWbVJTUzoi
OworICAgIGNvbnN0ZXhwciBzaXplX3Qga01heExpbmVTaXplICAgICAgID0gMTAwOworICAgIHN0
ZDo6YXJyYXk8Y2hhciwga01heExpbmVTaXplPiBsaW5lID0ge307CisKKyAgICB1aW50NjRfdCBr
YiA9IDA7CisKKyAgICB3aGlsZSAoZmdldHMobGluZS5kYXRhKCksIGxpbmUuc2l6ZSgpLCBmaWxl
KSAhPSBudWxscHRyKQorICAgIHsKKyAgICAgICAgaWYgKHN0cm5jbXAobGluZS5kYXRhKCksIGtT
ZWFyY2hTdHJpbmcsIHN0cmxlbihrU2VhcmNoU3RyaW5nKSkgPT0gMCkKKyAgICAgICAgeworICAg
ICAgICAgICAgc3RkOjp2ZWN0b3I8c3RkOjpzdHJpbmc+IHN0cmluZ3M7CisgICAgICAgICAgICBT
cGxpdFN0cmluZ0Fsb25nV2hpdGVzcGFjZShsaW5lLmRhdGEoKSwgJnN0cmluZ3MpOworCisgICAg
ICAgICAgICBzc2NhbmYoc3RyaW5nc1sxXS5jX3N0cigpLCAiJSIgU0NOdTY0LCAma2IpOworICAg
ICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KKyAgICB9CisgICAgZmNsb3NlKGZpbGUpOworCisg
ICAgcmV0dXJuIGtiOworfQogfSAgLy8gbmFtZXNwYWNlIGFuZ2xlCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tbW9uL3N5c3RlbV91dGlsc193aW4zMi5jcHAgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tbW9uL3N5c3RlbV91dGlsc193aW4zMi5jcHAK
aW5kZXggMzM1ZmMwOTA2MTkyNGY2N2U0ZjNmODAxODVmOTdhYmY3ZDVlNjRiOS4uNWJjZmEyMzQ3
ZTRjZTU4ZmIyODM3ZjM0OGE4MzcxNjg5ODA2ZDRlMyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvc3JjL2NvbW1vbi9zeXN0ZW1fdXRpbHNfd2luMzIuY3BwCisrKyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21tb24vc3lzdGVtX3V0aWxzX3dpbjMyLmNwcApAQCAt
OCw5ICs4LDE0IEBACiAjaW5jbHVkZSAiY29tbW9uL0Zhc3RWZWN0b3IuaCIKICNpbmNsdWRlICJz
eXN0ZW1fdXRpbHMuaCIKIAotI2luY2x1ZGUgPHdpbmRvd3MuaD4KICNpbmNsdWRlIDxhcnJheT4K
IAorLy8gTXVzdCBiZSBpbmNsdWRlZCBpbiB0aGlzIG9yZGVyLgorLy8gY2xhbmctZm9ybWF0IG9m
ZgorI2luY2x1ZGUgPHdpbmRvd3MuaD4KKyNpbmNsdWRlIDxwc2FwaS5oPgorLy8gY2xhbmctZm9y
bWF0IG9uCisKIG5hbWVzcGFjZSBhbmdsZQogewogYm9vbCBVbnNldEVudmlyb25tZW50VmFyKGNv
bnN0IGNoYXIgKnZhcmlhYmxlTmFtZSkKQEAgLTIxOSw0ICsyMjQsMTIgQEAgUGFnZUZhdWx0SGFu
ZGxlciAqQ3JlYXRlUGFnZUZhdWx0SGFuZGxlcihQYWdlRmF1bHRDYWxsYmFjayBjYWxsYmFjaykK
ICAgICBnV2luMzJQYWdlRmF1bHRIYW5kbGVyID0gbmV3IFdpbjMyUGFnZUZhdWx0SGFuZGxlcihj
YWxsYmFjayk7CiAgICAgcmV0dXJuIGdXaW4zMlBhZ2VGYXVsdEhhbmRsZXI7CiB9CisKK3VpbnQ2
NF90IEdldFByb2Nlc3NNZW1vcnlVc2FnZUtCKCkKK3sKKyAgICBQUk9DRVNTX01FTU9SWV9DT1VO
VEVSU19FWCBwbWM7CisgICAgOjpHZXRQcm9jZXNzTWVtb3J5SW5mbyg6OkdldEN1cnJlbnRQcm9j
ZXNzKCksIHJlaW50ZXJwcmV0X2Nhc3Q8UFJPQ0VTU19NRU1PUllfQ09VTlRFUlMgKj4oJnBtYyks
CisgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplb2YocG1jKSk7CisgICAgcmV0dXJuIHN0
YXRpY19jYXN0PHVpbnQ2NF90PihwbWMuUHJpdmF0ZVVzYWdlKSAvIDEwMjR1bGw7Cit9CiB9ICAv
LyBuYW1lc3BhY2UgYW5nbGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3Ny
Yy9jb21tb24vc3lzdGVtX3V0aWxzX3dpbnV3cC5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zcmMvY29tbW9uL3N5c3RlbV91dGlsc193aW51d3AuY3BwCmluZGV4IGFmZmM4OTJjNWRiZmMx
MDI2MzAxYWI3ZGE3OTM2YTliZGYyZTBjZTEuLmEwZWQyYzgyMWJjY2ExMjA3NGQzNDYxMjY3ZTBm
MTAzNDNlYzI3YTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21t
b24vc3lzdGVtX3V0aWxzX3dpbnV3cC5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUv
c3JjL2NvbW1vbi9zeXN0ZW1fdXRpbHNfd2ludXdwLmNwcApAQCAtMTA4LDQgKzEwOCwxMCBAQCBQ
YWdlRmF1bHRIYW5kbGVyICpDcmVhdGVQYWdlRmF1bHRIYW5kbGVyKFBhZ2VGYXVsdENhbGxiYWNr
IGNhbGxiYWNrKQogewogICAgIHJldHVybiBuZXcgVXdwUGFnZUZhdWx0SGFuZGxlcihjYWxsYmFj
ayk7CiB9CisKK3VpbnQ2NF90IEdldFByb2Nlc3NNZW1vcnlVc2FnZUtCKCkKK3sKKyAgICAvLyBO
b3QgYXZhaWxhYmxlIG9uIFVXUC4KKyAgICByZXR1cm4gMDsKK30KIH0gIC8vIG5hbWVzcGFjZSBh
bmdsZQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbW1vbi91dGls
aXRpZXMuY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbW1vbi91dGlsaXRpZXMu
Y3BwCmluZGV4IDc1OGZiMDZjNGNkZjM5NDQ1MjU5OTAwMmRmNTgyZjI2NGYxYzk3ZTUuLjdmYzlh
YTc5MmFjZTI0ZjE0NjkyM2UzNzQ1NDJkNzI1M2JkMTZhNDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3NyYy9jb21tb24vdXRpbGl0aWVzLmNwcAorKysgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvY29tbW9uL3V0aWxpdGllcy5jcHAKQEAgLTI2OSw3ICsyNjksNyBA
QCBzdGQ6OnN0cmluZyBHZXRHTFNMVHlwZVN0cmluZyhHTGVudW0gdHlwZSkKICAgICAgICAgICAg
IHJldHVybiAibWF0NCI7CiAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICBVTlJFQUNIQUJM
RSgpOwotICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgICAgICAgICByZXR1cm4gIiI7
CiAgICAgfQogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29t
bW9uL3Z1bGthbi9CVUlMRC5nbiBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21tb24v
dnVsa2FuL0JVSUxELmduCmluZGV4IDYzODVhMzNhYTcxNTliNWM5OWVkNzZmYmYxY2YzMmU2NTUy
MjAxZWEuLjJlZTdlZDQxZGY2MDg5ODM3ZGNkMjAyMTY0MjA2YzdhM2RlMjIxZGYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21tb24vdnVsa2FuL0JVSUxELmduCisr
KyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21tb24vdnVsa2FuL0JVSUxELmduCkBA
IC0yOSw2ICsyOSw5IEBAIGlmIChhbmdsZV9lbmFibGVfdnVsa2FuIHx8IGFuZ2xlX2J1aWxkX3Z1
bGthbl9zeXN0ZW1faW5mbykgewogICAgIGlmIChhbmdsZV9zaGFyZWRfbGlidnVsa2FuKSB7CiAg
ICAgICBkZWZpbmVzID0gWyAiQU5HTEVfU0hBUkVEX0xJQlZVTEtBTj0xIiBdCiAgICAgfQorICAg
IGlmIChhbmdsZV91c2Vfd2F5bGFuZCkgeworICAgICAgaW5jbHVkZV9kaXJzID0gWyAiJGFuZ2xl
X3dheWxhbmRfZGlyL3NyYyIgXQorICAgIH0KICAgfQogCiAgIGFuZ2xlX3NvdXJjZV9zZXQoImFu
Z2xlX3Z1bGthbl9oZWFkZXJzIikgewpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvc3JjL2NvbXBpbGVyLmduaSBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21waWxl
ci5nbmkKaW5kZXggZDBkNjU2NGE5MjA2MGEyYWRhYTdlNjk0ZmE2OWIwMWY2YWU0ZmQ4OC4uMjcy
MWY0YWQ4OTQzNDZjZDk0Yjg1NjM3ZWIxZTgxMjg0OTkxZDdlMSAxMDA2NDQKLS0tIGEvU291cmNl
L1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyLmduaQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvY29tcGlsZXIuZ25pCkBAIC0yMiw2ICsyMiw3IEBAIGFuZ2xlX3RyYW5zbGF0
b3Jfc291cmNlcyA9IFsKICAgImluY2x1ZGUvR0xFUzMvZ2wzcGxhdGZvcm0uaCIsCiAgICJpbmNs
dWRlL0tIUi9raHJwbGF0Zm9ybS5oIiwKICAgImluY2x1ZGUvYW5nbGVfZ2wuaCIsCisgICJzcmMv
Y29tcGlsZXIvdHJhbnNsYXRvci9CYXNlVHlwZXMuY3BwIiwKICAgInNyYy9jb21waWxlci90cmFu
c2xhdG9yL0Jhc2VUeXBlcy5oIiwKICAgInNyYy9jb21waWxlci90cmFuc2xhdG9yL0J1aWx0SW5G
dW5jdGlvbkVtdWxhdG9yLmNwcCIsCiAgICJzcmMvY29tcGlsZXIvdHJhbnNsYXRvci9CdWlsdElu
RnVuY3Rpb25FbXVsYXRvci5oIiwKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvZ2VuZXJhdGVfcGFyc2VyLnB5IGIvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9nZW5lcmF0ZV9wYXJzZXIu
cHkKaW5kZXggNjA3ZDhkODcyZmUwNDM0ODk0NGQwODI2MmMxMzk3MjY5YWE5NDQ5MS4uOGQxZmNi
MjQ1YzE2NzgyYjVhZTk1YWJjMGUzYTdmNWM2MTIwZWVmMiAxMDA3NTUKLS0tIGEvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9nZW5lcmF0ZV9wYXJzZXIu
cHkKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nv
ci9nZW5lcmF0ZV9wYXJzZXIucHkKQEAgLTEsNCArMSw0IEBACi0jIS91c3IvYmluL3B5dGhvbgor
IyEvdXNyL2Jpbi9weXRob24zCiAjIENvcHlyaWdodCAyMDE5IFRoZSBBTkdMRSBQcm9qZWN0IEF1
dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAjIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlz
IGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICMgZm91bmQgaW4g
dGhlIExJQ0VOU0UgZmlsZS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3Ny
Yy9jb21waWxlci90cmFuc2xhdG9yL0Jhc2VUeXBlcy5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci9CYXNlVHlwZXMuY3BwCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjE1
YTNlYmViYzg4ZmFjNzUyNGZiZDg5Y2RhMzI2ZGM2Y2Y4OWNmYTIKLS0tIC9kZXYvbnVsbAorKysg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci9CYXNlVHlw
ZXMuY3BwCkBAIC0wLDAgKzEsNjQgQEAKKy8vCisvLyBDb3B5cmlnaHQgMjAyMiBUaGUgQU5HTEUg
UHJvamVjdCBBdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVXNlIG9mIHRoaXMgc291
cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQor
Ly8gZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8vCisKKyNpbmNsdWRlICJCYXNlVHlwZXMu
aCIKKworI2luY2x1ZGUgImNvbW1vbi9QYWNrZWRFbnVtcy5oIgorCituYW1lc3BhY2Ugc2gKK3sK
K25hbWVzcGFjZQoreworY29uc3RleHByIGdsOjpCbGVuZEVxdWF0aW9uQml0U2V0IGtBZHZhbmNl
ZEJsZW5kQml0c3sKKyAgICBnbDo6QmxlbmRFcXVhdGlvblR5cGU6Ok11bHRpcGx5LCAgICAgIGds
OjpCbGVuZEVxdWF0aW9uVHlwZTo6U2NyZWVuLAorICAgIGdsOjpCbGVuZEVxdWF0aW9uVHlwZTo6
T3ZlcmxheSwgICAgICAgZ2w6OkJsZW5kRXF1YXRpb25UeXBlOjpEYXJrZW4sCisgICAgZ2w6OkJs
ZW5kRXF1YXRpb25UeXBlOjpMaWdodGVuLCAgICAgICBnbDo6QmxlbmRFcXVhdGlvblR5cGU6OkNv
bG9yZG9kZ2UsCisgICAgZ2w6OkJsZW5kRXF1YXRpb25UeXBlOjpDb2xvcmJ1cm4sICAgICBnbDo6
QmxlbmRFcXVhdGlvblR5cGU6OkhhcmRsaWdodCwKKyAgICBnbDo6QmxlbmRFcXVhdGlvblR5cGU6
OlNvZnRsaWdodCwgICAgIGdsOjpCbGVuZEVxdWF0aW9uVHlwZTo6RGlmZmVyZW5jZSwKKyAgICBn
bDo6QmxlbmRFcXVhdGlvblR5cGU6OkV4Y2x1c2lvbiwgICAgIGdsOjpCbGVuZEVxdWF0aW9uVHlw
ZTo6SHNsSHVlLAorICAgIGdsOjpCbGVuZEVxdWF0aW9uVHlwZTo6SHNsU2F0dXJhdGlvbiwgZ2w6
OkJsZW5kRXF1YXRpb25UeXBlOjpIc2xDb2xvciwKKyAgICBnbDo6QmxlbmRFcXVhdGlvblR5cGU6
OkhzbEx1bWlub3NpdHksCit9OworCitjb25zdGV4cHIgZ2w6OkJsZW5kRXF1YXRpb25CaXRTZXQg
a0FkdmFuY2VkQmxlbmRIc2xCaXRzeworICAgIGdsOjpCbGVuZEVxdWF0aW9uVHlwZTo6SHNsSHVl
LAorICAgIGdsOjpCbGVuZEVxdWF0aW9uVHlwZTo6SHNsU2F0dXJhdGlvbiwKKyAgICBnbDo6Qmxl
bmRFcXVhdGlvblR5cGU6OkhzbENvbG9yLAorICAgIGdsOjpCbGVuZEVxdWF0aW9uVHlwZTo6SHNs
THVtaW5vc2l0eSwKK307CisKK2Jvb2wgSXNWYWxpZEFkdmFuY2VkQmxlbmRCaXRTZXQodWludDMy
X3QgZW5hYmxlZEVxdWF0aW9ucykKK3sKKyAgICByZXR1cm4gKGdsOjpCbGVuZEVxdWF0aW9uQml0
U2V0KGVuYWJsZWRFcXVhdGlvbnMpICYgfmtBZHZhbmNlZEJsZW5kQml0cykubm9uZSgpOworfQor
fSAgLy8gYW5vbnltb3VzIG5hbWVzcGFjZQorCitib29sIEFkdmFuY2VkQmxlbmRFcXVhdGlvbnM6
OmFueSgpIGNvbnN0Cit7CisgICAgQVNTRVJUKElzVmFsaWRBZHZhbmNlZEJsZW5kQml0U2V0KG1F
bmFibGVkQmxlbmRFcXVhdGlvbnMpKTsKKyAgICByZXR1cm4gbUVuYWJsZWRCbGVuZEVxdWF0aW9u
cyAhPSAwOworfQorCitib29sIEFkdmFuY2VkQmxlbmRFcXVhdGlvbnM6OmFueUhzbCgpIGNvbnN0
Cit7CisgICAgQVNTRVJUKElzVmFsaWRBZHZhbmNlZEJsZW5kQml0U2V0KG1FbmFibGVkQmxlbmRF
cXVhdGlvbnMpKTsKKyAgICByZXR1cm4gKGdsOjpCbGVuZEVxdWF0aW9uQml0U2V0KG1FbmFibGVk
QmxlbmRFcXVhdGlvbnMpICYga0FkdmFuY2VkQmxlbmRIc2xCaXRzKS5hbnkoKTsKK30KKwordm9p
ZCBBZHZhbmNlZEJsZW5kRXF1YXRpb25zOjpzZXRBbGwoKQoreworICAgIEFTU0VSVChJc1ZhbGlk
QWR2YW5jZWRCbGVuZEJpdFNldChtRW5hYmxlZEJsZW5kRXF1YXRpb25zKSk7CisgICAgbUVuYWJs
ZWRCbGVuZEVxdWF0aW9ucyA9IGtBZHZhbmNlZEJsZW5kQml0cy5iaXRzKCk7Cit9CisKK3ZvaWQg
QWR2YW5jZWRCbGVuZEVxdWF0aW9uczo6c2V0KHVpbnQzMl90IGJsZW5kRXF1YXRpb24pCit7Cisg
ICAgZ2w6OkJsZW5kRXF1YXRpb25UeXBlIGVxID0gc3RhdGljX2Nhc3Q8Z2w6OkJsZW5kRXF1YXRp
b25UeXBlPihibGVuZEVxdWF0aW9uKTsKKyAgICBtRW5hYmxlZEJsZW5kRXF1YXRpb25zICAgPSBn
bDo6QmxlbmRFcXVhdGlvbkJpdFNldChtRW5hYmxlZEJsZW5kRXF1YXRpb25zKS5zZXQoZXEpLmJp
dHMoKTsKKyAgICBBU1NFUlQoSXNWYWxpZEFkdmFuY2VkQmxlbmRCaXRTZXQobUVuYWJsZWRCbGVu
ZEVxdWF0aW9ucykpOworfQorCit9ICAvLyBuYW1lc3BhY2Ugc2gKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci90cmFuc2xhdG9yL0Jhc2VUeXBlcy5oIGIv
U291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvQmFzZVR5cGVz
LmgKaW5kZXggZjE1YTM5NzhiOWM5MGM3OWFlNTY2N2FkZGIzOTRmMjIyYTg2YWFlZC4uOWRmYWJk
MjlmOWNkNzY4OTExMGUzMzQ5N2QxMjg5YjhiODM3YTVlNiAxMDA2NDQKLS0tIGEvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvQmFzZVR5cGVzLmgKKysrIGIv
U291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvQmFzZVR5cGVz
LmgKQEAgLTEzMDQsNiArMTMwNCwzNiBAQCBlbnVtIFRMYXlvdXRUZXNzRXZhbHVhdGlvblR5cGUK
ICAgICBFdGV0UG9pbnRNb2RlCiB9OwogCitjbGFzcyBBZHZhbmNlZEJsZW5kRXF1YXRpb25zCit7
CisgIHB1YmxpYzoKKyAgICAvLyBNdXN0IGhhdmUgYSB0cml2aWFsIGRlZmF1bHQgY29uc3RydWN0
b3Igc2luY2UgaXQgaXMgdXNlZCBpbiBZWVNUWVBFLgorICAgIEFkdmFuY2VkQmxlbmRFcXVhdGlv
bnMoKSA9IGRlZmF1bHQ7CisgICAgZXhwbGljaXQgY29uc3RleHByIEFkdmFuY2VkQmxlbmRFcXVh
dGlvbnModWludDMyX3QgaW5pdGlhbFN0YXRlKQorICAgICAgICA6IG1FbmFibGVkQmxlbmRFcXVh
dGlvbnMoaW5pdGlhbFN0YXRlKQorICAgIHt9CisKKyAgICBib29sIGFueSgpIGNvbnN0OworICAg
IGJvb2wgYW55SHNsKCkgY29uc3Q7CisKKyAgICB2b2lkIHNldEFsbCgpOworICAgIHZvaWQgcmVz
ZXQoKSB7IG1FbmFibGVkQmxlbmRFcXVhdGlvbnMgPSAwOyB9CisKKyAgICAvLyBQYXJhbWV0ZXIg
aXMgZ2w6OkJsZW5kRXF1YXRpb25UeXBlLCBidXQgUGFja2VkRW51bXMuaCBpbmNsdWRlIGlzIG5v
dCBwb3NzaWJsZSBoZXJlLgorICAgIHZvaWQgc2V0KHVpbnQzMl90IGJsZW5kRXF1YXRpb24pOwor
CisgICAgdWludDMyX3QgYml0cygpIGNvbnN0IHsgcmV0dXJuIG1FbmFibGVkQmxlbmRFcXVhdGlv
bnM7IH0KKworICAgIEFkdmFuY2VkQmxlbmRFcXVhdGlvbnMgb3BlcmF0b3J8PShBZHZhbmNlZEJs
ZW5kRXF1YXRpb25zIG90aGVyKQorICAgIHsKKyAgICAgICAgbUVuYWJsZWRCbGVuZEVxdWF0aW9u
cyB8PSBvdGhlci5tRW5hYmxlZEJsZW5kRXF1YXRpb25zOworICAgICAgICByZXR1cm4gKnRoaXM7
CisgICAgfQorCisgIHByaXZhdGU6CisgICAgdWludDMyX3QgbUVuYWJsZWRCbGVuZEVxdWF0aW9u
czsKK307CisKIHN0cnVjdCBUTGF5b3V0UXVhbGlmaWVyCiB7CiAgICAgLy8gTXVzdCBoYXZlIGEg
dHJpdmlhbCBkZWZhdWx0IGNvbnN0cnVjdG9yIHNpbmNlIGl0IGlzIHVzZWQgaW4gWVlTVFlQRS4K
QEAgLTEzMjAsNyArMTM1MCw3IEBAIHN0cnVjdCBUTGF5b3V0UXVhbGlmaWVyCiAgICAgICAgICAg
ICAgICBpbnZvY2F0aW9ucyA9PSAwICYmIG1heFZlcnRpY2VzID09IC0xICYmIHZlcnRpY2VzID09
IDAgJiYKICAgICAgICAgICAgICAgIHRlc1ByaW1pdGl2ZVR5cGUgPT0gRXRldFVuZGVmaW5lZCAm
JiB0ZXNWZXJ0ZXhTcGFjaW5nVHlwZSA9PSBFdGV0VW5kZWZpbmVkICYmCiAgICAgICAgICAgICAg
ICB0ZXNPcmRlcmluZ1R5cGUgPT0gRXRldFVuZGVmaW5lZCAmJiB0ZXNQb2ludFR5cGUgPT0gRXRl
dFVuZGVmaW5lZCAmJiBpbmRleCA9PSAtMSAmJgotICAgICAgICAgICAgICAgaW5wdXRBdHRhY2ht
ZW50SW5kZXggPT0gLTEgJiYgbm9uY29oZXJlbnQgPT0gZmFsc2U7CisgICAgICAgICAgICAgICBp
bnB1dEF0dGFjaG1lbnRJbmRleCA9PSAtMSAmJiBub25jb2hlcmVudCA9PSBmYWxzZSAmJiAhYWR2
YW5jZWRCbGVuZEVxdWF0aW9ucy5hbnkoKTsKICAgICB9CiAKICAgICBib29sIGlzQ29tYmluYXRp
b25WYWxpZCgpIGNvbnN0CkBAIC0xMzMzLDYgKzEzNjMsNyBAQCBzdHJ1Y3QgVExheW91dFF1YWxp
ZmllcgogICAgICAgICBib29sIG90aGVyTGF5b3V0UXVhbGlmaWVyc1NwZWNpZmllZCA9CiAgICAg
ICAgICAgICAobG9jYXRpb24gIT0gLTEgfHwgYmluZGluZyAhPSAtMSB8fCBpbmRleCAhPSAtMSB8
fCBtYXRyaXhQYWNraW5nICE9IEVtcFVuc3BlY2lmaWVkIHx8CiAgICAgICAgICAgICAgYmxvY2tT
dG9yYWdlICE9IEVic1Vuc3BlY2lmaWVkIHx8IGltYWdlSW50ZXJuYWxGb3JtYXQgIT0gRWlpZlVu
c3BlY2lmaWVkKTsKKyAgICAgICAgYm9vbCBibGVuZEVxdWF0aW9uU3BlY2lmaWVkID0gYWR2YW5j
ZWRCbGVuZEVxdWF0aW9ucy5hbnkoKTsKIAogICAgICAgICAvLyB3ZSBjYW4gaGF2ZSBlaXRoZXIg
dGhlIHdvcmsgZ3JvdXAgc2l6ZSBzcGVjaWZpZWQsIG9yIG51bWJlciBvZiB2aWV3cywKICAgICAg
ICAgLy8gb3IgeXV2IGxheW91dCBxdWFsaWZpZXIsIG9yIGVhcmx5X2ZyYWdtZW50X3Rlc3RzIGxh
eW91dCBxdWFsaWZpZXIsIG9yIHRoZSBvdGhlciBsYXlvdXQKQEAgLTEzNDAsNyArMTM3MSw3IEBA
IHN0cnVjdCBUTGF5b3V0UXVhbGlmaWVyCiAgICAgICAgIHJldHVybiAod29ya0dyb3VwU2l6ZVNw
ZWNpZmllZCA/IDEgOiAwKSArIChudW1WaWV3c1NldCA/IDEgOiAwKSArICh5dXYgPyAxIDogMCkg
KwogICAgICAgICAgICAgICAgICAgIChlYXJseUZyYWdtZW50VGVzdHMgPyAxIDogMCkgKyAob3Ro
ZXJMYXlvdXRRdWFsaWZpZXJzU3BlY2lmaWVkID8gMSA6IDApICsKICAgICAgICAgICAgICAgICAg
ICAoZ2VvbWV0cnlTaGFkZXJTcGVjaWZpZWQgPyAxIDogMCkgKyAoc3VicGFzc0lucHV0U3BlY2lm
aWVkID8gMSA6IDApICsKLSAgICAgICAgICAgICAgICAgICAobm9uY29oZXJlbnQgPyAxIDogMCkg
PD0KKyAgICAgICAgICAgICAgICAgICAobm9uY29oZXJlbnQgPyAxIDogMCkgKyAoYmxlbmRFcXVh
dGlvblNwZWNpZmllZCA/IDEgOiAwKSA8PQogICAgICAgICAgICAgICAgMTsKICAgICB9CiAKQEAg
LTEzOTEsNiArMTQyMiw5IEBAIHN0cnVjdCBUTGF5b3V0UXVhbGlmaWVyCiAgICAgaW50IGlucHV0
QXR0YWNobWVudEluZGV4OwogICAgIGJvb2wgbm9uY29oZXJlbnQ7CiAKKyAgICAvLyBLSFJfYmxl
bmRfZXF1YXRpb25fYWR2YW5jZWQgbGF5b3V0IHF1YWxpZmllcnMuCisgICAgQWR2YW5jZWRCbGVu
ZEVxdWF0aW9ucyBhZHZhbmNlZEJsZW5kRXF1YXRpb25zOworCiAgIHByaXZhdGU6CiAgICAgZXhw
bGljaXQgY29uc3RleHByIFRMYXlvdXRRdWFsaWZpZXIoaW50IC8qcGxhY2Vob2xkZXIqLykKICAg
ICAgICAgOiBsb2NhdGlvbigtMSksCkBAIC0xNDE0LDcgKzE0NDgsOCBAQCBzdHJ1Y3QgVExheW91
dFF1YWxpZmllcgogICAgICAgICAgIHRlc1BvaW50VHlwZShFdGV0VW5kZWZpbmVkKSwKICAgICAg
ICAgICBpbmRleCgtMSksCiAgICAgICAgICAgaW5wdXRBdHRhY2htZW50SW5kZXgoLTEpLAotICAg
ICAgICAgIG5vbmNvaGVyZW50KGZhbHNlKQorICAgICAgICAgIG5vbmNvaGVyZW50KGZhbHNlKSwK
KyAgICAgICAgICBhZHZhbmNlZEJsZW5kRXF1YXRpb25zKDApCiAgICAge30KIH07CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci90cmFuc2xhdG9yL0Nv
bXBpbGVyLmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci90cmFuc2xh
dG9yL0NvbXBpbGVyLmNwcAppbmRleCA4YjAxNWE4MjMwZjE5YmI3OWMwNzc0ZTQzM2IxMGQ1ZTFj
NzQwMjU5Li40OWZkYTZjY2FhZmQzMGRhZmMzODQwZjViZDJhMWI5NWU4NjQ4ZTQ5IDEwMDY0NAot
LS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci9Db21w
aWxlci5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3RyYW5z
bGF0b3IvQ29tcGlsZXIuY3BwCkBAIC0zNDYsNiArMzQ2LDcgQEAgVENvbXBpbGVyOjpUQ29tcGls
ZXIoc2g6OkdMZW51bSB0eXBlLCBTaFNoYWRlclNwZWMgc3BlYywgU2hTaGFkZXJPdXRwdXQgb3V0
cHV0KQogICAgICAgbVRlc3NFdmFsdWF0aW9uU2hhZGVySW5wdXRPcmRlcmluZ1R5cGUoRXRldFVu
ZGVmaW5lZCksCiAgICAgICBtVGVzc0V2YWx1YXRpb25TaGFkZXJJbnB1dFBvaW50VHlwZShFdGV0
VW5kZWZpbmVkKSwKICAgICAgIG1IYXNBbnlQcmVjaXNlVHlwZShmYWxzZSksCisgICAgICBtQWR2
YW5jZWRCbGVuZEVxdWF0aW9ucygwKSwKICAgICAgIG1Db21waWxlT3B0aW9ucygwKQoge30KIApA
QCAtNTYwLDYgKzU2MSwxMCBAQCB2b2lkIFRDb21waWxlcjo6c2V0QVNUTWV0YWRhdGEoY29uc3Qg
VFBhcnNlQ29udGV4dCAmcGFyc2VDb250ZXh0KQogCiAgICAgbUhhc0FueVByZWNpc2VUeXBlID0g
cGFyc2VDb250ZXh0Lmhhc0FueVByZWNpc2VUeXBlKCk7CiAKKyAgICBpZiAobVNoYWRlclR5cGUg
PT0gR0xfRlJBR01FTlRfU0hBREVSKQorICAgIHsKKyAgICAgICAgbUFkdmFuY2VkQmxlbmRFcXVh
dGlvbnMgPSBwYXJzZUNvbnRleHQuZ2V0QWR2YW5jZWRCbGVuZEVxdWF0aW9ucygpOworICAgIH0K
ICAgICBpZiAobVNoYWRlclR5cGUgPT0gR0xfR0VPTUVUUllfU0hBREVSX0VYVCkKICAgICB7CiAg
ICAgICAgIG1HZW9tZXRyeVNoYWRlcklucHV0UHJpbWl0aXZlVHlwZSAgPSBwYXJzZUNvbnRleHQu
Z2V0R2VvbWV0cnlTaGFkZXJJbnB1dFByaW1pdGl2ZVR5cGUoKTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci90cmFuc2xhdG9yL0NvbXBpbGVyLmggYi9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci9Db21waWxlci5o
CmluZGV4IGUxOWYwYWNkZTFhNzk1YWY2NDk2ZGI2ZWNiOWMxOTc5NDFkZmM1MWMuLmYzY2EwMTYx
NTk2ZWYxMDVmZWZkYWViNmFmNDc2ZjE1NDE1NDE3OGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci90cmFuc2xhdG9yL0NvbXBpbGVyLmgKKysrIGIvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvQ29tcGlsZXIuaApA
QCAtMTg0LDYgKzE4NCw4IEBAIGNsYXNzIFRDb21waWxlciA6IHB1YmxpYyBUU2hIYW5kbGVCYXNl
CiAKICAgICBib29sIGhhc0FueVByZWNpc2VUeXBlKCkgY29uc3QgeyByZXR1cm4gbUhhc0FueVBy
ZWNpc2VUeXBlOyB9CiAKKyAgICBBZHZhbmNlZEJsZW5kRXF1YXRpb25zIGdldEFkdmFuY2VkQmxl
bmRFcXVhdGlvbnMoKSBjb25zdCB7IHJldHVybiBtQWR2YW5jZWRCbGVuZEVxdWF0aW9uczsgfQor
CiAgICAgdW5zaWduZWQgaW50IGdldFNoYXJlZE1lbW9yeVNpemUoKSBjb25zdDsKIAogICAgIHNo
OjpHTGVudW0gZ2V0U2hhZGVyVHlwZSgpIGNvbnN0IHsgcmV0dXJuIG1TaGFkZXJUeXBlOyB9CkBA
IC0zMzksNiArMzQxLDkgQEAgY2xhc3MgVENvbXBpbGVyIDogcHVibGljIFRTaEhhbmRsZUJhc2UK
IAogICAgIGJvb2wgbUhhc0FueVByZWNpc2VUeXBlOwogCisgICAgLy8gYWR2YW5jZWQgYmxlbmQg
ZXF1YXRpb24gcGFyYW1ldGVycworICAgIEFkdmFuY2VkQmxlbmRFcXVhdGlvbnMgbUFkdmFuY2Vk
QmxlbmRFcXVhdGlvbnM7CisKICAgICAvLyBuYW1lIGhhc2hpbmcuCiAgICAgTmFtZU1hcCBtTmFt
ZU1hcDsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbXBpbGVy
L3RyYW5zbGF0b3IvRXh0ZW5zaW9uQmVoYXZpb3IuY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvRXh0ZW5zaW9uQmVoYXZpb3IuY3BwCmluZGV4IDA4
MjdlYzcyOGY4N2QzZGViYTNkMTQ3YzMxZmU0MTA5OWQ1OWQ2MDkuLmEwMjkwNDM2OGM5MDkzZjJm
Mjc5MjY3MDllOTczN2EyYjlhOTVjNGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FO
R0xFL3NyYy9jb21waWxlci90cmFuc2xhdG9yL0V4dGVuc2lvbkJlaGF2aW9yLmNwcAorKysgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci9FeHRlbnNpb25C
ZWhhdmlvci5jcHAKQEAgLTQwLDYgKzQwLDcgQEAKICAgICBPUChFWFRfdGV4dHVyZV9idWZmZXIp
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgT1AoRVhUX3RleHR1cmVfY3ViZV9t
YXBfYXJyYXkpICAgICAgICAgICAgICAgICAgICAgXAogICAgIE9QKEVYVF9ZVVZfdGFyZ2V0KSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICBPUChLSFJfYmxlbmRfZXF1YXRp
b25fYWR2YW5jZWQpICAgICAgICAgICAgICAgICAgICBcCiAgICAgT1AoTlZfRUdMX3N0cmVhbV9j
b25zdW1lcl9leHRlcm5hbCkgICAgICAgICAgICAgICAgXAogICAgIE9QKE5WX3NoYWRlcl9mcmFt
ZWJ1ZmZlcl9mZXRjaCkgICAgICAgICAgICAgICAgICAgIFwKICAgICBPUChOVl9zaGFkZXJfbm9w
ZXJzcGVjdGl2ZV9pbnRlcnBvbGF0aW9uKSAgICAgICAgICBcCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci9FeHRlbnNpb25CZWhhdmlv
ci5oIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvRXh0
ZW5zaW9uQmVoYXZpb3IuaAppbmRleCAyZmMwNmZiNGMwYjcxYjhjYjMwOGQ1YWFjNjYwZjJhN2I4
MjdmZDg1Li5kYzVhNTI1ZjM2ZTI1NjE4MTg1NGQ5M2E2ZTRkOWY1MzkyZDY5NjNlIDEwMDY0NAot
LS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci9FeHRl
bnNpb25CZWhhdmlvci5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21waWxl
ci90cmFuc2xhdG9yL0V4dGVuc2lvbkJlaGF2aW9yLmgKQEAgLTQ2LDYgKzQ2LDcgQEAgZW51bSBj
bGFzcyBURXh0ZW5zaW9uIDogdWludDhfdAogICAgIEVYVF90ZXh0dXJlX2J1ZmZlciwKICAgICBF
WFRfdGV4dHVyZV9jdWJlX21hcF9hcnJheSwKICAgICBFWFRfWVVWX3RhcmdldCwKKyAgICBLSFJf
YmxlbmRfZXF1YXRpb25fYWR2YW5jZWQsCiAgICAgTlZfRUdMX3N0cmVhbV9jb25zdW1lcl9leHRl
cm5hbCwKICAgICBOVl9zaGFkZXJfZnJhbWVidWZmZXJfZmV0Y2gsCiAgICAgTlZfc2hhZGVyX25v
cGVyc3BlY3RpdmVfaW50ZXJwb2xhdGlvbiwKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3NyYy9jb21waWxlci90cmFuc2xhdG9yL0luaXRpYWxpemUuY3BwIGIvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvSW5pdGlhbGl6ZS5jcHAKaW5k
ZXggMzRmYWZlZTQwOWQxMmMzNmQxM2YzMTNmMjA1ZTE3OGJlZmI2YTAzMC4uYjZkY2NkYmU1Nzg4
Y2NkODFkZDBjYmMxYjJhOGRmNWU4YzkyZGE1OCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvSW5pdGlhbGl6ZS5jcHAKKysrIGIvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvSW5pdGlhbGl6ZS5j
cHAKQEAgLTE4NSw2ICsxODUsMTAgQEAgdm9pZCBJbml0RXh0ZW5zaW9uQmVoYXZpb3IoY29uc3Qg
U2hCdWlsdEluUmVzb3VyY2VzICZyZXNvdXJjZXMsIFRFeHRlbnNpb25CZWhhdmkKICAgICB7CiAg
ICAgICAgIGV4dEJlaGF2aW9yW1RFeHRlbnNpb246OkFORFJPSURfZXh0ZW5zaW9uX3BhY2tfZXMz
MWFdID0gRUJoVW5kZWZpbmVkOwogICAgIH0KKyAgICBpZiAocmVzb3VyY2VzLktIUl9ibGVuZF9l
cXVhdGlvbl9hZHZhbmNlZCkKKyAgICB7CisgICAgICAgIGV4dEJlaGF2aW9yW1RFeHRlbnNpb246
OktIUl9ibGVuZF9lcXVhdGlvbl9hZHZhbmNlZF0gPSBFQmhVbmRlZmluZWQ7CisgICAgfQogfQog
CiB2b2lkIFJlc2V0RXh0ZW5zaW9uQmVoYXZpb3IoY29uc3QgU2hCdWlsdEluUmVzb3VyY2VzICZy
ZXNvdXJjZXMsCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tcGls
ZXIvdHJhbnNsYXRvci9QYXJzZUNvbnRleHQuY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUv
c3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvUGFyc2VDb250ZXh0LmNwcAppbmRleCBmNDhhZGJhNDZk
YmJiYjY1OWVhODNjZDM2NDU5ZWI5ZDA2NzM2ODExLi4yMDc4OGNiOTMyM2RhYWVjOGYxZTMzNDgz
ZGZhYmFjMWY0NDhkODkwIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
Y29tcGlsZXIvdHJhbnNsYXRvci9QYXJzZUNvbnRleHQuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL3NyYy9jb21waWxlci90cmFuc2xhdG9yL1BhcnNlQ29udGV4dC5jcHAKQEAgLTE0
OCw2ICsxNDgsMTAgQEAgVEludGVybVR5cGVkICpGaW5kTFZhbHVlQmFzZShUSW50ZXJtVHlwZWQg
Km5vZGUpCiAgICAgfSB3aGlsZSAodHJ1ZSk7CiB9CiAKK3ZvaWQgQWRkQWR2YW5jZWRCbGVuZEVx
dWF0aW9uKGdsOjpCbGVuZEVxdWF0aW9uVHlwZSBlcSwgVExheW91dFF1YWxpZmllciAqcXVhbGlm
aWVyKQoreworICAgIHF1YWxpZmllci0+YWR2YW5jZWRCbGVuZEVxdWF0aW9ucy5zZXQoc3RhdGlj
X2Nhc3Q8dWludDMyX3Q+KGVxKSk7Cit9CiB9ICAvLyBuYW1lc3BhY2UKIAogLy8gVGhpcyB0cmFj
a3MgZWFjaCBiaW5kaW5nIHBvaW50J3MgY3VycmVudCBkZWZhdWx0IG9mZnNldCBmb3IgaW5oZXJp
dGFuY2Ugb2Ygc3Vic2VxdWVudApAQCAtMjQ0LDYgKzI0OCw3IEBAIFRQYXJzZUNvbnRleHQ6OlRQ
YXJzZUNvbnRleHQoVFN5bWJvbFRhYmxlICZzeW10LAogICAgICAgbVRlc3NFdmFsdWF0aW9uU2hh
ZGVySW5wdXRPcmRlcmluZ1R5cGUoRXRldFVuZGVmaW5lZCksCiAgICAgICBtVGVzc0V2YWx1YXRp
b25TaGFkZXJJbnB1dFBvaW50VHlwZShFdGV0VW5kZWZpbmVkKSwKICAgICAgIG1IYXNBbnlQcmVj
aXNlVHlwZShmYWxzZSksCisgICAgICBtQWR2YW5jZWRCbGVuZEVxdWF0aW9ucygwKSwKICAgICAg
IG1GdW5jdGlvbkJvZHlOZXdTY29wZShmYWxzZSksCiAgICAgICBtT3V0cHV0VHlwZShvdXRwdXRU
eXBlKQoge30KQEAgLTE4MzYsOSArMTg0MSwxMCBAQCB2b2lkIFRQYXJzZUNvbnRleHQ6OmNoZWNr
QmluZGluZ0lzVmFsaWQoY29uc3QgVFNvdXJjZUxvYyAmaWRlbnRpZmllckxvY2F0aW9uLCBjbwog
CiB2b2lkIFRQYXJzZUNvbnRleHQ6OmNoZWNrQ2FuVXNlTGF5b3V0UXVhbGlmaWVyKGNvbnN0IFRT
b3VyY2VMb2MgJmxvY2F0aW9uKQogewotICAgIGNvbnN0ZXhwciBzdGQ6OmFycmF5PFRFeHRlbnNp
b24sIDJ1PiBleHRlbnNpb25zeworICAgIGNvbnN0ZXhwciBzdGQ6OmFycmF5PFRFeHRlbnNpb24s
IDN1PiBleHRlbnNpb25zewogICAgICAgICB7VEV4dGVuc2lvbjo6RVhUX3NoYWRlcl9mcmFtZWJ1
ZmZlcl9mZXRjaCwKLSAgICAgICAgIFRFeHRlbnNpb246OkVYVF9zaGFkZXJfZnJhbWVidWZmZXJf
ZmV0Y2hfbm9uX2NvaGVyZW50fX07CisgICAgICAgICBURXh0ZW5zaW9uOjpFWFRfc2hhZGVyX2Zy
YW1lYnVmZmVyX2ZldGNoX25vbl9jb2hlcmVudCwKKyAgICAgICAgIFRFeHRlbnNpb246OktIUl9i
bGVuZF9lcXVhdGlvbl9hZHZhbmNlZH19OwogICAgIGlmIChnZXRTaGFkZXJWZXJzaW9uKCkgPCAz
MDAgJiYgIWNoZWNrQ2FuVXNlT25lT2ZFeHRlbnNpb25zKGxvY2F0aW9uLCBleHRlbnNpb25zKSkK
ICAgICB7CiAgICAgICAgIGVycm9yKGxvY2F0aW9uLCAicXVhbGlmaWVyIHN1cHBvcnRlZCBpbiBH
TFNMIEVTIDMuMDAgYW5kIGFib3ZlIG9ubHkiLCAibGF5b3V0Iik7CkBAIC0yMTIwLDYgKzIxMjYs
MjAgQEAgdm9pZCBUUGFyc2VDb250ZXh0OjpjaGVja0ludmFyaWFudFZhcmlhYmxlUXVhbGlmaWVy
KGJvb2wgaW52YXJpYW50LAogICAgIH0KIH0KIAordm9pZCBUUGFyc2VDb250ZXh0OjpjaGVja0Fk
dmFuY2VkQmxlbmRFcXVhdGlvbnNOb3RTcGVjaWZpZWQoCisgICAgY29uc3QgVFNvdXJjZUxvYyAm
bG9jYXRpb24sCisgICAgY29uc3QgQWR2YW5jZWRCbGVuZEVxdWF0aW9ucyAmYWR2YW5jZWRCbGVu
ZEVxdWF0aW9ucywKKyAgICBjb25zdCBUUXVhbGlmaWVyICZxdWFsaWZpZXIpCit7CisgICAgaWYg
KGFkdmFuY2VkQmxlbmRFcXVhdGlvbnMuYW55KCkgJiYgcXVhbGlmaWVyICE9IEV2cUZyYWdtZW50
T3V0KQorICAgIHsKKyAgICAgICAgZXJyb3IobG9jYXRpb24sCisgICAgICAgICAgICAgICJpbnZh
bGlkIGxheW91dCBxdWFsaWZpZXI6IGJsZW5kaW5nIGVxdWF0aW9uIHF1YWxpZmllcnMgYXJlIG9u
bHkgcGVybWl0dGVkIG9uIHRoZSAiCisgICAgICAgICAgICAgICJmcmFnbWVudCAnb3V0JyBxdWFs
aWZpZXIgIiwKKyAgICAgICAgICAgICAgImJsZW5kX3N1cHBvcnRfcXVhbGlmaWVyIik7CisgICAg
fQorfQorCiBib29sIFRQYXJzZUNvbnRleHQ6OmlzRXh0ZW5zaW9uRW5hYmxlZChURXh0ZW5zaW9u
IGV4dGVuc2lvbikgY29uc3QKIHsKICAgICByZXR1cm4gSXNFeHRlbnNpb25FbmFibGVkKGV4dGVu
c2lvbkJlaGF2aW9yKCksIGV4dGVuc2lvbik7CkBAIC0zNjI2LDYgKzM2NDYsOSBAQCB2b2lkIFRQ
YXJzZUNvbnRleHQ6OnBhcnNlR2xvYmFsTGF5b3V0UXVhbGlmaWVyKGNvbnN0IFRUeXBlUXVhbGlm
aWVyQnVpbGRlciAmdHlwZQogICAgIGNoZWNrU3RkNDMwSXNGb3JTaGFkZXJTdG9yYWdlQmxvY2so
dHlwZVF1YWxpZmllci5saW5lLCBsYXlvdXRRdWFsaWZpZXIuYmxvY2tTdG9yYWdlLAogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZVF1YWxpZmllci5xdWFsaWZpZXIp
OwogCisgICAgY2hlY2tBZHZhbmNlZEJsZW5kRXF1YXRpb25zTm90U3BlY2lmaWVkKAorICAgICAg
ICB0eXBlUXVhbGlmaWVyLmxpbmUsIGxheW91dFF1YWxpZmllci5hZHZhbmNlZEJsZW5kRXF1YXRp
b25zLCB0eXBlUXVhbGlmaWVyLnF1YWxpZmllcik7CisKICAgICBpZiAodHlwZVF1YWxpZmllci5x
dWFsaWZpZXIgIT0gRXZxRnJhZ21lbnRJbikKICAgICB7CiAgICAgICAgIGNoZWNrRWFybHlGcmFn
bWVudFRlc3RzSXNOb3RTcGVjaWZpZWQodHlwZVF1YWxpZmllci5saW5lLApAQCAtMzc1Nyw2ICsz
NzgwLDI4IEBAIHZvaWQgVFBhcnNlQ29udGV4dDo6cGFyc2VHbG9iYWxMYXlvdXRRdWFsaWZpZXIo
Y29uc3QgVFR5cGVRdWFsaWZpZXJCdWlsZGVyICZ0eXBlCiAKICAgICAgICAgbUVhcmx5RnJhZ21l
bnRUZXN0c1NwZWNpZmllZCA9IHRydWU7CiAgICAgfQorICAgIGVsc2UgaWYgKHR5cGVRdWFsaWZp
ZXIucXVhbGlmaWVyID09IEV2cUZyYWdtZW50T3V0KQorICAgIHsKKyAgICAgICAgaWYgKG1TaGFk
ZXJWZXJzaW9uIDwgMzIwICYmICFpc0V4dGVuc2lvbkVuYWJsZWQoVEV4dGVuc2lvbjo6S0hSX2Js
ZW5kX2VxdWF0aW9uX2FkdmFuY2VkKSkKKyAgICAgICAgeworICAgICAgICAgICAgZXJyb3IodHlw
ZVF1YWxpZmllci5saW5lLAorICAgICAgICAgICAgICAgICAgIm91dCB0eXBlIHF1YWxpZmllciB3
aXRob3V0IHZhcmlhYmxlIGRlY2xhcmF0aW9uIGlzIHN1cHBvcnRlZCBpbiBHTFNMIEVTIDMuMjAs
IgorICAgICAgICAgICAgICAgICAgIiBvciBpZiBHTF9LSFJfYmxlbmRfZXF1YXRpb25fYWR2YW5j
ZWQgaXMgZW5hYmxlZCIsCisgICAgICAgICAgICAgICAgICAibGF5b3V0Iik7CisgICAgICAgICAg
ICByZXR1cm47CisgICAgICAgIH0KKworICAgICAgICBpZiAoIWxheW91dFF1YWxpZmllci5hZHZh
bmNlZEJsZW5kRXF1YXRpb25zLmFueSgpKQorICAgICAgICB7CisgICAgICAgICAgICBlcnJvcih0
eXBlUXVhbGlmaWVyLmxpbmUsCisgICAgICAgICAgICAgICAgICAib25seSBibGVuZCBlcXVhdGlv
bnMgYXJlIGFsbG93ZWQgYXMgbGF5b3V0IHF1YWxpZmllciB3aGVuIG5vdCBkZWNsYXJpbmcgYSAi
CisgICAgICAgICAgICAgICAgICAidmFyaWFibGUiLAorICAgICAgICAgICAgICAgICAgImxheW91
dCIpOworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CisKKyAgICAgICAgbUFkdmFuY2Vk
QmxlbmRFcXVhdGlvbnMgfD0gbGF5b3V0UXVhbGlmaWVyLmFkdmFuY2VkQmxlbmRFcXVhdGlvbnM7
CisgICAgfQogICAgIGVsc2UgaWYgKHR5cGVRdWFsaWZpZXIucXVhbGlmaWVyID09IEV2cVRlc3ND
b250cm9sT3V0KQogICAgIHsKICAgICAgICAgaWYgKG1TaGFkZXJWZXJzaW9uIDwgMzEwKQpAQCAt
NTI4MSwxNSArNTMyNiw5NSBAQCBUTGF5b3V0UXVhbGlmaWVyIFRQYXJzZUNvbnRleHQ6OnBhcnNl
TGF5b3V0UXVhbGlmaWVyKGNvbnN0IEltbXV0YWJsZVN0cmluZyAmcXVhbAogICAgICAgICAgICAg
ZXJyb3IocXVhbGlmaWVyVHlwZUxpbmUsICJpbnZhbGlkIGxheW91dCBxdWFsaWZpZXIiLCBxdWFs
aWZpZXJUeXBlKTsKICAgICAgICAgfQogICAgIH0KLSAgICBlbHNlIGlmIChxdWFsaWZpZXJUeXBl
ID09ICJub25jb2hlcmVudCIgJiYgbVNoYWRlclR5cGUgPT0gR0xfRlJBR01FTlRfU0hBREVSKQor
ICAgIGVsc2UgaWYgKG1TaGFkZXJUeXBlID09IEdMX0ZSQUdNRU5UX1NIQURFUikKICAgICB7Ci0g
ICAgICAgIGlmIChjaGVja0NhblVzZU9uZU9mRXh0ZW5zaW9ucygKLSAgICAgICAgICAgICAgICBx
dWFsaWZpZXJUeXBlTGluZSwgc3RkOjphcnJheTxURXh0ZW5zaW9uLCAydT57Ci0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7VEV4dGVuc2lvbjo6RVhUX3NoYWRlcl9mcmFt
ZWJ1ZmZlcl9mZXRjaCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBU
RXh0ZW5zaW9uOjpFWFRfc2hhZGVyX2ZyYW1lYnVmZmVyX2ZldGNoX25vbl9jb2hlcmVudH19KSkK
KyAgICAgICAgaWYgKHF1YWxpZmllclR5cGUgPT0gIm5vbmNvaGVyZW50IikKKyAgICAgICAgewor
ICAgICAgICAgICAgaWYgKGNoZWNrQ2FuVXNlT25lT2ZFeHRlbnNpb25zKAorICAgICAgICAgICAg
ICAgICAgICBxdWFsaWZpZXJUeXBlTGluZSwKKyAgICAgICAgICAgICAgICAgICAgc3RkOjphcnJh
eTxURXh0ZW5zaW9uLCAydT57CisgICAgICAgICAgICAgICAgICAgICAgICB7VEV4dGVuc2lvbjo6
RVhUX3NoYWRlcl9mcmFtZWJ1ZmZlcl9mZXRjaCwKKyAgICAgICAgICAgICAgICAgICAgICAgICBU
RXh0ZW5zaW9uOjpFWFRfc2hhZGVyX2ZyYW1lYnVmZmVyX2ZldGNoX25vbl9jb2hlcmVudH19KSkK
KyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBjaGVja0xheW91dFF1YWxpZmllclN1cHBv
cnRlZChxdWFsaWZpZXJUeXBlTGluZSwgcXVhbGlmaWVyVHlwZSwgMTAwKTsKKyAgICAgICAgICAg
ICAgICBxdWFsaWZpZXIubm9uY29oZXJlbnQgPSB0cnVlOworICAgICAgICAgICAgfQorICAgICAg
ICB9CisgICAgICAgIGVsc2UgaWYgKHF1YWxpZmllclR5cGUgPT0gImJsZW5kX3N1cHBvcnRfbXVs
dGlwbHkiKQorICAgICAgICB7CisgICAgICAgICAgICBBZGRBZHZhbmNlZEJsZW5kRXF1YXRpb24o
Z2w6OkJsZW5kRXF1YXRpb25UeXBlOjpNdWx0aXBseSwgJnF1YWxpZmllcik7CisgICAgICAgIH0K
KyAgICAgICAgZWxzZSBpZiAocXVhbGlmaWVyVHlwZSA9PSAiYmxlbmRfc3VwcG9ydF9zY3JlZW4i
KQorICAgICAgICB7CisgICAgICAgICAgICBBZGRBZHZhbmNlZEJsZW5kRXF1YXRpb24oZ2w6OkJs
ZW5kRXF1YXRpb25UeXBlOjpTY3JlZW4sICZxdWFsaWZpZXIpOworICAgICAgICB9CisgICAgICAg
IGVsc2UgaWYgKHF1YWxpZmllclR5cGUgPT0gImJsZW5kX3N1cHBvcnRfb3ZlcmxheSIpCiAgICAg
ICAgIHsKLSAgICAgICAgICAgIGNoZWNrTGF5b3V0UXVhbGlmaWVyU3VwcG9ydGVkKHF1YWxpZmll
clR5cGVMaW5lLCBxdWFsaWZpZXJUeXBlLCAxMDApOwotICAgICAgICAgICAgcXVhbGlmaWVyLm5v
bmNvaGVyZW50ID0gdHJ1ZTsKKyAgICAgICAgICAgIEFkZEFkdmFuY2VkQmxlbmRFcXVhdGlvbihn
bDo6QmxlbmRFcXVhdGlvblR5cGU6Ok92ZXJsYXksICZxdWFsaWZpZXIpOworICAgICAgICB9Cisg
ICAgICAgIGVsc2UgaWYgKHF1YWxpZmllclR5cGUgPT0gImJsZW5kX3N1cHBvcnRfZGFya2VuIikK
KyAgICAgICAgeworICAgICAgICAgICAgQWRkQWR2YW5jZWRCbGVuZEVxdWF0aW9uKGdsOjpCbGVu
ZEVxdWF0aW9uVHlwZTo6RGFya2VuLCAmcXVhbGlmaWVyKTsKKyAgICAgICAgfQorICAgICAgICBl
bHNlIGlmIChxdWFsaWZpZXJUeXBlID09ICJibGVuZF9zdXBwb3J0X2xpZ2h0ZW4iKQorICAgICAg
ICB7CisgICAgICAgICAgICBBZGRBZHZhbmNlZEJsZW5kRXF1YXRpb24oZ2w6OkJsZW5kRXF1YXRp
b25UeXBlOjpMaWdodGVuLCAmcXVhbGlmaWVyKTsKKyAgICAgICAgfQorICAgICAgICBlbHNlIGlm
IChxdWFsaWZpZXJUeXBlID09ICJibGVuZF9zdXBwb3J0X2NvbG9yZG9kZ2UiKQorICAgICAgICB7
CisgICAgICAgICAgICBBZGRBZHZhbmNlZEJsZW5kRXF1YXRpb24oZ2w6OkJsZW5kRXF1YXRpb25U
eXBlOjpDb2xvcmRvZGdlLCAmcXVhbGlmaWVyKTsKKyAgICAgICAgfQorICAgICAgICBlbHNlIGlm
IChxdWFsaWZpZXJUeXBlID09ICJibGVuZF9zdXBwb3J0X2NvbG9yYnVybiIpCisgICAgICAgIHsK
KyAgICAgICAgICAgIEFkZEFkdmFuY2VkQmxlbmRFcXVhdGlvbihnbDo6QmxlbmRFcXVhdGlvblR5
cGU6OkNvbG9yYnVybiwgJnF1YWxpZmllcik7CisgICAgICAgIH0KKyAgICAgICAgZWxzZSBpZiAo
cXVhbGlmaWVyVHlwZSA9PSAiYmxlbmRfc3VwcG9ydF9oYXJkbGlnaHQiKQorICAgICAgICB7Cisg
ICAgICAgICAgICBBZGRBZHZhbmNlZEJsZW5kRXF1YXRpb24oZ2w6OkJsZW5kRXF1YXRpb25UeXBl
OjpIYXJkbGlnaHQsICZxdWFsaWZpZXIpOworICAgICAgICB9CisgICAgICAgIGVsc2UgaWYgKHF1
YWxpZmllclR5cGUgPT0gImJsZW5kX3N1cHBvcnRfc29mdGxpZ2h0IikKKyAgICAgICAgeworICAg
ICAgICAgICAgQWRkQWR2YW5jZWRCbGVuZEVxdWF0aW9uKGdsOjpCbGVuZEVxdWF0aW9uVHlwZTo6
U29mdGxpZ2h0LCAmcXVhbGlmaWVyKTsKKyAgICAgICAgfQorICAgICAgICBlbHNlIGlmIChxdWFs
aWZpZXJUeXBlID09ICJibGVuZF9zdXBwb3J0X2RpZmZlcmVuY2UiKQorICAgICAgICB7CisgICAg
ICAgICAgICBBZGRBZHZhbmNlZEJsZW5kRXF1YXRpb24oZ2w6OkJsZW5kRXF1YXRpb25UeXBlOjpE
aWZmZXJlbmNlLCAmcXVhbGlmaWVyKTsKKyAgICAgICAgfQorICAgICAgICBlbHNlIGlmIChxdWFs
aWZpZXJUeXBlID09ICJibGVuZF9zdXBwb3J0X2V4Y2x1c2lvbiIpCisgICAgICAgIHsKKyAgICAg
ICAgICAgIEFkZEFkdmFuY2VkQmxlbmRFcXVhdGlvbihnbDo6QmxlbmRFcXVhdGlvblR5cGU6OkV4
Y2x1c2lvbiwgJnF1YWxpZmllcik7CisgICAgICAgIH0KKyAgICAgICAgZWxzZSBpZiAocXVhbGlm
aWVyVHlwZSA9PSAiYmxlbmRfc3VwcG9ydF9oc2xfaHVlIikKKyAgICAgICAgeworICAgICAgICAg
ICAgQWRkQWR2YW5jZWRCbGVuZEVxdWF0aW9uKGdsOjpCbGVuZEVxdWF0aW9uVHlwZTo6SHNsSHVl
LCAmcXVhbGlmaWVyKTsKKyAgICAgICAgfQorICAgICAgICBlbHNlIGlmIChxdWFsaWZpZXJUeXBl
ID09ICJibGVuZF9zdXBwb3J0X2hzbF9zYXR1cmF0aW9uIikKKyAgICAgICAgeworICAgICAgICAg
ICAgQWRkQWR2YW5jZWRCbGVuZEVxdWF0aW9uKGdsOjpCbGVuZEVxdWF0aW9uVHlwZTo6SHNsU2F0
dXJhdGlvbiwgJnF1YWxpZmllcik7CisgICAgICAgIH0KKyAgICAgICAgZWxzZSBpZiAocXVhbGlm
aWVyVHlwZSA9PSAiYmxlbmRfc3VwcG9ydF9oc2xfY29sb3IiKQorICAgICAgICB7CisgICAgICAg
ICAgICBBZGRBZHZhbmNlZEJsZW5kRXF1YXRpb24oZ2w6OkJsZW5kRXF1YXRpb25UeXBlOjpIc2xD
b2xvciwgJnF1YWxpZmllcik7CisgICAgICAgIH0KKyAgICAgICAgZWxzZSBpZiAocXVhbGlmaWVy
VHlwZSA9PSAiYmxlbmRfc3VwcG9ydF9oc2xfbHVtaW5vc2l0eSIpCisgICAgICAgIHsKKyAgICAg
ICAgICAgIEFkZEFkdmFuY2VkQmxlbmRFcXVhdGlvbihnbDo6QmxlbmRFcXVhdGlvblR5cGU6Okhz
bEx1bWlub3NpdHksICZxdWFsaWZpZXIpOworICAgICAgICB9CisgICAgICAgIGVsc2UgaWYgKHF1
YWxpZmllclR5cGUgPT0gImJsZW5kX3N1cHBvcnRfYWxsX2VxdWF0aW9ucyIpCisgICAgICAgIHsK
KyAgICAgICAgICAgIHF1YWxpZmllci5hZHZhbmNlZEJsZW5kRXF1YXRpb25zLnNldEFsbCgpOwor
ICAgICAgICB9CisgICAgICAgIGVsc2UKKyAgICAgICAgeworICAgICAgICAgICAgZXJyb3IocXVh
bGlmaWVyVHlwZUxpbmUsICJpbnZhbGlkIGxheW91dCBxdWFsaWZpZXIiLCBxdWFsaWZpZXJUeXBl
KTsKKyAgICAgICAgfQorCisgICAgICAgIGlmIChxdWFsaWZpZXIuYWR2YW5jZWRCbGVuZEVxdWF0
aW9ucy5hbnkoKSAmJiBtU2hhZGVyVmVyc2lvbiA8IDMyMCkKKyAgICAgICAgeworICAgICAgICAg
ICAgaWYgKCFjaGVja0NhblVzZUV4dGVuc2lvbihxdWFsaWZpZXJUeXBlTGluZSwgVEV4dGVuc2lv
bjo6S0hSX2JsZW5kX2VxdWF0aW9uX2FkdmFuY2VkKSkKKyAgICAgICAgICAgIHsKKyAgICAgICAg
ICAgICAgICBxdWFsaWZpZXIuYWR2YW5jZWRCbGVuZEVxdWF0aW9ucy5yZXNldCgpOworICAgICAg
ICAgICAgfQogICAgICAgICB9CiAgICAgfQogICAgIGVsc2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci90cmFuc2xhdG9yL1BhcnNlQ29udGV4dC5oIGIv
U291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvUGFyc2VDb250
ZXh0LmgKaW5kZXggMzU0YWNjOWRjYmQxZjYzMzllYjIzNWQ3ZTBlYmRhNzZiZmI2MzM3OS4uODA1
NzY5NzkzZGNjYTVmNDU0MzI5MTVmOWY4MzY5MTUyNzE2ZTliZCAxMDA2NDQKLS0tIGEvU291cmNl
L1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvUGFyc2VDb250ZXh0LmgK
KysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvUGFy
c2VDb250ZXh0LmgKQEAgLTE5Miw2ICsxOTIsMTIgQEAgY2xhc3MgVFBhcnNlQ29udGV4dCA6IGFu
Z2xlOjpOb25Db3B5YWJsZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGNvbnN0IFRTb3VyY2VMb2MgJnF1YWxpZmllckxvY2F0aW9uKTsKICAgICB2b2lkIGNoZWNrTG9j
YWxWYXJpYWJsZUNvbnN0U3RvcmFnZVF1YWxpZmllcihjb25zdCBUUXVhbGlmaWVyV3JhcHBlckJh
c2UgJnF1YWxpZmllcik7CiAgICAgdm9pZCBjaGVja1RDU091dFZhckluZGV4SXNWYWxpZChUSW50
ZXJtQmluYXJ5ICpiaW5hcnlFeHByZXNzaW9uLCBjb25zdCBUU291cmNlTG9jICZsb2NhdGlvbik7
CisKKyAgICB2b2lkIGNoZWNrQWR2YW5jZWRCbGVuZEVxdWF0aW9uc05vdFNwZWNpZmllZCgKKyAg
ICAgICAgY29uc3QgVFNvdXJjZUxvYyAmbG9jYXRpb24sCisgICAgICAgIGNvbnN0IEFkdmFuY2Vk
QmxlbmRFcXVhdGlvbnMgJmFkdmFuY2VkQmxlbmRFcXVhdGlvbnMsCisgICAgICAgIGNvbnN0IFRR
dWFsaWZpZXIgJnF1YWxpZmllcik7CisKICAgICBjb25zdCBUUHJhZ21hICZwcmFnbWEoKSBjb25z
dCB7IHJldHVybiBtRGlyZWN0aXZlSGFuZGxlci5wcmFnbWEoKTsgfQogICAgIGNvbnN0IFRFeHRl
bnNpb25CZWhhdmlvciAmZXh0ZW5zaW9uQmVoYXZpb3IoKSBjb25zdAogICAgIHsKQEAgLTQ5NSw2
ICs1MDEsNyBAQCBjbGFzcyBUUGFyc2VDb250ZXh0IDogYW5nbGU6Ok5vbkNvcHlhYmxlCiAKICAg
ICB2b2lkIG1hcmtTaGFkZXJIYXNQcmVjaXNlKCkgeyBtSGFzQW55UHJlY2lzZVR5cGUgPSB0cnVl
OyB9CiAgICAgYm9vbCBoYXNBbnlQcmVjaXNlVHlwZSgpIGNvbnN0IHsgcmV0dXJuIG1IYXNBbnlQ
cmVjaXNlVHlwZTsgfQorICAgIEFkdmFuY2VkQmxlbmRFcXVhdGlvbnMgZ2V0QWR2YW5jZWRCbGVu
ZEVxdWF0aW9ucygpIGNvbnN0IHsgcmV0dXJuIG1BZHZhbmNlZEJsZW5kRXF1YXRpb25zOyB9CiAK
ICAgICBTaFNoYWRlck91dHB1dCBnZXRPdXRwdXRUeXBlKCkgY29uc3QgeyByZXR1cm4gbU91dHB1
dFR5cGU7IH0KIApAQCAtNzM1LDYgKzc0Miw4IEBAIGNsYXNzIFRQYXJzZUNvbnRleHQgOiBhbmds
ZTo6Tm9uQ29weWFibGUKICAgICAvLyBXaGV0aGVyIHRoZSB8cHJlY2lzZXwga2V5d29yZCBoYXMg
YmVlbiBzZWVuIGluIHRoZSBzaGFkZXIuCiAgICAgYm9vbCBtSGFzQW55UHJlY2lzZVR5cGU7CiAK
KyAgICBBZHZhbmNlZEJsZW5kRXF1YXRpb25zIG1BZHZhbmNlZEJsZW5kRXF1YXRpb25zOworCiAg
ICAgLy8gVHJhY2sgd2hlbiB3ZSBhZGQgbmV3IHNjb3BlIGZvciBmdW5jIGJvZHkgaW4gRVNTTCAx
LjAwIHNwZWMKICAgICBib29sIG1GdW5jdGlvbkJvZHlOZXdTY29wZTsKIApkaWZmIC0tZ2l0IGEv
U291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvUXVhbGlmaWVy
VHlwZXMuY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3RyYW5zbGF0
b3IvUXVhbGlmaWVyVHlwZXMuY3BwCmluZGV4IDBhOTI4YmFkNDNmMzQ2YWJmNmE4ZmYyYmU4YTJl
YTljZTIxNDMxMmMuLjgxNDI5OGRjNmFmZDU5MWJkYzRiNWYwMjc2MWYzY2Y4ZDEwNTExZmYgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci90cmFuc2xhdG9y
L1F1YWxpZmllclR5cGVzLmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29t
cGlsZXIvdHJhbnNsYXRvci9RdWFsaWZpZXJUeXBlcy5jcHAKQEAgLTg1Myw2ICs4NTMsMTEgQEAg
VExheW91dFF1YWxpZmllciBKb2luTGF5b3V0UXVhbGlmaWVycyhUTGF5b3V0UXVhbGlmaWVyIGxl
ZnRRdWFsaWZpZXIsCiAgICAgICAgIGpvaW5lZFF1YWxpZmllci5pbmRleCA9IHJpZ2h0UXVhbGlm
aWVyLmluZGV4OwogICAgIH0KIAorICAgIGlmIChyaWdodFF1YWxpZmllci5hZHZhbmNlZEJsZW5k
RXF1YXRpb25zLmFueSgpKQorICAgIHsKKyAgICAgICAgam9pbmVkUXVhbGlmaWVyLmFkdmFuY2Vk
QmxlbmRFcXVhdGlvbnMgfD0gcmlnaHRRdWFsaWZpZXIuYWR2YW5jZWRCbGVuZEVxdWF0aW9uczsK
KyAgICB9CisKICAgICByZXR1cm4gam9pbmVkUXVhbGlmaWVyOwogfQogCmRpZmYgLS1naXQgYS9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci9TaGFkZXJMYW5n
LmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci90cmFuc2xhdG9yL1No
YWRlckxhbmcuY3BwCmluZGV4IDRhZjA0NTI4MzI3YmYxZjdmYzk5MzJlZWM3MDI4ODE0OWI2OWYz
YzcuLjk2YTczYjM3ZDMxNzJkYjA4ZjdlZGJhODRlOWY4MzRjOTkwOWE4N2MgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci90cmFuc2xhdG9yL1NoYWRlckxh
bmcuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci90cmFuc2xh
dG9yL1NoYWRlckxhbmcuY3BwCkBAIC0yMzMsNiArMjMzLDcgQEAgdm9pZCBJbml0QnVpbHRJblJl
c291cmNlcyhTaEJ1aWx0SW5SZXNvdXJjZXMgKnJlc291cmNlcykKICAgICByZXNvdXJjZXMtPkVY
VF90ZXh0dXJlX2J1ZmZlciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPSAwOwogICAgIHJl
c291cmNlcy0+T0VTX3NhbXBsZV92YXJpYWJsZXMgICAgICAgICAgICAgICAgICAgICAgICAgICA9
IDA7CiAgICAgcmVzb3VyY2VzLT5FWFRfY2xpcF9jdWxsX2Rpc3RhbmNlICAgICAgICAgICAgICAg
ICAgICAgICAgID0gMDsKKyAgICByZXNvdXJjZXMtPktIUl9ibGVuZF9lcXVhdGlvbl9hZHZhbmNl
ZCAgICAgICAgICAgICAgICAgICAgPSAwOwogCiAgICAgcmVzb3VyY2VzLT5NYXhDbGlwRGlzdGFu
Y2VzICAgICAgICAgICAgICAgID0gODsKICAgICByZXNvdXJjZXMtPk1heEN1bGxEaXN0YW5jZXMg
ICAgICAgICAgICAgICAgPSA4OwpAQCAtOTI1LDYgKzkyNiwxNCBAQCB1bnNpZ25lZCBpbnQgR2V0
U2hhZGVyU2hhcmVkTWVtb3J5U2l6ZShjb25zdCBTaEhhbmRsZSBoYW5kbGUpCiAgICAgcmV0dXJu
IHNoYXJlZE1lbW9yeVNpemU7CiB9CiAKK3VpbnQzMl90IEdldEFkdmFuY2VkQmxlbmRFcXVhdGlv
bnMoY29uc3QgU2hIYW5kbGUgaGFuZGxlKQoreworICAgIFRDb21waWxlciAqY29tcGlsZXIgPSBH
ZXRDb21waWxlckZyb21IYW5kbGUoaGFuZGxlKTsKKyAgICBBU1NFUlQoY29tcGlsZXIpOworCisg
ICAgcmV0dXJuIGNvbXBpbGVyLT5nZXRBZHZhbmNlZEJsZW5kRXF1YXRpb25zKCkuYml0cygpOwor
fQorCiB2b2lkIEluaXRpYWxpemVHbHNsYW5nKCkKIHsKICAgICBpZiAoaW5pdGlhbGl6ZUdsc2xh
bmdSZWZDb3VudCA9PSAwKQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3Jj
L2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0L0FzdEhlbHBlcnMuY3Bw
IGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNs
YXRvck1ldGFsRGlyZWN0L0FzdEhlbHBlcnMuY3BwCmluZGV4IGJiM2QyNzc5ZDc3ZDZhNTdjODE5
NWNiZjIzYzBjZDliM2VkYmMxZTYuLmQ2NDk2OWY0NDIwNjU0N2Y0N2ZkOWE0YTNlYTVmODI0NzJj
NzI4YzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci90
cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC9Bc3RIZWxwZXJzLmNwcAorKysgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0
YWxEaXJlY3QvQXN0SGVscGVycy5jcHAKQEAgLTEzNSw2ICsxMzUsMjkgQEAgY29uc3QgVEZ1bmN0
aW9uICZzaDo6Q2xvbmVGdW5jdGlvbkFuZFByZXBlbmRQYXJhbShUU3ltYm9sVGFibGUgJnN5bWJv
bFRhYmxlLAogICAgIHJldHVybiBuZXdGdW5jOwogfQogCitjb25zdCBURnVuY3Rpb24gJnNoOjpD
bG9uZUZ1bmN0aW9uQW5kUHJlcGVuZFR3b1BhcmFtcyhUU3ltYm9sVGFibGUgJnN5bWJvbFRhYmxl
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
SWRHZW4gKmlkR2VuLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgY29uc3QgVEZ1bmN0aW9uICZvbGRGdW5jLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgVFZhcmlhYmxlICZuZXdQ
YXJhbTEsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBjb25zdCBUVmFyaWFibGUgJm5ld1BhcmFtMikKK3sKKyAgICBBU1NFUlQob2xkRnVuYy5z
eW1ib2xUeXBlKCkgPT0gU3ltYm9sVHlwZTo6VXNlckRlZmluZWQgfHwKKyAgICAgICAgICAgb2xk
RnVuYy5zeW1ib2xUeXBlKCkgPT0gU3ltYm9sVHlwZTo6QW5nbGVJbnRlcm5hbCk7CisKKyAgICBO
YW1lIG5ld05hbWUgPSBpZEdlbiA/IGlkR2VuLT5jcmVhdGVOZXdOYW1lKE5hbWUob2xkRnVuYykp
IDogTmFtZShvbGRGdW5jKTsKKworICAgIFRGdW5jdGlvbiAmbmV3RnVuYyA9CisgICAgICAgICpu
ZXcgVEZ1bmN0aW9uKCZzeW1ib2xUYWJsZSwgbmV3TmFtZS5yYXdOYW1lKCksIG5ld05hbWUuc3lt
Ym9sVHlwZSgpLAorICAgICAgICAgICAgICAgICAgICAgICAmb2xkRnVuYy5nZXRSZXR1cm5UeXBl
KCksIG9sZEZ1bmMuaXNLbm93blRvTm90SGF2ZVNpZGVFZmZlY3RzKCkpOworCisgICAgQWNxdWly
ZUZ1bmN0aW9uRXh0cmFzKG5ld0Z1bmMsIG9sZEZ1bmMpOworICAgIG5ld0Z1bmMuYWRkUGFyYW1l
dGVyKCZuZXdQYXJhbTEpOworICAgIG5ld0Z1bmMuYWRkUGFyYW1ldGVyKCZuZXdQYXJhbTIpOwor
ICAgIEFkZFBhcmFtZXRlcnNGcm9tKG5ld0Z1bmMsIG9sZEZ1bmMpOworCisgICAgcmV0dXJuIG5l
d0Z1bmM7Cit9CisKIGNvbnN0IFRGdW5jdGlvbiAmc2g6OkNsb25lRnVuY3Rpb25BbmRBcHBlbmRQ
YXJhbXMoVFN5bWJvbFRhYmxlICZzeW1ib2xUYWJsZSwKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgSWRHZW4gKmlkR2VuLAogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBURnVuY3Rpb24gJm9sZEZ1
bmMsCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tcGlsZXIvdHJh
bnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QvQXN0SGVscGVycy5oIGIvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0
L0FzdEhlbHBlcnMuaAppbmRleCBiZWYwM2YwMDhmZDIyYTQyMmU1ZWQzMzZhY2IyMzdjYTI4Yzk4
OTkwLi5lMjY3ZmRmZTQ5MDU1ZTQ5YWYzMzhkODEzZDQwOWYxYjViYzgwMWNiIDEwMDY0NAotLS0g
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xh
dG9yTWV0YWxEaXJlY3QvQXN0SGVscGVycy5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy9jb21waWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC9Bc3RIZWxwZXJz
LmgKQEAgLTU0LDYgKzU0LDE0IEBAIGNvbnN0IFRGdW5jdGlvbiAmQ2xvbmVGdW5jdGlvbkFuZFBy
ZXBlbmRQYXJhbShUU3ltYm9sVGFibGUgJnN5bWJvbFRhYmxlLAogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFRGdW5jdGlvbiAmb2xkRnVuYywKICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBUVmFyaWFi
bGUgJm5ld1BhcmFtKTsKIAorLy8gQ2xvbmVzIGEgZnVuY3Rpb24gYW5kIHByZXBlbmRzIHRoZSBw
cm92aWRlZCB0d28gcGFyYW1ldGVycy4KKy8vIElmIGBpZEdlbmAgaXMgbnVsbCwgdGhlIG9yaWdp
bmFsIGZ1bmN0aW9uIG11c3QgYmUgZGlzY2FyZGVkIGZyb20gdGhlIEFTVC4KK2NvbnN0IFRGdW5j
dGlvbiAmQ2xvbmVGdW5jdGlvbkFuZFByZXBlbmRUd29QYXJhbXMoVFN5bWJvbFRhYmxlICZzeW1i
b2xUYWJsZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgSWRHZW4gKmlkR2VuLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBjb25zdCBURnVuY3Rpb24gJm9sZEZ1bmMsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFRWYXJpYWJsZSAmbmV3UGFyYW0x
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25z
dCBUVmFyaWFibGUgJm5ld1BhcmFtMik7CisKIC8vIENsb25lcyBhIGZ1bmN0aW9uIGFuZCBhcHBl
bmRzIHRoZSBwcm92aWRlZCBleHRyYSBwYXJhbWV0ZXJzLgogLy8gSWYgYGlkR2VuYCBpcyBudWxs
LCB0aGUgb3JpZ2luYWwgZnVuY3Rpb24gbXVzdCBiZSBkaXNjYXJkZWQgZnJvbSB0aGUgQVNULgog
Y29uc3QgVEZ1bmN0aW9uICZDbG9uZUZ1bmN0aW9uQW5kQXBwZW5kUGFyYW1zKFRTeW1ib2xUYWJs
ZSAmc3ltYm9sVGFibGUsCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
Y29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QvRW1pdE1ldGFsLmNwcCBi
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci90cmFuc2xhdG9yL1RyYW5zbGF0
b3JNZXRhbERpcmVjdC9FbWl0TWV0YWwuY3BwCmluZGV4IDI1YzkxMWU3NjZmMzI4MTJjODBiNjli
NWY5YjNkOTViM2Y4ZjUyMWEuLjhmOWExM2JmYTI2MWVkZjA4OTkzYmM3YzdmYjVkY2FmOTNhNTA0
OWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci90cmFu
c2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC9FbWl0TWV0YWwuY3BwCisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERp
cmVjdC9FbWl0TWV0YWwuY3BwCkBAIC0xODM5LDYgKzE4MzksMTAgQEAgdm9pZCBHZW5NZXRhbFRy
YXZlcnNlcjo6ZW1pdEZ1bmN0aW9uUGFyYW1ldGVyKGNvbnN0IFRGdW5jdGlvbiAmZnVuYywgY29u
c3QgVFZhcmkKICAgICAgICAgewogICAgICAgICAgICAgbU91dCA8PCAiIFtbaW5zdGFuY2VfaWRd
XSI7CiAgICAgICAgIH0KKyAgICAgICAgZWxzZSBpZiAoTmFtZShwYXJhbSkgPT0ga0Jhc2VJbnN0
YW5jZU5hbWUpCisgICAgICAgIHsKKyAgICAgICAgICAgIG1PdXQgPDwgIiBbW2Jhc2VfaW5zdGFu
Y2VdXSI7CisgICAgICAgIH0KICAgICB9CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL3NyYy9jb21waWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC9O
YW1lLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci9U
cmFuc2xhdG9yTWV0YWxEaXJlY3QvTmFtZS5oCmluZGV4IGQ2ZWFlYThiNDdiYWY5NDIxZWQ1NDA3
MzAxMWY5Y2I1YjUwODUwNjAuLjZkM2FhYjU2YjU3MjhiMmRjNjEyOTA5ODllYzg4NjE3Yzg2ZjMx
M2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci90cmFu
c2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC9OYW1lLmgKKysrIGIvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0L05h
bWUuaApAQCAtNjEsNiArNjEsOCBAQCBjbGFzcyBOYW1lCiAgICAgU3ltYm9sVHlwZSBtU3ltYm9s
VHlwZTsKIH07CiAKK2NvbnN0ZXhwciBOYW1lIGtCYXNlSW5zdGFuY2VOYW1lID0gTmFtZSgiYmFz
ZUluc3RhbmNlIik7CisKIEFOR0xFX05PX0RJU0NBUkQgYm9vbCBFeHByZXNzaW9uQ29udGFpbnNO
YW1lKGNvbnN0IE5hbWUgJm5hbWUsIFRJbnRlcm1UeXBlZCAmbm9kZSk7CiAKIH0gIC8vIG5hbWVz
cGFjZSBzaApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbXBpbGVy
L3RyYW5zbGF0b3IvVHJhbnNsYXRvck1ldGFsRGlyZWN0L1BpcGVsaW5lLmggYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJl
Y3QvUGlwZWxpbmUuaAppbmRleCBkMTkyYWRjNWIzYjhiOTk2NTM4NjllOWY1ZThjNzFjOWE2YmRj
ODNjLi5lMDcxYjMzZWYyODBlYWE2YTJjZTJkOTUxYjQwMTkxNWFmZTBiOWUyIDEwMDY0NAotLS0g
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xh
dG9yTWV0YWxEaXJlY3QvUGlwZWxpbmUuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9z
cmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QvUGlwZWxpbmUuaApA
QCAtMjMsNiArMjMsMTAgQEAgc3RydWN0IFBpcGVsaW5lU2NvcGVkCiAgICAgLy8gTWF5IGNvaW5j
aWRlIHdpdGggYGludGVybmFsYCwgYnV0IG1heSBhbHNvIGRpdmVyZ2UgZnJvbSBgaW50ZXJuYWxg
LgogICAgIGNvbnN0IFQgKmV4dGVybmFsID0gbnVsbHB0cjsKIAorICAgIC8vIEV4dHJhIGRhdGEg
dGhhdCBpcyBjb25maWd1cmVkIHRvIHRhbGsgZXh0ZXJuYWxseSB0byB0aGUgcHJvZ3JhbS4KKyAg
ICAvLyBVc2VkIG9ubHkgZm9yIGFkanVzdGluZyBNZXRhbCdzIEluc3RhbmNlSWQuCisgICAgY29u
c3QgVCAqZXh0ZXJuYWxFeHRyYSA9IG51bGxwdHI7CisKICAgICAvLyBEYXRhIHRoYXQgaXMgY29u
ZmlndXJlZCB0byB0YWxrIGludGVybmFsbHkgd2l0aGluIHRoZSBwcm9ncmFtLgogICAgIC8vIE1h
eSBjb2luY2lkZSB3aXRoIGBleHRlcm5hbGAsIGJ1dCBtYXkgYWxzbyBkaXZlcmdlIGZyb20gYGV4
dGVybmFsYC4KICAgICBjb25zdCBUICppbnRlcm5hbCA9IG51bGxwdHI7CmRpZmYgLS1naXQgYS9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9y
TWV0YWxEaXJlY3QvUmV3cml0ZVBpcGVsaW5lcy5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci9UcmFuc2xhdG9yTWV0YWxEaXJlY3QvUmV3cml0ZVBp
cGVsaW5lcy5jcHAKaW5kZXggMTIyNzI3MDczZDZkNmUzNWNjYjRhZDY5NTU3ZGIyNGZlMzZmNDI4
Mi4uY2QwN2QwNjdiY2QxMDIyMDc1ZWM0ZGEwMTVkNzhmNGVjYmFhM2E1MCAxMDA2NDQKLS0tIGEv
U291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvVHJhbnNsYXRv
ck1ldGFsRGlyZWN0L1Jld3JpdGVQaXBlbGluZXMuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3NyYy9jb21waWxlci90cmFuc2xhdG9yL1RyYW5zbGF0b3JNZXRhbERpcmVjdC9SZXdy
aXRlUGlwZWxpbmVzLmNwcApAQCAtNDM0LDExICs0MzQsMTkgQEAgY2xhc3MgUGlwZWxpbmVGdW5j
dGlvbkVudgogICAgICAgICAgICAgfQogICAgICAgICAgICAgZWxzZSBpZiAoaXNNYWluICYmIG1Q
aXBlbGluZS50eXBlID09IFBpcGVsaW5lOjpUeXBlOjpJbnN0YW5jZUlkKQogICAgICAgICAgICAg
ewotICAgICAgICAgICAgICAgIE5hbWUgbmFtZSA9IG1QaXBlbGluZS5nZXRTdHJ1Y3RJbnN0YW5j
ZU5hbWUoUGlwZWxpbmU6OlZhcmlhbnQ6Ok1vZGlmaWVkKTsKLSAgICAgICAgICAgICAgICBhdXRv
ICp2YXIgPSBuZXcgVFZhcmlhYmxlKCZtU3ltYm9sVGFibGUsIG5hbWUucmF3TmFtZSgpLAotICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmV3IFRUeXBlKFRCYXNpY1R5
cGU6OkVidFVJbnQpLCBuYW1lLnN5bWJvbFR5cGUoKSk7Ci0gICAgICAgICAgICAgICAgbmV3RnVu
YyAgID0gJkNsb25lRnVuY3Rpb25BbmRQcmVwZW5kUGFyYW0obVN5bWJvbFRhYmxlLCBudWxscHRy
LCBmdW5jLCAqdmFyKTsKLSAgICAgICAgICAgICAgICBtUGlwZWxpbmVNYWluTG9jYWxWYXIuZXh0
ZXJuYWwgPSB2YXI7CisgICAgICAgICAgICAgICAgTmFtZSBpbnN0YW5jZUlkTmFtZSA9IG1QaXBl
bGluZS5nZXRTdHJ1Y3RJbnN0YW5jZU5hbWUoUGlwZWxpbmU6OlZhcmlhbnQ6Ok1vZGlmaWVkKTsK
KyAgICAgICAgICAgICAgICBhdXRvICppbnN0YW5jZUlkVmFyID0KKyAgICAgICAgICAgICAgICAg
ICAgbmV3IFRWYXJpYWJsZSgmbVN5bWJvbFRhYmxlLCBpbnN0YW5jZUlkTmFtZS5yYXdOYW1lKCks
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmV3IFRUeXBlKFRCYXNpY1R5cGU6
OkVidFVJbnQpLCBpbnN0YW5jZUlkTmFtZS5zeW1ib2xUeXBlKCkpOworCisgICAgICAgICAgICAg
ICAgYXV0byAqYmFzZUluc3RhbmNlVmFyID0KKyAgICAgICAgICAgICAgICAgICAgbmV3IFRWYXJp
YWJsZSgmbVN5bWJvbFRhYmxlLCBrQmFzZUluc3RhbmNlTmFtZS5yYXdOYW1lKCksCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgbmV3IFRUeXBlKFRCYXNpY1R5cGU6OkVidFVJbnQp
LCBrQmFzZUluc3RhbmNlTmFtZS5zeW1ib2xUeXBlKCkpOworCisgICAgICAgICAgICAgICAgbmV3
RnVuYyA9ICZDbG9uZUZ1bmN0aW9uQW5kUHJlcGVuZFR3b1BhcmFtcyhtU3ltYm9sVGFibGUsIG51
bGxwdHIsIGZ1bmMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAqaW5zdGFuY2VJZFZhciwgKmJhc2VJbnN0YW5jZVZhcik7CisgICAg
ICAgICAgICAgICAgbVBpcGVsaW5lTWFpbkxvY2FsVmFyLmV4dGVybmFsICAgICAgPSBpbnN0YW5j
ZUlkVmFyOworICAgICAgICAgICAgICAgIG1QaXBlbGluZU1haW5Mb2NhbFZhci5leHRlcm5hbEV4
dHJhID0gYmFzZUluc3RhbmNlVmFyOwogICAgICAgICAgICAgfQogICAgICAgICAgICAgZWxzZSBp
ZiAoaXNNYWluICYmIG1QaXBlbGluZS5hbHdheXNSZXF1aXJlc0xvY2FsVmFyaWFibGVEZWNsYXJh
dGlvbkluTWFpbigpKQogICAgICAgICAgICAgewpAQCAtNjMwLDYgKzYzOCwyMCBAQCBjbGFzcyBV
cGRhdGVQaXBlbGluZUZ1bmN0aW9ucyA6IHByaXZhdGUgVEludGVybVJlYnVpbGQKICAgICAgICAg
fQogICAgIH0KIAorICAgIGNvbnN0IFRWYXJpYWJsZSAmZ2V0RXh0ZXJuYWxFeHRyYVBpcGVsaW5l
VmFyaWFibGUoY29uc3QgVEZ1bmN0aW9uICZtYWluRnVuYykKKyAgICB7CisgICAgICAgIEFTU0VS
VChtYWluRnVuYy5pc01haW4oKSk7CisgICAgICAgIGlmIChtUGlwZWxpbmVNYWluTG9jYWxWYXIu
ZXh0ZXJuYWxFeHRyYSkKKyAgICAgICAgeworICAgICAgICAgICAgcmV0dXJuICptUGlwZWxpbmVN
YWluTG9jYWxWYXIuZXh0ZXJuYWxFeHRyYTsKKyAgICAgICAgfQorICAgICAgICBlbHNlCisgICAg
ICAgIHsKKyAgICAgICAgICAgIEFTU0VSVChtYWluRnVuYy5nZXRQYXJhbUNvdW50KCkgPiAxKTsK
KyAgICAgICAgICAgIHJldHVybiAqbWFpbkZ1bmMuZ2V0UGFyYW0oMSk7CisgICAgICAgIH0KKyAg
ICB9CisKICAgICBQb3N0UmVzdWx0IHZpc2l0QWdncmVnYXRlUG9zdChUSW50ZXJtQWdncmVnYXRl
ICZjYWxsTm9kZSkgb3ZlcnJpZGUKICAgICB7CiAgICAgICAgIGlmIChjYWxsTm9kZS5pc0NvbnN0
cnVjdG9yKCkpCkBAIC04MTEsMTEgKzgzMywxNSBAQCBjbGFzcyBVcGRhdGVQaXBlbGluZUZ1bmN0
aW9ucyA6IHByaXZhdGUgVEludGVybVJlYnVpbGQKICAgICAgICAgICAgIH0KICAgICAgICAgICAg
IGVsc2UgaWYgKG1QaXBlbGluZS50eXBlID09IFBpcGVsaW5lOjpUeXBlOjpJbnN0YW5jZUlkKQog
ICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGF1dG8gdmFySW5zdGFuY2VJZCAgID0gbmV3
IFRJbnRlcm1TeW1ib2woJmdldEV4dGVybmFsUGlwZWxpbmVWYXJpYWJsZShmdW5jKSk7CisgICAg
ICAgICAgICAgICAgYXV0byB2YXJCYXNlSW5zdGFuY2UgPSBuZXcgVEludGVybVN5bWJvbCgmZ2V0
RXh0ZXJuYWxFeHRyYVBpcGVsaW5lVmFyaWFibGUoZnVuYykpOworCiAgICAgICAgICAgICAgICAg
bmV3Qm9keS0+YXBwZW5kU3RhdGVtZW50KG5ldyBUSW50ZXJtQmluYXJ5KAogICAgICAgICAgICAg
ICAgICAgICBUT3BlcmF0b3I6OkVPcEFzc2lnbiwKICAgICAgICAgICAgICAgICAgICAgJkFjY2Vz
c0ZpZWxkQnlJbmRleCgqbmV3IFRJbnRlcm1TeW1ib2woJmdldEludGVybmFsUGlwZWxpbmVWYXJp
YWJsZShmdW5jKSksIDApLAotICAgICAgICAgICAgICAgICAgICAmQXNUeXBlKG1TeW1ib2xFbnYs
ICpuZXcgVFR5cGUoVEJhc2ljVHlwZTo6RWJ0SW50KSwKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAqbmV3IFRJbnRlcm1TeW1ib2woJmdldEV4dGVybmFsUGlwZWxpbmVWYXJpYWJsZShmdW5j
KSkpKSk7CisgICAgICAgICAgICAgICAgICAgICZBc1R5cGUoCisgICAgICAgICAgICAgICAgICAg
ICAgICBtU3ltYm9sRW52LCAqbmV3IFRUeXBlKFRCYXNpY1R5cGU6OkVidEludCksCisgICAgICAg
ICAgICAgICAgICAgICAgICAqbmV3IFRJbnRlcm1CaW5hcnkoVE9wZXJhdG9yOjpFT3BTdWIsIHZh
ckluc3RhbmNlSWQsIHZhckJhc2VJbnN0YW5jZSkpKSk7CiAgICAgICAgICAgICB9CiAgICAgICAg
ICAgICBlbHNlIGlmICghbVBpcGVsaW5lTWFpbkxvY2FsVmFyLmlzVW5pZm9ybSgpKQogICAgICAg
ICAgICAgewpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbXBpbGVy
L3RyYW5zbGF0b3IvZ2VuZXJhdGVfcGFyc2VyLnB5IGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUv
c3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvZ2VuZXJhdGVfcGFyc2VyLnB5CmluZGV4IGIxYTcwNzlh
YzM5MjQzZTdiNWVhYTBlZmQ0M2NlZTZlY2U4NWYwZWIuLjA2OWQ3YTI3ZWEyZDA1NjJjODllNzg2
ODQ1MGE4ZjljMTI0ZGU5NzYgMTAwNzU1Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3Ny
Yy9jb21waWxlci90cmFuc2xhdG9yL2dlbmVyYXRlX3BhcnNlci5weQorKysgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci9nZW5lcmF0ZV9wYXJzZXIucHkK
QEAgLTEsNCArMSw0IEBACi0jIS91c3IvYmluL3B5dGhvbgorIyEvdXNyL2Jpbi9weXRob24zCiAj
IENvcHlyaWdodCAyMDE5IFRoZSBBTkdMRSBQcm9qZWN0IEF1dGhvcnMuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCiAjIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0
eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICMgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci90cmFuc2xhdG9y
L2dsc2xhbmcubCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci90cmFuc2xh
dG9yL2dsc2xhbmcubAppbmRleCAxNzU1Y2RlMGIwZTgzMDU0ZDY1OGI3MjBjYjJiMThjMDY4MGJh
MjNjLi4xODY2MDA0MGVkYmVhMWZlYmFkMzNmNzdhMWQwOTI1Nzg1YTIwMjQyIDEwMDY0NAotLS0g
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci9nbHNsYW5n
LmwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3Iv
Z2xzbGFuZy5sCkBAIC05Niw3ICs5Niw3IEBAIHN0YXRpYyBib29sIGlzX2V4dGVuc2lvbl9lbmFi
bGVkX29yX2lzX2NvcmUoVFBhcnNlQ29udGV4dCAqY29udGV4dCwKIC8vIHdoaWNoIG1lYW5zIGlu
IHZlcnNpb24gVjEsIHRoZSBzeW1ib2wgaXMgcmVzZXJ2ZWQsIGFuZCByZW1haW5zIHJlc2VydmVk
IHVudGlsIFYzLiAgRnJvbSB2ZXJzaW9ucwogLy8gVjIgdW50aWwgVjMsIGl0J3MgYSBrZXl3b3Jk
IGlmIHRoZSBleHRlbnNpb24gaXMgZW5hYmxlZC4gIEZyb20gdmVyc2lvbiBWMyBvbiwgaXQncyBh
IGtleXdvcmQgaW4KIC8vIHRoZSBzcGVjIGl0c2VsZi4gIFByaW9yIHRvIFYxLCB0aGUgc3ltYm9s
IGNhbiBiZSB1c2VkIGFzIGlkZW50aWZpZXIuCi1zdGF0aWMgaW50IEVTMl9leHRlbnNpb25fMl9F
UzNfa2V5d29yZChUUGFyc2VDb250ZXh0ICpjb250ZXh0LCBURXh0ZW5zaW9uIGV4dGVuc2lvbjEs
IFRFeHRlbnNpb24gZXh0ZW5zaW9uMiwgaW50IHRva2VuKTsKK3N0YXRpYyBpbnQgRVMyX2V4dGVu
c2lvbnNfRVMzX2tleXdvcmQoVFBhcnNlQ29udGV4dCAqY29udGV4dCwgVEV4dGVuc2lvbiBleHRl
bnNpb24xLCBURXh0ZW5zaW9uIGV4dGVuc2lvbjIsIFRFeHRlbnNpb24gZXh0ZW5zaW9uMywgaW50
IHRva2VuKTsKIHN0YXRpYyBpbnQgRVMyX3Jlc2VydmVkX0VTM19rZXl3b3JkKFRQYXJzZUNvbnRl
eHQgKmNvbnRleHQsIGludCB0b2tlbik7CiBzdGF0aWMgaW50IEVTMl9rZXl3b3JkX0VTM19yZXNl
cnZlZChUUGFyc2VDb250ZXh0ICpjb250ZXh0LCBpbnQgdG9rZW4pOwogc3RhdGljIGludCBFUzNf
a2V5d29yZChUUGFyc2VDb250ZXh0ICpjb250ZXh0LCBpbnQgdG9rZW4pOwpAQCAtMjQ3LDcgKzI0
Nyw3IEBAIE8gICAgICAgICAgIFswLTddCiAic2FtcGxlclZpZGVvV0VCR0wiICAgIHsgcmV0dXJu
IFdFQkdMX3ZpZGVvX3RleHR1cmVfZXh0ZW5zaW9uKGNvbnRleHQsIFNBTVBMRVJWSURFT1dFQkdM
KTsgfQogInN0cnVjdCIgICAgICAgeyByZXR1cm4gU1RSVUNUOyB9CiAKLSJsYXlvdXQiICB7IHJl
dHVybiBFUzJfZXh0ZW5zaW9uXzJfRVMzX2tleXdvcmQoY29udGV4dCwgVEV4dGVuc2lvbjo6RVhU
X3NoYWRlcl9mcmFtZWJ1ZmZlcl9mZXRjaCwgVEV4dGVuc2lvbjo6RVhUX3NoYWRlcl9mcmFtZWJ1
ZmZlcl9mZXRjaF9ub25fY29oZXJlbnQsIExBWU9VVCk7IH0KKyJsYXlvdXQiICB7IHJldHVybiBF
UzJfZXh0ZW5zaW9uc19FUzNfa2V5d29yZChjb250ZXh0LCBURXh0ZW5zaW9uOjpFWFRfc2hhZGVy
X2ZyYW1lYnVmZmVyX2ZldGNoLCBURXh0ZW5zaW9uOjpFWFRfc2hhZGVyX2ZyYW1lYnVmZmVyX2Zl
dGNoX25vbl9jb2hlcmVudCwgVEV4dGVuc2lvbjo6S0hSX2JsZW5kX2VxdWF0aW9uX2FkdmFuY2Vk
LCBMQVlPVVQpOyB9CiAKICJ5dXZDc2NTdGFuZGFyZEVYVCIgICAgeyByZXR1cm4gRVMzX2V4dGVu
c2lvbihjb250ZXh0LCBURXh0ZW5zaW9uOjpFWFRfWVVWX3RhcmdldCwgWVVWQ1NDU1RBTkRBUkRF
WFQpOyB9CiAiaXR1XzYwMSIgICAgICAgICAgICAgIHsgcmV0dXJuIHl1dmNzY3N0YW5kYXJkZXh0
X2NvbnN0YW50KGNvbnRleHQpOyB9CkBAIC02MTIsNyArNjEyLDcgQEAgaW50IFdFQkdMX3ZpZGVv
X3RleHR1cmVfZXh0ZW5zaW9uKFRQYXJzZUNvbnRleHQgKmNvbnRleHQsIGludCB0b2tlbikKICAg
ICByZXR1cm4gY2hlY2tfdHlwZSh5eXNjYW5uZXIpOwogfQogCi1pbnQgRVMyX2V4dGVuc2lvbl8y
X0VTM19rZXl3b3JkKFRQYXJzZUNvbnRleHQgKmNvbnRleHQsIFRFeHRlbnNpb24gZXh0ZW5zaW9u
MSwgVEV4dGVuc2lvbiBleHRlbnNpb24yLCBpbnQgdG9rZW4pCitpbnQgRVMyX2V4dGVuc2lvbnNf
RVMzX2tleXdvcmQoVFBhcnNlQ29udGV4dCAqY29udGV4dCwgVEV4dGVuc2lvbiBleHRlbnNpb24x
LCBURXh0ZW5zaW9uIGV4dGVuc2lvbjIsIFRFeHRlbnNpb24gZXh0ZW5zaW9uMywgaW50IHRva2Vu
KQogewogICAgIHN0cnVjdCB5eWd1dHNfdCogeXlnID0gKHN0cnVjdCB5eWd1dHNfdCopIGNvbnRl
eHQtPmdldFNjYW5uZXIoKTsKICAgICB5eXNjYW5fdCB5eXNjYW5uZXIgPSAoeXlzY2FuX3QpIGNv
bnRleHQtPmdldFNjYW5uZXIoKTsKQEAgLTYyNiw2ICs2MjYsMTAgQEAgaW50IEVTMl9leHRlbnNp
b25fMl9FUzNfa2V5d29yZChUUGFyc2VDb250ZXh0ICpjb250ZXh0LCBURXh0ZW5zaW9uIGV4dGVu
c2lvbjEsIFQKICAgICB7CiAgICAgICAgIHJldHVybiB0b2tlbjsKICAgICB9CisgICAgZWxzZSBp
ZiAoaXNfZXh0ZW5zaW9uX2VuYWJsZWRfb3JfaXNfY29yZShjb250ZXh0LCAxMDAsIGV4dGVuc2lv
bjMsIDMwMCkpCisgICAgeworICAgICAgICByZXR1cm4gdG9rZW47CisgICAgfQogCiAgICAgLy8g
bm90IGEgcmVzZXJ2ZWQgd29yZCBpbiBHTFNMIEVTIDEuMDAsIHNvIGNvdWxkIGJlIHVzZWQgYXMg
YW4gaWRlbnRpZmllci90eXBlIG5hbWUKICAgICB5eWx2YWwtPmxleC5zdHJpbmcgPSBBbGxvY2F0
ZVBvb2xDaGFyQXJyYXkoeXl0ZXh0LCB5eWxlbmcpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvZ2xzbGFuZ19sZXhfYXV0b2dlbi5j
cHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci9nbHNs
YW5nX2xleF9hdXRvZ2VuLmNwcAppbmRleCAxZjY2ZGZhMjBlMmM0YjA3YTRmMjNmZTI2MWUxMjIw
YjZiMmY5YWY1Li5jYjkyMTE5Mjc1MThlMjQ3ZjZjYWRkZjMzMzM0ZWYyYzAxY2NjZDRmIDEwMDY0
NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci9n
bHNsYW5nX2xleF9hdXRvZ2VuLmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
Y29tcGlsZXIvdHJhbnNsYXRvci9nbHNsYW5nX2xleF9hdXRvZ2VuLmNwcApAQCAtOTE4LDEwICs5
MTgsMTEgQEAgc3RhdGljIGJvb2wgaXNfZXh0ZW5zaW9uX2VuYWJsZWRfb3JfaXNfY29yZShUUGFy
c2VDb250ZXh0ICpjb250ZXh0LAogLy8gd2hpY2ggbWVhbnMgaW4gdmVyc2lvbiBWMSwgdGhlIHN5
bWJvbCBpcyByZXNlcnZlZCwgYW5kIHJlbWFpbnMgcmVzZXJ2ZWQgdW50aWwgVjMuICBGcm9tIHZl
cnNpb25zCiAvLyBWMiB1bnRpbCBWMywgaXQncyBhIGtleXdvcmQgaWYgdGhlIGV4dGVuc2lvbiBp
cyBlbmFibGVkLiAgRnJvbSB2ZXJzaW9uIFYzIG9uLCBpdCdzIGEga2V5d29yZCBpbgogLy8gdGhl
IHNwZWMgaXRzZWxmLiAgUHJpb3IgdG8gVjEsIHRoZSBzeW1ib2wgY2FuIGJlIHVzZWQgYXMgaWRl
bnRpZmllci4KLXN0YXRpYyBpbnQgRVMyX2V4dGVuc2lvbl8yX0VTM19rZXl3b3JkKFRQYXJzZUNv
bnRleHQgKmNvbnRleHQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBU
RXh0ZW5zaW9uIGV4dGVuc2lvbjEsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBURXh0ZW5zaW9uIGV4dGVuc2lvbjIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBpbnQgdG9rZW4pOworc3RhdGljIGludCBFUzJfZXh0ZW5zaW9uc19FUzNfa2V5
d29yZChUUGFyc2VDb250ZXh0ICpjb250ZXh0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBURXh0ZW5zaW9uIGV4dGVuc2lvbjEsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFRFeHRlbnNpb24gZXh0ZW5zaW9uMiwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgVEV4dGVuc2lvbiBleHRlbnNpb24zLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgdG9rZW4pOwogc3RhdGljIGludCBFUzJfcmVz
ZXJ2ZWRfRVMzX2tleXdvcmQoVFBhcnNlQ29udGV4dCAqY29udGV4dCwgaW50IHRva2VuKTsKIHN0
YXRpYyBpbnQgRVMyX2tleXdvcmRfRVMzX3Jlc2VydmVkKFRQYXJzZUNvbnRleHQgKmNvbnRleHQs
IGludCB0b2tlbik7CiBzdGF0aWMgaW50IEVTM19rZXl3b3JkKFRQYXJzZUNvbnRleHQgKmNvbnRl
eHQsIGludCB0b2tlbik7CkBAIC0xNjg5LDkgKzE2OTAsMTAgQEAgWVlfREVDTAogICAgICAgICAg
ICAgICAgIGNhc2UgOTc6CiAgICAgICAgICAgICAgICAgICAgIFlZX1JVTEVfU0VUVVAKICAgICAg
ICAgICAgICAgICAgICAgewotICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIEVTMl9leHRl
bnNpb25fMl9FUzNfa2V5d29yZCgKKyAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBFUzJf
ZXh0ZW5zaW9uc19FUzNfa2V5d29yZCgKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250
ZXh0LCBURXh0ZW5zaW9uOjpFWFRfc2hhZGVyX2ZyYW1lYnVmZmVyX2ZldGNoLAotICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIFRFeHRlbnNpb246OkVYVF9zaGFkZXJfZnJhbWVidWZmZXJfZmV0
Y2hfbm9uX2NvaGVyZW50LCBMQVlPVVQpOworICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRF
eHRlbnNpb246OkVYVF9zaGFkZXJfZnJhbWVidWZmZXJfZmV0Y2hfbm9uX2NvaGVyZW50LAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFRFeHRlbnNpb246OktIUl9ibGVuZF9lcXVhdGlvbl9h
ZHZhbmNlZCwgTEFZT1VUKTsKICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAg
ICAgICBZWV9CUkVBSwogICAgICAgICAgICAgICAgIGNhc2UgOTg6CkBAIC0zNDU4LDEwICszNDYw
LDExIEBAIGludCBXRUJHTF92aWRlb190ZXh0dXJlX2V4dGVuc2lvbihUUGFyc2VDb250ZXh0ICpj
b250ZXh0LCBpbnQgdG9rZW4pCiAgICAgcmV0dXJuIGNoZWNrX3R5cGUoeXlzY2FubmVyKTsKIH0K
IAotaW50IEVTMl9leHRlbnNpb25fMl9FUzNfa2V5d29yZChUUGFyc2VDb250ZXh0ICpjb250ZXh0
LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBURXh0ZW5zaW9uIGV4dGVuc2lvbjEs
Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRFeHRlbnNpb24gZXh0ZW5zaW9uMiwK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IHRva2VuKQoraW50IEVTMl9leHRl
bnNpb25zX0VTM19rZXl3b3JkKFRQYXJzZUNvbnRleHQgKmNvbnRleHQsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgVEV4dGVuc2lvbiBleHRlbnNpb24xLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFRFeHRlbnNpb24gZXh0ZW5zaW9uMiwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBURXh0ZW5zaW9uIGV4dGVuc2lvbjMsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgaW50IHRva2VuKQogewogICAgIHN0cnVjdCB5eWd1dHNfdCAqeXlnID0gKHN0
cnVjdCB5eWd1dHNfdCAqKWNvbnRleHQtPmdldFNjYW5uZXIoKTsKICAgICB5eXNjYW5fdCB5eXNj
YW5uZXIgICA9ICh5eXNjYW5fdCljb250ZXh0LT5nZXRTY2FubmVyKCk7CkBAIC0zNDc1LDYgKzM0
NzgsMTAgQEAgaW50IEVTMl9leHRlbnNpb25fMl9FUzNfa2V5d29yZChUUGFyc2VDb250ZXh0ICpj
b250ZXh0LAogICAgIHsKICAgICAgICAgcmV0dXJuIHRva2VuOwogICAgIH0KKyAgICBlbHNlIGlm
IChpc19leHRlbnNpb25fZW5hYmxlZF9vcl9pc19jb3JlKGNvbnRleHQsIDEwMCwgZXh0ZW5zaW9u
MywgMzAwKSkKKyAgICB7CisgICAgICAgIHJldHVybiB0b2tlbjsKKyAgICB9CiAKICAgICAvLyBu
b3QgYSByZXNlcnZlZCB3b3JkIGluIEdMU0wgRVMgMS4wMCwgc28gY291bGQgYmUgdXNlZCBhcyBh
biBpZGVudGlmaWVyL3R5cGUgbmFtZQogICAgIHl5bHZhbC0+bGV4LnN0cmluZyA9IEFsbG9jYXRl
UG9vbENoYXJBcnJheSh5eXRleHQsIHl5bGVuZyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9BTkdMRS9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci90cmVlX29wcy9QcnVuZU5vT3BzLmNw
cCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci90cmFuc2xhdG9yL3RyZWVf
b3BzL1BydW5lTm9PcHMuY3BwCmluZGV4IGExMGE4NGM2ZGZjZjQ4NGI1MzI4MWRmY2UzMTJlMjNi
ZTYzNGYwMDQuLjVhZTZjYjFmMzM1ZTFmNDNjNjc5OWI1ODI2ZmNmOGM0NzBjMTYwZjggMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci90cmFuc2xhdG9yL3Ry
ZWVfb3BzL1BydW5lTm9PcHMuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9j
b21waWxlci90cmFuc2xhdG9yL3RyZWVfb3BzL1BydW5lTm9PcHMuY3BwCkBAIC0xMzksNyArMTM5
LDYgQEAgYm9vbCBQcnVuZU5vT3BzVHJhdmVyc2VyOjp2aXNpdEJsb2NrKFZpc2l0IHZpc2l0LCBU
SW50ZXJtQmxvY2sgKm5vZGUpCiAgICAgQVNTRVJUKHZpc2l0ID09IFByZVZpc2l0KTsKIAogICAg
IFRJbnRlcm1TZXF1ZW5jZSAmc3RhdGVtZW50cyA9ICpub2RlLT5nZXRTZXF1ZW5jZSgpOwotICAg
IFRJbnRlcm1TZXF1ZW5jZSBlbXB0eVJlcGxhY2VtZW50OwogCiAgICAgLy8gVmlzaXQgZWFjaCBz
dGF0ZW1lbnQgaW4gdGhlIGJsb2NrIG9uZSBieSBvbmUuICBPbmNlIGEgYnJhbmNoIGlzIHZpc2l0
ZWQgKGJyZWFrLCBjb250aW51ZSwKICAgICAvLyByZXR1cm4gb3IgZGlzY2FyZCksIGRyb3AgdGhl
IHJlc3Qgb2YgdGhlIHN0YXRlbWVudHMuCkBAIC0xNTYsNiArMTU1LDcgQEAgYm9vbCBQcnVuZU5v
T3BzVHJhdmVyc2VyOjp2aXNpdEJsb2NrKFZpc2l0IHZpc2l0LCBUSW50ZXJtQmxvY2sgKm5vZGUp
CiAgICAgICAgIC8vIElmIGEgYnJhbmNoIGlzIHZpc2l0ZWQsIHBydW5lIHRoZSBzdGF0ZW1lbnQu
ICBJZiB0aGUgc3RhdGVtZW50IGlzIGEgbm8tb3AsIGFsc28gcHJ1bmUgaXQuCiAgICAgICAgIGlm
IChtSXNCcmFuY2hWaXNpdGVkIHx8IElzTm9PcChzdGF0ZW1lbnQpKQogICAgICAgICB7CisgICAg
ICAgICAgICBUSW50ZXJtU2VxdWVuY2UgZW1wdHlSZXBsYWNlbWVudDsKICAgICAgICAgICAgIG1N
dWx0aVJlcGxhY2VtZW50cy5lbXBsYWNlX2JhY2sobm9kZSwgc3RhdGVtZW50LCBzdGQ6Om1vdmUo
ZW1wdHlSZXBsYWNlbWVudCkpOwogICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgIH0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci90cmFuc2xhdG9y
L3RyZWVfb3BzL1NpbXBsaWZ5TG9vcENvbmRpdGlvbnMuY3BwIGIvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvdHJlZV9vcHMvU2ltcGxpZnlMb29wQ29uZGl0
aW9ucy5jcHAKaW5kZXggMGMyYWE4ZmI2Y2IxY2FkYTg4OWQwOTQ4OWNhN2Y1NDM3YjM4Y2U2YS4u
YzZhM2UwYjllZWMyMmNiNzhmOTJkOWRkMzJiNjI4NTBkZTdlZjNkOCAxMDA2NDQKLS0tIGEvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvdHJlZV9vcHMvU2lt
cGxpZnlMb29wQ29uZGl0aW9ucy5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3Jj
L2NvbXBpbGVyL3RyYW5zbGF0b3IvdHJlZV9vcHMvU2ltcGxpZnlMb29wQ29uZGl0aW9ucy5jcHAK
QEAgLTE2MSw2ICsxNjEsMjAgQEAgYm9vbCBTaW1wbGlmeUxvb3BDb25kaXRpb25zVHJhdmVyc2Vy
Ojp2aXNpdEJyYW5jaChWaXNpdCB2aXNpdCwgVEludGVybUJyYW5jaCAqbm8KICAgICByZXR1cm4g
dHJ1ZTsKIH0KIAorVEludGVybUJsb2NrICpDcmVhdGVGcm9tQm9keShUSW50ZXJtTG9vcCAqbm9k
ZSwgYm9vbCAqYm9keUVuZHNJbkJyYW5jaE91dCkKK3sKKyAgICBUSW50ZXJtQmxvY2sgKm5ld0Jv
ZHkgPSBuZXcgVEludGVybUJsb2NrKCk7CisgICAgKmJvZHlFbmRzSW5CcmFuY2hPdXQgID0gZmFs
c2U7CisKKyAgICBUSW50ZXJtQmxvY2sgKm5vZGVCb2R5ID0gbm9kZS0+Z2V0Qm9keSgpOworICAg
IGlmIChub2RlQm9keSAhPSBudWxscHRyKQorICAgIHsKKyAgICAgICAgbmV3Qm9keS0+Z2V0U2Vx
dWVuY2UoKS0+cHVzaF9iYWNrKG5vZGVCb2R5KTsKKyAgICAgICAgKmJvZHlFbmRzSW5CcmFuY2hP
dXQgPSBFbmRzSW5CcmFuY2gobm9kZUJvZHkpOworICAgIH0KKyAgICByZXR1cm4gbmV3Qm9keTsK
K30KKwogdm9pZCBTaW1wbGlmeUxvb3BDb25kaXRpb25zVHJhdmVyc2VyOjp0cmF2ZXJzZUxvb3Ao
VEludGVybUxvb3AgKm5vZGUpCiB7CiAgICAgLy8gTWFyayB0aGF0IHdlJ3JlIGluc2lkZSBhIGxv
b3AgY29uZGl0aW9uIG9yIGV4cHJlc3Npb24sIGFuZCBkZXRlcm1pbmUgaWYgdGhlIGxvb3AgbmVl
ZHMgdG8gYmUKQEAgLTIzOCwxMyArMjUyLDEzIEBAIHZvaWQgU2ltcGxpZnlMb29wQ29uZGl0aW9u
c1RyYXZlcnNlcjo6dHJhdmVyc2VMb29wKFRJbnRlcm1Mb29wICpub2RlKQogICAgICAgICAgICAg
ICAgICAgICBDcmVhdGVUZW1wSW5pdERlY2xhcmF0aW9uTm9kZShtTG9vcC5jb25kaXRpb25WYXJp
YWJsZSwgbUxvb3AuY29uZGl0aW9uKTsKICAgICAgICAgICAgICAgICBpbnNlcnRTdGF0ZW1lbnRJ
blBhcmVudEJsb2NrKHRlbXBJbml0RGVjbGFyYXRpb24pOwogCi0gICAgICAgICAgICAgICAgVElu
dGVybUJsb2NrICpuZXdCb2R5ID0gbmV3IFRJbnRlcm1CbG9jaygpOwotICAgICAgICAgICAgICAg
IGlmIChub2RlLT5nZXRCb2R5KCkpCisgICAgICAgICAgICAgICAgYm9vbCBib2R5RW5kc0luQnJh
bmNoOworICAgICAgICAgICAgICAgIFRJbnRlcm1CbG9jayAqbmV3Qm9keSA9IENyZWF0ZUZyb21C
b2R5KG5vZGUsICZib2R5RW5kc0luQnJhbmNoKTsKKyAgICAgICAgICAgICAgICBpZiAoIWJvZHlF
bmRzSW5CcmFuY2gpCiAgICAgICAgICAgICAgICAgewotICAgICAgICAgICAgICAgICAgICBuZXdC
b2R5LT5nZXRTZXF1ZW5jZSgpLT5wdXNoX2JhY2sobm9kZS0+Z2V0Qm9keSgpKTsKKyAgICAgICAg
ICAgICAgICAgICAgbmV3Qm9keS0+Z2V0U2VxdWVuY2UoKS0+cHVzaF9iYWNrKENyZWF0ZVRlbXBB
c3NpZ25tZW50Tm9kZSgKKyAgICAgICAgICAgICAgICAgICAgICAgIG1Mb29wLmNvbmRpdGlvblZh
cmlhYmxlLCBtTG9vcC5jb25kaXRpb24tPmRlZXBDb3B5KCkpKTsKICAgICAgICAgICAgICAgICB9
Ci0gICAgICAgICAgICAgICAgbmV3Qm9keS0+Z2V0U2VxdWVuY2UoKS0+cHVzaF9iYWNrKAotICAg
ICAgICAgICAgICAgICAgICBDcmVhdGVUZW1wQXNzaWdubWVudE5vZGUobUxvb3AuY29uZGl0aW9u
VmFyaWFibGUsIG1Mb29wLmNvbmRpdGlvbi0+ZGVlcENvcHkoKSkpOwogCiAgICAgICAgICAgICAg
ICAgLy8gQ2FuJ3QgdXNlIHF1ZXVlUmVwbGFjZW1lbnQgdG8gcmVwbGFjZSBvbGQgYm9keSwgc2lu
Y2UgaXQgbWF5IGhhdmUgYmVlbiBudWxscHRyLgogICAgICAgICAgICAgICAgIC8vIEl0J3Mgc2Fm
ZSB0byBkbyB0aGUgcmVwbGFjZW1lbnRzIGluIHBsYWNlIGhlcmUgLSB0aGUgbmV3IGJvZHkgd2ls
bCBzdGlsbCBiZQpAQCAtMzAwLDEzICszMTQsMTMgQEAgdm9pZCBTaW1wbGlmeUxvb3BDb25kaXRp
b25zVHJhdmVyc2VyOjp0cmF2ZXJzZUxvb3AoVEludGVybUxvb3AgKm5vZGUpCiAgICAgICAgICAg
ICAgICAgICAgIENyZWF0ZVRlbXBEZWNsYXJhdGlvbk5vZGUobUxvb3AuY29uZGl0aW9uVmFyaWFi
bGUpOwogICAgICAgICAgICAgICAgIGluc2VydFN0YXRlbWVudEluUGFyZW50QmxvY2sodGVtcElu
aXREZWNsYXJhdGlvbik7CiAKLSAgICAgICAgICAgICAgICBUSW50ZXJtQmxvY2sgKm5ld0JvZHkg
PSBuZXcgVEludGVybUJsb2NrKCk7Ci0gICAgICAgICAgICAgICAgaWYgKG5vZGUtPmdldEJvZHko
KSkKKyAgICAgICAgICAgICAgICBib29sIGJvZHlFbmRzSW5CcmFuY2g7CisgICAgICAgICAgICAg
ICAgVEludGVybUJsb2NrICpuZXdCb2R5ID0gQ3JlYXRlRnJvbUJvZHkobm9kZSwgJmJvZHlFbmRz
SW5CcmFuY2gpOworICAgICAgICAgICAgICAgIGlmICghYm9keUVuZHNJbkJyYW5jaCkKICAgICAg
ICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgICAgIG5ld0JvZHktPmdldFNlcXVlbmNlKCkt
PnB1c2hfYmFjayhub2RlLT5nZXRCb2R5KCkpOworICAgICAgICAgICAgICAgICAgICBuZXdCb2R5
LT5nZXRTZXF1ZW5jZSgpLT5wdXNoX2JhY2soCisgICAgICAgICAgICAgICAgICAgICAgICBDcmVh
dGVUZW1wQXNzaWdubWVudE5vZGUobUxvb3AuY29uZGl0aW9uVmFyaWFibGUsIG1Mb29wLmNvbmRp
dGlvbikpOwogICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBuZXdCb2R5LT5nZXRT
ZXF1ZW5jZSgpLT5wdXNoX2JhY2soCi0gICAgICAgICAgICAgICAgICAgIENyZWF0ZVRlbXBBc3Np
Z25tZW50Tm9kZShtTG9vcC5jb25kaXRpb25WYXJpYWJsZSwgbUxvb3AuY29uZGl0aW9uKSk7CiAK
ICAgICAgICAgICAgICAgICAvLyBDYW4ndCB1c2UgcXVldWVSZXBsYWNlbWVudCB0byByZXBsYWNl
IG9sZCBib2R5LCBzaW5jZSBpdCBtYXkgaGF2ZSBiZWVuIG51bGxwdHIuCiAgICAgICAgICAgICAg
ICAgLy8gSXQncyBzYWZlIHRvIGRvIHRoZSByZXBsYWNlbWVudHMgaW4gcGxhY2UgaGVyZSAtIHRo
ZSBuZXcgYm9keSB3aWxsIHN0aWxsIGJlCkBAIC0zNTAsMTMgKzM2NCwxMCBAQCB2b2lkIFNpbXBs
aWZ5TG9vcENvbmRpdGlvbnNUcmF2ZXJzZXI6OnRyYXZlcnNlTG9vcChUSW50ZXJtTG9vcCAqbm9k
ZSkKICAgICAgICAgICAgICAgICAvLyAgIGV4cHJCOyBjb250aW51ZTsKIAogICAgICAgICAgICAg
ICAgIC8vIEluc2VydCAieyBib2R5OyB9IiBpbiB0aGUgd2hpbGUgbG9vcAotICAgICAgICAgICAg
ICAgIFRJbnRlcm1CbG9jayAqd2hpbGVMb29wQm9keSA9IG5ldyBUSW50ZXJtQmxvY2soKTsKLSAg
ICAgICAgICAgICAgICBpZiAobm9kZS0+Z2V0Qm9keSgpKQotICAgICAgICAgICAgICAgIHsKLSAg
ICAgICAgICAgICAgICAgICAgd2hpbGVMb29wQm9keS0+Z2V0U2VxdWVuY2UoKS0+cHVzaF9iYWNr
KG5vZGUtPmdldEJvZHkoKSk7Ci0gICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGJv
b2wgYm9keUVuZHNJbkJyYW5jaDsKKyAgICAgICAgICAgICAgICBUSW50ZXJtQmxvY2sgKndoaWxl
TG9vcEJvZHkgPSBDcmVhdGVGcm9tQm9keShub2RlLCAmYm9keUVuZHNJbkJyYW5jaCk7CiAgICAg
ICAgICAgICAgICAgLy8gSW5zZXJ0ICJleHByQjsiIGluIHRoZSB3aGlsZSBsb29wCi0gICAgICAg
ICAgICAgICAgaWYgKG5vZGUtPmdldEV4cHJlc3Npb24oKSkKKyAgICAgICAgICAgICAgICBpZiAo
IWJvZHlFbmRzSW5CcmFuY2ggJiYgbm9kZS0+Z2V0RXhwcmVzc2lvbigpKQogICAgICAgICAgICAg
ICAgIHsKICAgICAgICAgICAgICAgICAgICAgd2hpbGVMb29wQm9keS0+Z2V0U2VxdWVuY2UoKS0+
cHVzaF9iYWNrKG5vZGUtPmdldEV4cHJlc3Npb24oKSk7CiAgICAgICAgICAgICAgICAgfQpAQCAt
Mzg5LDEzICs0MDAsMTAgQEAgdm9pZCBTaW1wbGlmeUxvb3BDb25kaXRpb25zVHJhdmVyc2VyOjp0
cmF2ZXJzZUxvb3AoVEludGVybUxvb3AgKm5vZGUpCiAgICAgICAgICAgICAgICAgbG9vcFNjb3Bl
U2VxdWVuY2UtPnB1c2hfYmFjaygKICAgICAgICAgICAgICAgICAgICAgQ3JlYXRlVGVtcEluaXRE
ZWNsYXJhdGlvbk5vZGUobUxvb3AuY29uZGl0aW9uVmFyaWFibGUsIG1Mb29wLmNvbmRpdGlvbikp
OwogICAgICAgICAgICAgICAgIC8vIEluc2VydCAieyBib2R5OyB9IiBpbiB0aGUgd2hpbGUgbG9v
cAotICAgICAgICAgICAgICAgIFRJbnRlcm1CbG9jayAqd2hpbGVMb29wQm9keSA9IG5ldyBUSW50
ZXJtQmxvY2soKTsKLSAgICAgICAgICAgICAgICBpZiAobm9kZS0+Z2V0Qm9keSgpKQotICAgICAg
ICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICAgICAgd2hpbGVMb29wQm9keS0+Z2V0U2VxdWVu
Y2UoKS0+cHVzaF9iYWNrKG5vZGUtPmdldEJvZHkoKSk7Ci0gICAgICAgICAgICAgICAgfQorICAg
ICAgICAgICAgICAgIGJvb2wgYm9keUVuZHNJbkJyYW5jaDsKKyAgICAgICAgICAgICAgICBUSW50
ZXJtQmxvY2sgKndoaWxlTG9vcEJvZHkgPSBDcmVhdGVGcm9tQm9keShub2RlLCAmYm9keUVuZHNJ
bkJyYW5jaCk7CiAgICAgICAgICAgICAgICAgLy8gSW5zZXJ0ICJleHByQjsiIGluIHRoZSB3aGls
ZSBsb29wCi0gICAgICAgICAgICAgICAgaWYgKG5vZGUtPmdldEV4cHJlc3Npb24oKSkKKyAgICAg
ICAgICAgICAgICBpZiAoIWJvZHlFbmRzSW5CcmFuY2ggJiYgbm9kZS0+Z2V0RXhwcmVzc2lvbigp
KQogICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgd2hpbGVMb29wQm9keS0+
Z2V0U2VxdWVuY2UoKS0+cHVzaF9iYWNrKG5vZGUtPmdldEV4cHJlc3Npb24oKSk7CiAgICAgICAg
ICAgICAgICAgfQpAQCAtNDMwLDE5ICs0MzgsMTkgQEAgdm9pZCBTaW1wbGlmeUxvb3BDb25kaXRp
b25zVHJhdmVyc2VyOjp0cmF2ZXJzZUxvb3AoVEludGVybUxvb3AgKm5vZGUpCiAgICAgICAgICAg
ICAgICAgbG9vcFNjb3BlU2VxdWVuY2UtPnB1c2hfYmFjaygKICAgICAgICAgICAgICAgICAgICAg
Q3JlYXRlVGVtcEluaXREZWNsYXJhdGlvbk5vZGUobUxvb3AuY29uZGl0aW9uVmFyaWFibGUsIG1M
b29wLmNvbmRpdGlvbikpOwogICAgICAgICAgICAgICAgIC8vIEluc2VydCAieyBib2R5OyB9IiBp
biB0aGUgd2hpbGUgbG9vcAotICAgICAgICAgICAgICAgIFRJbnRlcm1CbG9jayAqd2hpbGVMb29w
Qm9keSA9IG5ldyBUSW50ZXJtQmxvY2soKTsKLSAgICAgICAgICAgICAgICBpZiAobm9kZS0+Z2V0
Qm9keSgpKQotICAgICAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICAgICAgd2hpbGVMb29w
Qm9keS0+Z2V0U2VxdWVuY2UoKS0+cHVzaF9iYWNrKG5vZGUtPmdldEJvZHkoKSk7Ci0gICAgICAg
ICAgICAgICAgfQorICAgICAgICAgICAgICAgIGJvb2wgYm9keUVuZHNJbkJyYW5jaDsKKyAgICAg
ICAgICAgICAgICBUSW50ZXJtQmxvY2sgKndoaWxlTG9vcEJvZHkgPSBDcmVhdGVGcm9tQm9keShu
b2RlLCAmYm9keUVuZHNJbkJyYW5jaCk7CiAgICAgICAgICAgICAgICAgLy8gSW5zZXJ0ICJleHBy
QjsiIGluIHRoZSB3aGlsZSBsb29wCi0gICAgICAgICAgICAgICAgaWYgKG5vZGUtPmdldEV4cHJl
c3Npb24oKSkKKyAgICAgICAgICAgICAgICBpZiAoIWJvZHlFbmRzSW5CcmFuY2ggJiYgbm9kZS0+
Z2V0RXhwcmVzc2lvbigpKQogICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAg
d2hpbGVMb29wQm9keS0+Z2V0U2VxdWVuY2UoKS0+cHVzaF9iYWNrKG5vZGUtPmdldEV4cHJlc3Np
b24oKSk7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIC8vIEluc2VydCAiczAg
PSBleHByOyIgaW4gdGhlIHdoaWxlIGxvb3AKLSAgICAgICAgICAgICAgICB3aGlsZUxvb3BCb2R5
LT5nZXRTZXF1ZW5jZSgpLT5wdXNoX2JhY2soCi0gICAgICAgICAgICAgICAgICAgIENyZWF0ZVRl
bXBBc3NpZ25tZW50Tm9kZShtTG9vcC5jb25kaXRpb25WYXJpYWJsZSwgbUxvb3AuY29uZGl0aW9u
LT5kZWVwQ29weSgpKSk7CisgICAgICAgICAgICAgICAgaWYgKCFib2R5RW5kc0luQnJhbmNoKQor
ICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgd2hpbGVMb29wQm9keS0+Z2V0
U2VxdWVuY2UoKS0+cHVzaF9iYWNrKENyZWF0ZVRlbXBBc3NpZ25tZW50Tm9kZSgKKyAgICAgICAg
ICAgICAgICAgICAgICAgIG1Mb29wLmNvbmRpdGlvblZhcmlhYmxlLCBtTG9vcC5jb25kaXRpb24t
PmRlZXBDb3B5KCkpKTsKKyAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgLy8gQ3Jl
YXRlICJ3aGlsZShzMCkgeyB3aGlsZUxvb3BCb2R5IH0iCiAgICAgICAgICAgICAgICAgd2hpbGVM
b29wID0gbmV3IFRJbnRlcm1Mb29wKEVMb29wV2hpbGUsIG51bGxwdHIsCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZVRlbXBTeW1ib2xOb2RlKG1Mb29w
LmNvbmRpdGlvblZhcmlhYmxlKSwgbnVsbHB0ciwKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL3NyYy9jb21waWxlci90cmFuc2xhdG9yL3RyZWVfdXRpbC9JbnRlcm1Ob2RlX3V0
aWwuY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3Iv
dHJlZV91dGlsL0ludGVybU5vZGVfdXRpbC5jcHAKaW5kZXggNGVlMmE0MGQxNDg0OTY2MjFjYjYy
Mjk3ZTI1NWY1MDYzNGMzYjk2ZS4uMzI2ZGIzNDM0NTlkMjlhNmE3ZmIwY2RhMTNhODcxYWI2Mjhm
MzE2ZCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3Ry
YW5zbGF0b3IvdHJlZV91dGlsL0ludGVybU5vZGVfdXRpbC5jcHAKKysrIGIvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3RyYW5zbGF0b3IvdHJlZV91dGlsL0ludGVybU5vZGVf
dXRpbC5jcHAKQEAgLTM2Miw0ICszNjIsMzQgQEAgVEludGVybVR5cGVkICpDcmVhdGVCdWlsdElu
VW5hcnlGdW5jdGlvbkNhbGxOb2RlKGNvbnN0IGNoYXIgKm5hbWUsCiAgICAgcmV0dXJuIENyZWF0
ZUJ1aWx0SW5GdW5jdGlvbkNhbGxOb2RlKG5hbWUsICZzZXEsIHN5bWJvbFRhYmxlLCBzaGFkZXJW
ZXJzaW9uKTsKIH0KIAorLy8gUmV0dXJucyB0cnVlIGlmIGEgYmxvY2sgZW5kcyBpbiBhIGJyYW5j
aCAoYnJlYWssIGNvbnRpbnVlLCByZXR1cm4sIGV0YykuICBUaGlzIGlzIG9ubHkgY29ycmVjdAor
Ly8gYWZ0ZXIgUHJ1bmVOb09wcywgYmVjYXVzZSBpdCBleHBlY3RzIGVtcHR5IGJsb2NrcyBhZnRl
ciBhIGJyYW5jaCB0byBoYXZlIGJlZW4gYWxyZWFkeSBwcnVuZWQsCisvLyBpLmUuIGEgYmxvY2sg
Y2FuIG9ubHkgZW5kIGluIGEgYnJhbmNoIGlmIGl0cyBsYXN0IHN0YXRlbWVudCBpcyBhIGJyYW5j
aCBvciBpcyBhIGJsb2NrIGVuZGluZyBpbgorLy8gYnJhbmNoLgorYm9vbCBFbmRzSW5CcmFuY2go
VEludGVybUJsb2NrICpibG9jaykKK3sKKyAgICB3aGlsZSAoYmxvY2sgIT0gbnVsbHB0cikKKyAg
ICB7CisgICAgICAgIC8vIEdldCB0aGUgbGFzdCBzdGF0ZW1lbnQgb2YgdGhlIGJsb2NrLgorICAg
ICAgICBUSW50ZXJtU2VxdWVuY2UgJnN0YXRlbWVudHMgPSAqYmxvY2stPmdldFNlcXVlbmNlKCk7
CisgICAgICAgIGlmIChzdGF0ZW1lbnRzLmVtcHR5KCkpCisgICAgICAgIHsKKyAgICAgICAgICAg
IHJldHVybiBmYWxzZTsKKyAgICAgICAgfQorCisgICAgICAgIFRJbnRlcm1Ob2RlICpsYXN0U3Rh
dGVtZW50ID0gc3RhdGVtZW50cy5iYWNrKCk7CisKKyAgICAgICAgLy8gSWYgaXQncyBhIGJyYW5j
aCBpdHNlbGYsIHdlIGhhdmUgdGhlIGFuc3dlci4KKyAgICAgICAgaWYgKGxhc3RTdGF0ZW1lbnQt
PmdldEFzQnJhbmNoTm9kZSgpKQorICAgICAgICB7CisgICAgICAgICAgICByZXR1cm4gdHJ1ZTsK
KyAgICAgICAgfQorCisgICAgICAgIC8vIE90aGVyd2lzZSwgc2VlIGlmIGl0J3MgYSBibG9jayB0
aGF0IGVuZHMgaW4gYSBicmFuY2gKKyAgICAgICAgYmxvY2sgPSBsYXN0U3RhdGVtZW50LT5nZXRB
c0Jsb2NrKCk7CisgICAgfQorCisgICAgcmV0dXJuIGZhbHNlOworfQorCiB9ICAvLyBuYW1lc3Bh
Y2Ugc2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21waWxlci90
cmFuc2xhdG9yL3RyZWVfdXRpbC9JbnRlcm1Ob2RlX3V0aWwuaCBiL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3NyYy9jb21waWxlci90cmFuc2xhdG9yL3RyZWVfdXRpbC9JbnRlcm1Ob2RlX3V0aWwu
aAppbmRleCA0ZmU2YWQ5ZGEyMWYxYTViMTA2ZGEyMTFmNDczZjAzMzhlM2ZiYzk5Li4yMTE0OWFm
YjY3ODhhMDdhODY3ZjcwZTBkMjcwMjA3OTRjY2Y4MTE4IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvY29tcGlsZXIvdHJhbnNsYXRvci90cmVlX3V0aWwvSW50ZXJtTm9k
ZV91dGlsLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbXBpbGVyL3RyYW5z
bGF0b3IvdHJlZV91dGlsL0ludGVybU5vZGVfdXRpbC5oCkBAIC0xMDUsNiArMTA1LDEyIEBAIFRJ
bnRlcm1Td2l6emxlICpDcmVhdGVTd2l6emxlKFRJbnRlcm1UeXBlZCAqcmVmZXJlbmNlLCBBcmdz
VC4uLiBhcmdzKQogICAgIHJldHVybiBuZXcgVEludGVybVN3aXp6bGUocmVmZXJlbmNlLCBzd2l6
emxlSW5kZXgpOwogfQogCisvLyBSZXR1cm5zIHRydWUgaWYgYSBibG9jayBlbmRzIGluIGEgYnJh
bmNoIChicmVhaywgY29udGludWUsIHJldHVybiwgZXRjKS4gIFRoaXMgaXMgb25seSBjb3JyZWN0
CisvLyBhZnRlciBQcnVuZU5vT3BzLCBiZWNhdXNlIGl0IGV4cGVjdHMgZW1wdHkgYmxvY2tzIGFm
dGVyIGEgYnJhbmNoIHRvIGhhdmUgYmVlbiBhbHJlYWR5IHBydW5lZCwKKy8vIGkuZS4gYSBibG9j
ayBjYW4gb25seSBlbmQgaW4gYSBicmFuY2ggaWYgaXRzIGxhc3Qgc3RhdGVtZW50IGlzIGEgYnJh
bmNoIG9yIGlzIGEgYmxvY2sgZW5kaW5nIGluCisvLyBicmFuY2guCitib29sIEVuZHNJbkJyYW5j
aChUSW50ZXJtQmxvY2sgKmJsb2NrKTsKKwogfSAgLy8gbmFtZXNwYWNlIHNoCiAKICNlbmRpZiAg
Ly8gQ09NUElMRVJfVFJBTlNMQVRPUl9JTlRFUk1OT0RFVVRJTF9IXwpkaWZmIC0tZ2l0IGEvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mb19tYWNvcy5t
bSBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9ncHVfaW5mb191dGlsL1N5c3RlbUluZm9f
bWFjb3MubW0KaW5kZXggODNhMWI3NWJmNzMxYTc3MjA4ZjA0OTlmZmI4YmMyMDQxZTk1MDE1NS4u
NjYyZWQ1NDVkY2Q4NzEzNTE1ODY4OGYyNDRmYTg2YjA1MTIwNjFkYSAxMDA2NDQKLS0tIGEvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mb19tYWNvcy5t
bQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvZ3B1X2luZm9fdXRpbC9TeXN0ZW1J
bmZvX21hY29zLm1tCkBAIC0xOTEsNyArMTkxLDcgQEAgdm9pZCBHZXRJT1JlZ2lzdHJ5RGV2aWNl
cyhzdGQ6OnZlY3RvcjxHUFVEZXZpY2VJbmZvPiAqZGV2aWNlcykKICAgICB9CiB9CiAKLXZvaWQg
U2V0QWN0aXZlR1BVSW5kZXgoU3lzdGVtSW5mbyAqaW5mbykKK3ZvaWQgRm9yY2VHUFVTd2l0Y2hJ
bmRleChTeXN0ZW1JbmZvICppbmZvKQogewogICAgIFZlbmRvcklEIGFjdGl2ZVZlbmRvciA9IDA7
CiAgICAgRGV2aWNlSUQgYWN0aXZlRGV2aWNlID0gMDsKQEAgLTM3Myw3ICszNzMsNyBAQCBib29s
IEdldFN5c3RlbUluZm9fbWFjKFN5c3RlbUluZm8gKmluZm8pCiAgICAgLy8gR1BVIGluc3RlYWQg
b2YgdGhlIG5vbi1pbnRlbCBHUFUKICAgICBpZiAoQGF2YWlsYWJsZShtYWNPUyAxMC4xMywgKikp
CiAgICAgewotICAgICAgICBTZXRBY3RpdmVHUFVJbmRleChpbmZvKTsKKyAgICAgICAgRm9yY2VH
UFVTd2l0Y2hJbmRleChpbmZvKTsKICAgICB9CiAKICAgICAvLyBGaWd1cmUgb3V0IHdoZXRoZXIg
dGhpcyBpcyBhIGR1YWwtR1BVIHN5c3RlbS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3NyYy9saWJBTkdMRS9DYXBzLmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3Ny
Yy9saWJBTkdMRS9DYXBzLmNwcAppbmRleCA0MTAwMGIxMzdkMjU2YmYzMGRmZGU2OWFiNDNmNjc5
NGRiM2E3NTI5Li5mNGMxYmVlZDI5MTI0OWUzMzkxMzMxOTI0MzkwNmI2NzIxMTBhOGMzIDEwMDY0
NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvQ2Fwcy5jcHAKKysr
IGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL0NhcHMuY3BwCkBAIC0xMzAw
LDYgKzEzMDAsNyBAQCBzdGQ6OnZlY3RvcjxzdGQ6OnN0cmluZz4gRGlzcGxheUV4dGVuc2lvbnM6
OmdldFN0cmluZ3MoKSBjb25zdAogICAgIEluc2VydEV4dGVuc2lvblN0cmluZygiRUdMX0tIUl9s
b2NrX3N1cmZhY2UzIiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9ja1N1cmZhY2Uz
S0hSLCAgICAgICAgICAgICAgICAgICAgJmV4dGVuc2lvblN0cmluZ3MpOwogICAgIEluc2VydEV4
dGVuc2lvblN0cmluZygiRUdMX0FOR0xFX3Z1bGthbl9pbWFnZSIsICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgdnVsa2FuSW1hZ2VBTkdMRSwgICAgICAgICAgICAgICAgICAgJmV4dGVuc2lv
blN0cmluZ3MpOwogICAgIEluc2VydEV4dGVuc2lvblN0cmluZygiRUdMX0FOR0xFX21ldGFsX2Ny
ZWF0ZV9jb250ZXh0X293bmVyc2hpcF9pZGVudGl0eSIsICAgbWV0YWxDcmVhdGVDb250ZXh0T3du
ZXJzaGlwSWRlbnRpdHlBTkdMRSwgJmV4dGVuc2lvblN0cmluZ3MpOworICAgIEluc2VydEV4dGVu
c2lvblN0cmluZygiRUdMX0tIUl9wYXJ0aWFsX3VwZGF0ZSIsICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgcGFydGlhbFVwZGF0ZUtIUiwgICAgICAgICAgICAgICAgICAgJmV4dGVuc2lvblN0
cmluZ3MpOwogICAgIC8vIGNsYW5nLWZvcm1hdCBvbgogCiAgICAgcmV0dXJuIGV4dGVuc2lvblN0
cmluZ3M7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUv
Q2Fwcy5oIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL0NhcHMuaAppbmRl
eCBiZjkzNmNhMTFkNjhkY2UyMDk3YzczNzA0N2VmN2ZiMjVlOTE4MjQ4Li4xMzQyOWFjMmQxZmY1
ZDRjOWY3ZDU2ZGQ1N2NiNTIxM2U5NGUwZTYzIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvbGliQU5HTEUvQ2Fwcy5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy9saWJBTkdMRS9DYXBzLmgKQEAgLTE1NCw2ICsxNTQsOSBAQCBzdHJ1Y3QgTGltaXRhdGlv
bnMKIAogICAgIC8vIE5vIGNvbXByZXNzZWQgVEVYVFVSRV8zRCBzdXBwb3J0LgogICAgIGJvb2wg
bm9Db21wcmVzc2VkVGV4dHVyZTNEID0gZmFsc2U7CisKKyAgICAvLyBEM0QgZG9lcyBub3Qgc3Vw
cG9ydCBjb21wcmVzc2VkIHRleHR1cmVzIHdoZXJlIHRoZSBiYXNlIG1pcCBsZXZlbCBpcyBub3Qg
YSBtdWx0aXBsZSBvZiA0CisgICAgYm9vbCBjb21wcmVzc2VkQmFzZU1pcExldmVsTXVsdGlwbGVP
ZkZvdXIgPSBmYWxzZTsKIH07CiAKIHN0cnVjdCBUeXBlUHJlY2lzaW9uCkBAIC02NDYsNiArNjQ5
LDkgQEAgc3RydWN0IERpc3BsYXlFeHRlbnNpb25zCiAKICAgICAvLyBFR0xfQU5HTEVfbWV0YWxf
Y3JlYXRlX2NvbnRleHRfb3duZXJzaGlwX2lkZW50aXR5CiAgICAgYm9vbCBtZXRhbENyZWF0ZUNv
bnRleHRPd25lcnNoaXBJZGVudGl0eUFOR0xFID0gZmFsc2U7CisKKyAgICAvLyBFR0xfS0hSX3Bh
cnRpYWxfdXBkYXRlCisgICAgYm9vbCBwYXJ0aWFsVXBkYXRlS0hSID0gZmFsc2U7CiB9OwogCiBz
dHJ1Y3QgRGV2aWNlRXh0ZW5zaW9ucwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvc3JjL2xpYkFOR0xFL0NvbXBpbGVyLmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3Ny
Yy9saWJBTkdMRS9Db21waWxlci5jcHAKaW5kZXggM2U4YTU2NWYyZDk4OGMxN2M0MGZhNDM3OWNk
ZDhlNDA4MWQ2MGZhMy4uY2QxODAwN2I4YzY5MmQ4OWE4YmE2ZTE4NWNjNTJjNGZiODJiNzMyNSAx
MDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL0NvbXBpbGVy
LmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvQ29tcGlsZXIu
Y3BwCkBAIC0xODksNiArMTg5LDkgQEAgQ29tcGlsZXI6OkNvbXBpbGVyKHJ4OjpHTEltcGxGYWN0
b3J5ICppbXBsRmFjdG9yeSwgY29uc3QgU3RhdGUgJnN0YXRlLCBlZ2w6OkRpc3AKICAgICAvLyBB
TkRST0lEX2V4dGVuc2lvbl9wYWNrX2VzMzFhCiAgICAgbVJlc291cmNlcy5BTkRST0lEX2V4dGVu
c2lvbl9wYWNrX2VzMzFhID0gZXh0ZW5zaW9ucy5leHRlbnNpb25QYWNrRXMzMWFBTkRST0lEOwog
CisgICAgLy8gS0hSX2JsZW5kX2VxdWF0aW9uX2FkdmFuY2VkCisgICAgbVJlc291cmNlcy5LSFJf
YmxlbmRfZXF1YXRpb25fYWR2YW5jZWQgPSBleHRlbnNpb25zLmJsZW5kRXF1YXRpb25BZHZhbmNl
ZEtIUjsKKwogICAgIC8vIEdMU0wgRVMgMy4xIGNvbnN0YW50cwogICAgIG1SZXNvdXJjZXMuTWF4
UHJvZ3JhbVRleHR1cmVHYXRoZXJPZmZzZXQgICAgPSBjYXBzLm1heFByb2dyYW1UZXh0dXJlR2F0
aGVyT2Zmc2V0OwogICAgIG1SZXNvdXJjZXMuTWluUHJvZ3JhbVRleHR1cmVHYXRoZXJPZmZzZXQg
ICAgPSBjYXBzLm1pblByb2dyYW1UZXh0dXJlR2F0aGVyT2Zmc2V0OwpkaWZmIC0tZ2l0IGEvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL0NvbnRleHQuY3BwIGIvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL0NvbnRleHQuY3BwCmluZGV4IDkzYjY2NzYyYWVh
M2Y5YzU2MjlhYWQ3OGU4YTFlOGE4YjZlODliOWMuLjZlNmMwZDQ4MDAyYjUwN2IzMGFiOGUyM2Qw
NDYxNDhkMTY3MzA2OWUgMTAwNzU1Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9s
aWJBTkdMRS9Db250ZXh0LmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGli
QU5HTEUvQ29udGV4dC5jcHAKQEAgLTEzNiw2ICsxMzYsMTEgQEAgYm9vbCBHZXRCYWNrd2FyZENv
bXBhdGlibGVDb250ZXh0KGNvbnN0IGVnbDo6QXR0cmlidXRlTWFwICZhdHRyaWJzKQogICAgIHJl
dHVybiBhdHRyaWJzLmdldChFR0xfQ09OVEVYVF9PUEVOR0xfQkFDS1dBUkRTX0NPTVBBVElCTEVf
QU5HTEUsIEVHTF9UUlVFKSA9PSBFR0xfVFJVRTsKIH0KIAorYm9vbCBHZXRXZWJHTENvbnRleHQo
Y29uc3QgZWdsOjpBdHRyaWJ1dGVNYXAgJmF0dHJpYnMpCit7CisgICAgcmV0dXJuIChhdHRyaWJz
LmdldChFR0xfQ09OVEVYVF9XRUJHTF9DT01QQVRJQklMSVRZX0FOR0xFLCBFR0xfRkFMU0UpID09
IEVHTF9UUlVFKTsKK30KKwogVmVyc2lvbiBHZXRDbGllbnRWZXJzaW9uKGVnbDo6RGlzcGxheSAq
ZGlzcGxheSwgY29uc3QgZWdsOjpBdHRyaWJ1dGVNYXAgJmF0dHJpYnMpCiB7CiAgICAgVmVyc2lv
biByZXF1ZXN0ZWRWZXJzaW9uID0KQEAgLTE1MSw4ICsxNTYsMTEgQEAgVmVyc2lvbiBHZXRDbGll
bnRWZXJzaW9uKGVnbDo6RGlzcGxheSAqZGlzcGxheSwgY29uc3QgZWdsOjpBdHRyaWJ1dGVNYXAg
JmF0dHJpYnMKICAgICAgICAgewogICAgICAgICAgICAgLy8gQWx3YXlzIHVwIHRoZSB2ZXJzaW9u
IHRvIGF0IGxlYXN0IHRoZSBtYXggY29uZm9ybWFudCB2ZXJzaW9uIHRoaXMgZGlzcGxheSBzdXBw
b3J0cy4KICAgICAgICAgICAgIC8vIE9ubHkgcmV0dXJuIGEgaGlnaGVyIGNsaWVudCB2ZXJzaW9u
IGlmIHJlcXVlc3RlZC4KLSAgICAgICAgICAgIHJldHVybiBzdGQ6Om1heChkaXNwbGF5LT5nZXRJ
bXBsZW1lbnRhdGlvbigpLT5nZXRNYXhDb25mb3JtYW50RVNWZXJzaW9uKCksCi0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgcmVxdWVzdGVkVmVyc2lvbik7CisgICAgICAgICAgICBjb25zdCBW
ZXJzaW9uIGNvbmZvcm1hbnRWZXJzaW9uID0gc3RkOjptYXgoCisgICAgICAgICAgICAgICAgZGlz
cGxheS0+Z2V0SW1wbGVtZW50YXRpb24oKS0+Z2V0TWF4Q29uZm9ybWFudEVTVmVyc2lvbigpLCBy
ZXF1ZXN0ZWRWZXJzaW9uKTsKKyAgICAgICAgICAgIC8vIExpbWl0IHRoZSBXZWJHTCBjb250ZXh0
IHRvIGF0IG1vc3QgdmVyc2lvbiAzLjEKKyAgICAgICAgICAgIGNvbnN0IGJvb2wgaXNXZWJHTCA9
IEdldFdlYkdMQ29udGV4dChhdHRyaWJzKTsKKyAgICAgICAgICAgIHJldHVybiBpc1dlYkdMID8g
c3RkOjptaW4oY29uZm9ybWFudFZlcnNpb24sIFZlcnNpb24oMywgMSkpIDogY29uZm9ybWFudFZl
cnNpb247CiAgICAgICAgIH0KICAgICB9CiAgICAgZWxzZQpAQCAtMjAzLDExICsyMTEsNiBAQCBi
b29sIEdldE5vRXJyb3IoY29uc3QgZWdsOjpBdHRyaWJ1dGVNYXAgJmF0dHJpYnMpCiAgICAgcmV0
dXJuIChhdHRyaWJzLmdldChFR0xfQ09OVEVYVF9PUEVOR0xfTk9fRVJST1JfS0hSLCBFR0xfRkFM
U0UpID09IEVHTF9UUlVFKTsKIH0KIAotYm9vbCBHZXRXZWJHTENvbnRleHQoY29uc3QgZWdsOjpB
dHRyaWJ1dGVNYXAgJmF0dHJpYnMpCi17Ci0gICAgcmV0dXJuIChhdHRyaWJzLmdldChFR0xfQ09O
VEVYVF9XRUJHTF9DT01QQVRJQklMSVRZX0FOR0xFLCBFR0xfRkFMU0UpID09IEVHTF9UUlVFKTsK
LX0KLQogYm9vbCBHZXRFeHRlbnNpb25zRW5hYmxlZChjb25zdCBlZ2w6OkF0dHJpYnV0ZU1hcCAm
YXR0cmlicywgYm9vbCB3ZWJHTENvbnRleHQpCiB7CiAgICAgLy8gSWYgdGhlIGNvbnRleHQgaXMg
V2ViR0wsIGV4dGVuc2lvbnMgYXJlIGRpc2FibGVkIGJ5IGRlZmF1bHQKQEAgLTMyOCw2ICszMzEs
MzMgQEAgYm9vbCBHZXRTYXZlQW5kUmVzdG9yZVN0YXRlKGNvbnN0IGVnbDo6QXR0cmlidXRlTWFw
ICZhdHRyaWJzKQogewogICAgIHJldHVybiAoYXR0cmlicy5nZXQoRUdMX0VYVEVSTkFMX0NPTlRF
WFRfU0FWRV9TVEFURV9BTkdMRSwgRUdMX0ZBTFNFKSA9PSBFR0xfVFJVRSk7CiB9CisKK3ZvaWQg
R2V0UGVyZk1vbml0b3JTdHJpbmcoY29uc3Qgc3RkOjpzdHJpbmcgJm5hbWUsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgIEdMc2l6ZWkgYnVmU2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgR0xzaXplaSAqbGVuZ3RoLAorICAgICAgICAgICAgICAgICAgICAgICAgICBHTGNoYXIgKnN0
cmluZ091dCkKK3sKKyAgICBHTHNpemVpIG51bUNoYXJzV3JpdHRlbiA9IHN0ZDo6bWluKGJ1ZlNp
emUsIHN0YXRpY19jYXN0PEdMc2l6ZWk+KG5hbWUuc2l6ZSgpKSk7CisKKyAgICBpZiAobGVuZ3Ro
KQorICAgIHsKKyAgICAgICAgaWYgKGJ1ZlNpemUgPT0gMCkKKyAgICAgICAgeworICAgICAgICAg
ICAgKmxlbmd0aCA9IHN0YXRpY19jYXN0PEdMc2l6ZWk+KG5hbWUuc2l6ZSgpKTsKKyAgICAgICAg
fQorICAgICAgICBlbHNlCisgICAgICAgIHsKKyAgICAgICAgICAgIC8vIEV4Y2x1ZGVzIG51bGwg
dGVybWluYXRvci4KKyAgICAgICAgICAgIEFTU0VSVChudW1DaGFyc1dyaXR0ZW4gPiAwKTsKKyAg
ICAgICAgICAgICpsZW5ndGggPSBudW1DaGFyc1dyaXR0ZW4gLSAxOworICAgICAgICB9CisgICAg
fQorCisgICAgaWYgKHN0cmluZ091dCkKKyAgICB7CisgICAgICAgIG1lbWNweShzdHJpbmdPdXQs
IG5hbWUuY19zdHIoKSwgbnVtQ2hhcnNXcml0dGVuKTsKKyAgICB9Cit9CiB9ICAvLyBhbm9ueW1v
dXMgbmFtZXNwYWNlCiAKICNpZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0FQUExFKQpAQCAtNjYw
LDggKzY5MCw3IEBAIHZvaWQgQ29udGV4dDo6aW5pdGlhbGl6ZURlZmF1bHRSZXNvdXJjZXMoKQog
ICAgIG1SZWFkSW52YWxpZGF0ZURpcnR5Qml0cy5zZXQoU3RhdGU6OkRJUlRZX0JJVF9SRUFEX0ZS
QU1FQlVGRkVSX0JJTkRJTkcpOwogICAgIG1EcmF3SW52YWxpZGF0ZURpcnR5Qml0cy5zZXQoU3Rh
dGU6OkRJUlRZX0JJVF9EUkFXX0ZSQU1FQlVGRkVSX0JJTkRJTkcpOwogCi0gICAgLy8gSW5pdGlh
bGl6ZSBvdmVybGF5IGFmdGVyIGltcGxlbWVudGF0aW9uIGlzIGluaXRpYWxpemVkLgotICAgIEFO
R0xFX0NPTlRFWFRfVFJZKG1PdmVybGF5LmluaXQodGhpcykpOworICAgIG1PdmVybGF5LmluaXQo
KTsKIH0KIAogZWdsOjpFcnJvciBDb250ZXh0OjpvbkRlc3Ryb3koY29uc3QgZWdsOjpEaXNwbGF5
ICpkaXNwbGF5KQpAQCAtMTIxNCw4ICsxMjQzLDYgQEAgR0xib29sZWFuIENvbnRleHQ6OmlzU2Ft
cGxlcihTYW1wbGVySUQgc2FtcGxlck5hbWUpIGNvbnN0CiAKIHZvaWQgQ29udGV4dDo6YmluZFRl
eHR1cmUoVGV4dHVyZVR5cGUgdGFyZ2V0LCBUZXh0dXJlSUQgaGFuZGxlKQogewotICAgIFRleHR1
cmUgKnRleHR1cmUgPSBudWxscHRyOwotCiAgICAgLy8gU29tZSBhcHBzIGVuYWJsZSBLSFJfY3Jl
YXRlX2NvbnRleHRfbm9fZXJyb3IgYnV0IHBhc3MgaW4gYW4gaW52YWxpZCB0ZXh0dXJlIHR5cGUu
CiAgICAgLy8gV29ya2Fyb3VuZCB0aGlzIGJ5IHNpbGVudGx5IHJldHVybmluZyBpbiBzdWNoIHNp
dHVhdGlvbnMuCiAgICAgaWYgKHRhcmdldCA9PSBUZXh0dXJlVHlwZTo6SW52YWxpZEVudW0pCkBA
IC0xMjIzLDYgKzEyNTAsNyBAQCB2b2lkIENvbnRleHQ6OmJpbmRUZXh0dXJlKFRleHR1cmVUeXBl
IHRhcmdldCwgVGV4dHVyZUlEIGhhbmRsZSkKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAorICAg
IFRleHR1cmUgKnRleHR1cmUgPSBudWxscHRyOwogICAgIGlmIChoYW5kbGUudmFsdWUgPT0gMCkK
ICAgICB7CiAgICAgICAgIHRleHR1cmUgPSBtWmVyb1RleHR1cmVzW3RhcmdldF0uZ2V0KCk7CkBA
IC0xMjM0LDYgKzEyNjIsMTIgQEAgdm9pZCBDb250ZXh0OjpiaW5kVGV4dHVyZShUZXh0dXJlVHlw
ZSB0YXJnZXQsIFRleHR1cmVJRCBoYW5kbGUpCiAgICAgfQogCiAgICAgQVNTRVJUKHRleHR1cmUp
OworICAgIC8vIEVhcmx5IHJldHVybiBpZiByZWJpbmRpbmcgdGhlIHNhbWUgdGV4dHVyZQorICAg
IGlmICh0ZXh0dXJlID09IG1TdGF0ZS5nZXRUYXJnZXRUZXh0dXJlKHRhcmdldCkpCisgICAgewor
ICAgICAgICByZXR1cm47CisgICAgfQorCiAgICAgbVN0YXRlLnNldFNhbXBsZXJUZXh0dXJlKHRo
aXMsIHRhcmdldCwgdGV4dHVyZSk7CiAgICAgbVN0YXRlQ2FjaGUub25BY3RpdmVUZXh0dXJlQ2hh
bmdlKHRoaXMpOwogfQpAQCAtMTI3OSw2ICsxMzEzLDEzIEBAIHZvaWQgQ29udGV4dDo6YmluZFNh
bXBsZXIoR0x1aW50IHRleHR1cmVVbml0LCBTYW1wbGVySUQgc2FtcGxlckhhbmRsZSkKICAgICBB
U1NFUlQodGV4dHVyZVVuaXQgPCBzdGF0aWNfY2FzdDxHTHVpbnQ+KG1TdGF0ZS5tQ2Fwcy5tYXhD
b21iaW5lZFRleHR1cmVJbWFnZVVuaXRzKSk7CiAgICAgU2FtcGxlciAqc2FtcGxlciA9CiAgICAg
ICAgIG1TdGF0ZS5tU2FtcGxlck1hbmFnZXItPmNoZWNrU2FtcGxlckFsbG9jYXRpb24obUltcGxl
bWVudGF0aW9uLmdldCgpLCBzYW1wbGVySGFuZGxlKTsKKworICAgIC8vIEVhcmx5IHJldHVybiBp
ZiByZWJpbmRpbmcgdGhlIHNhbWUgc2FtcGxlcgorICAgIGlmIChzYW1wbGVyID09IG1TdGF0ZS5n
ZXRTYW1wbGVyKHRleHR1cmVVbml0KSkKKyAgICB7CisgICAgICAgIHJldHVybjsKKyAgICB9CisK
ICAgICBtU3RhdGUuc2V0U2FtcGxlckJpbmRpbmcodGhpcywgdGV4dHVyZVVuaXQsIHNhbXBsZXIp
OwogICAgIG1TYW1wbGVyT2JzZXJ2ZXJCaW5kaW5nc1t0ZXh0dXJlVW5pdF0uYmluZChzYW1wbGVy
KTsKICAgICBtU3RhdGVDYWNoZS5vbkFjdGl2ZVRleHR1cmVDaGFuZ2UodGhpcyk7CkBAIC0zNzAz
LDYgKzM3NDQsOSBAQCBFeHRlbnNpb25zIENvbnRleHQ6OmdlbmVyYXRlU3VwcG9ydGVkRXh0ZW5z
aW9ucygpIGNvbnN0CiAgICAgLy8gQWx3YXlzIGVuYWJsZWQuIFdpbGwgcmV0dXJuIGEgZGVmYXVs
dCBzdHJpbmcgaWYgY2FwdHVyZSBpcyBub3QgZW5hYmxlZC4KICAgICBzdXBwb3J0ZWRFeHRlbnNp
b25zLmdldFNlcmlhbGl6ZWRDb250ZXh0U3RyaW5nQU5HTEUgPSB0cnVlOwogCisgICAgLy8gUGVy
Zm9ybWFuY2UgY291bnRlciBxdWVyaWVzIGFyZSBhbHdheXMgc3VwcG9ydGVkLiBEaWZmZXJlbnQg
Z3JvdXBzIGV4aXN0IG9uIGVhY2ggYmFjay1lbmQuCisgICAgc3VwcG9ydGVkRXh0ZW5zaW9ucy5w
ZXJmb3JtYW5jZU1vbml0b3JBTUQgPSB0cnVlOworCiAgICAgcmV0dXJuIHN1cHBvcnRlZEV4dGVu
c2lvbnM7CiB9CiAKQEAgLTM5OTcsNiArNDA0MSwxMSBAQCB2b2lkIENvbnRleHQ6OmluaXRDYXBz
KCkKICAgICAgICAgICAgICAgIDw8IG1heEF0b21pY0NvdW50ZXJCdWZmZXJCaW5kaW5nczsKICAg
ICAgICAgQU5HTEVfTElNSVRfQ0FQKG1TdGF0ZS5tQ2Fwcy5tYXhBdG9taWNDb3VudGVyQnVmZmVy
QmluZGluZ3MsCiAgICAgICAgICAgICAgICAgICAgICAgICBtYXhBdG9taWNDb3VudGVyQnVmZmVy
QmluZGluZ3MpOworICAgICAgICBmb3IgKGdsOjpTaGFkZXJUeXBlIHNoYWRlclR5cGUgOiBnbDo6
QWxsU2hhZGVyVHlwZXMoKSkKKyAgICAgICAgeworICAgICAgICAgICAgQU5HTEVfTElNSVRfQ0FQ
KG1TdGF0ZS5tQ2Fwcy5tYXhTaGFkZXJBdG9taWNDb3VudGVyQnVmZmVyc1tzaGFkZXJUeXBlXSwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXhBdG9taWNDb3VudGVyQnVmZmVyQmluZGlu
Z3MpOworICAgICAgICB9CiAKICAgICAgICAgLy8gU3dpZnRTaGFkZXIgb25seSBzdXBwb3J0cyAx
MiBzaGFkZXIgc3RvcmFnZSBidWZmZXIgYmluZGluZ3MuCiAgICAgICAgIGNvbnN0ZXhwciBHTGlu
dCBtYXhTaGFkZXJTdG9yYWdlQnVmZmVyQmluZGluZ3MgPSAxMjsKQEAgLTU0OTMsNyArNTU0Miw3
IEBAIHZvaWQgQ29udGV4dDo6YWN0aXZlVGV4dHVyZShHTGVudW0gdGV4dHVyZSkKIAogdm9pZCBD
b250ZXh0OjpibGVuZEJhcnJpZXIoKQogewotICAgIFVOSU1QTEVNRU5URUQoKTsKKyAgICBtSW1w
bGVtZW50YXRpb24tPmJsZW5kQmFycmllcigpOwogfQogCiB2b2lkIENvbnRleHQ6OmJsZW5kQ29s
b3IoR0xmbG9hdCByZWQsIEdMZmxvYXQgZ3JlZW4sIEdMZmxvYXQgYmx1ZSwgR0xmbG9hdCBhbHBo
YSkKQEAgLTU1MDQsMTEgKzU1NTMsMTUgQEAgdm9pZCBDb250ZXh0OjpibGVuZENvbG9yKEdMZmxv
YXQgcmVkLCBHTGZsb2F0IGdyZWVuLCBHTGZsb2F0IGJsdWUsIEdMZmxvYXQgYWxwaGEKIHZvaWQg
Q29udGV4dDo6YmxlbmRFcXVhdGlvbihHTGVudW0gbW9kZSkKIHsKICAgICBtU3RhdGUuc2V0Qmxl
bmRFcXVhdGlvbihtb2RlLCBtb2RlKTsKKworICAgIG1TdGF0ZUNhY2hlLm9uQmxlbmRFcXVhdGlv
bkNoYW5nZSh0aGlzKTsKIH0KIAogdm9pZCBDb250ZXh0OjpibGVuZEVxdWF0aW9uaShHTHVpbnQg
YnVmLCBHTGVudW0gbW9kZSkKIHsKICAgICBtU3RhdGUuc2V0QmxlbmRFcXVhdGlvbkluZGV4ZWQo
bW9kZSwgbW9kZSwgYnVmKTsKKworICAgIG1TdGF0ZUNhY2hlLm9uQmxlbmRFcXVhdGlvbkNoYW5n
ZSh0aGlzKTsKIH0KIAogdm9pZCBDb250ZXh0OjpibGVuZEVxdWF0aW9uU2VwYXJhdGUoR0xlbnVt
IG1vZGVSR0IsIEdMZW51bSBtb2RlQWxwaGEpCkBAIC02NjExLDcgKzY2NjQsNyBAQCB2b2lkIENv
bnRleHQ6OmRyYXdBcnJheXNJbnN0YW5jZWRCYXNlSW5zdGFuY2UoUHJpbWl0aXZlTW9kZSBtb2Rl
LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkg
aW5zdGFuY2VDb3VudCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBHTHVpbnQgYmFzZUluc3RhbmNlKQogewotICAgIGlmIChub29wRHJhdyhtb2RlLCBjb3Vu
dCkpCisgICAgaWYgKG5vb3BEcmF3SW5zdGFuY2VkKG1vZGUsIGNvdW50LCBpbnN0YW5jZUNvdW50
KSkKICAgICB7CiAgICAgICAgIEFOR0xFX0NPTlRFWFRfVFJZKG1JbXBsZW1lbnRhdGlvbi0+aGFu
ZGxlTm9vcERyYXdFdmVudCgpKTsKICAgICAgICAgcmV0dXJuOwpAQCAtNjY0MCwxMSArNjY5Mywx
MSBAQCB2b2lkIENvbnRleHQ6OmRyYXdFbGVtZW50c0luc3RhbmNlZEJhc2VWZXJ0ZXhCYXNlSW5z
dGFuY2UoUHJpbWl0aXZlTW9kZSBtb2RlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgY291bnQsCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRHJhd0VsZW1lbnRz
VHlwZSB0eXBlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGNvbnN0IEdMdm9pZCAqaW5kaWNlcywKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHNpemVpIGluc3RhbmNlQ291
bnRzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIEdMc2l6ZWkgaW5zdGFuY2VDb3VudCwKICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTGludCBiYXNlVmVydGV4LAogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMdWlu
dCBiYXNlSW5zdGFuY2UpCiB7Ci0gICAgaWYgKG5vb3BEcmF3KG1vZGUsIGNvdW50KSkKKyAgICBp
ZiAobm9vcERyYXdJbnN0YW5jZWQobW9kZSwgY291bnQsIGluc3RhbmNlQ291bnQpKQogICAgIHsK
ICAgICAgICAgQU5HTEVfQ09OVEVYVF9UUlkobUltcGxlbWVudGF0aW9uLT5oYW5kbGVOb29wRHJh
d0V2ZW50KCkpOwogICAgICAgICByZXR1cm47CkBAIC02NjY4LDcgKzY3MjEsNyBAQCB2b2lkIENv
bnRleHQ6OmRyYXdFbGVtZW50c0luc3RhbmNlZEJhc2VWZXJ0ZXhCYXNlSW5zdGFuY2UoUHJpbWl0
aXZlTW9kZSBtb2RlLAogICAgIHJ4OjpSZXNldEJhc2VWZXJ0ZXhCYXNlSW5zdGFuY2UgcmVzZXRV
bmlmb3Jtcyhwcm9ncmFtT2JqZWN0LCBoYXNCYXNlVmVydGV4LCBoYXNCYXNlSW5zdGFuY2UpOwog
CiAgICAgQU5HTEVfQ09OVEVYVF9UUlkobUltcGxlbWVudGF0aW9uLT5kcmF3RWxlbWVudHNJbnN0
YW5jZWRCYXNlVmVydGV4QmFzZUluc3RhbmNlKAotICAgICAgICB0aGlzLCBtb2RlLCBjb3VudCwg
dHlwZSwgaW5kaWNlcywgaW5zdGFuY2VDb3VudHMsIGJhc2VWZXJ0ZXgsIGJhc2VJbnN0YW5jZSkp
OworICAgICAgICB0aGlzLCBtb2RlLCBjb3VudCwgdHlwZSwgaW5kaWNlcywgaW5zdGFuY2VDb3Vu
dCwgYmFzZVZlcnRleCwgYmFzZUluc3RhbmNlKSk7CiB9CiAKIHZvaWQgQ29udGV4dDo6bXVsdGlE
cmF3QXJyYXlzSW5zdGFuY2VkQmFzZUluc3RhbmNlKFByaW1pdGl2ZU1vZGUgbW9kZSwKQEAgLTkz
NjAsNiArOTQxMywxOTUgQEAgdm9pZCBDb250ZXh0OjpmaW5pc2hJbW11dGFibGUoKSBjb25zdAog
ICAgIEFOR0xFX0NPTlRFWFRfVFJZKG1JbXBsZW1lbnRhdGlvbi0+ZmluaXNoKHRoaXMpKTsKIH0K
IAordm9pZCBDb250ZXh0OjpiZWdpblBlcmZNb25pdG9yKEdMdWludCBtb25pdG9yKSB7fQorCit2
b2lkIENvbnRleHQ6OmRlbGV0ZVBlcmZNb25pdG9ycyhHTHNpemVpIG4sIEdMdWludCAqbW9uaXRv
cnMpIHt9CisKK3ZvaWQgQ29udGV4dDo6ZW5kUGVyZk1vbml0b3IoR0x1aW50IG1vbml0b3IpIHt9
CisKK3ZvaWQgQ29udGV4dDo6Z2VuUGVyZk1vbml0b3JzKEdMc2l6ZWkgbiwgR0x1aW50ICptb25p
dG9ycykKK3sKKyAgICBmb3IgKEdMc2l6ZWkgbW9uaXRvckluZGV4ID0gMDsgbW9uaXRvckluZGV4
IDwgbjsgKyttb25pdG9ySW5kZXgpCisgICAgeworICAgICAgICBtb25pdG9yc1tuXSA9IHN0YXRp
Y19jYXN0PEdMdWludD4obW9uaXRvckluZGV4KTsKKyAgICB9Cit9CisKK3ZvaWQgQ29udGV4dDo6
Z2V0UGVyZk1vbml0b3JDb3VudGVyRGF0YShHTHVpbnQgbW9uaXRvciwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBHTGVudW0gcG5hbWUsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBkYXRhU2l6ZSwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVpbnQgKmRhdGEsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgR0xpbnQgKmJ5dGVzV3JpdHRlbikKK3sKKyAgICB1c2lu
ZyBuYW1lc3BhY2UgYW5nbGU7CisgICAgY29uc3QgUGVyZk1vbml0b3JDb3VudGVyR3JvdXBzICZw
ZXJmTW9uaXRvckdyb3VwcyA9IG1JbXBsZW1lbnRhdGlvbi0+Z2V0UGVyZk1vbml0b3JDb3VudGVy
cygpOworICAgIEdMaW50IGJ5dGVDb3VudCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgPSAwOworICAgIHN3aXRjaCAocG5hbWUpCisgICAgeworICAgICAgICBjYXNlIEdMX1BFUkZN
T05fUkVTVUxUX0FWQUlMQUJMRV9BTUQ6CisgICAgICAgIHsKKyAgICAgICAgICAgICpkYXRhID0g
R0xfVFJVRTsKKyAgICAgICAgICAgIGJ5dGVDb3VudCArPSBzaXplb2YoR0x1aW50KTsKKyAgICAg
ICAgICAgIGJyZWFrOworICAgICAgICB9CisgICAgICAgIGNhc2UgR0xfUEVSRk1PTl9SRVNVTFRf
U0laRV9BTUQ6CisgICAgICAgIHsKKyAgICAgICAgICAgIEdMdWludCByZXN1bHRTaXplID0gMDsK
KyAgICAgICAgICAgIGZvciAoY29uc3QgUGVyZk1vbml0b3JDb3VudGVyR3JvdXAgJmdyb3VwIDog
cGVyZk1vbml0b3JHcm91cHMpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgcmVzdWx0
U2l6ZSArPSBzaXplb2YoUGVyZk1vbml0b3JUcmlwbGV0KSAqIGdyb3VwLmNvdW50ZXJzLnNpemUo
KTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgICpkYXRhID0gcmVzdWx0U2l6ZTsKKyAgICAg
ICAgICAgIGJ5dGVDb3VudCArPSBzaXplb2YoR0x1aW50KTsKKyAgICAgICAgICAgIGJyZWFrOwor
ICAgICAgICB9CisgICAgICAgIGNhc2UgR0xfUEVSRk1PTl9SRVNVTFRfQU1EOgorICAgICAgICB7
CisgICAgICAgICAgICBQZXJmTW9uaXRvclRyaXBsZXQgKnJlc3VsdHNPdXQgPSByZWludGVycHJl
dF9jYXN0PFBlcmZNb25pdG9yVHJpcGxldCAqPihkYXRhKTsKKyAgICAgICAgICAgIEdMc2l6ZWkg
bWF4UmVzdWx0cyAgICAgICAgICAgICA9IGRhdGFTaXplIC8gKDMgKiBzaXplb2YoR0x1aW50KSk7
CisgICAgICAgICAgICBHTHNpemVpIHJlc3VsdENvdW50ICAgICAgICAgICAgPSAwOworICAgICAg
ICAgICAgZm9yIChzaXplX3QgZ3JvdXBJbmRleCA9IDA7CisgICAgICAgICAgICAgICAgIGdyb3Vw
SW5kZXggPCBwZXJmTW9uaXRvckdyb3Vwcy5zaXplKCkgJiYgcmVzdWx0Q291bnQgPCBtYXhSZXN1
bHRzOyArK2dyb3VwSW5kZXgpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgY29uc3Qg
UGVyZk1vbml0b3JDb3VudGVyR3JvdXAgJmdyb3VwID0gcGVyZk1vbml0b3JHcm91cHNbZ3JvdXBJ
bmRleF07CisgICAgICAgICAgICAgICAgZm9yIChzaXplX3QgY291bnRlckluZGV4ID0gMDsKKyAg
ICAgICAgICAgICAgICAgICAgIGNvdW50ZXJJbmRleCA8IGdyb3VwLmNvdW50ZXJzLnNpemUoKSAm
JiByZXN1bHRDb3VudCA8IG1heFJlc3VsdHM7CisgICAgICAgICAgICAgICAgICAgICArK2NvdW50
ZXJJbmRleCkKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIGNvbnN0IFBl
cmZNb25pdG9yQ291bnRlciAmY291bnRlciA9IGdyb3VwLmNvdW50ZXJzW2NvdW50ZXJJbmRleF07
CisgICAgICAgICAgICAgICAgICAgIFBlcmZNb25pdG9yVHJpcGxldCAmdHJpcGxldCAgICAgICA9
IHJlc3VsdHNPdXRbcmVzdWx0Q291bnQrK107CisgICAgICAgICAgICAgICAgICAgIHRyaXBsZXQu
Y291bnRlciAgICAgICAgICAgICAgICAgICA9IHN0YXRpY19jYXN0PEdMdWludD4oY291bnRlcklu
ZGV4KTsKKyAgICAgICAgICAgICAgICAgICAgdHJpcGxldC5ncm91cCAgICAgICAgICAgICAgICAg
ICAgID0gc3RhdGljX2Nhc3Q8R0x1aW50Pihncm91cEluZGV4KTsKKyAgICAgICAgICAgICAgICAg
ICAgdHJpcGxldC52YWx1ZSAgICAgICAgICAgICAgICAgICAgID0gY291bnRlci52YWx1ZTsKKyAg
ICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgICAgICBieXRlQ291bnQgKz0g
c2l6ZW9mKFBlcmZNb25pdG9yVHJpcGxldCkgKiByZXN1bHRDb3VudDsKKyAgICAgICAgICAgIGJy
ZWFrOworICAgICAgICB9CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICBVTlJFQUNIQUJM
RSgpOworICAgIH0KKworICAgIGlmIChieXRlc1dyaXR0ZW4pCisgICAgeworICAgICAgICAqYnl0
ZXNXcml0dGVuID0gYnl0ZUNvdW50OworICAgIH0KK30KKwordm9pZCBDb250ZXh0OjpnZXRQZXJm
TW9uaXRvckNvdW50ZXJJbmZvKEdMdWludCBncm91cCwgR0x1aW50IGNvdW50ZXIsIEdMZW51bSBw
bmFtZSwgdm9pZCAqZGF0YSkKK3sKKyAgICB1c2luZyBuYW1lc3BhY2UgYW5nbGU7CisgICAgY29u
c3QgUGVyZk1vbml0b3JDb3VudGVyR3JvdXBzICZwZXJmTW9uaXRvckdyb3VwcyA9IG1JbXBsZW1l
bnRhdGlvbi0+Z2V0UGVyZk1vbml0b3JDb3VudGVycygpOworICAgIEFTU0VSVChncm91cCA8IHBl
cmZNb25pdG9yR3JvdXBzLnNpemUoKSk7CisgICAgY29uc3QgUGVyZk1vbml0b3JDb3VudGVycyAm
Y291bnRlcnMgPSBwZXJmTW9uaXRvckdyb3Vwc1tncm91cF0uY291bnRlcnM7CisgICAgQVNTRVJU
KGNvdW50ZXIgPCBjb3VudGVycy5zaXplKCkpOworCisgICAgc3dpdGNoIChwbmFtZSkKKyAgICB7
CisgICAgICAgIGNhc2UgR0xfQ09VTlRFUl9UWVBFX0FNRDoKKyAgICAgICAgeworICAgICAgICAg
ICAgR0xlbnVtICpkYXRhT3V0ID0gcmVpbnRlcnByZXRfY2FzdDxHTGVudW0gKj4oZGF0YSk7Cisg
ICAgICAgICAgICAqZGF0YU91dCAgICAgICAgPSBHTF9VTlNJR05FRF9JTlQ7CisgICAgICAgICAg
ICBicmVhazsKKyAgICAgICAgfQorICAgICAgICBjYXNlIEdMX0NPVU5URVJfUkFOR0VfQU1EOgor
ICAgICAgICB7CisgICAgICAgICAgICBHTHVpbnQgKmRhdGFPdXQgPSByZWludGVycHJldF9jYXN0
PEdMdWludCAqPihkYXRhKTsKKyAgICAgICAgICAgIGRhdGFPdXRbMF0gICAgICA9IDA7CisgICAg
ICAgICAgICBkYXRhT3V0WzFdICAgICAgPSBzdGQ6Om51bWVyaWNfbGltaXRzPEdMdWludD46Om1h
eCgpOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KKyAgICAgICAgZGVmYXVsdDoKKyAg
ICAgICAgICAgIFVOUkVBQ0hBQkxFKCk7CisgICAgfQorfQorCit2b2lkIENvbnRleHQ6OmdldFBl
cmZNb25pdG9yQ291bnRlclN0cmluZyhHTHVpbnQgZ3JvdXAsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBHTHVpbnQgY291bnRlciwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgYnVmU2l6ZSwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgKmxlbmd0aCwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMY2hhciAqY291bnRlclN0cmluZykKK3sK
KyAgICB1c2luZyBuYW1lc3BhY2UgYW5nbGU7CisgICAgY29uc3QgUGVyZk1vbml0b3JDb3VudGVy
R3JvdXBzICZwZXJmTW9uaXRvckdyb3VwcyA9IG1JbXBsZW1lbnRhdGlvbi0+Z2V0UGVyZk1vbml0
b3JDb3VudGVycygpOworICAgIEFTU0VSVChncm91cCA8IHBlcmZNb25pdG9yR3JvdXBzLnNpemUo
KSk7CisgICAgY29uc3QgUGVyZk1vbml0b3JDb3VudGVycyAmY291bnRlcnMgPSBwZXJmTW9uaXRv
ckdyb3Vwc1tncm91cF0uY291bnRlcnM7CisgICAgQVNTRVJUKGNvdW50ZXIgPCBjb3VudGVycy5z
aXplKCkpOworICAgIEdldFBlcmZNb25pdG9yU3RyaW5nKGNvdW50ZXJzW2NvdW50ZXJdLm5hbWUs
IGJ1ZlNpemUsIGxlbmd0aCwgY291bnRlclN0cmluZyk7Cit9CisKK3ZvaWQgQ29udGV4dDo6Z2V0
UGVyZk1vbml0b3JDb3VudGVycyhHTHVpbnQgZ3JvdXAsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgR0xpbnQgKm51bUNvdW50ZXJzLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIEdMaW50ICptYXhBY3RpdmVDb3VudGVycywKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBHTHNpemVpIGNvdW50ZXJTaXplLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIEdMdWludCAqY291bnRlcnMpCit7CisgICAgdXNpbmcg
bmFtZXNwYWNlIGFuZ2xlOworICAgIGNvbnN0IFBlcmZNb25pdG9yQ291bnRlckdyb3VwcyAmcGVy
Zk1vbml0b3JHcm91cHMgPSBtSW1wbGVtZW50YXRpb24tPmdldFBlcmZNb25pdG9yQ291bnRlcnMo
KTsKKyAgICBBU1NFUlQoZ3JvdXAgPCBwZXJmTW9uaXRvckdyb3Vwcy5zaXplKCkpOworICAgIGNv
bnN0IFBlcmZNb25pdG9yQ291bnRlcnMgJmdyb3VwQ291bnRlcnMgPSBwZXJmTW9uaXRvckdyb3Vw
c1tncm91cF0uY291bnRlcnM7CisKKyAgICBpZiAobnVtQ291bnRlcnMpCisgICAgeworICAgICAg
ICAqbnVtQ291bnRlcnMgPSBzdGF0aWNfY2FzdDxHTGludD4oZ3JvdXBDb3VudGVycy5zaXplKCkp
OworICAgIH0KKworICAgIGlmIChtYXhBY3RpdmVDb3VudGVycykKKyAgICB7CisgICAgICAgICpt
YXhBY3RpdmVDb3VudGVycyA9IHN0YXRpY19jYXN0PEdMaW50Pihncm91cENvdW50ZXJzLnNpemUo
KSk7CisgICAgfQorCisgICAgaWYgKGNvdW50ZXJzKQorICAgIHsKKyAgICAgICAgR0xzaXplaSBt
YXhDb3VudGVySW5kZXggPSBzdGQ6Om1pbihjb3VudGVyU2l6ZSwgc3RhdGljX2Nhc3Q8R0xzaXpl
aT4oZ3JvdXBDb3VudGVycy5zaXplKCkpKTsKKyAgICAgICAgZm9yIChHTHNpemVpIGNvdW50ZXJJ
bmRleCA9IDA7IGNvdW50ZXJJbmRleCA8IG1heENvdW50ZXJJbmRleDsgKytjb3VudGVySW5kZXgp
CisgICAgICAgIHsKKyAgICAgICAgICAgIGNvdW50ZXJzW2NvdW50ZXJJbmRleF0gPSBzdGF0aWNf
Y2FzdDxHTHVpbnQ+KGNvdW50ZXJJbmRleCk7CisgICAgICAgIH0KKyAgICB9Cit9CisKK3ZvaWQg
Q29udGV4dDo6Z2V0UGVyZk1vbml0b3JHcm91cFN0cmluZyhHTHVpbnQgZ3JvdXAsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBidWZTaXplLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgKmxlbmd0aCwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTGNoYXIgKmdyb3VwU3RyaW5nKQor
eworICAgIHVzaW5nIG5hbWVzcGFjZSBhbmdsZTsKKyAgICBjb25zdCBQZXJmTW9uaXRvckNvdW50
ZXJHcm91cHMgJnBlcmZNb25pdG9yR3JvdXBzID0gbUltcGxlbWVudGF0aW9uLT5nZXRQZXJmTW9u
aXRvckNvdW50ZXJzKCk7CisgICAgQVNTRVJUKGdyb3VwIDwgcGVyZk1vbml0b3JHcm91cHMuc2l6
ZSgpKTsKKyAgICBHZXRQZXJmTW9uaXRvclN0cmluZyhwZXJmTW9uaXRvckdyb3Vwc1tncm91cF0u
bmFtZSwgYnVmU2l6ZSwgbGVuZ3RoLCBncm91cFN0cmluZyk7Cit9CisKK3ZvaWQgQ29udGV4dDo6
Z2V0UGVyZk1vbml0b3JHcm91cHMoR0xpbnQgKm51bUdyb3VwcywgR0xzaXplaSBncm91cHNTaXpl
LCBHTHVpbnQgKmdyb3VwcykKK3sKKyAgICB1c2luZyBuYW1lc3BhY2UgYW5nbGU7CisgICAgY29u
c3QgUGVyZk1vbml0b3JDb3VudGVyR3JvdXBzICZwZXJmTW9uaXRvckdyb3VwcyA9IG1JbXBsZW1l
bnRhdGlvbi0+Z2V0UGVyZk1vbml0b3JDb3VudGVycygpOworCisgICAgaWYgKG51bUdyb3VwcykK
KyAgICB7CisgICAgICAgICpudW1Hcm91cHMgPSBzdGF0aWNfY2FzdDxHTGludD4ocGVyZk1vbml0
b3JHcm91cHMuc2l6ZSgpKTsKKyAgICB9CisKKyAgICBHTHVpbnQgbWF4R3JvdXBJbmRleCA9Cisg
ICAgICAgIHN0ZDo6bWluPEdMdWludD4oZ3JvdXBzU2l6ZSwgc3RhdGljX2Nhc3Q8R0x1aW50Pihw
ZXJmTW9uaXRvckdyb3Vwcy5zaXplKCkpKTsKKyAgICBmb3IgKEdMdWludCBncm91cEluZGV4ID0g
MDsgZ3JvdXBJbmRleCA8IG1heEdyb3VwSW5kZXg7ICsrZ3JvdXBJbmRleCkKKyAgICB7CisgICAg
ICAgIGdyb3Vwc1tncm91cEluZGV4XSA9IGdyb3VwSW5kZXg7CisgICAgfQorfQorCit2b2lkIENv
bnRleHQ6OnNlbGVjdFBlcmZNb25pdG9yQ291bnRlcnMoR0x1aW50IG1vbml0b3IsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xib29sZWFuIGVuYWJsZSwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVpbnQgZ3JvdXAsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xpbnQgbnVtQ291bnRlcnMsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50ICpjb3VudGVyTGlzdCkK
K3t9CisKK2NvbnN0IGFuZ2xlOjpQZXJmTW9uaXRvckNvdW50ZXJHcm91cHMgJkNvbnRleHQ6Omdl
dFBlcmZNb25pdG9yQ291bnRlckdyb3VwcygpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1JbXBsZW1l
bnRhdGlvbi0+Z2V0UGVyZk1vbml0b3JDb3VudGVycygpOworfQorCiAvLyBFcnJvclNldCBpbXBs
ZW1lbnRhdGlvbi4KIEVycm9yU2V0OjpFcnJvclNldChDb250ZXh0ICpjb250ZXh0KSA6IG1Db250
ZXh0KGNvbnRleHQpIHt9CiAKQEAgLTk2NTcsNiArOTg5OSwxMSBAQCB2b2lkIFN0YXRlQ2FjaGU6
Om9uQmxlbmRGdW5jSW5kZXhlZENoYW5nZShDb250ZXh0ICpjb250ZXh0KQogICAgIHVwZGF0ZUJh
c2ljRHJhd1N0YXRlc0Vycm9yKCk7CiB9CiAKK3ZvaWQgU3RhdGVDYWNoZTo6b25CbGVuZEVxdWF0
aW9uQ2hhbmdlKENvbnRleHQgKmNvbnRleHQpCit7CisgICAgdXBkYXRlQmFzaWNEcmF3U3RhdGVz
RXJyb3IoKTsKK30KKwogdm9pZCBTdGF0ZUNhY2hlOjpzZXRWYWxpZERyYXdNb2Rlcyhib29sIHBv
aW50c09LLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sIGxpbmVzT0ss
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wgdHJpc09LLApkaWZmIC0t
Z2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL0NvbnRleHQuaCBiL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9Db250ZXh0LmgKaW5kZXggYjNlMGNj
ZDM5ZDA5NTAxODZkMjUwZGFkZTZkNWQ4MTk5MjU5MjBmYS4uMmE1NzAyZTgzOGY0NGYxMTg5MzFl
ZGYzYmJhNDcwODQ3NzFiMmRmMiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUv
c3JjL2xpYkFOR0xFL0NvbnRleHQuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
bGliQU5HTEUvQ29udGV4dC5oCkBAIC0yNzUsNiArMjc1LDcgQEAgY2xhc3MgU3RhdGVDYWNoZSBm
aW5hbCA6IGFuZ2xlOjpOb25Db3B5YWJsZQogICAgIHZvaWQgb25Db2xvck1hc2tDaGFuZ2UoQ29u
dGV4dCAqY29udGV4dCk7CiAgICAgdm9pZCBvbkJ1ZmZlckJpbmRpbmdDaGFuZ2UoQ29udGV4dCAq
Y29udGV4dCk7CiAgICAgdm9pZCBvbkJsZW5kRnVuY0luZGV4ZWRDaGFuZ2UoQ29udGV4dCAqY29u
dGV4dCk7CisgICAgdm9pZCBvbkJsZW5kRXF1YXRpb25DaGFuZ2UoQ29udGV4dCAqY29udGV4dCk7
CiAKICAgcHJpdmF0ZToKICAgICAvLyBDYWNoZSB1cGRhdGUgZnVuY3Rpb25zLgpAQCAtNjQ5LDYg
KzY1MCw4IEBAIGNsYXNzIENvbnRleHQgZmluYWwgOiBwdWJsaWMgZWdsOjpMYWJlbGVkT2JqZWN0
LCBhbmdsZTo6Tm9uQ29weWFibGUsIHB1YmxpYyBhbmdsCiAgICAgLy8gTmVlZGVkIGJ5IGNhcHR1
cmUgc2VyaWFsaXphdGlvbiBsb2dpYyB0aGF0IHdvcmtzIHdpdGggYSAiY29uc3QiIENvbnRleHQg
cG9pbnRlci4KICAgICB2b2lkIGZpbmlzaEltbXV0YWJsZSgpIGNvbnN0OwogCisgICAgY29uc3Qg
YW5nbGU6OlBlcmZNb25pdG9yQ291bnRlckdyb3VwcyAmZ2V0UGVyZk1vbml0b3JDb3VudGVyR3Jv
dXBzKCkgY29uc3Q7CisKICAgcHJpdmF0ZToKICAgICB2b2lkIGluaXRpYWxpemVEZWZhdWx0UmVz
b3VyY2VzKCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJB
TkdMRS9Db250ZXh0LmlubC5oIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xF
L0NvbnRleHQuaW5sLmgKaW5kZXggYzgxMGM1ZjY1MjYyNzVjYjFjMjliZmYwNGUxMDRmMTdhM2Qz
ZThjZS4uM2EwNTczZDMwN2YyMGY5ZmQyMzE0OGU3MzhkNmRjOGJjNThjOWQ0OCAxMDA2NDQKLS0t
IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL0NvbnRleHQuaW5sLmgKKysr
IGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL0NvbnRleHQuaW5sLmgKQEAg
LTE2MCw2ICsxNjAsMTMgQEAgQU5HTEVfSU5MSU5FIHZvaWQgQ29udGV4dDo6YmluZEJ1ZmZlcihC
dWZmZXJCaW5kaW5nIHRhcmdldCwgQnVmZmVySUQgYnVmZmVyKQogewogICAgIEJ1ZmZlciAqYnVm
ZmVyT2JqZWN0ID0KICAgICAgICAgbVN0YXRlLm1CdWZmZXJNYW5hZ2VyLT5jaGVja0J1ZmZlckFs
bG9jYXRpb24obUltcGxlbWVudGF0aW9uLmdldCgpLCBidWZmZXIpOworCisgICAgLy8gRWFybHkg
cmV0dXJuIGlmIHJlYmluZGluZyB0aGUgc2FtZSBidWZmZXIKKyAgICBpZiAoYnVmZmVyT2JqZWN0
ID09IG1TdGF0ZS5nZXRUYXJnZXRCdWZmZXIodGFyZ2V0KSkKKyAgICB7CisgICAgICAgIHJldHVy
bjsKKyAgICB9CisKICAgICBtU3RhdGUuc2V0QnVmZmVyQmluZGluZyh0aGlzLCB0YXJnZXQsIGJ1
ZmZlck9iamVjdCk7CiAgICAgbVN0YXRlQ2FjaGUub25CdWZmZXJCaW5kaW5nQ2hhbmdlKHRoaXMp
OwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL0Nv
bnRleHRfZ2xlc19leHRfYXV0b2dlbi5oIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xp
YkFOR0xFL0NvbnRleHRfZ2xlc19leHRfYXV0b2dlbi5oCmluZGV4IDQ2NDE1MzEzM2ViY2RiYzQy
ZDE5N2NkNGFkYzJhZDI2NDNhMjEzNDkuLmQ3ZmRlNjJkNTI3OGNiNTM3NmE4ODAxZmRlNTQ4Yjc0
MmNhNGJiYjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdM
RS9Db250ZXh0X2dsZXNfZXh0X2F1dG9nZW4uaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zcmMvbGliQU5HTEUvQ29udGV4dF9nbGVzX2V4dF9hdXRvZ2VuLmgKQEAgLTQ3LDYgKzQ3LDIz
IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgLyog
R0xFUzIrIEV4dGVuc2lvbnMgKi8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgLyogR0xfQU1EX3BlcmZvcm1hbmNlX21vbml0
b3IgKi8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBcCisgICAgdm9pZCBiZWdpblBlcmZNb25pdG9yKEdMdWludCBtb25pdG9yKTsg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBc
CisgICAgdm9pZCBkZWxldGVQZXJmTW9uaXRvcnMoR0xzaXplaSBuLCBHTHVpbnQgKm1vbml0b3Jz
KTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgdm9pZCBl
bmRQZXJmTW9uaXRvcihHTHVpbnQgbW9uaXRvcik7ICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgdm9pZCBnZW5QZXJmTW9uaXRv
cnMoR0xzaXplaSBuLCBHTHVpbnQgKm1vbml0b3JzKTsgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBcCisgICAgdm9pZCBnZXRQZXJmTW9uaXRvckNvdW50ZXJEYXRh
KEdMdWludCBtb25pdG9yLCBHTGVudW0gcG5hbWUsIEdMc2l6ZWkgZGF0YVNpemUsIEdMdWludCAq
ZGF0YSwgICBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMaW50ICpieXRl
c1dyaXR0ZW4pOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisg
ICAgdm9pZCBnZXRQZXJmTW9uaXRvckNvdW50ZXJJbmZvKEdMdWludCBncm91cCwgR0x1aW50IGNv
dW50ZXIsIEdMZW51bSBwbmFtZSwgdm9pZCAqZGF0YSk7ICAgICAgICBcCisgICAgdm9pZCBnZXRQ
ZXJmTW9uaXRvckNvdW50ZXJTdHJpbmcoR0x1aW50IGdyb3VwLCBHTHVpbnQgY291bnRlciwgR0xz
aXplaSBidWZTaXplLCAgICAgICAgICAgICAgICBcCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgR0xzaXplaSAqbGVuZ3RoLCBHTGNoYXIgKmNvdW50ZXJTdHJpbmcpOyAgICAg
ICAgICAgICAgICAgICAgICBcCisgICAgdm9pZCBnZXRQZXJmTW9uaXRvckNvdW50ZXJzKEdMdWlu
dCBncm91cCwgR0xpbnQgKm51bUNvdW50ZXJzLCBHTGludCAqbWF4QWN0aXZlQ291bnRlcnMsICAg
ICAgICBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgY291bnRlclNp
emUsIEdMdWludCAqY291bnRlcnMpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAg
dm9pZCBnZXRQZXJmTW9uaXRvckdyb3VwU3RyaW5nKEdMdWludCBncm91cCwgR0xzaXplaSBidWZT
aXplLCBHTHNpemVpICpsZW5ndGgsICAgICAgICAgICAgICAgICBcCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIEdMY2hhciAqZ3JvdXBTdHJpbmcpOyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgdm9pZCBnZXRQZXJmTW9uaXRvckdyb3Vw
cyhHTGludCAqbnVtR3JvdXBzLCBHTHNpemVpIGdyb3Vwc1NpemUsIEdMdWludCAqZ3JvdXBzKTsg
ICAgICAgICAgICAgICBcCisgICAgdm9pZCBzZWxlY3RQZXJmTW9uaXRvckNvdW50ZXJzKEdMdWlu
dCBtb25pdG9yLCBHTGJvb2xlYW4gZW5hYmxlLCBHTHVpbnQgZ3JvdXAsICAgICAgICAgICAgICAg
ICBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMaW50IG51bUNvdW50ZXJz
LCBHTHVpbnQgKmNvdW50ZXJMaXN0KTsgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgLyog
R0xfQU5EUk9JRF9leHRlbnNpb25fcGFja19lczMxYSAqLyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgLyogR0xfQU5HTEVfZGVw
dGhfdGV4dHVyZSAqLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgLyogR0xfQU5HTEVfZnJhbWVidWZmZXJfYmxp
dCAqLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBcCkBAIC0zMTAsNyArMzI3LDcgQEAKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgR0xzaXplaSBpbnN0YW5jZUNvdW50LCBHTHVpbnQgYmFzZUluc3Rh
bmNlKTsgICAgICAgICAgICAgIFwKICAgICB2b2lkIGRyYXdFbGVtZW50c0luc3RhbmNlZEJhc2VW
ZXJ0ZXhCYXNlSW5zdGFuY2UoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFwKICAgICAgICAgUHJpbWl0aXZlTW9kZSBtb2RlUGFja2VkLCBHTHNpemVpIGNvdW50
LCBEcmF3RWxlbWVudHNUeXBlIHR5cGVQYWNrZWQsICAgICAgICAgICAgICAgICAgICAgIFwKLSAg
ICAgICAgY29uc3QgR0x2b2lkICppbmRpY2VzLCBHTHNpemVpIGluc3RhbmNlQ291bnRzLCBHTGlu
dCBiYXNlVmVydGV4LCBHTHVpbnQgYmFzZUluc3RhbmNlKTsgICAgIFwKKyAgICAgICAgY29uc3Qg
R0x2b2lkICppbmRpY2VzLCBHTHNpemVpIGluc3RhbmNlQ291bnQsIEdMaW50IGJhc2VWZXJ0ZXgs
IEdMdWludCBiYXNlSW5zdGFuY2UpOyAgICAgIFwKICAgICB2b2lkIG11bHRpRHJhd0FycmF5c0lu
c3RhbmNlZEJhc2VJbnN0YW5jZSggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFwKICAgICAgICAgUHJpbWl0aXZlTW9kZSBtb2RlUGFja2VkLCBjb25z
dCBHTGludCAqZmlyc3RzLCBjb25zdCBHTHNpemVpICpjb3VudHMsICAgICAgICAgICAgICAgICAg
ICAgIFwKICAgICAgICAgY29uc3QgR0xzaXplaSAqaW5zdGFuY2VDb3VudHMsIGNvbnN0IEdMdWlu
dCAqYmFzZUluc3RhbmNlcywgR0xzaXplaSBkcmF3Y291bnQpOyAgICAgICAgICAgIFwKZGlmZiAt
LWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9EaXNwbGF5LmNwcCBi
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9EaXNwbGF5LmNwcAppbmRleCBi
NTNjNzBjNzNhOTllNjY1M2MwODcyYTUxN2E2ZThlZDEzMDg2NGUzLi44MGY0ZWUwOTliMWMwNzlm
YmFlYzc5ODlhZTMzNDkyMTM2MjkwOWExIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9zcmMvbGliQU5HTEUvRGlzcGxheS5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvc3JjL2xpYkFOR0xFL0Rpc3BsYXkuY3BwCkBAIC0xMTksMTMgKzExOSwxNyBAQCBzdHJ1Y3Qg
QU5HTEVQbGF0Zm9ybURpc3BsYXkKICAgICAgICAgICBkZXZpY2VJZExvdyhkZXZpY2VJZExvdykK
ICAgICB7fQogCi0gICAgYXV0byB0aWUoKSBjb25zdCB7IHJldHVybiBzdGQ6OnRpZShuYXRpdmVE
aXNwbGF5VHlwZSwgcG93ZXJQcmVmZXJlbmNlLCBwbGF0Zm9ybUFOR0xFVHlwZSwgZGV2aWNlSWRI
aWdoLCBkZXZpY2VJZExvdyk7IH0KKyAgICBhdXRvIHRpZSgpIGNvbnN0CisgICAgeworICAgICAg
ICByZXR1cm4gc3RkOjp0aWUobmF0aXZlRGlzcGxheVR5cGUsIHBvd2VyUHJlZmVyZW5jZSwgcGxh
dGZvcm1BTkdMRVR5cGUsIGRldmljZUlkSGlnaCwKKyAgICAgICAgICAgICAgICAgICAgICAgIGRl
dmljZUlkTG93KTsKKyAgICB9CiAKLSAgICBFR0xOYXRpdmVEaXNwbGF5VHlwZSBuYXRpdmVEaXNw
bGF5VHlwZSB7IEVHTF9ERUZBVUxUX0RJU1BMQVkgfTsKLSAgICBFR0xBdHRyaWIgcG93ZXJQcmVm
ZXJlbmNlIHsgRUdMX0xPV19QT1dFUl9BTkdMRSB9OwotICAgIEVHTEF0dHJpYiBwbGF0Zm9ybUFO
R0xFVHlwZSB7IEVHTF9QTEFURk9STV9BTkdMRV9UWVBFX0RFRkFVTFRfQU5HTEUgfTsKLSAgICBF
R0xBdHRyaWIgZGV2aWNlSWRIaWdoIHsgMCB9OwotICAgIEVHTEF0dHJpYiBkZXZpY2VJZExvdyB7
IDAgfTsKKyAgICBFR0xOYXRpdmVEaXNwbGF5VHlwZSBuYXRpdmVEaXNwbGF5VHlwZXtFR0xfREVG
QVVMVF9ESVNQTEFZfTsKKyAgICBFR0xBdHRyaWIgcG93ZXJQcmVmZXJlbmNle0VHTF9MT1dfUE9X
RVJfQU5HTEV9OworICAgIEVHTEF0dHJpYiBwbGF0Zm9ybUFOR0xFVHlwZXtFR0xfUExBVEZPUk1f
QU5HTEVfVFlQRV9ERUZBVUxUX0FOR0xFfTsKKyAgICBFR0xBdHRyaWIgZGV2aWNlSWRIaWdoezB9
OworICAgIEVHTEF0dHJpYiBkZXZpY2VJZExvd3swfTsKIH07CiAKIGlubGluZSBib29sIG9wZXJh
dG9yPChjb25zdCBBTkdMRVBsYXRmb3JtRGlzcGxheSAmYSwgY29uc3QgQU5HTEVQbGF0Zm9ybURp
c3BsYXkgJmIpCkBAIC02OTMsNyArNjk3LDggQEAgRGlzcGxheSAqRGlzcGxheTo6R2V0RGlzcGxh
eUZyb21OYXRpdmVEaXNwbGF5KEVHTE5hdGl2ZURpc3BsYXlUeXBlIG5hdGl2ZURpc3BsYXkKICAg
ICBFR0xBdHRyaWIgZGV2aWNlSWRIaWdoID0gdXBkYXRlZEF0dHJpYk1hcC5nZXQoRUdMX1BMQVRG
T1JNX0FOR0xFX0RFVklDRV9JRF9ISUdIX0FOR0xFLCAwKTsKICAgICBFR0xBdHRyaWIgZGV2aWNl
SWRMb3cgID0gdXBkYXRlZEF0dHJpYk1hcC5nZXQoRUdMX1BMQVRGT1JNX0FOR0xFX0RFVklDRV9J
RF9MT1dfQU5HTEUsIDApOwogICAgIEFOR0xFUGxhdGZvcm1EaXNwbGF5TWFwICpkaXNwbGF5cyA9
IEdldEFOR0xFUGxhdGZvcm1EaXNwbGF5TWFwKCk7Ci0gICAgQU5HTEVQbGF0Zm9ybURpc3BsYXkg
ZGlzcGxheUtleShuYXRpdmVEaXNwbGF5LCBwb3dlclByZWZlcmVuY2UsIHBsYXRmb3JtQU5HTEVU
eXBlLCBkZXZpY2VJZEhpZ2gsIGRldmljZUlkTG93KTsKKyAgICBBTkdMRVBsYXRmb3JtRGlzcGxh
eSBkaXNwbGF5S2V5KG5hdGl2ZURpc3BsYXksIHBvd2VyUHJlZmVyZW5jZSwgcGxhdGZvcm1BTkdM
RVR5cGUsIGRldmljZUlkSGlnaCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGRldmljZUlkTG93KTsKICAgICBjb25zdCBhdXRvICZpdGVyID0gZGlzcGxheXMtPmZpbmQoZGlz
cGxheUtleSk7CiAgICAgaWYgKGl0ZXIgIT0gZGlzcGxheXMtPmVuZCgpKQogICAgIHsKQEAgLTg2
MCw4ICs4NjUsNyBAQCBEaXNwbGF5Ojp+RGlzcGxheSgpCiAgICAgICAgIEFOR0xFUGxhdGZvcm1E
aXNwbGF5TWFwICpkaXNwbGF5cyAgICAgID0gR2V0QU5HTEVQbGF0Zm9ybURpc3BsYXlNYXAoKTsK
ICAgICAgICAgQU5HTEVQbGF0Zm9ybURpc3BsYXlNYXA6Oml0ZXJhdG9yIGl0ZXIgPSBkaXNwbGF5
cy0+ZmluZChBTkdMRVBsYXRmb3JtRGlzcGxheSgKICAgICAgICAgICAgIG1TdGF0ZS5kaXNwbGF5
SWQsIG1BdHRyaWJ1dGVNYXAuZ2V0KEVHTF9QT1dFUl9QUkVGRVJFTkNFX0FOR0xFLCBFR0xfTE9X
X1BPV0VSX0FOR0xFKSwKLSAgICAgICAgICAgIG1BdHRyaWJ1dGVNYXAuZ2V0KEVHTF9QTEFURk9S
TV9BTkdMRV9UWVBFX0FOR0xFLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRUdMX1BM
QVRGT1JNX0FOR0xFX1RZUEVfREVGQVVMVF9BTkdMRSksCisgICAgICAgICAgICBtQXR0cmlidXRl
TWFwLmdldChFR0xfUExBVEZPUk1fQU5HTEVfVFlQRV9BTkdMRSwgRUdMX1BMQVRGT1JNX0FOR0xF
X1RZUEVfREVGQVVMVF9BTkdMRSksCiAgICAgICAgICAgICBtQXR0cmlidXRlTWFwLmdldChFR0xf
UExBVEZPUk1fQU5HTEVfREVWSUNFX0lEX0hJR0hfQU5HTEUsIDApLAogICAgICAgICAgICAgbUF0
dHJpYnV0ZU1hcC5nZXQoRUdMX1BMQVRGT1JNX0FOR0xFX0RFVklDRV9JRF9MT1dfQU5HTEUsIDAp
KSk7CiAgICAgICAgIGlmIChpdGVyICE9IGRpc3BsYXlzLT5lbmQoKSkKQEAgLTIzNjgsNCArMjM3
MiwzMyBAQCBFcnJvciBEaXNwbGF5OjpoYW5kbGVHUFVTd2l0Y2goKQogICAgIHJldHVybiBOb0Vy
cm9yKCk7CiB9CiAKK0Vycm9yIERpc3BsYXk6OmZvcmNlR1BVU3dpdGNoKEVHTGludCBncHVJREhp
Z2gsIEVHTGludCBncHVJRExvdykKK3sKKyAgICBBTkdMRV9UUlkobUltcGxlbWVudGF0aW9uLT5m
b3JjZUdQVVN3aXRjaChncHVJREhpZ2gsIGdwdUlETG93KSk7CisgICAgaW5pdFZlbmRvclN0cmlu
ZygpOworICAgIHJldHVybiBOb0Vycm9yKCk7Cit9CisKK2Jvb2wgRGlzcGxheTo6c3VwcG9ydHNE
bWFCdWZGb3JtYXQoRUdMaW50IGZvcm1hdCkgY29uc3QKK3sKKyAgICByZXR1cm4gbUltcGxlbWVu
dGF0aW9uLT5zdXBwb3J0c0RtYUJ1ZkZvcm1hdChmb3JtYXQpOworfQorCitFcnJvciBEaXNwbGF5
OjpxdWVyeURtYUJ1ZkZvcm1hdHMoRUdMaW50IG1heF9mb3JtYXRzLCBFR0xpbnQgKmZvcm1hdHMs
IEVHTGludCAqbnVtX2Zvcm1hdHMpCit7CisgICAgQU5HTEVfVFJZKG1JbXBsZW1lbnRhdGlvbi0+
cXVlcnlEbWFCdWZGb3JtYXRzKG1heF9mb3JtYXRzLCBmb3JtYXRzLCBudW1fZm9ybWF0cykpOwor
ICAgIHJldHVybiBOb0Vycm9yKCk7Cit9CisKK0Vycm9yIERpc3BsYXk6OnF1ZXJ5RG1hQnVmTW9k
aWZpZXJzKEVHTGludCBmb3JtYXQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBFR0xpbnQgbWF4X21vZGlmaWVycywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIEVHTHVpbnQ2NEtIUiAqbW9kaWZpZXJzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgRUdMQm9vbGVhbiAqZXh0ZXJuYWxfb25seSwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIEVHTGludCAqbnVtX21vZGlmaWVycykKK3sKKyAgICBBTkdMRV9UUlko
bUltcGxlbWVudGF0aW9uLT5xdWVyeURtYUJ1Zk1vZGlmaWVycyhmb3JtYXQsIG1heF9tb2RpZmll
cnMsIG1vZGlmaWVycywgZXh0ZXJuYWxfb25seSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBudW1fbW9kaWZpZXJzKSk7CisgICAgcmV0dXJuIE5v
RXJyb3IoKTsKK30KKwogfSAgLy8gbmFtZXNwYWNlIGVnbApkaWZmIC0tZ2l0IGEvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL0Rpc3BsYXkuaCBiL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3NyYy9saWJBTkdMRS9EaXNwbGF5LmgKaW5kZXggMTRlOWI1MmEyODY5ZmJmZGVmOWY2
ZWIxYTIzZDJiYWZhODhhOTI5MS4uN2U3YWJiNjk1ZmQ2YmUwN2E5YjVhNTcyMGZjOTVkYTgxMjI2
ZTQ4MiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL0Rp
c3BsYXkuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvRGlzcGxh
eS5oCkBAIC0zMDMsNiArMzAzLDcgQEAgY2xhc3MgRGlzcGxheSBmaW5hbCA6IHB1YmxpYyBMYWJl
bGVkT2JqZWN0LAogICAgIHZvaWQgcmV0dXJuWmVyb0ZpbGxlZEJ1ZmZlcihhbmdsZTo6U2NyYXRj
aEJ1ZmZlciB6ZXJvRmlsbGVkQnVmZmVyKTsKIAogICAgIGVnbDo6RXJyb3IgaGFuZGxlR1BVU3dp
dGNoKCk7CisgICAgZWdsOjpFcnJvciBmb3JjZUdQVVN3aXRjaChFR0xpbnQgZ3B1SURIaWdoLCBF
R0xpbnQgZ3B1SURMb3cpOwogCiAgICAgc3RkOjptdXRleCAmZ2V0RGlzcGxheUdsb2JhbE11dGV4
KCkgeyByZXR1cm4gbURpc3BsYXlHbG9iYWxNdXRleDsgfQogICAgIHN0ZDo6bXV0ZXggJmdldFBy
b2dyYW1DYWNoZU11dGV4KCkgeyByZXR1cm4gbVByb2dyYW1DYWNoZU11dGV4OyB9CkBAIC0zMTEs
NiArMzEyLDE0IEBAIGNsYXNzIERpc3BsYXkgZmluYWwgOiBwdWJsaWMgTGFiZWxlZE9iamVjdCwK
ICAgICAvLyB0aGVpciBvd24gRGVidWdBbm5vdGF0b3IuCiAgICAgdm9pZCBzZXRHbG9iYWxEZWJ1
Z0Fubm90YXRvcigpIHsgZ2w6OkluaXRpYWxpemVEZWJ1Z0Fubm90YXRpb25zKCZtQW5ub3RhdG9y
KTsgfQogCisgICAgYm9vbCBzdXBwb3J0c0RtYUJ1ZkZvcm1hdChFR0xpbnQgZm9ybWF0KSBjb25z
dDsKKyAgICBFcnJvciBxdWVyeURtYUJ1ZkZvcm1hdHMoRUdMaW50IG1heF9mb3JtYXRzLCBFR0xp
bnQgKmZvcm1hdHMsIEVHTGludCAqbnVtX2Zvcm1hdHMpOworICAgIEVycm9yIHF1ZXJ5RG1hQnVm
TW9kaWZpZXJzKEVHTGludCBmb3JtYXQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
RUdMaW50IG1heF9tb2RpZmllcnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRUdM
dWludDY0S0hSICptb2RpZmllcnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRUdM
Qm9vbGVhbiAqZXh0ZXJuYWxfb25seSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBF
R0xpbnQgKm51bV9tb2RpZmllcnMpOworCiAgIHByaXZhdGU6CiAgICAgRGlzcGxheShFR0xlbnVt
IHBsYXRmb3JtLCBFR0xOYXRpdmVEaXNwbGF5VHlwZSBkaXNwbGF5SWQsIERldmljZSAqZWdsRGV2
aWNlKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xF
L0Vycm9yU3RyaW5ncy5oIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL0Vy
cm9yU3RyaW5ncy5oCmluZGV4IDZmMjhiYTg5NTg4OTY2YzU5NDI4ZGQzMDIxOTI2ZWJmMzgwM2U5
MzQuLjBmY2UyZDFhMzE1MDEzOWY4ZTVhODZlZDRjM2JkNGIwN2FhYjc1Y2MgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9FcnJvclN0cmluZ3MuaAorKysg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvRXJyb3JTdHJpbmdzLmgKQEAg
LTE4LDExICsxOCwxNCBAQCBuYW1lc3BhY2UgZXJyCiAvLyBjbGFuZy1mb3JtYXQgb2ZmCiBNU0cg
azNERGVwdGhTdGVuY2lsID0gIkZvcm1hdCBjYW5ub3QgYmUgR0xfREVQVEhfQ09NUE9ORU5UIG9y
IEdMX0RFUFRIX1NURU5DSUwgaWYgdGFyZ2V0IGlzIEdMX1RFWFRVUkVfM0QiOwogTVNHIGtBTkdM
RUNvcHlUZXh0dXJlM0RVbmF2YWlsYWJsZSA9ICJHTF9BTkdMRV9jb3B5X3RleHR1cmVfM2QgZXh0
ZW5zaW9uIG5vdCBhdmFpbGFibGUuIjsKK01TRyBrQWR2YW5jZWRCbGVuZEVxdWF0aW9uV2l0aE1S
VCA9ICJBZHZhbmNlZCBibGVuZCBlcXVhdGlvbiBvbmx5IGNhbiBiZSB1c2VkIHdoZW4gb25seSBv
bmUgZHJhdyBidWZmZXIgaXMgbm90IE5PTkUiOworTVNHIGtBZHZhbmNlZEJsZW5kRXh0ZW5zaW9u
Tm90RW5hYmxlZCA9ICJHTF9LSFJfYmxlbmRfZXF1YXRpb25fYWR2YW5jZWQgZXh0ZW5zaW9uIG5v
dCBlbmFibGVkLiI7CiBNU0cga0F0b21pY0NvdW50ZXJSZXNvdXJjZU5hbWUgPSAiQWN0aXZlIGF0
b21pYyBjb3VudGVyIHJlc291cmNlcyBhcmUgbm90IGFzc2lnbmVkIG5hbWUgc3RyaW5ncy4iOwog
TVNHIGtBdHRyaWJ1dGVaZXJvUmVxdWlyZXNEaXZpc29yTGltaXRhdGlvbiA9ICJUaGUgY3VycmVu
dCBjb250ZXh0IGRvZXNuJ3Qgc3VwcG9ydCBzZXR0aW5nIGEgbm9uLXplcm8gZGl2aXNvciBvbiB0
aGUgYXR0cmlidXRlIHdpdGggaW5kZXggemVyby4gUGxlYXNlIHJlb3JkZXIgdGhlIGF0dHJpYnV0
ZXMgaW4geW91ciB2ZXJ0ZXggc2hhZGVyIHNvIHRoYXQgYXR0cmlidXRlIHplcm8gY2FuIGhhdmUg
YSB6ZXJvIGRpdmlzb3IuIjsKIE1TRyBrQmFzZUxldmVsTmVnYXRpdmUgPSAiQmFzZSBsZXZlbCBt
dXN0IGJlIGF0IGxlYXN0IDAuIjsKIE1TRyBrQmFzZUxldmVsTm9uWmVybyA9ICJCYXNlIGxldmVs
IG11c3QgYmUgMC4iOwogTVNHIGtCYXNlTGV2ZWxPdXRPZlJhbmdlID0gIlRleHR1cmUgYmFzZSBs
ZXZlbCBvdXQgb2YgcmFuZ2UiOworTVNHIGtCbGVuZEVxdWF0aW9uTm90RW5hYmxlZCA9ICJBY3Rp
dmUgZnJhZ21lbnQgc2hhZGVyIGRvZXMgbm90IGluY2x1ZGUgdGhlIGxheW91dCBxdWFsaWZpZXIg
bWF0Y2hpbmcgdGhlIGJsZW5kIGVxdWF0aW9uIjsKIE1TRyBrQmxpdERlcHRoT3JTdGVuY2lsRm9y
bWF0TWlzbWF0Y2ggPSAiRGVwdGgvc3RlbmNpbCBidWZmZXIgZm9ybWF0IGNvbWJpbmF0aW9uIG5v
dCBhbGxvd2VkIGZvciBibGl0LiI7CiBNU0cga0JsaXREaW1lbnNpb25zT3V0T2ZSYW5nZSA9ICJC
bGl0RnJhbWVidWZmZXIgZGltZW5zaW9ucyBvdXQgb2YgMzItYml0IGludGVnZXIgcmFuZ2UuIjsK
IE1TRyBrQmxpdEV4dGVuc2lvbkRlcHRoU3RlbmNpbFdob2xlQnVmZmVyQmxpdCA9ICJPbmx5IHdo
b2xlLWJ1ZmZlciBkZXB0aCBhbmQgc3RlbmNpbCBibGl0cyBhcmUgc3VwcG9ydGVkIGJ5IHRoaXMg
ZXh0ZW5zaW9uLiI7CkBAIC0zMTIsNiArMzE1LDkgQEAgTVNHIGtJbnZhbGlkTmFtZSA9ICJJbnZh
bGlkIG5hbWUuIjsKIE1TRyBrSW52YWxpZE5hbWVDaGFyYWN0ZXJzID0gIk5hbWUgY29udGFpbnMg
aW52YWxpZCBjaGFyYWN0ZXJzLiI7CiBNU0cga0ludmFsaWRPcmlnaW5FbnVtID0gIkludmFsaWQg
b3JpZ2luIGVudW0uIjsKIE1TRyBrSW52YWxpZFBhY2tQYXJhbWV0ZXJzRm9yV2ViR0wgPSAiSW52
YWxpZCBjb21iaW5hdGlvbiBvZiBwYWNrIHBhcmFtZXRlcnMgZm9yIFdlYkdMLiI7CitNU0cga0lu
dmFsaWRQZXJmTW9uaXRvciA9ICJJbnZhbGlkIHBlcmYgbW9uaXRvci4iOworTVNHIGtJbnZhbGlk
UGVyZk1vbml0b3JDb3VudGVyID0gIkludmFsaWQgcGVyZiBtb25pdG9yIGNvdW50ZXIuIjsKK01T
RyBrSW52YWxpZFBlcmZNb25pdG9yR3JvdXAgPSAiSW52YWxpZCBwZXJmIG1vbml0b3IgY291bnRl
ciBncm91cC4iOwogTVNHIGtJbnZhbGlkUG5hbWUgPSAiSW52YWxpZCBwbmFtZS4iOwogTVNHIGtJ
bnZhbGlkUG9pbnRlclF1ZXJ5ID0gIkludmFsaWQgcG9pbnRlciBxdWVyeS4iOwogTVNHIGtJbnZh
bGlkUG9pbnRQYXJhbWV0ZXIgPSAiSW52YWxpZCBwb2ludCBwYXJhbWV0ZXIuIjsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9PdmVybGF5LmNwcCBiL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9PdmVybGF5LmNwcAppbmRleCA3YWI3
YTJhYWIxYjIyNTU2YzA4YjI3NzkxY2Y5Mjg5NjNjZTI4NGVhLi43YjY0NzU4MzBmNmIyOTdmMGFi
YzViOGQzNzMxOGI3MWU0ZDcwOTkzIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zcmMvbGliQU5HTEUvT3ZlcmxheS5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUv
c3JjL2xpYkFOR0xFL092ZXJsYXkuY3BwCkBAIC0zNiw3ICszNiw3IEBAIE92ZXJsYXk6Ok92ZXJs
YXkocng6OkdMSW1wbEZhY3RvcnkgKmZhY3RvcnkpCiB7fQogT3ZlcmxheTo6fk92ZXJsYXkoKSA9
IGRlZmF1bHQ7CiAKLWFuZ2xlOjpSZXN1bHQgT3ZlcmxheTo6aW5pdChjb25zdCBDb250ZXh0ICpj
b250ZXh0KQordm9pZCBPdmVybGF5Ojppbml0KCkKIHsKICAgICBpbml0T3ZlcmxheVdpZGdldHMo
KTsKICAgICBtTGFzdFBlclNlY29uZFVwZGF0ZSA9IGFuZ2xlOjpHZXRDdXJyZW50U3lzdGVtVGlt
ZSgpOwpAQCAtNDYsMTQgKzQ2LDYgQEAgYW5nbGU6OlJlc3VsdCBPdmVybGF5Ojppbml0KGNvbnN0
IENvbnRleHQgKmNvbnRleHQpCiAgICAgICAgIFtdKGNvbnN0IHN0ZDo6dW5pcXVlX3B0cjxvdmVy
bGF5OjpXaWRnZXQ+ICZ3aWRnZXQpIHsgcmV0dXJuIHdpZGdldC5nZXQoKSAhPSBudWxscHRyOyB9
KSk7CiAKICAgICBlbmFibGVPdmVybGF5V2lkZ2V0c0Zyb21FbnZpcm9ubWVudCgpOwotCi0gICAg
Ym9vbCBzdWNjZXNzID0gZmFsc2U7Ci0gICAgQU5HTEVfVFJZKG1JbXBsZW1lbnRhdGlvbi0+aW5p
dChjb250ZXh0LCAmc3VjY2VzcykpOwotICAgIGlmICghc3VjY2VzcykKLSAgICB7Ci0gICAgICAg
IG1TdGF0ZS5tRW5hYmxlZFdpZGdldENvdW50ID0gMDsKLSAgICB9Ci0gICAgcmV0dXJuIGFuZ2xl
OjpSZXN1bHQ6OkNvbnRpbnVlOwogfQogCiB2b2lkIE92ZXJsYXk6OmRlc3Ryb3koY29uc3QgZ2w6
OkNvbnRleHQgKmNvbnRleHQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9z
cmMvbGliQU5HTEUvT3ZlcmxheS5oIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFO
R0xFL092ZXJsYXkuaAppbmRleCBmZWE3YmY4MDZmZjRkODJjYWEzZDFiNTQ1MjIzOTk1NzA5MTQ1
ZmIyLi5kM2ZiMTM3YjExZTU4YjY5NGE1NjM0NzhjY2ExMzMzZjFjNDRjZmJmIDEwMDY0NAotLS0g
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvT3ZlcmxheS5oCisrKyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9PdmVybGF5LmgKQEAgLTU5LDcgKzU5
LDcgQEAgY2xhc3MgT3ZlcmxheSA6IGFuZ2xlOjpOb25Db3B5YWJsZQogICAgIE92ZXJsYXkocng6
OkdMSW1wbEZhY3RvcnkgKmltcGxGYWN0b3J5KTsKICAgICB+T3ZlcmxheSgpOwogCi0gICAgYW5n
bGU6OlJlc3VsdCBpbml0KGNvbnN0IENvbnRleHQgKmNvbnRleHQpOworICAgIHZvaWQgaW5pdCgp
OwogICAgIHZvaWQgZGVzdHJveShjb25zdCBnbDo6Q29udGV4dCAqY29udGV4dCk7CiAKICAgICB2
b2lkIG9uU3dhcCgpIGNvbnN0OwpAQCAtMTEzLDcgKzExMyw3IEBAIGNsYXNzIE1vY2tPdmVybGF5
CiAgICAgTW9ja092ZXJsYXkocng6OkdMSW1wbEZhY3RvcnkgKmltcGxGYWN0b3J5KTsKICAgICB+
TW9ja092ZXJsYXkoKTsKIAotICAgIGFuZ2xlOjpSZXN1bHQgaW5pdChjb25zdCBDb250ZXh0ICpj
b250ZXh0KSB7IHJldHVybiBhbmdsZTo6UmVzdWx0OjpDb250aW51ZTsgfQorICAgIHZvaWQgaW5p
dCgpIHt9CiAgICAgdm9pZCBkZXN0cm95KGNvbnN0IENvbnRleHQgKmNvbnRleHQpIHt9CiAKICAg
ICB2b2lkIG9uU3dhcCgpIGNvbnN0IHt9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9zcmMvbGliQU5HTEUvT3ZlcmxheVdpZGdldHMuY3BwIGIvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc3JjL2xpYkFOR0xFL092ZXJsYXlXaWRnZXRzLmNwcAppbmRleCBiNTg3MzRkYjRiNjFl
Yzk3NGMxMTkxOGYyNGU4NWJkYTBhZWZmMjFjLi4zZTFkNzQ1YTFmYTVlMTMxYzlmY2JmMTI2ODg5
YzY5NGEwZWYwY2E3IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGli
QU5HTEUvT3ZlcmxheVdpZGdldHMuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3Ny
Yy9saWJBTkdMRS9PdmVybGF5V2lkZ2V0cy5jcHAKQEAgLTUyNCw2ICs1MjQsMjAgQEAgdm9pZCBB
cHBlbmRXaWRnZXREYXRhSGVscGVyOjpBcHBlbmRWdWxrYW5EZXNjcmlwdG9yQ2FjaGVTaXplKGNv
bnN0IG92ZXJsYXk6OldpZGcKICAgICBBcHBlbmRSdW5uaW5nR3JhcGhDb21tb24od2lkZ2V0LCBp
bWFnZUV4dGVudCwgdGV4dFdpZGdldCwgZ3JhcGhXaWRnZXQsIHdpZGdldENvdW50cywgZm9ybWF0
KTsKIH0KIAordm9pZCBBcHBlbmRXaWRnZXREYXRhSGVscGVyOjpBcHBlbmRWdWxrYW5EZXNjcmlw
dG9yQ2FjaGVLZXlTaXplKGNvbnN0IG92ZXJsYXk6OldpZGdldCAqd2lkZ2V0LAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNv
bnN0IGdsOjpFeHRlbnRzICZpbWFnZUV4dGVudCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUZXh0V2lkZ2V0RGF0YSAqdGV4
dFdpZGdldCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBHcmFwaFdpZGdldERhdGEgKmdyYXBoV2lkZ2V0LAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE92
ZXJsYXlXaWRnZXRDb3VudHMgKndpZGdldENvdW50cykKK3sKKyAgICBjb25zdCBvdmVybGF5OjpD
b3VudCAqY291bnRXaWRnZXQgPSBzdGF0aWNfY2FzdDxjb25zdCBvdmVybGF5OjpDb3VudCAqPih3
aWRnZXQpOworICAgIHN0ZDo6b3N0cmluZ3N0cmVhbSB0ZXh0OworICAgIGRvdWJsZSBrYiA9IHN0
YXRpY19jYXN0PGRvdWJsZT4oY291bnRXaWRnZXQtPmNvdW50KSAvIDEwMDAuMDsKKyAgICB0ZXh0
IDw8ICJEUyBDYWNoZSBLZXkgU2l6ZTogIiA8PCBzdGQ6OmZpeGVkIDw8IHN0ZDo6c2V0cHJlY2lz
aW9uKDEpIDw8IGtiIDw8ICIga2IiOworCisgICAgQXBwZW5kVGV4dENvbW1vbih3aWRnZXQsIGlt
YWdlRXh0ZW50LCB0ZXh0LnN0cigpLCB0ZXh0V2lkZ2V0LCB3aWRnZXRDb3VudHMpOworfQorCiBz
dGQ6Om9zdHJlYW0gJkFwcGVuZFdpZGdldERhdGFIZWxwZXI6Ok91dHB1dFBlclNlY29uZChzdGQ6
Om9zdHJlYW0gJm91dCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGNvbnN0IG92ZXJsYXk6OlBlclNlY29uZCAqcGVyU2Vjb25kKQogewpkaWZm
IC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL092ZXJsYXlfYXV0
b2dlbi5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvT3ZlcmxheV9h
dXRvZ2VuLmNwcAppbmRleCA1YzFmMzFhZjM0MjBmOTVlNThiY2VmOGNmNWNmZGU4MzljYjc5OWVi
Li44N2Q0N2UzOGRlZDI5YzgyYWIwM2RmOTBiMjQyNDc2YzBiZDY4ZmVkIDEwMDY0NAotLS0gYS9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvT3ZlcmxheV9hdXRvZ2VuLmNwcAor
KysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvT3ZlcmxheV9hdXRvZ2Vu
LmNwcApAQCAtNDgsOCArNDgsOCBAQCB2b2lkIE92ZXJsYXk6OmluaXRPdmVybGF5V2lkZ2V0cygp
CiAgICAgICAgICAgICB3aWRnZXQtPmNvb3Jkc1sxXSA9IG9mZnNldFk7CiAgICAgICAgICAgICB3
aWRnZXQtPmNvb3Jkc1syXSA9IG9mZnNldFggKyB3aWR0aDsKICAgICAgICAgICAgIHdpZGdldC0+
Y29vcmRzWzNdID0gb2Zmc2V0WSArIGhlaWdodDsKLSAgICAgICAgICAgIHdpZGdldC0+Y29sb3Jb
MF0gID0gMC40OTgwMzkyMTU2ODZmOwotICAgICAgICAgICAgd2lkZ2V0LT5jb2xvclsxXSAgPSAw
Ljc0OTAxOTYwNzg0M2Y7CisgICAgICAgICAgICB3aWRnZXQtPmNvbG9yWzBdICA9IDAuNDk4MDM5
MjE1Njg2Mjc0NWY7CisgICAgICAgICAgICB3aWRnZXQtPmNvbG9yWzFdICA9IDAuNzQ5MDE5NjA3
ODQzMTM3M2Y7CiAgICAgICAgICAgICB3aWRnZXQtPmNvbG9yWzJdICA9IDEuMGY7CiAgICAgICAg
ICAgICB3aWRnZXQtPmNvbG9yWzNdICA9IDEuMGY7CiAgICAgICAgIH0KQEAgLTExOCwxMCArMTE4
LDEwIEBAIHZvaWQgT3ZlcmxheTo6aW5pdE92ZXJsYXlXaWRnZXRzKCkKICAgICAgICAgICAgIHdp
ZGdldC0+Y29vcmRzWzFdID0gb2Zmc2V0WTsKICAgICAgICAgICAgIHdpZGdldC0+Y29vcmRzWzJd
ID0gb2Zmc2V0WCArIHdpZHRoOwogICAgICAgICAgICAgd2lkZ2V0LT5jb29yZHNbM10gPSBvZmZz
ZXRZICsgaGVpZ2h0OwotICAgICAgICAgICAgd2lkZ2V0LT5jb2xvclswXSAgPSAwLjI5NDExNzY0
NzA1OWY7Ci0gICAgICAgICAgICB3aWRnZXQtPmNvbG9yWzFdICA9IDAuNzg0MzEzNzI1NDlmOwor
ICAgICAgICAgICAgd2lkZ2V0LT5jb2xvclswXSAgPSAwLjI5NDExNzY0NzA1ODgyMzU0ZjsKKyAg
ICAgICAgICAgIHdpZGdldC0+Y29sb3JbMV0gID0gMC43ODQzMTM3MjU0OTAxOTYxZjsKICAgICAg
ICAgICAgIHdpZGdldC0+Y29sb3JbMl0gID0gMC4wZjsKLSAgICAgICAgICAgIHdpZGdldC0+Y29s
b3JbM10gID0gMC43ODQzMTM3MjU0OWY7CisgICAgICAgICAgICB3aWRnZXQtPmNvbG9yWzNdICA9
IDAuNzg0MzEzNzI1NDkwMTk2MWY7CiAgICAgICAgIH0KICAgICAgICAgbVN0YXRlLm1PdmVybGF5
V2lkZ2V0c1tXaWRnZXRJZDo6VnVsa2FuUmVuZGVyUGFzc0NvdW50XS5yZXNldCh3aWRnZXQpOwog
ICAgICAgICB7CkBAIC0xMzksOCArMTM5LDggQEAgdm9pZCBPdmVybGF5Ojppbml0T3ZlcmxheVdp
ZGdldHMoKQogICAgICAgICAgICAgd2lkZ2V0LT5kZXNjcmlwdGlvbi5jb29yZHNbMV0gPSBzdGQ6
Om1heChvZmZzZXRZIC0gaGVpZ2h0LCAxKTsKICAgICAgICAgICAgIHdpZGdldC0+ZGVzY3JpcHRp
b24uY29vcmRzWzJdID0gb2Zmc2V0WCArIHdpZHRoOwogICAgICAgICAgICAgd2lkZ2V0LT5kZXNj
cmlwdGlvbi5jb29yZHNbM10gPSBvZmZzZXRZOwotICAgICAgICAgICAgd2lkZ2V0LT5kZXNjcmlw
dGlvbi5jb2xvclswXSAgPSAwLjI5NDExNzY0NzA1OWY7Ci0gICAgICAgICAgICB3aWRnZXQtPmRl
c2NyaXB0aW9uLmNvbG9yWzFdICA9IDAuNzg0MzEzNzI1NDlmOworICAgICAgICAgICAgd2lkZ2V0
LT5kZXNjcmlwdGlvbi5jb2xvclswXSAgPSAwLjI5NDExNzY0NzA1ODgyMzU0ZjsKKyAgICAgICAg
ICAgIHdpZGdldC0+ZGVzY3JpcHRpb24uY29sb3JbMV0gID0gMC43ODQzMTM3MjU0OTAxOTYxZjsK
ICAgICAgICAgICAgIHdpZGdldC0+ZGVzY3JpcHRpb24uY29sb3JbMl0gID0gMC4wZjsKICAgICAg
ICAgICAgIHdpZGdldC0+ZGVzY3JpcHRpb24uY29sb3JbM10gID0gMS4wZjsKICAgICAgICAgfQpA
QCAtMTYyLDkgKzE2Miw5IEBAIHZvaWQgT3ZlcmxheTo6aW5pdE92ZXJsYXlXaWRnZXRzKCkKICAg
ICAgICAgICAgIHdpZGdldC0+Y29vcmRzWzJdID0gb2Zmc2V0WDsKICAgICAgICAgICAgIHdpZGdl
dC0+Y29vcmRzWzNdID0gb2Zmc2V0WSArIGhlaWdodDsKICAgICAgICAgICAgIHdpZGdldC0+Y29s
b3JbMF0gID0gMS4wZjsKLSAgICAgICAgICAgIHdpZGdldC0+Y29sb3JbMV0gID0gMC43ODQzMTM3
MjU0OWY7Ci0gICAgICAgICAgICB3aWRnZXQtPmNvbG9yWzJdICA9IDAuMjk0MTE3NjQ3MDU5ZjsK
LSAgICAgICAgICAgIHdpZGdldC0+Y29sb3JbM10gID0gMC43ODQzMTM3MjU0OWY7CisgICAgICAg
ICAgICB3aWRnZXQtPmNvbG9yWzFdICA9IDAuNzg0MzEzNzI1NDkwMTk2MWY7CisgICAgICAgICAg
ICB3aWRnZXQtPmNvbG9yWzJdICA9IDAuMjk0MTE3NjQ3MDU4ODIzNTRmOworICAgICAgICAgICAg
d2lkZ2V0LT5jb2xvclszXSAgPSAwLjc4NDMxMzcyNTQ5MDE5NjFmOwogICAgICAgICB9CiAgICAg
ICAgIG1TdGF0ZS5tT3ZlcmxheVdpZGdldHNbV2lkZ2V0SWQ6OlZ1bGthblJlbmRlclBhc3NCdWZm
ZXJDb3VudF0ucmVzZXQod2lkZ2V0KTsKICAgICAgICAgewpAQCAtMTgzLDggKzE4Myw4IEBAIHZv
aWQgT3ZlcmxheTo6aW5pdE92ZXJsYXlXaWRnZXRzKCkKICAgICAgICAgICAgIHdpZGdldC0+ZGVz
Y3JpcHRpb24uY29vcmRzWzJdID0gc3RkOjptaW4ob2Zmc2V0WCArIHdpZHRoLCAtMSk7CiAgICAg
ICAgICAgICB3aWRnZXQtPmRlc2NyaXB0aW9uLmNvb3Jkc1szXSA9IG9mZnNldFk7CiAgICAgICAg
ICAgICB3aWRnZXQtPmRlc2NyaXB0aW9uLmNvbG9yWzBdICA9IDEuMGY7Ci0gICAgICAgICAgICB3
aWRnZXQtPmRlc2NyaXB0aW9uLmNvbG9yWzFdICA9IDAuNzg0MzEzNzI1NDlmOwotICAgICAgICAg
ICAgd2lkZ2V0LT5kZXNjcmlwdGlvbi5jb2xvclsyXSAgPSAwLjI5NDExNzY0NzA1OWY7CisgICAg
ICAgICAgICB3aWRnZXQtPmRlc2NyaXB0aW9uLmNvbG9yWzFdICA9IDAuNzg0MzEzNzI1NDkwMTk2
MWY7CisgICAgICAgICAgICB3aWRnZXQtPmRlc2NyaXB0aW9uLmNvbG9yWzJdICA9IDAuMjk0MTE3
NjQ3MDU4ODIzNTRmOwogICAgICAgICAgICAgd2lkZ2V0LT5kZXNjcmlwdGlvbi5jb2xvclszXSAg
PSAxLjBmOwogICAgICAgICB9CiAgICAgfQpAQCAtMjA1LDkgKzIwNSw5IEBAIHZvaWQgT3Zlcmxh
eTo6aW5pdE92ZXJsYXlXaWRnZXRzKCkKICAgICAgICAgICAgIHdpZGdldC0+Y29vcmRzWzJdID0g
b2Zmc2V0WDsKICAgICAgICAgICAgIHdpZGdldC0+Y29vcmRzWzNdID0gb2Zmc2V0WSArIGhlaWdo
dDsKICAgICAgICAgICAgIHdpZGdldC0+Y29sb3JbMF0gID0gMS4wZjsKLSAgICAgICAgICAgIHdp
ZGdldC0+Y29sb3JbMV0gID0gMC43ODQzMTM3MjU0OWY7Ci0gICAgICAgICAgICB3aWRnZXQtPmNv
bG9yWzJdICA9IDAuMjk0MTE3NjQ3MDU5ZjsKLSAgICAgICAgICAgIHdpZGdldC0+Y29sb3JbM10g
ID0gMC43ODQzMTM3MjU0OWY7CisgICAgICAgICAgICB3aWRnZXQtPmNvbG9yWzFdICA9IDAuNzg0
MzEzNzI1NDkwMTk2MWY7CisgICAgICAgICAgICB3aWRnZXQtPmNvbG9yWzJdICA9IDAuMjk0MTE3
NjQ3MDU4ODIzNTRmOworICAgICAgICAgICAgd2lkZ2V0LT5jb2xvclszXSAgPSAwLjc4NDMxMzcy
NTQ5MDE5NjFmOwogICAgICAgICB9CiAgICAgICAgIG1TdGF0ZS5tT3ZlcmxheVdpZGdldHNbV2lk
Z2V0SWQ6OlZ1bGthblNlY29uZGFyeUNvbW1hbmRCdWZmZXJQb29sV2FzdGVdLnJlc2V0KHdpZGdl
dCk7CiAgICAgICAgIHsKQEAgLTIyNiw4ICsyMjYsOCBAQCB2b2lkIE92ZXJsYXk6OmluaXRPdmVy
bGF5V2lkZ2V0cygpCiAgICAgICAgICAgICB3aWRnZXQtPmRlc2NyaXB0aW9uLmNvb3Jkc1syXSA9
IHN0ZDo6bWluKG9mZnNldFggKyB3aWR0aCwgLTEpOwogICAgICAgICAgICAgd2lkZ2V0LT5kZXNj
cmlwdGlvbi5jb29yZHNbM10gPSBvZmZzZXRZOwogICAgICAgICAgICAgd2lkZ2V0LT5kZXNjcmlw
dGlvbi5jb2xvclswXSAgPSAxLjBmOwotICAgICAgICAgICAgd2lkZ2V0LT5kZXNjcmlwdGlvbi5j
b2xvclsxXSAgPSAwLjc4NDMxMzcyNTQ5ZjsKLSAgICAgICAgICAgIHdpZGdldC0+ZGVzY3JpcHRp
b24uY29sb3JbMl0gID0gMC4yOTQxMTc2NDcwNTlmOworICAgICAgICAgICAgd2lkZ2V0LT5kZXNj
cmlwdGlvbi5jb2xvclsxXSAgPSAwLjc4NDMxMzcyNTQ5MDE5NjFmOworICAgICAgICAgICAgd2lk
Z2V0LT5kZXNjcmlwdGlvbi5jb2xvclsyXSAgPSAwLjI5NDExNzY0NzA1ODgyMzU0ZjsKICAgICAg
ICAgICAgIHdpZGdldC0+ZGVzY3JpcHRpb24uY29sb3JbM10gID0gMS4wZjsKICAgICAgICAgfQog
ICAgIH0KQEAgLTI0NywxMCArMjQ3LDEwIEBAIHZvaWQgT3ZlcmxheTo6aW5pdE92ZXJsYXlXaWRn
ZXRzKCkKICAgICAgICAgICAgIHdpZGdldC0+Y29vcmRzWzFdID0gb2Zmc2V0WTsKICAgICAgICAg
ICAgIHdpZGdldC0+Y29vcmRzWzJdID0gb2Zmc2V0WCArIHdpZHRoOwogICAgICAgICAgICAgd2lk
Z2V0LT5jb29yZHNbM10gPSBvZmZzZXRZICsgaGVpZ2h0OwotICAgICAgICAgICAgd2lkZ2V0LT5j
b2xvclswXSAgPSAwLjI5NDExNzY0NzA1OWY7Ci0gICAgICAgICAgICB3aWRnZXQtPmNvbG9yWzFd
ICA9IDAuNzg0MzEzNzI1NDlmOworICAgICAgICAgICAgd2lkZ2V0LT5jb2xvclswXSAgPSAwLjI5
NDExNzY0NzA1ODgyMzU0ZjsKKyAgICAgICAgICAgIHdpZGdldC0+Y29sb3JbMV0gID0gMC43ODQz
MTM3MjU0OTAxOTYxZjsKICAgICAgICAgICAgIHdpZGdldC0+Y29sb3JbMl0gID0gMC4wZjsKLSAg
ICAgICAgICAgIHdpZGdldC0+Y29sb3JbM10gID0gMC43ODQzMTM3MjU0OWY7CisgICAgICAgICAg
ICB3aWRnZXQtPmNvbG9yWzNdICA9IDAuNzg0MzEzNzI1NDkwMTk2MWY7CiAgICAgICAgIH0KICAg
ICAgICAgbVN0YXRlLm1PdmVybGF5V2lkZ2V0c1tXaWRnZXRJZDo6VnVsa2FuV3JpdGVEZXNjcmlw
dG9yU2V0Q291bnRdLnJlc2V0KHdpZGdldCk7CiAgICAgICAgIHsKQEAgLTI2OCw4ICsyNjgsOCBA
QCB2b2lkIE92ZXJsYXk6OmluaXRPdmVybGF5V2lkZ2V0cygpCiAgICAgICAgICAgICB3aWRnZXQt
PmRlc2NyaXB0aW9uLmNvb3Jkc1sxXSA9IHN0ZDo6bWF4KG9mZnNldFkgLSBoZWlnaHQsIDEpOwog
ICAgICAgICAgICAgd2lkZ2V0LT5kZXNjcmlwdGlvbi5jb29yZHNbMl0gPSBvZmZzZXRYICsgd2lk
dGg7CiAgICAgICAgICAgICB3aWRnZXQtPmRlc2NyaXB0aW9uLmNvb3Jkc1szXSA9IG9mZnNldFk7
Ci0gICAgICAgICAgICB3aWRnZXQtPmRlc2NyaXB0aW9uLmNvbG9yWzBdICA9IDAuMjk0MTE3NjQ3
MDU5ZjsKLSAgICAgICAgICAgIHdpZGdldC0+ZGVzY3JpcHRpb24uY29sb3JbMV0gID0gMC43ODQz
MTM3MjU0OWY7CisgICAgICAgICAgICB3aWRnZXQtPmRlc2NyaXB0aW9uLmNvbG9yWzBdICA9IDAu
Mjk0MTE3NjQ3MDU4ODIzNTRmOworICAgICAgICAgICAgd2lkZ2V0LT5kZXNjcmlwdGlvbi5jb2xv
clsxXSAgPSAwLjc4NDMxMzcyNTQ5MDE5NjFmOwogICAgICAgICAgICAgd2lkZ2V0LT5kZXNjcmlw
dGlvbi5jb2xvclsyXSAgPSAwLjBmOwogICAgICAgICAgICAgd2lkZ2V0LT5kZXNjcmlwdGlvbi5j
b2xvclszXSAgPSAxLjBmOwogICAgICAgICB9CkBAIC0yOTIsOCArMjkyLDggQEAgdm9pZCBPdmVy
bGF5Ojppbml0T3ZlcmxheVdpZGdldHMoKQogICAgICAgICAgICAgd2lkZ2V0LT5jb29yZHNbM10g
PSBvZmZzZXRZICsgaGVpZ2h0OwogICAgICAgICAgICAgd2lkZ2V0LT5jb2xvclswXSAgPSAxLjBm
OwogICAgICAgICAgICAgd2lkZ2V0LT5jb2xvclsxXSAgPSAwLjBmOwotICAgICAgICAgICAgd2lk
Z2V0LT5jb2xvclsyXSAgPSAwLjI5NDExNzY0NzA1OWY7Ci0gICAgICAgICAgICB3aWRnZXQtPmNv
bG9yWzNdICA9IDAuNzg0MzEzNzI1NDlmOworICAgICAgICAgICAgd2lkZ2V0LT5jb2xvclsyXSAg
PSAwLjI5NDExNzY0NzA1ODgyMzU0ZjsKKyAgICAgICAgICAgIHdpZGdldC0+Y29sb3JbM10gID0g
MC43ODQzMTM3MjU0OTAxOTYxZjsKICAgICAgICAgfQogICAgICAgICBtU3RhdGUubU92ZXJsYXlX
aWRnZXRzW1dpZGdldElkOjpWdWxrYW5EZXNjcmlwdG9yU2V0QWxsb2NhdGlvbnNdLnJlc2V0KHdp
ZGdldCk7CiAgICAgICAgIHsKQEAgLTMxMyw3ICszMTMsNyBAQCB2b2lkIE92ZXJsYXk6OmluaXRP
dmVybGF5V2lkZ2V0cygpCiAgICAgICAgICAgICB3aWRnZXQtPmRlc2NyaXB0aW9uLmNvb3Jkc1sz
XSA9IG9mZnNldFk7CiAgICAgICAgICAgICB3aWRnZXQtPmRlc2NyaXB0aW9uLmNvbG9yWzBdICA9
IDEuMGY7CiAgICAgICAgICAgICB3aWRnZXQtPmRlc2NyaXB0aW9uLmNvbG9yWzFdICA9IDAuMGY7
Ci0gICAgICAgICAgICB3aWRnZXQtPmRlc2NyaXB0aW9uLmNvbG9yWzJdICA9IDAuMjk0MTE3NjQ3
MDU5ZjsKKyAgICAgICAgICAgIHdpZGdldC0+ZGVzY3JpcHRpb24uY29sb3JbMl0gID0gMC4yOTQx
MTc2NDcwNTg4MjM1NGY7CiAgICAgICAgICAgICB3aWRnZXQtPmRlc2NyaXB0aW9uLmNvbG9yWzNd
ICA9IDEuMGY7CiAgICAgICAgIH0KICAgICB9CkBAIC0zMzUsOCArMzM1LDggQEAgdm9pZCBPdmVy
bGF5Ojppbml0T3ZlcmxheVdpZGdldHMoKQogICAgICAgICAgICAgd2lkZ2V0LT5jb29yZHNbM10g
PSBvZmZzZXRZICsgaGVpZ2h0OwogICAgICAgICAgICAgd2lkZ2V0LT5jb2xvclswXSAgPSAxLjBm
OwogICAgICAgICAgICAgd2lkZ2V0LT5jb2xvclsxXSAgPSAwLjBmOwotICAgICAgICAgICAgd2lk
Z2V0LT5jb2xvclsyXSAgPSAwLjI5NDExNzY0NzA1OWY7Ci0gICAgICAgICAgICB3aWRnZXQtPmNv
bG9yWzNdICA9IDAuNzg0MzEzNzI1NDlmOworICAgICAgICAgICAgd2lkZ2V0LT5jb2xvclsyXSAg
PSAwLjI5NDExNzY0NzA1ODgyMzU0ZjsKKyAgICAgICAgICAgIHdpZGdldC0+Y29sb3JbM10gID0g
MC43ODQzMTM3MjU0OTAxOTYxZjsKICAgICAgICAgfQogICAgICAgICBtU3RhdGUubU92ZXJsYXlX
aWRnZXRzW1dpZGdldElkOjpWdWxrYW5TaGFkZXJCdWZmZXJEU0hpdFJhdGVdLnJlc2V0KHdpZGdl
dCk7CiAgICAgICAgIHsKQEAgLTM1Niw3ICszNTYsNyBAQCB2b2lkIE92ZXJsYXk6OmluaXRPdmVy
bGF5V2lkZ2V0cygpCiAgICAgICAgICAgICB3aWRnZXQtPmRlc2NyaXB0aW9uLmNvb3Jkc1szXSA9
IG9mZnNldFk7CiAgICAgICAgICAgICB3aWRnZXQtPmRlc2NyaXB0aW9uLmNvbG9yWzBdICA9IDEu
MGY7CiAgICAgICAgICAgICB3aWRnZXQtPmRlc2NyaXB0aW9uLmNvbG9yWzFdICA9IDAuMGY7Ci0g
ICAgICAgICAgICB3aWRnZXQtPmRlc2NyaXB0aW9uLmNvbG9yWzJdICA9IDAuMjk0MTE3NjQ3MDU5
ZjsKKyAgICAgICAgICAgIHdpZGdldC0+ZGVzY3JpcHRpb24uY29sb3JbMl0gID0gMC4yOTQxMTc2
NDcwNTg4MjM1NGY7CiAgICAgICAgICAgICB3aWRnZXQtPmRlc2NyaXB0aW9uLmNvbG9yWzNdICA9
IDEuMGY7CiAgICAgICAgIH0KICAgICB9CkBAIC0zNzcsOSArMzc3LDkgQEAgdm9pZCBPdmVybGF5
Ojppbml0T3ZlcmxheVdpZGdldHMoKQogICAgICAgICAgICAgd2lkZ2V0LT5jb29yZHNbMl0gPSBv
ZmZzZXRYOwogICAgICAgICAgICAgd2lkZ2V0LT5jb29yZHNbM10gPSBvZmZzZXRZOwogICAgICAg
ICAgICAgd2lkZ2V0LT5jb2xvclswXSAgPSAwLjBmOwotICAgICAgICAgICAgd2lkZ2V0LT5jb2xv
clsxXSAgPSAwLjc4NDMxMzcyNTQ5ZjsKLSAgICAgICAgICAgIHdpZGdldC0+Y29sb3JbMl0gID0g
MC4yOTQxMTc2NDcwNTlmOwotICAgICAgICAgICAgd2lkZ2V0LT5jb2xvclszXSAgPSAwLjc4NDMx
MzcyNTQ5ZjsKKyAgICAgICAgICAgIHdpZGdldC0+Y29sb3JbMV0gID0gMC43ODQzMTM3MjU0OTAx
OTYxZjsKKyAgICAgICAgICAgIHdpZGdldC0+Y29sb3JbMl0gID0gMC4yOTQxMTc2NDcwNTg4MjM1
NGY7CisgICAgICAgICAgICB3aWRnZXQtPmNvbG9yWzNdICA9IDAuNzg0MzEzNzI1NDkwMTk2MWY7
CiAgICAgICAgIH0KICAgICAgICAgbVN0YXRlLm1PdmVybGF5V2lkZ2V0c1tXaWRnZXRJZDo6VnVs
a2FuRHluYW1pY0J1ZmZlckFsbG9jYXRpb25zXS5yZXNldCh3aWRnZXQpOwogICAgICAgICB7CkBA
IC0zOTgsOCArMzk4LDggQEAgdm9pZCBPdmVybGF5Ojppbml0T3ZlcmxheVdpZGdldHMoKQogICAg
ICAgICAgICAgd2lkZ2V0LT5kZXNjcmlwdGlvbi5jb29yZHNbMl0gPSBvZmZzZXRYOwogICAgICAg
ICAgICAgd2lkZ2V0LT5kZXNjcmlwdGlvbi5jb29yZHNbM10gPSBvZmZzZXRZOwogICAgICAgICAg
ICAgd2lkZ2V0LT5kZXNjcmlwdGlvbi5jb2xvclswXSAgPSAwLjBmOwotICAgICAgICAgICAgd2lk
Z2V0LT5kZXNjcmlwdGlvbi5jb2xvclsxXSAgPSAwLjc4NDMxMzcyNTQ5ZjsKLSAgICAgICAgICAg
IHdpZGdldC0+ZGVzY3JpcHRpb24uY29sb3JbMl0gID0gMC4yOTQxMTc2NDcwNTlmOworICAgICAg
ICAgICAgd2lkZ2V0LT5kZXNjcmlwdGlvbi5jb2xvclsxXSAgPSAwLjc4NDMxMzcyNTQ5MDE5NjFm
OworICAgICAgICAgICAgd2lkZ2V0LT5kZXNjcmlwdGlvbi5jb2xvclsyXSAgPSAwLjI5NDExNzY0
NzA1ODgyMzU0ZjsKICAgICAgICAgICAgIHdpZGdldC0+ZGVzY3JpcHRpb24uY29sb3JbM10gID0g
MS4wZjsKICAgICAgICAgfQogICAgIH0KQEAgLTQyMCw5ICs0MjAsOSBAQCB2b2lkIE92ZXJsYXk6
OmluaXRPdmVybGF5V2lkZ2V0cygpCiAgICAgICAgICAgICB3aWRnZXQtPmNvb3Jkc1syXSA9IG9m
ZnNldFggKyB3aWR0aDsKICAgICAgICAgICAgIHdpZGdldC0+Y29vcmRzWzNdID0gb2Zmc2V0WSAr
IGhlaWdodDsKICAgICAgICAgICAgIHdpZGdldC0+Y29sb3JbMF0gID0gMC4wZjsKLSAgICAgICAg
ICAgIHdpZGdldC0+Y29sb3JbMV0gID0gMC43ODQzMTM3MjU0OWY7Ci0gICAgICAgICAgICB3aWRn
ZXQtPmNvbG9yWzJdICA9IDAuNzI1NDkwMTk2MDc4ZjsKLSAgICAgICAgICAgIHdpZGdldC0+Y29s
b3JbM10gID0gMC43ODQzMTM3MjU0OWY7CisgICAgICAgICAgICB3aWRnZXQtPmNvbG9yWzFdICA9
IDAuNzg0MzEzNzI1NDkwMTk2MWY7CisgICAgICAgICAgICB3aWRnZXQtPmNvbG9yWzJdICA9IDAu
NzI1NDkwMTk2MDc4NDMxM2Y7CisgICAgICAgICAgICB3aWRnZXQtPmNvbG9yWzNdICA9IDAuNzg0
MzEzNzI1NDkwMTk2MWY7CiAgICAgICAgIH0KICAgICAgICAgbVN0YXRlLm1PdmVybGF5V2lkZ2V0
c1tXaWRnZXRJZDo6VnVsa2FuRGVzY3JpcHRvckNhY2hlU2l6ZV0ucmVzZXQod2lkZ2V0KTsKICAg
ICAgICAgewpAQCAtNDQxLDggKzQ0MSw4IEBAIHZvaWQgT3ZlcmxheTo6aW5pdE92ZXJsYXlXaWRn
ZXRzKCkKICAgICAgICAgICAgIHdpZGdldC0+ZGVzY3JpcHRpb24uY29vcmRzWzJdID0gb2Zmc2V0
WCArIHdpZHRoOwogICAgICAgICAgICAgd2lkZ2V0LT5kZXNjcmlwdGlvbi5jb29yZHNbM10gPSBv
ZmZzZXRZOwogICAgICAgICAgICAgd2lkZ2V0LT5kZXNjcmlwdGlvbi5jb2xvclswXSAgPSAwLjBm
OwotICAgICAgICAgICAgd2lkZ2V0LT5kZXNjcmlwdGlvbi5jb2xvclsxXSAgPSAwLjc4NDMxMzcy
NTQ5ZjsKLSAgICAgICAgICAgIHdpZGdldC0+ZGVzY3JpcHRpb24uY29sb3JbMl0gID0gMC4yOTQx
MTc2NDcwNTlmOworICAgICAgICAgICAgd2lkZ2V0LT5kZXNjcmlwdGlvbi5jb2xvclsxXSAgPSAw
Ljc4NDMxMzcyNTQ5MDE5NjFmOworICAgICAgICAgICAgd2lkZ2V0LT5kZXNjcmlwdGlvbi5jb2xv
clsyXSAgPSAwLjI5NDExNzY0NzA1ODgyMzU0ZjsKICAgICAgICAgICAgIHdpZGdldC0+ZGVzY3Jp
cHRpb24uY29sb3JbM10gID0gMS4wZjsKICAgICAgICAgfQogICAgIH0KQEAgLTQ2Myw5ICs0NjMs
OSBAQCB2b2lkIE92ZXJsYXk6OmluaXRPdmVybGF5V2lkZ2V0cygpCiAgICAgICAgICAgICB3aWRn
ZXQtPmNvb3Jkc1syXSA9IG9mZnNldFggKyB3aWR0aDsKICAgICAgICAgICAgIHdpZGdldC0+Y29v
cmRzWzNdID0gb2Zmc2V0WSArIGhlaWdodDsKICAgICAgICAgICAgIHdpZGdldC0+Y29sb3JbMF0g
ID0gMC4wZjsKLSAgICAgICAgICAgIHdpZGdldC0+Y29sb3JbMV0gID0gMC43ODQzMTM3MjU0OWY7
Ci0gICAgICAgICAgICB3aWRnZXQtPmNvbG9yWzJdICA9IDAuMjk0MTE3NjQ3MDU5ZjsKLSAgICAg
ICAgICAgIHdpZGdldC0+Y29sb3JbM10gID0gMC43ODQzMTM3MjU0OWY7CisgICAgICAgICAgICB3
aWRnZXQtPmNvbG9yWzFdICA9IDAuNzg0MzEzNzI1NDkwMTk2MWY7CisgICAgICAgICAgICB3aWRn
ZXQtPmNvbG9yWzJdICA9IDAuMjk0MTE3NjQ3MDU4ODIzNTRmOworICAgICAgICAgICAgd2lkZ2V0
LT5jb2xvclszXSAgPSAwLjc4NDMxMzcyNTQ5MDE5NjFmOwogICAgICAgICB9CiAgICAgICAgIG1T
dGF0ZS5tT3ZlcmxheVdpZGdldHNbV2lkZ2V0SWQ6OlZ1bGthblRleHR1cmVEZXNjcmlwdG9yQ2Fj
aGVTaXplXS5yZXNldCh3aWRnZXQpOwogICAgICAgICB7CkBAIC00ODQsOCArNDg0LDggQEAgdm9p
ZCBPdmVybGF5Ojppbml0T3ZlcmxheVdpZGdldHMoKQogICAgICAgICAgICAgd2lkZ2V0LT5kZXNj
cmlwdGlvbi5jb29yZHNbMl0gPSBvZmZzZXRYICsgd2lkdGg7CiAgICAgICAgICAgICB3aWRnZXQt
PmRlc2NyaXB0aW9uLmNvb3Jkc1szXSA9IG9mZnNldFk7CiAgICAgICAgICAgICB3aWRnZXQtPmRl
c2NyaXB0aW9uLmNvbG9yWzBdICA9IDAuMGY7Ci0gICAgICAgICAgICB3aWRnZXQtPmRlc2NyaXB0
aW9uLmNvbG9yWzFdICA9IDAuNzg0MzEzNzI1NDlmOwotICAgICAgICAgICAgd2lkZ2V0LT5kZXNj
cmlwdGlvbi5jb2xvclsyXSAgPSAwLjI5NDExNzY0NzA1OWY7CisgICAgICAgICAgICB3aWRnZXQt
PmRlc2NyaXB0aW9uLmNvbG9yWzFdICA9IDAuNzg0MzEzNzI1NDkwMTk2MWY7CisgICAgICAgICAg
ICB3aWRnZXQtPmRlc2NyaXB0aW9uLmNvbG9yWzJdICA9IDAuMjk0MTE3NjQ3MDU4ODIzNTRmOwog
ICAgICAgICAgICAgd2lkZ2V0LT5kZXNjcmlwdGlvbi5jb2xvclszXSAgPSAxLjBmOwogICAgICAg
ICB9CiAgICAgfQpAQCAtNTA2LDkgKzUwNiw5IEBAIHZvaWQgT3ZlcmxheTo6aW5pdE92ZXJsYXlX
aWRnZXRzKCkKICAgICAgICAgICAgIHdpZGdldC0+Y29vcmRzWzJdID0gb2Zmc2V0WCArIHdpZHRo
OwogICAgICAgICAgICAgd2lkZ2V0LT5jb29yZHNbM10gPSBvZmZzZXRZICsgaGVpZ2h0OwogICAg
ICAgICAgICAgd2lkZ2V0LT5jb2xvclswXSAgPSAwLjBmOwotICAgICAgICAgICAgd2lkZ2V0LT5j
b2xvclsxXSAgPSAwLjc4NDMxMzcyNTQ5ZjsKLSAgICAgICAgICAgIHdpZGdldC0+Y29sb3JbMl0g
ID0gMS4xNzY0NzA1ODgyNGY7Ci0gICAgICAgICAgICB3aWRnZXQtPmNvbG9yWzNdICA9IDAuNzg0
MzEzNzI1NDlmOworICAgICAgICAgICAgd2lkZ2V0LT5jb2xvclsxXSAgPSAwLjc4NDMxMzcyNTQ5
MDE5NjFmOworICAgICAgICAgICAgd2lkZ2V0LT5jb2xvclsyXSAgPSAxLjE3NjQ3MDU4ODIzNTI5
NDJmOworICAgICAgICAgICAgd2lkZ2V0LT5jb2xvclszXSAgPSAwLjc4NDMxMzcyNTQ5MDE5NjFm
OwogICAgICAgICB9CiAgICAgICAgIG1TdGF0ZS5tT3ZlcmxheVdpZGdldHNbV2lkZ2V0SWQ6OlZ1
bGthblVuaWZvcm1EZXNjcmlwdG9yQ2FjaGVTaXplXS5yZXNldCh3aWRnZXQpOwogICAgICAgICB7
CkBAIC01MjcsMTEgKzUyNywzNCBAQCB2b2lkIE92ZXJsYXk6OmluaXRPdmVybGF5V2lkZ2V0cygp
CiAgICAgICAgICAgICB3aWRnZXQtPmRlc2NyaXB0aW9uLmNvb3Jkc1syXSA9IG9mZnNldFggKyB3
aWR0aDsKICAgICAgICAgICAgIHdpZGdldC0+ZGVzY3JpcHRpb24uY29vcmRzWzNdID0gb2Zmc2V0
WTsKICAgICAgICAgICAgIHdpZGdldC0+ZGVzY3JpcHRpb24uY29sb3JbMF0gID0gMC4wZjsKLSAg
ICAgICAgICAgIHdpZGdldC0+ZGVzY3JpcHRpb24uY29sb3JbMV0gID0gMC43ODQzMTM3MjU0OWY7
Ci0gICAgICAgICAgICB3aWRnZXQtPmRlc2NyaXB0aW9uLmNvbG9yWzJdICA9IDAuMjk0MTE3NjQ3
MDU5ZjsKKyAgICAgICAgICAgIHdpZGdldC0+ZGVzY3JpcHRpb24uY29sb3JbMV0gID0gMC43ODQz
MTM3MjU0OTAxOTYxZjsKKyAgICAgICAgICAgIHdpZGdldC0+ZGVzY3JpcHRpb24uY29sb3JbMl0g
ID0gMC4yOTQxMTc2NDcwNTg4MjM1NGY7CiAgICAgICAgICAgICB3aWRnZXQtPmRlc2NyaXB0aW9u
LmNvbG9yWzNdICA9IDEuMGY7CiAgICAgICAgIH0KICAgICB9CisKKyAgICB7CisgICAgICAgIENv
dW50ICp3aWRnZXQgPSBuZXcgQ291bnQ7CisgICAgICAgIHsKKyAgICAgICAgICAgIGNvbnN0IGlu
dDMyX3QgZm9udFNpemUgPSBHZXRGb250U2l6ZShrRm9udE1pcFNtYWxsLCBrTGFyZ2VGb250KTsK
KyAgICAgICAgICAgIGNvbnN0IGludDMyX3Qgb2Zmc2V0WCAgPSAxMDsKKyAgICAgICAgICAgIGNv
bnN0IGludDMyX3Qgb2Zmc2V0WSAgPSAxMDA7CisgICAgICAgICAgICBjb25zdCBpbnQzMl90IHdp
ZHRoICAgID0gMzAgKiAoa0ZvbnRHbHlwaFdpZHRoID4+IGZvbnRTaXplKTsKKyAgICAgICAgICAg
IGNvbnN0IGludDMyX3QgaGVpZ2h0ICAgPSAoa0ZvbnRHbHlwaEhlaWdodCA+PiBmb250U2l6ZSk7
CisKKyAgICAgICAgICAgIHdpZGdldC0+dHlwZSAgICAgID0gV2lkZ2V0VHlwZTo6Q291bnQ7Cisg
ICAgICAgICAgICB3aWRnZXQtPmZvbnRTaXplICA9IGZvbnRTaXplOworICAgICAgICAgICAgd2lk
Z2V0LT5jb29yZHNbMF0gPSBvZmZzZXRYOworICAgICAgICAgICAgd2lkZ2V0LT5jb29yZHNbMV0g
PSBvZmZzZXRZOworICAgICAgICAgICAgd2lkZ2V0LT5jb29yZHNbMl0gPSBvZmZzZXRYICsgd2lk
dGg7CisgICAgICAgICAgICB3aWRnZXQtPmNvb3Jkc1szXSA9IG9mZnNldFkgKyBoZWlnaHQ7Cisg
ICAgICAgICAgICB3aWRnZXQtPmNvbG9yWzBdICA9IDEuMGY7CisgICAgICAgICAgICB3aWRnZXQt
PmNvbG9yWzFdICA9IDEuMGY7CisgICAgICAgICAgICB3aWRnZXQtPmNvbG9yWzJdICA9IDEuMGY7
CisgICAgICAgICAgICB3aWRnZXQtPmNvbG9yWzNdICA9IDEuMGY7CisgICAgICAgIH0KKyAgICAg
ICAgbVN0YXRlLm1PdmVybGF5V2lkZ2V0c1tXaWRnZXRJZDo6VnVsa2FuRGVzY3JpcHRvckNhY2hl
S2V5U2l6ZV0ucmVzZXQod2lkZ2V0KTsKKyAgICB9CiB9CiAKIH0gIC8vIG5hbWVzcGFjZSBnbApk
aWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL092ZXJsYXlf
YXV0b2dlbi5oIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL092ZXJsYXlf
YXV0b2dlbi5oCmluZGV4IDA2ZGI0ODk2NGZiODcyYTZmZGUyYzMzNGNkYTMyMTBlYzE1NDM1MTcu
LjM0ZmFjZmI5OTI3MjUyODM0MGJjMGJmNTU5ZDFhNTM2YWNhYTU0MDggMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9PdmVybGF5X2F1dG9nZW4uaAorKysg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvT3ZlcmxheV9hdXRvZ2VuLmgK
QEAgLTM4LDYgKzM4LDggQEAgZW51bSBjbGFzcyBXaWRnZXRJZAogICAgIFZ1bGthblRleHR1cmVE
ZXNjcmlwdG9yQ2FjaGVTaXplLAogICAgIC8vIE51bWJlciBvZiBjYWNoZWQgZGVmYXVsdCB1bmlm
b3JtIGRlc2NyaXB0b3Igc2V0cwogICAgIFZ1bGthblVuaWZvcm1EZXNjcmlwdG9yQ2FjaGVTaXpl
LAorICAgIC8vIFRvdGFsIHNpemUgb2YgYWxsIGtleXMgaW4gdGhlIGRlc2NyaXB0b3Igc2V0IGNh
Y2hlcworICAgIFZ1bGthbkRlc2NyaXB0b3JDYWNoZUtleVNpemUsCiAKICAgICBJbnZhbGlkRW51
bSwKICAgICBFbnVtQ291bnQgPSBJbnZhbGlkRW51bSwKQEAgLTU3LDYgKzU5LDcgQEAgZW51bSBj
bGFzcyBXaWRnZXRJZAogICAgIFBST0MoVnVsa2FuRHluYW1pY0J1ZmZlckFsbG9jYXRpb25zKSAg
ICAgICAgXAogICAgIFBST0MoVnVsa2FuRGVzY3JpcHRvckNhY2hlU2l6ZSkgICAgICAgICAgICAg
XAogICAgIFBST0MoVnVsa2FuVGV4dHVyZURlc2NyaXB0b3JDYWNoZVNpemUpICAgICAgXAotICAg
IFBST0MoVnVsa2FuVW5pZm9ybURlc2NyaXB0b3JDYWNoZVNpemUpCisgICAgUFJPQyhWdWxrYW5V
bmlmb3JtRGVzY3JpcHRvckNhY2hlU2l6ZSkgICAgICBcCisgICAgUFJPQyhWdWxrYW5EZXNjcmlw
dG9yQ2FjaGVLZXlTaXplKQogCiB9ICAvLyBuYW1lc3BhY2UgZ2wKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9Qcm9ncmFtLmNwcCBiL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9Qcm9ncmFtLmNwcAppbmRleCAyN2FiYTYzYzMxNTFj
NTdjZjI2OWU3OGE1OGEzNmM2Y2I5Y2RhZDE0Li40ODI3N2EyNTMxZTM2ODk3ZDIzNTE5M2YzMDlk
NzMxOTZmYjk4OThjIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGli
QU5HTEUvUHJvZ3JhbS5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFO
R0xFL1Byb2dyYW0uY3BwCkBAIC0xMzQzLDYgKzEzNDMsNyBAQCBhbmdsZTo6UmVzdWx0IFByb2dy
YW06OmxpbmtJbXBsKGNvbnN0IENvbnRleHQgKmNvbnRleHQpCiAKICAgICAgICAgICAgIG1TdGF0
ZS5tRXhlY3V0YWJsZS0+bVVzZXNFYXJseUZyYWdtZW50VGVzdHNPcHRpbWl6YXRpb24gPQogICAg
ICAgICAgICAgICAgIGZyYWdtZW50U2hhZGVyLT5oYXNFYXJseUZyYWdtZW50VGVzdHNPcHRpbWl6
YXRpb24oKTsKKyAgICAgICAgICAgIG1TdGF0ZS5tQWR2YW5jZWRCbGVuZEVxdWF0aW9ucyA9IGZy
YWdtZW50U2hhZGVyLT5nZXRBZHZhbmNlZEJsZW5kRXF1YXRpb25zKCk7CiAgICAgICAgICAgICBt
U3RhdGUubVNwZWNDb25zdFVzYWdlQml0cyB8PSBmcmFnbWVudFNoYWRlci0+Z2V0U3BlY0NvbnN0
VXNhZ2VCaXRzKCk7CiAgICAgICAgIH0KIApAQCAtMTU0MCw2ICsxNTQxLDcgQEAgdm9pZCBQcm9n
cmFtOjp1bmxpbmsoKQogICAgIG1TdGF0ZS5tQ2FjaGVkQmFzZVZlcnRleCAgICAgICAgICAgICAg
PSAwOwogICAgIG1TdGF0ZS5tQ2FjaGVkQmFzZUluc3RhbmNlICAgICAgICAgICAgPSAwOwogICAg
IG1TdGF0ZS5tRWFybHlGcmFtZW50VGVzdHNPcHRpbWl6YXRpb24gPSBmYWxzZTsKKyAgICBtU3Rh
dGUubUFkdmFuY2VkQmxlbmRFcXVhdGlvbnMucmVzZXQoKTsKICAgICBtU3RhdGUubVNwZWNDb25z
dFVzYWdlQml0cy5yZXNldCgpOwogCiAgICAgbVZhbGlkYXRlZCA9IGZhbHNlOwpAQCAtMzYxNiw2
ICszNjE4LDcgQEAgYW5nbGU6OlJlc3VsdCBQcm9ncmFtOjpzZXJpYWxpemUoY29uc3QgQ29udGV4
dCAqY29udGV4dCwgYW5nbGU6Ok1lbW9yeUJ1ZmZlciAqYmkKIAogICAgIHN0cmVhbS53cml0ZUlu
dChtU3RhdGUubU51bVZpZXdzKTsKICAgICBzdHJlYW0ud3JpdGVCb29sKG1TdGF0ZS5tRWFybHlG
cmFtZW50VGVzdHNPcHRpbWl6YXRpb24pOworICAgIHN0cmVhbS53cml0ZUludChtU3RhdGUubUFk
dmFuY2VkQmxlbmRFcXVhdGlvbnMuYml0cygpKTsKICAgICBzdHJlYW0ud3JpdGVJbnQobVN0YXRl
Lm1TcGVjQ29uc3RVc2FnZUJpdHMuYml0cygpKTsKIAogICAgIHN0cmVhbS53cml0ZUludChtU3Rh
dGUuZ2V0VW5pZm9ybUxvY2F0aW9ucygpLnNpemUoKSk7CkBAIC0zNzA4LDcgKzM3MTEsMTIgQEAg
YW5nbGU6OlJlc3VsdCBQcm9ncmFtOjpkZXNlcmlhbGl6ZShjb25zdCBDb250ZXh0ICpjb250ZXh0
LAogCiAgICAgbVN0YXRlLm1OdW1WaWV3cyAgICAgICAgICAgICAgICAgICAgICA9IHN0cmVhbS5y
ZWFkSW50PGludD4oKTsKICAgICBtU3RhdGUubUVhcmx5RnJhbWVudFRlc3RzT3B0aW1pemF0aW9u
ID0gc3RyZWFtLnJlYWRCb29sKCk7Ci0gICAgbVN0YXRlLm1TcGVjQ29uc3RVc2FnZUJpdHMgICAg
ICAgICAgICA9IHJ4OjpTcGVjQ29uc3RVc2FnZUJpdHMoc3RyZWFtLnJlYWRJbnQ8dWludDMyX3Q+
KCkpOworCisgICAgc3RhdGljX2Fzc2VydChzaXplb2YobVN0YXRlLm1BZHZhbmNlZEJsZW5kRXF1
YXRpb25zLmJpdHMoKSkgPT0gc2l6ZW9mKHVpbnQzMl90KSk7CisgICAgbVN0YXRlLm1BZHZhbmNl
ZEJsZW5kRXF1YXRpb25zID0gQmxlbmRFcXVhdGlvbkJpdFNldChzdHJlYW0ucmVhZEludDx1aW50
MzJfdD4oKSk7CisKKyAgICBzdGF0aWNfYXNzZXJ0KHNpemVvZihtU3RhdGUubVNwZWNDb25zdFVz
YWdlQml0cy5iaXRzKCkpID09IHNpemVvZih1aW50MzJfdCkpOworICAgIG1TdGF0ZS5tU3BlY0Nv
bnN0VXNhZ2VCaXRzID0gcng6OlNwZWNDb25zdFVzYWdlQml0cyhzdHJlYW0ucmVhZEludDx1aW50
MzJfdD4oKSk7CiAKICAgICBjb25zdCBzaXplX3QgdW5pZm9ybUluZGV4Q291bnQgPSBzdHJlYW0u
cmVhZEludDxzaXplX3Q+KCk7CiAgICAgQVNTRVJUKG1TdGF0ZS5tVW5pZm9ybUxvY2F0aW9ucy5l
bXB0eSgpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdM
RS9Qcm9ncmFtLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvUHJvZ3Jh
bS5oCmluZGV4IGQzNWMwYTg2ZDRlMWIzZjU3NjY0NzdjYTY5MjJkNGFiMGEwYTJlZWQuLjBlNGM1
OWFiYTMxYmFjNzljMmFmZTk5MWVhYzA0NjVkMmZiYWEzNzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9Qcm9ncmFtLmgKKysrIGIvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL1Byb2dyYW0uaApAQCAtMzQ0LDYgKzM0NCw3IEBAIGNs
YXNzIFByb2dyYW1TdGF0ZSBmaW5hbCA6IGFuZ2xlOjpOb25Db3B5YWJsZQogCiAgICAgYm9vbCBo
YXNJbWFnZXMoKSBjb25zdCB7IHJldHVybiAhZ2V0SW1hZ2VCaW5kaW5ncygpLmVtcHR5KCk7IH0K
ICAgICBib29sIGhhc0Vhcmx5RnJhZ21lbnRUZXN0c09wdGltaXphdGlvbigpIGNvbnN0IHsgcmV0
dXJuIG1FYXJseUZyYW1lbnRUZXN0c09wdGltaXphdGlvbjsgfQorICAgIEJsZW5kRXF1YXRpb25C
aXRTZXQgZ2V0QWR2YW5jZWRCbGVuZEVxdWF0aW9ucygpIGNvbnN0IHsgcmV0dXJuIG1BZHZhbmNl
ZEJsZW5kRXF1YXRpb25zOyB9CiAgICAgcng6OlNwZWNDb25zdFVzYWdlQml0cyBnZXRTcGVjQ29u
c3RVc2FnZUJpdHMoKSBjb25zdCB7IHJldHVybiBtU3BlY0NvbnN0VXNhZ2VCaXRzOyB9CiAKICAg
ICAvLyBBIFByb2dyYW0gY2FuIG9ubHkgZWl0aGVyIGJlIGdyYXBoaWNzIG9yIGNvbXB1dGUsIGJ1
dCBuZXZlciBib3RoLCBzbyBpdApAQCAtMzkyLDYgKzM5Myw4IEBAIGNsYXNzIFByb2dyYW1TdGF0
ZSBmaW5hbCA6IGFuZ2xlOjpOb25Db3B5YWJsZQogICAgIGJvb2wgbUJpbmFyeVJldHJpZXZlYWJs
ZUhpbnQ7CiAgICAgYm9vbCBtU2VwYXJhYmxlOwogICAgIGJvb2wgbUVhcmx5RnJhbWVudFRlc3Rz
T3B0aW1pemF0aW9uOworICAgIC8vIEtIUl9ibGVuZF9lcXVhdGlvbl9hZHZhbmNlZCBzdXBwb3J0
ZWQgZXF1YXRpb24gbGlzdAorICAgIEJsZW5kRXF1YXRpb25CaXRTZXQgbUFkdmFuY2VkQmxlbmRF
cXVhdGlvbnM7CiAgICAgcng6OlNwZWNDb25zdFVzYWdlQml0cyBtU3BlY0NvbnN0VXNhZ2VCaXRz
OwogCiAgICAgLy8gQU5HTEVfbXVsdGl2aWV3LgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL2xpYkFOR0xFL1NoYWRlci5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zcmMvbGliQU5HTEUvU2hhZGVyLmNwcAppbmRleCBlYzZmMzc3Zjk4NGVlMzJlNjg1ODIyNzJl
YjA4MmRlMmM4MjlhY2RhLi45NDg0Yjk0Y2ZiMDlmZDc3MDc0NzZiNWFiOTRkNjMyMDk0MGZiZWRl
IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvU2hhZGVy
LmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvU2hhZGVyLmNw
cApAQCAtMzMwLDEyICszMzAsMTMgQEAgdm9pZCBTaGFkZXI6OmNvbXBpbGUoY29uc3QgQ29udGV4
dCAqY29udGV4dCkKICAgICBtU3RhdGUubUdlb21ldHJ5U2hhZGVySW5wdXRQcmltaXRpdmVUeXBl
LnJlc2V0KCk7CiAgICAgbVN0YXRlLm1HZW9tZXRyeVNoYWRlck91dHB1dFByaW1pdGl2ZVR5cGUu
cmVzZXQoKTsKICAgICBtU3RhdGUubUdlb21ldHJ5U2hhZGVyTWF4VmVydGljZXMucmVzZXQoKTsK
LSAgICBtU3RhdGUubUdlb21ldHJ5U2hhZGVySW52b2NhdGlvbnMgICAgICA9IDE7Ci0gICAgbVN0
YXRlLm1UZXNzQ29udHJvbFNoYWRlclZlcnRpY2VzICAgICAgPSAwOwotICAgIG1TdGF0ZS5tVGVz
c0dlbk1vZGUgICAgICAgICAgICAgICAgICAgID0gMDsKLSAgICBtU3RhdGUubVRlc3NHZW5TcGFj
aW5nICAgICAgICAgICAgICAgICA9IDA7Ci0gICAgbVN0YXRlLm1UZXNzR2VuVmVydGV4T3JkZXIg
ICAgICAgICAgICAgPSAwOwotICAgIG1TdGF0ZS5tVGVzc0dlblBvaW50TW9kZSAgICAgICAgICAg
ICAgID0gMDsKKyAgICBtU3RhdGUubUdlb21ldHJ5U2hhZGVySW52b2NhdGlvbnMgPSAxOworICAg
IG1TdGF0ZS5tVGVzc0NvbnRyb2xTaGFkZXJWZXJ0aWNlcyA9IDA7CisgICAgbVN0YXRlLm1UZXNz
R2VuTW9kZSAgICAgICAgICAgICAgID0gMDsKKyAgICBtU3RhdGUubVRlc3NHZW5TcGFjaW5nICAg
ICAgICAgICAgPSAwOworICAgIG1TdGF0ZS5tVGVzc0dlblZlcnRleE9yZGVyICAgICAgICA9IDA7
CisgICAgbVN0YXRlLm1UZXNzR2VuUG9pbnRNb2RlICAgICAgICAgID0gMDsKKyAgICBtU3RhdGUu
bUFkdmFuY2VkQmxlbmRFcXVhdGlvbnMucmVzZXQoKTsKICAgICBtU3RhdGUubUVhcmx5RnJhZ21l
bnRUZXN0c09wdGltaXphdGlvbiA9IGZhbHNlOwogICAgIG1TdGF0ZS5tU3BlY0NvbnN0VXNhZ2VC
aXRzLnJlc2V0KCk7CiAKQEAgLTUzNiw2ICs1MzcsOCBAQCB2b2lkIFNoYWRlcjo6cmVzb2x2ZUNv
bXBpbGUoKQogICAgICAgICAgICAgICAgIEdldEFjdGl2ZVNoYWRlclZhcmlhYmxlcyhzaDo6R2V0
T3V0cHV0VmFyaWFibGVzKGNvbXBpbGVySGFuZGxlKSk7CiAgICAgICAgICAgICBtU3RhdGUubUVh
cmx5RnJhZ21lbnRUZXN0c09wdGltaXphdGlvbiA9CiAgICAgICAgICAgICAgICAgc2g6Okhhc0Vh
cmx5RnJhZ21lbnRUZXN0c09wdGltaXphdGlvbihjb21waWxlckhhbmRsZSk7CisgICAgICAgICAg
ICBtU3RhdGUubUFkdmFuY2VkQmxlbmRFcXVhdGlvbnMgPQorICAgICAgICAgICAgICAgIEJsZW5k
RXF1YXRpb25CaXRTZXQoc2g6OkdldEFkdmFuY2VkQmxlbmRFcXVhdGlvbnMoY29tcGlsZXJIYW5k
bGUpKTsKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9CiAgICAgICAgIGNhc2UgU2hhZGVy
VHlwZTo6R2VvbWV0cnk6CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
bGliQU5HTEUvU2hhZGVyLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUv
U2hhZGVyLmgKaW5kZXggMzdkODI0ZTUxMWUzZDMxMGI4MDcwYzc3ZWUzNWY1ODdkY2ViMjc0MS4u
NTg5OWUwZDNmZTY2NWYzZGJkM2M0MDBlYjNjNjNmODk2ODk1MzBlYyAxMDA2NDQKLS0tIGEvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL1NoYWRlci5oCisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9TaGFkZXIuaApAQCAtMTM1LDYgKzEzNSw3IEBA
IGNsYXNzIFNoYWRlclN0YXRlIGZpbmFsIDogYW5nbGU6Ok5vbkNvcHlhYmxlCiAgICAgc3RkOjp2
ZWN0b3I8c2g6OlNoYWRlclZhcmlhYmxlPiBtQWN0aXZlT3V0cHV0VmFyaWFibGVzOwogCiAgICAg
Ym9vbCBtRWFybHlGcmFnbWVudFRlc3RzT3B0aW1pemF0aW9uOworICAgIEJsZW5kRXF1YXRpb25C
aXRTZXQgbUFkdmFuY2VkQmxlbmRFcXVhdGlvbnM7CiAgICAgcng6OlNwZWNDb25zdFVzYWdlQml0
cyBtU3BlY0NvbnN0VXNhZ2VCaXRzOwogCiAgICAgLy8gQU5HTEVfbXVsdGl2aWV3LgpAQCAtMjAz
LDYgKzIwNCw3IEBAIGNsYXNzIFNoYWRlciBmaW5hbCA6IGFuZ2xlOjpOb25Db3B5YWJsZSwgcHVi
bGljIExhYmVsZWRPYmplY3QKICAgICB7CiAgICAgICAgIHJldHVybiBtU3RhdGUubUVhcmx5RnJh
Z21lbnRUZXN0c09wdGltaXphdGlvbjsKICAgICB9CisgICAgQmxlbmRFcXVhdGlvbkJpdFNldCBn
ZXRBZHZhbmNlZEJsZW5kRXF1YXRpb25zKCkgY29uc3QgeyByZXR1cm4gbVN0YXRlLm1BZHZhbmNl
ZEJsZW5kRXF1YXRpb25zOyB9CiAgICAgcng6OlNwZWNDb25zdFVzYWdlQml0cyBnZXRTcGVjQ29u
c3RVc2FnZUJpdHMoKSBjb25zdCB7IHJldHVybiBtU3RhdGUubVNwZWNDb25zdFVzYWdlQml0czsg
fQogCiAgICAgaW50IGdldFNoYWRlclZlcnNpb24oKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9TdGF0ZS5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9zcmMvbGliQU5HTEUvU3RhdGUuY3BwCmluZGV4IDRhODdmMGQyOTE1OWNlNjQ2MzU0NjQw
MzVjMWMyM2RlNjQxODZmNjMuLjNmZjQ3MzBlZDMyYTViMzRkNWY3YjhkZTYwZmJjZmVjMDljMzhk
ZjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9TdGF0
ZS5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL1N0YXRlLmNw
cApAQCAtMjE3OCw2ICsyMTc4LDEwIEBAIGFuZ2xlOjpSZXN1bHQgU3RhdGU6OmRldGFjaEJ1ZmZl
cihDb250ZXh0ICpjb250ZXh0LCBjb25zdCBCdWZmZXIgKmJ1ZmZlcikKICAgICBpZiAoY3VyVHJh
bnNmb3JtRmVlZGJhY2spCiAgICAgewogICAgICAgICBBTkdMRV9UUlkoY3VyVHJhbnNmb3JtRmVl
ZGJhY2stPmRldGFjaEJ1ZmZlcihjb250ZXh0LCBidWZmZXJJRCkpOworICAgICAgICBpZiAoaXNU
cmFuc2Zvcm1GZWVkYmFja0FjdGl2ZVVucGF1c2VkKCkpCisgICAgICAgIHsKKyAgICAgICAgICAg
IGNvbnRleHQtPmdldFN0YXRlQ2FjaGUoKS5vbkFjdGl2ZVRyYW5zZm9ybUZlZWRiYWNrQ2hhbmdl
KGNvbnRleHQpOworICAgICAgICB9CiAgICAgfQogCiAgICAgaWYgKGdldFZlcnRleEFycmF5KCkt
PmRldGFjaEJ1ZmZlcihjb250ZXh0LCBidWZmZXJJRCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvU3VyZmFjZS5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvbGliQU5HTEUvU3VyZmFjZS5jcHAKaW5kZXggOGIyMTg2ZTYzOTA0MTI5ODhh
Y2UzOWNhYzI2MTA4NTRjZjEyYTMzZi4uNzQ1MTdmMjRkMThiYzZlODdmNzZjNWI5NGRmMjA5NGQ5
MTZiNDczZiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xF
L1N1cmZhY2UuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9T
dXJmYWNlLmNwcApAQCAtOTYsNiArOTYsOCBAQCBTdXJmYWNlOjpTdXJmYWNlKEVHTGludCBzdXJm
YWNlVHlwZSwKICAgICAgIG1Jc0N1cnJlbnRPbkFueUNvbnRleHQoZmFsc2UpLAogICAgICAgbUxv
Y2tCdWZmZXJQdHIobnVsbHB0ciksCiAgICAgICBtTG9ja0J1ZmZlclBpdGNoKDApLAorICAgICAg
bUJ1ZmZlckFnZVF1ZXJpZWRTaW5jZUxhc3RTd2FwKGZhbHNlKSwKKyAgICAgIG1Jc0RhbWFnZVJl
Z2lvblNldChmYWxzZSksCiAgICAgICBtSW5pdFN0YXRlKGdsOjpJbml0U3RhdGU6OkluaXRpYWxp
emVkKSwKICAgICAgIG1JbXBsT2JzZXJ2ZXJCaW5kaW5nKHRoaXMsIGtTdXJmYWNlSW1wbFN1Ympl
Y3RJbmRleCkKIHsKQEAgLTE3NSw2ICsxNzcsMTAgQEAgdm9pZCBTdXJmYWNlOjpwb3N0U3dhcChj
b25zdCBnbDo6Q29udGV4dCAqY29udGV4dCkKICAgICAgICAgbUluaXRTdGF0ZSA9IGdsOjpJbml0
U3RhdGU6Ok1heU5lZWRJbml0OwogICAgICAgICBvblN0YXRlQ2hhbmdlKGFuZ2xlOjpTdWJqZWN0
TWVzc2FnZTo6U3ViamVjdENoYW5nZWQpOwogICAgIH0KKworICAgIG1CdWZmZXJBZ2VRdWVyaWVk
U2luY2VMYXN0U3dhcCA9IGZhbHNlOworCisgICAgbUlzRGFtYWdlUmVnaW9uU2V0ID0gZmFsc2U7
CiB9CiAKIEVycm9yIFN1cmZhY2U6OmluaXRpYWxpemUoY29uc3QgRGlzcGxheSAqZGlzcGxheSkK
QEAgLTYwOSw3ICs2MTUsNyBAQCBHTHVpbnQgU3VyZmFjZTo6Z2V0SWQoKSBjb25zdAogICAgIHJl
dHVybiAwOwogfQogCi1FcnJvciBTdXJmYWNlOjpnZXRCdWZmZXJBZ2UoY29uc3QgZ2w6OkNvbnRl
eHQgKmNvbnRleHQsIEVHTGludCAqYWdlKSBjb25zdAorRXJyb3IgU3VyZmFjZTo6Z2V0QnVmZmVy
QWdlSW1wbChjb25zdCBnbDo6Q29udGV4dCAqY29udGV4dCwgRUdMaW50ICphZ2UpIGNvbnN0CiB7
CiAgICAgLy8gV2hlbiBFR0xfQlVGRkVSX1BSRVNFUlZFRCwgdGhlIHByZXZpb3VzIGZyYW1lIGNv
bnRlbnRzIGFyZSBjb3BpZWQgdG8KICAgICAvLyBjdXJyZW50IGZyYW1lLCBzbyB0aGUgYnVmZmVy
IGFnZSBpcyBhbHdheXMgMS4KQEAgLTYyNCw2ICs2MzAsMTYgQEAgRXJyb3IgU3VyZmFjZTo6Z2V0
QnVmZmVyQWdlKGNvbnN0IGdsOjpDb250ZXh0ICpjb250ZXh0LCBFR0xpbnQgKmFnZSkgY29uc3QK
ICAgICByZXR1cm4gbUltcGxlbWVudGF0aW9uLT5nZXRCdWZmZXJBZ2UoY29udGV4dCwgYWdlKTsK
IH0KIAorRXJyb3IgU3VyZmFjZTo6Z2V0QnVmZmVyQWdlKGNvbnN0IGdsOjpDb250ZXh0ICpjb250
ZXh0LCBFR0xpbnQgKmFnZSkKK3sKKyAgICBFcnJvciBlcnIgPSBnZXRCdWZmZXJBZ2VJbXBsKGNv
bnRleHQsIGFnZSk7CisgICAgaWYgKCFlcnIuaXNFcnJvcigpKQorICAgIHsKKyAgICAgICAgbUJ1
ZmZlckFnZVF1ZXJpZWRTaW5jZUxhc3RTd2FwID0gdHJ1ZTsKKyAgICB9CisgICAgcmV0dXJuIGVy
cjsKK30KKwogc3RkOjp1bmlxdWVfcHRyPGdsOjpGcmFtZWJ1ZmZlcj4gU3VyZmFjZTo6Y3JlYXRl
RGVmYXVsdEZyYW1lYnVmZmVyKGNvbnN0IGdsOjpDb250ZXh0ICpjb250ZXh0LAogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGVnbDo6U3VyZmFjZSAqcmVhZFN1cmZhY2UpCiB7CkBAIC04MjEsNiArODM3LDExIEBAIFdpbmRv
d1N1cmZhY2U6OldpbmRvd1N1cmZhY2Uocng6OkVHTEltcGxGYWN0b3J5ICppbXBsRmFjdG9yeSwK
ICAgICBtSW1wbGVtZW50YXRpb24gPSBpbXBsRmFjdG9yeS0+Y3JlYXRlV2luZG93U3VyZmFjZSht
U3RhdGUsIHdpbmRvdywgYXR0cmlicyk7CiB9CiAKK3ZvaWQgU3VyZmFjZTo6c2V0RGFtYWdlUmVn
aW9uKGNvbnN0IEVHTGludCAqcmVjdHMsIEVHTGludCBuX3JlY3RzKQoreworICAgIG1Jc0RhbWFn
ZVJlZ2lvblNldCA9IHRydWU7Cit9CisKIFdpbmRvd1N1cmZhY2U6On5XaW5kb3dTdXJmYWNlKCkg
e30KIAogUGJ1ZmZlclN1cmZhY2U6OlBidWZmZXJTdXJmYWNlKHJ4OjpFR0xJbXBsRmFjdG9yeSAq
aW1wbEZhY3RvcnksCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGli
QU5HTEUvU3VyZmFjZS5oIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL1N1
cmZhY2UuaAppbmRleCAwODU2YTYyOWJlZmFiOTgxYzFlYjNmYTRjNTkyODY0NWIxOTMxMjI1Li5m
ZjE2YzRhYjlmMzE5Zjg4YmViN2QzNDgwNjE4M2EzMzU5MzFlZjQ3IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvU3VyZmFjZS5oCisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9TdXJmYWNlLmgKQEAgLTIwMywxMCArMjAzLDE0
IEBAIGNsYXNzIFN1cmZhY2UgOiBwdWJsaWMgTGFiZWxlZE9iamVjdCwgcHVibGljIGdsOjpGcmFt
ZWJ1ZmZlckF0dGFjaG1lbnRPYmplY3QKICAgICAvLyBvdGhlcndpc2UuCiAgICAgY29uc3QgZ2w6
Ok9mZnNldCAmZ2V0VGV4dHVyZU9mZnNldCgpIGNvbnN0IHsgcmV0dXJuIG1UZXh0dXJlT2Zmc2V0
OyB9CiAKLSAgICBFcnJvciBnZXRCdWZmZXJBZ2UoY29uc3QgZ2w6OkNvbnRleHQgKmNvbnRleHQs
IEVHTGludCAqYWdlKSBjb25zdDsKKyAgICBFcnJvciBnZXRCdWZmZXJBZ2UoY29uc3QgZ2w6OkNv
bnRleHQgKmNvbnRleHQsIEVHTGludCAqYWdlKTsKIAogICAgIEVycm9yIHNldFJlbmRlckJ1ZmZl
cihFR0xpbnQgcmVuZGVyQnVmZmVyKTsKIAorICAgIGJvb2wgYnVmZmVyQWdlUXVlcmllZFNpbmNl
TGFzdFN3YXAoKSBjb25zdCB7IHJldHVybiBtQnVmZmVyQWdlUXVlcmllZFNpbmNlTGFzdFN3YXA7
IH0KKyAgICB2b2lkIHNldERhbWFnZVJlZ2lvbihjb25zdCBFR0xpbnQgKnJlY3RzLCBFR0xpbnQg
bl9yZWN0cyk7CisgICAgYm9vbCBpc0RhbWFnZVJlZ2lvblNldCgpIGNvbnN0IHsgcmV0dXJuIG1J
c0RhbWFnZVJlZ2lvblNldDsgfQorCiAgIHByb3RlY3RlZDoKICAgICBTdXJmYWNlKEVHTGludCBz
dXJmYWNlVHlwZSwKICAgICAgICAgICAgIGNvbnN0IGVnbDo6Q29uZmlnICpjb25maWcsCkBAIC0y
NjcsNyArMjcxLDEyIEBAIGNsYXNzIFN1cmZhY2UgOiBwdWJsaWMgTGFiZWxlZE9iamVjdCwgcHVi
bGljIGdsOjpGcmFtZWJ1ZmZlckF0dGFjaG1lbnRPYmplY3QKICAgICB1aW50OF90ICptTG9ja0J1
ZmZlclB0cjsgICAgICAvLyBNZW1vcnkgb3duZWQgYnkgYmFja2VuZC4KICAgICBFR0xpbnQgbUxv
Y2tCdWZmZXJQaXRjaDsKIAorICAgIGJvb2wgbUJ1ZmZlckFnZVF1ZXJpZWRTaW5jZUxhc3RTd2Fw
OworICAgIGJvb2wgbUlzRGFtYWdlUmVnaW9uU2V0OworCiAgIHByaXZhdGU6CisgICAgRXJyb3Ig
Z2V0QnVmZmVyQWdlSW1wbChjb25zdCBnbDo6Q29udGV4dCAqY29udGV4dCwgRUdMaW50ICphZ2Up
IGNvbnN0OworCiAgICAgRXJyb3IgZGVzdHJveUltcGwoY29uc3QgRGlzcGxheSAqZGlzcGxheSk7
CiAKICAgICB2b2lkIHBvc3RTd2FwKGNvbnN0IGdsOjpDb250ZXh0ICpjb250ZXh0KTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9UZXh0dXJlLmNwcCBi
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9UZXh0dXJlLmNwcAppbmRleCAx
NmRlMzlkYzlkM2Y1Mjg2NTg3MmJlNjlkYmY5NTFlNjdjNDU0Y2YzLi44YWUxMmNkYmQwOTNhMWYy
NzNiOTQzMDcxYTU0NDQ5MWZlMDIzZThlIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9zcmMvbGliQU5HTEUvVGV4dHVyZS5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvc3JjL2xpYkFOR0xFL1RleHR1cmUuY3BwCkBAIC0xMjEzLDcgKzEyMTMsMTUgQEAgdm9pZCBU
ZXh0dXJlOjpzaWduYWxEaXJ0eVN0YXRlKHNpemVfdCBkaXJ0eUJpdCkKICAgICBtRGlydHlCaXRz
LnNldChkaXJ0eUJpdCk7CiAgICAgaW52YWxpZGF0ZUNvbXBsZXRlbmVzc0NhY2hlKCk7CiAgICAg
bVN0YXRlLm1DYWNoZWRTYW1wbGVyRm9ybWF0VmFsaWQgPSBmYWxzZTsKLSAgICBvblN0YXRlQ2hh
bmdlKGFuZ2xlOjpTdWJqZWN0TWVzc2FnZTo6RGlydHlCaXRzRmxhZ2dlZCk7CisKKyAgICBpZiAo
ZGlydHlCaXQgPT0gRElSVFlfQklUX0JBU0VfTEVWRUwgfHwgZGlydHlCaXQgPT0gRElSVFlfQklU
X01BWF9MRVZFTCkKKyAgICB7CisgICAgICAgIG9uU3RhdGVDaGFuZ2UoYW5nbGU6OlN1YmplY3RN
ZXNzYWdlOjpTdWJqZWN0Q2hhbmdlZCk7CisgICAgfQorICAgIGVsc2UKKyAgICB7CisgICAgICAg
IG9uU3RhdGVDaGFuZ2UoYW5nbGU6OlN1YmplY3RNZXNzYWdlOjpEaXJ0eUJpdHNGbGFnZ2VkKTsK
KyAgICB9CiB9CiAKIGFuZ2xlOjpSZXN1bHQgVGV4dHVyZTo6c2V0SW1hZ2UoQ29udGV4dCAqY29u
dGV4dCwKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9h
bmdsZXR5cGVzLmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9hbmds
ZXR5cGVzLmNwcAppbmRleCAxNGQ4YmMwZDI1ZjFmMmYxMTY3NGFlODA2ZTg2NDJlMDE3N2RjYzIy
Li45MDc2MTYwOTU4ZjIyYjc5YmM0N2RjZTNhYTI3OTE1Y2VmMmQ1OGZjIDEwMDY0NAotLS0gYS9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvYW5nbGV0eXBlcy5jcHAKKysrIGIv
U291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL2FuZ2xldHlwZXMuY3BwCkBAIC0z
Niw2ICszNiwxMiBAQCBib29sIEVuY2xvc2VzUmFuZ2UoaW50IG91dHNpZGVMb3csIGludCBvdXRz
aWRlSGlnaCwgaW50IGluc2lkZUxvdywgaW50IGluc2lkZUhpZwogewogICAgIHJldHVybiBvdXRz
aWRlTG93IDw9IGluc2lkZUxvdyAmJiBvdXRzaWRlSGlnaCA+PSBpbnNpZGVIaWdoOwogfQorCiti
b29sIElzQWR2YW5jZWRCbGVuZEVxdWF0aW9uKGdsOjpCbGVuZEVxdWF0aW9uVHlwZSBibGVuZEVx
dWF0aW9uKQoreworICAgIHJldHVybiBibGVuZEVxdWF0aW9uID49IGdsOjpCbGVuZEVxdWF0aW9u
VHlwZTo6TXVsdGlwbHkgJiYKKyAgICAgICAgICAgYmxlbmRFcXVhdGlvbiA8PSBnbDo6QmxlbmRF
cXVhdGlvblR5cGU6OkhzbEx1bWlub3NpdHk7Cit9CiB9ICAvLyBhbm9ueW1vdXMgbmFtZXNwYWNl
CiAKIFJhc3Rlcml6ZXJTdGF0ZTo6UmFzdGVyaXplclN0YXRlKCkKQEAgLTM1Myw3ICszNTksNiBA
QCBCbGVuZFN0YXRlRXh0OjpCbGVuZFN0YXRlRXh0KGNvbnN0IHNpemVfdCBkcmF3QnVmZmVycykK
ICAgICAgIG1Db2xvck1hc2soQ29sb3JNYXNrU3RvcmFnZTo6R2V0UmVwbGljYXRlZFZhbHVlKFBh
Y2tDb2xvck1hc2sodHJ1ZSwgdHJ1ZSwgdHJ1ZSwgdHJ1ZSksCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtTWF4Q29sb3JNYXNrKSksCiAgICAg
ICBtTWF4RW5hYmxlZE1hc2soMHhGRiA+PiAoOCAtIGRyYXdCdWZmZXJzKSksCi0gICAgICBtRW5h
YmxlZE1hc2soKSwKICAgICAgIG1NYXhEcmF3QnVmZmVycyhkcmF3QnVmZmVycykKIHt9CiAKQEAg
LTQzNCwxMCArNDM5LDEwIEBAIERyYXdCdWZmZXJNYXNrIEJsZW5kU3RhdGVFeHQ6OmNvbXBhcmVD
b2xvck1hc2soQ29sb3JNYXNrU3RvcmFnZTo6VHlwZSBvdGhlcikgY29uCiAgICAgcmV0dXJuIENv
bG9yTWFza1N0b3JhZ2U6OkdldERpZmZNYXNrKG1Db2xvck1hc2ssIG90aGVyKTsKIH0KIAotQmxl
bmRTdGF0ZUV4dDo6RXF1YXRpb25TdG9yYWdlOjpUeXBlIEJsZW5kU3RhdGVFeHQ6OmV4cGFuZEVx
dWF0aW9uVmFsdWUoY29uc3QgR0xlbnVtIG1vZGUpIGNvbnN0CitCbGVuZFN0YXRlRXh0OjpFcXVh
dGlvblN0b3JhZ2U6OlR5cGUgQmxlbmRTdGF0ZUV4dDo6ZXhwYW5kRXF1YXRpb25WYWx1ZSgKKyAg
ICBjb25zdCBnbDo6QmxlbmRFcXVhdGlvblR5cGUgZXF1YXRpb24pIGNvbnN0CiB7Ci0gICAgcmV0
dXJuIEVxdWF0aW9uU3RvcmFnZTo6R2V0UmVwbGljYXRlZFZhbHVlKEZyb21HTGVudW08QmxlbmRF
cXVhdGlvblR5cGU+KG1vZGUpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBtTWF4RXF1YXRpb25NYXNrKTsKKyAgICByZXR1cm4gRXF1YXRpb25TdG9yYWdl
OjpHZXRSZXBsaWNhdGVkVmFsdWUoZXF1YXRpb24sIG1NYXhFcXVhdGlvbk1hc2spOwogfQogCiBC
bGVuZFN0YXRlRXh0OjpFcXVhdGlvblN0b3JhZ2U6OlR5cGUgQmxlbmRTdGF0ZUV4dDo6ZXhwYW5k
RXF1YXRpb25Db2xvckluZGV4ZWQoCkBAIC00NTYsOCArNDYxLDIyIEBAIEJsZW5kU3RhdGVFeHQ6
OkVxdWF0aW9uU3RvcmFnZTo6VHlwZSBCbGVuZFN0YXRlRXh0OjpleHBhbmRFcXVhdGlvbkFscGhh
SW5kZXhlZCgKIAogdm9pZCBCbGVuZFN0YXRlRXh0OjpzZXRFcXVhdGlvbnMoY29uc3QgR0xlbnVt
IG1vZGVDb2xvciwgY29uc3QgR0xlbnVtIG1vZGVBbHBoYSkKIHsKLSAgICBtRXF1YXRpb25Db2xv
ciA9IGV4cGFuZEVxdWF0aW9uVmFsdWUobW9kZUNvbG9yKTsKLSAgICBtRXF1YXRpb25BbHBoYSA9
IGV4cGFuZEVxdWF0aW9uVmFsdWUobW9kZUFscGhhKTsKKyAgICBjb25zdCBnbDo6QmxlbmRFcXVh
dGlvblR5cGUgY29sb3JFcXVhdGlvbiA9IEZyb21HTGVudW08QmxlbmRFcXVhdGlvblR5cGU+KG1v
ZGVDb2xvcik7CisgICAgY29uc3QgZ2w6OkJsZW5kRXF1YXRpb25UeXBlIGFscGhhRXF1YXRpb24g
PSBGcm9tR0xlbnVtPEJsZW5kRXF1YXRpb25UeXBlPihtb2RlQWxwaGEpOworCisgICAgbUVxdWF0
aW9uQ29sb3IgPSBleHBhbmRFcXVhdGlvblZhbHVlKGNvbG9yRXF1YXRpb24pOworICAgIG1FcXVh
dGlvbkFscGhhID0gZXhwYW5kRXF1YXRpb25WYWx1ZShhbHBoYUVxdWF0aW9uKTsKKworICAgIC8v
IE5vdGUgdGhhdCBhZHZhbmNlZCBibGVuZCBlcXVhdGlvbnMgY2Fubm90IGJlIGluZGVwZW5kZW50
bHkgc2V0IGZvciBjb2xvciBhbmQgYWxwaGEsIHNvIG9ubHkKKyAgICAvLyB0aGUgY29sb3IgZXF1
YXRpb24gY2FuIGJlIGNoZWNrZWQuCisgICAgaWYgKElzQWR2YW5jZWRCbGVuZEVxdWF0aW9uKGNv
bG9yRXF1YXRpb24pKQorICAgIHsKKyAgICAgICAgbVVzZXNBZHZhbmNlZEJsZW5kRXF1YXRpb25N
YXNrID0gbU1heEVuYWJsZWRNYXNrOworICAgIH0KKyAgICBlbHNlCisgICAgeworICAgICAgICBt
VXNlc0FkdmFuY2VkQmxlbmRFcXVhdGlvbk1hc2sucmVzZXQoKTsKKyAgICB9CiB9CiAKIHZvaWQg
QmxlbmRTdGF0ZUV4dDo6c2V0RXF1YXRpb25zSW5kZXhlZChjb25zdCBzaXplX3QgaW5kZXgsCkBA
IC00NjUsMTAgKzQ4NCwxNCBAQCB2b2lkIEJsZW5kU3RhdGVFeHQ6OnNldEVxdWF0aW9uc0luZGV4
ZWQoY29uc3Qgc2l6ZV90IGluZGV4LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGNvbnN0IEdMZW51bSBtb2RlQWxwaGEpCiB7CiAgICAgQVNTRVJUKGluZGV4IDwgbU1h
eERyYXdCdWZmZXJzKTsKLSAgICBFcXVhdGlvblN0b3JhZ2U6OlNldFZhbHVlSW5kZXhlZChpbmRl
eCwgRnJvbUdMZW51bTxCbGVuZEVxdWF0aW9uVHlwZT4obW9kZUNvbG9yKSwKLSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAmbUVxdWF0aW9uQ29sb3IpOwotICAgIEVxdWF0aW9u
U3RvcmFnZTo6U2V0VmFsdWVJbmRleGVkKGluZGV4LCBGcm9tR0xlbnVtPEJsZW5kRXF1YXRpb25U
eXBlPihtb2RlQWxwaGEpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZt
RXF1YXRpb25BbHBoYSk7CisKKyAgICBjb25zdCBnbDo6QmxlbmRFcXVhdGlvblR5cGUgY29sb3JF
cXVhdGlvbiA9IEZyb21HTGVudW08QmxlbmRFcXVhdGlvblR5cGU+KG1vZGVDb2xvcik7CisgICAg
Y29uc3QgZ2w6OkJsZW5kRXF1YXRpb25UeXBlIGFscGhhRXF1YXRpb24gPSBGcm9tR0xlbnVtPEJs
ZW5kRXF1YXRpb25UeXBlPihtb2RlQWxwaGEpOworCisgICAgRXF1YXRpb25TdG9yYWdlOjpTZXRW
YWx1ZUluZGV4ZWQoaW5kZXgsIGNvbG9yRXF1YXRpb24sICZtRXF1YXRpb25Db2xvcik7CisgICAg
RXF1YXRpb25TdG9yYWdlOjpTZXRWYWx1ZUluZGV4ZWQoaW5kZXgsIGFscGhhRXF1YXRpb24sICZt
RXF1YXRpb25BbHBoYSk7CisKKyAgICBtVXNlc0FkdmFuY2VkQmxlbmRFcXVhdGlvbk1hc2suc2V0
KGluZGV4LCBJc0FkdmFuY2VkQmxlbmRFcXVhdGlvbihjb2xvckVxdWF0aW9uKSk7CiB9CiAKIHZv
aWQgQmxlbmRTdGF0ZUV4dDo6c2V0RXF1YXRpb25zSW5kZXhlZChjb25zdCBzaXplX3QgaW5kZXgs
CkBAIC00NzcsMTIgKzUwMCwxNiBAQCB2b2lkIEJsZW5kU3RhdGVFeHQ6OnNldEVxdWF0aW9uc0lu
ZGV4ZWQoY29uc3Qgc2l6ZV90IGluZGV4LAogewogICAgIEFTU0VSVChpbmRleCA8IG1NYXhEcmF3
QnVmZmVycyk7CiAgICAgQVNTRVJUKHNvdXJjZUluZGV4IDwgc291cmNlLm1NYXhEcmF3QnVmZmVy
cyk7Ci0gICAgRXF1YXRpb25TdG9yYWdlOjpTZXRWYWx1ZUluZGV4ZWQoCi0gICAgICAgIGluZGV4
LCBFcXVhdGlvblN0b3JhZ2U6OkdldFZhbHVlSW5kZXhlZChzb3VyY2VJbmRleCwgc291cmNlLm1F
cXVhdGlvbkNvbG9yKSwKLSAgICAgICAgJm1FcXVhdGlvbkNvbG9yKTsKLSAgICBFcXVhdGlvblN0
b3JhZ2U6OlNldFZhbHVlSW5kZXhlZCgKLSAgICAgICAgaW5kZXgsIEVxdWF0aW9uU3RvcmFnZTo6
R2V0VmFsdWVJbmRleGVkKHNvdXJjZUluZGV4LCBzb3VyY2UubUVxdWF0aW9uQWxwaGEpLAotICAg
ICAgICAmbUVxdWF0aW9uQWxwaGEpOworCisgICAgY29uc3QgZ2w6OkJsZW5kRXF1YXRpb25UeXBl
IGNvbG9yRXF1YXRpb24gPQorICAgICAgICBFcXVhdGlvblN0b3JhZ2U6OkdldFZhbHVlSW5kZXhl
ZChzb3VyY2VJbmRleCwgc291cmNlLm1FcXVhdGlvbkNvbG9yKTsKKyAgICBjb25zdCBnbDo6Qmxl
bmRFcXVhdGlvblR5cGUgYWxwaGFFcXVhdGlvbiA9CisgICAgICAgIEVxdWF0aW9uU3RvcmFnZTo6
R2V0VmFsdWVJbmRleGVkKHNvdXJjZUluZGV4LCBzb3VyY2UubUVxdWF0aW9uQWxwaGEpOworCisg
ICAgRXF1YXRpb25TdG9yYWdlOjpTZXRWYWx1ZUluZGV4ZWQoaW5kZXgsIGNvbG9yRXF1YXRpb24s
ICZtRXF1YXRpb25Db2xvcik7CisgICAgRXF1YXRpb25TdG9yYWdlOjpTZXRWYWx1ZUluZGV4ZWQo
aW5kZXgsIGFscGhhRXF1YXRpb24sICZtRXF1YXRpb25BbHBoYSk7CisKKyAgICBtVXNlc0FkdmFu
Y2VkQmxlbmRFcXVhdGlvbk1hc2suc2V0KGluZGV4LCBJc0FkdmFuY2VkQmxlbmRFcXVhdGlvbihj
b2xvckVxdWF0aW9uKSk7CiB9CiAKIEdMZW51bSBCbGVuZFN0YXRlRXh0OjpnZXRFcXVhdGlvbkNv
bG9ySW5kZXhlZChzaXplX3QgaW5kZXgpIGNvbnN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvYW5nbGV0eXBlcy5oIGIvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc3JjL2xpYkFOR0xFL2FuZ2xldHlwZXMuaAppbmRleCA2YTFlYjkzNDg2Zjk0NTNlN2E5
YWNhYWY4ZWUxZWM0MWE1MWFkZWNkLi5hODkwZjVjMjRhNzRhNzZmYmZiMGRmNzhmZTdmNWY1ZDU3
MjE1YThmIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUv
YW5nbGV0eXBlcy5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9h
bmdsZXR5cGVzLmgKQEAgLTY2NSw3ICs2NjUsNyBAQCBjbGFzcyBCbGVuZFN0YXRlRXh0IGZpbmFs
CiAKICAgICAvLy8vLy8vLy8gQmxlbmQgRXF1YXRpb24gLy8vLy8vLy8vCiAKLSAgICBFcXVhdGlv
blN0b3JhZ2U6OlR5cGUgZXhwYW5kRXF1YXRpb25WYWx1ZShjb25zdCBHTGVudW0gbW9kZSkgY29u
c3Q7CisgICAgRXF1YXRpb25TdG9yYWdlOjpUeXBlIGV4cGFuZEVxdWF0aW9uVmFsdWUoY29uc3Qg
Z2w6OkJsZW5kRXF1YXRpb25UeXBlIGVxdWF0aW9uKSBjb25zdDsKICAgICBFcXVhdGlvblN0b3Jh
Z2U6OlR5cGUgZXhwYW5kRXF1YXRpb25Db2xvckluZGV4ZWQoY29uc3Qgc2l6ZV90IGluZGV4KSBj
b25zdDsKICAgICBFcXVhdGlvblN0b3JhZ2U6OlR5cGUgZXhwYW5kRXF1YXRpb25BbHBoYUluZGV4
ZWQoY29uc3Qgc2l6ZV90IGluZGV4KSBjb25zdDsKICAgICB2b2lkIHNldEVxdWF0aW9ucyhjb25z
dCBHTGVudW0gbW9kZUNvbG9yLCBjb25zdCBHTGVudW0gbW9kZUFscGhhKTsKQEAgLTcyMSw2ICs3
MjEsOCBAQCBjbGFzcyBCbGVuZFN0YXRlRXh0IGZpbmFsCiAKICAgICBEcmF3QnVmZmVyTWFzayBt
TWF4RW5hYmxlZE1hc2s7CiAgICAgRHJhd0J1ZmZlck1hc2sgbUVuYWJsZWRNYXNrOworICAgIC8v
IENhY2hlIG9mIHdoZXRoZXIgdGhlIGJsZW5kIGVxdWF0aW9uIGZvciBlYWNoIGluZGV4IGlzIGZy
b20gS0hSX2JsZW5kX2VxdWF0aW9uX2FkdmFuY2VkLgorICAgIERyYXdCdWZmZXJNYXNrIG1Vc2Vz
QWR2YW5jZWRCbGVuZEVxdWF0aW9uTWFzazsKIAogICAgIHNpemVfdCBtTWF4RHJhd0J1ZmZlcnM7
CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL2Fu
Z2xldHlwZXNfdW5pdHRlc3QuY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFO
R0xFL2FuZ2xldHlwZXNfdW5pdHRlc3QuY3BwCmluZGV4IDNiYTUxNWIxNTM5MTQ2NjhkNzI3M2I3
YTcxMmJmNjhmZjJiMTRjODEuLmRlM2JmMDgzZGEwMmM5OTFhNWViYzJhNjY0NWU1NWMyYjA1MTI3
ZmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9hbmds
ZXR5cGVzX3VuaXR0ZXN0LmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGli
QU5HTEUvYW5nbGV0eXBlc191bml0dGVzdC5jcHAKQEAgLTUwLDcgKzUwLDcgQEAgVEVTVChCbGVu
ZFN0YXRlRXh0LCBJbml0KQogICAgICAgICBBU1NFUlRfRVEoYmxlbmRTdGF0ZUV4dC5tTWF4RHJh
d0J1ZmZlcnMsIDF1KTsKICAgICAgICAgQVNTRVJUX0VRKGJsZW5kU3RhdGVFeHQubU1heEVuYWJs
ZWRNYXNrLnRvX3Vsb25nKCksIDF1KTsKICAgICAgICAgQVNTRVJUX0VRKGJsZW5kU3RhdGVFeHQu
bU1heENvbG9yTWFzaywgaXM2NEJpdCA/IDB4RkZ1IDogMHhGdSk7Ci0gICAgICAgIEFTU0VSVF9F
UShibGVuZFN0YXRlRXh0Lm1NYXhFcXVhdGlvbk1hc2ssIGlzNjRCaXQgPyAweEZGdSA6IDB4RnUp
OworICAgICAgICBBU1NFUlRfRVEoYmxlbmRTdGF0ZUV4dC5tTWF4RXF1YXRpb25NYXNrLCAweEZG
dSk7CiAgICAgICAgIEFTU0VSVF9FUShibGVuZFN0YXRlRXh0Lm1NYXhGYWN0b3JNYXNrLCAweEZG
dSk7CiAgICAgICAgIGNoZWNrSW5pdFN0YXRlKGJsZW5kU3RhdGVFeHQpOwogICAgIH0KQEAgLTYw
LDcgKzYwLDcgQEAgVEVTVChCbGVuZFN0YXRlRXh0LCBJbml0KQogICAgICAgICBBU1NFUlRfRVEo
YmxlbmRTdGF0ZUV4dC5tTWF4RHJhd0J1ZmZlcnMsIDR1KTsKICAgICAgICAgQVNTRVJUX0VRKGJs
ZW5kU3RhdGVFeHQubU1heEVuYWJsZWRNYXNrLnRvX3Vsb25nKCksIDB4RnUpOwogICAgICAgICBB
U1NFUlRfRVEoYmxlbmRTdGF0ZUV4dC5tTWF4Q29sb3JNYXNrLCBpczY0Qml0ID8gMHhGRkZGRkZG
RnUgOiAweEZGRkZ1KTsKLSAgICAgICAgQVNTRVJUX0VRKGJsZW5kU3RhdGVFeHQubU1heEVxdWF0
aW9uTWFzaywgaXM2NEJpdCA/IDB4RkZGRkZGRkZ1IDogMHhGRkZGdSk7CisgICAgICAgIEFTU0VS
VF9FUShibGVuZFN0YXRlRXh0Lm1NYXhFcXVhdGlvbk1hc2ssIDB4RkZGRkZGRkZ1KTsKICAgICAg
ICAgQVNTRVJUX0VRKGJsZW5kU3RhdGVFeHQubU1heEZhY3Rvck1hc2ssIDB4RkZGRkZGRkZ1KTsK
ICAgICAgICAgY2hlY2tJbml0U3RhdGUoYmxlbmRTdGF0ZUV4dCk7CiAgICAgfQpAQCAtNzAsNyAr
NzAsNyBAQCBURVNUKEJsZW5kU3RhdGVFeHQsIEluaXQpCiAgICAgICAgIEFTU0VSVF9FUShibGVu
ZFN0YXRlRXh0Lm1NYXhEcmF3QnVmZmVycywgOHUpOwogICAgICAgICBBU1NFUlRfRVEoYmxlbmRT
dGF0ZUV4dC5tTWF4RW5hYmxlZE1hc2sudG9fdWxvbmcoKSwgMHhGRnUpOwogICAgICAgICBBU1NF
UlRfRVEoYmxlbmRTdGF0ZUV4dC5tTWF4Q29sb3JNYXNrLCBpczY0Qml0ID8gMHhGRkZGRkZGRkZG
RkZGRkZGdSA6IDB4RkZGRkZGRkZ1KTsKLSAgICAgICAgQVNTRVJUX0VRKGJsZW5kU3RhdGVFeHQu
bU1heEVxdWF0aW9uTWFzaywgaXM2NEJpdCA/IDB4RkZGRkZGRkZGRkZGRkZGRnUgOiAweEZGRkZG
RkZGdSk7CisgICAgICAgIEFTU0VSVF9FUShibGVuZFN0YXRlRXh0Lm1NYXhFcXVhdGlvbk1hc2ss
IDB4RkZGRkZGRkZGRkZGRkZGRnUpOwogICAgICAgICBBU1NFUlRfRVEoYmxlbmRTdGF0ZUV4dC5t
TWF4RmFjdG9yTWFzaywgMHhGRkZGRkZGRkZGRkZGRkZGdSk7CiAgICAgICAgIGNoZWNrSW5pdFN0
YXRlKGJsZW5kU3RhdGVFeHQpOwogICAgIH0KQEAgLTEyNiwxMyArMTI2LDEzIEBAIFRFU1QoQmxl
bmRTdGF0ZUV4dCwgQmxlbmRFcXVhdGlvbnMpCiAgICAgZ2w6OkJsZW5kU3RhdGVFeHQgYmxlbmRT
dGF0ZUV4dCA9IGdsOjpCbGVuZFN0YXRlRXh0KDcpOwogCiAgICAgYmxlbmRTdGF0ZUV4dC5zZXRF
cXVhdGlvbnMoR0xfTUlOLCBHTF9GVU5DX1NVQlRSQUNUKTsKLSAgICBBU1NFUlRfRVEoYmxlbmRT
dGF0ZUV4dC5tRXF1YXRpb25Db2xvciwgaXM2NEJpdCA/IDB4MDEwMTAxMDEwMTAxMDF1IDogMHgx
MTExMTExdSk7Ci0gICAgQVNTRVJUX0VRKGJsZW5kU3RhdGVFeHQubUVxdWF0aW9uQWxwaGEsIGlz
NjRCaXQgPyAweDA0MDQwNDA0MDQwNDA0dSA6IDB4NDQ0NDQ0NHUpOworICAgIEFTU0VSVF9FUShi
bGVuZFN0YXRlRXh0Lm1FcXVhdGlvbkNvbG9yLCAweDAxMDEwMTAxMDEwMTAxdSk7CisgICAgQVNT
RVJUX0VRKGJsZW5kU3RhdGVFeHQubUVxdWF0aW9uQWxwaGEsIDB4MDQwNDA0MDQwNDA0MDR1KTsK
IAogICAgIGJsZW5kU3RhdGVFeHQuc2V0RXF1YXRpb25zSW5kZXhlZCgzLCBHTF9NQVgsIEdMX0ZV
TkNfU1VCVFJBQ1QpOwogICAgIGJsZW5kU3RhdGVFeHQuc2V0RXF1YXRpb25zSW5kZXhlZCg1LCBH
TF9NSU4sIEdMX0ZVTkNfQUREKTsKLSAgICBBU1NFUlRfRVEoYmxlbmRTdGF0ZUV4dC5tRXF1YXRp
b25Db2xvciwgaXM2NEJpdCA/IDB4MDEwMTAxMDIwMTAxMDF1IDogMHgxMTEyMTExdSk7Ci0gICAg
QVNTRVJUX0VRKGJsZW5kU3RhdGVFeHQubUVxdWF0aW9uQWxwaGEsIGlzNjRCaXQgPyAweDA0MDAw
NDA0MDQwNDA0dSA6IDB4NDA0NDQ0NHUpOworICAgIEFTU0VSVF9FUShibGVuZFN0YXRlRXh0Lm1F
cXVhdGlvbkNvbG9yLCAweDAxMDEwMTAyMDEwMTAxdSk7CisgICAgQVNTRVJUX0VRKGJsZW5kU3Rh
dGVFeHQubUVxdWF0aW9uQWxwaGEsIDB4MDQwMDA0MDQwNDA0MDR1KTsKICAgICBBU1NFUlRfRVEo
YmxlbmRTdGF0ZUV4dC5nZXRFcXVhdGlvbkNvbG9ySW5kZXhlZCgzKSwgc3RhdGljX2Nhc3Q8R0xl
bnVtPihHTF9NQVgpKTsKICAgICBBU1NFUlRfRVEoYmxlbmRTdGF0ZUV4dC5nZXRFcXVhdGlvbkFs
cGhhSW5kZXhlZCg1KSwgc3RhdGljX2Nhc3Q8R0xlbnVtPihHTF9GVU5DX0FERCkpOwogCkBAIC0x
NDEsOCArMTQxLDggQEAgVEVTVChCbGVuZFN0YXRlRXh0LCBCbGVuZEVxdWF0aW9ucykKICAgICBn
bDo6QmxlbmRTdGF0ZUV4dDo6RXF1YXRpb25TdG9yYWdlOjpUeXBlIG90aGVyRXF1YXRpb25BbHBo
YSA9CiAgICAgICAgIGJsZW5kU3RhdGVFeHQuZXhwYW5kRXF1YXRpb25BbHBoYUluZGV4ZWQoMCk7
CiAKLSAgICBBU1NFUlRfRVEob3RoZXJFcXVhdGlvbkNvbG9yLCBpczY0Qml0ID8gMHgwMTAxMDEw
MTAxMDEwMXUgOiAweDExMTExMTF1KTsKLSAgICBBU1NFUlRfRVEob3RoZXJFcXVhdGlvbkFscGhh
LCBpczY0Qml0ID8gMHgwNDA0MDQwNDA0MDQwNHUgOiAweDQ0NDQ0NDR1KTsKKyAgICBBU1NFUlRf
RVEob3RoZXJFcXVhdGlvbkNvbG9yLCAweDAxMDEwMTAxMDEwMTAxdSk7CisgICAgQVNTRVJUX0VR
KG90aGVyRXF1YXRpb25BbHBoYSwgMHgwNDA0MDQwNDA0MDQwNHUpOwogCiAgICAgY29uc3QgZ2w6
OkRyYXdCdWZmZXJNYXNrIGRpZmYgPQogICAgICAgICBibGVuZFN0YXRlRXh0LmNvbXBhcmVFcXVh
dGlvbnMob3RoZXJFcXVhdGlvbkNvbG9yLCBvdGhlckVxdWF0aW9uQWxwaGEpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL2NhcHR1cmUvRnJhbWVDYXB0
dXJlLmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9jYXB0dXJlL0Zy
YW1lQ2FwdHVyZS5jcHAKaW5kZXggMzlkM2YyYWMwMGQ0NzNhM2M0MmVlZmRkNmY4ODk0OGNlMzlj
M2IzOS4uNDhkZGZjNTdlYzI5MGEwZWZmZDg2NzdhZWI4ZjIxYWIxZTA5OTVkNSAxMDA2NDQKLS0t
IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL2NhcHR1cmUvRnJhbWVDYXB0
dXJlLmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvY2FwdHVy
ZS9GcmFtZUNhcHR1cmUuY3BwCkBAIC04ODcsNiArODg3LDIxIEBAIHZvaWQgTWF5YmVSZXNldFJl
c291cmNlcyhSZXNvdXJjZUlEVHlwZSByZXNvdXJjZUlEVHlwZSwKICAgICAgICAgICAgICAgICAg
ICAgICAgICBSZXNvdXJjZVRyYWNrZXIgKnJlc291cmNlVHJhY2tlciwKICAgICAgICAgICAgICAg
ICAgICAgICAgICBzdGQ6OnZlY3Rvcjx1aW50OF90PiAqYmluYXJ5RGF0YSkKIHsKKyAgICAvLyBM
b2NhbCBoZWxwZXIgdG8gZ2V0IHdlbGwgc3RydWN0dXJlZCBibG9ja3MgaW4gRGVsZXRlIGNhbGxz
LCBpLmUuCisgICAgLy8gY29uc3QgR0x1aW50IGRlbGV0ZVRleHR1cmVzW10gPSB7CisgICAgLy8g
ICAgZ1RleHR1cmVNYXBbMV0sIGdUZXh0dXJlTWFwWzJdLCBnVGV4dHVyZU1hcFszXSwgZ1RleHR1
cmVNYXBbNF0sCisgICAgLy8gICAgZ1RleHR1cmVNYXBbNV0sIGdUZXh0dXJlTWFwWzZdLCBnVGV4
dHVyZU1hcFs3XSwgZ1RleHR1cmVNYXBbOF19OworICAgIGF1dG8gZm9ybWF0UmVzb3VyY2VJbmRl
eCA9IFtdKHN0ZDo6c3RyaW5nc3RyZWFtICZvdXQsIHNpemVfdCBpKSB7CisgICAgICAgIGlmIChp
ID4gMCkKKyAgICAgICAgeworICAgICAgICAgICAgb3V0IDw8ICIsICI7CisgICAgICAgIH0KKyAg
ICAgICAgaWYgKChpICUgNCkgPT0gMCkKKyAgICAgICAgeworICAgICAgICAgICAgb3V0IDw8ICJc
biAgICAgICAgIjsKKyAgICAgICAgfQorICAgIH07CisKICAgICBzd2l0Y2ggKHJlc291cmNlSURU
eXBlKQogICAgIHsKICAgICAgICAgY2FzZSBSZXNvdXJjZUlEVHlwZTo6QnVmZmVyOgpAQCAtODk0
LDM1ICs5MDksNDEgQEAgdm9pZCBNYXliZVJlc2V0UmVzb3VyY2VzKFJlc291cmNlSURUeXBlIHJl
c291cmNlSURUeXBlLAogICAgICAgICAgICAgVHJhY2tlZFJlc291cmNlICZ0cmFja2VkQnVmZmVy
cyA9CiAgICAgICAgICAgICAgICAgcmVzb3VyY2VUcmFja2VyLT5nZXRUcmFja2VkUmVzb3VyY2Uo
UmVzb3VyY2VJRFR5cGU6OkJ1ZmZlcik7CiAgICAgICAgICAgICBSZXNvdXJjZVNldCAmbmV3QnVm
ZmVycyAgICAgICAgICAgPSB0cmFja2VkQnVmZmVycy5nZXROZXdSZXNvdXJjZXMoKTsKKyAgICAg
ICAgICAgIFJlc291cmNlU2V0ICZidWZmZXJzVG9SZWdlbiAgICAgICA9IHRyYWNrZWRCdWZmZXJz
LmdldFJlc291cmNlc1RvUmVnZW4oKTsKICAgICAgICAgICAgIFJlc291cmNlQ2FsbHMgJmJ1ZmZl
clJlZ2VuQ2FsbHMgICA9IHRyYWNrZWRCdWZmZXJzLmdldFJlc291cmNlUmVnZW5DYWxscygpOwog
ICAgICAgICAgICAgUmVzb3VyY2VDYWxscyAmYnVmZmVyUmVzdG9yZUNhbGxzID0gdHJhY2tlZEJ1
ZmZlcnMuZ2V0UmVzb3VyY2VSZXN0b3JlQ2FsbHMoKTsKIAogICAgICAgICAgICAgQnVmZmVyQ2Fs
bHMgJmJ1ZmZlck1hcENhbGxzICAgPSByZXNvdXJjZVRyYWNrZXItPmdldEJ1ZmZlck1hcENhbGxz
KCk7CiAgICAgICAgICAgICBCdWZmZXJDYWxscyAmYnVmZmVyVW5tYXBDYWxscyA9IHJlc291cmNl
VHJhY2tlci0+Z2V0QnVmZmVyVW5tYXBDYWxscygpOwogCi0gICAgICAgICAgICAvLyBJZiB3ZSBo
YXZlIGFueSBuZXcgYnVmZmVycyBnZW5lcmF0ZWQgYW5kIG5vdCBkZWxldGVkIGR1cmluZyB0aGUg
cnVuLCBkZWxldGUgdGhlbSBub3cKLSAgICAgICAgICAgIGlmICghbmV3QnVmZmVycy5lbXB0eSgp
KQorICAgICAgICAgICAgLy8gSWYgd2UgaGF2ZSBhbnkgbmV3IGJ1ZmZlcnMgZ2VuZXJhdGVkIGFu
ZCBub3QgZGVsZXRlZCBkdXJpbmcgdGhlIHJ1biwgb3IgYW55IGJ1ZmZlcnMKKyAgICAgICAgICAg
IC8vIHRoYXQgd2UgbmVlZCB0byByZWdlbiwgZGVsZXRlIHRoZW0gbm93CisgICAgICAgICAgICBp
ZiAoIW5ld0J1ZmZlcnMuZW1wdHkoKSB8fCAhYnVmZmVyc1RvUmVnZW4uZW1wdHkoKSkKICAgICAg
ICAgICAgIHsKKyAgICAgICAgICAgICAgICBzaXplX3QgY291bnQgPSAwOworCiAgICAgICAgICAg
ICAgICAgb3V0IDw8ICIgICAgY29uc3QgR0x1aW50IGRlbGV0ZUJ1ZmZlcnNbXSA9IHsiOwotICAg
ICAgICAgICAgICAgIFJlc291cmNlU2V0OjppdGVyYXRvciBidWZmZXJJdGVyID0gbmV3QnVmZmVy
cy5iZWdpbigpOwotICAgICAgICAgICAgICAgIGZvciAoc2l6ZV90IGkgPSAwOyBidWZmZXJJdGVy
ICE9IG5ld0J1ZmZlcnMuZW5kKCk7ICsraSwgKytidWZmZXJJdGVyKQorCisgICAgICAgICAgICAg
ICAgZm9yIChhdXRvICZvbGRCdWZmZXIgOiBidWZmZXJzVG9SZWdlbikKICAgICAgICAgICAgICAg
ICB7Ci0gICAgICAgICAgICAgICAgICAgIGlmIChpID4gMCkKLSAgICAgICAgICAgICAgICAgICAg
ewotICAgICAgICAgICAgICAgICAgICAgICAgb3V0IDw8ICIsICI7Ci0gICAgICAgICAgICAgICAg
ICAgIH0KLSAgICAgICAgICAgICAgICAgICAgaWYgKChpICUgNCkgPT0gMCkKLSAgICAgICAgICAg
ICAgICAgICAgewotICAgICAgICAgICAgICAgICAgICAgICAgb3V0IDw8ICJcbiAgICAgICAgIjsK
LSAgICAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgICAgICBvdXQgPDwgImdCdWZm
ZXJNYXBbIiA8PCAqYnVmZmVySXRlciA8PCAiXSI7CisgICAgICAgICAgICAgICAgICAgIGZvcm1h
dFJlc291cmNlSW5kZXgob3V0LCBjb3VudCk7CisgICAgICAgICAgICAgICAgICAgIG91dCA8PCAi
Z0J1ZmZlck1hcFsiIDw8IG9sZEJ1ZmZlciA8PCAiXSI7CisgICAgICAgICAgICAgICAgICAgICsr
Y291bnQ7CiAgICAgICAgICAgICAgICAgfQorCisgICAgICAgICAgICAgICAgZm9yIChhdXRvICZu
ZXdCdWZmZXIgOiBuZXdCdWZmZXJzKQorICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAg
ICAgICAgZm9ybWF0UmVzb3VyY2VJbmRleChvdXQsIGNvdW50KTsKKyAgICAgICAgICAgICAgICAg
ICAgb3V0IDw8ICJnQnVmZmVyTWFwWyIgPDwgbmV3QnVmZmVyIDw8ICJdIjsKKyAgICAgICAgICAg
ICAgICAgICAgKytjb3VudDsKKyAgICAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgICAgICAv
LyBEZWxldGUgYWxsIHRoZSBuZXcgYW5kIG9sZCBidWZmZXJzIGF0IG9uY2UKICAgICAgICAgICAg
ICAgICBvdXQgPDwgIn07XG4iOwotICAgICAgICAgICAgICAgIG91dCA8PCAiICAgIGdsRGVsZXRl
QnVmZmVycygiIDw8IG5ld0J1ZmZlcnMuc2l6ZSgpIDw8ICIsIGRlbGV0ZUJ1ZmZlcnMpO1xuIjsK
KyAgICAgICAgICAgICAgICBvdXQgPDwgIiAgICBnbERlbGV0ZUJ1ZmZlcnMoIiA8PCBjb3VudCA8
PCAiLCBkZWxldGVCdWZmZXJzKTtcbiI7CiAgICAgICAgICAgICB9CiAKICAgICAgICAgICAgIC8v
IElmIGFueSBvZiBvdXIgc3RhcnRpbmcgYnVmZmVycyB3ZXJlIGRlbGV0ZWQgZHVyaW5nIHRoZSBy
dW4sIHJlY3JlYXRlIHRoZW0KLSAgICAgICAgICAgIFJlc291cmNlU2V0ICZidWZmZXJzVG9SZWdl
biA9IHRyYWNrZWRCdWZmZXJzLmdldFJlc291cmNlc1RvUmVnZW4oKTsKICAgICAgICAgICAgIGZv
ciAoR0x1aW50IGlkIDogYnVmZmVyc1RvUmVnZW4pCiAgICAgICAgICAgICB7CiAgICAgICAgICAg
ICAgICAgLy8gRW1pdCB0aGVpciByZWdlbiBjYWxscwpAQCAtMTAwOCwzNCArMTAyOSwzNyBAQCB2
b2lkIE1heWJlUmVzZXRSZXNvdXJjZXMoUmVzb3VyY2VJRFR5cGUgcmVzb3VyY2VJRFR5cGUsCiAg
ICAgICAgICAgICBUcmFja2VkUmVzb3VyY2UgJnRyYWNrZWRGcmFtZWJ1ZmZlcnMgPQogICAgICAg
ICAgICAgICAgIHJlc291cmNlVHJhY2tlci0+Z2V0VHJhY2tlZFJlc291cmNlKFJlc291cmNlSURU
eXBlOjpGcmFtZWJ1ZmZlcik7CiAgICAgICAgICAgICBSZXNvdXJjZVNldCAmbmV3RnJhbWVidWZm
ZXJzICAgICAgICAgICA9IHRyYWNrZWRGcmFtZWJ1ZmZlcnMuZ2V0TmV3UmVzb3VyY2VzKCk7Cisg
ICAgICAgICAgICBSZXNvdXJjZVNldCAmZnJhbWVidWZmZXJzVG9SZWdlbiAgICAgICA9IHRyYWNr
ZWRGcmFtZWJ1ZmZlcnMuZ2V0UmVzb3VyY2VzVG9SZWdlbigpOwogICAgICAgICAgICAgUmVzb3Vy
Y2VDYWxscyAmZnJhbWVidWZmZXJSZWdlbkNhbGxzICAgPSB0cmFja2VkRnJhbWVidWZmZXJzLmdl
dFJlc291cmNlUmVnZW5DYWxscygpOwogICAgICAgICAgICAgUmVzb3VyY2VDYWxscyAmZnJhbWVi
dWZmZXJSZXN0b3JlQ2FsbHMgPSB0cmFja2VkRnJhbWVidWZmZXJzLmdldFJlc291cmNlUmVzdG9y
ZUNhbGxzKCk7CiAKLSAgICAgICAgICAgIC8vIElmIHdlIGhhdmUgYW55IG5ldyBmcmFtZWJ1ZmZl
cnMgZ2VuZXJhdGVkIGFuZCBub3QgZGVsZXRlZCBkdXJpbmcgdGhlIHJ1biwgZGVsZXRlIHRoZW0K
LSAgICAgICAgICAgIC8vIG5vdwotICAgICAgICAgICAgaWYgKCFuZXdGcmFtZWJ1ZmZlcnMuZW1w
dHkoKSkKKyAgICAgICAgICAgIC8vIElmIHdlIGhhdmUgYW55IG5ldyBmcmFtZWJ1ZmZlcnMgZ2Vu
ZXJhdGVkIGFuZCBub3QgZGVsZXRlZCBkdXJpbmcgdGhlIHJ1biwgb3IgYW55CisgICAgICAgICAg
ICAvLyBmcmFtZWJ1ZmZlcnMgdGhhdCB3ZSBuZWVkIHRvIHJlZ2VuLCBkZWxldGUgdGhlbSBub3cK
KyAgICAgICAgICAgIGlmICghbmV3RnJhbWVidWZmZXJzLmVtcHR5KCkgfHwgIWZyYW1lYnVmZmVy
c1RvUmVnZW4uZW1wdHkoKSkKICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBzaXplX3Qg
Y291bnQgPSAwOworCiAgICAgICAgICAgICAgICAgb3V0IDw8ICIgICAgY29uc3QgR0x1aW50IGRl
bGV0ZUZyYW1lYnVmZmVyc1tdID0geyI7Ci0gICAgICAgICAgICAgICAgUmVzb3VyY2VTZXQ6Oml0
ZXJhdG9yIGZyYW1lYnVmZmVySXRlciA9IG5ld0ZyYW1lYnVmZmVycy5iZWdpbigpOwotICAgICAg
ICAgICAgICAgIGZvciAoc2l6ZV90IGkgPSAwOyBmcmFtZWJ1ZmZlckl0ZXIgIT0gbmV3RnJhbWVi
dWZmZXJzLmVuZCgpOyArK2ksICsrZnJhbWVidWZmZXJJdGVyKQorCisgICAgICAgICAgICAgICAg
Zm9yIChhdXRvICZvbGRGYiA6IGZyYW1lYnVmZmVyc1RvUmVnZW4pCiAgICAgICAgICAgICAgICAg
ewotICAgICAgICAgICAgICAgICAgICBpZiAoaSA+IDApCi0gICAgICAgICAgICAgICAgICAgIHsK
LSAgICAgICAgICAgICAgICAgICAgICAgIG91dCA8PCAiLCAiOwotICAgICAgICAgICAgICAgICAg
ICB9Ci0gICAgICAgICAgICAgICAgICAgIGlmICgoaSAlIDQpID09IDApCi0gICAgICAgICAgICAg
ICAgICAgIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIG91dCA8PCAiXG4gICAgICAgICI7Ci0g
ICAgICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICAgICAgb3V0IDw8ICJnRnJhbWVi
dWZmZXJNYXBbIiA8PCAqZnJhbWVidWZmZXJJdGVyIDw8ICJdIjsKKyAgICAgICAgICAgICAgICAg
ICAgZm9ybWF0UmVzb3VyY2VJbmRleChvdXQsIGNvdW50KTsKKyAgICAgICAgICAgICAgICAgICAg
b3V0IDw8ICJnRnJhbWVidWZmZXJNYXBbIiA8PCBvbGRGYiA8PCAiXSI7CisgICAgICAgICAgICAg
ICAgICAgICsrY291bnQ7CisgICAgICAgICAgICAgICAgfQorCisgICAgICAgICAgICAgICAgZm9y
IChhdXRvICZuZXdGYiA6IG5ld0ZyYW1lYnVmZmVycykKKyAgICAgICAgICAgICAgICB7CisgICAg
ICAgICAgICAgICAgICAgIGZvcm1hdFJlc291cmNlSW5kZXgob3V0LCBjb3VudCk7CisgICAgICAg
ICAgICAgICAgICAgIG91dCA8PCAiZ0ZyYW1lYnVmZmVyTWFwWyIgPDwgbmV3RmIgPDwgIl0iOwor
ICAgICAgICAgICAgICAgICAgICArK2NvdW50OwogICAgICAgICAgICAgICAgIH0KKworICAgICAg
ICAgICAgICAgIC8vIERlbGV0ZSBhbGwgdGhlIG5ldyBhbmQgb2xkIGZyYW1lYnVmZmVycyBhdCBv
bmNlCiAgICAgICAgICAgICAgICAgb3V0IDw8ICJ9O1xuIjsKLSAgICAgICAgICAgICAgICBvdXQg
PDwgIiAgICBnbERlbGV0ZUZyYW1lYnVmZmVycygiIDw8IG5ld0ZyYW1lYnVmZmVycy5zaXplKCkK
LSAgICAgICAgICAgICAgICAgICAgPDwgIiwgZGVsZXRlRnJhbWVidWZmZXJzKTtcbiI7CisgICAg
ICAgICAgICAgICAgb3V0IDw8ICIgICAgZ2xEZWxldGVGcmFtZWJ1ZmZlcnMoIiA8PCBjb3VudCA8
PCAiLCBkZWxldGVGcmFtZWJ1ZmZlcnMpO1xuIjsKICAgICAgICAgICAgIH0KIAotICAgICAgICAg
ICAgLy8gSWYgYW55IG9mIG91ciBzdGFydGluZyBmcmFtZWJ1ZmZlcnMgd2VyZSBkZWxldGVkIGR1
cmluZyB0aGUgcnVuLCByZWdlbiB0aGVtCi0gICAgICAgICAgICBSZXNvdXJjZVNldCAmZnJhbWVi
dWZmZXJzVG9SZWdlbiA9IHRyYWNrZWRGcmFtZWJ1ZmZlcnMuZ2V0UmVzb3VyY2VzVG9SZWdlbigp
OwogICAgICAgICAgICAgZm9yIChHTHVpbnQgaWQgOiBmcmFtZWJ1ZmZlcnNUb1JlZ2VuKQogICAg
ICAgICAgICAgewogICAgICAgICAgICAgICAgIC8vIEVtaXQgdGhlaXIgcmVnZW4gY2FsbHMKQEAg
LTEwNjcsMjggKzEwOTEsMjIgQEAgdm9pZCBNYXliZVJlc2V0UmVzb3VyY2VzKFJlc291cmNlSURU
eXBlIHJlc291cmNlSURUeXBlLAogICAgICAgICAgICAgUmVzb3VyY2VTZXQgJm5ld1JlbmRlcmJ1
ZmZlcnMgPQogICAgICAgICAgICAgICAgIHJlc291cmNlVHJhY2tlci0+Z2V0VHJhY2tlZFJlc291
cmNlKFJlc291cmNlSURUeXBlOjpSZW5kZXJidWZmZXIpLmdldE5ld1Jlc291cmNlcygpOwogCi0g
ICAgICAgICAgICAvLyBJZiB3ZSBoYXZlIGFueSBuZXcgcmVuZGVyYnVmZmVycyBnZW5lcmF0ZWQg
YW5kIG5vdCBkZWxldGVkIGR1cmluZyB0aGUgcnVuLCBkZWxldGUKLSAgICAgICAgICAgIC8vIHRo
ZW0gbm93CisgICAgICAgICAgICAvLyBEZWxldGUgYW55IG5ldyByZW5kZXJidWZmZXJzIGdlbmVy
YXRlZCBhbmQgbm90IGRlbGV0ZWQgZHVyaW5nIHRoZSBydW4KICAgICAgICAgICAgIGlmICghbmV3
UmVuZGVyYnVmZmVycy5lbXB0eSgpKQogICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIHNp
emVfdCBjb3VudCA9IDA7CisKICAgICAgICAgICAgICAgICBvdXQgPDwgIiAgICBjb25zdCBHTHVp
bnQgZGVsZXRlUmVuZGVyYnVmZmVyc1tdID0geyI7Ci0gICAgICAgICAgICAgICAgUmVzb3VyY2VT
ZXQ6Oml0ZXJhdG9yIHJlbmRlcmJ1ZmZlckl0ZXIgPSBuZXdSZW5kZXJidWZmZXJzLmJlZ2luKCk7
Ci0gICAgICAgICAgICAgICAgZm9yIChzaXplX3QgaSA9IDA7IHJlbmRlcmJ1ZmZlckl0ZXIgIT0g
bmV3UmVuZGVyYnVmZmVycy5lbmQoKTsKLSAgICAgICAgICAgICAgICAgICAgICsraSwgKytyZW5k
ZXJidWZmZXJJdGVyKQorCisgICAgICAgICAgICAgICAgZm9yIChhdXRvICZuZXdSYiA6IG5ld1Jl
bmRlcmJ1ZmZlcnMpCiAgICAgICAgICAgICAgICAgewotICAgICAgICAgICAgICAgICAgICBpZiAo
aSA+IDApCi0gICAgICAgICAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIG91
dCA8PCAiLCAiOwotICAgICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgICAgIGlm
ICgoaSAlIDQpID09IDApCi0gICAgICAgICAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICAg
ICAgICAgIG91dCA8PCAiXG4gICAgICAgICI7Ci0gICAgICAgICAgICAgICAgICAgIH0KLSAgICAg
ICAgICAgICAgICAgICAgb3V0IDw8ICJnUmVuZGVyYnVmZmVyTWFwWyIgPDwgKnJlbmRlcmJ1ZmZl
ckl0ZXIgPDwgIl0iOworICAgICAgICAgICAgICAgICAgICBmb3JtYXRSZXNvdXJjZUluZGV4KG91
dCwgY291bnQpOworICAgICAgICAgICAgICAgICAgICBvdXQgPDwgImdSZW5kZXJidWZmZXJNYXBb
IiA8PCBuZXdSYiA8PCAiXSI7CisgICAgICAgICAgICAgICAgICAgICsrY291bnQ7CiAgICAgICAg
ICAgICAgICAgfQorCiAgICAgICAgICAgICAgICAgb3V0IDw8ICJ9O1xuIjsKLSAgICAgICAgICAg
ICAgICBvdXQgPDwgIiAgICBnbERlbGV0ZVJlbmRlcmJ1ZmZlcnMoIiA8PCBuZXdSZW5kZXJidWZm
ZXJzLnNpemUoKQotICAgICAgICAgICAgICAgICAgICA8PCAiLCBkZWxldGVSZW5kZXJidWZmZXJz
KTtcbiI7CisgICAgICAgICAgICAgICAgb3V0IDw8ICIgICAgZ2xEZWxldGVSZW5kZXJidWZmZXJz
KCIgPDwgY291bnQgPDwgIiwgZGVsZXRlUmVuZGVyYnVmZmVycyk7XG4iOwogICAgICAgICAgICAg
fQogCiAgICAgICAgICAgICAvLyBUT0RPIChodHRwOi8vYW5nbGVidWcuY29tLzQ1OTkpOiBIYW5k
bGUgcmVuZGVyYnVmZmVycyB0aGF0IG5lZWQgcmVnZW4KQEAgLTExMjIsMzIgKzExNDAsMzcgQEAg
dm9pZCBNYXliZVJlc2V0UmVzb3VyY2VzKFJlc291cmNlSURUeXBlIHJlc291cmNlSURUeXBlLAog
ICAgICAgICAgICAgVHJhY2tlZFJlc291cmNlICZ0cmFja2VkVGV4dHVyZXMgPQogICAgICAgICAg
ICAgICAgIHJlc291cmNlVHJhY2tlci0+Z2V0VHJhY2tlZFJlc291cmNlKFJlc291cmNlSURUeXBl
OjpUZXh0dXJlKTsKICAgICAgICAgICAgIFJlc291cmNlU2V0ICZuZXdUZXh0dXJlcyAgICAgICAg
ICAgPSB0cmFja2VkVGV4dHVyZXMuZ2V0TmV3UmVzb3VyY2VzKCk7CisgICAgICAgICAgICBSZXNv
dXJjZVNldCAmdGV4dHVyZXNUb1JlZ2VuICAgICAgID0gdHJhY2tlZFRleHR1cmVzLmdldFJlc291
cmNlc1RvUmVnZW4oKTsKICAgICAgICAgICAgIFJlc291cmNlQ2FsbHMgJnRleHR1cmVSZWdlbkNh
bGxzICAgPSB0cmFja2VkVGV4dHVyZXMuZ2V0UmVzb3VyY2VSZWdlbkNhbGxzKCk7CiAgICAgICAg
ICAgICBSZXNvdXJjZUNhbGxzICZ0ZXh0dXJlUmVzdG9yZUNhbGxzID0gdHJhY2tlZFRleHR1cmVz
LmdldFJlc291cmNlUmVzdG9yZUNhbGxzKCk7CiAKLSAgICAgICAgICAgIC8vIElmIHdlIGhhdmUg
YW55IG5ldyB0ZXh0dXJlcyBnZW5lcmF0ZWQgYW5kIG5vdCBkZWxldGVkIGR1cmluZyB0aGUgcnVu
LCBkZWxldGUgdGhlbSBub3cKLSAgICAgICAgICAgIGlmICghbmV3VGV4dHVyZXMuZW1wdHkoKSkK
KyAgICAgICAgICAgIC8vIElmIHdlIGhhdmUgYW55IG5ldyB0ZXh0dXJlcyBnZW5lcmF0ZWQgYW5k
IG5vdCBkZWxldGVkIGR1cmluZyB0aGUgcnVuLCBvciBhbnkgdGV4dHVyZXMKKyAgICAgICAgICAg
IC8vIG1vZGlmaWVkIGR1cmluZyB0aGUgcnVuIHRoYXQgd2UgbmVlZCB0byByZWdlbiwgZGVsZXRl
IHRoZW0gbm93CisgICAgICAgICAgICBpZiAoIW5ld1RleHR1cmVzLmVtcHR5KCkgfHwgIXRleHR1
cmVzVG9SZWdlbi5lbXB0eSgpKQogICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIHNpemVf
dCBjb3VudCA9IDA7CisKICAgICAgICAgICAgICAgICBvdXQgPDwgIiAgICBjb25zdCBHTHVpbnQg
ZGVsZXRlVGV4dHVyZXNbXSA9IHsiOwotICAgICAgICAgICAgICAgIFJlc291cmNlU2V0OjppdGVy
YXRvciB0ZXh0dXJlSXRlciA9IG5ld1RleHR1cmVzLmJlZ2luKCk7Ci0gICAgICAgICAgICAgICAg
Zm9yIChzaXplX3QgaSA9IDA7IHRleHR1cmVJdGVyICE9IG5ld1RleHR1cmVzLmVuZCgpOyArK2ks
ICsrdGV4dHVyZUl0ZXIpCisKKyAgICAgICAgICAgICAgICBmb3IgKGF1dG8gJm9sZFRleCA6IHRl
eHR1cmVzVG9SZWdlbikKICAgICAgICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgICAgIGlm
IChpID4gMCkKLSAgICAgICAgICAgICAgICAgICAgewotICAgICAgICAgICAgICAgICAgICAgICAg
b3V0IDw8ICIsICI7Ci0gICAgICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICAgICAg
aWYgKChpICUgNCkgPT0gMCkKLSAgICAgICAgICAgICAgICAgICAgewotICAgICAgICAgICAgICAg
ICAgICAgICAgb3V0IDw8ICJcbiAgICAgICAgIjsKLSAgICAgICAgICAgICAgICAgICAgfQotICAg
ICAgICAgICAgICAgICAgICBvdXQgPDwgImdUZXh0dXJlTWFwWyIgPDwgKnRleHR1cmVJdGVyIDw8
ICJdIjsKKyAgICAgICAgICAgICAgICAgICAgZm9ybWF0UmVzb3VyY2VJbmRleChvdXQsIGNvdW50
KTsKKyAgICAgICAgICAgICAgICAgICAgb3V0IDw8ICJnVGV4dHVyZU1hcFsiIDw8IG9sZFRleCA8
PCAiXSI7CisgICAgICAgICAgICAgICAgICAgICsrY291bnQ7CiAgICAgICAgICAgICAgICAgfQor
CisgICAgICAgICAgICAgICAgZm9yIChhdXRvICZuZXdUZXggOiBuZXdUZXh0dXJlcykKKyAgICAg
ICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIGZvcm1hdFJlc291cmNlSW5kZXgob3V0
LCBjb3VudCk7CisgICAgICAgICAgICAgICAgICAgIG91dCA8PCAiZ1RleHR1cmVNYXBbIiA8PCBu
ZXdUZXggPDwgIl0iOworICAgICAgICAgICAgICAgICAgICArK2NvdW50OworICAgICAgICAgICAg
ICAgIH0KKwogICAgICAgICAgICAgICAgIG91dCA8PCAifTtcbiI7Ci0gICAgICAgICAgICAgICAg
b3V0IDw8ICIgICAgZ2xEZWxldGVUZXh0dXJlcygiIDw8IG5ld1RleHR1cmVzLnNpemUoKSA8PCAi
LCBkZWxldGVUZXh0dXJlcyk7XG4iOworICAgICAgICAgICAgICAgIG91dCA8PCAiICAgIGdsRGVs
ZXRlVGV4dHVyZXMoIiA8PCBjb3VudCA8PCAiLCBkZWxldGVUZXh0dXJlcyk7XG4iOwogICAgICAg
ICAgICAgfQogCi0gICAgICAgICAgICAvLyBJZiBhbnkgb2Ygb3VyIHN0YXJ0aW5nIHRleHR1cmVz
IHdlcmUgZGVsZXRlZCBkdXJpbmcgdGhlIHJ1biwgcmVnZW4gdGhlbQotICAgICAgICAgICAgUmVz
b3VyY2VTZXQgJnRleHR1cmVzVG9SZWdlbiA9IHRyYWNrZWRUZXh0dXJlcy5nZXRSZXNvdXJjZXNU
b1JlZ2VuKCk7CisgICAgICAgICAgICAvLyBJZiBhbnkgb2Ygb3VyIHN0YXJ0aW5nIHRleHR1cmVz
IHdlcmUgZGVsZXRlZCwgcmVnZW4gdGhlbQogICAgICAgICAgICAgZm9yIChHTHVpbnQgaWQgOiB0
ZXh0dXJlc1RvUmVnZW4pCiAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgLy8gRW1pdCB0
aGVpciByZWdlbiBjYWxscwpAQCAtMTE4MiwyNCArMTIwNSwxOSBAQCB2b2lkIE1heWJlUmVzZXRS
ZXNvdXJjZXMoUmVzb3VyY2VJRFR5cGUgcmVzb3VyY2VJRFR5cGUsCiAgICAgICAgICAgICAvLyB0
aGVtIG5vdwogICAgICAgICAgICAgaWYgKCFuZXdWZXJ0ZXh0QXJyYXlzLmVtcHR5KCkpCiAgICAg
ICAgICAgICB7CisgICAgICAgICAgICAgICAgc2l6ZV90IGNvdW50ID0gMDsKKwogICAgICAgICAg
ICAgICAgIG91dCA8PCAiICAgIGNvbnN0IEdMdWludCBkZWxldGVWZXJ0ZXhBcnJheXNbXSA9IHsi
OwotICAgICAgICAgICAgICAgIFJlc291cmNlU2V0OjppdGVyYXRvciB2ZXJ0ZXhBcnJheUl0ZXIg
PSBuZXdWZXJ0ZXh0QXJyYXlzLmJlZ2luKCk7Ci0gICAgICAgICAgICAgICAgZm9yIChzaXplX3Qg
aSA9IDA7IHZlcnRleEFycmF5SXRlciAhPSBuZXdWZXJ0ZXh0QXJyYXlzLmVuZCgpOwotICAgICAg
ICAgICAgICAgICAgICAgKytpLCArK3ZlcnRleEFycmF5SXRlcikKKworICAgICAgICAgICAgICAg
IGZvciAoYXV0byAmbmV3VkEgOiBuZXdWZXJ0ZXh0QXJyYXlzKQogICAgICAgICAgICAgICAgIHsK
LSAgICAgICAgICAgICAgICAgICAgaWYgKGkgPiAwKQotICAgICAgICAgICAgICAgICAgICB7Ci0g
ICAgICAgICAgICAgICAgICAgICAgICBvdXQgPDwgIiwgIjsKLSAgICAgICAgICAgICAgICAgICAg
fQotICAgICAgICAgICAgICAgICAgICBpZiAoKGkgJSA0KSA9PSAwKQotICAgICAgICAgICAgICAg
ICAgICB7Ci0gICAgICAgICAgICAgICAgICAgICAgICBvdXQgPDwgIlxuICAgICAgICAiOwotICAg
ICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgICAgIG91dCA8PCAiZ1ZlcnRleEFy
cmF5TWFwWyIgPDwgKnZlcnRleEFycmF5SXRlciA8PCAiXSI7CisgICAgICAgICAgICAgICAgICAg
IGZvcm1hdFJlc291cmNlSW5kZXgob3V0LCBjb3VudCk7CisgICAgICAgICAgICAgICAgICAgIG91
dCA8PCAiZ1ZlcnRleEFycmF5TWFwWyIgPDwgbmV3VkEgPDwgIl0iOworICAgICAgICAgICAgICAg
ICAgICArK2NvdW50OwogICAgICAgICAgICAgICAgIH0KKwogICAgICAgICAgICAgICAgIG91dCA8
PCAifTtcbiI7Ci0gICAgICAgICAgICAgICAgb3V0IDw8ICIgICAgZ2xEZWxldGVWZXJ0ZXhBcnJh
eXMoIiA8PCBuZXdWZXJ0ZXh0QXJyYXlzLnNpemUoKQotICAgICAgICAgICAgICAgICAgICA8PCAi
LCBkZWxldGVWZXJ0ZXhBcnJheXMpO1xuIjsKKyAgICAgICAgICAgICAgICBvdXQgPDwgIiAgICBn
bERlbGV0ZVZlcnRleEFycmF5cygiIDw8IGNvdW50IDw8ICIsIGRlbGV0ZVZlcnRleEFycmF5cyk7
XG4iOwogICAgICAgICAgICAgfQogCiAgICAgICAgICAgICAvLyBUT0RPIChodHRwOi8vYW5nbGVi
dWcuY29tLzQ1OTkpOiBIYW5kbGUgdmVydGV4IGFycmF5cyB0aGF0IG5lZWQgcmVnZW4KQEAgLTIx
NjYsOSArMjE4NCwxNSBAQCB2b2lkIENhcHR1cmVWZXJ0ZXhBcnJheVN0YXRlKHN0ZDo6dmVjdG9y
PENhbGxDYXB0dXJlPiAqc2V0dXBDYWxscywKICAgICAgICAgICAgIH0KICAgICAgICAgfQogCi0g
ICAgICAgIGlmIChhdHRyaWIuZm9ybWF0ICE9IGRlZmF1bHRBdHRyaWIuZm9ybWF0IHx8IGF0dHJp
Yi5wb2ludGVyICE9IGRlZmF1bHRBdHRyaWIucG9pbnRlciB8fAotICAgICAgICAgICAgYmluZGlu
Zy5nZXRTdHJpZGUoKSAhPSBkZWZhdWx0QmluZGluZy5nZXRTdHJpZGUoKSB8fAotICAgICAgICAg
ICAgYmluZGluZy5nZXRCdWZmZXIoKS5nZXQoKSAhPSBudWxscHRyKQorICAgICAgICAvLyBEb24n
dCBjYXB0dXJlIENhcHR1cmVWZXJ0ZXhBdHRyaWJQb2ludGVyIGNhbGxzIHdoZW4gYSBub24tZGVm
YXVsdCBWQU8gaXMgYm91bmQsIHRoZSBhcnJheQorICAgICAgICAvLyBidWZmZXIgaXMgbnVsbCBh
bmQgYSBub24tbnVsbCBhdHRyaWIgcG9pbnRlciBpcyB1c2VkLgorICAgICAgICBib29sIHNraXBJ
bnZhbGlkQXR0cmliID0gdmVydGV4QXJyYXktPmlkKCkudmFsdWUgIT0gMCAmJgorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgYmluZGluZy5nZXRCdWZmZXIoKS5nZXQoKSA9PSBudWxs
cHRyICYmIGF0dHJpYi5wb2ludGVyICE9IG51bGxwdHI7CisKKyAgICAgICAgaWYgKCFza2lwSW52
YWxpZEF0dHJpYiAmJgorICAgICAgICAgICAgKGF0dHJpYi5mb3JtYXQgIT0gZGVmYXVsdEF0dHJp
Yi5mb3JtYXQgfHwgYXR0cmliLnBvaW50ZXIgIT0gZGVmYXVsdEF0dHJpYi5wb2ludGVyIHx8Cisg
ICAgICAgICAgICAgYmluZGluZy5nZXRTdHJpZGUoKSAhPSBkZWZhdWx0QmluZGluZy5nZXRTdHJp
ZGUoKSB8fAorICAgICAgICAgICAgIGJpbmRpbmcuZ2V0QnVmZmVyKCkuZ2V0KCkgIT0gbnVsbHB0
cikpCiAgICAgICAgIHsKICAgICAgICAgICAgIC8vIEVhY2ggYXR0cmlidXRlIGNhbiBwdWxsIGZy
b20gYSBzZXBhcmF0ZSBidWZmZXIsIHNvIGNoZWNrIHRoZSBiaW5kaW5nCiAgICAgICAgICAgICBn
bDo6QnVmZmVyICpidWZmZXIgPSBiaW5kaW5nLmdldEJ1ZmZlcigpLmdldCgpOwpAQCAtMjU4Nyw3
ICsyNjExLDYgQEAgdm9pZCBDYXB0dXJlQnVmZmVyUmVzZXRDYWxscyhjb25zdCBnbDo6U3RhdGUg
JnJlcGxheVN0YXRlLAogCiAgICAgLy8gVHJhY2sgY2FsbHMgdG8gcmVnZW5lcmF0ZSBhIGdpdmVu
IGJ1ZmZlcgogICAgIFJlc291cmNlQ2FsbHMgJmJ1ZmZlclJlZ2VuQ2FsbHMgPSB0cmFja2VkQnVm
ZmVycy5nZXRSZXNvdXJjZVJlZ2VuQ2FsbHMoKTsKLSAgICBDYXB0dXJlKCZidWZmZXJSZWdlbkNh
bGxzW2J1ZmZlcklEXSwgQ2FwdHVyZURlbGV0ZUJ1ZmZlcnMocmVwbGF5U3RhdGUsIHRydWUsIDEs
IGlkKSk7CiAgICAgQ2FwdHVyZSgmYnVmZmVyUmVnZW5DYWxsc1tidWZmZXJJRF0sIENhcHR1cmVH
ZW5CdWZmZXJzKHJlcGxheVN0YXRlLCB0cnVlLCAxLCBpZCkpOwogICAgIE1heWJlQ2FwdHVyZVVw
ZGF0ZVJlc291cmNlSURzKHJlc291cmNlVHJhY2tlciwgJmJ1ZmZlclJlZ2VuQ2FsbHNbYnVmZmVy
SURdKTsKIApAQCAtMjg4NSw5ICsyOTA4LDYgQEAgdm9pZCBDYXB0dXJlU2hhcmVHcm91cE1pZEV4
ZWN1dGlvblNldHVwKGNvbnN0IGdsOjpDb250ZXh0ICpjb250ZXh0LAogICAgICAgICBSZXNvdXJj
ZUNhbGxzICZ0ZXh0dXJlUmVnZW5DYWxscyA9IHRyYWNrZWRUZXh0dXJlcy5nZXRSZXNvdXJjZVJl
Z2VuQ2FsbHMoKTsKICAgICAgICAgQ2FsbFZlY3RvciB0ZXhHZW5DYWxscyh7c2V0dXBDYWxscywg
JnRleHR1cmVSZWdlbkNhbGxzW2lkLnZhbHVlXX0pOwogCi0gICAgICAgIC8vIEZvciByZXNldCBv
bmx5LCBkZWxldGUgdGhlIHRleHR1cmUgYmVmb3JlIGdlbm5pbmcKLSAgICAgICAgQ2FwdHVyZSgm
dGV4dHVyZVJlZ2VuQ2FsbHNbaWQudmFsdWVdLCBDYXB0dXJlRGVsZXRlVGV4dHVyZXMocmVwbGF5
U3RhdGUsIHRydWUsIDEsICZpZCkpOwotCiAgICAgICAgIC8vIEdlbiB0aGUgVGV4dHVyZS4KICAg
ICAgICAgZm9yIChzdGQ6OnZlY3RvcjxDYWxsQ2FwdHVyZT4gKmNhbGxzIDogdGV4R2VuQ2FsbHMp
CiAgICAgICAgIHsKQEAgLTM1NDgsMTEgKzM1NjgsNiBAQCB2b2lkIENhcHR1cmVNaWRFeGVjdXRp
b25TZXR1cChjb25zdCBnbDo6Q29udGV4dCAqY29udGV4dCwKICAgICAgICAgUmVzb3VyY2VDYWxs
cyAmZnJhbWVidWZmZXJSZWdlbkNhbGxzID0gdHJhY2tlZEZyYW1lYnVmZmVycy5nZXRSZXNvdXJj
ZVJlZ2VuQ2FsbHMoKTsKICAgICAgICAgQ2FsbFZlY3RvciBmcmFtZWJ1ZmZlckdlbkNhbGxzKHtz
ZXR1cENhbGxzLCAmZnJhbWVidWZmZXJSZWdlbkNhbGxzW2lkLnZhbHVlXX0pOwogCi0gICAgICAg
IC8vIEZvciByZXNldCBvbmx5LCBkZWxldGUgdGhlIGZyYW1lYnVmZmVyIGJlZm9yZSBnZW5uaW5n
LiAgVGhpcyBpcyBva2F5IGV2ZW4gaWYgdGhlCi0gICAgICAgIC8vIGZyYW1lYnVmZmVyIGhhcyBh
bHJlYWR5IGJlZW4gZGVsZXRlZC4KLSAgICAgICAgQ2FwdHVyZSgmZnJhbWVidWZmZXJSZWdlbkNh
bGxzW2lkLnZhbHVlXSwKLSAgICAgICAgICAgICAgICBDYXB0dXJlRGVsZXRlRnJhbWVidWZmZXJz
KHJlcGxheVN0YXRlLCB0cnVlLCAxLCAmaWQpKTsKLQogICAgICAgICAvLyBHZW4gdGhlIGZyYW1l
YnVmZmVyCiAgICAgICAgIGZvciAoc3RkOjp2ZWN0b3I8Q2FsbENhcHR1cmU+ICpjYWxscyA6IGZy
YW1lYnVmZmVyR2VuQ2FsbHMpCiAgICAgICAgIHsKQEAgLTQzMDIsNiArNDMxNywyOCBAQCBzdGQ6
OnN0cmluZyBHZXRCYXNlTmFtZShjb25zdCBzdGQ6OnN0cmluZyAmbmFtZVdpdGhQYXRoKQogICAg
IEFTU0VSVCghcmVzdWx0LmVtcHR5KCkpOwogICAgIHJldHVybiByZXN1bHQuYmFjaygpOwogfQor
Cit0ZW1wbGF0ZSA8Pgorc3RydWN0IFBhcmFtVmFsdWVUcmFpdDxnbDo6QnVmZmVySUQ+Cit7Cisg
ICAgc3RhdGljIGNvbnN0ZXhwciBjb25zdCBjaGFyICpuYW1lID0gImJ1ZmZlclBhY2tlZCI7Cisg
ICAgc3RhdGljIGNvbnN0IFBhcmFtVHlwZSB0eXBlSUQgICAgID0gUGFyYW1UeXBlOjpUQnVmZmVy
SUQ7Cit9OworCit0ZW1wbGF0ZSA8Pgorc3RydWN0IFBhcmFtVmFsdWVUcmFpdDxnbDo6UmVuZGVy
YnVmZmVySUQ+Cit7CisgICAgc3RhdGljIGNvbnN0ZXhwciBjb25zdCBjaGFyICpuYW1lID0gInJl
bmRlcmJ1ZmZlclBhY2tlZCI7CisgICAgc3RhdGljIGNvbnN0IFBhcmFtVHlwZSB0eXBlSUQgICAg
ID0gUGFyYW1UeXBlOjpUUmVuZGVyYnVmZmVySUQ7Cit9OworCit0ZW1wbGF0ZSA8Pgorc3RydWN0
IFBhcmFtVmFsdWVUcmFpdDxnbDo6VGV4dHVyZUlEPgoreworICAgIHN0YXRpYyBjb25zdGV4cHIg
Y29uc3QgY2hhciAqbmFtZSA9ICJ0ZXh0dXJlUGFja2VkIjsKKyAgICBzdGF0aWMgY29uc3QgUGFy
YW1UeXBlIHR5cGVJRCAgICAgPSBQYXJhbVR5cGU6OlRUZXh0dXJlSUQ7Cit9OworCiB9ICAvLyBu
YW1lc3BhY2UKIAogUGFyYW1DYXB0dXJlOjpQYXJhbUNhcHR1cmUoKSA6IHR5cGUoUGFyYW1UeXBl
OjpUR0xlbnVtKSwgZW51bUdyb3VwKGdsOjpHTGVudW1Hcm91cDo6RGVmYXVsdEdyb3VwKSB7fQpA
QCAtNTY1Miw2ICs1Njg5LDI1IEBAIHZvaWQgRnJhbWVDYXB0dXJlU2hhcmVkOjptYXliZUNhcHR1
cmVQcmVDYWxsVXBkYXRlcygKICAgICAgICAgICAgIG1heWJlR2VuUmVzb3VyY2VPbkJpbmQ8Z2w6
OkZyYW1lYnVmZmVySUQ+KGNhbGwpOwogICAgICAgICAgICAgYnJlYWs7CiAKKyAgICAgICAgY2Fz
ZSBFbnRyeVBvaW50OjpHTEdlblJlbmRlcmJ1ZmZlcnM6CisgICAgICAgIGNhc2UgRW50cnlQb2lu
dDo6R0xHZW5SZW5kZXJidWZmZXJzT0VTOgorICAgICAgICB7CisgICAgICAgICAgICBHTHNpemVp
IGNvdW50ID0gY2FsbC5wYXJhbXMuZ2V0UGFyYW0oIm4iLCBQYXJhbVR5cGU6OlRHTHNpemVpLCAw
KS52YWx1ZS5HTHNpemVpVmFsOworICAgICAgICAgICAgY29uc3QgZ2w6OlJlbmRlcmJ1ZmZlcklE
ICpyZW5kZXJidWZmZXJJRHMgPQorICAgICAgICAgICAgICAgIGNhbGwucGFyYW1zLmdldFBhcmFt
KCJyZW5kZXJidWZmZXJzUGFja2VkIiwgUGFyYW1UeXBlOjpUUmVuZGVyYnVmZmVySURQb2ludGVy
LCAxKQorICAgICAgICAgICAgICAgICAgICAudmFsdWUuUmVuZGVyYnVmZmVySURQb2ludGVyVmFs
OworICAgICAgICAgICAgZm9yIChHTHNpemVpIGkgPSAwOyBpIDwgY291bnQ7IGkrKykKKyAgICAg
ICAgICAgIHsKKyAgICAgICAgICAgICAgICBoYW5kbGVHZW5uZWRSZXNvdXJjZShyZW5kZXJidWZm
ZXJJRHNbaV0pOworICAgICAgICAgICAgfQorICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0K
KworICAgICAgICBjYXNlIEVudHJ5UG9pbnQ6OkdMQmluZFJlbmRlcmJ1ZmZlcjoKKyAgICAgICAg
Y2FzZSBFbnRyeVBvaW50OjpHTEJpbmRSZW5kZXJidWZmZXJPRVM6CisgICAgICAgICAgICBtYXli
ZUdlblJlc291cmNlT25CaW5kPGdsOjpSZW5kZXJidWZmZXJJRD4oY2FsbCk7CisgICAgICAgICAg
ICBicmVhazsKKwogICAgICAgICBjYXNlIEVudHJ5UG9pbnQ6OkdMR2VuVGV4dHVyZXM6CiAgICAg
ICAgIHsKICAgICAgICAgICAgIEdMc2l6ZWkgY291bnQgPSBjYWxsLnBhcmFtcy5nZXRQYXJhbSgi
biIsIFBhcmFtVHlwZTo6VEdMc2l6ZWksIDApLnZhbHVlLkdMc2l6ZWlWYWw7CkBAIC01NjY2LDYg
KzU3MjIsMTAgQEAgdm9pZCBGcmFtZUNhcHR1cmVTaGFyZWQ6Om1heWJlQ2FwdHVyZVByZUNhbGxV
cGRhdGVzKAogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KIAorICAgICAgICBjYXNlIEVu
dHJ5UG9pbnQ6OkdMQmluZFRleHR1cmU6CisgICAgICAgICAgICBtYXliZUdlblJlc291cmNlT25C
aW5kPGdsOjpUZXh0dXJlSUQ+KGNhbGwpOworICAgICAgICAgICAgYnJlYWs7CisKICAgICAgICAg
Y2FzZSBFbnRyeVBvaW50OjpHTERlbGV0ZUJ1ZmZlcnM6CiAgICAgICAgIHsKICAgICAgICAgICAg
IEdMc2l6ZWkgY291bnQgPSBjYWxsLnBhcmFtcy5nZXRQYXJhbSgibiIsIFBhcmFtVHlwZTo6VEdM
c2l6ZWksIDApLnZhbHVlLkdMc2l6ZWlWYWw7CkBAIC01Njk5LDYgKzU3NTksMTAgQEAgdm9pZCBG
cmFtZUNhcHR1cmVTaGFyZWQ6Om1heWJlQ2FwdHVyZVByZUNhbGxVcGRhdGVzKAogICAgICAgICAg
ICAgYnJlYWs7CiAgICAgICAgIH0KIAorICAgICAgICBjYXNlIEVudHJ5UG9pbnQ6OkdMQmluZEJ1
ZmZlcjoKKyAgICAgICAgICAgIG1heWJlR2VuUmVzb3VyY2VPbkJpbmQ8Z2w6OkJ1ZmZlcklEPihj
YWxsKTsKKyAgICAgICAgICAgIGJyZWFrOworCiAgICAgICAgIGNhc2UgRW50cnlQb2ludDo6R0xE
ZWxldGVQcm9ncmFtUGlwZWxpbmVzOgogICAgICAgICBjYXNlIEVudHJ5UG9pbnQ6OkdMRGVsZXRl
UHJvZ3JhbVBpcGVsaW5lc0VYVDoKICAgICAgICAgewpAQCAtNzY5NCw2ICs3NzU4LDM4IEBAIHZv
aWQgV3JpdGVQYXJhbVZhbHVlUmVwbGF5PFBhcmFtVHlwZTo6VEdMZmxvYXRDb25zdFBvaW50ZXI+
KHN0ZDo6b3N0cmVhbSAmb3MsCiAgICAgfQogfQogCit0ZW1wbGF0ZSA8Pgordm9pZCBXcml0ZVBh
cmFtVmFsdWVSZXBsYXk8UGFyYW1UeXBlOjpUR0xpbnRDb25zdFBvaW50ZXI+KHN0ZDo6b3N0cmVh
bSAmb3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgY29uc3QgQ2FsbENhcHR1cmUgJmNhbGwsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgR0xpbnQgKnZhbHVlKQor
eworICAgIGlmICh2YWx1ZSA9PSAwKQorICAgIHsKKyAgICAgICAgb3MgPDwgIm51bGxwdHIiOwor
ICAgIH0KKyAgICBlbHNlCisgICAgeworICAgICAgICBvcyA8PCAicmVpbnRlcnByZXRfY2FzdDxj
b25zdCBHTGludCAqPigiCisgICAgICAgICAgIDw8IHN0YXRpY19jYXN0PGludD4ocmVpbnRlcnBy
ZXRfY2FzdDxpbnRwdHJfdD4odmFsdWUpKSA8PCAiKSI7CisgICAgfQorfQorCit0ZW1wbGF0ZSA8
Pgordm9pZCBXcml0ZVBhcmFtVmFsdWVSZXBsYXk8UGFyYW1UeXBlOjpUR0xzaXplaVBvaW50ZXI+
KHN0ZDo6b3N0cmVhbSAmb3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgY29uc3QgQ2FsbENhcHR1cmUgJmNhbGwsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSAqdmFsdWUp
Cit7CisgICAgaWYgKHZhbHVlID09IDApCisgICAgeworICAgICAgICBvcyA8PCAibnVsbHB0ciI7
CisgICAgfQorICAgIGVsc2UKKyAgICB7CisgICAgICAgIG9zIDw8ICJyZWludGVycHJldF9jYXN0
PEdMc2l6ZWkgKj4oIiA8PCBzdGF0aWNfY2FzdDxpbnQ+KHJlaW50ZXJwcmV0X2Nhc3Q8aW50cHRy
X3Q+KHZhbHVlKSkKKyAgICAgICAgICAgPDwgIikiOworICAgIH0KK30KKwogdGVtcGxhdGUgPD4K
IHZvaWQgV3JpdGVQYXJhbVZhbHVlUmVwbGF5PFBhcmFtVHlwZTo6VEdMdWludENvbnN0UG9pbnRl
cj4oc3RkOjpvc3RyZWFtICZvcywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgQ2FsbENhcHR1cmUgJmNhbGwsCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvY2FwdHVyZS9GcmFtZUNh
cHR1cmUuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9jYXB0dXJlL0Zy
YW1lQ2FwdHVyZS5oCmluZGV4IDZlYWZlZWJmMGE5ZjQ5OTExM2Y3OTliMTk3YWMxMGQ5ODk3MmUx
MDcuLjY4ZTEzZTUwZTZlOWFiZWZiZGRlODRhMzczNmRlMjFhYWIzODU5NGEgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9jYXB0dXJlL0ZyYW1lQ2FwdHVy
ZS5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9jYXB0dXJlL0Zy
YW1lQ2FwdHVyZS5oCkBAIC0zMDgsNyArMzA4LDcgQEAgY2xhc3MgVHJhY2tlZFJlc291cmNlIGZp
bmFsIDogYW5nbGU6Ok5vbkNvcHlhYmxlCiAgICAgUmVzb3VyY2VDYWxscyAmZ2V0UmVzb3VyY2VS
ZXN0b3JlQ2FsbHMoKSB7IHJldHVybiBtUmVzb3VyY2VSZXN0b3JlQ2FsbHM7IH0KIAogICBwcml2
YXRlOgotICAgIC8vIFJlc291cmNlIHJlZ2VuIGNhbGxzIHdpbGwgZGVsZXRlIGFuZCBnZW4gYSBy
ZXNvdXJjZQorICAgIC8vIFJlc291cmNlIHJlZ2VuIGNhbGxzIHdpbGwgZ2VuIGEgcmVzb3VyY2UK
ICAgICBSZXNvdXJjZUNhbGxzIG1SZXNvdXJjZVJlZ2VuQ2FsbHM7CiAgICAgLy8gUmVzb3VyY2Ug
cmVzdG9yZSBjYWxscyB3aWxsIHJlc3RvcmUgdGhlIGNvbnRlbnRzIG9mIGEgcmVzb3VyY2UKICAg
ICBSZXNvdXJjZUNhbGxzIG1SZXNvdXJjZVJlc3RvcmVDYWxsczsKQEAgLTkyMCw2ICs5MjAsMTYg
QEAgdm9pZCBXcml0ZVBhcmFtVmFsdWVSZXBsYXk8UGFyYW1UeXBlOjpUR0xmbG9hdENvbnN0UG9p
bnRlcj4oc3RkOjpvc3RyZWFtICZvcywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IENhbGxDYXB0dXJlICZjYWxsLAogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Y29uc3QgR0xmbG9hdCAqdmFsdWUpOwogCit0ZW1wbGF0ZSA8Pgordm9pZCBXcml0ZVBhcmFtVmFs
dWVSZXBsYXk8UGFyYW1UeXBlOjpUR0xpbnRDb25zdFBvaW50ZXI+KHN0ZDo6b3N0cmVhbSAmb3Ms
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgY29uc3QgQ2FsbENhcHR1cmUgJmNhbGwsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgR0xpbnQgKnZhbHVlKTsKKwordGVt
cGxhdGUgPD4KK3ZvaWQgV3JpdGVQYXJhbVZhbHVlUmVwbGF5PFBhcmFtVHlwZTo6VEdMc2l6ZWlQ
b2ludGVyPihzdGQ6Om9zdHJlYW0gJm9zLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IENhbGxDYXB0dXJlICZjYWxsLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkg
KnZhbHVlKTsKKwogdGVtcGxhdGUgPD4KIHZvaWQgV3JpdGVQYXJhbVZhbHVlUmVwbGF5PFBhcmFt
VHlwZTo6VEdMdWludENvbnN0UG9pbnRlcj4oc3RkOjpvc3RyZWFtICZvcywKICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgQ2Fs
bENhcHR1cmUgJmNhbGwsCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
bGliQU5HTEUvY2FwdHVyZS9jYXB0dXJlX2dsZXNfMl8wX3BhcmFtcy5jcHAgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvY2FwdHVyZS9jYXB0dXJlX2dsZXNfMl8wX3BhcmFt
cy5jcHAKaW5kZXggYzFhNGFjYjY0NWI0OWYzMjg5MmUwMmI3N2U4YTBlZjEyNGMzZGNhNi4uYjJi
OTU1Zjc2YzdiMDZhYjIxMjM0MWE3ZWQ5ZDE3NmY5NWJjNTM2YSAxMDA2NDQKLS0tIGEvU291cmNl
L1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL2NhcHR1cmUvY2FwdHVyZV9nbGVzXzJfMF9w
YXJhbXMuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9jYXB0
dXJlL2NhcHR1cmVfZ2xlc18yXzBfcGFyYW1zLmNwcApAQCAtNjkxLDYgKzY5MSwyNiBAQCB2b2lk
IENhcHR1cmVUZXhJbWFnZTJEX3BpeGVscyhjb25zdCBTdGF0ZSAmZ2xTdGF0ZSwKICAgICAgICAg
cmV0dXJuOwogICAgIH0KIAorICAgIC8vIEJlY2F1c2UgR0xfSEFMRl9GTE9BVCBhbmQgR0xfSEFM
Rl9GTE9BVF9PRVMgaGF2ZSBkaWZmZXJlbnQgdmFsdWVzLCBhbmQgdGhlCisgICAgLy8gZm9ybWF0
IHRhYmxlIGNyZWF0ZWQgYnkgQnVpbGRJbnRlcm5hbEZvcm1hdEluZm9NYXAoKSBhbmQgcXVlcmll
ZCBoZXJlCisgICAgLy8gdXNlcyBHTF9IQUxGX0ZMT0FUX09FUyBmb3IgbGVnYWN5IGZvcm1hdHMs
IHdlIGhhdmUgdG8gb3ZlcnJpZGUgdGhlIHR5cGUgaGVyZS4KKyAgICAvLworICAgIC8vIEJ1aWxk
SW50ZXJuYWxGb3JtYXRJbmZvTWFwKCkgY2FuJ3QgaGF2ZSBlbnRyaWVzIG9mIHRoZSBzYW1lIGZv
cm1hdCBmb3IKKyAgICAvLyBHTF9IQUxGX0ZMT0FUIGFuZCBHTF9BTFBIQV9GTE9BVF9PRVMsIGFu
ZCBmb3JtYXRzIGxpa2UgUjE2RiB1c2UgR0xfSEFMRl9GTE9BVCwKKyAgICAvLyBidXQgbGVnYWN5
IGZvcm1hdHMgbGlrZSBBTFBIQTE2RiB1c2UgR0xfSEFMRl9GTE9BVF9PRVMsIHNvIG92ZXJyaWRp
bmcKKyAgICAvLyBHTF9IQUxGX0ZMT0FUIG9ubHkgYmFzZWQgb24gdGhlIEdMRVMgdmVyc2lvbiwg
bGlrZSBpdCBpcyBkb25lIGluCisgICAgLy8gZ2V0UmVhZFBpeGVsc1R5cGUsIHdpbGwgbm90IHdv
cmssIHdlIGFsc28gaGF2ZSB0byBjaGVjayB0aGUgZm9ybWF0IHdoZW4gZG9pbmcgc28uCisgICAg
Ly8KKyAgICAvLyBCZXR0ZXIgd291bGQgYmUgdG8gYWN0dWFsbHkgdXNlIHRoZSAoc2l6ZWQpIGlu
dGVybmFsIGZvcm1hdCB0byBkbyB0aGUgbG9va3VwLAorICAgIC8vIGJ1dCB0aGlzIGRvZXNuJ3Qg
d29yayB3aGVuIGNhbGxpbmcgdGhpcyBmdW5jdGlvbiBmcm9tIENhcHR1cmVUZXhTdWJJbWFnZTJE
X3BpeGVscywKKyAgICAvLyBiZWNhdXNlIHRoZXJlIHRoZSBpbnRlcm5hbCBmb3JtYXQgaXMgbm90
IGtub3duLgorCisgICAgaWYgKHR5cGUgPT0gR0xfSEFMRl9GTE9BVCAmJgorICAgICAgICAoZm9y
bWF0ID09IEdMX0FMUEhBIHx8IGZvcm1hdCA9PSBHTF9MVU1JTkFOQ0UgfHwgZm9ybWF0ID09IEdM
X0xVTUlOQU5DRV9BTFBIQSkpCisgICAgeworICAgICAgICB0eXBlID0gR0xfSEFMRl9GTE9BVF9P
RVM7CisgICAgfQorCiAgICAgY29uc3QgZ2w6OkludGVybmFsRm9ybWF0ICZpbnRlcm5hbEZvcm1h
dEluZm8gPSBnbDo6R2V0SW50ZXJuYWxGb3JtYXRJbmZvKGZvcm1hdCwgdHlwZSk7CiAgICAgY29u
c3QgZ2w6OlBpeGVsVW5wYWNrU3RhdGUgJnVucGFjayAgICAgICAgICAgPSBnbFN0YXRlLmdldFVu
cGFja1N0YXRlKCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9s
aWJBTkdMRS9jYXB0dXJlL2NhcHR1cmVfZ2xlc19leHRfYXV0b2dlbi5jcHAgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvY2FwdHVyZS9jYXB0dXJlX2dsZXNfZXh0X2F1dG9n
ZW4uY3BwCmluZGV4IDU2YzJlZjZhYjBjMGQyYTgzZWZlYjVhZmM0YWFlYjAwMjBiNWIyMjEuLjQ4
ZWMxZGFiZGNlNDJiMTM1OTMyNDRjNDhmOTRiZTI2MmY5MDY2ODAgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9jYXB0dXJlL2NhcHR1cmVfZ2xlc19leHRf
YXV0b2dlbi5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL2Nh
cHR1cmUvY2FwdHVyZV9nbGVzX2V4dF9hdXRvZ2VuLmNwcApAQCAtMjAsNiArMjAsNDAyIEBAIHVz
aW5nIG5hbWVzcGFjZSBhbmdsZTsKIG5hbWVzcGFjZSBnbAogewogCitDYWxsQ2FwdHVyZSBDYXB0
dXJlQmVnaW5QZXJmTW9uaXRvckFNRChjb25zdCBTdGF0ZSAmZ2xTdGF0ZSwgYm9vbCBpc0NhbGxW
YWxpZCwgR0x1aW50IG1vbml0b3IpCit7CisgICAgUGFyYW1CdWZmZXIgcGFyYW1CdWZmZXI7CisK
KyAgICBwYXJhbUJ1ZmZlci5hZGRWYWx1ZVBhcmFtKCJtb25pdG9yIiwgUGFyYW1UeXBlOjpUR0x1
aW50LCBtb25pdG9yKTsKKworICAgIHJldHVybiBDYWxsQ2FwdHVyZShhbmdsZTo6RW50cnlQb2lu
dDo6R0xCZWdpblBlcmZNb25pdG9yQU1ELCBzdGQ6Om1vdmUocGFyYW1CdWZmZXIpKTsKK30KKwor
Q2FsbENhcHR1cmUgQ2FwdHVyZURlbGV0ZVBlcmZNb25pdG9yc0FNRChjb25zdCBTdGF0ZSAmZ2xT
dGF0ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCBpc0Nh
bGxWYWxpZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXpl
aSBuLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVpbnQgKm1v
bml0b3JzKQoreworICAgIFBhcmFtQnVmZmVyIHBhcmFtQnVmZmVyOworCisgICAgcGFyYW1CdWZm
ZXIuYWRkVmFsdWVQYXJhbSgibiIsIFBhcmFtVHlwZTo6VEdMc2l6ZWksIG4pOworCisgICAgaWYg
KGlzQ2FsbFZhbGlkKQorICAgIHsKKyAgICAgICAgUGFyYW1DYXB0dXJlIG1vbml0b3JzUGFyYW0o
Im1vbml0b3JzIiwgUGFyYW1UeXBlOjpUR0x1aW50UG9pbnRlcik7CisgICAgICAgIEluaXRQYXJh
bVZhbHVlKFBhcmFtVHlwZTo6VEdMdWludFBvaW50ZXIsIG1vbml0b3JzLCAmbW9uaXRvcnNQYXJh
bS52YWx1ZSk7CisgICAgICAgIENhcHR1cmVEZWxldGVQZXJmTW9uaXRvcnNBTURfbW9uaXRvcnMo
Z2xTdGF0ZSwgaXNDYWxsVmFsaWQsIG4sIG1vbml0b3JzLCAmbW9uaXRvcnNQYXJhbSk7CisgICAg
ICAgIHBhcmFtQnVmZmVyLmFkZFBhcmFtKHN0ZDo6bW92ZShtb25pdG9yc1BhcmFtKSk7CisgICAg
fQorICAgIGVsc2UKKyAgICB7CisgICAgICAgIFBhcmFtQ2FwdHVyZSBtb25pdG9yc1BhcmFtKCJt
b25pdG9ycyIsIFBhcmFtVHlwZTo6VEdMdWludFBvaW50ZXIpOworICAgICAgICBJbml0UGFyYW1W
YWx1ZShQYXJhbVR5cGU6OlRHTHVpbnRQb2ludGVyLCBzdGF0aWNfY2FzdDxHTHVpbnQgKj4obnVs
bHB0ciksCisgICAgICAgICAgICAgICAgICAgICAgICZtb25pdG9yc1BhcmFtLnZhbHVlKTsKKyAg
ICAgICAgcGFyYW1CdWZmZXIuYWRkUGFyYW0oc3RkOjptb3ZlKG1vbml0b3JzUGFyYW0pKTsKKyAg
ICB9CisKKyAgICByZXR1cm4gQ2FsbENhcHR1cmUoYW5nbGU6OkVudHJ5UG9pbnQ6OkdMRGVsZXRl
UGVyZk1vbml0b3JzQU1ELCBzdGQ6Om1vdmUocGFyYW1CdWZmZXIpKTsKK30KKworQ2FsbENhcHR1
cmUgQ2FwdHVyZUVuZFBlcmZNb25pdG9yQU1EKGNvbnN0IFN0YXRlICZnbFN0YXRlLCBib29sIGlz
Q2FsbFZhbGlkLCBHTHVpbnQgbW9uaXRvcikKK3sKKyAgICBQYXJhbUJ1ZmZlciBwYXJhbUJ1ZmZl
cjsKKworICAgIHBhcmFtQnVmZmVyLmFkZFZhbHVlUGFyYW0oIm1vbml0b3IiLCBQYXJhbVR5cGU6
OlRHTHVpbnQsIG1vbml0b3IpOworCisgICAgcmV0dXJuIENhbGxDYXB0dXJlKGFuZ2xlOjpFbnRy
eVBvaW50OjpHTEVuZFBlcmZNb25pdG9yQU1ELCBzdGQ6Om1vdmUocGFyYW1CdWZmZXIpKTsKK30K
KworQ2FsbENhcHR1cmUgQ2FwdHVyZUdlblBlcmZNb25pdG9yc0FNRChjb25zdCBTdGF0ZSAmZ2xT
dGF0ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCBpc0NhbGxW
YWxpZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBuLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVpbnQgKm1vbml0b3JzKQor
eworICAgIFBhcmFtQnVmZmVyIHBhcmFtQnVmZmVyOworCisgICAgcGFyYW1CdWZmZXIuYWRkVmFs
dWVQYXJhbSgibiIsIFBhcmFtVHlwZTo6VEdMc2l6ZWksIG4pOworCisgICAgaWYgKGlzQ2FsbFZh
bGlkKQorICAgIHsKKyAgICAgICAgUGFyYW1DYXB0dXJlIG1vbml0b3JzUGFyYW0oIm1vbml0b3Jz
IiwgUGFyYW1UeXBlOjpUR0x1aW50UG9pbnRlcik7CisgICAgICAgIEluaXRQYXJhbVZhbHVlKFBh
cmFtVHlwZTo6VEdMdWludFBvaW50ZXIsIG1vbml0b3JzLCAmbW9uaXRvcnNQYXJhbS52YWx1ZSk7
CisgICAgICAgIENhcHR1cmVHZW5QZXJmTW9uaXRvcnNBTURfbW9uaXRvcnMoZ2xTdGF0ZSwgaXND
YWxsVmFsaWQsIG4sIG1vbml0b3JzLCAmbW9uaXRvcnNQYXJhbSk7CisgICAgICAgIHBhcmFtQnVm
ZmVyLmFkZFBhcmFtKHN0ZDo6bW92ZShtb25pdG9yc1BhcmFtKSk7CisgICAgfQorICAgIGVsc2UK
KyAgICB7CisgICAgICAgIFBhcmFtQ2FwdHVyZSBtb25pdG9yc1BhcmFtKCJtb25pdG9ycyIsIFBh
cmFtVHlwZTo6VEdMdWludFBvaW50ZXIpOworICAgICAgICBJbml0UGFyYW1WYWx1ZShQYXJhbVR5
cGU6OlRHTHVpbnRQb2ludGVyLCBzdGF0aWNfY2FzdDxHTHVpbnQgKj4obnVsbHB0ciksCisgICAg
ICAgICAgICAgICAgICAgICAgICZtb25pdG9yc1BhcmFtLnZhbHVlKTsKKyAgICAgICAgcGFyYW1C
dWZmZXIuYWRkUGFyYW0oc3RkOjptb3ZlKG1vbml0b3JzUGFyYW0pKTsKKyAgICB9CisKKyAgICBy
ZXR1cm4gQ2FsbENhcHR1cmUoYW5nbGU6OkVudHJ5UG9pbnQ6OkdMR2VuUGVyZk1vbml0b3JzQU1E
LCBzdGQ6Om1vdmUocGFyYW1CdWZmZXIpKTsKK30KKworQ2FsbENhcHR1cmUgQ2FwdHVyZUdldFBl
cmZNb25pdG9yQ291bnRlckRhdGFBTUQoY29uc3QgU3RhdGUgJmdsU3RhdGUsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sIGlzQ2FsbFZhbGlkLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50IG1v
bml0b3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBH
TGVudW0gcG5hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBHTHNpemVpIGRhdGFTaXplLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgR0x1aW50ICpkYXRhLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgR0xpbnQgKmJ5dGVzV3JpdHRlbikKK3sKKyAgICBQYXJhbUJ1
ZmZlciBwYXJhbUJ1ZmZlcjsKKworICAgIHBhcmFtQnVmZmVyLmFkZFZhbHVlUGFyYW0oIm1vbml0
b3IiLCBQYXJhbVR5cGU6OlRHTHVpbnQsIG1vbml0b3IpOworICAgIHBhcmFtQnVmZmVyLmFkZEVu
dW1QYXJhbSgicG5hbWUiLCBHTGVudW1Hcm91cDo6RGVmYXVsdEdyb3VwLCBQYXJhbVR5cGU6OlRH
TGVudW0sIHBuYW1lKTsKKyAgICBwYXJhbUJ1ZmZlci5hZGRWYWx1ZVBhcmFtKCJkYXRhU2l6ZSIs
IFBhcmFtVHlwZTo6VEdMc2l6ZWksIGRhdGFTaXplKTsKKworICAgIGlmIChpc0NhbGxWYWxpZCkK
KyAgICB7CisgICAgICAgIFBhcmFtQ2FwdHVyZSBkYXRhUGFyYW0oImRhdGEiLCBQYXJhbVR5cGU6
OlRHTHVpbnRQb2ludGVyKTsKKyAgICAgICAgSW5pdFBhcmFtVmFsdWUoUGFyYW1UeXBlOjpUR0x1
aW50UG9pbnRlciwgZGF0YSwgJmRhdGFQYXJhbS52YWx1ZSk7CisgICAgICAgIENhcHR1cmVHZXRQ
ZXJmTW9uaXRvckNvdW50ZXJEYXRhQU1EX2RhdGEoZ2xTdGF0ZSwgaXNDYWxsVmFsaWQsIG1vbml0
b3IsIHBuYW1lLCBkYXRhU2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBkYXRhLCBieXRlc1dyaXR0ZW4sICZkYXRhUGFyYW0pOworICAgICAgICBw
YXJhbUJ1ZmZlci5hZGRQYXJhbShzdGQ6Om1vdmUoZGF0YVBhcmFtKSk7CisgICAgfQorICAgIGVs
c2UKKyAgICB7CisgICAgICAgIFBhcmFtQ2FwdHVyZSBkYXRhUGFyYW0oImRhdGEiLCBQYXJhbVR5
cGU6OlRHTHVpbnRQb2ludGVyKTsKKyAgICAgICAgSW5pdFBhcmFtVmFsdWUoUGFyYW1UeXBlOjpU
R0x1aW50UG9pbnRlciwgc3RhdGljX2Nhc3Q8R0x1aW50ICo+KG51bGxwdHIpLCAmZGF0YVBhcmFt
LnZhbHVlKTsKKyAgICAgICAgcGFyYW1CdWZmZXIuYWRkUGFyYW0oc3RkOjptb3ZlKGRhdGFQYXJh
bSkpOworICAgIH0KKworICAgIGlmIChpc0NhbGxWYWxpZCkKKyAgICB7CisgICAgICAgIFBhcmFt
Q2FwdHVyZSBieXRlc1dyaXR0ZW5QYXJhbSgiYnl0ZXNXcml0dGVuIiwgUGFyYW1UeXBlOjpUR0xp
bnRQb2ludGVyKTsKKyAgICAgICAgSW5pdFBhcmFtVmFsdWUoUGFyYW1UeXBlOjpUR0xpbnRQb2lu
dGVyLCBieXRlc1dyaXR0ZW4sICZieXRlc1dyaXR0ZW5QYXJhbS52YWx1ZSk7CisgICAgICAgIENh
cHR1cmVHZXRQZXJmTW9uaXRvckNvdW50ZXJEYXRhQU1EX2J5dGVzV3JpdHRlbigKKyAgICAgICAg
ICAgIGdsU3RhdGUsIGlzQ2FsbFZhbGlkLCBtb25pdG9yLCBwbmFtZSwgZGF0YVNpemUsIGRhdGEs
IGJ5dGVzV3JpdHRlbiwgJmJ5dGVzV3JpdHRlblBhcmFtKTsKKyAgICAgICAgcGFyYW1CdWZmZXIu
YWRkUGFyYW0oc3RkOjptb3ZlKGJ5dGVzV3JpdHRlblBhcmFtKSk7CisgICAgfQorICAgIGVsc2UK
KyAgICB7CisgICAgICAgIFBhcmFtQ2FwdHVyZSBieXRlc1dyaXR0ZW5QYXJhbSgiYnl0ZXNXcml0
dGVuIiwgUGFyYW1UeXBlOjpUR0xpbnRQb2ludGVyKTsKKyAgICAgICAgSW5pdFBhcmFtVmFsdWUo
UGFyYW1UeXBlOjpUR0xpbnRQb2ludGVyLCBzdGF0aWNfY2FzdDxHTGludCAqPihudWxscHRyKSwK
KyAgICAgICAgICAgICAgICAgICAgICAgJmJ5dGVzV3JpdHRlblBhcmFtLnZhbHVlKTsKKyAgICAg
ICAgcGFyYW1CdWZmZXIuYWRkUGFyYW0oc3RkOjptb3ZlKGJ5dGVzV3JpdHRlblBhcmFtKSk7Cisg
ICAgfQorCisgICAgcmV0dXJuIENhbGxDYXB0dXJlKGFuZ2xlOjpFbnRyeVBvaW50OjpHTEdldFBl
cmZNb25pdG9yQ291bnRlckRhdGFBTUQsIHN0ZDo6bW92ZShwYXJhbUJ1ZmZlcikpOworfQorCitD
YWxsQ2FwdHVyZSBDYXB0dXJlR2V0UGVyZk1vbml0b3JDb3VudGVySW5mb0FNRChjb25zdCBTdGF0
ZSAmZ2xTdGF0ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGJvb2wgaXNDYWxsVmFsaWQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBHTHVpbnQgZ3JvdXAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBHTHVpbnQgY291bnRlciwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMZW51bSBwbmFtZSwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZvaWQgKmRhdGEpCit7CisgICAgUGFy
YW1CdWZmZXIgcGFyYW1CdWZmZXI7CisKKyAgICBwYXJhbUJ1ZmZlci5hZGRWYWx1ZVBhcmFtKCJn
cm91cCIsIFBhcmFtVHlwZTo6VEdMdWludCwgZ3JvdXApOworICAgIHBhcmFtQnVmZmVyLmFkZFZh
bHVlUGFyYW0oImNvdW50ZXIiLCBQYXJhbVR5cGU6OlRHTHVpbnQsIGNvdW50ZXIpOworICAgIHBh
cmFtQnVmZmVyLmFkZEVudW1QYXJhbSgicG5hbWUiLCBHTGVudW1Hcm91cDo6RGVmYXVsdEdyb3Vw
LCBQYXJhbVR5cGU6OlRHTGVudW0sIHBuYW1lKTsKKworICAgIGlmIChpc0NhbGxWYWxpZCkKKyAg
ICB7CisgICAgICAgIFBhcmFtQ2FwdHVyZSBkYXRhUGFyYW0oImRhdGEiLCBQYXJhbVR5cGU6OlR2
b2lkUG9pbnRlcik7CisgICAgICAgIEluaXRQYXJhbVZhbHVlKFBhcmFtVHlwZTo6VHZvaWRQb2lu
dGVyLCBkYXRhLCAmZGF0YVBhcmFtLnZhbHVlKTsKKyAgICAgICAgQ2FwdHVyZUdldFBlcmZNb25p
dG9yQ291bnRlckluZm9BTURfZGF0YShnbFN0YXRlLCBpc0NhbGxWYWxpZCwgZ3JvdXAsIGNvdW50
ZXIsIHBuYW1lLCBkYXRhLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICZkYXRhUGFyYW0pOworICAgICAgICBwYXJhbUJ1ZmZlci5hZGRQYXJhbShzdGQ6
Om1vdmUoZGF0YVBhcmFtKSk7CisgICAgfQorICAgIGVsc2UKKyAgICB7CisgICAgICAgIFBhcmFt
Q2FwdHVyZSBkYXRhUGFyYW0oImRhdGEiLCBQYXJhbVR5cGU6OlR2b2lkUG9pbnRlcik7CisgICAg
ICAgIEluaXRQYXJhbVZhbHVlKFBhcmFtVHlwZTo6VHZvaWRQb2ludGVyLCBzdGF0aWNfY2FzdDx2
b2lkICo+KG51bGxwdHIpLCAmZGF0YVBhcmFtLnZhbHVlKTsKKyAgICAgICAgcGFyYW1CdWZmZXIu
YWRkUGFyYW0oc3RkOjptb3ZlKGRhdGFQYXJhbSkpOworICAgIH0KKworICAgIHJldHVybiBDYWxs
Q2FwdHVyZShhbmdsZTo6RW50cnlQb2ludDo6R0xHZXRQZXJmTW9uaXRvckNvdW50ZXJJbmZvQU1E
LCBzdGQ6Om1vdmUocGFyYW1CdWZmZXIpKTsKK30KKworQ2FsbENhcHR1cmUgQ2FwdHVyZUdldFBl
cmZNb25pdG9yQ291bnRlclN0cmluZ0FNRChjb25zdCBTdGF0ZSAmZ2xTdGF0ZSwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCBpc0NhbGxWYWxp
ZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1
aW50IGdyb3VwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBHTHVpbnQgY291bnRlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgR0xzaXplaSBidWZTaXplLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBHTHNpemVpICpsZW5ndGgsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMY2hhciAqY291bnRlclN0cmlu
ZykKK3sKKyAgICBQYXJhbUJ1ZmZlciBwYXJhbUJ1ZmZlcjsKKworICAgIHBhcmFtQnVmZmVyLmFk
ZFZhbHVlUGFyYW0oImdyb3VwIiwgUGFyYW1UeXBlOjpUR0x1aW50LCBncm91cCk7CisgICAgcGFy
YW1CdWZmZXIuYWRkVmFsdWVQYXJhbSgiY291bnRlciIsIFBhcmFtVHlwZTo6VEdMdWludCwgY291
bnRlcik7CisgICAgcGFyYW1CdWZmZXIuYWRkVmFsdWVQYXJhbSgiYnVmU2l6ZSIsIFBhcmFtVHlw
ZTo6VEdMc2l6ZWksIGJ1ZlNpemUpOworCisgICAgaWYgKGlzQ2FsbFZhbGlkKQorICAgIHsKKyAg
ICAgICAgUGFyYW1DYXB0dXJlIGxlbmd0aFBhcmFtKCJsZW5ndGgiLCBQYXJhbVR5cGU6OlRHTHNp
emVpUG9pbnRlcik7CisgICAgICAgIEluaXRQYXJhbVZhbHVlKFBhcmFtVHlwZTo6VEdMc2l6ZWlQ
b2ludGVyLCBsZW5ndGgsICZsZW5ndGhQYXJhbS52YWx1ZSk7CisgICAgICAgIENhcHR1cmVHZXRQ
ZXJmTW9uaXRvckNvdW50ZXJTdHJpbmdBTURfbGVuZ3RoKGdsU3RhdGUsIGlzQ2FsbFZhbGlkLCBn
cm91cCwgY291bnRlciwgYnVmU2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgbGVuZ3RoLCBjb3VudGVyU3RyaW5nLCAmbGVuZ3RoUGFyYW0p
OworICAgICAgICBwYXJhbUJ1ZmZlci5hZGRQYXJhbShzdGQ6Om1vdmUobGVuZ3RoUGFyYW0pKTsK
KyAgICB9CisgICAgZWxzZQorICAgIHsKKyAgICAgICAgUGFyYW1DYXB0dXJlIGxlbmd0aFBhcmFt
KCJsZW5ndGgiLCBQYXJhbVR5cGU6OlRHTHNpemVpUG9pbnRlcik7CisgICAgICAgIEluaXRQYXJh
bVZhbHVlKFBhcmFtVHlwZTo6VEdMc2l6ZWlQb2ludGVyLCBzdGF0aWNfY2FzdDxHTHNpemVpICo+
KG51bGxwdHIpLAorICAgICAgICAgICAgICAgICAgICAgICAmbGVuZ3RoUGFyYW0udmFsdWUpOwor
ICAgICAgICBwYXJhbUJ1ZmZlci5hZGRQYXJhbShzdGQ6Om1vdmUobGVuZ3RoUGFyYW0pKTsKKyAg
ICB9CisKKyAgICBpZiAoaXNDYWxsVmFsaWQpCisgICAgeworICAgICAgICBQYXJhbUNhcHR1cmUg
Y291bnRlclN0cmluZ1BhcmFtKCJjb3VudGVyU3RyaW5nIiwgUGFyYW1UeXBlOjpUR0xjaGFyUG9p
bnRlcik7CisgICAgICAgIEluaXRQYXJhbVZhbHVlKFBhcmFtVHlwZTo6VEdMY2hhclBvaW50ZXIs
IGNvdW50ZXJTdHJpbmcsICZjb3VudGVyU3RyaW5nUGFyYW0udmFsdWUpOworICAgICAgICBDYXB0
dXJlR2V0UGVyZk1vbml0b3JDb3VudGVyU3RyaW5nQU1EX2NvdW50ZXJTdHJpbmcoZ2xTdGF0ZSwg
aXNDYWxsVmFsaWQsIGdyb3VwLCBjb3VudGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnVmU2l6ZSwgbGVuZ3RoLCBjb3VudGVy
U3RyaW5nLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgJmNvdW50ZXJTdHJpbmdQYXJhbSk7CisgICAgICAgIHBhcmFtQnVmZmVyLmFk
ZFBhcmFtKHN0ZDo6bW92ZShjb3VudGVyU3RyaW5nUGFyYW0pKTsKKyAgICB9CisgICAgZWxzZQor
ICAgIHsKKyAgICAgICAgUGFyYW1DYXB0dXJlIGNvdW50ZXJTdHJpbmdQYXJhbSgiY291bnRlclN0
cmluZyIsIFBhcmFtVHlwZTo6VEdMY2hhclBvaW50ZXIpOworICAgICAgICBJbml0UGFyYW1WYWx1
ZShQYXJhbVR5cGU6OlRHTGNoYXJQb2ludGVyLCBzdGF0aWNfY2FzdDxHTGNoYXIgKj4obnVsbHB0
ciksCisgICAgICAgICAgICAgICAgICAgICAgICZjb3VudGVyU3RyaW5nUGFyYW0udmFsdWUpOwor
ICAgICAgICBwYXJhbUJ1ZmZlci5hZGRQYXJhbShzdGQ6Om1vdmUoY291bnRlclN0cmluZ1BhcmFt
KSk7CisgICAgfQorCisgICAgcmV0dXJuIENhbGxDYXB0dXJlKGFuZ2xlOjpFbnRyeVBvaW50OjpH
TEdldFBlcmZNb25pdG9yQ291bnRlclN0cmluZ0FNRCwgc3RkOjptb3ZlKHBhcmFtQnVmZmVyKSk7
Cit9CisKK0NhbGxDYXB0dXJlIENhcHR1cmVHZXRQZXJmTW9uaXRvckNvdW50ZXJzQU1EKGNvbnN0
IFN0YXRlICZnbFN0YXRlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgYm9vbCBpc0NhbGxWYWxpZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIEdMdWludCBncm91cCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIEdMaW50ICpudW1Db3VudGVycywKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIEdMaW50ICptYXhBY3RpdmVDb3VudGVycywKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgY291bnRlclNp
emUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVpbnQg
KmNvdW50ZXJzKQoreworICAgIFBhcmFtQnVmZmVyIHBhcmFtQnVmZmVyOworCisgICAgcGFyYW1C
dWZmZXIuYWRkVmFsdWVQYXJhbSgiZ3JvdXAiLCBQYXJhbVR5cGU6OlRHTHVpbnQsIGdyb3VwKTsK
KworICAgIGlmIChpc0NhbGxWYWxpZCkKKyAgICB7CisgICAgICAgIFBhcmFtQ2FwdHVyZSBudW1D
b3VudGVyc1BhcmFtKCJudW1Db3VudGVycyIsIFBhcmFtVHlwZTo6VEdMaW50UG9pbnRlcik7Cisg
ICAgICAgIEluaXRQYXJhbVZhbHVlKFBhcmFtVHlwZTo6VEdMaW50UG9pbnRlciwgbnVtQ291bnRl
cnMsICZudW1Db3VudGVyc1BhcmFtLnZhbHVlKTsKKyAgICAgICAgQ2FwdHVyZUdldFBlcmZNb25p
dG9yQ291bnRlcnNBTURfbnVtQ291bnRlcnMoZ2xTdGF0ZSwgaXNDYWxsVmFsaWQsIGdyb3VwLCBu
dW1Db3VudGVycywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgbWF4QWN0aXZlQ291bnRlcnMsIGNvdW50ZXJTaXplLCBjb3VudGVycywKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJm51bUNvdW50
ZXJzUGFyYW0pOworICAgICAgICBwYXJhbUJ1ZmZlci5hZGRQYXJhbShzdGQ6Om1vdmUobnVtQ291
bnRlcnNQYXJhbSkpOworICAgIH0KKyAgICBlbHNlCisgICAgeworICAgICAgICBQYXJhbUNhcHR1
cmUgbnVtQ291bnRlcnNQYXJhbSgibnVtQ291bnRlcnMiLCBQYXJhbVR5cGU6OlRHTGludFBvaW50
ZXIpOworICAgICAgICBJbml0UGFyYW1WYWx1ZShQYXJhbVR5cGU6OlRHTGludFBvaW50ZXIsIHN0
YXRpY19jYXN0PEdMaW50ICo+KG51bGxwdHIpLAorICAgICAgICAgICAgICAgICAgICAgICAmbnVt
Q291bnRlcnNQYXJhbS52YWx1ZSk7CisgICAgICAgIHBhcmFtQnVmZmVyLmFkZFBhcmFtKHN0ZDo6
bW92ZShudW1Db3VudGVyc1BhcmFtKSk7CisgICAgfQorCisgICAgaWYgKGlzQ2FsbFZhbGlkKQor
ICAgIHsKKyAgICAgICAgUGFyYW1DYXB0dXJlIG1heEFjdGl2ZUNvdW50ZXJzUGFyYW0oIm1heEFj
dGl2ZUNvdW50ZXJzIiwgUGFyYW1UeXBlOjpUR0xpbnRQb2ludGVyKTsKKyAgICAgICAgSW5pdFBh
cmFtVmFsdWUoUGFyYW1UeXBlOjpUR0xpbnRQb2ludGVyLCBtYXhBY3RpdmVDb3VudGVycywgJm1h
eEFjdGl2ZUNvdW50ZXJzUGFyYW0udmFsdWUpOworICAgICAgICBDYXB0dXJlR2V0UGVyZk1vbml0
b3JDb3VudGVyc0FNRF9tYXhBY3RpdmVDb3VudGVycyhnbFN0YXRlLCBpc0NhbGxWYWxpZCwgZ3Jv
dXAsIG51bUNvdW50ZXJzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBtYXhBY3RpdmVDb3VudGVycywgY291bnRlclNpemUsIGNvdW50
ZXJzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAmbWF4QWN0aXZlQ291bnRlcnNQYXJhbSk7CisgICAgICAgIHBhcmFtQnVmZmVyLmFk
ZFBhcmFtKHN0ZDo6bW92ZShtYXhBY3RpdmVDb3VudGVyc1BhcmFtKSk7CisgICAgfQorICAgIGVs
c2UKKyAgICB7CisgICAgICAgIFBhcmFtQ2FwdHVyZSBtYXhBY3RpdmVDb3VudGVyc1BhcmFtKCJt
YXhBY3RpdmVDb3VudGVycyIsIFBhcmFtVHlwZTo6VEdMaW50UG9pbnRlcik7CisgICAgICAgIElu
aXRQYXJhbVZhbHVlKFBhcmFtVHlwZTo6VEdMaW50UG9pbnRlciwgc3RhdGljX2Nhc3Q8R0xpbnQg
Kj4obnVsbHB0ciksCisgICAgICAgICAgICAgICAgICAgICAgICZtYXhBY3RpdmVDb3VudGVyc1Bh
cmFtLnZhbHVlKTsKKyAgICAgICAgcGFyYW1CdWZmZXIuYWRkUGFyYW0oc3RkOjptb3ZlKG1heEFj
dGl2ZUNvdW50ZXJzUGFyYW0pKTsKKyAgICB9CisKKyAgICBwYXJhbUJ1ZmZlci5hZGRWYWx1ZVBh
cmFtKCJjb3VudGVyU2l6ZSIsIFBhcmFtVHlwZTo6VEdMc2l6ZWksIGNvdW50ZXJTaXplKTsKKwor
ICAgIGlmIChpc0NhbGxWYWxpZCkKKyAgICB7CisgICAgICAgIFBhcmFtQ2FwdHVyZSBjb3VudGVy
c1BhcmFtKCJjb3VudGVycyIsIFBhcmFtVHlwZTo6VEdMdWludFBvaW50ZXIpOworICAgICAgICBJ
bml0UGFyYW1WYWx1ZShQYXJhbVR5cGU6OlRHTHVpbnRQb2ludGVyLCBjb3VudGVycywgJmNvdW50
ZXJzUGFyYW0udmFsdWUpOworICAgICAgICBDYXB0dXJlR2V0UGVyZk1vbml0b3JDb3VudGVyc0FN
RF9jb3VudGVycyhnbFN0YXRlLCBpc0NhbGxWYWxpZCwgZ3JvdXAsIG51bUNvdW50ZXJzLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXhBY3RpdmVD
b3VudGVycywgY291bnRlclNpemUsIGNvdW50ZXJzLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAmY291bnRlcnNQYXJhbSk7CisgICAgICAgIHBhcmFt
QnVmZmVyLmFkZFBhcmFtKHN0ZDo6bW92ZShjb3VudGVyc1BhcmFtKSk7CisgICAgfQorICAgIGVs
c2UKKyAgICB7CisgICAgICAgIFBhcmFtQ2FwdHVyZSBjb3VudGVyc1BhcmFtKCJjb3VudGVycyIs
IFBhcmFtVHlwZTo6VEdMdWludFBvaW50ZXIpOworICAgICAgICBJbml0UGFyYW1WYWx1ZShQYXJh
bVR5cGU6OlRHTHVpbnRQb2ludGVyLCBzdGF0aWNfY2FzdDxHTHVpbnQgKj4obnVsbHB0ciksCisg
ICAgICAgICAgICAgICAgICAgICAgICZjb3VudGVyc1BhcmFtLnZhbHVlKTsKKyAgICAgICAgcGFy
YW1CdWZmZXIuYWRkUGFyYW0oc3RkOjptb3ZlKGNvdW50ZXJzUGFyYW0pKTsKKyAgICB9CisKKyAg
ICByZXR1cm4gQ2FsbENhcHR1cmUoYW5nbGU6OkVudHJ5UG9pbnQ6OkdMR2V0UGVyZk1vbml0b3JD
b3VudGVyc0FNRCwgc3RkOjptb3ZlKHBhcmFtQnVmZmVyKSk7Cit9CisKK0NhbGxDYXB0dXJlIENh
cHR1cmVHZXRQZXJmTW9uaXRvckdyb3VwU3RyaW5nQU1EKGNvbnN0IFN0YXRlICZnbFN0YXRlLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCBpc0Nh
bGxWYWxpZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IEdMdWludCBncm91cCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIEdMc2l6ZWkgYnVmU2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIEdMc2l6ZWkgKmxlbmd0aCwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIEdMY2hhciAqZ3JvdXBTdHJpbmcpCit7CisgICAgUGFy
YW1CdWZmZXIgcGFyYW1CdWZmZXI7CisKKyAgICBwYXJhbUJ1ZmZlci5hZGRWYWx1ZVBhcmFtKCJn
cm91cCIsIFBhcmFtVHlwZTo6VEdMdWludCwgZ3JvdXApOworICAgIHBhcmFtQnVmZmVyLmFkZFZh
bHVlUGFyYW0oImJ1ZlNpemUiLCBQYXJhbVR5cGU6OlRHTHNpemVpLCBidWZTaXplKTsKKworICAg
IGlmIChpc0NhbGxWYWxpZCkKKyAgICB7CisgICAgICAgIFBhcmFtQ2FwdHVyZSBsZW5ndGhQYXJh
bSgibGVuZ3RoIiwgUGFyYW1UeXBlOjpUR0xzaXplaVBvaW50ZXIpOworICAgICAgICBJbml0UGFy
YW1WYWx1ZShQYXJhbVR5cGU6OlRHTHNpemVpUG9pbnRlciwgbGVuZ3RoLCAmbGVuZ3RoUGFyYW0u
dmFsdWUpOworICAgICAgICBDYXB0dXJlR2V0UGVyZk1vbml0b3JHcm91cFN0cmluZ0FNRF9sZW5n
dGgoZ2xTdGF0ZSwgaXNDYWxsVmFsaWQsIGdyb3VwLCBidWZTaXplLCBsZW5ndGgsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBncm91cFN0cmluZywg
Jmxlbmd0aFBhcmFtKTsKKyAgICAgICAgcGFyYW1CdWZmZXIuYWRkUGFyYW0oc3RkOjptb3ZlKGxl
bmd0aFBhcmFtKSk7CisgICAgfQorICAgIGVsc2UKKyAgICB7CisgICAgICAgIFBhcmFtQ2FwdHVy
ZSBsZW5ndGhQYXJhbSgibGVuZ3RoIiwgUGFyYW1UeXBlOjpUR0xzaXplaVBvaW50ZXIpOworICAg
ICAgICBJbml0UGFyYW1WYWx1ZShQYXJhbVR5cGU6OlRHTHNpemVpUG9pbnRlciwgc3RhdGljX2Nh
c3Q8R0xzaXplaSAqPihudWxscHRyKSwKKyAgICAgICAgICAgICAgICAgICAgICAgJmxlbmd0aFBh
cmFtLnZhbHVlKTsKKyAgICAgICAgcGFyYW1CdWZmZXIuYWRkUGFyYW0oc3RkOjptb3ZlKGxlbmd0
aFBhcmFtKSk7CisgICAgfQorCisgICAgaWYgKGlzQ2FsbFZhbGlkKQorICAgIHsKKyAgICAgICAg
UGFyYW1DYXB0dXJlIGdyb3VwU3RyaW5nUGFyYW0oImdyb3VwU3RyaW5nIiwgUGFyYW1UeXBlOjpU
R0xjaGFyUG9pbnRlcik7CisgICAgICAgIEluaXRQYXJhbVZhbHVlKFBhcmFtVHlwZTo6VEdMY2hh
clBvaW50ZXIsIGdyb3VwU3RyaW5nLCAmZ3JvdXBTdHJpbmdQYXJhbS52YWx1ZSk7CisgICAgICAg
IENhcHR1cmVHZXRQZXJmTW9uaXRvckdyb3VwU3RyaW5nQU1EX2dyb3VwU3RyaW5nKGdsU3RhdGUs
IGlzQ2FsbFZhbGlkLCBncm91cCwgYnVmU2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVuZ3RoLCBncm91cFN0cmluZywgJmdyb3Vw
U3RyaW5nUGFyYW0pOworICAgICAgICBwYXJhbUJ1ZmZlci5hZGRQYXJhbShzdGQ6Om1vdmUoZ3Jv
dXBTdHJpbmdQYXJhbSkpOworICAgIH0KKyAgICBlbHNlCisgICAgeworICAgICAgICBQYXJhbUNh
cHR1cmUgZ3JvdXBTdHJpbmdQYXJhbSgiZ3JvdXBTdHJpbmciLCBQYXJhbVR5cGU6OlRHTGNoYXJQ
b2ludGVyKTsKKyAgICAgICAgSW5pdFBhcmFtVmFsdWUoUGFyYW1UeXBlOjpUR0xjaGFyUG9pbnRl
ciwgc3RhdGljX2Nhc3Q8R0xjaGFyICo+KG51bGxwdHIpLAorICAgICAgICAgICAgICAgICAgICAg
ICAmZ3JvdXBTdHJpbmdQYXJhbS52YWx1ZSk7CisgICAgICAgIHBhcmFtQnVmZmVyLmFkZFBhcmFt
KHN0ZDo6bW92ZShncm91cFN0cmluZ1BhcmFtKSk7CisgICAgfQorCisgICAgcmV0dXJuIENhbGxD
YXB0dXJlKGFuZ2xlOjpFbnRyeVBvaW50OjpHTEdldFBlcmZNb25pdG9yR3JvdXBTdHJpbmdBTUQs
IHN0ZDo6bW92ZShwYXJhbUJ1ZmZlcikpOworfQorCitDYWxsQ2FwdHVyZSBDYXB0dXJlR2V0UGVy
Zk1vbml0b3JHcm91cHNBTUQoY29uc3QgU3RhdGUgJmdsU3RhdGUsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCBpc0NhbGxWYWxpZCwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTGludCAqbnVtR3JvdXBzLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgZ3JvdXBzU2l6ZSwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVpbnQgKmdyb3Vw
cykKK3sKKyAgICBQYXJhbUJ1ZmZlciBwYXJhbUJ1ZmZlcjsKKworICAgIGlmIChpc0NhbGxWYWxp
ZCkKKyAgICB7CisgICAgICAgIFBhcmFtQ2FwdHVyZSBudW1Hcm91cHNQYXJhbSgibnVtR3JvdXBz
IiwgUGFyYW1UeXBlOjpUR0xpbnRQb2ludGVyKTsKKyAgICAgICAgSW5pdFBhcmFtVmFsdWUoUGFy
YW1UeXBlOjpUR0xpbnRQb2ludGVyLCBudW1Hcm91cHMsICZudW1Hcm91cHNQYXJhbS52YWx1ZSk7
CisgICAgICAgIENhcHR1cmVHZXRQZXJmTW9uaXRvckdyb3Vwc0FNRF9udW1Hcm91cHMoZ2xTdGF0
ZSwgaXNDYWxsVmFsaWQsIG51bUdyb3VwcywgZ3JvdXBzU2l6ZSwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBncm91cHMsICZudW1Hcm91cHNQYXJhbSk7
CisgICAgICAgIHBhcmFtQnVmZmVyLmFkZFBhcmFtKHN0ZDo6bW92ZShudW1Hcm91cHNQYXJhbSkp
OworICAgIH0KKyAgICBlbHNlCisgICAgeworICAgICAgICBQYXJhbUNhcHR1cmUgbnVtR3JvdXBz
UGFyYW0oIm51bUdyb3VwcyIsIFBhcmFtVHlwZTo6VEdMaW50UG9pbnRlcik7CisgICAgICAgIElu
aXRQYXJhbVZhbHVlKFBhcmFtVHlwZTo6VEdMaW50UG9pbnRlciwgc3RhdGljX2Nhc3Q8R0xpbnQg
Kj4obnVsbHB0ciksCisgICAgICAgICAgICAgICAgICAgICAgICZudW1Hcm91cHNQYXJhbS52YWx1
ZSk7CisgICAgICAgIHBhcmFtQnVmZmVyLmFkZFBhcmFtKHN0ZDo6bW92ZShudW1Hcm91cHNQYXJh
bSkpOworICAgIH0KKworICAgIHBhcmFtQnVmZmVyLmFkZFZhbHVlUGFyYW0oImdyb3Vwc1NpemUi
LCBQYXJhbVR5cGU6OlRHTHNpemVpLCBncm91cHNTaXplKTsKKworICAgIGlmIChpc0NhbGxWYWxp
ZCkKKyAgICB7CisgICAgICAgIFBhcmFtQ2FwdHVyZSBncm91cHNQYXJhbSgiZ3JvdXBzIiwgUGFy
YW1UeXBlOjpUR0x1aW50UG9pbnRlcik7CisgICAgICAgIEluaXRQYXJhbVZhbHVlKFBhcmFtVHlw
ZTo6VEdMdWludFBvaW50ZXIsIGdyb3VwcywgJmdyb3Vwc1BhcmFtLnZhbHVlKTsKKyAgICAgICAg
Q2FwdHVyZUdldFBlcmZNb25pdG9yR3JvdXBzQU1EX2dyb3VwcyhnbFN0YXRlLCBpc0NhbGxWYWxp
ZCwgbnVtR3JvdXBzLCBncm91cHNTaXplLCBncm91cHMsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgJmdyb3Vwc1BhcmFtKTsKKyAgICAgICAgcGFyYW1CdWZm
ZXIuYWRkUGFyYW0oc3RkOjptb3ZlKGdyb3Vwc1BhcmFtKSk7CisgICAgfQorICAgIGVsc2UKKyAg
ICB7CisgICAgICAgIFBhcmFtQ2FwdHVyZSBncm91cHNQYXJhbSgiZ3JvdXBzIiwgUGFyYW1UeXBl
OjpUR0x1aW50UG9pbnRlcik7CisgICAgICAgIEluaXRQYXJhbVZhbHVlKFBhcmFtVHlwZTo6VEdM
dWludFBvaW50ZXIsIHN0YXRpY19jYXN0PEdMdWludCAqPihudWxscHRyKSwKKyAgICAgICAgICAg
ICAgICAgICAgICAgJmdyb3Vwc1BhcmFtLnZhbHVlKTsKKyAgICAgICAgcGFyYW1CdWZmZXIuYWRk
UGFyYW0oc3RkOjptb3ZlKGdyb3Vwc1BhcmFtKSk7CisgICAgfQorCisgICAgcmV0dXJuIENhbGxD
YXB0dXJlKGFuZ2xlOjpFbnRyeVBvaW50OjpHTEdldFBlcmZNb25pdG9yR3JvdXBzQU1ELCBzdGQ6
Om1vdmUocGFyYW1CdWZmZXIpKTsKK30KKworQ2FsbENhcHR1cmUgQ2FwdHVyZVNlbGVjdFBlcmZN
b25pdG9yQ291bnRlcnNBTUQoY29uc3QgU3RhdGUgJmdsU3RhdGUsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sIGlzQ2FsbFZhbGlkLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50IG1vbml0b3Is
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTGJvb2xl
YW4gZW5hYmxlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgR0x1aW50IGdyb3VwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgR0xpbnQgbnVtQ291bnRlcnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBHTHVpbnQgKmNvdW50ZXJMaXN0KQoreworICAgIFBhcmFtQnVm
ZmVyIHBhcmFtQnVmZmVyOworCisgICAgcGFyYW1CdWZmZXIuYWRkVmFsdWVQYXJhbSgibW9uaXRv
ciIsIFBhcmFtVHlwZTo6VEdMdWludCwgbW9uaXRvcik7CisgICAgcGFyYW1CdWZmZXIuYWRkVmFs
dWVQYXJhbSgiZW5hYmxlIiwgUGFyYW1UeXBlOjpUR0xib29sZWFuLCBlbmFibGUpOworICAgIHBh
cmFtQnVmZmVyLmFkZFZhbHVlUGFyYW0oImdyb3VwIiwgUGFyYW1UeXBlOjpUR0x1aW50LCBncm91
cCk7CisgICAgcGFyYW1CdWZmZXIuYWRkVmFsdWVQYXJhbSgibnVtQ291bnRlcnMiLCBQYXJhbVR5
cGU6OlRHTGludCwgbnVtQ291bnRlcnMpOworCisgICAgaWYgKGlzQ2FsbFZhbGlkKQorICAgIHsK
KyAgICAgICAgUGFyYW1DYXB0dXJlIGNvdW50ZXJMaXN0UGFyYW0oImNvdW50ZXJMaXN0IiwgUGFy
YW1UeXBlOjpUR0x1aW50UG9pbnRlcik7CisgICAgICAgIEluaXRQYXJhbVZhbHVlKFBhcmFtVHlw
ZTo6VEdMdWludFBvaW50ZXIsIGNvdW50ZXJMaXN0LCAmY291bnRlckxpc3RQYXJhbS52YWx1ZSk7
CisgICAgICAgIENhcHR1cmVTZWxlY3RQZXJmTW9uaXRvckNvdW50ZXJzQU1EX2NvdW50ZXJMaXN0
KGdsU3RhdGUsIGlzQ2FsbFZhbGlkLCBtb25pdG9yLCBlbmFibGUsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdyb3VwLCBudW1Db3VudGVy
cywgY291bnRlckxpc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICZjb3VudGVyTGlzdFBhcmFtKTsKKyAgICAgICAgcGFyYW1CdWZmZXIu
YWRkUGFyYW0oc3RkOjptb3ZlKGNvdW50ZXJMaXN0UGFyYW0pKTsKKyAgICB9CisgICAgZWxzZQor
ICAgIHsKKyAgICAgICAgUGFyYW1DYXB0dXJlIGNvdW50ZXJMaXN0UGFyYW0oImNvdW50ZXJMaXN0
IiwgUGFyYW1UeXBlOjpUR0x1aW50UG9pbnRlcik7CisgICAgICAgIEluaXRQYXJhbVZhbHVlKFBh
cmFtVHlwZTo6VEdMdWludFBvaW50ZXIsIHN0YXRpY19jYXN0PEdMdWludCAqPihudWxscHRyKSwK
KyAgICAgICAgICAgICAgICAgICAgICAgJmNvdW50ZXJMaXN0UGFyYW0udmFsdWUpOworICAgICAg
ICBwYXJhbUJ1ZmZlci5hZGRQYXJhbShzdGQ6Om1vdmUoY291bnRlckxpc3RQYXJhbSkpOworICAg
IH0KKworICAgIHJldHVybiBDYWxsQ2FwdHVyZShhbmdsZTo6RW50cnlQb2ludDo6R0xTZWxlY3RQ
ZXJmTW9uaXRvckNvdW50ZXJzQU1ELCBzdGQ6Om1vdmUocGFyYW1CdWZmZXIpKTsKK30KKwogQ2Fs
bENhcHR1cmUgQ2FwdHVyZURyYXdBcnJheXNJbnN0YW5jZWRCYXNlSW5zdGFuY2VBTkdMRShjb25z
dCBTdGF0ZSAmZ2xTdGF0ZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgYm9vbCBpc0NhbGxWYWxpZCwKICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHJpbWl0aXZlTW9kZSBtb2RlUGFj
a2VkLApAQCAtNDYsNyArNDQyLDcgQEAgQ2FsbENhcHR1cmUgQ2FwdHVyZURyYXdFbGVtZW50c0lu
c3RhbmNlZEJhc2VWZXJ0ZXhCYXNlSW5zdGFuY2VBTkdMRShjb25zdCBTdGF0ZQogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBHTHNpemVpIGNvdW50LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBEcmF3RWxlbWVudHNUeXBlIHR5cGVQYWNrZWQs
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGNvbnN0IEdMdm9pZCAqaW5kaWNlcywKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBp
bnN0YW5jZUNvdW50cywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBpbnN0YW5jZUNvdW50LAogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBHTGludCBiYXNlVmVydGV4LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVpbnQgYmFzZUluc3RhbmNlKQog
ewpAQCAtNjEsOCArNDU3LDggQEAgQ2FsbENhcHR1cmUgQ2FwdHVyZURyYXdFbGVtZW50c0luc3Rh
bmNlZEJhc2VWZXJ0ZXhCYXNlSW5zdGFuY2VBTkdMRShjb25zdCBTdGF0ZQogICAgICAgICBQYXJh
bUNhcHR1cmUgaW5kaWNlc1BhcmFtKCJpbmRpY2VzIiwgUGFyYW1UeXBlOjpUR0x2b2lkQ29uc3RQ
b2ludGVyKTsKICAgICAgICAgSW5pdFBhcmFtVmFsdWUoUGFyYW1UeXBlOjpUR0x2b2lkQ29uc3RQ
b2ludGVyLCBpbmRpY2VzLCAmaW5kaWNlc1BhcmFtLnZhbHVlKTsKICAgICAgICAgQ2FwdHVyZURy
YXdFbGVtZW50c0luc3RhbmNlZEJhc2VWZXJ0ZXhCYXNlSW5zdGFuY2VBTkdMRV9pbmRpY2VzKAot
ICAgICAgICAgICAgZ2xTdGF0ZSwgaXNDYWxsVmFsaWQsIG1vZGVQYWNrZWQsIGNvdW50LCB0eXBl
UGFja2VkLCBpbmRpY2VzLCBpbnN0YW5jZUNvdW50cywKLSAgICAgICAgICAgIGJhc2VWZXJ0ZXgs
IGJhc2VJbnN0YW5jZSwgJmluZGljZXNQYXJhbSk7CisgICAgICAgICAgICBnbFN0YXRlLCBpc0Nh
bGxWYWxpZCwgbW9kZVBhY2tlZCwgY291bnQsIHR5cGVQYWNrZWQsIGluZGljZXMsIGluc3RhbmNl
Q291bnQsIGJhc2VWZXJ0ZXgsCisgICAgICAgICAgICBiYXNlSW5zdGFuY2UsICZpbmRpY2VzUGFy
YW0pOwogICAgICAgICBwYXJhbUJ1ZmZlci5hZGRQYXJhbShzdGQ6Om1vdmUoaW5kaWNlc1BhcmFt
KSk7CiAgICAgfQogICAgIGVsc2UKQEAgLTczLDcgKzQ2OSw3IEBAIENhbGxDYXB0dXJlIENhcHR1
cmVEcmF3RWxlbWVudHNJbnN0YW5jZWRCYXNlVmVydGV4QmFzZUluc3RhbmNlQU5HTEUoY29uc3Qg
U3RhdGUKICAgICAgICAgcGFyYW1CdWZmZXIuYWRkUGFyYW0oc3RkOjptb3ZlKGluZGljZXNQYXJh
bSkpOwogICAgIH0KIAotICAgIHBhcmFtQnVmZmVyLmFkZFZhbHVlUGFyYW0oImluc3RhbmNlQ291
bnRzIiwgUGFyYW1UeXBlOjpUR0xzaXplaSwgaW5zdGFuY2VDb3VudHMpOworICAgIHBhcmFtQnVm
ZmVyLmFkZFZhbHVlUGFyYW0oImluc3RhbmNlQ291bnQiLCBQYXJhbVR5cGU6OlRHTHNpemVpLCBp
bnN0YW5jZUNvdW50KTsKICAgICBwYXJhbUJ1ZmZlci5hZGRWYWx1ZVBhcmFtKCJiYXNlVmVydGV4
IiwgUGFyYW1UeXBlOjpUR0xpbnQsIGJhc2VWZXJ0ZXgpOwogICAgIHBhcmFtQnVmZmVyLmFkZFZh
bHVlUGFyYW0oImJhc2VJbnN0YW5jZSIsIFBhcmFtVHlwZTo6VEdMdWludCwgYmFzZUluc3RhbmNl
KTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL2Nh
cHR1cmUvY2FwdHVyZV9nbGVzX2V4dF9hdXRvZ2VuLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zcmMvbGliQU5HTEUvY2FwdHVyZS9jYXB0dXJlX2dsZXNfZXh0X2F1dG9nZW4uaAppbmRleCBi
MTRjZWQyY2VlYzQyZTk0OTdjNGQ5NTFiMWU1OTg1MTI5ODFiODA2Li45Mzk3ZmIyZWQzNjRkMmU3
ZTg3Nzk4Mzc2OTQ1OThkZDVmZWMzZWI1IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9zcmMvbGliQU5HTEUvY2FwdHVyZS9jYXB0dXJlX2dsZXNfZXh0X2F1dG9nZW4uaAorKysg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvY2FwdHVyZS9jYXB0dXJlX2ds
ZXNfZXh0X2F1dG9nZW4uaApAQCAtMTksNiArMTksNjUgQEAgbmFtZXNwYWNlIGdsCiAKIC8vIE1l
dGhvZCBDYXB0dXJlcwogCisvLyBHTF9BTURfcGVyZm9ybWFuY2VfbW9uaXRvcgorYW5nbGU6OkNh
bGxDYXB0dXJlIENhcHR1cmVCZWdpblBlcmZNb25pdG9yQU1EKGNvbnN0IFN0YXRlICZnbFN0YXRl
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wgaXND
YWxsVmFsaWQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
R0x1aW50IG1vbml0b3IpOworYW5nbGU6OkNhbGxDYXB0dXJlIENhcHR1cmVEZWxldGVQZXJmTW9u
aXRvcnNBTUQoY29uc3QgU3RhdGUgJmdsU3RhdGUsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBib29sIGlzQ2FsbFZhbGlkLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBuLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50ICptb25pdG9ycyk7Cith
bmdsZTo6Q2FsbENhcHR1cmUgQ2FwdHVyZUVuZFBlcmZNb25pdG9yQU1EKGNvbnN0IFN0YXRlICZn
bFN0YXRlLCBib29sIGlzQ2FsbFZhbGlkLCBHTHVpbnQgbW9uaXRvcik7CithbmdsZTo6Q2FsbENh
cHR1cmUgQ2FwdHVyZUdlblBlcmZNb25pdG9yc0FNRChjb25zdCBTdGF0ZSAmZ2xTdGF0ZSwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wgaXNDYWxsVmFs
aWQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHNpemVp
IG4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVpbnQg
Km1vbml0b3JzKTsKK2FuZ2xlOjpDYWxsQ2FwdHVyZSBDYXB0dXJlR2V0UGVyZk1vbml0b3JDb3Vu
dGVyRGF0YUFNRChjb25zdCBTdGF0ZSAmZ2xTdGF0ZSwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sIGlzQ2FsbFZhbGlkLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMdWludCBt
b25pdG9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIEdMZW51bSBwbmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBHTHNpemVpIGRhdGFTaXplLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMdWludCAqZGF0YSwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTGludCAq
Ynl0ZXNXcml0dGVuKTsKK2FuZ2xlOjpDYWxsQ2FwdHVyZSBDYXB0dXJlR2V0UGVyZk1vbml0b3JD
b3VudGVySW5mb0FNRChjb25zdCBTdGF0ZSAmZ2xTdGF0ZSwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sIGlzQ2FsbFZhbGlkLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMdWlu
dCBncm91cCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBHTHVpbnQgY291bnRlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBHTGVudW0gcG5hbWUsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdm9pZCAqZGF0YSk7CithbmdsZTo6
Q2FsbENhcHR1cmUgQ2FwdHVyZUdldFBlcmZNb25pdG9yQ291bnRlclN0cmluZ0FNRChjb25zdCBT
dGF0ZSAmZ2xTdGF0ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGJvb2wgaXNDYWxsVmFsaWQsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVpbnQgZ3JvdXAsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVpbnQg
Y291bnRlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIEdMc2l6ZWkgYnVmU2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgKmxlbmd0aCwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMY2hhciAqY291
bnRlclN0cmluZyk7CithbmdsZTo6Q2FsbENhcHR1cmUgQ2FwdHVyZUdldFBlcmZNb25pdG9yQ291
bnRlcnNBTUQoY29uc3QgU3RhdGUgJmdsU3RhdGUsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCBpc0NhbGxWYWxpZCwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVpbnQgZ3JvdXAsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xpbnQg
Km51bUNvdW50ZXJzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIEdMaW50ICptYXhBY3RpdmVDb3VudGVycywKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHNpemVpIGNvdW50ZXJTaXplLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMdWludCAq
Y291bnRlcnMpOworYW5nbGU6OkNhbGxDYXB0dXJlIENhcHR1cmVHZXRQZXJmTW9uaXRvckdyb3Vw
U3RyaW5nQU1EKGNvbnN0IFN0YXRlICZnbFN0YXRlLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wgaXNDYWxsVmFsaWQsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50IGdy
b3VwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIEdMc2l6ZWkgYnVmU2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBHTHNpemVpICpsZW5ndGgsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xjaGFyICpncm91cFN0cmluZyk7
CithbmdsZTo6Q2FsbENhcHR1cmUgQ2FwdHVyZUdldFBlcmZNb25pdG9yR3JvdXBzQU1EKGNvbnN0
IFN0YXRlICZnbFN0YXRlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBib29sIGlzQ2FsbFZhbGlkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBHTGludCAqbnVtR3JvdXBzLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHNpemVpIGdyb3Vwc1NpemUsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMdWludCAq
Z3JvdXBzKTsKK2FuZ2xlOjpDYWxsQ2FwdHVyZSBDYXB0dXJlU2VsZWN0UGVyZk1vbml0b3JDb3Vu
dGVyc0FNRChjb25zdCBTdGF0ZSAmZ2xTdGF0ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sIGlzQ2FsbFZhbGlkLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMdWludCBtb25p
dG9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIEdMYm9vbGVhbiBlbmFibGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgR0x1aW50IGdyb3VwLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMaW50IG51bUNvdW50ZXJzLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMdWlu
dCAqY291bnRlckxpc3QpOworCiAvLyBHTF9BTkRST0lEX2V4dGVuc2lvbl9wYWNrX2VzMzFhCiAK
IC8vIEdMX0FOR0xFX2Jhc2VfdmVydGV4X2Jhc2VfaW5zdGFuY2UKQEAgLTM2LDcgKzk1LDcgQEAg
YW5nbGU6OkNhbGxDYXB0dXJlIENhcHR1cmVEcmF3RWxlbWVudHNJbnN0YW5jZWRCYXNlVmVydGV4
QmFzZUluc3RhbmNlQU5HTEUoCiAgICAgR0xzaXplaSBjb3VudCwKICAgICBEcmF3RWxlbWVudHNU
eXBlIHR5cGVQYWNrZWQsCiAgICAgY29uc3QgR0x2b2lkICppbmRpY2VzLAotICAgIEdMc2l6ZWkg
aW5zdGFuY2VDb3VudHMsCisgICAgR0xzaXplaSBpbnN0YW5jZUNvdW50LAogICAgIEdMaW50IGJh
c2VWZXJ0ZXgsCiAgICAgR0x1aW50IGJhc2VJbnN0YW5jZSk7CiBhbmdsZTo6Q2FsbENhcHR1cmUg
Q2FwdHVyZU11bHRpRHJhd0FycmF5c0luc3RhbmNlZEJhc2VJbnN0YW5jZUFOR0xFKGNvbnN0IFN0
YXRlICZnbFN0YXRlLApAQCAtMjU0OSw2ICsyNjA4LDExMyBAQCBhbmdsZTo6Q2FsbENhcHR1cmUg
Q2FwdHVyZUZyYW1lYnVmZmVyVGV4dHVyZU11bHRpdmlld09WUihjb25zdCBTdGF0ZSAmZ2xTdGF0
ZSwKIAogLy8gUGFyYW1ldGVyIENhcHR1cmVzCiAKK3ZvaWQgQ2FwdHVyZURlbGV0ZVBlcmZNb25p
dG9yc0FNRF9tb25pdG9ycyhjb25zdCBTdGF0ZSAmZ2xTdGF0ZSwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBib29sIGlzQ2FsbFZhbGlkLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgbiwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVpbnQgKm1vbml0b3JzLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFuZ2xlOjpQYXJhbUNhcHR1cmUgKnBh
cmFtQ2FwdHVyZSk7Cit2b2lkIENhcHR1cmVHZW5QZXJmTW9uaXRvcnNBTURfbW9uaXRvcnMoY29u
c3QgU3RhdGUgJmdsU3RhdGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgYm9vbCBpc0NhbGxWYWxpZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBHTHNpemVpIG4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
R0x1aW50ICptb25pdG9ycywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBhbmdsZTo6UGFyYW1DYXB0dXJlICpwYXJhbUNhcHR1cmUpOwordm9pZCBDYXB0dXJlR2V0UGVy
Zk1vbml0b3JDb3VudGVyRGF0YUFNRF9kYXRhKGNvbnN0IFN0YXRlICZnbFN0YXRlLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wgaXNDYWxsVmFsaWQs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50IG1v
bml0b3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xl
bnVtIHBuYW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IEdMc2l6ZWkgZGF0YVNpemUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgR0x1aW50ICpkYXRhLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIEdMaW50ICpieXRlc1dyaXR0ZW4sCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgYW5nbGU6OlBhcmFtQ2FwdHVyZSAqcGFyYW1DYXB0dXJl
KTsKK3ZvaWQgQ2FwdHVyZUdldFBlcmZNb25pdG9yQ291bnRlckRhdGFBTURfYnl0ZXNXcml0dGVu
KGNvbnN0IFN0YXRlICZnbFN0YXRlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgYm9vbCBpc0NhbGxWYWxpZCwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMdWludCBtb25pdG9yLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xlbnVt
IHBuYW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgR0xzaXplaSBkYXRhU2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIEdMdWludCAqZGF0YSwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMaW50ICpieXRlc1dyaXR0ZW4sCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbmds
ZTo6UGFyYW1DYXB0dXJlICpwYXJhbUNhcHR1cmUpOwordm9pZCBDYXB0dXJlR2V0UGVyZk1vbml0
b3JDb3VudGVySW5mb0FNRF9kYXRhKGNvbnN0IFN0YXRlICZnbFN0YXRlLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wgaXNDYWxsVmFsaWQsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50IGdyb3VwLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMdWludCBjb3Vu
dGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMZW51
bSBwbmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2
b2lkICpkYXRhLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGFuZ2xlOjpQYXJhbUNhcHR1cmUgKnBhcmFtQ2FwdHVyZSk7Cit2b2lkIENhcHR1cmVHZXRQZXJm
TW9uaXRvckNvdW50ZXJTdHJpbmdBTURfbGVuZ3RoKGNvbnN0IFN0YXRlICZnbFN0YXRlLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sIGlzQ2Fs
bFZhbGlkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBHTHVpbnQgZ3JvdXAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIEdMdWludCBjb3VudGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBHTHNpemVpIGJ1ZlNpemUsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgKmxlbmd0aCwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xjaGFyICpjb3VudGVy
U3RyaW5nLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBhbmdsZTo6UGFyYW1DYXB0dXJlICpwYXJhbUNhcHR1cmUpOwordm9pZCBDYXB0dXJlR2V0UGVy
Zk1vbml0b3JDb3VudGVyU3RyaW5nQU1EX2NvdW50ZXJTdHJpbmcoY29uc3QgU3RhdGUgJmdsU3Rh
dGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBib29sIGlzQ2FsbFZhbGlkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50IGdyb3VwLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50IGNvdW50ZXIsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBH
THNpemVpIGJ1ZlNpemUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBHTHNpemVpICpsZW5ndGgsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTGNoYXIgKmNvdW50ZXJTdHJpbmcs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBhbmdsZTo6UGFyYW1DYXB0dXJlICpwYXJhbUNhcHR1cmUpOwordm9pZCBDYXB0dXJlR2V0UGVy
Zk1vbml0b3JDb3VudGVyc0FNRF9udW1Db3VudGVycyhjb25zdCBTdGF0ZSAmZ2xTdGF0ZSwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCBpc0Nh
bGxWYWxpZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgR0x1aW50IGdyb3VwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBHTGludCAqbnVtQ291bnRlcnMsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIEdMaW50ICptYXhBY3RpdmVDb3VudGVycywKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBjb3Vu
dGVyU2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgR0x1aW50ICpjb3VudGVycywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgYW5nbGU6OlBhcmFtQ2FwdHVyZSAqcGFyYW1DYXB0dXJlKTsKK3ZvaWQg
Q2FwdHVyZUdldFBlcmZNb25pdG9yQ291bnRlcnNBTURfbWF4QWN0aXZlQ291bnRlcnMoY29uc3Qg
U3RhdGUgJmdsU3RhdGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGJvb2wgaXNDYWxsVmFsaWQsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMdWludCBncm91cCwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xpbnQgKm51
bUNvdW50ZXJzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBHTGludCAqbWF4QWN0aXZlQ291bnRlcnMsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgY291bnRlclNpemUs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IEdMdWludCAqY291bnRlcnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGFuZ2xlOjpQYXJhbUNhcHR1cmUgKnBhcmFtQ2FwdHVyZSk7Cit2
b2lkIENhcHR1cmVHZXRQZXJmTW9uaXRvckNvdW50ZXJzQU1EX2NvdW50ZXJzKGNvbnN0IFN0YXRl
ICZnbFN0YXRlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBib29sIGlzQ2FsbFZhbGlkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBHTHVpbnQgZ3JvdXAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIEdMaW50ICpudW1Db3VudGVycywKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xpbnQgKm1heEFjdGl2ZUNvdW50ZXJzLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHNpemVpIGNvdW50
ZXJTaXplLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBH
THVpbnQgKmNvdW50ZXJzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBhbmdsZTo6UGFyYW1DYXB0dXJlICpwYXJhbUNhcHR1cmUpOwordm9pZCBDYXB0dXJl
R2V0UGVyZk1vbml0b3JHcm91cFN0cmluZ0FNRF9sZW5ndGgoY29uc3QgU3RhdGUgJmdsU3RhdGUs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sIGlz
Q2FsbFZhbGlkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgR0x1aW50IGdyb3VwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgR0xzaXplaSBidWZTaXplLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgR0xzaXplaSAqbGVuZ3RoLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xjaGFyICpncm91cFN0cmluZywKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFuZ2xlOjpQYXJhbUNhcHR1
cmUgKnBhcmFtQ2FwdHVyZSk7Cit2b2lkIENhcHR1cmVHZXRQZXJmTW9uaXRvckdyb3VwU3RyaW5n
QU1EX2dyb3VwU3RyaW5nKGNvbnN0IFN0YXRlICZnbFN0YXRlLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sIGlzQ2FsbFZhbGlkLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVpbnQg
Z3JvdXAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIEdMc2l6ZWkgYnVmU2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgR0xzaXplaSAqbGVuZ3RoLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTGNoYXIgKmdyb3VwU3RyaW5nLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbmdsZTo6
UGFyYW1DYXB0dXJlICpwYXJhbUNhcHR1cmUpOwordm9pZCBDYXB0dXJlR2V0UGVyZk1vbml0b3JH
cm91cHNBTURfbnVtR3JvdXBzKGNvbnN0IFN0YXRlICZnbFN0YXRlLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wgaXNDYWxsVmFsaWQsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xpbnQgKm51bUdyb3VwcywK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHNpemVpIGdy
b3Vwc1NpemUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
R0x1aW50ICpncm91cHMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgYW5nbGU6OlBhcmFtQ2FwdHVyZSAqcGFyYW1DYXB0dXJlKTsKK3ZvaWQgQ2FwdHVyZUdl
dFBlcmZNb25pdG9yR3JvdXBzQU1EX2dyb3Vwcyhjb25zdCBTdGF0ZSAmZ2xTdGF0ZSwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sIGlzQ2FsbFZhbGlkLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMaW50ICpudW1Hcm91
cHMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBn
cm91cHNTaXplLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdM
dWludCAqZ3JvdXBzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGFuZ2xlOjpQYXJhbUNhcHR1cmUgKnBhcmFtQ2FwdHVyZSk7Cit2b2lkIENhcHR1cmVTZWxlY3RQ
ZXJmTW9uaXRvckNvdW50ZXJzQU1EX2NvdW50ZXJMaXN0KGNvbnN0IFN0YXRlICZnbFN0YXRlLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29s
IGlzQ2FsbFZhbGlkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBHTHVpbnQgbW9uaXRvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgR0xib29sZWFuIGVuYWJsZSwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50IGdyb3VwLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTGludCBu
dW1Db3VudGVycywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgR0x1aW50ICpjb3VudGVyTGlzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgYW5nbGU6OlBhcmFtQ2FwdHVyZSAqcGFyYW1DYXB0
dXJlKTsKIHZvaWQgQ2FwdHVyZURyYXdFbGVtZW50c0luc3RhbmNlZEJhc2VWZXJ0ZXhCYXNlSW5z
dGFuY2VBTkdMRV9pbmRpY2VzKAogICAgIGNvbnN0IFN0YXRlICZnbFN0YXRlLAogICAgIGJvb2wg
aXNDYWxsVmFsaWQsCkBAIC0yNTU2LDcgKzI3MjIsNyBAQCB2b2lkIENhcHR1cmVEcmF3RWxlbWVu
dHNJbnN0YW5jZWRCYXNlVmVydGV4QmFzZUluc3RhbmNlQU5HTEVfaW5kaWNlcygKICAgICBHTHNp
emVpIGNvdW50LAogICAgIERyYXdFbGVtZW50c1R5cGUgdHlwZVBhY2tlZCwKICAgICBjb25zdCBH
THZvaWQgKmluZGljZXMsCi0gICAgR0xzaXplaSBpbnN0YW5jZUNvdW50cywKKyAgICBHTHNpemVp
IGluc3RhbmNlQ291bnQsCiAgICAgR0xpbnQgYmFzZVZlcnRleCwKICAgICBHTHVpbnQgYmFzZUlu
c3RhbmNlLAogICAgIGFuZ2xlOjpQYXJhbUNhcHR1cmUgKnBhcmFtQ2FwdHVyZSk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvY2FwdHVyZS9jYXB0dXJl
X2dsZXNfZXh0X3BhcmFtcy5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5H
TEUvY2FwdHVyZS9jYXB0dXJlX2dsZXNfZXh0X3BhcmFtcy5jcHAKaW5kZXggYzAxOWE3MzRhMzhk
ZjA4ZWU4ZTEwYmRkMTRmNjcxZDNiMDMyMTU0NC4uZjg3NzYxZjQ0MzI4MGFlZGNhYTNjM2RlODU2
NGEwODBmNWE1ZmQ5YiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xp
YkFOR0xFL2NhcHR1cmUvY2FwdHVyZV9nbGVzX2V4dF9wYXJhbXMuY3BwCisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9jYXB0dXJlL2NhcHR1cmVfZ2xlc19leHRfcGFy
YW1zLmNwcApAQCAtMjMsNyArMjMsNyBAQCB2b2lkIENhcHR1cmVEcmF3RWxlbWVudHNJbnN0YW5j
ZWRCYXNlVmVydGV4QmFzZUluc3RhbmNlQU5HTEVfaW5kaWNlcygKICAgICBHTHNpemVpIGNvdW50
LAogICAgIERyYXdFbGVtZW50c1R5cGUgdHlwZVBhY2tlZCwKICAgICBjb25zdCBHTHZvaWQgKmlu
ZGljZXMsCi0gICAgR0xzaXplaSBpbnN0YW5jZUNvdW50cywKKyAgICBHTHNpemVpIGluc3RhbmNl
Q291bnQsCiAgICAgR0xpbnQgYmFzZVZlcnRleCwKICAgICBHTHVpbnQgYmFzZUluc3RhbmNlLAog
ICAgIGFuZ2xlOjpQYXJhbUNhcHR1cmUgKnBhcmFtQ2FwdHVyZSkKQEAgLTIwMTEsNyArMjAxMSw3
IEBAIHZvaWQgQ2FwdHVyZUdldFRleExldmVsUGFyYW1ldGVyZnZBTkdMRV9wYXJhbXMoY29uc3Qg
U3RhdGUgJmdsU3RhdGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIEdMZmxvYXQgKnBhcmFtcywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgUGFyYW1DYXB0dXJlICpwYXJhbUNhcHR1cmUpCiB7Ci0gICAgVU5JTVBM
RU1FTlRFRCgpOworICAgIENhcHR1cmVNZW1vcnkocGFyYW1zLCBzaXplb2YoR0xmbG9hdCksIHBh
cmFtQ2FwdHVyZSk7CiB9CiAKIHZvaWQgQ2FwdHVyZUdldE11bHRpc2FtcGxlZnZBTkdMRV92YWwo
Y29uc3QgU3RhdGUgJmdsU3RhdGUsCkBAIC00MDQ3LDQgKzQwNDcsMTcwIEBAIHZvaWQgQ2FwdHVy
ZVJlbGVhc2VUZXh0dXJlc0FOR0xFX2xheW91dHMoY29uc3QgU3RhdGUgJmdsU3RhdGUsCiAgICAg
VU5JTVBMRU1FTlRFRCgpOwogfQogCit2b2lkIENhcHR1cmVEZWxldGVQZXJmTW9uaXRvcnNBTURf
bW9uaXRvcnMoY29uc3QgU3RhdGUgJmdsU3RhdGUsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgYm9vbCBpc0NhbGxWYWxpZCwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBHTHNpemVpIG4sCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgR0x1aW50ICptb25pdG9ycywKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBhbmdsZTo6UGFyYW1DYXB0dXJlICpwYXJhbUNhcHR1
cmUpCit7CisgICAgVU5JTVBMRU1FTlRFRCgpOworfQorCit2b2lkIENhcHR1cmVHZW5QZXJmTW9u
aXRvcnNBTURfbW9uaXRvcnMoY29uc3QgU3RhdGUgJmdsU3RhdGUsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCBpc0NhbGxWYWxpZCwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBHTHNpemVpIG4sCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgR0x1aW50ICptb25pdG9ycywKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBhbmdsZTo6UGFyYW1DYXB0dXJlICpwYXJhbUNhcHR1cmUp
Cit7CisgICAgVU5JTVBMRU1FTlRFRCgpOworfQorCit2b2lkIENhcHR1cmVHZXRQZXJmTW9uaXRv
ckNvdW50ZXJEYXRhQU1EX2RhdGEoY29uc3QgU3RhdGUgJmdsU3RhdGUsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCBpc0NhbGxWYWxpZCwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVpbnQgbW9uaXRvciwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTGVudW0gcG5h
bWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXpl
aSBkYXRhU2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBHTHVpbnQgKmRhdGEsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgR0xpbnQgKmJ5dGVzV3JpdHRlbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBhbmdsZTo6UGFyYW1DYXB0dXJlICpwYXJhbUNhcHR1cmUpCit7Cisg
ICAgcGFyYW1DYXB0dXJlLT5yZWFkQnVmZmVyU2l6ZUJ5dGVzID0gZGF0YVNpemU7Cit9CisKK3Zv
aWQgQ2FwdHVyZUdldFBlcmZNb25pdG9yQ291bnRlckRhdGFBTURfYnl0ZXNXcml0dGVuKGNvbnN0
IFN0YXRlICZnbFN0YXRlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgYm9vbCBpc0NhbGxWYWxpZCwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMdWludCBtb25pdG9yLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xlbnVtIHBuYW1l
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
R0xzaXplaSBkYXRhU2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIEdMdWludCAqZGF0YSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMaW50ICpieXRlc1dyaXR0ZW4sCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbmdsZTo6UGFy
YW1DYXB0dXJlICpwYXJhbUNhcHR1cmUpCit7CisgICAgcGFyYW1DYXB0dXJlLT5yZWFkQnVmZmVy
U2l6ZUJ5dGVzID0gc2l6ZW9mKEdMaW50KTsKK30KKwordm9pZCBDYXB0dXJlR2V0UGVyZk1vbml0
b3JDb3VudGVySW5mb0FNRF9kYXRhKGNvbnN0IFN0YXRlICZnbFN0YXRlLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wgaXNDYWxsVmFsaWQsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50IGdyb3VwLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMdWludCBjb3Vu
dGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMZW51
bSBwbmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2
b2lkICpkYXRhLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGFuZ2xlOjpQYXJhbUNhcHR1cmUgKnBhcmFtQ2FwdHVyZSkKK3sKKyAgICBVTklNUExFTUVOVEVE
KCk7Cit9CisKK3ZvaWQgQ2FwdHVyZUdldFBlcmZNb25pdG9yQ291bnRlclN0cmluZ0FNRF9sZW5n
dGgoY29uc3QgU3RhdGUgJmdsU3RhdGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGJvb2wgaXNDYWxsVmFsaWQsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMdWludCBncm91cCwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50IGNvdW50ZXIsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkg
YnVmU2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgR0xzaXplaSAqbGVuZ3RoLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBHTGNoYXIgKmNvdW50ZXJTdHJpbmcsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFuZ2xlOjpQYXJhbUNhcHR1cmUgKnBhcmFt
Q2FwdHVyZSkKK3sKKyAgICBwYXJhbUNhcHR1cmUtPnJlYWRCdWZmZXJTaXplQnl0ZXMgPSBzaXpl
b2YoR0xzaXplaSk7Cit9CisKK3ZvaWQgQ2FwdHVyZUdldFBlcmZNb25pdG9yQ291bnRlclN0cmlu
Z0FNRF9jb3VudGVyU3RyaW5nKGNvbnN0IFN0YXRlICZnbFN0YXRlLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCBpc0NhbGxWYWxp
ZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIEdMdWludCBncm91cCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIEdMdWludCBjb3VudGVyLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBidWZTaXplLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xz
aXplaSAqbGVuZ3RoLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgR0xjaGFyICpjb3VudGVyU3RyaW5nLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYW5nbGU6OlBhcmFtQ2FwdHVy
ZSAqcGFyYW1DYXB0dXJlKQoreworICAgIHBhcmFtQ2FwdHVyZS0+cmVhZEJ1ZmZlclNpemVCeXRl
cyA9IGJ1ZlNpemU7Cit9CisKK3ZvaWQgQ2FwdHVyZUdldFBlcmZNb25pdG9yQ291bnRlcnNBTURf
bnVtQ291bnRlcnMoY29uc3QgU3RhdGUgJmdsU3RhdGUsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wgaXNDYWxsVmFsaWQsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMdWludCBncm91cCwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xpbnQgKm51
bUNvdW50ZXJzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBHTGludCAqbWF4QWN0aXZlQ291bnRlcnMsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgY291bnRlclNpemUsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMdWludCAqY291bnRlcnMs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFuZ2xl
OjpQYXJhbUNhcHR1cmUgKnBhcmFtQ2FwdHVyZSkKK3sKKyAgICBwYXJhbUNhcHR1cmUtPnJlYWRC
dWZmZXJTaXplQnl0ZXMgPSBzaXplb2YoR0xpbnQpOworfQorCit2b2lkIENhcHR1cmVHZXRQZXJm
TW9uaXRvckNvdW50ZXJzQU1EX21heEFjdGl2ZUNvdW50ZXJzKGNvbnN0IFN0YXRlICZnbFN0YXRl
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBib29sIGlzQ2FsbFZhbGlkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBHTHVpbnQgZ3JvdXAsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMaW50ICpudW1Db3VudGVycywKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xp
bnQgKm1heEFjdGl2ZUNvdW50ZXJzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBHTHNpemVpIGNvdW50ZXJTaXplLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVpbnQgKmNvdW50
ZXJzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBhbmdsZTo6UGFyYW1DYXB0dXJlICpwYXJhbUNhcHR1cmUpCit7CisgICAgcGFyYW1DYXB0
dXJlLT5yZWFkQnVmZmVyU2l6ZUJ5dGVzID0gc2l6ZW9mKEdMaW50KTsKK30KKwordm9pZCBDYXB0
dXJlR2V0UGVyZk1vbml0b3JDb3VudGVyc0FNRF9jb3VudGVycyhjb25zdCBTdGF0ZSAmZ2xTdGF0
ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCBp
c0NhbGxWYWxpZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgR0x1aW50IGdyb3VwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBHTGludCAqbnVtQ291bnRlcnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIEdMaW50ICptYXhBY3RpdmVDb3VudGVycywKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBjb3VudGVyU2l6ZSwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50ICpj
b3VudGVycywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
YW5nbGU6OlBhcmFtQ2FwdHVyZSAqcGFyYW1DYXB0dXJlKQoreworICAgIHBhcmFtQ2FwdHVyZS0+
cmVhZEJ1ZmZlclNpemVCeXRlcyA9IGNvdW50ZXJTaXplICogc2l6ZW9mKEdMdWludCk7Cit9CisK
K3ZvaWQgQ2FwdHVyZUdldFBlcmZNb25pdG9yR3JvdXBTdHJpbmdBTURfbGVuZ3RoKGNvbnN0IFN0
YXRlICZnbFN0YXRlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgYm9vbCBpc0NhbGxWYWxpZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIEdMdWludCBncm91cCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgYnVmU2l6ZSwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgKmxlbmd0aCwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMY2hhciAqZ3JvdXBTdHJp
bmcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbmds
ZTo6UGFyYW1DYXB0dXJlICpwYXJhbUNhcHR1cmUpCit7CisgICAgcGFyYW1DYXB0dXJlLT5yZWFk
QnVmZmVyU2l6ZUJ5dGVzID0gc2l6ZW9mKEdMc2l6ZWkpOworfQorCit2b2lkIENhcHR1cmVHZXRQ
ZXJmTW9uaXRvckdyb3VwU3RyaW5nQU1EX2dyb3VwU3RyaW5nKGNvbnN0IFN0YXRlICZnbFN0YXRl
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBi
b29sIGlzQ2FsbFZhbGlkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBHTHVpbnQgZ3JvdXAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgYnVmU2l6ZSwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSAqbGVuZ3RoLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTGNo
YXIgKmdyb3VwU3RyaW5nLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBhbmdsZTo6UGFyYW1DYXB0dXJlICpwYXJhbUNhcHR1cmUpCit7CisgICAg
cGFyYW1DYXB0dXJlLT5yZWFkQnVmZmVyU2l6ZUJ5dGVzID0gYnVmU2l6ZTsKK30KKwordm9pZCBD
YXB0dXJlR2V0UGVyZk1vbml0b3JHcm91cHNBTURfbnVtR3JvdXBzKGNvbnN0IFN0YXRlICZnbFN0
YXRlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wg
aXNDYWxsVmFsaWQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgR0xpbnQgKm51bUdyb3VwcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBHTHNpemVpIGdyb3Vwc1NpemUsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgR0x1aW50ICpncm91cHMsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgYW5nbGU6OlBhcmFtQ2FwdHVyZSAqcGFyYW1DYXB0
dXJlKQoreworICAgIFVOSU1QTEVNRU5URUQoKTsKK30KKwordm9pZCBDYXB0dXJlR2V0UGVyZk1v
bml0b3JHcm91cHNBTURfZ3JvdXBzKGNvbnN0IFN0YXRlICZnbFN0YXRlLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wgaXNDYWxsVmFsaWQsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xpbnQgKm51bUdyb3VwcywKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHNpemVpIGdyb3Vwc1Np
emUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50ICpn
cm91cHMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYW5nbGU6
OlBhcmFtQ2FwdHVyZSAqcGFyYW1DYXB0dXJlKQoreworICAgIFVOSU1QTEVNRU5URUQoKTsKK30K
Kwordm9pZCBDYXB0dXJlU2VsZWN0UGVyZk1vbml0b3JDb3VudGVyc0FNRF9jb3VudGVyTGlzdChj
b25zdCBTdGF0ZSAmZ2xTdGF0ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgYm9vbCBpc0NhbGxWYWxpZCwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50IG1vbml0b3IsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMYm9vbGVhbiBl
bmFibGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIEdMdWludCBncm91cCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgR0xpbnQgbnVtQ291bnRlcnMsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMdWludCAqY291bnRlckxpc3QsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFuZ2xlOjpQ
YXJhbUNhcHR1cmUgKnBhcmFtQ2FwdHVyZSkKK3sKKyAgICBVTklNUExFTUVOVEVEKCk7Cit9CiB9
ICAvLyBuYW1lc3BhY2UgZ2wKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3Ny
Yy9saWJBTkdMRS9jYXB0dXJlL2ZyYW1lX2NhcHR1cmVfdXRpbHMuY3BwIGIvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL2NhcHR1cmUvZnJhbWVfY2FwdHVyZV91dGlscy5jcHAK
aW5kZXggYmE0YTJiNzNlNTVlOTdkM2JlMGMwODFhYTJhYmUwN2ViZmZmMDRhYi4uNjAyZmZiNjMz
YTFiMWQwOWVhZTRjYWVjOTZhZDA1NDFiMzRhNzkyOSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL2NhcHR1cmUvZnJhbWVfY2FwdHVyZV91dGlscy5jcHAK
KysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL2NhcHR1cmUvZnJhbWVf
Y2FwdHVyZV91dGlscy5jcHAKQEAgLTEyMjIsNyArMTIyMiw5IEBAIFJlc3VsdCBTZXJpYWxpemVU
ZXh0dXJlRGF0YShKc29uU2VyaWFsaXplciAqanNvbiwKICAgICAgICAgQVNTRVJUKGluZGV4Lmdl
dFR5cGUoKSA9PSBnbDo6VGV4dHVyZVR5cGU6Ol8yRCB8fCBpbmRleC5nZXRUeXBlKCkgPT0gZ2w6
OlRleHR1cmVUeXBlOjpfM0QgfHwKICAgICAgICAgICAgICAgIGluZGV4LmdldFR5cGUoKSA9PSBn
bDo6VGV4dHVyZVR5cGU6Ol8yREFycmF5IHx8CiAgICAgICAgICAgICAgICBpbmRleC5nZXRUeXBl
KCkgPT0gZ2w6OlRleHR1cmVUeXBlOjpDdWJlTWFwIHx8Ci0gICAgICAgICAgICAgICBpbmRleC5n
ZXRUeXBlKCkgPT0gZ2w6OlRleHR1cmVUeXBlOjpDdWJlTWFwQXJyYXkpOworICAgICAgICAgICAg
ICAgaW5kZXguZ2V0VHlwZSgpID09IGdsOjpUZXh0dXJlVHlwZTo6Q3ViZU1hcEFycmF5IHx8Cisg
ICAgICAgICAgICAgICBpbmRleC5nZXRUeXBlKCkgPT0gZ2w6OlRleHR1cmVUeXBlOjpfMkRNdWx0
aXNhbXBsZUFycmF5IHx8CisgICAgICAgICAgICAgICBpbmRleC5nZXRUeXBlKCkgPT0gZ2w6OlRl
eHR1cmVUeXBlOjpfMkRNdWx0aXNhbXBsZSk7CiAKICAgICAgICAgR0xlbnVtIGdsRm9ybWF0ID0g
Zm9ybWF0LmZvcm1hdDsKICAgICAgICAgR0xlbnVtIGdsVHlwZSAgID0gZm9ybWF0LnR5cGU7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvY2FwdHVyZS9m
cmFtZV9jYXB0dXJlX3V0aWxzX2F1dG9nZW4uY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUv
c3JjL2xpYkFOR0xFL2NhcHR1cmUvZnJhbWVfY2FwdHVyZV91dGlsc19hdXRvZ2VuLmNwcAppbmRl
eCBhYWZjOTQ1NDVlOTc3NDk5OTU1NWJiNjM5MTc0NjU1MmJiY2YyZjdiLi40MjVhY2ZjNTI2MTM2
ZWExMjU0MjYwMzk1ZjcwM2I5MzhiMDI1YmQ3IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvbGliQU5HTEUvY2FwdHVyZS9mcmFtZV9jYXB0dXJlX3V0aWxzX2F1dG9nZW4u
Y3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9jYXB0dXJlL2Zy
YW1lX2NhcHR1cmVfdXRpbHNfYXV0b2dlbi5jcHAKQEAgLTY1LDYgKzY1LDkgQEAgdm9pZCBXcml0
ZVBhcmFtQ2FwdHVyZVJlcGxheShzdGQ6Om9zdHJlYW0gJm9zLCBjb25zdCBDYWxsQ2FwdHVyZSAm
Y2FsbCwgY29uc3QgUGEKICAgICAgICAgY2FzZSBQYXJhbVR5cGU6OlRFR0xBdHRyaWJLSFI6CiAg
ICAgICAgICAgICBXcml0ZVBhcmFtVmFsdWVSZXBsYXk8UGFyYW1UeXBlOjpURUdMQXR0cmliS0hS
PihvcywgY2FsbCwgcGFyYW0udmFsdWUuRUdMQXR0cmliS0hSVmFsKTsKICAgICAgICAgICAgIGJy
ZWFrOworICAgICAgICBjYXNlIFBhcmFtVHlwZTo6VEVHTEJvb2xlYW46CisgICAgICAgICAgICBX
cml0ZVBhcmFtVmFsdWVSZXBsYXk8UGFyYW1UeXBlOjpURUdMQm9vbGVhbj4ob3MsIGNhbGwsIHBh
cmFtLnZhbHVlLkVHTEJvb2xlYW5WYWwpOworICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIGNh
c2UgUGFyYW1UeXBlOjpURUdMQ2xpZW50QnVmZmVyOgogICAgICAgICAgICAgV3JpdGVQYXJhbVZh
bHVlUmVwbGF5PFBhcmFtVHlwZTo6VEVHTENsaWVudEJ1ZmZlcj4ob3MsIGNhbGwsCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBw
YXJhbS52YWx1ZS5FR0xDbGllbnRCdWZmZXJWYWwpOwpAQCAtNjEyLDYgKzYxNSw4IEBAIGNvbnN0
IGNoYXIgKlBhcmFtVHlwZVRvU3RyaW5nKFBhcmFtVHlwZSBwYXJhbVR5cGUpCiAgICAgICAgICAg
ICByZXR1cm4gIkdMZW51bSI7CiAgICAgICAgIGNhc2UgUGFyYW1UeXBlOjpURUdMQXR0cmliS0hS
OgogICAgICAgICAgICAgcmV0dXJuICJHTGVudW0iOworICAgICAgICBjYXNlIFBhcmFtVHlwZTo6
VEVHTEJvb2xlYW46CisgICAgICAgICAgICByZXR1cm4gIkdMZW51bSI7CiAgICAgICAgIGNhc2Ug
UGFyYW1UeXBlOjpURUdMQ2xpZW50QnVmZmVyOgogICAgICAgICAgICAgcmV0dXJuICJHTGVudW0i
OwogICAgICAgICBjYXNlIFBhcmFtVHlwZTo6VEVHTENvbmZpZzoKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9jYXB0dXJlL2ZyYW1lX2NhcHR1cmVfdXRp
bHNfYXV0b2dlbi5oIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL2NhcHR1
cmUvZnJhbWVfY2FwdHVyZV91dGlsc19hdXRvZ2VuLmgKaW5kZXggYmRjNWUyYTUyNWQzOWE1YmFi
MzcxY2FkNDk3NjBhYWJhODEzNGRlOC4uOWM3NmMyZmMxNTMyMDIxNmNkOWUzZWYzODhhMzhiYjJh
ZDM5NjA3ZiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xF
L2NhcHR1cmUvZnJhbWVfY2FwdHVyZV91dGlsc19hdXRvZ2VuLmgKKysrIGIvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL2NhcHR1cmUvZnJhbWVfY2FwdHVyZV91dGlsc19hdXRv
Z2VuLmgKQEAgLTMwLDYgKzMwLDcgQEAgZW51bSBjbGFzcyBQYXJhbVR5cGUKICAgICBURHJhd0Vs
ZW1lbnRzVHlwZSwKICAgICBURUdMQXR0cmliLAogICAgIFRFR0xBdHRyaWJLSFIsCisgICAgVEVH
TEJvb2xlYW4sCiAgICAgVEVHTENsaWVudEJ1ZmZlciwKICAgICBURUdMQ29uZmlnLAogICAgIFRF
R0xDb250ZXh0LApAQCAtMTcyLDcgKzE3Myw3IEBAIGVudW0gY2xhc3MgUGFyYW1UeXBlCiAgICAg
VHZvaWRQb2ludGVyUG9pbnRlciwKIH07CiAKLWNvbnN0ZXhwciB1aW50MzJfdCBrUGFyYW1UeXBl
Q291bnQgPSAxNTM7Citjb25zdGV4cHIgdWludDMyX3Qga1BhcmFtVHlwZUNvdW50ID0gMTU0Owog
CiB1bmlvbiBQYXJhbVZhbHVlCiB7CkBAIC0xODksNiArMTkwLDcgQEAgdW5pb24gUGFyYW1WYWx1
ZQogICAgIGdsOjpEcmF3RWxlbWVudHNUeXBlIERyYXdFbGVtZW50c1R5cGVWYWw7CiAgICAgRUdM
QXR0cmliIEVHTEF0dHJpYlZhbDsKICAgICBFR0xBdHRyaWJLSFIgRUdMQXR0cmliS0hSVmFsOwor
ICAgIEVHTEJvb2xlYW4gRUdMQm9vbGVhblZhbDsKICAgICBFR0xDbGllbnRCdWZmZXIgRUdMQ2xp
ZW50QnVmZmVyVmFsOwogICAgIEVHTENvbmZpZyBFR0xDb25maWdWYWw7CiAgICAgRUdMQ29udGV4
dCBFR0xDb250ZXh0VmFsOwpAQCAtNDIyLDYgKzQyNCwxMiBAQCBpbmxpbmUgRUdMQXR0cmliS0hS
IEdldFBhcmFtVmFsPFBhcmFtVHlwZTo6VEVHTEF0dHJpYktIUiwgRUdMQXR0cmliS0hSPihjb25z
dCBQYQogICAgIHJldHVybiB2YWx1ZS5FR0xBdHRyaWJLSFJWYWw7CiB9CiAKK3RlbXBsYXRlIDw+
CitpbmxpbmUgRUdMQm9vbGVhbiBHZXRQYXJhbVZhbDxQYXJhbVR5cGU6OlRFR0xCb29sZWFuLCBF
R0xCb29sZWFuPihjb25zdCBQYXJhbVZhbHVlICZ2YWx1ZSkKK3sKKyAgICByZXR1cm4gdmFsdWUu
RUdMQm9vbGVhblZhbDsKK30KKwogdGVtcGxhdGUgPD4KIGlubGluZSBFR0xDbGllbnRCdWZmZXIg
R2V0UGFyYW1WYWw8UGFyYW1UeXBlOjpURUdMQ2xpZW50QnVmZmVyLCBFR0xDbGllbnRCdWZmZXI+
KAogICAgIGNvbnN0IFBhcmFtVmFsdWUgJnZhbHVlKQpAQCAtMTM4MCw2ICsxMzg4LDggQEAgVCBB
Y2Nlc3NQYXJhbVZhbHVlKFBhcmFtVHlwZSBwYXJhbVR5cGUsIGNvbnN0IFBhcmFtVmFsdWUgJnZh
bHVlKQogICAgICAgICAgICAgcmV0dXJuIEdldFBhcmFtVmFsPFBhcmFtVHlwZTo6VEVHTEF0dHJp
YiwgVD4odmFsdWUpOwogICAgICAgICBjYXNlIFBhcmFtVHlwZTo6VEVHTEF0dHJpYktIUjoKICAg
ICAgICAgICAgIHJldHVybiBHZXRQYXJhbVZhbDxQYXJhbVR5cGU6OlRFR0xBdHRyaWJLSFIsIFQ+
KHZhbHVlKTsKKyAgICAgICAgY2FzZSBQYXJhbVR5cGU6OlRFR0xCb29sZWFuOgorICAgICAgICAg
ICAgcmV0dXJuIEdldFBhcmFtVmFsPFBhcmFtVHlwZTo6VEVHTEJvb2xlYW4sIFQ+KHZhbHVlKTsK
ICAgICAgICAgY2FzZSBQYXJhbVR5cGU6OlRFR0xDbGllbnRCdWZmZXI6CiAgICAgICAgICAgICBy
ZXR1cm4gR2V0UGFyYW1WYWw8UGFyYW1UeXBlOjpURUdMQ2xpZW50QnVmZmVyLCBUPih2YWx1ZSk7
CiAgICAgICAgIGNhc2UgUGFyYW1UeXBlOjpURUdMQ29uZmlnOgpAQCAtMTc1MSw2ICsxNzYxLDEy
IEBAIGlubGluZSB2b2lkIFNldFBhcmFtVmFsPFBhcmFtVHlwZTo6VEVHTEF0dHJpYktIUj4oRUdM
QXR0cmliS0hSIHZhbHVlSW4sIFBhcmFtVmFsCiAgICAgdmFsdWVPdXQtPkVHTEF0dHJpYktIUlZh
bCA9IHZhbHVlSW47CiB9CiAKK3RlbXBsYXRlIDw+CitpbmxpbmUgdm9pZCBTZXRQYXJhbVZhbDxQ
YXJhbVR5cGU6OlRFR0xCb29sZWFuPihFR0xCb29sZWFuIHZhbHVlSW4sIFBhcmFtVmFsdWUgKnZh
bHVlT3V0KQoreworICAgIHZhbHVlT3V0LT5FR0xCb29sZWFuVmFsID0gdmFsdWVJbjsKK30KKwog
dGVtcGxhdGUgPD4KIGlubGluZSB2b2lkIFNldFBhcmFtVmFsPFBhcmFtVHlwZTo6VEVHTENsaWVu
dEJ1ZmZlcj4oRUdMQ2xpZW50QnVmZmVyIHZhbHVlSW4sIFBhcmFtVmFsdWUgKnZhbHVlT3V0KQog
ewpAQCAtMjcwMSw2ICsyNzE3LDkgQEAgdm9pZCBJbml0UGFyYW1WYWx1ZShQYXJhbVR5cGUgcGFy
YW1UeXBlLCBUIHZhbHVlSW4sIFBhcmFtVmFsdWUgKnZhbHVlT3V0KQogICAgICAgICBjYXNlIFBh
cmFtVHlwZTo6VEVHTEF0dHJpYktIUjoKICAgICAgICAgICAgIFNldFBhcmFtVmFsPFBhcmFtVHlw
ZTo6VEVHTEF0dHJpYktIUj4odmFsdWVJbiwgdmFsdWVPdXQpOwogICAgICAgICAgICAgYnJlYWs7
CisgICAgICAgIGNhc2UgUGFyYW1UeXBlOjpURUdMQm9vbGVhbjoKKyAgICAgICAgICAgIFNldFBh
cmFtVmFsPFBhcmFtVHlwZTo6VEVHTEJvb2xlYW4+KHZhbHVlSW4sIHZhbHVlT3V0KTsKKyAgICAg
ICAgICAgIGJyZWFrOwogICAgICAgICBjYXNlIFBhcmFtVHlwZTo6VEVHTENsaWVudEJ1ZmZlcjoK
ICAgICAgICAgICAgIFNldFBhcmFtVmFsPFBhcmFtVHlwZTo6VEVHTENsaWVudEJ1ZmZlcj4odmFs
dWVJbiwgdmFsdWVPdXQpOwogICAgICAgICAgICAgYnJlYWs7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvY2FwdHVyZS9nbF9lbnVtX3V0aWxzX2F1dG9n
ZW4uY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL2NhcHR1cmUvZ2xf
ZW51bV91dGlsc19hdXRvZ2VuLmNwcAppbmRleCAyMWQ2ODBiMGRhYzg4NzcxYzBmNjU4MDBjOGNm
MmZlMTZmMGFkNTQ5Li4wOTg1ZTEyZGZkZGNjMjUzNzEwZTdkZjA3NjVmYzU1ZTg2YjZjNTFiIDEw
MDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvY2FwdHVyZS9n
bF9lbnVtX3V0aWxzX2F1dG9nZW4uY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3Ny
Yy9saWJBTkdMRS9jYXB0dXJlL2dsX2VudW1fdXRpbHNfYXV0b2dlbi5jcHAKQEAgLTE2MCw2ICsx
NjAsMzYgQEAgY29uc3QgY2hhciAqR0xlbnVtVG9TdHJpbmcoR0xlbnVtR3JvdXAgZW51bUdyb3Vw
LCB1bnNpZ25lZCBpbnQgdmFsdWUpCiAgICAgICAgICAgICAgICAgICAgIHJldHVybiAiR0xfRlVO
Q19TVUJUUkFDVCI7CiAgICAgICAgICAgICAgICAgY2FzZSAweDgwMEI6CiAgICAgICAgICAgICAg
ICAgICAgIHJldHVybiAiR0xfRlVOQ19SRVZFUlNFX1NVQlRSQUNUIjsKKyAgICAgICAgICAgICAg
ICBjYXNlIDB4OTI5NDoKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuICJHTF9NVUxUSVBMWSI7
CisgICAgICAgICAgICAgICAgY2FzZSAweDkyOTU6CisgICAgICAgICAgICAgICAgICAgIHJldHVy
biAiR0xfU0NSRUVOIjsKKyAgICAgICAgICAgICAgICBjYXNlIDB4OTI5NjoKKyAgICAgICAgICAg
ICAgICAgICAgcmV0dXJuICJHTF9PVkVSTEFZIjsKKyAgICAgICAgICAgICAgICBjYXNlIDB4OTI5
NzoKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuICJHTF9EQVJLRU4iOworICAgICAgICAgICAg
ICAgIGNhc2UgMHg5Mjk4OgorICAgICAgICAgICAgICAgICAgICByZXR1cm4gIkdMX0xJR0hURU4i
OworICAgICAgICAgICAgICAgIGNhc2UgMHg5Mjk5OgorICAgICAgICAgICAgICAgICAgICByZXR1
cm4gIkdMX0NPTE9SRE9ER0UiOworICAgICAgICAgICAgICAgIGNhc2UgMHg5MjlBOgorICAgICAg
ICAgICAgICAgICAgICByZXR1cm4gIkdMX0NPTE9SQlVSTiI7CisgICAgICAgICAgICAgICAgY2Fz
ZSAweDkyOUI6CisgICAgICAgICAgICAgICAgICAgIHJldHVybiAiR0xfSEFSRExJR0hUIjsKKyAg
ICAgICAgICAgICAgICBjYXNlIDB4OTI5QzoKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuICJH
TF9TT0ZUTElHSFQiOworICAgICAgICAgICAgICAgIGNhc2UgMHg5MjlFOgorICAgICAgICAgICAg
ICAgICAgICByZXR1cm4gIkdMX0RJRkZFUkVOQ0UiOworICAgICAgICAgICAgICAgIGNhc2UgMHg5
MkEwOgorICAgICAgICAgICAgICAgICAgICByZXR1cm4gIkdMX0VYQ0xVU0lPTiI7CisgICAgICAg
ICAgICAgICAgY2FzZSAweDkyQUQ6CisgICAgICAgICAgICAgICAgICAgIHJldHVybiAiR0xfSFNM
X0hVRSI7CisgICAgICAgICAgICAgICAgY2FzZSAweDkyQUU6CisgICAgICAgICAgICAgICAgICAg
IHJldHVybiAiR0xfSFNMX1NBVFVSQVRJT04iOworICAgICAgICAgICAgICAgIGNhc2UgMHg5MkFG
OgorICAgICAgICAgICAgICAgICAgICByZXR1cm4gIkdMX0hTTF9DT0xPUiI7CisgICAgICAgICAg
ICAgICAgY2FzZSAweDkyQjA6CisgICAgICAgICAgICAgICAgICAgIHJldHVybiAiR0xfSFNMX0xV
TUlOT1NJVFkiOwogICAgICAgICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICAgICAgICAg
IHJldHVybiBVbmtub3duR0xlbnVtVG9TdHJpbmcodmFsdWUpOwogICAgICAgICAgICAgfQpAQCAt
MTIyNyw2ICsxMjU3LDIwIEBAIGNvbnN0IGNoYXIgKkdMZW51bVRvU3RyaW5nKEdMZW51bUdyb3Vw
IGVudW1Hcm91cCwgdW5zaWduZWQgaW50IHZhbHVlKQogICAgICAgICAgICAgICAgICAgICByZXR1
cm4gIkdMX1BPSU5UX1NJWkVfQVJSQVlfQlVGRkVSX0JJTkRJTkdfT0VTIjsKICAgICAgICAgICAg
ICAgICBjYXNlIDB4OEJCQjoKICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICJHTF9GUkFNRUJV
RkZFUl9GTElQX1lfTUVTQSI7CisgICAgICAgICAgICAgICAgY2FzZSAweDhCQzA6CisgICAgICAg
ICAgICAgICAgICAgIHJldHVybiAiR0xfQ09VTlRFUl9UWVBFX0FNRCI7CisgICAgICAgICAgICAg
ICAgY2FzZSAweDhCQzE6CisgICAgICAgICAgICAgICAgICAgIHJldHVybiAiR0xfQ09VTlRFUl9S
QU5HRV9BTUQiOworICAgICAgICAgICAgICAgIGNhc2UgMHg4QkMyOgorICAgICAgICAgICAgICAg
ICAgICByZXR1cm4gIkdMX1VOU0lHTkVEX0lOVDY0X0FNRCI7CisgICAgICAgICAgICAgICAgY2Fz
ZSAweDhCQzM6CisgICAgICAgICAgICAgICAgICAgIHJldHVybiAiR0xfUEVSQ0VOVEFHRV9BTUQi
OworICAgICAgICAgICAgICAgIGNhc2UgMHg4QkM0OgorICAgICAgICAgICAgICAgICAgICByZXR1
cm4gIkdMX1BFUkZNT05fUkVTVUxUX0FWQUlMQUJMRV9BTUQiOworICAgICAgICAgICAgICAgIGNh
c2UgMHg4QkM1OgorICAgICAgICAgICAgICAgICAgICByZXR1cm4gIkdMX1BFUkZNT05fUkVTVUxU
X1NJWkVfQU1EIjsKKyAgICAgICAgICAgICAgICBjYXNlIDB4OEJDNjoKKyAgICAgICAgICAgICAg
ICAgICAgcmV0dXJuICJHTF9QRVJGTU9OX1JFU1VMVF9BTUQiOwogICAgICAgICAgICAgICAgIGNh
c2UgMHg4QkU3OgogICAgICAgICAgICAgICAgICAgICByZXR1cm4gIkdMX1NBTVBMRVJfRVhURVJO
QUxfMkRfWTJZX0VYVCI7CiAgICAgICAgICAgICAgICAgY2FzZSAweDhCRkE6CkBAIC0xNzM1LDM2
ICsxNzc5LDYgQEAgY29uc3QgY2hhciAqR0xlbnVtVG9TdHJpbmcoR0xlbnVtR3JvdXAgZW51bUdy
b3VwLCB1bnNpZ25lZCBpbnQgdmFsdWUpCiAgICAgICAgICAgICAgICAgICAgIHJldHVybiAiR0xf
TUFYX0NPTVBVVEVfV09SS19HUk9VUF9DT1VOVCI7CiAgICAgICAgICAgICAgICAgY2FzZSAweDkx
QkY6CiAgICAgICAgICAgICAgICAgICAgIHJldHVybiAiR0xfTUFYX0NPTVBVVEVfV09SS19HUk9V
UF9TSVpFIjsKLSAgICAgICAgICAgICAgICBjYXNlIDB4OTI5NDoKLSAgICAgICAgICAgICAgICAg
ICAgcmV0dXJuICJHTF9NVUxUSVBMWSI7Ci0gICAgICAgICAgICAgICAgY2FzZSAweDkyOTU6Ci0g
ICAgICAgICAgICAgICAgICAgIHJldHVybiAiR0xfU0NSRUVOIjsKLSAgICAgICAgICAgICAgICBj
YXNlIDB4OTI5NjoKLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuICJHTF9PVkVSTEFZIjsKLSAg
ICAgICAgICAgICAgICBjYXNlIDB4OTI5NzoKLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuICJH
TF9EQVJLRU4iOwotICAgICAgICAgICAgICAgIGNhc2UgMHg5Mjk4OgotICAgICAgICAgICAgICAg
ICAgICByZXR1cm4gIkdMX0xJR0hURU4iOwotICAgICAgICAgICAgICAgIGNhc2UgMHg5Mjk5Ogot
ICAgICAgICAgICAgICAgICAgICByZXR1cm4gIkdMX0NPTE9SRE9ER0UiOwotICAgICAgICAgICAg
ICAgIGNhc2UgMHg5MjlBOgotICAgICAgICAgICAgICAgICAgICByZXR1cm4gIkdMX0NPTE9SQlVS
TiI7Ci0gICAgICAgICAgICAgICAgY2FzZSAweDkyOUI6Ci0gICAgICAgICAgICAgICAgICAgIHJl
dHVybiAiR0xfSEFSRExJR0hUIjsKLSAgICAgICAgICAgICAgICBjYXNlIDB4OTI5QzoKLSAgICAg
ICAgICAgICAgICAgICAgcmV0dXJuICJHTF9TT0ZUTElHSFQiOwotICAgICAgICAgICAgICAgIGNh
c2UgMHg5MjlFOgotICAgICAgICAgICAgICAgICAgICByZXR1cm4gIkdMX0RJRkZFUkVOQ0UiOwot
ICAgICAgICAgICAgICAgIGNhc2UgMHg5MkEwOgotICAgICAgICAgICAgICAgICAgICByZXR1cm4g
IkdMX0VYQ0xVU0lPTiI7Ci0gICAgICAgICAgICAgICAgY2FzZSAweDkyQUQ6Ci0gICAgICAgICAg
ICAgICAgICAgIHJldHVybiAiR0xfSFNMX0hVRSI7Ci0gICAgICAgICAgICAgICAgY2FzZSAweDky
QUU6Ci0gICAgICAgICAgICAgICAgICAgIHJldHVybiAiR0xfSFNMX1NBVFVSQVRJT04iOwotICAg
ICAgICAgICAgICAgIGNhc2UgMHg5MkFGOgotICAgICAgICAgICAgICAgICAgICByZXR1cm4gIkdM
X0hTTF9DT0xPUiI7Ci0gICAgICAgICAgICAgICAgY2FzZSAweDkyQjA6Ci0gICAgICAgICAgICAg
ICAgICAgIHJldHVybiAiR0xfSFNMX0xVTUlOT1NJVFkiOwogICAgICAgICAgICAgICAgIGNhc2Ug
MHg5MkJCOgogICAgICAgICAgICAgICAgICAgICByZXR1cm4gIkdMX1BVUkdFRF9DT05URVhUX1JF
U0VUX05WIjsKICAgICAgICAgICAgICAgICBjYXNlIDB4OTJCRToKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9jYXB0dXJlL3RyYWNlX2ZpeHR1cmUuY3Bw
IGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL2NhcHR1cmUvdHJhY2VfZml4
dHVyZS5jcHAKaW5kZXggZWY3NWU3OGM4NjA3NjQ4Y2M5MTRkMTg0ZGFhNWY0MGQ1ZWI0NzIwNy4u
MzhmYzQzYzM5MGI1MjEyNzMxYTkyNTU2ZmY3Y2UxZGRkNzE0OTljMSAxMDA2NDQKLS0tIGEvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL2NhcHR1cmUvdHJhY2VfZml4dHVyZS5j
cHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL2NhcHR1cmUvdHJh
Y2VfZml4dHVyZS5jcHAKQEAgLTMxNSw2ICszMTUsMjEgQEAgdm9pZCBTZXRGcmFtZWJ1ZmZlcklE
KEdMdWludCBpZCkKICAgICBTZXRSZXNvdXJjZUlEKGdGcmFtZWJ1ZmZlck1hcCwgaWQpOwogfQog
Cit2b2lkIFNldEJ1ZmZlcklEKEdMdWludCBpZCkKK3sKKyAgICBTZXRSZXNvdXJjZUlEKGdCdWZm
ZXJNYXAsIGlkKTsKK30KKwordm9pZCBTZXRSZW5kZXJidWZmZXJJRChHTHVpbnQgaWQpCit7Cisg
ICAgU2V0UmVzb3VyY2VJRChnUmVuZGVyYnVmZmVyTWFwLCBpZCk7Cit9CisKK3ZvaWQgU2V0VGV4
dHVyZUlEKEdMdWludCBpZCkKK3sKKyAgICBTZXRSZXNvdXJjZUlEKGdUZXh0dXJlTWFwLCBpZCk7
Cit9CisKIHZvaWQgVmFsaWRhdGVTZXJpYWxpemVkU3RhdGUoY29uc3QgY2hhciAqc2VyaWFsaXpl
ZFN0YXRlLCBjb25zdCBjaGFyICpmaWxlTmFtZSwgdWludDMyX3QgbGluZSkKIHsKICAgICBpZiAo
Z1ZhbGlkYXRlU2VyaWFsaXplZFN0YXRlQ2FsbGJhY2spCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvY2FwdHVyZS90cmFjZV9maXh0dXJlLmggYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvY2FwdHVyZS90cmFjZV9maXh0dXJlLmgK
aW5kZXggNDFjMThmYTc0NzY2NDQ5YTQ3ZWQ1NWEwMzI5Mjg4YmJlNjI0YzU4NC4uNGQwNmVkYTgx
N2I1ZjBlNTI2ODI4MzVkNmFhNzQ1ODQwZmYzY2ZmYiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL2NhcHR1cmUvdHJhY2VfZml4dHVyZS5oCisrKyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9jYXB0dXJlL3RyYWNlX2ZpeHR1cmUu
aApAQCAtMTMwLDYgKzEzMCw5IEBAIHZvaWQgVXBkYXRlVmVydGV4QXJyYXlJRChHTHVpbnQgaWQs
IEdMc2l6ZWkgcmVhZEJ1ZmZlck9mZnNldCk7CiB2b2lkIFVwZGF0ZUJ1ZmZlcklEMihHTHVpbnQg
aWQsIEdMc2l6ZWkgcmVhZEJ1ZmZlck9mZnNldCk7CiAKIHZvaWQgU2V0RnJhbWVidWZmZXJJRChH
THVpbnQgaWQpOwordm9pZCBTZXRCdWZmZXJJRChHTHVpbnQgaWQpOwordm9pZCBTZXRSZW5kZXJi
dWZmZXJJRChHTHVpbnQgaWQpOwordm9pZCBTZXRUZXh0dXJlSUQoR0x1aW50IGlkKTsKIAogdm9p
ZCBWYWxpZGF0ZVNlcmlhbGl6ZWRTdGF0ZShjb25zdCBjaGFyICpzZXJpYWxpemVkU3RhdGUsIGNv
bnN0IGNoYXIgKmZpbGVOYW1lLCB1aW50MzJfdCBsaW5lKTsKICNkZWZpbmUgVkFMSURBVEVfQ0hF
Q0tQT0lOVChTVEFURSkgVmFsaWRhdGVTZXJpYWxpemVkU3RhdGUoU1RBVEUsIF9fRklMRV9fLCBf
X0xJTkVfXykKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdM
RS9nZW5fb3ZlcmxheV93aWRnZXRzLnB5IGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xp
YkFOR0xFL2dlbl9vdmVybGF5X3dpZGdldHMucHkKaW5kZXggMDRkYTcxMWI5MWQ0ZDcyNWNkYWUw
ODg0N2YyZjkwYjU4YzBmNWQ1NS4uMmFkMGUwMjA2ZTI3ZmNlODJhMjZjOTlkN2FjYTliYjUyNDdh
NTczMyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL2dl
bl9vdmVybGF5X3dpZGdldHMucHkKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xp
YkFOR0xFL2dlbl9vdmVybGF5X3dpZGdldHMucHkKQEAgLTEsNCArMSw0IEBACi0jISAvdXNyL2Jp
bi9weXRob24KKyMhIC91c3IvYmluL3B5dGhvbjMKIAogIyBDb3B5cmlnaHQgMjAxOSBUaGUgQU5H
TEUgUHJvamVjdCBBdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogIyBVc2Ugb2YgdGhpcyBz
b3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJl
CkBAIC0xMCw2ICsxMCw3IEBACiAjICBOT1RFOiBkb24ndCBydW4gdGhpcyBzY3JpcHQgZGlyZWN0
bHkuIFJ1biBzY3JpcHRzL3J1bl9jb2RlX2dlbmVyYXRpb24ucHkuCiAKIGltcG9ydCBqc29uCitp
bXBvcnQgb3MKIGltcG9ydCBzeXMKIAogT1VUX1NPVVJDRV9GSUxFX05BTUUgPSAnT3ZlcmxheV9h
dXRvZ2VuLmNwcCcKQEAgLTE2MCw3ICsxNjEsNyBAQCBjbGFzcyBPdmVybGF5V2lkZ2V0OgogCiBk
ZWYgaXNfbmVnYXRpdmVfY29vcmQoY29vcmRzLCBheGlzLCB3aWRnZXRzX3NvX2Zhcik6CiAKLSAg
ICBpZiBpc2luc3RhbmNlKGNvb3Jkc1theGlzXSwgdW5pY29kZSk6CisgICAgaWYgaXNpbnN0YW5j
ZShjb29yZHNbYXhpc10sIHN0cik6CiAgICAgICAgIGNvb3JkX3NwbGl0ID0gY29vcmRzW2F4aXNd
LnNwbGl0KCcuJykKICAgICAgICAgIyBUaGUgY29vcmRpbmF0ZSBpcyBpbiB0aGUgZm9ybSBvdGhl
cl93aWRnZXQuZWRnZS5tb2RlCiAgICAgICAgICMgV2Ugc2ltcGx5IG5lZWQgdG8ga25vdyBpZiBv
dGhlcl93aWRnZXQncyBjb29yZGluYXRlIGlzIG5lZ2F0aXZlIG9yIG5vdC4KQEAgLTE5Niw3ICsx
OTcsNyBAQCBkZWYgZ2V0X29mZnNldF9oZWxwZXIod2lkZ2V0LCBheGlzLCBzbWFsbGVyX2Nvb3Jk
X3NpZGUpOgogICAgICMgVGhlIGNhc2UgZm9yIHRoZSBZIGF4aXMgaXMgc2ltaWxhciwgd2l0aCB0
aGUgZWRnZSB2YWx1ZXMgYmVpbmcgdG9wIG9yIGJvdHRvbS4KIAogICAgIGNvb3JkID0gd2lkZ2V0
LmNvb3Jkc1theGlzXQotICAgIGlmIG5vdCBpc2luc3RhbmNlKGNvb3JkLCB1bmljb2RlKToKKyAg
ICBpZiBub3QgaXNpbnN0YW5jZShjb29yZCwgc3RyKToKICAgICAgICAgaXNfbGVmdCA9IGNvb3Jk
ID49IDAKICAgICAgICAgcmV0dXJuIGNvb3JkLCBpc19sZWZ0CiAKQEAgLTM0NSw3ICszNDYsNyBA
QCBkZWYgbWFpbigpOgogICAgIHdpdGggb3BlbihPVVRfU09VUkNFX0ZJTEVfTkFNRSwgJ3cnKSBh
cyBvdXRmaWxlOgogICAgICAgICBvdXRmaWxlLndyaXRlKAogICAgICAgICAgICAgT1VUX1NPVVJD
RV9GSUxFX1RFTVBMQVRFLmZvcm1hdCgKLSAgICAgICAgICAgICAgICBzY3JpcHRfbmFtZT1fX2Zp
bGVfXywKKyAgICAgICAgICAgICAgICBzY3JpcHRfbmFtZT1vcy5wYXRoLmJhc2VuYW1lKF9fZmls
ZV9fKSwKICAgICAgICAgICAgICAgICBpbnB1dF9maWxlX25hbWU9SU5fSlNPTl9GSUxFX05BTUUs
CiAgICAgICAgICAgICAgICAgb3V0X2ZpbGVfbmFtZT1PVVRfU09VUkNFX0ZJTEVfTkFNRSwKICAg
ICAgICAgICAgICAgICBpbml0X3dpZGdldHM9J1xuJy5qb2luKGluaXRfd2lkZ2V0cykpKQpAQCAt
MzU3LDcgKzM1OCw3IEBAIGRlZiBtYWluKCk6CiAKICAgICAgICAgb3V0ZmlsZS53cml0ZSgKICAg
ICAgICAgICAgIE9VVF9IRUFERVJfRklMRV9URU1QTEFURS5mb3JtYXQoCi0gICAgICAgICAgICAg
ICAgc2NyaXB0X25hbWU9X19maWxlX18sCisgICAgICAgICAgICAgICAgc2NyaXB0X25hbWU9b3Mu
cGF0aC5iYXNlbmFtZShfX2ZpbGVfXyksCiAgICAgICAgICAgICAgICAgaW5wdXRfZmlsZV9uYW1l
PUlOX0pTT05fRklMRV9OQU1FLAogICAgICAgICAgICAgICAgIG91dF9maWxlX25hbWU9T1VUX1NP
VVJDRV9GSUxFX05BTUUsCiAgICAgICAgICAgICAgICAgd2lkZ2V0X2lkcz0nJy5qb2luKHdpZGdl
dF9pZHMpLApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xF
L2dsZXNfZXh0ZW5zaW9uc19hdXRvZ2VuLmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3Ny
Yy9saWJBTkdMRS9nbGVzX2V4dGVuc2lvbnNfYXV0b2dlbi5jcHAKaW5kZXggMDMzODZiNDQ4NDZm
M2M2MTJkZjc2MDc0ZjNmZTM1ODFmNmU2MWEyOS4uNmQ5MzEzMjJiOGI4ZjY3MWJjZjMwYWY3ZWM5
OWZmNDI3YTQyY2Y1NiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xp
YkFOR0xFL2dsZXNfZXh0ZW5zaW9uc19hdXRvZ2VuLmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvbGliQU5HTEUvZ2xlc19leHRlbnNpb25zX2F1dG9nZW4uY3BwCkBAIC0xMTgs
NiArMTE4LDcgQEAgY29uc3QgRXh0ZW5zaW9uSW5mb01hcCAmR2V0RXh0ZW5zaW9uSW5mb01hcCgp
CiAgICAgICAgIG1hcFsiR0xfQU5HTEVfcGFja19yZXZlcnNlX3Jvd19vcmRlciJdID0gZW5hYmxl
YWJsZUV4dGVuc2lvbigmRXh0ZW5zaW9uczo6cGFja1JldmVyc2VSb3dPcmRlckFOR0xFKTsKICAg
ICAgICAgbWFwWyJHTF9OVl9wYWNrX3N1YmltYWdlIl0gPSBlbmFibGVhYmxlRXh0ZW5zaW9uKCZF
eHRlbnNpb25zOjpwYWNrU3ViaW1hZ2VOVik7CiAgICAgICAgIG1hcFsiR0xfS0hSX3BhcmFsbGVs
X3NoYWRlcl9jb21waWxlIl0gPSBlbmFibGVhYmxlRXh0ZW5zaW9uKCZFeHRlbnNpb25zOjpwYXJh
bGxlbFNoYWRlckNvbXBpbGVLSFIpOworICAgICAgICBtYXBbIkdMX0FNRF9wZXJmb3JtYW5jZV9t
b25pdG9yIl0gPSBlc09ubHlFeHRlbnNpb24oJkV4dGVuc2lvbnM6OnBlcmZvcm1hbmNlTW9uaXRv
ckFNRCk7CiAgICAgICAgIG1hcFsiR0xfTlZfcGl4ZWxfYnVmZmVyX29iamVjdCJdID0gZW5hYmxl
YWJsZUV4dGVuc2lvbigmRXh0ZW5zaW9uczo6cGl4ZWxCdWZmZXJPYmplY3ROVik7CiAgICAgICAg
IG1hcFsiR0xfRVhUX3ByaW1pdGl2ZV9ib3VuZGluZ19ib3giXSA9IGVzT25seUV4dGVuc2lvbigm
RXh0ZW5zaW9uczo6cHJpbWl0aXZlQm91bmRpbmdCb3hFWFQpOwogICAgICAgICBtYXBbIkdMX09F
U19wcmltaXRpdmVfYm91bmRpbmdfYm94Il0gPSBlc09ubHlFeHRlbnNpb24oJkV4dGVuc2lvbnM6
OnByaW1pdGl2ZUJvdW5kaW5nQm94T0VTKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3NyYy9saWJBTkdMRS9nbGVzX2V4dGVuc2lvbnNfYXV0b2dlbi5oIGIvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL2dsZXNfZXh0ZW5zaW9uc19hdXRvZ2VuLmgKaW5k
ZXggNGI5OGY5NDBkZDg0ZDAyOWViMjQ5YWM3ODJmNDk2NDQ1OTA2YWFiMC4uMWUyMjNmNjY0MDQw
MjQwYjRiYzcwNjliYTg0MDNiMWQzZmMzNjgwMSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL2xpYkFOR0xFL2dsZXNfZXh0ZW5zaW9uc19hdXRvZ2VuLmgKKysrIGIvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL2dsZXNfZXh0ZW5zaW9uc19hdXRvZ2Vu
LmgKQEAgLTMxMSw2ICszMTEsOSBAQCBzdHJ1Y3QgRXh0ZW5zaW9ucwogICAgIC8vIEdMX0tIUl9w
YXJhbGxlbF9zaGFkZXJfY29tcGlsZQogICAgIGJvb2wgcGFyYWxsZWxTaGFkZXJDb21waWxlS0hS
ID0gZmFsc2U7CiAKKyAgICAvLyBHTF9BTURfcGVyZm9ybWFuY2VfbW9uaXRvcgorICAgIGJvb2wg
cGVyZm9ybWFuY2VNb25pdG9yQU1EID0gZmFsc2U7CisKICAgICAvLyBHTF9OVl9waXhlbF9idWZm
ZXJfb2JqZWN0CiAgICAgYm9vbCBwaXhlbEJ1ZmZlck9iamVjdE5WID0gZmFsc2U7CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9vdmVybGF5X3dpZGdl
dHMuanNvbiBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9vdmVybGF5X3dp
ZGdldHMuanNvbgppbmRleCBlYWJmMjc3ZGE2ZjBmMzVlNTYxNDljYmIxMTRjYWJhZmUzNjA1ODIw
Li4wNzA5MmU3NWIxNWZmYmQ4ODEzOTY0MDQ1M2YwNjMwYjU3ZDQ0ZmNlIDEwMDY0NAotLS0gYS9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvb3ZlcmxheV93aWRnZXRzLmpzb24K
KysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL292ZXJsYXlfd2lkZ2V0
cy5qc29uCkBAIC0yMTIsNiArMjEyLDE1IEBACiAgICAgICAgICAgICAgICAgImZvbnQiOiAic21h
bGwiLAogICAgICAgICAgICAgICAgICJsZW5ndGgiOiA5MAogICAgICAgICAgICAgfQorICAgICAg
ICB9LAorICAgICAgICB7CisgICAgICAgICAgICAibmFtZSI6ICJWdWxrYW5EZXNjcmlwdG9yQ2Fj
aGVLZXlTaXplIiwKKyAgICAgICAgICAgICJjb21tZW50IjogIlRvdGFsIHNpemUgb2YgYWxsIGtl
eXMgaW4gdGhlIGRlc2NyaXB0b3Igc2V0IGNhY2hlcyIsCisgICAgICAgICAgICAidHlwZSI6ICJD
b3VudCIsCisgICAgICAgICAgICAiY29sb3IiOiBbMjU1LCAyNTUsIDI1NSwgMjU1XSwKKyAgICAg
ICAgICAgICJjb29yZHMiOiBbMTAsIDEwMF0sCisgICAgICAgICAgICAiZm9udCI6ICJzbWFsbCIs
CisgICAgICAgICAgICAibGVuZ3RoIjogMzAKICAgICAgICAgfQogICAgIF0KIH0KZGlmZiAtLWdp
dCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9xdWVyeXV0aWxzLmNwcCBi
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9xdWVyeXV0aWxzLmNwcAppbmRl
eCA4ZGE2NjJiN2IwNTU2ZTdmOGNkY2FkOGU1MzA5MzllZDlhYjVjZTBkLi4wNGYwZjljYjc1ZmY4
YzEwNTcwMzkyYmUyYTQ4Zjk5MTJiNTU3ZTMxIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvbGliQU5HTEUvcXVlcnl1dGlscy5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL2xpYkFOR0xFL3F1ZXJ5dXRpbHMuY3BwCkBAIC00MjMzLDcgKzQyMzMsNyBA
QCB2b2lkIFF1ZXJ5Q29udGV4dEF0dHJpYihjb25zdCBnbDo6Q29udGV4dCAqY29udGV4dCwgRUdM
aW50IGF0dHJpYnV0ZSwgRUdMaW50ICp2YQogCiBlZ2w6OkVycm9yIFF1ZXJ5U3VyZmFjZUF0dHJp
Yihjb25zdCBEaXNwbGF5ICpkaXNwbGF5LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Y29uc3QgZ2w6OkNvbnRleHQgKmNvbnRleHQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBjb25zdCBTdXJmYWNlICpzdXJmYWNlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
U3VyZmFjZSAqc3VyZmFjZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVHTGludCBh
dHRyaWJ1dGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFR0xpbnQgKnZhbHVlKQog
ewpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3F1ZXJ5
dXRpbHMuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9xdWVyeXV0aWxz
LmgKaW5kZXggMWNhMDI0YWU5OTI0NDI5ODllMDE2M2RmNmY1NjdjYmYyMjEyY2Y2Ni4uNGQxYzQ5
OGRhODQzNzY5ZWVmYjI3ZTY0ZjE4ZmViZDIwMTdmYmFlYiAxMDA2NDQKLS0tIGEvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3F1ZXJ5dXRpbHMuaAorKysgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcXVlcnl1dGlscy5oCkBAIC0yNzYsNyArMjc2LDcg
QEAgdm9pZCBRdWVyeUNvbnRleHRBdHRyaWIoY29uc3QgZ2w6OkNvbnRleHQgKmNvbnRleHQsIEVH
TGludCBhdHRyaWJ1dGUsIEVHTGludCAqdmEKIAogZWdsOjpFcnJvciBRdWVyeVN1cmZhY2VBdHRy
aWIoY29uc3QgRGlzcGxheSAqZGlzcGxheSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGNvbnN0IGdsOjpDb250ZXh0ICpjb250ZXh0LAotICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgY29uc3QgU3VyZmFjZSAqc3VyZmFjZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IFN1cmZhY2UgKnN1cmZhY2UsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFR0xpbnQg
YXR0cmlidXRlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRUdMaW50ICp2YWx1ZSk7
CiBlZ2w6OkVycm9yIFNldFN1cmZhY2VBdHRyaWIoU3VyZmFjZSAqc3VyZmFjZSwgRUdMaW50IGF0
dHJpYnV0ZSwgRUdMaW50IHZhbHVlKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FO
R0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9Db250ZXh0SW1wbC5jcHAgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvQ29udGV4dEltcGwuY3BwCmluZGV4IDQx
NTQxZGMzMmI0MWE5OTkxYmM2YWIxYmQyZDk3NjljMmM3YWM2OWEuLjk1MmQ0ZWUzN2FhOGQyNjFm
MDM5YTM2MzhmOGJjNDU3M2RjOTA1ZjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FO
R0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9Db250ZXh0SW1wbC5jcHAKKysrIGIvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL0NvbnRleHRJbXBsLmNwcApAQCAt
OSw2ICs5LDcgQEAKIAogI2luY2x1ZGUgImxpYkFOR0xFL3JlbmRlcmVyL0NvbnRleHRJbXBsLmgi
CiAKKyNpbmNsdWRlICJjb21tb24vdGhpcmRfcGFydHkvYmFzZS9hbmdsZWJhc2Uvbm9fZGVzdHJ1
Y3Rvci5oIgogI2luY2x1ZGUgImxpYkFOR0xFL0NvbnRleHQuaCIKIAogbmFtZXNwYWNlIHJ4CkBA
IC03OSw0ICs4MCw5IEBAIGFuZ2xlOjpSZXN1bHQgQ29udGV4dEltcGw6OnJlbGVhc2VUZXh0dXJl
cyhjb25zdCBnbDo6Q29udGV4dCAqY29udGV4dCwKICAgICByZXR1cm4gYW5nbGU6OlJlc3VsdDo6
U3RvcDsKIH0KIAorY29uc3QgYW5nbGU6OlBlcmZNb25pdG9yQ291bnRlckdyb3VwcyAmQ29udGV4
dEltcGw6OmdldFBlcmZNb25pdG9yQ291bnRlcnMoKQoreworICAgIHN0YXRpYyBhbmdsZTo6YmFz
ZTo6Tm9EZXN0cnVjdG9yPGFuZ2xlOjpQZXJmTW9uaXRvckNvdW50ZXJHcm91cHM+IHNDb3VudGVy
czsKKyAgICByZXR1cm4gKnNDb3VudGVyczsKK30KIH0gIC8vIG5hbWVzcGFjZSByeApkaWZmIC0t
Z2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL0NvbnRl
eHRJbXBsLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIv
Q29udGV4dEltcGwuaAppbmRleCA2ODA2ODAyMWRkOWMzYWI5NzJlMjMyYTk3NThkZjEyZDYyNDdi
YjRiLi42MDhhYTlhZmFhNDkxNjA2NGMwYzZhMDRjZDhiZjA0OGIwYjY5MzdhIDEwMDY0NAotLS0g
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvQ29udGV4dElt
cGwuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIv
Q29udGV4dEltcGwuaApAQCAtMTk0LDYgKzE5NCw5IEBAIGNsYXNzIENvbnRleHRJbXBsIDogcHVi
bGljIEdMSW1wbEZhY3RvcnkKICAgICAvLyBFWFRfc2hhZGVyX2ZyYW1lYnVmZmVyX2ZldGNoX25v
bl9jb2hlcmVudAogICAgIHZpcnR1YWwgdm9pZCBmcmFtZWJ1ZmZlckZldGNoQmFycmllcigpIHt9
CiAKKyAgICAvLyBLSFJfYmxlbmRfZXF1YXRpb25fYWR2YW5jZWQKKyAgICB2aXJ0dWFsIHZvaWQg
YmxlbmRCYXJyaWVyKCkge30KKwogICAgIC8vIFN0YXRlIHN5bmMgd2l0aCBkaXJ0eSBiaXRzLgog
ICAgIHZpcnR1YWwgYW5nbGU6OlJlc3VsdCBzeW5jU3RhdGUoY29uc3QgZ2w6OkNvbnRleHQgKmNv
bnRleHQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBnbDo6U3Rh
dGU6OkRpcnR5Qml0cyAmZGlydHlCaXRzLApAQCAtMjU2LDYgKzI1OSw5IEBAIGNsYXNzIENvbnRl
eHRJbXBsIDogcHVibGljIEdMSW1wbEZhY3RvcnkKICAgICB2aXJ0dWFsIGFuZ2xlOjpSZXN1bHQg
cmVsZWFzZVRleHR1cmVzKGNvbnN0IGdsOjpDb250ZXh0ICpjb250ZXh0LAogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2w6OlRleHR1cmVCYXJyaWVyVmVjdG9yICp0
ZXh0dXJlQmFycmllcnMpOwogCisgICAgLy8gQU1EX3BlcmZvcm1hbmNlX21vbml0b3IKKyAgICB2
aXJ0dWFsIGNvbnN0IGFuZ2xlOjpQZXJmTW9uaXRvckNvdW50ZXJHcm91cHMgJmdldFBlcmZNb25p
dG9yQ291bnRlcnMoKTsKKwogICBwcm90ZWN0ZWQ6CiAgICAgY29uc3QgZ2w6OlN0YXRlICZtU3Rh
dGU7CiAgICAgZ2w6Ok1lbW9yeVByb2dyYW1DYWNoZSAqbU1lbW9yeVByb2dyYW1DYWNoZTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9E
aXNwbGF5SW1wbC5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVu
ZGVyZXIvRGlzcGxheUltcGwuY3BwCmluZGV4IGIzOGY5Y2E5Yjk3YTQ4NWU0ZDMyMzU4M2Q5MzI2
Mzc0OWZlM2M0ZTkuLmY2MDM2ZTdjNDk5ZjZmNDU1MDgwODY5NjRmNjgzY2QxNzJmYWJiZjUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9E
aXNwbGF5SW1wbC5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xF
L3JlbmRlcmVyL0Rpc3BsYXlJbXBsLmNwcApAQCAtNzQsNiArNzQsMTEgQEAgZWdsOjpFcnJvciBE
aXNwbGF5SW1wbDo6aGFuZGxlR1BVU3dpdGNoKCkKICAgICByZXR1cm4gZWdsOjpOb0Vycm9yKCk7
CiB9CiAKK2VnbDo6RXJyb3IgRGlzcGxheUltcGw6OmZvcmNlR1BVU3dpdGNoKEVHTGludCBncHVJ
REhpZ2gsIEVHTGludCBncHVJRExvdykKK3sKKyAgICByZXR1cm4gZWdsOjpOb0Vycm9yKCk7Cit9
CisKIGVnbDo6RXJyb3IgRGlzcGxheUltcGw6OnZhbGlkYXRlQ2xpZW50QnVmZmVyKGNvbnN0IGVn
bDo6Q29uZmlnICpjb25maWd1cmF0aW9uLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgRUdMZW51bSBidWZ0eXBlLAogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgRUdMQ2xpZW50QnVmZmVyIGNsaWVudEJ1ZmZlciwKQEAgLTEx
NSw0ICsxMjAsMzIgQEAgRGV2aWNlSW1wbCAqRGlzcGxheUltcGw6OmNyZWF0ZURldmljZSgpCiB7
CiAgICAgcmV0dXJuIG5ldyBNb2NrRGV2aWNlKCk7CiB9CisKK2Jvb2wgRGlzcGxheUltcGw6Omlz
WDExKCkgY29uc3QKK3sKKyAgICByZXR1cm4gZmFsc2U7Cit9CisKK2Jvb2wgRGlzcGxheUltcGw6
OnN1cHBvcnRzRG1hQnVmRm9ybWF0KEVHTGludCBmb3JtYXQpIGNvbnN0Cit7CisgICAgVU5SRUFD
SEFCTEUoKTsKKyAgICByZXR1cm4gZmFsc2U7Cit9CisKK2VnbDo6RXJyb3IgRGlzcGxheUltcGw6
OnF1ZXJ5RG1hQnVmRm9ybWF0cyhFR0xpbnQgbWF4X2Zvcm1hdHMsIEVHTGludCAqZm9ybWF0cywg
RUdMaW50ICpudW1fZm9ybWF0cykKK3sKKyAgICBVTlJFQUNIQUJMRSgpOworICAgIHJldHVybiBl
Z2w6Ok5vRXJyb3IoKTsKK30KKworZWdsOjpFcnJvciBEaXNwbGF5SW1wbDo6cXVlcnlEbWFCdWZN
b2RpZmllcnMoRUdMaW50IGZvcm1hdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIEVHTGludCBtYXhfbW9kaWZpZXJzLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgRUdMdWludDY0S0hSICptb2RpZmllcnMsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFR0xCb29sZWFuICpleHRlcm5h
bF9vbmx5LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRUdM
aW50ICpudW1fbW9kaWZpZXJzKQoreworICAgIFVOUkVBQ0hBQkxFKCk7CisgICAgcmV0dXJuIGVn
bDo6Tm9FcnJvcigpOworfQorCiB9ICAvLyBuYW1lc3BhY2UgcngKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9EaXNwbGF5SW1wbC5oIGIv
U291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL0Rpc3BsYXlJbXBs
LmgKaW5kZXggMDg0NWE2Njg1NGFkZThkODE0ODkxMWU5NmJhMjAyMzhiNjg4NWU3Yy4uODc5YWJh
NzI5MTk1YmVjNzNiOGI4N2M4NDc5MWYzZTZiMWUxZWIyZSAxMDA2NDQKLS0tIGEvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL0Rpc3BsYXlJbXBsLmgKKysrIGIv
U291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL0Rpc3BsYXlJbXBs
LmgKQEAgLTEyMCw2ICsxMjAsMTcgQEAgY2xhc3MgRGlzcGxheUltcGwgOiBwdWJsaWMgRUdMSW1w
bEZhY3RvcnksIHB1YmxpYyBhbmdsZTo6U3ViamVjdAogICAgIGNvbnN0IGVnbDo6RGlzcGxheVN0
YXRlICZnZXRTdGF0ZSgpIGNvbnN0IHsgcmV0dXJuIG1TdGF0ZTsgfQogCiAgICAgdmlydHVhbCBl
Z2w6OkVycm9yIGhhbmRsZUdQVVN3aXRjaCgpOworICAgIHZpcnR1YWwgZWdsOjpFcnJvciBmb3Jj
ZUdQVVN3aXRjaChFR0xpbnQgZ3B1SURIaWdoLCBFR0xpbnQgZ3B1SURMb3cpOworCisgICAgdmly
dHVhbCBib29sIGlzWDExKCkgY29uc3Q7CisKKyAgICB2aXJ0dWFsIGJvb2wgc3VwcG9ydHNEbWFC
dWZGb3JtYXQoRUdMaW50IGZvcm1hdCkgY29uc3Q7CisgICAgdmlydHVhbCBlZ2w6OkVycm9yIHF1
ZXJ5RG1hQnVmRm9ybWF0cyhFR0xpbnQgbWF4X2Zvcm1hdHMsIEVHTGludCAqZm9ybWF0cywgRUdM
aW50ICpudW1fZm9ybWF0cyk7CisgICAgdmlydHVhbCBlZ2w6OkVycm9yIHF1ZXJ5RG1hQnVmTW9k
aWZpZXJzKEVHTGludCBmb3JtYXQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIEVHTGludCBtYXhfbW9kaWZpZXJzLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBFR0x1aW50NjRLSFIgKm1vZGlmaWVycywKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRUdMQm9vbGVhbiAqZXh0ZXJuYWxfb25s
eSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRUdMaW50ICpu
dW1fbW9kaWZpZXJzKTsKIAogICBwcm90ZWN0ZWQ6CiAgICAgY29uc3QgZWdsOjpEaXNwbGF5U3Rh
dGUgJm1TdGF0ZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJB
TkdMRS9yZW5kZXJlci9PdmVybGF5SW1wbC5oIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3Jj
L2xpYkFOR0xFL3JlbmRlcmVyL092ZXJsYXlJbXBsLmgKaW5kZXggNjc4MzNjY2VhOGQyOTE1ZjBj
N2M5OGY0NTJhNTI5MWFmZGI1YTU5NS4uZmMxYjFiMGQ1ODMxZWNmODU0N2YyZjQ2OWVlOWVhNWRh
MjI4ZDgzMSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xF
L3JlbmRlcmVyL092ZXJsYXlJbXBsLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3Jj
L2xpYkFOR0xFL3JlbmRlcmVyL092ZXJsYXlJbXBsLmgKQEAgLTMzLDE3ICszMywxMCBAQCBjbGFz
cyBPdmVybGF5SW1wbCA6IGFuZ2xlOjpOb25Db3B5YWJsZQogCiAgICAgdmlydHVhbCB2b2lkIG9u
RGVzdHJveShjb25zdCBnbDo6Q29udGV4dCAqY29udGV4dCkge30KIAotICAgIHZpcnR1YWwgYW5n
bGU6OlJlc3VsdCBpbml0KGNvbnN0IGdsOjpDb250ZXh0ICpjb250ZXh0LCBib29sICpzdWNjZXNz
T3V0KTsKLQogICBwcm90ZWN0ZWQ6CiAgICAgY29uc3QgZ2w6Ok92ZXJsYXlTdGF0ZSAmbVN0YXRl
OwogfTsKIAotaW5saW5lIGFuZ2xlOjpSZXN1bHQgT3ZlcmxheUltcGw6OmluaXQoY29uc3QgZ2w6
OkNvbnRleHQgKmNvbnRleHQsIGJvb2wgKnN1Y2Nlc3NPdXQpCi17Ci0gICAgcmV0dXJuIGFuZ2xl
OjpSZXN1bHQ6OkNvbnRpbnVlOwotfQotCiB9ICAvLyBuYW1lc3BhY2UgcngKIAogI2VuZGlmICAv
LyBMSUJBTkdMRV9SRU5ERVJFUl9PVkVSTEFZSU1QTF9IXwpkaWZmIC0tZ2l0IGEvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL1N1cmZhY2VJbXBsLmNwcCBiL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9TdXJmYWNlSW1wbC5j
cHAKaW5kZXggNTczNDc1YTQ3NTlmNTUyMGVkYWVjMDYwOWY4MWRhZDBhNzAzOWQ0YS4uYWU2ZGZm
YWU5OTc3OGU1Yzc0MDc2NWU1MzY0YzY0YjA3ZjMwNzQ0NCAxMDA2NDQKLS0tIGEvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL1N1cmZhY2VJbXBsLmNwcAorKysg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvU3VyZmFjZUlt
cGwuY3BwCkBAIC0xMjEsOCArMTIxLDggQEAgZWdsOjpFcnJvciBTdXJmYWNlSW1wbDo6Z2V0VXNl
ckhlaWdodChjb25zdCBlZ2w6OkRpc3BsYXkgKmRpc3BsYXksIEVHTGludCAqdmFsdWUKIAogZWds
OjpFcnJvciBTdXJmYWNlSW1wbDo6Z2V0QnVmZmVyQWdlKGNvbnN0IGdsOjpDb250ZXh0ICpjb250
ZXh0LCBFR0xpbnQgKmFnZSkKIHsKLSAgICBVTlJFQUNIQUJMRSgpOwotICAgIHJldHVybiBlZ2w6
OkVnbEJhZE1hdGNoKCk7CisgICAgKmFnZSA9IDA7CisgICAgcmV0dXJuIGVnbDo6Tm9FcnJvcigp
OwogfQogCiBlZ2w6OkVycm9yIFN1cmZhY2VJbXBsOjpsb2NrU3VyZmFjZShjb25zdCBlZ2w6OkRp
c3BsYXkgKmRpc3BsYXksCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
bGliQU5HTEUvcmVuZGVyZXIvY29weXZlcnRleC5pbmMuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FO
R0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9jb3B5dmVydGV4LmluYy5oCmluZGV4IDM0ZjZjN2Jj
YzdmM2JmZGMzODVkMTYyMDc3MGY1ZWNjOTA4NmRlODcuLjNmMTg0NGU5MWM2ZTNiYTkwMmM4Yzc5
NWZiZmFmNTRiOTEyYWEyYTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3Ny
Yy9saWJBTkdMRS9yZW5kZXJlci9jb3B5dmVydGV4LmluYy5oCisrKyBiL1NvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9jb3B5dmVydGV4LmluYy5oCkBAIC05LDYg
KzksNDkgQEAKIG5hbWVzcGFjZSByeAogewogCisvLyBSZXR1cm5zIGFuIGFsaWduZWQgYnVmZmVy
IHRvIHJlYWQgdGhlIGlucHV0IGZyb20KK3RlbXBsYXRlIDx0eXBlbmFtZSBULCBzaXplX3QgaW5w
dXRDb21wb25lbnRDb3VudD4KK2lubGluZSBjb25zdCBUICpHZXRBbGlnbmVkT2Zmc2V0SW5wdXQo
Y29uc3QgVCAqb2Zmc2V0SW5wdXQsIFQgKmFsaWduZWRFbGVtZW50KQoreworICAgIGlmIChyZWlu
dGVycHJldF9jYXN0PHVpbnRwdHJfdD4ob2Zmc2V0SW5wdXQpICUgc2l6ZW9mKFQpICE9IDApCisg
ICAgeworICAgICAgICAvLyBBcHBsaWNhdGlvbnMgbWF5IHBhc3MgaW4gYXJiaXRyYXJpbHkgYWxp
Z25lZCBidWZmZXJzIGFzIGlucHV0LgorICAgICAgICAvLyBDZXJ0YWluIGFyY2hpdGVjdHVyZXMg
aGF2ZSByZXN0cmljdGlvbnMgcmVnYXJkaW5nIHVuYWxpZ25lZCByZWFkcy4gU3BlY2lmaWNhbGx5
LCB3ZSBjcmFzaAorICAgICAgICAvLyBvbiBhcm1lYWJpLXY3YSBkZXZpY2VzIHdpdGggYSBTSUdC
VVMgZXJyb3Igd2hlbiBwZXJmb3JtaW5nIHN1Y2ggb3BlcmF0aW9ucy4gYXJtNjQgYW5kCisgICAg
ICAgIC8vIHg4Ni02NCBkZXZpY2VzIGRvIG5vdCBhcHBlYXIgdG8gaGF2ZSBzdWNoIGlzc3Vlcy4K
KyAgICAgICAgLy8KKyAgICAgICAgLy8gVGhlIHdvcmthcm91bmQgaXMgdG8gZGV0ZWN0IGlmIHRo
ZSBpbnB1dCBidWZmZXIgaXMgdW5hbGlnbmVkIGFuZCBpZiBzbywgcGVyZm9ybSBhCisgICAgICAg
IC8vIGJ5dGUtd2lzZSBjb3B5IG9mIHRoZSB1bmFsaWduZWQgcG9ydGlvbiBhbmQgYSBtZW1jcHkg
b2YgdGhlIHJlc3Qgb2YgdGhlIGJ1ZmZlci4KKyAgICAgICAgdWludDhfdCAqYWxpZ25lZEJ1ZmZl
ciAgICAgICAgICAgICAgID0gcmVpbnRlcnByZXRfY2FzdDx1aW50OF90ICo+KCZhbGlnbmVkRWxl
bWVudFswXSk7CisgICAgICAgIHVpbnRwdHJfdCB1bmFsaWduZWRJbnB1dFN0YXJ0QWRkcmVzcyA9
IHJlaW50ZXJwcmV0X2Nhc3Q8dWludHB0cl90PihvZmZzZXRJbnB1dCk7CisgICAgICAgIGNvbnN0
ZXhwciBzaXplX3Qga0FsaWdubWVudE1pbnVzT25lICA9IHNpemVvZihUKSAtIDE7CisgICAgICAg
IHVpbnRwdHJfdCBhbGlnbmVkSW5wdXRTdGFydEFkZHJlc3MgPQorICAgICAgICAgICAgKHJlaW50
ZXJwcmV0X2Nhc3Q8dWludHB0cl90PihvZmZzZXRJbnB1dCkgKyBrQWxpZ25tZW50TWludXNPbmUp
ICYgfihrQWxpZ25tZW50TWludXNPbmUpOworICAgICAgICBBU1NFUlQoYWxpZ25lZElucHV0U3Rh
cnRBZGRyZXNzID49IHVuYWxpZ25lZElucHV0U3RhcnRBZGRyZXNzKTsKKworICAgICAgICBjb25z
dCBzaXplX3QgdG90YWxCeXRlc1RvQ29weSAgICAgPSBzaXplb2YoVCkgKiBpbnB1dENvbXBvbmVu
dENvdW50OworICAgICAgICBjb25zdCBzaXplX3QgdW5hbGlnbmVkQnl0ZXNUb0NvcHkgPSBhbGln
bmVkSW5wdXRTdGFydEFkZHJlc3MgLSB1bmFsaWduZWRJbnB1dFN0YXJ0QWRkcmVzczsKKyAgICAg
ICAgQVNTRVJUKHRvdGFsQnl0ZXNUb0NvcHkgPj0gdW5hbGlnbmVkQnl0ZXNUb0NvcHkpOworCisg
ICAgICAgIC8vIGJ5dGUtd2lzZSBjb3B5IG9mIHVuYWxpZ25lZCBwb3J0aW9uCisgICAgICAgIGZv
ciAoc2l6ZV90IGkgPSAwOyBpIDwgdW5hbGlnbmVkQnl0ZXNUb0NvcHk7IGkrKykKKyAgICAgICAg
eworICAgICAgICAgICAgYWxpZ25lZEJ1ZmZlcltpXSA9IHJlaW50ZXJwcmV0X2Nhc3Q8Y29uc3Qg
dWludDhfdCAqPigmb2Zmc2V0SW5wdXRbMF0pW2ldOworICAgICAgICB9CisKKyAgICAgICAgLy8g
bWVtY3B5IHJlbWFpbmluZyBidWZmZXIKKyAgICAgICAgbWVtY3B5KCZhbGlnbmVkQnVmZmVyW3Vu
YWxpZ25lZEJ5dGVzVG9Db3B5XSwKKyAgICAgICAgICAgICAgICZyZWludGVycHJldF9jYXN0PGNv
bnN0IHVpbnQ4X3QgKj4oJm9mZnNldElucHV0WzBdKVt1bmFsaWduZWRCeXRlc1RvQ29weV0sCisg
ICAgICAgICAgICAgICB0b3RhbEJ5dGVzVG9Db3B5IC0gdW5hbGlnbmVkQnl0ZXNUb0NvcHkpOwor
CisgICAgICAgIHJldHVybiBhbGlnbmVkRWxlbWVudDsKKyAgICB9CisgICAgZWxzZQorICAgIHsK
KyAgICAgICAgcmV0dXJuIG9mZnNldElucHV0OworICAgIH0KK30KKwogdGVtcGxhdGUgPHR5cGVu
YW1lIFQsCiAgICAgICAgICAgc2l6ZV90IGlucHV0Q29tcG9uZW50Q291bnQsCiAgICAgICAgICAg
c2l6ZV90IG91dHB1dENvbXBvbmVudENvdW50LApAQCAtMjgsNyArNzEsMTEgQEAgaW5saW5lIHZv
aWQgQ29weU5hdGl2ZVZlcnRleERhdGEoY29uc3QgdWludDhfdCAqaW5wdXQsIHNpemVfdCBzdHJp
ZGUsIHNpemVfdCBjb3UKICAgICAgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBjb3VudDsgaSsr
KQogICAgICAgICB7CiAgICAgICAgICAgICBjb25zdCBUICpvZmZzZXRJbnB1dCA9IHJlaW50ZXJw
cmV0X2Nhc3Q8Y29uc3QgVCAqPihpbnB1dCArIChpICogc3RyaWRlKSk7Ci0gICAgICAgICAgICBU
ICpvZmZzZXRPdXRwdXQgICAgICA9IHJlaW50ZXJwcmV0X2Nhc3Q8VCAqPihvdXRwdXQpICsgaSAq
IG91dHB1dENvbXBvbmVudENvdW50OworICAgICAgICAgICAgVCBvZmZzZXRJbnB1dEFsaWduZWRb
aW5wdXRDb21wb25lbnRDb3VudF07CisgICAgICAgICAgICBvZmZzZXRJbnB1dCA9CisgICAgICAg
ICAgICAgICAgR2V0QWxpZ25lZE9mZnNldElucHV0PFQsIGlucHV0Q29tcG9uZW50Q291bnQ+KG9m
ZnNldElucHV0LCAmb2Zmc2V0SW5wdXRBbGlnbmVkWzBdKTsKKworICAgICAgICAgICAgVCAqb2Zm
c2V0T3V0cHV0ID0gcmVpbnRlcnByZXRfY2FzdDxUICo+KG91dHB1dCkgKyBpICogb3V0cHV0Q29t
cG9uZW50Q291bnQ7CiAKICAgICAgICAgICAgIG1lbWNweShvZmZzZXRPdXRwdXQsIG9mZnNldElu
cHV0LCBhdHRyaWJTaXplKTsKICAgICAgICAgfQpAQCAtNDEsNyArODgsMTIgQEAgaW5saW5lIHZv
aWQgQ29weU5hdGl2ZVZlcnRleERhdGEoY29uc3QgdWludDhfdCAqaW5wdXQsIHNpemVfdCBzdHJp
ZGUsIHNpemVfdCBjb3UKICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IGNvdW50OyBpKyspCiAg
ICAgewogICAgICAgICBjb25zdCBUICpvZmZzZXRJbnB1dCA9IHJlaW50ZXJwcmV0X2Nhc3Q8Y29u
c3QgVCAqPihpbnB1dCArIChpICogc3RyaWRlKSk7Ci0gICAgICAgIFQgKm9mZnNldE91dHB1dCAg
ICAgID0gcmVpbnRlcnByZXRfY2FzdDxUICo+KG91dHB1dCkgKyBpICogb3V0cHV0Q29tcG9uZW50
Q291bnQ7CisgICAgICAgIFQgb2Zmc2V0SW5wdXRBbGlnbmVkW2lucHV0Q29tcG9uZW50Q291bnRd
OworICAgICAgICBBU1NFUlQoc2l6ZW9mKG9mZnNldElucHV0QWxpZ25lZCkgPT0gYXR0cmliU2l6
ZSk7CisgICAgICAgIG9mZnNldElucHV0ID0KKyAgICAgICAgICAgIEdldEFsaWduZWRPZmZzZXRJ
bnB1dDxULCBpbnB1dENvbXBvbmVudENvdW50PihvZmZzZXRJbnB1dCwgJm9mZnNldElucHV0QWxp
Z25lZFswXSk7CisKKyAgICAgICAgVCAqb2Zmc2V0T3V0cHV0ID0gcmVpbnRlcnByZXRfY2FzdDxU
ICo+KG91dHB1dCkgKyBpICogb3V0cHV0Q29tcG9uZW50Q291bnQ7CiAKICAgICAgICAgbWVtY3B5
KG9mZnNldE91dHB1dCwgb2Zmc2V0SW5wdXQsIGF0dHJpYlNpemUpOwogCkBAIC0xOTYsNiArMjQ4
LDEwIEBAIGlubGluZSB2b2lkIENvcHlUb0Zsb2F0VmVydGV4RGF0YShjb25zdCB1aW50OF90ICpp
bnB1dCwKICAgICAgICAgb3V0cHV0VHlwZSAqb2Zmc2V0T3V0cHV0ID0KICAgICAgICAgICAgIHJl
aW50ZXJwcmV0X2Nhc3Q8b3V0cHV0VHlwZSAqPihvdXRwdXQpICsgaSAqIG91dHB1dENvbXBvbmVu
dENvdW50OwogCisgICAgICAgIFQgb2Zmc2V0SW5wdXRBbGlnbmVkW2lucHV0Q29tcG9uZW50Q291
bnRdOworICAgICAgICBvZmZzZXRJbnB1dCA9CisgICAgICAgICAgICBHZXRBbGlnbmVkT2Zmc2V0
SW5wdXQ8VCwgaW5wdXRDb21wb25lbnRDb3VudD4ob2Zmc2V0SW5wdXQsICZvZmZzZXRJbnB1dEFs
aWduZWRbMF0pOworCiAgICAgICAgIGZvciAoc2l6ZV90IGogPSAwOyBqIDwgaW5wdXRDb21wb25l
bnRDb3VudDsgaisrKQogICAgICAgICB7CiAgICAgICAgICAgICBmbG9hdCByZXN1bHQgPSAwOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVy
L2QzZC9UZXh0dXJlRDNELmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdM
RS9yZW5kZXJlci9kM2QvVGV4dHVyZUQzRC5jcHAKaW5kZXggZWUyYTkyNGExOGE0YTFlMDcyZGU4
ZjRiMDkzYTVkNzA3ZWNlY2E5MC4uNGU3NTVlMjE3MjQ5OGVjNzZhYmE2MzIzOTViYmIxOWMxOWE3
M2Q2NyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3Jl
bmRlcmVyL2QzZC9UZXh0dXJlRDNELmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9z
cmMvbGliQU5HTEUvcmVuZGVyZXIvZDNkL1RleHR1cmVEM0QuY3BwCkBAIC0xMTQ2LDYgKzExNDYs
NyBAQCBhbmdsZTo6UmVzdWx0IFRleHR1cmVEM0RfMkQ6OmNvcHlTdWJJbWFnZShjb25zdCBnbDo6
Q29udGV4dCAqY29udGV4dCwKICAgICAgICAgQU5HTEVfVFJZKG1JbWFnZUFycmF5W2luZGV4Lmdl
dExldmVsSW5kZXgoKV0tPmNvcHlGcm9tRnJhbWVidWZmZXIoY29udGV4dCwgY2xpcHBlZE9mZnNl
dCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgY2xpcHBlZEFyZWEsIHNvdXJjZSkpOwogICAgICAgICBtRGly
dHlJbWFnZXMgPSB0cnVlOworICAgICAgICBvblN0YXRlQ2hhbmdlKGFuZ2xlOjpTdWJqZWN0TWVz
c2FnZTo6RGlydHlCaXRzRmxhZ2dlZCk7CiAgICAgfQogICAgIGVsc2UKICAgICB7CkBAIC0xODU0
LDYgKzE4NTUsNyBAQCBhbmdsZTo6UmVzdWx0IFRleHR1cmVEM0RfQ3ViZTo6Y29weUltYWdlKGNv
bnN0IGdsOjpDb250ZXh0ICpjb250ZXh0LAogICAgICAgICBBTkdMRV9UUlkobUltYWdlQXJyYXlb
ZmFjZUluZGV4XVtpbmRleC5nZXRMZXZlbEluZGV4KCldLT5jb3B5RnJvbUZyYW1lYnVmZmVyKAog
ICAgICAgICAgICAgY29udGV4dCwgZGVzdE9mZnNldCwgY2xpcHBlZEFyZWEsIHNvdXJjZSkpOwog
ICAgICAgICBtRGlydHlJbWFnZXMgPSB0cnVlOworICAgICAgICBvblN0YXRlQ2hhbmdlKGFuZ2xl
OjpTdWJqZWN0TWVzc2FnZTo6RGlydHlCaXRzRmxhZ2dlZCk7CiAgICAgfQogICAgIGVsc2UKICAg
ICB7CkBAIC0xODk4LDYgKzE5MDAsNyBAQCBhbmdsZTo6UmVzdWx0IFRleHR1cmVEM0RfQ3ViZTo6
Y29weVN1YkltYWdlKGNvbnN0IGdsOjpDb250ZXh0ICpjb250ZXh0LAogICAgICAgICBBTkdMRV9U
UlkobUltYWdlQXJyYXlbZmFjZUluZGV4XVtpbmRleC5nZXRMZXZlbEluZGV4KCldLT5jb3B5RnJv
bUZyYW1lYnVmZmVyKAogICAgICAgICAgICAgY29udGV4dCwgY2xpcHBlZE9mZnNldCwgY2xpcHBl
ZEFyZWEsIHNvdXJjZSkpOwogICAgICAgICBtRGlydHlJbWFnZXMgPSB0cnVlOworICAgICAgICBv
blN0YXRlQ2hhbmdlKGFuZ2xlOjpTdWJqZWN0TWVzc2FnZTo6RGlydHlCaXRzRmxhZ2dlZCk7CiAg
ICAgfQogICAgIGVsc2UKICAgICB7CkBAIC0yNjI3LDYgKzI2MzAsNyBAQCBhbmdsZTo6UmVzdWx0
IFRleHR1cmVEM0RfM0Q6OmNvcHlTdWJJbWFnZShjb25zdCBnbDo6Q29udGV4dCAqY29udGV4dCwK
ICAgICBBTkdMRV9UUlkobUltYWdlQXJyYXlbaW5kZXguZ2V0TGV2ZWxJbmRleCgpXS0+Y29weUZy
b21GcmFtZWJ1ZmZlcihjb250ZXh0LCBjbGlwcGVkRGVzdE9mZnNldCwKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBj
bGlwcGVkU291cmNlQXJlYSwgc291cmNlKSk7CiAgICAgbURpcnR5SW1hZ2VzID0gdHJ1ZTsKKyAg
ICBvblN0YXRlQ2hhbmdlKGFuZ2xlOjpTdWJqZWN0TWVzc2FnZTo6RGlydHlCaXRzRmxhZ2dlZCk7
CiAKICAgICBpZiAoc3luY1RleFN0b3JhZ2UpCiAgICAgewpAQCAtMzMxNSw2ICszMzE5LDcgQEAg
YW5nbGU6OlJlc3VsdCBUZXh0dXJlRDNEXzJEQXJyYXk6OmNvcHlTdWJJbWFnZShjb25zdCBnbDo6
Q29udGV4dCAqY29udGV4dCwKICAgICAgICAgQU5HTEVfVFJZKG1JbWFnZUFycmF5W2luZGV4Lmdl
dExldmVsSW5kZXgoKV1bY2xpcHBlZERlc3RPZmZzZXQuel0tPmNvcHlGcm9tRnJhbWVidWZmZXIo
CiAgICAgICAgICAgICBjb250ZXh0LCBkZXN0TGF5ZXJPZmZzZXQsIGNsaXBwZWRTb3VyY2VBcmVh
LCBzb3VyY2UpKTsKICAgICAgICAgbURpcnR5SW1hZ2VzID0gdHJ1ZTsKKyAgICAgICAgb25TdGF0
ZUNoYW5nZShhbmdsZTo6U3ViamVjdE1lc3NhZ2U6OkRpcnR5Qml0c0ZsYWdnZWQpOwogICAgIH0K
ICAgICBlbHNlCiAgICAgewpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3Jj
L2xpYkFOR0xFL3JlbmRlcmVyL2QzZC9kM2QxMS9yZW5kZXJlcjExX3V0aWxzLmNwcCBiL1NvdXJj
ZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9kM2QvZDNkMTEvcmVuZGVy
ZXIxMV91dGlscy5jcHAKaW5kZXggZmQ4NDhmMDgzMDcxZWIzMzgwZGIzZWZjMDJjNGJiZWQ1ODY0
ZjY0ZC4uNGYyYjc1NjBmM2QxZTc3OTQwZTVlNzdmZjc1YWFkNTFjNWYzM2EwNCAxMDA2NDQKLS0t
IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2QzZC9kM2Qx
MS9yZW5kZXJlcjExX3V0aWxzLmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
bGliQU5HTEUvcmVuZGVyZXIvZDNkL2QzZDExL3JlbmRlcmVyMTFfdXRpbHMuY3BwCkBAIC0xNzAz
LDYgKzE3MDMsOSBAQCB2b2lkIEdlbmVyYXRlQ2FwcyhJRDNEMTFEZXZpY2UgKmRldmljZSwKICAg
ICAvLyBEM0QxMSBkb2VzIG5vdCBzdXBwb3J0IHZlcnRleCBhdHRyaWJ1dGUgYWxpYXNpbmcKICAg
ICBsaW1pdGF0aW9ucy0+bm9WZXJ0ZXhBdHRyaWJ1dGVBbGlhc2luZyA9IHRydWU7CiAKKyAgICAv
LyBEM0QxMSBkb2VzIG5vdCBzdXBwb3J0IGNvbXByZXNzZWQgdGV4dHVyZXMgd2hlcmUgdGhlIGJh
c2UgbWlwIGxldmVsIGlzIG5vdCBhIG11bHRpcGxlIG9mIDQKKyAgICBsaW1pdGF0aW9ucy0+Y29t
cHJlc3NlZEJhc2VNaXBMZXZlbE11bHRpcGxlT2ZGb3VyID0gdHJ1ZTsKKwogI2lmZGVmIEFOR0xF
X0VOQUJMRV9XSU5ET1dTX1VXUAogICAgIC8vIFNldHRpbmcgYSBub24temVybyBkaXZpc29yIG9u
IGF0dHJpYnV0ZSB6ZXJvIGRvZXNuJ3Qgd29yayBvbiBjZXJ0YWluIFdpbmRvd3MgUGhvbmUgOC1l
cmEKICAgICAvLyBkZXZpY2VzLiBXZSBzaG91bGQgcHJldmVudCBkZXZlbG9wZXJzIGZyb20gZG9p
bmcgdGhpcyBvbiBBTEwgV2luZG93cyBTdG9yZSBkZXZpY2VzLiBUaGlzIHdpbGwKZGlmZiAtLWdp
dCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9kM2QvZDNk
OS9yZW5kZXJlcjlfdXRpbHMuY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFO
R0xFL3JlbmRlcmVyL2QzZC9kM2Q5L3JlbmRlcmVyOV91dGlscy5jcHAKaW5kZXggZjM5OWFkM2Y3
YzhiNzY4ZmJhNzczNDdmNmM4MTUwNTIyZTQ4M2EwNC4uNDhmYTQ4NGRmNzI4ZDBlYzg1MzdkNjg4
MDViMTE1NWQ1MDRjNGU2NyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3Jj
L2xpYkFOR0xFL3JlbmRlcmVyL2QzZC9kM2Q5L3JlbmRlcmVyOV91dGlscy5jcHAKKysrIGIvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2QzZC9kM2Q5L3JlbmRl
cmVyOV91dGlscy5jcHAKQEAgLTc4Niw2ICs3ODYsOSBAQCB2b2lkIEdlbmVyYXRlQ2FwcyhJRGly
ZWN0M0Q5ICpkM2Q5LAogCiAgICAgLy8gRDNEOSBkb2VzIG5vdCBzdXBwb3J0IHZlcnRleCBhdHRy
aWJ1dGUgYWxpYXNpbmcKICAgICBsaW1pdGF0aW9ucy0+bm9WZXJ0ZXhBdHRyaWJ1dGVBbGlhc2lu
ZyA9IHRydWU7CisKKyAgICAvLyBEM0Q5IGRvZXMgbm90IHN1cHBvcnQgY29tcHJlc3NlZCB0ZXh0
dXJlcyB3aGVyZSB0aGUgYmFzZSBtaXAgbGV2ZWwgaXMgbm90IGEgbXVsdGlwbGUgb2YgNAorICAg
IGxpbWl0YXRpb25zLT5jb21wcmVzc2VkQmFzZU1pcExldmVsTXVsdGlwbGVPZkZvdXIgPSB0cnVl
OwogfQogCiB9ICAvLyBuYW1lc3BhY2UgZDNkOV9nbApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9EaXNwbGF5Q0dMLmggYi9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0Rpc3Bs
YXlDR0wuaAppbmRleCBhN2JjYjQ2ZjkyMGE1Y2JhNWQ4NjVlZTVhZjM1NDhiZTFmNGYzYjAxLi45
YzlmYjllYzA1YWZkZWM2OWMyMTYwOGYyYzkwOTZlZGUwY2UxNzM5IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0Rpc3BsYXlD
R0wuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIv
Z2wvY2dsL0Rpc3BsYXlDR0wuaApAQCAtMTA1LDYgKzEwNSw3IEBAIGNsYXNzIERpc3BsYXlDR0wg
OiBwdWJsaWMgRGlzcGxheUdMCiAgICAgZWdsOjpFcnJvciByZWZlcmVuY2VEaXNjcmV0ZUdQVSgp
OwogICAgIGVnbDo6RXJyb3IgdW5yZWZlcmVuY2VEaXNjcmV0ZUdQVSgpOwogICAgIGVnbDo6RXJy
b3IgaGFuZGxlR1BVU3dpdGNoKCkgb3ZlcnJpZGU7CisgICAgZWdsOjpFcnJvciBmb3JjZUdQVVN3
aXRjaChFR0xpbnQgZ3B1SURIaWdoLCBFR0xpbnQgZ3B1SURMb3cpIG92ZXJyaWRlOwogCiAgIHBy
aXZhdGU6CiAgICAgZWdsOjpFcnJvciBtYWtlQ3VycmVudFN1cmZhY2VsZXNzKGdsOjpDb250ZXh0
ICpjb250ZXh0KSBvdmVycmlkZTsKQEAgLTExMyw2ICsxMTQsNyBAQCBjbGFzcyBEaXNwbGF5Q0dM
IDogcHVibGljIERpc3BsYXlHTAogICAgIHZvaWQgZ2VuZXJhdGVDYXBzKGVnbDo6Q2FwcyAqb3V0
Q2FwcykgY29uc3Qgb3ZlcnJpZGU7CiAKICAgICB2b2lkIGNoZWNrRGlzY3JldGVHUFVTdGF0dXMo
KTsKKyAgICB2b2lkIHNldENvbnRleHRUb0dQVSh1aW50NjRfdCBncHVJRCwgR0xpbnQgdmlydHVh
bFNjcmVlbik7CiAKICAgICBzdGQ6OnNoYXJlZF9wdHI8UmVuZGVyZXJHTD4gbVJlbmRlcmVyOwog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVy
ZXIvZ2wvY2dsL0Rpc3BsYXlDR0wubW0gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGli
QU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0Rpc3BsYXlDR0wubW0KaW5kZXggODk0ZTdlNmMzM2Y0YWUx
YTE1NTZmODBiN2E3YzE3NmNlOGUxNTJjMi4uNzU0MmQ2N2Q0ZGM0NjRhNmU3NDJhMWUzMzU4NzY4
ZTI0Y2YxZjRmNCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFO
R0xFL3JlbmRlcmVyL2dsL2NnbC9EaXNwbGF5Q0dMLm1tCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvRGlzcGxheUNHTC5tbQpAQCAtNTAs
OSArNTAsOCBAQCB1c2luZyBJT1JlZ2lzdHJ5R1BVSUQgPSB1aW50NjRfdDsKIC8vIENvZGUgZnJv
bSBXZWJLaXQgdG8gc2V0IGFuIE9wZW5HTCBjb250ZXh0IHRvIHVzZSBhIHBhcnRpY3VsYXIgR1BV
IGJ5IElELgogLy8gaHR0cHM6Ly90cmFjLndlYmtpdC5vcmcvYnJvd3Nlci93ZWJraXQvdHJ1bmsv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvR3JhcGhpY3NDb250ZXh0R0xP
cGVuR0xDb2NvYS5tbQogLy8gVXNlZCB3aXRoIHBlcm1pc3Npb24uCi1zdGF0aWMgdm9pZCBTZXRH
UFVCeVJlZ2lzdHJ5SUQoQ0dMQ29udGV4dE9iaiBjb250ZXh0T2JqLAotICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIENHTFBpeGVsRm9ybWF0T2JqIHBpeGVsRm9ybWF0T2JqLAotICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIElPUmVnaXN0cnlHUFVJRCBwcmVmZXJyZWRHUFVJRCkK
K3N0YXRpYyBzdGQ6Om9wdGlvbmFsPEdMaW50PiBHZXRWaXJ0dWFsU2NyZWVuQnlSZWdpc3RyeUlE
KENHTFBpeGVsRm9ybWF0T2JqIHBpeGVsRm9ybWF0T2JqLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSU9SZWdpc3RyeUdQVUlEIGdwdUlE
KQogewogICAgIGlmIChAYXZhaWxhYmxlKG1hY09TIDEwLjEzLCAqKSkKICAgICB7CkBAIC02Miw1
MSArNjEsNjUgQEAgc3RhdGljIHZvaWQgU2V0R1BVQnlSZWdpc3RyeUlEKENHTENvbnRleHRPYmog
Y29udGV4dE9iaiwKICAgICAgICAgLy8gcmVnaXN0cnlJRC4gQ0dMU2V0VmlydHVhbFNjcmVlbiBj
YW4gdGhlbiBiZSB1c2VkIHRvIHRlbGwgT3BlbkdMIHdoaWNoIEdQVSBpdCBzaG91bGQgYmUKICAg
ICAgICAgLy8gdXNpbmcuCiAKLSAgICAgICAgaWYgKCFjb250ZXh0T2JqIHx8ICFwcmVmZXJyZWRH
UFVJRCkKLSAgICAgICAgICAgIHJldHVybjsKLQogICAgICAgICBHTGludCB2aXJ0dWFsU2NyZWVu
Q291bnQgPSAwOwogICAgICAgICBDR0xFcnJvciBlcnJvciA9IENHTERlc2NyaWJlUGl4ZWxGb3Jt
YXQocGl4ZWxGb3JtYXRPYmosIDAsIGtDR0xQRkFWaXJ0dWFsU2NyZWVuQ291bnQsCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmdmlydHVhbFNjcmVlbkNv
dW50KTsKLSAgICAgICAgQVNTRVJUKGVycm9yID09IGtDR0xOb0Vycm9yKTsKLQotICAgICAgICBH
TGludCBmaXJzdEFjY2VsZXJhdGVkU2NyZWVuID0gLTE7CisgICAgICAgIGlmIChlcnJvciAhPSBr
Q0dMTm9FcnJvcikKKyAgICAgICAgeworICAgICAgICAgICAgTk9UUkVBQ0hFRCgpOworICAgICAg
ICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKKyAgICAgICAgfQogCiAgICAgICAgIGZvciAoR0xp
bnQgdmlydHVhbFNjcmVlbiA9IDA7IHZpcnR1YWxTY3JlZW4gPCB2aXJ0dWFsU2NyZWVuQ291bnQ7
ICsrdmlydHVhbFNjcmVlbikKICAgICAgICAgewogICAgICAgICAgICAgR0xpbnQgZGlzcGxheU1h
c2sgPSAwOwogICAgICAgICAgICAgZXJyb3IgPSBDR0xEZXNjcmliZVBpeGVsRm9ybWF0KHBpeGVs
Rm9ybWF0T2JqLCB2aXJ0dWFsU2NyZWVuLCBrQ0dMUEZBRGlzcGxheU1hc2ssCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmRpc3BsYXlNYXNrKTsKLSAgICAgICAg
ICAgIEFTU0VSVChlcnJvciA9PSBrQ0dMTm9FcnJvcik7Ci0KLSAgICAgICAgICAgIGF1dG8gZ3B1
SUQgPSBhbmdsZTo6R2V0R3B1SURGcm9tT3BlbkdMRGlzcGxheU1hc2soZGlzcGxheU1hc2spOwot
Ci0gICAgICAgICAgICBpZiAoZ3B1SUQgPT0gcHJlZmVycmVkR1BVSUQpCisgICAgICAgICAgICBp
ZiAoZXJyb3IgIT0ga0NHTE5vRXJyb3IpCiAgICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAg
ZXJyb3IgPSBDR0xTZXRWaXJ0dWFsU2NyZWVuKGNvbnRleHRPYmosIHZpcnR1YWxTY3JlZW4pOwot
ICAgICAgICAgICAgICAgIEFTU0VSVChlcnJvciA9PSBrQ0dMTm9FcnJvcik7Ci0gICAgICAgICAg
ICAgICAgZnByaW50ZihzdGRlcnIsICJDb250ZXh0ICglcCkgc2V0IHRvIEdQVSB3aXRoIElEOiAo
JWxsZCkuIiwgY29udGV4dE9iaiwgZ3B1SUQpOwotICAgICAgICAgICAgICAgIHJldHVybjsKKyAg
ICAgICAgICAgICAgICBOT1RSRUFDSEVEKCk7CisgICAgICAgICAgICAgICAgcmV0dXJuIHN0ZDo6
bnVsbG9wdDsKICAgICAgICAgICAgIH0KIAotICAgICAgICAgICAgaWYgKGZpcnN0QWNjZWxlcmF0
ZWRTY3JlZW4gPCAwKQorICAgICAgICAgICAgYXV0byB2aXJ0dWFsU2NyZWVuR1BVSUQgPSBhbmds
ZTo6R2V0R3B1SURGcm9tT3BlbkdMRGlzcGxheU1hc2soZGlzcGxheU1hc2spOworICAgICAgICAg
ICAgaWYgKHZpcnR1YWxTY3JlZW5HUFVJRCA9PSBncHVJRCkKICAgICAgICAgICAgIHsKLSAgICAg
ICAgICAgICAgICBHTGludCBpc0FjY2VsZXJhdGVkID0gMDsKLSAgICAgICAgICAgICAgICBlcnJv
ciA9IENHTERlc2NyaWJlUGl4ZWxGb3JtYXQocGl4ZWxGb3JtYXRPYmosIHZpcnR1YWxTY3JlZW4s
IGtDR0xQRkFBY2NlbGVyYXRlZCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgJmlzQWNjZWxlcmF0ZWQpOwotICAgICAgICAgICAgICAgIEFTU0VSVChlcnJv
ciA9PSBrQ0dMTm9FcnJvcik7Ci0gICAgICAgICAgICAgICAgaWYgKGlzQWNjZWxlcmF0ZWQpCi0g
ICAgICAgICAgICAgICAgICAgIGZpcnN0QWNjZWxlcmF0ZWRTY3JlZW4gPSB2aXJ0dWFsU2NyZWVu
OworICAgICAgICAgICAgICAgIHJldHVybiB2aXJ0dWFsU2NyZWVuOwogICAgICAgICAgICAgfQog
ICAgICAgICB9CisgICAgfQorICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7Cit9CiAKLSAgICAgICAg
Ly8gTm8gcmVnaXN0cnlJRCBtYXRjaCBmb3VuZDsgc2V0IHRvIGZpcnN0IGhhcmR3YXJlLWFjY2Vs
ZXJhdGVkIHZpcnR1YWwgc2NyZWVuLgotICAgICAgICBpZiAoZmlyc3RBY2NlbGVyYXRlZFNjcmVl
biA+PSAwKQorc3RhdGljIHN0ZDo6b3B0aW9uYWw8R0xpbnQ+IEdldEZpcnN0QWNjZWxlcmF0ZWRW
aXJ0dWFsU2NyZWVuKENHTFBpeGVsRm9ybWF0T2JqIHBpeGVsRm9ybWF0T2JqKQoreworICAgIGlm
IChAYXZhaWxhYmxlKG1hY09TIDEwLjEzLCAqKSkKKyAgICB7CisgICAgICAgIEdMaW50IHZpcnR1
YWxTY3JlZW5Db3VudCA9IDA7CisgICAgICAgIENHTEVycm9yIGVycm9yID0gQ0dMRGVzY3JpYmVQ
aXhlbEZvcm1hdChwaXhlbEZvcm1hdE9iaiwgMCwga0NHTFBGQVZpcnR1YWxTY3JlZW5Db3VudCwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZ2aXJ0dWFs
U2NyZWVuQ291bnQpOworICAgICAgICBpZiAoZXJyb3IgIT0ga0NHTE5vRXJyb3IpCisgICAgICAg
IHsKKyAgICAgICAgICAgIE5PVFJFQUNIRUQoKTsKKyAgICAgICAgICAgIHJldHVybiBzdGQ6Om51
bGxvcHQ7CisgICAgICAgIH0KKyAgICAgICAgZm9yIChHTGludCB2aXJ0dWFsU2NyZWVuID0gMDsg
dmlydHVhbFNjcmVlbiA8IHZpcnR1YWxTY3JlZW5Db3VudDsgKyt2aXJ0dWFsU2NyZWVuKQogICAg
ICAgICB7Ci0gICAgICAgICAgICBlcnJvciA9IENHTFNldFZpcnR1YWxTY3JlZW4oY29udGV4dE9i
aiwgZmlyc3RBY2NlbGVyYXRlZFNjcmVlbik7Ci0gICAgICAgICAgICBBU1NFUlQoZXJyb3IgPT0g
a0NHTE5vRXJyb3IpOworICAgICAgICAgICAgR0xpbnQgaXNBY2NlbGVyYXRlZCA9IDA7CisgICAg
ICAgICAgICBlcnJvciA9IENHTERlc2NyaWJlUGl4ZWxGb3JtYXQocGl4ZWxGb3JtYXRPYmosIHZp
cnR1YWxTY3JlZW4sIGtDR0xQRkFBY2NlbGVyYXRlZCwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAmaXNBY2NlbGVyYXRlZCk7CisgICAgICAgICAgICBpZiAoZXJy
b3IgIT0ga0NHTE5vRXJyb3IpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgTk9UUkVB
Q0hFRCgpOworICAgICAgICAgICAgICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7CisgICAgICAgICAg
ICB9CisgICAgICAgICAgICBpZiAoaXNBY2NlbGVyYXRlZCkKKyAgICAgICAgICAgIHsKKyAgICAg
ICAgICAgICAgICByZXR1cm4gdmlydHVhbFNjcmVlbjsKKyAgICAgICAgICAgIH0KICAgICAgICAg
fQogICAgIH0KKyAgICByZXR1cm4gc3RkOjpudWxsb3B0OwogfQogCiB9ICAvLyBhbm9ueW1vdXMg
bmFtZXNwYWNlCkBAIC02NTAsMjIgKzY2Myw1NiBAQCBlZ2w6OkVycm9yIERpc3BsYXlDR0w6Omhh
bmRsZUdQVVN3aXRjaCgpCiAgICAgICAgIHVpbnQ2NF90IGdwdUlEID0gYW5nbGU6OkdldEdwdUlE
RnJvbURpc3BsYXlJRChrQ0dEaXJlY3RNYWluRGlzcGxheSk7CiAgICAgICAgIGlmIChncHVJRCAh
PSBtQ3VycmVudEdQVUlEKQogICAgICAgICB7Ci0gICAgICAgICAgICBTZXRHUFVCeVJlZ2lzdHJ5
SUQobUNvbnRleHQsIG1QaXhlbEZvcm1hdCwgZ3B1SUQpOwotICAgICAgICAgICAgLy8gUGVyZm9y
bWluZyB0aGUgYWJvdmUgb3BlcmF0aW9uIHNlZW1zIHRvIG5lZWQgYSBjYWxsIHRvIENHTFNldEN1
cnJlbnRDb250ZXh0IHRvIG1ha2UKLSAgICAgICAgICAgIC8vIHRoZSBjb250ZXh0IHdvcmsgcHJv
cGVybHkgYWdhaW4uIEZhaWxpbmcgdG8gZG8gdGhpcyByZXR1cm5zIG51bGwgc3RyaW5ncyBmb3IK
LSAgICAgICAgICAgIC8vIEdMX1ZFTkRPUiBhbmQgR0xfUkVOREVSRVIuCi0gICAgICAgICAgICBD
R0xVcGRhdGVDb250ZXh0KG1Db250ZXh0KTsKLSAgICAgICAgICAgIENHTFNldEN1cnJlbnRDb250
ZXh0KG1Db250ZXh0KTsKLSAgICAgICAgICAgIG9uU3RhdGVDaGFuZ2UoYW5nbGU6OlN1YmplY3RN
ZXNzYWdlOjpTdWJqZWN0Q2hhbmdlZCk7Ci0gICAgICAgICAgICBtQ3VycmVudEdQVUlEID0gZ3B1
SUQ7Ci0KLSAgICAgICAgICAgIG1SZW5kZXJlci0+aGFuZGxlR1BVU3dpdGNoKCk7CisgICAgICAg
ICAgICBhdXRvIHZpcnR1YWxTY3JlZW4gPSBHZXRWaXJ0dWFsU2NyZWVuQnlSZWdpc3RyeUlEKG1Q
aXhlbEZvcm1hdCwgZ3B1SUQpOworICAgICAgICAgICAgaWYgKCF2aXJ0dWFsU2NyZWVuKQorICAg
ICAgICAgICAgeworICAgICAgICAgICAgICAgIHZpcnR1YWxTY3JlZW4gPSBHZXRGaXJzdEFjY2Vs
ZXJhdGVkVmlydHVhbFNjcmVlbihtUGl4ZWxGb3JtYXQpOworICAgICAgICAgICAgfQorICAgICAg
ICAgICAgaWYgKHZpcnR1YWxTY3JlZW4pCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAg
c2V0Q29udGV4dFRvR1BVKGdwdUlELCAqdmlydHVhbFNjcmVlbik7CisgICAgICAgICAgICB9CiAg
ICAgICAgIH0KICAgICB9CiAKICAgICByZXR1cm4gZWdsOjpOb0Vycm9yKCk7CiB9CiAKK2VnbDo6
RXJyb3IgRGlzcGxheUNHTDo6Zm9yY2VHUFVTd2l0Y2goRUdMaW50IGdwdUlESGlnaCwgRUdMaW50
IGdwdUlETG93KQoreworICAgIGlmIChtU3VwcG9ydHNHUFVTd2l0Y2hpbmcpCisgICAgeworICAg
ICAgICB1aW50NjRfdCBncHVJRCA9IHN0YXRpY19jYXN0PHVpbnQ2NF90PihzdGF0aWNfY2FzdDx1
aW50MzJfdD4oZ3B1SURIaWdoKSkgPDwgMzIgfAorICAgICAgICAgICAgICAgICAgICAgICAgIHN0
YXRpY19jYXN0PHVpbnQzMl90PihncHVJRExvdyk7CisgICAgICAgIGlmIChncHVJRCAhPSBtQ3Vy
cmVudEdQVUlEKQorICAgICAgICB7CisgICAgICAgICAgICBhdXRvIHZpcnR1YWxTY3JlZW4gPSBH
ZXRWaXJ0dWFsU2NyZWVuQnlSZWdpc3RyeUlEKG1QaXhlbEZvcm1hdCwgZ3B1SUQpOworICAgICAg
ICAgICAgaWYgKHZpcnR1YWxTY3JlZW4pCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAg
c2V0Q29udGV4dFRvR1BVKGdwdUlELCAqdmlydHVhbFNjcmVlbik7CisgICAgICAgICAgICB9Cisg
ICAgICAgIH0KKyAgICB9CisgICAgcmV0dXJuIGVnbDo6Tm9FcnJvcigpOworfQorCit2b2lkIERp
c3BsYXlDR0w6OnNldENvbnRleHRUb0dQVSh1aW50NjRfdCBncHVJRCwgR0xpbnQgdmlydHVhbFNj
cmVlbikKK3sKKyAgICBDR0xFcnJvciBlcnJvciA9IENHTFNldFZpcnR1YWxTY3JlZW4obUNvbnRl
eHQsIHZpcnR1YWxTY3JlZW4pOworICAgIEFTU0VSVChlcnJvciA9PSBrQ0dMTm9FcnJvcik7Cisg
ICAgaWYgKGVycm9yID09IGtDR0xOb0Vycm9yKQorICAgIHsKKyAgICAgICAgLy8gUGVyZm9ybWlu
ZyB0aGUgYWJvdmUgb3BlcmF0aW9uIHNlZW1zIHRvIG5lZWQgYSBjYWxsIHRvIENHTFNldEN1cnJl
bnRDb250ZXh0IHRvIG1ha2UKKyAgICAgICAgLy8gdGhlIGNvbnRleHQgd29yayBwcm9wZXJseSBh
Z2Fpbi4gRmFpbGluZyB0byBkbyB0aGlzIHJldHVybnMgbnVsbCBzdHJpbmdzIGZvcgorICAgICAg
ICAvLyBHTF9WRU5ET1IgYW5kIEdMX1JFTkRFUkVSLgorICAgICAgICBDR0xVcGRhdGVDb250ZXh0
KG1Db250ZXh0KTsKKyAgICAgICAgQ0dMU2V0Q3VycmVudENvbnRleHQobUNvbnRleHQpOworICAg
ICAgICBvblN0YXRlQ2hhbmdlKGFuZ2xlOjpTdWJqZWN0TWVzc2FnZTo6U3ViamVjdENoYW5nZWQp
OworICAgICAgICBtQ3VycmVudEdQVUlEID0gZ3B1SUQ7CisgICAgICAgIG1SZW5kZXJlci0+aGFu
ZGxlR1BVU3dpdGNoKCk7CisgICAgfQorfQorCiB9ICAvLyBuYW1lc3BhY2UgcngKIAogI2VuZGlm
ICAvLyBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ09TKSB8fCBkZWZpbmVkKEFOR0xFX1BMQVRG
T1JNX01BQ0NBVEFMWVNUKQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3Jj
L2xpYkFOR0xFL3JlbmRlcmVyL2dsL2dseC9EaXNwbGF5R0xYLmNwcCBiL1NvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9nbHgvRGlzcGxheUdMWC5jcHAKaW5k
ZXggY2Q1NDI4YzI4YmRhNjkyZDg4NzE5NWNjM2IzYzM3MGUyODRkZmE1NC4uYmZlYjU3OWQxYTI3
YjdmNDU2YTEzMDdjNmRiZDNkMGQ5ZDJiYjc1NCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2dseC9EaXNwbGF5R0xYLmNwcAorKysg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZ2x4L0Rp
c3BsYXlHTFguY3BwCkBAIC0xMDc5LDQgKzEwNzksOSBAQCBSZW5kZXJlckdMICpEaXNwbGF5R0xY
OjpnZXRSZW5kZXJlcigpIGNvbnN0CiAgICAgcmV0dXJuIG1SZW5kZXJlci5nZXQoKTsKIH0KIAor
Ym9vbCBEaXNwbGF5R0xYOjppc1gxMSgpIGNvbnN0Cit7CisgICAgcmV0dXJuIHRydWU7Cit9CisK
IH0gIC8vIG5hbWVzcGFjZSByeApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUv
c3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2dseC9EaXNwbGF5R0xYLmggYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZ2x4L0Rpc3BsYXlHTFguaAppbmRl
eCBjMGQxY2JjYTI1ZjAwMGNjNWY3MzI0OGRjMzkxY2YyNTFlMGRkZWFiLi5mMTA1MTU2ZWQ2NzBk
MTU5Njk2YTQ3MTAzOGUwY2I3NjRiZDgwYmQwIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZ2x4L0Rpc3BsYXlHTFguaAorKysgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZ2x4L0Rpc3Bs
YXlHTFguaApAQCAtMTAwLDYgKzEwMCw4IEBAIGNsYXNzIERpc3BsYXlHTFggOiBwdWJsaWMgRGlz
cGxheUdMCiAKICAgICBSZW5kZXJlckdMICpnZXRSZW5kZXJlcigpIGNvbnN0IG92ZXJyaWRlOwog
CisgICAgYm9vbCBpc1gxMSgpIGNvbnN0IG92ZXJyaWRlOworCiAgIHByaXZhdGU6CiAgICAgZWds
OjpFcnJvciBpbml0aWFsaXplQ29udGV4dChnbHg6OkZCQ29uZmlnIGNvbmZpZywKICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGVnbDo6QXR0cmlidXRlTWFwICZlZ2xBdHRy
aWJ1dGVzLApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xF
L3JlbmRlcmVyL2dsc2xhbmdfd3JhcHBlcl91dGlscy5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2xzbGFuZ193cmFwcGVyX3V0aWxzLmNwcAppbmRl
eCBlMWY0NWJjNWEwNjU2NTYxYjkyMjVhOWI4ODUwZDQ0ZWQwNjFjMWNmLi5lY2VkMGNlMmJmYjlh
YTZhYjRlZTEzNzMyNmFkOTM5ZTEzM2JjNTM5IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2xzbGFuZ193cmFwcGVyX3V0aWxzLmNwcAor
KysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2xzbGFu
Z193cmFwcGVyX3V0aWxzLmNwcApAQCAtMzQzNyw2ICszNDM3LDkgQEAgVHJhbnNmb3JtYXRpb25T
dGF0ZSBTcGlydlRyYW5zZm9ybWVyOjp0cmFuc2Zvcm1EZWNvcmF0ZShjb25zdCB1aW50MzJfdCAq
aW5zdHJ1Y3QKICAgICAgICAgICAgICAgICBtWGZiQ29kZUdlbmVyYXRvci5hZGRNZW1iZXJEZWNv
cmF0ZSgqaW5mbywgaWQsIG1TcGlydkJsb2JPdXQpOwogICAgICAgICAgICAgfQogICAgICAgICAg
ICAgYnJlYWs7CisgICAgICAgIGNhc2Ugc3B2OjpEZWNvcmF0aW9uSW52YXJpYW50OgorICAgICAg
ICAgICAgc3BpcnY6OldyaXRlRGVjb3JhdGUobVNwaXJ2QmxvYk91dCwgaWQsIHNwdjo6RGVjb3Jh
dGlvbkludmFyaWFudCwge30pOworICAgICAgICAgICAgcmV0dXJuIFRyYW5zZm9ybWF0aW9uU3Rh
dGU6OlRyYW5zZm9ybWVkOwogICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgYnJlYWs7CiAg
ICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3Jl
bmRlcmVyL21ldGFsL0NvbnRleHRNdGwuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9s
aWJBTkdMRS9yZW5kZXJlci9tZXRhbC9Db250ZXh0TXRsLmgKaW5kZXggMjFiMDRiNGNmNWY0ZGIx
ZTgwYWYyMGRmM2Y0YWJmOTU4NTFkOTRhMy4uMGY2YWI5NzVhZjUyZmI5OWQ3NjNiMTY3YTY5OWY3
MTMxY2I2ZDJmMCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFO
R0xFL3JlbmRlcmVyL21ldGFsL0NvbnRleHRNdGwuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvQ29udGV4dE10bC5oCkBAIC00MDAsMTEg
KzQwMCwxMyBAQCBjbGFzcyBDb250ZXh0TXRsIDogcHVibGljIENvbnRleHRJbXBsLCBwdWJsaWMg
bXRsOjpDb250ZXh0CiAgICAgYW5nbGU6OlJlc3VsdCBkcmF3VHJpRmFuQXJyYXlzKGNvbnN0IGds
OjpDb250ZXh0ICpjb250ZXh0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBH
TGludCBmaXJzdCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBj
b3VudCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBpbnN0YW5j
ZXMpOworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHNpemVpIGluc3RhbmNl
cywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50IGJhc2VJbnN0YW5j
ZSk7CiAgICAgYW5nbGU6OlJlc3VsdCBkcmF3VHJpRmFuQXJyYXlzV2l0aEJhc2VWZXJ0ZXgoY29u
c3QgZ2w6OkNvbnRleHQgKmNvbnRleHQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgR0xpbnQgZmlyc3QsCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBjb3VudCwKLSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHNpemVpIGluc3RhbmNlcyk7CisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBpbnN0
YW5jZXMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
R0x1aW50IGJhc2VJbnN0YW5jZSk7CiAgICAgYW5nbGU6OlJlc3VsdCBkcmF3VHJpRmFuQXJyYXlz
TGVnYWN5KGNvbnN0IGdsOjpDb250ZXh0ICpjb250ZXh0LAogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBHTGludCBmaXJzdCwKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgR0xzaXplaSBjb3VudCwKQEAgLTQxMyw3ICs0MTUsOSBAQCBjbGFz
cyBDb250ZXh0TXRsIDogcHVibGljIENvbnRleHRJbXBsLCBwdWJsaWMgbXRsOjpDb250ZXh0CiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBjb3VudCwKICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnbDo6RHJhd0VsZW1lbnRzVHlwZSB0eXBl
LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHZvaWQgKmluZGlj
ZXMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBpbnN0YW5j
ZXMpOworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgaW5zdGFu
Y2VzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMaW50IGJhc2VWZXJ0
ZXgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50IGJhc2VJbnN0
YW5jZSk7CiAKICAgICBhbmdsZTo6UmVzdWx0IGRyYXdMaW5lTG9vcEFycmF5c05vbkluc3RhbmNl
ZChjb25zdCBnbDo6Q29udGV4dCAqY29udGV4dCwKICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBHTGludCBmaXJzdCwKQEAgLTQyMSw3ICs0MjUsOCBAQCBj
bGFzcyBDb250ZXh0TXRsIDogcHVibGljIENvbnRleHRJbXBsLCBwdWJsaWMgbXRsOjpDb250ZXh0
CiAgICAgYW5nbGU6OlJlc3VsdCBkcmF3TGluZUxvb3BBcnJheXMoY29uc3QgZ2w6OkNvbnRleHQg
KmNvbnRleHQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xpbnQgZmly
c3QsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBjb3VudCwK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHNpemVpIGluc3RhbmNlcyk7
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBpbnN0YW5jZXMs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50IGJhc2VJbnN0YW5j
ZSk7CiAgICAgYW5nbGU6OlJlc3VsdCBkcmF3TGluZUxvb3BFbGVtZW50c05vbkluc3RhbmNlZE5v
UHJpbWl0aXZlUmVzdGFydChjb25zdCBnbDo6Q29udGV4dCAqY29udGV4dCwKICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IEdMc2l6ZWkgY291bnQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnbDo6RHJhd0VsZW1lbnRzVHlwZSB0eXBlLApA
QCAtNDMwLDI2ICs0MzUsMzIgQEAgY2xhc3MgQ29udGV4dE10bCA6IHB1YmxpYyBDb250ZXh0SW1w
bCwgcHVibGljIG10bDo6Q29udGV4dAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgR0xzaXplaSBjb3VudCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGdsOjpEcmF3RWxlbWVudHNUeXBlIHR5cGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBjb25zdCB2b2lkICppbmRpY2VzLAotICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgR0xzaXplaSBpbnN0YW5jZXMpOworICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBpbnN0YW5jZXMsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBHTGludCBiYXNlVmVydGV4LAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50IGJhc2VJbnN0YW5jZSk7CiAKICAgICBhbmds
ZTo6UmVzdWx0IGRyYXdBcnJheXNQcm92b2tpbmdWZXJ0ZXhJbXBsKGNvbnN0IGdsOjpDb250ZXh0
ICpjb250ZXh0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgZ2w6OlByaW1pdGl2ZU1vZGUgbW9kZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgZmlyc3QsCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBHTHNpemVpIGNvdW50LAotICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBpbnN0YW5jZXMpOworICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBpbnN0
YW5jZXMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBH
THVpbnQgYmFzZUluc3RhbmNlKTsKIAogICAgIGFuZ2xlOjpSZXN1bHQgZHJhd0FycmF5c0ltcGwo
Y29uc3QgZ2w6OkNvbnRleHQgKmNvbnRleHQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBnbDo6UHJpbWl0aXZlTW9kZSBtb2RlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgR0xpbnQgZmlyc3QsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHNp
emVpIGNvdW50LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBpbnN0
YW5jZUNvdW50KTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgaW5z
dGFuY2VDb3VudCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMdWludCBiYXNl
SW5zdGFuY2UpOwogCiAgICAgYW5nbGU6OlJlc3VsdCBkcmF3RWxlbWVudHNJbXBsKGNvbnN0IGds
OjpDb250ZXh0ICpjb250ZXh0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBn
bDo6UHJpbWl0aXZlTW9kZSBtb2RlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBHTHNpemVpIGNvdW50LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnbDo6
RHJhd0VsZW1lbnRzVHlwZSB0eXBlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBjb25zdCB2b2lkICppbmRpY2VzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBHTHNpemVpIGluc3RhbmNlQ291bnQpOworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBHTHNpemVpIGluc3RhbmNlQ291bnQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIEdMaW50IGJhc2VWZXJ0ZXgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIEdMdWludCBiYXNlSW5zdGFuY2UpOwogICAgIHZvaWQgZmx1c2hDb21tYW5kQnVmZmVySWZO
ZWVkZWQoKTsKICAgICB2b2lkIHVwZGF0ZUV4dGVuZGVkU3RhdGUoY29uc3QgZ2w6OlN0YXRlICZn
bFN0YXRlKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFO
R0xFL3JlbmRlcmVyL21ldGFsL0NvbnRleHRNdGwubW0gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvQ29udGV4dE10bC5tbQppbmRleCA4MWVkOGEz
ZDRkNWJkNzllNTNjOWVjNjdiMTNiMTlkZTQ3NzBkYjA5Li5lOTFmNzY3NGNhODlhODc5OGY0MjM1
YjJkM2E5MGE4N2E5MGY5NWE1IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9z
cmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvQ29udGV4dE10bC5tbQorKysgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvQ29udGV4dE10bC5tbQpA
QCAtMjkzLDcgKzI5Myw4IEBAIGFuZ2xlOjpSZXN1bHQgQ29udGV4dE10bDo6ZmluaXNoKGNvbnN0
IGdsOjpDb250ZXh0ICpjb250ZXh0KQogYW5nbGU6OlJlc3VsdCBDb250ZXh0TXRsOjpkcmF3VHJp
RmFuQXJyYXlzV2l0aEJhc2VWZXJ0ZXgoY29uc3QgZ2w6OkNvbnRleHQgKmNvbnRleHQsCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTGlu
dCBmaXJzdCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIEdMc2l6ZWkgY291bnQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBHTHNpemVpIGluc3RhbmNlcykKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgaW5z
dGFuY2VzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgR0x1aW50IGJhc2VJbnN0YW5jZSkKIHsKICAgICBBU1NFUlQoKGdldERpc3BsYXko
KS0+Z2V0RmVhdHVyZXMoKS5oYXNCYXNlVmVydGV4SW5zdGFuY2VkRHJhdy5lbmFibGVkKSk7CiAK
QEAgLTMyMCw5ICszMjEsOSBAQCBhbmdsZTo6UmVzdWx0IENvbnRleHRNdGw6OmRyYXdUcmlGYW5B
cnJheXNXaXRoQmFzZVZlcnRleChjb25zdCBnbDo6Q29udGV4dCAqY29udAogCiAgICAgLy8gRHJh
dyB3aXRoIHRoZSB6ZXJvIHN0YXJ0aW5nIGluZGV4IGJ1ZmZlciwgc2hpZnQgdGhlIHZlcnRleCBp
bmRleCB1c2luZyBiYXNlVmVydGV4IGluc3RhbmNlZAogICAgIC8vIGRyYXc6Ci0gICAgbVJlbmRl
ckVuY29kZXIuZHJhd0luZGV4ZWRJbnN0YW5jZWRCYXNlVmVydGV4KE1UTFByaW1pdGl2ZVR5cGVU
cmlhbmdsZSwgZ2VuSW5kaWNlc0NvdW50LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBNVExJbmRleFR5cGVVSW50MzIsIG1UcmlGYW5BcnJheXNJbmRl
eEJ1ZmZlciwgMCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgaW5zdGFuY2VzLCBmaXJzdCk7CisgICAgbVJlbmRlckVuY29kZXIuZHJhd0luZGV4ZWRJ
bnN0YW5jZWRCYXNlVmVydGV4QmFzZUluc3RhbmNlKAorICAgICAgICBNVExQcmltaXRpdmVUeXBl
VHJpYW5nbGUsIGdlbkluZGljZXNDb3VudCwgTVRMSW5kZXhUeXBlVUludDMyLCBtVHJpRmFuQXJy
YXlzSW5kZXhCdWZmZXIsIDAsCisgICAgICAgIGluc3RhbmNlcywgZmlyc3QsIGJhc2VJbnN0YW5j
ZSk7CiAKICAgICByZXR1cm4gYW5nbGU6OlJlc3VsdDo6Q29udGludWU7CiB9CkBAIC0zNTgsMTUg
KzM1OSwxNiBAQCBhbmdsZTo6UmVzdWx0IENvbnRleHRNdGw6OmRyYXdUcmlGYW5BcnJheXNMZWdh
Y3koY29uc3QgZ2w6OkNvbnRleHQgKmNvbnRleHQsCiBhbmdsZTo6UmVzdWx0IENvbnRleHRNdGw6
OmRyYXdUcmlGYW5BcnJheXMoY29uc3QgZ2w6OkNvbnRleHQgKmNvbnRleHQsCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xpbnQgZmlyc3QsCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBjb3VudCwKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHNpemVpIGluc3RhbmNlcykKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHNpemVpIGluc3RhbmNl
cywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVpbnQgYmFz
ZUluc3RhbmNlKQogewotICAgIGlmIChjb3VudCA8PSAzKQorICAgIGlmIChjb3VudCA8PSAzICYm
IGJhc2VJbnN0YW5jZSA9PSAwKQogICAgIHsKICAgICAgICAgcmV0dXJuIGRyYXdBcnJheXNJbnN0
YW5jZWQoY29udGV4dCwgZ2w6OlByaW1pdGl2ZU1vZGU6OlRyaWFuZ2xlcywgZmlyc3QsIGNvdW50
LCBpbnN0YW5jZXMpOwogICAgIH0KICAgICBpZiAoZ2V0RGlzcGxheSgpLT5nZXRGZWF0dXJlcygp
Lmhhc0Jhc2VWZXJ0ZXhJbnN0YW5jZWREcmF3LmVuYWJsZWQpCiAgICAgewotICAgICAgICByZXR1
cm4gZHJhd1RyaUZhbkFycmF5c1dpdGhCYXNlVmVydGV4KGNvbnRleHQsIGZpcnN0LCBjb3VudCwg
aW5zdGFuY2VzKTsKKyAgICAgICAgcmV0dXJuIGRyYXdUcmlGYW5BcnJheXNXaXRoQmFzZVZlcnRl
eChjb250ZXh0LCBmaXJzdCwgY291bnQsIGluc3RhbmNlcywgYmFzZUluc3RhbmNlKTsKICAgICB9
CiAgICAgcmV0dXJuIGRyYXdUcmlGYW5BcnJheXNMZWdhY3koY29udGV4dCwgZmlyc3QsIGNvdW50
LCBpbnN0YW5jZXMpOwogfQpAQCAtMzgyLDE1ICszODQsMTYgQEAgYW5nbGU6OlJlc3VsdCBDb250
ZXh0TXRsOjpkcmF3TGluZUxvb3BBcnJheXNOb25JbnN0YW5jZWQoY29uc3QgZ2w6OkNvbnRleHQg
KmNvbnQKICAgICBBTkdMRV9UUlkobGluZWxvb3BIZWxwZXIuYmVnaW4oY29udGV4dCwgJm1MaW5l
TG9vcExhc3RTZWdtZW50SW5kZXhCdWZmZXIsIGZpcnN0LCBjb3VudCwKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgZ2w6OkRyYXdFbGVtZW50c1R5cGU6OkludmFsaWRFbnVtLCBu
dWxscHRyKSk7CiAKLSAgICByZXR1cm4gZHJhd0FycmF5c0ltcGwoY29udGV4dCwgZ2w6OlByaW1p
dGl2ZU1vZGU6OkxpbmVTdHJpcCwgZmlyc3QsIGNvdW50LCAwKTsKKyAgICByZXR1cm4gZHJhd0Fy
cmF5c0ltcGwoY29udGV4dCwgZ2w6OlByaW1pdGl2ZU1vZGU6OkxpbmVTdHJpcCwgZmlyc3QsIGNv
dW50LCAwLCAwKTsKIH0KIAogYW5nbGU6OlJlc3VsdCBDb250ZXh0TXRsOjpkcmF3TGluZUxvb3BB
cnJheXMoY29uc3QgZ2w6OkNvbnRleHQgKmNvbnRleHQsCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBHTGludCBmaXJzdCwKICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgY291bnQsCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHNpemVpIGluc3RhbmNlcykKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgaW5zdGFuY2VzLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50IGJhc2VJ
bnN0YW5jZSkKIHsKLSAgICBpZiAoaW5zdGFuY2VzIDw9IDEpCisgICAgaWYgKGluc3RhbmNlcyA8
PSAxICYmIGJhc2VJbnN0YW5jZSA9PSAwKQogICAgIHsKICAgICAgICAgcmV0dXJuIGRyYXdMaW5l
TG9vcEFycmF5c05vbkluc3RhbmNlZChjb250ZXh0LCBmaXJzdCwgY291bnQpOwogICAgIH0KQEAg
LTQxMiw5ICs0MTUsMTggQEAgYW5nbGU6OlJlc3VsdCBDb250ZXh0TXRsOjpkcmF3TGluZUxvb3BB
cnJheXMoY29uc3QgZ2w6OkNvbnRleHQgKmNvbnRleHQsCiAgICAgQU5HTEVfVFJZKHNldHVwRHJh
dyhjb250ZXh0LCBnbDo6UHJpbWl0aXZlTW9kZTo6TGluZUxvb3AsIGZpcnN0LCBjb3VudCwgaW5z
dGFuY2VzLAogICAgICAgICAgICAgICAgICAgICAgICAgZ2w6OkRyYXdFbGVtZW50c1R5cGU6Oklu
dmFsaWRFbnVtLCBudWxscHRyLCBmYWxzZSkpOwogCi0gICAgbVJlbmRlckVuY29kZXIuZHJhd0lu
ZGV4ZWRJbnN0YW5jZWQoTVRMUHJpbWl0aXZlVHlwZUxpbmVTdHJpcCwgZ2VuSW5kaWNlc0NvdW50
LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1UTEluZGV4VHlwZVVJ
bnQzMiwgZ2VuSWR4QnVmZmVyLCBnZW5JZHhCdWZmZXJPZmZzZXQsCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgaW5zdGFuY2VzKTsKKyAgICBpZiAoYmFzZUluc3RhbmNl
ID09IDApCisgICAgeworICAgICAgICBtUmVuZGVyRW5jb2Rlci5kcmF3SW5kZXhlZEluc3RhbmNl
ZChNVExQcmltaXRpdmVUeXBlTGluZVN0cmlwLCBnZW5JbmRpY2VzQ291bnQsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1UTEluZGV4VHlwZVVJbnQzMiwgZ2Vu
SWR4QnVmZmVyLCBnZW5JZHhCdWZmZXJPZmZzZXQsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGluc3RhbmNlcyk7CisgICAgfQorICAgIGVsc2UKKyAgICB7Cisg
ICAgICAgIG1SZW5kZXJFbmNvZGVyLmRyYXdJbmRleGVkSW5zdGFuY2VkQmFzZVZlcnRleEJhc2VJ
bnN0YW5jZSgKKyAgICAgICAgICAgIE1UTFByaW1pdGl2ZVR5cGVMaW5lU3RyaXAsIGdlbkluZGlj
ZXNDb3VudCwgTVRMSW5kZXhUeXBlVUludDMyLCBnZW5JZHhCdWZmZXIsCisgICAgICAgICAgICBn
ZW5JZHhCdWZmZXJPZmZzZXQsIGluc3RhbmNlcywgMCwgYmFzZUluc3RhbmNlKTsKKyAgICB9CiAK
ICAgICByZXR1cm4gYW5nbGU6OlJlc3VsdDo6Q29udGludWU7CiB9CkBAIC00MjMsNyArNDM1LDgg
QEAgYW5nbGU6OlJlc3VsdCBDb250ZXh0TXRsOjpkcmF3QXJyYXlzSW1wbChjb25zdCBnbDo6Q29u
dGV4dCAqY29udGV4dCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Z2w6OlByaW1pdGl2ZU1vZGUgbW9kZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgR0xpbnQgZmlyc3QsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIEdMc2l6ZWkgY291bnQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIEdMc2l6ZWkgaW5zdGFuY2VzKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBHTHNpemVpIGluc3RhbmNlcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgR0x1aW50IGJhc2VJbnN0YW5jZSkKIHsKICAgICAvLyBSZWFsIGluc3Rh
bmNlcyBjb3VudC4gWmVybyBtZWFucyB0aGlzIGlzIG5vdCBpbnN0YW5jZWQgZHJhdy4KICAgICBH
THNpemVpIGluc3RhbmNlQ291bnQgPSBpbnN0YW5jZXMgPyBpbnN0YW5jZXMgOiAxOwpAQCAtNDM0
LDE1ICs0NDcsMTUgQEAgYW5nbGU6OlJlc3VsdCBDb250ZXh0TXRsOjpkcmF3QXJyYXlzSW1wbChj
b25zdCBnbDo6Q29udGV4dCAqY29udGV4dCwKICAgICB9CiAgICAgaWYgKHJlcXVpcmVzSW5kZXhS
ZXdyaXRlKGNvbnRleHQtPmdldFN0YXRlKCksIG1vZGUpKQogICAgIHsKLSAgICAgICAgcmV0dXJu
IGRyYXdBcnJheXNQcm92b2tpbmdWZXJ0ZXhJbXBsKGNvbnRleHQsIG1vZGUsIGZpcnN0LCBjb3Vu
dCwgaW5zdGFuY2VzKTsKKyAgICAgICAgcmV0dXJuIGRyYXdBcnJheXNQcm92b2tpbmdWZXJ0ZXhJ
bXBsKGNvbnRleHQsIG1vZGUsIGZpcnN0LCBjb3VudCwgaW5zdGFuY2VzLCBiYXNlSW5zdGFuY2Up
OwogICAgIH0KICAgICBpZiAobW9kZSA9PSBnbDo6UHJpbWl0aXZlTW9kZTo6VHJpYW5nbGVGYW4p
CiAgICAgewotICAgICAgICByZXR1cm4gZHJhd1RyaUZhbkFycmF5cyhjb250ZXh0LCBmaXJzdCwg
Y291bnQsIGluc3RhbmNlQ291bnQpOworICAgICAgICByZXR1cm4gZHJhd1RyaUZhbkFycmF5cyhj
b250ZXh0LCBmaXJzdCwgY291bnQsIGluc3RhbmNlQ291bnQsIGJhc2VJbnN0YW5jZSk7CiAgICAg
fQogICAgIGVsc2UgaWYgKG1vZGUgPT0gZ2w6OlByaW1pdGl2ZU1vZGU6OkxpbmVMb29wKQogICAg
IHsKLSAgICAgICAgcmV0dXJuIGRyYXdMaW5lTG9vcEFycmF5cyhjb250ZXh0LCBmaXJzdCwgY291
bnQsIGluc3RhbmNlQ291bnQpOworICAgICAgICByZXR1cm4gZHJhd0xpbmVMb29wQXJyYXlzKGNv
bnRleHQsIGZpcnN0LCBjb3VudCwgaW5zdGFuY2VDb3VudCwgYmFzZUluc3RhbmNlKTsKICAgICB9
CiAKICAgICBNVExQcmltaXRpdmVUeXBlIG10bFR5cGUgPSBtdGw6OkdldFByaW1pdGl2ZVR5cGUo
bW9kZSk7CkBAIC00NTgsNyArNDcxLDE1IEBAIGFuZ2xlOjpSZXN1bHQgQ29udGV4dE10bDo6ZHJh
d0FycmF5c0ltcGwoY29uc3QgZ2w6OkNvbnRleHQgKmNvbnRleHQsCiAgICAgfSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgZWxzZSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBcCiAgICAgeyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBcCi0gICAgICAgIG1SZW5kZXJFbmNvZGVyLmRyYXdJbnN0YW5jZWQobXRsVHlwZSwgZmlyc3Qs
IGNvdW50LCBpbnN0YW5jZUNvdW50KTsgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAg
IGlmIChiYXNlSW5zdGFuY2UgPT0gMCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgIHsgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgICAgICBtUmVuZGVyRW5jb2Rlci5kcmF3
SW5zdGFuY2VkKG10bFR5cGUsIGZpcnN0LCBjb3VudCwgaW5zdGFuY2VDb3VudCk7ICAgICAgICAg
ICAgICAgICAgICBcCisgICAgICAgIH0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBc
CisgICAgICAgIGVsc2UgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgIHsg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgICAgICBtUmVuZGVyRW5j
b2Rlci5kcmF3SW5zdGFuY2VkQmFzZUluc3RhbmNlKG10bFR5cGUsIGZpcnN0LCBjb3VudCwgaW5z
dGFuY2VDb3VudCwgICAgICAgICBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGJhc2VJbnN0YW5jZSk7ICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBcCisgICAgICAgIH0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAg
ICAgfQogCiAgICAgQU5HTEVfTVRMX1hGQl9EUkFXKERSQVdfR0VORVJJQ19BUlJBWSkKQEAgLTQ3
MSw3ICs0OTIsNyBAQCBhbmdsZTo6UmVzdWx0IENvbnRleHRNdGw6OmRyYXdBcnJheXMoY29uc3Qg
Z2w6OkNvbnRleHQgKmNvbnRleHQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgR0xpbnQgZmlyc3QsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xz
aXplaSBjb3VudCkKIHsKLSAgICByZXR1cm4gZHJhd0FycmF5c0ltcGwoY29udGV4dCwgbW9kZSwg
Zmlyc3QsIGNvdW50LCAwKTsKKyAgICByZXR1cm4gZHJhd0FycmF5c0ltcGwoY29udGV4dCwgbW9k
ZSwgZmlyc3QsIGNvdW50LCAwLCAwKTsKIH0KIAogYW5nbGU6OlJlc3VsdCBDb250ZXh0TXRsOjpk
cmF3QXJyYXlzSW5zdGFuY2VkKGNvbnN0IGdsOjpDb250ZXh0ICpjb250ZXh0LApAQCAtNDgwLDEx
ICs1MDEsMTAgQEAgYW5nbGU6OlJlc3VsdCBDb250ZXh0TXRsOjpkcmF3QXJyYXlzSW5zdGFuY2Vk
KGNvbnN0IGdsOjpDb250ZXh0ICpjb250ZXh0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgY291bnQsCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBpbnN0YW5jZXMpCiB7Ci0gICAgaWYgKGlu
c3RhbmNlcyA9PSAwKQotICAgIHsKLSAgICAgICAgcmV0dXJuIGFuZ2xlOjpSZXN1bHQ6OkNvbnRp
bnVlOwotICAgIH0KLSAgICByZXR1cm4gZHJhd0FycmF5c0ltcGwoY29udGV4dCwgbW9kZSwgZmly
c3QsIGNvdW50LCBpbnN0YW5jZXMpOworICAgIC8vIEluc3RhbmNlZCBkcmF3IGNhbGxzIHdpdGgg
emVybyBpbnN0YW5jZXMgYXJlIHNraXBwZWQgaW4gdGhlIGZyb250ZW5kLgorICAgIC8vIFRoZSBk
cmF3QXJyYXlzSW1wbCBmdW5jdGlvbiB3b3VsZCB0cmVhdCB0aGVtIGFzIG5vbi1pbnN0YW5jZWQu
CisgICAgQVNTRVJUKGluc3RhbmNlcyA+IDApOworICAgIHJldHVybiBkcmF3QXJyYXlzSW1wbChj
b250ZXh0LCBtb2RlLCBmaXJzdCwgY291bnQsIGluc3RhbmNlcywgMCk7CiB9CiAKIGFuZ2xlOjpS
ZXN1bHQgQ29udGV4dE10bDo6ZHJhd0FycmF5c0luc3RhbmNlZEJhc2VJbnN0YW5jZShjb25zdCBn
bDo6Q29udGV4dCAqY29udGV4dCwKQEAgLTQ5NCwxNSArNTE0LDE5IEBAIGFuZ2xlOjpSZXN1bHQg
Q29udGV4dE10bDo6ZHJhd0FycmF5c0luc3RhbmNlZEJhc2VJbnN0YW5jZShjb25zdCBnbDo6Q29u
dGV4dCAqY29uCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgR0xzaXplaSBpbnN0YW5jZUNvdW50LAogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMdWludCBiYXNlSW5zdGFuY2Up
CiB7Ci0gICAgVU5JTVBMRU1FTlRFRCgpOwotICAgIHJldHVybiBhbmdsZTo6UmVzdWx0OjpTdG9w
OworICAgIC8vIEluc3RhbmNlZCBkcmF3IGNhbGxzIHdpdGggemVybyBpbnN0YW5jZXMgYXJlIHNr
aXBwZWQgaW4gdGhlIGZyb250ZW5kLgorICAgIC8vIFRoZSBkcmF3QXJyYXlzSW1wbCBmdW5jdGlv
biB3b3VsZCB0cmVhdCB0aGVtIGFzIG5vbi1pbnN0YW5jZWQuCisgICAgQVNTRVJUKGluc3RhbmNl
Q291bnQgPiAwKTsKKyAgICByZXR1cm4gZHJhd0FycmF5c0ltcGwoY29udGV4dCwgbW9kZSwgZmly
c3QsIGNvdW50LCBpbnN0YW5jZUNvdW50LCBiYXNlSW5zdGFuY2UpOwogfQogCiBhbmdsZTo6UmVz
dWx0IENvbnRleHRNdGw6OmRyYXdUcmlGYW5FbGVtZW50cyhjb25zdCBnbDo6Q29udGV4dCAqY29u
dGV4dCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6
ZWkgY291bnQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBn
bDo6RHJhd0VsZW1lbnRzVHlwZSB0eXBlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgY29uc3Qgdm9pZCAqaW5kaWNlcywKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgaW5zdGFuY2VzKQorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBpbnN0YW5jZXMsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTGludCBiYXNlVmVydGV4
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50IGJh
c2VJbnN0YW5jZSkKIHsKICAgICBpZiAoY291bnQgPiAzKQogICAgIHsKQEAgLTUyMiwxNCArNTQ2
LDMyIEBAIGFuZ2xlOjpSZXN1bHQgQ29udGV4dE10bDo6ZHJhd1RyaUZhbkVsZW1lbnRzKGNvbnN0
IGdsOjpDb250ZXh0ICpjb250ZXh0LAogICAgICAgICBBTkdMRV9UUlkoc2V0dXBEcmF3KGNvbnRl
eHQsIGdsOjpQcmltaXRpdmVNb2RlOjpUcmlhbmdsZUZhbiwgMCwgY291bnQsIGluc3RhbmNlcywg
dHlwZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbmRpY2VzLCBmYWxzZSkpOwogCi0g
ICAgICAgIG1SZW5kZXJFbmNvZGVyLmRyYXdJbmRleGVkSW5zdGFuY2VkKE1UTFByaW1pdGl2ZVR5
cGVUcmlhbmdsZSwgZ2VuSW5kaWNlc0NvdW50LAotICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBNVExJbmRleFR5cGVVSW50MzIsIGdlbklkeEJ1ZmZlciwgZ2VuSWR4
QnVmZmVyT2Zmc2V0LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBpbnN0YW5jZXMpOworICAgICAgICBpZiAoYmFzZVZlcnRleCA9PSAwICYmIGJhc2VJbnN0YW5j
ZSA9PSAwKQorICAgICAgICB7CisgICAgICAgICAgICBtUmVuZGVyRW5jb2Rlci5kcmF3SW5kZXhl
ZEluc3RhbmNlZChNVExQcmltaXRpdmVUeXBlVHJpYW5nbGUsIGdlbkluZGljZXNDb3VudCwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1UTEluZGV4VHlw
ZVVJbnQzMiwgZ2VuSWR4QnVmZmVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgZ2VuSWR4QnVmZmVyT2Zmc2V0LCBpbnN0YW5jZXMpOworICAgICAgICB9
CisgICAgICAgIGVsc2UKKyAgICAgICAgeworICAgICAgICAgICAgbVJlbmRlckVuY29kZXIuZHJh
d0luZGV4ZWRJbnN0YW5jZWRCYXNlVmVydGV4QmFzZUluc3RhbmNlKAorICAgICAgICAgICAgICAg
IE1UTFByaW1pdGl2ZVR5cGVUcmlhbmdsZSwgZ2VuSW5kaWNlc0NvdW50LCBNVExJbmRleFR5cGVV
SW50MzIsIGdlbklkeEJ1ZmZlciwKKyAgICAgICAgICAgICAgICBnZW5JZHhCdWZmZXJPZmZzZXQs
IGluc3RhbmNlcywgYmFzZVZlcnRleCwgYmFzZUluc3RhbmNlKTsKKyAgICAgICAgfQogCiAgICAg
ICAgIHJldHVybiBhbmdsZTo6UmVzdWx0OjpDb250aW51ZTsKICAgICB9ICAvLyBpZiAoY291bnQg
PiAzKQotICAgIHJldHVybiBkcmF3RWxlbWVudHNJbnN0YW5jZWQoY29udGV4dCwgZ2w6OlByaW1p
dGl2ZU1vZGU6OlRyaWFuZ2xlcywgY291bnQsIHR5cGUsIGluZGljZXMsCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBpbnN0YW5jZXMpOworICAgIGlmIChiYXNlVmVydGV4ID09IDAg
JiYgYmFzZUluc3RhbmNlID09IDApCisgICAgeworICAgICAgICByZXR1cm4gZHJhd0VsZW1lbnRz
SW5zdGFuY2VkKGNvbnRleHQsIGdsOjpQcmltaXRpdmVNb2RlOjpUcmlhbmdsZXMsIGNvdW50LCB0
eXBlLCBpbmRpY2VzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluc3Rh
bmNlcyk7CisgICAgfQorICAgIGVsc2UKKyAgICB7CisgICAgICAgIHJldHVybiBkcmF3RWxlbWVu
dHNJbnN0YW5jZWRCYXNlVmVydGV4QmFzZUluc3RhbmNlKGNvbnRleHQsIGdsOjpQcmltaXRpdmVN
b2RlOjpUcmlhbmdsZXMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGNvdW50LCB0eXBlLCBpbmRpY2VzLCBpbnN0YW5jZXMsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJh
c2VWZXJ0ZXgsIGJhc2VJbnN0YW5jZSk7CisgICAgfQogfQogCiBhbmdsZTo6UmVzdWx0IENvbnRl
eHRNdGw6OmRyYXdMaW5lTG9vcEVsZW1lbnRzTm9uSW5zdGFuY2VkTm9QcmltaXRpdmVSZXN0YXJ0
KApAQCAtNTQ0LDE5ICs1ODYsMjEgQEAgYW5nbGU6OlJlc3VsdCBDb250ZXh0TXRsOjpkcmF3TGlu
ZUxvb3BFbGVtZW50c05vbkluc3RhbmNlZE5vUHJpbWl0aXZlUmVzdGFydCgKICAgICBBTkdMRV9U
UlkoCiAgICAgICAgIGxpbmVsb29wSGVscGVyLmJlZ2luKGNvbnRleHQsICZtTGluZUxvb3BMYXN0
U2VnbWVudEluZGV4QnVmZmVyLCAwLCBjb3VudCwgdHlwZSwgaW5kaWNlcykpOwogCi0gICAgcmV0
dXJuIGRyYXdFbGVtZW50c0ltcGwoY29udGV4dCwgZ2w6OlByaW1pdGl2ZU1vZGU6OkxpbmVTdHJp
cCwgY291bnQsIHR5cGUsIGluZGljZXMsIDApOworICAgIHJldHVybiBkcmF3RWxlbWVudHNJbXBs
KGNvbnRleHQsIGdsOjpQcmltaXRpdmVNb2RlOjpMaW5lU3RyaXAsIGNvdW50LCB0eXBlLCBpbmRp
Y2VzLCAwLCAwLCAwKTsKIH0KIAogYW5nbGU6OlJlc3VsdCBDb250ZXh0TXRsOjpkcmF3TGluZUxv
b3BFbGVtZW50cyhjb25zdCBnbDo6Q29udGV4dCAqY29udGV4dCwKICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBjb3VudCwKICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2w6OkRyYXdFbGVtZW50c1R5cGUg
dHlwZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29u
c3Qgdm9pZCAqaW5kaWNlcywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgR0xzaXplaSBpbnN0YW5jZXMpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgaW5zdGFuY2VzLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTGludCBiYXNlVmVydGV4LAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVpbnQgYmFzZUluc3RhbmNl
KQogewogICAgIGlmIChjb3VudCA+PSAyKQogICAgIHsKICAgICAgICAgYm9vbCBwcmltaXRpdmVS
ZXN0YXJ0ID0gZ2V0U3RhdGUoKS5pc1ByaW1pdGl2ZVJlc3RhcnRFbmFibGVkKCk7Ci0gICAgICAg
IGlmIChpbnN0YW5jZXMgPD0gMSAmJiAhcHJpbWl0aXZlUmVzdGFydCkKKyAgICAgICAgaWYgKGlu
c3RhbmNlcyA8PSAxICYmICFwcmltaXRpdmVSZXN0YXJ0ICYmIGJhc2VWZXJ0ZXggPT0gMCAmJiBi
YXNlSW5zdGFuY2UgPT0gMCkKICAgICAgICAgewogICAgICAgICAgICAgLy8gTm9uIGluc3RhbmNl
ZCBkcmF3IGFuZCBubyBwcmltaXRpdmUgcmVzdGFydCwganVzdCB1c2UgZmFzdGVyIHZlcnNpb24u
CiAgICAgICAgICAgICByZXR1cm4gZHJhd0xpbmVMb29wRWxlbWVudHNOb25JbnN0YW5jZWROb1By
aW1pdGl2ZVJlc3RhcnQoY29udGV4dCwgY291bnQsIHR5cGUsCkBAIC01NzksMjEgKzYyMyw0MCBA
QCBhbmdsZTo6UmVzdWx0IENvbnRleHRNdGw6OmRyYXdMaW5lTG9vcEVsZW1lbnRzKGNvbnN0IGds
OjpDb250ZXh0ICpjb250ZXh0LAogICAgICAgICBBTkdMRV9UUlkoc2V0dXBEcmF3KGNvbnRleHQs
IGdsOjpQcmltaXRpdmVNb2RlOjpMaW5lTG9vcCwgMCwgY291bnQsIGluc3RhbmNlcywgdHlwZSwK
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbmRpY2VzLCBmYWxzZSkpOwogCi0gICAgICAg
IG1SZW5kZXJFbmNvZGVyLmRyYXdJbmRleGVkSW5zdGFuY2VkKE1UTFByaW1pdGl2ZVR5cGVMaW5l
U3RyaXAsIGdlbkluZGljZXNDb3VudCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgTVRMSW5kZXhUeXBlVUludDMyLCBnZW5JZHhCdWZmZXIsIGdlbklkeEJ1ZmZl
ck9mZnNldCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5z
dGFuY2VzKTsKKyAgICAgICAgaWYgKGJhc2VWZXJ0ZXggPT0gMCAmJiBiYXNlSW5zdGFuY2UgPT0g
MCkKKyAgICAgICAgeworICAgICAgICAgICAgbVJlbmRlckVuY29kZXIuZHJhd0luZGV4ZWRJbnN0
YW5jZWQoTVRMUHJpbWl0aXZlVHlwZUxpbmVTdHJpcCwgZ2VuSW5kaWNlc0NvdW50LAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTVRMSW5kZXhUeXBlVUlu
dDMyLCBnZW5JZHhCdWZmZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBnZW5JZHhCdWZmZXJPZmZzZXQsIGluc3RhbmNlcyk7CisgICAgICAgIH0KKyAg
ICAgICAgZWxzZQorICAgICAgICB7CisgICAgICAgICAgICBtUmVuZGVyRW5jb2Rlci5kcmF3SW5k
ZXhlZEluc3RhbmNlZEJhc2VWZXJ0ZXhCYXNlSW5zdGFuY2UoCisgICAgICAgICAgICAgICAgTVRM
UHJpbWl0aXZlVHlwZUxpbmVTdHJpcCwgZ2VuSW5kaWNlc0NvdW50LCBNVExJbmRleFR5cGVVSW50
MzIsIGdlbklkeEJ1ZmZlciwKKyAgICAgICAgICAgICAgICBnZW5JZHhCdWZmZXJPZmZzZXQsIGlu
c3RhbmNlcywgYmFzZVZlcnRleCwgYmFzZUluc3RhbmNlKTsKKyAgICAgICAgfQogCiAgICAgICAg
IHJldHVybiBhbmdsZTo6UmVzdWx0OjpDb250aW51ZTsKICAgICB9ICAvLyBpZiAoY291bnQgPj0g
MikKLSAgICByZXR1cm4gZHJhd0VsZW1lbnRzSW5zdGFuY2VkKGNvbnRleHQsIGdsOjpQcmltaXRp
dmVNb2RlOjpMaW5lcywgY291bnQsIHR5cGUsIGluZGljZXMsCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBpbnN0YW5jZXMpOworICAgIGlmIChiYXNlVmVydGV4ID09IDAgJiYgYmFz
ZUluc3RhbmNlID09IDApCisgICAgeworICAgICAgICByZXR1cm4gZHJhd0VsZW1lbnRzSW5zdGFu
Y2VkKGNvbnRleHQsIGdsOjpQcmltaXRpdmVNb2RlOjpMaW5lcywgY291bnQsIHR5cGUsIGluZGlj
ZXMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5zdGFuY2VzKTsKKyAg
ICB9CisgICAgZWxzZQorICAgIHsKKyAgICAgICAgcmV0dXJuIGRyYXdFbGVtZW50c0luc3RhbmNl
ZEJhc2VWZXJ0ZXhCYXNlSW5zdGFuY2UoY29udGV4dCwgZ2w6OlByaW1pdGl2ZU1vZGU6OkxpbmVz
LCBjb3VudCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgdHlwZSwgaW5kaWNlcywgaW5zdGFuY2VzLCBiYXNlVmVydGV4LAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYXNl
SW5zdGFuY2UpOworICAgIH0KIH0KIAogYW5nbGU6OlJlc3VsdCBDb250ZXh0TXRsOjpkcmF3QXJy
YXlzUHJvdm9raW5nVmVydGV4SW1wbChjb25zdCBnbDo6Q29udGV4dCAqY29udGV4dCwKICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2w6OlBy
aW1pdGl2ZU1vZGUgbW9kZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgR0xzaXplaSBmaXJzdCwKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBjb3VudCwKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBp
bnN0YW5jZXMpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIEdMc2l6ZWkgaW5zdGFuY2VzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVpbnQgYmFzZUluc3RhbmNlKQogewogCiAg
ICAgc2l6ZV90IG91dEluZGV4Q291bnQgICAgICAgICAgICAgICA9IDA7CkBAIC02MjQsNyArNjg3
LDE1IEBAIGFuZ2xlOjpSZXN1bHQgQ29udGV4dE10bDo6ZHJhd0FycmF5c1Byb3Zva2luZ1ZlcnRl
eEltcGwoY29uc3QgZ2w6OkNvbnRleHQgKmNvbnRlCiAgICAgICAgIH0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFwKICAgICAgICAgZWxzZSAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgXAogICAgICAgICB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0gICAgICAg
ICAgICBtUmVuZGVyRW5jb2Rlci5kcmF3SW5zdGFuY2VkKG10bFR5cGUsIGZpcnN0LCBjb3VudCwg
aW5zdGFuY2VzKTsgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgICAgIGlmIChiYXNl
SW5zdGFuY2UgPT0gMCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICAgICAgeyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBcCisgICAgICAgICAgICAgICAgbVJlbmRlckVuY29kZXIuZHJhd0luc3RhbmNlZCht
dGxUeXBlLCBmaXJzdCwgY291bnQsIGluc3RhbmNlcyk7ICAgICAgICAgICAgICAgICAgIFwKKyAg
ICAgICAgICAgIH0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICAgICAgZWxz
ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgICAgICB7ICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFwKKyAgICAgICAgICAgICAgICBtUmVuZGVyRW5jb2Rlci5kcmF3SW5zdGFu
Y2VkQmFzZUluc3RhbmNlKG10bFR5cGUsIGZpcnN0LCBjb3VudCwgaW5zdGFuY2VzLCAgICAgICAg
XAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgYmFzZUluc3RhbmNlKTsgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgICAg
ICB9ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKICAgICAgICAgfSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgXAogICAgIH0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBcCiAgICAgZWxzZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKQEAgLTY0
MSw4ICs3MTIsMTcgQEAgYW5nbGU6OlJlc3VsdCBDb250ZXh0TXRsOjpkcmF3QXJyYXlzUHJvdm9r
aW5nVmVydGV4SW1wbChjb25zdCBnbDo6Q29udGV4dCAqY29udGUKICAgICAgICAgfSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgICAgICBlbHNlICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBcCiAgICAgICAgIHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwK
LSAgICAgICAgICAgIG1SZW5kZXJFbmNvZGVyLmRyYXdJbmRleGVkSW5zdGFuY2VkKG10bFR5cGUs
IG91dEluZGV4Q291bnRpMzIsIG10bElkeFR5cGUsICAgICAgICAgICAgXAotICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZHJhd0lkeEJ1ZmZlciwgb3V0SW5k
ZXhPZmZzZXQsIGluc3RhbmNlcyk7ICAgICAgICBcCisgICAgICAgICAgICBpZiAoYmFzZUluc3Rh
bmNlID09IDApICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFwKKyAgICAgICAgICAgIHsgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgXAorICAgICAgICAgICAgICAgIG1SZW5kZXJFbmNvZGVyLmRyYXdJbmRleGVkSW5zdGFuY2Vk
KG10bFR5cGUsIG91dEluZGV4Q291bnRpMzIsIG10bElkeFR5cGUsICAgICAgICBcCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZHJhd0lkeEJ1ZmZl
ciwgb3V0SW5kZXhPZmZzZXQsIGluc3RhbmNlcyk7ICAgIFwKKyAgICAgICAgICAgIH0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICAgICAgZWxzZSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBcCisgICAgICAgICAgICB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAg
ICAgICAgICAgICAgICBtUmVuZGVyRW5jb2Rlci5kcmF3SW5kZXhlZEluc3RhbmNlZEJhc2VWZXJ0
ZXhCYXNlSW5zdGFuY2UoICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICAgICAgICAg
ICAgICBtdGxUeXBlLCBvdXRJbmRleENvdW50aTMyLCBtdGxJZHhUeXBlLCBkcmF3SWR4QnVmZmVy
LCBvdXRJbmRleE9mZnNldCwgICAgICAgICBcCisgICAgICAgICAgICAgICAgICAgIGluc3RhbmNl
cywgMCwgYmFzZUluc3RhbmNlKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFwKKyAgICAgICAgICAgIH0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
XAogICAgICAgICB9ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgfQogCkBA
IC02NTYsNyArNzM2LDkgQEAgYW5nbGU6OlJlc3VsdCBDb250ZXh0TXRsOjpkcmF3RWxlbWVudHNJ
bXBsKGNvbnN0IGdsOjpDb250ZXh0ICpjb250ZXh0LAogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgY291bnQsCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgZ2w6OkRyYXdFbGVtZW50c1R5cGUgdHlwZSwKICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB2b2lkICppbmRpY2VzLAot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgaW5zdGFu
Y2VzKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkg
aW5zdGFuY2VzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdM
aW50IGJhc2VWZXJ0ZXgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgR0x1aW50IGJhc2VJbnN0YW5jZSkKIHsKICAgICAvLyBSZWFsIGluc3RhbmNlcyBjb3VudC4g
WmVybyBtZWFucyB0aGlzIGlzIG5vdCBpbnN0YW5jZWQgZHJhdy4KICAgICBHTHNpemVpIGluc3Rh
bmNlQ291bnQgPSBpbnN0YW5jZXMgPyBpbnN0YW5jZXMgOiAxOwpAQCAtNjY4LDExICs3NTAsMTMg
QEAgYW5nbGU6OlJlc3VsdCBDb250ZXh0TXRsOjpkcmF3RWxlbWVudHNJbXBsKGNvbnN0IGdsOjpD
b250ZXh0ICpjb250ZXh0LAogCiAgICAgaWYgKG1vZGUgPT0gZ2w6OlByaW1pdGl2ZU1vZGU6OlRy
aWFuZ2xlRmFuKQogICAgIHsKLSAgICAgICAgcmV0dXJuIGRyYXdUcmlGYW5FbGVtZW50cyhjb250
ZXh0LCBjb3VudCwgdHlwZSwgaW5kaWNlcywgaW5zdGFuY2VDb3VudCk7CisgICAgICAgIHJldHVy
biBkcmF3VHJpRmFuRWxlbWVudHMoY29udGV4dCwgY291bnQsIHR5cGUsIGluZGljZXMsIGluc3Rh
bmNlQ291bnQsIGJhc2VWZXJ0ZXgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
YmFzZUluc3RhbmNlKTsKICAgICB9CiAgICAgZWxzZSBpZiAobW9kZSA9PSBnbDo6UHJpbWl0aXZl
TW9kZTo6TGluZUxvb3ApCiAgICAgewotICAgICAgICByZXR1cm4gZHJhd0xpbmVMb29wRWxlbWVu
dHMoY29udGV4dCwgY291bnQsIHR5cGUsIGluZGljZXMsIGluc3RhbmNlQ291bnQpOworICAgICAg
ICByZXR1cm4gZHJhd0xpbmVMb29wRWxlbWVudHMoY29udGV4dCwgY291bnQsIHR5cGUsIGluZGlj
ZXMsIGluc3RhbmNlQ291bnQsIGJhc2VWZXJ0ZXgsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBiYXNlSW5zdGFuY2UpOwogICAgIH0KIAogICAgIG10bDo6QnVmZmVyUmVmIGlk
eEJ1ZmZlcjsKQEAgLTcyNSw3ICs4MDksNyBAQCBhbmdsZTo6UmVzdWx0IENvbnRleHRNdGw6OmRy
YXdFbGVtZW50c0ltcGwoY29uc3QgZ2w6OkNvbnRleHQgKmNvbnRleHQsCiAKICAgICBNVExJbmRl
eFR5cGUgbXRsSWR4VHlwZSA9IG10bDo6R2V0SW5kZXhUeXBlKGNvbnZlcnRlZFR5cGUpOwogCi0g
ICAgaWYgKGluc3RhbmNlcyA9PSAwKQorICAgIGlmIChpbnN0YW5jZXMgPT0gMCAmJiBiYXNlVmVy
dGV4ID09IDAgJiYgYmFzZUluc3RhbmNlID09IDApCiAgICAgewogICAgICAgICAvLyBOb3JtYWwg
ZHJhdwogICAgICAgICBmb3IgKGF1dG8gJmNvbW1hbmQgOiBkcmF3Q29tbWFuZHMpCkBAIC03Mzcs
MTEgKzgyMSwyNCBAQCBhbmdsZTo6UmVzdWx0IENvbnRleHRNdGw6OmRyYXdFbGVtZW50c0ltcGwo
Y29uc3QgZ2w6OkNvbnRleHQgKmNvbnRleHQsCiAgICAgZWxzZQogICAgIHsKICAgICAgICAgLy8g
SW5zdGFuY2VkIGRyYXcKLSAgICAgICAgZm9yIChhdXRvICZjb21tYW5kIDogZHJhd0NvbW1hbmRz
KQorICAgICAgICBpZiAoYmFzZVZlcnRleCA9PSAwICYmIGJhc2VJbnN0YW5jZSA9PSAwKQorICAg
ICAgICB7CisgICAgICAgICAgICBmb3IgKGF1dG8gJmNvbW1hbmQgOiBkcmF3Q29tbWFuZHMpCisg
ICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgbVJlbmRlckVuY29kZXIuZHJhd0luZGV4ZWRJ
bnN0YW5jZWQoCisgICAgICAgICAgICAgICAgICAgIG10bFR5cGUsIGNvbW1hbmQuY291bnQsIG10
bElkeFR5cGUsIGRyYXdJZHhCdWZmZXIsCisgICAgICAgICAgICAgICAgICAgIGNvbW1hbmQub2Zm
c2V0ICsgcHJvdm9raW5nVmVydGV4QWRkaXRpb25hbE9mZnNldCwgaW5zdGFuY2VDb3VudCk7Cisg
ICAgICAgICAgICB9CisgICAgICAgIH0KKyAgICAgICAgZWxzZQogICAgICAgICB7Ci0gICAgICAg
ICAgICBtUmVuZGVyRW5jb2Rlci5kcmF3SW5kZXhlZEluc3RhbmNlZChtdGxUeXBlLCBjb21tYW5k
LmNvdW50LCBtdGxJZHhUeXBlLCBkcmF3SWR4QnVmZmVyLAotICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgY29tbWFuZC5vZmZzZXQgKyBwcm92b2tpbmdWZXJ0
ZXhBZGRpdGlvbmFsT2Zmc2V0LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgaW5zdGFuY2VDb3VudCk7CisgICAgICAgICAgICBmb3IgKGF1dG8gJmNvbW1h
bmQgOiBkcmF3Q29tbWFuZHMpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgbVJlbmRl
ckVuY29kZXIuZHJhd0luZGV4ZWRJbnN0YW5jZWRCYXNlVmVydGV4QmFzZUluc3RhbmNlKAorICAg
ICAgICAgICAgICAgICAgICBtdGxUeXBlLCBjb21tYW5kLmNvdW50LCBtdGxJZHhUeXBlLCBkcmF3
SWR4QnVmZmVyLAorICAgICAgICAgICAgICAgICAgICBjb21tYW5kLm9mZnNldCArIHByb3Zva2lu
Z1ZlcnRleEFkZGl0aW9uYWxPZmZzZXQsIGluc3RhbmNlQ291bnQsIGJhc2VWZXJ0ZXgsCisgICAg
ICAgICAgICAgICAgICAgIGJhc2VJbnN0YW5jZSk7CisgICAgICAgICAgICB9CiAgICAgICAgIH0K
ICAgICB9CiAgICAgcmV0dXJuIGFuZ2xlOjpSZXN1bHQ6OkNvbnRpbnVlOwpAQCAtNzUzLDcgKzg1
MCw3IEBAIGFuZ2xlOjpSZXN1bHQgQ29udGV4dE10bDo6ZHJhd0VsZW1lbnRzKGNvbnN0IGdsOjpD
b250ZXh0ICpjb250ZXh0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Z2w6OkRyYXdFbGVtZW50c1R5cGUgdHlwZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGNvbnN0IHZvaWQgKmluZGljZXMpCiB7Ci0gICAgcmV0dXJuIGRyYXdFbGVtZW50
c0ltcGwoY29udGV4dCwgbW9kZSwgY291bnQsIHR5cGUsIGluZGljZXMsIDApOworICAgIHJldHVy
biBkcmF3RWxlbWVudHNJbXBsKGNvbnRleHQsIG1vZGUsIGNvdW50LCB0eXBlLCBpbmRpY2VzLCAw
LCAwLCAwKTsKIH0KIAogYW5nbGU6OlJlc3VsdCBDb250ZXh0TXRsOjpkcmF3RWxlbWVudHNCYXNl
VmVydGV4KGNvbnN0IGdsOjpDb250ZXh0ICpjb250ZXh0LApAQCAtNzc0LDExICs4NzEsMTAgQEAg
YW5nbGU6OlJlc3VsdCBDb250ZXh0TXRsOjpkcmF3RWxlbWVudHNJbnN0YW5jZWQoY29uc3QgZ2w6
OkNvbnRleHQgKmNvbnRleHQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBjb25zdCB2b2lkICppbmRpY2VzLAogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBpbnN0YW5jZUNvdW50KQogewotICAgIGlm
IChpbnN0YW5jZUNvdW50ID09IDApCi0gICAgewotICAgICAgICByZXR1cm4gYW5nbGU6OlJlc3Vs
dDo6Q29udGludWU7Ci0gICAgfQotICAgIHJldHVybiBkcmF3RWxlbWVudHNJbXBsKGNvbnRleHQs
IG1vZGUsIGNvdW50LCB0eXBlLCBpbmRpY2VzLCBpbnN0YW5jZUNvdW50KTsKKyAgICAvLyBJbnN0
YW5jZWQgZHJhdyBjYWxscyB3aXRoIHplcm8gaW5zdGFuY2VzIGFyZSBza2lwcGVkIGluIHRoZSBm
cm9udGVuZC4KKyAgICAvLyBUaGUgZHJhd0VsZW1lbnRzSW1wbCBmdW5jdGlvbiB3b3VsZCB0cmVh
dCB0aGVtIGFzIG5vbi1pbnN0YW5jZWQuCisgICAgQVNTRVJUKGluc3RhbmNlQ291bnQgPiAwKTsK
KyAgICByZXR1cm4gZHJhd0VsZW1lbnRzSW1wbChjb250ZXh0LCBtb2RlLCBjb3VudCwgdHlwZSwg
aW5kaWNlcywgaW5zdGFuY2VDb3VudCwgMCwgMCk7CiB9CiAKIGFuZ2xlOjpSZXN1bHQgQ29udGV4
dE10bDo6ZHJhd0VsZW1lbnRzSW5zdGFuY2VkQmFzZVZlcnRleChjb25zdCBnbDo6Q29udGV4dCAq
Y29udGV4dCwKQEAgLTc4OSw5ICs4ODUsMTAgQEAgYW5nbGU6OlJlc3VsdCBDb250ZXh0TXRsOjpk
cmF3RWxlbWVudHNJbnN0YW5jZWRCYXNlVmVydGV4KGNvbnN0IGdsOjpDb250ZXh0ICpjb24KICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBH
THNpemVpIGluc3RhbmNlQ291bnQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgR0xpbnQgYmFzZVZlcnRleCkKIHsKLSAgICAvLyBOT1RF
KGhxbGUpOiBFUyAzLjIKLSAgICBVTklNUExFTUVOVEVEKCk7Ci0gICAgcmV0dXJuIGFuZ2xlOjpS
ZXN1bHQ6OlN0b3A7CisgICAgLy8gSW5zdGFuY2VkIGRyYXcgY2FsbHMgd2l0aCB6ZXJvIGluc3Rh
bmNlcyBhcmUgc2tpcHBlZCBpbiB0aGUgZnJvbnRlbmQuCisgICAgLy8gVGhlIGRyYXdFbGVtZW50
c0ltcGwgZnVuY3Rpb24gd291bGQgdHJlYXQgdGhlbSBhcyBub24taW5zdGFuY2VkLgorICAgIEFT
U0VSVChpbnN0YW5jZUNvdW50ID4gMCk7CisgICAgcmV0dXJuIGRyYXdFbGVtZW50c0ltcGwoY29u
dGV4dCwgbW9kZSwgY291bnQsIHR5cGUsIGluZGljZXMsIGluc3RhbmNlQ291bnQsIGJhc2VWZXJ0
ZXgsIDApOwogfQogCiBhbmdsZTo6UmVzdWx0IENvbnRleHRNdGw6OmRyYXdFbGVtZW50c0luc3Rh
bmNlZEJhc2VWZXJ0ZXhCYXNlSW5zdGFuY2UoY29uc3QgZ2w6OkNvbnRleHQgKmNvbnRleHQsCkBA
IC04MDMsOCArOTAwLDExIEBAIGFuZ2xlOjpSZXN1bHQgQ29udGV4dE10bDo6ZHJhd0VsZW1lbnRz
SW5zdGFuY2VkQmFzZVZlcnRleEJhc2VJbnN0YW5jZShjb25zdCBnbDo6CiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
R0xpbnQgYmFzZVZlcnRleCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVpbnQgYmFzZUluc3RhbmNlKQogewot
ICAgIFVOSU1QTEVNRU5URUQoKTsKLSAgICByZXR1cm4gYW5nbGU6OlJlc3VsdDo6U3RvcDsKKyAg
ICAvLyBJbnN0YW5jZWQgZHJhdyBjYWxscyB3aXRoIHplcm8gaW5zdGFuY2VzIGFyZSBza2lwcGVk
IGluIHRoZSBmcm9udGVuZC4KKyAgICAvLyBUaGUgZHJhd0VsZW1lbnRzSW1wbCBmdW5jdGlvbiB3
b3VsZCB0cmVhdCB0aGVtIGFzIG5vbi1pbnN0YW5jZWQuCisgICAgQVNTRVJUKGluc3RhbmNlcyA+
IDApOworICAgIHJldHVybiBkcmF3RWxlbWVudHNJbXBsKGNvbnRleHQsIG1vZGUsIGNvdW50LCB0
eXBlLCBpbmRpY2VzLCBpbnN0YW5jZXMsIGJhc2VWZXJ0ZXgsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgYmFzZUluc3RhbmNlKTsKIH0KIAogYW5nbGU6OlJlc3VsdCBDb250ZXh0TXRsOjpk
cmF3UmFuZ2VFbGVtZW50cyhjb25zdCBnbDo6Q29udGV4dCAqY29udGV4dCwKQEAgLTgxNSw3ICs5
MTUsNyBAQCBhbmdsZTo6UmVzdWx0IENvbnRleHRNdGw6OmRyYXdSYW5nZUVsZW1lbnRzKGNvbnN0
IGdsOjpDb250ZXh0ICpjb250ZXh0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBnbDo6RHJhd0VsZW1lbnRzVHlwZSB0eXBlLAogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB2b2lkICppbmRpY2VzKQogewotICAgIHJl
dHVybiBkcmF3RWxlbWVudHNJbXBsKGNvbnRleHQsIG1vZGUsIGNvdW50LCB0eXBlLCBpbmRpY2Vz
LCAwKTsKKyAgICByZXR1cm4gZHJhd0VsZW1lbnRzSW1wbChjb250ZXh0LCBtb2RlLCBjb3VudCwg
dHlwZSwgaW5kaWNlcywgMCwgMCwgMCk7CiB9CiAKIGFuZ2xlOjpSZXN1bHQgQ29udGV4dE10bDo6
ZHJhd1JhbmdlRWxlbWVudHNCYXNlVmVydGV4KGNvbnN0IGdsOjpDb250ZXh0ICpjb250ZXh0LApk
aWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVy
L21ldGFsL0Rpc3BsYXlNdGwubW0gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5H
TEUvcmVuZGVyZXIvbWV0YWwvRGlzcGxheU10bC5tbQppbmRleCA2NTUyNDMyYWIyZGVkNGMyMmNl
MDJiYjc1MGRlNDgxY2I3MTVmNmM1Li42NDk4YWY4OTFiMjE4MjY4NmRjNmYyOTY0ZGZiZGM2YjA2
ZmRjNDZkIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUv
cmVuZGVyZXIvbWV0YWwvRGlzcGxheU10bC5tbQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvRGlzcGxheU10bC5tbQpAQCAtOTg5LDYgKzk4
OSwxMCBAQCB2b2lkIERpc3BsYXlNdGw6OmluaXRpYWxpemVFeHRlbnNpb25zKCkgY29uc3QKIAog
ICAgIC8vIEdMX0tIUl9wYXJhbGxlbF9zaGFkZXJfY29tcGlsZQogICAgIG1OYXRpdmVFeHRlbnNp
b25zLnBhcmFsbGVsU2hhZGVyQ29tcGlsZUtIUiA9IHRydWU7CisKKyAgICBtTmF0aXZlRXh0ZW5z
aW9ucy5iYXNlVmVydGV4QmFzZUluc3RhbmNlQU5HTEUgPSBtRmVhdHVyZXMuaGFzQmFzZVZlcnRl
eEluc3RhbmNlZERyYXcuZW5hYmxlZDsKKyAgICBtTmF0aXZlRXh0ZW5zaW9ucy5iYXNlVmVydGV4
QmFzZUluc3RhbmNlU2hhZGVyQnVpbHRpbkFOR0xFID0KKyAgICAgICAgbUZlYXR1cmVzLmhhc0Jh
c2VWZXJ0ZXhJbnN0YW5jZWREcmF3LmVuYWJsZWQ7CiB9CiAKIHZvaWQgRGlzcGxheU10bDo6aW5p
dGlhbGl6ZVRleHR1cmVDYXBzKCkgY29uc3QKQEAgLTExMDYsNiArMTExMCw4IEBAIHZvaWQgRGlz
cGxheU10bDo6aW5pdGlhbGl6ZUZlYXR1cmVzKCkKICAgICBBTkdMRV9GRUFUVVJFX0NPTkRJVElP
TigoJm1GZWF0dXJlcyksIGludGVsRGlzYWJsZUZhc3RNYXRoLAogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGlzSW50ZWwoKSAmJiBHZXRNYWNPU1ZlcnNpb24oKSA8IE9TVmVyc2lvbigxMiwg
MCwgMCkpOwogCisgICAgQU5HTEVfRkVBVFVSRV9DT05ESVRJT04oKCZtRmVhdHVyZXMpLCBtdWx0
aXNhbXBsZUNvbG9yRm9ybWF0U2hhZGVyUmVhZFdvcmthcm91bmQsIGlzQU1EKCkpOworCiAgICAg
QU5HTEVfRkVBVFVSRV9DT05ESVRJT04oKCZtRmVhdHVyZXMpLCBmb3JjZU5vbkNTQmFzZU1pcG1h
cEdlbmVyYXRpb24sIGlzSW50ZWwoKSk7CiAKICAgICBib29sIGRlZmF1bHREaXJlY3RUb01ldGFs
ID0gdHJ1ZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdM
RS9yZW5kZXJlci9tZXRhbC9tdGxfY29tbWFuZF9idWZmZXIuaCBiL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9tdGxfY29tbWFuZF9idWZmZXIuaApp
bmRleCA5OGVhMjJhNmM1MTgzY2JlZTBjY2RhNDk2YWZmNGJiYmU2ZGVjMTY3Li4yMDBlMDI4MjM3
YzczZTQ4YWQwOWQ5MmI5YWI2MjIxMzBjZjg0NWVkIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX2NvbW1hbmRfYnVmZmVy
LmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21l
dGFsL210bF9jb21tYW5kX2J1ZmZlci5oCkBAIC04OSw3ICs4OSw2IEBAIGNsYXNzIENvbW1hbmRR
dWV1ZSBmaW5hbCA6IHB1YmxpYyBXcmFwcGVkT2JqZWN0PGlkPE1UTENvbW1hbmRRdWV1ZT4+LCBh
bmdsZTo6Tm9uCiAgICAgICAgIHVpbnQ2NF90IHNlcmlhbDsKICAgICB9OwogICAgIHN0ZDo6ZGVx
dWU8Q21kQnVmZmVyUXVldWVFbnRyeT4gbU1ldGFsQ21kQnVmZmVyczsKLSAgICBzdGQ6OmRlcXVl
PENtZEJ1ZmZlclF1ZXVlRW50cnk+IG1NZXRhbENtZEJ1ZmZlcnNUbXA7CiAKICAgICB1aW50NjRf
dCBtUXVldWVTZXJpYWxDb3VudGVyID0gMTsKICAgICBzdGQ6OmF0b21pYzx1aW50NjRfdD4gbUNv
bW1pdHRlZEJ1ZmZlclNlcmlhbHswfTsKQEAgLTQzNCw2ICs0MzMsMTEgQEAgY2xhc3MgUmVuZGVy
Q29tbWFuZEVuY29kZXIgZmluYWwgOiBwdWJsaWMgQ29tbWFuZEVuY29kZXIKICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCB2ZXJ0ZXhTdGFydCwKICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCB2ZXJ0ZXhDb3VudCwK
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBpbnN0YW5j
ZXMpOworICAgIFJlbmRlckNvbW1hbmRFbmNvZGVyICZkcmF3SW5zdGFuY2VkQmFzZUluc3RhbmNl
KE1UTFByaW1pdGl2ZVR5cGUgcHJpbWl0aXZlVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCB2ZXJ0ZXhTdGFydCwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCB2
ZXJ0ZXhDb3VudCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICB1aW50MzJfdCBpbnN0YW5jZXMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgYmFzZUluc3RhbmNlKTsKICAgICBSZW5k
ZXJDb21tYW5kRW5jb2RlciAmZHJhd0luZGV4ZWQoTVRMUHJpbWl0aXZlVHlwZSBwcmltaXRpdmVU
eXBlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBpbmRl
eENvdW50LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBNVExJbmRleFR5
cGUgaW5kZXhUeXBlLApAQCAtNDQ1LDEzICs0NDksMTQgQEAgY2xhc3MgUmVuZGVyQ29tbWFuZEVu
Y29kZXIgZmluYWwgOiBwdWJsaWMgQ29tbWFuZEVuY29kZXIKICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgQnVmZmVyUmVmICZpbmRleEJ1ZmZlciwK
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZV90IGJ1
ZmZlck9mZnNldCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgdWludDMyX3QgaW5zdGFuY2VzKTsKLSAgICBSZW5kZXJDb21tYW5kRW5jb2RlciAmZHJhd0lu
ZGV4ZWRJbnN0YW5jZWRCYXNlVmVydGV4KE1UTFByaW1pdGl2ZVR5cGUgcHJpbWl0aXZlVHlwZSwK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHVpbnQzMl90IGluZGV4Q291bnQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBNVExJbmRleFR5cGUgaW5kZXhUeXBlLAotICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgQnVm
ZmVyUmVmICZpbmRleEJ1ZmZlciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHNpemVfdCBidWZmZXJPZmZzZXQsCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBpbnN0
YW5jZXMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICB1aW50MzJfdCBiYXNlVmVydGV4KTsKKyAgICBSZW5kZXJDb21tYW5kRW5jb2RlciAm
ZHJhd0luZGV4ZWRJbnN0YW5jZWRCYXNlVmVydGV4QmFzZUluc3RhbmNlKE1UTFByaW1pdGl2ZVR5
cGUgcHJpbWl0aXZlVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IGluZGV4Q291bnQsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBNVExJbmRleFR5cGUgaW5kZXhUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgQnVmZmVy
UmVmICZpbmRleEJ1ZmZlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVfdCBidWZmZXJPZmZzZXQsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICB1aW50MzJfdCBpbnN0YW5jZXMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBiYXNlVmVy
dGV4LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgdWludDMyX3QgYmFzZUluc3RhbmNlKTsKIAogICAgIFJlbmRlckNv
bW1hbmRFbmNvZGVyICZzZXRWaXNpYmlsaXR5UmVzdWx0TW9kZShNVExWaXNpYmlsaXR5UmVzdWx0
TW9kZSBtb2RlLCBzaXplX3Qgb2Zmc2V0KTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF9jb21tYW5kX2J1ZmZlci5t
bSBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9t
dGxfY29tbWFuZF9idWZmZXIubW0KaW5kZXggZGMzYzJlYmM3Yjc4ODQwZDNiOGY4NjhhMzRiZTJm
MThhMGNkYjBmMS4uNDRiZjM0MGM5ZjBmNTAyZDVjNzY5NDJmNDg4YzVkNGNlOWUyNmIxYiAxMDA2
NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21l
dGFsL210bF9jb21tYW5kX2J1ZmZlci5tbQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9z
cmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX2NvbW1hbmRfYnVmZmVyLm1tCkBAIC0zOCwz
OCArMzgsMzkgQEAgbmFtZXNwYWNlIG10bAogbmFtZXNwYWNlCiB7CiAKLSNkZWZpbmUgQU5HTEVf
TVRMX0NNRF9YKFBST0MpICAgICAgICAgICAgXAotICAgIFBST0MoSW52YWxpZCkgICAgICAgICAg
ICAgICAgICAgICAgICBcCi0gICAgUFJPQyhTZXRSZW5kZXJQaXBlbGluZVN0YXRlKSAgICAgICAg
IFwKLSAgICBQUk9DKFNldFRyaWFuZ2xlRmlsbE1vZGUpICAgICAgICAgICAgXAotICAgIFBST0Mo
U2V0RnJvbnRGYWNpbmdXaW5kaW5nKSAgICAgICAgICBcCi0gICAgUFJPQyhTZXRDdWxsTW9kZSkg
ICAgICAgICAgICAgICAgICAgIFwKLSAgICBQUk9DKFNldERlcHRoU3RlbmNpbFN0YXRlKSAgICAg
ICAgICAgXAotICAgIFBST0MoU2V0RGVwdGhCaWFzKSAgICAgICAgICAgICAgICAgICBcCi0gICAg
UFJPQyhTZXRTdGVuY2lsUmVmVmFscykgICAgICAgICAgICAgIFwKLSAgICBQUk9DKFNldFZpZXdw
b3J0KSAgICAgICAgICAgICAgICAgICAgXAotICAgIFBST0MoU2V0U2Npc3NvclJlY3QpICAgICAg
ICAgICAgICAgICBcCi0gICAgUFJPQyhTZXRCbGVuZENvbG9yKSAgICAgICAgICAgICAgICAgIFwK
LSAgICBQUk9DKFNldFZlcnRleEJ1ZmZlcikgICAgICAgICAgICAgICAgXAotICAgIFBST0MoU2V0
VmVydGV4QnVmZmVyT2Zmc2V0KSAgICAgICAgICBcCi0gICAgUFJPQyhTZXRWZXJ0ZXhCeXRlcykg
ICAgICAgICAgICAgICAgIFwKLSAgICBQUk9DKFNldFZlcnRleFNhbXBsZXJTdGF0ZSkgICAgICAg
ICAgXAotICAgIFBST0MoU2V0VmVydGV4VGV4dHVyZSkgICAgICAgICAgICAgICBcCi0gICAgUFJP
QyhTZXRGcmFnbWVudEJ1ZmZlcikgICAgICAgICAgICAgIFwKLSAgICBQUk9DKFNldEZyYWdtZW50
QnVmZmVyT2Zmc2V0KSAgICAgICAgXAotICAgIFBST0MoU2V0RnJhZ21lbnRCeXRlcykgICAgICAg
ICAgICAgICBcCi0gICAgUFJPQyhTZXRGcmFnbWVudFNhbXBsZXJTdGF0ZSkgICAgICAgIFwKLSAg
ICBQUk9DKFNldEZyYWdtZW50VGV4dHVyZSkgICAgICAgICAgICAgXAotICAgIFBST0MoRHJhdykg
ICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0gICAgUFJPQyhEcmF3SW5zdGFuY2VkKSAgICAg
ICAgICAgICAgICAgIFwKLSAgICBQUk9DKERyYXdJbmRleGVkKSAgICAgICAgICAgICAgICAgICAg
XAotICAgIFBST0MoRHJhd0luZGV4ZWRJbnN0YW5jZWQpICAgICAgICAgICBcCi0gICAgUFJPQyhE
cmF3SW5kZXhlZEluc3RhbmNlZEJhc2VWZXJ0ZXgpIFwKLSAgICBQUk9DKFNldFZpc2liaWxpdHlS
ZXN1bHRNb2RlKSAgICAgICAgXAotICAgIFBST0MoVXNlUmVzb3VyY2UpICAgICAgICAgICAgICAg
ICAgICBcCi0gICAgUFJPQyhNZW1vcnlCYXJyaWVyV2l0aFJlc291cmNlKSAgICAgIFwKLSAgICBQ
Uk9DKEluc2VydERlYnVnc2lnbikgICAgICAgICAgICAgICAgXAotICAgIFBST0MoUHVzaERlYnVn
R3JvdXApICAgICAgICAgICAgICAgICBcCisjZGVmaW5lIEFOR0xFX01UTF9DTURfWChQUk9DKSAg
ICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICBQUk9DKEludmFsaWQpICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgXAorICAgIFBST0MoU2V0UmVuZGVyUGlwZWxpbmVTdGF0ZSkg
ICAgICAgICAgICAgICAgICAgICBcCisgICAgUFJPQyhTZXRUcmlhbmdsZUZpbGxNb2RlKSAgICAg
ICAgICAgICAgICAgICAgICAgIFwKKyAgICBQUk9DKFNldEZyb250RmFjaW5nV2luZGluZykgICAg
ICAgICAgICAgICAgICAgICAgXAorICAgIFBST0MoU2V0Q3VsbE1vZGUpICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBcCisgICAgUFJPQyhTZXREZXB0aFN0ZW5jaWxTdGF0ZSkgICAgICAg
ICAgICAgICAgICAgICAgIFwKKyAgICBQUk9DKFNldERlcHRoQmlhcykgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgXAorICAgIFBST0MoU2V0U3RlbmNpbFJlZlZhbHMpICAgICAgICAgICAg
ICAgICAgICAgICAgICBcCisgICAgUFJPQyhTZXRWaWV3cG9ydCkgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFwKKyAgICBQUk9DKFNldFNjaXNzb3JSZWN0KSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgXAorICAgIFBST0MoU2V0QmxlbmRDb2xvcikgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBcCisgICAgUFJPQyhTZXRWZXJ0ZXhCdWZmZXIpICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFwKKyAgICBQUk9DKFNldFZlcnRleEJ1ZmZlck9mZnNldCkgICAgICAgICAgICAg
ICAgICAgICAgXAorICAgIFBST0MoU2V0VmVydGV4Qnl0ZXMpICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBcCisgICAgUFJPQyhTZXRWZXJ0ZXhTYW1wbGVyU3RhdGUpICAgICAgICAgICAgICAg
ICAgICAgIFwKKyAgICBQUk9DKFNldFZlcnRleFRleHR1cmUpICAgICAgICAgICAgICAgICAgICAg
ICAgICAgXAorICAgIFBST0MoU2V0RnJhZ21lbnRCdWZmZXIpICAgICAgICAgICAgICAgICAgICAg
ICAgICBcCisgICAgUFJPQyhTZXRGcmFnbWVudEJ1ZmZlck9mZnNldCkgICAgICAgICAgICAgICAg
ICAgIFwKKyAgICBQUk9DKFNldEZyYWdtZW50Qnl0ZXMpICAgICAgICAgICAgICAgICAgICAgICAg
ICAgXAorICAgIFBST0MoU2V0RnJhZ21lbnRTYW1wbGVyU3RhdGUpICAgICAgICAgICAgICAgICAg
ICBcCisgICAgUFJPQyhTZXRGcmFnbWVudFRleHR1cmUpICAgICAgICAgICAgICAgICAgICAgICAg
IFwKKyAgICBQUk9DKERyYXcpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
XAorICAgIFBST0MoRHJhd0luc3RhbmNlZCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBc
CisgICAgUFJPQyhEcmF3SW5zdGFuY2VkQmFzZUluc3RhbmNlKSAgICAgICAgICAgICAgICAgIFwK
KyAgICBQUk9DKERyYXdJbmRleGVkKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAor
ICAgIFBST0MoRHJhd0luZGV4ZWRJbnN0YW5jZWQpICAgICAgICAgICAgICAgICAgICAgICBcCisg
ICAgUFJPQyhEcmF3SW5kZXhlZEluc3RhbmNlZEJhc2VWZXJ0ZXhCYXNlSW5zdGFuY2UpIFwKKyAg
ICBQUk9DKFNldFZpc2liaWxpdHlSZXN1bHRNb2RlKSAgICAgICAgICAgICAgICAgICAgXAorICAg
IFBST0MoVXNlUmVzb3VyY2UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAg
UFJPQyhNZW1vcnlCYXJyaWVyV2l0aFJlc291cmNlKSAgICAgICAgICAgICAgICAgIFwKKyAgICBQ
Uk9DKEluc2VydERlYnVnc2lnbikgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgIFBS
T0MoUHVzaERlYnVnR3JvdXApICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgUFJP
QyhQb3BEZWJ1Z0dyb3VwKQogCiAjZGVmaW5lIEFOR0xFX01UTF9UWVBFX0RFQ0woQ01EKSBDTUQs
CkBAIC0yNzIsNiArMjczLDIxIEBAIHZvaWQgRHJhd0luc3RhbmNlZENtZChpZDxNVExSZW5kZXJD
b21tYW5kRW5jb2Rlcj4gZW5jb2RlciwgSW50ZXJtZWRpYXRlQ29tbWFuZFN0CiAgICAgICAgICAg
ICAgIGluc3RhbmNlQ291bnQ6aW5zdGFuY2VzXTsKIH0KIAordm9pZCBEcmF3SW5zdGFuY2VkQmFz
ZUluc3RhbmNlQ21kKGlkPE1UTFJlbmRlckNvbW1hbmRFbmNvZGVyPiBlbmNvZGVyLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIEludGVybWVkaWF0ZUNvbW1hbmRTdHJlYW0gKnN0
cmVhbSkKK3sKKyAgICBNVExQcmltaXRpdmVUeXBlIHByaW1pdGl2ZVR5cGUgPSBzdHJlYW0tPmZl
dGNoPE1UTFByaW1pdGl2ZVR5cGU+KCk7CisgICAgdWludDMyX3QgdmVydGV4U3RhcnQgICAgICAg
ICAgID0gc3RyZWFtLT5mZXRjaDx1aW50MzJfdD4oKTsKKyAgICB1aW50MzJfdCB2ZXJ0ZXhDb3Vu
dCAgICAgICAgICAgPSBzdHJlYW0tPmZldGNoPHVpbnQzMl90PigpOworICAgIHVpbnQzMl90IGlu
c3RhbmNlcyAgICAgICAgICAgICA9IHN0cmVhbS0+ZmV0Y2g8dWludDMyX3Q+KCk7CisgICAgdWlu
dDMyX3QgYmFzZUluc3RhbmNlICAgICAgICAgID0gc3RyZWFtLT5mZXRjaDx1aW50MzJfdD4oKTsK
KyAgICBbZW5jb2RlciBkcmF3UHJpbWl0aXZlczpwcmltaXRpdmVUeXBlCisgICAgICAgICAgICAg
ICAgdmVydGV4U3RhcnQ6dmVydGV4U3RhcnQKKyAgICAgICAgICAgICAgICB2ZXJ0ZXhDb3VudDp2
ZXJ0ZXhDb3VudAorICAgICAgICAgICAgICBpbnN0YW5jZUNvdW50Omluc3RhbmNlcworICAgICAg
ICAgICAgICAgYmFzZUluc3RhbmNlOmJhc2VJbnN0YW5jZV07Cit9CisKIHZvaWQgRHJhd0luZGV4
ZWRDbWQoaWQ8TVRMUmVuZGVyQ29tbWFuZEVuY29kZXI+IGVuY29kZXIsIEludGVybWVkaWF0ZUNv
bW1hbmRTdHJlYW0gKnN0cmVhbSkKIHsKICAgICBNVExQcmltaXRpdmVUeXBlIHByaW1pdGl2ZVR5
cGUgPSBzdHJlYW0tPmZldGNoPE1UTFByaW1pdGl2ZVR5cGU+KCk7CkBAIC0zMDQsOCArMzIwLDgg
QEAgdm9pZCBEcmF3SW5kZXhlZEluc3RhbmNlZENtZChpZDxNVExSZW5kZXJDb21tYW5kRW5jb2Rl
cj4gZW5jb2RlciwgSW50ZXJtZWRpYXRlQ28KICAgICBbaW5kZXhCdWZmZXIgQU5HTEVfTVRMX1JF
TEVBU0VdOwogfQogCi12b2lkIERyYXdJbmRleGVkSW5zdGFuY2VkQmFzZVZlcnRleENtZChpZDxN
VExSZW5kZXJDb21tYW5kRW5jb2Rlcj4gZW5jb2RlciwKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIEludGVybWVkaWF0ZUNvbW1hbmRTdHJlYW0gKnN0cmVhbSkKK3ZvaWQg
RHJhd0luZGV4ZWRJbnN0YW5jZWRCYXNlVmVydGV4QmFzZUluc3RhbmNlQ21kKGlkPE1UTFJlbmRl
ckNvbW1hbmRFbmNvZGVyPiBlbmNvZGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgSW50ZXJtZWRpYXRlQ29tbWFuZFN0cmVhbSAqc3RyZWFtKQog
ewogICAgIE1UTFByaW1pdGl2ZVR5cGUgcHJpbWl0aXZlVHlwZSA9IHN0cmVhbS0+ZmV0Y2g8TVRM
UHJpbWl0aXZlVHlwZT4oKTsKICAgICB1aW50MzJfdCBpbmRleENvdW50ICAgICAgICAgICAgPSBz
dHJlYW0tPmZldGNoPHVpbnQzMl90PigpOwpAQCAtMzE0LDYgKzMzMCw3IEBAIHZvaWQgRHJhd0lu
ZGV4ZWRJbnN0YW5jZWRCYXNlVmVydGV4Q21kKGlkPE1UTFJlbmRlckNvbW1hbmRFbmNvZGVyPiBl
bmNvZGVyLAogICAgIHNpemVfdCBidWZmZXJPZmZzZXQgICAgICAgICAgICA9IHN0cmVhbS0+ZmV0
Y2g8c2l6ZV90PigpOwogICAgIHVpbnQzMl90IGluc3RhbmNlcyAgICAgICAgICAgICA9IHN0cmVh
bS0+ZmV0Y2g8dWludDMyX3Q+KCk7CiAgICAgdWludDMyX3QgYmFzZVZlcnRleCAgICAgICAgICAg
ID0gc3RyZWFtLT5mZXRjaDx1aW50MzJfdD4oKTsKKyAgICB1aW50MzJfdCBiYXNlSW5zdGFuY2Ug
ICAgICAgICAgPSBzdHJlYW0tPmZldGNoPHVpbnQzMl90PigpOwogICAgIFtlbmNvZGVyIGRyYXdJ
bmRleGVkUHJpbWl0aXZlczpwcmltaXRpdmVUeXBlCiAgICAgICAgICAgICAgICAgICAgICAgICBp
bmRleENvdW50OmluZGV4Q291bnQKICAgICAgICAgICAgICAgICAgICAgICAgICBpbmRleFR5cGU6
aW5kZXhUeXBlCkBAIC0zMjEsNyArMzM4LDcgQEAgdm9pZCBEcmF3SW5kZXhlZEluc3RhbmNlZEJh
c2VWZXJ0ZXhDbWQoaWQ8TVRMUmVuZGVyQ29tbWFuZEVuY29kZXI+IGVuY29kZXIsCiAgICAgICAg
ICAgICAgICAgIGluZGV4QnVmZmVyT2Zmc2V0OmJ1ZmZlck9mZnNldAogICAgICAgICAgICAgICAg
ICAgICAgaW5zdGFuY2VDb3VudDppbnN0YW5jZXMKICAgICAgICAgICAgICAgICAgICAgICAgIGJh
c2VWZXJ0ZXg6YmFzZVZlcnRleAotICAgICAgICAgICAgICAgICAgICAgIGJhc2VJbnN0YW5jZTow
XTsKKyAgICAgICAgICAgICAgICAgICAgICBiYXNlSW5zdGFuY2U6YmFzZUluc3RhbmNlXTsKICAg
ICBbaW5kZXhCdWZmZXIgQU5HTEVfTVRMX1JFTEVBU0VdOwogfQogCkBAIC00MjUsMjQgKzQ0Miwx
NSBAQCB2b2lkIENvbW1hbmRRdWV1ZTo6c2V0KGlkPE1UTENvbW1hbmRRdWV1ZT4gbWV0YWxRdWV1
ZSkKIAogdm9pZCBDb21tYW5kUXVldWU6OmZpbmlzaEFsbENvbW1hbmRzKCkKIHsKKyAgICBzdGQ6
OmRlcXVlPENtZEJ1ZmZlclF1ZXVlRW50cnk+IGNvbW1hbmRCdWZmZXJzOwogICAgIHsKLSAgICAg
ICAgLy8gQ29weSB0byB0ZW1wIGxpc3QKICAgICAgICAgc3RkOjpsb2NrX2d1YXJkPHN0ZDo6bXV0
ZXg+IGxnKG1Mb2NrKTsKLQotICAgICAgICBmb3IgKENtZEJ1ZmZlclF1ZXVlRW50cnkgJm1ldGFs
QnVmZmVyRW50cnkgOiBtTWV0YWxDbWRCdWZmZXJzKQotICAgICAgICB7Ci0gICAgICAgICAgICBt
TWV0YWxDbWRCdWZmZXJzVG1wLnB1c2hfYmFjayhtZXRhbEJ1ZmZlckVudHJ5KTsKLSAgICAgICAg
fQotCi0gICAgICAgIG1NZXRhbENtZEJ1ZmZlcnMuY2xlYXIoKTsKKyAgICAgICAgbU1ldGFsQ21k
QnVmZmVycy5zd2FwKGNvbW1hbmRCdWZmZXJzKTsKICAgICB9Ci0KLSAgICAvLyBXYWl0IGZvciBj
b21tYW5kIGJ1ZmZlcnMgdG8gZmluaXNoCi0gICAgZm9yIChDbWRCdWZmZXJRdWV1ZUVudHJ5ICZt
ZXRhbEJ1ZmZlckVudHJ5IDogbU1ldGFsQ21kQnVmZmVyc1RtcCkKKyAgICBmb3IgKENtZEJ1ZmZl
clF1ZXVlRW50cnkgJmVudHJ5IDogY29tbWFuZEJ1ZmZlcnMpCiAgICAgewotICAgICAgICBbbWV0
YWxCdWZmZXJFbnRyeS5idWZmZXIgd2FpdFVudGlsQ29tcGxldGVkXTsKKyAgICAgICAgW2VudHJ5
LmJ1ZmZlciB3YWl0VW50aWxDb21wbGV0ZWRdOwogICAgIH0KLSAgICBtTWV0YWxDbWRCdWZmZXJz
VG1wLmNsZWFyKCk7CiB9CiAKIHZvaWQgQ29tbWFuZFF1ZXVlOjplbnN1cmVSZXNvdXJjZVJlYWR5
Rm9yQ1BVKGNvbnN0IFJlc291cmNlUmVmICZyZXNvdXJjZSkKQEAgLTE2ODUsNiArMTY5MywyNiBA
QCBSZW5kZXJDb21tYW5kRW5jb2RlciAmUmVuZGVyQ29tbWFuZEVuY29kZXI6OmRyYXdJbnN0YW5j
ZWQoTVRMUHJpbWl0aXZlVHlwZSBwcmltaQogICAgIHJldHVybiAqdGhpczsKIH0KIAorUmVuZGVy
Q29tbWFuZEVuY29kZXIgJlJlbmRlckNvbW1hbmRFbmNvZGVyOjpkcmF3SW5zdGFuY2VkQmFzZUlu
c3RhbmNlKAorICAgIE1UTFByaW1pdGl2ZVR5cGUgcHJpbWl0aXZlVHlwZSwKKyAgICB1aW50MzJf
dCB2ZXJ0ZXhTdGFydCwKKyAgICB1aW50MzJfdCB2ZXJ0ZXhDb3VudCwKKyAgICB1aW50MzJfdCBp
bnN0YW5jZXMsCisgICAgdWludDMyX3QgYmFzZUluc3RhbmNlKQoreworICAgIEFTU0VSVChtUGlw
ZWxpbmVTdGF0ZVNldCAmJgorICAgICAgICAgICAiUmVuZGVyIFBpcGVsaW5lIFN0YXRlIHdhcyBu
ZXZlciBzZXQgYW5kIHdlJ3ZlIGlzc3VlZCBhIGRyYXcgY29tbWFuZC4iKTsKKyAgICBtSGFzRHJh
d0NhbGxzID0gdHJ1ZTsKKyAgICBtQ29tbWFuZHMucHVzaChDbWRUeXBlOjpEcmF3SW5zdGFuY2Vk
QmFzZUluc3RhbmNlKQorICAgICAgICAucHVzaChwcmltaXRpdmVUeXBlKQorICAgICAgICAucHVz
aCh2ZXJ0ZXhTdGFydCkKKyAgICAgICAgLnB1c2godmVydGV4Q291bnQpCisgICAgICAgIC5wdXNo
KGluc3RhbmNlcykKKyAgICAgICAgLnB1c2goYmFzZUluc3RhbmNlKTsKKworICAgIHJldHVybiAq
dGhpczsKK30KKwogUmVuZGVyQ29tbWFuZEVuY29kZXIgJlJlbmRlckNvbW1hbmRFbmNvZGVyOjpk
cmF3SW5kZXhlZChNVExQcmltaXRpdmVUeXBlIHByaW1pdGl2ZVR5cGUsCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IGluZGV4
Q291bnQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIE1UTEluZGV4VHlwZSBpbmRleFR5cGUsCkBAIC0xNzM5LDE0ICsxNzY3LDE1IEBAIFJl
bmRlckNvbW1hbmRFbmNvZGVyICZSZW5kZXJDb21tYW5kRW5jb2Rlcjo6ZHJhd0luZGV4ZWRJbnN0
YW5jZWQoTVRMUHJpbWl0aXZlVHlwCiAgICAgcmV0dXJuICp0aGlzOwogfQogCi1SZW5kZXJDb21t
YW5kRW5jb2RlciAmUmVuZGVyQ29tbWFuZEVuY29kZXI6OmRyYXdJbmRleGVkSW5zdGFuY2VkQmFz
ZVZlcnRleCgKK1JlbmRlckNvbW1hbmRFbmNvZGVyICZSZW5kZXJDb21tYW5kRW5jb2Rlcjo6ZHJh
d0luZGV4ZWRJbnN0YW5jZWRCYXNlVmVydGV4QmFzZUluc3RhbmNlKAogICAgIE1UTFByaW1pdGl2
ZVR5cGUgcHJpbWl0aXZlVHlwZSwKICAgICB1aW50MzJfdCBpbmRleENvdW50LAogICAgIE1UTElu
ZGV4VHlwZSBpbmRleFR5cGUsCiAgICAgY29uc3QgQnVmZmVyUmVmICZpbmRleEJ1ZmZlciwKICAg
ICBzaXplX3QgYnVmZmVyT2Zmc2V0LAogICAgIHVpbnQzMl90IGluc3RhbmNlcywKLSAgICB1aW50
MzJfdCBiYXNlVmVydGV4KQorICAgIHVpbnQzMl90IGJhc2VWZXJ0ZXgsCisgICAgdWludDMyX3Qg
YmFzZUluc3RhbmNlKQogewogICAgIEFTU0VSVChtUGlwZWxpbmVTdGF0ZVNldCAmJgogICAgICAg
ICAgICAiUmVuZGVyIFBpcGVsaW5lIFN0YXRlIHdhcyBuZXZlciBzZXQgYW5kIHdlJ3ZlIGlzc3Vl
ZCBhIGRyYXcgY29tbWFuZC4iKTsKQEAgLTE3NTgsMTQgKzE3ODcsMTUgQEAgUmVuZGVyQ29tbWFu
ZEVuY29kZXIgJlJlbmRlckNvbW1hbmRFbmNvZGVyOjpkcmF3SW5kZXhlZEluc3RhbmNlZEJhc2VW
ZXJ0ZXgoCiAgICAgbUhhc0RyYXdDYWxscyA9IHRydWU7CiAgICAgY21kQnVmZmVyKCkuc2V0UmVh
ZERlcGVuZGVuY3koaW5kZXhCdWZmZXIpOwogCi0gICAgbUNvbW1hbmRzLnB1c2goQ21kVHlwZTo6
RHJhd0luZGV4ZWRJbnN0YW5jZWRCYXNlVmVydGV4KQorICAgIG1Db21tYW5kcy5wdXNoKENtZFR5
cGU6OkRyYXdJbmRleGVkSW5zdGFuY2VkQmFzZVZlcnRleEJhc2VJbnN0YW5jZSkKICAgICAgICAg
LnB1c2gocHJpbWl0aXZlVHlwZSkKICAgICAgICAgLnB1c2goaW5kZXhDb3VudCkKICAgICAgICAg
LnB1c2goaW5kZXhUeXBlKQogICAgICAgICAucHVzaChbaW5kZXhCdWZmZXItPmdldCgpIEFOR0xF
X01UTF9SRVRBSU5dKQogICAgICAgICAucHVzaChidWZmZXJPZmZzZXQpCiAgICAgICAgIC5wdXNo
KGluc3RhbmNlcykKLSAgICAgICAgLnB1c2goYmFzZVZlcnRleCk7CisgICAgICAgIC5wdXNoKGJh
c2VWZXJ0ZXgpCisgICAgICAgIC5wdXNoKGJhc2VJbnN0YW5jZSk7CiAKICAgICByZXR1cm4gKnRo
aXM7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUv
cmVuZGVyZXIvbWV0YWwvbXRsX3Jlc291cmNlcy5tbSBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9tdGxfcmVzb3VyY2VzLm1tCmluZGV4IDBmOWI1
M2I2ZDJlMDg2ZTA2ODliNmJmNjIyMjhlMTRkOGU3ZjZhMzUuLjdlYmYzMTY5MDA1NWZkMzg0Njdm
ZWI5OWM0ZTEyYjgwMWQ3ZDFjZTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9tdGxfcmVzb3VyY2VzLm1tCisrKyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9tdGxfcmVzb3Vy
Y2VzLm1tCkBAIC0zMzcsNiArMzM3LDE1IEBAIGFuZ2xlOjpSZXN1bHQgVGV4dHVyZTo6TWFrZVRl
eHR1cmUoQ29udGV4dE10bCAqY29udGV4dCwKICAgICByZXR1cm4gYW5nbGU6OlJlc3VsdDo6Q29u
dGludWU7CiB9CiAKK2Jvb2wgbmVlZE11bHRpc2FtcGxlQ29sb3JGb3JtYXRTaGFkZXJSZWFkV29y
a2Fyb3VuZChDb250ZXh0TXRsICpjb250ZXh0LCBNVExUZXh0dXJlRGVzY3JpcHRvciAqZGVzYykK
K3sKKyAgICByZXR1cm4gZGVzYy5zYW1wbGVDb3VudCA+IDEgJiYKKyAgICAgICAgICAgY29udGV4
dC0+Z2V0RGlzcGxheSgpCisgICAgICAgICAgICAgICAtPmdldEZlYXR1cmVzKCkKKyAgICAgICAg
ICAgICAgIC5tdWx0aXNhbXBsZUNvbG9yRm9ybWF0U2hhZGVyUmVhZFdvcmthcm91bmQuZW5hYmxl
ZCAmJgorICAgICAgICAgICBjb250ZXh0LT5nZXROYXRpdmVGb3JtYXRDYXBzKGRlc2MucGl4ZWxG
b3JtYXQpLmNvbG9yUmVuZGVyYWJsZTsKK30KKwogLyoqIHN0YXRpYyAqLwogVGV4dHVyZVJlZiBU
ZXh0dXJlOjpNYWtlRnJvbU1ldGFsKGlkPE1UTFRleHR1cmU+IG1ldGFsVGV4dHVyZSkKIHsKQEAg
LTM5Nyw3ICs0MDYsNyBAQCBUZXh0dXJlOjpUZXh0dXJlKENvbnRleHRNdGwgKmNvbnRleHQsCiAg
ICAgICAgICAgICBkZXNjLnJlc291cmNlT3B0aW9ucyA9IE1UTFJlc291cmNlU3RvcmFnZU1vZGVQ
cml2YXRlOwogICAgICAgICB9CiAKLSAgICAgICAgaWYgKCFyZW5kZXJUYXJnZXRPbmx5KQorICAg
ICAgICBpZiAoIXJlbmRlclRhcmdldE9ubHkgfHwgbmVlZE11bHRpc2FtcGxlQ29sb3JGb3JtYXRT
aGFkZXJSZWFkV29ya2Fyb3VuZChjb250ZXh0LCBkZXNjKSkKICAgICAgICAgewogICAgICAgICAg
ICAgZGVzYy51c2FnZSA9IGRlc2MudXNhZ2UgfCBNVExUZXh0dXJlVXNhZ2VTaGFkZXJSZWFkOwog
ICAgICAgICAgICAgaWYgKGNvbnRleHQtPmdldE5hdGl2ZUZvcm1hdENhcHMoZGVzYy5waXhlbEZv
cm1hdCkud3JpdGFibGUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
bGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvc2hhZGVycy9jcmVhdGVfbXRsX2ludGVybmFsX3NoYWRl
cnMucHkgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0
YWwvc2hhZGVycy9jcmVhdGVfbXRsX2ludGVybmFsX3NoYWRlcnMucHkKaW5kZXggZGE3NDU3Y2I4
NTdhNmMyMGM1YTY4ZjkzMGQ2YzhiOGExNDk5MTlkYy4uNGViZTk5MjY2NjA5YjZhMDhhNjE0OTMx
NDlhOWQwMjEyMWZiZjAzMyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3Jj
L2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL3NoYWRlcnMvY3JlYXRlX210bF9pbnRlcm5hbF9zaGFk
ZXJzLnB5CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJl
ci9tZXRhbC9zaGFkZXJzL2NyZWF0ZV9tdGxfaW50ZXJuYWxfc2hhZGVycy5weQpAQCAtMSw0ICsx
LDQgQEAKLSMhL3Vzci9iaW4vcHl0aG9uCisjIS91c3IvYmluL3B5dGhvbjMKICMgQ29weXJpZ2h0
IDIwMjEgVGhlIEFOR0xFIFByb2plY3QgQXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICMg
VXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUgbGljZW5z
ZSB0aGF0IGNhbiBiZQogIyBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgpkaWZmIC0tZ2l0IGEv
U291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9Db250
ZXh0VmsuY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVy
L3Z1bGthbi9Db250ZXh0VmsuY3BwCmluZGV4IGNlYjgzOWU0YjdiODZjYTdmMWQ1OWE2NGE0MjRk
MTU2ZDJiNGE5ZWMuLjQ3NTgwNjJhZGQzNTIwNGY0N2ZjMzIyZTM3ZmI1MzMzYTU3YTUxNzEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci92
dWxrYW4vQ29udGV4dFZrLmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGli
QU5HTEUvcmVuZGVyZXIvdnVsa2FuL0NvbnRleHRWay5jcHAKQEAgLTYwNyw5ICs2MDcsMTcgQEAg
Y29uc3RleHByIGFuZ2xlOjpQYWNrZWRFbnVtTWFwPFJlbmRlclBhc3NDbG9zdXJlUmVhc29uLCBj
b25zdCBjaGFyICo+IGtSZW5kZXJQYXMKICAgICAgIlRlbXBvcmFyeSByZW5kZXIgcGFzcyB1c2Vk
IGZvciBpbWFnZSBjb3B5IGNsb3NlZCJ9LAogICAgIHtSZW5kZXJQYXNzQ2xvc3VyZVJlYXNvbjo6
VGVtcG9yYXJ5Rm9yT3ZlcmxheURyYXcsCiAgICAgICJUZW1wb3JhcnkgcmVuZGVyIHBhc3MgdXNl
ZCBmb3Igb3ZlcmxheSBkcmF3IGNsb3NlZCJ9LAotICAgIHtSZW5kZXJQYXNzQ2xvc3VyZVJlYXNv
bjo6T3ZlcmxheUZvbnRDcmVhdGlvbiwKLSAgICAgIlJlbmRlciBwYXNzIGNsb3NlZCBkdWUgdG8g
Y3JlYXRpbmcgT3ZlcmxheSBmb250In0sCiB9fTsKKworVmtEZXBlbmRlbmN5RmxhZ3MgR2V0TG9j
YWxEZXBlbmRlbmN5RmxhZ3MoQ29udGV4dFZrICpjb250ZXh0VmspCit7CisgICAgVmtEZXBlbmRl
bmN5RmxhZ3MgZGVwZW5kZW5jeUZsYWdzID0gVktfREVQRU5ERU5DWV9CWV9SRUdJT05fQklUOwor
ICAgIGlmIChjb250ZXh0VmstPmdldEN1cnJlbnRWaWV3Q291bnQoKSA+IDApCisgICAgeworICAg
ICAgICBkZXBlbmRlbmN5RmxhZ3MgfD0gVktfREVQRU5ERU5DWV9WSUVXX0xPQ0FMX0JJVDsKKyAg
ICB9CisgICAgcmV0dXJuIGRlcGVuZGVuY3lGbGFnczsKK30KIH0gIC8vIGFub255bW91cyBuYW1l
c3BhY2UKIAogLy8gTm90IG5lY2Vzc2FyeSBvbmNlIHVwZ3JhZGVkIHRvIEMrKzE3LgpAQCAtNjIy
LDE4ICs2MzAsOCBAQCBjb25zdGV4cHIgQ29udGV4dFZrOjpEaXJ0eUJpdHMgQ29udGV4dFZrOjpr
RHJpdmVyVW5pZm9ybXNBbmRCaW5kaW5nRGlydHlCaXRzOwogCiB2b2lkIENvbnRleHRWazo6Zmx1
c2hEZXNjcmlwdG9yU2V0VXBkYXRlcygpCiB7Ci0gICAgaWYgKG1Xcml0ZURlc2NyaXB0b3JTZXRz
LmVtcHR5KCkpCi0gICAgewotICAgICAgICBBU1NFUlQobURlc2NyaXB0b3JCdWZmZXJJbmZvcy5l
bXB0eSgpKTsKLSAgICAgICAgQVNTRVJUKG1EZXNjcmlwdG9ySW1hZ2VJbmZvcy5lbXB0eSgpKTsK
LSAgICAgICAgcmV0dXJuOwotICAgIH0KLQotICAgIHZrVXBkYXRlRGVzY3JpcHRvclNldHMoZ2V0
RGV2aWNlKCksIHN0YXRpY19jYXN0PHVpbnQzMl90PihtV3JpdGVEZXNjcmlwdG9yU2V0cy5zaXpl
KCkpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgbVdyaXRlRGVzY3JpcHRvclNldHMuZGF0
YSgpLCAwLCBudWxscHRyKTsKLSAgICBtV3JpdGVEZXNjcmlwdG9yU2V0cy5jbGVhcigpOwotICAg
IG1EZXNjcmlwdG9yQnVmZmVySW5mb3MuY2xlYXIoKTsKLSAgICBtRGVzY3JpcHRvckltYWdlSW5m
b3MuY2xlYXIoKTsKKyAgICBtUGVyZkNvdW50ZXJzLndyaXRlRGVzY3JpcHRvclNldHMgKz0KKyAg
ICAgICAgbVVwZGF0ZURlc2NyaXB0b3JTZXRzQnVpbGRlci5mbHVzaERlc2NyaXB0b3JTZXRVcGRh
dGVzKGdldERldmljZSgpKTsKIH0KIAogQU5HTEVfSU5MSU5FIHZvaWQgQ29udGV4dFZrOjpvblJl
bmRlclBhc3NGaW5pc2hlZChSZW5kZXJQYXNzQ2xvc3VyZVJlYXNvbiByZWFzb24pCkBAIC03MTQs
NyArNzEyLDYgQEAgQ29udGV4dFZrOjpDb250ZXh0VmsoY29uc3QgZ2w6OlN0YXRlICZzdGF0ZSwg
Z2w6OkVycm9yU2V0ICplcnJvclNldCwgUmVuZGVyZXJWawogICAgICAgbUxhc3RQcm9ncmFtVXNl
c0ZyYW1lYnVmZmVyRmV0Y2goZmFsc2UpLAogICAgICAgbUdwdUNsb2NrU3luY3tzdGQ6Om51bWVy
aWNfbGltaXRzPGRvdWJsZT46Om1heCgpLCBzdGQ6Om51bWVyaWNfbGltaXRzPGRvdWJsZT46Om1h
eCgpfSwKICAgICAgIG1HcHVFdmVudFRpbWVzdGFtcE9yaWdpbigwKSwKLSAgICAgIG1QZXJmQ291
bnRlcnN7fSwKICAgICAgIG1Db250ZXh0UGVyZkNvdW50ZXJze30sCiAgICAgICBtQ3VtdWxhdGl2
ZUNvbnRleHRQZXJmQ291bnRlcnN7fSwKICAgICAgIG1Db250ZXh0UHJpb3JpdHkocmVuZGVyZXIt
PmdldERyaXZlclByaW9yaXR5KEdldENvbnRleHRQcmlvcml0eShzdGF0ZSkpKSwKQEAgLTc3OCw2
ICs3NzUsOCBAQCBDb250ZXh0Vms6OkNvbnRleHRWayhjb25zdCBnbDo6U3RhdGUgJnN0YXRlLCBn
bDo6RXJyb3JTZXQgKmVycm9yU2V0LCBSZW5kZXJlclZrCiAgICAgICAgICZDb250ZXh0Vms6Omhh
bmRsZURpcnR5R3JhcGhpY3NTaGFkZXJSZXNvdXJjZXM7CiAgICAgbUdyYXBoaWNzRGlydHlCaXRI
YW5kbGVyc1tESVJUWV9CSVRfRlJBTUVCVUZGRVJfRkVUQ0hfQkFSUklFUl0gPQogICAgICAgICAm
Q29udGV4dFZrOjpoYW5kbGVEaXJ0eUdyYXBoaWNzRnJhbWVidWZmZXJGZXRjaEJhcnJpZXI7Cisg
ICAgbUdyYXBoaWNzRGlydHlCaXRIYW5kbGVyc1tESVJUWV9CSVRfQkxFTkRfQkFSUklFUl0gPQor
ICAgICAgICAmQ29udGV4dFZrOjpoYW5kbGVEaXJ0eUdyYXBoaWNzQmxlbmRCYXJyaWVyOwogICAg
IGlmIChnZXRGZWF0dXJlcygpLnN1cHBvcnRzVHJhbnNmb3JtRmVlZGJhY2tFeHRlbnNpb24uZW5h
YmxlZCkKICAgICB7CiAgICAgICAgIG1HcmFwaGljc0RpcnR5Qml0SGFuZGxlcnNbRElSVFlfQklU
X1RSQU5TRk9STV9GRUVEQkFDS19CVUZGRVJTXSA9CkBAIC04NDYsMTAgKzg0NSwyMiBAQCBDb250
ZXh0Vms6OkNvbnRleHRWayhjb25zdCBnbDo6U3RhdGUgJnN0YXRlLCBnbDo6RXJyb3JTZXQgKmVy
cm9yU2V0LCBSZW5kZXJlclZrCiAgICAgbVBpcGVsaW5lRGlydHlCaXRzTWFzay5yZXNldChnbDo6
U3RhdGU6OkRJUlRZX0JJVF9TSEFERVJfU1RPUkFHRV9CVUZGRVJfQklORElORyk7CiAgICAgbVBp
cGVsaW5lRGlydHlCaXRzTWFzay5yZXNldChnbDo6U3RhdGU6OkRJUlRZX0JJVF9BVE9NSUNfQ09V
TlRFUl9CVUZGRVJfQklORElORyk7CiAKLSAgICAvLyBSZXNlcnZlIHJlYXNvbmFibGUgYW1vdW50
IG9mIHNwYWNlcyBzbyB0aGF0IGZvciBtYWpvcml0eSBvZiBhcHBzIHdlIGRvbid0IG5lZWQgdG8g
Z3JvdyBhdCBhbGwKLSAgICBtRGVzY3JpcHRvckJ1ZmZlckluZm9zLnJlc2VydmUoa0Rlc2NyaXB0
b3JCdWZmZXJJbmZvc0luaXRpYWxTaXplKTsKLSAgICBtRGVzY3JpcHRvckltYWdlSW5mb3MucmVz
ZXJ2ZShrRGVzY3JpcHRvckltYWdlSW5mb3NJbml0aWFsU2l6ZSk7Ci0gICAgbVdyaXRlRGVzY3Jp
cHRvclNldHMucmVzZXJ2ZShrRGVzY3JpcHRvcldyaXRlSW5mb3NJbml0aWFsU2l6ZSk7CisgICAg
YW5nbGU6OlBlcmZNb25pdG9yQ291bnRlckdyb3VwIHZ1bGthbkdyb3VwOworICAgIHZ1bGthbkdy
b3VwLm5hbWUgPSAidnVsa2FuIjsKKworI2RlZmluZSBBTkdMRV9BRERfUEVSRl9NT05JVE9SX0NP
VU5URVJfR1JPVVAoQ09VTlRFUikgXAorICAgIHsgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICBhbmdsZTo6UGVyZk1vbml0b3JDb3VudGVy
IGNvdW50ZXI7ICAgICAgICAgICAgXAorICAgICAgICBjb3VudGVyLm5hbWUgID0gI0NPVU5URVI7
ICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICBjb3VudGVyLnZhbHVlID0gMDsgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICB2dWxrYW5Hcm91cC5jb3VudGVycy5wdXNo
X2JhY2soY291bnRlcik7ICAgICAgXAorICAgIH0KKworICAgIEFOR0xFX1ZLX1BFUkZfQ09VTlRF
UlNfWChBTkdMRV9BRERfUEVSRl9NT05JVE9SX0NPVU5URVJfR1JPVVApCisKKyN1bmRlZiBBTkdM
RV9BRERfUEVSRl9NT05JVE9SX0NPVU5URVJfR1JPVVAKKworICAgIG1QZXJmTW9uaXRvckNvdW50
ZXJzLnB1c2hfYmFjayh2dWxrYW5Hcm91cCk7CiB9CiAKIENvbnRleHRWazo6fkNvbnRleHRWaygp
ID0gZGVmYXVsdDsKQEAgLTExNTEsOCArMTE2MiwxMiBAQCBhbmdsZTo6UmVzdWx0IENvbnRleHRW
azo6c2V0dXBEcmF3KGNvbnN0IGdsOjpDb250ZXh0ICpjb250ZXh0LAogICAgIFByb2dyYW1FeGVj
dXRhYmxlVmsgKnByb2dyYW1FeGVjdXRhYmxlVmsgPSBnZXRFeGVjdXRhYmxlKCk7CiAgICAgaWYg
KHByb2dyYW1FeGVjdXRhYmxlVmstPmhhc0RpcnR5VW5pZm9ybXMoKSkKICAgICB7Ci0gICAgICAg
IEFOR0xFX1RSWShwcm9ncmFtRXhlY3V0YWJsZVZrLT51cGRhdGVVbmlmb3Jtcyh0aGlzLCAqbVN0
YXRlLmdldFByb2dyYW1FeGVjdXRhYmxlKCksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAmbURlZmF1bHRVbmlmb3JtU3RvcmFnZSkpOworICAg
ICAgICBUcmFuc2Zvcm1GZWVkYmFja1ZrICp0cmFuc2Zvcm1GZWVkYmFja1ZrID0KKyAgICAgICAg
ICAgIHZrOjpTYWZlR2V0SW1wbChtU3RhdGUuZ2V0Q3VycmVudFRyYW5zZm9ybUZlZWRiYWNrKCkp
OworICAgICAgICBBTkdMRV9UUlkocHJvZ3JhbUV4ZWN1dGFibGVWay0+dXBkYXRlVW5pZm9ybXMo
CisgICAgICAgICAgICB0aGlzLCAmbVVwZGF0ZURlc2NyaXB0b3JTZXRzQnVpbGRlciwgJm1SZXNv
dXJjZVVzZUxpc3QsICZtRW1wdHlCdWZmZXIsCisgICAgICAgICAgICAqbVN0YXRlLmdldFByb2dy
YW1FeGVjdXRhYmxlKCksICZtRGVmYXVsdFVuaWZvcm1TdG9yYWdlLAorICAgICAgICAgICAgbVN0
YXRlLmlzVHJhbnNmb3JtRmVlZGJhY2tBY3RpdmVVbnBhdXNlZCgpLCB0cmFuc2Zvcm1GZWVkYmFj
a1ZrKSk7CiAgICAgICAgIG1HcmFwaGljc0RpcnR5Qml0cy5zZXQoRElSVFlfQklUX0RFU0NSSVBU
T1JfU0VUUyk7CiAgICAgfQogCkBAIC0xMjMxLDYgKzEyNDYsMTcgQEAgYW5nbGU6OlJlc3VsdCBD
b250ZXh0Vms6OnNldHVwSW5kZXhlZERyYXcoY29uc3QgZ2w6OkNvbnRleHQgKmNvbnRleHQsCiAg
ICAgICAgICAgICBtR3JhcGhpY3NEaXJ0eUJpdHMuc2V0KERJUlRZX0JJVF9JTkRFWF9CVUZGRVIp
OwogICAgICAgICAgICAgbUxhc3RJbmRleEJ1ZmZlck9mZnNldCA9IGluZGljZXM7CiAgICAgICAg
IH0KKworICAgICAgICAvLyBXaGVuIHlvdSBkcmF3IHdpdGggTGluZUxvb3AgbW9kZSBvciBHTF9V
TlNJR05FRF9CWVRFIHR5cGUsIHdlIG1heSBhbGxvY2F0ZSBpdHMgb3duCisgICAgICAgIC8vIGVs
ZW1lbnQgYnVmZmVyIGFuZCBtb2RpZnkgbUN1cnJlbnRFbGVtZW50QXJyYXlCdWZmZXIuIFdoZW4g
d2Ugc3dpdGNoIG91dCBvZiB0aGF0IGRyYXcKKyAgICAgICAgLy8gbW9kZSwgd2UgbXVzdCByZXNl
dCBtQ3VycmVudEVsZW1lbnRBcnJheUJ1ZmZlciBiYWNrIHRvIHRoZSB2ZXJ0ZXhBcnJheSdzIGVs
ZW1lbnQgYnVmZmVyLgorICAgICAgICAvLyBTaW5jZSBpbiBlaXRoZXIgY2FzZSB3ZSBzZXQgRElS
VFlfQklUX0lOREVYX0JVRkZFUiBkaXJ0eSBiaXQsIHdlIHVzZSB0aGlzIGJpdCB0byByZS1zeW5j
CisgICAgICAgIC8vIG1DdXJyZW50RWxlbWVudEFycmF5QnVmZmVyLgorICAgICAgICBpZiAobUdy
YXBoaWNzRGlydHlCaXRzW0RJUlRZX0JJVF9JTkRFWF9CVUZGRVJdKQorICAgICAgICB7CisgICAg
ICAgICAgICB2ZXJ0ZXhBcnJheVZrLT51cGRhdGVDdXJyZW50RWxlbWVudEFycmF5QnVmZmVyKCk7
CisgICAgICAgIH0KKwogICAgICAgICBpZiAoc2hvdWxkQ29udmVydFVpbnQ4VmtJbmRleFR5cGUo
aW5kZXhUeXBlKSAmJiBtR3JhcGhpY3NEaXJ0eUJpdHNbRElSVFlfQklUX0lOREVYX0JVRkZFUl0p
CiAgICAgICAgIHsKICAgICAgICAgICAgIEFOR0xFX1ZLX1BFUkZfV0FSTklORyh0aGlzLCBHTF9E
RUJVR19TRVZFUklUWV9MT1csCkBAIC0xMzkyLDggKzE0MTgsMTIgQEAgYW5nbGU6OlJlc3VsdCBD
b250ZXh0Vms6OnNldHVwRGlzcGF0Y2goY29uc3QgZ2w6OkNvbnRleHQgKmNvbnRleHQpCiAgICAg
UHJvZ3JhbUV4ZWN1dGFibGVWayAqcHJvZ3JhbUV4ZWN1dGFibGVWayA9IGdldEV4ZWN1dGFibGUo
KTsKICAgICBpZiAocHJvZ3JhbUV4ZWN1dGFibGVWay0+aGFzRGlydHlVbmlmb3JtcygpKQogICAg
IHsKLSAgICAgICAgQU5HTEVfVFJZKHByb2dyYW1FeGVjdXRhYmxlVmstPnVwZGF0ZVVuaWZvcm1z
KHRoaXMsICptU3RhdGUuZ2V0UHJvZ3JhbUV4ZWN1dGFibGUoKSwKLSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZtRGVmYXVsdFVuaWZvcm1TdG9y
YWdlKSk7CisgICAgICAgIFRyYW5zZm9ybUZlZWRiYWNrVmsgKnRyYW5zZm9ybUZlZWRiYWNrVmsg
PQorICAgICAgICAgICAgdms6OlNhZmVHZXRJbXBsKG1TdGF0ZS5nZXRDdXJyZW50VHJhbnNmb3Jt
RmVlZGJhY2soKSk7CisgICAgICAgIEFOR0xFX1RSWShwcm9ncmFtRXhlY3V0YWJsZVZrLT51cGRh
dGVVbmlmb3JtcygKKyAgICAgICAgICAgIHRoaXMsICZtVXBkYXRlRGVzY3JpcHRvclNldHNCdWls
ZGVyLCAmbVJlc291cmNlVXNlTGlzdCwgJm1FbXB0eUJ1ZmZlciwKKyAgICAgICAgICAgICptU3Rh
dGUuZ2V0UHJvZ3JhbUV4ZWN1dGFibGUoKSwgJm1EZWZhdWx0VW5pZm9ybVN0b3JhZ2UsCisgICAg
ICAgICAgICBtU3RhdGUuaXNUcmFuc2Zvcm1GZWVkYmFja0FjdGl2ZVVucGF1c2VkKCksIHRyYW5z
Zm9ybUZlZWRiYWNrVmspKTsKICAgICAgICAgbUNvbXB1dGVEaXJ0eUJpdHMuc2V0KERJUlRZX0JJ
VF9ERVNDUklQVE9SX1NFVFMpOwogICAgIH0KIApAQCAtMTY0NSw3ICsxNjc1LDkgQEAgYW5nbGU6
OlJlc3VsdCBDb250ZXh0Vms6OmhhbmRsZURpcnR5R3JhcGhpY3NQaXBlbGluZURlc2MoRGlydHlC
aXRzOjpJdGVyYXRvciAqZGkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgPyBtQ3VycmVudEdyYXBoaWNzUGlwZWxpbmUtPmdldFBpcGVsaW5lKCkuZ2V0SGFuZGxl
KCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBWS19OVUxM
X0hBTkRMRTsKIAotICAgIFByb2dyYW1FeGVjdXRhYmxlVmsgKmV4ZWN1dGFibGVWayA9IGdldEV4
ZWN1dGFibGUoKTsKKyAgICBBU1NFUlQobVN0YXRlLmdldFByb2dyYW1FeGVjdXRhYmxlKCkgIT0g
bnVsbHB0cik7CisgICAgY29uc3QgZ2w6OlByb2dyYW1FeGVjdXRhYmxlICZnbEV4ZWN1dGFibGUg
PSAqbVN0YXRlLmdldFByb2dyYW1FeGVjdXRhYmxlKCk7CisgICAgUHJvZ3JhbUV4ZWN1dGFibGVW
ayAqZXhlY3V0YWJsZVZrICAgICAgICAgPSBnZXRFeGVjdXRhYmxlKCk7CiAgICAgQVNTRVJUKGV4
ZWN1dGFibGVWayk7CiAKICAgICBpZiAoIW1DdXJyZW50R3JhcGhpY3NQaXBlbGluZSkKQEAgLTE2
NTksNyArMTY5MSw4IEBAIGFuZ2xlOjpSZXN1bHQgQ29udGV4dFZrOjpoYW5kbGVEaXJ0eUdyYXBo
aWNzUGlwZWxpbmVEZXNjKERpcnR5Qml0czo6SXRlcmF0b3IgKmRpCiAKICAgICAgICAgLy8gRHJh
dyBjYWxsIHNoYWRlciBwYXRjaGluZywgc2hhZGVyIGNvbXBpbGF0aW9uLCBhbmQgcGlwZWxpbmUg
Y2FjaGUgcXVlcnkuCiAgICAgICAgIEFOR0xFX1RSWShleGVjdXRhYmxlVmstPmdldEdyYXBoaWNz
UGlwZWxpbmUodGhpcywgbUN1cnJlbnREcmF3TW9kZSwgKm1HcmFwaGljc1BpcGVsaW5lRGVzYywK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmZGVz
Y1B0ciwgJm1DdXJyZW50R3JhcGhpY3NQaXBlbGluZSkpOworICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdsRXhlY3V0YWJsZSwgJmRlc2NQdHIsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJm1DdXJy
ZW50R3JhcGhpY3NQaXBlbGluZSkpOwogICAgICAgICBtR3JhcGhpY3NQaXBlbGluZVRyYW5zaXRp
b24ucmVzZXQoKTsKICAgICB9CiAgICAgZWxzZSBpZiAobUdyYXBoaWNzUGlwZWxpbmVUcmFuc2l0
aW9uLmFueSgpKQpAQCAtMTY3Miw4ICsxNzA1LDggQEAgYW5nbGU6OlJlc3VsdCBDb250ZXh0Vms6
OmhhbmRsZURpcnR5R3JhcGhpY3NQaXBlbGluZURlc2MoRGlydHlCaXRzOjpJdGVyYXRvciAqZGkK
ICAgICAgICAgICAgIGNvbnN0IHZrOjpHcmFwaGljc1BpcGVsaW5lRGVzYyAqZGVzY1B0cjsKIAog
ICAgICAgICAgICAgQU5HTEVfVFJZKGV4ZWN1dGFibGVWay0+Z2V0R3JhcGhpY3NQaXBlbGluZSh0
aGlzLCBtQ3VycmVudERyYXdNb2RlLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAqbUdyYXBoaWNzUGlwZWxpbmVEZXNjLCAmZGVzY1B0ciwK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Jm1DdXJyZW50R3JhcGhpY3NQaXBlbGluZSkpOworICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbUdyYXBoaWNzUGlwZWxpbmVEZXNjLCBnbEV4
ZWN1dGFibGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICZkZXNjUHRyLCAmbUN1cnJlbnRHcmFwaGljc1BpcGVsaW5lKSk7CiAKICAgICAg
ICAgICAgIG9sZFBpcGVsaW5lLT5hZGRUcmFuc2l0aW9uKG1HcmFwaGljc1BpcGVsaW5lVHJhbnNp
dGlvbiwgZGVzY1B0ciwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1D
dXJyZW50R3JhcGhpY3NQaXBlbGluZSk7CkBAIC0xODE2LDE0ICsxODQ5LDE0IEBAIEFOR0xFX0lO
TElORSBhbmdsZTo6UmVzdWx0IENvbnRleHRWazo6aGFuZGxlRGlydHlUZXh0dXJlc0ltcGwoCiAK
ICAgICAgICAgLy8gRW5zdXJlIHRoZSBpbWFnZSBpcyBpbiB0aGUgZGVzaXJlZCBsYXlvdXQKICAg
ICAgICAgY29tbWFuZEJ1ZmZlckhlbHBlci0+aW1hZ2VSZWFkKHRoaXMsIGltYWdlLmdldEFzcGVj
dEZsYWdzKCksIGltYWdlTGF5b3V0LCAmaW1hZ2UpOwotCi0gICAgICAgIHRleHR1cmVWay0+cmV0
YWluSW1hZ2VWaWV3cygmbVJlc291cmNlVXNlTGlzdCk7CiAgICAgfQogCiAgICAgaWYgKGV4ZWN1
dGFibGUtPmhhc1RleHR1cmVzKCkpCiAgICAgewogICAgICAgICBQcm9ncmFtRXhlY3V0YWJsZVZr
ICpleGVjdXRhYmxlVmsgPSBnZXRFeGVjdXRhYmxlKCk7Ci0gICAgICAgIEFOR0xFX1RSWShleGVj
dXRhYmxlVmstPnVwZGF0ZVRleHR1cmVzRGVzY3JpcHRvclNldCh0aGlzLCBtQWN0aXZlVGV4dHVy
ZXNEZXNjKSk7CisgICAgICAgIEFOR0xFX1RSWShleGVjdXRhYmxlVmstPnVwZGF0ZVRleHR1cmVz
RGVzY3JpcHRvclNldCgKKyAgICAgICAgICAgIHRoaXMsICZtVXBkYXRlRGVzY3JpcHRvclNldHNC
dWlsZGVyLCAmbVJlc291cmNlVXNlTGlzdCwgKmV4ZWN1dGFibGUsIG1BY3RpdmVUZXh0dXJlcywK
KyAgICAgICAgICAgIG1BY3RpdmVUZXh0dXJlc0Rlc2MsIG1FbXVsYXRlU2VhbWZ1bEN1YmVNYXBT
YW1wbGluZykpOwogICAgIH0KIAogICAgIHJldHVybiBhbmdsZTo6UmVzdWx0OjpDb250aW51ZTsK
QEAgLTE5MDAsNyArMTkzMywyMyBAQCBhbmdsZTo6UmVzdWx0IENvbnRleHRWazo6aGFuZGxlRGly
dHlHcmFwaGljc0ZyYW1lYnVmZmVyRmV0Y2hCYXJyaWVyKAogCiAgICAgbVJlbmRlclBhc3NDb21t
YW5kQnVmZmVyLT5waXBlbGluZUJhcnJpZXIoCiAgICAgICAgIFZLX1BJUEVMSU5FX1NUQUdFX0NP
TE9SX0FUVEFDSE1FTlRfT1VUUFVUX0JJVCwgVktfUElQRUxJTkVfU1RBR0VfRlJBR01FTlRfU0hB
REVSX0JJVCwKLSAgICAgICAgVktfREVQRU5ERU5DWV9CWV9SRUdJT05fQklULCAxLCAmbWVtb3J5
QmFycmllciwgMCwgbnVsbHB0ciwgMCwgbnVsbHB0cik7CisgICAgICAgIEdldExvY2FsRGVwZW5k
ZW5jeUZsYWdzKHRoaXMpLCAxLCAmbWVtb3J5QmFycmllciwgMCwgbnVsbHB0ciwgMCwgbnVsbHB0
cik7CisKKyAgICByZXR1cm4gYW5nbGU6OlJlc3VsdDo6Q29udGludWU7Cit9CisKK2FuZ2xlOjpS
ZXN1bHQgQ29udGV4dFZrOjpoYW5kbGVEaXJ0eUdyYXBoaWNzQmxlbmRCYXJyaWVyKERpcnR5Qml0
czo6SXRlcmF0b3IgKmRpcnR5Qml0c0l0ZXJhdG9yLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRGlydHlCaXRzIGRpcnR5Qml0TWFzaykK
K3sKKyAgICBWa01lbW9yeUJhcnJpZXIgbWVtb3J5QmFycmllciA9IHt9OworICAgIG1lbW9yeUJh
cnJpZXIuc1R5cGUgICAgICAgICAgID0gVktfU1RSVUNUVVJFX1RZUEVfTUVNT1JZX0JBUlJJRVI7
CisgICAgbWVtb3J5QmFycmllci5zcmNBY2Nlc3NNYXNrICAgPSBWS19BQ0NFU1NfQ09MT1JfQVRU
QUNITUVOVF9XUklURV9CSVQ7CisgICAgbWVtb3J5QmFycmllci5kc3RBY2Nlc3NNYXNrICAgPSBW
S19BQ0NFU1NfQ09MT1JfQVRUQUNITUVOVF9SRUFEX05PTkNPSEVSRU5UX0JJVF9FWFQ7CisKKyAg
ICBtUmVuZGVyUGFzc0NvbW1hbmRCdWZmZXItPnBpcGVsaW5lQmFycmllcihWS19QSVBFTElORV9T
VEFHRV9DT0xPUl9BVFRBQ0hNRU5UX09VVFBVVF9CSVQsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgVktfUElQRUxJTkVfU1RBR0VfQ09MT1JfQVRUQUNITUVO
VF9PVVRQVVRfQklULAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIEdldExvY2FsRGVwZW5kZW5jeUZsYWdzKHRoaXMpLCAxLCAmbWVtb3J5QmFycmllciwgMCwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBudWxscHRyLCAw
LCBudWxscHRyKTsKIAogICAgIHJldHVybiBhbmdsZTo6UmVzdWx0OjpDb250aW51ZTsKIH0KQEAg
LTE5MzQsOCArMTk4Myw5IEBAIGFuZ2xlOjpSZXN1bHQgQ29udGV4dFZrOjpoYW5kbGVEaXJ0eVNo
YWRlclJlc291cmNlc0ltcGwoQ29tbWFuZEJ1ZmZlckhlbHBlclQgKmNvCiAKICAgICBQcm9ncmFt
RXhlY3V0YWJsZVZrICpleGVjdXRhYmxlVmsgPSBnZXRFeGVjdXRhYmxlKCk7CiAgICAgRnJhbWVi
dWZmZXJWayAqZHJhd0ZyYW1lYnVmZmVyVmsgID0gZ2V0RHJhd0ZyYW1lYnVmZmVyKCk7Ci0gICAg
QU5HTEVfVFJZKGV4ZWN1dGFibGVWay0+dXBkYXRlU2hhZGVyUmVzb3VyY2VzRGVzY3JpcHRvclNl
dCh0aGlzLCBkcmF3RnJhbWVidWZmZXJWaywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1TaGFkZXJCdWZmZXJzRGVzY3JpcHRv
ckRlc2MpKTsKKyAgICBBTkdMRV9UUlkoZXhlY3V0YWJsZVZrLT51cGRhdGVTaGFkZXJSZXNvdXJj
ZXNEZXNjcmlwdG9yU2V0KAorICAgICAgICB0aGlzLCBleGVjdXRhYmxlLCAmbVVwZGF0ZURlc2Ny
aXB0b3JTZXRzQnVpbGRlciwgJm1FbXB0eUJ1ZmZlciwgJm1SZXNvdXJjZVVzZUxpc3QsCisgICAg
ICAgIGRyYXdGcmFtZWJ1ZmZlclZrLCBtU2hhZGVyQnVmZmVyc0Rlc2NyaXB0b3JEZXNjKSk7CiAK
ICAgICAvLyBSZWNvcmQgdXNhZ2Ugb2Ygc3RvcmFnZSBidWZmZXJzIGFuZCBpbWFnZXMgaW4gdGhl
IGNvbW1hbmQgYnVmZmVyIHRvIGFpZCBoYW5kbGluZyBvZgogICAgIC8vIGdsTWVtb3J5QmFycmll
ci4KQEAgLTIwNzYsOCArMjEyNiwxMCBAQCBhbmdsZTo6UmVzdWx0IENvbnRleHRWazo6aGFuZGxl
RGlydHlHcmFwaGljc1RyYW5zZm9ybUZlZWRiYWNrQnVmZmVyc0VtdWxhdGlvbigKICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiB2azo6
a0ludmFsaWRCdWZmZXJTZXJpYWwpOwogCiAgICAgUHJvZ3JhbVZrICpwcm9ncmFtVmsgPSBnZXRQ
cm9ncmFtKCk7Ci0gICAgcmV0dXJuIHByb2dyYW1Way0+Z2V0RXhlY3V0YWJsZSgpLnVwZGF0ZVRy
YW5zZm9ybUZlZWRiYWNrRGVzY3JpcHRvclNldCgKLSAgICAgICAgdGhpcywgKmV4ZWN1dGFibGUs
IHVuaWZvcm1CdWZmZXIsIHhmYkJ1ZmZlckRlc2MpOworICAgIHJldHVybiBwcm9ncmFtVmstPmdl
dEV4ZWN1dGFibGUoKS51cGRhdGVVbmlmb3Jtc0FuZFhmYkRlc2NyaXB0b3JTZXQoCisgICAgICAg
IHRoaXMsICZtVXBkYXRlRGVzY3JpcHRvclNldHNCdWlsZGVyLCAmbVJlc291cmNlVXNlTGlzdCwg
Jm1FbXB0eUJ1ZmZlciwgKmV4ZWN1dGFibGUsCisgICAgICAgIHVuaWZvcm1CdWZmZXIsIHhmYkJ1
ZmZlckRlc2MsIG1TdGF0ZS5pc1RyYW5zZm9ybUZlZWRiYWNrQWN0aXZlVW5wYXVzZWQoKSwKKyAg
ICAgICAgdHJhbnNmb3JtRmVlZGJhY2tWayk7CiB9CiAKIGFuZ2xlOjpSZXN1bHQgQ29udGV4dFZr
OjpoYW5kbGVEaXJ0eUdyYXBoaWNzVHJhbnNmb3JtRmVlZGJhY2tCdWZmZXJzRXh0ZW5zaW9uKApA
QCAtMjIyNCwxMyArMjI3NiwxNCBAQCBhbmdsZTo6UmVzdWx0IENvbnRleHRWazo6aGFuZGxlRGly
dHlEZXNjcmlwdG9yU2V0c0ltcGwoQ29tbWFuZEJ1ZmZlclQgKmNvbW1hbmRCdQogICAgIH0KIAog
ICAgIFByb2dyYW1FeGVjdXRhYmxlVmsgKmV4ZWN1dGFibGVWayA9IGdldEV4ZWN1dGFibGUoKTsK
LSAgICByZXR1cm4gZXhlY3V0YWJsZVZrLT51cGRhdGVEZXNjcmlwdG9yU2V0cyh0aGlzLCBjb21t
YW5kQnVmZmVyLCBwaXBlbGluZVR5cGUpOworICAgIHJldHVybiBleGVjdXRhYmxlVmstPnVwZGF0
ZURlc2NyaXB0b3JTZXRzKHRoaXMsICZtUmVzb3VyY2VVc2VMaXN0LCBjb21tYW5kQnVmZmVyLCBw
aXBlbGluZVR5cGUpOwogfQogCiB2b2lkIENvbnRleHRWazo6c3luY09iamVjdFBlcmZDb3VudGVy
cygpCiB7CiAgICAgbVBlcmZDb3VudGVycy5kZXNjcmlwdG9yU2V0QWxsb2NhdGlvbnMgICAgICAg
ICAgICAgICAgICA9IDA7CiAgICAgbVBlcmZDb3VudGVycy5kZXNjcmlwdG9yU2V0Q2FjaGVUb3Rh
bFNpemUgICAgICAgICAgICAgICA9IDA7CisgICAgbVBlcmZDb3VudGVycy5kZXNjcmlwdG9yU2V0
Q2FjaGVLZXlTaXplQnl0ZXMgICAgICAgICAgICA9IDA7CiAgICAgbVBlcmZDb3VudGVycy51bmlm
b3Jtc0FuZFhmYkRlc2NyaXB0b3JTZXRDYWNoZUhpdHMgICAgICA9IDA7CiAgICAgbVBlcmZDb3Vu
dGVycy51bmlmb3Jtc0FuZFhmYkRlc2NyaXB0b3JTZXRDYWNoZU1pc3NlcyAgICA9IDA7CiAgICAg
bVBlcmZDb3VudGVycy51bmlmb3Jtc0FuZFhmYkRlc2NyaXB0b3JTZXRDYWNoZVRvdGFsU2l6ZSA9
IDA7CkBAIC0yMjQwLDYgKzIyOTMsNyBAQCB2b2lkIENvbnRleHRWazo6c3luY09iamVjdFBlcmZD
b3VudGVycygpCiAgICAgbVBlcmZDb3VudGVycy5zaGFkZXJCdWZmZXJzRGVzY3JpcHRvclNldENh
Y2hlSGl0cyAgICAgICA9IDA7CiAgICAgbVBlcmZDb3VudGVycy5zaGFkZXJCdWZmZXJzRGVzY3Jp
cHRvclNldENhY2hlTWlzc2VzICAgICA9IDA7CiAgICAgbVBlcmZDb3VudGVycy5zaGFkZXJCdWZm
ZXJzRGVzY3JpcHRvclNldENhY2hlVG90YWxTaXplICA9IDA7CisgICAgbVBlcmZDb3VudGVycy5k
eW5hbWljQnVmZmVyQWxsb2NhdGlvbnMgICAgICAgICAgICAgICAgICA9IDA7CiAKICAgICAvLyBD
b250ZXh0VmsncyBkZXNjcmlwdG9yIHNldCBhbGxvY2F0aW9ucwogICAgIENvbnRleHRWa1BlcmZD
b3VudGVycyBjb250ZXh0Q291bnRlcnMgPSBnZXRBbmRSZXNldE9iamVjdFBlcmZDb3VudGVycygp
OwpAQCAtMjI4OSw2ICsyMzQzLDExIEBAIHZvaWQgQ29udGV4dFZrOjpzeW5jT2JqZWN0UGVyZkNv
dW50ZXJzKCkKICAgICAgICAgICAgIHByb2dQZXJmQ291bnRlcnMuZGVzY3JpcHRvclNldENhY2hl
TWlzc2VzW0Rlc2NyaXB0b3JTZXRJbmRleDo6U2hhZGVyUmVzb3VyY2VdOwogICAgICAgICBtUGVy
ZkNvdW50ZXJzLnNoYWRlckJ1ZmZlcnNEZXNjcmlwdG9yU2V0Q2FjaGVUb3RhbFNpemUgKz0KICAg
ICAgICAgICAgIHByb2dQZXJmQ291bnRlcnMuZGVzY3JpcHRvclNldENhY2hlU2l6ZXNbRGVzY3Jp
cHRvclNldEluZGV4OjpTaGFkZXJSZXNvdXJjZV07CisKKyAgICAgICAgZm9yICh1aW50MzJfdCBr
ZXlTaXplQnl0ZXMgOiBwcm9nUGVyZkNvdW50ZXJzLmRlc2NyaXB0b3JTZXRDYWNoZUtleVNpemVz
Qnl0ZXMpCisgICAgICAgIHsKKyAgICAgICAgICAgIG1QZXJmQ291bnRlcnMuZGVzY3JpcHRvclNl
dENhY2hlS2V5U2l6ZUJ5dGVzICs9IGtleVNpemVCeXRlczsKKyAgICAgICAgfQogICAgIH0KIAog
ICAgIG1QZXJmQ291bnRlcnMuZGVzY3JpcHRvclNldENhY2hlVG90YWxTaXplICs9CkBAIC0yMzU1
LDYgKzI0MTQsMTkgQEAgdm9pZCBDb250ZXh0Vms6OnVwZGF0ZU92ZXJsYXlPblByZXNlbnQoKQog
ICAgICAgICAgICAgb3ZlcmxheS0+Z2V0UnVubmluZ0dyYXBoV2lkZ2V0KGdsOjpXaWRnZXRJZDo6
VnVsa2FuRHluYW1pY0J1ZmZlckFsbG9jYXRpb25zKTsKICAgICAgICAgZHluYW1pY0J1ZmZlckFs
bG9jYXRpb25zLT5uZXh0KCk7CiAgICAgfQorCisgICAgeworICAgICAgICBnbDo6Q291bnRXaWRn
ZXQgKmNhY2hlS2V5U2l6ZSA9CisgICAgICAgICAgICBvdmVybGF5LT5nZXRDb3VudFdpZGdldChn
bDo6V2lkZ2V0SWQ6OlZ1bGthbkRlc2NyaXB0b3JDYWNoZUtleVNpemUpOworICAgICAgICBjYWNo
ZUtleVNpemUtPnJlc2V0KCk7CisgICAgICAgIGNhY2hlS2V5U2l6ZS0+YWRkKG1QZXJmQ291bnRl
cnMuZGVzY3JpcHRvclNldENhY2hlS2V5U2l6ZUJ5dGVzKTsKKyAgICB9CisKKyAgICB7CisgICAg
ICAgIGdsOjpSdW5uaW5nR3JhcGhXaWRnZXQgKmR5bmFtaWNCdWZmZXJBbGxvY2F0aW9ucyA9Cisg
ICAgICAgICAgICBvdmVybGF5LT5nZXRSdW5uaW5nR3JhcGhXaWRnZXQoZ2w6OldpZGdldElkOjpW
dWxrYW5EeW5hbWljQnVmZmVyQWxsb2NhdGlvbnMpOworICAgICAgICBkeW5hbWljQnVmZmVyQWxs
b2NhdGlvbnMtPmFkZChtUGVyZkNvdW50ZXJzLmR5bmFtaWNCdWZmZXJBbGxvY2F0aW9ucyk7Cisg
ICAgfQogfQogCiB2b2lkIENvbnRleHRWazo6YWRkT3ZlcmxheVVzZWRCdWZmZXJzQ291bnQodms6
OkNvbW1hbmRCdWZmZXJIZWxwZXJDb21tb24gKmNvbW1hbmRCdWZmZXIpCkBAIC0yMzk3LDYgKzI0
NjksMTkgQEAgdm9pZCBDb250ZXh0Vms6OmFkZE92ZXJsYXlVc2VkQnVmZmVyc0NvdW50KHZrOjpD
b21tYW5kQnVmZmVySGVscGVyQ29tbW9uICpjb21tYW4KIH0KIAogYW5nbGU6OlJlc3VsdCBDb250
ZXh0Vms6OnN1Ym1pdEZyYW1lKGNvbnN0IHZrOjpTZW1hcGhvcmUgKnNpZ25hbFNlbWFwaG9yZSwg
U2VyaWFsICpzdWJtaXRTZXJpYWxPdXQpCit7CisgICAgcmV0dXJuIHN1Ym1pdEZyYW1lSW1wbChz
aWduYWxTZW1hcGhvcmUsIHN1Ym1pdFNlcmlhbE91dCwgU3VibWl0RnJhbWVUeXBlOjpPdXRzaWRl
QW5kUlBDb21tYW5kcyk7Cit9CisKK2FuZ2xlOjpSZXN1bHQgQ29udGV4dFZrOjpzdWJtaXRGcmFt
ZU91dHNpZGVDb21tYW5kQnVmZmVyT25seShTZXJpYWwgKnN1Ym1pdFNlcmlhbE91dCkKK3sKKyAg
ICBBTkdMRV9UUkFDRV9FVkVOVDAoImdwdS5hbmdsZSIsICJDb250ZXh0Vms6OnN1Ym1pdEZyYW1l
T3V0c2lkZUNvbW1hbmRCdWZmZXJPbmx5Iik7CisgICAgcmV0dXJuIHN1Ym1pdEZyYW1lSW1wbChu
dWxscHRyLCBzdWJtaXRTZXJpYWxPdXQsIFN1Ym1pdEZyYW1lVHlwZTo6T3V0c2lkZVJQQ29tbWFu
ZHNPbmx5KTsKK30KKworYW5nbGU6OlJlc3VsdCBDb250ZXh0Vms6OnN1Ym1pdEZyYW1lSW1wbChj
b25zdCB2azo6U2VtYXBob3JlICpzaWduYWxTZW1hcGhvcmUsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIFNlcmlhbCAqc3VibWl0U2VyaWFsT3V0LAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdWJtaXRGcmFtZVR5cGUgc3VibWl0RnJh
bWVUeXBlKQogewogICAgIGlmIChtQ3VycmVudFdpbmRvd1N1cmZhY2UpCiAgICAgewpAQCAtMjQx
NCwxNCArMjQ5OSwyOSBAQCBhbmdsZTo6UmVzdWx0IENvbnRleHRWazo6c3VibWl0RnJhbWUoY29u
c3Qgdms6OlNlbWFwaG9yZSAqc2lnbmFsU2VtYXBob3JlLCBTZXJpYQogICAgICAgICBkdW1wQ29t
bWFuZFN0cmVhbURpYWdub3N0aWNzKCk7CiAgICAgfQogCi0gICAgZ2V0U2hhcmVHcm91cFZrKCkt
PmFjcXVpcmVSZXNvdXJjZVVzZUxpc3Qoc3RkOjptb3ZlKG1SZXNvdXJjZVVzZUxpc3QpKTsKKyAg
ICBpZiAoc3VibWl0RnJhbWVUeXBlID09IFN1Ym1pdEZyYW1lVHlwZTo6T3V0c2lkZUFuZFJQQ29t
bWFuZHMpCisgICAgeworICAgICAgICBnZXRTaGFyZUdyb3VwVmsoKS0+YWNxdWlyZVJlc291cmNl
VXNlTGlzdChzdGQ6Om1vdmUobVJlc291cmNlVXNlTGlzdCkpOworICAgIH0KKyAgICBlbHNlCisg
ICAgeworICAgICAgICBnZXRTaGFyZUdyb3VwVmsoKS0+Y29weVJlc291cmNlVXNlTGlzdChtUmVz
b3VyY2VVc2VMaXN0KTsKKyAgICB9CisKICAgICBBTkdMRV9UUlkobVJlbmRlcmVyLT5zdWJtaXRG
cmFtZSh0aGlzLCBoYXNQcm90ZWN0ZWRDb250ZW50KCksIG1Db250ZXh0UHJpb3JpdHksCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RkOjptb3ZlKG1XYWl0U2VtYXBob3Jl
cyksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RkOjptb3ZlKG1XYWl0
U2VtYXBob3JlU3RhZ2VNYXNrcyksIHNpZ25hbFNlbWFwaG9yZSwKLSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBnZXRTaGFyZUdyb3VwVmsoKS0+cmVsZWFzZVJlc291cmNlVXNl
TGlzdHMoKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGQ6Om1vdmUo
bUN1cnJlbnRHYXJiYWdlKSwgJm1Db21tYW5kUG9vbHMsIHN1Ym1pdFNlcmlhbE91dCkpOwogCi0g
ICAgb25SZW5kZXJQYXNzRmluaXNoZWQoUmVuZGVyUGFzc0Nsb3N1cmVSZWFzb246OkFscmVhZHlT
cGVjaWZpZWRFbHNld2hlcmUpOworICAgIGlmIChzdWJtaXRGcmFtZVR5cGUgPT0gU3VibWl0RnJh
bWVUeXBlOjpPdXRzaWRlQW5kUlBDb21tYW5kcykKKyAgICB7CisgICAgICAgIGdldFNoYXJlR3Jv
dXBWaygpLT5yZWxlYXNlUmVzb3VyY2VVc2VMaXN0cygqc3VibWl0U2VyaWFsT3V0KTsKKyAgICAg
ICAgLy8gTm93IHRoYXQgd2UgaGF2ZSBwcm9jZXNzZWQgcmVzb3VyY2VVc2VMaXN0LCBzb21lIG9m
IHBlbmRpbmcgZ2FyYmFnZSBtYXkgbm8gbG9uZ2VyIHBlbmRpbmcKKyAgICAgICAgLy8gYW5kIHNo
b3VsZCBiZSBtb3ZlZCB0byBnYXJiYWdlIGxpc3QuCisgICAgICAgIG1SZW5kZXJlci0+Y2xlYW51
cFBlbmRpbmdTdWJtaXNzaW9uR2FyYmFnZSgpOworICAgICAgICBvblJlbmRlclBhc3NGaW5pc2hl
ZChSZW5kZXJQYXNzQ2xvc3VyZVJlYXNvbjo6QWxyZWFkeVNwZWNpZmllZEVsc2V3aGVyZSk7Cisg
ICAgfQorCiAgICAgbUNvbXB1dGVEaXJ0eUJpdHMgfD0gbU5ld0NvbXB1dGVDb21tYW5kQnVmZmVy
RGlydHlCaXRzOwogCiAgICAgaWYgKG1HcHVFdmVudHNFbmFibGVkKQpAQCAtMjQyOSw2ICsyNTI5
LDIyIEBAIGFuZ2xlOjpSZXN1bHQgQ29udGV4dFZrOjpzdWJtaXRGcmFtZShjb25zdCB2azo6U2Vt
YXBob3JlICpzaWduYWxTZW1hcGhvcmUsIFNlcmlhCiAgICAgICAgIEFOR0xFX1RSWShjaGVja0Nv
bXBsZXRlZEdwdUV2ZW50cygpKTsKICAgICB9CiAKKyAgICBtUGVyZkNvdW50ZXJzLnN1Ym1pdHRl
ZEZyYW1lcysrOworICAgIHJlc2V0VG90YWxCdWZmZXJUb0ltYWdlQ29weVNpemUoKTsKKworICAg
IHJldHVybiBhbmdsZTo6UmVzdWx0OjpDb250aW51ZTsKK30KKworYW5nbGU6OlJlc3VsdCBDb250
ZXh0Vms6Om9uQ29weVVwZGF0ZShWa0RldmljZVNpemUgc2l6ZSkKK3sKKyAgICBtVG90YWxCdWZm
ZXJUb0ltYWdlQ29weVNpemUgKz0gc2l6ZTsKKyAgICBBTkdMRV9UUkFDRV9FVkVOVDAoImdwdS5h
bmdsZSIsICJDb250ZXh0Vms6Om9uQ29weVVwZGF0ZSIpOworICAgIC8vIElmIHRoZSBjb3B5IHNp
emUgZXhjZWVkcyB0aGUgc3BlY2lmaWVkIHRocmVzaG9sZCwgc3VibWl0IHRoZSBvdXRzaWRlIGNv
bW1hbmQgYnVmZmVyLgorICAgIFZrRGV2aWNlU2l6ZSBjb3B5U2l6ZSA9IGdldFRvdGFsQnVmZmVy
VG9JbWFnZUNvcHlTaXplKCk7CisgICAgaWYgKGNvcHlTaXplID49IGtNYXhCdWZmZXJUb0ltYWdl
Q29weVNpemUpCisgICAgeworICAgICAgICBBTkdMRV9UUlkoc3VibWl0T3V0c2lkZVJlbmRlclBh
c3NDb21tYW5kc0ltcGwoKSk7CisgICAgfQogICAgIHJldHVybiBhbmdsZTo6UmVzdWx0OjpDb250
aW51ZTsKIH0KIApAQCAtNTA2MSw2ICs1MTc3LDExIEBAIHZvaWQgQ29udGV4dFZrOjpmcmFtZWJ1
ZmZlckZldGNoQmFycmllcigpCiAgICAgbUdyYXBoaWNzRGlydHlCaXRzLnNldChESVJUWV9CSVRf
RlJBTUVCVUZGRVJfRkVUQ0hfQkFSUklFUik7CiB9CiAKK3ZvaWQgQ29udGV4dFZrOjpibGVuZEJh
cnJpZXIoKQoreworICAgIG1HcmFwaGljc0RpcnR5Qml0cy5zZXQoRElSVFlfQklUX0JMRU5EX0JB
UlJJRVIpOworfQorCiBhbmdsZTo6UmVzdWx0IENvbnRleHRWazo6YWNxdWlyZVRleHR1cmVzKGNv
bnN0IGdsOjpDb250ZXh0ICpjb250ZXh0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBjb25zdCBnbDo6VGV4dHVyZUJhcnJpZXJWZWN0b3IgJnRleHR1cmVCYXJyaWVy
cykKIHsKQEAgLTU0MjQsOCArNTU0NSw4IEBAIGFuZ2xlOjpSZXN1bHQgQ29udGV4dFZrOjp1cGRh
dGVEcml2ZXJVbmlmb3Jtc0Rlc2NyaXB0b3JTZXQoYm9vbCBuZXdCdWZmZXIsCiAgICAgLy8gQWxs
b2NhdGUgYSBuZXcgZGVzY3JpcHRvciBzZXQuCiAgICAgYm9vbCBuZXdQb29sQWxsb2NhdGVkOwog
ICAgIEFOR0xFX1RSWShtRHJpdmVyVW5pZm9ybXNEZXNjcmlwdG9yUG9vbHNbcGlwZWxpbmVUeXBl
XS5hbGxvY2F0ZVNldHNBbmRHZXRJbmZvKAotICAgICAgICB0aGlzLCBkcml2ZXJVbmlmb3Jtcy5k
ZXNjcmlwdG9yU2V0TGF5b3V0LmdldCgpLCAxLCAmZHJpdmVyVW5pZm9ybXMuZGVzY3JpcHRvclBv
b2xCaW5kaW5nLAotICAgICAgICAmZHJpdmVyVW5pZm9ybXMuZGVzY3JpcHRvclNldCwgJm5ld1Bv
b2xBbGxvY2F0ZWQpKTsKKyAgICAgICAgdGhpcywgJm1SZXNvdXJjZVVzZUxpc3QsIGRyaXZlclVu
aWZvcm1zLmRlc2NyaXB0b3JTZXRMYXlvdXQuZ2V0KCksIDEsCisgICAgICAgICZkcml2ZXJVbmlm
b3Jtcy5kZXNjcmlwdG9yUG9vbEJpbmRpbmcsICZkcml2ZXJVbmlmb3Jtcy5kZXNjcmlwdG9yU2V0
LCAmbmV3UG9vbEFsbG9jYXRlZCkpOwogICAgIG1Db250ZXh0UGVyZkNvdW50ZXJzLmRlc2NyaXB0
b3JTZXRzQWxsb2NhdGVkW3BpcGVsaW5lVHlwZV0rKzsKIAogICAgIC8vIENsZWFyIGRlc2NyaXB0
b3Igc2V0IGNhY2hlLiBJdCBtYXkgbm8gbG9uZ2VyIGJlIHZhbGlkLgpAQCAtNTQzNSwxMiArNTU1
NiwxMiBAQCBhbmdsZTo6UmVzdWx0IENvbnRleHRWazo6dXBkYXRlRHJpdmVyVW5pZm9ybXNEZXNj
cmlwdG9yU2V0KGJvb2wgbmV3QnVmZmVyLAogICAgIH0KIAogICAgIC8vIFVwZGF0ZSB0aGUgZHJp
dmVyIHVuaWZvcm0gZGVzY3JpcHRvciBzZXQuCi0gICAgVmtEZXNjcmlwdG9yQnVmZmVySW5mbyAm
YnVmZmVySW5mbyA9IGFsbG9jRGVzY3JpcHRvckJ1ZmZlckluZm8oKTsKKyAgICBWa0Rlc2NyaXB0
b3JCdWZmZXJJbmZvICZidWZmZXJJbmZvID0gbVVwZGF0ZURlc2NyaXB0b3JTZXRzQnVpbGRlci5h
bGxvY0Rlc2NyaXB0b3JCdWZmZXJJbmZvKCk7CiAgICAgYnVmZmVySW5mby5idWZmZXIgICAgICAg
ICAgICAgICAgICA9IGRyaXZlclVuaWZvcm1zLmN1cnJlbnRCdWZmZXItPmdldEJ1ZmZlcigpLmdl
dEhhbmRsZSgpOwogICAgIGJ1ZmZlckluZm8ub2Zmc2V0ICAgICAgICAgICAgICAgICAgPSAwOwog
ICAgIGJ1ZmZlckluZm8ucmFuZ2UgICAgICAgICAgICAgICAgICAgPSBkcml2ZXJVbmlmb3Jtc1Np
emU7CiAKLSAgICBWa1dyaXRlRGVzY3JpcHRvclNldCAmd3JpdGVJbmZvID0gYWxsb2NXcml0ZURl
c2NyaXB0b3JTZXQoKTsKKyAgICBWa1dyaXRlRGVzY3JpcHRvclNldCAmd3JpdGVJbmZvID0gbVVw
ZGF0ZURlc2NyaXB0b3JTZXRzQnVpbGRlci5hbGxvY1dyaXRlRGVzY3JpcHRvclNldCgpOwogICAg
IHdyaXRlSW5mby5zVHlwZSAgICAgICAgICAgICAgICAgPSBWS19TVFJVQ1RVUkVfVFlQRV9XUklU
RV9ERVNDUklQVE9SX1NFVDsKICAgICB3cml0ZUluZm8uZHN0U2V0ICAgICAgICAgICAgICAgID0g
ZHJpdmVyVW5pZm9ybXMuZGVzY3JpcHRvclNldDsKICAgICB3cml0ZUluZm8uZHN0QmluZGluZyAg
ICAgICAgICAgID0gMDsKQEAgLTYyODIsNiArNjQwMywxNSBAQCBib29sIENvbnRleHRWazo6c2hv
dWxkQ29udmVydFVpbnQ4VmtJbmRleFR5cGUoZ2w6OkRyYXdFbGVtZW50c1R5cGUgZ2xJbmRleFR5
cGUpCiAgICAgICAgICAgICAhbVJlbmRlcmVyLT5nZXRGZWF0dXJlcygpLnN1cHBvcnRzSW5kZXhU
eXBlVWludDguZW5hYmxlZCk7CiB9CiAKK2FuZ2xlOjpSZXN1bHQgQ29udGV4dFZrOjpzdWJtaXRP
dXRzaWRlUmVuZGVyUGFzc0NvbW1hbmRzSW1wbCgpCit7CisgICAgQU5HTEVfVFJBQ0VfRVZFTlQw
KCJncHUuYW5nbGUiLCAiQ29udGV4dFZrOjpzdWJtaXRPdXRzaWRlUmVuZGVyUGFzc0NvbW1hbmRz
SW1wbCIpOworICAgIEFOR0xFX1RSWShmbHVzaE91dHNpZGVSZW5kZXJQYXNzQ29tbWFuZHMoKSk7
CisgICAgU2VyaWFsIHVudXNlZFNlcmlhbDsKKyAgICBBTkdMRV9UUlkoc3VibWl0RnJhbWVPdXRz
aWRlQ29tbWFuZEJ1ZmZlck9ubHkoJnVudXNlZFNlcmlhbCkpOworICAgIHJldHVybiBhbmdsZTo6
UmVzdWx0OjpDb250aW51ZTsKK30KKwogYW5nbGU6OlJlc3VsdCBDb250ZXh0Vms6OmZsdXNoT3V0
c2lkZVJlbmRlclBhc3NDb21tYW5kcygpCiB7CiAgICAgaWYgKG1PdXRzaWRlUmVuZGVyUGFzc0Nv
bW1hbmRzLT5lbXB0eSgpKQpAQCAtNjQ1Nyw2NCArNjU4Nyw2IEBAIGJvb2wgQ29udGV4dFZrOjpp
c1JvYnVzdFJlc291cmNlSW5pdEVuYWJsZWQoKSBjb25zdAogICAgIHJldHVybiBtU3RhdGUuaXNS
b2J1c3RSZXNvdXJjZUluaXRFbmFibGVkKCk7CiB9CiAKLXRlbXBsYXRlIDx0eXBlbmFtZSBULCBj
b25zdCBUICpWa1dyaXRlRGVzY3JpcHRvclNldDo6KnBJbmZvPgotdm9pZCBDb250ZXh0Vms6Omdy
b3dEZXNjaXB0b3JDYXBhY2l0eShzdGQ6OnZlY3RvcjxUPiAqZGVzY3JpcHRvclZlY3Rvciwgc2l6
ZV90IG5ld1NpemUpCi17Ci0gICAgY29uc3QgVCAqY29uc3Qgb2xkSW5mb1N0YXJ0ID0gZGVzY3Jp
cHRvclZlY3Rvci0+ZW1wdHkoKSA/IG51bGxwdHIgOiAmKCpkZXNjcmlwdG9yVmVjdG9yKVswXTsK
LSAgICBzaXplX3QgbmV3Q2FwYWNpdHkgICAgICAgICAgPSBzdGQ6Om1heChkZXNjcmlwdG9yVmVj
dG9yLT5jYXBhY2l0eSgpIDw8IDEsIG5ld1NpemUpOwotICAgIGRlc2NyaXB0b3JWZWN0b3ItPnJl
c2VydmUobmV3Q2FwYWNpdHkpOwotCi0gICAgaWYgKG9sZEluZm9TdGFydCkKLSAgICB7Ci0gICAg
ICAgIC8vIHBhdGNoIG1Xcml0ZUluZm8gd2l0aCBuZXcgQnVmZmVySW5mby9JbWFnZUluZm8gcG9p
bnRlcnMKLSAgICAgICAgZm9yIChWa1dyaXRlRGVzY3JpcHRvclNldCAmc2V0IDogbVdyaXRlRGVz
Y3JpcHRvclNldHMpCi0gICAgICAgIHsKLSAgICAgICAgICAgIGlmIChzZXQuKnBJbmZvKQotICAg
ICAgICAgICAgewotICAgICAgICAgICAgICAgIHNpemVfdCBpbmRleCA9IHNldC4qcEluZm8gLSBv
bGRJbmZvU3RhcnQ7Ci0gICAgICAgICAgICAgICAgc2V0LipwSW5mbyAgID0gJigqZGVzY3JpcHRv
clZlY3RvcilbaW5kZXhdOwotICAgICAgICAgICAgfQotICAgICAgICB9Ci0gICAgfQotfQotCi10
ZW1wbGF0ZSA8dHlwZW5hbWUgVCwgY29uc3QgVCAqVmtXcml0ZURlc2NyaXB0b3JTZXQ6OipwSW5m
bz4KLVQgKkNvbnRleHRWazo6YWxsb2NEZXNjcmlwdG9ySW5mb3Moc3RkOjp2ZWN0b3I8VD4gKmRl
c2NyaXB0b3JWZWN0b3IsIHNpemVfdCBjb3VudCkKLXsKLSAgICBzaXplX3Qgb2xkU2l6ZSA9IGRl
c2NyaXB0b3JWZWN0b3ItPnNpemUoKTsKLSAgICBzaXplX3QgbmV3U2l6ZSA9IG9sZFNpemUgKyBj
b3VudDsKLSAgICBpZiAobmV3U2l6ZSA+IGRlc2NyaXB0b3JWZWN0b3ItPmNhcGFjaXR5KCkpCi0g
ICAgewotICAgICAgICAvLyBJZiB3ZSBoYXZlIHJlYWNoZWQgY2FwYWNpdHksIGdyb3cgdGhlIHN0
b3JhZ2UgYW5kIHBhdGNoIHRoZSBkZXNjcmlwdG9yIHNldCB3aXRoIG5ldwotICAgICAgICAvLyBi
dWZmZXIgaW5mbyBwb2ludGVyCi0gICAgICAgIGdyb3dEZXNjaXB0b3JDYXBhY2l0eTxULCBwSW5m
bz4oZGVzY3JpcHRvclZlY3RvciwgbmV3U2l6ZSk7Ci0gICAgfQotICAgIGRlc2NyaXB0b3JWZWN0
b3ItPnJlc2l6ZShuZXdTaXplKTsKLSAgICByZXR1cm4gJigqZGVzY3JpcHRvclZlY3Rvcilbb2xk
U2l6ZV07Ci19Ci0KLVZrRGVzY3JpcHRvckJ1ZmZlckluZm8gKkNvbnRleHRWazo6YWxsb2NEZXNj
cmlwdG9yQnVmZmVySW5mb3Moc2l6ZV90IGNvdW50KQotewotICAgIHJldHVybiBhbGxvY0Rlc2Ny
aXB0b3JJbmZvczxWa0Rlc2NyaXB0b3JCdWZmZXJJbmZvLCAmVmtXcml0ZURlc2NyaXB0b3JTZXQ6
OnBCdWZmZXJJbmZvPigKLSAgICAgICAgJm1EZXNjcmlwdG9yQnVmZmVySW5mb3MsIGNvdW50KTsK
LX0KLQotVmtEZXNjcmlwdG9ySW1hZ2VJbmZvICpDb250ZXh0Vms6OmFsbG9jRGVzY3JpcHRvcklt
YWdlSW5mb3Moc2l6ZV90IGNvdW50KQotewotICAgIHJldHVybiBhbGxvY0Rlc2NyaXB0b3JJbmZv
czxWa0Rlc2NyaXB0b3JJbWFnZUluZm8sICZWa1dyaXRlRGVzY3JpcHRvclNldDo6cEltYWdlSW5m
bz4oCi0gICAgICAgICZtRGVzY3JpcHRvckltYWdlSW5mb3MsIGNvdW50KTsKLX0KLQotVmtXcml0
ZURlc2NyaXB0b3JTZXQgKkNvbnRleHRWazo6YWxsb2NXcml0ZURlc2NyaXB0b3JTZXRzKHNpemVf
dCBjb3VudCkKLXsKLSAgICBtUGVyZkNvdW50ZXJzLndyaXRlRGVzY3JpcHRvclNldHMgKz0gY291
bnQ7Ci0KLSAgICBzaXplX3Qgb2xkU2l6ZSA9IG1Xcml0ZURlc2NyaXB0b3JTZXRzLnNpemUoKTsK
LSAgICBzaXplX3QgbmV3U2l6ZSA9IG9sZFNpemUgKyBjb3VudDsKLSAgICBtV3JpdGVEZXNjcmlw
dG9yU2V0cy5yZXNpemUobmV3U2l6ZSk7Ci0gICAgcmV0dXJuICZtV3JpdGVEZXNjcmlwdG9yU2V0
c1tvbGRTaXplXTsKLX0KLQogdm9pZCBDb250ZXh0Vms6OnNldERlZmF1bHRVbmlmb3JtQmxvY2tz
TWluU2l6ZUZvclRlc3Rpbmcoc2l6ZV90IG1pblNpemUpCiB7CiAgICAgbURlZmF1bHRVbmlmb3Jt
U3RvcmFnZS5zZXRNaW5pbXVtU2l6ZUZvclRlc3RpbmcobWluU2l6ZSk7CkBAIC02ODU2LDQgKzY5
MjgsMTA5IEBAIFByb2dyYW1FeGVjdXRhYmxlVmsgKkNvbnRleHRWazo6Z2V0RXhlY3V0YWJsZSgp
IGNvbnN0CiAgICAgfQogICAgIHJldHVybiBudWxscHRyOwogfQorCitjb25zdCBhbmdsZTo6UGVy
Zk1vbml0b3JDb3VudGVyR3JvdXBzICZDb250ZXh0Vms6OmdldFBlcmZNb25pdG9yQ291bnRlcnMo
KQoreworICAgIHN5bmNPYmplY3RQZXJmQ291bnRlcnMoKTsKKworICAgIGFuZ2xlOjpQZXJmTW9u
aXRvckNvdW50ZXJzICZjb3VudGVycyA9CisgICAgICAgIGFuZ2xlOjpHZXRQZXJmTW9uaXRvckNv
dW50ZXJHcm91cChtUGVyZk1vbml0b3JDb3VudGVycywgInZ1bGthbiIpLmNvdW50ZXJzOworCisj
ZGVmaW5lIEFOR0xFX1VQREFURV9QRVJGX01BUChDT1VOVEVSKSBcCisgICAgYW5nbGU6OkdldFBl
cmZNb25pdG9yQ291bnRlcihjb3VudGVycywgI0NPVU5URVIpLnZhbHVlID0gbVBlcmZDb3VudGVy
cy5DT1VOVEVSOworCisgICAgQU5HTEVfVktfUEVSRl9DT1VOVEVSU19YKEFOR0xFX1VQREFURV9Q
RVJGX01BUCkKKworI3VuZGVmIEFOR0xFX1VQREFURV9QRVJGX01BUAorICAgIHJldHVybiBtUGVy
Zk1vbml0b3JDb3VudGVyczsKK30KKworLy8gVXBkYXRlRGVzY3JpcHRvclNldHNCdWlsZGVyIGlt
cGxlbWVudGF0aW9uLgorVXBkYXRlRGVzY3JpcHRvclNldHNCdWlsZGVyOjpVcGRhdGVEZXNjcmlw
dG9yU2V0c0J1aWxkZXIoKQoreworICAgIC8vIFJlc2VydmUgcmVhc29uYWJsZSBhbW91bnQgb2Yg
c3BhY2VzIHNvIHRoYXQgZm9yIG1ham9yaXR5IG9mIGFwcHMgd2UgZG9uJ3QgbmVlZCB0byBncm93
IGF0IGFsbAorICAgIG1EZXNjcmlwdG9yQnVmZmVySW5mb3MucmVzZXJ2ZShrRGVzY3JpcHRvckJ1
ZmZlckluZm9zSW5pdGlhbFNpemUpOworICAgIG1EZXNjcmlwdG9ySW1hZ2VJbmZvcy5yZXNlcnZl
KGtEZXNjcmlwdG9ySW1hZ2VJbmZvc0luaXRpYWxTaXplKTsKKyAgICBtV3JpdGVEZXNjcmlwdG9y
U2V0cy5yZXNlcnZlKGtEZXNjcmlwdG9yV3JpdGVJbmZvc0luaXRpYWxTaXplKTsKK30KKworVXBk
YXRlRGVzY3JpcHRvclNldHNCdWlsZGVyOjp+VXBkYXRlRGVzY3JpcHRvclNldHNCdWlsZGVyKCkg
PSBkZWZhdWx0OworCit0ZW1wbGF0ZSA8dHlwZW5hbWUgVCwgY29uc3QgVCAqVmtXcml0ZURlc2Ny
aXB0b3JTZXQ6OipwSW5mbz4KK3ZvaWQgVXBkYXRlRGVzY3JpcHRvclNldHNCdWlsZGVyOjpncm93
RGVzY3JpcHRvckNhcGFjaXR5KHN0ZDo6dmVjdG9yPFQ+ICpkZXNjcmlwdG9yVmVjdG9yLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6
ZV90IG5ld1NpemUpCit7CisgICAgY29uc3QgVCAqY29uc3Qgb2xkSW5mb1N0YXJ0ID0gZGVzY3Jp
cHRvclZlY3Rvci0+ZW1wdHkoKSA/IG51bGxwdHIgOiAmKCpkZXNjcmlwdG9yVmVjdG9yKVswXTsK
KyAgICBzaXplX3QgbmV3Q2FwYWNpdHkgICAgICAgICAgPSBzdGQ6Om1heChkZXNjcmlwdG9yVmVj
dG9yLT5jYXBhY2l0eSgpIDw8IDEsIG5ld1NpemUpOworICAgIGRlc2NyaXB0b3JWZWN0b3ItPnJl
c2VydmUobmV3Q2FwYWNpdHkpOworCisgICAgaWYgKG9sZEluZm9TdGFydCkKKyAgICB7CisgICAg
ICAgIC8vIHBhdGNoIG1Xcml0ZUluZm8gd2l0aCBuZXcgQnVmZmVySW5mby9JbWFnZUluZm8gcG9p
bnRlcnMKKyAgICAgICAgZm9yIChWa1dyaXRlRGVzY3JpcHRvclNldCAmc2V0IDogbVdyaXRlRGVz
Y3JpcHRvclNldHMpCisgICAgICAgIHsKKyAgICAgICAgICAgIGlmIChzZXQuKnBJbmZvKQorICAg
ICAgICAgICAgeworICAgICAgICAgICAgICAgIHNpemVfdCBpbmRleCA9IHNldC4qcEluZm8gLSBv
bGRJbmZvU3RhcnQ7CisgICAgICAgICAgICAgICAgc2V0LipwSW5mbyAgID0gJigqZGVzY3JpcHRv
clZlY3RvcilbaW5kZXhdOworICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgfQorfQorCit0
ZW1wbGF0ZSA8dHlwZW5hbWUgVCwgY29uc3QgVCAqVmtXcml0ZURlc2NyaXB0b3JTZXQ6OipwSW5m
bz4KK1QgKlVwZGF0ZURlc2NyaXB0b3JTZXRzQnVpbGRlcjo6YWxsb2NEZXNjcmlwdG9ySW5mb3Mo
c3RkOjp2ZWN0b3I8VD4gKmRlc2NyaXB0b3JWZWN0b3IsIHNpemVfdCBjb3VudCkKK3sKKyAgICBz
aXplX3Qgb2xkU2l6ZSA9IGRlc2NyaXB0b3JWZWN0b3ItPnNpemUoKTsKKyAgICBzaXplX3QgbmV3
U2l6ZSA9IG9sZFNpemUgKyBjb3VudDsKKyAgICBpZiAobmV3U2l6ZSA+IGRlc2NyaXB0b3JWZWN0
b3ItPmNhcGFjaXR5KCkpCisgICAgeworICAgICAgICAvLyBJZiB3ZSBoYXZlIHJlYWNoZWQgY2Fw
YWNpdHksIGdyb3cgdGhlIHN0b3JhZ2UgYW5kIHBhdGNoIHRoZSBkZXNjcmlwdG9yIHNldCB3aXRo
IG5ldworICAgICAgICAvLyBidWZmZXIgaW5mbyBwb2ludGVyCisgICAgICAgIGdyb3dEZXNjcmlw
dG9yQ2FwYWNpdHk8VCwgcEluZm8+KGRlc2NyaXB0b3JWZWN0b3IsIG5ld1NpemUpOworICAgIH0K
KyAgICBkZXNjcmlwdG9yVmVjdG9yLT5yZXNpemUobmV3U2l6ZSk7CisgICAgcmV0dXJuICYoKmRl
c2NyaXB0b3JWZWN0b3IpW29sZFNpemVdOworfQorCitWa0Rlc2NyaXB0b3JCdWZmZXJJbmZvICpV
cGRhdGVEZXNjcmlwdG9yU2V0c0J1aWxkZXI6OmFsbG9jRGVzY3JpcHRvckJ1ZmZlckluZm9zKHNp
emVfdCBjb3VudCkKK3sKKyAgICByZXR1cm4gYWxsb2NEZXNjcmlwdG9ySW5mb3M8VmtEZXNjcmlw
dG9yQnVmZmVySW5mbywgJlZrV3JpdGVEZXNjcmlwdG9yU2V0OjpwQnVmZmVySW5mbz4oCisgICAg
ICAgICZtRGVzY3JpcHRvckJ1ZmZlckluZm9zLCBjb3VudCk7Cit9CisKK1ZrRGVzY3JpcHRvcklt
YWdlSW5mbyAqVXBkYXRlRGVzY3JpcHRvclNldHNCdWlsZGVyOjphbGxvY0Rlc2NyaXB0b3JJbWFn
ZUluZm9zKHNpemVfdCBjb3VudCkKK3sKKyAgICByZXR1cm4gYWxsb2NEZXNjcmlwdG9ySW5mb3M8
VmtEZXNjcmlwdG9ySW1hZ2VJbmZvLCAmVmtXcml0ZURlc2NyaXB0b3JTZXQ6OnBJbWFnZUluZm8+
KAorICAgICAgICAmbURlc2NyaXB0b3JJbWFnZUluZm9zLCBjb3VudCk7Cit9CisKK1ZrV3JpdGVE
ZXNjcmlwdG9yU2V0ICpVcGRhdGVEZXNjcmlwdG9yU2V0c0J1aWxkZXI6OmFsbG9jV3JpdGVEZXNj
cmlwdG9yU2V0cyhzaXplX3QgY291bnQpCit7CisgICAgc2l6ZV90IG9sZFNpemUgPSBtV3JpdGVE
ZXNjcmlwdG9yU2V0cy5zaXplKCk7CisgICAgc2l6ZV90IG5ld1NpemUgPSBvbGRTaXplICsgY291
bnQ7CisgICAgbVdyaXRlRGVzY3JpcHRvclNldHMucmVzaXplKG5ld1NpemUpOworICAgIHJldHVy
biAmbVdyaXRlRGVzY3JpcHRvclNldHNbb2xkU2l6ZV07Cit9CisKK3VpbnQzMl90IFVwZGF0ZURl
c2NyaXB0b3JTZXRzQnVpbGRlcjo6Zmx1c2hEZXNjcmlwdG9yU2V0VXBkYXRlcyhWa0RldmljZSBk
ZXZpY2UpCit7CisgICAgaWYgKG1Xcml0ZURlc2NyaXB0b3JTZXRzLmVtcHR5KCkpCisgICAgewor
ICAgICAgICBBU1NFUlQobURlc2NyaXB0b3JCdWZmZXJJbmZvcy5lbXB0eSgpKTsKKyAgICAgICAg
QVNTRVJUKG1EZXNjcmlwdG9ySW1hZ2VJbmZvcy5lbXB0eSgpKTsKKyAgICAgICAgcmV0dXJuIDA7
CisgICAgfQorCisgICAgdmtVcGRhdGVEZXNjcmlwdG9yU2V0cyhkZXZpY2UsIHN0YXRpY19jYXN0
PHVpbnQzMl90PihtV3JpdGVEZXNjcmlwdG9yU2V0cy5zaXplKCkpLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgbVdyaXRlRGVzY3JpcHRvclNldHMuZGF0YSgpLCAwLCBudWxscHRyKTsKKwor
ICAgIHVpbnQzMl90IHJldFZhbCA9IHN0YXRpY19jYXN0PHVpbnQzMl90PihtRGVzY3JpcHRvcklt
YWdlSW5mb3Muc2l6ZSgpKTsKKworICAgIG1Xcml0ZURlc2NyaXB0b3JTZXRzLmNsZWFyKCk7Cisg
ICAgbURlc2NyaXB0b3JCdWZmZXJJbmZvcy5jbGVhcigpOworICAgIG1EZXNjcmlwdG9ySW1hZ2VJ
bmZvcy5jbGVhcigpOworCisgICAgcmV0dXJuIHJldFZhbDsKK30KIH0gIC8vIG5hbWVzcGFjZSBy
eApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRl
cmVyL3Z1bGthbi9Db250ZXh0VmsuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJB
TkdMRS9yZW5kZXJlci92dWxrYW4vQ29udGV4dFZrLmgKb2xkIG1vZGUgMTAwNzU1Cm5ldyBtb2Rl
IDEwMDY0NAppbmRleCA5NmE5MzQ5OWU5NmUwMzcxYzNlMTRkNDk3YTA5MTI5MDczYmNjNjA0Li41
ZTE3MGVkZTc3ODMyMzlhMDczNmUzMjFhZWVkMDMyNjYxOGJjOGRhCi0tLSBhL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vQ29udGV4dFZrLmgKKysr
IGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9D
b250ZXh0VmsuaApAQCAtMzcsNiArMzcsMTAgQEAgY2xhc3MgU2hhcmVHcm91cFZrOwogc3RhdGlj
IGNvbnN0ZXhwciB1aW50MzJfdCBrTWF4R3B1RXZlbnROYW1lTGVuID0gMzI7CiB1c2luZyBFdmVu
dE5hbWUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPSBzdGQ6OmFycmF5PGNoYXIsIGtN
YXhHcHVFdmVudE5hbWVMZW4+OwogCisvLyBJZiB0aGUgdG90YWwgc2l6ZSBvZiBjb3B5QnVmZmVy
VG9JbWFnZSBjb21tYW5kcyBpbiB0aGUgb3V0c2lkZSBjb21tYW5kIGJ1ZmZlciByZWFjaGVzIHRo
ZQorLy8gdGhyZXNob2xkIGJlbG93LCB0aGUgbGF0dGVyIGlzIGZsdXNoZWQuCitzdGF0aWMgY29u
c3RleHByIFZrRGV2aWNlU2l6ZSBrTWF4QnVmZmVyVG9JbWFnZUNvcHlTaXplID0gMSA8PCAyODsK
KwogdXNpbmcgQ29udGV4dFZrRGVzY3JpcHRvclNldExpc3QgPSBhbmdsZTo6UGFja2VkRW51bU1h
cDxQaXBlbGluZVR5cGUsIHVpbnQzMl90PjsKIAogc3RydWN0IENvbnRleHRWa1BlcmZDb3VudGVy
cwpAQCAtNjAsNiArNjQsNDAgQEAgZW51bSBjbGFzcyBRdWV1ZVN1Ym1pdFR5cGUKICAgICBTa2lw
UXVldWVTdWJtaXQsCiB9OwogCitjbGFzcyBVcGRhdGVEZXNjcmlwdG9yU2V0c0J1aWxkZXIgZmlu
YWwgOiBhbmdsZTo6Tm9uQ29weWFibGUKK3sKKyAgcHVibGljOgorICAgIFVwZGF0ZURlc2NyaXB0
b3JTZXRzQnVpbGRlcigpOworICAgIH5VcGRhdGVEZXNjcmlwdG9yU2V0c0J1aWxkZXIoKTsKKwor
ICAgIFZrRGVzY3JpcHRvckJ1ZmZlckluZm8gKmFsbG9jRGVzY3JpcHRvckJ1ZmZlckluZm9zKHNp
emVfdCBjb3VudCk7CisgICAgVmtEZXNjcmlwdG9ySW1hZ2VJbmZvICphbGxvY0Rlc2NyaXB0b3JJ
bWFnZUluZm9zKHNpemVfdCBjb3VudCk7CisgICAgVmtXcml0ZURlc2NyaXB0b3JTZXQgKmFsbG9j
V3JpdGVEZXNjcmlwdG9yU2V0cyhzaXplX3QgY291bnQpOworCisgICAgVmtEZXNjcmlwdG9yQnVm
ZmVySW5mbyAmYWxsb2NEZXNjcmlwdG9yQnVmZmVySW5mbygpIHsgcmV0dXJuICphbGxvY0Rlc2Ny
aXB0b3JCdWZmZXJJbmZvcygxKTsgfQorICAgIFZrRGVzY3JpcHRvckltYWdlSW5mbyAmYWxsb2NE
ZXNjcmlwdG9ySW1hZ2VJbmZvKCkgeyByZXR1cm4gKmFsbG9jRGVzY3JpcHRvckltYWdlSW5mb3Mo
MSk7IH0KKyAgICBWa1dyaXRlRGVzY3JpcHRvclNldCAmYWxsb2NXcml0ZURlc2NyaXB0b3JTZXQo
KSB7IHJldHVybiAqYWxsb2NXcml0ZURlc2NyaXB0b3JTZXRzKDEpOyB9CisKKyAgICAvLyBSZXR1
cm5zIHRoZSBudW1iZXIgb2Ygd3JpdHRlbiBkZXNjcmlwdG9yIHNldHMuCisgICAgdWludDMyX3Qg
Zmx1c2hEZXNjcmlwdG9yU2V0VXBkYXRlcyhWa0RldmljZSBkZXZpY2UpOworCisgIHByaXZhdGU6
CisgICAgdGVtcGxhdGUgPHR5cGVuYW1lIFQsIGNvbnN0IFQgKlZrV3JpdGVEZXNjcmlwdG9yU2V0
OjoqcEluZm8+CisgICAgVCAqYWxsb2NEZXNjcmlwdG9ySW5mb3Moc3RkOjp2ZWN0b3I8VD4gKmRl
c2NyaXB0b3JWZWN0b3IsIHNpemVfdCBjb3VudCk7CisgICAgdGVtcGxhdGUgPHR5cGVuYW1lIFQs
IGNvbnN0IFQgKlZrV3JpdGVEZXNjcmlwdG9yU2V0OjoqcEluZm8+CisgICAgdm9pZCBncm93RGVz
Y3JpcHRvckNhcGFjaXR5KHN0ZDo6dmVjdG9yPFQ+ICpkZXNjcmlwdG9yVmVjdG9yLCBzaXplX3Qg
bmV3U2l6ZSk7CisKKyAgICBzdGQ6OnZlY3RvcjxWa0Rlc2NyaXB0b3JCdWZmZXJJbmZvPiBtRGVz
Y3JpcHRvckJ1ZmZlckluZm9zOworICAgIHN0ZDo6dmVjdG9yPFZrRGVzY3JpcHRvckltYWdlSW5m
bz4gbURlc2NyaXB0b3JJbWFnZUluZm9zOworICAgIHN0ZDo6dmVjdG9yPFZrV3JpdGVEZXNjcmlw
dG9yU2V0PiBtV3JpdGVEZXNjcmlwdG9yU2V0czsKK307CisKK2VudW0gY2xhc3MgU3VibWl0RnJh
bWVUeXBlCit7CisgICAgT3V0c2lkZUFuZFJQQ29tbWFuZHMsCisgICAgT3V0c2lkZVJQQ29tbWFu
ZHNPbmx5LAorfTsKKwogY2xhc3MgQ29udGV4dFZrIDogcHVibGljIENvbnRleHRJbXBsLCBwdWJs
aWMgdms6OkNvbnRleHQsIHB1YmxpYyBNdWx0aXNhbXBsZVRleHR1cmVJbml0aWFsaXplcgogewog
ICBwdWJsaWM6CkBAIC0zNDUsNiArMzgzLDkgQEAgY2xhc3MgQ29udGV4dFZrIDogcHVibGljIENv
bnRleHRJbXBsLCBwdWJsaWMgdms6OkNvbnRleHQsIHB1YmxpYyBNdWx0aXNhbXBsZVRleHQKICAg
ICAvLyBFWFRfc2hhZGVyX2ZyYW1lYnVmZmVyX2ZldGNoX25vbl9jb2hlcmVudAogICAgIHZvaWQg
ZnJhbWVidWZmZXJGZXRjaEJhcnJpZXIoKSBvdmVycmlkZTsKIAorICAgIC8vIEtIUl9ibGVuZF9l
cXVhdGlvbl9hZHZhbmNlZAorICAgIHZvaWQgYmxlbmRCYXJyaWVyKCkgb3ZlcnJpZGU7CisKICAg
ICAvLyBHTF9BTkdMRV92dWxrYW5faW1hZ2UKICAgICBhbmdsZTo6UmVzdWx0IGFjcXVpcmVUZXh0
dXJlcyhjb25zdCBnbDo6Q29udGV4dCAqY29udGV4dCwKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBjb25zdCBnbDo6VGV4dHVyZUJhcnJpZXJWZWN0b3IgJnRleHR1cmVCYXJyaWVy
cykgb3ZlcnJpZGU7CkBAIC02MDMsNiArNjQ0LDcgQEAgY2xhc3MgQ29udGV4dFZrIDogcHVibGlj
IENvbnRleHRJbXBsLCBwdWJsaWMgdms6OkNvbnRleHQsIHB1YmxpYyBNdWx0aXNhbXBsZVRleHQK
ICAgICBhbmdsZTo6UmVzdWx0IHN0YXJ0TmV4dFN1YnBhc3MoKTsKICAgICBhbmdsZTo6UmVzdWx0
IGZsdXNoQ29tbWFuZHNBbmRFbmRSZW5kZXJQYXNzKFJlbmRlclBhc3NDbG9zdXJlUmVhc29uIHJl
YXNvbik7CiAgICAgYW5nbGU6OlJlc3VsdCBmbHVzaENvbW1hbmRzQW5kRW5kUmVuZGVyUGFzc1dp
dGhvdXRRdWV1ZVN1Ym1pdChSZW5kZXJQYXNzQ2xvc3VyZVJlYXNvbiByZWFzb24pOworICAgIGFu
Z2xlOjpSZXN1bHQgc3VibWl0T3V0c2lkZVJlbmRlclBhc3NDb21tYW5kc0ltcGwoKTsKIAogICAg
IGFuZ2xlOjpSZXN1bHQgc3luY0V4dGVybmFsTWVtb3J5KCk7CiAKQEAgLTYzOCwyMiArNjgwLDE2
IEBAIGNsYXNzIENvbnRleHRWayA6IHB1YmxpYyBDb250ZXh0SW1wbCwgcHVibGljIHZrOjpDb250
ZXh0LCBwdWJsaWMgTXVsdGlzYW1wbGVUZXh0CiAgICAgdm9pZCB1cGRhdGVPdmVybGF5T25QcmVz
ZW50KCk7CiAgICAgdm9pZCBhZGRPdmVybGF5VXNlZEJ1ZmZlcnNDb3VudCh2azo6Q29tbWFuZEJ1
ZmZlckhlbHBlckNvbW1vbiAqY29tbWFuZEJ1ZmZlcik7CiAKLSAgICAvLyBEZXNjcmlwdG9yU2V0
IHdyaXRlcwotICAgIFZrRGVzY3JpcHRvckJ1ZmZlckluZm8gKmFsbG9jRGVzY3JpcHRvckJ1ZmZl
ckluZm9zKHNpemVfdCBjb3VudCk7Ci0gICAgVmtEZXNjcmlwdG9ySW1hZ2VJbmZvICphbGxvY0Rl
c2NyaXB0b3JJbWFnZUluZm9zKHNpemVfdCBjb3VudCk7Ci0gICAgVmtXcml0ZURlc2NyaXB0b3JT
ZXQgKmFsbG9jV3JpdGVEZXNjcmlwdG9yU2V0cyhzaXplX3QgY291bnQpOwotCi0gICAgVmtEZXNj
cmlwdG9yQnVmZmVySW5mbyAmYWxsb2NEZXNjcmlwdG9yQnVmZmVySW5mbygpIHsgcmV0dXJuICph
bGxvY0Rlc2NyaXB0b3JCdWZmZXJJbmZvcygxKTsgfQotICAgIFZrRGVzY3JpcHRvckltYWdlSW5m
byAmYWxsb2NEZXNjcmlwdG9ySW1hZ2VJbmZvKCkgeyByZXR1cm4gKmFsbG9jRGVzY3JpcHRvcklt
YWdlSW5mb3MoMSk7IH0KLSAgICBWa1dyaXRlRGVzY3JpcHRvclNldCAmYWxsb2NXcml0ZURlc2Ny
aXB0b3JTZXQoKSB7IHJldHVybiAqYWxsb2NXcml0ZURlc2NyaXB0b3JTZXRzKDEpOyB9Ci0KICAg
ICAvLyBGb3IgdGVzdGluZyBvbmx5LgogICAgIHZvaWQgc2V0RGVmYXVsdFVuaWZvcm1CbG9ja3NN
aW5TaXplRm9yVGVzdGluZyhzaXplX3QgbWluU2l6ZSk7CiAKICAgICB2azo6QnVmZmVySGVscGVy
ICZnZXRFbXB0eUJ1ZmZlcigpIHsgcmV0dXJuIG1FbXB0eUJ1ZmZlcjsgfQogCi0gICAgY29uc3Qg
dms6OlBlcmZDb3VudGVycyAmZ2V0UGVyZkNvdW50ZXJzKCkgY29uc3QgeyByZXR1cm4gbVBlcmZD
b3VudGVyczsgfQotICAgIHZrOjpQZXJmQ291bnRlcnMgJmdldFBlcmZDb3VudGVycygpIHsgcmV0
dXJuIG1QZXJmQ291bnRlcnM7IH0KKyAgICAvLyBLZWVwaW5nIHRyYWNrIG9mIHRoZSBidWZmZXIg
Y29weSBzaXplLiBVc2VkIHRvIGRldGVybWluZSB3aGVuIHRvIHN1Ym1pdCB0aGUgb3V0c2lkZSBj
b21tYW5kCisgICAgLy8gYnVmZmVyLgorICAgIGFuZ2xlOjpSZXN1bHQgb25Db3B5VXBkYXRlKFZr
RGV2aWNlU2l6ZSBzaXplKTsKKyAgICB2b2lkIHJlc2V0VG90YWxCdWZmZXJUb0ltYWdlQ29weVNp
emUoKSB7IG1Ub3RhbEJ1ZmZlclRvSW1hZ2VDb3B5U2l6ZSA9IDA7IH0KKyAgICBWa0RldmljZVNp
emUgZ2V0VG90YWxCdWZmZXJUb0ltYWdlQ29weVNpemUoKSBjb25zdCB7IHJldHVybiBtVG90YWxC
dWZmZXJUb0ltYWdlQ29weVNpemU7IH0KIAogICAgIC8vIEltcGxlbWVudGF0aW9uIG9mIE11bHRp
c2FtcGxlVGV4dHVyZUluaXRpYWxpemVyCiAgICAgYW5nbGU6OlJlc3VsdCBpbml0aWFsaXplTXVs
dGlzYW1wbGVUZXh0dXJlVG9CbGFjayhjb25zdCBnbDo6Q29udGV4dCAqY29udGV4dCwKQEAgLTY4
OCw2ICs3MjQsOCBAQCBjbGFzcyBDb250ZXh0VmsgOiBwdWJsaWMgQ29udGV4dEltcGwsIHB1Ymxp
YyB2azo6Q29udGV4dCwgcHVibGljIE11bHRpc2FtcGxlVGV4dAogICAgICAgICByZXR1cm4gYW5n
bGU6OlJlc3VsdDo6Q29udGludWU7CiAgICAgfQogCisgICAgY29uc3QgYW5nbGU6OlBlcmZNb25p
dG9yQ291bnRlckdyb3VwcyAmZ2V0UGVyZk1vbml0b3JDb3VudGVycygpIG92ZXJyaWRlOworCiAg
IHByaXZhdGU6CiAgICAgLy8gRGlydHkgYml0cy4KICAgICBlbnVtIERpcnR5Qml0VHlwZSA6IHNp
emVfdApAQCAtNzIxLDYgKzc1OSw3IEBAIGNsYXNzIENvbnRleHRWayA6IHB1YmxpYyBDb250ZXh0
SW1wbCwgcHVibGljIHZrOjpDb250ZXh0LCBwdWJsaWMgTXVsdGlzYW1wbGVUZXh0CiAgICAgICAg
IERJUlRZX0JJVF9UUkFOU0ZPUk1fRkVFREJBQ0tfUkVTVU1FLAogICAgICAgICBESVJUWV9CSVRf
REVTQ1JJUFRPUl9TRVRTLAogICAgICAgICBESVJUWV9CSVRfRlJBTUVCVUZGRVJfRkVUQ0hfQkFS
UklFUiwKKyAgICAgICAgRElSVFlfQklUX0JMRU5EX0JBUlJJRVIsCiAgICAgICAgIC8vIER5bmFt
aWMgdmlld3BvcnQvc2Npc3NvcgogICAgICAgICBESVJUWV9CSVRfVklFV1BPUlQsCiAgICAgICAg
IERJUlRZX0JJVF9TQ0lTU09SLApAQCAtODI3LDYgKzg2Niw3IEBAIGNsYXNzIENvbnRleHRWayA6
IHB1YmxpYyBDb250ZXh0SW1wbCwgcHVibGljIHZrOjpDb250ZXh0LCBwdWJsaWMgTXVsdGlzYW1w
bGVUZXh0CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnbDo6RHJhd0VsZW1l
bnRzVHlwZSBpbmRleFR5cGVPckludmFsaWQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBjb25zdCB2b2lkICppbmRpY2VzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgdWludDMyX3QgKm51bUluZGljZXNPdXQpOworCiAgICAgYW5nbGU6OlJlc3VsdCBz
ZXR1cERpc3BhdGNoKGNvbnN0IGdsOjpDb250ZXh0ICpjb250ZXh0KTsKIAogICAgIGdsOjpSZWN0
YW5nbGUgZ2V0Q29ycmVjdGVkVmlld3BvcnQoY29uc3QgZ2w6OlJlY3RhbmdsZSAmdmlld3BvcnQp
IGNvbnN0OwpAQCAtODk0LDYgKzkzNCw4IEBAIGNsYXNzIENvbnRleHRWayA6IHB1YmxpYyBDb250
ZXh0SW1wbCwgcHVibGljIHZrOjpDb250ZXh0LCBwdWJsaWMgTXVsdGlzYW1wbGVUZXh0CiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIERpcnR5Qml0
cyBkaXJ0eUJpdE1hc2spOwogICAgIGFuZ2xlOjpSZXN1bHQgaGFuZGxlRGlydHlHcmFwaGljc0Zy
YW1lYnVmZmVyRmV0Y2hCYXJyaWVyKERpcnR5Qml0czo6SXRlcmF0b3IgKmRpcnR5Qml0c0l0ZXJh
dG9yLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIERpcnR5Qml0cyBkaXJ0eUJpdE1hc2spOworICAgIGFuZ2xlOjpSZXN1bHQgaGFu
ZGxlRGlydHlHcmFwaGljc0JsZW5kQmFycmllcihEaXJ0eUJpdHM6Okl0ZXJhdG9yICpkaXJ0eUJp
dHNJdGVyYXRvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgRGlydHlCaXRzIGRpcnR5Qml0TWFzayk7CiAgICAgYW5nbGU6OlJlc3VsdCBoYW5kbGVE
aXJ0eUdyYXBoaWNzVHJhbnNmb3JtRmVlZGJhY2tCdWZmZXJzRW11bGF0aW9uKAogICAgICAgICBE
aXJ0eUJpdHM6Okl0ZXJhdG9yICpkaXJ0eUJpdHNJdGVyYXRvciwKICAgICAgICAgRGlydHlCaXRz
IGRpcnR5Qml0TWFzayk7CkBAIC05NTIsNiArOTk0LDEwIEBAIGNsYXNzIENvbnRleHRWayA6IHB1
YmxpYyBDb250ZXh0SW1wbCwgcHVibGljIHZrOjpDb250ZXh0LCBwdWJsaWMgTXVsdGlzYW1wbGVU
ZXh0CiAgICAgdm9pZCB3cml0ZUF0b21pY0NvdW50ZXJCdWZmZXJEcml2ZXJVbmlmb3JtT2Zmc2V0
cyh1aW50MzJfdCAqb2Zmc2V0c091dCwgc2l6ZV90IG9mZnNldHNTaXplKTsKIAogICAgIGFuZ2xl
OjpSZXN1bHQgc3VibWl0RnJhbWUoY29uc3Qgdms6OlNlbWFwaG9yZSAqc2lnbmFsU2VtYXBob3Jl
LCBTZXJpYWwgKnN1Ym1pdFNlcmlhbE91dCk7CisgICAgYW5nbGU6OlJlc3VsdCBzdWJtaXRGcmFt
ZU91dHNpZGVDb21tYW5kQnVmZmVyT25seShTZXJpYWwgKnN1Ym1pdFNlcmlhbE91dCk7CisgICAg
YW5nbGU6OlJlc3VsdCBzdWJtaXRGcmFtZUltcGwoY29uc3Qgdms6OlNlbWFwaG9yZSAqc2lnbmFs
U2VtYXBob3JlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNlcmlhbCAqc3Vi
bWl0U2VyaWFsT3V0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN1Ym1pdEZy
YW1lVHlwZSBzdWJtaXRGcmFtZVR5cGUpOwogCiAgICAgYW5nbGU6OlJlc3VsdCBzeW5jaHJvbml6
ZUNwdUdwdVRpbWUoKTsKICAgICBhbmdsZTo6UmVzdWx0IHRyYWNlR3B1RXZlbnRJbXBsKHZrOjpP
dXRzaWRlUmVuZGVyUGFzc0NvbW1hbmRCdWZmZXIgKmNvbW1hbmRCdWZmZXIsCkBAIC0xMDA0LDEy
ICsxMDUwLDYgQEAgY2xhc3MgQ29udGV4dFZrIDogcHVibGljIENvbnRleHRJbXBsLCBwdWJsaWMg
dms6OkNvbnRleHQsIHB1YmxpYyBNdWx0aXNhbXBsZVRleHQKICAgICAgICAgc2l6ZV90IGJ1ZmZl
ckNvdW50LAogICAgICAgICBjb25zdCBnbDo6VHJhbnNmb3JtRmVlZGJhY2tCdWZmZXJzQXJyYXk8
dms6OkJ1ZmZlckhlbHBlciAqPiAmYnVmZmVycyk7CiAKLSAgICAvLyBEZXNjcmlwdG9yU2V0IHdy
aXRlcwotICAgIHRlbXBsYXRlIDx0eXBlbmFtZSBULCBjb25zdCBUICpWa1dyaXRlRGVzY3JpcHRv
clNldDo6KnBJbmZvPgotICAgIFQgKmFsbG9jRGVzY3JpcHRvckluZm9zKHN0ZDo6dmVjdG9yPFQ+
ICpkZXNjcmlwdG9yVmVjdG9yLCBzaXplX3QgY291bnQpOwotICAgIHRlbXBsYXRlIDx0eXBlbmFt
ZSBULCBjb25zdCBUICpWa1dyaXRlRGVzY3JpcHRvclNldDo6KnBJbmZvPgotICAgIHZvaWQgZ3Jv
d0Rlc2NpcHRvckNhcGFjaXR5KHN0ZDo6dmVjdG9yPFQ+ICpkZXNjcmlwdG9yVmVjdG9yLCBzaXpl
X3QgbmV3U2l6ZSk7Ci0KICAgICBhbmdsZTo6UmVzdWx0IHVwZGF0ZVJlbmRlclBhc3NEZXB0aFN0
ZW5jaWxBY2Nlc3MoKTsKICAgICBib29sIHNob3VsZFN3aXRjaFRvUmVhZE9ubHlEZXB0aEZlZWRi
YWNrTG9vcE1vZGUoZ2w6OlRleHR1cmUgKnRleHR1cmUsCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdsOjpDb21tYW5kIGNvbW1hbmQpIGNvbnN0
OwpAQCAtMTE3MCw3ICsxMjEwLDcgQEAgY2xhc3MgQ29udGV4dFZrIDogcHVibGljIENvbnRleHRJ
bXBsLCBwdWJsaWMgdms6OkNvbnRleHQsIHB1YmxpYyBNdWx0aXNhbXBsZVRleHQKICAgICBHcmFw
aGljc0V2ZW50Q21kQnVmIG1RdWVyeUV2ZW50VHlwZTsKIAogICAgIC8vIFRyYW5zZm9ybSBmZWVk
YmFjayBidWZmZXJzLgotICAgIGFuZ2xlOjpGYXN0VW5vcmRlcmVkU2V0PGNvbnN0IHZrOjpCdWZm
ZXJIZWxwZXIgKiwKKyAgICBhbmdsZTo6RmxhdFVub3JkZXJlZFNldDxjb25zdCB2azo6QnVmZmVy
SGVscGVyICosCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2w6OklNUExFTUVOVEFUSU9O
X01BWF9UUkFOU0ZPUk1fRkVFREJBQ0tfQlVGRkVSUz4KICAgICAgICAgbUN1cnJlbnRUcmFuc2Zv
cm1GZWVkYmFja0J1ZmZlcnM7CiAKQEAgLTExOTcsNiArMTIzNywxMCBAQCBjbGFzcyBDb250ZXh0
VmsgOiBwdWJsaWMgQ29udGV4dEltcGwsIHB1YmxpYyB2azo6Q29udGV4dCwgcHVibGljIE11bHRp
c2FtcGxlVGV4dAogICAgIC8vIEdMX0VYVF9zaGFkZXJfZnJhbWVidWZmZXJfZmV0Y2hfbm9uX2Nv
aGVyZW50CiAgICAgYm9vbCBtTGFzdFByb2dyYW1Vc2VzRnJhbWVidWZmZXJGZXRjaDsKIAorICAg
IC8vIFRoZSBzaXplIG9mIGNvcHkgY29tbWFuZHMgaXNzdWVkIGJldHdlZW4gYnVmZmVycyBhbmQg
aW1hZ2VzLiBVc2VkIHRvIHN1Ym1pdCB0aGUgY29tbWFuZAorICAgIC8vIGJ1ZmZlciBmb3IgdGhl
IG91dHNpZGUgcmVuZGVyIHBhc3MuCisgICAgVmtEZXZpY2VTaXplIG1Ub3RhbEJ1ZmZlclRvSW1h
Z2VDb3B5U2l6ZSA9IDA7CisKICAgICAvLyBTZW1hcGhvcmVzIHRoYXQgbXVzdCBiZSB3YWl0ZWQg
b24gaW4gdGhlIG5leHQgc3VibWlzc2lvbi4KICAgICBzdGQ6OnZlY3RvcjxWa1NlbWFwaG9yZT4g
bVdhaXRTZW1hcGhvcmVzOwogICAgIHN0ZDo6dmVjdG9yPFZrUGlwZWxpbmVTdGFnZUZsYWdzPiBt
V2FpdFNlbWFwaG9yZVN0YWdlTWFza3M7CkBAIC0xMjEwLDcgKzEyNTQsNyBAQCBjbGFzcyBDb250
ZXh0VmsgOiBwdWJsaWMgQ29udGV4dEltcGwsIHB1YmxpYyB2azo6Q29udGV4dCwgcHVibGljIE11
bHRpc2FtcGxlVGV4dAogICAgIHVpbnQ2NF90IG1HcHVFdmVudFRpbWVzdGFtcE9yaWdpbjsKIAog
ICAgIC8vIEEgbWl4IG9mIHBlci1mcmFtZSBhbmQgcGVyLXJ1biBjb3VudGVycy4KLSAgICB2azo6
UGVyZkNvdW50ZXJzIG1QZXJmQ291bnRlcnM7CisgICAgYW5nbGU6OlBlcmZNb25pdG9yQ291bnRl
ckdyb3VwcyBtUGVyZk1vbml0b3JDb3VudGVyczsKICAgICBDb250ZXh0VmtQZXJmQ291bnRlcnMg
bUNvbnRleHRQZXJmQ291bnRlcnM7CiAgICAgQ29udGV4dFZrUGVyZkNvdW50ZXJzIG1DdW11bGF0
aXZlQ29udGV4dFBlcmZDb3VudGVyczsKIApAQCAtMTIyMiw5ICsxMjY2LDcgQEAgY2xhc3MgQ29u
dGV4dFZrIDogcHVibGljIENvbnRleHRJbXBsLCBwdWJsaWMgdms6OkNvbnRleHQsIHB1YmxpYyBN
dWx0aXNhbXBsZVRleHQKICAgICBlZ2w6OkNvbnRleHRQcmlvcml0eSBtQ29udGV4dFByaW9yaXR5
OwogCiAgICAgLy8gU3RvcmFnZSBmb3IgdmtVcGRhdGVEZXNjcmlwdG9yU2V0cwotICAgIHN0ZDo6
dmVjdG9yPFZrRGVzY3JpcHRvckJ1ZmZlckluZm8+IG1EZXNjcmlwdG9yQnVmZmVySW5mb3M7Ci0g
ICAgc3RkOjp2ZWN0b3I8VmtEZXNjcmlwdG9ySW1hZ2VJbmZvPiBtRGVzY3JpcHRvckltYWdlSW5m
b3M7Ci0gICAgc3RkOjp2ZWN0b3I8VmtXcml0ZURlc2NyaXB0b3JTZXQ+IG1Xcml0ZURlc2NyaXB0
b3JTZXRzOworICAgIFVwZGF0ZURlc2NyaXB0b3JTZXRzQnVpbGRlciBtVXBkYXRlRGVzY3JpcHRv
clNldHNCdWlsZGVyOwogCiAgICAgU2hhcmVHcm91cFZrICptU2hhcmVHcm91cFZrOwogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVs
a2FuL0Rpc3BsYXlWay5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUv
cmVuZGVyZXIvdnVsa2FuL0Rpc3BsYXlWay5jcHAKaW5kZXggOWEyNTI0ZTFiYjIzZjNhNjM3OTEy
ZDU5ODhmYTliZTQyYjNhNWYwZS4uNTZiZTE0NWY1ZTYwMTRiYjg1ZmY0YzJlZTRmOTUyZDBkYWFi
NjUwOSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3Jl
bmRlcmVyL3Z1bGthbi9EaXNwbGF5VmsuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vRGlzcGxheVZrLmNwcApAQCAtMjYsNyArMjYs
NyBAQAogbmFtZXNwYWNlIHJ4CiB7CiAvLyBUaW1lIGludGVydmFsIGluIHNlY29uZHMgdGhhdCB3
ZSBzaG91bGQgdHJ5IHRvIHBydW5lIGRlZmF1bHQgYnVmZmVyIHBvb2xzLgotY29uc3RleHByIGRv
dWJsZSBrVGltZUVsYXBzZWRGb3JQcnVuZURlZmF1bHRCdWZmZXJQb29sID0gMTsKK2NvbnN0ZXhw
ciBkb3VibGUga1RpbWVFbGFwc2VkRm9yUHJ1bmVEZWZhdWx0QnVmZmVyUG9vbCA9IDAuMjU7CiAK
IERpc3BsYXlWazo6RGlzcGxheVZrKGNvbnN0IGVnbDo6RGlzcGxheVN0YXRlICZzdGF0ZSkKICAg
ICA6IERpc3BsYXlJbXBsKHN0YXRlKSwKQEAgLTM0Niw2ICszNDYsOCBAQCB2b2lkIERpc3BsYXlW
azo6Z2VuZXJhdGVFeHRlbnNpb25zKGVnbDo6RGlzcGxheUV4dGVuc2lvbnMgKm91dEV4dGVuc2lv
bnMpIGNvbnN0CiAKICAgICBvdXRFeHRlbnNpb25zLT5sb2NrU3VyZmFjZTNLSFIgPQogICAgICAg
ICBnZXRSZW5kZXJlcigpLT5nZXRGZWF0dXJlcygpLnN1cHBvcnRzTG9ja1N1cmZhY2VFeHRlbnNp
b24uZW5hYmxlZDsKKworICAgIG91dEV4dGVuc2lvbnMtPnBhcnRpYWxVcGRhdGVLSFIgPSB0cnVl
OwogfQogCiB2b2lkIERpc3BsYXlWazo6Z2VuZXJhdGVDYXBzKGVnbDo6Q2FwcyAqb3V0Q2Fwcykg
Y29uc3QKQEAgLTQzNSw2ICs0MzcsMTggQEAgdm9pZCBTaGFyZUdyb3VwVms6Om9uRGVzdHJveShj
b25zdCBlZ2w6OkRpc3BsYXkgKmRpc3BsYXkpCiAgICAgQVNTRVJUKG1SZXNvdXJjZVVzZUxpc3Rz
LmVtcHR5KCkpOwogfQogCit2b2lkIFNoYXJlR3JvdXBWazo6cmVsZWFzZVJlc291cmNlVXNlTGlz
dHMoY29uc3QgU2VyaWFsICZzdWJtaXRTZXJpYWwpCit7CisgICAgaWYgKCFtUmVzb3VyY2VVc2VM
aXN0cy5lbXB0eSgpKQorICAgIHsKKyAgICAgICAgZm9yICh2azo6UmVzb3VyY2VVc2VMaXN0ICZp
dCA6IG1SZXNvdXJjZVVzZUxpc3RzKQorICAgICAgICB7CisgICAgICAgICAgICBpdC5yZWxlYXNl
UmVzb3VyY2VVc2VzQW5kVXBkYXRlU2VyaWFscyhzdWJtaXRTZXJpYWwpOworICAgICAgICB9Cisg
ICAgICAgIG1SZXNvdXJjZVVzZUxpc3RzLmNsZWFyKCk7CisgICAgfQorfQorCiB2azo6QnVmZmVy
UG9vbCAqU2hhcmVHcm91cFZrOjpnZXREZWZhdWx0QnVmZmVyUG9vbChSZW5kZXJlclZrICpyZW5k
ZXJlciwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IFZrRGV2aWNlU2l6ZSBzaXplLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgdWludDMyX3QgbWVtb3J5VHlwZUluZGV4KQpkaWZmIC0tZ2l0IGEvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9EaXNwbGF5
VmsuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxr
YW4vRGlzcGxheVZrLmgKaW5kZXggYmYxNTFmZGFjMzA2MWMzNjQwZWIxMTBlZWRlZDVmZTI2ZGFi
ODk4Yi4uM2RmZDE0OGI2NGMwM2EyNTE3NmViYjdiNmJlMDJkZGE0NmVlOGVmZSAxMDA2NDQKLS0t
IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9E
aXNwbGF5VmsuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVu
ZGVyZXIvdnVsa2FuL0Rpc3BsYXlWay5oCkBAIC0zNiwxNCArMzYsMTcgQEAgY2xhc3MgU2hhcmVH
cm91cFZrIDogcHVibGljIFNoYXJlR3JvdXBJbXBsCiAgICAgRGVzY3JpcHRvclNldExheW91dENh
Y2hlICZnZXREZXNjcmlwdG9yU2V0TGF5b3V0Q2FjaGUoKSB7IHJldHVybiBtRGVzY3JpcHRvclNl
dExheW91dENhY2hlOyB9CiAgICAgQ29udGV4dFZrU2V0ICpnZXRDb250ZXh0cygpIHsgcmV0dXJu
ICZtQ29udGV4dHM7IH0KIAotICAgIHN0ZDo6dmVjdG9yPHZrOjpSZXNvdXJjZVVzZUxpc3Q+ICYm
cmVsZWFzZVJlc291cmNlVXNlTGlzdHMoKQotICAgIHsKLSAgICAgICAgcmV0dXJuIHN0ZDo6bW92
ZShtUmVzb3VyY2VVc2VMaXN0cyk7Ci0gICAgfQorICAgIHZvaWQgcmVsZWFzZVJlc291cmNlVXNl
TGlzdHMoY29uc3QgU2VyaWFsICZzdWJtaXRTZXJpYWwpOwogICAgIHZvaWQgYWNxdWlyZVJlc291
cmNlVXNlTGlzdCh2azo6UmVzb3VyY2VVc2VMaXN0ICYmcmVzb3VyY2VVc2VMaXN0KQogICAgIHsK
ICAgICAgICAgbVJlc291cmNlVXNlTGlzdHMuZW1wbGFjZV9iYWNrKHN0ZDo6bW92ZShyZXNvdXJj
ZVVzZUxpc3QpKTsKICAgICB9CisgICAgdm9pZCBjb3B5UmVzb3VyY2VVc2VMaXN0KHZrOjpSZXNv
dXJjZVVzZUxpc3QgJnJlc291cmNlVXNlTGlzdCkKKyAgICB7CisgICAgICAgIHZrOjpSZXNvdXJj
ZVVzZUxpc3QgY29weVJlc291cmNlVXNlTGlzdDsKKyAgICAgICAgY29weVJlc291cmNlVXNlTGlz
dC5jb3B5KHJlc291cmNlVXNlTGlzdCk7CisgICAgICAgIG1SZXNvdXJjZVVzZUxpc3RzLmVtcGxh
Y2VfYmFjayhzdGQ6Om1vdmUoY29weVJlc291cmNlVXNlTGlzdCkpOworICAgIH0KIAogICAgIHZr
OjpCdWZmZXJQb29sICpnZXREZWZhdWx0QnVmZmVyUG9vbChSZW5kZXJlclZrICpyZW5kZXJlciwK
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVmtEZXZpY2VTaXplIHNp
emUsCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVu
ZGVyZXIvdnVsa2FuL0ZyYW1lYnVmZmVyVmsuY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUv
c3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9GcmFtZWJ1ZmZlclZrLmNwcAppbmRleCBkMGIx
MjAyYjUyYzM2MWZlOGUwNzIyYTZlZWNkMjdjZDdlZWVlNDc4Li4zMTMxYzA1MjRjMWIwMDI3MDJj
NzUwNWQzMGQxOGE1MTM0OTkzZGRmIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL0ZyYW1lYnVmZmVyVmsuY3BwCisrKyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vRnJhbWVi
dWZmZXJWay5jcHAKQEAgLTEyMTAsNyArMTIxMCw3IEBAIGFuZ2xlOjpSZXN1bHQgRnJhbWVidWZm
ZXJWazo6YmxpdChjb25zdCBnbDo6Q29udGV4dCAqY29udGV4dCwKICAgICAgICAgICAgICAgICBj
b250ZXh0VmstPmZsdXNoQ29tbWFuZHNBbmRFbmRSZW5kZXJQYXNzKFJlbmRlclBhc3NDbG9zdXJl
UmVhc29uOjpQcmVwYXJlRm9yQmxpdCkpOwogCiAgICAgICAgICAgICBjb25zdCB2azo6SW1hZ2VW
aWV3ICpjb3B5SW1hZ2VWaWV3ID0gbnVsbHB0cjsKLSAgICAgICAgICAgIEFOR0xFX1RSWShyZWFk
UmVuZGVyVGFyZ2V0LT5nZXRBbmRSZXRhaW5Db3B5SW1hZ2VWaWV3KGNvbnRleHRWaywgJmNvcHlJ
bWFnZVZpZXcpKTsKKyAgICAgICAgICAgIEFOR0xFX1RSWShyZWFkUmVuZGVyVGFyZ2V0LT5nZXRD
b3B5SW1hZ2VWaWV3KGNvbnRleHRWaywgJmNvcHlJbWFnZVZpZXcpKTsKICAgICAgICAgICAgIEFO
R0xFX1RSWSh1dGlsc1ZrLmNvbG9yQmxpdFJlc29sdmUoCiAgICAgICAgICAgICAgICAgY29udGV4
dFZrLCB0aGlzLCAmcmVhZFJlbmRlclRhcmdldC0+Z2V0SW1hZ2VGb3JDb3B5KCksIGNvcHlJbWFn
ZVZpZXcsIHBhcmFtcykpOwogICAgICAgICB9CkBAIC0xNDU5LDcgKzE0NTksNyBAQCBhbmdsZTo6
UmVzdWx0IEZyYW1lYnVmZmVyVms6OnJlc29sdmVDb2xvcldpdGhDb21tYW5kKENvbnRleHRWayAq
Y29udGV4dFZrLAogICAgIHJlc29sdmVSZWdpb24uZXh0ZW50LmhlaWdodCAgICAgICAgICAgICAg
ICAgPSBwYXJhbXMuYmxpdEFyZWEuaGVpZ2h0OwogICAgIHJlc29sdmVSZWdpb24uZXh0ZW50LmRl
cHRoICAgICAgICAgICAgICAgICAgPSAxOwogCi0gICAgdms6OlBlcmZDb3VudGVycyAmcGVyZkNv
dW50ZXJzID0gY29udGV4dFZrLT5nZXRQZXJmQ291bnRlcnMoKTsKKyAgICBhbmdsZTo6VnVsa2Fu
UGVyZkNvdW50ZXJzICZwZXJmQ291bnRlcnMgPSBjb250ZXh0VmstPmdldFBlcmZDb3VudGVycygp
OwogICAgIGZvciAoc2l6ZV90IGNvbG9ySW5kZXhHTCA6IG1TdGF0ZS5nZXRFbmFibGVkRHJhd0J1
ZmZlcnMoKSkKICAgICB7CiAgICAgICAgIFJlbmRlclRhcmdldFZrICpkcmF3UmVuZGVyVGFyZ2V0
ID0gbVJlbmRlclRhcmdldENhY2hlLmdldENvbG9ycygpW2NvbG9ySW5kZXhHTF07CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2Fu
L092ZXJsYXlWay5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVu
ZGVyZXIvdnVsa2FuL092ZXJsYXlWay5jcHAKaW5kZXggOTA1ZmE3YTQ3MTI0ZTlkMDVlNjkwOWVl
NjIwODczZjljZTM4ZTBjYy4uMzc0NmQwYWQwNmZmMGZlMzg5MTk1MjYxOTdlYWU0MjIyYzkwNzNl
OCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRl
cmVyL3Z1bGthbi9PdmVybGF5VmsuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3Ny
Yy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vT3ZlcmxheVZrLmNwcApAQCAtMjEsMTggKzIxLDYg
QEAgbmFtZXNwYWNlIHJ4CiBPdmVybGF5Vms6Ok92ZXJsYXlWayhjb25zdCBnbDo6T3ZlcmxheVN0
YXRlICZzdGF0ZSkgOiBPdmVybGF5SW1wbChzdGF0ZSkge30KIE92ZXJsYXlWazo6fk92ZXJsYXlW
aygpID0gZGVmYXVsdDsKIAotYW5nbGU6OlJlc3VsdCBPdmVybGF5Vms6OmluaXQoY29uc3QgZ2w6
OkNvbnRleHQgKmNvbnRleHQsIGJvb2wgKnN1Y2Nlc3NPdXQpCi17Ci0gICAgKnN1Y2Nlc3NPdXQg
PSBmYWxzZTsKLQotICAgIENvbnRleHRWayAqY29udGV4dFZrID0gdms6OkdldEltcGwoY29udGV4
dCk7Ci0gICAgQU5HTEVfVFJZKGNyZWF0ZUZvbnQoY29udGV4dFZrKSk7Ci0KLSAgICBBTkdMRV9U
UlkoY29udGV4dFZrLT5mbHVzaEltcGwobnVsbHB0ciwgUmVuZGVyUGFzc0Nsb3N1cmVSZWFzb246
Ok92ZXJsYXlGb250Q3JlYXRpb24pKTsKLSAgICAqc3VjY2Vzc091dCA9IHRydWU7Ci0gICAgcmV0
dXJuIGFuZ2xlOjpSZXN1bHQ6OkNvbnRpbnVlOwotfQotCiB2b2lkIE92ZXJsYXlWazo6b25EZXN0
cm95KGNvbnN0IGdsOjpDb250ZXh0ICpjb250ZXh0KQogewogICAgIFJlbmRlcmVyVmsgKnJlbmRl
cmVyID0gdms6OkdldEltcGwoY29udGV4dCktPmdldFJlbmRlcmVyKCk7CkBAIC0xMjQsNiArMTEy
LDEyIEBAIGFuZ2xlOjpSZXN1bHQgT3ZlcmxheVZrOjpvblByZXNlbnQoQ29udGV4dFZrICpjb250
ZXh0VmssCiAgICAgICAgIHJldHVybiBhbmdsZTo6UmVzdWx0OjpDb250aW51ZTsKICAgICB9CiAK
KyAgICAvLyBMYXppbHkgaW5pdGlhbGl6ZSB0aGUgZm9udCBvbiBmaXJzdCB1c2UKKyAgICBpZiAo
IW1Gb250SW1hZ2UudmFsaWQoKSkKKyAgICB7CisgICAgICAgIEFOR0xFX1RSWShjcmVhdGVGb250
KGNvbnRleHRWaykpOworICAgIH0KKwogICAgIFJlbmRlcmVyVmsgKnJlbmRlcmVyID0gY29udGV4
dFZrLT5nZXRSZW5kZXJlcigpOwogCiAgICAgdms6OlJlbmRlcmVyU2NvcGVkPHZrOjpCdWZmZXJI
ZWxwZXI+IHRleHREYXRhQnVmZmVyKHJlbmRlcmVyKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vT3ZlcmxheVZrLmggYi9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL092ZXJs
YXlWay5oCmluZGV4IDhjMGU3NjI4MDg5NjBjYzdlNjI0Nzc1NDc1MDQyZDRiMTJiYmU3NzMuLmFi
NTQ1M2RmYzkzM2MyN2YwYTNkYjg5NTRkMmQ2NjkzMTdkZDE2NjAgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vT3ZlcmxheVZr
LmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1
bGthbi9PdmVybGF5VmsuaApAQCAtMjUsNyArMjUsNiBAQCBjbGFzcyBPdmVybGF5VmsgOiBwdWJs
aWMgT3ZlcmxheUltcGwKICAgICBPdmVybGF5VmsoY29uc3QgZ2w6Ok92ZXJsYXlTdGF0ZSAmc3Rh
dGUpOwogICAgIH5PdmVybGF5VmsoKSBvdmVycmlkZTsKIAotICAgIGFuZ2xlOjpSZXN1bHQgaW5p
dChjb25zdCBnbDo6Q29udGV4dCAqY29udGV4dCwgYm9vbCAqc3VjY2Vzc091dCkgb3ZlcnJpZGU7
CiAgICAgdm9pZCBvbkRlc3Ryb3koY29uc3QgZ2w6OkNvbnRleHQgKmNvbnRleHQpIG92ZXJyaWRl
OwogCiAgICAgYW5nbGU6OlJlc3VsdCBvblByZXNlbnQoQ29udGV4dFZrICpjb250ZXh0VmssCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIv
dnVsa2FuL1Byb2dyYW1FeGVjdXRhYmxlVmsuY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUv
c3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9Qcm9ncmFtRXhlY3V0YWJsZVZrLmNwcAppbmRl
eCBmODYxZDc1ZjIzYWVmMzI4YmFhMDhkODAzNWNkMTk0NThjNWQ1YWU5Li4xZGFlYTUyYjI3N2Y5
MmVjNWE1NjBkMmQwOTZlODk2NGFlOGU0NTAyIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL1Byb2dyYW1FeGVjdXRhYmxlVmsu
Y3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci92
dWxrYW4vUHJvZ3JhbUV4ZWN1dGFibGVWay5jcHAKQEAgLTY0LDcgKzY0LDcgQEAgYm9vbCBWYWxp
ZGF0ZVRyYW5zZm9ybWVkU3BpclYoY29uc3QgZ2w6OlNoYWRlckJpdFNldCAmbGlua2VkU2hhZGVy
U3RhZ2VzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgU2hhZGVySW50ZXJm
YWNlVmFyaWFibGVJbmZvTWFwICZ2YXJpYWJsZUluZm9NYXAsCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBjb25zdCBnbDo6U2hhZGVyTWFwPGFuZ2xlOjpzcGlydjo6QmxvYj4gJnNwaXJ2
QmxvYnMpCiB7Ci0gICAgY29uc3QgZ2w6OlNoYWRlclR5cGUgbGFzdFByZUZyYWdtZW50U3RhZ2Ug
PSBnbDo6R2V0TGFzdFByZUZyYWdtZW50U3RhZ2UobGlua2VkU2hhZGVyU3RhZ2VzKTsKKyAgICBn
bDo6U2hhZGVyVHlwZSBsYXN0UHJlRnJhZ21lbnRTdGFnZSA9IGdsOjpHZXRMYXN0UHJlRnJhZ21l
bnRTdGFnZShsaW5rZWRTaGFkZXJTdGFnZXMpOwogCiAgICAgZm9yIChnbDo6U2hhZGVyVHlwZSBz
aGFkZXJUeXBlIDogbGlua2VkU2hhZGVyU3RhZ2VzKQogICAgIHsKQEAgLTEzNCw3ICsxMzQsNyBA
QCBhbmdsZTo6UmVzdWx0IFNoYWRlckluZm86OmluaXRTaGFkZXJzKGNvbnN0IGdsOjpTaGFkZXJC
aXRTZXQgJmxpbmtlZFNoYWRlclN0YWdlcwogewogICAgIGNsZWFyKCk7CiAKLSAgICBmb3IgKGNv
bnN0IGdsOjpTaGFkZXJUeXBlIHNoYWRlclR5cGUgOiBnbDo6QWxsU2hhZGVyVHlwZXMoKSkKKyAg
ICBmb3IgKGdsOjpTaGFkZXJUeXBlIHNoYWRlclR5cGUgOiBnbDo6QWxsU2hhZGVyVHlwZXMoKSkK
ICAgICB7CiAgICAgICAgIGlmIChzcGlydkJsb2JzW3NoYWRlclR5cGVdICE9IG51bGxwdHIpCiAg
ICAgICAgIHsKQEAgLTE3MCw3ICsxNzAsNyBAQCB2b2lkIFNoYWRlckluZm86OmxvYWQoZ2w6OkJp
bmFyeUlucHV0U3RyZWFtICpzdHJlYW0pCiAgICAgY2xlYXIoKTsKIAogICAgIC8vIFJlYWQgaW4g
c2hhZGVyIGNvZGVzIGZvciBhbGwgc2hhZGVyIHR5cGVzCi0gICAgZm9yIChjb25zdCBnbDo6U2hh
ZGVyVHlwZSBzaGFkZXJUeXBlIDogZ2w6OkFsbFNoYWRlclR5cGVzKCkpCisgICAgZm9yIChnbDo6
U2hhZGVyVHlwZSBzaGFkZXJUeXBlIDogZ2w6OkFsbFNoYWRlclR5cGVzKCkpCiAgICAgewogICAg
ICAgICBhbmdsZTo6c3BpcnY6OkJsb2IgKnNwaXJ2QmxvYiA9ICZtU3BpcnZCbG9ic1tzaGFkZXJU
eXBlXTsKIApAQCAtMTg2LDcgKzE4Niw3IEBAIHZvaWQgU2hhZGVySW5mbzo6c2F2ZShnbDo6Qmlu
YXJ5T3V0cHV0U3RyZWFtICpzdHJlYW0pCiAgICAgQVNTRVJUKHZhbGlkKCkpOwogCiAgICAgLy8g
V3JpdGUgb3V0IHNoYWRlciBjb2RlcyBmb3IgYWxsIHNoYWRlciB0eXBlcwotICAgIGZvciAoY29u
c3QgZ2w6OlNoYWRlclR5cGUgc2hhZGVyVHlwZSA6IGdsOjpBbGxTaGFkZXJUeXBlcygpKQorICAg
IGZvciAoZ2w6OlNoYWRlclR5cGUgc2hhZGVyVHlwZSA6IGdsOjpBbGxTaGFkZXJUeXBlcygpKQog
ICAgIHsKICAgICAgICAgY29uc3QgYW5nbGU6OnNwaXJ2OjpCbG9iICZzcGlydkJsb2IgPSBtU3Bp
cnZCbG9ic1tzaGFkZXJUeXBlXTsKIApAQCAtMjAxLDcgKzIwMSw3IEBAIFByb2dyYW1JbmZvOjpQ
cm9ncmFtSW5mbygpIHt9CiBQcm9ncmFtSW5mbzo6flByb2dyYW1JbmZvKCkgPSBkZWZhdWx0Owog
CiBhbmdsZTo6UmVzdWx0IFByb2dyYW1JbmZvOjppbml0UHJvZ3JhbShDb250ZXh0VmsgKmNvbnRl
eHRWaywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGdsOjpT
aGFkZXJUeXBlIHNoYWRlclR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBnbDo6U2hhZGVyVHlwZSBzaGFkZXJUeXBlLAogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgYm9vbCBpc0xhc3RQcmVGcmFnbWVudFN0YWdlLAogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCBpc1RyYW5zZm9ybUZlZWRiYWNrUHJvZ3Jh
bSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFNoYWRlcklu
Zm8gJnNoYWRlckluZm8sCkBAIC00ODIsNyArNDgyLDggQEAgdWludDMyX3QgR2V0SW50ZXJmYWNl
QmxvY2tBcnJheVNpemUoY29uc3Qgc3RkOjp2ZWN0b3I8Z2w6OkludGVyZmFjZUJsb2NrPiAmYmxv
Y2sKIH0KIAogYW5nbGU6OlJlc3VsdCBQcm9ncmFtRXhlY3V0YWJsZVZrOjphbGxvY1VuaWZvcm1B
bmRYZmJEZXNjcmlwdG9yU2V0KAotICAgIENvbnRleHRWayAqY29udGV4dFZrLAorICAgIHZrOjpD
b250ZXh0ICpjb250ZXh0LAorICAgIHZrOjpSZXNvdXJjZVVzZUxpc3QgKnJlc291cmNlVXNlTGlz
dCwKICAgICB2azo6QnVmZmVySGVscGVyICpkZWZhdWx0VW5pZm9ybUJ1ZmZlciwKICAgICBjb25z
dCB2azo6RGVzY3JpcHRvclNldERlc2MgJnhmYkJ1ZmZlckRlc2MsCiAgICAgYm9vbCAqbmV3RGVz
Y3JpcHRvclNldEFsbG9jYXRlZCkKQEAgLTQ5OCwxOSArNDk5LDE4IEBAIGFuZ2xlOjpSZXN1bHQg
UHJvZ3JhbUV4ZWN1dGFibGVWazo6YWxsb2NVbmlmb3JtQW5kWGZiRGVzY3JpcHRvclNldCgKICAg
ICAgICAgbURlc2NyaXB0b3JTZXRzW0Rlc2NyaXB0b3JTZXRJbmRleDo6VW5pZm9ybXNBbmRYZmJd
ID0gZGVzY3JpcHRvclNldDsKICAgICAgICAgLy8gVGhlIGRlc2NyaXB0b3IgcG9vbCB0aGF0IHRo
aXMgZGVzY3JpcHRvciBzZXQgd2FzIGFsbG9jYXRlZCBmcm9tIG5lZWRzIHRvIGJlIHJldGFpbmVk
IGVhY2gKICAgICAgICAgLy8gdGltZSB0aGUgZGVzY3JpcHRvciBzZXQgaXMgdXNlZCBpbiBhIG5l
dyBjb21tYW5kLgotICAgICAgICBtRGVzY3JpcHRvclBvb2xCaW5kaW5nc1tEZXNjcmlwdG9yU2V0
SW5kZXg6OlVuaWZvcm1zQW5kWGZiXS5nZXQoKS5yZXRhaW4oCi0gICAgICAgICAgICAmY29udGV4
dFZrLT5nZXRSZXNvdXJjZVVzZUxpc3QoKSk7CisgICAgICAgIG1EZXNjcmlwdG9yUG9vbEJpbmRp
bmdzW0Rlc2NyaXB0b3JTZXRJbmRleDo6VW5pZm9ybXNBbmRYZmJdLmdldCgpLnJldGFpbihyZXNv
dXJjZVVzZUxpc3QpOwogICAgICAgICByZXR1cm4gYW5nbGU6OlJlc3VsdDo6Q29udGludWU7CiAg
ICAgfQogCiAgICAgYm9vbCBuZXdQb29sQWxsb2NhdGVkOwotICAgIEFOR0xFX1RSWShhbGxvY2F0
ZURlc2NyaXB0b3JTZXRBbmRHZXRJbmZvKGNvbnRleHRWaywgRGVzY3JpcHRvclNldEluZGV4OjpV
bmlmb3Jtc0FuZFhmYiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAmbmV3UG9vbEFsbG9jYXRlZCkpOworICAgIEFOR0xFX1RSWShhbGxvY2F0ZURlc2NyaXB0
b3JTZXRBbmRHZXRJbmZvKAorICAgICAgICBjb250ZXh0LCByZXNvdXJjZVVzZUxpc3QsIERlc2Ny
aXB0b3JTZXRJbmRleDo6VW5pZm9ybXNBbmRYZmIsICZuZXdQb29sQWxsb2NhdGVkKSk7CiAKICAg
ICAvLyBDbGVhciBkZXNjcmlwdG9yIHNldCBjYWNoZS4gSXQgbWF5IG5vIGxvbmdlciBiZSB2YWxp
ZC4KICAgICBpZiAobmV3UG9vbEFsbG9jYXRlZCkKICAgICB7Ci0gICAgICAgIG1Vbmlmb3Jtc0Fu
ZFhmYkRlc2NyaXB0b3JzQ2FjaGUuZGVzdHJveShjb250ZXh0VmstPmdldFJlbmRlcmVyKCksCisg
ICAgICAgIG1Vbmlmb3Jtc0FuZFhmYkRlc2NyaXB0b3JzQ2FjaGUuZGVzdHJveShjb250ZXh0LT5n
ZXRSZW5kZXJlcigpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgVnVsa2FuQ2FjaGVUeXBlOjpVbmlmb3Jtc0FuZFhmYkRlc2NyaXB0b3JzKTsKICAgICB9
CiAKQEAgLTUyMiwxNSArNTIyLDE4IEBAIGFuZ2xlOjpSZXN1bHQgUHJvZ3JhbUV4ZWN1dGFibGVW
azo6YWxsb2NVbmlmb3JtQW5kWGZiRGVzY3JpcHRvclNldCgKICAgICByZXR1cm4gYW5nbGU6OlJl
c3VsdDo6Q29udGludWU7CiB9CiAKLWFuZ2xlOjpSZXN1bHQgUHJvZ3JhbUV4ZWN1dGFibGVWazo6
YWxsb2NhdGVEZXNjcmlwdG9yU2V0KENvbnRleHRWayAqY29udGV4dFZrLAorYW5nbGU6OlJlc3Vs
dCBQcm9ncmFtRXhlY3V0YWJsZVZrOjphbGxvY2F0ZURlc2NyaXB0b3JTZXQodms6OkNvbnRleHQg
KmNvbnRleHQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB2azo6UmVzb3VyY2VVc2VMaXN0ICpyZXNvdXJjZVVzZUxpc3QsCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBEZXNjcmlw
dG9yU2V0SW5kZXggZGVzY3JpcHRvclNldEluZGV4KQogewogICAgIGJvb2wgaWdub3JlTmV3UG9v
bEFsbG9jYXRlZDsKLSAgICByZXR1cm4gYWxsb2NhdGVEZXNjcmlwdG9yU2V0QW5kR2V0SW5mbyhj
b250ZXh0VmssIGRlc2NyaXB0b3JTZXRJbmRleCwgJmlnbm9yZU5ld1Bvb2xBbGxvY2F0ZWQpOwor
ICAgIHJldHVybiBhbGxvY2F0ZURlc2NyaXB0b3JTZXRBbmRHZXRJbmZvKGNvbnRleHQsIHJlc291
cmNlVXNlTGlzdCwgZGVzY3JpcHRvclNldEluZGV4LAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICZpZ25vcmVOZXdQb29sQWxsb2NhdGVkKTsKIH0KIAogYW5nbGU6
OlJlc3VsdCBQcm9ncmFtRXhlY3V0YWJsZVZrOjphbGxvY2F0ZURlc2NyaXB0b3JTZXRBbmRHZXRJ
bmZvKAotICAgIENvbnRleHRWayAqY29udGV4dFZrLAorICAgIHZrOjpDb250ZXh0ICpjb250ZXh0
LAorICAgIHZrOjpSZXNvdXJjZVVzZUxpc3QgKnJlc291cmNlVXNlTGlzdCwKICAgICBEZXNjcmlw
dG9yU2V0SW5kZXggZGVzY3JpcHRvclNldEluZGV4LAogICAgIGJvb2wgKm5ld1Bvb2xBbGxvY2F0
ZWRPdXQpCiB7CkBAIC01MzksOCArNTQyLDkgQEAgYW5nbGU6OlJlc3VsdCBQcm9ncmFtRXhlY3V0
YWJsZVZrOjphbGxvY2F0ZURlc2NyaXB0b3JTZXRBbmRHZXRJbmZvKAogICAgIGNvbnN0IHZrOjpE
ZXNjcmlwdG9yU2V0TGF5b3V0ICZkZXNjcmlwdG9yU2V0TGF5b3V0ID0KICAgICAgICAgbURlc2Ny
aXB0b3JTZXRMYXlvdXRzW2Rlc2NyaXB0b3JTZXRJbmRleF0uZ2V0KCk7CiAgICAgQU5HTEVfVFJZ
KGR5bmFtaWNEZXNjcmlwdG9yUG9vbC5hbGxvY2F0ZVNldHNBbmRHZXRJbmZvKAotICAgICAgICBj
b250ZXh0VmssIGRlc2NyaXB0b3JTZXRMYXlvdXQsIDEsICZtRGVzY3JpcHRvclBvb2xCaW5kaW5n
c1tkZXNjcmlwdG9yU2V0SW5kZXhdLAotICAgICAgICAmbURlc2NyaXB0b3JTZXRzW2Rlc2NyaXB0
b3JTZXRJbmRleF0sIG5ld1Bvb2xBbGxvY2F0ZWRPdXQpKTsKKyAgICAgICAgY29udGV4dCwgcmVz
b3VyY2VVc2VMaXN0LCBkZXNjcmlwdG9yU2V0TGF5b3V0LCAxLAorICAgICAgICAmbURlc2NyaXB0
b3JQb29sQmluZGluZ3NbZGVzY3JpcHRvclNldEluZGV4XSwgJm1EZXNjcmlwdG9yU2V0c1tkZXNj
cmlwdG9yU2V0SW5kZXhdLAorICAgICAgICBuZXdQb29sQWxsb2NhdGVkT3V0KSk7CiAgICAgbUVt
cHR5RGVzY3JpcHRvclNldHNbZGVzY3JpcHRvclNldEluZGV4XSA9IFZLX05VTExfSEFORExFOwog
CiAgICAgKyttUGVyZkNvdW50ZXJzLmRlc2NyaXB0b3JTZXRBbGxvY2F0aW9uc1tkZXNjcmlwdG9y
U2V0SW5kZXhdOwpAQCAtNTUwLDcgKzU1NCw3IEBAIGFuZ2xlOjpSZXN1bHQgUHJvZ3JhbUV4ZWN1
dGFibGVWazo6YWxsb2NhdGVEZXNjcmlwdG9yU2V0QW5kR2V0SW5mbygKIAogdm9pZCBQcm9ncmFt
RXhlY3V0YWJsZVZrOjphZGRJbnRlcmZhY2VCbG9ja0Rlc2NyaXB0b3JTZXREZXNjKAogICAgIGNv
bnN0IHN0ZDo6dmVjdG9yPGdsOjpJbnRlcmZhY2VCbG9jaz4gJmJsb2NrcywKLSAgICBjb25zdCBn
bDo6U2hhZGVyVHlwZSBzaGFkZXJUeXBlLAorICAgIGdsOjpTaGFkZXJUeXBlIHNoYWRlclR5cGUs
CiAgICAgVmtEZXNjcmlwdG9yVHlwZSBkZXNjVHlwZSwKICAgICB2azo6RGVzY3JpcHRvclNldExh
eW91dERlc2MgKmRlc2NPdXQpCiB7CkBAIC01ODEsNyArNTg1LDcgQEAgdm9pZCBQcm9ncmFtRXhl
Y3V0YWJsZVZrOjphZGRJbnRlcmZhY2VCbG9ja0Rlc2NyaXB0b3JTZXREZXNjKAogCiB2b2lkIFBy
b2dyYW1FeGVjdXRhYmxlVms6OmFkZEF0b21pY0NvdW50ZXJCdWZmZXJEZXNjcmlwdG9yU2V0RGVz
YygKICAgICBjb25zdCBzdGQ6OnZlY3RvcjxnbDo6QXRvbWljQ291bnRlckJ1ZmZlcj4gJmF0b21p
Y0NvdW50ZXJCdWZmZXJzLAotICAgIGNvbnN0IGdsOjpTaGFkZXJUeXBlIHNoYWRlclR5cGUsCisg
ICAgZ2w6OlNoYWRlclR5cGUgc2hhZGVyVHlwZSwKICAgICB2azo6RGVzY3JpcHRvclNldExheW91
dERlc2MgKmRlc2NPdXQpCiB7CiAgICAgaWYgKGF0b21pY0NvdW50ZXJCdWZmZXJzLmVtcHR5KCkp
CkBAIC02MzksNyArNjQzLDcgQEAgdm9pZCBQcm9ncmFtRXhlY3V0YWJsZVZrOjphZGRJbWFnZURl
c2NyaXB0b3JTZXREZXNjKGNvbnN0IGdsOjpQcm9ncmFtRXhlY3V0YWJsZQogICAgICAgICAgICAg
YXJyYXlTaXplICo9IG91dGVyQXJyYXlTaXplOwogICAgICAgICB9CiAKLSAgICAgICAgZm9yIChj
b25zdCBnbDo6U2hhZGVyVHlwZSBzaGFkZXJUeXBlIDogZXhlY3V0YWJsZS5nZXRMaW5rZWRTaGFk
ZXJTdGFnZXMoKSkKKyAgICAgICAgZm9yIChnbDo6U2hhZGVyVHlwZSBzaGFkZXJUeXBlIDogZXhl
Y3V0YWJsZS5nZXRMaW5rZWRTaGFkZXJTdGFnZXMoKSkKICAgICAgICAgewogICAgICAgICAgICAg
aWYgKCFpbWFnZVVuaWZvcm0uaXNBY3RpdmUoc2hhZGVyVHlwZSkpCiAgICAgICAgICAgICB7CkBA
IC02NjUsNyArNjY5LDcgQEAgdm9pZCBQcm9ncmFtRXhlY3V0YWJsZVZrOjphZGRJbWFnZURlc2Ny
aXB0b3JTZXREZXNjKGNvbnN0IGdsOjpQcm9ncmFtRXhlY3V0YWJsZQogCiB2b2lkIFByb2dyYW1F
eGVjdXRhYmxlVms6OmFkZElucHV0QXR0YWNobWVudERlc2NyaXB0b3JTZXREZXNjKAogICAgIGNv
bnN0IGdsOjpQcm9ncmFtRXhlY3V0YWJsZSAmZXhlY3V0YWJsZSwKLSAgICBjb25zdCBnbDo6U2hh
ZGVyVHlwZSBzaGFkZXJUeXBlLAorICAgIGdsOjpTaGFkZXJUeXBlIHNoYWRlclR5cGUsCiAgICAg
dms6OkRlc2NyaXB0b3JTZXRMYXlvdXREZXNjICpkZXNjT3V0KQogewogICAgIGlmIChzaGFkZXJU
eXBlICE9IGdsOjpTaGFkZXJUeXBlOjpGcmFnbWVudCkKQEAgLTczNCw3ICs3MzgsNyBAQCBhbmds
ZTo6UmVzdWx0IFByb2dyYW1FeGVjdXRhYmxlVms6OmFkZFRleHR1cmVEZXNjcmlwdG9yU2V0RGVz
YygKICAgICAgICAgICAgIGFycmF5U2l6ZSAqPSBvdXRlckFycmF5U2l6ZTsKICAgICAgICAgfQog
Ci0gICAgICAgIGZvciAoY29uc3QgZ2w6OlNoYWRlclR5cGUgc2hhZGVyVHlwZSA6IGV4ZWN1dGFi
bGUuZ2V0TGlua2VkU2hhZGVyU3RhZ2VzKCkpCisgICAgICAgIGZvciAoZ2w6OlNoYWRlclR5cGUg
c2hhZGVyVHlwZSA6IGV4ZWN1dGFibGUuZ2V0TGlua2VkU2hhZGVyU3RhZ2VzKCkpCiAgICAgICAg
IHsKICAgICAgICAgICAgIGlmICghc2FtcGxlclVuaWZvcm0uaXNBY3RpdmUoc2hhZGVyVHlwZSkp
CiAgICAgICAgICAgICB7CkBAIC04NzYsMTQgKzg4MCwxNSBAQCB2b2lkIFByb2dyYW1FeGVjdXRh
YmxlVms6OnVwZGF0ZUVhcmx5RnJhZ21lbnRUZXN0c09wdGltaXphdGlvbigKIGFuZ2xlOjpSZXN1
bHQgUHJvZ3JhbUV4ZWN1dGFibGVWazo6Z2V0R3JhcGhpY3NQaXBlbGluZShDb250ZXh0VmsgKmNv
bnRleHRWaywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBnbDo6UHJpbWl0aXZlTW9kZSBtb2RlLAogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHZrOjpHcmFwaGljc1BpcGVsaW5l
RGVzYyAmZGVzYywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBjb25zdCBnbDo6UHJvZ3JhbUV4ZWN1dGFibGUgJmdsRXhlY3V0YWJsZSwKICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25z
dCB2azo6R3JhcGhpY3NQaXBlbGluZURlc2MgKipkZXNjUHRyT3V0LAogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZrOjpQaXBlbGluZUhlbHBl
ciAqKnBpcGVsaW5lT3V0KQogewotICAgIGNvbnN0IGdsOjpTdGF0ZSAmZ2xTdGF0ZSAgICAgICAg
ICAgICAgICAgID0gY29udGV4dFZrLT5nZXRTdGF0ZSgpOwotICAgIFJlbmRlcmVyVmsgKnJlbmRl
cmVyICAgICAgICAgICAgICAgICAgICAgID0gY29udGV4dFZrLT5nZXRSZW5kZXJlcigpOwotICAg
IHZrOjpQaXBlbGluZUNhY2hlICpwaXBlbGluZUNhY2hlICAgICAgICAgID0gbnVsbHB0cjsKLSAg
ICBjb25zdCBnbDo6UHJvZ3JhbUV4ZWN1dGFibGUgKmdsRXhlY3V0YWJsZSA9IGdsU3RhdGUuZ2V0
UHJvZ3JhbUV4ZWN1dGFibGUoKTsKLSAgICBBU1NFUlQoZ2xFeGVjdXRhYmxlICYmIGdsRXhlY3V0
YWJsZS0+aGFzTGlua2VkU2hhZGVyU3RhZ2UoZ2w6OlNoYWRlclR5cGU6OlZlcnRleCkpOworICAg
IGNvbnN0IGdsOjpTdGF0ZSAmZ2xTdGF0ZSAgICAgICAgID0gY29udGV4dFZrLT5nZXRTdGF0ZSgp
OworICAgIFJlbmRlcmVyVmsgKnJlbmRlcmVyICAgICAgICAgICAgID0gY29udGV4dFZrLT5nZXRS
ZW5kZXJlcigpOworICAgIHZrOjpQaXBlbGluZUNhY2hlICpwaXBlbGluZUNhY2hlID0gbnVsbHB0
cjsKKworICAgIEFTU0VSVChnbEV4ZWN1dGFibGUuaGFzTGlua2VkU2hhZGVyU3RhZ2UoZ2w6OlNo
YWRlclR5cGU6OlZlcnRleCkpOwogCiAgICAgbVRyYW5zZm9ybU9wdGlvbnMuZW5hYmxlTGluZVJh
c3RlckVtdWxhdGlvbiA9IGNvbnRleHRWay0+aXNCcmVzZW5oYW1FbXVsYXRpb25FbmFibGVkKG1v
ZGUpOwogICAgIG1UcmFuc2Zvcm1PcHRpb25zLnN1cmZhY2VSb3RhdGlvbiAgICAgICAgICAgPSBU
b1VuZGVybHlpbmcoZGVzYy5nZXRTdXJmYWNlUm90YXRpb24oKSk7CkBAIC04OTQsMTMgKzg5OSwx
MyBAQCBhbmdsZTo6UmVzdWx0IFByb2dyYW1FeGVjdXRhYmxlVms6OmdldEdyYXBoaWNzUGlwZWxp
bmUoQ29udGV4dFZrICpjb250ZXh0VmssCiAKICAgICAvLyBUaGlzIG11c3QgYmUgY2FsbGVkIGFm
dGVyIG1UcmFuc2Zvcm1PcHRpb25zIGhhdmUgYmVlbiBzZXQuCiAgICAgUHJvZ3JhbUluZm8gJnBy
b2dyYW1JbmZvICAgICAgICAgICAgICAgICAgPSBnZXRHcmFwaGljc1Byb2dyYW1JbmZvKG1UcmFu
c2Zvcm1PcHRpb25zKTsKLSAgICBjb25zdCBnbDo6U2hhZGVyQml0U2V0IGxpbmtlZFNoYWRlclN0
YWdlcyA9IGdsRXhlY3V0YWJsZS0+Z2V0TGlua2VkU2hhZGVyU3RhZ2VzKCk7Ci0gICAgY29uc3Qg
Z2w6OlNoYWRlclR5cGUgbGFzdFByZUZyYWdtZW50U3RhZ2UgPSBnbDo6R2V0TGFzdFByZUZyYWdt
ZW50U3RhZ2UobGlua2VkU2hhZGVyU3RhZ2VzKTsKKyAgICBjb25zdCBnbDo6U2hhZGVyQml0U2V0
IGxpbmtlZFNoYWRlclN0YWdlcyA9IGdsRXhlY3V0YWJsZS5nZXRMaW5rZWRTaGFkZXJTdGFnZXMo
KTsKKyAgICBnbDo6U2hhZGVyVHlwZSBsYXN0UHJlRnJhZ21lbnRTdGFnZSAgICAgICA9IGdsOjpH
ZXRMYXN0UHJlRnJhZ21lbnRTdGFnZShsaW5rZWRTaGFkZXJTdGFnZXMpOwogCiAgICAgY29uc3Qg
Ym9vbCBpc1RyYW5zZm9ybUZlZWRiYWNrUHJvZ3JhbSA9Ci0gICAgICAgICFnbEV4ZWN1dGFibGUt
PmdldExpbmtlZFRyYW5zZm9ybUZlZWRiYWNrVmFyeWluZ3MoKS5lbXB0eSgpOworICAgICAgICAh
Z2xFeGVjdXRhYmxlLmdldExpbmtlZFRyYW5zZm9ybUZlZWRiYWNrVmFyeWluZ3MoKS5lbXB0eSgp
OwogCi0gICAgZm9yIChjb25zdCBnbDo6U2hhZGVyVHlwZSBzaGFkZXJUeXBlIDogbGlua2VkU2hh
ZGVyU3RhZ2VzKQorICAgIGZvciAoZ2w6OlNoYWRlclR5cGUgc2hhZGVyVHlwZSA6IGxpbmtlZFNo
YWRlclN0YWdlcykKICAgICB7CiAgICAgICAgIEFOR0xFX1RSWShpbml0R3JhcGhpY3NTaGFkZXJQ
cm9ncmFtKAogICAgICAgICAgICAgY29udGV4dFZrLCBzaGFkZXJUeXBlLCBzaGFkZXJUeXBlID09
IGxhc3RQcmVGcmFnbWVudFN0YWdlLCBpc1RyYW5zZm9ybUZlZWRiYWNrUHJvZ3JhbSwKQEAgLTky
NCwxOSArOTI5LDE4IEBAIGFuZ2xlOjpSZXN1bHQgUHJvZ3JhbUV4ZWN1dGFibGVWazo6Z2V0R3Jh
cGhpY3NQaXBlbGluZShDb250ZXh0VmsgKmNvbnRleHRWaywKICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGRlc2MuZ2V0RW11bGF0ZWREaXRoZXJDb250cm9sKCkp
OwogCiAgICAgLy8gQ29tcGFyZSB0aGUgZnJhZ21lbnQgb3V0cHV0IGludGVyZmFjZSB3aXRoIHRo
ZSBmcmFtZWJ1ZmZlciBpbnRlcmZhY2UuCi0gICAgY29uc3QgZ2w6OlByb2dyYW1FeGVjdXRhYmxl
ICZleGVjdXRhYmxlID0gKmdsU3RhdGUuZ2V0UHJvZ3JhbUV4ZWN1dGFibGUoKTsKLQotICAgIGNv
bnN0IGdsOjpBdHRyaWJ1dGVzTWFzayAmYWN0aXZlQXR0cmliTG9jYXRpb25zID0gZXhlY3V0YWJs
ZS5nZXROb25CdWlsdGluQXR0cmliTG9jYXRpb25zTWFzaygpOworICAgIGNvbnN0IGdsOjpBdHRy
aWJ1dGVzTWFzayAmYWN0aXZlQXR0cmliTG9jYXRpb25zID0KKyAgICAgICAgZ2xFeGVjdXRhYmxl
LmdldE5vbkJ1aWx0aW5BdHRyaWJMb2NhdGlvbnNNYXNrKCk7CiAKICAgICAvLyBDYWxjdWxhdGUg
bWlzc2luZyBzaGFkZXIgb3V0cHV0cy4KLSAgICBjb25zdCBnbDo6RHJhd0J1ZmZlck1hc2sgJnNo
YWRlck91dE1hc2sgPSBleGVjdXRhYmxlLmdldEFjdGl2ZU91dHB1dFZhcmlhYmxlc01hc2soKTsK
KyAgICBjb25zdCBnbDo6RHJhd0J1ZmZlck1hc2sgJnNoYWRlck91dE1hc2sgPSBnbEV4ZWN1dGFi
bGUuZ2V0QWN0aXZlT3V0cHV0VmFyaWFibGVzTWFzaygpOwogICAgIGdsOjpEcmF3QnVmZmVyTWFz
ayBmcmFtZWJ1ZmZlck1hc2sgICAgICA9IGdsU3RhdGUuZ2V0RHJhd0ZyYW1lYnVmZmVyKCktPmdl
dERyYXdCdWZmZXJNYXNrKCk7CiAgICAgZ2w6OkRyYXdCdWZmZXJNYXNrIG1pc3NpbmdPdXRwdXRz
TWFzayAgID0gfnNoYWRlck91dE1hc2sgJiBmcmFtZWJ1ZmZlck1hc2s7CiAKICAgICBBTkdMRV9U
UlkocmVuZGVyZXItPmdldFBpcGVsaW5lQ2FjaGUoJnBpcGVsaW5lQ2FjaGUpKTsKICAgICByZXR1
cm4gc2hhZGVyUHJvZ3JhbS0+Z2V0R3JhcGhpY3NQaXBlbGluZSgKICAgICAgICAgY29udGV4dFZr
LCAmY29udGV4dFZrLT5nZXRSZW5kZXJQYXNzQ2FjaGUoKSwgKnBpcGVsaW5lQ2FjaGUsIGdldFBp
cGVsaW5lTGF5b3V0KCksIGRlc2MsCi0gICAgICAgIGFjdGl2ZUF0dHJpYkxvY2F0aW9ucywgZXhl
Y3V0YWJsZS5nZXRBdHRyaWJ1dGVzVHlwZU1hc2soKSwgbWlzc2luZ091dHB1dHNNYXNrLCBkZXNj
UHRyT3V0LAorICAgICAgICBhY3RpdmVBdHRyaWJMb2NhdGlvbnMsIGdsRXhlY3V0YWJsZS5nZXRB
dHRyaWJ1dGVzVHlwZU1hc2soKSwgbWlzc2luZ091dHB1dHNNYXNrLCBkZXNjUHRyT3V0LAogICAg
ICAgICBwaXBlbGluZU91dCk7CiB9CiAKQEAgLTEwMjEsNyArMTAyNSw3IEBAIGFuZ2xlOjpSZXN1
bHQgUHJvZ3JhbUV4ZWN1dGFibGVWazo6Y3JlYXRlUGlwZWxpbmVMYXlvdXQoCiAgICAgLy8gRGVm
YXVsdCB1bmlmb3JtcyBhbmQgdHJhbnNmb3JtIGZlZWRiYWNrOgogICAgIHZrOjpEZXNjcmlwdG9y
U2V0TGF5b3V0RGVzYyB1bmlmb3Jtc0FuZFhmYlNldERlc2M7CiAgICAgbU51bURlZmF1bHRVbmlm
b3JtRGVzY3JpcHRvcnMgPSAwOwotICAgIGZvciAoY29uc3QgZ2w6OlNoYWRlclR5cGUgc2hhZGVy
VHlwZSA6IGxpbmtlZFNoYWRlclN0YWdlcykKKyAgICBmb3IgKGdsOjpTaGFkZXJUeXBlIHNoYWRl
clR5cGUgOiBsaW5rZWRTaGFkZXJTdGFnZXMpCiAgICAgewogICAgICAgICBjb25zdCBzdGQ6OnN0
cmluZyB1bmlmb3JtQmxvY2tOYW1lID0ga0RlZmF1bHRVbmlmb3JtTmFtZXNbc2hhZGVyVHlwZV07
CiAgICAgICAgIGNvbnN0IFNoYWRlckludGVyZmFjZVZhcmlhYmxlSW5mbyAmaW5mbyA9CkBAIC0x
MDU2LDcgKzEwNjAsNyBAQCBhbmdsZTo6UmVzdWx0IFByb2dyYW1FeGVjdXRhYmxlVms6OmNyZWF0
ZVBpcGVsaW5lTGF5b3V0KAogCiAgICAgLy8gQ291bnQgdGhlIG51bWJlciBvZiBhY3RpdmUgdW5p
Zm9ybSBidWZmZXIgZGVzY3JpcHRvcnMuCiAgICAgdWludDMyX3QgbnVtQWN0aXZlVW5pZm9ybUJ1
ZmZlckRlc2NyaXB0b3JzID0gMDsKLSAgICBmb3IgKGNvbnN0IGdsOjpTaGFkZXJUeXBlIHNoYWRl
clR5cGUgOiBsaW5rZWRTaGFkZXJTdGFnZXMpCisgICAgZm9yIChnbDo6U2hhZGVyVHlwZSBzaGFk
ZXJUeXBlIDogbGlua2VkU2hhZGVyU3RhZ2VzKQogICAgIHsKICAgICAgICAgY29uc3Qgc3RkOjp2
ZWN0b3I8Z2w6OkludGVyZmFjZUJsb2NrPiAmYmxvY2tzID0gZ2xFeGVjdXRhYmxlLmdldFVuaWZv
cm1CbG9ja3MoKTsKICAgICAgICAgZm9yICh1aW50MzJfdCBidWZmZXJJbmRleCA9IDA7IGJ1ZmZl
ckluZGV4IDwgYmxvY2tzLnNpemUoKTspCkBAIC0xMDg4LDcgKzEwOTIsNyBAQCBhbmdsZTo6UmVz
dWx0IFByb2dyYW1FeGVjdXRhYmxlVms6OmNyZWF0ZVBpcGVsaW5lTGF5b3V0KAogICAgICAgICBt
VW5pZm9ybUJ1ZmZlckRlc2NyaXB0b3JUeXBlID0gVktfREVTQ1JJUFRPUl9UWVBFX1VOSUZPUk1f
QlVGRkVSOwogICAgIH0KIAotICAgIGZvciAoY29uc3QgZ2w6OlNoYWRlclR5cGUgc2hhZGVyVHlw
ZSA6IGxpbmtlZFNoYWRlclN0YWdlcykKKyAgICBmb3IgKGdsOjpTaGFkZXJUeXBlIHNoYWRlclR5
cGUgOiBsaW5rZWRTaGFkZXJTdGFnZXMpCiAgICAgewogICAgICAgICBhZGRJbnRlcmZhY2VCbG9j
a0Rlc2NyaXB0b3JTZXREZXNjKGdsRXhlY3V0YWJsZS5nZXRVbmlmb3JtQmxvY2tzKCksIHNoYWRl
clR5cGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbVVuaWZv
cm1CdWZmZXJEZXNjcmlwdG9yVHlwZSwgJnJlc291cmNlc1NldERlc2MpOwpAQCAtMTA5OCw3ICsx
MTAyLDcgQEAgYW5nbGU6OlJlc3VsdCBQcm9ncmFtRXhlY3V0YWJsZVZrOjpjcmVhdGVQaXBlbGlu
ZUxheW91dCgKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICZyZXNvdXJjZXNTZXREZXNjKTsKICAgICB9CiAKLSAgICBmb3IgKGNvbnN0IGdsOjpTaGFkZXJU
eXBlIHNoYWRlclR5cGUgOiBsaW5rZWRTaGFkZXJTdGFnZXMpCisgICAgZm9yIChnbDo6U2hhZGVy
VHlwZSBzaGFkZXJUeXBlIDogbGlua2VkU2hhZGVyU3RhZ2VzKQogICAgIHsKICAgICAgICAgYWRk
SW1hZ2VEZXNjcmlwdG9yU2V0RGVzYyhnbEV4ZWN1dGFibGUsICZyZXNvdXJjZXNTZXREZXNjKTsK
ICAgICAgICAgYWRkSW5wdXRBdHRhY2htZW50RGVzY3JpcHRvclNldERlc2MoZ2xFeGVjdXRhYmxl
LCBzaGFkZXJUeXBlLCAmcmVzb3VyY2VzU2V0RGVzYyk7CkBAIC0xMTk5LDggKzEyMDMsMTEgQEAg
dm9pZCBQcm9ncmFtRXhlY3V0YWJsZVZrOjpyZXNvbHZlUHJlY2lzaW9uTWlzbWF0Y2goY29uc3Qg
Z2w6OlByb2dyYW1NZXJnZWRWYXJ5aW4KIH0KIAogdm9pZCBQcm9ncmFtRXhlY3V0YWJsZVZrOjp1
cGRhdGVEZWZhdWx0VW5pZm9ybXNEZXNjcmlwdG9yU2V0KAotICAgIENvbnRleHRWayAqY29udGV4
dFZrLAotICAgIGNvbnN0IGdsOjpTaGFkZXJUeXBlIHNoYWRlclR5cGUsCisgICAgdms6OkNvbnRl
eHQgKmNvbnRleHQsCisgICAgVXBkYXRlRGVzY3JpcHRvclNldHNCdWlsZGVyICp1cGRhdGVCdWls
ZGVyLAorICAgIHZrOjpCdWZmZXJIZWxwZXIgKmVtcHR5QnVmZmVyLAorICAgIHZrOjpSZXNvdXJj
ZVVzZUxpc3QgKnJlc291cmNlVXNlTGlzdCwKKyAgICBnbDo6U2hhZGVyVHlwZSBzaGFkZXJUeXBl
LAogICAgIGNvbnN0IERlZmF1bHRVbmlmb3JtQmxvY2sgJmRlZmF1bHRVbmlmb3JtQmxvY2ssCiAg
ICAgdms6OkJ1ZmZlckhlbHBlciAqZGVmYXVsdFVuaWZvcm1CdWZmZXIpCiB7CkBAIC0xMjEyLDE1
ICsxMjE5LDE1IEBAIHZvaWQgUHJvZ3JhbUV4ZWN1dGFibGVWazo6dXBkYXRlRGVmYXVsdFVuaWZv
cm1zRGVzY3JpcHRvclNldCgKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIFZrV3JpdGVE
ZXNjcmlwdG9yU2V0ICZ3cml0ZUluZm8gICAgPSBjb250ZXh0VmstPmFsbG9jV3JpdGVEZXNjcmlw
dG9yU2V0KCk7Ci0gICAgVmtEZXNjcmlwdG9yQnVmZmVySW5mbyAmYnVmZmVySW5mbyA9IGNvbnRl
eHRWay0+YWxsb2NEZXNjcmlwdG9yQnVmZmVySW5mbygpOworICAgIFZrV3JpdGVEZXNjcmlwdG9y
U2V0ICZ3cml0ZUluZm8gICAgPSB1cGRhdGVCdWlsZGVyLT5hbGxvY1dyaXRlRGVzY3JpcHRvclNl
dCgpOworICAgIFZrRGVzY3JpcHRvckJ1ZmZlckluZm8gJmJ1ZmZlckluZm8gPSB1cGRhdGVCdWls
ZGVyLT5hbGxvY0Rlc2NyaXB0b3JCdWZmZXJJbmZvKCk7CiAKLSAgICBWa0RldmljZVNpemUgc2l6
ZSAgICAgICAgICAgICAgPSBnZXREZWZhdWx0VW5pZm9ybUFsaWduZWRTaXplKGNvbnRleHRWaywg
c2hhZGVyVHlwZSk7CisgICAgVmtEZXZpY2VTaXplIHNpemUgICAgICAgICAgICAgID0gZ2V0RGVm
YXVsdFVuaWZvcm1BbGlnbmVkU2l6ZShjb250ZXh0LCBzaGFkZXJUeXBlKTsKICAgICB2azo6QnVm
ZmVySGVscGVyICpidWZmZXJIZWxwZXIgPSBkZWZhdWx0VW5pZm9ybUJ1ZmZlcjsKICAgICBpZiAo
ZGVmYXVsdFVuaWZvcm1CbG9jay51bmlmb3JtRGF0YS5lbXB0eSgpKQogICAgIHsKLSAgICAgICAg
YnVmZmVySGVscGVyID0gJmNvbnRleHRWay0+Z2V0RW1wdHlCdWZmZXIoKTsKLSAgICAgICAgYnVm
ZmVySGVscGVyLT5yZXRhaW5SZWFkT25seSgmY29udGV4dFZrLT5nZXRSZXNvdXJjZVVzZUxpc3Qo
KSk7CisgICAgICAgIGJ1ZmZlckhlbHBlciA9IGVtcHR5QnVmZmVyOworICAgICAgICBidWZmZXJI
ZWxwZXItPnJldGFpblJlYWRPbmx5KHJlc291cmNlVXNlTGlzdCk7CiAgICAgICAgIHNpemUgPSBi
dWZmZXJIZWxwZXItPmdldFNpemUoKTsKICAgICB9CiAKQEAgLTEyMzAsMzkgKzEyMzcsMzggQEAg
dm9pZCBQcm9ncmFtRXhlY3V0YWJsZVZrOjp1cGRhdGVEZWZhdWx0VW5pZm9ybXNEZXNjcmlwdG9y
U2V0KAogfQogCiAvLyBMYXppbHkgYWxsb2NhdGUgdGhlIGRlc2NyaXB0b3Igc2V0LiBXZSBtYXkg
bm90IG5lZWQgb25lIGlmIGFsbCBvZiB0aGUgYnVmZmVycyBhcmUgaW5hY3RpdmUuCi1hbmdsZTo6
UmVzdWx0IFByb2dyYW1FeGVjdXRhYmxlVms6OmdldE9yQWxsb2NhdGVTaGFkZXJSZXNvdXJjZXNE
ZXNjcmlwdG9yU2V0KAotICAgIENvbnRleHRWayAqY29udGV4dFZrLAotICAgIGNvbnN0IHZrOjpE
ZXNjcmlwdG9yU2V0RGVzYyAqc2hhZGVyQnVmZmVyc0Rlc2MsCi0gICAgVmtEZXNjcmlwdG9yU2V0
ICpkZXNjcmlwdG9yU2V0T3V0KQorYW5nbGU6OlJlc3VsdCBQcm9ncmFtRXhlY3V0YWJsZVZrOjph
bGxvY2F0ZVNoYWRlclJlc291cmNlc0Rlc2NyaXB0b3JTZXQoCisgICAgdms6OkNvbnRleHQgKmNv
bnRleHQsCisgICAgdms6OlJlc291cmNlVXNlTGlzdCAqcmVzb3VyY2VVc2VMaXN0LAorICAgIGNv
bnN0IHZrOjpEZXNjcmlwdG9yU2V0RGVzYyAqc2hhZGVyQnVmZmVyc0Rlc2MpCiB7Ci0gICAgaWYg
KG1EZXNjcmlwdG9yU2V0c1tEZXNjcmlwdG9yU2V0SW5kZXg6OlNoYWRlclJlc291cmNlXSA9PSBW
S19OVUxMX0hBTkRMRSkKLSAgICB7Ci0gICAgICAgIGJvb2wgbmV3UG9vbEFsbG9jYXRlZCA9IGZh
bHNlOwotICAgICAgICBBTkdMRV9UUlkoYWxsb2NhdGVEZXNjcmlwdG9yU2V0QW5kR2V0SW5mbyhj
b250ZXh0VmssIERlc2NyaXB0b3JTZXRJbmRleDo6U2hhZGVyUmVzb3VyY2UsCi0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZuZXdQb29sQWxsb2NhdGVk
KSk7CisgICAgYm9vbCBuZXdQb29sQWxsb2NhdGVkID0gZmFsc2U7CisgICAgQU5HTEVfVFJZKGFs
bG9jYXRlRGVzY3JpcHRvclNldEFuZEdldEluZm8oCisgICAgICAgIGNvbnRleHQsIHJlc291cmNl
VXNlTGlzdCwgRGVzY3JpcHRvclNldEluZGV4OjpTaGFkZXJSZXNvdXJjZSwgJm5ld1Bvb2xBbGxv
Y2F0ZWQpKTsKIAotICAgICAgICBpZiAoc2hhZGVyQnVmZmVyc0Rlc2MpCisgICAgaWYgKHNoYWRl
ckJ1ZmZlcnNEZXNjKQorICAgIHsKKyAgICAgICAgLy8gQ2xlYXIgZGVzY3JpcHRvciBzZXQgY2Fj
aGUuIEl0IG1heSBubyBsb25nZXIgYmUgdmFsaWQuCisgICAgICAgIGlmIChuZXdQb29sQWxsb2Nh
dGVkKQogICAgICAgICB7Ci0gICAgICAgICAgICAvLyBDbGVhciBkZXNjcmlwdG9yIHNldCBjYWNo
ZS4gSXQgbWF5IG5vIGxvbmdlciBiZSB2YWxpZC4KLSAgICAgICAgICAgIGlmIChuZXdQb29sQWxs
b2NhdGVkKQotICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIG1TaGFkZXJCdWZmZXJEZXNj
cmlwdG9yc0NhY2hlLmRlc3Ryb3koY29udGV4dFZrLT5nZXRSZW5kZXJlcigpLAotICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVnVsa2FuQ2FjaGVU
eXBlOjpTaGFkZXJCdWZmZXJzRGVzY3JpcHRvcnMpOwotICAgICAgICAgICAgfQotCi0gICAgICAg
ICAgICBtU2hhZGVyQnVmZmVyRGVzY3JpcHRvcnNDYWNoZS5pbnNlcnQoCi0gICAgICAgICAgICAg
ICAgKnNoYWRlckJ1ZmZlcnNEZXNjLCBtRGVzY3JpcHRvclNldHNbRGVzY3JpcHRvclNldEluZGV4
OjpTaGFkZXJSZXNvdXJjZV0pOworICAgICAgICAgICAgbVNoYWRlckJ1ZmZlckRlc2NyaXB0b3Jz
Q2FjaGUuZGVzdHJveShjb250ZXh0LT5nZXRSZW5kZXJlcigpLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWdWxrYW5DYWNoZVR5cGU6OlNoYWRlckJ1
ZmZlcnNEZXNjcmlwdG9ycyk7CiAgICAgICAgIH0KKworICAgICAgICBtU2hhZGVyQnVmZmVyRGVz
Y3JpcHRvcnNDYWNoZS5pbnNlcnQoKnNoYWRlckJ1ZmZlcnNEZXNjLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbURlc2NyaXB0b3JTZXRzW0Rlc2NyaXB0b3JT
ZXRJbmRleDo6U2hhZGVyUmVzb3VyY2VdKTsKICAgICB9Ci0gICAgKmRlc2NyaXB0b3JTZXRPdXQg
PSBtRGVzY3JpcHRvclNldHNbRGVzY3JpcHRvclNldEluZGV4OjpTaGFkZXJSZXNvdXJjZV07Ci0g
ICAgQVNTRVJUKCpkZXNjcmlwdG9yU2V0T3V0ICE9IFZLX05VTExfSEFORExFKTsKICAgICByZXR1
cm4gYW5nbGU6OlJlc3VsdDo6Q29udGludWU7CiB9CiAKIGFuZ2xlOjpSZXN1bHQgUHJvZ3JhbUV4
ZWN1dGFibGVWazo6dXBkYXRlQnVmZmVyc0Rlc2NyaXB0b3JTZXQoCi0gICAgQ29udGV4dFZrICpj
b250ZXh0VmssCi0gICAgY29uc3QgZ2w6OlNoYWRlclR5cGUgc2hhZGVyVHlwZSwKKyAgICB2azo6
Q29udGV4dCAqY29udGV4dCwKKyAgICBVcGRhdGVEZXNjcmlwdG9yU2V0c0J1aWxkZXIgKnVwZGF0
ZUJ1aWxkZXIsCisgICAgdms6OkJ1ZmZlckhlbHBlciAqZW1wdHlCdWZmZXIsCisgICAgdms6OlJl
c291cmNlVXNlTGlzdCAqcmVzb3VyY2VVc2VMaXN0LAorICAgIGdsOjpTaGFkZXJUeXBlIHNoYWRl
clR5cGUsCiAgICAgY29uc3Qgdms6OkRlc2NyaXB0b3JTZXREZXNjICZzaGFkZXJCdWZmZXJzRGVz
YywKKyAgICBjb25zdCBnbDo6QnVmZmVyVmVjdG9yICZidWZmZXJzLAogICAgIGNvbnN0IHN0ZDo6
dmVjdG9yPGdsOjpJbnRlcmZhY2VCbG9jaz4gJmJsb2NrcywKICAgICBWa0Rlc2NyaXB0b3JUeXBl
IGRlc2NyaXB0b3JUeXBlLAogICAgIFZrRGV2aWNlU2l6ZSBtYXhCb3VuZEJ1ZmZlclJhbmdlLApA
QCAtMTI3NiwyNyArMTI4MiwyMCBAQCBhbmdsZTo6UmVzdWx0IFByb2dyYW1FeGVjdXRhYmxlVms6
OnVwZGF0ZUJ1ZmZlcnNEZXNjcmlwdG9yU2V0KAogCiAgICAgQVNTRVJUKGRlc2NyaXB0b3JUeXBl
ID09IG1Vbmlmb3JtQnVmZmVyRGVzY3JpcHRvclR5cGUgfHwKICAgICAgICAgICAgZGVzY3JpcHRv
clR5cGUgPT0ga1N0b3JhZ2VCdWZmZXJEZXNjcmlwdG9yVHlwZSk7Ci0gICAgY29uc3QgYm9vbCBp
c1N0b3JhZ2VCdWZmZXIgPSBkZXNjcmlwdG9yVHlwZSA9PSBrU3RvcmFnZUJ1ZmZlckRlc2NyaXB0
b3JUeXBlOworCisgICAgVmtEZXNjcmlwdG9yU2V0IGRlc2NyaXB0b3JTZXQgPSBtRGVzY3JpcHRv
clNldHNbRGVzY3JpcHRvclNldEluZGV4OjpTaGFkZXJSZXNvdXJjZV07CisgICAgQVNTRVJUKGRl
c2NyaXB0b3JTZXQgIT0gVktfTlVMTF9IQU5ETEUpOwogCiAgICAgLy8gV3JpdGUgdW5pZm9ybSBv
ciBzdG9yYWdlIGJ1ZmZlcnMuCi0gICAgY29uc3QgZ2w6OlN0YXRlICZnbFN0YXRlID0gY29udGV4
dFZrLT5nZXRTdGF0ZSgpOwotICAgIGZvciAodWludDMyX3QgYnVmZmVySW5kZXggPSAwOyBidWZm
ZXJJbmRleCA8IGJsb2Nrcy5zaXplKCk7ICsrYnVmZmVySW5kZXgpCisgICAgZm9yIChjb25zdCBn
bDo6SW50ZXJmYWNlQmxvY2sgJmJsb2NrIDogYmxvY2tzKQogICAgIHsKLSAgICAgICAgY29uc3Qg
Z2w6OkludGVyZmFjZUJsb2NrICZibG9jayA9IGJsb2Nrc1tidWZmZXJJbmRleF07Ci0gICAgICAg
IGNvbnN0IGdsOjpPZmZzZXRCaW5kaW5nUG9pbnRlcjxnbDo6QnVmZmVyPiAmYnVmZmVyQmluZGlu
ZyA9Ci0gICAgICAgICAgICBpc1N0b3JhZ2VCdWZmZXIgPyBnbFN0YXRlLmdldEluZGV4ZWRTaGFk
ZXJTdG9yYWdlQnVmZmVyKGJsb2NrLmJpbmRpbmcpCi0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgOiBnbFN0YXRlLmdldEluZGV4ZWRVbmlmb3JtQnVmZmVyKGJsb2NrLmJpbmRpbmcpOworICAg
ICAgICBjb25zdCBnbDo6T2Zmc2V0QmluZGluZ1BvaW50ZXI8Z2w6OkJ1ZmZlcj4gJmJ1ZmZlckJp
bmRpbmcgPSBidWZmZXJzW2Jsb2NrLmJpbmRpbmddOwogCiAgICAgICAgIGlmICghYmxvY2suaXNB
Y3RpdmUoc2hhZGVyVHlwZSkpCiAgICAgICAgIHsKICAgICAgICAgICAgIGNvbnRpbnVlOwogICAg
ICAgICB9CiAKLSAgICAgICAgaWYgKGJ1ZmZlckJpbmRpbmcuZ2V0KCkgPT0gbnVsbHB0cikKLSAg
ICAgICAgewotICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAgIH0KLQogICAgICAgICBjb25z
dCBTaGFkZXJJbnRlcmZhY2VWYXJpYWJsZUluZm8gJmluZm8gPQogICAgICAgICAgICAgbVZhcmlh
YmxlSW5mb01hcC5nZXQoc2hhZGVyVHlwZSwgYmxvY2subWFwcGVkTmFtZSk7CiAgICAgICAgIGlm
IChpbmZvLmlzRHVwbGljYXRlKQpAQCAtMTMwNyw2ICsxMzA2LDI2IEBAIGFuZ2xlOjpSZXN1bHQg
UHJvZ3JhbUV4ZWN1dGFibGVWazo6dXBkYXRlQnVmZmVyc0Rlc2NyaXB0b3JTZXQoCiAgICAgICAg
IHVpbnQzMl90IGJpbmRpbmcgICAgICA9IGluZm8uYmluZGluZzsKICAgICAgICAgdWludDMyX3Qg
YXJyYXlFbGVtZW50ID0gYmxvY2suaXNBcnJheSA/IGJsb2NrLmFycmF5RWxlbWVudCA6IDA7CiAK
KyAgICAgICAgaWYgKGJ1ZmZlckJpbmRpbmcuZ2V0KCkgPT0gbnVsbHB0cikKKyAgICAgICAgewor
ICAgICAgICAgICAgaWYgKCFjYWNoZUhpdCkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAg
ICBWa0Rlc2NyaXB0b3JCdWZmZXJJbmZvICZidWZmZXJJbmZvID0gdXBkYXRlQnVpbGRlci0+YWxs
b2NEZXNjcmlwdG9yQnVmZmVySW5mbygpOworICAgICAgICAgICAgICAgIFZrV3JpdGVEZXNjcmlw
dG9yU2V0ICZ3cml0ZUluZm8gICAgPSB1cGRhdGVCdWlsZGVyLT5hbGxvY1dyaXRlRGVzY3JpcHRv
clNldCgpOworCisgICAgICAgICAgICAgICAgZW1wdHlCdWZmZXItPnJldGFpblJlYWRPbmx5KHJl
c291cmNlVXNlTGlzdCk7CisgICAgICAgICAgICAgICAgV3JpdGVCdWZmZXJEZXNjcmlwdG9yU2V0
QmluZGluZygqZW1wdHlCdWZmZXIsIDAsIGVtcHR5QnVmZmVyLT5nZXRTaXplKCksCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXNjcmlwdG9yU2V0LCBk
ZXNjcmlwdG9yVHlwZSwgYmluZGluZywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGFycmF5RWxlbWVudCwgMCwgJmJ1ZmZlckluZm8sICZ3cml0ZUluZm8p
OworICAgICAgICAgICAgfQorICAgICAgICAgICAgaWYgKElzRHluYW1pY0Rlc2NyaXB0b3IoZGVz
Y3JpcHRvclR5cGUpKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIG1EeW5hbWljU2hh
ZGVyQnVmZmVyRGVzY3JpcHRvck9mZnNldHMucHVzaF9iYWNrKAorICAgICAgICAgICAgICAgICAg
ICBzdGF0aWNfY2FzdDx1aW50MzJfdD4oZW1wdHlCdWZmZXItPmdldE9mZnNldCgpKSk7CisgICAg
ICAgICAgICB9CisgICAgICAgICAgICBjb250aW51ZTsKKyAgICAgICAgfQorCiAgICAgICAgIC8v
IExpbWl0IGJvdW5kIGJ1ZmZlciBzaXplIHRvIG1heGltdW0gcmVzb3VyY2UgYmluZGluZyBzaXpl
LgogICAgICAgICBHTHNpemVpcHRyIGJvdW5kQnVmZmVyU2l6ZSA9IGdsOjpHZXRCb3VuZEJ1ZmZl
ckF2YWlsYWJsZVNpemUoYnVmZmVyQmluZGluZyk7CiAgICAgICAgIFZrRGV2aWNlU2l6ZSBzaXpl
ICAgICAgICAgID0gc3RkOjptaW48VmtEZXZpY2VTaXplPihib3VuZEJ1ZmZlclNpemUsIG1heEJv
dW5kQnVmZmVyUmFuZ2UpOwpAQCAtMTMyMSwxMiArMTM0MCw5IEBAIGFuZ2xlOjpSZXN1bHQgUHJv
Z3JhbUV4ZWN1dGFibGVWazo6dXBkYXRlQnVmZmVyc0Rlc2NyaXB0b3JTZXQoCiAKICAgICAgICAg
aWYgKCFjYWNoZUhpdCkKICAgICAgICAgewotICAgICAgICAgICAgVmtEZXNjcmlwdG9yQnVmZmVy
SW5mbyAmYnVmZmVySW5mbyA9IGNvbnRleHRWay0+YWxsb2NEZXNjcmlwdG9yQnVmZmVySW5mbygp
OwotICAgICAgICAgICAgVmtXcml0ZURlc2NyaXB0b3JTZXQgJndyaXRlSW5mbyAgICA9IGNvbnRl
eHRWay0+YWxsb2NXcml0ZURlc2NyaXB0b3JTZXQoKTsKKyAgICAgICAgICAgIFZrRGVzY3JpcHRv
ckJ1ZmZlckluZm8gJmJ1ZmZlckluZm8gPSB1cGRhdGVCdWlsZGVyLT5hbGxvY0Rlc2NyaXB0b3JC
dWZmZXJJbmZvKCk7CisgICAgICAgICAgICBWa1dyaXRlRGVzY3JpcHRvclNldCAmd3JpdGVJbmZv
ICAgID0gdXBkYXRlQnVpbGRlci0+YWxsb2NXcml0ZURlc2NyaXB0b3JTZXQoKTsKIAotICAgICAg
ICAgICAgVmtEZXNjcmlwdG9yU2V0IGRlc2NyaXB0b3JTZXQ7Ci0gICAgICAgICAgICBBTkdMRV9U
UlkoZ2V0T3JBbGxvY2F0ZVNoYWRlclJlc291cmNlc0Rlc2NyaXB0b3JTZXQoY29udGV4dFZrLCAm
c2hhZGVyQnVmZmVyc0Rlc2MsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgJmRlc2NyaXB0b3JTZXQpKTsKICAgICAgICAgICAg
IFZrRGV2aWNlU2l6ZSBvZmZzZXQgPQogICAgICAgICAgICAgICAgIElzRHluYW1pY0Rlc2NyaXB0
b3IoZGVzY3JpcHRvclR5cGUpID8gMCA6IGJ1ZmZlckJpbmRpbmcuZ2V0T2Zmc2V0KCk7CiAgICAg
ICAgICAgICBXcml0ZUJ1ZmZlckRlc2NyaXB0b3JTZXRCaW5kaW5nKGJ1ZmZlckhlbHBlciwgb2Zm
c2V0LCBzaXplLCBkZXNjcmlwdG9yU2V0LApAQCAtMTM0NCwxMyArMTM2MCwxNiBAQCBhbmdsZTo6
UmVzdWx0IFByb2dyYW1FeGVjdXRhYmxlVms6OnVwZGF0ZUJ1ZmZlcnNEZXNjcmlwdG9yU2V0KAog
fQogCiBhbmdsZTo6UmVzdWx0IFByb2dyYW1FeGVjdXRhYmxlVms6OnVwZGF0ZUF0b21pY0NvdW50
ZXJCdWZmZXJzRGVzY3JpcHRvclNldCgKLSAgICBDb250ZXh0VmsgKmNvbnRleHRWaywKKyAgICB2
azo6Q29udGV4dCAqY29udGV4dCwKKyAgICBVcGRhdGVEZXNjcmlwdG9yU2V0c0J1aWxkZXIgKnVw
ZGF0ZUJ1aWxkZXIsCisgICAgdms6OkJ1ZmZlckhlbHBlciAqZW1wdHlCdWZmZXIsCisgICAgdms6
OlJlc291cmNlVXNlTGlzdCAqcmVzb3VyY2VVc2VMaXN0LAorICAgIGNvbnN0IGdsOjpCdWZmZXJW
ZWN0b3IgJmF0b21pY0NvdW50ZXJCdWZmZXJCaW5kaW5ncywKICAgICBjb25zdCBnbDo6UHJvZ3Jh
bUV4ZWN1dGFibGUgJmV4ZWN1dGFibGUsCi0gICAgY29uc3QgZ2w6OlNoYWRlclR5cGUgc2hhZGVy
VHlwZSwKKyAgICBnbDo6U2hhZGVyVHlwZSBzaGFkZXJUeXBlLAogICAgIGNvbnN0IHZrOjpEZXNj
cmlwdG9yU2V0RGVzYyAmc2hhZGVyQnVmZmVyc0Rlc2MsCiAgICAgYm9vbCBjYWNoZUhpdCkKIHsK
LSAgICBjb25zdCBnbDo6U3RhdGUgJmdsU3RhdGUgPSBjb250ZXh0VmstPmdldFN0YXRlKCk7CiAg
ICAgY29uc3Qgc3RkOjp2ZWN0b3I8Z2w6OkF0b21pY0NvdW50ZXJCdWZmZXI+ICZhdG9taWNDb3Vu
dGVyQnVmZmVycyA9CiAgICAgICAgIGV4ZWN1dGFibGUuZ2V0QXRvbWljQ291bnRlckJ1ZmZlcnMo
KTsKIApAQCAtMTM3NCwyMSArMTM5MywxOCBAQCBhbmdsZTo6UmVzdWx0IFByb2dyYW1FeGVjdXRh
YmxlVms6OnVwZGF0ZUF0b21pY0NvdW50ZXJCdWZmZXJzRGVzY3JpcHRvclNldCgKIAogICAgIGds
OjpBdG9taWNDb3VudGVyQnVmZmVyTWFzayB3cml0dGVuQmluZGluZ3M7CiAKLSAgICBSZW5kZXJl
clZrICpyZW5kZXJlclZrID0gY29udGV4dFZrLT5nZXRSZW5kZXJlcigpOworICAgIFJlbmRlcmVy
VmsgKnJlbmRlcmVyVmsgPSBjb250ZXh0LT5nZXRSZW5kZXJlcigpOwogICAgIGNvbnN0IFZrRGV2
aWNlU2l6ZSByZXF1aXJlZE9mZnNldEFsaWdubWVudCA9CiAgICAgICAgIHJlbmRlcmVyVmstPmdl
dFBoeXNpY2FsRGV2aWNlUHJvcGVydGllcygpLmxpbWl0cy5taW5TdG9yYWdlQnVmZmVyT2Zmc2V0
QWxpZ25tZW50OwogCi0gICAgVmtEZXNjcmlwdG9yU2V0IGRlc2NyaXB0b3JTZXQ7Ci0gICAgQU5H
TEVfVFJZKAotICAgICAgICBnZXRPckFsbG9jYXRlU2hhZGVyUmVzb3VyY2VzRGVzY3JpcHRvclNl
dChjb250ZXh0VmssICZzaGFkZXJCdWZmZXJzRGVzYywgJmRlc2NyaXB0b3JTZXQpKTsKKyAgICBW
a0Rlc2NyaXB0b3JTZXQgZGVzY3JpcHRvclNldCA9IG1EZXNjcmlwdG9yU2V0c1tEZXNjcmlwdG9y
U2V0SW5kZXg6OlNoYWRlclJlc291cmNlXTsKIAogICAgIC8vIFdyaXRlIGF0b21pYyBjb3VudGVy
IGJ1ZmZlcnMuCi0gICAgZm9yICh1aW50MzJfdCBidWZmZXJJbmRleCA9IDA7IGJ1ZmZlckluZGV4
IDwgYXRvbWljQ291bnRlckJ1ZmZlcnMuc2l6ZSgpOyArK2J1ZmZlckluZGV4KQorICAgIGZvciAo
Y29uc3QgZ2w6OkF0b21pY0NvdW50ZXJCdWZmZXIgJmF0b21pY0NvdW50ZXJCdWZmZXIgOiBhdG9t
aWNDb3VudGVyQnVmZmVycykKICAgICB7Ci0gICAgICAgIGNvbnN0IGdsOjpBdG9taWNDb3VudGVy
QnVmZmVyICZhdG9taWNDb3VudGVyQnVmZmVyID0gYXRvbWljQ291bnRlckJ1ZmZlcnNbYnVmZmVy
SW5kZXhdOwotICAgICAgICB1aW50MzJfdCBiaW5kaW5nICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICA9IGF0b21pY0NvdW50ZXJCdWZmZXIuYmluZGluZzsKKyAgICAgICAgdWludDMy
X3QgYmluZGluZyA9IGF0b21pY0NvdW50ZXJCdWZmZXIuYmluZGluZzsKICAgICAgICAgY29uc3Qg
Z2w6Ok9mZnNldEJpbmRpbmdQb2ludGVyPGdsOjpCdWZmZXI+ICZidWZmZXJCaW5kaW5nID0KLSAg
ICAgICAgICAgIGdsU3RhdGUuZ2V0SW5kZXhlZEF0b21pY0NvdW50ZXJCdWZmZXIoYmluZGluZyk7
CisgICAgICAgICAgICBhdG9taWNDb3VudGVyQnVmZmVyQmluZGluZ3NbYmluZGluZ107CiAKICAg
ICAgICAgaWYgKGJ1ZmZlckJpbmRpbmcuZ2V0KCkgPT0gbnVsbHB0cikKICAgICAgICAgewpAQCAt
MTM5OSw4ICsxNDE1LDggQEAgYW5nbGU6OlJlc3VsdCBQcm9ncmFtRXhlY3V0YWJsZVZrOjp1cGRh
dGVBdG9taWNDb3VudGVyQnVmZmVyc0Rlc2NyaXB0b3JTZXQoCiAgICAgICAgICAgICAgICAgICAg
ICAgInVwZGF0ZUF0b21pY0NvdW50ZXJCdWZmZXJzRGVzY3JpcHRvclNldCBuZWVkcyBhbiB1cGRh
dGUgdG8gaGFuZGxlIGR5bmFtaWMgIgogICAgICAgICAgICAgICAgICAgICAgICJkZXNjcmlwdG9y
cyIpOwogCi0gICAgICAgIFZrRGVzY3JpcHRvckJ1ZmZlckluZm8gJmJ1ZmZlckluZm8gPSBjb250
ZXh0VmstPmFsbG9jRGVzY3JpcHRvckJ1ZmZlckluZm8oKTsKLSAgICAgICAgVmtXcml0ZURlc2Ny
aXB0b3JTZXQgJndyaXRlSW5mbyAgICA9IGNvbnRleHRWay0+YWxsb2NXcml0ZURlc2NyaXB0b3JT
ZXQoKTsKKyAgICAgICAgVmtEZXNjcmlwdG9yQnVmZmVySW5mbyAmYnVmZmVySW5mbyA9IHVwZGF0
ZUJ1aWxkZXItPmFsbG9jRGVzY3JpcHRvckJ1ZmZlckluZm8oKTsKKyAgICAgICAgVmtXcml0ZURl
c2NyaXB0b3JTZXQgJndyaXRlSW5mbyAgICA9IHVwZGF0ZUJ1aWxkZXItPmFsbG9jV3JpdGVEZXNj
cmlwdG9yU2V0KCk7CiAKICAgICAgICAgQnVmZmVyVmsgKmJ1ZmZlclZrICAgICAgICAgICAgID0g
dms6OkdldEltcGwoYnVmZmVyQmluZGluZy5nZXQoKSk7CiAgICAgICAgIHZrOjpCdWZmZXJIZWxw
ZXIgJmJ1ZmZlckhlbHBlciA9IGJ1ZmZlclZrLT5nZXRCdWZmZXIoKTsKQEAgLTE0MTUsMTUgKzE0
MzEsMTQgQEAgYW5nbGU6OlJlc3VsdCBQcm9ncmFtRXhlY3V0YWJsZVZrOjp1cGRhdGVBdG9taWND
b3VudGVyQnVmZmVyc0Rlc2NyaXB0b3JTZXQoCiAgICAgfQogCiAgICAgLy8gQmluZCB0aGUgZW1w
dHkgYnVmZmVyIHRvIGV2ZXJ5IGFycmF5IHNsb3QgdGhhdCdzIHVudXNlZC4KLSAgICB2azo6QnVm
ZmVySGVscGVyICZlbXB0eUJ1ZmZlciA9IGNvbnRleHRWay0+Z2V0RW1wdHlCdWZmZXIoKTsKLSAg
ICBlbXB0eUJ1ZmZlci5yZXRhaW5SZWFkT25seSgmY29udGV4dFZrLT5nZXRSZXNvdXJjZVVzZUxp
c3QoKSk7CisgICAgZW1wdHlCdWZmZXItPnJldGFpblJlYWRPbmx5KHJlc291cmNlVXNlTGlzdCk7
CiAgICAgc2l6ZV90IGNvdW50ICAgICAgICAgICAgICAgICAgICAgICAgPSAofndyaXR0ZW5CaW5k
aW5ncykuY291bnQoKTsKLSAgICBWa0Rlc2NyaXB0b3JCdWZmZXJJbmZvICpidWZmZXJJbmZvcyA9
IGNvbnRleHRWay0+YWxsb2NEZXNjcmlwdG9yQnVmZmVySW5mb3MoY291bnQpOwotICAgIFZrV3Jp
dGVEZXNjcmlwdG9yU2V0ICp3cml0ZUluZm9zICAgID0gY29udGV4dFZrLT5hbGxvY1dyaXRlRGVz
Y3JpcHRvclNldHMoY291bnQpOworICAgIFZrRGVzY3JpcHRvckJ1ZmZlckluZm8gKmJ1ZmZlcklu
Zm9zID0gdXBkYXRlQnVpbGRlci0+YWxsb2NEZXNjcmlwdG9yQnVmZmVySW5mb3MoY291bnQpOwor
ICAgIFZrV3JpdGVEZXNjcmlwdG9yU2V0ICp3cml0ZUluZm9zICAgID0gdXBkYXRlQnVpbGRlci0+
YWxsb2NXcml0ZURlc2NyaXB0b3JTZXRzKGNvdW50KTsKICAgICBzaXplX3Qgd3JpdGVDb3VudCAg
ICAgICAgICAgICAgICAgICA9IDA7CiAgICAgZm9yIChzaXplX3QgYmluZGluZyA6IH53cml0dGVu
QmluZGluZ3MpCiAgICAgewotICAgICAgICBXcml0ZUJ1ZmZlckRlc2NyaXB0b3JTZXRCaW5kaW5n
KGVtcHR5QnVmZmVyLCAwLCBlbXB0eUJ1ZmZlci5nZXRTaXplKCksIGRlc2NyaXB0b3JTZXQsCisg
ICAgICAgIFdyaXRlQnVmZmVyRGVzY3JpcHRvclNldEJpbmRpbmcoKmVtcHR5QnVmZmVyLCAwLCBl
bXB0eUJ1ZmZlci0+Z2V0U2l6ZSgpLCBkZXNjcmlwdG9yU2V0LAogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGtTdG9yYWdlQnVmZmVyRGVzY3JpcHRvclR5cGUsIGluZm8u
YmluZGluZywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0aWNf
Y2FzdDx1aW50MzJfdD4oYmluZGluZyksIDAsICZidWZmZXJJbmZvc1t3cml0ZUNvdW50XSwKICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmd3JpdGVJbmZvc1t3cml0ZUNv
dW50XSk7CkBAIC0xNDM0LDEyICsxNDQ5LDE1IEBAIGFuZ2xlOjpSZXN1bHQgUHJvZ3JhbUV4ZWN1
dGFibGVWazo6dXBkYXRlQXRvbWljQ291bnRlckJ1ZmZlcnNEZXNjcmlwdG9yU2V0KAogfQogCiBh
bmdsZTo6UmVzdWx0IFByb2dyYW1FeGVjdXRhYmxlVms6OnVwZGF0ZUltYWdlc0Rlc2NyaXB0b3JT
ZXQoCi0gICAgQ29udGV4dFZrICpjb250ZXh0VmssCisgICAgdms6OkNvbnRleHQgKmNvbnRleHQs
CisgICAgdms6OlJlc291cmNlVXNlTGlzdCAqcmVzb3VyY2VVc2VMaXN0LAorICAgIFVwZGF0ZURl
c2NyaXB0b3JTZXRzQnVpbGRlciAqdXBkYXRlQnVpbGRlciwKKyAgICBjb25zdCBnbDo6QWN0aXZl
VGV4dHVyZUFycmF5PFRleHR1cmVWayAqPiAmYWN0aXZlSW1hZ2VzLAorICAgIGNvbnN0IHN0ZDo6
dmVjdG9yPGdsOjpJbWFnZVVuaXQ+ICZpbWFnZVVuaXRzLAogICAgIGNvbnN0IGdsOjpQcm9ncmFt
RXhlY3V0YWJsZSAmZXhlY3V0YWJsZSwKLSAgICBjb25zdCBnbDo6U2hhZGVyVHlwZSBzaGFkZXJU
eXBlKQorICAgIGdsOjpTaGFkZXJUeXBlIHNoYWRlclR5cGUpCiB7Ci0gICAgY29uc3QgZ2w6OlN0
YXRlICZnbFN0YXRlICAgICAgICAgICAgICAgICAgICAgICAgICAgPSBjb250ZXh0VmstPmdldFN0
YXRlKCk7Ci0gICAgUmVuZGVyZXJWayAqcmVuZGVyZXIgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgPSBjb250ZXh0VmstPmdldFJlbmRlcmVyKCk7CisgICAgUmVuZGVyZXJWayAqcmVuZGVy
ZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPSBjb250ZXh0LT5nZXRSZW5kZXJlcigp
OwogICAgIGNvbnN0IHN0ZDo6dmVjdG9yPGdsOjpJbWFnZUJpbmRpbmc+ICZpbWFnZUJpbmRpbmdz
ID0gZXhlY3V0YWJsZS5nZXRJbWFnZUJpbmRpbmdzKCk7CiAgICAgY29uc3Qgc3RkOjp2ZWN0b3I8
Z2w6OkxpbmtlZFVuaWZvcm0+ICZ1bmlmb3JtcyAgICAgPSBleGVjdXRhYmxlLmdldFVuaWZvcm1z
KCk7CiAKQEAgLTE0NDgsMTAgKzE0NjYsMTAgQEAgYW5nbGU6OlJlc3VsdCBQcm9ncmFtRXhlY3V0
YWJsZVZrOjp1cGRhdGVJbWFnZXNEZXNjcmlwdG9yU2V0KAogICAgICAgICByZXR1cm4gYW5nbGU6
OlJlc3VsdDo6Q29udGludWU7CiAgICAgfQogCi0gICAgY29uc3QgZ2w6OkFjdGl2ZVRleHR1cmVB
cnJheTxUZXh0dXJlVmsgKj4gJmFjdGl2ZUltYWdlcyA9IGNvbnRleHRWay0+Z2V0QWN0aXZlSW1h
Z2VzKCk7Ci0KICAgICBhbmdsZTo6SGFzaE1hcDxzdGQ6OnN0cmluZywgdWludDMyX3Q+IG1hcHBl
ZEltYWdlTmFtZVRvQXJyYXlPZmZzZXQ7CiAKKyAgICBWa0Rlc2NyaXB0b3JTZXQgZGVzY3JpcHRv
clNldCA9IG1EZXNjcmlwdG9yU2V0c1tEZXNjcmlwdG9yU2V0SW5kZXg6OlNoYWRlclJlc291cmNl
XTsKKwogICAgIC8vIFdyaXRlIGltYWdlcy4KICAgICBmb3IgKHVpbnQzMl90IGltYWdlSW5kZXgg
PSAwOyBpbWFnZUluZGV4IDwgaW1hZ2VCaW5kaW5ncy5zaXplKCk7ICsraW1hZ2VJbmRleCkKICAg
ICB7CkBAIC0xNDY0LDkgKzE0ODIsNiBAQCBhbmdsZTo6UmVzdWx0IFByb2dyYW1FeGVjdXRhYmxl
Vms6OnVwZGF0ZUltYWdlc0Rlc2NyaXB0b3JTZXQoCiAgICAgICAgICAgICBjb250aW51ZTsKICAg
ICAgICAgfQogCi0gICAgICAgIFZrRGVzY3JpcHRvclNldCBkZXNjcmlwdG9yU2V0OwotICAgICAg
ICBBTkdMRV9UUlkoZ2V0T3JBbGxvY2F0ZVNoYWRlclJlc291cmNlc0Rlc2NyaXB0b3JTZXQoY29u
dGV4dFZrLCBudWxscHRyLCAmZGVzY3JpcHRvclNldCkpOwotCiAgICAgICAgIHN0ZDo6c3RyaW5n
IG1hcHBlZEltYWdlTmFtZSA9IEdsc2xhbmdHZXRNYXBwZWRTYW1wbGVyTmFtZShpbWFnZVVuaWZv
cm0ubmFtZSk7CiAKICAgICAgICAgR2V0SW1hZ2VOYW1lV2l0aG91dEluZGljZXMoJm1hcHBlZElt
YWdlTmFtZSk7CkBAIC0xNDk3LDcgKzE1MTIsNyBAQCBhbmdsZTo6UmVzdWx0IFByb2dyYW1FeGVj
dXRhYmxlVms6OnVwZGF0ZUltYWdlc0Rlc2NyaXB0b3JTZXQoCiAgICAgICAgICAgICAgICAgY29u
dGludWU7CiAgICAgICAgICAgICB9CiAKLSAgICAgICAgICAgIFZrV3JpdGVEZXNjcmlwdG9yU2V0
ICp3cml0ZUluZm9zID0gY29udGV4dFZrLT5hbGxvY1dyaXRlRGVzY3JpcHRvclNldHMoYXJyYXlT
aXplKTsKKyAgICAgICAgICAgIFZrV3JpdGVEZXNjcmlwdG9yU2V0ICp3cml0ZUluZm9zID0gdXBk
YXRlQnVpbGRlci0+YWxsb2NXcml0ZURlc2NyaXB0b3JTZXRzKGFycmF5U2l6ZSk7CiAKICAgICAg
ICAgICAgIGZvciAodWludDMyX3QgYXJyYXlFbGVtZW50ID0gMDsgYXJyYXlFbGVtZW50IDwgYXJy
YXlTaXplOyArK2FycmF5RWxlbWVudCkKICAgICAgICAgICAgIHsKQEAgLTE1MDUsNyArMTUyMCw3
IEBAIGFuZ2xlOjpSZXN1bHQgUHJvZ3JhbUV4ZWN1dGFibGVWazo6dXBkYXRlSW1hZ2VzRGVzY3Jp
cHRvclNldCgKICAgICAgICAgICAgICAgICBUZXh0dXJlVmsgKnRleHR1cmVWayA9IGFjdGl2ZUlt
YWdlc1tpbWFnZVVuaXRdOwogCiAgICAgICAgICAgICAgICAgY29uc3Qgdms6OkJ1ZmZlclZpZXcg
KnZpZXcgPSBudWxscHRyOwotICAgICAgICAgICAgICAgIEFOR0xFX1RSWSh0ZXh0dXJlVmstPmdl
dEJ1ZmZlclZpZXdBbmRSZWNvcmRVc2UoY29udGV4dFZrLCBmb3JtYXQsIHRydWUsICZ2aWV3KSk7
CisgICAgICAgICAgICAgICAgQU5HTEVfVFJZKHRleHR1cmVWay0+Z2V0QnVmZmVyVmlld0FuZFJl
Y29yZFVzZShjb250ZXh0LCBmb3JtYXQsIHRydWUsICZ2aWV3KSk7CiAKICAgICAgICAgICAgICAg
ICB3cml0ZUluZm9zW2FycmF5RWxlbWVudF0uc1R5cGUgICAgICAgICAgICA9IFZLX1NUUlVDVFVS
RV9UWVBFX1dSSVRFX0RFU0NSSVBUT1JfU0VUOwogICAgICAgICAgICAgICAgIHdyaXRlSW5mb3Nb
YXJyYXlFbGVtZW50XS5wTmV4dCAgICAgICAgICAgID0gbnVsbHB0cjsKQEAgLTE1MjgsMTggKzE1
NDMsMTggQEAgYW5nbGU6OlJlc3VsdCBQcm9ncmFtRXhlY3V0YWJsZVZrOjp1cGRhdGVJbWFnZXNE
ZXNjcmlwdG9yU2V0KAogICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgIH0KIAotICAgICAg
ICBWa1dyaXRlRGVzY3JpcHRvclNldCAqd3JpdGVJbmZvcyAgPSBjb250ZXh0VmstPmFsbG9jV3Jp
dGVEZXNjcmlwdG9yU2V0cyhhcnJheVNpemUpOwotICAgICAgICBWa0Rlc2NyaXB0b3JJbWFnZUlu
Zm8gKmltYWdlSW5mb3MgPSBjb250ZXh0VmstPmFsbG9jRGVzY3JpcHRvckltYWdlSW5mb3MoYXJy
YXlTaXplKTsKKyAgICAgICAgVmtXcml0ZURlc2NyaXB0b3JTZXQgKndyaXRlSW5mb3MgID0gdXBk
YXRlQnVpbGRlci0+YWxsb2NXcml0ZURlc2NyaXB0b3JTZXRzKGFycmF5U2l6ZSk7CisgICAgICAg
IFZrRGVzY3JpcHRvckltYWdlSW5mbyAqaW1hZ2VJbmZvcyA9IHVwZGF0ZUJ1aWxkZXItPmFsbG9j
RGVzY3JpcHRvckltYWdlSW5mb3MoYXJyYXlTaXplKTsKICAgICAgICAgZm9yICh1aW50MzJfdCBh
cnJheUVsZW1lbnQgPSAwOyBhcnJheUVsZW1lbnQgPCBhcnJheVNpemU7ICsrYXJyYXlFbGVtZW50
KQogICAgICAgICB7CiAgICAgICAgICAgICBHTHVpbnQgaW1hZ2VVbml0ICAgICAgICAgICAgID0g
aW1hZ2VCaW5kaW5nLmJvdW5kSW1hZ2VVbml0c1thcnJheUVsZW1lbnRdOwotICAgICAgICAgICAg
Y29uc3QgZ2w6OkltYWdlVW5pdCAmYmluZGluZyA9IGdsU3RhdGUuZ2V0SW1hZ2VVbml0KGltYWdl
VW5pdCk7CisgICAgICAgICAgICBjb25zdCBnbDo6SW1hZ2VVbml0ICZiaW5kaW5nID0gaW1hZ2VV
bml0c1tpbWFnZVVuaXRdOwogICAgICAgICAgICAgVGV4dHVyZVZrICp0ZXh0dXJlVmsgICAgICAg
ICA9IGFjdGl2ZUltYWdlc1tpbWFnZVVuaXRdOwogCiAgICAgICAgICAgICB2azo6SW1hZ2VIZWxw
ZXIgKmltYWdlICAgICAgICAgPSAmdGV4dHVyZVZrLT5nZXRJbWFnZSgpOwogICAgICAgICAgICAg
Y29uc3Qgdms6OkltYWdlVmlldyAqaW1hZ2VWaWV3ID0gbnVsbHB0cjsKIAotICAgICAgICAgICAg
QU5HTEVfVFJZKHRleHR1cmVWay0+Z2V0U3RvcmFnZUltYWdlVmlldyhjb250ZXh0VmssIGJpbmRp
bmcsICZpbWFnZVZpZXcpKTsKKyAgICAgICAgICAgIEFOR0xFX1RSWSh0ZXh0dXJlVmstPmdldFN0
b3JhZ2VJbWFnZVZpZXcoY29udGV4dCwgYmluZGluZywgJmltYWdlVmlldykpOwogCiAgICAgICAg
ICAgICAvLyBOb3RlOiBiaW5kaW5nLmFjY2VzcyBpcyB1bnVzZWQgYmVjYXVzZSBpdCBpcyBpbXBs
aWVkIGJ5IHRoZSBzaGFkZXIuCiAKQEAgLTE1NjUsMTcgKzE1ODAsMjUgQEAgYW5nbGU6OlJlc3Vs
dCBQcm9ncmFtRXhlY3V0YWJsZVZrOjp1cGRhdGVJbWFnZXNEZXNjcmlwdG9yU2V0KAogCiBhbmds
ZTo6UmVzdWx0IFByb2dyYW1FeGVjdXRhYmxlVms6OnVwZGF0ZVNoYWRlclJlc291cmNlc0Rlc2Ny
aXB0b3JTZXQoCiAgICAgQ29udGV4dFZrICpjb250ZXh0VmssCisgICAgY29uc3QgZ2w6OlByb2dy
YW1FeGVjdXRhYmxlICpleGVjdXRhYmxlLAorICAgIFVwZGF0ZURlc2NyaXB0b3JTZXRzQnVpbGRl
ciAqdXBkYXRlQnVpbGRlciwKKyAgICB2azo6QnVmZmVySGVscGVyICplbXB0eUJ1ZmZlciwKKyAg
ICB2azo6UmVzb3VyY2VVc2VMaXN0ICpyZXNvdXJjZVVzZUxpc3QsCiAgICAgRnJhbWVidWZmZXJW
ayAqZnJhbWVidWZmZXJWaywKICAgICBjb25zdCB2azo6RGVzY3JpcHRvclNldERlc2MgJnNoYWRl
ckJ1ZmZlcnNEZXNjKQogewotICAgIGNvbnN0IGdsOjpQcm9ncmFtRXhlY3V0YWJsZSAqZXhlY3V0
YWJsZSA9IGNvbnRleHRWay0+Z2V0U3RhdGUoKS5nZXRQcm9ncmFtRXhlY3V0YWJsZSgpOwotICAg
IEFTU0VSVChleGVjdXRhYmxlKTsKLQogICAgIC8vIFJlc2V0IHRoZSBkZXNjcmlwdG9yIHNldCBo
YW5kbGVzIHNvIHdlIG9ubHkgYWxsb2NhdGUgYSBuZXcgb25lIHdoZW4gbmVjZXNzYXJ5LgogICAg
IG1EZXNjcmlwdG9yU2V0c1tEZXNjcmlwdG9yU2V0SW5kZXg6OlNoYWRlclJlc291cmNlXSAgICAg
ID0gVktfTlVMTF9IQU5ETEU7CiAgICAgbUVtcHR5RGVzY3JpcHRvclNldHNbRGVzY3JpcHRvclNl
dEluZGV4OjpTaGFkZXJSZXNvdXJjZV0gPSBWS19OVUxMX0hBTkRMRTsKICAgICBtRHluYW1pY1No
YWRlckJ1ZmZlckRlc2NyaXB0b3JPZmZzZXRzLmNsZWFyKCk7CiAKKyAgICBpZiAoIW1EeW5hbWlj
RGVzY3JpcHRvclBvb2xzW0Rlc2NyaXB0b3JTZXRJbmRleDo6U2hhZGVyUmVzb3VyY2VdLnZhbGlk
KCkpCisgICAgeworICAgICAgICByZXR1cm4gYW5nbGU6OlJlc3VsdDo6Q29udGludWU7CisgICAg
fQorCisgICAgYm9vbCBjYWNoZUhpdCA9IGZhbHNlOworCiAgICAgaWYgKCFleGVjdXRhYmxlLT5o
YXNJbWFnZXMoKSAmJiAhZXhlY3V0YWJsZS0+dXNlc0ZyYW1lYnVmZmVyRmV0Y2goKSkKICAgICB7
CiAgICAgICAgIFZrRGVzY3JpcHRvclNldCBkZXNjcmlwdG9yU2V0ID0gVktfTlVMTF9IQU5ETEU7
CkBAIC0xNTg2LDM2ICsxNjA5LDYwIEBAIGFuZ2xlOjpSZXN1bHQgUHJvZ3JhbUV4ZWN1dGFibGVW
azo6dXBkYXRlU2hhZGVyUmVzb3VyY2VzRGVzY3JpcHRvclNldCgKICAgICAgICAgICAgIC8vIGVh
Y2ggdGltZSB0aGUgZGVzY3JpcHRvciBzZXQgaXMgdXNlZCBpbiBhIG5ldyBjb21tYW5kLgogICAg
ICAgICAgICAgbURlc2NyaXB0b3JQb29sQmluZGluZ3NbRGVzY3JpcHRvclNldEluZGV4OjpTaGFk
ZXJSZXNvdXJjZV0uZ2V0KCkucmV0YWluKAogICAgICAgICAgICAgICAgICZjb250ZXh0VmstPmdl
dFJlc291cmNlVXNlTGlzdCgpKTsKKyAgICAgICAgICAgIGNhY2hlSGl0ID0gdHJ1ZTsKKyAgICAg
ICAgfQorICAgICAgICBlbHNlCisgICAgICAgIHsKKyAgICAgICAgICAgIEFOR0xFX1RSWShhbGxv
Y2F0ZVNoYWRlclJlc291cmNlc0Rlc2NyaXB0b3JTZXQoY29udGV4dFZrLCByZXNvdXJjZVVzZUxp
c3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICZzaGFkZXJCdWZmZXJzRGVzYykpOwogICAgICAgICB9CiAgICAgfQorICAgIGVsc2UK
KyAgICB7CisgICAgICAgIEFOR0xFX1RSWShhbGxvY2F0ZVNoYWRlclJlc291cmNlc0Rlc2NyaXB0
b3JTZXQoY29udGV4dFZrLCByZXNvdXJjZVVzZUxpc3QsIG51bGxwdHIpKTsKKyAgICB9CiAKLSAg
ICBib29sIGNhY2hlSGl0ID0gbURlc2NyaXB0b3JTZXRzW0Rlc2NyaXB0b3JTZXRJbmRleDo6U2hh
ZGVyUmVzb3VyY2VdICE9IFZLX05VTExfSEFORExFOworICAgIEFTU0VSVChtRGVzY3JpcHRvclNl
dHNbRGVzY3JpcHRvclNldEluZGV4OjpTaGFkZXJSZXNvdXJjZV0gIT0gVktfTlVMTF9IQU5ETEUp
OwogCiAgICAgY29uc3QgVmtQaHlzaWNhbERldmljZUxpbWl0cyAmbGltaXRzID0KICAgICAgICAg
Y29udGV4dFZrLT5nZXRSZW5kZXJlcigpLT5nZXRQaHlzaWNhbERldmljZVByb3BlcnRpZXMoKS5s
aW1pdHM7CiAKLSAgICBmb3IgKGNvbnN0IGdsOjpTaGFkZXJUeXBlIHNoYWRlclR5cGUgOiBleGVj
dXRhYmxlLT5nZXRMaW5rZWRTaGFkZXJTdGFnZXMoKSkKKyAgICBjb25zdCBnbDo6U3RhdGUgJmds
U3RhdGUgPSBjb250ZXh0VmstPmdldFN0YXRlKCk7CisgICAgY29uc3QgZ2w6OkJ1ZmZlclZlY3Rv
ciAmYXRvbWljQ291bnRlckJ1ZmZlckJpbmRpbmdzID0KKyAgICAgICAgZ2xTdGF0ZS5nZXRPZmZz
ZXRCaW5kaW5nUG9pbnRlckF0b21pY0NvdW50ZXJCdWZmZXJzKCk7CisKKyAgICBjb25zdCBnbDo6
QnVmZmVyVmVjdG9yICZ1bmlmb3JtQnVmZmVycyA9IGdsU3RhdGUuZ2V0T2Zmc2V0QmluZGluZ1Bv
aW50ZXJVbmlmb3JtQnVmZmVycygpOworICAgIGNvbnN0IGdsOjpCdWZmZXJWZWN0b3IgJnN0b3Jh
Z2VCdWZmZXJzID0gZ2xTdGF0ZS5nZXRPZmZzZXRCaW5kaW5nUG9pbnRlclNoYWRlclN0b3JhZ2VC
dWZmZXJzKCk7CisgICAgY29uc3QgZ2w6OkFjdGl2ZVRleHR1cmVBcnJheTxUZXh0dXJlVmsgKj4g
JmFjdGl2ZUltYWdlcyA9IGNvbnRleHRWay0+Z2V0QWN0aXZlSW1hZ2VzKCk7CisKKyAgICBmb3Ig
KGdsOjpTaGFkZXJUeXBlIHNoYWRlclR5cGUgOiBleGVjdXRhYmxlLT5nZXRMaW5rZWRTaGFkZXJT
dGFnZXMoKSkKICAgICB7CiAgICAgICAgIEFOR0xFX1RSWSh1cGRhdGVCdWZmZXJzRGVzY3JpcHRv
clNldCgKLSAgICAgICAgICAgIGNvbnRleHRWaywgc2hhZGVyVHlwZSwgc2hhZGVyQnVmZmVyc0Rl
c2MsIGV4ZWN1dGFibGUtPmdldFVuaWZvcm1CbG9ja3MoKSwKLSAgICAgICAgICAgIG1Vbmlmb3Jt
QnVmZmVyRGVzY3JpcHRvclR5cGUsIGxpbWl0cy5tYXhVbmlmb3JtQnVmZmVyUmFuZ2UsIGNhY2hl
SGl0KSk7CisgICAgICAgICAgICBjb250ZXh0VmssIHVwZGF0ZUJ1aWxkZXIsIGVtcHR5QnVmZmVy
LCByZXNvdXJjZVVzZUxpc3QsIHNoYWRlclR5cGUsIHNoYWRlckJ1ZmZlcnNEZXNjLAorICAgICAg
ICAgICAgdW5pZm9ybUJ1ZmZlcnMsIGV4ZWN1dGFibGUtPmdldFVuaWZvcm1CbG9ja3MoKSwgbVVu
aWZvcm1CdWZmZXJEZXNjcmlwdG9yVHlwZSwKKyAgICAgICAgICAgIGxpbWl0cy5tYXhVbmlmb3Jt
QnVmZmVyUmFuZ2UsIGNhY2hlSGl0KSk7CiAgICAgICAgIEFOR0xFX1RSWSh1cGRhdGVCdWZmZXJz
RGVzY3JpcHRvclNldCgKLSAgICAgICAgICAgIGNvbnRleHRWaywgc2hhZGVyVHlwZSwgc2hhZGVy
QnVmZmVyc0Rlc2MsIGV4ZWN1dGFibGUtPmdldFNoYWRlclN0b3JhZ2VCbG9ja3MoKSwKLSAgICAg
ICAgICAgIGtTdG9yYWdlQnVmZmVyRGVzY3JpcHRvclR5cGUsIGxpbWl0cy5tYXhTdG9yYWdlQnVm
ZmVyUmFuZ2UsIGNhY2hlSGl0KSk7Ci0gICAgICAgIEFOR0xFX1RSWSh1cGRhdGVBdG9taWNDb3Vu
dGVyQnVmZmVyc0Rlc2NyaXB0b3JTZXQoY29udGV4dFZrLCAqZXhlY3V0YWJsZSwgc2hhZGVyVHlw
ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBzaGFkZXJCdWZmZXJzRGVzYywgY2FjaGVIaXQpKTsKLSAgICAgICAgQU5HTEVfVFJZKHVw
ZGF0ZUltYWdlc0Rlc2NyaXB0b3JTZXQoY29udGV4dFZrLCAqZXhlY3V0YWJsZSwgc2hhZGVyVHlw
ZSkpOwotICAgICAgICBBTkdMRV9UUlkoCi0gICAgICAgICAgICB1cGRhdGVJbnB1dEF0dGFjaG1l
bnREZXNjcmlwdG9yU2V0KCpleGVjdXRhYmxlLCBzaGFkZXJUeXBlLCBjb250ZXh0VmssIGZyYW1l
YnVmZmVyVmspKTsKKyAgICAgICAgICAgIGNvbnRleHRWaywgdXBkYXRlQnVpbGRlciwgZW1wdHlC
dWZmZXIsIHJlc291cmNlVXNlTGlzdCwgc2hhZGVyVHlwZSwgc2hhZGVyQnVmZmVyc0Rlc2MsCisg
ICAgICAgICAgICBzdG9yYWdlQnVmZmVycywgZXhlY3V0YWJsZS0+Z2V0U2hhZGVyU3RvcmFnZUJs
b2NrcygpLCBrU3RvcmFnZUJ1ZmZlckRlc2NyaXB0b3JUeXBlLAorICAgICAgICAgICAgbGltaXRz
Lm1heFN0b3JhZ2VCdWZmZXJSYW5nZSwgY2FjaGVIaXQpKTsKKyAgICAgICAgQU5HTEVfVFJZKHVw
ZGF0ZUF0b21pY0NvdW50ZXJCdWZmZXJzRGVzY3JpcHRvclNldCgKKyAgICAgICAgICAgIGNvbnRl
eHRWaywgdXBkYXRlQnVpbGRlciwgZW1wdHlCdWZmZXIsIHJlc291cmNlVXNlTGlzdCwgYXRvbWlj
Q291bnRlckJ1ZmZlckJpbmRpbmdzLAorICAgICAgICAgICAgKmV4ZWN1dGFibGUsIHNoYWRlclR5
cGUsIHNoYWRlckJ1ZmZlcnNEZXNjLCBjYWNoZUhpdCkpOworICAgICAgICBBTkdMRV9UUlkodXBk
YXRlSW1hZ2VzRGVzY3JpcHRvclNldChjb250ZXh0VmssIHJlc291cmNlVXNlTGlzdCwgdXBkYXRl
QnVpbGRlciwgYWN0aXZlSW1hZ2VzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBnbFN0YXRlLmdldEltYWdlVW5pdHMoKSwgKmV4ZWN1dGFibGUsIHNoYWRlclR5
cGUpKTsKKyAgICAgICAgQU5HTEVfVFJZKHVwZGF0ZUlucHV0QXR0YWNobWVudERlc2NyaXB0b3JT
ZXQoY29udGV4dFZrLCByZXNvdXJjZVVzZUxpc3QsIHVwZGF0ZUJ1aWxkZXIsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpleGVjdXRhYmxlLCBz
aGFkZXJUeXBlLCBmcmFtZWJ1ZmZlclZrKSk7CiAgICAgfQogCiAgICAgcmV0dXJuIGFuZ2xlOjpS
ZXN1bHQ6OkNvbnRpbnVlOwogfQogCiBhbmdsZTo6UmVzdWx0IFByb2dyYW1FeGVjdXRhYmxlVms6
OnVwZGF0ZUlucHV0QXR0YWNobWVudERlc2NyaXB0b3JTZXQoCisgICAgdms6OkNvbnRleHQgKmNv
bnRleHQsCisgICAgdms6OlJlc291cmNlVXNlTGlzdCAqcmVzb3VyY2VVc2VMaXN0LAorICAgIFVw
ZGF0ZURlc2NyaXB0b3JTZXRzQnVpbGRlciAqdXBkYXRlQnVpbGRlciwKICAgICBjb25zdCBnbDo6
UHJvZ3JhbUV4ZWN1dGFibGUgJmV4ZWN1dGFibGUsCi0gICAgY29uc3QgZ2w6OlNoYWRlclR5cGUg
c2hhZGVyVHlwZSwKLSAgICBDb250ZXh0VmsgKmNvbnRleHRWaywKKyAgICBnbDo6U2hhZGVyVHlw
ZSBzaGFkZXJUeXBlLAogICAgIEZyYW1lYnVmZmVyVmsgKmZyYW1lYnVmZmVyVmspCiB7CiAgICAg
aWYgKHNoYWRlclR5cGUgIT0gZ2w6OlNoYWRlclR5cGU6OkZyYWdtZW50KQpAQCAtMTY0MiwxNyAr
MTY4OSwxNiBAQCBhbmdsZTo6UmVzdWx0IFByb2dyYW1FeGVjdXRhYmxlVms6OnVwZGF0ZUlucHV0
QXR0YWNobWVudERlc2NyaXB0b3JTZXQoCiAKICAgICB1aW50MzJfdCBiYXNlQmluZGluZyA9IGJh
c2VJbmZvLmJpbmRpbmcgLSBiYXNlSW5wdXRBdHRhY2htZW50LmxvY2F0aW9uOwogCisgICAgVmtE
ZXNjcmlwdG9yU2V0IGRlc2NyaXB0b3JTZXQgPSBtRGVzY3JpcHRvclNldHNbRGVzY3JpcHRvclNl
dEluZGV4OjpTaGFkZXJSZXNvdXJjZV07CisKICAgICBmb3IgKHNpemVfdCBjb2xvckluZGV4IDog
ZnJhbWVidWZmZXJWay0+Z2V0U3RhdGUoKS5nZXRDb2xvckF0dGFjaG1lbnRzTWFzaygpKQogICAg
IHsKLSAgICAgICAgVmtEZXNjcmlwdG9yU2V0IGRlc2NyaXB0b3JTZXQ7Ci0gICAgICAgIEFOR0xF
X1RSWShnZXRPckFsbG9jYXRlU2hhZGVyUmVzb3VyY2VzRGVzY3JpcHRvclNldChjb250ZXh0Vmss
IG51bGxwdHIsICZkZXNjcmlwdG9yU2V0KSk7Ci0KLSAgICAgICAgVmtXcml0ZURlc2NyaXB0b3JT
ZXQgKndyaXRlSW5mb3MgID0gY29udGV4dFZrLT5hbGxvY1dyaXRlRGVzY3JpcHRvclNldHMoMSk7
Ci0gICAgICAgIFZrRGVzY3JpcHRvckltYWdlSW5mbyAqaW1hZ2VJbmZvcyA9IGNvbnRleHRWay0+
YWxsb2NEZXNjcmlwdG9ySW1hZ2VJbmZvcygxKTsKKyAgICAgICAgVmtXcml0ZURlc2NyaXB0b3JT
ZXQgKndyaXRlSW5mb3MgID0gdXBkYXRlQnVpbGRlci0+YWxsb2NXcml0ZURlc2NyaXB0b3JTZXRz
KDEpOworICAgICAgICBWa0Rlc2NyaXB0b3JJbWFnZUluZm8gKmltYWdlSW5mb3MgPSB1cGRhdGVC
dWlsZGVyLT5hbGxvY0Rlc2NyaXB0b3JJbWFnZUluZm9zKDEpOwogICAgICAgICBSZW5kZXJUYXJn
ZXRWayAqcmVuZGVyVGFyZ2V0VmsgICAgPSBmcmFtZWJ1ZmZlclZrLT5nZXRDb2xvckRyYXdSZW5k
ZXJUYXJnZXQoY29sb3JJbmRleCk7CiAgICAgICAgIGNvbnN0IHZrOjpJbWFnZVZpZXcgKmltYWdl
VmlldyAgICA9IG51bGxwdHI7CiAKLSAgICAgICAgQU5HTEVfVFJZKHJlbmRlclRhcmdldFZrLT5n
ZXRJbWFnZVZpZXcoY29udGV4dFZrLCAmaW1hZ2VWaWV3KSk7CisgICAgICAgIEFOR0xFX1RSWShy
ZW5kZXJUYXJnZXRWay0+Z2V0SW1hZ2VWaWV3KGNvbnRleHQsICZpbWFnZVZpZXcpKTsKIAogICAg
ICAgICBpbWFnZUluZm9zWzBdLnNhbXBsZXIgICAgID0gVktfTlVMTF9IQU5ETEU7CiAgICAgICAg
IGltYWdlSW5mb3NbMF0uaW1hZ2VWaWV3ICAgPSBpbWFnZVZpZXctPmdldEhhbmRsZSgpOwpAQCAt
MTY3Myw3MSArMTcxOSw4MCBAQCBhbmdsZTo6UmVzdWx0IFByb2dyYW1FeGVjdXRhYmxlVms6OnVw
ZGF0ZUlucHV0QXR0YWNobWVudERlc2NyaXB0b3JTZXQoCiAgICAgcmV0dXJuIGFuZ2xlOjpSZXN1
bHQ6OkNvbnRpbnVlOwogfQogCi1hbmdsZTo6UmVzdWx0IFByb2dyYW1FeGVjdXRhYmxlVms6OnVw
ZGF0ZVRyYW5zZm9ybUZlZWRiYWNrRGVzY3JpcHRvclNldCgKLSAgICBDb250ZXh0VmsgKmNvbnRl
eHRWaywKK2FuZ2xlOjpSZXN1bHQgUHJvZ3JhbUV4ZWN1dGFibGVWazo6dXBkYXRlVW5pZm9ybXNB
bmRYZmJEZXNjcmlwdG9yU2V0KAorICAgIHZrOjpDb250ZXh0ICpjb250ZXh0LAorICAgIFVwZGF0
ZURlc2NyaXB0b3JTZXRzQnVpbGRlciAqdXBkYXRlQnVpbGRlciwKKyAgICB2azo6UmVzb3VyY2VV
c2VMaXN0ICpyZXNvdXJjZVVzZUxpc3QsCisgICAgdms6OkJ1ZmZlckhlbHBlciAqZW1wdHlCdWZm
ZXIsCiAgICAgY29uc3QgZ2w6OlByb2dyYW1FeGVjdXRhYmxlICZleGVjdXRhYmxlLAogICAgIHZr
OjpCdWZmZXJIZWxwZXIgKmRlZmF1bHRVbmlmb3JtQnVmZmVyLAotICAgIGNvbnN0IHZrOjpEZXNj
cmlwdG9yU2V0RGVzYyAmeGZiQnVmZmVyRGVzYykKKyAgICBjb25zdCB2azo6RGVzY3JpcHRvclNl
dERlc2MgJnVuaWZvcm1zQW5kWGZiRGVzYywKKyAgICBib29sIGlzVHJhbnNmb3JtRmVlZGJhY2tB
Y3RpdmVVbnBhdXNlZCwKKyAgICBUcmFuc2Zvcm1GZWVkYmFja1ZrICp0cmFuc2Zvcm1GZWVkYmFj
a1ZrKQogewogICAgIEFTU0VSVChleGVjdXRhYmxlLmhhc1RyYW5zZm9ybUZlZWRiYWNrT3V0cHV0
KCkpOwogCiAgICAgYm9vbCBuZXdEZXNjcmlwdG9yU2V0QWxsb2NhdGVkOwotICAgIEFOR0xFX1RS
WShhbGxvY1VuaWZvcm1BbmRYZmJEZXNjcmlwdG9yU2V0KGNvbnRleHRWaywgZGVmYXVsdFVuaWZv
cm1CdWZmZXIsIHhmYkJ1ZmZlckRlc2MsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgJm5ld0Rlc2NyaXB0b3JTZXRBbGxvY2F0ZWQpKTsKKyAgICBBTkdMRV9U
UlkoYWxsb2NVbmlmb3JtQW5kWGZiRGVzY3JpcHRvclNldChjb250ZXh0LCByZXNvdXJjZVVzZUxp
c3QsIGRlZmF1bHRVbmlmb3JtQnVmZmVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHVuaWZvcm1zQW5kWGZiRGVzYywgJm5ld0Rlc2NyaXB0b3JTZXRBbGxv
Y2F0ZWQpKTsKIAogICAgIGlmIChuZXdEZXNjcmlwdG9yU2V0QWxsb2NhdGVkKQogICAgIHsKLSAg
ICAgICAgZm9yIChjb25zdCBnbDo6U2hhZGVyVHlwZSBzaGFkZXJUeXBlIDogZXhlY3V0YWJsZS5n
ZXRMaW5rZWRTaGFkZXJTdGFnZXMoKSkKKyAgICAgICAgZm9yIChnbDo6U2hhZGVyVHlwZSBzaGFk
ZXJUeXBlIDogZXhlY3V0YWJsZS5nZXRMaW5rZWRTaGFkZXJTdGFnZXMoKSkKICAgICAgICAgewot
ICAgICAgICAgICAgdXBkYXRlRGVmYXVsdFVuaWZvcm1zRGVzY3JpcHRvclNldCgKLSAgICAgICAg
ICAgICAgICBjb250ZXh0VmssIHNoYWRlclR5cGUsICptRGVmYXVsdFVuaWZvcm1CbG9ja3Nbc2hh
ZGVyVHlwZV0sIGRlZmF1bHRVbmlmb3JtQnVmZmVyKTsKKyAgICAgICAgICAgIHVwZGF0ZURlZmF1
bHRVbmlmb3Jtc0Rlc2NyaXB0b3JTZXQoY29udGV4dCwgdXBkYXRlQnVpbGRlciwgZW1wdHlCdWZm
ZXIsIHJlc291cmNlVXNlTGlzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgc2hhZGVyVHlwZSwgKm1EZWZhdWx0VW5pZm9ybUJsb2Nrc1tzaGFkZXJUeXBl
XSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVs
dFVuaWZvcm1CdWZmZXIpOwogICAgICAgICB9Ci0gICAgICAgIHVwZGF0ZVRyYW5zZm9ybUZlZWRi
YWNrRGVzY3JpcHRvclNldEltcGwoY29udGV4dFZrLCBleGVjdXRhYmxlKTsKKyAgICAgICAgdXBk
YXRlVHJhbnNmb3JtRmVlZGJhY2tEZXNjcmlwdG9yU2V0SW1wbChjb250ZXh0LCB1cGRhdGVCdWls
ZGVyLCBlbXB0eUJ1ZmZlciwgZXhlY3V0YWJsZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBpc1RyYW5zZm9ybUZlZWRiYWNrQWN0aXZlVW5wYXVzZWQs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNm
b3JtRmVlZGJhY2tWayk7CiAgICAgfQogCiAgICAgcmV0dXJuIGFuZ2xlOjpSZXN1bHQ6OkNvbnRp
bnVlOwogfQogCiB2b2lkIFByb2dyYW1FeGVjdXRhYmxlVms6OnVwZGF0ZVRyYW5zZm9ybUZlZWRi
YWNrRGVzY3JpcHRvclNldEltcGwoCi0gICAgQ29udGV4dFZrICpjb250ZXh0VmssCi0gICAgY29u
c3QgZ2w6OlByb2dyYW1FeGVjdXRhYmxlICZleGVjdXRhYmxlKQorICAgIHZrOjpDb250ZXh0ICpj
b250ZXh0LAorICAgIFVwZGF0ZURlc2NyaXB0b3JTZXRzQnVpbGRlciAqdXBkYXRlQnVpbGRlciwK
KyAgICB2azo6QnVmZmVySGVscGVyICplbXB0eUJ1ZmZlciwKKyAgICBjb25zdCBnbDo6UHJvZ3Jh
bUV4ZWN1dGFibGUgJmV4ZWN1dGFibGUsCisgICAgYm9vbCBpc1RyYW5zZm9ybUZlZWRiYWNrQWN0
aXZlVW5wYXVzZWQsCisgICAgVHJhbnNmb3JtRmVlZGJhY2tWayAqdHJhbnNmb3JtRmVlZGJhY2tW
aykKIHsKLSAgICBjb25zdCBnbDo6U3RhdGUgJmdsU3RhdGUgICAgICAgICAgICAgICAgID0gY29u
dGV4dFZrLT5nZXRTdGF0ZSgpOwotICAgIGdsOjpUcmFuc2Zvcm1GZWVkYmFjayAqdHJhbnNmb3Jt
RmVlZGJhY2sgPSBnbFN0YXRlLmdldEN1cnJlbnRUcmFuc2Zvcm1GZWVkYmFjaygpOwotCiAgICAg
aWYgKCFleGVjdXRhYmxlLmhhc1RyYW5zZm9ybUZlZWRiYWNrT3V0cHV0KCkpCiAgICAgewogICAg
ICAgICAvLyBJZiB4ZmIgaGFzIG5vIG91dHB1dCB0aGVyZSBpcyBubyBuZWVkIHRvIHVwZGF0ZSBk
ZXNjcmlwdG9yIHNldC4KICAgICAgICAgcmV0dXJuOwogICAgIH0KLSAgICBpZiAoIWdsU3RhdGUu
aXNUcmFuc2Zvcm1GZWVkYmFja0FjdGl2ZVVucGF1c2VkKCkpCisgICAgaWYgKCFpc1RyYW5zZm9y
bUZlZWRiYWNrQWN0aXZlVW5wYXVzZWQpCiAgICAgewogICAgICAgICAvLyBXZSBzZXQgZW1wdHkg
QnVmZmVyIHRvIHhmYiBkZXNjcmlwdG9yIHNldCBiZWNhdXNlIHhmYiBkZXNjcmlwdG9yIHNldAog
ICAgICAgICAvLyByZXF1aXJlcyB2YWxpZCBidWZmZXIgYmluZGluZ3MsIGV2ZW4gaWYgdGhleSBh
cmUgZW1wdHkgYnVmZmVyLAogICAgICAgICAvLyBvdGhlcndpc2UgVnVsa2FuIHZhbGlkYXRpb24g
bGF5ZXIgZ2VuZXJhdGVzIGVycm9ycy4KLSAgICAgICAgaWYgKHRyYW5zZm9ybUZlZWRiYWNrKQor
ICAgICAgICBpZiAodHJhbnNmb3JtRmVlZGJhY2tWaykKICAgICAgICAgewotICAgICAgICAgICAg
VHJhbnNmb3JtRmVlZGJhY2tWayAqdHJhbnNmb3JtRmVlZGJhY2tWayA9IHZrOjpHZXRJbXBsKHRy
YW5zZm9ybUZlZWRiYWNrKTsKICAgICAgICAgICAgIHRyYW5zZm9ybUZlZWRiYWNrVmstPmluaXRE
ZXNjcmlwdG9yU2V0KAotICAgICAgICAgICAgICAgIGNvbnRleHRWaywgbVZhcmlhYmxlSW5mb01h
cCwgZXhlY3V0YWJsZS5nZXRUcmFuc2Zvcm1GZWVkYmFja0J1ZmZlckNvdW50KCksCisgICAgICAg
ICAgICAgICAgY29udGV4dCwgdXBkYXRlQnVpbGRlciwgZW1wdHlCdWZmZXIsIG1WYXJpYWJsZUlu
Zm9NYXAsCisgICAgICAgICAgICAgICAgZXhlY3V0YWJsZS5nZXRUcmFuc2Zvcm1GZWVkYmFja0J1
ZmZlckNvdW50KCksCiAgICAgICAgICAgICAgICAgbURlc2NyaXB0b3JTZXRzW0Rlc2NyaXB0b3JT
ZXRJbmRleDo6VW5pZm9ybXNBbmRYZmJdKTsKICAgICAgICAgfQogICAgICAgICByZXR1cm47CiAg
ICAgfQotCi0gICAgVHJhbnNmb3JtRmVlZGJhY2tWayAqdHJhbnNmb3JtRmVlZGJhY2tWayA9IHZr
OjpHZXRJbXBsKGdsU3RhdGUuZ2V0Q3VycmVudFRyYW5zZm9ybUZlZWRiYWNrKCkpOwotICAgIHRy
YW5zZm9ybUZlZWRiYWNrVmstPnVwZGF0ZURlc2NyaXB0b3JTZXQoY29udGV4dFZrLCBleGVjdXRh
YmxlLCBtVmFyaWFibGVJbmZvTWFwLAorICAgIHRyYW5zZm9ybUZlZWRiYWNrVmstPnVwZGF0ZURl
c2NyaXB0b3JTZXQoY29udGV4dCwgdXBkYXRlQnVpbGRlciwgZXhlY3V0YWJsZSwgbVZhcmlhYmxl
SW5mb01hcCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1E
ZXNjcmlwdG9yU2V0c1tEZXNjcmlwdG9yU2V0SW5kZXg6OlVuaWZvcm1zQW5kWGZiXSk7CiB9CiAK
IGFuZ2xlOjpSZXN1bHQgUHJvZ3JhbUV4ZWN1dGFibGVWazo6dXBkYXRlVGV4dHVyZXNEZXNjcmlw
dG9yU2V0KAotICAgIENvbnRleHRWayAqY29udGV4dFZrLAotICAgIGNvbnN0IHZrOjpEZXNjcmlw
dG9yU2V0RGVzYyAmdGV4dHVyZXNEZXNjKQorICAgIHZrOjpDb250ZXh0ICpjb250ZXh0LAorICAg
IFVwZGF0ZURlc2NyaXB0b3JTZXRzQnVpbGRlciAqdXBkYXRlQnVpbGRlciwKKyAgICB2azo6UmVz
b3VyY2VVc2VMaXN0ICpyZXNvdXJjZVVzZUxpc3QsCisgICAgY29uc3QgZ2w6OlByb2dyYW1FeGVj
dXRhYmxlICZleGVjdXRhYmxlLAorICAgIGNvbnN0IGdsOjpBY3RpdmVUZXh0dXJlQXJyYXk8dms6
OlRleHR1cmVVbml0PiAmYWN0aXZlVGV4dHVyZXMsCisgICAgY29uc3Qgdms6OkRlc2NyaXB0b3JT
ZXREZXNjICZ0ZXh0dXJlc0Rlc2MsCisgICAgYm9vbCBlbXVsYXRlU2VhbWZ1bEN1YmVNYXBTYW1w
bGluZykKIHsKLSAgICBjb25zdCBnbDo6UHJvZ3JhbUV4ZWN1dGFibGUgKmV4ZWN1dGFibGUgPSBj
b250ZXh0VmstPmdldFN0YXRlKCkuZ2V0UHJvZ3JhbUV4ZWN1dGFibGUoKTsKLSAgICBBU1NFUlQo
ZXhlY3V0YWJsZSk7Ci0KLSAgICBpZiAoIWV4ZWN1dGFibGUtPmhhc1RleHR1cmVzKCkpCisgICAg
aWYgKCFleGVjdXRhYmxlLmhhc1RleHR1cmVzKCkpCiAgICAgewogICAgICAgICByZXR1cm4gYW5n
bGU6OlJlc3VsdDo6Q29udGludWU7CiAgICAgfQpAQCAtMTc0OCwyNCArMTgwMywyMSBAQCBhbmds
ZTo6UmVzdWx0IFByb2dyYW1FeGVjdXRhYmxlVms6OnVwZGF0ZVRleHR1cmVzRGVzY3JpcHRvclNl
dCgKICAgICAgICAgbURlc2NyaXB0b3JTZXRzW0Rlc2NyaXB0b3JTZXRJbmRleDo6VGV4dHVyZV0g
PSBkZXNjcmlwdG9yU2V0OwogICAgICAgICAvLyBUaGUgZGVzY3JpcHRvciBwb29sIHRoYXQgdGhp
cyBkZXNjcmlwdG9yIHNldCB3YXMgYWxsb2NhdGVkIGZyb20gbmVlZHMgdG8gYmUgcmV0YWluZWQg
ZWFjaAogICAgICAgICAvLyB0aW1lIHRoZSBkZXNjcmlwdG9yIHNldCBpcyB1c2VkIGluIGEgbmV3
IGNvbW1hbmQuCi0gICAgICAgIG1EZXNjcmlwdG9yUG9vbEJpbmRpbmdzW0Rlc2NyaXB0b3JTZXRJ
bmRleDo6VGV4dHVyZV0uZ2V0KCkucmV0YWluKAotICAgICAgICAgICAgJmNvbnRleHRWay0+Z2V0
UmVzb3VyY2VVc2VMaXN0KCkpOworICAgICAgICBtRGVzY3JpcHRvclBvb2xCaW5kaW5nc1tEZXNj
cmlwdG9yU2V0SW5kZXg6OlRleHR1cmVdLmdldCgpLnJldGFpbihyZXNvdXJjZVVzZUxpc3QpOwog
ICAgICAgICByZXR1cm4gYW5nbGU6OlJlc3VsdDo6Q29udGludWU7CiAgICAgfQogCi0gICAgY29u
c3QgZ2w6OkFjdGl2ZVRleHR1cmVBcnJheTx2azo6VGV4dHVyZVVuaXQ+ICZhY3RpdmVUZXh0dXJl
cyA9IGNvbnRleHRWay0+Z2V0QWN0aXZlVGV4dHVyZXMoKTsKLSAgICBib29sIGVtdWxhdGVTZWFt
ZnVsQ3ViZU1hcFNhbXBsaW5nID0gY29udGV4dFZrLT5lbXVsYXRlU2VhbWZ1bEN1YmVNYXBTYW1w
bGluZygpOworICAgIGNvbnN0IHN0ZDo6dmVjdG9yPGdsOjpTYW1wbGVyQmluZGluZz4gJnNhbXBs
ZXJCaW5kaW5ncyA9IGV4ZWN1dGFibGUuZ2V0U2FtcGxlckJpbmRpbmdzKCk7CiAKLSAgICBmb3Ig
KGNvbnN0IGdsOjpTaGFkZXJUeXBlIHNoYWRlclR5cGUgOiBleGVjdXRhYmxlLT5nZXRMaW5rZWRT
aGFkZXJTdGFnZXMoKSkKKyAgICBmb3IgKGdsOjpTaGFkZXJUeXBlIHNoYWRlclR5cGUgOiBleGVj
dXRhYmxlLmdldExpbmtlZFNoYWRlclN0YWdlcygpKQogICAgIHsKICAgICAgICAgYW5nbGU6Okhh
c2hNYXA8c3RkOjpzdHJpbmcsIHVpbnQzMl90PiBtYXBwZWRTYW1wbGVyTmFtZVRvQXJyYXlPZmZz
ZXQ7Ci0gICAgICAgIGZvciAodWludDMyX3QgdGV4dHVyZUluZGV4ID0gMDsgdGV4dHVyZUluZGV4
IDwgZXhlY3V0YWJsZS0+Z2V0U2FtcGxlckJpbmRpbmdzKCkuc2l6ZSgpOworICAgICAgICBmb3Ig
KHVpbnQzMl90IHRleHR1cmVJbmRleCA9IDA7IHRleHR1cmVJbmRleCA8IGV4ZWN1dGFibGUuZ2V0
U2FtcGxlckJpbmRpbmdzKCkuc2l6ZSgpOwogICAgICAgICAgICAgICsrdGV4dHVyZUluZGV4KQog
ICAgICAgICB7Ci0gICAgICAgICAgICBjb25zdCBnbDo6U2FtcGxlckJpbmRpbmcgJnNhbXBsZXJC
aW5kaW5nID0KLSAgICAgICAgICAgICAgICBleGVjdXRhYmxlLT5nZXRTYW1wbGVyQmluZGluZ3Mo
KVt0ZXh0dXJlSW5kZXhdOwotICAgICAgICAgICAgdWludDMyX3QgdW5pZm9ybUluZGV4ID0gZXhl
Y3V0YWJsZS0+Z2V0VW5pZm9ybUluZGV4RnJvbVNhbXBsZXJJbmRleCh0ZXh0dXJlSW5kZXgpOwot
ICAgICAgICAgICAgY29uc3QgZ2w6OkxpbmtlZFVuaWZvcm0gJnNhbXBsZXJVbmlmb3JtID0gZXhl
Y3V0YWJsZS0+Z2V0VW5pZm9ybXMoKVt1bmlmb3JtSW5kZXhdOworICAgICAgICAgICAgY29uc3Qg
Z2w6OlNhbXBsZXJCaW5kaW5nICZzYW1wbGVyQmluZGluZyA9IHNhbXBsZXJCaW5kaW5nc1t0ZXh0
dXJlSW5kZXhdOworICAgICAgICAgICAgdWludDMyX3QgdW5pZm9ybUluZGV4ID0gZXhlY3V0YWJs
ZS5nZXRVbmlmb3JtSW5kZXhGcm9tU2FtcGxlckluZGV4KHRleHR1cmVJbmRleCk7CisgICAgICAg
ICAgICBjb25zdCBnbDo6TGlua2VkVW5pZm9ybSAmc2FtcGxlclVuaWZvcm0gPSBleGVjdXRhYmxl
LmdldFVuaWZvcm1zKClbdW5pZm9ybUluZGV4XTsKICAgICAgICAgICAgIHN0ZDo6c3RyaW5nIG1h
cHBlZFNhbXBsZXJOYW1lID0gR2xzbGFuZ0dldE1hcHBlZFNhbXBsZXJOYW1lKHNhbXBsZXJVbmlm
b3JtLm5hbWUpOwogCiAgICAgICAgICAgICBpZiAoIXNhbXBsZXJVbmlmb3JtLmlzQWN0aXZlKHNo
YWRlclR5cGUpKQpAQCAtMTc4NiwxMyArMTgzOCwxMyBAQCBhbmdsZTo6UmVzdWx0IFByb2dyYW1F
eGVjdXRhYmxlVms6OnVwZGF0ZVRleHR1cmVzRGVzY3JpcHRvclNldCgKICAgICAgICAgICAgIGlm
IChkZXNjcmlwdG9yU2V0ID09IFZLX05VTExfSEFORExFKQogICAgICAgICAgICAgewogICAgICAg
ICAgICAgICAgIGJvb2wgbmV3UG9vbEFsbG9jYXRlZDsKLSAgICAgICAgICAgICAgICBBTkdMRV9U
UlkoYWxsb2NhdGVEZXNjcmlwdG9yU2V0QW5kR2V0SW5mbyhjb250ZXh0VmssIERlc2NyaXB0b3JT
ZXRJbmRleDo6VGV4dHVyZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAmbmV3UG9vbEFsbG9jYXRlZCkpOworICAgICAgICAgICAgICAg
IEFOR0xFX1RSWShhbGxvY2F0ZURlc2NyaXB0b3JTZXRBbmRHZXRJbmZvKAorICAgICAgICAgICAg
ICAgICAgICBjb250ZXh0LCByZXNvdXJjZVVzZUxpc3QsIERlc2NyaXB0b3JTZXRJbmRleDo6VGV4
dHVyZSwgJm5ld1Bvb2xBbGxvY2F0ZWQpKTsKIAogICAgICAgICAgICAgICAgIC8vIENsZWFyIGRl
c2NyaXB0b3Igc2V0IGNhY2hlLiBJdCBtYXkgbm8gbG9uZ2VyIGJlIHZhbGlkLgogICAgICAgICAg
ICAgICAgIGlmIChuZXdQb29sQWxsb2NhdGVkKQogICAgICAgICAgICAgICAgIHsKLSAgICAgICAg
ICAgICAgICAgICAgbVRleHR1cmVEZXNjcmlwdG9yc0NhY2hlLmRlc3Ryb3koY29udGV4dFZrLT5n
ZXRSZW5kZXJlcigpLAorICAgICAgICAgICAgICAgICAgICBtVGV4dHVyZURlc2NyaXB0b3JzQ2Fj
aGUuZGVzdHJveShjb250ZXh0LT5nZXRSZW5kZXJlcigpLAogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWdWxrYW5DYWNoZVR5cGU6OlRleHR1cmVE
ZXNjcmlwdG9ycyk7CiAgICAgICAgICAgICAgICAgfQogCkBAIC0xODA5LDcgKzE4NjEsNyBAQCBh
bmdsZTo6UmVzdWx0IFByb2dyYW1FeGVjdXRhYmxlVms6OnVwZGF0ZVRleHR1cmVzRGVzY3JpcHRv
clNldCgKICAgICAgICAgICAgIC8vIHRpbWUgd2UgcHJvY2VzcyBhIG5lc3RlZCBhcnJheS4KICAg
ICAgICAgICAgIG1hcHBlZFNhbXBsZXJOYW1lVG9BcnJheU9mZnNldFttYXBwZWRTYW1wbGVyTmFt
ZV0gKz0gYXJyYXlTaXplOwogCi0gICAgICAgICAgICBWa1dyaXRlRGVzY3JpcHRvclNldCAqd3Jp
dGVJbmZvcyA9IGNvbnRleHRWay0+YWxsb2NXcml0ZURlc2NyaXB0b3JTZXRzKGFycmF5U2l6ZSk7
CisgICAgICAgICAgICBWa1dyaXRlRGVzY3JpcHRvclNldCAqd3JpdGVJbmZvcyA9IHVwZGF0ZUJ1
aWxkZXItPmFsbG9jV3JpdGVEZXNjcmlwdG9yU2V0cyhhcnJheVNpemUpOwogCiAgICAgICAgICAg
ICAvLyBUZXh0dXJlIGJ1ZmZlcnMgdXNlIGJ1ZmZlciB2aWV3cywgc28gdGhleSBhcmUgZXNwZWNp
YWxseSBoYW5kbGVkLgogICAgICAgICAgICAgaWYgKHNhbXBsZXJCaW5kaW5nLnRleHR1cmVUeXBl
ID09IGdsOjpUZXh0dXJlVHlwZTo6QnVmZmVyKQpAQCAtMTgxOSw4ICsxODcxLDcgQEAgYW5nbGU6
OlJlc3VsdCBQcm9ncmFtRXhlY3V0YWJsZVZrOjp1cGRhdGVUZXh0dXJlc0Rlc2NyaXB0b3JTZXQo
CiAgICAgICAgICAgICAgICAgICAgIEdMdWludCB0ZXh0dXJlVW5pdCAgICAgICAgID0gc2FtcGxl
ckJpbmRpbmcuYm91bmRUZXh0dXJlVW5pdHNbYXJyYXlFbGVtZW50XTsKICAgICAgICAgICAgICAg
ICAgICAgVGV4dHVyZVZrICp0ZXh0dXJlVmsgICAgICAgPSBhY3RpdmVUZXh0dXJlc1t0ZXh0dXJl
VW5pdF0udGV4dHVyZTsKICAgICAgICAgICAgICAgICAgICAgY29uc3Qgdms6OkJ1ZmZlclZpZXcg
KnZpZXcgPSBudWxscHRyOwotICAgICAgICAgICAgICAgICAgICBBTkdMRV9UUlkoCi0gICAgICAg
ICAgICAgICAgICAgICAgICB0ZXh0dXJlVmstPmdldEJ1ZmZlclZpZXdBbmRSZWNvcmRVc2UoY29u
dGV4dFZrLCBudWxscHRyLCBmYWxzZSwgJnZpZXcpKTsKKyAgICAgICAgICAgICAgICAgICAgQU5H
TEVfVFJZKHRleHR1cmVWay0+Z2V0QnVmZmVyVmlld0FuZFJlY29yZFVzZShjb250ZXh0LCBudWxs
cHRyLCBmYWxzZSwgJnZpZXcpKTsKIAogICAgICAgICAgICAgICAgICAgICB3cml0ZUluZm9zW2Fy
cmF5RWxlbWVudF0uc1R5cGUgICAgICA9IFZLX1NUUlVDVFVSRV9UWVBFX1dSSVRFX0RFU0NSSVBU
T1JfU0VUOwogICAgICAgICAgICAgICAgICAgICB3cml0ZUluZm9zW2FycmF5RWxlbWVudF0ucE5l
eHQgICAgICA9IG51bGxwdHI7CkBAIC0xODM3LDcgKzE4ODgsNyBAQCBhbmdsZTo6UmVzdWx0IFBy
b2dyYW1FeGVjdXRhYmxlVms6OnVwZGF0ZVRleHR1cmVzRGVzY3JpcHRvclNldCgKICAgICAgICAg
ICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgIH0KIAotICAgICAgICAgICAgVmtEZXNjcmlw
dG9ySW1hZ2VJbmZvICppbWFnZUluZm9zID0gY29udGV4dFZrLT5hbGxvY0Rlc2NyaXB0b3JJbWFn
ZUluZm9zKGFycmF5U2l6ZSk7CisgICAgICAgICAgICBWa0Rlc2NyaXB0b3JJbWFnZUluZm8gKmlt
YWdlSW5mb3MgPSB1cGRhdGVCdWlsZGVyLT5hbGxvY0Rlc2NyaXB0b3JJbWFnZUluZm9zKGFycmF5
U2l6ZSk7CiAgICAgICAgICAgICBmb3IgKHVpbnQzMl90IGFycmF5RWxlbWVudCA9IDA7IGFycmF5
RWxlbWVudCA8IGFycmF5U2l6ZTsgKythcnJheUVsZW1lbnQpCiAgICAgICAgICAgICB7CiAgICAg
ICAgICAgICAgICAgR0x1aW50IHRleHR1cmVVbml0ICAgICAgICAgID0gc2FtcGxlckJpbmRpbmcu
Ym91bmRUZXh0dXJlVW5pdHNbYXJyYXlFbGVtZW50XTsKQEAgLTE4NTQsMTcgKzE5MDUsMTcgQEAg
YW5nbGU6OlJlc3VsdCBQcm9ncmFtRXhlY3V0YWJsZVZrOjp1cGRhdGVUZXh0dXJlc0Rlc2NyaXB0
b3JTZXQoCiAKICAgICAgICAgICAgICAgICBpZiAoZW11bGF0ZVNlYW1mdWxDdWJlTWFwU2FtcGxp
bmcpCiAgICAgICAgICAgICAgICAgewotICAgICAgICAgICAgICAgICAgICAvLyBJZiBlbXVsYXRp
bmcgc2VhbWZ1bCBjdWJlbWFwcGluZywgdXNlIHRoZSBmZXRjaCBpbWFnZSB2aWV3LiAgVGhpcyBp
cworICAgICAgICAgICAgICAgICAgICAvLyBJZiBlbXVsYXRpbmcgc2VhbWZ1bCBjdWJlIG1hcHBp
bmcsIHVzZSB0aGUgZmV0Y2ggaW1hZ2Ugdmlldy4gIFRoaXMgaXMKICAgICAgICAgICAgICAgICAg
ICAgLy8gYmFzaWNhbGx5IHRoZSBzYW1lIGltYWdlIHZpZXcgYXMgcmVhZCwgZXhjZXB0IGl0J3Mg
YSAyREFycmF5IHZpZXcgZm9yCiAgICAgICAgICAgICAgICAgICAgIC8vIGN1YmUgbWFwcy4KLSAg
ICAgICAgICAgICAgICAgICAgY29uc3Qgdms6OkltYWdlVmlldyAmaW1hZ2VWaWV3ID0gdGV4dHVy
ZVZrLT5nZXRGZXRjaEltYWdlVmlld0FuZFJlY29yZFVzZSgKLSAgICAgICAgICAgICAgICAgICAg
ICAgIGNvbnRleHRWaywgdW5pdC5zcmdiRGVjb2RlLCBzYW1wbGVyVW5pZm9ybS50ZXhlbEZldGNo
U3RhdGljVXNlKTsKKyAgICAgICAgICAgICAgICAgICAgY29uc3Qgdms6OkltYWdlVmlldyAmaW1h
Z2VWaWV3ID0gdGV4dHVyZVZrLT5nZXRGZXRjaEltYWdlVmlldygKKyAgICAgICAgICAgICAgICAg
ICAgICAgIGNvbnRleHQsIHVuaXQuc3JnYkRlY29kZSwgc2FtcGxlclVuaWZvcm0udGV4ZWxGZXRj
aFN0YXRpY1VzZSk7CiAgICAgICAgICAgICAgICAgICAgIGltYWdlSW5mb3NbYXJyYXlFbGVtZW50
XS5pbWFnZVZpZXcgPSBpbWFnZVZpZXcuZ2V0SGFuZGxlKCk7CiAgICAgICAgICAgICAgICAgfQog
ICAgICAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAg
ICAgIGNvbnN0IHZrOjpJbWFnZVZpZXcgJmltYWdlVmlldyA9IHRleHR1cmVWay0+Z2V0UmVhZElt
YWdlVmlld0FuZFJlY29yZFVzZSgKLSAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRleHRWaywg
dW5pdC5zcmdiRGVjb2RlLCBzYW1wbGVyVW5pZm9ybS50ZXhlbEZldGNoU3RhdGljVXNlKTsKKyAg
ICAgICAgICAgICAgICAgICAgY29uc3Qgdms6OkltYWdlVmlldyAmaW1hZ2VWaWV3ID0gdGV4dHVy
ZVZrLT5nZXRSZWFkSW1hZ2VWaWV3KAorICAgICAgICAgICAgICAgICAgICAgICAgY29udGV4dCwg
dW5pdC5zcmdiRGVjb2RlLCBzYW1wbGVyVW5pZm9ybS50ZXhlbEZldGNoU3RhdGljVXNlKTsKICAg
ICAgICAgICAgICAgICAgICAgaW1hZ2VJbmZvc1thcnJheUVsZW1lbnRdLmltYWdlVmlldyA9IGlt
YWdlVmlldy5nZXRIYW5kbGUoKTsKICAgICAgICAgICAgICAgICB9CiAKQEAgLTE4OTEsNyArMTk0
Miw4IEBAIGFuZ2xlOjpSZXN1bHQgUHJvZ3JhbUV4ZWN1dGFibGVWazo6dXBkYXRlVGV4dHVyZXNE
ZXNjcmlwdG9yU2V0KAogfQogCiB0ZW1wbGF0ZSA8dHlwZW5hbWUgQ29tbWFuZEJ1ZmZlclQ+Ci1h
bmdsZTo6UmVzdWx0IFByb2dyYW1FeGVjdXRhYmxlVms6OnVwZGF0ZURlc2NyaXB0b3JTZXRzKENv
bnRleHRWayAqY29udGV4dFZrLAorYW5nbGU6OlJlc3VsdCBQcm9ncmFtRXhlY3V0YWJsZVZrOjp1
cGRhdGVEZXNjcmlwdG9yU2V0cyh2azo6Q29udGV4dCAqY29udGV4dCwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdms6OlJlc291cmNlVXNl
TGlzdCAqcmVzb3VyY2VVc2VMaXN0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBDb21tYW5kQnVmZmVyVCAqY29tbWFuZEJ1ZmZlciwKICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUGlw
ZWxpbmVUeXBlIHBpcGVsaW5lVHlwZSkKIHsKQEAgLTE5MjgsNyArMTk4MCw3IEBAIGFuZ2xlOjpS
ZXN1bHQgUHJvZ3JhbUV4ZWN1dGFibGVWazo6dXBkYXRlRGVzY3JpcHRvclNldHMoQ29udGV4dFZr
ICpjb250ZXh0VmssCiAgICAgICAgIFZrRGVzY3JpcHRvclNldCBkZXNjU2V0ID0gbURlc2NyaXB0
b3JTZXRzW2Rlc2NyaXB0b3JTZXRJbmRleF07CiAgICAgICAgIGlmIChkZXNjU2V0ID09IFZLX05V
TExfSEFORExFKQogICAgICAgICB7Ci0gICAgICAgICAgICBpZiAoIWNvbnRleHRWay0+Z2V0UmVu
ZGVyZXIoKS0+Z2V0RmVhdHVyZXMoKS5iaW5kRW1wdHlGb3JVbnVzZWREZXNjcmlwdG9yU2V0cy5l
bmFibGVkKQorICAgICAgICAgICAgaWYgKCFjb250ZXh0LT5nZXRSZW5kZXJlcigpLT5nZXRGZWF0
dXJlcygpLmJpbmRFbXB0eUZvclVudXNlZERlc2NyaXB0b3JTZXRzLmVuYWJsZWQpCiAgICAgICAg
ICAgICB7CiAgICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICB9CkBAIC0xOTQx
LDcgKzE5OTMsOCBAQCBhbmdsZTo6UmVzdWx0IFByb2dyYW1FeGVjdXRhYmxlVms6OnVwZGF0ZURl
c2NyaXB0b3JTZXRzKENvbnRleHRWayAqY29udGV4dFZrLAogICAgICAgICAgICAgICAgICAgICBt
RGVzY3JpcHRvclNldExheW91dHNbZGVzY3JpcHRvclNldEluZGV4XS5nZXQoKTsKIAogICAgICAg
ICAgICAgICAgIEFOR0xFX1RSWShtRHluYW1pY0Rlc2NyaXB0b3JQb29sc1tkZXNjcmlwdG9yU2V0
SW5kZXhdLmFsbG9jYXRlRGVzY3JpcHRvclNldHMoCi0gICAgICAgICAgICAgICAgICAgIGNvbnRl
eHRWaywgZGVzY3JpcHRvclNldExheW91dCwgMSwgJm1EZXNjcmlwdG9yUG9vbEJpbmRpbmdzW2Rl
c2NyaXB0b3JTZXRJbmRleF0sCisgICAgICAgICAgICAgICAgICAgIGNvbnRleHQsIHJlc291cmNl
VXNlTGlzdCwgZGVzY3JpcHRvclNldExheW91dCwgMSwKKyAgICAgICAgICAgICAgICAgICAgJm1E
ZXNjcmlwdG9yUG9vbEJpbmRpbmdzW2Rlc2NyaXB0b3JTZXRJbmRleF0sCiAgICAgICAgICAgICAg
ICAgICAgICZtRW1wdHlEZXNjcmlwdG9yU2V0c1tkZXNjcmlwdG9yU2V0SW5kZXhdKSk7CiAKICAg
ICAgICAgICAgICAgICArK21QZXJmQ291bnRlcnMuZGVzY3JpcHRvclNldEFsbG9jYXRpb25zW2Rl
c2NyaXB0b3JTZXRJbmRleF07CkBAIC0xOTc3LDExICsyMDMwLDEzIEBAIGFuZ2xlOjpSZXN1bHQg
UHJvZ3JhbUV4ZWN1dGFibGVWazo6dXBkYXRlRGVzY3JpcHRvclNldHMoQ29udGV4dFZrICpjb250
ZXh0VmssCiB9CiAKIHRlbXBsYXRlIGFuZ2xlOjpSZXN1bHQgUHJvZ3JhbUV4ZWN1dGFibGVWazo6
dXBkYXRlRGVzY3JpcHRvclNldHM8dms6OnByaXY6OlNlY29uZGFyeUNvbW1hbmRCdWZmZXI+KAot
ICAgIENvbnRleHRWayAqY29udGV4dFZrLAorICAgIHZrOjpDb250ZXh0ICpjb250ZXh0LAorICAg
IHZrOjpSZXNvdXJjZVVzZUxpc3QgKnJlc291cmNlVXNlTGlzdCwKICAgICB2azo6cHJpdjo6U2Vj
b25kYXJ5Q29tbWFuZEJ1ZmZlciAqY29tbWFuZEJ1ZmZlciwKICAgICBQaXBlbGluZVR5cGUgcGlw
ZWxpbmVUeXBlKTsKIHRlbXBsYXRlIGFuZ2xlOjpSZXN1bHQgUHJvZ3JhbUV4ZWN1dGFibGVWazo6
dXBkYXRlRGVzY3JpcHRvclNldHM8dms6OlZ1bGthblNlY29uZGFyeUNvbW1hbmRCdWZmZXI+KAot
ICAgIENvbnRleHRWayAqY29udGV4dFZrLAorICAgIHZrOjpDb250ZXh0ICpjb250ZXh0LAorICAg
IHZrOjpSZXNvdXJjZVVzZUxpc3QgKnJlc291cmNlVXNlTGlzdCwKICAgICB2azo6VnVsa2FuU2Vj
b25kYXJ5Q29tbWFuZEJ1ZmZlciAqY29tbWFuZEJ1ZmZlciwKICAgICBQaXBlbGluZVR5cGUgcGlw
ZWxpbmVUeXBlKTsKIApAQCAtMjAzMCwxNCArMjA4NSwyMiBAQCBQcm9ncmFtRXhlY3V0YWJsZVBl
cmZDb3VudGVycyBQcm9ncmFtRXhlY3V0YWJsZVZrOjpnZXRBbmRSZXNldE9iamVjdFBlcmZDb3Vu
dGVycwogICAgIG1TaGFkZXJCdWZmZXJEZXNjcmlwdG9yc0NhY2hlLmFjY3VtdWxhdGVDYWNoZVN0
YXRzKFZ1bGthbkNhY2hlVHlwZTo6U2hhZGVyQnVmZmVyc0Rlc2NyaXB0b3JzLAogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMpOwogCisg
ICAgbVBlcmZDb3VudGVycy5kZXNjcmlwdG9yU2V0Q2FjaGVLZXlTaXplc0J5dGVzW0Rlc2NyaXB0
b3JTZXRJbmRleDo6VW5pZm9ybXNBbmRYZmJdID0KKyAgICAgICAgc3RhdGljX2Nhc3Q8dWludDMy
X3Q+KG1Vbmlmb3Jtc0FuZFhmYkRlc2NyaXB0b3JzQ2FjaGUuZ2V0VG90YWxDYWNoZUtleVNpemVC
eXRlcygpKTsKKyAgICBtUGVyZkNvdW50ZXJzLmRlc2NyaXB0b3JTZXRDYWNoZUtleVNpemVzQnl0
ZXNbRGVzY3JpcHRvclNldEluZGV4OjpUZXh0dXJlXSA9CisgICAgICAgIHN0YXRpY19jYXN0PHVp
bnQzMl90PihtVGV4dHVyZURlc2NyaXB0b3JzQ2FjaGUuZ2V0VG90YWxDYWNoZUtleVNpemVCeXRl
cygpKTsKKyAgICBtUGVyZkNvdW50ZXJzLmRlc2NyaXB0b3JTZXRDYWNoZUtleVNpemVzQnl0ZXNb
RGVzY3JpcHRvclNldEluZGV4OjpTaGFkZXJSZXNvdXJjZV0gPQorICAgICAgICBzdGF0aWNfY2Fz
dDx1aW50MzJfdD4obVNoYWRlckJ1ZmZlckRlc2NyaXB0b3JzQ2FjaGUuZ2V0VG90YWxDYWNoZUtl
eVNpemVCeXRlcygpKTsKKwogICAgIG1DdW11bGF0aXZlUGVyZkNvdW50ZXJzLmRlc2NyaXB0b3JT
ZXRBbGxvY2F0aW9ucyArPSBtUGVyZkNvdW50ZXJzLmRlc2NyaXB0b3JTZXRBbGxvY2F0aW9uczsK
ICAgICBtQ3VtdWxhdGl2ZVBlcmZDb3VudGVycy5kZXNjcmlwdG9yU2V0Q2FjaGVIaXRzICs9IG1Q
ZXJmQ291bnRlcnMuZGVzY3JpcHRvclNldENhY2hlSGl0czsKICAgICBtQ3VtdWxhdGl2ZVBlcmZD
b3VudGVycy5kZXNjcmlwdG9yU2V0Q2FjaGVNaXNzZXMgKz0gbVBlcmZDb3VudGVycy5kZXNjcmlw
dG9yU2V0Q2FjaGVNaXNzZXM7CiAKLSAgICBQcm9ncmFtRXhlY3V0YWJsZVBlcmZDb3VudGVycyBj
b3VudGVycyA9IG1QZXJmQ291bnRlcnM7Ci0gICAgbVBlcmZDb3VudGVycy5kZXNjcmlwdG9yU2V0
QWxsb2NhdGlvbnMgPSB7fTsKLSAgICBtUGVyZkNvdW50ZXJzLmRlc2NyaXB0b3JTZXRDYWNoZUhp
dHMgICA9IHt9OwotICAgIG1QZXJmQ291bnRlcnMuZGVzY3JpcHRvclNldENhY2hlTWlzc2VzID0g
e307CisgICAgUHJvZ3JhbUV4ZWN1dGFibGVQZXJmQ291bnRlcnMgY291bnRlcnMgICAgICAgID0g
bVBlcmZDb3VudGVyczsKKyAgICBtUGVyZkNvdW50ZXJzLmRlc2NyaXB0b3JTZXRBbGxvY2F0aW9u
cyAgICAgICAgPSB7fTsKKyAgICBtUGVyZkNvdW50ZXJzLmRlc2NyaXB0b3JTZXRDYWNoZUhpdHMg
ICAgICAgICAgPSB7fTsKKyAgICBtUGVyZkNvdW50ZXJzLmRlc2NyaXB0b3JTZXRDYWNoZU1pc3Nl
cyAgICAgICAgPSB7fTsKKyAgICBtUGVyZkNvdW50ZXJzLmRlc2NyaXB0b3JTZXRDYWNoZUtleVNp
emVzQnl0ZXMgPSB7fTsKICAgICByZXR1cm4gY291bnRlcnM7CiB9CiAKQEAgLTIwNjUsOSArMjEy
OCwxNCBAQCB2b2lkIFByb2dyYW1FeGVjdXRhYmxlVms6OnNldEFsbERlZmF1bHRVbmlmb3Jtc0Rp
cnR5KGNvbnN0IGdsOjpQcm9ncmFtRXhlY3V0YWJsZQogICAgIH0KIH0KIAotYW5nbGU6OlJlc3Vs
dCBQcm9ncmFtRXhlY3V0YWJsZVZrOjp1cGRhdGVVbmlmb3JtcyhDb250ZXh0VmsgKmNvbnRleHRW
aywKK2FuZ2xlOjpSZXN1bHQgUHJvZ3JhbUV4ZWN1dGFibGVWazo6dXBkYXRlVW5pZm9ybXModms6
OkNvbnRleHQgKmNvbnRleHQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFVwZGF0ZURlc2NyaXB0b3JTZXRzQnVpbGRlciAqdXBkYXRlQnVpbGRlciwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdms6OlJl
c291cmNlVXNlTGlzdCAqcmVzb3VyY2VVc2VMaXN0LAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICB2azo6QnVmZmVySGVscGVyICplbXB0eUJ1ZmZlciwK
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qg
Z2w6OlByb2dyYW1FeGVjdXRhYmxlICZnbEV4ZWN1dGFibGUsCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZrOjpEeW5hbWljQnVmZmVyICpkZWZhdWx0
VW5pZm9ybVN0b3JhZ2UpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHZrOjpEeW5hbWljQnVmZmVyICpkZWZhdWx0VW5pZm9ybVN0b3JhZ2UsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wgaXNUcmFu
c2Zvcm1GZWVkYmFja0FjdGl2ZVVucGF1c2VkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBUcmFuc2Zvcm1GZWVkYmFja1ZrICp0cmFuc2Zvcm1GZWVk
YmFja1ZrKQogewogICAgIEFTU0VSVChoYXNEaXJ0eVVuaWZvcm1zKCkpOwogCkBAIC0yMDgxLDcg
KzIxNDksNyBAQCBhbmdsZTo6UmVzdWx0IFByb2dyYW1FeGVjdXRhYmxlVms6OnVwZGF0ZVVuaWZv
cm1zKENvbnRleHRWayAqY29udGV4dFZrLAogICAgIC8vIGJ1ZmZlciBmb3IgdW5pZm9ybSBkYXRh
IGhhdmUgc3dpdGNoZWQsIGJlY2F1c2UgYWxsIHNoYWRlciBzdGFnZXMgYXJlIHVzaW5nIHRoZSBz
YW1lIGJ1ZmZlciwKICAgICAvLyB3ZSB0aGVuIG11c3QgdXBkYXRlIHVuaWZvcm0gZGF0YSBmb3Ig
YWxsIHNoYWRlciBzdGFnZXMgdG8ga2VlcCBhbGwgc2hhZGVyIHN0YWdlcycgdW5pZm9ybQogICAg
IC8vIGRhdGEgaW4gdGhlIHNhbWUgYnVmZmVyLgotICAgIHJlcXVpcmVkU3BhY2UgPSBjYWxjVW5p
Zm9ybVVwZGF0ZVJlcXVpcmVkU3BhY2UoY29udGV4dFZrLCBnbEV4ZWN1dGFibGUsICZvZmZzZXRz
KTsKKyAgICByZXF1aXJlZFNwYWNlID0gY2FsY1VuaWZvcm1VcGRhdGVSZXF1aXJlZFNwYWNlKGNv
bnRleHQsIGdsRXhlY3V0YWJsZSwgJm9mZnNldHMpOwogICAgIEFTU0VSVChyZXF1aXJlZFNwYWNl
ID4gMCk7CiAKICAgICAvLyBBbGxvY2F0ZSBzcGFjZSBmcm9tIGR5bmFtaWNCdWZmZXIuIEFsd2F5
cyB0cnkgdG8gYWxsb2NhdGUgZnJvbSB0aGUgY3VycmVudCBidWZmZXIgZmlyc3QuCkBAIC0yMDkw
LDE0ICsyMTU4LDE0IEBAIGFuZ2xlOjpSZXN1bHQgUHJvZ3JhbUV4ZWN1dGFibGVWazo6dXBkYXRl
VW5pZm9ybXMoQ29udGV4dFZrICpjb250ZXh0VmssCiAgICAgewogICAgICAgICBzZXRBbGxEZWZh
dWx0VW5pZm9ybXNEaXJ0eShnbEV4ZWN1dGFibGUpOwogCi0gICAgICAgIHJlcXVpcmVkU3BhY2Ug
PSBjYWxjVW5pZm9ybVVwZGF0ZVJlcXVpcmVkU3BhY2UoY29udGV4dFZrLCBnbEV4ZWN1dGFibGUs
ICZvZmZzZXRzKTsKLSAgICAgICAgQU5HTEVfVFJZKGRlZmF1bHRVbmlmb3JtU3RvcmFnZS0+YWxs
b2NhdGUoY29udGV4dFZrLCByZXF1aXJlZFNwYWNlLCAmZGVmYXVsdFVuaWZvcm1CdWZmZXIsCisg
ICAgICAgIHJlcXVpcmVkU3BhY2UgPSBjYWxjVW5pZm9ybVVwZGF0ZVJlcXVpcmVkU3BhY2UoY29u
dGV4dCwgZ2xFeGVjdXRhYmxlLCAmb2Zmc2V0cyk7CisgICAgICAgIEFOR0xFX1RSWShkZWZhdWx0
VW5pZm9ybVN0b3JhZ2UtPmFsbG9jYXRlKGNvbnRleHQsIHJlcXVpcmVkU3BhY2UsICZkZWZhdWx0
VW5pZm9ybUJ1ZmZlciwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgJmFueU5ld0J1ZmZlckFsbG9jYXRlZCkpOwogICAgIH0KIAogICAgIHVpbnQ4X3Qg
KmJ1ZmZlckRhdGEgICAgICAgPSBkZWZhdWx0VW5pZm9ybUJ1ZmZlci0+Z2V0TWFwcGVkTWVtb3J5
KCk7CiAgICAgVmtEZXZpY2VTaXplIGJ1ZmZlck9mZnNldCA9IGRlZmF1bHRVbmlmb3JtQnVmZmVy
LT5nZXRPZmZzZXQoKTsKLSAgICBmb3IgKGNvbnN0IGdsOjpTaGFkZXJUeXBlIHNoYWRlclR5cGUg
OiBnbEV4ZWN1dGFibGUuZ2V0TGlua2VkU2hhZGVyU3RhZ2VzKCkpCisgICAgZm9yIChnbDo6U2hh
ZGVyVHlwZSBzaGFkZXJUeXBlIDogZ2xFeGVjdXRhYmxlLmdldExpbmtlZFNoYWRlclN0YWdlcygp
KQogICAgIHsKICAgICAgICAgaWYgKG1EZWZhdWx0VW5pZm9ybUJsb2Nrc0RpcnR5W3NoYWRlclR5
cGVdKQogICAgICAgICB7CkBAIC0yMTA5LDcgKzIxNzcsNyBAQCBhbmdsZTo6UmVzdWx0IFByb2dy
YW1FeGVjdXRhYmxlVms6OnVwZGF0ZVVuaWZvcm1zKENvbnRleHRWayAqY29udGV4dFZrLAogICAg
ICAgICB9CiAgICAgICAgICsrb2Zmc2V0SW5kZXg7CiAgICAgfQotICAgIEFOR0xFX1RSWShkZWZh
dWx0VW5pZm9ybUJ1ZmZlci0+Zmx1c2goY29udGV4dFZrLT5nZXRSZW5kZXJlcigpKSk7CisgICAg
QU5HTEVfVFJZKGRlZmF1bHRVbmlmb3JtQnVmZmVyLT5mbHVzaChjb250ZXh0LT5nZXRSZW5kZXJl
cigpKSk7CiAKICAgICAvLyBCZWNhdXNlIHRoZSB1bmlmb3JtIGJ1ZmZlcnMgYXJlIHBlciBjb250
ZXh0LCB3ZSBjYW4ndCByZWx5IG9uIGR5bmFtaWNCdWZmZXIncyBhbGxvY2F0ZQogICAgIC8vIGZ1
bmN0aW9uIHRvIHRlbGwgdXMgaWYgeW91IGhhdmUgZ290IGEgbmV3IGJ1ZmZlciBvciBub3QuIE90
aGVyIHByb2dyYW0ncyB1c2Ugb2YgdGhlIGJ1ZmZlcgpAQCAtMjEyNyw4ICsyMTk1LDYgQEAgYW5n
bGU6OlJlc3VsdCBQcm9ncmFtRXhlY3V0YWJsZVZrOjp1cGRhdGVVbmlmb3JtcyhDb250ZXh0Vmsg
KmNvbnRleHRWaywKIAogICAgICAgICBpZiAoZ2xFeGVjdXRhYmxlLmhhc1RyYW5zZm9ybUZlZWRi
YWNrT3V0cHV0KCkpCiAgICAgICAgIHsKLSAgICAgICAgICAgIFRyYW5zZm9ybUZlZWRiYWNrVmsg
KnRyYW5zZm9ybUZlZWRiYWNrVmsgPQotICAgICAgICAgICAgICAgIHZrOjpHZXRJbXBsKGNvbnRl
eHRWay0+Z2V0U3RhdGUoKS5nZXRDdXJyZW50VHJhbnNmb3JtRmVlZGJhY2soKSk7CiAgICAgICAg
ICAgICB1bmlmb3Jtc0FuZFhmYkJ1ZmZlckRlc2MgPSAmdHJhbnNmb3JtRmVlZGJhY2tWay0+Z2V0
VHJhbnNmb3JtRmVlZGJhY2tEZXNjKCk7CiAgICAgICAgICAgICB1bmlmb3Jtc0FuZFhmYkJ1ZmZl
ckRlc2MtPnVwZGF0ZURlZmF1bHRVbmlmb3JtQnVmZmVyKAogICAgICAgICAgICAgICAgIGRlZmF1
bHRVbmlmb3JtQnVmZmVyLT5nZXRCdWZmZXJTZXJpYWwoKSk7CkBAIC0yMTQwLDE4ICsyMjA2LDIw
IEBAIGFuZ2xlOjpSZXN1bHQgUHJvZ3JhbUV4ZWN1dGFibGVWazo6dXBkYXRlVW5pZm9ybXMoQ29u
dGV4dFZrICpjb250ZXh0VmssCiAgICAgICAgIH0KIAogICAgICAgICBib29sIG5ld0Rlc2NyaXB0
b3JTZXRBbGxvY2F0ZWQ7Ci0gICAgICAgIEFOR0xFX1RSWShhbGxvY1VuaWZvcm1BbmRYZmJEZXNj
cmlwdG9yU2V0KGNvbnRleHRWaywgZGVmYXVsdFVuaWZvcm1CdWZmZXIsCisgICAgICAgIEFOR0xF
X1RSWShhbGxvY1VuaWZvcm1BbmRYZmJEZXNjcmlwdG9yU2V0KGNvbnRleHQsIHJlc291cmNlVXNl
TGlzdCwgZGVmYXVsdFVuaWZvcm1CdWZmZXIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICp1bmlmb3Jtc0FuZFhmYkJ1ZmZlckRlc2MsCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZuZXdEZXNjcmlwdG9y
U2V0QWxsb2NhdGVkKSk7CiAKICAgICAgICAgaWYgKG5ld0Rlc2NyaXB0b3JTZXRBbGxvY2F0ZWQp
CiAgICAgICAgIHsKLSAgICAgICAgICAgIGZvciAoY29uc3QgZ2w6OlNoYWRlclR5cGUgc2hhZGVy
VHlwZSA6IGdsRXhlY3V0YWJsZS5nZXRMaW5rZWRTaGFkZXJTdGFnZXMoKSkKKyAgICAgICAgICAg
IGZvciAoZ2w6OlNoYWRlclR5cGUgc2hhZGVyVHlwZSA6IGdsRXhlY3V0YWJsZS5nZXRMaW5rZWRT
aGFkZXJTdGFnZXMoKSkKICAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICB1cGRhdGVEZWZh
dWx0VW5pZm9ybXNEZXNjcmlwdG9yU2V0KGNvbnRleHRWaywgc2hhZGVyVHlwZSwKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICptRGVmYXVsdFVuaWZv
cm1CbG9ja3Nbc2hhZGVyVHlwZV0sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBkZWZhdWx0VW5pZm9ybUJ1ZmZlcik7Ci0gICAgICAgICAgICAgICAg
dXBkYXRlVHJhbnNmb3JtRmVlZGJhY2tEZXNjcmlwdG9yU2V0SW1wbChjb250ZXh0VmssIGdsRXhl
Y3V0YWJsZSk7CisgICAgICAgICAgICAgICAgdXBkYXRlRGVmYXVsdFVuaWZvcm1zRGVzY3JpcHRv
clNldCgKKyAgICAgICAgICAgICAgICAgICAgY29udGV4dCwgdXBkYXRlQnVpbGRlciwgZW1wdHlC
dWZmZXIsIHJlc291cmNlVXNlTGlzdCwgc2hhZGVyVHlwZSwKKyAgICAgICAgICAgICAgICAgICAg
Km1EZWZhdWx0VW5pZm9ybUJsb2Nrc1tzaGFkZXJUeXBlXSwgZGVmYXVsdFVuaWZvcm1CdWZmZXIp
OworICAgICAgICAgICAgICAgIHVwZGF0ZVRyYW5zZm9ybUZlZWRiYWNrRGVzY3JpcHRvclNldElt
cGwoCisgICAgICAgICAgICAgICAgICAgIGNvbnRleHQsIHVwZGF0ZUJ1aWxkZXIsIGVtcHR5QnVm
ZmVyLCBnbEV4ZWN1dGFibGUsCisgICAgICAgICAgICAgICAgICAgIGlzVHJhbnNmb3JtRmVlZGJh
Y2tBY3RpdmVVbnBhdXNlZCwgdHJhbnNmb3JtRmVlZGJhY2tWayk7CiAgICAgICAgICAgICB9CiAg
ICAgICAgIH0KICAgICB9CkBAIC0yMTYwLDE3ICsyMjI4LDE3IEBAIGFuZ2xlOjpSZXN1bHQgUHJv
Z3JhbUV4ZWN1dGFibGVWazo6dXBkYXRlVW5pZm9ybXMoQ29udGV4dFZrICpjb250ZXh0VmssCiB9
CiAKIHNpemVfdCBQcm9ncmFtRXhlY3V0YWJsZVZrOjpjYWxjVW5pZm9ybVVwZGF0ZVJlcXVpcmVk
U3BhY2UoCi0gICAgQ29udGV4dFZrICpjb250ZXh0VmssCisgICAgdms6OkNvbnRleHQgKmNvbnRl
eHQsCiAgICAgY29uc3QgZ2w6OlByb2dyYW1FeGVjdXRhYmxlICZnbEV4ZWN1dGFibGUsCiAgICAg
Z2w6OlNoYWRlck1hcDxWa0RldmljZVNpemU+ICp1bmlmb3JtT2Zmc2V0cykgY29uc3QKIHsKICAg
ICBzaXplX3QgcmVxdWlyZWRTcGFjZSA9IDA7Ci0gICAgZm9yIChjb25zdCBnbDo6U2hhZGVyVHlw
ZSBzaGFkZXJUeXBlIDogZ2xFeGVjdXRhYmxlLmdldExpbmtlZFNoYWRlclN0YWdlcygpKQorICAg
IGZvciAoZ2w6OlNoYWRlclR5cGUgc2hhZGVyVHlwZSA6IGdsRXhlY3V0YWJsZS5nZXRMaW5rZWRT
aGFkZXJTdGFnZXMoKSkKICAgICB7CiAgICAgICAgIGlmIChtRGVmYXVsdFVuaWZvcm1CbG9ja3NE
aXJ0eVtzaGFkZXJUeXBlXSkKICAgICAgICAgewogICAgICAgICAgICAgKCp1bmlmb3JtT2Zmc2V0
cylbc2hhZGVyVHlwZV0gPSByZXF1aXJlZFNwYWNlOwotICAgICAgICAgICAgcmVxdWlyZWRTcGFj
ZSArPSBnZXREZWZhdWx0VW5pZm9ybUFsaWduZWRTaXplKGNvbnRleHRWaywgc2hhZGVyVHlwZSk7
CisgICAgICAgICAgICByZXF1aXJlZFNwYWNlICs9IGdldERlZmF1bHRVbmlmb3JtQWxpZ25lZFNp
emUoY29udGV4dCwgc2hhZGVyVHlwZSk7CiAgICAgICAgIH0KICAgICB9CiAgICAgcmV0dXJuIHJl
cXVpcmVkU3BhY2U7CkBAIC0yMTkxLDcgKzIyNTksNyBAQCBhbmdsZTo6UmVzdWx0IFByb2dyYW1F
eGVjdXRhYmxlVms6OnJlc2l6ZVVuaWZvcm1CbG9ja01lbW9yeSgKICAgICBjb25zdCBnbDo6UHJv
Z3JhbUV4ZWN1dGFibGUgJmdsRXhlY3V0YWJsZSwKICAgICBjb25zdCBnbDo6U2hhZGVyTWFwPHNp
emVfdD4gJnJlcXVpcmVkQnVmZmVyU2l6ZSkKIHsKLSAgICBmb3IgKGNvbnN0IGdsOjpTaGFkZXJU
eXBlIHNoYWRlclR5cGUgOiBnbEV4ZWN1dGFibGUuZ2V0TGlua2VkU2hhZGVyU3RhZ2VzKCkpCisg
ICAgZm9yIChnbDo6U2hhZGVyVHlwZSBzaGFkZXJUeXBlIDogZ2xFeGVjdXRhYmxlLmdldExpbmtl
ZFNoYWRlclN0YWdlcygpKQogICAgIHsKICAgICAgICAgaWYgKHJlcXVpcmVkQnVmZmVyU2l6ZVtz
aGFkZXJUeXBlXSA+IDApCiAgICAgICAgIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vUHJvZ3JhbUV4ZWN1dGFibGVWay5o
IGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9Q
cm9ncmFtRXhlY3V0YWJsZVZrLmgKaW5kZXggNTViZTA0ODhmYzY2ZmZhZTM3Yzc4NzRlMjE4MWIz
ZjUyNGQ1YTQ3NC4uOTkxMDg2MjJiOWMyNWVmZGI3ZGFiNzJmNzAxZTgzZjlmYzkxZGI3OCAxMDA2
NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1
bGthbi9Qcm9ncmFtRXhlY3V0YWJsZVZrLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUv
c3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9Qcm9ncmFtRXhlY3V0YWJsZVZrLmgKQEAgLTY5
LDcgKzY5LDcgQEAgY2xhc3MgUHJvZ3JhbUluZm8gZmluYWwgOiBhbmdsZTo6Tm9uQ29weWFibGUK
ICAgICB+UHJvZ3JhbUluZm8oKTsKIAogICAgIGFuZ2xlOjpSZXN1bHQgaW5pdFByb2dyYW0oQ29u
dGV4dFZrICpjb250ZXh0VmssCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBn
bDo6U2hhZGVyVHlwZSBzaGFkZXJUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Z2w6OlNoYWRlclR5cGUgc2hhZGVyVHlwZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGJvb2wgaXNMYXN0UHJlRnJhZ21lbnRTdGFnZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGJvb2wgaXNUcmFuc2Zvcm1GZWVkYmFja1Byb2dyYW0sCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBjb25zdCBTaGFkZXJJbmZvICZzaGFkZXJJbmZvLApAQCAtNzcsNyArNzcsNyBA
QCBjbGFzcyBQcm9ncmFtSW5mbyBmaW5hbCA6IGFuZ2xlOjpOb25Db3B5YWJsZQogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgY29uc3QgU2hhZGVySW50ZXJmYWNlVmFyaWFibGVJbmZvTWFw
ICZ2YXJpYWJsZUluZm9NYXApOwogICAgIHZvaWQgcmVsZWFzZShDb250ZXh0VmsgKmNvbnRleHRW
ayk7CiAKLSAgICBBTkdMRV9JTkxJTkUgYm9vbCB2YWxpZChjb25zdCBnbDo6U2hhZGVyVHlwZSBz
aGFkZXJUeXBlKSBjb25zdAorICAgIEFOR0xFX0lOTElORSBib29sIHZhbGlkKGdsOjpTaGFkZXJU
eXBlIHNoYWRlclR5cGUpIGNvbnN0CiAgICAgewogICAgICAgICByZXR1cm4gbVByb2dyYW1IZWxw
ZXIudmFsaWQoc2hhZGVyVHlwZSk7CiAgICAgfQpAQCAtMTEzLDYgKzExMyw3IEBAIHN0cnVjdCBQ
cm9ncmFtRXhlY3V0YWJsZVBlcmZDb3VudGVycwogICAgIERlc2NyaXB0b3JTZXRDb3VudExpc3Qg
ZGVzY3JpcHRvclNldENhY2hlSGl0czsKICAgICBEZXNjcmlwdG9yU2V0Q291bnRMaXN0IGRlc2Ny
aXB0b3JTZXRDYWNoZU1pc3NlczsKICAgICBEZXNjcmlwdG9yU2V0Q291bnRMaXN0IGRlc2NyaXB0
b3JTZXRDYWNoZVNpemVzOworICAgIERlc2NyaXB0b3JTZXRDb3VudExpc3QgZGVzY3JpcHRvclNl
dENhY2hlS2V5U2l6ZXNCeXRlczsKIH07CiAKIHVzaW5nIERlZmF1bHRVbmlmb3JtQmxvY2tNYXAg
PSBnbDo6U2hhZGVyTWFwPHN0ZDo6c2hhcmVkX3B0cjxEZWZhdWx0VW5pZm9ybUJsb2NrPj47CkBA
IC0xNDcsNiArMTQ4LDcgQEAgY2xhc3MgUHJvZ3JhbUV4ZWN1dGFibGVWawogICAgIGFuZ2xlOjpS
ZXN1bHQgZ2V0R3JhcGhpY3NQaXBlbGluZShDb250ZXh0VmsgKmNvbnRleHRWaywKICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2w6OlByaW1pdGl2ZU1vZGUgbW9kZSwKICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgdms6OkdyYXBoaWNzUGlw
ZWxpbmVEZXNjICZkZXNjLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBj
b25zdCBnbDo6UHJvZ3JhbUV4ZWN1dGFibGUgJmdsRXhlY3V0YWJsZSwKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgdms6OkdyYXBoaWNzUGlwZWxpbmVEZXNjICoq
ZGVzY1B0ck91dCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdms6OlBp
cGVsaW5lSGVscGVyICoqcGlwZWxpbmVPdXQpOwogCkBAIC0xNTcsMjMgKzE1OSw0MSBAQCBjbGFz
cyBQcm9ncmFtRXhlY3V0YWJsZVZrCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBjb25zdCBnbDo6UHJvZ3JhbUV4ZWN1dGFibGUgJmdsRXhlY3V0YWJsZSwKICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdsOjpBY3RpdmVUZXh0dXJlQXJyYXk8dms6
OlRleHR1cmVVbml0PiAqYWN0aXZlVGV4dHVyZXMpOwogCi0gICAgYW5nbGU6OlJlc3VsdCB1cGRh
dGVUZXh0dXJlc0Rlc2NyaXB0b3JTZXQoQ29udGV4dFZrICpjb250ZXh0VmssCi0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgdms6OkRlc2NyaXB0b3JT
ZXREZXNjICZ0ZXh0dXJlc0Rlc2MpOworICAgIGFuZ2xlOjpSZXN1bHQgdXBkYXRlVGV4dHVyZXNE
ZXNjcmlwdG9yU2V0KAorICAgICAgICB2azo6Q29udGV4dCAqY29udGV4dCwKKyAgICAgICAgVXBk
YXRlRGVzY3JpcHRvclNldHNCdWlsZGVyICp1cGRhdGVCdWlsZGVyLAorICAgICAgICB2azo6UmVz
b3VyY2VVc2VMaXN0ICpyZXNvdXJjZVVzZUxpc3QsCisgICAgICAgIGNvbnN0IGdsOjpQcm9ncmFt
RXhlY3V0YWJsZSAmZXhlY3V0YWJsZSwKKyAgICAgICAgY29uc3QgZ2w6OkFjdGl2ZVRleHR1cmVB
cnJheTx2azo6VGV4dHVyZVVuaXQ+ICZhY3RpdmVUZXh0dXJlcywKKyAgICAgICAgY29uc3Qgdms6
OkRlc2NyaXB0b3JTZXREZXNjICZ0ZXh0dXJlc0Rlc2MsCisgICAgICAgIGJvb2wgZW11bGF0ZVNl
YW1mdWxDdWJlTWFwU2FtcGxpbmcpOwogICAgIGFuZ2xlOjpSZXN1bHQgdXBkYXRlU2hhZGVyUmVz
b3VyY2VzRGVzY3JpcHRvclNldCgKICAgICAgICAgQ29udGV4dFZrICpjb250ZXh0VmssCisgICAg
ICAgIGNvbnN0IGdsOjpQcm9ncmFtRXhlY3V0YWJsZSAqZXhlY3V0YWJsZSwKKyAgICAgICAgVXBk
YXRlRGVzY3JpcHRvclNldHNCdWlsZGVyICp1cGRhdGVCdWlsZGVyLAorICAgICAgICB2azo6QnVm
ZmVySGVscGVyICplbXB0eUJ1ZmZlciwKKyAgICAgICAgdms6OlJlc291cmNlVXNlTGlzdCAqcmVz
b3VyY2VVc2VMaXN0LAogICAgICAgICBGcmFtZWJ1ZmZlclZrICpmcmFtZWJ1ZmZlclZrLAogICAg
ICAgICBjb25zdCB2azo6RGVzY3JpcHRvclNldERlc2MgJnNoYWRlckJ1ZmZlcnNEZXNjKTsKLSAg
ICBhbmdsZTo6UmVzdWx0IHVwZGF0ZVRyYW5zZm9ybUZlZWRiYWNrRGVzY3JpcHRvclNldChDb250
ZXh0VmsgKmNvbnRleHRWaywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBjb25zdCBnbDo6UHJvZ3JhbUV4ZWN1dGFibGUgJmV4ZWN1dGFibGUs
Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
dms6OkJ1ZmZlckhlbHBlciAqZGVmYXVsdFVuaWZvcm1CdWZmZXIsCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgdms6OkRlc2NyaXB0
b3JTZXREZXNjICZ4ZmJCdWZmZXJEZXNjKTsKLSAgICBhbmdsZTo6UmVzdWx0IHVwZGF0ZUlucHV0
QXR0YWNobWVudERlc2NyaXB0b3JTZXQoY29uc3QgZ2w6OlByb2dyYW1FeGVjdXRhYmxlICZleGVj
dXRhYmxlLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBjb25zdCBnbDo6U2hhZGVyVHlwZSBzaGFkZXJUeXBlLAotICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDb250ZXh0VmsgKmNvbnRleHRWaywK
KyAgICBhbmdsZTo6UmVzdWx0IHVwZGF0ZVVuaWZvcm1zQW5kWGZiRGVzY3JpcHRvclNldCh2azo6
Q29udGV4dCAqY29udGV4dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBVcGRhdGVEZXNjcmlwdG9yU2V0c0J1aWxkZXIgKnVwZGF0ZUJ1aWxkZXIs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdms6
OlJlc291cmNlVXNlTGlzdCAqcmVzb3VyY2VVc2VMaXN0LAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZrOjpCdWZmZXJIZWxwZXIgKmVtcHR5QnVm
ZmVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGNvbnN0IGdsOjpQcm9ncmFtRXhlY3V0YWJsZSAmZXhlY3V0YWJsZSwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2azo6QnVmZmVySGVscGVyICpk
ZWZhdWx0VW5pZm9ybUJ1ZmZlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBjb25zdCB2azo6RGVzY3JpcHRvclNldERlc2MgJnVuaWZvcm1zQW5k
WGZiRGVzYywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBib29sIGlzVHJhbnNmb3JtRmVlZGJhY2tBY3RpdmVVbnBhdXNlZCwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUcmFuc2Zvcm1GZWVkYmFj
a1ZrICp0cmFuc2Zvcm1GZWVkYmFja1ZrKTsKKyAgICBhbmdsZTo6UmVzdWx0IHVwZGF0ZUlucHV0
QXR0YWNobWVudERlc2NyaXB0b3JTZXQodms6OkNvbnRleHQgKmNvbnRleHQsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZrOjpSZXNvdXJjZVVz
ZUxpc3QgKnJlc291cmNlVXNlTGlzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgVXBkYXRlRGVzY3JpcHRvclNldHNCdWlsZGVyICp1cGRhdGVC
dWlsZGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBjb25zdCBnbDo6UHJvZ3JhbUV4ZWN1dGFibGUgJmV4ZWN1dGFibGUsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdsOjpTaGFkZXJUeXBl
IHNoYWRlclR5cGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIEZyYW1lYnVmZmVyVmsgKmZyYW1lYnVmZmVyVmspOwogCiAgICAgdGVtcGxhdGUg
PHR5cGVuYW1lIENvbW1hbmRCdWZmZXJUPgotICAgIGFuZ2xlOjpSZXN1bHQgdXBkYXRlRGVzY3Jp
cHRvclNldHMoQ29udGV4dFZrICpjb250ZXh0VmssCisgICAgYW5nbGU6OlJlc3VsdCB1cGRhdGVE
ZXNjcmlwdG9yU2V0cyh2azo6Q29udGV4dCAqY29udGV4dCwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHZrOjpSZXNvdXJjZVVzZUxpc3QgKnJlc291cmNlVXNlTGlzdCwK
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENvbW1hbmRCdWZmZXJUICpj
b21tYW5kQnVmZmVyLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUGlw
ZWxpbmVUeXBlIHBpcGVsaW5lVHlwZSk7CiAKQEAgLTE5Niw3ICsyMTYsNyBAQCBjbGFzcyBQcm9n
cmFtRXhlY3V0YWJsZVZrCiAgICAgdm9pZCBhY2N1bXVsYXRlQ2FjaGVTdGF0cyhWdWxrYW5DYWNo
ZVR5cGUgY2FjaGVUeXBlLCBjb25zdCBDYWNoZVN0YXRzICZjYWNoZVN0YXRzKTsKICAgICBQcm9n
cmFtRXhlY3V0YWJsZVBlcmZDb3VudGVycyBnZXRBbmRSZXNldE9iamVjdFBlcmZDb3VudGVycygp
OwogCi0gICAgc2l6ZV90IGdldERlZmF1bHRVbmlmb3JtQWxpZ25lZFNpemUodms6OkNvbnRleHQg
KmNvbnRleHQsIGNvbnN0IGdsOjpTaGFkZXJUeXBlIHNoYWRlclR5cGUpIGNvbnN0CisgICAgc2l6
ZV90IGdldERlZmF1bHRVbmlmb3JtQWxpZ25lZFNpemUodms6OkNvbnRleHQgKmNvbnRleHQsIGds
OjpTaGFkZXJUeXBlIHNoYWRlclR5cGUpIGNvbnN0CiAgICAgewogICAgICAgICBSZW5kZXJlclZr
ICpyZW5kZXJlciA9IGNvbnRleHQtPmdldFJlbmRlcmVyKCk7CiAgICAgICAgIHNpemVfdCBhbGln
bm1lbnQgICAgID0gc3RhdGljX2Nhc3Q8c2l6ZV90PigKQEAgLTIxMiwzNyArMjMyLDQ1IEBAIGNs
YXNzIFByb2dyYW1FeGVjdXRhYmxlVmsKICAgICBib29sIGhhc0RpcnR5VW5pZm9ybXMoKSBjb25z
dCB7IHJldHVybiBtRGVmYXVsdFVuaWZvcm1CbG9ja3NEaXJ0eS5hbnkoKTsgfQogCiAgICAgdm9p
ZCBzZXRBbGxEZWZhdWx0VW5pZm9ybXNEaXJ0eShjb25zdCBnbDo6UHJvZ3JhbUV4ZWN1dGFibGUg
JmV4ZWN1dGFibGUpOwotICAgIGFuZ2xlOjpSZXN1bHQgdXBkYXRlVW5pZm9ybXMoQ29udGV4dFZr
ICpjb250ZXh0VmssCisgICAgYW5nbGU6OlJlc3VsdCB1cGRhdGVVbmlmb3Jtcyh2azo6Q29udGV4
dCAqY29udGV4dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFVwZGF0ZURlc2Ny
aXB0b3JTZXRzQnVpbGRlciAqdXBkYXRlQnVpbGRlciwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHZrOjpSZXNvdXJjZVVzZUxpc3QgKnJlc291cmNlVXNlTGlzdCwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHZrOjpCdWZmZXJIZWxwZXIgKmVtcHR5QnVmZmVyLAog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZ2w6OlByb2dyYW1FeGVjdXRh
YmxlICZnbEV4ZWN1dGFibGUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2azo6
RHluYW1pY0J1ZmZlciAqZGVmYXVsdFVuaWZvcm1TdG9yYWdlKTsKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHZrOjpEeW5hbWljQnVmZmVyICpkZWZhdWx0VW5pZm9ybVN0b3JhZ2Us
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sIGlzVHJhbnNmb3JtRmVlZGJh
Y2tBY3RpdmVVbnBhdXNlZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRyYW5z
Zm9ybUZlZWRiYWNrVmsgKnRyYW5zZm9ybUZlZWRiYWNrVmspOwogICAgIHZvaWQgb25Qcm9ncmFt
QmluZChjb25zdCBnbDo6UHJvZ3JhbUV4ZWN1dGFibGUgJmdsRXhlY3V0YWJsZSk7CiAKICAgcHJp
dmF0ZToKICAgICBmcmllbmQgY2xhc3MgUHJvZ3JhbVZrOwogICAgIGZyaWVuZCBjbGFzcyBQcm9n
cmFtUGlwZWxpbmVWazsKIAotICAgIGFuZ2xlOjpSZXN1bHQgYWxsb2NVbmlmb3JtQW5kWGZiRGVz
Y3JpcHRvclNldChDb250ZXh0VmsgKmNvbnRleHRWaywKKyAgICBhbmdsZTo6UmVzdWx0IGFsbG9j
VW5pZm9ybUFuZFhmYkRlc2NyaXB0b3JTZXQodms6OkNvbnRleHQgKmNvbnRleHQsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZrOjpSZXNvdXJjZVVz
ZUxpc3QgKnJlc291cmNlVXNlTGlzdCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgdms6OkJ1ZmZlckhlbHBlciAqZGVmYXVsdFVuaWZvcm1CdWZmZXIs
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0
IHZrOjpEZXNjcmlwdG9yU2V0RGVzYyAmeGZiQnVmZmVyRGVzYywKICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCAqbmV3RGVzY3JpcHRvclNldEFs
bG9jYXRlZCk7CiAKLSAgICBhbmdsZTo6UmVzdWx0IGFsbG9jYXRlRGVzY3JpcHRvclNldChDb250
ZXh0VmsgKmNvbnRleHRWaywKKyAgICBhbmdsZTo6UmVzdWx0IGFsbG9jYXRlRGVzY3JpcHRvclNl
dCh2azo6Q29udGV4dCAqY29udGV4dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICB2azo6UmVzb3VyY2VVc2VMaXN0ICpyZXNvdXJjZVVzZUxpc3QsCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRGVzY3JpcHRvclNldEluZGV4IGRlc2NyaXB0
b3JTZXRJbmRleCk7Ci0gICAgYW5nbGU6OlJlc3VsdCBhbGxvY2F0ZURlc2NyaXB0b3JTZXRBbmRH
ZXRJbmZvKENvbnRleHRWayAqY29udGV4dFZrLAorICAgIGFuZ2xlOjpSZXN1bHQgYWxsb2NhdGVE
ZXNjcmlwdG9yU2V0QW5kR2V0SW5mbyh2azo6Q29udGV4dCAqY29udGV4dCwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdms6OlJlc291cmNlVXNlTGlz
dCAqcmVzb3VyY2VVc2VMaXN0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBEZXNjcmlwdG9yU2V0SW5kZXggZGVzY3JpcHRvclNldEluZGV4LAogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sICpuZXdQ
b29sQWxsb2NhdGVkT3V0KTsKICAgICB2b2lkIGFkZEludGVyZmFjZUJsb2NrRGVzY3JpcHRvclNl
dERlc2MoY29uc3Qgc3RkOjp2ZWN0b3I8Z2w6OkludGVyZmFjZUJsb2NrPiAmYmxvY2tzLAotICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBnbDo6U2hhZGVy
VHlwZSBzaGFkZXJUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBnbDo6U2hhZGVyVHlwZSBzaGFkZXJUeXBlLAogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBWa0Rlc2NyaXB0b3JUeXBlIGRlc2NUeXBlLAogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2azo6RGVzY3JpcHRvclNldExheW91
dERlc2MgKmRlc2NPdXQpOwogICAgIHZvaWQgYWRkQXRvbWljQ291bnRlckJ1ZmZlckRlc2NyaXB0
b3JTZXREZXNjKAogICAgICAgICBjb25zdCBzdGQ6OnZlY3RvcjxnbDo6QXRvbWljQ291bnRlckJ1
ZmZlcj4gJmF0b21pY0NvdW50ZXJCdWZmZXJzLAotICAgICAgICBjb25zdCBnbDo6U2hhZGVyVHlw
ZSBzaGFkZXJUeXBlLAorICAgICAgICBnbDo6U2hhZGVyVHlwZSBzaGFkZXJUeXBlLAogICAgICAg
ICB2azo6RGVzY3JpcHRvclNldExheW91dERlc2MgKmRlc2NPdXQpOwogICAgIHZvaWQgYWRkSW1h
Z2VEZXNjcmlwdG9yU2V0RGVzYyhjb25zdCBnbDo6UHJvZ3JhbUV4ZWN1dGFibGUgJmV4ZWN1dGFi
bGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZrOjpEZXNjcmlwdG9yU2V0
TGF5b3V0RGVzYyAqZGVzY091dCk7CiAgICAgdm9pZCBhZGRJbnB1dEF0dGFjaG1lbnREZXNjcmlw
dG9yU2V0RGVzYyhjb25zdCBnbDo6UHJvZ3JhbUV4ZWN1dGFibGUgJmV4ZWN1dGFibGUsCi0gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBnbDo6U2hhZGVy
VHlwZSBzaGFkZXJUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgZ2w6OlNoYWRlclR5cGUgc2hhZGVyVHlwZSwKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHZrOjpEZXNjcmlwdG9yU2V0TGF5b3V0RGVzYyAqZGVzY091
dCk7CiAgICAgYW5nbGU6OlJlc3VsdCBhZGRUZXh0dXJlRGVzY3JpcHRvclNldERlc2MoCiAgICAg
ICAgIENvbnRleHRWayAqY29udGV4dFZrLApAQCAtMjUxLDMyICsyNzksNTEgQEAgY2xhc3MgUHJv
Z3JhbUV4ZWN1dGFibGVWawogICAgICAgICB2azo6RGVzY3JpcHRvclNldExheW91dERlc2MgKmRl
c2NPdXQpOwogCiAgICAgdm9pZCByZXNvbHZlUHJlY2lzaW9uTWlzbWF0Y2goY29uc3QgZ2w6OlBy
b2dyYW1NZXJnZWRWYXJ5aW5ncyAmbWVyZ2VkVmFyeWluZ3MpOwotICAgIHZvaWQgdXBkYXRlRGVm
YXVsdFVuaWZvcm1zRGVzY3JpcHRvclNldChDb250ZXh0VmsgKmNvbnRleHRWaywKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZ2w6OlNoYWRlclR5cGUg
c2hhZGVyVHlwZSwKKyAgICB2b2lkIHVwZGF0ZURlZmF1bHRVbmlmb3Jtc0Rlc2NyaXB0b3JTZXQo
dms6OkNvbnRleHQgKmNvbnRleHQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFVwZGF0ZURlc2NyaXB0b3JTZXRzQnVpbGRlciAqdXBkYXRlQnVpbGRlciwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdms6OkJ1ZmZlckhlbHBl
ciAqZW1wdHlCdWZmZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHZrOjpSZXNvdXJjZVVzZUxpc3QgKnJlc291cmNlVXNlTGlzdCwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2w6OlNoYWRlclR5cGUgc2hhZGVyVHlwZSwK
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgRGVmYXVs
dFVuaWZvcm1CbG9jayAmZGVmYXVsdFVuaWZvcm1CbG9jaywKICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgdms6OkJ1ZmZlckhlbHBlciAqZGVmYXVsdFVuaWZvcm1C
dWZmZXIpOwotICAgIHZvaWQgdXBkYXRlVHJhbnNmb3JtRmVlZGJhY2tEZXNjcmlwdG9yU2V0SW1w
bChDb250ZXh0VmsgKmNvbnRleHRWaywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgY29uc3QgZ2w6OlByb2dyYW1FeGVjdXRhYmxlICZleGVjdXRhYmxl
KTsKLSAgICBhbmdsZTo6UmVzdWx0IGdldE9yQWxsb2NhdGVTaGFkZXJSZXNvdXJjZXNEZXNjcmlw
dG9yU2V0KAotICAgICAgICBDb250ZXh0VmsgKmNvbnRleHRWaywKLSAgICAgICAgY29uc3Qgdms6
OkRlc2NyaXB0b3JTZXREZXNjICpzaGFkZXJCdWZmZXJzRGVzYywKLSAgICAgICAgVmtEZXNjcmlw
dG9yU2V0ICpkZXNjcmlwdG9yU2V0T3V0KTsKLSAgICBhbmdsZTo6UmVzdWx0IHVwZGF0ZUJ1ZmZl
cnNEZXNjcmlwdG9yU2V0KENvbnRleHRWayAqY29udGV4dFZrLAotICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZ2w6OlNoYWRlclR5cGUgc2hhZGVyVHlw
ZSwKKyAgICB2b2lkIHVwZGF0ZVRyYW5zZm9ybUZlZWRiYWNrRGVzY3JpcHRvclNldEltcGwodms6
OkNvbnRleHQgKmNvbnRleHQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFVwZGF0ZURlc2NyaXB0b3JTZXRzQnVpbGRlciAqdXBkYXRlQnVpbGRlciwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdms6OkJ1
ZmZlckhlbHBlciAqZW1wdHlCdWZmZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGNvbnN0IGdsOjpQcm9ncmFtRXhlY3V0YWJsZSAmZXhlY3V0YWJs
ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9v
bCBpc1RyYW5zZm9ybUZlZWRiYWNrQWN0aXZlVW5wYXVzZWQsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRyYW5zZm9ybUZlZWRiYWNrVmsgKnRyYW5z
Zm9ybUZlZWRiYWNrVmspOworICAgIGFuZ2xlOjpSZXN1bHQgYWxsb2NhdGVTaGFkZXJSZXNvdXJj
ZXNEZXNjcmlwdG9yU2V0KAorICAgICAgICB2azo6Q29udGV4dCAqY29udGV4dCwKKyAgICAgICAg
dms6OlJlc291cmNlVXNlTGlzdCAqcmVzb3VyY2VVc2VMaXN0LAorICAgICAgICBjb25zdCB2azo6
RGVzY3JpcHRvclNldERlc2MgKnNoYWRlckJ1ZmZlcnNEZXNjKTsKKyAgICBhbmdsZTo6UmVzdWx0
IHVwZGF0ZUJ1ZmZlcnNEZXNjcmlwdG9yU2V0KHZrOjpDb250ZXh0ICpjb250ZXh0LAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVXBkYXRlRGVzY3JpcHRvclNl
dHNCdWlsZGVyICp1cGRhdGVCdWlsZGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgdms6OkJ1ZmZlckhlbHBlciAqZW1wdHlCdWZmZXIsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2azo6UmVzb3VyY2VVc2VMaXN0ICpy
ZXNvdXJjZVVzZUxpc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBnbDo6U2hhZGVyVHlwZSBzaGFkZXJUeXBlLAogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgY29uc3Qgdms6OkRlc2NyaXB0b3JTZXREZXNjICZzaGFkZXJC
dWZmZXJzRGVzYywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGNvbnN0IGdsOjpCdWZmZXJWZWN0b3IgJmJ1ZmZlcnMsCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzdGQ6OnZlY3RvcjxnbDo6SW50ZXJmYWNlQmxv
Y2s+ICZibG9ja3MsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBWa0Rlc2NyaXB0b3JUeXBlIGRlc2NyaXB0b3JUeXBlLAogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgVmtEZXZpY2VTaXplIG1heEJvdW5kQnVmZmVyUmFuZ2Us
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sIGNhY2hl
SGl0KTsKICAgICBhbmdsZTo6UmVzdWx0IHVwZGF0ZUF0b21pY0NvdW50ZXJCdWZmZXJzRGVzY3Jp
cHRvclNldCgKLSAgICAgICAgQ29udGV4dFZrICpjb250ZXh0VmssCisgICAgICAgIHZrOjpDb250
ZXh0ICpjb250ZXh0LAorICAgICAgICBVcGRhdGVEZXNjcmlwdG9yU2V0c0J1aWxkZXIgKnVwZGF0
ZUJ1aWxkZXIsCisgICAgICAgIHZrOjpCdWZmZXJIZWxwZXIgKmVtcHR5QnVmZmVyLAorICAgICAg
ICB2azo6UmVzb3VyY2VVc2VMaXN0ICpyZXNvdXJjZVVzZUxpc3QsCisgICAgICAgIGNvbnN0IGds
OjpCdWZmZXJWZWN0b3IgJmF0b21pY0NvdW50ZXJCdWZmZXJCaW5kaW5ncywKICAgICAgICAgY29u
c3QgZ2w6OlByb2dyYW1FeGVjdXRhYmxlICZleGVjdXRhYmxlLAotICAgICAgICBjb25zdCBnbDo6
U2hhZGVyVHlwZSBzaGFkZXJUeXBlLAorICAgICAgICBnbDo6U2hhZGVyVHlwZSBzaGFkZXJUeXBl
LAogICAgICAgICBjb25zdCB2azo6RGVzY3JpcHRvclNldERlc2MgJnNoYWRlckJ1ZmZlcnNEZXNj
LAogICAgICAgICBib29sIGNhY2hlSGl0KTsKLSAgICBhbmdsZTo6UmVzdWx0IHVwZGF0ZUltYWdl
c0Rlc2NyaXB0b3JTZXQoQ29udGV4dFZrICpjb250ZXh0VmssCisgICAgYW5nbGU6OlJlc3VsdCB1
cGRhdGVJbWFnZXNEZXNjcmlwdG9yU2V0KHZrOjpDb250ZXh0ICpjb250ZXh0LAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2azo6UmVzb3VyY2VVc2VMaXN0ICpy
ZXNvdXJjZVVzZUxpc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFVwZGF0ZURlc2NyaXB0b3JTZXRzQnVpbGRlciAqdXBkYXRlQnVpbGRlciwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZ2w6OkFjdGl2ZVRleHR1
cmVBcnJheTxUZXh0dXJlVmsgKj4gJmFjdGl2ZUltYWdlcywKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RkOjp2ZWN0b3I8Z2w6OkltYWdlVW5pdD4g
JmltYWdlVW5pdHMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGNvbnN0IGdsOjpQcm9ncmFtRXhlY3V0YWJsZSAmZXhlY3V0YWJsZSwKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZ2w6OlNoYWRlclR5cGUgc2hhZGVy
VHlwZSk7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdsOjpT
aGFkZXJUeXBlIHNoYWRlclR5cGUpOwogCiAgICAgc3RhdGljIGFuZ2xlOjpSZXN1bHQgSW5pdER5
bmFtaWNEZXNjcmlwdG9yUG9vbCgKICAgICAgICAgdms6OkNvbnRleHQgKmNvbnRleHQsCkBAIC0y
ODcsMTIgKzMzNCwxMiBAQCBjbGFzcyBQcm9ncmFtRXhlY3V0YWJsZVZrCiAKICAgICB2b2lkIG91
dHB1dEN1bXVsYXRpdmVQZXJmQ291bnRlcnMoKTsKIAotICAgIHNpemVfdCBjYWxjVW5pZm9ybVVw
ZGF0ZVJlcXVpcmVkU3BhY2UoQ29udGV4dFZrICpjb250ZXh0VmssCisgICAgc2l6ZV90IGNhbGNV
bmlmb3JtVXBkYXRlUmVxdWlyZWRTcGFjZSh2azo6Q29udGV4dCAqY29udGV4dCwKICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGdsOjpQcm9ncmFtRXhlY3V0
YWJsZSAmZ2xFeGVjdXRhYmxlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgZ2w6OlNoYWRlck1hcDxWa0RldmljZVNpemU+ICp1bmlmb3JtT2Zmc2V0cykgY29uc3Q7
CiAKICAgICBBTkdMRV9JTkxJTkUgYW5nbGU6OlJlc3VsdCBpbml0UHJvZ3JhbShDb250ZXh0Vmsg
KmNvbnRleHRWaywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBj
b25zdCBnbDo6U2hhZGVyVHlwZSBzaGFkZXJUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGdsOjpTaGFkZXJUeXBlIHNoYWRlclR5cGUsCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCBpc0xhc3RQcmVGcmFnbWVudFN0
YWdlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wgaXNU
cmFuc2Zvcm1GZWVkYmFja1Byb2dyYW0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgUHJvZ3JhbVRyYW5zZm9ybU9wdGlvbnMgb3B0aW9uQml0cywKQEAgLTMxNiw3
ICszNjMsNyBAQCBjbGFzcyBQcm9ncmFtRXhlY3V0YWJsZVZrCiAKICAgICBBTkdMRV9JTkxJTkUg
YW5nbGU6OlJlc3VsdCBpbml0R3JhcGhpY3NTaGFkZXJQcm9ncmFtKAogICAgICAgICBDb250ZXh0
VmsgKmNvbnRleHRWaywKLSAgICAgICAgY29uc3QgZ2w6OlNoYWRlclR5cGUgc2hhZGVyVHlwZSwK
KyAgICAgICAgZ2w6OlNoYWRlclR5cGUgc2hhZGVyVHlwZSwKICAgICAgICAgYm9vbCBpc0xhc3RQ
cmVGcmFnbWVudFN0YWdlLAogICAgICAgICBib29sIGlzVHJhbnNmb3JtRmVlZGJhY2tQcm9ncmFt
LAogICAgICAgICBQcm9ncmFtVHJhbnNmb3JtT3B0aW9ucyBvcHRpb25CaXRzLApkaWZmIC0tZ2l0
IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9Q
cm9ncmFtVmsuY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRl
cmVyL3Z1bGthbi9Qcm9ncmFtVmsuY3BwCmluZGV4IGE1N2I0Njg2YzllZjEyMTBkMTQzNzU0MGYx
NzkyNWRlZDczMDhhNGQuLjFlNTVhMjAzMDQwN2Q1MGRlZDQ4ZThlZDM2YTlkYjJmMjEwYjI2NTUg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJl
ci92dWxrYW4vUHJvZ3JhbVZrLmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
bGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL1Byb2dyYW1Way5jcHAKQEAgLTEzNSw2ICsxMzUsMjQg
QEAgY2xhc3MgU3RkMTQwQmxvY2tMYXlvdXRFbmNvZGVyRmFjdG9yeSA6IHB1YmxpYyBnbDo6Q3Vz
dG9tQmxvY2tMYXlvdXRFbmNvZGVyRmFjdG8KICAgcHVibGljOgogICAgIHNoOjpCbG9ja0xheW91
dEVuY29kZXIgKm1ha2VFbmNvZGVyKCkgb3ZlcnJpZGUgeyByZXR1cm4gbmV3IHNoOjpTdGQxNDBC
bG9ja0VuY29kZXIoKTsgfQogfTsKKwordm9pZCBTZXR1cERlZmF1bHRQaXBlbGluZVN0YXRlKGNv
bnN0IENvbnRleHRWayAqY29udGV4dFZrLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHNpemVfdCBvdXRwdXRWYXJpYWJsZXNDb3VudCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBnbDo6UHJpbWl0aXZlTW9kZSBtb2RlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHZrOjpHcmFwaGljc1BpcGVsaW5lRGVzYyAqZ3JhcGhpY3NQaXBlbGluZURlc2NPdXQpCit7
CisgICAgZ3JhcGhpY3NQaXBlbGluZURlc2NPdXQtPmluaXREZWZhdWx0cyhjb250ZXh0VmspOwor
ICAgIGdyYXBoaWNzUGlwZWxpbmVEZXNjT3V0LT5zZXRUb3BvbG9neShtb2RlKTsKKyAgICBncmFw
aGljc1BpcGVsaW5lRGVzY091dC0+c2V0UmVuZGVyUGFzc1NhbXBsZUNvdW50KDEpOworCisgICAg
Y29uc3RleHByIGFuZ2xlOjpGb3JtYXRJRCBrRGVmYXVsdENvbG9yQXR0YWNobWVudEZvcm1hdCA9
IGFuZ2xlOjpGb3JtYXRJRDo6UjhHOEI4QThfVU5PUk07CisgICAgZm9yIChzaXplX3QgY29sb3JB
dHRhY2htZW50SW5kZXggPSAwOyBjb2xvckF0dGFjaG1lbnRJbmRleCA8IG91dHB1dFZhcmlhYmxl
c0NvdW50OworICAgICAgICAgY29sb3JBdHRhY2htZW50SW5kZXgrKykKKyAgICB7CisgICAgICAg
IGdyYXBoaWNzUGlwZWxpbmVEZXNjT3V0LT5zZXRSZW5kZXJQYXNzQ29sb3JBdHRhY2htZW50Rm9y
bWF0KGNvbG9yQXR0YWNobWVudEluZGV4LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBrRGVmYXVsdENvbG9yQXR0YWNo
bWVudEZvcm1hdCk7CisgICAgfQorfQogfSAgLy8gYW5vbnltb3VzIG5hbWVzcGFjZQogCiAvLyBQ
cm9ncmFtVmsgaW1wbGVtZW50YXRpb24uCkBAIC0yMDUsOSArMjIzLDE1IEBAIHN0ZDo6dW5pcXVl
X3B0cjxMaW5rRXZlbnQ+IFByb2dyYW1Wazo6bGluayhjb25zdCBnbDo6Q29udGV4dCAqY29udGV4
dCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZtR2xzbGFuZ1Byb2dyYW1J
bnRlcmZhY2VJbmZvLCAmc3BpcnZCbG9icywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICZtRXhlY3V0YWJsZS5tVmFyaWFibGVJbmZvTWFwKTsKIAorICAgIGlmIChjb250ZXh0
VmstPmdldEZlYXR1cmVzKCkuZW5hYmxlUHJlY2lzaW9uUXVhbGlmaWVycy5lbmFibGVkKQorICAg
IHsKKyAgICAgICAgbUV4ZWN1dGFibGUucmVzb2x2ZVByZWNpc2lvbk1pc21hdGNoKG1lcmdlZFZh
cnlpbmdzKTsKKyAgICB9CisKICAgICAvLyBDb21waWxlIHRoZSBzaGFkZXJzLgotICAgIGFuZ2xl
OjpSZXN1bHQgc3RhdHVzID0gbUV4ZWN1dGFibGUubU9yaWdpbmFsU2hhZGVySW5mby5pbml0U2hh
ZGVycygKLSAgICAgICAgbVN0YXRlLmdldEV4ZWN1dGFibGUoKS5nZXRMaW5rZWRTaGFkZXJTdGFn
ZXMoKSwgc3BpcnZCbG9icywgbUV4ZWN1dGFibGUubVZhcmlhYmxlSW5mb01hcCk7CisgICAgY29u
c3QgZ2w6OlByb2dyYW1FeGVjdXRhYmxlICZwcm9ncmFtRXhlY3V0YWJsZSA9IG1TdGF0ZS5nZXRF
eGVjdXRhYmxlKCk7CisgICAgYW5nbGU6OlJlc3VsdCBzdGF0dXMgICAgICAgICAgICAgICAgICAg
ICAgICAgICA9IG1FeGVjdXRhYmxlLm1PcmlnaW5hbFNoYWRlckluZm8uaW5pdFNoYWRlcnMoCisg
ICAgICAgIHByb2dyYW1FeGVjdXRhYmxlLmdldExpbmtlZFNoYWRlclN0YWdlcygpLCBzcGlydkJs
b2JzLCBtRXhlY3V0YWJsZS5tVmFyaWFibGVJbmZvTWFwKTsKICAgICBpZiAoc3RhdHVzICE9IGFu
Z2xlOjpSZXN1bHQ6OkNvbnRpbnVlKQogICAgIHsKICAgICAgICAgcmV0dXJuIHN0ZDo6bWFrZV91
bmlxdWU8TGlua0V2ZW50RG9uZT4oc3RhdHVzKTsKQEAgLTIxOSwxNyArMjQzLDU0IEBAIHN0ZDo6
dW5pcXVlX3B0cjxMaW5rRXZlbnQ+IFByb2dyYW1Wazo6bGluayhjb25zdCBnbDo6Q29udGV4dCAq
Y29udGV4dCwKICAgICAgICAgcmV0dXJuIHN0ZDo6bWFrZV91bmlxdWU8TGlua0V2ZW50RG9uZT4o
c3RhdHVzKTsKICAgICB9CiAKLSAgICBpZiAoY29udGV4dFZrLT5nZXRGZWF0dXJlcygpLmVuYWJs
ZVByZWNpc2lvblF1YWxpZmllcnMuZW5hYmxlZCkKKyAgICAvLyBUT0RPKGppZS5hLmNoZW5AaW50
ZWwuY29tKTogUGFyYWxsZWxpemUgbGlua2luZy4KKyAgICAvLyBodHRwOi8vY3JidWcuY29tLzg0
OTU3NgorICAgIHN0YXR1cyA9IG1FeGVjdXRhYmxlLmNyZWF0ZVBpcGVsaW5lTGF5b3V0KGNvbnRl
eHRWaywgcHJvZ3JhbUV4ZWN1dGFibGUsIG51bGxwdHIpOworCisgICAgLy8gQ3JlYXRlIHBpcGVs
aW5lIHdpdGggZGVmYXVsdCBzdGF0ZQorICAgIGlmICgoc3RhdHVzID09IGFuZ2xlOjpSZXN1bHQ6
OkNvbnRpbnVlKSAmJgorICAgICAgICBjb250ZXh0VmstPmdldEZlYXR1cmVzKCkuY3JlYXRlUGlw
ZWxpbmVEdXJpbmdMaW5rLmVuYWJsZWQpCiAgICAgewotICAgICAgICBtRXhlY3V0YWJsZS5yZXNv
bHZlUHJlY2lzaW9uTWlzbWF0Y2gobWVyZ2VkVmFyeWluZ3MpOworICAgICAgICBzdGF0dXMgPSBj
cmVhdGVHcmFwaGljc1BpcGVsaW5lV2l0aERlZmF1bHRTdGF0ZShjb250ZXh0KTsKICAgICB9CiAK
LSAgICAvLyBUT0RPKGppZS5hLmNoZW5AaW50ZWwuY29tKTogUGFyYWxsZWxpemUgbGlua2luZy4K
LSAgICAvLyBodHRwOi8vY3JidWcuY29tLzg0OTU3NgotICAgIHN0YXR1cyA9IG1FeGVjdXRhYmxl
LmNyZWF0ZVBpcGVsaW5lTGF5b3V0KGNvbnRleHRWaywgbVN0YXRlLmdldEV4ZWN1dGFibGUoKSwg
bnVsbHB0cik7CiAgICAgcmV0dXJuIHN0ZDo6bWFrZV91bmlxdWU8TGlua0V2ZW50RG9uZT4oc3Rh
dHVzKTsKIH0KIAorYW5nbGU6OlJlc3VsdCBQcm9ncmFtVms6OmNyZWF0ZUdyYXBoaWNzUGlwZWxp
bmVXaXRoRGVmYXVsdFN0YXRlKGNvbnN0IGdsOjpDb250ZXh0ICpjb250ZXh0KQoreworICAgIGNv
bnN0IGdsOjpQcm9ncmFtRXhlY3V0YWJsZSAmZ2xFeGVjdXRhYmxlID0gbVN0YXRlLmdldEV4ZWN1
dGFibGUoKTsKKworICAgIC8vIE5PT1AgaWYgLQorICAgIC8vIDEuIFByb2dyYW0gaXMgc2VwYXJh
YmxlCisgICAgLy8gMi4gUHJvZ3JhbSBoYXMgYSBjb21wdXRlIHNoYWRlcgorICAgIC8vIDMuIFBy
b2dyYW0gaGFzIGdyZWF0ZXIgdGhhbiAzIG91dHB1dCB2YXJpYWJsZXMKKyAgICBib29sIGlzUHJv
Z3JhbVNlcGVyYWJsZSA9IG1TdGF0ZS5pc1NlcGFyYWJsZSgpOworICAgIGJvb2wgaGFzQ29tcHV0
ZVNoYWRlciAgID0gZ2xFeGVjdXRhYmxlLmhhc0xpbmtlZFNoYWRlclN0YWdlKGdsOjpTaGFkZXJU
eXBlOjpDb21wdXRlKTsKKyAgICBpZiAoaXNQcm9ncmFtU2VwZXJhYmxlIHx8IGhhc0NvbXB1dGVT
aGFkZXIgfHwgZ2xFeGVjdXRhYmxlLmdldE91dHB1dFZhcmlhYmxlcygpLnNpemUoKSA+IDMpCisg
ICAgeworICAgICAgICByZXR1cm4gYW5nbGU6OlJlc3VsdDo6Q29udGludWU7CisgICAgfQorCisg
ICAgQ29udGV4dFZrICpjb250ZXh0VmsgICAgICAgICAgICAgICAgICAgID0gdms6OkdldEltcGwo
Y29udGV4dCk7CisgICAgY29uc3Qgdms6OkdyYXBoaWNzUGlwZWxpbmVEZXNjICpkZXNjUHRyID0g
bnVsbHB0cjsKKyAgICB2azo6UGlwZWxpbmVIZWxwZXIgKnBpcGVsaW5lICAgICAgICAgICAgPSBu
dWxscHRyOworICAgIHZrOjpHcmFwaGljc1BpcGVsaW5lRGVzYyBncmFwaGljc1BpcGVsaW5lRGVz
YzsKKworICAgIC8vIEl0IGlzIG9ubHkgYXQgZHJhd2NhbGwgdGltZSB0aGF0IHdlIHdpbGwgaGF2
ZSBjb21wbGV0ZSBpbmZvcm1hdGlvbiByZXF1aXJlZCB0byBidWlsZCB0aGUKKyAgICAvLyBncmFw
aGljcyBwaXBlbGluZSBkZXNjcmlwdG9yLiBVc2UgdGhlIG1vc3QgImNvbW1vbmx5IHNlZW4iIHN0
YXRlIHZhbHVlcyBhbmQgY3JlYXRlIHRoZQorICAgIC8vIHBpcGVsaW5lLiBUaGlzIGF0dGVtcHRz
IHRvIGltcHJvdmUgc2hhZGVyIGJpbmFyeSBjYWNoZSBoaXRzIGluIHRoZSB1bmRlcmx5aW5nIElD
RCBzaW5jZSBpdCBpcworICAgIC8vIGNvbW1vbiBmb3IgdGhlIHNhbWUgc2hhZGVyIHRvIGJlIHVz
ZWQgYWNyb3NzIGRpZmZlcmVudCBwaXBlbGluZXMuCisgICAgZ2w6OlByaW1pdGl2ZU1vZGUgbW9k
ZSA9IChnbEV4ZWN1dGFibGUuaGFzTGlua2VkU2hhZGVyU3RhZ2UoZ2w6OlNoYWRlclR5cGU6OlRl
c3NDb250cm9sKSB8fAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2xFeGVjdXRhYmxl
Lmhhc0xpbmtlZFNoYWRlclN0YWdlKGdsOjpTaGFkZXJUeXBlOjpUZXNzRXZhbHVhdGlvbikpCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/IGdsOjpQcmltaXRpdmVNb2RlOjpQYXRj
aGVzCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IGdsOjpQcmltaXRpdmVNb2Rl
OjpUcmlhbmdsZVN0cmlwOworICAgIFNldHVwRGVmYXVsdFBpcGVsaW5lU3RhdGUoY29udGV4dFZr
LCBnbEV4ZWN1dGFibGUuZ2V0T3V0cHV0VmFyaWFibGVzKCkuc2l6ZSgpLCBtb2RlLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgJmdyYXBoaWNzUGlwZWxpbmVEZXNjKTsKKyAgICByZXR1
cm4gbUV4ZWN1dGFibGUuZ2V0R3JhcGhpY3NQaXBlbGluZShjb250ZXh0VmssIG1vZGUsIGdyYXBo
aWNzUGlwZWxpbmVEZXNjLCBnbEV4ZWN1dGFibGUsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgJmRlc2NQdHIsICZwaXBlbGluZSk7Cit9CisKIHZvaWQgUHJvZ3Jh
bVZrOjpsaW5rUmVzb3VyY2VzKGNvbnN0IGdsOjpQcm9ncmFtTGlua2VkUmVzb3VyY2VzICZyZXNv
dXJjZXMpCiB7CiAgICAgU3RkMTQwQmxvY2tMYXlvdXRFbmNvZGVyRmFjdG9yeSBzdGQxNDBFbmNv
ZGVyRmFjdG9yeTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJB
TkdMRS9yZW5kZXJlci92dWxrYW4vUHJvZ3JhbVZrLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL1Byb2dyYW1Way5oCmluZGV4IGJiMzY0ZjQ4
ZjI5MzJjYmYxM2RkOTQ4ZTYyMzI0MGRiODMxMjdiZjIuLmUyZDkwOThmNTE1NDRlYTg4N2JlNDQw
ZWNlZTE3NjI0NDk5MDg4M2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3Ny
Yy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vUHJvZ3JhbVZrLmgKKysrIGIvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9Qcm9ncmFtVmsuaApAQCAt
MTQwLDYgKzE0MCw4IEBAIGNsYXNzIFByb2dyYW1WayA6IHB1YmxpYyBQcm9ncmFtSW1wbAogICAg
IHZvaWQgc2V0VW5pZm9ybUltcGwoR0xpbnQgbG9jYXRpb24sIEdMc2l6ZWkgY291bnQsIGNvbnN0
IFQgKnYsIEdMZW51bSBlbnRyeVBvaW50VHlwZSk7CiAgICAgdm9pZCBsaW5rUmVzb3VyY2VzKGNv
bnN0IGdsOjpQcm9ncmFtTGlua2VkUmVzb3VyY2VzICZyZXNvdXJjZXMpOwogCisgICAgYW5nbGU6
OlJlc3VsdCBjcmVhdGVHcmFwaGljc1BpcGVsaW5lV2l0aERlZmF1bHRTdGF0ZShjb25zdCBnbDo6
Q29udGV4dCAqY29udGV4dCk7CisKICAgICAvLyBXZSBrZWVwIHRoZSBTUElSLVYgY29kZSB0byB1
c2UgZm9yIGRyYXcgY2FsbCBwaXBlbGluZSBjcmVhdGlvbi4KICAgICBHbHNsYW5nUHJvZ3JhbUlu
dGVyZmFjZUluZm8gbUdsc2xhbmdQcm9ncmFtSW50ZXJmYWNlSW5mbzsKIApkaWZmIC0tZ2l0IGEv
U291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9SZW5k
ZXJUYXJnZXRWay5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVu
ZGVyZXIvdnVsa2FuL1JlbmRlclRhcmdldFZrLmNwcAppbmRleCAxNzZiZGMxYzcwYTQ1YTUxNGUx
NjlkZDhjZDA4Y2E5OGU2ZDQ1OGY3Li41OTI2MGYxNDAyYmRmNGQwNWJlMDI0MDhjZDEzMTM3YzE3
MzE3OTQ3IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUv
cmVuZGVyZXIvdnVsa2FuL1JlbmRlclRhcmdldFZrLmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL1JlbmRlclRhcmdldFZrLmNwcApA
QCAtMTA4LDcgKzEwOCw2IEBAIHZvaWQgUmVuZGVyVGFyZ2V0Vms6Om9uQ29sb3JEcmF3KENvbnRl
eHRWayAqY29udGV4dFZrLAogICAgICAgICBtUmVzb2x2ZUltYWdlLT5vbldyaXRlKG1MZXZlbElu
ZGV4R0wsIDEsIG1MYXllckluZGV4LCBmcmFtZWJ1ZmZlckxheWVyQ291bnQsCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgVktfSU1BR0VfQVNQRUNUX0NPTE9SX0JJVCk7CiAgICAgfQot
ICAgIHJldGFpbkltYWdlVmlld3MoY29udGV4dFZrKTsKIH0KIAogdm9pZCBSZW5kZXJUYXJnZXRW
azo6b25Db2xvclJlc29sdmUoQ29udGV4dFZrICpjb250ZXh0VmssIHVpbnQzMl90IGZyYW1lYnVm
ZmVyTGF5ZXJDb3VudCkKQEAgLTEyMCw3ICsxMTksNiBAQCB2b2lkIFJlbmRlclRhcmdldFZrOjpv
bkNvbG9yUmVzb2x2ZShDb250ZXh0VmsgKmNvbnRleHRWaywgdWludDMyX3QgZnJhbWVidWZmZXJM
YQogICAgIGNvbnRleHRWay0+b25JbWFnZVJlbmRlclBhc3NXcml0ZShtTGV2ZWxJbmRleEdMLCBt
TGF5ZXJJbmRleCwgZnJhbWVidWZmZXJMYXllckNvdW50LAogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBWS19JTUFHRV9BU1BFQ1RfQ09MT1JfQklULCB2azo6SW1hZ2VMYXlv
dXQ6OkNvbG9yQXR0YWNobWVudCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgbUltYWdlKTsKLSAgICByZXRhaW5JbWFnZVZpZXdzKGNvbnRleHRWayk7CiB9CiAKIHZvaWQg
UmVuZGVyVGFyZ2V0Vms6Om9uRGVwdGhTdGVuY2lsRHJhdyhDb250ZXh0VmsgKmNvbnRleHRWaywg
dWludDMyX3QgZnJhbWVidWZmZXJMYXllckNvdW50KQpAQCAtMTMxLDcgKzEyOSw2IEBAIHZvaWQg
UmVuZGVyVGFyZ2V0Vms6Om9uRGVwdGhTdGVuY2lsRHJhdyhDb250ZXh0VmsgKmNvbnRleHRWaywg
dWludDMyX3QgZnJhbWVidWZmCiAKICAgICBjb250ZXh0VmstPm9uRGVwdGhTdGVuY2lsRHJhdyht
TGV2ZWxJbmRleEdMLCBtTGF5ZXJJbmRleCwgZnJhbWVidWZmZXJMYXllckNvdW50LCBtSW1hZ2Us
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbVJlc29sdmVJbWFnZSk7Ci0gICAg
cmV0YWluSW1hZ2VWaWV3cyhjb250ZXh0VmspOwogfQogCiB2azo6SW1hZ2VIZWxwZXIgJlJlbmRl
clRhcmdldFZrOjpnZXRJbWFnZUZvclJlbmRlclBhc3MoKQpAQCAtMTU4LDcgKzE1NSw3IEBAIGNv
bnN0IHZrOjpJbWFnZUhlbHBlciAmUmVuZGVyVGFyZ2V0Vms6OmdldFJlc29sdmVJbWFnZUZvclJl
bmRlclBhc3MoKSBjb25zdAogICAgIHJldHVybiAqbVJlc29sdmVJbWFnZTsKIH0KIAotYW5nbGU6
OlJlc3VsdCBSZW5kZXJUYXJnZXRWazo6Z2V0SW1hZ2VWaWV3SW1wbChDb250ZXh0VmsgKmNvbnRl
eHRWaywKK2FuZ2xlOjpSZXN1bHQgUmVuZGVyVGFyZ2V0Vms6OmdldEltYWdlVmlld0ltcGwodms6
OkNvbnRleHQgKmNvbnRleHQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGNvbnN0IHZrOjpJbWFnZUhlbHBlciAmaW1hZ2UsCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdsOjpTcmdiV3JpdGVDb250cm9sTW9kZSBt
b2RlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2azo6
SW1hZ2VWaWV3SGVscGVyICppbWFnZVZpZXdzLApAQCAtMTY4LDM2ICsxNjUsMzYgQEAgYW5nbGU6
OlJlc3VsdCBSZW5kZXJUYXJnZXRWazo6Z2V0SW1hZ2VWaWV3SW1wbChDb250ZXh0VmsgKmNvbnRl
eHRWaywKICAgICB2azo6TGV2ZWxJbmRleCBsZXZlbFZrID0gbUltYWdlLT50b1ZrTGV2ZWwobUxl
dmVsSW5kZXhHTCk7CiAgICAgaWYgKG1MYXllckNvdW50ID09IDEpCiAgICAgewotICAgICAgICBy
ZXR1cm4gaW1hZ2VWaWV3cy0+Z2V0TGV2ZWxMYXllckRyYXdJbWFnZVZpZXcoY29udGV4dFZrLCBp
bWFnZSwgbGV2ZWxWaywgbUxheWVySW5kZXgsIG1vZGUsCisgICAgICAgIHJldHVybiBpbWFnZVZp
ZXdzLT5nZXRMZXZlbExheWVyRHJhd0ltYWdlVmlldyhjb250ZXh0LCBpbWFnZSwgbGV2ZWxWaywg
bUxheWVySW5kZXgsIG1vZGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBpbWFnZVZpZXdPdXQpOwogICAgIH0KIAogICAgIC8vIExheWVyZWQg
cmVuZGVyIHRhcmdldHMgdmlldyB0aGUgd2hvbGUgbGV2ZWwgb3IgYSBoYW5kZnVsIG9mIGxheWVy
cyBpbiBjYXNlIG9mIG11bHRpdmlldy4KLSAgICByZXR1cm4gaW1hZ2VWaWV3cy0+Z2V0TGV2ZWxE
cmF3SW1hZ2VWaWV3KGNvbnRleHRWaywgaW1hZ2UsIGxldmVsVmssIG1MYXllckluZGV4LCBtTGF5
ZXJDb3VudCwKKyAgICByZXR1cm4gaW1hZ2VWaWV3cy0+Z2V0TGV2ZWxEcmF3SW1hZ2VWaWV3KGNv
bnRleHQsIGltYWdlLCBsZXZlbFZrLCBtTGF5ZXJJbmRleCwgbUxheWVyQ291bnQsCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtb2RlLCBpbWFnZVZpZXdPdXQp
OwogfQogCi1hbmdsZTo6UmVzdWx0IFJlbmRlclRhcmdldFZrOjpnZXRJbWFnZVZpZXcoQ29udGV4
dFZrICpjb250ZXh0VmssCithbmdsZTo6UmVzdWx0IFJlbmRlclRhcmdldFZrOjpnZXRJbWFnZVZp
ZXcodms6OkNvbnRleHQgKmNvbnRleHQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgY29uc3Qgdms6OkltYWdlVmlldyAqKmltYWdlVmlld091dCkgY29uc3QKIHsK
ICAgICBBU1NFUlQobUltYWdlKTsKLSAgICByZXR1cm4gZ2V0SW1hZ2VWaWV3SW1wbChjb250ZXh0
VmssICptSW1hZ2UsIGdsOjpTcmdiV3JpdGVDb250cm9sTW9kZTo6RGVmYXVsdCwgbUltYWdlVmll
d3MsCisgICAgcmV0dXJuIGdldEltYWdlVmlld0ltcGwoY29udGV4dCwgKm1JbWFnZSwgZ2w6OlNy
Z2JXcml0ZUNvbnRyb2xNb2RlOjpEZWZhdWx0LCBtSW1hZ2VWaWV3cywKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBpbWFnZVZpZXdPdXQpOwogfQogCi1hbmdsZTo6UmVzdWx0IFJlbmRlclRh
cmdldFZrOjpnZXRJbWFnZVZpZXdXaXRoQ29sb3JzcGFjZShDb250ZXh0VmsgKmNvbnRleHRWaywK
K2FuZ2xlOjpSZXN1bHQgUmVuZGVyVGFyZ2V0Vms6OmdldEltYWdlVmlld1dpdGhDb2xvcnNwYWNl
KHZrOjpDb250ZXh0ICpjb250ZXh0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgZ2w6OlNyZ2JXcml0ZUNvbnRyb2xNb2RlIG1vZGUsCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBj
b25zdCB2azo6SW1hZ2VWaWV3ICoqaW1hZ2VWaWV3T3V0KSBjb25zdAogewogICAgIEFTU0VSVCht
SW1hZ2UpOwotICAgIHJldHVybiBnZXRJbWFnZVZpZXdJbXBsKGNvbnRleHRWaywgKm1JbWFnZSwg
bW9kZSwgbUltYWdlVmlld3MsIGltYWdlVmlld091dCk7CisgICAgcmV0dXJuIGdldEltYWdlVmll
d0ltcGwoY29udGV4dCwgKm1JbWFnZSwgbW9kZSwgbUltYWdlVmlld3MsIGltYWdlVmlld091dCk7
CiB9CiAKLWFuZ2xlOjpSZXN1bHQgUmVuZGVyVGFyZ2V0Vms6OmdldFJlc29sdmVJbWFnZVZpZXco
Q29udGV4dFZrICpjb250ZXh0VmssCithbmdsZTo6UmVzdWx0IFJlbmRlclRhcmdldFZrOjpnZXRS
ZXNvbHZlSW1hZ2VWaWV3KHZrOjpDb250ZXh0ICpjb250ZXh0LAogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB2azo6SW1hZ2VWaWV3ICoqaW1h
Z2VWaWV3T3V0KSBjb25zdAogewogICAgIEFTU0VSVChtUmVzb2x2ZUltYWdlKTsKLSAgICByZXR1
cm4gZ2V0SW1hZ2VWaWV3SW1wbChjb250ZXh0VmssICptUmVzb2x2ZUltYWdlLCBnbDo6U3JnYldy
aXRlQ29udHJvbE1vZGU6OkRlZmF1bHQsCisgICAgcmV0dXJuIGdldEltYWdlVmlld0ltcGwoY29u
dGV4dCwgKm1SZXNvbHZlSW1hZ2UsIGdsOjpTcmdiV3JpdGVDb250cm9sTW9kZTo6RGVmYXVsdCwK
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtUmVzb2x2ZUltYWdlVmlld3MsIGltYWdlVmll
d091dCk7CiB9CiAKQEAgLTIxNCwxMSArMjExLDkgQEAgdms6OkltYWdlSGVscGVyICpSZW5kZXJU
YXJnZXRWazo6Z2V0T3duZXJPZkRhdGEoKSBjb25zdAogICAgIHJldHVybiBpc1Jlc29sdmVJbWFn
ZU93bmVyT2ZEYXRhKCkgPyBtUmVzb2x2ZUltYWdlIDogbUltYWdlOwogfQogCi1hbmdsZTo6UmVz
dWx0IFJlbmRlclRhcmdldFZrOjpnZXRBbmRSZXRhaW5Db3B5SW1hZ2VWaWV3KENvbnRleHRWayAq
Y29udGV4dFZrLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBjb25zdCB2azo6SW1hZ2VWaWV3ICoqaW1hZ2VWaWV3T3V0KSBjb25zdAorYW5n
bGU6OlJlc3VsdCBSZW5kZXJUYXJnZXRWazo6Z2V0Q29weUltYWdlVmlldyh2azo6Q29udGV4dCAq
Y29udGV4dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Y29uc3Qgdms6OkltYWdlVmlldyAqKmltYWdlVmlld091dCkgY29uc3QKIHsKLSAgICByZXRhaW5J
bWFnZVZpZXdzKGNvbnRleHRWayk7Ci0KICAgICBjb25zdCB2azo6SW1hZ2VWaWV3SGVscGVyICpp
bWFnZVZpZXdzID0KICAgICAgICAgaXNSZXNvbHZlSW1hZ2VPd25lck9mRGF0YSgpID8gbVJlc29s
dmVJbWFnZVZpZXdzIDogbUltYWdlVmlld3M7CiAKQEAgLTIzMyw4ICsyMjgsOCBAQCBhbmdsZTo6
UmVzdWx0IFJlbmRlclRhcmdldFZrOjpnZXRBbmRSZXRhaW5Db3B5SW1hZ2VWaWV3KENvbnRleHRW
ayAqY29udGV4dFZrLAogICAgIC8vIE90aGVyd2lzZSwgdGhpcyBtdXN0IGNvbWUgZnJvbSB0aGUg
c3VyZmFjZSwgaW4gd2hpY2ggY2FzZSB0aGUgaW1hZ2UgaXMgMkQsIHNvIHRoZSBpbWFnZSB2aWV3
CiAgICAgLy8gdXNlZCB0byBkcmF3IGlzIGp1c3QgYXMgZ29vZCBmb3IgZmV0Y2hpbmcuICBJZiBy
ZXNvbHZlIGF0dGFjaG1lbnQgaXMgcHJlc2VudCwgZmV0Y2hpbmcgaXMKICAgICAvLyBkb25lIGZy
b20gdGhhdC4KLSAgICByZXR1cm4gaXNSZXNvbHZlSW1hZ2VPd25lck9mRGF0YSgpID8gZ2V0UmVz
b2x2ZUltYWdlVmlldyhjb250ZXh0VmssIGltYWdlVmlld091dCkKLSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIDogZ2V0SW1hZ2VWaWV3KGNvbnRleHRWaywgaW1hZ2VWaWV3
T3V0KTsKKyAgICByZXR1cm4gaXNSZXNvbHZlSW1hZ2VPd25lck9mRGF0YSgpID8gZ2V0UmVzb2x2
ZUltYWdlVmlldyhjb250ZXh0LCBpbWFnZVZpZXdPdXQpCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICA6IGdldEltYWdlVmlldyhjb250ZXh0LCBpbWFnZVZpZXdPdXQpOwog
fQogCiBhbmdsZTo6Rm9ybWF0SUQgUmVuZGVyVGFyZ2V0Vms6OmdldEltYWdlQWN0dWFsRm9ybWF0
SUQoKSBjb25zdApAQCAtMzQyLDE1ICszMzcsNiBAQCBhbmdsZTo6UmVzdWx0IFJlbmRlclRhcmdl
dFZrOjpmbHVzaFN0YWdlZFVwZGF0ZXMoQ29udGV4dFZrICpjb250ZXh0VmssCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZlcnJlZENsZWFy
SW5kZXgpOwogfQogCi12b2lkIFJlbmRlclRhcmdldFZrOjpyZXRhaW5JbWFnZVZpZXdzKENvbnRl
eHRWayAqY29udGV4dFZrKSBjb25zdAotewotICAgIG1JbWFnZVZpZXdzLT5yZXRhaW4oJmNvbnRl
eHRWay0+Z2V0UmVzb3VyY2VVc2VMaXN0KCkpOwotICAgIGlmIChtUmVzb2x2ZUltYWdlVmlld3Mp
Ci0gICAgewotICAgICAgICBtUmVzb2x2ZUltYWdlVmlld3MtPnJldGFpbigmY29udGV4dFZrLT5n
ZXRSZXNvdXJjZVVzZUxpc3QoKSk7Ci0gICAgfQotfQotCiBib29sIFJlbmRlclRhcmdldFZrOjpo
YXNEZWZpbmVkQ29udGVudCgpIGNvbnN0CiB7CiAgICAgdms6OkltYWdlSGVscGVyICppbWFnZSA9
IGdldE93bmVyT2ZEYXRhKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9z
cmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL1JlbmRlclRhcmdldFZrLmggYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL1JlbmRlclRhcmdldFZr
LmgKaW5kZXggN2I4Yjk3NjE3NmQzY2YzODUyNGFiZjEzNTlhNGFhMGY3ODg4MTA1OS4uMDg2YWZi
YTFjNmRmMjg0MTQwZmUyY2E3MGVlZDRiYzg1OTUxYjkwOSAxMDA2NDQKLS0tIGEvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9SZW5kZXJUYXJnZXRW
ay5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci92
dWxrYW4vUmVuZGVyVGFyZ2V0VmsuaApAQCAtODIsMTcgKzgyLDE2IEBAIGNsYXNzIFJlbmRlclRh
cmdldFZrIGZpbmFsIDogcHVibGljIEZyYW1lYnVmZmVyQXR0YWNobWVudFJlbmRlclRhcmdldAog
ICAgIHZrOjpJbWFnZUhlbHBlciAmZ2V0SW1hZ2VGb3JXcml0ZSgpIGNvbnN0OwogCiAgICAgLy8g
Rm9yIGN1YmUgbWFwcyB3ZSB1c2Ugc2luZ2xlLWxldmVsIHNpbmdsZS1sYXllciAyRCBhcnJheSB2
aWV3cy4KLSAgICBhbmdsZTo6UmVzdWx0IGdldEltYWdlVmlldyhDb250ZXh0VmsgKmNvbnRleHRW
aywgY29uc3Qgdms6OkltYWdlVmlldyAqKmltYWdlVmlld091dCkgY29uc3Q7Ci0gICAgYW5nbGU6
OlJlc3VsdCBnZXRJbWFnZVZpZXdXaXRoQ29sb3JzcGFjZShDb250ZXh0VmsgKmNvbnRleHRWaywK
KyAgICBhbmdsZTo6UmVzdWx0IGdldEltYWdlVmlldyh2azo6Q29udGV4dCAqY29udGV4dFZrLCBj
b25zdCB2azo6SW1hZ2VWaWV3ICoqaW1hZ2VWaWV3T3V0KSBjb25zdDsKKyAgICBhbmdsZTo6UmVz
dWx0IGdldEltYWdlVmlld1dpdGhDb2xvcnNwYWNlKHZrOjpDb250ZXh0ICpjb250ZXh0LAogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2w6OlNyZ2JXcml0ZUNv
bnRyb2xNb2RlIHNyZ2JXcml0ZUNvbnRybE1vZGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBjb25zdCB2azo6SW1hZ2VWaWV3ICoqaW1hZ2VWaWV3T3V0KSBj
b25zdDsKLSAgICBhbmdsZTo6UmVzdWx0IGdldFJlc29sdmVJbWFnZVZpZXcoQ29udGV4dFZrICpj
b250ZXh0VmssCisgICAgYW5nbGU6OlJlc3VsdCBnZXRSZXNvbHZlSW1hZ2VWaWV3KHZrOjpDb250
ZXh0ICpjb250ZXh0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25z
dCB2azo6SW1hZ2VWaWV3ICoqaW1hZ2VWaWV3T3V0KSBjb25zdDsKIAogICAgIC8vIEZvciAzRCB0
ZXh0dXJlcywgdGhlIDJEIHZpZXcgY3JlYXRlZCBmb3IgcmVuZGVyIHRhcmdldCBpcyBpbnZhbGlk
IHRvIHJlYWQgZnJvbS4gIFRoZQogICAgIC8vIGZvbGxvd2luZyB3aWxsIHJldHVybiBhIHZpZXcg
dG8gdGhlIHdob2xlIGltYWdlIChmb3IgYWxsIHR5cGVzLCBpbmNsdWRpbmcgM0QgYW5kIDJEQXJy
YXkpLgotICAgIGFuZ2xlOjpSZXN1bHQgZ2V0QW5kUmV0YWluQ29weUltYWdlVmlldyhDb250ZXh0
VmsgKmNvbnRleHRWaywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgY29uc3Qgdms6OkltYWdlVmlldyAqKmltYWdlVmlld091dCkgY29uc3Q7CisgICAgYW5nbGU6
OlJlc3VsdCBnZXRDb3B5SW1hZ2VWaWV3KHZrOjpDb250ZXh0ICpjb250ZXh0LCBjb25zdCB2azo6
SW1hZ2VWaWV3ICoqaW1hZ2VWaWV3T3V0KSBjb25zdDsKIAogICAgIGFuZ2xlOjpGb3JtYXRJRCBn
ZXRJbWFnZUFjdHVhbEZvcm1hdElEKCkgY29uc3Q7CiAgICAgY29uc3QgYW5nbGU6OkZvcm1hdCAm
Z2V0SW1hZ2VBY3R1YWxGb3JtYXQoKSBjb25zdDsKQEAgLTExOSw4ICsxMTgsNiBAQCBjbGFzcyBS
ZW5kZXJUYXJnZXRWayBmaW5hbCA6IHB1YmxpYyBGcmFtZWJ1ZmZlckF0dGFjaG1lbnRSZW5kZXJU
YXJnZXQKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBkZWZl
cnJlZENsZWFySW5kZXgsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWlu
dDMyX3QgZnJhbWVidWZmZXJMYXllckNvdW50KTsKIAotICAgIHZvaWQgcmV0YWluSW1hZ2VWaWV3
cyhDb250ZXh0VmsgKmNvbnRleHRWaykgY29uc3Q7Ci0KICAgICBib29sIGhhc0RlZmluZWRDb250
ZW50KCkgY29uc3Q7CiAgICAgYm9vbCBoYXNEZWZpbmVkU3RlbmNpbENvbnRlbnQoKSBjb25zdDsK
ICAgICAvLyBNYXJrIGNvbnRlbnQgYXMgdW5kZWZpbmVkIHNvIHRoYXQgY2VydGFpbiBvcHRpbWl6
YXRpb25zIGFyZSBwb3NzaWJsZSBzdWNoIGFzIHVzaW5nIERPTlRfQ0FSRQpAQCAtMTM5LDcgKzEz
Niw3IEBAIGNsYXNzIFJlbmRlclRhcmdldFZrIGZpbmFsIDogcHVibGljIEZyYW1lYnVmZmVyQXR0
YWNobWVudFJlbmRlclRhcmdldAogICAgIH0KIAogICBwcml2YXRlOgotICAgIGFuZ2xlOjpSZXN1
bHQgZ2V0SW1hZ2VWaWV3SW1wbChDb250ZXh0VmsgKmNvbnRleHRWaywKKyAgICBhbmdsZTo6UmVz
dWx0IGdldEltYWdlVmlld0ltcGwodms6OkNvbnRleHQgKmNvbnRleHQsCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHZrOjpJbWFnZUhlbHBlciAmaW1hZ2UsCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdsOjpTcmdiV3JpdGVDb250cm9sTW9kZSBt
b2RlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2azo6SW1hZ2VWaWV3SGVs
cGVyICppbWFnZVZpZXdzLApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3Jj
L2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9SZW5kZXJidWZmZXJWay5jcHAgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL1JlbmRlcmJ1ZmZlclZr
LmNwcAppbmRleCA2MWU5ZjBiNTE0ZWY1ZjVjZDNmNTI3YjlmMWI1MzFjZTE1ZTQ4MGM0Li5kZjJm
NzNkZTdiZjUxZGEwYTQ3ZWI5NmIxZDBmMjk2YzI4ODBmZmM4IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL1JlbmRlcmJ1ZmZl
clZrLmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVy
ZXIvdnVsa2FuL1JlbmRlcmJ1ZmZlclZrLmNwcApAQCAtMjc1LDYgKzI3NSwxNiBAQCB2b2lkIFJl
bmRlcmJ1ZmZlclZrOjpyZWxlYXNlQW5kRGVsZXRlSW1hZ2UoQ29udGV4dFZrICpjb250ZXh0Vmsp
CiB2b2lkIFJlbmRlcmJ1ZmZlclZrOjpyZWxlYXNlSW1hZ2UoQ29udGV4dFZrICpjb250ZXh0Vmsp
CiB7CiAgICAgUmVuZGVyZXJWayAqcmVuZGVyZXIgPSBjb250ZXh0VmstPmdldFJlbmRlcmVyKCk7
CisgICAgaWYgKG1JbWFnZSA9PSBudWxscHRyKQorICAgIHsKKyAgICAgICAgQVNTRVJUKG1JbWFn
ZVZpZXdzLmlzSW1hZ2VWaWV3R2FyYmFnZUVtcHR5KCkgJiYKKyAgICAgICAgICAgICAgIG1NdWx0
aXNhbXBsZWRJbWFnZVZpZXdzLmlzSW1hZ2VWaWV3R2FyYmFnZUVtcHR5KCkpOworICAgIH0KKyAg
ICBlbHNlCisgICAgeworICAgICAgICBtSW1hZ2UtPmNvbGxlY3RWaWV3R2FyYmFnZShyZW5kZXJl
ciwgJm1JbWFnZVZpZXdzKTsKKyAgICAgICAgbUltYWdlLT5jb2xsZWN0Vmlld0dhcmJhZ2UocmVu
ZGVyZXIsICZtTXVsdGlzYW1wbGVkSW1hZ2VWaWV3cyk7CisgICAgfQogCiAgICAgaWYgKG1JbWFn
ZSAmJiBtT3duc0ltYWdlKQogICAgIHsKQEAgLTI4NywxMyArMjk3LDEwIEBAIHZvaWQgUmVuZGVy
YnVmZmVyVms6OnJlbGVhc2VJbWFnZShDb250ZXh0VmsgKmNvbnRleHRWaykKICAgICAgICAgbUlt
YWdlT2JzZXJ2ZXJCaW5kaW5nLmJpbmQobnVsbHB0cik7CiAgICAgfQogCi0gICAgbUltYWdlVmll
d3MucmVsZWFzZShyZW5kZXJlcik7Ci0KICAgICBpZiAobU11bHRpc2FtcGxlZEltYWdlLnZhbGlk
KCkpCiAgICAgewogICAgICAgICBtTXVsdGlzYW1wbGVkSW1hZ2UucmVsZWFzZUltYWdlRnJvbVNo
YXJlQ29udGV4dHMocmVuZGVyZXIsIGNvbnRleHRWayk7CiAgICAgfQotICAgIG1NdWx0aXNhbXBs
ZWRJbWFnZVZpZXdzLnJlbGVhc2UocmVuZGVyZXIpOwogfQogCiBjb25zdCBnbDo6SW50ZXJuYWxG
b3JtYXQgJlJlbmRlcmJ1ZmZlclZrOjpnZXRJbXBsZW1lbnRhdGlvblNpemVkRm9ybWF0KCkgY29u
c3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5k
ZXJlci92dWxrYW4vUmVuZGVyZXJWay5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
bGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL1JlbmRlcmVyVmsuY3BwCmluZGV4IDU4Y2U5NzkzMWM4
NzdiNjk5NGE4NTVjMjNhMDIyNTBmNGFkOTRjZTguLjVjZjUyNjBmMWQzNmJkODdmMmE3ODBjYzM2
MGI4YTEyYTJhOTY5ZDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9s
aWJBTkdMRS9yZW5kZXJlci92dWxrYW4vUmVuZGVyZXJWay5jcHAKKysrIGIvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9SZW5kZXJlclZrLmNwcApA
QCAtNDcsNiArNDcsMTIgQEAgY29uc3RleHByIGJvb2wga0V4cG9zZU5vbkNvbmZvcm1hbnRFeHRl
bnNpb25zQW5kVmVyc2lvbnMgPSB0cnVlOwogI2Vsc2UKIGNvbnN0ZXhwciBib29sIGtFeHBvc2VO
b25Db25mb3JtYW50RXh0ZW5zaW9uc0FuZFZlcnNpb25zID0gZmFsc2U7CiAjZW5kaWYKKworI2lm
IGRlZmluZWQoQU5HTEVfVVNFX1NQSVJWX0dFTkVSQVRJT05fVEhST1VHSF9HTFNMQU5HKQorY29u
c3RleHByIGJvb2wga1VzZVNwaXJ2R2VuVGhyb3VnaEdsc2xhbmcgPSB0cnVlOworI2Vsc2UKK2Nv
bnN0ZXhwciBib29sIGtVc2VTcGlydkdlblRocm91Z2hHbHNsYW5nICAgICAgICAgICAgICAgID0g
ZmFsc2U7CisjZW5kaWYKIH0gIC8vIGFub255bW91cyBuYW1lc3BhY2UKIAogbmFtZXNwYWNlIHJ4
CkBAIC0xODMsMTEgKzE4OSw5IEBAIGNvbnN0ZXhwciBjb25zdCBjaGFyICprU2tpcHBlZE1lc3Nh
Z2VzW10gPSB7CiAgICAgLy8gZnJhbWVidWZmZXIgdGhhdCdzIGFjY2Vzc2VkIGJ5IHRoZSBjb21t
YW5kIGJ1ZmZlciBpcyBpZGVudGljYWxseSBsYWlkIG91dC4KICAgICAvLyBodHRwOi8vYW5nbGVi
dWcuY29tLzY4MTEKICAgICAiVlVJRC12a0NtZEV4ZWN1dGVDb21tYW5kcy1wQ29tbWFuZEJ1ZmZl
cnMtMDAwOTkiLAotICAgIC8vIFZNQSBpcyB1c2VkIHRvIGFsbG9jYXRlIGJ1ZmZlciBtZW1vcnks
IGFuZCBpdCdzIG5vdCBjaGVja2luZyB0aGUgcmVzdWx0IG9mCi0gICAgLy8gdmtHZXRCdWZmZXJN
ZW1vcnlSZXF1aXJlbWVudHMgYWdhaW5zdCB0aGUgaGVhcCBzaXplIGJlZm9yZSBhdHRlbXB0aW5n
IHRvIG1ha2UgYW4gYWxsb2NhdGlvbi4KLSAgICAvLyBUaGlzIGxlYWRzIHRvIGEgdmFsaWRhdGlv
biBlcnJvciB0aGF0IGlzIGJlbmlnbiBhcyB0aGUgc3Vic2VxdWVudCBhbGxvY2F0aW9uIHdpbGwg
ZmFpbCBhbnl3YXkKLSAgICAvLyAoaS5lLiBhbiBPT00gd2lsbCBiZSBnZW5lcmF0ZWQgYnkgVnVs
a2FuIGluc3RlYWQgb2YgQU5HTEUgdG8gdGhlIHNhbWUgZWZmZWN0KS4KLSAgICAiVlVJRC12a0Fs
bG9jYXRlTWVtb3J5LXBBbGxvY2F0ZUluZm8tMDE3MTMiLAorICAgIC8vIGh0dHA6Ly9hbmdsZWJ1
Zy5jb20vNzEwNQorICAgICJWVUlELXZrQ21kRHJhdy1Ob25lLTA2NTM4IiwKKyAgICAiVlVJRC12
a0NtZERyYXdJbmRleGVkLU5vbmUtMDY1MzgiLAogfTsKIAogc3RydWN0IFNraXBwZWRTeW5jdmFs
TWVzc2FnZQpAQCAtNTMwLDYgKzUzNCwxNCBAQCBjb25zdGV4cHIgU2tpcHBlZFN5bmN2YWxNZXNz
YWdlIGtTa2lwcGVkU3luY3ZhbE1lc3NhZ2VzW10gPSB7CiAgICAgICJWS19JTUFHRV9MQVlPVVRf
R0VORVJBTCkuIEFjY2VzcyBpbmZvICh1c2FnZTogU1lOQ19JTUFHRV9MQVlPVVRfVFJBTlNJVElP
TiwgcHJpb3JfdXNhZ2U6ICIKICAgICAgIlNZTkNfQ09MT1JfQVRUQUNITUVOVF9PVVRQVVRfQ09M
T1JfQVRUQUNITUVOVF9XUklURSwgd3JpdGVfYmFycmllcnM6IiwKICAgICAgZmFsc2UsIHRydWV9
LAorICAgIC8vIGh0dHA6Ly9hbmdsZWJ1Zy5jb20vNzA3MAorICAgIHsKKyAgICAgICAgIlNZTkMt
SEFaQVJELVJFQURfQUZURVJfV1JJVEUiLAorICAgICAgICAidHlwZTogVktfREVTQ1JJUFRPUl9U
WVBFX0NPTUJJTkVEX0lNQUdFX1NBTVBMRVIsIGltYWdlTGF5b3V0OiBWS19JTUFHRV9MQVlPVVRf
R0VORVJBTCwgIgorICAgICAgICAiYmluZGluZyAjMCwgaW5kZXggMC4gQWNjZXNzIGluZm8gKHVz
YWdlOiBTWU5DX0ZSQUdNRU5UX1NIQURFUl9TSEFERVJfU1RPUkFHRV9SRUFELCAiCisgICAgICAg
ICJwcmlvcl91c2FnZTogU1lOQ19DT0xPUl9BVFRBQ0hNRU5UX09VVFBVVF9DT0xPUl9BVFRBQ0hN
RU5UX1dSSVRFLCB3cml0ZV9iYXJyaWVyczogMCwgIgorICAgICAgICAiY29tbWFuZDogdmtDbWRC
ZWdpblJlbmRlclBhc3MiLAorICAgIH0sCiB9OwogCiBlbnVtIGNsYXNzIERlYnVnTWVzc2FnZVJl
cG9ydApAQCAtMTE0NCw3ICsxMTU2LDggQEAgUmVuZGVyZXJWazo6flJlbmRlcmVyVmsoKQogYm9v
bCBSZW5kZXJlclZrOjpoYXNTaGFyZWRHYXJiYWdlKCkKIHsKICAgICBzdGQ6OmxvY2tfZ3VhcmQ8
c3RkOjptdXRleD4gbG9jayhtR2FyYmFnZU11dGV4KTsKLSAgICByZXR1cm4gIW1TaGFyZWRHYXJi
YWdlLmVtcHR5KCkgfHwgIW1TdWJhbGxvY2F0aW9uR2FyYmFnZS5lbXB0eSgpOworICAgIHJldHVy
biAhbVNoYXJlZEdhcmJhZ2UuZW1wdHkoKSB8fCAhbVBlbmRpbmdTdWJtaXNzaW9uR2FyYmFnZS5l
bXB0eSgpIHx8CisgICAgICAgICAgICFtU3ViYWxsb2NhdGlvbkdhcmJhZ2UuZW1wdHkoKSB8fCAh
bVBlbmRpbmdTdWJtaXNzaW9uU3ViYWxsb2NhdGlvbkdhcmJhZ2UuZW1wdHkoKTsKIH0KIAogdm9p
ZCBSZW5kZXJlclZrOjpyZWxlYXNlU2hhcmVkUmVzb3VyY2VzKHZrOjpSZXNvdXJjZVVzZUxpc3Qg
KnJlc291cmNlTGlzdCkKQEAgLTEzODcsNiArMTQwMCwxMiBAQCBhbmdsZTo6UmVzdWx0IFJlbmRl
cmVyVms6OmluaXRpYWxpemUoRGlzcGxheVZrICpkaXNwbGF5VmssCiAgICAgICAgIEFOR0xFX0ZF
QVRVUkVfQ09ORElUSU9OKCZtRmVhdHVyZXMsIHN1cHBvcnRzU3VyZmFjZVByb3RlY3RlZENhcGFi
aWxpdGllc0V4dGVuc2lvbiwgdHJ1ZSk7CiAgICAgfQogCisgICAgaWYgKEV4dGVuc2lvbkZvdW5k
KFZLX0dPT0dMRV9TVVJGQUNFTEVTU19RVUVSWV9FWFRFTlNJT05fTkFNRSwgaW5zdGFuY2VFeHRl
bnNpb25OYW1lcykpCisgICAgeworICAgICAgICBtRW5hYmxlZEluc3RhbmNlRXh0ZW5zaW9ucy5w
dXNoX2JhY2soVktfR09PR0xFX1NVUkZBQ0VMRVNTX1FVRVJZX0VYVEVOU0lPTl9OQU1FKTsKKyAg
ICAgICAgQU5HTEVfRkVBVFVSRV9DT05ESVRJT04oJm1GZWF0dXJlcywgc3VwcG9ydHNTdXJmYWNl
bGVzc1F1ZXJ5RXh0ZW5zaW9uLCB0cnVlKTsKKyAgICB9CisKICAgICAvLyBWZXJpZnkgdGhlIHJl
cXVpcmVkIGV4dGVuc2lvbnMgYXJlIGluIHRoZSBleHRlbnNpb24gbmFtZXMgc2V0LiBGYWlsIGlm
IG5vdC4KICAgICBzdGQ6OnNvcnQobUVuYWJsZWRJbnN0YW5jZUV4dGVuc2lvbnMuYmVnaW4oKSwg
bUVuYWJsZWRJbnN0YW5jZUV4dGVuc2lvbnMuZW5kKCksIFN0ckxlc3MpOwogICAgIEFOR0xFX1ZL
X1RSWShkaXNwbGF5VmssCkBAIC0xNDAwLDYgKzE0MTksMTkgQEAgYW5nbGU6OlJlc3VsdCBSZW5k
ZXJlclZrOjppbml0aWFsaXplKERpc3BsYXlWayAqZGlzcGxheVZrLAogICAgICAgICAgICAgVktf
S0hSX0dFVF9QSFlTSUNBTF9ERVZJQ0VfUFJPUEVSVElFU18yX0VYVEVOU0lPTl9OQU1FKTsKICAg
ICB9CiAKKyAgICBpZiAoRXh0ZW5zaW9uRm91bmQoVktfS0hSX0VYVEVSTkFMX0ZFTkNFX0NBUEFC
SUxJVElFU19FWFRFTlNJT05fTkFNRSwgaW5zdGFuY2VFeHRlbnNpb25OYW1lcykpCisgICAgewor
ICAgICAgICBtRW5hYmxlZEluc3RhbmNlRXh0ZW5zaW9ucy5wdXNoX2JhY2soVktfS0hSX0VYVEVS
TkFMX0ZFTkNFX0NBUEFCSUxJVElFU19FWFRFTlNJT05fTkFNRSk7CisgICAgICAgIEFOR0xFX0ZF
QVRVUkVfQ09ORElUSU9OKCZtRmVhdHVyZXMsIHN1cHBvcnRzRXh0ZXJuYWxGZW5jZUNhcGFiaWxp
dGllcywgdHJ1ZSk7CisgICAgfQorCisgICAgaWYgKEV4dGVuc2lvbkZvdW5kKFZLX0tIUl9FWFRF
Uk5BTF9TRU1BUEhPUkVfQ0FQQUJJTElUSUVTX0VYVEVOU0lPTl9OQU1FLAorICAgICAgICAgICAg
ICAgICAgICAgICBpbnN0YW5jZUV4dGVuc2lvbk5hbWVzKSkKKyAgICB7CisgICAgICAgIG1FbmFi
bGVkSW5zdGFuY2VFeHRlbnNpb25zLnB1c2hfYmFjayhWS19LSFJfRVhURVJOQUxfU0VNQVBIT1JF
X0NBUEFCSUxJVElFU19FWFRFTlNJT05fTkFNRSk7CisgICAgICAgIEFOR0xFX0ZFQVRVUkVfQ09O
RElUSU9OKCZtRmVhdHVyZXMsIHN1cHBvcnRzRXh0ZXJuYWxTZW1hcGhvcmVDYXBhYmlsaXRpZXMs
IHRydWUpOworICAgIH0KKwogICAgIFZrQXBwbGljYXRpb25JbmZvIGFwcGxpY2F0aW9uSW5mbyAg
PSB7fTsKICAgICBhcHBsaWNhdGlvbkluZm8uc1R5cGUgICAgICAgICAgICAgID0gVktfU1RSVUNU
VVJFX1RZUEVfQVBQTElDQVRJT05fSU5GTzsKICAgICBzdGQ6OnN0cmluZyBhcHBOYW1lICAgICAg
ICAgICAgICAgID0gYW5nbGU6OkdldEV4ZWN1dGFibGVOYW1lKCk7CkBAIC0xNDU1LDYgKzE0ODcs
MTUgQEAgYW5nbGU6OlJlc3VsdCBSZW5kZXJlclZrOjppbml0aWFsaXplKERpc3BsYXlWayAqZGlz
cGxheVZrLAogICAgIHZhbGlkYXRpb25GZWF0dXJlcy5lbmFibGVkVmFsaWRhdGlvbkZlYXR1cmVD
b3VudCA9IDE7CiAgICAgdmFsaWRhdGlvbkZlYXR1cmVzLnBFbmFibGVkVmFsaWRhdGlvbkZlYXR1
cmVzICAgID0gZW5hYmxlZEZlYXR1cmVzOwogCisgICAgLy8gaHR0cDovL2FuZ2xlYnVnLmNvbS83
MDUwIC0gU2hhZGVyIHZhbGlkYXRpb24gY2FjaGluZyBpcyBicm9rZW4gb24gQW5kcm9pZAorICAg
IFZrVmFsaWRhdGlvbkZlYXR1cmVEaXNhYmxlRVhUIGRpc2FibGVkRmVhdHVyZXNbXSA9IHsKKyAg
ICAgICAgVktfVkFMSURBVElPTl9GRUFUVVJFX0RJU0FCTEVfU0hBREVSX1ZBTElEQVRJT05fQ0FD
SEVfRVhUfTsKKyAgICBpZiAoSXNBbmRyb2lkKCkpCisgICAgeworICAgICAgICB2YWxpZGF0aW9u
RmVhdHVyZXMuZGlzYWJsZWRWYWxpZGF0aW9uRmVhdHVyZUNvdW50ID0gMTsKKyAgICAgICAgdmFs
aWRhdGlvbkZlYXR1cmVzLnBEaXNhYmxlZFZhbGlkYXRpb25GZWF0dXJlcyAgICA9IGRpc2FibGVk
RmVhdHVyZXM7CisgICAgfQorCiAgICAgaWYgKG1FbmFibGVWYWxpZGF0aW9uTGF5ZXJzKQogICAg
IHsKICAgICAgICAgLy8gRW5hYmxlIGJlc3QgcHJhY3RpY2VzIG91dHB1dCB3aGljaCBpbmNsdWRl
cyBwZXJmZG9jIGxheWVyCkBAIC0xNjAzLDE2ICsxNjQ0LDE3IEBAIGFuZ2xlOjpSZXN1bHQgUmVu
ZGVyZXJWazo6aW5pdGlhbGl6ZShEaXNwbGF5VmsgKmRpc3BsYXlWaywKICAgICBWa01lbW9yeVBy
b3BlcnR5RmxhZ3MgcmVxdWlyZWRGbGFncyA9IFZLX01FTU9SWV9QUk9QRVJUWV9IT1NUX1ZJU0lC
TEVfQklUOwogICAgIGJvb2wgcGVyc2lzdGVudGx5TWFwcGVkICAgICAgICAgICAgID0gbUZlYXR1
cmVzLnBlcnNpc3RlbnRseU1hcHBlZEJ1ZmZlcnMuZW5hYmxlZDsKIAotICAgIC8vIENvaGVyZW50
IHN0YWdpbmcgYnVmZmVyCisgICAgLy8gVW5jYWNoZWQgY29oZXJlbnQgc3RhZ2luZyBidWZmZXIK
ICAgICBWa01lbW9yeVByb3BlcnR5RmxhZ3MgcHJlZmVycmVkRmxhZ3MgPSBWS19NRU1PUllfUFJP
UEVSVFlfSE9TVF9DT0hFUkVOVF9CSVQ7CiAgICAgQU5HTEVfVktfVFJZKGRpc3BsYXlWaywgbUFs
bG9jYXRvci5maW5kTWVtb3J5VHlwZUluZGV4Rm9yQnVmZmVySW5mbygKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgY3JlYXRlSW5mbywgcmVxdWlyZWRGbGFncywgcHJlZmVycmVkRmxh
Z3MsIHBlcnNpc3RlbnRseU1hcHBlZCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Jm1Db2hlcmVudFN0YWdpbmdCdWZmZXJNZW1vcnlUeXBlSW5kZXgpKTsKICAgICBBU1NFUlQobUNv
aGVyZW50U3RhZ2luZ0J1ZmZlck1lbW9yeVR5cGVJbmRleCAhPSBrSW52YWxpZE1lbW9yeVR5cGVJ
bmRleCk7CiAKLSAgICAvLyBOb24tY29oZXJlbnQgc3RhZ2luZyBidWZmZXIKKyAgICAvLyBDYWNo
ZWQgKGIvMjE5OTc0MzY5KSBOb24tY29oZXJlbnQgc3RhZ2luZyBidWZmZXIKKyAgICBwcmVmZXJy
ZWRGbGFncyA9IFZLX01FTU9SWV9QUk9QRVJUWV9IT1NUX0NBQ0hFRF9CSVQ7CiAgICAgQU5HTEVf
VktfVFJZKGRpc3BsYXlWaywgbUFsbG9jYXRvci5maW5kTWVtb3J5VHlwZUluZGV4Rm9yQnVmZmVy
SW5mbygKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY3JlYXRlSW5mbywgcmVxdWly
ZWRGbGFncywgMCwgcGVyc2lzdGVudGx5TWFwcGVkLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBjcmVhdGVJbmZvLCByZXF1aXJlZEZsYWdzLCBwcmVmZXJyZWRGbGFncywgcGVyc2lz
dGVudGx5TWFwcGVkLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmbU5vbkNvaGVy
ZW50U3RhZ2luZ0J1ZmZlck1lbW9yeVR5cGVJbmRleCkpOwogICAgIEFTU0VSVChtTm9uQ29oZXJl
bnRTdGFnaW5nQnVmZmVyTWVtb3J5VHlwZUluZGV4ICE9IGtJbnZhbGlkTWVtb3J5VHlwZUluZGV4
KTsKIApAQCAtMTYyMiwxMSArMTY2NCw5IEBAIGFuZ2xlOjpSZXN1bHQgUmVuZGVyZXJWazo6aW5p
dGlhbGl6ZShEaXNwbGF5VmsgKmRpc3BsYXlWaywKICAgICBBU1NFUlQoZ2w6OmlzUG93MihtUGh5
c2ljYWxEZXZpY2VQcm9wZXJ0aWVzLmxpbWl0cy5ub25Db2hlcmVudEF0b21TaXplKSk7CiAgICAg
QVNTRVJUKGdsOjppc1BvdzIobVBoeXNpY2FsRGV2aWNlUHJvcGVydGllcy5saW1pdHMub3B0aW1h
bEJ1ZmZlckNvcHlPZmZzZXRBbGlnbm1lbnQpKTsKICAgICBtU3RhZ2luZ0J1ZmZlckFsaWdubWVu
dCA9IHN0ZDo6bWF4KAotICAgICAgICBtU3RhZ2luZ0J1ZmZlckFsaWdubWVudCwKLSAgICAgICAg
c3RhdGljX2Nhc3Q8c2l6ZV90PihtUGh5c2ljYWxEZXZpY2VQcm9wZXJ0aWVzLmxpbWl0cy5vcHRp
bWFsQnVmZmVyQ29weU9mZnNldEFsaWdubWVudCkpOwotICAgIG1TdGFnaW5nQnVmZmVyQWxpZ25t
ZW50ID0KLSAgICAgICAgc3RkOjptYXgobVN0YWdpbmdCdWZmZXJBbGlnbm1lbnQsCi0gICAgICAg
ICAgICAgICAgIHN0YXRpY19jYXN0PHNpemVfdD4obVBoeXNpY2FsRGV2aWNlUHJvcGVydGllcy5s
aW1pdHMubm9uQ29oZXJlbnRBdG9tU2l6ZSkpOworICAgICAgICB7bVN0YWdpbmdCdWZmZXJBbGln
bm1lbnQsCisgICAgICAgICBzdGF0aWNfY2FzdDxzaXplX3Q+KG1QaHlzaWNhbERldmljZVByb3Bl
cnRpZXMubGltaXRzLm9wdGltYWxCdWZmZXJDb3B5T2Zmc2V0QWxpZ25tZW50KSwKKyAgICAgICAg
IHN0YXRpY19jYXN0PHNpemVfdD4obVBoeXNpY2FsRGV2aWNlUHJvcGVydGllcy5saW1pdHMubm9u
Q29oZXJlbnRBdG9tU2l6ZSl9KTsKICAgICBBU1NFUlQoZ2w6OmlzUG93MihtU3RhZ2luZ0J1ZmZl
ckFsaWdubWVudCkpOwogCiAgICAgLy8gRGV2aWNlIGxvY2FsIHZlcnRleCBjb252ZXJzaW9uIGJ1
ZmZlcgpAQCAtMTY0MiwxMCArMTY4MiwxMiBAQCBhbmdsZTo6UmVzdWx0IFJlbmRlcmVyVms6Omlu
aXRpYWxpemUoRGlzcGxheVZrICpkaXNwbGF5VmssCiAgICAgLy8gc3RhZ2luZyBidWZmZXIKICAg
ICBtSG9zdFZpc2libGVWZXJ0ZXhDb252ZXJzaW9uQnVmZmVyTWVtb3J5VHlwZUluZGV4ID0gbU5v
bkNvaGVyZW50U3RhZ2luZ0J1ZmZlck1lbW9yeVR5cGVJbmRleDsKICAgICAvLyBXZSBtYXkgdXNl
IGNvbXB1dGUgc2hhZGVyIHRvIGRvIGNvbnZlcnNpb24sIHNvIHdlIG11c3QgbWVldAotICAgIC8v
IG1pblN0b3JhZ2VCdWZmZXJPZmZzZXRBbGlnbm1lbnQgcmVxdWlyZW1lbnQgYXMgd2VsbC4KKyAg
ICAvLyBtaW5TdG9yYWdlQnVmZmVyT2Zmc2V0QWxpZ25tZW50IHJlcXVpcmVtZW50IGFzIHdlbGwu
IEFsc28gdGFrZSBpbnRvIGFjY291bnQgbm9uLWNvaGVyZW50CisgICAgLy8gYWxpZ25tZW50IHJl
cXVpcmVtZW50cy4KICAgICBtVmVydGV4Q29udmVyc2lvbkJ1ZmZlckFsaWdubWVudCA9IHN0ZDo6
bWF4KAotICAgICAgICB2azo6a1ZlcnRleEJ1ZmZlckFsaWdubWVudCwKLSAgICAgICAgc3RhdGlj
X2Nhc3Q8c2l6ZV90PihtUGh5c2ljYWxEZXZpY2VQcm9wZXJ0aWVzLmxpbWl0cy5taW5TdG9yYWdl
QnVmZmVyT2Zmc2V0QWxpZ25tZW50KSk7CisgICAgICAgIHt2azo6a1ZlcnRleEJ1ZmZlckFsaWdu
bWVudCwKKyAgICAgICAgIHN0YXRpY19jYXN0PHNpemVfdD4obVBoeXNpY2FsRGV2aWNlUHJvcGVy
dGllcy5saW1pdHMubWluU3RvcmFnZUJ1ZmZlck9mZnNldEFsaWdubWVudCksCisgICAgICAgICBz
dGF0aWNfY2FzdDxzaXplX3Q+KG1QaHlzaWNhbERldmljZVByb3BlcnRpZXMubGltaXRzLm5vbkNv
aGVyZW50QXRvbVNpemUpfSk7CiAgICAgQVNTRVJUKGdsOjppc1BvdzIobVZlcnRleENvbnZlcnNp
b25CdWZmZXJBbGlnbm1lbnQpKTsKIAogICAgIHsKQEAgLTE3MjcsMTIgKzE3NjksNiBAQCB2b2lk
IFJlbmRlcmVyVms6OnF1ZXJ5RGV2aWNlRXh0ZW5zaW9uRmVhdHVyZXMoY29uc3Qgdms6OkV4dGVu
c2lvbk5hbWVMaXN0ICZkZXZpYwogICAgIG1Ecml2ZXJQcm9wZXJ0aWVzICAgICAgID0ge307CiAg
ICAgbURyaXZlclByb3BlcnRpZXMuc1R5cGUgPSBWS19TVFJVQ1RVUkVfVFlQRV9QSFlTSUNBTF9E
RVZJQ0VfRFJJVkVSX1BST1BFUlRJRVM7CiAKLSAgICBtRXh0ZXJuYWxGZW5jZVByb3BlcnRpZXMg
ICAgICAgPSB7fTsKLSAgICBtRXh0ZXJuYWxGZW5jZVByb3BlcnRpZXMuc1R5cGUgPSBWS19TVFJV
Q1RVUkVfVFlQRV9FWFRFUk5BTF9GRU5DRV9QUk9QRVJUSUVTOwotCi0gICAgbUV4dGVybmFsU2Vt
YXBob3JlUHJvcGVydGllcyAgICAgICA9IHt9OwotICAgIG1FeHRlcm5hbFNlbWFwaG9yZVByb3Bl
cnRpZXMuc1R5cGUgPSBWS19TVFJVQ1RVUkVfVFlQRV9FWFRFUk5BTF9TRU1BUEhPUkVfUFJPUEVS
VElFUzsKLQogICAgIG1TYW1wbGVyWWNiY3JDb252ZXJzaW9uRmVhdHVyZXMgPSB7fTsKICAgICBt
U2FtcGxlclljYmNyQ29udmVyc2lvbkZlYXR1cmVzLnNUeXBlID0KICAgICAgICAgVktfU1RSVUNU
VVJFX1RZUEVfUEhZU0lDQUxfREVWSUNFX1NBTVBMRVJfWUNCQ1JfQ09OVkVSU0lPTl9GRUFUVVJF
UzsKQEAgLTE3NTEsNiArMTc4NywxNCBAQCB2b2lkIFJlbmRlcmVyVms6OnF1ZXJ5RGV2aWNlRXh0
ZW5zaW9uRmVhdHVyZXMoY29uc3Qgdms6OkV4dGVuc2lvbk5hbWVMaXN0ICZkZXZpYwogICAgIG1E
ZXB0aENsaXBDb250cm9sRmVhdHVyZXMuc1R5cGUgPQogICAgICAgICBWS19TVFJVQ1RVUkVfVFlQ
RV9QSFlTSUNBTF9ERVZJQ0VfREVQVEhfQ0xJUF9DT05UUk9MX0ZFQVRVUkVTX0VYVDsKIAorICAg
IG1CbGVuZE9wZXJhdGlvbkFkdmFuY2VkRmVhdHVyZXMgPSB7fTsKKyAgICBtQmxlbmRPcGVyYXRp
b25BZHZhbmNlZEZlYXR1cmVzLnNUeXBlID0KKyAgICAgICAgVktfU1RSVUNUVVJFX1RZUEVfUEhZ
U0lDQUxfREVWSUNFX0JMRU5EX09QRVJBVElPTl9BRFZBTkNFRF9GRUFUVVJFU19FWFQ7CisKKyAg
ICBtQmxlbmRPcGVyYXRpb25BZHZhbmNlZFByb3BlcnRpZXMgPSB7fTsKKyAgICBtQmxlbmRPcGVy
YXRpb25BZHZhbmNlZFByb3BlcnRpZXMuc1R5cGUgPQorICAgICAgICBWS19TVFJVQ1RVUkVfVFlQ
RV9QSFlTSUNBTF9ERVZJQ0VfQkxFTkRfT1BFUkFUSU9OX0FEVkFOQ0VEX1BST1BFUlRJRVNfRVhU
OworCiAgICAgaWYgKCF2a0dldFBoeXNpY2FsRGV2aWNlUHJvcGVydGllczJLSFIgfHwgIXZrR2V0
UGh5c2ljYWxEZXZpY2VGZWF0dXJlczJLSFIpCiAgICAgewogICAgICAgICByZXR1cm47CkBAIC0x
ODc4LDMwICsxOTIyLDE0IEBAIHZvaWQgUmVuZGVyZXJWazo6cXVlcnlEZXZpY2VFeHRlbnNpb25G
ZWF0dXJlcyhjb25zdCB2azo6RXh0ZW5zaW9uTmFtZUxpc3QgJmRldmljCiAgICAgICAgIHZrOjpB
ZGRUb1BOZXh0Q2hhaW4oJmRldmljZUZlYXR1cmVzLCAmbURlcHRoQ2xpcENvbnRyb2xGZWF0dXJl
cyk7CiAgICAgfQogCi0gICAgdmtHZXRQaHlzaWNhbERldmljZUZlYXR1cmVzMktIUihtUGh5c2lj
YWxEZXZpY2UsICZkZXZpY2VGZWF0dXJlcyk7Ci0gICAgdmtHZXRQaHlzaWNhbERldmljZVByb3Bl
cnRpZXMyS0hSKG1QaHlzaWNhbERldmljZSwgJmRldmljZVByb3BlcnRpZXMpOwotCi0gICAgLy8g
RmVuY2UgcHJvcGVydGllcwotICAgIGlmIChtRmVhdHVyZXMuc3VwcG9ydHNFeHRlcm5hbEZlbmNl
Q2FwYWJpbGl0aWVzLmVuYWJsZWQpCisgICAgaWYgKEV4dGVuc2lvbkZvdW5kKFZLX0VYVF9CTEVO
RF9PUEVSQVRJT05fQURWQU5DRURfRVhURU5TSU9OX05BTUUsIGRldmljZUV4dGVuc2lvbk5hbWVz
KSkKICAgICB7Ci0gICAgICAgIFZrUGh5c2ljYWxEZXZpY2VFeHRlcm5hbEZlbmNlSW5mbyBleHRl
cm5hbEZlbmNlSW5mbyA9IHt9OwotICAgICAgICBleHRlcm5hbEZlbmNlSW5mby5zVHlwZSAgICAg
ID0gVktfU1RSVUNUVVJFX1RZUEVfUEhZU0lDQUxfREVWSUNFX0VYVEVSTkFMX0ZFTkNFX0lORk87
Ci0gICAgICAgIGV4dGVybmFsRmVuY2VJbmZvLmhhbmRsZVR5cGUgPSBWS19FWFRFUk5BTF9GRU5D
RV9IQU5ETEVfVFlQRV9TWU5DX0ZEX0JJVF9LSFI7Ci0KLSAgICAgICAgdmtHZXRQaHlzaWNhbERl
dmljZUV4dGVybmFsRmVuY2VQcm9wZXJ0aWVzS0hSKG1QaHlzaWNhbERldmljZSwgJmV4dGVybmFs
RmVuY2VJbmZvLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgJm1FeHRlcm5hbEZlbmNlUHJvcGVydGllcyk7CisgICAgICAgIHZrOjpBZGRUb1BO
ZXh0Q2hhaW4oJmRldmljZUZlYXR1cmVzLCAmbUJsZW5kT3BlcmF0aW9uQWR2YW5jZWRGZWF0dXJl
cyk7CisgICAgICAgIHZrOjpBZGRUb1BOZXh0Q2hhaW4oJmRldmljZVByb3BlcnRpZXMsICZtQmxl
bmRPcGVyYXRpb25BZHZhbmNlZFByb3BlcnRpZXMpOwogICAgIH0KIAotICAgIC8vIFNlbWFwaG9y
ZSBwcm9wZXJ0aWVzCi0gICAgaWYgKG1GZWF0dXJlcy5zdXBwb3J0c0V4dGVybmFsU2VtYXBob3Jl
Q2FwYWJpbGl0aWVzLmVuYWJsZWQpCi0gICAgewotICAgICAgICBWa1BoeXNpY2FsRGV2aWNlRXh0
ZXJuYWxTZW1hcGhvcmVJbmZvIGV4dGVybmFsU2VtYXBob3JlSW5mbyA9IHt9OwotICAgICAgICBl
eHRlcm5hbFNlbWFwaG9yZUluZm8uc1R5cGUgPSBWS19TVFJVQ1RVUkVfVFlQRV9QSFlTSUNBTF9E
RVZJQ0VfRVhURVJOQUxfU0VNQVBIT1JFX0lORk87Ci0gICAgICAgIGV4dGVybmFsU2VtYXBob3Jl
SW5mby5oYW5kbGVUeXBlID0gVktfRVhURVJOQUxfU0VNQVBIT1JFX0hBTkRMRV9UWVBFX1NZTkNf
RkRfQklUX0tIUjsKLQotICAgICAgICB2a0dldFBoeXNpY2FsRGV2aWNlRXh0ZXJuYWxTZW1hcGhv
cmVQcm9wZXJ0aWVzS0hSKG1QaHlzaWNhbERldmljZSwgJmV4dGVybmFsU2VtYXBob3JlSW5mbywK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAmbUV4dGVybmFsU2VtYXBob3JlUHJvcGVydGllcyk7Ci0gICAgfQorICAgIHZrR2V0UGh5c2lj
YWxEZXZpY2VGZWF0dXJlczJLSFIobVBoeXNpY2FsRGV2aWNlLCAmZGV2aWNlRmVhdHVyZXMpOwor
ICAgIHZrR2V0UGh5c2ljYWxEZXZpY2VQcm9wZXJ0aWVzMktIUihtUGh5c2ljYWxEZXZpY2UsICZk
ZXZpY2VQcm9wZXJ0aWVzKTsKIAogICAgIC8vIENsZWFuIHVwIHBOZXh0IGNoYWlucwogICAgIG1M
aW5lUmFzdGVyaXphdGlvbkZlYXR1cmVzLnBOZXh0ICAgICAgICAgICAgICAgICA9IG51bGxwdHI7
CkBAIC0xOTI2LDYgKzE5NTQsOCBAQCB2b2lkIFJlbmRlcmVyVms6OnF1ZXJ5RGV2aWNlRXh0ZW5z
aW9uRmVhdHVyZXMoY29uc3Qgdms6OkV4dGVuc2lvbk5hbWVMaXN0ICZkZXZpYwogICAgIG1Qcm90
ZWN0ZWRNZW1vcnlQcm9wZXJ0aWVzLnBOZXh0ICAgICAgICAgICAgICAgICA9IG51bGxwdHI7CiAg
ICAgbUhvc3RRdWVyeVJlc2V0RmVhdHVyZXMucE5leHQgICAgICAgICAgICAgICAgICAgID0gbnVs
bHB0cjsKICAgICBtRGVwdGhDbGlwQ29udHJvbEZlYXR1cmVzLnBOZXh0ICAgICAgICAgICAgICAg
ICAgPSBudWxscHRyOworICAgIG1CbGVuZE9wZXJhdGlvbkFkdmFuY2VkRmVhdHVyZXMucE5leHQg
ICAgICAgICAgICA9IG51bGxwdHI7CisgICAgbUJsZW5kT3BlcmF0aW9uQWR2YW5jZWRQcm9wZXJ0
aWVzLnBOZXh0ICAgICAgICAgID0gbnVsbHB0cjsKIH0KIAogYW5nbGU6OlJlc3VsdCBSZW5kZXJl
clZrOjppbml0aWFsaXplRGV2aWNlKERpc3BsYXlWayAqZGlzcGxheVZrLCB1aW50MzJfdCBxdWV1
ZUZhbWlseUluZGV4KQpAQCAtMjExMSwxNiArMjE0MSw2IEBAIGFuZ2xlOjpSZXN1bHQgUmVuZGVy
ZXJWazo6aW5pdGlhbGl6ZURldmljZShEaXNwbGF5VmsgKmRpc3BsYXlWaywgdWludDMyX3QgcXVl
dWVGCiAjZW5kaWYgIC8vICFkZWZpbmVkKEFOR0xFX1NIQVJFRF9MSUJWVUxLQU4pCiAgICAgfQog
Ci0gICAgaWYgKGdldEZlYXR1cmVzKCkuc3VwcG9ydHNFeHRlcm5hbFNlbWFwaG9yZUNhcGFiaWxp
dGllcy5lbmFibGVkKQotICAgIHsKLSAgICAgICAgbUVuYWJsZWREZXZpY2VFeHRlbnNpb25zLnB1
c2hfYmFjayhWS19LSFJfRVhURVJOQUxfU0VNQVBIT1JFX0NBUEFCSUxJVElFU19FWFRFTlNJT05f
TkFNRSk7Ci0gICAgfQotCi0gICAgaWYgKGdldEZlYXR1cmVzKCkuc3VwcG9ydHNFeHRlcm5hbEZl
bmNlQ2FwYWJpbGl0aWVzLmVuYWJsZWQpCi0gICAgewotICAgICAgICBtRW5hYmxlZERldmljZUV4
dGVuc2lvbnMucHVzaF9iYWNrKFZLX0tIUl9FWFRFUk5BTF9GRU5DRV9DQVBBQklMSVRJRVNfRVhU
RU5TSU9OX05BTUUpOwotICAgIH0KLQogICAgIGlmIChnZXRGZWF0dXJlcygpLnN1cHBvcnRzRXh0
ZXJuYWxTZW1hcGhvcmVGZC5lbmFibGVkKQogICAgIHsKICAgICAgICAgbUVuYWJsZWREZXZpY2VF
eHRlbnNpb25zLnB1c2hfYmFjayhWS19LSFJfRVhURVJOQUxfU0VNQVBIT1JFX0ZEX0VYVEVOU0lP
Tl9OQU1FKTsKQEAgLTIxMjgsNyArMjE0OCw2IEBAIGFuZ2xlOjpSZXN1bHQgUmVuZGVyZXJWazo6
aW5pdGlhbGl6ZURldmljZShEaXNwbGF5VmsgKmRpc3BsYXlWaywgdWludDMyX3QgcXVldWVGCiAK
ICAgICBpZiAoZ2V0RmVhdHVyZXMoKS5zdXBwb3J0c0V4dGVybmFsU2VtYXBob3JlQ2FwYWJpbGl0
aWVzLmVuYWJsZWQpCiAgICAgewotICAgICAgICBtRW5hYmxlZERldmljZUV4dGVuc2lvbnMucHVz
aF9iYWNrKFZLX0tIUl9FWFRFUk5BTF9TRU1BUEhPUkVfQ0FQQUJJTElUSUVTX0VYVEVOU0lPTl9O
QU1FKTsKICNpZiAhZGVmaW5lZChBTkdMRV9TSEFSRURfTElCVlVMS0FOKQogICAgICAgICBJbml0
RXh0ZXJuYWxTZW1hcGhvcmVDYXBhYmlsaXRpZXNGdW5jdGlvbnMobUluc3RhbmNlKTsKICNlbmRp
ZiAgLy8gIWRlZmluZWQoQU5HTEVfU0hBUkVEX0xJQlZVTEtBTikKQEAgLTIxNDQsNyArMjE2Myw2
IEBAIGFuZ2xlOjpSZXN1bHQgUmVuZGVyZXJWazo6aW5pdGlhbGl6ZURldmljZShEaXNwbGF5Vmsg
KmRpc3BsYXlWaywgdWludDMyX3QgcXVldWVGCiAKICAgICBpZiAoZ2V0RmVhdHVyZXMoKS5zdXBw
b3J0c0V4dGVybmFsRmVuY2VDYXBhYmlsaXRpZXMuZW5hYmxlZCkKICAgICB7Ci0gICAgICAgIG1F
bmFibGVkRGV2aWNlRXh0ZW5zaW9ucy5wdXNoX2JhY2soVktfS0hSX0VYVEVSTkFMX0ZFTkNFX0NB
UEFCSUxJVElFU19FWFRFTlNJT05fTkFNRSk7CiAjaWYgIWRlZmluZWQoQU5HTEVfU0hBUkVEX0xJ
QlZVTEtBTikKICAgICAgICAgSW5pdEV4dGVybmFsRmVuY2VDYXBhYmlsaXRpZXNGdW5jdGlvbnMo
bUluc3RhbmNlKTsKICNlbmRpZiAgLy8gIWRlZmluZWQoQU5HTEVfU0hBUkVEX0xJQlZVTEtBTikK
QEAgLTIzODMsNiArMjQwMSwxMiBAQCBhbmdsZTo6UmVzdWx0IFJlbmRlcmVyVms6OmluaXRpYWxp
emVEZXZpY2UoRGlzcGxheVZrICpkaXNwbGF5VmssIHVpbnQzMl90IHF1ZXVlRgogICAgICAgICB2
azo6QWRkVG9QTmV4dENoYWluKCZtRW5hYmxlZEZlYXR1cmVzLCAmbURlcHRoQ2xpcENvbnRyb2xG
ZWF0dXJlcyk7CiAgICAgfQogCisgICAgaWYgKGdldEZlYXR1cmVzKCkuc3VwcG9ydHNCbGVuZE9w
ZXJhdGlvbkFkdmFuY2VkLmVuYWJsZWQpCisgICAgeworICAgICAgICBtRW5hYmxlZERldmljZUV4
dGVuc2lvbnMucHVzaF9iYWNrKFZLX0VYVF9CTEVORF9PUEVSQVRJT05fQURWQU5DRURfRVhURU5T
SU9OX05BTUUpOworICAgICAgICB2azo6QWRkVG9QTmV4dENoYWluKCZtRW5hYmxlZEZlYXR1cmVz
LCAmbUJsZW5kT3BlcmF0aW9uQWR2YW5jZWRGZWF0dXJlcyk7CisgICAgfQorCiAgICAgbUN1cnJl
bnRRdWV1ZUZhbWlseUluZGV4ID0gcXVldWVGYW1pbHlJbmRleDsKIAogICAgIHZrOjpRdWV1ZUZh
bWlseSBxdWV1ZUZhbWlseTsKQEAgLTI3NDUsNyArMjc2OSwxNiBAQCBnbDo6VmVyc2lvbiBSZW5k
ZXJlclZrOjpnZXRNYXhTdXBwb3J0ZWRFU1ZlcnNpb24oKSBjb25zdAogCiBnbDo6VmVyc2lvbiBS
ZW5kZXJlclZrOjpnZXRNYXhDb25mb3JtYW50RVNWZXJzaW9uKCkgY29uc3QKIHsKLSAgICByZXR1
cm4gTGltaXRWZXJzaW9uVG8oZ2V0TWF4U3VwcG9ydGVkRVNWZXJzaW9uKCksIHszLCAxfSk7Cisg
ICAgY29uc3QgZ2w6OlZlcnNpb24gbWF4U3VwcG9ydGVkRVNWZXJzaW9uID0gZ2V0TWF4U3VwcG9y
dGVkRVNWZXJzaW9uKCk7CisgICAgY29uc3QgYm9vbCBoYXNHZW9tZXRyeUFuZFRlc3NTdXBwb3J0
ID0KKyAgICAgICAgZ2V0TmF0aXZlRXh0ZW5zaW9ucygpLmdlb21ldHJ5U2hhZGVyQW55KCkgJiYg
Z2V0TmF0aXZlRXh0ZW5zaW9ucygpLnRlc3NlbGxhdGlvblNoYWRlckVYVDsKKworICAgIGlmICgh
aGFzR2VvbWV0cnlBbmRUZXNzU3VwcG9ydCB8fCAhbUZlYXR1cmVzLmV4cG9zZU5vbkNvbmZvcm1h
bnRFeHRlbnNpb25zQW5kVmVyc2lvbnMuZW5hYmxlZCkKKyAgICB7CisgICAgICAgIHJldHVybiBM
aW1pdFZlcnNpb25UbyhtYXhTdXBwb3J0ZWRFU1ZlcnNpb24sIHszLCAxfSk7CisgICAgfQorCisg
ICAgcmV0dXJuIG1heFN1cHBvcnRlZEVTVmVyc2lvbjsKIH0KIAogdm9pZCBSZW5kZXJlclZrOjpp
bml0RmVhdHVyZXMoRGlzcGxheVZrICpkaXNwbGF5VmssCkBAIC0yODY4LDE0ICsyOTAxLDYgQEAg
dm9pZCBSZW5kZXJlclZrOjppbml0RmVhdHVyZXMoRGlzcGxheVZrICpkaXNwbGF5VmssCiAgICAg
ICAgICZtRmVhdHVyZXMsIHN1cHBvcnRzRmlsdGVyaW5nUHJlY2lzaW9uLAogICAgICAgICBFeHRl
bnNpb25Gb3VuZChWS19HT09HTEVfU0FNUExFUl9GSUxURVJJTkdfUFJFQ0lTSU9OX0VYVEVOU0lP
Tl9OQU1FLCBkZXZpY2VFeHRlbnNpb25OYW1lcykpOwogCi0gICAgQU5HTEVfRkVBVFVSRV9DT05E
SVRJT04oCi0gICAgICAgICZtRmVhdHVyZXMsIHN1cHBvcnRzRXh0ZXJuYWxGZW5jZUNhcGFiaWxp
dGllcywKLSAgICAgICAgRXh0ZW5zaW9uRm91bmQoVktfS0hSX0VYVEVSTkFMX0ZFTkNFX0NBUEFC
SUxJVElFU19FWFRFTlNJT05fTkFNRSwgZGV2aWNlRXh0ZW5zaW9uTmFtZXMpKTsKLQotICAgIEFO
R0xFX0ZFQVRVUkVfQ09ORElUSU9OKCZtRmVhdHVyZXMsIHN1cHBvcnRzRXh0ZXJuYWxTZW1hcGhv
cmVDYXBhYmlsaXRpZXMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgRXh0ZW5zaW9uRm91
bmQoVktfS0hSX0VYVEVSTkFMX1NFTUFQSE9SRV9DQVBBQklMSVRJRVNfRVhURU5TSU9OX05BTUUs
Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGV2aWNlRXh0ZW5z
aW9uTmFtZXMpKTsKLQogICAgIEFOR0xFX0ZFQVRVUkVfQ09ORElUSU9OKAogICAgICAgICAmbUZl
YXR1cmVzLCBzdXBwb3J0c0V4dGVybmFsU2VtYXBob3JlRmQsCiAgICAgICAgIEV4dGVuc2lvbkZv
dW5kKFZLX0tIUl9FWFRFUk5BTF9TRU1BUEhPUkVfRkRfRVhURU5TSU9OX05BTUUsIGRldmljZUV4
dGVuc2lvbk5hbWVzKSk7CkBAIC0yODg5LDE1ICsyOTE0LDM2IEBAIHZvaWQgUmVuZGVyZXJWazo6
aW5pdEZlYXR1cmVzKERpc3BsYXlWayAqZGlzcGxheVZrLAogICAgICAgICBFeHRlbnNpb25Gb3Vu
ZChWS19LSFJfRVhURVJOQUxfRkVOQ0VfRkRfRVhURU5TSU9OX05BTUUsIGRldmljZUV4dGVuc2lv
bk5hbWVzKSk7CiAKICNpZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0FORFJPSUQpCi0gICAgaWYg
KG1GZWF0dXJlcy5zdXBwb3J0c0V4dGVybmFsRmVuY2VDYXBhYmlsaXRpZXMuZW5hYmxlZCAmJgot
ICAgICAgICBtRmVhdHVyZXMuc3VwcG9ydHNFeHRlcm5hbFNlbWFwaG9yZUNhcGFiaWxpdGllcy5l
bmFibGVkKQorICAgIGlmICgobUZlYXR1cmVzLnN1cHBvcnRzRXh0ZXJuYWxGZW5jZUNhcGFiaWxp
dGllcy5lbmFibGVkICYmCisgICAgICAgICBtRmVhdHVyZXMuc3VwcG9ydHNFeHRlcm5hbFNlbWFw
aG9yZUNhcGFiaWxpdGllcy5lbmFibGVkKSB8fAorICAgICAgICBtUGh5c2ljYWxEZXZpY2VQcm9w
ZXJ0aWVzLmFwaVZlcnNpb24gPj0gVktfTUFLRV9WRVJTSU9OKDEsIDEsIDApKQogICAgIHsKKyAg
ICAgICAgVmtFeHRlcm5hbEZlbmNlUHJvcGVydGllcyBleHRlcm5hbEZlbmNlUHJvcGVydGllcyA9
IHt9OworICAgICAgICBleHRlcm5hbEZlbmNlUHJvcGVydGllcy5zVHlwZSA9IFZLX1NUUlVDVFVS
RV9UWVBFX0VYVEVSTkFMX0ZFTkNFX1BST1BFUlRJRVM7CisKKyAgICAgICAgVmtQaHlzaWNhbERl
dmljZUV4dGVybmFsRmVuY2VJbmZvIGV4dGVybmFsRmVuY2VJbmZvID0ge307CisgICAgICAgIGV4
dGVybmFsRmVuY2VJbmZvLnNUeXBlICAgICAgPSBWS19TVFJVQ1RVUkVfVFlQRV9QSFlTSUNBTF9E
RVZJQ0VfRVhURVJOQUxfRkVOQ0VfSU5GTzsKKyAgICAgICAgZXh0ZXJuYWxGZW5jZUluZm8uaGFu
ZGxlVHlwZSA9IFZLX0VYVEVSTkFMX0ZFTkNFX0hBTkRMRV9UWVBFX1NZTkNfRkRfQklUX0tIUjsK
KworICAgICAgICB2a0dldFBoeXNpY2FsRGV2aWNlRXh0ZXJuYWxGZW5jZVByb3BlcnRpZXNLSFIo
bVBoeXNpY2FsRGV2aWNlLCAmZXh0ZXJuYWxGZW5jZUluZm8sCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmZXh0ZXJuYWxGZW5jZVByb3BlcnRp
ZXMpOworCisgICAgICAgIFZrRXh0ZXJuYWxTZW1hcGhvcmVQcm9wZXJ0aWVzIGV4dGVybmFsU2Vt
YXBob3JlUHJvcGVydGllcyA9IHt9OworICAgICAgICBleHRlcm5hbFNlbWFwaG9yZVByb3BlcnRp
ZXMuc1R5cGUgPSBWS19TVFJVQ1RVUkVfVFlQRV9FWFRFUk5BTF9TRU1BUEhPUkVfUFJPUEVSVElF
UzsKKworICAgICAgICBWa1BoeXNpY2FsRGV2aWNlRXh0ZXJuYWxTZW1hcGhvcmVJbmZvIGV4dGVy
bmFsU2VtYXBob3JlSW5mbyA9IHt9OworICAgICAgICBleHRlcm5hbFNlbWFwaG9yZUluZm8uc1R5
cGUgPSBWS19TVFJVQ1RVUkVfVFlQRV9QSFlTSUNBTF9ERVZJQ0VfRVhURVJOQUxfU0VNQVBIT1JF
X0lORk87CisgICAgICAgIGV4dGVybmFsU2VtYXBob3JlSW5mby5oYW5kbGVUeXBlID0gVktfRVhU
RVJOQUxfU0VNQVBIT1JFX0hBTkRMRV9UWVBFX1NZTkNfRkRfQklUX0tIUjsKKworICAgICAgICB2
a0dldFBoeXNpY2FsRGV2aWNlRXh0ZXJuYWxTZW1hcGhvcmVQcm9wZXJ0aWVzS0hSKG1QaHlzaWNh
bERldmljZSwgJmV4dGVybmFsU2VtYXBob3JlSW5mbywKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmZXh0ZXJuYWxTZW1hcGhvcmVQcm9w
ZXJ0aWVzKTsKKwogICAgICAgICBBTkdMRV9GRUFUVVJFX0NPTkRJVElPTigKICAgICAgICAgICAg
ICZtRmVhdHVyZXMsIHN1cHBvcnRzQW5kcm9pZE5hdGl2ZUZlbmNlU3luYywKICAgICAgICAgICAg
IChtRmVhdHVyZXMuc3VwcG9ydHNFeHRlcm5hbEZlbmNlRmQuZW5hYmxlZCAmJgotICAgICAgICAg
ICAgIEZlbmNlUHJvcGVydGllc0NvbXBhdGlibGVXaXRoQW5kcm9pZChtRXh0ZXJuYWxGZW5jZVBy
b3BlcnRpZXMpICYmCisgICAgICAgICAgICAgRmVuY2VQcm9wZXJ0aWVzQ29tcGF0aWJsZVdpdGhB
bmRyb2lkKGV4dGVybmFsRmVuY2VQcm9wZXJ0aWVzKSAmJgogICAgICAgICAgICAgIG1GZWF0dXJl
cy5zdXBwb3J0c0V4dGVybmFsU2VtYXBob3JlRmQuZW5hYmxlZCAmJgotICAgICAgICAgICAgIFNl
bWFwaG9yZVByb3BlcnRpZXNDb21wYXRpYmxlV2l0aEFuZHJvaWQobUV4dGVybmFsU2VtYXBob3Jl
UHJvcGVydGllcykpKTsKKyAgICAgICAgICAgICBTZW1hcGhvcmVQcm9wZXJ0aWVzQ29tcGF0aWJs
ZVdpdGhBbmRyb2lkKGV4dGVybmFsU2VtYXBob3JlUHJvcGVydGllcykpKTsKICAgICB9CiAgICAg
ZWxzZQogICAgIHsKQEAgLTI5MjMsNiArMjk2OSwxMCBAQCB2b2lkIFJlbmRlcmVyVms6OmluaXRG
ZWF0dXJlcyhEaXNwbGF5VmsgKmRpc3BsYXlWaywKICAgICBBTkdMRV9GRUFUVVJFX0NPTkRJVElP
TigmbUZlYXR1cmVzLCBzdXBwb3J0c0RlcHRoQ2xpcENvbnRyb2wsCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgbURlcHRoQ2xpcENvbnRyb2xGZWF0dXJlcy5kZXB0aENsaXBDb250cm9sID09
IFZLX1RSVUUpOwogCisgICAgQU5HTEVfRkVBVFVSRV9DT05ESVRJT04oCisgICAgICAgICZtRmVh
dHVyZXMsIHN1cHBvcnRzQmxlbmRPcGVyYXRpb25BZHZhbmNlZCwKKyAgICAgICAgRXh0ZW5zaW9u
Rm91bmQoVktfRVhUX0JMRU5EX09QRVJBVElPTl9BRFZBTkNFRF9FWFRFTlNJT05fTkFNRSwgZGV2
aWNlRXh0ZW5zaW9uTmFtZXMpKTsKKwogICAgIEFOR0xFX0ZFQVRVUkVfQ09ORElUSU9OKCZtRmVh
dHVyZXMsIHN1cHBvcnRzVHJhbnNmb3JtRmVlZGJhY2tFeHRlbnNpb24sCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgbVRyYW5zZm9ybUZlZWRiYWNrRmVhdHVyZXMudHJhbnNmb3JtRmVlZGJh
Y2sgPT0gVktfVFJVRSk7CiAKQEAgLTMxOTIsNiArMzI0Miw4IEBAIHZvaWQgUmVuZGVyZXJWazo6
aW5pdEZlYXR1cmVzKERpc3BsYXlWayAqZGlzcGxheVZrLAogICAgIC8vIFJldGFpbiBkZWJ1ZyBp
bmZvIGluIFNQSVItViBibG9iLgogICAgIEFOR0xFX0ZFQVRVUkVfQ09ORElUSU9OKCZtRmVhdHVy
ZXMsIHJldGFpblNwaXJ2RGVidWdJbmZvLCBnZXRFbmFibGVWYWxpZGF0aW9uTGF5ZXJzKCkpOwog
CisgICAgQU5HTEVfRkVBVFVSRV9DT05ESVRJT04oJm1GZWF0dXJlcywgZ2VuZXJhdGVTUElSVlRo
cm91Z2hHbHNsYW5nLCBrVXNlU3BpcnZHZW5UaHJvdWdoR2xzbGFuZyk7CisKICAgICBhbmdsZTo6
UGxhdGZvcm1NZXRob2RzICpwbGF0Zm9ybSA9IEFOR0xFUGxhdGZvcm1DdXJyZW50KCk7CiAgICAg
cGxhdGZvcm0tPm92ZXJyaWRlRmVhdHVyZXNWayhwbGF0Zm9ybSwgJm1GZWF0dXJlcyk7CiAKQEAg
LTM1NjEsMzYgKzM2MTMsMjYgQEAgYW5nbGU6OlJlc3VsdCBSZW5kZXJlclZrOjpjbGVhbnVwR2Fy
YmFnZShTZXJpYWwgbGFzdENvbXBsZXRlZFF1ZXVlU2VyaWFsKQogICAgIHN0ZDo6bG9ja19ndWFy
ZDxzdGQ6Om11dGV4PiBsb2NrKG1HYXJiYWdlTXV0ZXgpOwogCiAgICAgLy8gQ2xlYW4gdXAgZ2Vu
ZXJhbCBnYXJiYWdlcwotICAgIHZrOjpTaGFyZWRHYXJiYWdlTGlzdCByZW1haW5pbmdHYXJiYWdl
OwogICAgIHdoaWxlICghbVNoYXJlZEdhcmJhZ2UuZW1wdHkoKSkKICAgICB7CiAgICAgICAgIHZr
OjpTaGFyZWRHYXJiYWdlICZnYXJiYWdlID0gbVNoYXJlZEdhcmJhZ2UuZnJvbnQoKTsKICAgICAg
ICAgaWYgKCFnYXJiYWdlLmRlc3Ryb3lJZkNvbXBsZXRlKHRoaXMsIGxhc3RDb21wbGV0ZWRRdWV1
ZVNlcmlhbCkpCiAgICAgICAgIHsKLSAgICAgICAgICAgIHJlbWFpbmluZ0dhcmJhZ2UucHVzaChz
dGQ6Om1vdmUoZ2FyYmFnZSkpOworICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KICAgICAg
ICAgbVNoYXJlZEdhcmJhZ2UucG9wKCk7CiAgICAgfQotICAgIGlmICghcmVtYWluaW5nR2FyYmFn
ZS5lbXB0eSgpKQotICAgIHsKLSAgICAgICAgbVNoYXJlZEdhcmJhZ2UgPSBzdGQ6Om1vdmUocmVt
YWluaW5nR2FyYmFnZSk7Ci0gICAgfQogCiAgICAgLy8gQ2xlYW4gdXAgc3ViYWxsb2NhdGlvbiBn
YXJiYWdlcwotICAgIHZrOjpTaGFyZWRCdWZmZXJTdWJhbGxvY2F0aW9uR2FyYmFnZUxpc3QgcmVt
YWluaW5nU3ViYWxsb2NhdGlvbkdhcmJhZ2U7CiAgICAgd2hpbGUgKCFtU3ViYWxsb2NhdGlvbkdh
cmJhZ2UuZW1wdHkoKSkKICAgICB7CiAgICAgICAgIHZrOjpTaGFyZWRCdWZmZXJTdWJhbGxvY2F0
aW9uR2FyYmFnZSAmZ2FyYmFnZSA9IG1TdWJhbGxvY2F0aW9uR2FyYmFnZS5mcm9udCgpOwogICAg
ICAgICBpZiAoIWdhcmJhZ2UuZGVzdHJveUlmQ29tcGxldGUodGhpcywgbGFzdENvbXBsZXRlZFF1
ZXVlU2VyaWFsKSkKICAgICAgICAgewotICAgICAgICAgICAgcmVtYWluaW5nU3ViYWxsb2NhdGlv
bkdhcmJhZ2UucHVzaChzdGQ6Om1vdmUoZ2FyYmFnZSkpOworICAgICAgICAgICAgYnJlYWs7CiAg
ICAgICAgIH0KICAgICAgICAgbVN1YmFsbG9jYXRpb25HYXJiYWdlLnBvcCgpOwogICAgIH0KLSAg
ICBpZiAoIXJlbWFpbmluZ1N1YmFsbG9jYXRpb25HYXJiYWdlLmVtcHR5KCkpCi0gICAgewotICAg
ICAgICBtU3ViYWxsb2NhdGlvbkdhcmJhZ2UgPSBzdGQ6Om1vdmUocmVtYWluaW5nU3ViYWxsb2Nh
dGlvbkdhcmJhZ2UpOwotICAgIH0KIAogICAgIHJldHVybiBhbmdsZTo6UmVzdWx0OjpDb250aW51
ZTsKIH0KQEAgLTM2MDAsNiArMzY0Miw1MSBAQCB2b2lkIFJlbmRlcmVyVms6OmNsZWFudXBDb21w
bGV0ZWRDb21tYW5kc0dhcmJhZ2UoKQogICAgICh2b2lkKWNsZWFudXBHYXJiYWdlKGdldExhc3RD
b21wbGV0ZWRRdWV1ZVNlcmlhbCgpKTsKIH0KIAordm9pZCBSZW5kZXJlclZrOjpjbGVhbnVwUGVu
ZGluZ1N1Ym1pc3Npb25HYXJiYWdlKCkKK3sKKyAgICBzdGQ6OmxvY2tfZ3VhcmQ8c3RkOjptdXRl
eD4gbG9jayhtR2FyYmFnZU11dGV4KTsKKworICAgIC8vIENoZWNrIGlmIHBlbmRpbmcgZ2FyYmFn
ZSBpcyBzdGlsbCBwZW5kaW5nLiBJZiBub3QsIG1vdmUgdGhlbSB0byB0aGUgZ2FyYmFnZSBsaXN0
LgorICAgIHZrOjpTaGFyZWRHYXJiYWdlTGlzdCBwZW5kaW5nR2FyYmFnZTsKKyAgICB3aGlsZSAo
IW1QZW5kaW5nU3VibWlzc2lvbkdhcmJhZ2UuZW1wdHkoKSkKKyAgICB7CisgICAgICAgIHZrOjpT
aGFyZWRHYXJiYWdlICZnYXJiYWdlID0gbVBlbmRpbmdTdWJtaXNzaW9uR2FyYmFnZS5mcm9udCgp
OworICAgICAgICBpZiAoIWdhcmJhZ2UudXNlZEluUmVjb3JkZWRDb21tYW5kcygpKQorICAgICAg
ICB7CisgICAgICAgICAgICBtU2hhcmVkR2FyYmFnZS5wdXNoKHN0ZDo6bW92ZShnYXJiYWdlKSk7
CisgICAgICAgIH0KKyAgICAgICAgZWxzZQorICAgICAgICB7CisgICAgICAgICAgICBwZW5kaW5n
R2FyYmFnZS5wdXNoKHN0ZDo6bW92ZShnYXJiYWdlKSk7CisgICAgICAgIH0KKyAgICAgICAgbVBl
bmRpbmdTdWJtaXNzaW9uR2FyYmFnZS5wb3AoKTsKKyAgICB9CisgICAgaWYgKCFwZW5kaW5nR2Fy
YmFnZS5lbXB0eSgpKQorICAgIHsKKyAgICAgICAgbVBlbmRpbmdTdWJtaXNzaW9uR2FyYmFnZSA9
IHN0ZDo6bW92ZShwZW5kaW5nR2FyYmFnZSk7CisgICAgfQorCisgICAgdms6OlNoYXJlZEJ1ZmZl
clN1YmFsbG9jYXRpb25HYXJiYWdlTGlzdCBwZW5kaW5nU3ViYWxsb2NhdGlvbkdhcmJhZ2U7Cisg
ICAgd2hpbGUgKCFtUGVuZGluZ1N1Ym1pc3Npb25TdWJhbGxvY2F0aW9uR2FyYmFnZS5lbXB0eSgp
KQorICAgIHsKKyAgICAgICAgdms6OlNoYXJlZEJ1ZmZlclN1YmFsbG9jYXRpb25HYXJiYWdlICZz
dWJhbGxvY2F0aW9uR2FyYmFnZSA9CisgICAgICAgICAgICBtUGVuZGluZ1N1Ym1pc3Npb25TdWJh
bGxvY2F0aW9uR2FyYmFnZS5mcm9udCgpOworICAgICAgICBpZiAoIXN1YmFsbG9jYXRpb25HYXJi
YWdlLnVzZWRJblJlY29yZGVkQ29tbWFuZHMoKSkKKyAgICAgICAgeworICAgICAgICAgICAgbVN1
YmFsbG9jYXRpb25HYXJiYWdlLnB1c2goc3RkOjptb3ZlKHN1YmFsbG9jYXRpb25HYXJiYWdlKSk7
CisgICAgICAgIH0KKyAgICAgICAgZWxzZQorICAgICAgICB7CisgICAgICAgICAgICBwZW5kaW5n
U3ViYWxsb2NhdGlvbkdhcmJhZ2UucHVzaChzdGQ6Om1vdmUoc3ViYWxsb2NhdGlvbkdhcmJhZ2Up
KTsKKyAgICAgICAgfQorICAgICAgICBtUGVuZGluZ1N1Ym1pc3Npb25TdWJhbGxvY2F0aW9uR2Fy
YmFnZS5wb3AoKTsKKyAgICB9CisgICAgaWYgKCFwZW5kaW5nU3ViYWxsb2NhdGlvbkdhcmJhZ2Uu
ZW1wdHkoKSkKKyAgICB7CisgICAgICAgIG1QZW5kaW5nU3VibWlzc2lvblN1YmFsbG9jYXRpb25H
YXJiYWdlID0gc3RkOjptb3ZlKHBlbmRpbmdTdWJhbGxvY2F0aW9uR2FyYmFnZSk7CisgICAgfQor
fQorCiB2b2lkIFJlbmRlcmVyVms6Om9uTmV3VmFsaWRhdGlvbk1lc3NhZ2UoY29uc3Qgc3RkOjpz
dHJpbmcgJm1lc3NhZ2UpCiB7CiAgICAgbUxhc3RWYWxpZGF0aW9uTWVzc2FnZSA9IG1lc3NhZ2U7
CkBAIC0zNzM1LDcgKzM4MjIsNiBAQCBhbmdsZTo6UmVzdWx0IFJlbmRlcmVyVms6OnN1Ym1pdEZy
YW1lKHZrOjpDb250ZXh0ICpjb250ZXh0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBzdGQ6OnZlY3RvcjxWa1NlbWFwaG9yZT4gJiZ3YWl0U2VtYXBob3JlcywKICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RkOjp2ZWN0b3I8VmtQaXBlbGluZVN0
YWdlRmxhZ3M+ICYmd2FpdFNlbWFwaG9yZVN0YWdlTWFza3MsCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGNvbnN0IHZrOjpTZW1hcGhvcmUgKnNpZ25hbFNlbWFwaG9yZSwK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RkOjp2ZWN0b3I8dms6OlJl
c291cmNlVXNlTGlzdD4gJiZyZXNvdXJjZVVzZUxpc3RzLAogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICB2azo6R2FyYmFnZUxpc3QgJiZjdXJyZW50R2FyYmFnZSwKICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdms6OlNlY29uZGFyeUNvbW1hbmRQb29s
cyAqY29tbWFuZFBvb2xzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBT
ZXJpYWwgKnN1Ym1pdFNlcmlhbE91dCkKQEAgLTM3NjgsMTEgKzM4NTQsNiBAQCBhbmdsZTo6UmVz
dWx0IFJlbmRlcmVyVms6OnN1Ym1pdEZyYW1lKHZrOjpDb250ZXh0ICpjb250ZXh0LAogCiAgICAg
d2FpdFNlbWFwaG9yZXMuY2xlYXIoKTsKICAgICB3YWl0U2VtYXBob3JlU3RhZ2VNYXNrcy5jbGVh
cigpOwotICAgIGZvciAodms6OlJlc291cmNlVXNlTGlzdCAmaXQgOiByZXNvdXJjZVVzZUxpc3Rz
KQotICAgIHsKLSAgICAgICAgaXQucmVsZWFzZVJlc291cmNlVXNlc0FuZFVwZGF0ZVNlcmlhbHMo
KnN1Ym1pdFNlcmlhbE91dCk7Ci0gICAgfQotICAgIHJlc291cmNlVXNlTGlzdHMuY2xlYXIoKTsK
IAogICAgIHJldHVybiBhbmdsZTo6UmVzdWx0OjpDb250aW51ZTsKIH0KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vUmVuZGVy
ZXJWay5oIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1
bGthbi9SZW5kZXJlclZrLmgKaW5kZXggZGUwOWRlNmIwZWRkNDRjZWMwOTllZGQ5OTk2ODQ3NzM3
ODhiMjExYS4uNDE3NGI2ZTZmNzM2ZDMwMTVjMGI5Yjc0OWI2YzlhMjdmZGEzM2JlOSAxMDA2NDQK
LS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGth
bi9SZW5kZXJlclZrLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xF
L3JlbmRlcmVyL3Z1bGthbi9SZW5kZXJlclZrLmgKQEAgLTMxMCw3ICszMTAsMTIgQEAgY2xhc3Mg
UmVuZGVyZXJWayA6IGFuZ2xlOjpOb25Db3B5YWJsZQogICAgICAgICBpZiAoIXNoYXJlZEdhcmJh
Z2UuZW1wdHkoKSkKICAgICAgICAgewogICAgICAgICAgICAgdms6OlNoYXJlZEdhcmJhZ2UgZ2Fy
YmFnZShzdGQ6Om1vdmUodXNlKSwgc3RkOjptb3ZlKHNoYXJlZEdhcmJhZ2UpKTsKLSAgICAgICAg
ICAgIGlmICghZ2FyYmFnZS5kZXN0cm95SWZDb21wbGV0ZSh0aGlzLCBnZXRMYXN0Q29tcGxldGVk
UXVldWVTZXJpYWwoKSkpCisgICAgICAgICAgICBpZiAoZ2FyYmFnZS51c2VkSW5SZWNvcmRlZENv
bW1hbmRzKCkpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgc3RkOjpsb2NrX2d1YXJk
PHN0ZDo6bXV0ZXg+IGxvY2sobUdhcmJhZ2VNdXRleCk7CisgICAgICAgICAgICAgICAgbVBlbmRp
bmdTdWJtaXNzaW9uR2FyYmFnZS5wdXNoKHN0ZDo6bW92ZShnYXJiYWdlKSk7CisgICAgICAgICAg
ICB9CisgICAgICAgICAgICBlbHNlIGlmICghZ2FyYmFnZS5kZXN0cm95SWZDb21wbGV0ZSh0aGlz
LCBnZXRMYXN0Q29tcGxldGVkUXVldWVTZXJpYWwoKSkpCiAgICAgICAgICAgICB7CiAgICAgICAg
ICAgICAgICAgc3RkOjpsb2NrX2d1YXJkPHN0ZDo6bXV0ZXg+IGxvY2sobUdhcmJhZ2VNdXRleCk7
CiAgICAgICAgICAgICAgICAgbVNoYXJlZEdhcmJhZ2UucHVzaChzdGQ6Om1vdmUoZ2FyYmFnZSkp
OwpAQCAtMzIyLDcgKzMyNywxNSBAQCBjbGFzcyBSZW5kZXJlclZrIDogYW5nbGU6Ok5vbkNvcHlh
YmxlCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdms6OkJ1ZmZlclN1YmFs
bG9jYXRpb24gJiZzdWJhbGxvY2F0aW9uKQogICAgIHsKICAgICAgICAgc3RkOjpsb2NrX2d1YXJk
PHN0ZDo6bXV0ZXg+IGxvY2sobUdhcmJhZ2VNdXRleCk7Ci0gICAgICAgIG1TdWJhbGxvY2F0aW9u
R2FyYmFnZS5lbXBsYWNlKHN0ZDo6bW92ZSh1c2UpLCBzdGQ6Om1vdmUoc3ViYWxsb2NhdGlvbikp
OworICAgICAgICBpZiAodXNlLnVzZWRJblJlY29yZGVkQ29tbWFuZHMoKSkKKyAgICAgICAgewor
ICAgICAgICAgICAgbVBlbmRpbmdTdWJtaXNzaW9uU3ViYWxsb2NhdGlvbkdhcmJhZ2UuZW1wbGFj
ZShzdGQ6Om1vdmUodXNlKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgc3RkOjptb3ZlKHN1YmFsbG9jYXRpb24pKTsKKyAgICAgICAg
fQorICAgICAgICBlbHNlCisgICAgICAgIHsKKyAgICAgICAgICAgIG1TdWJhbGxvY2F0aW9uR2Fy
YmFnZS5lbXBsYWNlKHN0ZDo6bW92ZSh1c2UpLCBzdGQ6Om1vdmUoc3ViYWxsb2NhdGlvbikpOwor
ICAgICAgICB9CiAgICAgfQogCiAgICAgYW5nbGU6OlJlc3VsdCBnZXRQaXBlbGluZUNhY2hlKHZr
OjpQaXBlbGluZUNhY2hlICoqcGlwZWxpbmVDYWNoZSk7CkBAIC00MDYsNiArNDE5LDcgQEAgY2xh
c3MgUmVuZGVyZXJWayA6IGFuZ2xlOjpOb25Db3B5YWJsZQogCiAgICAgYW5nbGU6OlJlc3VsdCBj
bGVhbnVwR2FyYmFnZShTZXJpYWwgbGFzdENvbXBsZXRlZFF1ZXVlU2VyaWFsKTsKICAgICB2b2lk
IGNsZWFudXBDb21wbGV0ZWRDb21tYW5kc0dhcmJhZ2UoKTsKKyAgICB2b2lkIGNsZWFudXBQZW5k
aW5nU3VibWlzc2lvbkdhcmJhZ2UoKTsKIAogICAgIGFuZ2xlOjpSZXN1bHQgc3VibWl0RnJhbWUo
dms6OkNvbnRleHQgKmNvbnRleHQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29s
IGhhc1Byb3RlY3RlZENvbnRlbnQsCkBAIC00MTMsNyArNDI3LDYgQEAgY2xhc3MgUmVuZGVyZXJW
ayA6IGFuZ2xlOjpOb25Db3B5YWJsZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Rk
Ojp2ZWN0b3I8VmtTZW1hcGhvcmU+ICYmd2FpdFNlbWFwaG9yZXMsCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBzdGQ6OnZlY3RvcjxWa1BpcGVsaW5lU3RhZ2VGbGFncz4gJiZ3YWl0U2Vt
YXBob3JlU3RhZ2VNYXNrcywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHZr
OjpTZW1hcGhvcmUgKnNpZ25hbFNlbWFwaG9yZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHN0ZDo6dmVjdG9yPHZrOjpSZXNvdXJjZVVzZUxpc3Q+ICYmcmVzb3VyY2VVc2VMaXN0cywK
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZrOjpHYXJiYWdlTGlzdCAmJmN1cnJlbnRH
YXJiYWdlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdms6OlNlY29uZGFyeUNvbW1h
bmRQb29scyAqY29tbWFuZFBvb2xzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU2Vy
aWFsICpzdWJtaXRTZXJpYWxPdXQpOwpAQCAtNTkzLDggKzYwNiw4IEBAIGNsYXNzIFJlbmRlcmVy
VmsgOiBhbmdsZTo6Tm9uQ29weWFibGUKICAgICBWa1BoeXNpY2FsRGV2aWNlUHJvdGVjdGVkTWVt
b3J5UHJvcGVydGllcyBtUHJvdGVjdGVkTWVtb3J5UHJvcGVydGllczsKICAgICBWa1BoeXNpY2Fs
RGV2aWNlSG9zdFF1ZXJ5UmVzZXRGZWF0dXJlc0VYVCBtSG9zdFF1ZXJ5UmVzZXRGZWF0dXJlczsK
ICAgICBWa1BoeXNpY2FsRGV2aWNlRGVwdGhDbGlwQ29udHJvbEZlYXR1cmVzRVhUIG1EZXB0aENs
aXBDb250cm9sRmVhdHVyZXM7Ci0gICAgVmtFeHRlcm5hbEZlbmNlUHJvcGVydGllcyBtRXh0ZXJu
YWxGZW5jZVByb3BlcnRpZXM7Ci0gICAgVmtFeHRlcm5hbFNlbWFwaG9yZVByb3BlcnRpZXMgbUV4
dGVybmFsU2VtYXBob3JlUHJvcGVydGllczsKKyAgICBWa1BoeXNpY2FsRGV2aWNlQmxlbmRPcGVy
YXRpb25BZHZhbmNlZEZlYXR1cmVzRVhUIG1CbGVuZE9wZXJhdGlvbkFkdmFuY2VkRmVhdHVyZXM7
CisgICAgVmtQaHlzaWNhbERldmljZUJsZW5kT3BlcmF0aW9uQWR2YW5jZWRQcm9wZXJ0aWVzRVhU
IG1CbGVuZE9wZXJhdGlvbkFkdmFuY2VkUHJvcGVydGllczsKICAgICBWa1BoeXNpY2FsRGV2aWNl
U2FtcGxlclljYmNyQ29udmVyc2lvbkZlYXR1cmVzIG1TYW1wbGVyWWNiY3JDb252ZXJzaW9uRmVh
dHVyZXM7CiAgICAgc3RkOjp2ZWN0b3I8VmtRdWV1ZUZhbWlseVByb3BlcnRpZXM+IG1RdWV1ZUZh
bWlseVByb3BlcnRpZXM7CiAgICAgdWludDMyX3QgbU1heFZlcnRleEF0dHJpYkRpdmlzb3I7CkBA
IC02MDgsOSArNjIxLDE2IEBAIGNsYXNzIFJlbmRlcmVyVmsgOiBhbmdsZTo6Tm9uQ29weWFibGUK
IAogICAgIGJvb2wgbURldmljZUxvc3Q7CiAKKyAgICAvLyBXZSBncm91cCBnYXJiYWdlIGludG8g
Zm91ciBjYXRlZ29yaWVzOiBtU2hhcmVkR2FyYmFnZSBpcyB0aGUgZ2FyYmFnZSB0aGF0IGhhcyBh
bHJlYWR5CisgICAgLy8gc3VibWl0dGVkIHRvIHZ1bGthbiwgd2UgZXhwZWN0IHRoZW0gdG8gZmlu
aXNoIGluIGZpbml0ZSB0aW1lLiBtUGVuZGluZ1N1Ym1pc3Npb25HYXJiYWdlIGlzCisgICAgLy8g
dGhlIGdhcmJhZ2UgdGhhdCBpcyBzdGlsbCByZWZlcmVuY2VkIGluIHRoZSByZWNvcmRlZCBjb21t
YW5kcy4gc3ViYWxsb2NhdGlvbnMgaGF2ZSBpdHMgb3duCisgICAgLy8gZGVkaWNhdGVkIGdhcmJh
Z2UgbGlzdCBmb3IgcGVyZm9ybWFuY2Ugb3B0aW1pemF0aW9uIHNpbmNlIHRoZXkgdGVuZCB0byBi
ZSB0aGUgbW9zdCBjb21tb24KKyAgICAvLyBnYXJiYWdlIG9iamVjdHMuIEFsbCB0aGVzZSBmb3Vy
IGdyb3VwcyBvZiBnYXJiYWdlIHNoYXJlIHRoZSBzYW1lIG11dGV4IGxvY2suCiAgICAgc3RkOjpt
dXRleCBtR2FyYmFnZU11dGV4OwogICAgIHZrOjpTaGFyZWRHYXJiYWdlTGlzdCBtU2hhcmVkR2Fy
YmFnZTsKKyAgICB2azo6U2hhcmVkR2FyYmFnZUxpc3QgbVBlbmRpbmdTdWJtaXNzaW9uR2FyYmFn
ZTsKICAgICB2azo6U2hhcmVkQnVmZmVyU3ViYWxsb2NhdGlvbkdhcmJhZ2VMaXN0IG1TdWJhbGxv
Y2F0aW9uR2FyYmFnZTsKKyAgICB2azo6U2hhcmVkQnVmZmVyU3ViYWxsb2NhdGlvbkdhcmJhZ2VM
aXN0IG1QZW5kaW5nU3VibWlzc2lvblN1YmFsbG9jYXRpb25HYXJiYWdlOwogCiAgICAgdms6Ok1l
bW9yeVByb3BlcnRpZXMgbU1lbW9yeVByb3BlcnRpZXM7CiAgICAgdms6OkZvcm1hdFRhYmxlIG1G
b3JtYXRUYWJsZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJB
TkdMRS9yZW5kZXJlci92dWxrYW4vUmVzb3VyY2VWay5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL1Jlc291cmNlVmsuY3BwCmluZGV4IDgz
OTE0ZmNhYTlkZGMwNTMyZGRhZDJhY2I4ZjI3ZWI3ZDgyZGEwY2QuLmQ2MTY2OGI3YWNjNmVhZDk5
MDViMTJkZTBlZjIwZDIzYjMyYmRmZmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FO
R0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vUmVzb3VyY2VWay5jcHAKKysrIGIvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9SZXNvdXJj
ZVZrLmNwcApAQCAtMTcsNiArMTcsOCBAQCBuYW1lc3BhY2UgdmsKIHsKIG5hbWVzcGFjZQogewor
Y29uc3RleHByIHNpemVfdCBrRGVmYXVsdFJlc291cmNlVXNlQ291bnQgPSA0MDk2OworCiBhbmds
ZTo6UmVzdWx0IEZpbmlzaFJ1bm5pbmdDb21tYW5kcyhDb250ZXh0VmsgKmNvbnRleHRWaywgU2Vy
aWFsIHNlcmlhbCkKIHsKICAgICByZXR1cm4gY29udGV4dFZrLT5maW5pc2hUb1NlcmlhbChzZXJp
YWwpOwpAQCAtMTgzLDEzICsxODUsMTMgQEAgYm9vbCBTaGFyZWRHYXJiYWdlOjpkZXN0cm95SWZD
b21wbGV0ZShSZW5kZXJlclZrICpyZW5kZXJlciwgU2VyaWFsIGNvbXBsZXRlZFNlcmkKIC8vIFJl
c291cmNlVXNlTGlzdCBpbXBsZW1lbnRhdGlvbi4KIFJlc291cmNlVXNlTGlzdDo6UmVzb3VyY2VV
c2VMaXN0KCkKIHsKLSAgICBjb25zdGV4cHIgc2l6ZV90IGtEZWZhdWx0UmVzb3VyY2VVc2VDb3Vu
dCA9IDQwOTY7CiAgICAgbVJlc291cmNlVXNlcy5yZXNlcnZlKGtEZWZhdWx0UmVzb3VyY2VVc2VD
b3VudCk7CiB9CiAKIFJlc291cmNlVXNlTGlzdDo6UmVzb3VyY2VVc2VMaXN0KFJlc291cmNlVXNl
TGlzdCAmJm90aGVyKQogewogICAgICp0aGlzID0gc3RkOjptb3ZlKG90aGVyKTsKKyAgICBvdGhl
ci5tUmVzb3VyY2VVc2VzLnJlc2VydmUoa0RlZmF1bHRSZXNvdXJjZVVzZUNvdW50KTsKIH0KIAog
UmVzb3VyY2VVc2VMaXN0Ojp+UmVzb3VyY2VVc2VMaXN0KCkKQEAgLTE5Nyw2ICsxOTksMTYgQEAg
UmVzb3VyY2VVc2VMaXN0Ojp+UmVzb3VyY2VVc2VMaXN0KCkKICAgICBBU1NFUlQobVJlc291cmNl
VXNlcy5lbXB0eSgpKTsKIH0KIAordm9pZCBSZXNvdXJjZVVzZUxpc3Q6OmNvcHkoUmVzb3VyY2VV
c2VMaXN0ICZzcmNSZXNvdXJjZVVzZSkKK3sKKyAgICBzaXplX3Qgc2l6ZSA9IHNyY1Jlc291cmNl
VXNlLm1SZXNvdXJjZVVzZXMuc2l6ZSgpOworICAgIG1SZXNvdXJjZVVzZXMucmVzaXplKHNpemUp
OworICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgc2l6ZTsgaSsrKQorICAgIHsKKyAgICAgICAg
bVJlc291cmNlVXNlc1tpXS5jb3B5KHNyY1Jlc291cmNlVXNlLm1SZXNvdXJjZVVzZXNbaV0pOwor
ICAgIH0KK30KKwogUmVzb3VyY2VVc2VMaXN0ICZSZXNvdXJjZVVzZUxpc3Q6Om9wZXJhdG9yPShS
ZXNvdXJjZVVzZUxpc3QgJiZyaHMpCiB7CiAgICAgc3RkOjpzd2FwKG1SZXNvdXJjZVVzZXMsIHJo
cy5tUmVzb3VyY2VVc2VzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3Ny
Yy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vUmVzb3VyY2VWay5oIGIvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9SZXNvdXJjZVZrLmgKaW5kZXgg
MDM2ZTYxYjliZGViZjkxOTdjYTA5MzAzYjY2NjU0YjczYTk0MmEyZS4uNTQxYTQ2NWU2MWNmNDQ0
MGMzNDNkNzY2ZDBlMjNjZjA0YmRkNDcwMSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9SZXNvdXJjZVZrLmgKKysrIGIvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9SZXNvdXJj
ZVZrLmgKQEAgLTQ1LDYgKzQ1LDEyIEBAIGNsYXNzIFNoYXJlZFJlc291cmNlVXNlIGZpbmFsIDog
YW5nbGU6Ok5vbkNvcHlhYmxlCiAgICAgICAgIHJldHVybiAqdGhpczsKICAgICB9CiAKKyAgICB2
b2lkIGNvcHkoU2hhcmVkUmVzb3VyY2VVc2UgJnNyYykKKyAgICB7CisgICAgICAgIG1Vc2UgPSBz
cmMubVVzZTsKKyAgICAgICAgbVVzZS0+Y291bnRlcisrOworICAgIH0KKwogICAgIEFOR0xFX0lO
TElORSBib29sIHZhbGlkKCkgY29uc3QgeyByZXR1cm4gbVVzZSAhPSBudWxscHRyOyB9CiAKICAg
ICB2b2lkIGluaXQoKQpAQCAtMTI4LDYgKzEzNCw3IEBAIGNsYXNzIFNoYXJlZEJ1ZmZlclN1YmFs
bG9jYXRpb25HYXJiYWdlCiAgICAgflNoYXJlZEJ1ZmZlclN1YmFsbG9jYXRpb25HYXJiYWdlKCkg
PSBkZWZhdWx0OwogCiAgICAgYm9vbCBkZXN0cm95SWZDb21wbGV0ZShSZW5kZXJlclZrICpyZW5k
ZXJlciwgU2VyaWFsIGNvbXBsZXRlZFNlcmlhbCk7CisgICAgYm9vbCB1c2VkSW5SZWNvcmRlZENv
bW1hbmRzKCkgY29uc3QgeyByZXR1cm4gbUxpZmV0aW1lLnVzZWRJblJlY29yZGVkQ29tbWFuZHMo
KTsgfQogCiAgIHByaXZhdGU6CiAgICAgU2hhcmVkUmVzb3VyY2VVc2UgbUxpZmV0aW1lOwpAQCAt
MTQ1LDYgKzE1Miw3IEBAIGNsYXNzIFNoYXJlZEdhcmJhZ2UKICAgICBTaGFyZWRHYXJiYWdlICZv
cGVyYXRvcj0oU2hhcmVkR2FyYmFnZSAmJnJocyk7CiAKICAgICBib29sIGRlc3Ryb3lJZkNvbXBs
ZXRlKFJlbmRlcmVyVmsgKnJlbmRlcmVyLCBTZXJpYWwgY29tcGxldGVkU2VyaWFsKTsKKyAgICBi
b29sIHVzZWRJblJlY29yZGVkQ29tbWFuZHMoKSBjb25zdCB7IHJldHVybiBtTGlmZXRpbWUudXNl
ZEluUmVjb3JkZWRDb21tYW5kcygpOyB9CiAKICAgcHJpdmF0ZToKICAgICBTaGFyZWRSZXNvdXJj
ZVVzZSBtTGlmZXRpbWU7CkBAIC0xNjMsNiArMTcxLDcgQEAgY2xhc3MgUmVzb3VyY2VVc2VMaXN0
IGZpbmFsIDogYW5nbGU6Ok5vbkNvcHlhYmxlCiAgICAgUmVzb3VyY2VVc2VMaXN0ICZvcGVyYXRv
cj0oUmVzb3VyY2VVc2VMaXN0ICYmcmhzKTsKIAogICAgIHZvaWQgYWRkKGNvbnN0IFNoYXJlZFJl
c291cmNlVXNlICZyZXNvdXJjZVVzZSk7CisgICAgdm9pZCBjb3B5KFJlc291cmNlVXNlTGlzdCAm
c3JjUmVzb3VyY2VVc2UpOwogCiAgICAgdm9pZCByZWxlYXNlUmVzb3VyY2VVc2VzKCk7CiAgICAg
dm9pZCByZWxlYXNlUmVzb3VyY2VVc2VzQW5kVXBkYXRlU2VyaWFscyhTZXJpYWwgc2VyaWFsKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJl
ci92dWxrYW4vU3VyZmFjZVZrLmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJB
TkdMRS9yZW5kZXJlci92dWxrYW4vU3VyZmFjZVZrLmNwcAppbmRleCBjNGViZmNjMjQwZTUxYWVi
YzJiNDhiNjY4NmQ4M2I1ZDNjMGViNWU5Li4wMDI2OTM2OTcxMjk3ZmYxNjM5N2UwNzIxMDQ5Zjlm
OWZmMDZhOWFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5H
TEUvcmVuZGVyZXIvdnVsa2FuL1N1cmZhY2VWay5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9TdXJmYWNlVmsuY3BwCkBAIC0xNzUs
NiArMTc1LDEwIEBAIFZrQ29sb3JTcGFjZUtIUiBNYXBFZ2xDb2xvclNwYWNlVG9Wa0NvbG9yU3Bh
Y2UoRUdMZW51bSBFR0xDb2xvcnNwYWNlKQogICAgICAgICAgICAgcmV0dXJuIFZLX0NPTE9SX1NQ
QUNFX0VYVEVOREVEX1NSR0JfTElORUFSX0VYVDsKICAgICAgICAgY2FzZSBFR0xfR0xfQ09MT1JT
UEFDRV9TQ1JHQl9FWFQ6CiAgICAgICAgICAgICByZXR1cm4gVktfQ09MT1JfU1BBQ0VfRVhURU5E
RURfU1JHQl9OT05MSU5FQVJfRVhUOworICAgICAgICBjYXNlIEVHTF9HTF9DT0xPUlNQQUNFX0JU
MjAyMF9MSU5FQVJfRVhUOgorICAgICAgICAgICAgcmV0dXJuIFZLX0NPTE9SX1NQQUNFX0JUMjAy
MF9MSU5FQVJfRVhUOworICAgICAgICBjYXNlIEVHTF9HTF9DT0xPUlNQQUNFX0JUMjAyMF9QUV9F
WFQ6CisgICAgICAgICAgICByZXR1cm4gVktfQ09MT1JfU1BBQ0VfSERSMTBfU1QyMDg0X0VYVDsK
ICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgIFVOUkVBQ0hBQkxFKCk7CiAgICAgICAgICAg
ICByZXR1cm4gVktfQ09MT1JfU1BBQ0VfU1JHQl9OT05MSU5FQVJfS0hSOwpAQCAtNDQ1LDkgKzQ0
OSw5IEBAIHZvaWQgT2Zmc2NyZWVuU3VyZmFjZVZrOjpBdHRhY2htZW50SW1hZ2U6OmRlc3Ryb3ko
Y29uc3QgZWdsOjpEaXNwbGF5ICpkaXNwbGF5KQogICAgIERpc3BsYXlWayAqZGlzcGxheVZrID0g
dms6OkdldEltcGwoZGlzcGxheSk7CiAgICAgUmVuZGVyZXJWayAqcmVuZGVyZXIgPSBkaXNwbGF5
VmstPmdldFJlbmRlcmVyKCk7CiAgICAgLy8gRnJvbnQgZW5kIG11c3QgZW5zdXJlIGFsbCB1c2Fn
ZSBoYXMgYmVlbiBzdWJtaXR0ZWQuCisgICAgaW1hZ2UuY29sbGVjdFZpZXdHYXJiYWdlKHJlbmRl
cmVyLCAmaW1hZ2VWaWV3cyk7CiAgICAgaW1hZ2UucmVsZWFzZUltYWdlKHJlbmRlcmVyKTsKICAg
ICBpbWFnZS5yZWxlYXNlU3RhZ2VkVXBkYXRlcyhyZW5kZXJlcik7Ci0gICAgaW1hZ2VWaWV3cy5y
ZWxlYXNlKHJlbmRlcmVyKTsKIH0KIAogT2Zmc2NyZWVuU3VyZmFjZVZrOjpPZmZzY3JlZW5TdXJm
YWNlVmsoY29uc3QgZWdsOjpTdXJmYWNlU3RhdGUgJnN1cmZhY2VTdGF0ZSwgUmVuZGVyZXJWayAq
cmVuZGVyZXIpCkBAIC03MzEsNyArNzM1LDggQEAgV2luZG93U3VyZmFjZVZrOjpXaW5kb3dTdXJm
YWNlVmsoY29uc3QgZWdsOjpTdXJmYWNlU3RhdGUgJnN1cmZhY2VTdGF0ZSwgRUdMTmF0aXYKICAg
ICAgIG1EZXB0aFN0ZW5jaWxJbWFnZUJpbmRpbmcodGhpcywga0FueVN1cmZhY2VJbWFnZVN1Ympl
Y3RJbmRleCksCiAgICAgICBtQ29sb3JJbWFnZU1TQmluZGluZyh0aGlzLCBrQW55U3VyZmFjZUlt
YWdlU3ViamVjdEluZGV4KSwKICAgICAgIG1OZWVkVG9BY3F1aXJlTmV4dFN3YXBjaGFpbkltYWdl
KGZhbHNlKSwKLSAgICAgIG1GcmFtZUNvdW50KDEpCisgICAgICBtRnJhbWVDb3VudCgxKSwKKyAg
ICAgIG1CdWZmZXJBZ2VRdWVyeUZyYW1lTnVtYmVyKDApCiB7CiAgICAgLy8gSW5pdGlhbGl6ZSB0
aGUgY29sb3IgcmVuZGVyIHRhcmdldCB3aXRoIHRoZSBtdWx0aXNhbXBsZWQgdGFyZ2V0cy4gIElm
IG5vdCBtdWx0aXNhbXBsZWQsIHRoZQogICAgIC8vIHJlbmRlciB0YXJnZXQgd2lsbCBiZSB1cGRh
dGVkIHRvIHJlZmVyIHRvIGEgc3dhcGNoYWluIGltYWdlIG9uIGV2ZXJ5IGFjcXVpcmUuCkBAIC0x
NDc2LDE2ICsxNDgxLDE2IEBAIHZvaWQgV2luZG93U3VyZmFjZVZrOjpyZWxlYXNlU3dhcGNoYWlu
SW1hZ2VzKENvbnRleHRWayAqY29udGV4dFZrKQogCiAgICAgaWYgKG1EZXB0aFN0ZW5jaWxJbWFn
ZS52YWxpZCgpKQogICAgIHsKKyAgICAgICAgbURlcHRoU3RlbmNpbEltYWdlLmNvbGxlY3RWaWV3
R2FyYmFnZShyZW5kZXJlciwgJm1EZXB0aFN0ZW5jaWxJbWFnZVZpZXdzKTsKICAgICAgICAgbURl
cHRoU3RlbmNpbEltYWdlLnJlbGVhc2VJbWFnZUZyb21TaGFyZUNvbnRleHRzKHJlbmRlcmVyLCBj
b250ZXh0VmspOwogICAgICAgICBtRGVwdGhTdGVuY2lsSW1hZ2UucmVsZWFzZVN0YWdlZFVwZGF0
ZXMocmVuZGVyZXIpOwotICAgICAgICBtRGVwdGhTdGVuY2lsSW1hZ2VWaWV3cy5yZWxlYXNlKHJl
bmRlcmVyKTsKICAgICB9CiAKICAgICBpZiAobUNvbG9ySW1hZ2VNUy52YWxpZCgpKQogICAgIHsK
KyAgICAgICAgbUNvbG9ySW1hZ2VNUy5jb2xsZWN0Vmlld0dhcmJhZ2UocmVuZGVyZXIsICZtQ29s
b3JJbWFnZU1TVmlld3MpOwogICAgICAgICBtQ29sb3JJbWFnZU1TLnJlbGVhc2VJbWFnZUZyb21T
aGFyZUNvbnRleHRzKHJlbmRlcmVyLCBjb250ZXh0VmspOwogICAgICAgICBtQ29sb3JJbWFnZU1T
LnJlbGVhc2VTdGFnZWRVcGRhdGVzKHJlbmRlcmVyKTsKLSAgICAgICAgbUNvbG9ySW1hZ2VNU1Zp
ZXdzLnJlbGVhc2UocmVuZGVyZXIpOwogICAgICAgICBjb250ZXh0VmstPmFkZEdhcmJhZ2UoJm1G
cmFtZWJ1ZmZlck1TKTsKICAgICB9CiAKQEAgLTE0OTMsMTEgKzE0OTgsMTIgQEAgdm9pZCBXaW5k
b3dTdXJmYWNlVms6OnJlbGVhc2VTd2FwY2hhaW5JbWFnZXMoQ29udGV4dFZrICpjb250ZXh0Vmsp
CiAKICAgICBmb3IgKFN3YXBjaGFpbkltYWdlICZzd2FwY2hhaW5JbWFnZSA6IG1Td2FwY2hhaW5J
bWFnZXMpCiAgICAgeworICAgICAgICBzd2FwY2hhaW5JbWFnZS5pbWFnZS5jb2xsZWN0Vmlld0dh
cmJhZ2UocmVuZGVyZXIsICZzd2FwY2hhaW5JbWFnZS5pbWFnZVZpZXdzKTsKKyAgICAgICAgc3dh
cGNoYWluSW1hZ2UuaW1hZ2UucmVsZWFzZUltYWdlQW5kVmlld0dhcmJhZ2UocmVuZGVyZXIpOwog
ICAgICAgICAvLyBXZSBkb24ndCBvd24gdGhlIHN3YXBjaGFpbiBpbWFnZSBoYW5kbGVzLCBzbyB3
ZSBqdXN0IHJlbW92ZSBvdXIgcmVmZXJlbmNlIHRvIGl0LgogICAgICAgICBzd2FwY2hhaW5JbWFn
ZS5pbWFnZS5yZXNldEltYWdlV2Vha1JlZmVyZW5jZSgpOwogICAgICAgICBzd2FwY2hhaW5JbWFn
ZS5pbWFnZS5kZXN0cm95KHJlbmRlcmVyKTsKIAotICAgICAgICBzd2FwY2hhaW5JbWFnZS5pbWFn
ZVZpZXdzLnJlbGVhc2UocmVuZGVyZXIpOwogICAgICAgICBjb250ZXh0VmstPmFkZEdhcmJhZ2Uo
JnN3YXBjaGFpbkltYWdlLmZyYW1lYnVmZmVyKTsKICAgICAgICAgaWYgKHN3YXBjaGFpbkltYWdl
LmZldGNoRnJhbWVidWZmZXIudmFsaWQoKSkKICAgICAgICAgewpAQCAtMTg4MCwxNCArMTg4Niwx
MiBAQCBhbmdsZTo6UmVzdWx0IFdpbmRvd1N1cmZhY2VWazo6ZG9EZWZlcnJlZEFjcXVpcmVOZXh0
SW1hZ2UoY29uc3QgZ2w6OkNvbnRleHQgKmNvbgogICAgICAgICBBTkdMRV9WS19UUlkoY29udGV4
dFZrLCByZXN1bHQpOwogICAgIH0KIAotICAgIC8vIEludmFsaWRhdGUgdGhlIGNvbG9yIGltYWdl
IGlmIHRoZSBzd2FwIGJlaGF2aW9yIGlzIEVHTF9CVUZGRVJfREVTVFJPWUVELgotICAgIC8vIEFs
c28gaW52YWxpZGF0ZSB0aGUgbXVsdGktc2FtcGxlIGNvbG9yIGltYWdlIGFuZCBkZXB0aC9zdGVu
Y2lsIGNvbnRlbnQuCi0gICAgaWYgKG1TdGF0ZS5zd2FwQmVoYXZpb3IgPT0gRUdMX0JVRkZFUl9E
RVNUUk9ZRUQpCisgICAgaWYgKG1TdGF0ZS5zd2FwQmVoYXZpb3IgPT0gRUdMX0JVRkZFUl9ERVNU
Uk9ZRUQgJiYgbUJ1ZmZlckFnZVF1ZXJ5RnJhbWVOdW1iZXIgPT0gMCkKICAgICB7CiAgICAgICAg
IG1Td2FwY2hhaW5JbWFnZXNbbUN1cnJlbnRTd2FwY2hhaW5JbWFnZUluZGV4XS5pbWFnZS5pbnZh
bGlkYXRlU3VicmVzb3VyY2VDb250ZW50KAogICAgICAgICAgICAgY29udGV4dFZrLCBnbDo6TGV2
ZWxJbmRleCgwKSwgMCwgMSk7CisgICAgICAgIG1Db2xvckltYWdlTVMuaW52YWxpZGF0ZVN1YnJl
c291cmNlQ29udGVudChjb250ZXh0VmssIGdsOjpMZXZlbEluZGV4KDApLCAwLCAxKTsKICAgICB9
Ci0gICAgbUNvbG9ySW1hZ2VNUy5pbnZhbGlkYXRlU3VicmVzb3VyY2VDb250ZW50KGNvbnRleHRW
aywgZ2w6OkxldmVsSW5kZXgoMCksIDAsIDEpOwogICAgIG1EZXB0aFN0ZW5jaWxJbWFnZS5pbnZh
bGlkYXRlU3VicmVzb3VyY2VDb250ZW50KGNvbnRleHRWaywgZ2w6OkxldmVsSW5kZXgoMCksIDAs
IDEpOwogICAgIG1EZXB0aFN0ZW5jaWxJbWFnZS5pbnZhbGlkYXRlU3VicmVzb3VyY2VTdGVuY2ls
Q29udGVudChjb250ZXh0VmssIGdsOjpMZXZlbEluZGV4KDApLCAwLCAxKTsKIApAQCAtMjMxNywx
MyArMjMyMSw2IEBAIGFuZ2xlOjpSZXN1bHQgV2luZG93U3VyZmFjZVZrOjpkcmF3T3ZlcmxheShD
b250ZXh0VmsgKmNvbnRleHRWaywgU3dhcGNoYWluSW1hZ2UKIAogZWdsOjpFcnJvciBXaW5kb3dT
dXJmYWNlVms6OmdldEJ1ZmZlckFnZShjb25zdCBnbDo6Q29udGV4dCAqY29udGV4dCwgRUdMaW50
ICphZ2UpCiB7Ci0gICAgLy8gU2V0IGFnZSB0byAwIGlmIHN3YXAgYmVoYXZpb3IgaXMgRUdMX0JV
RkZFUl9ERVNUUk9ZRUQuCi0gICAgaWYgKGFnZSAhPSBudWxscHRyICYmIG1TdGF0ZS5zd2FwQmVo
YXZpb3IgPT0gRUdMX0JVRkZFUl9ERVNUUk9ZRUQpCi0gICAgewotICAgICAgICAqYWdlID0gMDsK
LSAgICAgICAgcmV0dXJuIGVnbDo6Tm9FcnJvcigpOwotICAgIH0KLQogICAgIGlmIChtTmVlZFRv
QWNxdWlyZU5leHRTd2FwY2hhaW5JbWFnZSkKICAgICB7CiAgICAgICAgIC8vIEFjcXVpcmUgdGhl
IGN1cnJlbnQgaW1hZ2UgaWYgbmVlZGVkLgpAQCAtMjMzNiwxMiArMjMzMywxOSBAQCBlZ2w6OkVy
cm9yIFdpbmRvd1N1cmZhY2VWazo6Z2V0QnVmZmVyQWdlKGNvbnN0IGdsOjpDb250ZXh0ICpjb250
ZXh0LCBFR0xpbnQgKmFnZQogICAgICAgICB9CiAgICAgfQogCisgICAgaWYgKG1CdWZmZXJBZ2VR
dWVyeUZyYW1lTnVtYmVyID09IDApCisgICAgeworICAgICAgICBBTkdMRV9WS19QRVJGX1dBUk5J
Tkcodms6OkdldEltcGwoY29udGV4dCksIEdMX0RFQlVHX1NFVkVSSVRZX0xPVywKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICJRdWVyeWluZyBhZ2Ugb2YgYSBzdXJmYWNlIHdpbGwgbWFr
ZSBpdCByZXRhaW4gaXRzIGNvbnRlbnQiKTsKKworICAgICAgICBtQnVmZmVyQWdlUXVlcnlGcmFt
ZU51bWJlciA9IG1GcmFtZUNvdW50OworICAgIH0KICAgICBpZiAoYWdlICE9IG51bGxwdHIpCiAg
ICAgewogICAgICAgICB1aW50NjRfdCBmcmFtZU51bWJlciA9IG1Td2FwY2hhaW5JbWFnZXNbbUN1
cnJlbnRTd2FwY2hhaW5JbWFnZUluZGV4XS5tRnJhbWVOdW1iZXI7Ci0gICAgICAgIGlmIChmcmFt
ZU51bWJlciA9PSAwKQorICAgICAgICBpZiAoZnJhbWVOdW1iZXIgPCBtQnVmZmVyQWdlUXVlcnlG
cmFtZU51bWJlcikKICAgICAgICAgewotICAgICAgICAgICAgKmFnZSA9IDA7ICAvLyBIYXMgbm90
IGJlZW4gdXNlZCBmb3IgcmVuZGVyaW5nIHlldCwgbm8gYWdlLgorICAgICAgICAgICAgKmFnZSA9
IDA7ICAvLyBIYXMgbm90IGJlZW4gdXNlZCBmb3IgcmVuZGVyaW5nIHlldCBvciBzaW5jZSBhZ2Ug
d2FzIHF1ZXJpZWQsIG5vIGFnZS4KICAgICAgICAgfQogICAgICAgICBlbHNlCiAgICAgICAgIHsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJl
ci92dWxrYW4vU3VyZmFjZVZrLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5H
TEUvcmVuZGVyZXIvdnVsa2FuL1N1cmZhY2VWay5oCmluZGV4IDIxNTUxMTJiNDhiZTk4YWEzOTQ1
MmMwOWU2ZmYzYzE3NjdiNGFmZGUuLmJmNGJlZjc2YmI2Y2I3ZjBmMzk5ZTZhOTg0NmZmZjBmNDRi
YjAyZWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9y
ZW5kZXJlci92dWxrYW4vU3VyZmFjZVZrLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUv
c3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9TdXJmYWNlVmsuaApAQCAtNDExLDYgKzQxMSw5
IEBAIGNsYXNzIFdpbmRvd1N1cmZhY2VWayA6IHB1YmxpYyBTdXJmYWNlVmsKICAgICAvLyBFR0xf
S0hSX2xvY2tfc3VyZmFjZTMKICAgICB2azo6QnVmZmVySGVscGVyIG1Mb2NrQnVmZmVySGVscGVy
OwogCisgICAgLy8gRUdMX0tIUl9wYXJ0aWFsX3VwZGF0ZQorICAgIHVpbnQ2NF90IG1CdWZmZXJB
Z2VRdWVyeUZyYW1lTnVtYmVyOworCiAgICAgLy8gR0xfRVhUX3NoYWRlcl9mcmFtZWJ1ZmZlcl9m
ZXRjaAogICAgIEZyYW1lYnVmZmVyRmV0Y2hNb2RlIG1GcmFtZWJ1ZmZlckZldGNoTW9kZSA9IEZy
YW1lYnVmZmVyRmV0Y2hNb2RlOjpEaXNhYmxlZDsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL1RleHR1cmVWay5jcHAg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL1Rl
eHR1cmVWay5jcHAKaW5kZXggMjM5MGE5NDM1MzIzNTE4YzQ1YzdhN2IyMDU5ZjkwYzVmZWIwYTQ1
Ny4uYzJiZmJjMzk0OWI3ODJjYTIyZmJhNmFhMDIzMDRiYzhhOTU2ZDJlNCAxMDA2NDQKLS0tIGEv
U291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9UZXh0
dXJlVmsuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5k
ZXJlci92dWxrYW4vVGV4dHVyZVZrLmNwcApAQCAtMjY2LDE1ICsyNjYsMTUgQEAgdm9pZCBTZXQz
REJhc2VBcnJheUxheWVyQW5kTGF5ZXJDb3VudChWa0ltYWdlU3VicmVzb3VyY2VMYXllcnMgKlN1
YnJlc291cmNlKQogICAgIFN1YnJlc291cmNlLT5sYXllckNvdW50ICAgICA9IDE7CiB9CiAKLWNv
bnN0IHZrOjpGb3JtYXQgKkFkanVzdFN0b3JhZ2VWaWV3Rm9ybWF0UGVyV29ya2Fyb3VuZHMoQ29u
dGV4dFZrICpjb250ZXh0VmssCitjb25zdCB2azo6Rm9ybWF0ICpBZGp1c3RTdG9yYWdlVmlld0Zv
cm1hdFBlcldvcmthcm91bmRzKFJlbmRlcmVyVmsgKnJlbmRlcmVyLAogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB2azo6Rm9ybWF0
ICppbnRlbmRlZCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgdms6OkltYWdlQWNjZXNzIGFjY2VzcykKIHsKICAgICAvLyByMzJmIGltYWdl
cyBhcmUgZW11bGF0ZWQgd2l0aCByMzJ1aS4KLSAgICBpZiAoY29udGV4dFZrLT5nZXRGZWF0dXJl
cygpLmVtdWxhdGVSMzJmSW1hZ2VBdG9taWNFeGNoYW5nZS5lbmFibGVkICYmCisgICAgaWYgKHJl
bmRlcmVyLT5nZXRGZWF0dXJlcygpLmVtdWxhdGVSMzJmSW1hZ2VBdG9taWNFeGNoYW5nZS5lbmFi
bGVkICYmCiAgICAgICAgIGludGVuZGVkLT5nZXRBY3R1YWxJbWFnZUZvcm1hdElEKGFjY2Vzcykg
PT0gYW5nbGU6OkZvcm1hdElEOjpSMzJfRkxPQVQpCiAgICAgewotICAgICAgICByZXR1cm4gJmNv
bnRleHRWay0+Z2V0UmVuZGVyZXIoKS0+Z2V0Rm9ybWF0KGFuZ2xlOjpGb3JtYXRJRDo6UjMyX1VJ
TlQpOworICAgICAgICByZXR1cm4gJnJlbmRlcmVyLT5nZXRGb3JtYXQoYW5nbGU6OkZvcm1hdElE
OjpSMzJfVUlOVCk7CiAgICAgfQogCiAgICAgcmV0dXJuIGludGVuZGVkOwpAQCAtNzk1LDcgKzc5
NSw3IEBAIGFuZ2xlOjpSZXN1bHQgVGV4dHVyZVZrOjpjb3B5U3ViSW1hZ2VJbXBsKGNvbnN0IGds
OjpDb250ZXh0ICpjb250ZXh0LAogICAgICAgICAgICAgY29udGV4dFZrLT5mbHVzaENvbW1hbmRz
QW5kRW5kUmVuZGVyUGFzcyhSZW5kZXJQYXNzQ2xvc3VyZVJlYXNvbjo6UHJlcGFyZUZvckltYWdl
Q29weSkpOwogCiAgICAgICAgIGNvbnN0IHZrOjpJbWFnZVZpZXcgKmNvcHlJbWFnZVZpZXcgPSBu
dWxscHRyOwotICAgICAgICBBTkdMRV9UUlkoY29sb3JSZWFkUlQtPmdldEFuZFJldGFpbkNvcHlJ
bWFnZVZpZXcoY29udGV4dFZrLCAmY29weUltYWdlVmlldykpOworICAgICAgICBBTkdMRV9UUlko
Y29sb3JSZWFkUlQtPmdldENvcHlJbWFnZVZpZXcoY29udGV4dFZrLCAmY29weUltYWdlVmlldykp
OwogCiAgICAgICAgIHJldHVybiBjb3B5U3ViSW1hZ2VJbXBsV2l0aERyYXcoY29udGV4dFZrLCBv
ZmZzZXRJbWFnZUluZGV4LCBtb2RpZmllZERlc3RPZmZzZXQsIGRzdEZvcm1hdCwKICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvclJlYWRSVC0+Z2V0TGV2ZWxJbmRl
eCgpLCBjbGlwcGVkU291cmNlQm94LApAQCAtODY5LDcgKzg2OSw3IEBAIGFuZ2xlOjpSZXN1bHQg
VGV4dHVyZVZrOjpjb3B5U3ViVGV4dHVyZUltcGwoQ29udGV4dFZrICpjb250ZXh0VmssCiAgICAg
ICAgIHJldHVybiBjb3B5U3ViSW1hZ2VJbXBsV2l0aERyYXcoCiAgICAgICAgICAgICBjb250ZXh0
VmssIG9mZnNldEltYWdlSW5kZXgsIGRzdE9mZnNldCwgZHN0VmtGb3JtYXQsIHNvdXJjZUxldmVs
R0wsIHNvdXJjZUJveCwgZmFsc2UsCiAgICAgICAgICAgICB1bnBhY2tGbGlwWSwgdW5wYWNrUHJl
bXVsdGlwbHlBbHBoYSwgdW5wYWNrVW5tdWx0aXBseUFscGhhLCAmc291cmNlLT5nZXRJbWFnZSgp
LAotICAgICAgICAgICAgJnNvdXJjZS0+Z2V0Q29weUltYWdlVmlld0FuZFJlY29yZFVzZShjb250
ZXh0VmspLCBTdXJmYWNlUm90YXRpb246OklkZW50aXR5KTsKKyAgICAgICAgICAgICZzb3VyY2Ut
PmdldENvcHlJbWFnZVZpZXcoKSwgU3VyZmFjZVJvdGF0aW9uOjpJZGVudGl0eSk7CiAgICAgfQog
CiAgICAgQU5HTEVfVktfUEVSRl9XQVJOSU5HKGNvbnRleHRWaywgR0xfREVCVUdfU0VWRVJJVFlf
SElHSCwKQEAgLTE0ODIsOCArMTQ4Miw4IEBAIHZvaWQgVGV4dHVyZVZrOjpyZWxlYXNlQW5kRGVs
ZXRlSW1hZ2VBbmRWaWV3cyhDb250ZXh0VmsgKmNvbnRleHRWaykKIHsKICAgICBpZiAobUltYWdl
KQogICAgIHsKLSAgICAgICAgcmVsZWFzZUltYWdlKGNvbnRleHRWayk7CiAgICAgICAgIHJlbGVh
c2VTdGFnZWRVcGRhdGVzKGNvbnRleHRWayk7CisgICAgICAgIHJlbGVhc2VJbWFnZShjb250ZXh0
VmspOwogICAgICAgICBtSW1hZ2VPYnNlcnZlckJpbmRpbmcuYmluZChudWxscHRyKTsKICAgICAg
ICAgbVJlcXVpcmVzTXV0YWJsZVN0b3JhZ2UgPSBmYWxzZTsKICAgICAgICAgbVJlcXVpcmVkSW1h
Z2VBY2Nlc3MgICAgPSB2azo6SW1hZ2VBY2Nlc3M6OlNhbXBsZU9ubHk7CkBAIC0xOTQzLDcgKzE5
NDMsNiBAQCBhbmdsZTo6UmVzdWx0IFRleHR1cmVWazo6Z2VuZXJhdGVNaXBtYXAoY29uc3QgZ2w6
OkNvbnRleHQgKmNvbnRleHQpCiAgICAgICAgIEFTU0VSVCgobUltYWdlVXNhZ2VGbGFncyAmIFZL
X0lNQUdFX1VTQUdFX1NUT1JBR0VfQklUKSAhPSAwKTsKIAogICAgICAgICBtSW1hZ2UtPnJldGFp
bigmY29udGV4dFZrLT5nZXRSZXNvdXJjZVVzZUxpc3QoKSk7Ci0gICAgICAgIGdldEltYWdlVmll
d3MoKS5yZXRhaW4oJmNvbnRleHRWay0+Z2V0UmVzb3VyY2VVc2VMaXN0KCkpOwogCiAgICAgICAg
IHJldHVybiBnZW5lcmF0ZU1pcG1hcHNXaXRoQ29tcHV0ZShjb250ZXh0VmspOwogICAgIH0KQEAg
LTIxNDUsOCArMjE0NCw3IEBAIGFuZ2xlOjpSZXN1bHQgVGV4dHVyZVZrOjpyZWluaXRJbWFnZUFz
UmVuZGVyYWJsZShDb250ZXh0VmsgKmNvbnRleHRWaywKIAogICAgICAgICByZXR1cm4gY29weVN1
YkltYWdlSW1wbFdpdGhEcmF3KGNvbnRleHRWaywgaW5kZXgsIGdsOjprT2Zmc2V0WmVybywgZm9y
bWF0LCBzb3VyY2VMZXZlbEdMLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHNvdXJjZUJveCwgZmFsc2UsIGZhbHNlLCBmYWxzZSwgZmFsc2UsIG1JbWFnZSwKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmZ2V0Q29weUltYWdlVmlld0FuZFJl
Y29yZFVzZShjb250ZXh0VmspLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFN1cmZhY2VSb3RhdGlvbjo6SWRlbnRpdHkpOworICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICZnZXRDb3B5SW1hZ2VWaWV3KCksIFN1cmZhY2VSb3RhdGlvbjo6SWRl
bnRpdHkpOwogICAgIH0KIAogICAgIGZvciAodms6OkxldmVsSW5kZXggbGV2ZWxWaygwKTsgbGV2
ZWxWayA8IHZrOjpMZXZlbEluZGV4KGxldmVsQ291bnQpOyArK2xldmVsVmspCkBAIC0yMjY0LDEx
ICsyMjYyLDggQEAgYW5nbGU6OlJlc3VsdCBUZXh0dXJlVms6OnJlc3BlY2lmeUltYWdlU3RvcmFn
ZShDb250ZXh0VmsgKmNvbnRleHRWaykKICAgICAgICAgfQogICAgICAgICBlbHNlCiAgICAgICAg
IHsKLSAgICAgICAgICAgIC8vIE1ha2UgdGhlIGltYWdlIHN0YWdlIGl0c2VsZiBhcyB1cGRhdGVz
IHRvIGl0cyBsZXZlbHMuCi0gICAgICAgICAgICBtSW1hZ2UtPnN0YWdlU2VsZkFzU3VicmVzb3Vy
Y2VVcGRhdGVzKGNvbnRleHRWaywgbUltYWdlLT5nZXRMZXZlbENvdW50KCksCi0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1SZWRlZmluZWRMZXZlbHMp
OworICAgICAgICAgICAgc3RhZ2VTZWxmQXNTdWJyZXNvdXJjZVVwZGF0ZXMoY29udGV4dFZrKTsK
ICAgICAgICAgfQotCiAgICAgICAgIC8vIFJlbGVhc2UgdGhlIGN1cnJlbnQgaW1hZ2Ugc28gdGhh
dCBpdCB3aWxsIGJlIHJlY3JlYXRlZCB3aXRoIHRoZSBjb3JyZWN0IG51bWJlciBvZiBtaXAKICAg
ICAgICAgLy8gbGV2ZWxzLCBiYXNlIGxldmVsLCBhbmQgbWF4IGxldmVsLgogICAgICAgICByZWxl
YXNlSW1hZ2UoY29udGV4dFZrKTsKQEAgLTIzMjQsNiArMjMxOSwxNSBAQCBhbmdsZTo6UmVzdWx0
IFRleHR1cmVWazo6Z2V0QXR0YWNobWVudFJlbmRlclRhcmdldChjb25zdCBnbDo6Q29udGV4dCAq
Y29udGV4dCwKICAgICBBU1NFUlQobVN0YXRlLmhhc0JlZW5Cb3VuZEFzQXR0YWNobWVudCgpKTsK
ICAgICBBTkdMRV9UUlkoZW5zdXJlUmVuZGVyYWJsZShjb250ZXh0VmspKTsKIAorICAgIGlmICht
UmVkZWZpbmVkTGV2ZWxzLmFueSgpKQorICAgIHsKKyAgICAgICAgLy8gSWYgd2UgaGF2ZSByZWRl
ZmluZWQgbGV2ZWxzLCB3ZSBtdXN0IGZsdXNoIHRob3NlIG91dCB0byBmaXggdGhlIHJlbmRlciB0
YXJnZXRzLgorICAgICAgICBBTkdMRV9UUlkocmVzcGVjaWZ5SW1hZ2VTdG9yYWdlKGNvbnRleHRW
aykpOworICAgIH0KKworICAgIC8vIE90aGVyd2lzZSwgZG9uJ3QgZmx1c2ggc3RhZ2VkIHVwZGF0
ZXMgaGVyZS4gV2UnbGwgaGFuZGxlIHRoYXQgaW4gRnJhbWVidWZmZXJWayBzbyB3ZSBjYW4KKyAg
ICAvLyBkZWZlciBjbGVhcnMuCisKICAgICBpZiAoIW1JbWFnZS0+dmFsaWQoKSkKICAgICB7CiAg
ICAgICAgIC8vIEltbXV0YWJsZSB0ZXh0dXJlIG11c3QgYWxyZWFkeSBoYXZlIGEgdmFsaWQgaW1h
Z2UKQEAgLTIzNjMsOCArMjM2Nyw2IEBAIGFuZ2xlOjpSZXN1bHQgVGV4dHVyZVZrOjpnZXRBdHRh
Y2htZW50UmVuZGVyVGFyZ2V0KGNvbnN0IGdsOjpDb250ZXh0ICpjb250ZXh0LAogICAgICAgICAg
ICAgbVN0YXRlLmdldFR5cGUoKSwgc2FtcGxlcywgKm1JbWFnZSwgdXNlUm9idXN0SW5pdCkpOwog
ICAgIH0KIAotICAgIC8vIERvbid0IGZsdXNoIHN0YWdlZCB1cGRhdGVzIGhlcmUuIFdlJ2xsIGhh
bmRsZSB0aGF0IGluIEZyYW1lYnVmZmVyVmsgc28gaXQgY2FuIGRlZmVyIGNsZWFycy4KLQogICAg
IEdMdWludCBsYXllckluZGV4ID0gMCwgbGF5ZXJDb3VudCA9IDAsIGltYWdlTGF5ZXJDb3VudCA9
IDA7CiAgICAgR2V0UmVuZGVyVGFyZ2V0TGF5ZXJDb3VudEFuZEluZGV4KG1JbWFnZSwgaW1hZ2VJ
bmRleCwgJmxheWVySW5kZXgsICZsYXllckNvdW50LAogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAmaW1hZ2VMYXllckNvdW50KTsKQEAgLTIzNzUsMTAgKzIzNzcsMTQgQEAg
YW5nbGU6OlJlc3VsdCBUZXh0dXJlVms6OmdldEF0dGFjaG1lbnRSZW5kZXJUYXJnZXQoY29uc3Qg
Z2w6OkNvbnRleHQgKmNvbnRleHQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgZ2w6OkxldmVsSW5kZXgoaW1hZ2VJbmRleC5nZXRMZXZlbEluZGV4KCkpLAogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlbmRlclRvVGV4dHVyZUluZGV4KTsKIAotICAg
ICAgICBBU1NFUlQoaW1hZ2VJbmRleC5nZXRMZXZlbEluZGV4KCkgPAotICAgICAgICAgICAgICAg
c3RhdGljX2Nhc3Q8aW50MzJfdD4obVNpbmdsZUxheWVyUmVuZGVyVGFyZ2V0c1tyZW5kZXJUb1Rl
eHR1cmVJbmRleF0uc2l6ZSgpKSk7Ci0gICAgICAgICpydE91dCA9ICZtU2luZ2xlTGF5ZXJSZW5k
ZXJUYXJnZXRzW3JlbmRlclRvVGV4dHVyZUluZGV4XVtpbWFnZUluZGV4LmdldExldmVsSW5kZXgo
KV0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbGF5ZXJJbmRl
eF07CisgICAgICAgIHN0ZDo6dmVjdG9yPFJlbmRlclRhcmdldFZlY3Rvcj4gJmxldmVsUmVuZGVy
VGFyZ2V0cyA9CisgICAgICAgICAgICBtU2luZ2xlTGF5ZXJSZW5kZXJUYXJnZXRzW3JlbmRlclRv
VGV4dHVyZUluZGV4XTsKKyAgICAgICAgQVNTRVJUKGltYWdlSW5kZXguZ2V0TGV2ZWxJbmRleCgp
IDwgc3RhdGljX2Nhc3Q8aW50MzJfdD4obGV2ZWxSZW5kZXJUYXJnZXRzLnNpemUoKSkpOworCisg
ICAgICAgIFJlbmRlclRhcmdldFZlY3RvciAmbGF5ZXJSZW5kZXJUYXJnZXRzID0gbGV2ZWxSZW5k
ZXJUYXJnZXRzW2ltYWdlSW5kZXguZ2V0TGV2ZWxJbmRleCgpXTsKKyAgICAgICAgQVNTRVJUKGlt
YWdlSW5kZXguZ2V0TGF5ZXJJbmRleCgpIDwgc3RhdGljX2Nhc3Q8aW50MzJfdD4obGF5ZXJSZW5k
ZXJUYXJnZXRzLnNpemUoKSkpOworCisgICAgICAgICpydE91dCA9ICZsYXllclJlbmRlclRhcmdl
dHNbbGF5ZXJJbmRleF07CiAgICAgfQogICAgIGVsc2UKICAgICB7CkBAIC0yNjc4LDkgKzI2ODQs
OSBAQCBhbmdsZTo6UmVzdWx0IFRleHR1cmVWazo6c3luY1N0YXRlKGNvbnN0IGdsOjpDb250ZXh0
ICpjb250ZXh0LAogICAgICAgICAvLyB0aGUgbGV2ZWxzIGhhdmUgYWxyZWFkeSBiZWVuIGRpc2Nh
cmRlZCB0aHJvdWdoIHRoZSB8cmVtb3ZlU3RhZ2VkVXBkYXRlc3wgY2FsbCBhYm92ZS4KICAgICAg
ICAgQU5HTEVfVFJZKGZsdXNoSW1hZ2VTdGFnZWRVcGRhdGVzKGNvbnRleHRWaykpOwogCi0gICAg
ICAgIG1JbWFnZS0+c3RhZ2VTZWxmQXNTdWJyZXNvdXJjZVVwZGF0ZXMoY29udGV4dFZrLCAxLCB7
fSk7CisgICAgICAgIHN0YWdlU2VsZkFzU3VicmVzb3VyY2VVcGRhdGVzKGNvbnRleHRWayk7CiAK
LSAgICAgICAgLy8gUmVsZWFzZSB2aWV3cyBhbmQgcmVuZGVyIHRhcmdldHMgY3JlYXRlZCBmb3Ig
dGhlIG9sZCBpbWFnZS4KKyAgICAgICAgLy8gUmVsZWFzZSB0aGUgbUltYWdlIHdpdGhvdXQgY29s
bGVjdGluZyBnYXJiYWdlIGZyb20gaW1hZ2Ugdmlld3MuCiAgICAgICAgIHJlbGVhc2VJbWFnZShj
b250ZXh0VmspOwogICAgIH0KIApAQCAtMjc3MSwxMiArMjc3NywxMiBAQCB2b2lkIFRleHR1cmVW
azo6cmVsZWFzZU93bmVyc2hpcE9mSW1hZ2UoY29uc3QgZ2w6OkNvbnRleHQgKmNvbnRleHQpCiAg
ICAgcmVsZWFzZUFuZERlbGV0ZUltYWdlQW5kVmlld3MoY29udGV4dFZrKTsKIH0KIAotYm9vbCBU
ZXh0dXJlVms6OnNob3VsZERlY29kZVNSR0IoQ29udGV4dFZrICpjb250ZXh0VmssCitib29sIFRl
eHR1cmVWazo6c2hvdWxkRGVjb2RlU1JHQih2azo6Q29udGV4dCAqY29udGV4dCwKICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIEdMZW51bSBzcmdiRGVjb2RlLAogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgYm9vbCB0ZXhlbEZldGNoU3RhdGljVXNlKSBjb25zdAogewog
ICAgIC8vIEJ5IGRlZmF1bHQsIHdlIGRlY29kZSBTUkdCIGltYWdlcy4KLSAgICBjb25zdCB2azo6
Rm9ybWF0ICZmb3JtYXQgPSBnZXRCYXNlTGV2ZWxGb3JtYXQoY29udGV4dFZrLT5nZXRSZW5kZXJl
cigpKTsKKyAgICBjb25zdCB2azo6Rm9ybWF0ICZmb3JtYXQgPSBnZXRCYXNlTGV2ZWxGb3JtYXQo
Y29udGV4dC0+Z2V0UmVuZGVyZXIoKSk7CiAgICAgYm9vbCBkZWNvZGVTUkdCICAgICAgICAgID0g
Zm9ybWF0LmdldEFjdHVhbEltYWdlRm9ybWF0KGdldFJlcXVpcmVkSW1hZ2VBY2Nlc3MoKSkuaXNT
UkdCOwogCiAgICAgLy8gSWYgdGhlIFNSR0Igb3ZlcnJpZGUgaXMgZW5hYmxlZCwgd2UgYWxzbyBk
ZWNvZGUgU1JHQi4KQEAgLTI4MDEsMjEgKzI4MDcsMjAgQEAgYm9vbCBUZXh0dXJlVms6OnNob3Vs
ZERlY29kZVNSR0IoQ29udGV4dFZrICpjb250ZXh0VmssCiAgICAgcmV0dXJuIGRlY29kZVNSR0I7
CiB9CiAKLWNvbnN0IHZrOjpJbWFnZVZpZXcgJlRleHR1cmVWazo6Z2V0UmVhZEltYWdlVmlld0Fu
ZFJlY29yZFVzZShDb250ZXh0VmsgKmNvbnRleHRWaywKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTGVudW0gc3JnYkRlY29kZSwK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBib29sIHRleGVsRmV0Y2hTdGF0aWNVc2UpIGNvbnN0Citjb25zdCB2azo6SW1hZ2VWaWV3
ICZUZXh0dXJlVms6OmdldFJlYWRJbWFnZVZpZXcodms6OkNvbnRleHQgKmNvbnRleHQsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xlbnVtIHNyZ2JE
ZWNvZGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Ym9vbCB0ZXhlbEZldGNoU3RhdGljVXNlKSBjb25zdAogewogICAgIEFTU0VSVChtSW1hZ2UtPnZh
bGlkKCkpOwogCiAgICAgY29uc3Qgdms6OkltYWdlVmlld0hlbHBlciAmaW1hZ2VWaWV3cyA9IGdl
dEltYWdlVmlld3MoKTsKLSAgICBpbWFnZVZpZXdzLnJldGFpbigmY29udGV4dFZrLT5nZXRSZXNv
dXJjZVVzZUxpc3QoKSk7CiAKICAgICBpZiAobVN0YXRlLmlzU3RlbmNpbE1vZGUoKSAmJiBpbWFn
ZVZpZXdzLmhhc1N0ZW5jaWxSZWFkSW1hZ2VWaWV3KCkpCiAgICAgewogICAgICAgICByZXR1cm4g
aW1hZ2VWaWV3cy5nZXRTdGVuY2lsUmVhZEltYWdlVmlldygpOwogICAgIH0KIAotICAgIGlmIChz
aG91bGREZWNvZGVTUkdCKGNvbnRleHRWaywgc3JnYkRlY29kZSwgdGV4ZWxGZXRjaFN0YXRpY1Vz
ZSkpCisgICAgaWYgKHNob3VsZERlY29kZVNSR0IoY29udGV4dCwgc3JnYkRlY29kZSwgdGV4ZWxG
ZXRjaFN0YXRpY1VzZSkpCiAgICAgewogICAgICAgICBBU1NFUlQoaW1hZ2VWaWV3cy5nZXRTUkdC
UmVhZEltYWdlVmlldygpLnZhbGlkKCkpOwogICAgICAgICByZXR1cm4gaW1hZ2VWaWV3cy5nZXRT
UkdCUmVhZEltYWdlVmlldygpOwpAQCAtMjgyNSwxOSArMjgzMCwxOCBAQCBjb25zdCB2azo6SW1h
Z2VWaWV3ICZUZXh0dXJlVms6OmdldFJlYWRJbWFnZVZpZXdBbmRSZWNvcmRVc2UoQ29udGV4dFZr
ICpjb250ZXh0VgogICAgIHJldHVybiBpbWFnZVZpZXdzLmdldExpbmVhclJlYWRJbWFnZVZpZXco
KTsKIH0KIAotY29uc3Qgdms6OkltYWdlVmlldyAmVGV4dHVyZVZrOjpnZXRGZXRjaEltYWdlVmll
d0FuZFJlY29yZFVzZShDb250ZXh0VmsgKmNvbnRleHRWaywKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xlbnVtIHNyZ2JEZWNv
ZGUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGJvb2wgdGV4ZWxGZXRjaFN0YXRpY1VzZSkgY29uc3QKK2NvbnN0IHZrOjpJbWFn
ZVZpZXcgJlRleHR1cmVWazo6Z2V0RmV0Y2hJbWFnZVZpZXcodms6OkNvbnRleHQgKmNvbnRleHQs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMZW51
bSBzcmdiRGVjb2RlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBib29sIHRleGVsRmV0Y2hTdGF0aWNVc2UpIGNvbnN0CiB7CiAgICAgQVNTRVJUKG1J
bWFnZS0+dmFsaWQoKSk7CiAKICAgICBjb25zdCB2azo6SW1hZ2VWaWV3SGVscGVyICZpbWFnZVZp
ZXdzID0gZ2V0SW1hZ2VWaWV3cygpOwotICAgIGltYWdlVmlld3MucmV0YWluKCZjb250ZXh0Vmst
PmdldFJlc291cmNlVXNlTGlzdCgpKTsKIAogICAgIC8vIFdlIGRvbid0IGN1cnJlbnRseSBzdXBw
b3J0IGZldGNoIGZvciBkZXB0aC9zdGVuY2lsIGN1YmUgbWFwIHRleHR1cmVzLgogICAgIEFTU0VS
VCghaW1hZ2VWaWV3cy5oYXNTdGVuY2lsUmVhZEltYWdlVmlldygpIHx8ICFpbWFnZVZpZXdzLmhh
c0ZldGNoSW1hZ2VWaWV3KCkpOwogCi0gICAgaWYgKHNob3VsZERlY29kZVNSR0IoY29udGV4dFZr
LCBzcmdiRGVjb2RlLCB0ZXhlbEZldGNoU3RhdGljVXNlKSkKKyAgICBpZiAoc2hvdWxkRGVjb2Rl
U1JHQihjb250ZXh0LCBzcmdiRGVjb2RlLCB0ZXhlbEZldGNoU3RhdGljVXNlKSkKICAgICB7CiAg
ICAgICAgIHJldHVybiAoaW1hZ2VWaWV3cy5oYXNGZXRjaEltYWdlVmlldygpID8gaW1hZ2VWaWV3
cy5nZXRTUkdCRmV0Y2hJbWFnZVZpZXcoKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICA6IGltYWdlVmlld3MuZ2V0U1JHQlJlYWRJbWFnZVZpZXcoKSk7CkBA
IC0yODQ3LDEyICsyODUxLDExIEBAIGNvbnN0IHZrOjpJbWFnZVZpZXcgJlRleHR1cmVWazo6Z2V0
RmV0Y2hJbWFnZVZpZXdBbmRSZWNvcmRVc2UoQ29udGV4dFZrICpjb250ZXh0CiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBpbWFnZVZpZXdzLmdldExpbmVhclJl
YWRJbWFnZVZpZXcoKSk7CiB9CiAKLWNvbnN0IHZrOjpJbWFnZVZpZXcgJlRleHR1cmVWazo6Z2V0
Q29weUltYWdlVmlld0FuZFJlY29yZFVzZShDb250ZXh0VmsgKmNvbnRleHRWaykgY29uc3QKK2Nv
bnN0IHZrOjpJbWFnZVZpZXcgJlRleHR1cmVWazo6Z2V0Q29weUltYWdlVmlldygpIGNvbnN0CiB7
CiAgICAgQVNTRVJUKG1JbWFnZS0+dmFsaWQoKSk7CiAKICAgICBjb25zdCB2azo6SW1hZ2VWaWV3
SGVscGVyICZpbWFnZVZpZXdzID0gZ2V0SW1hZ2VWaWV3cygpOwotICAgIGltYWdlVmlld3MucmV0
YWluKCZjb250ZXh0VmstPmdldFJlc291cmNlVXNlTGlzdCgpKTsKIAogICAgIGNvbnN0IGFuZ2xl
OjpGb3JtYXQgJmFuZ2xlRm9ybWF0ID0gbUltYWdlLT5nZXRBY3R1YWxGb3JtYXQoKTsKICAgICBB
U1NFUlQoYW5nbGVGb3JtYXQuaXNTUkdCID09CkBAIC0yODY0LDcgKzI4NjcsNyBAQCBjb25zdCB2
azo6SW1hZ2VWaWV3ICZUZXh0dXJlVms6OmdldENvcHlJbWFnZVZpZXdBbmRSZWNvcmRVc2UoQ29u
dGV4dFZrICpjb250ZXh0VgogICAgIHJldHVybiBpbWFnZVZpZXdzLmdldExpbmVhckNvcHlJbWFn
ZVZpZXcoKTsKIH0KIAotYW5nbGU6OlJlc3VsdCBUZXh0dXJlVms6OmdldExldmVsTGF5ZXJJbWFn
ZVZpZXcoQ29udGV4dFZrICpjb250ZXh0VmssCithbmdsZTo6UmVzdWx0IFRleHR1cmVWazo6Z2V0
TGV2ZWxMYXllckltYWdlVmlldyh2azo6Q29udGV4dCAqY29udGV4dCwKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdsOjpMZXZlbEluZGV4IGxldmVsLAog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZV90IGxh
eWVyLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29u
c3Qgdms6OkltYWdlVmlldyAqKmltYWdlVmlld091dCkKQEAgLTI4NzYsMTcgKzI4NzksMTkgQEAg
YW5nbGU6OlJlc3VsdCBUZXh0dXJlVms6OmdldExldmVsTGF5ZXJJbWFnZVZpZXcoQ29udGV4dFZr
ICpjb250ZXh0VmssCiAgICAgdWludDMyX3QgbmF0aXZlTGF5ZXIgICA9IGdldE5hdGl2ZUltYWdl
TGF5ZXIoc3RhdGljX2Nhc3Q8dWludDMyX3Q+KGxheWVyKSk7CiAKICAgICByZXR1cm4gZ2V0SW1h
Z2VWaWV3cygpLmdldExldmVsTGF5ZXJEcmF3SW1hZ2VWaWV3KAotICAgICAgICBjb250ZXh0Vmss
ICptSW1hZ2UsIGxldmVsVmssIG5hdGl2ZUxheWVyLCBnbDo6U3JnYldyaXRlQ29udHJvbE1vZGU6
OkRlZmF1bHQsIGltYWdlVmlld091dCk7CisgICAgICAgIGNvbnRleHQsICptSW1hZ2UsIGxldmVs
VmssIG5hdGl2ZUxheWVyLCBnbDo6U3JnYldyaXRlQ29udHJvbE1vZGU6OkRlZmF1bHQsIGltYWdl
Vmlld091dCk7CiB9CiAKLWFuZ2xlOjpSZXN1bHQgVGV4dHVyZVZrOjpnZXRTdG9yYWdlSW1hZ2VW
aWV3KENvbnRleHRWayAqY29udGV4dFZrLAorYW5nbGU6OlJlc3VsdCBUZXh0dXJlVms6OmdldFN0
b3JhZ2VJbWFnZVZpZXcodms6OkNvbnRleHQgKmNvbnRleHQsCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBnbDo6SW1hZ2VVbml0ICZiaW5kaW5nLAog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgdms6Oklt
YWdlVmlldyAqKmltYWdlVmlld091dCkKIHsKKyAgICBSZW5kZXJlclZrICpyZW5kZXJlciA9IGNv
bnRleHQtPmdldFJlbmRlcmVyKCk7CisKICAgICBhbmdsZTo6Rm9ybWF0SUQgZm9ybWF0SUQgPSBh
bmdsZTo6Rm9ybWF0OjpJbnRlcm5hbEZvcm1hdFRvSUQoYmluZGluZy5mb3JtYXQpOwotICAgIGNv
bnN0IHZrOjpGb3JtYXQgKmZvcm1hdCA9ICZjb250ZXh0VmstPmdldFJlbmRlcmVyKCktPmdldEZv
cm1hdChmb3JtYXRJRCk7CisgICAgY29uc3Qgdms6OkZvcm1hdCAqZm9ybWF0ID0gJnJlbmRlcmVy
LT5nZXRGb3JtYXQoZm9ybWF0SUQpOwogCi0gICAgZm9ybWF0ID0gQWRqdXN0U3RvcmFnZVZpZXdG
b3JtYXRQZXJXb3JrYXJvdW5kcyhjb250ZXh0VmssIGZvcm1hdCwgZ2V0UmVxdWlyZWRJbWFnZUFj
Y2VzcygpKTsKKyAgICBmb3JtYXQgPSBBZGp1c3RTdG9yYWdlVmlld0Zvcm1hdFBlcldvcmthcm91
bmRzKHJlbmRlcmVyLCBmb3JtYXQsIGdldFJlcXVpcmVkSW1hZ2VBY2Nlc3MoKSk7CiAKICAgICBn
bDo6TGV2ZWxJbmRleCBuYXRpdmVMZXZlbEdMID0KICAgICAgICAgZ2V0TmF0aXZlSW1hZ2VMZXZl
bChnbDo6TGV2ZWxJbmRleChzdGF0aWNfY2FzdDx1aW50MzJfdD4oYmluZGluZy5sZXZlbCkpKTsK
QEAgLTI4OTcsNyArMjkwMiw3IEBAIGFuZ2xlOjpSZXN1bHQgVGV4dHVyZVZrOjpnZXRTdG9yYWdl
SW1hZ2VWaWV3KENvbnRleHRWayAqY29udGV4dFZrLAogICAgICAgICB1aW50MzJfdCBuYXRpdmVM
YXllciA9IGdldE5hdGl2ZUltYWdlTGF5ZXIoc3RhdGljX2Nhc3Q8dWludDMyX3Q+KGJpbmRpbmcu
bGF5ZXIpKTsKIAogICAgICAgICByZXR1cm4gZ2V0SW1hZ2VWaWV3cygpLmdldExldmVsTGF5ZXJT
dG9yYWdlSW1hZ2VWaWV3KAotICAgICAgICAgICAgY29udGV4dFZrLCAqbUltYWdlLCBuYXRpdmVM
ZXZlbFZrLCBuYXRpdmVMYXllciwKKyAgICAgICAgICAgIGNvbnRleHQsICptSW1hZ2UsIG5hdGl2
ZUxldmVsVmssIG5hdGl2ZUxheWVyLAogICAgICAgICAgICAgVktfSU1BR0VfVVNBR0VfU0FNUExF
RF9CSVQgfCBWS19JTUFHRV9VU0FHRV9TVE9SQUdFX0JJVCwKICAgICAgICAgICAgIGZvcm1hdC0+
Z2V0QWN0dWFsSW1hZ2VGb3JtYXRJRChnZXRSZXF1aXJlZEltYWdlQWNjZXNzKCkpLCBpbWFnZVZp
ZXdPdXQpOwogICAgIH0KQEAgLTI5MDUsMTcgKzI5MTAsMTcgQEAgYW5nbGU6OlJlc3VsdCBUZXh0
dXJlVms6OmdldFN0b3JhZ2VJbWFnZVZpZXcoQ29udGV4dFZrICpjb250ZXh0VmssCiAgICAgdWlu
dDMyX3QgbmF0aXZlTGF5ZXIgPSBnZXROYXRpdmVJbWFnZUxheWVyKDApOwogCiAgICAgcmV0dXJu
IGdldEltYWdlVmlld3MoKS5nZXRMZXZlbFN0b3JhZ2VJbWFnZVZpZXcoCi0gICAgICAgIGNvbnRl
eHRWaywgbVN0YXRlLmdldFR5cGUoKSwgKm1JbWFnZSwgbmF0aXZlTGV2ZWxWaywgbmF0aXZlTGF5
ZXIsCisgICAgICAgIGNvbnRleHQsIG1TdGF0ZS5nZXRUeXBlKCksICptSW1hZ2UsIG5hdGl2ZUxl
dmVsVmssIG5hdGl2ZUxheWVyLAogICAgICAgICBWS19JTUFHRV9VU0FHRV9TQU1QTEVEX0JJVCB8
IFZLX0lNQUdFX1VTQUdFX1NUT1JBR0VfQklULAogICAgICAgICBmb3JtYXQtPmdldEFjdHVhbElt
YWdlRm9ybWF0SUQoZ2V0UmVxdWlyZWRJbWFnZUFjY2VzcygpKSwgaW1hZ2VWaWV3T3V0KTsKIH0K
IAotYW5nbGU6OlJlc3VsdCBUZXh0dXJlVms6OmdldEJ1ZmZlclZpZXdBbmRSZWNvcmRVc2UoQ29u
dGV4dFZrICpjb250ZXh0VmssCithbmdsZTo6UmVzdWx0IFRleHR1cmVWazo6Z2V0QnVmZmVyVmll
d0FuZFJlY29yZFVzZSh2azo6Q29udGV4dCAqY29udGV4dCwKICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHZrOjpGb3JtYXQgKmltYWdlVW5p
Zm9ybUZvcm1hdCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGJvb2wgaXNJbWFnZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGNvbnN0IHZrOjpCdWZmZXJWaWV3ICoqdmlld091dCkKIHsKLSAgICBS
ZW5kZXJlclZrICpyZW5kZXJlciA9IGNvbnRleHRWay0+Z2V0UmVuZGVyZXIoKTsKKyAgICBSZW5k
ZXJlclZrICpyZW5kZXJlciA9IGNvbnRleHQtPmdldFJlbmRlcmVyKCk7CiAKICAgICBBU1NFUlQo
bVN0YXRlLmdldEJ1ZmZlcigpLmdldCgpICE9IG51bGxwdHIpOwogCkBAIC0yOTI4LDcgKzI5MzMs
NyBAQCBhbmdsZTo6UmVzdWx0IFRleHR1cmVWazo6Z2V0QnVmZmVyVmlld0FuZFJlY29yZFVzZShD
b250ZXh0VmsgKmNvbnRleHRWaywKIAogICAgIGlmIChpc0ltYWdlKQogICAgIHsKLSAgICAgICAg
aW1hZ2VVbmlmb3JtRm9ybWF0ID0gQWRqdXN0U3RvcmFnZVZpZXdGb3JtYXRQZXJXb3JrYXJvdW5k
cyhjb250ZXh0VmssIGltYWdlVW5pZm9ybUZvcm1hdCwKKyAgICAgICAgaW1hZ2VVbmlmb3JtRm9y
bWF0ID0gQWRqdXN0U3RvcmFnZVZpZXdGb3JtYXRQZXJXb3JrYXJvdW5kcyhyZW5kZXJlciwgaW1h
Z2VVbmlmb3JtRm9ybWF0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdldFJlcXVpcmVkSW1hZ2VBY2Nlc3MoKSk7CiAg
ICAgfQogCkBAIC0yOTM2LDcgKzI5NDEsNyBAQCBhbmdsZTo6UmVzdWx0IFRleHR1cmVWazo6Z2V0
QnVmZmVyVmlld0FuZFJlY29yZFVzZShDb250ZXh0VmsgKmNvbnRleHRWaywKICAgICBjb25zdCB2
azo6QnVmZmVySGVscGVyICZidWZmZXIgPSB2azo6R2V0SW1wbChtU3RhdGUuZ2V0QnVmZmVyKCku
Z2V0KCkpLT5nZXRCdWZmZXIoKTsKICAgICBWa0RldmljZVNpemUgYnVmZmVyT2Zmc2V0ICAgICAg
PSBidWZmZXIuZ2V0T2Zmc2V0KCk7CiAKLSAgICByZXR1cm4gbUJ1ZmZlclZpZXdzLmdldFZpZXco
Y29udGV4dFZrLCBidWZmZXIsIGJ1ZmZlck9mZnNldCwgKmltYWdlVW5pZm9ybUZvcm1hdCwgdmll
d091dCk7CisgICAgcmV0dXJuIG1CdWZmZXJWaWV3cy5nZXRWaWV3KGNvbnRleHQsIGJ1ZmZlciwg
YnVmZmVyT2Zmc2V0LCAqaW1hZ2VVbmlmb3JtRm9ybWF0LCB2aWV3T3V0KTsKIH0KIAogYW5nbGU6
OlJlc3VsdCBUZXh0dXJlVms6OmluaXRJbWFnZShDb250ZXh0VmsgKmNvbnRleHRWaywKQEAgLTMw
MzUsNiArMzA0MCw4IEBAIHZvaWQgVGV4dHVyZVZrOjpyZWxlYXNlSW1hZ2UoQ29udGV4dFZrICpj
b250ZXh0VmspCiB7CiAgICAgUmVuZGVyZXJWayAqcmVuZGVyZXIgPSBjb250ZXh0VmstPmdldFJl
bmRlcmVyKCk7CiAKKyAgICByZWxlYXNlSW1hZ2VWaWV3cyhjb250ZXh0VmspOworCiAgICAgaWYg
KG1JbWFnZSkKICAgICB7CiAgICAgICAgIGlmIChtT3duc0ltYWdlKQpAQCAtMzA1Niw5ICszMDYz
LDI2IEBAIHZvaWQgVGV4dHVyZVZrOjpyZWxlYXNlSW1hZ2UoQ29udGV4dFZrICpjb250ZXh0Vmsp
CiAgICAgICAgIH0KICAgICB9CiAKLSAgICBmb3IgKHZrOjpJbWFnZVZpZXdIZWxwZXIgJmltYWdl
Vmlld3MgOiBtTXVsdGlzYW1wbGVkSW1hZ2VWaWV3cykKKyAgICBvblN0YXRlQ2hhbmdlKGFuZ2xl
OjpTdWJqZWN0TWVzc2FnZTo6U3ViamVjdENoYW5nZWQpOworICAgIG1SZWRlZmluZWRMZXZlbHMu
cmVzZXQoKTsKK30KKwordm9pZCBUZXh0dXJlVms6OnJlbGVhc2VJbWFnZVZpZXdzKENvbnRleHRW
ayAqY29udGV4dFZrKQoreworICAgIFJlbmRlcmVyVmsgKnJlbmRlcmVyID0gY29udGV4dFZrLT5n
ZXRSZW5kZXJlcigpOworCisgICAgaWYgKG1JbWFnZSA9PSBudWxscHRyKQorICAgIHsKKyAgICAg
ICAgZm9yICh2azo6SW1hZ2VWaWV3SGVscGVyICZpbWFnZVZpZXdIZWxwZXIgOiBtTXVsdGlzYW1w
bGVkSW1hZ2VWaWV3cykKKyAgICAgICAgeworICAgICAgICAgICAgQVNTRVJUKGltYWdlVmlld0hl
bHBlci5pc0ltYWdlVmlld0dhcmJhZ2VFbXB0eSgpKTsKKyAgICAgICAgfQorICAgICAgICByZXR1
cm47CisgICAgfQorCisgICAgZm9yICh2azo6SW1hZ2VWaWV3SGVscGVyICZpbWFnZVZpZXdIZWxw
ZXIgOiBtTXVsdGlzYW1wbGVkSW1hZ2VWaWV3cykKICAgICB7Ci0gICAgICAgIGltYWdlVmlld3Mu
cmVsZWFzZShyZW5kZXJlcik7CisgICAgICAgIG1JbWFnZS0+Y29sbGVjdFZpZXdHYXJiYWdlKHJl
bmRlcmVyLCAmaW1hZ2VWaWV3SGVscGVyKTsKICAgICB9CiAKICAgICBmb3IgKGF1dG8gJnJlbmRl
clRhcmdldHMgOiBtU2luZ2xlTGF5ZXJSZW5kZXJUYXJnZXRzKQpAQCAtMzA3Miw5ICszMDk2LDYg
QEAgdm9pZCBUZXh0dXJlVms6OnJlbGVhc2VJbWFnZShDb250ZXh0VmsgKmNvbnRleHRWaykKICAg
ICAgICAgcmVuZGVyVGFyZ2V0cy5jbGVhcigpOwogICAgIH0KICAgICBtTXVsdGlMYXllclJlbmRl
clRhcmdldHMuY2xlYXIoKTsKLQotICAgIG9uU3RhdGVDaGFuZ2UoYW5nbGU6OlN1YmplY3RNZXNz
YWdlOjpTdWJqZWN0Q2hhbmdlZCk7Ci0gICAgbVJlZGVmaW5lZExldmVscy5yZXNldCgpOwogfQog
CiB2b2lkIFRleHR1cmVWazo6cmVsZWFzZVN0YWdlZFVwZGF0ZXMoQ29udGV4dFZrICpjb250ZXh0
VmspCkBAIC0zMzM1LDcgKzMzNTYsMTcgQEAgdWludDMyX3QgVGV4dHVyZVZrOjpnZXRJbWFnZVZp
ZXdMYXllckNvdW50KCkgY29uc3QKIAogYW5nbGU6OlJlc3VsdCBUZXh0dXJlVms6OnJlZnJlc2hJ
bWFnZVZpZXdzKENvbnRleHRWayAqY29udGV4dFZrKQogewotICAgIGdldEltYWdlVmlld3MoKS5y
ZWxlYXNlKGNvbnRleHRWay0+Z2V0UmVuZGVyZXIoKSk7CisgICAgdms6OkltYWdlVmlld0hlbHBl
ciAmaW1hZ2VWaWV3ID0gZ2V0SW1hZ2VWaWV3cygpOworICAgIGlmIChtSW1hZ2UgPT0gbnVsbHB0
cikKKyAgICB7CisgICAgICAgIEFTU0VSVChpbWFnZVZpZXcuaXNJbWFnZVZpZXdHYXJiYWdlRW1w
dHkoKSk7CisgICAgfQorICAgIGVsc2UKKyAgICB7CisgICAgICAgIFJlbmRlcmVyVmsgKnJlbmRl
cmVyID0gY29udGV4dFZrLT5nZXRSZW5kZXJlcigpOworICAgICAgICBtSW1hZ2UtPmNvbGxlY3RW
aWV3R2FyYmFnZShyZW5kZXJlciwgJmltYWdlVmlldyk7CisgICAgfQorCiAgICAgY29uc3QgZ2w6
OkltYWdlRGVzYyAmYmFzZUxldmVsRGVzYyA9IG1TdGF0ZS5nZXRCYXNlTGV2ZWxEZXNjKCk7CiAK
ICAgICBBTkdMRV9UUlkoaW5pdEltYWdlVmlld3MoY29udGV4dFZrLCBtSW1hZ2UtPmdldEFjdHVh
bEZvcm1hdCgpLCBiYXNlTGV2ZWxEZXNjLmZvcm1hdC5pbmZvLT5zaXplZCwKQEAgLTM0NTAsNCAr
MzQ4MSwxNSBAQCBib29sIFRleHR1cmVWazo6aW1hZ2VIYXNBY3R1YWxJbWFnZUZvcm1hdChhbmds
ZTo6Rm9ybWF0SUQgYWN0dWFsRm9ybWF0SUQpIGNvbnN0CiAgICAgcmV0dXJuIG1JbWFnZSAmJiAo
bUltYWdlLT5nZXRBY3R1YWxGb3JtYXRJRCgpICE9IGFjdHVhbEZvcm1hdElEKTsKIH0KIAordm9p
ZCBUZXh0dXJlVms6OnN0YWdlU2VsZkFzU3VicmVzb3VyY2VVcGRhdGVzKENvbnRleHRWayAqY29u
dGV4dFZrKQoreworICAgIC8vIElmIHdlIGFyZSBjYWxsaW5nIHN0YWdlU2VsZkFzU3VicmVzb3Vy
Y2VVcGRhdGVzKCksIHRoZSBjdXJyZW50IGltYWdlIHdpbGwgYmUgc3dhcHBlZAorICAgIC8vIHRv
IHByZXZJbWFnZSBpbiBzdGFnZVNlbGZBc1N1YnJlc291cmNlVXBkYXRlcygpLCB0aGVyZWZvcmUg
d2UgbmVlZCB0byByZWxlYXNlIHRoZQorICAgIC8vIGltYWdlVmlld3MgZmlyc3QgYXMgd2Ugd2Fu
dCB0byB1c2UgY3VycmVudCBpbWFnZS5tVXNlIHRvIGtlZXAgdHJhY2sgb2YgaW1hZ2VWaWV3cycg
cmVzb3VyY2UKKyAgICAvLyBsaWZldGltZS4KKyAgICByZWxlYXNlSW1hZ2VWaWV3cyhjb250ZXh0
VmspOworICAgIC8vIE1ha2UgdGhlIGltYWdlIHN0YWdlIGl0c2VsZiBhcyB1cGRhdGVzIHRvIGl0
cyBsZXZlbHMuCisgICAgbUltYWdlLT5zdGFnZVNlbGZBc1N1YnJlc291cmNlVXBkYXRlcyhjb250
ZXh0VmssIG1JbWFnZS0+Z2V0TGV2ZWxDb3VudCgpLCBtUmVkZWZpbmVkTGV2ZWxzKTsKK30KKwog
fSAgLy8gbmFtZXNwYWNlIHJ4CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9z
cmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL1RleHR1cmVWay5oIGIvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9UZXh0dXJlVmsuaAppbmRleCA2
ZTliZTYwMzMzNDlmMTk3MTkxYmRlYTM4MTk0ZTExODAwNjg3M2JhLi5jMzA0ZWE4MTE4NDI5Yjkw
ZmIxOGUxYjJmNWI2NDI3NmY1Zjc4NTg0IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL1RleHR1cmVWay5oCisrKyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vVGV4dHVyZVZr
LmgKQEAgLTE5NSwxMSArMTk1LDYgQEAgY2xhc3MgVGV4dHVyZVZrIDogcHVibGljIFRleHR1cmVJ
bXBsLCBwdWJsaWMgYW5nbGU6Ok9ic2VydmVySW50ZXJmYWNlCiAgICAgICAgIHJldHVybiAqbUlt
YWdlOwogICAgIH0KIAotICAgIHZvaWQgcmV0YWluSW1hZ2VWaWV3cyh2azo6UmVzb3VyY2VVc2VM
aXN0ICpyZXNvdXJjZVVzZUxpc3QpCi0gICAgewotICAgICAgICBnZXRJbWFnZVZpZXdzKCkucmV0
YWluKHJlc291cmNlVXNlTGlzdCk7Ci0gICAgfQotCiAgICAgdm9pZCByZXRhaW5CdWZmZXJWaWV3
cyh2azo6UmVzb3VyY2VVc2VMaXN0ICpyZXNvdXJjZVVzZUxpc3QpCiAgICAgewogICAgICAgICBt
QnVmZmVyVmlld3MucmV0YWluKHJlc291cmNlVXNlTGlzdCk7CkBAIC0yMDcsMTkgKzIwMiwyNCBA
QCBjbGFzcyBUZXh0dXJlVmsgOiBwdWJsaWMgVGV4dHVyZUltcGwsIHB1YmxpYyBhbmdsZTo6T2Jz
ZXJ2ZXJJbnRlcmZhY2UKIAogICAgIHZvaWQgcmVsZWFzZU93bmVyc2hpcE9mSW1hZ2UoY29uc3Qg
Z2w6OkNvbnRleHQgKmNvbnRleHQpOwogCi0gICAgY29uc3Qgdms6OkltYWdlVmlldyAmZ2V0UmVh
ZEltYWdlVmlld0FuZFJlY29yZFVzZShDb250ZXh0VmsgKmNvbnRleHRWaywKLSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMZW51bSBzcmdiRGVj
b2RlLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgYm9vbCB0ZXhlbEZldGNoU3RhdGljVXNlKSBjb25zdDsKKyAgICBjb25zdCB2azo6SW1hZ2VW
aWV3ICZnZXRSZWFkSW1hZ2VWaWV3KHZrOjpDb250ZXh0ICpjb250ZXh0LAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xlbnVtIHNyZ2JEZWNvZGUsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sIHRleGVsRmV0Y2hTdGF0aWNV
c2UpIGNvbnN0OwogCiAgICAgLy8gQSBzcGVjaWFsIHZpZXcgZm9yIGN1YmUgbWFwcyBhcyBhIDJE
IGFycmF5LCB1c2VkIHdpdGggc2hhZGVycyB0aGF0IGRvIHRleGVsRmV0Y2goKSBhbmQgZm9yCiAg
ICAgLy8gc2VhbWZ1bCBjdWJlIG1hcCBlbXVsYXRpb24uCi0gICAgY29uc3Qgdms6OkltYWdlVmll
dyAmZ2V0RmV0Y2hJbWFnZVZpZXdBbmRSZWNvcmRVc2UoQ29udGV4dFZrICpjb250ZXh0VmssCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xl
bnVtIHNyZ2JEZWNvZGUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgYm9vbCB0ZXhlbEZldGNoU3RhdGljVXNlKSBjb25zdDsKKyAgICBjb25z
dCB2azo6SW1hZ2VWaWV3ICZnZXRGZXRjaEltYWdlVmlldyh2azo6Q29udGV4dCAqY29udGV4dCwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTGVudW0gc3JnYkRl
Y29kZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sIHRl
eGVsRmV0Y2hTdGF0aWNVc2UpIGNvbnN0OworCisgICAgYW5nbGU6OlJlc3VsdCBnZXRCdWZmZXJW
aWV3QW5kUmVjb3JkVXNlKHZrOjpDb250ZXh0ICpjb250ZXh0LAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB2azo6Rm9ybWF0ICppbWFnZVVuaWZvcm1G
b3JtYXQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wg
aXNJbWFnZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29u
c3Qgdms6OkJ1ZmZlclZpZXcgKip2aWV3T3V0KTsKIAogICAgIC8vIEEgc3BlY2lhbCB2aWV3IHVz
ZWQgZm9yIHRleHR1cmUgY29waWVzIHRoYXQgc2hvdWxkbid0IHBlcmZvcm0gc3dpenpsZS4KLSAg
ICBjb25zdCB2azo6SW1hZ2VWaWV3ICZnZXRDb3B5SW1hZ2VWaWV3QW5kUmVjb3JkVXNlKENvbnRl
eHRWayAqY29udGV4dFZrKSBjb25zdDsKLSAgICBhbmdsZTo6UmVzdWx0IGdldFN0b3JhZ2VJbWFn
ZVZpZXcoQ29udGV4dFZrICpjb250ZXh0VmssCisgICAgY29uc3Qgdms6OkltYWdlVmlldyAmZ2V0
Q29weUltYWdlVmlldygpIGNvbnN0OworICAgIGFuZ2xlOjpSZXN1bHQgZ2V0U3RvcmFnZUltYWdl
Vmlldyh2azo6Q29udGV4dCAqY29udGV4dCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgY29uc3QgZ2w6OkltYWdlVW5pdCAmYmluZGluZywKICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgY29uc3Qgdms6OkltYWdlVmlldyAqKmltYWdlVmlld091dCk7
CiAKQEAgLTIyOSwxMSArMjI5LDYgQEAgY2xhc3MgVGV4dHVyZVZrIDogcHVibGljIFRleHR1cmVJ
bXBsLCBwdWJsaWMgYW5nbGU6Ok9ic2VydmVySW50ZXJmYWNlCiAgICAgICAgIHJldHVybiBtU2Ft
cGxlci5nZXQoKTsKICAgICB9CiAKLSAgICBhbmdsZTo6UmVzdWx0IGdldEJ1ZmZlclZpZXdBbmRS
ZWNvcmRVc2UoQ29udGV4dFZrICpjb250ZXh0VmssCi0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGNvbnN0IHZrOjpGb3JtYXQgKmltYWdlVW5pZm9ybUZvcm1hdCwK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCBpc0ltYWdl
LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB2azo6
QnVmZmVyVmlldyAqKnZpZXdPdXQpOwotCiAgICAgLy8gTm9ybWFsbHksIGluaXRpYWxpemUgdGhl
IGltYWdlIHdpdGggZW5hYmxlZCBtaXBtYXAgbGV2ZWwgY291bnRzLgogICAgIGFuZ2xlOjpSZXN1
bHQgZW5zdXJlSW1hZ2VJbml0aWFsaXplZChDb250ZXh0VmsgKmNvbnRleHRWaywgSW1hZ2VNaXBM
ZXZlbHMgbWlwTGV2ZWxzKTsKIApAQCAtNDI0LDYgKzQxOSw3IEBAIGNsYXNzIFRleHR1cmVWayA6
IHB1YmxpYyBUZXh0dXJlSW1wbCwgcHVibGljIGFuZ2xlOjpPYnNlcnZlckludGVyZmFjZQogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGFuZ2xlOjpGb3JtYXRJRCBhY3R1YWxJbWFnZUZvcm1h
dElELAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIEltYWdlTWlwTGV2ZWxzIG1pcExldmVs
cyk7CiAgICAgdm9pZCByZWxlYXNlSW1hZ2UoQ29udGV4dFZrICpjb250ZXh0VmspOworICAgIHZv
aWQgcmVsZWFzZUltYWdlVmlld3MoQ29udGV4dFZrICpjb250ZXh0VmspOwogICAgIHZvaWQgcmVs
ZWFzZVN0YWdlZFVwZGF0ZXMoQ29udGV4dFZrICpjb250ZXh0VmspOwogICAgIHVpbnQzMl90IGdl
dE1pcExldmVsQ291bnQoSW1hZ2VNaXBMZXZlbHMgbWlwTGV2ZWxzKSBjb25zdDsKICAgICB1aW50
MzJfdCBnZXRNYXhMZXZlbENvdW50KCkgY29uc3Q7CkBAIC00NDcsNyArNDQzLDcgQEAgY2xhc3Mg
VGV4dHVyZVZrIDogcHVibGljIFRleHR1cmVJbXBsLCBwdWJsaWMgYW5nbGU6Ok9ic2VydmVySW50
ZXJmYWNlCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2w6
OkxldmVsSW5kZXggbGV2ZWwsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgR0x1aW50IGxheWVySW5kZXgsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgR0x1aW50IGxheWVyQ291bnQpOwotICAgIGFuZ2xlOjpSZXN1bHQg
Z2V0TGV2ZWxMYXllckltYWdlVmlldyhDb250ZXh0VmsgKmNvbnRleHRWaywKKyAgICBhbmdsZTo6
UmVzdWx0IGdldExldmVsTGF5ZXJJbWFnZVZpZXcodms6OkNvbnRleHQgKmNvbnRleHQsCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdsOjpMZXZlbEluZGV4IGxldmVs
R0wsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVfdCBsYXll
ciwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgdms6Oklt
YWdlVmlldyAqKmltYWdlVmlld091dCk7CkBAIC00NzksNyArNDc1LDcgQEAgY2xhc3MgVGV4dHVy
ZVZrIDogcHVibGljIFRleHR1cmVJbXBsLCBwdWJsaWMgYW5nbGU6Ok9ic2VydmVySW50ZXJmYWNl
CiAgICAgfQogCiAgICAgYW5nbGU6OlJlc3VsdCByZWZyZXNoSW1hZ2VWaWV3cyhDb250ZXh0Vmsg
KmNvbnRleHRWayk7Ci0gICAgYm9vbCBzaG91bGREZWNvZGVTUkdCKENvbnRleHRWayAqY29udGV4
dFZrLCBHTGVudW0gc3JnYkRlY29kZSwgYm9vbCB0ZXhlbEZldGNoU3RhdGljVXNlKSBjb25zdDsK
KyAgICBib29sIHNob3VsZERlY29kZVNSR0Iodms6OkNvbnRleHQgKmNvbnRleHQsIEdMZW51bSBz
cmdiRGVjb2RlLCBib29sIHRleGVsRmV0Y2hTdGF0aWNVc2UpIGNvbnN0OwogICAgIHZvaWQgaW5p
dEltYWdlVXNhZ2VGbGFncyhDb250ZXh0VmsgKmNvbnRleHRWaywgYW5nbGU6OkZvcm1hdElEIGFj
dHVhbEZvcm1hdElEKTsKICAgICB2b2lkIGhhbmRsZUltbXV0YWJsZVNhbXBsZXJUcmFuc2l0aW9u
KGNvbnN0IHZrOjpJbWFnZUhlbHBlciAqcHJldmlvdXNJbWFnZSwKICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHZrOjpJbWFnZUhlbHBlciAqbmV4dEltYWdl
KTsKQEAgLTQ4Nyw2ICs0ODMsOCBAQCBjbGFzcyBUZXh0dXJlVmsgOiBwdWJsaWMgVGV4dHVyZUlt
cGwsIHB1YmxpYyBhbmdsZTo6T2JzZXJ2ZXJJbnRlcmZhY2UKICAgICB2azo6SW1hZ2VBY2Nlc3Mg
Z2V0UmVxdWlyZWRJbWFnZUFjY2VzcygpIGNvbnN0IHsgcmV0dXJuIG1SZXF1aXJlZEltYWdlQWNj
ZXNzOyB9CiAgICAgYm9vbCBpbWFnZUhhc0FjdHVhbEltYWdlRm9ybWF0KGFuZ2xlOjpGb3JtYXRJ
RCBhY3R1YWxGb3JtYXRJRCkgY29uc3Q7CiAKKyAgICB2b2lkIHN0YWdlU2VsZkFzU3VicmVzb3Vy
Y2VVcGRhdGVzKENvbnRleHRWayAqY29udGV4dFZrKTsKKwogICAgIGJvb2wgbU93bnNJbWFnZTsK
ICAgICBib29sIG1SZXF1aXJlc011dGFibGVTdG9yYWdlOwogICAgIHZrOjpJbWFnZUFjY2VzcyBt
UmVxdWlyZWRJbWFnZUFjY2VzczsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vVHJhbnNmb3JtRmVlZGJhY2tWay5jcHAgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL1RyYW5z
Zm9ybUZlZWRiYWNrVmsuY3BwCmluZGV4IDkxOWY1ZWQ1MzFiM2UwMGVmNDMyYTA1NDIwZTg5N2Vk
ODJiNjJhMjUuLmNiN2NiY2M1MzhlMWMwZWI1YmJlODAyMjcyODdjNWQ3MTM5OWYzMmUgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxr
YW4vVHJhbnNmb3JtRmVlZGJhY2tWay5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUv
c3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9UcmFuc2Zvcm1GZWVkYmFja1ZrLmNwcApAQCAt
MjM4LDUyICsyMzgsNTYgQEAgdm9pZCBUcmFuc2Zvcm1GZWVkYmFja1ZrOjp1cGRhdGVEZXNjcmlw
dG9yU2V0TGF5b3V0KAogICAgIH0KIH0KIAotdm9pZCBUcmFuc2Zvcm1GZWVkYmFja1ZrOjppbml0
RGVzY3JpcHRvclNldChDb250ZXh0VmsgKmNvbnRleHRWaywKK3ZvaWQgVHJhbnNmb3JtRmVlZGJh
Y2tWazo6aW5pdERlc2NyaXB0b3JTZXQodms6OkNvbnRleHQgKmNvbnRleHQsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFVwZGF0ZURlc2NyaXB0b3JTZXRzQnVp
bGRlciAqdXBkYXRlQnVpbGRlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgdms6OkJ1ZmZlckhlbHBlciAqZW1wdHlCdWZmZXIsCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFNoYWRlckludGVyZmFjZVZhcmlhYmxl
SW5mb01hcCAmdmFyaWFibGVJbmZvTWFwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBzaXplX3QgeGZiQnVmZmVyQ291bnQsCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFZrRGVzY3JpcHRvclNldCBkZXNjU2V0KSBjb25zdAog
ewotICAgIGlmICghY29udGV4dFZrLT5nZXRGZWF0dXJlcygpLmVtdWxhdGVUcmFuc2Zvcm1GZWVk
YmFjay5lbmFibGVkKQorICAgIGlmICghY29udGV4dC0+Z2V0UmVuZGVyZXIoKS0+Z2V0RmVhdHVy
ZXMoKS5lbXVsYXRlVHJhbnNmb3JtRmVlZGJhY2suZW5hYmxlZCkKICAgICB7CiAgICAgICAgIHJl
dHVybjsKICAgICB9CiAKICAgICBWa0Rlc2NyaXB0b3JCdWZmZXJJbmZvICpkZXNjcmlwdG9yQnVm
ZmVySW5mbyA9Ci0gICAgICAgIGNvbnRleHRWay0+YWxsb2NEZXNjcmlwdG9yQnVmZmVySW5mb3Mo
eGZiQnVmZmVyQ291bnQpOwotICAgIGNvbnN0IHZrOjpCdWZmZXJIZWxwZXIgJmVtcHR5QnVmZmVy
ID0gY29udGV4dFZrLT5nZXRFbXB0eUJ1ZmZlcigpOworICAgICAgICB1cGRhdGVCdWlsZGVyLT5h
bGxvY0Rlc2NyaXB0b3JCdWZmZXJJbmZvcyh4ZmJCdWZmZXJDb3VudCk7CiAKICAgICBmb3IgKHNp
emVfdCBidWZmZXJJbmRleCA9IDA7IGJ1ZmZlckluZGV4IDwgeGZiQnVmZmVyQ291bnQ7ICsrYnVm
ZmVySW5kZXgpCiAgICAgewogICAgICAgICBWa0Rlc2NyaXB0b3JCdWZmZXJJbmZvICZidWZmZXJJ
bmZvID0gZGVzY3JpcHRvckJ1ZmZlckluZm9bYnVmZmVySW5kZXhdOwotICAgICAgICBidWZmZXJJ
bmZvLmJ1ZmZlciAgICAgICAgICAgICAgICAgID0gZW1wdHlCdWZmZXIuZ2V0QnVmZmVyKCkuZ2V0
SGFuZGxlKCk7Ci0gICAgICAgIGJ1ZmZlckluZm8ub2Zmc2V0ICAgICAgICAgICAgICAgICAgPSBl
bXB0eUJ1ZmZlci5nZXRPZmZzZXQoKTsKLSAgICAgICAgYnVmZmVySW5mby5yYW5nZSAgICAgICAg
ICAgICAgICAgICA9IGVtcHR5QnVmZmVyLmdldFNpemUoKTsKKyAgICAgICAgYnVmZmVySW5mby5i
dWZmZXIgICAgICAgICAgICAgICAgICA9IGVtcHR5QnVmZmVyLT5nZXRCdWZmZXIoKS5nZXRIYW5k
bGUoKTsKKyAgICAgICAgYnVmZmVySW5mby5vZmZzZXQgICAgICAgICAgICAgICAgICA9IGVtcHR5
QnVmZmVyLT5nZXRPZmZzZXQoKTsKKyAgICAgICAgYnVmZmVySW5mby5yYW5nZSAgICAgICAgICAg
ICAgICAgICA9IGVtcHR5QnVmZmVyLT5nZXRTaXplKCk7CiAgICAgfQogCi0gICAgd3JpdGVEZXNj
cmlwdG9yU2V0KGNvbnRleHRWaywgdmFyaWFibGVJbmZvTWFwLCB4ZmJCdWZmZXJDb3VudCwgZGVz
Y3JpcHRvckJ1ZmZlckluZm8sIGRlc2NTZXQpOworICAgIHdyaXRlRGVzY3JpcHRvclNldChjb250
ZXh0LCB1cGRhdGVCdWlsZGVyLCB2YXJpYWJsZUluZm9NYXAsIHhmYkJ1ZmZlckNvdW50LAorICAg
ICAgICAgICAgICAgICAgICAgICBkZXNjcmlwdG9yQnVmZmVySW5mbywgZGVzY1NldCk7CiB9CiAK
LXZvaWQgVHJhbnNmb3JtRmVlZGJhY2tWazo6dXBkYXRlRGVzY3JpcHRvclNldChDb250ZXh0Vmsg
KmNvbnRleHRWaywKK3ZvaWQgVHJhbnNmb3JtRmVlZGJhY2tWazo6dXBkYXRlRGVzY3JpcHRvclNl
dCh2azo6Q29udGV4dCAqY29udGV4dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBVcGRhdGVEZXNjcmlwdG9yU2V0c0J1aWxkZXIgKnVwZGF0ZUJ1aWxkZXIs
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZ2w6
OlByb2dyYW1FeGVjdXRhYmxlICZleGVjdXRhYmxlLAogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFNoYWRlckludGVyZmFjZVZhcmlhYmxlSW5mb01h
cCAmdmFyaWFibGVJbmZvTWFwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFZrRGVzY3JpcHRvclNldCBkZXNjU2V0KSBjb25zdAogewotICAgIGlmICghY29u
dGV4dFZrLT5nZXRGZWF0dXJlcygpLmVtdWxhdGVUcmFuc2Zvcm1GZWVkYmFjay5lbmFibGVkKQor
ICAgIFJlbmRlcmVyVmsgKnJlbmRlcmVyID0gY29udGV4dC0+Z2V0UmVuZGVyZXIoKTsKKworICAg
IGlmICghcmVuZGVyZXItPmdldEZlYXR1cmVzKCkuZW11bGF0ZVRyYW5zZm9ybUZlZWRiYWNrLmVu
YWJsZWQpCiAgICAgewogICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgc2l6ZV90IHhmYkJ1
ZmZlckNvdW50ICAgICAgICAgICAgICA9IGV4ZWN1dGFibGUuZ2V0VHJhbnNmb3JtRmVlZGJhY2tC
dWZmZXJDb3VudCgpOwotICAgIGNvbnN0IFZrRGV2aWNlU2l6ZSBvZmZzZXRBbGlnbm1lbnQgPSBj
b250ZXh0VmstPmdldFJlbmRlcmVyKCkKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIC0+Z2V0UGh5c2ljYWxEZXZpY2VQcm9wZXJ0aWVzKCkKLSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5saW1pdHMubWluU3RvcmFnZUJ1ZmZl
ck9mZnNldEFsaWdubWVudDsKKyAgICBzaXplX3QgeGZiQnVmZmVyQ291bnQgPSBleGVjdXRhYmxl
LmdldFRyYW5zZm9ybUZlZWRiYWNrQnVmZmVyQ291bnQoKTsKKyAgICBjb25zdCBWa0RldmljZVNp
emUgb2Zmc2V0QWxpZ25tZW50ID0KKyAgICAgICAgcmVuZGVyZXItPmdldFBoeXNpY2FsRGV2aWNl
UHJvcGVydGllcygpLmxpbWl0cy5taW5TdG9yYWdlQnVmZmVyT2Zmc2V0QWxpZ25tZW50OwogCiAg
ICAgQVNTRVJUKHhmYkJ1ZmZlckNvdW50ID4gMCk7CiAgICAgQVNTRVJUKGV4ZWN1dGFibGUuZ2V0
VHJhbnNmb3JtRmVlZGJhY2tCdWZmZXJNb2RlKCkgIT0gR0xfSU5URVJMRUFWRURfQVRUUklCUyB8
fAogICAgICAgICAgICB4ZmJCdWZmZXJDb3VudCA9PSAxKTsKIAogICAgIFZrRGVzY3JpcHRvckJ1
ZmZlckluZm8gKmRlc2NyaXB0b3JCdWZmZXJJbmZvID0KLSAgICAgICAgY29udGV4dFZrLT5hbGxv
Y0Rlc2NyaXB0b3JCdWZmZXJJbmZvcyh4ZmJCdWZmZXJDb3VudCk7CisgICAgICAgIHVwZGF0ZUJ1
aWxkZXItPmFsbG9jRGVzY3JpcHRvckJ1ZmZlckluZm9zKHhmYkJ1ZmZlckNvdW50KTsKIAogICAg
IC8vIFVwZGF0ZSBidWZmZXIgZGVzY3JpcHRvciBiaW5kaW5nIGluZm8gZm9yIG91dHB1dCBidWZm
ZXJzCiAgICAgZm9yIChzaXplX3QgYnVmZmVySW5kZXggPSAwOyBidWZmZXJJbmRleCA8IHhmYkJ1
ZmZlckNvdW50OyArK2J1ZmZlckluZGV4KQpAQCAtMjk4LDcgKzMwMiw4IEBAIHZvaWQgVHJhbnNm
b3JtRmVlZGJhY2tWazo6dXBkYXRlRGVzY3JpcHRvclNldChDb250ZXh0VmsgKmNvbnRleHRWaywK
ICAgICAgICAgQVNTRVJUKGJ1ZmZlckluZm8ucmFuZ2UgIT0gMCk7CiAgICAgfQogCi0gICAgd3Jp
dGVEZXNjcmlwdG9yU2V0KGNvbnRleHRWaywgdmFyaWFibGVJbmZvTWFwLCB4ZmJCdWZmZXJDb3Vu
dCwgZGVzY3JpcHRvckJ1ZmZlckluZm8sIGRlc2NTZXQpOworICAgIHdyaXRlRGVzY3JpcHRvclNl
dChjb250ZXh0LCB1cGRhdGVCdWlsZGVyLCB2YXJpYWJsZUluZm9NYXAsIHhmYkJ1ZmZlckNvdW50
LAorICAgICAgICAgICAgICAgICAgICAgICBkZXNjcmlwdG9yQnVmZmVySW5mbywgZGVzY1NldCk7
CiB9CiAKIHZvaWQgVHJhbnNmb3JtRmVlZGJhY2tWazo6Z2V0QnVmZmVyT2Zmc2V0cyhDb250ZXh0
VmsgKmNvbnRleHRWaywKQEAgLTM2NywxOSArMzcyLDIwIEBAIHZvaWQgVHJhbnNmb3JtRmVlZGJh
Y2tWazo6b25TdWJqZWN0U3RhdGVDaGFuZ2UoYW5nbGU6OlN1YmplY3RJbmRleCBpbmRleCwKICAg
ICB9CiB9CiAKLXZvaWQgVHJhbnNmb3JtRmVlZGJhY2tWazo6d3JpdGVEZXNjcmlwdG9yU2V0KENv
bnRleHRWayAqY29udGV4dFZrLAordm9pZCBUcmFuc2Zvcm1GZWVkYmFja1ZrOjp3cml0ZURlc2Ny
aXB0b3JTZXQodms6OkNvbnRleHQgKmNvbnRleHQsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBVcGRhdGVEZXNjcmlwdG9yU2V0c0J1aWxkZXIgKnVwZGF0ZUJ1
aWxkZXIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25z
dCBTaGFkZXJJbnRlcmZhY2VWYXJpYWJsZUluZm9NYXAgJnZhcmlhYmxlSW5mb01hcCwKICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVfdCB4ZmJCdWZmZXJD
b3VudCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZrRGVz
Y3JpcHRvckJ1ZmZlckluZm8gKmJ1ZmZlckluZm8sCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBWa0Rlc2NyaXB0b3JTZXQgZGVzY1NldCkgY29uc3QKIHsKLSAg
ICBBU1NFUlQoY29udGV4dFZrLT5nZXRGZWF0dXJlcygpLmVtdWxhdGVUcmFuc2Zvcm1GZWVkYmFj
ay5lbmFibGVkKTsKKyAgICBBU1NFUlQoY29udGV4dC0+Z2V0UmVuZGVyZXIoKS0+Z2V0RmVhdHVy
ZXMoKS5lbXVsYXRlVHJhbnNmb3JtRmVlZGJhY2suZW5hYmxlZCk7CiAKICAgICBjb25zdCBzdGQ6
OnN0cmluZyBidWZmZXJOYW1lID0gR2V0WGZiQnVmZmVyTmFtZSgwKTsKICAgICBjb25zdCBTaGFk
ZXJJbnRlcmZhY2VWYXJpYWJsZUluZm8gJmluZm8gPQogICAgICAgICB2YXJpYWJsZUluZm9NYXAu
Z2V0KGdsOjpTaGFkZXJUeXBlOjpWZXJ0ZXgsIGJ1ZmZlck5hbWUpOwogCi0gICAgVmtXcml0ZURl
c2NyaXB0b3JTZXQgJndyaXRlRGVzY3JpcHRvckluZm8gPSBjb250ZXh0VmstPmFsbG9jV3JpdGVE
ZXNjcmlwdG9yU2V0KCk7CisgICAgVmtXcml0ZURlc2NyaXB0b3JTZXQgJndyaXRlRGVzY3JpcHRv
ckluZm8gPSB1cGRhdGVCdWlsZGVyLT5hbGxvY1dyaXRlRGVzY3JpcHRvclNldCgpOwogICAgIHdy
aXRlRGVzY3JpcHRvckluZm8uc1R5cGUgICAgICAgICAgICAgICAgID0gVktfU1RSVUNUVVJFX1RZ
UEVfV1JJVEVfREVTQ1JJUFRPUl9TRVQ7CiAgICAgd3JpdGVEZXNjcmlwdG9ySW5mby5kc3RTZXQg
ICAgICAgICAgICAgICAgPSBkZXNjU2V0OwogICAgIHdyaXRlRGVzY3JpcHRvckluZm8uZHN0Qmlu
ZGluZyAgICAgICAgICAgID0gaW5mby5iaW5kaW5nOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9UcmFuc2Zvcm1GZWVkYmFj
a1ZrLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVs
a2FuL1RyYW5zZm9ybUZlZWRiYWNrVmsuaAppbmRleCBjNzY2MDRhY2E3ZWVjYzQ1ZjA5M2Y5ZWQz
NGM4NWE4OTJhODJmOGFlLi4yMDk1NTJjYTk1MmNmYTJhYmJmYWNiZGQ1NTI2OGU5ODdjMDc2YzJh
IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVy
ZXIvdnVsa2FuL1RyYW5zZm9ybUZlZWRiYWNrVmsuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL1RyYW5zZm9ybUZlZWRiYWNrVmsuaApA
QCAtMjIsMTAgKzIyLDEyIEBAIGNsYXNzIFByb2dyYW1TdGF0ZTsKIAogbmFtZXNwYWNlIHJ4CiB7
CitjbGFzcyBVcGRhdGVEZXNjcmlwdG9yU2V0c0J1aWxkZXI7CisKIG5hbWVzcGFjZSB2awogewog
Y2xhc3MgRGVzY3JpcHRvclNldExheW91dERlc2M7Ci19Cit9ICAvLyBuYW1lc3BhY2UgdmsKIAog
Y2xhc3MgVHJhbnNmb3JtRmVlZGJhY2tWayA6IHB1YmxpYyBUcmFuc2Zvcm1GZWVkYmFja0ltcGws
IHB1YmxpYyBhbmdsZTo6T2JzZXJ2ZXJJbnRlcmZhY2UKIHsKQEAgLTQ3LDExICs0OSwxNCBAQCBj
bGFzcyBUcmFuc2Zvcm1GZWVkYmFja1ZrIDogcHVibGljIFRyYW5zZm9ybUZlZWRiYWNrSW1wbCwg
cHVibGljIGFuZ2xlOjpPYnNlcnZlcgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBjb25zdCBTaGFkZXJJbnRlcmZhY2VWYXJpYWJsZUluZm9NYXAgJnZhcmlhYmxlSW5mb01hcCwK
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZV90IHhmYkJ1ZmZlckNvdW50
LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2azo6RGVzY3JpcHRvclNldExh
eW91dERlc2MgKmRlc2NTZXRMYXlvdXRPdXQpIGNvbnN0OwotICAgIHZvaWQgaW5pdERlc2NyaXB0
b3JTZXQoQ29udGV4dFZrICpjb250ZXh0VmssCisgICAgdm9pZCBpbml0RGVzY3JpcHRvclNldCh2
azo6Q29udGV4dCAqY29udGV4dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIFVwZGF0ZURl
c2NyaXB0b3JTZXRzQnVpbGRlciAqdXBkYXRlQnVpbGRlciwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHZrOjpCdWZmZXJIZWxwZXIgKmVtcHR5QnVmZmVyLAogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgY29uc3QgU2hhZGVySW50ZXJmYWNlVmFyaWFibGVJbmZvTWFwICZ2YXJpYWJsZUlu
Zm9NYXAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplX3QgeGZiQnVmZmVyQ291bnQs
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBWa0Rlc2NyaXB0b3JTZXQgZGVzY1NldCkgY29u
c3Q7Ci0gICAgdm9pZCB1cGRhdGVEZXNjcmlwdG9yU2V0KENvbnRleHRWayAqY29udGV4dFZrLAor
ICAgIHZvaWQgdXBkYXRlRGVzY3JpcHRvclNldCh2azo6Q29udGV4dCAqY29udGV4dCwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgVXBkYXRlRGVzY3JpcHRvclNldHNCdWlsZGVyICp1cGRh
dGVCdWlsZGVyLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBnbDo6UHJvZ3Jh
bUV4ZWN1dGFibGUgJmV4ZWN1dGFibGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNv
bnN0IFNoYWRlckludGVyZmFjZVZhcmlhYmxlSW5mb01hcCAmdmFyaWFibGVJbmZvTWFwLAogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBWa0Rlc2NyaXB0b3JTZXQgZGVzY1NldCkgY29uc3Q7
CkBAIC0xMDcsNyArMTEyLDggQEAgY2xhc3MgVHJhbnNmb3JtRmVlZGJhY2tWayA6IHB1YmxpYyBU
cmFuc2Zvcm1GZWVkYmFja0ltcGwsIHB1YmxpYyBhbmdsZTo6T2JzZXJ2ZXIKICAgICB2b2lkIG9u
U3ViamVjdFN0YXRlQ2hhbmdlKGFuZ2xlOjpTdWJqZWN0SW5kZXggaW5kZXgsIGFuZ2xlOjpTdWJq
ZWN0TWVzc2FnZSBtZXNzYWdlKSBvdmVycmlkZTsKIAogICBwcml2YXRlOgotICAgIHZvaWQgd3Jp
dGVEZXNjcmlwdG9yU2V0KENvbnRleHRWayAqY29udGV4dFZrLAorICAgIHZvaWQgd3JpdGVEZXNj
cmlwdG9yU2V0KHZrOjpDb250ZXh0ICpjb250ZXh0LAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFVwZGF0ZURlc2NyaXB0b3JTZXRzQnVpbGRlciAqdXBkYXRlQnVpbGRlciwKICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBjb25zdCBTaGFkZXJJbnRlcmZhY2VWYXJpYWJsZUluZm9NYXAg
JnZhcmlhYmxlSW5mb01hcCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplX3QgeGZi
QnVmZmVyQ291bnQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVmtEZXNjcmlwdG9yQnVm
ZmVySW5mbyAqYnVmZmVySW5mbywKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vVXRpbHNWay5jcHAgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL1V0aWxzVmsuY3BwCmluZGV4
IDQwNTgyMmY0NWNlMmE4MjA5NmU1NjUxOTc4OGNmZWQ4NGYwOTJkNzUuLjdkODRhNTMxMGJmMjcx
N2U4ODM4MGI1M2M1MjFmZjQwODY5ODg2ZDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vVXRpbHNWay5jcHAKKysrIGIvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9VdGlsc1Zr
LmNwcApAQCAtMzUwOSw4ICszNTA5LDkgQEAgYW5nbGU6OlJlc3VsdCBVdGlsc1ZrOjphbGxvY2F0
ZURlc2NyaXB0b3JTZXQoQ29udGV4dFZrICpjb250ZXh0VmssCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBWa0Rlc2NyaXB0b3JTZXQgKmRlc2NyaXB0b3JTZXRP
dXQpCiB7CiAgICAgQU5HTEVfVFJZKG1EZXNjcmlwdG9yUG9vbHNbZnVuY3Rpb25dLmFsbG9jYXRl
RGVzY3JpcHRvclNldHMoCi0gICAgICAgIGNvbnRleHRWaywgbURlc2NyaXB0b3JTZXRMYXlvdXRz
W2Z1bmN0aW9uXVtEZXNjcmlwdG9yU2V0SW5kZXg6OkludGVybmFsXS5nZXQoKSwgMSwKLSAgICAg
ICAgYmluZGluZ091dCwgZGVzY3JpcHRvclNldE91dCkpOworICAgICAgICBjb250ZXh0VmssICZj
b250ZXh0VmstPmdldFJlc291cmNlVXNlTGlzdCgpLAorICAgICAgICBtRGVzY3JpcHRvclNldExh
eW91dHNbZnVuY3Rpb25dW0Rlc2NyaXB0b3JTZXRJbmRleDo6SW50ZXJuYWxdLmdldCgpLCAxLCBi
aW5kaW5nT3V0LAorICAgICAgICBkZXNjcmlwdG9yU2V0T3V0KSk7CiAKICAgICBtUGVyZkNvdW50
ZXJzLmRlc2NyaXB0b3JTZXRzQWxsb2NhdGVkKys7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vVmVydGV4QXJyYXlWay5j
cHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2Fu
L1ZlcnRleEFycmF5VmsuY3BwCmluZGV4IDhlM2Q4YWJhZTMwZDYxMTc4NjcyYTYxY2U0NmI5YTI3
NWUyNmQ3MmIuLjA1NDljN2Y2OWYyNTU3ODNiYTY2ZWQwZGI5NmZhZWIzZmQ1ZWI1OTUgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxr
YW4vVmVydGV4QXJyYXlWay5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xp
YkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9WZXJ0ZXhBcnJheVZrLmNwcApAQCAtNDk0LDYgKzQ5NCwx
NSBAQCBhbmdsZTo6UmVzdWx0IFZlcnRleEFycmF5Vms6OmNvbnZlcnRWZXJ0ZXhCdWZmZXJDUFUo
Q29udGV4dFZrICpjb250ZXh0VmssCiAgICAgcmV0dXJuIGFuZ2xlOjpSZXN1bHQ6OkNvbnRpbnVl
OwogfQogCit2b2lkIFZlcnRleEFycmF5Vms6OnVwZGF0ZUN1cnJlbnRFbGVtZW50QXJyYXlCdWZm
ZXIoKQoreworICAgIEFTU0VSVChtU3RhdGUuZ2V0RWxlbWVudEFycmF5QnVmZmVyKCkgIT0gbnVs
bHB0cik7CisgICAgQVNTRVJUKG1TdGF0ZS5nZXRFbGVtZW50QXJyYXlCdWZmZXIoKS0+Z2V0U2l6
ZSgpID4gMCk7CisKKyAgICBCdWZmZXJWayAqYnVmZmVyVmsgICAgICAgICA9IHZrOjpHZXRJbXBs
KG1TdGF0ZS5nZXRFbGVtZW50QXJyYXlCdWZmZXIoKSk7CisgICAgbUN1cnJlbnRFbGVtZW50QXJy
YXlCdWZmZXIgPSAmYnVmZmVyVmstPmdldEJ1ZmZlcigpOworfQorCiBhbmdsZTo6UmVzdWx0IFZl
cnRleEFycmF5Vms6OnN5bmNTdGF0ZShjb25zdCBnbDo6Q29udGV4dCAqY29udGV4dCwKICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGdsOjpWZXJ0ZXhBcnJheTo6
RGlydHlCaXRzICZkaXJ0eUJpdHMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBnbDo6VmVydGV4QXJyYXk6OkRpcnR5QXR0cmliQml0c0FycmF5ICphdHRyaWJCaXRzLApA
QCAtNTE5LDggKzUyOCw3IEBAIGFuZ2xlOjpSZXN1bHQgVmVydGV4QXJyYXlWazo6c3luY1N0YXRl
KGNvbnN0IGdsOjpDb250ZXh0ICpjb250ZXh0LAogICAgICAgICAgICAgICAgIHsKICAgICAgICAg
ICAgICAgICAgICAgLy8gTm90ZSB0aGF0IGp1c3QgdXBkYXRpbmcgYnVmZmVyIGRhdGEgbWF5IHN0
aWxsIHJlc3VsdCBpbiBhIG5ldwogICAgICAgICAgICAgICAgICAgICAvLyB2azo6QnVmZmVySGVs
cGVyIGFsbG9jYXRpb24uCi0gICAgICAgICAgICAgICAgICAgIEJ1ZmZlclZrICpidWZmZXJWayAg
ICAgICAgID0gdms6OkdldEltcGwoYnVmZmVyR0wpOwotICAgICAgICAgICAgICAgICAgICBtQ3Vy
cmVudEVsZW1lbnRBcnJheUJ1ZmZlciA9ICZidWZmZXJWay0+Z2V0QnVmZmVyKCk7CisgICAgICAg
ICAgICAgICAgICAgIHVwZGF0ZUN1cnJlbnRFbGVtZW50QXJyYXlCdWZmZXIoKTsKICAgICAgICAg
ICAgICAgICB9CiAgICAgICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgICAgIHsKQEAgLTg0
MiwyNSArODUwLDM2IEBAIGFuZ2xlOjpSZXN1bHQgVmVydGV4QXJyYXlWazo6dXBkYXRlU3RyZWFt
ZWRBdHRyaWJzKGNvbnN0IGdsOjpDb250ZXh0ICpjb250ZXh0LAogICAgICAgICAgICAgICAgIEFO
R0xFX1RSWShjb250ZXh0VmstPmFsbG9jYXRlU3RyZWFtZWRWZXJ0ZXhCdWZmZXIoYXR0cmliSW5k
ZXgsIGJ5dGVzVG9BbGxvY2F0ZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZ2ZXJ0ZXhEYXRhQnVmZmVyKSk7CiAKLSAg
ICAgICAgICAgICAgICBpZiAoYmluZGluZy5nZXRCdWZmZXIoKS5nZXQoKSAhPSBudWxscHRyKQor
ICAgICAgICAgICAgICAgIGdsOjpCdWZmZXIgKmJ1ZmZlckdMID0gYmluZGluZy5nZXRCdWZmZXIo
KS5nZXQoKTsKKyAgICAgICAgICAgICAgICBpZiAoYnVmZmVyR0wgIT0gbnVsbHB0cikKICAgICAg
ICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgICAgIC8vIE1hcCBidWZmZXIgdG8gZXhwYW5k
IGF0dHJpYnMgZm9yIGRpdmlzb3IgZW11bGF0aW9uCi0gICAgICAgICAgICAgICAgICAgIEJ1ZmZl
clZrICpidWZmZXJWayA9IHZrOjpHZXRJbXBsKGJpbmRpbmcuZ2V0QnVmZmVyKCkuZ2V0KCkpOwot
ICAgICAgICAgICAgICAgICAgICB2b2lkICpidWZmU3JjICAgICAgPSBudWxscHRyOwotICAgICAg
ICAgICAgICAgICAgICBBTkdMRV9UUlkoYnVmZmVyVmstPm1hcEltcGwoY29udGV4dFZrLCBHTF9N
QVBfUkVBRF9CSVQsICZidWZmU3JjKSk7Ci0gICAgICAgICAgICAgICAgICAgIHNyYyA9IHJlaW50
ZXJwcmV0X2Nhc3Q8Y29uc3QgdWludDhfdCAqPihidWZmU3JjKSArIGJpbmRpbmcuZ2V0T2Zmc2V0
KCk7CisgICAgICAgICAgICAgICAgICAgIC8vIE9ubHkgZG8gdGhlIGRhdGEgY29weSBpZiBzcmMg
YnVmZmVyIGlzIHZhbGlkLgorICAgICAgICAgICAgICAgICAgICBpZiAoYnVmZmVyR0wtPmdldFNp
emUoKSA+IDApCisgICAgICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgICAg
IC8vIE1hcCBidWZmZXIgdG8gZXhwYW5kIGF0dHJpYnMgZm9yIGRpdmlzb3IgZW11bGF0aW9uCisg
ICAgICAgICAgICAgICAgICAgICAgICBCdWZmZXJWayAqYnVmZmVyVmsgPSB2azo6R2V0SW1wbChi
aW5kaW5nLmdldEJ1ZmZlcigpLmdldCgpKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHZvaWQg
KmJ1ZmZTcmMgICAgICA9IG51bGxwdHI7CisgICAgICAgICAgICAgICAgICAgICAgICBBTkdMRV9U
UlkoYnVmZmVyVmstPm1hcEltcGwoY29udGV4dFZrLCBHTF9NQVBfUkVBRF9CSVQsICZidWZmU3Jj
KSk7CisgICAgICAgICAgICAgICAgICAgICAgICBzcmMgPSByZWludGVycHJldF9jYXN0PGNvbnN0
IHVpbnQ4X3QgKj4oYnVmZlNyYykgKyBiaW5kaW5nLmdldE9mZnNldCgpOwogCi0gICAgICAgICAg
ICAgICAgICAgIHVpbnQzMl90IHNyY0F0dHJpYnV0ZVNpemUgPQotICAgICAgICAgICAgICAgICAg
ICAgICAgc3RhdGljX2Nhc3Q8dWludDMyX3Q+KENvbXB1dGVWZXJ0ZXhBdHRyaWJ1dGVUeXBlU2l6
ZShhdHRyaWIpKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IHNyY0F0dHJpYnV0
ZVNpemUgPQorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRpY19jYXN0PHVpbnQzMl90
PihDb21wdXRlVmVydGV4QXR0cmlidXRlVHlwZVNpemUoYXR0cmliKSk7CiAKLSAgICAgICAgICAg
ICAgICAgICAgc2l6ZV90IG51bVZlcnRpY2VzID0gR2V0VmVydGV4Q291bnQoYnVmZmVyVmssIGJp
bmRpbmcsIHNyY0F0dHJpYnV0ZVNpemUpOworICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZV90
IG51bVZlcnRpY2VzID0gR2V0VmVydGV4Q291bnQoYnVmZmVyVmssIGJpbmRpbmcsIHNyY0F0dHJp
YnV0ZVNpemUpOwogCi0gICAgICAgICAgICAgICAgICAgIEFOR0xFX1RSWShTdHJlYW1WZXJ0ZXhE
YXRhV2l0aERpdmlzb3IoCi0gICAgICAgICAgICAgICAgICAgICAgICBjb250ZXh0VmssIHZlcnRl
eERhdGFCdWZmZXIsIHNyYywgYnl0ZXNUb0FsbG9jYXRlLCBiaW5kaW5nLmdldFN0cmlkZSgpLAot
ICAgICAgICAgICAgICAgICAgICAgICAgc3RyaWRlLCB2ZXJ0ZXhGb3JtYXQuZ2V0VmVydGV4TG9h
ZEZ1bmN0aW9uKGNvbXByZXNzZWQpLCBkaXZpc29yLAotICAgICAgICAgICAgICAgICAgICAgICAg
bnVtVmVydGljZXMpKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIEFOR0xFX1RSWShTdHJlYW1W
ZXJ0ZXhEYXRhV2l0aERpdmlzb3IoCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGV4
dFZrLCB2ZXJ0ZXhEYXRhQnVmZmVyLCBzcmMsIGJ5dGVzVG9BbGxvY2F0ZSwgYmluZGluZy5nZXRT
dHJpZGUoKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJpZGUsIHZlcnRleEZvcm1h
dC5nZXRWZXJ0ZXhMb2FkRnVuY3Rpb24oY29tcHJlc3NlZCksIGRpdmlzb3IsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgbnVtVmVydGljZXMpKTsKIAotICAgICAgICAgICAgICAgICAgICBB
TkdMRV9UUlkoYnVmZmVyVmstPnVubWFwSW1wbChjb250ZXh0VmspKTsKKyAgICAgICAgICAgICAg
ICAgICAgICAgIEFOR0xFX1RSWShidWZmZXJWay0+dW5tYXBJbXBsKGNvbnRleHRWaykpOworICAg
ICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKGNvbnRleHRW
ay0+Z2V0RXh0ZW5zaW9ucygpLnJvYnVzdG5lc3NFWFQpCisgICAgICAgICAgICAgICAgICAgIHsK
KyAgICAgICAgICAgICAgICAgICAgICAgIC8vIFNhdGlzZnkgcm9idXN0bmVzcyBjb25zdHJhaW50
cyAob25seSBpZiBleHRlbnNpb24gZW5hYmxlZCkKKyAgICAgICAgICAgICAgICAgICAgICAgIHVp
bnQ4X3QgKmRzdCA9IHZlcnRleERhdGFCdWZmZXItPmdldE1hcHBlZE1lbW9yeSgpOworICAgICAg
ICAgICAgICAgICAgICAgICAgbWVtc2V0KGRzdCwgMCwgYnl0ZXNUb0FsbG9jYXRlKTsKKyAgICAg
ICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICBlbHNl
CiAgICAgICAgICAgICAgICAgewpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUv
c3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9WZXJ0ZXhBcnJheVZrLmggYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL1ZlcnRleEFycmF5Vmsu
aAppbmRleCAzODM2ZTUwY2E5NmVjMjA1Mjg1MTBhNjNkNjY5ZmUxYzAzNzQ0MTdkLi5hZWVlY2Rl
YjZiZTZhZWVlYTU3MDQ3MGM0NDgxOGZhMzhkZTNmMDkzIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL1ZlcnRleEFycmF5Vmsu
aAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVs
a2FuL1ZlcnRleEFycmF5VmsuaApAQCAtODIsNiArODIsOSBAQCBjbGFzcyBWZXJ0ZXhBcnJheVZr
IDogcHVibGljIFZlcnRleEFycmF5SW1wbAogICAgICAgICByZXR1cm4gbUN1cnJlbnRBcnJheUJ1
ZmZlcnM7CiAgICAgfQogCisgICAgLy8gVXBkYXRlIG1DdXJyZW50RWxlbWVudEFycmF5QnVmZmVy
IGJhc2VkIG9uIHRoZSB2ZXJ0ZXggYXJyYXkgc3RhdGUKKyAgICB2b2lkIHVwZGF0ZUN1cnJlbnRF
bGVtZW50QXJyYXlCdWZmZXIoKTsKKwogICAgIHZrOjpCdWZmZXJIZWxwZXIgKmdldEN1cnJlbnRF
bGVtZW50QXJyYXlCdWZmZXIoKSBjb25zdCB7IHJldHVybiBtQ3VycmVudEVsZW1lbnRBcnJheUJ1
ZmZlcjsgfQogCiAgICAgYW5nbGU6OlJlc3VsdCBjb252ZXJ0SW5kZXhCdWZmZXJHUFUoQ29udGV4
dFZrICpjb250ZXh0VmssCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
bGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL1ZrSW1hZ2VJbWFnZVNpYmxpbmdWay5jcHAgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL1ZrSW1hZ2VJ
bWFnZVNpYmxpbmdWay5jcHAKaW5kZXggN2I5ODAyOTY5MjA1MzE2NTRjMGNlNzA2NGU1NzgyODQw
Njc4ZTE2ZS4uZWRmNTc5YjFkYWMyM2M5MTE1OTU3YmNlZDI1Y2I3N2YzYTdjZjE2MSAxMDA2NDQK
LS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGth
bi9Wa0ltYWdlSW1hZ2VTaWJsaW5nVmsuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vVmtJbWFnZUltYWdlU2libGluZ1ZrLmNwcApA
QCAtMTI2LDYgKzEyNiw3IEBAIHZvaWQgVmtJbWFnZUltYWdlU2libGluZ1ZrOjpyZWxlYXNlKFJl
bmRlcmVyVmsgKnJlbmRlcmVyKQogICAgIHsKICAgICAgICAgLy8gVE9ETzogSGFuZGxlIHRoZSBj
YXNlIHdoZXJlIHRoZSBFR0xJbWFnZSBpcyB1c2VkIGluIHR3byBjb250ZXh0cyBub3QgaW4gdGhl
IHNhbWUgc2hhcmUKICAgICAgICAgLy8gZ3JvdXAuICBodHRwczovL2lzc3VldHJhY2tlci5nb29n
bGUuY29tLzE2OTg2ODgwMworICAgICAgICBtSW1hZ2UtPnJlbGVhc2VJbWFnZUFuZFZpZXdHYXJi
YWdlKHJlbmRlcmVyKTsKICAgICAgICAgbUltYWdlLT5yZXNldEltYWdlV2Vha1JlZmVyZW5jZSgp
OwogICAgICAgICBtSW1hZ2UtPmRlc3Ryb3kocmVuZGVyZXIpOwogICAgICAgICBTYWZlRGVsZXRl
KG1JbWFnZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5H
TEUvcmVuZGVyZXIvdnVsa2FuL2FuZHJvaWQvRGlzcGxheVZrQW5kcm9pZC5jcHAgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL2FuZHJvaWQvRGlz
cGxheVZrQW5kcm9pZC5jcHAKaW5kZXggYTRiMmNmZWVjZjBiNGIwM2M1OWY1ZDQ5NjlmZGY5YjAx
YzM4NzNkMS4uNmIxZWIzZWJhNTk1MGJjODg5YTVkMjI2NzhkOTViMWJhNTg3Mzk1NiAxMDA2NDQK
LS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGth
bi9hbmRyb2lkL0Rpc3BsYXlWa0FuZHJvaWQuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FO
R0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vYW5kcm9pZC9EaXNwbGF5VmtBbmRyb2lk
LmNwcApAQCAtNTAsMTEgKzUwLDcyIEBAIFN1cmZhY2VJbXBsICpEaXNwbGF5VmtBbmRyb2lkOjpj
cmVhdGVXaW5kb3dTdXJmYWNlVmsoY29uc3QgZWdsOjpTdXJmYWNlU3RhdGUgJnN0CiAKIGVnbDo6
Q29uZmlnU2V0IERpc3BsYXlWa0FuZHJvaWQ6OmdlbmVyYXRlQ29uZmlncygpCiB7Ci0gICAgLy8g
VGhlIGxpc3Qgb2Ygc3VwcG9ydGVkIHN3YXBjaGFpbiBmb3JtYXRzIGlzIGF2YWlsYWJsZSBhdDoK
LSAgICAvLyBodHRwczovL2NzLmFuZHJvaWQuY29tL2FuZHJvaWQvcGxhdGZvcm0vc3VwZXJwcm9q
ZWN0LysvbWFzdGVyOmZyYW1ld29ya3MvbmF0aXZlL3Z1bGthbi9saWJ2dWxrYW4vc3dhcGNoYWlu
LmNwcDtsPTQ2NS00ODY/cT1HZXROYXRpdmVQaXhlbEZvcm1hdAotICAgIC8vIFRPRE8gKElzc3Vl
IDQwNjIpOiBBZGQgY29uZGl0aW9uYWwgc3VwcG9ydCBmb3IgR0xfUkdCMTBfQTIgYW5kIEdMX1JH
QkExNkYgd2hlbiB0aGUKLSAgICAvLyBBbmRyb2lkIFZ1bGthbiBsb2FkZXIgYWRkcyBjb25kaXRp
b25hbCBzdXBwb3J0IGZvciB0aGVtLgotICAgIGNvbnN0IHN0ZDo6YXJyYXk8R0xlbnVtLCAzPiBr
Q29sb3JGb3JtYXRzID0ge0dMX1JHQkE4LCBHTF9SR0I4LCBHTF9SR0I1NjV9OworICAgIC8vIEFO
R0xFJ3MgVnVsa2FuIGJhY2stZW5kIG9uIEFuZHJvaWQgdHJhZGl0aW9uYWxseSBzdXBwb3J0cyBF
R0xDb25maWcncyB3aXRoIEdMX1JHQkE4LAorICAgIC8vIEdMX1JHQjgsIGFuZCBHTF9SR0I1NjUu
ICBUaGUgQW5kcm9pZCBWdWxrYW4gbG9hZGVyIHVzZWQgdG8gc3VwcG9ydCBhbGwgdGhyZWUgb2Yg
dGhlc2UKKyAgICAvLyAoZS5nLiBBbmRyb2lkIDcpLCBidXQgdGhpcyBoYXMgY2hhbmdlZCBhcyBB
bmRyb2lkIG5vdyBzdXBwb3J0cyBWdWxrYW4gZGV2aWNlcyB0aGF0IGRvIG5vdAorICAgIC8vIHN1
cHBvcnQgYWxsIG9mIHRob3NlIGZvcm1hdHMuICBUaGUgbG9hZGVyIGFsd2F5cyBzdXBwb3J0cyBH
TF9SR0JBOC4gIE90aGVyIGZvcm1hdHMgYXJlCisgICAgLy8gb3B0aW9uYWxseSBzdXBwb3J0ZWQs
IGRlcGVuZGluZyBvbiB0aGUgdW5kZXJseWluZyBkcml2ZXIgc3VwcG9ydC4gIFRoaXMgaW5jbHVk
ZXMgR0xfUkdCMTBfQTIKKyAgICAvLyBhbmQgR0xfUkdCQTE2Riwgd2hpY2ggQU5HTEUgYWxzbyBk
ZXNpcmVzIHRvIHN1cHBvcnQgRUdMQ29uZmlnJ3Mgd2l0aC4KKyAgICAvLworICAgIC8vIFRoZSBw
cm9ibGVtIGZvciBBTkdMRSBpcyB0aGF0IFZ1bGthbiByZXF1aXJlcyBhIFZrU3VyZmFjZUtIUiBp
biBvcmRlciB0byBxdWVyeSBhdmFpbGFibGUKKyAgICAvLyBmb3JtYXRzIGZyb20gdGhlIGxvYWRl
ciwgYnV0IEFOR0xFIG11c3QgZGV0ZXJtaW5lIHdoaWNoIEVHTENvbmZpZydzIHRvIGV4cG9zZSBi
ZWZvcmUgaXQgaGFzCisgICAgLy8gYSBWa1N1cmZhY2VLSFIuICBUaGUgVktfR09PR0xFX3N1cmZh
Y2VsZXNzX3F1ZXJ5IGV4dGVuc2lvbiBhbGxvd3MgQU5HTEUgdG8gcXVlcnkgZm9ybWF0cworICAg
IC8vIHdpdGhvdXQgaGF2aW5nIGEgVmtTdXJmYWNlS0hSLiAgVGhlIG9sZCBwYXRoIGlzIHN0aWxs
IGtlcHQgdW50aWwgdGhpcyBleHRlbnNpb24gYmVjb21lcworICAgIC8vIHVuaXZlcnNhbGx5IGF2
YWlsYWJsZS4KKworICAgIC8vIEFzc3VtZSBHTF9SR0I4IGFuZCBHTF9SR0JBOCBpcyBhbHdheXMg
YXZhaWxhYmxlLgorICAgIHN0ZDo6dmVjdG9yPEdMZW51bT4ga0NvbG9yRm9ybWF0cyAgICAgICAg
PSB7R0xfUkdCQTgsIEdMX1JHQjh9OworICAgIHN0ZDo6dmVjdG9yPEdMZW51bT4ga0Rlc2lyZWRD
b2xvckZvcm1hdHMgPSB7R0xfUkdCNTY1LCBHTF9SR0IxMF9BMiwgR0xfUkdCQTE2Rn07CisgICAg
aWYgKCFnZXRSZW5kZXJlcigpLT5nZXRGZWF0dXJlcygpLnN1cHBvcnRzU3VyZmFjZWxlc3NRdWVy
eUV4dGVuc2lvbi5lbmFibGVkKQorICAgIHsKKyAgICAgICAgLy8gT2xkIHBhdGg6IEFzc3VtZSBH
TF9SR0I1NjUgaXMgYXZhaWxhYmxlLCBhcyBpdCBpcyBnZW5lcmFsbHkgYXZhaWxhYmxlIG9uIHRo
ZSBkZXZpY2VzCisgICAgICAgIC8vIHRoYXQgc3VwcG9ydCBWdWxrYW4uCisgICAgICAgIGtDb2xv
ckZvcm1hdHMucHVzaF9iYWNrKEdMX1JHQjU2NSk7CisgICAgfQorICAgIGVsc2UKKyAgICB7Cisg
ICAgICAgIC8vIFVzZSB0aGUgVktfR09PR0xFX3N1cmZhY2VsZXNzX3F1ZXJ5IGV4dGVuc2lvbiB0
byBxdWVyeSB0aGUgYXZhaWxhYmxlIGZvcm1hdHMgYW5kCisgICAgICAgIC8vIGNvbG9yc3BhY2Vz
IGJ5IHVzaW5nIGEgVktfTlVMTF9IQU5ETEUgZm9yIHRoZSBWa1N1cmZhY2VLSFIgaGFuZGxlLgor
ICAgICAgICBWa1BoeXNpY2FsRGV2aWNlIHBoeXNpY2FsRGV2aWNlICAgICAgICAgICAgICA9IG1S
ZW5kZXJlci0+Z2V0UGh5c2ljYWxEZXZpY2UoKTsKKyAgICAgICAgVmtQaHlzaWNhbERldmljZVN1
cmZhY2VJbmZvMktIUiBzdXJmYWNlSW5mbzIgPSB7fTsKKyAgICAgICAgc3VyZmFjZUluZm8yLnNU
eXBlICAgICAgICAgID0gVktfU1RSVUNUVVJFX1RZUEVfUEhZU0lDQUxfREVWSUNFX1NVUkZBQ0Vf
SU5GT18yX0tIUjsKKyAgICAgICAgc3VyZmFjZUluZm8yLnN1cmZhY2UgICAgICAgID0gVktfTlVM
TF9IQU5ETEU7CisgICAgICAgIHVpbnQzMl90IHN1cmZhY2VGb3JtYXRDb3VudCA9IDA7CisKKyAg
ICAgICAgVmtSZXN1bHQgcmVzdWx0ID0gdmtHZXRQaHlzaWNhbERldmljZVN1cmZhY2VGb3JtYXRz
MktIUihwaHlzaWNhbERldmljZSwgJnN1cmZhY2VJbmZvMiwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmc3VyZmFjZUZvcm1h
dENvdW50LCBudWxscHRyKTsKKyAgICAgICAgaWYgKHJlc3VsdCAhPSBWS19TVUNDRVNTKQorICAg
ICAgICB7CisgICAgICAgICAgICByZXR1cm4gZWdsOjpDb25maWdTZXQoKTsKKyAgICAgICAgfQor
ICAgICAgICBzdGQ6OnZlY3RvcjxWa1N1cmZhY2VGb3JtYXQyS0hSPiBzdXJmYWNlRm9ybWF0czIo
c3VyZmFjZUZvcm1hdENvdW50KTsKKyAgICAgICAgZm9yIChWa1N1cmZhY2VGb3JtYXQyS0hSICZz
dXJmYWNlRm9ybWF0MiA6IHN1cmZhY2VGb3JtYXRzMikKKyAgICAgICAgeworICAgICAgICAgICAg
c3VyZmFjZUZvcm1hdDIuc1R5cGUgPSBWS19TVFJVQ1RVUkVfVFlQRV9TVVJGQUNFX0ZPUk1BVF8y
X0tIUjsKKyAgICAgICAgfQorICAgICAgICByZXN1bHQgPSB2a0dldFBoeXNpY2FsRGV2aWNlU3Vy
ZmFjZUZvcm1hdHMyS0hSKHBoeXNpY2FsRGV2aWNlLCAmc3VyZmFjZUluZm8yLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZzdXJmYWNlRm9y
bWF0Q291bnQsIHN1cmZhY2VGb3JtYXRzMi5kYXRhKCkpOworICAgICAgICBpZiAocmVzdWx0ICE9
IFZLX1NVQ0NFU1MpCisgICAgICAgIHsKKyAgICAgICAgICAgIHJldHVybiBlZ2w6OkNvbmZpZ1Nl
dCgpOworICAgICAgICB9CisKKyAgICAgICAgZm9yIChjb25zdCBWa1N1cmZhY2VGb3JtYXQyS0hS
ICZzdXJmYWNlRm9ybWF0MiA6IHN1cmZhY2VGb3JtYXRzMikKKyAgICAgICAgeworICAgICAgICAg
ICAgLy8gTmVlZCB0byBjb252ZXJ0IGVhY2ggVnVsa2FuIFZrRm9ybWF0IGludG8gaXRzIEdMRVMg
ZXF1aXZhbGVudCBhbmQKKyAgICAgICAgICAgIC8vIGFkZCBmb3JtYXRzIGluIGtEZXNpcmVkQ29s
b3JGb3JtYXRzLgorICAgICAgICAgICAgYW5nbGU6OkZvcm1hdElEIGFuZ2xlRm9ybWF0SUQgPQor
ICAgICAgICAgICAgICAgIHZrOjpHZXRGb3JtYXRJREZyb21Wa0Zvcm1hdChzdXJmYWNlRm9ybWF0
Mi5zdXJmYWNlRm9ybWF0LmZvcm1hdCk7CisgICAgICAgICAgICBjb25zdCBhbmdsZTo6Rm9ybWF0
ICZhbmdsZUZvcm1hdCA9IGFuZ2xlOjpGb3JtYXQ6OkdldChhbmdsZUZvcm1hdElEKTsKKyAgICAg
ICAgICAgIEdMZW51bSBnbEZvcm1hdCAgICAgICAgICAgICAgICAgID0gYW5nbGVGb3JtYXQuZ2xJ
bnRlcm5hbEZvcm1hdDsKKworICAgICAgICAgICAgaWYgKHN0ZDo6ZmluZChrRGVzaXJlZENvbG9y
Rm9ybWF0cy5iZWdpbigpLCBrRGVzaXJlZENvbG9yRm9ybWF0cy5lbmQoKSwgZ2xGb3JtYXQpICE9
CisgICAgICAgICAgICAgICAga0Rlc2lyZWRDb2xvckZvcm1hdHMuZW5kKCkpCisgICAgICAgICAg
ICB7CisgICAgICAgICAgICAgICAga0NvbG9yRm9ybWF0cy5wdXNoX2JhY2soZ2xGb3JtYXQpOwor
ICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgfQogCiAgICAgc3RkOjp2ZWN0b3I8R0xlbnVt
PiBkZXB0aFN0ZW5jaWxGb3JtYXRzKAogICAgICAgICBlZ2xfdms6OmtDb25maWdEZXB0aFN0ZW5j
aWxGb3JtYXRzLApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFO
R0xFL3JlbmRlcmVyL3Z1bGthbi9kb2MvU2hhZGVyTW9kdWxlQ29tcGlsYXRpb24ubWQgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL2RvYy9TaGFk
ZXJNb2R1bGVDb21waWxhdGlvbi5tZAppbmRleCBkNGUzYjhmZGE5NWU4YmQwNzg2Y2I5ZjI5MGJm
ZTM2MzljNGY0ZDkyLi40MTUyZjcwOWMxMjczZWNjNDIxMjUzNGQ0OWU0MzVjM2QxNTg5NzhlIDEw
MDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIv
dnVsa2FuL2RvYy9TaGFkZXJNb2R1bGVDb21waWxhdGlvbi5tZAorKysgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL2RvYy9TaGFkZXJNb2R1bGVD
b21waWxhdGlvbi5tZApAQCAtNCwzNCArNCwzNSBAQCBBTkdMRSBjb252ZXJ0cyBhcHBsaWNhdGlv
biBzaGFkZXJzIGludG8gVnVsa2FuIFtWa1NoYWRlck1vZHVsZXNdW1ZrU2hhZGVyTW9kdWxlXQog
b2Ygc3RlcHM6CiAKIDEuICoqQU5HTEUgSW50ZXJuYWwgVHJhbnNsYXRpb24qKjogVGhlIGluaXRp
YWwgY2FsbHMgdG8gYGdsQ29tcGlsZVNoYWRlcmAgYXJlIHBhc3NlZCB0byB0aGUgW0FOR0xFCi1z
aGFkZXIgdHJhbnNsYXRvcl1bdHJhbnNsYXRvcl0uIFRoZSB0cmFuc2xhdG9yIGNvbXBpbGVzIGFw
cGxpY2F0aW9uIHNoYWRlcnMgaW50byBWdWxrYW4tY29tcGF0aWJsZQotR0xTTC4gVnVsa2FuLWNv
bXBhdGlibGUgR0xTTCBtYXRjaGVzIHRoZSBbR0xfS0hSX3Z1bGthbl9nbHNsXVtHTF9LSFJfdnVs
a2FuX2dsc2xdIGV4dGVuc2lvbiBzcGVjCi13aXRoIHNvbWUgYWRkaXRpb25hbCB3b3JrYXJvdW5k
cyBhbmQgZW11bGF0aW9uLiBXZSBlbXVsYXRlIE9wZW5HTCdzIGRpZmZlcmVudCBkZXB0aCByYW5n
ZSwgdmlld3BvcnQKLXkgZmxpcHBpbmcsIGRlZmF1bHQgdW5pZm9ybXMsIGFuZCBPcGVuR0wKLVts
aW5lIHNlZ21lbnQgcmFzdGVyaXphdGlvbl0oT3BlbkdMTGluZVNlZ21lbnRSYXN0ZXJpemF0aW9u
Lm1kKS4gRm9yIG1vcmUgaW5mbyBzZWUKLVtUcmFuc2xhdG9yVnVsa2FuLmNwcF1bVHJhbnNsYXRv
clZ1bGthbi5jcHBdLiBBZnRlciBpbml0aWFsIGNvbXBpbGF0aW9uIHRoZSBzaGFkZXJzIGFyZSBu
b3QKK3NoYWRlciB0cmFuc2xhdG9yXVt0cmFuc2xhdG9yXS4gVGhlIHRyYW5zbGF0b3IgY29tcGls
ZXMgYXBwbGljYXRpb24gc2hhZGVycyBpbnRvIFNQSVItViwgYWZ0ZXIKK3RyYW5zZm9ybWluZyBH
TFNMIHRvIGNvbmZvcm0gdG8gdGhlIFtHTF9LSFJfdnVsa2FuX2dsc2xdW0dMX0tIUl92dWxrYW5f
Z2xzbF0gZXh0ZW5zaW9uIHNwZWMgd2l0aAorc29tZSBhZGRpdGlvbmFsIHdvcmthcm91bmRzIGFu
ZCBlbXVsYXRpb24uIFdlIGVtdWxhdGUgT3BlbkdMJ3MgZGlmZmVyZW50IGRlcHRoIHJhbmdlLCB2
aWV3cG9ydCB5CitmbGlwcGluZywgZGVmYXVsdCB1bmlmb3JtcywgYW5kIE9wZW5HTAorW2xpbmUg
c2VnbWVudCByYXN0ZXJpemF0aW9uXShPcGVuR0xMaW5lU2VnbWVudFJhc3Rlcml6YXRpb24ubWQp
IGFtb25nIG90aGVycy4gRm9yIG1vcmUgaW5mbyBzZWUKK1tUcmFuc2xhdG9yVnVsa2FuLmNwcF1b
VHJhbnNsYXRvclZ1bGthbi5jcHBdLiBBZnRlciBpbml0aWFsIGNvbXBpbGF0aW9uLCB0aGUgU1BJ
Ui1WIGJsb2JzIGFyZSBub3QKIGNvbXBsZXRlLiBUaGUgdHJhbnNsYXRvciBpbml0aWFsbHkgYXNz
aWducyByZXNvdXJjZXMgYW5kIGluL291dCB2YXJpYWJsZXMgYXJiaXRyYXJ5IGRlc2NyaXB0b3Ig
c2V0LAogYmluZGluZyBhbmQgbG9jYXRpb24gaW5kaWNlcy4gVGhlIGNvcnJlY3QgdmFsdWVzIGFy
ZSBkZXRlcm1pbmVkIGF0IGxpbmsgdGltZS4gRm9yIHRoZSBzYWtlIG9mCi10cmFuc2Zvcm0gZmVl
ZGJhY2ssIHNvbWUgbWFya2VycyBhcmUgbGVmdCBpbiB0aGUgc2hhZGVyIGZvciBsaW5rLXRpbWUg
c3Vic3RpdHV0aW9uLgordHJhbnNmb3JtIGZlZWRiYWNrLCBzb21lIGFkZGl0aW9uYWwgY29kZSBp
cyBnZW5lcmF0ZWQgdG8gYmUgcmVtb3ZlZCBvciBtb2RpZmllZCBkdXJpbmcgU1BJUi1WCit0cmFu
c2Zvcm1hdGlvbi4KIAotICBUaGUgdHJhbnNsYXRvciBvdXRwdXRzIHNvbWUgZmVhdHVyZSBjb2Rl
IGNvbmRpdGlvbmFsIHRvIFZ1bGthbiBzcGVjaWFsaXphdGlvbiBjb25zdGFudHMsIHdoaWNoIGFy
ZQorICAgVGhlIHRyYW5zbGF0b3Igb3V0cHV0cyBzb21lIGZlYXR1cmUgY29kZSBjb25kaXRpb25h
bCB0byBWdWxrYW4gc3BlY2lhbGl6YXRpb24gY29uc3RhbnRzLCB3aGljaCBhcmUKIHJlc29sdmVk
IGF0IGRyYXctdGltZS4gRm9yIGV4YW1wbGUsCiBbQnJlc2VuaGFtIGxpbmUgcmFzdGVyaXphdGlv
bl0oT3BlbkdMTGluZVNlZ21lbnRSYXN0ZXJpemF0aW9uLm1kKSBlbXVsYXRpb24uCiAKLTEuICoq
TGluay1UaW1lIENvbXBpbGF0aW9uIGFuZCBUcmFuc2Zvcm1hdGlvbioqOiBEdXJpbmcgYSBjYWxs
IHRvIGBnbExpbmtQcm9ncmFtYCB0aGUgVnVsa2FuCi1iYWNrLWVuZCBjYW4ga25vdyB0aGUgbmVj
ZXNzYXJ5IGxvY2F0aW9ucyBhbmQgcHJvcGVydGllcyB0byB3cml0ZSB0byBjb25uZWN0IHRoZSBz
aGFkZXIgc3RhZ2UKLWludGVyZmFjZXMuIFdlIGdldCB0aGUgY29tcGxldGVkIHNoYWRlciBzb3Vy
Y2UgdXNpbmcgQU5HTEUncwotW0dsc2xhbmdXcmFwcGVyVmtdW0dsc2xhbmdXcmFwcGVyVmsuY3Bw
XSBoZWxwZXIgY2xhc3MuIEF0IHRoaXMgdGltZSwgd2UgdXNlIEtocm9ub3MnCi1bZ2xzbGFuZ11b
Z2xzbGFuZ10gdG8gY29udmVydCB0aGUgVnVsa2FuLWNvbXBhdGlibGUgR0xTTCBpbnRvIFNQSVIt
Vi4gQSB0cmFuc2Zvcm1hdGlvbiBwYXNzIGlzIGRvbmUKLW9uIHRoZSBnZW5lcmF0ZWQgU1BJUi1W
IHRvIHVwZGF0ZSB0aGUgYXJiaXRyYXJ5IGRlc2NyaXB0b3Igc2V0LCBiaW5kaW5nIGFuZCBsb2Nh
dGlvbiBpbmRpY2VzIHNldCBpbgotc3RlcCAxLiBBZGRpdGlvbmFsbHksIGNvbXBvbmVudCBhbmQg
dmFyaW91cyB0cmFuc2Zvcm0gZmVlZGJhY2sgZGVjb3JhdGlvbnMgYXJlIGFkZGVkIGFuZCBpbmFj
dGl2ZQotdmFyeWluZ3MgYXJlIHJlbW92ZWQgZnJvbSB0aGUgc2hhZGVyIGludGVyZmFjZS4gV2Ug
Y3VycmVudGx5IGRvbid0IGdlbmVyYXRlIGBWa1NoYWRlck1vZHVsZXNgIGF0Ci10aGlzIHRpbWUs
IGJ1dCB0aGF0IGNvdWxkIGJlIGEgZnV0dXJlIG9wdGltaXphdGlvbi4KLQotMS4gKipEcmF3LXRp
bWUgUGlwZWxpbmUgQ3JlYXRpb24qKjogT25jZSB0aGUgYXBwbGljYXRpb24gcmVjb3JkcyBhIGRy
YXcgY2FsbCwgdGhlIFNQSVItViBpcyBjb21waWxlZAotaW50byBgVmtTaGFkZXJNb2R1bGVgcy4g
VGhlIGFwcHJvcHJpYXRlIHNwZWNpYWxpemF0aW9uIGNvbnN0YW50cyBhcmUgdGhlbiByZXNvbHZl
ZCBhbmQgdGhlCi1gVmtQaXBlbGluZWAgb2JqZWN0IGlzIGNyZWF0ZWQuICBOb3RlIHRoYXQgd2Ug
Y3VycmVudGx5IGRvbid0IHVzZSBbU1BJUlYtVG9vbHNdW1NQSVJWLVRvb2xzXSB0bwotcGVyZm9y
bSBhbnkgU1BJUi1WIG9wdGltaXphdGlvbi4gVGhpcyBjb3VsZCBiZSBzb21ldGhpbmcgdG8gaW1w
cm92ZSBvbiBpbiB0aGUgZnV0dXJlLgorMS4gKipMaW5rIFRpbWUqKjogRHVyaW5nIGEgY2FsbCB0
byBgZ2xMaW5rUHJvZ3JhbWAgdGhlIFZ1bGthbiBiYWNrLWVuZCBjYW4ga25vdyB0aGUgbmVjZXNz
YXJ5Citsb2NhdGlvbnMgYW5kIHByb3BlcnRpZXMgdG8gd3JpdGUgdG8gY29ubmVjdCB0aGUgc2hh
ZGVyIHN0YWdlIGludGVyZmFjZXMuIEhvd2V2ZXIsIHNvbWUgZHJhdy10aW1lCitpbmZvcm1hdGlv
biBpcyBzdGlsbCBuZWNlc3NhcnkgdG8gZmluYWxpemUgdGhlIFNQSVItVjsgZm9yIGV4YW1wbGUg
d2hldGhlciAiZWFybHkgZnJhZ21lbnQgdGVzdHMiCitjYW4gYmUgZW5hYmxlZC4gQXMgYW4gb3B0
aW1pemF0aW9uLCB0aGUgU1BJUi1WIGlzIHRyYW5zZm9ybWVkIHdpdGggYXJiaXRyYXJ5IHNldHRp
bmdzIGFuZCBhIFZ1bGthbgorcGlwZWxpbmUgb2JqZWN0IGlzIGNyZWF0ZWQgaW4gYW4gYXR0ZW1w
dCB0byB3YXJtIHRoZSBWdWxrYW4gcGlwZWxpbmUgY2FjaGUuCisKKzEuICoqRHJhdy1UaW1lIFNQ
SVItViBUcmFuc2Zvcm1hdGlvbiBhbmQgUGlwZWxpbmUgQ3JlYXRpb24qKjogT25jZSB0aGUgYXBw
bGljYXRpb24gcmVjb3JkcyBhIGRyYXcKK2NhbGwsIGEgdHJhbnNmb3JtYXRpb24gcGFzcyBpcyBk
b25lIG9uIHRoZSBnZW5lcmF0ZWQgU1BJUi1WIHRvIHVwZGF0ZSB0aGUgYXJiaXRyYXJ5IGRlc2Ny
aXB0b3Igc2V0LAorYmluZGluZyBhbmQgbG9jYXRpb24gaW5kaWNlcyBzZXQgaW4gc3RlcCAxLiBB
ZGRpdGlvbmFsbHksIGNvbXBvbmVudCBhbmQgdmFyaW91cyB0cmFuc2Zvcm0gZmVlZGJhY2sKK2Rl
Y29yYXRpb25zIGFyZSBhZGRlZCwgaW5hY3RpdmUgdmFyeWluZ3MgYXJlIHJlbW92ZWQsIGVhcmx5
IGZyYWdtZW50IHRlc3RzIGFyZSBlbmFibGVkIG9yIGRpc2FibGVkLAorZGVidWcgaW5mbyBpcyBy
ZW1vdmVkIGFuZCBwcmUtcm90YXRpb24gaXMgYXBwbGllZC4gQXQgdGhpcyB0aW1lLCBgVmtTaGFk
ZXJNb2R1bGVgcyBhcmUgY3JlYXRlZCAoYW5kCitjYWNoZWQpLiBUaGUgYXBwcm9wcmlhdGUgc3Bl
Y2lhbGl6YXRpb24gY29uc3RhbnRzIGFyZSB0aGVuIHJlc29sdmVkIGFuZCB0aGUgYFZrUGlwZWxp
bmVgIG9iamVjdCBpcworY3JlYXRlZC4gIE5vdGUgdGhhdCB3ZSBjdXJyZW50bHkgZG9uJ3QgdXNl
IFtTUElSVi1Ub29sc11bU1BJUlYtVG9vbHNdIHRvIHBlcmZvcm0gYW55IFNQSVItVgorb3B0aW1p
emF0aW9uLiBUaGlzIGNvdWxkIGJlIHNvbWV0aGluZyB0byBpbXByb3ZlIG9uIGluIHRoZSBmdXR1
cmUuCiAKIFNlZSB0aGUgYmVsb3cgZGlhZ3JhbSBmb3IgYSBoaWdoLWxldmVsIHZpZXcgb2YgdGhl
IHNoYWRlciB0cmFuc2xhdGlvbiBmbG93OgogCkBAIC00MSwxNSArNDIsMTQgQEAgcGFydGljaXBh
bnQgQXBwCiBwYXJ0aWNpcGFudCAiQU5HTEUgRnJvbnQtZW5kIgogcGFydGljaXBhbnQgIlZ1bGth
biBCYWNrLWVuZCIKIHBhcnRpY2lwYW50ICJBTkdMRSBUcmFuc2xhdG9yIgotcGFydGljaXBhbnQg
Ikdsc2xhbmdXcmFwcGVyVmsiCi1wYXJ0aWNpcGFudCAiR2xzbGFuZyIKK3BhcnRpY2lwYW50ICJM
aW5rLVRpbWUgU1BJUi1WIFRyYW5zZm9ybWVyIgogCiBBcHAtPiJBTkdMRSBGcm9udC1lbmQiOiBn
bENvbXBpbGVTaGFkZXIgKFZTKQogIkFOR0xFIEZyb250LWVuZCItPiJWdWxrYW4gQmFjay1lbmQi
OiBTaGFkZXJWazo6Y29tcGlsZQogIlZ1bGthbiBCYWNrLWVuZCItPiJBTkdMRSBUcmFuc2xhdG9y
Ijogc2g6OkNvbXBpbGUKLSJBTkdMRSBUcmFuc2xhdG9yIi0gLT4iQU5HTEUgRnJvbnQtZW5kIjog
cmV0dXJuIFZ1bGthbi1jb21wYXRpYmxlIEdMU0wKKyJBTkdMRSBUcmFuc2xhdG9yIi0gLT4iQU5H
TEUgRnJvbnQtZW5kIjogcmV0dXJuIFNQSVItVgogCi1Ob3RlIHJpZ2h0IG9mICJBTkdMRSBGcm9u
dC1lbmQiOiBTb3VyY2UgaXMgdXNpbmcgYm9ndXNcblZ1bGthbiBxdWFsaWZpZXJzIHRvIGJlXG5j
b3JyZWN0ZWQgYXQgbGluayB0aW1lLgorTm90ZSByaWdodCBvZiAiQU5HTEUgRnJvbnQtZW5kIjog
U1BJUi1WIGlzIHVzaW5nIGJvZ3VzXG5kZWNvcmF0aW9ucyB0byBiZVxuY29ycmVjdGVkIGF0IGxp
bmsgdGltZS4KIAogTm90ZSByaWdodCBvZiBBcHA6IFNhbWUgZm9yIEZTLCBHUywgZXRjLi4uCiAK
QEAgLTYwLDEzICs2MCw4IEBAIEFwcC0+IkFOR0xFIEZyb250LWVuZCI6IGdsTGlua1Byb2dyYW0K
IAogTm90ZSByaWdodCBvZiAiVnVsa2FuIEJhY2stZW5kIjogUHJvZ3JhbVZrIGluaXRzIHVuaWZv
cm1zLFxubGF5b3V0cywgYW5kIGRlc2NyaXB0b3JzLgogCi0iVnVsa2FuIEJhY2stZW5kIi0+R2xz
bGFuZ1dyYXBwZXJWazogR2xzbGFuZ1dyYXBwZXJWazo6R2V0U2hhZGVyU3BpcnZDb2RlCi1HbHNs
YW5nV3JhcHBlclZrLT5HbHNsYW5nOiBHbHNsYW5nVG9TcHYKLUdsc2xhbmctIC0+R2xzbGFuZ1dy
YXBwZXJWazogUmV0dXJuIFNQSVItVgotCi1Ob3RlIHJpZ2h0IG9mIEdsc2xhbmdXcmFwcGVyVms6
IFRyYW5zZm9ybSBTUElSLVYKLQotR2xzbGFuZ1dyYXBwZXJWay0gLT4iVnVsa2FuIEJhY2stZW5k
IjogcmV0dXJuIHRyYW5zZm9ybWVkIFNQSVItVgorIlZ1bGthbiBCYWNrLWVuZCItPiJMaW5rLVRp
bWUgU1BJUi1WIFRyYW5zZm9ybWVyIjogR2xzbGFuZ1dyYXBwZXJWazo6R2V0U2hhZGVyQ29kZQor
IkxpbmstVGltZSBTUElSLVYgVHJhbnNmb3JtZXIiLSAtPiJWdWxrYW4gQmFjay1lbmQiOiByZXRy
aWV2ZSBTUElSLVYgYW5kIGRldGVybWluZSBkZWNvcmF0aW9ucwogIlZ1bGthbiBCYWNrLWVuZCIt
IC0+IkFOR0xFIEZyb250LWVuZCI6IHJldHVybiBzdWNjZXNzCiAKIE5vdGUgcmlnaHQgb2YgQXBw
OiBBcHAgZXhlY3V0aW9uIGNvbnRpbnVlcy4uLgpAQCAtNzQsNiArNjksOSBAQCBOb3RlIHJpZ2h0
IG9mIEFwcDogQXBwIGV4ZWN1dGlvbiBjb250aW51ZXMuLi4KIEFwcC0+IkFOR0xFIEZyb250LWVu
ZCI6IGdsRHJhd0FycmF5cyAoYW55IGRyYXcpCiAiQU5HTEUgRnJvbnQtZW5kIi0+IlZ1bGthbiBC
YWNrLWVuZCI6IENvbnRleHRWazo6ZHJhd0FycmF5cwogCisiVnVsa2FuIEJhY2stZW5kIi0+Ikxp
bmstVGltZSBTUElSLVYgVHJhbnNmb3JtZXIiOiBHbHNsYW5nV3JhcHBlclZrOjpUcmFuc2Zvcm1T
cGlyVgorIkxpbmstVGltZSBTUElSLVYgVHJhbnNmb3JtZXIiLSAtPiJWdWxrYW4gQmFjay1lbmQi
OiByZXR1cm4gdHJhbnNmb3JtZWQgU1BJUi1WCisKIE5vdGUgcmlnaHQgb2YgIlZ1bGthbiBCYWNr
LWVuZCI6IFdlIGluaXQgVmtTaGFkZXJNb2R1bGVzXG5hbmQgVmtQaXBlbGluZSB0aGVuXG5yZWNv
cmQgdGhlIGRyYXcuCiAKICJWdWxrYW4gQmFjay1lbmQiLSAtPiJBTkdMRSBGcm9udC1lbmQiOiBy
ZXR1cm4gc3VjY2VzcwpAQCAtODIsNyArODAsNiBAQCBOb3RlIHJpZ2h0IG9mICJWdWxrYW4gQmFj
ay1lbmQiOiBXZSBpbml0IFZrU2hhZGVyTW9kdWxlc1xuYW5kIFZrUGlwZWxpbmUgdGhlblxucgog
IVtWdWxrYW4gU2hhZGVyIFRyYW5zbGF0aW9uIEZsb3ddKGh0dHBzOi8vcmF3LmdpdGh1YnVzZXJj
b250ZW50LmNvbS9nb29nbGUvYW5nbGUvbWFpbi9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2Fu
L2RvYy9pbWcvVnVsa2FuU2hhZGVyVHJhbnNsYXRpb24uc3ZnP3Nhbml0aXplPXRydWUpCiAKIFtH
TF9LSFJfdnVsa2FuX2dsc2xdOiBodHRwczovL2dpdGh1Yi5jb20vS2hyb25vc0dyb3VwL0dMU0wv
YmxvYi9tYWluL2V4dGVuc2lvbnMva2hyL0dMX0tIUl92dWxrYW5fZ2xzbC50eHQKLVtnbHNsYW5n
XTogaHR0cHM6Ly9naXRodWIuY29tL0tocm9ub3NHcm91cC9nbHNsYW5nCiBbR2xzbGFuZ1dyYXBw
ZXJWay5jcHBdOiBodHRwczovL2Nocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vYW5nbGUvYW5nbGUv
Ky9yZWZzL2hlYWRzL21haW4vc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9HbHNsYW5nV3Jh
cHBlclZrLmNwcAogW1NQSVJWLVRvb2xzXTogaHR0cHM6Ly9naXRodWIuY29tL0tocm9ub3NHcm91
cC9TUElSVi1Ub29scwogW3RyYW5zbGF0b3JdOiBodHRwczovL2Nocm9taXVtLmdvb2dsZXNvdXJj
ZS5jb20vYW5nbGUvYW5nbGUvKy9yZWZzL2hlYWRzL21haW4vc3JjL2NvbXBpbGVyL3RyYW5zbGF0
b3IvCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVu
ZGVyZXIvdnVsa2FuL2RvYy9pbWcvVnVsa2FuU2hhZGVyVHJhbnNsYXRpb24uc3ZnIGIvU291cmNl
L1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9kb2MvaW1nL1Z1
bGthblNoYWRlclRyYW5zbGF0aW9uLnN2ZwppbmRleCAxMDc1NjViYjUxNzAxODIyOWU5MGMyYzk1
NDQ4ZmE0MzQ0MTg1MzU0Li4xOTk3ZjgyNTcxMjY4YzAyNTBmMGZhZDJlMDM5YTUwMmZiMzVjODY1
IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVy
ZXIvdnVsa2FuL2RvYy9pbWcvVnVsa2FuU2hhZGVyVHJhbnNsYXRpb24uc3ZnCisrKyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vZG9jL2ltZy9W
dWxrYW5TaGFkZXJUcmFuc2xhdGlvbi5zdmcKQEAgLTEsMTYgKzEsMTUgQEAKLTw/eG1sIHZlcnNp
b249IjEuMCIgZW5jb2Rpbmc9InV0Zi04IiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcg
UFVCTElDICItLy9XM0MvL0RURCBTVkcgMjAwMTA5MDQvL0VOIiAiaHR0cDovL3d3dy53My5vcmcv
VFIvMjAwMS9SRUMtU1ZHLTIwMDEwOTA0L0RURC9zdmcxMC5kdGQiPjxzdmcgeG1sbnM9Imh0dHA6
Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iMTM3MCIgaGVpZ2h0PSIxMTUyIiB4bWxuczp4
bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+PHNvdXJjZT48IVtDREFUQVtwYXJ0
aWNpcGFudCBBcHAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9InV0Zi04IiBzdGFuZGFs
b25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMjAwMTA5MDQv
L0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvMjAwMS9SRUMtU1ZHLTIwMDEwOTA0L0RURC9zdmcx
MC5kdGQiPjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iMTMy
MCIgaGVpZ2h0PSIxMDkxIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGlu
ayI+PHNvdXJjZT48IVtDREFUQVtwYXJ0aWNpcGFudCBBcHAKIHBhcnRpY2lwYW50ICJBTkdMRSBG
cm9udC1lbmQiCiBwYXJ0aWNpcGFudCAiVnVsa2FuIEJhY2stZW5kIgogcGFydGljaXBhbnQgIkFO
R0xFIFRyYW5zbGF0b3IiCi1wYXJ0aWNpcGFudCAiR2xzbGFuZ1dyYXBwZXJWayIKLXBhcnRpY2lw
YW50ICJHbHNsYW5nIgorcGFydGljaXBhbnQgIkxpbmstVGltZSBTUElSLVYgVHJhbnNmb3JtZXIi
CiAKIEFwcC0+IkFOR0xFIEZyb250LWVuZCI6IGdsQ29tcGlsZVNoYWRlciAoVlMpCiAiQU5HTEUg
RnJvbnQtZW5kIi0+IlZ1bGthbiBCYWNrLWVuZCI6IFNoYWRlclZrOjpjb21waWxlCiAiVnVsa2Fu
IEJhY2stZW5kIi0+IkFOR0xFIFRyYW5zbGF0b3IiOiBzaDo6Q29tcGlsZQotIkFOR0xFIFRyYW5z
bGF0b3IiLS0+IkFOR0xFIEZyb250LWVuZCI6IHJldHVybiBWdWxrYW4tY29tcGF0aWJsZSBHTFNM
CisiQU5HTEUgVHJhbnNsYXRvciItLT4iQU5HTEUgRnJvbnQtZW5kIjogcmV0dXJuIFNQSVItVgog
Ci1Ob3RlIHJpZ2h0IG9mICJBTkdMRSBGcm9udC1lbmQiOiBTb3VyY2UgaXMgdXNpbmcgYm9ndXNc
blZ1bGthbiBxdWFsaWZpZXJzIHRvIGJlXG5jb3JyZWN0ZWQgYXQgbGluayB0aW1lLgorTm90ZSBy
aWdodCBvZiAiQU5HTEUgRnJvbnQtZW5kIjogU1BJUi1WIGlzIHVzaW5nIGJvZ3VzXG5kZWNvcmF0
aW9ucyB0byBiZVxuY29ycmVjdGVkIGF0IGxpbmsgdGltZS4KIAogTm90ZSByaWdodCBvZiBBcHA6
IFNhbWUgZm9yIEZTLCBHUywgZXRjLi4uCiAKQEAgLTIxLDEzICsyMCw4IEBAIEFwcC0+IkFOR0xF
IEZyb250LWVuZCI6IGdsTGlua1Byb2dyYW0KIAogTm90ZSByaWdodCBvZiAiVnVsa2FuIEJhY2st
ZW5kIjogUHJvZ3JhbVZrIGluaXRzIHVuaWZvcm1zLFxubGF5b3V0cywgYW5kIGRlc2NyaXB0b3Jz
LgogCi0iVnVsa2FuIEJhY2stZW5kIi0+R2xzbGFuZ1dyYXBwZXJWazogR2xzbGFuZ1dyYXBwZXJW
azo6R2V0U2hhZGVyU3BpcnZDb2RlCi1HbHNsYW5nV3JhcHBlclZrLT5HbHNsYW5nOiBHbHNsYW5n
VG9TcHYKLUdsc2xhbmctLT5HbHNsYW5nV3JhcHBlclZrOiBSZXR1cm4gU1BJUi1WCi0KLU5vdGUg
cmlnaHQgb2YgR2xzbGFuZ1dyYXBwZXJWazogVHJhbnNmb3JtIFNQSVItVgotCi1HbHNsYW5nV3Jh
cHBlclZrLS0+IlZ1bGthbiBCYWNrLWVuZCI6IHJldHVybiB0cmFuc2Zvcm1lZCBTUElSLVYKKyJW
dWxrYW4gQmFjay1lbmQiLT4iTGluay1UaW1lIFNQSVItViBUcmFuc2Zvcm1lciI6IEdsc2xhbmdX
cmFwcGVyVms6OkdldFNoYWRlckNvZGUKKyJMaW5rLVRpbWUgU1BJUi1WIFRyYW5zZm9ybWVyIi0t
PiJWdWxrYW4gQmFjay1lbmQiOiByZXRyaWV2ZSBTUElSLVYgYW5kIGRldGVybWluZSBkZWNvcmF0
aW9ucwogIlZ1bGthbiBCYWNrLWVuZCItLT4iQU5HTEUgRnJvbnQtZW5kIjogcmV0dXJuIHN1Y2Nl
c3MKIAogTm90ZSByaWdodCBvZiBBcHA6IEFwcCBleGVjdXRpb24gY29udGludWVzLi4uCkBAIC0z
NSw3ICsyOSwxMCBAQCBOb3RlIHJpZ2h0IG9mIEFwcDogQXBwIGV4ZWN1dGlvbiBjb250aW51ZXMu
Li4KIEFwcC0+IkFOR0xFIEZyb250LWVuZCI6IGdsRHJhd0FycmF5cyAoYW55IGRyYXcpCiAiQU5H
TEUgRnJvbnQtZW5kIi0+IlZ1bGthbiBCYWNrLWVuZCI6IENvbnRleHRWazo6ZHJhd0FycmF5cwog
CisiVnVsa2FuIEJhY2stZW5kIi0+IkxpbmstVGltZSBTUElSLVYgVHJhbnNmb3JtZXIiOiBHbHNs
YW5nV3JhcHBlclZrOjpUcmFuc2Zvcm1TcGlyVgorIkxpbmstVGltZSBTUElSLVYgVHJhbnNmb3Jt
ZXIiLS0+IlZ1bGthbiBCYWNrLWVuZCI6IHJldHVybiB0cmFuc2Zvcm1lZCBTUElSLVYKKwogTm90
ZSByaWdodCBvZiAiVnVsa2FuIEJhY2stZW5kIjogV2UgaW5pdCBWa1NoYWRlck1vZHVsZXNcbmFu
ZCBWa1BpcGVsaW5lIHRoZW5cbnJlY29yZCB0aGUgZHJhdy4KIAogIlZ1bGthbiBCYWNrLWVuZCIt
LT4iQU5HTEUgRnJvbnQtZW5kIjogcmV0dXJuIHN1Y2Nlc3MKLV1dPjwvc291cmNlPjxkZXNjPjwv
ZGVzYz48ZGVmcz48bWFya2VyIHZpZXdCb3g9IjAgMCA1IDUiIG1hcmtlcldpZHRoPSI1IiBtYXJr
ZXJIZWlnaHQ9IjUiIG9yaWVudD0iYXV0byIgcmVmWD0iNSIgcmVmWT0iMi41IiBpZD0ibWFya2Vy
QXJyb3dCbG9jayI+PHBhdGggZD0iTSAwIDAgTCA1IDIuNSBMIDAgNSB6Ij48L3BhdGg+PC9tYXJr
ZXI+PG1hcmtlciB2aWV3Qm94PSIwIDAgOS42IDE2IiBtYXJrZXJXaWR0aD0iNCIgbWFya2VySGVp
Z2h0PSIxNiIgb3JpZW50PSJhdXRvIiByZWZYPSI5LjYiIHJlZlk9IjgiIGlkPSJtYXJrZXJBcnJv
d09wZW4iPjxwYXRoIGQ9Ik0gOS42LDggMS45MiwxNiAwLDEzLjcgNS43Niw4IDAsMi4yODYgMS45
MiwwIDkuNiw4IHoiPjwvcGF0aD48L21hcmtlcj48L2RlZnM+PGcgY2xhc3M9InRpdGxlIj48L2c+
PGcgY2xhc3M9ImFjdG9yIj48cmVjdCB4PSIxMCIgeT0iMjAiIHdpZHRoPSI0OC45MDYyNSIgaGVp
Z2h0PSIzOSIgc3Ryb2tlPSIjMDAwMDAwIiBmaWxsPSIjZmZmZmZmIiBzdHlsZT0ic3Ryb2tlLXdp
ZHRoOiAyOyAtLWRhcmtyZWFkZXItaW5saW5lLWZpbGw6I2VhZTdlMTsgLS1kYXJrcmVhZGVyLWlu
bGluZS1zdHJva2U6IzAwMDAwMDsiIGRhdGEtZGFya3JlYWRlci1pbmxpbmUtZmlsbD0iIiBkYXRh
LWRhcmtyZWFkZXItaW5saW5lLXN0cm9rZT0iIj48L3JlY3Q+PHRleHQgeD0iMjAiIHk9IjQ1IiBz
dHlsZT0iZm9udC1zaXplOiAxNnB4OyBmb250LWZhbWlseTogJnF1b3Q7QW5kYWxlIE1vbm8mcXVv
dDssIG1vbm9zcGFjZTsiPjx0c3BhbiB4PSIyMCI+QXBwPC90c3Bhbj48L3RleHQ+PC9nPjxnIGNs
YXNzPSJhY3RvciI+PHJlY3QgeD0iMTAiIHk9IjEwOTMuMDE1NjI1IiB3aWR0aD0iNDguOTA2MjUi
IGhlaWdodD0iMzkiIHN0cm9rZT0iIzAwMDAwMCIgZmlsbD0iI2ZmZmZmZiIgc3R5bGU9InN0cm9r
ZS13aWR0aDogMjsgLS1kYXJrcmVhZGVyLWlubGluZS1maWxsOiNlYWU3ZTE7IC0tZGFya3JlYWRl
ci1pbmxpbmUtc3Ryb2tlOiMwMDAwMDA7IiBkYXRhLWRhcmtyZWFkZXItaW5saW5lLWZpbGw9IiIg
ZGF0YS1kYXJrcmVhZGVyLWlubGluZS1zdHJva2U9IiI+PC9yZWN0Pjx0ZXh0IHg9IjIwIiB5PSIx
MTE4LjAxNTYyNSIgc3R5bGU9ImZvbnQtc2l6ZTogMTZweDsgZm9udC1mYW1pbHk6ICZxdW90O0Fu
ZGFsZSBNb25vJnF1b3Q7LCBtb25vc3BhY2U7Ij48dHNwYW4geD0iMjAiPkFwcDwvdHNwYW4+PC90
ZXh0PjwvZz48bGluZSB4MT0iMzQuNDUzMTI1IiB4Mj0iMzQuNDUzMTI1IiB5MT0iNTkiIHkyPSIx
MDkzLjAxNTYyNSIgc3Ryb2tlPSIjMDAwMDAwIiBmaWxsPSJub25lIiBzdHlsZT0ic3Ryb2tlLXdp
ZHRoOiAyOyAtLWRhcmtyZWFkZXItaW5saW5lLWZpbGw6bm9uZTsgLS1kYXJrcmVhZGVyLWlubGlu
ZS1zdHJva2U6IzAwMDAwMDsiIGRhdGEtZGFya3JlYWRlci1pbmxpbmUtZmlsbD0iIiBkYXRhLWRh
cmtyZWFkZXItaW5saW5lLXN0cm9rZT0iIj48L2xpbmU+PGcgY2xhc3M9ImFjdG9yIj48cmVjdCB4
PSIyNTIuNjU2MjUiIHk9IjIwIiB3aWR0aD0iMTY0LjUiIGhlaWdodD0iMzkiIHN0cm9rZT0iIzAw
MDAwMCIgZmlsbD0iI2ZmZmZmZiIgc3R5bGU9InN0cm9rZS13aWR0aDogMjsgLS1kYXJrcmVhZGVy
LWlubGluZS1maWxsOiNlYWU3ZTE7IC0tZGFya3JlYWRlci1pbmxpbmUtc3Ryb2tlOiMwMDAwMDA7
IiBkYXRhLWRhcmtyZWFkZXItaW5saW5lLWZpbGw9IiIgZGF0YS1kYXJrcmVhZGVyLWlubGluZS1z
dHJva2U9IiI+PC9yZWN0Pjx0ZXh0IHg9IjI2Mi42NTYyNSIgeT0iNDUiIHN0eWxlPSJmb250LXNp
emU6IDE2cHg7IGZvbnQtZmFtaWx5OiAmcXVvdDtBbmRhbGUgTW9ubyZxdW90OywgbW9ub3NwYWNl
OyI+PHRzcGFuIHg9IjI2Mi42NTYyNSI+QU5HTEUgRnJvbnQtZW5kPC90c3Bhbj48L3RleHQ+PC9n
PjxnIGNsYXNzPSJhY3RvciI+PHJlY3QgeD0iMjUyLjY1NjI1IiB5PSIxMDkzLjAxNTYyNSIgd2lk
dGg9IjE2NC41IiBoZWlnaHQ9IjM5IiBzdHJva2U9IiMwMDAwMDAiIGZpbGw9IiNmZmZmZmYiIHN0
eWxlPSJzdHJva2Utd2lkdGg6IDI7IC0tZGFya3JlYWRlci1pbmxpbmUtZmlsbDojZWFlN2UxOyAt
LWRhcmtyZWFkZXItaW5saW5lLXN0cm9rZTojMDAwMDAwOyIgZGF0YS1kYXJrcmVhZGVyLWlubGlu
ZS1maWxsPSIiIGRhdGEtZGFya3JlYWRlci1pbmxpbmUtc3Ryb2tlPSIiPjwvcmVjdD48dGV4dCB4
PSIyNjIuNjU2MjUiIHk9IjExMTguMDE1NjI1IiBzdHlsZT0iZm9udC1zaXplOiAxNnB4OyBmb250
LWZhbWlseTogJnF1b3Q7QW5kYWxlIE1vbm8mcXVvdDssIG1vbm9zcGFjZTsiPjx0c3BhbiB4PSIy
NjIuNjU2MjUiPkFOR0xFIEZyb250LWVuZDwvdHNwYW4+PC90ZXh0PjwvZz48bGluZSB4MT0iMzM0
LjkwNjI1IiB4Mj0iMzM0LjkwNjI1IiB5MT0iNTkiIHkyPSIxMDkzLjAxNTYyNSIgc3Ryb2tlPSIj
MDAwMDAwIiBmaWxsPSJub25lIiBzdHlsZT0ic3Ryb2tlLXdpZHRoOiAyOyAtLWRhcmtyZWFkZXIt
aW5saW5lLWZpbGw6bm9uZTsgLS1kYXJrcmVhZGVyLWlubGluZS1zdHJva2U6IzAwMDAwMDsiIGRh
dGEtZGFya3JlYWRlci1pbmxpbmUtZmlsbD0iIiBkYXRhLWRhcmtyZWFkZXItaW5saW5lLXN0cm9r
ZT0iIj48L2xpbmU+PGcgY2xhc3M9ImFjdG9yIj48cmVjdCB4PSI1MjQuMjE4NzUiIHk9IjIwIiB3
aWR0aD0iMTY0LjUiIGhlaWdodD0iMzkiIHN0cm9rZT0iIzAwMDAwMCIgZmlsbD0iI2ZmZmZmZiIg
c3R5bGU9InN0cm9rZS13aWR0aDogMjsgLS1kYXJrcmVhZGVyLWlubGluZS1maWxsOiNlYWU3ZTE7
IC0tZGFya3JlYWRlci1pbmxpbmUtc3Ryb2tlOiMwMDAwMDA7IiBkYXRhLWRhcmtyZWFkZXItaW5s
aW5lLWZpbGw9IiIgZGF0YS1kYXJrcmVhZGVyLWlubGluZS1zdHJva2U9IiI+PC9yZWN0Pjx0ZXh0
IHg9IjUzNC4yMTg3NSIgeT0iNDUiIHN0eWxlPSJmb250LXNpemU6IDE2cHg7IGZvbnQtZmFtaWx5
OiAmcXVvdDtBbmRhbGUgTW9ubyZxdW90OywgbW9ub3NwYWNlOyI+PHRzcGFuIHg9IjUzNC4yMTg3
NSI+VnVsa2FuIEJhY2stZW5kPC90c3Bhbj48L3RleHQ+PC9nPjxnIGNsYXNzPSJhY3RvciI+PHJl
Y3QgeD0iNTI0LjIxODc1IiB5PSIxMDkzLjAxNTYyNSIgd2lkdGg9IjE2NC41IiBoZWlnaHQ9IjM5
IiBzdHJva2U9IiMwMDAwMDAiIGZpbGw9IiNmZmZmZmYiIHN0eWxlPSJzdHJva2Utd2lkdGg6IDI7
IC0tZGFya3JlYWRlci1pbmxpbmUtZmlsbDojZWFlN2UxOyAtLWRhcmtyZWFkZXItaW5saW5lLXN0
cm9rZTojMDAwMDAwOyIgZGF0YS1kYXJrcmVhZGVyLWlubGluZS1maWxsPSIiIGRhdGEtZGFya3Jl
YWRlci1pbmxpbmUtc3Ryb2tlPSIiPjwvcmVjdD48dGV4dCB4PSI1MzQuMjE4NzUiIHk9IjExMTgu
MDE1NjI1IiBzdHlsZT0iZm9udC1zaXplOiAxNnB4OyBmb250LWZhbWlseTogJnF1b3Q7QW5kYWxl
IE1vbm8mcXVvdDssIG1vbm9zcGFjZTsiPjx0c3BhbiB4PSI1MzQuMjE4NzUiPlZ1bGthbiBCYWNr
LWVuZDwvdHNwYW4+PC90ZXh0PjwvZz48bGluZSB4MT0iNjA2LjQ2ODc1IiB4Mj0iNjA2LjQ2ODc1
IiB5MT0iNTkiIHkyPSIxMDkzLjAxNTYyNSIgc3Ryb2tlPSIjMDAwMDAwIiBmaWxsPSJub25lIiBz
dHlsZT0ic3Ryb2tlLXdpZHRoOiAyOyAtLWRhcmtyZWFkZXItaW5saW5lLWZpbGw6bm9uZTsgLS1k
YXJrcmVhZGVyLWlubGluZS1zdHJva2U6IzAwMDAwMDsiIGRhdGEtZGFya3JlYWRlci1pbmxpbmUt
ZmlsbD0iIiBkYXRhLWRhcmtyZWFkZXItaW5saW5lLXN0cm9rZT0iIj48L2xpbmU+PGcgY2xhc3M9
ImFjdG9yIj48cmVjdCB4PSI4MTAuMDQ2ODc1IiB5PSIyMCIgd2lkdGg9IjE3NC41IiBoZWlnaHQ9
IjM5IiBzdHJva2U9IiMwMDAwMDAiIGZpbGw9IiNmZmZmZmYiIHN0eWxlPSJzdHJva2Utd2lkdGg6
IDI7IC0tZGFya3JlYWRlci1pbmxpbmUtZmlsbDojZWFlN2UxOyAtLWRhcmtyZWFkZXItaW5saW5l
LXN0cm9rZTojMDAwMDAwOyIgZGF0YS1kYXJrcmVhZGVyLWlubGluZS1maWxsPSIiIGRhdGEtZGFy
a3JlYWRlci1pbmxpbmUtc3Ryb2tlPSIiPjwvcmVjdD48dGV4dCB4PSI4MjAuMDQ2ODc1IiB5PSI0
NSIgc3R5bGU9ImZvbnQtc2l6ZTogMTZweDsgZm9udC1mYW1pbHk6ICZxdW90O0FuZGFsZSBNb25v
JnF1b3Q7LCBtb25vc3BhY2U7Ij48dHNwYW4geD0iODIwLjA0Njg3NSI+QU5HTEUgVHJhbnNsYXRv
cjwvdHNwYW4+PC90ZXh0PjwvZz48ZyBjbGFzcz0iYWN0b3IiPjxyZWN0IHg9IjgxMC4wNDY4NzUi
IHk9IjEwOTMuMDE1NjI1IiB3aWR0aD0iMTc0LjUiIGhlaWdodD0iMzkiIHN0cm9rZT0iIzAwMDAw
MCIgZmlsbD0iI2ZmZmZmZiIgc3R5bGU9InN0cm9rZS13aWR0aDogMjsgLS1kYXJrcmVhZGVyLWlu
bGluZS1maWxsOiNlYWU3ZTE7IC0tZGFya3JlYWRlci1pbmxpbmUtc3Ryb2tlOiMwMDAwMDA7IiBk
YXRhLWRhcmtyZWFkZXItaW5saW5lLWZpbGw9IiIgZGF0YS1kYXJrcmVhZGVyLWlubGluZS1zdHJv
a2U9IiI+PC9yZWN0Pjx0ZXh0IHg9IjgyMC4wNDY4NzUiIHk9IjExMTguMDE1NjI1IiBzdHlsZT0i
Zm9udC1zaXplOiAxNnB4OyBmb250LWZhbWlseTogJnF1b3Q7QW5kYWxlIE1vbm8mcXVvdDssIG1v
bm9zcGFjZTsiPjx0c3BhbiB4PSI4MjAuMDQ2ODc1Ij5BTkdMRSBUcmFuc2xhdG9yPC90c3Bhbj48
L3RleHQ+PC9nPjxsaW5lIHgxPSI4OTcuMjk2ODc1IiB4Mj0iODk3LjI5Njg3NSIgeTE9IjU5IiB5
Mj0iMTA5My4wMTU2MjUiIHN0cm9rZT0iIzAwMDAwMCIgZmlsbD0ibm9uZSIgc3R5bGU9InN0cm9r
ZS13aWR0aDogMjsgLS1kYXJrcmVhZGVyLWlubGluZS1maWxsOm5vbmU7IC0tZGFya3JlYWRlci1p
bmxpbmUtc3Ryb2tlOiMwMDAwMDA7IiBkYXRhLWRhcmtyZWFkZXItaW5saW5lLWZpbGw9IiIgZGF0
YS1kYXJrcmVhZGVyLWlubGluZS1zdHJva2U9IiI+PC9saW5lPjxnIGNsYXNzPSJhY3RvciI+PHJl
Y3QgeD0iMTAwNC41NDY4NzUiIHk9IjIwIiB3aWR0aD0iMTc0LjUiIGhlaWdodD0iMzkiIHN0cm9r
ZT0iIzAwMDAwMCIgZmlsbD0iI2ZmZmZmZiIgc3R5bGU9InN0cm9rZS13aWR0aDogMjsgLS1kYXJr
cmVhZGVyLWlubGluZS1maWxsOiNlYWU3ZTE7IC0tZGFya3JlYWRlci1pbmxpbmUtc3Ryb2tlOiMw
MDAwMDA7IiBkYXRhLWRhcmtyZWFkZXItaW5saW5lLWZpbGw9IiIgZGF0YS1kYXJrcmVhZGVyLWlu
bGluZS1zdHJva2U9IiI+PC9yZWN0Pjx0ZXh0IHg9IjEwMTQuNTQ2ODc1IiB5PSI0NSIgc3R5bGU9
ImZvbnQtc2l6ZTogMTZweDsgZm9udC1mYW1pbHk6ICZxdW90O0FuZGFsZSBNb25vJnF1b3Q7LCBt
b25vc3BhY2U7Ij48dHNwYW4geD0iMTAxNC41NDY4NzUiPkdsc2xhbmdXcmFwcGVyVms8L3RzcGFu
PjwvdGV4dD48L2c+PGcgY2xhc3M9ImFjdG9yIj48cmVjdCB4PSIxMDA0LjU0Njg3NSIgeT0iMTA5
My4wMTU2MjUiIHdpZHRoPSIxNzQuNSIgaGVpZ2h0PSIzOSIgc3Ryb2tlPSIjMDAwMDAwIiBmaWxs
PSIjZmZmZmZmIiBzdHlsZT0ic3Ryb2tlLXdpZHRoOiAyOyAtLWRhcmtyZWFkZXItaW5saW5lLWZp
bGw6I2VhZTdlMTsgLS1kYXJrcmVhZGVyLWlubGluZS1zdHJva2U6IzAwMDAwMDsiIGRhdGEtZGFy
a3JlYWRlci1pbmxpbmUtZmlsbD0iIiBkYXRhLWRhcmtyZWFkZXItaW5saW5lLXN0cm9rZT0iIj48
L3JlY3Q+PHRleHQgeD0iMTAxNC41NDY4NzUiIHk9IjExMTguMDE1NjI1IiBzdHlsZT0iZm9udC1z
aXplOiAxNnB4OyBmb250LWZhbWlseTogJnF1b3Q7QW5kYWxlIE1vbm8mcXVvdDssIG1vbm9zcGFj
ZTsiPjx0c3BhbiB4PSIxMDE0LjU0Njg3NSI+R2xzbGFuZ1dyYXBwZXJWazwvdHNwYW4+PC90ZXh0
PjwvZz48bGluZSB4MT0iMTA5MS43OTY4NzUiIHgyPSIxMDkxLjc5Njg3NSIgeTE9IjU5IiB5Mj0i
MTA5My4wMTU2MjUiIHN0cm9rZT0iIzAwMDAwMCIgZmlsbD0ibm9uZSIgc3R5bGU9InN0cm9rZS13
aWR0aDogMjsgLS1kYXJrcmVhZGVyLWlubGluZS1maWxsOm5vbmU7IC0tZGFya3JlYWRlci1pbmxp
bmUtc3Ryb2tlOiMwMDAwMDA7IiBkYXRhLWRhcmtyZWFkZXItaW5saW5lLWZpbGw9IiIgZGF0YS1k
YXJrcmVhZGVyLWlubGluZS1zdHJva2U9IiI+PC9saW5lPjxnIGNsYXNzPSJhY3RvciI+PHJlY3Qg
eD0iMTI1Mi41NzgxMjUiIHk9IjIwIiB3aWR0aD0iODcuNDM3NSIgaGVpZ2h0PSIzOSIgc3Ryb2tl
PSIjMDAwMDAwIiBmaWxsPSIjZmZmZmZmIiBzdHlsZT0ic3Ryb2tlLXdpZHRoOiAyOyAtLWRhcmty
ZWFkZXItaW5saW5lLWZpbGw6I2VhZTdlMTsgLS1kYXJrcmVhZGVyLWlubGluZS1zdHJva2U6IzAw
MDAwMDsiIGRhdGEtZGFya3JlYWRlci1pbmxpbmUtZmlsbD0iIiBkYXRhLWRhcmtyZWFkZXItaW5s
aW5lLXN0cm9rZT0iIj48L3JlY3Q+PHRleHQgeD0iMTI2Mi41NzgxMjUiIHk9IjQ1IiBzdHlsZT0i
Zm9udC1zaXplOiAxNnB4OyBmb250LWZhbWlseTogJnF1b3Q7QW5kYWxlIE1vbm8mcXVvdDssIG1v
bm9zcGFjZTsiPjx0c3BhbiB4PSIxMjYyLjU3ODEyNSI+R2xzbGFuZzwvdHNwYW4+PC90ZXh0Pjwv
Zz48ZyBjbGFzcz0iYWN0b3IiPjxyZWN0IHg9IjEyNTIuNTc4MTI1IiB5PSIxMDkzLjAxNTYyNSIg
d2lkdGg9Ijg3LjQzNzUiIGhlaWdodD0iMzkiIHN0cm9rZT0iIzAwMDAwMCIgZmlsbD0iI2ZmZmZm
ZiIgc3R5bGU9InN0cm9rZS13aWR0aDogMjsgLS1kYXJrcmVhZGVyLWlubGluZS1maWxsOiNlYWU3
ZTE7IC0tZGFya3JlYWRlci1pbmxpbmUtc3Ryb2tlOiMwMDAwMDA7IiBkYXRhLWRhcmtyZWFkZXIt
aW5saW5lLWZpbGw9IiIgZGF0YS1kYXJrcmVhZGVyLWlubGluZS1zdHJva2U9IiI+PC9yZWN0Pjx0
ZXh0IHg9IjEyNjIuNTc4MTI1IiB5PSIxMTE4LjAxNTYyNSIgc3R5bGU9ImZvbnQtc2l6ZTogMTZw
eDsgZm9udC1mYW1pbHk6ICZxdW90O0FuZGFsZSBNb25vJnF1b3Q7LCBtb25vc3BhY2U7Ij48dHNw
YW4geD0iMTI2Mi41NzgxMjUiPkdsc2xhbmc8L3RzcGFuPjwvdGV4dD48L2c+PGxpbmUgeDE9IjEy
OTYuMjk2ODc1IiB4Mj0iMTI5Ni4yOTY4NzUiIHkxPSI1OSIgeTI9IjEwOTMuMDE1NjI1IiBzdHJv
a2U9IiMwMDAwMDAiIGZpbGw9Im5vbmUiIHN0eWxlPSJzdHJva2Utd2lkdGg6IDI7IC0tZGFya3Jl
YWRlci1pbmxpbmUtZmlsbDpub25lOyAtLWRhcmtyZWFkZXItaW5saW5lLXN0cm9rZTojMDAwMDAw
OyIgZGF0YS1kYXJrcmVhZGVyLWlubGluZS1maWxsPSIiIGRhdGEtZGFya3JlYWRlci1pbmxpbmUt
c3Ryb2tlPSIiPjwvbGluZT48ZyBjbGFzcz0ic2lnbmFsIj48dGV4dCB4PSI4OC4zNTE1NjI1IiB5
PSI4OS41IiBzdHlsZT0iZm9udC1zaXplOiAxNnB4OyBmb250LWZhbWlseTogJnF1b3Q7QW5kYWxl
IE1vbm8mcXVvdDssIG1vbm9zcGFjZTsiPjx0c3BhbiB4PSI4OC4zNTE1NjI1Ij5nbENvbXBpbGVT
aGFkZXIgKFZTKTwvdHNwYW4+PC90ZXh0PjxsaW5lIHgxPSIzNC40NTMxMjUiIHgyPSIzMzQuOTA2
MjUiIHkxPSI5OCIgeTI9Ijk4IiBzdHJva2U9IiMwMDAwMDAiIGZpbGw9Im5vbmUiIHN0eWxlPSJz
dHJva2Utd2lkdGg6IDI7IG1hcmtlci1lbmQ6IHVybCgmcXVvdDsjbWFya2VyQXJyb3dCbG9jayZx
dW90Oyk7IC0tZGFya3JlYWRlci1pbmxpbmUtZmlsbDpub25lOyAtLWRhcmtyZWFkZXItaW5saW5l
LXN0cm9rZTojMDAwMDAwOyIgZGF0YS1kYXJrcmVhZGVyLWlubGluZS1maWxsPSIiIGRhdGEtZGFy
a3JlYWRlci1pbmxpbmUtc3Ryb2tlPSIiPjwvbGluZT48L2c+PGcgY2xhc3M9InNpZ25hbCI+PHRl
eHQgeD0iMzg4LjgwNDY4NzUiIHk9IjEyOC41IiBzdHlsZT0iZm9udC1zaXplOiAxNnB4OyBmb250
LWZhbWlseTogJnF1b3Q7QW5kYWxlIE1vbm8mcXVvdDssIG1vbm9zcGFjZTsiPjx0c3BhbiB4PSIz
ODguODA0Njg3NSI+U2hhZGVyVms6OmNvbXBpbGU8L3RzcGFuPjwvdGV4dD48bGluZSB4MT0iMzM0
LjkwNjI1IiB4Mj0iNjA2LjQ2ODc1IiB5MT0iMTM3IiB5Mj0iMTM3IiBzdHJva2U9IiMwMDAwMDAi
IGZpbGw9Im5vbmUiIHN0eWxlPSJzdHJva2Utd2lkdGg6IDI7IG1hcmtlci1lbmQ6IHVybCgmcXVv
dDsjbWFya2VyQXJyb3dCbG9jayZxdW90Oyk7IC0tZGFya3JlYWRlci1pbmxpbmUtZmlsbDpub25l
OyAtLWRhcmtyZWFkZXItaW5saW5lLXN0cm9rZTojMDAwMDAwOyIgZGF0YS1kYXJrcmVhZGVyLWlu
bGluZS1maWxsPSIiIGRhdGEtZGFya3JlYWRlci1pbmxpbmUtc3Ryb2tlPSIiPjwvbGluZT48L2c+
PGcgY2xhc3M9InNpZ25hbCI+PHRleHQgeD0iNjk4Ljg5ODQzNzUiIHk9IjE2Ny41IiBzdHlsZT0i
Zm9udC1zaXplOiAxNnB4OyBmb250LWZhbWlseTogJnF1b3Q7QW5kYWxlIE1vbm8mcXVvdDssIG1v
bm9zcGFjZTsiPjx0c3BhbiB4PSI2OTguODk4NDM3NSI+c2g6OkNvbXBpbGU8L3RzcGFuPjwvdGV4
dD48bGluZSB4MT0iNjA2LjQ2ODc1IiB4Mj0iODk3LjI5Njg3NSIgeTE9IjE3NiIgeTI9IjE3NiIg
c3Ryb2tlPSIjMDAwMDAwIiBmaWxsPSJub25lIiBzdHlsZT0ic3Ryb2tlLXdpZHRoOiAyOyBtYXJr
ZXItZW5kOiB1cmwoJnF1b3Q7I21hcmtlckFycm93QmxvY2smcXVvdDspOyAtLWRhcmtyZWFkZXIt
aW5saW5lLWZpbGw6bm9uZTsgLS1kYXJrcmVhZGVyLWlubGluZS1zdHJva2U6IzAwMDAwMDsiIGRh
dGEtZGFya3JlYWRlci1pbmxpbmUtZmlsbD0iIiBkYXRhLWRhcmtyZWFkZXItaW5saW5lLXN0cm9r
ZT0iIj48L2xpbmU+PC9nPjxnIGNsYXNzPSJzaWduYWwiPjx0ZXh0IHg9IjQ3Ni40MjE4NzUiIHk9
IjIwNi41IiBzdHlsZT0iZm9udC1zaXplOiAxNnB4OyBmb250LWZhbWlseTogJnF1b3Q7QW5kYWxl
IE1vbm8mcXVvdDssIG1vbm9zcGFjZTsiPjx0c3BhbiB4PSI0NzYuNDIxODc1Ij5yZXR1cm4gVnVs
a2FuLWNvbXBhdGlibGUgR0xTTDwvdHNwYW4+PC90ZXh0PjxsaW5lIHgxPSI4OTcuMjk2ODc1IiB4
Mj0iMzM0LjkwNjI1IiB5MT0iMjE1IiB5Mj0iMjE1IiBzdHJva2U9IiMwMDAwMDAiIGZpbGw9Im5v
bmUiIHN0eWxlPSJzdHJva2Utd2lkdGg6IDI7IHN0cm9rZS1kYXNoYXJyYXk6IDYsIDI7IG1hcmtl
ci1lbmQ6IHVybCgmcXVvdDsjbWFya2VyQXJyb3dCbG9jayZxdW90Oyk7IC0tZGFya3JlYWRlci1p
bmxpbmUtZmlsbDpub25lOyAtLWRhcmtyZWFkZXItaW5saW5lLXN0cm9rZTojMDAwMDAwOyIgZGF0
YS1kYXJrcmVhZGVyLWlubGluZS1maWxsPSIiIGRhdGEtZGFya3JlYWRlci1pbmxpbmUtc3Ryb2tl
PSIiPjwvbGluZT48L2c+PGcgY2xhc3M9Im5vdGUiPjxyZWN0IHg9IjM1NC45MDYyNSIgeT0iMjM1
IiB3aWR0aD0iMjMxLjU2MjUiIGhlaWdodD0iNjcuNDA2MjUiIHN0cm9rZT0iIzAwMDAwMCIgZmls
bD0iI2ZmZmZmZiIgc3R5bGU9InN0cm9rZS13aWR0aDogMjsgLS1kYXJrcmVhZGVyLWlubGluZS1m
aWxsOiNlYWU3ZTE7IC0tZGFya3JlYWRlci1pbmxpbmUtc3Ryb2tlOiMwMDAwMDA7IiBkYXRhLWRh
cmtyZWFkZXItaW5saW5lLWZpbGw9IiIgZGF0YS1kYXJrcmVhZGVyLWlubGluZS1zdHJva2U9IiI+
PC9yZWN0Pjx0ZXh0IHg9IjM1OS45MDYyNSIgeT0iMjU1IiBzdHlsZT0iZm9udC1zaXplOiAxNnB4
OyBmb250LWZhbWlseTogJnF1b3Q7QW5kYWxlIE1vbm8mcXVvdDssIG1vbm9zcGFjZTsiPjx0c3Bh
biB4PSIzNTkuOTA2MjUiPlNvdXJjZSBpcyB1c2luZyBib2d1czwvdHNwYW4+PHRzcGFuIGR5PSIx
LjJlbSIgeD0iMzU5LjkwNjI1Ij5WdWxrYW4gcXVhbGlmaWVycyB0byBiZTwvdHNwYW4+PHRzcGFu
IGR5PSIxLjJlbSIgeD0iMzU5LjkwNjI1Ij5jb3JyZWN0ZWQgYXQgbGluayB0aW1lLjwvdHNwYW4+
PC90ZXh0PjwvZz48ZyBjbGFzcz0ibm90ZSI+PHJlY3QgeD0iNTQuNDUzMTI1IiB5PSIzMjIuNDA2
MjUiIHdpZHRoPSIyMzEuNTYyNSIgaGVpZ2h0PSIyOSIgc3Ryb2tlPSIjMDAwMDAwIiBmaWxsPSIj
ZmZmZmZmIiBzdHlsZT0ic3Ryb2tlLXdpZHRoOiAyOyAtLWRhcmtyZWFkZXItaW5saW5lLWZpbGw6
I2VhZTdlMTsgLS1kYXJrcmVhZGVyLWlubGluZS1zdHJva2U6IzAwMDAwMDsiIGRhdGEtZGFya3Jl
YWRlci1pbmxpbmUtZmlsbD0iIiBkYXRhLWRhcmtyZWFkZXItaW5saW5lLXN0cm9rZT0iIj48L3Jl
Y3Q+PHRleHQgeD0iNTkuNDUzMTI1IiB5PSIzNDIuNDA2MjUiIHN0eWxlPSJmb250LXNpemU6IDE2
cHg7IGZvbnQtZmFtaWx5OiAmcXVvdDtBbmRhbGUgTW9ubyZxdW90OywgbW9ub3NwYWNlOyI+PHRz
cGFuIHg9IjU5LjQ1MzEyNSI+U2FtZSBmb3IgRlMsIEdTLCBldGMuLi48L3RzcGFuPjwvdGV4dD48
L2c+PGcgY2xhc3M9InNpZ25hbCI+PHRleHQgeD0iODMuNTMxMjUiIHk9IjM4MS45MDYyNSIgc3R5
bGU9ImZvbnQtc2l6ZTogMTZweDsgZm9udC1mYW1pbHk6ICZxdW90O0FuZGFsZSBNb25vJnF1b3Q7
LCBtb25vc3BhY2U7Ij48dHNwYW4geD0iODMuNTMxMjUiPmdsQ3JlYXRlUHJvZ3JhbSAoLi4uKTwv
dHNwYW4+PC90ZXh0PjxsaW5lIHgxPSIzNC40NTMxMjUiIHgyPSIzMzQuOTA2MjUiIHkxPSIzOTAu
NDA2MjUiIHkyPSIzOTAuNDA2MjUiIHN0cm9rZT0iIzAwMDAwMCIgZmlsbD0ibm9uZSIgc3R5bGU9
InN0cm9rZS13aWR0aDogMjsgbWFya2VyLWVuZDogdXJsKCZxdW90OyNtYXJrZXJBcnJvd0Jsb2Nr
JnF1b3Q7KTsgLS1kYXJrcmVhZGVyLWlubGluZS1maWxsOm5vbmU7IC0tZGFya3JlYWRlci1pbmxp
bmUtc3Ryb2tlOiMwMDAwMDA7IiBkYXRhLWRhcmtyZWFkZXItaW5saW5lLWZpbGw9IiIgZGF0YS1k
YXJrcmVhZGVyLWlubGluZS1zdHJva2U9IiI+PC9saW5lPjwvZz48ZyBjbGFzcz0ic2lnbmFsIj48
dGV4dCB4PSI4OC4zNTE1NjI1IiB5PSI0MjAuOTA2MjUiIHN0eWxlPSJmb250LXNpemU6IDE2cHg7
IGZvbnQtZmFtaWx5OiAmcXVvdDtBbmRhbGUgTW9ubyZxdW90OywgbW9ub3NwYWNlOyI+PHRzcGFu
IHg9Ijg4LjM1MTU2MjUiPmdsQXR0YWNoU2hhZGVyICguLi4pPC90c3Bhbj48L3RleHQ+PGxpbmUg
eDE9IjM0LjQ1MzEyNSIgeDI9IjMzNC45MDYyNSIgeTE9IjQyOS40MDYyNSIgeTI9IjQyOS40MDYy
NSIgc3Ryb2tlPSIjMDAwMDAwIiBmaWxsPSJub25lIiBzdHlsZT0ic3Ryb2tlLXdpZHRoOiAyOyBt
YXJrZXItZW5kOiB1cmwoJnF1b3Q7I21hcmtlckFycm93QmxvY2smcXVvdDspOyAtLWRhcmtyZWFk
ZXItaW5saW5lLWZpbGw6bm9uZTsgLS1kYXJrcmVhZGVyLWlubGluZS1zdHJva2U6IzAwMDAwMDsi
IGRhdGEtZGFya3JlYWRlci1pbmxpbmUtZmlsbD0iIiBkYXRhLWRhcmtyZWFkZXItaW5saW5lLXN0
cm9rZT0iIj48L2xpbmU+PC9nPjxnIGNsYXNzPSJzaWduYWwiPjx0ZXh0IHg9IjEyMi4wNjI1IiB5
PSI0NTkuOTA2MjUiIHN0eWxlPSJmb250LXNpemU6IDE2cHg7IGZvbnQtZmFtaWx5OiAmcXVvdDtB
bmRhbGUgTW9ubyZxdW90OywgbW9ub3NwYWNlOyI+PHRzcGFuIHg9IjEyMi4wNjI1Ij5nbExpbmtQ
cm9ncmFtPC90c3Bhbj48L3RleHQ+PGxpbmUgeDE9IjM0LjQ1MzEyNSIgeDI9IjMzNC45MDYyNSIg
eTE9IjQ2OC40MDYyNSIgeTI9IjQ2OC40MDYyNSIgc3Ryb2tlPSIjMDAwMDAwIiBmaWxsPSJub25l
IiBzdHlsZT0ic3Ryb2tlLXdpZHRoOiAyOyBtYXJrZXItZW5kOiB1cmwoJnF1b3Q7I21hcmtlckFy
cm93QmxvY2smcXVvdDspOyAtLWRhcmtyZWFkZXItaW5saW5lLWZpbGw6bm9uZTsgLS1kYXJrcmVh
ZGVyLWlubGluZS1zdHJva2U6IzAwMDAwMDsiIGRhdGEtZGFya3JlYWRlci1pbmxpbmUtZmlsbD0i
IiBkYXRhLWRhcmtyZWFkZXItaW5saW5lLXN0cm9rZT0iIj48L2xpbmU+PC9nPjxnIGNsYXNzPSJz
aWduYWwiPjx0ZXh0IHg9IjM5OC4yNTc4MTI1IiB5PSI0OTguOTA2MjUiIHN0eWxlPSJmb250LXNp
emU6IDE2cHg7IGZvbnQtZmFtaWx5OiAmcXVvdDtBbmRhbGUgTW9ubyZxdW90OywgbW9ub3NwYWNl
OyI+PHRzcGFuIHg9IjM5OC4yNTc4MTI1Ij5Qcm9ncmFtVms6Omxpbms8L3RzcGFuPjwvdGV4dD48
bGluZSB4MT0iMzM0LjkwNjI1IiB4Mj0iNjA2LjQ2ODc1IiB5MT0iNTA3LjQwNjI1IiB5Mj0iNTA3
LjQwNjI1IiBzdHJva2U9IiMwMDAwMDAiIGZpbGw9Im5vbmUiIHN0eWxlPSJzdHJva2Utd2lkdGg6
IDI7IG1hcmtlci1lbmQ6IHVybCgmcXVvdDsjbWFya2VyQXJyb3dCbG9jayZxdW90Oyk7IC0tZGFy
a3JlYWRlci1pbmxpbmUtZmlsbDpub25lOyAtLWRhcmtyZWFkZXItaW5saW5lLXN0cm9rZTojMDAw
MDAwOyIgZGF0YS1kYXJrcmVhZGVyLWlubGluZS1maWxsPSIiIGRhdGEtZGFya3JlYWRlci1pbmxp
bmUtc3Ryb2tlPSIiPjwvbGluZT48L2c+PGcgY2xhc3M9Im5vdGUiPjxyZWN0IHg9IjYyNi40Njg3
NSIgeT0iNTI3LjQwNjI1IiB3aWR0aD0iMjUwLjgyODEyNSIgaGVpZ2h0PSI0OC4yMDMxMjUiIHN0
cm9rZT0iIzAwMDAwMCIgZmlsbD0iI2ZmZmZmZiIgc3R5bGU9InN0cm9rZS13aWR0aDogMjsgLS1k
YXJrcmVhZGVyLWlubGluZS1maWxsOiNlYWU3ZTE7IC0tZGFya3JlYWRlci1pbmxpbmUtc3Ryb2tl
OiMwMDAwMDA7IiBkYXRhLWRhcmtyZWFkZXItaW5saW5lLWZpbGw9IiIgZGF0YS1kYXJrcmVhZGVy
LWlubGluZS1zdHJva2U9IiI+PC9yZWN0Pjx0ZXh0IHg9IjYzMS40Njg3NSIgeT0iNTQ3LjQwNjI1
IiBzdHlsZT0iZm9udC1zaXplOiAxNnB4OyBmb250LWZhbWlseTogJnF1b3Q7QW5kYWxlIE1vbm8m
cXVvdDssIG1vbm9zcGFjZTsiPjx0c3BhbiB4PSI2MzEuNDY4NzUiPlByb2dyYW1WayBpbml0cyB1
bmlmb3Jtcyw8L3RzcGFuPjx0c3BhbiBkeT0iMS4yZW0iIHg9IjYzMS40Njg3NSI+bGF5b3V0cywg
YW5kIGRlc2NyaXB0b3JzLjwvdHNwYW4+PC90ZXh0PjwvZz48ZyBjbGFzcz0ic2lnbmFsIj48dGV4
dCB4PSI2NzUuNzQyMTg3NSIgeT0iNjA2LjEwOTM3NSIgc3R5bGU9ImZvbnQtc2l6ZTogMTZweDsg
Zm9udC1mYW1pbHk6ICZxdW90O0FuZGFsZSBNb25vJnF1b3Q7LCBtb25vc3BhY2U7Ij48dHNwYW4g
eD0iNjc1Ljc0MjE4NzUiPkdsc2xhbmdXcmFwcGVyVms6OkdldFNoYWRlclNwaXJ2Q29kZTwvdHNw
YW4+PC90ZXh0PjxsaW5lIHgxPSI2MDYuNDY4NzUiIHgyPSIxMDkxLjc5Njg3NSIgeTE9IjYxNC42
MDkzNzUiIHkyPSI2MTQuNjA5Mzc1IiBzdHJva2U9IiMwMDAwMDAiIGZpbGw9Im5vbmUiIHN0eWxl
PSJzdHJva2Utd2lkdGg6IDI7IG1hcmtlci1lbmQ6IHVybCgmcXVvdDsjbWFya2VyQXJyb3dCbG9j
ayZxdW90Oyk7IC0tZGFya3JlYWRlci1pbmxpbmUtZmlsbDpub25lOyAtLWRhcmtyZWFkZXItaW5s
aW5lLXN0cm9rZTojMDAwMDAwOyIgZGF0YS1kYXJrcmVhZGVyLWlubGluZS1maWxsPSIiIGRhdGEt
ZGFya3JlYWRlci1pbmxpbmUtc3Ryb2tlPSIiPjwvbGluZT48L2c+PGcgY2xhc3M9InNpZ25hbCI+
PHRleHQgeD0iMTEzNi4yNSIgeT0iNjQ1LjEwOTM3NSIgc3R5bGU9ImZvbnQtc2l6ZTogMTZweDsg
Zm9udC1mYW1pbHk6ICZxdW90O0FuZGFsZSBNb25vJnF1b3Q7LCBtb25vc3BhY2U7Ij48dHNwYW4g
eD0iMTEzNi4yNSI+R2xzbGFuZ1RvU3B2PC90c3Bhbj48L3RleHQ+PGxpbmUgeDE9IjEwOTEuNzk2
ODc1IiB4Mj0iMTI5Ni4yOTY4NzUiIHkxPSI2NTMuNjA5Mzc1IiB5Mj0iNjUzLjYwOTM3NSIgc3Ry
b2tlPSIjMDAwMDAwIiBmaWxsPSJub25lIiBzdHlsZT0ic3Ryb2tlLXdpZHRoOiAyOyBtYXJrZXIt
ZW5kOiB1cmwoJnF1b3Q7I21hcmtlckFycm93QmxvY2smcXVvdDspOyAtLWRhcmtyZWFkZXItaW5s
aW5lLWZpbGw6bm9uZTsgLS1kYXJrcmVhZGVyLWlubGluZS1zdHJva2U6IzAwMDAwMDsiIGRhdGEt
ZGFya3JlYWRlci1pbmxpbmUtZmlsbD0iIiBkYXRhLWRhcmtyZWFkZXItaW5saW5lLXN0cm9rZT0i
Ij48L2xpbmU+PC9nPjxnIGNsYXNzPSJzaWduYWwiPjx0ZXh0IHg9IjExMzEuMjUiIHk9IjY4NC4x
MDkzNzUiIHN0eWxlPSJmb250LXNpemU6IDE2cHg7IGZvbnQtZmFtaWx5OiAmcXVvdDtBbmRhbGUg
TW9ubyZxdW90OywgbW9ub3NwYWNlOyI+PHRzcGFuIHg9IjExMzEuMjUiPlJldHVybiBTUElSLVY8
L3RzcGFuPjwvdGV4dD48bGluZSB4MT0iMTI5Ni4yOTY4NzUiIHgyPSIxMDkxLjc5Njg3NSIgeTE9
IjY5Mi42MDkzNzUiIHkyPSI2OTIuNjA5Mzc1IiBzdHJva2U9IiMwMDAwMDAiIGZpbGw9Im5vbmUi
IHN0eWxlPSJzdHJva2Utd2lkdGg6IDI7IHN0cm9rZS1kYXNoYXJyYXk6IDYsIDI7IG1hcmtlci1l
bmQ6IHVybCgmcXVvdDsjbWFya2VyQXJyb3dCbG9jayZxdW90Oyk7IC0tZGFya3JlYWRlci1pbmxp
bmUtZmlsbDpub25lOyAtLWRhcmtyZWFkZXItaW5saW5lLXN0cm9rZTojMDAwMDAwOyIgZGF0YS1k
YXJrcmVhZGVyLWlubGluZS1maWxsPSIiIGRhdGEtZGFya3JlYWRlci1pbmxpbmUtc3Ryb2tlPSIi
PjwvbGluZT48L2c+PGcgY2xhc3M9Im5vdGUiPjxyZWN0IHg9IjExMTEuNzk2ODc1IiB5PSI3MTIu
NjA5Mzc1IiB3aWR0aD0iMTY0LjUiIGhlaWdodD0iMjkiIHN0cm9rZT0iIzAwMDAwMCIgZmlsbD0i
I2ZmZmZmZiIgc3R5bGU9InN0cm9rZS13aWR0aDogMjsgLS1kYXJrcmVhZGVyLWlubGluZS1maWxs
OiNlYWU3ZTE7IC0tZGFya3JlYWRlci1pbmxpbmUtc3Ryb2tlOiMwMDAwMDA7IiBkYXRhLWRhcmty
ZWFkZXItaW5saW5lLWZpbGw9IiIgZGF0YS1kYXJrcmVhZGVyLWlubGluZS1zdHJva2U9IiI+PC9y
ZWN0Pjx0ZXh0IHg9IjExMTYuNzk2ODc1IiB5PSI3MzIuNjA5Mzc1IiBzdHlsZT0iZm9udC1zaXpl
OiAxNnB4OyBmb250LWZhbWlseTogJnF1b3Q7QW5kYWxlIE1vbm8mcXVvdDssIG1vbm9zcGFjZTsi
Pjx0c3BhbiB4PSIxMTE2Ljc5Njg3NSI+VHJhbnNmb3JtIFNQSVItVjwvdHNwYW4+PC90ZXh0Pjwv
Zz48ZyBjbGFzcz0ic2lnbmFsIj48dGV4dCB4PSI3MjguNTM5MDYyNSIgeT0iNzcyLjEwOTM3NSIg
c3R5bGU9ImZvbnQtc2l6ZTogMTZweDsgZm9udC1mYW1pbHk6ICZxdW90O0FuZGFsZSBNb25vJnF1
b3Q7LCBtb25vc3BhY2U7Ij48dHNwYW4geD0iNzI4LjUzOTA2MjUiPnJldHVybiB0cmFuc2Zvcm1l
ZCBTUElSLVY8L3RzcGFuPjwvdGV4dD48bGluZSB4MT0iMTA5MS43OTY4NzUiIHgyPSI2MDYuNDY4
NzUiIHkxPSI3ODAuNjA5Mzc1IiB5Mj0iNzgwLjYwOTM3NSIgc3Ryb2tlPSIjMDAwMDAwIiBmaWxs
PSJub25lIiBzdHlsZT0ic3Ryb2tlLXdpZHRoOiAyOyBzdHJva2UtZGFzaGFycmF5OiA2LCAyOyBt
YXJrZXItZW5kOiB1cmwoJnF1b3Q7I21hcmtlckFycm93QmxvY2smcXVvdDspOyAtLWRhcmtyZWFk
ZXItaW5saW5lLWZpbGw6bm9uZTsgLS1kYXJrcmVhZGVyLWlubGluZS1zdHJva2U6IzAwMDAwMDsi
IGRhdGEtZGFya3JlYWRlci1pbmxpbmUtZmlsbD0iIiBkYXRhLWRhcmtyZWFkZXItaW5saW5lLXN0
cm9rZT0iIj48L2xpbmU+PC9nPjxnIGNsYXNzPSJzaWduYWwiPjx0ZXh0IHg9IjQwMy4yNTc4MTI1
IiB5PSI4MTEuMTA5Mzc1IiBzdHlsZT0iZm9udC1zaXplOiAxNnB4OyBmb250LWZhbWlseTogJnF1
b3Q7QW5kYWxlIE1vbm8mcXVvdDssIG1vbm9zcGFjZTsiPjx0c3BhbiB4PSI0MDMuMjU3ODEyNSI+
cmV0dXJuIHN1Y2Nlc3M8L3RzcGFuPjwvdGV4dD48bGluZSB4MT0iNjA2LjQ2ODc1IiB4Mj0iMzM0
LjkwNjI1IiB5MT0iODE5LjYwOTM3NSIgeTI9IjgxOS42MDkzNzUiIHN0cm9rZT0iIzAwMDAwMCIg
ZmlsbD0ibm9uZSIgc3R5bGU9InN0cm9rZS13aWR0aDogMjsgc3Ryb2tlLWRhc2hhcnJheTogNiwg
MjsgbWFya2VyLWVuZDogdXJsKCZxdW90OyNtYXJrZXJBcnJvd0Jsb2NrJnF1b3Q7KTsgLS1kYXJr
cmVhZGVyLWlubGluZS1maWxsOm5vbmU7IC0tZGFya3JlYWRlci1pbmxpbmUtc3Ryb2tlOiMwMDAw
MDA7IiBkYXRhLWRhcmtyZWFkZXItaW5saW5lLWZpbGw9IiIgZGF0YS1kYXJrcmVhZGVyLWlubGlu
ZS1zdHJva2U9IiI+PC9saW5lPjwvZz48ZyBjbGFzcz0ibm90ZSI+PHJlY3QgeD0iNTQuNDUzMTI1
IiB5PSI4MzkuNjA5Mzc1IiB3aWR0aD0iMjYwLjQ1MzEyNSIgaGVpZ2h0PSIyOSIgc3Ryb2tlPSIj
MDAwMDAwIiBmaWxsPSIjZmZmZmZmIiBzdHlsZT0ic3Ryb2tlLXdpZHRoOiAyOyAtLWRhcmtyZWFk
ZXItaW5saW5lLWZpbGw6I2VhZTdlMTsgLS1kYXJrcmVhZGVyLWlubGluZS1zdHJva2U6IzAwMDAw
MDsiIGRhdGEtZGFya3JlYWRlci1pbmxpbmUtZmlsbD0iIiBkYXRhLWRhcmtyZWFkZXItaW5saW5l
LXN0cm9rZT0iIj48L3JlY3Q+PHRleHQgeD0iNTkuNDUzMTI1IiB5PSI4NTkuNjA5Mzc1IiBzdHls
ZT0iZm9udC1zaXplOiAxNnB4OyBmb250LWZhbWlseTogJnF1b3Q7QW5kYWxlIE1vbm8mcXVvdDss
IG1vbm9zcGFjZTsiPjx0c3BhbiB4PSI1OS40NTMxMjUiPkFwcCBleGVjdXRpb24gY29udGludWVz
Li4uPC90c3Bhbj48L3RleHQ+PC9nPjxnIGNsYXNzPSJzaWduYWwiPjx0ZXh0IHg9IjczLjg5ODQz
NzUiIHk9Ijg5OS4xMDkzNzUiIHN0eWxlPSJmb250LXNpemU6IDE2cHg7IGZvbnQtZmFtaWx5OiAm
cXVvdDtBbmRhbGUgTW9ubyZxdW90OywgbW9ub3NwYWNlOyI+PHRzcGFuIHg9IjczLjg5ODQzNzUi
PmdsRHJhd0FycmF5cyAoYW55IGRyYXcpPC90c3Bhbj48L3RleHQ+PGxpbmUgeDE9IjM0LjQ1MzEy
NSIgeDI9IjMzNC45MDYyNSIgeTE9IjkwNy42MDkzNzUiIHkyPSI5MDcuNjA5Mzc1IiBzdHJva2U9
IiMwMDAwMDAiIGZpbGw9Im5vbmUiIHN0eWxlPSJzdHJva2Utd2lkdGg6IDI7IG1hcmtlci1lbmQ6
IHVybCgmcXVvdDsjbWFya2VyQXJyb3dCbG9jayZxdW90Oyk7IC0tZGFya3JlYWRlci1pbmxpbmUt
ZmlsbDpub25lOyAtLWRhcmtyZWFkZXItaW5saW5lLXN0cm9rZTojMDAwMDAwOyIgZGF0YS1kYXJr
cmVhZGVyLWlubGluZS1maWxsPSIiIGRhdGEtZGFya3JlYWRlci1pbmxpbmUtc3Ryb2tlPSIiPjwv
bGluZT48L2c+PGcgY2xhc3M9InNpZ25hbCI+PHRleHQgeD0iMzY5LjUzOTA2MjUiIHk9IjkzOC4x
MDkzNzUiIHN0eWxlPSJmb250LXNpemU6IDE2cHg7IGZvbnQtZmFtaWx5OiAmcXVvdDtBbmRhbGUg
TW9ubyZxdW90OywgbW9ub3NwYWNlOyI+PHRzcGFuIHg9IjM2OS41MzkwNjI1Ij5Db250ZXh0Vms6
OmRyYXdBcnJheXM8L3RzcGFuPjwvdGV4dD48bGluZSB4MT0iMzM0LjkwNjI1IiB4Mj0iNjA2LjQ2
ODc1IiB5MT0iOTQ2LjYwOTM3NSIgeTI9Ijk0Ni42MDkzNzUiIHN0cm9rZT0iIzAwMDAwMCIgZmls
bD0ibm9uZSIgc3R5bGU9InN0cm9rZS13aWR0aDogMjsgbWFya2VyLWVuZDogdXJsKCZxdW90OyNt
YXJrZXJBcnJvd0Jsb2NrJnF1b3Q7KTsgLS1kYXJrcmVhZGVyLWlubGluZS1maWxsOm5vbmU7IC0t
ZGFya3JlYWRlci1pbmxpbmUtc3Ryb2tlOiMwMDAwMDA7IiBkYXRhLWRhcmtyZWFkZXItaW5saW5l
LWZpbGw9IiIgZGF0YS1kYXJrcmVhZGVyLWlubGluZS1zdHJva2U9IiI+PC9saW5lPjwvZz48ZyBj
bGFzcz0ibm90ZSI+PHJlY3QgeD0iNjI2LjQ2ODc1IiB5PSI5NjYuNjA5Mzc1IiB3aWR0aD0iMjMx
LjU2MjUiIGhlaWdodD0iNjcuNDA2MjUiIHN0cm9rZT0iIzAwMDAwMCIgZmlsbD0iI2ZmZmZmZiIg
c3R5bGU9InN0cm9rZS13aWR0aDogMjsgLS1kYXJrcmVhZGVyLWlubGluZS1maWxsOiNlYWU3ZTE7
IC0tZGFya3JlYWRlci1pbmxpbmUtc3Ryb2tlOiMwMDAwMDA7IiBkYXRhLWRhcmtyZWFkZXItaW5s
aW5lLWZpbGw9IiIgZGF0YS1kYXJrcmVhZGVyLWlubGluZS1zdHJva2U9IiI+PC9yZWN0Pjx0ZXh0
IHg9IjYzMS40Njg3NSIgeT0iOTg2LjYwOTM3NSIgc3R5bGU9ImZvbnQtc2l6ZTogMTZweDsgZm9u
dC1mYW1pbHk6ICZxdW90O0FuZGFsZSBNb25vJnF1b3Q7LCBtb25vc3BhY2U7Ij48dHNwYW4geD0i
NjMxLjQ2ODc1Ij5XZSBpbml0IFZrU2hhZGVyTW9kdWxlczwvdHNwYW4+PHRzcGFuIGR5PSIxLjJl
bSIgeD0iNjMxLjQ2ODc1Ij5hbmQgVmtQaXBlbGluZSB0aGVuPC90c3Bhbj48dHNwYW4gZHk9IjEu
MmVtIiB4PSI2MzEuNDY4NzUiPnJlY29yZCB0aGUgZHJhdy48L3RzcGFuPjwvdGV4dD48L2c+PGcg
Y2xhc3M9InNpZ25hbCI+PHRleHQgeD0iNDAzLjI1NzgxMjUiIHk9IjEwNjQuNTE1NjI1IiBzdHls
ZT0iZm9udC1zaXplOiAxNnB4OyBmb250LWZhbWlseTogJnF1b3Q7QW5kYWxlIE1vbm8mcXVvdDss
IG1vbm9zcGFjZTsiPjx0c3BhbiB4PSI0MDMuMjU3ODEyNSI+cmV0dXJuIHN1Y2Nlc3M8L3RzcGFu
PjwvdGV4dD48bGluZSB4MT0iNjA2LjQ2ODc1IiB4Mj0iMzM0LjkwNjI1IiB5MT0iMTA3My4wMTU2
MjUiIHkyPSIxMDczLjAxNTYyNSIgc3Ryb2tlPSIjMDAwMDAwIiBmaWxsPSJub25lIiBzdHlsZT0i
c3Ryb2tlLXdpZHRoOiAyOyBzdHJva2UtZGFzaGFycmF5OiA2LCAyOyBtYXJrZXItZW5kOiB1cmwo
JnF1b3Q7I21hcmtlckFycm93QmxvY2smcXVvdDspOyAtLWRhcmtyZWFkZXItaW5saW5lLWZpbGw6
bm9uZTsgLS1kYXJrcmVhZGVyLWlubGluZS1zdHJva2U6IzAwMDAwMDsiIGRhdGEtZGFya3JlYWRl
ci1pbmxpbmUtZmlsbD0iIiBkYXRhLWRhcmtyZWFkZXItaW5saW5lLXN0cm9rZT0iIj48L2xpbmU+
PC9nPjwvc3ZnPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKK11dPjwvc291cmNlPjxkZXNj
PjwvZGVzYz48ZGVmcz48bWFya2VyIHZpZXdCb3g9IjAgMCA1IDUiIG1hcmtlcldpZHRoPSI1IiBt
YXJrZXJIZWlnaHQ9IjUiIG9yaWVudD0iYXV0byIgcmVmWD0iNSIgcmVmWT0iMi41IiBpZD0ibWFy
a2VyQXJyb3dCbG9jayI+PHBhdGggZD0iTSAwIDAgTCA1IDIuNSBMIDAgNSB6Ij48L3BhdGg+PC9t
YXJrZXI+PG1hcmtlciB2aWV3Qm94PSIwIDAgOS42IDE2IiBtYXJrZXJXaWR0aD0iNCIgbWFya2Vy
SGVpZ2h0PSIxNiIgb3JpZW50PSJhdXRvIiByZWZYPSI5LjYiIHJlZlk9IjgiIGlkPSJtYXJrZXJB
cnJvd09wZW4iPjxwYXRoIGQ9Ik0gOS42LDggMS45MiwxNiAwLDEzLjcgNS43Niw4IDAsMi4yODYg
MS45MiwwIDkuNiw4IHoiPjwvcGF0aD48L21hcmtlcj48L2RlZnM+PGcgY2xhc3M9InRpdGxlIj48
L2c+PGcgY2xhc3M9ImFjdG9yIj48cmVjdCB4PSIxMCIgeT0iMjAiIHdpZHRoPSI0OC44MDcyMjgw
ODgzNzg5MDYiIGhlaWdodD0iMzguNTA2MDIzNDA2OTgyNDIiIHN0cm9rZT0iIzAwMDAwMCIgZmls
bD0iI2ZmZmZmZiIgc3R5bGU9InN0cm9rZS13aWR0aDogMjsiPjwvcmVjdD48dGV4dCB4PSIyMCIg
eT0iNDQuNjUwNjAyMzQwNjk4MjQiIHN0eWxlPSJmb250LXNpemU6IDE2cHg7IGZvbnQtZmFtaWx5
OiAmcXVvdDtBbmRhbGUgTW9ubyZxdW90OywgbW9ub3NwYWNlOyI+PHRzcGFuIHg9IjIwIj5BcHA8
L3RzcGFuPjwvdGV4dD48L2c+PGcgY2xhc3M9ImFjdG9yIj48cmVjdCB4PSIxMCIgeT0iMTAzMy4x
MzI1MjYzOTc3MDUiIHdpZHRoPSI0OC44MDcyMjgwODgzNzg5MDYiIGhlaWdodD0iMzguNTA2MDIz
NDA2OTgyNDIiIHN0cm9rZT0iIzAwMDAwMCIgZmlsbD0iI2ZmZmZmZiIgc3R5bGU9InN0cm9rZS13
aWR0aDogMjsiPjwvcmVjdD48dGV4dCB4PSIyMCIgeT0iMTA1Ny43ODMxMjg3Mzg0MDMzIiBzdHls
ZT0iZm9udC1zaXplOiAxNnB4OyBmb250LWZhbWlseTogJnF1b3Q7QW5kYWxlIE1vbm8mcXVvdDss
IG1vbm9zcGFjZTsiPjx0c3BhbiB4PSIyMCI+QXBwPC90c3Bhbj48L3RleHQ+PC9nPjxsaW5lIHgx
PSIzNC40MDM2MTQwNDQxODk0NSIgeDI9IjM0LjQwMzYxNDA0NDE4OTQ1IiB5MT0iNTguNTA2MDIz
NDA2OTgyNDIiIHkyPSIxMDMzLjEzMjUyNjM5NzcwNSIgc3Ryb2tlPSIjMDAwMDAwIiBmaWxsPSJu
b25lIiBzdHlsZT0ic3Ryb2tlLXdpZHRoOiAyOyI+PC9saW5lPjxnIGNsYXNzPSJhY3RvciI+PHJl
Y3QgeD0iMjUyLjA0MjE1NjIxOTQ4MjQyIiB5PSIyMCIgd2lkdGg9IjE2NC4wMjQwOTM2Mjc5Mjk3
IiBoZWlnaHQ9IjM4LjUwNjAyMzQwNjk4MjQyIiBzdHJva2U9IiMwMDAwMDAiIGZpbGw9IiNmZmZm
ZmYiIHN0eWxlPSJzdHJva2Utd2lkdGg6IDI7Ij48L3JlY3Q+PHRleHQgeD0iMjYyLjA0MjE1NjIx
OTQ4MjQiIHk9IjQ0LjY1MDYwMjM0MDY5ODI0IiBzdHlsZT0iZm9udC1zaXplOiAxNnB4OyBmb250
LWZhbWlseTogJnF1b3Q7QW5kYWxlIE1vbm8mcXVvdDssIG1vbm9zcGFjZTsiPjx0c3BhbiB4PSIy
NjIuMDQyMTU2MjE5NDgyNCI+QU5HTEUgRnJvbnQtZW5kPC90c3Bhbj48L3RleHQ+PC9nPjxnIGNs
YXNzPSJhY3RvciI+PHJlY3QgeD0iMjUyLjA0MjE1NjIxOTQ4MjQyIiB5PSIxMDMzLjEzMjUyNjM5
NzcwNSIgd2lkdGg9IjE2NC4wMjQwOTM2Mjc5Mjk3IiBoZWlnaHQ9IjM4LjUwNjAyMzQwNjk4MjQy
IiBzdHJva2U9IiMwMDAwMDAiIGZpbGw9IiNmZmZmZmYiIHN0eWxlPSJzdHJva2Utd2lkdGg6IDI7
Ij48L3JlY3Q+PHRleHQgeD0iMjYyLjA0MjE1NjIxOTQ4MjQiIHk9IjEwNTcuNzgzMTI4NzM4NDAz
MyIgc3R5bGU9ImZvbnQtc2l6ZTogMTZweDsgZm9udC1mYW1pbHk6ICZxdW90O0FuZGFsZSBNb25v
JnF1b3Q7LCBtb25vc3BhY2U7Ij48dHNwYW4geD0iMjYyLjA0MjE1NjIxOTQ4MjQiPkFOR0xFIEZy
b250LWVuZDwvdHNwYW4+PC90ZXh0PjwvZz48bGluZSB4MT0iMzM0LjA1NDIwMzAzMzQ0NzI3IiB4
Mj0iMzM0LjA1NDIwMzAzMzQ0NzI3IiB5MT0iNTguNTA2MDIzNDA2OTgyNDIiIHkyPSIxMDMzLjEz
MjUyNjM5NzcwNSIgc3Ryb2tlPSIjMDAwMDAwIiBmaWxsPSJub25lIiBzdHlsZT0ic3Ryb2tlLXdp
ZHRoOiAyOyI+PC9saW5lPjxnIGNsYXNzPSJhY3RvciI+PHJlY3QgeD0iNTIyLjg4NTUyNDc0OTc1
NTkiIHk9IjIwIiB3aWR0aD0iMTY0LjAyNDA5MzYyNzkyOTciIGhlaWdodD0iMzguNTA2MDIzNDA2
OTgyNDIiIHN0cm9rZT0iIzAwMDAwMCIgZmlsbD0iI2ZmZmZmZiIgc3R5bGU9InN0cm9rZS13aWR0
aDogMjsiPjwvcmVjdD48dGV4dCB4PSI1MzIuODg1NTI0NzQ5NzU1OSIgeT0iNDQuNjUwNjAyMzQw
Njk4MjQiIHN0eWxlPSJmb250LXNpemU6IDE2cHg7IGZvbnQtZmFtaWx5OiAmcXVvdDtBbmRhbGUg
TW9ubyZxdW90OywgbW9ub3NwYWNlOyI+PHRzcGFuIHg9IjUzMi44ODU1MjQ3NDk3NTU5Ij5WdWxr
YW4gQmFjay1lbmQ8L3RzcGFuPjwvdGV4dD48L2c+PGcgY2xhc3M9ImFjdG9yIj48cmVjdCB4PSI1
MjIuODg1NTI0NzQ5NzU1OSIgeT0iMTAzMy4xMzI1MjYzOTc3MDUiIHdpZHRoPSIxNjQuMDI0MDkz
NjI3OTI5NyIgaGVpZ2h0PSIzOC41MDYwMjM0MDY5ODI0MiIgc3Ryb2tlPSIjMDAwMDAwIiBmaWxs
PSIjZmZmZmZmIiBzdHlsZT0ic3Ryb2tlLXdpZHRoOiAyOyI+PC9yZWN0Pjx0ZXh0IHg9IjUzMi44
ODU1MjQ3NDk3NTU5IiB5PSIxMDU3Ljc4MzEyODczODQwMzMiIHN0eWxlPSJmb250LXNpemU6IDE2
cHg7IGZvbnQtZmFtaWx5OiAmcXVvdDtBbmRhbGUgTW9ubyZxdW90OywgbW9ub3NwYWNlOyI+PHRz
cGFuIHg9IjUzMi44ODU1MjQ3NDk3NTU5Ij5WdWxrYW4gQmFjay1lbmQ8L3RzcGFuPjwvdGV4dD48
L2c+PGxpbmUgeDE9IjYwNC44OTc1NzE1NjM3MjA3IiB4Mj0iNjA0Ljg5NzU3MTU2MzcyMDciIHkx
PSI1OC41MDYwMjM0MDY5ODI0MiIgeTI9IjEwMzMuMTMyNTI2Mzk3NzA1IiBzdHJva2U9IiMwMDAw
MDAiIGZpbGw9Im5vbmUiIHN0eWxlPSJzdHJva2Utd2lkdGg6IDI7Ij48L2xpbmU+PGcgY2xhc3M9
ImFjdG9yIj48cmVjdCB4PSI4MDguMTMyNTExMTM4OTE2IiB5PSIyMCIgd2lkdGg9IjE3My42MjY0
OTUzNjEzMjgxMiIgaGVpZ2h0PSIzOC41MDYwMjM0MDY5ODI0MiIgc3Ryb2tlPSIjMDAwMDAwIiBm
aWxsPSIjZmZmZmZmIiBzdHlsZT0ic3Ryb2tlLXdpZHRoOiAyOyI+PC9yZWN0Pjx0ZXh0IHg9Ijgx
OC4xMzI1MTExMzg5MTYiIHk9IjQ0LjY1MDYwMjM0MDY5ODI0IiBzdHlsZT0iZm9udC1zaXplOiAx
NnB4OyBmb250LWZhbWlseTogJnF1b3Q7QW5kYWxlIE1vbm8mcXVvdDssIG1vbm9zcGFjZTsiPjx0
c3BhbiB4PSI4MTguMTMyNTExMTM4OTE2Ij5BTkdMRSBUcmFuc2xhdG9yPC90c3Bhbj48L3RleHQ+
PC9nPjxnIGNsYXNzPSJhY3RvciI+PHJlY3QgeD0iODA4LjEzMjUxMTEzODkxNiIgeT0iMTAzMy4x
MzI1MjYzOTc3MDUiIHdpZHRoPSIxNzMuNjI2NDk1MzYxMzI4MTIiIGhlaWdodD0iMzguNTA2MDIz
NDA2OTgyNDIiIHN0cm9rZT0iIzAwMDAwMCIgZmlsbD0iI2ZmZmZmZiIgc3R5bGU9InN0cm9rZS13
aWR0aDogMjsiPjwvcmVjdD48dGV4dCB4PSI4MTguMTMyNTExMTM4OTE2IiB5PSIxMDU3Ljc4MzEy
ODczODQwMzMiIHN0eWxlPSJmb250LXNpemU6IDE2cHg7IGZvbnQtZmFtaWx5OiAmcXVvdDtBbmRh
bGUgTW9ubyZxdW90OywgbW9ub3NwYWNlOyI+PHRzcGFuIHg9IjgxOC4xMzI1MTExMzg5MTYiPkFO
R0xFIFRyYW5zbGF0b3I8L3RzcGFuPjwvdGV4dD48L2c+PGxpbmUgeDE9Ijg5NC45NDU3NTg4MTk1
ODAxIiB4Mj0iODk0Ljk0NTc1ODgxOTU4MDEiIHkxPSI1OC41MDYwMjM0MDY5ODI0MiIgeTI9IjEw
MzMuMTMyNTI2Mzk3NzA1IiBzdHJva2U9IiMwMDAwMDAiIGZpbGw9Im5vbmUiIHN0eWxlPSJzdHJv
a2Utd2lkdGg6IDI7Ij48L2xpbmU+PGcgY2xhc3M9ImFjdG9yIj48cmVjdCB4PSIxMDAxLjc1OTAw
NjUwMDI0NDEiIHk9IjIwIiB3aWR0aD0iMjg4Ljg1NTQwNzcxNDg0Mzc1IiBoZWlnaHQ9IjM4LjUw
NjAyMzQwNjk4MjQyIiBzdHJva2U9IiMwMDAwMDAiIGZpbGw9IiNmZmZmZmYiIHN0eWxlPSJzdHJv
a2Utd2lkdGg6IDI7Ij48L3JlY3Q+PHRleHQgeD0iMTAxMS43NTkwMDY1MDAyNDQxIiB5PSI0NC42
NTA2MDIzNDA2OTgyNCIgc3R5bGU9ImZvbnQtc2l6ZTogMTZweDsgZm9udC1mYW1pbHk6ICZxdW90
O0FuZGFsZSBNb25vJnF1b3Q7LCBtb25vc3BhY2U7Ij48dHNwYW4geD0iMTAxMS43NTkwMDY1MDAy
NDQxIj5MaW5rLVRpbWUgU1BJUi1WIFRyYW5zZm9ybWVyPC90c3Bhbj48L3RleHQ+PC9nPjxnIGNs
YXNzPSJhY3RvciI+PHJlY3QgeD0iMTAwMS43NTkwMDY1MDAyNDQxIiB5PSIxMDMzLjEzMjUyNjM5
NzcwNSIgd2lkdGg9IjI4OC44NTU0MDc3MTQ4NDM3NSIgaGVpZ2h0PSIzOC41MDYwMjM0MDY5ODI0
MiIgc3Ryb2tlPSIjMDAwMDAwIiBmaWxsPSIjZmZmZmZmIiBzdHlsZT0ic3Ryb2tlLXdpZHRoOiAy
OyI+PC9yZWN0Pjx0ZXh0IHg9IjEwMTEuNzU5MDA2NTAwMjQ0MSIgeT0iMTA1Ny43ODMxMjg3Mzg0
MDMzIiBzdHlsZT0iZm9udC1zaXplOiAxNnB4OyBmb250LWZhbWlseTogJnF1b3Q7QW5kYWxlIE1v
bm8mcXVvdDssIG1vbm9zcGFjZTsiPjx0c3BhbiB4PSIxMDExLjc1OTAwNjUwMDI0NDEiPkxpbmst
VGltZSBTUElSLVYgVHJhbnNmb3JtZXI8L3RzcGFuPjwvdGV4dD48L2c+PGxpbmUgeDE9IjExNDYu
MTg2NzEwMzU3NjY2IiB4Mj0iMTE0Ni4xODY3MTAzNTc2NjYiIHkxPSI1OC41MDYwMjM0MDY5ODI0
MiIgeTI9IjEwMzMuMTMyNTI2Mzk3NzA1IiBzdHJva2U9IiMwMDAwMDAiIGZpbGw9Im5vbmUiIHN0
eWxlPSJzdHJva2Utd2lkdGg6IDI7Ij48L2xpbmU+PGcgY2xhc3M9InNpZ25hbCI+PHRleHQgeD0i
ODguMjEwODQyMTMyNTY4MzYiIHk9Ijg4LjkwMzYxNDA0NDE4OTQ1IiBzdHlsZT0iZm9udC1zaXpl
OiAxNnB4OyBmb250LWZhbWlseTogJnF1b3Q7QW5kYWxlIE1vbm8mcXVvdDssIG1vbm9zcGFjZTsi
Pjx0c3BhbiB4PSI4OC4yMTA4NDIxMzI1NjgzNiI+Z2xDb21waWxlU2hhZGVyIChWUyk8L3RzcGFu
PjwvdGV4dD48bGluZSB4MT0iMzQuNDAzNjE0MDQ0MTg5NDUiIHgyPSIzMzQuMDU0MjAzMDMzNDQ3
MjciIHkxPSI5Ny4wMTIwNDY4MTM5NjQ4NCIgeTI9Ijk3LjAxMjA0NjgxMzk2NDg0IiBzdHJva2U9
IiMwMDAwMDAiIGZpbGw9Im5vbmUiIHN0eWxlPSJzdHJva2Utd2lkdGg6IDI7IG1hcmtlci1lbmQ6
IHVybCgmcXVvdDsjbWFya2VyQXJyb3dCbG9jayZxdW90Oyk7Ij48L2xpbmU+PC9nPjxnIGNsYXNz
PSJzaWduYWwiPjx0ZXh0IHg9IjM4Ny44NjE0MzExMjE4MjYyIiB5PSIxMjcuNDA5NjM3NDUxMTcx
ODgiIHN0eWxlPSJmb250LXNpemU6IDE2cHg7IGZvbnQtZmFtaWx5OiAmcXVvdDtBbmRhbGUgTW9u
byZxdW90OywgbW9ub3NwYWNlOyI+PHRzcGFuIHg9IjM4Ny44NjE0MzExMjE4MjYyIj5TaGFkZXJW
azo6Y29tcGlsZTwvdHNwYW4+PC90ZXh0PjxsaW5lIHgxPSIzMzQuMDU0MjAzMDMzNDQ3MjciIHgy
PSI2MDQuODk3NTcxNTYzNzIwNyIgeTE9IjEzNS41MTgwNzAyMjA5NDcyNyIgeTI9IjEzNS41MTgw
NzAyMjA5NDcyNyIgc3Ryb2tlPSIjMDAwMDAwIiBmaWxsPSJub25lIiBzdHlsZT0ic3Ryb2tlLXdp
ZHRoOiAyOyBtYXJrZXItZW5kOiB1cmwoJnF1b3Q7I21hcmtlckFycm93QmxvY2smcXVvdDspOyI+
PC9saW5lPjwvZz48ZyBjbGFzcz0ic2lnbmFsIj48dGV4dCB4PSI2OTcuMTA4NDEzNjk2Mjg5MSIg
eT0iMTY1LjkxNTY2MDg1ODE1NDMiIHN0eWxlPSJmb250LXNpemU6IDE2cHg7IGZvbnQtZmFtaWx5
OiAmcXVvdDtBbmRhbGUgTW9ubyZxdW90OywgbW9ub3NwYWNlOyI+PHRzcGFuIHg9IjY5Ny4xMDg0
MTM2OTYyODkxIj5zaDo6Q29tcGlsZTwvdHNwYW4+PC90ZXh0PjxsaW5lIHgxPSI2MDQuODk3NTcx
NTYzNzIwNyIgeDI9Ijg5NC45NDU3NTg4MTk1ODAxIiB5MT0iMTc0LjAyNDA5MzYyNzkyOTciIHky
PSIxNzQuMDI0MDkzNjI3OTI5NyIgc3Ryb2tlPSIjMDAwMDAwIiBmaWxsPSJub25lIiBzdHlsZT0i
c3Ryb2tlLXdpZHRoOiAyOyBtYXJrZXItZW5kOiB1cmwoJnF1b3Q7I21hcmtlckFycm93QmxvY2sm
cXVvdDspOyI+PC9saW5lPjwvZz48ZyBjbGFzcz0ic2lnbmFsIj48dGV4dCB4PSI1NTIuMDg0MzIw
MDY4MzU5NCIgeT0iMjA0LjQyMTY4NDI2NTEzNjcyIiBzdHlsZT0iZm9udC1zaXplOiAxNnB4OyBm
b250LWZhbWlseTogJnF1b3Q7QW5kYWxlIE1vbm8mcXVvdDssIG1vbm9zcGFjZTsiPjx0c3BhbiB4
PSI1NTIuMDg0MzIwMDY4MzU5NCI+cmV0dXJuIFNQSVItVjwvdHNwYW4+PC90ZXh0PjxsaW5lIHgx
PSI4OTQuOTQ1NzU4ODE5NTgwMSIgeDI9IjMzNC4wNTQyMDMwMzM0NDcyNyIgeTE9IjIxMi41MzAx
MTcwMzQ5MTIxIiB5Mj0iMjEyLjUzMDExNzAzNDkxMjEiIHN0cm9rZT0iIzAwMDAwMCIgZmlsbD0i
bm9uZSIgc3R5bGU9InN0cm9rZS13aWR0aDogMjsgc3Ryb2tlLWRhc2hhcnJheTogNiwgMjsgbWFy
a2VyLWVuZDogdXJsKCZxdW90OyNtYXJrZXJBcnJvd0Jsb2NrJnF1b3Q7KTsiPjwvbGluZT48L2c+
PGcgY2xhc3M9Im5vdGUiPjxyZWN0IHg9IjM1NC4wNTQyMDMwMzM0NDcyNyIgeT0iMjMyLjUzMDEx
NzAzNDkxMjEiIHdpZHRoPSIyMzAuODQzMzY4NTMwMjczNDQiIGhlaWdodD0iNjYuOTA2MDI4NzQ3
NTU4NiIgc3Ryb2tlPSIjMDAwMDAwIiBmaWxsPSIjZmZmZmZmIiBzdHlsZT0ic3Ryb2tlLXdpZHRo
OiAyOyI+PC9yZWN0Pjx0ZXh0IHg9IjM1OS4wNTQyMDMwMzM0NDcyNyIgeT0iMjUyLjE4MDcxOTM3
NTYxMDM1IiBzdHlsZT0iZm9udC1zaXplOiAxNnB4OyBmb250LWZhbWlseTogJnF1b3Q7QW5kYWxl
IE1vbm8mcXVvdDssIG1vbm9zcGFjZTsiPjx0c3BhbiB4PSIzNTkuMDU0MjAzMDMzNDQ3MjciPlNQ
SVItViBpcyB1c2luZyBib2d1czwvdHNwYW4+PHRzcGFuIGR5PSIxLjJlbSIgeD0iMzU5LjA1NDIw
MzAzMzQ0NzI3Ij5kZWNvcmF0aW9ucyB0byBiZTwvdHNwYW4+PHRzcGFuIGR5PSIxLjJlbSIgeD0i
MzU5LjA1NDIwMzAzMzQ0NzI3Ij5jb3JyZWN0ZWQgYXQgbGluayB0aW1lLjwvdHNwYW4+PC90ZXh0
PjwvZz48ZyBjbGFzcz0ibm90ZSI+PHJlY3QgeD0iNTQuNDAzNjE0MDQ0MTg5NDUiIHk9IjMxOS40
MzYxNDU3ODI0NzA3IiB3aWR0aD0iMjMwLjg0MzM2ODUzMDI3MzQ0IiBoZWlnaHQ9IjI4LjUwNjAy
MzQwNjk4MjQyMiIgc3Ryb2tlPSIjMDAwMDAwIiBmaWxsPSIjZmZmZmZmIiBzdHlsZT0ic3Ryb2tl
LXdpZHRoOiAyOyI+PC9yZWN0Pjx0ZXh0IHg9IjU5LjQwMzYxNDA0NDE4OTQ1IiB5PSIzMzkuMDg2
NzQ4MTIzMTY4OTUiIHN0eWxlPSJmb250LXNpemU6IDE2cHg7IGZvbnQtZmFtaWx5OiAmcXVvdDtB
bmRhbGUgTW9ubyZxdW90OywgbW9ub3NwYWNlOyI+PHRzcGFuIHg9IjU5LjQwMzYxNDA0NDE4OTQ1
Ij5TYW1lIGZvciBGUywgR1MsIGV0Yy4uLjwvdHNwYW4+PC90ZXh0PjwvZz48ZyBjbGFzcz0ic2ln
bmFsIj48dGV4dCB4PSI4My40MDk2MzM2MzY0NzQ2MSIgeT0iMzc4LjMzOTc1OTgyNjY2MDE2IiBz
dHlsZT0iZm9udC1zaXplOiAxNnB4OyBmb250LWZhbWlseTogJnF1b3Q7QW5kYWxlIE1vbm8mcXVv
dDssIG1vbm9zcGFjZTsiPjx0c3BhbiB4PSI4My40MDk2MzM2MzY0NzQ2MSI+Z2xDcmVhdGVQcm9n
cmFtICguLi4pPC90c3Bhbj48L3RleHQ+PGxpbmUgeDE9IjM0LjQwMzYxNDA0NDE4OTQ1IiB4Mj0i
MzM0LjA1NDIwMzAzMzQ0NzI3IiB5MT0iMzg2LjQ0ODE5MjU5NjQzNTU1IiB5Mj0iMzg2LjQ0ODE5
MjU5NjQzNTU1IiBzdHJva2U9IiMwMDAwMDAiIGZpbGw9Im5vbmUiIHN0eWxlPSJzdHJva2Utd2lk
dGg6IDI7IG1hcmtlci1lbmQ6IHVybCgmcXVvdDsjbWFya2VyQXJyb3dCbG9jayZxdW90Oyk7Ij48
L2xpbmU+PC9nPjxnIGNsYXNzPSJzaWduYWwiPjx0ZXh0IHg9Ijg4LjIxMDg0MjEzMjU2ODM2IiB5
PSI0MTYuODQ1NzgzMjMzNjQyNiIgc3R5bGU9ImZvbnQtc2l6ZTogMTZweDsgZm9udC1mYW1pbHk6
ICZxdW90O0FuZGFsZSBNb25vJnF1b3Q7LCBtb25vc3BhY2U7Ij48dHNwYW4geD0iODguMjEwODQy
MTMyNTY4MzYiPmdsQXR0YWNoU2hhZGVyICguLi4pPC90c3Bhbj48L3RleHQ+PGxpbmUgeDE9IjM0
LjQwMzYxNDA0NDE4OTQ1IiB4Mj0iMzM0LjA1NDIwMzAzMzQ0NzI3IiB5MT0iNDI0Ljk1NDIxNjAw
MzQxNzk3IiB5Mj0iNDI0Ljk1NDIxNjAwMzQxNzk3IiBzdHJva2U9IiMwMDAwMDAiIGZpbGw9Im5v
bmUiIHN0eWxlPSJzdHJva2Utd2lkdGg6IDI7IG1hcmtlci1lbmQ6IHVybCgmcXVvdDsjbWFya2Vy
QXJyb3dCbG9jayZxdW90Oyk7Ij48L2xpbmU+PC9nPjxnIGNsYXNzPSJzaWduYWwiPjx0ZXh0IHg9
IjEyMS44MTMyNDc2ODA2NjQwNiIgeT0iNDU1LjM1MTgwNjY0MDYyNSIgc3R5bGU9ImZvbnQtc2l6
ZTogMTZweDsgZm9udC1mYW1pbHk6ICZxdW90O0FuZGFsZSBNb25vJnF1b3Q7LCBtb25vc3BhY2U7
Ij48dHNwYW4geD0iMTIxLjgxMzI0NzY4MDY2NDA2Ij5nbExpbmtQcm9ncmFtPC90c3Bhbj48L3Rl
eHQ+PGxpbmUgeDE9IjM0LjQwMzYxNDA0NDE4OTQ1IiB4Mj0iMzM0LjA1NDIwMzAzMzQ0NzI3IiB5
MT0iNDYzLjQ2MDIzOTQxMDQwMDQiIHkyPSI0NjMuNDYwMjM5NDEwNDAwNCIgc3Ryb2tlPSIjMDAw
MDAwIiBmaWxsPSJub25lIiBzdHlsZT0ic3Ryb2tlLXdpZHRoOiAyOyBtYXJrZXItZW5kOiB1cmwo
JnF1b3Q7I21hcmtlckFycm93QmxvY2smcXVvdDspOyI+PC9saW5lPjwvZz48ZyBjbGFzcz0ic2ln
bmFsIj48dGV4dCB4PSIzOTcuNDYzODQwNDg0NjE5MTQiIHk9IjQ5My44NTc4MzAwNDc2MDc0IiBz
dHlsZT0iZm9udC1zaXplOiAxNnB4OyBmb250LWZhbWlseTogJnF1b3Q7QW5kYWxlIE1vbm8mcXVv
dDssIG1vbm9zcGFjZTsiPjx0c3BhbiB4PSIzOTcuNDYzODQwNDg0NjE5MTQiPlByb2dyYW1Wazo6
bGluazwvdHNwYW4+PC90ZXh0PjxsaW5lIHgxPSIzMzQuMDU0MjAzMDMzNDQ3MjciIHgyPSI2MDQu
ODk3NTcxNTYzNzIwNyIgeTE9IjUwMS45NjYyNjI4MTczODI4IiB5Mj0iNTAxLjk2NjI2MjgxNzM4
MjgiIHN0cm9rZT0iIzAwMDAwMCIgZmlsbD0ibm9uZSIgc3R5bGU9InN0cm9rZS13aWR0aDogMjsg
bWFya2VyLWVuZDogdXJsKCZxdW90OyNtYXJrZXJBcnJvd0Jsb2NrJnF1b3Q7KTsiPjwvbGluZT48
L2c+PGcgY2xhc3M9Im5vdGUiPjxyZWN0IHg9IjYyNC44OTc1NzE1NjM3MjA3IiB5PSI1MjEuOTY2
MjYyODE3MzgyOCIgd2lkdGg9IjI1MC4wNDgxODcyNTU4NTkzOCIgaGVpZ2h0PSI0Ny43MDYwMjQx
Njk5MjE4NzUiIHN0cm9rZT0iIzAwMDAwMCIgZmlsbD0iI2ZmZmZmZiIgc3R5bGU9InN0cm9rZS13
aWR0aDogMjsiPjwvcmVjdD48dGV4dCB4PSI2MjkuODk3NTcxNTYzNzIwNyIgeT0iNTQxLjYxNjg2
NTE1ODA4MSIgc3R5bGU9ImZvbnQtc2l6ZTogMTZweDsgZm9udC1mYW1pbHk6ICZxdW90O0FuZGFs
ZSBNb25vJnF1b3Q7LCBtb25vc3BhY2U7Ij48dHNwYW4geD0iNjI5Ljg5NzU3MTU2MzcyMDciPlBy
b2dyYW1WayBpbml0cyB1bmlmb3Jtcyw8L3RzcGFuPjx0c3BhbiBkeT0iMS4yZW0iIHg9IjYyOS44
OTc1NzE1NjM3MjA3Ij5sYXlvdXRzLCBhbmQgZGVzY3JpcHRvcnMuPC90c3Bhbj48L3RleHQ+PC9n
PjxnIGNsYXNzPSJzaWduYWwiPjx0ZXh0IHg9IjcyNi43MTY4Mzg4MzY2Njk5IiB5PSI2MDAuMDY5
ODc3NjI0NTExNyIgc3R5bGU9ImZvbnQtc2l6ZTogMTZweDsgZm9udC1mYW1pbHk6ICZxdW90O0Fu
ZGFsZSBNb25vJnF1b3Q7LCBtb25vc3BhY2U7Ij48dHNwYW4geD0iNzI2LjcxNjgzODgzNjY2OTki
Pkdsc2xhbmdXcmFwcGVyVms6OkdldFNoYWRlckNvZGU8L3RzcGFuPjwvdGV4dD48bGluZSB4MT0i
NjA0Ljg5NzU3MTU2MzcyMDciIHgyPSIxMTQ2LjE4NjcxMDM1NzY2NiIgeTE9IjYwOC4xNzgzMTAz
OTQyODcxIiB5Mj0iNjA4LjE3ODMxMDM5NDI4NzEiIHN0cm9rZT0iIzAwMDAwMCIgZmlsbD0ibm9u
ZSIgc3R5bGU9InN0cm9rZS13aWR0aDogMjsgbWFya2VyLWVuZDogdXJsKCZxdW90OyNtYXJrZXJB
cnJvd0Jsb2NrJnF1b3Q7KTsiPjwvbGluZT48L2c+PGcgY2xhc3M9InNpZ25hbCI+PHRleHQgeD0i
Njc4LjcwNDc5OTY1MjA5OTYiIHk9IjYzOC41NzU5MDEwMzE0OTQxIiBzdHlsZT0iZm9udC1zaXpl
OiAxNnB4OyBmb250LWZhbWlseTogJnF1b3Q7QW5kYWxlIE1vbm8mcXVvdDssIG1vbm9zcGFjZTsi
Pjx0c3BhbiB4PSI2NzguNzA0Nzk5NjUyMDk5NiI+cmV0cmlldmUgU1BJUi1WIGFuZCBkZXRlcm1p
bmUgZGVjb3JhdGlvbnM8L3RzcGFuPjwvdGV4dD48bGluZSB4MT0iMTE0Ni4xODY3MTAzNTc2NjYi
IHgyPSI2MDQuODk3NTcxNTYzNzIwNyIgeTE9IjY0Ni42ODQzMzM4MDEyNjk1IiB5Mj0iNjQ2LjY4
NDMzMzgwMTI2OTUiIHN0cm9rZT0iIzAwMDAwMCIgZmlsbD0ibm9uZSIgc3R5bGU9InN0cm9rZS13
aWR0aDogMjsgc3Ryb2tlLWRhc2hhcnJheTogNiwgMjsgbWFya2VyLWVuZDogdXJsKCZxdW90OyNt
YXJrZXJBcnJvd0Jsb2NrJnF1b3Q7KTsiPjwvbGluZT48L2c+PGcgY2xhc3M9InNpZ25hbCI+PHRl
eHQgeD0iNDAyLjI1OTAyMTc1OTAzMzIiIHk9IjY3Ny4wODE5MjQ0Mzg0NzY2IiBzdHlsZT0iZm9u
dC1zaXplOiAxNnB4OyBmb250LWZhbWlseTogJnF1b3Q7QW5kYWxlIE1vbm8mcXVvdDssIG1vbm9z
cGFjZTsiPjx0c3BhbiB4PSI0MDIuMjU5MDIxNzU5MDMzMiI+cmV0dXJuIHN1Y2Nlc3M8L3RzcGFu
PjwvdGV4dD48bGluZSB4MT0iNjA0Ljg5NzU3MTU2MzcyMDciIHgyPSIzMzQuMDU0MjAzMDMzNDQ3
MjciIHkxPSI2ODUuMTkwMzU3MjA4MjUyIiB5Mj0iNjg1LjE5MDM1NzIwODI1MiIgc3Ryb2tlPSIj
MDAwMDAwIiBmaWxsPSJub25lIiBzdHlsZT0ic3Ryb2tlLXdpZHRoOiAyOyBzdHJva2UtZGFzaGFy
cmF5OiA2LCAyOyBtYXJrZXItZW5kOiB1cmwoJnF1b3Q7I21hcmtlckFycm93QmxvY2smcXVvdDsp
OyI+PC9saW5lPjwvZz48ZyBjbGFzcz0ibm90ZSI+PHJlY3QgeD0iNTQuNDAzNjE0MDQ0MTg5NDUi
IHk9IjcwNS4xOTAzNTcyMDgyNTIiIHdpZHRoPSIyNTkuNjUwNTg4OTg5MjU3OCIgaGVpZ2h0PSIy
OC41MDYwMjM0MDY5ODI0MjIiIHN0cm9rZT0iIzAwMDAwMCIgZmlsbD0iI2ZmZmZmZiIgc3R5bGU9
InN0cm9rZS13aWR0aDogMjsiPjwvcmVjdD48dGV4dCB4PSI1OS40MDM2MTQwNDQxODk0NSIgeT0i
NzI0Ljg0MDk1OTU0ODk1MDIiIHN0eWxlPSJmb250LXNpemU6IDE2cHg7IGZvbnQtZmFtaWx5OiAm
cXVvdDtBbmRhbGUgTW9ubyZxdW90OywgbW9ub3NwYWNlOyI+PHRzcGFuIHg9IjU5LjQwMzYxNDA0
NDE4OTQ1Ij5BcHAgZXhlY3V0aW9uIGNvbnRpbnVlcy4uLjwvdHNwYW4+PC90ZXh0PjwvZz48ZyBj
bGFzcz0ic2lnbmFsIj48dGV4dCB4PSI3My44MDcyMjQyNzM2ODE2NCIgeT0iNzY0LjA5Mzk3MTI1
MjQ0MTQiIHN0eWxlPSJmb250LXNpemU6IDE2cHg7IGZvbnQtZmFtaWx5OiAmcXVvdDtBbmRhbGUg
TW9ubyZxdW90OywgbW9ub3NwYWNlOyI+PHRzcGFuIHg9IjczLjgwNzIyNDI3MzY4MTY0Ij5nbERy
YXdBcnJheXMgKGFueSBkcmF3KTwvdHNwYW4+PC90ZXh0PjxsaW5lIHgxPSIzNC40MDM2MTQwNDQx
ODk0NSIgeDI9IjMzNC4wNTQyMDMwMzM0NDcyNyIgeTE9Ijc3Mi4yMDI0MDQwMjIyMTY4IiB5Mj0i
NzcyLjIwMjQwNDAyMjIxNjgiIHN0cm9rZT0iIzAwMDAwMCIgZmlsbD0ibm9uZSIgc3R5bGU9InN0
cm9rZS13aWR0aDogMjsgbWFya2VyLWVuZDogdXJsKCZxdW90OyNtYXJrZXJBcnJvd0Jsb2NrJnF1
b3Q7KTsiPjwvbGluZT48L2c+PGcgY2xhc3M9InNpZ25hbCI+PHRleHQgeD0iMzY4LjY1NjYxMjM5
NjI0MDIzIiB5PSI4MDIuNTk5OTk0NjU5NDIzOCIgc3R5bGU9ImZvbnQtc2l6ZTogMTZweDsgZm9u
dC1mYW1pbHk6ICZxdW90O0FuZGFsZSBNb25vJnF1b3Q7LCBtb25vc3BhY2U7Ij48dHNwYW4geD0i
MzY4LjY1NjYxMjM5NjI0MDIzIj5Db250ZXh0Vms6OmRyYXdBcnJheXM8L3RzcGFuPjwvdGV4dD48
bGluZSB4MT0iMzM0LjA1NDIwMzAzMzQ0NzI3IiB4Mj0iNjA0Ljg5NzU3MTU2MzcyMDciIHkxPSI4
MTAuNzA4NDI3NDI5MTk5MiIgeTI9IjgxMC43MDg0Mjc0MjkxOTkyIiBzdHJva2U9IiMwMDAwMDAi
IGZpbGw9Im5vbmUiIHN0eWxlPSJzdHJva2Utd2lkdGg6IDI7IG1hcmtlci1lbmQ6IHVybCgmcXVv
dDsjbWFya2VyQXJyb3dCbG9jayZxdW90Oyk7Ij48L2xpbmU+PC9nPjxnIGNsYXNzPSJzaWduYWwi
Pjx0ZXh0IHg9IjcyMS45MTU2NDU1OTkzNjUyIiB5PSI4NDEuMTA2MDE4MDY2NDA2MiIgc3R5bGU9
ImZvbnQtc2l6ZTogMTZweDsgZm9udC1mYW1pbHk6ICZxdW90O0FuZGFsZSBNb25vJnF1b3Q7LCBt
b25vc3BhY2U7Ij48dHNwYW4geD0iNzIxLjkxNTY0NTU5OTM2NTIiPkdsc2xhbmdXcmFwcGVyVms6
OlRyYW5zZm9ybVNwaXJWPC90c3Bhbj48L3RleHQ+PGxpbmUgeDE9IjYwNC44OTc1NzE1NjM3MjA3
IiB4Mj0iMTE0Ni4xODY3MTAzNTc2NjYiIHkxPSI4NDkuMjE0NDUwODM2MTgxNiIgeTI9Ijg0OS4y
MTQ0NTA4MzYxODE2IiBzdHJva2U9IiMwMDAwMDAiIGZpbGw9Im5vbmUiIHN0eWxlPSJzdHJva2Ut
d2lkdGg6IDI7IG1hcmtlci1lbmQ6IHVybCgmcXVvdDsjbWFya2VyQXJyb3dCbG9jayZxdW90Oyk7
Ij48L2xpbmU+PC9nPjxnIGNsYXNzPSJzaWduYWwiPjx0ZXh0IHg9Ijc1NS41MTgwNDczMzI3NjM3
IiB5PSI4NzkuNjEyMDQxNDczMzg4NyIgc3R5bGU9ImZvbnQtc2l6ZTogMTZweDsgZm9udC1mYW1p
bHk6ICZxdW90O0FuZGFsZSBNb25vJnF1b3Q7LCBtb25vc3BhY2U7Ij48dHNwYW4geD0iNzU1LjUx
ODA0NzMzMjc2MzciPnJldHVybiB0cmFuc2Zvcm1lZCBTUElSLVY8L3RzcGFuPjwvdGV4dD48bGlu
ZSB4MT0iMTE0Ni4xODY3MTAzNTc2NjYiIHgyPSI2MDQuODk3NTcxNTYzNzIwNyIgeTE9Ijg4Ny43
MjA0NzQyNDMxNjQxIiB5Mj0iODg3LjcyMDQ3NDI0MzE2NDEiIHN0cm9rZT0iIzAwMDAwMCIgZmls
bD0ibm9uZSIgc3R5bGU9InN0cm9rZS13aWR0aDogMjsgc3Ryb2tlLWRhc2hhcnJheTogNiwgMjsg
bWFya2VyLWVuZDogdXJsKCZxdW90OyNtYXJrZXJBcnJvd0Jsb2NrJnF1b3Q7KTsiPjwvbGluZT48
L2c+PGcgY2xhc3M9Im5vdGUiPjxyZWN0IHg9IjYyNC44OTc1NzE1NjM3MjA3IiB5PSI5MDcuNzIw
NDc0MjQzMTY0MSIgd2lkdGg9IjIzMC44NDMzNjg1MzAyNzM0NCIgaGVpZ2h0PSI2Ni45MDYwMjg3
NDc1NTg2IiBzdHJva2U9IiMwMDAwMDAiIGZpbGw9IiNmZmZmZmYiIHN0eWxlPSJzdHJva2Utd2lk
dGg6IDI7Ij48L3JlY3Q+PHRleHQgeD0iNjI5Ljg5NzU3MTU2MzcyMDciIHk9IjkyNy4zNzEwNzY1
ODM4NjIzIiBzdHlsZT0iZm9udC1zaXplOiAxNnB4OyBmb250LWZhbWlseTogJnF1b3Q7QW5kYWxl
IE1vbm8mcXVvdDssIG1vbm9zcGFjZTsiPjx0c3BhbiB4PSI2MjkuODk3NTcxNTYzNzIwNyI+V2Ug
aW5pdCBWa1NoYWRlck1vZHVsZXM8L3RzcGFuPjx0c3BhbiBkeT0iMS4yZW0iIHg9IjYyOS44OTc1
NzE1NjM3MjA3Ij5hbmQgVmtQaXBlbGluZSB0aGVuPC90c3Bhbj48dHNwYW4gZHk9IjEuMmVtIiB4
PSI2MjkuODk3NTcxNTYzNzIwNyI+cmVjb3JkIHRoZSBkcmF3LjwvdHNwYW4+PC90ZXh0PjwvZz48
ZyBjbGFzcz0ic2lnbmFsIj48dGV4dCB4PSI0MDIuMjU5MDIxNzU5MDMzMiIgeT0iMTAwNS4wMjQw
OTM2Mjc5Mjk3IiBzdHlsZT0iZm9udC1zaXplOiAxNnB4OyBmb250LWZhbWlseTogJnF1b3Q7QW5k
YWxlIE1vbm8mcXVvdDssIG1vbm9zcGFjZTsiPjx0c3BhbiB4PSI0MDIuMjU5MDIxNzU5MDMzMiI+
cmV0dXJuIHN1Y2Nlc3M8L3RzcGFuPjwvdGV4dD48bGluZSB4MT0iNjA0Ljg5NzU3MTU2MzcyMDci
IHgyPSIzMzQuMDU0MjAzMDMzNDQ3MjciIHkxPSIxMDEzLjEzMjUyNjM5NzcwNTEiIHkyPSIxMDEz
LjEzMjUyNjM5NzcwNTEiIHN0cm9rZT0iIzAwMDAwMCIgZmlsbD0ibm9uZSIgc3R5bGU9InN0cm9r
ZS13aWR0aDogMjsgc3Ryb2tlLWRhc2hhcnJheTogNiwgMjsgbWFya2VyLWVuZDogdXJsKCZxdW90
OyNtYXJrZXJBcnJvd0Jsb2NrJnF1b3Q7KTsiPjwvbGluZT48L2c+PC9zdmc+ClwgTm8gbmV3bGlu
ZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3Jj
L2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9saW51eC9EbWFCdWZJbWFnZVNpYmxpbmdWa0xpbnV4
LmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxr
YW4vbGludXgvRG1hQnVmSW1hZ2VTaWJsaW5nVmtMaW51eC5jcHAKaW5kZXggZWIyZjBhNThkNDVk
OTIzNzFmYjI2NjE4MTE2MzMxOGRlY2U1ZGNlMC4uNzk2ZGI3YzI5ZTViNjFhNmE5NjljMTU5OTg2
Y2MwNzc2NTM1MWVhNyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xp
YkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9saW51eC9EbWFCdWZJbWFnZVNpYmxpbmdWa0xpbnV4LmNw
cAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVs
a2FuL2xpbnV4L0RtYUJ1ZkltYWdlU2libGluZ1ZrTGludXguY3BwCkBAIC0xMyw2ICsxMyw4IEBA
CiAjaW5jbHVkZSAibGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL0Rpc3BsYXlWay5oIgogI2luY2x1
ZGUgImxpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9SZW5kZXJlclZrLmgiCiAKKyNpbmNsdWRlIDxm
Y250bC5oPgorCiBuYW1lc3BhY2UgcngKIHsKIG5hbWVzcGFjZQpAQCAtMTg4LDE1ICsxOTAsMTYg
QEAgYm9vbCBJc0Zvcm1hdFN1cHBvcnRlZChSZW5kZXJlclZrICpyZW5kZXJlciwKICAgICAgICAg
ICAgICAgICAgICAgICAgdWludDY0X3QgZHJtTW9kaWZpZXIsCiAgICAgICAgICAgICAgICAgICAg
ICAgIFZrSW1hZ2VVc2FnZUZsYWdzIHVzYWdlRmxhZ3MsCiAgICAgICAgICAgICAgICAgICAgICAg
IFZrSW1hZ2VDcmVhdGVGbGFncyBjcmVhdGVGbGFncywKKyAgICAgICAgICAgICAgICAgICAgICAg
VmtJbWFnZUZvcm1hdExpc3RDcmVhdGVJbmZvS0hSIGltYWdlRm9ybWF0TGlzdEluZm8sCiAgICAg
ICAgICAgICAgICAgICAgICAgIFZrSW1hZ2VGb3JtYXRQcm9wZXJ0aWVzMiAqaW1hZ2VGb3JtYXRQ
cm9wZXJ0aWVzT3V0KQogewotICAgIFZrRXh0ZXJuYWxNZW1vcnlJbWFnZUNyZWF0ZUluZm8gZXh0
ZXJuYWxNZW1vcnlJbWFnZUNyZWF0ZUluZm8gPSB7fTsKLSAgICBleHRlcm5hbE1lbW9yeUltYWdl
Q3JlYXRlSW5mby5zVHlwZSAgICAgICA9IFZLX1NUUlVDVFVSRV9UWVBFX0VYVEVSTkFMX01FTU9S
WV9JTUFHRV9DUkVBVEVfSU5GTzsKLSAgICBleHRlcm5hbE1lbW9yeUltYWdlQ3JlYXRlSW5mby5o
YW5kbGVUeXBlcyA9IFZLX0VYVEVSTkFMX01FTU9SWV9IQU5ETEVfVFlQRV9ETUFfQlVGX0JJVF9F
WFQ7CisgICAgVmtQaHlzaWNhbERldmljZUV4dGVybmFsSW1hZ2VGb3JtYXRJbmZvIGV4dGVybmFs
SW1hZ2VGb3JtYXRJbmZvID0ge307CisgICAgZXh0ZXJuYWxJbWFnZUZvcm1hdEluZm8uc1R5cGUg
PSBWS19TVFJVQ1RVUkVfVFlQRV9QSFlTSUNBTF9ERVZJQ0VfRVhURVJOQUxfSU1BR0VfRk9STUFU
X0lORk87CisgICAgZXh0ZXJuYWxJbWFnZUZvcm1hdEluZm8uaGFuZGxlVHlwZSA9IFZLX0VYVEVS
TkFMX01FTU9SWV9IQU5ETEVfVFlQRV9ETUFfQlVGX0JJVF9FWFQ7CiAKICAgICBWa1BoeXNpY2Fs
RGV2aWNlSW1hZ2VGb3JtYXRJbmZvMiBpbWFnZUZvcm1hdEluZm8gPSB7fTsKICAgICBpbWFnZUZv
cm1hdEluZm8uc1R5cGUgID0gVktfU1RSVUNUVVJFX1RZUEVfUEhZU0lDQUxfREVWSUNFX0lNQUdF
X0ZPUk1BVF9JTkZPXzI7Ci0gICAgaW1hZ2VGb3JtYXRJbmZvLnBOZXh0ICA9ICZleHRlcm5hbE1l
bW9yeUltYWdlQ3JlYXRlSW5mbzsKKyAgICBpbWFnZUZvcm1hdEluZm8ucE5leHQgID0gJmV4dGVy
bmFsSW1hZ2VGb3JtYXRJbmZvOwogICAgIGltYWdlRm9ybWF0SW5mby5mb3JtYXQgPSB2a0Zvcm1h
dDsKICAgICBpbWFnZUZvcm1hdEluZm8udHlwZSAgID0gVktfSU1BR0VfVFlQRV8yRDsKICAgICBp
bWFnZUZvcm1hdEluZm8udGlsaW5nID0gVktfSU1BR0VfVElMSU5HX09QVElNQUw7CkBAIC0yMDYs
MTMgKzIwOSwxNCBAQCBib29sIElzRm9ybWF0U3VwcG9ydGVkKFJlbmRlcmVyVmsgKnJlbmRlcmVy
LAogICAgIFZrUGh5c2ljYWxEZXZpY2VJbWFnZURybUZvcm1hdE1vZGlmaWVySW5mb0VYVCBkcm1G
b3JtYXRNb2RpZmllckluZm8gPSB7fTsKICAgICBkcm1Gb3JtYXRNb2RpZmllckluZm8uc1R5cGUg
PQogICAgICAgICBWS19TVFJVQ1RVUkVfVFlQRV9QSFlTSUNBTF9ERVZJQ0VfSU1BR0VfRFJNX0ZP
Uk1BVF9NT0RJRklFUl9JTkZPX0VYVDsKLSAgICBkcm1Gb3JtYXRNb2RpZmllckluZm8ucE5leHQg
ICAgICAgICAgICAgPSAmZXh0ZXJuYWxNZW1vcnlJbWFnZUNyZWF0ZUluZm87CiAgICAgZHJtRm9y
bWF0TW9kaWZpZXJJbmZvLmRybUZvcm1hdE1vZGlmaWVyID0gZHJtTW9kaWZpZXI7CiAgICAgZHJt
Rm9ybWF0TW9kaWZpZXJJbmZvLnNoYXJpbmdNb2RlICAgICAgID0gVktfU0hBUklOR19NT0RFX0VY
Q0xVU0lWRTsKICAgICBpZiAoZHJtTW9kaWZpZXIgIT0gMCkKICAgICB7Ci0gICAgICAgIGltYWdl
Rm9ybWF0SW5mby5wTmV4dCAgPSAmZHJtRm9ybWF0TW9kaWZpZXJJbmZvOwotICAgICAgICBpbWFn
ZUZvcm1hdEluZm8udGlsaW5nID0gVktfSU1BR0VfVElMSU5HX0RSTV9GT1JNQVRfTU9ESUZJRVJf
RVhUOworICAgICAgICBleHRlcm5hbEltYWdlRm9ybWF0SW5mby5wTmV4dCA9ICZkcm1Gb3JtYXRN
b2RpZmllckluZm87CisgICAgICAgIGltYWdlRm9ybWF0TGlzdEluZm8ucE5leHQgICAgID0gJmV4
dGVybmFsSW1hZ2VGb3JtYXRJbmZvOworICAgICAgICBpbWFnZUZvcm1hdEluZm8ucE5leHQgICAg
ICAgICA9ICZpbWFnZUZvcm1hdExpc3RJbmZvOworICAgICAgICBpbWFnZUZvcm1hdEluZm8udGls
aW5nICAgICAgICA9IFZLX0lNQUdFX1RJTElOR19EUk1fRk9STUFUX01PRElGSUVSX0VYVDsKICAg
ICB9CiAKICAgICByZXR1cm4gdmtHZXRQaHlzaWNhbERldmljZUltYWdlRm9ybWF0UHJvcGVydGll
czIocmVuZGVyZXItPmdldFBoeXNpY2FsRGV2aWNlKCksCkBAIC0yNTEsMTEgKzI1NSwxMiBAQCBW
a1NhbXBsZXJZY2JjclJhbmdlIEdldFljYmNyUmFuZ2UoY29uc3QgZWdsOjpBdHRyaWJ1dGVNYXAg
JmF0dHJpYnMpCiAgICAgICAgICAgICAgICA6IFZLX1NBTVBMRVJfWUNCQ1JfUkFOR0VfSVRVX05B
UlJPVzsKIH0KIAotdWludDMyX3QgR2V0QWxsb2NhdGVJbmZvKGNvbnN0IGVnbDo6QXR0cmlidXRl
TWFwICZhdHRyaWJzLAotICAgICAgICAgICAgICAgICAgICAgICAgIFZrSW1hZ2UgaW1hZ2UsCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgcGxhbmVDb3VudCwKLSAgICAgICAgICAg
ICAgICAgICAgICAgICBjb25zdCBWa0RybUZvcm1hdE1vZGlmaWVyUHJvcGVydGllc0VYVCAmcHJv
cGVydGllcywKLSAgICAgICAgICAgICAgICAgICAgICAgICBBbGxvY2F0ZUluZm8gKmluZm9PdXQp
CithbmdsZTo6UmVzdWx0IEdldEFsbG9jYXRlSW5mbyhjb25zdCBlZ2w6OkF0dHJpYnV0ZU1hcCAm
YXR0cmlicywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZrSW1hZ2UgaW1hZ2UsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBwbGFuZUNvdW50LAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgVmtEcm1Gb3JtYXRNb2RpZmllclByb3BlcnRp
ZXNFWFQgJnByb3BlcnRpZXMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBbGxvY2F0
ZUluZm8gKmluZm9PdXQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCAq
aW5mb0NvdW50T3V0KQogewogICAgIC8vIFRoZXJlIGFyZSBhIG51bWJlciBvZiBzaXR1YXRpb25z
OgogICAgIC8vCkBAIC0yOTAsMjEgKzI5NSwyOSBAQCB1aW50MzJfdCBHZXRBbGxvY2F0ZUluZm8o
Y29uc3QgZWdsOjpBdHRyaWJ1dGVNYXAgJmF0dHJpYnMsCiAgICAgfQogCiAgICAgLy8gRmlsbCBp
biBhbGxvY2F0ZUluZm8sIGltcG9ydEZkSW5mbywgYmluZEluZm8gYW5kIGJpbmRQbGFuZUluZm8g
Zmlyc3QuCi0gICAgY29uc3QgdWludDMyX3QgcGxhbmVzVG9BbGxvY2F0ZSA9IGlzRGlzam9pbnQg
PyBwbGFuZUNvdW50IDogMTsKLSAgICBmb3IgKHVpbnQzMl90IHBsYW5lID0gMDsgcGxhbmUgPCBw
bGFuZXNUb0FsbG9jYXRlOyArK3BsYW5lKQorICAgICppbmZvQ291bnRPdXQgPSBpc0Rpc2pvaW50
ID8gcGxhbmVDb3VudCA6IDE7CisgICAgZm9yICh1aW50MzJfdCBwbGFuZSA9IDA7IHBsYW5lIDwg
KmluZm9Db3VudE91dDsgKytwbGFuZSkKICAgICB7CiAgICAgICAgIGluZm9PdXQtPmFsbG9jYXRl
SW5mb1twbGFuZV0uc1R5cGUgPSBWS19TVFJVQ1RVUkVfVFlQRV9NRU1PUllfREVESUNBVEVEX0FM
TE9DQVRFX0lORk87CiAgICAgICAgIGluZm9PdXQtPmFsbG9jYXRlSW5mb1twbGFuZV0ucE5leHQg
PSAmaW5mb091dC0+aW1wb3J0RmRJbmZvW3BsYW5lXTsKICAgICAgICAgaW5mb091dC0+YWxsb2Nh
dGVJbmZvW3BsYW5lXS5pbWFnZSA9IGltYWdlOwogCiAgICAgICAgIGluZm9PdXQtPmltcG9ydEZk
SW5mb1twbGFuZV0uc1R5cGUgICAgICA9IFZLX1NUUlVDVFVSRV9UWVBFX0lNUE9SVF9NRU1PUllf
RkRfSU5GT19LSFI7Ci0gICAgICAgIGluZm9PdXQtPmltcG9ydEZkSW5mb1twbGFuZV0uaGFuZGxl
VHlwZSA9IFZLX0VYVEVSTkFMX01FTU9SWV9IQU5ETEVfVFlQRV9PUEFRVUVfRkRfQklUOwotICAg
ICAgICBpbmZvT3V0LT5pbXBvcnRGZEluZm9bcGxhbmVdLmZkICAgICAgICAgPSBhdHRyaWJzLmdl
dEFzSW50KGtGZHNbcGxhbmVdKTsKKyAgICAgICAgaW5mb091dC0+aW1wb3J0RmRJbmZvW3BsYW5l
XS5oYW5kbGVUeXBlID0gVktfRVhURVJOQUxfTUVNT1JZX0hBTkRMRV9UWVBFX0RNQV9CVUZfQklU
X0VYVDsKKworICAgICAgICAvLyBWdWxrYW4gdGFrZXMgb3duZXJzaGlwIG9mIHRoZSBGRCwgY2xv
c2VkIG9uIHZrRnJlZU1lbW9yeS4KKyAgICAgICAgaW50IGRmZCA9IGZjbnRsKGF0dHJpYnMuZ2V0
QXNJbnQoa0Zkc1twbGFuZV0pLCBGX0RVUEZEX0NMT0VYRUMsIDApOworICAgICAgICBpZiAoZGZk
IDwgMCkKKyAgICAgICAgeworICAgICAgICAgICAgRVJSKCkgPDwgImZhaWxlZCB0byBkdXBsaWNh
dGUgZmQgZm9yIGRtYV9idWYgaW1wb3J0IiA8PCBzdGQ6OmVuZGw7CisgICAgICAgICAgICByZXR1
cm4gYW5nbGU6OlJlc3VsdDo6U3RvcDsKKyAgICAgICAgfQorICAgICAgICBpbmZvT3V0LT5pbXBv
cnRGZEluZm9bcGxhbmVdLmZkID0gZGZkOwogCiAgICAgICAgIGluZm9PdXQtPmFsbG9jYXRlSW5m
b1B0cltwbGFuZV0gPSAmaW5mb091dC0+YWxsb2NhdGVJbmZvW3BsYW5lXTsKICAgICB9CiAKLSAg
ICByZXR1cm4gcGxhbmVzVG9BbGxvY2F0ZTsKKyAgICByZXR1cm4gYW5nbGU6OlJlc3VsdDo6Q29u
dGludWU7CiB9CiB9ICAvLyBhbm9ueW1vdXMgbmFtZXNwYWNlCiAKQEAgLTMzNyw2ICszNTAsNTkg
QEAgZWdsOjpFcnJvciBEbWFCdWZJbWFnZVNpYmxpbmdWa0xpbnV4Ojppbml0aWFsaXplKGNvbnN0
IGVnbDo6RGlzcGxheSAqZGlzcGxheSkKICAgICByZXR1cm4gYW5nbGU6OlRvRUdMKGluaXRJbXBs
KGRpc3BsYXlWayksIGRpc3BsYXlWaywgRUdMX0JBRF9QQVJBTUVURVIpOwogfQogCitWa0ltYWdl
VXNhZ2VGbGFncyBGaW5kU3VwcG9ydGVkVXNhZ2VGbGFnc0ZvckZvcm1hdCgKKyAgICBSZW5kZXJl
clZrICpyZW5kZXJlciwKKyAgICBWa0Zvcm1hdCBmb3JtYXQsCisgICAgdWludDY0X3QgZHJtTW9k
aWZpZXIsCisgICAgVmtJbWFnZUZvcm1hdExpc3RDcmVhdGVJbmZvIGltYWdlRm9ybWF0TGlzdENy
ZWF0ZUluZm8sCisgICAgVmtJbWFnZVVzYWdlRmxhZ3MgdXNhZ2VGbGFncywKKyAgICBWa0ltYWdl
Q3JlYXRlRmxhZ3MgY3JlYXRlRmxhZ3MsCisgICAgVmtJbWFnZUZvcm1hdFByb3BlcnRpZXMyICpv
dXRJbWFnZUZvcm1hdFByb3BlcnRpZXMpCit7CisgICAgaWYgKCFJc0Zvcm1hdFN1cHBvcnRlZChy
ZW5kZXJlciwgZm9ybWF0LCBkcm1Nb2RpZmllciwgdXNhZ2VGbGFncywgY3JlYXRlRmxhZ3MsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICBpbWFnZUZvcm1hdExpc3RDcmVhdGVJbmZvLCBvdXRJ
bWFnZUZvcm1hdFByb3BlcnRpZXMpKQorICAgIHsKKyAgICAgICAgdXNhZ2VGbGFncyAmPSB+a1Jl
bmRlclVzYWdlOworICAgICAgICBpZiAoIUlzRm9ybWF0U3VwcG9ydGVkKHJlbmRlcmVyLCBmb3Jt
YXQsIGRybU1vZGlmaWVyLCB1c2FnZUZsYWdzLCBjcmVhdGVGbGFncywKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBpbWFnZUZvcm1hdExpc3RDcmVhdGVJbmZvLCBvdXRJbWFnZUZvcm1h
dFByb3BlcnRpZXMpKQorICAgICAgICB7CisgICAgICAgICAgICB1c2FnZUZsYWdzICY9IH5rVGV4
dHVyZVVzYWdlOworICAgICAgICAgICAgaWYgKCFJc0Zvcm1hdFN1cHBvcnRlZChyZW5kZXJlciwg
Zm9ybWF0LCBkcm1Nb2RpZmllciwgdXNhZ2VGbGFncywgY3JlYXRlRmxhZ3MsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGltYWdlRm9ybWF0TGlzdENyZWF0ZUluZm8sIG91dElt
YWdlRm9ybWF0UHJvcGVydGllcykpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgLy8g
Q2FuIG5vdCBmaW5kIHN1cHBvcnRlZCB1c2FnZSBmbGFncyBmb3IgdGhpcyBpbWFnZS4KKyAgICAg
ICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgIH0KKwor
ICAgIHJldHVybiB1c2FnZUZsYWdzOworfQorCitib29sIEZpbmRTdXBwb3J0ZWRGbGFnc0ZvckZv
cm1hdChSZW5kZXJlclZrICpyZW5kZXJlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFZrRm9ybWF0IGZvcm1hdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVp
bnQ2NF90IGRybU1vZGlmaWVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVmtJ
bWFnZUZvcm1hdExpc3RDcmVhdGVJbmZvIGltYWdlRm9ybWF0TGlzdENyZWF0ZUluZm8sCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWa0ltYWdlVXNhZ2VGbGFncyAqb3V0VXNhZ2VG
bGFncywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZrSW1hZ2VDcmVhdGVGbGFn
cyAqb3V0Q3JlYXRlRmxhZ3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWa0lt
YWdlRm9ybWF0UHJvcGVydGllczIgKm91dEltYWdlRm9ybWF0UHJvcGVydGllcykKK3sKKyAgICBW
a0ltYWdlVXNhZ2VGbGFncyBzdXBwb3J0ZWRVc2FnZUZsYWdzID0KKyAgICAgICAgRmluZFN1cHBv
cnRlZFVzYWdlRmxhZ3NGb3JGb3JtYXQocmVuZGVyZXIsIGZvcm1hdCwgZHJtTW9kaWZpZXIsIGlt
YWdlRm9ybWF0TGlzdENyZWF0ZUluZm8sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICpvdXRVc2FnZUZsYWdzLCAqb3V0Q3JlYXRlRmxhZ3MsIG91dEltYWdlRm9ybWF0
UHJvcGVydGllcyk7CisgICAgaWYgKHN1cHBvcnRlZFVzYWdlRmxhZ3MgPT0gMCkKKyAgICB7Cisg
ICAgICAgIC8vIFJlbW92ZSBtdXRhYmxlIGZvcm1hdCBiaXQgYW5kIHRyeSBhZ2Fpbi4KKyAgICAg
ICAgKm91dENyZWF0ZUZsYWdzICY9IH5WS19JTUFHRV9DUkVBVEVfTVVUQUJMRV9GT1JNQVRfQklU
OworICAgICAgICBzdXBwb3J0ZWRVc2FnZUZsYWdzID0gRmluZFN1cHBvcnRlZFVzYWdlRmxhZ3NG
b3JGb3JtYXQoCisgICAgICAgICAgICByZW5kZXJlciwgZm9ybWF0LCBkcm1Nb2RpZmllciwgaW1h
Z2VGb3JtYXRMaXN0Q3JlYXRlSW5mbywgKm91dFVzYWdlRmxhZ3MsCisgICAgICAgICAgICAqb3V0
Q3JlYXRlRmxhZ3MsIG91dEltYWdlRm9ybWF0UHJvcGVydGllcyk7CisgICAgfQorCisgICAgKm91
dFVzYWdlRmxhZ3MgPSBzdXBwb3J0ZWRVc2FnZUZsYWdzOworICAgIHJldHVybiBzdXBwb3J0ZWRV
c2FnZUZsYWdzICE9IDA7Cit9CisKIGFuZ2xlOjpSZXN1bHQgRG1hQnVmSW1hZ2VTaWJsaW5nVmtM
aW51eDo6aW5pdEltcGwoRGlzcGxheVZrICpkaXNwbGF5VmspCiB7CiAgICAgUmVuZGVyZXJWayAq
cmVuZGVyZXIgPSBkaXNwbGF5VmstPmdldFJlbmRlcmVyKCk7CkBAIC0zODcsNDAgKzQ1Myw2IEBA
IGFuZ2xlOjpSZXN1bHQgRG1hQnVmSW1hZ2VTaWJsaW5nVmtMaW51eDo6aW5pdEltcGwoRGlzcGxh
eVZrICpkaXNwbGF5VmspCiAgICAgaW1hZ2VGb3JtYXRQcm9wZXJ0aWVzLnNUeXBlICAgICAgICAg
ICAgICAgICAgICA9IFZLX1NUUlVDVFVSRV9UWVBFX0lNQUdFX0ZPUk1BVF9QUk9QRVJUSUVTXzI7
CiAgICAgaW1hZ2VGb3JtYXRQcm9wZXJ0aWVzLnBOZXh0ICAgICAgICAgICAgICAgICAgICA9ICZl
eHRlcm5hbEZvcm1hdFByb3BlcnRpZXM7CiAKLSAgICBpZiAoIUlzRm9ybWF0U3VwcG9ydGVkKHJl
bmRlcmVyLCB2dWxrYW5Gb3JtYXQsIHBsYW5lME1vZGlmaWVyLCB1c2FnZUZsYWdzLCBjcmVhdGVG
bGFncywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICZpbWFnZUZvcm1hdFByb3BlcnRpZXMp
KQotICAgIHsKLSAgICAgICAgbVJlbmRlcmFibGUgPSBmYWxzZTsKLSAgICAgICAgdXNhZ2VGbGFn
cyAmPSB+a1JlbmRlclVzYWdlOwotICAgICAgICBpZiAoIUlzRm9ybWF0U3VwcG9ydGVkKHJlbmRl
cmVyLCB2dWxrYW5Gb3JtYXQsIHBsYW5lME1vZGlmaWVyLCB1c2FnZUZsYWdzLCBjcmVhdGVGbGFn
cywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmaW1hZ2VGb3JtYXRQcm9wZXJ0aWVz
KSkKLSAgICAgICAgewotICAgICAgICAgICAgbVRleHR1cmVhYmxlID0gZmFsc2U7Ci0gICAgICAg
ICAgICB1c2FnZUZsYWdzICY9IH5rVGV4dHVyZVVzYWdlOwotCi0gICAgICAgICAgICBpZiAoIUlz
Rm9ybWF0U3VwcG9ydGVkKHJlbmRlcmVyLCB2dWxrYW5Gb3JtYXQsIHBsYW5lME1vZGlmaWVyLCB1
c2FnZUZsYWdzLCBjcmVhdGVGbGFncywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgJmltYWdlRm9ybWF0UHJvcGVydGllcykpCi0gICAgICAgICAgICB7Ci0gICAgICAgICAgICAg
ICAgLy8gVGhlIGltYWdlIGlzIGNvbXBsZXRlbHkgdW51c2FibGUuCi0gICAgICAgICAgICAgICAg
QU5HTEVfVktfQ0hFQ0soZGlzcGxheVZrLCBmYWxzZSwgVktfRVJST1JfRk9STUFUX05PVF9TVVBQ
T1JURUQpOwotICAgICAgICAgICAgfQotICAgICAgICB9Ci0gICAgfQotCi0gICAgLy8gTWFrZSBz
dXJlIGltYWdlIHdpZHRoL2hlaWdodC9zYW1wbGVzIGFyZSB3aXRoaW4gYWxsb3dlZCByYW5nZSBh
bmQgdGhlIGltYWdlIGlzIGltcG9ydGFibGUuCi0gICAgY29uc3QgYm9vbCBpc1dpZHRoVmFsaWQg
PSBzdGF0aWNfY2FzdDx1aW50MzJfdD4obVNpemUud2lkdGgpIDw9Ci0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBpbWFnZUZvcm1hdFByb3BlcnRpZXMuaW1hZ2VGb3JtYXRQcm9wZXJ0aWVz
Lm1heEV4dGVudC53aWR0aDsKLSAgICBjb25zdCBib29sIGlzSGVpZ2h0VmFsaWQgPSBzdGF0aWNf
Y2FzdDx1aW50MzJfdD4obVNpemUuaGVpZ2h0KSA8PQotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGltYWdlRm9ybWF0UHJvcGVydGllcy5pbWFnZUZvcm1hdFByb3BlcnRpZXMubWF4RXh0
ZW50LmhlaWdodDsKLSAgICBjb25zdCBib29sIGlzU2FtcGxlQ291bnRWYWxpZCA9Ci0gICAgICAg
IChpbWFnZUZvcm1hdFByb3BlcnRpZXMuaW1hZ2VGb3JtYXRQcm9wZXJ0aWVzLnNhbXBsZUNvdW50
cyAmIFZLX1NBTVBMRV9DT1VOVF8xX0JJVCkgIT0gMDsKLSAgICBjb25zdCBib29sIGlzTWVtb3J5
SW1wb3J0YWJsZSA9Ci0gICAgICAgIChleHRlcm5hbEZvcm1hdFByb3BlcnRpZXMuZXh0ZXJuYWxN
ZW1vcnlQcm9wZXJ0aWVzLmV4dGVybmFsTWVtb3J5RmVhdHVyZXMgJgotICAgICAgICAgVktfRVhU
RVJOQUxfTUVNT1JZX0ZFQVRVUkVfSU1QT1JUQUJMRV9CSVQpID09IDA7Ci0gICAgQU5HTEVfVktf
Q0hFQ0soZGlzcGxheVZrLAotICAgICAgICAgICAgICAgICAgIGlzV2lkdGhWYWxpZCAmJiBpc0hl
aWdodFZhbGlkICYmIGlzU2FtcGxlQ291bnRWYWxpZCAmJiBpc01lbW9yeUltcG9ydGFibGUsCi0g
ICAgICAgICAgICAgICAgICAgVktfRVJST1JfSU5DT01QQVRJQkxFX0RSSVZFUik7Ci0KICAgICBz
dGQ6OnZlY3RvcjxWa1N1YnJlc291cmNlTGF5b3V0PiBwbGFuZXMocGxhbmVDb3VudCwgVmtTdWJy
ZXNvdXJjZUxheW91dHt9KTsKICAgICBmb3IgKHVpbnQzMl90IHBsYW5lID0gMDsgcGxhbmUgPCBw
bGFuZUNvdW50OyArK3BsYW5lKQogICAgIHsKQEAgLTQ0MCwxMiArNDcyLDM2IEBAIGFuZ2xlOjpS
ZXN1bHQgRG1hQnVmSW1hZ2VTaWJsaW5nVmtMaW51eDo6aW5pdEltcGwoRGlzcGxheVZrICpkaXNw
bGF5VmspCiAgICAgZXh0ZXJuYWxNZW1vcnlJbWFnZUNyZWF0ZUluZm8ucE5leHQgICAgICAgPSAm
aW1hZ2VEcm1Nb2RpZmllckNyZWF0ZUluZm87CiAgICAgZXh0ZXJuYWxNZW1vcnlJbWFnZUNyZWF0
ZUluZm8uaGFuZGxlVHlwZXMgPSBWS19FWFRFUk5BTF9NRU1PUllfSEFORExFX1RZUEVfRE1BX0JV
Rl9CSVRfRVhUOwogCi0gICAgVmtJbWFnZUZvcm1hdExpc3RDcmVhdGVJbmZvS0hSIGltYWdlRm9y
bWF0TGlzdEluZm9TdG9yYWdlOworICAgIFZrSW1hZ2VGb3JtYXRMaXN0Q3JlYXRlSW5mb0tIUiBp
bWFnZUZvcm1hdExpc3RDcmVhdGVJbmZvOwogICAgIHZrOjpJbWFnZUhlbHBlcjo6SW1hZ2VMaXN0
Rm9ybWF0cyBpbWFnZUxpc3RGb3JtYXRzU3RvcmFnZTsKICAgICBjb25zdCB2b2lkICppbWFnZUNy
ZWF0ZUluZm9QTmV4dCA9IHZrOjpJbWFnZUhlbHBlcjo6RGVyaXZlQ3JlYXRlSW5mb1BOZXh0KAot
ICAgICAgICBkaXNwbGF5VmssIGFjdHVhbEltYWdlRm9ybWF0SUQsICZleHRlcm5hbE1lbW9yeUlt
YWdlQ3JlYXRlSW5mbywgJmltYWdlRm9ybWF0TGlzdEluZm9TdG9yYWdlLAorICAgICAgICBkaXNw
bGF5VmssIGFjdHVhbEltYWdlRm9ybWF0SUQsICZleHRlcm5hbE1lbW9yeUltYWdlQ3JlYXRlSW5m
bywgJmltYWdlRm9ybWF0TGlzdENyZWF0ZUluZm8sCiAgICAgICAgICZpbWFnZUxpc3RGb3JtYXRz
U3RvcmFnZSwgJmNyZWF0ZUZsYWdzKTsKIAorICAgIGlmICghRmluZFN1cHBvcnRlZEZsYWdzRm9y
Rm9ybWF0KHJlbmRlcmVyLCB2dWxrYW5Gb3JtYXQsIHBsYW5lME1vZGlmaWVyLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGltYWdlRm9ybWF0TGlzdENyZWF0ZUluZm8sICZ1
c2FnZUZsYWdzLCAmY3JlYXRlRmxhZ3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgJmltYWdlRm9ybWF0UHJvcGVydGllcykpCisgICAgeworICAgICAgICAvLyBUaGUgaW1h
Z2UgaXMgY29tcGxldGVseSB1bnVzYWJsZS4KKyAgICAgICAgQU5HTEVfVktfQ0hFQ0soZGlzcGxh
eVZrLCBmYWxzZSwgVktfRVJST1JfRk9STUFUX05PVF9TVVBQT1JURUQpOworICAgIH0KKyAgICBt
UmVuZGVyYWJsZSAgPSB1c2FnZUZsYWdzICYga1JlbmRlclVzYWdlOworICAgIG1UZXh0dXJlYWJs
ZSA9IHVzYWdlRmxhZ3MgJiBrVGV4dHVyZVVzYWdlOworCisgICAgLy8gTWFrZSBzdXJlIGltYWdl
IHdpZHRoL2hlaWdodC9zYW1wbGVzIGFyZSB3aXRoaW4gYWxsb3dlZCByYW5nZSBhbmQgdGhlIGlt
YWdlIGlzIGltcG9ydGFibGUuCisgICAgY29uc3QgYm9vbCBpc1dpZHRoVmFsaWQgPSBzdGF0aWNf
Y2FzdDx1aW50MzJfdD4obVNpemUud2lkdGgpIDw9CisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBpbWFnZUZvcm1hdFByb3BlcnRpZXMuaW1hZ2VGb3JtYXRQcm9wZXJ0aWVzLm1heEV4dGVu
dC53aWR0aDsKKyAgICBjb25zdCBib29sIGlzSGVpZ2h0VmFsaWQgPSBzdGF0aWNfY2FzdDx1aW50
MzJfdD4obVNpemUuaGVpZ2h0KSA8PQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlt
YWdlRm9ybWF0UHJvcGVydGllcy5pbWFnZUZvcm1hdFByb3BlcnRpZXMubWF4RXh0ZW50LmhlaWdo
dDsKKyAgICBjb25zdCBib29sIGlzU2FtcGxlQ291bnRWYWxpZCA9CisgICAgICAgIChpbWFnZUZv
cm1hdFByb3BlcnRpZXMuaW1hZ2VGb3JtYXRQcm9wZXJ0aWVzLnNhbXBsZUNvdW50cyAmIFZLX1NB
TVBMRV9DT1VOVF8xX0JJVCkgIT0gMDsKKyAgICBjb25zdCBib29sIGlzTWVtb3J5SW1wb3J0YWJs
ZSA9CisgICAgICAgIChleHRlcm5hbEZvcm1hdFByb3BlcnRpZXMuZXh0ZXJuYWxNZW1vcnlQcm9w
ZXJ0aWVzLmV4dGVybmFsTWVtb3J5RmVhdHVyZXMgJgorICAgICAgICAgVktfRVhURVJOQUxfTUVN
T1JZX0ZFQVRVUkVfSU1QT1JUQUJMRV9CSVQpICE9IDA7CisgICAgQU5HTEVfVktfQ0hFQ0soZGlz
cGxheVZrLAorICAgICAgICAgICAgICAgICAgIGlzV2lkdGhWYWxpZCAmJiBpc0hlaWdodFZhbGlk
ICYmIGlzU2FtcGxlQ291bnRWYWxpZCAmJiBpc01lbW9yeUltcG9ydGFibGUsCisgICAgICAgICAg
ICAgICAgICAgVktfRVJST1JfSU5DT01QQVRJQkxFX0RSSVZFUik7CisKICAgICAvLyBDcmVhdGUg
dGhlIGltYWdlCiAgICAgbUltYWdlID0gbmV3IHZrOjpJbWFnZUhlbHBlcigpOwogCkBAIC00ODks
OCArNTQ1LDkgQEAgYW5nbGU6OlJlc3VsdCBEbWFCdWZJbWFnZVNpYmxpbmdWa0xpbnV4Ojppbml0
SW1wbChEaXNwbGF5VmsgKmRpc3BsYXlWaykKICAgICB9CiAKICAgICBBbGxvY2F0ZUluZm8gYWxs
b2NhdGVJbmZvOwotICAgIGNvbnN0IHVpbnQzMl90IGFsbG9jYXRlSW5mb0NvdW50ID0gR2V0QWxs
b2NhdGVJbmZvKAotICAgICAgICBtQXR0cmlicywgbUltYWdlLT5nZXRJbWFnZSgpLmdldEhhbmRs
ZSgpLCBwbGFuZUNvdW50LCBtb2RpZmllclByb3BlcnRpZXMsICZhbGxvY2F0ZUluZm8pOworICAg
IHVpbnQzMl90IGFsbG9jYXRlSW5mb0NvdW50OworICAgIEFOR0xFX1RSWShHZXRBbGxvY2F0ZUlu
Zm8obUF0dHJpYnMsIG1JbWFnZS0+Z2V0SW1hZ2UoKS5nZXRIYW5kbGUoKSwgcGxhbmVDb3VudCwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1vZGlmaWVyUHJvcGVydGllcywgJmFsbG9j
YXRlSW5mbywgJmFsbG9jYXRlSW5mb0NvdW50KSk7CiAKICAgICByZXR1cm4gbUltYWdlLT5pbml0
RXh0ZXJuYWxNZW1vcnkoCiAgICAgICAgIGRpc3BsYXlWaywgcmVuZGVyZXItPmdldE1lbW9yeVBy
b3BlcnRpZXMoKSwgZXh0ZXJuYWxNZW1vcnlSZXF1aXJlbWVudHMsIGFsbG9jYXRlSW5mb0NvdW50
LApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRl
cmVyL3Z1bGthbi9saW51eC94Y2IvRGlzcGxheVZrWGNiLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL2xpbnV4L3hjYi9EaXNwbGF5VmtYY2Iu
aAppbmRleCBmN2Y1Y2QzN2EzMDM3ZWIzNjc5ZTk3MzdjMzU3NGRjNDgwZTg5MDY4Li45ZmM4YzE3
NGVhNDNiOWU2MzYxNzMzY2FmOTQ3ZjcwNDRmOTM4ZTc5IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL2xpbnV4L3hjYi9EaXNw
bGF5VmtYY2IuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVu
ZGVyZXIvdnVsa2FuL2xpbnV4L3hjYi9EaXNwbGF5VmtYY2IuaApAQCAtMzYsNiArMzYsOCBAQCBj
bGFzcyBEaXNwbGF5VmtYY2IgOiBwdWJsaWMgRGlzcGxheVZrTGludXgKICAgICBjb25zdCBjaGFy
ICpnZXRXU0lFeHRlbnNpb24oKSBjb25zdCBvdmVycmlkZTsKICAgICBhbmdsZTo6UmVzdWx0IHdh
aXROYXRpdmVJbXBsKCkgb3ZlcnJpZGU7CiAKKyAgICBib29sIGlzWDExKCkgY29uc3Qgb3ZlcnJp
ZGUgeyByZXR1cm4gdHJ1ZTsgfQorCiAgIHByaXZhdGU6CiAgICAgeGNiX2Nvbm5lY3Rpb25fdCAq
bVhjYkNvbm5lY3Rpb247CiAgICAgLy8gSWYgdGhlcmUgaXMgbm8gWCBEaXNwbGF5LCBvYnZpb3Vz
bHkgaXQncyBpbXBvc3NpYmxlIHRvIGNvbm5lY3QgdG8gaXQgd2l0aCBYY2IsCmRpZmYgLS1naXQg
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL21h
Yy9XaW5kb3dTdXJmYWNlVmtNYWMubW0gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGli
QU5HTEUvcmVuZGVyZXIvdnVsa2FuL21hYy9XaW5kb3dTdXJmYWNlVmtNYWMubW0KaW5kZXggNDQy
YWEwZGM1ZGNlYzY4NGFhYjljYjc1NTEyODVkZmVkMzA4ZTMzYi4uYWU5YTJiMTU2YmUyOGMyMTFh
MTFiYjkxNWZkOTdhMjQzY2M1NWZmYiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi9tYWMvV2luZG93U3VyZmFjZVZrTWFjLm1t
CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxr
YW4vbWFjL1dpbmRvd1N1cmZhY2VWa01hYy5tbQpAQCAtMzcsNyArMzcsNyBAQCBhbmdsZTo6UmVz
dWx0IFdpbmRvd1N1cmZhY2VWa01hYzo6Y3JlYXRlU3VyZmFjZVZrKHZrOjpDb250ZXh0ICpjb250
ZXh0LCBnbDo6RXh0ZQogICAgIENBTGF5ZXIgKmxheWVyID0gcmVpbnRlcnByZXRfY2FzdDxDQUxh
eWVyICo+KG1OYXRpdmVXaW5kb3dUeXBlKTsKIAogICAgIG1NZXRhbExheWVyICAgICAgICA9IFtb
Q0FNZXRhbExheWVyIGFsbG9jXSBpbml0XTsKLSAgICBtTWV0YWxMYXllci5mcmFtZSAgPSBsYXll
ci5mcmFtZTsKKyAgICBtTWV0YWxMYXllci5mcmFtZSAgPSBDR1JlY3RNYWtlKDAsIDAsIGxheWVy
LmZyYW1lLnNpemUud2lkdGgsIGxheWVyLmZyYW1lLnNpemUuaGVpZ2h0KTsKICAgICBtTWV0YWxM
YXllci5kZXZpY2UgPSBtTWV0YWxEZXZpY2U7CiAgICAgbU1ldGFsTGF5ZXIuZHJhd2FibGVTaXpl
ID0KICAgICAgICAgQ0dTaXplTWFrZShtTWV0YWxMYXllci5ib3VuZHMuc2l6ZS53aWR0aCAqIG1N
ZXRhbExheWVyLmNvbnRlbnRzU2NhbGUsCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL3ZrX2NhY2hlX3V0aWxzLmNwcCBiL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vdmtfY2Fj
aGVfdXRpbHMuY3BwCmluZGV4IDU2Y2VmZTg4Y2MxMzVhZGY0ZGQ2MzRhOGViYzA2YjE5NjgxYmM4
ZWUuLmI0MmVmYmYzMDYwZTdjNWJjZGRiZjVlMzI5MDYyODYyN2Y4MGUwMDAgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vdmtf
Y2FjaGVfdXRpbHMuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdM
RS9yZW5kZXJlci92dWxrYW4vdmtfY2FjaGVfdXRpbHMuY3BwCkBAIC03NCwxMiArNzQsNTEgQEAg
dWludDhfdCBQYWNrR0xCbGVuZE9wKEdMZW51bSBibGVuZE9wKQogICAgICAgICAgICAgcmV0dXJu
IHN0YXRpY19jYXN0PHVpbnQ4X3Q+KFZLX0JMRU5EX09QX01JTik7CiAgICAgICAgIGNhc2UgR0xf
TUFYOgogICAgICAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PHVpbnQ4X3Q+KFZLX0JMRU5EX09Q
X01BWCk7CisgICAgICAgIGNhc2UgR0xfTVVMVElQTFlfS0hSOgorICAgICAgICAgICAgcmV0dXJu
IHN0YXRpY19jYXN0PHVpbnQ4X3Q+KFZLX0JMRU5EX09QX01VTFRJUExZX0VYVCAtIFZLX0JMRU5E
X09QX1pFUk9fRVhUKTsKKyAgICAgICAgY2FzZSBHTF9TQ1JFRU5fS0hSOgorICAgICAgICAgICAg
cmV0dXJuIHN0YXRpY19jYXN0PHVpbnQ4X3Q+KFZLX0JMRU5EX09QX1NDUkVFTl9FWFQgLSBWS19C
TEVORF9PUF9aRVJPX0VYVCk7CisgICAgICAgIGNhc2UgR0xfT1ZFUkxBWV9LSFI6CisgICAgICAg
ICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8dWludDhfdD4oVktfQkxFTkRfT1BfT1ZFUkxBWV9FWFQg
LSBWS19CTEVORF9PUF9aRVJPX0VYVCk7CisgICAgICAgIGNhc2UgR0xfREFSS0VOX0tIUjoKKyAg
ICAgICAgICAgIHJldHVybiBzdGF0aWNfY2FzdDx1aW50OF90PihWS19CTEVORF9PUF9EQVJLRU5f
RVhUIC0gVktfQkxFTkRfT1BfWkVST19FWFQpOworICAgICAgICBjYXNlIEdMX0xJR0hURU5fS0hS
OgorICAgICAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PHVpbnQ4X3Q+KFZLX0JMRU5EX09QX0xJ
R0hURU5fRVhUIC0gVktfQkxFTkRfT1BfWkVST19FWFQpOworICAgICAgICBjYXNlIEdMX0NPTE9S
RE9ER0VfS0hSOgorICAgICAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PHVpbnQ4X3Q+KFZLX0JM
RU5EX09QX0NPTE9SRE9ER0VfRVhUIC0gVktfQkxFTkRfT1BfWkVST19FWFQpOworICAgICAgICBj
YXNlIEdMX0NPTE9SQlVSTl9LSFI6CisgICAgICAgICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8dWlu
dDhfdD4oVktfQkxFTkRfT1BfQ09MT1JCVVJOX0VYVCAtIFZLX0JMRU5EX09QX1pFUk9fRVhUKTsK
KyAgICAgICAgY2FzZSBHTF9IQVJETElHSFRfS0hSOgorICAgICAgICAgICAgcmV0dXJuIHN0YXRp
Y19jYXN0PHVpbnQ4X3Q+KFZLX0JMRU5EX09QX0hBUkRMSUdIVF9FWFQgLSBWS19CTEVORF9PUF9a
RVJPX0VYVCk7CisgICAgICAgIGNhc2UgR0xfU09GVExJR0hUX0tIUjoKKyAgICAgICAgICAgIHJl
dHVybiBzdGF0aWNfY2FzdDx1aW50OF90PihWS19CTEVORF9PUF9TT0ZUTElHSFRfRVhUIC0gVktf
QkxFTkRfT1BfWkVST19FWFQpOworICAgICAgICBjYXNlIEdMX0RJRkZFUkVOQ0VfS0hSOgorICAg
ICAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PHVpbnQ4X3Q+KFZLX0JMRU5EX09QX0RJRkZFUkVO
Q0VfRVhUIC0gVktfQkxFTkRfT1BfWkVST19FWFQpOworICAgICAgICBjYXNlIEdMX0VYQ0xVU0lP
Tl9LSFI6CisgICAgICAgICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8dWludDhfdD4oVktfQkxFTkRf
T1BfRVhDTFVTSU9OX0VYVCAtIFZLX0JMRU5EX09QX1pFUk9fRVhUKTsKKyAgICAgICAgY2FzZSBH
TF9IU0xfSFVFX0tIUjoKKyAgICAgICAgICAgIHJldHVybiBzdGF0aWNfY2FzdDx1aW50OF90PihW
S19CTEVORF9PUF9IU0xfSFVFX0VYVCAtIFZLX0JMRU5EX09QX1pFUk9fRVhUKTsKKyAgICAgICAg
Y2FzZSBHTF9IU0xfU0FUVVJBVElPTl9LSFI6CisgICAgICAgICAgICByZXR1cm4gc3RhdGljX2Nh
c3Q8dWludDhfdD4oVktfQkxFTkRfT1BfSFNMX1NBVFVSQVRJT05fRVhUIC0gVktfQkxFTkRfT1Bf
WkVST19FWFQpOworICAgICAgICBjYXNlIEdMX0hTTF9DT0xPUl9LSFI6CisgICAgICAgICAgICBy
ZXR1cm4gc3RhdGljX2Nhc3Q8dWludDhfdD4oVktfQkxFTkRfT1BfSFNMX0NPTE9SX0VYVCAtIFZL
X0JMRU5EX09QX1pFUk9fRVhUKTsKKyAgICAgICAgY2FzZSBHTF9IU0xfTFVNSU5PU0lUWV9LSFI6
CisgICAgICAgICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8dWludDhfdD4oVktfQkxFTkRfT1BfSFNM
X0xVTUlOT1NJVFlfRVhUIC0gVktfQkxFTkRfT1BfWkVST19FWFQpOwogICAgICAgICBkZWZhdWx0
OgogICAgICAgICAgICAgVU5SRUFDSEFCTEUoKTsKICAgICAgICAgICAgIHJldHVybiAwOwogICAg
IH0KIH0KIAorVmtCbGVuZE9wIFVucGFja0JsZW5kT3AodWludDhfdCBwYWNrZWRCbGVuZE9wKQor
eworICAgIGlmIChwYWNrZWRCbGVuZE9wIDw9IFZLX0JMRU5EX09QX01BWCkKKyAgICB7CisgICAg
ICAgIHJldHVybiBzdGF0aWNfY2FzdDxWa0JsZW5kT3A+KHBhY2tlZEJsZW5kT3ApOworICAgIH0K
KyAgICByZXR1cm4gc3RhdGljX2Nhc3Q8VmtCbGVuZE9wPihwYWNrZWRCbGVuZE9wICsgVktfQkxF
TkRfT1BfWkVST19FWFQpOworfQorCiB1aW50OF90IFBhY2tHTEJsZW5kRmFjdG9yKEdMZW51bSBi
bGVuZEZhY3RvcikKIHsKICAgICBzd2l0Y2ggKGJsZW5kRmFjdG9yKQpAQCAtMjg0LDEwICszMjMs
MTAgQEAgdm9pZCBVbnBhY2tCbGVuZEF0dGFjaG1lbnRTdGF0ZShjb25zdCBQYWNrZWRDb2xvckJs
ZW5kQXR0YWNobWVudFN0YXRlICZwYWNrZWRTdGEKIHsKICAgICBzdGF0ZU91dC0+c3JjQ29sb3JC
bGVuZEZhY3RvciA9IHN0YXRpY19jYXN0PFZrQmxlbmRGYWN0b3I+KHBhY2tlZFN0YXRlLnNyY0Nv
bG9yQmxlbmRGYWN0b3IpOwogICAgIHN0YXRlT3V0LT5kc3RDb2xvckJsZW5kRmFjdG9yID0gc3Rh
dGljX2Nhc3Q8VmtCbGVuZEZhY3Rvcj4ocGFja2VkU3RhdGUuZHN0Q29sb3JCbGVuZEZhY3Rvcik7
Ci0gICAgc3RhdGVPdXQtPmNvbG9yQmxlbmRPcCAgICAgICAgPSBzdGF0aWNfY2FzdDxWa0JsZW5k
T3A+KHBhY2tlZFN0YXRlLmNvbG9yQmxlbmRPcCk7CisgICAgc3RhdGVPdXQtPmNvbG9yQmxlbmRP
cCAgICAgICAgPSBVbnBhY2tCbGVuZE9wKHBhY2tlZFN0YXRlLmNvbG9yQmxlbmRPcCk7CiAgICAg
c3RhdGVPdXQtPnNyY0FscGhhQmxlbmRGYWN0b3IgPSBzdGF0aWNfY2FzdDxWa0JsZW5kRmFjdG9y
PihwYWNrZWRTdGF0ZS5zcmNBbHBoYUJsZW5kRmFjdG9yKTsKICAgICBzdGF0ZU91dC0+ZHN0QWxw
aGFCbGVuZEZhY3RvciA9IHN0YXRpY19jYXN0PFZrQmxlbmRGYWN0b3I+KHBhY2tlZFN0YXRlLmRz
dEFscGhhQmxlbmRGYWN0b3IpOwotICAgIHN0YXRlT3V0LT5hbHBoYUJsZW5kT3AgICAgICAgID0g
c3RhdGljX2Nhc3Q8VmtCbGVuZE9wPihwYWNrZWRTdGF0ZS5hbHBoYUJsZW5kT3ApOworICAgIHN0
YXRlT3V0LT5hbHBoYUJsZW5kT3AgICAgICAgID0gVW5wYWNrQmxlbmRPcChwYWNrZWRTdGF0ZS5h
bHBoYUJsZW5kT3ApOwogfQogCiB2b2lkIFNldFBpcGVsaW5lU2hhZGVyU3RhZ2VJbmZvKGNvbnN0
IFZrU3RydWN0dXJlVHlwZSB0eXBlLApAQCAtNTk0LDIwICs2MzMsNTEgQEAgdm9pZCBJbml0aWFs
aXplVW5yZXNvbHZlU3VicGFzc0RlcGVuZGVuY2llcyhjb25zdCBTdWJwYXNzVmVjdG9yPFZrU3Vi
cGFzc0Rlc2NyaXAKICAgICBkZXBlbmRlbmN5LT5kZXBlbmRlbmN5RmxhZ3MgPSBWS19ERVBFTkRF
TkNZX0JZX1JFR0lPTl9CSVQ7CiB9CiAKLXZvaWQgSW5pdGlhbGl6ZUlucHV0QXR0YWNobWVudFN1
YnBhc3NEZXBlbmRlbmNpZXMoCi0gICAgc3RkOjp2ZWN0b3I8VmtTdWJwYXNzRGVwZW5kZW5jeT4g
KnN1YnBhc3NEZXBlbmRlbmNpZXMsCi0gICAgdWludDMyX3Qgc3VicGFzc0luZGV4KQorLy8gZ2xG
cmFtZWJ1ZmZlckZldGNoQmFycmllckVYVCBhbmQgZ2xCbGVuZEJhcnJpZXJLSFIgcmVxdWlyZSBh
IHBpcGVsaW5lIGJhcnJpZXIgdG8gYmUgaW5zZXJ0ZWQgaW4KKy8vIHRoZSByZW5kZXIgcGFzcy4g
IFRoaXMgcmVxdWlyZXMgYSBzdWJwYXNzIHNlbGYtZGVwZW5kZW5jeS4KKy8vCisvLyBGb3IgZnJh
bWVidWZmZXIgZmV0Y2g6CisvLworLy8gICAgIHNyY1N0YWdlID0gVktfUElQRUxJTkVfU1RBR0Vf
Q09MT1JfQVRUQUNITUVOVF9PVVRQVVRfQklUCisvLyAgICAgZHN0U3RhZ2UgPSBWS19QSVBFTElO
RV9TVEFHRV9GUkFHTUVOVF9TSEFERVJfQklUCisvLyAgICAgc3JjQWNjZXNzID0gVktfQUNDRVNT
X0NPTE9SX0FUVEFDSE1FTlRfV1JJVEVfQklUCisvLyAgICAgZHN0QWNjZXNzID0gVktfQUNDRVNT
X0lOUFVUX0FUVEFDSE1FTlRfUkVBRF9CSVQKKy8vCisvLyBGb3IgYWR2YW5jZWQgYmxlbmQ6Cisv
LworLy8gICAgIHNyY1N0YWdlID0gVktfUElQRUxJTkVfU1RBR0VfQ09MT1JfQVRUQUNITUVOVF9P
VVRQVVRfQklUCisvLyAgICAgZHN0U3RhZ2UgPSBWS19QSVBFTElORV9TVEFHRV9DT0xPUl9BVFRB
Q0hNRU5UX09VVFBVVF9CSVQKKy8vICAgICBzcmNBY2Nlc3MgPSBWS19BQ0NFU1NfQ09MT1JfQVRU
QUNITUVOVF9XUklURV9CSVQKKy8vICAgICBkc3RBY2Nlc3MgPSBWS19BQ0NFU1NfQ09MT1JfQVRU
QUNITUVOVF9SRUFEX05PTkNPSEVSRU5UX0JJVF9FWFQKKy8vCisvLyBTdWJwYXNzIGRlcGVuZGVu
Y2llcyBjYW5ub3QgYmUgYWRkZWQgYWZ0ZXIgdGhlIGZhY3QgYXQgdGhlIGVuZCBvZiB0aGUgcmVu
ZGVyIHBhc3MgZHVlIHRvIHJlbmRlcgorLy8gcGFzcyBjb21wYXRpYmlsaXR5IHJ1bGVzLiAgQU5H
TEUgc3BlY2lmaWVzIGEgc3VicGFzcyBzZWxmLWRlcGVuZGVuY3kgd2l0aCB0aGUgYWJvdmUgc3Rh
Z2UvYWNjZXNzCisvLyBtYXNrcyBpbiBwcmVwYXJhdGlvbiBvZiBwb3RlbnRpYWwgZnJhbWVidWZm
ZXIgZmV0Y2ggYW5kIGFkdmFuY2VkIGJsZW5kIGJhcnJpZXJzLiAgVGhpcyBpcyBrbm93bgorLy8g
bm90IHRvIGFkZCBhbnkgb3ZlcmhlYWQgb24gYW55IGhhcmR3YXJlIHdlIGhhdmUgYmVlbiBhYmxl
IHRvIGdhdGhlciBpbmZvcm1hdGlvbiBmcm9tLgordm9pZCBJbml0aWFsaXplRGVmYXVsdFN1YnBh
c3NTZWxmRGVwZW5kZW5jaWVzKHZrOjpDb250ZXh0ICpjb250ZXh0LAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFJlbmRlclBhc3NEZXNjICZkZXNj
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90
IHN1YnBhc3NJbmRleCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBzdGQ6OnZlY3RvcjxWa1N1YnBhc3NEZXBlbmRlbmN5PiAqc3VicGFzc0RlcGVuZGVuY2ll
cykKIHsKICAgICBzdWJwYXNzRGVwZW5kZW5jaWVzLT5lbXBsYWNlX2JhY2soKTsKICAgICBWa1N1
YnBhc3NEZXBlbmRlbmN5ICpkZXBlbmRlbmN5ID0gJnN1YnBhc3NEZXBlbmRlbmNpZXMtPmJhY2so
KTsKIAotICAgIGRlcGVuZGVuY3ktPnNyY1N1YnBhc3MgICAgICA9IHN1YnBhc3NJbmRleDsKLSAg
ICBkZXBlbmRlbmN5LT5kc3RTdWJwYXNzICAgICAgPSBzdWJwYXNzSW5kZXg7Ci0gICAgZGVwZW5k
ZW5jeS0+c3JjU3RhZ2VNYXNrICAgID0gVktfUElQRUxJTkVfU1RBR0VfQ09MT1JfQVRUQUNITUVO
VF9PVVRQVVRfQklUOwotICAgIGRlcGVuZGVuY3ktPmRzdFN0YWdlTWFzayAgICA9IFZLX1BJUEVM
SU5FX1NUQUdFX0ZSQUdNRU5UX1NIQURFUl9CSVQ7Ci0gICAgZGVwZW5kZW5jeS0+c3JjQWNjZXNz
TWFzayAgID0gVktfQUNDRVNTX0NPTE9SX0FUVEFDSE1FTlRfV1JJVEVfQklUOwotICAgIGRlcGVu
ZGVuY3ktPmRzdEFjY2Vzc01hc2sgICA9IFZLX0FDQ0VTU19JTlBVVF9BVFRBQ0hNRU5UX1JFQURf
QklUOworICAgIGRlcGVuZGVuY3ktPnNyY1N1YnBhc3MgICA9IHN1YnBhc3NJbmRleDsKKyAgICBk
ZXBlbmRlbmN5LT5kc3RTdWJwYXNzICAgPSBzdWJwYXNzSW5kZXg7CisgICAgZGVwZW5kZW5jeS0+
c3JjU3RhZ2VNYXNrID0gVktfUElQRUxJTkVfU1RBR0VfQ09MT1JfQVRUQUNITUVOVF9PVVRQVVRf
QklUOworICAgIGRlcGVuZGVuY3ktPmRzdFN0YWdlTWFzayA9CisgICAgICAgIFZLX1BJUEVMSU5F
X1NUQUdFX0ZSQUdNRU5UX1NIQURFUl9CSVQgfCBWS19QSVBFTElORV9TVEFHRV9DT0xPUl9BVFRB
Q0hNRU5UX09VVFBVVF9CSVQ7CisgICAgZGVwZW5kZW5jeS0+c3JjQWNjZXNzTWFzayA9IFZLX0FD
Q0VTU19DT0xPUl9BVFRBQ0hNRU5UX1dSSVRFX0JJVDsKKyAgICBkZXBlbmRlbmN5LT5kc3RBY2Nl
c3NNYXNrID0gVktfQUNDRVNTX0lOUFVUX0FUVEFDSE1FTlRfUkVBRF9CSVQ7CisgICAgaWYgKGNv
bnRleHQtPmdldFJlbmRlcmVyKCktPmdldEZlYXR1cmVzKCkuc3VwcG9ydHNCbGVuZE9wZXJhdGlv
bkFkdmFuY2VkLmVuYWJsZWQpCisgICAgeworICAgICAgICBkZXBlbmRlbmN5LT5kc3RBY2Nlc3NN
YXNrIHw9IFZLX0FDQ0VTU19DT0xPUl9BVFRBQ0hNRU5UX1JFQURfTk9OQ09IRVJFTlRfQklUX0VY
VDsKKyAgICB9CiAgICAgZGVwZW5kZW5jeS0+ZGVwZW5kZW5jeUZsYWdzID0gVktfREVQRU5ERU5D
WV9CWV9SRUdJT05fQklUOworICAgIGlmIChkZXNjLnZpZXdDb3VudCgpID4gMCkKKyAgICB7Cisg
ICAgICAgIGRlcGVuZGVuY3ktPmRlcGVuZGVuY3lGbGFncyB8PSBWS19ERVBFTkRFTkNZX1ZJRVdf
TE9DQUxfQklUOworICAgIH0KIH0KIAogdm9pZCBUb0F0dGFjaG1lbnREZXNjaXB0aW9uMihjb25z
dCBWa0F0dGFjaG1lbnREZXNjcmlwdGlvbiAmZGVzYywKQEAgLTEyMDMsMTEgKzEyNzMsOSBAQCBh
bmdsZTo6UmVzdWx0IEluaXRpYWxpemVSZW5kZXJQYXNzRnJvbURlc2MoQ29udGV4dFZrICpjb250
ZXh0VmssCiAgICAgICAgICAgICBkZXNjLmhhc0RlcHRoU3RlbmNpbFVucmVzb2x2ZUF0dGFjaG1l
bnQoKSwgJnN1YnBhc3NEZXBlbmRlbmNpZXMpOwogICAgIH0KIAotICAgIGlmIChuZWVkSW5wdXRB
dHRhY2htZW50cykKLSAgICB7Ci0gICAgICAgIHVpbnQzMl90IGRyYXdTdWJwYXNzSW5kZXggPSBz
dGF0aWNfY2FzdDx1aW50MzJfdD4oc3VicGFzc0Rlc2Muc2l6ZSgpKSAtIDE7Ci0gICAgICAgIElu
aXRpYWxpemVJbnB1dEF0dGFjaG1lbnRTdWJwYXNzRGVwZW5kZW5jaWVzKCZzdWJwYXNzRGVwZW5k
ZW5jaWVzLCBkcmF3U3VicGFzc0luZGV4KTsKLSAgICB9CisgICAgY29uc3QgdWludDMyX3QgZHJh
d1N1YnBhc3NJbmRleCA9IHN0YXRpY19jYXN0PHVpbnQzMl90PihzdWJwYXNzRGVzYy5zaXplKCkp
IC0gMTsKKyAgICBJbml0aWFsaXplRGVmYXVsdFN1YnBhc3NTZWxmRGVwZW5kZW5jaWVzKGNvbnRl
eHRWaywgZGVzYywgZHJhd1N1YnBhc3NJbmRleCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICZzdWJwYXNzRGVwZW5kZW5jaWVzKTsKIAogICAgIFZrUmVuZGVy
UGFzc0NyZWF0ZUluZm8gY3JlYXRlSW5mbyA9IHt9OwogICAgIGNyZWF0ZUluZm8uc1R5cGUgICAg
ICAgICAgICAgICAgICA9IFZLX1NUUlVDVFVSRV9UWVBFX1JFTkRFUl9QQVNTX0NSRUFURV9JTkZP
OwpAQCAtMTI3OCw3ICsxMzQ2LDcgQEAgdm9pZCBHZXRSZW5kZXJQYXNzQW5kVXBkYXRlQ291bnRl
cnMoQ29udGV4dFZrICpjb250ZXh0VmssCiAgICAgKnJlbmRlclBhc3NPdXQgPSAmcmVuZGVyUGFz
c0hlbHBlci0+Z2V0UmVuZGVyUGFzcygpOwogICAgIGlmICh1cGRhdGVQZXJmQ291bnRlcnMpCiAg
ICAgewotICAgICAgICBQZXJmQ291bnRlcnMgJmNvdW50ZXJzICAgICAgICAgICAgICAgICAgID0g
Y29udGV4dFZrLT5nZXRQZXJmQ291bnRlcnMoKTsKKyAgICAgICAgYW5nbGU6OlZ1bGthblBlcmZD
b3VudGVycyAmY291bnRlcnMgICAgICA9IGNvbnRleHRWay0+Z2V0UGVyZkNvdW50ZXJzKCk7CiAg
ICAgICAgIGNvbnN0IFJlbmRlclBhc3NQZXJmQ291bnRlcnMgJnJwQ291bnRlcnMgPSByZW5kZXJQ
YXNzSGVscGVyLT5nZXRQZXJmQ291bnRlcnMoKTsKIAogICAgICAgICBjb3VudGVycy5kZXB0aENs
ZWFycyArPSBycENvdW50ZXJzLmRlcHRoQ2xlYXJzOwpAQCAtMjc1NCw2ICsyODIyLDE3IEBAIHZv
aWQgR3JhcGhpY3NQaXBlbGluZURlc2M6OnVwZGF0ZVJlbmRlclBhc3NEZXNjKEdyYXBoaWNzUGlw
ZWxpbmVUcmFuc2l0aW9uQml0cyAqCiAgICAgfQogfQogCit2b2lkIEdyYXBoaWNzUGlwZWxpbmVE
ZXNjOjpzZXRSZW5kZXJQYXNzU2FtcGxlQ291bnQoR0xpbnQgc2FtcGxlcykKK3sKKyAgICBtUmVu
ZGVyUGFzc0Rlc2Muc2V0U2FtcGxlcyhzYW1wbGVzKTsKK30KKwordm9pZCBHcmFwaGljc1BpcGVs
aW5lRGVzYzo6c2V0UmVuZGVyUGFzc0NvbG9yQXR0YWNobWVudEZvcm1hdChzaXplX3QgY29sb3JJ
bmRleEdMLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBhbmdsZTo6Rm9ybWF0SUQgZm9ybWF0SUQpCit7CisgICAgbVJlbmRlclBh
c3NEZXNjLnBhY2tDb2xvckF0dGFjaG1lbnQoY29sb3JJbmRleEdMLCBmb3JtYXRJRCk7Cit9CisK
IC8vIEF0dGFjaG1lbnRPcHNBcnJheSBpbXBsZW1lbnRhdGlvbi4KIEF0dGFjaG1lbnRPcHNBcnJh
eTo6QXR0YWNobWVudE9wc0FycmF5KCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vdmtfY2FjaGVfdXRpbHMuaCBiL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vdmtfY2Fj
aGVfdXRpbHMuaAppbmRleCAwYWI0NDc3ZGFiYWQ5NjBiNTE2MjU4ODExZTNmYWU5YzkzMDUwNjQ5
Li4zMDY4OTE0NTQwNDQzZWE2YzU0MjMxZjM5MDAxYzY2ZTFlNTI0MjlmIDEwMDY0NAotLS0gYS9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL3ZrX2Nh
Y2hlX3V0aWxzLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3Jl
bmRlcmVyL3Z1bGthbi92a19jYWNoZV91dGlscy5oCkBAIC02MzQsNiArNjM0LDggQEAgY2xhc3Mg
R3JhcGhpY3NQaXBlbGluZURlc2MgZmluYWwKICAgICB2b2lkIHNldFJlbmRlclBhc3NEZXNjKGNv
bnN0IFJlbmRlclBhc3NEZXNjICZyZW5kZXJQYXNzRGVzYyk7CiAgICAgdm9pZCB1cGRhdGVSZW5k
ZXJQYXNzRGVzYyhHcmFwaGljc1BpcGVsaW5lVHJhbnNpdGlvbkJpdHMgKnRyYW5zaXRpb24sCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBSZW5kZXJQYXNzRGVzYyAmcmVuZGVy
UGFzc0Rlc2MpOworICAgIHZvaWQgc2V0UmVuZGVyUGFzc1NhbXBsZUNvdW50KEdMaW50IHNhbXBs
ZXMpOworICAgIHZvaWQgc2V0UmVuZGVyUGFzc0NvbG9yQXR0YWNobWVudEZvcm1hdChzaXplX3Qg
Y29sb3JJbmRleEdMLCBhbmdsZTo6Rm9ybWF0SUQgZm9ybWF0SUQpOwogCiAgICAgLy8gQmxlbmQg
c3RhdGVzCiAgICAgdm9pZCBzZXRTaW5nbGVCbGVuZCh1aW50MzJfdCBjb2xvckluZGV4R0wsCkBA
IC0xMTQyLDYgKzExNDQsOCBAQCBjbGFzcyBEZXNjcmlwdG9yU2V0RGVzYwogCiAgICAgdm9pZCBy
ZXNldCgpIHsgbVBheWxvYWQuY2xlYXIoKTsgfQogCisgICAgc2l6ZV90IGdldEtleVNpemVCeXRl
cygpIGNvbnN0IHsgcmV0dXJuIG1QYXlsb2FkLnNpemUoKSAqIHNpemVvZih1aW50MzJfdCk7IH0K
KwogICAgIGJvb2wgb3BlcmF0b3I9PShjb25zdCBEZXNjcmlwdG9yU2V0RGVzYyAmb3RoZXIpIGNv
bnN0CiAgICAgewogICAgICAgICByZXR1cm4gKG1QYXlsb2FkLnNpemUoKSA9PSBvdGhlci5tUGF5
bG9hZC5zaXplKCkpICYmCkBAIC0xNzg5LDggKzE3OTMsOCBAQCBjbGFzcyBEcml2ZXJVbmlmb3Jt
c0Rlc2NyaXB0b3JTZXRDYWNoZSBmaW5hbAogICAgIHNpemVfdCBnZXRTaXplKCkgY29uc3QgeyBy
ZXR1cm4gbVBheWxvYWQuc2l6ZSgpOyB9CiAKICAgcHJpdmF0ZToKLSAgICBzdGF0aWMgY29uc3Rl
eHByIHVpbnQzMl90IGtGYXN0TWFwU2l6ZSA9IDE2OwotICAgIGFuZ2xlOjpGYXN0VW5vcmRlcmVk
TWFwPHVpbnQzMl90LCBWa0Rlc2NyaXB0b3JTZXQsIGtGYXN0TWFwU2l6ZT4gbVBheWxvYWQ7Cisg
ICAgc3RhdGljIGNvbnN0ZXhwciB1aW50MzJfdCBrRmxhdE1hcFNpemUgPSAxNjsKKyAgICBhbmds
ZTo6RmxhdFVub3JkZXJlZE1hcDx1aW50MzJfdCwgVmtEZXNjcmlwdG9yU2V0LCBrRmxhdE1hcFNp
emU+IG1QYXlsb2FkOwogfTsKIAogLy8gVGVtcGxhdGVkIERlc2NyaXB0b3JzIENhY2hlCkBAIC0x
ODI3LDYgKzE4MzEsMTcgQEAgY2xhc3MgRGVzY3JpcHRvclNldENhY2hlIGZpbmFsIDogYW5nbGU6
Ok5vbkNvcHlhYmxlCiAgICAgICAgIGFjY3VtdWxhdG9yLT5hY2N1bXVsYXRlQ2FjaGVTdGF0cyhj
YWNoZVR5cGUsIG1DYWNoZVN0YXRzKTsKICAgICB9CiAKKyAgICBzaXplX3QgZ2V0VG90YWxDYWNo
ZUtleVNpemVCeXRlcygpIGNvbnN0CisgICAgeworICAgICAgICBzaXplX3QgdG90YWxTaXplID0g
MDsKKyAgICAgICAgZm9yIChjb25zdCBhdXRvICZpdGVyIDogbVBheWxvYWQpCisgICAgICAgIHsK
KyAgICAgICAgICAgIGNvbnN0IHZrOjpEZXNjcmlwdG9yU2V0RGVzYyAmZGVzYyA9IGl0ZXIuZmly
c3Q7CisgICAgICAgICAgICB0b3RhbFNpemUgKz0gZGVzYy5nZXRLZXlTaXplQnl0ZXMoKTsKKyAg
ICAgICAgfQorICAgICAgICByZXR1cm4gdG90YWxTaXplOworICAgIH0KKwogICBwcml2YXRlOgog
ICAgIGFuZ2xlOjpIYXNoTWFwPHZrOjpEZXNjcmlwdG9yU2V0RGVzYywgVmtEZXNjcmlwdG9yU2V0
PiBtUGF5bG9hZDsKICAgICBDYWNoZVN0YXRzIG1DYWNoZVN0YXRzOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi92a19jYXBz
X3V0aWxzLmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJl
ci92dWxrYW4vdmtfY2Fwc191dGlscy5jcHAKaW5kZXggYTIzNjA2MGVkZTkyOTM5OGQ2NzU3NzBi
M2IzOGQ1NzAwODFkYjczYy4uYzQ4ZTM5ZDAyMDMwYTVhZDcwZThiMjlmYjE4OTk5ZTI1ZjBiMGQ3
NCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRl
cmVyL3Z1bGthbi92a19jYXBzX3V0aWxzLmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL3ZrX2NhcHNfdXRpbHMuY3BwCkBAIC01MjQs
NiArNTI0LDE2IEBAIHZvaWQgUmVuZGVyZXJWazo6ZW5zdXJlQ2Fwc0luaXRpYWxpemVkKCkgY29u
c3QKICAgICBtTmF0aXZlRXh0ZW5zaW9ucy5zYW1wbGVWYXJpYWJsZXNPRVMgPQogICAgICAgICBz
dXBwb3J0U2FtcGxlUmF0ZVNoYWRpbmcgJiYgdmtfZ2w6OkdldE1heFNhbXBsZUNvdW50KGtOb3RT
dXBwb3J0ZWRTYW1wbGVDb3VudHMpID09IDA7CiAKKyAgICAvLyBHTF9LSFJfYmxlbmRfZXF1YXRp
b25fYWR2YW5jZWQKKyAgICAvLyBXaGlsZSBhZHZhbmNlZCBibGVuZCBpcyBvbmx5IGFsbG93ZWQg
Zm9yIG9uZSBhdHRhY2htZW50LCB0aGF0IGNvdWxkIGJlIGFueSBhdHRhY2htZW50IGluZGV4Lgor
ICAgIC8vIFZLX0VYVF9ibGVuZF9vcGVyYXRpb25fYWR2YW5jZWQgcmVxdWlyZXMgdGhhdCB0aGUg
YXR0YWNobWVudCBpbmRleCBiZSBsZXNzIHRoYW4KKyAgICAvLyB8YWR2YW5jZWRCbGVuZE1heENv
bG9yQXR0YWNobWVudHN8LCB3aGljaCBtZWFucyB3ZSBjYW4gb25seSB0cml2aWFsbHkgdGFrZSBh
ZHZhbnRhZ2Ugb2YgdGhpcworICAgIC8vIGV4dGVuc2lvbiBpZiB8YWR2YW5jZWRCbGVuZE1heENv
bG9yQXR0YWNobWVudHMgPj0gbWF4X2RyYXdfYnVmZmVyc3wuCisgICAgbU5hdGl2ZUV4dGVuc2lv
bnMuYmxlbmRFcXVhdGlvbkFkdmFuY2VkS0hSID0KKyAgICAgICAgbUZlYXR1cmVzLnN1cHBvcnRz
QmxlbmRPcGVyYXRpb25BZHZhbmNlZC5lbmFibGVkICYmCisgICAgICAgIG1CbGVuZE9wZXJhdGlv
bkFkdmFuY2VkUHJvcGVydGllcy5hZHZhbmNlZEJsZW5kTWF4Q29sb3JBdHRhY2htZW50cyA+PQor
ICAgICAgICAgICAgZ2w6OklNUExFTUVOVEFUSU9OX01BWF9EUkFXX0JVRkZFUlM7CisKICAgICAv
LyBFbmFibGUgRVhUX3VucGFja19zdWJpbWFnZQogICAgIG1OYXRpdmVFeHRlbnNpb25zLnVucGFj
a1N1YmltYWdlRVhUID0gdHJ1ZTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi92a19oZWxwZXJzLmNwcCBiL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vdmtfaGVscGVycy5j
cHAKaW5kZXggZGI3YWIzZjZiZjY5MWU3YjI2OGFiNDk0NzhhY2Y3ZGI3M2M4OWYzZS4uZjlmMDdm
ODFlMTE3ZmIzMDQ2ZGYxNmQ1YmM3NDBkNGIwODFmMGQ2MyAxMDA2NDQKLS0tIGEvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi92a19oZWxwZXJzLmNw
cAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVs
a2FuL3ZrX2hlbHBlcnMuY3BwCkBAIC0xMDAxLDYgKzEwMDEsMjA4IEBAIHZvaWQgUGFja2VkQ2xl
YXJWYWx1ZXNBcnJheTo6c3RvcmVOb0RlcHRoU3RlbmNpbChQYWNrZWRBdHRhY2htZW50SW5kZXgg
aW5kZXgsCiAgICAgbVZhbHVlc1tpbmRleC5nZXQoKV0gPSBjbGVhclZhbHVlOwogfQogCisvLyBS
ZW5kZXJQYXNzQXR0YWNobWVudCBpbXBsZW1lbnRhdGlvbgorUmVuZGVyUGFzc0F0dGFjaG1lbnQ6
OlJlbmRlclBhc3NBdHRhY2htZW50KCkKK3sKKyAgICByZXNldCgpOworfQorCit2b2lkIFJlbmRl
clBhc3NBdHRhY2htZW50Ojppbml0KEltYWdlSGVscGVyICppbWFnZSwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgZ2w6OkxldmVsSW5kZXggbGV2ZWxJbmRleCwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgbGF5ZXJJbmRleCwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgdWludDMyX3QgbGF5ZXJDb3VudCwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgVmtJbWFnZUFzcGVjdEZsYWdCaXRzIGFzcGVjdCkKK3sKKyAgICBtSW1h
Z2UgICAgICA9IGltYWdlOworICAgIG1MZXZlbEluZGV4ID0gbGV2ZWxJbmRleDsKKyAgICBtTGF5
ZXJJbmRleCA9IGxheWVySW5kZXg7CisgICAgbUxheWVyQ291bnQgPSBsYXllckNvdW50OworICAg
IG1Bc3BlY3QgICAgID0gYXNwZWN0OworCisgICAgbUltYWdlLT5zZXRSZW5kZXJQYXNzVXNhZ2VG
bGFnKFJlbmRlclBhc3NVc2FnZTo6UmVuZGVyVGFyZ2V0QXR0YWNobWVudCk7Cit9CisKK3ZvaWQg
UmVuZGVyUGFzc0F0dGFjaG1lbnQ6OnJlc2V0KCkKK3sKKyAgICBtSW1hZ2UgPSBudWxscHRyOwor
CisgICAgbUFjY2VzcyA9IFJlc291cmNlQWNjZXNzOjpVbnVzZWQ7CisKKyAgICBtSW52YWxpZGF0
ZWRDbWRDb3VudCA9IGtJbmZpbml0ZUNtZENvdW50OworICAgIG1EaXNhYmxlZENtZENvdW50ICAg
ID0ga0luZmluaXRlQ21kQ291bnQ7CisgICAgbUludmFsaWRhdGVBcmVhICAgICAgPSBnbDo6UmVj
dGFuZ2xlKCk7Cit9CisKK3ZvaWQgUmVuZGVyUGFzc0F0dGFjaG1lbnQ6Om9uQWNjZXNzKFJlc291
cmNlQWNjZXNzIGFjY2VzcywgdWludDMyX3QgY3VycmVudENtZENvdW50KQoreworICAgIC8vIFVw
ZGF0ZSB0aGUgYWNjZXNzIGZvciBvcHRpbWl6aW5nIHRoaXMgcmVuZGVyIHBhc3MncyBsb2FkT3AK
KyAgICBVcGRhdGVBY2Nlc3MoJm1BY2Nlc3MsIGFjY2Vzcyk7CisKKyAgICAvLyBVcGRhdGUgdGhl
IGludmFsaWRhdGUgc3RhdGUgZm9yIG9wdGltaXppbmcgdGhpcyByZW5kZXIgcGFzcydzIHN0b3Jl
T3AKKyAgICBpZiAob25BY2Nlc3NJbXBsKGFjY2VzcywgY3VycmVudENtZENvdW50KSkKKyAgICB7
CisgICAgICAgIC8vIFRoZSBhdHRhY2htZW50IGlzIG5vIGxvbmdlciBpbnZhbGlkLCBzbyByZXN0
b3JlIGl0cyBjb250ZW50LgorICAgICAgICByZXN0b3JlQ29udGVudCgpOworICAgIH0KK30KKwor
dm9pZCBSZW5kZXJQYXNzQXR0YWNobWVudDo6aW52YWxpZGF0ZShjb25zdCBnbDo6UmVjdGFuZ2xl
ICZpbnZhbGlkYXRlQXJlYSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Ym9vbCBpc0F0dGFjaG1lbnRFbmFibGVkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICB1aW50MzJfdCBjdXJyZW50Q21kQ291bnQpCit7CisgICAgLy8gS2VlcCB0cmFjayBv
ZiB0aGUgY29tbWFuZCBjb3VudCBpbiB0aGUgcmVuZGVyIHBhc3MgYXQgdGhlIHRpbWUgb2YgaW52
YWxpZGF0aW9uLiAgSWYgdGhlcmUgYXJlCisgICAgLy8gbW9yZSBjb21tYW5kcyBpbiB0aGUgZnV0
dXJlLCBpbnZhbGlkYXRlIG11c3QgYmUgdW5kb25lLgorICAgIG1JbnZhbGlkYXRlZENtZENvdW50
ID0gY3VycmVudENtZENvdW50OworCisgICAgLy8gQWxzbyB0cmFjayB0aGUgY29tbWFuZCBjb3Vu
dCBpZiB0aGUgYXR0YWNobWVudCBpcyBjdXJyZW50bHkgZGlzYWJsZWQuCisgICAgbURpc2FibGVk
Q21kQ291bnQgPSBpc0F0dGFjaG1lbnRFbmFibGVkID8ga0luZmluaXRlQ21kQ291bnQgOiBjdXJy
ZW50Q21kQ291bnQ7CisKKyAgICAvLyBTZXQvZXh0ZW5kIHRoZSBpbnZhbGlkYXRlIGFyZWEuCisg
ICAgRXh0ZW5kUmVuZGVyUGFzc0ludmFsaWRhdGVBcmVhKGludmFsaWRhdGVBcmVhLCAmbUludmFs
aWRhdGVBcmVhKTsKK30KKwordm9pZCBSZW5kZXJQYXNzQXR0YWNobWVudDo6b25SZW5kZXJBcmVh
R3Jvd3RoKENvbnRleHRWayAqY29udGV4dFZrLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGNvbnN0IGdsOjpSZWN0YW5nbGUgJm5ld1JlbmRlckFyZWEpCit7
CisgICAgLy8gUmVtb3ZlIGludmFsaWRhdGUgaWYgaXQncyBubyBsb25nZXIgYXBwbGljYWJsZS4K
KyAgICBpZiAobUludmFsaWRhdGVBcmVhLmVtcHR5KCkgfHwgbUludmFsaWRhdGVBcmVhLmVuY2xv
c2VzKG5ld1JlbmRlckFyZWEpKQorICAgIHsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAg
IEFOR0xFX1ZLX1BFUkZfV0FSTklORyhjb250ZXh0VmssIEdMX0RFQlVHX1NFVkVSSVRZX0xPVywK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgIkludmFsaWRhdGVTdWJGcmFtZWJ1ZmZlciBkaXNj
YXJkZWQgZHVlIHRvIGluY3JlYXNlZCBzY2lzc29yIHJlZ2lvbiIpOworCisgICAgbUludmFsaWRh
dGVBcmVhICAgICAgPSBnbDo6UmVjdGFuZ2xlKCk7CisgICAgbUludmFsaWRhdGVkQ21kQ291bnQg
PSBrSW5maW5pdGVDbWRDb3VudDsKK30KKwordm9pZCBSZW5kZXJQYXNzQXR0YWNobWVudDo6Zmlu
YWxpemVMb2FkU3RvcmUoQ29udGV4dCAqY29udGV4dCwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IGN1cnJlbnRDbWRDb3VudCwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wgaGFzVW5yZXNvbHZlQXR0
YWNobWVudCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJl
bmRlclBhc3NMb2FkT3AgKmxvYWRPcCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFJlbmRlclBhc3NTdG9yZU9wICpzdG9yZU9wLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCAqaXNJbnZhbGlkYXRlZE91dCkKK3sK
KyAgICAvLyBFbnN1cmUgd2UgZG9uJ3Qgd3JpdGUgdG8gYSByZWFkLW9ubHkgYXR0YWNobWVudC4g
KFJlYWRPbmx5IC0+ICFXcml0ZSkKKyAgICBBU1NFUlQoIW1JbWFnZS0+aGFzUmVuZGVyUGFzc1Vz
YWdlRmxhZyhSZW5kZXJQYXNzVXNhZ2U6OlJlYWRPbmx5QXR0YWNobWVudCkgfHwKKyAgICAgICAg
ICAgbUFjY2VzcyAhPSBSZXNvdXJjZUFjY2Vzczo6V3JpdGUpOworCisgICAgLy8gSWYgdGhlIGF0
dGFjaG1lbnQgaXMgaW52YWxpZGF0ZWQsIHNraXAgdGhlIHN0b3JlIG9wLiAgSWYgd2UgYXJlIG5v
dCBsb2FkaW5nIG9yIGNsZWFyaW5nIHRoZQorICAgIC8vIGF0dGFjaG1lbnQgYW5kIHRoZSBhdHRh
Y2htZW50IGhhcyBub3QgYmVlbiB1c2VkLCBhdXRvLWludmFsaWRhdGUgaXQuCisgICAgY29uc3Qg
Ym9vbCBub3RMb2FkZWQgPSAqbG9hZE9wID09IFJlbmRlclBhc3NMb2FkT3A6OkRvbnRDYXJlICYm
ICFoYXNVbnJlc29sdmVBdHRhY2htZW50OworICAgIGlmIChpc0ludmFsaWRhdGVkKGN1cnJlbnRD
bWRDb3VudCkgfHwgKG5vdExvYWRlZCAmJiBtQWNjZXNzICE9IFJlc291cmNlQWNjZXNzOjpXcml0
ZSkpCisgICAgeworICAgICAgICAqc3RvcmVPcCAgICAgICAgICA9IFJlbmRlclBhc3NTdG9yZU9w
OjpEb250Q2FyZTsKKyAgICAgICAgKmlzSW52YWxpZGF0ZWRPdXQgPSB0cnVlOworICAgIH0KKyAg
ICBlbHNlIGlmIChoYXNXcml0ZUFmdGVySW52YWxpZGF0ZShjdXJyZW50Q21kQ291bnQpKQorICAg
IHsKKyAgICAgICAgLy8gVGhlIGF0dGFjaG1lbnQgd2FzIGludmFsaWRhdGVkLCBidXQgaXMgbm93
IHZhbGlkLiAgTGV0IHRoZSBpbWFnZSBrbm93IHRoZSBjb250ZW50cyBhcmUKKyAgICAgICAgLy8g
bm93IGRlZmluZWQgc28gYSBmdXR1cmUgcmVuZGVyIHBhc3Mgd291bGQgdXNlIGxvYWRPcD1MT0FE
LgorICAgICAgICByZXN0b3JlQ29udGVudCgpOworICAgIH0KKworICAgIC8vIEZvciByZWFkIG9u
bHkgZGVwdGggc3RlbmNpbCwgd2UgY2FuIHVzZSBTdG9yZU9wTm9uZSBpZiBhdmFpbGFibGUuICBE
b250Q2FyZSBpcyBzdGlsbAorICAgIC8vIHByZWZlcnJlZCwgc28gZG8gdGhpcyBhZnRlciBoYW5k
bGluZyBEb250Q2FyZS4KKyAgICBjb25zdCBib29sIHN1cHBvcnRzTG9hZFN0b3JlT3BOb25lID0K
KyAgICAgICAgY29udGV4dC0+Z2V0UmVuZGVyZXIoKS0+Z2V0RmVhdHVyZXMoKS5zdXBwb3J0c1Jl
bmRlclBhc3NMb2FkU3RvcmVPcE5vbmUuZW5hYmxlZDsKKyAgICBjb25zdCBib29sIHN1cHBvcnRz
U3RvcmVPcE5vbmUgPQorICAgICAgICBzdXBwb3J0c0xvYWRTdG9yZU9wTm9uZSB8fAorICAgICAg
ICBjb250ZXh0LT5nZXRSZW5kZXJlcigpLT5nZXRGZWF0dXJlcygpLnN1cHBvcnRzUmVuZGVyUGFz
c1N0b3JlT3BOb25lUUNPTS5lbmFibGVkOworICAgIGlmIChtSW1hZ2UtPmhhc1JlbmRlclBhc3NV
c2FnZUZsYWcoUmVuZGVyUGFzc1VzYWdlOjpSZWFkT25seUF0dGFjaG1lbnQpICYmIHN1cHBvcnRz
U3RvcmVPcE5vbmUpCisgICAgeworICAgICAgICBpZiAoKnN0b3JlT3AgPT0gUmVuZGVyUGFzc1N0
b3JlT3A6OlN0b3JlKQorICAgICAgICB7CisgICAgICAgICAgICAqc3RvcmVPcCA9IFJlbmRlclBh
c3NTdG9yZU9wOjpOb25lOworICAgICAgICB9CisgICAgfQorCisgICAgaWYgKG1BY2Nlc3MgPT0g
UmVzb3VyY2VBY2Nlc3M6OlVudXNlZCkKKyAgICB7CisgICAgICAgIGlmICgqc3RvcmVPcCA9PSBS
ZW5kZXJQYXNzU3RvcmVPcDo6RG9udENhcmUpCisgICAgICAgIHsKKyAgICAgICAgICAgIC8vIElm
IHdlIGFyZSBsb2FkaW5nIG9yIGNsZWFyaW5nIHRoZSBhdHRhY2htZW50LCBidXQgdGhlIGF0dGFj
aG1lbnQgaGFzIG5vdCBiZWVuIHVzZWQsCisgICAgICAgICAgICAvLyBhbmQgdGhlIGRhdGEgaGFz
IGFsc28gbm90IGJlZW4gc3RvcmVkIGJhY2sgaW50byBhdHRhY2htZW50LCB0aGVuIGp1c3Qgc2tp
cCB0aGUKKyAgICAgICAgICAgIC8vIGxvYWQvY2xlYXIgb3AuCisgICAgICAgICAgICAqbG9hZE9w
ID0gUmVuZGVyUGFzc0xvYWRPcDo6RG9udENhcmU7CisgICAgICAgIH0KKyAgICAgICAgZWxzZSBp
ZiAoKmxvYWRPcCAhPSBSZW5kZXJQYXNzTG9hZE9wOjpDbGVhciAmJiBzdXBwb3J0c0xvYWRTdG9y
ZU9wTm9uZSkKKyAgICAgICAgeworICAgICAgICAgICAgLy8gT3RoZXJ3aXNlIG1ha2Ugc3VyZSB0
aGUgYXR0YWNobWVudCBpcyBuZWl0aGVyIGxvYWRlZCBub3Igc3RvcmVkIChhcyBpdCdzIG5laXRo
ZXIKKyAgICAgICAgICAgIC8vIHVzZWQgbm9yIGludmFsaWRhdGVkKS4KKyAgICAgICAgICAgICps
b2FkT3AgID0gUmVuZGVyUGFzc0xvYWRPcDo6Tm9uZTsKKyAgICAgICAgICAgICpzdG9yZU9wID0g
UmVuZGVyUGFzc1N0b3JlT3A6Ok5vbmU7CisgICAgICAgIH0KKyAgICB9Cit9CisKK3ZvaWQgUmVu
ZGVyUGFzc0F0dGFjaG1lbnQ6OnJlc3RvcmVDb250ZW50KCkKK3sKKyAgICAvLyBOb3RlIHRoYXQg
dGhlIGltYWdlIG1heSBoYXZlIGJlZW4gZGVsZXRlZCBzaW5jZSB0aGUgcmVuZGVyIHBhc3MgaGFz
IHN0YXJ0ZWQuCisgICAgaWYgKG1JbWFnZSkKKyAgICB7CisgICAgICAgIEFTU0VSVChtSW1hZ2Ut
PnZhbGlkKCkpOworICAgICAgICBpZiAobUFzcGVjdCA9PSBWS19JTUFHRV9BU1BFQ1RfU1RFTkNJ
TF9CSVQpCisgICAgICAgIHsKKyAgICAgICAgICAgIG1JbWFnZS0+cmVzdG9yZVN1YnJlc291cmNl
U3RlbmNpbENvbnRlbnQobUxldmVsSW5kZXgsIG1MYXllckluZGV4LCBtTGF5ZXJDb3VudCk7Cisg
ICAgICAgIH0KKyAgICAgICAgZWxzZQorICAgICAgICB7CisgICAgICAgICAgICBtSW1hZ2UtPnJl
c3RvcmVTdWJyZXNvdXJjZUNvbnRlbnQobUxldmVsSW5kZXgsIG1MYXllckluZGV4LCBtTGF5ZXJD
b3VudCk7CisgICAgICAgIH0KKyAgICAgICAgbUludmFsaWRhdGVBcmVhID0gZ2w6OlJlY3Rhbmds
ZSgpOworICAgIH0KK30KKworYm9vbCBSZW5kZXJQYXNzQXR0YWNobWVudDo6aGFzV3JpdGVBZnRl
ckludmFsaWRhdGUodWludDMyX3QgY3VycmVudENtZENvdW50KSBjb25zdAoreworICAgIHJldHVy
biAobUludmFsaWRhdGVkQ21kQ291bnQgIT0ga0luZmluaXRlQ21kQ291bnQgJiYKKyAgICAgICAg
ICAgIHN0ZDo6bWluKG1EaXNhYmxlZENtZENvdW50LCBjdXJyZW50Q21kQ291bnQpICE9IG1JbnZh
bGlkYXRlZENtZENvdW50KTsKK30KKworYm9vbCBSZW5kZXJQYXNzQXR0YWNobWVudDo6aXNJbnZh
bGlkYXRlZCh1aW50MzJfdCBjdXJyZW50Q21kQ291bnQpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1J
bnZhbGlkYXRlZENtZENvdW50ICE9IGtJbmZpbml0ZUNtZENvdW50ICYmCisgICAgICAgICAgIHN0
ZDo6bWluKG1EaXNhYmxlZENtZENvdW50LCBjdXJyZW50Q21kQ291bnQpID09IG1JbnZhbGlkYXRl
ZENtZENvdW50OworfQorCitib29sIFJlbmRlclBhc3NBdHRhY2htZW50OjpvbkFjY2Vzc0ltcGwo
UmVzb3VyY2VBY2Nlc3MgYWNjZXNzLCB1aW50MzJfdCBjdXJyZW50Q21kQ291bnQpCit7CisgICAg
aWYgKG1JbnZhbGlkYXRlZENtZENvdW50ID09IGtJbmZpbml0ZUNtZENvdW50KQorICAgIHsKKyAg
ICAgICAgLy8gSWYgbmV2ZXIgaW52YWxpZGF0ZWQgb3Igbm8gbG9uZ2VyIGludmFsaWRhdGVkLCBy
ZXR1cm4gZWFybHkuCisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisgICAgaWYgKGFjY2Vz
cyA9PSBSZXNvdXJjZUFjY2Vzczo6V3JpdGUpCisgICAgeworICAgICAgICAvLyBEcmF3aW5nIHRv
IHRoaXMgYXR0YWNobWVudCBpcyBiZWluZyBlbmFibGVkLiAgQXNzdW1lIHRoYXQgZHJhd2luZyB3
aWxsIGltbWVkaWF0ZWx5IG9jY3VyCisgICAgICAgIC8vIGFmdGVyIHRoaXMgYXR0YWNobWVudCBp
cyBlbmFibGVkLCBhbmQgdGhhdCBtZWFucyB0aGF0IHRoZSBhdHRhY2htZW50IHdpbGwgbm8gbG9u
Z2VyIGJlCisgICAgICAgIC8vIGludmFsaWRhdGVkLgorICAgICAgICBtSW52YWxpZGF0ZWRDbWRD
b3VudCA9IGtJbmZpbml0ZUNtZENvdW50OworICAgICAgICBtRGlzYWJsZWRDbWRDb3VudCAgICA9
IGtJbmZpbml0ZUNtZENvdW50OworICAgICAgICAvLyBSZXR1cm4gdHJ1ZSB0byBpbmRpY2F0ZSB0
aGF0IHRoZSBzdG9yZSBvcCBzaG91bGQgcmVtYWluIFNUT1JFIGFuZCB0aGF0IG1Db250ZW50RGVm
aW5lZAorICAgICAgICAvLyBzaG91bGQgYmUgc2V0IHRvIHRydWU7CisgICAgICAgIHJldHVybiB0
cnVlOworICAgIH0KKyAgICAvLyBEcmF3aW5nIHRvIHRoaXMgYXR0YWNobWVudCBpcyBiZWluZyBk
aXNhYmxlZC4KKyAgICBpZiAoaGFzV3JpdGVBZnRlckludmFsaWRhdGUoY3VycmVudENtZENvdW50
KSkKKyAgICB7CisgICAgICAgIC8vIFRoZSBhdHRhY2htZW50IHdhcyBwcmV2aW91c2x5IGRyYXdu
IHdoaWxlIGVuYWJsZWQsIGFuZCBzbyBpcyBubyBsb25nZXIgaW52YWxpZGF0ZWQuCisgICAgICAg
IG1JbnZhbGlkYXRlZENtZENvdW50ID0ga0luZmluaXRlQ21kQ291bnQ7CisgICAgICAgIG1EaXNh
YmxlZENtZENvdW50ICAgID0ga0luZmluaXRlQ21kQ291bnQ7CisgICAgICAgIC8vIFJldHVybiB0
cnVlIHRvIGluZGljYXRlIHRoYXQgdGhlIHN0b3JlIG9wIHNob3VsZCByZW1haW4gU1RPUkUgYW5k
IHRoYXQgbUNvbnRlbnREZWZpbmVkCisgICAgICAgIC8vIHNob3VsZCBiZSBzZXQgdG8gdHJ1ZTsK
KyAgICAgICAgcmV0dXJuIHRydWU7CisgICAgfQorCisgICAgLy8gVXNlIHRoZSBsYXRlc3QgQ21k
Q291bnQgYXQgdGhlIHN0YXJ0IG9mIGJlaW5nIGRpc2FibGVkLiAgQXQgdGhlIGVuZCBvZiB0aGUg
cmVuZGVyIHBhc3MsCisgICAgLy8gY21kQ291bnREaXNhYmxlZCBpcyA8PSB0aGUgYWN0dWFsIGNv
bW1hbmQgY291bnQsIGFuZCBzbyBpdCdzIGNvbXBhcmVkIHdpdGgKKyAgICAvLyBjbWRDb3VudElu
dmFsaWRhdGVkLiAgSWYgdGhlIHNhbWUsIHRoZSBhdHRhY2htZW50IGlzIHN0aWxsIGludmFsaWRh
dGVkLgorICAgIG1EaXNhYmxlZENtZENvdW50ID0gY3VycmVudENtZENvdW50OworICAgIHJldHVy
biBmYWxzZTsKK30KKwogLy8gQ29tbWFuZEJ1ZmZlckhlbHBlckNvbW1vbiBpbXBsZW1lbnRhdGlv
bi4KIENvbW1hbmRCdWZmZXJIZWxwZXJDb21tb246OkNvbW1hbmRCdWZmZXJIZWxwZXJDb21tb24o
KQogICAgIDogbVBpcGVsaW5lQmFycmllcnMoKSwKQEAgLTEyNjUsMTkgKzE0NjcsOCBAQCBSZW5k
ZXJQYXNzQ29tbWFuZEJ1ZmZlckhlbHBlcjo6UmVuZGVyUGFzc0NvbW1hbmRCdWZmZXJIZWxwZXIo
KQogICAgICAgbVZhbGlkVHJhbnNmb3JtRmVlZGJhY2tCdWZmZXJDb3VudCgwKSwKICAgICAgIG1S
ZWJpbmRUcmFuc2Zvcm1GZWVkYmFja0J1ZmZlcnMoZmFsc2UpLAogICAgICAgbUlzVHJhbnNmb3Jt
RmVlZGJhY2tBY3RpdmVVbnBhdXNlZChmYWxzZSksCi0gICAgICBtRGVwdGhBY2Nlc3MoUmVzb3Vy
Y2VBY2Nlc3M6OlVudXNlZCksCi0gICAgICBtU3RlbmNpbEFjY2VzcyhSZXNvdXJjZUFjY2Vzczo6
VW51c2VkKSwKICAgICAgIG1QcmV2aW91c1N1YnBhc3Nlc0NtZENvdW50KDApLAotICAgICAgbURl
cHRoQ21kQ291bnRJbnZhbGlkYXRlZChrSW5maW5pdGVDbWRDb3VudCksCi0gICAgICBtRGVwdGhD
bWRDb3VudERpc2FibGVkKGtJbmZpbml0ZUNtZENvdW50KSwKLSAgICAgIG1TdGVuY2lsQ21kQ291
bnRJbnZhbGlkYXRlZChrSW5maW5pdGVDbWRDb3VudCksCi0gICAgICBtU3RlbmNpbENtZENvdW50
RGlzYWJsZWQoa0luZmluaXRlQ21kQ291bnQpLAogICAgICAgbURlcHRoU3RlbmNpbEF0dGFjaG1l
bnRJbmRleChrQXR0YWNobWVudEluZGV4SW52YWxpZCksCi0gICAgICBtRGVwdGhTdGVuY2lsSW1h
Z2UobnVsbHB0ciksCi0gICAgICBtRGVwdGhTdGVuY2lsUmVzb2x2ZUltYWdlKG51bGxwdHIpLAot
ICAgICAgbURlcHRoU3RlbmNpbExldmVsSW5kZXgoMCksCi0gICAgICBtRGVwdGhTdGVuY2lsTGF5
ZXJJbmRleCgwKSwKLSAgICAgIG1EZXB0aFN0ZW5jaWxMYXllckNvdW50KDApLAogICAgICAgbUNv
bG9ySW1hZ2VzQ291bnQoMCksCiAgICAgICBtSW1hZ2VPcHRpbWl6ZUZvclByZXNlbnQobnVsbHB0
cikKIHt9CkBAIC0xMzA3LDI0ICsxNDk4LDE5IEBAIGFuZ2xlOjpSZXN1bHQgUmVuZGVyUGFzc0Nv
bW1hbmRCdWZmZXJIZWxwZXI6OnJlc2V0KENvbnRleHQgKmNvbnRleHQpCiAgICAgbVJlYmluZFRy
YW5zZm9ybUZlZWRiYWNrQnVmZmVycyAgICA9IGZhbHNlOwogICAgIG1IYXNTaGFkZXJTdG9yYWdl
T3V0cHV0ICAgICAgICAgICAgPSBmYWxzZTsKICAgICBtSGFzR0xNZW1vcnlCYXJyaWVySXNzdWVk
ICAgICAgICAgID0gZmFsc2U7Ci0gICAgbURlcHRoQWNjZXNzICAgICAgICAgICAgICAgICAgICAg
ICA9IFJlc291cmNlQWNjZXNzOjpVbnVzZWQ7Ci0gICAgbVN0ZW5jaWxBY2Nlc3MgICAgICAgICAg
ICAgICAgICAgICA9IFJlc291cmNlQWNjZXNzOjpVbnVzZWQ7CiAgICAgbVByZXZpb3VzU3VicGFz
c2VzQ21kQ291bnQgICAgICAgICA9IDA7Ci0gICAgbURlcHRoQ21kQ291bnRJbnZhbGlkYXRlZCAg
ICAgICAgICA9IGtJbmZpbml0ZUNtZENvdW50OwotICAgIG1EZXB0aENtZENvdW50RGlzYWJsZWQg
ICAgICAgICAgICAgPSBrSW5maW5pdGVDbWRDb3VudDsKLSAgICBtU3RlbmNpbENtZENvdW50SW52
YWxpZGF0ZWQgICAgICAgID0ga0luZmluaXRlQ21kQ291bnQ7Ci0gICAgbVN0ZW5jaWxDbWRDb3Vu
dERpc2FibGVkICAgICAgICAgICA9IGtJbmZpbml0ZUNtZENvdW50OwogICAgIG1Db2xvckltYWdl
c0NvdW50ICAgICAgICAgICAgICAgICAgPSBQYWNrZWRBdHRhY2htZW50Q291bnQoMCk7CiAgICAg
bURlcHRoU3RlbmNpbEF0dGFjaG1lbnRJbmRleCAgICAgICA9IGtBdHRhY2htZW50SW5kZXhJbnZh
bGlkOwotICAgIG1EZXB0aEludmFsaWRhdGVBcmVhICAgICAgICAgICAgICAgPSBnbDo6UmVjdGFu
Z2xlKCk7Ci0gICAgbVN0ZW5jaWxJbnZhbGlkYXRlQXJlYSAgICAgICAgICAgICA9IGdsOjpSZWN0
YW5nbGUoKTsKICAgICBtUmVuZGVyUGFzc1VzZWRJbWFnZXMuY2xlYXIoKTsKLSAgICBtRGVwdGhT
dGVuY2lsSW1hZ2UgICAgICAgID0gbnVsbHB0cjsKLSAgICBtRGVwdGhTdGVuY2lsUmVzb2x2ZUlt
YWdlID0gbnVsbHB0cjsKICAgICBtQ29sb3JJbWFnZXMucmVzZXQoKTsKICAgICBtQ29sb3JSZXNv
bHZlSW1hZ2VzLnJlc2V0KCk7CiAgICAgbUltYWdlT3B0aW1pemVGb3JQcmVzZW50ID0gbnVsbHB0
cjsKIAorICAgIG1EZXB0aEF0dGFjaG1lbnQucmVzZXQoKTsKKyAgICBtRGVwdGhSZXNvbHZlQXR0
YWNobWVudC5yZXNldCgpOworICAgIG1TdGVuY2lsQXR0YWNobWVudC5yZXNldCgpOworICAgIG1T
dGVuY2lsUmVzb2x2ZUF0dGFjaG1lbnQucmVzZXQoKTsKKwogICAgIC8vIFJlc2V0IGFuZCByZS1p
bml0aWFsaXplIHRoZSBjb21tYW5kIGJ1ZmZlcnMKICAgICBmb3IgKHVpbnQzMl90IHN1YnBhc3Mg
PSAwOyBzdWJwYXNzIDw9IG1DdXJyZW50U3VicGFzczsgKytzdWJwYXNzKQogICAgIHsKQEAgLTE0
MjAsMTEgKzE2MDYsOSBAQCB2b2lkIFJlbmRlclBhc3NDb21tYW5kQnVmZmVySGVscGVyOjpkZXB0
aFN0ZW5jaWxJbWFnZXNEcmF3KFJlc291cmNlVXNlTGlzdCAqcmVzbwogICAgIC8vIG9ubHkgaW5z
ZXJ0IGxheW91dCBjaGFuZ2UgYmFycmllciBvbmNlLgogICAgIGltYWdlLT5yZXRhaW4ocmVzb3Vy
Y2VVc2VMaXN0KTsKICAgICBtUmVuZGVyUGFzc1VzZWRJbWFnZXMuaW5zZXJ0KGltYWdlLT5nZXRJ
bWFnZVNlcmlhbCgpKTsKLSAgICBtRGVwdGhTdGVuY2lsSW1hZ2UgICAgICA9IGltYWdlOwotICAg
IG1EZXB0aFN0ZW5jaWxMZXZlbEluZGV4ID0gbGV2ZWw7Ci0gICAgbURlcHRoU3RlbmNpbExheWVy
SW5kZXggPSBsYXllclN0YXJ0OwotICAgIG1EZXB0aFN0ZW5jaWxMYXllckNvdW50ID0gbGF5ZXJD
b3VudDsKLSAgICBpbWFnZS0+c2V0UmVuZGVyUGFzc1VzYWdlRmxhZyhSZW5kZXJQYXNzVXNhZ2U6
OlJlbmRlclRhcmdldEF0dGFjaG1lbnQpOworCisgICAgbURlcHRoQXR0YWNobWVudC5pbml0KGlt
YWdlLCBsZXZlbCwgbGF5ZXJTdGFydCwgbGF5ZXJDb3VudCwgVktfSU1BR0VfQVNQRUNUX0RFUFRI
X0JJVCk7CisgICAgbVN0ZW5jaWxBdHRhY2htZW50LmluaXQoaW1hZ2UsIGxldmVsLCBsYXllclN0
YXJ0LCBsYXllckNvdW50LCBWS19JTUFHRV9BU1BFQ1RfU1RFTkNJTF9CSVQpOwogCiAgICAgaWYg
KHJlc29sdmVJbWFnZSkKICAgICB7CkBAIC0xNDMzLDEzNSArMTYxNyw1OSBAQCB2b2lkIFJlbmRl
clBhc3NDb21tYW5kQnVmZmVySGVscGVyOjpkZXB0aFN0ZW5jaWxJbWFnZXNEcmF3KFJlc291cmNl
VXNlTGlzdCAqcmVzbwogICAgICAgICAvLyBtdWx0aXNhbXBsZWQtcmVuZGVyLXRvLXRleHR1cmUg
cmVuZGVyYnVmZmVycy4KICAgICAgICAgcmVzb2x2ZUltYWdlLT5yZXRhaW4ocmVzb3VyY2VVc2VM
aXN0KTsKICAgICAgICAgbVJlbmRlclBhc3NVc2VkSW1hZ2VzLmluc2VydChyZXNvbHZlSW1hZ2Ut
PmdldEltYWdlU2VyaWFsKCkpOwotICAgICAgICBtRGVwdGhTdGVuY2lsUmVzb2x2ZUltYWdlID0g
cmVzb2x2ZUltYWdlOwotICAgICAgICByZXNvbHZlSW1hZ2UtPnNldFJlbmRlclBhc3NVc2FnZUZs
YWcoUmVuZGVyUGFzc1VzYWdlOjpSZW5kZXJUYXJnZXRBdHRhY2htZW50KTsKKworICAgICAgICBt
RGVwdGhSZXNvbHZlQXR0YWNobWVudC5pbml0KHJlc29sdmVJbWFnZSwgbGV2ZWwsIGxheWVyU3Rh
cnQsIGxheWVyQ291bnQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVktf
SU1BR0VfQVNQRUNUX0RFUFRIX0JJVCk7CisgICAgICAgIG1TdGVuY2lsUmVzb2x2ZUF0dGFjaG1l
bnQuaW5pdChyZXNvbHZlSW1hZ2UsIGxldmVsLCBsYXllclN0YXJ0LCBsYXllckNvdW50LAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVktfSU1BR0VfQVNQRUNUX1NURU5D
SUxfQklUKTsKICAgICB9CiB9CiAKIHZvaWQgUmVuZGVyUGFzc0NvbW1hbmRCdWZmZXJIZWxwZXI6
Om9uRGVwdGhBY2Nlc3MoUmVzb3VyY2VBY2Nlc3MgYWNjZXNzKQogewotICAgIC8vIFVwZGF0ZSB0
aGUgYWNjZXNzIGZvciBvcHRpbWl6aW5nIHRoaXMgcmVuZGVyIHBhc3MncyBsb2FkT3AKLSAgICBV
cGRhdGVBY2Nlc3MoJm1EZXB0aEFjY2VzcywgYWNjZXNzKTsKLQotICAgIC8vIFVwZGF0ZSB0aGUg
aW52YWxpZGF0ZSBzdGF0ZSBmb3Igb3B0aW1pemluZyB0aGlzIHJlbmRlciBwYXNzJ3Mgc3RvcmVP
cAotICAgIGlmIChvbkRlcHRoU3RlbmNpbEFjY2VzcyhhY2Nlc3MsICZtRGVwdGhDbWRDb3VudElu
dmFsaWRhdGVkLCAmbURlcHRoQ21kQ291bnREaXNhYmxlZCkpCi0gICAgewotICAgICAgICAvLyBU
aGUgYXR0YWNobWVudCBpcyBubyBsb25nZXIgaW52YWxpZCwgc28gcmVzdG9yZSBpdHMgY29udGVu
dC4KLSAgICAgICAgcmVzdG9yZURlcHRoQ29udGVudCgpOwotICAgIH0KKyAgICBtRGVwdGhBdHRh
Y2htZW50Lm9uQWNjZXNzKGFjY2VzcywgZ2V0UmVuZGVyUGFzc1dyaXRlQ29tbWFuZENvdW50KCkp
OwogfQogCiB2b2lkIFJlbmRlclBhc3NDb21tYW5kQnVmZmVySGVscGVyOjpvblN0ZW5jaWxBY2Nl
c3MoUmVzb3VyY2VBY2Nlc3MgYWNjZXNzKQogewotICAgIC8vIFVwZGF0ZSB0aGUgYWNjZXNzIGZv
ciBvcHRpbWl6aW5nIHRoaXMgcmVuZGVyIHBhc3MncyBsb2FkT3AKLSAgICBVcGRhdGVBY2Nlc3Mo
Jm1TdGVuY2lsQWNjZXNzLCBhY2Nlc3MpOwotCi0gICAgLy8gVXBkYXRlIHRoZSBpbnZhbGlkYXRl
IHN0YXRlIGZvciBvcHRpbWl6aW5nIHRoaXMgcmVuZGVyIHBhc3MncyBzdGVuY2lsU3RvcmVPcAot
ICAgIGlmIChvbkRlcHRoU3RlbmNpbEFjY2VzcyhhY2Nlc3MsICZtU3RlbmNpbENtZENvdW50SW52
YWxpZGF0ZWQsICZtU3RlbmNpbENtZENvdW50RGlzYWJsZWQpKQotICAgIHsKLSAgICAgICAgLy8g
VGhlIGF0dGFjaG1lbnQgaXMgbm8gbG9uZ2VyIGludmFsaWQsIHNvIHJlc3RvcmUgaXRzIGNvbnRl
bnQuCi0gICAgICAgIHJlc3RvcmVTdGVuY2lsQ29udGVudCgpOwotICAgIH0KLX0KLQotYm9vbCBS
ZW5kZXJQYXNzQ29tbWFuZEJ1ZmZlckhlbHBlcjo6b25EZXB0aFN0ZW5jaWxBY2Nlc3MoUmVzb3Vy
Y2VBY2Nlc3MgYWNjZXNzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgdWludDMyX3QgKmNtZENvdW50SW52YWxpZGF0ZWQsCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJf
dCAqY21kQ291bnREaXNhYmxlZCkKLXsKLSAgICBpZiAoKmNtZENvdW50SW52YWxpZGF0ZWQgPT0g
a0luZmluaXRlQ21kQ291bnQpCi0gICAgewotICAgICAgICAvLyBJZiBuZXZlciBpbnZhbGlkYXRl
ZCBvciBubyBsb25nZXIgaW52YWxpZGF0ZWQsIHJldHVybiBlYXJseS4KLSAgICAgICAgcmV0dXJu
IGZhbHNlOwotICAgIH0KLSAgICBpZiAoYWNjZXNzID09IFJlc291cmNlQWNjZXNzOjpXcml0ZSkK
LSAgICB7Ci0gICAgICAgIC8vIERyYXdpbmcgdG8gdGhpcyBhdHRhY2htZW50IGlzIGJlaW5nIGVu
YWJsZWQuICBBc3N1bWUgdGhhdCBkcmF3aW5nIHdpbGwgaW1tZWRpYXRlbHkgb2NjdXIKLSAgICAg
ICAgLy8gYWZ0ZXIgdGhpcyBhdHRhY2htZW50IGlzIGVuYWJsZWQsIGFuZCB0aGF0IG1lYW5zIHRo
YXQgdGhlIGF0dGFjaG1lbnQgd2lsbCBubyBsb25nZXIgYmUKLSAgICAgICAgLy8gaW52YWxpZGF0
ZWQuCi0gICAgICAgICpjbWRDb3VudEludmFsaWRhdGVkID0ga0luZmluaXRlQ21kQ291bnQ7Ci0g
ICAgICAgICpjbWRDb3VudERpc2FibGVkICAgID0ga0luZmluaXRlQ21kQ291bnQ7Ci0gICAgICAg
IC8vIFJldHVybiB0cnVlIHRvIGluZGljYXRlIHRoYXQgdGhlIHN0b3JlIG9wIHNob3VsZCByZW1h
aW4gU1RPUkUgYW5kIHRoYXQgbUNvbnRlbnREZWZpbmVkCi0gICAgICAgIC8vIHNob3VsZCBiZSBz
ZXQgdG8gdHJ1ZTsKLSAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAgfQotICAgIGVsc2UKLSAgICB7
Ci0gICAgICAgIC8vIERyYXdpbmcgdG8gdGhpcyBhdHRhY2htZW50IGlzIGJlaW5nIGRpc2FibGVk
LgotICAgICAgICBpZiAoaGFzV3JpdGVBZnRlckludmFsaWRhdGUoKmNtZENvdW50SW52YWxpZGF0
ZWQsICpjbWRDb3VudERpc2FibGVkKSkKLSAgICAgICAgewotICAgICAgICAgICAgLy8gVGhlIGF0
dGFjaG1lbnQgd2FzIHByZXZpb3VzbHkgZHJhd24gd2hpbGUgZW5hYmxlZCwgYW5kIHNvIGlzIG5v
IGxvbmdlciBpbnZhbGlkYXRlZC4KLSAgICAgICAgICAgICpjbWRDb3VudEludmFsaWRhdGVkID0g
a0luZmluaXRlQ21kQ291bnQ7Ci0gICAgICAgICAgICAqY21kQ291bnREaXNhYmxlZCAgICA9IGtJ
bmZpbml0ZUNtZENvdW50OwotICAgICAgICAgICAgLy8gUmV0dXJuIHRydWUgdG8gaW5kaWNhdGUg
dGhhdCB0aGUgc3RvcmUgb3Agc2hvdWxkIHJlbWFpbiBTVE9SRSBhbmQgdGhhdAotICAgICAgICAg
ICAgLy8gbUNvbnRlbnREZWZpbmVkIHNob3VsZCBiZSBzZXQgdG8gdHJ1ZTsKLSAgICAgICAgICAg
IHJldHVybiB0cnVlOwotICAgICAgICB9Ci0gICAgICAgIGVsc2UKLSAgICAgICAgewotICAgICAg
ICAgICAgLy8gR2V0IHRoZSBsYXRlc3QgQ21kQ291bnQgYXQgdGhlIHN0YXJ0IG9mIGJlaW5nIGRp
c2FibGVkLiAgQXQgdGhlIGVuZCBvZiB0aGUgcmVuZGVyCi0gICAgICAgICAgICAvLyBwYXNzLCBj
bWRDb3VudERpc2FibGVkIGlzIDw9IHRoZSBhY3R1YWwgY29tbWFuZCBidWZmZXIgc2l6ZSwgYW5k
IHNvIGl0J3MgY29tcGFyZWQKLSAgICAgICAgICAgIC8vIHdpdGggY21kQ291bnRJbnZhbGlkYXRl
ZC4gIElmIHRoZSBzYW1lLCB0aGUgYXR0YWNobWVudCBpcyBzdGlsbCBpbnZhbGlkYXRlZC4KLSAg
ICAgICAgICAgICpjbWRDb3VudERpc2FibGVkID0gZ2V0UmVuZGVyUGFzc1dyaXRlQ29tbWFuZENv
dW50KCk7Ci0gICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAgIH0KLSAgICB9CisgICAg
bVN0ZW5jaWxBdHRhY2htZW50Lm9uQWNjZXNzKGFjY2VzcywgZ2V0UmVuZGVyUGFzc1dyaXRlQ29t
bWFuZENvdW50KCkpOwogfQogCiB2b2lkIFJlbmRlclBhc3NDb21tYW5kQnVmZmVySGVscGVyOjp1
cGRhdGVTdGFydGVkUmVuZGVyUGFzc1dpdGhEZXB0aE1vZGUoCiAgICAgYm9vbCByZWFkT25seURl
cHRoU3RlbmNpbE1vZGUpCiB7CiAgICAgQVNTRVJUKG1SZW5kZXJQYXNzU3RhcnRlZCk7CisgICAg
QVNTRVJUKG1EZXB0aEF0dGFjaG1lbnQuZ2V0SW1hZ2UoKSA9PSBtU3RlbmNpbEF0dGFjaG1lbnQu
Z2V0SW1hZ2UoKSk7CisgICAgQVNTRVJUKG1EZXB0aFJlc29sdmVBdHRhY2htZW50LmdldEltYWdl
KCkgPT0gbVN0ZW5jaWxSZXNvbHZlQXR0YWNobWVudC5nZXRJbWFnZSgpKTsKIAotICAgIGlmICht
RGVwdGhTdGVuY2lsSW1hZ2UpCisgICAgSW1hZ2VIZWxwZXIgKmRlcHRoU3RlbmNpbEltYWdlICAg
ICAgICA9IG1EZXB0aEF0dGFjaG1lbnQuZ2V0SW1hZ2UoKTsKKyAgICBJbWFnZUhlbHBlciAqZGVw
dGhTdGVuY2lsUmVzb2x2ZUltYWdlID0gbURlcHRoUmVzb2x2ZUF0dGFjaG1lbnQuZ2V0SW1hZ2Uo
KTsKKworICAgIGlmIChkZXB0aFN0ZW5jaWxJbWFnZSkKICAgICB7CiAgICAgICAgIGlmIChyZWFk
T25seURlcHRoU3RlbmNpbE1vZGUpCiAgICAgICAgIHsKLSAgICAgICAgICAgIG1EZXB0aFN0ZW5j
aWxJbWFnZS0+c2V0UmVuZGVyUGFzc1VzYWdlRmxhZyhSZW5kZXJQYXNzVXNhZ2U6OlJlYWRPbmx5
QXR0YWNobWVudCk7CisgICAgICAgICAgICBkZXB0aFN0ZW5jaWxJbWFnZS0+c2V0UmVuZGVyUGFz
c1VzYWdlRmxhZyhSZW5kZXJQYXNzVXNhZ2U6OlJlYWRPbmx5QXR0YWNobWVudCk7CiAgICAgICAg
IH0KICAgICAgICAgZWxzZQogICAgICAgICB7Ci0gICAgICAgICAgICBtRGVwdGhTdGVuY2lsSW1h
Z2UtPmNsZWFyUmVuZGVyUGFzc1VzYWdlRmxhZyhSZW5kZXJQYXNzVXNhZ2U6OlJlYWRPbmx5QXR0
YWNobWVudCk7CisgICAgICAgICAgICBkZXB0aFN0ZW5jaWxJbWFnZS0+Y2xlYXJSZW5kZXJQYXNz
VXNhZ2VGbGFnKFJlbmRlclBhc3NVc2FnZTo6UmVhZE9ubHlBdHRhY2htZW50KTsKICAgICAgICAg
fQogICAgIH0KIAotICAgIGlmIChtRGVwdGhTdGVuY2lsUmVzb2x2ZUltYWdlKQorICAgIGlmIChk
ZXB0aFN0ZW5jaWxSZXNvbHZlSW1hZ2UpCiAgICAgewogICAgICAgICBpZiAocmVhZE9ubHlEZXB0
aFN0ZW5jaWxNb2RlKQogICAgICAgICB7Ci0gICAgICAgICAgICBtRGVwdGhTdGVuY2lsUmVzb2x2
ZUltYWdlLT5zZXRSZW5kZXJQYXNzVXNhZ2VGbGFnKFJlbmRlclBhc3NVc2FnZTo6UmVhZE9ubHlB
dHRhY2htZW50KTsKKyAgICAgICAgICAgIGRlcHRoU3RlbmNpbFJlc29sdmVJbWFnZS0+c2V0UmVu
ZGVyUGFzc1VzYWdlRmxhZyhSZW5kZXJQYXNzVXNhZ2U6OlJlYWRPbmx5QXR0YWNobWVudCk7CiAg
ICAgICAgIH0KICAgICAgICAgZWxzZQogICAgICAgICB7Ci0gICAgICAgICAgICBtRGVwdGhTdGVu
Y2lsUmVzb2x2ZUltYWdlLT5jbGVhclJlbmRlclBhc3NVc2FnZUZsYWcoCi0gICAgICAgICAgICAg
ICAgUmVuZGVyUGFzc1VzYWdlOjpSZWFkT25seUF0dGFjaG1lbnQpOworICAgICAgICAgICAgZGVw
dGhTdGVuY2lsUmVzb2x2ZUltYWdlLT5jbGVhclJlbmRlclBhc3NVc2FnZUZsYWcoUmVuZGVyUGFz
c1VzYWdlOjpSZWFkT25seUF0dGFjaG1lbnQpOwogICAgICAgICB9CiAgICAgfQogfQogCi12b2lk
IFJlbmRlclBhc3NDb21tYW5kQnVmZmVySGVscGVyOjpyZXN0b3JlRGVwdGhDb250ZW50KCkKLXsK
LSAgICAvLyBOb3RlIHRoYXQgdGhlIGltYWdlIG1heSBoYXZlIGJlZW4gZGVsZXRlZCBzaW5jZSB0
aGUgcmVuZGVyIHBhc3MgaGFzIHN0YXJ0ZWQuCi0gICAgaWYgKG1EZXB0aFN0ZW5jaWxJbWFnZSkK
LSAgICB7Ci0gICAgICAgIEFTU0VSVChtRGVwdGhTdGVuY2lsSW1hZ2UtPnZhbGlkKCkpOwotICAg
ICAgICBtRGVwdGhTdGVuY2lsSW1hZ2UtPnJlc3RvcmVTdWJyZXNvdXJjZUNvbnRlbnQoCi0gICAg
ICAgICAgICBtRGVwdGhTdGVuY2lsTGV2ZWxJbmRleCwgbURlcHRoU3RlbmNpbExheWVySW5kZXgs
IG1EZXB0aFN0ZW5jaWxMYXllckNvdW50KTsKLSAgICAgICAgbURlcHRoSW52YWxpZGF0ZUFyZWEg
PSBnbDo6UmVjdGFuZ2xlKCk7Ci0gICAgfQotfQotCi12b2lkIFJlbmRlclBhc3NDb21tYW5kQnVm
ZmVySGVscGVyOjpyZXN0b3JlU3RlbmNpbENvbnRlbnQoKQotewotICAgIC8vIE5vdGUgdGhhdCB0
aGUgaW1hZ2UgbWF5IGhhdmUgYmVlbiBkZWxldGVkIHNpbmNlIHRoZSByZW5kZXIgcGFzcyBoYXMg
c3RhcnRlZC4KLSAgICBpZiAobURlcHRoU3RlbmNpbEltYWdlKQotICAgIHsKLSAgICAgICAgQVNT
RVJUKG1EZXB0aFN0ZW5jaWxJbWFnZS0+dmFsaWQoKSk7Ci0gICAgICAgIG1EZXB0aFN0ZW5jaWxJ
bWFnZS0+cmVzdG9yZVN1YnJlc291cmNlU3RlbmNpbENvbnRlbnQoCi0gICAgICAgICAgICBtRGVw
dGhTdGVuY2lsTGV2ZWxJbmRleCwgbURlcHRoU3RlbmNpbExheWVySW5kZXgsIG1EZXB0aFN0ZW5j
aWxMYXllckNvdW50KTsKLSAgICAgICAgbVN0ZW5jaWxJbnZhbGlkYXRlQXJlYSA9IGdsOjpSZWN0
YW5nbGUoKTsKLSAgICB9Ci19Ci0KIHZvaWQgUmVuZGVyUGFzc0NvbW1hbmRCdWZmZXJIZWxwZXI6
OmZpbmFsaXplQ29sb3JJbWFnZUxheW91dCgKICAgICBDb250ZXh0ICpjb250ZXh0LAogICAgIElt
YWdlSGVscGVyICppbWFnZSwKQEAgLTE2MDksMjEgKzE3MTcsMjQgQEAgdm9pZCBSZW5kZXJQYXNz
Q29tbWFuZEJ1ZmZlckhlbHBlcjo6ZmluYWxpemVDb2xvckltYWdlTGF5b3V0KAogCiB2b2lkIFJl
bmRlclBhc3NDb21tYW5kQnVmZmVySGVscGVyOjpmaW5hbGl6ZURlcHRoU3RlbmNpbEltYWdlTGF5
b3V0KENvbnRleHQgKmNvbnRleHQpCiB7Ci0gICAgQVNTRVJUKG1EZXB0aFN0ZW5jaWxJbWFnZSk7
CisgICAgQVNTRVJUKG1EZXB0aEF0dGFjaG1lbnQuZ2V0SW1hZ2UoKSAhPSBudWxscHRyKTsKKyAg
ICBBU1NFUlQobURlcHRoQXR0YWNobWVudC5nZXRJbWFnZSgpID09IG1TdGVuY2lsQXR0YWNobWVu
dC5nZXRJbWFnZSgpKTsKKworICAgIEltYWdlSGVscGVyICpkZXB0aFN0ZW5jaWxJbWFnZSA9IG1E
ZXB0aEF0dGFjaG1lbnQuZ2V0SW1hZ2UoKTsKIAogICAgIC8vIERvIGRlcHRoIHN0ZW5jaWwgbGF5
b3V0IGNoYW5nZS4KICAgICBJbWFnZUxheW91dCBpbWFnZUxheW91dDsKICAgICBib29sIGJhcnJp
ZXJSZXF1aXJlZDsKIAotICAgIGlmIChtRGVwdGhTdGVuY2lsSW1hZ2UtPnVzZWRCeUN1cnJlbnRS
ZW5kZXJQYXNzQXNBdHRhY2htZW50QW5kU2FtcGxlcigpKQorICAgIGlmIChkZXB0aFN0ZW5jaWxJ
bWFnZS0+dXNlZEJ5Q3VycmVudFJlbmRlclBhc3NBc0F0dGFjaG1lbnRBbmRTYW1wbGVyKCkpCiAg
ICAgewogICAgICAgICAvLyB0ZXh0dXJlIGNvZGUgYWxyZWFkeSBwaWNrZWQgbGF5b3V0IGFuZCBp
bnNlcnRlZCBiYXJyaWVyCi0gICAgICAgIGltYWdlTGF5b3V0ID0gbURlcHRoU3RlbmNpbEltYWdl
LT5nZXRDdXJyZW50SW1hZ2VMYXlvdXQoKTsKLSAgICAgICAgaWYgKG1EZXB0aFN0ZW5jaWxJbWFn
ZS0+aGFzUmVuZGVyUGFzc1VzYWdlRmxhZyhSZW5kZXJQYXNzVXNhZ2U6OlJlYWRPbmx5QXR0YWNo
bWVudCkpCisgICAgICAgIGltYWdlTGF5b3V0ID0gZGVwdGhTdGVuY2lsSW1hZ2UtPmdldEN1cnJl
bnRJbWFnZUxheW91dCgpOworICAgICAgICBpZiAoZGVwdGhTdGVuY2lsSW1hZ2UtPmhhc1JlbmRl
clBhc3NVc2FnZUZsYWcoUmVuZGVyUGFzc1VzYWdlOjpSZWFkT25seUF0dGFjaG1lbnQpKQogICAg
ICAgICB7CiAgICAgICAgICAgICBBU1NFUlQoaW1hZ2VMYXlvdXQgPT0gSW1hZ2VMYXlvdXQ6OkRT
QXR0YWNobWVudFJlYWRBbmRGcmFnbWVudFNoYWRlclJlYWQgfHwKICAgICAgICAgICAgICAgICAg
ICBpbWFnZUxheW91dCA9PSBJbWFnZUxheW91dDo6RFNBdHRhY2htZW50UmVhZEFuZEFsbFNoYWRl
cnNSZWFkKTsKLSAgICAgICAgICAgIGJhcnJpZXJSZXF1aXJlZCA9IG1EZXB0aFN0ZW5jaWxJbWFn
ZS0+aXNSZWFkQmFycmllck5lY2Vzc2FyeShpbWFnZUxheW91dCk7CisgICAgICAgICAgICBiYXJy
aWVyUmVxdWlyZWQgPSBkZXB0aFN0ZW5jaWxJbWFnZS0+aXNSZWFkQmFycmllck5lY2Vzc2FyeShp
bWFnZUxheW91dCk7CiAgICAgICAgIH0KICAgICAgICAgZWxzZQogICAgICAgICB7CkBAIC0xNjMy
LDEwICsxNzQzLDEwIEBAIHZvaWQgUmVuZGVyUGFzc0NvbW1hbmRCdWZmZXJIZWxwZXI6OmZpbmFs
aXplRGVwdGhTdGVuY2lsSW1hZ2VMYXlvdXQoQ29udGV4dCAqY29uCiAgICAgICAgICAgICBiYXJy
aWVyUmVxdWlyZWQgPSB0cnVlOwogICAgICAgICB9CiAgICAgfQotICAgIGVsc2UgaWYgKG1EZXB0
aFN0ZW5jaWxJbWFnZS0+aGFzUmVuZGVyUGFzc1VzYWdlRmxhZyhSZW5kZXJQYXNzVXNhZ2U6OlJl
YWRPbmx5QXR0YWNobWVudCkpCisgICAgZWxzZSBpZiAoZGVwdGhTdGVuY2lsSW1hZ2UtPmhhc1Jl
bmRlclBhc3NVc2FnZUZsYWcoUmVuZGVyUGFzc1VzYWdlOjpSZWFkT25seUF0dGFjaG1lbnQpKQog
ICAgIHsKICAgICAgICAgaW1hZ2VMYXlvdXQgICAgID0gSW1hZ2VMYXlvdXQ6OkRlcHRoU3RlbmNp
bEF0dGFjaG1lbnRSZWFkT25seTsKLSAgICAgICAgYmFycmllclJlcXVpcmVkID0gbURlcHRoU3Rl
bmNpbEltYWdlLT5pc1JlYWRCYXJyaWVyTmVjZXNzYXJ5KGltYWdlTGF5b3V0KTsKKyAgICAgICAg
YmFycmllclJlcXVpcmVkID0gZGVwdGhTdGVuY2lsSW1hZ2UtPmlzUmVhZEJhcnJpZXJOZWNlc3Nh
cnkoaW1hZ2VMYXlvdXQpOwogICAgIH0KICAgICBlbHNlCiAgICAgewpAQCAtMTY0OCw0OCArMTc1
OSw0NSBAQCB2b2lkIFJlbmRlclBhc3NDb21tYW5kQnVmZmVySGVscGVyOjpmaW5hbGl6ZURlcHRo
U3RlbmNpbEltYWdlTGF5b3V0KENvbnRleHQgKmNvbgogCiAgICAgaWYgKGJhcnJpZXJSZXF1aXJl
ZCkKICAgICB7Ci0gICAgICAgIGNvbnN0IGFuZ2xlOjpGb3JtYXQgJmZvcm1hdCA9IG1EZXB0aFN0
ZW5jaWxJbWFnZS0+Z2V0QWN0dWFsRm9ybWF0KCk7CisgICAgICAgIGNvbnN0IGFuZ2xlOjpGb3Jt
YXQgJmZvcm1hdCA9IGRlcHRoU3RlbmNpbEltYWdlLT5nZXRBY3R1YWxGb3JtYXQoKTsKICAgICAg
ICAgQVNTRVJUKGZvcm1hdC5oYXNEZXB0aE9yU3RlbmNpbEJpdHMoKSk7CiAgICAgICAgIFZrSW1h
Z2VBc3BlY3RGbGFncyBhc3BlY3RGbGFncyA9IEdldERlcHRoU3RlbmNpbEFzcGVjdEZsYWdzKGZv
cm1hdCk7Ci0gICAgICAgIHVwZGF0ZUltYWdlTGF5b3V0QW5kQmFycmllcihjb250ZXh0LCBtRGVw
dGhTdGVuY2lsSW1hZ2UsIGFzcGVjdEZsYWdzLCBpbWFnZUxheW91dCk7CisgICAgICAgIHVwZGF0
ZUltYWdlTGF5b3V0QW5kQmFycmllcihjb250ZXh0LCBkZXB0aFN0ZW5jaWxJbWFnZSwgYXNwZWN0
RmxhZ3MsIGltYWdlTGF5b3V0KTsKICAgICB9CiB9CiAKIHZvaWQgUmVuZGVyUGFzc0NvbW1hbmRC
dWZmZXJIZWxwZXI6OmZpbmFsaXplRGVwdGhTdGVuY2lsUmVzb2x2ZUltYWdlTGF5b3V0KENvbnRl
eHQgKmNvbnRleHQpCiB7Ci0gICAgQVNTRVJUKG1EZXB0aFN0ZW5jaWxJbWFnZSk7Ci0gICAgQVNT
RVJUKCFtRGVwdGhTdGVuY2lsUmVzb2x2ZUltYWdlLT5oYXNSZW5kZXJQYXNzVXNhZ2VGbGFnKFJl
bmRlclBhc3NVc2FnZTo6UmVhZE9ubHlBdHRhY2htZW50KSk7CisgICAgQVNTRVJUKG1EZXB0aFJl
c29sdmVBdHRhY2htZW50LmdldEltYWdlKCkgIT0gbnVsbHB0cik7CisgICAgQVNTRVJUKG1EZXB0
aFJlc29sdmVBdHRhY2htZW50LmdldEltYWdlKCkgPT0gbVN0ZW5jaWxSZXNvbHZlQXR0YWNobWVu
dC5nZXRJbWFnZSgpKTsKKworICAgIEltYWdlSGVscGVyICpkZXB0aFN0ZW5jaWxSZXNvbHZlSW1h
Z2UgPSBtRGVwdGhSZXNvbHZlQXR0YWNobWVudC5nZXRJbWFnZSgpOworICAgIEFTU0VSVCghZGVw
dGhTdGVuY2lsUmVzb2x2ZUltYWdlLT5oYXNSZW5kZXJQYXNzVXNhZ2VGbGFnKFJlbmRlclBhc3NV
c2FnZTo6UmVhZE9ubHlBdHRhY2htZW50KSk7CiAKICAgICBJbWFnZUxheW91dCBpbWFnZUxheW91
dCAgICAgPSBJbWFnZUxheW91dDo6RGVwdGhTdGVuY2lsUmVzb2x2ZUF0dGFjaG1lbnQ7Ci0gICAg
Y29uc3QgYW5nbGU6OkZvcm1hdCAmZm9ybWF0ID0gbURlcHRoU3RlbmNpbFJlc29sdmVJbWFnZS0+
Z2V0QWN0dWFsRm9ybWF0KCk7CisgICAgY29uc3QgYW5nbGU6OkZvcm1hdCAmZm9ybWF0ID0gZGVw
dGhTdGVuY2lsUmVzb2x2ZUltYWdlLT5nZXRBY3R1YWxGb3JtYXQoKTsKICAgICBBU1NFUlQoZm9y
bWF0Lmhhc0RlcHRoT3JTdGVuY2lsQml0cygpKTsKICAgICBWa0ltYWdlQXNwZWN0RmxhZ3MgYXNw
ZWN0RmxhZ3MgPSBHZXREZXB0aFN0ZW5jaWxBc3BlY3RGbGFncyhmb3JtYXQpOwogCi0gICAgdXBk
YXRlSW1hZ2VMYXlvdXRBbmRCYXJyaWVyKGNvbnRleHQsIG1EZXB0aFN0ZW5jaWxSZXNvbHZlSW1h
Z2UsIGFzcGVjdEZsYWdzLCBpbWFnZUxheW91dCk7CisgICAgdXBkYXRlSW1hZ2VMYXlvdXRBbmRC
YXJyaWVyKGNvbnRleHQsIGRlcHRoU3RlbmNpbFJlc29sdmVJbWFnZSwgYXNwZWN0RmxhZ3MsIGlt
YWdlTGF5b3V0KTsKIAotICAgIGlmICghbURlcHRoU3RlbmNpbFJlc29sdmVJbWFnZS0+aGFzUmVu
ZGVyUGFzc1VzYWdlRmxhZyhSZW5kZXJQYXNzVXNhZ2U6OlJlYWRPbmx5QXR0YWNobWVudCkpCisg
ICAgaWYgKCFkZXB0aFN0ZW5jaWxSZXNvbHZlSW1hZ2UtPmhhc1JlbmRlclBhc3NVc2FnZUZsYWco
UmVuZGVyUGFzc1VzYWdlOjpSZWFkT25seUF0dGFjaG1lbnQpKQogICAgIHsKICAgICAgICAgQVNT
RVJUKG1EZXB0aFN0ZW5jaWxBdHRhY2htZW50SW5kZXggIT0ga0F0dGFjaG1lbnRJbmRleEludmFs
aWQpOwogICAgICAgICBjb25zdCBQYWNrZWRBdHRhY2htZW50T3BzRGVzYyAmZHNPcHMgPSBtQXR0
YWNobWVudE9wc1ttRGVwdGhTdGVuY2lsQXR0YWNobWVudEluZGV4XTsKIAogICAgICAgICAvLyBJ
ZiB0aGUgaW1hZ2UgaXMgYmVpbmcgd3JpdHRlbiB0bywgbWFyayBpdHMgY29udGVudHMgZGVmaW5l
ZC4KLSAgICAgICAgVmtJbWFnZUFzcGVjdEZsYWdzIGRlZmluZWRBc3BlY3RzID0gMDsKICAgICAg
ICAgaWYgKCFkc09wcy5pc0ludmFsaWRhdGVkKQogICAgICAgICB7Ci0gICAgICAgICAgICBkZWZp
bmVkQXNwZWN0cyB8PSBWS19JTUFHRV9BU1BFQ1RfREVQVEhfQklUOworICAgICAgICAgICAgbURl
cHRoUmVzb2x2ZUF0dGFjaG1lbnQucmVzdG9yZUNvbnRlbnQoKTsKICAgICAgICAgfQogICAgICAg
ICBpZiAoIWRzT3BzLmlzU3RlbmNpbEludmFsaWRhdGVkKQogICAgICAgICB7Ci0gICAgICAgICAg
ICBkZWZpbmVkQXNwZWN0cyB8PSBWS19JTUFHRV9BU1BFQ1RfU1RFTkNJTF9CSVQ7Ci0gICAgICAg
IH0KLSAgICAgICAgaWYgKGRlZmluZWRBc3BlY3RzICE9IDApCi0gICAgICAgIHsKLSAgICAgICAg
ICAgIG1EZXB0aFN0ZW5jaWxSZXNvbHZlSW1hZ2UtPm9uV3JpdGUobURlcHRoU3RlbmNpbExldmVs
SW5kZXgsIDEsIG1EZXB0aFN0ZW5jaWxMYXllckluZGV4LAotICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBtRGVwdGhTdGVuY2lsTGF5ZXJDb3VudCwgZGVmaW5l
ZEFzcGVjdHMpOworICAgICAgICAgICAgbVN0ZW5jaWxSZXNvbHZlQXR0YWNobWVudC5yZXN0b3Jl
Q29udGVudCgpOwogICAgICAgICB9CiAgICAgfQogCi0gICAgbURlcHRoU3RlbmNpbFJlc29sdmVJ
bWFnZS0+cmVzZXRSZW5kZXJQYXNzVXNhZ2VGbGFncygpOworICAgIGRlcHRoU3RlbmNpbFJlc29s
dmVJbWFnZS0+cmVzZXRSZW5kZXJQYXNzVXNhZ2VGbGFncygpOwogfQogCiB2b2lkIFJlbmRlclBh
c3NDb21tYW5kQnVmZmVySGVscGVyOjpmaW5hbGl6ZUltYWdlTGF5b3V0KENvbnRleHQgKmNvbnRl
eHQsIGNvbnN0IEltYWdlSGVscGVyICppbWFnZSkKQEAgLTE3MTEsMTYgKzE4MTksMTggQEAgdm9p
ZCBSZW5kZXJQYXNzQ29tbWFuZEJ1ZmZlckhlbHBlcjo6ZmluYWxpemVJbWFnZUxheW91dChDb250
ZXh0ICpjb250ZXh0LCBjb25zdAogICAgICAgICB9CiAgICAgfQogCi0gICAgaWYgKG1EZXB0aFN0
ZW5jaWxJbWFnZSA9PSBpbWFnZSkKKyAgICBpZiAobURlcHRoQXR0YWNobWVudC5nZXRJbWFnZSgp
ID09IGltYWdlKQogICAgIHsKICAgICAgICAgZmluYWxpemVEZXB0aFN0ZW5jaWxJbWFnZUxheW91
dEFuZExvYWRTdG9yZShjb250ZXh0KTsKLSAgICAgICAgbURlcHRoU3RlbmNpbEltYWdlID0gbnVs
bHB0cjsKKyAgICAgICAgbURlcHRoQXR0YWNobWVudC5yZXNldCgpOworICAgICAgICBtU3RlbmNp
bEF0dGFjaG1lbnQucmVzZXQoKTsKICAgICB9CiAKLSAgICBpZiAobURlcHRoU3RlbmNpbFJlc29s
dmVJbWFnZSA9PSBpbWFnZSkKKyAgICBpZiAobURlcHRoUmVzb2x2ZUF0dGFjaG1lbnQuZ2V0SW1h
Z2UoKSA9PSBpbWFnZSkKICAgICB7CiAgICAgICAgIGZpbmFsaXplRGVwdGhTdGVuY2lsUmVzb2x2
ZUltYWdlTGF5b3V0KGNvbnRleHQpOwotICAgICAgICBtRGVwdGhTdGVuY2lsUmVzb2x2ZUltYWdl
ID0gbnVsbHB0cjsKKyAgICAgICAgbURlcHRoUmVzb2x2ZUF0dGFjaG1lbnQucmVzZXQoKTsKKyAg
ICAgICAgbVN0ZW5jaWxSZXNvbHZlQXR0YWNobWVudC5yZXNldCgpOwogICAgIH0KIH0KIApAQCAt
MTczNyw2MSArMTg0NywzOCBAQCB2b2lkIFJlbmRlclBhc3NDb21tYW5kQnVmZmVySGVscGVyOjpm
aW5hbGl6ZURlcHRoU3RlbmNpbExvYWRTdG9yZShDb250ZXh0ICpjb250ZQogICAgIC8vIFRoaXMg
aGFzIHRvIGJlIGNhbGxlZCBhZnRlciBsYXlvdXQgYmVlbiBmaW5hbGl6ZWQKICAgICBBU1NFUlQo
ZHNPcHMuaW5pdGlhbExheW91dCAhPSBzdGF0aWNfY2FzdDx1aW50MTZfdD4oSW1hZ2VMYXlvdXQ6
OlVuZGVmaW5lZCkpOwogCi0gICAgLy8gRW5zdXJlIHdlIGRvbid0IHdyaXRlIHRvIGEgcmVhZC1v
bmx5IFJlbmRlclBhc3MuIChSZWFkT25seSAtPiAhV3JpdGUpCi0gICAgQVNTRVJUKCFtRGVwdGhT
dGVuY2lsSW1hZ2UtPmhhc1JlbmRlclBhc3NVc2FnZUZsYWcoUmVuZGVyUGFzc1VzYWdlOjpSZWFk
T25seUF0dGFjaG1lbnQpIHx8Ci0gICAgICAgICAgIChtRGVwdGhBY2Nlc3MgIT0gUmVzb3VyY2VB
Y2Nlc3M6OldyaXRlICYmIG1TdGVuY2lsQWNjZXNzICE9IFJlc291cmNlQWNjZXNzOjpXcml0ZSkp
OworICAgIHVpbnQzMl90IGN1cnJlbnRDbWRDb3VudCAgPSBnZXRSZW5kZXJQYXNzV3JpdGVDb21t
YW5kQ291bnQoKTsKKyAgICBib29sIGlzRGVwdGhJbnZhbGlkYXRlZCAgID0gZmFsc2U7CisgICAg
Ym9vbCBpc1N0ZW5jaWxJbnZhbGlkYXRlZCA9IGZhbHNlOwogCi0gICAgLy8gSWYgdGhlIGF0dGFj
aG1lbnQgaXMgaW52YWxpZGF0ZWQsIHNraXAgdGhlIHN0b3JlIG9wLiAgSWYgd2UgYXJlIG5vdCBs
b2FkaW5nIG9yIGNsZWFyaW5nIHRoZQotICAgIC8vIGF0dGFjaG1lbnQgYW5kIHRoZSBhdHRhY2ht
ZW50IGhhcyBub3QgYmVlbiB1c2VkLCBhdXRvLWludmFsaWRhdGUgaXQuCi0gICAgY29uc3QgYm9v
bCBkZXB0aE5vdExvYWRlZCA9Ci0gICAgICAgIGRlcHRoTG9hZE9wID09IFJlbmRlclBhc3NMb2Fk
T3A6OkRvbnRDYXJlICYmICFtUmVuZGVyUGFzc0Rlc2MuaGFzRGVwdGhVbnJlc29sdmVBdHRhY2ht
ZW50KCk7Ci0gICAgaWYgKGlzSW52YWxpZGF0ZWQobURlcHRoQ21kQ291bnRJbnZhbGlkYXRlZCwg
bURlcHRoQ21kQ291bnREaXNhYmxlZCkgfHwKLSAgICAgICAgKGRlcHRoTm90TG9hZGVkICYmIG1E
ZXB0aEFjY2VzcyAhPSBSZXNvdXJjZUFjY2Vzczo6V3JpdGUpKQorICAgIG1EZXB0aEF0dGFjaG1l
bnQuZmluYWxpemVMb2FkU3RvcmUoY29udGV4dCwgY3VycmVudENtZENvdW50LAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbVJlbmRlclBhc3NEZXNjLmhhc0RlcHRoVW5y
ZXNvbHZlQXR0YWNobWVudCgpLCAmZGVwdGhMb2FkT3AsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAmZGVwdGhTdG9yZU9wLCAmaXNEZXB0aEludmFsaWRhdGVkKTsKKyAg
ICBtU3RlbmNpbEF0dGFjaG1lbnQuZmluYWxpemVMb2FkU3RvcmUoY29udGV4dCwgY3VycmVudENt
ZENvdW50LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtUmVuZGVy
UGFzc0Rlc2MuaGFzU3RlbmNpbFVucmVzb2x2ZUF0dGFjaG1lbnQoKSwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgJnN0ZW5jaWxMb2FkT3AsICZzdGVuY2lsU3RvcmVP
cCwgJmlzU3RlbmNpbEludmFsaWRhdGVkKTsKKworICAgIGlmIChpc0RlcHRoSW52YWxpZGF0ZWQp
CiAgICAgewotICAgICAgICBkZXB0aFN0b3JlT3AgICAgICAgID0gUmVuZGVyUGFzc1N0b3JlT3A6
OkRvbnRDYXJlOwogICAgICAgICBkc09wcy5pc0ludmFsaWRhdGVkID0gdHJ1ZTsKICAgICB9Ci0g
ICAgZWxzZSBpZiAoaGFzV3JpdGVBZnRlckludmFsaWRhdGUobURlcHRoQ21kQ291bnRJbnZhbGlk
YXRlZCwgbURlcHRoQ21kQ291bnREaXNhYmxlZCkpCi0gICAgewotICAgICAgICAvLyBUaGUgZGVw
dGggYXR0YWNobWVudCB3YXMgaW52YWxpZGF0ZWQsIGJ1dCBpcyBub3cgdmFsaWQuICBMZXQgdGhl
IGltYWdlIGtub3cgdGhlIGNvbnRlbnRzCi0gICAgICAgIC8vIGFyZSBub3cgZGVmaW5lZCBzbyBh
IGZ1dHVyZSByZW5kZXIgcGFzcyB3b3VsZCB1c2UgbG9hZE9wPUxPQUQuCi0gICAgICAgIHJlc3Rv
cmVEZXB0aENvbnRlbnQoKTsKLSAgICB9Ci0gICAgY29uc3QgYm9vbCBzdGVuY2lsTm90TG9hZGVk
ID0gc3RlbmNpbExvYWRPcCA9PSBSZW5kZXJQYXNzTG9hZE9wOjpEb250Q2FyZSAmJgotICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICFtUmVuZGVyUGFzc0Rlc2MuaGFzU3RlbmNpbFVu
cmVzb2x2ZUF0dGFjaG1lbnQoKTsKLSAgICBpZiAoaXNJbnZhbGlkYXRlZChtU3RlbmNpbENtZENv
dW50SW52YWxpZGF0ZWQsIG1TdGVuY2lsQ21kQ291bnREaXNhYmxlZCkgfHwKLSAgICAgICAgKHN0
ZW5jaWxOb3RMb2FkZWQgJiYgbVN0ZW5jaWxBY2Nlc3MgIT0gUmVzb3VyY2VBY2Nlc3M6OldyaXRl
KSkKKyAgICBpZiAoaXNTdGVuY2lsSW52YWxpZGF0ZWQpCiAgICAgewotICAgICAgICBzdGVuY2ls
U3RvcmVPcCAgICAgICAgICAgICA9IFJlbmRlclBhc3NTdG9yZU9wOjpEb250Q2FyZTsKICAgICAg
ICAgZHNPcHMuaXNTdGVuY2lsSW52YWxpZGF0ZWQgPSB0cnVlOwogICAgIH0KLSAgICBlbHNlIGlm
IChoYXNXcml0ZUFmdGVySW52YWxpZGF0ZShtU3RlbmNpbENtZENvdW50SW52YWxpZGF0ZWQsIG1T
dGVuY2lsQ21kQ291bnREaXNhYmxlZCkpCi0gICAgewotICAgICAgICAvLyBUaGUgc3RlbmNpbCBh
dHRhY2htZW50IHdhcyBpbnZhbGlkYXRlZCwgYnV0IGlzIG5vdyB2YWxpZC4gIExldCB0aGUgaW1h
Z2Uga25vdyB0aGUKLSAgICAgICAgLy8gY29udGVudHMgYXJlIG5vdyBkZWZpbmVkIHNvIGEgZnV0
dXJlIHJlbmRlciBwYXNzIHdvdWxkIHVzZSBsb2FkT3A9TE9BRC4KLSAgICAgICAgcmVzdG9yZVN0
ZW5jaWxDb250ZW50KCk7Ci0gICAgfQotCi0gICAgZmluYWxpemVEZXB0aFN0ZW5jaWxMb2FkU3Rv
cmVPcHMoY29udGV4dCwgbURlcHRoQWNjZXNzLCAmZGVwdGhMb2FkT3AsICZkZXB0aFN0b3JlT3Ap
OwotICAgIGZpbmFsaXplRGVwdGhTdGVuY2lsTG9hZFN0b3JlT3BzKGNvbnRleHQsIG1TdGVuY2ls
QWNjZXNzLCAmc3RlbmNpbExvYWRPcCwgJnN0ZW5jaWxTdG9yZU9wKTsKIAogICAgIC8vIFRoaXMg
aGFzIHRvIGJlIGRvbmUgYWZ0ZXIgc3RvcmVPcCBoYXMgYmVlbiBmaW5hbGl6ZWQuCi0gICAgaWYg
KCFtRGVwdGhTdGVuY2lsSW1hZ2UtPmhhc1JlbmRlclBhc3NVc2FnZUZsYWcoUmVuZGVyUGFzc1Vz
YWdlOjpSZWFkT25seUF0dGFjaG1lbnQpKQorICAgIEFTU0VSVChtRGVwdGhBdHRhY2htZW50Lmdl
dEltYWdlKCkgPT0gbVN0ZW5jaWxBdHRhY2htZW50LmdldEltYWdlKCkpOworICAgIGlmICghbURl
cHRoQXR0YWNobWVudC5nZXRJbWFnZSgpLT5oYXNSZW5kZXJQYXNzVXNhZ2VGbGFnKFJlbmRlclBh
c3NVc2FnZTo6UmVhZE9ubHlBdHRhY2htZW50KSkKICAgICB7CiAgICAgICAgIC8vIElmIHRoZSBp
bWFnZSBpcyBiZWluZyB3cml0dGVuIHRvLCBtYXJrIGl0cyBjb250ZW50cyBkZWZpbmVkLgotICAg
ICAgICBWa0ltYWdlQXNwZWN0RmxhZ3MgZGVmaW5lZEFzcGVjdHMgPSAwOwogICAgICAgICBpZiAo
ZGVwdGhTdG9yZU9wID09IFJlbmRlclBhc3NTdG9yZU9wOjpTdG9yZSkKICAgICAgICAgewotICAg
ICAgICAgICAgZGVmaW5lZEFzcGVjdHMgfD0gVktfSU1BR0VfQVNQRUNUX0RFUFRIX0JJVDsKKyAg
ICAgICAgICAgIG1EZXB0aEF0dGFjaG1lbnQucmVzdG9yZUNvbnRlbnQoKTsKICAgICAgICAgfQog
ICAgICAgICBpZiAoc3RlbmNpbFN0b3JlT3AgPT0gUmVuZGVyUGFzc1N0b3JlT3A6OlN0b3JlKQog
ICAgICAgICB7Ci0gICAgICAgICAgICBkZWZpbmVkQXNwZWN0cyB8PSBWS19JTUFHRV9BU1BFQ1Rf
U1RFTkNJTF9CSVQ7Ci0gICAgICAgIH0KLSAgICAgICAgaWYgKGRlZmluZWRBc3BlY3RzICE9IDAp
Ci0gICAgICAgIHsKLSAgICAgICAgICAgIG1EZXB0aFN0ZW5jaWxJbWFnZS0+b25Xcml0ZShtRGVw
dGhTdGVuY2lsTGV2ZWxJbmRleCwgMSwgbURlcHRoU3RlbmNpbExheWVySW5kZXgsCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbURlcHRoU3RlbmNpbExheWVyQ291bnQs
IGRlZmluZWRBc3BlY3RzKTsKKyAgICAgICAgICAgIG1TdGVuY2lsQXR0YWNobWVudC5yZXN0b3Jl
Q29udGVudCgpOwogICAgICAgICB9CiAgICAgfQogCkBAIC0xODAxLDUxICsxODg4LDEzIEBAIHZv
aWQgUmVuZGVyUGFzc0NvbW1hbmRCdWZmZXJIZWxwZXI6OmZpbmFsaXplRGVwdGhTdGVuY2lsTG9h
ZFN0b3JlKENvbnRleHQgKmNvbnRlCiAgICAgU2V0Qml0RmllbGQoZHNPcHMuc3RlbmNpbFN0b3Jl
T3AsIHN0ZW5jaWxTdG9yZU9wKTsKIH0KIAotdm9pZCBSZW5kZXJQYXNzQ29tbWFuZEJ1ZmZlckhl
bHBlcjo6ZmluYWxpemVEZXB0aFN0ZW5jaWxMb2FkU3RvcmVPcHMoQ29udGV4dCAqY29udGV4dCwK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFJlc291cmNlQWNjZXNzIGFjY2VzcywKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJlbmRlclBh
c3NMb2FkT3AgKmxvYWRPcCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJlbmRlclBhc3NTdG9yZU9wICpzdG9yZU9w
KQotewotICAgIC8vIEZvciByZWFkIG9ubHkgZGVwdGggc3RlbmNpbCwgd2UgY2FuIHVzZSBTdG9y
ZU9wTm9uZSBpZiBhdmFpbGFibGUuICBEb250Q2FyZSBpcyBzdGlsbAotICAgIC8vIHByZWZlcnJl
ZCwgc28gZG8gdGhpcyBhZnRlciBoYW5kbGluZyBEb250Q2FyZS4KLSAgICBjb25zdCBib29sIHN1
cHBvcnRzTG9hZFN0b3JlT3BOb25lID0KLSAgICAgICAgY29udGV4dC0+Z2V0UmVuZGVyZXIoKS0+
Z2V0RmVhdHVyZXMoKS5zdXBwb3J0c1JlbmRlclBhc3NMb2FkU3RvcmVPcE5vbmUuZW5hYmxlZDsK
LSAgICBjb25zdCBib29sIHN1cHBvcnRzU3RvcmVPcE5vbmUgPQotICAgICAgICBzdXBwb3J0c0xv
YWRTdG9yZU9wTm9uZSB8fAotICAgICAgICBjb250ZXh0LT5nZXRSZW5kZXJlcigpLT5nZXRGZWF0
dXJlcygpLnN1cHBvcnRzUmVuZGVyUGFzc1N0b3JlT3BOb25lUUNPTS5lbmFibGVkOwotICAgIGlm
IChtRGVwdGhTdGVuY2lsSW1hZ2UtPmhhc1JlbmRlclBhc3NVc2FnZUZsYWcoUmVuZGVyUGFzc1Vz
YWdlOjpSZWFkT25seUF0dGFjaG1lbnQpICYmCi0gICAgICAgIHN1cHBvcnRzU3RvcmVPcE5vbmUp
Ci0gICAgewotICAgICAgICBpZiAoKnN0b3JlT3AgPT0gUmVuZGVyUGFzc1N0b3JlT3A6OlN0b3Jl
KQotICAgICAgICB7Ci0gICAgICAgICAgICAqc3RvcmVPcCA9IFJlbmRlclBhc3NTdG9yZU9wOjpO
b25lOwotICAgICAgICB9Ci0gICAgfQotCi0gICAgaWYgKGFjY2VzcyA9PSBSZXNvdXJjZUFjY2Vz
czo6VW51c2VkKQotICAgIHsKLSAgICAgICAgaWYgKCpzdG9yZU9wID09IFJlbmRlclBhc3NTdG9y
ZU9wOjpEb250Q2FyZSkKLSAgICAgICAgewotICAgICAgICAgICAgLy8gSWYgd2UgYXJlIGxvYWRp
bmcgb3IgY2xlYXJpbmcgdGhlIGF0dGFjaG1lbnQsIGJ1dCB0aGUgYXR0YWNobWVudCBoYXMgbm90
IGJlZW4gdXNlZCwKLSAgICAgICAgICAgIC8vIGFuZCB0aGUgZGF0YSBoYXMgYWxzbyBub3QgYmVl
biBzdG9yZWQgYmFjayBpbnRvIGF0dGFjaG1lbnQsIHRoZW4ganVzdCBza2lwIHRoZQotICAgICAg
ICAgICAgLy8gbG9hZC9jbGVhciBvcC4KLSAgICAgICAgICAgICpsb2FkT3AgPSBSZW5kZXJQYXNz
TG9hZE9wOjpEb250Q2FyZTsKLSAgICAgICAgfQotICAgICAgICBlbHNlIGlmICgqbG9hZE9wICE9
IFJlbmRlclBhc3NMb2FkT3A6OkNsZWFyICYmIHN1cHBvcnRzTG9hZFN0b3JlT3BOb25lKQotICAg
ICAgICB7Ci0gICAgICAgICAgICAvLyBPdGhlcndpc2UgbWFrZSBzdXJlIHRoZSBhdHRhY2htZW50
IGlzIG5laXRoZXIgbG9hZGVkIG5vciBzdG9yZWQgKGFzIGl0J3MgbmVpdGhlcgotICAgICAgICAg
ICAgLy8gdXNlZCBub3IgaW52YWxpZGF0ZWQpLgotICAgICAgICAgICAgKmxvYWRPcCAgPSBSZW5k
ZXJQYXNzTG9hZE9wOjpOb25lOwotICAgICAgICAgICAgKnN0b3JlT3AgPSBSZW5kZXJQYXNzU3Rv
cmVPcDo6Tm9uZTsKLSAgICAgICAgfQotICAgIH0KLX0KLQogdm9pZCBSZW5kZXJQYXNzQ29tbWFu
ZEJ1ZmZlckhlbHBlcjo6ZmluYWxpemVEZXB0aFN0ZW5jaWxJbWFnZUxheW91dEFuZExvYWRTdG9y
ZShDb250ZXh0ICpjb250ZXh0KQogewogICAgIGZpbmFsaXplRGVwdGhTdGVuY2lsSW1hZ2VMYXlv
dXQoY29udGV4dCk7CiAgICAgZmluYWxpemVEZXB0aFN0ZW5jaWxMb2FkU3RvcmUoY29udGV4dCk7
Ci0gICAgbURlcHRoU3RlbmNpbEltYWdlLT5yZXNldFJlbmRlclBhc3NVc2FnZUZsYWdzKCk7CisK
KyAgICBBU1NFUlQobURlcHRoQXR0YWNobWVudC5nZXRJbWFnZSgpID09IG1TdGVuY2lsQXR0YWNo
bWVudC5nZXRJbWFnZSgpKTsKKyAgICBtRGVwdGhBdHRhY2htZW50LmdldEltYWdlKCktPnJlc2V0
UmVuZGVyUGFzc1VzYWdlRmxhZ3MoKTsKIH0KIAogYW5nbGU6OlJlc3VsdCBSZW5kZXJQYXNzQ29t
bWFuZEJ1ZmZlckhlbHBlcjo6YmVnaW5SZW5kZXJQYXNzKApAQCAtMTkwOCwxMSArMTk1NywxMyBA
QCBhbmdsZTo6UmVzdWx0IFJlbmRlclBhc3NDb21tYW5kQnVmZmVySGVscGVyOjplbmRSZW5kZXJQ
YXNzKENvbnRleHRWayAqY29udGV4dFZrKQogICAgIH0KIAogICAgIC8vIERvIGRlcHRoIHN0ZW5j
aWwgbGF5b3V0IGNoYW5nZSBhbmQgbG9hZCBzdG9yZSBvcHRpbWl6YXRpb24uCi0gICAgaWYgKG1E
ZXB0aFN0ZW5jaWxJbWFnZSkKKyAgICBBU1NFUlQobURlcHRoQXR0YWNobWVudC5nZXRJbWFnZSgp
ID09IG1TdGVuY2lsQXR0YWNobWVudC5nZXRJbWFnZSgpKTsKKyAgICBBU1NFUlQobURlcHRoUmVz
b2x2ZUF0dGFjaG1lbnQuZ2V0SW1hZ2UoKSA9PSBtU3RlbmNpbFJlc29sdmVBdHRhY2htZW50Lmdl
dEltYWdlKCkpOworICAgIGlmIChtRGVwdGhBdHRhY2htZW50LmdldEltYWdlKCkgIT0gbnVsbHB0
cikKICAgICB7CiAgICAgICAgIGZpbmFsaXplRGVwdGhTdGVuY2lsSW1hZ2VMYXlvdXRBbmRMb2Fk
U3RvcmUoY29udGV4dFZrKTsKICAgICB9Ci0gICAgaWYgKG1EZXB0aFN0ZW5jaWxSZXNvbHZlSW1h
Z2UpCisgICAgaWYgKG1EZXB0aFJlc29sdmVBdHRhY2htZW50LmdldEltYWdlKCkgIT0gbnVsbHB0
cikKICAgICB7CiAgICAgICAgIGZpbmFsaXplRGVwdGhTdGVuY2lsUmVzb2x2ZUltYWdlTGF5b3V0
KGNvbnRleHRWayk7CiAgICAgfQpAQCAtMTk5NywzNCArMjA0OCwxOSBAQCB2b2lkIFJlbmRlclBh
c3NDb21tYW5kQnVmZmVySGVscGVyOjppbnZhbGlkYXRlUmVuZGVyUGFzc0RlcHRoQXR0YWNobWVu
dCgKICAgICBjb25zdCBnbDo6RGVwdGhTdGVuY2lsU3RhdGUgJmRzU3RhdGUsCiAgICAgY29uc3Qg
Z2w6OlJlY3RhbmdsZSAmaW52YWxpZGF0ZUFyZWEpCiB7Ci0gICAgLy8gS2VlcCB0cmFjayBvZiB0
aGUgc2l6ZSBvZiBjb21tYW5kcyBpbiB0aGUgY29tbWFuZCBidWZmZXIuICBJZiB0aGUgc2l6ZSBn
cm93cyBpbiB0aGUKLSAgICAvLyBmdXR1cmUsIHRoYXQgaW1wbGllcyB0aGF0IGRyYXdpbmcgb2Nj
dXJlZCBzaW5jZSBpbnZhbGlkYXRlZC4KLSAgICBtRGVwdGhDbWRDb3VudEludmFsaWRhdGVkID0g
Z2V0UmVuZGVyUGFzc1dyaXRlQ29tbWFuZENvdW50KCk7Ci0KLSAgICAvLyBBbHNvIHRyYWNrIHRo
ZSBzaXplIGlmIHRoZSBhdHRhY2htZW50IGlzIGN1cnJlbnRseSBkaXNhYmxlZC4KICAgICBjb25z
dCBib29sIGlzRGVwdGhXcml0ZUVuYWJsZWQgPSBkc1N0YXRlLmRlcHRoVGVzdCAmJiBkc1N0YXRl
LmRlcHRoTWFzazsKLSAgICBtRGVwdGhDbWRDb3VudERpc2FibGVkID0gaXNEZXB0aFdyaXRlRW5h
YmxlZCA/IGtJbmZpbml0ZUNtZENvdW50IDogbURlcHRoQ21kQ291bnRJbnZhbGlkYXRlZDsKLQot
ICAgIC8vIFNldC9leHRlbmQgdGhlIGludmFsaWRhdGUgYXJlYS4KLSAgICBFeHRlbmRSZW5kZXJQ
YXNzSW52YWxpZGF0ZUFyZWEoaW52YWxpZGF0ZUFyZWEsICZtRGVwdGhJbnZhbGlkYXRlQXJlYSk7
CisgICAgbURlcHRoQXR0YWNobWVudC5pbnZhbGlkYXRlKGludmFsaWRhdGVBcmVhLCBpc0RlcHRo
V3JpdGVFbmFibGVkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRSZW5kZXJQ
YXNzV3JpdGVDb21tYW5kQ291bnQoKSk7CiB9CiAKIHZvaWQgUmVuZGVyUGFzc0NvbW1hbmRCdWZm
ZXJIZWxwZXI6OmludmFsaWRhdGVSZW5kZXJQYXNzU3RlbmNpbEF0dGFjaG1lbnQoCiAgICAgY29u
c3QgZ2w6OkRlcHRoU3RlbmNpbFN0YXRlICZkc1N0YXRlLAogICAgIGNvbnN0IGdsOjpSZWN0YW5n
bGUgJmludmFsaWRhdGVBcmVhKQogewotICAgIC8vIEtlZXAgdHJhY2sgb2YgdGhlIHNpemUgb2Yg
Y29tbWFuZHMgaW4gdGhlIGNvbW1hbmQgYnVmZmVyLiAgSWYgdGhlIHNpemUgZ3Jvd3MgaW4gdGhl
Ci0gICAgLy8gZnV0dXJlLCB0aGF0IGltcGxpZXMgdGhhdCBkcmF3aW5nIG9jY3VyZWQgc2luY2Ug
aW52YWxpZGF0ZWQuCi0gICAgbVN0ZW5jaWxDbWRDb3VudEludmFsaWRhdGVkID0gZ2V0UmVuZGVy
UGFzc1dyaXRlQ29tbWFuZENvdW50KCk7Ci0KLSAgICAvLyBBbHNvIHRyYWNrIHRoZSBzaXplIGlm
IHRoZSBhdHRhY2htZW50IGlzIGN1cnJlbnRseSBkaXNhYmxlZC4KICAgICBjb25zdCBib29sIGlz
U3RlbmNpbFdyaXRlRW5hYmxlZCA9CiAgICAgICAgIGRzU3RhdGUuc3RlbmNpbFRlc3QgJiYgKCFk
c1N0YXRlLmlzU3RlbmNpbE5vT3AoKSB8fCAhZHNTdGF0ZS5pc1N0ZW5jaWxCYWNrTm9PcCgpKTsK
LSAgICBtU3RlbmNpbENtZENvdW50RGlzYWJsZWQgPQotICAgICAgICBpc1N0ZW5jaWxXcml0ZUVu
YWJsZWQgPyBrSW5maW5pdGVDbWRDb3VudCA6IG1TdGVuY2lsQ21kQ291bnRJbnZhbGlkYXRlZDsK
LQotICAgIC8vIFNldC9leHRlbmQgdGhlIGludmFsaWRhdGUgYXJlYS4KLSAgICBFeHRlbmRSZW5k
ZXJQYXNzSW52YWxpZGF0ZUFyZWEoaW52YWxpZGF0ZUFyZWEsICZtU3RlbmNpbEludmFsaWRhdGVB
cmVhKTsKKyAgICBtU3RlbmNpbEF0dGFjaG1lbnQuaW52YWxpZGF0ZShpbnZhbGlkYXRlQXJlYSwg
aXNTdGVuY2lsV3JpdGVFbmFibGVkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGdldFJlbmRlclBhc3NXcml0ZUNvbW1hbmRDb3VudCgpKTsKIH0KIAogYW5nbGU6OlJlc3VsdCBS
ZW5kZXJQYXNzQ29tbWFuZEJ1ZmZlckhlbHBlcjo6Zmx1c2hUb1ByaW1hcnkoQ29udGV4dCAqY29u
dGV4dCwKQEAgLTIxNDAsMjIgKzIxNzYsOCBAQCB2b2lkIFJlbmRlclBhc3NDb21tYW5kQnVmZmVy
SGVscGVyOjpncm93UmVuZGVyQXJlYShDb250ZXh0VmsgKmNvbnRleHRWaywKICAgICBnbDo6R2V0
RW5jbG9zaW5nUmVjdGFuZ2xlKG1SZW5kZXJBcmVhLCBuZXdSZW5kZXJBcmVhLCAmbVJlbmRlckFy
ZWEpOwogCiAgICAgLy8gUmVtb3ZlIGludmFsaWRhdGVzIHRoYXQgYXJlIG5vIGxvbmdlciBhcHBs
aWNhYmxlLgotICAgIGlmICghbURlcHRoSW52YWxpZGF0ZUFyZWEuZW1wdHkoKSAmJiAhbURlcHRo
SW52YWxpZGF0ZUFyZWEuZW5jbG9zZXMobVJlbmRlckFyZWEpKQotICAgIHsKLSAgICAgICAgQU5H
TEVfVktfUEVSRl9XQVJOSU5HKAotICAgICAgICAgICAgY29udGV4dFZrLCBHTF9ERUJVR19TRVZF
UklUWV9MT1csCi0gICAgICAgICAgICAiSW52YWxpZGF0ZVN1YkZyYW1lYnVmZmVyIGZvciBkZXB0
aCBkaXNjYXJkZWQgZHVlIHRvIGluY3JlYXNlZCBzY2lzc29yIHJlZ2lvbiIpOwotICAgICAgICBt
RGVwdGhJbnZhbGlkYXRlQXJlYSAgICAgID0gZ2w6OlJlY3RhbmdsZSgpOwotICAgICAgICBtRGVw
dGhDbWRDb3VudEludmFsaWRhdGVkID0ga0luZmluaXRlQ21kQ291bnQ7Ci0gICAgfQotICAgIGlm
ICghbVN0ZW5jaWxJbnZhbGlkYXRlQXJlYS5lbXB0eSgpICYmICFtU3RlbmNpbEludmFsaWRhdGVB
cmVhLmVuY2xvc2VzKG1SZW5kZXJBcmVhKSkKLSAgICB7Ci0gICAgICAgIEFOR0xFX1ZLX1BFUkZf
V0FSTklORygKLSAgICAgICAgICAgIGNvbnRleHRWaywgR0xfREVCVUdfU0VWRVJJVFlfTE9XLAot
ICAgICAgICAgICAgIkludmFsaWRhdGVTdWJGcmFtZWJ1ZmZlciBmb3Igc3RlbmNpbCBkaXNjYXJk
ZWQgZHVlIHRvIGluY3JlYXNlZCBzY2lzc29yIHJlZ2lvbiIpOwotICAgICAgICBtU3RlbmNpbElu
dmFsaWRhdGVBcmVhICAgICAgPSBnbDo6UmVjdGFuZ2xlKCk7Ci0gICAgICAgIG1TdGVuY2lsQ21k
Q291bnRJbnZhbGlkYXRlZCA9IGtJbmZpbml0ZUNtZENvdW50OwotICAgIH0KKyAgICBtRGVwdGhB
dHRhY2htZW50Lm9uUmVuZGVyQXJlYUdyb3d0aChjb250ZXh0VmssIG1SZW5kZXJBcmVhKTsKKyAg
ICBtU3RlbmNpbEF0dGFjaG1lbnQub25SZW5kZXJBcmVhR3Jvd3RoKGNvbnRleHRWaywgbVJlbmRl
ckFyZWEpOwogfQogCiB2b2lkIFJlbmRlclBhc3NDb21tYW5kQnVmZmVySGVscGVyOjphZGRDb21t
YW5kRGlhZ25vc3RpY3MoQ29udGV4dFZrICpjb250ZXh0VmspCkBAIC0yMzMyLDcgKzIzNTQsNyBA
QCB2b2lkIER5bmFtaWNCdWZmZXI6OmluaXQoUmVuZGVyZXJWayAqcmVuZGVyZXIsCiAgICAgbU1l
bW9yeVByb3BlcnR5RmxhZ3MgPQogICAgICAgICAoaG9zdFZpc2libGUpID8gVktfTUVNT1JZX1BS
T1BFUlRZX0hPU1RfVklTSUJMRV9CSVQgOiBWS19NRU1PUllfUFJPUEVSVFlfREVWSUNFX0xPQ0FM
X0JJVDsKIAotICAgIC8vIENoZWNrIHRoYXQgd2UgaGF2ZW4ndCBvdmVycmlkZW4gdGhlIGluaXRp
YWwgc2l6ZSBvZiB0aGUgYnVmZmVyIGluIHNldE1pbmltdW1TaXplRm9yVGVzdGluZy4KKyAgICAv
LyBDaGVjayB0aGF0IHdlIGhhdmVuJ3Qgb3ZlcnJpZGRlbiB0aGUgaW5pdGlhbCBzaXplIG9mIHRo
ZSBidWZmZXIgaW4gc2V0TWluaW11bVNpemVGb3JUZXN0aW5nLgogICAgIGlmIChtSW5pdGlhbFNp
emUgPT0gMCkKICAgICB7CiAgICAgICAgIG1Jbml0aWFsU2l6ZSA9IGluaXRpYWxTaXplOwpAQCAt
MjM1NiwxNiArMjM3OCw5IEBAIER5bmFtaWNCdWZmZXI6On5EeW5hbWljQnVmZmVyKCkKICAgICBB
U1NFUlQobUJ1ZmZlckZyZWVMaXN0LmVtcHR5KCkpOwogfQogCi1hbmdsZTo6UmVzdWx0IER5bmFt
aWNCdWZmZXI6OmFsbG9jYXRlTmV3QnVmZmVyKENvbnRleHRWayAqY29udGV4dFZrKQorYW5nbGU6
OlJlc3VsdCBEeW5hbWljQnVmZmVyOjphbGxvY2F0ZU5ld0J1ZmZlcihDb250ZXh0ICpjb250ZXh0
KQogewotICAgIC8vIEdhdGhlciBzdGF0aXN0aWNzCi0gICAgY29uc3QgZ2w6Ok92ZXJsYXlUeXBl
ICpvdmVybGF5ID0gY29udGV4dFZrLT5nZXRPdmVybGF5KCk7Ci0gICAgaWYgKG92ZXJsYXktPmlz
RW5hYmxlZCgpKQotICAgIHsKLSAgICAgICAgZ2w6OlJ1bm5pbmdHcmFwaFdpZGdldCAqZHluYW1p
Y0J1ZmZlckFsbG9jYXRpb25zID0KLSAgICAgICAgICAgIG92ZXJsYXktPmdldFJ1bm5pbmdHcmFw
aFdpZGdldChnbDo6V2lkZ2V0SWQ6OlZ1bGthbkR5bmFtaWNCdWZmZXJBbGxvY2F0aW9ucyk7Ci0g
ICAgICAgIGR5bmFtaWNCdWZmZXJBbGxvY2F0aW9ucy0+YWRkKDEpOwotICAgIH0KKyAgICBjb250
ZXh0LT5nZXRQZXJmQ291bnRlcnMoKS5keW5hbWljQnVmZmVyQWxsb2NhdGlvbnMrKzsKIAogICAg
IC8vIEFsbG9jYXRlIHRoZSBidWZmZXIKICAgICBBU1NFUlQoIW1CdWZmZXIpOwpAQCAtMjM4MCw3
ICsyMzk1LDcgQEAgYW5nbGU6OlJlc3VsdCBEeW5hbWljQnVmZmVyOjphbGxvY2F0ZU5ld0J1ZmZl
cihDb250ZXh0VmsgKmNvbnRleHRWaykKICAgICBjcmVhdGVJbmZvLnF1ZXVlRmFtaWx5SW5kZXhD
b3VudCA9IDA7CiAgICAgY3JlYXRlSW5mby5wUXVldWVGYW1pbHlJbmRpY2VzICAgPSBudWxscHRy
OwogCi0gICAgcmV0dXJuIG1CdWZmZXItPmluaXQoY29udGV4dFZrLCBjcmVhdGVJbmZvLCBtTWVt
b3J5UHJvcGVydHlGbGFncyk7CisgICAgcmV0dXJuIG1CdWZmZXItPmluaXQoY29udGV4dCwgY3Jl
YXRlSW5mbywgbU1lbW9yeVByb3BlcnR5RmxhZ3MpOwogfQogCiBib29sIER5bmFtaWNCdWZmZXI6
OmFsbG9jYXRlRnJvbUN1cnJlbnRCdWZmZXIoc2l6ZV90IHNpemVJbkJ5dGVzLCBCdWZmZXJIZWxw
ZXIgKipidWZmZXJIZWxwZXJPdXQpCkBAIC0yNDA4LDcgKzI0MjMsNyBAQCBib29sIER5bmFtaWNC
dWZmZXI6OmFsbG9jYXRlRnJvbUN1cnJlbnRCdWZmZXIoc2l6ZV90IHNpemVJbkJ5dGVzLCBCdWZm
ZXJIZWxwZXIgKgogICAgIHJldHVybiB0cnVlOwogfQogCi1hbmdsZTo6UmVzdWx0IER5bmFtaWNC
dWZmZXI6OmFsbG9jYXRlKENvbnRleHRWayAqY29udGV4dFZrLAorYW5nbGU6OlJlc3VsdCBEeW5h
bWljQnVmZmVyOjphbGxvY2F0ZShDb250ZXh0ICpjb250ZXh0LAogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBzaXplX3Qgc2l6ZUluQnl0ZXMsCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIEJ1ZmZlckhlbHBlciAqKmJ1ZmZlckhlbHBlck91dCwKICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCAqbmV3QnVmZmVyQWxsb2Nh
dGVkT3V0KQpAQCAtMjQzNCwyMCArMjQ0OSwyMiBAQCBhbmdsZTo6UmVzdWx0IER5bmFtaWNCdWZm
ZXI6OmFsbG9jYXRlKENvbnRleHRWayAqY29udGV4dFZrLAogICAgICAgICBBU1NFUlQoIW1CdWZm
ZXIpOwogICAgIH0KIAorICAgIFJlbmRlcmVyVmsgKnJlbmRlcmVyID0gY29udGV4dC0+Z2V0UmVu
ZGVyZXIoKTsKKwogICAgIGNvbnN0IHNpemVfdCBzaXplSWdub3JpbmdIaXN0b3J5ID0gc3RkOjpt
YXgobUluaXRpYWxTaXplLCBzaXplVG9BbGxvY2F0ZSk7CiAgICAgaWYgKHNpemVUb0FsbG9jYXRl
ID4gbVNpemUgfHwgc2l6ZUlnbm9yaW5nSGlzdG9yeSA8IG1TaXplIC8gNCkKICAgICB7CiAgICAg
ICAgIG1TaXplID0gc2l6ZUlnbm9yaW5nSGlzdG9yeTsKICAgICAgICAgLy8gQ2xlYXIgdGhlIGZy
ZWUgbGlzdCBzaW5jZSB0aGUgZnJlZSBidWZmZXJzIGFyZSBub3cgZWl0aGVyIHRvbyBzbWFsbCBv
ciB0b28gYmlnLgotICAgICAgICBSZWxlYXNlQnVmZmVyTGlzdFRvUmVuZGVyZXIoY29udGV4dFZr
LT5nZXRSZW5kZXJlcigpLCAmbUJ1ZmZlckZyZWVMaXN0KTsKKyAgICAgICAgUmVsZWFzZUJ1ZmZl
ckxpc3RUb1JlbmRlcmVyKHJlbmRlcmVyLCAmbUJ1ZmZlckZyZWVMaXN0KTsKICAgICB9CiAKICAg
ICAvLyBUaGUgZnJvbnQgb2YgdGhlIGZyZWUgbGlzdCBzaG91bGQgYmUgdGhlIG9sZGVzdC4gVGh1
cyBpZiBpdCBpcyBpbiB1c2UgdGhlIHJlc3Qgb2YgdGhlCiAgICAgLy8gZnJlZSBsaXN0IHNob3Vs
ZCBiZSBpbiB1c2UgYXMgd2VsbC4KICAgICBpZiAobUJ1ZmZlckZyZWVMaXN0LmVtcHR5KCkgfHwK
LSAgICAgICAgbUJ1ZmZlckZyZWVMaXN0LmZyb250KCktPmlzQ3VycmVudGx5SW5Vc2UoY29udGV4
dFZrLT5nZXRMYXN0Q29tcGxldGVkUXVldWVTZXJpYWwoKSkpCisgICAgICAgIG1CdWZmZXJGcmVl
TGlzdC5mcm9udCgpLT5pc0N1cnJlbnRseUluVXNlKHJlbmRlcmVyLT5nZXRMYXN0Q29tcGxldGVk
UXVldWVTZXJpYWwoKSkpCiAgICAgewotICAgICAgICBBTkdMRV9UUlkoYWxsb2NhdGVOZXdCdWZm
ZXIoY29udGV4dFZrKSk7CisgICAgICAgIEFOR0xFX1RSWShhbGxvY2F0ZU5ld0J1ZmZlcihjb250
ZXh0KSk7CiAgICAgfQogICAgIGVsc2UKICAgICB7CkBAIC0yNjI2LDcgKzI2NDMsOSBAQCBCdWZm
ZXJQb29sOjp+QnVmZmVyUG9vbCgpCiAKIHZvaWQgQnVmZmVyUG9vbDo6cHJ1bmVFbXB0eUJ1ZmZl
cnMoUmVuZGVyZXJWayAqcmVuZGVyZXIpCiB7Ci0gICAgZm9yIChhdXRvIGl0ZXIgPSBtQnVmZmVy
QmxvY2tzLmJlZ2luKCk7IGl0ZXIgIT0gbUJ1ZmZlckJsb2Nrcy5lbmQoKTspCisgICAgaW50IGVt
cHR5QnVmZmVyQ291bnQgPSAwOworICAgIGludCBmcmVlZEJ1ZmZlckNvdW50ID0gMDsKKyAgICBm
b3IgKGF1dG8gaXRlciA9IG1CdWZmZXJCbG9ja3MucmJlZ2luKCk7IGl0ZXIgIT0gbUJ1ZmZlckJs
b2Nrcy5yZW5kKCk7KQogICAgIHsKICAgICAgICAgaWYgKCEoKml0ZXIpLT5pc0VtcHR5KCkpCiAg
ICAgICAgIHsKQEAgLTI2MzgsMTYgKzI2NTcsMzQgQEAgdm9pZCBCdWZmZXJQb29sOjpwcnVuZUVt
cHR5QnVmZmVycyhSZW5kZXJlclZrICpyZW5kZXJlcikKICAgICAgICAgaW50MzJfdCBjb3VudFJl
bWFpbnNFbXB0eSA9ICgqaXRlciktPmdldEFuZEluY3JlbWVudEVtcHR5Q291bnRlcigpOwogCiAg
ICAgICAgIC8vIFdlIHdpbGwgYWx3YXlzIGZyZWUgZW1wdHkgYnVmZmVycyB0aGF0IGhhcyBzbWFs
bGVyIHNpemUuIE9yIGlmIHRoZSBlbXB0eSBidWZmZXIgaGFzIGJlZW4KLSAgICAgICAgLy8gZm91
bmQgZW1wdHkgZm9yIGxvbmcgZW5vdWdoIHRpbWUsIHdlIGFsc28gZnJlZSBpdC4KLSAgICAgICAg
aWYgKCgqaXRlciktPmdldE1lbW9yeVNpemUoKSA8IG1TaXplIHx8IGNvdW50UmVtYWluc0VtcHR5
ID49IGtNYXhDb3VudFJlbWFpbnNFbXB0eSkKKyAgICAgICAgLy8gZm91bmQgZW1wdHkgZm9yIGxv
bmcgZW5vdWdoIHRpbWUsIG9yIHdlIGFjY3VtdWxhdGVkIHRvbyBtYW55IGVtcHR5IGJ1ZmZlcnMs
IHdlIGFsc28gZnJlZQorICAgICAgICAvLyBpdC4KKyAgICAgICAgaWYgKCgqaXRlciktPmdldE1l
bW9yeVNpemUoKSA8IG1TaXplIHx8IGNvdW50UmVtYWluc0VtcHR5ID49IGtNYXhDb3VudFJlbWFp
bnNFbXB0eSB8fAorICAgICAgICAgICAgZW1wdHlCdWZmZXJDb3VudCA+PSBrTWF4RW1wdHlCdWZm
ZXJDb3VudCkKICAgICAgICAgewogICAgICAgICAgICAgKCppdGVyKS0+ZGVzdHJveShyZW5kZXJl
cik7Ci0gICAgICAgICAgICBpdGVyID0gbUJ1ZmZlckJsb2Nrcy5lcmFzZShpdGVyKTsKKyAgICAg
ICAgICAgICgqaXRlcikucmVzZXQoKTsKKyAgICAgICAgICAgICsrZnJlZWRCdWZmZXJDb3VudDsK
ICAgICAgICAgfQogICAgICAgICBlbHNlCiAgICAgICAgIHsKLSAgICAgICAgICAgICsraXRlcjsK
KyAgICAgICAgICAgICsrZW1wdHlCdWZmZXJDb3VudDsKICAgICAgICAgfQorICAgICAgICArK2l0
ZXI7CisgICAgfQorCisgICAgLy8gUmVtb3ZlIHRoZSBudWxsIHBvaW50ZXJzIGFsbCBhdCBvbmNl
LCBpZiBhbnkuCisgICAgaWYgKGZyZWVkQnVmZmVyQ291bnQpCisgICAgeworICAgICAgICBCdWZm
ZXJCbG9ja1BvaW50ZXJWZWN0b3IgY29tcGFjdGVkQmxvY2tzOworICAgICAgICBmb3IgKGF1dG8g
aXRlciA9IG1CdWZmZXJCbG9ja3MuYmVnaW4oKTsgaXRlciAhPSBtQnVmZmVyQmxvY2tzLmVuZCgp
OyArK2l0ZXIpCisgICAgICAgIHsKKyAgICAgICAgICAgIGlmICgqaXRlcikKKyAgICAgICAgICAg
IHsKKyAgICAgICAgICAgICAgICBjb21wYWN0ZWRCbG9ja3MucHVzaF9iYWNrKHN0ZDo6bW92ZSgq
aXRlcikpOworICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgICAgIG1CdWZmZXJCbG9ja3Mg
PSBzdGQ6Om1vdmUoY29tcGFjdGVkQmxvY2tzKTsKICAgICB9CiB9CiAKQEAgLTI3MDYsNiArMjc0
Myw3IEBAIGFuZ2xlOjpSZXN1bHQgQnVmZmVyUG9vbDo6YWxsb2NhdGVOZXdCdWZmZXIoQ29udGV4
dFZrICpjb250ZXh0VmssIFZrRGV2aWNlU2l6ZSBzCiAKICAgICAvLyBBcHBlbmQgdGhlIGJ1ZmZl
ckJsb2NrIGludG8gdGhlIHBvb2wKICAgICBtQnVmZmVyQmxvY2tzLnB1c2hfYmFjayhzdGQ6Om1v
dmUoYmxvY2spKTsKKyAgICBjb250ZXh0VmstPmdldFBlcmZDb3VudGVycygpLmFsbG9jYXRlTmV3
QnVmZmVyQmxvY2tDYWxscysrOwogCiAgICAgcmV0dXJuIGFuZ2xlOjpSZXN1bHQ6OkNvbnRpbnVl
OwogfQpAQCAtMjcxNyw2ICsyNzU1LDggQEAgYW5nbGU6OlJlc3VsdCBCdWZmZXJQb29sOjphbGxv
Y2F0ZUJ1ZmZlcihDb250ZXh0VmsgKmNvbnRleHRWaywKIHsKICAgICBBU1NFUlQoYWxpZ25tZW50
KTsKICAgICBWa0RldmljZVNpemUgb2Zmc2V0OworICAgIFZrRGV2aWNlU2l6ZSBhbGlnbmVkU2l6
ZSA9IHJvdW5kVXAoc2l6ZUluQnl0ZXMsIGFsaWdubWVudCk7CisKICAgICAvLyBXZSBhbHdheXMg
YWxsb2NhdGUgZnJvbSByZXZlcnNlIG9yZGVyIHNvIHRoYXQgb2xkZXIgYnVmZmVycyBoYXZlIGEg
Y2hhbmNlIHRvIGFnZSBvdXQuIFRoZQogICAgIC8vIGFzc3VtcHRpb24gaXMgdGhhdCB0byBhbGxv
Y2F0ZSBmcm9tIG5ldyBidWZmZXJzIGZpcnN0IG1heSBoYXZlIGEgYmV0dGVyIGNoYW5jZSB0byBs
ZWF2ZSB0aGUKICAgICAvLyBvbGRlciBidWZmZXJzIGNvbXBsZXRlbHkgZW1wdHkgYW5kIHdlIG1h
eSBhYmxlIHRvIGZyZWUgaXQuCkBAIC0yNzMxLDIxICsyNzcxLDIxIEBAIGFuZ2xlOjpSZXN1bHQg
QnVmZmVyUG9vbDo6YWxsb2NhdGVCdWZmZXIoQ29udGV4dFZrICpjb250ZXh0VmssCiAgICAgICAg
ICAgICBjb250aW51ZTsKICAgICAgICAgfQogCi0gICAgICAgIGlmIChibG9jay0+YWxsb2NhdGUo
c2l6ZUluQnl0ZXMsIGFsaWdubWVudCwgJm9mZnNldCkgPT0gVktfU1VDQ0VTUykKKyAgICAgICAg
aWYgKGJsb2NrLT5hbGxvY2F0ZShhbGlnbmVkU2l6ZSwgYWxpZ25tZW50LCAmb2Zmc2V0KSA9PSBW
S19TVUNDRVNTKQogICAgICAgICB7Ci0gICAgICAgICAgICBzdWJhbGxvY2F0aW9uLT5pbml0KGNv
bnRleHRWay0+Z2V0RGV2aWNlKCksIGJsb2NrLmdldCgpLCBvZmZzZXQsIHNpemVJbkJ5dGVzKTsK
KyAgICAgICAgICAgIHN1YmFsbG9jYXRpb24tPmluaXQoY29udGV4dFZrLT5nZXREZXZpY2UoKSwg
YmxvY2suZ2V0KCksIG9mZnNldCwgYWxpZ25lZFNpemUpOwogICAgICAgICAgICAgcmV0dXJuIGFu
Z2xlOjpSZXN1bHQ6OkNvbnRpbnVlOwogICAgICAgICB9CiAgICAgICAgICsraXRlcjsKICAgICB9
CiAKLSAgICBBTkdMRV9UUlkoYWxsb2NhdGVOZXdCdWZmZXIoY29udGV4dFZrLCBzaXplSW5CeXRl
cykpOworICAgIEFOR0xFX1RSWShhbGxvY2F0ZU5ld0J1ZmZlcihjb250ZXh0VmssIGFsaWduZWRT
aXplKSk7CiAKICAgICAvLyBTdWItYWxsb2NhdGUgZnJvbSB0aGUgYnVmZmVyQmxvY2suCiAgICAg
c3RkOjp1bmlxdWVfcHRyPEJ1ZmZlckJsb2NrPiAmYmxvY2sgPSBtQnVmZmVyQmxvY2tzLmJhY2so
KTsKLSAgICBBTkdMRV9WS19DSEVDSyhjb250ZXh0VmssIGJsb2NrLT5hbGxvY2F0ZShzaXplSW5C
eXRlcywgYWxpZ25tZW50LCAmb2Zmc2V0KSA9PSBWS19TVUNDRVNTLAorICAgIEFOR0xFX1ZLX0NI
RUNLKGNvbnRleHRWaywgYmxvY2stPmFsbG9jYXRlKGFsaWduZWRTaXplLCBhbGlnbm1lbnQsICZv
ZmZzZXQpID09IFZLX1NVQ0NFU1MsCiAgICAgICAgICAgICAgICAgICAgVktfRVJST1JfT1VUX09G
X0RFVklDRV9NRU1PUlkpOwotICAgIHN1YmFsbG9jYXRpb24tPmluaXQoY29udGV4dFZrLT5nZXRE
ZXZpY2UoKSwgYmxvY2suZ2V0KCksIG9mZnNldCwgc2l6ZUluQnl0ZXMpOworICAgIHN1YmFsbG9j
YXRpb24tPmluaXQoY29udGV4dFZrLT5nZXREZXZpY2UoKSwgYmxvY2suZ2V0KCksIG9mZnNldCwg
YWxpZ25lZFNpemUpOwogCiAgICAgcmV0dXJuIGFuZ2xlOjpSZXN1bHQ6OkNvbnRpbnVlOwogfQpA
QCAtMjgxNSw3ICsyODU1LDggQEAgdm9pZCBEZXNjcmlwdG9yUG9vbEhlbHBlcjo6cmVsZWFzZShD
b250ZXh0VmsgKmNvbnRleHRWaykKIH0KIAogYW5nbGU6OlJlc3VsdCBEZXNjcmlwdG9yUG9vbEhl
bHBlcjo6YWxsb2NhdGVEZXNjcmlwdG9yU2V0cygKLSAgICBDb250ZXh0VmsgKmNvbnRleHRWaywK
KyAgICBDb250ZXh0ICpjb250ZXh0LAorICAgIFJlc291cmNlVXNlTGlzdCAqcmVzb3VyY2VVc2VM
aXN0LAogICAgIGNvbnN0IERlc2NyaXB0b3JTZXRMYXlvdXQgJmRlc2NyaXB0b3JTZXRMYXlvdXQs
CiAgICAgdWludDMyX3QgZGVzY3JpcHRvclNldENvdW50LAogICAgIFZrRGVzY3JpcHRvclNldCAq
ZGVzY3JpcHRvclNldHNPdXQpCkBAIC0yODI5LDExICsyODcwLDExIEBAIGFuZ2xlOjpSZXN1bHQg
RGVzY3JpcHRvclBvb2xIZWxwZXI6OmFsbG9jYXRlRGVzY3JpcHRvclNldHMoCiAgICAgQVNTRVJU
KG1GcmVlRGVzY3JpcHRvclNldHMgPj0gZGVzY3JpcHRvclNldENvdW50KTsKICAgICBtRnJlZURl
c2NyaXB0b3JTZXRzIC09IGRlc2NyaXB0b3JTZXRDb3VudDsKIAotICAgIEFOR0xFX1ZLX1RSWShj
b250ZXh0VmssIG1EZXNjcmlwdG9yUG9vbC5hbGxvY2F0ZURlc2NyaXB0b3JTZXRzKGNvbnRleHRW
ay0+Z2V0RGV2aWNlKCksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgYWxsb2NJbmZvLCBkZXNjcmlwdG9yU2V0c091dCkp
OworICAgIEFOR0xFX1ZLX1RSWShjb250ZXh0LCBtRGVzY3JpcHRvclBvb2wuYWxsb2NhdGVEZXNj
cmlwdG9yU2V0cyhjb250ZXh0LT5nZXREZXZpY2UoKSwgYWxsb2NJbmZvLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXNj
cmlwdG9yU2V0c091dCkpOwogCiAgICAgLy8gVGhlIHBvb2wgaXMgc3RpbGwgaW4gdXNlIGV2ZXJ5
IHRpbWUgYSBuZXcgZGVzY3JpcHRvciBzZXQgaXMgYWxsb2NhdGVkIGZyb20gaXQuCi0gICAgcmV0
YWluKCZjb250ZXh0VmstPmdldFJlc291cmNlVXNlTGlzdCgpKTsKKyAgICByZXRhaW4ocmVzb3Vy
Y2VVc2VMaXN0KTsKIAogICAgIHJldHVybiBhbmdsZTo6UmVzdWx0OjpDb250aW51ZTsKIH0KQEAg
LTI4OTUsNyArMjkzNiw4IEBAIHZvaWQgRHluYW1pY0Rlc2NyaXB0b3JQb29sOjpyZWxlYXNlKENv
bnRleHRWayAqY29udGV4dFZrKQogfQogCiBhbmdsZTo6UmVzdWx0IER5bmFtaWNEZXNjcmlwdG9y
UG9vbDo6YWxsb2NhdGVTZXRzQW5kR2V0SW5mbygKLSAgICBDb250ZXh0VmsgKmNvbnRleHRWaywK
KyAgICBDb250ZXh0ICpjb250ZXh0LAorICAgIFJlc291cmNlVXNlTGlzdCAqcmVzb3VyY2VVc2VM
aXN0LAogICAgIGNvbnN0IERlc2NyaXB0b3JTZXRMYXlvdXQgJmRlc2NyaXB0b3JTZXRMYXlvdXQs
CiAgICAgdWludDMyX3QgZGVzY3JpcHRvclNldENvdW50LAogICAgIFJlZkNvdW50ZWREZXNjcmlw
dG9yUG9vbEJpbmRpbmcgKmJpbmRpbmdPdXQsCkBAIC0yOTExLDIyICsyOTUzLDIyIEBAIGFuZ2xl
OjpSZXN1bHQgRHluYW1pY0Rlc2NyaXB0b3JQb29sOjphbGxvY2F0ZVNldHNBbmRHZXRJbmZvKAog
ICAgIHsKICAgICAgICAgaWYgKCFtRGVzY3JpcHRvclBvb2xzW21DdXJyZW50UG9vbEluZGV4XS0+
Z2V0KCkuaGFzQ2FwYWNpdHkoZGVzY3JpcHRvclNldENvdW50KSkKICAgICAgICAgewotICAgICAg
ICAgICAgQU5HTEVfVFJZKGFsbG9jYXRlTmV3UG9vbChjb250ZXh0VmspKTsKKyAgICAgICAgICAg
IEFOR0xFX1RSWShhbGxvY2F0ZU5ld1Bvb2woY29udGV4dCkpOwogICAgICAgICAgICAgKm5ld1Bv
b2xBbGxvY2F0ZWRPdXQgPSB0cnVlOwogICAgICAgICB9CiAKICAgICAgICAgYmluZGluZ091dC0+
c2V0KG1EZXNjcmlwdG9yUG9vbHNbbUN1cnJlbnRQb29sSW5kZXhdKTsKICAgICB9CiAKLSAgICBy
ZXR1cm4gYmluZGluZ091dC0+Z2V0KCkuYWxsb2NhdGVEZXNjcmlwdG9yU2V0cyhjb250ZXh0Vmss
IGRlc2NyaXB0b3JTZXRMYXlvdXQsCisgICAgcmV0dXJuIGJpbmRpbmdPdXQtPmdldCgpLmFsbG9j
YXRlRGVzY3JpcHRvclNldHMoY29udGV4dCwgcmVzb3VyY2VVc2VMaXN0LCBkZXNjcmlwdG9yU2V0
TGF5b3V0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGRlc2NyaXB0b3JTZXRDb3VudCwgZGVzY3JpcHRvclNldHNPdXQpOwogfQogCi1hbmdsZTo6
UmVzdWx0IER5bmFtaWNEZXNjcmlwdG9yUG9vbDo6YWxsb2NhdGVOZXdQb29sKENvbnRleHRWayAq
Y29udGV4dFZrKQorYW5nbGU6OlJlc3VsdCBEeW5hbWljRGVzY3JpcHRvclBvb2w6OmFsbG9jYXRl
TmV3UG9vbChDb250ZXh0ICpjb250ZXh0KQogewogICAgIGJvb2wgZm91bmQgPSBmYWxzZTsKIAot
ICAgIFNlcmlhbCBsYXN0Q29tcGxldGVkU2VyaWFsID0gY29udGV4dFZrLT5nZXRMYXN0Q29tcGxl
dGVkUXVldWVTZXJpYWwoKTsKKyAgICBTZXJpYWwgbGFzdENvbXBsZXRlZFNlcmlhbCA9IGNvbnRl
eHQtPmdldFJlbmRlcmVyKCktPmdldExhc3RDb21wbGV0ZWRRdWV1ZVNlcmlhbCgpOwogICAgIGZv
ciAoc2l6ZV90IHBvb2xJbmRleCA9IDA7IHBvb2xJbmRleCA8IG1EZXNjcmlwdG9yUG9vbHMuc2l6
ZSgpOyArK3Bvb2xJbmRleCkKICAgICB7CiAgICAgICAgIGlmICghbURlc2NyaXB0b3JQb29sc1tw
b29sSW5kZXhdLT5pc1JlZmVyZW5jZWQoKSAmJgpAQCAtMjk0NCw3ICsyOTg2LDcgQEAgYW5nbGU6
OlJlc3VsdCBEeW5hbWljRGVzY3JpcHRvclBvb2w6OmFsbG9jYXRlTmV3UG9vbChDb250ZXh0Vmsg
KmNvbnRleHRWaykKICAgICAgICAgbUN1cnJlbnRQb29sSW5kZXggPSBtRGVzY3JpcHRvclBvb2xz
LnNpemUoKSAtIDE7CiAKICAgICAgICAgc3RhdGljIGNvbnN0ZXhwciBzaXplX3Qga01heFBvb2xz
ID0gOTk5OTk7Ci0gICAgICAgIEFOR0xFX1ZLX0NIRUNLKGNvbnRleHRWaywgbURlc2NyaXB0b3JQ
b29scy5zaXplKCkgPCBrTWF4UG9vbHMsIFZLX0VSUk9SX1RPT19NQU5ZX09CSkVDVFMpOworICAg
ICAgICBBTkdMRV9WS19DSEVDSyhjb250ZXh0LCBtRGVzY3JpcHRvclBvb2xzLnNpemUoKSA8IGtN
YXhQb29scywgVktfRVJST1JfVE9PX01BTllfT0JKRUNUUyk7CiAgICAgfQogCiAgICAgLy8gVGhp
cyBwb29sIGlzIGdldHRpbmcgaG90LCBzbyBncm93IGl0cyBtYXggc2l6ZSB0byB0cnkgYW5kIHBy
ZXZlbnQgYWxsb2NhdGluZyBhbm90aGVyIHBvb2wgaW4KQEAgLTI5NTQsNyArMjk5Niw3IEBAIGFu
Z2xlOjpSZXN1bHQgRHluYW1pY0Rlc2NyaXB0b3JQb29sOjphbGxvY2F0ZU5ld1Bvb2woQ29udGV4
dFZrICpjb250ZXh0VmspCiAgICAgICAgIG1NYXhTZXRzUGVyUG9vbCAqPSBtTWF4U2V0c1BlclBv
b2xNdWx0aXBsaWVyOwogICAgIH0KIAotICAgIHJldHVybiBtRGVzY3JpcHRvclBvb2xzW21DdXJy
ZW50UG9vbEluZGV4XS0+Z2V0KCkuaW5pdChjb250ZXh0VmssIG1Qb29sU2l6ZXMsIG1NYXhTZXRz
UGVyUG9vbCk7CisgICAgcmV0dXJuIG1EZXNjcmlwdG9yUG9vbHNbbUN1cnJlbnRQb29sSW5kZXhd
LT5nZXQoKS5pbml0KGNvbnRleHQsIG1Qb29sU2l6ZXMsIG1NYXhTZXRzUGVyUG9vbCk7CiB9CiAK
IC8vIEZvciB0ZXN0aW5nIG9ubHkhCkBAIC0zODEwLDcgKzM4NTIsNyBAQCBCdWZmZXJIZWxwZXIg
JkJ1ZmZlckhlbHBlcjo6b3BlcmF0b3I9KEJ1ZmZlckhlbHBlciAmJm90aGVyKQogICAgIHJldHVy
biAqdGhpczsKIH0KIAotYW5nbGU6OlJlc3VsdCBCdWZmZXJIZWxwZXI6OmluaXQodms6OkNvbnRl
eHQgKmNvbnRleHQsCithbmdsZTo6UmVzdWx0IEJ1ZmZlckhlbHBlcjo6aW5pdChDb250ZXh0ICpj
b250ZXh0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgVmtCdWZmZXJD
cmVhdGVJbmZvICZyZXF1ZXN0ZWRDcmVhdGVJbmZvLAogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgVmtNZW1vcnlQcm9wZXJ0eUZsYWdzIG1lbW9yeVByb3BlcnR5RmxhZ3MpCiB7CkBA
IC00MzU3LDcgKzQzOTksOCBAQCBJbWFnZUhlbHBlcjo6SW1hZ2VIZWxwZXIoSW1hZ2VIZWxwZXIg
JiZvdGhlcikKICAgICAgIG1TdWJyZXNvdXJjZVVwZGF0ZXMoc3RkOjptb3ZlKG90aGVyLm1TdWJy
ZXNvdXJjZVVwZGF0ZXMpKSwKICAgICAgIG1DdXJyZW50U2luZ2xlQ2xlYXJWYWx1ZShzdGQ6Om1v
dmUob3RoZXIubUN1cnJlbnRTaW5nbGVDbGVhclZhbHVlKSksCiAgICAgICBtQ29udGVudERlZmlu
ZWQoc3RkOjptb3ZlKG90aGVyLm1Db250ZW50RGVmaW5lZCkpLAotICAgICAgbVN0ZW5jaWxDb250
ZW50RGVmaW5lZChzdGQ6Om1vdmUob3RoZXIubVN0ZW5jaWxDb250ZW50RGVmaW5lZCkpCisgICAg
ICBtU3RlbmNpbENvbnRlbnREZWZpbmVkKHN0ZDo6bW92ZShvdGhlci5tU3RlbmNpbENvbnRlbnRE
ZWZpbmVkKSksCisgICAgICBtSW1hZ2VBbmRWaWV3R2FyYmFnZShzdGQ6Om1vdmUob3RoZXIubUlt
YWdlQW5kVmlld0dhcmJhZ2UpKQogewogICAgIEFTU0VSVCh0aGlzICE9ICZvdGhlcik7CiAgICAg
b3RoZXIucmVzZXRDYWNoZWRQcm9wZXJ0aWVzKCk7CkBAIC00NzE0LDkgKzQ3NTcsMTEgQEAgdm9p
ZCBJbWFnZUhlbHBlcjo6ZGVyaXZlRXh0ZXJuYWxJbWFnZVRpbGluZyhjb25zdCB2b2lkICpjcmVh
dGVJbmZvQ2hhaW4pCiAKIHZvaWQgSW1hZ2VIZWxwZXI6OnJlbGVhc2VJbWFnZShSZW5kZXJlclZr
ICpyZW5kZXJlcikKIHsKLSAgICByZW5kZXJlci0+Y29sbGVjdEdhcmJhZ2VBbmRSZWluaXQoJm1V
c2UsICZtSW1hZ2UsICZtRGV2aWNlTWVtb3J5KTsKLSAgICBtSW1hZ2VTZXJpYWwgPSBrSW52YWxp
ZEltYWdlU2VyaWFsOwotCisgICAgQ29sbGVjdEdhcmJhZ2UoJm1JbWFnZUFuZFZpZXdHYXJiYWdl
LCAmbUltYWdlLCAmbURldmljZU1lbW9yeSk7CisgICAgLy8gTm90aWZ5IHVzIGlmIHRoZSBhcHBs
aWNhdGlvbiBwYXR0ZXJuIGNhdXNlcyB0aGUgdmlld3MgdG8ga2VlcCBnZXR0aW5nIHJlYWxsb2Nh
dGVkIGFuZCBjcmVhdGUKKyAgICAvLyBpbmZpbml0ZSBnYXJiYWdlCisgICAgQVNTRVJUKG1JbWFn
ZUFuZFZpZXdHYXJiYWdlLnNpemUoKSA8PSAxMDAwKTsKKyAgICByZWxlYXNlSW1hZ2VBbmRWaWV3
R2FyYmFnZShyZW5kZXJlcik7CiAgICAgc2V0RW50aXJlQ29udGVudFVuZGVmaW5lZCgpOwogfQog
CkBAIC00NzM0LDYgKzQ3NzksMjIgQEAgdm9pZCBJbWFnZUhlbHBlcjo6cmVsZWFzZUltYWdlRnJv
bVNoYXJlQ29udGV4dHMoUmVuZGVyZXJWayAqcmVuZGVyZXIsIENvbnRleHRWawogICAgIHJlbGVh
c2VJbWFnZShyZW5kZXJlcik7CiB9CiAKK3ZvaWQgSW1hZ2VIZWxwZXI6OmNvbGxlY3RWaWV3R2Fy
YmFnZShSZW5kZXJlclZrICpyZW5kZXJlciwgdms6OkltYWdlVmlld0hlbHBlciAqaW1hZ2VWaWV3
KQoreworICAgIGltYWdlVmlldy0+cmVsZWFzZShyZW5kZXJlciwgbUltYWdlQW5kVmlld0dhcmJh
Z2UpOworICAgIC8vIElmIHdlIGRvIG5vdCBoYXZlIGFueSBJbWFnZUhlbHBlcjo6bVVzZSByZXRh
aW5lZCBpbiBSZXNvdXJjZVVzZUxpc3QsIG1ha2UgYSBjbG9uZWQgY29weSBvZgorICAgIC8vIElt
YWdlSGVscGVyOjptVXNlIGFuZCB1c2UgaXQgdG8gZnJlZSBhbnkgZ2FyYmFnZSBpbiBtSW1hZ2VB
bmRWaWV3R2FyYmFnZSBpbW1lZGlhdGVseS4KKyAgICBpZiAoIW1Vc2UudXNlZEluUmVjb3JkZWRD
b21tYW5kcygpICYmICFtSW1hZ2VBbmRWaWV3R2FyYmFnZS5lbXB0eSgpKQorICAgIHsKKyAgICAg
ICAgLy8gY2xvbmUgSW1hZ2VIZWxwZXI6Om1Vc2UKKyAgICAgICAgcng6OnZrOjpTaGFyZWRSZXNv
dXJjZVVzZSBjbG9uZWRtVXNlOworICAgICAgICBjbG9uZWRtVXNlLmluaXQoKTsKKyAgICAgICAg
Y2xvbmVkbVVzZS51cGRhdGVTZXJpYWxPbmVPZmYobVVzZS5nZXRTZXJpYWwoKSk7CisgICAgICAg
IHJlbmRlcmVyLT5jb2xsZWN0R2FyYmFnZShzdGQ6Om1vdmUoY2xvbmVkbVVzZSksIHN0ZDo6bW92
ZShtSW1hZ2VBbmRWaWV3R2FyYmFnZSkpOworICAgIH0KKyAgICBBU1NFUlQobUltYWdlQW5kVmll
d0dhcmJhZ2Uuc2l6ZSgpIDw9IDEwMDApOworfQorCiB2b2lkIEltYWdlSGVscGVyOjpyZWxlYXNl
U3RhZ2VkVXBkYXRlcyhSZW5kZXJlclZrICpyZW5kZXJlcikKIHsKICAgICBBU1NFUlQodmFsaWRh
dGVTdWJyZXNvdXJjZVVwZGF0ZVJlZkNvdW50c0NvbnNpc3RlbnQoKSk7CkBAIC00NzYwLDYgKzQ4
MjEsMjAgQEAgdm9pZCBJbWFnZUhlbHBlcjo6cmVzZXRJbWFnZVdlYWtSZWZlcmVuY2UoKQogICAg
IG1Sb3RhdGVkQXNwZWN0UmF0aW8gPSBmYWxzZTsKIH0KIAordm9pZCBJbWFnZUhlbHBlcjo6cmVs
ZWFzZUltYWdlQW5kVmlld0dhcmJhZ2UoUmVuZGVyZXJWayAqcmVuZGVyZXIpCit7CisgICAgaWYg
KCFtSW1hZ2VBbmRWaWV3R2FyYmFnZS5lbXB0eSgpKQorICAgIHsKKyAgICAgICAgcmVuZGVyZXIt
PmNvbGxlY3RHYXJiYWdlKHN0ZDo6bW92ZShtVXNlKSwgc3RkOjptb3ZlKG1JbWFnZUFuZFZpZXdH
YXJiYWdlKSk7CisgICAgfQorICAgIGVsc2UKKyAgICB7CisgICAgICAgIG1Vc2UucmVsZWFzZSgp
OworICAgIH0KKyAgICBtVXNlLmluaXQoKTsKKyAgICBtSW1hZ2VTZXJpYWwgPSBrSW52YWxpZElt
YWdlU2VyaWFsOworfQorCiBhbmdsZTo6UmVzdWx0IEltYWdlSGVscGVyOjppbml0aWFsaXplTm9u
WmVyb01lbW9yeShDb250ZXh0ICpjb250ZXh0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCBoYXNQcm90ZWN0ZWRDb250ZW50LAogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVmtEZXZpY2VTaXpl
IHNpemUpCkBAIC01MDk5LDYgKzUxNzQsMTIgQEAgYW5nbGU6OlJlc3VsdCBJbWFnZUhlbHBlcjo6
aW5pdFJlaW50ZXJwcmV0ZWRMYXllckltYWdlVmlldyhDb250ZXh0ICpjb250ZXh0LAogCiB2b2lk
IEltYWdlSGVscGVyOjpkZXN0cm95KFJlbmRlcmVyVmsgKnJlbmRlcmVyKQogeworICAgIC8vIGRl
c3Ryb3kgYW55IHBlbmRpbmcgZ2FyYmFnZSBvYmplY3RzIChtb3N0IGxpa2VseSBmcm9tIEltYWdl
Vmlld0hlbHBlcikgYXQgdGhpcyBwb2ludAorICAgIGZvciAoR2FyYmFnZU9iamVjdCAmb2JqZWN0
IDogbUltYWdlQW5kVmlld0dhcmJhZ2UpCisgICAgeworICAgICAgICBvYmplY3QuZGVzdHJveShy
ZW5kZXJlcik7CisgICAgfQorCiAgICAgVmtEZXZpY2UgZGV2aWNlID0gcmVuZGVyZXItPmdldERl
dmljZSgpOwogCiAgICAgbUltYWdlLmRlc3Ryb3koZGV2aWNlKTsKQEAgLTY5MzcsNiArNzAxOCw3
IEBAIHZvaWQgSW1hZ2VIZWxwZXI6OnN0YWdlU2VsZkFzU3VicmVzb3VyY2VVcGRhdGVzKENvbnRl
eHRWayAqY29udGV4dFZrLAogICAgIHByZXZJbWFnZS0+Z2V0KCkubUxldmVsQ291bnQgICAgICAg
ICAgICAgICAgICA9IGxldmVsQ291bnQ7CiAgICAgcHJldkltYWdlLT5nZXQoKS5tTGF5ZXJDb3Vu
dCAgICAgICAgICAgICAgICAgID0gbUxheWVyQ291bnQ7CiAgICAgcHJldkltYWdlLT5nZXQoKS5t
SW1hZ2VTZXJpYWwgICAgICAgICAgICAgICAgID0gbUltYWdlU2VyaWFsOworICAgIHByZXZJbWFn
ZS0+Z2V0KCkubUltYWdlQW5kVmlld0dhcmJhZ2UgICAgICAgICA9IHN0ZDo6bW92ZShtSW1hZ2VB
bmRWaWV3R2FyYmFnZSk7CiAKICAgICAvLyBSZXNldCBpbmZvcm1hdGlvbiBmb3IgY3VycmVudCAo
aW52YWxpZCkgaW1hZ2UuCiAgICAgbUN1cnJlbnRMYXlvdXQgICAgICAgICAgICAgICA9IEltYWdl
TGF5b3V0OjpVbmRlZmluZWQ7CkBAIC03MjM3LDExICs3MzE5LDEyIEBAIGFuZ2xlOjpSZXN1bHQg
SW1hZ2VIZWxwZXI6OmZsdXNoU3RhZ2VkVXBkYXRlcyhDb250ZXh0VmsgKmNvbnRleHRWaywKICAg
ICAgICAgICAgICAgICBBTkdMRV9UUlkoCiAgICAgICAgICAgICAgICAgICAgIGNvbnRleHRWay0+
Z2V0T3V0c2lkZVJlbmRlclBhc3NDb21tYW5kQnVmZmVyKGJ1ZmZlckFjY2VzcywgJmNvbW1hbmRC
dWZmZXIpKTsKIAorICAgICAgICAgICAgICAgIFZrQnVmZmVySW1hZ2VDb3B5ICpjb3B5UmVnaW9u
ID0gJnVwZGF0ZS5kYXRhLmJ1ZmZlci5jb3B5UmVnaW9uOwogICAgICAgICAgICAgICAgIGNvbW1h
bmRCdWZmZXItPmNvcHlCdWZmZXJUb0ltYWdlKGN1cnJlbnRCdWZmZXItPmdldEJ1ZmZlcigpLmdl
dEhhbmRsZSgpLCBtSW1hZ2UsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgZ2V0Q3VycmVudExheW91dCgpLCAxLAotICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICZ1cGRhdGUuZGF0YS5idWZmZXIuY29weVJlZ2lv
bik7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0
Q3VycmVudExheW91dCgpLCAxLCBjb3B5UmVnaW9uKTsKKyAgICAgICAgICAgICAgICBBTkdMRV9U
UlkoY29udGV4dFZrLT5vbkNvcHlVcGRhdGUoY3VycmVudEJ1ZmZlci0+Z2V0U2l6ZSgpKSk7CiAg
ICAgICAgICAgICAgICAgb25Xcml0ZSh1cGRhdGVNaXBMZXZlbEdMLCAxLCB1cGRhdGVCYXNlTGF5
ZXIsIHVwZGF0ZUxheWVyQ291bnQsCi0gICAgICAgICAgICAgICAgICAgICAgICB1cGRhdGUuZGF0
YS5idWZmZXIuY29weVJlZ2lvbi5pbWFnZVN1YnJlc291cmNlLmFzcGVjdE1hc2spOworICAgICAg
ICAgICAgICAgICAgICAgICAgY29weVJlZ2lvbi0+aW1hZ2VTdWJyZXNvdXJjZS5hc3BlY3RNYXNr
KTsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAgIHsKQEAgLTcy
NTEsMTEgKzczMzQsMTIgQEAgYW5nbGU6OlJlc3VsdCBJbWFnZUhlbHBlcjo6Zmx1c2hTdGFnZWRV
cGRhdGVzKENvbnRleHRWayAqY29udGV4dFZrLAogICAgICAgICAgICAgICAgIEFOR0xFX1RSWSgK
ICAgICAgICAgICAgICAgICAgICAgY29udGV4dFZrLT5nZXRPdXRzaWRlUmVuZGVyUGFzc0NvbW1h
bmRCdWZmZXIoaW1hZ2VBY2Nlc3MsICZjb21tYW5kQnVmZmVyKSk7CiAKKyAgICAgICAgICAgICAg
ICBWa0ltYWdlQ29weSAqY29weVJlZ2lvbiA9ICZ1cGRhdGUuZGF0YS5pbWFnZS5jb3B5UmVnaW9u
OwogICAgICAgICAgICAgICAgIGNvbW1hbmRCdWZmZXItPmNvcHlJbWFnZSh1cGRhdGUucmVmQ291
bnRlZC5pbWFnZS0+Z2V0KCkuZ2V0SW1hZ2UoKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgdXBkYXRlLnJlZkNvdW50ZWQuaW1hZ2UtPmdldCgpLmdldEN1cnJlbnRM
YXlvdXQoKSwgbUltYWdlLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBnZXRDdXJyZW50TGF5b3V0KCksIDEsICZ1cGRhdGUuZGF0YS5pbWFnZS5jb3B5UmVnaW9uKTsK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0Q3VycmVudExheW91
dCgpLCAxLCBjb3B5UmVnaW9uKTsKICAgICAgICAgICAgICAgICBvbldyaXRlKHVwZGF0ZU1pcExl
dmVsR0wsIDEsIHVwZGF0ZUJhc2VMYXllciwgdXBkYXRlTGF5ZXJDb3VudCwKLSAgICAgICAgICAg
ICAgICAgICAgICAgIHVwZGF0ZS5kYXRhLmltYWdlLmNvcHlSZWdpb24uZHN0U3VicmVzb3VyY2Uu
YXNwZWN0TWFzayk7CisgICAgICAgICAgICAgICAgICAgICAgICBjb3B5UmVnaW9uLT5kc3RTdWJy
ZXNvdXJjZS5hc3BlY3RNYXNrKTsKICAgICAgICAgICAgIH0KIAogICAgICAgICAgICAgdXBkYXRl
LnJlbGVhc2UoY29udGV4dFZrLT5nZXRSZW5kZXJlcigpKTsKQEAgLTg1MTMsMTAgKzg1OTcsOCBA
QCBMYXllck1vZGUgR2V0TGF5ZXJNb2RlKGNvbnN0IHZrOjpJbWFnZUhlbHBlciAmaW1hZ2UsIHVp
bnQzMl90IGxheWVyQ291bnQpCiAvLyBJbWFnZVZpZXdIZWxwZXIgaW1wbGVtZW50YXRpb24uCiBJ
bWFnZVZpZXdIZWxwZXI6OkltYWdlVmlld0hlbHBlcigpIDogbUN1cnJlbnRCYXNlTWF4TGV2ZWxI
YXNoKDApLCBtTGluZWFyQ29sb3JzcGFjZSh0cnVlKSB7fQogCi1JbWFnZVZpZXdIZWxwZXI6Oklt
YWdlVmlld0hlbHBlcihJbWFnZVZpZXdIZWxwZXIgJiZvdGhlcikgOiBSZXNvdXJjZShzdGQ6Om1v
dmUob3RoZXIpKQorSW1hZ2VWaWV3SGVscGVyOjpJbWFnZVZpZXdIZWxwZXIoSW1hZ2VWaWV3SGVs
cGVyICYmb3RoZXIpCiB7Ci0gICAgc3RkOjpzd2FwKG1Vc2UsIG90aGVyLm1Vc2UpOwotCiAgICAg
c3RkOjpzd2FwKG1DdXJyZW50QmFzZU1heExldmVsSGFzaCwgb3RoZXIubUN1cnJlbnRCYXNlTWF4
TGV2ZWxIYXNoKTsKICAgICBzdGQ6OnN3YXAobUxpbmVhckNvbG9yc3BhY2UsIG90aGVyLm1MaW5l
YXJDb2xvcnNwYWNlKTsKIApAQCAtODU0NiwxMCArODYyOCw4IEBAIHZvaWQgSW1hZ2VWaWV3SGVs
cGVyOjppbml0KFJlbmRlcmVyVmsgKnJlbmRlcmVyKQogICAgIH0KIH0KIAotdm9pZCBJbWFnZVZp
ZXdIZWxwZXI6OnJlbGVhc2UoUmVuZGVyZXJWayAqcmVuZGVyZXIpCit2b2lkIEltYWdlVmlld0hl
bHBlcjo6cmVsZWFzZShSZW5kZXJlclZrICpyZW5kZXJlciwgc3RkOjp2ZWN0b3I8dms6OkdhcmJh
Z2VPYmplY3Q+ICZnYXJiYWdlKQogewotICAgIHN0ZDo6dmVjdG9yPEdhcmJhZ2VPYmplY3Q+IGdh
cmJhZ2U7Ci0KICAgICBtQ3VycmVudEJhc2VNYXhMZXZlbEhhc2ggPSAwOwogCiAgICAgLy8gUmVs
ZWFzZSB0aGUgcmVhZCB2aWV3cwpAQCAtODYwOCwxOCArODY4OCwyMiBAQCB2b2lkIEltYWdlVmll
d0hlbHBlcjo6cmVsZWFzZShSZW5kZXJlclZrICpyZW5kZXJlcikKICAgICB9CiAgICAgbUxheWVy
TGV2ZWxTdG9yYWdlSW1hZ2VWaWV3cy5jbGVhcigpOwogCi0gICAgaWYgKCFnYXJiYWdlLmVtcHR5
KCkpCi0gICAgewotICAgICAgICByZW5kZXJlci0+Y29sbGVjdEdhcmJhZ2Uoc3RkOjptb3ZlKG1V
c2UpLCBzdGQ6Om1vdmUoZ2FyYmFnZSkpOwotCi0gICAgICAgIC8vIEVuc3VyZSB0aGUgcmVzb3Vy
Y2UgdXNlIGlzIGFsd2F5cyB2YWxpZC4KLSAgICAgICAgbVVzZS5pbml0KCk7Ci0gICAgfQotCiAg
ICAgLy8gVXBkYXRlIGltYWdlIHZpZXcgc2VyaWFsLgogICAgIG1JbWFnZVZpZXdTZXJpYWwgPSBy
ZW5kZXJlci0+Z2V0UmVzb3VyY2VTZXJpYWxGYWN0b3J5KCkuZ2VuZXJhdGVJbWFnZU9yQnVmZmVy
Vmlld1NlcmlhbCgpOwogfQogCitib29sIEltYWdlVmlld0hlbHBlcjo6aXNJbWFnZVZpZXdHYXJi
YWdlRW1wdHkoKSBjb25zdAoreworICAgIHJldHVybiBtUGVyTGV2ZWxSYW5nZUxpbmVhclJlYWRJ
bWFnZVZpZXdzLmVtcHR5KCkgJiYKKyAgICAgICAgICAgbVBlckxldmVsUmFuZ2VMaW5lYXJDb3B5
SW1hZ2VWaWV3cy5lbXB0eSgpICYmCisgICAgICAgICAgIG1QZXJMZXZlbFJhbmdlTGluZWFyRmV0
Y2hJbWFnZVZpZXdzLmVtcHR5KCkgJiYKKyAgICAgICAgICAgbVBlckxldmVsUmFuZ2VTUkdCUmVh
ZEltYWdlVmlld3MuZW1wdHkoKSAmJiBtUGVyTGV2ZWxSYW5nZVNSR0JDb3B5SW1hZ2VWaWV3cy5l
bXB0eSgpICYmCisgICAgICAgICAgIG1QZXJMZXZlbFJhbmdlU1JHQkZldGNoSW1hZ2VWaWV3cy5l
bXB0eSgpICYmCisgICAgICAgICAgIG1QZXJMZXZlbFJhbmdlU3RlbmNpbFJlYWRJbWFnZVZpZXdz
LmVtcHR5KCkgJiYgbUxheWVyTGV2ZWxEcmF3SW1hZ2VWaWV3cy5lbXB0eSgpICYmCisgICAgICAg
ICAgIG1MYXllckxldmVsRHJhd0ltYWdlVmlld3NMaW5lYXIuZW1wdHkoKSAmJiBtU3VicmVzb3Vy
Y2VEcmF3SW1hZ2VWaWV3cy5lbXB0eSgpICYmCisgICAgICAgICAgIG1MYXllckxldmVsU3RvcmFn
ZUltYWdlVmlld3MuZW1wdHkoKTsKK30KKwogdm9pZCBJbWFnZVZpZXdIZWxwZXI6OmRlc3Ryb3ko
VmtEZXZpY2UgZGV2aWNlKQogewogICAgIG1DdXJyZW50QmFzZU1heExldmVsSGFzaCA9IDA7CkBA
IC04ODY4LDcgKzg5NTIsNyBAQCBhbmdsZTo6UmVzdWx0IEltYWdlVmlld0hlbHBlcjo6aW5pdFNS
R0JSZWFkVmlld3NJbXBsKENvbnRleHRWayAqY29udGV4dFZrLAogICAgIHJldHVybiBhbmdsZTo6
UmVzdWx0OjpDb250aW51ZTsKIH0KIAotYW5nbGU6OlJlc3VsdCBJbWFnZVZpZXdIZWxwZXI6Omdl
dExldmVsU3RvcmFnZUltYWdlVmlldyhDb250ZXh0VmsgKmNvbnRleHRWaywKK2FuZ2xlOjpSZXN1
bHQgSW1hZ2VWaWV3SGVscGVyOjpnZXRMZXZlbFN0b3JhZ2VJbWFnZVZpZXcoQ29udGV4dCAqY29u
dGV4dCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgZ2w6OlRleHR1cmVUeXBlIHZpZXdUeXBlLAogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBJbWFnZUhlbHBlciAmaW1hZ2Us
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IExldmVsSW5kZXggbGV2ZWxWaywKQEAgLTg4NzksOCArODk2Myw2IEBAIGFuZ2xlOjpSZXN1bHQg
SW1hZ2VWaWV3SGVscGVyOjpnZXRMZXZlbFN0b3JhZ2VJbWFnZVZpZXcoQ29udGV4dFZrICpjb250
ZXh0VmssCiB7CiAgICAgQVNTRVJUKG1JbWFnZVZpZXdTZXJpYWwudmFsaWQoKSk7CiAKLSAgICBy
ZXRhaW4oJmNvbnRleHRWay0+Z2V0UmVzb3VyY2VVc2VMaXN0KCkpOwotCiAgICAgSW1hZ2VWaWV3
ICppbWFnZVZpZXcgPQogICAgICAgICBHZXRMZXZlbEltYWdlVmlldygmbUxldmVsU3RvcmFnZUlt
YWdlVmlld3MsIGxldmVsVmssIGltYWdlLmdldExldmVsQ291bnQoKSk7CiAKQEAgLTg4OTEsMTIg
Kzg5NzMsMTIgQEAgYW5nbGU6OlJlc3VsdCBJbWFnZVZpZXdIZWxwZXI6OmdldExldmVsU3RvcmFn
ZUltYWdlVmlldyhDb250ZXh0VmsgKmNvbnRleHRWaywKICAgICB9CiAKICAgICAvLyBDcmVhdGUg
dGhlIHZpZXcuICBOb3RlIHRoYXQgc3RvcmFnZSBpbWFnZXMgYXJlIG5vdCBhZmZlY3RlZCBieSBz
d2l6emxlIHBhcmFtZXRlcnMuCi0gICAgcmV0dXJuIGltYWdlLmluaXRSZWludGVycHJldGVkTGF5
ZXJJbWFnZVZpZXcoY29udGV4dFZrLCB2aWV3VHlwZSwgaW1hZ2UuZ2V0QXNwZWN0RmxhZ3MoKSwK
KyAgICByZXR1cm4gaW1hZ2UuaW5pdFJlaW50ZXJwcmV0ZWRMYXllckltYWdlVmlldyhjb250ZXh0
LCB2aWV3VHlwZSwgaW1hZ2UuZ2V0QXNwZWN0RmxhZ3MoKSwKICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnbDo6U3dpenpsZVN0YXRlKCksIGltYWdlVmll
dywgbGV2ZWxWaywgMSwgbGF5ZXIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgaW1hZ2UuZ2V0TGF5ZXJDb3VudCgpLCBpbWFnZVVzYWdlRmxhZ3MsIGZv
cm1hdElEKTsKIH0KIAotYW5nbGU6OlJlc3VsdCBJbWFnZVZpZXdIZWxwZXI6OmdldExldmVsTGF5
ZXJTdG9yYWdlSW1hZ2VWaWV3KENvbnRleHRWayAqY29udGV4dFZrLAorYW5nbGU6OlJlc3VsdCBJ
bWFnZVZpZXdIZWxwZXI6OmdldExldmVsTGF5ZXJTdG9yYWdlSW1hZ2VWaWV3KENvbnRleHQgKmNv
bnRleHRWaywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBjb25zdCBJbWFnZUhlbHBlciAmaW1hZ2UsCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTGV2ZWxJbmRleCBs
ZXZlbFZrLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHVpbnQzMl90IGxheWVyLApAQCAtODkwOCw4ICs4OTkwLDYgQEAgYW5nbGU6
OlJlc3VsdCBJbWFnZVZpZXdIZWxwZXI6OmdldExldmVsTGF5ZXJTdG9yYWdlSW1hZ2VWaWV3KENv
bnRleHRWayAqY29udGV4dFYKICAgICBBU1NFUlQobUltYWdlVmlld1NlcmlhbC52YWxpZCgpKTsK
ICAgICBBU1NFUlQoIWltYWdlLmdldEFjdHVhbEZvcm1hdCgpLmlzQmxvY2spOwogCi0gICAgcmV0
YWluKCZjb250ZXh0VmstPmdldFJlc291cmNlVXNlTGlzdCgpKTsKLQogICAgIEltYWdlVmlldyAq
aW1hZ2VWaWV3ID0KICAgICAgICAgR2V0TGV2ZWxMYXllckltYWdlVmlldygmbUxheWVyTGV2ZWxT
dG9yYWdlSW1hZ2VWaWV3cywgbGV2ZWxWaywgbGF5ZXIsIGltYWdlLmdldExldmVsQ291bnQoKSwK
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHZXRJbWFnZUxheWVyQ291bnRGb3JWaWV3
KGltYWdlKSk7CkBAIC04OTI3LDcgKzkwMDcsNyBAQCBhbmdsZTo6UmVzdWx0IEltYWdlVmlld0hl
bHBlcjo6Z2V0TGV2ZWxMYXllclN0b3JhZ2VJbWFnZVZpZXcoQ29udGV4dFZrICpjb250ZXh0Vgog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEsIGltYWdl
VXNhZ2VGbGFncywgZm9ybWF0SUQpOwogfQogCi1hbmdsZTo6UmVzdWx0IEltYWdlVmlld0hlbHBl
cjo6Z2V0TGV2ZWxEcmF3SW1hZ2VWaWV3KENvbnRleHRWayAqY29udGV4dFZrLAorYW5nbGU6OlJl
c3VsdCBJbWFnZVZpZXdIZWxwZXI6OmdldExldmVsRHJhd0ltYWdlVmlldyhDb250ZXh0ICpjb250
ZXh0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBjb25zdCBJbWFnZUhlbHBlciAmaW1hZ2UsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIExldmVsSW5kZXggbGV2ZWxWaywKICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgbGF5ZXIs
CkBAIC04OTM5LDggKzkwMTksNiBAQCBhbmdsZTo6UmVzdWx0IEltYWdlVmlld0hlbHBlcjo6Z2V0
TGV2ZWxEcmF3SW1hZ2VWaWV3KENvbnRleHRWayAqY29udGV4dFZrLAogICAgIEFTU0VSVChtSW1h
Z2VWaWV3U2VyaWFsLnZhbGlkKCkpOwogICAgIEFTU0VSVCghaW1hZ2UuZ2V0QWN0dWFsRm9ybWF0
KCkuaXNCbG9jayk7CiAKLSAgICByZXRhaW4oJmNvbnRleHRWay0+Z2V0UmVzb3VyY2VVc2VMaXN0
KCkpOwotCiAgICAgSW1hZ2VTdWJyZXNvdXJjZVJhbmdlIHJhbmdlID0gTWFrZUltYWdlU3VicmVz
b3VyY2VEcmF3UmFuZ2UoCiAgICAgICAgIGltYWdlLnRvR0xMZXZlbChsZXZlbFZrKSwgbGF5ZXIs
IEdldExheWVyTW9kZShpbWFnZSwgbGF5ZXJDb3VudCksIG1vZGUpOwogCkBAIC04OTU4LDExICs5
MDM2LDExIEBAIGFuZ2xlOjpSZXN1bHQgSW1hZ2VWaWV3SGVscGVyOjpnZXRMZXZlbERyYXdJbWFn
ZVZpZXcoQ29udGV4dFZrICpjb250ZXh0VmssCiAgICAgLy8gTm90ZSB0aGF0IHRoZXNlIHZpZXdz
IGFyZSBzcGVjaWZpY2FsbHkgbWFkZSB0byBiZSB1c2VkIGFzIGZyYW1lYnVmZmVyIGF0dGFjaG1l
bnRzLCBhbmQKICAgICAvLyB0aGVyZWZvcmUgZG9uJ3QgaGF2ZSBzd2l6emxlLgogICAgIGdsOjpU
ZXh0dXJlVHlwZSB2aWV3VHlwZSA9IEdldDJEVGV4dHVyZVR5cGUobGF5ZXJDb3VudCwgaW1hZ2Uu
Z2V0U2FtcGxlcygpKTsKLSAgICByZXR1cm4gaW1hZ2UuaW5pdExheWVySW1hZ2VWaWV3KGNvbnRl
eHRWaywgdmlld1R5cGUsIGltYWdlLmdldEFzcGVjdEZsYWdzKCksIGdsOjpTd2l6emxlU3RhdGUo
KSwKKyAgICByZXR1cm4gaW1hZ2UuaW5pdExheWVySW1hZ2VWaWV3KGNvbnRleHQsIHZpZXdUeXBl
LCBpbWFnZS5nZXRBc3BlY3RGbGFncygpLCBnbDo6U3dpenpsZVN0YXRlKCksCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3LmdldCgpLCBsZXZlbFZrLCAxLCBsYXllciwg
bGF5ZXJDb3VudCwgbW9kZSk7CiB9CiAKLWFuZ2xlOjpSZXN1bHQgSW1hZ2VWaWV3SGVscGVyOjpn
ZXRMZXZlbExheWVyRHJhd0ltYWdlVmlldyhDb250ZXh0VmsgKmNvbnRleHRWaywKK2FuZ2xlOjpS
ZXN1bHQgSW1hZ2VWaWV3SGVscGVyOjpnZXRMZXZlbExheWVyRHJhd0ltYWdlVmlldyhDb250ZXh0
ICpjb250ZXh0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGNvbnN0IEltYWdlSGVscGVyICZpbWFnZSwKICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMZXZlbEluZGV4IGxldmVs
VmssCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgdWludDMyX3QgbGF5ZXIsCkBAIC04OTczLDggKzkwNTEsNiBAQCBhbmdsZTo6UmVzdWx0
IEltYWdlVmlld0hlbHBlcjo6Z2V0TGV2ZWxMYXllckRyYXdJbWFnZVZpZXcoQ29udGV4dFZrICpj
b250ZXh0VmssCiAgICAgQVNTRVJUKG1JbWFnZVZpZXdTZXJpYWwudmFsaWQoKSk7CiAgICAgQVNT
RVJUKCFpbWFnZS5nZXRBY3R1YWxGb3JtYXQoKS5pc0Jsb2NrKTsKIAotICAgIHJldGFpbigmY29u
dGV4dFZrLT5nZXRSZXNvdXJjZVVzZUxpc3QoKSk7Ci0KICAgICBMYXllckxldmVsSW1hZ2VWaWV3
VmVjdG9yICZpbWFnZVZpZXdzID0gKG1vZGUgPT0gZ2w6OlNyZ2JXcml0ZUNvbnRyb2xNb2RlOjpM
aW5lYXIpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/
IG1MYXllckxldmVsRHJhd0ltYWdlVmlld3NMaW5lYXIKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIDogbUxheWVyTGV2ZWxEcmF3SW1hZ2VWaWV3czsKQEAg
LTg5OTMsNyArOTA2OSw3IEBAIGFuZ2xlOjpSZXN1bHQgSW1hZ2VWaWV3SGVscGVyOjpnZXRMZXZl
bExheWVyRHJhd0ltYWdlVmlldyhDb250ZXh0VmsgKmNvbnRleHRWaywKICAgICAvLyBOb3RlIHRo
YXQgdGhlc2Ugdmlld3MgYXJlIHNwZWNpZmljYWxseSBtYWRlIHRvIGJlIHVzZWQgYXMgZnJhbWVi
dWZmZXIgYXR0YWNobWVudHMsIGFuZAogICAgIC8vIHRoZXJlZm9yZSBkb24ndCBoYXZlIHN3aXp6
bGUuCiAgICAgZ2w6OlRleHR1cmVUeXBlIHZpZXdUeXBlID0gR2V0MkRUZXh0dXJlVHlwZSgxLCBp
bWFnZS5nZXRTYW1wbGVzKCkpOwotICAgIHJldHVybiBpbWFnZS5pbml0TGF5ZXJJbWFnZVZpZXco
Y29udGV4dFZrLCB2aWV3VHlwZSwgaW1hZ2UuZ2V0QXNwZWN0RmxhZ3MoKSwgZ2w6OlN3aXp6bGVT
dGF0ZSgpLAorICAgIHJldHVybiBpbWFnZS5pbml0TGF5ZXJJbWFnZVZpZXcoY29udGV4dCwgdmll
d1R5cGUsIGltYWdlLmdldEFzcGVjdEZsYWdzKCksIGdsOjpTd2l6emxlU3RhdGUoKSwKICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGltYWdlVmlldywgbGV2ZWxWaywgMSwgbGF5
ZXIsIDEsIG1vZGUpOwogfQogCkBAIC05MTI0LDcgKzkyMDAsNyBAQCB2b2lkIEJ1ZmZlclZpZXdI
ZWxwZXI6OmRlc3Ryb3koVmtEZXZpY2UgZGV2aWNlKQogICAgIG1WaWV3U2VyaWFsID0ga0ludmFs
aWRJbWFnZU9yQnVmZmVyVmlld1NlcmlhbDsKIH0KIAotYW5nbGU6OlJlc3VsdCBCdWZmZXJWaWV3
SGVscGVyOjpnZXRWaWV3KENvbnRleHRWayAqY29udGV4dFZrLAorYW5nbGU6OlJlc3VsdCBCdWZm
ZXJWaWV3SGVscGVyOjpnZXRWaWV3KENvbnRleHQgKmNvbnRleHQsCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgQnVmZmVySGVscGVyICZidWZmZXIsCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVmtEZXZpY2VTaXplIGJ1ZmZlck9m
ZnNldCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBGb3Jt
YXQgJmZvcm1hdCwKQEAgLTkxNTYsNyArOTIzMiw3IEBAIGFuZ2xlOjpSZXN1bHQgQnVmZmVyVmll
d0hlbHBlcjo6Z2V0VmlldyhDb250ZXh0VmsgKmNvbnRleHRWaywKICAgICB2aWV3Q3JlYXRlSW5m
by5yYW5nZSAgICAgICAgICAgICAgICAgID0gc2l6ZTsKIAogICAgIEJ1ZmZlclZpZXcgdmlldzsK
LSAgICBBTkdMRV9WS19UUlkoY29udGV4dFZrLCB2aWV3LmluaXQoY29udGV4dFZrLT5nZXREZXZp
Y2UoKSwgdmlld0NyZWF0ZUluZm8pKTsKKyAgICBBTkdMRV9WS19UUlkoY29udGV4dCwgdmlldy5p
bml0KGNvbnRleHQtPmdldERldmljZSgpLCB2aWV3Q3JlYXRlSW5mbykpOwogCiAgICAgLy8gQ2Fj
aGUgdGhlIHZpZXcKICAgICBhdXRvIGluc2VydEl0ZXIgPSBtVmlld3MuaW5zZXJ0KHt2aWV3VmtG
b3JtYXQsIHN0ZDo6bW92ZSh2aWV3KX0pOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi92a19oZWxwZXJzLmggYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL3ZrX2hlbHBlcnMu
aAppbmRleCA3OWZhYTI2OTk5ZmM3YzM4MWFlMjYyMzY5MTk4YjM2MWEzNDdjYThjLi41YjE4NjE0
MTFiM2Y5OTEyZjU0MjljOTI5YmE1YzQxNTNiOGZmMTE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL3ZrX2hlbHBlcnMuaAor
KysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2Fu
L3ZrX2hlbHBlcnMuaApAQCAtODUsNyArODUsNyBAQCBjbGFzcyBEeW5hbWljQnVmZmVyIDogYW5n
bGU6Ok5vbkNvcHlhYmxlCiAgICAgLy8gaW50ZXJuYWxseSBtYXkgdHJpZ2dlciBhIG5ldyBidWZm
ZXIgdG8gYmUgY3JlYXRlZCAod2hpY2ggaXMgcmV0dXJuZWQgaW4gdGhlIG9wdGlvbmFsCiAgICAg
Ly8gcGFyYW1ldGVyIGBuZXdCdWZmZXJBbGxvY2F0ZWRPdXRgKS4gVGhlIG5ldyByZWdpb24gd2ls
bCBiZSBpbiB0aGUgcmV0dXJuZWQgYnVmZmVyIGF0IGdpdmVuCiAgICAgLy8gb2Zmc2V0LgotICAg
IGFuZ2xlOjpSZXN1bHQgYWxsb2NhdGUoQ29udGV4dFZrICpjb250ZXh0VmssCisgICAgYW5nbGU6
OlJlc3VsdCBhbGxvY2F0ZShDb250ZXh0ICpjb250ZXh0LAogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgc2l6ZV90IHNpemVJbkJ5dGVzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgQnVm
ZmVySGVscGVyICoqYnVmZmVySGVscGVyT3V0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAg
Ym9vbCAqbmV3QnVmZmVyQWxsb2NhdGVkT3V0KTsKQEAgLTkzLDcgKzkzLDcgQEAgY2xhc3MgRHlu
YW1pY0J1ZmZlciA6IGFuZ2xlOjpOb25Db3B5YWJsZQogICAgIC8vIFRoaXMgcmVsZWFzZXMgcmVz
b3VyY2VzIHdoZW4gdGhleSBtaWdodCBjdXJyZW50bHkgYmUgaW4gdXNlLgogICAgIHZvaWQgcmVs
ZWFzZShSZW5kZXJlclZrICpyZW5kZXJlcik7CiAKLSAgICAvLyBUaGlzIGFkZHMgaW5mbGlnaHQg
YnVmZmVycyB0byB0aGUgY29udGV4dCdzIG1SZXNvdXJjZVVzZUxpc3QgYW5kIHRoZW4gcmVsZWFz
ZXMgdGhlbQorICAgIC8vIFRoaXMgYWRkcyBpbi1mbGlnaHQgYnVmZmVycyB0byB0aGUgY29udGV4
dCdzIG1SZXNvdXJjZVVzZUxpc3QgYW5kIHRoZW4gcmVsZWFzZXMgdGhlbQogICAgIHZvaWQgcmVs
ZWFzZUluRmxpZ2h0QnVmZmVyc1RvUmVzb3VyY2VVc2VMaXN0KENvbnRleHRWayAqY29udGV4dFZr
KTsKIAogICAgIC8vIFRoaXMgZnJlZXMgcmVzb3VyY2VzIGltbWVkaWF0ZWx5LgpAQCAtMTIwLDcg
KzEyMCw3IEBAIGNsYXNzIER5bmFtaWNCdWZmZXIgOiBhbmdsZTo6Tm9uQ29weWFibGUKIAogICBw
cml2YXRlOgogICAgIHZvaWQgcmVzZXQoKTsKLSAgICBhbmdsZTo6UmVzdWx0IGFsbG9jYXRlTmV3
QnVmZmVyKENvbnRleHRWayAqY29udGV4dFZrKTsKKyAgICBhbmdsZTo6UmVzdWx0IGFsbG9jYXRl
TmV3QnVmZmVyKENvbnRleHQgKmNvbnRleHQpOwogCiAgICAgVmtCdWZmZXJVc2FnZUZsYWdzIG1V
c2FnZTsKICAgICBib29sIG1Ib3N0VmlzaWJsZTsKQEAgLTE1Niw3ICsxNTYsOCBAQCBjbGFzcyBE
ZXNjcmlwdG9yUG9vbEhlbHBlciA6IHB1YmxpYyBSZXNvdXJjZQogICAgIHZvaWQgZGVzdHJveShW
a0RldmljZSBkZXZpY2UpOwogICAgIHZvaWQgcmVsZWFzZShDb250ZXh0VmsgKmNvbnRleHRWayk7
CiAKLSAgICBhbmdsZTo6UmVzdWx0IGFsbG9jYXRlRGVzY3JpcHRvclNldHMoQ29udGV4dFZrICpj
b250ZXh0VmssCisgICAgYW5nbGU6OlJlc3VsdCBhbGxvY2F0ZURlc2NyaXB0b3JTZXRzKENvbnRl
eHQgKmNvbnRleHQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJl
c291cmNlVXNlTGlzdCAqcmVzb3VyY2VVc2VMaXN0LAogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBjb25zdCBEZXNjcmlwdG9yU2V0TGF5b3V0ICZkZXNjcmlwdG9yU2V0
TGF5b3V0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJf
dCBkZXNjcmlwdG9yU2V0Q291bnQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFZrRGVzY3JpcHRvclNldCAqZGVzY3JpcHRvclNldHNPdXQpOwpAQCAtMTg4LDIwICsx
ODksMjMgQEAgY2xhc3MgRHluYW1pY0Rlc2NyaXB0b3JQb29sIGZpbmFsIDogYW5nbGU6Ok5vbkNv
cHlhYmxlCiAgICAgLy8gV2UgdXNlIHRoZSBkZXNjcmlwdG9yIHR5cGUgdG8gaGVscCBjb3VudCB0
aGUgbnVtYmVyIG9mIGZyZWUgc2V0cy4KICAgICAvLyBCeSBjb252ZW50aW9uLCBzZXRzIGFyZSBp
bmRleGVkIGFjY29yZGluZyB0byB0aGUgY29uc3RhbnRzIGluIHZrX2NhY2hlX3V0aWxzLmguCiAg
ICAgQU5HTEVfSU5MSU5FIGFuZ2xlOjpSZXN1bHQgYWxsb2NhdGVEZXNjcmlwdG9yU2V0cygKLSAg
ICAgICAgQ29udGV4dFZrICpjb250ZXh0VmssCisgICAgICAgIENvbnRleHQgKmNvbnRleHQsCisg
ICAgICAgIFJlc291cmNlVXNlTGlzdCAqcmVzb3VyY2VVc2VMaXN0LAogICAgICAgICBjb25zdCBE
ZXNjcmlwdG9yU2V0TGF5b3V0ICZkZXNjcmlwdG9yU2V0TGF5b3V0LAogICAgICAgICB1aW50MzJf
dCBkZXNjcmlwdG9yU2V0Q291bnQsCiAgICAgICAgIFJlZkNvdW50ZWREZXNjcmlwdG9yUG9vbEJp
bmRpbmcgKmJpbmRpbmdPdXQsCiAgICAgICAgIFZrRGVzY3JpcHRvclNldCAqZGVzY3JpcHRvclNl
dHNPdXQpCiAgICAgewogICAgICAgICBib29sIGlnbm9yZU5ld1Bvb2xBbGxvY2F0ZWQ7Ci0gICAg
ICAgIHJldHVybiBhbGxvY2F0ZVNldHNBbmRHZXRJbmZvKGNvbnRleHRWaywgZGVzY3JpcHRvclNl
dExheW91dCwgZGVzY3JpcHRvclNldENvdW50LAotICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBiaW5kaW5nT3V0LCBkZXNjcmlwdG9yU2V0c091dCwgJmlnbm9yZU5ld1Bvb2xB
bGxvY2F0ZWQpOworICAgICAgICByZXR1cm4gYWxsb2NhdGVTZXRzQW5kR2V0SW5mbyhjb250ZXh0
LCByZXNvdXJjZVVzZUxpc3QsIGRlc2NyaXB0b3JTZXRMYXlvdXQsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGRlc2NyaXB0b3JTZXRDb3VudCwgYmluZGluZ091dCwgZGVz
Y3JpcHRvclNldHNPdXQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZp
Z25vcmVOZXdQb29sQWxsb2NhdGVkKTsKICAgICB9CiAKICAgICAvLyBXZSB1c2UgdGhlIGRlc2Ny
aXB0b3IgdHlwZSB0byBoZWxwIGNvdW50IHRoZSBudW1iZXIgb2YgZnJlZSBzZXRzLgogICAgIC8v
IEJ5IGNvbnZlbnRpb24sIHNldHMgYXJlIGluZGV4ZWQgYWNjb3JkaW5nIHRvIHRoZSBjb25zdGFu
dHMgaW4gdmtfY2FjaGVfdXRpbHMuaC4KLSAgICBhbmdsZTo6UmVzdWx0IGFsbG9jYXRlU2V0c0Fu
ZEdldEluZm8oQ29udGV4dFZrICpjb250ZXh0VmssCisgICAgYW5nbGU6OlJlc3VsdCBhbGxvY2F0
ZVNldHNBbmRHZXRJbmZvKENvbnRleHQgKmNvbnRleHQsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIFJlc291cmNlVXNlTGlzdCAqcmVzb3VyY2VVc2VMaXN0LAogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBEZXNjcmlwdG9yU2V0
TGF5b3V0ICZkZXNjcmlwdG9yU2V0TGF5b3V0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB1aW50MzJfdCBkZXNjcmlwdG9yU2V0Q291bnQsCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJlZkNvdW50ZWREZXNjcmlwdG9yUG9vbEJpbmRp
bmcgKmJpbmRpbmdPdXQsCkBAIC0yMTQsOCArMjE4LDEwIEBAIGNsYXNzIER5bmFtaWNEZXNjcmlw
dG9yUG9vbCBmaW5hbCA6IGFuZ2xlOjpOb25Db3B5YWJsZQogICAgIHN0YXRpYyB1aW50MzJfdCBH
ZXRNYXhTZXRzUGVyUG9vbE11bHRpcGxpZXJGb3JUZXN0aW5nKCk7CiAgICAgc3RhdGljIHZvaWQg
U2V0TWF4U2V0c1BlclBvb2xNdWx0aXBsaWVyRm9yVGVzdGluZyh1aW50MzJfdCBtYXhTZXRzUGVy
UG9vbCk7CiAKKyAgICBib29sIHZhbGlkKCkgY29uc3QgeyByZXR1cm4gIW1EZXNjcmlwdG9yUG9v
bHMuZW1wdHkoKTsgfQorCiAgIHByaXZhdGU6Ci0gICAgYW5nbGU6OlJlc3VsdCBhbGxvY2F0ZU5l
d1Bvb2woQ29udGV4dFZrICpjb250ZXh0VmspOworICAgIGFuZ2xlOjpSZXN1bHQgYWxsb2NhdGVO
ZXdQb29sKENvbnRleHQgKmNvbnRleHQpOwogCiAgICAgc3RhdGljIGNvbnN0ZXhwciB1aW50MzJf
dCBrTWF4U2V0c1BlclBvb2xNYXggPSA1MTI7CiAgICAgc3RhdGljIHVpbnQzMl90IG1NYXhTZXRz
UGVyUG9vbDsKQEAgLTg0NSwxMCArODUxLDEyIEBAIGNsYXNzIEJ1ZmZlclBvb2wgOiBhbmdsZTo6
Tm9uQ29weWFibGUKICAgICB1aW50MzJfdCBtTWVtb3J5VHlwZUluZGV4OwogICAgIEJ1ZmZlckJs
b2NrUG9pbnRlclZlY3RvciBtQnVmZmVyQmxvY2tzOwogICAgIC8vIFdoZW4gcHJ1bmVEZWZhdWx0
QnVmZmVyUG9vbHMgZ2V0cyBjYWxsZWQsIHdlIGRvIG5vdCBpbW1lZGlhdGVseSBmcmVlIGFsbCBl
bXB0eSBidWZmZXJzLiBPbmx5Ci0gICAgLy8gYnVmZmVycyB0aGF0IHdlIGZvdW5kIGFyZSBlbXB0
eSBmb3IgdGhpcyBudW1iZXIgb2YgdGltZXMgY29uc2VjdXRpdmVseSwgd2Ugd2lsbCBhY3R1YWxs
eSBmcmVlCi0gICAgLy8gaXQuIFRoYXQgd2F5IHdlIGF2b2lkIHRoZSBzaXR1YXRpb24gdGhhdCBh
IGJ1ZmZlciBqdXN0IGJlY29tZXMgZW1wdHkgYW5kIGdldHMgZnJlZWQgcmlnaHQKLSAgICAvLyBh
ZnRlciBhbmQgdGhlbiB3ZSBoYXZlIHRvIGFsbG9jYXRlIGEgbmV3IG9uZSBuZXh0IGZyYW1lLgor
ICAgIC8vIGJ1ZmZlcnMgdGhhdCB3ZSBmb3VuZCBhcmUgZW1wdHkgZm9yIGtNYXhDb3VudFJlbWFp
bnNFbXB0eSBudW1iZXIgb2YgdGltZXMgY29uc2VjdXRpdmVseSwgb3IKKyAgICAvLyB3ZSBoYXZl
IG1vcmUgdGhhbiBrTWF4RW1wdHlCdWZmZXJDb3VudCBudW1iZXIgb2YgZW1wdHkgYnVmZmVycywg
d2Ugd2lsbCBhY3R1YWxseSBmcmVlIGl0LgorICAgIC8vIFRoYXQgd2F5IHdlIGF2b2lkIHRoZSBz
aXR1YXRpb24gdGhhdCBhIGJ1ZmZlciBqdXN0IGJlY29tZXMgZW1wdHkgYW5kIGdldHMgZnJlZWQg
cmlnaHQgYWZ0ZXIKKyAgICAvLyBhbmQgb25seSB0byBmaW5kIG91dCB0aGF0IHdlIGhhdmUgdG8g
YWxsb2NhdGUgYSBuZXcgb25lIG5leHQgZnJhbWUuCiAgICAgc3RhdGljIGNvbnN0ZXhwciBpbnQz
Ml90IGtNYXhDb3VudFJlbWFpbnNFbXB0eSA9IDQ7CisgICAgc3RhdGljIGNvbnN0ZXhwciBpbnQz
Ml90IGtNYXhFbXB0eUJ1ZmZlckNvdW50ICA9IDE2OwogfTsKIHVzaW5nIEJ1ZmZlclBvb2xQb2lu
dGVyQXJyYXkgPSBzdGQ6OmFycmF5PHN0ZDo6dW5pcXVlX3B0cjxCdWZmZXJQb29sPiwgVktfTUFY
X01FTU9SWV9UWVBFUz47CiAKQEAgLTg4Nyw2ICs4OTUsNjQgQEAgY2xhc3MgUGFja2VkQ2xlYXJW
YWx1ZXNBcnJheSBmaW5hbAogICAgIGdsOjpBdHRhY2htZW50QXJyYXk8VmtDbGVhclZhbHVlPiBt
VmFsdWVzOwogfTsKIAorLy8gUmVmZXJlbmNlIHRvIGEgcmVuZGVyIHBhc3MgYXR0YWNobWVudCAo
Y29sb3Igb3IgZGVwdGgvc3RlbmNpbCkgYWxvbmdzaWRlIHJlbmRlci1wYXNzLXJlbGF0ZWQKKy8v
IHRyYWNraW5nIHN1Y2ggYXMgd2hlbiB0aGUgYXR0YWNobWVudCBpcyBsYXN0IHdyaXR0ZW4gdG8g
b3IgaW52YWxpZGF0ZWQuICBUaGlzIGlzIHVzZWQgdG8KKy8vIGRldGVybWluZSBsb2FkT3AgYW5k
IHN0b3JlT3Agb2YgdGhlIGF0dGFjaG1lbnQsIGFuZCBlbmFibGVzIG9wdGltaXphdGlvbnMgdGhh
dCBuZWVkIHRvIGtub3cKKy8vIGhvdyB0aGUgYXR0YWNobWVudCBoYXMgYmVlbiB1c2VkLgorY2xh
c3MgUmVuZGVyUGFzc0F0dGFjaG1lbnQgZmluYWwKK3sKKyAgcHVibGljOgorICAgIFJlbmRlclBh
c3NBdHRhY2htZW50KCk7CisgICAgflJlbmRlclBhc3NBdHRhY2htZW50KCkgPSBkZWZhdWx0Owor
CisgICAgdm9pZCBpbml0KEltYWdlSGVscGVyICppbWFnZSwKKyAgICAgICAgICAgICAgZ2w6Okxl
dmVsSW5kZXggbGV2ZWxJbmRleCwKKyAgICAgICAgICAgICAgdWludDMyX3QgbGF5ZXJJbmRleCwK
KyAgICAgICAgICAgICAgdWludDMyX3QgbGF5ZXJDb3VudCwKKyAgICAgICAgICAgICAgVmtJbWFn
ZUFzcGVjdEZsYWdCaXRzIGFzcGVjdCk7CisgICAgdm9pZCByZXNldCgpOworCisgICAgdm9pZCBv
bkFjY2VzcyhSZXNvdXJjZUFjY2VzcyBhY2Nlc3MsIHVpbnQzMl90IGN1cnJlbnRDbWRDb3VudCk7
CisgICAgdm9pZCBpbnZhbGlkYXRlKGNvbnN0IGdsOjpSZWN0YW5nbGUgJmludmFsaWRhdGVBcmVh
LAorICAgICAgICAgICAgICAgICAgICBib29sIGlzQXR0YWNobWVudEVuYWJsZWQsCisgICAgICAg
ICAgICAgICAgICAgIHVpbnQzMl90IGN1cnJlbnRDbWRDb3VudCk7CisgICAgdm9pZCBvblJlbmRl
ckFyZWFHcm93dGgoQ29udGV4dFZrICpjb250ZXh0VmssIGNvbnN0IGdsOjpSZWN0YW5nbGUgJm5l
d1JlbmRlckFyZWEpOworICAgIHZvaWQgZmluYWxpemVMb2FkU3RvcmUoQ29udGV4dCAqY29udGV4
dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IGN1cnJlbnRDbWRDb3VudCwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wgaGFzVW5yZXNvbHZlQXR0YWNobWVudCwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgIFJlbmRlclBhc3NMb2FkT3AgKmxvYWRPcCwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFJlbmRlclBhc3NTdG9yZU9wICpzdG9yZU9wLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCAqaXNJbnZhbGlkYXRlZE91dCk7CisgICAgdm9p
ZCByZXN0b3JlQ29udGVudCgpOworICAgIGJvb2wgaGFzV3JpdGVBY2Nlc3MoKSBjb25zdCB7IHJl
dHVybiBtQWNjZXNzID09IFJlc291cmNlQWNjZXNzOjpXcml0ZTsgfQorCisgICAgSW1hZ2VIZWxw
ZXIgKmdldEltYWdlKCkgeyByZXR1cm4gbUltYWdlOyB9CisKKyAgcHJpdmF0ZToKKyAgICBib29s
IGhhc1dyaXRlQWZ0ZXJJbnZhbGlkYXRlKHVpbnQzMl90IGN1cnJlbnRDbWRDb3VudCkgY29uc3Q7
CisgICAgYm9vbCBpc0ludmFsaWRhdGVkKHVpbnQzMl90IGN1cnJlbnRDbWRDb3VudCkgY29uc3Q7
CisgICAgYm9vbCBvbkFjY2Vzc0ltcGwoUmVzb3VyY2VBY2Nlc3MgYWNjZXNzLCB1aW50MzJfdCBj
dXJyZW50Q21kQ291bnQpOworCisgICAgLy8gVGhlIGF0dGFjaG1lbnQgaW1hZ2UgaXRzZWxmCisg
ICAgSW1hZ2VIZWxwZXIgKm1JbWFnZTsKKyAgICAvLyBUaGUgc3VicmVzb3VyY2UgdXNlZCBpbiB0
aGUgcmVuZGVyIHBhc3MKKyAgICBnbDo6TGV2ZWxJbmRleCBtTGV2ZWxJbmRleDsKKyAgICB1aW50
MzJfdCBtTGF5ZXJJbmRleDsKKyAgICB1aW50MzJfdCBtTGF5ZXJDb3VudDsKKyAgICBWa0ltYWdl
QXNwZWN0RmxhZ0JpdHMgbUFzcGVjdDsKKyAgICAvLyBUcmFja3MgdGhlIGhpZ2hlc3QgYWNjZXNz
IGR1cmluZyB0aGUgZW50aXJlIHJlbmRlciBwYXNzIChXcml0ZSBiZWluZyB0aGUgaGlnaGVzdCks
IGV4Y2x1ZGluZworICAgIC8vIGNsZWFyIHRocm91Z2ggbG9hZE9wLiAgVGhpcyBhbGxvd3MgbG9h
ZE9wPUNsZWFyIHRvIGJlIG9wdGltaXplZCBvdXQgd2hlbiB3ZSBmaW5kIG91dCB0aGF0IHRoZQor
ICAgIC8vIGF0dGFjaG1lbnQgaXMgbm90IHVzZWQgaW4gdGhlIHJlbmRlciBwYXNzIGF0IGFsbCBh
bmQgc3RvcmVPcD1Eb250Q2FyZSwgb3IgdGhhdCBhCisgICAgLy8gbWlkLXJlbmRlci1wYXNzIGNs
ZWFyIGNvdWxkIGJlIGhvaXN0ZWQgdG8gbG9hZE9wPUNsZWFyLgorICAgIFJlc291cmNlQWNjZXNz
IG1BY2Nlc3M7CisgICAgLy8gVGhlIGluZGV4IG9mIHRoZSBsYXN0IGRyYXcgY29tbWFuZCBhZnRl
ciB3aGljaCB0aGUgYXR0YWNobWVudCBpcyBpbnZhbGlkYXRlZAorICAgIHVpbnQzMl90IG1JbnZh
bGlkYXRlZENtZENvdW50OworICAgIC8vIFRoZSBpbmRleCBvZiB0aGUgbGFzdCBkcmF3IGNvbW1h
bmQgYWZ0ZXIgd2hpY2ggdGhlIGF0dGFjaG1lbnQgb3V0cHV0IGlzIGRpc2FibGVkCisgICAgdWlu
dDMyX3QgbURpc2FibGVkQ21kQ291bnQ7CisgICAgLy8gVGhlIGFyZWEgdGhhdCBoYXMgYmVlbiBp
bnZhbGlkYXRlZAorICAgIGdsOjpSZWN0YW5nbGUgbUludmFsaWRhdGVBcmVhOworfTsKKwogLy8g
U3RvcmVzIEltYWdlSGVscGVycyBJbiBwYWNrZWQgYXR0YWNobWVudCBpbmRleAogY2xhc3MgUGFj
a2VkSW1hZ2VBdHRhY2htZW50QXJyYXkgZmluYWwKIHsKQEAgLTk5OCw4ICsxMDY0LDggQEAgY2xh
c3MgQ29tbWFuZEJ1ZmZlckhlbHBlckNvbW1vbiA6IGFuZ2xlOjpOb25Db3B5YWJsZQogCiAgICAg
Ly8gVHJhY2tzIHJlc291cmNlcyB1c2VkIGluIHRoZSBjb21tYW5kIGJ1ZmZlci4KICAgICAvLyBG
b3IgQnVmZmVycywgd2UgdHJhY2sgdGhlIHJlYWQvd3JpdGUgYWNjZXNzIHR5cGUgc28gd2UgY2Fu
IGVuYWJsZSBzaW11bHRhbmVvdXMgcmVhZHMuCi0gICAgc3RhdGljIGNvbnN0ZXhwciB1aW50MzJf
dCBrRmFzdE1hcFNpemUgPSAxNjsKLSAgICBhbmdsZTo6RmFzdFVub3JkZXJlZE1hcDxCdWZmZXJT
ZXJpYWwsIEJ1ZmZlckFjY2Vzcywga0Zhc3RNYXBTaXplPiBtVXNlZEJ1ZmZlcnM7CisgICAgc3Rh
dGljIGNvbnN0ZXhwciB1aW50MzJfdCBrRmxhdE1hcFNpemUgPSAxNjsKKyAgICBhbmdsZTo6Rmxh
dFVub3JkZXJlZE1hcDxCdWZmZXJTZXJpYWwsIEJ1ZmZlckFjY2Vzcywga0ZsYXRNYXBTaXplPiBt
VXNlZEJ1ZmZlcnM7CiB9OwogCiBjbGFzcyBPdXRzaWRlUmVuZGVyUGFzc0NvbW1hbmRCdWZmZXJI
ZWxwZXIgZmluYWwgOiBwdWJsaWMgQ29tbWFuZEJ1ZmZlckhlbHBlckNvbW1vbgpAQCAtMTExMSw3
ICsxMTc3LDcgQEAgY2xhc3MgUmVuZGVyUGFzc0NvbW1hbmRCdWZmZXJIZWxwZXIgZmluYWwgOiBw
dWJsaWMgQ29tbWFuZEJ1ZmZlckhlbHBlckNvbW1vbgogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGNvbnN0IGdsOjpSZWN0YW5nbGUgJnJlbmRlckFyZWEsCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgY29uc3QgUmVuZGVyUGFzc0Rlc2MgJnJlbmRlclBhc3NEZXNj
LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IEF0dGFjaG1lbnRPcHNB
cnJheSAmcmVuZGVyUGFzc0F0dGFjaG1lbnRPcHMsCi0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgY29uc3Qgdms6OlBhY2tlZEF0dGFjaG1lbnRDb3VudCBjb2xvckF0dGFjaG1lbnRD
b3VudCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBQYWNrZWRBdHRh
Y2htZW50Q291bnQgY29sb3JBdHRhY2htZW50Q291bnQsCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgY29uc3QgUGFja2VkQXR0YWNobWVudEluZGV4IGRlcHRoU3RlbmNpbEF0dGFj
aG1lbnRJbmRleCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBQYWNr
ZWRDbGVhclZhbHVlc0FycmF5ICZjbGVhclZhbHVlcywKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBSZW5kZXJQYXNzQ29tbWFuZEJ1ZmZlciAqKmNvbW1hbmRCdWZmZXJPdXQpOwpA
QCAtMTEzNSwxOSArMTIwMSw2IEBAIGNsYXNzIFJlbmRlclBhc3NDb21tYW5kQnVmZmVySGVscGVy
IGZpbmFsIDogcHVibGljIENvbW1hbmRCdWZmZXJIZWxwZXJDb21tb24KICAgICB2b2lkIGludmFs
aWRhdGVSZW5kZXJQYXNzU3RlbmNpbEF0dGFjaG1lbnQoY29uc3QgZ2w6OkRlcHRoU3RlbmNpbFN0
YXRlICZkc1N0YXRlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBjb25zdCBnbDo6UmVjdGFuZ2xlICZpbnZhbGlkYXRlQXJlYSk7CiAKLSAgICBib29sIGhh
c1dyaXRlQWZ0ZXJJbnZhbGlkYXRlKHVpbnQzMl90IGNtZENvdW50SW52YWxpZGF0ZWQsIHVpbnQz
Ml90IGNtZENvdW50RGlzYWJsZWQpCi0gICAgewotICAgICAgICByZXR1cm4gKGNtZENvdW50SW52
YWxpZGF0ZWQgIT0ga0luZmluaXRlQ21kQ291bnQgJiYKLSAgICAgICAgICAgICAgICBzdGQ6Om1p
bihjbWRDb3VudERpc2FibGVkLCBnZXRSZW5kZXJQYXNzV3JpdGVDb21tYW5kQ291bnQoKSkgIT0K
LSAgICAgICAgICAgICAgICAgICAgY21kQ291bnRJbnZhbGlkYXRlZCk7Ci0gICAgfQotCi0gICAg
Ym9vbCBpc0ludmFsaWRhdGVkKHVpbnQzMl90IGNtZENvdW50SW52YWxpZGF0ZWQsIHVpbnQzMl90
IGNtZENvdW50RGlzYWJsZWQpCi0gICAgewotICAgICAgICByZXR1cm4gY21kQ291bnRJbnZhbGlk
YXRlZCAhPSBrSW5maW5pdGVDbWRDb3VudCAmJgotICAgICAgICAgICAgICAgc3RkOjptaW4oY21k
Q291bnREaXNhYmxlZCwgZ2V0UmVuZGVyUGFzc1dyaXRlQ29tbWFuZENvdW50KCkpID09IGNtZENv
dW50SW52YWxpZGF0ZWQ7Ci0gICAgfQotCiAgICAgdm9pZCB1cGRhdGVSZW5kZXJQYXNzQ29sb3JD
bGVhcihQYWNrZWRBdHRhY2htZW50SW5kZXggY29sb3JJbmRleCwKICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGNvbnN0IFZrQ2xlYXJWYWx1ZSAmY29sb3JDbGVhclZhbHVlKTsK
ICAgICB2b2lkIHVwZGF0ZVJlbmRlclBhc3NEZXB0aFN0ZW5jaWxDbGVhcihWa0ltYWdlQXNwZWN0
RmxhZ3MgYXNwZWN0RmxhZ3MsCkBAIC0xMTgyLDcgKzEyMzUsNyBAQCBjbGFzcyBSZW5kZXJQYXNz
Q29tbWFuZEJ1ZmZlckhlbHBlciBmaW5hbCA6IHB1YmxpYyBDb21tYW5kQnVmZmVySGVscGVyQ29t
bW9uCiAKICAgICBib29sIGhhc0RlcHRoU3RlbmNpbFdyaXRlT3JDbGVhcigpIGNvbnN0CiAgICAg
ewotICAgICAgICByZXR1cm4gbURlcHRoQWNjZXNzID09IFJlc291cmNlQWNjZXNzOjpXcml0ZSB8
fCBtU3RlbmNpbEFjY2VzcyA9PSBSZXNvdXJjZUFjY2Vzczo6V3JpdGUgfHwKKyAgICAgICAgcmV0
dXJuIG1EZXB0aEF0dGFjaG1lbnQuaGFzV3JpdGVBY2Nlc3MoKSB8fCBtU3RlbmNpbEF0dGFjaG1l
bnQuaGFzV3JpdGVBY2Nlc3MoKSB8fAogICAgICAgICAgICAgICAgbUF0dGFjaG1lbnRPcHNbbURl
cHRoU3RlbmNpbEF0dGFjaG1lbnRJbmRleF0ubG9hZE9wID09IFZLX0FUVEFDSE1FTlRfTE9BRF9P
UF9DTEVBUiB8fAogICAgICAgICAgICAgICAgbUF0dGFjaG1lbnRPcHNbbURlcHRoU3RlbmNpbEF0
dGFjaG1lbnRJbmRleF0uc3RlbmNpbExvYWRPcCA9PQogICAgICAgICAgICAgICAgICAgIFZLX0FU
VEFDSE1FTlRfTE9BRF9PUF9DTEVBUjsKQEAgLTEyMTMsMTEgKzEyNjYsNiBAQCBjbGFzcyBSZW5k
ZXJQYXNzQ29tbWFuZEJ1ZmZlckhlbHBlciBmaW5hbCA6IHB1YmxpYyBDb21tYW5kQnVmZmVySGVs
cGVyQ29tbW9uCiAgICAgICAgIC8vIGNvbnNpZGVyZWQgY29udGludW91cyBhbW9uZyBzdWJwYXNz
ZXMuCiAgICAgICAgIHJldHVybiBtUHJldmlvdXNTdWJwYXNzZXNDbWRDb3VudCArIGdldENvbW1h
bmRCdWZmZXIoKS5nZXRSZW5kZXJQYXNzV3JpdGVDb21tYW5kQ291bnQoKTsKICAgICB9Ci0gICAg
Ym9vbCBvbkRlcHRoU3RlbmNpbEFjY2VzcyhSZXNvdXJjZUFjY2VzcyBhY2Nlc3MsCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCAqY21kQ291bnRJbnZhbGlkYXRlZCwKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90ICpjbWRDb3VudERpc2FibGVkKTsK
LSAgICB2b2lkIHJlc3RvcmVEZXB0aENvbnRlbnQoKTsKLSAgICB2b2lkIHJlc3RvcmVTdGVuY2ls
Q29udGVudCgpOwogCiAgICAgLy8gV2UgY2FuJ3QgZGV0ZXJtaW5lIHRoZSBpbWFnZSBsYXlvdXQg
YXQgdGhlIHJlbmRlcnBhc3Mgc3RhcnQgdGltZSBzaW5jZSB0aGVpciBmdWxsIHVzYWdlCiAgICAg
Ly8gYXJlbid0IGtub3duIHVudGlsIGxhdGVyIHRpbWUuIFdlIGZpbmFsaXplIHRoZSBsYXlvdXQg
d2hlbiBlaXRoZXIgSW1hZ2VIZWxwZXIgb2JqZWN0IGlzCkBAIC0xMjU5LDIzICsxMzA3LDggQEAg
Y2xhc3MgUmVuZGVyUGFzc0NvbW1hbmRCdWZmZXJIZWxwZXIgZmluYWwgOiBwdWJsaWMgQ29tbWFu
ZEJ1ZmZlckhlbHBlckNvbW1vbgogICAgIGJvb2wgbVJlYmluZFRyYW5zZm9ybUZlZWRiYWNrQnVm
ZmVyczsKICAgICBib29sIG1Jc1RyYW5zZm9ybUZlZWRiYWNrQWN0aXZlVW5wYXVzZWQ7CiAKLSAg
ICAvLyBTdGF0ZSB0cmFja2luZyBmb3IgdGhlIG1heGltdW0gKFdyaXRlIGJlZW4gdGhlIGhpZ2hl
c3QpIGRlcHRoIGFjY2VzcyBkdXJpbmcgdGhlIGVudGlyZQotICAgIC8vIHJlbmRlcnBhc3MuIE5v
dGUgdGhhdCB0aGlzIGRvZXMgbm90IGluY2x1ZGUgVktfQVRUQUNITUVOVF9MT0FEX09QX0NMRUFS
IHdoaWNoIGlzIHRyYWNrZWQKLSAgICAvLyBzZXBhcmF0ZWx5LiBUaGlzIGlzIGRvbmUgdGhpcyB3
YXkgdG8gYWxsb3cgY2xlYXIgb3AgdG8gYmVpbmcgb3B0aW1pemVkIG91dCB3aGVuIHdlIGZpbmQg
b3V0Ci0gICAgLy8gdGhhdCB0aGUgZGVwdGggYnVmZmVyIGlzIG5vdCBiZWluZyB1c2VkIGR1cmlu
ZyB0aGUgZW50aXJlIHJlbmRlcnBhc3MgYW5kIHN0b3JlIG9wIGlzCi0gICAgLy8gVktfQVRUQUNI
TUVOVF9TVE9SRV9PUF9ET05UQ0FSRS4KLSAgICBSZXNvdXJjZUFjY2VzcyBtRGVwdGhBY2Nlc3M7
Ci0gICAgLy8gU2ltaWxhciB0cmFja2luZyB0byBtRGVwdGhBY2Nlc3MgYnV0IGZvciB0aGUgc3Rl
bmNpbCBhc3BlY3QuCi0gICAgUmVzb3VyY2VBY2Nlc3MgbVN0ZW5jaWxBY2Nlc3M7Ci0KICAgICAv
LyBTdGF0ZSB0cmFja2luZyBmb3Igd2hldGhlciB0byBvcHRpbWl6ZSB0aGUgc3RvcmVPcCB0byBE
T05UX0NBUkUKICAgICB1aW50MzJfdCBtUHJldmlvdXNTdWJwYXNzZXNDbWRDb3VudDsKLSAgICB1
aW50MzJfdCBtRGVwdGhDbWRDb3VudEludmFsaWRhdGVkOwotICAgIHVpbnQzMl90IG1EZXB0aENt
ZENvdW50RGlzYWJsZWQ7Ci0gICAgdWludDMyX3QgbVN0ZW5jaWxDbWRDb3VudEludmFsaWRhdGVk
OwotICAgIHVpbnQzMl90IG1TdGVuY2lsQ21kQ291bnREaXNhYmxlZDsKLSAgICBnbDo6UmVjdGFu
Z2xlIG1EZXB0aEludmFsaWRhdGVBcmVhOwotICAgIGdsOjpSZWN0YW5nbGUgbVN0ZW5jaWxJbnZh
bGlkYXRlQXJlYTsKIAogICAgIC8vIEtlZXAgdHJhY2sgb2YgdGhlIGRlcHRoL3N0ZW5jaWwgYXR0
YWNobWVudCBpbmRleAogICAgIFBhY2tlZEF0dGFjaG1lbnRJbmRleCBtRGVwdGhTdGVuY2lsQXR0
YWNobWVudEluZGV4OwpAQCAtMTI4MywyMSArMTMxNiwyMiBAQCBjbGFzcyBSZW5kZXJQYXNzQ29t
bWFuZEJ1ZmZlckhlbHBlciBmaW5hbCA6IHB1YmxpYyBDb21tYW5kQnVmZmVySGVscGVyQ29tbW9u
CiAgICAgLy8gVHJhY2tzIHJlc291cmNlcyB1c2VkIGluIHRoZSBjb21tYW5kIGJ1ZmZlci4KICAg
ICAvLyBJbWFnZXMgaGF2ZSB1bmlxdWUgbGF5b3V0cyB1bmxpa2UgYnVmZmVycyB0aGVyZWZvcmUg
d2UgY2FuJ3Qgc3VwcG9ydCBzaW11bHRhbmVvdXMgcmVhZHMgd2l0aAogICAgIC8vIGRpZmZlcmVu
dCBsYXlvdXQuCi0gICAgYW5nbGU6OkZhc3RVbm9yZGVyZWRTZXQ8SW1hZ2VTZXJpYWwsIGtGYXN0
TWFwU2l6ZT4gbVJlbmRlclBhc3NVc2VkSW1hZ2VzOwotCi0gICAgSW1hZ2VIZWxwZXIgKm1EZXB0
aFN0ZW5jaWxJbWFnZTsKLSAgICBJbWFnZUhlbHBlciAqbURlcHRoU3RlbmNpbFJlc29sdmVJbWFn
ZTsKLSAgICBnbDo6TGV2ZWxJbmRleCBtRGVwdGhTdGVuY2lsTGV2ZWxJbmRleDsKLSAgICB1aW50
MzJfdCBtRGVwdGhTdGVuY2lsTGF5ZXJJbmRleDsKLSAgICB1aW50MzJfdCBtRGVwdGhTdGVuY2ls
TGF5ZXJDb3VudDsKKyAgICBhbmdsZTo6RmxhdFVub3JkZXJlZFNldDxJbWFnZVNlcmlhbCwga0Zs
YXRNYXBTaXplPiBtUmVuZGVyUGFzc1VzZWRJbWFnZXM7CiAKICAgICAvLyBBcnJheSBzaXplIG9m
IG1Db2xvckltYWdlcwogICAgIFBhY2tlZEF0dGFjaG1lbnRDb3VudCBtQ29sb3JJbWFnZXNDb3Vu
dDsKLSAgICAvLyBBdHRhY2hlZCByZW5kZXIgdGFyZ2V0IGltYWdlcy4gQ29sb3IgYW5kIGRlcHRo
IHJlc29sdmUgaW1hZ2VzIGFyZSBhbHdheXMgY29tZSBsYXN0LgorICAgIC8vIEF0dGFjaGVkIHJl
bmRlciB0YXJnZXQgaW1hZ2VzLiBDb2xvciBhbmQgZGVwdGggcmVzb2x2ZSBpbWFnZXMgYWx3YXlz
IGNvbWUgbGFzdC4KICAgICBQYWNrZWRJbWFnZUF0dGFjaG1lbnRBcnJheSBtQ29sb3JJbWFnZXM7
CiAgICAgUGFja2VkSW1hZ2VBdHRhY2htZW50QXJyYXkgbUNvbG9yUmVzb2x2ZUltYWdlczsKKwor
ICAgIFJlbmRlclBhc3NBdHRhY2htZW50IG1EZXB0aEF0dGFjaG1lbnQ7CisgICAgUmVuZGVyUGFz
c0F0dGFjaG1lbnQgbURlcHRoUmVzb2x2ZUF0dGFjaG1lbnQ7CisKKyAgICBSZW5kZXJQYXNzQXR0
YWNobWVudCBtU3RlbmNpbEF0dGFjaG1lbnQ7CisgICAgUmVuZGVyUGFzc0F0dGFjaG1lbnQgbVN0
ZW5jaWxSZXNvbHZlQXR0YWNobWVudDsKKwogICAgIC8vIFRoaXMgaXMgbGFzdCByZW5kZXJwYXNz
IGJlZm9yZSBwcmVzZW50IGFuZCB0aGlzIGlzIHRoZSBpbWFnZSB3aWxsIGJlIHByZXNlbnRlZC4g
V2UgY2FuIHVzZQotICAgIC8vIGZpbmFsIGxheW91dCBvZiB0aGUgcmVuZGVycGFzcyB0byB0cmFu
c2l0IGl0IHRvIHRoZSBwcmVzZW50YWJsZSBsYXlvdXQKKyAgICAvLyBmaW5hbCBsYXlvdXQgb2Yg
dGhlIHJlbmRlcnBhc3MgdG8gdHJhbnNpdGlvbiBpdCB0byB0aGUgcHJlc2VudGFibGUgbGF5b3V0
CiAgICAgSW1hZ2VIZWxwZXIgKm1JbWFnZU9wdGltaXplRm9yUHJlc2VudDsKIH07CiAKQEAgLTE0
MzQsNyArMTQ2OCw3IEBAIGJvb2wgQ2FuQ29weVdpdGhUcmFuc2ZlcihSZW5kZXJlclZrICpyZW5k
ZXJlciwKICAgICAgICAgICAgICAgICAgICAgICAgICBWa0ltYWdlVGlsaW5nIHNyY1RpbGluZ01v
ZGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgYW5nbGU6OkZvcm1hdElEIGRzdEZvcm1hdElE
LAogICAgICAgICAgICAgICAgICAgICAgICAgIFZrSW1hZ2VUaWxpbmcgZHN0VGlsaW5nTW9kZSk7
Ci0KK2NsYXNzIEltYWdlVmlld0hlbHBlcjsKIGNsYXNzIEltYWdlSGVscGVyIGZpbmFsIDogcHVi
bGljIFJlc291cmNlLCBwdWJsaWMgYW5nbGU6OlN1YmplY3QKIHsKICAgcHVibGljOgpAQCAtMTU4
Nyw2ICsxNjIxLDcgQEAgY2xhc3MgSW1hZ2VIZWxwZXIgZmluYWwgOiBwdWJsaWMgUmVzb3VyY2Us
IHB1YmxpYyBhbmdsZTo6U3ViamVjdAogICAgIC8vIFNpbWlsYXIgdG8gcmVsZWFzZUltYWdlLCBi
dXQgYWxzbyBub3RpZnkgYWxsIGNvbnRleHRzIGluIHRoZSBzYW1lIHNoYXJlIGdyb3VwIHRvIHN0
b3AKICAgICAvLyBhY2Nlc3NpbmcgdG8gaXQuCiAgICAgdm9pZCByZWxlYXNlSW1hZ2VGcm9tU2hh
cmVDb250ZXh0cyhSZW5kZXJlclZrICpyZW5kZXJlciwgQ29udGV4dFZrICpjb250ZXh0VmspOwor
ICAgIHZvaWQgY29sbGVjdFZpZXdHYXJiYWdlKFJlbmRlcmVyVmsgKnJlbmRlcmVyLCB2azo6SW1h
Z2VWaWV3SGVscGVyICppbWFnZVZpZXcpOwogICAgIHZvaWQgcmVsZWFzZVN0YWdlZFVwZGF0ZXMo
UmVuZGVyZXJWayAqcmVuZGVyZXIpOwogCiAgICAgYm9vbCB2YWxpZCgpIGNvbnN0IHsgcmV0dXJu
IG1JbWFnZS52YWxpZCgpOyB9CkBAIC0xNjA2LDYgKzE2NDEsNyBAQCBjbGFzcyBJbWFnZUhlbHBl
ciBmaW5hbCA6IHB1YmxpYyBSZXNvdXJjZSwgcHVibGljIGFuZ2xlOjpTdWJqZWN0CiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIEdMaW50IHNhbXBsZXMsCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGJvb2wgaXNSb2J1c3RSZXNvdXJjZUluaXRFbmFibGVkKTsKICAgICB2b2lkIHJl
c2V0SW1hZ2VXZWFrUmVmZXJlbmNlKCk7CisgICAgdm9pZCByZWxlYXNlSW1hZ2VBbmRWaWV3R2Fy
YmFnZShSZW5kZXJlclZrICpyZW5kZXJlcik7CiAKICAgICBjb25zdCBJbWFnZSAmZ2V0SW1hZ2Uo
KSBjb25zdCB7IHJldHVybiBtSW1hZ2U7IH0KICAgICBjb25zdCBEZXZpY2VNZW1vcnkgJmdldERl
dmljZU1lbW9yeSgpIGNvbnN0IHsgcmV0dXJuIG1EZXZpY2VNZW1vcnk7IH0KQEAgLTIyOTksNiAr
MjMzNSw4IEBAIGNsYXNzIEltYWdlSGVscGVyIGZpbmFsIDogcHVibGljIFJlc291cmNlLCBwdWJs
aWMgYW5nbGU6OlN1YmplY3QKICAgICAvLyBhYm92ZSB3aGljaCB0aGUgY29udGVudHMgYXJlIGNv
bnNpZGVyZWQgdW5jb25kaXRpb25hbGx5IGRlZmluZWQuCiAgICAgZ2w6OlRleExldmVsQXJyYXk8
TGV2ZWxDb250ZW50RGVmaW5lZE1hc2s+IG1Db250ZW50RGVmaW5lZDsKICAgICBnbDo6VGV4TGV2
ZWxBcnJheTxMZXZlbENvbnRlbnREZWZpbmVkTWFzaz4gbVN0ZW5jaWxDb250ZW50RGVmaW5lZDsK
KworICAgIHN0ZDo6dmVjdG9yPHZrOjpHYXJiYWdlT2JqZWN0PiBtSW1hZ2VBbmRWaWV3R2FyYmFn
ZTsKIH07CiAKIEFOR0xFX0lOTElORSBib29sIFJlbmRlclBhc3NDb21tYW5kQnVmZmVySGVscGVy
Ojp1c2VzSW1hZ2UoY29uc3QgSW1hZ2VIZWxwZXIgJmltYWdlKSBjb25zdApAQCAtMjMzNCwxNSAr
MjM3MiwxNCBAQCBlbnVtIGNsYXNzIFNyZ2JEZWNvZGVNb2RlCiAgICAgU3JnYkRlY29kZQogfTsK
IAotY2xhc3MgSW1hZ2VWaWV3SGVscGVyIGZpbmFsIDogcHVibGljIFJlc291cmNlCitjbGFzcyBJ
bWFnZVZpZXdIZWxwZXIgZmluYWwgOiBhbmdsZTo6Tm9uQ29weWFibGUKIHsKICAgcHVibGljOgog
ICAgIEltYWdlVmlld0hlbHBlcigpOwogICAgIEltYWdlVmlld0hlbHBlcihJbWFnZVZpZXdIZWxw
ZXIgJiZvdGhlcik7Ci0gICAgfkltYWdlVmlld0hlbHBlcigpIG92ZXJyaWRlOworICAgIH5JbWFn
ZVZpZXdIZWxwZXIoKTsKIAogICAgIHZvaWQgaW5pdChSZW5kZXJlclZrICpyZW5kZXJlcik7Ci0g
ICAgdm9pZCByZWxlYXNlKFJlbmRlcmVyVmsgKnJlbmRlcmVyKTsKICAgICB2b2lkIGRlc3Ryb3ko
VmtEZXZpY2UgZGV2aWNlKTsKIAogICAgIGNvbnN0IEltYWdlVmlldyAmZ2V0TGluZWFyUmVhZElt
YWdlVmlldygpIGNvbnN0CkBAIC0yNDQ4LDcgKzI0ODUsNyBAQCBjbGFzcyBJbWFnZVZpZXdIZWxw
ZXIgZmluYWwgOiBwdWJsaWMgUmVzb3VyY2UKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgY29uc3QgZ2w6OlNhbXBsZXJTdGF0ZSAmc2FtcGxlclN0YXRlKTsKIAogICAgIC8vIENyZWF0
ZXMgYSBzdG9yYWdlIHZpZXcgd2l0aCBhbGwgbGF5ZXJzIG9mIHRoZSBsZXZlbC4KLSAgICBhbmds
ZTo6UmVzdWx0IGdldExldmVsU3RvcmFnZUltYWdlVmlldyhDb250ZXh0VmsgKmNvbnRleHRWaywK
KyAgICBhbmdsZTo6UmVzdWx0IGdldExldmVsU3RvcmFnZUltYWdlVmlldyhDb250ZXh0ICpjb250
ZXh0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdsOjpUZXh0
dXJlVHlwZSB2aWV3VHlwZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBjb25zdCBJbWFnZUhlbHBlciAmaW1hZ2UsCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgTGV2ZWxJbmRleCBsZXZlbFZrLApAQCAtMjQ1OCw3ICsyNDk1LDcg
QEAgY2xhc3MgSW1hZ2VWaWV3SGVscGVyIGZpbmFsIDogcHVibGljIFJlc291cmNlCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgSW1hZ2VWaWV3ICoqaW1h
Z2VWaWV3T3V0KTsKIAogICAgIC8vIENyZWF0ZXMgYSBzdG9yYWdlIHZpZXcgd2l0aCBhIHNpbmds
ZSBsYXllciBvZiB0aGUgbGV2ZWwuCi0gICAgYW5nbGU6OlJlc3VsdCBnZXRMZXZlbExheWVyU3Rv
cmFnZUltYWdlVmlldyhDb250ZXh0VmsgKmNvbnRleHRWaywKKyAgICBhbmdsZTo6UmVzdWx0IGdl
dExldmVsTGF5ZXJTdG9yYWdlSW1hZ2VWaWV3KENvbnRleHQgKmNvbnRleHQsCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBJbWFnZUhlbHBlciAm
aW1hZ2UsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBM
ZXZlbEluZGV4IGxldmVsVmssCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB1aW50MzJfdCBsYXllciwKQEAgLTI0NjcsNyArMjUwNCw3IEBAIGNsYXNzIElt
YWdlVmlld0hlbHBlciBmaW5hbCA6IHB1YmxpYyBSZXNvdXJjZQogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgSW1hZ2VWaWV3ICoqaW1hZ2VWaWV3
T3V0KTsKIAogICAgIC8vIENyZWF0ZXMgYSBkcmF3IHZpZXcgd2l0aCBhIHJhbmdlIG9mIGxheWVy
cyBvZiB0aGUgbGV2ZWwuCi0gICAgYW5nbGU6OlJlc3VsdCBnZXRMZXZlbERyYXdJbWFnZVZpZXco
Q29udGV4dFZrICpjb250ZXh0VmssCisgICAgYW5nbGU6OlJlc3VsdCBnZXRMZXZlbERyYXdJbWFn
ZVZpZXcoQ29udGV4dCAqY29udGV4dCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBjb25zdCBJbWFnZUhlbHBlciAmaW1hZ2UsCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgTGV2ZWxJbmRleCBsZXZlbFZrLAogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IGxheWVyLApAQCAtMjQ3Niw3ICsyNTEzLDcg
QEAgY2xhc3MgSW1hZ2VWaWV3SGVscGVyIGZpbmFsIDogcHVibGljIFJlc291cmNlCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgSW1hZ2VWaWV3ICoqaW1hZ2VW
aWV3T3V0KTsKIAogICAgIC8vIENyZWF0ZXMgYSBkcmF3IHZpZXcgd2l0aCBhIHNpbmdsZSBsYXll
ciBvZiB0aGUgbGV2ZWwuCi0gICAgYW5nbGU6OlJlc3VsdCBnZXRMZXZlbExheWVyRHJhd0ltYWdl
VmlldyhDb250ZXh0VmsgKmNvbnRleHRWaywKKyAgICBhbmdsZTo6UmVzdWx0IGdldExldmVsTGF5
ZXJEcmF3SW1hZ2VWaWV3KENvbnRleHQgKmNvbnRleHQsCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBJbWFnZUhlbHBlciAmaW1hZ2UsCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMZXZlbEluZGV4IGxldmVsVmss
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBs
YXllciwKQEAgLTI0OTIsNiArMjUyOSwxMCBAQCBjbGFzcyBJbWFnZVZpZXdIZWxwZXIgZmluYWwg
OiBwdWJsaWMgUmVzb3VyY2UKICAgICAgICAgU3JnYkRlY29kZU1vZGUgc3JnYkRlY29kZU1vZGUs
CiAgICAgICAgIGdsOjpTcmdiT3ZlcnJpZGUgc3JnYk92ZXJyaWRlTW9kZSkgY29uc3Q7CiAKKyAg
ICBib29sIGlzSW1hZ2VWaWV3R2FyYmFnZUVtcHR5KCkgY29uc3Q7CisKKyAgICB2b2lkIHJlbGVh
c2UoUmVuZGVyZXJWayAqcmVuZGVyZXIsIHN0ZDo6dmVjdG9yPHZrOjpHYXJiYWdlT2JqZWN0PiAm
Z2FyYmFnZSk7CisKICAgcHJpdmF0ZToKICAgICBJbWFnZVZpZXcgJmdldFJlYWRJbWFnZVZpZXco
KQogICAgIHsKQEAgLTI2MTEsNyArMjY1Miw3IEBAIGNsYXNzIEJ1ZmZlclZpZXdIZWxwZXIgZmlu
YWwgOiBwdWJsaWMgUmVzb3VyY2UKICAgICB2b2lkIHJlbGVhc2UoQ29udGV4dFZrICpjb250ZXh0
VmspOwogICAgIHZvaWQgZGVzdHJveShWa0RldmljZSBkZXZpY2UpOwogCi0gICAgYW5nbGU6OlJl
c3VsdCBnZXRWaWV3KENvbnRleHRWayAqY29udGV4dFZrLAorICAgIGFuZ2xlOjpSZXN1bHQgZ2V0
VmlldyhDb250ZXh0ICpjb250ZXh0LAogICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBC
dWZmZXJIZWxwZXIgJmJ1ZmZlciwKICAgICAgICAgICAgICAgICAgICAgICAgICAgVmtEZXZpY2VT
aXplIGJ1ZmZlck9mZnNldCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgRm9ybWF0
ICZmb3JtYXQsCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5H
TEUvcmVuZGVyZXIvdnVsa2FuL3ZrX3V0aWxzLmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vdmtfdXRpbHMuY3BwCmluZGV4IDVkMDViODQ1
YWFhMDQ1NGE0ZmJlMTA2YmUzYTMzN2YxZGQ3MWI3Y2QuLmI4MmUxY2ZiOTI5ZGUzZTA2NjYwZThl
YTgwMTc3YWMzMTdmODJlMWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3Ny
Yy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vdmtfdXRpbHMuY3BwCisrKyBiL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vdmtfdXRpbHMuY3BwCkBA
IC0zNjMsNyArMzYzLDYgQEAgbmFtZXNwYWNlIHZrCiB7CiBjb25zdCBjaGFyICpnTG9hZGVyTGF5
ZXJzUGF0aEVudiAgID0gIlZLX0xBWUVSX1BBVEgiOwogY29uc3QgY2hhciAqZ0xvYWRlcklDREZp
bGVuYW1lc0VudiA9ICJWS19JQ0RfRklMRU5BTUVTIjsKLWNvbnN0IGNoYXIgKmdBTkdMRVByZWZl
cnJlZERldmljZSAgPSAiQU5HTEVfUFJFRkVSUkVEX0RFVklDRSI7CiAKIFZrSW1hZ2VBc3BlY3RG
bGFncyBHZXREZXB0aFN0ZW5jaWxBc3BlY3RGbGFncyhjb25zdCBhbmdsZTo6Rm9ybWF0ICZmb3Jt
YXQpCiB7CkBAIC0zODEsNyArMzgwLDcgQEAgVmtJbWFnZUFzcGVjdEZsYWdzIEdldEZvcm1hdEFz
cGVjdEZsYWdzKGNvbnN0IGFuZ2xlOjpGb3JtYXQgJmZvcm1hdCkKIH0KIAogLy8gQ29udGV4dCBp
bXBsZW1lbnRhdGlvbi4KLUNvbnRleHQ6OkNvbnRleHQoUmVuZGVyZXJWayAqcmVuZGVyZXIpIDog
bVJlbmRlcmVyKHJlbmRlcmVyKSB7fQorQ29udGV4dDo6Q29udGV4dChSZW5kZXJlclZrICpyZW5k
ZXJlcikgOiBtUmVuZGVyZXIocmVuZGVyZXIpLCBtUGVyZkNvdW50ZXJze30ge30KIAogQ29udGV4
dDo6fkNvbnRleHQoKSB7fQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9z
cmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL3ZrX3V0aWxzLmggYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvdnVsa2FuL3ZrX3V0aWxzLmgKaW5kZXggYzRi
ZTY4ZTkxZDhjYTZhZjhlZTZiYjEwYmQ4ZjliMWJjNmUxNDNmZS4uNDA3ZThlMGFlNDg5MDY4Zjdh
MGFmYTFhNmI5OTgwMmFmOTJjMmRlMSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi92a191dGlscy5oCisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci92dWxrYW4vdmtfdXRpbHMuaApA
QCAtMTk2LDggKzE5NiwxMiBAQCBjbGFzcyBDb250ZXh0IDogYW5nbGU6Ok5vbkNvcHlhYmxlCiAg
ICAgVmtEZXZpY2UgZ2V0RGV2aWNlKCkgY29uc3Q7CiAgICAgUmVuZGVyZXJWayAqZ2V0UmVuZGVy
ZXIoKSBjb25zdCB7IHJldHVybiBtUmVuZGVyZXI7IH0KIAorICAgIGNvbnN0IGFuZ2xlOjpWdWxr
YW5QZXJmQ291bnRlcnMgJmdldFBlcmZDb3VudGVycygpIGNvbnN0IHsgcmV0dXJuIG1QZXJmQ291
bnRlcnM7IH0KKyAgICBhbmdsZTo6VnVsa2FuUGVyZkNvdW50ZXJzICZnZXRQZXJmQ291bnRlcnMo
KSB7IHJldHVybiBtUGVyZkNvdW50ZXJzOyB9CisKICAgcHJvdGVjdGVkOgogICAgIFJlbmRlcmVy
VmsgKmNvbnN0IG1SZW5kZXJlcjsKKyAgICBhbmdsZTo6VnVsa2FuUGVyZkNvdW50ZXJzIG1QZXJm
Q291bnRlcnM7CiB9OwogCiBjbGFzcyBSZW5kZXJQYXNzRGVzYzsKQEAgLTc3Myw2ICs3NzcsNyBA
QCBjbGFzcyBSZWN5Y2xlciBmaW5hbCA6IGFuZ2xlOjpOb25Db3B5YWJsZQogICAgICAgICB7CiAg
ICAgICAgICAgICBvYmplY3QuZGVzdHJveShkZXZpY2UpOwogICAgICAgICB9CisgICAgICAgIG1P
YmplY3RGcmVlTGlzdC5jbGVhcigpOwogICAgIH0KIAogICAgIGJvb2wgZW1wdHkoKSBjb25zdCB7
IHJldHVybiBtT2JqZWN0RnJlZUxpc3QuZW1wdHkoKTsgfQpAQCAtMTI0NSw0MSArMTI1MCw2IEBA
IHN0cnVjdCBSZW5kZXJQYXNzUGVyZkNvdW50ZXJzCiAgICAgdWludDhfdCByZWFkT25seURlcHRo
U3RlbmNpbDsKIH07CiAKLXN0cnVjdCBQZXJmQ291bnRlcnMKLXsKLSAgICB1aW50MzJfdCBwcmlt
YXJ5QnVmZmVyczsKLSAgICB1aW50MzJfdCByZW5kZXJQYXNzZXM7Ci0gICAgdWludDMyX3Qgd3Jp
dGVEZXNjcmlwdG9yU2V0czsKLSAgICB1aW50MzJfdCBmbHVzaGVkT3V0c2lkZVJlbmRlclBhc3ND
b21tYW5kQnVmZmVyczsKLSAgICB1aW50MzJfdCByZXNvbHZlSW1hZ2VDb21tYW5kczsKLSAgICB1
aW50MzJfdCBkZXB0aENsZWFyczsKLSAgICB1aW50MzJfdCBkZXB0aExvYWRzOwotICAgIHVpbnQz
Ml90IGRlcHRoU3RvcmVzOwotICAgIHVpbnQzMl90IHN0ZW5jaWxDbGVhcnM7Ci0gICAgdWludDMy
X3Qgc3RlbmNpbExvYWRzOwotICAgIHVpbnQzMl90IHN0ZW5jaWxTdG9yZXM7Ci0gICAgdWludDMy
X3QgY29sb3JBdHRhY2htZW50VW5yZXNvbHZlczsKLSAgICB1aW50MzJfdCBkZXB0aEF0dGFjaG1l
bnRVbnJlc29sdmVzOwotICAgIHVpbnQzMl90IHN0ZW5jaWxBdHRhY2htZW50VW5yZXNvbHZlczsK
LSAgICB1aW50MzJfdCBjb2xvckF0dGFjaG1lbnRSZXNvbHZlczsKLSAgICB1aW50MzJfdCBkZXB0
aEF0dGFjaG1lbnRSZXNvbHZlczsKLSAgICB1aW50MzJfdCBzdGVuY2lsQXR0YWNobWVudFJlc29s
dmVzOwotICAgIHVpbnQzMl90IHJlYWRPbmx5RGVwdGhTdGVuY2lsUmVuZGVyUGFzc2VzOwotICAg
IHVpbnQzMl90IGRlc2NyaXB0b3JTZXRBbGxvY2F0aW9uczsKLSAgICB1aW50MzJfdCBkZXNjcmlw
dG9yU2V0Q2FjaGVUb3RhbFNpemU7Ci0gICAgdWludDMyX3QgdW5pZm9ybXNBbmRYZmJEZXNjcmlw
dG9yU2V0Q2FjaGVIaXRzOwotICAgIHVpbnQzMl90IHVuaWZvcm1zQW5kWGZiRGVzY3JpcHRvclNl
dENhY2hlTWlzc2VzOwotICAgIHVpbnQzMl90IHVuaWZvcm1zQW5kWGZiRGVzY3JpcHRvclNldENh
Y2hlVG90YWxTaXplOwotICAgIHVpbnQzMl90IHRleHR1cmVEZXNjcmlwdG9yU2V0Q2FjaGVIaXRz
OwotICAgIHVpbnQzMl90IHRleHR1cmVEZXNjcmlwdG9yU2V0Q2FjaGVNaXNzZXM7Ci0gICAgdWlu
dDMyX3QgdGV4dHVyZURlc2NyaXB0b3JTZXRDYWNoZVRvdGFsU2l6ZTsKLSAgICB1aW50MzJfdCBz
aGFkZXJCdWZmZXJzRGVzY3JpcHRvclNldENhY2hlSGl0czsKLSAgICB1aW50MzJfdCBzaGFkZXJC
dWZmZXJzRGVzY3JpcHRvclNldENhY2hlTWlzc2VzOwotICAgIHVpbnQzMl90IHNoYWRlckJ1ZmZl
cnNEZXNjcmlwdG9yU2V0Q2FjaGVUb3RhbFNpemU7Ci0gICAgdWludDMyX3QgYnVmZmVyc0dob3N0
ZWQ7Ci0gICAgdWludDMyX3QgdmVydGV4QXJyYXlTeW5jU3RhdGVDYWxsczsKLX07Ci0KIC8vIEEg
VnVsa2FuIGltYWdlIGxldmVsIGluZGV4LgogdXNpbmcgTGV2ZWxJbmRleCA9IGdsOjpMZXZlbElu
ZGV4V3JhcHBlcjx1aW50MzJfdD47CiAKQEAgLTE0ODgsOSArMTQ1OCw2IEBAIGVudW0gY2xhc3Mg
UmVuZGVyUGFzc0Nsb3N1cmVSZWFzb24KICAgICBUZW1wb3JhcnlGb3JJbWFnZUNvcHksCiAgICAg
VGVtcG9yYXJ5Rm9yT3ZlcmxheURyYXcsCiAKLSAgICAvLyBNaXNjCi0gICAgT3ZlcmxheUZvbnRD
cmVhdGlvbiwKLQogICAgIEludmFsaWRFbnVtLAogICAgIEVudW1Db3VudCA9IEludmFsaWRFbnVt
LAogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9y
ZW5kZXJlci92dWxrYW4vdmtfd3JhcHBlci5oIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3Jj
L2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi92a193cmFwcGVyLmgKaW5kZXggZjYxZmUxNmI0NTcy
NTEyNjUwNGEyOWRiODFiZTA4NDc4MWI4NTI1MS4uNGQ4ZDg4NzhhOGIyNDYzYjJjZWVlMDk2MDhi
M2I2Y2MwMTA3MTk2NiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xp
YkFOR0xFL3JlbmRlcmVyL3Z1bGthbi92a193cmFwcGVyLmgKKysrIGIvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL3Z1bGthbi92a193cmFwcGVyLmgKQEAgLTQx
Miw3ICs0MTIsNiBAQCBjbGFzcyBTZW1hcGhvcmUgZmluYWwgOiBwdWJsaWMgV3JhcHBlZE9iamVj
dDxTZW1hcGhvcmUsIFZrU2VtYXBob3JlPgogICAgIHZvaWQgZGVzdHJveShWa0RldmljZSBkZXZp
Y2UpOwogCiAgICAgVmtSZXN1bHQgaW5pdChWa0RldmljZSBkZXZpY2UpOwotICAgIFZrUmVzdWx0
IGluaXQoVmtEZXZpY2UgZGV2aWNlLCBjb25zdCBWa1NlbWFwaG9yZUNyZWF0ZUluZm8gJmNyZWF0
ZUluZm8pOwogICAgIFZrUmVzdWx0IGltcG9ydEZkKFZrRGV2aWNlIGRldmljZSwgY29uc3QgVmtJ
bXBvcnRTZW1hcGhvcmVGZEluZm9LSFIgJmltcG9ydEZkSW5mbykgY29uc3Q7CiB9OwogCkBAIC0x
MjczLDEyICsxMjcyLDYgQEAgQU5HTEVfSU5MSU5FIFZrUmVzdWx0IFNlbWFwaG9yZTo6aW5pdChW
a0RldmljZSBkZXZpY2UpCiAgICAgcmV0dXJuIHZrQ3JlYXRlU2VtYXBob3JlKGRldmljZSwgJnNl
bWFwaG9yZUluZm8sIG51bGxwdHIsICZtSGFuZGxlKTsKIH0KIAotQU5HTEVfSU5MSU5FIFZrUmVz
dWx0IFNlbWFwaG9yZTo6aW5pdChWa0RldmljZSBkZXZpY2UsIGNvbnN0IFZrU2VtYXBob3JlQ3Jl
YXRlSW5mbyAmY3JlYXRlSW5mbykKLXsKLSAgICBBU1NFUlQodmFsaWQoKSk7Ci0gICAgcmV0dXJu
IHZrQ3JlYXRlU2VtYXBob3JlKGRldmljZSwgJmNyZWF0ZUluZm8sIG51bGxwdHIsICZtSGFuZGxl
KTsKLX0KLQogQU5HTEVfSU5MSU5FIFZrUmVzdWx0IFNlbWFwaG9yZTo6aW1wb3J0RmQoVmtEZXZp
Y2UgZGV2aWNlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29u
c3QgVmtJbXBvcnRTZW1hcGhvcmVGZEluZm9LSFIgJmltcG9ydEZkSW5mbykgY29uc3QKIHsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS92YWxpZGF0aW9u
RUdMLmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS92YWxpZGF0aW9u
RUdMLmNwcAppbmRleCA3ZTRiM2FkYjhkYjdlYTMyYzk4MjI4MTU1ZTBhNzAyNzk2ZjBkYTRjLi40
NzI0MDVkNWIyYjQxOGZhZGRmZmRlMWExODllMWQyOTRmMDE1NWUzIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvdmFsaWRhdGlvbkVHTC5jcHAKKysrIGIv
U291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3ZhbGlkYXRpb25FR0wuY3BwCkBA
IC0yMCw2ICsyMCw3IEBACiAjaW5jbHVkZSAibGliQU5HTEUvVGV4dHVyZS5oIgogI2luY2x1ZGUg
ImxpYkFOR0xFL1RocmVhZC5oIgogI2luY2x1ZGUgImxpYkFOR0xFL2Zvcm1hdHV0aWxzLmgiCisj
aW5jbHVkZSAibGliQU5HTEUvcmVuZGVyZXIvRGlzcGxheUltcGwuaCIKIAogI2luY2x1ZGUgPEVH
TC9lZ2xleHQuaD4KIApAQCAtMjM4NCw2ICsyMzg1LDE2IEBAIGJvb2wgVmFsaWRhdGVDcmVhdGVD
b250ZXh0KGNvbnN0IFZhbGlkYXRpb25Db250ZXh0ICp2YWwsCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBjbGllbnRNYWpvclZlcnNpb24sIGNsaWVudE1pbm9yVmVyc2lvbiwgbWF4Lm1h
am9yLCBtYXgubWlub3IpOwogICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAg
ICAgIH0KKyAgICAgICAgICAgIGlmICgoYXR0cmlidXRlcy5nZXQoRUdMX0NPTlRFWFRfV0VCR0xf
Q09NUEFUSUJJTElUWV9BTkdMRSwgRUdMX0ZBTFNFKSA9PSBFR0xfVFJVRSkgJiYKKyAgICAgICAg
ICAgICAgICAoY2xpZW50TWlub3JWZXJzaW9uID4gMSkpCisgICAgICAgICAgICB7CisgICAgICAg
ICAgICAgICAgdmFsLT5zZXRFcnJvcihFR0xfQkFEX0FUVFJJQlVURSwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICJSZXF1ZXN0ZWQgR0xFUyB2ZXJzaW9uICglIiBQUkl4UFRSICIuJSIg
UFJJeFBUUgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIikgaXMgZ3JlYXRlciB0aGFu
ICIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtYXggc3VwcG9ydGVkIDMuMSBmb3Ig
V2ViR0wuIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsaWVudE1ham9yVmVyc2lv
biwgY2xpZW50TWlub3JWZXJzaW9uKTsKKyAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7Cisg
ICAgICAgICAgICB9CiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgZGVmYXVsdDoKICAgICAg
ICAgICAgIHZhbC0+c2V0RXJyb3IoRUdMX0JBRF9BVFRSSUJVVEUpOwpAQCAtNTA1OCwxMCArNTA2
OSwxMiBAQCBib29sIFZhbGlkYXRlQ3JlYXRlUGxhdGZvcm1XaW5kb3dTdXJmYWNlRVhUKGNvbnN0
IFZhbGlkYXRpb25Db250ZXh0ICp2YWwsCiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICB9CiAK
LSAgICBBTkdMRV9WQUxJREFUSU9OX1RSWShWYWxpZGF0ZUNvbmZpZyh2YWwsIGRpc3BsYXksIGNv
bmZpZ3VyYXRpb24pKTsKKyAgICBjb25zdCB2b2lkICphY3R1YWxOYXRpdmVXaW5kb3cgPSBkaXNw
bGF5LT5nZXRJbXBsZW1lbnRhdGlvbigpLT5pc1gxMSgpCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgID8gKnJlaW50ZXJwcmV0X2Nhc3Q8Y29uc3Qgdm9pZCAqY29uc3Qg
Kj4obmF0aXZlV2luZG93KQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICA6IG5hdGl2ZVdpbmRvdzsKIAotICAgIHZhbC0+c2V0RXJyb3IoRUdMX0JBRF9ESVNQTEFZLCAi
VmFsaWRhdGVDcmVhdGVQbGF0Zm9ybVdpbmRvd1N1cmZhY2VFWFQgdW5pbXBsZW1lbnRlZC4iKTsK
LSAgICByZXR1cm4gZmFsc2U7CisgICAgcmV0dXJuIFZhbGlkYXRlQ3JlYXRlUGxhdGZvcm1XaW5k
b3dTdXJmYWNlKHZhbCwgZGlzcGxheSwgY29uZmlndXJhdGlvbiwgYWN0dWFsTmF0aXZlV2luZG93
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyaWJ1
dGVzKTsKIH0KIAogYm9vbCBWYWxpZGF0ZUNyZWF0ZVBsYXRmb3JtUGl4bWFwU3VyZmFjZUVYVChj
b25zdCBWYWxpZGF0aW9uQ29udGV4dCAqdmFsLApAQCAtNjIyMSw2ICs2MjM0LDE1IEBAIGJvb2wg
VmFsaWRhdGVIYW5kbGVHUFVTd2l0Y2hBTkdMRShjb25zdCBWYWxpZGF0aW9uQ29udGV4dCAqdmFs
LCBjb25zdCBEaXNwbGF5ICpkCiAgICAgcmV0dXJuIHRydWU7CiB9CiAKK2Jvb2wgVmFsaWRhdGVG
b3JjZUdQVVN3aXRjaEFOR0xFKGNvbnN0IFZhbGlkYXRpb25Db250ZXh0ICp2YWwsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBEaXNwbGF5ICpkaXNwbGF5LAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgRUdMaW50IGdwdUlESGlnaCwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIEVHTGludCBncHVJRExvdykKK3sKKyAgICBBTkdMRV9WQUxJ
REFUSU9OX1RSWShWYWxpZGF0ZURpc3BsYXkodmFsLCBkaXNwbGF5KSk7CisgICAgcmV0dXJuIHRy
dWU7Cit9CisKIGJvb2wgVmFsaWRhdGVHZXRDdXJyZW50RGlzcGxheShjb25zdCBWYWxpZGF0aW9u
Q29udGV4dCAqdmFsKQogewogICAgIHJldHVybiB0cnVlOwpAQCAtNjUxMiw3ICs2NTM0LDEwOSBA
QCBib29sIFZhbGlkYXRlU2V0RGFtYWdlUmVnaW9uS0hSKGNvbnN0IFZhbGlkYXRpb25Db250ZXh0
ICp2YWwsCiAgICAgQU5HTEVfVkFMSURBVElPTl9UUlkoVmFsaWRhdGVEaXNwbGF5KHZhbCwgZGlz
cGxheSkpOwogICAgIEFOR0xFX1ZBTElEQVRJT05fVFJZKFZhbGlkYXRlU3VyZmFjZSh2YWwsIGRp
c3BsYXksIHN1cmZhY2UpKTsKIAotICAgIHJldHVybiBmYWxzZTsKKyAgICBpZiAoIShzdXJmYWNl
LT5nZXRUeXBlKCkgJiBFR0xfV0lORE9XX0JJVCkpCisgICAgeworICAgICAgICB2YWwtPnNldEVy
cm9yKEVHTF9CQURfTUFUQ0gsICJzdXJmYWNlIGlzIG5vdCBhIHBvc3RhYmxlIHN1cmZhY2UiKTsK
KyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KKworICAgIGlmIChzdXJmYWNlICE9IHZhbC0+
ZWdsVGhyZWFkLT5nZXRDdXJyZW50RHJhd1N1cmZhY2UoKSkKKyAgICB7CisgICAgICAgIHZhbC0+
c2V0RXJyb3IoRUdMX0JBRF9NQVRDSCwKKyAgICAgICAgICAgICAgICAgICAgICAic3VyZmFjZSBp
cyBub3QgdGhlIGN1cnJlbnQgZHJhdyBzdXJmYWNlIGZvciB0aGUgY2FsbGluZyB0aHJlYWQiKTsK
KyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KKworICAgIGlmIChzdXJmYWNlLT5nZXRTd2Fw
QmVoYXZpb3IoKSAhPSBFR0xfQlVGRkVSX0RFU1RST1lFRCkKKyAgICB7CisgICAgICAgIHZhbC0+
c2V0RXJyb3IoRUdMX0JBRF9NQVRDSCwgInN1cmZhY2UncyBzd2FwIGJlaGF2aW9yIGlzIG5vdCBF
R0xfQlVGRkVSX0RFU1RST1lFRCIpOworICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorCisg
ICAgaWYgKHN1cmZhY2UtPmlzRGFtYWdlUmVnaW9uU2V0KCkpCisgICAgeworICAgICAgICB2YWwt
PnNldEVycm9yKAorICAgICAgICAgICAgRUdMX0JBRF9BQ0NFU1MsCisgICAgICAgICAgICAiZGFt
YWdlIHJlZ2lvbiBoYXMgYWxyZWFkeSBiZWVuIHNldCBvbiBzdXJmYWNlIHNpbmNlIHRoZSBtb3N0
IHJlY2VudCBmcmFtZSBib3VuZGFyeSIpOworICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQor
CisgICAgaWYgKCFzdXJmYWNlLT5idWZmZXJBZ2VRdWVyaWVkU2luY2VMYXN0U3dhcCgpKQorICAg
IHsKKyAgICAgICAgdmFsLT5zZXRFcnJvcihFR0xfQkFEX0FDQ0VTUywKKyAgICAgICAgICAgICAg
ICAgICAgICAiRUdMX0JVRkZFUl9BR0VfS0hSIGF0dHJpYnV0ZSBvZiBzdXJmYWNlIGhhcyBub3Qg
YmVlbiBxdWVyaWVkIHNpbmNlIHRoZSBtb3N0ICIKKyAgICAgICAgICAgICAgICAgICAgICAicmVj
ZW50IGZyYW1lIGJvdW5kYXJ5Iik7CisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisKKyAg
ICByZXR1cm4gdHJ1ZTsKK30KKworYm9vbCBWYWxpZGF0ZVF1ZXJ5RG1hQnVmRm9ybWF0c0VYVChW
YWxpZGF0aW9uQ29udGV4dCBjb25zdCAqdmFsLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBEaXNwbGF5IGNvbnN0ICpkcHksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIEVHTGludCBtYXhfZm9ybWF0cywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgY29uc3QgRUdMaW50ICpmb3JtYXRzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBjb25zdCBFR0xpbnQgKm51bV9mb3JtYXRzKQoreworICAgIEFOR0xFX1ZBTElEQVRJ
T05fVFJZKFZhbGlkYXRlRGlzcGxheSh2YWwsIGRweSkpOworCisgICAgaWYgKCFkcHktPmdldEV4
dGVuc2lvbnMoKS5pbWFnZURtYUJ1ZkltcG9ydE1vZGlmaWVyc0VYVCkKKyAgICB7CisgICAgICAg
IHZhbC0+c2V0RXJyb3IoRUdMX0JBRF9BQ0NFU1MsICJFR0xfRVhUX2RtYV9idWZfaW1wb3J0X21v
ZGZpZXIgbm90IHN1cHBvcnRlZCIpOworICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorCisg
ICAgaWYgKG1heF9mb3JtYXRzIDwgMCkKKyAgICB7CisgICAgICAgIHZhbC0+c2V0RXJyb3IoRUdM
X0JBRF9QQVJBTUVURVIsICJtYXhfZm9ybWF0cyBzaG91bGQgbm90IGJlIG5lZ2F0aXZlIik7Cisg
ICAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisKKyAgICBpZiAobWF4X2Zvcm1hdHMgPiAwICYm
IGZvcm1hdHMgPT0gbnVsbHB0cikKKyAgICB7CisgICAgICAgIHZhbC0+c2V0RXJyb3IoRUdMX0JB
RF9QQVJBTUVURVIsICJpZiBtYXhfZm9ybWF0cyBpcyBwb3NpdGl2ZSwgZm9ybWF0cyBzaG91bGQg
bm90IGJlIE5VTEwiKTsKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KKworICAgIHJldHVy
biB0cnVlOworfQorCitib29sIFZhbGlkYXRlUXVlcnlEbWFCdWZNb2RpZmllcnNFWFQoVmFsaWRh
dGlvbkNvbnRleHQgY29uc3QgKnZhbCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBEaXNwbGF5IGNvbnN0ICpkcHksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgRUdMaW50IGZvcm1hdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBFR0xpbnQgbWF4X21vZGlmaWVycywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBjb25zdCBFR0x1aW50NjRLSFIgKm1vZGlmaWVycywKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBjb25zdCBFR0xCb29sZWFuICpleHRlcm5hbF9vbmx5LAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IEVHTGludCAqbnVtX21vZGlmaWVy
cykKK3sKKyAgICBBTkdMRV9WQUxJREFUSU9OX1RSWShWYWxpZGF0ZURpc3BsYXkodmFsLCBkcHkp
KTsKKworICAgIGlmICghZHB5LT5nZXRFeHRlbnNpb25zKCkuaW1hZ2VEbWFCdWZJbXBvcnRNb2Rp
ZmllcnNFWFQpCisgICAgeworICAgICAgICB2YWwtPnNldEVycm9yKEVHTF9CQURfQUNDRVNTLCAi
RUdMX0VYVF9kbWFfYnVmX2ltcG9ydF9tb2RmaWVyIG5vdCBzdXBwb3J0ZWQiKTsKKyAgICAgICAg
cmV0dXJuIGZhbHNlOworICAgIH0KKworICAgIGlmIChtYXhfbW9kaWZpZXJzIDwgMCkKKyAgICB7
CisgICAgICAgIHZhbC0+c2V0RXJyb3IoRUdMX0JBRF9QQVJBTUVURVIsICJtYXhfbW9kaWZpZXJz
IHNob3VsZCBub3QgYmUgbmVnYXRpdmUiKTsKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0K
KworICAgIGlmIChtYXhfbW9kaWZpZXJzID4gMCAmJiBtb2RpZmllcnMgPT0gbnVsbHB0cikKKyAg
ICB7CisgICAgICAgIHZhbC0+c2V0RXJyb3IoRUdMX0JBRF9QQVJBTUVURVIsCisgICAgICAgICAg
ICAgICAgICAgICAgImlmIG1heF9tb2RpZmllcnMgaXMgcG9zaXRpdmUsIG1vZGlmaWVycyBzaG91
bGQgbm90IGJlIE5VTEwiKTsKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KKworICAgIGlm
ICghZHB5LT5zdXBwb3J0c0RtYUJ1ZkZvcm1hdChmb3JtYXQpKQorICAgIHsKKyAgICAgICAgdmFs
LT5zZXRFcnJvcihFR0xfQkFEX1BBUkFNRVRFUiwKKyAgICAgICAgICAgICAgICAgICAgICAiZm9y
bWF0IHNob3VsZCBiZSBvbmUgb2YgdGhlIGZvcm1hdHMgYWR2ZXJ0aXNlZCBieSBRdWVyeURtYUJ1
ZkZvcm1hdHNFWFQiKTsKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KKyAgICByZXR1cm4g
dHJ1ZTsKIH0KIAogfSAgLy8gbmFtZXNwYWNlIGVnbApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3ZhbGlkYXRpb25FR0xfYXV0b2dlbi5oIGIvU291cmNl
L1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3ZhbGlkYXRpb25FR0xfYXV0b2dlbi5oCmlu
ZGV4IDQwZWRkNzdhYTQxZTZiYmRmODNiOTI3N2NiYWM5NTNhYWM2YWQxZjcuLjdlYTYyYmM1MzI2
Yzg2NWUzNzdmZTE1OGYxMTJjYjE4ZDc0NWQzMzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL3NyYy9saWJBTkdMRS92YWxpZGF0aW9uRUdMX2F1dG9nZW4uaAorKysgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvdmFsaWRhdGlvbkVHTF9hdXRvZ2VuLmgK
QEAgLTI1MCw2ICsyNTAsMTAgQEAgYm9vbCBWYWxpZGF0ZVJlYWNxdWlyZUhpZ2hQb3dlckdQVUFO
R0xFKGNvbnN0IFZhbGlkYXRpb25Db250ZXh0ICp2YWwsCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgY29uc3QgZWdsOjpEaXNwbGF5ICpkcHlQYWNrZWQsCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZ2w6OkNvbnRleHQgKmN0eFBh
Y2tlZCk7CiBib29sIFZhbGlkYXRlSGFuZGxlR1BVU3dpdGNoQU5HTEUoY29uc3QgVmFsaWRhdGlv
bkNvbnRleHQgKnZhbCwgY29uc3QgZWdsOjpEaXNwbGF5ICpkcHlQYWNrZWQpOworYm9vbCBWYWxp
ZGF0ZUZvcmNlR1BVU3dpdGNoQU5HTEUoY29uc3QgVmFsaWRhdGlvbkNvbnRleHQgKnZhbCwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGVnbDo6RGlzcGxheSAqZHB5UGFj
a2VkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRUdMaW50IGdwdUlESGlnaCwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVHTGludCBncHVJRExvdyk7CiAKIC8v
IEVHTF9BTkdMRV9wcmVwYXJlX3N3YXBfYnVmZmVycwogYm9vbCBWYWxpZGF0ZVByZXBhcmVTd2Fw
QnVmZmVyc0FOR0xFKGNvbnN0IFZhbGlkYXRpb25Db250ZXh0ICp2YWwsCkBAIC0zMzcsNiArMzQx
LDIwIEBAIGJvb2wgVmFsaWRhdGVRdWVyeURpc3BsYXlBdHRyaWJFWFQoY29uc3QgVmFsaWRhdGlv
bkNvbnRleHQgKnZhbCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRUdMaW50
IGF0dHJpYnV0ZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgRUdM
QXR0cmliICp2YWx1ZSk7CiAKKy8vIEVHTF9FWFRfaW1hZ2VfZG1hX2J1Zl9pbXBvcnRfbW9kaWZp
ZXJzCitib29sIFZhbGlkYXRlUXVlcnlEbWFCdWZGb3JtYXRzRVhUKGNvbnN0IFZhbGlkYXRpb25D
b250ZXh0ICp2YWwsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGVn
bDo6RGlzcGxheSAqZHB5UGFja2VkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBFR0xpbnQgbWF4X2Zvcm1hdHMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGNvbnN0IEVHTGludCAqZm9ybWF0cywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgY29uc3QgRUdMaW50ICpudW1fZm9ybWF0cyk7Citib29sIFZhbGlkYXRlUXVlcnlEbWFCdWZN
b2RpZmllcnNFWFQoY29uc3QgVmFsaWRhdGlvbkNvbnRleHQgKnZhbCwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBlZ2w6OkRpc3BsYXkgKmRweVBhY2tlZCwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFR0xpbnQgZm9ybWF0LAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVHTGludCBtYXhfbW9kaWZpZXJzLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IEVHTHVpbnQ2NEtIUiAqbW9k
aWZpZXJzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IEVHTEJv
b2xlYW4gKmV4dGVybmFsX29ubHksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgY29uc3QgRUdMaW50ICpudW1fbW9kaWZpZXJzKTsKKwogLy8gRUdMX0VYVF9wbGF0Zm9ybV9i
YXNlCiBib29sIFZhbGlkYXRlQ3JlYXRlUGxhdGZvcm1QaXhtYXBTdXJmYWNlRVhUKGNvbnN0IFZh
bGlkYXRpb25Db250ZXh0ICp2YWwsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGNvbnN0IGVnbDo6RGlzcGxheSAqZHB5UGFja2VkLApkaWZmIC0tZ2l0IGEvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3ZhbGlkYXRpb25FUy5jcHAgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvdmFsaWRhdGlvbkVTLmNwcAppbmRleCBi
MGI3MWMwZGY3YjE3NDAyZDdlYzFlN2Y5NmZhN2YzMjg1Mjc2ZjgxLi4zN2E5NzkwM2YwYjI4NGNl
ZTkyY2IyYTVmNzA3MDVmODViN2E1OGFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9zcmMvbGliQU5HTEUvdmFsaWRhdGlvbkVTLmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvbGliQU5HTEUvdmFsaWRhdGlvbkVTLmNwcApAQCAtNTU5LDYgKzU1OSwzMyBA
QCB1bnNpZ25lZCBpbnQgR2V0U2FtcGxlclBhcmFtZXRlckNvdW50KEdMZW51bSBwbmFtZSkKICAg
ICByZXR1cm4gcG5hbWUgPT0gR0xfVEVYVFVSRV9CT1JERVJfQ09MT1IgPyA0IDogMTsKIH0KIAor
Y29uc3QgY2hhciAqVmFsaWRhdGVQcm9ncmFtRHJhd0FkdmFuY2VkQmxlbmRTdGF0ZShjb25zdCBD
b250ZXh0ICpjb250ZXh0LCBQcm9ncmFtICpwcm9ncmFtKQoreworICAgIGNvbnN0IFN0YXRlICZz
dGF0ZSA9IGNvbnRleHQtPmdldFN0YXRlKCk7CisgICAgY29uc3QgQmxlbmRFcXVhdGlvbkJpdFNl
dCAmc3VwcG9ydGVkQmxlbmRFcXVhdGlvbnMgPQorICAgICAgICBwcm9ncmFtLT5nZXRTdGF0ZSgp
LmdldEFkdmFuY2VkQmxlbmRFcXVhdGlvbnMoKTsKKyAgICBjb25zdCBEcmF3QnVmZmVyTWFzayAm
ZW5hYmxlZERyYXdCdWZmZXJNYXNrID0gc3RhdGUuZ2V0QmxlbmRTdGF0ZUV4dCgpLm1FbmFibGVk
TWFzazsKKworICAgIGZvciAoc2l6ZV90IGJsZW5kRW5hYmxlZEJ1ZmZlckluZGV4IDogZW5hYmxl
ZERyYXdCdWZmZXJNYXNrKQorICAgIHsKKyAgICAgICAgY29uc3QgZ2w6OkJsZW5kRXF1YXRpb25U
eXBlICZlbmFibGVkQmxlbmRFcXVhdGlvbiA9IGdsOjpGcm9tR0xlbnVtPGdsOjpCbGVuZEVxdWF0
aW9uVHlwZT4oCisgICAgICAgICAgICBzdGF0ZS5nZXRCbGVuZFN0YXRlRXh0KCkuZ2V0RXF1YXRp
b25Db2xvckluZGV4ZWQoYmxlbmRFbmFibGVkQnVmZmVySW5kZXgpKTsKKworICAgICAgICBpZiAo
ZW5hYmxlZEJsZW5kRXF1YXRpb24gPCBnbDo6QmxlbmRFcXVhdGlvblR5cGU6Ok11bHRpcGx5IHx8
CisgICAgICAgICAgICBlbmFibGVkQmxlbmRFcXVhdGlvbiA+IGdsOjpCbGVuZEVxdWF0aW9uVHlw
ZTo6SHNsTHVtaW5vc2l0eSkKKyAgICAgICAgeworICAgICAgICAgICAgY29udGludWU7CisgICAg
ICAgIH0KKworICAgICAgICBpZiAoIXN1cHBvcnRlZEJsZW5kRXF1YXRpb25zLnRlc3QoZW5hYmxl
ZEJsZW5kRXF1YXRpb24pKQorICAgICAgICB7CisgICAgICAgICAgICByZXR1cm4gZ2w6OmVycjo6
a0JsZW5kRXF1YXRpb25Ob3RFbmFibGVkOworICAgICAgICB9CisgICAgfQorCisgICAgcmV0dXJu
IG51bGxwdHI7Cit9CisKIEFOR0xFX0lOTElORSBjb25zdCBjaGFyICpWYWxpZGF0ZVByb2dyYW1E
cmF3U3RhdGVzKGNvbnN0IENvbnRleHQgKmNvbnRleHQsCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBFeHRlbnNpb25zICZleHRlbnNpb25z
LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHJv
Z3JhbSAqcHJvZ3JhbSkKQEAgLTYxNiw3ICs2NDMsMTUgQEAgQU5HTEVfSU5MSU5FIGNvbnN0IGNo
YXIgKlZhbGlkYXRlUHJvZ3JhbURyYXdTdGF0ZXMoY29uc3QgQ29udGV4dCAqY29udGV4dCwKICAg
ICAgICAgfQogICAgIH0KIAotICAgIHJldHVybiBudWxscHRyOworICAgIC8vIEVuYWJsZWQgYmxl
bmQgZXF1YXRpb24gdmFsaWRhdGlvbgorICAgIGNvbnN0IGNoYXIgKmVycm9yU3RyaW5nID0gbnVs
bHB0cjsKKworICAgIGlmIChleHRlbnNpb25zLmJsZW5kRXF1YXRpb25BZHZhbmNlZEtIUikKKyAg
ICB7CisgICAgICAgIGVycm9yU3RyaW5nID0gVmFsaWRhdGVQcm9ncmFtRHJhd0FkdmFuY2VkQmxl
bmRTdGF0ZShjb250ZXh0LCBwcm9ncmFtKTsKKyAgICB9CisKKyAgICByZXR1cm4gZXJyb3JTdHJp
bmc7CiB9CiB9ICAvLyBhbm9ueW1vdXMgbmFtZXNwYWNlCiAKQEAgLTEwMzAsMTggKzEwNjUsMTQg
QEAgYm9vbCBWYWxpZEltYWdlU2l6ZVBhcmFtZXRlcnMoY29uc3QgQ29udGV4dCAqY29udGV4dCwK
ICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotYm9vbCBWYWxpZENvbXByZXNzZWREaW1lbnNpb24oR0xz
aXplaSBzaXplLCBHTHVpbnQgYmxvY2tTaXplLCBHTGludCBsZXZlbCkKLXsKLSAgICByZXR1cm4g
KGxldmVsID4gMCkgfHwgKHNpemUgJSBibG9ja1NpemUgPT0gMCk7Ci19Ci0KLWJvb2wgVmFsaWRD
b21wcmVzc2VkQmFzZUxldmVsRm9yV2ViR0woR0xzaXplaSBzaXplLCBHTHVpbnQgYmxvY2tTaXpl
LCBHTGludCBsZXZlbCkKK2Jvb2wgVmFsaWRDb21wcmVzc2VkQmFzZUxldmVsKEdMc2l6ZWkgc2l6
ZSwgR0x1aW50IGJsb2NrU2l6ZSwgR0xpbnQgbGV2ZWwpCiB7Ci0gICAgLy8gQXZvaWQgQysrIHVu
ZGVmaW5lZCBiZWhhdmlvci4KLSAgICBjb25zdGV4cHIgaW50IG1heFZhbGlkU2hpZnRzID0gMzE7
Ci0gICAgaWYgKGxldmVsID4gbWF4VmFsaWRTaGlmdHMpCi0gICAgICAgIHJldHVybiBmYWxzZTsK
LSAgICByZXR1cm4gKChzaXplIDw8IGxldmVsKSAlIGJsb2NrU2l6ZSkgPT0gMDsKKyAgICAvLyBB
bHJlYWR5IGNoZWNrZWQgaW4gVmFsaWRNaXBMZXZlbC4KKyAgICBBU1NFUlQobGV2ZWwgPCAzMik7
CisgICAgLy8gVGhpcyBmdW5jdGlvbiBpcyB1c2VkIG9ubHkgZm9yIDR4NCBCQyBmb3JtYXRzLgor
ICAgIEFTU0VSVChibG9ja1NpemUgPT0gNCk7CisgICAgLy8gVXNlIHRoZSBjb25zdGFudCB2YWx1
ZSB0byBhdm9pZCBkaXZpc2lvbi4KKyAgICByZXR1cm4gKChzaXplIDw8IGxldmVsKSAlIDQpID09
IDA7CiB9CiAKIGJvb2wgVmFsaWRDb21wcmVzc2VkSW1hZ2VTaXplKGNvbnN0IENvbnRleHQgKmNv
bnRleHQsCkBAIC0xMDgxLDI4ICsxMTEyLDI2IEBAIGJvb2wgVmFsaWRDb21wcmVzc2VkSW1hZ2VT
aXplKGNvbnN0IENvbnRleHQgKmNvbnRleHQsCiAKICAgICBpZiAoQ29tcHJlc3NlZFRleHR1cmVG
b3JtYXRSZXF1aXJlc0V4YWN0U2l6ZShpbnRlcm5hbEZvcm1hdCkpCiAgICAgewotICAgICAgICAv
LyBJbiBXZWJHTCBjb21wYXRpYmlsaXR5IG1vZGUsIGVuZm9yY2UgdGhhdCB0aGUgYmFzZSBsZXZl
bCBpbXBsaWVkCisgICAgICAgIC8vIEluIFdlYkdMIGNvbXBhdGliaWxpdHkgbW9kZSBhbmQgRDNE
LCBlbmZvcmNlIHRoYXQgdGhlIGJhc2UgbGV2ZWwgaW1wbGllZAogICAgICAgICAvLyBieSB0aGUg
Y29tcHJlc3NlZCB0ZXh0dXJlJ3MgbWlwIGxldmVsIHdvdWxkIGNvbmZvcm0gdG8gdGhlIGJsb2Nr
Ci0gICAgICAgIC8vIHNpemUuIFRoaXMgaXMgbW9yZSBzdHJpY3QgdGhhbiB0aGUgbm9uLVdlYkdM
IGNoZWNrLgotICAgICAgICBpZiAoY29udGV4dC0+aXNXZWJHTCgpKQorICAgICAgICAvLyBzaXpl
LgorICAgICAgICBpZiAoY29udGV4dC0+aXNXZWJHTCgpIHx8IGNvbnRleHQtPmdldExpbWl0YXRp
b25zKCkuY29tcHJlc3NlZEJhc2VNaXBMZXZlbE11bHRpcGxlT2ZGb3VyKQogICAgICAgICB7Ci0g
ICAgICAgICAgICBpZiAoIVZhbGlkQ29tcHJlc3NlZEJhc2VMZXZlbEZvcldlYkdMKHdpZHRoLCBm
b3JtYXRJbmZvLmNvbXByZXNzZWRCbG9ja1dpZHRoLCBsZXZlbCkgfHwKLSAgICAgICAgICAgICAg
ICAhVmFsaWRDb21wcmVzc2VkQmFzZUxldmVsRm9yV2ViR0woaGVpZ2h0LCBmb3JtYXRJbmZvLmNv
bXByZXNzZWRCbG9ja0hlaWdodCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgbGV2ZWwpIHx8Ci0gICAgICAgICAgICAgICAgIVZhbGlkQ29tcHJlc3Nl
ZEJhc2VMZXZlbEZvcldlYkdMKGRlcHRoLCBmb3JtYXRJbmZvLmNvbXByZXNzZWRCbG9ja0RlcHRo
LCBsZXZlbCkpCi0gICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwot
ICAgICAgICAgICAgfQotICAgICAgICB9Ci0gICAgICAgIGVsc2UKLSAgICAgICAgewotICAgICAg
ICAgICAgaWYgKCFWYWxpZENvbXByZXNzZWREaW1lbnNpb24od2lkdGgsIGZvcm1hdEluZm8uY29t
cHJlc3NlZEJsb2NrV2lkdGgsIGxldmVsKSB8fAotICAgICAgICAgICAgICAgICFWYWxpZENvbXBy
ZXNzZWREaW1lbnNpb24oaGVpZ2h0LCBmb3JtYXRJbmZvLmNvbXByZXNzZWRCbG9ja0hlaWdodCwg
bGV2ZWwpIHx8Ci0gICAgICAgICAgICAgICAgIVZhbGlkQ29tcHJlc3NlZERpbWVuc2lvbihkZXB0
aCwgZm9ybWF0SW5mby5jb21wcmVzc2VkQmxvY2tEZXB0aCwgbGV2ZWwpKQorICAgICAgICAgICAg
Ly8gVGhpcyBjaGVjayBpcyBwZXJmb3JtZWQgb25seSBmb3IgQkMgZm9ybWF0cy4KKyAgICAgICAg
ICAgIEFTU0VSVChmb3JtYXRJbmZvLmNvbXByZXNzZWRCbG9ja0RlcHRoID09IDEpOworICAgICAg
ICAgICAgaWYgKCFWYWxpZENvbXByZXNzZWRCYXNlTGV2ZWwod2lkdGgsIGZvcm1hdEluZm8uY29t
cHJlc3NlZEJsb2NrV2lkdGgsIGxldmVsKSB8fAorICAgICAgICAgICAgICAgICFWYWxpZENvbXBy
ZXNzZWRCYXNlTGV2ZWwoaGVpZ2h0LCBmb3JtYXRJbmZvLmNvbXByZXNzZWRCbG9ja0hlaWdodCwg
bGV2ZWwpKQogICAgICAgICAgICAgewogICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAg
ICAgICAgICAgIH0KICAgICAgICAgfQorICAgICAgICAvLyBub24tV2ViR0wgYW5kIG5vbi1EM0Qg
Y2hlY2sgaXMgbm90IG5lY2Vzc2FyeSBmb3IgdGhlIGZvbGxvd2luZyBmb3JtYXRzCisgICAgICAg
IC8vIEZyb20gRVhUX3RleHR1cmVfY29tcHJlc3Npb25fczN0YyBzcGVjaWZpY2F0aW9uOgorICAg
ICAgICAvLyBJZiB0aGUgd2lkdGggb3IgaGVpZ2h0IGlzIG5vdCBhIG11bHRpcGxlIG9mIGZvdXIs
IHRoZXJlIHdpbGwgYmUgNHg0IGJsb2NrcyBhdCB0aGUgZWRnZSBvZgorICAgICAgICAvLyB0aGUg
aW1hZ2UgdGhhdCBjb250YWluICJleHRyYSIgdGV4ZWxzIHRoYXQgYXJlIG5vdCBwYXJ0IG9mIHRo
ZSBpbWFnZS4gRnJvbQorICAgICAgICAvLyBFWFRfdGV4dHVyZV9jb21wcmVzc2lvbl9icHRjICYg
RVhUX3RleHR1cmVfY29tcHJlc3Npb25fcmd0YyBzcGVjaWZpY2F0aW9uOiBJZiBhbgorICAgICAg
ICAvLyBSR1RDL0JQVEMgaW1hZ2UgaGFzIGEgd2lkdGggb3IgaGVpZ2h0IHRoYXQgaXMgbm90IGEg
bXVsdGlwbGUgb2YgZm91ciwgdGhlIGRhdGEKKyAgICAgICAgLy8gY29ycmVzcG9uZGluZyB0byB0
ZXhlbHMgb3V0c2lkZSB0aGUgaW1hZ2UgYXJlIGlycmVsZXZhbnQgYW5kIHVuZGVmaW5lZC4KICAg
ICB9CiAKICAgICByZXR1cm4gdHJ1ZTsKQEAgLTQxMDUsNiArNDEzNCwzMCBAQCBjb25zdCBjaGFy
ICpWYWxpZGF0ZURyYXdTdGF0ZXMoY29uc3QgQ29udGV4dCAqY29udGV4dCkKICAgICAgICAgfQog
ICAgIH0KIAorICAgIC8vIEFkdmFuY2VkIGJsZW5kIGVxdWF0aW9uIGNhbiBvbmx5IGJlIGVuYWJs
ZWQgZm9yIGEgc2luZ2xlIHJlbmRlciB0YXJnZXQuCisgICAgY29uc3QgQmxlbmRTdGF0ZUV4dCAm
YmxlbmRTdGF0ZUV4dCA9IHN0YXRlLmdldEJsZW5kU3RhdGVFeHQoKTsKKyAgICBpZiAoYmxlbmRT
dGF0ZUV4dC5tVXNlc0FkdmFuY2VkQmxlbmRFcXVhdGlvbk1hc2suYW55KCkpCisgICAgeworICAg
ICAgICBjb25zdCBzaXplX3QgZHJhd0J1ZmZlckNvdW50ICAgICAgICAgICAgPSBmcmFtZWJ1ZmZl
ci0+Z2V0RHJhd2J1ZmZlclN0YXRlQ291bnQoKTsKKyAgICAgICAgdWludDMyX3QgYWR2YW5jZWRC
bGVuZFJlbmRlclRhcmdldENvdW50ID0gMDsKKworICAgICAgICBmb3IgKHNpemVfdCBkcmF3QnVm
ZmVySW5kZXggOiBibGVuZFN0YXRlRXh0Lm1Vc2VzQWR2YW5jZWRCbGVuZEVxdWF0aW9uTWFzaykK
KyAgICAgICAgeworICAgICAgICAgICAgaWYgKGRyYXdCdWZmZXJJbmRleCA8IGRyYXdCdWZmZXJD
b3VudCAmJgorICAgICAgICAgICAgICAgIGZyYW1lYnVmZmVyLT5nZXREcmF3QnVmZmVyU3RhdGUo
ZHJhd0J1ZmZlckluZGV4KSAhPSBHTF9OT05FICYmCisgICAgICAgICAgICAgICAgYmxlbmRTdGF0
ZUV4dC5tRW5hYmxlZE1hc2sudGVzdChkcmF3QnVmZmVySW5kZXgpICYmCisgICAgICAgICAgICAg
ICAgYmxlbmRTdGF0ZUV4dC5tVXNlc0FkdmFuY2VkQmxlbmRFcXVhdGlvbk1hc2sudGVzdChkcmF3
QnVmZmVySW5kZXgpKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICsrYWR2YW5jZWRC
bGVuZFJlbmRlclRhcmdldENvdW50OworICAgICAgICAgICAgfQorICAgICAgICB9CisKKyAgICAg
ICAgaWYgKGFkdmFuY2VkQmxlbmRSZW5kZXJUYXJnZXRDb3VudCA+IDEpCisgICAgICAgIHsKKyAg
ICAgICAgICAgIHJldHVybiBrQWR2YW5jZWRCbGVuZEVxdWF0aW9uV2l0aE1SVDsKKyAgICAgICAg
fQorICAgIH0KKwogICAgIGlmIChjb250ZXh0LT5nZXRTdGF0ZUNhY2hlKCkuaGFzQW55RW5hYmxl
ZENsaWVudEF0dHJpYigpKQogICAgIHsKICAgICAgICAgaWYgKGV4dGVuc2lvbnMud2ViZ2xDb21w
YXRpYmlsaXR5QU5HTEUgfHwgIXN0YXRlLmFyZUNsaWVudEFycmF5c0VuYWJsZWQoKSkKQEAgLTQx
ODUsNiArNDIzOCwxNCBAQCBjb25zdCBjaGFyICpWYWxpZGF0ZURyYXdTdGF0ZXMoY29uc3QgQ29u
dGV4dCAqY29udGV4dCkKICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGtUZXNzZWxsYXRpb25T
aGFkZXJSZXF1aXJlc0JvdGhDb250cm9sQW5kRXZhbHVhdGlvbjsKICAgICAgICAgICAgICAgICB9
CiAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIGlmIChzdGF0ZS5pc1RyYW5zZm9ybUZlZWRi
YWNrQWN0aXZlKCkpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgaWYgKCFWYWxpZGF0
ZVByb2dyYW1FeGVjdXRhYmxlWEZCQnVmZmVyc1ByZXNlbnQoY29udGV4dCwgZXhlY3V0YWJsZSkp
CisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICByZXR1cm4ga1RyYW5zZm9y
bUZlZWRiYWNrQnVmZmVyTWlzc2luZzsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9
CiAgICAgICAgIH0KIAogICAgICAgICBpZiAocHJvZ3JhbUlzWVVWT3V0cHV0ICE9IGZyYW1lYnVm
ZmVySXNZVVYpCkBAIC04NDQ2LDQgKzg1MDcsMjEgQEAgYm9vbCBWYWxpZGF0ZUludmFsaWRhdGVU
ZXh0dXJlQU5HTEUoY29uc3QgQ29udGV4dCAqY29udGV4dCwKICAgICByZXR1cm4gdHJ1ZTsKIH0K
IAorYm9vbCBWYWxpZGF0ZVByb2dyYW1FeGVjdXRhYmxlWEZCQnVmZmVyc1ByZXNlbnQoY29uc3Qg
Q29udGV4dCAqY29udGV4dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGNvbnN0IFByb2dyYW1FeGVjdXRhYmxlICpwcm9ncmFtRXhlY3V0YWJsZSkKK3sK
KyAgICBzaXplX3QgcHJvZ3JhbVhmYkNvdW50ID0gcHJvZ3JhbUV4ZWN1dGFibGUtPmdldFRyYW5z
Zm9ybUZlZWRiYWNrQnVmZmVyQ291bnQoKTsKKyAgICBjb25zdCBUcmFuc2Zvcm1GZWVkYmFjayAq
dHJhbnNmb3JtRmVlZGJhY2sgPSBjb250ZXh0LT5nZXRTdGF0ZSgpLmdldEN1cnJlbnRUcmFuc2Zv
cm1GZWVkYmFjaygpOworICAgIGZvciAoc2l6ZV90IHByb2dyYW1YZmJJbmRleCA9IDA7IHByb2dy
YW1YZmJJbmRleCA8IHByb2dyYW1YZmJDb3VudDsgKytwcm9ncmFtWGZiSW5kZXgpCisgICAgewor
ICAgICAgICBjb25zdCBPZmZzZXRCaW5kaW5nUG9pbnRlcjxCdWZmZXI+ICZidWZmZXIgPQorICAg
ICAgICAgICAgdHJhbnNmb3JtRmVlZGJhY2stPmdldEluZGV4ZWRCdWZmZXIocHJvZ3JhbVhmYklu
ZGV4KTsKKyAgICAgICAgaWYgKCFidWZmZXIuZ2V0KCkpCisgICAgICAgIHsKKyAgICAgICAgICAg
IHJldHVybiBmYWxzZTsKKyAgICAgICAgfQorICAgIH0KKworICAgIHJldHVybiB0cnVlOworfQog
fSAgLy8gbmFtZXNwYWNlIGdsCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9z
cmMvbGliQU5HTEUvdmFsaWRhdGlvbkVTLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
bGliQU5HTEUvdmFsaWRhdGlvbkVTLmgKaW5kZXggYTMzZjgzMGMyOGYxOTc1MjhiNmIxOTJhYjdh
NmNiYzY4MmZkOTc5YS4uNTE5MWIwOTY0ZGExN2Y5MzM2MDUyZTMzNmU1ZjhkNmQ0M2MxMTZlMSAx
MDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3ZhbGlkYXRp
b25FUy5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS92YWxpZGF0
aW9uRVMuaApAQCAtOTE0LDYgKzkxNCw5IEBAIGJvb2wgVmFsaWRhdGVTYW1wbGVNYXNraUJhc2Uo
Y29uc3QgQ29udGV4dCAqY29udGV4dCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1
aW50IG1hc2tOdW1iZXIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMYml0ZmllbGQg
bWFzayk7CiAKK2Jvb2wgVmFsaWRhdGVQcm9ncmFtRXhlY3V0YWJsZVhGQkJ1ZmZlcnNQcmVzZW50
KGNvbnN0IENvbnRleHQgKmNvbnRleHQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBjb25zdCBQcm9ncmFtRXhlY3V0YWJsZSAqcHJvZ3JhbUV4ZWN1dGFi
bGUpOworCiAvLyBXZSBzaG91bGQgY2hlY2sgd2l0aCBLaHJvbm9zIGlmIHJldHVybmluZyBJTlZB
TElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiBpcyBPSyB3aGVuIHF1ZXJ5aW5nCiAvLyBpbXBsZW1l
bnRhdGlvbiBmb3JtYXQgaW5mbyBmb3IgaW5jb21wbGV0ZSBmcmFtZWJ1ZmZlcnMuIEl0IHNlZW1z
IGxpa2UgdGhlc2UgcXVlcmllcyBhcmUKIC8vIGluY29uZ3J1ZW50IHdpdGggdGhlIG90aGVyIGVy
cm9ycy4KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS92
YWxpZGF0aW9uRVMyLmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS92
YWxpZGF0aW9uRVMyLmNwcAppbmRleCBjNGQxNzY0NmUyMzhiMjMyMDlkOWYzODZiZDRjZWFlNDFk
YzNlMWQ5Li42NDc3NTUzZjNiNjYzOTg2ODQyODVjNjEwMGQ3YWU2OWQ3Y2RmZTZiIDEwMDY0NAot
LS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvdmFsaWRhdGlvbkVTMi5j
cHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3ZhbGlkYXRpb25F
UzIuY3BwCkBAIC0zODExLDYgKzM4MTEsMzMgQEAgc3RhdGljIGJvb2wgVmFsaWRCbGVuZEVxdWF0
aW9uTW9kZShjb25zdCBDb250ZXh0ICpjb250ZXh0LCBHTGVudW0gbW9kZSkKICAgICB9CiB9CiAK
K3N0YXRpYyBib29sIFZhbGlkQWR2YW5jZWRCbGVuZEVxdWF0aW9uTW9kZShjb25zdCBDb250ZXh0
ICpjb250ZXh0LCBHTGVudW0gbW9kZSkKK3sKKyAgICBzd2l0Y2ggKG1vZGUpCisgICAgeworICAg
ICAgICBjYXNlIEdMX01VTFRJUExZX0tIUjoKKyAgICAgICAgY2FzZSBHTF9TQ1JFRU5fS0hSOgor
ICAgICAgICBjYXNlIEdMX09WRVJMQVlfS0hSOgorICAgICAgICBjYXNlIEdMX0RBUktFTl9LSFI6
CisgICAgICAgIGNhc2UgR0xfTElHSFRFTl9LSFI6CisgICAgICAgIGNhc2UgR0xfQ09MT1JET0RH
RV9LSFI6CisgICAgICAgIGNhc2UgR0xfQ09MT1JCVVJOX0tIUjoKKyAgICAgICAgY2FzZSBHTF9I
QVJETElHSFRfS0hSOgorICAgICAgICBjYXNlIEdMX1NPRlRMSUdIVF9LSFI6CisgICAgICAgIGNh
c2UgR0xfRElGRkVSRU5DRV9LSFI6CisgICAgICAgIGNhc2UgR0xfRVhDTFVTSU9OX0tIUjoKKyAg
ICAgICAgY2FzZSBHTF9IU0xfSFVFX0tIUjoKKyAgICAgICAgY2FzZSBHTF9IU0xfU0FUVVJBVElP
Tl9LSFI6CisgICAgICAgIGNhc2UgR0xfSFNMX0NPTE9SX0tIUjoKKyAgICAgICAgY2FzZSBHTF9I
U0xfTFVNSU5PU0lUWV9LSFI6CisgICAgICAgICAgICByZXR1cm4gY29udGV4dC0+Z2V0Q2xpZW50
VmVyc2lvbigpID49IEVTXzNfMiB8fAorICAgICAgICAgICAgICAgICAgIGNvbnRleHQtPmdldEV4
dGVuc2lvbnMoKS5ibGVuZEVxdWF0aW9uQWR2YW5jZWRLSFI7CisKKyAgICAgICAgZGVmYXVsdDoK
KyAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9Cit9CisKIGJvb2wgVmFsaWRhdGVCbGVu
ZENvbG9yKGNvbnN0IENvbnRleHQgKmNvbnRleHQsCiAgICAgICAgICAgICAgICAgICAgICAgICBh
bmdsZTo6RW50cnlQb2ludCBlbnRyeVBvaW50LAogICAgICAgICAgICAgICAgICAgICAgICAgR0xm
bG9hdCByZWQsCkBAIC0zODIzLDcgKzM4NTAsNyBAQCBib29sIFZhbGlkYXRlQmxlbmRDb2xvcihj
b25zdCBDb250ZXh0ICpjb250ZXh0LAogCiBib29sIFZhbGlkYXRlQmxlbmRFcXVhdGlvbihjb25z
dCBDb250ZXh0ICpjb250ZXh0LCBhbmdsZTo6RW50cnlQb2ludCBlbnRyeVBvaW50LCBHTGVudW0g
bW9kZSkKIHsKLSAgICBpZiAoIVZhbGlkQmxlbmRFcXVhdGlvbk1vZGUoY29udGV4dCwgbW9kZSkp
CisgICAgaWYgKCFWYWxpZEJsZW5kRXF1YXRpb25Nb2RlKGNvbnRleHQsIG1vZGUpICYmICFWYWxp
ZEFkdmFuY2VkQmxlbmRFcXVhdGlvbk1vZGUoY29udGV4dCwgbW9kZSkpCiAgICAgewogICAgICAg
ICBjb250ZXh0LT52YWxpZGF0aW9uRXJyb3IoZW50cnlQb2ludCwgR0xfSU5WQUxJRF9FTlVNLCBr
SW52YWxpZEJsZW5kRXF1YXRpb24pOwogICAgICAgICByZXR1cm4gZmFsc2U7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvdmFsaWRhdGlvbkVTMy5jcHAg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvdmFsaWRhdGlvbkVTMy5jcHAK
aW5kZXggMzExOTk3ODhlMzgwODE5NWI5YmE0OTc3NzIyM2VkNmY3Zjg0Yzg1MC4uZmY5MmU1ZjY3
ZWU3ZWM0YTY2MzBkNzJlN2E0YTQ1ZGQ1ZGVhMTE4OSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3ZhbGlkYXRpb25FUzMuY3BwCisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS92YWxpZGF0aW9uRVMzLmNwcApAQCAtMjk3OCwx
NyArMjk3OCwxMCBAQCBib29sIFZhbGlkYXRlQmVnaW5UcmFuc2Zvcm1GZWVkYmFjayhjb25zdCBD
b250ZXh0ICpjb250ZXh0LAogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgfQogCi0gICAgc2l6
ZV90IHByb2dyYW1YZmJDb3VudCA9IHByb2dyYW1FeGVjdXRhYmxlLT5nZXRUcmFuc2Zvcm1GZWVk
YmFja0J1ZmZlckNvdW50KCk7Ci0gICAgZm9yIChzaXplX3QgcHJvZ3JhbVhmYkluZGV4ID0gMDsg
cHJvZ3JhbVhmYkluZGV4IDwgcHJvZ3JhbVhmYkNvdW50OyArK3Byb2dyYW1YZmJJbmRleCkKKyAg
ICBpZiAoIVZhbGlkYXRlUHJvZ3JhbUV4ZWN1dGFibGVYRkJCdWZmZXJzUHJlc2VudChjb250ZXh0
LCBwcm9ncmFtRXhlY3V0YWJsZSkpCiAgICAgewotICAgICAgICBjb25zdCBPZmZzZXRCaW5kaW5n
UG9pbnRlcjxCdWZmZXI+ICZidWZmZXIgPQotICAgICAgICAgICAgdHJhbnNmb3JtRmVlZGJhY2st
PmdldEluZGV4ZWRCdWZmZXIocHJvZ3JhbVhmYkluZGV4KTsKLSAgICAgICAgaWYgKCFidWZmZXIu
Z2V0KCkpCi0gICAgICAgIHsKLSAgICAgICAgICAgIGNvbnRleHQtPnZhbGlkYXRpb25FcnJvcihl
bnRyeVBvaW50LCBHTF9JTlZBTElEX09QRVJBVElPTiwKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBrVHJhbnNmb3JtRmVlZGJhY2tCdWZmZXJNaXNzaW5nKTsKLSAgICAgICAg
ICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAgfQorICAgICAgICBjb250ZXh0LT52YWxpZGF0aW9u
RXJyb3IoZW50cnlQb2ludCwgR0xfSU5WQUxJRF9PUEVSQVRJT04sIGtUcmFuc2Zvcm1GZWVkYmFj
a0J1ZmZlck1pc3NpbmcpOworICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgfQogCiAgICAgcmV0
dXJuIHRydWU7CkBAIC0zNzkyLDcgKzM3ODUsNyBAQCBib29sIFZhbGlkYXRlRHJhd0VsZW1lbnRz
SW5zdGFuY2VkQmFzZVZlcnRleEJhc2VJbnN0YW5jZUFOR0xFKGNvbnN0IENvbnRleHQgKmNvbgog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBHTHNpemVpIGNvdW50LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBEcmF3RWxlbWVudHNUeXBlIHR5cGUsCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNv
bnN0IEdMdm9pZCAqaW5kaWNlcywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBpbnN0YW5jZUNvdW50cywKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
R0xzaXplaSBpbnN0YW5jZUNvdW50LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTGludCBiYXNlVmVydGV4LAogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVp
bnQgYmFzZUluc3RhbmNlKQogewpAQCAtMzgwMiw3ICszNzk1LDcgQEAgYm9vbCBWYWxpZGF0ZURy
YXdFbGVtZW50c0luc3RhbmNlZEJhc2VWZXJ0ZXhCYXNlSW5zdGFuY2VBTkdMRShjb25zdCBDb250
ZXh0ICpjb24KICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIH0KICAgICBpZiAoIVZhbGlkYXRl
RHJhd0VsZW1lbnRzSW5zdGFuY2VkQmFzZShjb250ZXh0LCBlbnRyeVBvaW50LCBtb2RlLCBjb3Vu
dCwgdHlwZSwgaW5kaWNlcywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBpbnN0YW5jZUNvdW50cykpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgaW5zdGFuY2VDb3VudCkpCiAgICAgewogICAgICAgICByZXR1cm4gZmFsc2U7CiAg
ICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3Zh
bGlkYXRpb25FU0VYVC5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUv
dmFsaWRhdGlvbkVTRVhULmNwcAppbmRleCBkMTQ4ZDZmNjY5NjkzMmRiZThmNTBhYTFkMmVmYmVi
ZDNjODkzZTRlLi40MTliNGI1YjIyMzI5YzAzOTY0NWMyNjcwOGNmYjE4YWYxNDU1YTVlIDEwMDY0
NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvdmFsaWRhdGlvbkVT
RVhULmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvdmFsaWRh
dGlvbkVTRVhULmNwcApAQCAtNjIyLDggKzYyMiwxNCBAQCBib29sIFZhbGlkYXRlRHJhd1Jhbmdl
RWxlbWVudHNCYXNlVmVydGV4T0VTKGNvbnN0IENvbnRleHQgKmNvbnRleHQsCiAvLyBHTF9LSFJf
YmxlbmRfZXF1YXRpb25fYWR2YW5jZWQKIGJvb2wgVmFsaWRhdGVCbGVuZEJhcnJpZXJLSFIoY29u
c3QgQ29udGV4dCAqY29udGV4dCwgYW5nbGU6OkVudHJ5UG9pbnQgZW50cnlQb2ludCkKIHsKLSAg
ICBjb250ZXh0LT52YWxpZGF0aW9uRXJyb3IoZW50cnlQb2ludCwgR0xfSU5WQUxJRF9PUEVSQVRJ
T04sIGtFeHRlbnNpb25Ob3RFbmFibGVkKTsKLSAgICByZXR1cm4gZmFsc2U7CisgICAgY29uc3Qg
RXh0ZW5zaW9ucyAmZXh0ZW5zaW9ucyA9IGNvbnRleHQtPmdldEV4dGVuc2lvbnMoKTsKKworICAg
IGlmICghZXh0ZW5zaW9ucy5ibGVuZEVxdWF0aW9uQWR2YW5jZWRLSFIpCisgICAgeworICAgICAg
ICBjb250ZXh0LT52YWxpZGF0aW9uRXJyb3IoZW50cnlQb2ludCwgR0xfSU5WQUxJRF9FTlVNLCBr
QWR2YW5jZWRCbGVuZEV4dGVuc2lvbk5vdEVuYWJsZWQpOworICAgIH0KKworICAgIHJldHVybiB0
cnVlOwogfQogCiBib29sIFZhbGlkYXRlQmxlbmRFcXVhdGlvblNlcGFyYXRlaUVYVChjb25zdCBD
b250ZXh0ICpjb250ZXh0LApAQCAtMjY4Niw0ICsyNjkyLDI0OSBAQCBib29sIFZhbGlkYXRlR2V0
RnJhbWVidWZmZXJQYXJhbWV0ZXJpdk1FU0EoY29uc3QgQ29udGV4dCAqY29udGV4dCwKICAgICBy
ZXR1cm4gVmFsaWRhdGVHZXRGcmFtZWJ1ZmZlclBhcmFtZXRlcml2QmFzZShjb250ZXh0LCBlbnRy
eVBvaW50LCB0YXJnZXQsIHBuYW1lLCBwYXJhbXMpOwogfQogCisvLyBHTF9BTURfcGVyZm9ybWFu
Y2VfbW9uaXRvcgorYm9vbCBWYWxpZGF0ZUJlZ2luUGVyZk1vbml0b3JBTUQoY29uc3QgQ29udGV4
dCAqY29udGV4dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFuZ2xlOjpFbnRy
eVBvaW50IGVudHJ5UG9pbnQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVp
bnQgbW9uaXRvcikKK3sKKyAgICBpZiAoIWNvbnRleHQtPmdldEV4dGVuc2lvbnMoKS5wZXJmb3Jt
YW5jZU1vbml0b3JBTUQpCisgICAgeworICAgICAgICBjb250ZXh0LT52YWxpZGF0aW9uRXJyb3Io
ZW50cnlQb2ludCwgR0xfSU5WQUxJRF9PUEVSQVRJT04sIGtFeHRlbnNpb25Ob3RFbmFibGVkKTsK
KyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KKworICAgIFVOSU1QTEVNRU5URUQoKTsKKyAg
ICByZXR1cm4gZmFsc2U7Cit9CisKK2Jvb2wgVmFsaWRhdGVEZWxldGVQZXJmTW9uaXRvcnNBTUQo
Y29uc3QgQ29udGV4dCAqY29udGV4dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgYW5nbGU6OkVudHJ5UG9pbnQgZW50cnlQb2ludCwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgR0xzaXplaSBuLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBjb25zdCBHTHVpbnQgKm1vbml0b3JzKQoreworICAgIGlmICghY29udGV4dC0+Z2V0RXh0ZW5z
aW9ucygpLnBlcmZvcm1hbmNlTW9uaXRvckFNRCkKKyAgICB7CisgICAgICAgIGNvbnRleHQtPnZh
bGlkYXRpb25FcnJvcihlbnRyeVBvaW50LCBHTF9JTlZBTElEX09QRVJBVElPTiwga0V4dGVuc2lv
bk5vdEVuYWJsZWQpOworICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorCisgICAgVU5JTVBM
RU1FTlRFRCgpOworICAgIHJldHVybiBmYWxzZTsKK30KKworYm9vbCBWYWxpZGF0ZUVuZFBlcmZN
b25pdG9yQU1EKGNvbnN0IENvbnRleHQgKmNvbnRleHQsIGFuZ2xlOjpFbnRyeVBvaW50IGVudHJ5
UG9pbnQsIEdMdWludCBtb25pdG9yKQoreworICAgIGlmICghY29udGV4dC0+Z2V0RXh0ZW5zaW9u
cygpLnBlcmZvcm1hbmNlTW9uaXRvckFNRCkKKyAgICB7CisgICAgICAgIGNvbnRleHQtPnZhbGlk
YXRpb25FcnJvcihlbnRyeVBvaW50LCBHTF9JTlZBTElEX09QRVJBVElPTiwga0V4dGVuc2lvbk5v
dEVuYWJsZWQpOworICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorCisgICAgVU5JTVBMRU1F
TlRFRCgpOworICAgIHJldHVybiBmYWxzZTsKK30KKworYm9vbCBWYWxpZGF0ZUdlblBlcmZNb25p
dG9yc0FNRChjb25zdCBDb250ZXh0ICpjb250ZXh0LAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBhbmdsZTo6RW50cnlQb2ludCBlbnRyeVBvaW50LAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBHTHNpemVpIG4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGNvbnN0IEdMdWludCAqbW9uaXRvcnMpCit7CisgICAgaWYgKCFjb250ZXh0LT5nZXRFeHRlbnNp
b25zKCkucGVyZm9ybWFuY2VNb25pdG9yQU1EKQorICAgIHsKKyAgICAgICAgY29udGV4dC0+dmFs
aWRhdGlvbkVycm9yKGVudHJ5UG9pbnQsIEdMX0lOVkFMSURfT1BFUkFUSU9OLCBrRXh0ZW5zaW9u
Tm90RW5hYmxlZCk7CisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisKKyAgICBVTklNUExF
TUVOVEVEKCk7CisgICAgcmV0dXJuIGZhbHNlOworfQorCitib29sIFZhbGlkYXRlR2V0UGVyZk1v
bml0b3JDb3VudGVyRGF0YUFNRChjb25zdCBDb250ZXh0ICpjb250ZXh0LAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYW5nbGU6OkVudHJ5UG9pbnQgZW50cnlQb2lu
dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMdWludCBtb25p
dG9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xlbnVtIHBu
YW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBk
YXRhU2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0
IEdMdWludCAqZGF0YSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGNvbnN0IEdMaW50ICpieXRlc1dyaXR0ZW4pCit7CisgICAgaWYgKCFjb250ZXh0LT5nZXRFeHRl
bnNpb25zKCkucGVyZm9ybWFuY2VNb25pdG9yQU1EKQorICAgIHsKKyAgICAgICAgY29udGV4dC0+
dmFsaWRhdGlvbkVycm9yKGVudHJ5UG9pbnQsIEdMX0lOVkFMSURfT1BFUkFUSU9OLCBrRXh0ZW5z
aW9uTm90RW5hYmxlZCk7CisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisKKyAgICBpZiAo
bW9uaXRvciAhPSAwKQorICAgIHsKKyAgICAgICAgY29udGV4dC0+dmFsaWRhdGlvbkVycm9yKGVu
dHJ5UG9pbnQsIEdMX0lOVkFMSURfVkFMVUUsIGtJbnZhbGlkUGVyZk1vbml0b3IpOworICAgICAg
ICByZXR1cm4gZmFsc2U7CisgICAgfQorCisgICAgc3dpdGNoIChwbmFtZSkKKyAgICB7CisgICAg
ICAgIGNhc2UgR0xfUEVSRk1PTl9SRVNVTFRfQVZBSUxBQkxFX0FNRDoKKyAgICAgICAgY2FzZSBH
TF9QRVJGTU9OX1JFU1VMVF9TSVpFX0FNRDoKKyAgICAgICAgY2FzZSBHTF9QRVJGTU9OX1JFU1VM
VF9BTUQ6CisgICAgICAgICAgICBicmVhazsKKworICAgICAgICBkZWZhdWx0OgorICAgICAgICAg
ICAgY29udGV4dC0+dmFsaWRhdGlvbkVycm9yKGVudHJ5UG9pbnQsIEdMX0lOVkFMSURfRU5VTSwg
a0ludmFsaWRQbmFtZSk7CisgICAgICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorCisgICAg
cmV0dXJuIHRydWU7Cit9CisKK2Jvb2wgVmFsaWRhdGVHZXRQZXJmTW9uaXRvckNvdW50ZXJJbmZv
QU1EKGNvbnN0IENvbnRleHQgKmNvbnRleHQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBhbmdsZTo6RW50cnlQb2ludCBlbnRyeVBvaW50LAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50IGdyb3VwLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50IGNvdW50ZXIsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTGVudW0gcG5hbWUsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB2b2lkICpkYXRhKQoreworICAg
IGlmICghY29udGV4dC0+Z2V0RXh0ZW5zaW9ucygpLnBlcmZvcm1hbmNlTW9uaXRvckFNRCkKKyAg
ICB7CisgICAgICAgIGNvbnRleHQtPnZhbGlkYXRpb25FcnJvcihlbnRyeVBvaW50LCBHTF9JTlZB
TElEX09QRVJBVElPTiwga0V4dGVuc2lvbk5vdEVuYWJsZWQpOworICAgICAgICByZXR1cm4gZmFs
c2U7CisgICAgfQorCisgICAgY29uc3QgYW5nbGU6OlBlcmZNb25pdG9yQ291bnRlckdyb3VwcyAm
Z3JvdXBzID0gY29udGV4dC0+Z2V0UGVyZk1vbml0b3JDb3VudGVyR3JvdXBzKCk7CisKKyAgICBp
ZiAoZ3JvdXAgPj0gZ3JvdXBzLnNpemUoKSkKKyAgICB7CisgICAgICAgIGNvbnRleHQtPnZhbGlk
YXRpb25FcnJvcihlbnRyeVBvaW50LCBHTF9JTlZBTElEX1ZBTFVFLCBrSW52YWxpZFBlcmZNb25p
dG9yR3JvdXApOworICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorCisgICAgaWYgKGNvdW50
ZXIgPj0gZ3JvdXBzW2dyb3VwXS5jb3VudGVycy5zaXplKCkpCisgICAgeworICAgICAgICBjb250
ZXh0LT52YWxpZGF0aW9uRXJyb3IoZW50cnlQb2ludCwgR0xfSU5WQUxJRF9WQUxVRSwga0ludmFs
aWRQZXJmTW9uaXRvckNvdW50ZXIpOworICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorCisg
ICAgc3dpdGNoIChwbmFtZSkKKyAgICB7CisgICAgICAgIGNhc2UgR0xfQ09VTlRFUl9UWVBFX0FN
RDoKKyAgICAgICAgY2FzZSBHTF9DT1VOVEVSX1JBTkdFX0FNRDoKKyAgICAgICAgICAgIGJyZWFr
OworCisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICBjb250ZXh0LT52YWxpZGF0aW9uRXJy
b3IoZW50cnlQb2ludCwgR0xfSU5WQUxJRF9FTlVNLCBrSW52YWxpZFBuYW1lKTsKKyAgICAgICAg
ICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisKKyAgICByZXR1cm4gdHJ1ZTsKK30KKworYm9vbCBW
YWxpZGF0ZUdldFBlcmZNb25pdG9yQ291bnRlclN0cmluZ0FNRChjb25zdCBDb250ZXh0ICpjb250
ZXh0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbmdsZTo6
RW50cnlQb2ludCBlbnRyeVBvaW50LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBHTHVpbnQgZ3JvdXAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIEdMdWludCBjb3VudGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBHTHNpemVpIGJ1ZlNpemUsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IEdMc2l6ZWkgKmxlbmd0aCwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgR0xjaGFyICpjb3VudGVyU3Ry
aW5nKQoreworICAgIGlmICghY29udGV4dC0+Z2V0RXh0ZW5zaW9ucygpLnBlcmZvcm1hbmNlTW9u
aXRvckFNRCkKKyAgICB7CisgICAgICAgIGNvbnRleHQtPnZhbGlkYXRpb25FcnJvcihlbnRyeVBv
aW50LCBHTF9JTlZBTElEX09QRVJBVElPTiwga0V4dGVuc2lvbk5vdEVuYWJsZWQpOworICAgICAg
ICByZXR1cm4gZmFsc2U7CisgICAgfQorCisgICAgY29uc3QgYW5nbGU6OlBlcmZNb25pdG9yQ291
bnRlckdyb3VwcyAmZ3JvdXBzID0gY29udGV4dC0+Z2V0UGVyZk1vbml0b3JDb3VudGVyR3JvdXBz
KCk7CisKKyAgICBpZiAoZ3JvdXAgPj0gZ3JvdXBzLnNpemUoKSkKKyAgICB7CisgICAgICAgIGNv
bnRleHQtPnZhbGlkYXRpb25FcnJvcihlbnRyeVBvaW50LCBHTF9JTlZBTElEX1ZBTFVFLCBrSW52
YWxpZFBlcmZNb25pdG9yR3JvdXApOworICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorCisg
ICAgaWYgKGNvdW50ZXIgPj0gZ3JvdXBzW2dyb3VwXS5jb3VudGVycy5zaXplKCkpCisgICAgewor
ICAgICAgICBjb250ZXh0LT52YWxpZGF0aW9uRXJyb3IoZW50cnlQb2ludCwgR0xfSU5WQUxJRF9W
QUxVRSwga0ludmFsaWRQZXJmTW9uaXRvckNvdW50ZXIpOworICAgICAgICByZXR1cm4gZmFsc2U7
CisgICAgfQorCisgICAgcmV0dXJuIHRydWU7Cit9CisKK2Jvb2wgVmFsaWRhdGVHZXRQZXJmTW9u
aXRvckNvdW50ZXJzQU1EKGNvbnN0IENvbnRleHQgKmNvbnRleHQsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBhbmdsZTo6RW50cnlQb2ludCBlbnRyeVBvaW50LAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50IGdyb3VwLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgR0xpbnQgKm51bUNvdW50ZXJz
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgR0xpbnQgKm1h
eEFjdGl2ZUNvdW50ZXJzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
R0xzaXplaSBjb3VudGVyU2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGNvbnN0IEdMdWludCAqY291bnRlcnMpCit7CisgICAgaWYgKCFjb250ZXh0LT5nZXRFeHRl
bnNpb25zKCkucGVyZm9ybWFuY2VNb25pdG9yQU1EKQorICAgIHsKKyAgICAgICAgY29udGV4dC0+
dmFsaWRhdGlvbkVycm9yKGVudHJ5UG9pbnQsIEdMX0lOVkFMSURfT1BFUkFUSU9OLCBrRXh0ZW5z
aW9uTm90RW5hYmxlZCk7CisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisKKyAgICBjb25z
dCBhbmdsZTo6UGVyZk1vbml0b3JDb3VudGVyR3JvdXBzICZncm91cHMgPSBjb250ZXh0LT5nZXRQ
ZXJmTW9uaXRvckNvdW50ZXJHcm91cHMoKTsKKworICAgIGlmIChncm91cCA+PSBncm91cHMuc2l6
ZSgpKQorICAgIHsKKyAgICAgICAgY29udGV4dC0+dmFsaWRhdGlvbkVycm9yKGVudHJ5UG9pbnQs
IEdMX0lOVkFMSURfVkFMVUUsIGtJbnZhbGlkUGVyZk1vbml0b3JHcm91cCk7CisgICAgICAgIHJl
dHVybiBmYWxzZTsKKyAgICB9CisKKyAgICByZXR1cm4gdHJ1ZTsKK30KKworYm9vbCBWYWxpZGF0
ZUdldFBlcmZNb25pdG9yR3JvdXBTdHJpbmdBTUQoY29uc3QgQ29udGV4dCAqY29udGV4dCwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFuZ2xlOjpFbnRyeVBvaW50
IGVudHJ5UG9pbnQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBH
THVpbnQgZ3JvdXAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBH
THNpemVpIGJ1ZlNpemUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBjb25zdCBHTHNpemVpICpsZW5ndGgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBjb25zdCBHTGNoYXIgKmdyb3VwU3RyaW5nKQoreworICAgIGlmICghY29udGV4
dC0+Z2V0RXh0ZW5zaW9ucygpLnBlcmZvcm1hbmNlTW9uaXRvckFNRCkKKyAgICB7CisgICAgICAg
IGNvbnRleHQtPnZhbGlkYXRpb25FcnJvcihlbnRyeVBvaW50LCBHTF9JTlZBTElEX09QRVJBVElP
Tiwga0V4dGVuc2lvbk5vdEVuYWJsZWQpOworICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQor
CisgICAgY29uc3QgYW5nbGU6OlBlcmZNb25pdG9yQ291bnRlckdyb3VwcyAmZ3JvdXBzID0gY29u
dGV4dC0+Z2V0UGVyZk1vbml0b3JDb3VudGVyR3JvdXBzKCk7CisKKyAgICBpZiAoZ3JvdXAgPj0g
Z3JvdXBzLnNpemUoKSkKKyAgICB7CisgICAgICAgIGNvbnRleHQtPnZhbGlkYXRpb25FcnJvcihl
bnRyeVBvaW50LCBHTF9JTlZBTElEX1ZBTFVFLCBrSW52YWxpZFBlcmZNb25pdG9yR3JvdXApOwor
ICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorCisgICAgcmV0dXJuIHRydWU7Cit9CisKK2Jv
b2wgVmFsaWRhdGVHZXRQZXJmTW9uaXRvckdyb3Vwc0FNRChjb25zdCBDb250ZXh0ICpjb250ZXh0
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFuZ2xlOjpFbnRyeVBvaW50
IGVudHJ5UG9pbnQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qg
R0xpbnQgKm51bUdyb3VwcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBH
THNpemVpIGdyb3Vwc1NpemUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Y29uc3QgR0x1aW50ICpncm91cHMpCit7CisgICAgaWYgKCFjb250ZXh0LT5nZXRFeHRlbnNpb25z
KCkucGVyZm9ybWFuY2VNb25pdG9yQU1EKQorICAgIHsKKyAgICAgICAgY29udGV4dC0+dmFsaWRh
dGlvbkVycm9yKGVudHJ5UG9pbnQsIEdMX0lOVkFMSURfT1BFUkFUSU9OLCBrRXh0ZW5zaW9uTm90
RW5hYmxlZCk7CisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisKKyAgICByZXR1cm4gdHJ1
ZTsKK30KKworYm9vbCBWYWxpZGF0ZVNlbGVjdFBlcmZNb25pdG9yQ291bnRlcnNBTUQoY29uc3Qg
Q29udGV4dCAqY29udGV4dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGFuZ2xlOjpFbnRyeVBvaW50IGVudHJ5UG9pbnQsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBHTHVpbnQgbW9uaXRvciwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIEdMYm9vbGVhbiBlbmFibGUsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVpbnQgZ3JvdXAsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBHTGludCBudW1Db3VudGVycywKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IEdMdWludCAqY291bnRlckxpc3Qp
Cit7CisgICAgaWYgKCFjb250ZXh0LT5nZXRFeHRlbnNpb25zKCkucGVyZm9ybWFuY2VNb25pdG9y
QU1EKQorICAgIHsKKyAgICAgICAgY29udGV4dC0+dmFsaWRhdGlvbkVycm9yKGVudHJ5UG9pbnQs
IEdMX0lOVkFMSURfT1BFUkFUSU9OLCBrRXh0ZW5zaW9uTm90RW5hYmxlZCk7CisgICAgICAgIHJl
dHVybiBmYWxzZTsKKyAgICB9CisKKyAgICBVTklNUExFTUVOVEVEKCk7CisgICAgcmV0dXJuIGZh
bHNlOworfQogfSAgLy8gbmFtZXNwYWNlIGdsCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvbGliQU5HTEUvdmFsaWRhdGlvbkVTRVhUX2F1dG9nZW4uaCBiL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS92YWxpZGF0aW9uRVNFWFRfYXV0b2dlbi5oCmlu
ZGV4IDViNDZlM2Y3Y2RjN2M5YmZhODI5ZDFkMWE3YmY4YTUzYzQ2ZTk1MDUuLmI2YzZiMmJmNmFm
MjhlMjIyNmJkZDA0ZDQ2ZWVmOTEzYmJiZGFkNGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL3NyYy9saWJBTkdMRS92YWxpZGF0aW9uRVNFWFRfYXV0b2dlbi5oCisrKyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS92YWxpZGF0aW9uRVNFWFRfYXV0b2dl
bi5oCkBAIC0xOCw2ICsxOCw2NyBAQCBuYW1lc3BhY2UgZ2wKIHsKIGNsYXNzIENvbnRleHQ7CiAK
Ky8vIEdMX0FNRF9wZXJmb3JtYW5jZV9tb25pdG9yCitib29sIFZhbGlkYXRlQmVnaW5QZXJmTW9u
aXRvckFNRChjb25zdCBDb250ZXh0ICpjb250ZXh0LAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgYW5nbGU6OkVudHJ5UG9pbnQgZW50cnlQb2ludCwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIEdMdWludCBtb25pdG9yKTsKK2Jvb2wgVmFsaWRhdGVEZWxldGVQZXJm
TW9uaXRvcnNBTUQoY29uc3QgQ29udGV4dCAqY29udGV4dCwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgYW5nbGU6OkVudHJ5UG9pbnQgZW50cnlQb2ludCwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBuLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBjb25zdCBHTHVpbnQgKm1vbml0b3JzKTsKK2Jvb2wgVmFsaWRhdGVFbmRQ
ZXJmTW9uaXRvckFNRChjb25zdCBDb250ZXh0ICpjb250ZXh0LAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGFuZ2xlOjpFbnRyeVBvaW50IGVudHJ5UG9pbnQsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgR0x1aW50IG1vbml0b3IpOworYm9vbCBWYWxpZGF0ZUdlblBlcmZN
b25pdG9yc0FNRChjb25zdCBDb250ZXh0ICpjb250ZXh0LAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBhbmdsZTo6RW50cnlQb2ludCBlbnRyeVBvaW50LAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBHTHNpemVpIG4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGNvbnN0IEdMdWludCAqbW9uaXRvcnMpOworYm9vbCBWYWxpZGF0ZUdldFBlcmZNb25pdG9y
Q291bnRlckRhdGFBTUQoY29uc3QgQ29udGV4dCAqY29udGV4dCwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGFuZ2xlOjpFbnRyeVBvaW50IGVudHJ5UG9pbnQsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVpbnQgbW9uaXRvciwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMZW51bSBwbmFtZSwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgZGF0YVNp
emUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBHTHVp
bnQgKmRhdGEsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25z
dCBHTGludCAqYnl0ZXNXcml0dGVuKTsKK2Jvb2wgVmFsaWRhdGVHZXRQZXJmTW9uaXRvckNvdW50
ZXJJbmZvQU1EKGNvbnN0IENvbnRleHQgKmNvbnRleHQsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBhbmdsZTo6RW50cnlQb2ludCBlbnRyeVBvaW50LAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50IGdyb3VwLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50IGNvdW50ZXIsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTGVudW0gcG5hbWUsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB2b2lkICpkYXRhKTsK
K2Jvb2wgVmFsaWRhdGVHZXRQZXJmTW9uaXRvckNvdW50ZXJTdHJpbmdBTUQoY29uc3QgQ29udGV4
dCAqY29udGV4dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
YW5nbGU6OkVudHJ5UG9pbnQgZW50cnlQb2ludCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgR0x1aW50IGdyb3VwLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBHTHVpbnQgY291bnRlciwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBidWZTaXplLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBHTHNpemVpICpsZW5ndGgsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IEdMY2hhciAqY291
bnRlclN0cmluZyk7Citib29sIFZhbGlkYXRlR2V0UGVyZk1vbml0b3JDb3VudGVyc0FNRChjb25z
dCBDb250ZXh0ICpjb250ZXh0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgYW5nbGU6OkVudHJ5UG9pbnQgZW50cnlQb2ludCwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIEdMdWludCBncm91cCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGNvbnN0IEdMaW50ICpudW1Db3VudGVycywKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IEdMaW50ICptYXhBY3RpdmVDb3VudGVycywKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgY291bnRlclNpemUs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBHTHVpbnQgKmNv
dW50ZXJzKTsKK2Jvb2wgVmFsaWRhdGVHZXRQZXJmTW9uaXRvckdyb3VwU3RyaW5nQU1EKGNvbnN0
IENvbnRleHQgKmNvbnRleHQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBhbmdsZTo6RW50cnlQb2ludCBlbnRyeVBvaW50LAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgR0x1aW50IGdyb3VwLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBidWZTaXplLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgR0xzaXplaSAqbGVuZ3RoLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgR0xjaGFyICpncm91cFN0cmlu
Zyk7Citib29sIFZhbGlkYXRlR2V0UGVyZk1vbml0b3JHcm91cHNBTUQoY29uc3QgQ29udGV4dCAq
Y29udGV4dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbmdsZTo6RW50
cnlQb2ludCBlbnRyeVBvaW50LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGNvbnN0IEdMaW50ICpudW1Hcm91cHMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgR0xzaXplaSBncm91cHNTaXplLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGNvbnN0IEdMdWludCAqZ3JvdXBzKTsKK2Jvb2wgVmFsaWRhdGVTZWxlY3RQZXJmTW9u
aXRvckNvdW50ZXJzQU1EKGNvbnN0IENvbnRleHQgKmNvbnRleHQsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBhbmdsZTo6RW50cnlQb2ludCBlbnRyeVBvaW50LAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50IG1vbml0b3Is
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTGJvb2xlYW4gZW5h
YmxlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50IGdy
b3VwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xpbnQgbnVt
Q291bnRlcnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25z
dCBHTHVpbnQgKmNvdW50ZXJMaXN0KTsKKwogLy8gR0xfQU5EUk9JRF9leHRlbnNpb25fcGFja19l
czMxYQogCiAvLyBHTF9BTkdMRV9iYXNlX3ZlcnRleF9iYXNlX2luc3RhbmNlCkBAIC0zNCw3ICs5
NSw3IEBAIGJvb2wgVmFsaWRhdGVEcmF3RWxlbWVudHNJbnN0YW5jZWRCYXNlVmVydGV4QmFzZUlu
c3RhbmNlQU5HTEUoY29uc3QgQ29udGV4dCAqY29uCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgY291bnQsCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IERyYXdFbGVtZW50c1R5cGUgdHlwZVBhY2tlZCwKICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgR0x2b2lkICppbmRpY2Vz
LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBHTHNpemVpIGluc3RhbmNlQ291bnRzLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHNpemVpIGluc3RhbmNlQ291
bnQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIEdMaW50IGJhc2VWZXJ0ZXgsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMdWludCBiYXNlSW5zdGFuY2UpOwog
Ym9vbCBWYWxpZGF0ZU11bHRpRHJhd0FycmF5c0luc3RhbmNlZEJhc2VJbnN0YW5jZUFOR0xFKGNv
bnN0IENvbnRleHQgKmNvbnRleHQsCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zcmMvbGliRUdML2VnbF9sb2FkZXJfYXV0b2dlbi5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9zcmMvbGliRUdML2VnbF9sb2FkZXJfYXV0b2dlbi5jcHAKaW5kZXggNzZhMjg2Nzc5NWFj
MmZhYTYwZWVhNWY1MTVlZGQ0Nzc2MmVhNGNmNy4uNzFhYjY5ZDRiN2Q0MTY3NmQxNGYwZTViOWNj
Y2Q1NTI1NjY5Yjc0ZSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xp
YkVHTC9lZ2xfbG9hZGVyX2F1dG9nZW4uY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy9saWJFR0wvZWdsX2xvYWRlcl9hdXRvZ2VuLmNwcApAQCAtNjgsNiArNjgsNyBAQCBQRk5F
R0xDUkVBVEVERVZJQ0VBTkdMRVBST0MgbF9FR0xfQ3JlYXRlRGV2aWNlQU5HTEU7CiBQRk5FR0xS
RUxFQVNFREVWSUNFQU5HTEVQUk9DIGxfRUdMX1JlbGVhc2VEZXZpY2VBTkdMRTsKIFBGTkVHTFFV
RVJZRElTUExBWUFUVFJJQkFOR0xFUFJPQyBsX0VHTF9RdWVyeURpc3BsYXlBdHRyaWJBTkdMRTsK
IFBGTkVHTFFVRVJZU1RSSU5HSUFOR0xFUFJPQyBsX0VHTF9RdWVyeVN0cmluZ2lBTkdMRTsKK1BG
TkVHTEZPUkNFR1BVU1dJVENIQU5HTEVQUk9DIGxfRUdMX0ZvcmNlR1BVU3dpdGNoQU5HTEU7CiBQ
Rk5FR0xIQU5ETEVHUFVTV0lUQ0hBTkdMRVBST0MgbF9FR0xfSGFuZGxlR1BVU3dpdGNoQU5HTEU7
CiBQRk5FR0xSRUFDUVVJUkVISUdIUE9XRVJHUFVBTkdMRVBST0MgbF9FR0xfUmVhY3F1aXJlSGln
aFBvd2VyR1BVQU5HTEU7CiBQRk5FR0xSRUxFQVNFSElHSFBPV0VSR1BVQU5HTEVQUk9DIGxfRUdM
X1JlbGVhc2VIaWdoUG93ZXJHUFVBTkdMRTsKQEAgLTg2LDYgKzg3LDggQEAgUEZORUdMR0VUU1lO
Q1ZBTFVFU0NIUk9NSVVNUFJPQyBsX0VHTF9HZXRTeW5jVmFsdWVzQ0hST01JVU07CiBQRk5FR0xR
VUVSWURFVklDRUFUVFJJQkVYVFBST0MgbF9FR0xfUXVlcnlEZXZpY2VBdHRyaWJFWFQ7CiBQRk5F
R0xRVUVSWURFVklDRVNUUklOR0VYVFBST0MgbF9FR0xfUXVlcnlEZXZpY2VTdHJpbmdFWFQ7CiBQ
Rk5FR0xRVUVSWURJU1BMQVlBVFRSSUJFWFRQUk9DIGxfRUdMX1F1ZXJ5RGlzcGxheUF0dHJpYkVY
VDsKK1BGTkVHTFFVRVJZRE1BQlVGRk9STUFUU0VYVFBST0MgbF9FR0xfUXVlcnlEbWFCdWZGb3Jt
YXRzRVhUOworUEZORUdMUVVFUllETUFCVUZNT0RJRklFUlNFWFRQUk9DIGxfRUdMX1F1ZXJ5RG1h
QnVmTW9kaWZpZXJzRVhUOwogUEZORUdMQ1JFQVRFUExBVEZPUk1QSVhNQVBTVVJGQUNFRVhUUFJP
QyBsX0VHTF9DcmVhdGVQbGF0Zm9ybVBpeG1hcFN1cmZhY2VFWFQ7CiBQRk5FR0xDUkVBVEVQTEFU
Rk9STVdJTkRPV1NVUkZBQ0VFWFRQUk9DIGxfRUdMX0NyZWF0ZVBsYXRmb3JtV2luZG93U3VyZmFj
ZUVYVDsKIFBGTkVHTEdFVFBMQVRGT1JNRElTUExBWUVYVFBST0MgbF9FR0xfR2V0UGxhdGZvcm1E
aXNwbGF5RVhUOwpAQCAtMjExLDYgKzIxNCw4IEBAIHZvaWQgTG9hZEVHTF9FR0woTG9hZFByb2Mg
bG9hZFByb2MpCiAgICAgICAgIGxvYWRQcm9jKCJFR0xfUXVlcnlEaXNwbGF5QXR0cmliQU5HTEUi
KSk7CiAgICAgbF9FR0xfUXVlcnlTdHJpbmdpQU5HTEUgPQogICAgICAgICByZWludGVycHJldF9j
YXN0PFBGTkVHTFFVRVJZU1RSSU5HSUFOR0xFUFJPQz4obG9hZFByb2MoIkVHTF9RdWVyeVN0cmlu
Z2lBTkdMRSIpKTsKKyAgICBsX0VHTF9Gb3JjZUdQVVN3aXRjaEFOR0xFID0KKyAgICAgICAgcmVp
bnRlcnByZXRfY2FzdDxQRk5FR0xGT1JDRUdQVVNXSVRDSEFOR0xFUFJPQz4obG9hZFByb2MoIkVH
TF9Gb3JjZUdQVVN3aXRjaEFOR0xFIikpOwogICAgIGxfRUdMX0hhbmRsZUdQVVN3aXRjaEFOR0xF
ID0KICAgICAgICAgcmVpbnRlcnByZXRfY2FzdDxQRk5FR0xIQU5ETEVHUFVTV0lUQ0hBTkdMRVBS
T0M+KGxvYWRQcm9jKCJFR0xfSGFuZGxlR1BVU3dpdGNoQU5HTEUiKSk7CiAgICAgbF9FR0xfUmVh
Y3F1aXJlSGlnaFBvd2VyR1BVQU5HTEUgPSByZWludGVycHJldF9jYXN0PFBGTkVHTFJFQUNRVUlS
RUhJR0hQT1dFUkdQVUFOR0xFUFJPQz4oCkBAIC0yNDksNiArMjU0LDEwIEBAIHZvaWQgTG9hZEVH
TF9FR0woTG9hZFByb2MgbG9hZFByb2MpCiAgICAgICAgIHJlaW50ZXJwcmV0X2Nhc3Q8UEZORUdM
UVVFUllERVZJQ0VTVFJJTkdFWFRQUk9DPihsb2FkUHJvYygiRUdMX1F1ZXJ5RGV2aWNlU3RyaW5n
RVhUIikpOwogICAgIGxfRUdMX1F1ZXJ5RGlzcGxheUF0dHJpYkVYVCA9CiAgICAgICAgIHJlaW50
ZXJwcmV0X2Nhc3Q8UEZORUdMUVVFUllESVNQTEFZQVRUUklCRVhUUFJPQz4obG9hZFByb2MoIkVH
TF9RdWVyeURpc3BsYXlBdHRyaWJFWFQiKSk7CisgICAgbF9FR0xfUXVlcnlEbWFCdWZGb3JtYXRz
RVhUID0KKyAgICAgICAgcmVpbnRlcnByZXRfY2FzdDxQRk5FR0xRVUVSWURNQUJVRkZPUk1BVFNF
WFRQUk9DPihsb2FkUHJvYygiRUdMX1F1ZXJ5RG1hQnVmRm9ybWF0c0VYVCIpKTsKKyAgICBsX0VH
TF9RdWVyeURtYUJ1Zk1vZGlmaWVyc0VYVCA9IHJlaW50ZXJwcmV0X2Nhc3Q8UEZORUdMUVVFUllE
TUFCVUZNT0RJRklFUlNFWFRQUk9DPigKKyAgICAgICAgbG9hZFByb2MoIkVHTF9RdWVyeURtYUJ1
Zk1vZGlmaWVyc0VYVCIpKTsKICAgICBsX0VHTF9DcmVhdGVQbGF0Zm9ybVBpeG1hcFN1cmZhY2VF
WFQgPQogICAgICAgICByZWludGVycHJldF9jYXN0PFBGTkVHTENSRUFURVBMQVRGT1JNUElYTUFQ
U1VSRkFDRUVYVFBST0M+KAogICAgICAgICAgICAgbG9hZFByb2MoIkVHTF9DcmVhdGVQbGF0Zm9y
bVBpeG1hcFN1cmZhY2VFWFQiKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zcmMvbGliRUdML2VnbF9sb2FkZXJfYXV0b2dlbi5oIGIvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvc3JjL2xpYkVHTC9lZ2xfbG9hZGVyX2F1dG9nZW4uaAppbmRleCA1MzY1Y2Q3MTY4ZjJjZWQ2
OGE1YTZmMWNkNDE4NTJkMzg1ZGNjNmJiLi45ZDE5ZDVkYjhjNGQ1MTA1MzdiZWU5OTE3YWYyNTg0
ZjdlYjMyMDliIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliRUdM
L2VnbF9sb2FkZXJfYXV0b2dlbi5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9s
aWJFR0wvZWdsX2xvYWRlcl9hdXRvZ2VuLmgKQEAgLTczLDYgKzczLDcgQEAKICNkZWZpbmUgRUdM
X1JlbGVhc2VEZXZpY2VBTkdMRSBsX0VHTF9SZWxlYXNlRGV2aWNlQU5HTEUKICNkZWZpbmUgRUdM
X1F1ZXJ5RGlzcGxheUF0dHJpYkFOR0xFIGxfRUdMX1F1ZXJ5RGlzcGxheUF0dHJpYkFOR0xFCiAj
ZGVmaW5lIEVHTF9RdWVyeVN0cmluZ2lBTkdMRSBsX0VHTF9RdWVyeVN0cmluZ2lBTkdMRQorI2Rl
ZmluZSBFR0xfRm9yY2VHUFVTd2l0Y2hBTkdMRSBsX0VHTF9Gb3JjZUdQVVN3aXRjaEFOR0xFCiAj
ZGVmaW5lIEVHTF9IYW5kbGVHUFVTd2l0Y2hBTkdMRSBsX0VHTF9IYW5kbGVHUFVTd2l0Y2hBTkdM
RQogI2RlZmluZSBFR0xfUmVhY3F1aXJlSGlnaFBvd2VyR1BVQU5HTEUgbF9FR0xfUmVhY3F1aXJl
SGlnaFBvd2VyR1BVQU5HTEUKICNkZWZpbmUgRUdMX1JlbGVhc2VIaWdoUG93ZXJHUFVBTkdMRSBs
X0VHTF9SZWxlYXNlSGlnaFBvd2VyR1BVQU5HTEUKQEAgLTkxLDYgKzkyLDggQEAKICNkZWZpbmUg
RUdMX1F1ZXJ5RGV2aWNlQXR0cmliRVhUIGxfRUdMX1F1ZXJ5RGV2aWNlQXR0cmliRVhUCiAjZGVm
aW5lIEVHTF9RdWVyeURldmljZVN0cmluZ0VYVCBsX0VHTF9RdWVyeURldmljZVN0cmluZ0VYVAog
I2RlZmluZSBFR0xfUXVlcnlEaXNwbGF5QXR0cmliRVhUIGxfRUdMX1F1ZXJ5RGlzcGxheUF0dHJp
YkVYVAorI2RlZmluZSBFR0xfUXVlcnlEbWFCdWZGb3JtYXRzRVhUIGxfRUdMX1F1ZXJ5RG1hQnVm
Rm9ybWF0c0VYVAorI2RlZmluZSBFR0xfUXVlcnlEbWFCdWZNb2RpZmllcnNFWFQgbF9FR0xfUXVl
cnlEbWFCdWZNb2RpZmllcnNFWFQKICNkZWZpbmUgRUdMX0NyZWF0ZVBsYXRmb3JtUGl4bWFwU3Vy
ZmFjZUVYVCBsX0VHTF9DcmVhdGVQbGF0Zm9ybVBpeG1hcFN1cmZhY2VFWFQKICNkZWZpbmUgRUdM
X0NyZWF0ZVBsYXRmb3JtV2luZG93U3VyZmFjZUVYVCBsX0VHTF9DcmVhdGVQbGF0Zm9ybVdpbmRv
d1N1cmZhY2VFWFQKICNkZWZpbmUgRUdMX0dldFBsYXRmb3JtRGlzcGxheUVYVCBsX0VHTF9HZXRQ
bGF0Zm9ybURpc3BsYXlFWFQKQEAgLTE4MSw2ICsxODQsNyBAQCBBTkdMRV9OT19FWFBPUlQgZXh0
ZXJuIFBGTkVHTENSRUFURURFVklDRUFOR0xFUFJPQyBsX0VHTF9DcmVhdGVEZXZpY2VBTkdMRTsK
IEFOR0xFX05PX0VYUE9SVCBleHRlcm4gUEZORUdMUkVMRUFTRURFVklDRUFOR0xFUFJPQyBsX0VH
TF9SZWxlYXNlRGV2aWNlQU5HTEU7CiBBTkdMRV9OT19FWFBPUlQgZXh0ZXJuIFBGTkVHTFFVRVJZ
RElTUExBWUFUVFJJQkFOR0xFUFJPQyBsX0VHTF9RdWVyeURpc3BsYXlBdHRyaWJBTkdMRTsKIEFO
R0xFX05PX0VYUE9SVCBleHRlcm4gUEZORUdMUVVFUllTVFJJTkdJQU5HTEVQUk9DIGxfRUdMX1F1
ZXJ5U3RyaW5naUFOR0xFOworQU5HTEVfTk9fRVhQT1JUIGV4dGVybiBQRk5FR0xGT1JDRUdQVVNX
SVRDSEFOR0xFUFJPQyBsX0VHTF9Gb3JjZUdQVVN3aXRjaEFOR0xFOwogQU5HTEVfTk9fRVhQT1JU
IGV4dGVybiBQRk5FR0xIQU5ETEVHUFVTV0lUQ0hBTkdMRVBST0MgbF9FR0xfSGFuZGxlR1BVU3dp
dGNoQU5HTEU7CiBBTkdMRV9OT19FWFBPUlQgZXh0ZXJuIFBGTkVHTFJFQUNRVUlSRUhJR0hQT1dF
UkdQVUFOR0xFUFJPQyBsX0VHTF9SZWFjcXVpcmVIaWdoUG93ZXJHUFVBTkdMRTsKIEFOR0xFX05P
X0VYUE9SVCBleHRlcm4gUEZORUdMUkVMRUFTRUhJR0hQT1dFUkdQVUFOR0xFUFJPQyBsX0VHTF9S
ZWxlYXNlSGlnaFBvd2VyR1BVQU5HTEU7CkBAIC0yMDEsNiArMjA1LDggQEAgQU5HTEVfTk9fRVhQ
T1JUIGV4dGVybiBQRk5FR0xHRVRTWU5DVkFMVUVTQ0hST01JVU1QUk9DIGxfRUdMX0dldFN5bmNW
YWx1ZXNDSFJPTUkKIEFOR0xFX05PX0VYUE9SVCBleHRlcm4gUEZORUdMUVVFUllERVZJQ0VBVFRS
SUJFWFRQUk9DIGxfRUdMX1F1ZXJ5RGV2aWNlQXR0cmliRVhUOwogQU5HTEVfTk9fRVhQT1JUIGV4
dGVybiBQRk5FR0xRVUVSWURFVklDRVNUUklOR0VYVFBST0MgbF9FR0xfUXVlcnlEZXZpY2VTdHJp
bmdFWFQ7CiBBTkdMRV9OT19FWFBPUlQgZXh0ZXJuIFBGTkVHTFFVRVJZRElTUExBWUFUVFJJQkVY
VFBST0MgbF9FR0xfUXVlcnlEaXNwbGF5QXR0cmliRVhUOworQU5HTEVfTk9fRVhQT1JUIGV4dGVy
biBQRk5FR0xRVUVSWURNQUJVRkZPUk1BVFNFWFRQUk9DIGxfRUdMX1F1ZXJ5RG1hQnVmRm9ybWF0
c0VYVDsKK0FOR0xFX05PX0VYUE9SVCBleHRlcm4gUEZORUdMUVVFUllETUFCVUZNT0RJRklFUlNF
WFRQUk9DIGxfRUdMX1F1ZXJ5RG1hQnVmTW9kaWZpZXJzRVhUOwogQU5HTEVfTk9fRVhQT1JUIGV4
dGVybiBQRk5FR0xDUkVBVEVQTEFURk9STVBJWE1BUFNVUkZBQ0VFWFRQUk9DCiAgICAgbF9FR0xf
Q3JlYXRlUGxhdGZvcm1QaXhtYXBTdXJmYWNlRVhUOwogQU5HTEVfTk9fRVhQT1JUIGV4dGVybiBQ
Rk5FR0xDUkVBVEVQTEFURk9STVdJTkRPV1NVUkZBQ0VFWFRQUk9DCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliRUdML2xpYkVHTF9hdXRvZ2VuLmNwcCBiL1NvdXJj
ZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJFR0wvbGliRUdMX2F1dG9nZW4uY3BwCmluZGV4IGI0
ZmUwMzFhYjU5MGZiYzRiMTg3YzU0NWI5N2ExMWQ0ZTBhMTNjNGUuLmQ5MTc3YmVjYjU1YTY5OTc2
MmQ4NDg1M2ZjNDUzMmVjNzM3NWE4M2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FO
R0xFL3NyYy9saWJFR0wvbGliRUdMX2F1dG9nZW4uY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3NyYy9saWJFR0wvbGliRUdMX2F1dG9nZW4uY3BwCkBAIC01MTQsNiArNTE0LDEyIEBA
IHZvaWQgRUdMQVBJRU5UUlkgZWdsSGFuZGxlR1BVU3dpdGNoQU5HTEUoRUdMRGlzcGxheSBkcHkp
CiAgICAgcmV0dXJuIEVHTF9IYW5kbGVHUFVTd2l0Y2hBTkdMRShkcHkpOwogfQogCit2b2lkIEVH
TEFQSUVOVFJZIGVnbEZvcmNlR1BVU3dpdGNoQU5HTEUoRUdMRGlzcGxheSBkcHksIEVHTGludCBn
cHVJREhpZ2gsIEVHTGludCBncHVJRExvdykKK3sKKyAgICBFbnN1cmVFR0xMb2FkZWQoKTsKKyAg
ICByZXR1cm4gRUdMX0ZvcmNlR1BVU3dpdGNoQU5HTEUoZHB5LCBncHVJREhpZ2gsIGdwdUlETG93
KTsKK30KKwogLy8gRUdMX0FOR0xFX3ByZXBhcmVfc3dhcF9idWZmZXJzCiBFR0xCb29sZWFuIEVH
TEFQSUVOVFJZIGVnbFByZXBhcmVTd2FwQnVmZmVyc0FOR0xFKEVHTERpc3BsYXkgZHB5LCBFR0xT
dXJmYWNlIHN1cmZhY2UpCiB7CkBAIC02NDQsNiArNjUwLDI4IEBAIEVHTEJvb2xlYW4gRUdMQVBJ
RU5UUlkgZWdsUXVlcnlEaXNwbGF5QXR0cmliRVhUKEVHTERpc3BsYXkgZHB5LCBFR0xpbnQgYXR0
cmlidXRlCiAgICAgcmV0dXJuIEVHTF9RdWVyeURpc3BsYXlBdHRyaWJFWFQoZHB5LCBhdHRyaWJ1
dGUsIHZhbHVlKTsKIH0KIAorLy8gRUdMX0VYVF9pbWFnZV9kbWFfYnVmX2ltcG9ydF9tb2RpZmll
cnMKK0VHTEJvb2xlYW4gRUdMQVBJRU5UUlkgZWdsUXVlcnlEbWFCdWZGb3JtYXRzRVhUKEVHTERp
c3BsYXkgZHB5LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgRUdMaW50IG1heF9mb3JtYXRzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgRUdMaW50ICpmb3JtYXRzLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgRUdMaW50ICpudW1fZm9ybWF0cykKK3sKKyAgICBFbnN1
cmVFR0xMb2FkZWQoKTsKKyAgICByZXR1cm4gRUdMX1F1ZXJ5RG1hQnVmRm9ybWF0c0VYVChkcHks
IG1heF9mb3JtYXRzLCBmb3JtYXRzLCBudW1fZm9ybWF0cyk7Cit9CisKK0VHTEJvb2xlYW4gRUdM
QVBJRU5UUlkgZWdsUXVlcnlEbWFCdWZNb2RpZmllcnNFWFQoRUdMRGlzcGxheSBkcHksCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVHTGludCBmb3Jt
YXQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVH
TGludCBtYXhfbW9kaWZpZXJzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBFR0x1aW50NjRLSFIgKm1vZGlmaWVycywKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRUdMQm9vbGVhbiAqZXh0ZXJuYWxfb25s
eSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRUdM
aW50ICpudW1fbW9kaWZpZXJzKQoreworICAgIEVuc3VyZUVHTExvYWRlZCgpOworICAgIHJldHVy
biBFR0xfUXVlcnlEbWFCdWZNb2RpZmllcnNFWFQoZHB5LCBmb3JtYXQsIG1heF9tb2RpZmllcnMs
IG1vZGlmaWVycywgZXh0ZXJuYWxfb25seSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIG51bV9tb2RpZmllcnMpOworfQorCiAvLyBFR0xfRVhUX3BsYXRmb3JtX2Jhc2UK
IEVHTFN1cmZhY2UgRUdMQVBJRU5UUlkgZWdsQ3JlYXRlUGxhdGZvcm1QaXhtYXBTdXJmYWNlRVhU
KEVHTERpc3BsYXkgZHB5LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgRUdMQ29uZmlnIGNvbmZpZywKZGlmZiAtLWdpdCBhL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3NyYy9saWJFR0wvbGliRUdMX2F1dG9nZW4uZGVmIGIvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL2xpYkVHTC9saWJFR0xfYXV0b2dlbi5kZWYKaW5kZXggMzk0Yzkz
ZDE1OWNiMTAwODNkNjg2ZGJmNTlkMDRjMTIxY2MyMjBiOC4uYWRkMzFmMTZiNTNmYTQxZTVmNjYw
MjVjOTM0OTcxYjFiODFmMjA2MSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUv
c3JjL2xpYkVHTC9saWJFR0xfYXV0b2dlbi5kZWYKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvc3JjL2xpYkVHTC9saWJFR0xfYXV0b2dlbi5kZWYKQEAgLTkyLDYgKzkyLDcgQEAgRVhQT1JU
UwogICAgIGVnbFF1ZXJ5U3RyaW5naUFOR0xFCiAKICAgICA7IEVHTF9BTkdMRV9wb3dlcl9wcmVm
ZXJlbmNlCisgICAgZWdsRm9yY2VHUFVTd2l0Y2hBTkdMRQogICAgIGVnbEhhbmRsZUdQVVN3aXRj
aEFOR0xFCiAgICAgZWdsUmVhY3F1aXJlSGlnaFBvd2VyR1BVQU5HTEUKICAgICBlZ2xSZWxlYXNl
SGlnaFBvd2VyR1BVQU5HTEUKQEAgLTEyOSw2ICsxMzAsMTAgQEAgRVhQT1JUUwogICAgIGVnbFF1
ZXJ5RGV2aWNlU3RyaW5nRVhUCiAgICAgZWdsUXVlcnlEaXNwbGF5QXR0cmliRVhUCiAKKyAgICA7
IEVHTF9FWFRfaW1hZ2VfZG1hX2J1Zl9pbXBvcnRfbW9kaWZpZXJzCisgICAgZWdsUXVlcnlEbWFC
dWZGb3JtYXRzRVhUCisgICAgZWdsUXVlcnlEbWFCdWZNb2RpZmllcnNFWFQKKwogICAgIDsgRUdM
X0VYVF9wbGF0Zm9ybV9iYXNlCiAgICAgZWdsQ3JlYXRlUGxhdGZvcm1QaXhtYXBTdXJmYWNlRVhU
CiAgICAgZWdsQ3JlYXRlUGxhdGZvcm1XaW5kb3dTdXJmYWNlRVhUCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliR0xFU3YyL2VnbF9leHRfc3R1YnMuY3BwIGIvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkdMRVN2Mi9lZ2xfZXh0X3N0dWJzLmNwcAppbmRl
eCA1NDlhYmJiOGI2NTllY2QzNTVlNDlmMjRkNDY4Y2U0NWQ2ZWJmOGU3Li4wYmQ3ZjBmZWE4OTE5
ZTQ3ZTkwYWY2YjY3Mzg1MjJlZTUyZjM3N2UwIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvbGliR0xFU3YyL2VnbF9leHRfc3R1YnMuY3BwCisrKyBiL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3NyYy9saWJHTEVTdjIvZWdsX2V4dF9zdHVicy5jcHAKQEAgLTE1LDYgKzE1
LDcgQEAKICNpbmNsdWRlICJsaWJBTkdMRS9UaHJlYWQuaCIKICNpbmNsdWRlICJsaWJBTkdMRS9l
bnRyeV9wb2ludHNfdXRpbHMuaCIKICNpbmNsdWRlICJsaWJBTkdMRS9xdWVyeXV0aWxzLmgiCisj
aW5jbHVkZSAibGliQU5HTEUvcmVuZGVyZXIvRGlzcGxheUltcGwuaCIKICNpbmNsdWRlICJsaWJB
TkdMRS92YWxpZGF0aW9uRUdMLmgiCiAjaW5jbHVkZSAibGliQU5HTEUvdmFsaWRhdGlvbkVHTF9h
dXRvZ2VuLmgiCiAjaW5jbHVkZSAibGliR0xFU3YyL2dsb2JhbF9zdGF0ZS5oIgpAQCAtODgsOSAr
ODksMjEgQEAgRUdMU3VyZmFjZSBDcmVhdGVQbGF0Zm9ybVdpbmRvd1N1cmZhY2VFWFQoVGhyZWFk
ICp0aHJlYWQsCiB7CiAgICAgQU5HTEVfRUdMX1RSWV9SRVRVUk4odGhyZWFkLCBkaXNwbGF5LT5w
cmVwYXJlRm9yQ2FsbCgpLCAiZWdsQ3JlYXRlUGxhdGZvcm1XaW5kb3dTdXJmYWNlRVhUIiwKICAg
ICAgICAgICAgICAgICAgICAgICAgICBHZXREaXNwbGF5SWZWYWxpZChkaXNwbGF5KSwgRUdMX05P
X1NVUkZBQ0UpOwotICAgIHRocmVhZC0+c2V0RXJyb3IoRUdMX0JBRF9ESVNQTEFZLCAiZWdsQ3Jl
YXRlUGxhdGZvcm1XaW5kb3dTdXJmYWNlRVhUIiwKLSAgICAgICAgICAgICAgICAgICAgIEdldERp
c3BsYXlJZlZhbGlkKGRpc3BsYXkpLCAiQ3JlYXRlUGxhdGZvcm1XaW5kb3dTdXJmYWNlRVhUIHVu
aW1wbGVtZW50ZWQuIik7Ci0gICAgcmV0dXJuIEVHTF9OT19TVVJGQUNFOworICAgIFN1cmZhY2Ug
KnN1cmZhY2UgPSBudWxscHRyOworCisgICAgLy8gSW4gWDExLCBlZ2xDcmVhdGVQbGF0Zm9ybVdp
bmRvd1N1cmZhY2VFWFQgZXhwZWN0cyB0aGUgbmF0aXZlX3dpbmRvdyBhcmd1bWVudCB0byBiZSBh
IHBvaW50ZXIKKyAgICAvLyB0byBhIFdpbmRvdyB3aGlsZSB0aGUgRUdMTmF0aXZlV2luZG93VHlw
ZSBmb3IgWDExIGlzIGl0cyBhY3R1YWwgdmFsdWUuCisgICAgLy8gaHR0cHM6Ly93d3cua2hyb25v
cy5vcmcvcmVnaXN0cnkvRUdML2V4dGVuc2lvbnMvS0hSL0VHTF9LSFJfcGxhdGZvcm1feDExLnR4
dAorICAgIHZvaWQgKmFjdHVhbE5hdGl2ZVdpbmRvdyA9IGRpc3BsYXktPmdldEltcGxlbWVudGF0
aW9uKCktPmlzWDExKCkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPyAqcmVp
bnRlcnByZXRfY2FzdDx2b2lkICoqPihuYXRpdmVfd2luZG93KQorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICA6IG5hdGl2ZV93aW5kb3c7CisgICAgRUdMTmF0aXZlV2luZG93VHlw
ZSBuYXRpdmVXaW5kb3cgPSByZWludGVycHJldF9jYXN0PEVHTE5hdGl2ZVdpbmRvd1R5cGU+KGFj
dHVhbE5hdGl2ZVdpbmRvdyk7CisKKyAgICBBTkdMRV9FR0xfVFJZX1JFVFVSTigKKyAgICAgICAg
dGhyZWFkLCBkaXNwbGF5LT5jcmVhdGVXaW5kb3dTdXJmYWNlKGNvbmZpZ1BhY2tlZCwgbmF0aXZl
V2luZG93LCBhdHRyaWJ1dGVzLCAmc3VyZmFjZSksCisgICAgICAgICJlZ2xQbGF0Zm9ybUNyZWF0
ZVdpbmRvd1N1cmZhY2VFWFQiLCBHZXREaXNwbGF5SWZWYWxpZChkaXNwbGF5KSwgRUdMX05PX1NV
UkZBQ0UpOworCisgICAgcmV0dXJuIHN0YXRpY19jYXN0PEVHTFN1cmZhY2U+KHN1cmZhY2UpOwog
fQogCiBFR0xTdHJlYW1LSFIgQ3JlYXRlU3RyZWFtS0hSKFRocmVhZCAqdGhyZWFkLCBEaXNwbGF5
ICpkaXNwbGF5LCBjb25zdCBBdHRyaWJ1dGVNYXAgJmF0dHJpYnV0ZXMpCkBAIC04MTEsNiArODI0
LDE2IEBAIHZvaWQgSGFuZGxlR1BVU3dpdGNoQU5HTEUoVGhyZWFkICp0aHJlYWQsIERpc3BsYXkg
KmRpc3BsYXkpCiAgICAgdGhyZWFkLT5zZXRTdWNjZXNzKCk7CiB9CiAKK3ZvaWQgRm9yY2VHUFVT
d2l0Y2hBTkdMRShUaHJlYWQgKnRocmVhZCwgRGlzcGxheSAqZGlzcGxheSwgRUdMaW50IGdwdUlE
SGlnaCwgRUdMaW50IGdwdUlETG93KQoreworICAgIEFOR0xFX0VHTF9UUlkodGhyZWFkLCBkaXNw
bGF5LT5wcmVwYXJlRm9yQ2FsbCgpLCAiZWdsRm9yY2VHUFVTd2l0Y2hBTkdMRSIsCisgICAgICAg
ICAgICAgICAgICBHZXREaXNwbGF5SWZWYWxpZChkaXNwbGF5KSk7CisgICAgQU5HTEVfRUdMX1RS
WSh0aHJlYWQsIGRpc3BsYXktPmZvcmNlR1BVU3dpdGNoKGdwdUlESGlnaCwgZ3B1SURMb3cpLCAi
ZWdsRm9yY2VHUFVTd2l0Y2hBTkdMRSIsCisgICAgICAgICAgICAgICAgICBHZXREaXNwbGF5SWZW
YWxpZChkaXNwbGF5KSk7CisKKyAgICB0aHJlYWQtPnNldFN1Y2Nlc3MoKTsKK30KKwogRUdMQm9v
bGVhbiBRdWVyeURpc3BsYXlBdHRyaWJBTkdMRShUaHJlYWQgKnRocmVhZCwKICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgRGlzcGxheSAqZGlzcGxheSwKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgRUdMaW50IGF0dHJpYnV0ZSwKQEAgLTg4NCw5ICs5MDcsNDIg
QEAgRUdMQm9vbGVhbiBTZXREYW1hZ2VSZWdpb25LSFIoVGhyZWFkICp0aHJlYWQsCiB7CiAgICAg
QU5HTEVfRUdMX1RSWV9SRVRVUk4odGhyZWFkLCBkaXNwbGF5LT5wcmVwYXJlRm9yQ2FsbCgpLCAi
ZWdsU2V0RGFtYWdlUmVnaW9uS0hSIiwKICAgICAgICAgICAgICAgICAgICAgICAgICBHZXREaXNw
bGF5SWZWYWxpZChkaXNwbGF5KSwgRUdMX0ZBTFNFKTsKKyAgICBzdXJmYWNlLT5zZXREYW1hZ2VS
ZWdpb24ocmVjdHMsIG5fcmVjdHMpOwogCiAgICAgdGhyZWFkLT5zZXRTdWNjZXNzKCk7CiAgICAg
cmV0dXJuIEVHTF9UUlVFOwogfQogCitFR0xCb29sZWFuIFF1ZXJ5RG1hQnVmRm9ybWF0c0VYVChU
aHJlYWQgKnRocmVhZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVnbDo6RGlz
cGxheSAqZGlzcGxheSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVHTGludCBt
YXhfZm9ybWF0cywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVHTGludCAqZm9y
bWF0cywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVHTGludCAqbnVtX2Zvcm1h
dHMpCit7CisgICAgQU5HTEVfRUdMX1RSWV9SRVRVUk4odGhyZWFkLCBkaXNwbGF5LT5wcmVwYXJl
Rm9yQ2FsbCgpLCAiZWdsUXVlcnlEbWFCdWZGb3JtYXRzRVhUIiwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICBHZXREaXNwbGF5SWZWYWxpZChkaXNwbGF5KSwgRUdMX0ZBTFNFKTsKKyAgICBBTkdM
RV9FR0xfVFJZX1JFVFVSTih0aHJlYWQsIGRpc3BsYXktPnF1ZXJ5RG1hQnVmRm9ybWF0cyhtYXhf
Zm9ybWF0cywgZm9ybWF0cywgbnVtX2Zvcm1hdHMpLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICJlZ2xRdWVyeURtYUJ1ZkZvcm1hdHNFWFQiLCBHZXREaXNwbGF5SWZWYWxpZChkaXNwbGF5KSwg
RUdMX0ZBTFNFKTsKKyAgICB0aHJlYWQtPnNldFN1Y2Nlc3MoKTsKKyAgICByZXR1cm4gRUdMX1RS
VUU7Cit9CisKK0VHTEJvb2xlYW4gUXVlcnlEbWFCdWZNb2RpZmllcnNFWFQoVGhyZWFkICp0aHJl
YWQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVnbDo6RGlzcGxheSAqZGlz
cGxheSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRUdMaW50IGZvcm1hdCwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRUdMaW50IG1heF9tb2RpZmllcnMs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVHTHVpbnQ2NEtIUiAqbW9kaWZp
ZXJzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFR0xCb29sZWFuICpleHRl
cm5hbF9vbmx5LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFR0xpbnQgKm51
bV9tb2RpZmllcnMpCit7CisgICAgQU5HTEVfRUdMX1RSWV9SRVRVUk4odGhyZWFkLCBkaXNwbGF5
LT5wcmVwYXJlRm9yQ2FsbCgpLCAiZWdsUXVlcnlEbWFCdWZNb2RpZmllcnNFWFQiLAorICAgICAg
ICAgICAgICAgICAgICAgICAgIEdldERpc3BsYXlJZlZhbGlkKGRpc3BsYXkpLCBFR0xfRkFMU0Up
OworICAgIEFOR0xFX0VHTF9UUllfUkVUVVJOKHRocmVhZCwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICBkaXNwbGF5LT5xdWVyeURtYUJ1Zk1vZGlmaWVycyhmb3JtYXQsIG1heF9tb2RpZmllcnMs
IG1vZGlmaWVycywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBleHRlcm5hbF9vbmx5LCBudW1fbW9kaWZpZXJzKSwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAiZWdsUXVlcnlEbWFCdWZNb2RpZmllcnNFWFQiLCBHZXREaXNwbGF5SWZWYWxp
ZChkaXNwbGF5KSwgRUdMX0ZBTFNFKTsKKyAgICB0aHJlYWQtPnNldFN1Y2Nlc3MoKTsKKyAgICBy
ZXR1cm4gRUdMX1RSVUU7Cit9CisKIH0gIC8vIG5hbWVzcGFjZSBlZ2wKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJHTEVTdjIvZWdsX2V4dF9zdHVic19hdXRvZ2Vu
LmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliR0xFU3YyL2VnbF9leHRfc3R1YnNf
YXV0b2dlbi5oCmluZGV4IDU2MTY5YjMyYzliZTA3N2ZiMWY5NDljYWZkZjhhNDBhMmUxMWIzMjIu
LmUyMzQzMmU0YTMzZGE5MGI3NWIxODRjZTA2Mjg5YjI3YmVkZjRjMWQgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJHTEVTdjIvZWdsX2V4dF9zdHVic19hdXRvZ2Vu
LmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkdMRVN2Mi9lZ2xfZXh0X3N0
dWJzX2F1dG9nZW4uaApAQCAtMTM0LDYgKzEzNCwxOCBAQCBFR0xCb29sZWFuIFF1ZXJ5RGlzcGxh
eUF0dHJpYkVYVChUaHJlYWQgKnRocmVhZCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGVnbDo6RGlzcGxheSAqZHB5UGFja2VkLAogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgRUdMaW50IGF0dHJpYnV0ZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IEVHTEF0dHJpYiAqdmFsdWUpOworRUdMQm9vbGVhbiBRdWVyeURtYUJ1ZkZvcm1hdHNFWFQoVGhy
ZWFkICp0aHJlYWQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlZ2w6OkRpc3Bs
YXkgKmRweVBhY2tlZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVHTGludCBt
YXhfZm9ybWF0cywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVHTGludCAqZm9y
bWF0cywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVHTGludCAqbnVtX2Zvcm1h
dHMpOworRUdMQm9vbGVhbiBRdWVyeURtYUJ1Zk1vZGlmaWVyc0VYVChUaHJlYWQgKnRocmVhZCwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZWdsOjpEaXNwbGF5ICpkcHlQYWNr
ZWQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVHTGludCBmb3JtYXQsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVHTGludCBtYXhfbW9kaWZpZXJzLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFR0x1aW50NjRLSFIgKm1vZGlmaWVy
cywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRUdMQm9vbGVhbiAqZXh0ZXJu
YWxfb25seSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRUdMaW50ICpudW1f
bW9kaWZpZXJzKTsKIEVHTEJvb2xlYW4gUXVlcnlTdHJlYW1LSFIoVGhyZWFkICp0aHJlYWQsCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGVnbDo6RGlzcGxheSAqZHB5UGFja2VkLAogICAgICAg
ICAgICAgICAgICAgICAgICAgICBTdHJlYW0gKnN0cmVhbVBhY2tlZCwKQEAgLTIzNCw2ICsyNDYs
MTAgQEAgRUdMQm9vbGVhbiBQcmVwYXJlU3dhcEJ1ZmZlcnNBTkdMRShFR0xEaXNwbGF5IGRweSwg
RUdMU3VyZmFjZSBzdXJmYWNlKTsKIHZvaWQgUmVsZWFzZUhpZ2hQb3dlckdQVUFOR0xFKFRocmVh
ZCAqdGhyZWFkLCBlZ2w6OkRpc3BsYXkgKmRweVBhY2tlZCwgZ2w6OkNvbnRleHQgKmN0eFBhY2tl
ZCk7CiB2b2lkIFJlYWNxdWlyZUhpZ2hQb3dlckdQVUFOR0xFKFRocmVhZCAqdGhyZWFkLCBlZ2w6
OkRpc3BsYXkgKmRweVBhY2tlZCwgZ2w6OkNvbnRleHQgKmN0eFBhY2tlZCk7CiB2b2lkIEhhbmRs
ZUdQVVN3aXRjaEFOR0xFKFRocmVhZCAqdGhyZWFkLCBlZ2w6OkRpc3BsYXkgKmRweVBhY2tlZCk7
Cit2b2lkIEZvcmNlR1BVU3dpdGNoQU5HTEUoVGhyZWFkICp0aHJlYWQsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgZWdsOjpEaXNwbGF5ICpkcHlQYWNrZWQsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgRUdMaW50IGdwdUlESGlnaCwKKyAgICAgICAgICAgICAgICAgICAgICAgICBFR0xpbnQg
Z3B1SURMb3cpOwogRUdMQm9vbGVhbiBRdWVyeURpc3BsYXlBdHRyaWJBTkdMRShUaHJlYWQgKnRo
cmVhZCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZWdsOjpEaXNwbGF5ICpk
cHlQYWNrZWQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVHTGludCBhdHRy
aWJ1dGUsCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliR0xFU3Yy
L2VudHJ5X3BvaW50c19lZ2xfZXh0X2F1dG9nZW4uY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvc3JjL2xpYkdMRVN2Mi9lbnRyeV9wb2ludHNfZWdsX2V4dF9hdXRvZ2VuLmNwcAppbmRleCBk
YzcxNTE0YzU1YjcyYzNmY2RmMTlmNmJmYjgyZmUwNmZjMGQ0YjlkLi41MDVmYWM3YTUzM2U4MWYw
MTFmY2I1YzUxMjM5NGVhMjdjM2EzY2I4IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9zcmMvbGliR0xFU3YyL2VudHJ5X3BvaW50c19lZ2xfZXh0X2F1dG9nZW4uY3BwCisrKyBi
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJHTEVTdjIvZW50cnlfcG9pbnRzX2VnbF9l
eHRfYXV0b2dlbi5jcHAKQEAgLTM2NCw2ICszNjQsMjMgQEAgdm9pZCBFR0xBUElFTlRSWSBFR0xf
SGFuZGxlR1BVU3dpdGNoQU5HTEUoRUdMRGlzcGxheSBkcHkpCiAgICAgSGFuZGxlR1BVU3dpdGNo
QU5HTEUodGhyZWFkLCBkcHlQYWNrZWQpOwogfQogCit2b2lkIEVHTEFQSUVOVFJZIEVHTF9Gb3Jj
ZUdQVVN3aXRjaEFOR0xFKEVHTERpc3BsYXkgZHB5LCBFR0xpbnQgZ3B1SURIaWdoLCBFR0xpbnQg
Z3B1SURMb3cpCit7CisKKyAgICBBTkdMRV9TQ09QRURfR0xPQkFMX0xPQ0soKTsKKyAgICBFR0xf
RVZFTlQoRm9yY2VHUFVTd2l0Y2hBTkdMRSwgImRweSA9IDB4JTAxNiIgUFJJeFBUUiAiLCBncHVJ
REhpZ2ggPSAlZCwgZ3B1SURMb3cgPSAlZCIsCisgICAgICAgICAgICAgICh1aW50cHRyX3QpZHB5
LCBncHVJREhpZ2gsIGdwdUlETG93KTsKKworICAgIFRocmVhZCAqdGhyZWFkID0gZWdsOjpHZXRD
dXJyZW50VGhyZWFkKCk7CisKKyAgICBlZ2w6OkRpc3BsYXkgKmRweVBhY2tlZCA9IFBhY2tQYXJh
bTxlZ2w6OkRpc3BsYXkgKj4oZHB5KTsKKworICAgIEFOR0xFX0VHTF9WQUxJREFURV9WT0lEKHRo
cmVhZCwgRm9yY2VHUFVTd2l0Y2hBTkdMRSwgR2V0RGlzcGxheUlmVmFsaWQoZHB5UGFja2VkKSwg
ZHB5UGFja2VkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdwdUlESGlnaCwgZ3B1SURM
b3cpOworCisgICAgRm9yY2VHUFVTd2l0Y2hBTkdMRSh0aHJlYWQsIGRweVBhY2tlZCwgZ3B1SURI
aWdoLCBncHVJRExvdyk7Cit9CisKIC8vIEVHTF9BTkdMRV9wcmVwYXJlX3N3YXBfYnVmZmVycwog
RUdMQm9vbGVhbiBFR0xBUElFTlRSWSBFR0xfUHJlcGFyZVN3YXBCdWZmZXJzQU5HTEUoRUdMRGlz
cGxheSBkcHksIEVHTFN1cmZhY2Ugc3VyZmFjZSkKIHsKQEAgLTY4MSw2ICs2OTgsNTUgQEAgRUdM
Qm9vbGVhbiBFR0xBUElFTlRSWSBFR0xfUXVlcnlEaXNwbGF5QXR0cmliRVhUKEVHTERpc3BsYXkg
ZHB5LCBFR0xpbnQgYXR0cmlidXQKICAgICByZXR1cm4gUXVlcnlEaXNwbGF5QXR0cmliRVhUKHRo
cmVhZCwgZHB5UGFja2VkLCBhdHRyaWJ1dGUsIHZhbHVlKTsKIH0KIAorLy8gRUdMX0VYVF9pbWFn
ZV9kbWFfYnVmX2ltcG9ydF9tb2RpZmllcnMKK0VHTEJvb2xlYW4gRUdMQVBJRU5UUlkgRUdMX1F1
ZXJ5RG1hQnVmRm9ybWF0c0VYVChFR0xEaXNwbGF5IGRweSwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFR0xpbnQgbWF4X2Zvcm1hdHMsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRUdMaW50ICpmb3JtYXRz
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVHTGlu
dCAqbnVtX2Zvcm1hdHMpCit7CisKKyAgICBBTkdMRV9TQ09QRURfR0xPQkFMX0xPQ0soKTsKKyAg
ICBFR0xfRVZFTlQoUXVlcnlEbWFCdWZGb3JtYXRzRVhULAorICAgICAgICAgICAgICAiZHB5ID0g
MHglMDE2IiBQUkl4UFRSICIsIG1heF9mb3JtYXRzID0gJWQsIGZvcm1hdHMgPSAweCUwMTYiIFBS
SXhQVFIKKyAgICAgICAgICAgICAgIiwgbnVtX2Zvcm1hdHMgPSAweCUwMTYiIFBSSXhQVFIgIiIs
CisgICAgICAgICAgICAgICh1aW50cHRyX3QpZHB5LCBtYXhfZm9ybWF0cywgKHVpbnRwdHJfdClm
b3JtYXRzLCAodWludHB0cl90KW51bV9mb3JtYXRzKTsKKworICAgIFRocmVhZCAqdGhyZWFkID0g
ZWdsOjpHZXRDdXJyZW50VGhyZWFkKCk7CisKKyAgICBlZ2w6OkRpc3BsYXkgKmRweVBhY2tlZCA9
IFBhY2tQYXJhbTxlZ2w6OkRpc3BsYXkgKj4oZHB5KTsKKworICAgIEFOR0xFX0VHTF9WQUxJREFU
RSh0aHJlYWQsIFF1ZXJ5RG1hQnVmRm9ybWF0c0VYVCwgR2V0RGlzcGxheUlmVmFsaWQoZHB5UGFj
a2VkKSwgRUdMQm9vbGVhbiwKKyAgICAgICAgICAgICAgICAgICAgICAgZHB5UGFja2VkLCBtYXhf
Zm9ybWF0cywgZm9ybWF0cywgbnVtX2Zvcm1hdHMpOworCisgICAgcmV0dXJuIFF1ZXJ5RG1hQnVm
Rm9ybWF0c0VYVCh0aHJlYWQsIGRweVBhY2tlZCwgbWF4X2Zvcm1hdHMsIGZvcm1hdHMsIG51bV9m
b3JtYXRzKTsKK30KKworRUdMQm9vbGVhbiBFR0xBUElFTlRSWSBFR0xfUXVlcnlEbWFCdWZNb2Rp
ZmllcnNFWFQoRUdMRGlzcGxheSBkcHksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBFR0xpbnQgZm9ybWF0LAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRUdMaW50IG1heF9tb2RpZmllcnMsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFR0x1aW50NjRL
SFIgKm1vZGlmaWVycywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIEVHTEJvb2xlYW4gKmV4dGVybmFsX29ubHksCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFR0xpbnQgKm51bV9tb2RpZmllcnMpCit7
CisKKyAgICBBTkdMRV9TQ09QRURfR0xPQkFMX0xPQ0soKTsKKyAgICBFR0xfRVZFTlQoUXVlcnlE
bWFCdWZNb2RpZmllcnNFWFQsCisgICAgICAgICAgICAgICJkcHkgPSAweCUwMTYiIFBSSXhQVFIg
IiwgZm9ybWF0ID0gJWQsIG1heF9tb2RpZmllcnMgPSAlZCwgbW9kaWZpZXJzID0gMHglMDE2IiBQ
Ukl4UFRSCisgICAgICAgICAgICAgICIsIGV4dGVybmFsX29ubHkgPSAweCUwMTYiIFBSSXhQVFIg
IiwgbnVtX21vZGlmaWVycyA9IDB4JTAxNiIgUFJJeFBUUiAiIiwKKyAgICAgICAgICAgICAgKHVp
bnRwdHJfdClkcHksIGZvcm1hdCwgbWF4X21vZGlmaWVycywgKHVpbnRwdHJfdCltb2RpZmllcnMs
ICh1aW50cHRyX3QpZXh0ZXJuYWxfb25seSwKKyAgICAgICAgICAgICAgKHVpbnRwdHJfdCludW1f
bW9kaWZpZXJzKTsKKworICAgIFRocmVhZCAqdGhyZWFkID0gZWdsOjpHZXRDdXJyZW50VGhyZWFk
KCk7CisKKyAgICBlZ2w6OkRpc3BsYXkgKmRweVBhY2tlZCA9IFBhY2tQYXJhbTxlZ2w6OkRpc3Bs
YXkgKj4oZHB5KTsKKworICAgIEFOR0xFX0VHTF9WQUxJREFURSh0aHJlYWQsIFF1ZXJ5RG1hQnVm
TW9kaWZpZXJzRVhULCBHZXREaXNwbGF5SWZWYWxpZChkcHlQYWNrZWQpLCBFR0xCb29sZWFuLAor
ICAgICAgICAgICAgICAgICAgICAgICBkcHlQYWNrZWQsIGZvcm1hdCwgbWF4X21vZGlmaWVycywg
bW9kaWZpZXJzLCBleHRlcm5hbF9vbmx5LCBudW1fbW9kaWZpZXJzKTsKKworICAgIHJldHVybiBR
dWVyeURtYUJ1Zk1vZGlmaWVyc0VYVCh0aHJlYWQsIGRweVBhY2tlZCwgZm9ybWF0LCBtYXhfbW9k
aWZpZXJzLCBtb2RpZmllcnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4
dGVybmFsX29ubHksIG51bV9tb2RpZmllcnMpOworfQorCiAvLyBFR0xfRVhUX3BsYXRmb3JtX2Jh
c2UKIEVHTFN1cmZhY2UgRUdMQVBJRU5UUlkgRUdMX0NyZWF0ZVBsYXRmb3JtUGl4bWFwU3VyZmFj
ZUVYVChFR0xEaXNwbGF5IGRweSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBFR0xDb25maWcgY29uZmlnLApkaWZmIC0tZ2l0IGEvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkdMRVN2Mi9lbnRyeV9wb2ludHNfZWdsX2V4dF9h
dXRvZ2VuLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliR0xFU3YyL2VudHJ5X3Bv
aW50c19lZ2xfZXh0X2F1dG9nZW4uaAppbmRleCAxZTg5OTc1YThmMWRiMTcyZGY1ZTMxNjU4NjNm
YTA1OGU3Y2MxMjcyLi42ZDk2N2YxYjJmNTAyOTgxMmI5MmE1YTFmNjE5ZWM3ZmRhODNmMmE1IDEw
MDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliR0xFU3YyL2VudHJ5X3Bv
aW50c19lZ2xfZXh0X2F1dG9nZW4uaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
bGliR0xFU3YyL2VudHJ5X3BvaW50c19lZ2xfZXh0X2F1dG9nZW4uaApAQCAtNzgsNiArNzgsOSBA
QCBBTkdMRV9FWFBPUlQgRUdMQm9vbGVhbiBFR0xBUElFTlRSWSBFR0xfUXVlcnlEaXNwbGF5QXR0
cmliQU5HTEUoRUdMRGlzcGxheSBkcHksCiBBTkdMRV9FWFBPUlQgdm9pZCBFR0xBUElFTlRSWSBF
R0xfUmVsZWFzZUhpZ2hQb3dlckdQVUFOR0xFKEVHTERpc3BsYXkgZHB5LCBFR0xDb250ZXh0IGN0
eCk7CiBBTkdMRV9FWFBPUlQgdm9pZCBFR0xBUElFTlRSWSBFR0xfUmVhY3F1aXJlSGlnaFBvd2Vy
R1BVQU5HTEUoRUdMRGlzcGxheSBkcHksIEVHTENvbnRleHQgY3R4KTsKIEFOR0xFX0VYUE9SVCB2
b2lkIEVHTEFQSUVOVFJZIEVHTF9IYW5kbGVHUFVTd2l0Y2hBTkdMRShFR0xEaXNwbGF5IGRweSk7
CitBTkdMRV9FWFBPUlQgdm9pZCBFR0xBUElFTlRSWSBFR0xfRm9yY2VHUFVTd2l0Y2hBTkdMRShF
R0xEaXNwbGF5IGRweSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIEVHTGludCBncHVJREhpZ2gsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFR0xpbnQgZ3B1SURMb3cpOwogCiAvLyBFR0xf
QU5HTEVfcHJlcGFyZV9zd2FwX2J1ZmZlcnMKIEFOR0xFX0VYUE9SVCBFR0xCb29sZWFuIEVHTEFQ
SUVOVFJZIEVHTF9QcmVwYXJlU3dhcEJ1ZmZlcnNBTkdMRShFR0xEaXNwbGF5IGRweSwgRUdMU3Vy
ZmFjZSBzdXJmYWNlKTsKQEAgLTE0OSw2ICsxNTIsMTggQEAgQU5HTEVfRVhQT1JUIEVHTEJvb2xl
YW4gRUdMQVBJRU5UUlkgRUdMX1F1ZXJ5RGlzcGxheUF0dHJpYkVYVChFR0xEaXNwbGF5IGRweSwK
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgRUdMaW50IGF0dHJpYnV0ZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRUdMQXR0cmliICp2YWx1ZSk7CiAKKy8vIEVH
TF9FWFRfaW1hZ2VfZG1hX2J1Zl9pbXBvcnRfbW9kaWZpZXJzCitBTkdMRV9FWFBPUlQgRUdMQm9v
bGVhbiBFR0xBUElFTlRSWSBFR0xfUXVlcnlEbWFCdWZGb3JtYXRzRVhUKEVHTERpc3BsYXkgZHB5
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBFR0xpbnQgbWF4X2Zvcm1hdHMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVHTGludCAqZm9ybWF0cywKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
RUdMaW50ICpudW1fZm9ybWF0cyk7CitBTkdMRV9FWFBPUlQgRUdMQm9vbGVhbiBFR0xBUElFTlRS
WSBFR0xfUXVlcnlEbWFCdWZNb2RpZmllcnNFWFQoRUdMRGlzcGxheSBkcHksCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRUdM
aW50IGZvcm1hdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBFR0xpbnQgbWF4X21vZGlmaWVycywKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFR0x1aW50
NjRLSFIgKm1vZGlmaWVycywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBFR0xCb29sZWFuICpleHRlcm5hbF9vbmx5LAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIEVHTGludCAqbnVtX21vZGlmaWVycyk7CisKIC8vIEVHTF9FWFRfcGxhdGZvcm1fYmFzZQog
QU5HTEVfRVhQT1JUIEVHTFN1cmZhY2UgRUdMQVBJRU5UUlkgRUdMX0NyZWF0ZVBsYXRmb3JtUGl4
bWFwU3VyZmFjZUVYVChFR0xEaXNwbGF5IGRweSwKICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRUdMQ29uZmlnIGNv
bmZpZywKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJHTEVTdjIv
ZW50cnlfcG9pbnRzX2dsZXNfZXh0X2F1dG9nZW4uY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvc3JjL2xpYkdMRVN2Mi9lbnRyeV9wb2ludHNfZ2xlc19leHRfYXV0b2dlbi5jcHAKaW5kZXgg
MzgxMGQ5MmNkNThkMjM5YjdkNDYzMGEwMmYxYTM4NWUzMDUwMzAxMi4uYTIzYzRmYmY1YTEwZDlh
NGEzMWQ4MzIzOGRjMzgyMDM3YWFjOWE1MyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc3JjL2xpYkdMRVN2Mi9lbnRyeV9wb2ludHNfZ2xlc19leHRfYXV0b2dlbi5jcHAKKysr
IGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkdMRVN2Mi9lbnRyeV9wb2ludHNfZ2xl
c19leHRfYXV0b2dlbi5jcHAKQEAgLTM2LDYgKzM2LDMyMiBAQCB1c2luZyBuYW1lc3BhY2UgZ2w7
CiAKIGV4dGVybiAiQyIgewogCisvLyBHTF9BTURfcGVyZm9ybWFuY2VfbW9uaXRvcgordm9pZCBH
TF9BUElFTlRSWSBHTF9CZWdpblBlcmZNb25pdG9yQU1EKEdMdWludCBtb25pdG9yKQoreworICAg
IENvbnRleHQgKmNvbnRleHQgPSBHZXRWYWxpZEdsb2JhbENvbnRleHQoKTsKKyAgICBFVkVOVChj
b250ZXh0LCBHTEJlZ2luUGVyZk1vbml0b3JBTUQsICJjb250ZXh0ID0gJWQsIG1vbml0b3IgPSAl
dSIsIENJRChjb250ZXh0KSwgbW9uaXRvcik7CisKKyAgICBpZiAoY29udGV4dCkKKyAgICB7Cisg
ICAgICAgIHN0ZDo6dW5pcXVlX2xvY2s8YW5nbGU6Okdsb2JhbE11dGV4PiBzaGFyZUNvbnRleHRM
b2NrID0gR2V0Q29udGV4dExvY2soY29udGV4dCk7CisgICAgICAgIGJvb2wgaXNDYWxsVmFsaWQg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID0gKGNvbnRleHQtPnNraXBWYWxp
ZGF0aW9uKCkgfHwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBWYWxpZGF0ZUJlZ2luUGVy
Zk1vbml0b3JBTUQoCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRleHQsIGFu
Z2xlOjpFbnRyeVBvaW50OjpHTEJlZ2luUGVyZk1vbml0b3JBTUQsIG1vbml0b3IpKTsKKyAgICAg
ICAgaWYgKGlzQ2FsbFZhbGlkKQorICAgICAgICB7CisgICAgICAgICAgICBjb250ZXh0LT5iZWdp
blBlcmZNb25pdG9yKG1vbml0b3IpOworICAgICAgICB9CisgICAgICAgIEFOR0xFX0NBUFRVUkUo
QmVnaW5QZXJmTW9uaXRvckFNRCwgaXNDYWxsVmFsaWQsIGNvbnRleHQsIG1vbml0b3IpOworICAg
IH0KKyAgICBlbHNlCisgICAgeworICAgICAgICBHZW5lcmF0ZUNvbnRleHRMb3N0RXJyb3JPbkN1
cnJlbnRHbG9iYWxDb250ZXh0KCk7CisgICAgfQorfQorCit2b2lkIEdMX0FQSUVOVFJZIEdMX0Rl
bGV0ZVBlcmZNb25pdG9yc0FNRChHTHNpemVpIG4sIEdMdWludCAqbW9uaXRvcnMpCit7CisgICAg
Q29udGV4dCAqY29udGV4dCA9IEdldFZhbGlkR2xvYmFsQ29udGV4dCgpOworICAgIEVWRU5UKGNv
bnRleHQsIEdMRGVsZXRlUGVyZk1vbml0b3JzQU1ELCAiY29udGV4dCA9ICVkLCBuID0gJWQsIG1v
bml0b3JzID0gMHglMDE2IiBQUkl4UFRSICIiLAorICAgICAgICAgIENJRChjb250ZXh0KSwgbiwg
KHVpbnRwdHJfdCltb25pdG9ycyk7CisKKyAgICBpZiAoY29udGV4dCkKKyAgICB7CisgICAgICAg
IHN0ZDo6dW5pcXVlX2xvY2s8YW5nbGU6Okdsb2JhbE11dGV4PiBzaGFyZUNvbnRleHRMb2NrID0g
R2V0Q29udGV4dExvY2soY29udGV4dCk7CisgICAgICAgIGJvb2wgaXNDYWxsVmFsaWQgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID0gKGNvbnRleHQtPnNraXBWYWxpZGF0aW9u
KCkgfHwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBWYWxpZGF0ZURlbGV0ZVBlcmZNb25p
dG9yc0FNRCgKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGV4dCwgYW5nbGU6
OkVudHJ5UG9pbnQ6OkdMRGVsZXRlUGVyZk1vbml0b3JzQU1ELCBuLCBtb25pdG9ycykpOworICAg
ICAgICBpZiAoaXNDYWxsVmFsaWQpCisgICAgICAgIHsKKyAgICAgICAgICAgIGNvbnRleHQtPmRl
bGV0ZVBlcmZNb25pdG9ycyhuLCBtb25pdG9ycyk7CisgICAgICAgIH0KKyAgICAgICAgQU5HTEVf
Q0FQVFVSRShEZWxldGVQZXJmTW9uaXRvcnNBTUQsIGlzQ2FsbFZhbGlkLCBjb250ZXh0LCBuLCBt
b25pdG9ycyk7CisgICAgfQorICAgIGVsc2UKKyAgICB7CisgICAgICAgIEdlbmVyYXRlQ29udGV4
dExvc3RFcnJvck9uQ3VycmVudEdsb2JhbENvbnRleHQoKTsKKyAgICB9Cit9CisKK3ZvaWQgR0xf
QVBJRU5UUlkgR0xfRW5kUGVyZk1vbml0b3JBTUQoR0x1aW50IG1vbml0b3IpCit7CisgICAgQ29u
dGV4dCAqY29udGV4dCA9IEdldFZhbGlkR2xvYmFsQ29udGV4dCgpOworICAgIEVWRU5UKGNvbnRl
eHQsIEdMRW5kUGVyZk1vbml0b3JBTUQsICJjb250ZXh0ID0gJWQsIG1vbml0b3IgPSAldSIsIENJ
RChjb250ZXh0KSwgbW9uaXRvcik7CisKKyAgICBpZiAoY29udGV4dCkKKyAgICB7CisgICAgICAg
IHN0ZDo6dW5pcXVlX2xvY2s8YW5nbGU6Okdsb2JhbE11dGV4PiBzaGFyZUNvbnRleHRMb2NrID0g
R2V0Q29udGV4dExvY2soY29udGV4dCk7CisgICAgICAgIGJvb2wgaXNDYWxsVmFsaWQgPQorICAg
ICAgICAgICAgKGNvbnRleHQtPnNraXBWYWxpZGF0aW9uKCkgfHwKKyAgICAgICAgICAgICBWYWxp
ZGF0ZUVuZFBlcmZNb25pdG9yQU1EKGNvbnRleHQsIGFuZ2xlOjpFbnRyeVBvaW50OjpHTEVuZFBl
cmZNb25pdG9yQU1ELCBtb25pdG9yKSk7CisgICAgICAgIGlmIChpc0NhbGxWYWxpZCkKKyAgICAg
ICAgeworICAgICAgICAgICAgY29udGV4dC0+ZW5kUGVyZk1vbml0b3IobW9uaXRvcik7CisgICAg
ICAgIH0KKyAgICAgICAgQU5HTEVfQ0FQVFVSRShFbmRQZXJmTW9uaXRvckFNRCwgaXNDYWxsVmFs
aWQsIGNvbnRleHQsIG1vbml0b3IpOworICAgIH0KKyAgICBlbHNlCisgICAgeworICAgICAgICBH
ZW5lcmF0ZUNvbnRleHRMb3N0RXJyb3JPbkN1cnJlbnRHbG9iYWxDb250ZXh0KCk7CisgICAgfQor
fQorCit2b2lkIEdMX0FQSUVOVFJZIEdMX0dlblBlcmZNb25pdG9yc0FNRChHTHNpemVpIG4sIEdM
dWludCAqbW9uaXRvcnMpCit7CisgICAgQ29udGV4dCAqY29udGV4dCA9IEdldFZhbGlkR2xvYmFs
Q29udGV4dCgpOworICAgIEVWRU5UKGNvbnRleHQsIEdMR2VuUGVyZk1vbml0b3JzQU1ELCAiY29u
dGV4dCA9ICVkLCBuID0gJWQsIG1vbml0b3JzID0gMHglMDE2IiBQUkl4UFRSICIiLAorICAgICAg
ICAgIENJRChjb250ZXh0KSwgbiwgKHVpbnRwdHJfdCltb25pdG9ycyk7CisKKyAgICBpZiAoY29u
dGV4dCkKKyAgICB7CisgICAgICAgIHN0ZDo6dW5pcXVlX2xvY2s8YW5nbGU6Okdsb2JhbE11dGV4
PiBzaGFyZUNvbnRleHRMb2NrID0gR2V0Q29udGV4dExvY2soY29udGV4dCk7CisgICAgICAgIGJv
b2wgaXNDYWxsVmFsaWQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID0gKGNv
bnRleHQtPnNraXBWYWxpZGF0aW9uKCkgfHwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBW
YWxpZGF0ZUdlblBlcmZNb25pdG9yc0FNRCgKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgY29udGV4dCwgYW5nbGU6OkVudHJ5UG9pbnQ6OkdMR2VuUGVyZk1vbml0b3JzQU1ELCBuLCBt
b25pdG9ycykpOworICAgICAgICBpZiAoaXNDYWxsVmFsaWQpCisgICAgICAgIHsKKyAgICAgICAg
ICAgIGNvbnRleHQtPmdlblBlcmZNb25pdG9ycyhuLCBtb25pdG9ycyk7CisgICAgICAgIH0KKyAg
ICAgICAgQU5HTEVfQ0FQVFVSRShHZW5QZXJmTW9uaXRvcnNBTUQsIGlzQ2FsbFZhbGlkLCBjb250
ZXh0LCBuLCBtb25pdG9ycyk7CisgICAgfQorICAgIGVsc2UKKyAgICB7CisgICAgICAgIEdlbmVy
YXRlQ29udGV4dExvc3RFcnJvck9uQ3VycmVudEdsb2JhbENvbnRleHQoKTsKKyAgICB9Cit9CisK
K3ZvaWQgR0xfQVBJRU5UUlkgR0xfR2V0UGVyZk1vbml0b3JDb3VudGVyRGF0YUFNRChHTHVpbnQg
bW9uaXRvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBHTGVudW0gcG5hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgR0xzaXplaSBkYXRhU2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBHTHVpbnQgKmRhdGEsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xpbnQgKmJ5dGVzV3JpdHRlbikKK3sKKyAgICBD
b250ZXh0ICpjb250ZXh0ID0gR2V0VmFsaWRHbG9iYWxDb250ZXh0KCk7CisgICAgRVZFTlQoY29u
dGV4dCwgR0xHZXRQZXJmTW9uaXRvckNvdW50ZXJEYXRhQU1ELAorICAgICAgICAgICJjb250ZXh0
ID0gJWQsIG1vbml0b3IgPSAldSwgcG5hbWUgPSAlcywgZGF0YVNpemUgPSAlZCwgZGF0YSA9IDB4
JTAxNiIgUFJJeFBUUgorICAgICAgICAgICIsIGJ5dGVzV3JpdHRlbiA9IDB4JTAxNiIgUFJJeFBU
UiAiIiwKKyAgICAgICAgICBDSUQoY29udGV4dCksIG1vbml0b3IsIEdMZW51bVRvU3RyaW5nKEdM
ZW51bUdyb3VwOjpEZWZhdWx0R3JvdXAsIHBuYW1lKSwgZGF0YVNpemUsCisgICAgICAgICAgKHVp
bnRwdHJfdClkYXRhLCAodWludHB0cl90KWJ5dGVzV3JpdHRlbik7CisKKyAgICBpZiAoY29udGV4
dCkKKyAgICB7CisgICAgICAgIHN0ZDo6dW5pcXVlX2xvY2s8YW5nbGU6Okdsb2JhbE11dGV4PiBz
aGFyZUNvbnRleHRMb2NrID0gR2V0Q29udGV4dExvY2soY29udGV4dCk7CisgICAgICAgIGJvb2wg
aXNDYWxsVmFsaWQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID0gKGNvbnRl
eHQtPnNraXBWYWxpZGF0aW9uKCkgfHwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBWYWxp
ZGF0ZUdldFBlcmZNb25pdG9yQ291bnRlckRhdGFBTUQoCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGNvbnRleHQsIGFuZ2xlOjpFbnRyeVBvaW50OjpHTEdldFBlcmZNb25pdG9yQ291
bnRlckRhdGFBTUQsIG1vbml0b3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBu
YW1lLCBkYXRhU2l6ZSwgZGF0YSwgYnl0ZXNXcml0dGVuKSk7CisgICAgICAgIGlmIChpc0NhbGxW
YWxpZCkKKyAgICAgICAgeworICAgICAgICAgICAgY29udGV4dC0+Z2V0UGVyZk1vbml0b3JDb3Vu
dGVyRGF0YShtb25pdG9yLCBwbmFtZSwgZGF0YVNpemUsIGRhdGEsIGJ5dGVzV3JpdHRlbik7Cisg
ICAgICAgIH0KKyAgICAgICAgQU5HTEVfQ0FQVFVSRShHZXRQZXJmTW9uaXRvckNvdW50ZXJEYXRh
QU1ELCBpc0NhbGxWYWxpZCwgY29udGV4dCwgbW9uaXRvciwgcG5hbWUsIGRhdGFTaXplLAorICAg
ICAgICAgICAgICAgICAgICAgIGRhdGEsIGJ5dGVzV3JpdHRlbik7CisgICAgfQorICAgIGVsc2UK
KyAgICB7CisgICAgICAgIEdlbmVyYXRlQ29udGV4dExvc3RFcnJvck9uQ3VycmVudEdsb2JhbENv
bnRleHQoKTsKKyAgICB9Cit9CisKK3ZvaWQgR0xfQVBJRU5UUlkgR0xfR2V0UGVyZk1vbml0b3JD
b3VudGVySW5mb0FNRChHTHVpbnQgZ3JvdXAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgR0x1aW50IGNvdW50ZXIsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xlbnVtIHBuYW1lLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZvaWQgKmRhdGEpCit7CisgICAg
Q29udGV4dCAqY29udGV4dCA9IEdldFZhbGlkR2xvYmFsQ29udGV4dCgpOworICAgIEVWRU5UKGNv
bnRleHQsIEdMR2V0UGVyZk1vbml0b3JDb3VudGVySW5mb0FNRCwKKyAgICAgICAgICAiY29udGV4
dCA9ICVkLCBncm91cCA9ICV1LCBjb3VudGVyID0gJXUsIHBuYW1lID0gJXMsIGRhdGEgPSAweCUw
MTYiIFBSSXhQVFIgIiIsCisgICAgICAgICAgQ0lEKGNvbnRleHQpLCBncm91cCwgY291bnRlciwg
R0xlbnVtVG9TdHJpbmcoR0xlbnVtR3JvdXA6OkRlZmF1bHRHcm91cCwgcG5hbWUpLAorICAgICAg
ICAgICh1aW50cHRyX3QpZGF0YSk7CisKKyAgICBpZiAoY29udGV4dCkKKyAgICB7CisgICAgICAg
IHN0ZDo6dW5pcXVlX2xvY2s8YW5nbGU6Okdsb2JhbE11dGV4PiBzaGFyZUNvbnRleHRMb2NrID0g
R2V0Q29udGV4dExvY2soY29udGV4dCk7CisgICAgICAgIGJvb2wgaXNDYWxsVmFsaWQgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID0gKGNvbnRleHQtPnNraXBWYWxpZGF0aW9u
KCkgfHwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBWYWxpZGF0ZUdldFBlcmZNb25pdG9y
Q291bnRlckluZm9BTUQoCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRleHQs
IGFuZ2xlOjpFbnRyeVBvaW50OjpHTEdldFBlcmZNb25pdG9yQ291bnRlckluZm9BTUQsIGdyb3Vw
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb3VudGVyLCBwbmFtZSwgZGF0YSkp
OworICAgICAgICBpZiAoaXNDYWxsVmFsaWQpCisgICAgICAgIHsKKyAgICAgICAgICAgIGNvbnRl
eHQtPmdldFBlcmZNb25pdG9yQ291bnRlckluZm8oZ3JvdXAsIGNvdW50ZXIsIHBuYW1lLCBkYXRh
KTsKKyAgICAgICAgfQorICAgICAgICBBTkdMRV9DQVBUVVJFKEdldFBlcmZNb25pdG9yQ291bnRl
ckluZm9BTUQsIGlzQ2FsbFZhbGlkLCBjb250ZXh0LCBncm91cCwgY291bnRlciwgcG5hbWUsCisg
ICAgICAgICAgICAgICAgICAgICAgZGF0YSk7CisgICAgfQorICAgIGVsc2UKKyAgICB7CisgICAg
ICAgIEdlbmVyYXRlQ29udGV4dExvc3RFcnJvck9uQ3VycmVudEdsb2JhbENvbnRleHQoKTsKKyAg
ICB9Cit9CisKK3ZvaWQgR0xfQVBJRU5UUlkgR0xfR2V0UGVyZk1vbml0b3JDb3VudGVyU3RyaW5n
QU1EKEdMdWludCBncm91cCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIEdMdWludCBjb3VudGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBidWZTaXplLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSAqbGVuZ3RoLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xjaGFyICpj
b3VudGVyU3RyaW5nKQoreworICAgIENvbnRleHQgKmNvbnRleHQgPSBHZXRWYWxpZEdsb2JhbENv
bnRleHQoKTsKKyAgICBFVkVOVChjb250ZXh0LCBHTEdldFBlcmZNb25pdG9yQ291bnRlclN0cmlu
Z0FNRCwKKyAgICAgICAgICAiY29udGV4dCA9ICVkLCBncm91cCA9ICV1LCBjb3VudGVyID0gJXUs
IGJ1ZlNpemUgPSAlZCwgbGVuZ3RoID0gMHglMDE2IiBQUkl4UFRSCisgICAgICAgICAgIiwgY291
bnRlclN0cmluZyA9IDB4JTAxNiIgUFJJeFBUUiAiIiwKKyAgICAgICAgICBDSUQoY29udGV4dCks
IGdyb3VwLCBjb3VudGVyLCBidWZTaXplLCAodWludHB0cl90KWxlbmd0aCwgKHVpbnRwdHJfdClj
b3VudGVyU3RyaW5nKTsKKworICAgIGlmIChjb250ZXh0KQorICAgIHsKKyAgICAgICAgc3RkOjp1
bmlxdWVfbG9jazxhbmdsZTo6R2xvYmFsTXV0ZXg+IHNoYXJlQ29udGV4dExvY2sgPSBHZXRDb250
ZXh0TG9jayhjb250ZXh0KTsKKyAgICAgICAgYm9vbCBpc0NhbGxWYWxpZCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgPSAoY29udGV4dC0+c2tpcFZhbGlkYXRpb24oKSB8fAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZhbGlkYXRlR2V0UGVyZk1vbml0b3JDb3VudGVy
U3RyaW5nQU1EKAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZXh0LCBhbmds
ZTo6RW50cnlQb2ludDo6R0xHZXRQZXJmTW9uaXRvckNvdW50ZXJTdHJpbmdBTUQsIGdyb3VwLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb3VudGVyLCBidWZTaXplLCBsZW5ndGgs
IGNvdW50ZXJTdHJpbmcpKTsKKyAgICAgICAgaWYgKGlzQ2FsbFZhbGlkKQorICAgICAgICB7Cisg
ICAgICAgICAgICBjb250ZXh0LT5nZXRQZXJmTW9uaXRvckNvdW50ZXJTdHJpbmcoZ3JvdXAsIGNv
dW50ZXIsIGJ1ZlNpemUsIGxlbmd0aCwgY291bnRlclN0cmluZyk7CisgICAgICAgIH0KKyAgICAg
ICAgQU5HTEVfQ0FQVFVSRShHZXRQZXJmTW9uaXRvckNvdW50ZXJTdHJpbmdBTUQsIGlzQ2FsbFZh
bGlkLCBjb250ZXh0LCBncm91cCwgY291bnRlciwgYnVmU2l6ZSwKKyAgICAgICAgICAgICAgICAg
ICAgICBsZW5ndGgsIGNvdW50ZXJTdHJpbmcpOworICAgIH0KKyAgICBlbHNlCisgICAgeworICAg
ICAgICBHZW5lcmF0ZUNvbnRleHRMb3N0RXJyb3JPbkN1cnJlbnRHbG9iYWxDb250ZXh0KCk7Cisg
ICAgfQorfQorCit2b2lkIEdMX0FQSUVOVFJZIEdMX0dldFBlcmZNb25pdG9yQ291bnRlcnNBTUQo
R0x1aW50IGdyb3VwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIEdMaW50ICpudW1Db3VudGVycywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBHTGludCAqbWF4QWN0aXZlQ291bnRlcnMsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBjb3VudGVyU2l6ZSwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVpbnQgKmNvdW50ZXJz
KQoreworICAgIENvbnRleHQgKmNvbnRleHQgPSBHZXRWYWxpZEdsb2JhbENvbnRleHQoKTsKKyAg
ICBFVkVOVChjb250ZXh0LCBHTEdldFBlcmZNb25pdG9yQ291bnRlcnNBTUQsCisgICAgICAgICAg
ImNvbnRleHQgPSAlZCwgZ3JvdXAgPSAldSwgbnVtQ291bnRlcnMgPSAweCUwMTYiIFBSSXhQVFIK
KyAgICAgICAgICAiLCBtYXhBY3RpdmVDb3VudGVycyA9IDB4JTAxNiIgUFJJeFBUUiAiLCBjb3Vu
dGVyU2l6ZSA9ICVkLCBjb3VudGVycyA9IDB4JTAxNiIgUFJJeFBUUiAiIiwKKyAgICAgICAgICBD
SUQoY29udGV4dCksIGdyb3VwLCAodWludHB0cl90KW51bUNvdW50ZXJzLCAodWludHB0cl90KW1h
eEFjdGl2ZUNvdW50ZXJzLCBjb3VudGVyU2l6ZSwKKyAgICAgICAgICAodWludHB0cl90KWNvdW50
ZXJzKTsKKworICAgIGlmIChjb250ZXh0KQorICAgIHsKKyAgICAgICAgc3RkOjp1bmlxdWVfbG9j
azxhbmdsZTo6R2xvYmFsTXV0ZXg+IHNoYXJlQ29udGV4dExvY2sgPSBHZXRDb250ZXh0TG9jayhj
b250ZXh0KTsKKyAgICAgICAgYm9vbCBpc0NhbGxWYWxpZCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgPSAoY29udGV4dC0+c2tpcFZhbGlkYXRpb24oKSB8fAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIFZhbGlkYXRlR2V0UGVyZk1vbml0b3JDb3VudGVyc0FNRCgKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGV4dCwgYW5nbGU6OkVudHJ5UG9pbnQ6
OkdMR2V0UGVyZk1vbml0b3JDb3VudGVyc0FNRCwgZ3JvdXAsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIG51bUNvdW50ZXJzLCBtYXhBY3RpdmVDb3VudGVycywgY291bnRlclNpemUs
IGNvdW50ZXJzKSk7CisgICAgICAgIGlmIChpc0NhbGxWYWxpZCkKKyAgICAgICAgeworICAgICAg
ICAgICAgY29udGV4dC0+Z2V0UGVyZk1vbml0b3JDb3VudGVycyhncm91cCwgbnVtQ291bnRlcnMs
IG1heEFjdGl2ZUNvdW50ZXJzLCBjb3VudGVyU2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgY291bnRlcnMpOworICAgICAgICB9CisgICAgICAgIEFOR0xF
X0NBUFRVUkUoR2V0UGVyZk1vbml0b3JDb3VudGVyc0FNRCwgaXNDYWxsVmFsaWQsIGNvbnRleHQs
IGdyb3VwLCBudW1Db3VudGVycywKKyAgICAgICAgICAgICAgICAgICAgICBtYXhBY3RpdmVDb3Vu
dGVycywgY291bnRlclNpemUsIGNvdW50ZXJzKTsKKyAgICB9CisgICAgZWxzZQorICAgIHsKKyAg
ICAgICAgR2VuZXJhdGVDb250ZXh0TG9zdEVycm9yT25DdXJyZW50R2xvYmFsQ29udGV4dCgpOwor
ICAgIH0KK30KKwordm9pZCBHTF9BUElFTlRSWSBHTF9HZXRQZXJmTW9uaXRvckdyb3VwU3RyaW5n
QU1EKEdMdWludCBncm91cCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBHTHNpemVpIGJ1ZlNpemUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSAqbGVuZ3RoLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMY2hhciAqZ3JvdXBTdHJpbmcpCit7Cisg
ICAgQ29udGV4dCAqY29udGV4dCA9IEdldFZhbGlkR2xvYmFsQ29udGV4dCgpOworICAgIEVWRU5U
KGNvbnRleHQsIEdMR2V0UGVyZk1vbml0b3JHcm91cFN0cmluZ0FNRCwKKyAgICAgICAgICAiY29u
dGV4dCA9ICVkLCBncm91cCA9ICV1LCBidWZTaXplID0gJWQsIGxlbmd0aCA9IDB4JTAxNiIgUFJJ
eFBUUgorICAgICAgICAgICIsIGdyb3VwU3RyaW5nID0gMHglMDE2IiBQUkl4UFRSICIiLAorICAg
ICAgICAgIENJRChjb250ZXh0KSwgZ3JvdXAsIGJ1ZlNpemUsICh1aW50cHRyX3QpbGVuZ3RoLCAo
dWludHB0cl90KWdyb3VwU3RyaW5nKTsKKworICAgIGlmIChjb250ZXh0KQorICAgIHsKKyAgICAg
ICAgc3RkOjp1bmlxdWVfbG9jazxhbmdsZTo6R2xvYmFsTXV0ZXg+IHNoYXJlQ29udGV4dExvY2sg
PSBHZXRDb250ZXh0TG9jayhjb250ZXh0KTsKKyAgICAgICAgYm9vbCBpc0NhbGxWYWxpZCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPSAoY29udGV4dC0+c2tpcFZhbGlkYXRp
b24oKSB8fAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZhbGlkYXRlR2V0UGVyZk1vbml0
b3JHcm91cFN0cmluZ0FNRCgKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGV4
dCwgYW5nbGU6OkVudHJ5UG9pbnQ6OkdMR2V0UGVyZk1vbml0b3JHcm91cFN0cmluZ0FNRCwgZ3Jv
dXAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ1ZlNpemUsIGxlbmd0aCwgZ3Jv
dXBTdHJpbmcpKTsKKyAgICAgICAgaWYgKGlzQ2FsbFZhbGlkKQorICAgICAgICB7CisgICAgICAg
ICAgICBjb250ZXh0LT5nZXRQZXJmTW9uaXRvckdyb3VwU3RyaW5nKGdyb3VwLCBidWZTaXplLCBs
ZW5ndGgsIGdyb3VwU3RyaW5nKTsKKyAgICAgICAgfQorICAgICAgICBBTkdMRV9DQVBUVVJFKEdl
dFBlcmZNb25pdG9yR3JvdXBTdHJpbmdBTUQsIGlzQ2FsbFZhbGlkLCBjb250ZXh0LCBncm91cCwg
YnVmU2l6ZSwgbGVuZ3RoLAorICAgICAgICAgICAgICAgICAgICAgIGdyb3VwU3RyaW5nKTsKKyAg
ICB9CisgICAgZWxzZQorICAgIHsKKyAgICAgICAgR2VuZXJhdGVDb250ZXh0TG9zdEVycm9yT25D
dXJyZW50R2xvYmFsQ29udGV4dCgpOworICAgIH0KK30KKwordm9pZCBHTF9BUElFTlRSWSBHTF9H
ZXRQZXJmTW9uaXRvckdyb3Vwc0FNRChHTGludCAqbnVtR3JvdXBzLCBHTHNpemVpIGdyb3Vwc1Np
emUsIEdMdWludCAqZ3JvdXBzKQoreworICAgIENvbnRleHQgKmNvbnRleHQgPSBHZXRWYWxpZEds
b2JhbENvbnRleHQoKTsKKyAgICBFVkVOVChjb250ZXh0LCBHTEdldFBlcmZNb25pdG9yR3JvdXBz
QU1ELAorICAgICAgICAgICJjb250ZXh0ID0gJWQsIG51bUdyb3VwcyA9IDB4JTAxNiIgUFJJeFBU
UiAiLCBncm91cHNTaXplID0gJWQsIGdyb3VwcyA9IDB4JTAxNiIgUFJJeFBUUgorICAgICAgICAg
ICIiLAorICAgICAgICAgIENJRChjb250ZXh0KSwgKHVpbnRwdHJfdCludW1Hcm91cHMsIGdyb3Vw
c1NpemUsICh1aW50cHRyX3QpZ3JvdXBzKTsKKworICAgIGlmIChjb250ZXh0KQorICAgIHsKKyAg
ICAgICAgc3RkOjp1bmlxdWVfbG9jazxhbmdsZTo6R2xvYmFsTXV0ZXg+IHNoYXJlQ29udGV4dExv
Y2sgPSBHZXRDb250ZXh0TG9jayhjb250ZXh0KTsKKyAgICAgICAgYm9vbCBpc0NhbGxWYWxpZCA9
CisgICAgICAgICAgICAoY29udGV4dC0+c2tpcFZhbGlkYXRpb24oKSB8fAorICAgICAgICAgICAg
IFZhbGlkYXRlR2V0UGVyZk1vbml0b3JHcm91cHNBTUQoY29udGV4dCwgYW5nbGU6OkVudHJ5UG9p
bnQ6OkdMR2V0UGVyZk1vbml0b3JHcm91cHNBTUQsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBudW1Hcm91cHMsIGdyb3Vwc1NpemUsIGdyb3VwcykpOworICAg
ICAgICBpZiAoaXNDYWxsVmFsaWQpCisgICAgICAgIHsKKyAgICAgICAgICAgIGNvbnRleHQtPmdl
dFBlcmZNb25pdG9yR3JvdXBzKG51bUdyb3VwcywgZ3JvdXBzU2l6ZSwgZ3JvdXBzKTsKKyAgICAg
ICAgfQorICAgICAgICBBTkdMRV9DQVBUVVJFKEdldFBlcmZNb25pdG9yR3JvdXBzQU1ELCBpc0Nh
bGxWYWxpZCwgY29udGV4dCwgbnVtR3JvdXBzLCBncm91cHNTaXplLCBncm91cHMpOworICAgIH0K
KyAgICBlbHNlCisgICAgeworICAgICAgICBHZW5lcmF0ZUNvbnRleHRMb3N0RXJyb3JPbkN1cnJl
bnRHbG9iYWxDb250ZXh0KCk7CisgICAgfQorfQorCit2b2lkIEdMX0FQSUVOVFJZIEdMX1NlbGVj
dFBlcmZNb25pdG9yQ291bnRlcnNBTUQoR0x1aW50IG1vbml0b3IsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xib29sZWFuIGVuYWJsZSwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVpbnQgZ3JvdXAs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xpbnQg
bnVtQ291bnRlcnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgR0x1aW50ICpjb3VudGVyTGlzdCkKK3sKKyAgICBDb250ZXh0ICpjb250ZXh0ID0gR2V0
VmFsaWRHbG9iYWxDb250ZXh0KCk7CisgICAgRVZFTlQoY29udGV4dCwgR0xTZWxlY3RQZXJmTW9u
aXRvckNvdW50ZXJzQU1ELAorICAgICAgICAgICJjb250ZXh0ID0gJWQsIG1vbml0b3IgPSAldSwg
ZW5hYmxlID0gJXMsIGdyb3VwID0gJXUsIG51bUNvdW50ZXJzID0gJWQsIGNvdW50ZXJMaXN0ID0g
IgorICAgICAgICAgICIweCUwMTYiIFBSSXhQVFIgIiIsCisgICAgICAgICAgQ0lEKGNvbnRleHQp
LCBtb25pdG9yLCBHTGJvb2xlYW5Ub1N0cmluZyhlbmFibGUpLCBncm91cCwgbnVtQ291bnRlcnMs
CisgICAgICAgICAgKHVpbnRwdHJfdCljb3VudGVyTGlzdCk7CisKKyAgICBpZiAoY29udGV4dCkK
KyAgICB7CisgICAgICAgIHN0ZDo6dW5pcXVlX2xvY2s8YW5nbGU6Okdsb2JhbE11dGV4PiBzaGFy
ZUNvbnRleHRMb2NrID0gR2V0Q29udGV4dExvY2soY29udGV4dCk7CisgICAgICAgIGJvb2wgaXND
YWxsVmFsaWQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID0gKGNvbnRleHQt
PnNraXBWYWxpZGF0aW9uKCkgfHwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBWYWxpZGF0
ZVNlbGVjdFBlcmZNb25pdG9yQ291bnRlcnNBTUQoCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGNvbnRleHQsIGFuZ2xlOjpFbnRyeVBvaW50OjpHTFNlbGVjdFBlcmZNb25pdG9yQ291
bnRlcnNBTUQsIG1vbml0b3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVuYWJs
ZSwgZ3JvdXAsIG51bUNvdW50ZXJzLCBjb3VudGVyTGlzdCkpOworICAgICAgICBpZiAoaXNDYWxs
VmFsaWQpCisgICAgICAgIHsKKyAgICAgICAgICAgIGNvbnRleHQtPnNlbGVjdFBlcmZNb25pdG9y
Q291bnRlcnMobW9uaXRvciwgZW5hYmxlLCBncm91cCwgbnVtQ291bnRlcnMsIGNvdW50ZXJMaXN0
KTsKKyAgICAgICAgfQorICAgICAgICBBTkdMRV9DQVBUVVJFKFNlbGVjdFBlcmZNb25pdG9yQ291
bnRlcnNBTUQsIGlzQ2FsbFZhbGlkLCBjb250ZXh0LCBtb25pdG9yLCBlbmFibGUsIGdyb3VwLAor
ICAgICAgICAgICAgICAgICAgICAgIG51bUNvdW50ZXJzLCBjb3VudGVyTGlzdCk7CisgICAgfQor
ICAgIGVsc2UKKyAgICB7CisgICAgICAgIEdlbmVyYXRlQ29udGV4dExvc3RFcnJvck9uQ3VycmVu
dEdsb2JhbENvbnRleHQoKTsKKyAgICB9Cit9CisKIC8vIEdMX0FORFJPSURfZXh0ZW5zaW9uX3Bh
Y2tfZXMzMWEKIAogLy8gR0xfQU5HTEVfYmFzZV92ZXJ0ZXhfYmFzZV9pbnN0YW5jZQpAQCAtNzcs
MTYgKzM5MywxNiBAQCB2b2lkIEdMX0FQSUVOVFJZIEdMX0RyYXdFbGVtZW50c0luc3RhbmNlZEJh
c2VWZXJ0ZXhCYXNlSW5zdGFuY2VBTkdMRShHTGVudW0gbW9kZQogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXpl
aSBjb3VudCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIEdMZW51bSB0eXBlLAogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgR0x2
b2lkICppbmRpY2VzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBpbnN0YW5jZUNvdW50cywKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIEdMc2l6ZWkgaW5zdGFuY2VDb3VudCwKICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMaW50IGJhc2VWZXJ0
ZXgsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBHTHVpbnQgYmFzZUluc3RhbmNlKQogewogICAgIENvbnRleHQgKmNv
bnRleHQgPSBHZXRWYWxpZEdsb2JhbENvbnRleHQoKTsKICAgICBFVkVOVChjb250ZXh0LCBHTERy
YXdFbGVtZW50c0luc3RhbmNlZEJhc2VWZXJ0ZXhCYXNlSW5zdGFuY2VBTkdMRSwKICAgICAgICAg
ICAiY29udGV4dCA9ICVkLCBtb2RlID0gJXMsIGNvdW50ID0gJWQsIHR5cGUgPSAlcywgaW5kaWNl
cyA9IDB4JTAxNiIgUFJJeFBUUgotICAgICAgICAgICIsIGluc3RhbmNlQ291bnRzID0gJWQsIGJh
c2VWZXJ0ZXggPSAlZCwgYmFzZUluc3RhbmNlID0gJXUiLAorICAgICAgICAgICIsIGluc3RhbmNl
Q291bnQgPSAlZCwgYmFzZVZlcnRleCA9ICVkLCBiYXNlSW5zdGFuY2UgPSAldSIsCiAgICAgICAg
ICAgQ0lEKGNvbnRleHQpLCBHTGVudW1Ub1N0cmluZyhHTGVudW1Hcm91cDo6UHJpbWl0aXZlVHlw
ZSwgbW9kZSksIGNvdW50LAotICAgICAgICAgIEdMZW51bVRvU3RyaW5nKEdMZW51bUdyb3VwOjpE
cmF3RWxlbWVudHNUeXBlLCB0eXBlKSwgKHVpbnRwdHJfdClpbmRpY2VzLCBpbnN0YW5jZUNvdW50
cywKKyAgICAgICAgICBHTGVudW1Ub1N0cmluZyhHTGVudW1Hcm91cDo6RHJhd0VsZW1lbnRzVHlw
ZSwgdHlwZSksICh1aW50cHRyX3QpaW5kaWNlcywgaW5zdGFuY2VDb3VudCwKICAgICAgICAgICBi
YXNlVmVydGV4LCBiYXNlSW5zdGFuY2UpOwogCiAgICAgaWYgKGNvbnRleHQpCkBAIC05OCwxNCAr
NDE0LDE0IEBAIHZvaWQgR0xfQVBJRU5UUlkgR0xfRHJhd0VsZW1lbnRzSW5zdGFuY2VkQmFzZVZl
cnRleEJhc2VJbnN0YW5jZUFOR0xFKEdMZW51bSBtb2RlCiAgICAgICAgICAgICAoY29udGV4dC0+
c2tpcFZhbGlkYXRpb24oKSB8fAogICAgICAgICAgICAgIFZhbGlkYXRlRHJhd0VsZW1lbnRzSW5z
dGFuY2VkQmFzZVZlcnRleEJhc2VJbnN0YW5jZUFOR0xFKAogICAgICAgICAgICAgICAgICBjb250
ZXh0LCBhbmdsZTo6RW50cnlQb2ludDo6R0xEcmF3RWxlbWVudHNJbnN0YW5jZWRCYXNlVmVydGV4
QmFzZUluc3RhbmNlQU5HTEUsCi0gICAgICAgICAgICAgICAgIG1vZGVQYWNrZWQsIGNvdW50LCB0
eXBlUGFja2VkLCBpbmRpY2VzLCBpbnN0YW5jZUNvdW50cywgYmFzZVZlcnRleCwgYmFzZUluc3Rh
bmNlKSk7CisgICAgICAgICAgICAgICAgIG1vZGVQYWNrZWQsIGNvdW50LCB0eXBlUGFja2VkLCBp
bmRpY2VzLCBpbnN0YW5jZUNvdW50LCBiYXNlVmVydGV4LCBiYXNlSW5zdGFuY2UpKTsKICAgICAg
ICAgaWYgKGlzQ2FsbFZhbGlkKQogICAgICAgICB7CiAgICAgICAgICAgICBjb250ZXh0LT5kcmF3
RWxlbWVudHNJbnN0YW5jZWRCYXNlVmVydGV4QmFzZUluc3RhbmNlKAotICAgICAgICAgICAgICAg
IG1vZGVQYWNrZWQsIGNvdW50LCB0eXBlUGFja2VkLCBpbmRpY2VzLCBpbnN0YW5jZUNvdW50cywg
YmFzZVZlcnRleCwgYmFzZUluc3RhbmNlKTsKKyAgICAgICAgICAgICAgICBtb2RlUGFja2VkLCBj
b3VudCwgdHlwZVBhY2tlZCwgaW5kaWNlcywgaW5zdGFuY2VDb3VudCwgYmFzZVZlcnRleCwgYmFz
ZUluc3RhbmNlKTsKICAgICAgICAgfQogICAgICAgICBBTkdMRV9DQVBUVVJFKERyYXdFbGVtZW50
c0luc3RhbmNlZEJhc2VWZXJ0ZXhCYXNlSW5zdGFuY2VBTkdMRSwgaXNDYWxsVmFsaWQsIGNvbnRl
eHQsCi0gICAgICAgICAgICAgICAgICAgICAgbW9kZVBhY2tlZCwgY291bnQsIHR5cGVQYWNrZWQs
IGluZGljZXMsIGluc3RhbmNlQ291bnRzLCBiYXNlVmVydGV4LAorICAgICAgICAgICAgICAgICAg
ICAgIG1vZGVQYWNrZWQsIGNvdW50LCB0eXBlUGFja2VkLCBpbmRpY2VzLCBpbnN0YW5jZUNvdW50
LCBiYXNlVmVydGV4LAogICAgICAgICAgICAgICAgICAgICAgIGJhc2VJbnN0YW5jZSk7CiAgICAg
fQogICAgIGVsc2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJH
TEVTdjIvZW50cnlfcG9pbnRzX2dsZXNfZXh0X2F1dG9nZW4uaCBiL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3NyYy9saWJHTEVTdjIvZW50cnlfcG9pbnRzX2dsZXNfZXh0X2F1dG9nZW4uaAppbmRl
eCA3NDBmNzcwZmU5MzYzYjJiZTQ5MmUxYTM4ZDA5MjBhM2E5Y2E4ZjcwLi4wYTBmYWRlY2RmOTI5
ZWE2YzFjMTVmYzVkZTkxMzVkM2EwMzI0YTFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvbGliR0xFU3YyL2VudHJ5X3BvaW50c19nbGVzX2V4dF9hdXRvZ2VuLmgKKysr
IGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkdMRVN2Mi9lbnRyeV9wb2ludHNfZ2xl
c19leHRfYXV0b2dlbi5oCkBAIC0yMCw2ICsyMCw0MyBAQAogCiBleHRlcm4gIkMiIHsKIAorLy8g
R0xfQU1EX3BlcmZvcm1hbmNlX21vbml0b3IKK0FOR0xFX0VYUE9SVCB2b2lkIEdMX0FQSUVOVFJZ
IEdMX0JlZ2luUGVyZk1vbml0b3JBTUQoR0x1aW50IG1vbml0b3IpOworQU5HTEVfRVhQT1JUIHZv
aWQgR0xfQVBJRU5UUlkgR0xfRGVsZXRlUGVyZk1vbml0b3JzQU1EKEdMc2l6ZWkgbiwgR0x1aW50
ICptb25pdG9ycyk7CitBTkdMRV9FWFBPUlQgdm9pZCBHTF9BUElFTlRSWSBHTF9FbmRQZXJmTW9u
aXRvckFNRChHTHVpbnQgbW9uaXRvcik7CitBTkdMRV9FWFBPUlQgdm9pZCBHTF9BUElFTlRSWSBH
TF9HZW5QZXJmTW9uaXRvcnNBTUQoR0xzaXplaSBuLCBHTHVpbnQgKm1vbml0b3JzKTsKK0FOR0xF
X0VYUE9SVCB2b2lkIEdMX0FQSUVOVFJZIEdMX0dldFBlcmZNb25pdG9yQ291bnRlckRhdGFBTUQo
R0x1aW50IG1vbml0b3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIEdMZW51bSBwbmFtZSwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBkYXRhU2l6
ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgR0x1aW50ICpkYXRhLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTGludCAqYnl0ZXNXcml0dGVuKTsKK0FOR0xF
X0VYUE9SVCB2b2lkIEdMX0FQSUVOVFJZIEdMX0dldFBlcmZNb25pdG9yQ291bnRlckluZm9BTUQo
R0x1aW50IGdyb3VwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBHTHVpbnQgY291bnRlciwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xlbnVtIHBuYW1lLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB2b2lkICpkYXRhKTsKK0FOR0xFX0VYUE9SVCB2b2lkIEdMX0FQSUVOVFJZIEdMX0dldFBl
cmZNb25pdG9yQ291bnRlclN0cmluZ0FNRChHTHVpbnQgZ3JvdXAsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1aW50IGNv
dW50ZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgR0xzaXplaSBidWZTaXplLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgKmxlbmd0aCwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBHTGNoYXIgKmNvdW50ZXJTdHJpbmcpOworQU5HTEVfRVhQT1JUIHZvaWQgR0xfQVBJ
RU5UUlkgR0xfR2V0UGVyZk1vbml0b3JDb3VudGVyc0FNRChHTHVpbnQgZ3JvdXAsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMaW50
ICpudW1Db3VudGVycywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgR0xpbnQgKm1heEFjdGl2ZUNvdW50ZXJzLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHNpemVpIGNv
dW50ZXJTaXplLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBHTHVpbnQgKmNvdW50ZXJzKTsKK0FOR0xFX0VYUE9SVCB2b2lkIEdMX0FQ
SUVOVFJZIEdMX0dldFBlcmZNb25pdG9yR3JvdXBTdHJpbmdBTUQoR0x1aW50IGdyb3VwLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBHTHNpemVpIGJ1ZlNpemUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgKmxlbmd0aCwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xjaGFyICpn
cm91cFN0cmluZyk7CitBTkdMRV9FWFBPUlQgdm9pZCBHTF9BUElFTlRSWSBHTF9HZXRQZXJmTW9u
aXRvckdyb3Vwc0FNRChHTGludCAqbnVtR3JvdXBzLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBncm91cHNTaXplLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1
aW50ICpncm91cHMpOworQU5HTEVfRVhQT1JUIHZvaWQgR0xfQVBJRU5UUlkgR0xfU2VsZWN0UGVy
Zk1vbml0b3JDb3VudGVyc0FNRChHTHVpbnQgbW9uaXRvciwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xib29sZWFuIGVuYWJs
ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgR0x1aW50IGdyb3VwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTGludCBudW1Db3VudGVycywKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0x1
aW50ICpjb3VudGVyTGlzdCk7CisKIC8vIEdMX0FORFJPSURfZXh0ZW5zaW9uX3BhY2tfZXMzMWEK
IAogLy8gR0xfQU5HTEVfYmFzZV92ZXJ0ZXhfYmFzZV9pbnN0YW5jZQpAQCAtMzMsNyArNzAsNyBA
QCBHTF9EcmF3RWxlbWVudHNJbnN0YW5jZWRCYXNlVmVydGV4QmFzZUluc3RhbmNlQU5HTEUoR0xl
bnVtIG1vZGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgR0xzaXplaSBjb3VudCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBHTGVudW0gdHlwZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBHTHZvaWQgKmluZGljZXMsCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xzaXplaSBpbnN0
YW5jZUNvdW50cywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBHTHNpemVpIGluc3RhbmNlQ291bnQsCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xpbnQgYmFzZVZlcnRleCwKICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVpbnQgYmFzZUluc3Rh
bmNlKTsKIEFOR0xFX0VYUE9SVCB2b2lkIEdMX0FQSUVOVFJZCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliR0xFU3YyL2xpYkdMRVN2Ml9hdXRvZ2VuLmNwcCBiL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJHTEVTdjIvbGliR0xFU3YyX2F1dG9nZW4uY3Bw
CmluZGV4IGQyMjRkZGM0ZjUxNjdhYjc5ZDllNTJlM2M2Mjg2ZjhlMWE4YzM3MDguLmUzZTgwOTk1
M2ZkNmQwMjA0MThiYWQxYjI0NTlkN2Q3NjA1M2QwNTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3NyYy9saWJHTEVTdjIvbGliR0xFU3YyX2F1dG9nZW4uY3BwCisrKyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJHTEVTdjIvbGliR0xFU3YyX2F1dG9nZW4uY3Bw
CkBAIC0yNzEzLDYgKzI3MTMsODUgQEAgdm9pZCBHTF9BUElFTlRSWSBnbFZlcnRleFBvaW50ZXIo
R0xpbnQgc2l6ZSwgR0xlbnVtIHR5cGUsIEdMc2l6ZWkgc3RyaWRlLCBjb25zdAogICAgIHJldHVy
biBHTF9WZXJ0ZXhQb2ludGVyKHNpemUsIHR5cGUsIHN0cmlkZSwgcG9pbnRlcik7CiB9CiAKKy8v
IEdMX0FNRF9wZXJmb3JtYW5jZV9tb25pdG9yCit2b2lkIEdMX0FQSUVOVFJZIGdsQmVnaW5QZXJm
TW9uaXRvckFNRChHTHVpbnQgbW9uaXRvcikKK3sKKyAgICByZXR1cm4gR0xfQmVnaW5QZXJmTW9u
aXRvckFNRChtb25pdG9yKTsKK30KKwordm9pZCBHTF9BUElFTlRSWSBnbERlbGV0ZVBlcmZNb25p
dG9yc0FNRChHTHNpemVpIG4sIEdMdWludCAqbW9uaXRvcnMpCit7CisgICAgcmV0dXJuIEdMX0Rl
bGV0ZVBlcmZNb25pdG9yc0FNRChuLCBtb25pdG9ycyk7Cit9CisKK3ZvaWQgR0xfQVBJRU5UUlkg
Z2xFbmRQZXJmTW9uaXRvckFNRChHTHVpbnQgbW9uaXRvcikKK3sKKyAgICByZXR1cm4gR0xfRW5k
UGVyZk1vbml0b3JBTUQobW9uaXRvcik7Cit9CisKK3ZvaWQgR0xfQVBJRU5UUlkgZ2xHZW5QZXJm
TW9uaXRvcnNBTUQoR0xzaXplaSBuLCBHTHVpbnQgKm1vbml0b3JzKQoreworICAgIHJldHVybiBH
TF9HZW5QZXJmTW9uaXRvcnNBTUQobiwgbW9uaXRvcnMpOworfQorCit2b2lkIEdMX0FQSUVOVFJZ
IGdsR2V0UGVyZk1vbml0b3JDb3VudGVyRGF0YUFNRChHTHVpbnQgbW9uaXRvciwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMZW51bSBwbmFtZSwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgZGF0
YVNpemUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBH
THVpbnQgKmRhdGEsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBHTGludCAqYnl0ZXNXcml0dGVuKQoreworICAgIHJldHVybiBHTF9HZXRQZXJmTW9uaXRv
ckNvdW50ZXJEYXRhQU1EKG1vbml0b3IsIHBuYW1lLCBkYXRhU2l6ZSwgZGF0YSwgYnl0ZXNXcml0
dGVuKTsKK30KKwordm9pZCBHTF9BUElFTlRSWSBnbEdldFBlcmZNb25pdG9yQ291bnRlckluZm9B
TUQoR0x1aW50IGdyb3VwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgR0x1aW50IGNvdW50ZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBHTGVudW0gcG5hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB2b2lkICpkYXRhKQoreworICAgIHJldHVybiBHTF9HZXRQ
ZXJmTW9uaXRvckNvdW50ZXJJbmZvQU1EKGdyb3VwLCBjb3VudGVyLCBwbmFtZSwgZGF0YSk7Cit9
CisKK3ZvaWQgR0xfQVBJRU5UUlkgZ2xHZXRQZXJmTW9uaXRvckNvdW50ZXJTdHJpbmdBTUQoR0x1
aW50IGdyb3VwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBHTHVpbnQgY291bnRlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgR0xzaXplaSBidWZTaXplLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBHTHNpemVpICpsZW5ndGgsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMY2hhciAqY291bnRlclN0cmlu
ZykKK3sKKyAgICByZXR1cm4gR0xfR2V0UGVyZk1vbml0b3JDb3VudGVyU3RyaW5nQU1EKGdyb3Vw
LCBjb3VudGVyLCBidWZTaXplLCBsZW5ndGgsIGNvdW50ZXJTdHJpbmcpOworfQorCit2b2lkIEdM
X0FQSUVOVFJZIGdsR2V0UGVyZk1vbml0b3JDb3VudGVyc0FNRChHTHVpbnQgZ3JvdXAsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTGludCAqbnVtQ291bnRl
cnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTGludCAq
bWF4QWN0aXZlQ291bnRlcnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBHTHNpemVpIGNvdW50ZXJTaXplLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgR0x1aW50ICpjb3VudGVycykKK3sKKyAgICByZXR1cm4gR0xfR2V0
UGVyZk1vbml0b3JDb3VudGVyc0FNRChncm91cCwgbnVtQ291bnRlcnMsIG1heEFjdGl2ZUNvdW50
ZXJzLCBjb3VudGVyU2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBjb3VudGVycyk7Cit9CisKK3ZvaWQgR0xfQVBJRU5UUlkgZ2xHZXRQZXJmTW9uaXRvckdyb3Vw
U3RyaW5nQU1EKEdMdWludCBncm91cCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIEdMc2l6ZWkgYnVmU2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgKmxlbmd0aCwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMY2hhciAqZ3JvdXBTdHJpbmcpCit7
CisgICAgcmV0dXJuIEdMX0dldFBlcmZNb25pdG9yR3JvdXBTdHJpbmdBTUQoZ3JvdXAsIGJ1ZlNp
emUsIGxlbmd0aCwgZ3JvdXBTdHJpbmcpOworfQorCit2b2lkIEdMX0FQSUVOVFJZIGdsR2V0UGVy
Zk1vbml0b3JHcm91cHNBTUQoR0xpbnQgKm51bUdyb3VwcywgR0xzaXplaSBncm91cHNTaXplLCBH
THVpbnQgKmdyb3VwcykKK3sKKyAgICByZXR1cm4gR0xfR2V0UGVyZk1vbml0b3JHcm91cHNBTUQo
bnVtR3JvdXBzLCBncm91cHNTaXplLCBncm91cHMpOworfQorCit2b2lkIEdMX0FQSUVOVFJZIGds
U2VsZWN0UGVyZk1vbml0b3JDb3VudGVyc0FNRChHTHVpbnQgbW9uaXRvciwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMYm9vbGVhbiBlbmFibGUsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVpbnQgZ3Jv
dXAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTGlu
dCBudW1Db3VudGVycywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIEdMdWludCAqY291bnRlckxpc3QpCit7CisgICAgcmV0dXJuIEdMX1NlbGVjdFBlcmZN
b25pdG9yQ291bnRlcnNBTUQobW9uaXRvciwgZW5hYmxlLCBncm91cCwgbnVtQ291bnRlcnMsIGNv
dW50ZXJMaXN0KTsKK30KKwogLy8gR0xfQU5EUk9JRF9leHRlbnNpb25fcGFja19lczMxYQogCiAv
LyBHTF9BTkdMRV9iYXNlX3ZlcnRleF9iYXNlX2luc3RhbmNlCkBAIC0yNzI5LDEyICsyODA4LDEy
IEBAIHZvaWQgR0xfQVBJRU5UUlkgZ2xEcmF3RWxlbWVudHNJbnN0YW5jZWRCYXNlVmVydGV4QmFz
ZUluc3RhbmNlQU5HTEUoR0xlbnVtIG1vZGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkgY291bnQsCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIEdMZW51bSB0eXBlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBHTHZvaWQgKmluZGljZXMs
Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIEdMc2l6ZWkgaW5zdGFuY2VDb3VudHMsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMc2l6ZWkg
aW5zdGFuY2VDb3VudCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xpbnQgYmFzZVZlcnRleCwKICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
R0x1aW50IGJhc2VJbnN0YW5jZSkKIHsKICAgICByZXR1cm4gR0xfRHJhd0VsZW1lbnRzSW5zdGFu
Y2VkQmFzZVZlcnRleEJhc2VJbnN0YW5jZUFOR0xFKAotICAgICAgICBtb2RlLCBjb3VudCwgdHlw
ZSwgaW5kaWNlcywgaW5zdGFuY2VDb3VudHMsIGJhc2VWZXJ0ZXgsIGJhc2VJbnN0YW5jZSk7Cisg
ICAgICAgIG1vZGUsIGNvdW50LCB0eXBlLCBpbmRpY2VzLCBpbnN0YW5jZUNvdW50LCBiYXNlVmVy
dGV4LCBiYXNlSW5zdGFuY2UpOwogfQogCiB2b2lkIEdMX0FQSUVOVFJZIGdsTXVsdGlEcmF3QXJy
YXlzSW5zdGFuY2VkQmFzZUluc3RhbmNlQU5HTEUoR0xlbnVtIG1vZGUsCmRpZmYgLS1naXQgYS9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliR0xFU3YyL2xpYkdMRVN2Ml9hdXRvZ2VuLmRl
ZiBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJHTEVTdjIvbGliR0xFU3YyX2F1dG9n
ZW4uZGVmCmluZGV4IGYxYjNmMjc4MTc1NWNiZGVmZjk4Y2RjMDYyYWEzMWFkODJiNzQ1YmUuLjE5
YTNhYWQ1MTJkMDg2OTA1MWE2MmRhMTZkNmM3MzBiNWZkM2ZhNmUgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJHTEVTdjIvbGliR0xFU3YyX2F1dG9nZW4uZGVmCisr
KyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJHTEVTdjIvbGliR0xFU3YyX2F1dG9n
ZW4uZGVmCkBAIC00NjAsNiArNDYwLDE5IEBAIEVYUE9SVFMKICAgICBnbFRyYW5zbGF0ZXgKICAg
ICBnbFZlcnRleFBvaW50ZXIKIAorICAgIDsgR0xfQU1EX3BlcmZvcm1hbmNlX21vbml0b3IKKyAg
ICBnbEJlZ2luUGVyZk1vbml0b3JBTUQKKyAgICBnbERlbGV0ZVBlcmZNb25pdG9yc0FNRAorICAg
IGdsRW5kUGVyZk1vbml0b3JBTUQKKyAgICBnbEdlblBlcmZNb25pdG9yc0FNRAorICAgIGdsR2V0
UGVyZk1vbml0b3JDb3VudGVyRGF0YUFNRAorICAgIGdsR2V0UGVyZk1vbml0b3JDb3VudGVySW5m
b0FNRAorICAgIGdsR2V0UGVyZk1vbml0b3JDb3VudGVyU3RyaW5nQU1ECisgICAgZ2xHZXRQZXJm
TW9uaXRvckNvdW50ZXJzQU1ECisgICAgZ2xHZXRQZXJmTW9uaXRvckdyb3VwU3RyaW5nQU1ECisg
ICAgZ2xHZXRQZXJmTW9uaXRvckdyb3Vwc0FNRAorICAgIGdsU2VsZWN0UGVyZk1vbml0b3JDb3Vu
dGVyc0FNRAorCiAgICAgOyBHTF9BTkRST0lEX2V4dGVuc2lvbl9wYWNrX2VzMzFhCiAKICAgICA7
IEdMX0FOR0xFX2Jhc2VfdmVydGV4X2Jhc2VfaW5zdGFuY2UKQEAgLTEyMjIsNiArMTIzNSw3IEBA
IEVYUE9SVFMKICAgICBFR0xfUXVlcnlTdHJpbmdpQU5HTEUKIAogICAgIDsgRUdMX0FOR0xFX3Bv
d2VyX3ByZWZlcmVuY2UKKyAgICBFR0xfRm9yY2VHUFVTd2l0Y2hBTkdMRQogICAgIEVHTF9IYW5k
bGVHUFVTd2l0Y2hBTkdMRQogICAgIEVHTF9SZWFjcXVpcmVIaWdoUG93ZXJHUFVBTkdMRQogICAg
IEVHTF9SZWxlYXNlSGlnaFBvd2VyR1BVQU5HTEUKQEAgLTEyNTksNiArMTI3MywxMCBAQCBFWFBP
UlRTCiAgICAgRUdMX1F1ZXJ5RGV2aWNlU3RyaW5nRVhUCiAgICAgRUdMX1F1ZXJ5RGlzcGxheUF0
dHJpYkVYVAogCisgICAgOyBFR0xfRVhUX2ltYWdlX2RtYV9idWZfaW1wb3J0X21vZGlmaWVycwor
ICAgIEVHTF9RdWVyeURtYUJ1ZkZvcm1hdHNFWFQKKyAgICBFR0xfUXVlcnlEbWFCdWZNb2RpZmll
cnNFWFQKKwogICAgIDsgRUdMX0VYVF9wbGF0Zm9ybV9iYXNlCiAgICAgRUdMX0NyZWF0ZVBsYXRm
b3JtUGl4bWFwU3VyZmFjZUVYVAogICAgIEVHTF9DcmVhdGVQbGF0Zm9ybVdpbmRvd1N1cmZhY2VF
WFQKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJHTEVTdjIvbGli
R0xFU3YyX25vX2NhcHR1cmVfYXV0b2dlbi5kZWYgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9z
cmMvbGliR0xFU3YyL2xpYkdMRVN2Ml9ub19jYXB0dXJlX2F1dG9nZW4uZGVmCmluZGV4IDYwZDFk
NTNhYzg4ZjBkOGRlN2NkNzhjZDMwZjc5Y2Y1MDgyMjk4MjkuLjMzOGMzNWM0NTYyYzNlZWU4ZDEy
NmZiZjE0ODVlNTI1MzdhMzhiNjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy9saWJHTEVTdjIvbGliR0xFU3YyX25vX2NhcHR1cmVfYXV0b2dlbi5kZWYKKysrIGIvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkdMRVN2Mi9saWJHTEVTdjJfbm9fY2FwdHVyZV9h
dXRvZ2VuLmRlZgpAQCAtNDYwLDYgKzQ2MCwxOSBAQCBFWFBPUlRTCiAgICAgZ2xUcmFuc2xhdGV4
CiAgICAgZ2xWZXJ0ZXhQb2ludGVyCiAKKyAgICA7IEdMX0FNRF9wZXJmb3JtYW5jZV9tb25pdG9y
CisgICAgZ2xCZWdpblBlcmZNb25pdG9yQU1ECisgICAgZ2xEZWxldGVQZXJmTW9uaXRvcnNBTUQK
KyAgICBnbEVuZFBlcmZNb25pdG9yQU1ECisgICAgZ2xHZW5QZXJmTW9uaXRvcnNBTUQKKyAgICBn
bEdldFBlcmZNb25pdG9yQ291bnRlckRhdGFBTUQKKyAgICBnbEdldFBlcmZNb25pdG9yQ291bnRl
ckluZm9BTUQKKyAgICBnbEdldFBlcmZNb25pdG9yQ291bnRlclN0cmluZ0FNRAorICAgIGdsR2V0
UGVyZk1vbml0b3JDb3VudGVyc0FNRAorICAgIGdsR2V0UGVyZk1vbml0b3JHcm91cFN0cmluZ0FN
RAorICAgIGdsR2V0UGVyZk1vbml0b3JHcm91cHNBTUQKKyAgICBnbFNlbGVjdFBlcmZNb25pdG9y
Q291bnRlcnNBTUQKKwogICAgIDsgR0xfQU5EUk9JRF9leHRlbnNpb25fcGFja19lczMxYQogCiAg
ICAgOyBHTF9BTkdMRV9iYXNlX3ZlcnRleF9iYXNlX2luc3RhbmNlCkBAIC0xMjIyLDYgKzEyMzUs
NyBAQCBFWFBPUlRTCiAgICAgRUdMX1F1ZXJ5U3RyaW5naUFOR0xFCiAKICAgICA7IEVHTF9BTkdM
RV9wb3dlcl9wcmVmZXJlbmNlCisgICAgRUdMX0ZvcmNlR1BVU3dpdGNoQU5HTEUKICAgICBFR0xf
SGFuZGxlR1BVU3dpdGNoQU5HTEUKICAgICBFR0xfUmVhY3F1aXJlSGlnaFBvd2VyR1BVQU5HTEUK
ICAgICBFR0xfUmVsZWFzZUhpZ2hQb3dlckdQVUFOR0xFCkBAIC0xMjU5LDYgKzEyNzMsMTAgQEAg
RVhQT1JUUwogICAgIEVHTF9RdWVyeURldmljZVN0cmluZ0VYVAogICAgIEVHTF9RdWVyeURpc3Bs
YXlBdHRyaWJFWFQKIAorICAgIDsgRUdMX0VYVF9pbWFnZV9kbWFfYnVmX2ltcG9ydF9tb2RpZmll
cnMKKyAgICBFR0xfUXVlcnlEbWFCdWZGb3JtYXRzRVhUCisgICAgRUdMX1F1ZXJ5RG1hQnVmTW9k
aWZpZXJzRVhUCisKICAgICA7IEVHTF9FWFRfcGxhdGZvcm1fYmFzZQogICAgIEVHTF9DcmVhdGVQ
bGF0Zm9ybVBpeG1hcFN1cmZhY2VFWFQKICAgICBFR0xfQ3JlYXRlUGxhdGZvcm1XaW5kb3dTdXJm
YWNlRVhUCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliR0xFU3Yy
L2xpYkdMRVN2Ml93aXRoX2NhcHR1cmVfYXV0b2dlbi5kZWYgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9zcmMvbGliR0xFU3YyL2xpYkdMRVN2Ml93aXRoX2NhcHR1cmVfYXV0b2dlbi5kZWYKaW5k
ZXggZTUwMzBiYWE1YTA4NTg3ZjRhYzkyN2JlODFhMGU3NGNjMDk3Y2U4NS4uZGRiMGM3MGY0MDgz
MDdlYzE2NmE4YWQ5ZjEyNjNhZDc4ZjIyZWY2ZSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL2xpYkdMRVN2Mi9saWJHTEVTdjJfd2l0aF9jYXB0dXJlX2F1dG9nZW4uZGVm
CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJHTEVTdjIvbGliR0xFU3YyX3dp
dGhfY2FwdHVyZV9hdXRvZ2VuLmRlZgpAQCAtNDYwLDYgKzQ2MCwxOSBAQCBFWFBPUlRTCiAgICAg
Z2xUcmFuc2xhdGV4CiAgICAgZ2xWZXJ0ZXhQb2ludGVyCiAKKyAgICA7IEdMX0FNRF9wZXJmb3Jt
YW5jZV9tb25pdG9yCisgICAgZ2xCZWdpblBlcmZNb25pdG9yQU1ECisgICAgZ2xEZWxldGVQZXJm
TW9uaXRvcnNBTUQKKyAgICBnbEVuZFBlcmZNb25pdG9yQU1ECisgICAgZ2xHZW5QZXJmTW9uaXRv
cnNBTUQKKyAgICBnbEdldFBlcmZNb25pdG9yQ291bnRlckRhdGFBTUQKKyAgICBnbEdldFBlcmZN
b25pdG9yQ291bnRlckluZm9BTUQKKyAgICBnbEdldFBlcmZNb25pdG9yQ291bnRlclN0cmluZ0FN
RAorICAgIGdsR2V0UGVyZk1vbml0b3JDb3VudGVyc0FNRAorICAgIGdsR2V0UGVyZk1vbml0b3JH
cm91cFN0cmluZ0FNRAorICAgIGdsR2V0UGVyZk1vbml0b3JHcm91cHNBTUQKKyAgICBnbFNlbGVj
dFBlcmZNb25pdG9yQ291bnRlcnNBTUQKKwogICAgIDsgR0xfQU5EUk9JRF9leHRlbnNpb25fcGFj
a19lczMxYQogCiAgICAgOyBHTF9BTkdMRV9iYXNlX3ZlcnRleF9iYXNlX2luc3RhbmNlCkBAIC0x
MjIyLDYgKzEyMzUsNyBAQCBFWFBPUlRTCiAgICAgRUdMX1F1ZXJ5U3RyaW5naUFOR0xFCiAKICAg
ICA7IEVHTF9BTkdMRV9wb3dlcl9wcmVmZXJlbmNlCisgICAgRUdMX0ZvcmNlR1BVU3dpdGNoQU5H
TEUKICAgICBFR0xfSGFuZGxlR1BVU3dpdGNoQU5HTEUKICAgICBFR0xfUmVhY3F1aXJlSGlnaFBv
d2VyR1BVQU5HTEUKICAgICBFR0xfUmVsZWFzZUhpZ2hQb3dlckdQVUFOR0xFCkBAIC0xMjU5LDYg
KzEyNzMsMTAgQEAgRVhQT1JUUwogICAgIEVHTF9RdWVyeURldmljZVN0cmluZ0VYVAogICAgIEVH
TF9RdWVyeURpc3BsYXlBdHRyaWJFWFQKIAorICAgIDsgRUdMX0VYVF9pbWFnZV9kbWFfYnVmX2lt
cG9ydF9tb2RpZmllcnMKKyAgICBFR0xfUXVlcnlEbWFCdWZGb3JtYXRzRVhUCisgICAgRUdMX1F1
ZXJ5RG1hQnVmTW9kaWZpZXJzRVhUCisKICAgICA7IEVHTF9FWFRfcGxhdGZvcm1fYmFzZQogICAg
IEVHTF9DcmVhdGVQbGF0Zm9ybVBpeG1hcFN1cmZhY2VFWFQKICAgICBFR0xfQ3JlYXRlUGxhdGZv
cm1XaW5kb3dTdXJmYWNlRVhUCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9z
cmMvbGliR0xFU3YyL3Byb2NfdGFibGVfZWdsX2F1dG9nZW4uY3BwIGIvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL2xpYkdMRVN2Mi9wcm9jX3RhYmxlX2VnbF9hdXRvZ2VuLmNwcAppbmRleCBj
OTZlNWIzNjE1MDBmYWE3MDc1NzEzOTIxZTMwOTZjM2MwZDQwNmNjLi41ZGUzMDY1ZjQ4ODA3M2M3
NDkyMjU5YjdkMGNiZWE1YzkyOWFiMDk1IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9zcmMvbGliR0xFU3YyL3Byb2NfdGFibGVfZWdsX2F1dG9nZW4uY3BwCisrKyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJHTEVTdjIvcHJvY190YWJsZV9lZ2xfYXV0b2dlbi5j
cHAKQEAgLTYyLDYgKzYyLDcgQEAgY29uc3QgUHJvY0VudHJ5IGdfcHJvY1RhYmxlW10gPSB7CiAg
ICAgeyJlZ2xEZXN0cm95U3luY0tIUiIsIFAoRUdMX0Rlc3Ryb3lTeW5jS0hSKX0sCiAgICAgeyJl
Z2xEdXBOYXRpdmVGZW5jZUZEQU5EUk9JRCIsIFAoRUdMX0R1cE5hdGl2ZUZlbmNlRkRBTkRST0lE
KX0sCiAgICAgeyJlZ2xFeHBvcnRWa0ltYWdlQU5HTEUiLCBQKEVHTF9FeHBvcnRWa0ltYWdlQU5H
TEUpfSwKKyAgICB7ImVnbEZvcmNlR1BVU3dpdGNoQU5HTEUiLCBQKEVHTF9Gb3JjZUdQVVN3aXRj
aEFOR0xFKX0sCiAgICAgeyJlZ2xHZXRDb21wb3NpdG9yVGltaW5nQU5EUk9JRCIsIFAoRUdMX0dl
dENvbXBvc2l0b3JUaW1pbmdBTkRST0lEKX0sCiAgICAgeyJlZ2xHZXRDb21wb3NpdG9yVGltaW5n
U3VwcG9ydGVkQU5EUk9JRCIsIFAoRUdMX0dldENvbXBvc2l0b3JUaW1pbmdTdXBwb3J0ZWRBTkRS
T0lEKX0sCiAgICAgeyJlZ2xHZXRDb25maWdBdHRyaWIiLCBQKEVHTF9HZXRDb25maWdBdHRyaWIp
fSwKQEAgLTEwMSw2ICsxMDIsOCBAQCBjb25zdCBQcm9jRW50cnkgZ19wcm9jVGFibGVbXSA9IHsK
ICAgICB7ImVnbFF1ZXJ5RGV2aWNlU3RyaW5nRVhUIiwgUChFR0xfUXVlcnlEZXZpY2VTdHJpbmdF
WFQpfSwKICAgICB7ImVnbFF1ZXJ5RGlzcGxheUF0dHJpYkFOR0xFIiwgUChFR0xfUXVlcnlEaXNw
bGF5QXR0cmliQU5HTEUpfSwKICAgICB7ImVnbFF1ZXJ5RGlzcGxheUF0dHJpYkVYVCIsIFAoRUdM
X1F1ZXJ5RGlzcGxheUF0dHJpYkVYVCl9LAorICAgIHsiZWdsUXVlcnlEbWFCdWZGb3JtYXRzRVhU
IiwgUChFR0xfUXVlcnlEbWFCdWZGb3JtYXRzRVhUKX0sCisgICAgeyJlZ2xRdWVyeURtYUJ1Zk1v
ZGlmaWVyc0VYVCIsIFAoRUdMX1F1ZXJ5RG1hQnVmTW9kaWZpZXJzRVhUKX0sCiAgICAgeyJlZ2xR
dWVyeVN0cmVhbUtIUiIsIFAoRUdMX1F1ZXJ5U3RyZWFtS0hSKX0sCiAgICAgeyJlZ2xRdWVyeVN0
cmVhbXU2NEtIUiIsIFAoRUdMX1F1ZXJ5U3RyZWFtdTY0S0hSKX0sCiAgICAgeyJlZ2xRdWVyeVN0
cmluZyIsIFAoRUdMX1F1ZXJ5U3RyaW5nKX0sCkBAIC0xNDIsNiArMTQ1LDcgQEAgY29uc3QgUHJv
Y0VudHJ5IGdfcHJvY1RhYmxlW10gPSB7CiAgICAgeyJnbEFscGhhRnVuYyIsIFAoR0xfQWxwaGFG
dW5jKX0sCiAgICAgeyJnbEFscGhhRnVuY3giLCBQKEdMX0FscGhhRnVuY3gpfSwKICAgICB7Imds
QXR0YWNoU2hhZGVyIiwgUChHTF9BdHRhY2hTaGFkZXIpfSwKKyAgICB7ImdsQmVnaW5QZXJmTW9u
aXRvckFNRCIsIFAoR0xfQmVnaW5QZXJmTW9uaXRvckFNRCl9LAogICAgIHsiZ2xCZWdpblF1ZXJ5
IiwgUChHTF9CZWdpblF1ZXJ5KX0sCiAgICAgeyJnbEJlZ2luUXVlcnlFWFQiLCBQKEdMX0JlZ2lu
UXVlcnlFWFQpfSwKICAgICB7ImdsQmVnaW5UcmFuc2Zvcm1GZWVkYmFjayIsIFAoR0xfQmVnaW5U
cmFuc2Zvcm1GZWVkYmFjayl9LApAQCAtMjYwLDYgKzI2NCw3IEBAIGNvbnN0IFByb2NFbnRyeSBn
X3Byb2NUYWJsZVtdID0gewogICAgIHsiZ2xEZWxldGVGcmFtZWJ1ZmZlcnMiLCBQKEdMX0RlbGV0
ZUZyYW1lYnVmZmVycyl9LAogICAgIHsiZ2xEZWxldGVGcmFtZWJ1ZmZlcnNPRVMiLCBQKEdMX0Rl
bGV0ZUZyYW1lYnVmZmVyc09FUyl9LAogICAgIHsiZ2xEZWxldGVNZW1vcnlPYmplY3RzRVhUIiwg
UChHTF9EZWxldGVNZW1vcnlPYmplY3RzRVhUKX0sCisgICAgeyJnbERlbGV0ZVBlcmZNb25pdG9y
c0FNRCIsIFAoR0xfRGVsZXRlUGVyZk1vbml0b3JzQU1EKX0sCiAgICAgeyJnbERlbGV0ZVByb2dy
YW0iLCBQKEdMX0RlbGV0ZVByb2dyYW0pfSwKICAgICB7ImdsRGVsZXRlUHJvZ3JhbVBpcGVsaW5l
cyIsIFAoR0xfRGVsZXRlUHJvZ3JhbVBpcGVsaW5lcyl9LAogICAgIHsiZ2xEZWxldGVQcm9ncmFt
UGlwZWxpbmVzRVhUIiwgUChHTF9EZWxldGVQcm9ncmFtUGlwZWxpbmVzRVhUKX0sCkBAIC0zMzMs
NiArMzM4LDcgQEAgY29uc3QgUHJvY0VudHJ5IGdfcHJvY1RhYmxlW10gPSB7CiAgICAgeyJnbEVu
YWJsZWkiLCBQKEdMX0VuYWJsZWkpfSwKICAgICB7ImdsRW5hYmxlaUVYVCIsIFAoR0xfRW5hYmxl
aUVYVCl9LAogICAgIHsiZ2xFbmFibGVpT0VTIiwgUChHTF9FbmFibGVpT0VTKX0sCisgICAgeyJn
bEVuZFBlcmZNb25pdG9yQU1EIiwgUChHTF9FbmRQZXJmTW9uaXRvckFNRCl9LAogICAgIHsiZ2xF
bmRRdWVyeSIsIFAoR0xfRW5kUXVlcnkpfSwKICAgICB7ImdsRW5kUXVlcnlFWFQiLCBQKEdMX0Vu
ZFF1ZXJ5RVhUKX0sCiAgICAgeyJnbEVuZFRyYW5zZm9ybUZlZWRiYWNrIiwgUChHTF9FbmRUcmFu
c2Zvcm1GZWVkYmFjayl9LApAQCAtMzY3LDYgKzM3Myw3IEBAIGNvbnN0IFByb2NFbnRyeSBnX3By
b2NUYWJsZVtdID0gewogICAgIHsiZ2xHZW5GZW5jZXNOViIsIFAoR0xfR2VuRmVuY2VzTlYpfSwK
ICAgICB7ImdsR2VuRnJhbWVidWZmZXJzIiwgUChHTF9HZW5GcmFtZWJ1ZmZlcnMpfSwKICAgICB7
ImdsR2VuRnJhbWVidWZmZXJzT0VTIiwgUChHTF9HZW5GcmFtZWJ1ZmZlcnNPRVMpfSwKKyAgICB7
ImdsR2VuUGVyZk1vbml0b3JzQU1EIiwgUChHTF9HZW5QZXJmTW9uaXRvcnNBTUQpfSwKICAgICB7
ImdsR2VuUHJvZ3JhbVBpcGVsaW5lcyIsIFAoR0xfR2VuUHJvZ3JhbVBpcGVsaW5lcyl9LAogICAg
IHsiZ2xHZW5Qcm9ncmFtUGlwZWxpbmVzRVhUIiwgUChHTF9HZW5Qcm9ncmFtUGlwZWxpbmVzRVhU
KX0sCiAgICAgeyJnbEdlblF1ZXJpZXMiLCBQKEdMX0dlblF1ZXJpZXMpfSwKQEAgLTQ0NSw2ICs0
NTIsMTIgQEAgY29uc3QgUHJvY0VudHJ5IGdfcHJvY1RhYmxlW10gPSB7CiAgICAgeyJnbEdldE9i
amVjdExhYmVsS0hSIiwgUChHTF9HZXRPYmplY3RMYWJlbEtIUil9LAogICAgIHsiZ2xHZXRPYmpl
Y3RQdHJMYWJlbCIsIFAoR0xfR2V0T2JqZWN0UHRyTGFiZWwpfSwKICAgICB7ImdsR2V0T2JqZWN0
UHRyTGFiZWxLSFIiLCBQKEdMX0dldE9iamVjdFB0ckxhYmVsS0hSKX0sCisgICAgeyJnbEdldFBl
cmZNb25pdG9yQ291bnRlckRhdGFBTUQiLCBQKEdMX0dldFBlcmZNb25pdG9yQ291bnRlckRhdGFB
TUQpfSwKKyAgICB7ImdsR2V0UGVyZk1vbml0b3JDb3VudGVySW5mb0FNRCIsIFAoR0xfR2V0UGVy
Zk1vbml0b3JDb3VudGVySW5mb0FNRCl9LAorICAgIHsiZ2xHZXRQZXJmTW9uaXRvckNvdW50ZXJT
dHJpbmdBTUQiLCBQKEdMX0dldFBlcmZNb25pdG9yQ291bnRlclN0cmluZ0FNRCl9LAorICAgIHsi
Z2xHZXRQZXJmTW9uaXRvckNvdW50ZXJzQU1EIiwgUChHTF9HZXRQZXJmTW9uaXRvckNvdW50ZXJz
QU1EKX0sCisgICAgeyJnbEdldFBlcmZNb25pdG9yR3JvdXBTdHJpbmdBTUQiLCBQKEdMX0dldFBl
cmZNb25pdG9yR3JvdXBTdHJpbmdBTUQpfSwKKyAgICB7ImdsR2V0UGVyZk1vbml0b3JHcm91cHNB
TUQiLCBQKEdMX0dldFBlcmZNb25pdG9yR3JvdXBzQU1EKX0sCiAgICAgeyJnbEdldFBvaW50ZXJ2
IiwgUChHTF9HZXRQb2ludGVydil9LAogICAgIHsiZ2xHZXRQb2ludGVydktIUiIsIFAoR0xfR2V0
UG9pbnRlcnZLSFIpfSwKICAgICB7ImdsR2V0UG9pbnRlcnZSb2J1c3RBTkdMRVJvYnVzdEFOR0xF
IiwgUChHTF9HZXRQb2ludGVydlJvYnVzdEFOR0xFUm9idXN0QU5HTEUpfSwKQEAgLTc4NCw2ICs3
OTcsNyBAQCBjb25zdCBQcm9jRW50cnkgZ19wcm9jVGFibGVbXSA9IHsKICAgICB7ImdsU2NhbGVm
IiwgUChHTF9TY2FsZWYpfSwKICAgICB7ImdsU2NhbGV4IiwgUChHTF9TY2FsZXgpfSwKICAgICB7
ImdsU2Npc3NvciIsIFAoR0xfU2Npc3Nvcil9LAorICAgIHsiZ2xTZWxlY3RQZXJmTW9uaXRvckNv
dW50ZXJzQU1EIiwgUChHTF9TZWxlY3RQZXJmTW9uaXRvckNvdW50ZXJzQU1EKX0sCiAgICAgeyJn
bFNlbWFwaG9yZVBhcmFtZXRlcnVpNjR2RVhUIiwgUChHTF9TZW1hcGhvcmVQYXJhbWV0ZXJ1aTY0
dkVYVCl9LAogICAgIHsiZ2xTZXRGZW5jZU5WIiwgUChHTF9TZXRGZW5jZU5WKX0sCiAgICAgeyJn
bFNoYWRlTW9kZWwiLCBQKEdMX1NoYWRlTW9kZWwpfSwKQEAgLTkzMiw1ICs5NDYsNSBAQCBjb25z
dCBQcm9jRW50cnkgZ19wcm9jVGFibGVbXSA9IHsKICAgICB7ImdsV2FpdFN5bmMiLCBQKEdMX1dh
aXRTeW5jKX0sCiAgICAgeyJnbFdlaWdodFBvaW50ZXJPRVMiLCBQKEdMX1dlaWdodFBvaW50ZXJP
RVMpfX07CiAKLWNvbnN0IHNpemVfdCBnX251bVByb2NzID0gODk5OworY29uc3Qgc2l6ZV90IGdf
bnVtUHJvY3MgPSA5MTM7CiB9ICAvLyBuYW1lc3BhY2UgZWdsCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvYW5nbGVfZW5kMmVuZF90ZXN0cy5nbmkgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvYW5nbGVfZW5kMmVuZF90ZXN0cy5nbmkKaW5k
ZXggYzMzNjhlNmM5MDYwMTFhMDY0M2U0Mjg3MDRmNDg4NzIwODU5NGNhNC4uOTU3NGM5YjhkMjFh
NWExZDgwODI0MzU3OWJkZmMyMDBjMmU4OWQ0YiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL3Rlc3RzL2FuZ2xlX2VuZDJlbmRfdGVzdHMuZ25pCisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9hbmdsZV9lbmQyZW5kX3Rlc3RzLmduaQpAQCAtMTUw
LDYgKzE1MCw3IEBAIGFuZ2xlX2VuZDJlbmRfdGVzdHNfc291cmNlcyA9IFsKICAgImdsX3Rlc3Rz
L1VucGFja1Jvd0xlbmd0aC5jcHAiLAogICAiZ2xfdGVzdHMvVmVydGV4QXR0cmlidXRlVGVzdC5j
cHAiLAogICAiZ2xfdGVzdHMvVmlld3BvcnRUZXN0LmNwcCIsCisgICJnbF90ZXN0cy9WdWxrYW5Q
ZXJmb3JtYW5jZUNvdW50ZXJUZXN0LmNwcCIsCiAgICJnbF90ZXN0cy9XRUJHTFZpZGVvVGV4dHVy
ZVRlc3QuY3BwIiwKICAgImdsX3Rlc3RzL1dlYkdMQ29tcGF0aWJpbGl0eVRlc3QuY3BwIiwKICAg
ImdsX3Rlc3RzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVBdmFpbGFiaWxpdHlUZXN0LmNwcCIsCkBA
IC0xODcsMTAgKzE4OCwxMyBAQCBhbmdsZV9lbmQyZW5kX3Rlc3RzX3NvdXJjZXMgPSBbCiAgICJ0
ZXN0X3V0aWxzL0FOR0xFVGVzdC5oIiwKICAgInRlc3RfdXRpbHMvTXVsdGl2aWV3VGVzdC5jcHAi
LAogICAidGVzdF91dGlscy9NdWx0aXZpZXdUZXN0LmgiLAorICAidGVzdF91dGlscy9zeXN0ZW1f
aW5mb191dGlsLmNwcCIsCisgICJ0ZXN0X3V0aWxzL3N5c3RlbV9pbmZvX3V0aWwuaCIsCiBdCiBh
bmdsZV9lbmQyZW5kX3Rlc3RzX21hY19zb3VyY2VzID0gWwogICAiZWdsX3Rlc3RzL0VHTERldmlj
ZUNHTFRlc3QuY3BwIiwKICAgImVnbF90ZXN0cy9FR0xJT1N1cmZhY2VDbGllbnRCdWZmZXJUZXN0
LmNwcCIsCisgICJlZ2xfdGVzdHMvRUdMUG93ZXJQcmVmZXJlbmNlVGVzdC5jcHAiLAogICAiZWds
X3Rlc3RzL0VHTFN1cmZhY2VUZXN0TWFjLm1tIiwKICAgImdsX3Rlc3RzL0ltYWdlVGVzdE1ldGFs
Lm1tIiwKIF0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9h
bmdsZV9lbmQyZW5kX3Rlc3RzX2V4cGVjdGF0aW9ucy50eHQgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9zcmMvdGVzdHMvYW5nbGVfZW5kMmVuZF90ZXN0c19leHBlY3RhdGlvbnMudHh0CmluZGV4
IDA4NmExY2YwOGQ0MmVkOTc1NGU3MjljNzI0ZGFhZTliMDdmZjllNzEuLjgxMGIwZDMzYzhhNzU3
YzQ4NWMxNTdmMDUxNTk2ZWU1NTQ1OWM5MzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3NyYy90ZXN0cy9hbmdsZV9lbmQyZW5kX3Rlc3RzX2V4cGVjdGF0aW9ucy50eHQKKysr
IGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2FuZ2xlX2VuZDJlbmRfdGVzdHNf
ZXhwZWN0YXRpb25zLnR4dApAQCAtMTUwLDYgKzE1MCw3IEBACiA2NjQzIE1BQyBBTUQgT1BFTkdM
IDogVHJhbnNmb3JtRmVlZGJhY2tUZXN0LlRyYW5zZm9ybUZlZWRiYWNrUXVlcnlQYXVzZWREcmF3
VGhlblJlc3VtZS8qID0gU0tJUAogNjY0MyBNQUMgQU1EIE9QRU5HTCA6IFRyYW5zZm9ybUZlZWRi
YWNrVGVzdC5UcmFuc2Zvcm1GZWVkYmFja1BhdXNlZERyYXdUaGVuUmVzdW1lLyogPSBTS0lQCiA2
NzM4IE1BQyBBTUQgT1BFTkdMIDogVGV4dHVyZTNEVGVzdEVTMy5QaXhlbFVucGFja1N0YXRlVGV4
KiA9IFNLSVAKKzEyOTY0NjcgTUFDIE9QRU5HTCA6IFZlcnRleEF0dHJpYnV0ZVRlc3RFUzMuZW1w
dHlCdWZmZXIvKiA9IFNLSVAKIAogLy8gRmFpbHVyZXMgZnJvbSBUcmFuc2Zvcm0gRmVlZGJhY2sg
RW5hYmxlbWVudC4gUGFzc2VzIG9uIEJpZ1N1cgogNjQwNyBNQUMgTlZJRElBIE1FVEFMIDogVHJh
bnNmb3JtRmVlZGJhY2tUZXN0Lk9wdGltaXplZFZhcnlpbmdzL0VTM19NZXRhbCA9IFNLSVAKQEAg
LTE5Miw2ICsxOTMsMTEgQEAKIDY0MTggTUFDIEFQUExFIE1FVEFMIDogVW5pZm9ybUJsb2NrV2l0
aE9uZUxhcmdlQXJyYXlNZW1iZXJUZXN0Lk1lbWJlclR5cGVJc01hdHJpeEFuZEluc3RhbmNlZC9F
UzNfTWV0YWwgPSBTS0lQCiA2NDE4IE1BQyBBUFBMRSBNRVRBTCA6IFVuaWZvcm1CbG9ja1dpdGhP
bmVMYXJnZUFycmF5TWVtYmVyVGVzdC5NZW1iZXJUeXBlSXNTdHJ1Y3RBbmRJbnN0YW5jZWRBcnJh
eS9FUzNfTWV0YWwgPSBTS0lQCiAKKzcwNzkgTUFDIE1FVEFMIElOVEVMIDogTXVsdGlzYW1wbGVS
ZXNvbHZlVGVzdC5SZXNvbHZlRDMyRlM4RjRTYW1wbGVzL0VTM19NZXRhbCA9IFNLSVAKKzcwNzkg
TUFDIE1FVEFMIElOVEVMIDogTXVsdGlzYW1wbGVSZXNvbHZlVGVzdC5SZXNvbHZlRDI0UzhTYW1w
bGVzL0VTM19NZXRhbCA9IFNLSVAKKzcwNzkgTUFDIE1FVEFMIElOVEVMIDogTXVsdGlzYW1wbGVS
ZXNvbHZlVGVzdC5SZXNvbHZlRDMyRlNhbXBsZXMvRVMzX01ldGFsID0gU0tJUAorNzA3OSBNQUMg
TUVUQUwgSU5URUwgOiBNdWx0aXNhbXBsZVJlc29sdmVUZXN0LlJlc29sdmVEMjRTYW1wbGVzL0VT
M19NZXRhbCA9IFNLSVAKKzcwNzkgTUFDIE1FVEFMIElOVEVMIDogTXVsdGlzYW1wbGVSZXNvbHZl
VGVzdC5SZXNvbHZlRDE2U2FtcGxlcy9FUzNfTWV0YWwgPSBTS0lQCiAKIDQ5MDggTUFDIE1FVEFM
IElOVEVMIDogQmxpdEZyYW1lYnVmZmVyVGVzdC5NdWx0aXNhbXBsZURlcHRoLyogPSBTS0lQCiA0
OTA4IE1BQyBNRVRBTCBBTUQgOiBCbGl0RnJhbWVidWZmZXJUZXN0Lk11bHRpc2FtcGxlRGVwdGgv
KiA9IFNLSVAKQEAgLTI1MSwxMSArMjU3LDIxIEBACiAzODQxIFdJTiBEM0QxMSA6IEdMU0xUZXN0
X0VTMzEuQm9vbEluSW50ZXJmYWNlQmxvY2tzLyogPSBTS0lQCiAvLyBNaXN0cmFuc2xhdGlvbgog
NjIxNiBXSU4gRDNEMTEgOiBHTFNMVGVzdF9FUzMxLlN0b3JhZ2VCdWZmZXJCb29sVmVjdG9yUGFz
c2VkVG9GdW5jdGlvbnMvKiA9IFNLSVAKKy8vIEQzRCBkb2VzIG5vdCBzdXBwb3J0IGNvbXByZXNz
ZWQgdGV4dHVyZXMgd2hlcmUgdGhlIGJhc2UgbWlwIGxldmVsIGlzIG5vdCBhIG11bHRpcGxlIG9m
IDQKKzQ4NDEgV0lOIEQzRDkgOiBEWFQxQ29tcHJlc3NlZFRleHR1cmVUZXN0Lk5vbkJsb2NrU2l6
ZXNNaXBMZXZlbHMvKiA9IFNLSVAKKzQ4NDEgV0lOIEQzRDExIDogRFhUMUNvbXByZXNzZWRUZXh0
dXJlVGVzdC5Ob25CbG9ja1NpemVzTWlwTGV2ZWxzLyogPSBTS0lQCis3MTA5IFdJTiBEM0QxMSA6
IENsZWFyVGVzdFJHQl9FUzMuKi8qID0gU0tJUAorNzExMyBXSU4gRDNEOSA6IEdMU0xUZXN0Lkxv
b3BCb2R5RW5kaW5nSW5CcmFuY2gqLyogPSBTS0lQCiAKIC8vIEFuZHJvaWQKIDYwOTUgQU5EUk9J
RCBHTEVTIDogR0xTTFRlc3RfRVMzLkluaXRHbG9iYWxDb21wbGV4Q29uc3RhbnQvKiA9IFNLSVAK
IDYxMTYgQU5EUk9JRCBHTEVTIDogR0xTTFRlc3RMb29wcy5Gb3JOb0NvbmRpdGlvbi8qID0gU0tJ
UAogNjIzNyBBTkRST0lEIEdMRVMgOiBCdWZmZXJEYXRhVGVzdEVTMy5EcmF3V2l0aE5vdENhbGxp
bmdCdWZmZXJEYXRhLyogPSBTS0lQCis3MDU5IEFORFJPSUQgVlVMS0FOIDogRUdMU3VyZmFjZVRl
c3QuUmVzaXplV2luZG93V2l0aERyYXcvKiA9IFNLSVAKKzcwNTkgQU5EUk9JRCA6IEVHTFJlYWRp
bmVzc0NoZWNrVGVzdC5Jc1J1bm5pbmdPbkFOR0xFLyogPSBTS0lQCis3MDU5IEFORFJPSUQgOiBF
R0xSZWFkaW5lc3NDaGVja1Rlc3QuR2V0UHJvY0FkZHJlc3NOZWdhdGl2ZVRlc3QvKiA9IFNLSVAK
KzcwNTkgQU5EUk9JRCA6IEVHTFJlYWRpbmVzc0NoZWNrVGVzdC5IYXNHZXRQbGF0Zm9ybURpc3Bs
YXlFWFQvKiA9IFNLSVAKKzcwNTkgQU5EUk9JRCA6IEVHTENvbnRleHRTaGFyaW5nVGVzdE5vU3lu
Y1RleHR1cmVVcGxvYWRzLk5vU3luYy8qID0gU0tJUAogCiAvLyBSZWFkaW5nIGJhY2sgdGhlIGNv
bnRlbnRzIG9mIGFuIFJHQlggaW1hZ2UgaW5pdGlhbGl6ZWQgd2l0aCBub24tMjU1IGFscGhhIHJl
dHVybnMgdGhlIG9yaWdpbmFsIGFscGhhIChpbnN0ZWFkIG9mIDI1NSkKIDY0NzIgQU5EUk9JRCBH
TEVTIDogSW1hZ2VUZXN0RVMzLlJHQlhBSEJJbXBvcnRUaGVuVXBsb2FkLyogPSBTS0lQCkBAIC0z
NzcsNiArMzkzLDcgQEAKIDYxNjcgUElYRUw0T1JYTCBHTEVTIDogRGVwdGhTdGVuY2lsVGVzdEVT
My5GcmFtZWJ1ZmZlckNsZWFyVGhlblN0ZW5jaWxBdHRhY2hlZFRoZW5TdGVuY2lsVGVzdFN0YXRl
LyogPSBTS0lQCiA2MTY3IFBJWEVMNE9SWEwgR0xFUyA6IERlcHRoU3RlbmNpbFRlc3RFUzMuRnJh
bWVidWZmZXJDbGVhclRoZW5TdGVuY2lsVGVzdFN0YXRlVGhlblN0ZW5jaWxBdHRhY2hlZC8qID0g
U0tJUAogNjE2NyBQSVhFTDRPUlhMIEdMRVMgOiBEZXB0aFN0ZW5jaWxUZXN0RVMzLlN0ZW5jaWxU
ZXN0U3RhdGVUaGVuRnJhbWVidWZmZXJDbGVhclRoZW5TdGVuY2lsQXR0YWNoZWQvKiA9IFNLSVAK
KzEyOTY0NjcgUElYRUw0T1JYTCBHTEVTIDogVmVydGV4QXR0cmlidXRlVGVzdEVTMy5lbXB0eUJ1
ZmZlci8qID0gU0tJUAogCiAvLyBJbnRlcm5hbCBkcml2ZXIgZmFpbHVyZXMgb24gYm90aCBHTEVT
IGFuZCBWdWxrYW4KIDM4MzkgTkVYVVM1WCA6IEdMU0xUZXN0X0VTMzEuVHlwZXNVc2VkSW5EaWZm
ZXJlbnRCbG9ja1N0b3JhZ2VzLyogPSBTS0lQCkBAIC00MTksNiArNDM2LDkgQEAKIDY5MzEgUElY
RUw2IFZVTEtBTiA6IFRyYW5zZm9ybUZlZWRiYWNrVGVzdElPQmxvY2tzLlNlcGFyYXRlLyogPSBT
S0lQCiA2OTMxIFBJWEVMNiBWVUxLQU4gOiBXZWJHTENvbXBhdGliaWxpdHlUZXN0LkZyYW1lYnVm
ZmVyRmxvYXRDb2xvckF0dGFjaG1lbnRNUlQvKiA9IFNLSVAKIDcwMDQgUElYRUw2IFZVTEtBTiA6
IEVHTENvbnRleHRTaGFyaW5nVGVzdE5vU3luY1RleHR1cmVVcGxvYWRzLk5vU3luYy8qID0gU0tJ
UAorNzA5NiBQSVhFTDYgVlVMS0FOIDogVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdC5NYXBw
aW5nR3B1UmVhZE9ubHlCdWZmZXJHaG9zdHNCdWZmZXIvKiA9IFNLSVAKKzcwOTYgUElYRUw2IFZV
TEtBTiA6IFZ1bGthblBlcmZvcm1hbmNlQ291bnRlclRlc3QuQ2xlYXJUaGVuU2Npc3NvcmVkRHJh
dy8qID0gU0tJUAorNzA5NiBQSVhFTDYgVlVMS0FOIDogVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVy
VGVzdC5SZWFkT25seURlcHRoU3RlbmNpbEZlZWRiYWNrTG9vcFVzZXNTaW5nbGVSZW5kZXJQYXNz
LyogPSBTS0lQCiAKIC8vIEFNRCB3aW5kb3dzIGZhaWx1cmVzLiAgVGhlIEdQVSBhbmQgZHJpdmVy
IG9uIG91ciBib3RzIGFyZSB2ZXJ5IG9sZCBhbmQgYnVnZ3kuCiAvLyBodHRwOi8vY3JidWcuY29t
LzEyMjQ5OTYKQEAgLTQ3Niw5ICs0OTYsMTIgQEAKIC8vIEluZGV4ZWQgaW5kaXJlY3QgZHJhdyBv
ZmZzZXQgYnVnCiA2NzUxIE1FVEFMIDogTXVsdGlEcmF3SW5kaXJlY3RUZXN0Lk11bHRpRHJhd0Vs
ZW1lbnRzSW5kaXJlY3QqID0gU0tJUAogNjc1MSBEM0QxMSA6IE11bHRpRHJhd0luZGlyZWN0VGVz
dC5NdWx0aURyYXdFbGVtZW50c0luZGlyZWN0KiA9IFNLSVAKLTY3NTEgTUVUQUwgOiBEcmF3QmFz
ZVZlcnRleEJhc2VJbnN0YW5jZVRlc3QuTXVsdGlEcmF3RWxlbWVudHNJbnN0YW5jZWRCYXNlVmVy
dGV4QmFzZUluc3RhbmNlLyogPSBTS0lQCiA2NzUxIEQzRDExIDogRHJhd0Jhc2VWZXJ0ZXhCYXNl
SW5zdGFuY2VUZXN0Lk11bHRpRHJhd0VsZW1lbnRzSW5zdGFuY2VkQmFzZVZlcnRleEJhc2VJbnN0
YW5jZS8qID0gU0tJUAogCisvLyBOb24tc3RhdGljIGRyYXcgYnVnCis2OTYzIE1FVEFMIDogRHJh
d0Jhc2VWZXJ0ZXhWYXJpYW50c1Rlc3QuRHJhd0VsZW1lbnRzSW5zdGFuY2VkQmFzZVZlcnRleEJh
c2VJbnN0YW5jZS9FUzNfTWV0YWxfX0RZTkFNSUNfRFJBVyA9IFNLSVAKKzY5NjMgTUVUQUwgOiBE
cmF3QmFzZVZlcnRleFZhcmlhbnRzVGVzdC5EcmF3RWxlbWVudHNJbnN0YW5jZWRCYXNlVmVydGV4
QmFzZUluc3RhbmNlL0VTM19NZXRhbF9fU1RSRUFNX0RSQVcgPSBTS0lQCisKIC8vIEFTQU4gZmxh
a2VzIHdpdGggVnVsa2FuIC8gU3dpZnRTaGFkZXIgLyBBc3luY1F1ZXVlCiA2ODc1IEFTQU4gVlVM
S0FOIFNXSUZUU0hBREVSIDogQ29tcHV0ZVNoYWRlclRlc3QuKi9FUzNfMV9WdWxrYW5fU3dpZnRT
aGFkZXJfQXN5bmNRdWV1ZSA9IFNLSVAKIDY4NzUgU1dJRlRTSEFERVIgOiBUcmFuc2Zvcm1GZWVk
YmFja1Rlc3QuU3Bhbk11bHRpcGxlUmVuZGVyUGFzc2VzLyogPSBTS0lQCkBAIC01MTcsMyArNTQw
LDUgQEAKIC8vIE5WaWRpYSBmYWlscyBuZXcgU3dpenpsZWRDaGFpbmVkQXNzaWduSW5jcmVtZW50
IHRlc3Qgb24gR0wgYW5kIEdMRVMuCiA3MDI5IE5WSURJQSBPUEVOR0wgOiBHTFNMVGVzdC5Td2l6
emxlZENoYWluZWRBc3NpZ25JbmNyZW1lbnQvKiA9IFNLSVAKIDcwMjkgTlZJRElBIEdMRVMgOiBH
TFNMVGVzdC5Td2l6emxlZENoYWluZWRBc3NpZ25JbmNyZW1lbnQvKiA9IFNLSVAKKworNzA4NSA6
IFZ1bGthblBlcmZvcm1hbmNlQ291bnRlclRlc3QuSW52YWxpZGF0ZURyYXdEaXNhYmxlLyogPSBT
S0lQCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvYW5nbGVf
c3lzdGVtX2luZm9fdGVzdHNfbWFpbi5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
dGVzdHMvYW5nbGVfc3lzdGVtX2luZm9fdGVzdHNfbWFpbi5jcHAKaW5kZXggNGI2Yjc1ZjU5MDVl
ODk4OTI3YjAyNjI4ZDQwOGY4NDczM2MwYWU3Ni4uMTI0MzAzZTUwYjg1ZWNkNTdhMDU4MTUwNzE2
MTg5NmU2ZjQ0YzcwZCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rl
c3RzL2FuZ2xlX3N5c3RlbV9pbmZvX3Rlc3RzX21haW4uY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL3NyYy90ZXN0cy9hbmdsZV9zeXN0ZW1faW5mb190ZXN0c19tYWluLmNwcApAQCAt
NDcsNiArNDcsOCBAQCBuYW1lc3BhY2UganMgPSByYXBpZGpzb247CiAKIGJvb2wgZ0ZhaWxlZFRv
RmluZEdQVTsKIAorY29uc3RleHByIGNoYXIga1JlbmRlclRlc3RPdXRwdXREaXJbXSA9ICItLXJl
bmRlci10ZXN0LW91dHB1dC1kaXI9IjsKKwogaW50IG1haW4oaW50IGFyZ2MsIGNoYXIgKiphcmd2
KQogewogICAgIGFuZ2xlOjpTeXN0ZW1JbmZvIGluZm87CkBAIC01NCw2ICs1Niw3IEBAIGludCBt
YWluKGludCBhcmdjLCBjaGFyICoqYXJndikKICAgICBib29sIHVzZVZ1bGthbiAgICAgID0gZmFs
c2U7CiAgICAgYm9vbCBsaXN0VGVzdHMgICAgICA9IGZhbHNlOwogICAgIGJvb2wgdXNlU3dpZnRT
aGFkZXIgPSBmYWxzZTsKKyAgICBzdGQ6OnN0cmluZyBvdXRwdXRfZGlyOwogCiAgICAgZm9yIChp
bnQgYXJnID0gMTsgYXJnIDwgYXJnYzsgKythcmcpCiAgICAgewpAQCAtNjksNiArNzIsMTAgQEAg
aW50IG1haW4oaW50IGFyZ2MsIGNoYXIgKiphcmd2KQogICAgICAgICB7CiAgICAgICAgICAgICB1
c2VTd2lmdFNoYWRlciA9IHRydWU7CiAgICAgICAgIH0KKyAgICAgICAgZWxzZSBpZiAoc3Ryc3Ry
KGFyZ3ZbYXJnXSwga1JlbmRlclRlc3RPdXRwdXREaXIpKQorICAgICAgICB7CisgICAgICAgICAg
ICBvdXRwdXRfZGlyID0gYXJndlthcmddICsgc3RybGVuKGtSZW5kZXJUZXN0T3V0cHV0RGlyKTsK
KyAgICAgICAgfQogICAgIH0KIAogICAgIGlmIChsaXN0VGVzdHMpCkBAIC0xMTYsNiArMTIzLDEw
IEBAIGludCBtYWluKGludCBhcmdjLCBjaGFyICoqYXJndikKICAgICBtYWNoaW5lTW9kZWxWZXJz
aW9uLlNldFN0cmluZyhpbmZvLm1hY2hpbmVNb2RlbFZlcnNpb24uY19zdHIoKSwgYWxsb2NhdG9y
KTsKICAgICBkb2MuQWRkTWVtYmVyKCJtYWNoaW5lTW9kZWxWZXJzaW9uIiwgbWFjaGluZU1vZGVs
VmVyc2lvbiwgYWxsb2NhdG9yKTsKIAorICAgIGpzOjpWYWx1ZSBhbmRyb2lkU2RrTGV2ZWw7Cisg
ICAgYW5kcm9pZFNka0xldmVsLlNldEludChpbmZvLmFuZHJvaWRTZGtMZXZlbCk7CisgICAgZG9j
LkFkZE1lbWJlcigiYW5kcm9pZFNka0xldmVsIiwgYW5kcm9pZFNka0xldmVsLCBhbGxvY2F0b3Ip
OworCiAgICAganM6OlZhbHVlIGdwdXM7CiAgICAgZ3B1cy5TZXRBcnJheSgpOwogCkBAIC0xNTks
NiArMTcwLDE3IEBAIGludCBtYWluKGludCBhcmdjLCBjaGFyICoqYXJndikKICAgICBjb25zdCBj
aGFyICpvdXRwdXQgPSBidWZmZXIuR2V0U3RyaW5nKCk7CiAgICAgcHJpbnRmKCIlc1xuIiwgb3V0
cHV0KTsKIAorICAgIGlmICghb3V0cHV0X2Rpci5lbXB0eSgpKQorICAgIHsKKyAgICAgICAgc3Rk
OjpzdHJpbmcgb3V0cHV0RmlsZSA9IG91dHB1dF9kaXIgKyAiL2FuZ2xlX3N5c3RlbV9pbmZvLmpz
b24iOworICAgICAgICBGSUxFICpmcCAgICAgICAgICAgICAgID0gZm9wZW4ob3V0cHV0RmlsZS5j
X3N0cigpLCAidyIpOworICAgICAgICBpZiAoZnApCisgICAgICAgIHsKKyAgICAgICAgICAgIGZ3
cml0ZShvdXRwdXQsIHNpemVvZihjaGFyKSwgc3RybGVuKG91dHB1dCksIGZwKTsKKyAgICAgICAg
ICAgIGZjbG9zZShmcCk7CisgICAgICAgIH0KKyAgICB9CisKICAgICB0ZXN0aW5nOjpJbml0R29v
Z2xlVGVzdCgmYXJnYywgYXJndik7CiAgICAgcmV0dXJuIFJVTl9BTExfVEVTVFMoKTsKIH0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9hbmdsZV91bml0dGVz
dHMuZ25pIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2FuZ2xlX3VuaXR0ZXN0
cy5nbmkKaW5kZXggZGQ3MGI5ZmI2M2I3ZjMyOTViMGQyNjU0ZjhlZWEwOWQ2NDlkMTJmMy4uMjUy
YTIwNzY0MjY4OTc5NWM5MDQ2NWUxNjg4MzAzZGU5NmNmYWEyYSAxMDA2NDQKLS0tIGEvU291cmNl
L1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2FuZ2xlX3VuaXR0ZXN0cy5nbmkKKysrIGIvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2FuZ2xlX3VuaXR0ZXN0cy5nbmkKQEAgLTEw
OCw2ICsxMDgsNyBAQCBhbmdsZV91bml0dGVzdHNfY29tcGlsZXJfdGVzdHNfc291cmNlcyA9IFsK
ICAgImNvbXBpbGVyX3Rlc3RzL0ltbXV0YWJsZVN0cmluZ190ZXN0LmNwcCIsCiAgICJjb21waWxl
cl90ZXN0cy9Jbml0T3V0cHV0VmFyaWFibGVzX3Rlc3QuY3BwIiwKICAgImNvbXBpbGVyX3Rlc3Rz
L0ludGVybU5vZGVfdGVzdC5jcHAiLAorICAiY29tcGlsZXJfdGVzdHMvS0hSX2JsZW5kX2VxdWF0
aW9uX2FkdmFuY2VkX3Rlc3QuY3BwIiwKICAgImNvbXBpbGVyX3Rlc3RzL05WX2RyYXdfYnVmZmVy
c190ZXN0LmNwcCIsCiAgICJjb21waWxlcl90ZXN0cy9PRVNfc2FtcGxlX3ZhcmlhYmxlc190ZXN0
LmNwcCIsCiAgICJjb21waWxlcl90ZXN0cy9PRVNfc3RhbmRhcmRfZGVyaXZhdGl2ZXNfdGVzdC5j
cHAiLApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2FuZ2xl
X3doaXRlX2JveF90ZXN0cy5nbmkgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMv
YW5nbGVfd2hpdGVfYm94X3Rlc3RzLmduaQppbmRleCA2OWI3NjhlNDMzZWU3YTIwMjJkYmFmMmEy
MGI3NjYzMDYyZTJiNGVkLi5iNTQ3NzEzZDQ3ZGQ0NjFiYjlhMmQzMWJjNzU0NmQ2YzRiNTU2MDE3
IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvYW5nbGVfd2hp
dGVfYm94X3Rlc3RzLmduaQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMv
YW5nbGVfd2hpdGVfYm94X3Rlc3RzLmduaQpAQCAtMjIsNiArMjIsNSBAQCBhbmdsZV93aGl0ZV9i
b3hfdGVzdHNfdnVsa2FuX3NvdXJjZXMgPSBbCiAgICJnbF90ZXN0cy9WdWxrYW5Gb3JtYXRUYWJs
ZXNUZXN0LmNwcCIsCiAgICJnbF90ZXN0cy9WdWxrYW5GcmFtZWJ1ZmZlclRlc3QuY3BwIiwKICAg
ImdsX3Rlc3RzL1Z1bGthbk11bHRpdGhyZWFkaW5nVGVzdC5jcHAiLAotICAiZ2xfdGVzdHMvVnVs
a2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdC5jcHAiLAogICAiZ2xfdGVzdHMvVnVsa2FuVW5pZm9y
bVVwZGF0ZXNUZXN0LmNwcCIsCiBdCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zcmMvdGVzdHMvY2FwdHVyZV9yZXBsYXlfdGVzdHMucHkgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9zcmMvdGVzdHMvY2FwdHVyZV9yZXBsYXlfdGVzdHMucHkKaW5kZXggYTE1MDk4ZTZmY2Mx
ZjhjZDI2OTYyZDRiOTJlZjliODU5ZmY5MWVjNC4uM2JkNTEwMDM0YTlkOWFiOTBiNjBjMzkxZmFk
MzI3NzAyOWMxZjk4MyAxMDA3NTUKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rl
c3RzL2NhcHR1cmVfcmVwbGF5X3Rlc3RzLnB5CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy90ZXN0cy9jYXB0dXJlX3JlcGxheV90ZXN0cy5weQpAQCAtNDI5LDYgKzQyOSwxMCBAQCBj
bGFzcyBUZXN0QmF0Y2goKToKICAgICAgICAgICAgICdBTkdMRV9DQVBUVVJFX09VVF9ESVInOiBz
ZWxmLnRyYWNlX2ZvbGRlcl9wYXRoLAogICAgICAgICB9CiAKKyAgICAgICAgaWYgYXJncy5leHBv
c2Vfbm9uY29uZm9ybWFudF9mZWF0dXJlczoKKyAgICAgICAgICAgIGV4dHJhX2VudlsKKyAgICAg
ICAgICAgICAgICAnQU5HTEVfRkVBVFVSRV9PVkVSUklERVNfRU5BQkxFRCddICs9ICc6ZXhwb3Nl
Tm9uQ29uZm9ybWFudEV4dGVuc2lvbnNBbmRWZXJzaW9ucycKKwogICAgICAgICBlbnYgPSB7Kipv
cy5lbnZpcm9uLmNvcHkoKSwgKipleHRyYV9lbnZ9CiAKICAgICAgICAgaWYgbm90IHNlbGYuYXJn
cy5rZWVwX3RlbXBfZmlsZXM6CkBAIC00OTEsMTEgKzQ5NSwxNyBAQCBjbGFzcyBUZXN0QmF0Y2go
KToKICAgICAgICAgICAgIHJldHVybiBGYWxzZQogICAgICAgICByZXR1cm4gVHJ1ZQogCi0gICAg
ZGVmIFJ1blJlcGxheShzZWxmLCByZXBsYXlfYnVpbGRfZGlyLCByZXBsYXlfZXhlX3BhdGgsIGNo
aWxkX3Byb2Nlc3Nlc19tYW5hZ2VyLCB0ZXN0cyk6CisgICAgZGVmIFJ1blJlcGxheShzZWxmLCBy
ZXBsYXlfYnVpbGRfZGlyLCByZXBsYXlfZXhlX3BhdGgsIGNoaWxkX3Byb2Nlc3Nlc19tYW5hZ2Vy
LCB0ZXN0cywKKyAgICAgICAgICAgICAgICAgIGV4cG9zZV9ub25jb25mb3JtYW50X2ZlYXR1cmVz
KToKICAgICAgICAgZXh0cmFfZW52ID0gewogICAgICAgICAgICAgJ0FOR0xFX0NBUFRVUkVfRU5B
QkxFRCc6ICcwJywKICAgICAgICAgICAgICdBTkdMRV9GRUFUVVJFX09WRVJSSURFU19FTkFCTEVE
JzogJ2VuYWJsZV9jYXB0dXJlX2xpbWl0cycsCiAgICAgICAgIH0KKworICAgICAgICBpZiBleHBv
c2Vfbm9uY29uZm9ybWFudF9mZWF0dXJlczoKKyAgICAgICAgICAgIGV4dHJhX2VudlsKKyAgICAg
ICAgICAgICAgICAnQU5HTEVfRkVBVFVSRV9PVkVSUklERVNfRU5BQkxFRCddICs9ICc6ZXhwb3Nl
Tm9uQ29uZm9ybWFudEV4dGVuc2lvbnNBbmRWZXJzaW9ucycKKwogICAgICAgICBlbnYgPSB7Kipv
cy5lbnZpcm9uLmNvcHkoKSwgKipleHRyYV9lbnZ9CiAKICAgICAgICAgcnVuX2NtZCA9IEdldFJ1
bkNvbW1hbmQoc2VsZi5hcmdzLCByZXBsYXlfZXhlX3BhdGgpCkBAIC03NDgsNyArNzU4LDcgQEAg
ZGVmIFJ1blRlc3RzKGFyZ3MsIHdvcmtlcl9pZCwgam9iX3F1ZXVlLCByZXN1bHRfbGlzdCwgbWVz
c2FnZV9xdWV1ZSwgbG9nZ2VyLCBuaW4KICAgICAgICAgICAgICAgICBsb2dnZXIuaW5mbyhzdHIo
dGVzdF9iYXRjaC5HZXRSZXN1bHRzKCkpKQogICAgICAgICAgICAgICAgIGNvbnRpbnVlCiAgICAg
ICAgICAgICB0ZXN0X2JhdGNoLlJ1blJlcGxheShyZXBsYXlfYnVpbGRfZGlyLCByZXBsYXlfZXhl
Y19wYXRoLCBjaGlsZF9wcm9jZXNzZXNfbWFuYWdlciwKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGNvbnRpbnVlZF90ZXN0cykKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGNvbnRpbnVlZF90ZXN0cywgYXJncy5leHBvc2Vfbm9uY29uZm9ybWFudF9mZWF0dXJlcykK
ICAgICAgICAgICAgIHJlc3VsdF9saXN0LmFwcGVuZCh0ZXN0X2JhdGNoLkdldFJlc3VsdHMoKSkK
ICAgICAgICAgICAgIGxvZ2dlci5pbmZvKHN0cih0ZXN0X2JhdGNoLkdldFJlc3VsdHMoKSkpCiAg
ICAgICAgIGV4Y2VwdCBLZXlib2FyZEludGVycnVwdDoKQEAgLTExMDcsNiArMTExNywxMSBAQCBp
ZiBfX25hbWVfXyA9PSAnX19tYWluX18nOgogICAgICAgICBoZWxwPSdNYXhpbXVtIG51bWJlciBv
ZiBjb25jdXJyZW50IG5pbmphIGpvYnMgdG8gcnVuIGF0IG9uY2UuJykKICAgICBwYXJzZXIuYWRk
X2FyZ3VtZW50KCctLXh2ZmInLCBhY3Rpb249J3N0b3JlX3RydWUnLCBoZWxwPSdSdW4gd2l0aCB4
dmZiLicpCiAgICAgcGFyc2VyLmFkZF9hcmd1bWVudCgnLS1hc2FuJywgYWN0aW9uPSdzdG9yZV90
cnVlJywgaGVscD0nQnVpbGQgd2l0aCBBU0FOLicpCisgICAgcGFyc2VyLmFkZF9hcmd1bWVudCgK
KyAgICAgICAgJy1FJywKKyAgICAgICAgJy0tZXhwb3NlLW5vbmNvbmZvcm1hbnQtZmVhdHVyZXMn
LAorICAgICAgICBhY3Rpb249J3N0b3JlX3RydWUnLAorICAgICAgICBoZWxwPSdFeHBvc2Ugbm9u
LWNvbmZvcm1hbnQgZmVhdHVyZXMgdG8gYWR2ZXJ0aXNlIEdMRVMgMy4yJykKICAgICBwYXJzZXIu
YWRkX2FyZ3VtZW50KAogICAgICAgICAnLS1zaG93LWNhcHR1cmUtc3Rkb3V0JywgYWN0aW9uPSdz
dG9yZV90cnVlJywgaGVscD0nUHJpbnQgdGVzdCBzdGRvdXQgZHVyaW5nIGNhcHR1cmUuJykKICAg
ICBwYXJzZXIuYWRkX2FyZ3VtZW50KCctLWRlYnVnJywgYWN0aW9uPSdzdG9yZV90cnVlJywgaGVs
cD0nRGVidWcgYnVpbGRzIChkZWZhdWx0IGlzIFJlbGVhc2UpLicpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvY2FwdHVyZV9yZXBsYXlfdGVzdHMvY2FwdHVy
ZV9yZXBsYXlfZXhwZWN0YXRpb25zLnR4dCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90
ZXN0cy9jYXB0dXJlX3JlcGxheV90ZXN0cy9jYXB0dXJlX3JlcGxheV9leHBlY3RhdGlvbnMudHh0
CmluZGV4IDlmZWQ0NjUxZTRiZTU0MWFjYWY0ZTY1Y2Y0OTFmOWZiMWNmMTYwYzEuLmRhMzM2Mzcx
ZDEyZTA1MmU4MjI2ZDE2NzRiMzI2ZGIyZDEzMDUxZGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9jYXB0dXJlX3JlcGxheV90ZXN0cy9jYXB0dXJlX3JlcGxh
eV9leHBlY3RhdGlvbnMudHh0CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0
cy9jYXB0dXJlX3JlcGxheV90ZXN0cy9jYXB0dXJlX3JlcGxheV9leHBlY3RhdGlvbnMudHh0CkBA
IC0zMyw5ICszMyw2IEBACiAKICMgRVMyCiAKLQotNjUzOCA6IEFkZE1vY2tUZXh0dXJlTm9SZW5k
ZXJUYXJnZXRUZXN0Lk5vUHJvZ3JhbU91dHB1dFdvcmthcm91bmQvKiA9IEZMQUtZCi0KIDU4MjIg
OiBFeHRlcm5hbFdyYXBUZXN0LkNsYW1wVG9FZGdlLyogPSBDUkFTSAogNTgyMiA6IEV4dGVybmFs
V3JhcFRlc3QuTWlycm9yZWRSZXBlYXQvKiA9IENSQVNICiA1ODIyIDogRXh0ZXJuYWxXcmFwVGVz
dC5Ob1dyYXAvKiA9IENSQVNICkBAIC00OCw3ICs0NSw2IEBACiAKIDYyODYgOiBJbWFnZVRlc3Qu
U291cmNlMkRUYXJnZXQyRC8qID0gRkFJTAogNjI4NiA6IEltYWdlVGVzdC5Tb3VyY2UyRFRhcmdl
dEV4dGVybmFsLyogPSBGQUlMCi02Mjg2IDogSW1hZ2VUZXN0LlNvdXJjZTJEVGFyZ2V0MkRUYXJn
ZXRUZXh0dXJlUmVzcGVjaWZ5Q29sb3JzcGFjZS8qID0gRkxBS1kKIDYyODYgOiBJbWFnZVRlc3Qu
U291cmNlQ3ViZVRhcmdldDJELyogPSBGQUlMCiA1ODIyIDogSW1hZ2VUZXN0LlNvdXJjZUN1YmVU
YXJnZXRFeHRlcm5hbC8qID0gRkFJTAogCkBAIC02NSw3ICs2MSw2IEBACiA2MTgwIDogUGJ1ZmZl
clRlc3QuQ2xlYXJpbmcvKiA9IEZBSUwKIDYxODAgOiBQYnVmZmVyVGVzdC5UZXh0dXJlU2l6ZVJl
c2V0LyogPSBGQUlMCiAKLTYyMjAgOiBUZXh0dXJlMkRUZXN0LkRlZmluZU11bHRpcGxlTGV2ZWxz
V2l0aG91dE1pcG1hcHBpbmcvKiA9IFRJTUVPVVQKIAogNjIyMSA6IFZ1bGthbkV4dGVybmFsSW1h
Z2VUZXN0LlNob3VsZENsZWFyT3BhcXVlRmRXaXRoU2VtYXBob3Jlcy8qID0gVElNRU9VVAogNjIy
MSA6IFZ1bGthbkV4dGVybmFsSW1hZ2VUZXN0LlNob3VsZENsZWFyT3BhcXVlRmRXaXRoU2VtYXBo
b3Jlc011dGFibGVOb1N0b3JhZ2UvKiA9IFRJTUVPVVQKQEAgLTg0LDEzICs3OSw2IEBACiAjIEZh
aWxzIGJlY2F1c2Ugb2YgdW5zdXBwb3J0ZWQgY29tYmluZWQgZGVwdGgvc3RlbmNpbCBHZXRJbWFn
ZS4KIDQ2ODggQVNBTiA6IERlcHRoU3RlbmNpbFRlc3QuRGVwdGhPbmx5RW11bGF0ZWRXaXRoUGFj
a2VkLyogPSBGQUlMCiAKLSMgZmxha3kgdGVzdAotNjUxMSA6IERyYXdCdWZmZXJzVGVzdC5Vbndy
aXR0ZW5PdXRwdXRWYXJpYWJsZXNTaG91bGROb3RDcmFzaC8qID0gRkxBS1kKLTYxODAgOiBXZWJH
TENvbXBhdGliaWxpdHlUZXN0LkRyYXdFbGVtZW50c0J1ZmZlck91dE9mQm91bmRzSW5JbmRleEJ1
ZmZlci8qID0gRkxBS1kKLTYxODAgOiBJbWFnZVRlc3QuTWlwTGV2ZWxzLyogPSBGTEFLWQotNjM3
MyA6IFdlYkdMQ29tcGF0aWJpbGl0eVRlc3QuRHJhd0FycmF5c0J1ZmZlck91dE9mQm91bmRzTm9u
SW5zdGFuY2VkLyogPSBGTEFLWQotNjE4MCA6IFdlYkdMQ29tcGF0aWJpbGl0eVRlc3QuRHJhd0Vs
ZW1lbnRzQnVmZmVyT3V0T2ZCb3VuZHNJblZlcnRleEJ1ZmZlci8qID0gRkxBS1kKLQogIyBTa2lw
cGVkIGluIGVuZDJlbmQgdGVzdHMKIDYzMzYgOiBHZXRJbWFnZVRlc3QuSW5jb25zaXN0ZW50VGV4
dHVyZTJELyogPSBOT1RfUlVOCiAKQEAgLTEwOCw5ICs5Niw5IEBACiA2Mjg2IDogSW1hZ2VUZXN0
RVMzLlNvdXJjZVJlbmRlcmJ1ZmZlclRhcmdldFRleHR1cmVFeHRlcm5hbEVTU0wzLyogPSBGQUlM
CiA2NTEyIDogUm9idXN0UmVzb3VyY2VJbml0VGVzdEVTMy5CaW5kVGV4SW1hZ2UvKiA9IEZBSUwK
IDYxODAgV0lOIDogVHJhbnNmb3JtRmVlZGJhY2tUZXN0LkRyYXdXaXRob3V0VHJhbnNmb3JtRmVl
ZGJhY2tUaGVuV2l0aC8qID0gRkxBS1kKLTYxODAgOiBUcmFuc2Zvcm1GZWVkYmFja1Rlc3QuVHJh
bnNmb3JtRmVlZGJhY2tRdWVyeVBhdXNlZERyYXdUaGVuUmVzdW1lLyogPSBGTEFLWQogNjUxMyA6
IFRyYW5zZm9ybUZlZWRiYWNrVGVzdC5NdWx0aUNvbnRleHQvKiA9IEZMQUtZCi0KKzYxODAgV0lO
IDogVHJhbnNmb3JtRmVlZGJhY2tUZXN0LkJ1ZmZlck91dE9mTWVtb3J5LyogPSBGTEFLWQorNjE4
MCA6IFZlcnRleEF0dHJpYnV0ZVRlc3RFUzMuRHJhd1dpdGhVbmFsaWduZWREYXRhLyogPSBGTEFL
WQogCiA2MTgwIDogVW5pZm9ybUJ1ZmZlclRlc3QuQmxvY2tBcnJheUNvbnRhaW5pbmdBcnJheU9m
U3RydWN0cy8qID0gRkFJTAogNjE4MCA6IFVuaWZvcm1CdWZmZXJUZXN0Lk1hbnlCbG9ja3MvKiA9
IEZBSUwKQEAgLTEyNCwxNSArMTEyLDEyIEBACiA2MzE0IDogRnJhbWVidWZmZXJUZXN0X0VTMy5S
ZW5kZXJBbmRJbnZhbGlkYXRlSW1tdXRhYmxlVGV4dHVyZVdpdGhCZXlvbmRNYXhMZXZlbC8qID0g
Q1JBU0gKIDYxODAgOiBJbWFnZVRlc3RFUzMuU291cmNlQ3ViZVRhcmdldEV4dGVybmFsRVNTTDMv
KiA9IEZBSUwKIDYzMzQgOiBNaXBtYXBUZXN0RVMzLkdlbmVyYXRlTWlwbWFwQmFzZUxldmVsT3V0
T2ZSYW5nZUltbXV0YWJsZVRleHR1cmUvKiA9IENSQVNICi02MzMzIDogVGV4dHVyZTJERmxvYXRU
ZXN0RVMzLlRleHR1cmVIYWxmRmxvYXRMaW5lYXJMZWdhY3lUZXN0LyogPSBDUkFTSAotNjMzMyA6
IFRleHR1cmUyREZsb2F0VGVzdEVTMy5UZXh0dXJlSGFsZkZsb2F0U2FtcGxlTGVnYWN5VGVzdC8q
ID0gQ1JBU0gKIDYzMzQgOiBUZXh0dXJlMkRUZXN0RVMzLkltbXV0YWJsZVRleHR1cmVCYXNlTGV2
ZWxPdXRPZlJhbmdlLyogPSBDUkFTSAogNjM5OSA6IFRleHR1cmUyRFRlc3RFUzMuVGV4U3RvcmFn
ZTJEQ3ljbGVUaHJvdWdoWXV2U291cmNlc05vRGF0YS8qID0gQ1JBU0gKIDYzMzQgOiBUZXh0dXJl
MkRUZXN0RVMzLlRleHR1cmVCYXNlTGV2ZWxHcmVhdGVyVGhhbk1heExldmVsLyogPSBDUkFTSAog
NjM5OSA6IFRleHR1cmUyRFRlc3RFUzMuVGV4U3RvcmFnZTJEU2ltdWx0YW5lb3VzVXNlT2ZNdWx0
aXBsZVl1dlNvdXJjZXNOb0RhdGEvKiA9IENSQVNICiA2NDAwIDogVGV4dHVyZTJEVGVzdEVTMy5U
ZXh0dXJlQ29tcGxldGVuZXNzQ2hhbmdlc1dpdGhCYXNlTGV2ZWwvKiA9IENSQVNICiA2Mzk5IDog
VGV4dHVyZTJEVGVzdEVTMy5UZXhTdG9yYWdlMkRMYXJnZVl1dlRleHR1cmVDb3VudC8qID0gQ1JB
U0gKLTYzMTQgOiBUZXh0dXJlMkRUZXN0RVMzLlVwZGF0ZVJlbmRlclRhcmdldENhY2hlT25EZXN0
cm95VGV4U3RvcmFnZS8qID0gQ1JBU0gKIDYzMzUgREVCVUcgOiBWdWxrYW5FeHRlcm5hbEltYWdl
VGVzdC5TaG91bGRJbXBvcnRTZW1hcGhvcmVPcGFxdWVGZC8qID0gQ1JBU0gKIAogCkBAIC0xNDQs
NyArMTI5LDcgQEAKIDY1MTAgOiBGZW5jZVN5bmNUZXN0LklzU3luYy8qID0gRkxBS1kKIDY1MTAg
OiBGZW5jZVN5bmNUZXN0LkVycm9ycy8qID0gRkxBS1kKIDY1MTAgOiBGZW5jZVN5bmNUZXN0Lk11
bHRpcGxlRmVuY2VEcmF3LyogPSBGTEFLWQotNjU0MyA6IEdMU0xUZXN0X0VTMy5Db21wbGV4Q3Jv
c3NFeHByZXNzaW9uLyogPSBGTEFLWQorNjUxMCA6IEZlbmNlU3luY1Rlc3QuTnVsbExlbmd0aC8q
ID0gRkxBS1kKIAogIyBGYWlscyBhZnRlciByZWNlbnQgY29sb3JzcGFjZSBDTC4KIDY1NzggOiBJ
bWFnZVRlc3QuU291cmNlMkRUYXJnZXQyRF9Db2xvcnNwYWNlLyogPSBGQUlMCkBAIC0xNjQsOSAr
MTQ5LDggQEAKIDY1NzggOiBJbWFnZVRlc3RFUzMuU291cmNlQ3ViZVRhcmdldEV4dGVybmFsRVNT
TDNfQ29sb3JzcGFjZS8qID0gRkFJTAogNjU3OCA6IEltYWdlVGVzdEVTMy5Tb3VyY2VSZW5kZXJi
dWZmZXJUYXJnZXRUZXh0dXJlRXh0ZXJuYWxFU1NMM19Db2xvcnNwYWNlLyogPSBGQUlMCiAKLTY2
MzEgOiBQcm9ncmFtQmluYXJ5RVMzVGVzdC5TYXZlQW5kTG9hZERldGFjaGVkU2hhZGVycy8qID0g
Q1JBU0gKIDY2MzEgOiBNdWx0aXRocmVhZGluZ1Rlc3QuTXVsdGlDb250ZXh0Q3JlYXRlQW5kRGVs
ZXRlUmVzb3VyY2VzLyogPSBDUkFTSAotNjYzMSA6IE11bHRpdGhyZWFkaW5nVGVzdEVTMy5NdWx0
aXRocmVhZEZlbmNlRHJhdy8qID0gQ1JBU0gKKzY2MzEgV0lOIDogTXVsdGl0aHJlYWRpbmdUZXN0
RVMzLk11bHRpdGhyZWFkRmVuY2VEcmF3LyogPSBDUkFTSAogNjYzMSBXSU4gOiBNdWx0aXRocmVh
ZGluZ1Rlc3RFUzMuTXVsdGl0aHJlYWRGZW5jZVRleEltYWdlLyogPSBDUkFTSAogNjYzMSA6IE11
bHRpdGhyZWFkaW5nVGVzdC5NdWx0aUNvbnRleHREcmF3V2l0aFN3YXBCdWZmZXJzLyogPSBDUkFT
SAogCkBAIC0xNzksMTkgKzE2Myw3IEBACiAjIEVTM18xIENyYXNoZWQKIDYxODAgOiBFR0xNdWx0
aUNvbnRleHRUZXN0LkNvbXB1dGVTaGFkZXJPa2F5V2l0aFJlbmRlcmluZy8qID0gQ1JBU0gKIDYx
ODAgOiBFR0xNdWx0aUNvbnRleHRUZXN0LlRlc3RDb250ZXh0RGVzdHJveVNpbXBsZS8qID0gQ1JB
U0gKLTY2MTEgOiBUZXh0dXJlTXVsdGlzYW1wbGVBcnJheVdlYkdMVGVzdC5GcmFtZWJ1ZmZlckNv
bG9yQ2xlYXJBbmRCbGl0LyogPSBDUkFTSAotNjYxMSA6IFRleHR1cmVNdWx0aXNhbXBsZUFycmF5
V2ViR0xUZXN0LkZyYW1lYnVmZmVyQ29tcGxldGVuZXNzLyogPSBDUkFTSAotNjYxMSA6IFRleHR1
cmVNdWx0aXNhbXBsZUFycmF5V2ViR0xUZXN0LkludGVnZXJUZXhlbEZldGNoLyogPSBDUkFTSAot
NjYxMSA6IFRleHR1cmVNdWx0aXNhbXBsZUFycmF5V2ViR0xUZXN0LkludmFsaWRGcmFtZWJ1ZmZl
clRleHR1cmVMYXllci8qID0gQ1JBU0gKLTY2MTEgOiBUZXh0dXJlTXVsdGlzYW1wbGVBcnJheVdl
YkdMVGVzdC5TaW1wbGVUZXhlbEZldGNoLyogPSBDUkFTSAotNjYxMSA6IFRleHR1cmVNdWx0aXNh
bXBsZUFycmF5V2ViR0xUZXN0LlRleFN0b3JhZ2UzRE11bHRpc2FtcGxlLyogPSBDUkFTSAotNjYx
MSA6IFRleHR1cmVNdWx0aXNhbXBsZUFycmF5V2ViR0xUZXN0LlRleHR1cmVTaXplSW5TaGFkZXIv
KiA9IENSQVNICi02NjExIDogVGV4dHVyZU11bHRpc2FtcGxlVGVzdC5HZXRUZXhMZXZlbFBhcmFt
ZXRlci9FUzNfMSogPSBDUkFTSAotNjYxMSA6IFRleHR1cmVNdWx0aXNhbXBsZVRlc3QuTXVsdGlz
YW1wbGVUYXJnZXRGcmFtZWJ1ZmZlclRleHR1cmUyRC9FUzNfMSogPSBDUkFTSAotNjYxMSA6IFRl
eHR1cmVNdWx0aXNhbXBsZVRlc3QuUmVzb2x2ZVRvRGVmYXVsdEZyYW1lYnVmZmVyL0VTM18xKiA9
IENSQVNICi02NjExIDogVGV4dHVyZU11bHRpc2FtcGxlVGVzdC5WYWxpZGF0ZVRleHR1cmVTdG9y
YWdlTXVsdGlzYW1wbGVQYXJhbWV0ZXJzL0VTM18xKiA9IENSQVNICiA2NjA1IDogVGV4dHVyZUJ1
ZmZlclRlc3RFUzMxLk1hcFRleHR1cmVCdWZmZXJJbnZhbGlkYXRlVGhlbldyaXRlLyogPSBGQUlM
Ci02ODk1IDogQXRvbWljQ291bnRlckJ1ZmZlclRlc3QzMS5BdG9taWNDb3VudGVyQnVmZmVyUmVw
ZWF0ZWRCaW5kVW5iaW5kLyogPSBDUkFTSAogCiAjIEVTM18xIGd0ZXN0IHNraXBzCiA2MTgwIDog
R0xTTFRlc3RfRVMzMS5JbnRlcnBvbGF0ZUF0V2l0aFN3aXp6bGUvKiA9IE5PVF9SVU4KQEAgLTIx
NCw5ICsxODYsOCBAQAogCiA2ODc1IDogVHJhbnNmb3JtRmVlZGJhY2tUZXN0LlNwYW5NdWx0aXBs
ZVJlbmRlclBhc3Nlcy8qID0gTk9UX1JVTgogCi0jIFNraXAgY3Jhc2hpbmcgdGVzdHMgYWZ0ZXIg
ZW5hYmxpbmcgQU5HTEVfdGV4dHVyZV9tdWx0aXNhbXBsZQotMzU2NSA6IFRleHR1cmVNdWx0aXNh
bXBsZVRlc3QuUmVzb2x2ZVRvRGVmYXVsdEZyYW1lYnVmZmVyLyogPSBDUkFTSAotMzU2NSA6IFRl
eHR1cmVNdWx0aXNhbXBsZVRlc3QuR2V0VGV4TGV2ZWxQYXJhbWV0ZXIvKiA9IENSQVNICi0zNTY1
IDogVGV4dHVyZU11bHRpc2FtcGxlVGVzdC5NdWx0aXNhbXBsZVRhcmdldEZyYW1lYnVmZmVyVGV4
dHVyZTJELyogPSBDUkFTSAotMzU2NSA6IFRleHR1cmVNdWx0aXNhbXBsZVRlc3QuU2ltcGxlVGV4
ZWxGZXRjaC8qID0gQ1JBU0gKLTM1NjUgOiBUZXh0dXJlTXVsdGlzYW1wbGVUZXN0LlZhbGlkYXRl
VGV4dHVyZVN0b3JhZ2VNdWx0aXNhbXBsZVBhcmFtZXRlcnMvKiA9IENSQVNICisjIEdMRVMgMy4y
IHRlc3RzIHRoYXQgZmFpbCBiZWNhdXNlIG9mIG1pc3NpbmcgZmVhdHVyZXMKKzUzNjYgOiBHZW9t
ZXRyeVNoYWRlclRlc3RFUzMyLk1heEdlb21ldHJ5SW1hZ2VVbmlmb3Jtcy8qID0gQ1JBU0gKKzUz
NjYgOiBQcm9ncmFtUGlwZWxpbmVUZXN0MzIuTWF4R2VvbWV0cnlJbWFnZVVuaWZvcm1zLyogPSBD
UkFTSAorCis3MDg4IDogVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdCogPSBTS0lQX0ZPUl9D
QVBUVVJFCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvY29t
cGlsZXJfdGVzdHMvS0hSX2JsZW5kX2VxdWF0aW9uX2FkdmFuY2VkX3Rlc3QuY3BwIGIvU291cmNl
L1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2NvbXBpbGVyX3Rlc3RzL0tIUl9ibGVuZF9lcXVh
dGlvbl9hZHZhbmNlZF90ZXN0LmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41ZTcyOWI1ZjQyOWUxYTc3MGJmODNm
ZWYwYmJjYmFkM2M4M2ZmNTk2Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc3JjL3Rlc3RzL2NvbXBpbGVyX3Rlc3RzL0tIUl9ibGVuZF9lcXVhdGlvbl9hZHZhbmNl
ZF90ZXN0LmNwcApAQCAtMCwwICsxLDMyMiBAQAorLy8KKy8vIENvcHlyaWdodCAyMDIxIFRoZSBB
TkdMRSBQcm9qZWN0IEF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBVc2Ugb2YgdGhp
cyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZSBsaWNlbnNlIHRoYXQgY2Fu
IGJlCisvLyBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLy8KKy8vIEtIUl9ibGVuZF9lcXVh
dGlvbl9hZHZhbmNlZF90ZXN0LmNwcDoKKy8vICAgVGVzdCBmb3IgS0hSX2JsZW5kX2VxdWF0aW9u
X2FkdmFuY2VkIGFuZCBLSFJfYmxlbmRfZXF1YXRpb25fYWR2YW5jZWRfY29oZXJlbnQKKy8vCisK
KyNpbmNsdWRlICJ0ZXN0cy90ZXN0X3V0aWxzL1NoYWRlckV4dGVuc2lvblRlc3QuaCIKKworI2lu
Y2x1ZGUgImNvbW1vbi9QYWNrZWRFbnVtcy5oIgorCituYW1lc3BhY2UKK3sKK2NvbnN0IGNoYXIg
RVhUUHJhZ21hW10gPQorICAgICIjZXh0ZW5zaW9uIEdMX0tIUl9ibGVuZF9lcXVhdGlvbl9hZHZh
bmNlZCA6IHJlcXVpcmVcbiIKKyAgICAiI2V4dGVuc2lvbiBHTF9FWFRfc2hhZGVyX2ZyYW1lYnVm
ZmVyX2ZldGNoX25vbl9jb2hlcmVudCA6IHJlcXVpcmVcbiI7CisKKy8vIFVzZSB0aGUgbXVsdGlw
bHkgZXF1YXRpb24gZm9yIGJsZW5kaW5nCitjb25zdCBjaGFyIEVTU0wzMTBfU2ltcGxlW10gPQor
ICAgIFIiKAorICAgIHByZWNpc2lvbiBoaWdocCBmbG9hdDsKKworICAgIGxheW91dCAoYmxlbmRf
c3VwcG9ydF9tdWx0aXBseSkgb3V0OworICAgIGxheW91dCAobG9jYXRpb24gPSAwKSBvdXQgdmVj
NCBvQ29sOworCisgICAgdW5pZm9ybSB2ZWM0IHVTcmNDb2w7CisKKyAgICB2b2lkIG1haW4gKHZv
aWQpCisgICAgeworICAgICAgICBvQ29sID0gdVNyY0NvbDsKKyAgICB9KSI7CisKK2NvbnN0IGNo
YXIgRVNTTDMxMF9EZWNsYXJlZE11bHRpcGx5U2NyZWVuU2VwYXJhdGVseVtdID0KKyAgICBSIigK
KyAgICBwcmVjaXNpb24gaGlnaHAgZmxvYXQ7CisKKyAgICBsYXlvdXQgKGJsZW5kX3N1cHBvcnRf
bXVsdGlwbHkpIG91dDsKKyAgICBsYXlvdXQgKGJsZW5kX3N1cHBvcnRfc2NyZWVuKSBvdXQ7Cisg
ICAgbGF5b3V0IChsb2NhdGlvbiA9IDApIG91dCB2ZWM0IG9Db2w7CisKKyAgICB1bmlmb3JtIHZl
YzQgdVNyY0NvbDsKKworICAgIHZvaWQgbWFpbiAodm9pZCkKKyAgICB7CisgICAgICAgIG9Db2wg
PSB1U3JjQ29sOworICAgIH0pIjsKKworY29uc3QgY2hhciBFU1NMMzEwX0RlY2xhcmVkTXVsdGlw
bHlTY3JlZW5TdWNjZXNzaXZlbHlbXSA9CisgICAgUiIoCisgICAgcHJlY2lzaW9uIGhpZ2hwIGZs
b2F0OworCisgICAgbGF5b3V0IChibGVuZF9zdXBwb3J0X211bHRpcGx5LCBibGVuZF9zdXBwb3J0
X3NjcmVlbikgb3V0OworICAgIGxheW91dCAobG9jYXRpb24gPSAwKSBvdXQgdmVjNCBvQ29sOwor
CisgICAgdW5pZm9ybSB2ZWM0IHVTcmNDb2w7CisKKyAgICB2b2lkIG1haW4gKHZvaWQpCisgICAg
eworICAgICAgICBvQ29sID0gdVNyY0NvbDsKKyAgICB9KSI7CisKK2NvbnN0IGNoYXIgRVNTTDMx
MF9XaXRoX0ZyYW1lYnVmZmVyRmV0Y2hbXSA9CisgICAgUiIoCisgICAgcHJlY2lzaW9uIGhpZ2hw
IGZsb2F0OworCisgICAgbGF5b3V0IChibGVuZF9zdXBwb3J0X211bHRpcGx5KSBvdXQ7CisgICAg
bGF5b3V0IChsb2NhdGlvbiA9IDAsIG5vbmNvaGVyZW50KSBpbm91dCB2ZWM0IG9Db2w7CisKKyAg
ICB1bmlmb3JtIHZlYzQgdVNyY0NvbDsKKworICAgIHZvaWQgbWFpbiAodm9pZCkKKyAgICB7Cisg
ICAgICAgIG9Db2wgPSBtaXgob0NvbCwgdVNyY0NvbCwgMC41Zik7CisgICAgfSkiOworCitjbGFz
cyBLSFJCbGVuZEVxdWF0aW9uQWR2YW5jZWRUZXN0IDogcHVibGljIHNoOjpTaGFkZXJFeHRlbnNp
b25UZXN0Cit7CisgIHB1YmxpYzoKKyAgICB2b2lkIFNldFVwKCkgb3ZlcnJpZGUKKyAgICB7Cisg
ICAgICAgIHN0ZDo6bWFwPFNoU2hhZGVyT3V0cHV0LCBzdGQ6OnN0cmluZz4gc2hhZGVyT3V0cHV0
TGlzdCA9IHsKKyAgICAgICAgICAgIHtTSF9HTFNMXzQ1MF9DT1JFX09VVFBVVCwgIlNIX0dMU0xf
NDUwX0NPUkVfT1VUUFVUIn0sCisjaWYgZGVmaW5lZChBTkdMRV9FTkFCTEVfVlVMS0FOKQorICAg
ICAgICAgICAge1NIX1NQSVJWX1ZVTEtBTl9PVVRQVVQsICJTSF9TUElSVl9WVUxLQU5fT1VUUFVU
In0KKyNlbmRpZgorICAgICAgICB9OworCisgICAgICAgIEluaXRpYWxpemUoc2hhZGVyT3V0cHV0
TGlzdCk7CisgICAgfQorCisgICAgdm9pZCBUZWFyRG93bigpIG92ZXJyaWRlCisgICAgeworICAg
ICAgICBmb3IgKGF1dG8gc2hhZGVyT3V0cHV0VHlwZSA6IG1TaGFkZXJPdXRwdXRMaXN0KQorICAg
ICAgICB7CisgICAgICAgICAgICBEZXN0cm95Q29tcGlsZXIoc2hhZGVyT3V0cHV0VHlwZS5maXJz
dCk7CisgICAgICAgIH0KKyAgICB9CisKKyAgICB2b2lkIEluaXRpYWxpemUoc3RkOjptYXA8U2hT
aGFkZXJPdXRwdXQsIHN0ZDo6c3RyaW5nPiAmc2hhZGVyT3V0cHV0TGlzdCkKKyAgICB7CisgICAg
ICAgIG1TaGFkZXJPdXRwdXRMaXN0ID0gc3RkOjptb3ZlKHNoYWRlck91dHB1dExpc3QpOworCisg
ICAgICAgIGZvciAoYXV0byBzaGFkZXJPdXRwdXRUeXBlIDogbVNoYWRlck91dHB1dExpc3QpCisg
ICAgICAgIHsKKyAgICAgICAgICAgIHNoOjpJbml0QnVpbHRJblJlc291cmNlcygmbVJlc291cmNl
TGlzdFtzaGFkZXJPdXRwdXRUeXBlLmZpcnN0XSk7CisgICAgICAgICAgICBtQ29tcGlsZXJMaXN0
W3NoYWRlck91dHB1dFR5cGUuZmlyc3RdID0gbnVsbHB0cjsKKyAgICAgICAgfQorICAgIH0KKwor
ICAgIHZvaWQgRGVzdHJveUNvbXBpbGVyKFNoU2hhZGVyT3V0cHV0IHNoYWRlck91dHB1dFR5cGUp
CisgICAgeworICAgICAgICBpZiAobUNvbXBpbGVyTGlzdFtzaGFkZXJPdXRwdXRUeXBlXSkKKyAg
ICAgICAgeworICAgICAgICAgICAgc2g6OkRlc3RydWN0KG1Db21waWxlckxpc3Rbc2hhZGVyT3V0
cHV0VHlwZV0pOworICAgICAgICAgICAgbUNvbXBpbGVyTGlzdFtzaGFkZXJPdXRwdXRUeXBlXSA9
IG51bGxwdHI7CisgICAgICAgIH0KKyAgICB9CisKKyAgICB2b2lkIEluaXRpYWxpemVDb21waWxl
cigpCisgICAgeworICAgICAgICBmb3IgKGF1dG8gc2hhZGVyT3V0cHV0VHlwZSA6IG1TaGFkZXJP
dXRwdXRMaXN0KQorICAgICAgICB7CisgICAgICAgICAgICBJbml0aWFsaXplQ29tcGlsZXIoc2hh
ZGVyT3V0cHV0VHlwZS5maXJzdCk7CisgICAgICAgIH0KKyAgICB9CisKKyAgICB2b2lkIEluaXRp
YWxpemVDb21waWxlcihTaFNoYWRlck91dHB1dCBzaGFkZXJPdXRwdXRUeXBlKQorICAgIHsKKyAg
ICAgICAgRGVzdHJveUNvbXBpbGVyKHNoYWRlck91dHB1dFR5cGUpOworCisgICAgICAgIG1Db21w
aWxlckxpc3Rbc2hhZGVyT3V0cHV0VHlwZV0gPQorICAgICAgICAgICAgc2g6OkNvbnN0cnVjdENv
bXBpbGVyKEdMX0ZSQUdNRU5UX1NIQURFUiwgdGVzdGluZzo6Z2V0PDA+KEdldFBhcmFtKCkpLCBz
aGFkZXJPdXRwdXRUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZtUmVz
b3VyY2VMaXN0W3NoYWRlck91dHB1dFR5cGVdKTsKKyAgICAgICAgQVNTRVJUX1RSVUUobUNvbXBp
bGVyTGlzdFtzaGFkZXJPdXRwdXRUeXBlXSAhPSBudWxscHRyKQorICAgICAgICAgICAgPDwgIkNv
bXBpbGVyIGZvciAiIDw8IG1TaGFkZXJPdXRwdXRMaXN0W3NoYWRlck91dHB1dFR5cGVdCisgICAg
ICAgICAgICA8PCAiIGNvdWxkIG5vdCBiZSBjb25zdHJ1Y3RlZC4iOworICAgIH0KKworICAgIHRl
c3Rpbmc6OkFzc2VydGlvblJlc3VsdCBUZXN0U2hhZGVyQ29tcGlsZShTaFNoYWRlck91dHB1dCBz
aGFkZXJPdXRwdXRUeXBlLCBjb25zdCBjaGFyICpwcmFnbWEpCisgICAgeworICAgICAgICBjb25z
dCBjaGFyICpzaGFkZXJTdHJpbmdzW10gPSB7dGVzdGluZzo6Z2V0PDE+KEdldFBhcmFtKCkpLCBw
cmFnbWEsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0aW5nOjpn
ZXQ8Mj4oR2V0UGFyYW0oKSl9OworCisgICAgICAgIGJvb2wgc3VjY2VzcyA9IHNoOjpDb21waWxl
KG1Db21waWxlckxpc3Rbc2hhZGVyT3V0cHV0VHlwZV0sIHNoYWRlclN0cmluZ3MsIDMsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNIX1ZBUklBQkxFUyB8IFNIX09CSkVDVF9D
T0RFKTsKKyAgICAgICAgaWYgKHN1Y2Nlc3MpCisgICAgICAgIHsKKyAgICAgICAgICAgIHJldHVy
biA6OnRlc3Rpbmc6OkFzc2VydGlvblN1Y2Nlc3MoKQorICAgICAgICAgICAgICAgICAgIDw8ICJD
b21waWxhdGlvbiBzdWNjZXNzKCIgPDwgbVNoYWRlck91dHB1dExpc3Rbc2hhZGVyT3V0cHV0VHlw
ZV0gPDwgIikiOworICAgICAgICB9CisgICAgICAgIHJldHVybiA6OnRlc3Rpbmc6OkFzc2VydGlv
bkZhaWx1cmUoKSA8PCBzaDo6R2V0SW5mb0xvZyhtQ29tcGlsZXJMaXN0W3NoYWRlck91dHB1dFR5
cGVdKTsKKyAgICB9CisKKyAgICB2b2lkIFRlc3RTaGFkZXJDb21waWxlKGJvb2wgZXhwZWN0YXRp
b24sIGNvbnN0IGNoYXIgKnByYWdtYSkKKyAgICB7CisgICAgICAgIGZvciAoYXV0byBzaGFkZXJP
dXRwdXRUeXBlIDogbVNoYWRlck91dHB1dExpc3QpCisgICAgICAgIHsKKyAgICAgICAgICAgIGlm
IChleHBlY3RhdGlvbikKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBFWFBFQ1RfVFJV
RShUZXN0U2hhZGVyQ29tcGlsZShzaGFkZXJPdXRwdXRUeXBlLmZpcnN0LCBwcmFnbWEpKTsKKyAg
ICAgICAgICAgIH0KKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAg
ICAgICBFWFBFQ1RfRkFMU0UoVGVzdFNoYWRlckNvbXBpbGUoc2hhZGVyT3V0cHV0VHlwZS5maXJz
dCwgcHJhZ21hKSk7CisgICAgICAgICAgICB9CisgICAgICAgIH0KKyAgICB9CisKKyAgICB2b2lk
IFNldEV4dGVuc2lvbkVuYWJsZShib29sIGVuYWJsZSkKKyAgICB7CisgICAgICAgIGZvciAoYXV0
byBzaGFkZXJPdXRwdXRUeXBlIDogbVNoYWRlck91dHB1dExpc3QpCisgICAgICAgIHsKKyAgICAg
ICAgICAgIG1SZXNvdXJjZUxpc3Rbc2hhZGVyT3V0cHV0VHlwZS5maXJzdF0uS0hSX2JsZW5kX2Vx
dWF0aW9uX2FkdmFuY2VkID0gZW5hYmxlOworICAgICAgICAgICAgbVJlc291cmNlTGlzdFtzaGFk
ZXJPdXRwdXRUeXBlLmZpcnN0XS5FWFRfc2hhZGVyX2ZyYW1lYnVmZmVyX2ZldGNoX25vbl9jb2hl
cmVudCA9CisgICAgICAgICAgICAgICAgZW5hYmxlOworICAgICAgICB9CisgICAgfQorCisgIHBy
b3RlY3RlZDoKKyAgICBzdGQ6Om1hcDxTaFNoYWRlck91dHB1dCwgc3RkOjpzdHJpbmc+IG1TaGFk
ZXJPdXRwdXRMaXN0OworICAgIHN0ZDo6bWFwPFNoU2hhZGVyT3V0cHV0LCBTaEhhbmRsZT4gbUNv
bXBpbGVyTGlzdDsKKyAgICBzdGQ6Om1hcDxTaFNoYWRlck91dHB1dCwgU2hCdWlsdEluUmVzb3Vy
Y2VzPiBtUmVzb3VyY2VMaXN0OworfTsKKworY2xhc3MgS0hSQmxlbmRFcXVhdGlvbkFkdmFuY2Vk
RVMzMTBUZXN0IDogcHVibGljIEtIUkJsZW5kRXF1YXRpb25BZHZhbmNlZFRlc3QKK3t9OworCisv
LyBFeHRlbnNpb24gZmxhZyBpcyByZXF1aXJlZCB0byBjb21waWxlIHByb3Blcmx5LiBFeHBlY3Qg
ZmFpbHVyZSB3aGVuIGl0IGlzCisvLyBub3QgcHJlc2VudC4KK1RFU1RfUChLSFJCbGVuZEVxdWF0
aW9uQWR2YW5jZWRFUzMxMFRlc3QsIENvbXBpbGVGYWlsc1dpdGhvdXRFeHRlbnNpb24pCit7Cisg
ICAgU2V0RXh0ZW5zaW9uRW5hYmxlKGZhbHNlKTsKKyAgICBJbml0aWFsaXplQ29tcGlsZXIoKTsK
KyAgICBUZXN0U2hhZGVyQ29tcGlsZShmYWxzZSwgRVhUUHJhZ21hKTsKK30KKworLy8gRXh0ZW5z
aW9uIGRpcmVjdGl2ZSBpcyByZXF1aXJlZCB0byBjb21waWxlIHByb3Blcmx5LiBFeHBlY3QgZmFp
bHVyZSB3aGVuCisvLyBpdCBpcyBub3QgcHJlc2VudC4KK1RFU1RfUChLSFJCbGVuZEVxdWF0aW9u
QWR2YW5jZWRFUzMxMFRlc3QsIENvbXBpbGVGYWlsc1dpdGhFeHRlbnNpb25XaXRob3V0UHJhZ21h
KQoreworICAgIFNldEV4dGVuc2lvbkVuYWJsZSh0cnVlKTsKKyAgICBJbml0aWFsaXplQ29tcGls
ZXIoKTsKKyAgICBUZXN0U2hhZGVyQ29tcGlsZShmYWxzZSwgIiIpOworfQorCitJTlNUQU5USUFU
RV9URVNUX1NVSVRFX1AoQ29ycmVjdEVTU0wzMTBTaGFkZXJzLAorICAgICAgICAgICAgICAgICAg
ICAgICAgIEtIUkJsZW5kRXF1YXRpb25BZHZhbmNlZEVTMzEwVGVzdCwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICBDb21iaW5lKFZhbHVlcyhTSF9HTEVTM18xX1NQRUMpLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgVmFsdWVzKHNoOjpFU1NMVmVyc2lvbjMxMCksCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBWYWx1ZXMoRVNTTDMxMF9TaW1wbGUsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRVNTTDMxMF9XaXRoX0ZyYW1lYnVmZmVy
RmV0Y2gsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRVNTTDMxMF9E
ZWNsYXJlZE11bHRpcGx5U2NyZWVuU2VwYXJhdGVseSwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBFU1NMMzEwX0RlY2xhcmVkTXVsdGlwbHlTY3JlZW5TdWNjZXNzaXZl
bHkpKSk7CisKKyNpZiBkZWZpbmVkKEFOR0xFX0VOQUJMRV9WVUxLQU4pCisKK2NsYXNzIEtIUkJs
ZW5kRXF1YXRpb25BZHZhbmNlZFN1Y2Nlc3NUZXN0IDogcHVibGljIEtIUkJsZW5kRXF1YXRpb25B
ZHZhbmNlZFRlc3QKK3sKKyAgcHVibGljOgorICAgIHZvaWQgU2V0VXAoKSBvdmVycmlkZQorICAg
IHsKKyAgICAgICAgc3RkOjptYXA8U2hTaGFkZXJPdXRwdXQsIHN0ZDo6c3RyaW5nPiBzaGFkZXJP
dXRwdXRMaXN0ID0geworICAgICAgICAgICAge1NIX1NQSVJWX1ZVTEtBTl9PVVRQVVQsICJTSF9T
UElSVl9WVUxLQU5fT1VUUFVUIn19OworCisgICAgICAgIEluaXRpYWxpemUoc2hhZGVyT3V0cHV0
TGlzdCk7CisgICAgfQorfTsKKworY2xhc3MgS0hSQmxlbmRFcXVhdGlvbkFkdmFuY2VkRVMzMTBT
dWNjZXNzVGVzdCA6IHB1YmxpYyBLSFJCbGVuZEVxdWF0aW9uQWR2YW5jZWRTdWNjZXNzVGVzdAor
e307CisKKy8vIFdpdGggZXh0ZW5zaW9uIGZsYWcgYW5kIGV4dGVuc2lvbiBkaXJlY3RpdmUsIGNv
bXBpbGluZyBzdWNjZWVkcy4KKy8vIEFsc28gdGVzdCB0aGF0IHRoZSBleHRlbnNpb24gZGlyZWN0
aXZlIHN0YXRlIGlzIHJlc2V0IGNvcnJlY3RseS4KK1RFU1RfUChLSFJCbGVuZEVxdWF0aW9uQWR2
YW5jZWRFUzMxMFN1Y2Nlc3NUZXN0LCBDb21waWxlU3VjY2VlZHNXaXRoRXh0ZW5zaW9uQW5kUHJh
Z21hKQoreworICAgIFNldEV4dGVuc2lvbkVuYWJsZSh0cnVlKTsKKyAgICBJbml0aWFsaXplQ29t
cGlsZXIoKTsKKyAgICBUZXN0U2hhZGVyQ29tcGlsZSh0cnVlLCBFWFRQcmFnbWEpOworICAgIC8v
IFRlc3QgcmVzZXQgZnVuY3Rpb25hbGl0eS4KKyAgICBUZXN0U2hhZGVyQ29tcGlsZShmYWxzZSwg
IiIpOworICAgIFRlc3RTaGFkZXJDb21waWxlKHRydWUsIEVYVFByYWdtYSk7Cit9CisKKy8vIFRo
ZSBTTCAjdmVyc2lvbiAxMDAgc2hhZGVycyB0aGF0IGFyZSBjb3JyZWN0IHdvcmsgc2ltaWxhcmx5
CisvLyBpbiBib3RoIEdMMiBhbmQgR0wzLCB3aXRoIGFuZCB3aXRob3V0IHRoZSB2ZXJzaW9uIHN0
cmluZy4KK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChDb3JyZWN0RVNTTDMxMFNoYWRlcnMsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgS0hSQmxlbmRFcXVhdGlvbkFkdmFuY2VkRVMzMTBTdWNj
ZXNzVGVzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICBDb21iaW5lKFZhbHVlcyhTSF9HTEVT
M18xX1NQRUMpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVmFsdWVzKHNoOjpF
U1NMVmVyc2lvbjMxMCksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWYWx1ZXMo
RVNTTDMxMF9TaW1wbGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
RVNTTDMxMF9XaXRoX0ZyYW1lYnVmZmVyRmV0Y2gsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgRVNTTDMxMF9EZWNsYXJlZE11bHRpcGx5U2NyZWVuU2VwYXJhdGVseSwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFU1NMMzEwX0RlY2xhcmVk
TXVsdGlwbHlTY3JlZW5TdWNjZXNzaXZlbHkpKSk7CisKK2NsYXNzIEtIUkJsZW5kRXF1YXRpb25B
ZHZhbmNlZEVuYWJsZWRMaXN0Q2hlY2tUZXN0IDogcHVibGljIEtIUkJsZW5kRXF1YXRpb25BZHZh
bmNlZFRlc3QKK3sKKyAgcHVibGljOgorICAgIHZvaWQgU2V0VXAoKSBvdmVycmlkZQorICAgIHsK
KyAgICAgICAgc3RkOjptYXA8U2hTaGFkZXJPdXRwdXQsIHN0ZDo6c3RyaW5nPiBzaGFkZXJPdXRw
dXRMaXN0ID0geworICAgICAgICAgICAge1NIX1NQSVJWX1ZVTEtBTl9PVVRQVVQsICJTSF9TUElS
Vl9WVUxLQU5fT1VUUFVUIn19OworCisgICAgICAgIEluaXRpYWxpemUoc2hhZGVyT3V0cHV0TGlz
dCk7CisgICAgfQorCisgICAgY29uc3QgU2hIYW5kbGUgJkdldENvbXBpbGVySGFuZGxlKGNvbnN0
IFNoU2hhZGVyT3V0cHV0IG91dHB1dFR5cGUpIGNvbnN0CisgICAgeworICAgICAgICByZXR1cm4g
bUNvbXBpbGVyTGlzdC5hdChvdXRwdXRUeXBlKTsKKyAgICB9Cit9OworCitjbGFzcyBLSFJCbGVu
ZEVxdWF0aW9uQWR2YW5jZWRFbmFibGVkU2VwYXJhdGVseVRlc3QKKyAgICA6IHB1YmxpYyBLSFJC
bGVuZEVxdWF0aW9uQWR2YW5jZWRFbmFibGVkTGlzdENoZWNrVGVzdAore307CisKKy8vIFRlc3Qg
Zm9yIGRlY2xhcmluZyBkaWZmZXJlbnQgYmxlbmQgZXF1YXRpb25zIGluIHNlcGFyYXRlIGxheW91
dCBkZWNsYXJhdGlvbnMKK1RFU1RfUChLSFJCbGVuZEVxdWF0aW9uQWR2YW5jZWRFbmFibGVkU2Vw
YXJhdGVseVRlc3QsIERlY2xhcmVkRXF1YXRpb25TZXBhcmF0ZWx5KQoreworICAgIFNldEV4dGVu
c2lvbkVuYWJsZSh0cnVlKTsKKyAgICBJbml0aWFsaXplQ29tcGlsZXIoKTsKKyAgICBUZXN0U2hh
ZGVyQ29tcGlsZSh0cnVlLCBFWFRQcmFnbWEpOworCisgICAgY29uc3QgU2hIYW5kbGUgY29tcGls
ZXJIYW5kbGUgPSBHZXRDb21waWxlckhhbmRsZShTSF9TUElSVl9WVUxLQU5fT1VUUFVUKTsKKyAg
ICBnbDo6QmxlbmRFcXVhdGlvbkJpdFNldCBlbmFibGVkQmxlbmRFcXVhdGlvbihzaDo6R2V0QWR2
YW5jZWRCbGVuZEVxdWF0aW9ucyhjb21waWxlckhhbmRsZSkpOworICAgIEVYUEVDVF9UUlVFKGVu
YWJsZWRCbGVuZEVxdWF0aW9uLnRlc3QoZ2w6OkJsZW5kRXF1YXRpb25UeXBlOjpNdWx0aXBseSkp
OworICAgIEVYUEVDVF9UUlVFKGVuYWJsZWRCbGVuZEVxdWF0aW9uLnRlc3QoZ2w6OkJsZW5kRXF1
YXRpb25UeXBlOjpTY3JlZW4pKTsKK30KKworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKENvcnJl
Y3RFU1NMMzEwU2hhZGVycywKKyAgICAgICAgICAgICAgICAgICAgICAgICBLSFJCbGVuZEVxdWF0
aW9uQWR2YW5jZWRFbmFibGVkU2VwYXJhdGVseVRlc3QsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgQ29tYmluZShWYWx1ZXMoU0hfR0xFUzNfMV9TUEVDKSwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFZhbHVlcyhzaDo6RVNTTFZlcnNpb24zMTApLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgVmFsdWVzKEVTU0wzMTBfRGVjbGFyZWRNdWx0aXBseVNjcmVlblNl
cGFyYXRlbHkpKSk7CisKK2NsYXNzIEtIUkJsZW5kRXF1YXRpb25BZHZhbmNlZEVuYWJsZWRTdWNj
ZXNzaXZlbHlUZXN0CisgICAgOiBwdWJsaWMgS0hSQmxlbmRFcXVhdGlvbkFkdmFuY2VkRW5hYmxl
ZExpc3RDaGVja1Rlc3QKK3t9OworCisvLyBUZXN0IGZvciBkZWNsYXJpbmcgZGlmZmVyZW50IGJs
ZW5kIGVxdWF0aW9ucyBpbiB0aGUgc2FtZSBsYXlvdXQgZGVjbGFyYXRpb24KK1RFU1RfUChLSFJC
bGVuZEVxdWF0aW9uQWR2YW5jZWRFbmFibGVkU3VjY2Vzc2l2ZWx5VGVzdCwgRGVjbGFyZWRFcXVh
dGlvblN1Y2Nlc3NpdmVseSkKK3sKKyAgICBTZXRFeHRlbnNpb25FbmFibGUodHJ1ZSk7CisgICAg
SW5pdGlhbGl6ZUNvbXBpbGVyKCk7CisgICAgVGVzdFNoYWRlckNvbXBpbGUodHJ1ZSwgRVhUUHJh
Z21hKTsKKworICAgIGNvbnN0IFNoSGFuZGxlIGNvbXBpbGVySGFuZGxlID0gR2V0Q29tcGlsZXJI
YW5kbGUoU0hfU1BJUlZfVlVMS0FOX09VVFBVVCk7CisgICAgZ2w6OkJsZW5kRXF1YXRpb25CaXRT
ZXQgZW5hYmxlZEJsZW5kRXF1YXRpb24oc2g6OkdldEFkdmFuY2VkQmxlbmRFcXVhdGlvbnMoY29t
cGlsZXJIYW5kbGUpKTsKKyAgICBFWFBFQ1RfVFJVRShlbmFibGVkQmxlbmRFcXVhdGlvbi50ZXN0
KGdsOjpCbGVuZEVxdWF0aW9uVHlwZTo6TXVsdGlwbHkpKTsKKyAgICBFWFBFQ1RfVFJVRShlbmFi
bGVkQmxlbmRFcXVhdGlvbi50ZXN0KGdsOjpCbGVuZEVxdWF0aW9uVHlwZTo6U2NyZWVuKSk7Cit9
CisKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChDb3JyZWN0RVNTTDMxMFNoYWRlcnMsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgS0hSQmxlbmRFcXVhdGlvbkFkdmFuY2VkRW5hYmxlZFN1Y2Nl
c3NpdmVseVRlc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgQ29tYmluZShWYWx1ZXMoU0hf
R0xFUzNfMV9TUEVDKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZhbHVlcyhz
aDo6RVNTTFZlcnNpb24zMTApLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVmFs
dWVzKEVTU0wzMTBfRGVjbGFyZWRNdWx0aXBseVNjcmVlblN1Y2Nlc3NpdmVseSkpKTsKKworI2Vu
ZGlmCisKK30gIC8vIGFub255bW91cyBuYW1lc3BhY2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9kZXFwX3N1cHBvcnQvZGVxcF9lZ2xfVGVzdEV4cGVjdGF0
aW9ucyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9kZXFwX3N1cHBvcnQvZGVx
cF9lZ2xfVGVzdEV4cGVjdGF0aW9ucwppbmRleCA1NGRhZTFlYzkwZDc2MWI1ZThkNWFlMzJmMGMz
NDMyMGM2ODZhYmM2Li5kZDhlZjA0NWYyNDVjYTliZTQxNTMxMWU2ZjY4ZDA5ZTIyNTU4NTgwIDEw
MDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvZGVxcF9zdXBwb3J0
L2RlcXBfZWdsX1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUv
c3JjL3Rlc3RzL2RlcXBfc3VwcG9ydC9kZXFwX2VnbF9UZXN0RXhwZWN0YXRpb25zCkBAIC0xOSwx
MCArMTksNiBAQAogMzkxNiBEM0Q5IDogZEVRUC1FR0wuZnVuY3Rpb25hbC5yZW5kZXIubXVsdGlf
dGhyZWFkLiogPSBTS0lQCiAzOTE2IEQzRDkgOiBkRVFQLUVHTC5mdW5jdGlvbmFsLmNvbG9yX2Ns
ZWFycy5tdWx0aV90aHJlYWQuKiA9IFNLSVAKIAotLy8gVGhlc2UgdGVzdHMgcmVxdWlyZSBwaXht
YXAgc3VyZmFjZXMuIE9uIG1hbnkgcGxhdGZvcm1zIHRoZXkgYXJlIHVuc3VwcG9ydGVkLgotMzkx
NyBBTkRST0lEIFZVTEtBTiA6IGRFUVAtRUdMLmZ1bmN0aW9uYWwucmVuZGVyLm11bHRpX3RocmVh
ZC4qID0gRkFJTAotMzkxNyBBTkRST0lEIFZVTEtBTiA6IGRFUVAtRUdMLmZ1bmN0aW9uYWwuY29s
b3JfY2xlYXJzLm11bHRpX3RocmVhZC4qID0gRkFJTAotCiAvLyBkRVFQIGRvZXNuJ3QgaGFuZGxl
IGNvbmZpZ3MgY3JlYXRlZCBmb3IgZXh0ZW5zaW9ucwogMTY2MiBXSU4gOiBkRVFQLUVHTC5mdW5j
dGlvbmFsLmNvbG9yX2NsZWFycy5zaW5nbGVfY29udGV4dC5nbGVzMi5vdGhlciA9IEZBSUwKIDE2
NjIgV0lOIDogZEVRUC1FR0wuZnVuY3Rpb25hbC5jb2xvcl9jbGVhcnMuc2luZ2xlX2NvbnRleHQu
Z2xlczMub3RoZXIgPSBGQUlMCkBAIC0xMTIsNyArMTA4LDcgQEAKIDY1MzMgQU5EUk9JRCA6IGRF
UVAtRUdMLmZ1bmN0aW9uYWwubmF0aXZlX2NvbG9yX21hcHBpbmcubmF0aXZlX3dpbmRvdy4qID0g
U0tJUAogNjUzMyBBTkRST0lEIDogZEVRUC1FR0wuZnVuY3Rpb25hbC5uYXRpdmVfY29vcmRfbWFw
cGluZy5uYXRpdmVfd2luZG93LiogPSBTS0lQCiAKLS8vIEFuZHJvaWQgVnVsa2FuCisvLyBBbmRy
b2lkIFZ1bGthbiAoc3RpbGwgZmFpbGluZyBNYXJjaCAxNiwgMjAyMikKIDYyNzcgQU5EUk9JRCBW
VUxLQU4gOiBkRVFQLUVHTC5mdW5jdGlvbmFsLmltYWdlLmFwaS5jcmVhdGVfaW1hZ2VfZ2xlczJf
YW5kcm9pZF9uYXRpdmVfcmdiOCA9IEZBSUwKIDYyNzcgQU5EUk9JRCBWVUxLQU4gOiBkRVFQLUVH
TC5mdW5jdGlvbmFsLmltYWdlLmNyZWF0ZS5nbGVzMl9hbmRyb2lkX25hdGl2ZV9yZ2I4X3JlYWRf
cGl4ZWxzID0gRkFJTAogNjI3NyBBTkRST0lEIFZVTEtBTiA6IGRFUVAtRUdMLmZ1bmN0aW9uYWwu
aW1hZ2UuY3JlYXRlLmdsZXMyX2FuZHJvaWRfbmF0aXZlX3JnYjhfdGV4dHVyZSA9IEZBSUwKQEAg
LTEyNCwzMiArMTIwLDUyIEBACiA2Mjc3IEFORFJPSUQgVlVMS0FOIDogZEVRUC1FR0wuZnVuY3Rp
b25hbC5pbWFnZS5yZW5kZXJfbXVsdGlwbGVfY29udGV4dHMuZ2xlczJfYW5kcm9pZF9uYXRpdmVf
cmdiOF9yZWFkX3BpeGVscyA9IEZBSUwKIDYyNzcgQU5EUk9JRCBWVUxLQU4gOiBkRVFQLUVHTC5m
dW5jdGlvbmFsLmltYWdlLnJlbmRlcl9tdWx0aXBsZV9jb250ZXh0cy5nbGVzMl9hbmRyb2lkX25h
dGl2ZV9yZ2I4X3RleHR1cmUgPSBGQUlMCiAKLS8vIFBpeGVsIDQgVnVsa2FuCisvLyBQaXhlbCA0
IFZ1bGthbiAoc3RpbGwgZmFpbGluZyBNYXJjaCAxNiwgMjAyMikKIDY5NTMgUElYRUw0T1JYTCBW
VUxLQU4gOiBkRVFQLUVHTC5mdW5jdGlvbmFsLmJ1ZmZlcl9hZ2Uubm9fcHJlc2VydmUuKi5vZGRf
Y2xlYXJfcmVuZGVyX2V2ZW5fY2xlYXIgPSBGQUlMCis2OTUzIFBJWEVMNE9SWEwgVlVMS0FOIDog
ZEVRUC1FR0wuZnVuY3Rpb25hbC5idWZmZXJfYWdlLm5vX3ByZXNlcnZlLioub2RkX2NsZWFyX3Jl
bmRlcl9ldmVuX2NsZWFyX2NsZWFyID0gRkFJTAogNjk1MyBQSVhFTDRPUlhMIFZVTEtBTiA6IGRF
UVAtRUdMLmZ1bmN0aW9uYWwuYnVmZmVyX2FnZS5ub19wcmVzZXJ2ZS4qLm9kZF9jbGVhcl9yZW5k
ZXJfZXZlbl9jbGVhcl9yZW5kZXIgPSBGQUlMCis2OTUzIFBJWEVMNE9SWEwgVlVMS0FOIDogZEVR
UC1FR0wuZnVuY3Rpb25hbC5idWZmZXJfYWdlLm5vX3ByZXNlcnZlLioub2RkX2NsZWFyX3JlbmRl
cl9ldmVuX25vbmUgPSBGQUlMCiA2OTUzIFBJWEVMNE9SWEwgVlVMS0FOIDogZEVRUC1FR0wuZnVu
Y3Rpb25hbC5idWZmZXJfYWdlLm5vX3ByZXNlcnZlLioub2RkX2NsZWFyX3JlbmRlcl9ldmVuX3Jl
bmRlciA9IEZBSUwKIDY5NTMgUElYRUw0T1JYTCBWVUxLQU4gOiBkRVFQLUVHTC5mdW5jdGlvbmFs
LmJ1ZmZlcl9hZ2Uubm9fcHJlc2VydmUuKi5vZGRfY2xlYXJfcmVuZGVyX2V2ZW5fcmVuZGVyX3Jl
bmRlciA9IEZBSUwKIDY5NTMgUElYRUw0T1JYTCBWVUxLQU4gOiBkRVFQLUVHTC5mdW5jdGlvbmFs
LmJ1ZmZlcl9hZ2Uubm9fcHJlc2VydmUuKi5vZGRfcmVuZGVyX2NsZWFyX2V2ZW5fY2xlYXIgPSBG
QUlMCis2OTUzIFBJWEVMNE9SWEwgVlVMS0FOIDogZEVRUC1FR0wuZnVuY3Rpb25hbC5idWZmZXJf
YWdlLm5vX3ByZXNlcnZlLioub2RkX3JlbmRlcl9jbGVhcl9ldmVuX2NsZWFyX2NsZWFyID0gRkFJ
TAogNjk1MyBQSVhFTDRPUlhMIFZVTEtBTiA6IGRFUVAtRUdMLmZ1bmN0aW9uYWwuYnVmZmVyX2Fn
ZS5ub19wcmVzZXJ2ZS4qLm9kZF9yZW5kZXJfY2xlYXJfZXZlbl9jbGVhcl9yZW5kZXIgPSBGQUlM
Cis2OTUzIFBJWEVMNE9SWEwgVlVMS0FOIDogZEVRUC1FR0wuZnVuY3Rpb25hbC5idWZmZXJfYWdl
Lm5vX3ByZXNlcnZlLioub2RkX3JlbmRlcl9jbGVhcl9ldmVuX25vbmUgPSBGQUlMCiA2OTUzIFBJ
WEVMNE9SWEwgVlVMS0FOIDogZEVRUC1FR0wuZnVuY3Rpb25hbC5idWZmZXJfYWdlLm5vX3ByZXNl
cnZlLioub2RkX3JlbmRlcl9jbGVhcl9ldmVuX3JlbmRlciA9IEZBSUwKKzY5NTMgUElYRUw0T1JY
TCBWVUxLQU4gOiBkRVFQLUVHTC5mdW5jdGlvbmFsLmJ1ZmZlcl9hZ2Uubm9fcHJlc2VydmUuKi5v
ZGRfcmVuZGVyX2NsZWFyX2V2ZW5fcmVuZGVyX2NsZWFyID0gRkFJTAogNjk1MyBQSVhFTDRPUlhM
IFZVTEtBTiA6IGRFUVAtRUdMLmZ1bmN0aW9uYWwuYnVmZmVyX2FnZS5ub19wcmVzZXJ2ZS4qLm9k
ZF9yZW5kZXJfY2xlYXJfZXZlbl9yZW5kZXJfcmVuZGVyID0gRkFJTAogNjk1MyBQSVhFTDRPUlhM
IFZVTEtBTiA6IGRFUVAtRUdMLmZ1bmN0aW9uYWwuYnVmZmVyX2FnZS5ub19wcmVzZXJ2ZS4qLm9k
ZF9yZW5kZXJfZXZlbl9jbGVhciA9IEZBSUwKIDY5NTMgUElYRUw0T1JYTCBWVUxLQU4gOiBkRVFQ
LUVHTC5mdW5jdGlvbmFsLmJ1ZmZlcl9hZ2Uubm9fcHJlc2VydmUuKi5vZGRfcmVuZGVyX2V2ZW5f
bm9uZSA9IEZBSUwKKzY5NTMgUElYRUw0T1JYTCBWVUxLQU4gOiBkRVFQLUVHTC5mdW5jdGlvbmFs
LmJ1ZmZlcl9hZ2Uubm9fcHJlc2VydmUuKi5vZGRfcmVuZGVyX2V2ZW5fcmVuZGVyID0gRkFJTAor
Njk1MyBQSVhFTDRPUlhMIFZVTEtBTiA6IGRFUVAtRUdMLmZ1bmN0aW9uYWwuYnVmZmVyX2FnZS5u
b19wcmVzZXJ2ZS4qLm9kZF9yZW5kZXJfcmVuZGVyX2V2ZW5fY2xlYXJfY2xlYXIgPSBGQUlMCiA2
OTUzIFBJWEVMNE9SWEwgVlVMS0FOIDogZEVRUC1FR0wuZnVuY3Rpb25hbC5idWZmZXJfYWdlLm5v
X3ByZXNlcnZlLioub2RkX3JlbmRlcl9yZW5kZXJfZXZlbl9ub25lID0gRkFJTAogNjk1MyBQSVhF
TDRPUlhMIFZVTEtBTiA6IGRFUVAtRUdMLmZ1bmN0aW9uYWwuYnVmZmVyX2FnZS5ub19wcmVzZXJ2
ZS4qLm9kZF9yZW5kZXJfcmVuZGVyX2V2ZW5fcmVuZGVyID0gRkFJTAogNjk1MyBQSVhFTDRPUlhM
IFZVTEtBTiA6IGRFUVAtRUdMLmZ1bmN0aW9uYWwuYnVmZmVyX2FnZS5ub19wcmVzZXJ2ZS4qLm9k
ZF9yZW5kZXJfcmVuZGVyX2V2ZW5fcmVuZGVyX3JlbmRlciA9IEZBSUwKKzY5NTMgUElYRUw0T1JY
TCBWVUxLQU4gOiBkRVFQLUVHTC5mdW5jdGlvbmFsLnBhcnRpYWxfdXBkYXRlLm9kZF9jbGVhcl9y
ZW5kZXJfZXZlbl9jbGVhciA9IEZBSUwKKzY5NTMgUElYRUw0T1JYTCBWVUxLQU4gOiBkRVFQLUVH
TC5mdW5jdGlvbmFsLnBhcnRpYWxfdXBkYXRlLm9kZF9jbGVhcl9yZW5kZXJfZXZlbl9jbGVhcl9j
bGVhciA9IEZBSUwKKzY5NTMgUElYRUw0T1JYTCBWVUxLQU4gOiBkRVFQLUVHTC5mdW5jdGlvbmFs
LnBhcnRpYWxfdXBkYXRlLm9kZF9jbGVhcl9yZW5kZXJfZXZlbl9jbGVhcl9yZW5kZXIgPSBGQUlM
Cis2OTUzIFBJWEVMNE9SWEwgVlVMS0FOIDogZEVRUC1FR0wuZnVuY3Rpb25hbC5wYXJ0aWFsX3Vw
ZGF0ZS5vZGRfY2xlYXJfcmVuZGVyX2V2ZW5fbm9uZSA9IEZBSUwKKzY5NTMgUElYRUw0T1JYTCBW
VUxLQU4gOiBkRVFQLUVHTC5mdW5jdGlvbmFsLnBhcnRpYWxfdXBkYXRlLm9kZF9jbGVhcl9yZW5k
ZXJfZXZlbl9yZW5kZXIgPSBGQUlMCis2OTUzIFBJWEVMNE9SWEwgVlVMS0FOIDogZEVRUC1FR0wu
ZnVuY3Rpb25hbC5wYXJ0aWFsX3VwZGF0ZS5vZGRfY2xlYXJfcmVuZGVyX2V2ZW5fcmVuZGVyX3Jl
bmRlciA9IEZBSUwKKzY5NTMgUElYRUw0T1JYTCBWVUxLQU4gOiBkRVFQLUVHTC5mdW5jdGlvbmFs
LnBhcnRpYWxfdXBkYXRlLm9kZF9yZW5kZXJfY2xlYXJfZXZlbl9jbGVhciA9IEZBSUwKKzY5NTMg
UElYRUw0T1JYTCBWVUxLQU4gOiBkRVFQLUVHTC5mdW5jdGlvbmFsLnBhcnRpYWxfdXBkYXRlLm9k
ZF9yZW5kZXJfY2xlYXJfZXZlbl9jbGVhcl9jbGVhciA9IEZBSUwKKzY5NTMgUElYRUw0T1JYTCBW
VUxLQU4gOiBkRVFQLUVHTC5mdW5jdGlvbmFsLnBhcnRpYWxfdXBkYXRlLm9kZF9yZW5kZXJfY2xl
YXJfZXZlbl9jbGVhcl9yZW5kZXIgPSBGQUlMCis2OTUzIFBJWEVMNE9SWEwgVlVMS0FOIDogZEVR
UC1FR0wuZnVuY3Rpb25hbC5wYXJ0aWFsX3VwZGF0ZS5vZGRfcmVuZGVyX2NsZWFyX2V2ZW5fbm9u
ZSA9IEZBSUwKKzY5NTMgUElYRUw0T1JYTCBWVUxLQU4gOiBkRVFQLUVHTC5mdW5jdGlvbmFsLnBh
cnRpYWxfdXBkYXRlLm9kZF9yZW5kZXJfY2xlYXJfZXZlbl9yZW5kZXIgPSBGQUlMCis2OTUzIFBJ
WEVMNE9SWEwgVlVMS0FOIDogZEVRUC1FR0wuZnVuY3Rpb25hbC5wYXJ0aWFsX3VwZGF0ZS5vZGRf
cmVuZGVyX2NsZWFyX2V2ZW5fcmVuZGVyX2NsZWFyID0gRkFJTAorNjk1MyBQSVhFTDRPUlhMIFZV
TEtBTiA6IGRFUVAtRUdMLmZ1bmN0aW9uYWwucGFydGlhbF91cGRhdGUub2RkX3JlbmRlcl9jbGVh
cl9ldmVuX3JlbmRlcl9yZW5kZXIgPSBGQUlMCis2OTUzIFBJWEVMNE9SWEwgVlVMS0FOIDogZEVR
UC1FR0wuZnVuY3Rpb25hbC5wYXJ0aWFsX3VwZGF0ZS5vZGRfcmVuZGVyX2V2ZW5fY2xlYXIgPSBG
QUlMCis2OTUzIFBJWEVMNE9SWEwgVlVMS0FOIDogZEVRUC1FR0wuZnVuY3Rpb25hbC5wYXJ0aWFs
X3VwZGF0ZS5vZGRfcmVuZGVyX2V2ZW5fbm9uZSA9IEZBSUwKKzY5NTMgUElYRUw0T1JYTCBWVUxL
QU4gOiBkRVFQLUVHTC5mdW5jdGlvbmFsLnBhcnRpYWxfdXBkYXRlLm9kZF9yZW5kZXJfZXZlbl9y
ZW5kZXIgPSBGQUlMCis2OTUzIFBJWEVMNE9SWEwgVlVMS0FOIDogZEVRUC1FR0wuZnVuY3Rpb25h
bC5wYXJ0aWFsX3VwZGF0ZS5vZGRfcmVuZGVyX3JlbmRlcl9ldmVuX2NsZWFyX2NsZWFyID0gRkFJ
TAorNjk1MyBQSVhFTDRPUlhMIFZVTEtBTiA6IGRFUVAtRUdMLmZ1bmN0aW9uYWwucGFydGlhbF91
cGRhdGUub2RkX3JlbmRlcl9yZW5kZXJfZXZlbl9ub25lID0gRkFJTAorNjk1MyBQSVhFTDRPUlhM
IFZVTEtBTiA6IGRFUVAtRUdMLmZ1bmN0aW9uYWwucGFydGlhbF91cGRhdGUub2RkX3JlbmRlcl9y
ZW5kZXJfZXZlbl9yZW5kZXIgPSBGQUlMCis2OTUzIFBJWEVMNE9SWEwgVlVMS0FOIDogZEVRUC1F
R0wuZnVuY3Rpb25hbC5wYXJ0aWFsX3VwZGF0ZS5vZGRfcmVuZGVyX3JlbmRlcl9ldmVuX3JlbmRl
cl9yZW5kZXIgPSBGQUlMCiAKIC8vIFBpeGVsIDYgVnVsa2FuCiA2OTAwIFBJWEVMNiBWVUxLQU4g
OiBkRVFQLUVHTC5mdW5jdGlvbmFsLmdldF9wcm9jX2FkZHJlc3MuZXh0ZW5zaW9uLmVnbF9leHRf
aW1hZ2VfZG1hX2J1Zl9pbXBvcnRfbW9kaWZpZXJzID0gRkFJTAogNjg5OSBQSVhFTDYgVlVMS0FO
IDogZEVRUC1FR0wuZnVuY3Rpb25hbC5xdWVyeV9jb250ZXh0LioucmdiODg4X3dpbmRvdyA9IEZB
SUwKIAotLy8gUm9idXN0bmVzcyBmYWlsdXJlcyBvbiBtdWx0aXBsZSBwbGF0Zm9ybXMKLTY3MDcg
TlZJRElBIDogZEVRUC1FR0wuZnVuY3Rpb25hbC5yb2J1c3RuZXNzLnJlc2V0X2NvbnRleHQuc2hh
ZGVycy5vdXRfb2ZfYm91bmRzLnJlc2V0X3N0YXR1cy5yZWFkcy51bmlmb3JtX2Jsb2NrLmNvbXB1
dGUgPSBTS0lQCi02NzA3IE5WSURJQSA6IGRFUVAtRUdMLmZ1bmN0aW9uYWwucm9idXN0bmVzcy5y
ZXNldF9jb250ZXh0LnNoYWRlcnMub3V0X29mX2JvdW5kcy5yZXNldF9zdGF0dXMud3JpdGVzLnVu
aWZvcm1fYmxvY2suY29tcHV0ZSA9IFNLSVAKLQotMzcxMSA6IGRFUVAtRUdMLmZ1bmN0aW9uYWwu
cm9idXN0bmVzcy5yZXNldF9jb250ZXh0LnNoYWRlcnMub3V0X29mX2JvdW5kcy5yZXNldF9zdGF0
dXMucmVhZHMuKiA9IEZBSUwKLTM3MTEgOiBkRVFQLUVHTC5mdW5jdGlvbmFsLnJvYnVzdG5lc3Mu
cmVzZXRfY29udGV4dC5zaGFkZXJzLm91dF9vZl9ib3VuZHMucmVzZXRfc3RhdHVzLndyaXRlcy4q
ID0gRkFJTAotCiAvLyBFUyAxIHRlc3RzCiAyMzA2IFdJTiA6IGRFUVAtRUdMLmZ1bmN0aW9uYWwu
Y29sb3JfY2xlYXJzLnNpbmdsZV9jb250ZXh0LmdsZXMxKiA9IEZBSUwKIDIzMDYgV0lOIDogZEVR
UC1FR0wuZnVuY3Rpb25hbC5jb2xvcl9jbGVhcnMubXVsdGlfY29udGV4dC5nbGVzMSogPSBGQUlM
CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvZGVxcF9zdXBw
b3J0L2RlcXBfZ2xlczJfVGVzdEV4cGVjdGF0aW9ucyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy90ZXN0cy9kZXFwX3N1cHBvcnQvZGVxcF9nbGVzMl9UZXN0RXhwZWN0YXRpb25zCmluZGV4
IDhjNjQ0Mzc1MTY5MDk2ZTM1MDE0NDk2MjdmMzNkODgxYTMyZTlmMDMuLmE1NjVmNzk4ZDQ0MmFk
NWJlMjdmNmJiZDE0NzU2NDNlMzNhMjYwMWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3NyYy90ZXN0cy9kZXFwX3N1cHBvcnQvZGVxcF9nbGVzMl9UZXN0RXhwZWN0YXRpb25z
CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9kZXFwX3N1cHBvcnQvZGVx
cF9nbGVzMl9UZXN0RXhwZWN0YXRpb25zCkBAIC0yMTIsMTIgKzIxMiw2IEBACiA1MTcyIE1BQyBP
UEVOR0wgQU1EIDogZEVRUC1HTEVTMi5mdW5jdGlvbmFsLnNoYWRlcnMuZnJhZ2RhdGEuKiA9IEZB
SUwKIDUxNzIgTUFDIE9QRU5HTCBBTUQgOiBkRVFQLUdMRVMyLmZ1bmN0aW9uYWwuZnJhZ21lbnRf
b3BzLmJsZW5kLmVxdWF0aW9uX3NyY19mdW5jX2RzdF9mdW5jLiogPSBGQUlMCiAKLS8vIEFuZHJv
aWQgR0xFUyBiYWNrZW5kIG9ubHkgZmFpbHVyZXMKLTI2MzEgR0xFUyBBTkRST0lEIDogZEVRUC1H
TEVTMi5mdW5jdGlvbmFsLnNoYWRlcnMub3BlcmF0b3Iuc2VxdWVuY2Uuc2lkZV9lZmZlY3RzLmFm
ZmVjdF8qID0gRkFJTAotLy8gVE9ETzogdW5jb21tZW50IHRoaXMgd2hlbiBhbmdsZWJ1Zy5jb20v
NTY2NSBpcyBmaXhlZAotLy8yNjMwIEdMRVMgQU5EUk9JRCA6IGRFUVAtR0xFUzIuZnVuY3Rpb25h
bC5zaGFkZXJzLnN0cnVjdC51bmlmb3JtLnNhbXBsZXJfaW5fYXJyYXlfZnVuY3Rpb25fYXJnXyog
PSBGQUlMCi0vLzI2MzAgR0xFUyBBTkRST0lEIDogZEVRUC1HTEVTMi5mdW5jdGlvbmFsLnNoYWRl
cnMuc3RydWN0LnVuaWZvcm0uc2FtcGxlcl9pbl9mdW5jdGlvbl9hcmdfKiA9IEZBSUwKLQogLy8g
RDNEMTEgQU1EIGFscmVhZHkgY292ZXJlZCBieSBMaW5lIDE0OAogMzI0MyBEM0QxMSBJTlRFTCA6
IGRFUVAtR0xFUzIuZnVuY3Rpb25hbC50ZXh0dXJlLm1pcG1hcC5jdWJlLmJhc2ljLmxpbmVhcl9u
ZWFyZXN0ID0gRkFJTAogMzI0MyBEM0QxMSBJTlRFTCA6IGRFUVAtR0xFUzIuZnVuY3Rpb25hbC50
ZXh0dXJlLm1pcG1hcC5jdWJlLmJhc2ljLmxpbmVhcl9saW5lYXIgPSBGQUlMCkBAIC0yNDQsMTEg
KzIzOCw2IEBACiAzMjQwIEQzRDExIDogZEVRUC1HTEVTMi5mdW5jdGlvbmFsLnRleHR1cmUudmVy
dGV4LmN1YmUud3JhcC5taXJyb3JfcmVwZWF0ID0gRkFJTAogMzI0MCBEM0QxMSA6IGRFUVAtR0xF
UzIuZnVuY3Rpb25hbC50ZXh0dXJlLnZlcnRleC5jdWJlLndyYXAubWlycm9yX21pcnJvciA9IEZB
SUwKIAotLy8gQWRyZW5vIGxpbmUgcmFzdGVyaXphdGlvbiBpcyBub3QgY29uZm9ybWFudC4KLTI4
MzAgVlVMS0FOIEFORFJPSUQgOiBkRVFQLUdMRVMyLmZ1bmN0aW9uYWwucmFzdGVyaXphdGlvbi5w
cmltaXRpdmVzLmxpbmVfbG9vcCA9IEZBSUwKLTI4MzAgVlVMS0FOIEFORFJPSUQgOiBkRVFQLUdM
RVMyLmZ1bmN0aW9uYWwucmFzdGVyaXphdGlvbi5wcmltaXRpdmVzLmxpbmVfc3RyaXAgPSBGQUlM
Ci0yODMwIFZVTEtBTiBBTkRST0lEIDogZEVRUC1HTEVTMi5mdW5jdGlvbmFsLnJhc3Rlcml6YXRp
b24ucHJpbWl0aXZlcy5saW5lcyA9IEZBSUwKLQogLy8gVGhlc2UgdGVzdHMgYWxzbyBmYWlsIG9u
IEFNRCB3aW5kb3dzIGRyaXZlciBhcyBpdCBpcyBub3QgYWxsb3dlZCB0byB1c2UgZW11bGF0aW9u
IGR1ZSB0byBlcnJvcnMuCiAzMjQzIFZVTEtBTiBXSU4gQU1EIDogZEVRUC1HTEVTMi5mdW5jdGlv
bmFsLnNoYWRlcnMudGV4dHVyZV9mdW5jdGlvbnMudmVydGV4LnRleHR1cmVjdWJlbG9kID0gRkFJ
TAogMzI0MyBWVUxLQU4gV0lOIEFNRCA6IGRFUVAtR0xFUzIuZnVuY3Rpb25hbC50ZXh0dXJlLm1p
cG1hcC5jdWJlLmJhc2ljLmxpbmVhcl9uZWFyZXN0ID0gRkFJTApAQCAtMzY0LDE2ICszNTMsNiBA
QAogLy8gVGVzdCBidWcgLSBmYWlscyBpbiBBU0FOLgogNjY3OCBBU0FOIDogZEVRUC1HTEVTMi5m
dW5jdGlvbmFsLm5lZ2F0aXZlX2FwaS50ZXh0dXJlLmNvbXByZXNzZWR0ZXhzdWJpbWFnZTJkKiA9
IFNLSVAKIAotLy8gVnVsa2FuCi00OTQ0IFZVTEtBTiBBTkRST0lEIDogZEVRUC1HTEVTMi5mdW5j
dGlvbmFsLmZiby5yZW5kZXIucmVjcmVhdGVfY29sb3JidWZmZXIucmViaW5kX3Jib19yZ2JhNCA9
IEZBSUwKLTQ5NDQgVlVMS0FOIEFORFJPSUQgOiBkRVFQLUdMRVMyLmZ1bmN0aW9uYWwuZmJvLnJl
bmRlci5yZWNyZWF0ZV9jb2xvcmJ1ZmZlci5yZWJpbmRfcmJvX3JnYmE0X3N0ZW5jaWxfaW5kZXg4
ID0gRkFJTAotNDk0NCBWVUxLQU4gQU5EUk9JRCA6IGRFUVAtR0xFUzIuZnVuY3Rpb25hbC5mYm8u
cmVuZGVyLnJlY3JlYXRlX2NvbG9yYnVmZmVyLm5vX3JlYmluZF9yYm9fcmdiYTQgPSBGQUlMCi00
OTQ0IFZVTEtBTiBBTkRST0lEIDogZEVRUC1HTEVTMi5mdW5jdGlvbmFsLmZiby5yZW5kZXIucmVj
cmVhdGVfY29sb3JidWZmZXIubm9fcmViaW5kX3Jib19yZ2JhNF9zdGVuY2lsX2luZGV4OCA9IEZB
SUwKLTQ5NDQgVlVMS0FOIEFORFJPSUQgOiBkRVFQLUdMRVMyLmZ1bmN0aW9uYWwuZmJvLnJlbmRl
ci5yZWNyZWF0ZV9kZXB0aGJ1ZmZlci5yZWJpbmRfcmJvX3JnYmE0X2RlcHRoX2NvbXBvbmVudDE2
ID0gRkFJTAotNDk0NCBWVUxLQU4gQU5EUk9JRCA6IGRFUVAtR0xFUzIuZnVuY3Rpb25hbC5mYm8u
cmVuZGVyLnJlY3JlYXRlX2RlcHRoYnVmZmVyLm5vX3JlYmluZF9yYm9fcmdiYTRfZGVwdGhfY29t
cG9uZW50MTYgPSBGQUlMCi00OTQ0IFZVTEtBTiBBTkRST0lEIDogZEVRUC1HTEVTMi5mdW5jdGlv
bmFsLmZiby5yZW5kZXIucmVjcmVhdGVfc3RlbmNpbGJ1ZmZlci5yZWJpbmRfcmJvX3JnYmE0X3N0
ZW5jaWxfaW5kZXg4ID0gRkFJTAotNDk0NCBWVUxLQU4gQU5EUk9JRCA6IGRFUVAtR0xFUzIuZnVu
Y3Rpb25hbC5mYm8ucmVuZGVyLnJlY3JlYXRlX3N0ZW5jaWxidWZmZXIubm9fcmViaW5kX3Jib19y
Z2JhNF9zdGVuY2lsX2luZGV4OCA9IEZBSUwKLQogLy8gUGl4ZWwgNCB0ZXN0IGV4cGVjdGF0aW9u
cy4KIDU5OTAgUElYRUw0T1JYTCBWVUxLQU4gOiBkRVFQLUdMRVMyLmZ1bmN0aW9uYWwuYXR0cmli
dXRlX2xvY2F0aW9uLmJpbmQuZmxvYXQgPSBTS0lQCiA1OTkwIFBJWEVMNE9SWEwgVlVMS0FOIDog
ZEVRUC1HTEVTMi5mdW5jdGlvbmFsLmNsaXBwaW5nLnRyaWFuZ2xlX3ZlcnRleC5jbGlwX3RocmVl
LmNsaXBfbmVnX3hfbmVnX3pfYW5kX3Bvc194X25lZ195X3Bvc196X2FuZF9wb3NfeF9wb3NfeV9w
b3NfeiA9IFNLSVAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0
cy9kZXFwX3N1cHBvcnQvZGVxcF9nbGVzMzFfVGVzdEV4cGVjdGF0aW9ucyBiL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9kZXFwX3N1cHBvcnQvZGVxcF9nbGVzMzFfVGVzdEV4cGVj
dGF0aW9ucwppbmRleCA5ZmE2ZDJmOGE4NjNmMjUyMzdjMDNlOTI4MGJmZWQxYzRkNGQ1MjI5Li4z
MDc5MDM0ZjA5YzllOWY2MDM0ZmUyOTcwMDgwNjZhMGNhNTc5ZDIzIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvZGVxcF9zdXBwb3J0L2RlcXBfZ2xlczMxX1Rl
c3RFeHBlY3RhdGlvbnMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2Rl
cXBfc3VwcG9ydC9kZXFwX2dsZXMzMV9UZXN0RXhwZWN0YXRpb25zCkBAIC0xNjMsOSArMTYzLDYg
QEAKIC8vIENhbm5vdCBjcmVhdGUgMkQgKGFycmF5KSB2aWV3IG9mIDNEIHRleHR1cmUuICBUaGVz
ZSBmYWlsIHdpdGggdmFsaWRhdGlvbiBlcnJvcnMsIGFuZCBjYXVzZSBhIGNyYXNoIGluIHN5bmN2
YWwuCiAzODg2IFZVTEtBTiA6IGRFUVAtR0xFUzMxLmZ1bmN0aW9uYWwuaW1hZ2VfbG9hZF9zdG9y
ZS4zZC4qc2luZ2xlX2xheWVyID0gU0tJUAogCi0vLyBHZW9tZXRyeSBzaGFkZXIgc3VwcG9ydDoK
LTU0MzAgVlVMS0FOIDogZEVRUC1HTEVTMzEuZnVuY3Rpb25hbC5nZW9tZXRyeV9zaGFkaW5nLnF1
ZXJ5LnByaW1pdGl2ZXNfZ2VuZXJhdGVkXyogPSBGQUlMCi0KIC8vIEZyYW1lYnVmZmVyIGZldGNo
IGltcGxlbWVudGF0aW9uIGJ1ZwogNjkwOSBWVUxLQU4gOiBkRVFQLUdMRVMzMS5mdW5jdGlvbmFs
LnNoYWRlcnMuZnJhbWVidWZmZXJfZmV0Y2guYmFzaWMuZnJhbWVidWZmZXJfdGV4dHVyZV9sYXll
ciA9IFNLSVAKIApAQCAtMTk1LDggKzE5Miw2IEBACiA0MDgwIEFORFJPSUQgVlVMS0FOIDogZEVR
UC1HTEVTMzEuZnVuY3Rpb25hbC5zdGVuY2lsX3RleHR1cmluZy5taXNjLmJhc2VfbGV2ZWwgPSBT
S0lQCiAKIC8vIEZhaWwgb24gdGVzdHMgdGhhdCB1c2UgYW4gdW5zdXBwb3J0ZWQgZXh0ZW5zaW9u
IQotNDM3MSBWVUxLQU4gQU5EUk9JRCA6IGRFUVAtR0xFUzMxLmZ1bmN0aW9uYWwuc2hhZGVycy5p
bXBsaWNpdF9jb252ZXJzaW9ucy5lczMxLmFyaXRobWV0aWMuaW5wdXRfYmVmb3JlX2xpdGVyYWwu
YWRkLmludF90b192ZWMzX3ZlcnRleCA9IEZBSUwKLTQzNzEgVlVMS0FOIEFORFJPSUQgOiBkRVFQ
LUdMRVMzMS5mdW5jdGlvbmFsLnNoYWRlcnMuaW1wbGljaXRfY29udmVyc2lvbnMuZXMzMS5hcml0
aG1ldGljLmlucHV0X2JlZm9yZV9saXRlcmFsLmFkZC5pbnRfdG9fdXZlYzNfdmVydGV4ID0gRkFJ
TAogNDM3MSBTV0lGVFNIQURFUiA6IGRFUVAtR0xFUzMxLmZ1bmN0aW9uYWwuc2hhZGVycy5pbXBs
aWNpdF9jb252ZXJzaW9ucy4qID0gRkFJTAogCiAvLyBEZXNrdG9wIGNhcmRzIHdpdGhvdXQgbmF0
aXZlIGV0YyBzdXBwb3J0LCBhbmdsZSBlbXVsYXRlZCBmb3JtYXQgZmFpbHMKQEAgLTIxMSwxMyAr
MjA2LDcgQEAKIDUyNzcgVlVMS0FOIEFORFJPSUQgOiBkRVFQLUdMRVMzMS5mdW5jdGlvbmFsLmNv
cHlfaW1hZ2Uubm9uX2NvbXByZXNzZWQudmlld2NsYXNzXzMyX2JpdHMucmdiYThfc25vcm1fcmdi
MTBfYTIqID0gRkFJTAogNTI3NyBWVUxLQU4gQU5EUk9JRCA6IGRFUVAtR0xFUzMxLmZ1bmN0aW9u
YWwuY29weV9pbWFnZS5ub25fY29tcHJlc3NlZC52aWV3Y2xhc3NfMzJfYml0cy5yZ2JhOF9zbm9y
bV9yZ2I5X2U1KiA9IEZBSUwKIAotLy8gQ2Fubm90IHN1cHBvcnQgYSBzZXBlcmF0ZSBzZXQgb2Yg
ZnJhZ21lbnQgc2hhZGVyIGlucHV0IHdoZW4gcGVyLXNhbXBsZSBzaGFkaW5nOgotMzU4OCBWVUxL
QU4gQU5EUk9JRCA6IGRFUVAtR0xFUzMxLmZ1bmN0aW9uYWwuc2hhZGVycy5zYW1wbGVfdmFyaWFi
bGVzLnNhbXBsZV9wb3MuY29ycmVjdG5lc3MubXVsdGlzYW1wbGVfKl8xID0gRkFJTAotMzU4OCBW
VUxLQU4gQU5EUk9JRCA6IGRFUVAtR0xFUzMxLmZ1bmN0aW9uYWwuc2hhZGVycy5zYW1wbGVfdmFy
aWFibGVzLnNhbXBsZV9wb3MuY29ycmVjdG5lc3MubXVsdGlzYW1wbGVfKl8yID0gRkFJTAotMzU4
OCBWVUxLQU4gQU5EUk9JRCA6IGRFUVAtR0xFUzMxLmZ1bmN0aW9uYWwuc2hhZGVycy5zYW1wbGVf
dmFyaWFibGVzLnNhbXBsZV9wb3MuY29ycmVjdG5lc3MubXVsdGlzYW1wbGVfKl80ID0gRkFJTAot
CiAvLyBXaGVuIEFOR0xFIGFsbG93cyBub24tY29uZm9ybWFudCBmZWF0dXJlcywgaW1hZ2VBdG9t
aWNFeGNoYW5nZSB3aXRoIHIzMmYgZmFpbHMKLTU1MDMgVlVMS0FOIEFORFJPSUQgOiBkRVFQLUdM
RVMzMS5mdW5jdGlvbmFsLmltYWdlX2xvYWRfc3RvcmUuKi5hdG9taWMuZXhjaGFuZ2VfcjMyZiog
PSBGQUlMCiA1NTAzIFNXSUZUU0hBREVSIDogZEVRUC1HTEVTMzEuZnVuY3Rpb25hbC5pbWFnZV9s
b2FkX3N0b3JlLiouYXRvbWljLmV4Y2hhbmdlX3IzMmYqID0gU0tJUAogCiAvLyBOVklESUEgZmFp
bHVyZXMgb24gb2xkZXIgZHJpdmVycwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvc3JjL3Rlc3RzL2RlcXBfc3VwcG9ydC9kZXFwX2dsZXMzX1Rlc3RFeHBlY3RhdGlvbnMgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvZGVxcF9zdXBwb3J0L2RlcXBfZ2xlczNf
VGVzdEV4cGVjdGF0aW9ucwppbmRleCAwZDRiNDU5NDFjNzFkN2VkZGFkYWYzYzc1YjBlMGVlODJm
NWYwYzY5Li5hOWEzZmNjNjQ1MzcyNDFiMGRjMjRmODg5ZDc5NWEwOGM5NjA1ZTZiIDEwMDY0NAot
LS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvZGVxcF9zdXBwb3J0L2RlcXBf
Z2xlczNfVGVzdEV4cGVjdGF0aW9ucworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
dGVzdHMvZGVxcF9zdXBwb3J0L2RlcXBfZ2xlczNfVGVzdEV4cGVjdGF0aW9ucwpAQCAtNTExLDE4
ICs1MTEsMTEgQEAKIC8vIEdlbmVyYWwgVnVsa2FuIGZhaWx1cmVzCiAKIC8vIFRlc3RzIGZhaWxp
bmcgZHVlIHRvIHRoZSAiZmxhdCIgcXVhbGlmaWVyIGluIHRoZSBzaGFkZXI6Ci0zNjc3IFZVTEtB
TiBOT1NBTiA6IGRFUVAtR0xFUzMuZnVuY3Rpb25hbC5mcmFnbWVudF9vdXQuYmFzaWMuaW50Liog
PSBGQUlMCi0zNjc3IFZVTEtBTiBOT1NBTiA6IGRFUVAtR0xFUzMuZnVuY3Rpb25hbC5mcmFnbWVu
dF9vdXQuYmFzaWMudWludC4qID0gRkFJTAotMzY3NyBWVUxLQU4gTk9TQU4gOiBkRVFQLUdMRVMz
LmZ1bmN0aW9uYWwuZnJhZ21lbnRfb3V0LmFycmF5LmludCogPSBGQUlMCi0zNjc3IFZVTEtBTiBO
T1NBTiA6IGRFUVAtR0xFUzMuZnVuY3Rpb25hbC5mcmFnbWVudF9vdXQuYXJyYXkudWludCogPSBG
QUlMCi0zNjc3IFZVTEtBTiBOT1NBTiA6IGRFUVAtR0xFUzMuZnVuY3Rpb25hbC5mcmFnbWVudF9v
dXQucmFuZG9tLiogPSBGQUlMCi0KLS8vIE5WSURJQSBEZXB0aC9TdGVuY2lsIHRleHR1cmVzOgot
Ly8gRmFpbHMgb24gUXVhZHJvIFA0MDAsIGRyaXZlciA0MTguNTYsIExpbnV4Ci0zOTcwIFZVTEtB
TiBOVklESUEgTElOVVggOiBkRVFQLUdMRVMzLmZ1bmN0aW9uYWwuZmJvLmRlcHRoLmRlcHRoX3dy
aXRlX2NsYW1wLmRlcHRoX2NvbXBvbmVudDMyZiA9IEZBSUwKLTM5NzAgVlVMS0FOIE5WSURJQSBM
SU5VWCA6IGRFUVAtR0xFUzMuZnVuY3Rpb25hbC5mYm8uZGVwdGguZGVwdGhfd3JpdGVfY2xhbXAu
ZGVwdGgzMmZfc3RlbmNpbDggPSBGQUlMCi0zOTcwIFZVTEtBTiBOVklESUEgTElOVVggOiBkRVFQ
LUdMRVMzLmZ1bmN0aW9uYWwuZmJvLmRlcHRoLmRlcHRoX3Rlc3RfY2xhbXAuZGVwdGhfY29tcG9u
ZW50MzJmID0gRkFJTAotMzk3MCBWVUxLQU4gTlZJRElBIExJTlVYIDogZEVRUC1HTEVTMy5mdW5j
dGlvbmFsLmZiby5kZXB0aC5kZXB0aF90ZXN0X2NsYW1wLmRlcHRoMzJmX3N0ZW5jaWw4ID0gRkFJ
TAorMzY3NyBWVUxLQU4gTlZJRElBIE5PU0FOIDogZEVRUC1HTEVTMy5mdW5jdGlvbmFsLmZyYWdt
ZW50X291dC5iYXNpYy5pbnQuKiA9IEZBSUwKKzM2NzcgVlVMS0FOIE5WSURJQSBOT1NBTiA6IGRF
UVAtR0xFUzMuZnVuY3Rpb25hbC5mcmFnbWVudF9vdXQuYmFzaWMudWludC4qID0gRkFJTAorMzY3
NyBWVUxLQU4gTlZJRElBIE5PU0FOIDogZEVRUC1HTEVTMy5mdW5jdGlvbmFsLmZyYWdtZW50X291
dC5hcnJheS5pbnQqID0gRkFJTAorMzY3NyBWVUxLQU4gTlZJRElBIE5PU0FOIDogZEVRUC1HTEVT
My5mdW5jdGlvbmFsLmZyYWdtZW50X291dC5hcnJheS51aW50KiA9IEZBSUwKKzM2NzcgVlVMS0FO
IE5WSURJQSBOT1NBTiA6IGRFUVAtR0xFUzMuZnVuY3Rpb25hbC5mcmFnbWVudF9vdXQucmFuZG9t
LiogPSBGQUlMCiAKIC8vIFRyYW5zZm9ybSBGZWVkYmFjawogNDY2NiBWVUxLQU4gTlZJRElBIDog
ZEVRUC1HTEVTMy5mdW5jdGlvbmFsLnRyYW5zZm9ybV9mZWVkYmFjay5hcnJheV9lbGVtZW50Lmlu
dGVybGVhdmVkLiogPSBTS0lQCkBAIC01MzAsNyArNTIzLDcgQEAKIDQ2NjYgVlVMS0FOIE5WSURJ
QSA6IGRFUVAtR0xFUzMuZnVuY3Rpb25hbC50cmFuc2Zvcm1fZmVlZGJhY2sucmFuZG9tLiogPSBT
S0lQCiAKIC8vIEZsYXQgc2hhZGluZzoKLTM0MzAgVlVMS0FOIDogZEVRUC1HTEVTMy5mdW5jdGlv
bmFsLnJhc3Rlcml6YXRpb24uZmxhdHNoYWRpbmcuKiA9IEZBSUwKKzM0MzAgVlVMS0FOIE5WSURJ
QSA6IGRFUVAtR0xFUzMuZnVuY3Rpb25hbC5yYXN0ZXJpemF0aW9uLmZsYXRzaGFkaW5nLiogPSBG
QUlMCiAKIC8vIE1pc2MgdW5pbXBsZW1lbnRlZDoKIApAQCAtNTM5LDE3ICs1MzIsNyBAQAogLy8g
RmFpbHMgb24gNDMxLjAyIE5WSURJQSBkcml2ZXIKIDM3NDggVlVMS0FOIFdJTiBOVklESUEgOiBk
RVFQLUdMRVMzLmZ1bmN0aW9uYWwuZmJvLmNvbG9yLnJlcGVhdGVkX2NsZWFyLnNhbXBsZS50ZXgy
ZC4qID0gRkFJTAogCi0vLyBBbmRyb2lkIFZ1bGthbiBmYWlsdXJlcwotMzMwNiBBTkRST0lEIFZV
TEtBTiA6IGRFUVAtR0xFUzMuZnVuY3Rpb25hbC5wb2x5Z29uX29mZnNldC4qID0gRkFJTAotMjgz
MCBBTkRST0lEIFZVTEtBTiA6IGRFUVAtR0xFUzMuZnVuY3Rpb25hbC5yYXN0ZXJpemF0aW9uLmZi
by5yYm9fc2luZ2xlc2FtcGxlLnByaW1pdGl2ZXMubGluZXMgPSBGQUlMCi0yODMwIEFORFJPSUQg
VlVMS0FOIDogZEVRUC1HTEVTMy5mdW5jdGlvbmFsLnJhc3Rlcml6YXRpb24uZmJvLnRleHR1cmVf
MmQucHJpbWl0aXZlcy5saW5lcyA9IEZBSUwKLTI4MzAgQU5EUk9JRCBWVUxLQU4gOiBkRVFQLUdM
RVMzLmZ1bmN0aW9uYWwucmFzdGVyaXphdGlvbi5wcmltaXRpdmVzLmxpbmUqID0gRkFJTAotMjgw
OCBBTkRST0lEIFZVTEtBTiA6IGRFUVAtR0xFUzMuZnVuY3Rpb25hbC5zaGFkZXJzLmJ1aWx0aW5f
dmFyaWFibGUuZnJhZ2Nvb3JkX3cgPSBGQUlMCi0KLS8vIEZpeGVkIGluIGxhdGVyIGRyaXZlciB2
ZXJzaW9ucy4KLTI3MjcgVlVMS0FOIEFORFJPSUQgOiBkRVFQLUdMRVMzLmZ1bmN0aW9uYWwuc2hh
ZGVycy5idWlsdGluX3ZhcmlhYmxlLnBvaW50Y29vcmQgPSBGQUlMCi0KLS8vIEZhaWxzIG9ubHkg
d2l0aCBTd2lmdFNoYWRlcjoKKy8vRmFpbHMgb25seSB3aXRoIFN3aWZ0U2hhZGVyOgogCiAvLyBU
aGVzZSBvbmx5IGZhaWwgZm9yIGEgNTY1IGNvbmZpZwogNDAxNiBTV0lGVFNIQURFUiA6IGRFUVAt
R0xFUzMuZnVuY3Rpb25hbC5mcmFnbWVudF9vcHMuaW50ZXJhY3Rpb24uYmFzaWNfc2hhZGVyLjI3
ID0gRkFJTApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2Rl
cXBfc3VwcG9ydC9kZXFwX2dsZXMzX3JvdGF0ZV9UZXN0RXhwZWN0YXRpb25zIGIvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2RlcXBfc3VwcG9ydC9kZXFwX2dsZXMzX3JvdGF0ZV9U
ZXN0RXhwZWN0YXRpb25zCmluZGV4IDUwODQ4Y2I5ZDUzMzNkZjE3NGNiYTNjZDk0MzZkZjU2MDE4
ZjQwN2YuLjg1ODZhNDcwMGQyYmEyNGJjZmE5OWEyZWFlMWRjMmEyNjBjYjMwMTEgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9kZXFwX3N1cHBvcnQvZGVxcF9n
bGVzM19yb3RhdGVfVGVzdEV4cGVjdGF0aW9ucworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zcmMvdGVzdHMvZGVxcF9zdXBwb3J0L2RlcXBfZ2xlczNfcm90YXRlX1Rlc3RFeHBlY3RhdGlv
bnMKQEAgLTYsMTggKzYsNSBAQAogCiAvLyBPbmx5IHRlc3RlZCBvbiBWdWxrYW4gY3VycmVudGx5
CiAKLS8vIEZsYXQgc2hhZGluZzoKKy8vIEZsYXQgc2hhZGluZyAoc3RpbGwgZmFpbGluZyBNYXJj
aCAxNiwgMjAyMik6CiAzNDMwIFZVTEtBTiA6IGRFUVAtR0xFUzMuZnVuY3Rpb25hbC5yYXN0ZXJp
emF0aW9uLmZsYXRzaGFkaW5nLiogPSBGQUlMCi0KLS8vIEFuZHJvaWQgVnVsa2FuIGZhaWx1cmVz
Ci0yODMwIEFORFJPSUQgVlVMS0FOIDogZEVRUC1HTEVTMy5mdW5jdGlvbmFsLnJhc3Rlcml6YXRp
b24uZmJvLnJib19zaW5nbGVzYW1wbGUucHJpbWl0aXZlcy5saW5lcyA9IEZBSUwKLTI4MzAgQU5E
Uk9JRCBWVUxLQU4gOiBkRVFQLUdMRVMzLmZ1bmN0aW9uYWwucmFzdGVyaXphdGlvbi5mYm8udGV4
dHVyZV8yZC5wcmltaXRpdmVzLmxpbmVzID0gRkFJTAotMjgzMCBBTkRST0lEIFZVTEtBTiA6IGRF
UVAtR0xFUzMuZnVuY3Rpb25hbC5yYXN0ZXJpemF0aW9uLnByaW1pdGl2ZXMubGluZSogPSBGQUlM
Ci0yODA4IEFORFJPSUQgVlVMS0FOIDogZEVRUC1HTEVTMy5mdW5jdGlvbmFsLnNoYWRlcnMuYnVp
bHRpbl92YXJpYWJsZS5mcmFnY29vcmRfdyA9IEZBSUwKLQotMTYxNTQwOTk5IFBJWEVMMk9SWEwg
VlVMS0FOIDogZEVRUC1HTEVTMy5mdW5jdGlvbmFsLmNvbG9yX2NsZWFyLm1hc2tlZF9yZ2IgPSBG
QUlMCi0xNjE1NDA5OTkgUElYRUwyT1JYTCBWVUxLQU4gOiBkRVFQLUdMRVMzLmZ1bmN0aW9uYWwu
Y29sb3JfY2xlYXIubWFza2VkX3JnYmEgPSBGQUlMCi0xNjE1NDA5OTkgUElYRUwyT1JYTCBWVUxL
QU4gOiBkRVFQLUdMRVMzLmZ1bmN0aW9uYWwuZGVwdGhfc3RlbmNpbF9jbGVhci5kZXB0aF9zdGVu
Y2lsX21hc2tlZCA9IEZBSUwKLQotLy8gRml4ZWQgaW4gbGF0ZXIgZHJpdmVyIHZlcnNpb25zLgot
MjcyNyBWVUxLQU4gQU5EUk9JRCA6IGRFUVAtR0xFUzMuZnVuY3Rpb25hbC5zaGFkZXJzLmJ1aWx0
aW5fdmFyaWFibGUucG9pbnRjb29yZCA9IEZBSUwKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL3NyYy90ZXN0cy9kZXFwX3N1cHBvcnQvZGVxcF9raHJfZ2xlczJfVGVzdEV4cGVj
dGF0aW9ucyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9kZXFwX3N1cHBvcnQv
ZGVxcF9raHJfZ2xlczJfVGVzdEV4cGVjdGF0aW9ucwppbmRleCBkNTY3NDAwMDI0YTg2Mjc5M2Y2
N2RkY2Q4NjdiZmU5ZDU1NjAyZjZjLi5hYzA3MmQ3Mzc5MjExYjlkYzEzM2M3ZDljZDYyNGQwNzY2
YmY0YmQwIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvZGVx
cF9zdXBwb3J0L2RlcXBfa2hyX2dsZXMyX1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2RlcXBfc3VwcG9ydC9kZXFwX2tocl9nbGVzMl9UZXN0
RXhwZWN0YXRpb25zCkBAIC00LDkgKzQsNiBAQAogCiAvLyBTZWUgUkVBRE1FLm1kIGZvciBmb3Jt
YXQuCiAKLS8vIERlcHRoL3N0ZW5jaWwgcmVsYXRlZCBmYWlsdXJlcy4KLTM0NTcgVlVMS0FOIDog
S0hSLUdMRVMyLmNvcmUuaW50ZXJuYWxmb3JtYXQudGV4dHVyZTJkLmRlcHRoX3N0ZW5jaWxfdW5z
aWduZWRfaW50XzI0XzhfZGVwdGhfc3RlbmNpbCA9IEZBSUwKLQogNjY3OCBVQlNBTiA6IEtIUi1H
TEVTMi5jb3JlLmludGVybmFsZm9ybWF0LnRleHR1cmUyZC5yZ2JfaGFsZl9mbG9hdF9vZXNfcmdi
ID0gU0tJUAogNjY3OCBVQlNBTiA6IEtIUi1HTEVTMi5jb3JlLmludGVybmFsZm9ybWF0LnRleHR1
cmUyZC5yZ2JfaGFsZl9mbG9hdF9vZXNfcmdiX2xpbmVhciA9IFNLSVAKIDY2NzggVUJTQU4gOiBL
SFItR0xFUzIuY29yZS5pbnRlcm5hbGZvcm1hdC50ZXh0dXJlMmQucmdiYV9oYWxmX2Zsb2F0X29l
c19yZ2JhID0gU0tJUApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rl
c3RzL2RlcXBfc3VwcG9ydC9kZXFwX2tocl9nbGVzMzFfVGVzdEV4cGVjdGF0aW9ucyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9kZXFwX3N1cHBvcnQvZGVxcF9raHJfZ2xlczMx
X1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggZTliOTAxYTU5ZmI1OTJkMjNjMTZjOTQ2MTAwOTgxNTAz
ZTE5MDI3MS4uZGZiZDY0OGM1ZTU4MGI1NjlmMjVhMGExMTRkZGQ4ZDlkMDFhMmJmZCAxMDA2NDQK
LS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2RlcXBfc3VwcG9ydC9kZXFw
X2tocl9nbGVzMzFfVGVzdEV4cGVjdGF0aW9ucworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zcmMvdGVzdHMvZGVxcF9zdXBwb3J0L2RlcXBfa2hyX2dsZXMzMV9UZXN0RXhwZWN0YXRpb25z
CkBAIC0xNiwyMyArMTYsMjIgQEAKIC8vLy8gR2VuZXJhbCBWdWxrYW4gZXhwZWN0YXRpb25zCiAv
Ly8vCiAKLS8vIEZyYW1lYnVmZmVyIHdpdGhvdXQgYXR0YWNobWVudHM6Ci0zNTc5IFZVTEtBTiA6
IEtIUi1HTEVTMzEuY29yZS5mcmFtZWJ1ZmZlcl9ub19hdHRhY2htZW50cy5hcGkgPSBGQUlMCi0K
LS8vIEJsZW5kIGVxdWF0aW9uczoKLTM1ODYgVlVMS0FOIDogS0hSLUdMRVMzMS5jb3JlLmJsZW5k
X2VxdWF0aW9uX2FkdmFuY2VkLiogPSBTS0lQCi0KIC8vIE5vIGtub3duIGltcGxlbWVudGF0aW9u
IHN1cHBvcnRzIFNUT1JBR0VfVEVYRUxfQlVGRkVSIHN1cHBvcnQgZm9yIFJHQjMyIGZvcm1hdHMK
IDM1NzMgVlVMS0FOIDogS0hSLUdMRVMzMS5jb3JlLnRleHR1cmVfYnVmZmVyLnRleHR1cmVfYnVm
ZmVyX3RleHR1cmVfYnVmZmVyX3JhbmdlID0gU0tJUAogCiAvLyBHZW9tZXRyeSBzaGFkZXIgc3Vw
cG9ydCAoY29uZGl0aW9uZWQgdG8gd2luZG93cyBhcyB0aGF0J3Mgb3VyIG9ubHkgYm90IGNhcGFi
bGUgb2YgcnVubmluZyB0aGVzZQogLy8gdGVzdHMpCiAvLyBXcm9uZyByZXN1bHRzCi01NTc5IFZV
TEtBTiA6IEtIUi1HTEVTMzEuY29yZS5nZW9tZXRyeV9zaGFkZXIuYWRqYWNlbmN5LmFkamFjZW5j
eV9pbmRpY2VkX3RyaWFuZ2xlX3N0cmlwID0gRkFJTAotNTU3OSBWVUxLQU4gOiBLSFItR0xFUzMx
LmNvcmUuZ2VvbWV0cnlfc2hhZGVyLmFkamFjZW5jeS5hZGphY2VuY3lfbm9uX2luZGljZWRfdHJp
YW5nbGVfc3RyaXAgPSBGQUlMCi01NTc5IFZVTEtBTiA6IEtIUi1HTEVTMzEuY29yZS5nZW9tZXRy
eV9zaGFkZXIucmVuZGVyaW5nLnJlbmRlcmluZy50cmlhbmdsZXNfaW5wdXRfbGluZV9zdHJpcF9v
dXRwdXRfdHJpYW5nbGVfKl9kcmF3Y2FsbCA9IEZBSUwKLTU1NzkgVlVMS0FOIDogS0hSLUdMRVMz
MS5jb3JlLmdlb21ldHJ5X3NoYWRlci5yZW5kZXJpbmcucmVuZGVyaW5nLnRyaWFuZ2xlc19pbnB1
dF90cmlhbmdsZV9zdHJpcF9vdXRwdXRfdHJpYW5nbGVfKl9kcmF3Y2FsbCA9IEZBSUwKLTU1Nzkg
VlVMS0FOIDogS0hSLUdMRVMzMS5jb3JlLmdlb21ldHJ5X3NoYWRlci5yZW5kZXJpbmcucmVuZGVy
aW5nLnRyaWFuZ2xlc193aXRoX2FkamFjZW5jeV9pbnB1dF8qX3N0cmlwX291dHB1dF90cmlhbmds
ZV9zdHJpcF9hZGphY2VuY3lfZHJhd2NhbGwgPSBGQUlMCis1NTc5IFZVTEtBTiBXSU4gOiBLSFIt
R0xFUzMxLmNvcmUuZ2VvbWV0cnlfc2hhZGVyLmFkamFjZW5jeS5hZGphY2VuY3lfaW5kaWNlZF90
cmlhbmdsZV9zdHJpcCA9IEZBSUwKKzU1NzkgVlVMS0FOIFdJTiA6IEtIUi1HTEVTMzEuY29yZS5n
ZW9tZXRyeV9zaGFkZXIuYWRqYWNlbmN5LmFkamFjZW5jeV9ub25faW5kaWNlZF90cmlhbmdsZV9z
dHJpcCA9IEZBSUwKKzU1NzkgVlVMS0FOIFdJTiA6IEtIUi1HTEVTMzEuY29yZS5nZW9tZXRyeV9z
aGFkZXIucmVuZGVyaW5nLnJlbmRlcmluZy50cmlhbmdsZXNfaW5wdXRfbGluZV9zdHJpcF9vdXRw
dXRfdHJpYW5nbGVfKl9kcmF3Y2FsbCA9IEZBSUwKKzU1NzkgVlVMS0FOIFdJTiA6IEtIUi1HTEVT
MzEuY29yZS5nZW9tZXRyeV9zaGFkZXIucmVuZGVyaW5nLnJlbmRlcmluZy50cmlhbmdsZXNfaW5w
dXRfdHJpYW5nbGVfc3RyaXBfb3V0cHV0X3RyaWFuZ2xlXypfZHJhd2NhbGwgPSBGQUlMCis1NTc5
IFZVTEtBTiBXSU4gOiBLSFItR0xFUzMxLmNvcmUuZ2VvbWV0cnlfc2hhZGVyLnJlbmRlcmluZy5y
ZW5kZXJpbmcudHJpYW5nbGVzX3dpdGhfYWRqYWNlbmN5X2lucHV0Xypfc3RyaXBfb3V0cHV0X3Ry
aWFuZ2xlX3N0cmlwX2FkamFjZW5jeV9kcmF3Y2FsbCA9IEZBSUwKKzU1NzkgVlVMS0FOIExJTlVY
IDogS0hSLUdMRVMzMS5jb3JlLmdlb21ldHJ5X3NoYWRlci5hZGphY2VuY3kuYWRqYWNlbmN5X2lu
ZGljZWRfdHJpYW5nbGVfc3RyaXAgPSBGQUlMCis1NTc5IFZVTEtBTiBMSU5VWCA6IEtIUi1HTEVT
MzEuY29yZS5nZW9tZXRyeV9zaGFkZXIuYWRqYWNlbmN5LmFkamFjZW5jeV9ub25faW5kaWNlZF90
cmlhbmdsZV9zdHJpcCA9IEZBSUwKKzU1NzkgVlVMS0FOIExJTlVYIDogS0hSLUdMRVMzMS5jb3Jl
Lmdlb21ldHJ5X3NoYWRlci5yZW5kZXJpbmcucmVuZGVyaW5nLnRyaWFuZ2xlc19pbnB1dF9saW5l
X3N0cmlwX291dHB1dF90cmlhbmdsZV8qX2RyYXdjYWxsID0gRkFJTAorNTU3OSBWVUxLQU4gTElO
VVggOiBLSFItR0xFUzMxLmNvcmUuZ2VvbWV0cnlfc2hhZGVyLnJlbmRlcmluZy5yZW5kZXJpbmcu
dHJpYW5nbGVzX2lucHV0X3RyaWFuZ2xlX3N0cmlwX291dHB1dF90cmlhbmdsZV8qX2RyYXdjYWxs
ID0gRkFJTAorNTU3OSBWVUxLQU4gTElOVVggOiBLSFItR0xFUzMxLmNvcmUuZ2VvbWV0cnlfc2hh
ZGVyLnJlbmRlcmluZy5yZW5kZXJpbmcudHJpYW5nbGVzX3dpdGhfYWRqYWNlbmN5X2lucHV0Xypf
c3RyaXBfb3V0cHV0X3RyaWFuZ2xlX3N0cmlwX2FkamFjZW5jeV9kcmF3Y2FsbCA9IEZBSUwKIC8v
IEZhaWx1cmVzIG9uIHdpbmRvd3MgbnZpZGlhCiA1NTc5IFZVTEtBTiBOVklESUEgOiBLSFItR0xF
UzMxLmNvcmUuZ2VvbWV0cnlfc2hhZGVyLmxpbWl0cy5tYXhfaW52b2NhdGlvbnMgPSBGQUlMCiAK
QEAgLTU5LDkgKzU4LDYgQEAKIDQ3MjMgVlVMS0FOIE5WSURJQSA6IEtIUi1HTEVTMzEuY29yZS5z
aGFkZXJfaW1hZ2Vfc2l6ZS5hZHZhbmNlZC1ub25NUy12cy11aW50ID0gU0tJUAogNDcyMyBWVUxL
QU4gTlZJRElBIDogS0hSLUdMRVMzMS5jb3JlLnByb2dyYW1faW50ZXJmYWNlX3F1ZXJ5LnRyYW5z
Zm9ybS1mZWVkYmFjay10eXBlcyA9IFNLSVAKIAotLy8gTmV3IGZhaWx1cmVzIHdpdGggbGF0ZXN0
IGRFUVAgcm9sbCAoMjAyMS0wMy0wNSkKLTU3MjIgVlVMS0FOIDogS0hSLUdMRVMzMS5jb3JlLmZy
YW1lYnVmZmVyX2NvbXBsZXRlbmVzcy5yYm9fYW5kX3RleHR1cmVfZXhwZWN0X3plcm9fbnVtc2Ft
cGxlcyA9IEZBSUwKLQogLy8gTmV3bHktYWRkZWQgZEVRUCB0ZXN0cyB0aGF0IGFyZSBmYWlsaW5n
CiA2NDQxIFZVTEtBTiA6IEtIUi1HTEVTMzEuY29yZS5jb21wcmVzc2VkKiA9IFNLSVAKIApkaWZm
IC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2RlcXBfc3VwcG9ydC9k
ZXFwX2tocl9nbGVzMzJfVGVzdEV4cGVjdGF0aW9ucyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy90ZXN0cy9kZXFwX3N1cHBvcnQvZGVxcF9raHJfZ2xlczMyX1Rlc3RFeHBlY3RhdGlvbnMK
aW5kZXggN2MxMWI4Njc3NWVhMGUxOGIxNTYzNGNiNmY5NzNjYWVmNDY2YTU4Yi4uNGRhMTE4Njg4
MTk3NTM0ZGFhYTY1M2VhZWZjZjRmOWUwMjk1OTg1YyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvc3JjL3Rlc3RzL2RlcXBfc3VwcG9ydC9kZXFwX2tocl9nbGVzMzJfVGVzdEV4
cGVjdGF0aW9ucworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvZGVxcF9z
dXBwb3J0L2RlcXBfa2hyX2dsZXMzMl9UZXN0RXhwZWN0YXRpb25zCkBAIC05LDcgKzksNiBAQAog
Ly8gR2VvbWV0cnkgc2hhZGVyIHN1cHBvcnQgKGNvbmRpdGlvbmVkIHRvIHdpbmRvd3MgYXMgdGhh
dCdzIG91ciBvbmx5IGJvdCBjYXBhYmxlIG9mIHJ1bm5pbmcgdGhlc2UKIC8vIHRlc3RzKQogLy8g
QVBJIHZhbGlkYXRpb24gYnVncwotNTU3OSBWVUxLQU4gV0lOIDogS0hSLUdMRVMzMi5jb3JlLmdl
b21ldHJ5X3NoYWRlci5xdWFsaWZpZXJzLmZsYXRfaW50ZXJwb2xhdGlvbiA9IEZBSUwKIC8vIFdy
b25nIHJlc3VsdHMKIDU1NzkgVlVMS0FOIFdJTiA6IEtIUi1HTEVTMzIuY29yZS5nZW9tZXRyeV9z
aGFkZXIuYWRqYWNlbmN5LmFkamFjZW5jeV9pbmRpY2VkX3RyaWFuZ2xlX3N0cmlwID0gRkFJTAog
NTU3OSBWVUxLQU4gV0lOIDogS0hSLUdMRVMzMi5jb3JlLmdlb21ldHJ5X3NoYWRlci5hZGphY2Vu
Y3kuYWRqYWNlbmN5X25vbl9pbmRpY2VkX3RyaWFuZ2xlX3N0cmlwID0gRkFJTApAQCAtODcsNjAg
Kzg2LDE2IEBACiAzNTc3IFZVTEtBTiA6IEtIUi1HTEVTMzIuY29yZS5ncHVfc2hhZGVyNS4qY2xh
bXAqX2JvcmRlciA9IFNLSVAKIDM1NzcgVlVMS0FOIDogS0hSLUdMRVMzMi5jb3JlLmdwdV9zaGFk
ZXI1LipjbGFtcCpfZWRnZSA9IFNLSVAKIAotLy8gVmFsaWRhdGlvbiBlcnJvciBmcm9tIEVYVF9n
cHVfc2hhZGVyNQotNTM2MSBWVUxLQU4gOiBLSFItR0xFUzMyLmNvcmUuZ3B1X3NoYWRlcjUucHJl
Y2lzZV9xdWFsaWZpZXIgPSBGQUlMCi0KIC8vIE5vIGtub3duIGltcGxlbWVudGF0aW9uIHN1cHBv
cnRzIFNUT1JBR0VfVEVYRUxfQlVGRkVSIHN1cHBvcnQgZm9yIFJHQjMyIGZvcm1hdHMKIDM1NzMg
VlVMS0FOIDogS0hSLUdMRVMzMi5jb3JlLnRleHR1cmVfYnVmZmVyLnRleHR1cmVfYnVmZmVyX3Rl
eHR1cmVfYnVmZmVyX3JhbmdlID0gU0tJUAogCi0vLyBJbmNvcnJlY3QgZGVwZW5kZW5jeSB0byBW
S19FWFRfc2hhZGVyX2F0b21pY19mbG9hdAotNTM0MiBWVUxLQU4gOiBLSFItR0xFUzMyLmNvcmUu
dGV4dHVyZV9idWZmZXIudGV4dHVyZV9idWZmZXJfYXRvbWljX2Z1bmN0aW9ucyA9IEZBSUwKLQog
Ly8gRGVza3RvcCBjYXJkcyB3aXRob3V0IG5hdGl2ZSBldGMgc3VwcG9ydAogNTI3NiBBTUQgVlVM
S0FOIExJTlVYIDogS0hSLUdMRVMzMi5jb3JlLnRleHR1cmVfY3ViZV9tYXBfYXJyYXkuZXRjMl90
ZXh0dXJlID0gRkFJTAogNTI3NiBBTUQgVlVMS0FOIFdJTiA6IEtIUi1HTEVTMzIuY29yZS50ZXh0
dXJlX2N1YmVfbWFwX2FycmF5LmV0YzJfdGV4dHVyZSA9IEZBSUwKIDUyNzYgTlZJRElBIFZVTEtB
TiA6IEtIUi1HTEVTMzIuY29yZS50ZXh0dXJlX2N1YmVfbWFwX2FycmF5LmV0YzJfdGV4dHVyZSA9
IEZBSUwKIAotLy8gTmV3IGZhaWx1cmVzIHdpdGggbGF0ZXN0IGRFUVAgcm9sbCAoMjAyMS0wMy0w
NSkKLTU3MjIgVlVMS0FOIDogS0hSLUdMRVMzMi5jb3JlLmZyYW1lYnVmZmVyX2NvbXBsZXRlbmVz
cy5yYm9fYW5kX3RleHR1cmVfZXhwZWN0X3plcm9fbnVtc2FtcGxlcyA9IEZBSUwKLQogLy8gTmV3
bHktYWRkZWQgZEVRUCB0ZXN0cyB0aGF0IGFyZSBmYWlsaW5nICgyMDIxLTA5LTI3KQogNjQ0MSBW
VUxLQU4gOiBLSFItR0xFUzMyLmNvcmUuY29tcHJlc3NlZCogPSBTS0lQCiAKLS8vIEFuZHJvaWQg
ZmFpbHVyZXMKLQotLy8gRHluYW1pYyBpbmRleGluZyBmZWF0dXJlcyBub3Qgc3VwcG9ydGVkIG9u
IFF1YWxjb21tCi01NDM1IFZVTEtBTiBBTkRST0lEIDogS0hSLUdMRVMzMi5jb3JlLmdwdV9zaGFk
ZXI1LmltYWdlc19hcnJheV9pbmRleGluZyA9IEZBSUwKLQotLy8gVGV4dHVyZSBidWZmZXIgZmFp
bHVyZXMKLTUzOTIgVlVMS0FOIEFORFJPSUQgOiBLSFItR0xFUzMyLmNvcmUudGV4dHVyZV9idWZm
ZXIudGV4dHVyZV9idWZmZXJfYWN0aXZlX3VuaWZvcm1fdmFsaWRhdGlvbl9jb21wdXRlX3NoYWRl
ciA9IEZBSUwKLTUzOTIgVlVMS0FOIEFORFJPSUQgOiBLSFItR0xFUzMyLmNvcmUudGV4dHVyZV9i
dWZmZXIudGV4dHVyZV9idWZmZXJfYWN0aXZlX3VuaWZvcm1fdmFsaWRhdGlvbl9mcmFnbWVudF9z
aGFkZXIgPSBGQUlMCi01MzkyIFZVTEtBTiBBTkRST0lEIDogS0hSLUdMRVMzMi5jb3JlLnRleHR1
cmVfYnVmZmVyLnRleHR1cmVfYnVmZmVyX2NvbnZfaW50X3RvX2Zsb2F0ID0gRkFJTAotNTM5MiBW
VUxLQU4gQU5EUk9JRCA6IEtIUi1HTEVTMzIuY29yZS50ZXh0dXJlX2J1ZmZlci50ZXh0dXJlX2J1
ZmZlcl9lcnJvcnMgPSBGQUlMCi01MzkyIFZVTEtBTiBBTkRST0lEIDogS0hSLUdMRVMzMi5jb3Jl
LnRleHR1cmVfYnVmZmVyLnRleHR1cmVfYnVmZmVyX21heF9zaXplID0gRkFJTAotNTM5MiBWVUxL
QU4gQU5EUk9JRCA6IEtIUi1HTEVTMzIuY29yZS50ZXh0dXJlX2J1ZmZlci50ZXh0dXJlX2J1ZmZl
cl9vcGVyYXRpb25zX2J1ZmZlcl9sb2FkID0gRkFJTAotNTM5MiBWVUxLQU4gQU5EUk9JRCA6IEtI
Ui1HTEVTMzIuY29yZS50ZXh0dXJlX2J1ZmZlci50ZXh0dXJlX2J1ZmZlcl9vcGVyYXRpb25zX2Nw
dV93cml0ZXMgPSBGQUlMCi01MzkyIFZVTEtBTiBBTkRST0lEIDogS0hSLUdMRVMzMi5jb3JlLnRl
eHR1cmVfYnVmZmVyLnRleHR1cmVfYnVmZmVyX29wZXJhdGlvbnNfZnJhbWVidWZmZXJfcmVhZGJh
Y2sgPSBGQUlMCi01MzkyIFZVTEtBTiBBTkRST0lEIDogS0hSLUdMRVMzMi5jb3JlLnRleHR1cmVf
YnVmZmVyLnRleHR1cmVfYnVmZmVyX29wZXJhdGlvbnNfaW1hZ2Vfc3RvcmUgPSBGQUlMCi01Mzky
IFZVTEtBTiBBTkRST0lEIDogS0hSLUdMRVMzMi5jb3JlLnRleHR1cmVfYnVmZmVyLnRleHR1cmVf
YnVmZmVyX29wZXJhdGlvbnNfc3Nib193cml0ZXMgPSBGQUlMCi01MzkyIFZVTEtBTiBBTkRST0lE
IDogS0hSLUdMRVMzMi5jb3JlLnRleHR1cmVfYnVmZmVyLnRleHR1cmVfYnVmZmVyX29wZXJhdGlv
bnNfdHJhbnNmb3JtX2ZlZWRiYWNrID0gRkFJTAotNTM5MiBWVUxLQU4gQU5EUk9JRCA6IEtIUi1H
TEVTMzIuY29yZS50ZXh0dXJlX2J1ZmZlci50ZXh0dXJlX2J1ZmZlcl9wYXJhbWV0ZXJzID0gRkFJ
TAotCi0vLyBDdWJlIG1hcCBhcnJheSBmYWlsdXJlcwotNTM5MyBWVUxLQU4gQU5EUk9JRCA6IEtI
Ui1HTEVTMzIuY29yZS50ZXh0dXJlX2N1YmVfbWFwX2FycmF5LmV0YzJfdGV4dHVyZSA9IEZBSUwK
LTUzOTMgVlVMS0FOIEFORFJPSUQgOiBLSFItR0xFUzMyLmNvcmUudGV4dHVyZV9jdWJlX21hcF9h
cnJheS5nZW5lcmF0ZV9taXBfbWFwX2ZpbHRlcmFibGVfaW50ZXJuYWxmb3JtYXRfaW1tdXRhYmxl
ID0gRkFJTAotNTM5MyBWVUxLQU4gQU5EUk9JRCA6IEtIUi1HTEVTMzIuY29yZS50ZXh0dXJlX2N1
YmVfbWFwX2FycmF5LmdlbmVyYXRlX21pcF9tYXBfZmlsdGVyYWJsZV9pbnRlcm5hbGZvcm1hdF9t
dXRhYmxlID0gRkFJTAotNTM5MyBWVUxLQU4gQU5EUk9JRCA6IEtIUi1HTEVTMzIuY29yZS50ZXh0
dXJlX2N1YmVfbWFwX2FycmF5LmdlbmVyYXRlX21pcF9tYXBfbm9uX2ZpbHRlcmFibGVfaW1tdXRh
YmxlX3N0b3JhZ2UgPSBGQUlMCi01MzkzIFZVTEtBTiBBTkRST0lEIDogS0hSLUdMRVMzMi5jb3Jl
LnRleHR1cmVfY3ViZV9tYXBfYXJyYXkuZ2VuZXJhdGVfbWlwX21hcF9ub25fZmlsdGVyYWJsZV9t
dXRhYmxlX3N0b3JhZ2UgPSBGQUlMCi01MzkzIFZVTEtBTiBBTkRST0lEIDogS0hSLUdMRVMzMi5j
b3JlLnRleHR1cmVfY3ViZV9tYXBfYXJyYXkuZ2V0dGVyX2NhbGxzID0gRkFJTAotNTM5MyBWVUxL
QU4gQU5EUk9JRCA6IEtIUi1HTEVTMzIuY29yZS50ZXh0dXJlX2N1YmVfbWFwX2FycmF5LmltYWdl
X29wX2NvbXB1dGVfc2ggPSBGQUlMCi01MzkzIFZVTEtBTiBBTkRST0lEIDogS0hSLUdMRVMzMi5j
b3JlLnRleHR1cmVfY3ViZV9tYXBfYXJyYXkuc3RlbmNpbF9hdHRhY2htZW50c19pbW11dGFibGVf
bm9ubGF5ZXJlZCA9IEZBSUwKLTUzOTMgVlVMS0FOIEFORFJPSUQgOiBLSFItR0xFUzMyLmNvcmUu
dGV4dHVyZV9jdWJlX21hcF9hcnJheS5zdGVuY2lsX2F0dGFjaG1lbnRzX211dGFibGVfbm9ubGF5
ZXJlZCA9IEZBSUwKLTUzOTMgVlVMS0FOIEFORFJPSUQgOiBLSFItR0xFUzMyLmNvcmUudGV4dHVy
ZV9jdWJlX21hcF9hcnJheS5zdWJpbWFnZTNEID0gRkFJTAotNTM5MyBWVUxLQU4gQU5EUk9JRCA6
IEtIUi1HTEVTMzIuY29yZS50ZXh0dXJlX2N1YmVfbWFwX2FycmF5LnRleDNEX3ZhbGlkYXRpb24g
PSBGQUlMCi01MzkzIFZVTEtBTiBBTkRST0lEIDogS0hSLUdMRVMzMi5jb3JlLnRleHR1cmVfY3Vi
ZV9tYXBfYXJyYXkudGV4dHVyZV9zaXplX2NvbXB1dGVfc2ggPSBGQUlMCi01MzkzIFZVTEtBTiBB
TkRST0lEIDogS0hSLUdMRVMzMi5jb3JlLnRleHR1cmVfY3ViZV9tYXBfYXJyYXkudGV4dHVyZV9z
aXplX2ZyYWdtZW50X3NoID0gRkFJTAotNTM5MyBWVUxLQU4gQU5EUk9JRCA6IEtIUi1HTEVTMzIu
Y29yZS50ZXh0dXJlX2N1YmVfbWFwX2FycmF5LnRleHR1cmVfc2l6ZV92ZXJ0ZXhfc2ggPSBGQUlM
Ci0KIC8vIFBpeGVsIDQgZXhwZWN0YXRpb25zLgogNTk5MCBQSVhFTDRPUlhMIFZVTEtBTiA6IEtI
Ui1HTEVTMzIuY29yZS5kcmF3X2J1ZmZlcnNfaW5kZXhlZC5jb2xvcl9tYXNrcyA9IFNLSVAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9kZXFwX3N1cHBvcnQv
ZGVxcF9raHJfZ2xlczNfVGVzdEV4cGVjdGF0aW9ucyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy90ZXN0cy9kZXFwX3N1cHBvcnQvZGVxcF9raHJfZ2xlczNfVGVzdEV4cGVjdGF0aW9ucwpp
bmRleCAwZDQ4ZWZjZDVmZWZjMmVmMWQ3YjU0N2QwZjQ3NjA5NDhkZmE1YmUxLi4zMjA0OGFjOTQ5
N2I5ZGU3ZWIzMzBhYTQwYTkxZmQzNGI2MDUyMzNmIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9BTkdMRS9zcmMvdGVzdHMvZGVxcF9zdXBwb3J0L2RlcXBfa2hyX2dsZXMzX1Rlc3RFeHBl
Y3RhdGlvbnMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2RlcXBfc3Vw
cG9ydC9kZXFwX2tocl9nbGVzM19UZXN0RXhwZWN0YXRpb25zCkBAIC03LDI4ICs3LDExIEBACiAv
LyBGb3Igbm93IHdlIG9ubHkgbG9nIFZ1bGthbiB0ZXN0IGV4cGVjdGF0aW9ucy4gTW9yZSBiYWNr
LWVuZHMgY2FuIGZvbGxvdyBhcyB3ZSBuZWVkIHRoZW0uCiAKIC8vIERlcHRoL3N0ZW5jaWwgcmVs
YXRlZCBmYWlsdXJlcyBkdWUgdG8gVnVsa2FuIGRyaXZlciBidWdzLgotMzY4MyBWVUxLQU4gQU5E
Uk9JRCA6IEtIUi1HTEVTMy5wYWNrZWRfZGVwdGhfc3RlbmNpbC4qLmRlcHRoMjRfc3RlbmNpbDgg
PSBGQUlMCi0zNjgzIFZVTEtBTiBBTkRST0lEIDogS0hSLUdMRVMzLnBhY2tlZF9kZXB0aF9zdGVu
Y2lsLiouZGVwdGgzMmZfc3RlbmNpbDggPSBGQUlMCi0KLS8vIGdsQ29weVRleEltYWdlIGZyb20g
M0QgdGV4dHVyZXMgaXMgZmFpbGluZyBhbmQgZ2V0dGluZyB0aGUgZm9sbG93aW5nIFZ1bGthbiBW
YWxpZGF0aW9uIGVycm9yczoKLS8vCi0vLyAgSW1hZ2VWaWV3IG11c3Qgbm90IGJlIGEgMkQgb3Ig
MkRBcnJheSB2aWV3IG9mIGEgM0QgaW1hZ2UuIFRoZSBWdWxrYW4gc3BlYyBzdGF0ZXM6Ci0vLyAg
aW1hZ2VWaWV3IG11c3Qgbm90IGJlIDJEIG9yIDJEIGFycmF5IGltYWdlIHZpZXcgY3JlYXRlZCBm
cm9tIGEgM0QgaW1hZ2UKLS8vCi0zODM2IFZVTEtBTiBOT1NBTiA6IEtIUi1HTEVTMy5jb3B5X3Rl
eF9pbWFnZV9jb252ZXJzaW9ucy5yZXF1aXJlZC50ZXh0dXJlM2RfdGV4dHVyZTJkID0gRkFJTAot
MzgzNiBWVUxLQU4gTk9TQU4gOiBLSFItR0xFUzMuY29weV90ZXhfaW1hZ2VfY29udmVyc2lvbnMu
cmVxdWlyZWQudGV4dHVyZTNkX2N1YmVtYXBfbmVneCA9IEZBSUwKLTM4MzYgVlVMS0FOIE5PU0FO
IDogS0hSLUdMRVMzLmNvcHlfdGV4X2ltYWdlX2NvbnZlcnNpb25zLnJlcXVpcmVkLnRleHR1cmUz
ZF9jdWJlbWFwX25lZ3kgPSBGQUlMCi0zODM2IFZVTEtBTiBOT1NBTiA6IEtIUi1HTEVTMy5jb3B5
X3RleF9pbWFnZV9jb252ZXJzaW9ucy5yZXF1aXJlZC50ZXh0dXJlM2RfY3ViZW1hcF9uZWd6ID0g
RkFJTAotMzgzNiBWVUxLQU4gTk9TQU4gOiBLSFItR0xFUzMuY29weV90ZXhfaW1hZ2VfY29udmVy
c2lvbnMucmVxdWlyZWQudGV4dHVyZTNkX2N1YmVtYXBfcG9zeCA9IEZBSUwKLTM4MzYgVlVMS0FO
IE5PU0FOIDogS0hSLUdMRVMzLmNvcHlfdGV4X2ltYWdlX2NvbnZlcnNpb25zLnJlcXVpcmVkLnRl
eHR1cmUzZF9jdWJlbWFwX3Bvc3kgPSBGQUlMCi0zODM2IFZVTEtBTiBOT1NBTiA6IEtIUi1HTEVT
My5jb3B5X3RleF9pbWFnZV9jb252ZXJzaW9ucy5yZXF1aXJlZC50ZXh0dXJlM2RfY3ViZW1hcF9w
b3N6ID0gRkFJTAorMzY4MyBWVUxLQU4gQU5EUk9JRCA6IEtIUi1HTEVTMy5wYWNrZWRfZGVwdGhf
c3RlbmNpbC5jbGVhcl9idWZmZXIuZGVwdGgzMmZfc3RlbmNpbDggPSBGQUlMCiAKIC8vIFRlc3Qg
YnVnIC0gZmFpbHMgaW4gQVNBTgogNjY3OCA6IEtIUi1HTEVTMy5wYWNrZWRfcGl4ZWxzLnZhcmll
ZF9yZWN0YW5nbGUuKiA9IFNLSVAKIAotLy8gTmV3IGZhaWx1cmVzIHdpdGggbGF0ZXN0IGRFUVAg
cm9sbCAoMjAyMS0wMy0wNSkKLTU3MjIgVlVMS0FOIDogS0hSLUdMRVMzLmZyYW1lYnVmZmVyX2Nv
bXBsZXRlbmVzcy5yYm9fYW5kX3RleHR1cmVfZXhwZWN0X3plcm9fbnVtc2FtcGxlcyA9IEZBSUwK
LQogNTk3NiBMSU5VWCBWVUxLQU4gTlZJRElBIDogS0hSLUdMRVMzLnNoYWRlcnMuaW5kZXhpbmcu
dG1wX2FycmF5LnZlcnRleGlkID0gRkFJTAogCiAvLyBGYWlscyBvbmx5IHdpdGggU3dpZnRTaGFk
ZXI6CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvZGVxcF9z
dXBwb3J0L3RjdUFOR0xFTmF0aXZlRGlzcGxheUZhY3RvcnkuY3BwIGIvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL3Rlc3RzL2RlcXBfc3VwcG9ydC90Y3VBTkdMRU5hdGl2ZURpc3BsYXlGYWN0
b3J5LmNwcAppbmRleCA0MTk2NTA2ZWQwZTlmNGVkZjFiMWRjOGExZDEzMTgwYmFkY2FjMzk0Li4w
YzcxOWI4NThhNjYwNWQ5NjVkMzg0MGE1ZDg4N2EwOWVmMmE3YmI0IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvZGVxcF9zdXBwb3J0L3RjdUFOR0xFTmF0aXZl
RGlzcGxheUZhY3RvcnkuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0
cy9kZXFwX3N1cHBvcnQvdGN1QU5HTEVOYXRpdmVEaXNwbGF5RmFjdG9yeS5jcHAKQEAgLTgzLDcg
KzgzLDggQEAgY29uc3RleHByIGVnbHU6Ok5hdGl2ZVdpbmRvdzo6Q2FwYWJpbGl0eSBrV2luZG93
Q2FwYWJpbGl0aWVzID0KICAgICAgICAgZWdsdTo6TmF0aXZlV2luZG93OjpDQVBBQklMSVRZX0dF
VF9TQ1JFRU5fU0laRSB8CiAgICAgICAgIGVnbHU6Ok5hdGl2ZVdpbmRvdzo6Q0FQQUJJTElUWV9S
RUFEX1NDUkVFTl9QSVhFTFMgfAogICAgICAgICBlZ2x1OjpOYXRpdmVXaW5kb3c6OkNBUEFCSUxJ
VFlfU0VUX1NVUkZBQ0VfU0laRSB8Ci0gICAgICAgIGVnbHU6Ok5hdGl2ZVdpbmRvdzo6Q0FQQUJJ
TElUWV9DSEFOR0VfVklTSUJJTElUWSk7CisgICAgICAgIGVnbHU6Ok5hdGl2ZVdpbmRvdzo6Q0FQ
QUJJTElUWV9DSEFOR0VfVklTSUJJTElUWSB8CisgICAgICAgIGVnbHU6Ok5hdGl2ZVdpbmRvdzo6
Q0FQQUJJTElUWV9DUkVBVEVfU1VSRkFDRV9QTEFURk9STV9FWFRFTlNJT04pOwogCiBjbGFzcyBB
TkdMRU5hdGl2ZURpc3BsYXkgOiBwdWJsaWMgZWdsdTo6TmF0aXZlRGlzcGxheQogewpAQCAtMTY5
LDYgKzE3MCw3IEBAIGNsYXNzIE5hdGl2ZVdpbmRvdyA6IHB1YmxpYyBlZ2x1OjpOYXRpdmVXaW5k
b3cKICAgICB+TmF0aXZlV2luZG93KCkgb3ZlcnJpZGU7CiAKICAgICBlZ2x3OjpFR0xOYXRpdmVX
aW5kb3dUeXBlIGdldExlZ2FjeU5hdGl2ZSgpIG92ZXJyaWRlOworICAgIHZvaWQgKmdldFBsYXRm
b3JtRXh0ZW5zaW9uKCkgb3ZlcnJpZGU7CiAgICAgSVZlYzIgZ2V0U3VyZmFjZVNpemUoKSBjb25z
dCBvdmVycmlkZTsKICAgICBJVmVjMiBnZXRTY3JlZW5TaXplKCkgY29uc3Qgb3ZlcnJpZGUgeyBy
ZXR1cm4gZ2V0U3VyZmFjZVNpemUoKTsgfQogICAgIHZvaWQgcHJvY2Vzc0V2ZW50cygpIG92ZXJy
aWRlOwpAQCAtMzM3LDYgKzMzOSwxMSBAQCBlZ2x3OjpFR0xOYXRpdmVXaW5kb3dUeXBlIE5hdGl2
ZVdpbmRvdzo6Z2V0TGVnYWN5TmF0aXZlKCkKICAgICByZXR1cm4gcmVpbnRlcnByZXRfY2FzdDxl
Z2x3OjpFR0xOYXRpdmVXaW5kb3dUeXBlPihtV2luZG93LT5nZXROYXRpdmVXaW5kb3coKSk7CiB9
CiAKK3ZvaWQgKk5hdGl2ZVdpbmRvdzo6Z2V0UGxhdGZvcm1FeHRlbnNpb24oKQoreworICAgIHJl
dHVybiBtV2luZG93LT5nZXRQbGF0Zm9ybUV4dGVuc2lvbigpOworfQorCiBJVmVjMiBOYXRpdmVX
aW5kb3c6OmdldFN1cmZhY2VTaXplKCkgY29uc3QKIHsKICAgICBpbnQgd2lkdGggID0gbVdpbmRv
dy0+Z2V0V2lkdGgoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90
ZXN0cy9lZ2xfdGVzdHMvRUdMQnVmZmVyQWdlVGVzdC5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9zcmMvdGVzdHMvZWdsX3Rlc3RzL0VHTEJ1ZmZlckFnZVRlc3QuY3BwCmluZGV4IGUzNTU2
N2E5NzJkMzdjZjZlNWUwMmVhZmJhZDRhN2NjYjljOWM3N2MuLjI2NDc2OGIyMzFiMWY2M2JjYjNl
MTAwNTk4OWMzMDI2NWE1YjRhMjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy90ZXN0cy9lZ2xfdGVzdHMvRUdMQnVmZmVyQWdlVGVzdC5jcHAKKysrIGIvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2VnbF90ZXN0cy9FR0xCdWZmZXJBZ2VUZXN0LmNwcApA
QCAtOTYsMTQgKzk2LDYgQEAgY2xhc3MgRUdMQnVmZmVyQWdlVGVzdCA6IHB1YmxpYyBBTkdMRVRl
c3QKICAgICAgICAgcmV0dXJuIGFnZTsKICAgICB9CiAKLSAgICBFR0xpbnQgcXVlcnlTd2FwQmVo
YXZpb3IoRUdMU3VyZmFjZSBzdXJmYWNlKSBjb25zdAotICAgIHsKLSAgICAgICAgRUdMaW50IHN3
YXBCZWhhdmlvciA9IEVHTF9OT05FOwotICAgICAgICBib29sIHJlc3VsdCAgICAgICAgID0gZWds
UXVlcnlTdXJmYWNlKG1EaXNwbGF5LCBzdXJmYWNlLCBFR0xfU1dBUF9CRUhBVklPUiwgJnN3YXBC
ZWhhdmlvcik7Ci0gICAgICAgIEVYUEVDVF9UUlVFKHJlc3VsdCk7Ci0gICAgICAgIHJldHVybiBz
d2FwQmVoYXZpb3I7Ci0gICAgfQotCiAgICAgRUdMRGlzcGxheSBtRGlzcGxheSAgICAgID0gRUdM
X05PX0RJU1BMQVk7CiAgICAgRUdMaW50IG1NYWpvclZlcnNpb24gICAgID0gMDsKICAgICBjb25z
dCBFR0xpbnQga1dpZHRoICAgICAgPSA2NDsKQEAgLTE1MywxNiArMTQ1LDcgQEAgVEVTVF9QKEVH
TEJ1ZmZlckFnZVRlc3QsIFF1ZXJ5QnVmZmVyQWdlKQogICAgICAgICBBU1NFUlRfRUdMX1NVQ0NF
U1MoKSA8PCAiZWdsU3dhcEJ1ZmZlcnMgZmFpbGVkLiI7CiAgICAgfQogCi0gICAgLy8gSWYgc3dh
cCBiZWhhdmlvciBpcyBFR0xfQlVGRkVSX0RFU1RST1lFRCwgYWdlIHNob3VsZCBiZSAwLgotICAg
IEVHTGludCBzd2FwQmVoYXZpb3IgPSBxdWVyeVN3YXBCZWhhdmlvcihzdXJmYWNlKTsKLSAgICBp
ZiAoc3dhcEJlaGF2aW9yID09IEVHTF9CVUZGRVJfREVTVFJPWUVEKQotICAgIHsKLSAgICAgICAg
RVhQRUNUX0VRKGV4cGVjdGVkQWdlLCAwKTsKLSAgICB9Ci0gICAgZWxzZQotICAgIHsKLSAgICAg
ICAgRVhQRUNUX0dUKGV4cGVjdGVkQWdlLCAwKTsKLSAgICB9CisgICAgRVhQRUNUX0dUKGV4cGVj
dGVkQWdlLCAwKTsKIAogICAgIEVYUEVDVF9UUlVFKGVnbE1ha2VDdXJyZW50KG1EaXNwbGF5LCBF
R0xfTk9fU1VSRkFDRSwgRUdMX05PX1NVUkZBQ0UsIGNvbnRleHQpKTsKICAgICBBU1NFUlRfRUdM
X1NVQ0NFU1MoKSA8PCAiZWdsTWFrZUN1cnJlbnQgLSB1bmN1cnJlbnQgZmFpbGVkLiI7CkBAIC0y
MzEsMTYgKzIxNCw3IEBAIFRFU1RfUChFR0xCdWZmZXJBZ2VUZXN0LCBWZXJpZnlDb250ZW50cykK
ICAgICAgICAgQVNTRVJUX0VHTF9TVUNDRVNTKCkgPDwgImVnbFN3YXBCdWZmZXJzIGZhaWxlZC4i
OwogICAgIH0KIAotICAgIC8vIElmIHN3YXAgYmVoYXZpb3IgaXMgRUdMX0JVRkZFUl9ERVNUUk9Z
RUQsIGFnZSBzaG91bGQgYmUgMC4KLSAgICBFR0xpbnQgc3dhcEJlaGF2aW9yID0gcXVlcnlTd2Fw
QmVoYXZpb3Ioc3VyZmFjZSk7Ci0gICAgaWYgKHN3YXBCZWhhdmlvciA9PSBFR0xfQlVGRkVSX0RF
U1RST1lFRCkKLSAgICB7Ci0gICAgICAgIEVYUEVDVF9FUShhZ2UsIDApOwotICAgIH0KLSAgICBl
bHNlCi0gICAgewotICAgICAgICBFWFBFQ1RfR1QoYWdlLCAwKTsKLSAgICB9CisgICAgRVhQRUNU
X0dUKGFnZSwgMCk7CiAKICAgICBFWFBFQ1RfVFJVRShlZ2xNYWtlQ3VycmVudChtRGlzcGxheSwg
RUdMX05PX1NVUkZBQ0UsIEVHTF9OT19TVVJGQUNFLCBjb250ZXh0KSk7CiAgICAgQVNTRVJUX0VH
TF9TVUNDRVNTKCkgPDwgImVnbE1ha2VDdXJyZW50IC0gdW5jdXJyZW50IGZhaWxlZC4iOwpAQCAt
Mzc3LDQgKzM1MSw0IEBAIEFOR0xFX0lOU1RBTlRJQVRFX1RFU1QoRUdMQnVmZmVyQWdlVGVzdCwK
ICAgICAgICAgICAgICAgICAgICAgICAgV2l0aE5vRml4dHVyZShFUzJfT1BFTkdMKCkpLAogICAg
ICAgICAgICAgICAgICAgICAgICBXaXRoTm9GaXh0dXJlKEVTM19PUEVOR0woKSksCiAgICAgICAg
ICAgICAgICAgICAgICAgIFdpdGhOb0ZpeHR1cmUoRVMyX1ZVTEtBTigpKSwKLSAgICAgICAgICAg
ICAgICAgICAgICAgV2l0aE5vRml4dHVyZShFUzNfVlVMS0FOKCkpKTsKXCBObyBuZXdsaW5lIGF0
IGVuZCBvZiBmaWxlCisgICAgICAgICAgICAgICAgICAgICAgIFdpdGhOb0ZpeHR1cmUoRVMzX1ZV
TEtBTigpKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMv
ZWdsX3Rlc3RzL0VHTERpc3BsYXlTZWxlY3Rpb25UZXN0LmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3NyYy90ZXN0cy9lZ2xfdGVzdHMvRUdMRGlzcGxheVNlbGVjdGlvblRlc3QuY3BwCmlu
ZGV4IDkyZjkyOGY0NjFhMGM0ZDQ0MTU3MzFkOGU5MWZiOGNiZWQ4ZGExOTMuLjRiZDRjNjFhNzRm
Y2I4OGIwNWE0ZjVjZTY1NTYyZTg4MjZjMjUxNzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL3NyYy90ZXN0cy9lZ2xfdGVzdHMvRUdMRGlzcGxheVNlbGVjdGlvblRlc3QuY3Bw
CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9lZ2xfdGVzdHMvRUdMRGlz
cGxheVNlbGVjdGlvblRlc3QuY3BwCkBAIC0xNCw2ICsxNCw3IEBACiAjaW5jbHVkZSAiY29tbW9u
L3N0cmluZ191dGlscy5oIgogI2luY2x1ZGUgImdwdV9pbmZvX3V0aWwvU3lzdGVtSW5mby5oIgog
I2luY2x1ZGUgInRlc3RfdXRpbHMvQU5HTEVUZXN0LmgiCisjaW5jbHVkZSAidGVzdF91dGlscy9z
eXN0ZW1faW5mb191dGlsLmgiCiAjaW5jbHVkZSAidXRpbC9PU1dpbmRvdy5oIgogCiB1c2luZyBu
YW1lc3BhY2UgYW5nbGU7CkBAIC0yNSw1MSArMjYsMTUgQEAgY2xhc3MgRUdMRGlzcGxheVNlbGVj
dGlvblRlc3QgOiBwdWJsaWMgQU5HTEVUZXN0CiAKICAgcHJvdGVjdGVkOgogICAgIC8vIFJldHVy
bnMgdGhlIGluZGV4IG9mIHRoZSBsb3cgb3IgaGlnaCBwb3dlciBHUFUgaW4gU3lzdGVtSW5mbyBk
ZXBlbmRpbmcgb24gdGhlIGFyZ3VtZW50LgotICAgIGludCBmaW5kR1BVKGJvb2wgbG93UG93ZXIp
CisgICAgaW50IGZpbmRHUFUoYm9vbCBsb3dQb3dlcikgY29uc3QKICAgICB7Ci0gICAgICAgIGlm
IChtU3lzdGVtSW5mby5ncHVzLnNpemUoKSA8IDIpCi0gICAgICAgIHsKLSAgICAgICAgICAgIHJl
dHVybiAwOwotICAgICAgICB9Ci0gICAgICAgIGZvciAoaW50IGkgPSAwOyBpIDwgc3RhdGljX2Nh
c3Q8aW50PihtU3lzdGVtSW5mby5ncHVzLnNpemUoKSk7ICsraSkKLSAgICAgICAgewotICAgICAg
ICAgICAgaWYgKGxvd1Bvd2VyICYmIElzSW50ZWwobVN5c3RlbUluZm8uZ3B1c1tpXS52ZW5kb3JJ
ZCkpCi0gICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgcmV0dXJuIGk7Ci0gICAgICAgICAg
ICB9Ci0gICAgICAgICAgICAvLyBSZXR1cm4gdGhlIGhpZ2ggcG93ZXIgR1BVLCBpLmUgYW55IG5v
bi1pbnRlbCBHUFUKLSAgICAgICAgICAgIGVsc2UgaWYgKCFsb3dQb3dlciAmJiAhSXNJbnRlbCht
U3lzdGVtSW5mby5ncHVzW2ldLnZlbmRvcklkKSkKLSAgICAgICAgICAgIHsKLSAgICAgICAgICAg
ICAgICByZXR1cm4gaTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgfQotICAgICAgICAvLyBDYW4n
dCBmaW5kIEdQVQotICAgICAgICBBU1NFUlQoZmFsc2UpOwotICAgICAgICByZXR1cm4gMDsKKyAg
ICAgICAgaWYgKGxvd1Bvd2VyKQorICAgICAgICAgICAgcmV0dXJuIEZpbmRMb3dQb3dlckdQVSht
U3lzdGVtSW5mbyk7CisgICAgICAgIHJldHVybiBGaW5kSGlnaFBvd2VyR1BVKG1TeXN0ZW1JbmZv
KTsKICAgICB9CiAKICAgICAvLyBSZXR1cm5zIHRoZSBpbmRleCBvZiB0aGUgYWN0aXZlIEdQVSBp
biBTeXN0ZW1JbmZvIGJhc2VkIG9uIHRoZSByZW5kZXJlciBzdHJpbmcuCi0gICAgaW50IGZpbmRB
Y3RpdmVHUFUoKQotICAgIHsKLSAgICAgICAgY2hhciAqcmVuZGVyZXIgPSAoY2hhciAqKWdsR2V0
U3RyaW5nKEdMX1JFTkRFUkVSKTsKLSAgICAgICAgc3RkOjpzdHJpbmcgcmVuZGVyZXJTdHJpbmco
cmVuZGVyZXIpOwotICAgICAgICBmb3IgKGludCBpID0gMDsgaSA8IHN0YXRpY19jYXN0PGludD4o
bVN5c3RlbUluZm8uZ3B1cy5zaXplKCkpOyArK2kpCi0gICAgICAgIHsKLSAgICAgICAgICAgIHN0
ZDo6dmVjdG9yPHN0ZDo6c3RyaW5nPiB2ZW5kb3JUb2tlbnM7Ci0gICAgICAgICAgICBhbmdsZTo6
U3BsaXRTdHJpbmdBbG9uZ1doaXRlc3BhY2UoVmVuZG9yTmFtZShtU3lzdGVtSW5mby5ncHVzW2ld
LnZlbmRvcklkKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAmdmVuZG9yVG9rZW5zKTsKLSAgICAgICAgICAgIGZvciAoc3RkOjpzdHJpbmcgJnRva2VuIDog
dmVuZG9yVG9rZW5zKQotICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIGlmIChyZW5kZXJl
clN0cmluZy5maW5kKHRva2VuKSAhPSBzdGQ6OnN0cmluZzo6bnBvcykKLSAgICAgICAgICAgICAg
ICB7Ci0gICAgICAgICAgICAgICAgICAgIHJldHVybiBpOwotICAgICAgICAgICAgICAgIH0KLSAg
ICAgICAgICAgIH0KLSAgICAgICAgfQotICAgICAgICAvLyBDYW4ndCBmaW5kIGFjdGl2ZSBHUFUK
LSAgICAgICAgQVNTRVJUKGZhbHNlKTsKLSAgICAgICAgcmV0dXJuIDA7Ci0gICAgfQorICAgIGlu
dCBmaW5kQWN0aXZlR1BVKCkgY29uc3QgeyByZXR1cm4gRmluZEFjdGl2ZU9wZW5HTEdQVShtU3lz
dGVtSW5mbyk7IH0KIAogICAgIFN5c3RlbUluZm8gbVN5c3RlbUluZm87CiB9OwpAQCAtNTEyLDgg
KzQ3Nyw5IEBAIGNsYXNzIEVHTERpc3BsYXlTZWxlY3Rpb25UZXN0RGV2aWNlSWQgOiBwdWJsaWMg
RUdMRGlzcGxheVNlbGVjdGlvblRlc3ROb0ZpeHR1cmUKICAgcHJvdGVjdGVkOgogICAgIHZvaWQg
aW5pdGlhbGl6ZURpc3BsYXlXaXRoRGV2aWNlSWQoRUdMRGlzcGxheSAqZGlzcGxheSwgdWludDY0
X3QgZGV2aWNlSWQpCiAgICAgewotICAgICAgICBHTGVudW0gcGxhdGZvcm1UeXBlID0gR2V0UGFy
YW0oKS5nZXRSZW5kZXJlcigpOwotICAgICAgICBHTGVudW0gZGV2aWNlVHlwZSAgID0gR2V0UGFy
YW0oKS5nZXREZXZpY2VUeXBlKCk7CisgICAgICAgIEdMZW51bSBwbGF0Zm9ybVR5cGUgICAgICAg
ICAgPSBHZXRQYXJhbSgpLmdldFJlbmRlcmVyKCk7CisgICAgICAgIEdMZW51bSBkZXZpY2VUeXBl
ICAgICAgICAgICAgPSBHZXRQYXJhbSgpLmdldERldmljZVR5cGUoKTsKKyAgICAgICAgR0xpbnQg
ZGlzcGxheVBvd2VyUHJlZmVyZW5jZSA9IEdldFBhcmFtKCkuZWdsUGFyYW1ldGVycy5kaXNwbGF5
UG93ZXJQcmVmZXJlbmNlOwogCiAgICAgICAgIEVHTEF0dHJpYiBoaWdoID0gKChkZXZpY2VJZCA+
PiAzMikgJiAweEZGRkZGRkZGKTsKICAgICAgICAgRUdMQXR0cmliIGxvdyAgPSAoZGV2aWNlSWQg
JiAweEZGRkZGRkZGKTsKQEAgLTUzMSw2ICs0OTcsMTEgQEAgY2xhc3MgRUdMRGlzcGxheVNlbGVj
dGlvblRlc3REZXZpY2VJZCA6IHB1YmxpYyBFR0xEaXNwbGF5U2VsZWN0aW9uVGVzdE5vRml4dHVy
ZQogICAgICAgICBkaXNwbGF5QXR0cmlidXRlcy5wdXNoX2JhY2soaGlnaCk7CiAgICAgICAgIGRp
c3BsYXlBdHRyaWJ1dGVzLnB1c2hfYmFjayhFR0xfUExBVEZPUk1fQU5HTEVfREVWSUNFX0lEX0xP
V19BTkdMRSk7CiAgICAgICAgIGRpc3BsYXlBdHRyaWJ1dGVzLnB1c2hfYmFjayhsb3cpOworICAg
ICAgICBpZiAoZGlzcGxheVBvd2VyUHJlZmVyZW5jZSAhPSBFR0xfRE9OVF9DQVJFKQorICAgICAg
ICB7CisgICAgICAgICAgICBkaXNwbGF5QXR0cmlidXRlcy5wdXNoX2JhY2soRUdMX1BPV0VSX1BS
RUZFUkVOQ0VfQU5HTEUpOworICAgICAgICAgICAgZGlzcGxheUF0dHJpYnV0ZXMucHVzaF9iYWNr
KGRpc3BsYXlQb3dlclByZWZlcmVuY2UpOworICAgICAgICB9CiAgICAgICAgIGRpc3BsYXlBdHRy
aWJ1dGVzLnB1c2hfYmFjayhFR0xfTk9ORSk7CiAKICAgICAgICAgKmRpc3BsYXkgPSBlZ2xHZXRQ
bGF0Zm9ybURpc3BsYXlFWFQoRUdMX1BMQVRGT1JNX0FOR0xFX0FOR0xFLApAQCAtNTQ5LDYgKzUy
MCw4IEBAIGNsYXNzIEVHTERpc3BsYXlTZWxlY3Rpb25UZXN0RGV2aWNlSWQgOiBwdWJsaWMgRUdM
RGlzcGxheVNlbGVjdGlvblRlc3ROb0ZpeHR1cmUKIFRFU1RfUChFR0xEaXNwbGF5U2VsZWN0aW9u
VGVzdERldmljZUlkLCBEZXZpY2VJZCkKIHsKICAgICBBTkdMRV9TS0lQX1RFU1RfSUYoIUlzRUdM
Q2xpZW50RXh0ZW5zaW9uRW5hYmxlZCgiRUdMX0FOR0xFX3BsYXRmb3JtX2FuZ2xlX2RldmljZV9p
ZCIpKTsKKyAgICBBTkdMRV9TS0lQX1RFU1RfSUYoIUlzRUdMQ2xpZW50RXh0ZW5zaW9uRW5hYmxl
ZCgiRUdMX0FOR0xFX2Rpc3BsYXlfcG93ZXJfcHJlZmVyZW5jZSIpICYmCisgICAgICAgICAgICAg
ICAgICAgICAgIEdldFBhcmFtKCkuZWdsUGFyYW1ldGVycy5kaXNwbGF5UG93ZXJQcmVmZXJlbmNl
ICE9IEVHTF9ET05UX0NBUkUpOwogCiAgICAgaW5pdGlhbGl6ZVdpbmRvdygpOwogCkBAIC01NzIs
NiArNTQ1LDQwIEBAIFRFU1RfUChFR0xEaXNwbGF5U2VsZWN0aW9uVGVzdERldmljZUlkLCBEZXZp
Y2VJZCkKICAgICB0ZXJtaW5hdGVXaW5kb3coKTsKIH0KIAorVEVTVF9QKEVHTERpc3BsYXlTZWxl
Y3Rpb25UZXN0RGV2aWNlSWQsIERldmljZUlkQ29uY3VycmVudGx5KQoreworICAgIEFOR0xFX1NL
SVBfVEVTVF9JRighSXNFR0xDbGllbnRFeHRlbnNpb25FbmFibGVkKCJFR0xfQU5HTEVfcGxhdGZv
cm1fYW5nbGVfZGV2aWNlX2lkIikpOworICAgIEFOR0xFX1NLSVBfVEVTVF9JRighSXNFR0xDbGll
bnRFeHRlbnNpb25FbmFibGVkKCJFR0xfQU5HTEVfZGlzcGxheV9wb3dlcl9wcmVmZXJlbmNlIikg
JiYKKyAgICAgICAgICAgICAgICAgICAgICAgR2V0UGFyYW0oKS5lZ2xQYXJhbWV0ZXJzLmRpc3Bs
YXlQb3dlclByZWZlcmVuY2UgIT0gRUdMX0RPTlRfQ0FSRSk7CisKKyAgICBpbml0aWFsaXplV2lu
ZG93KCk7CisgICAgc3RydWN0IENvbnRleHRGb3JEZXZpY2UKKyAgICB7CisgICAgICAgIEVHTERp
c3BsYXkgZGlzcGxheXt9OworICAgICAgICBFR0xDb250ZXh0IGNvbnRleHR7fTsKKyAgICB9Owor
ICAgIHN0ZDo6dmVjdG9yPENvbnRleHRGb3JEZXZpY2U+IGNvbnRleHRzKG1TeXN0ZW1JbmZvLmdw
dXMuc2l6ZSgpKTsKKworICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgY29udGV4dHMuc2l6ZSgp
OyBpKyspCisgICAgeworICAgICAgICBhdXRvICZkaXNwbGF5ID0gY29udGV4dHNbaV0uZGlzcGxh
eTsKKyAgICAgICAgYXV0byAmY29udGV4dCA9IGNvbnRleHRzW2ldLmNvbnRleHQ7CisgICAgICAg
IGluaXRpYWxpemVEaXNwbGF5V2l0aERldmljZUlkKCZkaXNwbGF5LCBtU3lzdGVtSW5mby5ncHVz
W2ldLnN5c3RlbURldmljZUlkKTsKKyAgICAgICAgaW5pdGlhbGl6ZUNvbnRleHRGb3JEaXNwbGF5
KGRpc3BsYXksICZjb250ZXh0KTsKKyAgICAgICAgZWdsTWFrZUN1cnJlbnQoZGlzcGxheSwgRUdM
X05PX1NVUkZBQ0UsIEVHTF9OT19TVVJGQUNFLCBjb250ZXh0KTsKKyAgICAgICAgQVNTRVJUX0VR
KHN0YXRpY19jYXN0PGludD4oaSksIGZpbmRBY3RpdmVHUFUoKSk7CisgICAgfQorICAgIGZvciAo
YXV0byAmY29udGV4dCA6IGNvbnRleHRzKQorICAgIHsKKyAgICAgICAgLy8gVGVybWluYXRlIHRo
ZSBkaXNwbGF5cworICAgICAgICB0ZXJtaW5hdGVDb250ZXh0KGNvbnRleHQuZGlzcGxheSwgY29u
dGV4dC5jb250ZXh0KTsKKyAgICAgICAgZWdsTWFrZUN1cnJlbnQoY29udGV4dC5kaXNwbGF5LCBF
R0xfTk9fU1VSRkFDRSwgRUdMX05PX1NVUkZBQ0UsIEVHTF9OT19DT05URVhUKTsKKyAgICAgICAg
dGVybWluYXRlRGlzcGxheShjb250ZXh0LmRpc3BsYXkpOworICAgIH0KKworICAgIHRlcm1pbmF0
ZVdpbmRvdygpOworfQorCiBHVEVTVF9BTExPV19VTklOU1RBTlRJQVRFRF9QQVJBTUVURVJJWkVE
X1RFU1QoRUdMRGlzcGxheVNlbGVjdGlvblRlc3QpOwogQU5HTEVfSU5TVEFOVElBVEVfVEVTVChF
R0xEaXNwbGF5U2VsZWN0aW9uVGVzdCwKICAgICAgICAgICAgICAgICAgICAgICAgV2l0aExvd1Bv
d2VyR1BVKEVTMl9NRVRBTCgpKSwKQEAgLTU4OSw0ICs1OTYsOCBAQCBBTkdMRV9JTlNUQU5USUFU
RV9URVNUKEVHTERpc3BsYXlTZWxlY3Rpb25UZXN0RGV2aWNlSWQsCiAgICAgICAgICAgICAgICAg
ICAgICAgIFdpdGhOb0ZpeHR1cmUoRVMyX0QzRDExKCkpLAogICAgICAgICAgICAgICAgICAgICAg
ICBXaXRoTm9GaXh0dXJlKEVTM19EM0QxMSgpKSwKICAgICAgICAgICAgICAgICAgICAgICAgV2l0
aE5vRml4dHVyZShFUzJfTUVUQUwoKSksCi0gICAgICAgICAgICAgICAgICAgICAgIFdpdGhOb0Zp
eHR1cmUoRVMzX01FVEFMKCkpKTsKKyAgICAgICAgICAgICAgICAgICAgICAgV2l0aE5vRml4dHVy
ZShFUzNfTUVUQUwoKSksCisgICAgICAgICAgICAgICAgICAgICAgIFdpdGhOb0ZpeHR1cmUoV2l0
aExvd1Bvd2VyR1BVKEVTMl9NRVRBTCgpKSksCisgICAgICAgICAgICAgICAgICAgICAgIFdpdGhO
b0ZpeHR1cmUoV2l0aExvd1Bvd2VyR1BVKEVTM19NRVRBTCgpKSksCisgICAgICAgICAgICAgICAg
ICAgICAgIFdpdGhOb0ZpeHR1cmUoV2l0aEhpZ2hQb3dlckdQVShFUzJfTUVUQUwoKSkpLAorICAg
ICAgICAgICAgICAgICAgICAgICBXaXRoTm9GaXh0dXJlKFdpdGhIaWdoUG93ZXJHUFUoRVMzX01F
VEFMKCkpKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMv
ZWdsX3Rlc3RzL0VHTFBvd2VyUHJlZmVyZW5jZVRlc3QuY3BwIGIvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc3JjL3Rlc3RzL2VnbF90ZXN0cy9FR0xQb3dlclByZWZlcmVuY2VUZXN0LmNwcApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi5kNjkzY2I0Yzg0NjY5NTA3MTZjN2EyNmEzNTRmNTZlYjc3NWMwMjUxCi0tLSAvZGV2
L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2VnbF90ZXN0cy9F
R0xQb3dlclByZWZlcmVuY2VUZXN0LmNwcApAQCAtMCwwICsxLDkzIEBACisvLworLy8gQ29weXJp
Z2h0IDIwMjIgVGhlIEFOR0xFIFByb2plY3QgQXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
Ky8vIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlIGxp
Y2Vuc2UgdGhhdCBjYW4gYmUKKy8vIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvLworLy8g
RUdMUG93ZXJQcmVmZXJlbmNlVGVzdC5jcHA6CisvLyAgIENoZWNrcyB0aGUgaW1wbGVtZW50YXRp
b24gb2YgRUdMX0FOR0xFX3Bvd2VyX3ByZWZlcmVuY2UuCisvLworCisjaW5jbHVkZSA8Z3Rlc3Qv
Z3Rlc3QuaD4KKyNpbmNsdWRlIDx0dXBsZT4KKworI2luY2x1ZGUgImNvbW1vbi9kZWJ1Zy5oIgor
I2luY2x1ZGUgImNvbW1vbi9zdHJpbmdfdXRpbHMuaCIKKyNpbmNsdWRlICJncHVfaW5mb191dGls
L1N5c3RlbUluZm8uaCIKKyNpbmNsdWRlICJ0ZXN0X3V0aWxzL0FOR0xFVGVzdC5oIgorI2luY2x1
ZGUgInRlc3RfdXRpbHMvYW5nbGVfdGVzdF9wbGF0Zm9ybS5oIgorI2luY2x1ZGUgInRlc3RfdXRp
bHMvc3lzdGVtX2luZm9fdXRpbC5oIgorI2luY2x1ZGUgInV0aWwvT1NXaW5kb3cuaCIKKwordXNp
bmcgbmFtZXNwYWNlIGFuZ2xlOworbmFtZXNwYWNlCit7CisvLyBUT0RPKGFuZ2xlYnVnLmNvbS83
MDkzKTogSW1wbGVtZW50IGJ1bmRsaW5nIG9mIEluZm8ucGxpc3QgdG8gYW5nbGVfZW5kMmVuZF90
ZXN0cworLy8gSW4gdGhlIG1lYW4gdGltZSwgY2hhbmdlIHRoaXMgbWFudWFsbHkgdG8gdHJ1ZSBh
bmQgY3Agc3JjL3Rlc3RzL2VuZDJlbmRfdGVzdHMvbWFjL0luZm8ucGxpc3QKKy8vIG91dC9EZWJ1
Zy8KK2NvbnN0IGJvb2wgdGVzdFJ1bm5lclN1cHBvcnRzQXV0b21hdGljR3JhcGhpY3NTd2l0Y2hp
bmcgPSBmYWxzZTsKK30gIC8vIG5hbWVzcGFjZQorY2xhc3MgRUdMUG93ZXJQcmVmZXJlbmNlVGVz
dCA6IHB1YmxpYyBBTkdMRVRlc3QKK3sKKyAgcHVibGljOgorICAgIHZvaWQgdGVzdFNldFVwKCkg
b3ZlcnJpZGUgeyAodm9pZClHZXRTeXN0ZW1JbmZvKCZtU3lzdGVtSW5mbyk7IH0KKworICBwcm90
ZWN0ZWQ6CisgICAgYXV0byBnZXRHcHVJZFBhcnRzKHNpemVfdCBncHVJbmRleCkgY29uc3QKKyAg
ICB7CisgICAgICAgIHVpbnQ2NF90IGRldmljZUlkID0gbVN5c3RlbUluZm8uZ3B1c1tncHVJbmRl
eF0uc3lzdGVtRGV2aWNlSWQ7CisgICAgICAgIHJldHVybiBzdGQ6Om1ha2VfdHVwbGUoR2V0U3lz
dGVtRGV2aWNlSWRIaWdoUGFydChkZXZpY2VJZCksCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgR2V0U3lzdGVtRGV2aWNlSWRMb3dQYXJ0KGRldmljZUlkKSk7CisgICAgfQorCisgICAg
RUdMRGlzcGxheSBnZXREaXNwbGF5KCkgY29uc3QgeyByZXR1cm4gZ2V0RUdMV2luZG93KCktPmdl
dERpc3BsYXkoKTsgfQorCisgICAgU3lzdGVtSW5mbyBtU3lzdGVtSW5mbzsKK307CisKK1RFU1Rf
UChFR0xQb3dlclByZWZlcmVuY2VUZXN0LCBGb3JjZUdQVVN3aXRjaCkKK3sKKyAgICBBTkdMRV9T
S0lQX1RFU1RfSUYoIXRlc3RSdW5uZXJTdXBwb3J0c0F1dG9tYXRpY0dyYXBoaWNzU3dpdGNoaW5n
KTsKKyAgICBBTkdMRV9TS0lQX1RFU1RfSUYoIUlzRUdMRGlzcGxheUV4dGVuc2lvbkVuYWJsZWQo
Z2V0RGlzcGxheSgpLCAiRUdMX0FOR0xFX3Bvd2VyX3ByZWZlcmVuY2UiKSk7CisgICAgc2l6ZV90
IGxvd1Bvd2VyICAgPSBGaW5kTG93UG93ZXJHUFUobVN5c3RlbUluZm8pOworICAgIHNpemVfdCBo
aWdoUG93ZXIgID0gRmluZEhpZ2hQb3dlckdQVShtU3lzdGVtSW5mbyk7CisgICAgc2l6ZV90IGlu
aXRpYWxHUFUgPSBGaW5kQWN0aXZlT3BlbkdMR1BVKG1TeXN0ZW1JbmZvKTsKKyAgICBBU1NFUlRf
VFJVRShsb3dQb3dlciA9PSBpbml0aWFsR1BVIHx8IGhpZ2hQb3dlciA9PSBpbml0aWFsR1BVKTsK
KworICAgIEVHTGludCBoaSA9IDA7CisgICAgRUdMaW50IGxvID0gMDsKKworICAgIGZvciAoaW50
IGkgPSAwOyBpIDwgNTsgKytpKQorICAgIHsKKyAgICAgICAgc3RkOjp0aWUoaGksIGxvKSA9IGdl
dEdwdUlkUGFydHMobG93UG93ZXIpOworICAgICAgICBlZ2xGb3JjZUdQVVN3aXRjaEFOR0xFKGdl
dERpc3BsYXkoKSwgaGksIGxvKTsKKyAgICAgICAgRVhQRUNUX0VRKGxvd1Bvd2VyLCBGaW5kQWN0
aXZlT3BlbkdMR1BVKG1TeXN0ZW1JbmZvKSk7CisgICAgICAgIHN0ZDo6dGllKGhpLCBsbykgPSBn
ZXRHcHVJZFBhcnRzKGhpZ2hQb3dlcik7CisgICAgICAgIGVnbEZvcmNlR1BVU3dpdGNoQU5HTEUo
Z2V0RGlzcGxheSgpLCBoaSwgbG8pOworICAgICAgICBFWFBFQ1RfRVEoaGlnaFBvd2VyLCBGaW5k
QWN0aXZlT3BlbkdMR1BVKG1TeXN0ZW1JbmZvKSk7CisgICAgfQorfQorCitURVNUX1AoRUdMUG93
ZXJQcmVmZXJlbmNlVGVzdCwgSGFuZGxlR1BVU3dpdGNoQWZ0ZXJGb3JjZUdQVVN3aXRjaCkKK3sK
KyAgICBBTkdMRV9TS0lQX1RFU1RfSUYoIXRlc3RSdW5uZXJTdXBwb3J0c0F1dG9tYXRpY0dyYXBo
aWNzU3dpdGNoaW5nKTsKKyAgICBBTkdMRV9TS0lQX1RFU1RfSUYoIUlzRUdMRGlzcGxheUV4dGVu
c2lvbkVuYWJsZWQoZ2V0RGlzcGxheSgpLCAiRUdMX0FOR0xFX3Bvd2VyX3ByZWZlcmVuY2UiKSk7
CisgICAgc2l6ZV90IGluaXRpYWxHUFUgPSBGaW5kQWN0aXZlT3BlbkdMR1BVKG1TeXN0ZW1JbmZv
KTsKKyAgICBzaXplX3QgY2hhbmdlZEdQVSA9IEZpbmRMb3dQb3dlckdQVShtU3lzdGVtSW5mbyk7
CisgICAgaWYgKGluaXRpYWxHUFUgPT0gY2hhbmdlZEdQVSkKKyAgICB7CisgICAgICAgIGNoYW5n
ZWRHUFUgPSBGaW5kSGlnaFBvd2VyR1BVKG1TeXN0ZW1JbmZvKTsKKyAgICB9CisgICAgRUdMaW50
IGhpID0gMDsKKyAgICBFR0xpbnQgbG8gPSAwOworICAgIGZvciAoaW50IGkgPSAwOyBpIDwgNTsg
KytpKQorICAgIHsKKyAgICAgICAgc3RkOjp0aWUoaGksIGxvKSA9IGdldEdwdUlkUGFydHMoY2hh
bmdlZEdQVSk7CisgICAgICAgIGVnbEZvcmNlR1BVU3dpdGNoQU5HTEUoZ2V0RGlzcGxheSgpLCBo
aSwgbG8pOworICAgICAgICBBU1NFUlRfRVEoY2hhbmdlZEdQVSwgRmluZEFjdGl2ZU9wZW5HTEdQ
VShtU3lzdGVtSW5mbykpOworICAgICAgICBlZ2xIYW5kbGVHUFVTd2l0Y2hBTkdMRShnZXREaXNw
bGF5KCkpOworICAgICAgICBBU1NFUlRfRVEoaW5pdGlhbEdQVSwgRmluZEFjdGl2ZU9wZW5HTEdQ
VShtU3lzdGVtSW5mbykpOworICAgIH0KK30KKworR1RFU1RfQUxMT1dfVU5JTlNUQU5USUFURURf
UEFSQU1FVEVSSVpFRF9URVNUKEVHTFBvd2VyUHJlZmVyZW5jZVRlc3QpOworQU5HTEVfSU5TVEFO
VElBVEVfVEVTVChFR0xQb3dlclByZWZlcmVuY2VUZXN0LCBFUzJfT1BFTkdMKCksIEVTM19PUEVO
R0woKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvZWds
X3Rlc3RzL0VHTFN1cmZhY2VUZXN0LmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90
ZXN0cy9lZ2xfdGVzdHMvRUdMU3VyZmFjZVRlc3QuY3BwCmluZGV4IDdhOWI3NDUwOGNlYzdkMGUx
Y2YwN2NiMzY0MDYzYmI5NjQ5NWQwNmYuLjc3MGVlYjMwNWRjYWZmNmM1Nzg4NjM1YTE3NzExMDJm
MTFjNjYwOGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9l
Z2xfdGVzdHMvRUdMU3VyZmFjZVRlc3QuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy90ZXN0cy9lZ2xfdGVzdHMvRUdMU3VyZmFjZVRlc3QuY3BwCkBAIC05MjcsMTQgKzkyNywx
NCBAQCBURVNUX1AoRUdMU3VyZmFjZVRlc3QzLCBNYWtlQ3VycmVudERpZmZlcmVudFN1cmZhY2Vz
KQogICAgIC8vIE11c3QgYmUgYWZ0ZXIgdGhlIGVnbE1ha2VDdXJyZW50KCkgc28gdGhlIHJlbmRl
cmVyIHN0cmluZyBpcyBpbml0aWFsaXplZC4KICAgICBBTkdMRV9TS0lQX1RFU1RfSUYoSXNPcGVu
R0xFUygpICYmIElzQW5kcm9pZCgpKTsKIAotICAgIGdsQ2xlYXJDb2xvcihHTENvbG9yOjpyZWQu
UiwgR0xDb2xvcjo6cmVkLkcsIEdMQ29sb3I6OnJlZC5CLCBHTENvbG9yOjpyZWQuQSk7CisgICAg
Z2xDbGVhckNvbG9yKGtGbG9hdFJlZC5SLCBrRmxvYXRSZWQuRywga0Zsb2F0UmVkLkIsIGtGbG9h
dFJlZC5BKTsKICAgICBnbENsZWFyKEdMX0NPTE9SX0JVRkZFUl9CSVQpOwogICAgIEFTU0VSVF9H
TF9OT19FUlJPUigpOwogICAgIEVYUEVDVF9QSVhFTF9DT0xPUl9FUSgwLCAwLCBHTENvbG9yOjpy
ZWQpOwogCiAgICAgLy8gVXNlIGRpZmZlcmVudCBzdXJmYWNlcyBmb3IgZHJhdyBhbmQgcmVhZCwg
cmVhZCBzaG91bGQgc3RheSB0aGUgc2FtZQogICAgIEVYUEVDVF9FR0xfVFJVRShlZ2xNYWtlQ3Vy
cmVudChtRGlzcGxheSwgc2Vjb25kUGJ1ZmZlclN1cmZhY2UsIGZpcnN0UGJ1ZmZlclN1cmZhY2Us
IG1Db250ZXh0KSk7Ci0gICAgZ2xDbGVhckNvbG9yKEdMQ29sb3I6OmJsdWUuUiwgR0xDb2xvcjo6
Ymx1ZS5HLCBHTENvbG9yOjpibHVlLkIsIEdMQ29sb3I6OmJsdWUuQSk7CisgICAgZ2xDbGVhckNv
bG9yKGtGbG9hdEJsdWUuUiwga0Zsb2F0Qmx1ZS5HLCBrRmxvYXRCbHVlLkIsIGtGbG9hdEJsdWUu
QSk7CiAgICAgZ2xDbGVhcihHTF9DT0xPUl9CVUZGRVJfQklUKTsKICAgICBBU1NFUlRfR0xfTk9f
RVJST1IoKTsKICAgICBFWFBFQ1RfUElYRUxfQ09MT1JfRVEoMCwgMCwgR0xDb2xvcjo6cmVkKTsK
QEAgLTEyNTYsNyArMTI1Niw3IEBAIFRFU1RfUChFR0xTdXJmYWNlVGVzdDMsIEJsaXRCZXR3ZWVu
U3VyZmFjZXMpCiAgICAgLy8gTXVzdCBiZSBhZnRlciB0aGUgZWdsTWFrZUN1cnJlbnQoKSBzbyB0
aGUgcmVuZGVyZXIgc3RyaW5nIGlzIGluaXRpYWxpemVkLgogICAgIEFOR0xFX1NLSVBfVEVTVF9J
RihJc09wZW5HTEVTKCkgJiYgKElzQW5kcm9pZCgpIHx8IElzV2luZG93cygpKSk7CiAKLSAgICBn
bENsZWFyQ29sb3IoR0xDb2xvcjo6cmVkLlIsIEdMQ29sb3I6OnJlZC5HLCBHTENvbG9yOjpyZWQu
QiwgR0xDb2xvcjo6cmVkLkEpOworICAgIGdsQ2xlYXJDb2xvcihrRmxvYXRSZWQuUiwga0Zsb2F0
UmVkLkcsIGtGbG9hdFJlZC5CLCBrRmxvYXRSZWQuQSk7CiAgICAgZ2xDbGVhcihHTF9DT0xPUl9C
VUZGRVJfQklUKTsKICAgICBBU1NFUlRfR0xfTk9fRVJST1IoKTsKIApAQCAtMTMwNiwxNCArMTMw
NiwxNCBAQCBURVNUX1AoRUdMU3VyZmFjZVRlc3QzLCBCbGl0QmV0d2VlblN1cmZhY2VzV2l0aERl
ZmVycmVkQ2xlYXIpCiAgICAgLy8gTXVzdCBiZSBhZnRlciB0aGUgZWdsTWFrZUN1cnJlbnQoKSBz
byB0aGUgcmVuZGVyZXIgc3RyaW5nIGlzIGluaXRpYWxpemVkLgogICAgIEFOR0xFX1NLSVBfVEVT
VF9JRihJc09wZW5HTEVTKCkgJiYgKElzQW5kcm9pZCgpIHx8IElzV2luZG93cygpKSk7CiAKLSAg
ICBnbENsZWFyQ29sb3IoR0xDb2xvcjo6cmVkLlIsIEdMQ29sb3I6OnJlZC5HLCBHTENvbG9yOjpy
ZWQuQiwgR0xDb2xvcjo6cmVkLkEpOworICAgIGdsQ2xlYXJDb2xvcihrRmxvYXRSZWQuUiwga0Zs
b2F0UmVkLkcsIGtGbG9hdFJlZC5CLCBrRmxvYXRSZWQuQSk7CiAgICAgZ2xDbGVhcihHTF9DT0xP
Ul9CVUZGRVJfQklUKTsKICAgICBBU1NFUlRfR0xfTk9fRVJST1IoKTsKICAgICAvLyBGb3JjZSB0
aGUgY2xlYXIgdG8gYmUgZmx1c2hlZAogICAgIEVYUEVDVF9QSVhFTF9DT0xPUl9FUSgzMiwgMzIs
IEdMQ29sb3I6OnJlZCk7CiAKICAgICAvLyBDbGVhciB0byBncmVlbiwgYnV0IGRvbid0IHJlYWQg
aXQgYmFjayBzbyB0aGUgY2xlYXIgaXMgZGVmZXJyZWQuCi0gICAgZ2xDbGVhckNvbG9yKEdMQ29s
b3I6OmdyZWVuLlIsIEdMQ29sb3I6OmdyZWVuLkcsIEdMQ29sb3I6OmdyZWVuLkIsIEdMQ29sb3I6
OmdyZWVuLkEpOworICAgIGdsQ2xlYXJDb2xvcihrRmxvYXRHcmVlbi5SLCBrRmxvYXRHcmVlbi5H
LCBrRmxvYXRHcmVlbi5CLCBrRmxvYXRHcmVlbi5BKTsKICAgICBnbENsZWFyKEdMX0NPTE9SX0JV
RkZFUl9CSVQpOwogICAgIEFTU0VSVF9HTF9OT19FUlJPUigpOwogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvZW5kMmVuZF90ZXN0cy9tYWMvSW5mby5wbGlz
dCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9lbmQyZW5kX3Rlc3RzL21hYy9J
bmZvLnBsaXN0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjc5OTRhZjAzNzcyM2QxMTNmNTBmZTFiZWEzYjU3N2NhMTIy
Y2Q1ZWUKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVz
dHMvZW5kMmVuZF90ZXN0cy9tYWMvSW5mby5wbGlzdApAQCAtMCwwICsxLDEyIEBACis8P3htbCB2
ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPCFET0NUWVBFIHBsaXN0IFBVQkxJQyAi
LS8vQXBwbGUvL0RURCBQTElTVCAxLjAvL0VOIiAiaHR0cDovL3d3dy5hcHBsZS5jb20vRFREcy9Q
cm9wZXJ0eUxpc3QtMS4wLmR0ZCI+Cis8cGxpc3QgdmVyc2lvbj0iMS4wIj4KKzxkaWN0PgorCTxr
ZXk+Q0ZCdW5kbGVOYW1lPC9rZXk+CisJPHN0cmluZz5hbmdsZV9lbmQyZW5kX3Rlc3RzPC9zdHJp
bmc+CisJPGtleT5DRkJ1bmRsZUlkZW50aWZpZXI8L2tleT4KKwk8c3RyaW5nPm9yZy5jaHJvbWl1
bS5hbmdsZS5hbmdsZV9lbmQyZW5kX3Rlc3RzPC9zdHJpbmc+CisJPGtleT5OU1N1cHBvcnRzQXV0
b21hdGljR3JhcGhpY3NTd2l0Y2hpbmc8L2tleT4KKwk8dHJ1ZS8+Cis8L2RpY3Q+Cis8L3BsaXN0
PgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2dsX3Rlc3Rz
L0NsZWFyVGVzdC5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvZ2xfdGVz
dHMvQ2xlYXJUZXN0LmNwcAppbmRleCA0NTMwNGRhOWJkNzEzNzdhNzBmODk1OTA0MjA4Y2RlYzU1
MTVkNDNhLi5hNzgxNjJmYzdmYTIzOTFiYTRhNzI4OGE1YzZkYjc1YTcxYzg2N2NkIDEwMDY0NAot
LS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvZ2xfdGVzdHMvQ2xlYXJUZXN0
LmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvZ2xfdGVzdHMvQ2xl
YXJUZXN0LmNwcApAQCAtMTEzLDYgKzExMyw5IEBAIGNsYXNzIENsZWFyVGVzdFJHQiA6IHB1Ymxp
YyBBTkdMRVRlc3QKICAgICB9CiB9OwogCitjbGFzcyBDbGVhclRlc3RSR0JfRVMzIDogcHVibGlj
IENsZWFyVGVzdFJHQgore307CisKIC8vIEVhY2ggaW50IHBhcmFtZXRlciBjYW4gaGF2ZSB0aHJl
ZSB2YWx1ZXM6IGRvbid0IGNsZWFyLCBjbGVhciwgb3IgbWFza2VkIGNsZWFyLiAgVGhlIGJvb2wK
IC8vIHBhcmFtZXRlciBjb250cm9scyBzY2lzc29yLgogdXNpbmcgTWFza2VkU2Npc3NvcmVkQ2xl
YXJWYXJpYXRpb25zVGVzdFBhcmFtcyA9CkBAIC0zNDYsNyArMzQ5LDcgQEAgVEVTVF9QKENsZWFy
VGVzdFJHQiwgRGVmYXVsdEZyYW1lYnVmZmVyUkdCKQogCiAvLyBJbnZhbGlkYXRlIHRoZSBSR0Ig
ZGVmYXVsdCBmcmFtZWJ1ZmZlciBhbmQgdmVyaWZ5IHRoYXQgdGhlIGFscGhhIGNoYW5uZWwgaXMg
bm90IGNsZWFyZWQsIGFuZAogLy8gc3RheXMgc2V0IGFmdGVyIGRyYXdpbmcuCi1URVNUX1AoQ2xl
YXJUZXN0UkdCLCBJbnZhbGlkYXRlRGVmYXVsdEZyYW1lYnVmZmVyUkdCKQorVEVTVF9QKENsZWFy
VGVzdFJHQl9FUzMsIEludmFsaWRhdGVEZWZhdWx0RnJhbWVidWZmZXJSR0IpCiB7CiAgICAgQU5H
TEVfR0xfUFJPR1JBTShibHVlUHJvZ3JhbSwgZXNzbDFfc2hhZGVyczo6dnM6OlNpbXBsZSgpLCBl
c3NsMV9zaGFkZXJzOjpmczo6Qmx1ZSgpKTsKIApAQCAtMzU4LDkgKzM2MSw2IEBAIFRFU1RfUChD
bGVhclRlc3RSR0IsIEludmFsaWRhdGVEZWZhdWx0RnJhbWVidWZmZXJSR0IpCiAgICAgRUdMaW50
IGJhY2tidWZmZXJBbHBoYUJpdHMgPSAwOwogICAgIGVnbEdldENvbmZpZ0F0dHJpYihkaXNwbGF5
LCBjb25maWcsIEVHTF9BTFBIQV9TSVpFLCAmYmFja2J1ZmZlckFscGhhQml0cyk7CiAgICAgQU5H
TEVfU0tJUF9URVNUX0lGKGJhY2tidWZmZXJBbHBoYUJpdHMgIT0gMCk7Ci0gICAgLy8gZ2xJbnZh
bGlkYXRlRnJhbWVidWZmZXIoKSBpc24ndCBzdXBwb3J0ZWQgd2l0aCBHTEVTIDIuMAotICAgIEFO
R0xFX1NLSVBfVEVTVF9JRihnZXRDbGllbnRNYWpvclZlcnNpb24oKSA8IDMpOwotICAgIEFOR0xF
X1NLSVBfVEVTVF9JRihJc0QzRDExKCkpOwogCiAgICAgZ2xDbGVhckNvbG9yKDAuMGYsIDAuMGYs
IDAuMGYsIDAuMGYpOwogICAgIGdsQ2xlYXIoR0xfQ09MT1JfQlVGRkVSX0JJVCk7CkBAIC0zODAs
OCArMzgwLDQwIEBAIFRFU1RfUChDbGVhclRlc3RSR0IsIEludmFsaWRhdGVEZWZhdWx0RnJhbWVi
dWZmZXJSR0IpCiAgICAgRVhQRUNUX1BJWEVMX0NPTE9SX0VRKDAsIDAsIEdMQ29sb3I6OmJsdWUp
OwogfQogCisvLyBJbnZhbGlkYXRlIGFuIFJHQiB1c2VyIGZyYW1lYnVmZmVyIGFuZCB2ZXJpZnkg
dGhhdCB0aGUgYWxwaGEgY2hhbm5lbCBpcyBub3QgY2xlYXJlZCwgYW5kCisvLyBzdGF5cyBzZXQg
YWZ0ZXIgZHJhd2luZy4KK1RFU1RfUChDbGVhclRlc3RSR0JfRVMzLCBJbnZhbGlkYXRlVXNlckZy
YW1lYnVmZmVyUkdCKQoreworICAgIEFOR0xFX0dMX1BST0dSQU0oYmx1ZVByb2dyYW0sIGVzc2wx
X3NoYWRlcnM6OnZzOjpTaW1wbGUoKSwgZXNzbDFfc2hhZGVyczo6ZnM6OkJsdWUoKSk7CisKKyAg
ICBHTFRleHR1cmUgdGV4dHVyZTsKKyAgICBnbEJpbmRUZXh0dXJlKEdMX1RFWFRVUkVfMkQsIHRl
eHR1cmUpOworICAgIGdsVGV4SW1hZ2UyRChHTF9URVhUVVJFXzJELCAwLCBHTF9SR0IsIGdldFdp
bmRvd1dpZHRoKCksIGdldFdpbmRvd0hlaWdodCgpLCAwLCBHTF9SR0IsCisgICAgICAgICAgICAg
ICAgIEdMX1VOU0lHTkVEX0JZVEUsIG51bGxwdHIpOworCisgICAgR0xGcmFtZWJ1ZmZlciBmYm87
CisgICAgZ2xCaW5kRnJhbWVidWZmZXIoR0xfRlJBTUVCVUZGRVIsIGZibyk7CisgICAgZ2xGcmFt
ZWJ1ZmZlclRleHR1cmUyRChHTF9GUkFNRUJVRkZFUiwgR0xfQ09MT1JfQVRUQUNITUVOVDAsIEdM
X1RFWFRVUkVfMkQsIHRleHR1cmUsIDApOworICAgIEVYUEVDVF9HTF9GUkFNRUJVRkZFUl9DT01Q
TEVURShHTF9GUkFNRUJVRkZFUik7CisgICAgQVNTRVJUX0dMX05PX0VSUk9SKCk7CisKKyAgICBn
bENsZWFyQ29sb3IoMC4wZiwgMC4wZiwgMC4wZiwgMC4wZik7CisgICAgZ2xDbGVhcihHTF9DT0xP
Ul9CVUZGRVJfQklUKTsKKyAgICAvLyBWZXJpZnkgdGhhdCBjbGVhcmluZyBhbHBoYSBpcyBpbmVm
ZmVjdGl2ZSBvbiBhbiBSR0IgZm9ybWF0LgorICAgIEVYUEVDVF9QSVhFTF9DT0xPUl9FUSgwLCAw
LCBHTENvbG9yOjpibGFjayk7CisKKyAgICAvLyBJbnZhbGlkYXRlIHRoZSBmcmFtZWJ1ZmZlciBj
b250ZW50cy4KKyAgICBjb25zdCBHTGVudW0gZGlzY2FyZHNbXSA9IHtHTF9DT0xPUl9BVFRBQ0hN
RU5UMH07CisgICAgZ2xJbnZhbGlkYXRlRnJhbWVidWZmZXIoR0xfRlJBTUVCVUZGRVIsIDEsIGRp
c2NhcmRzKTsKKworICAgIC8vIFdpdGhvdXQgYW4gZXhwbGljaXQgY2xlYXIsIGRyYXcgYmx1ZSBh
bmQgbWFrZSBzdXJlIGFscGhhIGlzIHVuYWZmZWN0ZWQuICBJZiBSR0IgaXMgZW11YWx0ZWQKKyAg
ICAvLyB3aXRoIFJHQkEsIHRoZSBwcmV2aW91cyBpbnZhbGlkYXRlIHNob3VsZG4ndCBhZmZlY3Qg
dGhlIGFscGhhIHZhbHVlLgorICAgIGRyYXdRdWFkKGJsdWVQcm9ncmFtLCBlc3NsMV9zaGFkZXJz
OjpQb3NpdGlvbkF0dHJpYigpLCAwLjVmKTsKKyAgICBFWFBFQ1RfUElYRUxfQ09MT1JfRVEoMCwg
MCwgR0xDb2xvcjo6Ymx1ZSk7Cit9CisKIC8vIERyYXcgd2l0aCBhIHNoYWRlciB0aGF0IG91dHB1
dHMgYWxwaGE9MC41LiBSZWFkYmFjayBhbmQgZW5zdXJlIHRoYXQgYWxwaGE9MS4KLVRFU1RfUChD
bGVhclRlc3RSR0IsIFNoYWRlck91dHB1dHNBbHBoYVZlcmlmeVJlYWRpbmdBbHBoYUlzT25lKQor
VEVTVF9QKENsZWFyVGVzdFJHQl9FUzMsIFNoYWRlck91dHB1dHNBbHBoYVZlcmlmeVJlYWRpbmdB
bHBoYUlzT25lKQogewogICAgIEFOR0xFX0dMX1BST0dSQU0oYmx1ZVByb2dyYW0sIGVzc2wxX3No
YWRlcnM6OnZzOjpTaW1wbGUoKSwgZXNzbDFfc2hhZGVyczo6ZnM6OlVuaWZvcm1Db2xvcigpKTsK
ICAgICBnbFVzZVByb2dyYW0oYmx1ZVByb2dyYW0pOwpAQCAtMzk0LDkgKzQyNiw2IEBAIFRFU1Rf
UChDbGVhclRlc3RSR0IsIFNoYWRlck91dHB1dHNBbHBoYVZlcmlmeVJlYWRpbmdBbHBoYUlzT25l
KQogICAgIEVHTGludCBiYWNrYnVmZmVyQWxwaGFCaXRzID0gMDsKICAgICBlZ2xHZXRDb25maWdB
dHRyaWIoZGlzcGxheSwgY29uZmlnLCBFR0xfQUxQSEFfU0laRSwgJmJhY2tidWZmZXJBbHBoYUJp
dHMpOwogICAgIEFOR0xFX1NLSVBfVEVTVF9JRihiYWNrYnVmZmVyQWxwaGFCaXRzICE9IDApOwot
ICAgIC8vIGdsSW52YWxpZGF0ZUZyYW1lYnVmZmVyKCkgaXNuJ3Qgc3VwcG9ydGVkIHdpdGggR0xF
UyAyLjAKLSAgICBBTkdMRV9TS0lQX1RFU1RfSUYoZ2V0Q2xpZW50TWFqb3JWZXJzaW9uKCkgPCAz
KTsKLSAgICBBTkdMRV9TS0lQX1RFU1RfSUYoSXNEM0QxMSgpKTsKIAogICAgIGdsQ2xlYXJDb2xv
cigwLjBmLCAwLjBmLCAwLjBmLCAwLjBmKTsKICAgICBnbENsZWFyKEdMX0NPTE9SX0JVRkZFUl9C
SVQpOwpAQCAtMjY1Miw0ICsyNjgxLDcgQEAgQU5HTEVfSU5TVEFOVElBVEVfVEVTVChDbGVhclRl
c3RSR0IsCiAgICAgICAgICAgICAgICAgICAgICAgIEVTMl9NRVRBTCgpLAogICAgICAgICAgICAg
ICAgICAgICAgICBFUzNfTUVUQUwoKSk7CiAKK0dURVNUX0FMTE9XX1VOSU5TVEFOVElBVEVEX1BB
UkFNRVRFUklaRURfVEVTVChDbGVhclRlc3RSR0JfRVMzKTsKK0FOR0xFX0lOU1RBTlRJQVRFX1RF
U1QoQ2xlYXJUZXN0UkdCX0VTMywgRVMzX0QzRDExKCksIEVTM19WVUxLQU4oKSwgRVMzX01FVEFM
KCkpOworCiB9ICAvLyBhbm9ueW1vdXMgbmFtZXNwYWNlCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvZ2xfdGVzdHMvRFhUMUNvbXByZXNzZWRUZXh0dXJlVGVz
dC5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvZ2xfdGVzdHMvRFhUMUNv
bXByZXNzZWRUZXh0dXJlVGVzdC5jcHAKaW5kZXggZWU1YWM0ZTYxMzMzYTM0N2M5NGRhZGY0NjMw
ZDJjZDcyNjI3NWQ2Zi4uYWM4MmEzOGY0YTgyYjRmZTFkOWFiNTExOGI1NWJlMDcwMjI0Mzg2ZSAx
MDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2dsX3Rlc3RzL0RY
VDFDb21wcmVzc2VkVGV4dHVyZVRlc3QuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy90ZXN0cy9nbF90ZXN0cy9EWFQxQ29tcHJlc3NlZFRleHR1cmVUZXN0LmNwcApAQCAtMjE2
LDYgKzIxNiwzOSBAQCBURVNUX1AoRFhUMUNvbXByZXNzZWRUZXh0dXJlVGVzdCwgQ29tcHJlc3Nl
ZFRleFN0b3JhZ2UpCiAgICAgRVhQRUNUX0dMX05PX0VSUk9SKCk7CiB9CiAKKy8vIFRlc3QgdmFs
aWRhdGlvbiBvZiBub24gYmxvY2sgc2l6ZXMsIHdpZHRoIDY3MiBhbmQgaGVpZ2h0IDExNCBhbmQg
bXVsdGlwbGUgbWlwIGxldmVscworVEVTVF9QKERYVDFDb21wcmVzc2VkVGV4dHVyZVRlc3QsIE5v
bkJsb2NrU2l6ZXNNaXBMZXZlbHMpCit7CisgICAgQU5HTEVfU0tJUF9URVNUX0lGKCFJc0dMRXh0
ZW5zaW9uRW5hYmxlZCgiR0xfRVhUX3RleHR1cmVfY29tcHJlc3Npb25fZHh0MSIpKTsKKworICAg
IEdMVGV4dHVyZSB0ZXh0dXJlOworICAgIGdsQmluZFRleHR1cmUoR0xfVEVYVFVSRV8yRCwgdGV4
dHVyZS5nZXQoKSk7CisKKyAgICBjb25zdGV4cHIgR0x1aW50IGtXaWR0aCAgPSA2NzQ7CisgICAg
Y29uc3RleHByIEdMdWludCBrSGVpZ2h0ID0gMTE0OworCisgICAgLy8gRnJvbSBFWFRfdGV4dHVy
ZV9jb21wcmVzc2lvbl9zM3RjIHNwZWNpZmljYXRpb25zOgorICAgIC8vIFdoZW4gYW4gUzNUQyBp
bWFnZSB3aXRoIGEgd2lkdGggb2YgPHc+LCBoZWlnaHQgb2YgPGg+LCBhbmQgYmxvY2sgc2l6ZSBv
ZgorICAgIC8vIDxibG9ja3NpemU+ICg4IG9yIDE2IGJ5dGVzKSBpcyBkZWNvZGVkLCB0aGUgY29y
cmVzcG9uZGluZyBpbWFnZSBzaXplIChpbgorICAgIC8vIGJ5dGVzKSBpczoKKyAgICAvLyAgICAg
Y2VpbCg8dz4vNCkgKiBjZWlsKDxoPi80KSAqIGJsb2Nrc2l6ZS4KKyAgICBjb25zdGV4cHIgR0x1
aW50IGtJbWFnZVNpemUgPSAoKGtXaWR0aCArIDMpIC8gNCkgKiAoKGtIZWlnaHQgKyAzKSAvIDQp
ICogODsKKworICAgIGdsQ29tcHJlc3NlZFRleEltYWdlMkQoR0xfVEVYVFVSRV8yRCwgMCwgR0xf
Q09NUFJFU1NFRF9SR0JBX1MzVENfRFhUMV9FWFQsIGtXaWR0aCwga0hlaWdodCwgMCwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGtJbWFnZVNpemUsIG51bGxwdHIpOworICAgIEFTU0VSVF9H
TF9OT19FUlJPUigpOworCisgICAgY29uc3RleHByIEdMdWludCBrSW1hZ2VTaXplMSA9ICgoa1dp
ZHRoIC8gMiArIDMpIC8gNCkgKiAoKGtIZWlnaHQgLyAyICsgMykgLyA0KSAqIDg7CisgICAgZ2xD
b21wcmVzc2VkVGV4SW1hZ2UyRChHTF9URVhUVVJFXzJELCAxLCBHTF9DT01QUkVTU0VEX1JHQkFf
UzNUQ19EWFQxX0VYVCwga1dpZHRoIC8gMiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGtI
ZWlnaHQgLyAyLCAwLCBrSW1hZ2VTaXplMSwgbnVsbHB0cik7CisgICAgQVNTRVJUX0dMX05PX0VS
Uk9SKCk7CisKKyAgICBjb25zdGV4cHIgR0x1aW50IGtJbWFnZVNpemUyID0gKChrV2lkdGggLyA0
ICsgMykgLyA0KSAqICgoa0hlaWdodCAvIDQgKyAzKSAvIDQpICogODsKKyAgICBnbENvbXByZXNz
ZWRUZXhJbWFnZTJEKEdMX1RFWFRVUkVfMkQsIDEsIEdMX0NPTVBSRVNTRURfUkdCQV9TM1RDX0RY
VDFfRVhULCBrV2lkdGggLyA0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAga0hlaWdodCAv
IDQsIDAsIGtJbWFnZVNpemUyLCBudWxscHRyKTsKKyAgICBBU1NFUlRfR0xfTk9fRVJST1IoKTsK
K30KKwogLy8gVGVzdCB2YWxpZGF0aW9uIG9mIGdsQ29tcHJlc3NlZFRleFN1YkltYWdlMkQgd2l0
aCBEWFQgZm9ybWF0cwogVEVTVF9QKERYVDFDb21wcmVzc2VkVGV4dHVyZVRlc3QsIENvbXByZXNz
ZWRUZXhTdWJJbWFnZVZhbGlkYXRpb24pCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvdGVzdHMvZ2xfdGVzdHMvRHJhd0Jhc2VWZXJ0ZXhCYXNlSW5zdGFuY2VUZXN0
LmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9nbF90ZXN0cy9EcmF3QmFz
ZVZlcnRleEJhc2VJbnN0YW5jZVRlc3QuY3BwCmluZGV4IDFhY2ZmYTFmYjYzOWMxMDAxYjAyOGQ1
YjgyMjlmYmU5NDM1ZWRjZGIuLmMwMzk1OWRkN2RiYjYyOWVjZjgwOTYwZTkyYzE3NDc3OGUxMzM0
MDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9nbF90ZXN0
cy9EcmF3QmFzZVZlcnRleEJhc2VJbnN0YW5jZVRlc3QuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL3NyYy90ZXN0cy9nbF90ZXN0cy9EcmF3QmFzZVZlcnRleEJhc2VJbnN0YW5jZVRl
c3QuY3BwCkBAIC02ODksMTAgKzY4OSw3IEBAIFRFU1RfUChEcmF3QmFzZVZlcnRleEJhc2VJbnN0
YW5jZVRlc3QsIE11bHRpRHJhd0VsZW1lbnRzSW5zdGFuY2VkQmFzZVZlcnRleEJhc2VJCiB9CiAK
IGNvbnN0IGFuZ2xlOjpQbGF0Zm9ybVBhcmFtZXRlcnMgcGxhdGZvcm1zW10gPSB7Ci0gICAgRVMz
X0QzRDExKCksCi0gICAgRVMzX09QRU5HTCgpLAotICAgIEVTM19PUEVOR0xFUygpLAotICAgIEVT
M19WVUxLQU4oKSwKKyAgICBFUzNfRDNEMTEoKSwgRVMzX01FVEFMKCksIEVTM19PUEVOR0woKSwg
RVMzX09QRU5HTEVTKCksIEVTM19WVUxLQU4oKSwKIH07CiAKIEdURVNUX0FMTE9XX1VOSU5TVEFO
VElBVEVEX1BBUkFNRVRFUklaRURfVEVTVChEcmF3QmFzZVZlcnRleEJhc2VJbnN0YW5jZVRlc3Qp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2dsX3Rlc3Rz
L0RyYXdCYXNlVmVydGV4VmFyaWFudHNUZXN0LmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy90ZXN0cy9nbF90ZXN0cy9EcmF3QmFzZVZlcnRleFZhcmlhbnRzVGVzdC5jcHAKaW5kZXgg
YjYwM2ExYjY1ZWIyYzFmMDgyMTQ0YTM1MGE5ODY1MWY3ZjRiMTU0Ni4uMDg0NmJkN2QyNTllOGZk
OTI3NDcwYjRlNzMxYzlmNzNiYzQyYWY5OSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc3JjL3Rlc3RzL2dsX3Rlc3RzL0RyYXdCYXNlVmVydGV4VmFyaWFudHNUZXN0LmNwcAor
KysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvZ2xfdGVzdHMvRHJhd0Jhc2VW
ZXJ0ZXhWYXJpYW50c1Rlc3QuY3BwCkBAIC00NDQsNiArNDQ0LDcgQEAgQU5HTEVfSU5TVEFOVElB
VEVfVEVTVF9DT01CSU5FXzEoRHJhd0Jhc2VWZXJ0ZXhWYXJpYW50c1Rlc3QsCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBEcmF3QmFzZVZlcnRleFZhcmlhbnRzVGVzdFByaW50LAog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVzdGluZzo6VmFsdWVzSW4oa0J1ZmZl
ckRhdGFVc2FnZSksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFUzNfRDNEMTEo
KSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVTM19NRVRBTCgpLAogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgRVMzX09QRU5HTCgpLAogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgRVMzX09QRU5HTEVTKCksCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBFUzNfVlVMS0FOKCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc3JjL3Rlc3RzL2dsX3Rlc3RzL0RyYXdFbGVtZW50c1Rlc3QuY3BwIGIvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2dsX3Rlc3RzL0RyYXdFbGVtZW50c1Rlc3QuY3BwCmlu
ZGV4IDk5MWI5ZjUwYjY0ODdjOTU4Y2Q4ZTA1ZWIyZmIzOTVhNDBiZjk4NDUuLjQzNWM2MjkzYjAy
NThhYWY0ZGNkNTE5MDkwOWU2ODQ4ZTIxNjdkY2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL3NyYy90ZXN0cy9nbF90ZXN0cy9EcmF3RWxlbWVudHNUZXN0LmNwcAorKysgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvZ2xfdGVzdHMvRHJhd0VsZW1lbnRzVGVz
dC5jcHAKQEAgLTE1Miw2ICsxNTIsMTE5IEBAIFRFU1RfUChEcmF3RWxlbWVudHNUZXN0LCBEZWxl
dGVWZXJ0ZXhBcnJheUFuZFVwbG9hZEluZGV4KQogICAgIEFTU0VSVF9HTF9OT19FUlJPUigpOwog
fQogCisvLyBUZXN0IFZBTyBzd2l0Y2ggaXMgaGFuZGxpbmcgY2FjaGVkIGVsZW1lbnQgYXJyYXkg
YnVmZmVyIHByb3Blcmx5IGFsb25nIHdpdGggbGluZSBsb29wIG1vZGUKKy8vIHN3aXRjaC4KK1RF
U1RfUChEcmF3RWxlbWVudHNUZXN0LCBMaW5lTG9vcFRyaWFuZ2xlcykKK3sKKyAgICBjb25zdCBh
dXRvICZ2ZXJ0aWNlcyAgICAgICAgICAgICAgICAgICAgPSBHZXRJbmRleGVkUXVhZFZlcnRpY2Vz
KCk7CisgICAgY29uc3RleHByIHN0ZDo6YXJyYXk8R0x1aW50LCA2PiBpbmRpY2VzID0ge3swLCAx
LCAyLCAwLCAyLCAzfX07CisKKyAgICBBTkdMRV9HTF9QUk9HUkFNKHByb2dyYW1EcmF3UmVkLCBl
c3NsM19zaGFkZXJzOjp2czo6U2ltcGxlKCksIGVzc2wzX3NoYWRlcnM6OmZzOjpSZWQoKSk7Cisg
ICAgQU5HTEVfR0xfUFJPR1JBTShwcm9ncmFtRHJhd0JsdWUsIGVzc2wzX3NoYWRlcnM6OnZzOjpT
aW1wbGUoKSwgZXNzbDNfc2hhZGVyczo6ZnM6OkJsdWUoKSk7CisKKyAgICBnbFVzZVByb2dyYW0o
cHJvZ3JhbURyYXdSZWQpOworICAgIEdMaW50IHBvc0xvY2F0aW9uID0gZ2xHZXRBdHRyaWJMb2Nh
dGlvbihwcm9ncmFtRHJhd1JlZCwgZXNzbDNfc2hhZGVyczo6UG9zaXRpb25BdHRyaWIoKSk7Cisg
ICAgQVNTRVJUX05FKC0xLCBwb3NMb2NhdGlvbik7CisKKyAgICBHTFZlcnRleEFycmF5IHZlcnRl
eEFycmF5WzJdOworICAgIEdMQnVmZmVyIHZlcnRleEJ1ZmZlclsyXTsKKworICAgIGdsQmluZFZl
cnRleEFycmF5KHZlcnRleEFycmF5WzBdKTsKKworICAgIEdMQnVmZmVyIGluZGV4QnVmZmVyOwor
ICAgIGdsQmluZEJ1ZmZlcihHTF9FTEVNRU5UX0FSUkFZX0JVRkZFUiwgaW5kZXhCdWZmZXIpOwor
ICAgIGdsQnVmZmVyRGF0YShHTF9FTEVNRU5UX0FSUkFZX0JVRkZFUiwgc2l6ZW9mKGluZGljZXNb
MF0pICogaW5kaWNlcy5zaXplKCksIGluZGljZXMuZGF0YSgpLAorICAgICAgICAgICAgICAgICBH
TF9TVEFUSUNfRFJBVyk7CisKKyAgICBmb3IgKGludCBpID0gMDsgaSA8IDI7IGkrKykKKyAgICB7
CisgICAgICAgIGdsQmluZFZlcnRleEFycmF5KHZlcnRleEFycmF5W2ldKTsKKyAgICAgICAgZ2xC
aW5kQnVmZmVyKEdMX0FSUkFZX0JVRkZFUiwgdmVydGV4QnVmZmVyW2ldKTsKKyAgICAgICAgZ2xC
dWZmZXJEYXRhKEdMX0FSUkFZX0JVRkZFUiwgc2l6ZW9mKHZlcnRpY2VzWzBdKSAqIHZlcnRpY2Vz
LnNpemUoKSwgdmVydGljZXMuZGF0YSgpLAorICAgICAgICAgICAgICAgICAgICAgR0xfU1RBVElD
X0RSQVcpOworICAgICAgICBnbFZlcnRleEF0dHJpYlBvaW50ZXIocG9zTG9jYXRpb24sIDMsIEdM
X0ZMT0FULCBHTF9GQUxTRSwgMCwgMCk7CisgICAgICAgIGdsRW5hYmxlVmVydGV4QXR0cmliQXJy
YXkocG9zTG9jYXRpb24pOworICAgICAgICBnbEJpbmRCdWZmZXIoR0xfRUxFTUVOVF9BUlJBWV9C
VUZGRVIsIGluZGV4QnVmZmVyKTsKKyAgICB9CisKKyAgICAvLyBGaXJzdCBkcmF3IHdpdGggVkFP
MCBhbmQgbGluZSBsb29wIG1vZGUKKyAgICBnbEJpbmRWZXJ0ZXhBcnJheSh2ZXJ0ZXhBcnJheVsw
XSk7CisgICAgZ2xEcmF3QXJyYXlzKEdMX0xJTkVfTE9PUCwgMCwgNCk7CisKKyAgICAvLyBTd2l0
Y2ggdG8gVkFPMSBhbmQgZHJhdyB3aXRoIHRyaWFuZ2xlIG1vZGUuCisgICAgZ2xCaW5kVmVydGV4
QXJyYXkodmVydGV4QXJyYXlbMV0pOworICAgIGdsQmluZEJ1ZmZlcihHTF9FTEVNRU5UX0FSUkFZ
X0JVRkZFUiwgaW5kZXhCdWZmZXIpOworICAgIGdsRHJhd0VsZW1lbnRzKEdMX1RSSUFOR0xFUywg
NiwgR0xfVU5TSUdORURfSU5ULCBudWxscHRyKTsKKworICAgIEVYUEVDVF9QSVhFTF9DT0xPUl9F
USgwLCAwLCBHTENvbG9yOjpyZWQpOworICAgIEVYUEVDVF9QSVhFTF9DT0xPUl9FUShnZXRXaW5k
b3dXaWR0aCgpIC0gMSwgMCwgR0xDb2xvcjo6cmVkKTsKKyAgICBFWFBFQ1RfUElYRUxfQ09MT1Jf
RVEoMCwgZ2V0V2luZG93SGVpZ2h0KCkgLSAxLCBHTENvbG9yOjpyZWQpOworICAgIEVYUEVDVF9Q
SVhFTF9DT0xPUl9FUShnZXRXaW5kb3dXaWR0aCgpIC0gMSwgZ2V0V2luZG93SGVpZ2h0KCkgLSAx
LCBHTENvbG9yOjpyZWQpOworCisgICAgLy8gU3dpdGNoIGJhY2sgdG8gVkFPMCBhbmQgZHJhdyB3
aXRoIHRyaWFuZ2xlIG1vZGUuCisgICAgZ2xVc2VQcm9ncmFtKHByb2dyYW1EcmF3Qmx1ZSk7Cisg
ICAgZ2xCaW5kVmVydGV4QXJyYXkodmVydGV4QXJyYXlbMF0pOworICAgIGdsQmluZEJ1ZmZlcihH
TF9FTEVNRU5UX0FSUkFZX0JVRkZFUiwgaW5kZXhCdWZmZXIpOworICAgIGdsRHJhd0VsZW1lbnRz
KEdMX1RSSUFOR0xFUywgNiwgR0xfVU5TSUdORURfSU5ULCBudWxscHRyKTsKKworICAgIEVYUEVD
VF9QSVhFTF9DT0xPUl9FUSgwLCAwLCBHTENvbG9yOjpibHVlKTsKKyAgICBFWFBFQ1RfUElYRUxf
Q09MT1JfRVEoZ2V0V2luZG93V2lkdGgoKSAtIDEsIDAsIEdMQ29sb3I6OmJsdWUpOworICAgIEVY
UEVDVF9QSVhFTF9DT0xPUl9FUSgwLCBnZXRXaW5kb3dIZWlnaHQoKSAtIDEsIEdMQ29sb3I6OmJs
dWUpOworICAgIEVYUEVDVF9QSVhFTF9DT0xPUl9FUShnZXRXaW5kb3dXaWR0aCgpIC0gMSwgZ2V0
V2luZG93SGVpZ2h0KCkgLSAxLCBHTENvbG9yOjpibHVlKTsKKyAgICBBU1NFUlRfR0xfTk9fRVJS
T1IoKTsKK30KKworLy8gUmVncmVzc2lvbiB0ZXN0IGZvciB1c2luZyB0d28gVkFPcywgb25lIHRv
IGRyYXcgb25seSBHTF9MSU5FX0xPT1BzLCBhbmQKKy8vIGFub3RoZXIgdG8gZHJhdyBpbmRleGVk
IHRyaWFuZ2xlcy4KK1RFU1RfUChEcmF3RWxlbWVudHNUZXN0LCBMaW5lTG9vcFRyaWFuZ2xlczIp
Cit7CisgICAgY29uc3QgYXV0byAmdmVydGljZXMgICAgICAgICAgICAgICAgICAgID0gR2V0SW5k
ZXhlZFF1YWRWZXJ0aWNlcygpOworICAgIGNvbnN0ZXhwciBzdGQ6OmFycmF5PEdMdWludCwgNj4g
aW5kaWNlcyA9IHt7MCwgMSwgMiwgMCwgMiwgM319OworCisgICAgQU5HTEVfR0xfUFJPR1JBTShw
cm9ncmFtRHJhd1JlZCwgZXNzbDNfc2hhZGVyczo6dnM6OlNpbXBsZSgpLCBlc3NsM19zaGFkZXJz
Ojpmczo6UmVkKCkpOworCisgICAgZ2xVc2VQcm9ncmFtKHByb2dyYW1EcmF3UmVkKTsKKyAgICBH
TGludCBwb3NMb2NhdGlvbiA9IGdsR2V0QXR0cmliTG9jYXRpb24ocHJvZ3JhbURyYXdSZWQsIGVz
c2wzX3NoYWRlcnM6OlBvc2l0aW9uQXR0cmliKCkpOworICAgIEFTU0VSVF9ORSgtMSwgcG9zTG9j
YXRpb24pOworCisgICAgR0xWZXJ0ZXhBcnJheSB2ZXJ0ZXhBcnJheVsyXTsKKyAgICBHTEJ1ZmZl
ciB2ZXJ0ZXhCdWZmZXJbMl07CisKKyAgICBHTEJ1ZmZlciBpbmRleEJ1ZmZlcjsKKyAgICBnbEJp
bmRCdWZmZXIoR0xfRUxFTUVOVF9BUlJBWV9CVUZGRVIsIGluZGV4QnVmZmVyKTsKKyAgICBnbEJ1
ZmZlckRhdGEoR0xfRUxFTUVOVF9BUlJBWV9CVUZGRVIsIHNpemVvZihpbmRpY2VzWzBdKSAqIGlu
ZGljZXMuc2l6ZSgpLCBpbmRpY2VzLmRhdGEoKSwKKyAgICAgICAgICAgICAgICAgR0xfU1RBVElD
X0RSQVcpOworCisgICAgZm9yIChpbnQgaSA9IDA7IGkgPCAyOyBpKyspCisgICAgeworICAgICAg
ICBnbEJpbmRWZXJ0ZXhBcnJheSh2ZXJ0ZXhBcnJheVtpXSk7CisgICAgICAgIGdsQmluZEJ1ZmZl
cihHTF9BUlJBWV9CVUZGRVIsIHZlcnRleEJ1ZmZlcltpXSk7CisgICAgICAgIGdsQnVmZmVyRGF0
YShHTF9BUlJBWV9CVUZGRVIsIHNpemVvZih2ZXJ0aWNlc1swXSkgKiB2ZXJ0aWNlcy5zaXplKCks
IHZlcnRpY2VzLmRhdGEoKSwKKyAgICAgICAgICAgICAgICAgICAgIEdMX1NUQVRJQ19EUkFXKTsK
KyAgICAgICAgZ2xWZXJ0ZXhBdHRyaWJQb2ludGVyKHBvc0xvY2F0aW9uLCAzLCBHTF9GTE9BVCwg
R0xfRkFMU0UsIDAsIDApOworICAgICAgICBnbEVuYWJsZVZlcnRleEF0dHJpYkFycmF5KHBvc0xv
Y2F0aW9uKTsKKyAgICAgICAgaWYgKGkgIT0gMCkKKyAgICAgICAgICAgIGdsQmluZEJ1ZmZlcihH
TF9FTEVNRU5UX0FSUkFZX0JVRkZFUiwgaW5kZXhCdWZmZXIpOworICAgIH0KKworICAgIC8vIEZp
cnN0IGRyYXcgd2l0aCBWQU8wIGFuZCBsaW5lIGxvb3AgbW9kZQorICAgIGdsQmluZFZlcnRleEFy
cmF5KHZlcnRleEFycmF5WzBdKTsKKyAgICBnbERyYXdBcnJheXMoR0xfTElORV9MT09QLCAwLCA0
KTsKKworICAgIC8vIFN3aXRjaCB0byBWQU8xIGFuZCBkcmF3IHNvbWUgaW5kZXhlZCB0cmlhbmds
ZXMKKyAgICBnbEJpbmRWZXJ0ZXhBcnJheSh2ZXJ0ZXhBcnJheVsxXSk7CisgICAgZ2xCaW5kQnVm
ZmVyKEdMX0VMRU1FTlRfQVJSQVlfQlVGRkVSLCBpbmRleEJ1ZmZlcik7CisgICAgZ2xEcmF3RWxl
bWVudHMoR0xfVFJJQU5HTEVTLCA2LCBHTF9VTlNJR05FRF9JTlQsIG51bGxwdHIpOworCisgICAg
Ly8gU3dpdGNoIGJhY2sgdG8gVkFPMCBhbmQgZG8gYW5vdGhlciBsaW5lIGxvb3AKKyAgICBnbEJp
bmRWZXJ0ZXhBcnJheSh2ZXJ0ZXhBcnJheVswXSk7CisKKyAgICAvLyBXb3VsZCBjcmFzaCBpZiB0
aGUgaW5kZXggYnVmZmVyIGRpcnR5IGJpdCBnb3QgZXJyYW50bHkgc2V0IG9uIFZBTzAuCisgICAg
Z2xEcmF3QXJyYXlzKEdMX0xJTkVfTE9PUCwgMCwgNCk7CisKKyAgICBBU1NFUlRfR0xfTk9fRVJS
T1IoKTsKK30KKwogLy8gVGVzdCBhIHN0YXRlIGRlc3luYyB0aGF0IGNhbiBvY2N1ciB3aGVuIHVz
aW5nIGEgc3RyZWFtaW5nIGluZGV4IGJ1ZmZlciBpbiBHTCBpbiBjb25jZXJ0IHdpdGgKIC8vIGRl
bGV0aW5nIHRoZSBhcHBsaWVkIGluZGV4IGJ1ZmZlci4KIFRFU1RfUChEcmF3RWxlbWVudHNUZXN0
LCBEZWxldGluZ0FmdGVyU3RyZWFtaW5nSW5kZXhlcykKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9nbF90ZXN0cy9GZW5jZVN5bmNUZXN0cy5jcHAgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvZ2xfdGVzdHMvRmVuY2VTeW5jVGVzdHMuY3Bw
CmluZGV4IGYwYTIzMTRkYzI0MWUxNDQ4YzZkN2ZjZWY5YjExZmFiYzNjODhhZWQuLjQxOGY2YzI0
MmM1MDZmYzYzOTI2YmQ3NmY4YmE1ZWQxMmIxZjQzYjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9nbF90ZXN0cy9GZW5jZVN5bmNUZXN0cy5jcHAKKysrIGIv
U291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2dsX3Rlc3RzL0ZlbmNlU3luY1Rlc3Rz
LmNwcApAQCAtMjI3LDYgKzIyNywxNiBAQCBURVNUX1AoRmVuY2VTeW5jVGVzdCwgQmFzaWNRdWVy
aWVzKQogICAgIEVYUEVDVF9FUSgwLCB2YWx1ZSk7CiB9CiAKKy8vIFRlc3QgdXNhZ2Ugb2YgZ2xH
ZXRTeW5jaXYgd2l0aCBudWxscHRyIGFzIGxlbmd0aAorVEVTVF9QKEZlbmNlU3luY1Rlc3QsIE51
bGxMZW5ndGgpCit7CisgICAgR0xpbnQgdmFsdWUgPSAwOworICAgIEdMc3luYyBzeW5jID0gZ2xG
ZW5jZVN5bmMoR0xfU1lOQ19HUFVfQ09NTUFORFNfQ09NUExFVEUsIDApOworICAgIGdsR2V0U3lu
Y2l2KHN5bmMsIEdMX1NZTkNfU1RBVFVTLCAxLCBudWxscHRyLCAmdmFsdWUpOworICAgIGdsRGVs
ZXRlU3luYyhzeW5jKTsKKyAgICBFWFBFQ1RfR0xfTk9fRVJST1IoKTsKK30KKwogLy8gVGVzdCB0
aGF0IGJhc2ljIHVzYWdlIHdvcmtzIGFuZCBkb2Vzbid0IGdlbmVyYXRlIGVycm9ycyBvciBjcmFz
aAogVEVTVF9QKEZlbmNlU3luY1Rlc3QsIEJhc2ljT3BlcmF0aW9ucykKIHsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9nbF90ZXN0cy9GcmFtZWJ1ZmZlclRl
c3QuY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2dsX3Rlc3RzL0ZyYW1l
YnVmZmVyVGVzdC5jcHAKaW5kZXggOGFiZDQ3ZjEwNjI5ZDE3OTM1ZDdlODRlMDEwMWY2OWRkMjhl
NjE4NS4uZDQyMWNjMTE4Mzg4NjI2ZjI0ZDc1ZWQ0ODMwMGE5OTA4MDc3ZmQ4MiAxMDA2NDQKLS0t
IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2dsX3Rlc3RzL0ZyYW1lYnVmZmVy
VGVzdC5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2dsX3Rlc3Rz
L0ZyYW1lYnVmZmVyVGVzdC5jcHAKQEAgLTQxMTksNiArNDExOSw1NyBAQCBURVNUX1AoRnJhbWVi
dWZmZXJUZXN0X0VTMywgQmluZFJlbmRlcmJ1ZmZlclRoZW5Nb2RpZnlTaXplKQogICAgIEFTU0VS
VF9HTF9OT19FUlJPUigpOwogfQogCisvLyBUZXN0cyByZWRlZmluaW5nIGEgbGF5ZXJlZCBmcmFt
ZWJ1ZmZlciBhdHRhY2htZW50LgorVEVTVF9QKEZyYW1lYnVmZmVyVGVzdF9FUzMsIFJlZGVmaW5l
TGF5ZXJBdHRhY2htZW50KQoreworICAgIEdMVGV4dHVyZSB0ZXh0dXJlOworICAgIGdsQmluZFRl
eHR1cmUoR0xfVEVYVFVSRV8zRCwgdGV4dHVyZSk7CisgICAgc3RkOjp2ZWN0b3I8dWludDhfdD4g
aW1nRGF0YSgyMDQ4MCwgMCk7CisgICAgZ2xUZXhJbWFnZTNEKEdMX1RFWFRVUkVfM0QsIDAsIEdM
X1I4LCA4LCA4LCA4LCAwLCBHTF9SRUQsIEdMX1VOU0lHTkVEX0JZVEUsIGltZ0RhdGEuZGF0YSgp
KTsKKworICAgIEdMRnJhbWVidWZmZXIgZmJvOworICAgIGdsQmluZEZyYW1lYnVmZmVyKEdMX0ZS
QU1FQlVGRkVSLCBmYm8pOworICAgIGdsRnJhbWVidWZmZXJUZXh0dXJlTGF5ZXIoR0xfRlJBTUVC
VUZGRVIsIEdMX0NPTE9SX0FUVEFDSE1FTlQwLCB0ZXh0dXJlLCAwLCA4KTsKKyAgICBnbEdlbmVy
YXRlTWlwbWFwKEdMX1RFWFRVUkVfM0QpOworCisgICAgZ2xUZXhJbWFnZTNEKEdMX1RFWFRVUkVf
M0QsIDAsIEdMX1I4VUksIDE2LCAxNiwgMTYsIDAsIEdMX1JFRF9JTlRFR0VSLCBHTF9VTlNJR05F
RF9CWVRFLAorICAgICAgICAgICAgICAgICBpbWdEYXRhLmRhdGEoKSk7CisgICAgZ2xDb3B5VGV4
U3ViSW1hZ2UzRChHTF9URVhUVVJFXzNELCAwLCAwLCAwLCAyLCAyLCAxNSwgMTYsIDE2KTsKKyAg
ICBBU1NFUlRfR0xfTk9fRVJST1IoKTsKK30KKworLy8gQ292ZXJzIGEgYnVnIHdoZW4gY2hhbmdp
bmcgYSBiYXNlIGxldmVsIG9mIGEgdGV4dHVyZSBib3VuZCB0byBhIEZCTy4KK1RFU1RfUChGcmFt
ZWJ1ZmZlclRlc3RfRVMzLCBSZWF0dGFjaFRvSW52YWxpZEJhc2VMZXZlbCkKK3sKKyAgICBBTkdM
RV9HTF9QUk9HUkFNKHRlc3RQcm9ncmFtLCBlc3NsMV9zaGFkZXJzOjp2czo6VGV4dHVyZTJEKCks
IGVzc2wxX3NoYWRlcnM6OmZzOjpUZXh0dXJlMkQoKSk7CisgICAgZ2xVc2VQcm9ncmFtKHRlc3RQ
cm9ncmFtKTsKKworICAgIEdMVGV4dHVyZSB0ZXg7CisgICAgZ2xCaW5kVGV4dHVyZShHTF9URVhU
VVJFXzJELCB0ZXgpOworICAgIGdsVGV4UGFyYW1ldGVyaShHTF9URVhUVVJFXzJELCBHTF9URVhU
VVJFX01JTl9GSUxURVIsIEdMX0xJTkVBUik7CisKKyAgICBmb3IgKGludCBtaXAgPSAwOyBtaXAg
PD0gMjsgKyttaXApCisgICAgeworICAgICAgICBpbnQgc2l6ZSA9IDEwID4+IG1pcDsKKyAgICAg
ICAgZ2xUZXhJbWFnZTJEKEdMX1RFWFRVUkVfMkQsIG1pcCwgR0xfUkdCQTgsIHNpemUsIHNpemUs
IDAsIEdMX1JHQkEsIEdMX1VOU0lHTkVEX0JZVEUsCisgICAgICAgICAgICAgICAgICAgICBudWxs
cHRyKTsKKyAgICB9CisKKyAgICBHTEZyYW1lYnVmZmVyIGZiOworICAgIGdsQmluZEZyYW1lYnVm
ZmVyKEdMX0ZSQU1FQlVGRkVSLCBmYik7CisgICAgZ2xGcmFtZWJ1ZmZlclRleHR1cmUyRChHTF9G
UkFNRUJVRkZFUiwgR0xfQ09MT1JfQVRUQUNITUVOVDAsIEdMX1RFWFRVUkVfMkQsIHRleCwgMSk7
CisgICAgRVhQRUNUX0dMX05PX0VSUk9SKCk7CisKKyAgICAvLyBTZXQgYmFzZSBsZXZlbCAxIGFu
ZCBkcmF3LgorICAgIGdsVGV4UGFyYW1ldGVyaShHTF9URVhUVVJFXzJELCBHTF9URVhUVVJFX0JB
U0VfTEVWRUwsIDEpOworICAgIGdsRHJhd0FycmF5cyhHTF9QT0lOVFMsIDAsIDEpOworICAgIEVY
UEVDVF9HTF9OT19FUlJPUigpOworICAgIC8vIFNldCBiYXNlIGxldmVsIDAuIFRoZSBGQk8gaXMg
aW5jb21wbGV0ZSBiZWNhdXNlIHRoZSBGQk8gYXR0YWNobWVudCBiaW5kcyB0byBsZXZlbCAxLgor
ICAgIGdsVGV4UGFyYW1ldGVyaShHTF9URVhUVVJFXzJELCBHTF9URVhUVVJFX0JBU0VfTEVWRUws
IDApOworICAgIGdsRHJhd0FycmF5cyhHTF9QT0lOVFMsIDAsIDEpOworICAgIEVYUEVDVF9HTF9F
UlJPUihHTF9JTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTik7Cit9CisKIEFOR0xFX0lOU1RB
TlRJQVRFX1RFU1RfRVMyKEFkZE1vY2tUZXh0dXJlTm9SZW5kZXJUYXJnZXRUZXN0KTsKIEFOR0xF
X0lOU1RBTlRJQVRFX1RFU1RfRVMyKEZyYW1lYnVmZmVyVGVzdCk7CiBBTkdMRV9JTlNUQU5USUFU
RV9URVNUX0VTMl9BTkRfRVMzKEZyYW1lYnVmZmVyRm9ybWF0c1Rlc3QpOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2dsX3Rlc3RzL0dMU0xUZXN0LmNwcCBi
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9nbF90ZXN0cy9HTFNMVGVzdC5jcHAK
aW5kZXggOWJmZTI4MjlkZDg3NzAyMDM4ZTdiNTZmYTJjY2YzMGQ3ZWQ4NjFkOS4uM2QxZTNlMjZh
MDhhMmNjOTQ5MzZmZDAyZjc0YjE3NjkzNTVjMDY5OSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvc3JjL3Rlc3RzL2dsX3Rlc3RzL0dMU0xUZXN0LmNwcAorKysgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvZ2xfdGVzdHMvR0xTTFRlc3QuY3BwCkBAIC0zMTQ1
LDEwICszMTQ1LDEwIEBAIHZvaWQgbWFpbigpCiAKICAgICBtYXQzeDIgbSA9IG1hdDN4MihpdmVj
MihpKSwgdXZlYzIodSksIGJ2ZWMyKGIpKTsKIAotICAgIGNvbG9yID0gdmVjNChtaVswXVswXSA9
PSBmbG9hdChpKSA/IDEgOiAwLAotICAgICAgICAgICAgICAgICBtdVsyXVsyXSA9PSBmbG9hdCh1
KSA/IDEgOiAwLAotICAgICAgICAgICAgICAgICBtYlsxXVsxXSA9PSBmbG9hdChiKSA/IDEgOiAw
LAotICAgICAgICAgICAgICAgICBtWzBdWzFdID09IGZsb2F0KGkpICYmIG1bMV1bMF0gPT0gZmxv
YXQodSkgJiYgbVsyXVswXSA9PSBmbG9hdChiKSA/IDEgOiAwKTsKKyAgICBjb2xvciA9IHZlYzQo
bWlbMF1bMF0gPT0gLTEyMy4wID8gMSA6IDAsCisgICAgICAgICAgICAgICAgIG11WzJdWzJdID09
IDQ1Ni4wID8gMSA6IDAsCisgICAgICAgICAgICAgICAgIG1iWzFdWzFdID09IDEuMCA/IDEgOiAw
LAorICAgICAgICAgICAgICAgICBtWzBdWzFdID09IC0xMjMuMCAmJiBtWzFdWzBdID09IDQ1Ni4w
ICYmIG1bMl1bMF0gPT0gMS4wID8gMSA6IDApOwogfSkiOwogCiAgICAgQU5HTEVfR0xfUFJPR1JB
TShwcm9ncmFtLCBlc3NsM19zaGFkZXJzOjp2czo6U2ltcGxlKCksIGtGUyk7CkBAIC0zMTg3LDkg
KzMxODcsOSBAQCB2b2lkIG1haW4oKQogICAgIHZlYzMgdjMgPSB2ZWMzKGIsIHUpOwogICAgIHZl
YzQgdjQgPSB2ZWM0KGksIHUpOwogCi0gICAgY29sb3IgPSB2ZWM0KHYyLnggPT0gZmxvYXQoaS54
KSAmJiB2Mi55ID09IGZsb2F0KGIueCkgPyAxIDogMCwKLSAgICAgICAgICAgICAgICAgdjMueCA9
PSBmbG9hdChiLngpICYmIHYzLnkgPT0gZmxvYXQoYi55KSAmJiB2My56ID09IGZsb2F0KHUueCkg
PyAxIDogMCwKLSAgICAgICAgICAgICAgICAgdjQueCA9PSBmbG9hdChpLngpICYmIHY0LnkgPT0g
ZmxvYXQoaS55KSAmJiB2NC56ID09IGZsb2F0KHUueCkgJiYgdjQudyA9PSBmbG9hdCh1LnkpID8g
MSA6IDAsCisgICAgY29sb3IgPSB2ZWM0KHYyLnggPT0gLTEyMy4wICYmIHYyLnkgPT0gMS4wID8g
MSA6IDAsCisgICAgICAgICAgICAgICAgIHYzLnggPT0gMS4wICYmIHYzLnkgPT0gMC4wICYmIHYz
LnogPT0gNDU2LjAgPyAxIDogMCwKKyAgICAgICAgICAgICAgICAgdjQueCA9PSAtMTIzLjAgJiYg
djQueSA9PSAtMjMuMCAmJiB2NC56ID09IDQ1Ni4wICYmIHY0LncgPT0gNzYuMCA/IDEgOiAwLAog
ICAgICAgICAgICAgICAgICAxKTsKIH0pIjsKIApAQCAtMTQ5OTcsNiArMTQ5OTcsMTEwIEBAIHZv
aWQgbWFpbigpIHsKICAgICBnbEdldFNoYWRlcml2KHNoYWRlciwgR0xfQ09NUElMRV9TVEFUVVMs
ICZjb21waWxlUmVzdWx0KTsKICAgICBFWFBFQ1RfTkUoY29tcGlsZVJlc3VsdCwgMCk7CiB9CisK
Ky8vIFRlc3QgdGhhdCBsb29wIGJvZHkgZW5kaW5nIGluIGEgYnJhbmNoIGRvZXNuJ3QgZmFpbCBj
b21waWxhdGlvbgorVEVTVF9QKEdMU0xUZXN0LCBMb29wQm9keUVuZGluZ0luQnJhbmNoMSkKK3sK
KyAgICBjb25zdGV4cHIgY2hhciBrRlNbXSA9IFIiKHZvaWQgbWFpbigpe2ZvcihpbnQgYSxpOztn
bF9GcmFnQ29vcmQpY29udGludWU7fSkiOworCisgICAgR0x1aW50IHNoYWRlciA9IGdsQ3JlYXRl
U2hhZGVyKEdMX0ZSQUdNRU5UX1NIQURFUik7CisKKyAgICBjb25zdCBjaGFyICpzb3VyY2VBcnJh
eVsxXSA9IHtrRlN9OworICAgIEdMaW50IGxlbmd0aHNbMV0gICAgICAgICAgID0ge3N0YXRpY19j
YXN0PEdMaW50PihzaXplb2Yoa0ZTKSAtIDEpfTsKKyAgICBnbFNoYWRlclNvdXJjZShzaGFkZXIs
IDEsIHNvdXJjZUFycmF5LCBsZW5ndGhzKTsKKyAgICBnbENvbXBpbGVTaGFkZXIoc2hhZGVyKTsK
KworICAgIEdMaW50IGNvbXBpbGVSZXN1bHQ7CisgICAgZ2xHZXRTaGFkZXJpdihzaGFkZXIsIEdM
X0NPTVBJTEVfU1RBVFVTLCAmY29tcGlsZVJlc3VsdCk7CisgICAgRVhQRUNUX05FKGNvbXBpbGVS
ZXN1bHQsIDApOworfQorCisvLyBUZXN0IHRoYXQgbG9vcCBib2R5IGVuZGluZyBpbiBhIGJyYW5j
aCBkb2Vzbid0IGZhaWwgY29tcGlsYXRpb24KK1RFU1RfUChHTFNMVGVzdCwgTG9vcEJvZHlFbmRp
bmdJbkJyYW5jaDIpCit7CisgICAgY29uc3RleHByIGNoYXIga0ZTW10gPQorICAgICAgICBSIih2
b2lkIG1haW4oKXtmb3IoaW50IGEsaTtib29sKGdsX0ZyYWdDb29yZC54KTtnbF9GcmFnQ29vcmQp
e2NvbnRpbnVlO319KSI7CisKKyAgICBHTHVpbnQgc2hhZGVyID0gZ2xDcmVhdGVTaGFkZXIoR0xf
RlJBR01FTlRfU0hBREVSKTsKKworICAgIGNvbnN0IGNoYXIgKnNvdXJjZUFycmF5WzFdID0ge2tG
U307CisgICAgR0xpbnQgbGVuZ3Roc1sxXSAgICAgICAgICAgPSB7c3RhdGljX2Nhc3Q8R0xpbnQ+
KHNpemVvZihrRlMpIC0gMSl9OworICAgIGdsU2hhZGVyU291cmNlKHNoYWRlciwgMSwgc291cmNl
QXJyYXksIGxlbmd0aHMpOworICAgIGdsQ29tcGlsZVNoYWRlcihzaGFkZXIpOworCisgICAgR0xp
bnQgY29tcGlsZVJlc3VsdDsKKyAgICBnbEdldFNoYWRlcml2KHNoYWRlciwgR0xfQ09NUElMRV9T
VEFUVVMsICZjb21waWxlUmVzdWx0KTsKKyAgICBFWFBFQ1RfTkUoY29tcGlsZVJlc3VsdCwgMCk7
Cit9CisKKy8vIFRlc3QgdGhhdCBsb29wIGJvZHkgZW5kaW5nIGluIGEgYnJhbmNoIGRvZXNuJ3Qg
ZmFpbCBjb21waWxhdGlvbgorVEVTVF9QKEdMU0xUZXN0LCBMb29wQm9keUVuZGluZ0luQnJhbmNo
MykKK3sKKyAgICBjb25zdGV4cHIgY2hhciBrRlNbXSA9IFIiKHZvaWQgbWFpbigpe2ZvcihpbnQg
YSxpOztnbF9GcmFnQ29vcmQpe3tjb250aW51ZTt9fX0pIjsKKworICAgIEdMdWludCBzaGFkZXIg
PSBnbENyZWF0ZVNoYWRlcihHTF9GUkFHTUVOVF9TSEFERVIpOworCisgICAgY29uc3QgY2hhciAq
c291cmNlQXJyYXlbMV0gPSB7a0ZTfTsKKyAgICBHTGludCBsZW5ndGhzWzFdICAgICAgICAgICA9
IHtzdGF0aWNfY2FzdDxHTGludD4oc2l6ZW9mKGtGUykgLSAxKX07CisgICAgZ2xTaGFkZXJTb3Vy
Y2Uoc2hhZGVyLCAxLCBzb3VyY2VBcnJheSwgbGVuZ3Rocyk7CisgICAgZ2xDb21waWxlU2hhZGVy
KHNoYWRlcik7CisKKyAgICBHTGludCBjb21waWxlUmVzdWx0OworICAgIGdsR2V0U2hhZGVyaXYo
c2hhZGVyLCBHTF9DT01QSUxFX1NUQVRVUywgJmNvbXBpbGVSZXN1bHQpOworICAgIEVYUEVDVF9O
RShjb21waWxlUmVzdWx0LCAwKTsKK30KKworLy8gVGVzdCB0aGF0IGxvb3AgYm9keSBlbmRpbmcg
aW4gYSBicmFuY2ggZG9lc24ndCBmYWlsIGNvbXBpbGF0aW9uCitURVNUX1AoR0xTTFRlc3QsIExv
b3BCb2R5RW5kaW5nSW5CcmFuY2g0KQoreworICAgIGNvbnN0ZXhwciBjaGFyIGtGU1tdID0gUiIo
dm9pZCBtYWluKCl7Zm9yKGludCBhLGk7O2dsX0ZyYWdDb29yZCl7e2NvbnRpbnVlO317fXt9e3t9
e319fX0pIjsKKworICAgIEdMdWludCBzaGFkZXIgPSBnbENyZWF0ZVNoYWRlcihHTF9GUkFHTUVO
VF9TSEFERVIpOworCisgICAgY29uc3QgY2hhciAqc291cmNlQXJyYXlbMV0gPSB7a0ZTfTsKKyAg
ICBHTGludCBsZW5ndGhzWzFdICAgICAgICAgICA9IHtzdGF0aWNfY2FzdDxHTGludD4oc2l6ZW9m
KGtGUykgLSAxKX07CisgICAgZ2xTaGFkZXJTb3VyY2Uoc2hhZGVyLCAxLCBzb3VyY2VBcnJheSwg
bGVuZ3Rocyk7CisgICAgZ2xDb21waWxlU2hhZGVyKHNoYWRlcik7CisKKyAgICBHTGludCBjb21w
aWxlUmVzdWx0OworICAgIGdsR2V0U2hhZGVyaXYoc2hhZGVyLCBHTF9DT01QSUxFX1NUQVRVUywg
JmNvbXBpbGVSZXN1bHQpOworICAgIEVYUEVDVF9ORShjb21waWxlUmVzdWx0LCAwKTsKK30KKwor
Ly8gVGVzdCB0aGF0IGxvb3AgYm9keSBlbmRpbmcgaW4gYSBicmFuY2ggZG9lc24ndCBmYWlsIGNv
bXBpbGF0aW9uCitURVNUX1AoR0xTTFRlc3QsIExvb3BCb2R5RW5kaW5nSW5CcmFuY2g1KQorewor
ICAgIGNvbnN0ZXhwciBjaGFyIGtGU1tdID0gUiIodm9pZCBtYWluKCl7d2hpbGUoYm9vbChnbF9G
cmFnQ29vcmQueCkpe3tjb250aW51ZTt7fX17fX19KSI7CisKKyAgICBHTHVpbnQgc2hhZGVyID0g
Z2xDcmVhdGVTaGFkZXIoR0xfRlJBR01FTlRfU0hBREVSKTsKKworICAgIGNvbnN0IGNoYXIgKnNv
dXJjZUFycmF5WzFdID0ge2tGU307CisgICAgR0xpbnQgbGVuZ3Roc1sxXSAgICAgICAgICAgPSB7
c3RhdGljX2Nhc3Q8R0xpbnQ+KHNpemVvZihrRlMpIC0gMSl9OworICAgIGdsU2hhZGVyU291cmNl
KHNoYWRlciwgMSwgc291cmNlQXJyYXksIGxlbmd0aHMpOworICAgIGdsQ29tcGlsZVNoYWRlcihz
aGFkZXIpOworCisgICAgR0xpbnQgY29tcGlsZVJlc3VsdDsKKyAgICBnbEdldFNoYWRlcml2KHNo
YWRlciwgR0xfQ09NUElMRV9TVEFUVVMsICZjb21waWxlUmVzdWx0KTsKKyAgICBFWFBFQ1RfTkUo
Y29tcGlsZVJlc3VsdCwgMCk7Cit9CisKKy8vIFRlc3QgdGhhdCBsb29wIGJvZHkgZW5kaW5nIGlu
IGEgYnJhbmNoIGRvZXNuJ3QgZmFpbCBjb21waWxhdGlvbgorVEVTVF9QKEdMU0xUZXN0LCBMb29w
Qm9keUVuZGluZ0luQnJhbmNoNikKK3sKKyAgICBjb25zdGV4cHIgY2hhciBrRlNbXSA9IFIiKHZv
aWQgbWFpbigpe2Rve3tjb250aW51ZTt7fX17fX13aGlsZShib29sKGdsX0ZyYWdDb29yZC54KSk7
fSkiOworCisgICAgR0x1aW50IHNoYWRlciA9IGdsQ3JlYXRlU2hhZGVyKEdMX0ZSQUdNRU5UX1NI
QURFUik7CisKKyAgICBjb25zdCBjaGFyICpzb3VyY2VBcnJheVsxXSA9IHtrRlN9OworICAgIEdM
aW50IGxlbmd0aHNbMV0gICAgICAgICAgID0ge3N0YXRpY19jYXN0PEdMaW50PihzaXplb2Yoa0ZT
KSAtIDEpfTsKKyAgICBnbFNoYWRlclNvdXJjZShzaGFkZXIsIDEsIHNvdXJjZUFycmF5LCBsZW5n
dGhzKTsKKyAgICBnbENvbXBpbGVTaGFkZXIoc2hhZGVyKTsKKworICAgIEdMaW50IGNvbXBpbGVS
ZXN1bHQ7CisgICAgZ2xHZXRTaGFkZXJpdihzaGFkZXIsIEdMX0NPTVBJTEVfU1RBVFVTLCAmY29t
cGlsZVJlc3VsdCk7CisgICAgRVhQRUNUX05FKGNvbXBpbGVSZXN1bHQsIDApOworfQorCiB9ICAv
LyBhbm9ueW1vdXMgbmFtZXNwYWNlCiAKIEFOR0xFX0lOU1RBTlRJQVRFX1RFU1RfRVMyX0FORF9F
UzNfQU5EKEdMU0xUZXN0LCBXaXRoR2xzbGFuZyhFUzJfVlVMS0FOKCkpKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9nbF90ZXN0cy9JbmRleEJ1ZmZlck9m
ZnNldFRlc3QuY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2dsX3Rlc3Rz
L0luZGV4QnVmZmVyT2Zmc2V0VGVzdC5jcHAKaW5kZXggOThjOTM0ZmRkNThjOTQxM2VlM2NmYzZk
NWFkZGQxYzc0NmU5YmU3MC4uNTdjZTdmMmJhMTIzMDk3MWVkZjg3NDMxZDYxOWJiNDkzZTUxMThi
NiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2dsX3Rlc3Rz
L0luZGV4QnVmZmVyT2Zmc2V0VGVzdC5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUv
c3JjL3Rlc3RzL2dsX3Rlc3RzL0luZGV4QnVmZmVyT2Zmc2V0VGVzdC5jcHAKQEAgLTQzMyw2ICs0
MzMsMTEzIEBAIFRFU1RfUChJbmRleEJ1ZmZlck9mZnNldFRlc3QsIERyYXdBdERpZmZlcmVudE9m
ZnNldEFsaWdubWVudHMpCiAgICAgRVhQRUNUX0dMX05PX0VSUk9SKCk7CiB9CiAKKy8vIERyYXcg
d2l0aCB0aGUgc2FtZSBlbGVtZW50IGJ1ZmZlciwgYnV0IHdpdGggdHdvIGRpZmZlcmVudCB0eXBl
cyBvZiBkYXRhLgorVEVTVF9QKEluZGV4QnVmZmVyT2Zmc2V0VGVzdCwgRHJhd1dpdGhTYW1lQnVm
ZmVyQnV0RGlmZmVyZW50VHlwZXMpCit7CisgICAgR0x1Ynl0ZSBpbmRleERhdGE4W10gICA9IHsw
LCAxLCAyfTsKKyAgICBHTHVzaG9ydCBpbmRleERhdGExNltdID0gezEsIDIsIDN9OworICAgIGds
Q2xlYXJDb2xvcigwLjBmLCAwLjBmLCAwLjBmLCAxLjBmKTsKKyAgICBnbENsZWFyKEdMX0NPTE9S
X0JVRkZFUl9CSVQpOworCisgICAgZ2xVc2VQcm9ncmFtKG1Qcm9ncmFtKTsKKyAgICBnbFVuaWZv
cm00ZihtQ29sb3JVbmlmb3JtTG9jYXRpb24sIDEuMGYsIDAuMGYsIDAuMGYsIDEuMGYpOworCisg
ICAgZ2xCaW5kQnVmZmVyKEdMX0FSUkFZX0JVRkZFUiwgbVZlcnRleEJ1ZmZlcik7CisgICAgZ2xW
ZXJ0ZXhBdHRyaWJQb2ludGVyKG1Qb3NpdGlvbkF0dHJpYnV0ZUxvY2F0aW9uLCAyLCBHTF9GTE9B
VCwgR0xfRkFMU0UsIDAsIDApOworICAgIGdsRW5hYmxlVmVydGV4QXR0cmliQXJyYXkobVBvc2l0
aW9uQXR0cmlidXRlTG9jYXRpb24pOworCisgICAgLy8gQ3JlYXRlIGVsZW1lbnQgYnVmZmVyIGFu
ZCBmaWxsIG9mZnNldCAwIHdpdGggZGF0YSBmcm9tIGluZGV4RGF0YTggYW5kIG9mZnNldCA1MTIg
d2l0aCBkYXRhCisgICAgLy8gZnJvbSBpbmRleERhdGExNgorICAgIEdMQnVmZmVyIGJ1ZmZlcjsK
KyAgICBnbEJpbmRCdWZmZXIoR0xfRUxFTUVOVF9BUlJBWV9CVUZGRVIsIGJ1ZmZlcik7CisgICAg
Z2xCdWZmZXJEYXRhKEdMX0VMRU1FTlRfQVJSQVlfQlVGRkVSLCA0MDk2LCBudWxscHRyLCBHTF9E
WU5BTUlDX0RSQVcpOworICAgIGdsQnVmZmVyU3ViRGF0YShHTF9FTEVNRU5UX0FSUkFZX0JVRkZF
UiwgMCwgc2l6ZW9mKGluZGV4RGF0YTgpLCBpbmRleERhdGE4KTsKKyAgICBnbEJ1ZmZlclN1YkRh
dGEoR0xfRUxFTUVOVF9BUlJBWV9CVUZGRVIsIDUxMiwgc2l6ZW9mKGluZGV4RGF0YTE2KSwgaW5k
ZXhEYXRhMTYpOworCisgICAgLy8gRHJhdyB3aXRoIDggYml0IGluZGV4IGRhdGEKKyAgICBnbERy
YXdFbGVtZW50cyhHTF9UUklBTkdMRVMsIDMsIEdMX1VOU0lHTkVEX0JZVEUsIHJlaW50ZXJwcmV0
X2Nhc3Q8dm9pZCAqPigwKSk7CisgICAgLy8gRHJhdyB3aXRoIDE2IGJpdHMgaW5kZXggYnVmZmVy
CisgICAgZ2xEcmF3RWxlbWVudHMoR0xfVFJJQU5HTEVTLCAzLCBHTF9VTlNJR05FRF9TSE9SVCwg
cmVpbnRlcnByZXRfY2FzdDx2b2lkICo+KDUxMikpOworCisgICAgLy8gQ2hlY2sgdGhlIHVwcGVy
IGxlZnQgdHJpYW5nbGUKKyAgICBFWFBFQ1RfUElYRUxfQ09MT1JfRVEoMCwgZ2V0V2luZG93SGVp
Z2h0KCkgLyA0LCBHTENvbG9yOjpyZWQpOworICAgIC8vIENoZWNrIHRoZSBkb3duIHJpZ2h0IHRy
aWFuZ2xlCisgICAgRVhQRUNUX1BJWEVMX0NPTE9SX0VRKGdldFdpbmRvd1dpZHRoKCkgLSAxLCBn
ZXRXaW5kb3dIZWlnaHQoKSAtIDEsIEdMQ29sb3I6OnJlZCk7CisKKyAgICBFWFBFQ1RfR0xfTk9f
RVJST1IoKTsKK30KKworLy8gRHJhdyB3aXRoIEdMX0xJTkVfTE9PUCBhbmQgZm9sbG93ZWQgYnkg
R0xfVFJJQU5HTEVTLCBhbGwgdXNpbmcgdGhlIHNhbWUgZWxlbWVudCBidWZmZXIuCitURVNUX1Ao
SW5kZXhCdWZmZXJPZmZzZXRUZXN0LCBEcmF3V2l0aFNhbWVCdWZmZXJCdXREaWZmZXJlbnRNb2Rl
cykKK3sKKyAgICBHTHVzaG9ydCBpbmRleERhdGFMaW5lTG9vcFtdID0gezAsIDEsIDJ9OworICAg
IEdMdXNob3J0IGluZGV4RGF0YVRyaWFuZ2xlW10gPSB7MSwgMiwgM307CisgICAgZ2xDbGVhckNv
bG9yKDAuMGYsIDAuMGYsIDAuMGYsIDEuMGYpOworICAgIGdsQ2xlYXIoR0xfQ09MT1JfQlVGRkVS
X0JJVCk7CisKKyAgICBnbFVzZVByb2dyYW0obVByb2dyYW0pOworICAgIGdsVW5pZm9ybTRmKG1D
b2xvclVuaWZvcm1Mb2NhdGlvbiwgMS4wZiwgMC4wZiwgMC4wZiwgMS4wZik7CisKKyAgICBnbEJp
bmRCdWZmZXIoR0xfQVJSQVlfQlVGRkVSLCBtVmVydGV4QnVmZmVyKTsKKyAgICBnbFZlcnRleEF0
dHJpYlBvaW50ZXIobVBvc2l0aW9uQXR0cmlidXRlTG9jYXRpb24sIDIsIEdMX0ZMT0FULCBHTF9G
QUxTRSwgMCwgMCk7CisgICAgZ2xFbmFibGVWZXJ0ZXhBdHRyaWJBcnJheShtUG9zaXRpb25BdHRy
aWJ1dGVMb2NhdGlvbik7CisKKyAgICAvLyBDcmVhdGUgZWxlbWVudCBidWZmZXIgYW5kIGZpbGwg
b2Zmc2V0IDAgd2l0aCBkYXRhIGZyb20gaW5kZXhEYXRhOCBhbmQgb2Zmc2V0IDUxMiB3aXRoIGRh
dGEKKyAgICAvLyBmcm9tIGluZGV4RGF0YTE2CisgICAgR0xCdWZmZXIgYnVmZmVyOworICAgIGds
QmluZEJ1ZmZlcihHTF9FTEVNRU5UX0FSUkFZX0JVRkZFUiwgYnVmZmVyKTsKKyAgICBnbEJ1ZmZl
ckRhdGEoR0xfRUxFTUVOVF9BUlJBWV9CVUZGRVIsIDQwOTYsIG51bGxwdHIsIEdMX0RZTkFNSUNf
RFJBVyk7CisgICAgZ2xCdWZmZXJTdWJEYXRhKEdMX0VMRU1FTlRfQVJSQVlfQlVGRkVSLCAwLCBz
aXplb2YoaW5kZXhEYXRhTGluZUxvb3ApLCBpbmRleERhdGFMaW5lTG9vcCk7CisgICAgZ2xCdWZm
ZXJTdWJEYXRhKEdMX0VMRU1FTlRfQVJSQVlfQlVGRkVSLCA1MTIsIHNpemVvZihpbmRleERhdGFU
cmlhbmdsZSksIGluZGV4RGF0YVRyaWFuZ2xlKTsKKworICAgIC8vIERyYXcgbGluZSBsb29wCisg
ICAgZ2xEcmF3RWxlbWVudHMoR0xfTElORV9MT09QLCAzLCBHTF9VTlNJR05FRF9TSE9SVCwgMCk7
CisgICAgLy8gRHJhdyB0cmlhbmdsZQorICAgIGdsRHJhd0VsZW1lbnRzKEdMX1RSSUFOR0xFUywg
MywgR0xfVU5TSUdORURfU0hPUlQsIHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCAqPig1MTIpKTsKKwor
ICAgIC8vIENoZWNrIHRoZSBkb3duIHJpZ2h0IHRyaWFuZ2xlCisgICAgRVhQRUNUX1BJWEVMX0NP
TE9SX0VRKGdldFdpbmRvd1dpZHRoKCkgLSAxLCBnZXRXaW5kb3dIZWlnaHQoKSAtIDEsIEdMQ29s
b3I6OnJlZCk7CisKKyAgICBFWFBFQ1RfR0xfTk9fRVJST1IoKTsKK30KKworLy8gRHJhdyB3aXRo
IEdMX0xJTkVfTE9PUCBhbmQgZm9sbG93ZWQgYnkgR0xfVFJJQU5HTEVTLCBhbGwgdXNpbmcgdGhl
IHNhbWUgZWxlbWVudCBidWZmZXIuCitURVNUX1AoSW5kZXhCdWZmZXJPZmZzZXRUZXN0LCBEcmF3
QXJyYXlzTGluZUxvb3BGb2xsb3dlZEJ5RHJhd0VsZW1lbnRzVHJpYW5nbGUpCit7CisgICAgR0x1
aW50IGluZGV4RGF0YUxpbmVMb29wW10gPSB7MCwgMSwgMn07CisgICAgR0x1aW50IGluZGV4RGF0
YVRyaWFuZ2xlW10gPSB7MSwgMiwgM307CisgICAgZ2xDbGVhckNvbG9yKDAuMGYsIDAuMGYsIDAu
MGYsIDEuMGYpOworICAgIGdsQ2xlYXIoR0xfQ09MT1JfQlVGRkVSX0JJVCk7CisKKyAgICBnbFVz
ZVByb2dyYW0obVByb2dyYW0pOworICAgIGdsVW5pZm9ybTRmKG1Db2xvclVuaWZvcm1Mb2NhdGlv
biwgMS4wZiwgMC4wZiwgMC4wZiwgMS4wZik7CisKKyAgICBnbEJpbmRCdWZmZXIoR0xfQVJSQVlf
QlVGRkVSLCBtVmVydGV4QnVmZmVyKTsKKyAgICBnbFZlcnRleEF0dHJpYlBvaW50ZXIobVBvc2l0
aW9uQXR0cmlidXRlTG9jYXRpb24sIDIsIEdMX0ZMT0FULCBHTF9GQUxTRSwgMCwgMCk7CisgICAg
Z2xFbmFibGVWZXJ0ZXhBdHRyaWJBcnJheShtUG9zaXRpb25BdHRyaWJ1dGVMb2NhdGlvbik7CisK
KyAgICAvLyBDcmVhdGUgZWxlbWVudCBidWZmZXIgYW5kIGZpbGwgb2Zmc2V0IDAgd2l0aCBkYXRh
IGZyb20gaW5kZXhEYXRhTGluZUxvb3AgYW5kIG9mZnNldCA1MTIgd2l0aAorICAgIC8vIGRhdGEg
ZnJvbSBpbmRleERhdGFUcmlhbmdsZQorICAgIEdMQnVmZmVyIGJ1ZmZlcjsKKyAgICBnbEJpbmRC
dWZmZXIoR0xfRUxFTUVOVF9BUlJBWV9CVUZGRVIsIGJ1ZmZlcik7CisgICAgZ2xCdWZmZXJEYXRh
KEdMX0VMRU1FTlRfQVJSQVlfQlVGRkVSLCA0MDk2LCBudWxscHRyLCBHTF9EWU5BTUlDX0RSQVcp
OworICAgIGdsQnVmZmVyU3ViRGF0YShHTF9FTEVNRU5UX0FSUkFZX0JVRkZFUiwgMCwgc2l6ZW9m
KGluZGV4RGF0YUxpbmVMb29wKSwgaW5kZXhEYXRhTGluZUxvb3ApOworICAgIGdsQnVmZmVyU3Vi
RGF0YShHTF9FTEVNRU5UX0FSUkFZX0JVRkZFUiwgNTEyLCBzaXplb2YoaW5kZXhEYXRhVHJpYW5n
bGUpLCBpbmRleERhdGFUcmlhbmdsZSk7CisKKyAgICAvLyBGaXJzdCBjYWxsIGRyYXdFbGVtZW50
cyB3aXRoIHRoZSBzYW1lIHByaW1pdGl2ZSBhbmQgdHlwZSBhcyB0aGUgZmluYWwgZHJhd0VsZW1l
bnQgY2FsbC4KKyAgICBnbERyYXdFbGVtZW50cyhHTF9UUklBTkdMRVMsIDMsIEdMX1VOU0lHTkVE
X0lOVCwgcmVpbnRlcnByZXRfY2FzdDx2b2lkICo+KDApKTsKKyAgICAvLyBUaGVuIGRyYXdBcnJh
eSB3aXRoIGxpbmUgbG9vcCB0byB0cmlnZ2VyIHRoZSBzcGVjaWFsIGhhbmRsaW5nIG9mIGxpbmUg
bG9vcC4KKyAgICBnbERyYXdBcnJheXMoR0xfTElORV9MT09QLCAwLCAzKTsKKyAgICAvLyBGaW5h
bGx5IGRyYXdFbGVtZW50cyB3aXRoIHRyaWFuZ2xlIGFuZCBzYW1lIHR5cGUgdG8gZW5zdXJlIHRo
ZSBlbGVtZW50IGJ1ZmZlciBzdGF0ZSB0aGF0IHdhcworICAgIC8vIG1vZGlmaWVkIGJ5IGxpbmUg
bG9vcCBkcmF3IGNhbGwgZ2V0cyByZXN0b3JlZCBwcm9wZXJseS4KKyAgICBnbERyYXdFbGVtZW50
cyhHTF9UUklBTkdMRVMsIDMsIEdMX1VOU0lHTkVEX0lOVCwgcmVpbnRlcnByZXRfY2FzdDx2b2lk
ICo+KDUxMikpOworCisgICAgLy8gQ2hlY2sgdGhlIGRvd24gcmlnaHQgdHJpYW5nbGUKKyAgICBF
WFBFQ1RfUElYRUxfQ09MT1JfRVEoZ2V0V2luZG93V2lkdGgoKSAtIDEsIGdldFdpbmRvd0hlaWdo
dCgpIC0gMSwgR0xDb2xvcjo6cmVkKTsKKworICAgIEVYUEVDVF9HTF9OT19FUlJPUigpOworfQor
CiAvLyBVc2VzIGluZGV4IGJ1ZmZlciBvZmZzZXQgYW5kIDIgZHJhd0VsZW1lbnQgY2FsbHMgb25l
IG9mIHRoZSBvdGhlciB3aXRoIGRpZmZlcmVudCBjb3VudHMsCiAvLyBtYWtlcyBzdXJlIHRoZSBz
ZWNvbmQgZHJhd0VsZW1lbnQgY2FsbCB3aWxsIGhhdmUgaXRzIGRhdGEgYXZhaWxhYmxlLgogVEVT
VF9QKEluZGV4QnVmZmVyT2Zmc2V0VGVzdCwgRHJhd1dpdGhEaWZmZXJlbnRDb3VudHNTYW1lT2Zm
c2V0KQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2dsX3Rl
c3RzL01lbW9yeUJhcnJpZXJUZXN0LmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90
ZXN0cy9nbF90ZXN0cy9NZW1vcnlCYXJyaWVyVGVzdC5jcHAKaW5kZXggOGVlZGQ3MDVlMzYxYTQ2
MWE5M2UwNzQ5MmZmZTllZjdiN2E1NDI0Yi4uODIyMWM2OTk5MWVkOGNkNTQ5YzYxYmNkNGVjYWYw
ZjBmM2ZjNDI2YiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3Rz
L2dsX3Rlc3RzL01lbW9yeUJhcnJpZXJUZXN0LmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9zcmMvdGVzdHMvZ2xfdGVzdHMvTWVtb3J5QmFycmllclRlc3QuY3BwCkBAIC02MSw2ICs2
MSw1NiBAQCBlbnVtIGNsYXNzIE5vb3BPcAogdXNpbmcgTWVtb3J5QmFycmllclZhcmlhdGlvbnNU
ZXN0UGFyYW1zID0KICAgICBzdGQ6OnR1cGxlPGFuZ2xlOjpQbGF0Zm9ybVBhcmFtZXRlcnMsIFNo
YWRlcldyaXRlUGlwZWxpbmUsIFdyaXRlUmVzb3VyY2UsIE5vb3BPcCwgTm9vcE9wPjsKIAorc3Rk
Ojpvc3RyZWFtICZvcGVyYXRvcjw8KHN0ZDo6b3N0cmVhbSAmb3V0LCBXcml0ZVJlc291cmNlIHdy
aXRlUmVzb3VyY2UpCit7CisgICAgc3dpdGNoICh3cml0ZVJlc291cmNlKQorICAgIHsKKyAgICAg
ICAgY2FzZSBXcml0ZVJlc291cmNlOjpJbWFnZToKKyAgICAgICAgICAgIG91dCA8PCAiaW1hZ2Ui
OworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgV3JpdGVSZXNvdXJjZTo6QnVmZmVy
OgorICAgICAgICAgICAgb3V0IDw8ICJidWZmZXIiOworICAgICAgICAgICAgYnJlYWs7CisgICAg
ICAgIGNhc2UgV3JpdGVSZXNvdXJjZTo6SW1hZ2VCdWZmZXI6CisgICAgICAgICAgICBvdXQgPDwg
ImltYWdlYnVmZmVyIjsKKyAgICAgICAgICAgIGJyZWFrOworICAgIH0KKworICAgIHJldHVybiBv
dXQ7Cit9CisKK3N0ZDo6b3N0cmVhbSAmb3BlcmF0b3I8PChzdGQ6Om9zdHJlYW0gJm91dCwgU2hh
ZGVyV3JpdGVQaXBlbGluZSB3cml0ZVBpcGVsaW5lKQoreworICAgIGlmICh3cml0ZVBpcGVsaW5l
ID09IFNoYWRlcldyaXRlUGlwZWxpbmU6OkdyYXBoaWNzKQorICAgIHsKKyAgICAgICAgb3V0IDw8
ICJncmFwaGljcyI7CisgICAgfQorICAgIGVsc2UKKyAgICB7CisgICAgICAgIG91dCA8PCAiY29t
cHV0ZSI7CisgICAgfQorCisgICAgcmV0dXJuIG91dDsKK30KKworc3RkOjpvc3RyZWFtICZvcGVy
YXRvcjw8KHN0ZDo6b3N0cmVhbSAmb3V0LCBOb29wT3Agbm9vcCkKK3sKKyAgICBzd2l0Y2ggKG5v
b3ApCisgICAgeworICAgICAgICBjYXNlIE5vb3BPcDo6RHJhdzoKKyAgICAgICAgICAgIG91dCA8
PCAiTm9vcERyYXciOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgTm9vcE9wOjpE
aXNwYXRjaDoKKyAgICAgICAgICAgIG91dCA8PCAiTm9vcERpc3BhdGNoIjsKKyAgICAgICAgICAg
IGJyZWFrOworICAgICAgICBjYXNlIE5vb3BPcDo6Tm9uZToKKyAgICAgICAgICAgIG91dCA8PCAi
Tm9vcE5vbmUiOworICAgICAgICAgICAgYnJlYWs7CisgICAgfQorCisgICAgcmV0dXJuIG91dDsK
K30KKwogdm9pZCBQYXJzZU1lbW9yeUJhcnJpZXJWYXJpYXRpb25zVGVzdFBhcmFtcyhjb25zdCBN
ZW1vcnlCYXJyaWVyVmFyaWF0aW9uc1Rlc3RQYXJhbXMgJnBhcmFtcywKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU2hhZGVyV3JpdGVQaXBlbGluZSAqd3JpdGVQ
aXBlbGluZU91dCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
V3JpdGVSZXNvdXJjZSAqd3JpdGVSZXNvdXJjZU91dCwKQEAgLTg5LDQ4ICsxMzksMTYgQEAgc3Rk
OjpzdHJpbmcgTWVtb3J5QmFycmllclZhcmlhdGlvbnNUZXN0UHJpbnQoCiAgICAgUGFyc2VNZW1v
cnlCYXJyaWVyVmFyaWF0aW9uc1Rlc3RQYXJhbXMocGFyYW1zLCAmd3JpdGVQaXBlbGluZSwgJndy
aXRlUmVzb3VyY2UsICZwcmVCYXJyaWVyT3AsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgJnBvc3RCYXJyaWVyT3ApOwogCi0gICAgb3V0IDw8ICJfIjsKKyAgICBv
dXQgPDwgIl9fIiA8PCB3cml0ZVBpcGVsaW5lIDw8ICJfIiA8PCB3cml0ZVJlc291cmNlOwogCi0g
ICAgaWYgKHdyaXRlUGlwZWxpbmUgPT0gU2hhZGVyV3JpdGVQaXBlbGluZTo6R3JhcGhpY3MpCisg
ICAgaWYgKHByZUJhcnJpZXJPcCAhPSBOb29wT3A6Ok5vbmUpCiAgICAgewotICAgICAgICBvdXQg
PDwgIl9ncmFwaGljcyI7CisgICAgICAgIG91dCA8PCAiX3ByZWJhcnJpZXIiIDw8IHByZUJhcnJp
ZXJPcDsKICAgICB9Ci0gICAgZWxzZQorICAgIGlmIChwb3N0QmFycmllck9wICE9IE5vb3BPcDo6
Tm9uZSkKICAgICB7Ci0gICAgICAgIG91dCA8PCAiX2NvbXB1dGUiOworICAgICAgICBvdXQgPDwg
Il9wb3N0YmFycmllciIgPDwgcG9zdEJhcnJpZXJPcDsKICAgICB9Ci0KLSAgICBzd2l0Y2ggKHdy
aXRlUmVzb3VyY2UpCi0gICAgewotICAgICAgICBjYXNlIFdyaXRlUmVzb3VyY2U6OkltYWdlOgot
ICAgICAgICAgICAgb3V0IDw8ICJfaW1hZ2UiOwotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAg
IGNhc2UgV3JpdGVSZXNvdXJjZTo6QnVmZmVyOgotICAgICAgICAgICAgb3V0IDw8ICJfYnVmZmVy
IjsKLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICBjYXNlIFdyaXRlUmVzb3VyY2U6OkltYWdl
QnVmZmVyOgotICAgICAgICAgICAgb3V0IDw8ICJfaW1hZ2VidWZmZXIiOwotICAgICAgICAgICAg
YnJlYWs7Ci0gICAgfQotCi0gICAgaWYgKHByZUJhcnJpZXJPcCA9PSBOb29wT3A6OkRyYXcpCi0g
ICAgewotICAgICAgICBvdXQgPDwgIl9wcmViYXJyaWVyTm9vcERyYXciOwotICAgIH0KLSAgICBl
bHNlIGlmIChwcmVCYXJyaWVyT3AgPT0gTm9vcE9wOjpEaXNwYXRjaCkKLSAgICB7Ci0gICAgICAg
IG91dCA8PCAiX3ByZWJhcnJpZXJOb29wRGlzcGF0Y2giOwotICAgIH0KLQotICAgIGlmIChwb3N0
QmFycmllck9wID09IE5vb3BPcDo6RHJhdykKLSAgICB7Ci0gICAgICAgIG91dCA8PCAiX3Bvc3Ri
YXJyaWVyTm9vcERyYXciOwotICAgIH0KLSAgICBlbHNlIGlmIChwb3N0QmFycmllck9wID09IE5v
b3BPcDo6RGlzcGF0Y2gpCi0gICAgewotICAgICAgICBvdXQgPDwgIl9wb3N0YmFycmllck5vb3BE
aXNwYXRjaCI7Ci0gICAgfQotCiAgICAgcmV0dXJuIG91dC5zdHIoKTsKIH0KIApkaWZmIC0tZ2l0
IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2dsX3Rlc3RzL011bHRpc2FtcGxl
VGVzdC5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvZ2xfdGVzdHMvTXVs
dGlzYW1wbGVUZXN0LmNwcAppbmRleCA5OTA0MzAwMTc5MmZmNTg0NWY5YmNkYjQ0MDFkYjM0ZmUy
NTBlMWEzLi4wNmQ3YjZlMGY4YTBiNjVlZGYzZWRkOTdiZGU4ZWY3MjJlNzJlY2Q4IDEwMDY0NAot
LS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvZ2xfdGVzdHMvTXVsdGlzYW1w
bGVUZXN0LmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvZ2xfdGVz
dHMvTXVsdGlzYW1wbGVUZXN0LmNwcApAQCAtNDg2LDYgKzQ4Niw2MTYgQEAgVEVTVF9QKE11bHRp
c2FtcGxlVGVzdEVTMywgUmVzb2x2ZVRvRkJPKQogICAgIEVYUEVDVF9QSVhFTF9DT0xPUl9ORUFS
KGtXaW5kb3dXaWR0aCAvIDIsIGtXaW5kb3dIZWlnaHQgLyAyLCBrUmVzdWx0LCAxKTsKIH0KIAor
Y2xhc3MgTXVsdGlzYW1wbGVSZXNvbHZlVGVzdCA6IHB1YmxpYyBBTkdMRVRlc3QKK3sKKyAgcHJv
dGVjdGVkOgorICAgIHN0YXRpYyBjb25zdCBHTENvbG9yIGtFWFBFQ1RFRF9SODsKKyAgICBzdGF0
aWMgY29uc3QgR0xDb2xvciBrRVhQRUNURURfUkc4OworICAgIHN0YXRpYyBjb25zdCBHTENvbG9y
IGtFWFBFQ1RFRF9SR0I4OworICAgIHN0YXRpYyBjb25zdCBHTENvbG9yIGtFWFBFQ1RFRF9SR0JB
ODsKKyAgICBzdGF0aWMgY29uc3QgR0xDb2xvcjMyRiBrRVhQRUNURURfUkY7CisgICAgc3RhdGlj
IGNvbnN0IEdMQ29sb3IzMkYga0VYUEVDVEVEX1JHRjsKKyAgICBzdGF0aWMgY29uc3QgR0xDb2xv
cjMyRiBrRVhQRUNURURfUkdCRjsKKyAgICBzdGF0aWMgY29uc3QgR0xDb2xvcjMyRiBrRVhQRUNU
RURfUkdCQUY7CisgICAgc3RhdGljIGNvbnN0ZXhwciBHTGludCBrV2lkdGggID0gMTM7CisgICAg
c3RhdGljIGNvbnN0ZXhwciBHTGludCBrSGVpZ2h0ID0gMTE7CisKKyAgICBNdWx0aXNhbXBsZVJl
c29sdmVUZXN0KCkge30KKworICAgIHN0cnVjdCBHTFJlc291cmNlcworICAgIHsKKyAgICAgICAg
R0xGcmFtZWJ1ZmZlciBmYjsKKyAgICAgICAgR0xSZW5kZXJidWZmZXIgcmI7CisgICAgfTsKKwor
ICAgIHZvaWQgcmVzb2x2ZVRvRkJPKEdMZW51bSBmb3JtYXQsCisgICAgICAgICAgICAgICAgICAg
ICAgR0xpbnQgc2FtcGxlcywKKyAgICAgICAgICAgICAgICAgICAgICBHTGludCB3aWR0aCwKKyAg
ICAgICAgICAgICAgICAgICAgICBHTGludCBoZWlnaHQsCisgICAgICAgICAgICAgICAgICAgICAg
R0xSZXNvdXJjZXMgJnJlc291cmNlcykKKyAgICB7CisgICAgICAgIGNvbnN0ZXhwciBjaGFyIGtW
U1tdID0gUiIoI3ZlcnNpb24gMzAwIGVzCisgICAgICAgIGxheW91dChsb2NhdGlvbiA9IDApIGlu
IHZlYzQgcG9zaXRpb247CisgICAgICAgIHZvaWQgbWFpbigpIHsKKyAgICAgICAgICAgZ2xfUG9z
aXRpb24gPSBwb3NpdGlvbjsKKyAgICAgICAgfQorICAgICAgICApIjsKKworICAgICAgICBjb25z
dGV4cHIgY2hhciBrRlNbXSA9IFIiKCN2ZXJzaW9uIDMwMCBlcworICAgICAgICBwcmVjaXNpb24g
aGlnaHAgZmxvYXQ7CisgICAgICAgIG91dCB2ZWM0IGNvbG9yOworICAgICAgICB2b2lkIG1haW4o
KSB7CisgICAgICAgICAgIGNvbG9yID0gdmVjNCgwLjUsIDAuNiwgMC43LCAwLjgpOworICAgICAg
ICB9CisgICAgICAgICkiOworCisgICAgICAgIEFOR0xFX0dMX1BST0dSQU0ocHJvZ3JhbSwga1ZT
LCBrRlMpOworCisgICAgICAgIC8vIE1ha2Ugc2FtcGxlcyA9IDQgbXVsdGktc2FtcGxlIGZyYW1l
YnVmZmVyLgorICAgICAgICBHTEZyYW1lYnVmZmVyIGZiMDsKKyAgICAgICAgZ2xCaW5kRnJhbWVi
dWZmZXIoR0xfRlJBTUVCVUZGRVIsIGZiMCk7CisKKyAgICAgICAgR0xSZW5kZXJidWZmZXIgcmIw
OworICAgICAgICBnbEJpbmRSZW5kZXJidWZmZXIoR0xfUkVOREVSQlVGRkVSLCByYjApOworICAg
ICAgICBnbFJlbmRlcmJ1ZmZlclN0b3JhZ2VNdWx0aXNhbXBsZShHTF9SRU5ERVJCVUZGRVIsIHNh
bXBsZXMsIGZvcm1hdCwgd2lkdGgsIGhlaWdodCk7CisgICAgICAgIGdsRnJhbWVidWZmZXJSZW5k
ZXJidWZmZXIoR0xfRlJBTUVCVUZGRVIsIEdMX0NPTE9SX0FUVEFDSE1FTlQwLCBHTF9SRU5ERVJC
VUZGRVIsIHJiMCk7CisgICAgICAgIEVYUEVDVF9HTF9GUkFNRUJVRkZFUl9DT01QTEVURShHTF9G
UkFNRUJVRkZFUik7CisKKyAgICAgICAgLy8gTWFrZSBzYW1wbGVzID0gMCBtdWx0aS1zYW1wbGUg
ZnJhbWVidWZmZXIuCisgICAgICAgIGdsQmluZEZyYW1lYnVmZmVyKEdMX0ZSQU1FQlVGRkVSLCBy
ZXNvdXJjZXMuZmIpOworCisgICAgICAgIGdsQmluZFJlbmRlcmJ1ZmZlcihHTF9SRU5ERVJCVUZG
RVIsIHJlc291cmNlcy5yYik7CisgICAgICAgIGdsUmVuZGVyYnVmZmVyU3RvcmFnZU11bHRpc2Ft
cGxlKEdMX1JFTkRFUkJVRkZFUiwgMCwgZm9ybWF0LCB3aWR0aCwgaGVpZ2h0KTsKKyAgICAgICAg
Z2xGcmFtZWJ1ZmZlclJlbmRlcmJ1ZmZlcihHTF9GUkFNRUJVRkZFUiwgR0xfQ09MT1JfQVRUQUNI
TUVOVDAsIEdMX1JFTkRFUkJVRkZFUiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICByZXNvdXJjZXMucmIpOworICAgICAgICBFWFBFQ1RfR0xfRlJBTUVCVUZGRVJfQ09NUExFVEUo
R0xfRlJBTUVCVUZGRVIpOworCisgICAgICAgIC8vIERyYXcgcXVhZCB0byBmYjAuCisgICAgICAg
IGdsQmluZEZyYW1lYnVmZmVyKEdMX0ZSQU1FQlVGRkVSLCBmYjApOworICAgICAgICBnbFZpZXdw
b3J0KDAsIDAsIHdpZHRoLCBoZWlnaHQpOworICAgICAgICBnbFVzZVByb2dyYW0ocHJvZ3JhbSk7
CisgICAgICAgIEdMQnVmZmVyIGJ1ZjsKKyAgICAgICAgZ2xCaW5kQnVmZmVyKEdMX0FSUkFZX0JV
RkZFUiwgYnVmKTsKKworICAgICAgICBjb25zdGV4cHIgZmxvYXQgdmVydGljZXNbXSA9IHsKKyAg
ICAgICAgICAgIC0xLjBmLCAtMS4wZiwgMS4wZiwgLTEuMGYsIC0xLjBmLCAxLjBmLCAtMS4wZiwg
MS4wZiwgMS4wZiwgLTEuMGYsIDEuMGYsIDEuMGYsCisgICAgICAgIH07CisgICAgICAgIGdsQnVm
ZmVyRGF0YShHTF9BUlJBWV9CVUZGRVIsIHNpemVvZih2ZXJ0aWNlcyksIHZlcnRpY2VzLCBHTF9T
VEFUSUNfRFJBVyk7CisgICAgICAgIGdsRW5hYmxlVmVydGV4QXR0cmliQXJyYXkoMCk7CisgICAg
ICAgIGdsVmVydGV4QXR0cmliUG9pbnRlcigwLCAyLCBHTF9GTE9BVCwgR0xfRkFMU0UsIDAsIG51
bGxwdHIpOworICAgICAgICBnbERyYXdBcnJheXMoR0xfVFJJQU5HTEVTLCAwLCA2KTsKKworICAg
ICAgICAvLyBCbGl0IGZiMCB0byBmYjEuCisgICAgICAgIGdsQmluZEZyYW1lYnVmZmVyKEdMX1JF
QURfRlJBTUVCVUZGRVIsIGZiMCk7CisgICAgICAgIGdsQmluZEZyYW1lYnVmZmVyKEdMX0RSQVdf
RlJBTUVCVUZGRVIsIHJlc291cmNlcy5mYik7CisgICAgICAgIGdsQmxpdEZyYW1lYnVmZmVyKDAs
IDAsIHdpZHRoLCBoZWlnaHQsIDAsIDAsIHdpZHRoLCBoZWlnaHQsIEdMX0NPTE9SX0JVRkZFUl9C
SVQsCisgICAgICAgICAgICAgICAgICAgICAgICAgIEdMX05FQVJFU1QpOworICAgICAgICBBU1NF
UlRfR0xfTk9fRVJST1IoKTsKKworICAgICAgICAvLyBQcmVwIGZvciByZWFkIHBpeGVscy4KKyAg
ICAgICAgZ2xCaW5kRnJhbWVidWZmZXIoR0xfUkVBRF9GUkFNRUJVRkZFUiwgcmVzb3VyY2VzLmZi
KTsKKyAgICB9CisKKyAgICB2b2lkIHRlc3RSZXNvbHZlVG9VTm9ybUZCTyhHTGVudW0gZm9ybWF0
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IEdMQ29sb3IgJmV4cGVjdGVk
X2NvbG9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMaW50IHNhbXBsZXMsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xpbnQgd2lkdGgsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgR0xpbnQgaGVpZ2h0KQorICAgIHsKKyAgICAgICAgR0xSZXNvdXJj
ZXMgcmVzb3VyY2VzOworICAgICAgICByZXNvbHZlVG9GQk8oZm9ybWF0LCBzYW1wbGVzLCB3aWR0
aCwgaGVpZ2h0LCByZXNvdXJjZXMpOworCisgICAgICAgIC8vIENoZWNrIHRoZSByZXN1bHRzCisg
ICAgICAgIGZvciAoR0xpbnQgeSA9IDA7IHkgPCBrSGVpZ2h0OyArK3kpCisgICAgICAgIHsKKyAg
ICAgICAgICAgIGZvciAoR0xpbnQgeCA9IDA7IHggPCBrV2lkdGg7ICsreCkKKyAgICAgICAgICAg
IHsKKyAgICAgICAgICAgICAgICBFWFBFQ1RfUElYRUxfQ09MT1JfTkVBUih4LCB5LCBleHBlY3Rl
ZF9jb2xvciwgMik7CisgICAgICAgICAgICB9CisgICAgICAgIH0KKyAgICAgICAgQVNTRVJUX0dM
X05PX0VSUk9SKCk7CisgICAgfQorCisgICAgdm9pZCB0ZXN0UmVzb2x2ZVRvSGFsZkZCTyhHTGVu
dW0gZm9ybWF0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgR0xDb2xvcjMy
RiAmZXhwZWN0ZWRfY29sb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTGludCBz
YW1wbGVzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xpbnQgd2lkdGgsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBHTGludCBoZWlnaHQpCisgICAgeworICAgICAgICBp
ZiAoIUlzR0xFeHRlbnNpb25FbmFibGVkKCJHTF9FWFRfY29sb3JfYnVmZmVyX2hhbGZfZmxvYXQi
KSkKKyAgICAgICAgeworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CisKKyAgICAgICAg
R0xSZXNvdXJjZXMgcmVzb3VyY2VzOworICAgICAgICByZXNvbHZlVG9GQk8oZm9ybWF0LCBzYW1w
bGVzLCB3aWR0aCwgaGVpZ2h0LCByZXNvdXJjZXMpOworCisgICAgICAgIC8vIENoZWNrIHRoZSBy
ZXN1bHRzCisgICAgICAgIGZvciAoR0xpbnQgeSA9IDA7IHkgPCBrSGVpZ2h0OyArK3kpCisgICAg
ICAgIHsKKyAgICAgICAgICAgIGZvciAoR0xpbnQgeCA9IDA7IHggPCBrV2lkdGg7ICsreCkKKyAg
ICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBFWFBFQ1RfUElYRUxfQ09MT1IzMkZfTkVBUih4
LCB5LCBleHBlY3RlZF9jb2xvciwgMi4wZiAvIDI1NS4wZik7CisgICAgICAgICAgICB9CisgICAg
ICAgIH0KKyAgICAgICAgQVNTRVJUX0dMX05PX0VSUk9SKCk7CisgICAgfQorCisgICAgdm9pZCB0
ZXN0UmVzb2x2ZVRvRmxvYXRGQk8oR0xlbnVtIGZvcm1hdCwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBjb25zdCBHTENvbG9yMzJGICZleHBlY3RlZF9jb2xvciwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBHTGludCBzYW1wbGVzLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIEdMaW50IHdpZHRoLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdM
aW50IGhlaWdodCkKKyAgICB7CisgICAgICAgIGlmICghSXNHTEV4dGVuc2lvbkVuYWJsZWQoIkdM
X0NIUk9NSVVNX2NvbG9yX2J1ZmZlcl9mbG9hdF9yZ2JhIikpCisgICAgICAgIHsKKyAgICAgICAg
ICAgIHJldHVybjsKKyAgICAgICAgfQorCisgICAgICAgIEdMUmVzb3VyY2VzIHJlc291cmNlczsK
KyAgICAgICAgcmVzb2x2ZVRvRkJPKGZvcm1hdCwgc2FtcGxlcywgd2lkdGgsIGhlaWdodCwgcmVz
b3VyY2VzKTsKKworICAgICAgICAvLyBDaGVjayB0aGUgcmVzdWx0cworICAgICAgICBmb3IgKEdM
aW50IHkgPSAwOyB5IDwga0hlaWdodDsgKyt5KQorICAgICAgICB7CisgICAgICAgICAgICBmb3Ig
KEdMaW50IHggPSAwOyB4IDwga1dpZHRoOyArK3gpCisgICAgICAgICAgICB7CisgICAgICAgICAg
ICAgICAgRVhQRUNUX1BJWEVMX0NPTE9SMzJGX05FQVIoeCwgeSwgZXhwZWN0ZWRfY29sb3IsIDIu
MGYgLyAyNTUuMGYpOworICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgICAgIEFTU0VSVF9H
TF9OT19FUlJPUigpOworICAgIH0KKworICAgIHZvaWQgdGVzdFJlc29sdmVUb1JHQkZsb2F0RkJP
KEdMZW51bSBmb3JtYXQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qg
R0xDb2xvcjMyRiAmZXhwZWN0ZWRfY29sb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgR0xpbnQgc2FtcGxlcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBH
TGludCB3aWR0aCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTGludCBoZWln
aHQpCisgICAgeworICAgICAgICBpZiAoIUlzR0xFeHRlbnNpb25FbmFibGVkKCJHTF9DSFJPTUlV
TV9jb2xvcl9idWZmZXJfZmxvYXRfcmdiIikpCisgICAgICAgIHsKKyAgICAgICAgICAgIHJldHVy
bjsKKyAgICAgICAgfQorCisgICAgICAgIEdMUmVzb3VyY2VzIHJlc291cmNlczsKKyAgICAgICAg
cmVzb2x2ZVRvRkJPKGZvcm1hdCwgc2FtcGxlcywgd2lkdGgsIGhlaWdodCwgcmVzb3VyY2VzKTsK
KworICAgICAgICAvLyBDaGVjayB0aGUgcmVzdWx0cworICAgICAgICBmb3IgKEdMaW50IHkgPSAw
OyB5IDwga0hlaWdodDsgKyt5KQorICAgICAgICB7CisgICAgICAgICAgICBmb3IgKEdMaW50IHgg
PSAwOyB4IDwga1dpZHRoOyArK3gpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgRVhQ
RUNUX1BJWEVMX0NPTE9SMzJGX05FQVIoeCwgeSwgZXhwZWN0ZWRfY29sb3IsIDIuMGYgLyAyNTUu
MGYpOworICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgICAgIEFTU0VSVF9HTF9OT19FUlJP
UigpOworICAgIH0KKworICAgIHZvaWQgcGVlbERlcHRoKEdMaW50IGNvbG9yTG9jKQorICAgIHsK
KyAgICAgICAgLy8gRHJhdyBmdWxsIHF1YWRzIGZyb20gZnJvbnQgdG8gYmFjayBhbmQgaW5jcmVh
c2luZyBkZXB0aHMKKyAgICAgICAgLy8gd2l0aCBkZXB0aCB0ZXN0ID0gbGVzcy4KKyAgICAgICAg
Z2xEZXB0aE1hc2soR0xfRkFMU0UpOworICAgICAgICBjb25zdGV4cHIgaW50IHN0ZXBzID0gNjQ7
CisgICAgICAgIGZvciAoaW50IGkgPSAwOyBpIDwgc3RlcHM7ICsraSkKKyAgICAgICAgeworICAg
ICAgICAgICAgZmxvYXQgbCA9IGZsb2F0KGkpIC8gZmxvYXQoc3RlcHMpOworICAgICAgICAgICAg
ZmxvYXQgYyA9IGw7CisgICAgICAgICAgICBmbG9hdCB6ID0gYyAqIDIuMGYgLSAxLjBmOworICAg
ICAgICAgICAgZ2xWZXJ0ZXhBdHRyaWI0ZigxLCAwLCAwLCB6LCAwKTsKKyAgICAgICAgICAgIGds
VW5pZm9ybTRmKGNvbG9yTG9jLCBjLCBjLCBjLCBjKTsKKyAgICAgICAgICAgIGdsRHJhd0FycmF5
cyhHTF9UUklBTkdMRVMsIDAsIDYpOworICAgICAgICB9CisgICAgICAgIGdsRGVwdGhNYXNrKEdM
X1RSVUUpOworICAgIH0KKworICAgIHZvaWQgdGVzdFJlc29sdmVEZXB0aFRvRkJPKEdMZW51bSBm
b3JtYXQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xlbnVtIGF0dGFjaG1lbnQs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xpbnQgc2FtcGxlcywKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBHTGludCB3aWR0aCwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBHTGludCBoZWlnaHQpCisgICAgeworICAgICAgICBjb25zdGV4cHIgY2hhciBr
VlNbXSA9IFIiKCN2ZXJzaW9uIDMwMCBlcworICAgICAgICBsYXlvdXQobG9jYXRpb24gPSAwKSBp
biB2ZWM0IHBvc2l0aW9uOworICAgICAgICB2b2lkIG1haW4oKSB7CisgICAgICAgICAgIGdsX1Bv
c2l0aW9uID0gcG9zaXRpb247CisgICAgICAgIH0KKyAgICAgICAgKSI7CisKKyAgICAgICAgY29u
c3RleHByIGNoYXIga0ZTW10gPSBSIigjdmVyc2lvbiAzMDAgZXMKKyAgICAgICAgcHJlY2lzaW9u
IGhpZ2hwIGZsb2F0OworICAgICAgICBvdXQgdmVjNCBjb2xvcjsKKyAgICAgICAgdm9pZCBtYWlu
KCkgeworICAgICAgICAgICBjb2xvciA9IHZlYzQoMC41LCAwLjYsIDAuNywgMC44KTsKKyAgICAg
ICAgfQorICAgICAgICApIjsKKworICAgICAgICBjb25zdGV4cHIgY2hhciBrRGVwdGhWU1tdID0g
UiIoI3ZlcnNpb24gMzAwIGVzCisgICAgICAgIGxheW91dChsb2NhdGlvbiA9IDApIGluIHZlYzQg
cG9zaXRpb247CisgICAgICAgIGxheW91dChsb2NhdGlvbiA9IDEpIGluIHZlYzQgb2Zmc2V0Owor
ICAgICAgICB2b2lkIG1haW4oKSB7CisgICAgICAgICAgIGdsX1Bvc2l0aW9uID0gcG9zaXRpb24g
KyBvZmZzZXQ7CisgICAgICAgIH0KKyAgICAgICAgKSI7CisKKyAgICAgICAgY29uc3RleHByIGNo
YXIga0RlcHRoRlNbXSA9IFIiKCN2ZXJzaW9uIDMwMCBlcworICAgICAgICBwcmVjaXNpb24gaGln
aHAgZmxvYXQ7CisgICAgICAgIHVuaWZvcm0gdmVjNCBjb2xvcjsKKyAgICAgICAgb3V0IHZlYzQg
b3V0Q29sb3I7CisgICAgICAgIHZvaWQgbWFpbigpIHsKKyAgICAgICAgICAgb3V0Q29sb3IgPSBj
b2xvcjsKKyAgICAgICAgfQorICAgICAgICApIjsKKworICAgICAgICBBTkdMRV9HTF9QUk9HUkFN
KHByb2dyYW0sIGtWUywga0ZTKTsKKyAgICAgICAgQU5HTEVfR0xfUFJPR1JBTShkZXB0aFByb2dy
YW0sIGtEZXB0aFZTLCBrRGVwdGhGUyk7CisKKyAgICAgICAgLy8gTWFrZSBzYW1wbGVzID0gNCBt
dWx0aS1zYW1wbGUgZnJhbWVidWZmZXIuCisgICAgICAgIEdMRnJhbWVidWZmZXIgZmIwOworICAg
ICAgICBnbEJpbmRGcmFtZWJ1ZmZlcihHTF9GUkFNRUJVRkZFUiwgZmIwKTsKKworICAgICAgICBH
TFJlbmRlcmJ1ZmZlciByYjA7CisgICAgICAgIGdsQmluZFJlbmRlcmJ1ZmZlcihHTF9SRU5ERVJC
VUZGRVIsIHJiMCk7CisgICAgICAgIGdsUmVuZGVyYnVmZmVyU3RvcmFnZU11bHRpc2FtcGxlKEdM
X1JFTkRFUkJVRkZFUiwgc2FtcGxlcywgR0xfUkdCQTgsIHdpZHRoLCBoZWlnaHQpOworICAgICAg
ICBnbEZyYW1lYnVmZmVyUmVuZGVyYnVmZmVyKEdMX0ZSQU1FQlVGRkVSLCBHTF9DT0xPUl9BVFRB
Q0hNRU5UMCwgR0xfUkVOREVSQlVGRkVSLCByYjApOworCisgICAgICAgIEdMUmVuZGVyYnVmZmVy
IGRiMDsKKyAgICAgICAgZ2xCaW5kUmVuZGVyYnVmZmVyKEdMX1JFTkRFUkJVRkZFUiwgZGIwKTsK
KyAgICAgICAgZ2xSZW5kZXJidWZmZXJTdG9yYWdlTXVsdGlzYW1wbGUoR0xfUkVOREVSQlVGRkVS
LCBzYW1wbGVzLCBmb3JtYXQsIHdpZHRoLCBoZWlnaHQpOworICAgICAgICBnbEZyYW1lYnVmZmVy
UmVuZGVyYnVmZmVyKEdMX0ZSQU1FQlVGRkVSLCBhdHRhY2htZW50LCBHTF9SRU5ERVJCVUZGRVIs
IGRiMCk7CisKKyAgICAgICAgRVhQRUNUX0dMX0ZSQU1FQlVGRkVSX0NPTVBMRVRFKEdMX0ZSQU1F
QlVGRkVSKTsKKworICAgICAgICAvLyBNYWtlIHNhbXBsZXMgPSAwIG11bHRpLXNhbXBsZSBmcmFt
ZWJ1ZmZlci4KKyAgICAgICAgR0xGcmFtZWJ1ZmZlciBmYjE7CisgICAgICAgIGdsQmluZEZyYW1l
YnVmZmVyKEdMX0ZSQU1FQlVGRkVSLCBmYjEpOworCisgICAgICAgIEdMUmVuZGVyYnVmZmVyIHJi
MTsKKyAgICAgICAgZ2xCaW5kUmVuZGVyYnVmZmVyKEdMX1JFTkRFUkJVRkZFUiwgcmIxKTsKKyAg
ICAgICAgZ2xSZW5kZXJidWZmZXJTdG9yYWdlKEdMX1JFTkRFUkJVRkZFUiwgR0xfUkdCQTgsIHdp
ZHRoLCBoZWlnaHQpOworICAgICAgICBnbEZyYW1lYnVmZmVyUmVuZGVyYnVmZmVyKEdMX0ZSQU1F
QlVGRkVSLCBHTF9DT0xPUl9BVFRBQ0hNRU5UMCwgR0xfUkVOREVSQlVGRkVSLCByYjEpOworICAg
ICAgICBFWFBFQ1RfR0xfRlJBTUVCVUZGRVJfQ09NUExFVEUoR0xfRlJBTUVCVUZGRVIpOworCisg
ICAgICAgIEdMUmVuZGVyYnVmZmVyIGRiMTsKKyAgICAgICAgZ2xCaW5kUmVuZGVyYnVmZmVyKEdM
X1JFTkRFUkJVRkZFUiwgZGIxKTsKKyAgICAgICAgZ2xSZW5kZXJidWZmZXJTdG9yYWdlKEdMX1JF
TkRFUkJVRkZFUiwgZm9ybWF0LCB3aWR0aCwgaGVpZ2h0KTsKKyAgICAgICAgZ2xGcmFtZWJ1ZmZl
clJlbmRlcmJ1ZmZlcihHTF9GUkFNRUJVRkZFUiwgYXR0YWNobWVudCwgR0xfUkVOREVSQlVGRkVS
LCBkYjEpOworCisgICAgICAgIEVYUEVDVF9HTF9GUkFNRUJVRkZFUl9DT01QTEVURShHTF9GUkFN
RUJVRkZFUik7CisKKyAgICAgICAgLy8gRHJhdyBxdWFkIHRvIGZiMC4KKyAgICAgICAgZ2xCaW5k
RnJhbWVidWZmZXIoR0xfRlJBTUVCVUZGRVIsIGZiMCk7CisgICAgICAgIGdsVmlld3BvcnQoMCwg
MCwgd2lkdGgsIGhlaWdodCk7CisgICAgICAgIGdsQ2xlYXJDb2xvcigxLCAxLCAxLCAxKTsKKyAg
ICAgICAgZ2xVc2VQcm9ncmFtKHByb2dyYW0pOworCisgICAgICAgIEdMVmVydGV4QXJyYXkgdmEw
OworICAgICAgICBnbEJpbmRWZXJ0ZXhBcnJheSh2YTApOworCisgICAgICAgIEdMQnVmZmVyIGJ1
ZjA7CisgICAgICAgIGdsQmluZEJ1ZmZlcihHTF9BUlJBWV9CVUZGRVIsIGJ1ZjApOworCisgICAg
ICAgIC8vIGNsYW5nLWZvcm1hdCBvZmYKKyAgICAgICAgY29uc3RleHByIGZsb2F0IHZlcnRpY2Vz
W10gPSB7CisgICAgICAgICAgICAtMS4wZiwgLTEuMGYsIC0xLjAsCisgICAgICAgICAgICAgMS4w
ZiwgLTEuMGYsICAwLjAsCisgICAgICAgICAgICAtMS4wZiwgIDEuMGYsICAwLjAsCisgICAgICAg
ICAgICAtMS4wZiwgIDEuMGYsICAwLjAsCisgICAgICAgICAgICAgMS4wZiwgLTEuMGYsICAwLjAs
CisgICAgICAgICAgICAgMS4wZiwgIDEuMGYsICAxLjAsCisgICAgICAgIH07CisgICAgICAgIC8v
IGNsYW5nLWZvcm1hdCBvbgorCisgICAgICAgIGdsQnVmZmVyRGF0YShHTF9BUlJBWV9CVUZGRVIs
IHNpemVvZih2ZXJ0aWNlcyksIHZlcnRpY2VzLCBHTF9TVEFUSUNfRFJBVyk7CisgICAgICAgIGds
RW5hYmxlVmVydGV4QXR0cmliQXJyYXkoMCk7CisgICAgICAgIGdsVmVydGV4QXR0cmliUG9pbnRl
cigwLCAzLCBHTF9GTE9BVCwgR0xfRkFMU0UsIDAsIG51bGxwdHIpOworICAgICAgICBnbEVuYWJs
ZShHTF9ERVBUSF9URVNUKTsKKyAgICAgICAgZ2xEZXB0aEZ1bmMoR0xfQUxXQVlTKTsKKyAgICAg
ICAgZ2xEcmF3QXJyYXlzKEdMX1RSSUFOR0xFUywgMCwgNik7CisKKyAgICAgICAgLy8gQmxpdCBm
YjAgdG8gZmIxLgorICAgICAgICBnbEJpbmRGcmFtZWJ1ZmZlcihHTF9SRUFEX0ZSQU1FQlVGRkVS
LCBmYjApOworICAgICAgICBnbEJpbmRGcmFtZWJ1ZmZlcihHTF9EUkFXX0ZSQU1FQlVGRkVSLCBm
YjEpOworICAgICAgICBnbEJsaXRGcmFtZWJ1ZmZlcigwLCAwLCB3aWR0aCwgaGVpZ2h0LCAwLCAw
LCB3aWR0aCwgaGVpZ2h0LCBHTF9ERVBUSF9CVUZGRVJfQklULAorICAgICAgICAgICAgICAgICAg
ICAgICAgICBHTF9ORUFSRVNUKTsKKyAgICAgICAgQVNTRVJUX0dMX05PX0VSUk9SKCk7CisKKyAg
ICAgICAgR0xWZXJ0ZXhBcnJheSB2YTE7CisgICAgICAgIGdsQmluZFZlcnRleEFycmF5KHZhMSk7
CisKKyAgICAgICAgLy8gY2xhbmctZm9ybWF0IG9mZgorICAgICAgICBjb25zdGV4cHIgZmxvYXQg
ZGVwdGhWZXJ0aWNlc1tdID0geworICAgICAgICAgICAgLTEuMGYsIC0xLjBmLAorICAgICAgICAg
ICAgIDEuMGYsIC0xLjBmLAorICAgICAgICAgICAgLTEuMGYsICAxLjBmLAorICAgICAgICAgICAg
LTEuMGYsICAxLjBmLAorICAgICAgICAgICAgIDEuMGYsIC0xLjBmLAorICAgICAgICAgICAgIDEu
MGYsICAxLjBmLAorICAgICAgICB9OworICAgICAgICAvLyBjbGFuZy1mb3JtYXQgb24KKworICAg
ICAgICBHTEJ1ZmZlciBidWYxOworICAgICAgICBnbEJpbmRCdWZmZXIoR0xfQVJSQVlfQlVGRkVS
LCBidWYxKTsKKyAgICAgICAgZ2xCdWZmZXJEYXRhKEdMX0FSUkFZX0JVRkZFUiwgc2l6ZW9mKGRl
cHRoVmVydGljZXMpLCBkZXB0aFZlcnRpY2VzLCBHTF9TVEFUSUNfRFJBVyk7CisgICAgICAgIGds
RW5hYmxlVmVydGV4QXR0cmliQXJyYXkoMCk7CisgICAgICAgIGdsVmVydGV4QXR0cmliUG9pbnRl
cigwLCAyLCBHTF9GTE9BVCwgR0xfRkFMU0UsIDAsIG51bGxwdHIpOworCisgICAgICAgIGdsVXNl
UHJvZ3JhbShkZXB0aFByb2dyYW0pOworICAgICAgICBHTGludCBjb2xvckxvYyA9IGdsR2V0VW5p
Zm9ybUxvY2F0aW9uKGRlcHRoUHJvZ3JhbSwgImNvbG9yIik7CisKKyAgICAgICAgLy8gRXh0cmFj
dCB0aGUgZGVwdGggcmVzdWx0cy4KKyAgICAgICAgZ2xCaW5kRnJhbWVidWZmZXIoR0xfRlJBTUVC
VUZGRVIsIGZiMSk7CisgICAgICAgIGdsQ2xlYXIoR0xfQ09MT1JfQlVGRkVSX0JJVCk7CisgICAg
ICAgIGdsRGVwdGhGdW5jKEdMX0xFU1MpOworICAgICAgICBwZWVsRGVwdGgoY29sb3JMb2MpOwor
ICAgICAgICBzdGQ6OnZlY3RvcjxHTENvbG9yPiBhY3R1YWwod2lkdGggKiBoZWlnaHQpOworICAg
ICAgICBnbFJlYWRQaXhlbHMoMCwgMCwgd2lkdGgsIGhlaWdodCwgR0xfUkdCQSwgR0xfVU5TSUdO
RURfQllURSwgYWN0dWFsLmRhdGEoKSk7CisKKyAgICAgICAgLy8gUmVuZGVyIHdoYXQgc2hvdWxk
IGJlIGEgc2ltaWxhciByZXN1bHQgdG8gdGhlIG5vbi1tdWx0aS1zYW1wbGVkIGZiCisgICAgICAg
IGdsQmluZFZlcnRleEFycmF5KHZhMCk7CisgICAgICAgIGdsRGVwdGhGdW5jKEdMX0FMV0FZUyk7
CisgICAgICAgIGdsVXNlUHJvZ3JhbShwcm9ncmFtKTsKKyAgICAgICAgZ2xEcmF3QXJyYXlzKEdM
X1RSSUFOR0xFUywgMCwgNik7CisKKyAgICAgICAgLy8gRXh0cmFjdCB0aGUgZXhwZWN0ZWQgZGVw
dGggcmVzdWx0cy4KKyAgICAgICAgZ2xCaW5kVmVydGV4QXJyYXkodmExKTsKKyAgICAgICAgZ2xV
c2VQcm9ncmFtKGRlcHRoUHJvZ3JhbSk7CisgICAgICAgIGdsQ2xlYXIoR0xfQ09MT1JfQlVGRkVS
X0JJVCk7CisgICAgICAgIGdsRGVwdGhGdW5jKEdMX0xFU1MpOworICAgICAgICBwZWVsRGVwdGgo
Y29sb3JMb2MpOworICAgICAgICBzdGQ6OnZlY3RvcjxHTENvbG9yPiBleHBlY3RlZCh3aWR0aCAq
IGhlaWdodCk7CisgICAgICAgIGdsUmVhZFBpeGVscygwLCAwLCB3aWR0aCwgaGVpZ2h0LCBHTF9S
R0JBLCBHTF9VTlNJR05FRF9CWVRFLCBleHBlY3RlZC5kYXRhKCkpOworCisgICAgICAgIGZvciAo
c2l6ZV90IGkgPSAwOyBpIDwgZXhwZWN0ZWQuc2l6ZSgpOyArK2kpCisgICAgICAgIHsKKyAgICAg
ICAgICAgIEVYUEVDVF9ORUFSKGV4cGVjdGVkW2ldLlIsIGFjdHVhbFtpXS5SLCA4KQorICAgICAg
ICAgICAgICAgIDw8ICJhdCAiIDw8IChpICUgd2lkdGgpIDw8ICIsIiA8PCAoaSAvIHdpZHRoKTsK
KyAgICAgICAgfQorCisgICAgICAgIC8vIFZlcmlmeSB3ZSByZWFkIHRoZSBkZXB0aCBidWZmZXIu
CisgICAgICAgIGNvbnN0IEdMaW50IG1pbkRpbWVuc2lvbiA9IHN0ZDo6bWluKHdpZHRoLCBoZWln
aHQpOworICAgICAgICBmb3IgKEdMaW50IGkgPSAxOyBpIDwgbWluRGltZW5zaW9uOyArK2kpCisg
ICAgICAgIHsKKyAgICAgICAgICAgIGNvbnN0IEdMQ29sb3IgJmMxID0gZXhwZWN0ZWRbaSAtIDFd
OworICAgICAgICAgICAgY29uc3QgR0xDb2xvciAmYzIgPSBleHBlY3RlZFtpICogd2lkdGggKyBp
XTsKKyAgICAgICAgICAgIEVYUEVDVF9MVChjMS5SLCBjMi5SKTsKKyAgICAgICAgfQorICAgICAg
ICBBU1NFUlRfR0xfTk9fRVJST1IoKTsKKyAgICB9Cit9OworCisvLyBUaGVzZSBjb2xvcnMgbWF0
Y2ggdGhlIHNoYWRlciBpbiByZXNvbHZlVG9GQk8gd2hpY2ggcmV0dXJucyAoMC41LCAwLjYsIDAu
NywgMC44KS4KK2NvbnN0IEdMQ29sb3IgTXVsdGlzYW1wbGVSZXNvbHZlVGVzdDo6a0VYUEVDVEVE
X1I4KDEyOCwgMCwgMCwgMjU1KTsKK2NvbnN0IEdMQ29sb3IgTXVsdGlzYW1wbGVSZXNvbHZlVGVz
dDo6a0VYUEVDVEVEX1JHOCgxMjgsIDE1MywgMCwgMjU1KTsKK2NvbnN0IEdMQ29sb3IgTXVsdGlz
YW1wbGVSZXNvbHZlVGVzdDo6a0VYUEVDVEVEX1JHQjgoMTI4LCAxNTMsIDE3OCwgMjU1KTsKK2Nv
bnN0IEdMQ29sb3IgTXVsdGlzYW1wbGVSZXNvbHZlVGVzdDo6a0VYUEVDVEVEX1JHQkE4KDEyOCwg
MTUzLCAxNzgsIDIwNCk7Citjb25zdCBHTENvbG9yMzJGIE11bHRpc2FtcGxlUmVzb2x2ZVRlc3Q6
OmtFWFBFQ1RFRF9SRigwLjVmLCAwLjBmLCAwLjBmLCAxLjBmKTsKK2NvbnN0IEdMQ29sb3IzMkYg
TXVsdGlzYW1wbGVSZXNvbHZlVGVzdDo6a0VYUEVDVEVEX1JHRigwLjVmLCAwLjZmLCAwLjBmLCAx
LjBmKTsKK2NvbnN0IEdMQ29sb3IzMkYgTXVsdGlzYW1wbGVSZXNvbHZlVGVzdDo6a0VYUEVDVEVE
X1JHQkYoMC41ZiwgMC42ZiwgMC43ZiwgMS4wZik7Citjb25zdCBHTENvbG9yMzJGIE11bHRpc2Ft
cGxlUmVzb2x2ZVRlc3Q6OmtFWFBFQ1RFRF9SR0JBRigwLjVmLCAwLjZmLCAwLjdmLCAwLjhmKTsK
KworLy8gVGVzdCB3ZSBjYW4gcmVuZGVyIHRvIGFuZCByZXNvbHZlIGFuIFJHQkE4IHJlbmRlcmJ1
ZmZlcgorVEVTVF9QKE11bHRpc2FtcGxlUmVzb2x2ZVRlc3QsIFJlc29sdmVSR0JBOFRvRkJPNFNh
bXBsZXMpCit7CisgICAgdGVzdFJlc29sdmVUb1VOb3JtRkJPKEdMX1JHQkE4LCBrRVhQRUNURURf
UkdCQTgsIDQsIGtXaWR0aCwga0hlaWdodCk7Cit9CisKKy8vIFRlc3Qgd2UgY2FuIHJlbmRlciB0
byBhbmQgcmVzb2x2ZSBhbiBSR0I4IHJlbmRlcmJ1ZmZlcgorVEVTVF9QKE11bHRpc2FtcGxlUmVz
b2x2ZVRlc3QsIFJlc29sdmVSR0I4VG9GQk80U2FtcGxlcykKK3sKKyAgICB0ZXN0UmVzb2x2ZVRv
VU5vcm1GQk8oR0xfUkdCOCwga0VYUEVDVEVEX1JHQjgsIDQsIGtXaWR0aCwga0hlaWdodCk7Cit9
CisKKy8vIFRlc3Qgd2UgY2FuIHJlbmRlciB0byBhbmQgcmVzb2x2ZSBhbiBSRzggcmVuZGVyYnVm
ZmVyCitURVNUX1AoTXVsdGlzYW1wbGVSZXNvbHZlVGVzdCwgUmVzb2x2ZVJHOFRvRkJPNFNhbXBs
ZXMpCit7CisgICAgdGVzdFJlc29sdmVUb1VOb3JtRkJPKEdMX1JHOCwga0VYUEVDVEVEX1JHOCwg
NCwga1dpZHRoLCBrSGVpZ2h0KTsKK30KKworLy8gVGVzdCB3ZSBjYW4gcmVuZGVyIHRvIGFuZCBy
ZXNvbHZlIGFuIFI4IHJlbmRlcmJ1ZmZlcgorVEVTVF9QKE11bHRpc2FtcGxlUmVzb2x2ZVRlc3Qs
IFJlc29sdmVSOFRvRkJPNFNhbXBsZXMpCit7CisgICAgdGVzdFJlc29sdmVUb1VOb3JtRkJPKEdM
X1I4LCBrRVhQRUNURURfUjgsIDQsIGtXaWR0aCwga0hlaWdodCk7Cit9CisKKy8vIFRlc3Qgd2Ug
Y2FuIHJlbmRlciB0byBhbmQgcmVzb2x2ZSBhbiBSMTZGIHJlbmRlcmJ1ZmZlcgorVEVTVF9QKE11
bHRpc2FtcGxlUmVzb2x2ZVRlc3QsIFJlc29sdmVSMTZGVG9GQk80U2FtcGxlcykKK3sKKyAgICB0
ZXN0UmVzb2x2ZVRvSGFsZkZCTyhHTF9SMTZGLCBrRVhQRUNURURfUkYsIDQsIGtXaWR0aCwga0hl
aWdodCk7Cit9CisKKy8vIFRlc3Qgd2UgY2FuIHJlbmRlciB0byBhbmQgcmVzb2x2ZSBhbiBSRzE2
RiByZW5kZXJidWZmZXIKK1RFU1RfUChNdWx0aXNhbXBsZVJlc29sdmVUZXN0LCBSZXNvbHZlUkcx
NkZUb0ZCTzRTYW1wbGVzKQoreworICAgIHRlc3RSZXNvbHZlVG9IYWxmRkJPKEdMX1JHMTZGLCBr
RVhQRUNURURfUkdGLCA0LCBrV2lkdGgsIGtIZWlnaHQpOworfQorCisvLyBUZXN0IHdlIGNhbiBy
ZW5kZXIgdG8gYW5kIHJlc29sdmUgYW4gUkdCMTZGIHJlbmRlcmJ1ZmZlcgorVEVTVF9QKE11bHRp
c2FtcGxlUmVzb2x2ZVRlc3QsIFJlc29sdmVSR0IxNkZUb0ZCTzRTYW1wbGVzKQoreworICAgIHRl
c3RSZXNvbHZlVG9IYWxmRkJPKEdMX1JHQjE2Riwga0VYUEVDVEVEX1JHQkYsIDQsIGtXaWR0aCwg
a0hlaWdodCk7Cit9CisKKy8vIFRlc3Qgd2UgY2FuIHJlbmRlciB0byBhbmQgcmVzb2x2ZSBhbiBS
R0JBMTZGIHJlbmRlcmJ1ZmZlcgorVEVTVF9QKE11bHRpc2FtcGxlUmVzb2x2ZVRlc3QsIFJlc29s
dmVSR0JBMTZGVG9GQk80U2FtcGxlcykKK3sKKyAgICB0ZXN0UmVzb2x2ZVRvSGFsZkZCTyhHTF9S
R0JBMTZGLCBrRVhQRUNURURfUkdCQUYsIDQsIGtXaWR0aCwga0hlaWdodCk7Cit9CisKKy8vIFRl
c3Qgd2UgY2FuIHJlbmRlciB0byBhbmQgcmVzb2x2ZSBhbiBSMzJGIHJlbmRlcmJ1ZmZlcgorVEVT
VF9QKE11bHRpc2FtcGxlUmVzb2x2ZVRlc3QsIFJlc29sdmVSMzJGVG9GQk80U2FtcGxlcykKK3sK
KyAgICB0ZXN0UmVzb2x2ZVRvRmxvYXRGQk8oR0xfUjMyRiwga0VYUEVDVEVEX1JGLCA0LCBrV2lk
dGgsIGtIZWlnaHQpOworfQorCisvLyBUZXN0IHdlIGNhbiByZW5kZXIgdG8gYW5kIHJlc29sdmUg
YW4gUkczMkYgcmVuZGVyYnVmZmVyCitURVNUX1AoTXVsdGlzYW1wbGVSZXNvbHZlVGVzdCwgUmVz
b2x2ZVJHMzJGVG9GQk80U2FtcGxlcykKK3sKKyAgICB0ZXN0UmVzb2x2ZVRvRmxvYXRGQk8oR0xf
UkczMkYsIGtFWFBFQ1RFRF9SR0YsIDQsIGtXaWR0aCwga0hlaWdodCk7Cit9CisKKy8vIFRlc3Qg
d2UgY2FuIHJlbmRlciB0byBhbmQgcmVzb2x2ZSBhbiBSR0IzMkYgcmVuZGVyYnVmZmVyCitURVNU
X1AoTXVsdGlzYW1wbGVSZXNvbHZlVGVzdCwgUmVzb2x2ZVJHQjMyRlRvRkJPNFNhbXBsZXMpCit7
CisgICAgdGVzdFJlc29sdmVUb1JHQkZsb2F0RkJPKEdMX1JHQjMyRiwga0VYUEVDVEVEX1JHQkYs
IDQsIGtXaWR0aCwga0hlaWdodCk7Cit9CisKKy8vIFRlc3Qgd2UgY2FuIHJlbmRlciB0byBhbmQg
cmVzb2x2ZSBhbiBSR0JBMzJGIHJlbmRlcmJ1ZmZlcgorVEVTVF9QKE11bHRpc2FtcGxlUmVzb2x2
ZVRlc3QsIFJlc29sdmVSR0JBMzJGVG9GQk80U2FtcGxlcykKK3sKKyAgICB0ZXN0UmVzb2x2ZVRv
RmxvYXRGQk8oR0xfUkdCQTMyRiwga0VYUEVDVEVEX1JHQkFGLCA0LCBrV2lkdGgsIGtIZWlnaHQp
OworfQorCitURVNUX1AoTXVsdGlzYW1wbGVSZXNvbHZlVGVzdCwgUmVzb2x2ZUQzMkZTOEY0U2Ft
cGxlcykKK3sKKyAgICB0ZXN0UmVzb2x2ZURlcHRoVG9GQk8oR0xfREVQVEgzMkZfU1RFTkNJTDgs
IEdMX0RFUFRIX1NURU5DSUxfQVRUQUNITUVOVCwgNCwga1dpZHRoLCBrSGVpZ2h0KTsKK30KKwor
VEVTVF9QKE11bHRpc2FtcGxlUmVzb2x2ZVRlc3QsIFJlc29sdmVEMjRTOFNhbXBsZXMpCit7Cisg
ICAgdGVzdFJlc29sdmVEZXB0aFRvRkJPKEdMX0RFUFRIMjRfU1RFTkNJTDgsIEdMX0RFUFRIX1NU
RU5DSUxfQVRUQUNITUVOVCwgNCwga1dpZHRoLCBrSGVpZ2h0KTsKK30KKworVEVTVF9QKE11bHRp
c2FtcGxlUmVzb2x2ZVRlc3QsIFJlc29sdmVEMzJGU2FtcGxlcykKK3sKKyAgICB0ZXN0UmVzb2x2
ZURlcHRoVG9GQk8oR0xfREVQVEhfQ09NUE9ORU5UMzJGLCBHTF9ERVBUSF9BVFRBQ0hNRU5ULCA0
LCBrV2lkdGgsIGtIZWlnaHQpOworfQorCitURVNUX1AoTXVsdGlzYW1wbGVSZXNvbHZlVGVzdCwg
UmVzb2x2ZUQyNFNhbXBsZXMpCit7CisgICAgdGVzdFJlc29sdmVEZXB0aFRvRkJPKEdMX0RFUFRI
X0NPTVBPTkVOVDI0LCBHTF9ERVBUSF9BVFRBQ0hNRU5ULCA0LCBrV2lkdGgsIGtIZWlnaHQpOwor
fQorCitURVNUX1AoTXVsdGlzYW1wbGVSZXNvbHZlVGVzdCwgUmVzb2x2ZUQxNlNhbXBsZXMpCit7
CisgICAgdGVzdFJlc29sdmVEZXB0aFRvRkJPKEdMX0RFUFRIX0NPTVBPTkVOVDE2LCBHTF9ERVBU
SF9BVFRBQ0hNRU5ULCA0LCBrV2lkdGgsIGtIZWlnaHQpOworfQorCit2b2lkIGRyYXdSZWN0QW5k
QmxpdChHTHVpbnQgbXNGcmFtZWJ1ZmZlciwKKyAgICAgICAgICAgICAgICAgICAgIEdMdWludCBy
ZXNvbHZlRnJhbWVidWZmZXIsCisgICAgICAgICAgICAgICAgICAgICBHTGludCB3aWR0aCwKKyAg
ICAgICAgICAgICAgICAgICAgIEdMaW50IGhlaWdodCwKKyAgICAgICAgICAgICAgICAgICAgIEdM
aW50IG1hdExvYywKKyAgICAgICAgICAgICAgICAgICAgIEdMaW50IGNvbG9yTG9jLAorICAgICAg
ICAgICAgICAgICAgICAgZmxvYXQgeCwKKyAgICAgICAgICAgICAgICAgICAgIGZsb2F0IHksCisg
ICAgICAgICAgICAgICAgICAgICBmbG9hdCB3LAorICAgICAgICAgICAgICAgICAgICAgZmxvYXQg
aCwKKyAgICAgICAgICAgICAgICAgICAgIGNvbnN0IEdMQ29sb3IgJmNvbG9yKQoreworICAgIGds
QmluZEZyYW1lYnVmZmVyKEdMX0ZSQU1FQlVGRkVSLCBtc0ZyYW1lYnVmZmVyKTsKKyAgICBmbG9h
dCBtYXRyaXhbMTZdID0geworICAgICAgICB3LCAwLCAwLCAwLCAwLCBoLCAwLCAwLCAwLCAwLCAx
LCAwLCB4LCB5LCAwLCAxLAorICAgIH07CisgICAgZ2xVbmlmb3JtTWF0cml4NGZ2KG1hdExvYywg
MSwgZmFsc2UsIG1hdHJpeCk7CisgICAgYW5nbGU6OlZlY3RvcjQgYyhjb2xvci50b05vcm1hbGl6
ZWRWZWN0b3IoKSk7CisgICAgZ2xVbmlmb3JtNGYoY29sb3JMb2MsIGNbMF0sIGNbMV0sIGNbMl0s
IGNbM10pOworICAgIGdsRHJhd0FycmF5cyhHTF9UUklBTkdMRVMsIDAsIDYpOworCisgICAgZ2xC
aW5kRnJhbWVidWZmZXIoR0xfRFJBV19GUkFNRUJVRkZFUiwgcmVzb2x2ZUZyYW1lYnVmZmVyKTsK
KyAgICBnbEJsaXRGcmFtZWJ1ZmZlcigwLCAwLCB3aWR0aCwgaGVpZ2h0LCAwLCAwLCB3aWR0aCwg
aGVpZ2h0LCBHTF9DT0xPUl9CVUZGRVJfQklULCBHTF9ORUFSRVNUKTsKK30KKworLy8gVGVzdHMg
aWYgd2UgcmVzb2x2ZShibGl0KSBhIG11bHRpc2FtcGxlIHJlbmRlcmJ1ZmZlciB0aGF0IGl0Cisv
LyBkb2VzIG5vdCBsb3NlIGl0cyBjb250ZW50cy4KK1RFU1RfUChNdWx0aXNhbXBsZVJlc29sdmVU
ZXN0LCBEcmF3QW5kUmVzb2x2ZU11bHRpcGxlVGltZXMpCit7CisgICAgY29uc3RleHByIEdMaW50
IHNhbXBsZXMgPSA0OworICAgIGNvbnN0ZXhwciBHTGVudW0gZm9ybWF0ID0gR0xfUkdCQTg7Cisg
ICAgY29uc3RleHByIEdMaW50IHdpZHRoICAgPSAxNjsKKyAgICBjb25zdGV4cHIgR0xpbnQgaGVp
Z2h0ICA9IDE2OworCisgICAgY29uc3RleHByIGNoYXIga1ZTW10gPSBSIigjdmVyc2lvbiAzMDAg
ZXMKKyAgICBsYXlvdXQobG9jYXRpb24gPSAwKSBpbiB2ZWM0IHBvc2l0aW9uOworICAgIHVuaWZv
cm0gbWF0NCBtYXQ7CisgICAgdm9pZCBtYWluKCkgeworICAgICAgIGdsX1Bvc2l0aW9uID0gbWF0
ICogcG9zaXRpb247CisgICAgfQorICAgICkiOworCisgICAgY29uc3RleHByIGNoYXIga0ZTW10g
PSBSIigjdmVyc2lvbiAzMDAgZXMKKyAgICBwcmVjaXNpb24gaGlnaHAgZmxvYXQ7CisgICAgdW5p
Zm9ybSB2ZWM0IGNvbG9yOworICAgIG91dCB2ZWM0IG91dENvbG9yOworICAgIHZvaWQgbWFpbigp
IHsKKyAgICAgICBvdXRDb2xvciA9IGNvbG9yOworICAgIH0KKyAgICApIjsKKworICAgIGdsVmll
d3BvcnQoMCwgMCwgd2lkdGgsIGhlaWdodCk7CisKKyAgICBBTkdMRV9HTF9QUk9HUkFNKHByb2dy
YW0sIGtWUywga0ZTKTsKKyAgICBHTGludCBtYXRMb2MgICA9IGdsR2V0VW5pZm9ybUxvY2F0aW9u
KHByb2dyYW0sICJtYXQiKTsKKyAgICBHTGludCBjb2xvckxvYyA9IGdsR2V0VW5pZm9ybUxvY2F0
aW9uKHByb2dyYW0sICJjb2xvciIpOworICAgIGdsVXNlUHJvZ3JhbShwcm9ncmFtKTsKKworICAg
IEdMQnVmZmVyIGJ1ZjsKKyAgICBnbEJpbmRCdWZmZXIoR0xfQVJSQVlfQlVGRkVSLCBidWYpOwor
CisgICAgY29uc3RleHByIGZsb2F0IHZlcnRpY2VzW10gPSB7CisgICAgICAgIDAuMGYsIDAuMGYs
IDEuMGYsIDAuMGYsIDAuMGYsIDEuMGYsIDAuMGYsIDEuMGYsIDEuMGYsIDAuMGYsIDEuMGYsIDEu
MGYsCisgICAgfTsKKyAgICBnbEJ1ZmZlckRhdGEoR0xfQVJSQVlfQlVGRkVSLCBzaXplb2YodmVy
dGljZXMpLCB2ZXJ0aWNlcywgR0xfU1RBVElDX0RSQVcpOworICAgIGdsRW5hYmxlVmVydGV4QXR0
cmliQXJyYXkoMCk7CisgICAgZ2xWZXJ0ZXhBdHRyaWJQb2ludGVyKDAsIDIsIEdMX0ZMT0FULCBH
TF9GQUxTRSwgMCwgbnVsbHB0cik7CisKKyAgICAvLyBNYWtlIHNhbXBsZXMgPSA0IG11bHRpLXNh
bXBsZSBmcmFtZWJ1ZmZlci4KKyAgICBHTEZyYW1lYnVmZmVyIG1zRkI7CisgICAgZ2xCaW5kRnJh
bWVidWZmZXIoR0xfRlJBTUVCVUZGRVIsIG1zRkIpOworCisgICAgR0xSZW5kZXJidWZmZXIgbXNS
QjsKKyAgICBnbEJpbmRSZW5kZXJidWZmZXIoR0xfUkVOREVSQlVGRkVSLCBtc1JCKTsKKyAgICBn
bFJlbmRlcmJ1ZmZlclN0b3JhZ2VNdWx0aXNhbXBsZShHTF9SRU5ERVJCVUZGRVIsIHNhbXBsZXMs
IGZvcm1hdCwgd2lkdGgsIGhlaWdodCk7CisgICAgZ2xGcmFtZWJ1ZmZlclJlbmRlcmJ1ZmZlcihH
TF9GUkFNRUJVRkZFUiwgR0xfQ09MT1JfQVRUQUNITUVOVDAsIEdMX1JFTkRFUkJVRkZFUiwgbXNS
Qik7CisgICAgRVhQRUNUX0dMX0ZSQU1FQlVGRkVSX0NPTVBMRVRFKEdMX0ZSQU1FQlVGRkVSKTsK
KworICAgIC8vIE1ha2Ugbm9uLW11bHRpLXNhbXBsZSBmcmFtZWJ1ZmZlci4KKyAgICBHTEZyYW1l
YnVmZmVyIGRyYXdGQjsKKyAgICBnbEJpbmRGcmFtZWJ1ZmZlcihHTF9GUkFNRUJVRkZFUiwgZHJh
d0ZCKTsKKworICAgIEdMUmVuZGVyYnVmZmVyIGRyYXdSQjsKKyAgICBnbEJpbmRSZW5kZXJidWZm
ZXIoR0xfUkVOREVSQlVGRkVSLCBkcmF3UkIpOworICAgIGdsUmVuZGVyYnVmZmVyU3RvcmFnZShH
TF9SRU5ERVJCVUZGRVIsIGZvcm1hdCwgd2lkdGgsIGhlaWdodCk7CisgICAgZ2xGcmFtZWJ1ZmZl
clJlbmRlcmJ1ZmZlcihHTF9GUkFNRUJVRkZFUiwgR0xfQ09MT1JfQVRUQUNITUVOVDAsIEdMX1JF
TkRFUkJVRkZFUiwgZHJhd1JCKTsKKyAgICBFWFBFQ1RfR0xfRlJBTUVCVUZGRVJfQ09NUExFVEUo
R0xfRlJBTUVCVUZGRVIpOworCisgICAgZHJhd1JlY3RBbmRCbGl0KG1zRkIsIGRyYXdGQiwgd2lk
dGgsIGhlaWdodCwgbWF0TG9jLCBjb2xvckxvYywgLTEsIC0xLCAyLCAyLCBHTENvbG9yOjpyZWQp
OworICAgIGRyYXdSZWN0QW5kQmxpdChtc0ZCLCBkcmF3RkIsIHdpZHRoLCBoZWlnaHQsIG1hdExv
YywgY29sb3JMb2MsIDAsIC0xLCAxLCAxLCBHTENvbG9yOjpncmVlbik7CisgICAgZHJhd1JlY3RB
bmRCbGl0KG1zRkIsIGRyYXdGQiwgd2lkdGgsIGhlaWdodCwgbWF0TG9jLCBjb2xvckxvYywgLTEs
IDAsIDEsIDEsIEdMQ29sb3I6OmJsdWUpOworICAgIGRyYXdSZWN0QW5kQmxpdChtc0ZCLCBkcmF3
RkIsIHdpZHRoLCBoZWlnaHQsIG1hdExvYywgY29sb3JMb2MsIDAsIDAsIDEsIDEsIEdMQ29sb3I6
OnllbGxvdyk7CisgICAgZ2xFbmFibGUoR0xfQkxFTkQpOworICAgIGdsQmxlbmRGdW5jKEdMX09O
RSwgR0xfT05FKTsKKyAgICBkcmF3UmVjdEFuZEJsaXQobXNGQiwgZHJhd0ZCLCB3aWR0aCwgaGVp
Z2h0LCBtYXRMb2MsIGNvbG9yTG9jLCAtMC41LCAtMC41LCAxLCAxLAorICAgICAgICAgICAgICAg
ICAgICBHTENvbG9yKDB4ODAsIDB4ODAsIDB4ODAsIDB4ODApKTsKKyAgICBnbERpc2FibGUoR0xf
QkxFTkQpOworICAgIEFTU0VSVF9HTF9OT19FUlJPUigpOworCisgICAgLyoKKyAgICAgICBleHBl
Y3RlZAorICAgICAgICstLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tKworICAgICAgIHwgYmx1
ZSAgICAgICAgfCAgICAgICB5ZWxsb3cgfAorICAgICAgIHwgICArLS0tLS0tLS0tKy0tLS0tLS0t
LS0rICAgfAorICAgICAgIHwgICB8LjUsLjUsMSwxfCAxLDEsLjUsMSB8ICAgfAorICAgICAgICst
LS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0rLS0tKworICAgICAgIHwgICB8MSwuNSwuNSwxfCAuNSwx
LC41LDF8ICAgfAorICAgICAgIHwgICArLS0tLS0tLS0tKy0tLS0tLS0tLS0rICAgfAorICAgICAg
IHwgcmVkICAgICAgICAgfCAgICAgICAgZ3JlZW4gfAorICAgICAgICstLS0tLS0tLS0tLS0tKy0t
LS0tLS0tLS0tLS0tKworICAgICAgMCwwCisgICAgKi8KKworICAgIGdsQmluZEZyYW1lYnVmZmVy
KEdMX0ZSQU1FQlVGRkVSLCBkcmF3RkIpOworICAgIEVYUEVDVF9QSVhFTF9SRUNUX0VRKDAsIDAs
IHdpZHRoIC8gMiwgaGVpZ2h0IC8gNCwgR0xDb2xvcjo6cmVkKTsKKyAgICBFWFBFQ1RfUElYRUxf
UkVDVF9FUSh3aWR0aCAvIDIsIDAsIHdpZHRoIC8gMiwgaGVpZ2h0IC8gNCwgR0xDb2xvcjo6Z3Jl
ZW4pOworICAgIEVYUEVDVF9QSVhFTF9SRUNUX0VRKDAsIGhlaWdodCAqIDMgLyA0LCB3aWR0aCAv
IDIsIGhlaWdodCAvIDQsIEdMQ29sb3I6OmJsdWUpOworICAgIEVYUEVDVF9QSVhFTF9SRUNUX0VR
KHdpZHRoIC8gMiwgaGVpZ2h0ICogMyAvIDQsIHdpZHRoIC8gMiwgaGVpZ2h0IC8gNCwgR0xDb2xv
cjo6eWVsbG93KTsKKworICAgIEVYUEVDVF9QSVhFTF9SRUNUX0VRKHdpZHRoIC8gNCwgaGVpZ2h0
IC8gNCwgd2lkdGggLyA0LCBoZWlnaHQgLyA0LCBHTENvbG9yKDI1NSwgMTI4LCAxMjgsIDI1NSkp
OworICAgIEVYUEVDVF9QSVhFTF9SRUNUX0VRKHdpZHRoIC8gMiwgaGVpZ2h0IC8gNCwgd2lkdGgg
LyA0LCBoZWlnaHQgLyA0LCBHTENvbG9yKDEyOCwgMjU1LCAxMjgsIDI1NSkpOworICAgIEVYUEVD
VF9QSVhFTF9SRUNUX0VRKHdpZHRoIC8gNCwgaGVpZ2h0IC8gMiwgd2lkdGggLyA0LCBoZWlnaHQg
LyA0LCBHTENvbG9yKDEyOCwgMTI4LCAyNTUsIDI1NSkpOworICAgIEVYUEVDVF9QSVhFTF9SRUNU
X0VRKHdpZHRoIC8gMiwgaGVpZ2h0IC8gMiwgd2lkdGggLyA0LCBoZWlnaHQgLyA0LCBHTENvbG9y
KDI1NSwgMjU1LCAxMjgsIDI1NSkpOworfQorCiBBTkdMRV9JTlNUQU5USUFURV9URVNUX0NPTUJJ
TkVfMShNdWx0aXNhbXBsZVRlc3QsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQ
cmludFRvU3RyaW5nUGFyYW1OYW1lLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
dGVzdGluZzo6VmFsdWVzKGZhbHNlKSwKQEAgLTUyNSw0ICsxMTM1LDcgQEAgQU5HTEVfSU5TVEFO
VElBVEVfVEVTVF9DT01CSU5FXzEoTXVsdGlzYW1wbGVUZXN0RVMzLAogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgV2l0aE5vRml4dHVyZShFUzNfVlVMS0FOKCkpLAogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgV2l0aE5vRml4dHVyZShFUzMxX1ZVTEtBTigpKSwKICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFdpdGhOb0ZpeHR1cmUoRVMzX01FVEFMKCkp
KTsKKworQU5HTEVfSU5TVEFOVElBVEVfVEVTVF9FUzMoTXVsdGlzYW1wbGVSZXNvbHZlVGVzdCk7
CisKIH0gIC8vIGFub255bW91cyBuYW1lc3BhY2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL3NyYy90ZXN0cy9nbF90ZXN0cy9PYmplY3RBbGxvY2F0aW9uVGVzdC5jcHAgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvZ2xfdGVzdHMvT2JqZWN0QWxsb2NhdGlv
blRlc3QuY3BwCmluZGV4IDYwYzUxMjczNWE5OTdkMTVkNWUyMmNhY2Y2ZWI4YjY0NWVkOThlYjQu
LjJlNzQ1MGZhNWMyNGUxOTlmMjZhOGY3YTA4YTA2MDM1OTBlZjU2ZmUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9nbF90ZXN0cy9PYmplY3RBbGxvY2F0aW9u
VGVzdC5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2dsX3Rlc3Rz
L09iamVjdEFsbG9jYXRpb25UZXN0LmNwcApAQCAtNjgsNiArNjgsNDggQEAgVEVTVF9QKE9iamVj
dEFsbG9jYXRpb25UZXN0LCBCaW5kUmVuZGVyYnVmZmVyKQogICAgIEVYUEVDVF9HTF9OT19FUlJP
UigpOwogfQogCisvLyBSZW5kZXJidWZmZXJzIGNhbiBiZSBjcmVhdGVkIG9uIHRoZSBmbHkgYnkg
Y2FsbGluZyBnbEJpbmRSZW5kZXJidWZmZXIsCisvLyBzby8vIGNoZWNrIHRoYXQgdGhlIGNhbGwg
ZG9lc24ndCBmYWlsIHRoYXQgdGhlIHJlbmRlcmJ1ZmZlciBpcyBhbHNvIGRlbGV0ZWQKK1RFU1Rf
UChPYmplY3RBbGxvY2F0aW9uVGVzdCwgQmluZFJlbmRlcmJ1ZmZlckJlZm9yZUdlbkFuZERlbGV0
ZSkKK3sKKyAgICBHTHVpbnQgcmJJZCA9IDE7CisgICAgZ2xCaW5kUmVuZGVyYnVmZmVyKEdMX1JF
TkRFUkJVRkZFUiwgcmJJZCk7CisgICAgRVhQRUNUX0dMX05PX0VSUk9SKCk7CisKKyAgICAvLyBT
d2FwIG5vdyB0byB0cmlnZ2VyIHRoZSBzZXJpYWxpemF0aW9uIG9mIHRoZSByZW5kZXJidWZmZXIg
dGhhdAorICAgIC8vIHdhcyBpbml0aWFsaXplZCB3aXRoIHRoZSBkZWZhdWx0IHZhbHVlcworICAg
IHN3YXBCdWZmZXJzKCk7CisKKyAgICBnbERlbGV0ZVJlbmRlcmJ1ZmZlcnMoMSwgJnJiSWQpOwor
ICAgIEVYUEVDVF9HTF9OT19FUlJPUigpOworfQorCisvLyBCdWZmZXJzIGNhbiBiZSBjcmVhdGVk
IG9uIHRoZSBmbHkgYnkgY2FsbGluZyBnbEJpbmRCdWZmZXIsIHNvCisvLyBjaGVjayB0aGF0IHRo
ZSBjYWxsIGRvZXNuJ3QgZmFpbCB0aGF0IHRoZSBidWZmZXIgaXMgYWxzbyBkZWxldGVkCitURVNU
X1AoT2JqZWN0QWxsb2NhdGlvblRlc3QsIEJpbmRCdWZmZXJCZWZvcmVHZW5BbmREZWxldGUpCit7
CisgICAgR0x1aW50IGlkID0gMTsKKyAgICBnbEJpbmRCdWZmZXIoR0xfQVJSQVlfQlVGRkVSLCBp
ZCk7CisgICAgRVhQRUNUX0dMX05PX0VSUk9SKCk7CisgICAgLy8gdHJpZ2dlciBzZXJpYWxpemF0
aW9uIHRvIGNhcHR1cmUgdGhlIGNyZWF0ZWQgYnVmZmVyIElECisgICAgc3dhcEJ1ZmZlcnMoKTsK
KyAgICBnbERlbGV0ZUJ1ZmZlcnMoMSwgJmlkKTsKKyAgICBFWFBFQ1RfR0xfTk9fRVJST1IoKTsK
K30KKworLy8gVGV4dHVyZXMgY2FuIGJlIGNyZWF0ZWQgb24gdGhlIGZseSBieSBjYWxsaW5nIGds
QmluZFRleHR1cmUsIHNvCisvLyBjaGVjayB0aGF0IHRoZSBjYWxsIGRvZXNuJ3QgZmFpbCB0aGF0
IHRoZSB0ZXh0dXJlIGlzIGFsc28gZGVsZXRlZAorVEVTVF9QKE9iamVjdEFsbG9jYXRpb25UZXN0
LCBCaW5kVGV4dHVyZUJlZm9yZUdlbkFuZERlbGV0ZSkKK3sKKyAgICBHTHVpbnQgaWQgPSAxOwor
ICAgIGdsQmluZFRleHR1cmUoR0xfVEVYVFVSRV8yRCwgaWQpOworICAgIEVYUEVDVF9HTF9OT19F
UlJPUigpOworICAgIC8vIHRyaWdnZXIgc2VyaWFsaXphdGlvbiB0byBjYXB0dXJlIHRoZSBjcmVh
dGVkIHRleHR1cmUgSUQKKyAgICBzd2FwQnVmZmVycygpOworICAgIGdsRGVsZXRlVGV4dHVyZXMo
MSwgJmlkKTsKKyAgICBFWFBFQ1RfR0xfTk9fRVJST1IoKTsKK30KKwogfSAgLy8gYW5vbnltb3Vz
IG5hbWVzcGFjZQogCiBHVEVTVF9BTExPV19VTklOU1RBTlRJQVRFRF9QQVJBTUVURVJJWkVEX1RF
U1QoT2JqZWN0QWxsb2NhdGlvblRlc3QpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc3JjL3Rlc3RzL2dsX3Rlc3RzL09jY2x1c2lvblF1ZXJpZXNUZXN0LmNwcCBiL1NvdXJj
ZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9nbF90ZXN0cy9PY2NsdXNpb25RdWVyaWVzVGVz
dC5jcHAKaW5kZXggNTBjN2E4ZjRmZjkyYjRlOGVkMTI3MjIyOWE4NzIxZmIyMThmMDdmNy4uOTUz
YmViYWI0MTkyNWQxNGQ2MmQ2YWZmOWE4MGRlZTAxYzY0MjBiZSAxMDA2NDQKLS0tIGEvU291cmNl
L1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2dsX3Rlc3RzL09jY2x1c2lvblF1ZXJpZXNUZXN0
LmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvZ2xfdGVzdHMvT2Nj
bHVzaW9uUXVlcmllc1Rlc3QuY3BwCkBAIC03OTMsNiArNzkzLDggQEAgVEVTVF9QKE9jY2x1c2lv
blF1ZXJpZXNOb1N1cmZhY2VUZXN0RVMzLCBTd2l0Y2hpbmdDb250ZXh0c1dpdGhRdWVyeSkKICAg
ICAgICAgRUdMX05PTkUsCiAgICAgfTsKIAorICAgIC8vIFRoZSBmb2xsb3dpbmcgR0wgb2JqZWN0
cyBhcmUgaW1wbGljaXRseSBkZWxldGVkIGluCisgICAgLy8gQ29udGV4dEluZm8ncyBkZXN0cnVj
dG9yIGJlZm9yZSB0aGUgRUdMQ29udGV4dCBpcyBtYW51YWxseSBkZXN0cm95ZWQKICAgICBzdHJ1
Y3QgQ29udGV4dEluZm8KICAgICB7CiAgICAgICAgIEVHTENvbnRleHQgY29udGV4dDsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9nbF90ZXN0cy9Qcm9ncmFt
QmluYXJ5VGVzdC5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvZ2xfdGVz
dHMvUHJvZ3JhbUJpbmFyeVRlc3QuY3BwCmluZGV4IGY4OWFiYjgyNWE2NWY2ZDFmZTI0YjA1MmQy
Njg4N2ZkZmYzMGRiMTYuLjQ1OGI1MmJkZWI2NTc2YTk3Y2U2NTA1MmQ5Yjg3ZDMxNGIyNGE3ZDQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9nbF90ZXN0cy9Q
cm9ncmFtQmluYXJ5VGVzdC5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rl
c3RzL2dsX3Rlc3RzL1Byb2dyYW1CaW5hcnlUZXN0LmNwcApAQCAtNTE5LDYgKzUxOSwxMCBAQCBU
RVNUX1AoUHJvZ3JhbUJpbmFyeUVTM1Rlc3QsIFRlc3RBcnJheU9mU3RydWN0VW5pZm9ybSkKIC8v
IGRyYXdpbmcgd29ya3MuCiBURVNUX1AoUHJvZ3JhbUJpbmFyeUVTM1Rlc3QsIFNhdmVBbmRMb2Fk
RGV0YWNoZWRTaGFkZXJzKQogeworICAgIEdMaW50IGJpbmFyeUZvcm1hdENvdW50ID0gMDsKKyAg
ICBnbEdldEludGVnZXJ2KEdMX05VTV9QUk9HUkFNX0JJTkFSWV9GT1JNQVRTLCAmYmluYXJ5Rm9y
bWF0Q291bnQpOworICAgIEFOR0xFX1NLSVBfVEVTVF9JRihiaW5hcnlGb3JtYXRDb3VudCA9PSAw
KTsKKwogICAgIC8vIFdlIHVzZSBzaGFkZXJzIHdpdGggdGhlICJmbGF0IiBxdWFsaWZpZXIsIHRv
IGVuc3VyZSB0aGF0ICJmbGF0IiBiZWhhdmVzCiAgICAgLy8gYWNyb3NzIHNhdmUvbG9hZC4gVGhp
cyBpcyBwcmltYXJpbHkgdG8gY2F0Y2ggcG9zc2libGUgYnVncyBpbiB0aGUgTWV0YWwKICAgICAv
LyBiYWNrZW5kLCB3aGVyZSBpdCBuZWVkcyB0byBkZXRlY3QgImZsYXQiIGF0IHNoYWRlciBsaW5r
IHRpbWUgYW5kCkBAIC05MzQsNyArOTM4LDggQEAgVEVTVF9QKFByb2dyYW1CaW5hcnlUZXN0LCBT
UkdCRGVjb2RlV2l0aFNhbXBsZXJBbmRUZXhlbEZldGNoVGVzdCkKIH0KIAogR1RFU1RfQUxMT1df
VU5JTlNUQU5USUFURURfUEFSQU1FVEVSSVpFRF9URVNUKFByb2dyYW1CaW5hcnlFUzNUZXN0KTsK
LUFOR0xFX0lOU1RBTlRJQVRFX1RFU1RfRVMzKFByb2dyYW1CaW5hcnlFUzNUZXN0KTsKK0FOR0xF
X0lOU1RBTlRJQVRFX1RFU1RfRVMzX0FORChQcm9ncmFtQmluYXJ5RVMzVGVzdCwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBXaXRoQ3JlYXRlVnVsa2FuUGlwZWxpbmVEdXJpbmdMaW5r
KEVTM19WVUxLQU4oKSkpOwogCiBjbGFzcyBQcm9ncmFtQmluYXJ5RVMzMVRlc3QgOiBwdWJsaWMg
QU5HTEVUZXN0CiB7CkBAIC0xMTY5LDcgKzExNzQsOCBAQCBURVNUX1AoUHJvZ3JhbUJpbmFyeUVT
MzFUZXN0LCBJbWFnZVRleHR1cmVCaW5kaW5nKQogfQogCiBHVEVTVF9BTExPV19VTklOU1RBTlRJ
QVRFRF9QQVJBTUVURVJJWkVEX1RFU1QoUHJvZ3JhbUJpbmFyeUVTMzFUZXN0KTsKLUFOR0xFX0lO
U1RBTlRJQVRFX1RFU1RfRVMzMShQcm9ncmFtQmluYXJ5RVMzMVRlc3QpOworQU5HTEVfSU5TVEFO
VElBVEVfVEVTVF9FUzMxX0FORChQcm9ncmFtQmluYXJ5RVMzMVRlc3QsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIFdpdGhDcmVhdGVWdWxrYW5QaXBlbGluZUR1cmluZ0xpbmsoRVMz
MV9WVUxLQU4oKSkpOwogCiBjbGFzcyBQcm9ncmFtQmluYXJ5VHJhbnNmb3JtRmVlZGJhY2tUZXN0
IDogcHVibGljIEFOR0xFVGVzdAogewpAQCAtMTI4MSw3ICsxMjg3LDggQEAgVEVTVF9QKFByb2dy
YW1CaW5hcnlUcmFuc2Zvcm1GZWVkYmFja1Rlc3QsIEdldFRyYW5zZm9ybUZlZWRiYWNrVmFyeWlu
ZykKIH0KIAogR1RFU1RfQUxMT1dfVU5JTlNUQU5USUFURURfUEFSQU1FVEVSSVpFRF9URVNUKFBy
b2dyYW1CaW5hcnlUcmFuc2Zvcm1GZWVkYmFja1Rlc3QpOwotQU5HTEVfSU5TVEFOVElBVEVfVEVT
VF9FUzMoUHJvZ3JhbUJpbmFyeVRyYW5zZm9ybUZlZWRiYWNrVGVzdCk7CitBTkdMRV9JTlNUQU5U
SUFURV9URVNUX0VTM19BTkQoUHJvZ3JhbUJpbmFyeVRyYW5zZm9ybUZlZWRiYWNrVGVzdCwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBXaXRoQ3JlYXRlVnVsa2FuUGlwZWxpbmVEdXJp
bmdMaW5rKEVTM19WVUxLQU4oKSkpOwogCiAvLyBGb3IgdGhlIFByb2dyYW1CaW5hcmllc0Fjcm9z
c1BsYXRmb3JtcyB0ZXN0cywgd2UgbmVlZCB0d28gc2V0cyBvZiBwYXJhbXM6CiAvLyAtIGEgc2V0
IHRvIHNhdmUgdGhlIHByb2dyYW0gYmluYXJ5CkBAIC0xNTE4LDYgKzE1MjUsMTEgQEAgQU5HTEVf
SU5TVEFOVElBVEVfVEVTVChQcm9ncmFtQmluYXJpZXNBY3Jvc3NQbGF0Zm9ybXMsCiAgICAgICAg
ICAgICAgICAgICAgICAgIFBsYXRmb3Jtc1dpdGhMaW5rUmVzdWx0KEVTMl9EM0QxMSgpLCAgICAg
ICAgIEVTMl9EM0Q5KCksICAgICAgICAgICAgIGZhbHNlICAgICAgICApLCAvLyBTd2l0Y2hpbmcg
ZnJvbSBEM0QxMSB0byBEM0Q5IHNob3VsZG4ndCB3b3JrCiAgICAgICAgICAgICAgICAgICAgICAg
IFBsYXRmb3Jtc1dpdGhMaW5rUmVzdWx0KEVTMl9EM0Q5KCksICAgICAgICAgIEVTMl9EM0QxMSgp
LCAgICAgICAgICAgIGZhbHNlICAgICAgICApLCAvLyBTd2l0Y2hpbmcgZnJvbSBEM0Q5IHRvIEQz
RDExIHNob3VsZG4ndCB3b3JrCiAgICAgICAgICAgICAgICAgICAgICAgIFBsYXRmb3Jtc1dpdGhM
aW5rUmVzdWx0KEVTMl9EM0QxMSgpLCAgICAgICAgIEVTM19EM0QxMSgpLCAgICAgICAgICAgIGZh
bHNlICAgICAgICApLCAvLyBTd2l0Y2hpbmcgdG8gbmV3ZXIgY2xpZW50IHZlcnNpb24gc2hvdWxk
bid0IHdvcmsKKyAgICAgICAgICAgICAgICAgICAgICAgUGxhdGZvcm1zV2l0aExpbmtSZXN1bHQo
RVMyX1ZVTEtBTigpLCAgICAgICAgRVMyX1ZVTEtBTigpLCAgICAgICAgICAgdHJ1ZSAgICAgICAg
ICksIC8vIExvYWRpbmcgKyByZWxvYWRpbmcgYmluYXJ5IHNob3VsZCB3b3JrCisgICAgICAgICAg
ICAgICAgICAgICAgIFBsYXRmb3Jtc1dpdGhMaW5rUmVzdWx0KEVTM19WVUxLQU4oKSwgICAgICAg
IEVTM19WVUxLQU4oKSwgICAgICAgICAgIHRydWUgICAgICAgICApLCAvLyBMb2FkaW5nICsgcmVs
b2FkaW5nIGJpbmFyeSBzaG91bGQgd29yaworICAgICAgICAgICAgICAgICAgICAgICBQbGF0Zm9y
bXNXaXRoTGlua1Jlc3VsdChFUzMxX1ZVTEtBTigpLCAgICAgICBFUzMxX1ZVTEtBTigpLCAgICAg
ICAgICB0cnVlICAgICAgICAgKSwgLy8gTG9hZGluZyArIHJlbG9hZGluZyBiaW5hcnkgc2hvdWxk
IHdvcmsKICAgICAgICAgICAgICAgICAgICAgICAgUGxhdGZvcm1zV2l0aExpbmtSZXN1bHQoRVMz
X1ZVTEtBTigpLCAgICAgICAgRVMzMV9WVUxLQU4oKSwgICAgICAgICAgZmFsc2UgICAgICAgICks
IC8vIFN3aXRjaGluZyB0byBuZXdlciBjbGllbnQgdmVyc2lvbiBzaG91bGRuJ3Qgd29yayB3aXRo
IFZ1bGthbgorICAgICAgICAgICAgICAgICAgICAgICBQbGF0Zm9ybXNXaXRoTGlua1Jlc3VsdChX
aXRoQ3JlYXRlVnVsa2FuUGlwZWxpbmVEdXJpbmdMaW5rKEVTMl9WVUxLQU4oKSksICAgICAgICBX
aXRoQ3JlYXRlVnVsa2FuUGlwZWxpbmVEdXJpbmdMaW5rKEVTMl9WVUxLQU4oKSksICAgICAgICAg
ICB0cnVlICAgICAgICAgKSwgLy8gTG9hZGluZyArIHJlbG9hZGluZyBiaW5hcnkgd2l0aCBjb21w
aWxpbmcgc2hhZGVycyBhdCBsaW5rIHRpbWUgc2hvdWxkIHdvcmsKKyAgICAgICAgICAgICAgICAg
ICAgICAgUGxhdGZvcm1zV2l0aExpbmtSZXN1bHQoV2l0aENyZWF0ZVZ1bGthblBpcGVsaW5lRHVy
aW5nTGluayhFUzNfVlVMS0FOKCkpLCAgICAgICAgV2l0aENyZWF0ZVZ1bGthblBpcGVsaW5lRHVy
aW5nTGluayhFUzNfVlVMS0FOKCkpLCAgICAgICAgICAgdHJ1ZSAgICAgICAgICksIC8vIExvYWRp
bmcgKyByZWxvYWRpbmcgYmluYXJ5IHdpdGggY29tcGlsaW5nIHNoYWRlcnMgYXQgbGluayB0aW1l
IHNob3VsZCB3b3JrCiAgICAgICAgICAgICAgICAgICAgICAgICk7CiAvLyBjbGFuZy1mb3JtYXQg
b24KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9nbF90ZXN0
cy9Qcm9ncmFtUGlwZWxpbmVUZXN0LmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90
ZXN0cy9nbF90ZXN0cy9Qcm9ncmFtUGlwZWxpbmVUZXN0LmNwcApvbGQgbW9kZSAxMDA3NTUKbmV3
IG1vZGUgMTAwNjQ0CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVz
dHMvZ2xfdGVzdHMvU3RhdGVDaGFuZ2VUZXN0LmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy90ZXN0cy9nbF90ZXN0cy9TdGF0ZUNoYW5nZVRlc3QuY3BwCmluZGV4IGVjYjc4ZGQxODVj
YWFhYTc3YzNmYzlmNjc1ODkxYWZjYjhlMmZhNzguLjg4MGJlZmE2MDAyMGUzNWI4MzVjODAyZTNk
YTA5MDY3MTk4NGFkZDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90
ZXN0cy9nbF90ZXN0cy9TdGF0ZUNoYW5nZVRlc3QuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3NyYy90ZXN0cy9nbF90ZXN0cy9TdGF0ZUNoYW5nZVRlc3QuY3BwCkBAIC02MjMyLDcg
KzYyMzIsNyBAQCB2b2lkIFNpbXBsZVN0YXRlQ2hhbmdlVGVzdDo6ZHJhd1RvRmJvV2l0aEN1bGxp
bmcoY29uc3QgR0xlbnVtIGZyb250RmFjZSwgYm9vbCBlYQogCiAgICAgLy8gQ2xlYXIgdGhlIHN1
cmZhY2UgRkJPIHRvIGluaXRpYWxpemUgaXQgdG8gYSBrbm93biB2YWx1ZQogICAgIGdsQmluZEZy
YW1lYnVmZmVyKEdMX0ZSQU1FQlVGRkVSLCAwKTsKLSAgICBnbENsZWFyQ29sb3IoR0xDb2xvcjo6
cmVkLlIsIEdMQ29sb3I6OnJlZC5HLCBHTENvbG9yOjpyZWQuQiwgR0xDb2xvcjo6cmVkLkEpOwor
ICAgIGdsQ2xlYXJDb2xvcihrRmxvYXRSZWQuUiwga0Zsb2F0UmVkLkcsIGtGbG9hdFJlZC5CLCBr
RmxvYXRSZWQuQSk7CiAgICAgZ2xDbGVhcihHTF9DT0xPUl9CVUZGRVJfQklUKTsKICAgICBBU1NF
UlRfR0xfTk9fRVJST1IoKTsKICAgICBFWFBFQ1RfUElYRUxfQ09MT1JfRVEoMCwgMCwgR0xDb2xv
cjo6cmVkKTsKQEAgLTY0NjIsNyArNjQ2Miw3IEBAIFRFU1RfUChTaW1wbGVTdGF0ZUNoYW5nZVRl
c3QsIERyYXdBcnJheXNXaXRoWmVyb1NpemVkRWxlbWVudEFycmF5QnVmZmVyKQogLy8gVmFsaWRh
dGVzIEdMX1JBU1RFUklaRVJfRElTQ0FSRCBzdGF0ZSBpcyB0cmFja2VkIGNvcnJlY3RseQogVEVT
VF9QKFNpbXBsZVN0YXRlQ2hhbmdlVGVzdEVTMywgUmFzdGVyaXplckRpc2NhcmRTdGF0ZSkKIHsK
LSAgICBnbENsZWFyQ29sb3IoR0xDb2xvcjo6cmVkLlIsIEdMQ29sb3I6OnJlZC5HLCBHTENvbG9y
OjpyZWQuQiwgR0xDb2xvcjo6cmVkLkEpOworICAgIGdsQ2xlYXJDb2xvcihrRmxvYXRSZWQuUiwg
a0Zsb2F0UmVkLkcsIGtGbG9hdFJlZC5CLCBrRmxvYXRSZWQuQSk7CiAgICAgZ2xDbGVhcihHTF9D
T0xPUl9CVUZGRVJfQklUKTsKICAgICBBU1NFUlRfR0xfTk9fRVJST1IoKTsKICAgICBFWFBFQ1Rf
UElYRUxfQ09MT1JfRVEoMCwgMCwgR0xDb2xvcjo6cmVkKTsKQEAgLTY0OTIsNiArNjQ5MiwxNjIg
QEAgVEVTVF9QKFNpbXBsZVN0YXRlQ2hhbmdlVGVzdEVTMywgUmFzdGVyaXplckRpc2NhcmRTdGF0
ZSkKICAgICBFWFBFQ1RfUElYRUxfQ09MT1JfRVEoMCwgMCwgR0xDb2xvcjo6Z3JlZW4pOwogfQog
CisvLyBUZXN0IHRoYXQgZWFybHkgcmV0dXJuIG9uIGJpbmRpbmcgdGhlIHNhbWUgdGV4dHVyZSBp
cyBmdW5jdGlvbmFsCitURVNUX1AoU2ltcGxlU3RhdGVDaGFuZ2VUZXN0RVMzLCBCaW5kaW5nU2Ft
ZVRleHR1cmUpCit7CisgICAgLy8gQ3JlYXRlIHR3byAxeDEgdGV4dHVyZXMKKyAgICBjb25zdGV4
cHIgR0xzaXplaSBrU2l6ZSAgICAgICAgICAgPSAyOworICAgIHN0ZDo6YXJyYXk8R0xDb2xvciwg
a1NpemU+IGNvbG9ycyA9IHtHTENvbG9yOjp5ZWxsb3csIEdMQ29sb3I6OmN5YW59OworCisgICAg
R0xUZXh0dXJlIHRleFtrU2l6ZV07CisgICAgLy8gQmluZCB0ZXh0dXJlIDAgYW5kIDEgdG8gYWN0
aXZlIHRleHR1cmVzIDAgYW5kIDEgYW5kIHNldCBkYXRhCisgICAgZ2xBY3RpdmVUZXh0dXJlKEdM
X1RFWFRVUkUwKTsKKyAgICBnbEJpbmRUZXh0dXJlKEdMX1RFWFRVUkVfMkQsIHRleFswXSk7Cisg
ICAgZ2xUZXhJbWFnZTJEKEdMX1RFWFRVUkVfMkQsIDAsIEdMX1JHQkEsIDEsIDEsIDAsIEdMX1JH
QkEsIEdMX1VOU0lHTkVEX0JZVEUsIGNvbG9yc1swXS5kYXRhKCkpOworCisgICAgZ2xBY3RpdmVU
ZXh0dXJlKEdMX1RFWFRVUkUxKTsKKyAgICBnbEJpbmRUZXh0dXJlKEdMX1RFWFRVUkVfMkQsIHRl
eFsxXSk7CisgICAgZ2xUZXhJbWFnZTJEKEdMX1RFWFRVUkVfMkQsIDAsIEdMX1JHQkEsIDEsIDEs
IDAsIEdMX1JHQkEsIEdMX1VOU0lHTkVEX0JZVEUsIGNvbG9yc1sxXS5kYXRhKCkpOworCisgICAg
Ly8gQ3JlYXRlIHNpbXBsZSBwcm9ncmFtIGFuZCBxdWVyeSBzYW1wbGVyIGxvY2F0aW9uCisgICAg
QU5HTEVfR0xfUFJPR1JBTShwcm9ncmFtLCBlc3NsMV9zaGFkZXJzOjp2czo6VGV4dHVyZTJEKCks
IGVzc2wxX3NoYWRlcnM6OmZzOjpUZXh0dXJlMkQoKSk7CisgICAgQVNTRVJUKHByb2dyYW0udmFs
aWQoKSk7CisgICAgZ2xVc2VQcm9ncmFtKHByb2dyYW0pOworICAgIEdMaW50IHRleHR1cmVMb2Nh
dGlvbiA9IGdsR2V0VW5pZm9ybUxvY2F0aW9uKHByb2dyYW0sIGVzc2wxX3NoYWRlcnM6OlRleHR1
cmUyRFVuaWZvcm0oKSk7CisgICAgQVNTRVJUX05FKC0xLCB0ZXh0dXJlTG9jYXRpb24pOworCisg
ICAgLy8gRHJhdyB1c2luZyBhY3RpdmUgdGV4dHVyZSAwLgorICAgIGdsQWN0aXZlVGV4dHVyZShH
TF9URVhUVVJFMCk7CisgICAgZ2xVbmlmb3JtMWkodGV4dHVyZUxvY2F0aW9uLCAwKTsKKyAgICBn
bEJpbmRUZXh0dXJlKEdMX1RFWFRVUkVfMkQsIHRleFswXSk7CisgICAgZHJhd1F1YWQocHJvZ3Jh
bSwgZXNzbDFfc2hhZGVyczo6UG9zaXRpb25BdHRyaWIoKSwgMC41Zik7CisgICAgQVNTRVJUX0dM
X05PX0VSUk9SKCk7CisgICAgRVhQRUNUX1BJWEVMX0NPTE9SX0VRKDAsIDAsIGNvbG9yc1swXSk7
CisKKyAgICAvLyBEcmF3IHVzaW5nIGFjdGl2ZSB0ZXh0dXJlIDEuCisgICAgZ2xBY3RpdmVUZXh0
dXJlKEdMX1RFWFRVUkUxKTsKKyAgICBnbFVuaWZvcm0xaSh0ZXh0dXJlTG9jYXRpb24sIDEpOwor
ICAgIGdsQmluZFRleHR1cmUoR0xfVEVYVFVSRV8yRCwgdGV4WzFdKTsKKyAgICBkcmF3UXVhZChw
cm9ncmFtLCBlc3NsMV9zaGFkZXJzOjpQb3NpdGlvbkF0dHJpYigpLCAwLjVmKTsKKyAgICBBU1NF
UlRfR0xfTk9fRVJST1IoKTsKKyAgICBFWFBFQ1RfUElYRUxfQ09MT1JfRVEoMCwgMCwgY29sb3Jz
WzFdKTsKKworICAgIC8vIFJlYmluZCB0aGUgc2FtZSB0ZXh0dXJlIHRvIHRleHR1cmUgdW5pdCAx
IGFuZCBleHBlY3Qgc2FtZSBjb2xvcgorICAgIGdsQmluZFRleHR1cmUoR0xfVEVYVFVSRV8yRCwg
dGV4WzFdKTsKKyAgICBnbFVuaWZvcm0xaSh0ZXh0dXJlTG9jYXRpb24sIDEpOworICAgIGRyYXdR
dWFkKHByb2dyYW0sIGVzc2wxX3NoYWRlcnM6OlBvc2l0aW9uQXR0cmliKCksIDAuNWYpOworICAg
IEFTU0VSVF9HTF9OT19FUlJPUigpOworICAgIEVYUEVDVF9QSVhFTF9DT0xPUl9FUSgwLCAwLCBj
b2xvcnNbMV0pOworCisgICAgLy8gUmViaW5kIHRoZSBzYW1lIHRleHR1cmUgdG8gdGV4dHVyZSB1
bml0IDAgYW5kIGV4cGVjdCBzYW1lIGNvbG9yCisgICAgZ2xBY3RpdmVUZXh0dXJlKEdMX1RFWFRV
UkUwKTsKKyAgICBnbFVuaWZvcm0xaSh0ZXh0dXJlTG9jYXRpb24sIDApOworICAgIGdsQmluZFRl
eHR1cmUoR0xfVEVYVFVSRV8yRCwgdGV4WzBdKTsKKyAgICBkcmF3UXVhZChwcm9ncmFtLCBlc3Ns
MV9zaGFkZXJzOjpQb3NpdGlvbkF0dHJpYigpLCAwLjVmKTsKKyAgICBBU1NFUlRfR0xfTk9fRVJS
T1IoKTsKKyAgICBFWFBFQ1RfUElYRUxfQ09MT1JfRVEoMCwgMCwgY29sb3JzWzBdKTsKK30KKwor
Ly8gVGVzdCB0aGF0IGVhcmx5IHJldHVybiBvbiBiaW5kaW5nIHRoZSBzYW1lIHNhbXBsZXIgaXMg
ZnVuY3Rpb25hbAorVEVTVF9QKFNpbXBsZVN0YXRlQ2hhbmdlVGVzdEVTMywgQmluZGluZ1NhbWVT
YW1wbGVyKQoreworICAgIC8vIENyZWF0ZSAyIHNhbXBsZXJzIHdpdGggZGlmZmVyZW50IGZpbHRl
cmluZy4KKyAgICBjb25zdGV4cHIgR0xzaXplaSBrTnVtU2FtcGxlcnMgPSAyOworICAgIEdMU2Ft
cGxlciBzYW1wbGVyc1trTnVtU2FtcGxlcnNdOworCisgICAgLy8gSW5pdCBzYW1wbGVyMAorICAg
IGdsQmluZFNhbXBsZXIoMCwgc2FtcGxlcnNbMF0pOworICAgIGdsU2FtcGxlclBhcmFtZXRlcmko
c2FtcGxlcnNbMF0sIEdMX1RFWFRVUkVfTUlOX0ZJTFRFUiwgR0xfTkVBUkVTVCk7CisgICAgZ2xT
YW1wbGVyUGFyYW1ldGVyaShzYW1wbGVyc1swXSwgR0xfVEVYVFVSRV9NQUdfRklMVEVSLCBHTF9O
RUFSRVNUKTsKKyAgICBBU1NFUlRfR0xfTk9fRVJST1IoKTsKKworICAgIC8vIEluaXQgc2FtcGxl
cjEKKyAgICBnbEJpbmRTYW1wbGVyKDEsIHNhbXBsZXJzWzFdKTsKKyAgICBnbFNhbXBsZXJQYXJh
bWV0ZXJpKHNhbXBsZXJzWzFdLCBHTF9URVhUVVJFX01JTl9GSUxURVIsIEdMX0xJTkVBUik7Cisg
ICAgZ2xTYW1wbGVyUGFyYW1ldGVyaShzYW1wbGVyc1sxXSwgR0xfVEVYVFVSRV9NQUdfRklMVEVS
LCBHTF9MSU5FQVIpOworICAgIEFTU0VSVF9HTF9OT19FUlJPUigpOworCisgICAgLy8gQ3JlYXRl
IGEgc2ltcGxlIDJ4MSB0ZXh0dXJlIHdpdGggYmxhY2sgYW5kIHdoaXRlIGNvbG9ycworICAgIHN0
ZDo6YXJyYXk8R0xDb2xvciwgMj4gY29sb3JzID0ge3tHTENvbG9yOjpibGFjaywgR0xDb2xvcjo6
d2hpdGV9fTsKKworICAgIEdMVGV4dHVyZSB0ZXg7CisgICAgLy8gQmluZCB0aGUgc2FtZSB0ZXh0
dXJlIHRvIHRleHR1cmUgdW5pdHMgMCBhbmQgMQorICAgIGdsQWN0aXZlVGV4dHVyZShHTF9URVhU
VVJFMCk7CisgICAgZ2xCaW5kVGV4dHVyZShHTF9URVhUVVJFXzJELCB0ZXgpOworICAgIGdsQWN0
aXZlVGV4dHVyZShHTF9URVhUVVJFMSk7CisgICAgZ2xCaW5kVGV4dHVyZShHTF9URVhUVVJFXzJE
LCB0ZXgpOworICAgIGdsVGV4SW1hZ2UyRChHTF9URVhUVVJFXzJELCAwLCBHTF9SR0JBLCAyLCAx
LCAwLCBHTF9SR0JBLCBHTF9VTlNJR05FRF9CWVRFLCBjb2xvcnMuZGF0YSgpKTsKKworICAgIC8v
IENyZWF0ZSBhIHByb2dyYW0gdGhhdCB1c2VzIDIgc2FtcGxlcnMuCisgICAgY29uc3RleHByIGNo
YXIga0ZTW10gPSBSIihwcmVjaXNpb24gbWVkaXVtcCBmbG9hdDsKK3ZhcnlpbmcgdmVjMiB2X3Rl
eENvb3JkOwordW5pZm9ybSBzYW1wbGVyMkQgYmFzZVNhbXBsZXI7Cit1bmlmb3JtIHNhbXBsZXIy
RCBvdmVycmlkZVNhbXBsZXI7Cit2b2lkIG1haW4oKQoreworICAgIGdsX0ZyYWdDb2xvciA9IHRl
eHR1cmUyRChiYXNlU2FtcGxlciwgdl90ZXhDb29yZCk7CisgICAgZ2xfRnJhZ0NvbG9yID0gdGV4
dHVyZTJEKG92ZXJyaWRlU2FtcGxlciwgdl90ZXhDb29yZCk7Cit9KSI7CisgICAgQU5HTEVfR0xf
UFJPR1JBTShwcm9ncmFtLCBlc3NsMV9zaGFkZXJzOjp2czo6VGV4dHVyZTJEKCksIGtGUyk7Cisg
ICAgZ2xVc2VQcm9ncmFtKHByb2dyYW0pOworICAgIEdMaW50IGJhc2VTYW1wbGVyTG9jICAgICA9
IGdsR2V0VW5pZm9ybUxvY2F0aW9uKHByb2dyYW0sICJiYXNlU2FtcGxlciIpOworICAgIEdMaW50
IG92ZXJyaWRlU2FtcGxlckxvYyA9IGdsR2V0VW5pZm9ybUxvY2F0aW9uKHByb2dyYW0sICJvdmVy
cmlkZVNhbXBsZXIiKTsKKworICAgIC8vIEJpbmQgc2FtcGxlcnMgdG8gdGV4dHVyZSB1bml0cyAw
IGFuZCAxCisgICAgZ2xCaW5kU2FtcGxlcigwLCBzYW1wbGVyc1swXSk7CisgICAgZ2xCaW5kU2Ft
cGxlcigxLCBzYW1wbGVyc1sxXSk7CisgICAgZ2xVbmlmb3JtMWkoYmFzZVNhbXBsZXJMb2MsIDAp
OworICAgIGdsVW5pZm9ybTFpKG92ZXJyaWRlU2FtcGxlckxvYywgMSk7CisgICAgZHJhd1F1YWQo
cHJvZ3JhbSwgc3RkOjpzdHJpbmcoZXNzbDFfc2hhZGVyczo6UG9zaXRpb25BdHRyaWIoKSksIDAu
NWYpOworICAgIEFTU0VSVF9HTF9OT19FUlJPUigpOworICAgIC8vIEEgZ3JhZGllbnQgc2hvdWxk
IGhhdmUgYmVlbiByZW5kZXJlZCBzaW5jZSAib3ZlcnJpZGVTYW1wbGVyIiBoYXMgbGluZWFyIGZp
bHRlciwKKyAgICAvLyB3ZSBzaG91bGQgbm90IGV4cGVjdCBhIHNvbGlkIGJsYWNrIG9yIHdoaXRl
IGNvbG9yLgorICAgIEVYUEVDVF9ORShhbmdsZTo6UmVhZENvbG9yKGdldFdpbmRvd1dpZHRoKCkg
LyAyLCBnZXRXaW5kb3dIZWlnaHQoKSAvIDIpLCBHTENvbG9yOjpibGFjayk7CisgICAgRVhQRUNU
X05FKGFuZ2xlOjpSZWFkQ29sb3IoZ2V0V2luZG93V2lkdGgoKSAvIDIsIGdldFdpbmRvd0hlaWdo
dCgpIC8gMiksIEdMQ29sb3I6OndoaXRlKTsKKworICAgIC8vIFN3aXRjaCBzYW1wbGVyIGJpbmRp
bmdzCisgICAgZ2xCaW5kU2FtcGxlcigxLCBzYW1wbGVyc1swXSk7CisgICAgZ2xCaW5kU2FtcGxl
cigwLCBzYW1wbGVyc1sxXSk7CisgICAgZHJhd1F1YWQocHJvZ3JhbSwgc3RkOjpzdHJpbmcoZXNz
bDFfc2hhZGVyczo6UG9zaXRpb25BdHRyaWIoKSksIDAuNWYpOworICAgIEFTU0VSVF9HTF9OT19F
UlJPUigpOworICAgIC8vIE5vdyB0aGF0ICJvdmVycmlkZVNhbXBsZXIiIGhhcyBuZWFyZXN0IGZp
bHRlciBleHBlY3Qgc29saWQgY29sb3JzLgorICAgIEVYUEVDVF9QSVhFTF9DT0xPUl9FUSgwLCAw
LCBHTENvbG9yOjpibGFjayk7CisgICAgRVhQRUNUX1BJWEVMX0NPTE9SX0VRKGdldFdpbmRvd1dp
ZHRoKCkgLyAyLCAwLCBHTENvbG9yOjp3aGl0ZSk7CisKKyAgICAvLyBSZWJpbmQgdGhlIHNhbWUg
c2FtcGxlcnMgYWdhaW4gYW5kIGV4cGVjdCBzYW1lIG91dHB1dAorICAgIGdsQmluZFNhbXBsZXIo
MSwgc2FtcGxlcnNbMF0pOworICAgIGdsQmluZFNhbXBsZXIoMCwgc2FtcGxlcnNbMV0pOworICAg
IGRyYXdRdWFkKHByb2dyYW0sIHN0ZDo6c3RyaW5nKGVzc2wxX3NoYWRlcnM6OlBvc2l0aW9uQXR0
cmliKCkpLCAwLjVmKTsKKyAgICBBU1NFUlRfR0xfTk9fRVJST1IoKTsKKyAgICBFWFBFQ1RfUElY
RUxfQ09MT1JfRVEoMCwgMCwgR0xDb2xvcjo6YmxhY2spOworICAgIEVYUEVDVF9QSVhFTF9DT0xP
Ul9FUShnZXRXaW5kb3dXaWR0aCgpIC8gMiwgMCwgR0xDb2xvcjo6d2hpdGUpOworfQorCisvLyBU
ZXN0IHRoYXQgZWFybHkgcmV0dXJuIG9uIGJpbmRpbmcgdGhlIHNhbWUgYnVmZmVyIGlzIGZ1bmN0
aW9uYWwKK1RFU1RfUChTaW1wbGVTdGF0ZUNoYW5nZVRlc3RFUzMsIEJpbmRpbmdTYW1lQnVmZmVy
KQoreworICAgIEdMdXNob3J0IGluZGV4RGF0YVtdID0gezAsIDEsIDIsIDN9OworCisgICAgR0xC
dWZmZXIgZWxlbWVudEFycmF5QnVmZmVyOworICAgIGdsQmluZEJ1ZmZlcihHTF9FTEVNRU5UX0FS
UkFZX0JVRkZFUiwgZWxlbWVudEFycmF5QnVmZmVyKTsKKyAgICBnbEJ1ZmZlckRhdGEoR0xfRUxF
TUVOVF9BUlJBWV9CVUZGRVIsIHNpemVvZihpbmRleERhdGEpLCBpbmRleERhdGEsIEdMX1NUQVRJ
Q19EUkFXKTsKKworICAgIEFOR0xFX0dMX1BST0dSQU0ocHJvZ3JhbSwgZXNzbDFfc2hhZGVyczo6
dnM6Olplcm8oKSwgZXNzbDFfc2hhZGVyczo6ZnM6OlJlZCgpKTsKKyAgICBnbFVzZVByb2dyYW0o
cHJvZ3JhbSk7CisKKyAgICBnbERyYXdFbGVtZW50cyhHTF9QT0lOVFMsIDQsIEdMX1VOU0lHTkVE
X1NIT1JULCAwKTsKKworICAgIHN0ZDo6dmVjdG9yPEdMQ29sb3I+IGNvbG9yczAoa1dpbmRvd1Np
emUgKiBrV2luZG93U2l6ZSk7CisgICAgZ2xSZWFkUGl4ZWxzKDAsIDAsIGtXaW5kb3dTaXplLCBr
V2luZG93U2l6ZSwgR0xfUkdCQSwgR0xfVU5TSUdORURfQllURSwgY29sb3JzMC5kYXRhKCkpOwor
CisgICAgZ2xCaW5kQnVmZmVyKEdMX0VMRU1FTlRfQVJSQVlfQlVGRkVSLCBlbGVtZW50QXJyYXlC
dWZmZXIpOworICAgIGdsRHJhd0VsZW1lbnRzKEdMX1BPSU5UUywgNCwgR0xfVU5TSUdORURfU0hP
UlQsIDApOworICAgIHN0ZDo6dmVjdG9yPEdMQ29sb3I+IGNvbG9yczEoa1dpbmRvd1NpemUgKiBr
V2luZG93U2l6ZSk7CisgICAgZ2xSZWFkUGl4ZWxzKDAsIDAsIGtXaW5kb3dTaXplLCBrV2luZG93
U2l6ZSwgR0xfUkdCQSwgR0xfVU5TSUdORURfQllURSwgY29sb3JzMS5kYXRhKCkpOworCisgICAg
RVhQRUNUX0VRKGNvbG9yczAsIGNvbG9yczEpOworfQorCiBjbGFzcyBJbWFnZVJlc3BlY2lmaWNh
dGlvblRlc3QgOiBwdWJsaWMgQU5HTEVUZXN0CiB7CiAgIHByb3RlY3RlZDoKZGlmZiAtLWdpdCBh
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9nbF90ZXN0cy9UcmFuc2Zvcm1GZWVk
YmFja1Rlc3QuY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2dsX3Rlc3Rz
L1RyYW5zZm9ybUZlZWRiYWNrVGVzdC5jcHAKaW5kZXggNWZhODYzOWEwNTczMGZmYTE5MTY3ODkw
NmMyYzhmMWIzOWRhMjg4MC4uYzBlMzc3ODFjZThiNGYyNzRiNjJkZWRkZGRlYmUyODc5YzRmNjUx
MiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2dsX3Rlc3Rz
L1RyYW5zZm9ybUZlZWRiYWNrVGVzdC5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUv
c3JjL3Rlc3RzL2dsX3Rlc3RzL1RyYW5zZm9ybUZlZWRiYWNrVGVzdC5jcHAKQEAgLTM5NzgsNiAr
Mzk3OCw0NCBAQCB2b2lkIG1haW4gKHZvaWQpCiAgICAgRVhQRUNUX0dMX05PX0VSUk9SKCk7CiB9
CiAKKy8vIFRlc3RzIHRoYXQgd2UgZG9uJ3QgcHJvZHVjZSB1bmRlZmluZWQgYmVoYXZpb3VyIHdo
ZW4gZGVsZXRpbmcgYSBjdXJyZW50IFhGQiBidWZmZXIuCitURVNUX1AoVHJhbnNmb3JtRmVlZGJh
Y2tUZXN0LCBEZWxldGVUcmFuc2Zvcm1GZWVkYmFja0J1ZmZlcikKK3sKKyAgICBBTkdMRV9HTF9Q
Uk9HUkFNX1RSQU5TRk9STV9GRUVEQkFDSyh0ZXN0UHJvZ3JhbSwgZXNzbDFfc2hhZGVyczo6dnM6
OlNpbXBsZSgpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVzc2wx
X3NoYWRlcnM6OmZzOjpHcmVlbigpLCB7ImdsX1Bvc2l0aW9uIn0sCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgR0xfSU5URVJMRUFWRURfQVRUUklCUyk7CisgICAgZ2xV
c2VQcm9ncmFtKHRlc3RQcm9ncmFtKTsKKworICAgIEdMQnVmZmVyIGJ1ZjsKKyAgICBnbEJpbmRC
dWZmZXIoR0xfUElYRUxfVU5QQUNLX0JVRkZFUiwgYnVmKTsKKyAgICBzdGQ6OnZlY3Rvcjx1aW50
OF90PiBidWZEYXRhKDEwMDAwMCwgMCk7CisgICAgZ2xCdWZmZXJEYXRhKEdMX1BJWEVMX1VOUEFD
S19CVUZGRVIsIGJ1ZkRhdGEuc2l6ZSgpLCBidWZEYXRhLmRhdGEoKSwgR0xfRFlOQU1JQ19DT1BZ
KTsKKyAgICBnbEJpbmRCdWZmZXJCYXNlKEdMX1RSQU5TRk9STV9GRUVEQkFDS19CVUZGRVIsIDAs
IGJ1Zik7CisgICAgZ2xCZWdpblRyYW5zZm9ybUZlZWRiYWNrKEdMX1BPSU5UUyk7CisgICAgZ2xC
aW5kQnVmZmVyKEdMX1BJWEVMX1VOUEFDS19CVUZGRVIsIDApOworICAgIGJ1Zi5yZXNldCgpOwor
ICAgIGdsRHJhd0FycmF5cyhHTF9QT0lOVFMsIDAsIDEpOworfQorCisvLyBTYW1lIGFzIHRoZSBh
Ym92ZSwgd2l0aCBhIHBhdXNlZCB0cmFuc2Zvcm0gZmVlZGJhY2suCitURVNUX1AoVHJhbnNmb3Jt
RmVlZGJhY2tUZXN0LCBEZWxldGVQYXVzZWRUcmFuc2Zvcm1GZWVkYmFja0J1ZmZlcikKK3sKKyAg
ICBBTkdMRV9HTF9QUk9HUkFNX1RSQU5TRk9STV9GRUVEQkFDSyh0ZXN0UHJvZ3JhbSwgZXNzbDFf
c2hhZGVyczo6dnM6OlNpbXBsZSgpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGVzc2wxX3NoYWRlcnM6OmZzOjpHcmVlbigpLCB7ImdsX1Bvc2l0aW9uIn0sCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xfSU5URVJMRUFWRURfQVRUUklC
Uyk7CisgICAgZ2xVc2VQcm9ncmFtKHRlc3RQcm9ncmFtKTsKKworICAgIEdMQnVmZmVyIGJ1ZmZl
cjsKKyAgICBnbEJpbmRCdWZmZXIoR0xfUElYRUxfVU5QQUNLX0JVRkZFUiwgYnVmZmVyKTsKKyAg
ICBnbEJ1ZmZlckRhdGEoR0xfUElYRUxfVU5QQUNLX0JVRkZFUiwgMywgbnVsbHB0ciwgR0xfU1RB
VElDX0RSQVcpOworICAgIGdsQmluZEJ1ZmZlckJhc2UoR0xfVFJBTlNGT1JNX0ZFRURCQUNLX0JV
RkZFUiwgMCwgYnVmZmVyKTsKKworICAgIGdsQmVnaW5UcmFuc2Zvcm1GZWVkYmFjayhHTF9QT0lO
VFMpOworICAgIGdsUGF1c2VUcmFuc2Zvcm1GZWVkYmFjaygpOworICAgIGJ1ZmZlci5yZXNldCgp
OworICAgIGdsRHJhd0FycmF5cyhHTF9QT0lOVFMsIDAsIDEpOworfQorCiBHVEVTVF9BTExPV19V
TklOU1RBTlRJQVRFRF9QQVJBTUVURVJJWkVEX1RFU1QoVHJhbnNmb3JtRmVlZGJhY2tUZXN0KTsK
IEFOR0xFX0lOU1RBTlRJQVRFX1RFU1RfRVMzKFRyYW5zZm9ybUZlZWRiYWNrVGVzdCk7CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9nbF90ZXN0cy9WZXJ0
ZXhBdHRyaWJ1dGVUZXN0LmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9n
bF90ZXN0cy9WZXJ0ZXhBdHRyaWJ1dGVUZXN0LmNwcAppbmRleCA2ZGNmMDk2MjE0OWMwZDA3M2Fh
N2YzZmFmMTMwZDFkZWU2OTNlZjE0Li45NjMzYmQ1YTNmMGJiNGMxNzdmM2E3NTg1MmE3NWVjZjEz
OWViZmRlIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvZ2xf
dGVzdHMvVmVydGV4QXR0cmlidXRlVGVzdC5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvc3JjL3Rlc3RzL2dsX3Rlc3RzL1ZlcnRleEF0dHJpYnV0ZVRlc3QuY3BwCkBAIC0xNzI3LDYg
KzE3MjcsNzggQEAgdm9pZCBtYWluKCkKICAgICBFWFBFQ1RfUElYRUxfQ09MT1JfRVEoMCwgMCwg
R0xDb2xvcjo6eWVsbG93KTsKIH0KIAorLy8gVGVzdHMgdGhhdCB3ZSBkbyBub3QgZ2VuZXJhdGUg
YSBTSUdCVVMgZXJyb3Igb24gYXJtIHdoZW4gdHJhbnNsYXRpbmcgdW5hbGlnbmVkIGRhdGEuCisv
LyBHTF9SRzMyX1NOT1JNX0FOR0xFWCBpcyB1c2VkIHdoZW4gdXNpbmcgZ2xWZXJ0ZXhBdHRyaWJQ
b2ludGVyIHdpdGggY2VydGFpbiBwYXJhbWV0ZXJzLgorVEVTVF9QKFZlcnRleEF0dHJpYnV0ZVRl
c3RFUzMsIERyYXdXaXRoVW5hbGlnbmVkRGF0YSkKK3sKKyAgICAvLyBodHRwOi8vYW5nbGVidWcu
Y29tLzcwNjgKKyAgICBBTkdMRV9TS0lQX1RFU1RfSUYoSXNPU1goKSk7CisKKyAgICBjb25zdGV4
cHIgY2hhciBrVlNbXSA9IFIiKCN2ZXJzaW9uIDMwMCBlcworcHJlY2lzaW9uIGhpZ2hwIGZsb2F0
OworaW4gaGlnaHAgdmVjNCBhX3Bvc2l0aW9uOworaW4gaGlnaHAgaXZlYzIgYV9Db2xvclRlc3Q7
CitvdXQgaGlnaHAgdmVjMiB2X2NvbG9yVGVzdDsKKwordm9pZCBtYWluKCkgeworICAgIHZfY29s
b3JUZXN0ID0gdmVjMihhX0NvbG9yVGVzdCk7CisgICAgZ2xfUG9zaXRpb24gPSBhX3Bvc2l0aW9u
OworfSkiOworCisgICAgY29uc3RleHByIGNoYXIga0ZTW10gPSBSIigjdmVyc2lvbiAzMDAgZXMK
K3ByZWNpc2lvbiBoaWdocCBmbG9hdDsKK2luIGhpZ2hwIHZlYzIgdl9jb2xvclRlc3Q7CitvdXQg
dmVjNCBmcmFnQ29sb3I7CisKK3ZvaWQgbWFpbigpIHsKKyAgICBpZih2X2NvbG9yVGVzdC54ID4g
MC41KSB7CisgICAgICAgIGZyYWdDb2xvciA9IHZlYzQoMC4wLCAxLjAsIDAuMCwgMS4wKTsKKyAg
ICB9IGVsc2UgeworICAgICAgICBmcmFnQ29sb3IgPSB2ZWM0KDEuMCwgMC4wLCAwLjAsIDEuMCk7
CisgICAgfQorfSkiOworCisgICAgQU5HTEVfR0xfUFJPR1JBTShwcm9ncmFtLCBrVlMsIGtGUyk7
CisgICAgZ2xCaW5kQXR0cmliTG9jYXRpb24ocHJvZ3JhbSwgMCwgImFfcG9zaXRpb24iKTsKKyAg
ICBnbEJpbmRBdHRyaWJMb2NhdGlvbihwcm9ncmFtLCAxLCAiYV9Db2xvclRlc3QiKTsKKyAgICBn
bExpbmtQcm9ncmFtKHByb2dyYW0pOworICAgIGdsVXNlUHJvZ3JhbShwcm9ncmFtKTsKKyAgICBB
U1NFUlRfR0xfTk9fRVJST1IoKTsKKworICAgIGNvbnN0ZXhwciBzaXplX3Qga0RhdGFTaXplID0g
MTI7CisKKyAgICAvLyBJbml0aWFsaXplIHZlcnRleCBhdHRyaWJ1dGUgZGF0YSB3aXRoIDF1MzJz
LCBidXQgc2hpZnRlZCByaWdodCBieSBhIHZhcmlhYmxlIG51bWJlciBvZiBieXRlcworICAgIEdM
dWJ5dGUgY29sb3JUZXN0RGF0YVsoa0RhdGFTaXplICsgMSkgKiBzaXplb2YoR0x1aW50KV07CisK
KyAgICBmb3IgKHNpemVfdCBvZmZzZXQgPSAwOyBvZmZzZXQgPCBzaXplb2YoR0x1aW50KTsgb2Zm
c2V0KyspCisgICAgeworICAgICAgICBmb3IgKHNpemVfdCBkYXRhSW5kZXggPSAwOyBkYXRhSW5k
ZXggPCBrRGF0YVNpemUgKiBzaXplb2YoR0x1aW50KTsgZGF0YUluZGV4KyspCisgICAgICAgIHsK
KyAgICAgICAgICAgIGlmIChkYXRhSW5kZXggJSBzaXplb2YoR0x1aW50KSA9PSBzaXplb2YoR0x1
aW50KSAtIDEpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgY29sb3JUZXN0RGF0YVtk
YXRhSW5kZXggKyBvZmZzZXRdID0gMTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGVsc2UK
KyAgICAgICAgICAgIHsKKworICAgICAgICAgICAgICAgIGNvbG9yVGVzdERhdGFbZGF0YUluZGV4
ICsgb2Zmc2V0XSA9IDA7CisgICAgICAgICAgICB9CisgICAgICAgIH0KKworICAgICAgICBHTHVi
eXRlICpvZmZzZXRQdHIgPSAmY29sb3JUZXN0RGF0YVtvZmZzZXRdOworICAgICAgICBnbFZlcnRl
eEF0dHJpYlBvaW50ZXIoMSwgMiwgR0xfSU5ULCBHTF9UUlVFLCBzaXplb2YoR0x1aW50KSwgb2Zm
c2V0UHRyKTsKKworICAgICAgICBnbEJpbmRCdWZmZXIoR0xfQVJSQVlfQlVGRkVSLCAwKTsKKyAg
ICAgICAgZ2xFbmFibGVWZXJ0ZXhBdHRyaWJBcnJheSgxKTsKKworICAgICAgICBkcmF3SW5kZXhl
ZFF1YWQocHJvZ3JhbSwgImFfcG9zaXRpb24iLCAwLjVmLCAxLjBmLCBmYWxzZSwgdHJ1ZSk7CisK
KyAgICAgICAgLy8gVmVyaWZ5IGdyZWVuIHdhcyBkcmF3bi4KKyAgICAgICAgRVhQRUNUX1BJWEVM
X0NPTE9SX0VRKGdldFdpbmRvd1dpZHRoKCkgLSAxLCBnZXRXaW5kb3dIZWlnaHQoKSAtIDEsIEdM
Q29sb3I6OmdyZWVuKTsKKyAgICAgICAgQVNTRVJUX0dMX05PX0VSUk9SKCk7CisgICAgfQorfQor
CiAvLyBUZXN0cyB0aGF0IHJlbmRlcmluZyBpcyBmaW5lIGlmIEdMX0FOR0xFX3JlbGF4ZWRfdmVy
dGV4X2F0dHJpYnV0ZV90eXBlIGlzIGVuYWJsZWQKIC8vIGFuZCBtaXNtYXRjaGVkIGludGVnZXIg
c2lnbmVkbmVzcyBiZXR3ZWVuIHRoZSBwcm9ncmFtJ3MgYXR0cmlidXRlIHR5cGUgYW5kIHRoZQog
Ly8gYXR0cmlidXRlIHR5cGUgc3BlY2lmaWVkIGJ5IFZlcnRleEF0dHJpYklQb2ludGVyIGFyZSB1
c2VkLgpAQCAtMzk3NCw2ICs0MDQ2LDg1IEBAIFRFU1RfUChWZXJ0ZXhBdHRyaWJ1dGVUZXN0RVMz
LCBFbXB0eUFycmF5QnVmZmVyKQogICAgIHN3YXBCdWZmZXJzKCk7CiB9CiAKKy8vIFNldCBhbiBh
dHRyaWIgcG9pbnRlciBhbmQgZGVsZXRlIGl0J3MgYnVmZmVyIGFmdGVyIHVzYWdlLCB3aGlsZSBr
ZWVwaW5nIHRoZSB2ZXJ0ZXggYXJyYXkuCisvLyBUaGlzIHdpbGwgY2F1c2UgTUVDIHRvIGNhcHR1
cmUgYW4gaW52YWxpZCBhdHRyaWJ1dGUgcG9pbnRlciBhbmQgYWxzbyB0cmlnZ2VyCisvLyAiQ2xp
ZW50IGRhdGEgY2Fubm90IGJlIHVzZWQgd2l0aCBhIG5vbi1kZWZhdWx0IHZlcnRleCBhcnJheSBv
YmplY3QuIgorVEVTVF9QKFZlcnRleEF0dHJpYnV0ZVRlc3RFUzMsIEludmFsaWRBdHRyaWJQb2lu
dGVyKQoreworICAgIEdMVmVydGV4QXJyYXkgdmVydGV4QXJyYXk7CisgICAgZ2xCaW5kVmVydGV4
QXJyYXkodmVydGV4QXJyYXkpOworCisgICAgc3RkOjphcnJheTxHTGJ5dGUsIDEyPiB2ZXJ0ZXhE
YXRhID0gezEsIDIsIDMsIDQsIDUsIDYsIDcsIDgsIDksIDEwLCAxMSwgMTJ9OworCisgICAgewor
ICAgICAgICBHTEJ1ZmZlciB0b0JlRGVsZXRlZEFycmF5QnVmZmVyOworICAgICAgICBnbEJpbmRC
dWZmZXIoR0xfQVJSQVlfQlVGRkVSLCB0b0JlRGVsZXRlZEFycmF5QnVmZmVyKTsKKworICAgICAg
ICBnbEJ1ZmZlckRhdGEoR0xfQVJSQVlfQlVGRkVSLCB2ZXJ0ZXhEYXRhLnNpemUoKSwgdmVydGV4
RGF0YS5kYXRhKCksIEdMX0RZTkFNSUNfRFJBVyk7CisKKyAgICAgICAgZ2xFbmFibGVWZXJ0ZXhB
dHRyaWJBcnJheSgwKTsKKyAgICAgICAgZ2xFbmFibGVWZXJ0ZXhBdHRyaWJBcnJheSgxKTsKKwor
ICAgICAgICBnbFZlcnRleEF0dHJpYlBvaW50ZXIoMCwgMywgR0xfRkxPQVQsIEdMX0ZBTFNFLCA2
LCBudWxscHRyKTsKKyAgICAgICAgZ2xWZXJ0ZXhBdHRyaWJQb2ludGVyKDEsIDMsIEdMX0ZMT0FU
LCBHTF9GQUxTRSwgNiwgcmVpbnRlcnByZXRfY2FzdDxjb25zdCB2b2lkICo+KDYpKTsKKworICAg
ICAgICBnbEJpbmRCdWZmZXIoR0xfQVJSQVlfQlVGRkVSLCAwKTsKKyAgICAgICAgZ2xEaXNhYmxl
VmVydGV4QXR0cmliQXJyYXkoMCk7CisgICAgICAgIGdsRGlzYWJsZVZlcnRleEF0dHJpYkFycmF5
KDEpOworCisgICAgICAgIEVYUEVDVF9HTF9OT19FUlJPUigpOworICAgIH0KKworICAgIC8vIFNl
dCBhbiBhdHRyaWIgcG9pbnRlciB0aGF0IHdpbGwgYmUgYWN0dWFsbHkgcGlja2VkIHVwIGJ5IE1F
Qywgc2luY2UgdGhlIGJ1ZmZlciB3aWxsIGJlIGtlcHQuCisgICAgZ2xFbmFibGVWZXJ0ZXhBdHRy
aWJBcnJheSgwKTsKKworICAgIEdMQnVmZmVyIGFycmF5QnVmZmVyOworICAgIGdsQmluZEJ1ZmZl
cihHTF9BUlJBWV9CVUZGRVIsIGFycmF5QnVmZmVyKTsKKworICAgIGdsQnVmZmVyRGF0YShHTF9B
UlJBWV9CVUZGRVIsIHZlcnRleERhdGEuc2l6ZSgpLCB2ZXJ0ZXhEYXRhLmRhdGEoKSwgR0xfRFlO
QU1JQ19EUkFXKTsKKworICAgIGdsVmVydGV4QXR0cmliUG9pbnRlcigwLCAzLCBHTF9GTE9BVCwg
R0xfRkFMU0UsIDMsIHJlaW50ZXJwcmV0X2Nhc3Q8Y29uc3Qgdm9pZCAqPigzKSk7CisKKyAgICBF
WFBFQ1RfR0xfTk9fRVJST1IoKTsKKworICAgIC8vIFN3YXAgYSBmcmFtZSBmb3IgTUVDCisgICAg
c3dhcEJ1ZmZlcnMoKTsKKworICAgIGdsQmluZEJ1ZmZlcihHTF9BUlJBWV9CVUZGRVIsIDApOwor
ICAgIGdsRW5hYmxlVmVydGV4QXR0cmliQXJyYXkoMCk7Cit9CisKKy8vIFRlc3QgYmluZCBhbiBl
bXB0eSBidWZmZXIgZm9yIHZlcnRleCBhdHRyaWJ1dGUgZG9lcyBub3QgY3Jhc2gKK1RFU1RfUChW
ZXJ0ZXhBdHRyaWJ1dGVUZXN0RVMzLCBlbXB0eUJ1ZmZlcikKK3sKKyAgICBjb25zdGV4cHIgY2hh
ciB2czJbXSA9CisgICAgICAgIFIiKCN2ZXJzaW9uIDMwMCBlcworICAgICAgICAgICAgaW4gdXZl
YzQgYXR0cjA7CisgICAgICAgICAgICB2b2lkIG1haW4oKQorICAgICAgICAgICAgeworICAgICAg
ICAgICAgICAgIGdsX1Bvc2l0aW9uID0gdmVjNChhdHRyMC54LCAwLjAsIDAuMCwgMC4wKTsKKyAg
ICAgICAgICAgIH0pIjsKKyAgICBjb25zdGV4cHIgY2hhciBmc1tdID0KKyAgICAgICAgUiIoI3Zl
cnNpb24gMzAwIGVzCisgICAgICAgICAgICBwcmVjaXNpb24gaGlnaHAgZmxvYXQ7CisgICAgICAg
ICAgICBvdXQgdmVjNCBjb2xvcjsKKyAgICAgICAgICAgIHZvaWQgbWFpbigpCisgICAgICAgICAg
ICB7CisgICAgICAgICAgICAgICAgY29sb3IgPSB2ZWM0KDEuMCwgMC4wLCAwLjAsIDEuMCk7Cisg
ICAgICAgICAgICB9KSI7CisgICAgR0x1aW50IHByb2dyYW0yID0gQ29tcGlsZVByb2dyYW0odnMy
LCBmcyk7CisgICAgR0x1aW50IGJ1ZjsKKyAgICBnbEdlbkJ1ZmZlcnMoMSwgJmJ1Zik7CisgICAg
Z2xCaW5kQnVmZmVyKEdMX0FSUkFZX0JVRkZFUiwgYnVmKTsKKyAgICBnbEVuYWJsZVZlcnRleEF0
dHJpYkFycmF5KDApOworICAgIGdsVmVydGV4QXR0cmliSVBvaW50ZXIoMCwgNCwgR0xfVU5TSUdO
RURfQllURSwgMCwgMCk7CisgICAgZ2xWZXJ0ZXhBdHRyaWJEaXZpc29yKDAsIDIpOworICAgIGds
VXNlUHJvZ3JhbShwcm9ncmFtMik7CisgICAgZ2xEcmF3QXJyYXlzKEdMX1BPSU5UUywgMCwgMSk7
CisKKyAgICBzd2FwQnVmZmVycygpOworfQorCiAvLyBWQU8gZW11bGF0aW9uIGZhaWxzIG9uIE1h
YyBidXQgaXMgbm90IHVzZWQgb24gTWFjIGluIHRoZSB3aWxkLiBodHRwOi8vYW5nbGVidWcuY29t
LzU1NzcKICNpZiAhZGVmaW5lZChfX0FQUExFX18pCiAjICAgIGRlZmluZSBFTVVMQVRFRF9WQU9f
Q09ORklHUyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKZGlmZiAt
LWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9nbF90ZXN0cy9WdWxrYW5Q
ZXJmb3JtYW5jZUNvdW50ZXJUZXN0LmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90
ZXN0cy9nbF90ZXN0cy9WdWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJUZXN0LmNwcAppbmRleCBhYTg2
NDI0M2MwZDg1MDA2YzczNzlmOTI4ZmNmZTc3ZTFkNGE3NTlmLi43NmM1NGUxNGZiMTc4ZTJhZGZk
NzFhZmVlNzUzMWI3MDM1YThiNGYzIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zcmMvdGVzdHMvZ2xfdGVzdHMvVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdC5jcHAKKysr
IGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL2dsX3Rlc3RzL1Z1bGthblBlcmZv
cm1hbmNlQ291bnRlclRlc3QuY3BwCkBAIC0xNiwxMSArMTYsOSBAQAogLy8gQnV0ICdOb25lJyBp
cyBhbHNvIGRlZmluZWQgYXMgYSBudW1lcmljIGNvbnN0YW50IDBMIGluIDxYMTEvWC5oPi4KIC8v
IFNvIHdlIG5lZWQgdG8gaW5jbHVkZSBBTkdMRVRlc3QuaCBmaXJzdCB0byBhdm9pZCB0aGlzIGNv
bmZsaWN0LgogCi0jaW5jbHVkZSAibGliQU5HTEUvQ29udGV4dC5oIgotI2luY2x1ZGUgImxpYkFO
R0xFL2FuZ2xldHlwZXMuaCIKLSNpbmNsdWRlICJsaWJBTkdMRS9yZW5kZXJlci92dWxrYW4vQ29u
dGV4dFZrLmgiCiAjaW5jbHVkZSAidGVzdF91dGlscy9nbF9yYWlpLmgiCiAjaW5jbHVkZSAidXRp
bC9yYW5kb21fdXRpbHMuaCIKKyNpbmNsdWRlICJ1dGlsL3NoYWRlcl91dGlscy5oIgogCiB1c2lu
ZyBuYW1lc3BhY2UgYW5nbGU7CiAKQEAgLTQxLDE2ICszOSw2IEBAIGNsYXNzIFZ1bGthblBlcmZv
cm1hbmNlQ291bnRlclRlc3QgOiBwdWJsaWMgQU5HTEVUZXN0CiAgICAgICAgIHNldENvbmZpZ1N0
ZW5jaWxCaXRzKDgpOwogICAgIH0KIAotICAgIGNvbnN0IHJ4Ojp2azo6UGVyZkNvdW50ZXJzICZo
YWNrQU5HTEUoKSBjb25zdAotICAgIHsKLSAgICAgICAgLy8gSGFjayB0aGUgYW5nbGUhCi0gICAg
ICAgIGNvbnN0IGdsOjpDb250ZXh0ICpjb250ZXh0ID0gc3RhdGljX2Nhc3Q8Y29uc3QgZ2w6OkNv
bnRleHQgKj4oZ2V0RUdMV2luZG93KCktPmdldENvbnRleHQoKSk7Ci0gICAgICAgIHJ4OjpDb250
ZXh0VmsgKmNvbnRleHRWayAgID0gcng6OkdldEltcGxBczxyeDo6Q29udGV4dFZrPihjb250ZXh0
KTsKLSAgICAgICAgLy8gVGhpcyB3aWxsIGJlIGltcGxpY2l0bHkgY2FsbGVkIHdoZW4gdXNpbmcg
dGhlIGV4dGVuc2lvbi4KLSAgICAgICAgY29udGV4dFZrLT5zeW5jT2JqZWN0UGVyZkNvdW50ZXJz
KCk7Ci0gICAgICAgIHJldHVybiBjb250ZXh0VmstPmdldFBlcmZDb3VudGVycygpOwotICAgIH0K
LQogICAgIHN0YXRpYyBjb25zdGV4cHIgR0xzaXplaSBrSW52YWxpZGF0ZVRlc3RTaXplID0gMTY7
CiAKICAgICB2b2lkIHNldHVwQ2xlYXJBbmREcmF3Rm9ySW52YWxpZGF0ZVRlc3QoR0xQcm9ncmFt
ICpwcm9ncmFtLApAQCAtODgsNyArNzYsNyBAQCBjbGFzcyBWdWxrYW5QZXJmb3JtYW5jZUNvdW50
ZXJUZXN0IDogcHVibGljIEFOR0xFVGVzdAogICAgICAgICBBU1NFUlRfR0xfTk9fRVJST1IoKTsK
ICAgICB9CiAKLSAgICB2b2lkIHNldEV4cGVjdGVkQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChj
b25zdCByeDo6dms6OlBlcmZDb3VudGVycyAmY291bnRlcnMsCisgICAgdm9pZCBzZXRFeHBlY3Rl
ZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoY29uc3QgYW5nbGU6OlZ1bGthblBlcmZDb3VudGVy
cyAmY291bnRlcnMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgdWludDMyX3QgaW5jcmVtZW50YWxSZW5kZXJQYXNzZXMsCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgaW5jcmVtZW50YWxEZXB0aENsZWFy
cywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJf
dCBpbmNyZW1lbnRhbERlcHRoTG9hZHMsCkBAIC05Niw3ICs4NCw3IEBAIGNsYXNzIFZ1bGthblBl
cmZvcm1hbmNlQ291bnRlclRlc3QgOiBwdWJsaWMgQU5HTEVUZXN0CiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgaW5jcmVtZW50YWxTdGVuY2ls
Q2xlYXJzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVp
bnQzMl90IGluY3JlbWVudGFsU3RlbmNpbExvYWRzLAogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IGluY3JlbWVudGFsU3RlbmNpbFN0b3JlcywK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByeDo6dms6OlBl
cmZDb3VudGVycyAqZXhwZWN0ZWQpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgYW5nbGU6OlZ1bGthblBlcmZDb3VudGVycyAqZXhwZWN0ZWQpCiAgICAgewog
ICAgICAgICBleHBlY3RlZC0+cmVuZGVyUGFzc2VzICA9IGNvdW50ZXJzLnJlbmRlclBhc3NlcyAr
IGluY3JlbWVudGFsUmVuZGVyUGFzc2VzOwogICAgICAgICBleHBlY3RlZC0+ZGVwdGhDbGVhcnMg
ICA9IGNvdW50ZXJzLmRlcHRoQ2xlYXJzICsgaW5jcmVtZW50YWxEZXB0aENsZWFyczsKQEAgLTEw
Nyw4ICs5NSw4IEBAIGNsYXNzIFZ1bGthblBlcmZvcm1hbmNlQ291bnRlclRlc3QgOiBwdWJsaWMg
QU5HTEVUZXN0CiAgICAgICAgIGV4cGVjdGVkLT5zdGVuY2lsU3RvcmVzID0gY291bnRlcnMuc3Rl
bmNpbFN0b3JlcyArIGluY3JlbWVudGFsU3RlbmNpbFN0b3JlczsKICAgICB9CiAKLSAgICB2b2lk
IGNvbXBhcmVEZXB0aFN0ZW5jaWxDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGNvbnN0IHJ4Ojp2
azo6UGVyZkNvdW50ZXJzICZjb3VudGVycywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHJ4Ojp2azo6UGVyZkNvdW50ZXJzICZleHBl
Y3RlZCkKKyAgICB2b2lkIGNvbXBhcmVEZXB0aFN0ZW5jaWxDb3VudGVyc0ZvckludmFsaWRhdGVU
ZXN0KGNvbnN0IGFuZ2xlOjpWdWxrYW5QZXJmQ291bnRlcnMgJmNvdW50ZXJzLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgYW5nbGU6
OlZ1bGthblBlcmZDb3VudGVycyAmZXhwZWN0ZWQpCiAgICAgewogICAgICAgICBFWFBFQ1RfRVEo
ZXhwZWN0ZWQuZGVwdGhDbGVhcnMsIGNvdW50ZXJzLmRlcHRoQ2xlYXJzKTsKICAgICAgICAgRVhQ
RUNUX0VRKGV4cGVjdGVkLmRlcHRoTG9hZHMsIGNvdW50ZXJzLmRlcHRoTG9hZHMpOwpAQCAtMTE4
LDMwICsxMDYsMzAgQEAgY2xhc3MgVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdCA6IHB1Ymxp
YyBBTkdMRVRlc3QKICAgICAgICAgRVhQRUNUX0VRKGV4cGVjdGVkLnN0ZW5jaWxTdG9yZXMsIGNv
dW50ZXJzLnN0ZW5jaWxTdG9yZXMpOwogICAgIH0KIAotICAgIHZvaWQgc2V0QW5kSW5jcmVtZW50
TG9hZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoY29uc3Qgcng6OnZrOjpQZXJmQ291bnRlcnMg
JmNvdW50ZXJzLAorICAgIHZvaWQgc2V0QW5kSW5jcmVtZW50TG9hZENvdW50ZXJzRm9ySW52YWxp
ZGF0ZVRlc3QoY29uc3QgYW5nbGU6OlZ1bGthblBlcmZDb3VudGVycyAmY291bnRlcnMsCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJf
dCBpbmNyZW1lbnRhbERlcHRoTG9hZHMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBpbmNyZW1lbnRhbFN0ZW5jaWxMb2FkcywK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJ4
Ojp2azo6UGVyZkNvdW50ZXJzICpleHBlY3RlZCkKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFuZ2xlOjpWdWxrYW5QZXJmQ291bnRlcnMgKmV4
cGVjdGVkKQogICAgIHsKICAgICAgICAgZXhwZWN0ZWQtPmRlcHRoTG9hZHMgICA9IGNvdW50ZXJz
LmRlcHRoTG9hZHMgKyBpbmNyZW1lbnRhbERlcHRoTG9hZHM7CiAgICAgICAgIGV4cGVjdGVkLT5z
dGVuY2lsTG9hZHMgPSBjb3VudGVycy5zdGVuY2lsTG9hZHMgKyBpbmNyZW1lbnRhbFN0ZW5jaWxM
b2FkczsKICAgICB9CiAKLSAgICB2b2lkIGNvbXBhcmVMb2FkQ291bnRlcnNGb3JJbnZhbGlkYXRl
VGVzdChjb25zdCByeDo6dms6OlBlcmZDb3VudGVycyAmY291bnRlcnMsCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgcng6OnZrOjpQZXJmQ291bnRl
cnMgJmV4cGVjdGVkKQorICAgIHZvaWQgY29tcGFyZUxvYWRDb3VudGVyc0ZvckludmFsaWRhdGVU
ZXN0KGNvbnN0IGFuZ2xlOjpWdWxrYW5QZXJmQ291bnRlcnMgJmNvdW50ZXJzLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGFuZ2xlOjpWdWxrYW5Q
ZXJmQ291bnRlcnMgJmV4cGVjdGVkKQogICAgIHsKICAgICAgICAgRVhQRUNUX0VRKGV4cGVjdGVk
LmRlcHRoTG9hZHMsIGNvdW50ZXJzLmRlcHRoTG9hZHMpOwogICAgICAgICBFWFBFQ1RfRVEoZXhw
ZWN0ZWQuc3RlbmNpbExvYWRzLCBjb3VudGVycy5zdGVuY2lsTG9hZHMpOwogICAgIH0KIAotICAg
IHZvaWQgc2V0RXhwZWN0ZWRDb3VudGVyc0ZvclVucmVzb2x2ZVJlc29sdmVUZXN0KGNvbnN0IHJ4
Ojp2azo6UGVyZkNvdW50ZXJzICZjb3VudGVycywKKyAgICB2b2lkIHNldEV4cGVjdGVkQ291bnRl
cnNGb3JVbnJlc29sdmVSZXNvbHZlVGVzdChjb25zdCBhbmdsZTo6VnVsa2FuUGVyZkNvdW50ZXJz
ICZjb3VudGVycywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICB1aW50MzJfdCBpbmNyZW1lbnRhbENvbG9yQXR0YWNobWVudFVucmVzb2x2ZXMsCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMy
X3QgaW5jcmVtZW50YWxEZXB0aEF0dGFjaG1lbnRVbnJlc29sdmVzLAogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IGluY3JlbWVudGFs
U3RlbmNpbEF0dGFjaG1lbnRVbnJlc29sdmVzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IGluY3JlbWVudGFsQ29sb3JBdHRhY2ht
ZW50UmVzb2x2ZXMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgdWludDMyX3QgaW5jcmVtZW50YWxEZXB0aEF0dGFjaG1lbnRSZXNvbHZlcywKICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJf
dCBpbmNyZW1lbnRhbFN0ZW5jaWxBdHRhY2htZW50UmVzb2x2ZXMsCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcng6OnZrOjpQZXJmQ291bnRlcnMg
KmV4cGVjdGVkKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGFuZ2xlOjpWdWxrYW5QZXJmQ291bnRlcnMgKmV4cGVjdGVkKQogICAgIHsKICAgICAg
ICAgZXhwZWN0ZWQtPmNvbG9yQXR0YWNobWVudFVucmVzb2x2ZXMgPQogICAgICAgICAgICAgY291
bnRlcnMuY29sb3JBdHRhY2htZW50VW5yZXNvbHZlcyArIGluY3JlbWVudGFsQ29sb3JBdHRhY2ht
ZW50VW5yZXNvbHZlczsKQEAgLTE1Nyw4ICsxNDUsOCBAQCBjbGFzcyBWdWxrYW5QZXJmb3JtYW5j
ZUNvdW50ZXJUZXN0IDogcHVibGljIEFOR0xFVGVzdAogICAgICAgICAgICAgY291bnRlcnMuc3Rl
bmNpbEF0dGFjaG1lbnRSZXNvbHZlcyArIGluY3JlbWVudGFsU3RlbmNpbEF0dGFjaG1lbnRSZXNv
bHZlczsKICAgICB9CiAKLSAgICB2b2lkIGNvbXBhcmVDb3VudGVyc0ZvclVucmVzb2x2ZVJlc29s
dmVUZXN0KGNvbnN0IHJ4Ojp2azo6UGVyZkNvdW50ZXJzICZjb3VudGVycywKLSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHJ4Ojp2azo6UGVyZkNv
dW50ZXJzICZleHBlY3RlZCkKKyAgICB2b2lkIGNvbXBhcmVDb3VudGVyc0ZvclVucmVzb2x2ZVJl
c29sdmVUZXN0KGNvbnN0IGFuZ2xlOjpWdWxrYW5QZXJmQ291bnRlcnMgJmNvdW50ZXJzLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgYW5nbGU6
OlZ1bGthblBlcmZDb3VudGVycyAmZXhwZWN0ZWQpCiAgICAgewogICAgICAgICBFWFBFQ1RfRVEo
ZXhwZWN0ZWQuY29sb3JBdHRhY2htZW50VW5yZXNvbHZlcywgY291bnRlcnMuY29sb3JBdHRhY2ht
ZW50VW5yZXNvbHZlcyk7CiAgICAgICAgIEVYUEVDVF9FUShleHBlY3RlZC5kZXB0aEF0dGFjaG1l
bnRVbnJlc29sdmVzLCBjb3VudGVycy5kZXB0aEF0dGFjaG1lbnRVbnJlc29sdmVzKTsKQEAgLTE3
Miw2ICsxNjAsMTggQEAgY2xhc3MgVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdCA6IHB1Ymxp
YyBBTkdMRVRlc3QKICAgICAgICAgRVhQRUNUX0VRKGV4cGVjdGVkLmRlcHRoQXR0YWNobWVudFJl
c29sdmVzLCBjb3VudGVycy5kZXB0aEF0dGFjaG1lbnRSZXNvbHZlcyk7CiAgICAgICAgIEVYUEVD
VF9FUShleHBlY3RlZC5zdGVuY2lsQXR0YWNobWVudFJlc29sdmVzLCBjb3VudGVycy5zdGVuY2ls
QXR0YWNobWVudFJlc29sdmVzKTsKICAgICB9CisKKyAgICBhbmdsZTo6VnVsa2FuUGVyZkNvdW50
ZXJzIGdldFBlcmZDb3VudGVycygpCisgICAgeworICAgICAgICBpZiAobUluZGV4TWFwLmVtcHR5
KCkpCisgICAgICAgIHsKKyAgICAgICAgICAgIG1JbmRleE1hcCA9IEJ1aWxkQ291bnRlck5hbWVU
b0luZGV4TWFwKCk7CisgICAgICAgIH0KKworICAgICAgICByZXR1cm4gR2V0UGVyZkNvdW50ZXJz
KG1JbmRleE1hcCk7CisgICAgfQorCisgICAgQ291bnRlck5hbWVUb0luZGV4TWFwIG1JbmRleE1h
cDsKIH07CiAKIGNsYXNzIFZ1bGthblBlcmZvcm1hbmNlQ291bnRlclRlc3RfRVMzMSA6IHB1Ymxp
YyBWdWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJUZXN0CkBAIC0xOTAsNyArMTkwLDcgQEAgY2xhc3Mg
VnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdF9NU0FBIDogcHVibGljIFZ1bGthblBlcmZvcm1h
bmNlQ291bnRlclRlc3QKIC8vIFRlc3RzIHRoYXQgdGV4dHVyZSB1cGRhdGVzIHRvIHVudXNlZCB0
ZXh0dXJlcyBkb24ndCBicmVhayB0aGUgUlAuCiBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VDb3Vu
dGVyVGVzdCwgTmV3VGV4dHVyZURvZXNOb3RCcmVha1JlbmRlclBhc3MpCiB7Ci0gICAgY29uc3Qg
cng6OnZrOjpQZXJmQ291bnRlcnMgJmNvdW50ZXJzID0gaGFja0FOR0xFKCk7CisgICAgQU5HTEVf
U0tJUF9URVNUX0lGKCFJc0dMRXh0ZW5zaW9uRW5hYmxlZChrUGVyZk1vbml0b3JFeHRlbnNpb25O
YW1lKSk7CiAKICAgICBHTENvbG9yIGtJbml0aWFsRGF0YVs0XSA9IHtHTENvbG9yOjpyZWQsIEdM
Q29sb3I6OmJsdWUsIEdMQ29sb3I6OmdyZWVuLCBHTENvbG9yOjp5ZWxsb3d9OwogCkBAIC0yMjAs
NyArMjIwLDggQEAgVEVTVF9QKFZ1bGthblBlcmZvcm1hbmNlQ291bnRlclRlc3QsIE5ld1RleHR1
cmVEb2VzTm90QnJlYWtSZW5kZXJQYXNzKQogCiAgICAgZ2xEcmF3QXJyYXlzKEdMX1RSSUFOR0xF
UywgMCwgNik7CiAgICAgQVNTRVJUX0dMX05PX0VSUk9SKCk7Ci0gICAgdWludDMyX3QgZXhwZWN0
ZWRSZW5kZXJQYXNzQ291bnQgPSBjb3VudGVycy5yZW5kZXJQYXNzZXM7CisKKyAgICB1aW50MzJf
dCBleHBlY3RlZFJlbmRlclBhc3NDb3VudCA9IGdldFBlcmZDb3VudGVycygpLnJlbmRlclBhc3Nl
czsKIAogICAgIC8vIFN0ZXAgMjogSW50cm9kdWNlIGEgbmV3IDJEIFRleHR1cmUgd2l0aCB0aGUg
c2FtZSBQcm9ncmFtIGFuZCBGcmFtZWJ1ZmZlci4KICAgICBHTFRleHR1cmUgbmV3VGV4dHVyZTsK
QEAgLTIzMiwxNCArMjMzLDgwIEBAIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJUZXN0
LCBOZXdUZXh0dXJlRG9lc05vdEJyZWFrUmVuZGVyUGFzcykKICAgICBnbERyYXdBcnJheXMoR0xf
VFJJQU5HTEVTLCAwLCA2KTsKICAgICBBU1NFUlRfR0xfTk9fRVJST1IoKTsKIAotICAgIHVpbnQz
Ml90IGFjdHVhbFJlbmRlclBhc3NDb3VudCA9IGNvdW50ZXJzLnJlbmRlclBhc3NlczsKKyAgICB1
aW50MzJfdCBhY3R1YWxSZW5kZXJQYXNzQ291bnQgPSBnZXRQZXJmQ291bnRlcnMoKS5yZW5kZXJQ
YXNzZXM7CiAgICAgRVhQRUNUX0VRKGV4cGVjdGVkUmVuZGVyUGFzc0NvdW50LCBhY3R1YWxSZW5k
ZXJQYXNzQ291bnQpOwogfQogCisvLyBUZXN0cyB0aGF0IHN1Ym1pdHRpbmcgdGhlIG91dHNpZGUg
Y29tbWFuZCBidWZmZXIgZHVlIHRvIHRleHR1cmUgdXBsb2FkIHNpemUgZG9lcyBub3QgYnJlYWsg
dGhlCisvLyBjdXJyZW50IHJlbmRlciBwYXNzLgorVEVTVF9QKFZ1bGthblBlcmZvcm1hbmNlQ291
bnRlclRlc3QsIFN1Ym1pdHRpbmdPdXRzaWRlQ29tbWFuZEJ1ZmZlckRvZXNOb3RCcmVha1JlbmRl
clBhc3MpCit7CisgICAgLy8gaHR0cDovL2FuZ2xlYnVnLmNvbS82MzU0CisKKyAgICBzaXplX3Qg
a01heEJ1ZmZlclRvSW1hZ2VDb3B5U2l6ZSAgPSAxIDw8IDI4OworICAgIHVpbnQzMl90IGtOdW1T
dWJtaXRzICAgICAgICAgICAgICA9IDI7CisgICAgdWludDMyX3QgZXhwZWN0ZWRSZW5kZXJQYXNz
Q291bnQgID0gZ2V0UGVyZkNvdW50ZXJzKCkucmVuZGVyUGFzc2VzICsgMTsKKyAgICB1aW50MzJf
dCBleHBlY3RlZFN1Ym1pdEZyYW1lQ291bnQgPSBnZXRQZXJmQ291bnRlcnMoKS5zdWJtaXR0ZWRG
cmFtZXMgKyBrTnVtU3VibWl0czsKKworICAgIC8vIFN0ZXAgMTogU2V0IHVwIGEgc2ltcGxlIDJE
IHRleHR1cmUuCisgICAgR0xUZXh0dXJlIHRleHR1cmU7CisgICAgR0xzaXplaSB0ZXhEaW0gICAg
ICAgICA9IDI1NjsKKyAgICB1aW50MzJfdCBwaXhlbFNpemVSR0JBID0gNDsKKyAgICB1aW50MzJf
dCB0ZXh0dXJlU2l6ZSAgID0gdGV4RGltICogdGV4RGltICogcGl4ZWxTaXplUkdCQTsKKyAgICBz
dGQ6OnZlY3RvcjxHTENvbG9yPiBrSW5pdGlhbERhdGEodGV4RGltICogdGV4RGltLCBHTENvbG9y
OjpncmVlbik7CisKKyAgICBnbEJpbmRUZXh0dXJlKEdMX1RFWFRVUkVfMkQsIHRleHR1cmUpOwor
ICAgIGdsVGV4SW1hZ2UyRChHTF9URVhUVVJFXzJELCAwLCBHTF9SR0JBLCB0ZXhEaW0sIHRleERp
bSwgMCwgR0xfUkdCQSwgR0xfVU5TSUdORURfQllURSwKKyAgICAgICAgICAgICAgICAga0luaXRp
YWxEYXRhLmRhdGEoKSk7CisgICAgZ2xUZXhQYXJhbWV0ZXJpKEdMX1RFWFRVUkVfMkQsIEdMX1RF
WFRVUkVfTUlOX0ZJTFRFUiwgR0xfTkVBUkVTVCk7CisgICAgZ2xUZXhQYXJhbWV0ZXJpKEdMX1RF
WFRVUkVfMkQsIEdMX1RFWFRVUkVfTUFHX0ZJTFRFUiwgR0xfTkVBUkVTVCk7CisKKyAgICBhdXRv
IHF1YWRWZXJ0cyA9IEdldFF1YWRWZXJ0aWNlcygpOworCisgICAgR0xCdWZmZXIgdmVydGV4QnVm
ZmVyOworICAgIGdsQmluZEJ1ZmZlcihHTF9BUlJBWV9CVUZGRVIsIHZlcnRleEJ1ZmZlcik7Cisg
ICAgZ2xCdWZmZXJEYXRhKEdMX0FSUkFZX0JVRkZFUiwgcXVhZFZlcnRzLnNpemUoKSAqIHNpemVv
ZihxdWFkVmVydHNbMF0pLCBxdWFkVmVydHMuZGF0YSgpLAorICAgICAgICAgICAgICAgICBHTF9T
VEFUSUNfRFJBVyk7CisKKyAgICBBTkdMRV9HTF9QUk9HUkFNKHByb2dyYW0sIGVzc2wxX3NoYWRl
cnM6OnZzOjpUZXh0dXJlMkQoKSwgZXNzbDFfc2hhZGVyczo6ZnM6OlRleHR1cmUyRCgpKTsKKyAg
ICBnbFVzZVByb2dyYW0ocHJvZ3JhbSk7CisKKyAgICBHTGludCBwb3NMb2MgPSBnbEdldEF0dHJp
YkxvY2F0aW9uKHByb2dyYW0sIGVzc2wxX3NoYWRlcnM6OlBvc2l0aW9uQXR0cmliKCkpOworICAg
IEFTU0VSVF9ORSgtMSwgcG9zTG9jKTsKKworICAgIGdsVmVydGV4QXR0cmliUG9pbnRlcihwb3NM
b2MsIDMsIEdMX0ZMT0FULCBHTF9GQUxTRSwgMCwgbnVsbHB0cik7CisgICAgZ2xFbmFibGVWZXJ0
ZXhBdHRyaWJBcnJheShwb3NMb2MpOworICAgIEFTU0VSVF9HTF9OT19FUlJPUigpOworCisgICAg
Z2xEcmF3QXJyYXlzKEdMX1RSSUFOR0xFUywgMCwgNik7CisgICAgQVNTRVJUX0dMX05PX0VSUk9S
KCk7CisKKyAgICAvLyBTdGVwIDI6IExvYWQgYSBuZXcgMkQgVGV4dHVyZSBtdWx0aXBsZSB0aW1l
cyB3aXRoIHRoZSBzYW1lIFByb2dyYW0gYW5kIEZyYW1lYnVmZmVyLiBUaGUgdG90YWwKKyAgICAv
LyBzaXplIG9mIHRoZSBsb2FkZWQgdGV4dHVyZXMgbXVzdCBleGNlZWQgdGhlIHRocmVzaG9sZCB0
byBzdWJtaXQgdGhlIG91dHNpZGUgY29tbWFuZCBidWZmZXIuCisgICAgYXV0byBtYXhMb2FkQ291
bnQgPQorICAgICAgICBzdGF0aWNfY2FzdDxzaXplX3Q+KChrTWF4QnVmZmVyVG9JbWFnZUNvcHlT
aXplIC8gdGV4dHVyZVNpemUpICoga051bVN1Ym1pdHMgKyAxKTsKKyAgICBmb3IgKHNpemVfdCBs
b2FkQ291bnQgPSAwOyBsb2FkQ291bnQgPCBtYXhMb2FkQ291bnQ7IGxvYWRDb3VudCsrKQorICAg
IHsKKyAgICAgICAgR0xUZXh0dXJlIG5ld1RleHR1cmU7CisgICAgICAgIGdsQmluZFRleHR1cmUo
R0xfVEVYVFVSRV8yRCwgbmV3VGV4dHVyZSk7CisgICAgICAgIGdsVGV4SW1hZ2UyRChHTF9URVhU
VVJFXzJELCAwLCBHTF9SR0JBLCB0ZXhEaW0sIHRleERpbSwgMCwgR0xfUkdCQSwgR0xfVU5TSUdO
RURfQllURSwKKyAgICAgICAgICAgICAgICAgICAgIGtJbml0aWFsRGF0YS5kYXRhKCkpOworICAg
ICAgICBnbFRleFBhcmFtZXRlcmkoR0xfVEVYVFVSRV8yRCwgR0xfVEVYVFVSRV9NSU5fRklMVEVS
LCBHTF9ORUFSRVNUKTsKKyAgICAgICAgZ2xUZXhQYXJhbWV0ZXJpKEdMX1RFWFRVUkVfMkQsIEdM
X1RFWFRVUkVfTUFHX0ZJTFRFUiwgR0xfTkVBUkVTVCk7CisKKyAgICAgICAgZ2xEcmF3QXJyYXlz
KEdMX1RSSUFOR0xFUywgMCwgNik7CisgICAgICAgIEFTU0VSVF9HTF9OT19FUlJPUigpOworICAg
IH0KKworICAgIC8vIFZlcmlmeSByZW5kZXIgcGFzcyBhbmQgc3VibWl0dGVkIGZyYW1lIGNvdW50
cy4KKyAgICBFWFBFQ1RfRVEoZ2V0UGVyZkNvdW50ZXJzKCkucmVuZGVyUGFzc2VzLCBleHBlY3Rl
ZFJlbmRlclBhc3NDb3VudCk7CisgICAgRVhQRUNUX0VRKGdldFBlcmZDb3VudGVycygpLnN1Ym1p
dHRlZEZyYW1lcywgZXhwZWN0ZWRTdWJtaXRGcmFtZUNvdW50KTsKK30KKwogLy8gVGVzdHMgdGhh
dCBSR0IgdGV4dHVyZSBzaG91bGQgbm90IGJyZWFrIHJlbmRlcnBhc3MuCiBURVNUX1AoVnVsa2Fu
UGVyZm9ybWFuY2VDb3VudGVyVGVzdCwgU2FtcGxlRnJvbVJHQlRleHR1cmVEb2VzTm90QnJlYWtS
ZW5kZXJQYXNzKQogewotICAgIGNvbnN0IHJ4Ojp2azo6UGVyZkNvdW50ZXJzICZjb3VudGVycyA9
IGhhY2tBTkdMRSgpOworICAgIEFOR0xFX1NLSVBfVEVTVF9JRighSXNHTEV4dGVuc2lvbkVuYWJs
ZWQoa1BlcmZNb25pdG9yRXh0ZW5zaW9uTmFtZSkpOwogCiAgICAgQU5HTEVfR0xfUFJPR1JBTShw
cm9ncmFtLCBlc3NsMV9zaGFkZXJzOjp2czo6VGV4dHVyZTJEKCksIGVzc2wxX3NoYWRlcnM6OmZz
OjpUZXh0dXJlMkQoKSk7CiAgICAgZ2xVc2VQcm9ncmFtKHByb2dyYW0pOwpAQCAtMjYyLDcgKzMy
OSw3IEBAIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJUZXN0LCBTYW1wbGVGcm9tUkdC
VGV4dHVyZURvZXNOb3RCcmVha1JlbmRlclBhc3MpCiAgICAgZ2xUZXhQYXJhbWV0ZXJpKEdMX1RF
WFRVUkVfMkQsIEdMX1RFWFRVUkVfTUlOX0ZJTFRFUiwgR0xfTElORUFSX01JUE1BUF9MSU5FQVIp
OwogICAgIGdsVGV4UGFyYW1ldGVyaShHTF9URVhUVVJFXzJELCBHTF9URVhUVVJFX01BR19GSUxU
RVIsIEdMX0xJTkVBUik7CiAKLSAgICB1aW50MzJfdCBleHBlY3RlZFJlbmRlclBhc3NDb3VudCA9
IGNvdW50ZXJzLnJlbmRlclBhc3NlcyArIDE7CisgICAgdWludDMyX3QgZXhwZWN0ZWRSZW5kZXJQ
YXNzQ291bnQgPSBnZXRQZXJmQ291bnRlcnMoKS5yZW5kZXJQYXNzZXMgKyAxOwogCiAgICAgLy8g
Rmlyc3QgZHJhdyB3aXRoIHRleHR1cmVSR0JBIHdoaWNoIHNob3VsZCBzdGFydCB0aGUgcmVuZGVy
cGFzcwogICAgIGdsQ2xlYXIoR0xfQ09MT1JfQlVGRkVSX0JJVCB8IEdMX0RFUFRIX0JVRkZFUl9C
SVQpOwpAQCAtMjc1LDE0ICszNDIsMTQgQEAgVEVTVF9QKFZ1bGthblBlcmZvcm1hbmNlQ291bnRl
clRlc3QsIFNhbXBsZUZyb21SR0JUZXh0dXJlRG9lc05vdEJyZWFrUmVuZGVyUGFzcykKICAgICBk
cmF3UXVhZChwcm9ncmFtLCBlc3NsMV9zaGFkZXJzOjpQb3NpdGlvbkF0dHJpYigpLCAwLjVmKTsK
ICAgICBBU1NFUlRfR0xfTk9fRVJST1IoKTsKIAotICAgIHVpbnQzMl90IGFjdHVhbFJlbmRlclBh
c3NDb3VudCA9IGNvdW50ZXJzLnJlbmRlclBhc3NlczsKKyAgICB1aW50MzJfdCBhY3R1YWxSZW5k
ZXJQYXNzQ291bnQgPSBnZXRQZXJmQ291bnRlcnMoKS5yZW5kZXJQYXNzZXM7CiAgICAgRVhQRUNU
X0VRKGV4cGVjdGVkUmVuZGVyUGFzc0NvdW50LCBhY3R1YWxSZW5kZXJQYXNzQ291bnQpOwogfQog
CiAvLyBUZXN0cyB0aGF0IFJHQiB0ZXh0dXJlIHNob3VsZCBub3QgYnJlYWsgcmVuZGVycGFzcy4K
LVRFU1RfUChWdWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJUZXN0LCByZW5kZXJUb1JHQlRleHR1cmVE
b2VzTm90QnJlYWtSZW5kZXJQYXNzKQorVEVTVF9QKFZ1bGthblBlcmZvcm1hbmNlQ291bnRlclRl
c3QsIFJlbmRlclRvUkdCVGV4dHVyZURvZXNOb3RCcmVha1JlbmRlclBhc3MpCiB7Ci0gICAgY29u
c3Qgcng6OnZrOjpQZXJmQ291bnRlcnMgJmNvdW50ZXJzID0gaGFja0FOR0xFKCk7CisgICAgQU5H
TEVfU0tJUF9URVNUX0lGKCFJc0dMRXh0ZW5zaW9uRW5hYmxlZChrUGVyZk1vbml0b3JFeHRlbnNp
b25OYW1lKSk7CiAKICAgICBBTkdMRV9HTF9QUk9HUkFNKHByb2dyYW0sIGVzc2wxX3NoYWRlcnM6
OnZzOjpQYXNzdGhyb3VnaCgpLCBlc3NsMV9zaGFkZXJzOjpmczo6VW5pZm9ybUNvbG9yKCkpOwog
ICAgIGdsVXNlUHJvZ3JhbShwcm9ncmFtKTsKQEAgLTMwNCw3ICszNzEsNyBAQCBURVNUX1AoVnVs
a2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdCwgcmVuZGVyVG9SR0JUZXh0dXJlRG9lc05vdEJyZWFr
UmVuZGVyUGFzcykKICAgICBBU1NFUlRfR0xfRlJBTUVCVUZGRVJfQ09NUExFVEUoR0xfRlJBTUVC
VUZGRVIpOwogICAgIEFTU0VSVF9HTF9OT19FUlJPUigpOwogCi0gICAgdWludDMyX3QgZXhwZWN0
ZWRSZW5kZXJQYXNzQ291bnQgPSBjb3VudGVycy5yZW5kZXJQYXNzZXMgKyAxOworICAgIHVpbnQz
Ml90IGV4cGVjdGVkUmVuZGVyUGFzc0NvdW50ID0gZ2V0UGVyZkNvdW50ZXJzKCkucmVuZGVyUGFz
c2VzICsgMTsKIAogICAgIC8vIERyYXcgaW50byBGQk8KICAgICBnbEJpbmRGcmFtZWJ1ZmZlcihH
TF9GUkFNRUJVRkZFUiwgZnJhbWVidWZmZXIpOwpAQCAtMzE0LDE0ICszODEsMTQgQEAgVEVTVF9Q
KFZ1bGthblBlcmZvcm1hbmNlQ291bnRlclRlc3QsIHJlbmRlclRvUkdCVGV4dHVyZURvZXNOb3RC
cmVha1JlbmRlclBhc3MpCiAgICAgZ2xVbmlmb3JtNGZ2KGNvbG9yVW5pZm9ybUxvY2F0aW9uLCAx
LCBHTENvbG9yOjpibHVlLnRvTm9ybWFsaXplZFZlY3RvcigpLmRhdGEoKSk7CiAgICAgZHJhd1F1
YWQocHJvZ3JhbSwgZXNzbDFfc2hhZGVyczo6UG9zaXRpb25BdHRyaWIoKSwgMC41Zik7CiAKLSAg
ICB1aW50MzJfdCBhY3R1YWxSZW5kZXJQYXNzQ291bnQgPSBjb3VudGVycy5yZW5kZXJQYXNzZXM7
CisgICAgdWludDMyX3QgYWN0dWFsUmVuZGVyUGFzc0NvdW50ID0gZ2V0UGVyZkNvdW50ZXJzKCku
cmVuZGVyUGFzc2VzOwogICAgIEVYUEVDVF9FUShleHBlY3RlZFJlbmRlclBhc3NDb3VudCwgYWN0
dWFsUmVuZGVyUGFzc0NvdW50KTsKIH0KIAogLy8gVGVzdHMgdGhhdCBjaGFuZ2luZyBhIFRleHR1
cmUncyBtYXggbGV2ZWwgaGl0cyB0aGUgZGVzY3JpcHRvciBzZXQgY2FjaGUuCiBURVNUX1AoVnVs
a2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdCwgQ2hhbmdpbmdNYXhMZXZlbEhpdHNEZXNjcmlwdG9y
Q2FjaGUpCiB7Ci0gICAgY29uc3Qgcng6OnZrOjpQZXJmQ291bnRlcnMgJmNvdW50ZXJzID0gaGFj
a0FOR0xFKCk7CisgICAgQU5HTEVfU0tJUF9URVNUX0lGKCFJc0dMRXh0ZW5zaW9uRW5hYmxlZChr
UGVyZk1vbml0b3JFeHRlbnNpb25OYW1lKSk7CiAKICAgICBHTENvbG9yIGtJbml0aWFsRGF0YVs0
XSA9IHtHTENvbG9yOjpyZWQsIEdMQ29sb3I6OmJsdWUsIEdMQ29sb3I6OmdyZWVuLCBHTENvbG9y
Ojp5ZWxsb3d9OwogCkBAIC0zNTksMjAgKzQyNiwyMiBAQCBURVNUX1AoVnVsa2FuUGVyZm9ybWFu
Y2VDb3VudGVyVGVzdCwgQ2hhbmdpbmdNYXhMZXZlbEhpdHNEZXNjcmlwdG9yQ2FjaGUpCiAgICAg
Z2xEcmF3QXJyYXlzKEdMX1RSSUFOR0xFUywgMCwgNik7CiAgICAgQVNTRVJUX0dMX05PX0VSUk9S
KCk7CiAKLSAgICB1aW50MzJfdCBleHBlY3RlZFdyaXRlRGVzY3JpcHRvclNldENvdW50ID0gY291
bnRlcnMud3JpdGVEZXNjcmlwdG9yU2V0czsKKyAgICB1aW50MzJfdCBleHBlY3RlZFdyaXRlRGVz
Y3JpcHRvclNldENvdW50ID0gZ2V0UGVyZkNvdW50ZXJzKCkud3JpdGVEZXNjcmlwdG9yU2V0czsK
IAogICAgIC8vIFN0ZXAgMzogQ2hhbmdlIG1heCBsZXZlbCBiYWNrIHRvIG9yaWdpbmFsIHZhbHVl
IGFuZCB2ZXJpZnkgd2UgaGl0IHRoZSBjYWNoZS4KICAgICBnbFRleFBhcmFtZXRlcmkoR0xfVEVY
VFVSRV8yRCwgR0xfVEVYVFVSRV9NQVhfTEVWRUwsIDEpOwogICAgIGdsRHJhd0FycmF5cyhHTF9U
UklBTkdMRVMsIDAsIDYpOwogICAgIEFTU0VSVF9HTF9OT19FUlJPUigpOwogCi0gICAgdWludDMy
X3QgYWN0dWFsV3JpdGVEZXNjcmlwdG9yU2V0Q291bnQgPSBjb3VudGVycy53cml0ZURlc2NyaXB0
b3JTZXRzOworICAgIHVpbnQzMl90IGFjdHVhbFdyaXRlRGVzY3JpcHRvclNldENvdW50ID0gZ2V0
UGVyZkNvdW50ZXJzKCkud3JpdGVEZXNjcmlwdG9yU2V0czsKICAgICBFWFBFQ1RfRVEoZXhwZWN0
ZWRXcml0ZURlc2NyaXB0b3JTZXRDb3VudCwgYWN0dWFsV3JpdGVEZXNjcmlwdG9yU2V0Q291bnQp
OwogfQogCiAvLyBUZXN0cyB0aGF0IHR3byBnbENvcHlCdWZmZXJTdWJEYXRhIGNvbW1hbmRzIGNh
biBzaGFyZSBhIGJhcnJpZXIuCiBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdCwg
SW5kZXBlbmRlbnRCdWZmZXJDb3BpZXNTaGFyZVNpbmdsZUJhcnJpZXIpCiB7CisgICAgQU5HTEVf
U0tJUF9URVNUX0lGKCFJc0dMRXh0ZW5zaW9uRW5hYmxlZChrUGVyZk1vbml0b3JFeHRlbnNpb25O
YW1lKSk7CisKICAgICBjb25zdGV4cHIgR0xpbnQgc3JjRGF0YUFbXSA9IHsxLCAyLCAzLCA0fTsK
ICAgICBjb25zdGV4cHIgR0xpbnQgc3JjRGF0YUJbXSA9IHs1LCA2LCA3LCA4fTsKIApAQCAtMzk0
LDggKzQ2Myw3IEBAIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJUZXN0LCBJbmRlcGVu
ZGVudEJ1ZmZlckNvcGllc1NoYXJlU2luZ2xlQmFycmllcikKICAgICBnbEJ1ZmZlckRhdGEoR0xf
Q09QWV9XUklURV9CVUZGRVIsIHNpemVvZihzcmNEYXRhQlswXSkgKiAyLCBudWxscHRyLCBHTF9T
VEFUSUNfQ09QWSk7CiAKICAgICAvLyBXZSBleHBlY3QgdGhhdCBBTkdMRSBnZW5lcmF0ZSB6ZXJv
IGFkZGl0aW9uYWwgY29tbWFuZCBidWZmZXJzLgotICAgIGNvbnN0IHJ4Ojp2azo6UGVyZkNvdW50
ZXJzICZjb3VudGVycyA9IGhhY2tBTkdMRSgpOwotICAgIHVpbnQzMl90IGV4cGVjdGVkRmx1c2hD
b3VudCAgICAgICAgICA9IGNvdW50ZXJzLmZsdXNoZWRPdXRzaWRlUmVuZGVyUGFzc0NvbW1hbmRC
dWZmZXJzOworICAgIHVpbnQzMl90IGV4cGVjdGVkRmx1c2hDb3VudCA9IGdldFBlcmZDb3VudGVy
cygpLmZsdXNoZWRPdXRzaWRlUmVuZGVyUGFzc0NvbW1hbmRCdWZmZXJzOwogCiAgICAgLy8gU3Rl
cCAyOiBEbyB0aGUgdHdvIGNvcGllcy4KICAgICBnbEJpbmRCdWZmZXIoR0xfQ09QWV9SRUFEX0JV
RkZFUiwgc3JjQSk7CkBAIC00MTAsNyArNDc4LDcgQEAgVEVTVF9QKFZ1bGthblBlcmZvcm1hbmNl
Q291bnRlclRlc3QsIEluZGVwZW5kZW50QnVmZmVyQ29waWVzU2hhcmVTaW5nbGVCYXJyaWVyKQog
CiAgICAgQVNTRVJUX0dMX05PX0VSUk9SKCk7CiAKLSAgICB1aW50MzJfdCBhY3R1YWxGbHVzaENv
dW50ID0gY291bnRlcnMuZmx1c2hlZE91dHNpZGVSZW5kZXJQYXNzQ29tbWFuZEJ1ZmZlcnM7Cisg
ICAgdWludDMyX3QgYWN0dWFsRmx1c2hDb3VudCA9IGdldFBlcmZDb3VudGVycygpLmZsdXNoZWRP
dXRzaWRlUmVuZGVyUGFzc0NvbW1hbmRCdWZmZXJzOwogICAgIEVYUEVDVF9FUShleHBlY3RlZEZs
dXNoQ291bnQsIGFjdHVhbEZsdXNoQ291bnQpOwogfQogCkBAIC00MTgsNiArNDg2LDggQEAgVEVT
VF9QKFZ1bGthblBlcmZvcm1hbmNlQ291bnRlclRlc3QsIEluZGVwZW5kZW50QnVmZmVyQ29waWVz
U2hhcmVTaW5nbGVCYXJyaWVyKQogLy8gdXNlZAogVEVTVF9QKFZ1bGthblBlcmZvcm1hbmNlQ291
bnRlclRlc3RfRVMzMSwgTXVsdGlzYW1wbGVSZXNvbHZlV2l0aEJsaXQpCiB7CisgICAgQU5HTEVf
U0tJUF9URVNUX0lGKCFJc0dMRXh0ZW5zaW9uRW5hYmxlZChrUGVyZk1vbml0b3JFeHRlbnNpb25O
YW1lKSk7CisKICAgICBjb25zdGV4cHIgaW50IGtTaXplID0gMTY7CiAgICAgZ2xWaWV3cG9ydCgw
LCAwLCBrU2l6ZSwga1NpemUpOwogCkBAIC00NTUsOCArNTI1LDcgQEAgVEVTVF9QKFZ1bGthblBl
cmZvcm1hbmNlQ291bnRlclRlc3RfRVMzMSwgTXVsdGlzYW1wbGVSZXNvbHZlV2l0aEJsaXQpCiAg
ICAgZ2xCbGl0RnJhbWVidWZmZXIoMCwgMCwga1NpemUsIGtTaXplLCAwLCAwLCBrU2l6ZSwga1Np
emUsIEdMX0NPTE9SX0JVRkZFUl9CSVQsIEdMX05FQVJFU1QpOwogICAgIEFTU0VSVF9HTF9OT19F
UlJPUigpOwogCi0gICAgY29uc3Qgcng6OnZrOjpQZXJmQ291bnRlcnMgJmNvdW50ZXJzID0gaGFj
a0FOR0xFKCk7Ci0gICAgRVhQRUNUX0VRKGNvdW50ZXJzLnJlc29sdmVJbWFnZUNvbW1hbmRzLCAw
dSk7CisgICAgRVhQRUNUX0VRKGdldFBlcmZDb3VudGVycygpLnJlc29sdmVJbWFnZUNvbW1hbmRz
LCAwdSk7CiAKICAgICBnbEJpbmRGcmFtZWJ1ZmZlcihHTF9SRUFEX0ZSQU1FQlVGRkVSLCByZXNv
bHZlRkJPKTsKICAgICBjb25zdGV4cHIgdWludDhfdCBrSGFsZlBpeGVsR3JhZGllbnQgPSAyNTYg
LyBrU2l6ZSAvIDI7CkBAIC00NzAsNyArNTM5LDcgQEAgVEVTVF9QKFZ1bGthblBlcmZvcm1hbmNl
Q291bnRlclRlc3RfRVMzMSwgTXVsdGlzYW1wbGVSZXNvbHZlV2l0aEJsaXQpCiAvLyBFbnN1cmVz
IGEgcmVhZC1vbmx5IGRlcHRoLXN0ZW5jaWwgZmVlZGJhY2sgbG9vcCB3b3JrcyBpbiBhIHNpbmds
ZSBSZW5kZXJQYXNzLgogVEVTVF9QKFZ1bGthblBlcmZvcm1hbmNlQ291bnRlclRlc3QsIFJlYWRP
bmx5RGVwdGhTdGVuY2lsRmVlZGJhY2tMb29wVXNlc1NpbmdsZVJlbmRlclBhc3MpCiB7Ci0gICAg
Y29uc3Qgcng6OnZrOjpQZXJmQ291bnRlcnMgJmNvdW50ZXJzID0gaGFja0FOR0xFKCk7CisgICAg
QU5HTEVfU0tJUF9URVNUX0lGKCFJc0dMRXh0ZW5zaW9uRW5hYmxlZChrUGVyZk1vbml0b3JFeHRl
bnNpb25OYW1lKSk7CiAKICAgICBjb25zdGV4cHIgR0xzaXplaSBrU2l6ZSA9IDQ7CiAKQEAgLTUx
Miw3ICs1ODEsNyBAQCBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdCwgUmVhZE9u
bHlEZXB0aFN0ZW5jaWxGZWVkYmFja0xvb3BVc2VzU2luZ2xlUgogICAgIGdsRHJhd0FycmF5cyhH
TF9UUklBTkdMRVMsIDAsIDYpOwogICAgIEFTU0VSVF9HTF9OT19FUlJPUigpOwogCi0gICAgdWlu
dDMyX3QgZXhwZWN0ZWRSZW5kZXJQYXNzQ291bnQgPSBjb3VudGVycy5yZW5kZXJQYXNzZXMgKyAx
OworICAgIHVpbnQzMl90IGV4cGVjdGVkUmVuZGVyUGFzc0NvdW50ID0gZ2V0UGVyZkNvdW50ZXJz
KCkucmVuZGVyUGFzc2VzICsgMTsKIAogICAgIC8vIFN0YXJ0IG5ldyBSZW5kZXJQYXNzIHdpdGgg
ZGVwdGggd3JpdGUgZGlzYWJsZWQgYW5kIG5vIGxvb3AuCiAgICAgZ2xCaW5kRnJhbWVidWZmZXIo
R0xfRlJBTUVCVUZGRVIsIGRlcHRoQW5kQ29sb3JGQk8pOwpAQCAtNTQ1LDcgKzYxNCw3IEBAIFRF
U1RfUChWdWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJUZXN0LCBSZWFkT25seURlcHRoU3RlbmNpbEZl
ZWRiYWNrTG9vcFVzZXNTaW5nbGVSCiAgICAgZ2xEcmF3QXJyYXlzKEdMX1RSSUFOR0xFUywgMCwg
Nik7CiAgICAgQVNTRVJUX0dMX05PX0VSUk9SKCk7CiAKLSAgICB1aW50MzJfdCBhY3R1YWxSZW5k
ZXJQYXNzQ291bnQgPSBjb3VudGVycy5yZW5kZXJQYXNzZXM7CisgICAgdWludDMyX3QgYWN0dWFs
UmVuZGVyUGFzc0NvdW50ID0gZ2V0UGVyZkNvdW50ZXJzKCkucmVuZGVyUGFzc2VzOwogICAgIEVY
UEVDVF9FUShleHBlY3RlZFJlbmRlclBhc3NDb3VudCwgYWN0dWFsUmVuZGVyUGFzc0NvdW50KTsK
IAogICAgIC8vIERvIGEgZmluYWwgd3JpdGUgdG8gZGVwdGggdG8gbWFrZSBzdXJlIHdlIGNhbiBz
d2l0Y2ggb3V0IG9mIHJlYWQtb25seSBtb2RlLgpAQCAtNTYwLDExICs2MjksMTIgQEAgVEVTVF9Q
KFZ1bGthblBlcmZvcm1hbmNlQ291bnRlclRlc3QsIFJlYWRPbmx5RGVwdGhTdGVuY2lsRmVlZGJh
Y2tMb29wVXNlc1NpbmdsZVIKIC8vIC0gU2NlbmFyaW86IGludmFsaWRhdGUsIGRpc2FibGUsIGRy
YXcKIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJUZXN0LCBJbnZhbGlkYXRlRGlzYWJs
ZURyYXcpCiB7Ci0gICAgY29uc3Qgcng6OnZrOjpQZXJmQ291bnRlcnMgJmNvdW50ZXJzID0gaGFj
a0FOR0xFKCk7Ci0gICAgcng6OnZrOjpQZXJmQ291bnRlcnMgZXhwZWN0ZWQ7CisgICAgQU5HTEVf
U0tJUF9URVNUX0lGKCFJc0dMRXh0ZW5zaW9uRW5hYmxlZChrUGVyZk1vbml0b3JFeHRlbnNpb25O
YW1lKSk7CisKKyAgICBhbmdsZTo6VnVsa2FuUGVyZkNvdW50ZXJzIGV4cGVjdGVkOwogCiAgICAg
Ly8gRXhwZWN0IHJwQ291bnQrMSwgZGVwdGgoQ2xlYXJzKzEsIExvYWRzKzAsIFN0b3JlcyswKSwg
c3RlbmNpbChDbGVhcnMrMCwgTG9hZCswLCBTdG9yZXMrMCkKLSAgICBzZXRFeHBlY3RlZENvdW50
ZXJzRm9ySW52YWxpZGF0ZVRlc3QoY291bnRlcnMsIDEsIDEsIDAsIDAsIDAsIDAsIDAsICZleHBl
Y3RlZCk7CisgICAgc2V0RXhwZWN0ZWRDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGdldFBlcmZD
b3VudGVycygpLCAxLCAxLCAwLCAwLCAwLCAwLCAwLCAmZXhwZWN0ZWQpOwogCiAgICAgQU5HTEVf
R0xfUFJPR1JBTShwcm9ncmFtLCBlc3NsMV9zaGFkZXJzOjp2czo6U2ltcGxlKCksIGVzc2wxX3No
YWRlcnM6OmZzOjpSZWQoKSk7CiAgICAgR0xGcmFtZWJ1ZmZlciBmcmFtZWJ1ZmZlcjsKQEAgLTU4
OCwxOCArNjU4LDE4IEBAIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJUZXN0LCBJbnZh
bGlkYXRlRGlzYWJsZURyYXcpCiAgICAgQVNTRVJUX0dMX05PX0VSUk9SKCk7CiAKICAgICAvLyBF
bnN1cmUgdGhhdCB0aGUgcmVuZGVyIHBhc3Mgd2Fzbid0IGJyb2tlbgotICAgIEVYUEVDVF9FUShl
eHBlY3RlZC5yZW5kZXJQYXNzZXMsIGNvdW50ZXJzLnJlbmRlclBhc3Nlcyk7CisgICAgRVhQRUNU
X0VRKGV4cGVjdGVkLnJlbmRlclBhc3NlcywgZ2V0UGVyZkNvdW50ZXJzKCkucmVuZGVyUGFzc2Vz
KTsKIAogICAgIC8vIFVzZSBzd2FwQnVmZmVycyBhbmQgdGhlbiBjaGVjayBob3cgbWFueSBsb2Fk
cyBhbmQgc3RvcmVzIHdlcmUgYWN0dWFsbHkgZG9uZQogICAgIHN3YXBCdWZmZXJzKCk7Ci0gICAg
Y29tcGFyZURlcHRoU3RlbmNpbENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoY291bnRlcnMsIGV4
cGVjdGVkKTsKKyAgICBjb21wYXJlRGVwdGhTdGVuY2lsQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVz
dChnZXRQZXJmQ291bnRlcnMoKSwgZXhwZWN0ZWQpOwogCiAgICAgLy8gU3RhcnQgYW5kIGVuZCBh
bm90aGVyIHJlbmRlciBwYXNzLCB0byBjaGVjayB0aGF0IHRoZSBsb2FkIG9wcyBhcmUgYXMgZXhw
ZWN0ZWQKLSAgICBzZXRBbmRJbmNyZW1lbnRMb2FkQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChj
b3VudGVycywgMCwgMCwgJmV4cGVjdGVkKTsKKyAgICBzZXRBbmRJbmNyZW1lbnRMb2FkQ291bnRl
cnNGb3JJbnZhbGlkYXRlVGVzdChnZXRQZXJmQ291bnRlcnMoKSwgMCwgMCwgJmV4cGVjdGVkKTsK
ICAgICBkcmF3UXVhZChwcm9ncmFtLCBlc3NsMV9zaGFkZXJzOjpQb3NpdGlvbkF0dHJpYigpLCAw
LjVmKTsKICAgICBBU1NFUlRfR0xfTk9fRVJST1IoKTsKICAgICBzd2FwQnVmZmVycygpOwotICAg
IGNvbXBhcmVMb2FkQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChjb3VudGVycywgZXhwZWN0ZWQp
OworICAgIGNvbXBhcmVMb2FkQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChnZXRQZXJmQ291bnRl
cnMoKSwgZXhwZWN0ZWQpOwogfQogCiAvLyBUZXN0cyB0aGF0IGFsdGVybmF0aXZlIFBVQkcgTU9C
SUxFIGNhc2UgZG9lcyBub3QgYnJlYWsgcmVuZGVyIHBhc3MsIGFuZCB0aGF0IGNvdW50cyBhcmUg
Y29ycmVjdDoKQEAgLTYwNywxMSArNjc3LDEyIEBAIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5jZUNv
dW50ZXJUZXN0LCBJbnZhbGlkYXRlRGlzYWJsZURyYXcpCiAvLyAtIFNjZW5hcmlvOiBkaXNhYmxl
LCBpbnZhbGlkYXRlLCBkcmF3CiBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdCwg
RGlzYWJsZUludmFsaWRhdGVEcmF3KQogewotICAgIGNvbnN0IHJ4Ojp2azo6UGVyZkNvdW50ZXJz
ICZjb3VudGVycyA9IGhhY2tBTkdMRSgpOwotICAgIHJ4Ojp2azo6UGVyZkNvdW50ZXJzIGV4cGVj
dGVkOworICAgIEFOR0xFX1NLSVBfVEVTVF9JRighSXNHTEV4dGVuc2lvbkVuYWJsZWQoa1BlcmZN
b25pdG9yRXh0ZW5zaW9uTmFtZSkpOworCisgICAgYW5nbGU6OlZ1bGthblBlcmZDb3VudGVycyBl
eHBlY3RlZDsKIAogICAgIC8vIEV4cGVjdCBycENvdW50KzEsIGRlcHRoKENsZWFycysxLCBMb2Fk
cyswLCBTdG9yZXMrMCksIHN0ZW5jaWwoQ2xlYXJzKzAsIExvYWQrMCwgU3RvcmVzKzApCi0gICAg
c2V0RXhwZWN0ZWRDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGNvdW50ZXJzLCAxLCAxLCAwLCAw
LCAwLCAwLCAwLCAmZXhwZWN0ZWQpOworICAgIHNldEV4cGVjdGVkQ291bnRlcnNGb3JJbnZhbGlk
YXRlVGVzdChnZXRQZXJmQ291bnRlcnMoKSwgMSwgMSwgMCwgMCwgMCwgMCwgMCwgJmV4cGVjdGVk
KTsKIAogICAgIEFOR0xFX0dMX1BST0dSQU0ocHJvZ3JhbSwgZXNzbDFfc2hhZGVyczo6dnM6OlNp
bXBsZSgpLCBlc3NsMV9zaGFkZXJzOjpmczo6UmVkKCkpOwogICAgIEdMRnJhbWVidWZmZXIgZnJh
bWVidWZmZXI7CkBAIC02MzUsMTggKzcwNiwxOCBAQCBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VD
b3VudGVyVGVzdCwgRGlzYWJsZUludmFsaWRhdGVEcmF3KQogICAgIEFTU0VSVF9HTF9OT19FUlJP
UigpOwogCiAgICAgLy8gRW5zdXJlIHRoYXQgdGhlIHJlbmRlciBwYXNzIHdhc24ndCBicm9rZW4K
LSAgICBFWFBFQ1RfRVEoZXhwZWN0ZWQucmVuZGVyUGFzc2VzLCBjb3VudGVycy5yZW5kZXJQYXNz
ZXMpOworICAgIEVYUEVDVF9FUShleHBlY3RlZC5yZW5kZXJQYXNzZXMsIGdldFBlcmZDb3VudGVy
cygpLnJlbmRlclBhc3Nlcyk7CiAKICAgICAvLyBVc2Ugc3dhcEJ1ZmZlcnMgYW5kIHRoZW4gY2hl
Y2sgaG93IG1hbnkgbG9hZHMgYW5kIHN0b3JlcyB3ZXJlIGFjdHVhbGx5IGRvbmUKICAgICBzd2Fw
QnVmZmVycygpOwotICAgIGNvbXBhcmVEZXB0aFN0ZW5jaWxDb3VudGVyc0ZvckludmFsaWRhdGVU
ZXN0KGNvdW50ZXJzLCBleHBlY3RlZCk7CisgICAgY29tcGFyZURlcHRoU3RlbmNpbENvdW50ZXJz
Rm9ySW52YWxpZGF0ZVRlc3QoZ2V0UGVyZkNvdW50ZXJzKCksIGV4cGVjdGVkKTsKIAogICAgIC8v
IFN0YXJ0IGFuZCBlbmQgYW5vdGhlciByZW5kZXIgcGFzcywgdG8gY2hlY2sgdGhhdCB0aGUgbG9h
ZCBvcHMgYXJlIGFzIGV4cGVjdGVkCi0gICAgc2V0QW5kSW5jcmVtZW50TG9hZENvdW50ZXJzRm9y
SW52YWxpZGF0ZVRlc3QoY291bnRlcnMsIDAsIDAsICZleHBlY3RlZCk7CisgICAgc2V0QW5kSW5j
cmVtZW50TG9hZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoZ2V0UGVyZkNvdW50ZXJzKCksIDAs
IDAsICZleHBlY3RlZCk7CiAgICAgZHJhd1F1YWQocHJvZ3JhbSwgZXNzbDFfc2hhZGVyczo6UG9z
aXRpb25BdHRyaWIoKSwgMC41Zik7CiAgICAgQVNTRVJUX0dMX05PX0VSUk9SKCk7CiAgICAgc3dh
cEJ1ZmZlcnMoKTsKLSAgICBjb21wYXJlTG9hZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoY291
bnRlcnMsIGV4cGVjdGVkKTsKKyAgICBjb21wYXJlTG9hZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRl
c3QoZ2V0UGVyZkNvdW50ZXJzKCksIGV4cGVjdGVkKTsKIH0KIAogLy8gVGVzdHMgdGhhdCBhbm90
aGVyIGNhc2UgZG9lcyBub3QgYnJlYWsgcmVuZGVyIHBhc3MsIGFuZCB0aGF0IGNvdW50cyBhcmUg
Y29ycmVjdDoKQEAgLTY1NCwxMSArNzI1LDEyIEBAIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5jZUNv
dW50ZXJUZXN0LCBEaXNhYmxlSW52YWxpZGF0ZURyYXcpCiAvLyAtIFNjZW5hcmlvOiBkaXNhYmxl
LCBkcmF3LCBpbnZhbGlkYXRlLCBlbmFibGUKIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5jZUNvdW50
ZXJUZXN0LCBEaXNhYmxlRHJhd0ludmFsaWRhdGVFbmFibGUpCiB7Ci0gICAgY29uc3Qgcng6OnZr
OjpQZXJmQ291bnRlcnMgJmNvdW50ZXJzID0gaGFja0FOR0xFKCk7Ci0gICAgcng6OnZrOjpQZXJm
Q291bnRlcnMgZXhwZWN0ZWQ7CisgICAgQU5HTEVfU0tJUF9URVNUX0lGKCFJc0dMRXh0ZW5zaW9u
RW5hYmxlZChrUGVyZk1vbml0b3JFeHRlbnNpb25OYW1lKSk7CisKKyAgICBhbmdsZTo6VnVsa2Fu
UGVyZkNvdW50ZXJzIGV4cGVjdGVkOwogCiAgICAgLy8gRXhwZWN0IHJwQ291bnQrMSwgZGVwdGgo
Q2xlYXJzKzEsIExvYWRzKzAsIFN0b3JlcyswKSwgc3RlbmNpbChDbGVhcnMrMCwgTG9hZCswLCBT
dG9yZXMrMCkKLSAgICBzZXRFeHBlY3RlZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoY291bnRl
cnMsIDEsIDEsIDAsIDAsIDAsIDAsIDAsICZleHBlY3RlZCk7CisgICAgc2V0RXhwZWN0ZWRDb3Vu
dGVyc0ZvckludmFsaWRhdGVUZXN0KGdldFBlcmZDb3VudGVycygpLCAxLCAxLCAwLCAwLCAwLCAw
LCAwLCAmZXhwZWN0ZWQpOwogCiAgICAgQU5HTEVfR0xfUFJPR1JBTShwcm9ncmFtLCBlc3NsMV9z
aGFkZXJzOjp2czo6U2ltcGxlKCksIGVzc2wxX3NoYWRlcnM6OmZzOjpSZWQoKSk7CiAgICAgR0xG
cmFtZWJ1ZmZlciBmcmFtZWJ1ZmZlcjsKQEAgLTY5MCwyMSArNzYyLDIxIEBAIFRFU1RfUChWdWxr
YW5QZXJmb3JtYW5jZUNvdW50ZXJUZXN0LCBEaXNhYmxlRHJhd0ludmFsaWRhdGVFbmFibGUpCiAg
ICAgLy8gZGlydHkgYml0IHRvIGJlIHByb2Nlc3NlZAogCiAgICAgLy8gRW5zdXJlIHRoYXQgdGhl
IHJlbmRlciBwYXNzIHdhc24ndCBicm9rZW4KLSAgICBFWFBFQ1RfRVEoZXhwZWN0ZWQucmVuZGVy
UGFzc2VzLCBjb3VudGVycy5yZW5kZXJQYXNzZXMpOworICAgIEVYUEVDVF9FUShleHBlY3RlZC5y
ZW5kZXJQYXNzZXMsIGdldFBlcmZDb3VudGVycygpLnJlbmRlclBhc3Nlcyk7CiAKICAgICAvLyBC
cmVhayB0aGUgcmVuZGVyIHBhc3MgYnkgcmVhZGluZyBiYWNrIGEgcGl4ZWwuCiAgICAgRVhQRUNU
X1BJWEVMX0NPTE9SX0VRKDAsIDAsIEdMQ29sb3I6OnJlZCk7CiAKICAgICAvLyBVc2Ugc3dhcEJ1
ZmZlcnMgYW5kIHRoZW4gY2hlY2sgaG93IG1hbnkgbG9hZHMgYW5kIHN0b3JlcyB3ZXJlIGFjdHVh
bGx5IGRvbmUKICAgICBzd2FwQnVmZmVycygpOwotICAgIGNvbXBhcmVEZXB0aFN0ZW5jaWxDb3Vu
dGVyc0ZvckludmFsaWRhdGVUZXN0KGNvdW50ZXJzLCBleHBlY3RlZCk7CisgICAgY29tcGFyZURl
cHRoU3RlbmNpbENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoZ2V0UGVyZkNvdW50ZXJzKCksIGV4
cGVjdGVkKTsKIAogICAgIC8vIFN0YXJ0IGFuZCBlbmQgYW5vdGhlciByZW5kZXIgcGFzcywgdG8g
Y2hlY2sgdGhhdCB0aGUgbG9hZCBvcHMgYXJlIGFzIGV4cGVjdGVkCi0gICAgc2V0QW5kSW5jcmVt
ZW50TG9hZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoY291bnRlcnMsIDAsIDAsICZleHBlY3Rl
ZCk7CisgICAgc2V0QW5kSW5jcmVtZW50TG9hZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoZ2V0
UGVyZkNvdW50ZXJzKCksIDAsIDAsICZleHBlY3RlZCk7CiAgICAgZHJhd1F1YWQocHJvZ3JhbSwg
ZXNzbDFfc2hhZGVyczo6UG9zaXRpb25BdHRyaWIoKSwgMC41Zik7CiAgICAgQVNTRVJUX0dMX05P
X0VSUk9SKCk7CiAgICAgc3dhcEJ1ZmZlcnMoKTsKLSAgICBjb21wYXJlTG9hZENvdW50ZXJzRm9y
SW52YWxpZGF0ZVRlc3QoY291bnRlcnMsIGV4cGVjdGVkKTsKKyAgICBjb21wYXJlTG9hZENvdW50
ZXJzRm9ySW52YWxpZGF0ZVRlc3QoZ2V0UGVyZkNvdW50ZXJzKCksIGV4cGVjdGVkKTsKIH0KIAog
Ly8gVGVzdHMgdGhhdCBjb21tb24gVFJleCBjYXNlIGRvZXMgbm90IGJyZWFrIHJlbmRlciBwYXNz
LCBhbmQgdGhhdCBjb3VudHMgYXJlIGNvcnJlY3Q6CkBAIC03MTIsMTEgKzc4NCwxMiBAQCBURVNU
X1AoVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdCwgRGlzYWJsZURyYXdJbnZhbGlkYXRlRW5h
YmxlKQogLy8gLSBTY2VuYXJpbzogaW52YWxpZGF0ZQogVEVTVF9QKFZ1bGthblBlcmZvcm1hbmNl
Q291bnRlclRlc3QsIEludmFsaWRhdGUpCiB7Ci0gICAgY29uc3Qgcng6OnZrOjpQZXJmQ291bnRl
cnMgJmNvdW50ZXJzID0gaGFja0FOR0xFKCk7Ci0gICAgcng6OnZrOjpQZXJmQ291bnRlcnMgZXhw
ZWN0ZWQ7CisgICAgQU5HTEVfU0tJUF9URVNUX0lGKCFJc0dMRXh0ZW5zaW9uRW5hYmxlZChrUGVy
Zk1vbml0b3JFeHRlbnNpb25OYW1lKSk7CisKKyAgICBhbmdsZTo6VnVsa2FuUGVyZkNvdW50ZXJz
IGV4cGVjdGVkOwogCiAgICAgLy8gRXhwZWN0IHJwQ291bnQrMSwgZGVwdGgoQ2xlYXJzKzEsIExv
YWRzKzAsIFN0b3JlcyswKSwgc3RlbmNpbChDbGVhcnMrMCwgTG9hZCswLCBTdG9yZXMrMCkKLSAg
ICBzZXRFeHBlY3RlZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoY291bnRlcnMsIDEsIDEsIDAs
IDAsIDAsIDAsIDAsICZleHBlY3RlZCk7CisgICAgc2V0RXhwZWN0ZWRDb3VudGVyc0ZvckludmFs
aWRhdGVUZXN0KGdldFBlcmZDb3VudGVycygpLCAxLCAxLCAwLCAwLCAwLCAwLCAwLCAmZXhwZWN0
ZWQpOwogCiAgICAgQU5HTEVfR0xfUFJPR1JBTShwcm9ncmFtLCBlc3NsMV9zaGFkZXJzOjp2czo6
U2ltcGxlKCksIGVzc2wxX3NoYWRlcnM6OmZzOjpSZWQoKSk7CiAgICAgR0xGcmFtZWJ1ZmZlciBm
cmFtZWJ1ZmZlcjsKQEAgLTczMiwyOSArODA1LDMwIEBAIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5j
ZUNvdW50ZXJUZXN0LCBJbnZhbGlkYXRlKQogICAgIEFTU0VSVF9HTF9OT19FUlJPUigpOwogCiAg
ICAgLy8gRW5zdXJlIHRoYXQgdGhlIHJlbmRlciBwYXNzIHdhc24ndCBicm9rZW4KLSAgICBFWFBF
Q1RfRVEoZXhwZWN0ZWQucmVuZGVyUGFzc2VzLCBjb3VudGVycy5yZW5kZXJQYXNzZXMpOworICAg
IEVYUEVDVF9FUShleHBlY3RlZC5yZW5kZXJQYXNzZXMsIGdldFBlcmZDb3VudGVycygpLnJlbmRl
clBhc3Nlcyk7CiAKICAgICAvLyBVc2Ugc3dhcEJ1ZmZlcnMgYW5kIHRoZW4gY2hlY2sgaG93IG1h
bnkgbG9hZHMgYW5kIHN0b3JlcyB3ZXJlIGFjdHVhbGx5IGRvbmUKICAgICBzd2FwQnVmZmVycygp
OwotICAgIGNvbXBhcmVEZXB0aFN0ZW5jaWxDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGNvdW50
ZXJzLCBleHBlY3RlZCk7CisgICAgY29tcGFyZURlcHRoU3RlbmNpbENvdW50ZXJzRm9ySW52YWxp
ZGF0ZVRlc3QoZ2V0UGVyZkNvdW50ZXJzKCksIGV4cGVjdGVkKTsKIAogICAgIC8vIFN0YXJ0IGFu
ZCBlbmQgYW5vdGhlciByZW5kZXIgcGFzcywgdG8gY2hlY2sgdGhhdCB0aGUgbG9hZCBvcHMgYXJl
IGFzIGV4cGVjdGVkCi0gICAgc2V0QW5kSW5jcmVtZW50TG9hZENvdW50ZXJzRm9ySW52YWxpZGF0
ZVRlc3QoY291bnRlcnMsIDAsIDAsICZleHBlY3RlZCk7CisgICAgc2V0QW5kSW5jcmVtZW50TG9h
ZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoZ2V0UGVyZkNvdW50ZXJzKCksIDAsIDAsICZleHBl
Y3RlZCk7CiAgICAgZHJhd1F1YWQocHJvZ3JhbSwgZXNzbDFfc2hhZGVyczo6UG9zaXRpb25BdHRy
aWIoKSwgMC41Zik7CiAgICAgQVNTRVJUX0dMX05PX0VSUk9SKCk7CiAgICAgc3dhcEJ1ZmZlcnMo
KTsKLSAgICBjb21wYXJlTG9hZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoY291bnRlcnMsIGV4
cGVjdGVkKTsKKyAgICBjb21wYXJlTG9hZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoZ2V0UGVy
ZkNvdW50ZXJzKCksIGV4cGVjdGVkKTsKIH0KIAogLy8gU2ltaWxhciB0byBJbnZhbGlkYXRlLCBi
dXQgdXNlcyBnbEludmFsaWRhdGVTdWJGcmFtZWJ1ZmZlciBzdWNoIHRoYXQgdGhlIGdpdmVuIGFy
ZWEgY292ZXJzIHRoZQogLy8gd2hvbGUgZnJhbWVidWZmZXIuCiBURVNUX1AoVnVsa2FuUGVyZm9y
bWFuY2VDb3VudGVyVGVzdCwgSW52YWxpZGF0ZVN1YikKIHsKLSAgICBjb25zdCByeDo6dms6OlBl
cmZDb3VudGVycyAmY291bnRlcnMgPSBoYWNrQU5HTEUoKTsKLSAgICByeDo6dms6OlBlcmZDb3Vu
dGVycyBleHBlY3RlZDsKKyAgICBBTkdMRV9TS0lQX1RFU1RfSUYoIUlzR0xFeHRlbnNpb25FbmFi
bGVkKGtQZXJmTW9uaXRvckV4dGVuc2lvbk5hbWUpKTsKKworICAgIGFuZ2xlOjpWdWxrYW5QZXJm
Q291bnRlcnMgZXhwZWN0ZWQ7CiAKICAgICAvLyBFeHBlY3QgcnBDb3VudCsxLCBkZXB0aChDbGVh
cnMrMSwgTG9hZHMrMCwgU3RvcmVzKzApLCBzdGVuY2lsKENsZWFycyswLCBMb2FkKzAsIFN0b3Jl
cyswKQotICAgIHNldEV4cGVjdGVkQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChjb3VudGVycywg
MSwgMSwgMCwgMCwgMCwgMCwgMCwgJmV4cGVjdGVkKTsKKyAgICBzZXRFeHBlY3RlZENvdW50ZXJz
Rm9ySW52YWxpZGF0ZVRlc3QoZ2V0UGVyZkNvdW50ZXJzKCksIDEsIDEsIDAsIDAsIDAsIDAsIDAs
ICZleHBlY3RlZCk7CiAKICAgICBBTkdMRV9HTF9QUk9HUkFNKHByb2dyYW0sIGVzc2wxX3NoYWRl
cnM6OnZzOjpTaW1wbGUoKSwgZXNzbDFfc2hhZGVyczo6ZnM6OlJlZCgpKTsKICAgICBHTEZyYW1l
YnVmZmVyIGZyYW1lYnVmZmVyOwpAQCAtNzcxLDE4ICs4NDUsMTggQEAgVEVTVF9QKFZ1bGthblBl
cmZvcm1hbmNlQ291bnRlclRlc3QsIEludmFsaWRhdGVTdWIpCiAgICAgQVNTRVJUX0dMX05PX0VS
Uk9SKCk7CiAKICAgICAvLyBFbnN1cmUgdGhhdCB0aGUgcmVuZGVyIHBhc3Mgd2Fzbid0IGJyb2tl
bgotICAgIEVYUEVDVF9FUShleHBlY3RlZC5yZW5kZXJQYXNzZXMsIGNvdW50ZXJzLnJlbmRlclBh
c3Nlcyk7CisgICAgRVhQRUNUX0VRKGV4cGVjdGVkLnJlbmRlclBhc3NlcywgZ2V0UGVyZkNvdW50
ZXJzKCkucmVuZGVyUGFzc2VzKTsKIAogICAgIC8vIFVzZSBzd2FwQnVmZmVycyBhbmQgdGhlbiBj
aGVjayBob3cgbWFueSBsb2FkcyBhbmQgc3RvcmVzIHdlcmUgYWN0dWFsbHkgZG9uZQogICAgIHN3
YXBCdWZmZXJzKCk7Ci0gICAgY29tcGFyZURlcHRoU3RlbmNpbENvdW50ZXJzRm9ySW52YWxpZGF0
ZVRlc3QoY291bnRlcnMsIGV4cGVjdGVkKTsKKyAgICBjb21wYXJlRGVwdGhTdGVuY2lsQ291bnRl
cnNGb3JJbnZhbGlkYXRlVGVzdChnZXRQZXJmQ291bnRlcnMoKSwgZXhwZWN0ZWQpOwogCiAgICAg
Ly8gU3RhcnQgYW5kIGVuZCBhbm90aGVyIHJlbmRlciBwYXNzLCB0byBjaGVjayB0aGF0IHRoZSBs
b2FkIG9wcyBhcmUgYXMgZXhwZWN0ZWQKLSAgICBzZXRBbmRJbmNyZW1lbnRMb2FkQ291bnRlcnNG
b3JJbnZhbGlkYXRlVGVzdChjb3VudGVycywgMCwgMCwgJmV4cGVjdGVkKTsKKyAgICBzZXRBbmRJ
bmNyZW1lbnRMb2FkQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChnZXRQZXJmQ291bnRlcnMoKSwg
MCwgMCwgJmV4cGVjdGVkKTsKICAgICBkcmF3UXVhZChwcm9ncmFtLCBlc3NsMV9zaGFkZXJzOjpQ
b3NpdGlvbkF0dHJpYigpLCAwLjVmKTsKICAgICBBU1NFUlRfR0xfTk9fRVJST1IoKTsKICAgICBz
d2FwQnVmZmVycygpOwotICAgIGNvbXBhcmVMb2FkQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChj
b3VudGVycywgZXhwZWN0ZWQpOworICAgIGNvbXBhcmVMb2FkQ291bnRlcnNGb3JJbnZhbGlkYXRl
VGVzdChnZXRQZXJmQ291bnRlcnMoKSwgZXhwZWN0ZWQpOwogfQogCiAvLyBUZXN0cyB0aGF0IGFu
b3RoZXIgY2FzZSBkb2VzIG5vdCBicmVhayByZW5kZXIgcGFzcywgYW5kIHRoYXQgY291bnRzIGFy
ZSBjb3JyZWN0OgpAQCAtNzkwLDExICs4NjQsMTIgQEAgVEVTVF9QKFZ1bGthblBlcmZvcm1hbmNl
Q291bnRlclRlc3QsIEludmFsaWRhdGVTdWIpCiAvLyAtIFNjZW5hcmlvOiBpbnZhbGlkYXRlLCBk
cmF3CiBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdCwgSW52YWxpZGF0ZURyYXcp
CiB7Ci0gICAgY29uc3Qgcng6OnZrOjpQZXJmQ291bnRlcnMgJmNvdW50ZXJzID0gaGFja0FOR0xF
KCk7Ci0gICAgcng6OnZrOjpQZXJmQ291bnRlcnMgZXhwZWN0ZWQ7CisgICAgQU5HTEVfU0tJUF9U
RVNUX0lGKCFJc0dMRXh0ZW5zaW9uRW5hYmxlZChrUGVyZk1vbml0b3JFeHRlbnNpb25OYW1lKSk7
CisKKyAgICBhbmdsZTo6VnVsa2FuUGVyZkNvdW50ZXJzIGV4cGVjdGVkOwogCiAgICAgLy8gRXhw
ZWN0IHJwQ291bnQrMSwgZGVwdGgoQ2xlYXJzKzEsIExvYWRzKzAsIFN0b3JlcysxKSwgc3RlbmNp
bChDbGVhcnMrMCwgTG9hZCswLCBTdG9yZXMrMCkKLSAgICBzZXRFeHBlY3RlZENvdW50ZXJzRm9y
SW52YWxpZGF0ZVRlc3QoY291bnRlcnMsIDEsIDEsIDAsIDEsIDAsIDAsIDAsICZleHBlY3RlZCk7
CisgICAgc2V0RXhwZWN0ZWRDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGdldFBlcmZDb3VudGVy
cygpLCAxLCAxLCAwLCAxLCAwLCAwLCAwLCAmZXhwZWN0ZWQpOwogCiAgICAgQU5HTEVfR0xfUFJP
R1JBTShwcm9ncmFtLCBlc3NsMV9zaGFkZXJzOjp2czo6U2ltcGxlKCksIGVzc2wxX3NoYWRlcnM6
OmZzOjpSZWQoKSk7CiAgICAgR0xGcmFtZWJ1ZmZlciBmcmFtZWJ1ZmZlcjsKQEAgLTgxNCwxOCAr
ODg5LDE4IEBAIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJUZXN0LCBJbnZhbGlkYXRl
RHJhdykKICAgICBBU1NFUlRfR0xfTk9fRVJST1IoKTsKIAogICAgIC8vIEVuc3VyZSB0aGF0IHRo
ZSByZW5kZXIgcGFzcyB3YXNuJ3QgYnJva2VuCi0gICAgRVhQRUNUX0VRKGV4cGVjdGVkLnJlbmRl
clBhc3NlcywgY291bnRlcnMucmVuZGVyUGFzc2VzKTsKKyAgICBFWFBFQ1RfRVEoZXhwZWN0ZWQu
cmVuZGVyUGFzc2VzLCBnZXRQZXJmQ291bnRlcnMoKS5yZW5kZXJQYXNzZXMpOwogCiAgICAgLy8g
VXNlIHN3YXBCdWZmZXJzIGFuZCB0aGVuIGNoZWNrIGhvdyBtYW55IGxvYWRzIGFuZCBzdG9yZXMg
d2VyZSBhY3R1YWxseSBkb25lCiAgICAgc3dhcEJ1ZmZlcnMoKTsKLSAgICBjb21wYXJlRGVwdGhT
dGVuY2lsQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChjb3VudGVycywgZXhwZWN0ZWQpOworICAg
IGNvbXBhcmVEZXB0aFN0ZW5jaWxDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGdldFBlcmZDb3Vu
dGVycygpLCBleHBlY3RlZCk7CiAKICAgICAvLyBTdGFydCBhbmQgZW5kIGFub3RoZXIgcmVuZGVy
IHBhc3MsIHRvIGNoZWNrIHRoYXQgdGhlIGxvYWQgb3BzIGFyZSBhcyBleHBlY3RlZAotICAgIHNl
dEFuZEluY3JlbWVudExvYWRDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGNvdW50ZXJzLCAxLCAw
LCAmZXhwZWN0ZWQpOworICAgIHNldEFuZEluY3JlbWVudExvYWRDb3VudGVyc0ZvckludmFsaWRh
dGVUZXN0KGdldFBlcmZDb3VudGVycygpLCAxLCAwLCAmZXhwZWN0ZWQpOwogICAgIGRyYXdRdWFk
KHByb2dyYW0sIGVzc2wxX3NoYWRlcnM6OlBvc2l0aW9uQXR0cmliKCksIDAuNWYpOwogICAgIEFT
U0VSVF9HTF9OT19FUlJPUigpOwogICAgIHN3YXBCdWZmZXJzKCk7Ci0gICAgY29tcGFyZUxvYWRD
b3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGNvdW50ZXJzLCBleHBlY3RlZCk7CisgICAgY29tcGFy
ZUxvYWRDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGdldFBlcmZDb3VudGVycygpLCBleHBlY3Rl
ZCk7CiB9CiAKIC8vIFRlc3RzIHRoYXQgYW5vdGhlciBjYXNlIGRvZXMgbm90IGJyZWFrIHJlbmRl
ciBwYXNzLCBhbmQgdGhhdCBjb3VudHMgYXJlIGNvcnJlY3Q6CkBAIC04MzMsMTQgKzkwOCwxNSBA
QCBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdCwgSW52YWxpZGF0ZURyYXcpCiAv
LyAtIFNjZW5hcmlvOiBpbnZhbGlkYXRlLCBkcmF3LCBkaXNhYmxlCiBURVNUX1AoVnVsa2FuUGVy
Zm9ybWFuY2VDb3VudGVyVGVzdCwgSW52YWxpZGF0ZURyYXdEaXNhYmxlKQogeworICAgIEFOR0xF
X1NLSVBfVEVTVF9JRighSXNHTEV4dGVuc2lvbkVuYWJsZWQoa1BlcmZNb25pdG9yRXh0ZW5zaW9u
TmFtZSkpOworCiAgICAgLy8gaHR0cDovL2FuZ2xlYnVnLmNvbS82ODU3CiAgICAgQU5HTEVfU0tJ
UF9URVNUX0lGKElzTGludXgoKSAmJiBJc0FNRCgpICYmIElzVnVsa2FuKCkpOwogCi0gICAgY29u
c3Qgcng6OnZrOjpQZXJmQ291bnRlcnMgJmNvdW50ZXJzID0gaGFja0FOR0xFKCk7Ci0gICAgcng6
OnZrOjpQZXJmQ291bnRlcnMgZXhwZWN0ZWQ7CisgICAgYW5nbGU6OlZ1bGthblBlcmZDb3VudGVy
cyBleHBlY3RlZDsKIAogICAgIC8vIEV4cGVjdCBycENvdW50KzEsIGRlcHRoKENsZWFycysxLCBM
b2FkcyswLCBTdG9yZXMrMSksIHN0ZW5jaWwoQ2xlYXJzKzAsIExvYWQrMCwgU3RvcmVzKzApCi0g
ICAgc2V0RXhwZWN0ZWRDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGNvdW50ZXJzLCAxLCAxLCAw
LCAxLCAwLCAwLCAwLCAmZXhwZWN0ZWQpOworICAgIHNldEV4cGVjdGVkQ291bnRlcnNGb3JJbnZh
bGlkYXRlVGVzdChnZXRQZXJmQ291bnRlcnMoKSwgMSwgMSwgMCwgMSwgMCwgMCwgMCwgJmV4cGVj
dGVkKTsKIAogICAgIEFOR0xFX0dMX1BST0dSQU0ocHJvZ3JhbSwgZXNzbDFfc2hhZGVyczo6dnM6
OlNpbXBsZSgpLCBlc3NsMV9zaGFkZXJzOjpmczo6UmVkKCkpOwogICAgIEdMRnJhbWVidWZmZXIg
ZnJhbWVidWZmZXI7CkBAIC04NjcsMTggKzk0MywxOCBAQCBURVNUX1AoVnVsa2FuUGVyZm9ybWFu
Y2VDb3VudGVyVGVzdCwgSW52YWxpZGF0ZURyYXdEaXNhYmxlKQogICAgIEFTU0VSVF9HTF9OT19F
UlJPUigpOwogCiAgICAgLy8gRW5zdXJlIHRoYXQgdGhlIHJlbmRlciBwYXNzIHdhc24ndCBicm9r
ZW4KLSAgICBFWFBFQ1RfRVEoZXhwZWN0ZWQucmVuZGVyUGFzc2VzLCBjb3VudGVycy5yZW5kZXJQ
YXNzZXMpOworICAgIEVYUEVDVF9FUShleHBlY3RlZC5yZW5kZXJQYXNzZXMsIGdldFBlcmZDb3Vu
dGVycygpLnJlbmRlclBhc3Nlcyk7CiAKICAgICAvLyBVc2Ugc3dhcEJ1ZmZlcnMgYW5kIHRoZW4g
Y2hlY2sgaG93IG1hbnkgbG9hZHMgYW5kIHN0b3JlcyB3ZXJlIGFjdHVhbGx5IGRvbmUKICAgICBz
d2FwQnVmZmVycygpOwotICAgIGNvbXBhcmVEZXB0aFN0ZW5jaWxDb3VudGVyc0ZvckludmFsaWRh
dGVUZXN0KGNvdW50ZXJzLCBleHBlY3RlZCk7CisgICAgY29tcGFyZURlcHRoU3RlbmNpbENvdW50
ZXJzRm9ySW52YWxpZGF0ZVRlc3QoZ2V0UGVyZkNvdW50ZXJzKCksIGV4cGVjdGVkKTsKIAogICAg
IC8vIFN0YXJ0IGFuZCBlbmQgYW5vdGhlciByZW5kZXIgcGFzcywgdG8gY2hlY2sgdGhhdCB0aGUg
bG9hZCBvcHMgYXJlIGFzIGV4cGVjdGVkCi0gICAgc2V0QW5kSW5jcmVtZW50TG9hZENvdW50ZXJz
Rm9ySW52YWxpZGF0ZVRlc3QoY291bnRlcnMsIDEsIDEsICZleHBlY3RlZCk7CisgICAgc2V0QW5k
SW5jcmVtZW50TG9hZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoZ2V0UGVyZkNvdW50ZXJzKCks
IDEsIDEsICZleHBlY3RlZCk7CiAgICAgZHJhd1F1YWQocHJvZ3JhbSwgZXNzbDFfc2hhZGVyczo6
UG9zaXRpb25BdHRyaWIoKSwgMC41Zik7CiAgICAgQVNTRVJUX0dMX05PX0VSUk9SKCk7CiAgICAg
c3dhcEJ1ZmZlcnMoKTsKLSAgICBjb21wYXJlTG9hZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3Qo
Y291bnRlcnMsIGV4cGVjdGVkKTsKKyAgICBjb21wYXJlTG9hZENvdW50ZXJzRm9ySW52YWxpZGF0
ZVRlc3QoZ2V0UGVyZkNvdW50ZXJzKCksIGV4cGVjdGVkKTsKIH0KIAogLy8gVGVzdHMgdGhhdCBh
bm90aGVyIGNhc2UgZG9lcyBub3QgYnJlYWsgcmVuZGVyIHBhc3MsIGFuZCB0aGF0IGNvdW50cyBh
cmUgY29ycmVjdDoKQEAgLTg4NiwxMSArOTYyLDExIEBAIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5j
ZUNvdW50ZXJUZXN0LCBJbnZhbGlkYXRlRHJhd0Rpc2FibGUpCiAvLyAtIFNjZW5hcmlvOiBpbnZh
bGlkYXRlLCBkaXNhYmxlLCBkcmF3LCBlbmFibGUKIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5jZUNv
dW50ZXJUZXN0LCBJbnZhbGlkYXRlRGlzYWJsZURyYXdFbmFibGUpCiB7Ci0gICAgY29uc3Qgcng6
OnZrOjpQZXJmQ291bnRlcnMgJmNvdW50ZXJzID0gaGFja0FOR0xFKCk7Ci0gICAgcng6OnZrOjpQ
ZXJmQ291bnRlcnMgZXhwZWN0ZWQ7CisgICAgQU5HTEVfU0tJUF9URVNUX0lGKCFJc0dMRXh0ZW5z
aW9uRW5hYmxlZChrUGVyZk1vbml0b3JFeHRlbnNpb25OYW1lKSk7CisgICAgYW5nbGU6OlZ1bGth
blBlcmZDb3VudGVycyBleHBlY3RlZDsKIAogICAgIC8vIEV4cGVjdCBycENvdW50KzEsIGRlcHRo
KENsZWFycysxLCBMb2FkcyswLCBTdG9yZXMrMCksIHN0ZW5jaWwoQ2xlYXJzKzAsIExvYWQrMCwg
U3RvcmVzKzApCi0gICAgc2V0RXhwZWN0ZWRDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGNvdW50
ZXJzLCAxLCAxLCAwLCAwLCAwLCAwLCAwLCAmZXhwZWN0ZWQpOworICAgIHNldEV4cGVjdGVkQ291
bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChnZXRQZXJmQ291bnRlcnMoKSwgMSwgMSwgMCwgMCwgMCwg
MCwgMCwgJmV4cGVjdGVkKTsKIAogICAgIEFOR0xFX0dMX1BST0dSQU0ocHJvZ3JhbSwgZXNzbDFf
c2hhZGVyczo6dnM6OlNpbXBsZSgpLCBlc3NsMV9zaGFkZXJzOjpmczo6UmVkKCkpOwogICAgIEdM
RnJhbWVidWZmZXIgZnJhbWVidWZmZXI7CkBAIC05MjAsMTggKzk5NiwxOCBAQCBURVNUX1AoVnVs
a2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdCwgSW52YWxpZGF0ZURpc2FibGVEcmF3RW5hYmxlKQog
ICAgIC8vIGRpcnR5IGJpdCB0byBiZSBwcm9jZXNzZWQKIAogICAgIC8vIEVuc3VyZSB0aGF0IHRo
ZSByZW5kZXIgcGFzcyB3YXNuJ3QgYnJva2VuCi0gICAgRVhQRUNUX0VRKGV4cGVjdGVkLnJlbmRl
clBhc3NlcywgY291bnRlcnMucmVuZGVyUGFzc2VzKTsKKyAgICBFWFBFQ1RfRVEoZXhwZWN0ZWQu
cmVuZGVyUGFzc2VzLCBnZXRQZXJmQ291bnRlcnMoKS5yZW5kZXJQYXNzZXMpOwogCiAgICAgLy8g
VXNlIHN3YXBCdWZmZXJzIGFuZCB0aGVuIGNoZWNrIGhvdyBtYW55IGxvYWRzIGFuZCBzdG9yZXMg
d2VyZSBhY3R1YWxseSBkb25lCiAgICAgc3dhcEJ1ZmZlcnMoKTsKLSAgICBjb21wYXJlRGVwdGhT
dGVuY2lsQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChjb3VudGVycywgZXhwZWN0ZWQpOworICAg
IGNvbXBhcmVEZXB0aFN0ZW5jaWxDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGdldFBlcmZDb3Vu
dGVycygpLCBleHBlY3RlZCk7CiAKICAgICAvLyBTdGFydCBhbmQgZW5kIGFub3RoZXIgcmVuZGVy
IHBhc3MsIHRvIGNoZWNrIHRoYXQgdGhlIGxvYWQgb3BzIGFyZSBhcyBleHBlY3RlZAotICAgIHNl
dEFuZEluY3JlbWVudExvYWRDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGNvdW50ZXJzLCAwLCAw
LCAmZXhwZWN0ZWQpOworICAgIHNldEFuZEluY3JlbWVudExvYWRDb3VudGVyc0ZvckludmFsaWRh
dGVUZXN0KGdldFBlcmZDb3VudGVycygpLCAwLCAwLCAmZXhwZWN0ZWQpOwogICAgIGRyYXdRdWFk
KHByb2dyYW0sIGVzc2wxX3NoYWRlcnM6OlBvc2l0aW9uQXR0cmliKCksIDAuNWYpOwogICAgIEFT
U0VSVF9HTF9OT19FUlJPUigpOwogICAgIHN3YXBCdWZmZXJzKCk7Ci0gICAgY29tcGFyZUxvYWRD
b3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGNvdW50ZXJzLCBleHBlY3RlZCk7CisgICAgY29tcGFy
ZUxvYWRDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGdldFBlcmZDb3VudGVycygpLCBleHBlY3Rl
ZCk7CiB9CiAKIC8vIFRlc3RzIHRoYXQgYW5vdGhlciBjYXNlIGRvZXMgbm90IGJyZWFrIHJlbmRl
ciBwYXNzLCBhbmQgdGhhdCBjb3VudHMgYXJlIGNvcnJlY3Q6CkBAIC05MzksMTEgKzEwMTUsMTEg
QEAgVEVTVF9QKFZ1bGthblBlcmZvcm1hbmNlQ291bnRlclRlc3QsIEludmFsaWRhdGVEaXNhYmxl
RHJhd0VuYWJsZSkKIC8vIC0gU2NlbmFyaW86IGludmFsaWRhdGUsIGRpc2FibGUsIGRyYXcsIGVu
YWJsZSwgZHJhdwogVEVTVF9QKFZ1bGthblBlcmZvcm1hbmNlQ291bnRlclRlc3QsIEludmFsaWRh
dGVEaXNhYmxlRHJhd0VuYWJsZURyYXcpCiB7Ci0gICAgY29uc3Qgcng6OnZrOjpQZXJmQ291bnRl
cnMgJmNvdW50ZXJzID0gaGFja0FOR0xFKCk7Ci0gICAgcng6OnZrOjpQZXJmQ291bnRlcnMgZXhw
ZWN0ZWQ7CisgICAgQU5HTEVfU0tJUF9URVNUX0lGKCFJc0dMRXh0ZW5zaW9uRW5hYmxlZChrUGVy
Zk1vbml0b3JFeHRlbnNpb25OYW1lKSk7CisgICAgYW5nbGU6OlZ1bGthblBlcmZDb3VudGVycyBl
eHBlY3RlZDsKIAogICAgIC8vIEV4cGVjdCBycENvdW50KzEsIGRlcHRoKENsZWFycysxLCBMb2Fk
cyswLCBTdG9yZXMrMSksIHN0ZW5jaWwoQ2xlYXJzKzAsIExvYWQrMCwgU3RvcmVzKzApCi0gICAg
c2V0RXhwZWN0ZWRDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGNvdW50ZXJzLCAxLCAxLCAwLCAx
LCAwLCAwLCAwLCAmZXhwZWN0ZWQpOworICAgIHNldEV4cGVjdGVkQ291bnRlcnNGb3JJbnZhbGlk
YXRlVGVzdChnZXRQZXJmQ291bnRlcnMoKSwgMSwgMSwgMCwgMSwgMCwgMCwgMCwgJmV4cGVjdGVk
KTsKIAogICAgIEFOR0xFX0dMX1BST0dSQU0ocHJvZ3JhbSwgZXNzbDFfc2hhZGVyczo6dnM6OlNp
bXBsZSgpLCBlc3NsMV9zaGFkZXJzOjpmczo6UmVkKCkpOwogICAgIEdMRnJhbWVidWZmZXIgZnJh
bWVidWZmZXI7CkBAIC05NzUsMTggKzEwNTEsMTggQEAgVEVTVF9QKFZ1bGthblBlcmZvcm1hbmNl
Q291bnRlclRlc3QsIEludmFsaWRhdGVEaXNhYmxlRHJhd0VuYWJsZURyYXcpCiAgICAgQVNTRVJU
X0dMX05PX0VSUk9SKCk7CiAKICAgICAvLyBFbnN1cmUgdGhhdCB0aGUgcmVuZGVyIHBhc3Mgd2Fz
bid0IGJyb2tlbgotICAgIEVYUEVDVF9FUShleHBlY3RlZC5yZW5kZXJQYXNzZXMsIGNvdW50ZXJz
LnJlbmRlclBhc3Nlcyk7CisgICAgRVhQRUNUX0VRKGV4cGVjdGVkLnJlbmRlclBhc3NlcywgZ2V0
UGVyZkNvdW50ZXJzKCkucmVuZGVyUGFzc2VzKTsKIAogICAgIC8vIFVzZSBzd2FwQnVmZmVycyBh
bmQgdGhlbiBjaGVjayBob3cgbWFueSBsb2FkcyBhbmQgc3RvcmVzIHdlcmUgYWN0dWFsbHkgZG9u
ZQogICAgIHN3YXBCdWZmZXJzKCk7Ci0gICAgY29tcGFyZURlcHRoU3RlbmNpbENvdW50ZXJzRm9y
SW52YWxpZGF0ZVRlc3QoY291bnRlcnMsIGV4cGVjdGVkKTsKKyAgICBjb21wYXJlRGVwdGhTdGVu
Y2lsQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChnZXRQZXJmQ291bnRlcnMoKSwgZXhwZWN0ZWQp
OwogCiAgICAgLy8gU3RhcnQgYW5kIGVuZCBhbm90aGVyIHJlbmRlciBwYXNzLCB0byBjaGVjayB0
aGF0IHRoZSBsb2FkIG9wcyBhcmUgYXMgZXhwZWN0ZWQKLSAgICBzZXRBbmRJbmNyZW1lbnRMb2Fk
Q291bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChjb3VudGVycywgMSwgMSwgJmV4cGVjdGVkKTsKKyAg
ICBzZXRBbmRJbmNyZW1lbnRMb2FkQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChnZXRQZXJmQ291
bnRlcnMoKSwgMSwgMSwgJmV4cGVjdGVkKTsKICAgICBkcmF3UXVhZChwcm9ncmFtLCBlc3NsMV9z
aGFkZXJzOjpQb3NpdGlvbkF0dHJpYigpLCAwLjVmKTsKICAgICBBU1NFUlRfR0xfTk9fRVJST1Io
KTsKICAgICBzd2FwQnVmZmVycygpOwotICAgIGNvbXBhcmVMb2FkQ291bnRlcnNGb3JJbnZhbGlk
YXRlVGVzdChjb3VudGVycywgZXhwZWN0ZWQpOworICAgIGNvbXBhcmVMb2FkQ291bnRlcnNGb3JJ
bnZhbGlkYXRlVGVzdChnZXRQZXJmQ291bnRlcnMoKSwgZXhwZWN0ZWQpOwogfQogCiAvLyBUZXN0
cyB0aGF0IGFub3RoZXIgY2FzZSBkb2VzIG5vdCBicmVhayByZW5kZXIgcGFzcywgYW5kIHRoYXQg
Y291bnRzIGFyZSBjb3JyZWN0OgpAQCAtOTk0LDExICsxMDcwLDExIEBAIFRFU1RfUChWdWxrYW5Q
ZXJmb3JtYW5jZUNvdW50ZXJUZXN0LCBJbnZhbGlkYXRlRGlzYWJsZURyYXdFbmFibGVEcmF3KQog
Ly8gLSBTY2VuYXJpbzogaW52YWxpZGF0ZSwgZHJhdywgZGlzYWJsZSwgZW5hYmxlCiBURVNUX1Ao
VnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdCwgSW52YWxpZGF0ZURyYXdEaXNhYmxlRW5hYmxl
KQogewotICAgIGNvbnN0IHJ4Ojp2azo6UGVyZkNvdW50ZXJzICZjb3VudGVycyA9IGhhY2tBTkdM
RSgpOwotICAgIHJ4Ojp2azo6UGVyZkNvdW50ZXJzIGV4cGVjdGVkOworICAgIEFOR0xFX1NLSVBf
VEVTVF9JRighSXNHTEV4dGVuc2lvbkVuYWJsZWQoa1BlcmZNb25pdG9yRXh0ZW5zaW9uTmFtZSkp
OworICAgIGFuZ2xlOjpWdWxrYW5QZXJmQ291bnRlcnMgZXhwZWN0ZWQ7CiAKICAgICAvLyBFeHBl
Y3QgcnBDb3VudCsxLCBkZXB0aChDbGVhcnMrMSwgTG9hZHMrMCwgU3RvcmVzKzEpLCBzdGVuY2ls
KENsZWFycyswLCBMb2FkKzAsIFN0b3JlcyswKQotICAgIHNldEV4cGVjdGVkQ291bnRlcnNGb3JJ
bnZhbGlkYXRlVGVzdChjb3VudGVycywgMSwgMSwgMCwgMSwgMCwgMCwgMCwgJmV4cGVjdGVkKTsK
KyAgICBzZXRFeHBlY3RlZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoZ2V0UGVyZkNvdW50ZXJz
KCksIDEsIDEsIDAsIDEsIDAsIDAsIDAsICZleHBlY3RlZCk7CiAKICAgICBBTkdMRV9HTF9QUk9H
UkFNKHByb2dyYW0sIGVzc2wxX3NoYWRlcnM6OnZzOjpTaW1wbGUoKSwgZXNzbDFfc2hhZGVyczo6
ZnM6OlJlZCgpKTsKICAgICBHTEZyYW1lYnVmZmVyIGZyYW1lYnVmZmVyOwpAQCAtMTAzMSwxOCAr
MTEwNywxOCBAQCBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdCwgSW52YWxpZGF0
ZURyYXdEaXNhYmxlRW5hYmxlKQogICAgIC8vIGRpcnR5IGJpdCB0byBiZSBwcm9jZXNzZWQKIAog
ICAgIC8vIEVuc3VyZSB0aGF0IHRoZSByZW5kZXIgcGFzcyB3YXNuJ3QgYnJva2VuCi0gICAgRVhQ
RUNUX0VRKGV4cGVjdGVkLnJlbmRlclBhc3NlcywgY291bnRlcnMucmVuZGVyUGFzc2VzKTsKKyAg
ICBFWFBFQ1RfRVEoZXhwZWN0ZWQucmVuZGVyUGFzc2VzLCBnZXRQZXJmQ291bnRlcnMoKS5yZW5k
ZXJQYXNzZXMpOwogCiAgICAgLy8gVXNlIHN3YXBCdWZmZXJzIGFuZCB0aGVuIGNoZWNrIGhvdyBt
YW55IGxvYWRzIGFuZCBzdG9yZXMgd2VyZSBhY3R1YWxseSBkb25lCiAgICAgc3dhcEJ1ZmZlcnMo
KTsKLSAgICBjb21wYXJlRGVwdGhTdGVuY2lsQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChjb3Vu
dGVycywgZXhwZWN0ZWQpOworICAgIGNvbXBhcmVEZXB0aFN0ZW5jaWxDb3VudGVyc0ZvckludmFs
aWRhdGVUZXN0KGdldFBlcmZDb3VudGVycygpLCBleHBlY3RlZCk7CiAKICAgICAvLyBTdGFydCBh
bmQgZW5kIGFub3RoZXIgcmVuZGVyIHBhc3MsIHRvIGNoZWNrIHRoYXQgdGhlIGxvYWQgb3BzIGFy
ZSBhcyBleHBlY3RlZAotICAgIHNldEFuZEluY3JlbWVudExvYWRDb3VudGVyc0ZvckludmFsaWRh
dGVUZXN0KGNvdW50ZXJzLCAxLCAxLCAmZXhwZWN0ZWQpOworICAgIHNldEFuZEluY3JlbWVudExv
YWRDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGdldFBlcmZDb3VudGVycygpLCAxLCAxLCAmZXhw
ZWN0ZWQpOwogICAgIGRyYXdRdWFkKHByb2dyYW0sIGVzc2wxX3NoYWRlcnM6OlBvc2l0aW9uQXR0
cmliKCksIDAuNWYpOwogICAgIEFTU0VSVF9HTF9OT19FUlJPUigpOwogICAgIHN3YXBCdWZmZXJz
KCk7Ci0gICAgY29tcGFyZUxvYWRDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGNvdW50ZXJzLCBl
eHBlY3RlZCk7CisgICAgY29tcGFyZUxvYWRDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGdldFBl
cmZDb3VudGVycygpLCBleHBlY3RlZCk7CiB9CiAKIC8vIFRlc3RzIHRoYXQgYW5vdGhlciBjYXNl
IGRvZXMgbm90IGJyZWFrIHJlbmRlciBwYXNzLCBhbmQgdGhhdCBjb3VudHMgYXJlIGNvcnJlY3Q6
CkBAIC0xMDUwLDExICsxMTI2LDExIEBAIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJU
ZXN0LCBJbnZhbGlkYXRlRHJhd0Rpc2FibGVFbmFibGUpCiAvLyAtIFNjZW5hcmlvOiBpbnZhbGlk
YXRlLCBkcmF3LCBkaXNhYmxlLCBlbmFibGUsIGludmFsaWRhdGUKIFRFU1RfUChWdWxrYW5QZXJm
b3JtYW5jZUNvdW50ZXJUZXN0LCBJbnZhbGlkYXRlRHJhd0Rpc2FibGVFbmFibGVJbnZhbGlkYXRl
KQogewotICAgIGNvbnN0IHJ4Ojp2azo6UGVyZkNvdW50ZXJzICZjb3VudGVycyA9IGhhY2tBTkdM
RSgpOwotICAgIHJ4Ojp2azo6UGVyZkNvdW50ZXJzIGV4cGVjdGVkOworICAgIEFOR0xFX1NLSVBf
VEVTVF9JRighSXNHTEV4dGVuc2lvbkVuYWJsZWQoa1BlcmZNb25pdG9yRXh0ZW5zaW9uTmFtZSkp
OworICAgIGFuZ2xlOjpWdWxrYW5QZXJmQ291bnRlcnMgZXhwZWN0ZWQ7CiAKICAgICAvLyBFeHBl
Y3QgcnBDb3VudCsxLCBkZXB0aChDbGVhcnMrMSwgTG9hZHMrMCwgU3RvcmVzKzApLCBzdGVuY2ls
KENsZWFycyswLCBMb2FkKzAsIFN0b3JlcyswKQotICAgIHNldEV4cGVjdGVkQ291bnRlcnNGb3JJ
bnZhbGlkYXRlVGVzdChjb3VudGVycywgMSwgMSwgMCwgMCwgMCwgMCwgMCwgJmV4cGVjdGVkKTsK
KyAgICBzZXRFeHBlY3RlZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoZ2V0UGVyZkNvdW50ZXJz
KCksIDEsIDEsIDAsIDAsIDAsIDAsIDAsICZleHBlY3RlZCk7CiAKICAgICBBTkdMRV9HTF9QUk9H
UkFNKHByb2dyYW0sIGVzc2wxX3NoYWRlcnM6OnZzOjpTaW1wbGUoKSwgZXNzbDFfc2hhZGVyczo6
ZnM6OlJlZCgpKTsKICAgICBHTEZyYW1lYnVmZmVyIGZyYW1lYnVmZmVyOwpAQCAtMTA4OSwxOCAr
MTE2NSwxOCBAQCBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdCwgSW52YWxpZGF0
ZURyYXdEaXNhYmxlRW5hYmxlSW52YWxpZGF0ZSkKICAgICBBU1NFUlRfR0xfTk9fRVJST1IoKTsK
IAogICAgIC8vIEVuc3VyZSB0aGF0IHRoZSByZW5kZXIgcGFzcyB3YXNuJ3QgYnJva2VuCi0gICAg
RVhQRUNUX0VRKGV4cGVjdGVkLnJlbmRlclBhc3NlcywgY291bnRlcnMucmVuZGVyUGFzc2VzKTsK
KyAgICBFWFBFQ1RfRVEoZXhwZWN0ZWQucmVuZGVyUGFzc2VzLCBnZXRQZXJmQ291bnRlcnMoKS5y
ZW5kZXJQYXNzZXMpOwogCiAgICAgLy8gVXNlIHN3YXBCdWZmZXJzIGFuZCB0aGVuIGNoZWNrIGhv
dyBtYW55IGxvYWRzIGFuZCBzdG9yZXMgd2VyZSBhY3R1YWxseSBkb25lCiAgICAgc3dhcEJ1ZmZl
cnMoKTsKLSAgICBjb21wYXJlRGVwdGhTdGVuY2lsQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChj
b3VudGVycywgZXhwZWN0ZWQpOworICAgIGNvbXBhcmVEZXB0aFN0ZW5jaWxDb3VudGVyc0Zvcklu
dmFsaWRhdGVUZXN0KGdldFBlcmZDb3VudGVycygpLCBleHBlY3RlZCk7CiAKICAgICAvLyBTdGFy
dCBhbmQgZW5kIGFub3RoZXIgcmVuZGVyIHBhc3MsIHRvIGNoZWNrIHRoYXQgdGhlIGxvYWQgb3Bz
IGFyZSBhcyBleHBlY3RlZAotICAgIHNldEFuZEluY3JlbWVudExvYWRDb3VudGVyc0ZvckludmFs
aWRhdGVUZXN0KGNvdW50ZXJzLCAwLCAwLCAmZXhwZWN0ZWQpOworICAgIHNldEFuZEluY3JlbWVu
dExvYWRDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGdldFBlcmZDb3VudGVycygpLCAwLCAwLCAm
ZXhwZWN0ZWQpOwogICAgIGRyYXdRdWFkKHByb2dyYW0sIGVzc2wxX3NoYWRlcnM6OlBvc2l0aW9u
QXR0cmliKCksIDAuNWYpOwogICAgIEFTU0VSVF9HTF9OT19FUlJPUigpOwogICAgIHN3YXBCdWZm
ZXJzKCk7Ci0gICAgY29tcGFyZUxvYWRDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGNvdW50ZXJz
LCBleHBlY3RlZCk7CisgICAgY29tcGFyZUxvYWRDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGdl
dFBlcmZDb3VudGVycygpLCBleHBlY3RlZCk7CiB9CiAKIC8vIFRlc3RzIHRoYXQgYW5vdGhlciBj
YXNlIGRvZXMgbm90IGJyZWFrIHJlbmRlciBwYXNzLCBhbmQgdGhhdCBjb3VudHMgYXJlIGNvcnJl
Y3Q6CkBAIC0xMTA4LDExICsxMTg0LDExIEBAIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5jZUNvdW50
ZXJUZXN0LCBJbnZhbGlkYXRlRHJhd0Rpc2FibGVFbmFibGVJbnZhbGlkYXRlKQogLy8gLSBTY2Vu
YXJpbzogaW52YWxpZGF0ZSwgZHJhdywgZGlzYWJsZSwgZW5hYmxlLCBpbnZhbGlkYXRlLCBkcmF3
CiBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdCwgSW52YWxpZGF0ZURyYXdEaXNh
YmxlRW5hYmxlSW52YWxpZGF0ZURyYXcpCiB7Ci0gICAgY29uc3Qgcng6OnZrOjpQZXJmQ291bnRl
cnMgJmNvdW50ZXJzID0gaGFja0FOR0xFKCk7Ci0gICAgcng6OnZrOjpQZXJmQ291bnRlcnMgZXhw
ZWN0ZWQ7CisgICAgQU5HTEVfU0tJUF9URVNUX0lGKCFJc0dMRXh0ZW5zaW9uRW5hYmxlZChrUGVy
Zk1vbml0b3JFeHRlbnNpb25OYW1lKSk7CisgICAgYW5nbGU6OlZ1bGthblBlcmZDb3VudGVycyBl
eHBlY3RlZDsKIAogICAgIC8vIEV4cGVjdCBycENvdW50KzEsIGRlcHRoKENsZWFycysxLCBMb2Fk
cyswLCBTdG9yZXMrMSksIHN0ZW5jaWwoQ2xlYXJzKzAsIExvYWQrMCwgU3RvcmVzKzApCi0gICAg
c2V0RXhwZWN0ZWRDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGNvdW50ZXJzLCAxLCAxLCAwLCAx
LCAwLCAwLCAwLCAmZXhwZWN0ZWQpOworICAgIHNldEV4cGVjdGVkQ291bnRlcnNGb3JJbnZhbGlk
YXRlVGVzdChnZXRQZXJmQ291bnRlcnMoKSwgMSwgMSwgMCwgMSwgMCwgMCwgMCwgJmV4cGVjdGVk
KTsKIAogICAgIEFOR0xFX0dMX1BST0dSQU0ocHJvZ3JhbSwgZXNzbDFfc2hhZGVyczo6dnM6OlNp
bXBsZSgpLCBlc3NsMV9zaGFkZXJzOjpmczo6UmVkKCkpOwogICAgIEdMRnJhbWVidWZmZXIgZnJh
bWVidWZmZXI7CkBAIC0xMTUxLDE4ICsxMjI3LDE4IEBAIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5j
ZUNvdW50ZXJUZXN0LCBJbnZhbGlkYXRlRHJhd0Rpc2FibGVFbmFibGVJbnZhbGlkYXRlRHJhdykK
ICAgICBBU1NFUlRfR0xfTk9fRVJST1IoKTsKIAogICAgIC8vIEVuc3VyZSB0aGF0IHRoZSByZW5k
ZXIgcGFzcyB3YXNuJ3QgYnJva2VuCi0gICAgRVhQRUNUX0VRKGV4cGVjdGVkLnJlbmRlclBhc3Nl
cywgY291bnRlcnMucmVuZGVyUGFzc2VzKTsKKyAgICBFWFBFQ1RfRVEoZXhwZWN0ZWQucmVuZGVy
UGFzc2VzLCBnZXRQZXJmQ291bnRlcnMoKS5yZW5kZXJQYXNzZXMpOwogCiAgICAgLy8gVXNlIHN3
YXBCdWZmZXJzIGFuZCB0aGVuIGNoZWNrIGhvdyBtYW55IGxvYWRzIGFuZCBzdG9yZXMgd2VyZSBh
Y3R1YWxseSBkb25lCiAgICAgc3dhcEJ1ZmZlcnMoKTsKLSAgICBjb21wYXJlRGVwdGhTdGVuY2ls
Q291bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChjb3VudGVycywgZXhwZWN0ZWQpOworICAgIGNvbXBh
cmVEZXB0aFN0ZW5jaWxDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGdldFBlcmZDb3VudGVycygp
LCBleHBlY3RlZCk7CiAKICAgICAvLyBTdGFydCBhbmQgZW5kIGFub3RoZXIgcmVuZGVyIHBhc3Ms
IHRvIGNoZWNrIHRoYXQgdGhlIGxvYWQgb3BzIGFyZSBhcyBleHBlY3RlZAotICAgIHNldEFuZElu
Y3JlbWVudExvYWRDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGNvdW50ZXJzLCAxLCAwLCAmZXhw
ZWN0ZWQpOworICAgIHNldEFuZEluY3JlbWVudExvYWRDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0
KGdldFBlcmZDb3VudGVycygpLCAxLCAwLCAmZXhwZWN0ZWQpOwogICAgIGRyYXdRdWFkKHByb2dy
YW0sIGVzc2wxX3NoYWRlcnM6OlBvc2l0aW9uQXR0cmliKCksIDAuNWYpOwogICAgIEFTU0VSVF9H
TF9OT19FUlJPUigpOwogICAgIHN3YXBCdWZmZXJzKCk7Ci0gICAgY29tcGFyZUxvYWRDb3VudGVy
c0ZvckludmFsaWRhdGVUZXN0KGNvdW50ZXJzLCBleHBlY3RlZCk7CisgICAgY29tcGFyZUxvYWRD
b3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGdldFBlcmZDb3VudGVycygpLCBleHBlY3RlZCk7CiB9
CiAKIC8vIFRlc3RzIHRoYXQgYW5vdGhlciBjb21tb24gKGRFUVApIGNhc2UgZG9lcyBub3QgYnJl
YWsgcmVuZGVyIHBhc3MsIGFuZCB0aGF0IGNvdW50cyBhcmUgY29ycmVjdDoKQEAgLTExNzAsMTEg
KzEyNDYsMTEgQEAgVEVTVF9QKFZ1bGthblBlcmZvcm1hbmNlQ291bnRlclRlc3QsIEludmFsaWRh
dGVEcmF3RGlzYWJsZUVuYWJsZUludmFsaWRhdGVEcmF3KQogLy8gLSBTY2VuYXJpbzogaW52YWxp
ZGF0ZSwgZGlzYWJsZSwgZW5hYmxlLCBkcmF3CiBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VDb3Vu
dGVyVGVzdCwgSW52YWxpZGF0ZURpc2FibGVFbmFibGVEcmF3KQogewotICAgIGNvbnN0IHJ4Ojp2
azo6UGVyZkNvdW50ZXJzICZjb3VudGVycyA9IGhhY2tBTkdMRSgpOwotICAgIHJ4Ojp2azo6UGVy
ZkNvdW50ZXJzIGV4cGVjdGVkOworICAgIEFOR0xFX1NLSVBfVEVTVF9JRighSXNHTEV4dGVuc2lv
bkVuYWJsZWQoa1BlcmZNb25pdG9yRXh0ZW5zaW9uTmFtZSkpOworICAgIGFuZ2xlOjpWdWxrYW5Q
ZXJmQ291bnRlcnMgZXhwZWN0ZWQ7CiAKICAgICAvLyBFeHBlY3QgcnBDb3VudCsxLCBkZXB0aChD
bGVhcnMrMSwgTG9hZHMrMCwgU3RvcmVzKzEpLCBzdGVuY2lsKENsZWFycyswLCBMb2FkKzAsIFN0
b3JlcyswKQotICAgIHNldEV4cGVjdGVkQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChjb3VudGVy
cywgMSwgMSwgMCwgMSwgMCwgMCwgMCwgJmV4cGVjdGVkKTsKKyAgICBzZXRFeHBlY3RlZENvdW50
ZXJzRm9ySW52YWxpZGF0ZVRlc3QoZ2V0UGVyZkNvdW50ZXJzKCksIDEsIDEsIDAsIDEsIDAsIDAs
IDAsICZleHBlY3RlZCk7CiAKICAgICBBTkdMRV9HTF9QUk9HUkFNKHByb2dyYW0sIGVzc2wxX3No
YWRlcnM6OnZzOjpTaW1wbGUoKSwgZXNzbDFfc2hhZGVyczo6ZnM6OlJlZCgpKTsKICAgICBHTEZy
YW1lYnVmZmVyIGZyYW1lYnVmZmVyOwpAQCAtMTIwNSwyOCArMTI4MSwyOCBAQCBURVNUX1AoVnVs
a2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdCwgSW52YWxpZGF0ZURpc2FibGVFbmFibGVEcmF3KQog
ICAgIEFTU0VSVF9HTF9OT19FUlJPUigpOwogCiAgICAgLy8gRW5zdXJlIHRoYXQgdGhlIHJlbmRl
ciBwYXNzIHdhc24ndCBicm9rZW4KLSAgICBFWFBFQ1RfRVEoZXhwZWN0ZWQucmVuZGVyUGFzc2Vz
LCBjb3VudGVycy5yZW5kZXJQYXNzZXMpOworICAgIEVYUEVDVF9FUShleHBlY3RlZC5yZW5kZXJQ
YXNzZXMsIGdldFBlcmZDb3VudGVycygpLnJlbmRlclBhc3Nlcyk7CiAKICAgICAvLyBVc2Ugc3dh
cEJ1ZmZlcnMgYW5kIHRoZW4gY2hlY2sgaG93IG1hbnkgbG9hZHMgYW5kIHN0b3JlcyB3ZXJlIGFj
dHVhbGx5IGRvbmUKICAgICBzd2FwQnVmZmVycygpOwotICAgIGNvbXBhcmVEZXB0aFN0ZW5jaWxD
b3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGNvdW50ZXJzLCBleHBlY3RlZCk7CisgICAgY29tcGFy
ZURlcHRoU3RlbmNpbENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoZ2V0UGVyZkNvdW50ZXJzKCks
IGV4cGVjdGVkKTsKIAogICAgIC8vIFN0YXJ0IGFuZCBlbmQgYW5vdGhlciByZW5kZXIgcGFzcywg
dG8gY2hlY2sgdGhhdCB0aGUgbG9hZCBvcHMgYXJlIGFzIGV4cGVjdGVkCi0gICAgc2V0QW5kSW5j
cmVtZW50TG9hZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoY291bnRlcnMsIDEsIDEsICZleHBl
Y3RlZCk7CisgICAgc2V0QW5kSW5jcmVtZW50TG9hZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3Qo
Z2V0UGVyZkNvdW50ZXJzKCksIDEsIDEsICZleHBlY3RlZCk7CiAgICAgZHJhd1F1YWQocHJvZ3Jh
bSwgZXNzbDFfc2hhZGVyczo6UG9zaXRpb25BdHRyaWIoKSwgMC41Zik7CiAgICAgQVNTRVJUX0dM
X05PX0VSUk9SKCk7CiAgICAgc3dhcEJ1ZmZlcnMoKTsKLSAgICBjb21wYXJlTG9hZENvdW50ZXJz
Rm9ySW52YWxpZGF0ZVRlc3QoY291bnRlcnMsIGV4cGVjdGVkKTsKKyAgICBjb21wYXJlTG9hZENv
dW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoZ2V0UGVyZkNvdW50ZXJzKCksIGV4cGVjdGVkKTsKIH0K
IAogLy8gVGVzdHMgdGhhdCBhbiBpbiByZW5kZXJwYXNzIGNsZWFyIGFmdGVyIGludmFsaWRhdGUg
a2VlcHMgY29udGVudCBzdG9yZWQuCiBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVz
dCwgSW52YWxpZGF0ZUFuZENsZWFyKQogewotICAgIGNvbnN0IHJ4Ojp2azo6UGVyZkNvdW50ZXJz
ICZjb3VudGVycyA9IGhhY2tBTkdMRSgpOwotICAgIHJ4Ojp2azo6UGVyZkNvdW50ZXJzIGV4cGVj
dGVkOworICAgIEFOR0xFX1NLSVBfVEVTVF9JRighSXNHTEV4dGVuc2lvbkVuYWJsZWQoa1BlcmZN
b25pdG9yRXh0ZW5zaW9uTmFtZSkpOworICAgIGFuZ2xlOjpWdWxrYW5QZXJmQ291bnRlcnMgZXhw
ZWN0ZWQ7CiAKICAgICAvLyBFeHBlY3QgcnBDb3VudCsxLCBkZXB0aChDbGVhcnMrMSwgTG9hZHMr
MCwgU3RvcmVzKzEpLCBzdGVuY2lsKENsZWFycyswLCBMb2FkKzAsIFN0b3JlcyswKQotICAgIHNl
dEV4cGVjdGVkQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChjb3VudGVycywgMSwgMSwgMCwgMSwg
MCwgMCwgMCwgJmV4cGVjdGVkKTsKKyAgICBzZXRFeHBlY3RlZENvdW50ZXJzRm9ySW52YWxpZGF0
ZVRlc3QoZ2V0UGVyZkNvdW50ZXJzKCksIDEsIDEsIDAsIDEsIDAsIDAsIDAsICZleHBlY3RlZCk7
CiAKICAgICBBTkdMRV9HTF9QUk9HUkFNKHByb2dyYW0sIGVzc2wxX3NoYWRlcnM6OnZzOjpTaW1w
bGUoKSwgZXNzbDFfc2hhZGVyczo6ZnM6OlJlZCgpKTsKICAgICBHTEZyYW1lYnVmZmVyIGZyYW1l
YnVmZmVyOwpAQCAtMTI1MCwxMCArMTMyNiwxMCBAQCBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VD
b3VudGVyVGVzdCwgSW52YWxpZGF0ZUFuZENsZWFyKQogCiAgICAgLy8gVXNlIHN3YXBCdWZmZXJz
IGFuZCB0aGVuIGNoZWNrIGhvdyBtYW55IGxvYWRzIGFuZCBzdG9yZXMgd2VyZSBhY3R1YWxseSBk
b25lCiAgICAgc3dhcEJ1ZmZlcnMoKTsKLSAgICBjb21wYXJlRGVwdGhTdGVuY2lsQ291bnRlcnNG
b3JJbnZhbGlkYXRlVGVzdChjb3VudGVycywgZXhwZWN0ZWQpOworICAgIGNvbXBhcmVEZXB0aFN0
ZW5jaWxDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGdldFBlcmZDb3VudGVycygpLCBleHBlY3Rl
ZCk7CiAKICAgICAvLyBFeHBlY3QgcnBDb3VudCsxLCBkZXB0aChDbGVhcnMrMCwgTG9hZHMrMSwg
U3RvcmVzKzEpLCBzdGVuY2lsKENsZWFycyswLCBMb2FkKzAsIFN0b3JlcyswKQotICAgIHNldEV4
cGVjdGVkQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChjb3VudGVycywgMCwgMCwgMSwgMSwgMCwg
MCwgMCwgJmV4cGVjdGVkKTsKKyAgICBzZXRFeHBlY3RlZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRl
c3QoZ2V0UGVyZkNvdW50ZXJzKCksIDAsIDAsIDEsIDEsIDAsIDAsIDAsICZleHBlY3RlZCk7CiAK
ICAgICAvLyBCaW5kIEZCTyBhZ2FpbiBhbmQgdHJ5IHRvIHVzZSB0aGUgZGVwdGggYnVmZmVyIHdp
dGhvdXQgY2xlYXIuIFRoaXMgc2hvdWxkIHJlc3VsdCBpbgogICAgIC8vIGxvYWRPcD1MT0FEIGFu
ZCBTdG9yZU9QPVNUT1JFCkBAIC0xMjY1LDE4ICsxMzQxLDE4IEBAIFRFU1RfUChWdWxrYW5QZXJm
b3JtYW5jZUNvdW50ZXJUZXN0LCBJbnZhbGlkYXRlQW5kQ2xlYXIpCiAgICAgLy8gU2hvdWxkIHBh
c3MgZGVwdGggdGVzdDogKDAuNSsxLjApLzIuMD0wLjc1IDwgMS4wCiAgICAgZHJhd1F1YWQoYmx1
ZVByb2dyYW0sIGVzc2wxX3NoYWRlcnM6OlBvc2l0aW9uQXR0cmliKCksIDAuNWYpOwogICAgIEVY
UEVDVF9QSVhFTF9DT0xPUl9FUShrSW52YWxpZGF0ZVRlc3RTaXplIC8gMiwga0ludmFsaWRhdGVU
ZXN0U2l6ZSAvIDIsIEdMQ29sb3I6OmJsdWUpOwotICAgIGNvbXBhcmVEZXB0aFN0ZW5jaWxDb3Vu
dGVyc0ZvckludmFsaWRhdGVUZXN0KGNvdW50ZXJzLCBleHBlY3RlZCk7CisgICAgY29tcGFyZURl
cHRoU3RlbmNpbENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoZ2V0UGVyZkNvdW50ZXJzKCksIGV4
cGVjdGVkKTsKIH0KIAogLy8gVGVzdHMgdGhhdCB0aGUgZHJhdyBwYXRoIGZvciBjbGVhciBhZnRl
ciBpbnZhbGlkYXRlIGFuZCBkaXNhYmxpbmcgZGVwdGgvc3RlbmNpbCB0ZXN0IGtlZXBzCiAvLyBj
b250ZW50IHN0b3JlZC4KIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJUZXN0LCBJbnZh
bGlkYXRlQW5kTWFza2VkQ2xlYXIpCiB7Ci0gICAgY29uc3Qgcng6OnZrOjpQZXJmQ291bnRlcnMg
JmNvdW50ZXJzID0gaGFja0FOR0xFKCk7Ci0gICAgcng6OnZrOjpQZXJmQ291bnRlcnMgZXhwZWN0
ZWQ7CisgICAgQU5HTEVfU0tJUF9URVNUX0lGKCFJc0dMRXh0ZW5zaW9uRW5hYmxlZChrUGVyZk1v
bml0b3JFeHRlbnNpb25OYW1lKSk7CisgICAgYW5nbGU6OlZ1bGthblBlcmZDb3VudGVycyBleHBl
Y3RlZDsKIAogICAgIC8vIEV4cGVjdCBycENvdW50KzEsIGRlcHRoKENsZWFycysxLCBMb2Fkcysw
LCBTdG9yZXMrMSksIHN0ZW5jaWwoQ2xlYXJzKzEsIExvYWQrMCwgU3RvcmVzKzEpCi0gICAgc2V0
RXhwZWN0ZWRDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGNvdW50ZXJzLCAxLCAxLCAwLCAxLCAx
LCAwLCAxLCAmZXhwZWN0ZWQpOworICAgIHNldEV4cGVjdGVkQ291bnRlcnNGb3JJbnZhbGlkYXRl
VGVzdChnZXRQZXJmQ291bnRlcnMoKSwgMSwgMSwgMCwgMSwgMSwgMCwgMSwgJmV4cGVjdGVkKTsK
IAogICAgIEFOR0xFX0dMX1BST0dSQU0ocHJvZ3JhbSwgZXNzbDFfc2hhZGVyczo6dnM6OlNpbXBs
ZSgpLCBlc3NsMV9zaGFkZXJzOjpmczo6UmVkKCkpOwogICAgIEdMRnJhbWVidWZmZXIgZnJhbWVi
dWZmZXI7CkBAIC0xMzA4LDEwICsxMzg0LDEwIEBAIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5jZUNv
dW50ZXJUZXN0LCBJbnZhbGlkYXRlQW5kTWFza2VkQ2xlYXIpCiAKICAgICAvLyBVc2Ugc3dhcEJ1
ZmZlcnMgYW5kIHRoZW4gY2hlY2sgaG93IG1hbnkgbG9hZHMgYW5kIHN0b3JlcyB3ZXJlIGFjdHVh
bGx5IGRvbmUKICAgICBzd2FwQnVmZmVycygpOwotICAgIGNvbXBhcmVEZXB0aFN0ZW5jaWxDb3Vu
dGVyc0ZvckludmFsaWRhdGVUZXN0KGNvdW50ZXJzLCBleHBlY3RlZCk7CisgICAgY29tcGFyZURl
cHRoU3RlbmNpbENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoZ2V0UGVyZkNvdW50ZXJzKCksIGV4
cGVjdGVkKTsKIAogICAgIC8vIEV4cGVjdCBycENvdW50KzEsIGRlcHRoKENsZWFycyswLCBMb2Fk
cysxLCBTdG9yZXMrMSksIHN0ZW5jaWwoQ2xlYXJzKzAsIExvYWQrMSwgU3RvcmVzKzEpCi0gICAg
c2V0RXhwZWN0ZWRDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGNvdW50ZXJzLCAwLCAwLCAxLCAx
LCAwLCAxLCAxLCAmZXhwZWN0ZWQpOworICAgIHNldEV4cGVjdGVkQ291bnRlcnNGb3JJbnZhbGlk
YXRlVGVzdChnZXRQZXJmQ291bnRlcnMoKSwgMCwgMCwgMSwgMSwgMCwgMSwgMSwgJmV4cGVjdGVk
KTsKIAogICAgIC8vIEJpbmQgRkJPIGFnYWluIGFuZCB0cnkgdG8gdXNlIHRoZSBkZXB0aCBidWZm
ZXIgd2l0aG91dCBjbGVhci4gVGhpcyBzaG91bGQgcmVzdWx0IGluCiAgICAgLy8gbG9hZE9wPUxP
QUQgYW5kIFN0b3JlT1A9U1RPUkUKQEAgLTEzMjUsNyArMTQwMSw3IEBAIFRFU1RfUChWdWxrYW5Q
ZXJmb3JtYW5jZUNvdW50ZXJUZXN0LCBJbnZhbGlkYXRlQW5kTWFza2VkQ2xlYXIpCiAgICAgQU5H
TEVfR0xfUFJPR1JBTShibHVlUHJvZ3JhbSwgZXNzbDFfc2hhZGVyczo6dnM6OlNpbXBsZSgpLCBl
c3NsMV9zaGFkZXJzOjpmczo6Qmx1ZSgpKTsKICAgICBkcmF3UXVhZChibHVlUHJvZ3JhbSwgZXNz
bDFfc2hhZGVyczo6UG9zaXRpb25BdHRyaWIoKSwgMC45NWYpOwogICAgIEVYUEVDVF9QSVhFTF9D
T0xPUl9FUShrSW52YWxpZGF0ZVRlc3RTaXplIC8gMiwga0ludmFsaWRhdGVUZXN0U2l6ZSAvIDIs
IEdMQ29sb3I6OmJsdWUpOwotICAgIGNvbXBhcmVEZXB0aFN0ZW5jaWxDb3VudGVyc0ZvckludmFs
aWRhdGVUZXN0KGNvdW50ZXJzLCBleHBlY3RlZCk7CisgICAgY29tcGFyZURlcHRoU3RlbmNpbENv
dW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoZ2V0UGVyZkNvdW50ZXJzKCksIGV4cGVjdGVkKTsKIH0K
IAogLy8gVGVzdHMgd2hldGhlciBkZXB0aC1zdGVuY2lsIENvbnRlbnREZWZpbmVkIHdpbGwgYmUg
Y29ycmVjdCB3aGVuOgpAQCAtMTMzMywxMSArMTQwOSwxMSBAQCBURVNUX1AoVnVsa2FuUGVyZm9y
bWFuY2VDb3VudGVyVGVzdCwgSW52YWxpZGF0ZUFuZE1hc2tlZENsZWFyKQogLy8gLSBTY2VuYXJp
bzogaW52YWxpZGF0ZSwgZGV0YWNoIEQvUyB0ZXh0dXJlIGFuZCBtb2RpZnkgaXQsIGF0dGFjaCBE
L1MgdGV4dHVyZSwgZHJhdyB3aXRoIGJsZW5kCiBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VDb3Vu
dGVyVGVzdCwgSW52YWxpZGF0ZURldGFjaE1vZGlmeVRleEF0dGFjaERyYXdXaXRoQmxlbmQpCiB7
Ci0gICAgY29uc3Qgcng6OnZrOjpQZXJmQ291bnRlcnMgJmNvdW50ZXJzID0gaGFja0FOR0xFKCk7
Ci0gICAgcng6OnZrOjpQZXJmQ291bnRlcnMgZXhwZWN0ZWQ7CisgICAgQU5HTEVfU0tJUF9URVNU
X0lGKCFJc0dMRXh0ZW5zaW9uRW5hYmxlZChrUGVyZk1vbml0b3JFeHRlbnNpb25OYW1lKSk7Cisg
ICAgYW5nbGU6OlZ1bGthblBlcmZDb3VudGVycyBleHBlY3RlZDsKIAogICAgIC8vIEV4cGVjdCBy
cENvdW50KzEsIGRlcHRoKENsZWFycysxLCBMb2FkcyswLCBTdG9yZXMrMSksIHN0ZW5jaWwoQ2xl
YXJzKzAsIExvYWQrMCwgU3RvcmVzKzEpCi0gICAgc2V0RXhwZWN0ZWRDb3VudGVyc0ZvckludmFs
aWRhdGVUZXN0KGNvdW50ZXJzLCAxLCAxLCAwLCAwLCAwLCAwLCAwLCAmZXhwZWN0ZWQpOworICAg
IHNldEV4cGVjdGVkQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChnZXRQZXJmQ291bnRlcnMoKSwg
MSwgMSwgMCwgMCwgMCwgMCwgMCwgJmV4cGVjdGVkKTsKIAogICAgIEFOR0xFX0dMX1BST0dSQU0o
cmVkUHJvZ3JhbSwgZXNzbDFfc2hhZGVyczo6dnM6OlNpbXBsZSgpLCBlc3NsMV9zaGFkZXJzOjpm
czo6UmVkKCkpOwogICAgIEFOR0xFX0dMX1BST0dSQU0oZ3JlZW5Qcm9ncmFtLCBlc3NsMV9zaGFk
ZXJzOjp2czo6U2ltcGxlKCksIGVzc2wxX3NoYWRlcnM6OmZzOjpHcmVlbigpKTsKQEAgLTEzNzMs
OSArMTQ0OSw5IEBAIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJUZXN0LCBJbnZhbGlk
YXRlRGV0YWNoTW9kaWZ5VGV4QXR0YWNoRHJhd1dpdGhCbGVuCiAgICAgQVNTRVJUX0dMX05PX0VS
Uk9SKCk7CiAKICAgICAvLyBDaGVjayBmb3IgdGhlIGV4cGVjdGVkIG51bWJlciBvZiByZW5kZXIg
cGFzc2VzLCBleHBlY3RlZCBjb2xvciwgYW5kIG90aGVyIGV4cGVjdGVkIGNvdW50ZXJzCi0gICAg
RVhQRUNUX0VRKGV4cGVjdGVkLnJlbmRlclBhc3NlcywgY291bnRlcnMucmVuZGVyUGFzc2VzKTsK
KyAgICBFWFBFQ1RfRVEoZXhwZWN0ZWQucmVuZGVyUGFzc2VzLCBnZXRQZXJmQ291bnRlcnMoKS5y
ZW5kZXJQYXNzZXMpOwogICAgIEVYUEVDVF9QSVhFTF9DT0xPUl9FUSgwLCAwLCBHTENvbG9yOjpy
ZWQpOwotICAgIGNvbXBhcmVEZXB0aFN0ZW5jaWxDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGNv
dW50ZXJzLCBleHBlY3RlZCk7CisgICAgY29tcGFyZURlcHRoU3RlbmNpbENvdW50ZXJzRm9ySW52
YWxpZGF0ZVRlc3QoZ2V0UGVyZkNvdW50ZXJzKCksIGV4cGVjdGVkKTsKIAogICAgIC8vIERldGFj
aCBkZXB0aC1zdGVuY2lsIGF0dGFjaG1lbnQKICAgICBnbEZyYW1lYnVmZmVyVGV4dHVyZTJEKEdM
X0ZSQU1FQlVGRkVSLCBHTF9ERVBUSF9TVEVOQ0lMX0FUVEFDSE1FTlQsIEdMX1RFWFRVUkVfMkQs
IDAsIDApOwpAQCAtMTM5NywyNCArMTQ3MywyNCBAQCBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VD
b3VudGVyVGVzdCwgSW52YWxpZGF0ZURldGFjaE1vZGlmeVRleEF0dGFjaERyYXdXaXRoQmxlbgog
ICAgIC8vIERyYXcgYWdhaW4sIHNob3dpbmcgdGhhdCB0aGUgbW9kaWZpZWQgZGVwdGgtc3RlbmNp
bCB2YWx1ZSBwcmV2ZW50cyBhIG5ldyBjb2xvciB2YWx1ZQogICAgIC8vCiAgICAgLy8gRXhwZWN0
IHJwQ291bnQrMSwgZGVwdGgoQ2xlYXJzKzAsIExvYWRzKzEsIFN0b3JlcysxKSwgc3RlbmNpbChD
bGVhcnMrMCwgTG9hZCsxLCBTdG9yZXMrMSkKLSAgICBzZXRFeHBlY3RlZENvdW50ZXJzRm9ySW52
YWxpZGF0ZVRlc3QoY291bnRlcnMsIDEsIDAsIDEsIDEsIDAsIDEsIDEsICZleHBlY3RlZCk7Cisg
ICAgc2V0RXhwZWN0ZWRDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGdldFBlcmZDb3VudGVycygp
LCAxLCAwLCAxLCAxLCAwLCAxLCAxLCAmZXhwZWN0ZWQpOwogICAgIGRyYXdRdWFkKGdyZWVuUHJv
Z3JhbSwgZXNzbDFfc2hhZGVyczo6UG9zaXRpb25BdHRyaWIoKSwgMC41Zik7CiAgICAgQVNTRVJU
X0dMX05PX0VSUk9SKCk7CiAgICAgLy8gQ2hlY2sgZm9yIHRoZSBleHBlY3RlZCBudW1iZXIgb2Yg
cmVuZGVyIHBhc3NlcywgZXhwZWN0ZWQgY29sb3IsIGFuZCBvdGhlciBleHBlY3RlZCBjb3VudGVy
cwotICAgIEVYUEVDVF9FUShleHBlY3RlZC5yZW5kZXJQYXNzZXMsIGNvdW50ZXJzLnJlbmRlclBh
c3Nlcyk7CisgICAgRVhQRUNUX0VRKGV4cGVjdGVkLnJlbmRlclBhc3NlcywgZ2V0UGVyZkNvdW50
ZXJzKCkucmVuZGVyUGFzc2VzKTsKICAgICBFWFBFQ1RfUElYRUxfQ09MT1JfRVEoMCwgMCwgR0xD
b2xvcjo6cmVkKTsKLSAgICBjb21wYXJlRGVwdGhTdGVuY2lsQ291bnRlcnNGb3JJbnZhbGlkYXRl
VGVzdChjb3VudGVycywgZXhwZWN0ZWQpOworICAgIGNvbXBhcmVEZXB0aFN0ZW5jaWxDb3VudGVy
c0ZvckludmFsaWRhdGVUZXN0KGdldFBlcmZDb3VudGVycygpLCBleHBlY3RlZCk7CiAKICAgICAv
LyBEcmF3IGFnYWluLCB1c2luZyBhIGRpZmZlcmVudCBkZXB0aCB2YWx1ZSwgc28gdGhhdCB0aGUg
ZHJhd2luZyB0YWtlcyBwbGFjZQogICAgIC8vCiAgICAgLy8gRXhwZWN0IHJwQ291bnQrMSwgZGVw
dGgoQ2xlYXJzKzAsIExvYWRzKzEsIFN0b3JlcysxKSwgc3RlbmNpbChDbGVhcnMrMCwgTG9hZCsx
LCBTdG9yZXMrMSkKLSAgICBzZXRFeHBlY3RlZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoY291
bnRlcnMsIDEsIDAsIDEsIDEsIDAsIDEsIDEsICZleHBlY3RlZCk7CisgICAgc2V0RXhwZWN0ZWRD
b3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGdldFBlcmZDb3VudGVycygpLCAxLCAwLCAxLCAxLCAw
LCAxLCAxLCAmZXhwZWN0ZWQpOwogICAgIGRyYXdRdWFkKGdyZWVuUHJvZ3JhbSwgZXNzbDFfc2hh
ZGVyczo6UG9zaXRpb25BdHRyaWIoKSwgMC4yZik7CiAgICAgQVNTRVJUX0dMX05PX0VSUk9SKCk7
CiAgICAgLy8gQ2hlY2sgZm9yIHRoZSBleHBlY3RlZCBudW1iZXIgb2YgcmVuZGVyIHBhc3Nlcywg
ZXhwZWN0ZWQgY29sb3IsIGFuZCBvdGhlciBleHBlY3RlZCBjb3VudGVycwotICAgIEVYUEVDVF9F
UShleHBlY3RlZC5yZW5kZXJQYXNzZXMsIGNvdW50ZXJzLnJlbmRlclBhc3Nlcyk7CisgICAgRVhQ
RUNUX0VRKGV4cGVjdGVkLnJlbmRlclBhc3NlcywgZ2V0UGVyZkNvdW50ZXJzKCkucmVuZGVyUGFz
c2VzKTsKICAgICBFWFBFQ1RfUElYRUxfQ09MT1JfRVEoMCwgMCwgR0xDb2xvcjo6Z3JlZW4pOwot
ICAgIGNvbXBhcmVEZXB0aFN0ZW5jaWxDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGNvdW50ZXJz
LCBleHBlY3RlZCk7CisgICAgY29tcGFyZURlcHRoU3RlbmNpbENvdW50ZXJzRm9ySW52YWxpZGF0
ZVRlc3QoZ2V0UGVyZkNvdW50ZXJzKCksIGV4cGVjdGVkKTsKIH0KIAogLy8gVGVzdHMgdGhhdCBh
IEdMUmVuZGVyYnVmZmVyIGNhbiBiZSBkZWxldGVkIGJlZm9yZSB0aGUgcmVuZGVyIHBhc3MgZW5k
cywgYW5kIHRoYXQgZXZlcnl0aGluZwpAQCAtMTQyMywxMSArMTQ5OSwxMSBAQCBURVNUX1AoVnVs
a2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdCwgSW52YWxpZGF0ZURldGFjaE1vZGlmeVRleEF0dGFj
aERyYXdXaXRoQmxlbgogLy8gLSBTY2VuYXJpbzogaW52YWxpZGF0ZQogVEVTVF9QKFZ1bGthblBl
cmZvcm1hbmNlQ291bnRlclRlc3QsIEludmFsaWRhdGVEcmF3QW5kRGVsZXRlUmVuZGVyYnVmZmVy
KQogewotICAgIGNvbnN0IHJ4Ojp2azo6UGVyZkNvdW50ZXJzICZjb3VudGVycyA9IGhhY2tBTkdM
RSgpOwotICAgIHJ4Ojp2azo6UGVyZkNvdW50ZXJzIGV4cGVjdGVkOworICAgIEFOR0xFX1NLSVBf
VEVTVF9JRighSXNHTEV4dGVuc2lvbkVuYWJsZWQoa1BlcmZNb25pdG9yRXh0ZW5zaW9uTmFtZSkp
OworICAgIGFuZ2xlOjpWdWxrYW5QZXJmQ291bnRlcnMgZXhwZWN0ZWQ7CiAKICAgICAvLyBFeHBl
Y3QgcnBDb3VudCsxLCBkZXB0aChDbGVhcnMrMSwgTG9hZHMrMCwgU3RvcmVzKzEpLCBzdGVuY2ls
KENsZWFycyswLCBMb2FkKzAsIFN0b3JlcyswKQotICAgIHNldEV4cGVjdGVkQ291bnRlcnNGb3JJ
bnZhbGlkYXRlVGVzdChjb3VudGVycywgMSwgMSwgMCwgMSwgMCwgMCwgMCwgJmV4cGVjdGVkKTsK
KyAgICBzZXRFeHBlY3RlZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoZ2V0UGVyZkNvdW50ZXJz
KCksIDEsIDEsIDAsIDEsIDAsIDAsIDAsICZleHBlY3RlZCk7CiAKICAgICBBTkdMRV9HTF9QUk9H
UkFNKHByb2dyYW0sIGVzc2wxX3NoYWRlcnM6OnZzOjpTaW1wbGUoKSwgZXNzbDFfc2hhZGVyczo6
ZnM6OlJlZCgpKTsKICAgICBHTEZyYW1lYnVmZmVyIGZyYW1lYnVmZmVyOwpAQCAtMTQ0OCwyNyAr
MTUyNCwyNyBAQCBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdCwgSW52YWxpZGF0
ZURyYXdBbmREZWxldGVSZW5kZXJidWZmZXIpCiAgICAgICAgIEFTU0VSVF9HTF9OT19FUlJPUigp
OwogCiAgICAgICAgIC8vIEVuc3VyZSB0aGF0IHRoZSByZW5kZXIgcGFzcyB3YXNuJ3QgYnJva2Vu
Ci0gICAgICAgIEVYUEVDVF9FUShleHBlY3RlZC5yZW5kZXJQYXNzZXMsIGNvdW50ZXJzLnJlbmRl
clBhc3Nlcyk7CisgICAgICAgIEVYUEVDVF9FUShleHBlY3RlZC5yZW5kZXJQYXNzZXMsIGdldFBl
cmZDb3VudGVycygpLnJlbmRlclBhc3Nlcyk7CiAgICAgfQogCiAgICAgLy8gVGhlIHJlbmRlcmJ1
ZmZlciBzaG91bGQgbm93IGJlIGRlbGV0ZWQuCiAKICAgICAvLyBVc2Ugc3dhcEJ1ZmZlcnMgYW5k
IHRoZW4gY2hlY2sgaG93IG1hbnkgbG9hZHMgYW5kIHN0b3JlcyB3ZXJlIGFjdHVhbGx5IGRvbmUK
ICAgICBzd2FwQnVmZmVycygpOwotICAgIGNvbXBhcmVEZXB0aFN0ZW5jaWxDb3VudGVyc0Zvcklu
dmFsaWRhdGVUZXN0KGNvdW50ZXJzLCBleHBlY3RlZCk7CisgICAgY29tcGFyZURlcHRoU3RlbmNp
bENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoZ2V0UGVyZkNvdW50ZXJzKCksIGV4cGVjdGVkKTsK
IAogICAgIC8vIFN0YXJ0IGFuZCBlbmQgYW5vdGhlciByZW5kZXIgcGFzcywgdG8gY2hlY2sgdGhh
dCB0aGUgbG9hZCBvcHMgYXJlIGFzIGV4cGVjdGVkCi0gICAgc2V0QW5kSW5jcmVtZW50TG9hZENv
dW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoY291bnRlcnMsIDAsIDAsICZleHBlY3RlZCk7CisgICAg
c2V0QW5kSW5jcmVtZW50TG9hZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoZ2V0UGVyZkNvdW50
ZXJzKCksIDAsIDAsICZleHBlY3RlZCk7CiAgICAgZHJhd1F1YWQocHJvZ3JhbSwgZXNzbDFfc2hh
ZGVyczo6UG9zaXRpb25BdHRyaWIoKSwgMC41Zik7CiAgICAgQVNTRVJUX0dMX05PX0VSUk9SKCk7
CiAgICAgc3dhcEJ1ZmZlcnMoKTsKLSAgICBjb21wYXJlTG9hZENvdW50ZXJzRm9ySW52YWxpZGF0
ZVRlc3QoY291bnRlcnMsIGV4cGVjdGVkKTsKKyAgICBjb21wYXJlTG9hZENvdW50ZXJzRm9ySW52
YWxpZGF0ZVRlc3QoZ2V0UGVyZkNvdW50ZXJzKCksIGV4cGVjdGVkKTsKIH0KIAogLy8gVGVzdHMg
dGhhdCBldmVuIGlmIHRoZSBhcHAgY2xlYXJzIGRlcHRoLCBpdCBzaG91bGQgYmUgaW52YWxpZGF0
ZWQgaWYgdGhlcmUgaXMgbm8gcmVhZC4KIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJU
ZXN0LCBTd2FwU2hvdWxkSW52YWxpZGF0ZURlcHRoQWZ0ZXJDbGVhcikKIHsKLSAgICBjb25zdCBy
eDo6dms6OlBlcmZDb3VudGVycyAmY291bnRlcnMgPSBoYWNrQU5HTEUoKTsKKyAgICBBTkdMRV9T
S0lQX1RFU1RfSUYoIUlzR0xFeHRlbnNpb25FbmFibGVkKGtQZXJmTW9uaXRvckV4dGVuc2lvbk5h
bWUpKTsKIAogICAgIEFOR0xFX0dMX1BST0dSQU0ocmVkUHJvZ3JhbSwgZXNzbDFfc2hhZGVyczo6
dnM6OlNpbXBsZSgpLCBlc3NsMV9zaGFkZXJzOjpmczo6UmVkKCkpOwogCkBAIC0xNDgyLDE4ICsx
NTU4LDE4IEBAIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJUZXN0LCBTd2FwU2hvdWxk
SW52YWxpZGF0ZURlcHRoQWZ0ZXJDbGVhcikKICAgICBkcmF3UXVhZChyZWRQcm9ncmFtLCBlc3Ns
MV9zaGFkZXJzOjpQb3NpdGlvbkF0dHJpYigpLCAwLjVmKTsKICAgICBBU1NFUlRfR0xfTk9fRVJS
T1IoKTsKIAotICAgIHVpbnQzMl90IGV4cGVjdGVkRGVwdGhDbGVhcnMgPSBjb3VudGVycy5kZXB0
aENsZWFyczsKKyAgICB1aW50MzJfdCBleHBlY3RlZERlcHRoQ2xlYXJzID0gZ2V0UGVyZkNvdW50
ZXJzKCkuZGVwdGhDbGVhcnM7CiAKICAgICBzd2FwQnVmZmVycygpOwogCi0gICAgdWludDMyX3Qg
YWN0dWFsRGVwdGhDbGVhcnMgPSBjb3VudGVycy5kZXB0aENsZWFyczsKKyAgICB1aW50MzJfdCBh
Y3R1YWxEZXB0aENsZWFycyA9IGdldFBlcmZDb3VudGVycygpLmRlcHRoQ2xlYXJzOwogICAgIEVY
UEVDVF9FUShleHBlY3RlZERlcHRoQ2xlYXJzLCBhY3R1YWxEZXB0aENsZWFycyk7CiB9CiAKIC8v
IFRlc3RzIHRoYXQgbWFza2VkIGNvbG9yIGNsZWFycyBkb24ndCBicmVhayB0aGUgUlAuCiBURVNU
X1AoVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdCwgTWFza2VkQ29sb3JDbGVhckRvZXNOb3RC
cmVha1JlbmRlclBhc3MpCiB7Ci0gICAgY29uc3Qgcng6OnZrOjpQZXJmQ291bnRlcnMgJmNvdW50
ZXJzID0gaGFja0FOR0xFKCk7CisgICAgQU5HTEVfU0tJUF9URVNUX0lGKCFJc0dMRXh0ZW5zaW9u
RW5hYmxlZChrUGVyZk1vbml0b3JFeHRlbnNpb25OYW1lKSk7CiAKICAgICBHTFRleHR1cmUgdGV4
dHVyZTsKICAgICBnbEJpbmRUZXh0dXJlKEdMX1RFWFRVUkVfMkQsIHRleHR1cmUpOwpAQCAtMTUw
NSw3ICsxNTgxLDcgQEAgVEVTVF9QKFZ1bGthblBlcmZvcm1hbmNlQ291bnRlclRlc3QsIE1hc2tl
ZENvbG9yQ2xlYXJEb2VzTm90QnJlYWtSZW5kZXJQYXNzKQogICAgIEFTU0VSVF9HTF9GUkFNRUJV
RkZFUl9DT01QTEVURShHTF9GUkFNRUJVRkZFUik7CiAgICAgQVNTRVJUX0dMX05PX0VSUk9SKCk7
CiAKLSAgICB1aW50MzJfdCBleHBlY3RlZFJlbmRlclBhc3NDb3VudCA9IGNvdW50ZXJzLnJlbmRl
clBhc3NlcyArIDE7CisgICAgdWludDMyX3QgZXhwZWN0ZWRSZW5kZXJQYXNzQ291bnQgPSBnZXRQ
ZXJmQ291bnRlcnMoKS5yZW5kZXJQYXNzZXMgKyAxOwogCiAgICAgLy8gTWFzayBjb2xvciBjaGFu
bmVscyBhbmQgY2xlYXIgdGhlIGZyYW1lYnVmZmVyIG11bHRpcGxlIHRpbWVzLgogICAgIGdsQ2xl
YXJDb2xvcigwLjI1ZiwgMC4yNWYsIDAuMjVmLCAwLjI1Zik7CkBAIC0xNTI0LDcgKzE2MDAsNyBA
QCBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdCwgTWFza2VkQ29sb3JDbGVhckRv
ZXNOb3RCcmVha1JlbmRlclBhc3MpCiAgICAgZ2xDb2xvck1hc2soR0xfRkFMU0UsIEdMX0ZBTFNF
LCBHTF9GQUxTRSwgR0xfVFJVRSk7CiAgICAgZ2xDbGVhcihHTF9DT0xPUl9CVUZGRVJfQklUKTsK
IAotICAgIHVpbnQzMl90IGFjdHVhbFJlbmRlclBhc3NDb3VudCA9IGNvdW50ZXJzLnJlbmRlclBh
c3NlczsKKyAgICB1aW50MzJfdCBhY3R1YWxSZW5kZXJQYXNzQ291bnQgPSBnZXRQZXJmQ291bnRl
cnMoKS5yZW5kZXJQYXNzZXM7CiAgICAgRVhQRUNUX0VRKGV4cGVjdGVkUmVuZGVyUGFzc0NvdW50
LCBhY3R1YWxSZW5kZXJQYXNzQ291bnQpOwogCiAgICAgRVhQRUNUX1BJWEVMX05FQVIoMCwgMCwg
NjMsIDEyNywgMjU1LCAxOTEsIDEpOwpAQCAtMTUzMyw3ICsxNjA5LDcgQEAgVEVTVF9QKFZ1bGth
blBlcmZvcm1hbmNlQ291bnRlclRlc3QsIE1hc2tlZENvbG9yQ2xlYXJEb2VzTm90QnJlYWtSZW5k
ZXJQYXNzKQogLy8gVGVzdHMgdGhhdCBtYXNrZWQgY29sb3IvZGVwdGgvc3RlbmNpbCBjbGVhcnMg
ZG9uJ3QgYnJlYWsgdGhlIFJQLgogVEVTVF9QKFZ1bGthblBlcmZvcm1hbmNlQ291bnRlclRlc3Qs
IE1hc2tlZENsZWFyRG9lc05vdEJyZWFrUmVuZGVyUGFzcykKIHsKLSAgICBjb25zdCByeDo6dms6
OlBlcmZDb3VudGVycyAmY291bnRlcnMgPSBoYWNrQU5HTEUoKTsKKyAgICBBTkdMRV9TS0lQX1RF
U1RfSUYoIUlzR0xFeHRlbnNpb25FbmFibGVkKGtQZXJmTW9uaXRvckV4dGVuc2lvbk5hbWUpKTsK
IAogICAgIGNvbnN0ZXhwciBHTHNpemVpIGtTaXplID0gNjQ7CiAKQEAgLTE1NTMsNyArMTYyOSw3
IEBAIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJUZXN0LCBNYXNrZWRDbGVhckRvZXNO
b3RCcmVha1JlbmRlclBhc3MpCiAgICAgQVNTRVJUX0dMX0ZSQU1FQlVGRkVSX0NPTVBMRVRFKEdM
X0ZSQU1FQlVGRkVSKTsKICAgICBBU1NFUlRfR0xfTk9fRVJST1IoKTsKIAotICAgIHVpbnQzMl90
IGV4cGVjdGVkUmVuZGVyUGFzc0NvdW50ID0gY291bnRlcnMucmVuZGVyUGFzc2VzICsgMTsKKyAg
ICB1aW50MzJfdCBleHBlY3RlZFJlbmRlclBhc3NDb3VudCA9IGdldFBlcmZDb3VudGVycygpLnJl
bmRlclBhc3NlcyArIDE7CiAKICAgICBnbEVuYWJsZShHTF9ERVBUSF9URVNUKTsKICAgICBnbEVu
YWJsZShHTF9TVEVOQ0lMX1RFU1QpOwpAQCAtMTU4Miw3ICsxNjU4LDcgQEAgVEVTVF9QKFZ1bGth
blBlcmZvcm1hbmNlQ291bnRlclRlc3QsIE1hc2tlZENsZWFyRG9lc05vdEJyZWFrUmVuZGVyUGFz
cykKICAgICBnbENsZWFyKEdMX0NPTE9SX0JVRkZFUl9CSVQgfCBHTF9ERVBUSF9CVUZGRVJfQklU
IHwgR0xfU1RFTkNJTF9CVUZGRVJfQklUKTsKIAogICAgIC8vIE1ha2Ugc3VyZSB0aGUgcmVuZGVy
IHBhc3Mgd2Fzbid0IGJyb2tlbi4KLSAgICBFWFBFQ1RfRVEoZXhwZWN0ZWRSZW5kZXJQYXNzQ291
bnQsIGNvdW50ZXJzLnJlbmRlclBhc3Nlcyk7CisgICAgRVhQRUNUX0VRKGV4cGVjdGVkUmVuZGVy
UGFzc0NvdW50LCBnZXRQZXJmQ291bnRlcnMoKS5yZW5kZXJQYXNzZXMpOwogCiAgICAgLy8gVmVy
aWZ5IHRoYXQgY2xlYXIgd2FzIGRvbmUgY29ycmVjdGx5LgogICAgIEVYUEVDVF9QSVhFTF9DT0xP
Ul9FUSgwLCAwLCBHTENvbG9yOjp5ZWxsb3cpOwpAQCAtMTYxNCwxMSArMTY5MCwxMSBAQCBURVNU
X1AoVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdCwgTWFza2VkQ2xlYXJEb2VzTm90QnJlYWtS
ZW5kZXJQYXNzKQogLy8gVGVzdHMgdGhhdCBjbGVhciBmb2xsb3dlZCBieSBzY2lzc29yZWQgZHJh
dyB1c2VzIGxvYWRPcCB0byBjbGVhci4KIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJU
ZXN0LCBDbGVhclRoZW5TY2lzc29yZWREcmF3KQogewotICAgIGNvbnN0IHJ4Ojp2azo6UGVyZkNv
dW50ZXJzICZjb3VudGVycyA9IGhhY2tBTkdMRSgpOworICAgIEFOR0xFX1NLSVBfVEVTVF9JRigh
SXNHTEV4dGVuc2lvbkVuYWJsZWQoa1BlcmZNb25pdG9yRXh0ZW5zaW9uTmFtZSkpOwogCi0gICAg
dWludDMyX3QgZXhwZWN0ZWRSZW5kZXJQYXNzQ291bnQgPSBjb3VudGVycy5yZW5kZXJQYXNzZXMg
KyAxOwotICAgIHVpbnQzMl90IGV4cGVjdGVkRGVwdGhDbGVhcnMgICAgID0gY291bnRlcnMuZGVw
dGhDbGVhcnMgKyAxOwotICAgIHVpbnQzMl90IGV4cGVjdGVkU3RlbmNpbENsZWFycyAgID0gY291
bnRlcnMuc3RlbmNpbENsZWFycyArIDE7CisgICAgdWludDMyX3QgZXhwZWN0ZWRSZW5kZXJQYXNz
Q291bnQgPSBnZXRQZXJmQ291bnRlcnMoKS5yZW5kZXJQYXNzZXMgKyAxOworICAgIHVpbnQzMl90
IGV4cGVjdGVkRGVwdGhDbGVhcnMgICAgID0gZ2V0UGVyZkNvdW50ZXJzKCkuZGVwdGhDbGVhcnMg
KyAxOworICAgIHVpbnQzMl90IGV4cGVjdGVkU3RlbmNpbENsZWFycyAgID0gZ2V0UGVyZkNvdW50
ZXJzKCkuc3RlbmNpbENsZWFycyArIDE7CiAKICAgICBjb25zdGV4cHIgR0xzaXplaSBrU2l6ZSA9
IDY0OwogCkBAIC0xNjY4LDkgKzE3NDQsOSBAQCBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VDb3Vu
dGVyVGVzdCwgQ2xlYXJUaGVuU2Npc3NvcmVkRHJhdykKICAgICBBU1NFUlRfR0xfTk9fRVJST1Io
KTsKIAogICAgIC8vIE1ha2Ugc3VyZSBhIHNpbmdsZSByZW5kZXIgcGFzcyB3YXMgdXNlZCBhbmQg
ZGVwdGgvc3RlbmNpbCBjbGVhciB1c2VkIGxvYWRPcD1DTEVBUi4KLSAgICBFWFBFQ1RfRVEoZXhw
ZWN0ZWRSZW5kZXJQYXNzQ291bnQsIGNvdW50ZXJzLnJlbmRlclBhc3Nlcyk7Ci0gICAgRVhQRUNU
X0VRKGV4cGVjdGVkRGVwdGhDbGVhcnMsIGNvdW50ZXJzLmRlcHRoQ2xlYXJzKTsKLSAgICBFWFBF
Q1RfRVEoZXhwZWN0ZWRTdGVuY2lsQ2xlYXJzLCBjb3VudGVycy5zdGVuY2lsQ2xlYXJzKTsKKyAg
ICBFWFBFQ1RfRVEoZXhwZWN0ZWRSZW5kZXJQYXNzQ291bnQsIGdldFBlcmZDb3VudGVycygpLnJl
bmRlclBhc3Nlcyk7CisgICAgRVhQRUNUX0VRKGV4cGVjdGVkRGVwdGhDbGVhcnMsIGdldFBlcmZD
b3VudGVycygpLmRlcHRoQ2xlYXJzKTsKKyAgICBFWFBFQ1RfRVEoZXhwZWN0ZWRTdGVuY2lsQ2xl
YXJzLCBnZXRQZXJmQ291bnRlcnMoKS5zdGVuY2lsQ2xlYXJzKTsKIAogICAgIC8vIFZlcmlmeSBj
b3JyZWN0bmVzcy4KICAgICBFWFBFQ1RfUElYRUxfQ09MT1JfRVEoMCwgMCwgR0xDb2xvcjo6Z3Jl
ZW4pOwpAQCAtMTY4Nyw3ICsxNzYzLDcgQEAgVEVTVF9QKFZ1bGthblBlcmZvcm1hbmNlQ291bnRl
clRlc3QsIENsZWFyVGhlblNjaXNzb3JlZERyYXcpCiAvLyBUZXN0cyB0aGF0IHNjaXNzb3JlZCBj
bGVhcnMgZG9uJ3QgYnJlYWsgdGhlIFJQLgogVEVTVF9QKFZ1bGthblBlcmZvcm1hbmNlQ291bnRl
clRlc3QsIFNjaXNzb3JlZENsZWFyRG9lc05vdEJyZWFrUmVuZGVyUGFzcykKIHsKLSAgICBjb25z
dCByeDo6dms6OlBlcmZDb3VudGVycyAmY291bnRlcnMgPSBoYWNrQU5HTEUoKTsKKyAgICBBTkdM
RV9TS0lQX1RFU1RfSUYoIUlzR0xFeHRlbnNpb25FbmFibGVkKGtQZXJmTW9uaXRvckV4dGVuc2lv
bk5hbWUpKTsKIAogICAgIGNvbnN0ZXhwciBHTHNpemVpIGtTaXplID0gNjQ7CiAKQEAgLTE3MDcs
NyArMTc4Myw3IEBAIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJUZXN0LCBTY2lzc29y
ZWRDbGVhckRvZXNOb3RCcmVha1JlbmRlclBhc3MpCiAgICAgQVNTRVJUX0dMX0ZSQU1FQlVGRkVS
X0NPTVBMRVRFKEdMX0ZSQU1FQlVGRkVSKTsKICAgICBBU1NFUlRfR0xfTk9fRVJST1IoKTsKIAot
ICAgIHVpbnQzMl90IGV4cGVjdGVkUmVuZGVyUGFzc0NvdW50ID0gY291bnRlcnMucmVuZGVyUGFz
c2VzICsgMTsKKyAgICB1aW50MzJfdCBleHBlY3RlZFJlbmRlclBhc3NDb3VudCA9IGdldFBlcmZD
b3VudGVycygpLnJlbmRlclBhc3NlcyArIDE7CiAKICAgICBnbEVuYWJsZShHTF9ERVBUSF9URVNU
KTsKICAgICBnbEVuYWJsZShHTF9TVEVOQ0lMX1RFU1QpOwpAQCAtMTczNiw3ICsxODEyLDcgQEAg
VEVTVF9QKFZ1bGthblBlcmZvcm1hbmNlQ291bnRlclRlc3QsIFNjaXNzb3JlZENsZWFyRG9lc05v
dEJyZWFrUmVuZGVyUGFzcykKICAgICBnbENsZWFyKEdMX0NPTE9SX0JVRkZFUl9CSVQgfCBHTF9E
RVBUSF9CVUZGRVJfQklUIHwgR0xfU1RFTkNJTF9CVUZGRVJfQklUKTsKIAogICAgIC8vIE1ha2Ug
c3VyZSB0aGUgcmVuZGVyIHBhc3Mgd2Fzbid0IGJyb2tlbi4KLSAgICBFWFBFQ1RfRVEoZXhwZWN0
ZWRSZW5kZXJQYXNzQ291bnQsIGNvdW50ZXJzLnJlbmRlclBhc3Nlcyk7CisgICAgRVhQRUNUX0VR
KGV4cGVjdGVkUmVuZGVyUGFzc0NvdW50LCBnZXRQZXJmQ291bnRlcnMoKS5yZW5kZXJQYXNzZXMp
OwogCiAgICAgLy8gVmVyaWZ5IHRoYXQgY2xlYXIgd2FzIGRvbmUgY29ycmVjdGx5LgogICAgIEVY
UEVDVF9QSVhFTF9DT0xPUl9FUSgwLCAwLCBHTENvbG9yOjpyZWQpOwpAQCAtMTc4NSw3ICsxODYx
LDcgQEAgVEVTVF9QKFZ1bGthblBlcmZvcm1hbmNlQ291bnRlclRlc3QsIFNjaXNzb3JlZENsZWFy
RG9lc05vdEJyZWFrUmVuZGVyUGFzcykKIC8vIFRlc3RzIHRoYXQgZHJhdyBidWZmZXIgY2hhbmdl
IHdpdGggYWxsIGNvbG9yIGNoYW5uZWwgbWFzayBvZmYgc2hvdWxkIG5vdCBicmVhayByZW5kZXJw
YXNzCiBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdCwgRHJhd2J1ZmZlckNoYW5n
ZVdpdGhBbGxDb2xvck1hc2tEaXNhYmxlZCkKIHsKLSAgICBjb25zdCByeDo6dms6OlBlcmZDb3Vu
dGVycyAmY291bnRlcnMgPSBoYWNrQU5HTEUoKTsKKyAgICBBTkdMRV9TS0lQX1RFU1RfSUYoIUlz
R0xFeHRlbnNpb25FbmFibGVkKGtQZXJmTW9uaXRvckV4dGVuc2lvbk5hbWUpKTsKIAogICAgIEFO
R0xFX0dMX1BST0dSQU0ocHJvZ3JhbSwgZXNzbDFfc2hhZGVyczo6dnM6OlBhc3N0aHJvdWdoKCks
IGVzc2wxX3NoYWRlcnM6OmZzOjpVbmlmb3JtQ29sb3IoKSk7CiAgICAgZ2xVc2VQcm9ncmFtKHBy
b2dyYW0pOwpAQCAtMTgxNCw3ICsxODkwLDcgQEAgVEVTVF9QKFZ1bGthblBlcmZvcm1hbmNlQ291
bnRlclRlc3QsIERyYXdidWZmZXJDaGFuZ2VXaXRoQWxsQ29sb3JNYXNrRGlzYWJsZWQpCiAgICAg
QVNTRVJUX0dMX0ZSQU1FQlVGRkVSX0NPTVBMRVRFKEdMX0ZSQU1FQlVGRkVSKTsKICAgICBBU1NF
UlRfR0xfTk9fRVJST1IoKTsKIAotICAgIHVpbnQzMl90IGV4cGVjdGVkUmVuZGVyUGFzc0NvdW50
ID0gY291bnRlcnMucmVuZGVyUGFzc2VzICsgMTsKKyAgICB1aW50MzJfdCBleHBlY3RlZFJlbmRl
clBhc3NDb3VudCA9IGdldFBlcmZDb3VudGVycygpLnJlbmRlclBhc3NlcyArIDE7CiAKICAgICAv
LyBEcmF3IGludG8gRkJPCiAgICAgZ2xCaW5kRnJhbWVidWZmZXIoR0xfRlJBTUVCVUZGRVIsIGZy
YW1lYnVmZmVyKTsKQEAgLTE4MzcsMTUgKzE5MTMsMTUgQEAgVEVTVF9QKFZ1bGthblBlcmZvcm1h
bmNlQ291bnRlclRlc3QsIERyYXdidWZmZXJDaGFuZ2VXaXRoQWxsQ29sb3JNYXNrRGlzYWJsZWQp
CiAgICAgZ2xVbmlmb3JtNGZ2KGNvbG9yVW5pZm9ybUxvY2F0aW9uLCAxLCBHTENvbG9yOjpyZWQu
dG9Ob3JtYWxpemVkVmVjdG9yKCkuZGF0YSgpKTsKICAgICBkcmF3UXVhZChwcm9ncmFtLCBlc3Ns
MV9zaGFkZXJzOjpQb3NpdGlvbkF0dHJpYigpLCAwLjdmKTsKIAotICAgIHVpbnQzMl90IGFjdHVh
bFJlbmRlclBhc3NDb3VudCA9IGNvdW50ZXJzLnJlbmRlclBhc3NlczsKKyAgICB1aW50MzJfdCBh
Y3R1YWxSZW5kZXJQYXNzQ291bnQgPSBnZXRQZXJmQ291bnRlcnMoKS5yZW5kZXJQYXNzZXM7CiAg
ICAgRVhQRUNUX0VRKGV4cGVjdGVkUmVuZGVyUGFzc0NvdW50LCBhY3R1YWxSZW5kZXJQYXNzQ291
bnQpOwogfQogCiAvLyBUZXN0cyB0aGUgb3B0aW1pemF0aW9uIHRoYXQgYSBnbEZsdXNoIGNhbGwg
aXNzdWVkIGluc2lkZSBhIHJlbmRlcnBhc3Mgd2lsbCBiZSBza2lwcGVkLgogVEVTVF9QKFZ1bGth
blBlcmZvcm1hbmNlQ291bnRlclRlc3QsIEluUmVuZGVycGFzc0ZsdXNoU2hvdWxkTm90QnJlYWtS
ZW5kZXJwYXNzKQogewotICAgIGNvbnN0IHJ4Ojp2azo6UGVyZkNvdW50ZXJzICZjb3VudGVycyA9
IGhhY2tBTkdMRSgpOwotICAgIHVpbnQzMl90IGV4cGVjdGVkUmVuZGVyUGFzc0NvdW50ICAgICA9
IGNvdW50ZXJzLnJlbmRlclBhc3NlcyArIDE7CisgICAgQU5HTEVfU0tJUF9URVNUX0lGKCFJc0dM
RXh0ZW5zaW9uRW5hYmxlZChrUGVyZk1vbml0b3JFeHRlbnNpb25OYW1lKSk7CisgICAgdWludDMy
X3QgZXhwZWN0ZWRSZW5kZXJQYXNzQ291bnQgPSBnZXRQZXJmQ291bnRlcnMoKS5yZW5kZXJQYXNz
ZXMgKyAxOwogCiAgICAgR0xUZXh0dXJlIHRleHR1cmU7CiAgICAgZ2xCaW5kVGV4dHVyZShHTF9U
RVhUVVJFXzJELCB0ZXh0dXJlKTsKQEAgLTE4NjQsMjEgKzE5NDAsMjIgQEAgVEVTVF9QKFZ1bGth
blBlcmZvcm1hbmNlQ291bnRlclRlc3QsIEluUmVuZGVycGFzc0ZsdXNoU2hvdWxkTm90QnJlYWtS
ZW5kZXJwYXNzKQogICAgIGRyYXdRdWFkKGdyZWVuUHJvZ3JhbSwgZXNzbDFfc2hhZGVyczo6UG9z
aXRpb25BdHRyaWIoKSwgMC41Zik7CiAgICAgQVNTRVJUX0dMX05PX0VSUk9SKCk7CiAKLSAgICB1
aW50MzJfdCBhY3R1YWxSZW5kZXJQYXNzQ291bnQgPSBjb3VudGVycy5yZW5kZXJQYXNzZXM7Cisg
ICAgdWludDMyX3QgYWN0dWFsUmVuZGVyUGFzc0NvdW50ID0gZ2V0UGVyZkNvdW50ZXJzKCkucmVu
ZGVyUGFzc2VzOwogICAgIEVYUEVDVF9FUShleHBlY3RlZFJlbmRlclBhc3NDb3VudCwgYWN0dWFs
UmVuZGVyUGFzc0NvdW50KTsKIH0KIAogLy8gVGVzdHMgdGhhdCBkZXB0aC9zdGVuY2lsIHRleHR1
cmUgY2xlYXIvbG9hZCB3b3JrcyBjb3JyZWN0bHkuCiBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VD
b3VudGVyVGVzdCwgRGVwdGhTdGVuY2lsVGV4dHVyZUNsZWFyQW5kTG9hZCkKIHsKKyAgICBBTkdM
RV9TS0lQX1RFU1RfSUYoIUlzR0xFeHRlbnNpb25FbmFibGVkKGtQZXJmTW9uaXRvckV4dGVuc2lv
bk5hbWUpKTsKKwogICAgIC8vIFRPRE86IGh0dHA6Ly9hbmdsZWJ1Zy5jb20vNTMyOSBGbGFreSB0
ZXN0CiAgICAgQU5HTEVfU0tJUF9URVNUX0lGKElzV2luZG93cygpICYmIElzQU1EKCkgJiYgSXNW
dWxrYW4oKSk7CiAKLSAgICBjb25zdCByeDo6dms6OlBlcmZDb3VudGVycyAmY291bnRlcnMgPSBo
YWNrQU5HTEUoKTsKLSAgICB1aW50MzJfdCBleHBlY3RlZERlcHRoQ2xlYXJDb3VudCAgICAgPSBj
b3VudGVycy5kZXB0aENsZWFycyArIDE7Ci0gICAgdWludDMyX3QgZXhwZWN0ZWREZXB0aExvYWRD
b3VudCAgICAgID0gY291bnRlcnMuZGVwdGhMb2FkcyArIDM7Ci0gICAgdWludDMyX3QgZXhwZWN0
ZWRTdGVuY2lsQ2xlYXJDb3VudCAgID0gY291bnRlcnMuc3RlbmNpbENsZWFycyArIDE7Ci0gICAg
dWludDMyX3QgZXhwZWN0ZWRTdGVuY2lsTG9hZENvdW50ICAgID0gY291bnRlcnMuc3RlbmNpbExv
YWRzICsgMzsKKyAgICB1aW50MzJfdCBleHBlY3RlZERlcHRoQ2xlYXJDb3VudCAgID0gZ2V0UGVy
ZkNvdW50ZXJzKCkuZGVwdGhDbGVhcnMgKyAxOworICAgIHVpbnQzMl90IGV4cGVjdGVkRGVwdGhM
b2FkQ291bnQgICAgPSBnZXRQZXJmQ291bnRlcnMoKS5kZXB0aExvYWRzICsgMzsKKyAgICB1aW50
MzJfdCBleHBlY3RlZFN0ZW5jaWxDbGVhckNvdW50ID0gZ2V0UGVyZkNvdW50ZXJzKCkuc3RlbmNp
bENsZWFycyArIDE7CisgICAgdWludDMyX3QgZXhwZWN0ZWRTdGVuY2lsTG9hZENvdW50ICA9IGdl
dFBlcmZDb3VudGVycygpLnN0ZW5jaWxMb2FkcyArIDM7CiAKICAgICBjb25zdGV4cHIgR0xzaXpl
aSBrU2l6ZSA9IDY7CiAKQEAgLTE5NjQsMTAgKzIwNDEsMTAgQEAgVEVTVF9QKFZ1bGthblBlcmZv
cm1hbmNlQ291bnRlclRlc3QsIERlcHRoU3RlbmNpbFRleHR1cmVDbGVhckFuZExvYWQpCiAgICAg
QVNTRVJUX0dMX05PX0VSUk9SKCk7CiAKICAgICAvLyBWZXJpZnkgdGhlIGNvdW50ZXJzCi0gICAg
RVhQRUNUX0VRKGNvdW50ZXJzLmRlcHRoQ2xlYXJzLCBleHBlY3RlZERlcHRoQ2xlYXJDb3VudCk7
Ci0gICAgRVhQRUNUX0VRKGNvdW50ZXJzLmRlcHRoTG9hZHMsIGV4cGVjdGVkRGVwdGhMb2FkQ291
bnQpOwotICAgIEVYUEVDVF9FUShjb3VudGVycy5zdGVuY2lsQ2xlYXJzLCBleHBlY3RlZFN0ZW5j
aWxDbGVhckNvdW50KTsKLSAgICBFWFBFQ1RfRVEoY291bnRlcnMuc3RlbmNpbExvYWRzLCBleHBl
Y3RlZFN0ZW5jaWxMb2FkQ291bnQpOworICAgIEVYUEVDVF9FUShnZXRQZXJmQ291bnRlcnMoKS5k
ZXB0aENsZWFycywgZXhwZWN0ZWREZXB0aENsZWFyQ291bnQpOworICAgIEVYUEVDVF9FUShnZXRQ
ZXJmQ291bnRlcnMoKS5kZXB0aExvYWRzLCBleHBlY3RlZERlcHRoTG9hZENvdW50KTsKKyAgICBF
WFBFQ1RfRVEoZ2V0UGVyZkNvdW50ZXJzKCkuc3RlbmNpbENsZWFycywgZXhwZWN0ZWRTdGVuY2ls
Q2xlYXJDb3VudCk7CisgICAgRVhQRUNUX0VRKGdldFBlcmZDb3VudGVycygpLnN0ZW5jaWxMb2Fk
cywgZXhwZWN0ZWRTdGVuY2lsTG9hZENvdW50KTsKIAogICAgIC8vIFZlcmlmeSB0aGF0IGNvcGll
cyB3ZXJlIGRvbmUgY29ycmVjdGx5LgogICAgIEdMRnJhbWVidWZmZXIgdmVyaWZ5RkJPOwpAQCAt
MTk4MywxNiArMjA2MCwxNyBAQCBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdCwg
RGVwdGhTdGVuY2lsVGV4dHVyZUNsZWFyQW5kTG9hZCkKIC8vIFRlc3RzIHRoYXQgbXVsdGlzYW1w
bGVkLXJlbmRlci10by10ZXh0dXJlIGRlcHRoL3N0ZW5jaWwgdGV4dHVyZXMgZG9uJ3QgZXZlciBs
b2FkIGRhdGEuCiBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdCwgUmVuZGVyVG9U
ZXh0dXJlRGVwdGhTdGVuY2lsVGV4dHVyZVNob3VsZE5vdExvYWQpCiB7CisgICAgQU5HTEVfU0tJ
UF9URVNUX0lGKCFJc0dMRXh0ZW5zaW9uRW5hYmxlZChrUGVyZk1vbml0b3JFeHRlbnNpb25OYW1l
KSk7CisKICAgICAvLyBodHRwOi8vYW5nbGVidWcuY29tLzUwODMKICAgICBBTkdMRV9TS0lQX1RF
U1RfSUYoSXNXaW5kb3dzKCkgJiYgSXNBTUQoKSAmJiBJc1Z1bGthbigpKTsKIAogICAgIEFOR0xF
X1NLSVBfVEVTVF9JRighRW5zdXJlR0xFeHRlbnNpb25FbmFibGVkKCJHTF9FWFRfbXVsdGlzYW1w
bGVkX3JlbmRlcl90b190ZXh0dXJlMiIpKTsKIAotICAgIGNvbnN0IHJ4Ojp2azo6UGVyZkNvdW50
ZXJzICZjb3VudGVycyA9IGhhY2tBTkdMRSgpOwotICAgIHVpbnQzMl90IGV4cGVjdGVkRGVwdGhD
bGVhckNvdW50ICAgICA9IGNvdW50ZXJzLmRlcHRoQ2xlYXJzICsgMTsKLSAgICB1aW50MzJfdCBl
eHBlY3RlZERlcHRoTG9hZENvdW50ICAgICAgPSBjb3VudGVycy5kZXB0aExvYWRzOwotICAgIHVp
bnQzMl90IGV4cGVjdGVkU3RlbmNpbENsZWFyQ291bnQgICA9IGNvdW50ZXJzLnN0ZW5jaWxDbGVh
cnMgKyAxOwotICAgIHVpbnQzMl90IGV4cGVjdGVkU3RlbmNpbExvYWRDb3VudCAgICA9IGNvdW50
ZXJzLnN0ZW5jaWxMb2FkczsKKyAgICB1aW50MzJfdCBleHBlY3RlZERlcHRoQ2xlYXJDb3VudCAg
ID0gZ2V0UGVyZkNvdW50ZXJzKCkuZGVwdGhDbGVhcnMgKyAxOworICAgIHVpbnQzMl90IGV4cGVj
dGVkRGVwdGhMb2FkQ291bnQgICAgPSBnZXRQZXJmQ291bnRlcnMoKS5kZXB0aExvYWRzOworICAg
IHVpbnQzMl90IGV4cGVjdGVkU3RlbmNpbENsZWFyQ291bnQgPSBnZXRQZXJmQ291bnRlcnMoKS5z
dGVuY2lsQ2xlYXJzICsgMTsKKyAgICB1aW50MzJfdCBleHBlY3RlZFN0ZW5jaWxMb2FkQ291bnQg
ID0gZ2V0UGVyZkNvdW50ZXJzKCkuc3RlbmNpbExvYWRzOwogCiAgICAgY29uc3RleHByIEdMc2l6
ZWkga1NpemUgPSA2OwogCkBAIC0yMDc5LDEwICsyMTU3LDEwIEBAIFRFU1RfUChWdWxrYW5QZXJm
b3JtYW5jZUNvdW50ZXJUZXN0LCBSZW5kZXJUb1RleHR1cmVEZXB0aFN0ZW5jaWxUZXh0dXJlU2hv
dWxkTm90CiAgICAgQVNTRVJUX0dMX05PX0VSUk9SKCk7CiAKICAgICAvLyBWZXJpZnkgdGhlIGNv
dW50ZXJzCi0gICAgRVhQRUNUX0VRKGNvdW50ZXJzLmRlcHRoQ2xlYXJzLCBleHBlY3RlZERlcHRo
Q2xlYXJDb3VudCk7Ci0gICAgRVhQRUNUX0VRKGNvdW50ZXJzLmRlcHRoTG9hZHMsIGV4cGVjdGVk
RGVwdGhMb2FkQ291bnQpOwotICAgIEVYUEVDVF9FUShjb3VudGVycy5zdGVuY2lsQ2xlYXJzLCBl
eHBlY3RlZFN0ZW5jaWxDbGVhckNvdW50KTsKLSAgICBFWFBFQ1RfRVEoY291bnRlcnMuc3RlbmNp
bExvYWRzLCBleHBlY3RlZFN0ZW5jaWxMb2FkQ291bnQpOworICAgIEVYUEVDVF9FUShnZXRQZXJm
Q291bnRlcnMoKS5kZXB0aENsZWFycywgZXhwZWN0ZWREZXB0aENsZWFyQ291bnQpOworICAgIEVY
UEVDVF9FUShnZXRQZXJmQ291bnRlcnMoKS5kZXB0aExvYWRzLCBleHBlY3RlZERlcHRoTG9hZENv
dW50KTsKKyAgICBFWFBFQ1RfRVEoZ2V0UGVyZkNvdW50ZXJzKCkuc3RlbmNpbENsZWFycywgZXhw
ZWN0ZWRTdGVuY2lsQ2xlYXJDb3VudCk7CisgICAgRVhQRUNUX0VRKGdldFBlcmZDb3VudGVycygp
LnN0ZW5jaWxMb2FkcywgZXhwZWN0ZWRTdGVuY2lsTG9hZENvdW50KTsKIAogICAgIC8vIFZlcmlm
eSB0aGF0IGNvcGllcyB3ZXJlIGRvbmUgY29ycmVjdGx5LiAgT25seSB0aGUgZmlyc3QgY29weSBj
YW4gYmUgdmVyaWZpZWQgYmVjYXVzZSB0aGUKICAgICAvLyBjb250ZW50cyBvZiB0aGUgZGVwdGgv
c3RlbmNpbCBidWZmZXIgaXMgdW5kZWZpbmVkIGFmdGVyIHRoZSBmaXJzdCByZW5kZXIgcGFzcyBi
cmVhaywgbWVhbmluZwpAQCAtMjExMCw5ICsyMTg4LDkgQEAgVEVTVF9QKFZ1bGthblBlcmZvcm1h
bmNlQ291bnRlclRlc3QsIFJlbmRlclRvVGV4dHVyZURlcHRoU3RlbmNpbFJlbmRlcmJ1ZmZlclNo
b3UKICAgICBBTkdMRV9TS0lQX1RFU1RfSUYoSXNXaW5kb3dzNygpICYmIElzTlZJRElBKCkgJiYg
SXNWdWxrYW4oKSk7CiAKICAgICBBTkdMRV9TS0lQX1RFU1RfSUYoIUVuc3VyZUdMRXh0ZW5zaW9u
RW5hYmxlZCgiR0xfRVhUX211bHRpc2FtcGxlZF9yZW5kZXJfdG9fdGV4dHVyZSIpKTsKKyAgICBB
TkdMRV9TS0lQX1RFU1RfSUYoIUlzR0xFeHRlbnNpb25FbmFibGVkKGtQZXJmTW9uaXRvckV4dGVu
c2lvbk5hbWUpKTsKIAotICAgIGNvbnN0IHJ4Ojp2azo6UGVyZkNvdW50ZXJzICZjb3VudGVycyA9
IGhhY2tBTkdMRSgpOwotICAgIHJ4Ojp2azo6UGVyZkNvdW50ZXJzIGV4cGVjdGVkOworICAgIGFu
Z2xlOjpWdWxrYW5QZXJmQ291bnRlcnMgZXhwZWN0ZWQ7CiAKICAgICAvLyBUaGlzIHRlc3QgY3Jl
YXRlcyA0IHJlbmRlciBwYXNzZXMuIEluIHRoZSBmaXJzdCByZW5kZXIgcGFzcywgY29sb3IsIGRl
cHRoIGFuZCBzdGVuY2lsIGFyZQogICAgIC8vIGNsZWFyZWQuICBJbiB0aGUgZm9sbG93aW5nIHJl
bmRlciBwYXNzZXMsIHRoZXkgbXVzdCBiZSBsb2FkZWQuICBIb3dldmVyLCBnaXZlbiB0aGF0IHRo
ZQpAQCAtMjEyMSwxMCArMjE5OSwxMCBAQCBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVy
VGVzdCwgUmVuZGVyVG9UZXh0dXJlRGVwdGhTdGVuY2lsUmVuZGVyYnVmZmVyU2hvdQogCiAgICAg
Ly8gRXhwZWN0IHJwQ291bnQrNCwgZGVwdGgoQ2xlYXJzKzEsIExvYWRzKzMsIFN0b3JlcyszKSwg
c3RlbmNpbChDbGVhcnMrMSwgTG9hZCszLCBTdG9yZXMrMykuCiAgICAgLy8gTm90ZSB0aGF0IHRo
ZSBMb2FkcyBhbmQgU3RvcmVzIGFyZSBmcm9tIHRoZSByZXNvbHZlIGF0dGFjaG1lbnRzLgotICAg
IHNldEV4cGVjdGVkQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChjb3VudGVycywgNCwgMSwgMywg
MywgMSwgMywgMywgJmV4cGVjdGVkKTsKKyAgICBzZXRFeHBlY3RlZENvdW50ZXJzRm9ySW52YWxp
ZGF0ZVRlc3QoZ2V0UGVyZkNvdW50ZXJzKCksIDQsIDEsIDMsIDMsIDEsIDMsIDMsICZleHBlY3Rl
ZCk7CiAKICAgICAvLyBBZGRpdGlvbmFsbHksIGV4cGVjdCA0IHJlc29sdmVzIGFuZCAzIHVucmVz
b2x2ZXMuCi0gICAgc2V0RXhwZWN0ZWRDb3VudGVyc0ZvclVucmVzb2x2ZVJlc29sdmVUZXN0KGNv
dW50ZXJzLCAzLCAzLCAzLCA0LCA0LCA0LCAmZXhwZWN0ZWQpOworICAgIHNldEV4cGVjdGVkQ291
bnRlcnNGb3JVbnJlc29sdmVSZXNvbHZlVGVzdChnZXRQZXJmQ291bnRlcnMoKSwgMywgMywgMywg
NCwgNCwgNCwgJmV4cGVjdGVkKTsKIAogICAgIGNvbnN0ZXhwciBHTHNpemVpIGtTaXplID0gNjsK
IApAQCAtMjIxMCw4ICsyMjg4LDggQEAgVEVTVF9QKFZ1bGthblBlcmZvcm1hbmNlQ291bnRlclRl
c3QsIFJlbmRlclRvVGV4dHVyZURlcHRoU3RlbmNpbFJlbmRlcmJ1ZmZlclNob3UKICAgICBBU1NF
UlRfR0xfTk9fRVJST1IoKTsKIAogICAgIC8vIFZlcmlmeSB0aGUgY291bnRlcnMKLSAgICBjb21w
YXJlTG9hZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoY291bnRlcnMsIGV4cGVjdGVkKTsKLSAg
ICBjb21wYXJlQ291bnRlcnNGb3JVbnJlc29sdmVSZXNvbHZlVGVzdChjb3VudGVycywgZXhwZWN0
ZWQpOworICAgIGNvbXBhcmVMb2FkQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChnZXRQZXJmQ291
bnRlcnMoKSwgZXhwZWN0ZWQpOworICAgIGNvbXBhcmVDb3VudGVyc0ZvclVucmVzb2x2ZVJlc29s
dmVUZXN0KGdldFBlcmZDb3VudGVycygpLCBleHBlY3RlZCk7CiAKICAgICAvLyBWZXJpZnkgdGhh
dCBjb3BpZXMgd2VyZSBkb25lIGNvcnJlY3RseS4KICAgICBHTEZyYW1lYnVmZmVyIHZlcmlmeUZC
TzsKQEAgLTIyMzMsOCArMjMxMSw5IEBAIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJU
ZXN0LCBSZW5kZXJUb1RleHR1cmVJbnZhbGlkYXRlKQogCiAgICAgQU5HTEVfU0tJUF9URVNUX0lG
KCFFbnN1cmVHTEV4dGVuc2lvbkVuYWJsZWQoIkdMX0VYVF9tdWx0aXNhbXBsZWRfcmVuZGVyX3Rv
X3RleHR1cmUiKSk7CiAKLSAgICBjb25zdCByeDo6dms6OlBlcmZDb3VudGVycyAmY291bnRlcnMg
PSBoYWNrQU5HTEUoKTsKLSAgICByeDo6dms6OlBlcmZDb3VudGVycyBleHBlY3RlZDsKKyAgICBB
TkdMRV9TS0lQX1RFU1RfSUYoIUlzR0xFeHRlbnNpb25FbmFibGVkKGtQZXJmTW9uaXRvckV4dGVu
c2lvbk5hbWUpKTsKKworICAgIGFuZ2xlOjpWdWxrYW5QZXJmQ291bnRlcnMgZXhwZWN0ZWQ7CiAK
ICAgICAvLyBUaGlzIHRlc3QgY3JlYXRlcyA0IHJlbmRlciBwYXNzZXMuIEluIHRoZSBmaXJzdCBy
ZW5kZXIgcGFzcywgY29sb3IsIGRlcHRoIGFuZCBzdGVuY2lsIGFyZQogICAgIC8vIGNsZWFyZWQu
ICBBZnRlciBldmVyeSByZW5kZXIgcGFzcywgdGhlIGF0dGFjaG1lbnRzIGFyZSBpbnZhbGlkYXRl
ZC4gIEluIHRoZSBmb2xsb3dpbmcgcmVuZGVyCkBAIC0yMjQzLDEwICsyMzIyLDEwIEBAIFRFU1Rf
UChWdWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJUZXN0LCBSZW5kZXJUb1RleHR1cmVJbnZhbGlkYXRl
KQogICAgIC8vIHNob3VsZCByZXNvbHZlIHRoZSBhdHRhY2htZW50cy4KIAogICAgIC8vIEV4cGVj
dCBycENvdW50KzQsIGRlcHRoKENsZWFycysxLCBMb2FkcyswLCBTdG9yZXMrMCksIHN0ZW5jaWwo
Q2xlYXJzKzEsIExvYWQrMCwgU3RvcmVzKzApCi0gICAgc2V0RXhwZWN0ZWRDb3VudGVyc0Zvcklu
dmFsaWRhdGVUZXN0KGNvdW50ZXJzLCA0LCAxLCAwLCAwLCAxLCAwLCAwLCAmZXhwZWN0ZWQpOwor
ICAgIHNldEV4cGVjdGVkQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChnZXRQZXJmQ291bnRlcnMo
KSwgNCwgMSwgMCwgMCwgMSwgMCwgMCwgJmV4cGVjdGVkKTsKIAogICAgIC8vIEFkZGl0aW9uYWxs
eSwgZXhwZWN0IG5vIHJlc29sdmUgYW5kIHVucmVzb2x2ZS4KLSAgICBzZXRFeHBlY3RlZENvdW50
ZXJzRm9yVW5yZXNvbHZlUmVzb2x2ZVRlc3QoY291bnRlcnMsIDAsIDAsIDAsIDAsIDAsIDAsICZl
eHBlY3RlZCk7CisgICAgc2V0RXhwZWN0ZWRDb3VudGVyc0ZvclVucmVzb2x2ZVJlc29sdmVUZXN0
KGdldFBlcmZDb3VudGVycygpLCAwLCAwLCAwLCAwLCAwLCAwLCAmZXhwZWN0ZWQpOwogCiAgICAg
Y29uc3RleHByIEdMc2l6ZWkga1NpemUgPSA2OwogCkBAIC0yMzQ1LDggKzI0MjQsOCBAQCBURVNU
X1AoVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdCwgUmVuZGVyVG9UZXh0dXJlSW52YWxpZGF0
ZSkKICAgICBBU1NFUlRfR0xfTk9fRVJST1IoKTsKIAogICAgIC8vIFZlcmlmeSB0aGUgY291bnRl
cnMKLSAgICBjb21wYXJlTG9hZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoY291bnRlcnMsIGV4
cGVjdGVkKTsKLSAgICBjb21wYXJlQ291bnRlcnNGb3JVbnJlc29sdmVSZXNvbHZlVGVzdChjb3Vu
dGVycywgZXhwZWN0ZWQpOworICAgIGNvbXBhcmVMb2FkQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVz
dChnZXRQZXJmQ291bnRlcnMoKSwgZXhwZWN0ZWQpOworICAgIGNvbXBhcmVDb3VudGVyc0ZvclVu
cmVzb2x2ZVJlc29sdmVUZXN0KGdldFBlcmZDb3VudGVycygpLCBleHBlY3RlZCk7CiB9CiAKIC8v
IFRlc3RzIGNvdW50ZXJzIHdoZW4gdW5pbml0aWFsaXplZCBtdWx0aXNhbXBsZWQtcmVuZGVyLXRv
LXRleHR1cmUgZGVwdGgvc3RlbmNpbCByZW5kZXJidWZmZXJzIGFyZQpAQCAtMjM1OCwxNCArMjQz
NywxNCBAQCBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdCwgUmVuZGVyVG9UZXh0
dXJlVW5pbml0aWFsaXplZEFuZFVudXNlZERlcHRoUwogCiAgICAgQU5HTEVfU0tJUF9URVNUX0lG
KCFFbnN1cmVHTEV4dGVuc2lvbkVuYWJsZWQoIkdMX0VYVF9tdWx0aXNhbXBsZWRfcmVuZGVyX3Rv
X3RleHR1cmUiKSk7CiAKLSAgICBjb25zdCByeDo6dms6OlBlcmZDb3VudGVycyAmY291bnRlcnMg
PSBoYWNrQU5HTEUoKTsKLSAgICByeDo6dms6OlBlcmZDb3VudGVycyBleHBlY3RlZDsKKyAgICBB
TkdMRV9TS0lQX1RFU1RfSUYoIUlzR0xFeHRlbnNpb25FbmFibGVkKGtQZXJmTW9uaXRvckV4dGVu
c2lvbk5hbWUpKTsKKyAgICBhbmdsZTo6VnVsa2FuUGVyZkNvdW50ZXJzIGV4cGVjdGVkOwogCiAg
ICAgLy8gRXhwZWN0IHJwQ291bnQrMSwgbm8gZGVwdGgvc3RlbmNpbCBjbGVhciwgbG9hZCBvciBz
dG9yZS4KLSAgICBzZXRFeHBlY3RlZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoY291bnRlcnMs
IDEsIDAsIDAsIDAsIDAsIDAsIDAsICZleHBlY3RlZCk7CisgICAgc2V0RXhwZWN0ZWRDb3VudGVy
c0ZvckludmFsaWRhdGVUZXN0KGdldFBlcmZDb3VudGVycygpLCAxLCAwLCAwLCAwLCAwLCAwLCAw
LCAmZXhwZWN0ZWQpOwogCiAgICAgLy8gQWRkaXRpb25hbGx5LCBleHBlY3Qgb25seSBjb2xvciBy
ZXNvbHZlLgotICAgIHNldEV4cGVjdGVkQ291bnRlcnNGb3JVbnJlc29sdmVSZXNvbHZlVGVzdChj
b3VudGVycywgMCwgMCwgMCwgMSwgMCwgMCwgJmV4cGVjdGVkKTsKKyAgICBzZXRFeHBlY3RlZENv
dW50ZXJzRm9yVW5yZXNvbHZlUmVzb2x2ZVRlc3QoZ2V0UGVyZkNvdW50ZXJzKCksIDAsIDAsIDAs
IDEsIDAsIDAsICZleHBlY3RlZCk7CiAKICAgICBjb25zdGV4cHIgR0xzaXplaSBrU2l6ZSA9IDY7
CiAKQEAgLTI0MTcsMjAgKzI0OTYsMjAgQEAgVEVTVF9QKFZ1bGthblBlcmZvcm1hbmNlQ291bnRl
clRlc3QsIFJlbmRlclRvVGV4dHVyZVVuaW5pdGlhbGl6ZWRBbmRVbnVzZWREZXB0aFMKICAgICBB
U1NFUlRfR0xfTk9fRVJST1IoKTsKIAogICAgIC8vIFZlcmlmeSB0aGUgY291bnRlcnMKLSAgICBj
b21wYXJlTG9hZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoY291bnRlcnMsIGV4cGVjdGVkKTsK
LSAgICBjb21wYXJlQ291bnRlcnNGb3JVbnJlc29sdmVSZXNvbHZlVGVzdChjb3VudGVycywgZXhw
ZWN0ZWQpOworICAgIGNvbXBhcmVMb2FkQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChnZXRQZXJm
Q291bnRlcnMoKSwgZXhwZWN0ZWQpOworICAgIGNvbXBhcmVDb3VudGVyc0ZvclVucmVzb2x2ZVJl
c29sdmVUZXN0KGdldFBlcmZDb3VudGVycygpLCBleHBlY3RlZCk7CiB9CiAKIC8vIEVuc3VyZXMg
d2UgdXNlIHJlYWQtb25seSBkZXB0aCBsYXlvdXQgd2hlbiB0aGVyZSBpcyBubyB3cml0ZQogVEVT
VF9QKFZ1bGthblBlcmZvcm1hbmNlQ291bnRlclRlc3QsIFJlYWRPbmx5RGVwdGhCdWZmZXJMYXlv
dXQpCiB7Ci0gICAgY29uc3Qgcng6OnZrOjpQZXJmQ291bnRlcnMgJmNvdW50ZXJzID0gaGFja0FO
R0xFKCk7CisgICAgQU5HTEVfU0tJUF9URVNUX0lGKCFJc0dMRXh0ZW5zaW9uRW5hYmxlZChrUGVy
Zk1vbml0b3JFeHRlbnNpb25OYW1lKSk7CiAKICAgICBjb25zdGV4cHIgR0xzaXplaSBrU2l6ZSA9
IDY0OwogCiAgICAgLy8gQ3JlYXRlIGRlcHRoIG9ubHkgRkJPIGFuZCBmaWxsIGRlcHRoIHRleHR1
cmUgdG8gbGVmdEhhbGY9MC4wIGFuZCByaWdodEhhbGY9MS4wLiBUaGlzIHNob3VsZAogICAgIC8v
IHVzZSB3cml0ZWFibGUgbGF5b3V0Ci0gICAgdWludDMyX3QgZXhwZWN0ZWRSZWFkT25seURlcHRo
U3RlbmNpbENvdW50ID0gY291bnRlcnMucmVhZE9ubHlEZXB0aFN0ZW5jaWxSZW5kZXJQYXNzZXM7
CisgICAgdWludDMyX3QgZXhwZWN0ZWRSZWFkT25seURlcHRoU3RlbmNpbENvdW50ID0gZ2V0UGVy
ZkNvdW50ZXJzKCkucmVhZE9ubHlEZXB0aFN0ZW5jaWxSZW5kZXJQYXNzZXM7CiAgICAgR0xUZXh0
dXJlIGRlcHRoVGV4dHVyZTsKICAgICBnbEJpbmRUZXh0dXJlKEdMX1RFWFRVUkVfMkQsIGRlcHRo
VGV4dHVyZSk7CiAgICAgZ2xUZXhJbWFnZTJEKEdMX1RFWFRVUkVfMkQsIDAsIEdMX0RFUFRIX0NP
TVBPTkVOVDE2LCBrU2l6ZSwga1NpemUsIDAsIEdMX0RFUFRIX0NPTVBPTkVOVCwKQEAgLTI0NTgs
MTEgKzI1MzcsMTEgQEAgVEVTVF9QKFZ1bGthblBlcmZvcm1hbmNlQ291bnRlclRlc3QsIFJlYWRP
bmx5RGVwdGhCdWZmZXJMYXlvdXQpCiAgICAgLy8gaGVyZSB0byBlbmQgdGhlIHJlbmRlcnBhc3Mu
CiAgICAgZ2xGaW5pc2goKTsKIAotICAgIHVpbnQzMl90IGFjdHVhbFJlYWRPbmx5RGVwdGhTdGVu
Y2lsQ291bnQgPSBjb3VudGVycy5yZWFkT25seURlcHRoU3RlbmNpbFJlbmRlclBhc3NlczsKKyAg
ICB1aW50MzJfdCBhY3R1YWxSZWFkT25seURlcHRoU3RlbmNpbENvdW50ID0gZ2V0UGVyZkNvdW50
ZXJzKCkucmVhZE9ubHlEZXB0aFN0ZW5jaWxSZW5kZXJQYXNzZXM7CiAgICAgRVhQRUNUX0VRKGV4
cGVjdGVkUmVhZE9ubHlEZXB0aFN0ZW5jaWxDb3VudCwgYWN0dWFsUmVhZE9ubHlEZXB0aFN0ZW5j
aWxDb3VudCk7CiAKICAgICAvLyBDcmVhdGUgYSBjb2xvcitkZXB0aCBGQk8gYW5kIHVzZSBkZXB0
aCBhcyByZWFkIG9ubHkuIFRoaXMgc2hvdWxkIHVzZSByZWFkIG9ubHkgbGF5b3V0Ci0gICAgZXhw
ZWN0ZWRSZWFkT25seURlcHRoU3RlbmNpbENvdW50ID0gY291bnRlcnMucmVhZE9ubHlEZXB0aFN0
ZW5jaWxSZW5kZXJQYXNzZXMgKyAxOworICAgIGV4cGVjdGVkUmVhZE9ubHlEZXB0aFN0ZW5jaWxD
b3VudCA9IGdldFBlcmZDb3VudGVycygpLnJlYWRPbmx5RGVwdGhTdGVuY2lsUmVuZGVyUGFzc2Vz
ICsgMTsKICAgICBHTFRleHR1cmUgY29sb3JUZXh0dXJlOwogICAgIGdsQmluZFRleHR1cmUoR0xf
VEVYVFVSRV8yRCwgY29sb3JUZXh0dXJlKTsKICAgICBnbFRleEltYWdlMkQoR0xfVEVYVFVSRV8y
RCwgMCwgR0xfUkdCQSwga1NpemUsIGtTaXplLCAwLCBHTF9SR0JBLCBHTF9VTlNJR05FRF9CWVRF
LCBudWxscHRyKTsKQEAgLTI0NzYsNyArMjU1NSw4IEBAIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5j
ZUNvdW50ZXJUZXN0LCBSZWFkT25seURlcHRoQnVmZmVyTGF5b3V0KQogICAgIGdsRW5hYmxlKEdM
X0RFUFRIX1RFU1QpOwogICAgIGdsRGVwdGhGdW5jKEdMX0xFU1MpOwogICAgIGdsRGVwdGhNYXNr
KEdMX0ZBTFNFKTsKLSAgICBHTGZsb2F0ICpjbGVhckNvbG9yID0gR0xDb2xvcjo6Ymx1ZS50b05v
cm1hbGl6ZWRWZWN0b3IoKS5kYXRhKCk7CisKKyAgICBhbmdsZTo6VmVjdG9yNCBjbGVhckNvbG9y
ID0gR0xDb2xvcjo6Ymx1ZS50b05vcm1hbGl6ZWRWZWN0b3IoKTsKICAgICBnbENsZWFyQ29sb3Io
Y2xlYXJDb2xvclswXSwgY2xlYXJDb2xvclsxXSwgY2xlYXJDb2xvclsyXSwgY2xlYXJDb2xvclsz
XSk7CiAgICAgZ2xDbGVhcihHTF9DT0xPUl9CVUZGRVJfQklUKTsKICAgICBkcmF3UXVhZChyZWRQ
cm9ncmFtLCBlc3NsMV9zaGFkZXJzOjpQb3NpdGlvbkF0dHJpYigpLCAwLjVmKTsKQEAgLTI0ODQs
NyArMjU2NCw3IEBAIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJUZXN0LCBSZWFkT25s
eURlcHRoQnVmZmVyTGF5b3V0KQogICAgIC8vIFRoZSBwaXhlbCBjaGVjayB3aWxsIGVuZCByZW5k
ZXJwYXNzLgogICAgIEVYUEVDVF9QSVhFTF9DT0xPUl9FUSgxLCAxLCBHTENvbG9yOjpibHVlKTsK
ICAgICBFWFBFQ1RfUElYRUxfQ09MT1JfRVEoMSArIGtTaXplIC8gMiwgMSwgR0xDb2xvcjo6cmVk
KTsKLSAgICBhY3R1YWxSZWFkT25seURlcHRoU3RlbmNpbENvdW50ID0gY291bnRlcnMucmVhZE9u
bHlEZXB0aFN0ZW5jaWxSZW5kZXJQYXNzZXM7CisgICAgYWN0dWFsUmVhZE9ubHlEZXB0aFN0ZW5j
aWxDb3VudCA9IGdldFBlcmZDb3VudGVycygpLnJlYWRPbmx5RGVwdGhTdGVuY2lsUmVuZGVyUGFz
c2VzOwogICAgIEVYUEVDVF9FUShleHBlY3RlZFJlYWRPbmx5RGVwdGhTdGVuY2lsQ291bnQsIGFj
dHVhbFJlYWRPbmx5RGVwdGhTdGVuY2lsQ291bnQpOwogfQogCkBAIC0yNDkyLDExICsyNTcyLDEx
IEBAIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJUZXN0LCBSZWFkT25seURlcHRoQnVm
ZmVyTGF5b3V0KQogLy8gaW52YWxpZGF0ZSkKIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5jZUNvdW50
ZXJUZXN0LCBSZW5kZXJQYXNzQWZ0ZXJSZW5kZXJQYXNzV2l0aG91dERlcHRoU3RlbmNpbFdyaXRl
KQogewotICAgIGNvbnN0IHJ4Ojp2azo6UGVyZkNvdW50ZXJzICZjb3VudGVycyA9IGhhY2tBTkdM
RSgpOwotICAgIHJ4Ojp2azo6UGVyZkNvdW50ZXJzIGV4cGVjdGVkOworICAgIEFOR0xFX1NLSVBf
VEVTVF9JRighSXNHTEV4dGVuc2lvbkVuYWJsZWQoa1BlcmZNb25pdG9yRXh0ZW5zaW9uTmFtZSkp
OworICAgIGFuZ2xlOjpWdWxrYW5QZXJmQ291bnRlcnMgZXhwZWN0ZWQ7CiAKICAgICAvLyBFeHBl
Y3QgcnBDb3VudCsxLCBkZXB0aChDbGVhcnMrMCwgTG9hZHMrMCwgU3RvcmVzKzApLCBzdGVuY2ls
KENsZWFycyswLCBMb2FkKzAsIFN0b3JlcyswKQotICAgIHNldEV4cGVjdGVkQ291bnRlcnNGb3JJ
bnZhbGlkYXRlVGVzdChjb3VudGVycywgMSwgMCwgMCwgMCwgMCwgMCwgMCwgJmV4cGVjdGVkKTsK
KyAgICBzZXRFeHBlY3RlZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoZ2V0UGVyZkNvdW50ZXJz
KCksIDEsIDAsIDAsIDAsIDAsIDAsIDAsICZleHBlY3RlZCk7CiAKICAgICBjb25zdGV4cHIgR0xz
aXplaSBrU2l6ZSA9IDY0OwogCkBAIC0yNTMxLDEwICsyNjExLDEwIEBAIFRFU1RfUChWdWxrYW5Q
ZXJmb3JtYW5jZUNvdW50ZXJUZXN0LCBSZW5kZXJQYXNzQWZ0ZXJSZW5kZXJQYXNzV2l0aG91dERl
cHRoU3RlbmNpCiAKICAgICAvLyBCcmVhayB0aGUgcmVuZGVyIHBhc3MgYW5kIGVuc3VyZSBubyBk
ZXB0aC9zdGVuY2lsIGxvYWQvc3RvcmUgd2FzIGRvbmUuCiAgICAgc3dhcEJ1ZmZlcnMoKTsKLSAg
ICBjb21wYXJlRGVwdGhTdGVuY2lsQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChjb3VudGVycywg
ZXhwZWN0ZWQpOworICAgIGNvbXBhcmVEZXB0aFN0ZW5jaWxDb3VudGVyc0ZvckludmFsaWRhdGVU
ZXN0KGdldFBlcmZDb3VudGVycygpLCBleHBlY3RlZCk7CiAKICAgICAvLyBFeHBlY3QgcnBDb3Vu
dCsxLCBkZXB0aChDbGVhcnMrMCwgTG9hZHMrMCwgU3RvcmVzKzApLCBzdGVuY2lsKENsZWFycysw
LCBMb2FkKzAsIFN0b3JlcyswKQotICAgIHNldEV4cGVjdGVkQ291bnRlcnNGb3JJbnZhbGlkYXRl
VGVzdChjb3VudGVycywgMSwgMCwgMCwgMCwgMCwgMCwgMCwgJmV4cGVjdGVkKTsKKyAgICBzZXRF
eHBlY3RlZENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoZ2V0UGVyZkNvdW50ZXJzKCksIDEsIDAs
IDAsIDAsIDAsIDAsIDAsICZleHBlY3RlZCk7CiAKICAgICAvLyBEcmF3IGFnYWluIHdpdGggc2lt
aWxhciBjb25kaXRpb25zLCBhbmQgYWdhaW4gbWFrZSBzdXJlIG5vIGxvYWQvc3RvcmUgaXMgZG9u
ZS4KICAgICBnbFVuaWZvcm00Zihjb2xvclVuaWZvcm1Mb2NhdGlvbiwgMC4wZiwgMS4wZiwgMC4w
ZiwgMS4wZik7CkBAIC0yNTQyLDcgKzI2MjIsNyBAQCBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VD
b3VudGVyVGVzdCwgUmVuZGVyUGFzc0FmdGVyUmVuZGVyUGFzc1dpdGhvdXREZXB0aFN0ZW5jaQog
CiAgICAgLy8gQnJlYWsgdGhlIHJlbmRlciBwYXNzIGFuZCBlbnN1cmUgbm8gZGVwdGgvc3RlbmNp
bCBsb2FkL3N0b3JlIHdhcyBkb25lLgogICAgIHN3YXBCdWZmZXJzKCk7Ci0gICAgY29tcGFyZURl
cHRoU3RlbmNpbENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoY291bnRlcnMsIGV4cGVjdGVkKTsK
KyAgICBjb21wYXJlRGVwdGhTdGVuY2lsQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChnZXRQZXJm
Q291bnRlcnMoKSwgZXhwZWN0ZWQpOwogCiAgICAgRVhQRUNUX1BJWEVMX0NPTE9SX0VRKDAsIDAs
IEdMQ29sb3I6OmdyZWVuKTsKIH0KQEAgLTI1NTEsOCArMjYzMSw4IEBAIFRFU1RfUChWdWxrYW5Q
ZXJmb3JtYW5jZUNvdW50ZXJUZXN0LCBSZW5kZXJQYXNzQWZ0ZXJSZW5kZXJQYXNzV2l0aG91dERl
cHRoU3RlbmNpCiAvLyBldGMpIGRvbid0IGJyZWFrIHRoZSByZW5kZXIgcGFzcy4KIFRFU1RfUChW
dWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJUZXN0LCBDbGVhckFmdGVyQ2xlYXJEb2VzTm90QnJlYWtS
ZW5kZXJQYXNzKQogewotICAgIGNvbnN0IHJ4Ojp2azo6UGVyZkNvdW50ZXJzICZjb3VudGVycyA9
IGhhY2tBTkdMRSgpOwotICAgIHVpbnQzMl90IGV4cGVjdGVkUmVuZGVyUGFzc0NvdW50ICAgICA9
IGNvdW50ZXJzLnJlbmRlclBhc3NlcyArIDE7CisgICAgQU5HTEVfU0tJUF9URVNUX0lGKCFJc0dM
RXh0ZW5zaW9uRW5hYmxlZChrUGVyZk1vbml0b3JFeHRlbnNpb25OYW1lKSk7CisgICAgdWludDMy
X3QgZXhwZWN0ZWRSZW5kZXJQYXNzQ291bnQgPSBnZXRQZXJmQ291bnRlcnMoKS5yZW5kZXJQYXNz
ZXMgKyAxOwogCiAgICAgY29uc3RleHByIEdMc2l6ZWkga1NpemUgPSA2OwogCkBAIC0yNjE1LDcg
KzI2OTUsNyBAQCBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdCwgQ2xlYXJBZnRl
ckNsZWFyRG9lc05vdEJyZWFrUmVuZGVyUGFzcykKICAgICBnbENsZWFyKEdMX0NPTE9SX0JVRkZF
Ul9CSVQgfCBHTF9ERVBUSF9CVUZGRVJfQklUIHwgR0xfU1RFTkNJTF9CVUZGRVJfQklUKTsKIAog
ICAgIC8vIFZlcmlmeSByZW5kZXIgcGFzcyBjb3VudC4KLSAgICBFWFBFQ1RfRVEoY291bnRlcnMu
cmVuZGVyUGFzc2VzLCBleHBlY3RlZFJlbmRlclBhc3NDb3VudCk7CisgICAgRVhQRUNUX0VRKGdl
dFBlcmZDb3VudGVycygpLnJlbmRlclBhc3NlcywgZXhwZWN0ZWRSZW5kZXJQYXNzQ291bnQpOwog
CiAgICAgLy8gTWFrZSBzdXJlIHRoZSByZXN1bHQgaXMgY29ycmVjdC4gIFRoZSBib3JkZXIgb2Yg
dGhlIGltYWdlIHNob3VsZCBiZSBibHVlIHdpdGggZGVwdGggMC4zZiBhbmQKICAgICAvLyBzdGVu
Y2lsIDB4NDQuICBUaGUgY2VudGVyIGlzIHJlZCB3aXRoIGRlcHRoIDEuMGYgYW5kIHN0ZW5jaWwg
MHg1NS4KQEAgLTI2OTUsNiArMjc3NSw4IEBAIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5jZUNvdW50
ZXJUZXN0LCBDbGVhckFmdGVyQ2xlYXJEb2VzTm90QnJlYWtSZW5kZXJQYXNzKQogLy8gRW5zdXJl
cyB0aGF0IGNoYW5naW5nIHRoZSBzY2lzc29yIHNpemUgZG9lc24ndCBicmVhayB0aGUgcmVuZGVy
IHBhc3MuCiBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdCwgU2Npc3NvckRvZXNO
b3RCcmVha1JlbmRlclBhc3MpCiB7CisgICAgQU5HTEVfU0tJUF9URVNUX0lGKCFJc0dMRXh0ZW5z
aW9uRW5hYmxlZChrUGVyZk1vbml0b3JFeHRlbnNpb25OYW1lKSk7CisKICAgICBjb25zdGV4cHIg
R0xzaXplaSBrU2l6ZSA9IDE2OwogCiAgICAgLy8gQ3JlYXRlIGEgZnJhbWVidWZmZXIgd2l0aCBh
IGNvbG9yIGF0dGFjaG1lbnQuCkBAIC0yNzEzLDggKzI3OTUsNyBAQCBURVNUX1AoVnVsa2FuUGVy
Zm9ybWFuY2VDb3VudGVyVGVzdCwgU2Npc3NvckRvZXNOb3RCcmVha1JlbmRlclBhc3MpCiAgICAg
Z2xDbGVhcihHTF9DT0xPUl9CVUZGRVJfQklUKTsKICAgICBFWFBFQ1RfUElYRUxfQ09MT1JfRVEo
MCwgMCwgR0xDb2xvcjo6YmxhY2spOwogCi0gICAgY29uc3Qgcng6OnZrOjpQZXJmQ291bnRlcnMg
JmNvdW50ZXJzID0gaGFja0FOR0xFKCk7Ci0gICAgdWludDMyX3QgZXhwZWN0ZWRSZW5kZXJQYXNz
Q291bnQgICAgID0gY291bnRlcnMucmVuZGVyUGFzc2VzICsgMTsKKyAgICB1aW50MzJfdCBleHBl
Y3RlZFJlbmRlclBhc3NDb3VudCA9IGdldFBlcmZDb3VudGVycygpLnJlbmRlclBhc3NlcyArIDE7
CiAKICAgICAvLyBUaGlzIHRlc3Qgc3RhcnRzIHdpdGggYSBzbWFsbCBzY2lzc29yIGFuZCBncmFk
dWFsbHkgZ3Jvd3MgaXQgYW5kIGlzc3VlcyBkcmF3IGNhbGxzIGFuZAogICAgIC8vIHZhcmlvdXMg
a2luZHMgb2YgY2xlYXJzOgpAQCAtMjgzOCw3ICsyOTE5LDcgQEAgVEVTVF9QKFZ1bGthblBlcmZv
cm1hbmNlQ291bnRlclRlc3QsIFNjaXNzb3JEb2VzTm90QnJlYWtSZW5kZXJQYXNzKQogICAgIEFT
U0VSVF9HTF9OT19FUlJPUigpOwogCiAgICAgLy8gVmVyaWZ5IHJlbmRlciBwYXNzIGNvdW50Lgot
ICAgIEVYUEVDVF9FUShjb3VudGVycy5yZW5kZXJQYXNzZXMsIGV4cGVjdGVkUmVuZGVyUGFzc0Nv
dW50KTsKKyAgICBFWFBFQ1RfRVEoZ2V0UGVyZkNvdW50ZXJzKCkucmVuZGVyUGFzc2VzLCBleHBl
Y3RlZFJlbmRlclBhc3NDb3VudCk7CiAKICAgICAvLyBNYWtlIHN1cmUgdGhlIHJlc3VsdCBpcyBj
b3JyZWN0OgogICAgIC8vCkBAIC0yOTQwLDYgKzMwMjEsOCBAQCBURVNUX1AoVnVsa2FuUGVyZm9y
bWFuY2VDb3VudGVyVGVzdCwgU2Npc3NvckRvZXNOb3RCcmVha1JlbmRlclBhc3MpCiAvLyBUZXN0
cyB0aGF0IGNoYW5naW5nIFVCTyBiaW5kaW5ncyBkb2VzIG5vdCBhbGxvY2F0ZSBuZXcgZGVzY3Jp
cHRvciBzZXRzLgogVEVTVF9QKFZ1bGthblBlcmZvcm1hbmNlQ291bnRlclRlc3QsIENoYW5naW5n
VUJPc0hpdHNEZXNjcmlwdG9yU2V0Q2FjaGUpCiB7CisgICAgQU5HTEVfU0tJUF9URVNUX0lGKCFJ
c0dMRXh0ZW5zaW9uRW5hYmxlZChrUGVyZk1vbml0b3JFeHRlbnNpb25OYW1lKSk7CisKICAgICAv
LyBTZXQgdXAgdHdvIFVCT3MsIG9uZSBmaWxsZWQgd2l0aCAiMSIgYW5kIHRoZSBzZWNvbmQgd2l0
aCAiMiIuCiAgICAgY29uc3RleHByIEdMc2l6ZWkga0NvdW50ID0gNjQ7CiAgICAgc3RkOjp2ZWN0
b3I8R0xpbnQ+IGRhdGExKGtDb3VudCwgMSk7CkBAIC0zMDM3LDcgKzMxMjAsNyBAQCB2b2lkIG1h
aW4oKQogICAgICAgICAvLyBDYXB0dXJlIHRoZSBhbGxvY2F0aW9ucyBjb3VudGVyIGFmdGVyIHRo
ZSBmaXJzdCBydW4uCiAgICAgICAgIGlmIChpdGVyYXRpb24gPT0gMCkKICAgICAgICAgewotICAg
ICAgICAgICAgZGVzY3JpcHRvclNldEFsbG9jYXRpb25zQmVmb3JlID0gaGFja0FOR0xFKCkuZGVz
Y3JpcHRvclNldEFsbG9jYXRpb25zOworICAgICAgICAgICAgZGVzY3JpcHRvclNldEFsbG9jYXRp
b25zQmVmb3JlID0gZ2V0UGVyZkNvdW50ZXJzKCkuZGVzY3JpcHRvclNldEFsbG9jYXRpb25zOwog
ICAgICAgICB9CiAgICAgfQogCkBAIC0zMDU5LDcgKzMxNDIsNyBAQCB2b2lkIG1haW4oKQogICAg
IEVYUEVDVF9FUShleHBlY3RlZERhdGEsIGFjdHVhbERhdGEpOwogCiAgICAgLy8gQ2hlY2sgZm9y
IHVubmVjZXNzYXJ5IGRlc2NyaXB0b3Igc2V0IGFsbG9jYXRpb25zLgotICAgIHVpbnQzMl90IGRl
c2NyaXB0b3JTZXRBbGxvY2F0aW9uc0FmdGVyID0gaGFja0FOR0xFKCkuZGVzY3JpcHRvclNldEFs
bG9jYXRpb25zOworICAgIHVpbnQzMl90IGRlc2NyaXB0b3JTZXRBbGxvY2F0aW9uc0FmdGVyID0g
Z2V0UGVyZkNvdW50ZXJzKCkuZGVzY3JpcHRvclNldEFsbG9jYXRpb25zOwogICAgIEVYUEVDVF9F
UShkZXNjcmlwdG9yU2V0QWxsb2NhdGlvbnNBZnRlciwgMHUpOwogfQogCkBAIC0zMDY3LDcgKzMx
NTAsNyBAQCB2b2lkIG1haW4oKQogLy8gd2FpdGluZyBmb3IgdGhlIEdQVSBhY2Nlc3MgdG8gY29t
cGxldGUgYmVmb3JlIHJldHVybmluZyBhIHBvaW50ZXIgdG8gdGhlIGJ1ZmZlci4KIFRFU1RfUChW
dWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJUZXN0LCBNYXBwaW5nR3B1UmVhZE9ubHlCdWZmZXJHaG9z
dHNCdWZmZXIpCiB7Ci0gICAgY29uc3Qgcng6OnZrOjpQZXJmQ291bnRlcnMgJmNvdW50ZXJzID0g
aGFja0FOR0xFKCk7CisgICAgQU5HTEVfU0tJUF9URVNUX0lGKCFJc0dMRXh0ZW5zaW9uRW5hYmxl
ZChrUGVyZk1vbml0b3JFeHRlbnNpb25OYW1lKSk7CiAKICAgICAvLyAxLiBDcmVhdGUgYSBidWZm
ZXIsIG1hcCBpdCwgZmlsbCBpdCB3aXRoIHJlZAogICAgIC8vIDIuIERyYXcgd2l0aCBidWZmZXIg
KEdQVSByZWFkLW9ubHkpCkBAIC0zMTI5LDggKzMyMTIsOCBAQCB2b2lkIG1haW4oKQogICAgIHZv
aWQgKm1hcHBlZEJ1ZmZlciA9CiAgICAgICAgIGdsTWFwQnVmZmVyUmFuZ2UoR0xfVU5JRk9STV9C
VUZGRVIsIDAsIHNpemVvZihrSW5pdGlhbERhdGEpLCBHTF9NQVBfV1JJVEVfQklUKTsKICAgICAv
LyAncmVuZGVyUGFzc2VzID09IDAnIGhlcmUgbWVhbnMgdGhlIHJlbmRlciBwYXNzIHdhcyBicm9r
ZW4gYW5kIGEgbmV3IG9uZSB3YXMgc3RhcnRlZC4KLSAgICBBU1NFUlRfRVEoY291bnRlcnMucmVu
ZGVyUGFzc2VzLCAxdSk7Ci0gICAgQVNTRVJUX0VRKGNvdW50ZXJzLmJ1ZmZlcnNHaG9zdGVkLCAx
dSk7CisgICAgQVNTRVJUX0VRKGdldFBlcmZDb3VudGVycygpLnJlbmRlclBhc3NlcywgMXUpOwor
ICAgIEFTU0VSVF9FUShnZXRQZXJmQ291bnRlcnMoKS5idWZmZXJzR2hvc3RlZCwgMXUpOwogCiAg
ICAgbWVtY3B5KG1hcHBlZEJ1ZmZlciwga1VwZGF0ZURhdGExLmRhdGEoKSwgc2l6ZW9mKGtJbml0
aWFsRGF0YSkpOwogCkBAIC0zMTQzLDEyICszMjI2LDEyIEBAIHZvaWQgbWFpbigpCiAKICAgICBk
cmF3UXVhZCh2ZXJpZnlVYm8sIGVzc2wzX3NoYWRlcnM6OlBvc2l0aW9uQXR0cmliKCksIDAuNSk7
CiAgICAgQVNTRVJUX0dMX05PX0VSUk9SKCk7Ci0gICAgQVNTRVJUX0VRKGNvdW50ZXJzLnJlbmRl
clBhc3NlcywgMXUpOworICAgIEFTU0VSVF9FUShnZXRQZXJmQ291bnRlcnMoKS5yZW5kZXJQYXNz
ZXMsIDF1KTsKIAogICAgIC8vIFVwZGF0ZSB0aGUgYnVmZmVyIHdpdGggZ2xCdWZmZXJTdWJEYXRh
CiAgICAgZ2xCdWZmZXJTdWJEYXRhKEdMX1VOSUZPUk1fQlVGRkVSLCAwLCBzaXplb2Yoa1VwZGF0
ZURhdGEyKSwga1VwZGF0ZURhdGEyLmRhdGEoKSk7CiAgICAgQVNTRVJUX0dMX05PX0VSUk9SKCk7
Ci0gICAgQVNTRVJUX0VRKGNvdW50ZXJzLnJlbmRlclBhc3NlcywgMXUpOworICAgIEFTU0VSVF9F
UShnZXRQZXJmQ291bnRlcnMoKS5yZW5kZXJQYXNzZXMsIDF1KTsKIAogICAgIC8vIFZlcmlmeSB0
aGF0IHRoZSBidWZmZXIgaGFzIHRoZSB1cGRhdGVkIHZhbHVlLgogICAgIGdsVW5pZm9ybTF1aShl
eHBlY3RMb2MsIGtVcGRhdGVEYXRhMlswXS5hc1VpbnQoKSk7CkBAIC0zMTU2LDcgKzMyMzksNyBA
QCB2b2lkIG1haW4oKQogCiAgICAgZHJhd1F1YWQodmVyaWZ5VWJvLCBlc3NsM19zaGFkZXJzOjpQ
b3NpdGlvbkF0dHJpYigpLCAwLjUpOwogICAgIEFTU0VSVF9HTF9OT19FUlJPUigpOwotICAgIEFT
U0VSVF9FUShjb3VudGVycy5yZW5kZXJQYXNzZXMsIDF1KTsKKyAgICBBU1NFUlRfRVEoZ2V0UGVy
ZkNvdW50ZXJzKCkucmVuZGVyUGFzc2VzLCAxdSk7CiAKICAgICBFWFBFQ1RfUElYRUxfQ09MT1Jf
RVEoMCwgMCwgR0xDb2xvcjo6Y3lhbik7CiB9CkBAIC0zMTY0LDYgKzMyNDcsOCBAQCB2b2lkIG1h
aW4oKQogLy8gVmVyaWZpZXMgdGhhdCBCdWZmZXJTdWJEYXRhIGNhbGxzIGRvbid0IHRyaWdnZXIg
c3RhdGUgdXBkYXRlcyBmb3Igbm9uLXRyYW5zbGF0ZWQgZm9ybWF0cy4KIFRFU1RfUChWdWxrYW5Q
ZXJmb3JtYW5jZUNvdW50ZXJUZXN0LCBCdWZmZXJTdWJEYXRhU2hvdWxkTm90VHJpZ2dlclN5bmNT
dGF0ZSkKIHsKKyAgICBBTkdMRV9TS0lQX1RFU1RfSUYoIUlzR0xFeHRlbnNpb25FbmFibGVkKGtQ
ZXJmTW9uaXRvckV4dGVuc2lvbk5hbWUpKTsKKwogICAgIEFOR0xFX0dMX1BST0dSQU0odGVzdFBy
b2dyYW0sIGVzc2wxX3NoYWRlcnM6OnZzOjpTaW1wbGUoKSwgZXNzbDFfc2hhZGVyczo6ZnM6Okdy
ZWVuKCkpOwogICAgIGdsVXNlUHJvZ3JhbSh0ZXN0UHJvZ3JhbSk7CiAKQEAgLTMxNzgsNyArMzI2
Myw3IEBAIFRFU1RfUChWdWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJUZXN0LCBCdWZmZXJTdWJEYXRh
U2hvdWxkTm90VHJpZ2dlclN5bmNTdGF0ZSkKICAgICBBU1NFUlRfR0xfTk9fRVJST1IoKTsKICAg
ICBFWFBFQ1RfUElYRUxfQ09MT1JfRVEoMCwgMCwgR0xDb2xvcjo6Z3JlZW4pOwogCi0gICAgRVhQ
RUNUX0VRKGhhY2tBTkdMRSgpLnZlcnRleEFycmF5U3luY1N0YXRlQ2FsbHMsIDF1KTsKKyAgICBF
WFBFQ1RfRVEoZ2V0UGVyZkNvdW50ZXJzKCkudmVydGV4QXJyYXlTeW5jU3RhdGVDYWxscywgMXUp
OwogCiAgICAgY29uc3Qgc3RkOjphcnJheTxWZWN0b3IzLCA2PiAmcXVhZFZlcnRpY2VzID0gR2V0
UXVhZFZlcnRpY2VzKCk7CiAgICAgc2l6ZV90IGJ1ZmZlclNpemUgICAgICAgICAgICAgICAgICAg
ICAgICAgID0gc2l6ZW9mKHF1YWRWZXJ0aWNlc1swXSkgKiBxdWFkVmVydGljZXMuc2l6ZSgpOwpA
QCAtMzE4OSw3ICszMjc0LDcgQEAgVEVTVF9QKFZ1bGthblBlcmZvcm1hbmNlQ291bnRlclRlc3Qs
IEJ1ZmZlclN1YkRhdGFTaG91bGROb3RUcmlnZ2VyU3luY1N0YXRlKQogICAgIEFTU0VSVF9HTF9O
T19FUlJPUigpOwogICAgIEVYUEVDVF9QSVhFTF9DT0xPUl9FUSgwLCAwLCBHTENvbG9yOjpncmVl
bik7CiAKLSAgICBFWFBFQ1RfRVEoaGFja0FOR0xFKCkudmVydGV4QXJyYXlTeW5jU3RhdGVDYWxs
cywgMXUpOworICAgIEVYUEVDVF9FUShnZXRQZXJmQ291bnRlcnMoKS52ZXJ0ZXhBcnJheVN5bmNT
dGF0ZUNhbGxzLCAxdSk7CiAKICAgICAvLyBWZXJpZnkgdGhlIEJ1ZmZlckRhdGEgd2l0aCBhIHdo
b2xlIGJ1ZmZlciBzaXplIGlzIHRyZWF0ZWQgbGlrZSB0aGUgU3ViRGF0YSBjYWxsLgogICAgIGds
QnVmZmVyRGF0YShHTF9BUlJBWV9CVUZGRVIsIHNpemVvZihxdWFkVmVydGljZXNbMF0pICogcXVh
ZFZlcnRpY2VzLnNpemUoKSwKQEAgLTMxOTgsMTcgKzMyODMsMTcgQEAgVEVTVF9QKFZ1bGthblBl
cmZvcm1hbmNlQ291bnRlclRlc3QsIEJ1ZmZlclN1YkRhdGFTaG91bGROb3RUcmlnZ2VyU3luY1N0
YXRlKQogICAgIEFTU0VSVF9HTF9OT19FUlJPUigpOwogICAgIEVYUEVDVF9QSVhFTF9DT0xPUl9F
USgwLCAwLCBHTENvbG9yOjpncmVlbik7CiAKLSAgICBFWFBFQ1RfRVEoaGFja0FOR0xFKCkudmVy
dGV4QXJyYXlTeW5jU3RhdGVDYWxscywgMXUpOworICAgIEVYUEVDVF9FUShnZXRQZXJmQ291bnRl
cnMoKS52ZXJ0ZXhBcnJheVN5bmNTdGF0ZUNhbGxzLCAxdSk7CiB9CiAKIC8vIFZlcmlmaWVzIHRo
YXQgcmVuZGVyaW5nIHRvIGJhY2tidWZmZXIgZGlzY2FyZHMgZGVwdGgvc3RlbmNpbC4KIFRFU1Rf
UChWdWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJUZXN0LCBTd2FwU2hvdWxkSW52YWxpZGF0ZURlcHRo
U3RlbmNpbCkKIHsKLSAgICBjb25zdCByeDo6dms6OlBlcmZDb3VudGVycyAmY291bnRlcnMgPSBo
YWNrQU5HTEUoKTsKLSAgICByeDo6dms6OlBlcmZDb3VudGVycyBleHBlY3RlZDsKKyAgICBBTkdM
RV9TS0lQX1RFU1RfSUYoIUlzR0xFeHRlbnNpb25FbmFibGVkKGtQZXJmTW9uaXRvckV4dGVuc2lv
bk5hbWUpKTsKKyAgICBhbmdsZTo6VnVsa2FuUGVyZkNvdW50ZXJzIGV4cGVjdGVkOwogCiAgICAg
Ly8gRXhwZWN0IHJwQ291bnQrMSwgZGVwdGgoQ2xlYXJzKzEsIExvYWRzKzAsIFN0b3JlcyswKSwg
c3RlbmNpbChDbGVhcnMrMSwgTG9hZCswLCBTdG9yZXMrMCkKLSAgICBzZXRFeHBlY3RlZENvdW50
ZXJzRm9ySW52YWxpZGF0ZVRlc3QoY291bnRlcnMsIDEsIDEsIDAsIDAsIDEsIDAsIDAsICZleHBl
Y3RlZCk7CisgICAgc2V0RXhwZWN0ZWRDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGdldFBlcmZD
b3VudGVycygpLCAxLCAxLCAwLCAwLCAxLCAwLCAwLCAmZXhwZWN0ZWQpOwogCiAgICAgLy8gQ2xl
YXIgdG8gdmVyaWZ5IHRoYXQgX3NvbWVfIGNvdW50ZXJzIGRpZCBjaGFuZ2UgKGFzIG9wcG9zZWQg
dG8gZm9yIGV4YW1wbGUgYWxsIGJlaW5nIHJlc2V0IG9uCiAgICAgLy8gc3dhcCkKQEAgLTMyMjcs
MTcgKzMzMTIsMTcgQEAgVEVTVF9QKFZ1bGthblBlcmZvcm1hbmNlQ291bnRlclRlc3QsIFN3YXBT
aG91bGRJbnZhbGlkYXRlRGVwdGhTdGVuY2lsKQogCiAgICAgLy8gU3dhcCBidWZmZXJzIHRvIGlt
cGxpY2l0ZWx5IHJlc29sdmUKICAgICBzd2FwQnVmZmVycygpOwotICAgIGNvbXBhcmVEZXB0aFN0
ZW5jaWxDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGNvdW50ZXJzLCBleHBlY3RlZCk7CisgICAg
Y29tcGFyZURlcHRoU3RlbmNpbENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoZ2V0UGVyZkNvdW50
ZXJzKCksIGV4cGVjdGVkKTsKIH0KIAogLy8gVmVyaWZpZXMgdGhhdCByZW5kZXJpbmcgdG8gTVNB
QSBiYWNrYnVmZmVyIGRpc2NhcmRzIGRlcHRoL3N0ZW5jaWwuCiBURVNUX1AoVnVsa2FuUGVyZm9y
bWFuY2VDb3VudGVyVGVzdF9NU0FBLCBTd2FwU2hvdWxkSW52YWxpZGF0ZURlcHRoU3RlbmNpbCkK
IHsKLSAgICBjb25zdCByeDo6dms6OlBlcmZDb3VudGVycyAmY291bnRlcnMgPSBoYWNrQU5HTEUo
KTsKLSAgICByeDo6dms6OlBlcmZDb3VudGVycyBleHBlY3RlZDsKKyAgICBBTkdMRV9TS0lQX1RF
U1RfSUYoIUlzR0xFeHRlbnNpb25FbmFibGVkKGtQZXJmTW9uaXRvckV4dGVuc2lvbk5hbWUpKTsK
KyAgICBhbmdsZTo6VnVsa2FuUGVyZkNvdW50ZXJzIGV4cGVjdGVkOwogCiAgICAgLy8gRXhwZWN0
IHJwQ291bnQrMSwgZGVwdGgoQ2xlYXJzKzEsIExvYWRzKzAsIFN0b3JlcyswKSwgc3RlbmNpbChD
bGVhcnMrMSwgTG9hZCswLCBTdG9yZXMrMCkKLSAgICBzZXRFeHBlY3RlZENvdW50ZXJzRm9ySW52
YWxpZGF0ZVRlc3QoY291bnRlcnMsIDEsIDEsIDAsIDAsIDEsIDAsIDAsICZleHBlY3RlZCk7Cisg
ICAgc2V0RXhwZWN0ZWRDb3VudGVyc0ZvckludmFsaWRhdGVUZXN0KGdldFBlcmZDb3VudGVycygp
LCAxLCAxLCAwLCAwLCAxLCAwLCAwLCAmZXhwZWN0ZWQpOwogCiAgICAgLy8gQ2xlYXIgdG8gdmVy
aWZ5IHRoYXQgX3NvbWVfIGNvdW50ZXJzIGRpZCBjaGFuZ2UgKGFzIG9wcG9zZWQgdG8gZm9yIGV4
YW1wbGUgYWxsIGJlaW5nIHJlc2V0IG9uCiAgICAgLy8gc3dhcCkKQEAgLTMyNTYsMTIgKzMzNDEs
MTQgQEAgVEVTVF9QKFZ1bGthblBlcmZvcm1hbmNlQ291bnRlclRlc3RfTVNBQSwgU3dhcFNob3Vs
ZEludmFsaWRhdGVEZXB0aFN0ZW5jaWwpCiAKICAgICAvLyBTd2FwIGJ1ZmZlcnMgdG8gaW1wbGlj
aXRlbHkgcmVzb2x2ZQogICAgIHN3YXBCdWZmZXJzKCk7Ci0gICAgY29tcGFyZURlcHRoU3RlbmNp
bENvdW50ZXJzRm9ySW52YWxpZGF0ZVRlc3QoY291bnRlcnMsIGV4cGVjdGVkKTsKKyAgICBjb21w
YXJlRGVwdGhTdGVuY2lsQ291bnRlcnNGb3JJbnZhbGlkYXRlVGVzdChnZXRQZXJmQ291bnRlcnMo
KSwgZXhwZWN0ZWQpOwogfQogCiAvLyBUZXN0cyB0aGF0IHVuaWZvcm0gdXBkYXRlcyBldmVudHVh
bGx5IHN0b3AgdXBkYXRpbmcgZGVzY3JpcHRvciBzZXRzLgogVEVTVF9QKFZ1bGthblBlcmZvcm1h
bmNlQ291bnRlclRlc3QsIFVuaWZvcm1VcGRhdGVzSGl0RGVzY3JpcHRvclNldENhY2hlKQogewor
ICAgIEFOR0xFX1NLSVBfVEVTVF9JRighSXNHTEV4dGVuc2lvbkVuYWJsZWQoa1BlcmZNb25pdG9y
RXh0ZW5zaW9uTmFtZSkpOworCiAgICAgQU5HTEVfR0xfUFJPR1JBTSh0ZXN0UHJvZ3JhbSwgZXNz
bDFfc2hhZGVyczo6dnM6OlNpbXBsZSgpLCBlc3NsMV9zaGFkZXJzOjpmczo6VW5pZm9ybUNvbG9y
KCkpOwogICAgIGdsVXNlUHJvZ3JhbSh0ZXN0UHJvZ3JhbSk7CiAgICAgR0xpbnQgcG9zTG9jID0g
Z2xHZXRBdHRyaWJMb2NhdGlvbih0ZXN0UHJvZ3JhbSwgZXNzbDFfc2hhZGVyczo6UG9zaXRpb25B
dHRyaWIoKSk7CkBAIC0zMjk4LDcgKzMzODUsNyBAQCBURVNUX1AoVnVsa2FuUGVyZm9ybWFuY2VD
b3VudGVyVGVzdCwgVW5pZm9ybVVwZGF0ZXNIaXREZXNjcmlwdG9yU2V0Q2FjaGUpCiAKICAgICBB
U1NFUlRfR0xfTk9fRVJST1IoKTsKIAotICAgIHVpbnQzMl90IGV4cGVjdGVkQ2FjaGVNaXNzZXMg
PSBoYWNrQU5HTEUoKS51bmlmb3Jtc0FuZFhmYkRlc2NyaXB0b3JTZXRDYWNoZU1pc3NlczsKKyAg
ICB1aW50MzJfdCBleHBlY3RlZENhY2hlTWlzc2VzID0gZ2V0UGVyZkNvdW50ZXJzKCkudW5pZm9y
bXNBbmRYZmJEZXNjcmlwdG9yU2V0Q2FjaGVNaXNzZXM7CiAgICAgRVhQRUNUX0dUKGV4cGVjdGVk
Q2FjaGVNaXNzZXMsIDB1KTsKIAogICAgIC8vIFNlY29uZCBwYXNzOiBlbnN1cmUgYWxsIHRoZSB1
bmlmb3JtcyBhcmUgY2FjaGVkLgpAQCAtMzMxNSwxMiArMzQwMiwxMiBAQCBURVNUX1AoVnVsa2Fu
UGVyZm9ybWFuY2VDb3VudGVyVGVzdCwgVW5pZm9ybVVwZGF0ZXNIaXREZXNjcmlwdG9yU2V0Q2Fj
aGUpCiAKICAgICBBU1NFUlRfR0xfTk9fRVJST1IoKTsKIAotICAgIHVpbnQzMl90IGFjdHVhbENh
Y2hlTWlzc2VzID0gaGFja0FOR0xFKCkudW5pZm9ybXNBbmRYZmJEZXNjcmlwdG9yU2V0Q2FjaGVN
aXNzZXM7CisgICAgdWludDMyX3QgYWN0dWFsQ2FjaGVNaXNzZXMgPSBnZXRQZXJmQ291bnRlcnMo
KS51bmlmb3Jtc0FuZFhmYkRlc2NyaXB0b3JTZXRDYWNoZU1pc3NlczsKICAgICBFWFBFQ1RfRVEo
ZXhwZWN0ZWRDYWNoZU1pc3NlcywgYWN0dWFsQ2FjaGVNaXNzZXMpOwogfQogCi1BTkdMRV9JTlNU
QU5USUFURV9URVNUKFZ1bGthblBlcmZvcm1hbmNlQ291bnRlclRlc3QsIEVTM19WVUxLQU4oKSk7
Ci1BTkdMRV9JTlNUQU5USUFURV9URVNUKFZ1bGthblBlcmZvcm1hbmNlQ291bnRlclRlc3RfRVMz
MSwgRVMzMV9WVUxLQU4oKSk7Ci1BTkdMRV9JTlNUQU5USUFURV9URVNUKFZ1bGthblBlcmZvcm1h
bmNlQ291bnRlclRlc3RfTVNBQSwgRVMzX1ZVTEtBTigpKTsKK0FOR0xFX0lOU1RBTlRJQVRFX1RF
U1QoVnVsa2FuUGVyZm9ybWFuY2VDb3VudGVyVGVzdCwgRVMzX1ZVTEtBTigpLCBFUzNfVlVMS0FO
X1NXSUZUU0hBREVSKCkpOworQU5HTEVfSU5TVEFOVElBVEVfVEVTVChWdWxrYW5QZXJmb3JtYW5j
ZUNvdW50ZXJUZXN0X0VTMzEsIEVTMzFfVlVMS0FOKCksIEVTMzFfVlVMS0FOX1NXSUZUU0hBREVS
KCkpOworQU5HTEVfSU5TVEFOVElBVEVfVEVTVChWdWxrYW5QZXJmb3JtYW5jZUNvdW50ZXJUZXN0
X01TQUEsIEVTM19WVUxLQU4oKSwgRVMzX1ZVTEtBTl9TV0lGVFNIQURFUigpKTsKIAogfSAgLy8g
YW5vbnltb3VzIG5hbWVzcGFjZQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUv
c3JjL3Rlc3RzL3BlcmZfdGVzdHMvQU5HTEVQZXJmVGVzdC5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvdGVzdHMvcGVyZl90ZXN0cy9BTkdMRVBlcmZUZXN0LmNwcAppbmRleCA4YWU1
NzU0MjEwNzhmMGYxOTc2MDdkYWViN2M0Y2E2MDE5MjZjZjIzLi5kNjI2ODBkN2UwYzMxMjE5MWM3
MTg5ODM2ZjYyMDdkZGEwOTdkY2Q5IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zcmMvdGVzdHMvcGVyZl90ZXN0cy9BTkdMRVBlcmZUZXN0LmNwcAorKysgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvcGVyZl90ZXN0cy9BTkdMRVBlcmZUZXN0LmNwcApAQCAt
MTMsNiArMTMsNyBAQAogI2luY2x1ZGUgImNvbW1vbi9kZWJ1Zy5oIgogI2luY2x1ZGUgImNvbW1v
bi9tYXRodXRpbC5oIgogI2luY2x1ZGUgImNvbW1vbi9wbGF0Zm9ybS5oIgorI2luY2x1ZGUgImNv
bW1vbi9zdHJpbmdfdXRpbHMuaCIKICNpbmNsdWRlICJjb21tb24vc3lzdGVtX3V0aWxzLmgiCiAj
aW5jbHVkZSAiY29tbW9uL3V0aWxpdGllcy5oIgogI2luY2x1ZGUgInRlc3RfdXRpbHMvcnVubmVy
L1Rlc3RTdWl0ZS5oIgpAQCAtMjUsNiArMjYsNyBAQAogI2luY2x1ZGUgPGNtYXRoPgogI2luY2x1
ZGUgPGZzdHJlYW0+CiAjaW5jbHVkZSA8aW9zdHJlYW0+CisjaW5jbHVkZSA8bnVtZXJpYz4KICNp
bmNsdWRlIDxzc3RyZWFtPgogCiAjaW5jbHVkZSA8cmFwaWRqc29uL2RvY3VtZW50Lmg+CkBAIC00
NSw2ICs0Nyw4IEBAIGNvbnN0ZXhwciBzaXplX3Qga0luaXRpYWxUcmFjZUV2ZW50QnVmZmVyU2l6
ZSA9IDUwMDAwOwogY29uc3RleHByIGRvdWJsZSBrTWlsbGlTZWNvbmRzUGVyU2Vjb25kICAgICAg
ID0gMWUzOwogY29uc3RleHByIGRvdWJsZSBrTWljcm9TZWNvbmRzUGVyU2Vjb25kICAgICAgID0g
MWU2OwogY29uc3RleHByIGRvdWJsZSBrTmFub1NlY29uZHNQZXJTZWNvbmQgICAgICAgID0gMWU5
OworY29uc3RleHByIGNoYXIga1BlYWtNZW1vcnlNZXRyaWNbXSAgICAgICAgICAgID0gIi5wZWFr
X21lbW9yeSI7Citjb25zdGV4cHIgY2hhciBrTWVkaWFuTWVtb3J5TWV0cmljW10gICAgICAgICAg
PSAiLm1lZGlhbl9tZW1vcnkiOwogCiBzdHJ1Y3QgVHJhY2VDYXRlZ29yeQogewpAQCAtMjE3LDEy
ICsyMjEsOSBAQCBBTkdMRV9NQVlCRV9VTlVTRUQgdm9pZCBLSFJPTk9TX0FQSUVOVFJZIFBlcmZU
ZXN0RGVidWdDYWxsYmFjayhHTGVudW0gc291cmNlLAogCiBkb3VibGUgQ29tcHV0ZU1lYW4oY29u
c3Qgc3RkOjp2ZWN0b3I8ZG91YmxlPiAmdmFsdWVzKQogewotICAgIGRvdWJsZSBtZWFuID0gMDsK
LSAgICBmb3IgKGRvdWJsZSB2YWx1ZSA6IHZhbHVlcykKLSAgICB7Ci0gICAgICAgIG1lYW4gKz0g
dmFsdWU7Ci0gICAgfQotICAgIG1lYW4gLz0gc3RhdGljX2Nhc3Q8ZG91YmxlPih2YWx1ZXMuc2l6
ZSgpKTsKKyAgICBkb3VibGUgc3VtID0gc3RkOjphY2N1bXVsYXRlKHZhbHVlcy5iZWdpbigpLCB2
YWx1ZXMuZW5kKCksIDAuMCk7CisKKyAgICBkb3VibGUgbWVhbiA9IHN1bSAvIHN0YXRpY19jYXN0
PGRvdWJsZT4odmFsdWVzLnNpemUoKSk7CiAgICAgcmV0dXJuIG1lYW47CiB9CiB9ICAvLyBhbm9u
eW1vdXMgbmFtZXNwYWNlCkBAIC0yOTcsNyArMjk4LDcgQEAgdm9pZCBBTkdMRVBlcmZUZXN0Ojpy
dW4oKQogICAgIGZvciAodWludDMyX3QgdHJpYWwgPSAwOyB0cmlhbCA8IG51bVRyaWFsczsgKyt0
cmlhbCkKICAgICB7CiAgICAgICAgIGRvUnVuTG9vcChnTWF4VHJpYWxUaW1lU2Vjb25kcywgbVN0
ZXBzVG9SdW4sIFJ1bkxvb3BQb2xpY3k6OlJ1bkNvbnRpbnVvdXNseSk7Ci0gICAgICAgIHByaW50
UmVzdWx0cygpOworICAgICAgICBwcm9jZXNzUmVzdWx0cygpOwogICAgICAgICBpZiAoZ1ZlcmJv
c2VMb2dnaW5nKQogICAgICAgICB7CiAgICAgICAgICAgICBkb3VibGUgdHJpYWxUaW1lID0gbVRp
bWVyLmdldEVsYXBzZWRXYWxsQ2xvY2tUaW1lKCk7CkBAIC0zODgsODYgKzM4OSwxMzYgQEAgdm9p
ZCBBTkdMRVBlcmZUZXN0OjpTZXRVcCgpIHt9CiAKIHZvaWQgQU5HTEVQZXJmVGVzdDo6VGVhckRv
d24oKSB7fQogCi1kb3VibGUgQU5HTEVQZXJmVGVzdDo6cHJpbnRSZXN1bHRzKCkKK3ZvaWQgQU5H
TEVQZXJmVGVzdDo6cHJvY2Vzc1Jlc3VsdHMoKQogewotICAgIC8vIEdldCBjcHUgdGltZSBmaXJz
dCwgc28gaXQgZG9lc24ndCBpbmNsdWRlIHRoZSBjcHUgdGltZSBvZiBnZXR0aW5nIHRoZQotICAg
IC8vIHdhbGwgdGltZS4gV2Ugd2FudCBjcHUgdGltZSB0byBiZSBtb3JlIGFjY3VyYXRlLgotICAg
IGRvdWJsZSBlbGFwc2VkVGltZVNlY29uZHNbM10gPSB7Ci0gICAgICAgIG1UaW1lci5nZXRFbGFw
c2VkQ3B1VGltZSgpLAotICAgICAgICBtVGltZXIuZ2V0RWxhcHNlZFdhbGxDbG9ja1RpbWUoKSwK
LSAgICAgICAgbUdQVVRpbWVOcyAqIDFlLTksCi0gICAgfTsKLQotICAgIGNvbnN0IGNoYXIgKmNs
b2NrTmFtZXNbM10gPSB7Ci0gICAgICAgICIuY3B1X3RpbWUiLAotICAgICAgICAiLndhbGxfdGlt
ZSIsCi0gICAgICAgICIuZ3B1X3RpbWUiLAotICAgIH07Ci0KLSAgICAvLyBJZiBtZWFzdXJlZCBn
cHUgdGltZSBpcyBub24temVybywgcHJpbnQgdGhhdCB0b28uCi0gICAgc2l6ZV90IGNsb2Nrc1Rv
T3V0cHV0ID0gbUdQVVRpbWVOcyA+IDAgPyAzIDogMjsKLQotICAgIGRvdWJsZSByZXRWYWx1ZSA9
IDAuMDsKLSAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IGNsb2Nrc1RvT3V0cHV0OyArK2kpCi0g
ICAgewotICAgICAgICBkb3VibGUgc2Vjb25kc1BlclN0ZXAgPQotICAgICAgICAgICAgZWxhcHNl
ZFRpbWVTZWNvbmRzW2ldIC8gc3RhdGljX2Nhc3Q8ZG91YmxlPihtVHJpYWxOdW1TdGVwc1BlcmZv
cm1lZCk7Ci0gICAgICAgIGRvdWJsZSBzZWNvbmRzUGVySXRlcmF0aW9uID0gc2Vjb25kc1BlclN0
ZXAgLyBzdGF0aWNfY2FzdDxkb3VibGU+KG1JdGVyYXRpb25zUGVyU3RlcCk7Ci0KLSAgICAgICAg
cGVyZl90ZXN0OjpNZXRyaWNJbmZvIG1ldHJpY0luZm87Ci0gICAgICAgIHN0ZDo6c3RyaW5nIHVu
aXRzOwotICAgICAgICAvLyBMYXppbHkgcmVnaXN0ZXIgdGhlIG1ldHJpYywgcmUtdXNpbmcgdGhl
IGV4aXN0aW5nIHVuaXRzIGlmIGl0IGlzCi0gICAgICAgIC8vIGFscmVhZHkgcmVnaXN0ZXJlZC4K
LSAgICAgICAgaWYgKCFtUmVwb3J0ZXItPkdldE1ldHJpY0luZm8oY2xvY2tOYW1lc1tpXSwgJm1l
dHJpY0luZm8pKQotICAgICAgICB7Ci0gICAgICAgICAgICBwcmludGYoIlNlY29uZHMgcGVyIGl0
ZXJhdGlvbjogJWxmXG4iLCBzZWNvbmRzUGVySXRlcmF0aW9uKTsKLSAgICAgICAgICAgIHVuaXRz
ID0gc2Vjb25kc1Blckl0ZXJhdGlvbiA+IDFlLTMgPyAidXMiIDogIm5zIjsKLSAgICAgICAgICAg
IG1SZXBvcnRlci0+UmVnaXN0ZXJJbXBvcnRhbnRNZXRyaWMoY2xvY2tOYW1lc1tpXSwgdW5pdHMp
OwotICAgICAgICB9Ci0gICAgICAgIGVsc2UKKyAgICBwcm9jZXNzQ2xvY2tSZXN1bHQoIi5jcHVf
dGltZSIsIG1UaW1lci5nZXRFbGFwc2VkQ3B1VGltZSgpKTsKKyAgICBwcm9jZXNzQ2xvY2tSZXN1
bHQoIi53YWxsX3RpbWUiLCBtVGltZXIuZ2V0RWxhcHNlZFdhbGxDbG9ja1RpbWUoKSk7CisKKyAg
ICBpZiAobUdQVVRpbWVOcyA+IDApCisgICAgeworICAgICAgICBwcm9jZXNzQ2xvY2tSZXN1bHQo
Ii5ncHVfdGltZSIsIG1HUFVUaW1lTnMgKiAxZS05KTsKKyAgICB9CisKKyAgICBpZiAoZ1ZlcmJv
c2VMb2dnaW5nKQorICAgIHsKKyAgICAgICAgZG91YmxlIGZwcyA9IHN0YXRpY19jYXN0PGRvdWJs
ZT4obVRyaWFsTnVtU3RlcHNQZXJmb3JtZWQgKiBtSXRlcmF0aW9uc1BlclN0ZXApIC8KKyAgICAg
ICAgICAgICAgICAgICAgIG1UaW1lci5nZXRFbGFwc2VkV2FsbENsb2NrVGltZSgpOworICAgICAg
ICBwcmludGYoIlJhbiAlMC4ybGYgaXRlcmF0aW9ucyBwZXIgc2Vjb25kXG4iLCBmcHMpOworICAg
IH0KKworICAgIGlmIChnQ2FsaWJyYXRpb24pCisgICAgeworICAgICAgICBtUmVwb3J0ZXItPkFk
ZFJlc3VsdCgiLnN0ZXBzX3RvX3J1biIsIHN0YXRpY19jYXN0PHNpemVfdD4obVN0ZXBzVG9SdW4p
KTsKKyAgICB9CisgICAgZWxzZQorICAgIHsKKyAgICAgICAgbVJlcG9ydGVyLT5BZGRSZXN1bHQo
Ii50cmlhbF9zdGVwcyIsIHN0YXRpY19jYXN0PHNpemVfdD4obVRyaWFsTnVtU3RlcHNQZXJmb3Jt
ZWQpKTsKKyAgICAgICAgbVJlcG9ydGVyLT5BZGRSZXN1bHQoIi50b3RhbF9zdGVwcyIsIHN0YXRp
Y19jYXN0PHNpemVfdD4obVRvdGFsTnVtU3RlcHNQZXJmb3JtZWQpKTsKKyAgICB9CisKKyAgICBp
ZiAoIW1Qcm9jZXNzTWVtb3J5VXNhZ2VLQlNhbXBsZXMuZW1wdHkoKSkKKyAgICB7CisgICAgICAg
IHN0ZDo6c29ydChtUHJvY2Vzc01lbW9yeVVzYWdlS0JTYW1wbGVzLmJlZ2luKCksIG1Qcm9jZXNz
TWVtb3J5VXNhZ2VLQlNhbXBsZXMuZW5kKCkpOworCisgICAgICAgIC8vIENvbXB1dGUgbWVkaWFu
LgorICAgICAgICBzaXplX3QgbWVkaWFuSW5kZXggICAgICA9IG1Qcm9jZXNzTWVtb3J5VXNhZ2VL
QlNhbXBsZXMuc2l6ZSgpIC8gMjsKKyAgICAgICAgdWludDY0X3QgbWVkaWFuTWVtb3J5S0IgPSBt
UHJvY2Vzc01lbW9yeVVzYWdlS0JTYW1wbGVzW21lZGlhbkluZGV4XTsKKyAgICAgICAgYXV0byBw
ZWFrTWVtb3J5SXRlcmF0b3IgPSBzdGQ6Om1heF9lbGVtZW50KG1Qcm9jZXNzTWVtb3J5VXNhZ2VL
QlNhbXBsZXMuYmVnaW4oKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIG1Qcm9jZXNzTWVtb3J5VXNhZ2VLQlNhbXBsZXMuZW5kKCkpOworICAgICAg
ICB1aW50NjRfdCBwZWFrTWVtb3J5S0IgICA9ICpwZWFrTWVtb3J5SXRlcmF0b3I7CisKKyAgICAg
ICAgcHJvY2Vzc01lbW9yeVJlc3VsdChrTWVkaWFuTWVtb3J5TWV0cmljLCBtZWRpYW5NZW1vcnlL
Qik7CisgICAgICAgIHByb2Nlc3NNZW1vcnlSZXN1bHQoa1BlYWtNZW1vcnlNZXRyaWMsIHBlYWtN
ZW1vcnlLQik7CisgICAgfQorCisgICAgZm9yIChjb25zdCBhdXRvICZpdGVyIDogbVBlcmZDb3Vu
dGVySW5mbykKKyAgICB7CisgICAgICAgIGNvbnN0IHN0ZDo6c3RyaW5nICZjb3VudGVyTmFtZSA9
IGl0ZXIuc2Vjb25kLm5hbWU7CisgICAgICAgIHN0ZDo6dmVjdG9yPEdMdWludD4gc2FtcGxlcyAg
ICA9IGl0ZXIuc2Vjb25kLnNhbXBsZXM7CisKKyAgICAgICAgc2l6ZV90IG1pZHBvaW50ID0gc2Ft
cGxlcy5zaXplKCkgPj4gMTsKKyAgICAgICAgc3RkOjpudGhfZWxlbWVudChzYW1wbGVzLmJlZ2lu
KCksIHNhbXBsZXMuYmVnaW4oKSArIG1pZHBvaW50LCBzYW1wbGVzLmVuZCgpKTsKKwogICAgICAg
ICB7Ci0gICAgICAgICAgICB1bml0cyA9IG1ldHJpY0luZm8udW5pdHM7CisgICAgICAgICAgICBz
dGQ6OnN0cmluZ3N0cmVhbSBtZWRpYW5TdHI7CisgICAgICAgICAgICBtZWRpYW5TdHIgPDwgIi4i
IDw8IGNvdW50ZXJOYW1lIDw8ICJfbWVkaWFuIjsKKyAgICAgICAgICAgIHN0ZDo6c3RyaW5nIG1l
ZGlhbk5hbWUgPSBtZWRpYW5TdHIuc3RyKCk7CisKKyAgICAgICAgICAgIG1SZXBvcnRlci0+QWRk
UmVzdWx0KG1lZGlhbk5hbWUsIHN0YXRpY19jYXN0PHNpemVfdD4oc2FtcGxlc1ttaWRwb2ludF0p
KTsKICAgICAgICAgfQogCi0gICAgICAgIGlmICh1bml0cyA9PSAibXMiKQogICAgICAgICB7Ci0g
ICAgICAgICAgICByZXRWYWx1ZSA9IHNlY29uZHNQZXJJdGVyYXRpb24gKiBrTWlsbGlTZWNvbmRz
UGVyU2Vjb25kOworICAgICAgICAgICAgc3RkOjpzdHJpbmcgbWVhc3VyZW1lbnQgPSBtTmFtZSAr
IG1CYWNrZW5kICsgIi4iICsgY291bnRlck5hbWUgKyAiX21lZGlhbiI7CisgICAgICAgICAgICBU
ZXN0U3VpdGU6OkdldEluc3RhbmNlKCktPmFkZEhpc3RvZ3JhbVNhbXBsZShtZWFzdXJlbWVudCwg
bVN0b3J5LCBzYW1wbGVzW21pZHBvaW50XSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICJjb3VudCIpOwogICAgICAgICB9Ci0gICAgICAg
IGVsc2UgaWYgKHVuaXRzID09ICJ1cyIpCisKKyAgICAgICAgY29uc3QgYXV0byAmbWF4SXQgPSBz
dGQ6Om1heF9lbGVtZW50KHNhbXBsZXMuYmVnaW4oKSwgc2FtcGxlcy5lbmQoKSk7CisKICAgICAg
ICAgewotICAgICAgICAgICAgcmV0VmFsdWUgPSBzZWNvbmRzUGVySXRlcmF0aW9uICoga01pY3Jv
U2Vjb25kc1BlclNlY29uZDsKKyAgICAgICAgICAgIHN0ZDo6c3RyaW5nc3RyZWFtIG1heFN0cjsK
KyAgICAgICAgICAgIG1heFN0ciA8PCAiLiIgPDwgY291bnRlck5hbWUgPDwgIl9tYXgiOworICAg
ICAgICAgICAgc3RkOjpzdHJpbmcgbWF4TmFtZSA9IG1heFN0ci5zdHIoKTsKKyAgICAgICAgICAg
IG1SZXBvcnRlci0+QWRkUmVzdWx0KG1heE5hbWUsIHN0YXRpY19jYXN0PHNpemVfdD4oKm1heEl0
KSk7CiAgICAgICAgIH0KLSAgICAgICAgZWxzZQorCiAgICAgICAgIHsKLSAgICAgICAgICAgIHJl
dFZhbHVlID0gc2Vjb25kc1Blckl0ZXJhdGlvbiAqIGtOYW5vU2Vjb25kc1BlclNlY29uZDsKKyAg
ICAgICAgICAgIHN0ZDo6c3RyaW5nIG1lYXN1cmVtZW50ID0gbU5hbWUgKyBtQmFja2VuZCArICIu
IiArIGNvdW50ZXJOYW1lICsgIl9tYXgiOworICAgICAgICAgICAgVGVzdFN1aXRlOjpHZXRJbnN0
YW5jZSgpLT5hZGRIaXN0b2dyYW1TYW1wbGUobWVhc3VyZW1lbnQsIG1TdG9yeSwgKm1heEl0LCAi
Y291bnQiKTsKICAgICAgICAgfQotICAgICAgICBtUmVwb3J0ZXItPkFkZFJlc3VsdChjbG9ja05h
bWVzW2ldLCByZXRWYWx1ZSk7CiAgICAgfQorfQogCi0gICAgaWYgKGdWZXJib3NlTG9nZ2luZykK
K3ZvaWQgQU5HTEVQZXJmVGVzdDo6cHJvY2Vzc0Nsb2NrUmVzdWx0KGNvbnN0IGNoYXIgKm1ldHJp
YywgZG91YmxlIHJlc3VsdFNlY29uZHMpCit7CisgICAgZG91YmxlIHNlY29uZHNQZXJTdGVwICAg
ICAgPSByZXN1bHRTZWNvbmRzIC8gc3RhdGljX2Nhc3Q8ZG91YmxlPihtVHJpYWxOdW1TdGVwc1Bl
cmZvcm1lZCk7CisgICAgZG91YmxlIHNlY29uZHNQZXJJdGVyYXRpb24gPSBzZWNvbmRzUGVyU3Rl
cCAvIHN0YXRpY19jYXN0PGRvdWJsZT4obUl0ZXJhdGlvbnNQZXJTdGVwKTsKKworICAgIHBlcmZf
dGVzdDo6TWV0cmljSW5mbyBtZXRyaWNJbmZvOworICAgIHN0ZDo6c3RyaW5nIHVuaXRzOworICAg
IGJvb2wgZm91bmRNZXRyaWMgPSBtUmVwb3J0ZXItPkdldE1ldHJpY0luZm8obWV0cmljLCAmbWV0
cmljSW5mbyk7CisgICAgaWYgKCFmb3VuZE1ldHJpYykKICAgICB7Ci0gICAgICAgIGRvdWJsZSBm
cHMgPSBzdGF0aWNfY2FzdDxkb3VibGU+KG1UcmlhbE51bVN0ZXBzUGVyZm9ybWVkICogbUl0ZXJh
dGlvbnNQZXJTdGVwKSAvCi0gICAgICAgICAgICAgICAgICAgICBlbGFwc2VkVGltZVNlY29uZHNb
MF07Ci0gICAgICAgIHByaW50ZigiUmFuICUwLjJsZiBpdGVyYXRpb25zIHBlciBzZWNvbmRcbiIs
IGZwcyk7CisgICAgICAgIGZwcmludGYoc3RkZXJyLCAiRXJyb3IgZ2V0dGluZyBtZXRyaWMgaW5m
byBmb3IgJXMuXG4iLCBtZXRyaWMpOworICAgICAgICByZXR1cm47CiAgICAgfQorICAgIHVuaXRz
ID0gbWV0cmljSW5mby51bml0czsKIAotICAgIGlmIChnQ2FsaWJyYXRpb24pCisgICAgZG91Ymxl
IHJlc3VsdDsKKworICAgIGlmICh1bml0cyA9PSAibXMiKQogICAgIHsKLSAgICAgICAgbVJlcG9y
dGVyLT5BZGRSZXN1bHQoIi5zdGVwc190b19ydW4iLCBzdGF0aWNfY2FzdDxzaXplX3Q+KG1TdGVw
c1RvUnVuKSk7CisgICAgICAgIHJlc3VsdCA9IHNlY29uZHNQZXJJdGVyYXRpb24gKiBrTWlsbGlT
ZWNvbmRzUGVyU2Vjb25kOworICAgIH0KKyAgICBlbHNlIGlmICh1bml0cyA9PSAidXMiKQorICAg
IHsKKyAgICAgICAgcmVzdWx0ID0gc2Vjb25kc1Blckl0ZXJhdGlvbiAqIGtNaWNyb1NlY29uZHNQ
ZXJTZWNvbmQ7CiAgICAgfQogICAgIGVsc2UKICAgICB7Ci0gICAgICAgIG1SZXBvcnRlci0+QWRk
UmVzdWx0KCIudHJpYWxfc3RlcHMiLCBzdGF0aWNfY2FzdDxzaXplX3Q+KG1UcmlhbE51bVN0ZXBz
UGVyZm9ybWVkKSk7Ci0gICAgICAgIG1SZXBvcnRlci0+QWRkUmVzdWx0KCIudG90YWxfc3RlcHMi
LCBzdGF0aWNfY2FzdDxzaXplX3Q+KG1Ub3RhbE51bVN0ZXBzUGVyZm9ybWVkKSk7CisgICAgICAg
IHJlc3VsdCA9IHNlY29uZHNQZXJJdGVyYXRpb24gKiBrTmFub1NlY29uZHNQZXJTZWNvbmQ7CiAg
ICAgfQorICAgIG1SZXBvcnRlci0+QWRkUmVzdWx0KG1ldHJpYywgcmVzdWx0KTsKIAogICAgIC8v
IE91dHB1dCBoaXN0b2dyYW0gSlNPTiBzZXQgZm9ybWF0IGlmIGVuYWJsZWQuCi0gICAgZG91Ymxl
IHNlY29uZHNQZXJTdGVwID0gZWxhcHNlZFRpbWVTZWNvbmRzWzBdIC8gc3RhdGljX2Nhc3Q8ZG91
YmxlPihtVHJpYWxOdW1TdGVwc1BlcmZvcm1lZCk7Ci0gICAgZG91YmxlIHNlY29uZHNQZXJJdGVy
YXRpb24gPSBzZWNvbmRzUGVyU3RlcCAvIHN0YXRpY19jYXN0PGRvdWJsZT4obUl0ZXJhdGlvbnNQ
ZXJTdGVwKTsKLSAgICBUZXN0U3VpdGU6OkdldEluc3RhbmNlKCktPmFkZEhpc3RvZ3JhbVNhbXBs
ZShtTmFtZSArIG1CYWNrZW5kLCBtU3RvcnksCisgICAgVGVzdFN1aXRlOjpHZXRJbnN0YW5jZSgp
LT5hZGRIaXN0b2dyYW1TYW1wbGUobU5hbWUgKyBtQmFja2VuZCArIG1ldHJpYywgbVN0b3J5LAog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlY29uZHNQ
ZXJJdGVyYXRpb24gKiBrTWlsbGlTZWNvbmRzUGVyU2Vjb25kLAogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtc0Jlc3RGaXRGb3JtYXRfc21hbGxlcklz
QmV0dGVyIik7Ci0gICAgcmV0dXJuIHJldFZhbHVlOworfQorCit2b2lkIEFOR0xFUGVyZlRlc3Q6
OnByb2Nlc3NNZW1vcnlSZXN1bHQoY29uc3QgY2hhciAqbWV0cmljLCB1aW50NjRfdCByZXN1bHRL
QikKK3sKKyAgICBwZXJmX3Rlc3Q6Ok1ldHJpY0luZm8gbWV0cmljSW5mbzsKKyAgICBpZiAoIW1S
ZXBvcnRlci0+R2V0TWV0cmljSW5mbyhtZXRyaWMsICZtZXRyaWNJbmZvKSkKKyAgICB7CisgICAg
ICAgIG1SZXBvcnRlci0+UmVnaXN0ZXJJbXBvcnRhbnRNZXRyaWMobWV0cmljLCAic2l6ZUluQnl0
ZXMiKTsKKyAgICB9CisKKyAgICBtUmVwb3J0ZXItPkFkZFJlc3VsdChtZXRyaWMsIHN0YXRpY19j
YXN0PHNpemVfdD4ocmVzdWx0S0IgKiAxMDAwKSk7CisKKyAgICBUZXN0U3VpdGU6OkdldEluc3Rh
bmNlKCktPmFkZEhpc3RvZ3JhbVNhbXBsZShtTmFtZSArIG1CYWNrZW5kICsgbWV0cmljLCBtU3Rv
cnksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Rh
dGljX2Nhc3Q8ZG91YmxlPihyZXN1bHRLQikgKiAxMDAwLjAsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNpemVJbkJ5dGVzX3NtYWxsZXJJc0JldHRl
ciIpOwogfQogCiBkb3VibGUgQU5HTEVQZXJmVGVzdDo6bm9ybWFsaXplZFRpbWUoc2l6ZV90IHZh
bHVlKSBjb25zdApAQCAtNTQwLDcgKzU5MSw3IEBAIHZvaWQgQU5HTEVQZXJmVGVzdDo6Y2FsaWJy
YXRlU3RlcHNUb1J1bihSdW5Mb29wUG9saWN5IHBvbGljeSkKICAgICAvLyBDYWxpYnJhdGlvbiBh
bGxvd3MgdGhlIHBlcmYgdGVzdCBydW5uZXIgc2NyaXB0IHRvIHNhdmUgc29tZSB0aW1lLgogICAg
IGlmIChnQ2FsaWJyYXRpb24pCiAgICAgewotICAgICAgICBwcmludFJlc3VsdHMoKTsKKyAgICAg
ICAgcHJvY2Vzc1Jlc3VsdHMoKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KIH0KQEAgLTgzNSw2
ICs4ODYsOCBAQCB2b2lkIEFOR0xFUmVuZGVyVGVzdDo6U2V0VXAoKQogICAgICAgICAvLyBiZXR3
ZWVuIGNhbGlicmF0aW9uIG1lYXN1cmVtZW50cy4KICAgICAgICAgY2FsaWJyYXRlU3RlcHNUb1J1
bihSdW5Mb29wUG9saWN5OjpGaW5pc2hFdmVyeVN0ZXApOwogICAgIH0KKworICAgIGluaXRQZXJm
Q291bnRlcnMoKTsKIH0KIAogdm9pZCBBTkdMRVJlbmRlclRlc3Q6OlRlYXJEb3duKCkKQEAgLTg2
NSw2ICs5MTgsNzMgQEAgdm9pZCBBTkdMRVJlbmRlclRlc3Q6OlRlYXJEb3duKCkKICAgICBBTkdM
RVBlcmZUZXN0OjpUZWFyRG93bigpOwogfQogCit2b2lkIEFOR0xFUmVuZGVyVGVzdDo6aW5pdFBl
cmZDb3VudGVycygpCit7CisgICAgaWYgKCFnUGVyZkNvdW50ZXJzKQorICAgIHsKKyAgICAgICAg
cmV0dXJuOworICAgIH0KKworICAgIGlmICghSXNHTEV4dGVuc2lvbkVuYWJsZWQoa1BlcmZNb25p
dG9yRXh0ZW5zaW9uTmFtZSkpCisgICAgeworICAgICAgICBmcHJpbnRmKHN0ZGVyciwgIkNhbm5v
dCByZXBvcnQgcGVyZiBtZXRyaWNzIGJlY2F1c2UgJXMgaXMgbm90IGF2YWlsYWJsZS5cbiIsCisg
ICAgICAgICAgICAgICAga1BlcmZNb25pdG9yRXh0ZW5zaW9uTmFtZSk7CisgICAgICAgIHJldHVy
bjsKKyAgICB9CisKKyAgICBDb3VudGVyTmFtZVRvSW5kZXhNYXAgaW5kZXhNYXAgPSBCdWlsZENv
dW50ZXJOYW1lVG9JbmRleE1hcCgpOworCisgICAgc3RkOjp2ZWN0b3I8c3RkOjpzdHJpbmc+IGNv
dW50ZXJzID0KKyAgICAgICAgYW5nbGU6OlNwbGl0U3RyaW5nKGdQZXJmQ291bnRlcnMsICI6Iiwg
YW5nbGU6OldoaXRlc3BhY2VIYW5kbGluZzo6VFJJTV9XSElURVNQQUNFLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgYW5nbGU6OlNwbGl0UmVzdWx0OjpTUExJVF9XQU5UX05PTkVNUFRZKTsK
KyAgICBmb3IgKGNvbnN0IHN0ZDo6c3RyaW5nICZjb3VudGVyIDogY291bnRlcnMpCisgICAgewor
ICAgICAgICBhdXRvIGl0ZXIgPSBpbmRleE1hcC5maW5kKGNvdW50ZXIpOworICAgICAgICBpZiAo
aXRlciA9PSBpbmRleE1hcC5lbmQoKSkKKyAgICAgICAgeworICAgICAgICAgICAgZnByaW50Zihz
dGRlcnIsICJDb3VudGVyICclcycgbm90IGluIGxpc3Qgb2YgYXZhaWxhYmxlIHBlcmYgY291bnRl
cnMuXG4iLAorICAgICAgICAgICAgICAgICAgICBjb3VudGVyLmNfc3RyKCkpOworICAgICAgICB9
CisgICAgICAgIGVsc2UKKyAgICAgICAgeworICAgICAgICAgICAgeworICAgICAgICAgICAgICAg
IHN0ZDo6c3RyaW5nc3RyZWFtIG1lZGlhblN0cjsKKyAgICAgICAgICAgICAgICBtZWRpYW5TdHIg
PDwgJy4nIDw8IGNvdW50ZXIgPDwgIl9tZWRpYW4iOworICAgICAgICAgICAgICAgIHN0ZDo6c3Ry
aW5nIG1lZGlhbk5hbWUgPSBtZWRpYW5TdHIuc3RyKCk7CisgICAgICAgICAgICAgICAgbVJlcG9y
dGVyLT5SZWdpc3RlckltcG9ydGFudE1ldHJpYyhtZWRpYW5OYW1lLCAiY291bnQiKTsKKyAgICAg
ICAgICAgIH0KKworICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIHN0ZDo6c3RyaW5nc3Ry
ZWFtIG1heFN0cjsKKyAgICAgICAgICAgICAgICBtYXhTdHIgPDwgJy4nIDw8IGNvdW50ZXIgPDwg
Il9tYXgiOworICAgICAgICAgICAgICAgIHN0ZDo6c3RyaW5nIG1heE5hbWUgPSBtYXhTdHIuc3Ry
KCk7CisgICAgICAgICAgICAgICAgbVJlcG9ydGVyLT5SZWdpc3RlckltcG9ydGFudE1ldHJpYyht
YXhOYW1lLCAiY291bnQiKTsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgR0x1aW50IGlu
ZGV4ICAgICAgICAgICAgPSBpbmRleE1hcFtjb3VudGVyXTsKKyAgICAgICAgICAgIG1QZXJmQ291
bnRlckluZm9baW5kZXhdID0ge2NvdW50ZXIsIHt9fTsKKyAgICAgICAgfQorICAgIH0KK30KKwor
dm9pZCBBTkdMRVJlbmRlclRlc3Q6OnVwZGF0ZVBlcmZDb3VudGVycygpCit7CisgICAgaWYgKG1Q
ZXJmQ291bnRlckluZm8uZW1wdHkoKSkKKyAgICB7CisgICAgICAgIHJldHVybjsKKyAgICB9CisK
KyAgICBzdGQ6OnZlY3RvcjxQZXJmTW9uaXRvclRyaXBsZXQ+IHBlcmZEYXRhID0gR2V0UGVyZk1v
bml0b3JUcmlwbGV0cygpOworICAgIEFTU0VSVCghcGVyZkRhdGEuZW1wdHkoKSk7CisKKyAgICBm
b3IgKGF1dG8gJml0ZXIgOiBtUGVyZkNvdW50ZXJJbmZvKQorICAgIHsKKyAgICAgICAgdWludDMy
X3QgY291bnRlciAgICAgICAgICAgICA9IGl0ZXIuZmlyc3Q7CisgICAgICAgIHN0ZDo6dmVjdG9y
PEdMdWludD4gJnNhbXBsZXMgPSBpdGVyLnNlY29uZC5zYW1wbGVzOworICAgICAgICBzYW1wbGVz
LnB1c2hfYmFjayhwZXJmRGF0YVtjb3VudGVyXS52YWx1ZSk7CisgICAgfQorfQorCiB2b2lkIEFO
R0xFUmVuZGVyVGVzdDo6YmVnaW5JbnRlcm5hbFRyYWNlRXZlbnQoY29uc3QgY2hhciAqbmFtZSkK
IHsKICAgICBpZiAoZ0VuYWJsZVRyYWNlKQpAQCAtOTMzLDYgKzEwNTMsNyBAQCB2b2lkIEFOR0xF
UmVuZGVyVGVzdDo6c3RlcCgpCiAgICAgICAgIC8vIGNvbW1hbmQgcXVldWVzLgogICAgICAgICBp
ZiAobVN3YXBFbmFibGVkKQogICAgICAgICB7CisgICAgICAgICAgICB1cGRhdGVQZXJmQ291bnRl
cnMoKTsKICAgICAgICAgICAgIG1HTFdpbmRvdy0+c3dhcCgpOwogICAgICAgICB9CiAgICAgICAg
IG1PU1dpbmRvdy0+bWVzc2FnZUxvb3AoKTsKQEAgLTk0Myw2ICsxMDY0LDEzIEBAIHZvaWQgQU5H
TEVSZW5kZXJUZXN0OjpzdGVwKCkKICAgICAgICAgICAgIEVYUEVDVF9FUShzdGF0aWNfY2FzdDxH
TGVudW0+KEdMX05PX0VSUk9SKSwgZ2xHZXRFcnJvcigpKTsKICAgICAgICAgfQogI2VuZGlmICAv
LyBkZWZpbmVkKEFOR0xFX0VOQUJMRV9BU1NFUlRTKQorCisgICAgICAgIC8vIFNhbXBsZSBzeXN0
ZW0gbWVtb3J5CisgICAgICAgIHVpbnQ2NF90IHByb2Nlc3NNZW1vcnlVc2FnZUtCID0gR2V0UHJv
Y2Vzc01lbW9yeVVzYWdlS0IoKTsKKyAgICAgICAgaWYgKHByb2Nlc3NNZW1vcnlVc2FnZUtCKQor
ICAgICAgICB7CisgICAgICAgICAgICBtUHJvY2Vzc01lbW9yeVVzYWdlS0JTYW1wbGVzLnB1c2hf
YmFjayhwcm9jZXNzTWVtb3J5VXNhZ2VLQik7CisgICAgICAgIH0KICAgICB9CiAKICAgICBlbmRJ
bnRlcm5hbFRyYWNlRXZlbnQoInN0ZXAiKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3NyYy90ZXN0cy9wZXJmX3Rlc3RzL0FOR0xFUGVyZlRlc3QuaCBiL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9wZXJmX3Rlc3RzL0FOR0xFUGVyZlRlc3QuaAppbmRleCAz
MDkzZGQ0ODU4ZThiNDgzNDc0YzFhZDNjNDNjYmRlOTdjMTdhZjIyLi5hMWIxZjY5MTlkMWZmYWMz
YWZlNGExN2MyNWRiZWM4NjJmNDk5OTMwIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9zcmMvdGVzdHMvcGVyZl90ZXN0cy9BTkdMRVBlcmZUZXN0LmgKKysrIGIvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL3BlcmZfdGVzdHMvQU5HTEVQZXJmVGVzdC5oCkBAIC0x
MDYsOSArMTA2LDEyIEBAIGNsYXNzIEFOR0xFUGVyZlRlc3QgOiBwdWJsaWMgdGVzdGluZzo6VGVz
dCwgYW5nbGU6Ok5vbkNvcHlhYmxlCiAgICAgdmlydHVhbCB2b2lkIHNhdmVTY3JlZW5zaG90KGNv
bnN0IHN0ZDo6c3RyaW5nICZzY3JlZW5zaG90TmFtZSkge30KICAgICB2aXJ0dWFsIHZvaWQgY29t
cHV0ZUdQVVRpbWUoKSB7fQogCi0gICAgZG91YmxlIHByaW50UmVzdWx0cygpOwogICAgIHZvaWQg
Y2FsaWJyYXRlU3RlcHNUb1J1bihSdW5Mb29wUG9saWN5IHBvbGljeSk7CiAKKyAgICB2b2lkIHBy
b2Nlc3NSZXN1bHRzKCk7CisgICAgdm9pZCBwcm9jZXNzQ2xvY2tSZXN1bHQoY29uc3QgY2hhciAq
bWV0cmljLCBkb3VibGUgcmVzdWx0U2Vjb25kcyk7CisgICAgdm9pZCBwcm9jZXNzTWVtb3J5UmVz
dWx0KGNvbnN0IGNoYXIgKm1ldHJpYywgdWludDY0X3QgcmVzdWx0S0IpOworCiAgICAgc3RkOjpz
dHJpbmcgbU5hbWU7CiAgICAgc3RkOjpzdHJpbmcgbUJhY2tlbmQ7CiAgICAgc3RkOjpzdHJpbmcg
bVN0b3J5OwpAQCAtMTIyLDYgKzEyNSwxNCBAQCBjbGFzcyBBTkdMRVBlcmZUZXN0IDogcHVibGlj
IHRlc3Rpbmc6OlRlc3QsIGFuZ2xlOjpOb25Db3B5YWJsZQogICAgIGludCBtSXRlcmF0aW9uc1Bl
clN0ZXA7CiAgICAgYm9vbCBtUnVubmluZzsKICAgICBzdGQ6OnZlY3Rvcjxkb3VibGU+IG1UZXN0
VHJpYWxSZXN1bHRzOworCisgICAgc3RydWN0IENvdW50ZXJJbmZvCisgICAgeworICAgICAgICBz
dGQ6OnN0cmluZyBuYW1lOworICAgICAgICBzdGQ6OnZlY3RvcjxHTHVpbnQ+IHNhbXBsZXM7Cisg
ICAgfTsKKyAgICBhbmdsZTo6SGFzaE1hcDxHTHVpbnQsIENvdW50ZXJJbmZvPiBtUGVyZkNvdW50
ZXJJbmZvOworICAgIHN0ZDo6dmVjdG9yPHVpbnQ2NF90PiBtUHJvY2Vzc01lbW9yeVVzYWdlS0JT
YW1wbGVzOwogfTsKIAogZW51bSBjbGFzcyBTdXJmYWNlVHlwZQpAQCAtMTkwLDYgKzIwMSw3IEBA
IGNsYXNzIEFOR0xFUmVuZGVyVGVzdCA6IHB1YmxpYyBBTkdMRVBlcmZUZXN0CiAgICAgdm9pZCBl
bmRHTFRyYWNlRXZlbnQoY29uc3QgY2hhciAqbmFtZSwgZG91YmxlIGhvc3RUaW1lU2VjKTsKIAog
ICAgIHZvaWQgZGlzYWJsZVRlc3RIYXJuZXNzU3dhcCgpIHsgbVN3YXBFbmFibGVkID0gZmFsc2U7
IH0KKyAgICB2b2lkIHVwZGF0ZVBlcmZDb3VudGVycygpOwogCiAgICAgYm9vbCBtSXNUaW1lc3Rh
bXBRdWVyeUF2YWlsYWJsZTsKIApAQCAtMjA0LDYgKzIxNiw4IEBAIGNsYXNzIEFOR0xFUmVuZGVy
VGVzdCA6IHB1YmxpYyBBTkdMRVBlcmZUZXN0CiAKICAgICBib29sIGFyZUV4dGVuc2lvblByZXJl
cXVpc2l0ZXNGdWxmaWxsZWQoKSBjb25zdDsKIAorICAgIHZvaWQgaW5pdFBlcmZDb3VudGVycygp
OworCiAgICAgR0xXaW5kb3dCYXNlICptR0xXaW5kb3c7CiAgICAgT1NXaW5kb3cgKm1PU1dpbmRv
dzsKICAgICBzdGQ6OnZlY3Rvcjxjb25zdCBjaGFyICo+IG1FeHRlbnNpb25QcmVyZXF1aXNpdGVz
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL3BlcmZfdGVz
dHMvQU5HTEVQZXJmVGVzdEFyZ3MuY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rl
c3RzL3BlcmZfdGVzdHMvQU5HTEVQZXJmVGVzdEFyZ3MuY3BwCmluZGV4IDMxM2FiMmM2MjY3MjI5
ZjczNzE4OTIyOGYzNDVjNDczOTRkZDM5MTMuLmFmMjc0NjRiNzkyNWUzNWMzNDA5YWFmZGIxODg2
NjcxNTEyMmVmNDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0
cy9wZXJmX3Rlc3RzL0FOR0xFUGVyZlRlc3RBcmdzLmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvdGVzdHMvcGVyZl90ZXN0cy9BTkdMRVBlcmZUZXN0QXJncy5jcHAKQEAgLTI5
LDYgKzI5LDcgQEAgYm9vbCBnRW5hYmxlQWxsVHJhY2VUZXN0cyAgICAgID0gZmFsc2U7CiBib29s
IGdSZXRyYWNlTW9kZSAgICAgICAgICAgICAgPSBmYWxzZTsKIGJvb2wgZ01pbmltaXplR1BVV29y
ayAgICAgICAgICA9IGZhbHNlOwogYm9vbCBnVHJhY2VUZXN0VmFsaWRhdGlvbiAgICAgID0gZmFs
c2U7Citjb25zdCBjaGFyICpnUGVyZkNvdW50ZXJzICAgICAgPSBudWxscHRyOwogCiAvLyBEZWZh
dWx0IHRvIHRocmVlIHdhcm11cCBsb29wcy4gVGhlcmUncyBubyBzY2llbmNlIHRvIHRoaXMuIE1v
cmUgdGhhbiB0d28gbG9vcHMgd2FzIGV4cGVyaW1lbnRhbGx5CiAvLyBoZWxwZnVsIG9uIGEgV2lu
ZG93cyBOVklESUEgc2V0dXAgd2hlbiB0ZXN0aW5nIHdpdGggVnVsa2FuIGFuZCBuYXRpdmUgdHJh
Y2UgdGVzdHMuCkBAIC0xNzEsNSArMTcyLDEwIEBAIHZvaWQgQU5HTEVQcm9jZXNzUGVyZlRlc3RB
cmdzKGludCAqYXJnYywgY2hhciAqKmFyZ3YpCiAgICAgICAgICAgICBnVGVzdFRyaWFscyAgICAg
ICAgICA9IDE7CiAgICAgICAgICAgICBnTWF4VHJpYWxUaW1lU2Vjb25kcyA9IDYwMC4wOwogICAg
ICAgICB9CisgICAgICAgIGVsc2UgaWYgKHN0cmNtcCgiLS1wZXJmLWNvdW50ZXJzIiwgYXJndlth
cmdJbmRleF0pID09IDAgJiYgYXJnSW5kZXggPCAqYXJnYyAtIDEpCisgICAgICAgIHsKKyAgICAg
ICAgICAgIGdQZXJmQ291bnRlcnMgPSBhcmd2W2FyZ0luZGV4ICsgMV07CisgICAgICAgICAgICBh
cmdJbmRleCsrOworICAgICAgICB9CiAgICAgfQogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvc3JjL3Rlc3RzL3BlcmZfdGVzdHMvQU5HTEVQZXJmVGVzdEFyZ3MuaCBiL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9wZXJmX3Rlc3RzL0FOR0xFUGVyZlRlc3RB
cmdzLmgKaW5kZXggOTFkOGM1MTBiZjljZTQ0YTNjMDUzYWQ1ODZhYzliODk0Zjc3YzcxZi4uM2M3
MTczNjhhNWMyYjQ4NDFmMjVkM2E1ZDFlNGNiNGJhODcyYTRmYSAxMDA2NDQKLS0tIGEvU291cmNl
L1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL3BlcmZfdGVzdHMvQU5HTEVQZXJmVGVzdEFyZ3Mu
aAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvcGVyZl90ZXN0cy9BTkdM
RVBlcmZUZXN0QXJncy5oCkBAIC0zMSw2ICszMSw3IEBAIGV4dGVybiBib29sIGdFbmFibGVBbGxU
cmFjZVRlc3RzOwogZXh0ZXJuIGJvb2wgZ1JldHJhY2VNb2RlOwogZXh0ZXJuIGJvb2wgZ01pbmlt
aXplR1BVV29yazsKIGV4dGVybiBib29sIGdUcmFjZVRlc3RWYWxpZGF0aW9uOworZXh0ZXJuIGNv
bnN0IGNoYXIgKmdQZXJmQ291bnRlcnM7CiAKIGlubGluZSBib29sIE9uZUZyYW1lKCkKIHsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9wZXJmX3Rlc3RzL0Ns
ZWFyUGVyZi5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvcGVyZl90ZXN0
cy9DbGVhclBlcmYuY3BwCmluZGV4IGNhMWRiNzZkZDVjNWZkM2FiZGQ2N2VkOGYyNjdkN2FkNjFj
ZjY1M2UuLjBkNzM4MjAzZWM1M2E2NDg5MGMxZGQzODVhM2IyZGUxYzNjNGYyODEgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9wZXJmX3Rlc3RzL0NsZWFyUGVy
Zi5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL3BlcmZfdGVzdHMv
Q2xlYXJQZXJmLmNwcApAQCAtMTMsNyArMTMsOSBAQAogI2luY2x1ZGUgPHJhbmRvbT4KICNpbmNs
dWRlIDxzc3RyZWFtPgogCisjaW5jbHVkZSAidGVzdF91dGlscy9BTkdMRVRlc3QuaCIKICNpbmNs
dWRlICJ0ZXN0X3V0aWxzL2dsX3JhaWkuaCIKKyNpbmNsdWRlICJ1dGlsL3JhbmRvbV91dGlscy5o
IgogI2luY2x1ZGUgInV0aWwvc2hhZGVyX3V0aWxzLmgiCiAKIHVzaW5nIG5hbWVzcGFjZSBhbmds
ZTsKQEAgLTI5LDEwICszMSwxMSBAQCBzdHJ1Y3QgQ2xlYXJQYXJhbXMgZmluYWwgOiBwdWJsaWMg
UmVuZGVyVGVzdFBhcmFtcwogICAgICAgICBpdGVyYXRpb25zUGVyU3RlcCA9IGtJdGVyYXRpb25z
UGVyU3RlcDsKICAgICAgICAgdHJhY2tHcHVUaW1lICAgICAgPSB0cnVlOwogCi0gICAgICAgIGZi
b1NpemUgICAgID0gMjA0ODsKLSAgICAgICAgdGV4dHVyZVNpemUgPSAxNjsKKyAgICAgICAgZmJv
U2l6ZSA9IDIwNDg7CiAKICAgICAgICAgaW50ZXJuYWxGb3JtYXQgPSBHTF9SR0JBODsKKworICAg
ICAgICBzY2lzc29yZWRDbGVhciA9IGZhbHNlOwogICAgIH0KIAogICAgIHN0ZDo6c3RyaW5nIHN0
b3J5KCkgY29uc3Qgb3ZlcnJpZGU7CkBAIC00MSw2ICs0NCw4IEBAIHN0cnVjdCBDbGVhclBhcmFt
cyBmaW5hbCA6IHB1YmxpYyBSZW5kZXJUZXN0UGFyYW1zCiAgICAgR0xzaXplaSB0ZXh0dXJlU2l6
ZTsKIAogICAgIEdMZW51bSBpbnRlcm5hbEZvcm1hdDsKKworICAgIGJvb2wgc2Npc3NvcmVkQ2xl
YXI7CiB9OwogCiBzdGQ6Om9zdHJlYW0gJm9wZXJhdG9yPDwoc3RkOjpvc3RyZWFtICZvcywgY29u
c3QgQ2xlYXJQYXJhbXMgJnBhcmFtcykKQEAgLTYwLDYgKzY1LDExIEBAIHN0ZDo6c3RyaW5nIENs
ZWFyUGFyYW1zOjpzdG9yeSgpIGNvbnN0CiAgICAgICAgIHN0cnN0ciA8PCAiX3JnYiI7CiAgICAg
fQogCisgICAgaWYgKHNjaXNzb3JlZENsZWFyKQorICAgIHsKKyAgICAgICAgc3Ryc3RyIDw8ICJf
c2Npc3NvcmVkQ2xlYXIiOworICAgIH0KKwogICAgIHJldHVybiBzdHJzdHIuc3RyKCk7CiB9CiAK
QEAgLTEyOSw4ICsxMzksNiBAQCB2b2lkIENsZWFyQmVuY2htYXJrOjpkcmF3QmVuY2htYXJrKCkK
IHsKICAgICBjb25zdCBhdXRvICZwYXJhbXMgPSBHZXRQYXJhbSgpOwogCi0gICAgc3RkOjp2ZWN0
b3I8ZmxvYXQ+IHRleHR1cmVEYXRhKHBhcmFtcy50ZXh0dXJlU2l6ZSAqIHBhcmFtcy50ZXh0dXJl
U2l6ZSAqIDQsIDAuNSk7Ci0KICAgICBHTFJlbmRlcmJ1ZmZlciBjb2xvclJibzsKICAgICBnbEJp
bmRSZW5kZXJidWZmZXIoR0xfUkVOREVSQlVGRkVSLCBjb2xvclJibyk7CiAgICAgZ2xSZW5kZXJi
dWZmZXJTdG9yYWdlKEdMX1JFTkRFUkJVRkZFUiwgcGFyYW1zLmludGVybmFsRm9ybWF0LCBwYXJh
bXMuZmJvU2l6ZSwgcGFyYW1zLmZib1NpemUpOwpAQCAtMTQ0LDE0ICsxNTIsNDIgQEAgdm9pZCBD
bGVhckJlbmNobWFyazo6ZHJhd0JlbmNobWFyaygpCiAgICAgZ2xGcmFtZWJ1ZmZlclJlbmRlcmJ1
ZmZlcihHTF9GUkFNRUJVRkZFUiwgR0xfQ09MT1JfQVRUQUNITUVOVDAsIEdMX1JFTkRFUkJVRkZF
UiwgY29sb3JSYm8pOwogICAgIGdsRnJhbWVidWZmZXJSZW5kZXJidWZmZXIoR0xfRlJBTUVCVUZG
RVIsIEdMX0RFUFRIX0FUVEFDSE1FTlQsIEdMX1JFTkRFUkJVRkZFUiwgZGVwdGhSYm8pOwogCisg
ICAgZ2xWaWV3cG9ydCgwLCAwLCBwYXJhbXMuZmJvU2l6ZSwgcGFyYW1zLmZib1NpemUpOworICAg
IGdsRGlzYWJsZShHTF9TQ0lTU09SX1RFU1QpOworCiAgICAgc3RhcnRHcHVUaW1lcigpOwotICAg
IGZvciAoc2l6ZV90IGl0ID0gMDsgaXQgPCBwYXJhbXMuaXRlcmF0aW9uc1BlclN0ZXA7ICsraXQp
CisKKyAgICBpZiAocGFyYW1zLnNjaXNzb3JlZENsZWFyKQogICAgIHsKLSAgICAgICAgZmxvYXQg
Y2xlYXJWYWx1ZSA9IChpdCAlIDIpICogMC41ZiArIDAuMmY7Ci0gICAgICAgIGdsQ2xlYXJDb2xv
cihjbGVhclZhbHVlLCBjbGVhclZhbHVlLCBjbGVhclZhbHVlLCBjbGVhclZhbHVlKTsKLSAgICAg
ICAgZ2xDbGVhcihHTF9DT0xPUl9CVUZGRVJfQklUIHwgR0xfREVQVEhfQlVGRkVSX0JJVCk7Ci0g
ICAgICAgIGdsRHJhd0FycmF5cyhHTF9UUklBTkdMRVMsIDAsIDMpOworICAgICAgICBhbmdsZTo6
Uk5HIHJuZzsKKyAgICAgICAgY29uc3QgR0x1aW50IHdpZHRoICA9IHBhcmFtcy5mYm9TaXplOwor
ICAgICAgICBjb25zdCBHTHVpbnQgaGVpZ2h0ID0gcGFyYW1zLmZib1NpemU7CisgICAgICAgIGZv
ciAoR0x1aW50IGluZGV4ID0gMDsgaW5kZXggPCAod2lkdGggLSAxKSAvIDI7IGluZGV4KyspCisg
ICAgICAgIHsKKyAgICAgICAgICAgIC8vIERvIHRoZSBmaXJzdCBjbGVhciB3aXRob3V0IHRoZSBz
Y2lzc29yLgorICAgICAgICAgICAgaWYgKGluZGV4ID4gMCkKKyAgICAgICAgICAgIHsKKyAgICAg
ICAgICAgICAgICBnbEVuYWJsZShHTF9TQ0lTU09SX1RFU1QpOworICAgICAgICAgICAgICAgIGds
U2Npc3NvcihpbmRleCwgaW5kZXgsIHdpZHRoIC0gKGluZGV4ICogMiksIGhlaWdodCAtIChpbmRl
eCAqIDIpKTsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgR0xDb2xvciBjb2xvciAgICAg
ID0gUmFuZG9tQ29sb3IoJnJuZyk7CisgICAgICAgICAgICBWZWN0b3I0IGZsb2F0Q29sb3IgPSBj
b2xvci50b05vcm1hbGl6ZWRWZWN0b3IoKTsKKyAgICAgICAgICAgIGdsQ2xlYXJDb2xvcihmbG9h
dENvbG9yWzBdLCBmbG9hdENvbG9yWzFdLCBmbG9hdENvbG9yWzJdLCBmbG9hdENvbG9yWzNdKTsK
KyAgICAgICAgICAgIGdsQ2xlYXIoR0xfQ09MT1JfQlVGRkVSX0JJVCk7CisgICAgICAgIH0KICAg
ICB9CisgICAgZWxzZQorICAgIHsKKyAgICAgICAgZm9yIChzaXplX3QgaXQgPSAwOyBpdCA8IHBh
cmFtcy5pdGVyYXRpb25zUGVyU3RlcDsgKytpdCkKKyAgICAgICAgeworICAgICAgICAgICAgZmxv
YXQgY2xlYXJWYWx1ZSA9IChpdCAlIDIpICogMC41ZiArIDAuMmY7CisgICAgICAgICAgICBnbENs
ZWFyQ29sb3IoY2xlYXJWYWx1ZSwgY2xlYXJWYWx1ZSwgY2xlYXJWYWx1ZSwgY2xlYXJWYWx1ZSk7
CisgICAgICAgICAgICBnbENsZWFyKEdMX0NPTE9SX0JVRkZFUl9CSVQgfCBHTF9ERVBUSF9CVUZG
RVJfQklUKTsKKyAgICAgICAgICAgIGdsRHJhd0FycmF5cyhHTF9UUklBTkdMRVMsIDAsIDMpOwor
ICAgICAgICB9CisgICAgfQorCiAgICAgc3RvcEdwdVRpbWVyKCk7CiAKICAgICBBU1NFUlRfR0xf
Tk9fRVJST1IoKTsKQEAgLTE3MSw3ICsyMDcsNyBAQCBDbGVhclBhcmFtcyBPcGVuR0xPckdMRVNQ
YXJhbXMoKQogICAgIHJldHVybiBwYXJhbXM7CiB9CiAKLUNsZWFyUGFyYW1zIFZ1bGthblBhcmFt
cyhib29sIGVtdWxhdGVkRm9ybWF0KQorQ2xlYXJQYXJhbXMgVnVsa2FuUGFyYW1zKGJvb2wgZW11
bGF0ZWRGb3JtYXQsIGJvb2wgc2Npc3NvcmVkQ2xlYXIpCiB7CiAgICAgQ2xlYXJQYXJhbXMgcGFy
YW1zOwogICAgIHBhcmFtcy5lZ2xQYXJhbWV0ZXJzID0gZWdsX3BsYXRmb3JtOjpWVUxLQU4oKTsK
QEAgLTE3OSw2ICsyMTUsNyBAQCBDbGVhclBhcmFtcyBWdWxrYW5QYXJhbXMoYm9vbCBlbXVsYXRl
ZEZvcm1hdCkKICAgICB7CiAgICAgICAgIHBhcmFtcy5pbnRlcm5hbEZvcm1hdCA9IEdMX1JHQjg7
CiAgICAgfQorICAgIHBhcmFtcy5zY2lzc29yZWRDbGVhciA9IHNjaXNzb3JlZENsZWFyOwogICAg
IHJldHVybiBwYXJhbXM7CiB9CiAKQEAgLTE5Miw1ICsyMjksNiBAQCBURVNUX1AoQ2xlYXJCZW5j
aG1hcmssIFJ1bikKIEFOR0xFX0lOU1RBTlRJQVRFX1RFU1QoQ2xlYXJCZW5jaG1hcmssCiAgICAg
ICAgICAgICAgICAgICAgICAgIEQzRDExUGFyYW1zKCksCiAgICAgICAgICAgICAgICAgICAgICAg
IE9wZW5HTE9yR0xFU1BhcmFtcygpLAotICAgICAgICAgICAgICAgICAgICAgICBWdWxrYW5QYXJh
bXMoZmFsc2UpLAotICAgICAgICAgICAgICAgICAgICAgICBWdWxrYW5QYXJhbXModHJ1ZSkpOwor
ICAgICAgICAgICAgICAgICAgICAgICBWdWxrYW5QYXJhbXMoZmFsc2UsIGZhbHNlKSwKKyAgICAg
ICAgICAgICAgICAgICAgICAgVnVsa2FuUGFyYW1zKHRydWUsIGZhbHNlKSwKKyAgICAgICAgICAg
ICAgICAgICAgICAgVnVsa2FuUGFyYW1zKGZhbHNlLCB0cnVlKSk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvcGVyZl90ZXN0cy9SRUFETUUubWQgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvcGVyZl90ZXN0cy9SRUFETUUubWQKaW5kZXgg
MjVjYjViNGU0Y2I1ZWJhOTc2Y2EzZWYwZTYyYzY2NWU3ZjMwODI4OS4uZjBkMWJhOTljZGIxMDNh
YjAxNmJkYWYxNzA0YTY5Mzc4N2Q2MTdiMiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc3JjL3Rlc3RzL3BlcmZfdGVzdHMvUkVBRE1FLm1kCisrKyBiL1NvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL3NyYy90ZXN0cy9wZXJmX3Rlc3RzL1JFQURNRS5tZApAQCAtNDIsNiArNDIsNyBA
QCBTZXZlcmFsIGNvbW1hbmQtbGluZSBhcmd1bWVudHMgY29udHJvbCBob3cgdGhlIHRlc3RzIHJ1
bjoKICogYC0tZW5hYmxlLWFsbC10cmFjZS10ZXN0c2A6IE9mZnNjcmVlbiBhbmQgdnN5bmMtbGlt
aXRlZCB0cmFjZSB0ZXN0cyBhcmUgZGlzYWJsZWQgYnkgZGVmYXVsdCB0byByZWR1Y2UgdGVzdCB0
aW1lLgogKiBgLS1taW5pbWl6ZS1ncHUtd29ya2A6IE1vZGlmeSBBUEkgY2FsbHMgc28gdGhhdCBH
UFUgd29yayBpcyByZWR1Y2VkIHRvIG1pbmltdW0uCiAqIGAtLXZhbGlkYXRpb25gOiBFbmFibGUg
c2VyaWFsaXphdGlvbiB2YWxpZGF0aW9uIGluIHRoZSB0cmFjZSB0ZXN0cy4gTm9ybWFsbHkgdXNl
ZCB3aXRoIFN3aWZ0U2hhZGVyIGFuZCByZXRyYWNpbmcuCisqIGAtLXBlcmYtY291bnRlcnNgOiBB
ZGRpdGlvbmFsIHBlcmZvcm1hbmNlIGNvdW50ZXJzIHRvIGluY2x1ZGUgaW4gdGhlIHJlc3VsdCBv
dXRwdXQuIFNlcGFyYXRlIG11bHRpcGxlIGVudHJpZXMgd2l0aCBjb2xvbnM6ICc6Jy4KIAogRm9y
IGV4YW1wbGUsIGZvciBhbiBlbmRsZXNzIHJ1biB3aXRoIG5vIHdhcm11cCwgcnVuOgogCkBAIC03
NCwzICs3NSwxNyBAQCBUaGUgY29tbWFuZCBsaW5lIGFyZ3VtZW50cyBpbXBsZW1lbnRhdGlvbnMg
YXJlIGxvY2F0ZWQgaW4gW2BBTkdMRVBlcmZUZXN0QXJncy5jcAogKiBbYFRyYWNlUGVyZlRlc3Rg
XShUcmFjZVBlcmZUZXN0LmNwcCk6IFJ1bnMgcmVwbGF5cyBvZiByZXN0cmljdGVkIHRyYWNlcywg
bm90IGF2YWlsYWJsZSBwdWJsaWNseS4gVG8gZW5hYmxlLCByZWFkIG1vcmUgaW4gW2BSZXN0cmlj
dGVkVHJhY2VUZXN0c2BdKC4uL3Jlc3RyaWN0ZWRfdHJhY2VzL1JFQURNRS5tZCkKIAogTWFueSBv
dGhlciB0ZXN0cyBjYW4gYmUgZm91bmQgdGhhdCBoYXZlIGRvY3VtZW50YXRpb24gaW4gdGhlaXIg
Y2xhc3Nlcy4KKworIyMgVW5kZXJzdGFuZGluZyB0aGUgTWV0cmljcworCisqIGBjcHVfdGltZWA6
IEFtb3VudCBvZiBDUFUgdGltZSBjb25zdW1lZCBieSBhbiBpdGVyYXRpb24gb2YgdGhlIHRlc3Qu
IFRoaXMgaXMgYmFja2VkIGJ5CitgR2V0UHJvY2Vzc1RpbWVzYCBvbiBXaW5kb3dzLCBgZ2V0cnVz
YWdlYCBvbiBMaW51eC9BbmRyb2lkLCBhbmQgYHp4X29iamVjdF9nZXRfaW5mb2Agb24gRnVjaHNp
YS4KKyAgKiBUaGlzIHZhbHVlIG1heSBzb21ldGltZXMgYmUgbGFyZ2VyIHRoYW4gYHdhbGxfdGlt
ZWAuIFRoYXQgaXMgYmVjYXVzZSB3ZSBhcmUgc3VtbWluZyB1cCB0aGUgdGltZQorb24gYWxsIENQ
VSB0aHJlYWRzIGZvciB0aGUgdGVzdC4KKyogYHdhbGxfdGltZWA6IFdhbGwgdGltZSB0YWtlbiB0
byBydW4gYSBzaW5nbGUgaXRlcmF0aW9uLCBjYWxjdWxhdGVkIGJ5IGRpdmlkaW5nIHRoZSB0b3Rh
bCB3YWxsCitjbG9jayB0aW1lIGJ5IHRoZSBudW1iZXIgb2YgdGVzdCBpdGVyYXRpb25zLgorICAq
IEZvciB0cmFjZSB0ZXN0cywgZWFjaCByZW5kZXJlZCBmcmFtZSBpcyBhbiBpdGVyYXRpb24uCisq
IGBncHVfdGltZWA6IEVzdGltYXRlZCBHUFUgZWxhcHNlZCB0aW1lIHBlciB0ZXN0IGl0ZXJhdGlv
bi4gV2UgY29tcHV0ZSB0aGUgZXN0aW1hdGUgdXNpbmcgR0xFUworW3RpbWVzdGFtcCBxdWVyaWVz
XShodHRwczovL3d3dy5raHJvbm9zLm9yZy9yZWdpc3RyeS9PcGVuR0wvZXh0ZW5zaW9ucy9FWFQv
RVhUX2Rpc2pvaW50X3RpbWVyX3F1ZXJ5LnR4dCkKK2F0IHRoZSBiZWdpbm5pbmcgYW5kIGVuZGlu
ZyBvZiBlYWNoIHRlc3QgbG9vcC4KKyAgKiBGb3IgdHJhY2UgdGVzdHMsIHRoaXMgbWV0cmljIGlz
IG9ubHkgZW5hYmxlZCBpbiBgdnN5bmNgIG1vZGUuClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmls
ZQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL3BlcmZfdGVz
dHMvVHJhY2VQZXJmVGVzdC5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMv
cGVyZl90ZXN0cy9UcmFjZVBlcmZUZXN0LmNwcAppbmRleCAwMDEwZDczZDVmOWFjODQwMzBiZDc0
NDRkNzE0ZTVjYzllMzg5ZGJkLi5iNzY0MjJjNzg1OWYyOGQxOTEzNDc5MWYwMDEwZDhiMzIwMjI0
MGNmIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvcGVyZl90
ZXN0cy9UcmFjZVBlcmZUZXN0LmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
dGVzdHMvcGVyZl90ZXN0cy9UcmFjZVBlcmZUZXN0LmNwcApAQCAtMTE5MSw2ICsxMTkxLDE4IEBA
IFRyYWNlUGVyZlRlc3Q6OlRyYWNlUGVyZlRlc3QoY29uc3QgVHJhY2VQZXJmUGFyYW1zICZwYXJh
bXMpCiAgICAgICAgIH0KICAgICB9CiAKKyAgICBpZiAodHJhY2VOYW1lSXMoInJlYWxfcmFjaW5n
MyIpKQorICAgIHsKKyAgICAgICAgYWRkRXh0ZW5zaW9uUHJlcmVxdWlzaXRlKCJHTF9FWFRfc2hh
ZGVyX2ZyYW1lYnVmZmVyX2ZldGNoIik7CisgICAgfQorCisgICAgaWYgKHRyYWNlTmFtZUlzKCJi
bGFkZV9hbmRfc291bF9yZXZvbHV0aW9uIikpCisgICAgeworICAgICAgICBhZGRFeHRlbnNpb25Q
cmVyZXF1aXNpdGUoIkdMX0VYVF90ZXh0dXJlX2J1ZmZlciIpOworICAgICAgICBhZGRFeHRlbnNp
b25QcmVyZXF1aXNpdGUoIkdMX0VYVF9zaGFkZXJfZnJhbWVidWZmZXJfZmV0Y2giKTsKKyAgICAg
ICAgYWRkRXh0ZW5zaW9uUHJlcmVxdWlzaXRlKCJHTF9LSFJfdGV4dHVyZV9jb21wcmVzc2lvbl9h
c3RjX2xkciIpOworICAgIH0KKwogICAgIEFTU0VSVChtUGFyYW1zLnN1cmZhY2VUeXBlID09IFN1
cmZhY2VUeXBlOjpXaW5kb3cgfHwgZ0VuYWJsZUFsbFRyYWNlVGVzdHMpOwogICAgIEFTU0VSVCht
UGFyYW1zLmVnbFBhcmFtZXRlcnMuZGV2aWNlVHlwZSA9PSBFR0xfUExBVEZPUk1fQU5HTEVfREVW
SUNFX1RZUEVfSEFSRFdBUkVfQU5HTEUgfHwKICAgICAgICAgICAgZ0VuYWJsZUFsbFRyYWNlVGVz
dHMpOwpAQCAtMTQwNiw2ICsxNDE4LDggQEAgdm9pZCBUcmFjZVBlcmZUZXN0OjpkcmF3QmVuY2ht
YXJrKCkKICAgICBtVHJhY2VMaWJyYXJ5LT5yZXBsYXlGcmFtZShtQ3VycmVudEZyYW1lKTsKICAg
ICBzdG9wR3B1VGltZXIoKTsKIAorICAgIHVwZGF0ZVBlcmZDb3VudGVycygpOworCiAgICAgaWYg
KG1QYXJhbXMuc3VyZmFjZVR5cGUgPT0gU3VyZmFjZVR5cGU6Ok9mZnNjcmVlbikKICAgICB7CiAg
ICAgICAgIGlmIChnTWluaW1pemVHUFVXb3JrKQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL3Rlc3RzL3Jlc3RyaWN0ZWRfdHJhY2VzL3Jlc3RyaWN0ZWRfdHJhY2VfZ29s
ZF90ZXN0cy5weSBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9yZXN0cmljdGVk
X3RyYWNlcy9yZXN0cmljdGVkX3RyYWNlX2dvbGRfdGVzdHMucHkKaW5kZXggMmIwNWU4MWEzZTgy
YTFlNmJhZWQxNGYwMDhiMWNhMWE0YjdmMTQ4ZS4uZDM4NjVjYjQ4ZWMxOTZlMmY1MzM0NWEzOTBm
MTMwMDI2YjMxOGNjMCAxMDA3NTUKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rl
c3RzL3Jlc3RyaWN0ZWRfdHJhY2VzL3Jlc3RyaWN0ZWRfdHJhY2VfZ29sZF90ZXN0cy5weQorKysg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvcmVzdHJpY3RlZF90cmFjZXMvcmVz
dHJpY3RlZF90cmFjZV9nb2xkX3Rlc3RzLnB5CkBAIC0xNjQsNTUgKzE2NCwxNyBAQCBkZWYgZ2V0
X3NraWFfZ29sZF9rZXlzKGFyZ3MsIGVudik6CiAgICAgICAgIGxvZ2dpbmcuZXhjZXB0aW9uKCdn
ZXRfc2tpYV9nb2xkX2tleXMgbWF5IG9ubHkgYmUgY2FsbGVkIG9uY2UnKQogICAgIGdldF9za2lh
X2dvbGRfa2V5cy5jYWxsZWQgPSBUcnVlCiAKLSAgICBjbGFzcyBGaWx0ZXI6Ci0KLSAgICAgICAg
ZGVmIF9faW5pdF9fKHNlbGYpOgotICAgICAgICAgICAgc2VsZi5hY2NlcHRpbmdfbGluZXMgPSBU
cnVlCi0gICAgICAgICAgICBzZWxmLmRvbmVfYWNjZXB0aW5nX2xpbmVzID0gRmFsc2UKLSAgICAg
ICAgICAgIHNlbGYuYW5kcm9pZF9wcmVmaXggPSByZS5jb21waWxlKEFORFJPSURfTE9HR0lOR19Q
UkVGSVgpCi0gICAgICAgICAgICBzZWxmLmxpbmVzID0gW10KLSAgICAgICAgICAgIHNlbGYuaXNf
YW5kcm9pZCA9IEZhbHNlCi0KLSAgICAgICAgZGVmIGFwcGVuZChzZWxmLCBsaW5lKToKLSAgICAg
ICAgICAgIGlmIHNlbGYuZG9uZV9hY2NlcHRpbmdfbGluZXM6Ci0gICAgICAgICAgICAgICAgcmV0
dXJuCi0gICAgICAgICAgICBpZiAnQWRkaXRpb25hbCB0ZXN0IGVudmlyb25tZW50JyBpbiBsaW5l
IG9yICdhbmRyb2lkL3Rlc3RfcnVubmVyLnB5JyBpbiBsaW5lOgotICAgICAgICAgICAgICAgIHNl
bGYuYWNjZXB0aW5nX2xpbmVzID0gRmFsc2UKLSAgICAgICAgICAgICAgICBzZWxmLmlzX2FuZHJv
aWQgPSBUcnVlCi0gICAgICAgICAgICBpZiBBTkRST0lEX0JFR0lOX1NZU1RFTV9JTkZPIGluIGxp
bmU6Ci0gICAgICAgICAgICAgICAgc2VsZi5hY2NlcHRpbmdfbGluZXMgPSBUcnVlCi0gICAgICAg
ICAgICAgICAgcmV0dXJuCi0gICAgICAgICAgICBpZiBub3Qgc2VsZi5hY2NlcHRpbmdfbGluZXM6
Ci0gICAgICAgICAgICAgICAgcmV0dXJuCi0KLSAgICAgICAgICAgIGlmIHNlbGYuaXNfYW5kcm9p
ZDoKLSAgICAgICAgICAgICAgICBsaW5lID0gc2VsZi5hbmRyb2lkX3ByZWZpeC5zdWIoJycsIGxp
bmUpCi0KLSAgICAgICAgICAgIGlmIGxpbmVbMF0gPT0gJ30nOgotICAgICAgICAgICAgICAgIHNl
bGYuZG9uZV9hY2NlcHRpbmdfbGluZXMgPSBUcnVlCi0KLSAgICAgICAgICAgIHNlbGYubGluZXMu
YXBwZW5kKGxpbmUpCi0KLSAgICAgICAgZGVmIGdldChzZWxmKToKLSAgICAgICAgICAgIHJldHVy
biBzZWxmLmxpbmVzCi0KLSAgICB3aXRoIGNvbW1vbi50ZW1wb3JhcnlfZmlsZSgpIGFzIHRlbXBm
aWxlX3BhdGg6CisgICAgd2l0aCB0ZW1wb3JhcnlfZGlyKCkgYXMgdGVtcF9kaXI6CiAgICAgICAg
IGJpbmFyeSA9IGdldF9iaW5hcnlfbmFtZSgnYW5nbGVfc3lzdGVtX2luZm9fdGVzdCcpCi0gICAg
ICAgIHN5c2luZm9fYXJncyA9IFtiaW5hcnksICctLXZ1bGthbicsICctdiddCisgICAgICAgIHN5
c2luZm9fYXJncyA9IFtiaW5hcnksICctLXZ1bGthbicsICctdicsICctLXJlbmRlci10ZXN0LW91
dHB1dC1kaXI9JyArIHRlbXBfZGlyXQogICAgICAgICBpZiBhcmdzLnN3aWZ0c2hhZGVyOgogICAg
ICAgICAgICAgc3lzaW5mb19hcmdzLmFwcGVuZCgnLS1zd2lmdHNoYWRlcicpCisgICAgICAgIHRl
bXBmaWxlX3BhdGggPSBvcy5wYXRoLmpvaW4odGVtcF9kaXIsICdzdGRvdXQnKQogICAgICAgICBp
ZiBydW5fd3JhcHBlcihhcmdzLCBzeXNpbmZvX2FyZ3MsIGVudiwgdGVtcGZpbGVfcGF0aCk6CiAg
ICAgICAgICAgICByYWlzZSBFeGNlcHRpb24oJ0Vycm9yIGdldHRpbmcgc3lzdGVtIGluZm8uJykK
IAotICAgICAgICBmaWx0ZXIgPSBGaWx0ZXIoKQotCi0gICAgICAgIHdpdGggb3Blbih0ZW1wZmls
ZV9wYXRoKSBhcyBmOgotICAgICAgICAgICAgZm9yIGxpbmUgaW4gZjoKLSAgICAgICAgICAgICAg
ICBmaWx0ZXIuYXBwZW5kKGxpbmUpCi0KLSAgICAgICAgc3RyID0gJycuam9pbihmaWx0ZXIuZ2V0
KCkpCi0gICAgICAgIGxvZ2dpbmcuaW5mbyhzdHIpCi0gICAgICAgIGpzb25fZGF0YSA9IGpzb24u
bG9hZHMoc3RyKQorICAgICAgICB3aXRoIG9wZW4ob3MucGF0aC5qb2luKHRlbXBfZGlyLCAnYW5n
bGVfc3lzdGVtX2luZm8uanNvbicpKSBhcyBmOgorICAgICAgICAgICAganNvbl9kYXRhID0ganNv
bi5sb2FkKGYpCiAKICAgICBpZiBsZW4oanNvbl9kYXRhLmdldCgnZ3B1cycsIFtdKSkgPT0gMCBv
ciBub3QgJ2FjdGl2ZUdQVUluZGV4JyBpbiBqc29uX2RhdGE6CiAgICAgICAgIHJhaXNlIEV4Y2Vw
dGlvbignRXJyb3IgZ2V0dGluZyBzeXN0ZW0gaW5mby4nKQpAQCAtMzY5LDcgKzMzMSw3IEBAIGRl
ZiBfcnVuX3Rlc3RzKGFyZ3MsIHRlc3RzLCBleHRyYV9mbGFncywgZW52LCBzY3JlZW5zaG90X2Rp
ciwgcmVzdWx0cywgdGVzdF9yZXN1CiAKICAgICAgICAgICAgICAgICAgICAgZ3Rlc3RfZmlsdGVy
ID0gX2dldF9ndGVzdF9maWx0ZXJfZm9yX2JhdGNoKGFyZ3MsIGJhdGNoKQogICAgICAgICAgICAg
ICAgICAgICBjbWQgPSBbCi0gICAgICAgICAgICAgICAgICAgICAgICBhcmdzLnRlc3Rfc3VpdGUs
CisgICAgICAgICAgICAgICAgICAgICAgICBnZXRfYmluYXJ5X25hbWUoYXJncy50ZXN0X3N1aXRl
KSwKICAgICAgICAgICAgICAgICAgICAgICAgIGd0ZXN0X2ZpbHRlciwKICAgICAgICAgICAgICAg
ICAgICAgICAgICctLXJlbmRlci10ZXN0LW91dHB1dC1kaXI9JXMnICUgc2NyZWVuc2hvdF9kaXIs
CiAgICAgICAgICAgICAgICAgICAgICAgICAnLS1vbmUtZnJhbWUtb25seScsCkBAIC00NzksMTEg
KzQ0MSw2IEBAIGRlZiBtYWluKCk6CiAgICAgcmMgPSAwCiAKICAgICB0cnk6Ci0gICAgICAgIGlm
IElzV2luZG93cygpOgotICAgICAgICAgICAgYXJncy50ZXN0X3N1aXRlID0gJy5cXCVzLmV4ZScg
JSBhcmdzLnRlc3Rfc3VpdGUKLSAgICAgICAgZWxzZToKLSAgICAgICAgICAgIGFyZ3MudGVzdF9z
dWl0ZSA9ICcuLyVzJyAlIGFyZ3MudGVzdF9zdWl0ZQotCiAgICAgICAgICMgcmVhZCB0ZXN0IHNl
dAogICAgICAgICBqc29uX25hbWUgPSBvcy5wYXRoLmpvaW4oQU5HTEVfU1JDX0RJUiwgJ3NyYycs
ICd0ZXN0cycsICdyZXN0cmljdGVkX3RyYWNlcycsCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAncmVzdHJpY3RlZF90cmFjZXMuanNvbicpCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvcmVzdHJpY3RlZF90cmFjZXMvcmVzdHJpY3RlZF90cmFj
ZXMuanNvbiBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9yZXN0cmljdGVkX3Ry
YWNlcy9yZXN0cmljdGVkX3RyYWNlcy5qc29uCmluZGV4IGVjYzMwOWVhZGIzOWY3NTM2YzA0OTk0
YWY2OWFkNTA2ODRkMDI4YmYuLjUxMDIwZmYzZDY3MTkzYjgyOWRlNDgyNDdhNzg1NmIzOTQ3MjM0
MzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9yZXN0cmlj
dGVkX3RyYWNlcy9yZXN0cmljdGVkX3RyYWNlcy5qc29uCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3NyYy90ZXN0cy9yZXN0cmljdGVkX3RyYWNlcy9yZXN0cmljdGVkX3RyYWNlcy5qc29u
CkBAIC0xOSw2ICsxOSw3IEBACiAgICAgImF6dGVjX3J1aW5zIDUiLAogICAgICJiYWRsYW5kIDUi
LAogICAgICJiZWFjaF9idWdneV9yYWNpbmcgNSIsCisgICAgImJsYWRlX2FuZF9zb3VsX3Jldm9s
dXRpb24gMSIsCiAgICAgImJsb2NrbWFuX2dvIDUiLAogICAgICJicmF3bF9zdGFycyA1IiwKICAg
ICAiYnJpY2tzX2JyZWFrZXJfcXVlc3QgNSIsCkBAIC0yOCw2ICsyOSw3IEBACiAgICAgImNhbmR5
X2NydXNoXzUwMCA1IiwKICAgICAiY2FuZHlfY3J1c2hfc29kYV9zYWdhIDUiLAogICAgICJjYXJf
cGFya2luZ19tdWx0aXBsYXllciA1IiwKKyAgICAiY2FzdGxldmFuaWFfc290biAxIiwKICAgICAi
Y2xhc2hfb2ZfY2xhbnMgNSIsCiAgICAgImNsYXNoX3JveWFsZSA1IiwKICAgICAiY29kX21vYmls
ZSA1IiwKQEAgLTUxLDYgKzUzLDkgQEAKICAgICAiZmF0ZV9ncmFuZF9vcmRlciA1IiwKICAgICAi
ZmlmYV9tb2JpbGUgNSIsCiAgICAgImZpbmFsX2ZhbnRhc3kgNSIsCisgICAgImZpbmFsX2ZhbnRh
c3lfYnJhdmVfZXh2aXVzIDEiLAorICAgICJmaXJlX2VtYmxlbV9oZXJvZXMgMSIsCisgICAgImZp
dmVfbmlnaHRzX2F0X2ZyZWRkeXMgMSIsCiAgICAgImZyZWVfZmlyZSA1IiwKICAgICAiZ2FyZGVu
c2NhcGVzIDUiLAogICAgICJnZW5zaGluX2ltcGFjdCA1IiwKQEAgLTEwMCw2ICsxMDUsNyBAQAog
ICAgICJyZWFsX2NvbW1hbmRvX3NlY3JldF9taXNzaW9uIDUiLAogICAgICJyZWFsX2NyaWNrZXRf
MjAgNSIsCiAgICAgInJlYWxfZ2FuZ3N0ZXJfY3JpbWUgNSIsCisgICAgInJlYWxfcmFjaW5nMyAx
IiwKICAgICAicmVzcGF3bmFibGVzIDEiLAogICAgICJyaXNlX29mX2tpbmdkb21zIDUiLAogICAg
ICJyb21hbmNpbmdfc2FnYSA1IiwKQEAgLTExMSw2ICsxMTcsNyBAQAogICAgICJzbGluZ3Nob3Rf
dGVzdDEgNSIsCiAgICAgInNsaW5nc2hvdF90ZXN0MiA1IiwKICAgICAic25pcGVyXzNkIDUiLAor
ICAgICJzb2xhcl9zbWFzaCAyIiwKICAgICAic29uaWNfdGhlX2hlZGdlaG9nIDUiLAogICAgICJz
dGFuZG9mZl8yIDUiLAogICAgICJzdGF0ZV9vZl9zdXJ2aXZhbCAxIiwKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9yZXN0cmljdGVkX3RyYWNlcy90cmFjZV9l
Z2xfbG9hZGVyX2F1dG9nZW4uY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3Rz
L3Jlc3RyaWN0ZWRfdHJhY2VzL3RyYWNlX2VnbF9sb2FkZXJfYXV0b2dlbi5jcHAKaW5kZXggZWUy
ZmUwODI2NjMxNDJmNjU0NmVjYzVjYmJmNjQ2ZjQ4MjdjY2E1Yi4uODQ2NzBkMGNhMzE1OTMyZDEw
MjRhMjMwM2E0ZWFjYjIwNjNmODU2OCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvc3JjL3Rlc3RzL3Jlc3RyaWN0ZWRfdHJhY2VzL3RyYWNlX2VnbF9sb2FkZXJfYXV0b2dlbi5j
cHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL3Jlc3RyaWN0ZWRfdHJh
Y2VzL3RyYWNlX2VnbF9sb2FkZXJfYXV0b2dlbi5jcHAKQEAgLTcyLDYgKzcyLDcgQEAgQU5HTEVf
VFJBQ0VfTE9BREVSX0VYUE9SVCBQRk5FR0xDUkVBVEVERVZJQ0VBTkdMRVBST0MgdF9lZ2xDcmVh
dGVEZXZpY2VBTkdMRTsKIEFOR0xFX1RSQUNFX0xPQURFUl9FWFBPUlQgUEZORUdMUkVMRUFTRURF
VklDRUFOR0xFUFJPQyB0X2VnbFJlbGVhc2VEZXZpY2VBTkdMRTsKIEFOR0xFX1RSQUNFX0xPQURF
Ul9FWFBPUlQgUEZORUdMUVVFUllESVNQTEFZQVRUUklCQU5HTEVQUk9DIHRfZWdsUXVlcnlEaXNw
bGF5QXR0cmliQU5HTEU7CiBBTkdMRV9UUkFDRV9MT0FERVJfRVhQT1JUIFBGTkVHTFFVRVJZU1RS
SU5HSUFOR0xFUFJPQyB0X2VnbFF1ZXJ5U3RyaW5naUFOR0xFOworQU5HTEVfVFJBQ0VfTE9BREVS
X0VYUE9SVCBQRk5FR0xGT1JDRUdQVVNXSVRDSEFOR0xFUFJPQyB0X2VnbEZvcmNlR1BVU3dpdGNo
QU5HTEU7CiBBTkdMRV9UUkFDRV9MT0FERVJfRVhQT1JUIFBGTkVHTEhBTkRMRUdQVVNXSVRDSEFO
R0xFUFJPQyB0X2VnbEhhbmRsZUdQVVN3aXRjaEFOR0xFOwogQU5HTEVfVFJBQ0VfTE9BREVSX0VY
UE9SVCBQRk5FR0xSRUFDUVVJUkVISUdIUE9XRVJHUFVBTkdMRVBST0MgdF9lZ2xSZWFjcXVpcmVI
aWdoUG93ZXJHUFVBTkdMRTsKIEFOR0xFX1RSQUNFX0xPQURFUl9FWFBPUlQgUEZORUdMUkVMRUFT
RUhJR0hQT1dFUkdQVUFOR0xFUFJPQyB0X2VnbFJlbGVhc2VIaWdoUG93ZXJHUFVBTkdMRTsKQEAg
LTkyLDYgKzkzLDggQEAgQU5HTEVfVFJBQ0VfTE9BREVSX0VYUE9SVCBQRk5FR0xHRVRTWU5DVkFM
VUVTQ0hST01JVU1QUk9DIHRfZWdsR2V0U3luY1ZhbHVlc0NIUk8KIEFOR0xFX1RSQUNFX0xPQURF
Ul9FWFBPUlQgUEZORUdMUVVFUllERVZJQ0VBVFRSSUJFWFRQUk9DIHRfZWdsUXVlcnlEZXZpY2VB
dHRyaWJFWFQ7CiBBTkdMRV9UUkFDRV9MT0FERVJfRVhQT1JUIFBGTkVHTFFVRVJZREVWSUNFU1RS
SU5HRVhUUFJPQyB0X2VnbFF1ZXJ5RGV2aWNlU3RyaW5nRVhUOwogQU5HTEVfVFJBQ0VfTE9BREVS
X0VYUE9SVCBQRk5FR0xRVUVSWURJU1BMQVlBVFRSSUJFWFRQUk9DIHRfZWdsUXVlcnlEaXNwbGF5
QXR0cmliRVhUOworQU5HTEVfVFJBQ0VfTE9BREVSX0VYUE9SVCBQRk5FR0xRVUVSWURNQUJVRkZP
Uk1BVFNFWFRQUk9DIHRfZWdsUXVlcnlEbWFCdWZGb3JtYXRzRVhUOworQU5HTEVfVFJBQ0VfTE9B
REVSX0VYUE9SVCBQRk5FR0xRVUVSWURNQUJVRk1PRElGSUVSU0VYVFBST0MgdF9lZ2xRdWVyeURt
YUJ1Zk1vZGlmaWVyc0VYVDsKIEFOR0xFX1RSQUNFX0xPQURFUl9FWFBPUlQgUEZORUdMQ1JFQVRF
UExBVEZPUk1QSVhNQVBTVVJGQUNFRVhUUFJPQwogICAgIHRfZWdsQ3JlYXRlUGxhdGZvcm1QaXht
YXBTdXJmYWNlRVhUOwogQU5HTEVfVFJBQ0VfTE9BREVSX0VYUE9SVCBQRk5FR0xDUkVBVEVQTEFU
Rk9STVdJTkRPV1NVUkZBQ0VFWFRQUk9DCkBAIC0yMTcsNiArMjIwLDggQEAgdm9pZCBMb2FkRUdM
KExvYWRQcm9jIGxvYWRQcm9jKQogICAgICAgICByZWludGVycHJldF9jYXN0PFBGTkVHTFFVRVJZ
RElTUExBWUFUVFJJQkFOR0xFUFJPQz4obG9hZFByb2MoImVnbFF1ZXJ5RGlzcGxheUF0dHJpYkFO
R0xFIikpOwogICAgIHRfZWdsUXVlcnlTdHJpbmdpQU5HTEUgPQogICAgICAgICByZWludGVycHJl
dF9jYXN0PFBGTkVHTFFVRVJZU1RSSU5HSUFOR0xFUFJPQz4obG9hZFByb2MoImVnbFF1ZXJ5U3Ry
aW5naUFOR0xFIikpOworICAgIHRfZWdsRm9yY2VHUFVTd2l0Y2hBTkdMRSA9CisgICAgICAgIHJl
aW50ZXJwcmV0X2Nhc3Q8UEZORUdMRk9SQ0VHUFVTV0lUQ0hBTkdMRVBST0M+KGxvYWRQcm9jKCJl
Z2xGb3JjZUdQVVN3aXRjaEFOR0xFIikpOwogICAgIHRfZWdsSGFuZGxlR1BVU3dpdGNoQU5HTEUg
PQogICAgICAgICByZWludGVycHJldF9jYXN0PFBGTkVHTEhBTkRMRUdQVVNXSVRDSEFOR0xFUFJP
Qz4obG9hZFByb2MoImVnbEhhbmRsZUdQVVN3aXRjaEFOR0xFIikpOwogICAgIHRfZWdsUmVhY3F1
aXJlSGlnaFBvd2VyR1BVQU5HTEUgPSByZWludGVycHJldF9jYXN0PFBGTkVHTFJFQUNRVUlSRUhJ
R0hQT1dFUkdQVUFOR0xFUFJPQz4oCkBAIC0yNTUsNiArMjYwLDEwIEBAIHZvaWQgTG9hZEVHTChM
b2FkUHJvYyBsb2FkUHJvYykKICAgICAgICAgcmVpbnRlcnByZXRfY2FzdDxQRk5FR0xRVUVSWURF
VklDRVNUUklOR0VYVFBST0M+KGxvYWRQcm9jKCJlZ2xRdWVyeURldmljZVN0cmluZ0VYVCIpKTsK
ICAgICB0X2VnbFF1ZXJ5RGlzcGxheUF0dHJpYkVYVCA9CiAgICAgICAgIHJlaW50ZXJwcmV0X2Nh
c3Q8UEZORUdMUVVFUllESVNQTEFZQVRUUklCRVhUUFJPQz4obG9hZFByb2MoImVnbFF1ZXJ5RGlz
cGxheUF0dHJpYkVYVCIpKTsKKyAgICB0X2VnbFF1ZXJ5RG1hQnVmRm9ybWF0c0VYVCA9CisgICAg
ICAgIHJlaW50ZXJwcmV0X2Nhc3Q8UEZORUdMUVVFUllETUFCVUZGT1JNQVRTRVhUUFJPQz4obG9h
ZFByb2MoImVnbFF1ZXJ5RG1hQnVmRm9ybWF0c0VYVCIpKTsKKyAgICB0X2VnbFF1ZXJ5RG1hQnVm
TW9kaWZpZXJzRVhUID0KKyAgICAgICAgcmVpbnRlcnByZXRfY2FzdDxQRk5FR0xRVUVSWURNQUJV
Rk1PRElGSUVSU0VYVFBST0M+KGxvYWRQcm9jKCJlZ2xRdWVyeURtYUJ1Zk1vZGlmaWVyc0VYVCIp
KTsKICAgICB0X2VnbENyZWF0ZVBsYXRmb3JtUGl4bWFwU3VyZmFjZUVYVCA9CiAgICAgICAgIHJl
aW50ZXJwcmV0X2Nhc3Q8UEZORUdMQ1JFQVRFUExBVEZPUk1QSVhNQVBTVVJGQUNFRVhUUFJPQz4o
CiAgICAgICAgICAgICBsb2FkUHJvYygiZWdsQ3JlYXRlUGxhdGZvcm1QaXhtYXBTdXJmYWNlRVhU
IikpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL3Jlc3Ry
aWN0ZWRfdHJhY2VzL3RyYWNlX2VnbF9sb2FkZXJfYXV0b2dlbi5oIGIvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL3Rlc3RzL3Jlc3RyaWN0ZWRfdHJhY2VzL3RyYWNlX2VnbF9sb2FkZXJfYXV0
b2dlbi5oCmluZGV4IGVjNzRhOGIwZDM3ZmRhNTg4YTg1YWVjNzk1ZjNmZjNjZTAzYjM3MTYuLmMx
ZmEzYjUwMDE4Yjg2N2JiZDQ5NzIzOTc0ZTJhMThmZjFjODViZjIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9yZXN0cmljdGVkX3RyYWNlcy90cmFjZV9lZ2xf
bG9hZGVyX2F1dG9nZW4uaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMv
cmVzdHJpY3RlZF90cmFjZXMvdHJhY2VfZWdsX2xvYWRlcl9hdXRvZ2VuLmgKQEAgLTc0LDYgKzc0
LDcgQEAKICNkZWZpbmUgZWdsUmVsZWFzZURldmljZUFOR0xFIHRfZWdsUmVsZWFzZURldmljZUFO
R0xFCiAjZGVmaW5lIGVnbFF1ZXJ5RGlzcGxheUF0dHJpYkFOR0xFIHRfZWdsUXVlcnlEaXNwbGF5
QXR0cmliQU5HTEUKICNkZWZpbmUgZWdsUXVlcnlTdHJpbmdpQU5HTEUgdF9lZ2xRdWVyeVN0cmlu
Z2lBTkdMRQorI2RlZmluZSBlZ2xGb3JjZUdQVVN3aXRjaEFOR0xFIHRfZWdsRm9yY2VHUFVTd2l0
Y2hBTkdMRQogI2RlZmluZSBlZ2xIYW5kbGVHUFVTd2l0Y2hBTkdMRSB0X2VnbEhhbmRsZUdQVVN3
aXRjaEFOR0xFCiAjZGVmaW5lIGVnbFJlYWNxdWlyZUhpZ2hQb3dlckdQVUFOR0xFIHRfZWdsUmVh
Y3F1aXJlSGlnaFBvd2VyR1BVQU5HTEUKICNkZWZpbmUgZWdsUmVsZWFzZUhpZ2hQb3dlckdQVUFO
R0xFIHRfZWdsUmVsZWFzZUhpZ2hQb3dlckdQVUFOR0xFCkBAIC05Miw2ICs5Myw4IEBACiAjZGVm
aW5lIGVnbFF1ZXJ5RGV2aWNlQXR0cmliRVhUIHRfZWdsUXVlcnlEZXZpY2VBdHRyaWJFWFQKICNk
ZWZpbmUgZWdsUXVlcnlEZXZpY2VTdHJpbmdFWFQgdF9lZ2xRdWVyeURldmljZVN0cmluZ0VYVAog
I2RlZmluZSBlZ2xRdWVyeURpc3BsYXlBdHRyaWJFWFQgdF9lZ2xRdWVyeURpc3BsYXlBdHRyaWJF
WFQKKyNkZWZpbmUgZWdsUXVlcnlEbWFCdWZGb3JtYXRzRVhUIHRfZWdsUXVlcnlEbWFCdWZGb3Jt
YXRzRVhUCisjZGVmaW5lIGVnbFF1ZXJ5RG1hQnVmTW9kaWZpZXJzRVhUIHRfZWdsUXVlcnlEbWFC
dWZNb2RpZmllcnNFWFQKICNkZWZpbmUgZWdsQ3JlYXRlUGxhdGZvcm1QaXhtYXBTdXJmYWNlRVhU
IHRfZWdsQ3JlYXRlUGxhdGZvcm1QaXhtYXBTdXJmYWNlRVhUCiAjZGVmaW5lIGVnbENyZWF0ZVBs
YXRmb3JtV2luZG93U3VyZmFjZUVYVCB0X2VnbENyZWF0ZVBsYXRmb3JtV2luZG93U3VyZmFjZUVY
VAogI2RlZmluZSBlZ2xHZXRQbGF0Zm9ybURpc3BsYXlFWFQgdF9lZ2xHZXRQbGF0Zm9ybURpc3Bs
YXlFWFQKQEAgLTE4Nyw2ICsxOTAsNyBAQCBBTkdMRV9UUkFDRV9MT0FERVJfRVhQT1JUIGV4dGVy
biBQRk5FR0xDUkVBVEVERVZJQ0VBTkdMRVBST0MgdF9lZ2xDcmVhdGVEZXZpY2VBTgogQU5HTEVf
VFJBQ0VfTE9BREVSX0VYUE9SVCBleHRlcm4gUEZORUdMUkVMRUFTRURFVklDRUFOR0xFUFJPQyB0
X2VnbFJlbGVhc2VEZXZpY2VBTkdMRTsKIEFOR0xFX1RSQUNFX0xPQURFUl9FWFBPUlQgZXh0ZXJu
IFBGTkVHTFFVRVJZRElTUExBWUFUVFJJQkFOR0xFUFJPQyB0X2VnbFF1ZXJ5RGlzcGxheUF0dHJp
YkFOR0xFOwogQU5HTEVfVFJBQ0VfTE9BREVSX0VYUE9SVCBleHRlcm4gUEZORUdMUVVFUllTVFJJ
TkdJQU5HTEVQUk9DIHRfZWdsUXVlcnlTdHJpbmdpQU5HTEU7CitBTkdMRV9UUkFDRV9MT0FERVJf
RVhQT1JUIGV4dGVybiBQRk5FR0xGT1JDRUdQVVNXSVRDSEFOR0xFUFJPQyB0X2VnbEZvcmNlR1BV
U3dpdGNoQU5HTEU7CiBBTkdMRV9UUkFDRV9MT0FERVJfRVhQT1JUIGV4dGVybiBQRk5FR0xIQU5E
TEVHUFVTV0lUQ0hBTkdMRVBST0MgdF9lZ2xIYW5kbGVHUFVTd2l0Y2hBTkdMRTsKIEFOR0xFX1RS
QUNFX0xPQURFUl9FWFBPUlQgZXh0ZXJuIFBGTkVHTFJFQUNRVUlSRUhJR0hQT1dFUkdQVUFOR0xF
UFJPQwogICAgIHRfZWdsUmVhY3F1aXJlSGlnaFBvd2VyR1BVQU5HTEU7CkBAIC0yMDksNiArMjEz
LDggQEAgQU5HTEVfVFJBQ0VfTE9BREVSX0VYUE9SVCBleHRlcm4gUEZORUdMR0VUU1lOQ1ZBTFVF
U0NIUk9NSVVNUFJPQyB0X2VnbEdldFN5bmNWYWwKIEFOR0xFX1RSQUNFX0xPQURFUl9FWFBPUlQg
ZXh0ZXJuIFBGTkVHTFFVRVJZREVWSUNFQVRUUklCRVhUUFJPQyB0X2VnbFF1ZXJ5RGV2aWNlQXR0
cmliRVhUOwogQU5HTEVfVFJBQ0VfTE9BREVSX0VYUE9SVCBleHRlcm4gUEZORUdMUVVFUllERVZJ
Q0VTVFJJTkdFWFRQUk9DIHRfZWdsUXVlcnlEZXZpY2VTdHJpbmdFWFQ7CiBBTkdMRV9UUkFDRV9M
T0FERVJfRVhQT1JUIGV4dGVybiBQRk5FR0xRVUVSWURJU1BMQVlBVFRSSUJFWFRQUk9DIHRfZWds
UXVlcnlEaXNwbGF5QXR0cmliRVhUOworQU5HTEVfVFJBQ0VfTE9BREVSX0VYUE9SVCBleHRlcm4g
UEZORUdMUVVFUllETUFCVUZGT1JNQVRTRVhUUFJPQyB0X2VnbFF1ZXJ5RG1hQnVmRm9ybWF0c0VY
VDsKK0FOR0xFX1RSQUNFX0xPQURFUl9FWFBPUlQgZXh0ZXJuIFBGTkVHTFFVRVJZRE1BQlVGTU9E
SUZJRVJTRVhUUFJPQyB0X2VnbFF1ZXJ5RG1hQnVmTW9kaWZpZXJzRVhUOwogQU5HTEVfVFJBQ0Vf
TE9BREVSX0VYUE9SVCBleHRlcm4gUEZORUdMQ1JFQVRFUExBVEZPUk1QSVhNQVBTVVJGQUNFRVhU
UFJPQwogICAgIHRfZWdsQ3JlYXRlUGxhdGZvcm1QaXhtYXBTdXJmYWNlRVhUOwogQU5HTEVfVFJB
Q0VfTE9BREVSX0VYUE9SVCBleHRlcm4gUEZORUdMQ1JFQVRFUExBVEZPUk1XSU5ET1dTVVJGQUNF
RVhUUFJPQwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL3Jl
c3RyaWN0ZWRfdHJhY2VzL3RyYWNlX2dsZXNfbG9hZGVyX2F1dG9nZW4uY3BwIGIvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL3Jlc3RyaWN0ZWRfdHJhY2VzL3RyYWNlX2dsZXNfbG9h
ZGVyX2F1dG9nZW4uY3BwCmluZGV4IDlhMzM3NWNmMWE5MWRmNDA5ZjRkNTg3YmY5Y2YwZWUzYTBm
NmY1N2MuLmJmZWZiODJjMWRlMGY5YzA0ZGQwYzZhNDdiMDE1OTA0Y2FkYjg0ZTggMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy9yZXN0cmljdGVkX3RyYWNlcy90
cmFjZV9nbGVzX2xvYWRlcl9hdXRvZ2VuLmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zcmMvdGVzdHMvcmVzdHJpY3RlZF90cmFjZXMvdHJhY2VfZ2xlc19sb2FkZXJfYXV0b2dlbi5j
cHAKQEAgLTQ1Niw2ICs0NTYsMTggQEAgQU5HTEVfVFJBQ0VfTE9BREVSX0VYUE9SVCBQRk5HTEdF
VFNBTVBMRVJQQVJBTUVURVJJVUlWUFJPQyB0X2dsR2V0U2FtcGxlclBhcmFtZXQKIEFOR0xFX1RS
QUNFX0xPQURFUl9FWFBPUlQgUEZOR0xURVhCVUZGRVJQUk9DIHRfZ2xUZXhCdWZmZXI7CiBBTkdM
RV9UUkFDRV9MT0FERVJfRVhQT1JUIFBGTkdMVEVYQlVGRkVSUkFOR0VQUk9DIHRfZ2xUZXhCdWZm
ZXJSYW5nZTsKIEFOR0xFX1RSQUNFX0xPQURFUl9FWFBPUlQgUEZOR0xURVhTVE9SQUdFM0RNVUxU
SVNBTVBMRVBST0MgdF9nbFRleFN0b3JhZ2UzRE11bHRpc2FtcGxlOworQU5HTEVfVFJBQ0VfTE9B
REVSX0VYUE9SVCBQRk5HTEJFR0lOUEVSRk1PTklUT1JBTURQUk9DIHRfZ2xCZWdpblBlcmZNb25p
dG9yQU1EOworQU5HTEVfVFJBQ0VfTE9BREVSX0VYUE9SVCBQRk5HTERFTEVURVBFUkZNT05JVE9S
U0FNRFBST0MgdF9nbERlbGV0ZVBlcmZNb25pdG9yc0FNRDsKK0FOR0xFX1RSQUNFX0xPQURFUl9F
WFBPUlQgUEZOR0xFTkRQRVJGTU9OSVRPUkFNRFBST0MgdF9nbEVuZFBlcmZNb25pdG9yQU1EOwor
QU5HTEVfVFJBQ0VfTE9BREVSX0VYUE9SVCBQRk5HTEdFTlBFUkZNT05JVE9SU0FNRFBST0MgdF9n
bEdlblBlcmZNb25pdG9yc0FNRDsKK0FOR0xFX1RSQUNFX0xPQURFUl9FWFBPUlQgUEZOR0xHRVRQ
RVJGTU9OSVRPUkNPVU5URVJEQVRBQU1EUFJPQyB0X2dsR2V0UGVyZk1vbml0b3JDb3VudGVyRGF0
YUFNRDsKK0FOR0xFX1RSQUNFX0xPQURFUl9FWFBPUlQgUEZOR0xHRVRQRVJGTU9OSVRPUkNPVU5U
RVJJTkZPQU1EUFJPQyB0X2dsR2V0UGVyZk1vbml0b3JDb3VudGVySW5mb0FNRDsKK0FOR0xFX1RS
QUNFX0xPQURFUl9FWFBPUlQgUEZOR0xHRVRQRVJGTU9OSVRPUkNPVU5URVJTVFJJTkdBTURQUk9D
CisgICAgdF9nbEdldFBlcmZNb25pdG9yQ291bnRlclN0cmluZ0FNRDsKK0FOR0xFX1RSQUNFX0xP
QURFUl9FWFBPUlQgUEZOR0xHRVRQRVJGTU9OSVRPUkNPVU5URVJTQU1EUFJPQyB0X2dsR2V0UGVy
Zk1vbml0b3JDb3VudGVyc0FNRDsKK0FOR0xFX1RSQUNFX0xPQURFUl9FWFBPUlQgUEZOR0xHRVRQ
RVJGTU9OSVRPUkdST1VQU1RSSU5HQU1EUFJPQyB0X2dsR2V0UGVyZk1vbml0b3JHcm91cFN0cmlu
Z0FNRDsKK0FOR0xFX1RSQUNFX0xPQURFUl9FWFBPUlQgUEZOR0xHRVRQRVJGTU9OSVRPUkdST1VQ
U0FNRFBST0MgdF9nbEdldFBlcmZNb25pdG9yR3JvdXBzQU1EOworQU5HTEVfVFJBQ0VfTE9BREVS
X0VYUE9SVCBQRk5HTFNFTEVDVFBFUkZNT05JVE9SQ09VTlRFUlNBTURQUk9DIHRfZ2xTZWxlY3RQ
ZXJmTW9uaXRvckNvdW50ZXJzQU1EOwogQU5HTEVfVFJBQ0VfTE9BREVSX0VYUE9SVCBQRk5HTERS
QVdBUlJBWVNJTlNUQU5DRURCQVNFSU5TVEFOQ0VBTkdMRVBST0MKICAgICB0X2dsRHJhd0FycmF5
c0luc3RhbmNlZEJhc2VJbnN0YW5jZUFOR0xFOwogQU5HTEVfVFJBQ0VfTE9BREVSX0VYUE9SVCBQ
Rk5HTERSQVdFTEVNRU5UU0lOU1RBTkNFREJBU0VWRVJURVhCQVNFSU5TVEFOQ0VBTkdMRVBST0MK
QEAgLTE0OTEsNiArMTUwMywyOCBAQCB2b2lkIExvYWRHTEVTKExvYWRQcm9jIGxvYWRQcm9jKQog
ICAgIHRfZ2xUZXhCdWZmZXJSYW5nZSA9IHJlaW50ZXJwcmV0X2Nhc3Q8UEZOR0xURVhCVUZGRVJS
QU5HRVBST0M+KGxvYWRQcm9jKCJnbFRleEJ1ZmZlclJhbmdlIikpOwogICAgIHRfZ2xUZXhTdG9y
YWdlM0RNdWx0aXNhbXBsZSA9CiAgICAgICAgIHJlaW50ZXJwcmV0X2Nhc3Q8UEZOR0xURVhTVE9S
QUdFM0RNVUxUSVNBTVBMRVBST0M+KGxvYWRQcm9jKCJnbFRleFN0b3JhZ2UzRE11bHRpc2FtcGxl
IikpOworICAgIHRfZ2xCZWdpblBlcmZNb25pdG9yQU1EID0KKyAgICAgICAgcmVpbnRlcnByZXRf
Y2FzdDxQRk5HTEJFR0lOUEVSRk1PTklUT1JBTURQUk9DPihsb2FkUHJvYygiZ2xCZWdpblBlcmZN
b25pdG9yQU1EIikpOworICAgIHRfZ2xEZWxldGVQZXJmTW9uaXRvcnNBTUQgPQorICAgICAgICBy
ZWludGVycHJldF9jYXN0PFBGTkdMREVMRVRFUEVSRk1PTklUT1JTQU1EUFJPQz4obG9hZFByb2Mo
ImdsRGVsZXRlUGVyZk1vbml0b3JzQU1EIikpOworICAgIHRfZ2xFbmRQZXJmTW9uaXRvckFNRCA9
CisgICAgICAgIHJlaW50ZXJwcmV0X2Nhc3Q8UEZOR0xFTkRQRVJGTU9OSVRPUkFNRFBST0M+KGxv
YWRQcm9jKCJnbEVuZFBlcmZNb25pdG9yQU1EIikpOworICAgIHRfZ2xHZW5QZXJmTW9uaXRvcnNB
TUQgPQorICAgICAgICByZWludGVycHJldF9jYXN0PFBGTkdMR0VOUEVSRk1PTklUT1JTQU1EUFJP
Qz4obG9hZFByb2MoImdsR2VuUGVyZk1vbml0b3JzQU1EIikpOworICAgIHRfZ2xHZXRQZXJmTW9u
aXRvckNvdW50ZXJEYXRhQU1EID0gcmVpbnRlcnByZXRfY2FzdDxQRk5HTEdFVFBFUkZNT05JVE9S
Q09VTlRFUkRBVEFBTURQUk9DPigKKyAgICAgICAgbG9hZFByb2MoImdsR2V0UGVyZk1vbml0b3JD
b3VudGVyRGF0YUFNRCIpKTsKKyAgICB0X2dsR2V0UGVyZk1vbml0b3JDb3VudGVySW5mb0FNRCA9
IHJlaW50ZXJwcmV0X2Nhc3Q8UEZOR0xHRVRQRVJGTU9OSVRPUkNPVU5URVJJTkZPQU1EUFJPQz4o
CisgICAgICAgIGxvYWRQcm9jKCJnbEdldFBlcmZNb25pdG9yQ291bnRlckluZm9BTUQiKSk7Cisg
ICAgdF9nbEdldFBlcmZNb25pdG9yQ291bnRlclN0cmluZ0FNRCA9IHJlaW50ZXJwcmV0X2Nhc3Q8
UEZOR0xHRVRQRVJGTU9OSVRPUkNPVU5URVJTVFJJTkdBTURQUk9DPigKKyAgICAgICAgbG9hZFBy
b2MoImdsR2V0UGVyZk1vbml0b3JDb3VudGVyU3RyaW5nQU1EIikpOworICAgIHRfZ2xHZXRQZXJm
TW9uaXRvckNvdW50ZXJzQU1EID0gcmVpbnRlcnByZXRfY2FzdDxQRk5HTEdFVFBFUkZNT05JVE9S
Q09VTlRFUlNBTURQUk9DPigKKyAgICAgICAgbG9hZFByb2MoImdsR2V0UGVyZk1vbml0b3JDb3Vu
dGVyc0FNRCIpKTsKKyAgICB0X2dsR2V0UGVyZk1vbml0b3JHcm91cFN0cmluZ0FNRCA9IHJlaW50
ZXJwcmV0X2Nhc3Q8UEZOR0xHRVRQRVJGTU9OSVRPUkdST1VQU1RSSU5HQU1EUFJPQz4oCisgICAg
ICAgIGxvYWRQcm9jKCJnbEdldFBlcmZNb25pdG9yR3JvdXBTdHJpbmdBTUQiKSk7CisgICAgdF9n
bEdldFBlcmZNb25pdG9yR3JvdXBzQU1EID0KKyAgICAgICAgcmVpbnRlcnByZXRfY2FzdDxQRk5H
TEdFVFBFUkZNT05JVE9SR1JPVVBTQU1EUFJPQz4obG9hZFByb2MoImdsR2V0UGVyZk1vbml0b3JH
cm91cHNBTUQiKSk7CisgICAgdF9nbFNlbGVjdFBlcmZNb25pdG9yQ291bnRlcnNBTUQgPSByZWlu
dGVycHJldF9jYXN0PFBGTkdMU0VMRUNUUEVSRk1PTklUT1JDT1VOVEVSU0FNRFBST0M+KAorICAg
ICAgICBsb2FkUHJvYygiZ2xTZWxlY3RQZXJmTW9uaXRvckNvdW50ZXJzQU1EIikpOwogICAgIHRf
Z2xEcmF3QXJyYXlzSW5zdGFuY2VkQmFzZUluc3RhbmNlQU5HTEUgPQogICAgICAgICByZWludGVy
cHJldF9jYXN0PFBGTkdMRFJBV0FSUkFZU0lOU1RBTkNFREJBU0VJTlNUQU5DRUFOR0xFUFJPQz4o
CiAgICAgICAgICAgICBsb2FkUHJvYygiZ2xEcmF3QXJyYXlzSW5zdGFuY2VkQmFzZUluc3RhbmNl
QU5HTEUiKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMv
cmVzdHJpY3RlZF90cmFjZXMvdHJhY2VfZ2xlc19sb2FkZXJfYXV0b2dlbi5oIGIvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL3Jlc3RyaWN0ZWRfdHJhY2VzL3RyYWNlX2dsZXNfbG9h
ZGVyX2F1dG9nZW4uaAppbmRleCBhMDY3YWEzNmM2YjU5NjllM2YzNjQ5YTMwMTFiMjg0MzA1NTdh
NTI1Li4wMmUwY2M2YzI4ZDU5NDhmYjU1MjU1ZmY3NzBiODJiMjMwZDNjOGJkIDEwMDY0NAotLS0g
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvcmVzdHJpY3RlZF90cmFjZXMvdHJh
Y2VfZ2xlc19sb2FkZXJfYXV0b2dlbi5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3Ny
Yy90ZXN0cy9yZXN0cmljdGVkX3RyYWNlcy90cmFjZV9nbGVzX2xvYWRlcl9hdXRvZ2VuLmgKQEAg
LTQ2MSw2ICs0NjEsMTcgQEAKICNkZWZpbmUgZ2xUZXhCdWZmZXIgdF9nbFRleEJ1ZmZlcgogI2Rl
ZmluZSBnbFRleEJ1ZmZlclJhbmdlIHRfZ2xUZXhCdWZmZXJSYW5nZQogI2RlZmluZSBnbFRleFN0
b3JhZ2UzRE11bHRpc2FtcGxlIHRfZ2xUZXhTdG9yYWdlM0RNdWx0aXNhbXBsZQorI2RlZmluZSBn
bEJlZ2luUGVyZk1vbml0b3JBTUQgdF9nbEJlZ2luUGVyZk1vbml0b3JBTUQKKyNkZWZpbmUgZ2xE
ZWxldGVQZXJmTW9uaXRvcnNBTUQgdF9nbERlbGV0ZVBlcmZNb25pdG9yc0FNRAorI2RlZmluZSBn
bEVuZFBlcmZNb25pdG9yQU1EIHRfZ2xFbmRQZXJmTW9uaXRvckFNRAorI2RlZmluZSBnbEdlblBl
cmZNb25pdG9yc0FNRCB0X2dsR2VuUGVyZk1vbml0b3JzQU1ECisjZGVmaW5lIGdsR2V0UGVyZk1v
bml0b3JDb3VudGVyRGF0YUFNRCB0X2dsR2V0UGVyZk1vbml0b3JDb3VudGVyRGF0YUFNRAorI2Rl
ZmluZSBnbEdldFBlcmZNb25pdG9yQ291bnRlckluZm9BTUQgdF9nbEdldFBlcmZNb25pdG9yQ291
bnRlckluZm9BTUQKKyNkZWZpbmUgZ2xHZXRQZXJmTW9uaXRvckNvdW50ZXJTdHJpbmdBTUQgdF9n
bEdldFBlcmZNb25pdG9yQ291bnRlclN0cmluZ0FNRAorI2RlZmluZSBnbEdldFBlcmZNb25pdG9y
Q291bnRlcnNBTUQgdF9nbEdldFBlcmZNb25pdG9yQ291bnRlcnNBTUQKKyNkZWZpbmUgZ2xHZXRQ
ZXJmTW9uaXRvckdyb3VwU3RyaW5nQU1EIHRfZ2xHZXRQZXJmTW9uaXRvckdyb3VwU3RyaW5nQU1E
CisjZGVmaW5lIGdsR2V0UGVyZk1vbml0b3JHcm91cHNBTUQgdF9nbEdldFBlcmZNb25pdG9yR3Jv
dXBzQU1ECisjZGVmaW5lIGdsU2VsZWN0UGVyZk1vbml0b3JDb3VudGVyc0FNRCB0X2dsU2VsZWN0
UGVyZk1vbml0b3JDb3VudGVyc0FNRAogI2RlZmluZSBnbERyYXdBcnJheXNJbnN0YW5jZWRCYXNl
SW5zdGFuY2VBTkdMRSB0X2dsRHJhd0FycmF5c0luc3RhbmNlZEJhc2VJbnN0YW5jZUFOR0xFCiAj
ZGVmaW5lIGdsRHJhd0VsZW1lbnRzSW5zdGFuY2VkQmFzZVZlcnRleEJhc2VJbnN0YW5jZUFOR0xF
IFwKICAgICB0X2dsRHJhd0VsZW1lbnRzSW5zdGFuY2VkQmFzZVZlcnRleEJhc2VJbnN0YW5jZUFO
R0xFCkBAIC0xMjYxLDYgKzEyNzIsMjIgQEAgQU5HTEVfVFJBQ0VfTE9BREVSX0VYUE9SVCBleHRl
cm4gUEZOR0xHRVRTQU1QTEVSUEFSQU1FVEVSSVVJVlBST0MgdF9nbEdldFNhbXBsZXIKIEFOR0xF
X1RSQUNFX0xPQURFUl9FWFBPUlQgZXh0ZXJuIFBGTkdMVEVYQlVGRkVSUFJPQyB0X2dsVGV4QnVm
ZmVyOwogQU5HTEVfVFJBQ0VfTE9BREVSX0VYUE9SVCBleHRlcm4gUEZOR0xURVhCVUZGRVJSQU5H
RVBST0MgdF9nbFRleEJ1ZmZlclJhbmdlOwogQU5HTEVfVFJBQ0VfTE9BREVSX0VYUE9SVCBleHRl
cm4gUEZOR0xURVhTVE9SQUdFM0RNVUxUSVNBTVBMRVBST0MgdF9nbFRleFN0b3JhZ2UzRE11bHRp
c2FtcGxlOworQU5HTEVfVFJBQ0VfTE9BREVSX0VYUE9SVCBleHRlcm4gUEZOR0xCRUdJTlBFUkZN
T05JVE9SQU1EUFJPQyB0X2dsQmVnaW5QZXJmTW9uaXRvckFNRDsKK0FOR0xFX1RSQUNFX0xPQURF
Ul9FWFBPUlQgZXh0ZXJuIFBGTkdMREVMRVRFUEVSRk1PTklUT1JTQU1EUFJPQyB0X2dsRGVsZXRl
UGVyZk1vbml0b3JzQU1EOworQU5HTEVfVFJBQ0VfTE9BREVSX0VYUE9SVCBleHRlcm4gUEZOR0xF
TkRQRVJGTU9OSVRPUkFNRFBST0MgdF9nbEVuZFBlcmZNb25pdG9yQU1EOworQU5HTEVfVFJBQ0Vf
TE9BREVSX0VYUE9SVCBleHRlcm4gUEZOR0xHRU5QRVJGTU9OSVRPUlNBTURQUk9DIHRfZ2xHZW5Q
ZXJmTW9uaXRvcnNBTUQ7CitBTkdMRV9UUkFDRV9MT0FERVJfRVhQT1JUIGV4dGVybiBQRk5HTEdF
VFBFUkZNT05JVE9SQ09VTlRFUkRBVEFBTURQUk9DCisgICAgdF9nbEdldFBlcmZNb25pdG9yQ291
bnRlckRhdGFBTUQ7CitBTkdMRV9UUkFDRV9MT0FERVJfRVhQT1JUIGV4dGVybiBQRk5HTEdFVFBF
UkZNT05JVE9SQ09VTlRFUklORk9BTURQUk9DCisgICAgdF9nbEdldFBlcmZNb25pdG9yQ291bnRl
ckluZm9BTUQ7CitBTkdMRV9UUkFDRV9MT0FERVJfRVhQT1JUIGV4dGVybiBQRk5HTEdFVFBFUkZN
T05JVE9SQ09VTlRFUlNUUklOR0FNRFBST0MKKyAgICB0X2dsR2V0UGVyZk1vbml0b3JDb3VudGVy
U3RyaW5nQU1EOworQU5HTEVfVFJBQ0VfTE9BREVSX0VYUE9SVCBleHRlcm4gUEZOR0xHRVRQRVJG
TU9OSVRPUkNPVU5URVJTQU1EUFJPQyB0X2dsR2V0UGVyZk1vbml0b3JDb3VudGVyc0FNRDsKK0FO
R0xFX1RSQUNFX0xPQURFUl9FWFBPUlQgZXh0ZXJuIFBGTkdMR0VUUEVSRk1PTklUT1JHUk9VUFNU
UklOR0FNRFBST0MKKyAgICB0X2dsR2V0UGVyZk1vbml0b3JHcm91cFN0cmluZ0FNRDsKK0FOR0xF
X1RSQUNFX0xPQURFUl9FWFBPUlQgZXh0ZXJuIFBGTkdMR0VUUEVSRk1PTklUT1JHUk9VUFNBTURQ
Uk9DIHRfZ2xHZXRQZXJmTW9uaXRvckdyb3Vwc0FNRDsKK0FOR0xFX1RSQUNFX0xPQURFUl9FWFBP
UlQgZXh0ZXJuIFBGTkdMU0VMRUNUUEVSRk1PTklUT1JDT1VOVEVSU0FNRFBST0MKKyAgICB0X2ds
U2VsZWN0UGVyZk1vbml0b3JDb3VudGVyc0FNRDsKIEFOR0xFX1RSQUNFX0xPQURFUl9FWFBPUlQg
ZXh0ZXJuIFBGTkdMRFJBV0FSUkFZU0lOU1RBTkNFREJBU0VJTlNUQU5DRUFOR0xFUFJPQwogICAg
IHRfZ2xEcmF3QXJyYXlzSW5zdGFuY2VkQmFzZUluc3RhbmNlQU5HTEU7CiBBTkdMRV9UUkFDRV9M
T0FERVJfRVhQT1JUIGV4dGVybiBQRk5HTERSQVdFTEVNRU5UU0lOU1RBTkNFREJBU0VWRVJURVhC
QVNFSU5TVEFOQ0VBTkdMRVBST0MKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy90ZXN0cy9ydW5fcGVyZl90ZXN0cy5weSBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3Ny
Yy90ZXN0cy9ydW5fcGVyZl90ZXN0cy5weQppbmRleCAxNTljYmVjYWZjZDczODAyY2JlNWE1Yzgz
Zjk4NDBhMjM5ZjgyMTkzLi42OTNlNGM4ODAwNzIyMWRkYzEyYmQ3MGFhZTY1OTU2ZTYxMzJmYzlm
IDEwMDc1NQotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGVzdHMvcnVuX3BlcmZf
dGVzdHMucHkKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL3J1bl9wZXJm
X3Rlc3RzLnB5CkBAIC03OCw3ICs3OCw3IEBAIGRlZiBfcG9wZW4oKmFyZ3MsICoqa3dhcmdzKToK
IGRlZiBydW5fY29tbWFuZF93aXRoX291dHB1dChhcmd2LCBzdGRvdXRmaWxlLCBlbnY9Tm9uZSwg
Y3dkPU5vbmUsIGxvZz1UcnVlKToKICAgICBhc3NlcnQgc3Rkb3V0ZmlsZQogICAgIHdpdGggaW8u
b3BlbihzdGRvdXRmaWxlLCAnd2InKSBhcyB3cml0ZXIsIFwKLSAgICAgICAgICBpby5vcGVuKHN0
ZG91dGZpbGUsICdyYicsIDEpIGFzIHJlYWRlcjoKKyAgICAgICAgICBpby5vcGVuKHN0ZG91dGZp
bGUsICdyYicpIGFzIHJlYWRlcjoKICAgICAgICAgcHJvY2VzcyA9IF9wb3Blbihhcmd2LCBlbnY9
ZW52LCBjd2Q9Y3dkLCBzdGRvdXQ9d3JpdGVyLCBzdGRlcnI9c3VicHJvY2Vzcy5TVERPVVQpCiAg
ICAgICAgIHRlc3RfZW52LmZvcndhcmRfc2lnbmFscyhbcHJvY2Vzc10pCiAgICAgICAgIHdoaWxl
IHByb2Nlc3MucG9sbCgpIGlzIE5vbmU6CkBAIC05OSw3ICs5OSw4IEBAIGRlZiBfcnVuX2FuZF9n
ZXRfb3V0cHV0KGFyZ3MsIGNtZCwgZW52KToKICAgICAgICAgaWYgYXJncy54dmZiOgogICAgICAg
ICAgICAgZXhpdF9jb2RlID0geHZmYi5ydW5fZXhlY3V0YWJsZShjbWQsIGVudiwgc3Rkb3V0Zmls
ZT10ZW1wZmlsZV9wYXRoKQogICAgICAgICBlbHNlOgotICAgICAgICAgICAgZXhpdF9jb2RlID0g
cnVuX2NvbW1hbmRfd2l0aF9vdXRwdXQoY21kLCBlbnY9ZW52LCBzdGRvdXRmaWxlPXRlbXBmaWxl
X3BhdGgsIGxvZz1UcnVlKQorICAgICAgICAgICAgZXhpdF9jb2RlID0gcnVuX2NvbW1hbmRfd2l0
aF9vdXRwdXQoCisgICAgICAgICAgICAgICAgY21kLCBlbnY9ZW52LCBzdGRvdXRmaWxlPXRlbXBm
aWxlX3BhdGgsIGxvZz1hcmdzLnNob3dfdGVzdF9zdGRvdXQpCiAgICAgICAgIHdpdGggb3Blbih0
ZW1wZmlsZV9wYXRoKSBhcyBmOgogICAgICAgICAgICAgZm9yIGxpbmUgaW4gZjoKICAgICAgICAg
ICAgICAgICBsaW5lcy5hcHBlbmQobGluZS5zdHJpcCgpKQpAQCAtMzAwLDYgKzMwMSwxMCBAQCBk
ZWYgbWFpbigpOgogICAgICAgICAlIERFRkFVTFRfQ0FMSUJSQVRJT05fVElNRSwKICAgICAgICAg
dHlwZT1pbnQsCiAgICAgICAgIGRlZmF1bHQ9REVGQVVMVF9DQUxJQlJBVElPTl9USU1FKQorICAg
IHBhcnNlci5hZGRfYXJndW1lbnQoCisgICAgICAgICctLXNob3ctdGVzdC1zdGRvdXQnLCBoZWxw
PSdQcmludHMgYWxsIHRlc3Qgc3Rkb3V0IGR1cmluZyBleGVjdXRpb24uJywgYWN0aW9uPSdzdG9y
ZV90cnVlJykKKyAgICBwYXJzZXIuYWRkX2FyZ3VtZW50KAorICAgICAgICAnLS1wZXJmLWNvdW50
ZXJzJywgaGVscD0nQ29sb24tc2VwYXJhdGVkIGxpc3Qgb2YgZXh0cmEgcGVyZiBjb3VudGVyIG1l
dHJpY3MuJykKIAogICAgIGFyZ3MsIGV4dHJhX2ZsYWdzID0gcGFyc2VyLnBhcnNlX2tub3duX2Fy
Z3MoKQogCkBAIC00MDQsMTAgKzQwOSwxNSBAQCBkZWYgbWFpbigpOgogICAgICAgICAgICAgICAg
ICctLXRyaWFscycsCiAgICAgICAgICAgICAgICAgc3RyKGFyZ3MudHJpYWxzX3Blcl9zYW1wbGUp
LAogICAgICAgICAgICAgXQorCiAgICAgICAgICAgICBpZiBhcmdzLnNtb2tlX3Rlc3RfbW9kZToK
ICAgICAgICAgICAgICAgICBjbWRfcnVuICs9IFsnLS1uby13YXJtdXAnXQogICAgICAgICAgICAg
ZWxzZToKICAgICAgICAgICAgICAgICBjbWRfcnVuICs9IFsnLS13YXJtdXAtbG9vcHMnLCBzdHIo
YXJncy53YXJtdXBfbG9vcHMpXQorCisgICAgICAgICAgICBpZiBhcmdzLnBlcmZfY291bnRlcnM6
CisgICAgICAgICAgICAgICAgY21kX3J1biArPSBbJy0tcGVyZi1jb3VudGVycycsIGFyZ3MucGVy
Zl9jb3VudGVyc10KKwogICAgICAgICAgICAgd2l0aCBjb21tb24udGVtcG9yYXJ5X2ZpbGUoKSBh
cyBoaXN0b2dyYW1fZmlsZV9wYXRoOgogICAgICAgICAgICAgICAgIGNtZF9ydW4gKz0gWyctLWlz
b2xhdGVkLXNjcmlwdC10ZXN0LXBlcmYtb3V0cHV0PSVzJyAlIGhpc3RvZ3JhbV9maWxlX3BhdGhd
CiAgICAgICAgICAgICAgICAgZXhpdF9jb2RlLCBvdXRwdXQgPSBfcnVuX2FuZF9nZXRfb3V0cHV0
KGFyZ3MsIGNtZF9ydW4sIGVudikKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy90ZXN0cy90ZXN0X3V0aWxzL1Z1bGthbkhlbHBlci5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvdGVzdHMvdGVzdF91dGlscy9WdWxrYW5IZWxwZXIuY3BwCmluZGV4IGM4N2Nl
ZDU3ZTgyOGQ1MmM1MGQ4Y2EwM2I4YjhmNDRkNjk2ZDc4ZTUuLmRiZDI1OTBhNDNlZjZlZTE4NmEw
MzU2Yzg0YzYxYWMzYTU1YWQ0NGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy90ZXN0cy90ZXN0X3V0aWxzL1Z1bGthbkhlbHBlci5jcHAKKysrIGIvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvc3JjL3Rlc3RzL3Rlc3RfdXRpbHMvVnVsa2FuSGVscGVyLmNwcApAQCAtMjI1
LDcgKzIyNSw3IEBAIHZvaWQgVnVsa2FuSGVscGVyOjppbml0aWFsaXplKGJvb2wgdXNlU3dpZnRz
aGFkZXIsIGJvb2wgZW5hYmxlVmFsaWRhdGlvbkxheWVycykKICAgICAgICAgLyogLmFwcGxpY2F0
aW9uVmVyc2lvbiA9ICovIDEsCiAgICAgICAgIC8qIC5wRW5naW5lTmFtZSA9ICovIG51bGxwdHIs
CiAgICAgICAgIC8qIC5lbmdpbmVWZXJzaW9uID0gKi8gMCwKLSAgICAgICAgLyogLmFwaVZlcnNp
b24gPSAqLyBWS19BUElfVkVSU0lPTl8xXzAsCisgICAgICAgIC8qIC5hcGlWZXJzaW9uID0gKi8g
VktfQVBJX1ZFUlNJT05fMV8xLAogICAgIH07CiAKICAgICB1aW50MzJfdCBlbmFibGVkSW5zdGFu
Y2VFeHRlbnNpb25Db3VudCA9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9z
cmMvdGVzdHMvdGVzdF91dGlscy9hbmdsZV90ZXN0X2NvbmZpZ3MuY3BwIGIvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvc3JjL3Rlc3RzL3Rlc3RfdXRpbHMvYW5nbGVfdGVzdF9jb25maWdzLmNwcApp
bmRleCAxMTQ0ZmYxMzg2Zjc0NjA0OTNiODhlNTFiNjViMTNkN2NiYjEzNTZjLi43ODYxNzA5OTBm
Nzg3MzZlMTVmNDIyMTJhZTYwYWE0NzU0Y2U1MDQ4IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9BTkdMRS9zcmMvdGVzdHMvdGVzdF91dGlscy9hbmdsZV90ZXN0X2NvbmZpZ3MuY3BwCisr
KyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy90ZXN0X3V0aWxzL2FuZ2xlX3Rl
c3RfY29uZmlncy5jcHAKQEAgLTMzMSw2ICszMzEsMTEgQEAgc3RkOjpvc3RyZWFtICZvcGVyYXRv
cjw8KHN0ZDo6b3N0cmVhbSAmc3RyZWFtLCBjb25zdCBQbGF0Zm9ybVBhcmFtZXRlcnMgJnBwKQog
ICAgICAgICBzdHJlYW0gPDwgIl9WdWxrYW5Gb3JjZVN1Ym1pdEltbXV0YWJsZVRleHR1cmVVcGRh
dGVzIjsKICAgICB9CiAKKyAgICBpZiAocHAuZWdsUGFyYW1ldGVycy5jcmVhdGVQaXBlbGluZUR1
cmluZ0xpbmsgPT0gRUdMX1RSVUUpCisgICAgeworICAgICAgICBzdHJlYW0gPDwgIl9DcmVhdGVQ
aXBlbGluZUR1cmluZ0xpbmsiOworICAgIH0KKwogICAgIHJldHVybiBzdHJlYW07CiB9CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy90ZXN0X3V0aWxzL2Fu
Z2xlX3Rlc3RfY29uZmlncy5oIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL3Rl
c3RfdXRpbHMvYW5nbGVfdGVzdF9jb25maWdzLmgKaW5kZXggN2VlZDY1ZGNhYTkyNTA1NTkwMGQy
YWU5Zjg2MDA4MmJlYmIxN2ZkOC4uY2RjNWQ3NmY4ZjRlMGRkZmFjYzViNWMwYTFiOWViYmM2MWRj
ZWI1NCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL3Rlc3Rf
dXRpbHMvYW5nbGVfdGVzdF9jb25maWdzLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUv
c3JjL3Rlc3RzL3Rlc3RfdXRpbHMvYW5nbGVfdGVzdF9jb25maWdzLmgKQEAgLTM0OSw2ICszNDks
MTMgQEAgaW5saW5lIFBsYXRmb3JtUGFyYW1ldGVycyBXaXRoRm9yY2VTdWJtaXRJbW11dGFibGVU
ZXh0dXJlVXBkYXRlcyhjb25zdCBQbGF0Zm9ybVAKICAgICAgICAgRUdMX1RSVUU7CiAgICAgcmV0
dXJuIHdpdGhGb3JjZVN1Ym1pdEltbXV0YWJsZVRleHR1cmVVcGRhdGVzOwogfQorCitpbmxpbmUg
UGxhdGZvcm1QYXJhbWV0ZXJzIFdpdGhDcmVhdGVWdWxrYW5QaXBlbGluZUR1cmluZ0xpbmsoY29u
c3QgUGxhdGZvcm1QYXJhbWV0ZXJzICZwYXJhbXMpCit7CisgICAgUGxhdGZvcm1QYXJhbWV0ZXJz
IHdpdGhDcmVhdGVWdWxrYW5QaXBlbGluZUR1cmluZ0xpbmsgICAgICAgICAgICAgICAgICAgICA9
IHBhcmFtczsKKyAgICB3aXRoQ3JlYXRlVnVsa2FuUGlwZWxpbmVEdXJpbmdMaW5rLmVnbFBhcmFt
ZXRlcnMuY3JlYXRlUGlwZWxpbmVEdXJpbmdMaW5rID0gRUdMX1RSVUU7CisgICAgcmV0dXJuIHdp
dGhDcmVhdGVWdWxrYW5QaXBlbGluZUR1cmluZ0xpbms7Cit9CiB9ICAvLyBuYW1lc3BhY2UgYW5n
bGUKIAogI2VuZGlmICAvLyBBTkdMRV9URVNUX0NPTkZJR1NfSF8KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy90ZXN0X3V0aWxzL3J1bm5lci9IaXN0b2dyYW1X
cml0ZXIuY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL3Rlc3RfdXRpbHMv
cnVubmVyL0hpc3RvZ3JhbVdyaXRlci5jcHAKaW5kZXggMTQwNzRiNGM0M2QxMTMxZGM0MWQ5OTMx
NmNiYzdkYTUzMzFjYWFjNS4uOWRjY2I5MGE1MTM4ZjZjNDQ2ZGI3ZGYzOGZlNDE3NzRkYzU4OTBj
ZCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL3Rlc3RfdXRp
bHMvcnVubmVyL0hpc3RvZ3JhbVdyaXRlci5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvc3JjL3Rlc3RzL3Rlc3RfdXRpbHMvcnVubmVyL0hpc3RvZ3JhbVdyaXRlci5jcHAKQEAgLTM0
LDExICszNCw2NyBAQCBuYW1lc3BhY2UgYW5nbGUKIHsKIG5hbWVzcGFjZQogewotc3RkOjpzdHJp
bmcgR2V0VW5pdEFuZERpcmVjdGlvbihwcm90bzo6VW5pdEFuZERpcmVjdGlvbiB1bml0KQorc3Rk
OjpzdHJpbmcgVW5pdEFuZERpcmVjdGlvblRvU3RyaW5nKHByb3RvOjpVbml0QW5kRGlyZWN0aW9u
IHVuaXQpCiB7Ci0gICAgQVNTRVJUKHVuaXQuaW1wcm92ZW1lbnRfZGlyZWN0aW9uKCkgPT0gcHJv
dG86OlNNQUxMRVJfSVNfQkVUVEVSKTsKLSAgICBBU1NFUlQodW5pdC51bml0KCkgPT0gcHJvdG86
Ok1TX0JFU1RfRklUX0ZPUk1BVCk7Ci0gICAgcmV0dXJuICJtc0Jlc3RGaXRGb3JtYXRfc21hbGxl
cklzQmV0dGVyIjsKKyAgICBzdGQ6OnN0cmluZ3N0cmVhbSBzdHJzdHI7CisKKyAgICBzd2l0Y2gg
KHVuaXQudW5pdCgpKQorICAgIHsKKyAgICAgICAgY2FzZSBwcm90bzo6TVNfQkVTVF9GSVRfRk9S
TUFUOgorICAgICAgICAgICAgc3Ryc3RyIDw8ICJtc0Jlc3RGaXRGb3JtYXQiOworICAgICAgICAg
ICAgYnJlYWs7CisgICAgICAgIGNhc2UgcHJvdG86OkNPVU5UOgorICAgICAgICAgICAgc3Ryc3Ry
IDw8ICJjb3VudCI7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSBwcm90bzo6U0la
RV9JTl9CWVRFUzoKKyAgICAgICAgICAgIHN0cnN0ciA8PCAic2l6ZUluQnl0ZXMiOworICAgICAg
ICAgICAgYnJlYWs7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICBVTlJFQUNIQUJMRSgp
OworICAgICAgICAgICAgc3Ryc3RyIDw8ICJlcnJvciI7CisgICAgICAgICAgICBicmVhazsKKyAg
ICB9CisKKyAgICBzd2l0Y2ggKHVuaXQuaW1wcm92ZW1lbnRfZGlyZWN0aW9uKCkpCisgICAgewor
ICAgICAgICBjYXNlIHByb3RvOjpOT1RfU1BFQ0lGSUVEOgorICAgICAgICAgICAgYnJlYWs7Cisg
ICAgICAgIGNhc2UgcHJvdG86OlNNQUxMRVJfSVNfQkVUVEVSOgorICAgICAgICAgICAgc3Ryc3Ry
IDw8ICJfc21hbGxlcklzQmV0dGVyIjsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBkZWZh
dWx0OgorICAgICAgICAgICAgVU5SRUFDSEFCTEUoKTsKKyAgICAgICAgICAgIGJyZWFrOworICAg
IH0KKworICAgIHJldHVybiBzdHJzdHIuc3RyKCk7Cit9CisKK3Byb3RvOjpVbml0QW5kRGlyZWN0
aW9uIFN0cmluZ1RvVW5pdEFuZERpcmVjdGlvbihjb25zdCBzdGQ6OnN0cmluZyAmc3RyKQorewor
ICAgIHByb3RvOjpVbml0QW5kRGlyZWN0aW9uIHVuaXRBbmREaXJlY3Rpb247CisKKyAgICBpZiAo
c3RyID09ICJjb3VudCIpCisgICAgeworICAgICAgICB1bml0QW5kRGlyZWN0aW9uLnNldF9pbXBy
b3ZlbWVudF9kaXJlY3Rpb24ocHJvdG86Ok5PVF9TUEVDSUZJRUQpOworICAgICAgICB1bml0QW5k
RGlyZWN0aW9uLnNldF91bml0KHByb3RvOjpDT1VOVCk7CisgICAgfQorICAgIGVsc2UgaWYgKHN0
ciA9PSAibXNCZXN0Rml0Rm9ybWF0X3NtYWxsZXJJc0JldHRlciIpCisgICAgeworICAgICAgICB1
bml0QW5kRGlyZWN0aW9uLnNldF9pbXByb3ZlbWVudF9kaXJlY3Rpb24ocHJvdG86OlNNQUxMRVJf
SVNfQkVUVEVSKTsKKyAgICAgICAgdW5pdEFuZERpcmVjdGlvbi5zZXRfdW5pdChwcm90bzo6TVNf
QkVTVF9GSVRfRk9STUFUKTsKKyAgICB9CisgICAgZWxzZSBpZiAoc3RyID09ICJzaXplSW5CeXRl
c19zbWFsbGVySXNCZXR0ZXIiKQorICAgIHsKKyAgICAgICAgdW5pdEFuZERpcmVjdGlvbi5zZXRf
aW1wcm92ZW1lbnRfZGlyZWN0aW9uKHByb3RvOjpTTUFMTEVSX0lTX0JFVFRFUik7CisgICAgICAg
IHVuaXRBbmREaXJlY3Rpb24uc2V0X3VuaXQocHJvdG86OlNJWkVfSU5fQllURVMpOworICAgIH0K
KyAgICBlbHNlCisgICAgeworICAgICAgICBVTlJFQUNIQUJMRSgpOworICAgIH0KKworICAgIHJl
dHVybiB1bml0QW5kRGlyZWN0aW9uOwogfQogfSAgLy8gbmFtZXNwYWNlCiAKQEAgLTU0LDkgKzEx
MCw3IEBAIHZvaWQgSGlzdG9ncmFtV3JpdGVyOjphZGRTYW1wbGUoY29uc3Qgc3RkOjpzdHJpbmcg
Jm1lYXN1cmVtZW50LAogICAgIHN0ZDo6c3RyaW5nIG1lYXN1cmVtZW50QW5kU3RvcnkgPSBtZWFz
dXJlbWVudCArIHN0b3J5OwogICAgIGlmIChtSGlzdG9ncmFtcy5jb3VudChtZWFzdXJlbWVudEFu
ZFN0b3J5KSA9PSAwKQogICAgIHsKLSAgICAgICAgcHJvdG86OlVuaXRBbmREaXJlY3Rpb24gdW5p
dEFuZERpcmVjdGlvbjsKLSAgICAgICAgdW5pdEFuZERpcmVjdGlvbi5zZXRfaW1wcm92ZW1lbnRf
ZGlyZWN0aW9uKHByb3RvOjpTTUFMTEVSX0lTX0JFVFRFUik7Ci0gICAgICAgIHVuaXRBbmREaXJl
Y3Rpb24uc2V0X3VuaXQocHJvdG86Ok1TX0JFU1RfRklUX0ZPUk1BVCk7CisgICAgICAgIHByb3Rv
OjpVbml0QW5kRGlyZWN0aW9uIHVuaXRBbmREaXJlY3Rpb24gPSBTdHJpbmdUb1VuaXRBbmREaXJl
Y3Rpb24odW5pdHMpOwogCiAgICAgICAgIHN0ZDo6dW5pcXVlX3B0cjxjYXRhcHVsdDo6SGlzdG9n
cmFtQnVpbGRlcj4gYnVpbGRlciA9CiAgICAgICAgICAgICBzdGQ6Om1ha2VfdW5pcXVlPGNhdGFw
dWx0OjpIaXN0b2dyYW1CdWlsZGVyPihtZWFzdXJlbWVudCwgdW5pdEFuZERpcmVjdGlvbik7CkBA
IC0xMDIsNyArMTU2LDcgQEAgdm9pZCBIaXN0b2dyYW1Xcml0ZXI6OmdldEFzSlNPTihqczo6RG9j
dW1lbnQgKmRvYykgY29uc3QKICAgICAgICAganM6OlZhbHVlIGRlc2NyaXB0aW9uKGhpc3RvZ3Jh
bS5kZXNjcmlwdGlvbigpLCBhbGxvY2F0b3IpOwogICAgICAgICBvYmouQWRkTWVtYmVyKCJkZXNj
cmlwdGlvbiIsIGRlc2NyaXB0aW9uLCBhbGxvY2F0b3IpOwogCi0gICAgICAgIGpzOjpWYWx1ZSB1
bml0QW5kRGlyZWN0aW9uKEdldFVuaXRBbmREaXJlY3Rpb24oaGlzdG9ncmFtLnVuaXQoKSksIGFs
bG9jYXRvcik7CisgICAgICAgIGpzOjpWYWx1ZSB1bml0QW5kRGlyZWN0aW9uKFVuaXRBbmREaXJl
Y3Rpb25Ub1N0cmluZyhoaXN0b2dyYW0udW5pdCgpKSwgYWxsb2NhdG9yKTsKICAgICAgICAgb2Jq
LkFkZE1lbWJlcigidW5pdCIsIHVuaXRBbmREaXJlY3Rpb24sIGFsbG9jYXRvcik7CiAKICAgICAg
ICAgaWYgKGhpc3RvZ3JhbS5oYXNfZGlhZ25vc3RpY3MoKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy90ZXN0X3V0aWxzL3N5c3RlbV9pbmZvX3V0aWwuY3Bw
IGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL3Rlc3RfdXRpbHMvc3lzdGVtX2lu
Zm9fdXRpbC5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYjQ0M2FiZjYxYzZkZTNiODRmNmNhNTgwZDE3YjFmZTI1
MTY2OWM2NQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy90
ZXN0cy90ZXN0X3V0aWxzL3N5c3RlbV9pbmZvX3V0aWwuY3BwCkBAIC0wLDAgKzEsNzYgQEAKKy8v
CisvLyBDb3B5cmlnaHQgMjAyMiBUaGUgQU5HTEUgUHJvamVjdCBBdXRob3JzLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgorLy8gVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBC
U0Qtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQorLy8gZm91bmQgaW4gdGhlIExJQ0VOU0UgZmls
ZS4KKy8vCisvLyBzeXN0ZW1faW5mb191dGlsLmg6CisvLyAgIEltcGxlbWVudGF0aW9uIG9mIGNv
bW1vbiB0ZXN0IHV0aWxpdGllcyBmb3Igb3BlcmF0aW5nIHdpdGggU3lzdGVtSW5mby4KKy8vCisK
KyNpbmNsdWRlICJzeXN0ZW1faW5mb191dGlsLmgiCisKKyNpbmNsdWRlICJjb21tb24vZGVidWcu
aCIKKyNpbmNsdWRlICJjb21tb24vc3RyaW5nX3V0aWxzLmgiCisjaW5jbHVkZSAiZ3B1X2luZm9f
dXRpbC9TeXN0ZW1JbmZvLmgiCisjaW5jbHVkZSAidXRpbC91dGlsX2dsLmgiCisKK3VzaW5nIG5h
bWVzcGFjZSBhbmdsZTsKKworbmFtZXNwYWNlCit7CisKK3NpemVfdCBmaW5kR1BVKGNvbnN0IFN5
c3RlbUluZm8gJnN5c3RlbUluZm8sIGJvb2wgbG93UG93ZXIpCit7CisgICAgaWYgKHN5c3RlbUlu
Zm8uZ3B1cy5zaXplKCkgPCAyKQorICAgIHsKKyAgICAgICAgcmV0dXJuIDA7CisgICAgfQorICAg
IGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgc3lzdGVtSW5mby5ncHVzLnNpemUoKTsgKytpKQorICAg
IHsKKyAgICAgICAgaWYgKGxvd1Bvd2VyICYmIElzSW50ZWwoc3lzdGVtSW5mby5ncHVzW2ldLnZl
bmRvcklkKSkKKyAgICAgICAgeworICAgICAgICAgICAgcmV0dXJuIGk7CisgICAgICAgIH0KKyAg
ICAgICAgLy8gUmV0dXJuIHRoZSBoaWdoIHBvd2VyIEdQVSwgaS5lIGFueSBub24taW50ZWwgR1BV
CisgICAgICAgIGVsc2UgaWYgKCFsb3dQb3dlciAmJiAhSXNJbnRlbChzeXN0ZW1JbmZvLmdwdXNb
aV0udmVuZG9ySWQpKQorICAgICAgICB7CisgICAgICAgICAgICByZXR1cm4gaTsKKyAgICAgICAg
fQorICAgIH0KKyAgICAvLyBDYW4ndCBmaW5kIEdQVQorICAgIEFTU0VSVChmYWxzZSk7CisgICAg
cmV0dXJuIDA7Cit9CisKK30gIC8vIG5hbWVzcGFjZQorCitzaXplX3QgRmluZExvd1Bvd2VyR1BV
KGNvbnN0IFN5c3RlbUluZm8gJnN5c3RlbUluZm8pCit7CisgICAgcmV0dXJuIGZpbmRHUFUoc3lz
dGVtSW5mbywgdHJ1ZSk7Cit9CisKK3NpemVfdCBGaW5kSGlnaFBvd2VyR1BVKGNvbnN0IFN5c3Rl
bUluZm8gJnN5c3RlbUluZm8pCit7CisgICAgcmV0dXJuIGZpbmRHUFUoc3lzdGVtSW5mbywgZmFs
c2UpOworfQorCitzaXplX3QgRmluZEFjdGl2ZU9wZW5HTEdQVShjb25zdCBTeXN0ZW1JbmZvICZz
eXN0ZW1JbmZvKQoreworICAgIGNoYXIgKnJlbmRlcmVyID0gKGNoYXIgKilnbEdldFN0cmluZyhH
TF9SRU5ERVJFUik7CisgICAgc3RkOjpzdHJpbmcgcmVuZGVyZXJTdHJpbmcocmVuZGVyZXIpOwor
ICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgc3lzdGVtSW5mby5ncHVzLnNpemUoKTsgKytpKQor
ICAgIHsKKyAgICAgICAgc3RkOjp2ZWN0b3I8c3RkOjpzdHJpbmc+IHZlbmRvclRva2VuczsKKyAg
ICAgICAgYW5nbGU6OlNwbGl0U3RyaW5nQWxvbmdXaGl0ZXNwYWNlKFZlbmRvck5hbWUoc3lzdGVt
SW5mby5ncHVzW2ldLnZlbmRvcklkKSwgJnZlbmRvclRva2Vucyk7CisgICAgICAgIGZvciAoc3Rk
OjpzdHJpbmcgJnRva2VuIDogdmVuZG9yVG9rZW5zKQorICAgICAgICB7CisgICAgICAgICAgICBp
ZiAocmVuZGVyZXJTdHJpbmcuZmluZCh0b2tlbikgIT0gc3RkOjpzdHJpbmc6Om5wb3MpCisgICAg
ICAgICAgICB7CisgICAgICAgICAgICAgICAgcmV0dXJuIGk7CisgICAgICAgICAgICB9CisgICAg
ICAgIH0KKyAgICB9CisgICAgLy8gQ2FuJ3QgZmluZCBhY3RpdmUgR1BVCisgICAgQVNTRVJUKGZh
bHNlKTsKKyAgICByZXR1cm4gMDsKK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FO
R0xFL3NyYy90ZXN0cy90ZXN0X3V0aWxzL3N5c3RlbV9pbmZvX3V0aWwuaCBiL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3NyYy90ZXN0cy90ZXN0X3V0aWxzL3N5c3RlbV9pbmZvX3V0aWwuaApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi42OTgzZjUyYWI1MDJhZTdiZWJiMjU1YzI4ZWM2ZmM2ZDM3MDJlNjcyCi0tLSAvZGV2
L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3Rlc3RzL3Rlc3RfdXRpbHMv
c3lzdGVtX2luZm9fdXRpbC5oCkBAIC0wLDAgKzEsMjkgQEAKKy8vCisvLyBDb3B5cmlnaHQgMjAy
MiBUaGUgQU5HTEUgUHJvamVjdCBBdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVXNl
IG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUgbGljZW5zZSB0
aGF0IGNhbiBiZQorLy8gZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8vCisvLyBzeXN0ZW1f
aW5mb191dGlsLmg6CisvLyAgIEltcGxlbWVudGF0aW9uIG9mIGNvbW1vbiB0ZXN0IHV0aWxpdGll
cyBmb3Igb3BlcmF0aW5nIHdpdGggU3lzdGVtSW5mby4KKy8vCisKKyNpZm5kZWYgQU5HTEVfVEVT
VFNfU1lTVEVNX0lORk9fVVRJTF9IXworI2RlZmluZSBBTkdMRV9URVNUU19TWVNURU1fSU5GT19V
VElMX0hfCisKKyNpbmNsdWRlIDxzdGRkZWYuaD4KKworbmFtZXNwYWNlIGFuZ2xlCit7CitzdHJ1
Y3QgU3lzdGVtSW5mbzsKK30gIC8vIG5hbWVzcGFjZSBhbmdsZQorCisvLyBSZXR1cm5zIHRoZSBp
bmRleCBvZiB0aGUgbG93IHBvd2VyIEdQVSBpbiBTeXN0ZW1JbmZvLgorc2l6ZV90IEZpbmRMb3dQ
b3dlckdQVShjb25zdCBhbmdsZTo6U3lzdGVtSW5mbyAmKTsKKworLy8gUmV0dXJucyB0aGUgaW5k
ZXggb2YgdGhlIGhpZ2ggcG93ZXIgR1BVIGluIFN5c3RlbUluZm8uCitzaXplX3QgRmluZEhpZ2hQ
b3dlckdQVShjb25zdCBhbmdsZTo6U3lzdGVtSW5mbyAmKTsKKworLy8gUmV0dXJucyB0aGUgaW5k
ZXggb2YgdGhlIEdQVSBpbiBTeXN0ZW1JbmZvIGJhc2VkIG9uIHRoZSBPcGVuR0wgcmVuZGVyZXIg
c3RyaW5nLgorc2l6ZV90IEZpbmRBY3RpdmVPcGVuR0xHUFUoY29uc3QgYW5nbGU6OlN5c3RlbUlu
Zm8gJik7CisKKyNlbmRpZiAgLy8gQU5HTEVfVEVTVFNfU1lTVEVNX0lORk9fVVRJTF9IXwpkaWZm
IC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL3RoaXJkX3BhcnR5L3ZvbGsvQlVJ
TEQuZ24gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGhpcmRfcGFydHkvdm9say9CVUlM
RC5nbgppbmRleCAxNDgxYWQ0MjI1Y2Y5ZThmZDNjODllNTU0NzEzN2UwMWY1YTVkNjQ1Li5lYzQ2
NTc2YjQyMDYyYjJmM2U1NjZmYTY3YmUxNDE5NWJhMjY1YWE0IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGhpcmRfcGFydHkvdm9say9CVUlMRC5nbgorKysgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvdGhpcmRfcGFydHkvdm9say9CVUlMRC5nbgpAQCAtMTYs
NCArMTYsNyBAQCBzb3VyY2Vfc2V0KCJ2b2xrIikgewogICBwdWJsaWNfY29uZmlncyA9IFsgIjp2
b2xrX2NvbmZpZyIgXQogICBjb25maWdzICs9IFsgIiRhbmdsZV9yb290OmFuZ2xlX25vX2NmaV9p
Y2FsbCIgXQogICBwdWJsaWNfZGVwcyA9IFsgIiRhbmdsZV92dWxrYW5faGVhZGVyc19kaXI6dnVs
a2FuX2hlYWRlcnMiIF0KKyAgaWYgKGFuZ2xlX3VzZV93YXlsYW5kKSB7CisgICAgaW5jbHVkZV9k
aXJzID0gWyAiJGFuZ2xlX3dheWxhbmRfZGlyL3NyYyIgXQorICB9CiB9CmRpZmYgLS1naXQgYS9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS90b29scy9hbmdsZV90b29scy5weSBiL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3Rvb2xzL2FuZ2xlX3Rvb2xzLnB5CmluZGV4IGY0ZDE0YzRjYWM2YjUyYzI3
OTZmMDBkMzI5ZTg1NDNhMGE4ZGIxNWUuLjg1N2QwYjI4MmEyMmE2MjI4Y2ExNzBlYTk2OTBjMjIw
NDhiZWU1NzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3Rvb2xzL2FuZ2xl
X3Rvb2xzLnB5CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3Rvb2xzL2FuZ2xlX3Rvb2xz
LnB5CkBAIC0xLDQgKzEsNCBAQAotIyEvdXNyL2Jpbi9weXRob24yCisjIS91c3IvYmluL3B5dGhv
bjMKICMKICMgQ29weXJpZ2h0IDIwMTkgVGhlIEFOR0xFIFByb2plY3QgQXV0aG9ycy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KICMgVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkg
YSBCU0Qtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvdG9vbHMvZmxleC1iaXNvbi91cGRhdGVfZmxleF9iaXNvbl9iaW5hcmllcy5w
eSBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3Rvb2xzL2ZsZXgtYmlzb24vdXBkYXRlX2ZsZXhf
Ymlzb25fYmluYXJpZXMucHkKaW5kZXggOTljMDAyYjA0ZTc4OTMyMzhiNDA4ZWVmZWYzZDNjN2Q4
NzE1NmZiYi4uZGQ5NWQ0NzNiY2RjZDk1ZjVlNWIwNzFiZWIzOTM1ZDUzNzIwYmRkYyAxMDA3NTUK
LS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvdG9vbHMvZmxleC1iaXNvbi91cGRhdGVfZmxl
eF9iaXNvbl9iaW5hcmllcy5weQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS90b29scy9m
bGV4LWJpc29uL3VwZGF0ZV9mbGV4X2Jpc29uX2JpbmFyaWVzLnB5CkBAIC0xLDQgKzEsNCBAQAot
IyEvdXNyL2Jpbi9weXRob24yCisjIS91c3IvYmluL3B5dGhvbjMKICMKICMgQ29weXJpZ2h0IDIw
MTkgVGhlIEFOR0xFIFByb2plY3QgQXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICMgVXNl
IG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUgbGljZW5zZSB0
aGF0IGNhbiBiZQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvdG9vbHMvZ2xz
bGFuZy91cGRhdGVfZ2xzbGFuZ19iaW5hcnkucHkgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS90
b29scy9nbHNsYW5nL3VwZGF0ZV9nbHNsYW5nX2JpbmFyeS5weQppbmRleCAxZTJiYjUyNTYxYjJi
NTY4MDc3NmZiMDBlM2FkOWU1YWM3ZGRjN2E2Li45OWNiMmEwY2JkODQxYTUwODM0ZWVkYTMxMDZi
ZTJjNDgwOGZjNzA3IDEwMDc1NQotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS90b29scy9n
bHNsYW5nL3VwZGF0ZV9nbHNsYW5nX2JpbmFyeS5weQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS90b29scy9nbHNsYW5nL3VwZGF0ZV9nbHNsYW5nX2JpbmFyeS5weQpAQCAtMSw0ICsxLDQg
QEAKLSMhL3Vzci9iaW4vcHl0aG9uMgorIyEvdXNyL2Jpbi9weXRob24zCiAjCiAjIENvcHlyaWdo
dCAyMDE5IFRoZSBBTkdMRSBQcm9qZWN0IEF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAj
IFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlIGxpY2Vu
c2UgdGhhdCBjYW4gYmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3V0aWwv
RUdMUGxhdGZvcm1QYXJhbWV0ZXJzLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS91dGlsL0VH
TFBsYXRmb3JtUGFyYW1ldGVycy5oCmluZGV4IDdjMTIyYzA1NTk4NDdhMTQxYjFkYjRkMTRhOWE0
MmU0NzIwNTE2OTAuLmM3ZTJhZWE2M2M5NzUwZTJjYWJmMTc3YTVhYjQ3MzFiZjlmMjRhNDUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3V0aWwvRUdMUGxhdGZvcm1QYXJhbWV0
ZXJzLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvdXRpbC9FR0xQbGF0Zm9ybVBhcmFt
ZXRlcnMuaApAQCAtNTgsMTcgKzU4LDE4IEBAIHN0cnVjdCBFR0xQbGF0Zm9ybVBhcmFtZXRlcnMK
IAogICAgIGF1dG8gdGllKCkgY29uc3QKICAgICB7Ci0gICAgICAgIHJldHVybiBzdGQ6OnRpZSgK
LSAgICAgICAgICAgIHJlbmRlcmVyLCBtYWpvclZlcnNpb24sIG1pbm9yVmVyc2lvbiwgZGV2aWNl
VHlwZSwgcHJlc2VudFBhdGgsIGRlYnVnTGF5ZXJzRW5hYmxlZCwKLSAgICAgICAgICAgIHRyYW5z
Zm9ybUZlZWRiYWNrRmVhdHVyZSwgYWxsb2NhdGVOb25aZXJvTWVtb3J5RmVhdHVyZSwKLSAgICAg
ICAgICAgIGVtdWxhdGVDb3B5VGV4SW1hZ2UyREZyb21SZW5kZXJidWZmZXJzLCBzaGFkZXJTdGVu
Y2lsT3V0cHV0RmVhdHVyZSwKLSAgICAgICAgICAgIGdlbk11bHRpcGxlTWlwc1BlclBhc3NGZWF0
dXJlLCBwbGF0Zm9ybU1ldGhvZHMsIHJvYnVzdG5lc3MsIGVtdWxhdGVkUHJlcm90YXRpb24sCi0g
ICAgICAgICAgICBhc3luY0NvbW1hbmRRdWV1ZUZlYXR1cmVWdWxrYW4sIGhhc0V4cGxpY2l0TWVt
QmFycmllckZlYXR1cmVNdGwsCi0gICAgICAgICAgICBoYXNDaGVhcFJlbmRlclBhc3NGZWF0dXJl
TXRsLCBmb3JjZUJ1ZmZlckdQVVN0b3JhZ2VGZWF0dXJlTXRsLAotICAgICAgICAgICAgc3VwcG9y
dHNWdWxrYW5WaWV3cG9ydEZsaXAsIHN1cHBvcnRzVnVsa2FuTXVsdGlEcmF3SW5kaXJlY3QsCi0g
ICAgICAgICAgICBXaXRoVnVsa2FuUHJlZmVyQ1BVRm9yQnVmZmVyU3ViRGF0YSwgZW11bGF0ZWRW
QU9zLCBnZW5lcmF0ZVNQSVJWVGhyb3VnaEdsc2xhbmcsCi0gICAgICAgICAgICBjYXB0dXJlTGlt
aXRzLCBmb3JjZVJvYnVzdFJlc291cmNlSW5pdCwgZGlyZWN0TWV0YWxHZW5lcmF0aW9uLCBmb3Jj
ZUluaXRTaGFkZXJWYXJpYWJsZXMsCi0gICAgICAgICAgICBmb3JjZVZ1bGthbkZhbGxiYWNrRm9y
bWF0LCBkaXNwbGF5UG93ZXJQcmVmZXJlbmNlLCBmb3JjZVN1Ym1pdEltbXV0YWJsZVRleHR1cmVV
cGRhdGVzKTsKKyAgICAgICAgcmV0dXJuIHN0ZDo6dGllKHJlbmRlcmVyLCBtYWpvclZlcnNpb24s
IG1pbm9yVmVyc2lvbiwgZGV2aWNlVHlwZSwgcHJlc2VudFBhdGgsCisgICAgICAgICAgICAgICAg
ICAgICAgICBkZWJ1Z0xheWVyc0VuYWJsZWQsIHRyYW5zZm9ybUZlZWRiYWNrRmVhdHVyZSwgYWxs
b2NhdGVOb25aZXJvTWVtb3J5RmVhdHVyZSwKKyAgICAgICAgICAgICAgICAgICAgICAgIGVtdWxh
dGVDb3B5VGV4SW1hZ2UyREZyb21SZW5kZXJidWZmZXJzLCBzaGFkZXJTdGVuY2lsT3V0cHV0RmVh
dHVyZSwKKyAgICAgICAgICAgICAgICAgICAgICAgIGdlbk11bHRpcGxlTWlwc1BlclBhc3NGZWF0
dXJlLCBwbGF0Zm9ybU1ldGhvZHMsIHJvYnVzdG5lc3MsCisgICAgICAgICAgICAgICAgICAgICAg
ICBlbXVsYXRlZFByZXJvdGF0aW9uLCBhc3luY0NvbW1hbmRRdWV1ZUZlYXR1cmVWdWxrYW4sCisg
ICAgICAgICAgICAgICAgICAgICAgICBoYXNFeHBsaWNpdE1lbUJhcnJpZXJGZWF0dXJlTXRsLCBo
YXNDaGVhcFJlbmRlclBhc3NGZWF0dXJlTXRsLAorICAgICAgICAgICAgICAgICAgICAgICAgZm9y
Y2VCdWZmZXJHUFVTdG9yYWdlRmVhdHVyZU10bCwgc3VwcG9ydHNWdWxrYW5WaWV3cG9ydEZsaXAs
CisgICAgICAgICAgICAgICAgICAgICAgICBzdXBwb3J0c1Z1bGthbk11bHRpRHJhd0luZGlyZWN0
LCBXaXRoVnVsa2FuUHJlZmVyQ1BVRm9yQnVmZmVyU3ViRGF0YSwKKyAgICAgICAgICAgICAgICAg
ICAgICAgIGVtdWxhdGVkVkFPcywgZ2VuZXJhdGVTUElSVlRocm91Z2hHbHNsYW5nLCBjYXB0dXJl
TGltaXRzLAorICAgICAgICAgICAgICAgICAgICAgICAgZm9yY2VSb2J1c3RSZXNvdXJjZUluaXQs
IGRpcmVjdE1ldGFsR2VuZXJhdGlvbiwgZm9yY2VJbml0U2hhZGVyVmFyaWFibGVzLAorICAgICAg
ICAgICAgICAgICAgICAgICAgZm9yY2VWdWxrYW5GYWxsYmFja0Zvcm1hdCwgZGlzcGxheVBvd2Vy
UHJlZmVyZW5jZSwKKyAgICAgICAgICAgICAgICAgICAgICAgIGZvcmNlU3VibWl0SW1tdXRhYmxl
VGV4dHVyZVVwZGF0ZXMsIGNyZWF0ZVBpcGVsaW5lRHVyaW5nTGluayk7CiAgICAgfQogCiAgICAg
RUdMaW50IHJlbmRlcmVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID0gRUdMX1BMQVRG
T1JNX0FOR0xFX1RZUEVfREVGQVVMVF9BTkdMRTsKQEAgLTEwMCw2ICsxMDEsNyBAQCBzdHJ1Y3Qg
RUdMUGxhdGZvcm1QYXJhbWV0ZXJzCiAgICAgRUdMaW50IGZvcmNlVnVsa2FuRmFsbGJhY2tGb3Jt
YXQgICAgICAgICAgICAgID0gRUdMX0RPTlRfQ0FSRTsKICAgICBFR0xpbnQgZGlzcGxheVBvd2Vy
UHJlZmVyZW5jZSAgICAgICAgICAgICAgICAgPSBFR0xfRE9OVF9DQVJFOwogICAgIEVHTGludCBm
b3JjZVN1Ym1pdEltbXV0YWJsZVRleHR1cmVVcGRhdGVzICAgICA9IEVHTF9ET05UX0NBUkU7Cisg
ICAgRUdMaW50IGNyZWF0ZVBpcGVsaW5lRHVyaW5nTGluayAgICAgICAgICAgICAgID0gRUdMX0RP
TlRfQ0FSRTsKIAogICAgIGFuZ2xlOjpQbGF0Zm9ybU1ldGhvZHMgKnBsYXRmb3JtTWV0aG9kcyA9
IG51bGxwdHI7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvdXRpbC9F
R0xXaW5kb3cuY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvdXRpbC9FR0xXaW5kb3cuY3Bw
CmluZGV4IGQ5ZTg5NjM2ZTBiNjIyNTM1Zjk2NTc5MGY2ODYwYTVjY2IzOWVkOTEuLjFiYjc3YjIz
Yzg5ZDMzZjA4OGM4YmRhYmUwNTViNzVjNDUyODY3MTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3V0aWwvRUdMV2luZG93LmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS91dGlsL0VHTFdpbmRvdy5jcHAKQEAgLTMzOCw2ICszMzgsMTEgQEAgYm9vbCBFR0xXaW5k
b3c6OmluaXRpYWxpemVEaXNwbGF5KE9TV2luZG93ICpvc1dpbmRvdywKICAgICAgICAgZW5hYmxl
ZEZlYXR1cmVPdmVycmlkZXMucHVzaF9iYWNrKCJmb3JjZVN1Ym1pdEltbXV0YWJsZVRleHR1cmVV
cGRhdGVzIik7CiAgICAgfQogCisgICAgaWYgKHBhcmFtcy5jcmVhdGVQaXBlbGluZUR1cmluZ0xp
bmsgPT0gRUdMX1RSVUUpCisgICAgeworICAgICAgICBlbmFibGVkRmVhdHVyZU92ZXJyaWRlcy5w
dXNoX2JhY2soImNyZWF0ZVBpcGVsaW5lRHVyaW5nTGluayIpOworICAgIH0KKwogICAgIGNvbnN0
IGJvb2wgaGFzRmVhdHVyZUNvbnRyb2xBTkdMRSA9CiAgICAgICAgIHN0cnN0cihleHRlbnNpb25T
dHJpbmcsICJFR0xfQU5HTEVfZmVhdHVyZV9jb250cm9sIikgIT0gbnVsbHB0cjsKIApkaWZmIC0t
Z2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvdXRpbC9PU1dpbmRvdy5jcHAgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS91dGlsL09TV2luZG93LmNwcAppbmRleCA1ZGNlMmE5MTQ4ZDEwZGY1
ZDZlZDE2YWI3MzczZTY4YmI0ZDJjOTQ2Li43NzRiMmYyNTQ2NzVlMWNkYWYyY2ZjNjBhYjgzNjE3
YzRkOWNlMTlhIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS91dGlsL09TV2lu
ZG93LmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS91dGlsL09TV2luZG93LmNwcApA
QCAtMzg5LDYgKzM4OSwxMSBAQCBib29sIE9TV2luZG93Ojp0YWtlU2NyZWVuc2hvdCh1aW50OF90
ICpwaXhlbERhdGEpCiAgICAgcmV0dXJuIGZhbHNlOwogfQogCit2b2lkICpPU1dpbmRvdzo6Z2V0
UGxhdGZvcm1FeHRlbnNpb24oKQoreworICAgIHJldHVybiByZWludGVycHJldF9jYXN0PHZvaWQg
Kj4oZ2V0TmF0aXZlV2luZG93KCkpOworfQorCiBib29sIE9TV2luZG93Ojpwb3BFdmVudChFdmVu
dCAqZXZlbnQpCiB7CiAgICAgaWYgKG1FdmVudHMuc2l6ZSgpID4gMCAmJiBldmVudCkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3V0aWwvT1NXaW5kb3cuaCBiL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3V0aWwvT1NXaW5kb3cuaAppbmRleCA2MmU4MGMyMjJjZDQyODIzMDM1
MDZhNDViNWRhNDgxNGUyODBkMmQ3Li40NTI5MDQzZTgxYTFlNDhkNTM2YTg5N2M0YjgwOGYzNmMx
Njg4YTQ4IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS91dGlsL09TV2luZG93
LmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvdXRpbC9PU1dpbmRvdy5oCkBAIC00Niw3
ICs0NiwxMSBAQCBjbGFzcyBBTkdMRV9VVElMX0VYUE9SVCBPU1dpbmRvdwogICAgIC8vIG11bHRp
cGxlIEVHTFN1cmZhY2VzLgogICAgIHZpcnR1YWwgdm9pZCByZXNldE5hdGl2ZVdpbmRvdygpID0g
MDsKIAotICAgIHZpcnR1YWwgRUdMTmF0aXZlV2luZG93VHlwZSBnZXROYXRpdmVXaW5kb3coKSBj
b25zdCAgID0gMDsKKyAgICB2aXJ0dWFsIEVHTE5hdGl2ZVdpbmRvd1R5cGUgZ2V0TmF0aXZlV2lu
ZG93KCkgY29uc3QgPSAwOworCisgICAgLy8gUmV0dXJucyBhIG5hdGl2ZSBwb2ludGVyIHRoYXQg
Y2FuIGJlIHVzZWQgZm9yIGVnbENyZWF0ZVBsYXRmb3JtV2luZG93U3VyZmFjZUVYVCgpLgorICAg
IHZpcnR1YWwgdm9pZCAqZ2V0UGxhdGZvcm1FeHRlbnNpb24oKTsKKwogICAgIHZpcnR1YWwgRUdM
TmF0aXZlRGlzcGxheVR5cGUgZ2V0TmF0aXZlRGlzcGxheSgpIGNvbnN0ID0gMDsKIAogICAgIHZp
cnR1YWwgdm9pZCBtZXNzYWdlTG9vcCgpID0gMDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL3V0aWwvZWdsX2xvYWRlcl9hdXRvZ2VuLmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3V0aWwvZWdsX2xvYWRlcl9hdXRvZ2VuLmNwcAppbmRleCBmZGExODRjMWVkYmM3OGVi
NWFjYzUyZTM2Y2MyYzE1ODRlNzkwMmJkLi5mOWUzNzU1ZGNmZDZhZTc4M2RlMWU3ODcwYTNmODVm
MjI2NzY1MWJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS91dGlsL2VnbF9s
b2FkZXJfYXV0b2dlbi5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvdXRpbC9lZ2xf
bG9hZGVyX2F1dG9nZW4uY3BwCkBAIC03MCw2ICs3MCw3IEBAIEFOR0xFX1VUSUxfRVhQT1JUIFBG
TkVHTENSRUFURURFVklDRUFOR0xFUFJPQyBsX2VnbENyZWF0ZURldmljZUFOR0xFOwogQU5HTEVf
VVRJTF9FWFBPUlQgUEZORUdMUkVMRUFTRURFVklDRUFOR0xFUFJPQyBsX2VnbFJlbGVhc2VEZXZp
Y2VBTkdMRTsKIEFOR0xFX1VUSUxfRVhQT1JUIFBGTkVHTFFVRVJZRElTUExBWUFUVFJJQkFOR0xF
UFJPQyBsX2VnbFF1ZXJ5RGlzcGxheUF0dHJpYkFOR0xFOwogQU5HTEVfVVRJTF9FWFBPUlQgUEZO
RUdMUVVFUllTVFJJTkdJQU5HTEVQUk9DIGxfZWdsUXVlcnlTdHJpbmdpQU5HTEU7CitBTkdMRV9V
VElMX0VYUE9SVCBQRk5FR0xGT1JDRUdQVVNXSVRDSEFOR0xFUFJPQyBsX2VnbEZvcmNlR1BVU3dp
dGNoQU5HTEU7CiBBTkdMRV9VVElMX0VYUE9SVCBQRk5FR0xIQU5ETEVHUFVTV0lUQ0hBTkdMRVBS
T0MgbF9lZ2xIYW5kbGVHUFVTd2l0Y2hBTkdMRTsKIEFOR0xFX1VUSUxfRVhQT1JUIFBGTkVHTFJF
QUNRVUlSRUhJR0hQT1dFUkdQVUFOR0xFUFJPQyBsX2VnbFJlYWNxdWlyZUhpZ2hQb3dlckdQVUFO
R0xFOwogQU5HTEVfVVRJTF9FWFBPUlQgUEZORUdMUkVMRUFTRUhJR0hQT1dFUkdQVUFOR0xFUFJP
QyBsX2VnbFJlbGVhc2VIaWdoUG93ZXJHUFVBTkdMRTsKQEAgLTg5LDYgKzkwLDggQEAgQU5HTEVf
VVRJTF9FWFBPUlQgUEZORUdMR0VUU1lOQ1ZBTFVFU0NIUk9NSVVNUFJPQyBsX2VnbEdldFN5bmNW
YWx1ZXNDSFJPTUlVTTsKIEFOR0xFX1VUSUxfRVhQT1JUIFBGTkVHTFFVRVJZREVWSUNFQVRUUklC
RVhUUFJPQyBsX2VnbFF1ZXJ5RGV2aWNlQXR0cmliRVhUOwogQU5HTEVfVVRJTF9FWFBPUlQgUEZO
RUdMUVVFUllERVZJQ0VTVFJJTkdFWFRQUk9DIGxfZWdsUXVlcnlEZXZpY2VTdHJpbmdFWFQ7CiBB
TkdMRV9VVElMX0VYUE9SVCBQRk5FR0xRVUVSWURJU1BMQVlBVFRSSUJFWFRQUk9DIGxfZWdsUXVl
cnlEaXNwbGF5QXR0cmliRVhUOworQU5HTEVfVVRJTF9FWFBPUlQgUEZORUdMUVVFUllETUFCVUZG
T1JNQVRTRVhUUFJPQyBsX2VnbFF1ZXJ5RG1hQnVmRm9ybWF0c0VYVDsKK0FOR0xFX1VUSUxfRVhQ
T1JUIFBGTkVHTFFVRVJZRE1BQlVGTU9ESUZJRVJTRVhUUFJPQyBsX2VnbFF1ZXJ5RG1hQnVmTW9k
aWZpZXJzRVhUOwogQU5HTEVfVVRJTF9FWFBPUlQgUEZORUdMQ1JFQVRFUExBVEZPUk1QSVhNQVBT
VVJGQUNFRVhUUFJPQyBsX2VnbENyZWF0ZVBsYXRmb3JtUGl4bWFwU3VyZmFjZUVYVDsKIEFOR0xF
X1VUSUxfRVhQT1JUIFBGTkVHTENSRUFURVBMQVRGT1JNV0lORE9XU1VSRkFDRUVYVFBST0MgbF9l
Z2xDcmVhdGVQbGF0Zm9ybVdpbmRvd1N1cmZhY2VFWFQ7CiBBTkdMRV9VVElMX0VYUE9SVCBQRk5F
R0xHRVRQTEFURk9STURJU1BMQVlFWFRQUk9DIGxfZWdsR2V0UGxhdGZvcm1EaXNwbGF5RVhUOwpA
QCAtMjEyLDYgKzIxNSw4IEBAIHZvaWQgTG9hZEVHTChMb2FkUHJvYyBsb2FkUHJvYykKICAgICAg
ICAgcmVpbnRlcnByZXRfY2FzdDxQRk5FR0xRVUVSWURJU1BMQVlBVFRSSUJBTkdMRVBST0M+KGxv
YWRQcm9jKCJlZ2xRdWVyeURpc3BsYXlBdHRyaWJBTkdMRSIpKTsKICAgICBsX2VnbFF1ZXJ5U3Ry
aW5naUFOR0xFID0KICAgICAgICAgcmVpbnRlcnByZXRfY2FzdDxQRk5FR0xRVUVSWVNUUklOR0lB
TkdMRVBST0M+KGxvYWRQcm9jKCJlZ2xRdWVyeVN0cmluZ2lBTkdMRSIpKTsKKyAgICBsX2VnbEZv
cmNlR1BVU3dpdGNoQU5HTEUgPQorICAgICAgICByZWludGVycHJldF9jYXN0PFBGTkVHTEZPUkNF
R1BVU1dJVENIQU5HTEVQUk9DPihsb2FkUHJvYygiZWdsRm9yY2VHUFVTd2l0Y2hBTkdMRSIpKTsK
ICAgICBsX2VnbEhhbmRsZUdQVVN3aXRjaEFOR0xFID0KICAgICAgICAgcmVpbnRlcnByZXRfY2Fz
dDxQRk5FR0xIQU5ETEVHUFVTV0lUQ0hBTkdMRVBST0M+KGxvYWRQcm9jKCJlZ2xIYW5kbGVHUFVT
d2l0Y2hBTkdMRSIpKTsKICAgICBsX2VnbFJlYWNxdWlyZUhpZ2hQb3dlckdQVUFOR0xFID0gcmVp
bnRlcnByZXRfY2FzdDxQRk5FR0xSRUFDUVVJUkVISUdIUE9XRVJHUFVBTkdMRVBST0M+KApAQCAt
MjUwLDYgKzI1NSwxMCBAQCB2b2lkIExvYWRFR0woTG9hZFByb2MgbG9hZFByb2MpCiAgICAgICAg
IHJlaW50ZXJwcmV0X2Nhc3Q8UEZORUdMUVVFUllERVZJQ0VTVFJJTkdFWFRQUk9DPihsb2FkUHJv
YygiZWdsUXVlcnlEZXZpY2VTdHJpbmdFWFQiKSk7CiAgICAgbF9lZ2xRdWVyeURpc3BsYXlBdHRy
aWJFWFQgPQogICAgICAgICByZWludGVycHJldF9jYXN0PFBGTkVHTFFVRVJZRElTUExBWUFUVFJJ
QkVYVFBST0M+KGxvYWRQcm9jKCJlZ2xRdWVyeURpc3BsYXlBdHRyaWJFWFQiKSk7CisgICAgbF9l
Z2xRdWVyeURtYUJ1ZkZvcm1hdHNFWFQgPQorICAgICAgICByZWludGVycHJldF9jYXN0PFBGTkVH
TFFVRVJZRE1BQlVGRk9STUFUU0VYVFBST0M+KGxvYWRQcm9jKCJlZ2xRdWVyeURtYUJ1ZkZvcm1h
dHNFWFQiKSk7CisgICAgbF9lZ2xRdWVyeURtYUJ1Zk1vZGlmaWVyc0VYVCA9CisgICAgICAgIHJl
aW50ZXJwcmV0X2Nhc3Q8UEZORUdMUVVFUllETUFCVUZNT0RJRklFUlNFWFRQUk9DPihsb2FkUHJv
YygiZWdsUXVlcnlEbWFCdWZNb2RpZmllcnNFWFQiKSk7CiAgICAgbF9lZ2xDcmVhdGVQbGF0Zm9y
bVBpeG1hcFN1cmZhY2VFWFQgPQogICAgICAgICByZWludGVycHJldF9jYXN0PFBGTkVHTENSRUFU
RVBMQVRGT1JNUElYTUFQU1VSRkFDRUVYVFBST0M+KAogICAgICAgICAgICAgbG9hZFByb2MoImVn
bENyZWF0ZVBsYXRmb3JtUGl4bWFwU3VyZmFjZUVYVCIpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3V0aWwvZWdsX2xvYWRlcl9hdXRvZ2VuLmggYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9BTkdMRS91dGlsL2VnbF9sb2FkZXJfYXV0b2dlbi5oCmluZGV4IGE3MDFiOWQxMmZlMWVl
NzczNDhmMmE0ZGRkNGY0NmQ4NjA3MWZkZTMuLmZkNmJkNzRlY2Y4ZmRjYTZiMDIxNzQyYjYyODYw
ZDUzMDdhMTViOGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3V0aWwvZWds
X2xvYWRlcl9hdXRvZ2VuLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvdXRpbC9lZ2xf
bG9hZGVyX2F1dG9nZW4uaApAQCAtNzQsNiArNzQsNyBAQAogI2RlZmluZSBlZ2xSZWxlYXNlRGV2
aWNlQU5HTEUgbF9lZ2xSZWxlYXNlRGV2aWNlQU5HTEUKICNkZWZpbmUgZWdsUXVlcnlEaXNwbGF5
QXR0cmliQU5HTEUgbF9lZ2xRdWVyeURpc3BsYXlBdHRyaWJBTkdMRQogI2RlZmluZSBlZ2xRdWVy
eVN0cmluZ2lBTkdMRSBsX2VnbFF1ZXJ5U3RyaW5naUFOR0xFCisjZGVmaW5lIGVnbEZvcmNlR1BV
U3dpdGNoQU5HTEUgbF9lZ2xGb3JjZUdQVVN3aXRjaEFOR0xFCiAjZGVmaW5lIGVnbEhhbmRsZUdQ
VVN3aXRjaEFOR0xFIGxfZWdsSGFuZGxlR1BVU3dpdGNoQU5HTEUKICNkZWZpbmUgZWdsUmVhY3F1
aXJlSGlnaFBvd2VyR1BVQU5HTEUgbF9lZ2xSZWFjcXVpcmVIaWdoUG93ZXJHUFVBTkdMRQogI2Rl
ZmluZSBlZ2xSZWxlYXNlSGlnaFBvd2VyR1BVQU5HTEUgbF9lZ2xSZWxlYXNlSGlnaFBvd2VyR1BV
QU5HTEUKQEAgLTkyLDYgKzkzLDggQEAKICNkZWZpbmUgZWdsUXVlcnlEZXZpY2VBdHRyaWJFWFQg
bF9lZ2xRdWVyeURldmljZUF0dHJpYkVYVAogI2RlZmluZSBlZ2xRdWVyeURldmljZVN0cmluZ0VY
VCBsX2VnbFF1ZXJ5RGV2aWNlU3RyaW5nRVhUCiAjZGVmaW5lIGVnbFF1ZXJ5RGlzcGxheUF0dHJp
YkVYVCBsX2VnbFF1ZXJ5RGlzcGxheUF0dHJpYkVYVAorI2RlZmluZSBlZ2xRdWVyeURtYUJ1ZkZv
cm1hdHNFWFQgbF9lZ2xRdWVyeURtYUJ1ZkZvcm1hdHNFWFQKKyNkZWZpbmUgZWdsUXVlcnlEbWFC
dWZNb2RpZmllcnNFWFQgbF9lZ2xRdWVyeURtYUJ1Zk1vZGlmaWVyc0VYVAogI2RlZmluZSBlZ2xD
cmVhdGVQbGF0Zm9ybVBpeG1hcFN1cmZhY2VFWFQgbF9lZ2xDcmVhdGVQbGF0Zm9ybVBpeG1hcFN1
cmZhY2VFWFQKICNkZWZpbmUgZWdsQ3JlYXRlUGxhdGZvcm1XaW5kb3dTdXJmYWNlRVhUIGxfZWds
Q3JlYXRlUGxhdGZvcm1XaW5kb3dTdXJmYWNlRVhUCiAjZGVmaW5lIGVnbEdldFBsYXRmb3JtRGlz
cGxheUVYVCBsX2VnbEdldFBsYXRmb3JtRGlzcGxheUVYVApAQCAtMTgyLDYgKzE4NSw3IEBAIEFO
R0xFX1VUSUxfRVhQT1JUIGV4dGVybiBQRk5FR0xDUkVBVEVERVZJQ0VBTkdMRVBST0MgbF9lZ2xD
cmVhdGVEZXZpY2VBTkdMRTsKIEFOR0xFX1VUSUxfRVhQT1JUIGV4dGVybiBQRk5FR0xSRUxFQVNF
REVWSUNFQU5HTEVQUk9DIGxfZWdsUmVsZWFzZURldmljZUFOR0xFOwogQU5HTEVfVVRJTF9FWFBP
UlQgZXh0ZXJuIFBGTkVHTFFVRVJZRElTUExBWUFUVFJJQkFOR0xFUFJPQyBsX2VnbFF1ZXJ5RGlz
cGxheUF0dHJpYkFOR0xFOwogQU5HTEVfVVRJTF9FWFBPUlQgZXh0ZXJuIFBGTkVHTFFVRVJZU1RS
SU5HSUFOR0xFUFJPQyBsX2VnbFF1ZXJ5U3RyaW5naUFOR0xFOworQU5HTEVfVVRJTF9FWFBPUlQg
ZXh0ZXJuIFBGTkVHTEZPUkNFR1BVU1dJVENIQU5HTEVQUk9DIGxfZWdsRm9yY2VHUFVTd2l0Y2hB
TkdMRTsKIEFOR0xFX1VUSUxfRVhQT1JUIGV4dGVybiBQRk5FR0xIQU5ETEVHUFVTV0lUQ0hBTkdM
RVBST0MgbF9lZ2xIYW5kbGVHUFVTd2l0Y2hBTkdMRTsKIEFOR0xFX1VUSUxfRVhQT1JUIGV4dGVy
biBQRk5FR0xSRUFDUVVJUkVISUdIUE9XRVJHUFVBTkdMRVBST0MgbF9lZ2xSZWFjcXVpcmVIaWdo
UG93ZXJHUFVBTkdMRTsKIEFOR0xFX1VUSUxfRVhQT1JUIGV4dGVybiBQRk5FR0xSRUxFQVNFSElH
SFBPV0VSR1BVQU5HTEVQUk9DIGxfZWdsUmVsZWFzZUhpZ2hQb3dlckdQVUFOR0xFOwpAQCAtMjAy
LDYgKzIwNiw4IEBAIEFOR0xFX1VUSUxfRVhQT1JUIGV4dGVybiBQRk5FR0xHRVRTWU5DVkFMVUVT
Q0hST01JVU1QUk9DIGxfZWdsR2V0U3luY1ZhbHVlc0NIUk9NCiBBTkdMRV9VVElMX0VYUE9SVCBl
eHRlcm4gUEZORUdMUVVFUllERVZJQ0VBVFRSSUJFWFRQUk9DIGxfZWdsUXVlcnlEZXZpY2VBdHRy
aWJFWFQ7CiBBTkdMRV9VVElMX0VYUE9SVCBleHRlcm4gUEZORUdMUVVFUllERVZJQ0VTVFJJTkdF
WFRQUk9DIGxfZWdsUXVlcnlEZXZpY2VTdHJpbmdFWFQ7CiBBTkdMRV9VVElMX0VYUE9SVCBleHRl
cm4gUEZORUdMUVVFUllESVNQTEFZQVRUUklCRVhUUFJPQyBsX2VnbFF1ZXJ5RGlzcGxheUF0dHJp
YkVYVDsKK0FOR0xFX1VUSUxfRVhQT1JUIGV4dGVybiBQRk5FR0xRVUVSWURNQUJVRkZPUk1BVFNF
WFRQUk9DIGxfZWdsUXVlcnlEbWFCdWZGb3JtYXRzRVhUOworQU5HTEVfVVRJTF9FWFBPUlQgZXh0
ZXJuIFBGTkVHTFFVRVJZRE1BQlVGTU9ESUZJRVJTRVhUUFJPQyBsX2VnbFF1ZXJ5RG1hQnVmTW9k
aWZpZXJzRVhUOwogQU5HTEVfVVRJTF9FWFBPUlQgZXh0ZXJuIFBGTkVHTENSRUFURVBMQVRGT1JN
UElYTUFQU1VSRkFDRUVYVFBST0MKICAgICBsX2VnbENyZWF0ZVBsYXRmb3JtUGl4bWFwU3VyZmFj
ZUVYVDsKIEFOR0xFX1VUSUxfRVhQT1JUIGV4dGVybiBQRk5FR0xDUkVBVEVQTEFURk9STVdJTkRP
V1NVUkZBQ0VFWFRQUk9DCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS91dGls
L2dsZXNfbG9hZGVyX2F1dG9nZW4uY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvdXRpbC9n
bGVzX2xvYWRlcl9hdXRvZ2VuLmNwcAppbmRleCA5ZjFjODRhM2FlMmYzZWQzNGVkNTc5NDdlODhm
YjFkYjQ5YTUzYzQ3Li42ZGQwMjRiYTNmNGFlNzVmNWIyNDUzOGViZDUzNDFjMGU4ZjBkZjk4IDEw
MDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS91dGlsL2dsZXNfbG9hZGVyX2F1dG9n
ZW4uY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3V0aWwvZ2xlc19sb2FkZXJfYXV0
b2dlbi5jcHAKQEAgLTQ1NCw2ICs0NTQsMTcgQEAgQU5HTEVfVVRJTF9FWFBPUlQgUEZOR0xHRVRT
QU1QTEVSUEFSQU1FVEVSSVVJVlBST0MgbF9nbEdldFNhbXBsZXJQYXJhbWV0ZXJJdWl2OwogQU5H
TEVfVVRJTF9FWFBPUlQgUEZOR0xURVhCVUZGRVJQUk9DIGxfZ2xUZXhCdWZmZXI7CiBBTkdMRV9V
VElMX0VYUE9SVCBQRk5HTFRFWEJVRkZFUlJBTkdFUFJPQyBsX2dsVGV4QnVmZmVyUmFuZ2U7CiBB
TkdMRV9VVElMX0VYUE9SVCBQRk5HTFRFWFNUT1JBR0UzRE1VTFRJU0FNUExFUFJPQyBsX2dsVGV4
U3RvcmFnZTNETXVsdGlzYW1wbGU7CitBTkdMRV9VVElMX0VYUE9SVCBQRk5HTEJFR0lOUEVSRk1P
TklUT1JBTURQUk9DIGxfZ2xCZWdpblBlcmZNb25pdG9yQU1EOworQU5HTEVfVVRJTF9FWFBPUlQg
UEZOR0xERUxFVEVQRVJGTU9OSVRPUlNBTURQUk9DIGxfZ2xEZWxldGVQZXJmTW9uaXRvcnNBTUQ7
CitBTkdMRV9VVElMX0VYUE9SVCBQRk5HTEVORFBFUkZNT05JVE9SQU1EUFJPQyBsX2dsRW5kUGVy
Zk1vbml0b3JBTUQ7CitBTkdMRV9VVElMX0VYUE9SVCBQRk5HTEdFTlBFUkZNT05JVE9SU0FNRFBS
T0MgbF9nbEdlblBlcmZNb25pdG9yc0FNRDsKK0FOR0xFX1VUSUxfRVhQT1JUIFBGTkdMR0VUUEVS
Rk1PTklUT1JDT1VOVEVSREFUQUFNRFBST0MgbF9nbEdldFBlcmZNb25pdG9yQ291bnRlckRhdGFB
TUQ7CitBTkdMRV9VVElMX0VYUE9SVCBQRk5HTEdFVFBFUkZNT05JVE9SQ09VTlRFUklORk9BTURQ
Uk9DIGxfZ2xHZXRQZXJmTW9uaXRvckNvdW50ZXJJbmZvQU1EOworQU5HTEVfVVRJTF9FWFBPUlQg
UEZOR0xHRVRQRVJGTU9OSVRPUkNPVU5URVJTVFJJTkdBTURQUk9DIGxfZ2xHZXRQZXJmTW9uaXRv
ckNvdW50ZXJTdHJpbmdBTUQ7CitBTkdMRV9VVElMX0VYUE9SVCBQRk5HTEdFVFBFUkZNT05JVE9S
Q09VTlRFUlNBTURQUk9DIGxfZ2xHZXRQZXJmTW9uaXRvckNvdW50ZXJzQU1EOworQU5HTEVfVVRJ
TF9FWFBPUlQgUEZOR0xHRVRQRVJGTU9OSVRPUkdST1VQU1RSSU5HQU1EUFJPQyBsX2dsR2V0UGVy
Zk1vbml0b3JHcm91cFN0cmluZ0FNRDsKK0FOR0xFX1VUSUxfRVhQT1JUIFBGTkdMR0VUUEVSRk1P
TklUT1JHUk9VUFNBTURQUk9DIGxfZ2xHZXRQZXJmTW9uaXRvckdyb3Vwc0FNRDsKK0FOR0xFX1VU
SUxfRVhQT1JUIFBGTkdMU0VMRUNUUEVSRk1PTklUT1JDT1VOVEVSU0FNRFBST0MgbF9nbFNlbGVj
dFBlcmZNb25pdG9yQ291bnRlcnNBTUQ7CiBBTkdMRV9VVElMX0VYUE9SVCBQRk5HTERSQVdBUlJB
WVNJTlNUQU5DRURCQVNFSU5TVEFOQ0VBTkdMRVBST0MKICAgICBsX2dsRHJhd0FycmF5c0luc3Rh
bmNlZEJhc2VJbnN0YW5jZUFOR0xFOwogQU5HTEVfVVRJTF9FWFBPUlQgUEZOR0xEUkFXRUxFTUVO
VFNJTlNUQU5DRURCQVNFVkVSVEVYQkFTRUlOU1RBTkNFQU5HTEVQUk9DCkBAIC0xNDYxLDYgKzE0
NzIsMjggQEAgdm9pZCBMb2FkR0xFUyhMb2FkUHJvYyBsb2FkUHJvYykKICAgICBsX2dsVGV4QnVm
ZmVyUmFuZ2UgPSByZWludGVycHJldF9jYXN0PFBGTkdMVEVYQlVGRkVSUkFOR0VQUk9DPihsb2Fk
UHJvYygiZ2xUZXhCdWZmZXJSYW5nZSIpKTsKICAgICBsX2dsVGV4U3RvcmFnZTNETXVsdGlzYW1w
bGUgPQogICAgICAgICByZWludGVycHJldF9jYXN0PFBGTkdMVEVYU1RPUkFHRTNETVVMVElTQU1Q
TEVQUk9DPihsb2FkUHJvYygiZ2xUZXhTdG9yYWdlM0RNdWx0aXNhbXBsZSIpKTsKKyAgICBsX2ds
QmVnaW5QZXJmTW9uaXRvckFNRCA9CisgICAgICAgIHJlaW50ZXJwcmV0X2Nhc3Q8UEZOR0xCRUdJ
TlBFUkZNT05JVE9SQU1EUFJPQz4obG9hZFByb2MoImdsQmVnaW5QZXJmTW9uaXRvckFNRCIpKTsK
KyAgICBsX2dsRGVsZXRlUGVyZk1vbml0b3JzQU1EID0KKyAgICAgICAgcmVpbnRlcnByZXRfY2Fz
dDxQRk5HTERFTEVURVBFUkZNT05JVE9SU0FNRFBST0M+KGxvYWRQcm9jKCJnbERlbGV0ZVBlcmZN
b25pdG9yc0FNRCIpKTsKKyAgICBsX2dsRW5kUGVyZk1vbml0b3JBTUQgPQorICAgICAgICByZWlu
dGVycHJldF9jYXN0PFBGTkdMRU5EUEVSRk1PTklUT1JBTURQUk9DPihsb2FkUHJvYygiZ2xFbmRQ
ZXJmTW9uaXRvckFNRCIpKTsKKyAgICBsX2dsR2VuUGVyZk1vbml0b3JzQU1EID0KKyAgICAgICAg
cmVpbnRlcnByZXRfY2FzdDxQRk5HTEdFTlBFUkZNT05JVE9SU0FNRFBST0M+KGxvYWRQcm9jKCJn
bEdlblBlcmZNb25pdG9yc0FNRCIpKTsKKyAgICBsX2dsR2V0UGVyZk1vbml0b3JDb3VudGVyRGF0
YUFNRCA9IHJlaW50ZXJwcmV0X2Nhc3Q8UEZOR0xHRVRQRVJGTU9OSVRPUkNPVU5URVJEQVRBQU1E
UFJPQz4oCisgICAgICAgIGxvYWRQcm9jKCJnbEdldFBlcmZNb25pdG9yQ291bnRlckRhdGFBTUQi
KSk7CisgICAgbF9nbEdldFBlcmZNb25pdG9yQ291bnRlckluZm9BTUQgPSByZWludGVycHJldF9j
YXN0PFBGTkdMR0VUUEVSRk1PTklUT1JDT1VOVEVSSU5GT0FNRFBST0M+KAorICAgICAgICBsb2Fk
UHJvYygiZ2xHZXRQZXJmTW9uaXRvckNvdW50ZXJJbmZvQU1EIikpOworICAgIGxfZ2xHZXRQZXJm
TW9uaXRvckNvdW50ZXJTdHJpbmdBTUQgPSByZWludGVycHJldF9jYXN0PFBGTkdMR0VUUEVSRk1P
TklUT1JDT1VOVEVSU1RSSU5HQU1EUFJPQz4oCisgICAgICAgIGxvYWRQcm9jKCJnbEdldFBlcmZN
b25pdG9yQ291bnRlclN0cmluZ0FNRCIpKTsKKyAgICBsX2dsR2V0UGVyZk1vbml0b3JDb3VudGVy
c0FNRCA9IHJlaW50ZXJwcmV0X2Nhc3Q8UEZOR0xHRVRQRVJGTU9OSVRPUkNPVU5URVJTQU1EUFJP
Qz4oCisgICAgICAgIGxvYWRQcm9jKCJnbEdldFBlcmZNb25pdG9yQ291bnRlcnNBTUQiKSk7Cisg
ICAgbF9nbEdldFBlcmZNb25pdG9yR3JvdXBTdHJpbmdBTUQgPSByZWludGVycHJldF9jYXN0PFBG
TkdMR0VUUEVSRk1PTklUT1JHUk9VUFNUUklOR0FNRFBST0M+KAorICAgICAgICBsb2FkUHJvYygi
Z2xHZXRQZXJmTW9uaXRvckdyb3VwU3RyaW5nQU1EIikpOworICAgIGxfZ2xHZXRQZXJmTW9uaXRv
ckdyb3Vwc0FNRCA9CisgICAgICAgIHJlaW50ZXJwcmV0X2Nhc3Q8UEZOR0xHRVRQRVJGTU9OSVRP
UkdST1VQU0FNRFBST0M+KGxvYWRQcm9jKCJnbEdldFBlcmZNb25pdG9yR3JvdXBzQU1EIikpOwor
ICAgIGxfZ2xTZWxlY3RQZXJmTW9uaXRvckNvdW50ZXJzQU1EID0gcmVpbnRlcnByZXRfY2FzdDxQ
Rk5HTFNFTEVDVFBFUkZNT05JVE9SQ09VTlRFUlNBTURQUk9DPigKKyAgICAgICAgbG9hZFByb2Mo
ImdsU2VsZWN0UGVyZk1vbml0b3JDb3VudGVyc0FNRCIpKTsKICAgICBsX2dsRHJhd0FycmF5c0lu
c3RhbmNlZEJhc2VJbnN0YW5jZUFOR0xFID0KICAgICAgICAgcmVpbnRlcnByZXRfY2FzdDxQRk5H
TERSQVdBUlJBWVNJTlNUQU5DRURCQVNFSU5TVEFOQ0VBTkdMRVBST0M+KAogICAgICAgICAgICAg
bG9hZFByb2MoImdsRHJhd0FycmF5c0luc3RhbmNlZEJhc2VJbnN0YW5jZUFOR0xFIikpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvdXRpbC9nbGVzX2xvYWRlcl9hdXRvZ2Vu
LmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS91dGlsL2dsZXNfbG9hZGVyX2F1dG9nZW4uaApp
bmRleCA2ZDY0OTBjMTE5MDJkODdhNWZiYzYwNWE3ZTkxNDY5ZmRhNTBkYThiLi5iYzlkNWI0Mjhi
YjM5YzQ0ZjYxYTViODhhMmQ1MGM1M2NiOWIwNmRiIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9BTkdMRS91dGlsL2dsZXNfbG9hZGVyX2F1dG9nZW4uaAorKysgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9BTkdMRS91dGlsL2dsZXNfbG9hZGVyX2F1dG9nZW4uaApAQCAtNDYxLDYgKzQ2MSwxNyBA
QAogI2RlZmluZSBnbFRleEJ1ZmZlciBsX2dsVGV4QnVmZmVyCiAjZGVmaW5lIGdsVGV4QnVmZmVy
UmFuZ2UgbF9nbFRleEJ1ZmZlclJhbmdlCiAjZGVmaW5lIGdsVGV4U3RvcmFnZTNETXVsdGlzYW1w
bGUgbF9nbFRleFN0b3JhZ2UzRE11bHRpc2FtcGxlCisjZGVmaW5lIGdsQmVnaW5QZXJmTW9uaXRv
ckFNRCBsX2dsQmVnaW5QZXJmTW9uaXRvckFNRAorI2RlZmluZSBnbERlbGV0ZVBlcmZNb25pdG9y
c0FNRCBsX2dsRGVsZXRlUGVyZk1vbml0b3JzQU1ECisjZGVmaW5lIGdsRW5kUGVyZk1vbml0b3JB
TUQgbF9nbEVuZFBlcmZNb25pdG9yQU1ECisjZGVmaW5lIGdsR2VuUGVyZk1vbml0b3JzQU1EIGxf
Z2xHZW5QZXJmTW9uaXRvcnNBTUQKKyNkZWZpbmUgZ2xHZXRQZXJmTW9uaXRvckNvdW50ZXJEYXRh
QU1EIGxfZ2xHZXRQZXJmTW9uaXRvckNvdW50ZXJEYXRhQU1ECisjZGVmaW5lIGdsR2V0UGVyZk1v
bml0b3JDb3VudGVySW5mb0FNRCBsX2dsR2V0UGVyZk1vbml0b3JDb3VudGVySW5mb0FNRAorI2Rl
ZmluZSBnbEdldFBlcmZNb25pdG9yQ291bnRlclN0cmluZ0FNRCBsX2dsR2V0UGVyZk1vbml0b3JD
b3VudGVyU3RyaW5nQU1ECisjZGVmaW5lIGdsR2V0UGVyZk1vbml0b3JDb3VudGVyc0FNRCBsX2ds
R2V0UGVyZk1vbml0b3JDb3VudGVyc0FNRAorI2RlZmluZSBnbEdldFBlcmZNb25pdG9yR3JvdXBT
dHJpbmdBTUQgbF9nbEdldFBlcmZNb25pdG9yR3JvdXBTdHJpbmdBTUQKKyNkZWZpbmUgZ2xHZXRQ
ZXJmTW9uaXRvckdyb3Vwc0FNRCBsX2dsR2V0UGVyZk1vbml0b3JHcm91cHNBTUQKKyNkZWZpbmUg
Z2xTZWxlY3RQZXJmTW9uaXRvckNvdW50ZXJzQU1EIGxfZ2xTZWxlY3RQZXJmTW9uaXRvckNvdW50
ZXJzQU1ECiAjZGVmaW5lIGdsRHJhd0FycmF5c0luc3RhbmNlZEJhc2VJbnN0YW5jZUFOR0xFIGxf
Z2xEcmF3QXJyYXlzSW5zdGFuY2VkQmFzZUluc3RhbmNlQU5HTEUKICNkZWZpbmUgZ2xEcmF3RWxl
bWVudHNJbnN0YW5jZWRCYXNlVmVydGV4QmFzZUluc3RhbmNlQU5HTEUgXAogICAgIGxfZ2xEcmF3
RWxlbWVudHNJbnN0YW5jZWRCYXNlVmVydGV4QmFzZUluc3RhbmNlQU5HTEUKQEAgLTEyNTgsNiAr
MTI2OSwxNyBAQCBBTkdMRV9VVElMX0VYUE9SVCBleHRlcm4gUEZOR0xHRVRTQU1QTEVSUEFSQU1F
VEVSSVVJVlBST0MgbF9nbEdldFNhbXBsZXJQYXJhbWV0ZQogQU5HTEVfVVRJTF9FWFBPUlQgZXh0
ZXJuIFBGTkdMVEVYQlVGRkVSUFJPQyBsX2dsVGV4QnVmZmVyOwogQU5HTEVfVVRJTF9FWFBPUlQg
ZXh0ZXJuIFBGTkdMVEVYQlVGRkVSUkFOR0VQUk9DIGxfZ2xUZXhCdWZmZXJSYW5nZTsKIEFOR0xF
X1VUSUxfRVhQT1JUIGV4dGVybiBQRk5HTFRFWFNUT1JBR0UzRE1VTFRJU0FNUExFUFJPQyBsX2ds
VGV4U3RvcmFnZTNETXVsdGlzYW1wbGU7CitBTkdMRV9VVElMX0VYUE9SVCBleHRlcm4gUEZOR0xC
RUdJTlBFUkZNT05JVE9SQU1EUFJPQyBsX2dsQmVnaW5QZXJmTW9uaXRvckFNRDsKK0FOR0xFX1VU
SUxfRVhQT1JUIGV4dGVybiBQRk5HTERFTEVURVBFUkZNT05JVE9SU0FNRFBST0MgbF9nbERlbGV0
ZVBlcmZNb25pdG9yc0FNRDsKK0FOR0xFX1VUSUxfRVhQT1JUIGV4dGVybiBQRk5HTEVORFBFUkZN
T05JVE9SQU1EUFJPQyBsX2dsRW5kUGVyZk1vbml0b3JBTUQ7CitBTkdMRV9VVElMX0VYUE9SVCBl
eHRlcm4gUEZOR0xHRU5QRVJGTU9OSVRPUlNBTURQUk9DIGxfZ2xHZW5QZXJmTW9uaXRvcnNBTUQ7
CitBTkdMRV9VVElMX0VYUE9SVCBleHRlcm4gUEZOR0xHRVRQRVJGTU9OSVRPUkNPVU5URVJEQVRB
QU1EUFJPQyBsX2dsR2V0UGVyZk1vbml0b3JDb3VudGVyRGF0YUFNRDsKK0FOR0xFX1VUSUxfRVhQ
T1JUIGV4dGVybiBQRk5HTEdFVFBFUkZNT05JVE9SQ09VTlRFUklORk9BTURQUk9DIGxfZ2xHZXRQ
ZXJmTW9uaXRvckNvdW50ZXJJbmZvQU1EOworQU5HTEVfVVRJTF9FWFBPUlQgZXh0ZXJuIFBGTkdM
R0VUUEVSRk1PTklUT1JDT1VOVEVSU1RSSU5HQU1EUFJPQyBsX2dsR2V0UGVyZk1vbml0b3JDb3Vu
dGVyU3RyaW5nQU1EOworQU5HTEVfVVRJTF9FWFBPUlQgZXh0ZXJuIFBGTkdMR0VUUEVSRk1PTklU
T1JDT1VOVEVSU0FNRFBST0MgbF9nbEdldFBlcmZNb25pdG9yQ291bnRlcnNBTUQ7CitBTkdMRV9V
VElMX0VYUE9SVCBleHRlcm4gUEZOR0xHRVRQRVJGTU9OSVRPUkdST1VQU1RSSU5HQU1EUFJPQyBs
X2dsR2V0UGVyZk1vbml0b3JHcm91cFN0cmluZ0FNRDsKK0FOR0xFX1VUSUxfRVhQT1JUIGV4dGVy
biBQRk5HTEdFVFBFUkZNT05JVE9SR1JPVVBTQU1EUFJPQyBsX2dsR2V0UGVyZk1vbml0b3JHcm91
cHNBTUQ7CitBTkdMRV9VVElMX0VYUE9SVCBleHRlcm4gUEZOR0xTRUxFQ1RQRVJGTU9OSVRPUkNP
VU5URVJTQU1EUFJPQyBsX2dsU2VsZWN0UGVyZk1vbml0b3JDb3VudGVyc0FNRDsKIEFOR0xFX1VU
SUxfRVhQT1JUIGV4dGVybiBQRk5HTERSQVdBUlJBWVNJTlNUQU5DRURCQVNFSU5TVEFOQ0VBTkdM
RVBST0MKICAgICBsX2dsRHJhd0FycmF5c0luc3RhbmNlZEJhc2VJbnN0YW5jZUFOR0xFOwogQU5H
TEVfVVRJTF9FWFBPUlQgZXh0ZXJuIFBGTkdMRFJBV0VMRU1FTlRTSU5TVEFOQ0VEQkFTRVZFUlRF
WEJBU0VJTlNUQU5DRUFOR0xFUFJPQwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvdXRpbC9zaGFkZXJfdXRpbHMuY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvdXRpbC9z
aGFkZXJfdXRpbHMuY3BwCmluZGV4IGFmYzQxZDFkODMxZWUxYjE5MjM4N2Y1ZWM2NDA3ZDY0N2Jk
OWRmMTkuLjQ0NzNhMTM4YmYwZGFkNTMxMzkwNTk5ZjAzNzIyZTdiY2E3YjFkMzQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3V0aWwvc2hhZGVyX3V0aWxzLmNwcAorKysgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS91dGlsL3NoYWRlcl91dGlscy5jcHAKQEAgLTEzNSw2ICsx
MzUsMjggQEAgdm9pZCBLSFJPTk9TX0FQSUVOVFJZIERlYnVnTWVzc2FnZUNhbGxiYWNrKEdMZW51
bSBzb3VyY2UsCiAgICAgICAgIGNhbGxiYWNrQ2hhaW4oc291cmNlLCB0eXBlLCBpZCwgc2V2ZXJp
dHksIGxlbmd0aCwgbWVzc2FnZSwgZ0NhbGxiYWNrQ2hhaW5Vc2VyUGFyYW0pOwogICAgIH0KIH0K
Kwordm9pZCBHZXRQZXJmQ291bnRlclZhbHVlKGNvbnN0IENvdW50ZXJOYW1lVG9JbmRleE1hcCAm
Y291bnRlckluZGV4TWFwLAorICAgICAgICAgICAgICAgICAgICAgICAgIHN0ZDo6dmVjdG9yPGFu
Z2xlOjpQZXJmTW9uaXRvclRyaXBsZXQ+ICZ0cmlwbGV0cywKKyAgICAgICAgICAgICAgICAgICAg
ICAgICBjb25zdCBjaGFyICpuYW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgIEdMdWludCAq
Y291bnRlck91dCkKK3sKKyAgICBhdXRvIGl0ZXIgPSBjb3VudGVySW5kZXhNYXAuZmluZChuYW1l
KTsKKyAgICBBU1NFUlQoaXRlciAhPSBjb3VudGVySW5kZXhNYXAuZW5kKCkpOworICAgIEdMdWlu
dCBjb3VudGVySW5kZXggPSBpdGVyLT5zZWNvbmQ7CisKKyAgICBmb3IgKGNvbnN0IGFuZ2xlOjpQ
ZXJmTW9uaXRvclRyaXBsZXQgJnRyaXBsZXQgOiB0cmlwbGV0cykKKyAgICB7CisgICAgICAgIEFT
U0VSVCh0cmlwbGV0Lmdyb3VwID09IDApOworICAgICAgICBpZiAodHJpcGxldC5jb3VudGVyID09
IGNvdW50ZXJJbmRleCkKKyAgICAgICAgeworICAgICAgICAgICAgKmNvdW50ZXJPdXQgPSB0cmlw
bGV0LnZhbHVlOworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CisgICAgfQorCisgICAg
VU5SRUFDSEFCTEUoKTsKK30KIH0gIC8vIG5hbWVzcGFjZQogCiBHTHVpbnQgQ29tcGlsZVNoYWRl
cihHTGVudW0gdHlwZSwgY29uc3QgY2hhciAqc291cmNlKQpAQCAtMzcyLDYgKzM5NCw5OCBAQCB2
b2lkIEVuYWJsZURlYnVnQ2FsbGJhY2soR0xERUJVR1BST0MgY2FsbGJhY2tDaGFpbiwgY29uc3Qg
dm9pZCAqdXNlclBhcmFtKQogICAgIGdsRGVidWdNZXNzYWdlQ2FsbGJhY2tLSFIoRGVidWdNZXNz
YWdlQ2FsbGJhY2ssIHJlaW50ZXJwcmV0X2Nhc3Q8Y29uc3Qgdm9pZCAqPihjYWxsYmFja0NoYWlu
KSk7CiB9CiAKK0NvdW50ZXJOYW1lVG9JbmRleE1hcCBCdWlsZENvdW50ZXJOYW1lVG9JbmRleE1h
cCgpCit7CisgICAgR0xpbnQgbnVtQ291bnRlcnMgPSAwOworICAgIGdsR2V0UGVyZk1vbml0b3JD
b3VudGVyc0FNRCgwLCAmbnVtQ291bnRlcnMsIG51bGxwdHIsIDAsIG51bGxwdHIpOworICAgIGlm
IChnbEdldEVycm9yKCkgIT0gR0xfTk9fRVJST1IpCisgICAgeworICAgICAgICByZXR1cm4ge307
CisgICAgfQorCisgICAgc3RkOjp2ZWN0b3I8R0x1aW50PiBjb3VudGVySW5kZXhlcyhudW1Db3Vu
dGVycywgMCk7CisgICAgZ2xHZXRQZXJmTW9uaXRvckNvdW50ZXJzQU1EKDAsIG51bGxwdHIsIG51
bGxwdHIsIG51bUNvdW50ZXJzLCBjb3VudGVySW5kZXhlcy5kYXRhKCkpOworICAgIGlmIChnbEdl
dEVycm9yKCkgIT0gR0xfTk9fRVJST1IpCisgICAgeworICAgICAgICByZXR1cm4ge307CisgICAg
fQorCisgICAgQ291bnRlck5hbWVUb0luZGV4TWFwIGluZGV4TWFwOworCisgICAgZm9yIChHTHVp
bnQgY291bnRlckluZGV4IDogY291bnRlckluZGV4ZXMpCisgICAgeworICAgICAgICBzdGF0aWMg
Y29uc3RleHByIHNpemVfdCBrQnVmU2l6ZSA9IDEwMDA7CisgICAgICAgIGNoYXIgYnVmZmVyW2tC
dWZTaXplXSAgICAgICAgICAgID0ge307CisgICAgICAgIGdsR2V0UGVyZk1vbml0b3JDb3VudGVy
U3RyaW5nQU1EKDAsIGNvdW50ZXJJbmRleCwga0J1ZlNpemUsIG51bGxwdHIsIGJ1ZmZlcik7Cisg
ICAgICAgIGlmIChnbEdldEVycm9yKCkgIT0gR0xfTk9fRVJST1IpCisgICAgICAgIHsKKyAgICAg
ICAgICAgIHJldHVybiB7fTsKKyAgICAgICAgfQorCisgICAgICAgIGluZGV4TWFwW2J1ZmZlcl0g
PSBjb3VudGVySW5kZXg7CisgICAgfQorCisgICAgcmV0dXJuIGluZGV4TWFwOworfQorCitzdGQ6
OnZlY3RvcjxhbmdsZTo6UGVyZk1vbml0b3JUcmlwbGV0PiBHZXRQZXJmTW9uaXRvclRyaXBsZXRz
KCkKK3sKKyAgICBHTHVpbnQgcmVzdWx0U2l6ZSA9IDA7CisgICAgZ2xHZXRQZXJmTW9uaXRvckNv
dW50ZXJEYXRhQU1EKDAsIEdMX1BFUkZNT05fUkVTVUxUX1NJWkVfQU1ELCBzaXplb2YoR0x1aW50
KSwgJnJlc3VsdFNpemUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG51bGxw
dHIpOworICAgIGlmIChnbEdldEVycm9yKCkgIT0gR0xfTk9fRVJST1IgfHwgcmVzdWx0U2l6ZSA9
PSAwKQorICAgIHsKKyAgICAgICAgcmV0dXJuIHt9OworICAgIH0KKworICAgIHN0ZDo6dmVjdG9y
PGFuZ2xlOjpQZXJmTW9uaXRvclRyaXBsZXQ+IHBlcmZSZXN1bHRzKHJlc3VsdFNpemUgLworICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVv
ZihhbmdsZTo6UGVyZk1vbml0b3JUcmlwbGV0KSk7CisgICAgZ2xHZXRQZXJmTW9uaXRvckNvdW50
ZXJEYXRhQU1EKAorICAgICAgICAwLCBHTF9QRVJGTU9OX1JFU1VMVF9BTUQsIHN0YXRpY19jYXN0
PEdMc2l6ZWk+KHBlcmZSZXN1bHRzLnNpemUoKSAqIHNpemVvZihwZXJmUmVzdWx0c1swXSkpLAor
ICAgICAgICAmcGVyZlJlc3VsdHMuZGF0YSgpLT5ncm91cCwgbnVsbHB0cik7CisKKyAgICBpZiAo
Z2xHZXRFcnJvcigpICE9IEdMX05PX0VSUk9SKQorICAgIHsKKyAgICAgICAgcmV0dXJuIHt9Owor
ICAgIH0KKworICAgIHJldHVybiBwZXJmUmVzdWx0czsKK30KKworYW5nbGU6OlZ1bGthblBlcmZD
b3VudGVycyBHZXRQZXJmQ291bnRlcnMoY29uc3QgQ291bnRlck5hbWVUb0luZGV4TWFwICZpbmRl
eE1hcCkKK3sKKyAgICBzdGQ6OnZlY3RvcjxhbmdsZTo6UGVyZk1vbml0b3JUcmlwbGV0PiBwZXJm
UmVzdWx0cyA9IEdldFBlcmZNb25pdG9yVHJpcGxldHMoKTsKKworICAgIGFuZ2xlOjpWdWxrYW5Q
ZXJmQ291bnRlcnMgY291bnRlcnM7CisKKyNkZWZpbmUgQU5HTEVfVU5QQUNLX1BFUkZfQ09VTlRF
UihDT1VOVEVSKSBcCisgICAgR2V0UGVyZkNvdW50ZXJWYWx1ZShpbmRleE1hcCwgcGVyZlJlc3Vs
dHMsICNDT1VOVEVSLCAmY291bnRlcnMuQ09VTlRFUik7CisKKyAgICBBTkdMRV9WS19QRVJGX0NP
VU5URVJTX1goQU5HTEVfVU5QQUNLX1BFUkZfQ09VTlRFUikKKworI3VuZGVmIEFOR0xFX1VOUEFD
S19QRVJGX0NPVU5URVIKKworICAgIHJldHVybiBjb3VudGVyczsKK30KKworQ291bnRlck5hbWVU
b0luZGV4TWFwIEJ1aWxkQ291bnRlck5hbWVUb1ZhbHVlTWFwKCkKK3sKKyAgICBDb3VudGVyTmFt
ZVRvSW5kZXhNYXAgaW5kZXhNYXAgICAgICAgICAgICAgICAgICAgICA9IEJ1aWxkQ291bnRlck5h
bWVUb0luZGV4TWFwKCk7CisgICAgc3RkOjp2ZWN0b3I8YW5nbGU6OlBlcmZNb25pdG9yVHJpcGxl
dD4gcGVyZlJlc3VsdHMgPSBHZXRQZXJmTW9uaXRvclRyaXBsZXRzKCk7CisKKyAgICBDb3VudGVy
TmFtZVRvVmFsdWVNYXAgdmFsdWVNYXA7CisKKyAgICBmb3IgKGNvbnN0IGF1dG8gJml0ZXIgOiBp
bmRleE1hcCkKKyAgICB7CisgICAgICAgIGNvbnN0IHN0ZDo6c3RyaW5nICZuYW1lID0gaXRlci5m
aXJzdDsKKyAgICAgICAgR0x1aW50IGluZGV4ICAgICAgICAgICAgPSBpdGVyLnNlY29uZDsKKwor
ICAgICAgICB2YWx1ZU1hcFtuYW1lXSA9IHBlcmZSZXN1bHRzW2luZGV4XS52YWx1ZTsKKyAgICB9
CisKKyAgICByZXR1cm4gdmFsdWVNYXA7Cit9CisKIG5hbWVzcGFjZSBhbmdsZQogewogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS91dGlsL3NoYWRlcl91dGlscy5oIGIvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvdXRpbC9zaGFkZXJfdXRpbHMuaAppbmRleCBlMmVmY2M3YWE0
MTk2NDkxMjI3NTE5NGE0YmFhMTZlYjg0N2ViNTMyLi5kNDkwYjE3NDE4OTZjMmJiY2IwY2RiNGQ5
OGNmODdiYzE2MWMwNGJiIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS91dGls
L3NoYWRlcl91dGlscy5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3V0aWwvc2hhZGVy
X3V0aWxzLmgKQEAgLTgsOSArOCwxMSBAQAogI2RlZmluZSBTQU1QTEVfVVRJTF9TSEFERVJfVVRJ
TFNfSAogCiAjaW5jbHVkZSA8ZnVuY3Rpb25hbD4KKyNpbmNsdWRlIDxtYXA+CiAjaW5jbHVkZSA8
c3RyaW5nPgogI2luY2x1ZGUgPHZlY3Rvcj4KIAorI2luY2x1ZGUgImNvbW1vbi9hbmdsZXV0aWxz
LmgiCiAjaW5jbHVkZSAidXRpbC91dGlsX2V4cG9ydC5oIgogI2luY2x1ZGUgInV0aWwvdXRpbF9n
bC5oIgogCkBAIC01MSw2ICs1MywxNCBAQCBBTkdMRV9VVElMX0VYUE9SVCBHTHVpbnQgTG9hZEJp
bmFyeVByb2dyYW1FUzMoY29uc3Qgc3RkOjp2ZWN0b3I8dWludDhfdD4gJmJpbmFyeQogCiBBTkdM
RV9VVElMX0VYUE9SVCB2b2lkIEVuYWJsZURlYnVnQ2FsbGJhY2soR0xERUJVR1BST0MgY2FsbGJh
Y2tDaGFpbiwgY29uc3Qgdm9pZCAqdXNlclBhcmFtKTsKIAordXNpbmcgQ291bnRlck5hbWVUb0lu
ZGV4TWFwID0gc3RkOjptYXA8c3RkOjpzdHJpbmcsIEdMdWludD47Cit1c2luZyBDb3VudGVyTmFt
ZVRvVmFsdWVNYXAgPSBzdGQ6Om1hcDxzdGQ6OnN0cmluZywgR0x1aW50PjsKKworQU5HTEVfVVRJ
TF9FWFBPUlQgQ291bnRlck5hbWVUb0luZGV4TWFwIEJ1aWxkQ291bnRlck5hbWVUb0luZGV4TWFw
KCk7CitBTkdMRV9VVElMX0VYUE9SVCBhbmdsZTo6VnVsa2FuUGVyZkNvdW50ZXJzIEdldFBlcmZD
b3VudGVycyhjb25zdCBDb3VudGVyTmFtZVRvSW5kZXhNYXAgJmluZGV4TWFwKTsKK0FOR0xFX1VU
SUxfRVhQT1JUIENvdW50ZXJOYW1lVG9WYWx1ZU1hcCBCdWlsZENvdW50ZXJOYW1lVG9WYWx1ZU1h
cCgpOworQU5HTEVfVVRJTF9FWFBPUlQgc3RkOjp2ZWN0b3I8YW5nbGU6OlBlcmZNb25pdG9yVHJp
cGxldD4gR2V0UGVyZk1vbml0b3JUcmlwbGV0cygpOworCiBuYW1lc3BhY2UgYW5nbGUKIHsKIApk
aWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvdXRpbC94MTEvWDExV2luZG93LmNw
cCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3V0aWwveDExL1gxMVdpbmRvdy5jcHAKaW5kZXgg
NzQ5ZmY0ZjhiODc4YzMyNmM3ZjRkNmQxZmI5NGE4ZDNjMzRlNDc0MC4uOGNkYjQ0ODk2ODUzZjhj
NjcxYjhkYjQwZDY3Y2JiM2M5ZWQ1MjgxMyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvdXRpbC94MTEvWDExV2luZG93LmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS91dGlsL3gxMS9YMTFXaW5kb3cuY3BwCkBAIC0zOTYsNiArMzk2LDEyIEBAIEVHTE5hdGl2ZVdp
bmRvd1R5cGUgWDExV2luZG93OjpnZXROYXRpdmVXaW5kb3coKSBjb25zdAogICAgIHJldHVybiBt
V2luZG93OwogfQogCit2b2lkICpYMTFXaW5kb3c6OmdldFBsYXRmb3JtRXh0ZW5zaW9uKCkKK3sK
KyAgICAvLyBYMTEgbmF0aXZlIHdpbmRvdyBmb3IgZWdsQ3JlYXRlU3VyZmFjZVBsYXRmb3JtRVhU
IGlzIFdpbmRvdyoKKyAgICByZXR1cm4gJm1XaW5kb3c7Cit9CisKIEVHTE5hdGl2ZURpc3BsYXlU
eXBlIFgxMVdpbmRvdzo6Z2V0TmF0aXZlRGlzcGxheSgpIGNvbnN0CiB7CiAgICAgcmV0dXJuIHJl
aW50ZXJwcmV0X2Nhc3Q8RUdMTmF0aXZlRGlzcGxheVR5cGU+KG1EaXNwbGF5KTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3V0aWwveDExL1gxMVdpbmRvdy5oIGIvU291cmNl
L1RoaXJkUGFydHkvQU5HTEUvdXRpbC94MTEvWDExV2luZG93LmgKaW5kZXggMzgwM2M5OWZlNmI2
NTM2ODQ2YTljNzM5MjI0OTgwNGU5ZTk5MGFmNy4uMGI1MDJlNGYzZGMyZmU4ODMyODQ2ZGE0Mzgw
MWE4ZmJlZjc3ZTFhNiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvdXRpbC94
MTEvWDExV2luZG93LmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvdXRpbC94MTEvWDEx
V2luZG93LmgKQEAgLTI5LDYgKzI5LDcgQEAgY2xhc3MgQU5HTEVfVVRJTF9FWFBPUlQgWDExV2lu
ZG93IDogcHVibGljIE9TV2luZG93CiAKICAgICB2b2lkIHJlc2V0TmF0aXZlV2luZG93KCkgb3Zl
cnJpZGU7CiAgICAgRUdMTmF0aXZlV2luZG93VHlwZSBnZXROYXRpdmVXaW5kb3coKSBjb25zdCBv
dmVycmlkZTsKKyAgICB2b2lkICpnZXRQbGF0Zm9ybUV4dGVuc2lvbigpIG92ZXJyaWRlOwogICAg
IEVHTE5hdGl2ZURpc3BsYXlUeXBlIGdldE5hdGl2ZURpc3BsYXkoKSBjb25zdCBvdmVycmlkZTsK
IAogICAgIHZvaWQgbWVzc2FnZUxvb3AoKSBvdmVycmlkZTsK
</data>
<flag name="commit-queue"
          id="483567"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
      

    </bug>

</bugzilla>