<?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>220189</bug_id>
          
          <creation_ts>2020-12-28 21:29:56 -0800</creation_ts>
          <short_desc>[JSC] Update WebAssembly instance&apos;s exports object</short_desc>
          <delta_ts>2021-01-05 14:19:34 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Yusuke Suzuki">ysuzuki</reporter>
          <assigned_to name="Yusuke Suzuki">ysuzuki</assigned_to>
          <cc>ashvayka</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>saam</cc>
    
    <cc>tzagallo</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1716800</commentid>
    <comment_count>0</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-12-28 21:29:56 -0800</bug_when>
    <thetext>[JSC] Update WebAssembly instance&apos;s exports object</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1716801</commentid>
    <comment_count>1</comment_count>
      <attachid>416835</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-12-28 21:37:58 -0800</bug_when>
    <thetext>Created attachment 416835
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1716803</commentid>
    <comment_count>2</comment_count>
      <attachid>416836</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-12-29 01:47:42 -0800</bug_when>
    <thetext>Created attachment 416836
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1716841</commentid>
    <comment_count>3</comment_count>
      <attachid>416836</attachid>
    <who name="Alexey Shvayka">ashvayka</who>
    <bug_when>2020-12-30 09:49:07 -0800</bug_when>
    <thetext>Comment on attachment 416836
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=416836&amp;action=review

r=me

&gt; Source/JavaScriptCore/wasm/js/WebAssemblyModuleRecord.cpp:512
&gt; +    objectConstructorFreeze(globalObject, exportsObject);

Nice: the fast path for final objects will be taken.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1716845</commentid>
    <comment_count>4</comment_count>
      <attachid>416836</attachid>
    <who name="Alexey Shvayka">ashvayka</who>
    <bug_when>2020-12-30 10:32:19 -0800</bug_when>
    <thetext>Comment on attachment 416836
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=416836&amp;action=review

&gt; Source/JavaScriptCore/wasm/js/WebAssemblyModuleRecord.cpp:513
&gt; +    RETURN_IF_EXCEPTION(scope, void());

Is propertyName guaranteed to be non-index? putDirect() has an assert for that.
If it&apos;s never an index, we can just do `exportsObject-&gt;freeze(vm)` and remove this exception check.
Otherwise, we should use putDirectMaybeIndex() and scope.assertNoException() since SetIntegrityLevel can&apos;t throw per spec, nor it can return `false`.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1716875</commentid>
    <comment_count>5</comment_count>
      <attachid>416836</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-12-30 15:52:28 -0800</bug_when>
    <thetext>Comment on attachment 416836
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=416836&amp;action=review

Thanks!

&gt;&gt; Source/JavaScriptCore/wasm/js/WebAssemblyModuleRecord.cpp:513
&gt;&gt; +    RETURN_IF_EXCEPTION(scope, void());
&gt; 
&gt; Is propertyName guaranteed to be non-index? putDirect() has an assert for that.
&gt; If it&apos;s never an index, we can just do `exportsObject-&gt;freeze(vm)` and remove this exception check.
&gt; Otherwise, we should use putDirectMaybeIndex() and scope.assertNoException() since SetIntegrityLevel can&apos;t throw per spec, nor it can return `false`.

Oops, nice catch. I don&apos;t think this is guaranteed. I&apos;ll add some tests &amp; use putDirectIndex if it is index.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1716878</commentid>
    <comment_count>6</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-12-30 16:05:25 -0800</bug_when>
    <thetext>Committed r271112: &lt;https://trac.webkit.org/changeset/271112&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1716879</commentid>
    <comment_count>7</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-12-30 16:06:15 -0800</bug_when>
    <thetext>&lt;rdar://problem/72744953&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1717421</commentid>
    <comment_count>8</comment_count>
    <who name="Saam Barati">saam</who>
    <bug_when>2021-01-05 12:13:54 -0800</bug_when>
    <thetext>This seems to have made richards-wasm 70% slower in JS2</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1717423</commentid>
    <comment_count>9</comment_count>
    <who name="Saam Barati">saam</who>
    <bug_when>2021-01-05 12:14:13 -0800</bug_when>
    <thetext>(In reply to Saam Barati from comment #8)
&gt; This seems to have made richards-wasm 70% slower in JS2

The &quot;runtime&quot; score got 150% worse. Compile times are not effected</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1717426</commentid>
    <comment_count>10</comment_count>
    <who name="Saam Barati">saam</who>
    <bug_when>2021-01-05 12:18:17 -0800</bug_when>
    <thetext>My guess is this &quot;breaks&quot; the JS -&gt; Wasm call fast path</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1717429</commentid>
    <comment_count>11</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2021-01-05 12:21:29 -0800</bug_when>
    <thetext>Looking.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1717474</commentid>
    <comment_count>12</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2021-01-05 14:19:34 -0800</bug_when>
    <thetext>(In reply to Yusuke Suzuki from comment #11)
&gt; Looking.

Found a fun issue. Will fix it soon in https://bugs.webkit.org/show_bug.cgi?id=220339</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>416835</attachid>
            <date>2020-12-28 21:37:58 -0800</date>
            <delta_ts>2020-12-29 01:47:41 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-220189-20201228213757.patch</filename>
            <type>text/plain</type>
            <size>42628</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcxMTA1CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBh
ZmMwZjI2NDZjMDlmZmU5YzAyM2IwZjI4ODQyNzFkNDQ3MWMyNzYyLi45ZTllOWVhYTg4MjliMTlk
OTMxNjBlYjZmMzM0YmNlZTlmZjVhN2EwIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwzMyBAQAorMjAyMC0xMi0yOCAgWXVzdWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29t
PgorCisgICAgICAgIFtKU0NdIFVwZGF0ZSBXZWJBc3NlbWJseSBpbnN0YW5jZSdzIGV4cG9ydHMg
b2JqZWN0CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MjAxODkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBU
aGlzIHBhdGNoIGFsaWducyB0aGUgV2ViQXNzZW1ibHkgSW5zdGFuY2UncyBleHBvcnRzIG9iamVj
dCB0byB0aGUgdXBkYXRlZCBzcGVjLgorCisgICAgICAgIDEuIGV4cG9ydHMgb2JqZWN0IGlzIGEg
cGxhaW4gb2JqZWN0IHdoaWNoIFtbUHJvdG90eXBlXV0gaXMgbnVsbFsxXS4gV2Ugd2VyZSB1c2lu
ZyBtb2R1bGUgbmFtZXNwYWNlIG9iamVjdC4gQWxzbywgdGhlIG9iamVjdCBzaG91bGQgYmUgZnJv
emVuLgorICAgICAgICAyLiBleHBvcnRlZCBmdW5jdGlvbnMnIG5hbWUgc2hvdWxkIGJlIGluZGV4
LCBhY2NvcmRpbmcgdG8gdGhlIHNwZWNbMl0uCisKKyAgICAgICAgWzFdOiBodHRwczovL3dlYmFz
c2VtYmx5LmdpdGh1Yi5pby9zcGVjL2pzLWFwaS9pbmRleC5odG1sI2NyZWF0ZS1hbi1leHBvcnRz
LW9iamVjdAorICAgICAgICBbMl06IGh0dHBzOi8vd2ViYXNzZW1ibHkuZ2l0aHViLmlvL3NwZWMv
anMtYXBpL2luZGV4Lmh0bWwjZXhwb3J0ZWQtZnVuY3Rpb24tZXhvdGljLW9iamVjdHMKKworICAg
ICAgICAqIHdhc20vanMvSlNXZWJBc3NlbWJseS5jcHA6CisgICAgICAgIChKU0M6OnJlc29sdmUp
OgorICAgICAgICAqIHdhc20vanMvSlNXZWJBc3NlbWJseUluc3RhbmNlLmNwcDoKKyAgICAgICAg
KEpTQzo6SlNXZWJBc3NlbWJseUluc3RhbmNlOjpmaW5pc2hDcmVhdGlvbik6CisgICAgICAgIChK
U0M6OkpTV2ViQXNzZW1ibHlJbnN0YW5jZTo6dmlzaXRDaGlsZHJlbik6CisgICAgICAgIChKU0M6
OkpTV2ViQXNzZW1ibHlJbnN0YW5jZTo6ZmluYWxpemVDcmVhdGlvbik6CisgICAgICAgIChKU0M6
OkpTV2ViQXNzZW1ibHlJbnN0YW5jZTo6dHJ5Q3JlYXRlKToKKyAgICAgICAgKiB3YXNtL2pzL0pT
V2ViQXNzZW1ibHlJbnN0YW5jZS5oOgorICAgICAgICAqIHdhc20vanMvV2ViQXNzZW1ibHlJbnN0
YW5jZVByb3RvdHlwZS5jcHA6CisgICAgICAgIChKU0M6OkpTQ19ERUZJTkVfSE9TVF9GVU5DVElP
Tik6CisgICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJseU1vZHVsZVJlY29yZC5jcHA6CisgICAg
ICAgIChKU0M6OldlYkFzc2VtYmx5TW9kdWxlUmVjb3JkOjp2aXNpdENoaWxkcmVuKToKKyAgICAg
ICAgKEpTQzo6V2ViQXNzZW1ibHlNb2R1bGVSZWNvcmQ6OmxpbmspOgorICAgICAgICAqIHdhc20v
anMvV2ViQXNzZW1ibHlNb2R1bGVSZWNvcmQuaDoKKwogMjAyMC0xMi0yNyAgRG1pdHJ5IEJlemhl
dHNrb3YgIDxkYmV6aGV0c2tvdkBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtXQVNNLVJlZmVyZW5j
ZXNdIEZpeCB0YWJsZS5pbml0IGFuZCB0YWJsZS5ncm93IHRvIHNhdGlzZnkgdGhlIHNwZWMKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pTV2ViQXNzZW1ibHkuY3Bw
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseS5jcHAKaW5kZXgg
MjM4MWQzMjgyMTMxZjg1NGY4ZjViYjE2NjdlMzEwYmYwYjMzODIwOC4uMjU4OWY1YTNjOTU3N2Fm
OGQ3YjRjMGRjZGIzNThhZWNiYzAxNWM3OSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3dhc20vanMvSlNXZWJBc3NlbWJseS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3dhc20vanMvSlNXZWJBc3NlbWJseS5jcHAKQEAgLTQ1LDYgKzQ1LDcgQEAKICNpbmNsdWRlICJT
dHJvbmdJbmxpbmVzLmgiCiAjaW5jbHVkZSAiU3RydWN0dXJlSW5saW5lcy5oIgogI2luY2x1ZGUg
IlRocm93U2NvcGUuaCIKKyNpbmNsdWRlICJXZWJBc3NlbWJseU1vZHVsZVJlY29yZC5oIgogCiBu
YW1lc3BhY2UgSlNDIHsKIApAQCAtMTgyLDcgKzE4Myw3IEBAIHN0YXRpYyB2b2lkIHJlc29sdmUo
Vk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1Byb21pc2UqIHByb21pc2Us
IEpTCiAgICAgaWYgKHJlc29sdmVLaW5kID09IFJlc29sdmU6OldpdGhJbnN0YW5jZSkKICAgICAg
ICAgcHJvbWlzZS0+cmVzb2x2ZShnbG9iYWxPYmplY3QsIGluc3RhbmNlKTsKICAgICBlbHNlIGlm
IChyZXNvbHZlS2luZCA9PSBSZXNvbHZlOjpXaXRoTW9kdWxlUmVjb3JkKSB7Ci0gICAgICAgIGF1
dG8qIG1vZHVsZVJlY29yZCA9IGluc3RhbmNlLT5tb2R1bGVOYW1lc3BhY2VPYmplY3QoKS0+bW9k
dWxlUmVjb3JkKCk7CisgICAgICAgIGF1dG8qIG1vZHVsZVJlY29yZCA9IGluc3RhbmNlLT5tb2R1
bGVSZWNvcmQoKTsKICAgICAgICAgaWYgKFVOTElLRUxZKE9wdGlvbnM6OmR1bXBNb2R1bGVSZWNv
cmQoKSkpCiAgICAgICAgICAgICBtb2R1bGVSZWNvcmQtPmR1bXAoKTsKICAgICAgICAgcHJvbWlz
ZS0+cmVzb2x2ZShnbG9iYWxPYmplY3QsIG1vZHVsZVJlY29yZCk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5SW5zdGFuY2UuY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseUluc3RhbmNlLmNwcAppbmRl
eCBiZmRkNGM3NGM4YzQ2ZWM4MzY3YmM3MjQ3N2Q0NDg5NmIyMWUyZjJlLi5iZDFiYmZkNDFmZDcx
ZTk1MmM1YzM3MzlhOTRkMzU0NzhjYTc3MTQyIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5SW5zdGFuY2UuY3BwCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS93YXNtL2pzL0pTV2ViQXNzZW1ibHlJbnN0YW5jZS5jcHAKQEAgLTU3LDEzICs1
NywxMyBAQCBKU1dlYkFzc2VtYmx5SW5zdGFuY2U6OkpTV2ViQXNzZW1ibHlJbnN0YW5jZShWTSYg
dm0sIFN0cnVjdHVyZSogc3RydWN0dXJlLCBSZWY8VwogICAgICAgICBuZXcgKHRoaXMtPmluc3Rh
bmNlKCkuaW1wb3J0RnVuY3Rpb248V3JpdGVCYXJyaWVyPEpTT2JqZWN0Pj4oaSkpIFdyaXRlQmFy
cmllcjxKU09iamVjdD4oKTsKIH0KIAotdm9pZCBKU1dlYkFzc2VtYmx5SW5zdGFuY2U6OmZpbmlz
aENyZWF0aW9uKFZNJiB2bSwgSlNXZWJBc3NlbWJseU1vZHVsZSogbW9kdWxlLCBKU01vZHVsZU5h
bWVzcGFjZU9iamVjdCogbW9kdWxlTmFtZXNwYWNlT2JqZWN0KQordm9pZCBKU1dlYkFzc2VtYmx5
SW5zdGFuY2U6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSwgSlNXZWJBc3NlbWJseU1vZHVsZSogbW9k
dWxlLCBXZWJBc3NlbWJseU1vZHVsZVJlY29yZCogbW9kdWxlUmVjb3JkKQogewogICAgIEJhc2U6
OmZpbmlzaENyZWF0aW9uKHZtKTsKICAgICBBU1NFUlQoaW5oZXJpdHModm0sIGluZm8oKSkpOwog
CiAgICAgbV9tb2R1bGUuc2V0KHZtLCB0aGlzLCBtb2R1bGUpOwotICAgIG1fbW9kdWxlTmFtZXNw
YWNlT2JqZWN0LnNldCh2bSwgdGhpcywgbW9kdWxlTmFtZXNwYWNlT2JqZWN0KTsKKyAgICBtX21v
ZHVsZVJlY29yZC5zZXQodm0sIHRoaXMsIG1vZHVsZVJlY29yZCk7CiAKICAgICB2bS5oZWFwLnJl
cG9ydEV4dHJhTWVtb3J5QWxsb2NhdGVkKG1faW5zdGFuY2UtPmV4dHJhTWVtb3J5QWxsb2NhdGVk
KCkpOwogfQpAQCAtODEsNyArODEsNyBAQCB2b2lkIEpTV2ViQXNzZW1ibHlJbnN0YW5jZTo6dmlz
aXRDaGlsZHJlbihKU0NlbGwqIGNlbGwsIFNsb3RWaXNpdG9yJiB2aXNpdG9yKQogICAgIEJhc2U6
OnZpc2l0Q2hpbGRyZW4odGhpc09iamVjdCwgdmlzaXRvcik7CiAgICAgdmlzaXRvci5hcHBlbmQo
dGhpc09iamVjdC0+bV9tb2R1bGUpOwogICAgIHZpc2l0b3IuYXBwZW5kKHRoaXNPYmplY3QtPm1f
Y29kZUJsb2NrKTsKLSAgICB2aXNpdG9yLmFwcGVuZCh0aGlzT2JqZWN0LT5tX21vZHVsZU5hbWVz
cGFjZU9iamVjdCk7CisgICAgdmlzaXRvci5hcHBlbmQodGhpc09iamVjdC0+bV9tb2R1bGVSZWNv
cmQpOwogICAgIHZpc2l0b3IuYXBwZW5kKHRoaXNPYmplY3QtPm1fbWVtb3J5KTsKICAgICBmb3Ig
KHVuc2lnbmVkIGkgPSAwOyBpIDwgdGhpc09iamVjdC0+aW5zdGFuY2UoKS5tb2R1bGUoKS5tb2R1
bGVJbmZvcm1hdGlvbigpLnRhYmxlQ291bnQoKTsgKytpKQogICAgICAgICB2aXNpdG9yLmFwcGVu
ZCh0aGlzT2JqZWN0LT5tX3RhYmxlc1tpXSk7CkBAIC0xMzcsMTQgKzEzNywxMyBAQCB2b2lkIEpT
V2ViQXNzZW1ibHlJbnN0YW5jZTo6ZmluYWxpemVDcmVhdGlvbihWTSYgdm0sIEpTR2xvYmFsT2Jq
ZWN0KiBnbG9iYWxPYmplYwogICAgICAgICBpbmZvLT53YXNtVG9FbWJlZGRlclN0dWIgPSBtX2Nv
ZGVCbG9jay0+d2FzbVRvRW1iZWRkZXJTdHViKGltcG9ydEZ1bmN0aW9uTnVtKTsKICAgICB9CiAK
LSAgICBhdXRvKiBtb2R1bGVSZWNvcmQgPSBqc0Nhc3Q8V2ViQXNzZW1ibHlNb2R1bGVSZWNvcmQq
PihtX21vZHVsZU5hbWVzcGFjZU9iamVjdC0+bW9kdWxlUmVjb3JkKCkpOwotICAgIG1vZHVsZVJl
Y29yZC0+cHJlcGFyZUxpbmsodm0sIHRoaXMpOworICAgIG1fbW9kdWxlUmVjb3JkLT5wcmVwYXJl
TGluayh2bSwgdGhpcyk7CiAKICAgICBpZiAoY3JlYXRpb25Nb2RlID09IFdhc206OkNyZWF0aW9u
TW9kZTo6RnJvbUpTKSB7Ci0gICAgICAgIG1vZHVsZVJlY29yZC0+bGluayhnbG9iYWxPYmplY3Qs
IGpzTnVsbCgpLCBpbXBvcnRPYmplY3QsIGNyZWF0aW9uTW9kZSk7CisgICAgICAgIG1fbW9kdWxl
UmVjb3JkLT5saW5rKGdsb2JhbE9iamVjdCwganNOdWxsKCksIGltcG9ydE9iamVjdCwgY3JlYXRp
b25Nb2RlKTsKICAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgdm9pZCgpKTsKIAot
ICAgICAgICBKU1ZhbHVlIHN0YXJ0UmVzdWx0ID0gbW9kdWxlUmVjb3JkLT5ldmFsdWF0ZShnbG9i
YWxPYmplY3QpOworICAgICAgICBKU1ZhbHVlIHN0YXJ0UmVzdWx0ID0gbV9tb2R1bGVSZWNvcmQt
PmV2YWx1YXRlKGdsb2JhbE9iamVjdCk7CiAgICAgICAgIFVOVVNFRF9QQVJBTShzdGFydFJlc3Vs
dCk7CiAgICAgICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIHZvaWQoKSk7CiAgICAgfQpA
QCAtMTc2LDggKzE3NSw2IEBAIEpTV2ViQXNzZW1ibHlJbnN0YW5jZSogSlNXZWJBc3NlbWJseUlu
c3RhbmNlOjp0cnlDcmVhdGUoVk0mIHZtLCBKU0dsb2JhbE9iamVjdCoKICAgICBXZWJBc3NlbWJs
eU1vZHVsZVJlY29yZCogbW9kdWxlUmVjb3JkID0gV2ViQXNzZW1ibHlNb2R1bGVSZWNvcmQ6OmNy
ZWF0ZShnbG9iYWxPYmplY3QsIHZtLCBnbG9iYWxPYmplY3QtPndlYkFzc2VtYmx5TW9kdWxlUmVj
b3JkU3RydWN0dXJlKCksIG1vZHVsZUtleSwgbW9kdWxlSW5mb3JtYXRpb24pOwogICAgIFJFVFVS
Tl9JRl9FWENFUFRJT04odGhyb3dTY29wZSwgbnVsbHB0cik7CiAKLSAgICBKU01vZHVsZU5hbWVz
cGFjZU9iamVjdCogbW9kdWxlTmFtZXNwYWNlID0gbW9kdWxlUmVjb3JkLT5nZXRNb2R1bGVOYW1l
c3BhY2UoZ2xvYmFsT2JqZWN0KTsKLQogICAgIGF1dG8gc3RvcmVUb3BDYWxsRnJhbWUgPSBbJnZt
XSAodm9pZCogdG9wQ2FsbEZyYW1lKSB7CiAgICAgICAgIHZtLnRvcENhbGxGcmFtZSA9IGJpdHdp
c2VfY2FzdDxDYWxsRnJhbWUqPih0b3BDYWxsRnJhbWUpOwogICAgIH07CkBAIC0xODUsNyArMTgy
LDcgQEAgSlNXZWJBc3NlbWJseUluc3RhbmNlKiBKU1dlYkFzc2VtYmx5SW5zdGFuY2U6OnRyeUNy
ZWF0ZShWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KgogICAgIC8vIEZJWE1FOiBUaGVzZSBvYmplY3Rz
IGNvdWxkIGJlIHByZXR0eSBiaWcgd2Ugc2hvdWxkIHRyeSB0byB0aHJvdyBPT00gaGVyZS4KICAg
ICBhdXRvKiBqc0luc3RhbmNlID0gbmV3IChOb3ROdWxsLCBhbGxvY2F0ZUNlbGw8SlNXZWJBc3Nl
bWJseUluc3RhbmNlPih2bS5oZWFwKSkgSlNXZWJBc3NlbWJseUluc3RhbmNlKHZtLCBpbnN0YW5j
ZVN0cnVjdHVyZSwgCiAgICAgICAgIFdhc206Okluc3RhbmNlOjpjcmVhdGUoJnZtLndhc21Db250
ZXh0LCBXVEZNb3ZlKG1vZHVsZSksICZ2bS50b3BFbnRyeUZyYW1lLCB2bS5hZGRyZXNzT2ZTb2Z0
U3RhY2tMaW1pdCgpLCBXVEZNb3ZlKHN0b3JlVG9wQ2FsbEZyYW1lKSkpOwotICAgIGpzSW5zdGFu
Y2UtPmZpbmlzaENyZWF0aW9uKHZtLCBqc01vZHVsZSwgbW9kdWxlTmFtZXNwYWNlKTsKKyAgICBq
c0luc3RhbmNlLT5maW5pc2hDcmVhdGlvbih2bSwganNNb2R1bGUsIG1vZHVsZVJlY29yZCk7CiAg
ICAgUkVUVVJOX0lGX0VYQ0VQVElPTih0aHJvd1Njb3BlLCBudWxscHRyKTsKIAogICAgIC8vIExl
dCBmdW5jcywgbWVtb3JpZXMgYW5kIHRhYmxlcyBiZSBpbml0aWFsbHktZW1wdHkgbGlzdHMgb2Yg
Y2FsbGFibGUgSmF2YVNjcmlwdCBvYmplY3RzLCBXZWJBc3NlbWJseS5NZW1vcnkgb2JqZWN0cyBh
bmQgV2ViQXNzZW1ibHkuVGFibGUgb2JqZWN0cywgcmVzcGVjdGl2ZWx5LgpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseUluc3RhbmNlLmggYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5SW5zdGFuY2UuaAppbmRl
eCBiZjQ3ZDA2MjE3MTdkODlhYmM4NzBhMmNjYmVjMzIyZjA5MDI0OWZkLi45ZTQ3ODBjYzgyYzU2
NmQwYzU4NTMwZGY0MDJmNDNlNzU1YzRhZmI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5SW5zdGFuY2UuaAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5SW5zdGFuY2UuaApAQCAtNDAsNiArNDAsNyBA
QCBuYW1lc3BhY2UgSlNDIHsKIAogY2xhc3MgSlNNb2R1bGVOYW1lc3BhY2VPYmplY3Q7CiBjbGFz
cyBKU1dlYkFzc2VtYmx5TW9kdWxlOworY2xhc3MgV2ViQXNzZW1ibHlNb2R1bGVSZWNvcmQ7CiAK
IG5hbWVzcGFjZSBXYXNtIHsKIGNsYXNzIENvZGVCbG9jazsKQEAgLTY3LDcgKzY4LDcgQEAgY2xh
c3MgSlNXZWJBc3NlbWJseUluc3RhbmNlIGZpbmFsIDogcHVibGljIEpTTm9uRmluYWxPYmplY3Qg
ewogICAgIHZvaWQgZmluYWxpemVDcmVhdGlvbihWTSYsIEpTR2xvYmFsT2JqZWN0KiwgUmVmPFdh
c206OkNvZGVCbG9jaz4mJiwgSlNPYmplY3QqIGltcG9ydE9iamVjdCwgV2FzbTo6Q3JlYXRpb25N
b2RlKTsKICAgICAKICAgICBXYXNtOjpJbnN0YW5jZSYgaW5zdGFuY2UoKSB7IHJldHVybiBtX2lu
c3RhbmNlLmdldCgpOyB9Ci0gICAgSlNNb2R1bGVOYW1lc3BhY2VPYmplY3QqIG1vZHVsZU5hbWVz
cGFjZU9iamVjdCgpIHsgcmV0dXJuIG1fbW9kdWxlTmFtZXNwYWNlT2JqZWN0LmdldCgpOyB9Cisg
ICAgV2ViQXNzZW1ibHlNb2R1bGVSZWNvcmQqIG1vZHVsZVJlY29yZCgpIHsgcmV0dXJuIG1fbW9k
dWxlUmVjb3JkLmdldCgpOyB9CiAKICAgICBKU1dlYkFzc2VtYmx5TWVtb3J5KiBtZW1vcnkoKSB7
IHJldHVybiBtX21lbW9yeS5nZXQoKTsgfQogICAgIHZvaWQgc2V0TWVtb3J5KFZNJiB2bSwgSlNX
ZWJBc3NlbWJseU1lbW9yeSogdmFsdWUpIHsKQEAgLTEwMyw3ICsxMDQsNyBAQCBjbGFzcyBKU1dl
YkFzc2VtYmx5SW5zdGFuY2UgZmluYWwgOiBwdWJsaWMgSlNOb25GaW5hbE9iamVjdCB7CiAKIHBy
aXZhdGU6CiAgICAgSlNXZWJBc3NlbWJseUluc3RhbmNlKFZNJiwgU3RydWN0dXJlKiwgUmVmPFdh
c206Okluc3RhbmNlPiYmKTsKLSAgICB2b2lkIGZpbmlzaENyZWF0aW9uKFZNJiwgSlNXZWJBc3Nl
bWJseU1vZHVsZSosIEpTTW9kdWxlTmFtZXNwYWNlT2JqZWN0Kik7CisgICAgdm9pZCBmaW5pc2hD
cmVhdGlvbihWTSYsIEpTV2ViQXNzZW1ibHlNb2R1bGUqLCBXZWJBc3NlbWJseU1vZHVsZVJlY29y
ZCopOwogICAgIHN0YXRpYyB2b2lkIHZpc2l0Q2hpbGRyZW4oSlNDZWxsKiwgU2xvdFZpc2l0b3Im
KTsKIAogICAgIFJlZjxXYXNtOjpJbnN0YW5jZT4gbV9pbnN0YW5jZTsKQEAgLTExMiw3ICsxMTMs
NyBAQCBjbGFzcyBKU1dlYkFzc2VtYmx5SW5zdGFuY2UgZmluYWwgOiBwdWJsaWMgSlNOb25GaW5h
bE9iamVjdCB7CiAgICAgV3JpdGVCYXJyaWVyPEpTR2xvYmFsT2JqZWN0PiBtX2dsb2JhbE9iamVj
dDsKICAgICBXcml0ZUJhcnJpZXI8SlNXZWJBc3NlbWJseU1vZHVsZT4gbV9tb2R1bGU7CiAgICAg
V3JpdGVCYXJyaWVyPEpTV2ViQXNzZW1ibHlDb2RlQmxvY2s+IG1fY29kZUJsb2NrOwotICAgIFdy
aXRlQmFycmllcjxKU01vZHVsZU5hbWVzcGFjZU9iamVjdD4gbV9tb2R1bGVOYW1lc3BhY2VPYmpl
Y3Q7CisgICAgV3JpdGVCYXJyaWVyPFdlYkFzc2VtYmx5TW9kdWxlUmVjb3JkPiBtX21vZHVsZVJl
Y29yZDsKICAgICBXcml0ZUJhcnJpZXI8SlNXZWJBc3NlbWJseU1lbW9yeT4gbV9tZW1vcnk7CiAg
ICAgVmVjdG9yPFdyaXRlQmFycmllcjxKU1dlYkFzc2VtYmx5VGFibGU+PiBtX3RhYmxlczsKIH07
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUlu
c3RhbmNlUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFz
c2VtYmx5SW5zdGFuY2VQcm90b3R5cGUuY3BwCmluZGV4IDY2OWY2ODI4ZThkZjE0ZDk2MzA4Zjk3
YWYyNWIwMWVhZDM1ODkzODguLmUyOTc3Mzk4YjJkN2Q5MzkzZDEwYzhiNjI2N2IxNzc0MjNmZTNh
OTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5
SW5zdGFuY2VQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pz
L1dlYkFzc2VtYmx5SW5zdGFuY2VQcm90b3R5cGUuY3BwCkBAIC0zMiw2ICszMiw3IEBACiAjaW5j
bHVkZSAiSlNDSW5saW5lcy5oIgogI2luY2x1ZGUgIkpTTW9kdWxlTmFtZXNwYWNlT2JqZWN0Lmgi
CiAjaW5jbHVkZSAiSlNXZWJBc3NlbWJseUluc3RhbmNlLmgiCisjaW5jbHVkZSAiV2ViQXNzZW1i
bHlNb2R1bGVSZWNvcmQuaCIKIAogbmFtZXNwYWNlIEpTQyB7CiBzdGF0aWMgSlNDX0RFQ0xBUkVf
SE9TVF9GVU5DVElPTih3ZWJBc3NlbWJseUluc3RhbmNlUHJvdG9GdW5jRXhwb3J0cyk7CkBAIC02
OCw3ICs2OSw3IEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTih3ZWJBc3NlbWJseUluc3RhbmNl
UHJvdG9GdW5jRXhwb3J0cywgKEpTR2xvYmFsT2JqZWN0KiBnCiAKICAgICBKU1dlYkFzc2VtYmx5
SW5zdGFuY2UqIGluc3RhbmNlID0gZ2V0SW5zdGFuY2UoZ2xvYmFsT2JqZWN0LCB2bSwgY2FsbEZy
YW1lLT50aGlzVmFsdWUoKSk7IAogICAgIFJFVFVSTl9JRl9FWENFUFRJT04odGhyb3dTY29wZSwg
eyB9KTsKLSAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKGluc3RhbmNlLT5tb2R1bGVOYW1lc3Bh
Y2VPYmplY3QoKSk7CisgICAgUkVMRUFTRV9BTkRfUkVUVVJOKHRocm93U2NvcGUsIEpTVmFsdWU6
OmVuY29kZShpbnN0YW5jZS0+bW9kdWxlUmVjb3JkKCktPmV4cG9ydHNPYmplY3QoKSkpOwogfQog
CiBXZWJBc3NlbWJseUluc3RhbmNlUHJvdG90eXBlKiBXZWJBc3NlbWJseUluc3RhbmNlUHJvdG90
eXBlOjpjcmVhdGUoVk0mIHZtLCBKU0dsb2JhbE9iamVjdCosIFN0cnVjdHVyZSogc3RydWN0dXJl
KQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlN
b2R1bGVSZWNvcmQuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1i
bHlNb2R1bGVSZWNvcmQuY3BwCmluZGV4IGVhODIxMTM5YTJjN2IxN2U1OGQ2ZDNkZjZmMjhmZTFi
NzhhMjJjM2YuLmNlZjRkYWIyZGE4OTJlODg3M2VjM2I2MGE1ZjY4MTZmZjI3ZjIxNmEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5TW9kdWxlUmVj
b3JkLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseU1v
ZHVsZVJlY29yZC5jcHAKQEAgLTg0LDYgKzg0LDcgQEAgdm9pZCBXZWJBc3NlbWJseU1vZHVsZVJl
Y29yZDo6dmlzaXRDaGlsZHJlbihKU0NlbGwqIGNlbGwsIFNsb3RWaXNpdG9yJiB2aXNpdG9yKQog
ICAgIEJhc2U6OnZpc2l0Q2hpbGRyZW4odGhpc09iamVjdCwgdmlzaXRvcik7CiAgICAgdmlzaXRv
ci5hcHBlbmQodGhpc09iamVjdC0+bV9pbnN0YW5jZSk7CiAgICAgdmlzaXRvci5hcHBlbmQodGhp
c09iamVjdC0+bV9zdGFydEZ1bmN0aW9uKTsKKyAgICB2aXNpdG9yLmFwcGVuZCh0aGlzT2JqZWN0
LT5tX2V4cG9ydHNPYmplY3QpOwogfQogCiB2b2lkIFdlYkFzc2VtYmx5TW9kdWxlUmVjb3JkOjpw
cmVwYXJlTGluayhWTSYgdm0sIEpTV2ViQXNzZW1ibHlJbnN0YW5jZSogaW5zdGFuY2UpCkBAIC0z
NjAsNyArMzYxLDcgQEAgdm9pZCBXZWJBc3NlbWJseU1vZHVsZVJlY29yZDo6bGluayhKU0dsb2Jh
bE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlLCBKU09iamUKICAgICB9CiAKICAgICB1bnNp
Z25lZCBmdW5jdGlvbkltcG9ydENvdW50ID0gY29kZUJsb2NrLT5mdW5jdGlvbkltcG9ydENvdW50
KCk7Ci0gICAgYXV0byBtYWtlRnVuY3Rpb25XcmFwcGVyID0gWyZdIChjb25zdCBTdHJpbmcmIGZp
ZWxkLCB1aW50MzJfdCBpbmRleCkgLT4gSlNWYWx1ZSB7CisgICAgYXV0byBtYWtlRnVuY3Rpb25X
cmFwcGVyID0gWyZdICh1aW50MzJfdCBpbmRleCkgLT4gSlNWYWx1ZSB7CiAgICAgICAgIC8vIElm
IHdlIGFscmVhZHkgbWFkZSBhIHdyYXBwZXIsIGRvIG5vdCBtYWtlIGEgbmV3IG9uZS4KICAgICAg
ICAgSlNWYWx1ZSB3cmFwcGVyID0gbV9pbnN0YW5jZS0+aW5zdGFuY2UoKS5nZXRGdW5jdGlvbldy
YXBwZXIoaW5kZXgpOwogCkBAIC0zODcsNyArMzg4LDcgQEAgdm9pZCBXZWJBc3NlbWJseU1vZHVs
ZVJlY29yZDo6bGluayhKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlLCBKU09i
amUKICAgICAgICAgICAgIFdhc206Oldhc21Ub1dhc21JbXBvcnRhYmxlRnVuY3Rpb246OkxvYWRM
b2NhdGlvbiBlbnRyeXBvaW50TG9hZExvY2F0aW9uID0gY29kZUJsb2NrLT5lbnRyeXBvaW50TG9h
ZExvY2F0aW9uRnJvbUZ1bmN0aW9uSW5kZXhTcGFjZShpbmRleCk7CiAgICAgICAgICAgICBXYXNt
OjpTaWduYXR1cmVJbmRleCBzaWduYXR1cmVJbmRleCA9IG1vZHVsZS0+c2lnbmF0dXJlSW5kZXhG
cm9tRnVuY3Rpb25JbmRleFNwYWNlKGluZGV4KTsKICAgICAgICAgICAgIGNvbnN0IFdhc206OlNp
Z25hdHVyZSYgc2lnbmF0dXJlID0gV2FzbTo6U2lnbmF0dXJlSW5mb3JtYXRpb246OmdldChzaWdu
YXR1cmVJbmRleCk7Ci0gICAgICAgICAgICBXZWJBc3NlbWJseUZ1bmN0aW9uKiBmdW5jdGlvbiA9
IFdlYkFzc2VtYmx5RnVuY3Rpb246OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBnbG9iYWxPYmpl
Y3QtPndlYkFzc2VtYmx5RnVuY3Rpb25TdHJ1Y3R1cmUoKSwgc2lnbmF0dXJlLmFyZ3VtZW50Q291
bnQoKSwgZmllbGQsIG1faW5zdGFuY2UuZ2V0KCksIGVtYmVkZGVyRW50cnlwb2ludENhbGxlZSwg
ZW50cnlwb2ludExvYWRMb2NhdGlvbiwgc2lnbmF0dXJlSW5kZXgpOworICAgICAgICAgICAgV2Vi
QXNzZW1ibHlGdW5jdGlvbiogZnVuY3Rpb24gPSBXZWJBc3NlbWJseUZ1bmN0aW9uOjpjcmVhdGUo
dm0sIGdsb2JhbE9iamVjdCwgZ2xvYmFsT2JqZWN0LT53ZWJBc3NlbWJseUZ1bmN0aW9uU3RydWN0
dXJlKCksIHNpZ25hdHVyZS5hcmd1bWVudENvdW50KCksIG1ha2VTdHJpbmcoaW5kZXgpLCBtX2lu
c3RhbmNlLmdldCgpLCBlbWJlZGRlckVudHJ5cG9pbnRDYWxsZWUsIGVudHJ5cG9pbnRMb2FkTG9j
YXRpb24sIHNpZ25hdHVyZUluZGV4KTsKICAgICAgICAgICAgIHdyYXBwZXIgPSBmdW5jdGlvbjsK
ICAgICAgICAgfQogCkBAIC0zOTgsNyArMzk5LDcgQEAgdm9pZCBXZWJBc3NlbWJseU1vZHVsZVJl
Y29yZDo6bGluayhKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlLCBKU09iamUK
ICAgICB9OwogCiAgICAgZm9yIChhdXRvIGluZGV4IDogbW9kdWxlSW5mb3JtYXRpb24ucmVmZXJl
bmNlZEZ1bmN0aW9ucygpKQotICAgICAgICBtYWtlRnVuY3Rpb25XcmFwcGVyKCJSZWZlcmVuY2Vk
IGZ1bmN0aW9uIiwgaW5kZXgpOworICAgICAgICBtYWtlRnVuY3Rpb25XcmFwcGVyKGluZGV4KTsK
IAogICAgIC8vIEdsb2JhbHMKICAgICB7CkBAIC00MTEsOCArNDEyLDggQEAgdm9pZCBXZWJBc3Nl
bWJseU1vZHVsZVJlY29yZDo6bGluayhKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1Zh
bHVlLCBKU09iamUKICAgICAgICAgICAgICAgICBpbml0aWFsQml0cyA9IG1faW5zdGFuY2UtPmlu
c3RhbmNlKCkubG9hZEk2NEdsb2JhbChnbG9iYWwuaW5pdGlhbEJpdHNPckltcG9ydE51bWJlcik7
CiAgICAgICAgICAgICB9IGVsc2UgaWYgKGdsb2JhbC5pbml0aWFsaXphdGlvblR5cGUgPT0gV2Fz
bTo6R2xvYmFsSW5mb3JtYXRpb246OkZyb21SZWZGdW5jKSB7CiAgICAgICAgICAgICAgICAgQVNT
RVJUKGdsb2JhbC5pbml0aWFsQml0c09ySW1wb3J0TnVtYmVyIDwgbW9kdWxlSW5mb3JtYXRpb24u
ZnVuY3Rpb25JbmRleFNwYWNlU2l6ZSgpKTsKLSAgICAgICAgICAgICAgICBBU1NFUlQobWFrZUZ1
bmN0aW9uV3JhcHBlcigiR2xvYmFsIGluaXQgZXhwciIsIGdsb2JhbC5pbml0aWFsQml0c09ySW1w
b3J0TnVtYmVyKS5pc0NhbGxhYmxlKHZtKSk7Ci0gICAgICAgICAgICAgICAgaW5pdGlhbEJpdHMg
PSBKU1ZhbHVlOjplbmNvZGUobWFrZUZ1bmN0aW9uV3JhcHBlcigiR2xvYmFsIGluaXQgZXhwciIs
IGdsb2JhbC5pbml0aWFsQml0c09ySW1wb3J0TnVtYmVyKSk7CisgICAgICAgICAgICAgICAgQVNT
RVJUKG1ha2VGdW5jdGlvbldyYXBwZXIoZ2xvYmFsLmluaXRpYWxCaXRzT3JJbXBvcnROdW1iZXIp
LmlzQ2FsbGFibGUodm0pKTsKKyAgICAgICAgICAgICAgICBpbml0aWFsQml0cyA9IEpTVmFsdWU6
OmVuY29kZShtYWtlRnVuY3Rpb25XcmFwcGVyKGdsb2JhbC5pbml0aWFsQml0c09ySW1wb3J0TnVt
YmVyKSk7CiAgICAgICAgICAgICB9IGVsc2UKICAgICAgICAgICAgICAgICBpbml0aWFsQml0cyA9
IGdsb2JhbC5pbml0aWFsQml0c09ySW1wb3J0TnVtYmVyOwogCkBAIC00MzcsMTQgKzQzOCwxNiBA
QCB2b2lkIFdlYkFzc2VtYmx5TW9kdWxlUmVjb3JkOjpsaW5rKEpTR2xvYmFsT2JqZWN0KiBnbG9i
YWxPYmplY3QsIEpTVmFsdWUsIEpTT2JqZQogICAgIFN5bWJvbFRhYmxlKiBleHBvcnRTeW1ib2xU
YWJsZSA9IG1vZHVsZS0+ZXhwb3J0U3ltYm9sVGFibGUoKTsKIAogICAgIC8vIExldCBleHBvcnRz
IGJlIGEgbGlzdCBvZiAoc3RyaW5nLCBKUyB2YWx1ZSkgcGFpcnMgdGhhdCBpcyBtYXBwZWQgZnJv
bSBlYWNoIGV4dGVybmFsIHZhbHVlIGUgaW4gaW5zdGFuY2UuZXhwb3J0cyBhcyBmb2xsb3dzOgor
ICAgIC8vIGh0dHBzOi8vd2ViYXNzZW1ibHkuZ2l0aHViLmlvL3NwZWMvanMtYXBpL2luZGV4Lmh0
bWwjY3JlYXRlLWFuLWV4cG9ydHMtb2JqZWN0CisgICAgSlNPYmplY3QqIGV4cG9ydHNPYmplY3Qg
PSBjb25zdHJ1Y3RFbXB0eU9iamVjdCh2bSwgZ2xvYmFsT2JqZWN0LT5udWxsUHJvdG90eXBlT2Jq
ZWN0U3RydWN0dXJlKCkpOwogICAgIEpTTW9kdWxlRW52aXJvbm1lbnQqIG1vZHVsZUVudmlyb25t
ZW50ID0gSlNNb2R1bGVFbnZpcm9ubWVudDo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIG51bGxw
dHIsIGV4cG9ydFN5bWJvbFRhYmxlLCBKU1ZhbHVlKCksIHRoaXMpOwogICAgIGZvciAoY29uc3Qg
YXV0byYgZXhwIDogbW9kdWxlSW5mb3JtYXRpb24uZXhwb3J0cykgewogICAgICAgICBKU1ZhbHVl
IGV4cG9ydGVkVmFsdWU7CiAgICAgICAgIHN3aXRjaCAoZXhwLmtpbmQpIHsKICAgICAgICAgY2Fz
ZSBXYXNtOjpFeHRlcm5hbEtpbmQ6OkZ1bmN0aW9uOiB7Ci0gICAgICAgICAgICBleHBvcnRlZFZh
bHVlID0gbWFrZUZ1bmN0aW9uV3JhcHBlcihTdHJpbmc6OmZyb21VVEY4KGV4cC5maWVsZCksIGV4
cC5raW5kSW5kZXgpOworICAgICAgICAgICAgZXhwb3J0ZWRWYWx1ZSA9IG1ha2VGdW5jdGlvbldy
YXBwZXIoZXhwLmtpbmRJbmRleCk7CiAgICAgICAgICAgICBBU1NFUlQoZXhwb3J0ZWRWYWx1ZS5p
c0NhbGxhYmxlKHZtKSk7Ci0gICAgICAgICAgICBBU1NFUlQobWFrZUZ1bmN0aW9uV3JhcHBlcihT
dHJpbmc6OmZyb21VVEY4KGV4cC5maWVsZCksIGV4cC5raW5kSW5kZXgpID09IGV4cG9ydGVkVmFs
dWUpOworICAgICAgICAgICAgQVNTRVJUKG1ha2VGdW5jdGlvbldyYXBwZXIoZXhwLmtpbmRJbmRl
eCkgPT0gZXhwb3J0ZWRWYWx1ZSk7CiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgfQogICAg
ICAgICBjYXNlIFdhc206OkV4dGVybmFsS2luZDo6VGFibGU6IHsKQEAgLTQ5NCwxNCArNDk3LDIy
IEBAIHZvaWQgV2ViQXNzZW1ibHlNb2R1bGVSZWNvcmQ6OmxpbmsoSlNHbG9iYWxPYmplY3QqIGds
b2JhbE9iamVjdCwgSlNWYWx1ZSwgSlNPYmplCiAgICAgICAgIH0KICAgICAgICAgfQogCisgICAg
ICAgIElkZW50aWZpZXIgcHJvcGVydHlOYW1lID0gSWRlbnRpZmllcjo6ZnJvbVN0cmluZyh2bSwg
U3RyaW5nOjpmcm9tVVRGOChleHAuZmllbGQpKTsKKwogICAgICAgICBib29sIHNob3VsZFRocm93
UmVhZE9ubHlFcnJvciA9IGZhbHNlOwogICAgICAgICBib29sIGlnbm9yZVJlYWRPbmx5RXJyb3Jz
ID0gdHJ1ZTsKICAgICAgICAgYm9vbCBwdXRSZXN1bHQgPSBmYWxzZTsKLSAgICAgICAgc3ltYm9s
VGFibGVQdXRUb3VjaFdhdGNocG9pbnRTZXQobW9kdWxlRW52aXJvbm1lbnQsIGdsb2JhbE9iamVj
dCwgSWRlbnRpZmllcjo6ZnJvbVN0cmluZyh2bSwgU3RyaW5nOjpmcm9tVVRGOChleHAuZmllbGQp
KSwgZXhwb3J0ZWRWYWx1ZSwgc2hvdWxkVGhyb3dSZWFkT25seUVycm9yLCBpZ25vcmVSZWFkT25s
eUVycm9ycywgcHV0UmVzdWx0KTsKKyAgICAgICAgc3ltYm9sVGFibGVQdXRUb3VjaFdhdGNocG9p
bnRTZXQobW9kdWxlRW52aXJvbm1lbnQsIGdsb2JhbE9iamVjdCwgcHJvcGVydHlOYW1lLCBleHBv
cnRlZFZhbHVlLCBzaG91bGRUaHJvd1JlYWRPbmx5RXJyb3IsIGlnbm9yZVJlYWRPbmx5RXJyb3Jz
LCBwdXRSZXN1bHQpOwogICAgICAgICBzY29wZS5hc3NlcnROb0V4Y2VwdGlvbigpOwogICAgICAg
ICBSRUxFQVNFX0FTU0VSVChwdXRSZXN1bHQpOworCisgICAgICAgIGV4cG9ydHNPYmplY3QtPnB1
dERpcmVjdCh2bSwgcHJvcGVydHlOYW1lLCBleHBvcnRlZFZhbHVlLCAwKTsKICAgICB9CiAKKyAg
ICBvYmplY3RDb25zdHJ1Y3RvckZyZWV6ZShnbG9iYWxPYmplY3QsIGV4cG9ydHNPYmplY3QpOwor
ICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIHZvaWQoKSk7CisgICAgbV9leHBvcnRzT2Jq
ZWN0LnNldCh2bSwgdGhpcywgZXhwb3J0c09iamVjdCk7CisKICAgICBib29sIGhhc1N0YXJ0ID0g
ISFtb2R1bGVJbmZvcm1hdGlvbi5zdGFydEZ1bmN0aW9uSW5kZXhTcGFjZTsKICAgICBpZiAoaGFz
U3RhcnQpIHsKICAgICAgICAgYXV0byBzdGFydEZ1bmN0aW9uSW5kZXhTcGFjZSA9IG1vZHVsZUlu
Zm9ybWF0aW9uLnN0YXJ0RnVuY3Rpb25JbmRleFNwYWNlLnZhbHVlT3IoMCk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseU1vZHVsZVJlY29yZC5o
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlNb2R1bGVSZWNvcmQu
aAppbmRleCA3NTFmMWJiOThlNDQ3N2JjNTJmODJlZTIxOTE4NzRlN2VkMmI0ZjI3Li5hNjdmMjBi
Y2VjNzFmNzcxN2Q0MWUxYzhjYjVhYWM2ZmVmMDJhYTkwIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseU1vZHVsZVJlY29yZC5oCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5TW9kdWxlUmVjb3JkLmgKQEAgLTYy
LDYgKzYyLDggQEAgY2xhc3MgV2ViQXNzZW1ibHlNb2R1bGVSZWNvcmQgZmluYWwgOiBwdWJsaWMg
QWJzdHJhY3RNb2R1bGVSZWNvcmQgewogICAgIHZvaWQgbGluayhKU0dsb2JhbE9iamVjdCosIEpT
VmFsdWUgc2NyaXB0RmV0Y2hlciwgSlNPYmplY3QqIGltcG9ydE9iamVjdCwgV2FzbTo6Q3JlYXRp
b25Nb2RlKTsKICAgICBKU19FWFBPUlRfUFJJVkFURSBKU1ZhbHVlIGV2YWx1YXRlKEpTR2xvYmFs
T2JqZWN0Kik7CiAKKyAgICBKU09iamVjdCogZXhwb3J0c09iamVjdCgpIGNvbnN0IHsgcmV0dXJu
IG1fZXhwb3J0c09iamVjdC5nZXQoKTsgfQorCiBwcml2YXRlOgogICAgIFdlYkFzc2VtYmx5TW9k
dWxlUmVjb3JkKFZNJiwgU3RydWN0dXJlKiwgY29uc3QgSWRlbnRpZmllciYpOwogCkBAIC03MSw2
ICs3Myw3IEBAIGNsYXNzIFdlYkFzc2VtYmx5TW9kdWxlUmVjb3JkIGZpbmFsIDogcHVibGljIEFi
c3RyYWN0TW9kdWxlUmVjb3JkIHsKIAogICAgIFdyaXRlQmFycmllcjxKU1dlYkFzc2VtYmx5SW5z
dGFuY2U+IG1faW5zdGFuY2U7CiAgICAgV3JpdGVCYXJyaWVyPEpTT2JqZWN0PiBtX3N0YXJ0RnVu
Y3Rpb247CisgICAgV3JpdGVCYXJyaWVyPEpTT2JqZWN0PiBtX2V4cG9ydHNPYmplY3Q7CiB9Owog
CiB9IC8vIG5hbWVzcGFjZSBKU0MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCmluZGV4IDc4
Y2ZjYjhlMWZmN2MxM2YwMWM3YmRmZDk3MGRkYTA5NDU4NzVkZGUuLjg1OTAzMTc1MGRiYzc0YTVh
YzEyNzdlYTAyNWRiZGU4MWU0ZDQ3YWQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwpA
QCAtMSwzICsxLDE2IEBACisyMDIwLTEyLTI4ICBZdXN1a2UgU3V6dWtpICA8eXN1enVraUBhcHBs
ZS5jb20+CisKKyAgICAgICAgW0pTQ10gVXBkYXRlIFdlYkFzc2VtYmx5IGluc3RhbmNlJ3MgZXhw
b3J0cyBvYmplY3QKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTIyMDE4OQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3dhc20vanNhcGkvY29uc3RydWN0b3IvaW5zdGFudGlh
dGUuYW55LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvd2FzbS9q
c2FwaS9jb25zdHJ1Y3Rvci9pbnN0YW50aWF0ZS5hbnkud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAg
ICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvd2FzbS9qc2FwaS9pbnN0YW5jZS9jb25zdHJ1Y3Rv
ci5hbnktZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy93YXNtL2pz
YXBpL2luc3RhbmNlL2NvbnN0cnVjdG9yLmFueS53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAg
ICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy93YXNtL2pzYXBpL3RhYmxlL2dyb3ctcmVmdHlwZXMudGVu
dGF0aXZlLmFueS1leHBlY3RlZC50eHQ6CisKIDIwMjAtMTItMjYgIEFsZXhleSBTaHZheWthICA8
c2h2YWlrYWxlc2hAZ21haWwuY29tPgogCiAgICAgICAgIFtXZWJJRExdIFJlbW92ZSBbQ3VzdG9t
VG9TdHJpbmdOYW1lXSBhbmQgTG9jYXRpb24tc3BlY2lmaWMgZXh0ZW5kZWQgYXR0cmlidXRlcwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93
YXNtL2pzYXBpL2NvbnN0cnVjdG9yL2luc3RhbnRpYXRlLmFueS1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dhc20vanNhcGkvY29uc3Ry
dWN0b3IvaW5zdGFudGlhdGUuYW55LWV4cGVjdGVkLnR4dAppbmRleCBkYWM3NTkzYTEyMTU5NGRm
OWE1OWJjM2I1MDFkNTU4YTJkMWFlMWIxLi4yNWU4NWQ4YmM0NGRkZGI2OWVjZTlmN2VmYTUyYTg4
OGJlZDE5OTBiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3dhc20vanNhcGkvY29uc3RydWN0b3IvaW5zdGFudGlhdGUuYW55LWV4cGVjdGVk
LnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dh
c20vanNhcGkvY29uc3RydWN0b3IvaW5zdGFudGlhdGUuYW55LWV4cGVjdGVkLnR4dApAQCAtMTMs
MzIgKzEzLDM2IEBAIEZBSUwgZ2V0dGVyIG9yZGVyIGZvciBpbXBvcnRzIG9iamVjdDogQnVmZmVy
U291cmNlIGFyZ3VtZW50IGFzc2VydF9hcnJheV9lcXVhbHM6CiBGQUlMIGdldHRlciBvcmRlciBm
b3IgaW1wb3J0cyBvYmplY3Q6IE1vZHVsZSBhcmd1bWVudCBhc3NlcnRfYXJyYXlfZXF1YWxzOiBl
eHBlY3RlZCBwcm9wZXJ0eSAxIHRvIGJlICJnbG9iYWwxIGdldHRlciIgYnV0IGdvdCAibWVtb3J5
IGdldHRlciIgKGV4cGVjdGVkIGFycmF5IFsibW9kdWxlIGdldHRlciIsICJnbG9iYWwxIGdldHRl
ciIsICJtb2R1bGUyIGdldHRlciIsICJnbG9iYWwzIGdldHRlciIsICJtb2R1bGUgZ2V0dGVyIiwg
Im1lbW9yeSBnZXR0ZXIiLCAibW9kdWxlIGdldHRlciIsICJnbG9iYWwyIGdldHRlciJdIGdvdCBb
Im1vZHVsZSBnZXR0ZXIiLCAibWVtb3J5IGdldHRlciIsICJtb2R1bGUgZ2V0dGVyIiwgImdsb2Jh
bDEgZ2V0dGVyIiwgIm1vZHVsZTIgZ2V0dGVyIiwgImdsb2JhbDMgZ2V0dGVyIiwgIm1vZHVsZSBn
ZXR0ZXIiLCAiZ2xvYmFsMiBnZXR0ZXIiXSkKIFBBU1MgaW1wb3J0czogQnVmZmVyU291cmNlIGFy
Z3VtZW50CiBQQVNTIGltcG9ydHM6IE1vZHVsZSBhcmd1bWVudAotRkFJTCBObyBpbXBvcnRzOiBC
dWZmZXJTb3VyY2UgYXJndW1lbnQgYXNzZXJ0X2FycmF5X2VxdWFsczogbWF0Y2hpbmcgZXhwb3J0
IGtleXMgZXhwZWN0ZWQgcHJvcGVydHkgMiB0byBiZSAidGFibGUiIGJ1dCBnb3QgImdsb2JhbCIg
KGV4cGVjdGVkIGFycmF5IFsiZm4iLCAiZm4yIiwgInRhYmxlIiwgImdsb2JhbCIsICJnbG9iYWwy
IiwgIm1lbW9yeSJdIGdvdCBbImZuIiwgImZuMiIsICJnbG9iYWwiLCAiZ2xvYmFsMiIsICJtZW1v
cnkiLCAidGFibGUiXSkKLUZBSUwgTm8gaW1wb3J0czogTW9kdWxlIGFyZ3VtZW50IGFzc2VydF9h
cnJheV9lcXVhbHM6IG1hdGNoaW5nIGV4cG9ydCBrZXlzIGV4cGVjdGVkIHByb3BlcnR5IDIgdG8g
YmUgInRhYmxlIiBidXQgZ290ICJnbG9iYWwiIChleHBlY3RlZCBhcnJheSBbImZuIiwgImZuMiIs
ICJ0YWJsZSIsICJnbG9iYWwiLCAiZ2xvYmFsMiIsICJtZW1vcnkiXSBnb3QgWyJmbiIsICJmbjIi
LCAiZ2xvYmFsIiwgImdsb2JhbDIiLCAibWVtb3J5IiwgInRhYmxlIl0pCi1GQUlMIGV4cG9ydHMg
YW5kIGltcG9ydHM6IEJ1ZmZlclNvdXJjZSBhcmd1bWVudCBhc3NlcnRfZmFsc2U6IGZuOiB3cml0
YWJsZSBleHBlY3RlZCBmYWxzZSBnb3QgdHJ1ZQotRkFJTCBleHBvcnRzIGFuZCBpbXBvcnRzOiBN
b2R1bGUgYXJndW1lbnQgYXNzZXJ0X2ZhbHNlOiBmbjogd3JpdGFibGUgZXhwZWN0ZWQgZmFsc2Ug
Z290IHRydWUKK1BBU1MgTm8gaW1wb3J0czogQnVmZmVyU291cmNlIGFyZ3VtZW50CitQQVNTIE5v
IGltcG9ydHM6IE1vZHVsZSBhcmd1bWVudAorUEFTUyBleHBvcnRzIGFuZCBpbXBvcnRzOiBCdWZm
ZXJTb3VyY2UgYXJndW1lbnQKK1BBU1MgZXhwb3J0cyBhbmQgaW1wb3J0czogTW9kdWxlIGFyZ3Vt
ZW50CiBGQUlMIGk2NCBleHBvcnRzIGFuZCBpbXBvcnRzOiBCdWZmZXJTb3VyY2UgYXJndW1lbnQg
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTGlu
a0Vycm9yOiBpbXBvcnRlZCBnbG9iYWwgbW9kdWxlOmdsb2JhbCBjYW5ub3QgYmUgYW4gaTY0Igog
RkFJTCBpNjQgZXhwb3J0cyBhbmQgaW1wb3J0czogTW9kdWxlIGFyZ3VtZW50IHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIkxpbmtFcnJvcjogaW1w
b3J0ZWQgZ2xvYmFsIG1vZHVsZTpnbG9iYWwgY2Fubm90IGJlIGFuIGk2NCIKLUZBSUwgaW1wb3J0
IHdpdGggaTMyLXJldHVybmluZyBmdW5jdGlvbjogQnVmZmVyU291cmNlIGFyZ3VtZW50IGFzc2Vy
dF9mYWxzZTogZm4yOiB3cml0YWJsZSBleHBlY3RlZCBmYWxzZSBnb3QgdHJ1ZQotRkFJTCBpbXBv
cnQgd2l0aCBpMzItcmV0dXJuaW5nIGZ1bmN0aW9uOiBNb2R1bGUgYXJndW1lbnQgYXNzZXJ0X2Zh
bHNlOiBmbjI6IHdyaXRhYmxlIGV4cGVjdGVkIGZhbHNlIGdvdCB0cnVlCi1GQUlMIGltcG9ydCB3
aXRoIGZ1bmN0aW9uIHRoYXQgdGFrZXMgYW5kIHJldHVybnMgaTMyOiBCdWZmZXJTb3VyY2UgYXJn
dW1lbnQgYXNzZXJ0X2ZhbHNlOiBmbjI6IHdyaXRhYmxlIGV4cGVjdGVkIGZhbHNlIGdvdCB0cnVl
Ci1GQUlMIGltcG9ydCB3aXRoIGZ1bmN0aW9uIHRoYXQgdGFrZXMgYW5kIHJldHVybnMgaTMyOiBN
b2R1bGUgYXJndW1lbnQgYXNzZXJ0X2ZhbHNlOiBmbjI6IHdyaXRhYmxlIGV4cGVjdGVkIGZhbHNl
IGdvdCB0cnVlCi1GQUlMIGltcG9ydCB3aXRoIGk2NC1yZXR1cm5pbmcgZnVuY3Rpb246IEJ1ZmZl
clNvdXJjZSBhcmd1bWVudCBhc3NlcnRfZmFsc2U6IGZuMjogd3JpdGFibGUgZXhwZWN0ZWQgZmFs
c2UgZ290IHRydWUKLUZBSUwgaW1wb3J0IHdpdGggaTY0LXJldHVybmluZyBmdW5jdGlvbjogTW9k
dWxlIGFyZ3VtZW50IGFzc2VydF9mYWxzZTogZm4yOiB3cml0YWJsZSBleHBlY3RlZCBmYWxzZSBn
b3QgdHJ1ZQotRkFJTCBpbXBvcnQgd2l0aCBmdW5jdGlvbiB0aGF0IHRha2VzIGFuZCByZXR1cm5z
IGk2NDogQnVmZmVyU291cmNlIGFyZ3VtZW50IGFzc2VydF9mYWxzZTogZm4yOiB3cml0YWJsZSBl
eHBlY3RlZCBmYWxzZSBnb3QgdHJ1ZQotRkFJTCBpbXBvcnQgd2l0aCBmdW5jdGlvbiB0aGF0IHRh
a2VzIGFuZCByZXR1cm5zIGk2NDogTW9kdWxlIGFyZ3VtZW50IGFzc2VydF9mYWxzZTogZm4yOiB3
cml0YWJsZSBleHBlY3RlZCBmYWxzZSBnb3QgdHJ1ZQotRkFJTCBpbXBvcnQgd2l0aCBpMzItdGFr
aW5nIGZ1bmN0aW9uOiBCdWZmZXJTb3VyY2UgYXJndW1lbnQgYXNzZXJ0X2ZhbHNlOiBmbjogd3Jp
dGFibGUgZXhwZWN0ZWQgZmFsc2UgZ290IHRydWUKLUZBSUwgaW1wb3J0IHdpdGggaTMyLXRha2lu
ZyBmdW5jdGlvbjogTW9kdWxlIGFyZ3VtZW50IGFzc2VydF9mYWxzZTogZm46IHdyaXRhYmxlIGV4
cGVjdGVkIGZhbHNlIGdvdCB0cnVlCi1GQUlMIGltcG9ydCB3aXRoIGk2NC10YWtpbmcgZnVuY3Rp
b246IEJ1ZmZlclNvdXJjZSBhcmd1bWVudCBhc3NlcnRfZmFsc2U6IGZuOiB3cml0YWJsZSBleHBl
Y3RlZCBmYWxzZSBnb3QgdHJ1ZQotRkFJTCBpbXBvcnQgd2l0aCBpNjQtdGFraW5nIGZ1bmN0aW9u
OiBNb2R1bGUgYXJndW1lbnQgYXNzZXJ0X2ZhbHNlOiBmbjogd3JpdGFibGUgZXhwZWN0ZWQgZmFs
c2UgZ290IHRydWUKLUZBSUwgZXhwb3J0IGk2NC1yZXR1cm5pbmcgZnVuY3Rpb246IEJ1ZmZlclNv
dXJjZSBhcmd1bWVudCBhc3NlcnRfZmFsc2U6IGZuOiB3cml0YWJsZSBleHBlY3RlZCBmYWxzZSBn
b3QgdHJ1ZQotRkFJTCBleHBvcnQgaTY0LXJldHVybmluZyBmdW5jdGlvbjogTW9kdWxlIGFyZ3Vt
ZW50IGFzc2VydF9mYWxzZTogZm46IHdyaXRhYmxlIGV4cGVjdGVkIGZhbHNlIGdvdCB0cnVlCi1G
QUlMIGkzMiBtdXRhYmxlIFdlYkFzc2VtYmx5Lkdsb2JhbCBpbXBvcnQ6IEJ1ZmZlclNvdXJjZSBh
cmd1bWVudCBhc3NlcnRfZmFsc2U6IGZuOiB3cml0YWJsZSBleHBlY3RlZCBmYWxzZSBnb3QgdHJ1
ZQotRkFJTCBpMzIgbXV0YWJsZSBXZWJBc3NlbWJseS5HbG9iYWwgaW1wb3J0OiBNb2R1bGUgYXJn
dW1lbnQgYXNzZXJ0X2ZhbHNlOiBmbjogd3JpdGFibGUgZXhwZWN0ZWQgZmFsc2UgZ290IHRydWUK
K1BBU1MgaW1wb3J0IHdpdGggaTMyLXJldHVybmluZyBmdW5jdGlvbjogQnVmZmVyU291cmNlIGFy
Z3VtZW50CitQQVNTIGltcG9ydCB3aXRoIGkzMi1yZXR1cm5pbmcgZnVuY3Rpb246IE1vZHVsZSBh
cmd1bWVudAorUEFTUyBpbXBvcnQgd2l0aCBmdW5jdGlvbiB0aGF0IHRha2VzIGFuZCByZXR1cm5z
IGkzMjogQnVmZmVyU291cmNlIGFyZ3VtZW50CitQQVNTIGltcG9ydCB3aXRoIGZ1bmN0aW9uIHRo
YXQgdGFrZXMgYW5kIHJldHVybnMgaTMyOiBNb2R1bGUgYXJndW1lbnQKK0ZBSUwgaW1wb3J0IHdp
dGggaTY0LXJldHVybmluZyBmdW5jdGlvbjogQnVmZmVyU291cmNlIGFyZ3VtZW50IGFzc2VydF90
cnVlOiBTaG91bGQgaGF2ZSBjYWxsZWQgaW50byBKUyBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQor
RkFJTCBpbXBvcnQgd2l0aCBpNjQtcmV0dXJuaW5nIGZ1bmN0aW9uOiBNb2R1bGUgYXJndW1lbnQg
YXNzZXJ0X3RydWU6IFNob3VsZCBoYXZlIGNhbGxlZCBpbnRvIEpTIGV4cGVjdGVkIHRydWUgZ290
IGZhbHNlCitGQUlMIGltcG9ydCB3aXRoIGZ1bmN0aW9uIHRoYXQgdGFrZXMgYW5kIHJldHVybnMg
aTY0OiBCdWZmZXJTb3VyY2UgYXJndW1lbnQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiUnVudGltZUVycm9yOiBXZWJBc3NlbWJseSBmdW5jdGlv
biB0aGF0IHJldHVybnMgaTY0IGNhbid0IGJlIGNhbGxlZCBmcm9tIEphdmFTY3JpcHQgKGV2YWx1
YXRpbmcgJ2luc3RhbmNlLmV4cG9ydHMuZm4yKCknKSIKK0ZBSUwgaW1wb3J0IHdpdGggZnVuY3Rp
b24gdGhhdCB0YWtlcyBhbmQgcmV0dXJucyBpNjQ6IE1vZHVsZSBhcmd1bWVudCBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJSdW50aW1lRXJyb3I6
IFdlYkFzc2VtYmx5IGZ1bmN0aW9uIHRoYXQgcmV0dXJucyBpNjQgY2FuJ3QgYmUgY2FsbGVkIGZy
b20gSmF2YVNjcmlwdCAoZXZhbHVhdGluZyAnaW5zdGFuY2UuZXhwb3J0cy5mbjIoKScpIgorUEFT
UyBpbXBvcnQgd2l0aCBpMzItdGFraW5nIGZ1bmN0aW9uOiBCdWZmZXJTb3VyY2UgYXJndW1lbnQK
K1BBU1MgaW1wb3J0IHdpdGggaTMyLXRha2luZyBmdW5jdGlvbjogTW9kdWxlIGFyZ3VtZW50CitG
QUlMIGltcG9ydCB3aXRoIGk2NC10YWtpbmcgZnVuY3Rpb246IEJ1ZmZlclNvdXJjZSBhcmd1bWVu
dCBhc3NlcnRfdGhyb3dzX2pzOiBmdW5jdGlvbiAiKCkgPT4gaW5zdGFuY2UuZXhwb3J0cy5mbig2
KSIgdGhyZXcgb2JqZWN0ICJSdW50aW1lRXJyb3I6IFdlYkFzc2VtYmx5IGZ1bmN0aW9uIHdpdGgg
YW4gaTY0IGFyZ3VtZW50IGNhbid0IGJlIGNhbGxlZCBmcm9tIEphdmFTY3JpcHQgKGV2YWx1YXRp
bmcgJ2luc3RhbmNlLmV4cG9ydHMuZm4oNiknKSIgKCJSdW50aW1lRXJyb3IiKSBleHBlY3RlZCBp
bnN0YW5jZSBvZiBmdW5jdGlvbiAiZnVuY3Rpb24gVHlwZUVycm9yKCkgeworICAgIFtuYXRpdmUg
Y29kZV0KK30iICgiVHlwZUVycm9yIikKK0ZBSUwgaW1wb3J0IHdpdGggaTY0LXRha2luZyBmdW5j
dGlvbjogTW9kdWxlIGFyZ3VtZW50IGFzc2VydF90aHJvd3NfanM6IGZ1bmN0aW9uICIoKSA9PiBp
bnN0YW5jZS5leHBvcnRzLmZuKDYpIiB0aHJldyBvYmplY3QgIlJ1bnRpbWVFcnJvcjogV2ViQXNz
ZW1ibHkgZnVuY3Rpb24gd2l0aCBhbiBpNjQgYXJndW1lbnQgY2FuJ3QgYmUgY2FsbGVkIGZyb20g
SmF2YVNjcmlwdCAoZXZhbHVhdGluZyAnaW5zdGFuY2UuZXhwb3J0cy5mbig2KScpIiAoIlJ1bnRp
bWVFcnJvciIpIGV4cGVjdGVkIGluc3RhbmNlIG9mIGZ1bmN0aW9uICJmdW5jdGlvbiBUeXBlRXJy
b3IoKSB7CisgICAgW25hdGl2ZSBjb2RlXQorfSIgKCJUeXBlRXJyb3IiKQorRkFJTCBleHBvcnQg
aTY0LXJldHVybmluZyBmdW5jdGlvbjogQnVmZmVyU291cmNlIGFyZ3VtZW50IHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlJ1bnRpbWVFcnJvcjog
V2ViQXNzZW1ibHkgZnVuY3Rpb24gdGhhdCByZXR1cm5zIGk2NCBjYW4ndCBiZSBjYWxsZWQgZnJv
bSBKYXZhU2NyaXB0IChldmFsdWF0aW5nICdpbnN0YW5jZS5leHBvcnRzLmZuKCknKSIKK0ZBSUwg
ZXhwb3J0IGk2NC1yZXR1cm5pbmcgZnVuY3Rpb246IE1vZHVsZSBhcmd1bWVudCBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJSdW50aW1lRXJyb3I6
IFdlYkFzc2VtYmx5IGZ1bmN0aW9uIHRoYXQgcmV0dXJucyBpNjQgY2FuJ3QgYmUgY2FsbGVkIGZy
b20gSmF2YVNjcmlwdCAoZXZhbHVhdGluZyAnaW5zdGFuY2UuZXhwb3J0cy5mbigpJykiCitQQVNT
IGkzMiBtdXRhYmxlIFdlYkFzc2VtYmx5Lkdsb2JhbCBpbXBvcnQ6IEJ1ZmZlclNvdXJjZSBhcmd1
bWVudAorUEFTUyBpMzIgbXV0YWJsZSBXZWJBc3NlbWJseS5HbG9iYWwgaW1wb3J0OiBNb2R1bGUg
YXJndW1lbnQKIEZBSUwgaTY0IG11dGFibGUgV2ViQXNzZW1ibHkuR2xvYmFsIGltcG9ydDogQnVm
ZmVyU291cmNlIGFyZ3VtZW50IFdlYkFzc2VtYmx5Lkdsb2JhbCBkb2VzIG5vdCBhY2NlcHQgaTY0
IGluaXRpYWwgdmFsdWUKIEZBSUwgaTY0IG11dGFibGUgV2ViQXNzZW1ibHkuR2xvYmFsIGltcG9y
dDogTW9kdWxlIGFyZ3VtZW50IFdlYkFzc2VtYmx5Lkdsb2JhbCBkb2VzIG5vdCBhY2NlcHQgaTY0
IGluaXRpYWwgdmFsdWUKLUZBSUwgTXVsdGlwbGUgaTY0IGFyZ3VtZW50czogQnVmZmVyU291cmNl
IGFyZ3VtZW50IGFzc2VydF9mYWxzZTogZm46IHdyaXRhYmxlIGV4cGVjdGVkIGZhbHNlIGdvdCB0
cnVlCi1GQUlMIE11bHRpcGxlIGk2NCBhcmd1bWVudHM6IE1vZHVsZSBhcmd1bWVudCBhc3NlcnRf
ZmFsc2U6IGZuOiB3cml0YWJsZSBleHBlY3RlZCBmYWxzZSBnb3QgdHJ1ZQorRkFJTCBNdWx0aXBs
ZSBpNjQgYXJndW1lbnRzOiBCdWZmZXJTb3VyY2UgYXJndW1lbnQgcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiUnVudGltZUVycm9yOiBXZWJBc3Nl
bWJseSBmdW5jdGlvbiB3aXRoIGFuIGk2NCBhcmd1bWVudCBjYW4ndCBiZSBjYWxsZWQgZnJvbSBK
YXZhU2NyaXB0IChldmFsdWF0aW5nICdmbigxbiwgMG4pJykiCitGQUlMIE11bHRpcGxlIGk2NCBh
cmd1bWVudHM6IE1vZHVsZSBhcmd1bWVudCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJSdW50aW1lRXJyb3I6IFdlYkFzc2VtYmx5IGZ1bmN0aW9u
IHdpdGggYW4gaTY0IGFyZ3VtZW50IGNhbid0IGJlIGNhbGxlZCBmcm9tIEphdmFTY3JpcHQgKGV2
YWx1YXRpbmcgJ2ZuKDFuLCAwbiknKSIKIFBBU1Mgc3RyYXkgYXJndW1lbnQ6IEJ1ZmZlclNvdXJj
ZSBhcmd1bWVudAogUEFTUyBzdHJheSBhcmd1bWVudDogTW9kdWxlIGFyZ3VtZW50CiBQQVNTIFN5
bmNocm9ub3VzIG9wdGlvbnMgaGFuZGxpbmc6IEJ1ZmZlciBhcmd1bWVudApkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93YXNtL2pzYXBpL2Nv
bnN0cnVjdG9yL2luc3RhbnRpYXRlLmFueS53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93YXNtL2pzYXBpL2NvbnN0cnVjdG9y
L2luc3RhbnRpYXRlLmFueS53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IGRhYzc1OTNhMTIxNTk0
ZGY5YTU5YmMzYjUwMWQ1NThhMmQxYWUxYjEuLjI1ZTg1ZDhiYzQ0ZGRkYjY5ZWNlOWY3ZWZhNTJh
ODg4YmVkMTk5MGIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvd2FzbS9qc2FwaS9jb25zdHJ1Y3Rvci9pbnN0YW50aWF0ZS5hbnkud29ya2Vy
LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3dhc20vanNhcGkvY29uc3RydWN0b3IvaW5zdGFudGlhdGUuYW55Lndvcmtlci1leHBl
Y3RlZC50eHQKQEAgLTEzLDMyICsxMywzNiBAQCBGQUlMIGdldHRlciBvcmRlciBmb3IgaW1wb3J0
cyBvYmplY3Q6IEJ1ZmZlclNvdXJjZSBhcmd1bWVudCBhc3NlcnRfYXJyYXlfZXF1YWxzOgogRkFJ
TCBnZXR0ZXIgb3JkZXIgZm9yIGltcG9ydHMgb2JqZWN0OiBNb2R1bGUgYXJndW1lbnQgYXNzZXJ0
X2FycmF5X2VxdWFsczogZXhwZWN0ZWQgcHJvcGVydHkgMSB0byBiZSAiZ2xvYmFsMSBnZXR0ZXIi
IGJ1dCBnb3QgIm1lbW9yeSBnZXR0ZXIiIChleHBlY3RlZCBhcnJheSBbIm1vZHVsZSBnZXR0ZXIi
LCAiZ2xvYmFsMSBnZXR0ZXIiLCAibW9kdWxlMiBnZXR0ZXIiLCAiZ2xvYmFsMyBnZXR0ZXIiLCAi
bW9kdWxlIGdldHRlciIsICJtZW1vcnkgZ2V0dGVyIiwgIm1vZHVsZSBnZXR0ZXIiLCAiZ2xvYmFs
MiBnZXR0ZXIiXSBnb3QgWyJtb2R1bGUgZ2V0dGVyIiwgIm1lbW9yeSBnZXR0ZXIiLCAibW9kdWxl
IGdldHRlciIsICJnbG9iYWwxIGdldHRlciIsICJtb2R1bGUyIGdldHRlciIsICJnbG9iYWwzIGdl
dHRlciIsICJtb2R1bGUgZ2V0dGVyIiwgImdsb2JhbDIgZ2V0dGVyIl0pCiBQQVNTIGltcG9ydHM6
IEJ1ZmZlclNvdXJjZSBhcmd1bWVudAogUEFTUyBpbXBvcnRzOiBNb2R1bGUgYXJndW1lbnQKLUZB
SUwgTm8gaW1wb3J0czogQnVmZmVyU291cmNlIGFyZ3VtZW50IGFzc2VydF9hcnJheV9lcXVhbHM6
IG1hdGNoaW5nIGV4cG9ydCBrZXlzIGV4cGVjdGVkIHByb3BlcnR5IDIgdG8gYmUgInRhYmxlIiBi
dXQgZ290ICJnbG9iYWwiIChleHBlY3RlZCBhcnJheSBbImZuIiwgImZuMiIsICJ0YWJsZSIsICJn
bG9iYWwiLCAiZ2xvYmFsMiIsICJtZW1vcnkiXSBnb3QgWyJmbiIsICJmbjIiLCAiZ2xvYmFsIiwg
Imdsb2JhbDIiLCAibWVtb3J5IiwgInRhYmxlIl0pCi1GQUlMIE5vIGltcG9ydHM6IE1vZHVsZSBh
cmd1bWVudCBhc3NlcnRfYXJyYXlfZXF1YWxzOiBtYXRjaGluZyBleHBvcnQga2V5cyBleHBlY3Rl
ZCBwcm9wZXJ0eSAyIHRvIGJlICJ0YWJsZSIgYnV0IGdvdCAiZ2xvYmFsIiAoZXhwZWN0ZWQgYXJy
YXkgWyJmbiIsICJmbjIiLCAidGFibGUiLCAiZ2xvYmFsIiwgImdsb2JhbDIiLCAibWVtb3J5Il0g
Z290IFsiZm4iLCAiZm4yIiwgImdsb2JhbCIsICJnbG9iYWwyIiwgIm1lbW9yeSIsICJ0YWJsZSJd
KQotRkFJTCBleHBvcnRzIGFuZCBpbXBvcnRzOiBCdWZmZXJTb3VyY2UgYXJndW1lbnQgYXNzZXJ0
X2ZhbHNlOiBmbjogd3JpdGFibGUgZXhwZWN0ZWQgZmFsc2UgZ290IHRydWUKLUZBSUwgZXhwb3J0
cyBhbmQgaW1wb3J0czogTW9kdWxlIGFyZ3VtZW50IGFzc2VydF9mYWxzZTogZm46IHdyaXRhYmxl
IGV4cGVjdGVkIGZhbHNlIGdvdCB0cnVlCitQQVNTIE5vIGltcG9ydHM6IEJ1ZmZlclNvdXJjZSBh
cmd1bWVudAorUEFTUyBObyBpbXBvcnRzOiBNb2R1bGUgYXJndW1lbnQKK1BBU1MgZXhwb3J0cyBh
bmQgaW1wb3J0czogQnVmZmVyU291cmNlIGFyZ3VtZW50CitQQVNTIGV4cG9ydHMgYW5kIGltcG9y
dHM6IE1vZHVsZSBhcmd1bWVudAogRkFJTCBpNjQgZXhwb3J0cyBhbmQgaW1wb3J0czogQnVmZmVy
U291cmNlIGFyZ3VtZW50IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIkxpbmtFcnJvcjogaW1wb3J0ZWQgZ2xvYmFsIG1vZHVsZTpnbG9iYWwgY2Fu
bm90IGJlIGFuIGk2NCIKIEZBSUwgaTY0IGV4cG9ydHMgYW5kIGltcG9ydHM6IE1vZHVsZSBhcmd1
bWVudCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJMaW5rRXJyb3I6IGltcG9ydGVkIGdsb2JhbCBtb2R1bGU6Z2xvYmFsIGNhbm5vdCBiZSBhbiBp
NjQiCi1GQUlMIGltcG9ydCB3aXRoIGkzMi1yZXR1cm5pbmcgZnVuY3Rpb246IEJ1ZmZlclNvdXJj
ZSBhcmd1bWVudCBhc3NlcnRfZmFsc2U6IGZuMjogd3JpdGFibGUgZXhwZWN0ZWQgZmFsc2UgZ290
IHRydWUKLUZBSUwgaW1wb3J0IHdpdGggaTMyLXJldHVybmluZyBmdW5jdGlvbjogTW9kdWxlIGFy
Z3VtZW50IGFzc2VydF9mYWxzZTogZm4yOiB3cml0YWJsZSBleHBlY3RlZCBmYWxzZSBnb3QgdHJ1
ZQotRkFJTCBpbXBvcnQgd2l0aCBmdW5jdGlvbiB0aGF0IHRha2VzIGFuZCByZXR1cm5zIGkzMjog
QnVmZmVyU291cmNlIGFyZ3VtZW50IGFzc2VydF9mYWxzZTogZm4yOiB3cml0YWJsZSBleHBlY3Rl
ZCBmYWxzZSBnb3QgdHJ1ZQotRkFJTCBpbXBvcnQgd2l0aCBmdW5jdGlvbiB0aGF0IHRha2VzIGFu
ZCByZXR1cm5zIGkzMjogTW9kdWxlIGFyZ3VtZW50IGFzc2VydF9mYWxzZTogZm4yOiB3cml0YWJs
ZSBleHBlY3RlZCBmYWxzZSBnb3QgdHJ1ZQotRkFJTCBpbXBvcnQgd2l0aCBpNjQtcmV0dXJuaW5n
IGZ1bmN0aW9uOiBCdWZmZXJTb3VyY2UgYXJndW1lbnQgYXNzZXJ0X2ZhbHNlOiBmbjI6IHdyaXRh
YmxlIGV4cGVjdGVkIGZhbHNlIGdvdCB0cnVlCi1GQUlMIGltcG9ydCB3aXRoIGk2NC1yZXR1cm5p
bmcgZnVuY3Rpb246IE1vZHVsZSBhcmd1bWVudCBhc3NlcnRfZmFsc2U6IGZuMjogd3JpdGFibGUg
ZXhwZWN0ZWQgZmFsc2UgZ290IHRydWUKLUZBSUwgaW1wb3J0IHdpdGggZnVuY3Rpb24gdGhhdCB0
YWtlcyBhbmQgcmV0dXJucyBpNjQ6IEJ1ZmZlclNvdXJjZSBhcmd1bWVudCBhc3NlcnRfZmFsc2U6
IGZuMjogd3JpdGFibGUgZXhwZWN0ZWQgZmFsc2UgZ290IHRydWUKLUZBSUwgaW1wb3J0IHdpdGgg
ZnVuY3Rpb24gdGhhdCB0YWtlcyBhbmQgcmV0dXJucyBpNjQ6IE1vZHVsZSBhcmd1bWVudCBhc3Nl
cnRfZmFsc2U6IGZuMjogd3JpdGFibGUgZXhwZWN0ZWQgZmFsc2UgZ290IHRydWUKLUZBSUwgaW1w
b3J0IHdpdGggaTMyLXRha2luZyBmdW5jdGlvbjogQnVmZmVyU291cmNlIGFyZ3VtZW50IGFzc2Vy
dF9mYWxzZTogZm46IHdyaXRhYmxlIGV4cGVjdGVkIGZhbHNlIGdvdCB0cnVlCi1GQUlMIGltcG9y
dCB3aXRoIGkzMi10YWtpbmcgZnVuY3Rpb246IE1vZHVsZSBhcmd1bWVudCBhc3NlcnRfZmFsc2U6
IGZuOiB3cml0YWJsZSBleHBlY3RlZCBmYWxzZSBnb3QgdHJ1ZQotRkFJTCBpbXBvcnQgd2l0aCBp
NjQtdGFraW5nIGZ1bmN0aW9uOiBCdWZmZXJTb3VyY2UgYXJndW1lbnQgYXNzZXJ0X2ZhbHNlOiBm
bjogd3JpdGFibGUgZXhwZWN0ZWQgZmFsc2UgZ290IHRydWUKLUZBSUwgaW1wb3J0IHdpdGggaTY0
LXRha2luZyBmdW5jdGlvbjogTW9kdWxlIGFyZ3VtZW50IGFzc2VydF9mYWxzZTogZm46IHdyaXRh
YmxlIGV4cGVjdGVkIGZhbHNlIGdvdCB0cnVlCi1GQUlMIGV4cG9ydCBpNjQtcmV0dXJuaW5nIGZ1
bmN0aW9uOiBCdWZmZXJTb3VyY2UgYXJndW1lbnQgYXNzZXJ0X2ZhbHNlOiBmbjogd3JpdGFibGUg
ZXhwZWN0ZWQgZmFsc2UgZ290IHRydWUKLUZBSUwgZXhwb3J0IGk2NC1yZXR1cm5pbmcgZnVuY3Rp
b246IE1vZHVsZSBhcmd1bWVudCBhc3NlcnRfZmFsc2U6IGZuOiB3cml0YWJsZSBleHBlY3RlZCBm
YWxzZSBnb3QgdHJ1ZQotRkFJTCBpMzIgbXV0YWJsZSBXZWJBc3NlbWJseS5HbG9iYWwgaW1wb3J0
OiBCdWZmZXJTb3VyY2UgYXJndW1lbnQgYXNzZXJ0X2ZhbHNlOiBmbjogd3JpdGFibGUgZXhwZWN0
ZWQgZmFsc2UgZ290IHRydWUKLUZBSUwgaTMyIG11dGFibGUgV2ViQXNzZW1ibHkuR2xvYmFsIGlt
cG9ydDogTW9kdWxlIGFyZ3VtZW50IGFzc2VydF9mYWxzZTogZm46IHdyaXRhYmxlIGV4cGVjdGVk
IGZhbHNlIGdvdCB0cnVlCitQQVNTIGltcG9ydCB3aXRoIGkzMi1yZXR1cm5pbmcgZnVuY3Rpb246
IEJ1ZmZlclNvdXJjZSBhcmd1bWVudAorUEFTUyBpbXBvcnQgd2l0aCBpMzItcmV0dXJuaW5nIGZ1
bmN0aW9uOiBNb2R1bGUgYXJndW1lbnQKK1BBU1MgaW1wb3J0IHdpdGggZnVuY3Rpb24gdGhhdCB0
YWtlcyBhbmQgcmV0dXJucyBpMzI6IEJ1ZmZlclNvdXJjZSBhcmd1bWVudAorUEFTUyBpbXBvcnQg
d2l0aCBmdW5jdGlvbiB0aGF0IHRha2VzIGFuZCByZXR1cm5zIGkzMjogTW9kdWxlIGFyZ3VtZW50
CitGQUlMIGltcG9ydCB3aXRoIGk2NC1yZXR1cm5pbmcgZnVuY3Rpb246IEJ1ZmZlclNvdXJjZSBh
cmd1bWVudCBhc3NlcnRfdHJ1ZTogU2hvdWxkIGhhdmUgY2FsbGVkIGludG8gSlMgZXhwZWN0ZWQg
dHJ1ZSBnb3QgZmFsc2UKK0ZBSUwgaW1wb3J0IHdpdGggaTY0LXJldHVybmluZyBmdW5jdGlvbjog
TW9kdWxlIGFyZ3VtZW50IGFzc2VydF90cnVlOiBTaG91bGQgaGF2ZSBjYWxsZWQgaW50byBKUyBl
eHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorRkFJTCBpbXBvcnQgd2l0aCBmdW5jdGlvbiB0aGF0IHRh
a2VzIGFuZCByZXR1cm5zIGk2NDogQnVmZmVyU291cmNlIGFyZ3VtZW50IHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlJ1bnRpbWVFcnJvcjogV2Vi
QXNzZW1ibHkgZnVuY3Rpb24gdGhhdCByZXR1cm5zIGk2NCBjYW4ndCBiZSBjYWxsZWQgZnJvbSBK
YXZhU2NyaXB0IChldmFsdWF0aW5nICdpbnN0YW5jZS5leHBvcnRzLmZuMigpJykiCitGQUlMIGlt
cG9ydCB3aXRoIGZ1bmN0aW9uIHRoYXQgdGFrZXMgYW5kIHJldHVybnMgaTY0OiBNb2R1bGUgYXJn
dW1lbnQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiUnVudGltZUVycm9yOiBXZWJBc3NlbWJseSBmdW5jdGlvbiB0aGF0IHJldHVybnMgaTY0IGNh
bid0IGJlIGNhbGxlZCBmcm9tIEphdmFTY3JpcHQgKGV2YWx1YXRpbmcgJ2luc3RhbmNlLmV4cG9y
dHMuZm4yKCknKSIKK1BBU1MgaW1wb3J0IHdpdGggaTMyLXRha2luZyBmdW5jdGlvbjogQnVmZmVy
U291cmNlIGFyZ3VtZW50CitQQVNTIGltcG9ydCB3aXRoIGkzMi10YWtpbmcgZnVuY3Rpb246IE1v
ZHVsZSBhcmd1bWVudAorRkFJTCBpbXBvcnQgd2l0aCBpNjQtdGFraW5nIGZ1bmN0aW9uOiBCdWZm
ZXJTb3VyY2UgYXJndW1lbnQgYXNzZXJ0X3Rocm93c19qczogZnVuY3Rpb24gIigpID0+IGluc3Rh
bmNlLmV4cG9ydHMuZm4oNikiIHRocmV3IG9iamVjdCAiUnVudGltZUVycm9yOiBXZWJBc3NlbWJs
eSBmdW5jdGlvbiB3aXRoIGFuIGk2NCBhcmd1bWVudCBjYW4ndCBiZSBjYWxsZWQgZnJvbSBKYXZh
U2NyaXB0IChldmFsdWF0aW5nICdpbnN0YW5jZS5leHBvcnRzLmZuKDYpJykiICgiUnVudGltZUVy
cm9yIikgZXhwZWN0ZWQgaW5zdGFuY2Ugb2YgZnVuY3Rpb24gImZ1bmN0aW9uIFR5cGVFcnJvcigp
IHsKKyAgICBbbmF0aXZlIGNvZGVdCit9IiAoIlR5cGVFcnJvciIpCitGQUlMIGltcG9ydCB3aXRo
IGk2NC10YWtpbmcgZnVuY3Rpb246IE1vZHVsZSBhcmd1bWVudCBhc3NlcnRfdGhyb3dzX2pzOiBm
dW5jdGlvbiAiKCkgPT4gaW5zdGFuY2UuZXhwb3J0cy5mbig2KSIgdGhyZXcgb2JqZWN0ICJSdW50
aW1lRXJyb3I6IFdlYkFzc2VtYmx5IGZ1bmN0aW9uIHdpdGggYW4gaTY0IGFyZ3VtZW50IGNhbid0
IGJlIGNhbGxlZCBmcm9tIEphdmFTY3JpcHQgKGV2YWx1YXRpbmcgJ2luc3RhbmNlLmV4cG9ydHMu
Zm4oNiknKSIgKCJSdW50aW1lRXJyb3IiKSBleHBlY3RlZCBpbnN0YW5jZSBvZiBmdW5jdGlvbiAi
ZnVuY3Rpb24gVHlwZUVycm9yKCkgeworICAgIFtuYXRpdmUgY29kZV0KK30iICgiVHlwZUVycm9y
IikKK0ZBSUwgZXhwb3J0IGk2NC1yZXR1cm5pbmcgZnVuY3Rpb246IEJ1ZmZlclNvdXJjZSBhcmd1
bWVudCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJSdW50aW1lRXJyb3I6IFdlYkFzc2VtYmx5IGZ1bmN0aW9uIHRoYXQgcmV0dXJucyBpNjQgY2Fu
J3QgYmUgY2FsbGVkIGZyb20gSmF2YVNjcmlwdCAoZXZhbHVhdGluZyAnaW5zdGFuY2UuZXhwb3J0
cy5mbigpJykiCitGQUlMIGV4cG9ydCBpNjQtcmV0dXJuaW5nIGZ1bmN0aW9uOiBNb2R1bGUgYXJn
dW1lbnQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiUnVudGltZUVycm9yOiBXZWJBc3NlbWJseSBmdW5jdGlvbiB0aGF0IHJldHVybnMgaTY0IGNh
bid0IGJlIGNhbGxlZCBmcm9tIEphdmFTY3JpcHQgKGV2YWx1YXRpbmcgJ2luc3RhbmNlLmV4cG9y
dHMuZm4oKScpIgorUEFTUyBpMzIgbXV0YWJsZSBXZWJBc3NlbWJseS5HbG9iYWwgaW1wb3J0OiBC
dWZmZXJTb3VyY2UgYXJndW1lbnQKK1BBU1MgaTMyIG11dGFibGUgV2ViQXNzZW1ibHkuR2xvYmFs
IGltcG9ydDogTW9kdWxlIGFyZ3VtZW50CiBGQUlMIGk2NCBtdXRhYmxlIFdlYkFzc2VtYmx5Lkds
b2JhbCBpbXBvcnQ6IEJ1ZmZlclNvdXJjZSBhcmd1bWVudCBXZWJBc3NlbWJseS5HbG9iYWwgZG9l
cyBub3QgYWNjZXB0IGk2NCBpbml0aWFsIHZhbHVlCiBGQUlMIGk2NCBtdXRhYmxlIFdlYkFzc2Vt
Ymx5Lkdsb2JhbCBpbXBvcnQ6IE1vZHVsZSBhcmd1bWVudCBXZWJBc3NlbWJseS5HbG9iYWwgZG9l
cyBub3QgYWNjZXB0IGk2NCBpbml0aWFsIHZhbHVlCi1GQUlMIE11bHRpcGxlIGk2NCBhcmd1bWVu
dHM6IEJ1ZmZlclNvdXJjZSBhcmd1bWVudCBhc3NlcnRfZmFsc2U6IGZuOiB3cml0YWJsZSBleHBl
Y3RlZCBmYWxzZSBnb3QgdHJ1ZQotRkFJTCBNdWx0aXBsZSBpNjQgYXJndW1lbnRzOiBNb2R1bGUg
YXJndW1lbnQgYXNzZXJ0X2ZhbHNlOiBmbjogd3JpdGFibGUgZXhwZWN0ZWQgZmFsc2UgZ290IHRy
dWUKK0ZBSUwgTXVsdGlwbGUgaTY0IGFyZ3VtZW50czogQnVmZmVyU291cmNlIGFyZ3VtZW50IHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlJ1bnRp
bWVFcnJvcjogV2ViQXNzZW1ibHkgZnVuY3Rpb24gd2l0aCBhbiBpNjQgYXJndW1lbnQgY2FuJ3Qg
YmUgY2FsbGVkIGZyb20gSmF2YVNjcmlwdCAoZXZhbHVhdGluZyAnZm4oMW4sIDBuKScpIgorRkFJ
TCBNdWx0aXBsZSBpNjQgYXJndW1lbnRzOiBNb2R1bGUgYXJndW1lbnQgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiUnVudGltZUVycm9yOiBXZWJB
c3NlbWJseSBmdW5jdGlvbiB3aXRoIGFuIGk2NCBhcmd1bWVudCBjYW4ndCBiZSBjYWxsZWQgZnJv
bSBKYXZhU2NyaXB0IChldmFsdWF0aW5nICdmbigxbiwgMG4pJykiCiBQQVNTIHN0cmF5IGFyZ3Vt
ZW50OiBCdWZmZXJTb3VyY2UgYXJndW1lbnQKIFBBU1Mgc3RyYXkgYXJndW1lbnQ6IE1vZHVsZSBh
cmd1bWVudAogUEFTUyBTeW5jaHJvbm91cyBvcHRpb25zIGhhbmRsaW5nOiBCdWZmZXIgYXJndW1l
bnQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvd2FzbS9qc2FwaS9pbnN0YW5jZS9jb25zdHJ1Y3Rvci5hbnktZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93YXNtL2pzYXBpL2luc3Rh
bmNlL2NvbnN0cnVjdG9yLmFueS1leHBlY3RlZC50eHQKaW5kZXggMTllOWM4MGFjY2Q4MzQ0ZjQ2
ZjYxYmQ3MDY5Yzc4NDllNjkzM2RkOC4uZDkzN2QwZWQzNmI2N2VjNTRhZGJiMzFjOTk0ZjBlZGEz
YjRkN2NhMCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy93YXNtL2pzYXBpL2luc3RhbmNlL2NvbnN0cnVjdG9yLmFueS1leHBlY3RlZC50eHQK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93YXNtL2pz
YXBpL2luc3RhbmNlL2NvbnN0cnVjdG9yLmFueS1leHBlY3RlZC50eHQKQEAgLTksMTggKzksMjAg
QEAgUEFTUyBFbXB0eSBtb2R1bGUgd2l0aCB1bmRlZmluZWQgaW1wb3J0cyBhcmd1bWVudAogUEFT
UyBFbXB0eSBtb2R1bGUgd2l0aCBlbXB0eSBpbXBvcnRzIGFyZ3VtZW50CiBGQUlMIGdldHRlciBv
cmRlciBmb3IgaW1wb3J0cyBvYmplY3QgYXNzZXJ0X2FycmF5X2VxdWFsczogZXhwZWN0ZWQgcHJv
cGVydHkgMSB0byBiZSAiZ2xvYmFsMSBnZXR0ZXIiIGJ1dCBnb3QgIm1lbW9yeSBnZXR0ZXIiIChl
eHBlY3RlZCBhcnJheSBbIm1vZHVsZSBnZXR0ZXIiLCAiZ2xvYmFsMSBnZXR0ZXIiLCAibW9kdWxl
MiBnZXR0ZXIiLCAiZ2xvYmFsMyBnZXR0ZXIiLCAibW9kdWxlIGdldHRlciIsICJtZW1vcnkgZ2V0
dGVyIiwgIm1vZHVsZSBnZXR0ZXIiLCAiZ2xvYmFsMiBnZXR0ZXIiXSBnb3QgWyJtb2R1bGUgZ2V0
dGVyIiwgIm1lbW9yeSBnZXR0ZXIiLCAibW9kdWxlIGdldHRlciIsICJnbG9iYWwxIGdldHRlciIs
ICJtb2R1bGUyIGdldHRlciIsICJnbG9iYWwzIGdldHRlciIsICJtb2R1bGUgZ2V0dGVyIiwgImds
b2JhbDIgZ2V0dGVyIl0pCiBQQVNTIGltcG9ydHMKLUZBSUwgTm8gaW1wb3J0cyBhc3NlcnRfYXJy
YXlfZXF1YWxzOiBtYXRjaGluZyBleHBvcnQga2V5cyBleHBlY3RlZCBwcm9wZXJ0eSAyIHRvIGJl
ICJ0YWJsZSIgYnV0IGdvdCAiZ2xvYmFsIiAoZXhwZWN0ZWQgYXJyYXkgWyJmbiIsICJmbjIiLCAi
dGFibGUiLCAiZ2xvYmFsIiwgImdsb2JhbDIiLCAibWVtb3J5Il0gZ290IFsiZm4iLCAiZm4yIiwg
Imdsb2JhbCIsICJnbG9iYWwyIiwgIm1lbW9yeSIsICJ0YWJsZSJdKQotRkFJTCBleHBvcnRzIGFu
ZCBpbXBvcnRzIGFzc2VydF9mYWxzZTogZm46IHdyaXRhYmxlIGV4cGVjdGVkIGZhbHNlIGdvdCB0
cnVlCitQQVNTIE5vIGltcG9ydHMKK1BBU1MgZXhwb3J0cyBhbmQgaW1wb3J0cwogRkFJTCBpNjQg
ZXhwb3J0cyBhbmQgaW1wb3J0cyBpbXBvcnRlZCBnbG9iYWwgbW9kdWxlOmdsb2JhbCBjYW5ub3Qg
YmUgYW4gaTY0IChldmFsdWF0aW5nICduZXcgV2ViQXNzZW1ibHkuSW5zdGFuY2UobW9kdWxlLCAu
Li5hcmdzKScpCi1GQUlMIGltcG9ydCB3aXRoIGkzMi1yZXR1cm5pbmcgZnVuY3Rpb24gYXNzZXJ0
X2ZhbHNlOiBmbjI6IHdyaXRhYmxlIGV4cGVjdGVkIGZhbHNlIGdvdCB0cnVlCi1GQUlMIGltcG9y
dCB3aXRoIGZ1bmN0aW9uIHRoYXQgdGFrZXMgYW5kIHJldHVybnMgaTMyIGFzc2VydF9mYWxzZTog
Zm4yOiB3cml0YWJsZSBleHBlY3RlZCBmYWxzZSBnb3QgdHJ1ZQotRkFJTCBpbXBvcnQgd2l0aCBp
NjQtcmV0dXJuaW5nIGZ1bmN0aW9uIGFzc2VydF9mYWxzZTogZm4yOiB3cml0YWJsZSBleHBlY3Rl
ZCBmYWxzZSBnb3QgdHJ1ZQotRkFJTCBpbXBvcnQgd2l0aCBmdW5jdGlvbiB0aGF0IHRha2VzIGFu
ZCByZXR1cm5zIGk2NCBhc3NlcnRfZmFsc2U6IGZuMjogd3JpdGFibGUgZXhwZWN0ZWQgZmFsc2Ug
Z290IHRydWUKLUZBSUwgaW1wb3J0IHdpdGggaTMyLXRha2luZyBmdW5jdGlvbiBhc3NlcnRfZmFs
c2U6IGZuOiB3cml0YWJsZSBleHBlY3RlZCBmYWxzZSBnb3QgdHJ1ZQotRkFJTCBpbXBvcnQgd2l0
aCBpNjQtdGFraW5nIGZ1bmN0aW9uIGFzc2VydF9mYWxzZTogZm46IHdyaXRhYmxlIGV4cGVjdGVk
IGZhbHNlIGdvdCB0cnVlCi1GQUlMIGV4cG9ydCBpNjQtcmV0dXJuaW5nIGZ1bmN0aW9uIGFzc2Vy
dF9mYWxzZTogZm46IHdyaXRhYmxlIGV4cGVjdGVkIGZhbHNlIGdvdCB0cnVlCi1GQUlMIGkzMiBt
dXRhYmxlIFdlYkFzc2VtYmx5Lkdsb2JhbCBpbXBvcnQgYXNzZXJ0X2ZhbHNlOiBmbjogd3JpdGFi
bGUgZXhwZWN0ZWQgZmFsc2UgZ290IHRydWUKK1BBU1MgaW1wb3J0IHdpdGggaTMyLXJldHVybmlu
ZyBmdW5jdGlvbgorUEFTUyBpbXBvcnQgd2l0aCBmdW5jdGlvbiB0aGF0IHRha2VzIGFuZCByZXR1
cm5zIGkzMgorRkFJTCBpbXBvcnQgd2l0aCBpNjQtcmV0dXJuaW5nIGZ1bmN0aW9uIGFzc2VydF90
cnVlOiBTaG91bGQgaGF2ZSBjYWxsZWQgaW50byBKUyBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQor
RkFJTCBpbXBvcnQgd2l0aCBmdW5jdGlvbiB0aGF0IHRha2VzIGFuZCByZXR1cm5zIGk2NCBXZWJB
c3NlbWJseSBmdW5jdGlvbiB0aGF0IHJldHVybnMgaTY0IGNhbid0IGJlIGNhbGxlZCBmcm9tIEph
dmFTY3JpcHQgKGV2YWx1YXRpbmcgJ2luc3RhbmNlLmV4cG9ydHMuZm4yKCknKQorUEFTUyBpbXBv
cnQgd2l0aCBpMzItdGFraW5nIGZ1bmN0aW9uCitGQUlMIGltcG9ydCB3aXRoIGk2NC10YWtpbmcg
ZnVuY3Rpb24gYXNzZXJ0X3Rocm93c19qczogZnVuY3Rpb24gIigpID0+IGluc3RhbmNlLmV4cG9y
dHMuZm4oNikiIHRocmV3IG9iamVjdCAiUnVudGltZUVycm9yOiBXZWJBc3NlbWJseSBmdW5jdGlv
biB3aXRoIGFuIGk2NCBhcmd1bWVudCBjYW4ndCBiZSBjYWxsZWQgZnJvbSBKYXZhU2NyaXB0IChl
dmFsdWF0aW5nICdpbnN0YW5jZS5leHBvcnRzLmZuKDYpJykiICgiUnVudGltZUVycm9yIikgZXhw
ZWN0ZWQgaW5zdGFuY2Ugb2YgZnVuY3Rpb24gImZ1bmN0aW9uIFR5cGVFcnJvcigpIHsKKyAgICBb
bmF0aXZlIGNvZGVdCit9IiAoIlR5cGVFcnJvciIpCitGQUlMIGV4cG9ydCBpNjQtcmV0dXJuaW5n
IGZ1bmN0aW9uIFdlYkFzc2VtYmx5IGZ1bmN0aW9uIHRoYXQgcmV0dXJucyBpNjQgY2FuJ3QgYmUg
Y2FsbGVkIGZyb20gSmF2YVNjcmlwdCAoZXZhbHVhdGluZyAnaW5zdGFuY2UuZXhwb3J0cy5mbigp
JykKK1BBU1MgaTMyIG11dGFibGUgV2ViQXNzZW1ibHkuR2xvYmFsIGltcG9ydAogRkFJTCBpNjQg
bXV0YWJsZSBXZWJBc3NlbWJseS5HbG9iYWwgaW1wb3J0IFdlYkFzc2VtYmx5Lkdsb2JhbCBkb2Vz
IG5vdCBhY2NlcHQgaTY0IGluaXRpYWwgdmFsdWUKLUZBSUwgTXVsdGlwbGUgaTY0IGFyZ3VtZW50
cyBhc3NlcnRfZmFsc2U6IGZuOiB3cml0YWJsZSBleHBlY3RlZCBmYWxzZSBnb3QgdHJ1ZQorRkFJ
TCBNdWx0aXBsZSBpNjQgYXJndW1lbnRzIFdlYkFzc2VtYmx5IGZ1bmN0aW9uIHdpdGggYW4gaTY0
IGFyZ3VtZW50IGNhbid0IGJlIGNhbGxlZCBmcm9tIEphdmFTY3JpcHQgKGV2YWx1YXRpbmcgJ2Zu
KDFuLCAwbiknKQogUEFTUyBzdHJheSBhcmd1bWVudAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dhc20vanNhcGkvaW5zdGFuY2UvY29u
c3RydWN0b3IuYW55Lndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dhc20vanNhcGkvaW5zdGFuY2UvY29uc3RydWN0b3IuYW55
Lndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggMTllOWM4MGFjY2Q4MzQ0ZjQ2ZjYxYmQ3MDY5Yzc4
NDllNjkzM2RkOC4uZDkzN2QwZWQzNmI2N2VjNTRhZGJiMzFjOTk0ZjBlZGEzYjRkN2NhMCAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93YXNt
L2pzYXBpL2luc3RhbmNlL2NvbnN0cnVjdG9yLmFueS53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2FzbS9qc2FwaS9p
bnN0YW5jZS9jb25zdHJ1Y3Rvci5hbnkud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtOSwxOCArOSwy
MCBAQCBQQVNTIEVtcHR5IG1vZHVsZSB3aXRoIHVuZGVmaW5lZCBpbXBvcnRzIGFyZ3VtZW50CiBQ
QVNTIEVtcHR5IG1vZHVsZSB3aXRoIGVtcHR5IGltcG9ydHMgYXJndW1lbnQKIEZBSUwgZ2V0dGVy
IG9yZGVyIGZvciBpbXBvcnRzIG9iamVjdCBhc3NlcnRfYXJyYXlfZXF1YWxzOiBleHBlY3RlZCBw
cm9wZXJ0eSAxIHRvIGJlICJnbG9iYWwxIGdldHRlciIgYnV0IGdvdCAibWVtb3J5IGdldHRlciIg
KGV4cGVjdGVkIGFycmF5IFsibW9kdWxlIGdldHRlciIsICJnbG9iYWwxIGdldHRlciIsICJtb2R1
bGUyIGdldHRlciIsICJnbG9iYWwzIGdldHRlciIsICJtb2R1bGUgZ2V0dGVyIiwgIm1lbW9yeSBn
ZXR0ZXIiLCAibW9kdWxlIGdldHRlciIsICJnbG9iYWwyIGdldHRlciJdIGdvdCBbIm1vZHVsZSBn
ZXR0ZXIiLCAibWVtb3J5IGdldHRlciIsICJtb2R1bGUgZ2V0dGVyIiwgImdsb2JhbDEgZ2V0dGVy
IiwgIm1vZHVsZTIgZ2V0dGVyIiwgImdsb2JhbDMgZ2V0dGVyIiwgIm1vZHVsZSBnZXR0ZXIiLCAi
Z2xvYmFsMiBnZXR0ZXIiXSkKIFBBU1MgaW1wb3J0cwotRkFJTCBObyBpbXBvcnRzIGFzc2VydF9h
cnJheV9lcXVhbHM6IG1hdGNoaW5nIGV4cG9ydCBrZXlzIGV4cGVjdGVkIHByb3BlcnR5IDIgdG8g
YmUgInRhYmxlIiBidXQgZ290ICJnbG9iYWwiIChleHBlY3RlZCBhcnJheSBbImZuIiwgImZuMiIs
ICJ0YWJsZSIsICJnbG9iYWwiLCAiZ2xvYmFsMiIsICJtZW1vcnkiXSBnb3QgWyJmbiIsICJmbjIi
LCAiZ2xvYmFsIiwgImdsb2JhbDIiLCAibWVtb3J5IiwgInRhYmxlIl0pCi1GQUlMIGV4cG9ydHMg
YW5kIGltcG9ydHMgYXNzZXJ0X2ZhbHNlOiBmbjogd3JpdGFibGUgZXhwZWN0ZWQgZmFsc2UgZ290
IHRydWUKK1BBU1MgTm8gaW1wb3J0cworUEFTUyBleHBvcnRzIGFuZCBpbXBvcnRzCiBGQUlMIGk2
NCBleHBvcnRzIGFuZCBpbXBvcnRzIGltcG9ydGVkIGdsb2JhbCBtb2R1bGU6Z2xvYmFsIGNhbm5v
dCBiZSBhbiBpNjQgKGV2YWx1YXRpbmcgJ25ldyBXZWJBc3NlbWJseS5JbnN0YW5jZShtb2R1bGUs
IC4uLmFyZ3MpJykKLUZBSUwgaW1wb3J0IHdpdGggaTMyLXJldHVybmluZyBmdW5jdGlvbiBhc3Nl
cnRfZmFsc2U6IGZuMjogd3JpdGFibGUgZXhwZWN0ZWQgZmFsc2UgZ290IHRydWUKLUZBSUwgaW1w
b3J0IHdpdGggZnVuY3Rpb24gdGhhdCB0YWtlcyBhbmQgcmV0dXJucyBpMzIgYXNzZXJ0X2ZhbHNl
OiBmbjI6IHdyaXRhYmxlIGV4cGVjdGVkIGZhbHNlIGdvdCB0cnVlCi1GQUlMIGltcG9ydCB3aXRo
IGk2NC1yZXR1cm5pbmcgZnVuY3Rpb24gYXNzZXJ0X2ZhbHNlOiBmbjI6IHdyaXRhYmxlIGV4cGVj
dGVkIGZhbHNlIGdvdCB0cnVlCi1GQUlMIGltcG9ydCB3aXRoIGZ1bmN0aW9uIHRoYXQgdGFrZXMg
YW5kIHJldHVybnMgaTY0IGFzc2VydF9mYWxzZTogZm4yOiB3cml0YWJsZSBleHBlY3RlZCBmYWxz
ZSBnb3QgdHJ1ZQotRkFJTCBpbXBvcnQgd2l0aCBpMzItdGFraW5nIGZ1bmN0aW9uIGFzc2VydF9m
YWxzZTogZm46IHdyaXRhYmxlIGV4cGVjdGVkIGZhbHNlIGdvdCB0cnVlCi1GQUlMIGltcG9ydCB3
aXRoIGk2NC10YWtpbmcgZnVuY3Rpb24gYXNzZXJ0X2ZhbHNlOiBmbjogd3JpdGFibGUgZXhwZWN0
ZWQgZmFsc2UgZ290IHRydWUKLUZBSUwgZXhwb3J0IGk2NC1yZXR1cm5pbmcgZnVuY3Rpb24gYXNz
ZXJ0X2ZhbHNlOiBmbjogd3JpdGFibGUgZXhwZWN0ZWQgZmFsc2UgZ290IHRydWUKLUZBSUwgaTMy
IG11dGFibGUgV2ViQXNzZW1ibHkuR2xvYmFsIGltcG9ydCBhc3NlcnRfZmFsc2U6IGZuOiB3cml0
YWJsZSBleHBlY3RlZCBmYWxzZSBnb3QgdHJ1ZQorUEFTUyBpbXBvcnQgd2l0aCBpMzItcmV0dXJu
aW5nIGZ1bmN0aW9uCitQQVNTIGltcG9ydCB3aXRoIGZ1bmN0aW9uIHRoYXQgdGFrZXMgYW5kIHJl
dHVybnMgaTMyCitGQUlMIGltcG9ydCB3aXRoIGk2NC1yZXR1cm5pbmcgZnVuY3Rpb24gYXNzZXJ0
X3RydWU6IFNob3VsZCBoYXZlIGNhbGxlZCBpbnRvIEpTIGV4cGVjdGVkIHRydWUgZ290IGZhbHNl
CitGQUlMIGltcG9ydCB3aXRoIGZ1bmN0aW9uIHRoYXQgdGFrZXMgYW5kIHJldHVybnMgaTY0IFdl
YkFzc2VtYmx5IGZ1bmN0aW9uIHRoYXQgcmV0dXJucyBpNjQgY2FuJ3QgYmUgY2FsbGVkIGZyb20g
SmF2YVNjcmlwdCAoZXZhbHVhdGluZyAnaW5zdGFuY2UuZXhwb3J0cy5mbjIoKScpCitQQVNTIGlt
cG9ydCB3aXRoIGkzMi10YWtpbmcgZnVuY3Rpb24KK0ZBSUwgaW1wb3J0IHdpdGggaTY0LXRha2lu
ZyBmdW5jdGlvbiBhc3NlcnRfdGhyb3dzX2pzOiBmdW5jdGlvbiAiKCkgPT4gaW5zdGFuY2UuZXhw
b3J0cy5mbig2KSIgdGhyZXcgb2JqZWN0ICJSdW50aW1lRXJyb3I6IFdlYkFzc2VtYmx5IGZ1bmN0
aW9uIHdpdGggYW4gaTY0IGFyZ3VtZW50IGNhbid0IGJlIGNhbGxlZCBmcm9tIEphdmFTY3JpcHQg
KGV2YWx1YXRpbmcgJ2luc3RhbmNlLmV4cG9ydHMuZm4oNiknKSIgKCJSdW50aW1lRXJyb3IiKSBl
eHBlY3RlZCBpbnN0YW5jZSBvZiBmdW5jdGlvbiAiZnVuY3Rpb24gVHlwZUVycm9yKCkgeworICAg
IFtuYXRpdmUgY29kZV0KK30iICgiVHlwZUVycm9yIikKK0ZBSUwgZXhwb3J0IGk2NC1yZXR1cm5p
bmcgZnVuY3Rpb24gV2ViQXNzZW1ibHkgZnVuY3Rpb24gdGhhdCByZXR1cm5zIGk2NCBjYW4ndCBi
ZSBjYWxsZWQgZnJvbSBKYXZhU2NyaXB0IChldmFsdWF0aW5nICdpbnN0YW5jZS5leHBvcnRzLmZu
KCknKQorUEFTUyBpMzIgbXV0YWJsZSBXZWJBc3NlbWJseS5HbG9iYWwgaW1wb3J0CiBGQUlMIGk2
NCBtdXRhYmxlIFdlYkFzc2VtYmx5Lkdsb2JhbCBpbXBvcnQgV2ViQXNzZW1ibHkuR2xvYmFsIGRv
ZXMgbm90IGFjY2VwdCBpNjQgaW5pdGlhbCB2YWx1ZQotRkFJTCBNdWx0aXBsZSBpNjQgYXJndW1l
bnRzIGFzc2VydF9mYWxzZTogZm46IHdyaXRhYmxlIGV4cGVjdGVkIGZhbHNlIGdvdCB0cnVlCitG
QUlMIE11bHRpcGxlIGk2NCBhcmd1bWVudHMgV2ViQXNzZW1ibHkgZnVuY3Rpb24gd2l0aCBhbiBp
NjQgYXJndW1lbnQgY2FuJ3QgYmUgY2FsbGVkIGZyb20gSmF2YVNjcmlwdCAoZXZhbHVhdGluZyAn
Zm4oMW4sIDBuKScpCiBQQVNTIHN0cmF5IGFyZ3VtZW50CiAKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2FzbS9qc2FwaS90YWJsZS9ncm93
LXJlZnR5cGVzLnRlbnRhdGl2ZS5hbnktZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93YXNtL2pzYXBpL3RhYmxlL2dyb3ctcmVmdHlwZXMu
dGVudGF0aXZlLmFueS1leHBlY3RlZC50eHQKaW5kZXggZDY3ZmQ5M2IxOGEwYjZhNWRkMDMyZWEw
OGVkNGY1NGY4ZjkwYzY2Yi4uYjllOWYzNzIzYWFiYzNhMDQ2OTIyNDdiNTVjNjhkMjA3NGM0NGM0
ZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy93YXNtL2pzYXBpL3RhYmxlL2dyb3ctcmVmdHlwZXMudGVudGF0aXZlLmFueS1leHBlY3RlZC50
eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93YXNt
L2pzYXBpL3RhYmxlL2dyb3ctcmVmdHlwZXMudGVudGF0aXZlLmFueS1leHBlY3RlZC50eHQKQEAg
LTEsNSArMSw1IEBACiAKLUZBSUwgR3JvdyB3aXRoIGV4cG9ydGVkLWZ1bmN0aW9uIGFyZ3VtZW50
IGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIChmdW5jdGlvbikgZnVuY3Rpb24gImZ1bmN0aW9uIGZu
KCkgeworRkFJTCBHcm93IHdpdGggZXhwb3J0ZWQtZnVuY3Rpb24gYXJndW1lbnQgYXNzZXJ0X2Vx
dWFsczogZXhwZWN0ZWQgKGZ1bmN0aW9uKSBmdW5jdGlvbiAiZnVuY3Rpb24gMCgpIHsKICAgICBb
bmF0aXZlIGNvZGVdCiB9IiBidXQgZ290IChvYmplY3QpIG51bGwKIEZBSUwgR3JvdyB3aXRoIG5v
bi1mdW5jdGlvbiBhcmd1bWVudCBhc3NlcnRfdGhyb3dzX2pzOiBmdW5jdGlvbiAiKCkgPT4gdGFi
bGUuZ3JvdygyLCB7fSkiIGRpZCBub3QgdGhyb3cKZGlmZiAtLWdpdCBhL0pTVGVzdHMvQ2hhbmdl
TG9nIGIvSlNUZXN0cy9DaGFuZ2VMb2cKaW5kZXggYTc5MjllNDBhZmZiNDU0ZjdmMmM3MDQ0YzA5
ZDNlYjhjYTJlYmVlMi4uOGQwZGYzOGZhZDAyYTJkNTUzYTU0NDY0M2QzOTFlMTk0NGM5NGU4YSAx
MDA2NDQKLS0tIGEvSlNUZXN0cy9DaGFuZ2VMb2cKKysrIGIvSlNUZXN0cy9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwxNCBAQAorMjAyMC0xMi0yOCAgWXVzdWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUu
Y29tPgorCisgICAgICAgIFtKU0NdIFVwZGF0ZSBXZWJBc3NlbWJseSBpbnN0YW5jZSdzIGV4cG9y
dHMgb2JqZWN0CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0yMjAxODkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICAqIHdhc20vc3RyZXNzL2V4cG9ydHMtb2JqZWN0LmpzOiBBZGRlZC4KKyAgICAgICAgKGFzeW5j
IHRyeSk6CisgICAgICAgIChjYXRjaCk6CisKIDIwMjAtMTItMjcgIERtaXRyeSBCZXpoZXRza292
ICA8ZGJlemhldHNrb3ZAaWdhbGlhLmNvbT4KIAogICAgICAgICBbV0FTTS1SZWZlcmVuY2VzXSBG
aXggdGFibGUuaW5pdCBhbmQgdGFibGUuZ3JvdyB0byBzYXRpc2Z5IHRoZSBzcGVjCmRpZmYgLS1n
aXQgYS9KU1Rlc3RzL3dhc20vc3RyZXNzL2V4cG9ydHMtb2JqZWN0LmpzIGIvSlNUZXN0cy93YXNt
L3N0cmVzcy9leHBvcnRzLW9iamVjdC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lNTc0MjZiZTBhNjQ2ZmFkYmU3
YWM2MWEyNmFiODMwNmQ1MWIyNDBhCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy93YXNtL3N0
cmVzcy9leHBvcnRzLW9iamVjdC5qcwpAQCAtMCwwICsxLDE4IEBACitpbXBvcnQgeyBpbnN0YW50
aWF0ZSB9IGZyb20gIi4uL3dhYnQtd3JhcHBlci5qcyI7CitpbXBvcnQgKiBhcyBhc3NlcnQgZnJv
bSAnLi4vYXNzZXJ0LmpzJzsKKworKGFzeW5jIGZ1bmN0aW9uICgpIHsKKyAgICB0cnkgeworICAg
ICAgICBsZXQgaW5zdGFuY2UgPSBhd2FpdCBpbnN0YW50aWF0ZShgCisgICAgICAgICAgICAobW9k
dWxlCisgICAgICAgICAgICAgICAgKGZ1bmMgKGV4cG9ydCAiZmVuY2UiKSAoYXRvbWljLmZlbmNl
KSkKKyAgICAgICAgICAgICkKKyAgICAgICAgICAgIGAsIHt9LCB7IHRocmVhZHM6IHRydWUgfSk7
CisgICAgICAgIGFzc2VydC5lcShSZWZsZWN0LmdldFByb3RvdHlwZU9mKGluc3RhbmNlLmV4cG9y
dHMpLCBudWxsKTsKKyAgICAgICAgYXNzZXJ0LmVxKGluc3RhbmNlLmV4cG9ydHMuZmVuY2UubmFt
ZSwgJzAnKTsKKyAgICAgICAgYXNzZXJ0LnRydXRoeShPYmplY3QuaXNGcm96ZW4oaW5zdGFuY2Uu
ZXhwb3J0cykpOworICAgIH0gY2F0Y2ggKGUpIHsKKyAgICAgICAgcHJpbnQoU3RyaW5nKGUpKTsK
KyAgICAgICAgdGhyb3cgZTsKKyAgICB9Cit9KCkpLmNhdGNoKCR2bS5hYm9ydCk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>416836</attachid>
            <date>2020-12-29 01:47:42 -0800</date>
            <delta_ts>2020-12-30 09:49:07 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-220189-20201229014741.patch</filename>
            <type>text/plain</type>
            <size>45385</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcxMTA1CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBh
ZmMwZjI2NDZjMDlmZmU5YzAyM2IwZjI4ODQyNzFkNDQ3MWMyNzYyLi45NDFkYzRhZDBiZjMxMWE1
OGVjNzhlOGNlOWJlZTczNjJlYzIyMjRlIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwzMyBAQAorMjAyMC0xMi0yOSAgWXVzdWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29t
PgorCisgICAgICAgIFtKU0NdIFVwZGF0ZSBXZWJBc3NlbWJseSBpbnN0YW5jZSdzIGV4cG9ydHMg
b2JqZWN0CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MjAxODkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBU
aGlzIHBhdGNoIGFsaWducyB0aGUgV2ViQXNzZW1ibHkgSW5zdGFuY2UncyBleHBvcnRzIG9iamVj
dCB0byB0aGUgdXBkYXRlZCBzcGVjLgorCisgICAgICAgIDEuIGV4cG9ydHMgb2JqZWN0IGlzIGEg
cGxhaW4gb2JqZWN0IHdoaWNoIFtbUHJvdG90eXBlXV0gaXMgbnVsbFsxXS4gV2Ugd2VyZSB1c2lu
ZyBtb2R1bGUgbmFtZXNwYWNlIG9iamVjdC4gQWxzbywgdGhlIG9iamVjdCBzaG91bGQgYmUgZnJv
emVuLgorICAgICAgICAyLiBleHBvcnRlZCBmdW5jdGlvbnMnIG5hbWUgc2hvdWxkIGJlIGluZGV4
LCBhY2NvcmRpbmcgdG8gdGhlIHNwZWNbMl0uCisKKyAgICAgICAgWzFdOiBodHRwczovL3dlYmFz
c2VtYmx5LmdpdGh1Yi5pby9zcGVjL2pzLWFwaS9pbmRleC5odG1sI2NyZWF0ZS1hbi1leHBvcnRz
LW9iamVjdAorICAgICAgICBbMl06IGh0dHBzOi8vd2ViYXNzZW1ibHkuZ2l0aHViLmlvL3NwZWMv
anMtYXBpL2luZGV4Lmh0bWwjZXhwb3J0ZWQtZnVuY3Rpb24tZXhvdGljLW9iamVjdHMKKworICAg
ICAgICAqIHdhc20vanMvSlNXZWJBc3NlbWJseS5jcHA6CisgICAgICAgIChKU0M6OnJlc29sdmUp
OgorICAgICAgICAqIHdhc20vanMvSlNXZWJBc3NlbWJseUluc3RhbmNlLmNwcDoKKyAgICAgICAg
KEpTQzo6SlNXZWJBc3NlbWJseUluc3RhbmNlOjpmaW5pc2hDcmVhdGlvbik6CisgICAgICAgIChK
U0M6OkpTV2ViQXNzZW1ibHlJbnN0YW5jZTo6dmlzaXRDaGlsZHJlbik6CisgICAgICAgIChKU0M6
OkpTV2ViQXNzZW1ibHlJbnN0YW5jZTo6ZmluYWxpemVDcmVhdGlvbik6CisgICAgICAgIChKU0M6
OkpTV2ViQXNzZW1ibHlJbnN0YW5jZTo6dHJ5Q3JlYXRlKToKKyAgICAgICAgKiB3YXNtL2pzL0pT
V2ViQXNzZW1ibHlJbnN0YW5jZS5oOgorICAgICAgICAqIHdhc20vanMvV2ViQXNzZW1ibHlJbnN0
YW5jZVByb3RvdHlwZS5jcHA6CisgICAgICAgIChKU0M6OkpTQ19ERUZJTkVfSE9TVF9GVU5DVElP
Tik6CisgICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJseU1vZHVsZVJlY29yZC5jcHA6CisgICAg
ICAgIChKU0M6OldlYkFzc2VtYmx5TW9kdWxlUmVjb3JkOjp2aXNpdENoaWxkcmVuKToKKyAgICAg
ICAgKEpTQzo6V2ViQXNzZW1ibHlNb2R1bGVSZWNvcmQ6OmxpbmspOgorICAgICAgICAqIHdhc20v
anMvV2ViQXNzZW1ibHlNb2R1bGVSZWNvcmQuaDoKKwogMjAyMC0xMi0yNyAgRG1pdHJ5IEJlemhl
dHNrb3YgIDxkYmV6aGV0c2tvdkBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtXQVNNLVJlZmVyZW5j
ZXNdIEZpeCB0YWJsZS5pbml0IGFuZCB0YWJsZS5ncm93IHRvIHNhdGlzZnkgdGhlIHNwZWMKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pTV2ViQXNzZW1ibHkuY3Bw
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseS5jcHAKaW5kZXgg
MjM4MWQzMjgyMTMxZjg1NGY4ZjViYjE2NjdlMzEwYmYwYjMzODIwOC4uMjU4OWY1YTNjOTU3N2Fm
OGQ3YjRjMGRjZGIzNThhZWNiYzAxNWM3OSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3dhc20vanMvSlNXZWJBc3NlbWJseS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3dhc20vanMvSlNXZWJBc3NlbWJseS5jcHAKQEAgLTQ1LDYgKzQ1LDcgQEAKICNpbmNsdWRlICJT
dHJvbmdJbmxpbmVzLmgiCiAjaW5jbHVkZSAiU3RydWN0dXJlSW5saW5lcy5oIgogI2luY2x1ZGUg
IlRocm93U2NvcGUuaCIKKyNpbmNsdWRlICJXZWJBc3NlbWJseU1vZHVsZVJlY29yZC5oIgogCiBu
YW1lc3BhY2UgSlNDIHsKIApAQCAtMTgyLDcgKzE4Myw3IEBAIHN0YXRpYyB2b2lkIHJlc29sdmUo
Vk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1Byb21pc2UqIHByb21pc2Us
IEpTCiAgICAgaWYgKHJlc29sdmVLaW5kID09IFJlc29sdmU6OldpdGhJbnN0YW5jZSkKICAgICAg
ICAgcHJvbWlzZS0+cmVzb2x2ZShnbG9iYWxPYmplY3QsIGluc3RhbmNlKTsKICAgICBlbHNlIGlm
IChyZXNvbHZlS2luZCA9PSBSZXNvbHZlOjpXaXRoTW9kdWxlUmVjb3JkKSB7Ci0gICAgICAgIGF1
dG8qIG1vZHVsZVJlY29yZCA9IGluc3RhbmNlLT5tb2R1bGVOYW1lc3BhY2VPYmplY3QoKS0+bW9k
dWxlUmVjb3JkKCk7CisgICAgICAgIGF1dG8qIG1vZHVsZVJlY29yZCA9IGluc3RhbmNlLT5tb2R1
bGVSZWNvcmQoKTsKICAgICAgICAgaWYgKFVOTElLRUxZKE9wdGlvbnM6OmR1bXBNb2R1bGVSZWNv
cmQoKSkpCiAgICAgICAgICAgICBtb2R1bGVSZWNvcmQtPmR1bXAoKTsKICAgICAgICAgcHJvbWlz
ZS0+cmVzb2x2ZShnbG9iYWxPYmplY3QsIG1vZHVsZVJlY29yZCk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5SW5zdGFuY2UuY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseUluc3RhbmNlLmNwcAppbmRl
eCBiZmRkNGM3NGM4YzQ2ZWM4MzY3YmM3MjQ3N2Q0NDg5NmIyMWUyZjJlLi5iZDFiYmZkNDFmZDcx
ZTk1MmM1YzM3MzlhOTRkMzU0NzhjYTc3MTQyIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5SW5zdGFuY2UuY3BwCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS93YXNtL2pzL0pTV2ViQXNzZW1ibHlJbnN0YW5jZS5jcHAKQEAgLTU3LDEzICs1
NywxMyBAQCBKU1dlYkFzc2VtYmx5SW5zdGFuY2U6OkpTV2ViQXNzZW1ibHlJbnN0YW5jZShWTSYg
dm0sIFN0cnVjdHVyZSogc3RydWN0dXJlLCBSZWY8VwogICAgICAgICBuZXcgKHRoaXMtPmluc3Rh
bmNlKCkuaW1wb3J0RnVuY3Rpb248V3JpdGVCYXJyaWVyPEpTT2JqZWN0Pj4oaSkpIFdyaXRlQmFy
cmllcjxKU09iamVjdD4oKTsKIH0KIAotdm9pZCBKU1dlYkFzc2VtYmx5SW5zdGFuY2U6OmZpbmlz
aENyZWF0aW9uKFZNJiB2bSwgSlNXZWJBc3NlbWJseU1vZHVsZSogbW9kdWxlLCBKU01vZHVsZU5h
bWVzcGFjZU9iamVjdCogbW9kdWxlTmFtZXNwYWNlT2JqZWN0KQordm9pZCBKU1dlYkFzc2VtYmx5
SW5zdGFuY2U6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSwgSlNXZWJBc3NlbWJseU1vZHVsZSogbW9k
dWxlLCBXZWJBc3NlbWJseU1vZHVsZVJlY29yZCogbW9kdWxlUmVjb3JkKQogewogICAgIEJhc2U6
OmZpbmlzaENyZWF0aW9uKHZtKTsKICAgICBBU1NFUlQoaW5oZXJpdHModm0sIGluZm8oKSkpOwog
CiAgICAgbV9tb2R1bGUuc2V0KHZtLCB0aGlzLCBtb2R1bGUpOwotICAgIG1fbW9kdWxlTmFtZXNw
YWNlT2JqZWN0LnNldCh2bSwgdGhpcywgbW9kdWxlTmFtZXNwYWNlT2JqZWN0KTsKKyAgICBtX21v
ZHVsZVJlY29yZC5zZXQodm0sIHRoaXMsIG1vZHVsZVJlY29yZCk7CiAKICAgICB2bS5oZWFwLnJl
cG9ydEV4dHJhTWVtb3J5QWxsb2NhdGVkKG1faW5zdGFuY2UtPmV4dHJhTWVtb3J5QWxsb2NhdGVk
KCkpOwogfQpAQCAtODEsNyArODEsNyBAQCB2b2lkIEpTV2ViQXNzZW1ibHlJbnN0YW5jZTo6dmlz
aXRDaGlsZHJlbihKU0NlbGwqIGNlbGwsIFNsb3RWaXNpdG9yJiB2aXNpdG9yKQogICAgIEJhc2U6
OnZpc2l0Q2hpbGRyZW4odGhpc09iamVjdCwgdmlzaXRvcik7CiAgICAgdmlzaXRvci5hcHBlbmQo
dGhpc09iamVjdC0+bV9tb2R1bGUpOwogICAgIHZpc2l0b3IuYXBwZW5kKHRoaXNPYmplY3QtPm1f
Y29kZUJsb2NrKTsKLSAgICB2aXNpdG9yLmFwcGVuZCh0aGlzT2JqZWN0LT5tX21vZHVsZU5hbWVz
cGFjZU9iamVjdCk7CisgICAgdmlzaXRvci5hcHBlbmQodGhpc09iamVjdC0+bV9tb2R1bGVSZWNv
cmQpOwogICAgIHZpc2l0b3IuYXBwZW5kKHRoaXNPYmplY3QtPm1fbWVtb3J5KTsKICAgICBmb3Ig
KHVuc2lnbmVkIGkgPSAwOyBpIDwgdGhpc09iamVjdC0+aW5zdGFuY2UoKS5tb2R1bGUoKS5tb2R1
bGVJbmZvcm1hdGlvbigpLnRhYmxlQ291bnQoKTsgKytpKQogICAgICAgICB2aXNpdG9yLmFwcGVu
ZCh0aGlzT2JqZWN0LT5tX3RhYmxlc1tpXSk7CkBAIC0xMzcsMTQgKzEzNywxMyBAQCB2b2lkIEpT
V2ViQXNzZW1ibHlJbnN0YW5jZTo6ZmluYWxpemVDcmVhdGlvbihWTSYgdm0sIEpTR2xvYmFsT2Jq
ZWN0KiBnbG9iYWxPYmplYwogICAgICAgICBpbmZvLT53YXNtVG9FbWJlZGRlclN0dWIgPSBtX2Nv
ZGVCbG9jay0+d2FzbVRvRW1iZWRkZXJTdHViKGltcG9ydEZ1bmN0aW9uTnVtKTsKICAgICB9CiAK
LSAgICBhdXRvKiBtb2R1bGVSZWNvcmQgPSBqc0Nhc3Q8V2ViQXNzZW1ibHlNb2R1bGVSZWNvcmQq
PihtX21vZHVsZU5hbWVzcGFjZU9iamVjdC0+bW9kdWxlUmVjb3JkKCkpOwotICAgIG1vZHVsZVJl
Y29yZC0+cHJlcGFyZUxpbmsodm0sIHRoaXMpOworICAgIG1fbW9kdWxlUmVjb3JkLT5wcmVwYXJl
TGluayh2bSwgdGhpcyk7CiAKICAgICBpZiAoY3JlYXRpb25Nb2RlID09IFdhc206OkNyZWF0aW9u
TW9kZTo6RnJvbUpTKSB7Ci0gICAgICAgIG1vZHVsZVJlY29yZC0+bGluayhnbG9iYWxPYmplY3Qs
IGpzTnVsbCgpLCBpbXBvcnRPYmplY3QsIGNyZWF0aW9uTW9kZSk7CisgICAgICAgIG1fbW9kdWxl
UmVjb3JkLT5saW5rKGdsb2JhbE9iamVjdCwganNOdWxsKCksIGltcG9ydE9iamVjdCwgY3JlYXRp
b25Nb2RlKTsKICAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgdm9pZCgpKTsKIAot
ICAgICAgICBKU1ZhbHVlIHN0YXJ0UmVzdWx0ID0gbW9kdWxlUmVjb3JkLT5ldmFsdWF0ZShnbG9i
YWxPYmplY3QpOworICAgICAgICBKU1ZhbHVlIHN0YXJ0UmVzdWx0ID0gbV9tb2R1bGVSZWNvcmQt
PmV2YWx1YXRlKGdsb2JhbE9iamVjdCk7CiAgICAgICAgIFVOVVNFRF9QQVJBTShzdGFydFJlc3Vs
dCk7CiAgICAgICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIHZvaWQoKSk7CiAgICAgfQpA
QCAtMTc2LDggKzE3NSw2IEBAIEpTV2ViQXNzZW1ibHlJbnN0YW5jZSogSlNXZWJBc3NlbWJseUlu
c3RhbmNlOjp0cnlDcmVhdGUoVk0mIHZtLCBKU0dsb2JhbE9iamVjdCoKICAgICBXZWJBc3NlbWJs
eU1vZHVsZVJlY29yZCogbW9kdWxlUmVjb3JkID0gV2ViQXNzZW1ibHlNb2R1bGVSZWNvcmQ6OmNy
ZWF0ZShnbG9iYWxPYmplY3QsIHZtLCBnbG9iYWxPYmplY3QtPndlYkFzc2VtYmx5TW9kdWxlUmVj
b3JkU3RydWN0dXJlKCksIG1vZHVsZUtleSwgbW9kdWxlSW5mb3JtYXRpb24pOwogICAgIFJFVFVS
Tl9JRl9FWENFUFRJT04odGhyb3dTY29wZSwgbnVsbHB0cik7CiAKLSAgICBKU01vZHVsZU5hbWVz
cGFjZU9iamVjdCogbW9kdWxlTmFtZXNwYWNlID0gbW9kdWxlUmVjb3JkLT5nZXRNb2R1bGVOYW1l
c3BhY2UoZ2xvYmFsT2JqZWN0KTsKLQogICAgIGF1dG8gc3RvcmVUb3BDYWxsRnJhbWUgPSBbJnZt
XSAodm9pZCogdG9wQ2FsbEZyYW1lKSB7CiAgICAgICAgIHZtLnRvcENhbGxGcmFtZSA9IGJpdHdp
c2VfY2FzdDxDYWxsRnJhbWUqPih0b3BDYWxsRnJhbWUpOwogICAgIH07CkBAIC0xODUsNyArMTgy
LDcgQEAgSlNXZWJBc3NlbWJseUluc3RhbmNlKiBKU1dlYkFzc2VtYmx5SW5zdGFuY2U6OnRyeUNy
ZWF0ZShWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KgogICAgIC8vIEZJWE1FOiBUaGVzZSBvYmplY3Rz
IGNvdWxkIGJlIHByZXR0eSBiaWcgd2Ugc2hvdWxkIHRyeSB0byB0aHJvdyBPT00gaGVyZS4KICAg
ICBhdXRvKiBqc0luc3RhbmNlID0gbmV3IChOb3ROdWxsLCBhbGxvY2F0ZUNlbGw8SlNXZWJBc3Nl
bWJseUluc3RhbmNlPih2bS5oZWFwKSkgSlNXZWJBc3NlbWJseUluc3RhbmNlKHZtLCBpbnN0YW5j
ZVN0cnVjdHVyZSwgCiAgICAgICAgIFdhc206Okluc3RhbmNlOjpjcmVhdGUoJnZtLndhc21Db250
ZXh0LCBXVEZNb3ZlKG1vZHVsZSksICZ2bS50b3BFbnRyeUZyYW1lLCB2bS5hZGRyZXNzT2ZTb2Z0
U3RhY2tMaW1pdCgpLCBXVEZNb3ZlKHN0b3JlVG9wQ2FsbEZyYW1lKSkpOwotICAgIGpzSW5zdGFu
Y2UtPmZpbmlzaENyZWF0aW9uKHZtLCBqc01vZHVsZSwgbW9kdWxlTmFtZXNwYWNlKTsKKyAgICBq
c0luc3RhbmNlLT5maW5pc2hDcmVhdGlvbih2bSwganNNb2R1bGUsIG1vZHVsZVJlY29yZCk7CiAg
ICAgUkVUVVJOX0lGX0VYQ0VQVElPTih0aHJvd1Njb3BlLCBudWxscHRyKTsKIAogICAgIC8vIExl
dCBmdW5jcywgbWVtb3JpZXMgYW5kIHRhYmxlcyBiZSBpbml0aWFsbHktZW1wdHkgbGlzdHMgb2Yg
Y2FsbGFibGUgSmF2YVNjcmlwdCBvYmplY3RzLCBXZWJBc3NlbWJseS5NZW1vcnkgb2JqZWN0cyBh
bmQgV2ViQXNzZW1ibHkuVGFibGUgb2JqZWN0cywgcmVzcGVjdGl2ZWx5LgpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseUluc3RhbmNlLmggYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5SW5zdGFuY2UuaAppbmRl
eCBiZjQ3ZDA2MjE3MTdkODlhYmM4NzBhMmNjYmVjMzIyZjA5MDI0OWZkLi45ZTQ3ODBjYzgyYzU2
NmQwYzU4NTMwZGY0MDJmNDNlNzU1YzRhZmI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5SW5zdGFuY2UuaAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5SW5zdGFuY2UuaApAQCAtNDAsNiArNDAsNyBA
QCBuYW1lc3BhY2UgSlNDIHsKIAogY2xhc3MgSlNNb2R1bGVOYW1lc3BhY2VPYmplY3Q7CiBjbGFz
cyBKU1dlYkFzc2VtYmx5TW9kdWxlOworY2xhc3MgV2ViQXNzZW1ibHlNb2R1bGVSZWNvcmQ7CiAK
IG5hbWVzcGFjZSBXYXNtIHsKIGNsYXNzIENvZGVCbG9jazsKQEAgLTY3LDcgKzY4LDcgQEAgY2xh
c3MgSlNXZWJBc3NlbWJseUluc3RhbmNlIGZpbmFsIDogcHVibGljIEpTTm9uRmluYWxPYmplY3Qg
ewogICAgIHZvaWQgZmluYWxpemVDcmVhdGlvbihWTSYsIEpTR2xvYmFsT2JqZWN0KiwgUmVmPFdh
c206OkNvZGVCbG9jaz4mJiwgSlNPYmplY3QqIGltcG9ydE9iamVjdCwgV2FzbTo6Q3JlYXRpb25N
b2RlKTsKICAgICAKICAgICBXYXNtOjpJbnN0YW5jZSYgaW5zdGFuY2UoKSB7IHJldHVybiBtX2lu
c3RhbmNlLmdldCgpOyB9Ci0gICAgSlNNb2R1bGVOYW1lc3BhY2VPYmplY3QqIG1vZHVsZU5hbWVz
cGFjZU9iamVjdCgpIHsgcmV0dXJuIG1fbW9kdWxlTmFtZXNwYWNlT2JqZWN0LmdldCgpOyB9Cisg
ICAgV2ViQXNzZW1ibHlNb2R1bGVSZWNvcmQqIG1vZHVsZVJlY29yZCgpIHsgcmV0dXJuIG1fbW9k
dWxlUmVjb3JkLmdldCgpOyB9CiAKICAgICBKU1dlYkFzc2VtYmx5TWVtb3J5KiBtZW1vcnkoKSB7
IHJldHVybiBtX21lbW9yeS5nZXQoKTsgfQogICAgIHZvaWQgc2V0TWVtb3J5KFZNJiB2bSwgSlNX
ZWJBc3NlbWJseU1lbW9yeSogdmFsdWUpIHsKQEAgLTEwMyw3ICsxMDQsNyBAQCBjbGFzcyBKU1dl
YkFzc2VtYmx5SW5zdGFuY2UgZmluYWwgOiBwdWJsaWMgSlNOb25GaW5hbE9iamVjdCB7CiAKIHBy
aXZhdGU6CiAgICAgSlNXZWJBc3NlbWJseUluc3RhbmNlKFZNJiwgU3RydWN0dXJlKiwgUmVmPFdh
c206Okluc3RhbmNlPiYmKTsKLSAgICB2b2lkIGZpbmlzaENyZWF0aW9uKFZNJiwgSlNXZWJBc3Nl
bWJseU1vZHVsZSosIEpTTW9kdWxlTmFtZXNwYWNlT2JqZWN0Kik7CisgICAgdm9pZCBmaW5pc2hD
cmVhdGlvbihWTSYsIEpTV2ViQXNzZW1ibHlNb2R1bGUqLCBXZWJBc3NlbWJseU1vZHVsZVJlY29y
ZCopOwogICAgIHN0YXRpYyB2b2lkIHZpc2l0Q2hpbGRyZW4oSlNDZWxsKiwgU2xvdFZpc2l0b3Im
KTsKIAogICAgIFJlZjxXYXNtOjpJbnN0YW5jZT4gbV9pbnN0YW5jZTsKQEAgLTExMiw3ICsxMTMs
NyBAQCBjbGFzcyBKU1dlYkFzc2VtYmx5SW5zdGFuY2UgZmluYWwgOiBwdWJsaWMgSlNOb25GaW5h
bE9iamVjdCB7CiAgICAgV3JpdGVCYXJyaWVyPEpTR2xvYmFsT2JqZWN0PiBtX2dsb2JhbE9iamVj
dDsKICAgICBXcml0ZUJhcnJpZXI8SlNXZWJBc3NlbWJseU1vZHVsZT4gbV9tb2R1bGU7CiAgICAg
V3JpdGVCYXJyaWVyPEpTV2ViQXNzZW1ibHlDb2RlQmxvY2s+IG1fY29kZUJsb2NrOwotICAgIFdy
aXRlQmFycmllcjxKU01vZHVsZU5hbWVzcGFjZU9iamVjdD4gbV9tb2R1bGVOYW1lc3BhY2VPYmpl
Y3Q7CisgICAgV3JpdGVCYXJyaWVyPFdlYkFzc2VtYmx5TW9kdWxlUmVjb3JkPiBtX21vZHVsZVJl
Y29yZDsKICAgICBXcml0ZUJhcnJpZXI8SlNXZWJBc3NlbWJseU1lbW9yeT4gbV9tZW1vcnk7CiAg
ICAgVmVjdG9yPFdyaXRlQmFycmllcjxKU1dlYkFzc2VtYmx5VGFibGU+PiBtX3RhYmxlczsKIH07
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUlu
c3RhbmNlUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFz
c2VtYmx5SW5zdGFuY2VQcm90b3R5cGUuY3BwCmluZGV4IDY2OWY2ODI4ZThkZjE0ZDk2MzA4Zjk3
YWYyNWIwMWVhZDM1ODkzODguLmUyOTc3Mzk4YjJkN2Q5MzkzZDEwYzhiNjI2N2IxNzc0MjNmZTNh
OTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5
SW5zdGFuY2VQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pz
L1dlYkFzc2VtYmx5SW5zdGFuY2VQcm90b3R5cGUuY3BwCkBAIC0zMiw2ICszMiw3IEBACiAjaW5j
bHVkZSAiSlNDSW5saW5lcy5oIgogI2luY2x1ZGUgIkpTTW9kdWxlTmFtZXNwYWNlT2JqZWN0Lmgi
CiAjaW5jbHVkZSAiSlNXZWJBc3NlbWJseUluc3RhbmNlLmgiCisjaW5jbHVkZSAiV2ViQXNzZW1i
bHlNb2R1bGVSZWNvcmQuaCIKIAogbmFtZXNwYWNlIEpTQyB7CiBzdGF0aWMgSlNDX0RFQ0xBUkVf
SE9TVF9GVU5DVElPTih3ZWJBc3NlbWJseUluc3RhbmNlUHJvdG9GdW5jRXhwb3J0cyk7CkBAIC02
OCw3ICs2OSw3IEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTih3ZWJBc3NlbWJseUluc3RhbmNl
UHJvdG9GdW5jRXhwb3J0cywgKEpTR2xvYmFsT2JqZWN0KiBnCiAKICAgICBKU1dlYkFzc2VtYmx5
SW5zdGFuY2UqIGluc3RhbmNlID0gZ2V0SW5zdGFuY2UoZ2xvYmFsT2JqZWN0LCB2bSwgY2FsbEZy
YW1lLT50aGlzVmFsdWUoKSk7IAogICAgIFJFVFVSTl9JRl9FWENFUFRJT04odGhyb3dTY29wZSwg
eyB9KTsKLSAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKGluc3RhbmNlLT5tb2R1bGVOYW1lc3Bh
Y2VPYmplY3QoKSk7CisgICAgUkVMRUFTRV9BTkRfUkVUVVJOKHRocm93U2NvcGUsIEpTVmFsdWU6
OmVuY29kZShpbnN0YW5jZS0+bW9kdWxlUmVjb3JkKCktPmV4cG9ydHNPYmplY3QoKSkpOwogfQog
CiBXZWJBc3NlbWJseUluc3RhbmNlUHJvdG90eXBlKiBXZWJBc3NlbWJseUluc3RhbmNlUHJvdG90
eXBlOjpjcmVhdGUoVk0mIHZtLCBKU0dsb2JhbE9iamVjdCosIFN0cnVjdHVyZSogc3RydWN0dXJl
KQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlN
b2R1bGVSZWNvcmQuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1i
bHlNb2R1bGVSZWNvcmQuY3BwCmluZGV4IGVhODIxMTM5YTJjN2IxN2U1OGQ2ZDNkZjZmMjhmZTFi
NzhhMjJjM2YuLmNlZjRkYWIyZGE4OTJlODg3M2VjM2I2MGE1ZjY4MTZmZjI3ZjIxNmEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5TW9kdWxlUmVj
b3JkLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseU1v
ZHVsZVJlY29yZC5jcHAKQEAgLTg0LDYgKzg0LDcgQEAgdm9pZCBXZWJBc3NlbWJseU1vZHVsZVJl
Y29yZDo6dmlzaXRDaGlsZHJlbihKU0NlbGwqIGNlbGwsIFNsb3RWaXNpdG9yJiB2aXNpdG9yKQog
ICAgIEJhc2U6OnZpc2l0Q2hpbGRyZW4odGhpc09iamVjdCwgdmlzaXRvcik7CiAgICAgdmlzaXRv
ci5hcHBlbmQodGhpc09iamVjdC0+bV9pbnN0YW5jZSk7CiAgICAgdmlzaXRvci5hcHBlbmQodGhp
c09iamVjdC0+bV9zdGFydEZ1bmN0aW9uKTsKKyAgICB2aXNpdG9yLmFwcGVuZCh0aGlzT2JqZWN0
LT5tX2V4cG9ydHNPYmplY3QpOwogfQogCiB2b2lkIFdlYkFzc2VtYmx5TW9kdWxlUmVjb3JkOjpw
cmVwYXJlTGluayhWTSYgdm0sIEpTV2ViQXNzZW1ibHlJbnN0YW5jZSogaW5zdGFuY2UpCkBAIC0z
NjAsNyArMzYxLDcgQEAgdm9pZCBXZWJBc3NlbWJseU1vZHVsZVJlY29yZDo6bGluayhKU0dsb2Jh
bE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlLCBKU09iamUKICAgICB9CiAKICAgICB1bnNp
Z25lZCBmdW5jdGlvbkltcG9ydENvdW50ID0gY29kZUJsb2NrLT5mdW5jdGlvbkltcG9ydENvdW50
KCk7Ci0gICAgYXV0byBtYWtlRnVuY3Rpb25XcmFwcGVyID0gWyZdIChjb25zdCBTdHJpbmcmIGZp
ZWxkLCB1aW50MzJfdCBpbmRleCkgLT4gSlNWYWx1ZSB7CisgICAgYXV0byBtYWtlRnVuY3Rpb25X
cmFwcGVyID0gWyZdICh1aW50MzJfdCBpbmRleCkgLT4gSlNWYWx1ZSB7CiAgICAgICAgIC8vIElm
IHdlIGFscmVhZHkgbWFkZSBhIHdyYXBwZXIsIGRvIG5vdCBtYWtlIGEgbmV3IG9uZS4KICAgICAg
ICAgSlNWYWx1ZSB3cmFwcGVyID0gbV9pbnN0YW5jZS0+aW5zdGFuY2UoKS5nZXRGdW5jdGlvbldy
YXBwZXIoaW5kZXgpOwogCkBAIC0zODcsNyArMzg4LDcgQEAgdm9pZCBXZWJBc3NlbWJseU1vZHVs
ZVJlY29yZDo6bGluayhKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlLCBKU09i
amUKICAgICAgICAgICAgIFdhc206Oldhc21Ub1dhc21JbXBvcnRhYmxlRnVuY3Rpb246OkxvYWRM
b2NhdGlvbiBlbnRyeXBvaW50TG9hZExvY2F0aW9uID0gY29kZUJsb2NrLT5lbnRyeXBvaW50TG9h
ZExvY2F0aW9uRnJvbUZ1bmN0aW9uSW5kZXhTcGFjZShpbmRleCk7CiAgICAgICAgICAgICBXYXNt
OjpTaWduYXR1cmVJbmRleCBzaWduYXR1cmVJbmRleCA9IG1vZHVsZS0+c2lnbmF0dXJlSW5kZXhG
cm9tRnVuY3Rpb25JbmRleFNwYWNlKGluZGV4KTsKICAgICAgICAgICAgIGNvbnN0IFdhc206OlNp
Z25hdHVyZSYgc2lnbmF0dXJlID0gV2FzbTo6U2lnbmF0dXJlSW5mb3JtYXRpb246OmdldChzaWdu
YXR1cmVJbmRleCk7Ci0gICAgICAgICAgICBXZWJBc3NlbWJseUZ1bmN0aW9uKiBmdW5jdGlvbiA9
IFdlYkFzc2VtYmx5RnVuY3Rpb246OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBnbG9iYWxPYmpl
Y3QtPndlYkFzc2VtYmx5RnVuY3Rpb25TdHJ1Y3R1cmUoKSwgc2lnbmF0dXJlLmFyZ3VtZW50Q291
bnQoKSwgZmllbGQsIG1faW5zdGFuY2UuZ2V0KCksIGVtYmVkZGVyRW50cnlwb2ludENhbGxlZSwg
ZW50cnlwb2ludExvYWRMb2NhdGlvbiwgc2lnbmF0dXJlSW5kZXgpOworICAgICAgICAgICAgV2Vi
QXNzZW1ibHlGdW5jdGlvbiogZnVuY3Rpb24gPSBXZWJBc3NlbWJseUZ1bmN0aW9uOjpjcmVhdGUo
dm0sIGdsb2JhbE9iamVjdCwgZ2xvYmFsT2JqZWN0LT53ZWJBc3NlbWJseUZ1bmN0aW9uU3RydWN0
dXJlKCksIHNpZ25hdHVyZS5hcmd1bWVudENvdW50KCksIG1ha2VTdHJpbmcoaW5kZXgpLCBtX2lu
c3RhbmNlLmdldCgpLCBlbWJlZGRlckVudHJ5cG9pbnRDYWxsZWUsIGVudHJ5cG9pbnRMb2FkTG9j
YXRpb24sIHNpZ25hdHVyZUluZGV4KTsKICAgICAgICAgICAgIHdyYXBwZXIgPSBmdW5jdGlvbjsK
ICAgICAgICAgfQogCkBAIC0zOTgsNyArMzk5LDcgQEAgdm9pZCBXZWJBc3NlbWJseU1vZHVsZVJl
Y29yZDo6bGluayhKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlLCBKU09iamUK
ICAgICB9OwogCiAgICAgZm9yIChhdXRvIGluZGV4IDogbW9kdWxlSW5mb3JtYXRpb24ucmVmZXJl
bmNlZEZ1bmN0aW9ucygpKQotICAgICAgICBtYWtlRnVuY3Rpb25XcmFwcGVyKCJSZWZlcmVuY2Vk
IGZ1bmN0aW9uIiwgaW5kZXgpOworICAgICAgICBtYWtlRnVuY3Rpb25XcmFwcGVyKGluZGV4KTsK
IAogICAgIC8vIEdsb2JhbHMKICAgICB7CkBAIC00MTEsOCArNDEyLDggQEAgdm9pZCBXZWJBc3Nl
bWJseU1vZHVsZVJlY29yZDo6bGluayhKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1Zh
bHVlLCBKU09iamUKICAgICAgICAgICAgICAgICBpbml0aWFsQml0cyA9IG1faW5zdGFuY2UtPmlu
c3RhbmNlKCkubG9hZEk2NEdsb2JhbChnbG9iYWwuaW5pdGlhbEJpdHNPckltcG9ydE51bWJlcik7
CiAgICAgICAgICAgICB9IGVsc2UgaWYgKGdsb2JhbC5pbml0aWFsaXphdGlvblR5cGUgPT0gV2Fz
bTo6R2xvYmFsSW5mb3JtYXRpb246OkZyb21SZWZGdW5jKSB7CiAgICAgICAgICAgICAgICAgQVNT
RVJUKGdsb2JhbC5pbml0aWFsQml0c09ySW1wb3J0TnVtYmVyIDwgbW9kdWxlSW5mb3JtYXRpb24u
ZnVuY3Rpb25JbmRleFNwYWNlU2l6ZSgpKTsKLSAgICAgICAgICAgICAgICBBU1NFUlQobWFrZUZ1
bmN0aW9uV3JhcHBlcigiR2xvYmFsIGluaXQgZXhwciIsIGdsb2JhbC5pbml0aWFsQml0c09ySW1w
b3J0TnVtYmVyKS5pc0NhbGxhYmxlKHZtKSk7Ci0gICAgICAgICAgICAgICAgaW5pdGlhbEJpdHMg
PSBKU1ZhbHVlOjplbmNvZGUobWFrZUZ1bmN0aW9uV3JhcHBlcigiR2xvYmFsIGluaXQgZXhwciIs
IGdsb2JhbC5pbml0aWFsQml0c09ySW1wb3J0TnVtYmVyKSk7CisgICAgICAgICAgICAgICAgQVNT
RVJUKG1ha2VGdW5jdGlvbldyYXBwZXIoZ2xvYmFsLmluaXRpYWxCaXRzT3JJbXBvcnROdW1iZXIp
LmlzQ2FsbGFibGUodm0pKTsKKyAgICAgICAgICAgICAgICBpbml0aWFsQml0cyA9IEpTVmFsdWU6
OmVuY29kZShtYWtlRnVuY3Rpb25XcmFwcGVyKGdsb2JhbC5pbml0aWFsQml0c09ySW1wb3J0TnVt
YmVyKSk7CiAgICAgICAgICAgICB9IGVsc2UKICAgICAgICAgICAgICAgICBpbml0aWFsQml0cyA9
IGdsb2JhbC5pbml0aWFsQml0c09ySW1wb3J0TnVtYmVyOwogCkBAIC00MzcsMTQgKzQzOCwxNiBA
QCB2b2lkIFdlYkFzc2VtYmx5TW9kdWxlUmVjb3JkOjpsaW5rKEpTR2xvYmFsT2JqZWN0KiBnbG9i
YWxPYmplY3QsIEpTVmFsdWUsIEpTT2JqZQogICAgIFN5bWJvbFRhYmxlKiBleHBvcnRTeW1ib2xU
YWJsZSA9IG1vZHVsZS0+ZXhwb3J0U3ltYm9sVGFibGUoKTsKIAogICAgIC8vIExldCBleHBvcnRz
IGJlIGEgbGlzdCBvZiAoc3RyaW5nLCBKUyB2YWx1ZSkgcGFpcnMgdGhhdCBpcyBtYXBwZWQgZnJv
bSBlYWNoIGV4dGVybmFsIHZhbHVlIGUgaW4gaW5zdGFuY2UuZXhwb3J0cyBhcyBmb2xsb3dzOgor
ICAgIC8vIGh0dHBzOi8vd2ViYXNzZW1ibHkuZ2l0aHViLmlvL3NwZWMvanMtYXBpL2luZGV4Lmh0
bWwjY3JlYXRlLWFuLWV4cG9ydHMtb2JqZWN0CisgICAgSlNPYmplY3QqIGV4cG9ydHNPYmplY3Qg
PSBjb25zdHJ1Y3RFbXB0eU9iamVjdCh2bSwgZ2xvYmFsT2JqZWN0LT5udWxsUHJvdG90eXBlT2Jq
ZWN0U3RydWN0dXJlKCkpOwogICAgIEpTTW9kdWxlRW52aXJvbm1lbnQqIG1vZHVsZUVudmlyb25t
ZW50ID0gSlNNb2R1bGVFbnZpcm9ubWVudDo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIG51bGxw
dHIsIGV4cG9ydFN5bWJvbFRhYmxlLCBKU1ZhbHVlKCksIHRoaXMpOwogICAgIGZvciAoY29uc3Qg
YXV0byYgZXhwIDogbW9kdWxlSW5mb3JtYXRpb24uZXhwb3J0cykgewogICAgICAgICBKU1ZhbHVl
IGV4cG9ydGVkVmFsdWU7CiAgICAgICAgIHN3aXRjaCAoZXhwLmtpbmQpIHsKICAgICAgICAgY2Fz
ZSBXYXNtOjpFeHRlcm5hbEtpbmQ6OkZ1bmN0aW9uOiB7Ci0gICAgICAgICAgICBleHBvcnRlZFZh
bHVlID0gbWFrZUZ1bmN0aW9uV3JhcHBlcihTdHJpbmc6OmZyb21VVEY4KGV4cC5maWVsZCksIGV4
cC5raW5kSW5kZXgpOworICAgICAgICAgICAgZXhwb3J0ZWRWYWx1ZSA9IG1ha2VGdW5jdGlvbldy
YXBwZXIoZXhwLmtpbmRJbmRleCk7CiAgICAgICAgICAgICBBU1NFUlQoZXhwb3J0ZWRWYWx1ZS5p
c0NhbGxhYmxlKHZtKSk7Ci0gICAgICAgICAgICBBU1NFUlQobWFrZUZ1bmN0aW9uV3JhcHBlcihT
dHJpbmc6OmZyb21VVEY4KGV4cC5maWVsZCksIGV4cC5raW5kSW5kZXgpID09IGV4cG9ydGVkVmFs
dWUpOworICAgICAgICAgICAgQVNTRVJUKG1ha2VGdW5jdGlvbldyYXBwZXIoZXhwLmtpbmRJbmRl
eCkgPT0gZXhwb3J0ZWRWYWx1ZSk7CiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgfQogICAg
ICAgICBjYXNlIFdhc206OkV4dGVybmFsS2luZDo6VGFibGU6IHsKQEAgLTQ5NCwxNCArNDk3LDIy
IEBAIHZvaWQgV2ViQXNzZW1ibHlNb2R1bGVSZWNvcmQ6OmxpbmsoSlNHbG9iYWxPYmplY3QqIGds
b2JhbE9iamVjdCwgSlNWYWx1ZSwgSlNPYmplCiAgICAgICAgIH0KICAgICAgICAgfQogCisgICAg
ICAgIElkZW50aWZpZXIgcHJvcGVydHlOYW1lID0gSWRlbnRpZmllcjo6ZnJvbVN0cmluZyh2bSwg
U3RyaW5nOjpmcm9tVVRGOChleHAuZmllbGQpKTsKKwogICAgICAgICBib29sIHNob3VsZFRocm93
UmVhZE9ubHlFcnJvciA9IGZhbHNlOwogICAgICAgICBib29sIGlnbm9yZVJlYWRPbmx5RXJyb3Jz
ID0gdHJ1ZTsKICAgICAgICAgYm9vbCBwdXRSZXN1bHQgPSBmYWxzZTsKLSAgICAgICAgc3ltYm9s
VGFibGVQdXRUb3VjaFdhdGNocG9pbnRTZXQobW9kdWxlRW52aXJvbm1lbnQsIGdsb2JhbE9iamVj
dCwgSWRlbnRpZmllcjo6ZnJvbVN0cmluZyh2bSwgU3RyaW5nOjpmcm9tVVRGOChleHAuZmllbGQp
KSwgZXhwb3J0ZWRWYWx1ZSwgc2hvdWxkVGhyb3dSZWFkT25seUVycm9yLCBpZ25vcmVSZWFkT25s
eUVycm9ycywgcHV0UmVzdWx0KTsKKyAgICAgICAgc3ltYm9sVGFibGVQdXRUb3VjaFdhdGNocG9p
bnRTZXQobW9kdWxlRW52aXJvbm1lbnQsIGdsb2JhbE9iamVjdCwgcHJvcGVydHlOYW1lLCBleHBv
cnRlZFZhbHVlLCBzaG91bGRUaHJvd1JlYWRPbmx5RXJyb3IsIGlnbm9yZVJlYWRPbmx5RXJyb3Jz
LCBwdXRSZXN1bHQpOwogICAgICAgICBzY29wZS5hc3NlcnROb0V4Y2VwdGlvbigpOwogICAgICAg
ICBSRUxFQVNFX0FTU0VSVChwdXRSZXN1bHQpOworCisgICAgICAgIGV4cG9ydHNPYmplY3QtPnB1
dERpcmVjdCh2bSwgcHJvcGVydHlOYW1lLCBleHBvcnRlZFZhbHVlLCAwKTsKICAgICB9CiAKKyAg
ICBvYmplY3RDb25zdHJ1Y3RvckZyZWV6ZShnbG9iYWxPYmplY3QsIGV4cG9ydHNPYmplY3QpOwor
ICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIHZvaWQoKSk7CisgICAgbV9leHBvcnRzT2Jq
ZWN0LnNldCh2bSwgdGhpcywgZXhwb3J0c09iamVjdCk7CisKICAgICBib29sIGhhc1N0YXJ0ID0g
ISFtb2R1bGVJbmZvcm1hdGlvbi5zdGFydEZ1bmN0aW9uSW5kZXhTcGFjZTsKICAgICBpZiAoaGFz
U3RhcnQpIHsKICAgICAgICAgYXV0byBzdGFydEZ1bmN0aW9uSW5kZXhTcGFjZSA9IG1vZHVsZUlu
Zm9ybWF0aW9uLnN0YXJ0RnVuY3Rpb25JbmRleFNwYWNlLnZhbHVlT3IoMCk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseU1vZHVsZVJlY29yZC5o
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlNb2R1bGVSZWNvcmQu
aAppbmRleCA3NTFmMWJiOThlNDQ3N2JjNTJmODJlZTIxOTE4NzRlN2VkMmI0ZjI3Li5hNjdmMjBi
Y2VjNzFmNzcxN2Q0MWUxYzhjYjVhYWM2ZmVmMDJhYTkwIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseU1vZHVsZVJlY29yZC5oCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5TW9kdWxlUmVjb3JkLmgKQEAgLTYy
LDYgKzYyLDggQEAgY2xhc3MgV2ViQXNzZW1ibHlNb2R1bGVSZWNvcmQgZmluYWwgOiBwdWJsaWMg
QWJzdHJhY3RNb2R1bGVSZWNvcmQgewogICAgIHZvaWQgbGluayhKU0dsb2JhbE9iamVjdCosIEpT
VmFsdWUgc2NyaXB0RmV0Y2hlciwgSlNPYmplY3QqIGltcG9ydE9iamVjdCwgV2FzbTo6Q3JlYXRp
b25Nb2RlKTsKICAgICBKU19FWFBPUlRfUFJJVkFURSBKU1ZhbHVlIGV2YWx1YXRlKEpTR2xvYmFs
T2JqZWN0Kik7CiAKKyAgICBKU09iamVjdCogZXhwb3J0c09iamVjdCgpIGNvbnN0IHsgcmV0dXJu
IG1fZXhwb3J0c09iamVjdC5nZXQoKTsgfQorCiBwcml2YXRlOgogICAgIFdlYkFzc2VtYmx5TW9k
dWxlUmVjb3JkKFZNJiwgU3RydWN0dXJlKiwgY29uc3QgSWRlbnRpZmllciYpOwogCkBAIC03MSw2
ICs3Myw3IEBAIGNsYXNzIFdlYkFzc2VtYmx5TW9kdWxlUmVjb3JkIGZpbmFsIDogcHVibGljIEFi
c3RyYWN0TW9kdWxlUmVjb3JkIHsKIAogICAgIFdyaXRlQmFycmllcjxKU1dlYkFzc2VtYmx5SW5z
dGFuY2U+IG1faW5zdGFuY2U7CiAgICAgV3JpdGVCYXJyaWVyPEpTT2JqZWN0PiBtX3N0YXJ0RnVu
Y3Rpb247CisgICAgV3JpdGVCYXJyaWVyPEpTT2JqZWN0PiBtX2V4cG9ydHNPYmplY3Q7CiB9Owog
CiB9IC8vIG5hbWVzcGFjZSBKU0MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCmluZGV4IDc4
Y2ZjYjhlMWZmN2MxM2YwMWM3YmRmZDk3MGRkYTA5NDU4NzVkZGUuLjA5NDBmMDQzZGU3NjVkODUw
ZDNjOGVkNjFjZGZmZTk4ZDljMDQ5NWQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwpA
QCAtMSwzICsxLDE2IEBACisyMDIwLTEyLTI5ICBZdXN1a2UgU3V6dWtpICA8eXN1enVraUBhcHBs
ZS5jb20+CisKKyAgICAgICAgW0pTQ10gVXBkYXRlIFdlYkFzc2VtYmx5IGluc3RhbmNlJ3MgZXhw
b3J0cyBvYmplY3QKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTIyMDE4OQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3dhc20vanNhcGkvY29uc3RydWN0b3IvaW5zdGFudGlh
dGUuYW55LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvd2FzbS9q
c2FwaS9jb25zdHJ1Y3Rvci9pbnN0YW50aWF0ZS5hbnkud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAg
ICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvd2FzbS9qc2FwaS9pbnN0YW5jZS9jb25zdHJ1Y3Rv
ci5hbnktZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy93YXNtL2pz
YXBpL2luc3RhbmNlL2NvbnN0cnVjdG9yLmFueS53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAg
ICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy93YXNtL2pzYXBpL3RhYmxlL2dyb3ctcmVmdHlwZXMudGVu
dGF0aXZlLmFueS1leHBlY3RlZC50eHQ6CisKIDIwMjAtMTItMjYgIEFsZXhleSBTaHZheWthICA8
c2h2YWlrYWxlc2hAZ21haWwuY29tPgogCiAgICAgICAgIFtXZWJJRExdIFJlbW92ZSBbQ3VzdG9t
VG9TdHJpbmdOYW1lXSBhbmQgTG9jYXRpb24tc3BlY2lmaWMgZXh0ZW5kZWQgYXR0cmlidXRlcwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93
YXNtL2pzYXBpL2NvbnN0cnVjdG9yL2luc3RhbnRpYXRlLmFueS1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dhc20vanNhcGkvY29uc3Ry
dWN0b3IvaW5zdGFudGlhdGUuYW55LWV4cGVjdGVkLnR4dAppbmRleCBkYWM3NTkzYTEyMTU5NGRm
OWE1OWJjM2I1MDFkNTU4YTJkMWFlMWIxLi4yNWU4NWQ4YmM0NGRkZGI2OWVjZTlmN2VmYTUyYTg4
OGJlZDE5OTBiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3dhc20vanNhcGkvY29uc3RydWN0b3IvaW5zdGFudGlhdGUuYW55LWV4cGVjdGVk
LnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dh
c20vanNhcGkvY29uc3RydWN0b3IvaW5zdGFudGlhdGUuYW55LWV4cGVjdGVkLnR4dApAQCAtMTMs
MzIgKzEzLDM2IEBAIEZBSUwgZ2V0dGVyIG9yZGVyIGZvciBpbXBvcnRzIG9iamVjdDogQnVmZmVy
U291cmNlIGFyZ3VtZW50IGFzc2VydF9hcnJheV9lcXVhbHM6CiBGQUlMIGdldHRlciBvcmRlciBm
b3IgaW1wb3J0cyBvYmplY3Q6IE1vZHVsZSBhcmd1bWVudCBhc3NlcnRfYXJyYXlfZXF1YWxzOiBl
eHBlY3RlZCBwcm9wZXJ0eSAxIHRvIGJlICJnbG9iYWwxIGdldHRlciIgYnV0IGdvdCAibWVtb3J5
IGdldHRlciIgKGV4cGVjdGVkIGFycmF5IFsibW9kdWxlIGdldHRlciIsICJnbG9iYWwxIGdldHRl
ciIsICJtb2R1bGUyIGdldHRlciIsICJnbG9iYWwzIGdldHRlciIsICJtb2R1bGUgZ2V0dGVyIiwg
Im1lbW9yeSBnZXR0ZXIiLCAibW9kdWxlIGdldHRlciIsICJnbG9iYWwyIGdldHRlciJdIGdvdCBb
Im1vZHVsZSBnZXR0ZXIiLCAibWVtb3J5IGdldHRlciIsICJtb2R1bGUgZ2V0dGVyIiwgImdsb2Jh
bDEgZ2V0dGVyIiwgIm1vZHVsZTIgZ2V0dGVyIiwgImdsb2JhbDMgZ2V0dGVyIiwgIm1vZHVsZSBn
ZXR0ZXIiLCAiZ2xvYmFsMiBnZXR0ZXIiXSkKIFBBU1MgaW1wb3J0czogQnVmZmVyU291cmNlIGFy
Z3VtZW50CiBQQVNTIGltcG9ydHM6IE1vZHVsZSBhcmd1bWVudAotRkFJTCBObyBpbXBvcnRzOiBC
dWZmZXJTb3VyY2UgYXJndW1lbnQgYXNzZXJ0X2FycmF5X2VxdWFsczogbWF0Y2hpbmcgZXhwb3J0
IGtleXMgZXhwZWN0ZWQgcHJvcGVydHkgMiB0byBiZSAidGFibGUiIGJ1dCBnb3QgImdsb2JhbCIg
KGV4cGVjdGVkIGFycmF5IFsiZm4iLCAiZm4yIiwgInRhYmxlIiwgImdsb2JhbCIsICJnbG9iYWwy
IiwgIm1lbW9yeSJdIGdvdCBbImZuIiwgImZuMiIsICJnbG9iYWwiLCAiZ2xvYmFsMiIsICJtZW1v
cnkiLCAidGFibGUiXSkKLUZBSUwgTm8gaW1wb3J0czogTW9kdWxlIGFyZ3VtZW50IGFzc2VydF9h
cnJheV9lcXVhbHM6IG1hdGNoaW5nIGV4cG9ydCBrZXlzIGV4cGVjdGVkIHByb3BlcnR5IDIgdG8g
YmUgInRhYmxlIiBidXQgZ290ICJnbG9iYWwiIChleHBlY3RlZCBhcnJheSBbImZuIiwgImZuMiIs
ICJ0YWJsZSIsICJnbG9iYWwiLCAiZ2xvYmFsMiIsICJtZW1vcnkiXSBnb3QgWyJmbiIsICJmbjIi
LCAiZ2xvYmFsIiwgImdsb2JhbDIiLCAibWVtb3J5IiwgInRhYmxlIl0pCi1GQUlMIGV4cG9ydHMg
YW5kIGltcG9ydHM6IEJ1ZmZlclNvdXJjZSBhcmd1bWVudCBhc3NlcnRfZmFsc2U6IGZuOiB3cml0
YWJsZSBleHBlY3RlZCBmYWxzZSBnb3QgdHJ1ZQotRkFJTCBleHBvcnRzIGFuZCBpbXBvcnRzOiBN
b2R1bGUgYXJndW1lbnQgYXNzZXJ0X2ZhbHNlOiBmbjogd3JpdGFibGUgZXhwZWN0ZWQgZmFsc2Ug
Z290IHRydWUKK1BBU1MgTm8gaW1wb3J0czogQnVmZmVyU291cmNlIGFyZ3VtZW50CitQQVNTIE5v
IGltcG9ydHM6IE1vZHVsZSBhcmd1bWVudAorUEFTUyBleHBvcnRzIGFuZCBpbXBvcnRzOiBCdWZm
ZXJTb3VyY2UgYXJndW1lbnQKK1BBU1MgZXhwb3J0cyBhbmQgaW1wb3J0czogTW9kdWxlIGFyZ3Vt
ZW50CiBGQUlMIGk2NCBleHBvcnRzIGFuZCBpbXBvcnRzOiBCdWZmZXJTb3VyY2UgYXJndW1lbnQg
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTGlu
a0Vycm9yOiBpbXBvcnRlZCBnbG9iYWwgbW9kdWxlOmdsb2JhbCBjYW5ub3QgYmUgYW4gaTY0Igog
RkFJTCBpNjQgZXhwb3J0cyBhbmQgaW1wb3J0czogTW9kdWxlIGFyZ3VtZW50IHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIkxpbmtFcnJvcjogaW1w
b3J0ZWQgZ2xvYmFsIG1vZHVsZTpnbG9iYWwgY2Fubm90IGJlIGFuIGk2NCIKLUZBSUwgaW1wb3J0
IHdpdGggaTMyLXJldHVybmluZyBmdW5jdGlvbjogQnVmZmVyU291cmNlIGFyZ3VtZW50IGFzc2Vy
dF9mYWxzZTogZm4yOiB3cml0YWJsZSBleHBlY3RlZCBmYWxzZSBnb3QgdHJ1ZQotRkFJTCBpbXBv
cnQgd2l0aCBpMzItcmV0dXJuaW5nIGZ1bmN0aW9uOiBNb2R1bGUgYXJndW1lbnQgYXNzZXJ0X2Zh
bHNlOiBmbjI6IHdyaXRhYmxlIGV4cGVjdGVkIGZhbHNlIGdvdCB0cnVlCi1GQUlMIGltcG9ydCB3
aXRoIGZ1bmN0aW9uIHRoYXQgdGFrZXMgYW5kIHJldHVybnMgaTMyOiBCdWZmZXJTb3VyY2UgYXJn
dW1lbnQgYXNzZXJ0X2ZhbHNlOiBmbjI6IHdyaXRhYmxlIGV4cGVjdGVkIGZhbHNlIGdvdCB0cnVl
Ci1GQUlMIGltcG9ydCB3aXRoIGZ1bmN0aW9uIHRoYXQgdGFrZXMgYW5kIHJldHVybnMgaTMyOiBN
b2R1bGUgYXJndW1lbnQgYXNzZXJ0X2ZhbHNlOiBmbjI6IHdyaXRhYmxlIGV4cGVjdGVkIGZhbHNl
IGdvdCB0cnVlCi1GQUlMIGltcG9ydCB3aXRoIGk2NC1yZXR1cm5pbmcgZnVuY3Rpb246IEJ1ZmZl
clNvdXJjZSBhcmd1bWVudCBhc3NlcnRfZmFsc2U6IGZuMjogd3JpdGFibGUgZXhwZWN0ZWQgZmFs
c2UgZ290IHRydWUKLUZBSUwgaW1wb3J0IHdpdGggaTY0LXJldHVybmluZyBmdW5jdGlvbjogTW9k
dWxlIGFyZ3VtZW50IGFzc2VydF9mYWxzZTogZm4yOiB3cml0YWJsZSBleHBlY3RlZCBmYWxzZSBn
b3QgdHJ1ZQotRkFJTCBpbXBvcnQgd2l0aCBmdW5jdGlvbiB0aGF0IHRha2VzIGFuZCByZXR1cm5z
IGk2NDogQnVmZmVyU291cmNlIGFyZ3VtZW50IGFzc2VydF9mYWxzZTogZm4yOiB3cml0YWJsZSBl
eHBlY3RlZCBmYWxzZSBnb3QgdHJ1ZQotRkFJTCBpbXBvcnQgd2l0aCBmdW5jdGlvbiB0aGF0IHRh
a2VzIGFuZCByZXR1cm5zIGk2NDogTW9kdWxlIGFyZ3VtZW50IGFzc2VydF9mYWxzZTogZm4yOiB3
cml0YWJsZSBleHBlY3RlZCBmYWxzZSBnb3QgdHJ1ZQotRkFJTCBpbXBvcnQgd2l0aCBpMzItdGFr
aW5nIGZ1bmN0aW9uOiBCdWZmZXJTb3VyY2UgYXJndW1lbnQgYXNzZXJ0X2ZhbHNlOiBmbjogd3Jp
dGFibGUgZXhwZWN0ZWQgZmFsc2UgZ290IHRydWUKLUZBSUwgaW1wb3J0IHdpdGggaTMyLXRha2lu
ZyBmdW5jdGlvbjogTW9kdWxlIGFyZ3VtZW50IGFzc2VydF9mYWxzZTogZm46IHdyaXRhYmxlIGV4
cGVjdGVkIGZhbHNlIGdvdCB0cnVlCi1GQUlMIGltcG9ydCB3aXRoIGk2NC10YWtpbmcgZnVuY3Rp
b246IEJ1ZmZlclNvdXJjZSBhcmd1bWVudCBhc3NlcnRfZmFsc2U6IGZuOiB3cml0YWJsZSBleHBl
Y3RlZCBmYWxzZSBnb3QgdHJ1ZQotRkFJTCBpbXBvcnQgd2l0aCBpNjQtdGFraW5nIGZ1bmN0aW9u
OiBNb2R1bGUgYXJndW1lbnQgYXNzZXJ0X2ZhbHNlOiBmbjogd3JpdGFibGUgZXhwZWN0ZWQgZmFs
c2UgZ290IHRydWUKLUZBSUwgZXhwb3J0IGk2NC1yZXR1cm5pbmcgZnVuY3Rpb246IEJ1ZmZlclNv
dXJjZSBhcmd1bWVudCBhc3NlcnRfZmFsc2U6IGZuOiB3cml0YWJsZSBleHBlY3RlZCBmYWxzZSBn
b3QgdHJ1ZQotRkFJTCBleHBvcnQgaTY0LXJldHVybmluZyBmdW5jdGlvbjogTW9kdWxlIGFyZ3Vt
ZW50IGFzc2VydF9mYWxzZTogZm46IHdyaXRhYmxlIGV4cGVjdGVkIGZhbHNlIGdvdCB0cnVlCi1G
QUlMIGkzMiBtdXRhYmxlIFdlYkFzc2VtYmx5Lkdsb2JhbCBpbXBvcnQ6IEJ1ZmZlclNvdXJjZSBh
cmd1bWVudCBhc3NlcnRfZmFsc2U6IGZuOiB3cml0YWJsZSBleHBlY3RlZCBmYWxzZSBnb3QgdHJ1
ZQotRkFJTCBpMzIgbXV0YWJsZSBXZWJBc3NlbWJseS5HbG9iYWwgaW1wb3J0OiBNb2R1bGUgYXJn
dW1lbnQgYXNzZXJ0X2ZhbHNlOiBmbjogd3JpdGFibGUgZXhwZWN0ZWQgZmFsc2UgZ290IHRydWUK
K1BBU1MgaW1wb3J0IHdpdGggaTMyLXJldHVybmluZyBmdW5jdGlvbjogQnVmZmVyU291cmNlIGFy
Z3VtZW50CitQQVNTIGltcG9ydCB3aXRoIGkzMi1yZXR1cm5pbmcgZnVuY3Rpb246IE1vZHVsZSBh
cmd1bWVudAorUEFTUyBpbXBvcnQgd2l0aCBmdW5jdGlvbiB0aGF0IHRha2VzIGFuZCByZXR1cm5z
IGkzMjogQnVmZmVyU291cmNlIGFyZ3VtZW50CitQQVNTIGltcG9ydCB3aXRoIGZ1bmN0aW9uIHRo
YXQgdGFrZXMgYW5kIHJldHVybnMgaTMyOiBNb2R1bGUgYXJndW1lbnQKK0ZBSUwgaW1wb3J0IHdp
dGggaTY0LXJldHVybmluZyBmdW5jdGlvbjogQnVmZmVyU291cmNlIGFyZ3VtZW50IGFzc2VydF90
cnVlOiBTaG91bGQgaGF2ZSBjYWxsZWQgaW50byBKUyBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQor
RkFJTCBpbXBvcnQgd2l0aCBpNjQtcmV0dXJuaW5nIGZ1bmN0aW9uOiBNb2R1bGUgYXJndW1lbnQg
YXNzZXJ0X3RydWU6IFNob3VsZCBoYXZlIGNhbGxlZCBpbnRvIEpTIGV4cGVjdGVkIHRydWUgZ290
IGZhbHNlCitGQUlMIGltcG9ydCB3aXRoIGZ1bmN0aW9uIHRoYXQgdGFrZXMgYW5kIHJldHVybnMg
aTY0OiBCdWZmZXJTb3VyY2UgYXJndW1lbnQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiUnVudGltZUVycm9yOiBXZWJBc3NlbWJseSBmdW5jdGlv
biB0aGF0IHJldHVybnMgaTY0IGNhbid0IGJlIGNhbGxlZCBmcm9tIEphdmFTY3JpcHQgKGV2YWx1
YXRpbmcgJ2luc3RhbmNlLmV4cG9ydHMuZm4yKCknKSIKK0ZBSUwgaW1wb3J0IHdpdGggZnVuY3Rp
b24gdGhhdCB0YWtlcyBhbmQgcmV0dXJucyBpNjQ6IE1vZHVsZSBhcmd1bWVudCBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJSdW50aW1lRXJyb3I6
IFdlYkFzc2VtYmx5IGZ1bmN0aW9uIHRoYXQgcmV0dXJucyBpNjQgY2FuJ3QgYmUgY2FsbGVkIGZy
b20gSmF2YVNjcmlwdCAoZXZhbHVhdGluZyAnaW5zdGFuY2UuZXhwb3J0cy5mbjIoKScpIgorUEFT
UyBpbXBvcnQgd2l0aCBpMzItdGFraW5nIGZ1bmN0aW9uOiBCdWZmZXJTb3VyY2UgYXJndW1lbnQK
K1BBU1MgaW1wb3J0IHdpdGggaTMyLXRha2luZyBmdW5jdGlvbjogTW9kdWxlIGFyZ3VtZW50CitG
QUlMIGltcG9ydCB3aXRoIGk2NC10YWtpbmcgZnVuY3Rpb246IEJ1ZmZlclNvdXJjZSBhcmd1bWVu
dCBhc3NlcnRfdGhyb3dzX2pzOiBmdW5jdGlvbiAiKCkgPT4gaW5zdGFuY2UuZXhwb3J0cy5mbig2
KSIgdGhyZXcgb2JqZWN0ICJSdW50aW1lRXJyb3I6IFdlYkFzc2VtYmx5IGZ1bmN0aW9uIHdpdGgg
YW4gaTY0IGFyZ3VtZW50IGNhbid0IGJlIGNhbGxlZCBmcm9tIEphdmFTY3JpcHQgKGV2YWx1YXRp
bmcgJ2luc3RhbmNlLmV4cG9ydHMuZm4oNiknKSIgKCJSdW50aW1lRXJyb3IiKSBleHBlY3RlZCBp
bnN0YW5jZSBvZiBmdW5jdGlvbiAiZnVuY3Rpb24gVHlwZUVycm9yKCkgeworICAgIFtuYXRpdmUg
Y29kZV0KK30iICgiVHlwZUVycm9yIikKK0ZBSUwgaW1wb3J0IHdpdGggaTY0LXRha2luZyBmdW5j
dGlvbjogTW9kdWxlIGFyZ3VtZW50IGFzc2VydF90aHJvd3NfanM6IGZ1bmN0aW9uICIoKSA9PiBp
bnN0YW5jZS5leHBvcnRzLmZuKDYpIiB0aHJldyBvYmplY3QgIlJ1bnRpbWVFcnJvcjogV2ViQXNz
ZW1ibHkgZnVuY3Rpb24gd2l0aCBhbiBpNjQgYXJndW1lbnQgY2FuJ3QgYmUgY2FsbGVkIGZyb20g
SmF2YVNjcmlwdCAoZXZhbHVhdGluZyAnaW5zdGFuY2UuZXhwb3J0cy5mbig2KScpIiAoIlJ1bnRp
bWVFcnJvciIpIGV4cGVjdGVkIGluc3RhbmNlIG9mIGZ1bmN0aW9uICJmdW5jdGlvbiBUeXBlRXJy
b3IoKSB7CisgICAgW25hdGl2ZSBjb2RlXQorfSIgKCJUeXBlRXJyb3IiKQorRkFJTCBleHBvcnQg
aTY0LXJldHVybmluZyBmdW5jdGlvbjogQnVmZmVyU291cmNlIGFyZ3VtZW50IHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlJ1bnRpbWVFcnJvcjog
V2ViQXNzZW1ibHkgZnVuY3Rpb24gdGhhdCByZXR1cm5zIGk2NCBjYW4ndCBiZSBjYWxsZWQgZnJv
bSBKYXZhU2NyaXB0IChldmFsdWF0aW5nICdpbnN0YW5jZS5leHBvcnRzLmZuKCknKSIKK0ZBSUwg
ZXhwb3J0IGk2NC1yZXR1cm5pbmcgZnVuY3Rpb246IE1vZHVsZSBhcmd1bWVudCBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJSdW50aW1lRXJyb3I6
IFdlYkFzc2VtYmx5IGZ1bmN0aW9uIHRoYXQgcmV0dXJucyBpNjQgY2FuJ3QgYmUgY2FsbGVkIGZy
b20gSmF2YVNjcmlwdCAoZXZhbHVhdGluZyAnaW5zdGFuY2UuZXhwb3J0cy5mbigpJykiCitQQVNT
IGkzMiBtdXRhYmxlIFdlYkFzc2VtYmx5Lkdsb2JhbCBpbXBvcnQ6IEJ1ZmZlclNvdXJjZSBhcmd1
bWVudAorUEFTUyBpMzIgbXV0YWJsZSBXZWJBc3NlbWJseS5HbG9iYWwgaW1wb3J0OiBNb2R1bGUg
YXJndW1lbnQKIEZBSUwgaTY0IG11dGFibGUgV2ViQXNzZW1ibHkuR2xvYmFsIGltcG9ydDogQnVm
ZmVyU291cmNlIGFyZ3VtZW50IFdlYkFzc2VtYmx5Lkdsb2JhbCBkb2VzIG5vdCBhY2NlcHQgaTY0
IGluaXRpYWwgdmFsdWUKIEZBSUwgaTY0IG11dGFibGUgV2ViQXNzZW1ibHkuR2xvYmFsIGltcG9y
dDogTW9kdWxlIGFyZ3VtZW50IFdlYkFzc2VtYmx5Lkdsb2JhbCBkb2VzIG5vdCBhY2NlcHQgaTY0
IGluaXRpYWwgdmFsdWUKLUZBSUwgTXVsdGlwbGUgaTY0IGFyZ3VtZW50czogQnVmZmVyU291cmNl
IGFyZ3VtZW50IGFzc2VydF9mYWxzZTogZm46IHdyaXRhYmxlIGV4cGVjdGVkIGZhbHNlIGdvdCB0
cnVlCi1GQUlMIE11bHRpcGxlIGk2NCBhcmd1bWVudHM6IE1vZHVsZSBhcmd1bWVudCBhc3NlcnRf
ZmFsc2U6IGZuOiB3cml0YWJsZSBleHBlY3RlZCBmYWxzZSBnb3QgdHJ1ZQorRkFJTCBNdWx0aXBs
ZSBpNjQgYXJndW1lbnRzOiBCdWZmZXJTb3VyY2UgYXJndW1lbnQgcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiUnVudGltZUVycm9yOiBXZWJBc3Nl
bWJseSBmdW5jdGlvbiB3aXRoIGFuIGk2NCBhcmd1bWVudCBjYW4ndCBiZSBjYWxsZWQgZnJvbSBK
YXZhU2NyaXB0IChldmFsdWF0aW5nICdmbigxbiwgMG4pJykiCitGQUlMIE11bHRpcGxlIGk2NCBh
cmd1bWVudHM6IE1vZHVsZSBhcmd1bWVudCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJSdW50aW1lRXJyb3I6IFdlYkFzc2VtYmx5IGZ1bmN0aW9u
IHdpdGggYW4gaTY0IGFyZ3VtZW50IGNhbid0IGJlIGNhbGxlZCBmcm9tIEphdmFTY3JpcHQgKGV2
YWx1YXRpbmcgJ2ZuKDFuLCAwbiknKSIKIFBBU1Mgc3RyYXkgYXJndW1lbnQ6IEJ1ZmZlclNvdXJj
ZSBhcmd1bWVudAogUEFTUyBzdHJheSBhcmd1bWVudDogTW9kdWxlIGFyZ3VtZW50CiBQQVNTIFN5
bmNocm9ub3VzIG9wdGlvbnMgaGFuZGxpbmc6IEJ1ZmZlciBhcmd1bWVudApkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93YXNtL2pzYXBpL2Nv
bnN0cnVjdG9yL2luc3RhbnRpYXRlLmFueS53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93YXNtL2pzYXBpL2NvbnN0cnVjdG9y
L2luc3RhbnRpYXRlLmFueS53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IGRhYzc1OTNhMTIxNTk0
ZGY5YTU5YmMzYjUwMWQ1NThhMmQxYWUxYjEuLjI1ZTg1ZDhiYzQ0ZGRkYjY5ZWNlOWY3ZWZhNTJh
ODg4YmVkMTk5MGIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvd2FzbS9qc2FwaS9jb25zdHJ1Y3Rvci9pbnN0YW50aWF0ZS5hbnkud29ya2Vy
LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3dhc20vanNhcGkvY29uc3RydWN0b3IvaW5zdGFudGlhdGUuYW55Lndvcmtlci1leHBl
Y3RlZC50eHQKQEAgLTEzLDMyICsxMywzNiBAQCBGQUlMIGdldHRlciBvcmRlciBmb3IgaW1wb3J0
cyBvYmplY3Q6IEJ1ZmZlclNvdXJjZSBhcmd1bWVudCBhc3NlcnRfYXJyYXlfZXF1YWxzOgogRkFJ
TCBnZXR0ZXIgb3JkZXIgZm9yIGltcG9ydHMgb2JqZWN0OiBNb2R1bGUgYXJndW1lbnQgYXNzZXJ0
X2FycmF5X2VxdWFsczogZXhwZWN0ZWQgcHJvcGVydHkgMSB0byBiZSAiZ2xvYmFsMSBnZXR0ZXIi
IGJ1dCBnb3QgIm1lbW9yeSBnZXR0ZXIiIChleHBlY3RlZCBhcnJheSBbIm1vZHVsZSBnZXR0ZXIi
LCAiZ2xvYmFsMSBnZXR0ZXIiLCAibW9kdWxlMiBnZXR0ZXIiLCAiZ2xvYmFsMyBnZXR0ZXIiLCAi
bW9kdWxlIGdldHRlciIsICJtZW1vcnkgZ2V0dGVyIiwgIm1vZHVsZSBnZXR0ZXIiLCAiZ2xvYmFs
MiBnZXR0ZXIiXSBnb3QgWyJtb2R1bGUgZ2V0dGVyIiwgIm1lbW9yeSBnZXR0ZXIiLCAibW9kdWxl
IGdldHRlciIsICJnbG9iYWwxIGdldHRlciIsICJtb2R1bGUyIGdldHRlciIsICJnbG9iYWwzIGdl
dHRlciIsICJtb2R1bGUgZ2V0dGVyIiwgImdsb2JhbDIgZ2V0dGVyIl0pCiBQQVNTIGltcG9ydHM6
IEJ1ZmZlclNvdXJjZSBhcmd1bWVudAogUEFTUyBpbXBvcnRzOiBNb2R1bGUgYXJndW1lbnQKLUZB
SUwgTm8gaW1wb3J0czogQnVmZmVyU291cmNlIGFyZ3VtZW50IGFzc2VydF9hcnJheV9lcXVhbHM6
IG1hdGNoaW5nIGV4cG9ydCBrZXlzIGV4cGVjdGVkIHByb3BlcnR5IDIgdG8gYmUgInRhYmxlIiBi
dXQgZ290ICJnbG9iYWwiIChleHBlY3RlZCBhcnJheSBbImZuIiwgImZuMiIsICJ0YWJsZSIsICJn
bG9iYWwiLCAiZ2xvYmFsMiIsICJtZW1vcnkiXSBnb3QgWyJmbiIsICJmbjIiLCAiZ2xvYmFsIiwg
Imdsb2JhbDIiLCAibWVtb3J5IiwgInRhYmxlIl0pCi1GQUlMIE5vIGltcG9ydHM6IE1vZHVsZSBh
cmd1bWVudCBhc3NlcnRfYXJyYXlfZXF1YWxzOiBtYXRjaGluZyBleHBvcnQga2V5cyBleHBlY3Rl
ZCBwcm9wZXJ0eSAyIHRvIGJlICJ0YWJsZSIgYnV0IGdvdCAiZ2xvYmFsIiAoZXhwZWN0ZWQgYXJy
YXkgWyJmbiIsICJmbjIiLCAidGFibGUiLCAiZ2xvYmFsIiwgImdsb2JhbDIiLCAibWVtb3J5Il0g
Z290IFsiZm4iLCAiZm4yIiwgImdsb2JhbCIsICJnbG9iYWwyIiwgIm1lbW9yeSIsICJ0YWJsZSJd
KQotRkFJTCBleHBvcnRzIGFuZCBpbXBvcnRzOiBCdWZmZXJTb3VyY2UgYXJndW1lbnQgYXNzZXJ0
X2ZhbHNlOiBmbjogd3JpdGFibGUgZXhwZWN0ZWQgZmFsc2UgZ290IHRydWUKLUZBSUwgZXhwb3J0
cyBhbmQgaW1wb3J0czogTW9kdWxlIGFyZ3VtZW50IGFzc2VydF9mYWxzZTogZm46IHdyaXRhYmxl
IGV4cGVjdGVkIGZhbHNlIGdvdCB0cnVlCitQQVNTIE5vIGltcG9ydHM6IEJ1ZmZlclNvdXJjZSBh
cmd1bWVudAorUEFTUyBObyBpbXBvcnRzOiBNb2R1bGUgYXJndW1lbnQKK1BBU1MgZXhwb3J0cyBh
bmQgaW1wb3J0czogQnVmZmVyU291cmNlIGFyZ3VtZW50CitQQVNTIGV4cG9ydHMgYW5kIGltcG9y
dHM6IE1vZHVsZSBhcmd1bWVudAogRkFJTCBpNjQgZXhwb3J0cyBhbmQgaW1wb3J0czogQnVmZmVy
U291cmNlIGFyZ3VtZW50IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIkxpbmtFcnJvcjogaW1wb3J0ZWQgZ2xvYmFsIG1vZHVsZTpnbG9iYWwgY2Fu
bm90IGJlIGFuIGk2NCIKIEZBSUwgaTY0IGV4cG9ydHMgYW5kIGltcG9ydHM6IE1vZHVsZSBhcmd1
bWVudCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJMaW5rRXJyb3I6IGltcG9ydGVkIGdsb2JhbCBtb2R1bGU6Z2xvYmFsIGNhbm5vdCBiZSBhbiBp
NjQiCi1GQUlMIGltcG9ydCB3aXRoIGkzMi1yZXR1cm5pbmcgZnVuY3Rpb246IEJ1ZmZlclNvdXJj
ZSBhcmd1bWVudCBhc3NlcnRfZmFsc2U6IGZuMjogd3JpdGFibGUgZXhwZWN0ZWQgZmFsc2UgZ290
IHRydWUKLUZBSUwgaW1wb3J0IHdpdGggaTMyLXJldHVybmluZyBmdW5jdGlvbjogTW9kdWxlIGFy
Z3VtZW50IGFzc2VydF9mYWxzZTogZm4yOiB3cml0YWJsZSBleHBlY3RlZCBmYWxzZSBnb3QgdHJ1
ZQotRkFJTCBpbXBvcnQgd2l0aCBmdW5jdGlvbiB0aGF0IHRha2VzIGFuZCByZXR1cm5zIGkzMjog
QnVmZmVyU291cmNlIGFyZ3VtZW50IGFzc2VydF9mYWxzZTogZm4yOiB3cml0YWJsZSBleHBlY3Rl
ZCBmYWxzZSBnb3QgdHJ1ZQotRkFJTCBpbXBvcnQgd2l0aCBmdW5jdGlvbiB0aGF0IHRha2VzIGFu
ZCByZXR1cm5zIGkzMjogTW9kdWxlIGFyZ3VtZW50IGFzc2VydF9mYWxzZTogZm4yOiB3cml0YWJs
ZSBleHBlY3RlZCBmYWxzZSBnb3QgdHJ1ZQotRkFJTCBpbXBvcnQgd2l0aCBpNjQtcmV0dXJuaW5n
IGZ1bmN0aW9uOiBCdWZmZXJTb3VyY2UgYXJndW1lbnQgYXNzZXJ0X2ZhbHNlOiBmbjI6IHdyaXRh
YmxlIGV4cGVjdGVkIGZhbHNlIGdvdCB0cnVlCi1GQUlMIGltcG9ydCB3aXRoIGk2NC1yZXR1cm5p
bmcgZnVuY3Rpb246IE1vZHVsZSBhcmd1bWVudCBhc3NlcnRfZmFsc2U6IGZuMjogd3JpdGFibGUg
ZXhwZWN0ZWQgZmFsc2UgZ290IHRydWUKLUZBSUwgaW1wb3J0IHdpdGggZnVuY3Rpb24gdGhhdCB0
YWtlcyBhbmQgcmV0dXJucyBpNjQ6IEJ1ZmZlclNvdXJjZSBhcmd1bWVudCBhc3NlcnRfZmFsc2U6
IGZuMjogd3JpdGFibGUgZXhwZWN0ZWQgZmFsc2UgZ290IHRydWUKLUZBSUwgaW1wb3J0IHdpdGgg
ZnVuY3Rpb24gdGhhdCB0YWtlcyBhbmQgcmV0dXJucyBpNjQ6IE1vZHVsZSBhcmd1bWVudCBhc3Nl
cnRfZmFsc2U6IGZuMjogd3JpdGFibGUgZXhwZWN0ZWQgZmFsc2UgZ290IHRydWUKLUZBSUwgaW1w
b3J0IHdpdGggaTMyLXRha2luZyBmdW5jdGlvbjogQnVmZmVyU291cmNlIGFyZ3VtZW50IGFzc2Vy
dF9mYWxzZTogZm46IHdyaXRhYmxlIGV4cGVjdGVkIGZhbHNlIGdvdCB0cnVlCi1GQUlMIGltcG9y
dCB3aXRoIGkzMi10YWtpbmcgZnVuY3Rpb246IE1vZHVsZSBhcmd1bWVudCBhc3NlcnRfZmFsc2U6
IGZuOiB3cml0YWJsZSBleHBlY3RlZCBmYWxzZSBnb3QgdHJ1ZQotRkFJTCBpbXBvcnQgd2l0aCBp
NjQtdGFraW5nIGZ1bmN0aW9uOiBCdWZmZXJTb3VyY2UgYXJndW1lbnQgYXNzZXJ0X2ZhbHNlOiBm
bjogd3JpdGFibGUgZXhwZWN0ZWQgZmFsc2UgZ290IHRydWUKLUZBSUwgaW1wb3J0IHdpdGggaTY0
LXRha2luZyBmdW5jdGlvbjogTW9kdWxlIGFyZ3VtZW50IGFzc2VydF9mYWxzZTogZm46IHdyaXRh
YmxlIGV4cGVjdGVkIGZhbHNlIGdvdCB0cnVlCi1GQUlMIGV4cG9ydCBpNjQtcmV0dXJuaW5nIGZ1
bmN0aW9uOiBCdWZmZXJTb3VyY2UgYXJndW1lbnQgYXNzZXJ0X2ZhbHNlOiBmbjogd3JpdGFibGUg
ZXhwZWN0ZWQgZmFsc2UgZ290IHRydWUKLUZBSUwgZXhwb3J0IGk2NC1yZXR1cm5pbmcgZnVuY3Rp
b246IE1vZHVsZSBhcmd1bWVudCBhc3NlcnRfZmFsc2U6IGZuOiB3cml0YWJsZSBleHBlY3RlZCBm
YWxzZSBnb3QgdHJ1ZQotRkFJTCBpMzIgbXV0YWJsZSBXZWJBc3NlbWJseS5HbG9iYWwgaW1wb3J0
OiBCdWZmZXJTb3VyY2UgYXJndW1lbnQgYXNzZXJ0X2ZhbHNlOiBmbjogd3JpdGFibGUgZXhwZWN0
ZWQgZmFsc2UgZ290IHRydWUKLUZBSUwgaTMyIG11dGFibGUgV2ViQXNzZW1ibHkuR2xvYmFsIGlt
cG9ydDogTW9kdWxlIGFyZ3VtZW50IGFzc2VydF9mYWxzZTogZm46IHdyaXRhYmxlIGV4cGVjdGVk
IGZhbHNlIGdvdCB0cnVlCitQQVNTIGltcG9ydCB3aXRoIGkzMi1yZXR1cm5pbmcgZnVuY3Rpb246
IEJ1ZmZlclNvdXJjZSBhcmd1bWVudAorUEFTUyBpbXBvcnQgd2l0aCBpMzItcmV0dXJuaW5nIGZ1
bmN0aW9uOiBNb2R1bGUgYXJndW1lbnQKK1BBU1MgaW1wb3J0IHdpdGggZnVuY3Rpb24gdGhhdCB0
YWtlcyBhbmQgcmV0dXJucyBpMzI6IEJ1ZmZlclNvdXJjZSBhcmd1bWVudAorUEFTUyBpbXBvcnQg
d2l0aCBmdW5jdGlvbiB0aGF0IHRha2VzIGFuZCByZXR1cm5zIGkzMjogTW9kdWxlIGFyZ3VtZW50
CitGQUlMIGltcG9ydCB3aXRoIGk2NC1yZXR1cm5pbmcgZnVuY3Rpb246IEJ1ZmZlclNvdXJjZSBh
cmd1bWVudCBhc3NlcnRfdHJ1ZTogU2hvdWxkIGhhdmUgY2FsbGVkIGludG8gSlMgZXhwZWN0ZWQg
dHJ1ZSBnb3QgZmFsc2UKK0ZBSUwgaW1wb3J0IHdpdGggaTY0LXJldHVybmluZyBmdW5jdGlvbjog
TW9kdWxlIGFyZ3VtZW50IGFzc2VydF90cnVlOiBTaG91bGQgaGF2ZSBjYWxsZWQgaW50byBKUyBl
eHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorRkFJTCBpbXBvcnQgd2l0aCBmdW5jdGlvbiB0aGF0IHRh
a2VzIGFuZCByZXR1cm5zIGk2NDogQnVmZmVyU291cmNlIGFyZ3VtZW50IHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlJ1bnRpbWVFcnJvcjogV2Vi
QXNzZW1ibHkgZnVuY3Rpb24gdGhhdCByZXR1cm5zIGk2NCBjYW4ndCBiZSBjYWxsZWQgZnJvbSBK
YXZhU2NyaXB0IChldmFsdWF0aW5nICdpbnN0YW5jZS5leHBvcnRzLmZuMigpJykiCitGQUlMIGlt
cG9ydCB3aXRoIGZ1bmN0aW9uIHRoYXQgdGFrZXMgYW5kIHJldHVybnMgaTY0OiBNb2R1bGUgYXJn
dW1lbnQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiUnVudGltZUVycm9yOiBXZWJBc3NlbWJseSBmdW5jdGlvbiB0aGF0IHJldHVybnMgaTY0IGNh
bid0IGJlIGNhbGxlZCBmcm9tIEphdmFTY3JpcHQgKGV2YWx1YXRpbmcgJ2luc3RhbmNlLmV4cG9y
dHMuZm4yKCknKSIKK1BBU1MgaW1wb3J0IHdpdGggaTMyLXRha2luZyBmdW5jdGlvbjogQnVmZmVy
U291cmNlIGFyZ3VtZW50CitQQVNTIGltcG9ydCB3aXRoIGkzMi10YWtpbmcgZnVuY3Rpb246IE1v
ZHVsZSBhcmd1bWVudAorRkFJTCBpbXBvcnQgd2l0aCBpNjQtdGFraW5nIGZ1bmN0aW9uOiBCdWZm
ZXJTb3VyY2UgYXJndW1lbnQgYXNzZXJ0X3Rocm93c19qczogZnVuY3Rpb24gIigpID0+IGluc3Rh
bmNlLmV4cG9ydHMuZm4oNikiIHRocmV3IG9iamVjdCAiUnVudGltZUVycm9yOiBXZWJBc3NlbWJs
eSBmdW5jdGlvbiB3aXRoIGFuIGk2NCBhcmd1bWVudCBjYW4ndCBiZSBjYWxsZWQgZnJvbSBKYXZh
U2NyaXB0IChldmFsdWF0aW5nICdpbnN0YW5jZS5leHBvcnRzLmZuKDYpJykiICgiUnVudGltZUVy
cm9yIikgZXhwZWN0ZWQgaW5zdGFuY2Ugb2YgZnVuY3Rpb24gImZ1bmN0aW9uIFR5cGVFcnJvcigp
IHsKKyAgICBbbmF0aXZlIGNvZGVdCit9IiAoIlR5cGVFcnJvciIpCitGQUlMIGltcG9ydCB3aXRo
IGk2NC10YWtpbmcgZnVuY3Rpb246IE1vZHVsZSBhcmd1bWVudCBhc3NlcnRfdGhyb3dzX2pzOiBm
dW5jdGlvbiAiKCkgPT4gaW5zdGFuY2UuZXhwb3J0cy5mbig2KSIgdGhyZXcgb2JqZWN0ICJSdW50
aW1lRXJyb3I6IFdlYkFzc2VtYmx5IGZ1bmN0aW9uIHdpdGggYW4gaTY0IGFyZ3VtZW50IGNhbid0
IGJlIGNhbGxlZCBmcm9tIEphdmFTY3JpcHQgKGV2YWx1YXRpbmcgJ2luc3RhbmNlLmV4cG9ydHMu
Zm4oNiknKSIgKCJSdW50aW1lRXJyb3IiKSBleHBlY3RlZCBpbnN0YW5jZSBvZiBmdW5jdGlvbiAi
ZnVuY3Rpb24gVHlwZUVycm9yKCkgeworICAgIFtuYXRpdmUgY29kZV0KK30iICgiVHlwZUVycm9y
IikKK0ZBSUwgZXhwb3J0IGk2NC1yZXR1cm5pbmcgZnVuY3Rpb246IEJ1ZmZlclNvdXJjZSBhcmd1
bWVudCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJSdW50aW1lRXJyb3I6IFdlYkFzc2VtYmx5IGZ1bmN0aW9uIHRoYXQgcmV0dXJucyBpNjQgY2Fu
J3QgYmUgY2FsbGVkIGZyb20gSmF2YVNjcmlwdCAoZXZhbHVhdGluZyAnaW5zdGFuY2UuZXhwb3J0
cy5mbigpJykiCitGQUlMIGV4cG9ydCBpNjQtcmV0dXJuaW5nIGZ1bmN0aW9uOiBNb2R1bGUgYXJn
dW1lbnQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiUnVudGltZUVycm9yOiBXZWJBc3NlbWJseSBmdW5jdGlvbiB0aGF0IHJldHVybnMgaTY0IGNh
bid0IGJlIGNhbGxlZCBmcm9tIEphdmFTY3JpcHQgKGV2YWx1YXRpbmcgJ2luc3RhbmNlLmV4cG9y
dHMuZm4oKScpIgorUEFTUyBpMzIgbXV0YWJsZSBXZWJBc3NlbWJseS5HbG9iYWwgaW1wb3J0OiBC
dWZmZXJTb3VyY2UgYXJndW1lbnQKK1BBU1MgaTMyIG11dGFibGUgV2ViQXNzZW1ibHkuR2xvYmFs
IGltcG9ydDogTW9kdWxlIGFyZ3VtZW50CiBGQUlMIGk2NCBtdXRhYmxlIFdlYkFzc2VtYmx5Lkds
b2JhbCBpbXBvcnQ6IEJ1ZmZlclNvdXJjZSBhcmd1bWVudCBXZWJBc3NlbWJseS5HbG9iYWwgZG9l
cyBub3QgYWNjZXB0IGk2NCBpbml0aWFsIHZhbHVlCiBGQUlMIGk2NCBtdXRhYmxlIFdlYkFzc2Vt
Ymx5Lkdsb2JhbCBpbXBvcnQ6IE1vZHVsZSBhcmd1bWVudCBXZWJBc3NlbWJseS5HbG9iYWwgZG9l
cyBub3QgYWNjZXB0IGk2NCBpbml0aWFsIHZhbHVlCi1GQUlMIE11bHRpcGxlIGk2NCBhcmd1bWVu
dHM6IEJ1ZmZlclNvdXJjZSBhcmd1bWVudCBhc3NlcnRfZmFsc2U6IGZuOiB3cml0YWJsZSBleHBl
Y3RlZCBmYWxzZSBnb3QgdHJ1ZQotRkFJTCBNdWx0aXBsZSBpNjQgYXJndW1lbnRzOiBNb2R1bGUg
YXJndW1lbnQgYXNzZXJ0X2ZhbHNlOiBmbjogd3JpdGFibGUgZXhwZWN0ZWQgZmFsc2UgZ290IHRy
dWUKK0ZBSUwgTXVsdGlwbGUgaTY0IGFyZ3VtZW50czogQnVmZmVyU291cmNlIGFyZ3VtZW50IHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlJ1bnRp
bWVFcnJvcjogV2ViQXNzZW1ibHkgZnVuY3Rpb24gd2l0aCBhbiBpNjQgYXJndW1lbnQgY2FuJ3Qg
YmUgY2FsbGVkIGZyb20gSmF2YVNjcmlwdCAoZXZhbHVhdGluZyAnZm4oMW4sIDBuKScpIgorRkFJ
TCBNdWx0aXBsZSBpNjQgYXJndW1lbnRzOiBNb2R1bGUgYXJndW1lbnQgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiUnVudGltZUVycm9yOiBXZWJB
c3NlbWJseSBmdW5jdGlvbiB3aXRoIGFuIGk2NCBhcmd1bWVudCBjYW4ndCBiZSBjYWxsZWQgZnJv
bSBKYXZhU2NyaXB0IChldmFsdWF0aW5nICdmbigxbiwgMG4pJykiCiBQQVNTIHN0cmF5IGFyZ3Vt
ZW50OiBCdWZmZXJTb3VyY2UgYXJndW1lbnQKIFBBU1Mgc3RyYXkgYXJndW1lbnQ6IE1vZHVsZSBh
cmd1bWVudAogUEFTUyBTeW5jaHJvbm91cyBvcHRpb25zIGhhbmRsaW5nOiBCdWZmZXIgYXJndW1l
bnQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvd2FzbS9qc2FwaS9pbnN0YW5jZS9jb25zdHJ1Y3Rvci5hbnktZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93YXNtL2pzYXBpL2luc3Rh
bmNlL2NvbnN0cnVjdG9yLmFueS1leHBlY3RlZC50eHQKaW5kZXggMTllOWM4MGFjY2Q4MzQ0ZjQ2
ZjYxYmQ3MDY5Yzc4NDllNjkzM2RkOC4uZDkzN2QwZWQzNmI2N2VjNTRhZGJiMzFjOTk0ZjBlZGEz
YjRkN2NhMCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy93YXNtL2pzYXBpL2luc3RhbmNlL2NvbnN0cnVjdG9yLmFueS1leHBlY3RlZC50eHQK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93YXNtL2pz
YXBpL2luc3RhbmNlL2NvbnN0cnVjdG9yLmFueS1leHBlY3RlZC50eHQKQEAgLTksMTggKzksMjAg
QEAgUEFTUyBFbXB0eSBtb2R1bGUgd2l0aCB1bmRlZmluZWQgaW1wb3J0cyBhcmd1bWVudAogUEFT
UyBFbXB0eSBtb2R1bGUgd2l0aCBlbXB0eSBpbXBvcnRzIGFyZ3VtZW50CiBGQUlMIGdldHRlciBv
cmRlciBmb3IgaW1wb3J0cyBvYmplY3QgYXNzZXJ0X2FycmF5X2VxdWFsczogZXhwZWN0ZWQgcHJv
cGVydHkgMSB0byBiZSAiZ2xvYmFsMSBnZXR0ZXIiIGJ1dCBnb3QgIm1lbW9yeSBnZXR0ZXIiIChl
eHBlY3RlZCBhcnJheSBbIm1vZHVsZSBnZXR0ZXIiLCAiZ2xvYmFsMSBnZXR0ZXIiLCAibW9kdWxl
MiBnZXR0ZXIiLCAiZ2xvYmFsMyBnZXR0ZXIiLCAibW9kdWxlIGdldHRlciIsICJtZW1vcnkgZ2V0
dGVyIiwgIm1vZHVsZSBnZXR0ZXIiLCAiZ2xvYmFsMiBnZXR0ZXIiXSBnb3QgWyJtb2R1bGUgZ2V0
dGVyIiwgIm1lbW9yeSBnZXR0ZXIiLCAibW9kdWxlIGdldHRlciIsICJnbG9iYWwxIGdldHRlciIs
ICJtb2R1bGUyIGdldHRlciIsICJnbG9iYWwzIGdldHRlciIsICJtb2R1bGUgZ2V0dGVyIiwgImds
b2JhbDIgZ2V0dGVyIl0pCiBQQVNTIGltcG9ydHMKLUZBSUwgTm8gaW1wb3J0cyBhc3NlcnRfYXJy
YXlfZXF1YWxzOiBtYXRjaGluZyBleHBvcnQga2V5cyBleHBlY3RlZCBwcm9wZXJ0eSAyIHRvIGJl
ICJ0YWJsZSIgYnV0IGdvdCAiZ2xvYmFsIiAoZXhwZWN0ZWQgYXJyYXkgWyJmbiIsICJmbjIiLCAi
dGFibGUiLCAiZ2xvYmFsIiwgImdsb2JhbDIiLCAibWVtb3J5Il0gZ290IFsiZm4iLCAiZm4yIiwg
Imdsb2JhbCIsICJnbG9iYWwyIiwgIm1lbW9yeSIsICJ0YWJsZSJdKQotRkFJTCBleHBvcnRzIGFu
ZCBpbXBvcnRzIGFzc2VydF9mYWxzZTogZm46IHdyaXRhYmxlIGV4cGVjdGVkIGZhbHNlIGdvdCB0
cnVlCitQQVNTIE5vIGltcG9ydHMKK1BBU1MgZXhwb3J0cyBhbmQgaW1wb3J0cwogRkFJTCBpNjQg
ZXhwb3J0cyBhbmQgaW1wb3J0cyBpbXBvcnRlZCBnbG9iYWwgbW9kdWxlOmdsb2JhbCBjYW5ub3Qg
YmUgYW4gaTY0IChldmFsdWF0aW5nICduZXcgV2ViQXNzZW1ibHkuSW5zdGFuY2UobW9kdWxlLCAu
Li5hcmdzKScpCi1GQUlMIGltcG9ydCB3aXRoIGkzMi1yZXR1cm5pbmcgZnVuY3Rpb24gYXNzZXJ0
X2ZhbHNlOiBmbjI6IHdyaXRhYmxlIGV4cGVjdGVkIGZhbHNlIGdvdCB0cnVlCi1GQUlMIGltcG9y
dCB3aXRoIGZ1bmN0aW9uIHRoYXQgdGFrZXMgYW5kIHJldHVybnMgaTMyIGFzc2VydF9mYWxzZTog
Zm4yOiB3cml0YWJsZSBleHBlY3RlZCBmYWxzZSBnb3QgdHJ1ZQotRkFJTCBpbXBvcnQgd2l0aCBp
NjQtcmV0dXJuaW5nIGZ1bmN0aW9uIGFzc2VydF9mYWxzZTogZm4yOiB3cml0YWJsZSBleHBlY3Rl
ZCBmYWxzZSBnb3QgdHJ1ZQotRkFJTCBpbXBvcnQgd2l0aCBmdW5jdGlvbiB0aGF0IHRha2VzIGFu
ZCByZXR1cm5zIGk2NCBhc3NlcnRfZmFsc2U6IGZuMjogd3JpdGFibGUgZXhwZWN0ZWQgZmFsc2Ug
Z290IHRydWUKLUZBSUwgaW1wb3J0IHdpdGggaTMyLXRha2luZyBmdW5jdGlvbiBhc3NlcnRfZmFs
c2U6IGZuOiB3cml0YWJsZSBleHBlY3RlZCBmYWxzZSBnb3QgdHJ1ZQotRkFJTCBpbXBvcnQgd2l0
aCBpNjQtdGFraW5nIGZ1bmN0aW9uIGFzc2VydF9mYWxzZTogZm46IHdyaXRhYmxlIGV4cGVjdGVk
IGZhbHNlIGdvdCB0cnVlCi1GQUlMIGV4cG9ydCBpNjQtcmV0dXJuaW5nIGZ1bmN0aW9uIGFzc2Vy
dF9mYWxzZTogZm46IHdyaXRhYmxlIGV4cGVjdGVkIGZhbHNlIGdvdCB0cnVlCi1GQUlMIGkzMiBt
dXRhYmxlIFdlYkFzc2VtYmx5Lkdsb2JhbCBpbXBvcnQgYXNzZXJ0X2ZhbHNlOiBmbjogd3JpdGFi
bGUgZXhwZWN0ZWQgZmFsc2UgZ290IHRydWUKK1BBU1MgaW1wb3J0IHdpdGggaTMyLXJldHVybmlu
ZyBmdW5jdGlvbgorUEFTUyBpbXBvcnQgd2l0aCBmdW5jdGlvbiB0aGF0IHRha2VzIGFuZCByZXR1
cm5zIGkzMgorRkFJTCBpbXBvcnQgd2l0aCBpNjQtcmV0dXJuaW5nIGZ1bmN0aW9uIGFzc2VydF90
cnVlOiBTaG91bGQgaGF2ZSBjYWxsZWQgaW50byBKUyBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQor
RkFJTCBpbXBvcnQgd2l0aCBmdW5jdGlvbiB0aGF0IHRha2VzIGFuZCByZXR1cm5zIGk2NCBXZWJB
c3NlbWJseSBmdW5jdGlvbiB0aGF0IHJldHVybnMgaTY0IGNhbid0IGJlIGNhbGxlZCBmcm9tIEph
dmFTY3JpcHQgKGV2YWx1YXRpbmcgJ2luc3RhbmNlLmV4cG9ydHMuZm4yKCknKQorUEFTUyBpbXBv
cnQgd2l0aCBpMzItdGFraW5nIGZ1bmN0aW9uCitGQUlMIGltcG9ydCB3aXRoIGk2NC10YWtpbmcg
ZnVuY3Rpb24gYXNzZXJ0X3Rocm93c19qczogZnVuY3Rpb24gIigpID0+IGluc3RhbmNlLmV4cG9y
dHMuZm4oNikiIHRocmV3IG9iamVjdCAiUnVudGltZUVycm9yOiBXZWJBc3NlbWJseSBmdW5jdGlv
biB3aXRoIGFuIGk2NCBhcmd1bWVudCBjYW4ndCBiZSBjYWxsZWQgZnJvbSBKYXZhU2NyaXB0IChl
dmFsdWF0aW5nICdpbnN0YW5jZS5leHBvcnRzLmZuKDYpJykiICgiUnVudGltZUVycm9yIikgZXhw
ZWN0ZWQgaW5zdGFuY2Ugb2YgZnVuY3Rpb24gImZ1bmN0aW9uIFR5cGVFcnJvcigpIHsKKyAgICBb
bmF0aXZlIGNvZGVdCit9IiAoIlR5cGVFcnJvciIpCitGQUlMIGV4cG9ydCBpNjQtcmV0dXJuaW5n
IGZ1bmN0aW9uIFdlYkFzc2VtYmx5IGZ1bmN0aW9uIHRoYXQgcmV0dXJucyBpNjQgY2FuJ3QgYmUg
Y2FsbGVkIGZyb20gSmF2YVNjcmlwdCAoZXZhbHVhdGluZyAnaW5zdGFuY2UuZXhwb3J0cy5mbigp
JykKK1BBU1MgaTMyIG11dGFibGUgV2ViQXNzZW1ibHkuR2xvYmFsIGltcG9ydAogRkFJTCBpNjQg
bXV0YWJsZSBXZWJBc3NlbWJseS5HbG9iYWwgaW1wb3J0IFdlYkFzc2VtYmx5Lkdsb2JhbCBkb2Vz
IG5vdCBhY2NlcHQgaTY0IGluaXRpYWwgdmFsdWUKLUZBSUwgTXVsdGlwbGUgaTY0IGFyZ3VtZW50
cyBhc3NlcnRfZmFsc2U6IGZuOiB3cml0YWJsZSBleHBlY3RlZCBmYWxzZSBnb3QgdHJ1ZQorRkFJ
TCBNdWx0aXBsZSBpNjQgYXJndW1lbnRzIFdlYkFzc2VtYmx5IGZ1bmN0aW9uIHdpdGggYW4gaTY0
IGFyZ3VtZW50IGNhbid0IGJlIGNhbGxlZCBmcm9tIEphdmFTY3JpcHQgKGV2YWx1YXRpbmcgJ2Zu
KDFuLCAwbiknKQogUEFTUyBzdHJheSBhcmd1bWVudAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dhc20vanNhcGkvaW5zdGFuY2UvY29u
c3RydWN0b3IuYW55Lndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dhc20vanNhcGkvaW5zdGFuY2UvY29uc3RydWN0b3IuYW55
Lndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggMTllOWM4MGFjY2Q4MzQ0ZjQ2ZjYxYmQ3MDY5Yzc4
NDllNjkzM2RkOC4uZDkzN2QwZWQzNmI2N2VjNTRhZGJiMzFjOTk0ZjBlZGEzYjRkN2NhMCAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93YXNt
L2pzYXBpL2luc3RhbmNlL2NvbnN0cnVjdG9yLmFueS53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2FzbS9qc2FwaS9p
bnN0YW5jZS9jb25zdHJ1Y3Rvci5hbnkud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtOSwxOCArOSwy
MCBAQCBQQVNTIEVtcHR5IG1vZHVsZSB3aXRoIHVuZGVmaW5lZCBpbXBvcnRzIGFyZ3VtZW50CiBQ
QVNTIEVtcHR5IG1vZHVsZSB3aXRoIGVtcHR5IGltcG9ydHMgYXJndW1lbnQKIEZBSUwgZ2V0dGVy
IG9yZGVyIGZvciBpbXBvcnRzIG9iamVjdCBhc3NlcnRfYXJyYXlfZXF1YWxzOiBleHBlY3RlZCBw
cm9wZXJ0eSAxIHRvIGJlICJnbG9iYWwxIGdldHRlciIgYnV0IGdvdCAibWVtb3J5IGdldHRlciIg
KGV4cGVjdGVkIGFycmF5IFsibW9kdWxlIGdldHRlciIsICJnbG9iYWwxIGdldHRlciIsICJtb2R1
bGUyIGdldHRlciIsICJnbG9iYWwzIGdldHRlciIsICJtb2R1bGUgZ2V0dGVyIiwgIm1lbW9yeSBn
ZXR0ZXIiLCAibW9kdWxlIGdldHRlciIsICJnbG9iYWwyIGdldHRlciJdIGdvdCBbIm1vZHVsZSBn
ZXR0ZXIiLCAibWVtb3J5IGdldHRlciIsICJtb2R1bGUgZ2V0dGVyIiwgImdsb2JhbDEgZ2V0dGVy
IiwgIm1vZHVsZTIgZ2V0dGVyIiwgImdsb2JhbDMgZ2V0dGVyIiwgIm1vZHVsZSBnZXR0ZXIiLCAi
Z2xvYmFsMiBnZXR0ZXIiXSkKIFBBU1MgaW1wb3J0cwotRkFJTCBObyBpbXBvcnRzIGFzc2VydF9h
cnJheV9lcXVhbHM6IG1hdGNoaW5nIGV4cG9ydCBrZXlzIGV4cGVjdGVkIHByb3BlcnR5IDIgdG8g
YmUgInRhYmxlIiBidXQgZ290ICJnbG9iYWwiIChleHBlY3RlZCBhcnJheSBbImZuIiwgImZuMiIs
ICJ0YWJsZSIsICJnbG9iYWwiLCAiZ2xvYmFsMiIsICJtZW1vcnkiXSBnb3QgWyJmbiIsICJmbjIi
LCAiZ2xvYmFsIiwgImdsb2JhbDIiLCAibWVtb3J5IiwgInRhYmxlIl0pCi1GQUlMIGV4cG9ydHMg
YW5kIGltcG9ydHMgYXNzZXJ0X2ZhbHNlOiBmbjogd3JpdGFibGUgZXhwZWN0ZWQgZmFsc2UgZ290
IHRydWUKK1BBU1MgTm8gaW1wb3J0cworUEFTUyBleHBvcnRzIGFuZCBpbXBvcnRzCiBGQUlMIGk2
NCBleHBvcnRzIGFuZCBpbXBvcnRzIGltcG9ydGVkIGdsb2JhbCBtb2R1bGU6Z2xvYmFsIGNhbm5v
dCBiZSBhbiBpNjQgKGV2YWx1YXRpbmcgJ25ldyBXZWJBc3NlbWJseS5JbnN0YW5jZShtb2R1bGUs
IC4uLmFyZ3MpJykKLUZBSUwgaW1wb3J0IHdpdGggaTMyLXJldHVybmluZyBmdW5jdGlvbiBhc3Nl
cnRfZmFsc2U6IGZuMjogd3JpdGFibGUgZXhwZWN0ZWQgZmFsc2UgZ290IHRydWUKLUZBSUwgaW1w
b3J0IHdpdGggZnVuY3Rpb24gdGhhdCB0YWtlcyBhbmQgcmV0dXJucyBpMzIgYXNzZXJ0X2ZhbHNl
OiBmbjI6IHdyaXRhYmxlIGV4cGVjdGVkIGZhbHNlIGdvdCB0cnVlCi1GQUlMIGltcG9ydCB3aXRo
IGk2NC1yZXR1cm5pbmcgZnVuY3Rpb24gYXNzZXJ0X2ZhbHNlOiBmbjI6IHdyaXRhYmxlIGV4cGVj
dGVkIGZhbHNlIGdvdCB0cnVlCi1GQUlMIGltcG9ydCB3aXRoIGZ1bmN0aW9uIHRoYXQgdGFrZXMg
YW5kIHJldHVybnMgaTY0IGFzc2VydF9mYWxzZTogZm4yOiB3cml0YWJsZSBleHBlY3RlZCBmYWxz
ZSBnb3QgdHJ1ZQotRkFJTCBpbXBvcnQgd2l0aCBpMzItdGFraW5nIGZ1bmN0aW9uIGFzc2VydF9m
YWxzZTogZm46IHdyaXRhYmxlIGV4cGVjdGVkIGZhbHNlIGdvdCB0cnVlCi1GQUlMIGltcG9ydCB3
aXRoIGk2NC10YWtpbmcgZnVuY3Rpb24gYXNzZXJ0X2ZhbHNlOiBmbjogd3JpdGFibGUgZXhwZWN0
ZWQgZmFsc2UgZ290IHRydWUKLUZBSUwgZXhwb3J0IGk2NC1yZXR1cm5pbmcgZnVuY3Rpb24gYXNz
ZXJ0X2ZhbHNlOiBmbjogd3JpdGFibGUgZXhwZWN0ZWQgZmFsc2UgZ290IHRydWUKLUZBSUwgaTMy
IG11dGFibGUgV2ViQXNzZW1ibHkuR2xvYmFsIGltcG9ydCBhc3NlcnRfZmFsc2U6IGZuOiB3cml0
YWJsZSBleHBlY3RlZCBmYWxzZSBnb3QgdHJ1ZQorUEFTUyBpbXBvcnQgd2l0aCBpMzItcmV0dXJu
aW5nIGZ1bmN0aW9uCitQQVNTIGltcG9ydCB3aXRoIGZ1bmN0aW9uIHRoYXQgdGFrZXMgYW5kIHJl
dHVybnMgaTMyCitGQUlMIGltcG9ydCB3aXRoIGk2NC1yZXR1cm5pbmcgZnVuY3Rpb24gYXNzZXJ0
X3RydWU6IFNob3VsZCBoYXZlIGNhbGxlZCBpbnRvIEpTIGV4cGVjdGVkIHRydWUgZ290IGZhbHNl
CitGQUlMIGltcG9ydCB3aXRoIGZ1bmN0aW9uIHRoYXQgdGFrZXMgYW5kIHJldHVybnMgaTY0IFdl
YkFzc2VtYmx5IGZ1bmN0aW9uIHRoYXQgcmV0dXJucyBpNjQgY2FuJ3QgYmUgY2FsbGVkIGZyb20g
SmF2YVNjcmlwdCAoZXZhbHVhdGluZyAnaW5zdGFuY2UuZXhwb3J0cy5mbjIoKScpCitQQVNTIGlt
cG9ydCB3aXRoIGkzMi10YWtpbmcgZnVuY3Rpb24KK0ZBSUwgaW1wb3J0IHdpdGggaTY0LXRha2lu
ZyBmdW5jdGlvbiBhc3NlcnRfdGhyb3dzX2pzOiBmdW5jdGlvbiAiKCkgPT4gaW5zdGFuY2UuZXhw
b3J0cy5mbig2KSIgdGhyZXcgb2JqZWN0ICJSdW50aW1lRXJyb3I6IFdlYkFzc2VtYmx5IGZ1bmN0
aW9uIHdpdGggYW4gaTY0IGFyZ3VtZW50IGNhbid0IGJlIGNhbGxlZCBmcm9tIEphdmFTY3JpcHQg
KGV2YWx1YXRpbmcgJ2luc3RhbmNlLmV4cG9ydHMuZm4oNiknKSIgKCJSdW50aW1lRXJyb3IiKSBl
eHBlY3RlZCBpbnN0YW5jZSBvZiBmdW5jdGlvbiAiZnVuY3Rpb24gVHlwZUVycm9yKCkgeworICAg
IFtuYXRpdmUgY29kZV0KK30iICgiVHlwZUVycm9yIikKK0ZBSUwgZXhwb3J0IGk2NC1yZXR1cm5p
bmcgZnVuY3Rpb24gV2ViQXNzZW1ibHkgZnVuY3Rpb24gdGhhdCByZXR1cm5zIGk2NCBjYW4ndCBi
ZSBjYWxsZWQgZnJvbSBKYXZhU2NyaXB0IChldmFsdWF0aW5nICdpbnN0YW5jZS5leHBvcnRzLmZu
KCknKQorUEFTUyBpMzIgbXV0YWJsZSBXZWJBc3NlbWJseS5HbG9iYWwgaW1wb3J0CiBGQUlMIGk2
NCBtdXRhYmxlIFdlYkFzc2VtYmx5Lkdsb2JhbCBpbXBvcnQgV2ViQXNzZW1ibHkuR2xvYmFsIGRv
ZXMgbm90IGFjY2VwdCBpNjQgaW5pdGlhbCB2YWx1ZQotRkFJTCBNdWx0aXBsZSBpNjQgYXJndW1l
bnRzIGFzc2VydF9mYWxzZTogZm46IHdyaXRhYmxlIGV4cGVjdGVkIGZhbHNlIGdvdCB0cnVlCitG
QUlMIE11bHRpcGxlIGk2NCBhcmd1bWVudHMgV2ViQXNzZW1ibHkgZnVuY3Rpb24gd2l0aCBhbiBp
NjQgYXJndW1lbnQgY2FuJ3QgYmUgY2FsbGVkIGZyb20gSmF2YVNjcmlwdCAoZXZhbHVhdGluZyAn
Zm4oMW4sIDBuKScpCiBQQVNTIHN0cmF5IGFyZ3VtZW50CiAKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2FzbS9qc2FwaS90YWJsZS9ncm93
LXJlZnR5cGVzLnRlbnRhdGl2ZS5hbnktZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93YXNtL2pzYXBpL3RhYmxlL2dyb3ctcmVmdHlwZXMu
dGVudGF0aXZlLmFueS1leHBlY3RlZC50eHQKaW5kZXggZDY3ZmQ5M2IxOGEwYjZhNWRkMDMyZWEw
OGVkNGY1NGY4ZjkwYzY2Yi4uYjllOWYzNzIzYWFiYzNhMDQ2OTIyNDdiNTVjNjhkMjA3NGM0NGM0
ZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy93YXNtL2pzYXBpL3RhYmxlL2dyb3ctcmVmdHlwZXMudGVudGF0aXZlLmFueS1leHBlY3RlZC50
eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93YXNt
L2pzYXBpL3RhYmxlL2dyb3ctcmVmdHlwZXMudGVudGF0aXZlLmFueS1leHBlY3RlZC50eHQKQEAg
LTEsNSArMSw1IEBACiAKLUZBSUwgR3JvdyB3aXRoIGV4cG9ydGVkLWZ1bmN0aW9uIGFyZ3VtZW50
IGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIChmdW5jdGlvbikgZnVuY3Rpb24gImZ1bmN0aW9uIGZu
KCkgeworRkFJTCBHcm93IHdpdGggZXhwb3J0ZWQtZnVuY3Rpb24gYXJndW1lbnQgYXNzZXJ0X2Vx
dWFsczogZXhwZWN0ZWQgKGZ1bmN0aW9uKSBmdW5jdGlvbiAiZnVuY3Rpb24gMCgpIHsKICAgICBb
bmF0aXZlIGNvZGVdCiB9IiBidXQgZ290IChvYmplY3QpIG51bGwKIEZBSUwgR3JvdyB3aXRoIG5v
bi1mdW5jdGlvbiBhcmd1bWVudCBhc3NlcnRfdGhyb3dzX2pzOiBmdW5jdGlvbiAiKCkgPT4gdGFi
bGUuZ3JvdygyLCB7fSkiIGRpZCBub3QgdGhyb3cKZGlmZiAtLWdpdCBhL0pTVGVzdHMvQ2hhbmdl
TG9nIGIvSlNUZXN0cy9DaGFuZ2VMb2cKaW5kZXggYTc5MjllNDBhZmZiNDU0ZjdmMmM3MDQ0YzA5
ZDNlYjhjYTJlYmVlMi4uMTc1MzZmMGQ0NzZhNDkxNTdkZWFkZjA3YzY5NDdlMmMxZTZjYzFiNiAx
MDA2NDQKLS0tIGEvSlNUZXN0cy9DaGFuZ2VMb2cKKysrIGIvSlNUZXN0cy9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwyMCBAQAorMjAyMC0xMi0yOSAgWXVzdWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUu
Y29tPgorCisgICAgICAgIFtKU0NdIFVwZGF0ZSBXZWJBc3NlbWJseSBpbnN0YW5jZSdzIGV4cG9y
dHMgb2JqZWN0CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0yMjAxODkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICAqIHN0cmVzcy9zYW1wbGluZy1wcm9maWxlci13YXNtLW5hbWUtc2VjdGlvbi5qczoKKyAgICAg
ICAgKHBsYXRmb3JtU3VwcG9ydHNTYW1wbGluZ1Byb2ZpbGVyLnZtLmlzV2FzbVN1cHBvcnRlZCk6
CisgICAgICAgICogc3RyZXNzL3NhbXBsaW5nLXByb2ZpbGVyLXdhc20uanM6CisgICAgICAgIChw
bGF0Zm9ybVN1cHBvcnRzU2FtcGxpbmdQcm9maWxlci52bS5pc1dhc21TdXBwb3J0ZWQpOgorICAg
ICAgICAqIHdhc20vanMtYXBpL3Rlc3RfYmFzaWNfYXBpLmpzOgorICAgICAgICAoY29uc3QuYy5p
bi5jb25zdHJ1Y3RvclByb3BlcnRpZXMuc3dpdGNoKToKKyAgICAgICAgKiB3YXNtL3N0cmVzcy9l
eHBvcnRzLW9iamVjdC5qczogQWRkZWQuCisgICAgICAgIChhc3luYyB0cnkpOgorICAgICAgICAo
Y2F0Y2gpOgorCiAyMDIwLTEyLTI3ICBEbWl0cnkgQmV6aGV0c2tvdiAgPGRiZXpoZXRza292QGln
YWxpYS5jb20+CiAKICAgICAgICAgW1dBU00tUmVmZXJlbmNlc10gRml4IHRhYmxlLmluaXQgYW5k
IHRhYmxlLmdyb3cgdG8gc2F0aXNmeSB0aGUgc3BlYwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy9zdHJl
c3Mvc2FtcGxpbmctcHJvZmlsZXItd2FzbS1uYW1lLXNlY3Rpb24uanMgYi9KU1Rlc3RzL3N0cmVz
cy9zYW1wbGluZy1wcm9maWxlci13YXNtLW5hbWUtc2VjdGlvbi5qcwppbmRleCA1MmQ0NWUwNDcx
MWJlY2U1YmU2YzBlYTk0ZjVkMGVkNDgzNDMxMDViLi42ODlhMDA1YWI1NTVhMWZjNjAxYTU0ZTRl
YmY5NGU5OWE2NjhmNzdlIDEwMDY0NAotLS0gYS9KU1Rlc3RzL3N0cmVzcy9zYW1wbGluZy1wcm9m
aWxlci13YXNtLW5hbWUtc2VjdGlvbi5qcworKysgYi9KU1Rlc3RzL3N0cmVzcy9zYW1wbGluZy1w
cm9maWxlci13YXNtLW5hbWUtc2VjdGlvbi5qcwpAQCAtNjksNSArNjksNSBAQAogICAgIHZhciB3
YXNtRW50cnkgPSBmdW5jdGlvbigpIHsKICAgICAgICAgcmV0dXJuIGluc3RhbmNlLmV4cG9ydHMu
X3BhcnJvdCgxKTsKICAgICB9OwotICAgIHJ1blRlc3Qod2FzbUVudHJ5LCBbIl9zaWxseSIsICIo
dW5rbm93bikiLCAiPD8+Lndhc20tZnVuY3Rpb25bX2VnZ3NdIiwgIjw/Pi53YXNtLWZ1bmN0aW9u
W19iYWNvbl0iLCAiPD8+Lndhc20tZnVuY3Rpb25bX3NwYW1dIiwgIjw/Pi53YXNtLWZ1bmN0aW9u
W19wYXJyb3RdIiwgIndhc20tc3R1YiIsICJfcGFycm90IiwgIndhc21FbnRyeSJdKTsKKyAgICBy
dW5UZXN0KHdhc21FbnRyeSwgWyJfc2lsbHkiLCAiKHVua25vd24pIiwgIjw/Pi53YXNtLWZ1bmN0
aW9uW19lZ2dzXSIsICI8Pz4ud2FzbS1mdW5jdGlvbltfYmFjb25dIiwgIjw/Pi53YXNtLWZ1bmN0
aW9uW19zcGFtXSIsICI8Pz4ud2FzbS1mdW5jdGlvbltfcGFycm90XSIsICJ3YXNtLXN0dWIiLCAi
MjQiLCAid2FzbUVudHJ5Il0pOwogfQpkaWZmIC0tZ2l0IGEvSlNUZXN0cy9zdHJlc3Mvc2FtcGxp
bmctcHJvZmlsZXItd2FzbS5qcyBiL0pTVGVzdHMvc3RyZXNzL3NhbXBsaW5nLXByb2ZpbGVyLXdh
c20uanMKaW5kZXggOWY4NzdkNzE4ZmRmMmQ0YTEwYWI5ZWZmMWM2MGE1YTYyYmZlMWU1NS4uY2Qy
MWYyODhjMTQ4YTRiNzQwNWJmODY4ZGVmOWI1NDU3MzQwNTA0NSAxMDA2NDQKLS0tIGEvSlNUZXN0
cy9zdHJlc3Mvc2FtcGxpbmctcHJvZmlsZXItd2FzbS5qcworKysgYi9KU1Rlc3RzL3N0cmVzcy9z
YW1wbGluZy1wcm9maWxlci13YXNtLmpzCkBAIC04LDUgKzgsNSBAQAogICAgIHZhciB3YXNtRW50
cnkgPSBmdW5jdGlvbigpIHsKICAgICAgICAgcmV0dXJuIGluc3RhbmNlLmV4cG9ydHMubG9vcCgx
MDAwMDAwMCk7CiAgICAgfTsKLSAgICBydW5UZXN0KHdhc21FbnRyeSwgWyI8Pz4ud2FzbS1mdW5j
dGlvblswXSIsICJ3YXNtLXN0dWIiLCAibG9vcCIsICJ3YXNtRW50cnkiXSk7CisgICAgcnVuVGVz
dCh3YXNtRW50cnksIFsiPD8+Lndhc20tZnVuY3Rpb25bMF0iLCAid2FzbS1zdHViIiwgIjAiLCAi
d2FzbUVudHJ5Il0pOwogfQpkaWZmIC0tZ2l0IGEvSlNUZXN0cy93YXNtL2pzLWFwaS90ZXN0X2Jh
c2ljX2FwaS5qcyBiL0pTVGVzdHMvd2FzbS9qcy1hcGkvdGVzdF9iYXNpY19hcGkuanMKaW5kZXgg
NWUzNzIxMDVjN2QxYzFjMTY1ZTg3YzZmMTM2MjQ0MDQzOWFkYjYzYy4uZjNmZmY0NGJiNTIyYjBm
ZGMwODRmZTI4NjMwNWZjNDVlYzJmY2RjMCAxMDA2NDQKLS0tIGEvSlNUZXN0cy93YXNtL2pzLWFw
aS90ZXN0X2Jhc2ljX2FwaS5qcworKysgYi9KU1Rlc3RzL3dhc20vanMtYXBpL3Rlc3RfYmFzaWNf
YXBpLmpzCkBAIC04NCw5ICs4NCw4IEBACiAgICAgICAgIGFzc2VydC5pc1VuZGVmKGluc3RhbmNl
LmV4cG9ydHMuX19wcm90b19fKTsKICAgICAgICAgYXNzZXJ0LmVxKFJlZmxlY3QuaXNFeHRlbnNp
YmxlKGluc3RhbmNlLmV4cG9ydHMpLCBmYWxzZSk7CiAgICAgICAgIGFzc2VydC5lcShTeW1ib2wu
aXRlcmF0b3IgaW4gaW5zdGFuY2UuZXhwb3J0cywgZmFsc2UpOwotICAgICAgICBhc3NlcnQuZXEo
U3ltYm9sLnRvU3RyaW5nVGFnIGluIGluc3RhbmNlLmV4cG9ydHMsIHRydWUpOwotICAgICAgICBh
c3NlcnQuZXEoT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyhpbnN0YW5jZS5leHBvcnRzKS5s
ZW5ndGgsIDEpOwotICAgICAgICBhc3NlcnQuZXEoT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9s
cyhpbnN0YW5jZS5leHBvcnRzKVswXSwgU3ltYm9sLnRvU3RyaW5nVGFnKTsKKyAgICAgICAgYXNz
ZXJ0LmVxKFN5bWJvbC50b1N0cmluZ1RhZyBpbiBpbnN0YW5jZS5leHBvcnRzLCBmYWxzZSk7Cisg
ICAgICAgIGFzc2VydC5lcShPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKGluc3RhbmNlLmV4
cG9ydHMpLmxlbmd0aCwgMCk7CiAgICAgICAgIGFzc2VydC50aHJvd3MoKCkgPT4gaW5zdGFuY2Uu
ZXhwb3J0c1tTeW1ib2wudG9TdHJpbmdUYWddID0gNDIsIFR5cGVFcnJvciwgYEF0dGVtcHRlZCB0
byBhc3NpZ24gdG8gcmVhZG9ubHkgcHJvcGVydHkuYCk7CiAgICAgICAgIGJyZWFrOwogICAgIGNh
c2UgIk1lbW9yeSI6CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3dhc20vc3RyZXNzL2V4cG9ydHMtb2Jq
ZWN0LmpzIGIvSlNUZXN0cy93YXNtL3N0cmVzcy9leHBvcnRzLW9iamVjdC5qcwpuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li5lNTc0MjZiZTBhNjQ2ZmFkYmU3YWM2MWEyNmFiODMwNmQ1MWIyNDBhCi0tLSAvZGV2L251bGwK
KysrIGIvSlNUZXN0cy93YXNtL3N0cmVzcy9leHBvcnRzLW9iamVjdC5qcwpAQCAtMCwwICsxLDE4
IEBACitpbXBvcnQgeyBpbnN0YW50aWF0ZSB9IGZyb20gIi4uL3dhYnQtd3JhcHBlci5qcyI7Citp
bXBvcnQgKiBhcyBhc3NlcnQgZnJvbSAnLi4vYXNzZXJ0LmpzJzsKKworKGFzeW5jIGZ1bmN0aW9u
ICgpIHsKKyAgICB0cnkgeworICAgICAgICBsZXQgaW5zdGFuY2UgPSBhd2FpdCBpbnN0YW50aWF0
ZShgCisgICAgICAgICAgICAobW9kdWxlCisgICAgICAgICAgICAgICAgKGZ1bmMgKGV4cG9ydCAi
ZmVuY2UiKSAoYXRvbWljLmZlbmNlKSkKKyAgICAgICAgICAgICkKKyAgICAgICAgICAgIGAsIHt9
LCB7IHRocmVhZHM6IHRydWUgfSk7CisgICAgICAgIGFzc2VydC5lcShSZWZsZWN0LmdldFByb3Rv
dHlwZU9mKGluc3RhbmNlLmV4cG9ydHMpLCBudWxsKTsKKyAgICAgICAgYXNzZXJ0LmVxKGluc3Rh
bmNlLmV4cG9ydHMuZmVuY2UubmFtZSwgJzAnKTsKKyAgICAgICAgYXNzZXJ0LnRydXRoeShPYmpl
Y3QuaXNGcm96ZW4oaW5zdGFuY2UuZXhwb3J0cykpOworICAgIH0gY2F0Y2ggKGUpIHsKKyAgICAg
ICAgcHJpbnQoU3RyaW5nKGUpKTsKKyAgICAgICAgdGhyb3cgZTsKKyAgICB9Cit9KCkpLmNhdGNo
KCR2bS5hYm9ydCk7Cg==
</data>
<flag name="review"
          id="434439"
          type_id="1"
          status="+"
          setter="ashvayka"
    />
          </attachment>
      

    </bug>

</bugzilla>